diff options
author | melifaro <melifaro@FreeBSD.org> | 2014-08-23 14:58:31 +0000 |
---|---|---|
committer | melifaro <melifaro@FreeBSD.org> | 2014-08-23 14:58:31 +0000 |
commit | cf94663e69b2c927e4a44dcb922c93483f11bc29 (patch) | |
tree | f43a461c97f3db054606f6367939a61652f0db97 | |
parent | 2e65f120c886a9d09b274b1953783df2b995e799 (diff) | |
parent | 19be009a4f8eb0d239ec3e465b0a9b2a2947dcf8 (diff) | |
download | FreeBSD-src-cf94663e69b2c927e4a44dcb922c93483f11bc29.zip FreeBSD-src-cf94663e69b2c927e4a44dcb922c93483f11bc29.tar.gz |
Sync to HEAD@r270409.
665 files changed, 62182 insertions, 31490 deletions
@@ -1,5 +1,5 @@ { "project.name": "S", - "phabricator.uri" : "https://phabric.freebsd.org/", + "phabricator.uri" : "https://reviews.freebsd.org/", "history.immutable" : true } @@ -37,6 +37,8 @@ # xdev-build - Build cross-development tools. # xdev-install - Install cross-development tools. # xdev-links - Create traditional links in /usr/bin for cc, etc +# native-xtools - Create host binaries that produce target objects +# for use in qemu user-mode jails. # # "quick" way to test all kernel builds: # _jflag=`sysctl -n hw.ncpu` @@ -111,7 +113,7 @@ TGTS= all all-man buildenv buildenvvars buildkernel buildworld \ _worldtmp _legacy _bootstrap-tools _cleanobj _obj \ _build-tools _cross-tools _includes _libraries _depend \ build32 builddtb distribute32 install32 xdev xdev-build xdev-install \ - xdev-links \ + xdev-links native-xtools \ TGTS+= ${SUBDIR_TARGETS} diff --git a/Makefile.inc1 b/Makefile.inc1 index 5a8977e..98362bd 100644 --- a/Makefile.inc1 +++ b/Makefile.inc1 @@ -246,7 +246,7 @@ BMAKE= MAKEOBJDIRPREFIX=${WORLDTMP} \ ${BMAKEENV} ${MAKE} ${WORLD_FLAGS} -f Makefile.inc1 \ DESTDIR= \ BOOTSTRAPPING=${OSRELDATE} \ - SSP_CFLAGS= MK_PIE=no \ + SSP_CFLAGS= \ MK_HTML=no MK_INFO=no NO_LINT=yes MK_MAN=no \ -DNO_PIC MK_PROFILE=no -DNO_SHARED \ -DNO_CPU_CFLAGS MK_WARNS=no MK_CTF=no \ @@ -258,7 +258,7 @@ TMAKE= MAKEOBJDIRPREFIX=${OBJTREE} \ TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \ DESTDIR= \ BOOTSTRAPPING=${OSRELDATE} \ - SSP_CFLAGS= MK_PIE=no \ + SSP_CFLAGS= \ -DNO_LINT \ -DNO_CPU_CFLAGS MK_WARNS=no MK_CTF=no MK_CLANG_FULL=no MK_LLDB=no MK_TESTS=no @@ -276,7 +276,7 @@ KTMAKE= TOOLS_PREFIX=${WORLDTMP} MAKEOBJDIRPREFIX=${WORLDTMP} \ ${KTMAKEENV} ${MAKE} ${WORLD_FLAGS} -f Makefile.inc1 \ DESTDIR= \ BOOTSTRAPPING=${OSRELDATE} \ - SSP_CFLAGS= MK_PIE=no \ + SSP_CFLAGS= \ MK_HTML=no MK_INFO=no -DNO_LINT MK_MAN=no \ -DNO_PIC MK_PROFILE=no -DNO_SHARED \ -DNO_CPU_CFLAGS MK_WARNS=no MK_CTF=no @@ -1239,11 +1239,11 @@ _lex= usr.bin/lex _awk= usr.bin/awk .endif -.if ${MK_BSNMP} != "no" && !exists(/usr/sbin/gensnmptree) +.if ${MK_BSNMP} != "no" _gensnmptree= usr.sbin/bsnmpd/gensnmptree .endif -# We need to build tlbgen when we're building clang either as +# We need to build tblgen when we're building clang either as # the bootstrap compiler, or as the part of the normal build. .if ${MK_CLANG_BOOTSTRAP} != "no" || ${MK_CLANG} != "no" _clang_tblgen= \ @@ -1418,6 +1418,48 @@ cross-tools: .MAKE ${MAKE} DIRPRFX=${_tool}/ DESTDIR=${MAKEOBJDIRPREFIX} install .endfor +NXBENV= MAKEOBJDIRPREFIX=${OBJTREE}/nxb \ + INSTALL="sh ${.CURDIR}/tools/install.sh" \ + VERSION="${VERSION}" +NXBMAKE= ${NXBENV} ${MAKE} \ + TBLGEN=${OBJTREE}/nxb-bin/usr/bin/tblgen \ + CLANG_TBLGEN=${OBJTREE}/nxb-bin/usr/bin/clang-tblgen \ + MACHINE=${TARGET} MACHINE_ARCH=${TARGET_ARCH} \ + MK_GDB=no MK_TESTS=no \ + SSP_CFLAGS= \ + MK_HTML=no MK_INFO=no NO_LINT=yes MK_MAN=no \ + -DNO_PIC MK_PROFILE=no -DNO_SHARED \ + -DNO_CPU_CFLAGS MK_WARNS=no MK_CTF=no \ + MK_CLANG_FULL=no MK_LLDB=no + +native-xtools: .MAKE + mkdir -p ${OBJTREE}/nxb-bin/usr + mtree -deU -f ${.CURDIR}/etc/mtree/BSD.usr.dist \ + -p ${OBJTREE}/nxb-bin/usr >/dev/null + mtree -deU -f ${.CURDIR}/etc/mtree/BSD.include.dist \ + -p ${OBJTREE}/nxb-bin/usr/include >/dev/null +.for _tool in \ + ${_clang_tblgen} \ + usr.bin/ar \ + ${_binutils} \ + ${_cc} \ + ${_gcc_tools} \ + ${_clang_libs} \ + ${_clang} \ + usr.bin/awk \ + usr.bin/bmake \ + usr.bin/lex \ + usr.bin/lorder \ + usr.bin/sed \ + usr.bin/yacc + ${_+_}@${ECHODIR} "===> ${_tool} (obj,depend,all,install)"; \ + cd ${.CURDIR}/${_tool} && \ + ${NXBMAKE} DIRPRFX=${_tool}/ obj && \ + ${NXBMAKE} DIRPRFX=${_tool}/ depend && \ + ${NXBMAKE} DIRPRFX=${_tool}/ all && \ + ${NXBMAKE} DIRPRFX=${_tool}/ DESTDIR=${OBJTREE}/nxb-bin install +.endfor + # # hierarchy - ensure that all the needed directories are present # diff --git a/ObsoleteFiles.inc b/ObsoleteFiles.inc index 803715c..00bef12 100644 --- a/ObsoleteFiles.inc +++ b/ObsoleteFiles.inc @@ -38,6 +38,9 @@ # xargs -n1 | sort | uniq -d; # done +# 20140814: libopie version bump +OLD_LIBS+=usr/lib/libopie.so.7 +OLD_LIBS+=usr/lib32/libopie.so.7 # 20140811: otp-sha renamed to otp-sha1 OLD_FILES+=usr/bin/otp-sha OLD_FILES+=usr/share/man/man1/otp-sha.1.gz diff --git a/bin/ed/cbc.c b/bin/ed/cbc.c index 31838f5..80ed95a 100644 --- a/bin/ed/cbc.c +++ b/bin/ed/cbc.c @@ -237,7 +237,7 @@ expand_des_key(char *obuf, char *kbuf) /* * now translate it, bombing on any illegal hex digit */ - for (i = 0; kbuf[i] && i < 16; i++) + for (i = 0; i < 16 && kbuf[i]; i++) if ((nbuf[i] = hex_to_binary((int) kbuf[i], 16)) == -1) des_error("bad hex digit in key"); while (i < 16) diff --git a/bin/pkill/tests/Makefile b/bin/pkill/tests/Makefile index b131d59..a4a2c91 100644 --- a/bin/pkill/tests/Makefile +++ b/bin/pkill/tests/Makefile @@ -14,6 +14,7 @@ TAP_TESTS_SH+= pgrep-g_test TAP_TESTS_SH+= pgrep-i_test TAP_TESTS_SH+= pgrep-j_test TEST_METADATA.pgrep-j_test+= required_user="root" +TEST_METADATA.pgrep-j_test+= required_programs="jail jls" TAP_TESTS_SH+= pgrep-l_test TAP_TESTS_SH+= pgrep-n_test TAP_TESTS_SH+= pgrep-o_test @@ -31,6 +32,7 @@ TAP_TESTS_SH+= pkill-g_test TAP_TESTS_SH+= pkill-i_test TAP_TESTS_SH+= pkill-j_test TEST_METADATA.pkill-j_test+= required_user="root" +TEST_METADATA.pkill-j_test+= required_programs="jail jls" TAP_TESTS_SH+= pkill-s_test TAP_TESTS_SH+= pkill-t_test TAP_TESTS_SH+= pkill-x_test diff --git a/bin/rmail/Makefile b/bin/rmail/Makefile index c07c9e1..ad788a4 100644 --- a/bin/rmail/Makefile +++ b/bin/rmail/Makefile @@ -14,8 +14,6 @@ MAN= rmail.8 WARNS?= 2 CFLAGS+=-I${SENDMAIL_DIR}/include -I. -NO_PIE= yes - LIBSMDIR= ${.OBJDIR}/../../lib/libsm LIBSM= ${LIBSMDIR}/libsm.a diff --git a/bin/sh/arith_yacc.c b/bin/sh/arith_yacc.c index 815d885..5000c6b 100644 --- a/bin/sh/arith_yacc.c +++ b/bin/sh/arith_yacc.c @@ -139,9 +139,9 @@ static arith_t do_binop(int op, arith_t a, arith_t b) case ARITH_SUB: return (uintmax_t)a - (uintmax_t)b; case ARITH_LSHIFT: - return (uintmax_t)a << b; + return (uintmax_t)a << (b & (sizeof(uintmax_t) * CHAR_BIT - 1)); case ARITH_RSHIFT: - return a >> b; + return a >> (b & (sizeof(uintmax_t) * CHAR_BIT - 1)); case ARITH_LT: return a < b; case ARITH_LE: diff --git a/bin/sh/histedit.c b/bin/sh/histedit.c index a8c376a..c65d1c7 100644 --- a/bin/sh/histedit.c +++ b/bin/sh/histedit.c @@ -166,9 +166,10 @@ sethistsize(const char *hs) HistEvent he; if (hist != NULL) { - if (hs == NULL || *hs == '\0' || - (histsize = atoi(hs)) < 0) + if (hs == NULL || !is_number(hs)) histsize = 100; + else + histsize = atoi(hs); history(hist, &he, H_SETSIZE, histsize); history(hist, &he, H_SETUNIQUE, 1); } diff --git a/bin/sh/mystring.c b/bin/sh/mystring.c index 03ea8ba..19de78d 100644 --- a/bin/sh/mystring.c +++ b/bin/sh/mystring.c @@ -82,9 +82,17 @@ number(const char *s) int is_number(const char *p) { - do { - if (! is_digit(*p)) + const char *q; + + if (*p == '\0') + return 0; + while (*p == '0') + p++; + for (q = p; *q != '\0'; q++) + if (! is_digit(*q)) return 0; - } while (*++p != '\0'); + if (q - p > 10 || + (q - p == 10 && memcmp(p, "2147483647", 10) > 0)) + return 0; return 1; } diff --git a/bin/sh/tests/errors/bad-parm-exp2.2 b/bin/sh/tests/errors/bad-parm-exp2.2 index 7e13d2b..a0826ec 100644 --- a/bin/sh/tests/errors/bad-parm-exp2.2 +++ b/bin/sh/tests/errors/bad-parm-exp2.2 @@ -1,2 +1,2 @@ # $FreeBSD$ -${} +eval '${}' diff --git a/bin/sh/tests/errors/bad-parm-exp2.2.stderr b/bin/sh/tests/errors/bad-parm-exp2.2.stderr index 1135af0..51ea69c 100644 --- a/bin/sh/tests/errors/bad-parm-exp2.2.stderr +++ b/bin/sh/tests/errors/bad-parm-exp2.2.stderr @@ -1 +1 @@ -./bad-parm-exp2.2: ${}: Bad substitution +eval: ${}: Bad substitution diff --git a/bin/sh/tests/errors/bad-parm-exp3.2 b/bin/sh/tests/errors/bad-parm-exp3.2 index a5ecba5..bb41208 100644 --- a/bin/sh/tests/errors/bad-parm-exp3.2 +++ b/bin/sh/tests/errors/bad-parm-exp3.2 @@ -1,2 +1,2 @@ # $FreeBSD$ -${foo/} +eval '${foo/}' diff --git a/bin/sh/tests/errors/bad-parm-exp3.2.stderr b/bin/sh/tests/errors/bad-parm-exp3.2.stderr index b28fdff..70473f9 100644 --- a/bin/sh/tests/errors/bad-parm-exp3.2.stderr +++ b/bin/sh/tests/errors/bad-parm-exp3.2.stderr @@ -1 +1 @@ -./bad-parm-exp3.2: ${foo/}: Bad substitution +eval: ${foo/}: Bad substitution diff --git a/bin/sh/tests/errors/bad-parm-exp4.2 b/bin/sh/tests/errors/bad-parm-exp4.2 index 9eec8d0..2837f9b 100644 --- a/bin/sh/tests/errors/bad-parm-exp4.2 +++ b/bin/sh/tests/errors/bad-parm-exp4.2 @@ -1,2 +1,2 @@ # $FreeBSD$ -${foo:@abc} +eval '${foo:@abc}' diff --git a/bin/sh/tests/errors/bad-parm-exp4.2.stderr b/bin/sh/tests/errors/bad-parm-exp4.2.stderr index 1487b61..3363f51 100644 --- a/bin/sh/tests/errors/bad-parm-exp4.2.stderr +++ b/bin/sh/tests/errors/bad-parm-exp4.2.stderr @@ -1 +1 @@ -./bad-parm-exp4.2: ${foo:@...}: Bad substitution +eval: ${foo:@...}: Bad substitution diff --git a/bin/sh/tests/errors/bad-parm-exp5.2 b/bin/sh/tests/errors/bad-parm-exp5.2 index 459281f..1ba343b 100644 --- a/bin/sh/tests/errors/bad-parm-exp5.2 +++ b/bin/sh/tests/errors/bad-parm-exp5.2 @@ -1,2 +1,2 @@ # $FreeBSD$ -${/} +eval '${/}' diff --git a/bin/sh/tests/errors/bad-parm-exp5.2.stderr b/bin/sh/tests/errors/bad-parm-exp5.2.stderr index 2138c2e..13763f8 100644 --- a/bin/sh/tests/errors/bad-parm-exp5.2.stderr +++ b/bin/sh/tests/errors/bad-parm-exp5.2.stderr @@ -1 +1 @@ -./bad-parm-exp5.2: ${/}: Bad substitution +eval: ${/}: Bad substitution diff --git a/bin/sh/tests/errors/bad-parm-exp6.2 b/bin/sh/tests/errors/bad-parm-exp6.2 index ba51442..b53a91b 100644 --- a/bin/sh/tests/errors/bad-parm-exp6.2 +++ b/bin/sh/tests/errors/bad-parm-exp6.2 @@ -1,2 +1,2 @@ # $FreeBSD$ -${#foo^} +eval '${#foo^}' diff --git a/bin/sh/tests/errors/bad-parm-exp6.2.stderr b/bin/sh/tests/errors/bad-parm-exp6.2.stderr index ba3b671..cc56f65 100644 --- a/bin/sh/tests/errors/bad-parm-exp6.2.stderr +++ b/bin/sh/tests/errors/bad-parm-exp6.2.stderr @@ -1 +1 @@ -./bad-parm-exp6.2: ${foo...}: Bad substitution +eval: ${foo...}: Bad substitution diff --git a/bin/sh/tests/expansion/Makefile b/bin/sh/tests/expansion/Makefile index 8ded7e1..36b5fa5 100644 --- a/bin/sh/tests/expansion/Makefile +++ b/bin/sh/tests/expansion/Makefile @@ -20,6 +20,7 @@ FILES+= arith10.0 FILES+= arith11.0 FILES+= arith12.0 FILES+= arith13.0 +FILES+= arith14.0 FILES+= assign1.0 FILES+= cmdsubst1.0 FILES+= cmdsubst2.0 diff --git a/bin/sh/tests/expansion/arith14.0 b/bin/sh/tests/expansion/arith14.0 new file mode 100644 index 0000000..8369043 --- /dev/null +++ b/bin/sh/tests/expansion/arith14.0 @@ -0,0 +1,40 @@ +# $FreeBSD$ +# Check that <</>> use the low bits of the shift count. + +if [ $((1<<16<<16)) = 0 ]; then + width=32 +elif [ $((1<<32<<32)) = 0 ]; then + width=64 +elif [ $((1<<64<<64)) = 0 ]; then + width=128 +elif [ $((1<<64>>64)) = 1 ]; then + # Integers are wider than 128 bits; assume arbitrary precision. + # Nothing to test here. + exit 0 +else + echo "Cannot determine integer width" + exit 2 +fi + +twowidth=$((width * 2)) +j=43 k=$((1 << (width - 2))) r=0 + +i=0 +while [ $i -lt $twowidth ]; do + if [ "$((j << i))" != "$((j << (i + width)))" ]; then + echo "Problem with $j << $i" + r=2 + fi + i=$((i + 1)) +done + +i=0 +while [ $i -lt $twowidth ]; do + if [ "$((k >> i))" != "$((k >> (i + width)))" ]; then + echo "Problem with $k >> $i" + r=2 + fi + i=$((i + 1)) +done + +exit $r diff --git a/bin/sh/tests/functional_test.sh b/bin/sh/tests/functional_test.sh index 33bee09..6980538 100755 --- a/bin/sh/tests/functional_test.sh +++ b/bin/sh/tests/functional_test.sh @@ -39,13 +39,7 @@ check() local out_file="${SRCDIR}/${tc}.stdout" [ -f "${out_file}" ] && out_flag="-o file:${out_file}" - # We need to copy the testcase scenario file because some of the - # testcases hardcode relative paths in the stderr/stdout. - # - # TODO: we might be able to generate this path at build time - cp ${SRCDIR}/${tc} . - - atf_check -s exit:${tc##*.} ${err_flag} ${out_flag} ${SH} "./${tc}" + atf_check -s exit:${tc##*.} ${err_flag} ${out_flag} ${SH} "${SRCDIR}/${tc}" } add_testcase() diff --git a/cddl/Makefile.inc b/cddl/Makefile.inc index 9ebb86b..94a4249 100644 --- a/cddl/Makefile.inc +++ b/cddl/Makefile.inc @@ -8,7 +8,6 @@ IGNORE_PRAGMA= YES CFLAGS+= -DNEED_SOLARIS_BOOLEAN WARNS?= 6 -CSTD?= gnu89 # Do not lint the CDDL stuff. It is all externally maintained and # lint output is wasteful noise here. diff --git a/cddl/contrib/opensolaris/cmd/lockstat/sym.c b/cddl/contrib/opensolaris/cmd/lockstat/sym.c index 1aa77ad..5940c93 100644 --- a/cddl/contrib/opensolaris/cmd/lockstat/sym.c +++ b/cddl/contrib/opensolaris/cmd/lockstat/sym.c @@ -50,6 +50,9 @@ /* FreeBSD */ #include <sys/elf.h> #include <sys/ksyms.h> +#include <sys/param.h> +#include <sys/module.h> +#include <sys/linker.h> #endif #include <sys/cpuvar.h> diff --git a/cddl/contrib/opensolaris/head/libintl.h b/cddl/contrib/opensolaris/head/libintl.h index e649668..262fa89 100644 --- a/cddl/contrib/opensolaris/head/libintl.h +++ b/cddl/contrib/opensolaris/head/libintl.h @@ -19,6 +19,8 @@ * CDDL HEADER END */ /* + * Copyright 2014 Garrett D'Amore <garrett@damore.org> + * * Copyright 2008 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ @@ -27,8 +29,6 @@ #ifndef _LIBINTL_H #define _LIBINTL_H -#pragma ident "%Z%%M% %I% %E% SMI" - #include <sys/isa_defs.h> #ifdef __cplusplus @@ -64,7 +64,6 @@ typedef long wchar_t; #define __GNU_GETTEXT_SUPPORTED_REVISION(m) \ ((((m) == 0) || ((m) == 1)) ? 1 : -1) -#ifdef __STDC__ extern char *dcgettext(const char *, const char *, const int); extern char *dgettext(const char *, const char *); extern char *gettext(const char *); @@ -91,33 +90,6 @@ extern wchar_t *wddelim(wchar_t, wchar_t, int); extern wchar_t mcfiller(void); extern int mcwrap(void); -#else -extern char *dcgettext(); -extern char *dgettext(); -extern char *gettext(); -extern char *textdomain(); -extern char *bindtextdomain(); - -/* - * LI18NUX 2000 Globalization Specification Version 1.0 - * with Amendment 2 - */ -extern char *dcngettext(); -extern char *dngettext(); -extern char *ngettext(); -extern char *bind_textdomain_codeset(); - -/* Word handling functions --- requires dynamic linking */ -/* Warning: these are experimental and subject to change. */ -extern int wdinit(); -extern int wdchkind(); -extern int wdbindf(); -extern wchar_t *wddelim(); -extern wchar_t mcfiller(); -extern int mcwrap(); - -#endif - #ifdef __cplusplus } #endif diff --git a/cddl/contrib/opensolaris/head/nlist.h b/cddl/contrib/opensolaris/head/nlist.h index ea1bd203..de6be5e 100644 --- a/cddl/contrib/opensolaris/head/nlist.h +++ b/cddl/contrib/opensolaris/head/nlist.h @@ -19,6 +19,9 @@ * * CDDL HEADER END */ +/* + * Copyright 2014 Garrett D'Amore <garrett@damore.org> + */ /* Copyright (c) 1988 AT&T */ /* All Rights Reserved */ @@ -26,8 +29,6 @@ #ifndef _NLIST_H #define _NLIST_H -#pragma ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.8.2.4 */ - #ifdef __cplusplus extern "C" { #endif @@ -41,11 +42,7 @@ struct nlist { char n_numaux; /* number of aux. entries */ }; -#if defined(__STDC__) extern int nlist(const char *, struct nlist *); -#else /* __STDC__ */ -extern int nlist(); -#endif /* __STDC__ */ #ifdef __cplusplus } diff --git a/cddl/contrib/opensolaris/head/synch.h b/cddl/contrib/opensolaris/head/synch.h index 89efe9c..c0f68f1 100644 --- a/cddl/contrib/opensolaris/head/synch.h +++ b/cddl/contrib/opensolaris/head/synch.h @@ -20,6 +20,7 @@ */ /* + * Copyright 2014 Garrett D'Amore <garrett@damore.org> * Copyright (c) 1992, 2010, Oracle and/or its affiliates. All rights reserved. */ @@ -86,7 +87,6 @@ typedef struct _rwlock { cond_t writercv; /* used only to indicate ownership */ } rwlock_t; -#ifdef __STDC__ int _lwp_mutex_lock(lwp_mutex_t *); int _lwp_mutex_unlock(lwp_mutex_t *); int _lwp_mutex_trylock(lwp_mutex_t *); @@ -127,50 +127,6 @@ int sema_reltimedwait(sema_t *, const timespec_t *); int sema_post(sema_t *); int sema_trywait(sema_t *); -#else /* __STDC__ */ - -int _lwp_mutex_lock(); -int _lwp_mutex_unlock(); -int _lwp_mutex_trylock(); -int _lwp_cond_wait(); -int _lwp_cond_timedwait(); -int _lwp_cond_reltimedwait(); -int _lwp_cond_signal(); -int _lwp_cond_broadcast(); -int _lwp_sema_init(); -int _lwp_sema_wait(); -int _lwp_sema_trywait(); -int _lwp_sema_post(); -int cond_init(); -int cond_destroy(); -int cond_wait(); -int cond_timedwait(); -int cond_reltimedwait(); -int cond_signal(); -int cond_broadcast(); -int mutex_init(); -int mutex_destroy(); -int mutex_consistent(); -int mutex_lock(); -int mutex_trylock(); -int mutex_unlock(); -int rwlock_init(); -int rwlock_destroy(); -int rw_rdlock(); -int rw_wrlock(); -int rw_unlock(); -int rw_tryrdlock(); -int rw_trywrlock(); -int sema_init(); -int sema_destroy(); -int sema_wait(); -int sema_timedwait(); -int sema_reltimedwait(); -int sema_post(); -int sema_trywait(); - -#endif /* __STDC__ */ - #endif /* _ASM */ /* "Magic numbers" tagging synchronization object types */ @@ -238,8 +194,6 @@ int sema_trywait(); #ifndef _ASM -#ifdef __STDC__ - /* * The *_held() functions apply equally well to Solaris threads * and to Posix threads synchronization objects, but the formal @@ -252,21 +206,8 @@ int _rw_read_held(void *); /* rwlock_t or pthread_rwlock_t */ int _rw_write_held(void *); /* rwlock_t or pthread_rwlock_t */ int _mutex_held(void *); /* mutex_t or pthread_mutex_t */ -#else /* __STDC__ */ - -int _sema_held(); -int _rw_read_held(); -int _rw_write_held(); -int _mutex_held(); - -#endif /* __STDC__ */ - /* Pause API */ -#ifdef __STDC__ void smt_pause(void); -#else /* __STDC__ */ -void smt_pause(); -#endif /* __STDC__ */ #endif /* _ASM */ diff --git a/cddl/contrib/opensolaris/head/thread.h b/cddl/contrib/opensolaris/head/thread.h index d813a25..be58e1c 100644 --- a/cddl/contrib/opensolaris/head/thread.h +++ b/cddl/contrib/opensolaris/head/thread.h @@ -20,6 +20,8 @@ */ /* + * Copyright 2014 Garrett D'Amore <garrett@damore.org> + * * Copyright 2007 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ @@ -27,8 +29,6 @@ #ifndef _THREAD_H #define _THREAD_H -#pragma ident "%Z%%M% %I% %E% SMI" - #include <pthread.h> #include <pthread_np.h> #include <assert.h> diff --git a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_impl.h b/cddl/contrib/opensolaris/lib/libdtrace/common/dt_impl.h index b7abbc2..8cf5fe2 100644 --- a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_impl.h +++ b/cddl/contrib/opensolaris/lib/libdtrace/common/dt_impl.h @@ -723,6 +723,11 @@ extern int _dtrace_argmax; /* default maximum probe arguments */ extern const char *_dtrace_libdir; /* default library directory */ extern const char *_dtrace_moddir; /* default kernel module directory */ +#ifdef __FreeBSD__ +extern int gmatch(const char *, const char *); +extern int yylex(void); +#endif + #ifdef __cplusplus } #endif diff --git a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c b/cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c index f6c140b..0eb2a2c 100644 --- a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c +++ b/cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c @@ -29,6 +29,11 @@ #if defined(sun) #include <sys/modctl.h> #include <sys/systeminfo.h> +#else +/* FreeBSD */ +#include <sys/param.h> +#include <sys/module.h> +#include <sys/linker.h> #endif #include <sys/resource.h> diff --git a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_pragma.c b/cddl/contrib/opensolaris/lib/libdtrace/common/dt_pragma.c index 760c2f6..7f49f64 100644 --- a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_pragma.c +++ b/cddl/contrib/opensolaris/lib/libdtrace/common/dt_pragma.c @@ -36,6 +36,7 @@ #include <stdio.h> #include <sys/types.h> +#include <sys/sysctl.h> #include <sys/stat.h> #include <dt_parser.h> diff --git a/cddl/contrib/opensolaris/lib/libgen/common/gmatch.c b/cddl/contrib/opensolaris/lib/libgen/common/gmatch.c index fe4a382..199fbb3 100644 --- a/cddl/contrib/opensolaris/lib/libgen/common/gmatch.c +++ b/cddl/contrib/opensolaris/lib/libgen/common/gmatch.c @@ -42,6 +42,7 @@ #include <widec.h> #include "_range.h" #else +#include <ctype.h> /* DOODAD */ static int multibyte = 0; #define WCHAR_CSMASK 0x30000000 #define valid_range(c1, c2) \ diff --git a/cddl/lib/libdtrace/libproc_compat.h b/cddl/lib/libdtrace/libproc_compat.h index 7e54ada..8443336 100644 --- a/cddl/lib/libdtrace/libproc_compat.h +++ b/cddl/lib/libdtrace/libproc_compat.h @@ -43,6 +43,7 @@ #define Pcreate_error strerror #define Pdelbkpt proc_bkptdel #define Pgrab_error strerror +#define Plmid(p, a, l) (-1) #define Plmid_to_map(p, l, o) proc_obj2map((p), (o)) #define Plookup_by_addr proc_addr2sym #define Pname_to_ctf(p, obj) NULL diff --git a/contrib/gcc/config/i386/emmintrin.h b/contrib/gcc/config/i386/emmintrin.h index fb40553..72bf9b4 100644 --- a/contrib/gcc/config/i386/emmintrin.h +++ b/contrib/gcc/config/i386/emmintrin.h @@ -1193,7 +1193,7 @@ _mm_srli_epi64 (__m128i __A, int __B) #define _mm_srli_epi32(__A, __B) \ ((__m128i)__builtin_ia32_psrldi128 ((__v4si)(__A), __B)) #define _mm_srli_epi64(__A, __B) \ - ((__m128i)__builtin_ia32_psrlqi128 ((__v4si)(__A), __B)) + ((__m128i)__builtin_ia32_psrlqi128 ((__v2di)(__A), __B)) #endif static __inline __m128i __attribute__((__always_inline__)) diff --git a/contrib/llvm/include/llvm/Support/ELF.h b/contrib/llvm/include/llvm/Support/ELF.h index 70ad606..541410f 100644 --- a/contrib/llvm/include/llvm/Support/ELF.h +++ b/contrib/llvm/include/llvm/Support/ELF.h @@ -437,6 +437,7 @@ enum { R_PPC_GOT16_LO = 15, R_PPC_GOT16_HI = 16, R_PPC_GOT16_HA = 17, + R_PPC_PLTREL24 = 18, R_PPC_REL32 = 26, R_PPC_TLS = 67, R_PPC_DTPMOD32 = 68, diff --git a/contrib/llvm/lib/Object/ELF.cpp b/contrib/llvm/lib/Object/ELF.cpp index 6ef8d32..41d0519 100644 --- a/contrib/llvm/lib/Object/ELF.cpp +++ b/contrib/llvm/lib/Object/ELF.cpp @@ -507,6 +507,7 @@ StringRef getELFRelocationTypeName(uint32_t Machine, uint32_t Type) { LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_GOT16_LO); LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_GOT16_HI); LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_GOT16_HA); + LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_PLTREL24); LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_REL32); LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_TLS); LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_DTPMOD32); diff --git a/contrib/llvm/lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp b/contrib/llvm/lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp index 8281b5c..fd268e4 100644 --- a/contrib/llvm/lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp +++ b/contrib/llvm/lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp @@ -18,6 +18,7 @@ #include "llvm/MC/MCExpr.h" #include "llvm/MC/MCInst.h" #include "llvm/MC/MCInstrInfo.h" +#include "llvm/MC/MCSymbol.h" #include "llvm/Support/CommandLine.h" #include "llvm/Support/raw_ostream.h" #include "llvm/Target/TargetOpcodes.h" @@ -294,10 +295,16 @@ void PPCInstPrinter::printMemRegReg(const MCInst *MI, unsigned OpNo, void PPCInstPrinter::printTLSCall(const MCInst *MI, unsigned OpNo, raw_ostream &O) { - printBranchOperand(MI, OpNo, O); + // On PPC64, VariantKind is VK_None, but on PPC32, it's VK_PLT, and it must + // come at the _end_ of the expression. + const MCOperand &Op = MI->getOperand(OpNo); + const MCSymbolRefExpr &refExp = cast<MCSymbolRefExpr>(*Op.getExpr()); + O << refExp.getSymbol().getName(); O << '('; printOperand(MI, OpNo+1, O); O << ')'; + if (refExp.getKind() != MCSymbolRefExpr::VK_None) + O << '@' << MCSymbolRefExpr::getVariantKindName(refExp.getKind()); } diff --git a/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp b/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp index 54de70e..0e34f6a 100644 --- a/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp +++ b/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp @@ -64,7 +64,15 @@ unsigned PPCELFObjectWriter::getRelocTypeInner(const MCValue &Target, llvm_unreachable("Unimplemented"); case PPC::fixup_ppc_br24: case PPC::fixup_ppc_br24abs: - Type = ELF::R_PPC_REL24; + switch (Modifier) { + default: llvm_unreachable("Unsupported Modifier"); + case MCSymbolRefExpr::VK_None: + Type = ELF::R_PPC_REL24; + break; + case MCSymbolRefExpr::VK_PLT: + Type = ELF::R_PPC_PLTREL24; + break; + } break; case PPC::fixup_ppc_brcond14: case PPC::fixup_ppc_brcond14abs: @@ -205,7 +213,10 @@ unsigned PPCELFObjectWriter::getRelocTypeInner(const MCValue &Target, Type = ELF::R_PPC64_DTPREL16_HIGHESTA; break; case MCSymbolRefExpr::VK_PPC_GOT_TLSGD: - Type = ELF::R_PPC64_GOT_TLSGD16; + if (is64Bit()) + Type = ELF::R_PPC64_GOT_TLSGD16; + else + Type = ELF::R_PPC_GOT_TLSGD16; break; case MCSymbolRefExpr::VK_PPC_GOT_TLSGD_LO: Type = ELF::R_PPC64_GOT_TLSGD16_LO; @@ -217,7 +228,10 @@ unsigned PPCELFObjectWriter::getRelocTypeInner(const MCValue &Target, Type = ELF::R_PPC64_GOT_TLSGD16_HA; break; case MCSymbolRefExpr::VK_PPC_GOT_TLSLD: - Type = ELF::R_PPC64_GOT_TLSLD16; + if (is64Bit()) + Type = ELF::R_PPC64_GOT_TLSLD16; + else + Type = ELF::R_PPC_GOT_TLSLD16; break; case MCSymbolRefExpr::VK_PPC_GOT_TLSLD_LO: Type = ELF::R_PPC64_GOT_TLSLD16_LO; @@ -313,13 +327,22 @@ unsigned PPCELFObjectWriter::getRelocTypeInner(const MCValue &Target, switch (Modifier) { default: llvm_unreachable("Unsupported Modifier"); case MCSymbolRefExpr::VK_PPC_TLSGD: - Type = ELF::R_PPC64_TLSGD; + if (is64Bit()) + Type = ELF::R_PPC64_TLSGD; + else + Type = ELF::R_PPC_TLSGD; break; case MCSymbolRefExpr::VK_PPC_TLSLD: - Type = ELF::R_PPC64_TLSLD; + if (is64Bit()) + Type = ELF::R_PPC64_TLSLD; + else + Type = ELF::R_PPC_TLSLD; break; case MCSymbolRefExpr::VK_PPC_TLS: - Type = ELF::R_PPC64_TLS; + if (is64Bit()) + Type = ELF::R_PPC64_TLS; + else + Type = ELF::R_PPC_TLS; break; } break; diff --git a/contrib/llvm/lib/Target/PowerPC/PPC.h b/contrib/llvm/lib/Target/PowerPC/PPC.h index f0d5af2..216e321 100644 --- a/contrib/llvm/lib/Target/PowerPC/PPC.h +++ b/contrib/llvm/lib/Target/PowerPC/PPC.h @@ -53,10 +53,11 @@ namespace llvm { // PPC Specific MachineOperand flags. MO_NO_FLAG, - /// MO_DARWIN_STUB - On a symbol operand "FOO", this indicates that the - /// reference is actually to the "FOO$stub" symbol. This is used for calls - /// and jumps to external functions on Tiger and earlier. - MO_DARWIN_STUB = 1, + /// MO_PLT_OR_STUB - On a symbol operand "FOO", this indicates that the + /// reference is actually to the "FOO$stub" or "FOO@plt" symbol. This is + /// used for calls and jumps to external functions on Tiger and earlier, and + /// for PIC calls on Linux and ELF systems. + MO_PLT_OR_STUB = 1, /// MO_PIC_FLAG - If this bit is set, the symbol reference is relative to /// the function's picbase, e.g. lo16(symbol-picbase). diff --git a/contrib/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp b/contrib/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp index 2d92a11..484de19 100644 --- a/contrib/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp +++ b/contrib/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp @@ -19,6 +19,7 @@ #define DEBUG_TYPE "asmprinter" #include "PPC.h" #include "InstPrinter/PPCInstPrinter.h" +#include "PPCMachineFunctionInfo.h" #include "MCTargetDesc/PPCPredicates.h" #include "MCTargetDesc/PPCMCExpr.h" #include "PPCSubtarget.h" @@ -29,6 +30,7 @@ #include "llvm/ADT/StringExtras.h" #include "llvm/Assembly/Writer.h" #include "llvm/CodeGen/AsmPrinter.h" +#include "llvm/CodeGen/MachineConstantPool.h" #include "llvm/CodeGen/MachineFunctionPass.h" #include "llvm/CodeGen/MachineInstr.h" #include "llvm/CodeGen/MachineInstrBuilder.h" @@ -100,6 +102,7 @@ namespace { } bool doFinalization(Module &M); + void EmitStartOfAsmFile(Module &M); virtual void EmitFunctionEntryLabel(); @@ -325,6 +328,7 @@ MCSymbol *PPCAsmPrinter::lookUpOrCreateTOCEntry(MCSymbol *Sym) { /// void PPCAsmPrinter::EmitInstruction(const MachineInstr *MI) { MCInst TmpInst; + bool isPPC64 = Subtarget.isPPC64(); // Lower multi-instruction pseudo operations. switch (MI->getOpcode()) { @@ -349,6 +353,66 @@ void PPCAsmPrinter::EmitInstruction(const MachineInstr *MI) { OutStreamer.EmitLabel(PICBase); return; } + case PPC::GetGBRO: { + // Get the offset from the GOT Base Register to the GOT + LowerPPCMachineInstrToMCInst(MI, TmpInst, *this, Subtarget.isDarwin()); + MCSymbol *PICOffset = MF->getInfo<PPCFunctionInfo>()->getPICOffsetSymbol(); + TmpInst.setOpcode(PPC::LWZ); + const MCExpr *Exp = + MCSymbolRefExpr::Create(PICOffset, MCSymbolRefExpr::VK_None, OutContext); + const MCExpr *PB = + MCSymbolRefExpr::Create(MF->getPICBaseSymbol(), + MCSymbolRefExpr::VK_None, + OutContext); + const MCOperand MO = TmpInst.getOperand(1); + TmpInst.getOperand(1) = MCOperand::CreateExpr(MCBinaryExpr::CreateSub(Exp, + PB, + OutContext)); + TmpInst.addOperand(MO); + OutStreamer.EmitInstruction(TmpInst); + return; + } + case PPC::UpdateGBR: { + // Update the GOT Base Register to point to the GOT. It may be possible to + // merge this with the PPC::GetGBRO, doing it all in one step. + LowerPPCMachineInstrToMCInst(MI, TmpInst, *this, Subtarget.isDarwin()); + TmpInst.setOpcode(PPC::ADD4); + TmpInst.addOperand(TmpInst.getOperand(0)); + OutStreamer.EmitInstruction(TmpInst); + return; + } + case PPC::LWZtoc: { + // Transform %X3 = LWZtoc <ga:@min1>, %X2 + LowerPPCMachineInstrToMCInst(MI, TmpInst, *this, Subtarget.isDarwin()); + + // Change the opcode to LWZ, and the global address operand to be a + // reference to the GOT entry we will synthesize later. + TmpInst.setOpcode(PPC::LWZ); + const MachineOperand &MO = MI->getOperand(1); + + // Map symbol -> label of TOC entry + assert(MO.isGlobal() || MO.isCPI() || MO.isJTI()); + MCSymbol *MOSymbol = NULL; + if (MO.isGlobal()) + MOSymbol = getSymbol(MO.getGlobal()); + else if (MO.isCPI()) + MOSymbol = GetCPISymbol(MO.getIndex()); + else if (MO.isJTI()) + MOSymbol = GetJTISymbol(MO.getIndex()); + + MCSymbol *TOCEntry = lookUpOrCreateTOCEntry(MOSymbol); + + const MCExpr *Exp = + MCSymbolRefExpr::Create(TOCEntry, MCSymbolRefExpr::VK_None, + OutContext); + const MCExpr *PB = + MCSymbolRefExpr::Create(OutContext.GetOrCreateSymbol(Twine(".L.TOC.")), + OutContext); + Exp = MCBinaryExpr::CreateSub(Exp, PB, OutContext); + TmpInst.getOperand(1) = MCOperand::CreateExpr(Exp); + OutStreamer.EmitInstruction(TmpInst); + return; + } case PPC::LDtocJTI: case PPC::LDtocCPT: case PPC::LDtoc: { @@ -518,12 +582,13 @@ void PPCAsmPrinter::EmitInstruction(const MachineInstr *MI) { .addExpr(SymGotTprel)); return; } - case PPC::LDgotTprelL: { + case PPC::LDgotTprelL: + case PPC::LDgotTprelL32: { // Transform %Xd = LDgotTprelL <ga:@sym>, %Xs LowerPPCMachineInstrToMCInst(MI, TmpInst, *this, Subtarget.isDarwin()); // Change the opcode to LD. - TmpInst.setOpcode(PPC::LD); + TmpInst.setOpcode(isPPC64 ? PPC::LD : PPC::LWZ); const MachineOperand &MO = MI->getOperand(1); const GlobalValue *GValue = MO.getGlobal(); MCSymbol *MOSymbol = getSymbol(GValue); @@ -534,6 +599,52 @@ void PPCAsmPrinter::EmitInstruction(const MachineInstr *MI) { OutStreamer.EmitInstruction(TmpInst); return; } + + case PPC::PPC32PICGOT: { + MCSymbol *GOTSymbol = OutContext.GetOrCreateSymbol(StringRef("_GLOBAL_OFFSET_TABLE_")); + MCSymbol *GOTRef = OutContext.CreateTempSymbol(); + MCSymbol *NextInstr = OutContext.CreateTempSymbol(); + + OutStreamer.EmitInstruction(MCInstBuilder(PPC::BL) + // FIXME: We would like an efficient form for this, so we don't have to do + // a lot of extra uniquing. + .addExpr(MCSymbolRefExpr::Create(NextInstr, OutContext))); + const MCExpr *OffsExpr = + MCBinaryExpr::CreateSub(MCSymbolRefExpr::Create(GOTSymbol, OutContext), + MCSymbolRefExpr::Create(GOTRef, OutContext), + OutContext); + OutStreamer.EmitLabel(GOTRef); + OutStreamer.EmitValue(OffsExpr, 4); + OutStreamer.EmitLabel(NextInstr); + OutStreamer.EmitInstruction(MCInstBuilder(PPC::MFLR) + .addReg(MI->getOperand(0).getReg())); + OutStreamer.EmitInstruction(MCInstBuilder(PPC::LWZ) + .addReg(MI->getOperand(1).getReg()) + .addImm(0) + .addReg(MI->getOperand(0).getReg())); + OutStreamer.EmitInstruction(MCInstBuilder(PPC::ADD4) + .addReg(MI->getOperand(0).getReg()) + .addReg(MI->getOperand(1).getReg()) + .addReg(MI->getOperand(0).getReg())); + return; + } + case PPC::PPC32GOT: { + MCSymbol *GOTSymbol = OutContext.GetOrCreateSymbol(StringRef("_GLOBAL_OFFSET_TABLE_")); + const MCExpr *SymGotTlsL = + MCSymbolRefExpr::Create(GOTSymbol, MCSymbolRefExpr::VK_PPC_LO, + OutContext); + const MCExpr *SymGotTlsHA = + MCSymbolRefExpr::Create(GOTSymbol, MCSymbolRefExpr::VK_PPC_HA, + OutContext); + OutStreamer.EmitInstruction(MCInstBuilder(PPC::LI) + .addReg(MI->getOperand(0).getReg()) + .addExpr(SymGotTlsL)); + OutStreamer.EmitInstruction(MCInstBuilder(PPC::ADDIS) + .addReg(MI->getOperand(0).getReg()) + .addReg(MI->getOperand(0).getReg()) + .addExpr(SymGotTlsHA)); + return; + } case PPC::ADDIStlsgdHA: { // Transform: %Xd = ADDIStlsgdHA %X2, <ga:@sym> // Into: %Xd = ADDIS8 %X2, sym@got@tlsgd@ha @@ -550,38 +661,50 @@ void PPCAsmPrinter::EmitInstruction(const MachineInstr *MI) { .addExpr(SymGotTlsGD)); return; } - case PPC::ADDItlsgdL: { + case PPC::ADDItlsgdL: // Transform: %Xd = ADDItlsgdL %Xs, <ga:@sym> // Into: %Xd = ADDI8 %Xs, sym@got@tlsgd@l - assert(Subtarget.isPPC64() && "Not supported for 32-bit PowerPC"); + case PPC::ADDItlsgdL32: { + // Transform: %Rd = ADDItlsgdL32 %Rs, <ga:@sym> + // Into: %Rd = ADDI %Rs, sym@got@tlsgd const MachineOperand &MO = MI->getOperand(2); const GlobalValue *GValue = MO.getGlobal(); MCSymbol *MOSymbol = getSymbol(GValue); const MCExpr *SymGotTlsGD = - MCSymbolRefExpr::Create(MOSymbol, MCSymbolRefExpr::VK_PPC_GOT_TLSGD_LO, + MCSymbolRefExpr::Create(MOSymbol, Subtarget.isPPC64() ? + MCSymbolRefExpr::VK_PPC_GOT_TLSGD_LO : + MCSymbolRefExpr::VK_PPC_GOT_TLSGD, OutContext); - OutStreamer.EmitInstruction(MCInstBuilder(PPC::ADDI8) - .addReg(MI->getOperand(0).getReg()) - .addReg(MI->getOperand(1).getReg()) - .addExpr(SymGotTlsGD)); + OutStreamer.EmitInstruction(MCInstBuilder(Subtarget.isPPC64() ? PPC::ADDI8 : PPC::ADDI) + .addReg(MI->getOperand(0).getReg()) + .addReg(MI->getOperand(1).getReg()) + .addExpr(SymGotTlsGD)); return; } - case PPC::GETtlsADDR: { + case PPC::GETtlsADDR: // Transform: %X3 = GETtlsADDR %X3, <ga:@sym> // Into: BL8_NOP_TLS __tls_get_addr(sym@tlsgd) - assert(Subtarget.isPPC64() && "Not supported for 32-bit PowerPC"); + case PPC::GETtlsADDR32: { + // Transform: %R3 = GETtlsADDR32 %R3, <ga:@sym> + // Into: BL_TLS __tls_get_addr(sym@tlsgd)@PLT StringRef Name = "__tls_get_addr"; MCSymbol *TlsGetAddr = OutContext.GetOrCreateSymbol(Name); + MCSymbolRefExpr::VariantKind Kind = MCSymbolRefExpr::VK_None; + + if (!Subtarget.isPPC64() && !Subtarget.isDarwin() && + TM.getRelocationModel() == Reloc::PIC_) + Kind = MCSymbolRefExpr::VK_PLT; const MCSymbolRefExpr *TlsRef = - MCSymbolRefExpr::Create(TlsGetAddr, MCSymbolRefExpr::VK_None, OutContext); + MCSymbolRefExpr::Create(TlsGetAddr, Kind, OutContext); const MachineOperand &MO = MI->getOperand(2); const GlobalValue *GValue = MO.getGlobal(); MCSymbol *MOSymbol = getSymbol(GValue); const MCExpr *SymVar = MCSymbolRefExpr::Create(MOSymbol, MCSymbolRefExpr::VK_PPC_TLSGD, OutContext); - OutStreamer.EmitInstruction(MCInstBuilder(PPC::BL8_NOP_TLS) + OutStreamer.EmitInstruction(MCInstBuilder(Subtarget.isPPC64() ? + PPC::BL8_NOP_TLS : PPC::BL_TLS) .addExpr(TlsRef) .addExpr(SymVar)); return; @@ -602,69 +725,88 @@ void PPCAsmPrinter::EmitInstruction(const MachineInstr *MI) { .addExpr(SymGotTlsLD)); return; } - case PPC::ADDItlsldL: { + case PPC::ADDItlsldL: // Transform: %Xd = ADDItlsldL %Xs, <ga:@sym> // Into: %Xd = ADDI8 %Xs, sym@got@tlsld@l - assert(Subtarget.isPPC64() && "Not supported for 32-bit PowerPC"); + case PPC::ADDItlsldL32: { + // Transform: %Rd = ADDItlsldL32 %Rs, <ga:@sym> + // Into: %Rd = ADDI %Rs, sym@got@tlsld + const MachineOperand &MO = MI->getOperand(2); const GlobalValue *GValue = MO.getGlobal(); MCSymbol *MOSymbol = getSymbol(GValue); const MCExpr *SymGotTlsLD = - MCSymbolRefExpr::Create(MOSymbol, MCSymbolRefExpr::VK_PPC_GOT_TLSLD_LO, + MCSymbolRefExpr::Create(MOSymbol, Subtarget.isPPC64() ? + MCSymbolRefExpr::VK_PPC_GOT_TLSLD_LO : + MCSymbolRefExpr::VK_PPC_GOT_TLSLD, OutContext); - OutStreamer.EmitInstruction(MCInstBuilder(PPC::ADDI8) + OutStreamer.EmitInstruction(MCInstBuilder(Subtarget.isPPC64() ? PPC::ADDI8 : PPC::ADDI) .addReg(MI->getOperand(0).getReg()) .addReg(MI->getOperand(1).getReg()) .addExpr(SymGotTlsLD)); return; } - case PPC::GETtlsldADDR: { + case PPC::GETtlsldADDR: // Transform: %X3 = GETtlsldADDR %X3, <ga:@sym> // Into: BL8_NOP_TLS __tls_get_addr(sym@tlsld) - assert(Subtarget.isPPC64() && "Not supported for 32-bit PowerPC"); + case PPC::GETtlsldADDR32: { + // Transform: %R3 = GETtlsldADDR32 %R3, <ga:@sym> + // Into: BL_TLS __tls_get_addr(sym@tlsld)@PLT StringRef Name = "__tls_get_addr"; MCSymbol *TlsGetAddr = OutContext.GetOrCreateSymbol(Name); + MCSymbolRefExpr::VariantKind Kind = MCSymbolRefExpr::VK_None; + + if (!Subtarget.isPPC64() && !Subtarget.isDarwin() && + TM.getRelocationModel() == Reloc::PIC_) + Kind = MCSymbolRefExpr::VK_PLT; + const MCSymbolRefExpr *TlsRef = - MCSymbolRefExpr::Create(TlsGetAddr, MCSymbolRefExpr::VK_None, OutContext); + MCSymbolRefExpr::Create(TlsGetAddr, Kind, OutContext); const MachineOperand &MO = MI->getOperand(2); const GlobalValue *GValue = MO.getGlobal(); MCSymbol *MOSymbol = getSymbol(GValue); const MCExpr *SymVar = MCSymbolRefExpr::Create(MOSymbol, MCSymbolRefExpr::VK_PPC_TLSLD, OutContext); - OutStreamer.EmitInstruction(MCInstBuilder(PPC::BL8_NOP_TLS) + OutStreamer.EmitInstruction(MCInstBuilder(Subtarget.isPPC64() ? + PPC::BL8_NOP_TLS : PPC::BL_TLS) .addExpr(TlsRef) .addExpr(SymVar)); return; } - case PPC::ADDISdtprelHA: { + case PPC::ADDISdtprelHA: // Transform: %Xd = ADDISdtprelHA %X3, <ga:@sym> // Into: %Xd = ADDIS8 %X3, sym@dtprel@ha - assert(Subtarget.isPPC64() && "Not supported for 32-bit PowerPC"); + case PPC::ADDISdtprelHA32: { + // Transform: %Rd = ADDISdtprelHA32 %R3, <ga:@sym> + // Into: %Rd = ADDIS %R3, sym@dtprel@ha + const MachineOperand &MO = MI->getOperand(2); const GlobalValue *GValue = MO.getGlobal(); MCSymbol *MOSymbol = getSymbol(GValue); const MCExpr *SymDtprel = MCSymbolRefExpr::Create(MOSymbol, MCSymbolRefExpr::VK_PPC_DTPREL_HA, OutContext); - OutStreamer.EmitInstruction(MCInstBuilder(PPC::ADDIS8) + OutStreamer.EmitInstruction(MCInstBuilder(Subtarget.isPPC64() ? PPC::ADDIS8 : PPC::ADDIS) .addReg(MI->getOperand(0).getReg()) .addReg(PPC::X3) .addExpr(SymDtprel)); return; } - case PPC::ADDIdtprelL: { + case PPC::ADDIdtprelL: // Transform: %Xd = ADDIdtprelL %Xs, <ga:@sym> // Into: %Xd = ADDI8 %Xs, sym@dtprel@l - assert(Subtarget.isPPC64() && "Not supported for 32-bit PowerPC"); + case PPC::ADDIdtprelL32: { + // Transform: %Rd = ADDIdtprelL32 %Rs, <ga:@sym> + // Into: %Rd = ADDI %Rs, sym@dtprel@l const MachineOperand &MO = MI->getOperand(2); const GlobalValue *GValue = MO.getGlobal(); MCSymbol *MOSymbol = getSymbol(GValue); const MCExpr *SymDtprel = MCSymbolRefExpr::Create(MOSymbol, MCSymbolRefExpr::VK_PPC_DTPREL_LO, OutContext); - OutStreamer.EmitInstruction(MCInstBuilder(PPC::ADDI8) + OutStreamer.EmitInstruction(MCInstBuilder(Subtarget.isPPC64() ? PPC::ADDI8 : PPC::ADDI) .addReg(MI->getOperand(0).getReg()) .addReg(MI->getOperand(1).getReg()) .addExpr(SymDtprel)); @@ -726,9 +868,60 @@ void PPCAsmPrinter::EmitInstruction(const MachineInstr *MI) { OutStreamer.EmitInstruction(TmpInst); } +void PPCLinuxAsmPrinter::EmitStartOfAsmFile(Module &M) { + if (Subtarget.isPPC64() || TM.getRelocationModel() != Reloc::PIC_) + return AsmPrinter::EmitStartOfAsmFile(M); + + // FIXME: The use of .got2 assumes large GOT model (-fPIC), which is not + // optimal for some cases. We should consider supporting small model (-fpic) + // as well in the future. + assert(TM.getCodeModel() != CodeModel::Small && + "Small code model PIC is currently unsupported."); + OutStreamer.SwitchSection(OutContext.getELFSection(".got2", + ELF::SHT_PROGBITS, ELF::SHF_WRITE | ELF::SHF_ALLOC, + SectionKind::getReadOnly())); + + MCSymbol *TOCSym = OutContext.GetOrCreateSymbol(Twine(".L.TOC.")); + MCSymbol *CurrentPos = OutContext.CreateTempSymbol(); + + OutStreamer.EmitLabel(CurrentPos); + + // The GOT pointer points to the middle of the GOT, in order to reference the + // entire 64kB range. 0x8000 is the midpoint. + const MCExpr *tocExpr = + MCBinaryExpr::CreateAdd(MCSymbolRefExpr::Create(CurrentPos, OutContext), + MCConstantExpr::Create(0x8000, OutContext), + OutContext); + + OutStreamer.EmitAssignment(TOCSym, tocExpr); + + OutStreamer.SwitchSection(getObjFileLowering().getTextSection()); +} + void PPCLinuxAsmPrinter::EmitFunctionEntryLabel() { - if (!Subtarget.isPPC64()) // linux/ppc32 - Normal entry label. + // linux/ppc32 - Normal entry label. + if (!Subtarget.isPPC64() && TM.getRelocationModel() != Reloc::PIC_) return AsmPrinter::EmitFunctionEntryLabel(); + + if (!Subtarget.isPPC64()) { + const PPCFunctionInfo *PPCFI = MF->getInfo<PPCFunctionInfo>(); + if (PPCFI->usesPICBase()) { + MCSymbol *RelocSymbol = PPCFI->getPICOffsetSymbol(); + MCSymbol *PICBase = MF->getPICBaseSymbol(); + OutStreamer.EmitLabel(RelocSymbol); + + const MCExpr *OffsExpr = + MCBinaryExpr::CreateSub( + MCSymbolRefExpr::Create(OutContext.GetOrCreateSymbol(Twine(".L.TOC.")), + OutContext), + MCSymbolRefExpr::Create(PICBase, OutContext), + OutContext); + OutStreamer.EmitValue(OffsExpr, 4); + OutStreamer.EmitLabel(CurrentFnSym); + return; + } else + return AsmPrinter::EmitFunctionEntryLabel(); + } // Emit an official procedure descriptor. MCSectionSubPair Current = OutStreamer.getCurrentSection(); @@ -768,8 +961,15 @@ bool PPCLinuxAsmPrinter::doFinalization(Module &M) { PPCTargetStreamer &TS = static_cast<PPCTargetStreamer &>(OutStreamer.getTargetStreamer()); - if (isPPC64 && !TOC.empty()) { - const MCSectionELF *Section = OutStreamer.getContext().getELFSection(".toc", + if (!TOC.empty()) { + const MCSectionELF *Section; + + if (isPPC64) + Section = OutStreamer.getContext().getELFSection(".toc", + ELF::SHT_PROGBITS, ELF::SHF_WRITE | ELF::SHF_ALLOC, + SectionKind::getReadOnly()); + else + Section = OutStreamer.getContext().getELFSection(".got2", ELF::SHT_PROGBITS, ELF::SHF_WRITE | ELF::SHF_ALLOC, SectionKind::getReadOnly()); OutStreamer.SwitchSection(Section); @@ -778,7 +978,10 @@ bool PPCLinuxAsmPrinter::doFinalization(Module &M) { E = TOC.end(); I != E; ++I) { OutStreamer.EmitLabel(I->second); MCSymbol *S = OutContext.GetOrCreateSymbol(I->first->getName()); - TS.emitTCEntry(*S); + if (isPPC64) + TS.emitTCEntry(*S); + else + OutStreamer.EmitSymbolValue(S, 4); } } diff --git a/contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.cpp b/contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.cpp index 0ac2ced..407fdc6 100644 --- a/contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.cpp +++ b/contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.cpp @@ -299,7 +299,7 @@ void PPCFrameLowering::replaceFPWithRealFP(MachineFunction &MF) const { const PPCRegisterInfo *RegInfo = static_cast<const PPCRegisterInfo*>(MF.getTarget().getRegisterInfo()); bool HasBP = RegInfo->hasBasePointer(MF); - unsigned BPReg = HasBP ? (unsigned) PPC::R30 : FPReg; + unsigned BPReg = HasBP ? (unsigned) RegInfo->getBaseRegister(MF): FPReg; unsigned BP8Reg = HasBP ? (unsigned) PPC::X30 : FPReg; for (MachineFunction::iterator BI = MF.begin(), BE = MF.end(); @@ -344,6 +344,7 @@ void PPCFrameLowering::emitPrologue(MachineFunction &MF) const { DebugLoc dl; bool needsFrameMoves = MMI.hasDebugInfo() || MF.getFunction()->needsUnwindTableEntry(); + bool isPIC = MF.getTarget().getRelocationModel() == Reloc::PIC_; // Get processor type. bool isPPC64 = Subtarget.isPPC64(); @@ -387,7 +388,7 @@ void PPCFrameLowering::emitPrologue(MachineFunction &MF) const { bool HasBP = RegInfo->hasBasePointer(MF); unsigned SPReg = isPPC64 ? PPC::X1 : PPC::R1; - unsigned BPReg = isPPC64 ? PPC::X30 : PPC::R30; + unsigned BPReg = RegInfo->getBaseRegister(MF); unsigned FPReg = isPPC64 ? PPC::X31 : PPC::R31; unsigned LRReg = isPPC64 ? PPC::LR8 : PPC::LR; unsigned ScratchReg = isPPC64 ? PPC::X0 : PPC::R0; @@ -442,7 +443,9 @@ void PPCFrameLowering::emitPrologue(MachineFunction &MF) const { BPOffset = FFI->getObjectOffset(BPIndex); } else { BPOffset = - PPCFrameLowering::getBasePointerSaveOffset(isPPC64, isDarwinABI); + PPCFrameLowering::getBasePointerSaveOffset(isPPC64, + isDarwinABI, + isPIC); } } @@ -675,6 +678,7 @@ void PPCFrameLowering::emitEpilogue(MachineFunction &MF, // Get the ABI. bool isDarwinABI = Subtarget.isDarwinABI(); bool isSVR4ABI = Subtarget.isSVR4ABI(); + bool isPIC = MF.getTarget().getRelocationModel() == Reloc::PIC_; // Check if the link register (LR) has been saved. PPCFunctionInfo *FI = MF.getInfo<PPCFunctionInfo>(); @@ -685,7 +689,7 @@ void PPCFrameLowering::emitEpilogue(MachineFunction &MF, bool HasBP = RegInfo->hasBasePointer(MF); unsigned SPReg = isPPC64 ? PPC::X1 : PPC::R1; - unsigned BPReg = isPPC64 ? PPC::X30 : PPC::R30; + unsigned BPReg = RegInfo->getBaseRegister(MF); unsigned FPReg = isPPC64 ? PPC::X31 : PPC::R31; unsigned ScratchReg = isPPC64 ? PPC::X0 : PPC::R0; unsigned TempReg = isPPC64 ? PPC::X12 : PPC::R12; // another scratch reg @@ -725,7 +729,9 @@ void PPCFrameLowering::emitEpilogue(MachineFunction &MF, BPOffset = FFI->getObjectOffset(BPIndex); } else { BPOffset = - PPCFrameLowering::getBasePointerSaveOffset(isPPC64, isDarwinABI); + PPCFrameLowering::getBasePointerSaveOffset(isPPC64, + isDarwinABI, + isPIC); } } @@ -902,6 +908,7 @@ PPCFrameLowering::processFunctionBeforeCalleeSavedScan(MachineFunction &MF, int FPSI = FI->getFramePointerSaveIndex(); bool isPPC64 = Subtarget.isPPC64(); bool isDarwinABI = Subtarget.isDarwinABI(); + bool isPIC = MF.getTarget().getRelocationModel() == Reloc::PIC_; MachineFrameInfo *MFI = MF.getFrameInfo(); // If the frame pointer save index hasn't been defined yet. @@ -916,7 +923,7 @@ PPCFrameLowering::processFunctionBeforeCalleeSavedScan(MachineFunction &MF, int BPSI = FI->getBasePointerSaveIndex(); if (!BPSI && RegInfo->hasBasePointer(MF)) { - int BPOffset = getBasePointerSaveOffset(isPPC64, isDarwinABI); + int BPOffset = getBasePointerSaveOffset(isPPC64, isDarwinABI, isPIC); // Allocate the frame index for the base pointer save area. BPSI = MFI->CreateFixedObject(isPPC64? 8 : 4, BPOffset, true); // Save the result. diff --git a/contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.h b/contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.h index 7aab37e..bd7350e 100644 --- a/contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.h +++ b/contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.h @@ -96,12 +96,14 @@ public: /// getBasePointerSaveOffset - Return the previous frame offset to save the /// base pointer. - static unsigned getBasePointerSaveOffset(bool isPPC64, bool isDarwinABI) { + static unsigned getBasePointerSaveOffset(bool isPPC64, + bool isDarwinABI, + bool isPIC) { if (isDarwinABI) return isPPC64 ? -16U : -8U; // SVR4 ABI: First slot in the general register save area. - return isPPC64 ? -16U : -8U; + return isPPC64 ? -16U : isPIC ? -12U : -8U; } /// getLinkageSize - Return the size of the PowerPC ABI linkage area. diff --git a/contrib/llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp b/contrib/llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp index d25762a..733b4ad 100644 --- a/contrib/llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp +++ b/contrib/llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp @@ -15,6 +15,7 @@ #define DEBUG_TYPE "ppc-codegen" #include "PPC.h" #include "MCTargetDesc/PPCPredicates.h" +#include "PPCMachineFunctionInfo.h" #include "PPCTargetMachine.h" #include "llvm/CodeGen/MachineFunction.h" #include "llvm/CodeGen/MachineInstrBuilder.h" @@ -261,9 +262,21 @@ SDNode *PPCDAGToDAGISel::getGlobalBaseReg() { DebugLoc dl; if (PPCLowering.getPointerTy() == MVT::i32) { - GlobalBaseReg = RegInfo->createVirtualRegister(&PPC::GPRC_NOR0RegClass); + if (PPCSubTarget.isTargetELF()) + GlobalBaseReg = PPC::R30; + else + GlobalBaseReg = + RegInfo->createVirtualRegister(&PPC::GPRC_NOR0RegClass); BuildMI(FirstMBB, MBBI, dl, TII.get(PPC::MovePCtoLR)); BuildMI(FirstMBB, MBBI, dl, TII.get(PPC::MFLR), GlobalBaseReg); + if (PPCSubTarget.isTargetELF()) { + unsigned TempReg = RegInfo->createVirtualRegister(&PPC::GPRCRegClass); + BuildMI(FirstMBB, MBBI, dl, + TII.get(PPC::GetGBRO), TempReg).addReg(GlobalBaseReg); + BuildMI(FirstMBB, MBBI, dl, + TII.get(PPC::UpdateGBR)).addReg(GlobalBaseReg).addReg(TempReg); + MF->getInfo<PPCFunctionInfo>()->setUsesPICBase(true); + } } else { GlobalBaseReg = RegInfo->createVirtualRegister(&PPC::G8RC_NOX0RegClass); BuildMI(FirstMBB, MBBI, dl, TII.get(PPC::MovePCtoLR8)); @@ -1260,7 +1273,13 @@ SDNode *PPCDAGToDAGISel::Select(SDNode *N) { return CurDAG->SelectNodeTo(N, Reg, MVT::Other, Chain); } case PPCISD::TOC_ENTRY: { - assert (PPCSubTarget.isPPC64() && "Only supported for 64-bit ABI"); + if (PPCSubTarget.isSVR4ABI() && !PPCSubTarget.isPPC64()) { + SDValue GA = N->getOperand(0); + return CurDAG->getMachineNode(PPC::LWZtoc, dl, MVT::i32, GA, + N->getOperand(1)); + } + assert (PPCSubTarget.isPPC64() && + "Only supported for 64-bit ABI and 32-bit SVR4"); // For medium and large code model, we generate two instructions as // described below. Otherwise we allow SelectCodeCommon to handle this, @@ -1306,6 +1325,12 @@ SDNode *PPCDAGToDAGISel::Select(SDNode *N) { return CurDAG->getMachineNode(PPC::ADDItocL, dl, MVT::i64, SDValue(Tmp, 0), GA); } + case PPCISD::PPC32_PICGOT: { + // Generate a PIC-safe GOT reference. + assert(!PPCSubTarget.isPPC64() && PPCSubTarget.isSVR4ABI() && + "PPCISD::PPC32_PICGOT is only supported for 32-bit SVR4"); + return CurDAG->SelectNodeTo(N, PPC::PPC32PICGOT, PPCLowering.getPointerTy(), MVT::i32); + } case PPCISD::VADD_SPLAT: { // This expands into one of three sequences, depending on whether // the first operand is odd or even, positive or negative. diff --git a/contrib/llvm/lib/Target/PowerPC/PPCISelLowering.cpp b/contrib/llvm/lib/Target/PowerPC/PPCISelLowering.cpp index 25a7ca7..52f18d9 100644 --- a/contrib/llvm/lib/Target/PowerPC/PPCISelLowering.cpp +++ b/contrib/llvm/lib/Target/PowerPC/PPCISelLowering.cpp @@ -670,6 +670,7 @@ const char *PPCTargetLowering::getTargetNodeName(unsigned Opcode) const { case PPCISD::ADDIS_TOC_HA: return "PPCISD::ADDIS_TOC_HA"; case PPCISD::LD_TOC_L: return "PPCISD::LD_TOC_L"; case PPCISD::ADDI_TOC_L: return "PPCISD::ADDI_TOC_L"; + case PPCISD::PPC32_GOT: return "PPCISD::PPC32_GOT"; case PPCISD::ADDIS_GOT_TPREL_HA: return "PPCISD::ADDIS_GOT_TPREL_HA"; case PPCISD::LD_GOT_TPREL_L: return "PPCISD::LD_GOT_TPREL_L"; case PPCISD::ADD_TLS: return "PPCISD::ADD_TLS"; @@ -1307,10 +1308,7 @@ static bool GetLabelAccessInfo(const TargetMachine &TM, unsigned &HiOpFlags, HiOpFlags = PPCII::MO_HA; LoOpFlags = PPCII::MO_LO; - // Don't use the pic base if not in PIC relocation model. Or if we are on a - // non-darwin platform. We don't support PIC on other platforms yet. - bool isPIC = TM.getRelocationModel() == Reloc::PIC_ && - TM.getSubtarget<PPCSubtarget>().isDarwin(); + bool isPIC = TM.getRelocationModel() == Reloc::PIC_; if (isPIC) { HiOpFlags |= PPCII::MO_PIC_FLAG; LoOpFlags |= PPCII::MO_PIC_FLAG; @@ -1366,6 +1364,15 @@ SDValue PPCTargetLowering::LowerConstantPool(SDValue Op, unsigned MOHiFlag, MOLoFlag; bool isPIC = GetLabelAccessInfo(DAG.getTarget(), MOHiFlag, MOLoFlag); + + if (isPIC && PPCSubTarget.isSVR4ABI()) { + SDValue GA = DAG.getTargetConstantPool(C, PtrVT, CP->getAlignment(), + PPCII::MO_PIC_FLAG); + SDLoc DL(CP); + return DAG.getNode(PPCISD::TOC_ENTRY, SDLoc(CP), MVT::i32, GA, + DAG.getNode(PPCISD::GlobalBaseReg, DL, PtrVT)); + } + SDValue CPIHi = DAG.getTargetConstantPool(C, PtrVT, CP->getAlignment(), 0, MOHiFlag); SDValue CPILo = @@ -1387,6 +1394,15 @@ SDValue PPCTargetLowering::LowerJumpTable(SDValue Op, SelectionDAG &DAG) const { unsigned MOHiFlag, MOLoFlag; bool isPIC = GetLabelAccessInfo(DAG.getTarget(), MOHiFlag, MOLoFlag); + + if (isPIC && PPCSubTarget.isSVR4ABI()) { + SDValue GA = DAG.getTargetJumpTable(JT->getIndex(), PtrVT, + PPCII::MO_PIC_FLAG); + SDLoc DL(GA); + return DAG.getNode(PPCISD::TOC_ENTRY, SDLoc(JT), PtrVT, GA, + DAG.getNode(PPCISD::GlobalBaseReg, DL, PtrVT)); + } + SDValue JTIHi = DAG.getTargetJumpTable(JT->getIndex(), PtrVT, MOHiFlag); SDValue JTILo = DAG.getTargetJumpTable(JT->getIndex(), PtrVT, MOLoFlag); return LowerLabelRef(JTIHi, JTILo, isPIC, DAG); @@ -1400,6 +1416,7 @@ SDValue PPCTargetLowering::LowerBlockAddress(SDValue Op, unsigned MOHiFlag, MOLoFlag; bool isPIC = GetLabelAccessInfo(DAG.getTarget(), MOHiFlag, MOLoFlag); + SDValue TgtBAHi = DAG.getTargetBlockAddress(BA, PtrVT, 0, MOHiFlag); SDValue TgtBALo = DAG.getTargetBlockAddress(BA, PtrVT, 0, MOLoFlag); return LowerLabelRef(TgtBAHi, TgtBALo, isPIC, DAG); @@ -1431,64 +1448,79 @@ SDValue PPCTargetLowering::LowerGlobalTLSAddress(SDValue Op, return DAG.getNode(PPCISD::Lo, dl, PtrVT, TGALo, Hi); } - if (!is64bit) - llvm_unreachable("only local-exec is currently supported for ppc32"); - if (Model == TLSModel::InitialExec) { SDValue TGA = DAG.getTargetGlobalAddress(GV, dl, PtrVT, 0, 0); SDValue TGATLS = DAG.getTargetGlobalAddress(GV, dl, PtrVT, 0, PPCII::MO_TLS); - SDValue GOTReg = DAG.getRegister(PPC::X2, MVT::i64); - SDValue TPOffsetHi = DAG.getNode(PPCISD::ADDIS_GOT_TPREL_HA, dl, - PtrVT, GOTReg, TGA); + SDValue GOTPtr; + if (is64bit) { + SDValue GOTReg = DAG.getRegister(PPC::X2, MVT::i64); + GOTPtr = DAG.getNode(PPCISD::ADDIS_GOT_TPREL_HA, dl, + PtrVT, GOTReg, TGA); + } else + GOTPtr = DAG.getNode(PPCISD::PPC32_GOT, dl, PtrVT); SDValue TPOffset = DAG.getNode(PPCISD::LD_GOT_TPREL_L, dl, - PtrVT, TGA, TPOffsetHi); + PtrVT, TGA, GOTPtr); return DAG.getNode(PPCISD::ADD_TLS, dl, PtrVT, TPOffset, TGATLS); } if (Model == TLSModel::GeneralDynamic) { SDValue TGA = DAG.getTargetGlobalAddress(GV, dl, PtrVT, 0, 0); - SDValue GOTReg = DAG.getRegister(PPC::X2, MVT::i64); - SDValue GOTEntryHi = DAG.getNode(PPCISD::ADDIS_TLSGD_HA, dl, PtrVT, - GOTReg, TGA); + SDValue GOTPtr; + if (is64bit) { + SDValue GOTReg = DAG.getRegister(PPC::X2, MVT::i64); + GOTPtr = DAG.getNode(PPCISD::ADDIS_TLSGD_HA, dl, PtrVT, + GOTReg, TGA); + } else { + GOTPtr = DAG.getNode(PPCISD::PPC32_PICGOT, dl, PtrVT); + } SDValue GOTEntry = DAG.getNode(PPCISD::ADDI_TLSGD_L, dl, PtrVT, - GOTEntryHi, TGA); + GOTPtr, TGA); // We need a chain node, and don't have one handy. The underlying // call has no side effects, so using the function entry node // suffices. SDValue Chain = DAG.getEntryNode(); - Chain = DAG.getCopyToReg(Chain, dl, PPC::X3, GOTEntry); - SDValue ParmReg = DAG.getRegister(PPC::X3, MVT::i64); + Chain = DAG.getCopyToReg(Chain, dl, + is64bit ? PPC::X3 : PPC::R3, GOTEntry); + SDValue ParmReg = DAG.getRegister(is64bit ? PPC::X3 : PPC::R3, + is64bit ? MVT::i64 : MVT::i32); SDValue TLSAddr = DAG.getNode(PPCISD::GET_TLS_ADDR, dl, PtrVT, ParmReg, TGA); // The return value from GET_TLS_ADDR really is in X3 already, but // some hacks are needed here to tie everything together. The extra // copies dissolve during subsequent transforms. - Chain = DAG.getCopyToReg(Chain, dl, PPC::X3, TLSAddr); - return DAG.getCopyFromReg(Chain, dl, PPC::X3, PtrVT); + Chain = DAG.getCopyToReg(Chain, dl, is64bit ? PPC::X3 : PPC::R3, TLSAddr); + return DAG.getCopyFromReg(Chain, dl, is64bit ? PPC::X3 : PPC::R3, PtrVT); } if (Model == TLSModel::LocalDynamic) { SDValue TGA = DAG.getTargetGlobalAddress(GV, dl, PtrVT, 0, 0); - SDValue GOTReg = DAG.getRegister(PPC::X2, MVT::i64); - SDValue GOTEntryHi = DAG.getNode(PPCISD::ADDIS_TLSLD_HA, dl, PtrVT, - GOTReg, TGA); + SDValue GOTPtr; + if (is64bit) { + SDValue GOTReg = DAG.getRegister(PPC::X2, MVT::i64); + GOTPtr = DAG.getNode(PPCISD::ADDIS_TLSLD_HA, dl, PtrVT, + GOTReg, TGA); + } else { + GOTPtr = DAG.getNode(PPCISD::PPC32_PICGOT, dl, PtrVT); + } SDValue GOTEntry = DAG.getNode(PPCISD::ADDI_TLSLD_L, dl, PtrVT, - GOTEntryHi, TGA); + GOTPtr, TGA); // We need a chain node, and don't have one handy. The underlying // call has no side effects, so using the function entry node // suffices. SDValue Chain = DAG.getEntryNode(); - Chain = DAG.getCopyToReg(Chain, dl, PPC::X3, GOTEntry); - SDValue ParmReg = DAG.getRegister(PPC::X3, MVT::i64); + Chain = DAG.getCopyToReg(Chain, dl, + is64bit ? PPC::X3 : PPC::R3, GOTEntry); + SDValue ParmReg = DAG.getRegister(is64bit ? PPC::X3 : PPC::R3, + is64bit ? MVT::i64 : MVT::i32); SDValue TLSAddr = DAG.getNode(PPCISD::GET_TLSLD_ADDR, dl, PtrVT, ParmReg, TGA); // The return value from GET_TLSLD_ADDR really is in X3 already, but // some hacks are needed here to tie everything together. The extra // copies dissolve during subsequent transforms. - Chain = DAG.getCopyToReg(Chain, dl, PPC::X3, TLSAddr); + Chain = DAG.getCopyToReg(Chain, dl, is64bit ? PPC::X3 : PPC::R3, TLSAddr); SDValue DtvOffsetHi = DAG.getNode(PPCISD::ADDIS_DTPREL_HA, dl, PtrVT, Chain, ParmReg, TGA); return DAG.getNode(PPCISD::ADDI_DTPREL_L, dl, PtrVT, DtvOffsetHi, TGA); @@ -1515,6 +1547,14 @@ SDValue PPCTargetLowering::LowerGlobalAddress(SDValue Op, unsigned MOHiFlag, MOLoFlag; bool isPIC = GetLabelAccessInfo(DAG.getTarget(), MOHiFlag, MOLoFlag, GV); + if (isPIC && PPCSubTarget.isSVR4ABI()) { + SDValue GA = DAG.getTargetGlobalAddress(GV, DL, PtrVT, + GSDN->getOffset(), + PPCII::MO_PIC_FLAG); + return DAG.getNode(PPCISD::TOC_ENTRY, DL, MVT::i32, GA, + DAG.getNode(PPCISD::GlobalBaseReg, DL, MVT::i32)); + } + SDValue GAHi = DAG.getTargetGlobalAddress(GV, DL, PtrVT, GSDN->getOffset(), MOHiFlag); SDValue GALo = @@ -3214,15 +3254,18 @@ unsigned PrepareCall(SelectionDAG &DAG, SDValue &Callee, SDValue &InFlag, // far-call stubs may be outside relocation limits for a BL instruction. if (!DAG.getTarget().getSubtarget<PPCSubtarget>().isJITCodeModel()) { unsigned OpFlags = 0; - if (DAG.getTarget().getRelocationModel() != Reloc::Static && + if ((DAG.getTarget().getRelocationModel() != Reloc::Static && (PPCSubTarget.getTargetTriple().isMacOSX() && PPCSubTarget.getTargetTriple().isMacOSXVersionLT(10, 5)) && (G->getGlobal()->isDeclaration() || - G->getGlobal()->isWeakForLinker())) { + G->getGlobal()->isWeakForLinker())) || + (PPCSubTarget.isTargetELF() && !isPPC64 && + !G->getGlobal()->hasLocalLinkage() && + DAG.getTarget().getRelocationModel() == Reloc::PIC_)) { // PC-relative references to external symbols should go through $stub, // unless we're building with the leopard linker or later, which // automatically synthesizes these stubs. - OpFlags = PPCII::MO_DARWIN_STUB; + OpFlags = PPCII::MO_PLT_OR_STUB; } // If the callee is a GlobalAddress/ExternalSymbol node (quite common, @@ -3244,7 +3287,7 @@ unsigned PrepareCall(SelectionDAG &DAG, SDValue &Callee, SDValue &InFlag, // PC-relative references to external symbols should go through $stub, // unless we're building with the leopard linker or later, which // automatically synthesizes these stubs. - OpFlags = PPCII::MO_DARWIN_STUB; + OpFlags = PPCII::MO_PLT_OR_STUB; } Callee = DAG.getTargetExternalSymbol(S->getSymbol(), Callee.getValueType(), @@ -6255,7 +6298,10 @@ PPCTargetLowering::emitEHSjLjLongJmp(MachineInstr *MI, // Since FP is only updated here but NOT referenced, it's treated as GPR. unsigned FP = (PVT == MVT::i64) ? PPC::X31 : PPC::R31; unsigned SP = (PVT == MVT::i64) ? PPC::X1 : PPC::R1; - unsigned BP = (PVT == MVT::i64) ? PPC::X30 : PPC::R30; + unsigned BP = (PVT == MVT::i64) ? PPC::X30 : + (PPCSubTarget.isSVR4ABI() && + MF->getTarget().getRelocationModel() == Reloc::PIC_ ? + PPC::R29 : PPC::R30); MachineInstrBuilder MIB; diff --git a/contrib/llvm/lib/Target/PowerPC/PPCISelLowering.h b/contrib/llvm/lib/Target/PowerPC/PPCISelLowering.h index df3af35..09b20cb 100644 --- a/contrib/llvm/lib/Target/PowerPC/PPCISelLowering.h +++ b/contrib/llvm/lib/Target/PowerPC/PPCISelLowering.h @@ -177,6 +177,12 @@ namespace llvm { CR6SET, CR6UNSET, + PPC32_GOT, + + /// GPRC = address of _GLOBAL_OFFSET_TABLE_. Used by general dynamic and + /// local dynamic TLS on PPC32. + PPC32_PICGOT, + /// G8RC = ADDIS_GOT_TPREL_HA %X2, Symbol - Used by the initial-exec /// TLS model, produces an ADDIS8 instruction that adds the GOT /// base to sym\@got\@tprel\@ha. diff --git a/contrib/llvm/lib/Target/PowerPC/PPCInstr64Bit.td b/contrib/llvm/lib/Target/PowerPC/PPCInstr64Bit.td index 46db4fe..36d3a7d 100644 --- a/contrib/llvm/lib/Target/PowerPC/PPCInstr64Bit.td +++ b/contrib/llvm/lib/Target/PowerPC/PPCInstr64Bit.td @@ -36,10 +36,6 @@ def s17imm64 : Operand<i64> { def tocentry : Operand<iPTR> { let MIOperandInfo = (ops i64imm:$imm); } -def PPCTLSRegOperand : AsmOperandClass { - let Name = "TLSReg"; let PredicateMethod = "isTLSReg"; - let RenderMethod = "addTLSRegOperands"; -} def tlsreg : Operand<i64> { let EncoderMethod = "getTLSRegEncoding"; let ParserMatchClass = PPCTLSRegOperand; diff --git a/contrib/llvm/lib/Target/PowerPC/PPCInstrInfo.td b/contrib/llvm/lib/Target/PowerPC/PPCInstrInfo.td index fc29c69..3a3acdd 100644 --- a/contrib/llvm/lib/Target/PowerPC/PPCInstrInfo.td +++ b/contrib/llvm/lib/Target/PowerPC/PPCInstrInfo.td @@ -57,6 +57,9 @@ def SDT_PPCTC_ret : SDTypeProfile<0, 2, [ SDTCisPtrTy<0>, SDTCisVT<1, i32> ]>; +def tocentry32 : Operand<iPTR> { + let MIOperandInfo = (ops i32imm:$imm); +} //===----------------------------------------------------------------------===// // PowerPC specific DAG Nodes. @@ -99,6 +102,8 @@ def PPCtoc_entry: SDNode<"PPCISD::TOC_ENTRY", SDTIntBinOp, [SDNPMayLoad]>; def PPCvmaddfp : SDNode<"PPCISD::VMADDFP", SDTFPTernaryOp, []>; def PPCvnmsubfp : SDNode<"PPCISD::VNMSUBFP", SDTFPTernaryOp, []>; +def PPCppc32GOT : SDNode<"PPCISD::PPC32_GOT", SDTIntLeaf, []>; + def PPCaddisGotTprelHA : SDNode<"PPCISD::ADDIS_GOT_TPREL_HA", SDTIntBinOp>; def PPCldGotTprelL : SDNode<"PPCISD::LD_GOT_TPREL_L", SDTIntBinOp, [SDNPMayLoad]>; @@ -555,6 +560,20 @@ def memrix : Operand<iPTR> { // memri where the imm is 4-aligned. def memr : Operand<iPTR> { let MIOperandInfo = (ops ptr_rc:$ptrreg); } +def PPCTLSRegOperand : AsmOperandClass { + let Name = "TLSReg"; let PredicateMethod = "isTLSReg"; + let RenderMethod = "addTLSRegOperands"; +} +def tlsreg32 : Operand<i32> { + let EncoderMethod = "getTLSRegEncoding"; + let ParserMatchClass = PPCTLSRegOperand; +} +def tlsgd32 : Operand<i32> {} +def tlscall32 : Operand<i32> { + let PrintMethod = "printTLSCall"; + let MIOperandInfo = (ops calltarget:$func, tlsgd32:$sym); + let EncoderMethod = "getTLSCallEncoding"; +} // PowerPC Predicate operand. def pred : Operand<OtherVT> { @@ -1003,6 +1022,8 @@ let isCall = 1, PPC970_Unit = 7, Defs = [LR] in { "bla $func", BrB, [(PPCcall (i32 imm:$func))]>; let isCodeGenOnly = 1 in { + def BL_TLS : IForm<18, 0, 1, (outs), (ins tlscall32:$func), + "bl $func", BrB, []>; def BCCL : BForm<16, 0, 1, (outs), (ins pred:$cond, condbrtarget:$dst), "b${cond:cc}l${cond:pm} ${cond:reg}, $dst">; def BCCLA : BForm<16, 1, 1, (outs), (ins pred:$cond, abscondbrtarget:$dst), @@ -1995,6 +2016,10 @@ let PPC970_Unit = 1, neverHasSideEffects = 1 in { // FXU Operations. defm ADD4 : XOForm_1r<31, 266, 0, (outs gprc:$rT), (ins gprc:$rA, gprc:$rB), "add", "$rT, $rA, $rB", IntSimple, [(set i32:$rT, (add i32:$rA, i32:$rB))]>; +let isCodeGenOnly = 1 in +def ADD4TLS : XOForm_1<31, 266, 0, (outs gprc:$rT), (ins gprc:$rA, tlsreg32:$rB), + "add $rT, $rA, $rB", IntSimple, + [(set i32:$rT, (add i32:$rA, tglobaltlsaddr:$rB))]>; defm ADDC : XOForm_1rc<31, 10, 0, (outs gprc:$rT), (ins gprc:$rA, gprc:$rB), "addc", "$rT, $rA, $rB", IntGeneral, [(set i32:$rT, (addc i32:$rA, i32:$rB))]>, @@ -2260,6 +2285,61 @@ def : Pat<(add i32:$in, (PPChi tjumptable:$g, 0)), def : Pat<(add i32:$in, (PPChi tblockaddress:$g, 0)), (ADDIS $in, tblockaddress:$g)>; +// Support for Position-independent code +def LWZtoc: Pseudo<(outs gprc:$rD), (ins tocentry32:$disp, gprc:$reg), + "#LWZtoc", + [(set i32:$rD, + (PPCtoc_entry tglobaladdr:$disp, i32:$reg))]>; +// Get Global (GOT) Base Register offset, from the word immediately preceding +// the function label. +def GetGBRO: Pseudo<(outs gprc:$rT), (ins gprc:$rI), "#GetGBRO", []>; +// Update the Global(GOT) Base Register with the above offset. +def UpdateGBR: Pseudo<(outs gprc:$rT), (ins gprc:$rI), "#UpdateGBR", []>; + + +// Support for thread-local storage. +def PPC32GOT: Pseudo<(outs gprc:$rD), (ins), "#PPC32GOT", + [(set i32:$rD, (PPCppc32GOT))]>; + +// Get the _GLOBAL_OFFSET_TABLE_ in PIC mode. +// This uses two output registers, the first as the real output, the second as a +// temporary register, used internally in code generation. +def PPC32PICGOT: Pseudo<(outs gprc:$rD, gprc:$rT), (ins), "#PPC32PICGOT", + []>, NoEncode<"$rT">; + +def LDgotTprelL32: Pseudo<(outs gprc:$rD), (ins s16imm:$disp, gprc_nor0:$reg), + "#LDgotTprelL32", + [(set i32:$rD, + (PPCldGotTprelL tglobaltlsaddr:$disp, i32:$reg))]>; +def : Pat<(PPCaddTls i32:$in, tglobaltlsaddr:$g), + (ADD4TLS $in, tglobaltlsaddr:$g)>; +def ADDItlsgdL32 : Pseudo<(outs gprc:$rD), (ins gprc_nor0:$reg, s16imm:$disp), + "#ADDItlsgdL32", + [(set i32:$rD, + (PPCaddiTlsgdL i32:$reg, tglobaltlsaddr:$disp))]>; +def GETtlsADDR32 : Pseudo<(outs gprc:$rD), (ins gprc:$reg, tlsgd32:$sym), + "#GETtlsADDR32", + [(set i32:$rD, + (PPCgetTlsAddr i32:$reg, tglobaltlsaddr:$sym))]>; +def ADDItlsldL32 : Pseudo<(outs gprc:$rD), (ins gprc_nor0:$reg, s16imm:$disp), + "#ADDItlsldL32", + [(set i32:$rD, + (PPCaddiTlsldL i32:$reg, tglobaltlsaddr:$disp))]>; +def GETtlsldADDR32 : Pseudo<(outs gprc:$rD), (ins gprc:$reg, tlsgd32:$sym), + "#GETtlsldADDR32", + [(set i32:$rD, + (PPCgetTlsldAddr i32:$reg, tglobaltlsaddr:$sym))]>; +def ADDIdtprelL32 : Pseudo<(outs gprc:$rD), (ins gprc_nor0:$reg, s16imm:$disp), + "#ADDIdtprelL32", + [(set i32:$rD, + (PPCaddiDtprelL i32:$reg, tglobaltlsaddr:$disp))]>; +def ADDISdtprelHA32 : Pseudo<(outs gprc:$rD), (ins gprc_nor0:$reg, s16imm:$disp), + "#ADDISdtprelHA32", + [(set i32:$rD, + (PPCaddisDtprelHA i32:$reg, + tglobaltlsaddr:$disp))]>; + + // Standard shifts. These are represented separately from the real shifts above // so that we can distinguish between shifts that allow 5-bit and 6-bit shift // amounts. diff --git a/contrib/llvm/lib/Target/PowerPC/PPCMCInstLower.cpp b/contrib/llvm/lib/Target/PowerPC/PPCMCInstLower.cpp index f61c8bf..83f5703 100644 --- a/contrib/llvm/lib/Target/PowerPC/PPCMCInstLower.cpp +++ b/contrib/llvm/lib/Target/PowerPC/PPCMCInstLower.cpp @@ -13,6 +13,7 @@ //===----------------------------------------------------------------------===// #include "PPC.h" +#include "PPCSubtarget.h" #include "MCTargetDesc/PPCMCExpr.h" #include "llvm/ADT/SmallString.h" #include "llvm/ADT/Twine.h" @@ -24,6 +25,7 @@ #include "llvm/MC/MCExpr.h" #include "llvm/MC/MCInst.h" #include "llvm/Target/Mangler.h" +#include "llvm/Target/TargetMachine.h" using namespace llvm; static MachineModuleInfoMachO &getMachOMMI(AsmPrinter &AP) { @@ -32,7 +34,9 @@ static MachineModuleInfoMachO &getMachOMMI(AsmPrinter &AP) { static MCSymbol *GetSymbolFromOperand(const MachineOperand &MO, AsmPrinter &AP){ + const TargetMachine &TM = AP.TM; MCContext &Ctx = AP.OutContext; + bool isDarwin = TM.getSubtarget<PPCSubtarget>().isDarwin(); SmallString<128> Name; if (!MO.isGlobal()) { @@ -42,7 +46,7 @@ static MCSymbol *GetSymbolFromOperand(const MachineOperand &MO, AsmPrinter &AP){ } else { const GlobalValue *GV = MO.getGlobal(); bool isImplicitlyPrivate = false; - if (MO.getTargetFlags() == PPCII::MO_DARWIN_STUB || + if (MO.getTargetFlags() == PPCII::MO_PLT_OR_STUB || (MO.getTargetFlags() & PPCII::MO_NLP_FLAG)) isImplicitlyPrivate = true; @@ -51,7 +55,7 @@ static MCSymbol *GetSymbolFromOperand(const MachineOperand &MO, AsmPrinter &AP){ // If the target flags on the operand changes the name of the symbol, do that // before we return the symbol. - if (MO.getTargetFlags() == PPCII::MO_DARWIN_STUB) { + if (MO.getTargetFlags() == PPCII::MO_PLT_OR_STUB && isDarwin) { Name += "$stub"; const char *PGP = AP.MAI->getPrivateGlobalPrefix(); const char *Prefix = ""; @@ -132,6 +136,9 @@ static MCOperand GetSymbolRef(const MachineOperand &MO, const MCSymbol *Symbol, break; } + if (MO.getTargetFlags() == PPCII::MO_PLT_OR_STUB && !isDarwin) + RefKind = MCSymbolRefExpr::VK_PLT; + const MCExpr *Expr = MCSymbolRefExpr::Create(Symbol, RefKind, Ctx); if (!MO.isJTI() && MO.getOffset()) diff --git a/contrib/llvm/lib/Target/PowerPC/PPCMachineFunctionInfo.cpp b/contrib/llvm/lib/Target/PowerPC/PPCMachineFunctionInfo.cpp index 6a0aec8..027ae3e 100644 --- a/contrib/llvm/lib/Target/PowerPC/PPCMachineFunctionInfo.cpp +++ b/contrib/llvm/lib/Target/PowerPC/PPCMachineFunctionInfo.cpp @@ -8,8 +8,16 @@ //===----------------------------------------------------------------------===// #include "PPCMachineFunctionInfo.h" +#include "llvm/MC/MCAsmInfo.h" +#include "llvm/MC/MCContext.h" +#include "llvm/Target/TargetMachine.h" using namespace llvm; void PPCFunctionInfo::anchor() { } +MCSymbol *PPCFunctionInfo::getPICOffsetSymbol() const { + const MCAsmInfo *MAI = MF.getTarget().getMCAsmInfo(); + return MF.getContext().GetOrCreateSymbol(Twine(MAI->getPrivateGlobalPrefix())+ + Twine(MF.getFunctionNumber())+"$poff"); +} diff --git a/contrib/llvm/lib/Target/PowerPC/PPCMachineFunctionInfo.h b/contrib/llvm/lib/Target/PowerPC/PPCMachineFunctionInfo.h index 33f843d..9a2cec7 100644 --- a/contrib/llvm/lib/Target/PowerPC/PPCMachineFunctionInfo.h +++ b/contrib/llvm/lib/Target/PowerPC/PPCMachineFunctionInfo.h @@ -92,6 +92,12 @@ class PPCFunctionInfo : public MachineFunctionInfo { /// 64-bit SVR4 ABI. SmallVector<unsigned, 3> MustSaveCRs; + /// Hold onto our MachineFunction context. + MachineFunction &MF; + + /// Whether this uses the PIC Base register or not. + bool UsesPICBase; + public: explicit PPCFunctionInfo(MachineFunction &MF) : FramePointerSaveIndex(0), @@ -109,7 +115,9 @@ public: VarArgsStackOffset(0), VarArgsNumGPR(0), VarArgsNumFPR(0), - CRSpillFrameIndex(0) {} + CRSpillFrameIndex(0), + MF(MF), + UsesPICBase(0) {} int getFramePointerSaveIndex() const { return FramePointerSaveIndex; } void setFramePointerSaveIndex(int Idx) { FramePointerSaveIndex = Idx; } @@ -170,6 +178,11 @@ public: const SmallVectorImpl<unsigned> & getMustSaveCRs() const { return MustSaveCRs; } void addMustSaveCR(unsigned Reg) { MustSaveCRs.push_back(Reg); } + + void setUsesPICBase(bool uses) { UsesPICBase = uses; } + bool usesPICBase() const { return UsesPICBase; } + + MCSymbol *getPICOffsetSymbol() const; }; } // end of namespace llvm diff --git a/contrib/llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp b/contrib/llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp index 19ccbfc..71495da0 100644 --- a/contrib/llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp +++ b/contrib/llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp @@ -199,7 +199,16 @@ BitVector PPCRegisterInfo::getReservedRegs(const MachineFunction &MF) const { if (PPCFI->needsFP(MF)) Reserved.set(PPC::R31); - if (hasBasePointer(MF)) + if (hasBasePointer(MF)) { + if (Subtarget.isSVR4ABI() && !Subtarget.isPPC64() && + MF.getTarget().getRelocationModel() == Reloc::PIC_) + Reserved.set(PPC::R29); + else + Reserved.set(PPC::R30); + } + + if (Subtarget.isSVR4ABI() && !Subtarget.isPPC64() && + MF.getTarget().getRelocationModel() == Reloc::PIC_) Reserved.set(PPC::R30); // Reserve Altivec registers when Altivec is unavailable. @@ -695,7 +704,14 @@ unsigned PPCRegisterInfo::getBaseRegister(const MachineFunction &MF) const { if (!hasBasePointer(MF)) return getFrameRegister(MF); - return Subtarget.isPPC64() ? PPC::X30 : PPC::R30; + if (Subtarget.isPPC64()) + return PPC::X30; + + if (Subtarget.isSVR4ABI() && + MF.getTarget().getRelocationModel() == Reloc::PIC_) + return PPC::R29; + + return PPC::R30; } bool PPCRegisterInfo::hasBasePointer(const MachineFunction &MF) const { diff --git a/contrib/llvm/lib/Target/PowerPC/PPCSubtarget.h b/contrib/llvm/lib/Target/PowerPC/PPCSubtarget.h index ec8c82a..0b8b1b3 100644 --- a/contrib/llvm/lib/Target/PowerPC/PPCSubtarget.h +++ b/contrib/llvm/lib/Target/PowerPC/PPCSubtarget.h @@ -189,6 +189,9 @@ public: /// isBGQ - True if this is a BG/Q platform. bool isBGQ() const { return TargetTriple.getVendor() == Triple::BGQ; } + bool isTargetELF() const { return TargetTriple.isOSBinFormatELF(); } +// bool isTargetMachO() const { return TargetTriple.isOSBinFormatMachO(); } + bool isDarwinABI() const { return isDarwin(); } bool isSVR4ABI() const { return !isDarwin(); } diff --git a/contrib/llvm/patches/patch-r270147-llvm-r197824-r213427-r213960.diff b/contrib/llvm/patches/patch-r270147-llvm-r197824-r213427-r213960.diff new file mode 100644 index 0000000..4603a0a --- /dev/null +++ b/contrib/llvm/patches/patch-r270147-llvm-r197824-r213427-r213960.diff @@ -0,0 +1,1303 @@ +Index: contrib/llvm/include/llvm/Support/ELF.h +=================================================================== +--- contrib/llvm/include/llvm/Support/ELF.h (revision 270019) ++++ contrib/llvm/include/llvm/Support/ELF.h (working copy) +@@ -437,6 +437,7 @@ + R_PPC_GOT16_LO = 15, + R_PPC_GOT16_HI = 16, + R_PPC_GOT16_HA = 17, ++ R_PPC_PLTREL24 = 18, + R_PPC_REL32 = 26, + R_PPC_TLS = 67, + R_PPC_DTPMOD32 = 68, +Index: contrib/llvm/lib/Object/ELF.cpp +=================================================================== +--- contrib/llvm/lib/Object/ELF.cpp (revision 270019) ++++ contrib/llvm/lib/Object/ELF.cpp (working copy) +@@ -507,6 +507,7 @@ + LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_GOT16_LO); + LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_GOT16_HI); + LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_GOT16_HA); ++ LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_PLTREL24); + LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_REL32); + LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_TLS); + LLVM_ELF_SWITCH_RELOC_TYPE_NAME(R_PPC_DTPMOD32); +Index: contrib/llvm/lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp +=================================================================== +--- contrib/llvm/lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp (revision 270019) ++++ contrib/llvm/lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp (working copy) +@@ -18,6 +18,7 @@ + #include "llvm/MC/MCExpr.h" + #include "llvm/MC/MCInst.h" + #include "llvm/MC/MCInstrInfo.h" ++#include "llvm/MC/MCSymbol.h" + #include "llvm/Support/CommandLine.h" + #include "llvm/Support/raw_ostream.h" + #include "llvm/Target/TargetOpcodes.h" +@@ -294,10 +295,16 @@ + + void PPCInstPrinter::printTLSCall(const MCInst *MI, unsigned OpNo, + raw_ostream &O) { +- printBranchOperand(MI, OpNo, O); ++ // On PPC64, VariantKind is VK_None, but on PPC32, it's VK_PLT, and it must ++ // come at the _end_ of the expression. ++ const MCOperand &Op = MI->getOperand(OpNo); ++ const MCSymbolRefExpr &refExp = cast<MCSymbolRefExpr>(*Op.getExpr()); ++ O << refExp.getSymbol().getName(); + O << '('; + printOperand(MI, OpNo+1, O); + O << ')'; ++ if (refExp.getKind() != MCSymbolRefExpr::VK_None) ++ O << '@' << MCSymbolRefExpr::getVariantKindName(refExp.getKind()); + } + + +Index: contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp +=================================================================== +--- contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp (revision 270019) ++++ contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp (working copy) +@@ -64,7 +64,15 @@ + llvm_unreachable("Unimplemented"); + case PPC::fixup_ppc_br24: + case PPC::fixup_ppc_br24abs: +- Type = ELF::R_PPC_REL24; ++ switch (Modifier) { ++ default: llvm_unreachable("Unsupported Modifier"); ++ case MCSymbolRefExpr::VK_None: ++ Type = ELF::R_PPC_REL24; ++ break; ++ case MCSymbolRefExpr::VK_PLT: ++ Type = ELF::R_PPC_PLTREL24; ++ break; ++ } + break; + case PPC::fixup_ppc_brcond14: + case PPC::fixup_ppc_brcond14abs: +@@ -205,7 +213,10 @@ + Type = ELF::R_PPC64_DTPREL16_HIGHESTA; + break; + case MCSymbolRefExpr::VK_PPC_GOT_TLSGD: +- Type = ELF::R_PPC64_GOT_TLSGD16; ++ if (is64Bit()) ++ Type = ELF::R_PPC64_GOT_TLSGD16; ++ else ++ Type = ELF::R_PPC_GOT_TLSGD16; + break; + case MCSymbolRefExpr::VK_PPC_GOT_TLSGD_LO: + Type = ELF::R_PPC64_GOT_TLSGD16_LO; +@@ -217,7 +228,10 @@ + Type = ELF::R_PPC64_GOT_TLSGD16_HA; + break; + case MCSymbolRefExpr::VK_PPC_GOT_TLSLD: +- Type = ELF::R_PPC64_GOT_TLSLD16; ++ if (is64Bit()) ++ Type = ELF::R_PPC64_GOT_TLSLD16; ++ else ++ Type = ELF::R_PPC_GOT_TLSLD16; + break; + case MCSymbolRefExpr::VK_PPC_GOT_TLSLD_LO: + Type = ELF::R_PPC64_GOT_TLSLD16_LO; +@@ -313,13 +327,22 @@ + switch (Modifier) { + default: llvm_unreachable("Unsupported Modifier"); + case MCSymbolRefExpr::VK_PPC_TLSGD: +- Type = ELF::R_PPC64_TLSGD; ++ if (is64Bit()) ++ Type = ELF::R_PPC64_TLSGD; ++ else ++ Type = ELF::R_PPC_TLSGD; + break; + case MCSymbolRefExpr::VK_PPC_TLSLD: +- Type = ELF::R_PPC64_TLSLD; ++ if (is64Bit()) ++ Type = ELF::R_PPC64_TLSLD; ++ else ++ Type = ELF::R_PPC_TLSLD; + break; + case MCSymbolRefExpr::VK_PPC_TLS: +- Type = ELF::R_PPC64_TLS; ++ if (is64Bit()) ++ Type = ELF::R_PPC64_TLS; ++ else ++ Type = ELF::R_PPC_TLS; + break; + } + break; +Index: contrib/llvm/lib/Target/PowerPC/PPC.h +=================================================================== +--- contrib/llvm/lib/Target/PowerPC/PPC.h (revision 270019) ++++ contrib/llvm/lib/Target/PowerPC/PPC.h (working copy) +@@ -53,10 +53,11 @@ + // PPC Specific MachineOperand flags. + MO_NO_FLAG, + +- /// MO_DARWIN_STUB - On a symbol operand "FOO", this indicates that the +- /// reference is actually to the "FOO$stub" symbol. This is used for calls +- /// and jumps to external functions on Tiger and earlier. +- MO_DARWIN_STUB = 1, ++ /// MO_PLT_OR_STUB - On a symbol operand "FOO", this indicates that the ++ /// reference is actually to the "FOO$stub" or "FOO@plt" symbol. This is ++ /// used for calls and jumps to external functions on Tiger and earlier, and ++ /// for PIC calls on Linux and ELF systems. ++ MO_PLT_OR_STUB = 1, + + /// MO_PIC_FLAG - If this bit is set, the symbol reference is relative to + /// the function's picbase, e.g. lo16(symbol-picbase). +Index: contrib/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp +=================================================================== +--- contrib/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp (revision 270019) ++++ contrib/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp (working copy) +@@ -19,6 +19,7 @@ + #define DEBUG_TYPE "asmprinter" + #include "PPC.h" + #include "InstPrinter/PPCInstPrinter.h" ++#include "PPCMachineFunctionInfo.h" + #include "MCTargetDesc/PPCPredicates.h" + #include "MCTargetDesc/PPCMCExpr.h" + #include "PPCSubtarget.h" +@@ -29,6 +30,7 @@ + #include "llvm/ADT/StringExtras.h" + #include "llvm/Assembly/Writer.h" + #include "llvm/CodeGen/AsmPrinter.h" ++#include "llvm/CodeGen/MachineConstantPool.h" + #include "llvm/CodeGen/MachineFunctionPass.h" + #include "llvm/CodeGen/MachineInstr.h" + #include "llvm/CodeGen/MachineInstrBuilder.h" +@@ -100,6 +102,7 @@ + } + + bool doFinalization(Module &M); ++ void EmitStartOfAsmFile(Module &M); + + virtual void EmitFunctionEntryLabel(); + +@@ -325,6 +328,7 @@ + /// + void PPCAsmPrinter::EmitInstruction(const MachineInstr *MI) { + MCInst TmpInst; ++ bool isPPC64 = Subtarget.isPPC64(); + + // Lower multi-instruction pseudo operations. + switch (MI->getOpcode()) { +@@ -349,6 +353,66 @@ + OutStreamer.EmitLabel(PICBase); + return; + } ++ case PPC::GetGBRO: { ++ // Get the offset from the GOT Base Register to the GOT ++ LowerPPCMachineInstrToMCInst(MI, TmpInst, *this, Subtarget.isDarwin()); ++ MCSymbol *PICOffset = MF->getInfo<PPCFunctionInfo>()->getPICOffsetSymbol(); ++ TmpInst.setOpcode(PPC::LWZ); ++ const MCExpr *Exp = ++ MCSymbolRefExpr::Create(PICOffset, MCSymbolRefExpr::VK_None, OutContext); ++ const MCExpr *PB = ++ MCSymbolRefExpr::Create(MF->getPICBaseSymbol(), ++ MCSymbolRefExpr::VK_None, ++ OutContext); ++ const MCOperand MO = TmpInst.getOperand(1); ++ TmpInst.getOperand(1) = MCOperand::CreateExpr(MCBinaryExpr::CreateSub(Exp, ++ PB, ++ OutContext)); ++ TmpInst.addOperand(MO); ++ OutStreamer.EmitInstruction(TmpInst); ++ return; ++ } ++ case PPC::UpdateGBR: { ++ // Update the GOT Base Register to point to the GOT. It may be possible to ++ // merge this with the PPC::GetGBRO, doing it all in one step. ++ LowerPPCMachineInstrToMCInst(MI, TmpInst, *this, Subtarget.isDarwin()); ++ TmpInst.setOpcode(PPC::ADD4); ++ TmpInst.addOperand(TmpInst.getOperand(0)); ++ OutStreamer.EmitInstruction(TmpInst); ++ return; ++ } ++ case PPC::LWZtoc: { ++ // Transform %X3 = LWZtoc <ga:@min1>, %X2 ++ LowerPPCMachineInstrToMCInst(MI, TmpInst, *this, Subtarget.isDarwin()); ++ ++ // Change the opcode to LWZ, and the global address operand to be a ++ // reference to the GOT entry we will synthesize later. ++ TmpInst.setOpcode(PPC::LWZ); ++ const MachineOperand &MO = MI->getOperand(1); ++ ++ // Map symbol -> label of TOC entry ++ assert(MO.isGlobal() || MO.isCPI() || MO.isJTI()); ++ MCSymbol *MOSymbol = NULL; ++ if (MO.isGlobal()) ++ MOSymbol = getSymbol(MO.getGlobal()); ++ else if (MO.isCPI()) ++ MOSymbol = GetCPISymbol(MO.getIndex()); ++ else if (MO.isJTI()) ++ MOSymbol = GetJTISymbol(MO.getIndex()); ++ ++ MCSymbol *TOCEntry = lookUpOrCreateTOCEntry(MOSymbol); ++ ++ const MCExpr *Exp = ++ MCSymbolRefExpr::Create(TOCEntry, MCSymbolRefExpr::VK_None, ++ OutContext); ++ const MCExpr *PB = ++ MCSymbolRefExpr::Create(OutContext.GetOrCreateSymbol(Twine(".L.TOC.")), ++ OutContext); ++ Exp = MCBinaryExpr::CreateSub(Exp, PB, OutContext); ++ TmpInst.getOperand(1) = MCOperand::CreateExpr(Exp); ++ OutStreamer.EmitInstruction(TmpInst); ++ return; ++ } + case PPC::LDtocJTI: + case PPC::LDtocCPT: + case PPC::LDtoc: { +@@ -518,12 +582,13 @@ + .addExpr(SymGotTprel)); + return; + } +- case PPC::LDgotTprelL: { ++ case PPC::LDgotTprelL: ++ case PPC::LDgotTprelL32: { + // Transform %Xd = LDgotTprelL <ga:@sym>, %Xs + LowerPPCMachineInstrToMCInst(MI, TmpInst, *this, Subtarget.isDarwin()); + + // Change the opcode to LD. +- TmpInst.setOpcode(PPC::LD); ++ TmpInst.setOpcode(isPPC64 ? PPC::LD : PPC::LWZ); + const MachineOperand &MO = MI->getOperand(1); + const GlobalValue *GValue = MO.getGlobal(); + MCSymbol *MOSymbol = getSymbol(GValue); +@@ -534,6 +599,52 @@ + OutStreamer.EmitInstruction(TmpInst); + return; + } ++ ++ case PPC::PPC32PICGOT: { ++ MCSymbol *GOTSymbol = OutContext.GetOrCreateSymbol(StringRef("_GLOBAL_OFFSET_TABLE_")); ++ MCSymbol *GOTRef = OutContext.CreateTempSymbol(); ++ MCSymbol *NextInstr = OutContext.CreateTempSymbol(); ++ ++ OutStreamer.EmitInstruction(MCInstBuilder(PPC::BL) ++ // FIXME: We would like an efficient form for this, so we don't have to do ++ // a lot of extra uniquing. ++ .addExpr(MCSymbolRefExpr::Create(NextInstr, OutContext))); ++ const MCExpr *OffsExpr = ++ MCBinaryExpr::CreateSub(MCSymbolRefExpr::Create(GOTSymbol, OutContext), ++ MCSymbolRefExpr::Create(GOTRef, OutContext), ++ OutContext); ++ OutStreamer.EmitLabel(GOTRef); ++ OutStreamer.EmitValue(OffsExpr, 4); ++ OutStreamer.EmitLabel(NextInstr); ++ OutStreamer.EmitInstruction(MCInstBuilder(PPC::MFLR) ++ .addReg(MI->getOperand(0).getReg())); ++ OutStreamer.EmitInstruction(MCInstBuilder(PPC::LWZ) ++ .addReg(MI->getOperand(1).getReg()) ++ .addImm(0) ++ .addReg(MI->getOperand(0).getReg())); ++ OutStreamer.EmitInstruction(MCInstBuilder(PPC::ADD4) ++ .addReg(MI->getOperand(0).getReg()) ++ .addReg(MI->getOperand(1).getReg()) ++ .addReg(MI->getOperand(0).getReg())); ++ return; ++ } ++ case PPC::PPC32GOT: { ++ MCSymbol *GOTSymbol = OutContext.GetOrCreateSymbol(StringRef("_GLOBAL_OFFSET_TABLE_")); ++ const MCExpr *SymGotTlsL = ++ MCSymbolRefExpr::Create(GOTSymbol, MCSymbolRefExpr::VK_PPC_LO, ++ OutContext); ++ const MCExpr *SymGotTlsHA = ++ MCSymbolRefExpr::Create(GOTSymbol, MCSymbolRefExpr::VK_PPC_HA, ++ OutContext); ++ OutStreamer.EmitInstruction(MCInstBuilder(PPC::LI) ++ .addReg(MI->getOperand(0).getReg()) ++ .addExpr(SymGotTlsL)); ++ OutStreamer.EmitInstruction(MCInstBuilder(PPC::ADDIS) ++ .addReg(MI->getOperand(0).getReg()) ++ .addReg(MI->getOperand(0).getReg()) ++ .addExpr(SymGotTlsHA)); ++ return; ++ } + case PPC::ADDIStlsgdHA: { + // Transform: %Xd = ADDIStlsgdHA %X2, <ga:@sym> + // Into: %Xd = ADDIS8 %X2, sym@got@tlsgd@ha +@@ -550,31 +661,42 @@ + .addExpr(SymGotTlsGD)); + return; + } +- case PPC::ADDItlsgdL: { ++ case PPC::ADDItlsgdL: + // Transform: %Xd = ADDItlsgdL %Xs, <ga:@sym> + // Into: %Xd = ADDI8 %Xs, sym@got@tlsgd@l +- assert(Subtarget.isPPC64() && "Not supported for 32-bit PowerPC"); ++ case PPC::ADDItlsgdL32: { ++ // Transform: %Rd = ADDItlsgdL32 %Rs, <ga:@sym> ++ // Into: %Rd = ADDI %Rs, sym@got@tlsgd + const MachineOperand &MO = MI->getOperand(2); + const GlobalValue *GValue = MO.getGlobal(); + MCSymbol *MOSymbol = getSymbol(GValue); + const MCExpr *SymGotTlsGD = +- MCSymbolRefExpr::Create(MOSymbol, MCSymbolRefExpr::VK_PPC_GOT_TLSGD_LO, ++ MCSymbolRefExpr::Create(MOSymbol, Subtarget.isPPC64() ? ++ MCSymbolRefExpr::VK_PPC_GOT_TLSGD_LO : ++ MCSymbolRefExpr::VK_PPC_GOT_TLSGD, + OutContext); +- OutStreamer.EmitInstruction(MCInstBuilder(PPC::ADDI8) +- .addReg(MI->getOperand(0).getReg()) +- .addReg(MI->getOperand(1).getReg()) +- .addExpr(SymGotTlsGD)); ++ OutStreamer.EmitInstruction(MCInstBuilder(Subtarget.isPPC64() ? PPC::ADDI8 : PPC::ADDI) ++ .addReg(MI->getOperand(0).getReg()) ++ .addReg(MI->getOperand(1).getReg()) ++ .addExpr(SymGotTlsGD)); + return; + } +- case PPC::GETtlsADDR: { ++ case PPC::GETtlsADDR: + // Transform: %X3 = GETtlsADDR %X3, <ga:@sym> + // Into: BL8_NOP_TLS __tls_get_addr(sym@tlsgd) +- assert(Subtarget.isPPC64() && "Not supported for 32-bit PowerPC"); ++ case PPC::GETtlsADDR32: { ++ // Transform: %R3 = GETtlsADDR32 %R3, <ga:@sym> ++ // Into: BL_TLS __tls_get_addr(sym@tlsgd)@PLT + + StringRef Name = "__tls_get_addr"; + MCSymbol *TlsGetAddr = OutContext.GetOrCreateSymbol(Name); ++ MCSymbolRefExpr::VariantKind Kind = MCSymbolRefExpr::VK_None; ++ ++ if (!Subtarget.isPPC64() && !Subtarget.isDarwin() && ++ TM.getRelocationModel() == Reloc::PIC_) ++ Kind = MCSymbolRefExpr::VK_PLT; + const MCSymbolRefExpr *TlsRef = +- MCSymbolRefExpr::Create(TlsGetAddr, MCSymbolRefExpr::VK_None, OutContext); ++ MCSymbolRefExpr::Create(TlsGetAddr, Kind, OutContext); + const MachineOperand &MO = MI->getOperand(2); + const GlobalValue *GValue = MO.getGlobal(); + MCSymbol *MOSymbol = getSymbol(GValue); +@@ -581,7 +703,8 @@ + const MCExpr *SymVar = + MCSymbolRefExpr::Create(MOSymbol, MCSymbolRefExpr::VK_PPC_TLSGD, + OutContext); +- OutStreamer.EmitInstruction(MCInstBuilder(PPC::BL8_NOP_TLS) ++ OutStreamer.EmitInstruction(MCInstBuilder(Subtarget.isPPC64() ? ++ PPC::BL8_NOP_TLS : PPC::BL_TLS) + .addExpr(TlsRef) + .addExpr(SymVar)); + return; +@@ -602,31 +725,44 @@ + .addExpr(SymGotTlsLD)); + return; + } +- case PPC::ADDItlsldL: { ++ case PPC::ADDItlsldL: + // Transform: %Xd = ADDItlsldL %Xs, <ga:@sym> + // Into: %Xd = ADDI8 %Xs, sym@got@tlsld@l +- assert(Subtarget.isPPC64() && "Not supported for 32-bit PowerPC"); ++ case PPC::ADDItlsldL32: { ++ // Transform: %Rd = ADDItlsldL32 %Rs, <ga:@sym> ++ // Into: %Rd = ADDI %Rs, sym@got@tlsld ++ + const MachineOperand &MO = MI->getOperand(2); + const GlobalValue *GValue = MO.getGlobal(); + MCSymbol *MOSymbol = getSymbol(GValue); + const MCExpr *SymGotTlsLD = +- MCSymbolRefExpr::Create(MOSymbol, MCSymbolRefExpr::VK_PPC_GOT_TLSLD_LO, ++ MCSymbolRefExpr::Create(MOSymbol, Subtarget.isPPC64() ? ++ MCSymbolRefExpr::VK_PPC_GOT_TLSLD_LO : ++ MCSymbolRefExpr::VK_PPC_GOT_TLSLD, + OutContext); +- OutStreamer.EmitInstruction(MCInstBuilder(PPC::ADDI8) ++ OutStreamer.EmitInstruction(MCInstBuilder(Subtarget.isPPC64() ? PPC::ADDI8 : PPC::ADDI) + .addReg(MI->getOperand(0).getReg()) + .addReg(MI->getOperand(1).getReg()) + .addExpr(SymGotTlsLD)); + return; + } +- case PPC::GETtlsldADDR: { ++ case PPC::GETtlsldADDR: + // Transform: %X3 = GETtlsldADDR %X3, <ga:@sym> + // Into: BL8_NOP_TLS __tls_get_addr(sym@tlsld) +- assert(Subtarget.isPPC64() && "Not supported for 32-bit PowerPC"); ++ case PPC::GETtlsldADDR32: { ++ // Transform: %R3 = GETtlsldADDR32 %R3, <ga:@sym> ++ // Into: BL_TLS __tls_get_addr(sym@tlsld)@PLT + + StringRef Name = "__tls_get_addr"; + MCSymbol *TlsGetAddr = OutContext.GetOrCreateSymbol(Name); ++ MCSymbolRefExpr::VariantKind Kind = MCSymbolRefExpr::VK_None; ++ ++ if (!Subtarget.isPPC64() && !Subtarget.isDarwin() && ++ TM.getRelocationModel() == Reloc::PIC_) ++ Kind = MCSymbolRefExpr::VK_PLT; ++ + const MCSymbolRefExpr *TlsRef = +- MCSymbolRefExpr::Create(TlsGetAddr, MCSymbolRefExpr::VK_None, OutContext); ++ MCSymbolRefExpr::Create(TlsGetAddr, Kind, OutContext); + const MachineOperand &MO = MI->getOperand(2); + const GlobalValue *GValue = MO.getGlobal(); + MCSymbol *MOSymbol = getSymbol(GValue); +@@ -633,15 +769,19 @@ + const MCExpr *SymVar = + MCSymbolRefExpr::Create(MOSymbol, MCSymbolRefExpr::VK_PPC_TLSLD, + OutContext); +- OutStreamer.EmitInstruction(MCInstBuilder(PPC::BL8_NOP_TLS) ++ OutStreamer.EmitInstruction(MCInstBuilder(Subtarget.isPPC64() ? ++ PPC::BL8_NOP_TLS : PPC::BL_TLS) + .addExpr(TlsRef) + .addExpr(SymVar)); + return; + } +- case PPC::ADDISdtprelHA: { ++ case PPC::ADDISdtprelHA: + // Transform: %Xd = ADDISdtprelHA %X3, <ga:@sym> + // Into: %Xd = ADDIS8 %X3, sym@dtprel@ha +- assert(Subtarget.isPPC64() && "Not supported for 32-bit PowerPC"); ++ case PPC::ADDISdtprelHA32: { ++ // Transform: %Rd = ADDISdtprelHA32 %R3, <ga:@sym> ++ // Into: %Rd = ADDIS %R3, sym@dtprel@ha ++ + const MachineOperand &MO = MI->getOperand(2); + const GlobalValue *GValue = MO.getGlobal(); + MCSymbol *MOSymbol = getSymbol(GValue); +@@ -648,16 +788,18 @@ + const MCExpr *SymDtprel = + MCSymbolRefExpr::Create(MOSymbol, MCSymbolRefExpr::VK_PPC_DTPREL_HA, + OutContext); +- OutStreamer.EmitInstruction(MCInstBuilder(PPC::ADDIS8) ++ OutStreamer.EmitInstruction(MCInstBuilder(Subtarget.isPPC64() ? PPC::ADDIS8 : PPC::ADDIS) + .addReg(MI->getOperand(0).getReg()) + .addReg(PPC::X3) + .addExpr(SymDtprel)); + return; + } +- case PPC::ADDIdtprelL: { ++ case PPC::ADDIdtprelL: + // Transform: %Xd = ADDIdtprelL %Xs, <ga:@sym> + // Into: %Xd = ADDI8 %Xs, sym@dtprel@l +- assert(Subtarget.isPPC64() && "Not supported for 32-bit PowerPC"); ++ case PPC::ADDIdtprelL32: { ++ // Transform: %Rd = ADDIdtprelL32 %Rs, <ga:@sym> ++ // Into: %Rd = ADDI %Rs, sym@dtprel@l + const MachineOperand &MO = MI->getOperand(2); + const GlobalValue *GValue = MO.getGlobal(); + MCSymbol *MOSymbol = getSymbol(GValue); +@@ -664,7 +806,7 @@ + const MCExpr *SymDtprel = + MCSymbolRefExpr::Create(MOSymbol, MCSymbolRefExpr::VK_PPC_DTPREL_LO, + OutContext); +- OutStreamer.EmitInstruction(MCInstBuilder(PPC::ADDI8) ++ OutStreamer.EmitInstruction(MCInstBuilder(Subtarget.isPPC64() ? PPC::ADDI8 : PPC::ADDI) + .addReg(MI->getOperand(0).getReg()) + .addReg(MI->getOperand(1).getReg()) + .addExpr(SymDtprel)); +@@ -726,9 +868,60 @@ + OutStreamer.EmitInstruction(TmpInst); + } + ++void PPCLinuxAsmPrinter::EmitStartOfAsmFile(Module &M) { ++ if (Subtarget.isPPC64() || TM.getRelocationModel() != Reloc::PIC_) ++ return AsmPrinter::EmitStartOfAsmFile(M); ++ ++ // FIXME: The use of .got2 assumes large GOT model (-fPIC), which is not ++ // optimal for some cases. We should consider supporting small model (-fpic) ++ // as well in the future. ++ assert(TM.getCodeModel() != CodeModel::Small && ++ "Small code model PIC is currently unsupported."); ++ OutStreamer.SwitchSection(OutContext.getELFSection(".got2", ++ ELF::SHT_PROGBITS, ELF::SHF_WRITE | ELF::SHF_ALLOC, ++ SectionKind::getReadOnly())); ++ ++ MCSymbol *TOCSym = OutContext.GetOrCreateSymbol(Twine(".L.TOC.")); ++ MCSymbol *CurrentPos = OutContext.CreateTempSymbol(); ++ ++ OutStreamer.EmitLabel(CurrentPos); ++ ++ // The GOT pointer points to the middle of the GOT, in order to reference the ++ // entire 64kB range. 0x8000 is the midpoint. ++ const MCExpr *tocExpr = ++ MCBinaryExpr::CreateAdd(MCSymbolRefExpr::Create(CurrentPos, OutContext), ++ MCConstantExpr::Create(0x8000, OutContext), ++ OutContext); ++ ++ OutStreamer.EmitAssignment(TOCSym, tocExpr); ++ ++ OutStreamer.SwitchSection(getObjFileLowering().getTextSection()); ++} ++ + void PPCLinuxAsmPrinter::EmitFunctionEntryLabel() { +- if (!Subtarget.isPPC64()) // linux/ppc32 - Normal entry label. ++ // linux/ppc32 - Normal entry label. ++ if (!Subtarget.isPPC64() && TM.getRelocationModel() != Reloc::PIC_) + return AsmPrinter::EmitFunctionEntryLabel(); ++ ++ if (!Subtarget.isPPC64()) { ++ const PPCFunctionInfo *PPCFI = MF->getInfo<PPCFunctionInfo>(); ++ if (PPCFI->usesPICBase()) { ++ MCSymbol *RelocSymbol = PPCFI->getPICOffsetSymbol(); ++ MCSymbol *PICBase = MF->getPICBaseSymbol(); ++ OutStreamer.EmitLabel(RelocSymbol); ++ ++ const MCExpr *OffsExpr = ++ MCBinaryExpr::CreateSub( ++ MCSymbolRefExpr::Create(OutContext.GetOrCreateSymbol(Twine(".L.TOC.")), ++ OutContext), ++ MCSymbolRefExpr::Create(PICBase, OutContext), ++ OutContext); ++ OutStreamer.EmitValue(OffsExpr, 4); ++ OutStreamer.EmitLabel(CurrentFnSym); ++ return; ++ } else ++ return AsmPrinter::EmitFunctionEntryLabel(); ++ } + + // Emit an official procedure descriptor. + MCSectionSubPair Current = OutStreamer.getCurrentSection(); +@@ -768,10 +961,17 @@ + PPCTargetStreamer &TS = + static_cast<PPCTargetStreamer &>(OutStreamer.getTargetStreamer()); + +- if (isPPC64 && !TOC.empty()) { +- const MCSectionELF *Section = OutStreamer.getContext().getELFSection(".toc", ++ if (!TOC.empty()) { ++ const MCSectionELF *Section; ++ ++ if (isPPC64) ++ Section = OutStreamer.getContext().getELFSection(".toc", + ELF::SHT_PROGBITS, ELF::SHF_WRITE | ELF::SHF_ALLOC, + SectionKind::getReadOnly()); ++ else ++ Section = OutStreamer.getContext().getELFSection(".got2", ++ ELF::SHT_PROGBITS, ELF::SHF_WRITE | ELF::SHF_ALLOC, ++ SectionKind::getReadOnly()); + OutStreamer.SwitchSection(Section); + + for (MapVector<MCSymbol*, MCSymbol*>::iterator I = TOC.begin(), +@@ -778,7 +978,10 @@ + E = TOC.end(); I != E; ++I) { + OutStreamer.EmitLabel(I->second); + MCSymbol *S = OutContext.GetOrCreateSymbol(I->first->getName()); +- TS.emitTCEntry(*S); ++ if (isPPC64) ++ TS.emitTCEntry(*S); ++ else ++ OutStreamer.EmitSymbolValue(S, 4); + } + } + +Index: contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.cpp +=================================================================== +--- contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.cpp (revision 270019) ++++ contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.cpp (working copy) +@@ -299,7 +299,7 @@ + const PPCRegisterInfo *RegInfo = + static_cast<const PPCRegisterInfo*>(MF.getTarget().getRegisterInfo()); + bool HasBP = RegInfo->hasBasePointer(MF); +- unsigned BPReg = HasBP ? (unsigned) PPC::R30 : FPReg; ++ unsigned BPReg = HasBP ? (unsigned) RegInfo->getBaseRegister(MF): FPReg; + unsigned BP8Reg = HasBP ? (unsigned) PPC::X30 : FPReg; + + for (MachineFunction::iterator BI = MF.begin(), BE = MF.end(); +@@ -344,6 +344,7 @@ + DebugLoc dl; + bool needsFrameMoves = MMI.hasDebugInfo() || + MF.getFunction()->needsUnwindTableEntry(); ++ bool isPIC = MF.getTarget().getRelocationModel() == Reloc::PIC_; + + // Get processor type. + bool isPPC64 = Subtarget.isPPC64(); +@@ -387,7 +388,7 @@ + bool HasBP = RegInfo->hasBasePointer(MF); + + unsigned SPReg = isPPC64 ? PPC::X1 : PPC::R1; +- unsigned BPReg = isPPC64 ? PPC::X30 : PPC::R30; ++ unsigned BPReg = RegInfo->getBaseRegister(MF); + unsigned FPReg = isPPC64 ? PPC::X31 : PPC::R31; + unsigned LRReg = isPPC64 ? PPC::LR8 : PPC::LR; + unsigned ScratchReg = isPPC64 ? PPC::X0 : PPC::R0; +@@ -442,7 +443,9 @@ + BPOffset = FFI->getObjectOffset(BPIndex); + } else { + BPOffset = +- PPCFrameLowering::getBasePointerSaveOffset(isPPC64, isDarwinABI); ++ PPCFrameLowering::getBasePointerSaveOffset(isPPC64, ++ isDarwinABI, ++ isPIC); + } + } + +@@ -675,6 +678,7 @@ + // Get the ABI. + bool isDarwinABI = Subtarget.isDarwinABI(); + bool isSVR4ABI = Subtarget.isSVR4ABI(); ++ bool isPIC = MF.getTarget().getRelocationModel() == Reloc::PIC_; + + // Check if the link register (LR) has been saved. + PPCFunctionInfo *FI = MF.getInfo<PPCFunctionInfo>(); +@@ -685,7 +689,7 @@ + bool HasBP = RegInfo->hasBasePointer(MF); + + unsigned SPReg = isPPC64 ? PPC::X1 : PPC::R1; +- unsigned BPReg = isPPC64 ? PPC::X30 : PPC::R30; ++ unsigned BPReg = RegInfo->getBaseRegister(MF); + unsigned FPReg = isPPC64 ? PPC::X31 : PPC::R31; + unsigned ScratchReg = isPPC64 ? PPC::X0 : PPC::R0; + unsigned TempReg = isPPC64 ? PPC::X12 : PPC::R12; // another scratch reg +@@ -725,7 +729,9 @@ + BPOffset = FFI->getObjectOffset(BPIndex); + } else { + BPOffset = +- PPCFrameLowering::getBasePointerSaveOffset(isPPC64, isDarwinABI); ++ PPCFrameLowering::getBasePointerSaveOffset(isPPC64, ++ isDarwinABI, ++ isPIC); + } + } + +@@ -902,6 +908,7 @@ + int FPSI = FI->getFramePointerSaveIndex(); + bool isPPC64 = Subtarget.isPPC64(); + bool isDarwinABI = Subtarget.isDarwinABI(); ++ bool isPIC = MF.getTarget().getRelocationModel() == Reloc::PIC_; + MachineFrameInfo *MFI = MF.getFrameInfo(); + + // If the frame pointer save index hasn't been defined yet. +@@ -916,7 +923,7 @@ + + int BPSI = FI->getBasePointerSaveIndex(); + if (!BPSI && RegInfo->hasBasePointer(MF)) { +- int BPOffset = getBasePointerSaveOffset(isPPC64, isDarwinABI); ++ int BPOffset = getBasePointerSaveOffset(isPPC64, isDarwinABI, isPIC); + // Allocate the frame index for the base pointer save area. + BPSI = MFI->CreateFixedObject(isPPC64? 8 : 4, BPOffset, true); + // Save the result. +Index: contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.h +=================================================================== +--- contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.h (revision 270019) ++++ contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.h (working copy) +@@ -96,12 +96,14 @@ + + /// getBasePointerSaveOffset - Return the previous frame offset to save the + /// base pointer. +- static unsigned getBasePointerSaveOffset(bool isPPC64, bool isDarwinABI) { ++ static unsigned getBasePointerSaveOffset(bool isPPC64, ++ bool isDarwinABI, ++ bool isPIC) { + if (isDarwinABI) + return isPPC64 ? -16U : -8U; + + // SVR4 ABI: First slot in the general register save area. +- return isPPC64 ? -16U : -8U; ++ return isPPC64 ? -16U : isPIC ? -12U : -8U; + } + + /// getLinkageSize - Return the size of the PowerPC ABI linkage area. +Index: contrib/llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp +=================================================================== +--- contrib/llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp (revision 270019) ++++ contrib/llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp (working copy) +@@ -15,6 +15,7 @@ + #define DEBUG_TYPE "ppc-codegen" + #include "PPC.h" + #include "MCTargetDesc/PPCPredicates.h" ++#include "PPCMachineFunctionInfo.h" + #include "PPCTargetMachine.h" + #include "llvm/CodeGen/MachineFunction.h" + #include "llvm/CodeGen/MachineInstrBuilder.h" +@@ -261,9 +262,21 @@ + DebugLoc dl; + + if (PPCLowering.getPointerTy() == MVT::i32) { +- GlobalBaseReg = RegInfo->createVirtualRegister(&PPC::GPRC_NOR0RegClass); ++ if (PPCSubTarget.isTargetELF()) ++ GlobalBaseReg = PPC::R30; ++ else ++ GlobalBaseReg = ++ RegInfo->createVirtualRegister(&PPC::GPRC_NOR0RegClass); + BuildMI(FirstMBB, MBBI, dl, TII.get(PPC::MovePCtoLR)); + BuildMI(FirstMBB, MBBI, dl, TII.get(PPC::MFLR), GlobalBaseReg); ++ if (PPCSubTarget.isTargetELF()) { ++ unsigned TempReg = RegInfo->createVirtualRegister(&PPC::GPRCRegClass); ++ BuildMI(FirstMBB, MBBI, dl, ++ TII.get(PPC::GetGBRO), TempReg).addReg(GlobalBaseReg); ++ BuildMI(FirstMBB, MBBI, dl, ++ TII.get(PPC::UpdateGBR)).addReg(GlobalBaseReg).addReg(TempReg); ++ MF->getInfo<PPCFunctionInfo>()->setUsesPICBase(true); ++ } + } else { + GlobalBaseReg = RegInfo->createVirtualRegister(&PPC::G8RC_NOX0RegClass); + BuildMI(FirstMBB, MBBI, dl, TII.get(PPC::MovePCtoLR8)); +@@ -1260,7 +1273,13 @@ + return CurDAG->SelectNodeTo(N, Reg, MVT::Other, Chain); + } + case PPCISD::TOC_ENTRY: { +- assert (PPCSubTarget.isPPC64() && "Only supported for 64-bit ABI"); ++ if (PPCSubTarget.isSVR4ABI() && !PPCSubTarget.isPPC64()) { ++ SDValue GA = N->getOperand(0); ++ return CurDAG->getMachineNode(PPC::LWZtoc, dl, MVT::i32, GA, ++ N->getOperand(1)); ++ } ++ assert (PPCSubTarget.isPPC64() && ++ "Only supported for 64-bit ABI and 32-bit SVR4"); + + // For medium and large code model, we generate two instructions as + // described below. Otherwise we allow SelectCodeCommon to handle this, +@@ -1306,6 +1325,12 @@ + return CurDAG->getMachineNode(PPC::ADDItocL, dl, MVT::i64, + SDValue(Tmp, 0), GA); + } ++ case PPCISD::PPC32_PICGOT: { ++ // Generate a PIC-safe GOT reference. ++ assert(!PPCSubTarget.isPPC64() && PPCSubTarget.isSVR4ABI() && ++ "PPCISD::PPC32_PICGOT is only supported for 32-bit SVR4"); ++ return CurDAG->SelectNodeTo(N, PPC::PPC32PICGOT, PPCLowering.getPointerTy(), MVT::i32); ++ } + case PPCISD::VADD_SPLAT: { + // This expands into one of three sequences, depending on whether + // the first operand is odd or even, positive or negative. +Index: contrib/llvm/lib/Target/PowerPC/PPCISelLowering.cpp +=================================================================== +--- contrib/llvm/lib/Target/PowerPC/PPCISelLowering.cpp (revision 270019) ++++ contrib/llvm/lib/Target/PowerPC/PPCISelLowering.cpp (working copy) +@@ -670,6 +670,7 @@ + case PPCISD::ADDIS_TOC_HA: return "PPCISD::ADDIS_TOC_HA"; + case PPCISD::LD_TOC_L: return "PPCISD::LD_TOC_L"; + case PPCISD::ADDI_TOC_L: return "PPCISD::ADDI_TOC_L"; ++ case PPCISD::PPC32_GOT: return "PPCISD::PPC32_GOT"; + case PPCISD::ADDIS_GOT_TPREL_HA: return "PPCISD::ADDIS_GOT_TPREL_HA"; + case PPCISD::LD_GOT_TPREL_L: return "PPCISD::LD_GOT_TPREL_L"; + case PPCISD::ADD_TLS: return "PPCISD::ADD_TLS"; +@@ -1307,10 +1308,7 @@ + HiOpFlags = PPCII::MO_HA; + LoOpFlags = PPCII::MO_LO; + +- // Don't use the pic base if not in PIC relocation model. Or if we are on a +- // non-darwin platform. We don't support PIC on other platforms yet. +- bool isPIC = TM.getRelocationModel() == Reloc::PIC_ && +- TM.getSubtarget<PPCSubtarget>().isDarwin(); ++ bool isPIC = TM.getRelocationModel() == Reloc::PIC_; + if (isPIC) { + HiOpFlags |= PPCII::MO_PIC_FLAG; + LoOpFlags |= PPCII::MO_PIC_FLAG; +@@ -1366,6 +1364,15 @@ + + unsigned MOHiFlag, MOLoFlag; + bool isPIC = GetLabelAccessInfo(DAG.getTarget(), MOHiFlag, MOLoFlag); ++ ++ if (isPIC && PPCSubTarget.isSVR4ABI()) { ++ SDValue GA = DAG.getTargetConstantPool(C, PtrVT, CP->getAlignment(), ++ PPCII::MO_PIC_FLAG); ++ SDLoc DL(CP); ++ return DAG.getNode(PPCISD::TOC_ENTRY, SDLoc(CP), MVT::i32, GA, ++ DAG.getNode(PPCISD::GlobalBaseReg, DL, PtrVT)); ++ } ++ + SDValue CPIHi = + DAG.getTargetConstantPool(C, PtrVT, CP->getAlignment(), 0, MOHiFlag); + SDValue CPILo = +@@ -1387,6 +1394,15 @@ + + unsigned MOHiFlag, MOLoFlag; + bool isPIC = GetLabelAccessInfo(DAG.getTarget(), MOHiFlag, MOLoFlag); ++ ++ if (isPIC && PPCSubTarget.isSVR4ABI()) { ++ SDValue GA = DAG.getTargetJumpTable(JT->getIndex(), PtrVT, ++ PPCII::MO_PIC_FLAG); ++ SDLoc DL(GA); ++ return DAG.getNode(PPCISD::TOC_ENTRY, SDLoc(JT), PtrVT, GA, ++ DAG.getNode(PPCISD::GlobalBaseReg, DL, PtrVT)); ++ } ++ + SDValue JTIHi = DAG.getTargetJumpTable(JT->getIndex(), PtrVT, MOHiFlag); + SDValue JTILo = DAG.getTargetJumpTable(JT->getIndex(), PtrVT, MOLoFlag); + return LowerLabelRef(JTIHi, JTILo, isPIC, DAG); +@@ -1400,6 +1416,7 @@ + + unsigned MOHiFlag, MOLoFlag; + bool isPIC = GetLabelAccessInfo(DAG.getTarget(), MOHiFlag, MOLoFlag); ++ + SDValue TgtBAHi = DAG.getTargetBlockAddress(BA, PtrVT, 0, MOHiFlag); + SDValue TgtBALo = DAG.getTargetBlockAddress(BA, PtrVT, 0, MOLoFlag); + return LowerLabelRef(TgtBAHi, TgtBALo, isPIC, DAG); +@@ -1431,64 +1448,79 @@ + return DAG.getNode(PPCISD::Lo, dl, PtrVT, TGALo, Hi); + } + +- if (!is64bit) +- llvm_unreachable("only local-exec is currently supported for ppc32"); +- + if (Model == TLSModel::InitialExec) { + SDValue TGA = DAG.getTargetGlobalAddress(GV, dl, PtrVT, 0, 0); + SDValue TGATLS = DAG.getTargetGlobalAddress(GV, dl, PtrVT, 0, + PPCII::MO_TLS); +- SDValue GOTReg = DAG.getRegister(PPC::X2, MVT::i64); +- SDValue TPOffsetHi = DAG.getNode(PPCISD::ADDIS_GOT_TPREL_HA, dl, +- PtrVT, GOTReg, TGA); ++ SDValue GOTPtr; ++ if (is64bit) { ++ SDValue GOTReg = DAG.getRegister(PPC::X2, MVT::i64); ++ GOTPtr = DAG.getNode(PPCISD::ADDIS_GOT_TPREL_HA, dl, ++ PtrVT, GOTReg, TGA); ++ } else ++ GOTPtr = DAG.getNode(PPCISD::PPC32_GOT, dl, PtrVT); + SDValue TPOffset = DAG.getNode(PPCISD::LD_GOT_TPREL_L, dl, +- PtrVT, TGA, TPOffsetHi); ++ PtrVT, TGA, GOTPtr); + return DAG.getNode(PPCISD::ADD_TLS, dl, PtrVT, TPOffset, TGATLS); + } + + if (Model == TLSModel::GeneralDynamic) { + SDValue TGA = DAG.getTargetGlobalAddress(GV, dl, PtrVT, 0, 0); +- SDValue GOTReg = DAG.getRegister(PPC::X2, MVT::i64); +- SDValue GOTEntryHi = DAG.getNode(PPCISD::ADDIS_TLSGD_HA, dl, PtrVT, +- GOTReg, TGA); ++ SDValue GOTPtr; ++ if (is64bit) { ++ SDValue GOTReg = DAG.getRegister(PPC::X2, MVT::i64); ++ GOTPtr = DAG.getNode(PPCISD::ADDIS_TLSGD_HA, dl, PtrVT, ++ GOTReg, TGA); ++ } else { ++ GOTPtr = DAG.getNode(PPCISD::PPC32_PICGOT, dl, PtrVT); ++ } + SDValue GOTEntry = DAG.getNode(PPCISD::ADDI_TLSGD_L, dl, PtrVT, +- GOTEntryHi, TGA); ++ GOTPtr, TGA); + + // We need a chain node, and don't have one handy. The underlying + // call has no side effects, so using the function entry node + // suffices. + SDValue Chain = DAG.getEntryNode(); +- Chain = DAG.getCopyToReg(Chain, dl, PPC::X3, GOTEntry); +- SDValue ParmReg = DAG.getRegister(PPC::X3, MVT::i64); ++ Chain = DAG.getCopyToReg(Chain, dl, ++ is64bit ? PPC::X3 : PPC::R3, GOTEntry); ++ SDValue ParmReg = DAG.getRegister(is64bit ? PPC::X3 : PPC::R3, ++ is64bit ? MVT::i64 : MVT::i32); + SDValue TLSAddr = DAG.getNode(PPCISD::GET_TLS_ADDR, dl, + PtrVT, ParmReg, TGA); + // The return value from GET_TLS_ADDR really is in X3 already, but + // some hacks are needed here to tie everything together. The extra + // copies dissolve during subsequent transforms. +- Chain = DAG.getCopyToReg(Chain, dl, PPC::X3, TLSAddr); +- return DAG.getCopyFromReg(Chain, dl, PPC::X3, PtrVT); ++ Chain = DAG.getCopyToReg(Chain, dl, is64bit ? PPC::X3 : PPC::R3, TLSAddr); ++ return DAG.getCopyFromReg(Chain, dl, is64bit ? PPC::X3 : PPC::R3, PtrVT); + } + + if (Model == TLSModel::LocalDynamic) { + SDValue TGA = DAG.getTargetGlobalAddress(GV, dl, PtrVT, 0, 0); +- SDValue GOTReg = DAG.getRegister(PPC::X2, MVT::i64); +- SDValue GOTEntryHi = DAG.getNode(PPCISD::ADDIS_TLSLD_HA, dl, PtrVT, +- GOTReg, TGA); ++ SDValue GOTPtr; ++ if (is64bit) { ++ SDValue GOTReg = DAG.getRegister(PPC::X2, MVT::i64); ++ GOTPtr = DAG.getNode(PPCISD::ADDIS_TLSLD_HA, dl, PtrVT, ++ GOTReg, TGA); ++ } else { ++ GOTPtr = DAG.getNode(PPCISD::PPC32_PICGOT, dl, PtrVT); ++ } + SDValue GOTEntry = DAG.getNode(PPCISD::ADDI_TLSLD_L, dl, PtrVT, +- GOTEntryHi, TGA); ++ GOTPtr, TGA); + + // We need a chain node, and don't have one handy. The underlying + // call has no side effects, so using the function entry node + // suffices. + SDValue Chain = DAG.getEntryNode(); +- Chain = DAG.getCopyToReg(Chain, dl, PPC::X3, GOTEntry); +- SDValue ParmReg = DAG.getRegister(PPC::X3, MVT::i64); ++ Chain = DAG.getCopyToReg(Chain, dl, ++ is64bit ? PPC::X3 : PPC::R3, GOTEntry); ++ SDValue ParmReg = DAG.getRegister(is64bit ? PPC::X3 : PPC::R3, ++ is64bit ? MVT::i64 : MVT::i32); + SDValue TLSAddr = DAG.getNode(PPCISD::GET_TLSLD_ADDR, dl, + PtrVT, ParmReg, TGA); + // The return value from GET_TLSLD_ADDR really is in X3 already, but + // some hacks are needed here to tie everything together. The extra + // copies dissolve during subsequent transforms. +- Chain = DAG.getCopyToReg(Chain, dl, PPC::X3, TLSAddr); ++ Chain = DAG.getCopyToReg(Chain, dl, is64bit ? PPC::X3 : PPC::R3, TLSAddr); + SDValue DtvOffsetHi = DAG.getNode(PPCISD::ADDIS_DTPREL_HA, dl, PtrVT, + Chain, ParmReg, TGA); + return DAG.getNode(PPCISD::ADDI_DTPREL_L, dl, PtrVT, DtvOffsetHi, TGA); +@@ -1515,6 +1547,14 @@ + unsigned MOHiFlag, MOLoFlag; + bool isPIC = GetLabelAccessInfo(DAG.getTarget(), MOHiFlag, MOLoFlag, GV); + ++ if (isPIC && PPCSubTarget.isSVR4ABI()) { ++ SDValue GA = DAG.getTargetGlobalAddress(GV, DL, PtrVT, ++ GSDN->getOffset(), ++ PPCII::MO_PIC_FLAG); ++ return DAG.getNode(PPCISD::TOC_ENTRY, DL, MVT::i32, GA, ++ DAG.getNode(PPCISD::GlobalBaseReg, DL, MVT::i32)); ++ } ++ + SDValue GAHi = + DAG.getTargetGlobalAddress(GV, DL, PtrVT, GSDN->getOffset(), MOHiFlag); + SDValue GALo = +@@ -3214,15 +3254,18 @@ + // far-call stubs may be outside relocation limits for a BL instruction. + if (!DAG.getTarget().getSubtarget<PPCSubtarget>().isJITCodeModel()) { + unsigned OpFlags = 0; +- if (DAG.getTarget().getRelocationModel() != Reloc::Static && ++ if ((DAG.getTarget().getRelocationModel() != Reloc::Static && + (PPCSubTarget.getTargetTriple().isMacOSX() && + PPCSubTarget.getTargetTriple().isMacOSXVersionLT(10, 5)) && + (G->getGlobal()->isDeclaration() || +- G->getGlobal()->isWeakForLinker())) { ++ G->getGlobal()->isWeakForLinker())) || ++ (PPCSubTarget.isTargetELF() && !isPPC64 && ++ !G->getGlobal()->hasLocalLinkage() && ++ DAG.getTarget().getRelocationModel() == Reloc::PIC_)) { + // PC-relative references to external symbols should go through $stub, + // unless we're building with the leopard linker or later, which + // automatically synthesizes these stubs. +- OpFlags = PPCII::MO_DARWIN_STUB; ++ OpFlags = PPCII::MO_PLT_OR_STUB; + } + + // If the callee is a GlobalAddress/ExternalSymbol node (quite common, +@@ -3244,7 +3287,7 @@ + // PC-relative references to external symbols should go through $stub, + // unless we're building with the leopard linker or later, which + // automatically synthesizes these stubs. +- OpFlags = PPCII::MO_DARWIN_STUB; ++ OpFlags = PPCII::MO_PLT_OR_STUB; + } + + Callee = DAG.getTargetExternalSymbol(S->getSymbol(), Callee.getValueType(), +@@ -6255,7 +6298,10 @@ + // Since FP is only updated here but NOT referenced, it's treated as GPR. + unsigned FP = (PVT == MVT::i64) ? PPC::X31 : PPC::R31; + unsigned SP = (PVT == MVT::i64) ? PPC::X1 : PPC::R1; +- unsigned BP = (PVT == MVT::i64) ? PPC::X30 : PPC::R30; ++ unsigned BP = (PVT == MVT::i64) ? PPC::X30 : ++ (PPCSubTarget.isSVR4ABI() && ++ MF->getTarget().getRelocationModel() == Reloc::PIC_ ? ++ PPC::R29 : PPC::R30); + + MachineInstrBuilder MIB; + +Index: contrib/llvm/lib/Target/PowerPC/PPCISelLowering.h +=================================================================== +--- contrib/llvm/lib/Target/PowerPC/PPCISelLowering.h (revision 270019) ++++ contrib/llvm/lib/Target/PowerPC/PPCISelLowering.h (working copy) +@@ -177,6 +177,12 @@ + CR6SET, + CR6UNSET, + ++ PPC32_GOT, ++ ++ /// GPRC = address of _GLOBAL_OFFSET_TABLE_. Used by general dynamic and ++ /// local dynamic TLS on PPC32. ++ PPC32_PICGOT, ++ + /// G8RC = ADDIS_GOT_TPREL_HA %X2, Symbol - Used by the initial-exec + /// TLS model, produces an ADDIS8 instruction that adds the GOT + /// base to sym\@got\@tprel\@ha. +Index: contrib/llvm/lib/Target/PowerPC/PPCInstr64Bit.td +=================================================================== +--- contrib/llvm/lib/Target/PowerPC/PPCInstr64Bit.td (revision 270019) ++++ contrib/llvm/lib/Target/PowerPC/PPCInstr64Bit.td (working copy) +@@ -36,10 +36,6 @@ + def tocentry : Operand<iPTR> { + let MIOperandInfo = (ops i64imm:$imm); + } +-def PPCTLSRegOperand : AsmOperandClass { +- let Name = "TLSReg"; let PredicateMethod = "isTLSReg"; +- let RenderMethod = "addTLSRegOperands"; +-} + def tlsreg : Operand<i64> { + let EncoderMethod = "getTLSRegEncoding"; + let ParserMatchClass = PPCTLSRegOperand; +Index: contrib/llvm/lib/Target/PowerPC/PPCInstrInfo.td +=================================================================== +--- contrib/llvm/lib/Target/PowerPC/PPCInstrInfo.td (revision 270019) ++++ contrib/llvm/lib/Target/PowerPC/PPCInstrInfo.td (working copy) +@@ -57,6 +57,9 @@ + SDTCisPtrTy<0>, SDTCisVT<1, i32> + ]>; + ++def tocentry32 : Operand<iPTR> { ++ let MIOperandInfo = (ops i32imm:$imm); ++} + + //===----------------------------------------------------------------------===// + // PowerPC specific DAG Nodes. +@@ -99,6 +102,8 @@ + def PPCvmaddfp : SDNode<"PPCISD::VMADDFP", SDTFPTernaryOp, []>; + def PPCvnmsubfp : SDNode<"PPCISD::VNMSUBFP", SDTFPTernaryOp, []>; + ++def PPCppc32GOT : SDNode<"PPCISD::PPC32_GOT", SDTIntLeaf, []>; ++ + def PPCaddisGotTprelHA : SDNode<"PPCISD::ADDIS_GOT_TPREL_HA", SDTIntBinOp>; + def PPCldGotTprelL : SDNode<"PPCISD::LD_GOT_TPREL_L", SDTIntBinOp, + [SDNPMayLoad]>; +@@ -555,6 +560,20 @@ + def memr : Operand<iPTR> { + let MIOperandInfo = (ops ptr_rc:$ptrreg); + } ++def PPCTLSRegOperand : AsmOperandClass { ++ let Name = "TLSReg"; let PredicateMethod = "isTLSReg"; ++ let RenderMethod = "addTLSRegOperands"; ++} ++def tlsreg32 : Operand<i32> { ++ let EncoderMethod = "getTLSRegEncoding"; ++ let ParserMatchClass = PPCTLSRegOperand; ++} ++def tlsgd32 : Operand<i32> {} ++def tlscall32 : Operand<i32> { ++ let PrintMethod = "printTLSCall"; ++ let MIOperandInfo = (ops calltarget:$func, tlsgd32:$sym); ++ let EncoderMethod = "getTLSCallEncoding"; ++} + + // PowerPC Predicate operand. + def pred : Operand<OtherVT> { +@@ -1003,6 +1022,8 @@ + "bla $func", BrB, [(PPCcall (i32 imm:$func))]>; + + let isCodeGenOnly = 1 in { ++ def BL_TLS : IForm<18, 0, 1, (outs), (ins tlscall32:$func), ++ "bl $func", BrB, []>; + def BCCL : BForm<16, 0, 1, (outs), (ins pred:$cond, condbrtarget:$dst), + "b${cond:cc}l${cond:pm} ${cond:reg}, $dst">; + def BCCLA : BForm<16, 1, 1, (outs), (ins pred:$cond, abscondbrtarget:$dst), +@@ -1995,6 +2016,10 @@ + defm ADD4 : XOForm_1r<31, 266, 0, (outs gprc:$rT), (ins gprc:$rA, gprc:$rB), + "add", "$rT, $rA, $rB", IntSimple, + [(set i32:$rT, (add i32:$rA, i32:$rB))]>; ++let isCodeGenOnly = 1 in ++def ADD4TLS : XOForm_1<31, 266, 0, (outs gprc:$rT), (ins gprc:$rA, tlsreg32:$rB), ++ "add $rT, $rA, $rB", IntSimple, ++ [(set i32:$rT, (add i32:$rA, tglobaltlsaddr:$rB))]>; + defm ADDC : XOForm_1rc<31, 10, 0, (outs gprc:$rT), (ins gprc:$rA, gprc:$rB), + "addc", "$rT, $rA, $rB", IntGeneral, + [(set i32:$rT, (addc i32:$rA, i32:$rB))]>, +@@ -2260,6 +2285,61 @@ + def : Pat<(add i32:$in, (PPChi tblockaddress:$g, 0)), + (ADDIS $in, tblockaddress:$g)>; + ++// Support for Position-independent code ++def LWZtoc: Pseudo<(outs gprc:$rD), (ins tocentry32:$disp, gprc:$reg), ++ "#LWZtoc", ++ [(set i32:$rD, ++ (PPCtoc_entry tglobaladdr:$disp, i32:$reg))]>; ++// Get Global (GOT) Base Register offset, from the word immediately preceding ++// the function label. ++def GetGBRO: Pseudo<(outs gprc:$rT), (ins gprc:$rI), "#GetGBRO", []>; ++// Update the Global(GOT) Base Register with the above offset. ++def UpdateGBR: Pseudo<(outs gprc:$rT), (ins gprc:$rI), "#UpdateGBR", []>; ++ ++ ++// Support for thread-local storage. ++def PPC32GOT: Pseudo<(outs gprc:$rD), (ins), "#PPC32GOT", ++ [(set i32:$rD, (PPCppc32GOT))]>; ++ ++// Get the _GLOBAL_OFFSET_TABLE_ in PIC mode. ++// This uses two output registers, the first as the real output, the second as a ++// temporary register, used internally in code generation. ++def PPC32PICGOT: Pseudo<(outs gprc:$rD, gprc:$rT), (ins), "#PPC32PICGOT", ++ []>, NoEncode<"$rT">; ++ ++def LDgotTprelL32: Pseudo<(outs gprc:$rD), (ins s16imm:$disp, gprc_nor0:$reg), ++ "#LDgotTprelL32", ++ [(set i32:$rD, ++ (PPCldGotTprelL tglobaltlsaddr:$disp, i32:$reg))]>; ++def : Pat<(PPCaddTls i32:$in, tglobaltlsaddr:$g), ++ (ADD4TLS $in, tglobaltlsaddr:$g)>; ++def ADDItlsgdL32 : Pseudo<(outs gprc:$rD), (ins gprc_nor0:$reg, s16imm:$disp), ++ "#ADDItlsgdL32", ++ [(set i32:$rD, ++ (PPCaddiTlsgdL i32:$reg, tglobaltlsaddr:$disp))]>; ++def GETtlsADDR32 : Pseudo<(outs gprc:$rD), (ins gprc:$reg, tlsgd32:$sym), ++ "#GETtlsADDR32", ++ [(set i32:$rD, ++ (PPCgetTlsAddr i32:$reg, tglobaltlsaddr:$sym))]>; ++def ADDItlsldL32 : Pseudo<(outs gprc:$rD), (ins gprc_nor0:$reg, s16imm:$disp), ++ "#ADDItlsldL32", ++ [(set i32:$rD, ++ (PPCaddiTlsldL i32:$reg, tglobaltlsaddr:$disp))]>; ++def GETtlsldADDR32 : Pseudo<(outs gprc:$rD), (ins gprc:$reg, tlsgd32:$sym), ++ "#GETtlsldADDR32", ++ [(set i32:$rD, ++ (PPCgetTlsldAddr i32:$reg, tglobaltlsaddr:$sym))]>; ++def ADDIdtprelL32 : Pseudo<(outs gprc:$rD), (ins gprc_nor0:$reg, s16imm:$disp), ++ "#ADDIdtprelL32", ++ [(set i32:$rD, ++ (PPCaddiDtprelL i32:$reg, tglobaltlsaddr:$disp))]>; ++def ADDISdtprelHA32 : Pseudo<(outs gprc:$rD), (ins gprc_nor0:$reg, s16imm:$disp), ++ "#ADDISdtprelHA32", ++ [(set i32:$rD, ++ (PPCaddisDtprelHA i32:$reg, ++ tglobaltlsaddr:$disp))]>; ++ ++ + // Standard shifts. These are represented separately from the real shifts above + // so that we can distinguish between shifts that allow 5-bit and 6-bit shift + // amounts. +Index: contrib/llvm/lib/Target/PowerPC/PPCMCInstLower.cpp +=================================================================== +--- contrib/llvm/lib/Target/PowerPC/PPCMCInstLower.cpp (revision 270019) ++++ contrib/llvm/lib/Target/PowerPC/PPCMCInstLower.cpp (working copy) +@@ -13,6 +13,7 @@ + //===----------------------------------------------------------------------===// + + #include "PPC.h" ++#include "PPCSubtarget.h" + #include "MCTargetDesc/PPCMCExpr.h" + #include "llvm/ADT/SmallString.h" + #include "llvm/ADT/Twine.h" +@@ -24,6 +25,7 @@ + #include "llvm/MC/MCExpr.h" + #include "llvm/MC/MCInst.h" + #include "llvm/Target/Mangler.h" ++#include "llvm/Target/TargetMachine.h" + using namespace llvm; + + static MachineModuleInfoMachO &getMachOMMI(AsmPrinter &AP) { +@@ -32,7 +34,9 @@ + + + static MCSymbol *GetSymbolFromOperand(const MachineOperand &MO, AsmPrinter &AP){ ++ const TargetMachine &TM = AP.TM; + MCContext &Ctx = AP.OutContext; ++ bool isDarwin = TM.getSubtarget<PPCSubtarget>().isDarwin(); + + SmallString<128> Name; + if (!MO.isGlobal()) { +@@ -42,7 +46,7 @@ + } else { + const GlobalValue *GV = MO.getGlobal(); + bool isImplicitlyPrivate = false; +- if (MO.getTargetFlags() == PPCII::MO_DARWIN_STUB || ++ if (MO.getTargetFlags() == PPCII::MO_PLT_OR_STUB || + (MO.getTargetFlags() & PPCII::MO_NLP_FLAG)) + isImplicitlyPrivate = true; + +@@ -51,7 +55,7 @@ + + // If the target flags on the operand changes the name of the symbol, do that + // before we return the symbol. +- if (MO.getTargetFlags() == PPCII::MO_DARWIN_STUB) { ++ if (MO.getTargetFlags() == PPCII::MO_PLT_OR_STUB && isDarwin) { + Name += "$stub"; + const char *PGP = AP.MAI->getPrivateGlobalPrefix(); + const char *Prefix = ""; +@@ -132,6 +136,9 @@ + break; + } + ++ if (MO.getTargetFlags() == PPCII::MO_PLT_OR_STUB && !isDarwin) ++ RefKind = MCSymbolRefExpr::VK_PLT; ++ + const MCExpr *Expr = MCSymbolRefExpr::Create(Symbol, RefKind, Ctx); + + if (!MO.isJTI() && MO.getOffset()) +Index: contrib/llvm/lib/Target/PowerPC/PPCMachineFunctionInfo.cpp +=================================================================== +--- contrib/llvm/lib/Target/PowerPC/PPCMachineFunctionInfo.cpp (revision 270019) ++++ contrib/llvm/lib/Target/PowerPC/PPCMachineFunctionInfo.cpp (working copy) +@@ -8,8 +8,16 @@ + //===----------------------------------------------------------------------===// + + #include "PPCMachineFunctionInfo.h" ++#include "llvm/MC/MCAsmInfo.h" ++#include "llvm/MC/MCContext.h" ++#include "llvm/Target/TargetMachine.h" + + using namespace llvm; + + void PPCFunctionInfo::anchor() { } + ++MCSymbol *PPCFunctionInfo::getPICOffsetSymbol() const { ++ const MCAsmInfo *MAI = MF.getTarget().getMCAsmInfo(); ++ return MF.getContext().GetOrCreateSymbol(Twine(MAI->getPrivateGlobalPrefix())+ ++ Twine(MF.getFunctionNumber())+"$poff"); ++} +Index: contrib/llvm/lib/Target/PowerPC/PPCMachineFunctionInfo.h +=================================================================== +--- contrib/llvm/lib/Target/PowerPC/PPCMachineFunctionInfo.h (revision 270019) ++++ contrib/llvm/lib/Target/PowerPC/PPCMachineFunctionInfo.h (working copy) +@@ -92,6 +92,12 @@ + /// 64-bit SVR4 ABI. + SmallVector<unsigned, 3> MustSaveCRs; + ++ /// Hold onto our MachineFunction context. ++ MachineFunction &MF; ++ ++ /// Whether this uses the PIC Base register or not. ++ bool UsesPICBase; ++ + public: + explicit PPCFunctionInfo(MachineFunction &MF) + : FramePointerSaveIndex(0), +@@ -109,7 +115,9 @@ + VarArgsStackOffset(0), + VarArgsNumGPR(0), + VarArgsNumFPR(0), +- CRSpillFrameIndex(0) {} ++ CRSpillFrameIndex(0), ++ MF(MF), ++ UsesPICBase(0) {} + + int getFramePointerSaveIndex() const { return FramePointerSaveIndex; } + void setFramePointerSaveIndex(int Idx) { FramePointerSaveIndex = Idx; } +@@ -170,6 +178,11 @@ + const SmallVectorImpl<unsigned> & + getMustSaveCRs() const { return MustSaveCRs; } + void addMustSaveCR(unsigned Reg) { MustSaveCRs.push_back(Reg); } ++ ++ void setUsesPICBase(bool uses) { UsesPICBase = uses; } ++ bool usesPICBase() const { return UsesPICBase; } ++ ++ MCSymbol *getPICOffsetSymbol() const; + }; + + } // end of namespace llvm +Index: contrib/llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp +=================================================================== +--- contrib/llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp (revision 270019) ++++ contrib/llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp (working copy) +@@ -199,7 +199,16 @@ + if (PPCFI->needsFP(MF)) + Reserved.set(PPC::R31); + +- if (hasBasePointer(MF)) ++ if (hasBasePointer(MF)) { ++ if (Subtarget.isSVR4ABI() && !Subtarget.isPPC64() && ++ MF.getTarget().getRelocationModel() == Reloc::PIC_) ++ Reserved.set(PPC::R29); ++ else ++ Reserved.set(PPC::R30); ++ } ++ ++ if (Subtarget.isSVR4ABI() && !Subtarget.isPPC64() && ++ MF.getTarget().getRelocationModel() == Reloc::PIC_) + Reserved.set(PPC::R30); + + // Reserve Altivec registers when Altivec is unavailable. +@@ -695,7 +704,14 @@ + if (!hasBasePointer(MF)) + return getFrameRegister(MF); + +- return Subtarget.isPPC64() ? PPC::X30 : PPC::R30; ++ if (Subtarget.isPPC64()) ++ return PPC::X30; ++ ++ if (Subtarget.isSVR4ABI() && ++ MF.getTarget().getRelocationModel() == Reloc::PIC_) ++ return PPC::R29; ++ ++ return PPC::R30; + } + + bool PPCRegisterInfo::hasBasePointer(const MachineFunction &MF) const { +Index: contrib/llvm/lib/Target/PowerPC/PPCSubtarget.h +=================================================================== +--- contrib/llvm/lib/Target/PowerPC/PPCSubtarget.h (revision 270019) ++++ contrib/llvm/lib/Target/PowerPC/PPCSubtarget.h (working copy) +@@ -189,6 +189,9 @@ + /// isBGQ - True if this is a BG/Q platform. + bool isBGQ() const { return TargetTriple.getVendor() == Triple::BGQ; } + ++ bool isTargetELF() const { return TargetTriple.isOSBinFormatELF(); } ++// bool isTargetMachO() const { return TargetTriple.isOSBinFormatMachO(); } ++ + bool isDarwinABI() const { return isDarwin(); } + bool isSVR4ABI() const { return !isDarwin(); } + diff --git a/etc/Makefile b/etc/Makefile index 3387e60..ff70cc1 100644 --- a/etc/Makefile +++ b/etc/Makefile @@ -11,7 +11,8 @@ SUBDIR= sendmail SUBDIR+=tests .endif -BIN1= crontab \ +BIN1= auto_master \ + crontab \ devd.conf \ devfs.conf \ ddb.conf \ @@ -225,6 +226,7 @@ distribution: echo "./etc/spwd.db type=file mode=0600 uname=root gname=wheel"; \ ) | ${METALOG.add} .endif + ${_+_}cd ${.CURDIR}/autofs; ${MAKE} install .if ${MK_BLUETOOTH} != "no" ${_+_}cd ${.CURDIR}/bluetooth; ${MAKE} install .endif diff --git a/etc/auto_master b/etc/auto_master new file mode 100644 index 0000000..3b3e5da --- /dev/null +++ b/etc/auto_master @@ -0,0 +1,5 @@ +# $FreeBSD$ +# +# Automounter master map, see auto_master(5) for details. +# +/net -hosts -nobrowse,nosuid diff --git a/etc/autofs/Makefile b/etc/autofs/Makefile new file mode 100644 index 0000000..c9eda50 --- /dev/null +++ b/etc/autofs/Makefile @@ -0,0 +1,9 @@ +# $FreeBSD$ + +FILES= include_ldap special_hosts special_null + +NO_OBJ= +FILESDIR= /etc/autofs +FILESMODE= 755 + +.include <bsd.prog.mk> diff --git a/etc/autofs/include_ldap b/etc/autofs/include_ldap new file mode 100644 index 0000000..58970c0 --- /dev/null +++ b/etc/autofs/include_ldap @@ -0,0 +1,38 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +# Modify this to suit your needs. The "$1" is the map name, eg. "auto_master". +# To debug, simply run this script with map name as the only parameter. It's +# supposed to output map contents ("key location" pairs) to standard output. +SEARCHBASE="ou=$1,dc=example,dc=com" +ENTRY_ATTRIBUTE="cn" +VALUE_ATTRIBUTE="automountInformation" + +/usr/local/bin/ldapsearch -LLL -x -o ldif-wrap=no -b "$SEARCHBASE" "$ENTRY_ATTRIBUTE" "$VALUE_ATTRIBUTE" | awk ' +$1 == "'$ENTRY_ATTRIBUTE':" { + key = $2 +} + +$1 == "'$VALUE_ATTRIBUTE':" && key { + printf "%s%s", key, OFS + key = "" + for (i=2; i<NF; i++) { + printf "%s%s", $(i), OFS + } + printf "%s%s", $NF, ORS +} + +# Double colon after attribute name means the value is in Base64. +$1 == "'$VALUE_ATTRIBUTE'::" && key { + printf "%s%s", key, OFS + key = "" + for (i=2; i<NF; i++) { + printf "%s%s", $(i), OFS + } + printf "%s", $NF | "b64decode -rp" + close("b64decode -rp") + printf "%s", ORS +} +' diff --git a/etc/autofs/special_hosts b/etc/autofs/special_hosts new file mode 100644 index 0000000..f81449d --- /dev/null +++ b/etc/autofs/special_hosts @@ -0,0 +1,17 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +if [ $# -eq 0 ]; then + out=`getent hosts` + [ $? -eq 0 ] || exit 1 + echo "$out" | awk '{ print $2 }' | sort -u + exit 0 +fi + +out=`showmount -e "$1"` +[ $? -eq 0 ] || exit 1 +echo "$out" | awk -v host="$1" \ + 'NR > 1 { printf "%s\t%s:%s ", $1, host, $1 } END { printf "\n" }' + diff --git a/etc/autofs/special_null b/etc/autofs/special_null new file mode 100644 index 0000000..41c1000 --- /dev/null +++ b/etc/autofs/special_null @@ -0,0 +1,4 @@ +#!/usr/bin/true +# +# $FreeBSD$ +# diff --git a/etc/defaults/rc.conf b/etc/defaults/rc.conf index da0e419..3c77d8d 100644 --- a/etc/defaults/rc.conf +++ b/etc/defaults/rc.conf @@ -21,7 +21,7 @@ ### Important initial Boot-time options #################### ############################################################## -rc_debug="NO" # Set to YES to enable debugging output from rc.d +#rc_debug="NO" # Set to YES to enable debugging output from rc.d rc_info="NO" # Enables display of informational messages at boot. rc_startmsgs="YES" # Show "Starting foo:" messages at boot rcshutdown_timeout="90" # Seconds to wait before terminating rc.shutdown @@ -306,6 +306,7 @@ amd_enable="NO" # Run amd service with $amd_flags (or NO). amd_program="/usr/sbin/amd" # path to amd, if you want a different one. amd_flags="-a /.amd_mnt -l syslog /host /etc/amd.map /net /etc/amd.map" amd_map_program="NO" # Can be set to "ypcat -k amd.master" +autofs_enable="NO" # Run automountd(8) nfs_client_enable="NO" # This host is an NFS client (or NO). nfs_access_cache="60" # Client cache timeout in seconds nfs_server_enable="NO" # This host is an NFS server (or NO). diff --git a/etc/devd/Makefile b/etc/devd/Makefile index c744398..94cafdc 100644 --- a/etc/devd/Makefile +++ b/etc/devd/Makefile @@ -1,6 +1,6 @@ # $FreeBSD$ -FILES= uath.conf usb.conf zfs.conf +.include <src.opts.mk> .if ${MACHINE} == "powerpc" FILES+= apple.conf @@ -10,6 +10,14 @@ FILES+= apple.conf FILES+= asus.conf .endif +.if ${MK_USB} != "no" +FILES+= uath.conf usb.conf +.endif + +.if ${MK_ZFS} != "no" +FILES+= zfs.conf +.endif + NO_OBJ= FILESDIR= /etc/devd FILESMODE= 644 diff --git a/etc/mtree/BSD.root.dist b/etc/mtree/BSD.root.dist index 4462013..7b8d9e7 100644 --- a/etc/mtree/BSD.root.dist +++ b/etc/mtree/BSD.root.dist @@ -24,6 +24,8 @@ etc X11 .. + autofs + .. bluetooth .. casper @@ -60,6 +62,8 @@ .. ppp .. + rc.conf.d + .. rc.d .. security diff --git a/etc/mtree/BSD.tests.dist b/etc/mtree/BSD.tests.dist index 3c561bb..5438176 100644 --- a/etc/mtree/BSD.tests.dist +++ b/etc/mtree/BSD.tests.dist @@ -105,6 +105,8 @@ sbin dhclient .. + devd + .. growfs .. mdconfig diff --git a/etc/rc.d/Makefile b/etc/rc.d/Makefile index 7302d29..75f79b9 100644 --- a/etc/rc.d/Makefile +++ b/etc/rc.d/Makefile @@ -20,6 +20,9 @@ FILES= DAEMON \ atm3 \ auditd \ auditdistd \ + automount \ + automountd \ + autounmountd \ bgfsck \ ${_bluetooth} \ bootparams \ diff --git a/etc/rc.d/automount b/etc/rc.d/automount new file mode 100644 index 0000000..63bda42 --- /dev/null +++ b/etc/rc.d/automount @@ -0,0 +1,31 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +# PROVIDE: automount +# REQUIRE: nfsclient +# KEYWORD: nojail shutdown + +. /etc/rc.subr + +name="automount" +rcvar="autofs_enable" +start_cmd="automount_start" +stop_cmd="automount_stop" +required_modules="autofs" + +automount_start() +{ + + /usr/sbin/automount +} + +automount_stop() +{ + + /sbin/umount -At autofs +} + +load_rc_config $name +run_rc_command "$1" diff --git a/etc/rc.d/automountd b/etc/rc.d/automountd new file mode 100644 index 0000000..6d74665 --- /dev/null +++ b/etc/rc.d/automountd @@ -0,0 +1,19 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +# PROVIDE: automountd +# REQUIRE: automount +# KEYWORD: nojail + +. /etc/rc.subr + +name="automountd" +rcvar="autofs_enable" +pidfile="/var/run/${name}.pid" +command="/usr/sbin/${name}" +required_modules="autofs" + +load_rc_config $name +run_rc_command "$1" diff --git a/etc/rc.d/autounmountd b/etc/rc.d/autounmountd new file mode 100644 index 0000000..c57f90d --- /dev/null +++ b/etc/rc.d/autounmountd @@ -0,0 +1,18 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +# PROVIDE: autounmountd +# REQUIRE: nfsclient +# KEYWORD: nojail + +. /etc/rc.subr + +name="autounmountd" +rcvar="autofs_enable" +pidfile="/var/run/${name}.pid" +command="/usr/sbin/${name}" + +load_rc_config $name +run_rc_command "$1" diff --git a/etc/rc.subr b/etc/rc.subr index b6172db..f02ae14 100644 --- a/etc/rc.subr +++ b/etc/rc.subr @@ -1290,8 +1290,16 @@ load_rc_config() _rc_conf_loaded=true fi if [ -f /etc/rc.conf.d/"$_name" ]; then - debug "Sourcing /etc/rc.conf.d/${_name}" + debug "Sourcing /etc/rc.conf.d/$_name" . /etc/rc.conf.d/"$_name" + elif [ -d /etc/rc.conf.d/"$_name" ] ; then + local _rc + for _rc in /etc/rc.conf.d/"$_name"/* ; do + if [ -f "$_rc" ] ; then + debug "Sourcing $_rc" + . "$_rc" + fi + done fi # Set defaults if defined. diff --git a/gnu/lib/libgcc/Makefile b/gnu/lib/libgcc/Makefile index f0e4834..8480ef4 100644 --- a/gnu/lib/libgcc/Makefile +++ b/gnu/lib/libgcc/Makefile @@ -28,6 +28,7 @@ CFLAGS+= -DIN_GCC -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED \ -I${.CURDIR}/../../usr.bin/cc/cc_tools LDFLAGS+= -nodefaultlibs +DPADD+= ${LIBC} LDADD+= -lc OBJS= # added to below in various ways depending on TARGET_CPUARCH diff --git a/gnu/usr.bin/binutils/addr2line/Makefile b/gnu/usr.bin/binutils/addr2line/Makefile index 37649fa..2380738 100644 --- a/gnu/usr.bin/binutils/addr2line/Makefile +++ b/gnu/usr.bin/binutils/addr2line/Makefile @@ -14,6 +14,4 @@ DPADD+= ${RELTOP}/libbfd/libbfd.a DPADD+= ${RELTOP}/libiberty/libiberty.a LDADD= ${DPADD} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/gnu/usr.bin/binutils/nm/Makefile b/gnu/usr.bin/binutils/nm/Makefile index 5945d25..4ef2b8f 100644 --- a/gnu/usr.bin/binutils/nm/Makefile +++ b/gnu/usr.bin/binutils/nm/Makefile @@ -15,6 +15,4 @@ DPADD+= ${RELTOP}/libbfd/libbfd.a DPADD+= ${RELTOP}/libiberty/libiberty.a LDADD= ${DPADD} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/gnu/usr.bin/binutils/objcopy/Makefile b/gnu/usr.bin/binutils/objcopy/Makefile index c23e1e8..66d99f4 100644 --- a/gnu/usr.bin/binutils/objcopy/Makefile +++ b/gnu/usr.bin/binutils/objcopy/Makefile @@ -14,6 +14,4 @@ DPADD+= ${RELTOP}/libbfd/libbfd.a DPADD+= ${RELTOP}/libiberty/libiberty.a LDADD= ${DPADD} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/gnu/usr.bin/binutils/objdump/Makefile b/gnu/usr.bin/binutils/objdump/Makefile index fb275ac..1a0d046 100644 --- a/gnu/usr.bin/binutils/objdump/Makefile +++ b/gnu/usr.bin/binutils/objdump/Makefile @@ -16,6 +16,4 @@ DPADD+= ${RELTOP}/libbfd/libbfd.a DPADD+= ${RELTOP}/libiberty/libiberty.a LDADD= ${DPADD} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/gnu/usr.bin/binutils/readelf/Makefile b/gnu/usr.bin/binutils/readelf/Makefile index fd3110d..d90c3bc 100644 --- a/gnu/usr.bin/binutils/readelf/Makefile +++ b/gnu/usr.bin/binutils/readelf/Makefile @@ -17,6 +17,4 @@ DPADD+= ${RELTOP}/libbfd/libbfd.a DPADD+= ${RELTOP}/libiberty/libiberty.a LDADD= ${DPADD} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/gnu/usr.bin/binutils/size/Makefile b/gnu/usr.bin/binutils/size/Makefile index a22e67f..c5c19c1 100644 --- a/gnu/usr.bin/binutils/size/Makefile +++ b/gnu/usr.bin/binutils/size/Makefile @@ -14,6 +14,4 @@ DPADD+= ${RELTOP}/libbfd/libbfd.a DPADD+= ${RELTOP}/libiberty/libiberty.a LDADD= ${DPADD} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/gnu/usr.bin/binutils/strings/Makefile b/gnu/usr.bin/binutils/strings/Makefile index 0ff82eb..a432d51 100644 --- a/gnu/usr.bin/binutils/strings/Makefile +++ b/gnu/usr.bin/binutils/strings/Makefile @@ -14,6 +14,4 @@ DPADD+= ${RELTOP}/libbfd/libbfd.a DPADD+= ${RELTOP}/libiberty/libiberty.a LDADD= ${DPADD} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/gnu/usr.bin/binutils/strip/Makefile b/gnu/usr.bin/binutils/strip/Makefile index 6d17067..d3cf8c4 100644 --- a/gnu/usr.bin/binutils/strip/Makefile +++ b/gnu/usr.bin/binutils/strip/Makefile @@ -15,6 +15,4 @@ DPADD+= ${RELTOP}/libiberty/libiberty.a LDADD= ${DPADD} INSTALLFLAGS= -S -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/gnu/usr.bin/gdb/gdb/Makefile b/gnu/usr.bin/gdb/gdb/Makefile index cf23804..900fbcc 100644 --- a/gnu/usr.bin/gdb/gdb/Makefile +++ b/gnu/usr.bin/gdb/gdb/Makefile @@ -14,7 +14,5 @@ LDFLAGS+= -Wl,-E DPADD= ${GDBLIBS} ${BULIBS} ${LIBM} ${LIBREADLINE} ${LIBTERMCAPW} ${LIBGNUREGEX} LDADD= ${GDBLIBS} ${BULIBS} -lm ${LDREADLINE} -ltermcapw -lgnuregex -NO_PIE= yes - .include <bsd.prog.mk> CFLAGS+= -DDEBUGDIR=\"${DEBUGDIR}\" diff --git a/gnu/usr.bin/gdb/gdbtui/Makefile b/gnu/usr.bin/gdb/gdbtui/Makefile index 1670173..4ee9415 100644 --- a/gnu/usr.bin/gdb/gdbtui/Makefile +++ b/gnu/usr.bin/gdb/gdbtui/Makefile @@ -15,6 +15,4 @@ LDFLAGS+= -Wl,-E DPADD= ${GDBLIBS} ${BULIBS} ${LIBM} ${LIBREADLINE} ${LIBTERMCAPW} ${LIBGNUREGEX} LDADD= ${GDBLIBS} ${BULIBS} -lm ${LDREADLINE} -ltermcapw -lgnuregex -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/gnu/usr.bin/gdb/kgdb/Makefile b/gnu/usr.bin/gdb/kgdb/Makefile index 076b7cd..04c14b3 100644 --- a/gnu/usr.bin/gdb/kgdb/Makefile +++ b/gnu/usr.bin/gdb/kgdb/Makefile @@ -17,6 +17,4 @@ LDADD= ${GDBLIBS} ${BULIBS} -lkvm${GDB_SUFFIX} -lm ${LDREADLINE} -ltermcapw \ CFLAGS+= -Wl,-export-dynamic .endif -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/gnu/usr.bin/groff/src/devices/grodvi/Makefile b/gnu/usr.bin/groff/src/devices/grodvi/Makefile index 7c88f04..3745440 100644 --- a/gnu/usr.bin/groff/src/devices/grodvi/Makefile +++ b/gnu/usr.bin/groff/src/devices/grodvi/Makefile @@ -6,6 +6,4 @@ DPADD= ${LIBDRIVER} ${LIBGROFF} ${LIBM} LDADD= ${LIBDRIVER} ${LIBGROFF} -lm CLEANFILES= ${MAN} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/gnu/usr.bin/groff/src/devices/grohtml/Makefile b/gnu/usr.bin/groff/src/devices/grohtml/Makefile index 4d30338..321f1c8 100644 --- a/gnu/usr.bin/groff/src/devices/grohtml/Makefile +++ b/gnu/usr.bin/groff/src/devices/grohtml/Makefile @@ -6,6 +6,4 @@ DPADD= ${LIBDRIVER} ${LIBGROFF} ${LIBM} LDADD= ${LIBDRIVER} ${LIBGROFF} -lm MAN= -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/gnu/usr.bin/groff/src/devices/grolbp/Makefile b/gnu/usr.bin/groff/src/devices/grolbp/Makefile index 69511e0..85a41c1 100644 --- a/gnu/usr.bin/groff/src/devices/grolbp/Makefile +++ b/gnu/usr.bin/groff/src/devices/grolbp/Makefile @@ -6,6 +6,4 @@ DPADD= ${LIBDRIVER} ${LIBGROFF} ${LIBM} LDADD= ${LIBDRIVER} ${LIBGROFF} -lm CLEANFILES= ${MAN} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/gnu/usr.bin/groff/src/devices/grolj4/Makefile b/gnu/usr.bin/groff/src/devices/grolj4/Makefile index 51a003f..bb3f9e4 100644 --- a/gnu/usr.bin/groff/src/devices/grolj4/Makefile +++ b/gnu/usr.bin/groff/src/devices/grolj4/Makefile @@ -7,6 +7,4 @@ DPADD= ${LIBDRIVER} ${LIBGROFF} ${LIBM} LDADD= ${LIBDRIVER} ${LIBGROFF} -lm CLEANFILES= ${MAN} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/gnu/usr.bin/groff/src/devices/grops/Makefile b/gnu/usr.bin/groff/src/devices/grops/Makefile index 4933dbb..4511f69 100644 --- a/gnu/usr.bin/groff/src/devices/grops/Makefile +++ b/gnu/usr.bin/groff/src/devices/grops/Makefile @@ -6,6 +6,4 @@ DPADD= ${LIBDRIVER} ${LIBGROFF} ${LIBM} LDADD= ${LIBDRIVER} ${LIBGROFF} -lm CLEANFILES= ${MAN} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/gnu/usr.bin/groff/src/devices/grotty/Makefile b/gnu/usr.bin/groff/src/devices/grotty/Makefile index 78d6498..d15ee8b 100644 --- a/gnu/usr.bin/groff/src/devices/grotty/Makefile +++ b/gnu/usr.bin/groff/src/devices/grotty/Makefile @@ -6,6 +6,4 @@ DPADD= ${LIBDRIVER} ${LIBGROFF} ${LIBM} LDADD= ${LIBDRIVER} ${LIBGROFF} -lm CLEANFILES= ${MAN} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/gnu/usr.bin/groff/src/preproc/eqn/Makefile b/gnu/usr.bin/groff/src/preproc/eqn/Makefile index 9e53be6..80871fe 100644 --- a/gnu/usr.bin/groff/src/preproc/eqn/Makefile +++ b/gnu/usr.bin/groff/src/preproc/eqn/Makefile @@ -11,8 +11,6 @@ SCRIPTS= neqn MAN= eqn.1 neqn.1 CLEANFILES= eqn.cpp eqn_tab.h ${SCRIPTS} ${MAN} y.tab.c y.tab.h -NO_PIE= yes - eqn_tab.h: eqn.cpp .include <bsd.prog.mk> diff --git a/gnu/usr.bin/groff/src/preproc/grn/Makefile b/gnu/usr.bin/groff/src/preproc/grn/Makefile index d859270..58309d2 100644 --- a/gnu/usr.bin/groff/src/preproc/grn/Makefile +++ b/gnu/usr.bin/groff/src/preproc/grn/Makefile @@ -6,6 +6,4 @@ DPADD= ${LIBGROFF} ${LIBM} LDADD= ${LIBGROFF} -lm CLEANFILES= ${MAN} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/gnu/usr.bin/groff/src/preproc/html/Makefile b/gnu/usr.bin/groff/src/preproc/html/Makefile index 4e82fd1..d46626b 100644 --- a/gnu/usr.bin/groff/src/preproc/html/Makefile +++ b/gnu/usr.bin/groff/src/preproc/html/Makefile @@ -6,6 +6,4 @@ DPADD= ${LIBGROFF} LDADD= ${LIBGROFF} MAN= -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/gnu/usr.bin/groff/src/preproc/pic/Makefile b/gnu/usr.bin/groff/src/preproc/pic/Makefile index 2d14d0a..3b5939c 100644 --- a/gnu/usr.bin/groff/src/preproc/pic/Makefile +++ b/gnu/usr.bin/groff/src/preproc/pic/Makefile @@ -8,8 +8,6 @@ DPADD= ${LIBGROFF} ${LIBM} LDADD= ${LIBGROFF} -lm CLEANFILES= ${MAN} pic.cpp pic_tab.h y.tab.c y.tab.h -NO_PIE= yes - pic_tab.h: pic.cpp .include <bsd.prog.mk> diff --git a/gnu/usr.bin/groff/src/preproc/refer/Makefile b/gnu/usr.bin/groff/src/preproc/refer/Makefile index ce82c70..8a18f6f 100644 --- a/gnu/usr.bin/groff/src/preproc/refer/Makefile +++ b/gnu/usr.bin/groff/src/preproc/refer/Makefile @@ -7,6 +7,4 @@ DPADD= ${LIBBIB} ${LIBGROFF} ${LIBM} LDADD= ${LIBBIB} ${LIBGROFF} -lm CLEANFILES= label.cpp label_tab.h ${MAN} y.tab.c y.tab.h -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/gnu/usr.bin/groff/src/preproc/soelim/Makefile b/gnu/usr.bin/groff/src/preproc/soelim/Makefile index 8567a44..2c68b80 100644 --- a/gnu/usr.bin/groff/src/preproc/soelim/Makefile +++ b/gnu/usr.bin/groff/src/preproc/soelim/Makefile @@ -6,6 +6,4 @@ DPADD= ${LIBGROFF} LDADD= ${LIBGROFF} CLEANFILES= ${MAN} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/gnu/usr.bin/groff/src/preproc/tbl/Makefile b/gnu/usr.bin/groff/src/preproc/tbl/Makefile index 83bde82..29e7ac2 100644 --- a/gnu/usr.bin/groff/src/preproc/tbl/Makefile +++ b/gnu/usr.bin/groff/src/preproc/tbl/Makefile @@ -6,6 +6,4 @@ DPADD= ${LIBGROFF} ${LIBM} LDADD= ${LIBGROFF} -lm CLEANFILES= ${MAN} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/gnu/usr.bin/groff/src/roff/groff/Makefile b/gnu/usr.bin/groff/src/roff/groff/Makefile index 576507c..2ae541b 100644 --- a/gnu/usr.bin/groff/src/roff/groff/Makefile +++ b/gnu/usr.bin/groff/src/roff/groff/Makefile @@ -6,6 +6,4 @@ DPADD= ${LIBGROFF} ${LIBM} LDADD= ${LIBGROFF} -lm CLEANFILES= ${MAN} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/gnu/usr.bin/groff/src/roff/troff/Makefile b/gnu/usr.bin/groff/src/roff/troff/Makefile index 5c3b837..802af2b 100644 --- a/gnu/usr.bin/groff/src/roff/troff/Makefile +++ b/gnu/usr.bin/groff/src/roff/troff/Makefile @@ -7,8 +7,6 @@ DPADD= ${LIBGROFF} ${LIBM} LDADD= ${LIBGROFF} -lm CLEANFILES= majorminor.cpp ${MAN} -NO_PIE= yes - .include <bsd.prog.mk> majorminor.cpp: ${GROFF_DIST}/VERSION ${GROFF_DIST}/REVISION diff --git a/gnu/usr.bin/groff/src/utils/addftinfo/Makefile b/gnu/usr.bin/groff/src/utils/addftinfo/Makefile index ea3b7a2..26fbb57 100644 --- a/gnu/usr.bin/groff/src/utils/addftinfo/Makefile +++ b/gnu/usr.bin/groff/src/utils/addftinfo/Makefile @@ -6,6 +6,4 @@ DPADD= ${LIBGROFF} LDADD= ${LIBGROFF} CLEANFILES= ${MAN} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/gnu/usr.bin/groff/src/utils/hpftodit/Makefile b/gnu/usr.bin/groff/src/utils/hpftodit/Makefile index 512ca1b..1376702 100644 --- a/gnu/usr.bin/groff/src/utils/hpftodit/Makefile +++ b/gnu/usr.bin/groff/src/utils/hpftodit/Makefile @@ -6,6 +6,4 @@ DPADD= ${LIBGROFF} ${LIBM} LDADD= ${LIBGROFF} -lm CLEANFILES= ${MAN} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/gnu/usr.bin/groff/src/utils/indxbib/Makefile b/gnu/usr.bin/groff/src/utils/indxbib/Makefile index 86eb4fb..b2c59a2 100644 --- a/gnu/usr.bin/groff/src/utils/indxbib/Makefile +++ b/gnu/usr.bin/groff/src/utils/indxbib/Makefile @@ -6,8 +6,6 @@ DPADD= ${LIBBIB} ${LIBGROFF} ${LIBM} LDADD= ${LIBBIB} ${LIBGROFF} -lm CLEANFILES= ${MAN} -NO_PIE= yes - beforeinstall: ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m ${NOBINMODE} \ ${DIST_DIR}/eign ${DESTDIR}${SHAREDIR}/dict/ diff --git a/gnu/usr.bin/groff/src/utils/lkbib/Makefile b/gnu/usr.bin/groff/src/utils/lkbib/Makefile index 42fbd63..f30dc56 100644 --- a/gnu/usr.bin/groff/src/utils/lkbib/Makefile +++ b/gnu/usr.bin/groff/src/utils/lkbib/Makefile @@ -6,6 +6,4 @@ DPADD= ${LIBBIB} ${LIBGROFF} ${LIBM} LDADD= ${LIBBIB} ${LIBGROFF} -lm CLEANFILES= ${MAN} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/gnu/usr.bin/groff/src/utils/lookbib/Makefile b/gnu/usr.bin/groff/src/utils/lookbib/Makefile index e2ea17d..18834a7 100644 --- a/gnu/usr.bin/groff/src/utils/lookbib/Makefile +++ b/gnu/usr.bin/groff/src/utils/lookbib/Makefile @@ -6,6 +6,4 @@ DPADD= ${LIBBIB} ${LIBGROFF} ${LIBM} LDADD= ${LIBBIB} ${LIBGROFF} -lm CLEANFILES= ${MAN} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/gnu/usr.bin/groff/src/utils/tfmtodit/Makefile b/gnu/usr.bin/groff/src/utils/tfmtodit/Makefile index 1b0434f..ba3bbc5 100644 --- a/gnu/usr.bin/groff/src/utils/tfmtodit/Makefile +++ b/gnu/usr.bin/groff/src/utils/tfmtodit/Makefile @@ -6,6 +6,4 @@ DPADD= ${LIBGROFF} ${LIBM} LDADD= ${LIBGROFF} -lm CLEANFILES= ${MAN} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/gnu/usr.bin/rcs/Makefile.inc b/gnu/usr.bin/rcs/Makefile.inc index 912ae7b..a46437a 100644 --- a/gnu/usr.bin/rcs/Makefile.inc +++ b/gnu/usr.bin/rcs/Makefile.inc @@ -1,4 +1,3 @@ # $FreeBSD$ LIBRCS= ${.OBJDIR}/../lib/librcs.a -NO_PIE= yes diff --git a/gnu/usr.bin/texinfo/info/Makefile b/gnu/usr.bin/texinfo/info/Makefile index de95af6..adf7f91 100644 --- a/gnu/usr.bin/texinfo/info/Makefile +++ b/gnu/usr.bin/texinfo/info/Makefile @@ -13,8 +13,6 @@ CFLAGS+= -DINFODIR=\"${INFODIR}:/usr/local/info:.\" DPADD= ${LIBTERMCAPW} ${LIBTXI} LDADD= -ltermcapw ${LIBTXI} -NO_PIE= yes - .include <bsd.prog.mk> .PATH: ${TXIDIR}/info ${TXIDIR}/doc diff --git a/gnu/usr.bin/texinfo/infokey/Makefile b/gnu/usr.bin/texinfo/infokey/Makefile index d42406f..50be00d 100644 --- a/gnu/usr.bin/texinfo/infokey/Makefile +++ b/gnu/usr.bin/texinfo/infokey/Makefile @@ -6,8 +6,6 @@ SRCS= infokey.c key.c DPADD= ${LIBTXI} LDADD= ${LIBTXI} -NO_PIE= yes - .include <bsd.prog.mk> .PATH: ${TXIDIR}/info ${TXIDIR}/doc diff --git a/gnu/usr.bin/texinfo/install-info/Makefile b/gnu/usr.bin/texinfo/install-info/Makefile index 21ab9ea..325c909 100644 --- a/gnu/usr.bin/texinfo/install-info/Makefile +++ b/gnu/usr.bin/texinfo/install-info/Makefile @@ -5,8 +5,6 @@ PROG= install-info DPADD= ${LIBTXI} LDADD= ${LIBTXI} -NO_PIE= yes - .include <bsd.prog.mk> .PATH: ${TXIDIR}/util ${TXIDIR}/doc diff --git a/gnu/usr.bin/texinfo/makeinfo/Makefile b/gnu/usr.bin/texinfo/makeinfo/Makefile index 1c3b77d..373c326 100644 --- a/gnu/usr.bin/texinfo/makeinfo/Makefile +++ b/gnu/usr.bin/texinfo/makeinfo/Makefile @@ -8,8 +8,6 @@ SRCS= cmds.c defun.c files.c float.c footnote.c html.c \ DPADD= ${LIBTXI} LDADD= ${LIBTXI} -NO_PIE= yes - .include <bsd.prog.mk> .PATH: $(TXIDIR)/makeinfo $(TXIDIR)/doc diff --git a/gnu/usr.bin/texinfo/texindex/Makefile b/gnu/usr.bin/texinfo/texindex/Makefile index 796d627..91c2dfc 100644 --- a/gnu/usr.bin/texinfo/texindex/Makefile +++ b/gnu/usr.bin/texinfo/texindex/Makefile @@ -5,8 +5,6 @@ PROG= texindex DPADD= ${LIBTXI} LDADD= ${LIBTXI} -NO_PIE= yes - .include <bsd.prog.mk> .PATH: ${TXIDIR}/util ${TXIDIR}/doc diff --git a/include/stddef.h b/include/stddef.h index 2c73a2e..7898da2 100644 --- a/include/stddef.h +++ b/include/stddef.h @@ -38,7 +38,10 @@ #include <sys/_null.h> #include <sys/_types.h> +#ifndef _PTRDIFF_T_DECLARED typedef __ptrdiff_t ptrdiff_t; +#define _PTRDIFF_T_DECLARED +#endif #if __BSD_VISIBLE #ifndef _RUNE_T_DECLARED diff --git a/kerberos5/libexec/digest-service/Makefile b/kerberos5/libexec/digest-service/Makefile index bc55a1a..0c45c37 100644 --- a/kerberos5/libexec/digest-service/Makefile +++ b/kerberos5/libexec/digest-service/Makefile @@ -14,8 +14,6 @@ LDADD= -lhdb -lkdc ${LDHEIMIPCS} -lkrb5 -lroken -lasn1 -lcrypto -lcrypt \ ${LIBVERS} -lheimntlm USEPRIVATELIB= heimipcs -NO_PIE= yes - .include <bsd.prog.mk> .PATH: ${KRB5DIR}/kdc diff --git a/kerberos5/libexec/hprop/Makefile b/kerberos5/libexec/hprop/Makefile index 95b4739..ac1dffa 100644 --- a/kerberos5/libexec/hprop/Makefile +++ b/kerberos5/libexec/hprop/Makefile @@ -16,8 +16,6 @@ LDADD= -lhdb -lkrb5 -lhx509 -lroken ${LIBVERS} \ -lasn1 -lcrypto -lcrypt -lcom_err ${LDAPLDADD} LDFLAGS=${LDAPLDFLAGS} -NO_PIE= yes - .include <bsd.prog.mk> .PATH: ${KRB5DIR}/kdc diff --git a/kerberos5/libexec/hpropd/Makefile b/kerberos5/libexec/hpropd/Makefile index 31a5895..e0722bd 100644 --- a/kerberos5/libexec/hpropd/Makefile +++ b/kerberos5/libexec/hpropd/Makefile @@ -10,8 +10,6 @@ LDADD= -lhdb -lkrb5 -lhx509 -lroken ${LIBVERS} \ -lasn1 -lcrypto -lcrypt -lcom_err ${LDAPLDADD} LDFLAGS=${LDAPLDFLAGS} -NO_PIE= yes - .include <bsd.prog.mk> .PATH: ${KRB5DIR}/kdc diff --git a/kerberos5/libexec/ipropd-master/Makefile b/kerberos5/libexec/ipropd-master/Makefile index 8dbe315..99a4f9c 100644 --- a/kerberos5/libexec/ipropd-master/Makefile +++ b/kerberos5/libexec/ipropd-master/Makefile @@ -11,8 +11,6 @@ LDADD= -lkadm5srv -lhdb -lkrb5 -lhx509 -lroken ${LIBVERS} \ -lasn1 -lcrypto -lcrypt -lcom_err ${LDAPLDADD} LDFLAGS=${LDAPLDFLAGS} -NO_PIE= yes - foo:: echo ${LIBHX509} diff --git a/kerberos5/libexec/ipropd-slave/Makefile b/kerberos5/libexec/ipropd-slave/Makefile index 4aa1f27..8a72d9e 100644 --- a/kerberos5/libexec/ipropd-slave/Makefile +++ b/kerberos5/libexec/ipropd-slave/Makefile @@ -11,8 +11,6 @@ LDADD= -lkadm5srv -lhdb -lkrb5 -lhx509 -lroken ${LIBVERS} \ -lasn1 -lcrypto -lcrypt -lcom_err ${LDAPLDADD} LDFLAGS=${LDAPLDFLAGS} -NO_PIE= yes - .include <bsd.prog.mk> .PATH: ${KRB5DIR}/lib/kadm5 diff --git a/kerberos5/libexec/kadmind/Makefile b/kerberos5/libexec/kadmind/Makefile index 898e429..f88ac2f 100644 --- a/kerberos5/libexec/kadmind/Makefile +++ b/kerberos5/libexec/kadmind/Makefile @@ -15,8 +15,6 @@ LDADD= -lkadm5srv -lgssapi -lhdb -lkrb5 -lroken \ -lasn1 ${LIBVERS} -lcrypto -lcrypt ${LDAPLDADD} LDFLAGS=${LDAPLDFLAGS} -NO_PIE= yes - .include <bsd.prog.mk> .PATH: ${KRB5DIR}/kadmin diff --git a/kerberos5/libexec/kcm/Makefile b/kerberos5/libexec/kcm/Makefile index 8daf958..c0e1544 100644 --- a/kerberos5/libexec/kcm/Makefile +++ b/kerberos5/libexec/kcm/Makefile @@ -26,8 +26,6 @@ LDADD= -lhdb -lkrb5 -lroken -lasn1 -lheimntlm ${LDHEIMIPCS} \ USEPRIVATELIB= heimipcs LDFLAGS=${LDAPLDFLAGS} -NO_PIE= yes - .include <bsd.prog.mk> .PATH: ${KRB5DIR}/kcm diff --git a/kerberos5/libexec/kdc/Makefile b/kerberos5/libexec/kdc/Makefile index b309a25..4ca5c3a 100644 --- a/kerberos5/libexec/kdc/Makefile +++ b/kerberos5/libexec/kdc/Makefile @@ -14,8 +14,6 @@ DPADD= ${LIBKDC} ${LIBHDB} ${LIBKRB5} ${LIBROKEN} ${LIBASN1} \ ${LIBCRYPTO} ${LIBCRYPT} ${LIBVERS} LDADD= -lkdc -lhdb -lkrb5 -lroken -lasn1 -lcrypto -lcrypt ${LIBVERS} -NO_PIE= yes - .include <bsd.prog.mk> .PATH: ${KRB5DIR}/kdc diff --git a/kerberos5/libexec/kdigest/Makefile b/kerberos5/libexec/kdigest/Makefile index 03f1ddf..c88e3b9 100644 --- a/kerberos5/libexec/kdigest/Makefile +++ b/kerberos5/libexec/kdigest/Makefile @@ -13,8 +13,6 @@ SRCS= kdigest.c \ kdigest-commands.c \ kdigest-commands.h -NO_PIE= yes - kdigest-commands.h: kdigest-commands.in ${SLC} ${.ALLSRC:M*.in} diff --git a/kerberos5/libexec/kfd/Makefile b/kerberos5/libexec/kfd/Makefile index 130cd45..f5081f1 100644 --- a/kerberos5/libexec/kfd/Makefile +++ b/kerberos5/libexec/kfd/Makefile @@ -9,8 +9,6 @@ DPADD= ${LIBKRB5} ${LIBROKEN} ${LIBASN1} ${LIBCRYPTO} \ LDADD= -lkrb5 -lroken -lasn1 -lcrypto -lcrypt \ ${LIBVERS} -NO_PIE= yes - .include <bsd.prog.mk> .PATH: ${KRB5DIR}/appl/kf diff --git a/kerberos5/libexec/kimpersonate/Makefile b/kerberos5/libexec/kimpersonate/Makefile index 2dfeecb..32f9777 100644 --- a/kerberos5/libexec/kimpersonate/Makefile +++ b/kerberos5/libexec/kimpersonate/Makefile @@ -11,8 +11,6 @@ DPADD= ${LIBKAFS5} ${LIBKRB5} ${LIBHEIMNTLM} ${LIBROKEN} ${LIBASN1} ${LIBCRYPTO} LDADD= -lkafs5 -lkrb5 -lheimntlm -lroken -lasn1 -lcrypto -lcrypt \ ${LIBVERS} -NO_PIE= yes - .include <bsd.prog.mk> .PATH: ${KRB5DIR}/kuser diff --git a/kerberos5/libexec/kpasswdd/Makefile b/kerberos5/libexec/kpasswdd/Makefile index 4d3914c..2287686 100644 --- a/kerberos5/libexec/kpasswdd/Makefile +++ b/kerberos5/libexec/kpasswdd/Makefile @@ -9,8 +9,6 @@ LDADD= -lkadm5srv -lhdb -lkrb5 -lhx509 -lroken ${LIBVERS} \ -lasn1 -lcrypto -lcrypt -lcom_err ${LDAPLDADD} LDFLAGS=${LDAPLDFLAGS} -NO_PIE= yes - .include <bsd.prog.mk> .PATH: ${KRB5DIR}/kpasswd diff --git a/kerberos5/tools/asn1_compile/Makefile b/kerberos5/tools/asn1_compile/Makefile index 45b04e1..88224da 100644 --- a/kerberos5/tools/asn1_compile/Makefile +++ b/kerberos5/tools/asn1_compile/Makefile @@ -27,8 +27,6 @@ CFLAGS+=-I${KRB5DIR}/lib/roken -I${KRB5DIR}/lib/asn1 -I. CLEANFILES= roken.h lex.c parse.c -NO_PIE= yes - roken.h: make-roken > ${.TARGET} diff --git a/kerberos5/tools/slc/Makefile b/kerberos5/tools/slc/Makefile index ee98843..1a26e7c 100644 --- a/kerberos5/tools/slc/Makefile +++ b/kerberos5/tools/slc/Makefile @@ -14,8 +14,6 @@ CFLAGS+=-I${KRB5DIR}/lib/roken -I${KRB5DIR}/lib/sl -I${KRB5DIR}/lib/vers -I. CLEANFILES= roken.h slc-gram.c slc-lex.c -NO_PIE= yes - roken.h: ${MAKE_ROKEN} > ${.TARGET} diff --git a/kerberos5/usr.bin/hxtool/Makefile b/kerberos5/usr.bin/hxtool/Makefile index a51dd7d..3946484 100644 --- a/kerberos5/usr.bin/hxtool/Makefile +++ b/kerberos5/usr.bin/hxtool/Makefile @@ -10,8 +10,6 @@ DPADD= ${LIBHX509} ${LIBROKEN} ${LIBASN1} ${LIBCRYPTO} ${LIBCRYPT} ${LIBSL} ${LI LDADD= -lhx509 -lroken -lasn1 -lcrypto -lcrypt ${LIBSL} ${LIBVERS} -ledit SRCS= hxtool.c hxtool-commands.c hxtool-commands.h -NO_PIE= yes - hxtool-commands.h: hxtool-commands.in ${SLC} ${.ALLSRC:M*.in} diff --git a/kerberos5/usr.bin/kadmin/Makefile b/kerberos5/usr.bin/kadmin/Makefile index b01d789..8ea3efc 100644 --- a/kerberos5/usr.bin/kadmin/Makefile +++ b/kerberos5/usr.bin/kadmin/Makefile @@ -36,8 +36,6 @@ LDADD= -lkadm5clnt -lkadm5srv -lhdb -lkrb5 -lhx509 \ -ledit -lncursesw ${LDAPLDADD} LDFLAGS=${LDAPLDFLAGS} -NO_PIE= yes - .include <bsd.prog.mk> kadmin-commands.h: ${KRB5DIR}/kadmin/kadmin-commands.in diff --git a/kerberos5/usr.bin/kcc/Makefile b/kerberos5/usr.bin/kcc/Makefile index 16487a2..3da43d7 100644 --- a/kerberos5/usr.bin/kcc/Makefile +++ b/kerberos5/usr.bin/kcc/Makefile @@ -19,8 +19,6 @@ SRCS= kcc.c \ kswitch.c \ copy_cred_cache.c -NO_PIE= yes - kcc-commands.h: kcc-commands.in ${SLC} ${.ALLSRC:M*.in} diff --git a/kerberos5/usr.bin/kdestroy/Makefile b/kerberos5/usr.bin/kdestroy/Makefile index 6ec3e9b..b3946e4 100644 --- a/kerberos5/usr.bin/kdestroy/Makefile +++ b/kerberos5/usr.bin/kdestroy/Makefile @@ -8,8 +8,6 @@ LDADD= -lkafs5 -lkrb5 -lheimntlm -lroken ${LIBVERS} \ -lasn1 -lcrypto -lcrypt MAN= kdestroy.1 -NO_PIE= yes - .include <bsd.prog.mk> .PATH: ${KRB5DIR}/kuser diff --git a/kerberos5/usr.bin/kf/Makefile b/kerberos5/usr.bin/kf/Makefile index 0244700..c9d3fce 100644 --- a/kerberos5/usr.bin/kf/Makefile +++ b/kerberos5/usr.bin/kf/Makefile @@ -9,8 +9,6 @@ DPADD= ${LIBKRB5} ${LIBROKEN} ${LIBASN1} ${LIBCRYPTO} \ LDADD= -lkrb5 -lroken -lasn1 -lcrypto -lcrypt \ ${LIBVERS} -NO_PIE= yes - .include <bsd.prog.mk> .PATH: ${KRB5DIR}/appl/kf diff --git a/kerberos5/usr.bin/kgetcred/Makefile b/kerberos5/usr.bin/kgetcred/Makefile index d6ca2fc..dac38ad 100644 --- a/kerberos5/usr.bin/kgetcred/Makefile +++ b/kerberos5/usr.bin/kgetcred/Makefile @@ -6,8 +6,6 @@ CFLAGS+= -I${KRB5DIR}/lib/asn1 \ DPADD= ${LIBKRB5} ${LIBROKEN} ${LIBASN1} ${LIBCRYPTO} ${LIBCRYPT} ${LIBVERS} LDADD= -lkrb5 -lroken -lasn1 -lcrypto -lcrypt ${LIBVERS} -NO_PIE= yes - .include <bsd.prog.mk> .PATH: ${KRB5DIR}/kuser diff --git a/kerberos5/usr.bin/kinit/Makefile b/kerberos5/usr.bin/kinit/Makefile index cefadf3..e0229f9 100644 --- a/kerberos5/usr.bin/kinit/Makefile +++ b/kerberos5/usr.bin/kinit/Makefile @@ -7,8 +7,6 @@ DPADD= ${LIBKAFS5} ${LIBKRB5} ${LIBHEIMNTLM} ${LIBROKEN} ${LIBVERS} \ LDADD= -lkafs5 -lkrb5 -lheimntlm -lroken ${LIBVERS} \ -lasn1 -lcrypto -lcrypt -lcom_err -NO_PIE= yes - .include <bsd.prog.mk> .PATH: ${KRB5DIR}/kuser diff --git a/kerberos5/usr.bin/kpasswd/Makefile b/kerberos5/usr.bin/kpasswd/Makefile index 2663892..a9ab1c9 100644 --- a/kerberos5/usr.bin/kpasswd/Makefile +++ b/kerberos5/usr.bin/kpasswd/Makefile @@ -7,8 +7,6 @@ DPADD= ${LIBKRB5} ${LIBHX509} ${LIBROKEN} ${LIBVERS} \ LDADD= -lkrb5 -lhx509 -lroken ${LIBVERS} \ -lasn1 -lcrypto -lcrypt -lcom_err -NO_PIE= yes - .include <bsd.prog.mk> .PATH: ${KRB5DIR}/kpasswd diff --git a/kerberos5/usr.bin/ksu/Makefile b/kerberos5/usr.bin/ksu/Makefile index 3f4ba31..9e27865 100644 --- a/kerberos5/usr.bin/ksu/Makefile +++ b/kerberos5/usr.bin/ksu/Makefile @@ -13,8 +13,6 @@ DPADD= ${LIBKAFS5} ${LIBKRB5} ${LIBHX509} ${LIBROKEN} ${LIBVERS} \ LDADD= -lkafs5 -lkrb5 -lhx509 -lroken ${LIBVERS} \ -lasn1 -lcrypto -lcrypt -lcom_err -NO_PIE= yes - .include <bsd.prog.mk> .PATH: ${KRB5DIR}/appl/su diff --git a/kerberos5/usr.bin/string2key/Makefile b/kerberos5/usr.bin/string2key/Makefile index 32797f3..fc790e2 100644 --- a/kerberos5/usr.bin/string2key/Makefile +++ b/kerberos5/usr.bin/string2key/Makefile @@ -11,8 +11,6 @@ DPADD= ${LIBHDB} ${LIBKRB5} ${LIBROKEN} ${LIBASN1} ${LIBCRYPTO} \ ${LIBCRYPT} ${LIBVERS} LDADD= -lhdb -lkrb5 -lroken -lasn1 -lcrypto -lcrypt ${LIBVERS} -NO_PIE= yes - .include <bsd.prog.mk> .PATH: ${KRB5DIR}/kdc diff --git a/kerberos5/usr.bin/verify_krb5_conf/Makefile b/kerberos5/usr.bin/verify_krb5_conf/Makefile index 9968dd6..830e66a 100644 --- a/kerberos5/usr.bin/verify_krb5_conf/Makefile +++ b/kerberos5/usr.bin/verify_krb5_conf/Makefile @@ -8,8 +8,6 @@ DPADD= ${LIBKAFS5} ${LIBKRB5} ${LIBHX509} ${LIBROKEN} ${LIBVERS} \ LDADD= -lkafs5 -lkrb5 -lhx509 -lroken ${LIBVERS} \ -lasn1 -lcrypto -lcrypt -lcom_err -NO_PIE= yes - .include <bsd.prog.mk> .PATH: ${KRB5DIR}/lib/krb5 diff --git a/kerberos5/usr.sbin/iprop-log/Makefile b/kerberos5/usr.sbin/iprop-log/Makefile index a5cb4f5..176012a 100644 --- a/kerberos5/usr.sbin/iprop-log/Makefile +++ b/kerberos5/usr.sbin/iprop-log/Makefile @@ -13,8 +13,6 @@ DPADD= ${LIBKADM5SRV} ${LIBHDB} ${LIBKRB5} ${LIBASN1} ${LIBCRYPTO} \ LDADD= -lkadm5srv -lhdb -lkrb5 -lasn1 -lcrypto -lcrypt ${LIBSL} -lroken \ ${LIBVERS} -ledit -NO_PIE= yes - iprop-commands.h: iprop-commands.in ${SLC} ${.ALLSRC:M*.in} diff --git a/kerberos5/usr.sbin/kstash/Makefile b/kerberos5/usr.sbin/kstash/Makefile index 9fc8101..024e45d 100644 --- a/kerberos5/usr.sbin/kstash/Makefile +++ b/kerberos5/usr.sbin/kstash/Makefile @@ -10,8 +10,6 @@ LDADD= -lhdb -lkrb5 -lroken ${LIBVERS} \ -lasn1 -lcrypto -lcrypt ${LDAPLDADD} LDFLAGS=${LDAPLDFLAGS} -NO_PIE= yes - .include <bsd.prog.mk> .PATH: ${KRB5DIR}/kdc diff --git a/kerberos5/usr.sbin/ktutil/Makefile b/kerberos5/usr.sbin/ktutil/Makefile index 3445fc6..f7d340f 100644 --- a/kerberos5/usr.sbin/ktutil/Makefile +++ b/kerberos5/usr.sbin/ktutil/Makefile @@ -22,8 +22,6 @@ DPADD= ${LIBKADM5CLNT} ${LIBKRB5} ${LIBSL} ${LIBROKEN} ${LIBVERS} \ LDADD= -lkadm5clnt -lkrb5 ${LIBSL} -lroken ${LIBVERS} \ -lasn1 -lcrypto -lcrypt -ledit -NO_PIE= yes - .include <bsd.prog.mk> ktutil-commands.h: ${KRB5DIR}/admin/ktutil-commands.in diff --git a/lib/atf/libatf-c++/Makefile b/lib/atf/libatf-c++/Makefile index 163f7fb..a7a8d91 100644 --- a/lib/atf/libatf-c++/Makefile +++ b/lib/atf/libatf-c++/Makefile @@ -33,7 +33,7 @@ PRIVATELIB= true SHLIB_MAJOR= 1 # libatf-c++ depends on the C version of the ATF library to build. -DPADD= ${LIBATFC} +DPADD= ${LIBATF_C} LDADD= -latf-c LDFLAGS+= -L${.OBJDIR}/../libatf-c diff --git a/lib/clang/clang.build.mk b/lib/clang/clang.build.mk index 5465272..3b30fe7 100644 --- a/lib/clang/clang.build.mk +++ b/lib/clang/clang.build.mk @@ -237,5 +237,5 @@ Checkers.inc.h: ${CLANG_SRCS}/lib/StaticAnalyzer/Checkers/Checkers.td .endfor SRCS+= ${TGHDRS:C/$/.inc.h/} -DPADD+= ${TGHDRS:C/$/.inc.h/} +DPSRCS+= ${TGHDRS:C/$/.inc.h/} CLEANFILES+= ${TGHDRS:C/$/.inc.h/} ${TGHDRS:C/$/.inc.d/} diff --git a/lib/clang/include/clang/Config/config.h b/lib/clang/include/clang/Config/config.h index 8a7936b..5c35829 100644 --- a/lib/clang/include/clang/Config/config.h +++ b/lib/clang/include/clang/Config/config.h @@ -6,7 +6,7 @@ #define CONFIG_H /* Bug report URL. */ -#define BUG_REPORT_URL "http://llvm.org/bugs/" +#define BUG_REPORT_URL "https://bugs.freebsd.org/submit/" /* Relative directory for resource files */ #define CLANG_RESOURCE_DIR "" diff --git a/lib/clang/include/llvm/Config/config.h b/lib/clang/include/llvm/Config/config.h index cbbb4fb..ce32c50 100644 --- a/lib/clang/include/llvm/Config/config.h +++ b/lib/clang/include/llvm/Config/config.h @@ -9,7 +9,7 @@ #include <osreldate.h> /* Bug report URL. */ -#define BUG_REPORT_URL "http://llvm.org/bugs/" +#define BUG_REPORT_URL "https://bugs.freebsd.org/submit/" /* Define if we have libxml2 */ /* #undef CLANG_HAVE_LIBXML */ diff --git a/lib/csu/amd64/Makefile b/lib/csu/amd64/Makefile index bcb7f50..80d14a7 100644 --- a/lib/csu/amd64/Makefile +++ b/lib/csu/amd64/Makefile @@ -9,8 +9,6 @@ CFLAGS+= -I${.CURDIR}/../common \ -I${.CURDIR}/../../libc/include CFLAGS+= -fno-omit-frame-pointer -NO_PIE= yes - all: ${OBJS} CLEANFILES= ${OBJS} diff --git a/lib/csu/i386-elf/Makefile b/lib/csu/i386-elf/Makefile index 8a685dc..57f4f05 100644 --- a/lib/csu/i386-elf/Makefile +++ b/lib/csu/i386-elf/Makefile @@ -3,17 +3,15 @@ .PATH: ${.CURDIR}/../common SRCS= crti.S crtn.S -FILES= ${SRCS:N*.h:R:S/$/.o/g} gcrt1.o crt1.o Scrt1.o -FILESOWN= ${LIBOWN} -FILESGRP= ${LIBGRP} -FILESMODE= ${LIBMODE} -FILESDIR= ${LIBDIR} +OBJS= ${SRCS:N*.h:R:S/$/.o/g} +OBJS+= gcrt1.o crt1.o Scrt1.o CFLAGS+= -I${.CURDIR}/../common \ -I${.CURDIR}/../../libc/include -CLEANFILES= ${FILES} crt1_c.o crt1_s.o gcrt1_c.o Scrt1_c.o -CLEANFILES+= crt1_c.s gcrt1_c.s Scrt1_c.s -NO_PIE= yes +all: ${OBJS} + +CLEANFILES= ${OBJS} crt1_c.o crt1_s.o gcrt1_c.o Scrt1_c.o +CLEANFILES+= crt1_c.s gcrt1_c.s Scrt1_c.s # See the comment in lib/csu/common/crtbrand.c for the reason crt1_c.c is not # directly compiled to .o files. @@ -50,4 +48,8 @@ Scrt1.o: Scrt1_c.o crt1_s.o ${LD} ${_LDFLAGS} -o Scrt1.o -r crt1_s.o Scrt1_c.o objcopy --localize-symbol _start1 Scrt1.o -.include <bsd.prog.mk> +realinstall: + ${INSTALL} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ + ${OBJS} ${DESTDIR}${LIBDIR} + +.include <bsd.lib.mk> diff --git a/lib/libc/arm/aeabi/aeabi_vfp.h b/lib/libc/arm/aeabi/aeabi_vfp.h index 76c2ff0..927652f 100644 --- a/lib/libc/arm/aeabi/aeabi_vfp.h +++ b/lib/libc/arm/aeabi/aeabi_vfp.h @@ -30,6 +30,8 @@ #ifndef AEABI_VFP_H #define AEABI_VFP_H +#include <machine/acle-compat.h> + /* * ASM helper macros. These allow the functions to be changed depending on * the endian-ness we are building for. @@ -49,7 +51,7 @@ * point falue. They will load the data from an ARM to a VFP register(s), * or from a VFP to an ARM register */ -#ifdef __ARMEB__ +#ifdef __ARM_BIG_ENDIAN #define LOAD_DREG(vreg, reg0, reg1) vmov vreg, reg1, reg0 #define UNLOAD_DREG(reg0, reg1, vreg) vmov reg1, reg0, vreg #else @@ -65,7 +67,7 @@ * C Helper macros */ -#if defined(__FreeBSD_ARCH_armv6__) || (defined(__ARM_ARCH) && __ARM_ARCH >= 6) +#if __ARM_ARCH >= 6 /* * Generate a function that will either call into the VFP implementation, * or the soft float version for a given __aeabi_* helper. The function diff --git a/lib/libc/nameser/ns_print.c b/lib/libc/nameser/ns_print.c index c6dee14..27d6538 100644 --- a/lib/libc/nameser/ns_print.c +++ b/lib/libc/nameser/ns_print.c @@ -911,6 +911,7 @@ ns_sprintrrf(const u_char *msg, size_t msglen, if (len > 15) T(addstr(" )", 2, &buf, &buflen)); } + break; } case ns_t_ipseckey: { diff --git a/lib/libc/net/sctp_sys_calls.c b/lib/libc/net/sctp_sys_calls.c index 6a57061..91527c3 100644 --- a/lib/libc/net/sctp_sys_calls.c +++ b/lib/libc/net/sctp_sys_calls.c @@ -377,6 +377,12 @@ sctp_opt_info(int sd, sctp_assoc_t id, int opt, void *arg, socklen_t * size) case SCTP_ENABLE_STREAM_RESET: ((struct sctp_assoc_value *)arg)->assoc_id = id; break; + case SCTP_PR_STREAM_STATUS: + ((struct sctp_prstatus *)arg)->sprstat_assoc_id = id; + break; + case SCTP_PR_ASSOC_STATUS: + ((struct sctp_prstatus *)arg)->sprstat_assoc_id = id; + break; default: break; } diff --git a/lib/libcrypt/tests/Makefile b/lib/libcrypt/tests/Makefile index 2a0f1fb..20993e2 100644 --- a/lib/libcrypt/tests/Makefile +++ b/lib/libcrypt/tests/Makefile @@ -7,6 +7,7 @@ TESTSDIR= ${TESTSBASE}/lib/libcrypt ATF_TESTS_C= crypt_tests CFLAGS+= -I${.CURDIR:H} -LDADD+= -L${.OBJDIR:H} -lcrypt +DPADD+= ${LIBCRYPT} +LDADD+= -lcrypt .include <bsd.test.mk> diff --git a/lib/libcuse/Makefile b/lib/libcuse/Makefile index 6269cbe..2d1ded5 100644 --- a/lib/libcuse/Makefile +++ b/lib/libcuse/Makefile @@ -36,6 +36,7 @@ CFLAGS+= -D_GNU_SOURCE CFLAGS+= -g CFLAGS+= -DHAVE_DEBUG .endif +DPADD+= ${LIBPTHREAD} LDADD+= ${PTHREAD_LIBS} MLINKS= diff --git a/lib/libopie/Makefile b/lib/libopie/Makefile index 647bfee..e47e16d 100644 --- a/lib/libopie/Makefile +++ b/lib/libopie/Makefile @@ -4,7 +4,7 @@ # OPIE_DIST?= ${.CURDIR}/../../contrib/opie DIST_DIR= ${OPIE_DIST}/${.CURDIR:T} -SHLIB_MAJOR= 7 +SHLIB_MAJOR= 8 KEYFILE?= \"/etc/opiekeys\" diff --git a/lib/libusb/libusb.h b/lib/libusb/libusb.h index e490f24..7f8634f 100644 --- a/lib/libusb/libusb.h +++ b/lib/libusb/libusb.h @@ -51,10 +51,18 @@ enum libusb_class_code { LIBUSB_CLASS_COMM = 2, LIBUSB_CLASS_HID = 3, LIBUSB_CLASS_PTP = 6, + LIBUSB_CLASS_IMAGE = 6, LIBUSB_CLASS_PRINTER = 7, LIBUSB_CLASS_MASS_STORAGE = 8, LIBUSB_CLASS_HUB = 9, LIBUSB_CLASS_DATA = 10, + LIBUSB_CLASS_SMART_CARD = 11, + LIBUSB_CLASS_CONTENT_SECURITY = 13, + LIBUSB_CLASS_VIDEO = 14, + LIBUSB_CLASS_PERSONAL_HEALTHCARE = 15, + LIBUSB_CLASS_DIAGNOSTIC_DEVICE = 0xdc, + LIBUSB_CLASS_WIRELESS = 0xe0, + LIBUSB_CLASS_APPLICATION = 0xfe, LIBUSB_CLASS_VENDOR_SPEC = 0xff, }; diff --git a/lib/msun/arm/fenv.c b/lib/msun/arm/fenv.c index 2dd1933..16f1f48 100644 --- a/lib/msun/arm/fenv.c +++ b/lib/msun/arm/fenv.c @@ -30,7 +30,9 @@ #define __fenv_static #include "fenv.h" -#if defined(__FreeBSD_ARCH_armv6__) || (defined(__ARM_ARCH) && __ARM_ARCH >= 6) +#include <machine/acle-compat.h> + +#if __ARM_ARCH >= 6 #define FENV_ARMv6 #endif diff --git a/libexec/getty/main.c b/libexec/getty/main.c index c9d2093..94ecb07 100644 --- a/libexec/getty/main.c +++ b/libexec/getty/main.c @@ -187,7 +187,7 @@ main(int argc, char *argv[]) signal(SIGINT, SIG_IGN); signal(SIGQUIT, SIG_IGN); - openlog("getty", LOG_ODELAY|LOG_CONS|LOG_PID, LOG_AUTH); + openlog("getty", LOG_CONS|LOG_PID, LOG_AUTH); gethostname(hostname, sizeof(hostname) - 1); hostname[sizeof(hostname) - 1] = '\0'; if (hostname[0] == '\0') diff --git a/libexec/mail.local/Makefile b/libexec/mail.local/Makefile index dff4238..3e59609 100644 --- a/libexec/mail.local/Makefile +++ b/libexec/mail.local/Makefile @@ -9,8 +9,6 @@ SRCS= mail.local.c MAN= mail.local.8 CFLAGS+=-I${SENDMAIL_DIR}/include -I. -NO_PIE= yes - WARNS?= 2 WFORMAT=0 diff --git a/libexec/rshd/rshd.c b/libexec/rshd/rshd.c index 7cdacae..b315040 100644 --- a/libexec/rshd/rshd.c +++ b/libexec/rshd/rshd.c @@ -127,7 +127,7 @@ main(int argc, char *argv[]) int ch, on = 1; struct sockaddr_storage from; - openlog("rshd", LOG_PID | LOG_ODELAY, LOG_DAEMON); + openlog("rshd", LOG_PID, LOG_DAEMON); opterr = 0; while ((ch = getopt(argc, argv, OPTIONS)) != -1) diff --git a/libexec/rtld-elf/Makefile b/libexec/rtld-elf/Makefile index 48e86f7..6e35d47 100644 --- a/libexec/rtld-elf/Makefile +++ b/libexec/rtld-elf/Makefile @@ -78,8 +78,6 @@ beforeinstall: .PATH: ${.CURDIR}/${RTLD_ARCH} -NO_PIE= yes - .if ${MK_TESTS} != "no" SUBDIR+= tests .endif diff --git a/libexec/rtld-elf/libmap.c b/libexec/rtld-elf/libmap.c index 8b5faf8..691ad52 100644 --- a/libexec/rtld-elf/libmap.c +++ b/libexec/rtld-elf/libmap.c @@ -216,14 +216,14 @@ lmc_parse(char *lm_p, size_t lm_len) p = NULL; while (cnt < lm_len) { i = 0; - while (lm_p[cnt] != '\n' && cnt < lm_len && + while (cnt < lm_len && lm_p[cnt] != '\n' && i < sizeof(line) - 1) { line[i] = lm_p[cnt]; cnt++; i++; } line[i] = '\0'; - while (lm_p[cnt] != '\n' && cnt < lm_len) + while (cnt < lm_len && lm_p[cnt] != '\n') cnt++; /* skip over nl */ cnt++; diff --git a/libexec/smrsh/Makefile b/libexec/smrsh/Makefile index 9f0bfd4..ae86155 100644 --- a/libexec/smrsh/Makefile +++ b/libexec/smrsh/Makefile @@ -9,8 +9,6 @@ SRCS= smrsh.c MAN= smrsh.8 CFLAGS+=-I${SENDMAIL_DIR}/src -I${SENDMAIL_DIR}/include -I. -NO_PIE= yes - LIBSMDIR= ${.OBJDIR}/../../lib/libsm LIBSM= ${LIBSMDIR}/libsm.a diff --git a/libexec/telnetd/Makefile b/libexec/telnetd/Makefile index f80bf5c..690b03c 100644 --- a/libexec/telnetd/Makefile +++ b/libexec/telnetd/Makefile @@ -20,8 +20,6 @@ WFORMAT?= 0 CFLAGS+= -DLINEMODE -DUSE_TERMIO -DDIAGNOSTICS -DOLD_ENVIRON \ -DENV_HACK -DSTREAMSPTY -NO_PIE= yes - .if ${MK_INET6_SUPPORT} != "no" CFLAGS+= -DINET6 .endif diff --git a/rescue/rescue/Makefile b/rescue/rescue/Makefile index a16d7f2..e991fbb 100644 --- a/rescue/rescue/Makefile +++ b/rescue/rescue/Makefile @@ -113,6 +113,7 @@ CRUNCH_PROGS_sbin+= ipf .if ${MK_ZFS} != "no" CRUNCH_PROGS_sbin+= zfs CRUNCH_PROGS_sbin+= zpool +CRUNCH_PROGS_usr.sbin+= zdb .endif # crunchgen does not like C++ programs; this should be fixed someday @@ -120,7 +121,7 @@ CRUNCH_PROGS_sbin+= zpool CRUNCH_LIBS+= -lalias -lcam -lncursesw -ldevstat -lipsec .if ${MK_ZFS} != "no" -CRUNCH_LIBS+= -lavl -lzfs_core -lzfs -lnvpair -lpthread -luutil -lumem +CRUNCH_LIBS+= -lavl -lzpool -lzfs_core -lzfs -lnvpair -lpthread -luutil -lumem .endif CRUNCH_LIBS+= -lgeom -lbsdxml -lkiconv .if ${MK_OPENSSL} == "no" @@ -158,6 +159,7 @@ CRUNCH_SRCDIR_ipf= $(.CURDIR)/../../sbin/ipf/ipf .if ${MK_ZFS} != "no" CRUNCH_SRCDIR_zfs= ${.CURDIR}/../../cddl/sbin/zfs CRUNCH_SRCDIR_zpool= ${.CURDIR}/../../cddl/sbin/zpool +CRUNCH_SRCDIR_zdb= ${.CURDIR}/../../cddl/usr.sbin/zdb .endif CRUNCH_ALIAS_reboot= fastboot halt fasthalt CRUNCH_ALIAS_restore= rrestore @@ -208,7 +210,7 @@ CRUNCH_ALIAS_id= groups whoami # CRUNCH_SRCDIRS+= usr.sbin -CRUNCH_PROGS_usr.sbin= chroot +CRUNCH_PROGS_usr.sbin+= chroot CRUNCH_PROGS_usr.sbin+= chown CRUNCH_ALIAS_chown= chgrp diff --git a/sbin/atm/atmconfig/Makefile b/sbin/atm/atmconfig/Makefile index 34c2989..f3dce26 100644 --- a/sbin/atm/atmconfig/Makefile +++ b/sbin/atm/atmconfig/Makefile @@ -8,29 +8,24 @@ .include <src.opts.mk> PROG= atmconfig -.ifndef RESCUE -SRCS= ${.OBJDIR}/oid.h -.endif -SRCS+= main.c diag.c natm.c -.ifndef RESCUE -SRCS+= atmconfig_device.c -.endif +SRCS= main.c diag.c natm.c MAN= atmconfig.8 # CFLAGS+= -DPATH_HELP='".:/usr/share/doc/atm:/usr/local/share/doc/atm"' CFLAGS+= -I${.OBJDIR} -.ifndef RESCUE -DPADD= ${LIBBSNMP} -LDADD= -lbsnmp +.if !defined(RESCUE) && ${MK_BSNMP} != "no" +CFLAGS+= -DWITH_BSNMP +SRCS+= oid.h atmconfig_device.c +DPADD+= ${LIBBSNMP} +LDADD+= -lbsnmp . if ${MK_DYNAMICROOT} == "no" && ${MK_OPENSSL} != "no" +DPADD+= ${LIBCRYPTO} LDADD+= -lcrypto . endif .endif -.ifndef RESCUE CLEANFILES+= oid.h -.endif # XXX - this is verboten .if ${MACHINE_CPUARCH} == "arm" @@ -43,8 +38,8 @@ FILESDIR= /usr/share/doc/atm SNMP_ATM_DEF= ${.CURDIR}/../../../contrib/ngatm/snmp_atm/atm_tree.def \ ${.CURDIR}/../../../usr.sbin/bsnmpd/modules/snmp_atm/atm_freebsd.def -${.OBJDIR}/oid.h: atm_oid.list ${SNMP_ATM_DEF} +oid.h: atm_oid.list ${SNMP_ATM_DEF} cat ${SNMP_ATM_DEF} | gensnmptree -e `tail -n +2 ${.CURDIR}/atm_oid.list` \ - > ${.OBJDIR}/oid.h + > ${.TARGET} .include <bsd.prog.mk> diff --git a/sbin/atm/atmconfig/main.c b/sbin/atm/atmconfig/main.c index 73e1fac..1374218 100644 --- a/sbin/atm/atmconfig/main.c +++ b/sbin/atm/atmconfig/main.c @@ -38,7 +38,7 @@ __FBSDID("$FreeBSD$"); #include <stdint.h> #include <fnmatch.h> #include <dirent.h> -#ifndef RESCUE +#ifdef WITH_BSNMP #include <bsnmp/asn1.h> #include <bsnmp/snmp.h> #include <bsnmp/snmpclient.h> @@ -444,7 +444,7 @@ help_func(int argc, char *argv[]) exit(1); } -#ifndef RESCUE +#ifdef WITH_BSNMP /* * Parse a server specification * @@ -527,16 +527,16 @@ main(int argc, char *argv[]) int opt, i; const struct cmdtab *match, *cc, *tab; -#ifndef RESCUE +#ifdef WITH_BSNMP snmp_client_init(&snmp_client); snmp_client.trans = SNMP_TRANS_LOC_STREAM; snmp_client_set_host(&snmp_client, PATH_ILMI_SOCK); #endif -#ifdef RESCUE -#define OPTSTR "htv" -#else +#ifdef WITH_BSNMP #define OPTSTR "htvs:" +#else +#define OPTSTR "htv" #endif while ((opt = getopt(argc, argv, OPTSTR)) != -1) @@ -545,7 +545,7 @@ main(int argc, char *argv[]) case 'h': help_func(0, argv); -#ifndef RESCUE +#ifdef WITH_BSNMP case 's': parse_server(optarg); break; @@ -570,7 +570,7 @@ main(int argc, char *argv[]) err(1, NULL); memcpy(main_tab, static_main_tab, sizeof(static_main_tab)); -#ifndef RESCUE +#ifdef WITH_BSNMP /* XXX while this is compiled in */ device_register(); #endif diff --git a/sbin/devd/Makefile b/sbin/devd/Makefile index c53f094..518e5e2 100644 --- a/sbin/devd/Makefile +++ b/sbin/devd/Makefile @@ -1,5 +1,7 @@ # $FreeBSD$ +.include <src.opts.mk> + PROG_CXX=devd SRCS= devd.cc token.l parse.y y.tab.h MAN= devd.8 devd.conf.5 @@ -16,4 +18,8 @@ CFLAGS+=-I. -I${.CURDIR} CLEANFILES= y.output +.if ${MK_TESTS} != "no" +SUBDIR+= tests +.endif + .include <bsd.prog.mk> diff --git a/sbin/devd/devd.8 b/sbin/devd/devd.8 index fa34df2..12a92d9 100644 --- a/sbin/devd/devd.8 +++ b/sbin/devd/devd.8 @@ -25,7 +25,7 @@ .\" .\" $FreeBSD$ .\" -.Dd January 30, 2013 +.Dd August 14, 2014 .Dt DEVD 8 .Os .Sh NAME @@ -55,9 +55,7 @@ If option .Fl f is specified more than once, the last file specified is used. .It Fl l Ar num -Limit concurrent -.Pa /var/run/devd.pipe -connections to +Limit concurrent socket connections to .Ar num . The default connection limit is 10. .It Fl n @@ -130,22 +128,27 @@ wish to hook into the system without modifying the user's other config files. .Pp -All messages that +Since +.Xr devctl 4 +allows only one active reader, .Nm -receives are forwarded to the +multiplexes it, forwarding all events to any number of connected clients. +Clients connect by opening the SOCK_SEQPACKET .Ux domain socket at -.Pa /var/run/devd.pipe . +.Pa /var/run/devd.seqpacket.pipe . .Sh FILES -.Bl -tag -width ".Pa /var/run/devd.pipe" -compact +.Bl -tag -width ".Pa /var/run/devd.seqpacket.pipe" -compact .It Pa /etc/devd.conf The default .Nm configuration file. -.It Pa /var/run/devd.pipe +.It Pa /var/run/devd.seqpacket.pipe The socket used by .Nm to communicate with its clients. +.It Pa /var/run/devd.pipe +A deprecated socket retained for use with old clients. .El .Sh SEE ALSO .Xr devctl 4 , diff --git a/sbin/devd/devd.cc b/sbin/devd/devd.cc index ce2a4f3..c770204 100644 --- a/sbin/devd/devd.cc +++ b/sbin/devd/devd.cc @@ -100,7 +100,8 @@ __FBSDID("$FreeBSD$"); #include "devd.h" /* C compatible definitions */ #include "devd.hh" /* C++ class definitions */ -#define PIPE "/var/run/devd.pipe" +#define STREAMPIPE "/var/run/devd.pipe" +#define SEQPACKETPIPE "/var/run/devd.seqpacket.pipe" #define CF "/etc/devd.conf" #define SYSCTL "hw.bus.devctl_queue" @@ -119,6 +120,11 @@ __FBSDID("$FreeBSD$"); using namespace std; +typedef struct client { + int fd; + int socktype; +} client_t; + extern FILE *yyin; extern int lineno; @@ -822,12 +828,12 @@ process_event(char *buffer) } int -create_socket(const char *name) +create_socket(const char *name, int socktype) { int fd, slen; struct sockaddr_un sun; - if ((fd = socket(PF_LOCAL, SOCK_STREAM, 0)) < 0) + if ((fd = socket(PF_LOCAL, socktype, 0)) < 0) err(1, "socket"); bzero(&sun, sizeof(sun)); sun.sun_family = AF_UNIX; @@ -846,12 +852,13 @@ create_socket(const char *name) unsigned int max_clients = 10; /* Default, can be overriden on cmdline. */ unsigned int num_clients; -list<int> clients; + +list<client_t> clients; void notify_clients(const char *data, int len) { - list<int>::iterator i; + list<client_t>::iterator i; /* * Deliver the data to all clients. Throw clients overboard at the @@ -861,11 +868,17 @@ notify_clients(const char *data, int len) * kernel memory or tie up the limited number of available connections). */ for (i = clients.begin(); i != clients.end(); ) { - if (write(*i, data, len) != len) { + int flags; + if (i->socktype == SOCK_SEQPACKET) + flags = MSG_EOR; + else + flags = 0; + + if (send(i->fd, data, len, flags) != len) { --num_clients; - close(*i); + close(i->fd); i = clients.erase(i); - devdlog(LOG_WARNING, "notify_clients: write() failed; " + devdlog(LOG_WARNING, "notify_clients: send() failed; " "dropping unresponsive client\n"); } else ++i; @@ -877,7 +890,7 @@ check_clients(void) { int s; struct pollfd pfd; - list<int>::iterator i; + list<client_t>::iterator i; /* * Check all existing clients to see if any of them have disappeared. @@ -888,12 +901,12 @@ check_clients(void) */ pfd.events = 0; for (i = clients.begin(); i != clients.end(); ) { - pfd.fd = *i; + pfd.fd = i->fd; s = poll(&pfd, 1, 0); if ((s < 0 && s != EINTR ) || (s > 0 && (pfd.revents & POLLHUP))) { --num_clients; - close(*i); + close(i->fd); i = clients.erase(i); devdlog(LOG_NOTICE, "check_clients: " "dropping disconnected client\n"); @@ -903,9 +916,9 @@ check_clients(void) } void -new_client(int fd) +new_client(int fd, int socktype) { - int s; + client_t s; int sndbuf_size; /* @@ -914,13 +927,14 @@ new_client(int fd) * by sending large buffers full of data we'll never read. */ check_clients(); - s = accept(fd, NULL, NULL); - if (s != -1) { + s.socktype = socktype; + s.fd = accept(fd, NULL, NULL); + if (s.fd != -1) { sndbuf_size = CLIENT_BUFSIZE; - if (setsockopt(s, SOL_SOCKET, SO_SNDBUF, &sndbuf_size, + if (setsockopt(s.fd, SOL_SOCKET, SO_SNDBUF, &sndbuf_size, sizeof(sndbuf_size))) err(1, "setsockopt"); - shutdown(s, SHUT_RD); + shutdown(s.fd, SHUT_RD); clients.push_back(s); ++num_clients; } else @@ -934,7 +948,7 @@ event_loop(void) int fd; char buffer[DEVCTL_MAXBUF]; int once = 0; - int server_fd, max_fd; + int stream_fd, seqpacket_fd, max_fd; int accepting; timeval tv; fd_set fds; @@ -942,9 +956,10 @@ event_loop(void) fd = open(PATH_DEVCTL, O_RDONLY | O_CLOEXEC); if (fd == -1) err(1, "Can't open devctl device %s", PATH_DEVCTL); - server_fd = create_socket(PIPE); + stream_fd = create_socket(STREAMPIPE, SOCK_STREAM); + seqpacket_fd = create_socket(SEQPACKETPIPE, SOCK_SEQPACKET); accepting = 1; - max_fd = max(fd, server_fd) + 1; + max_fd = max(fd, max(stream_fd, seqpacket_fd)) + 1; while (!romeo_must_die) { if (!once && !no_daemon && !daemonize_quick) { // Check to see if we have any events pending. @@ -965,24 +980,28 @@ event_loop(void) } /* * When we've already got the max number of clients, stop - * accepting new connections (don't put server_fd in the set), - * shrink the accept() queue to reject connections quickly, and - * poll the existing clients more often, so that we notice more - * quickly when any of them disappear to free up client slots. + * accepting new connections (don't put the listening sockets in + * the set), shrink the accept() queue to reject connections + * quickly, and poll the existing clients more often, so that we + * notice more quickly when any of them disappear to free up + * client slots. */ FD_ZERO(&fds); FD_SET(fd, &fds); if (num_clients < max_clients) { if (!accepting) { - listen(server_fd, max_clients); + listen(stream_fd, max_clients); + listen(seqpacket_fd, max_clients); accepting = 1; } - FD_SET(server_fd, &fds); + FD_SET(stream_fd, &fds); + FD_SET(seqpacket_fd, &fds); tv.tv_sec = 60; tv.tv_usec = 0; } else { if (accepting) { - listen(server_fd, 0); + listen(stream_fd, 0); + listen(seqpacket_fd, 0); accepting = 0; } tv.tv_sec = 2; @@ -1022,8 +1041,14 @@ event_loop(void) break; } } - if (FD_ISSET(server_fd, &fds)) - new_client(server_fd); + if (FD_ISSET(stream_fd, &fds)) + new_client(stream_fd, SOCK_STREAM); + /* + * Aside from the socket type, both sockets use the same + * protocol, so we can process clients the same way. + */ + if (FD_ISSET(seqpacket_fd, &fds)) + new_client(seqpacket_fd, SOCK_SEQPACKET); } close(fd); } diff --git a/sbin/devd/tests/Makefile b/sbin/devd/tests/Makefile new file mode 100644 index 0000000..ee679ce --- /dev/null +++ b/sbin/devd/tests/Makefile @@ -0,0 +1,12 @@ +# $FreeBSD$ + +TESTSDIR= ${TESTSBASE}/sbin/devd + +ATF_TESTS_C= client_test +TEST_METADATA.client_test= required_programs="devd" +TEST_METADATA.client_test+= required_user="root" +TEST_METADATA.client_test+= timeout=15 + +WARNS?= 5 + +.include <bsd.test.mk> diff --git a/sbin/devd/tests/client_test.c b/sbin/devd/tests/client_test.c new file mode 100644 index 0000000..dda9a89 --- /dev/null +++ b/sbin/devd/tests/client_test.c @@ -0,0 +1,198 @@ +/*- + * Copyright (c) 2014 Spectra Logic Corporation. All rights reserved. + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + +#include <stdbool.h> +#include <stdio.h> + +#include <sys/param.h> +#include <sys/types.h> +#include <sys/socket.h> +#include <sys/un.h> + +#include <atf-c.h> +/* Helper functions*/ + +/* + * Create two devd events. The easiest way I know of, that requires no special + * hardware, is to create md(4) devices. + */ +static void +create_two_events(void) +{ + FILE *create_stdout; + FILE *destroy_stdout; + char mdname[80]; + char destroy_cmd[80]; + char *error; + + create_stdout = popen("mdconfig -a -s 64 -t null", "r"); + ATF_REQUIRE(create_stdout != NULL); + error = fgets(mdname, sizeof(mdname), create_stdout); + ATF_REQUIRE(error != NULL); + /* We only expect one line of output */ + ATF_REQUIRE_EQ(0, pclose(create_stdout)); + + snprintf(destroy_cmd, nitems(destroy_cmd), "mdconfig -d -u %s", mdname); + destroy_stdout = popen(destroy_cmd, "r"); + ATF_REQUIRE(destroy_stdout != NULL); + /* We expect no output */ + ATF_REQUIRE_EQ(0, pclose(destroy_stdout)); +} + +/* + * Test Cases + */ + +/* + * Open a client connection to devd, create some events, and test that they can + * be read _whole_ and _one_at_a_time_ from the socket + */ +ATF_TC_WITHOUT_HEAD(seqpacket); +ATF_TC_BODY(seqpacket, tc) +{ + int s; + int error; + struct sockaddr_un devd_addr; + bool got_create_event = false; + bool got_destroy_event = false; + const char create_pat[] = + "!system=DEVFS subsystem=CDEV type=CREATE cdev=md"; + const char destroy_pat[] = + "!system=DEVFS subsystem=CDEV type=DESTROY cdev=md"; + + memset(&devd_addr, 0, sizeof(devd_addr)); + devd_addr.sun_family = PF_LOCAL; + strlcpy(devd_addr.sun_path, "/var/run/devd.seqpacket.pipe", + sizeof(devd_addr.sun_path)); + + s = socket(PF_LOCAL, SOCK_SEQPACKET, 0); + ATF_REQUIRE(s >= 0); + error = connect(s, (struct sockaddr*)&devd_addr, SUN_LEN(&devd_addr)); + ATF_REQUIRE_EQ(0, error); + + create_two_events(); + + /* + * Loop until both events are detected on _different_ reads + * There may be extra events due to unrelated system activity + * If we never get both events, then the test will timeout. + */ + while (!(got_create_event && got_destroy_event)) { + int cmp; + ssize_t len; + char event[1024]; + + /* Read 1 less than sizeof(event) to allow space for NULL */ + len = recv(s, event, sizeof(event) - 1, MSG_WAITALL); + ATF_REQUIRE(len != -1); + /* NULL terminate the result */ + event[len] = '\0'; + printf("%s", event); + cmp = strncmp(event, create_pat, sizeof(create_pat) - 1); + if (cmp == 0) + got_create_event = true; + + cmp = strncmp(event, destroy_pat, sizeof(destroy_pat) - 1); + if (cmp == 0) + got_destroy_event = true; + } + + close(s); +} + +/* + * Open a client connection to devd using the stream socket, create some + * events, and test that they can be read in any number of reads. + */ +ATF_TC_WITHOUT_HEAD(stream); +ATF_TC_BODY(stream, tc) +{ + int s; + int error; + struct sockaddr_un devd_addr; + bool got_create_event = false; + bool got_destroy_event = false; + const char create_pat[] = + "!system=DEVFS subsystem=CDEV type=CREATE cdev=md"; + const char destroy_pat[] = + "!system=DEVFS subsystem=CDEV type=DESTROY cdev=md"; + ssize_t len = 0; + + memset(&devd_addr, 0, sizeof(devd_addr)); + devd_addr.sun_family = PF_LOCAL; + strlcpy(devd_addr.sun_path, "/var/run/devd.pipe", + sizeof(devd_addr.sun_path)); + + s = socket(PF_LOCAL, SOCK_STREAM, 0); + ATF_REQUIRE(s >= 0); + error = connect(s, (struct sockaddr*)&devd_addr, SUN_LEN(&devd_addr)); + ATF_REQUIRE_EQ(0, error); + + create_two_events(); + + /* + * Loop until both events are detected on _different_ reads + * There may be extra events due to unrelated system activity + * If we never get both events, then the test will timeout. + */ + while (!(got_create_event && got_destroy_event)) { + char event[1024]; + ssize_t newlen; + char *create_pos, *destroy_pos; + + /* Read 1 less than sizeof(event) to allow space for NULL */ + newlen = read(s, &event[len], sizeof(event) - len - 1); + ATF_REQUIRE(newlen != -1); + len += newlen; + /* NULL terminate the result */ + event[newlen] = '\0'; + printf("%s", event); + + create_pos = strstr(event, create_pat); + if (create_pos != NULL) + got_create_event = true; + + destroy_pos = strstr(event, destroy_pat); + if (destroy_pos != NULL) + got_destroy_event = true; + } + + close(s); +} + +/* + * Main. + */ + +ATF_TP_ADD_TCS(tp) +{ + ATF_TP_ADD_TC(tp, seqpacket); + ATF_TP_ADD_TC(tp, stream); + + return (atf_no_error()); +} + diff --git a/sbin/dhclient/tests/Makefile b/sbin/dhclient/tests/Makefile index b092eea..a460f7f 100644 --- a/sbin/dhclient/tests/Makefile +++ b/sbin/dhclient/tests/Makefile @@ -8,6 +8,7 @@ PLAIN_TESTS_C= option-domain-search_test SRCS.option-domain-search_test= alloc.c convert.c hash.c options.c \ tables.c fake.c option-domain-search.c CFLAGS.option-domain-search_test+= -I${.CURDIR}/.. +DPADD.option-domain-search_test= ${LIBUTIL} LDADD.option-domain-search_test= -lutil WARNS?= 2 diff --git a/sbin/fsck/Makefile b/sbin/fsck/Makefile index d0c45db..22de03c 100644 --- a/sbin/fsck/Makefile +++ b/sbin/fsck/Makefile @@ -5,6 +5,4 @@ PROG= fsck SRCS= fsck.c fsutil.c preen.c MAN= fsck.8 -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/sbin/hastd/Makefile b/sbin/hastd/Makefile index 306c83a..7dd4d63 100644 --- a/sbin/hastd/Makefile +++ b/sbin/hastd/Makefile @@ -31,7 +31,7 @@ CFLAGS+=-DINET6 .endif DPADD= ${LIBGEOM} ${LIBBSDXML} ${LIBSBUF} ${LIBL} ${LIBPTHREAD} ${LIBUTIL} -LDADD= -lgeom -lbsdxml -lsbuf -lpthread -lutil +LDADD= -lgeom -lbsdxml -lsbuf -ll -lpthread -lutil .if ${MK_OPENSSL} != "no" DPADD+= ${LIBCRYPTO} LDADD+= -lcrypto diff --git a/sbin/ifconfig/Makefile b/sbin/ifconfig/Makefile index aae6724..c357aff 100644 --- a/sbin/ifconfig/Makefile +++ b/sbin/ifconfig/Makefile @@ -33,6 +33,10 @@ SRCS+= ifvlan.c # SIOC[GS]ETVLAN support SRCS+= ifgre.c # GRE keys etc SRCS+= ifgif.c # GIF reversed header workaround +SRCS+= sfp.c # SFP/SFP+ information +DPADD+= ${LIBM} +LDADD+= -lm + SRCS+= ifieee80211.c regdomain.c # SIOC[GS]IEEE80211 support DPADD+= ${LIBBSDXML} ${LIBSBUF} LDADD+= -lbsdxml -lsbuf diff --git a/sbin/ifconfig/ifconfig.c b/sbin/ifconfig/ifconfig.c index 1f93a0d..61fd155 100644 --- a/sbin/ifconfig/ifconfig.c +++ b/sbin/ifconfig/ifconfig.c @@ -1011,6 +1011,9 @@ status(const struct afswtch *afp, const struct sockaddr_dl *sdl, if (ioctl(s, SIOCGIFSTATUS, &ifs) == 0) printf("%s", ifs.ascii); + if (verbose > 0) + sfp_status(s, &ifr, verbose); + close(s); return; } diff --git a/sbin/ifconfig/ifconfig.h b/sbin/ifconfig/ifconfig.h index ea21db5..e449c1d 100644 --- a/sbin/ifconfig/ifconfig.h +++ b/sbin/ifconfig/ifconfig.h @@ -143,6 +143,8 @@ void ifmaybeload(const char *name); typedef void clone_callback_func(int, struct ifreq *); void clone_setdefcallback(const char *, clone_callback_func *); +void sfp_status(int s, struct ifreq *ifr, int verbose); + /* * XXX expose this so modules that neeed to know of any pending * operations on ifmedia can avoid cmd line ordering confusion. diff --git a/sbin/ifconfig/sfp.c b/sbin/ifconfig/sfp.c new file mode 100644 index 0000000..9647eb3 --- /dev/null +++ b/sbin/ifconfig/sfp.c @@ -0,0 +1,789 @@ +/*- + * Copyright (c) 2014 Alexander V. Chernikov. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef lint +static const char rcsid[] = + "$FreeBSD$"; +#endif /* not lint */ + +#include <sys/types.h> +#include <sys/param.h> +#include <sys/ioctl.h> +#include <sys/socket.h> + +#include <net/if.h> +#include <net/sff8436.h> +#include <net/sff8472.h> + +#include <math.h> +#include <err.h> +#include <errno.h> +#include <fcntl.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <unistd.h> + +#include "ifconfig.h" + +struct i2c_info; +typedef int (read_i2c)(struct i2c_info *ii, uint8_t addr, uint8_t off, + uint8_t len, caddr_t buf); + +struct i2c_info { + int s; + int error; + int bshift; + int qsfp; + int do_diag; + struct ifreq *ifr; + read_i2c *f; + char *textbuf; + size_t bufsize; + int cfd; + int port_id; + int chip_id; +}; + +struct _nv { + int v; + const char *n; +}; + +const char *find_value(struct _nv *x, int value); +const char *find_zero_bit(struct _nv *x, int value, int sz); + +/* SFF-8472 Rev. 11.4 table 3.4: Connector values */ +static struct _nv conn[] = { + { 0x00, "Unknown" }, + { 0x01, "SC" }, + { 0x02, "Fibre Channel Style 1 copper" }, + { 0x03, "Fibre Channel Style 2 copper" }, + { 0x04, "BNC/TNC" }, + { 0x05, "Fibre Channel coaxial" }, + { 0x06, "FiberJack" }, + { 0x07, "LC" }, + { 0x08, "MT-RJ" }, + { 0x09, "MU" }, + { 0x0A, "SG" }, + { 0x0B, "Optical pigtail" }, + { 0x0C, "MPO Parallel Optic" }, + { 0x20, "HSSDC II" }, + { 0x21, "Copper pigtail" }, + { 0x22, "RJ45" }, + { 0x23, "No separate connector" }, /* SFF-8436 */ + { 0, NULL } +}; + +/* SFF-8472 Rev. 11.4 table 3.5: Transceiver codes */ +/* 10G Ethernet/IB compliance codes, byte 3 */ +static struct _nv eth_10g[] = { + { 0x80, "10G Base-ER" }, + { 0x40, "10G Base-LRM" }, + { 0x20, "10G Base-LR" }, + { 0x10, "10G Base-SR" }, + { 0x08, "1X SX" }, + { 0x04, "1X LX" }, + { 0x02, "1X Copper Active" }, + { 0x01, "1X Copper Passive" }, + { 0, NULL } +}; + +/* Ethernet compliance codes, byte 6 */ +static struct _nv eth_compat[] = { + { 0x80, "BASE-PX" }, + { 0x40, "BASE-BX10" }, + { 0x20, "100BASE-FX" }, + { 0x10, "100BASE-LX/LX10" }, + { 0x08, "1000BASE-T" }, + { 0x04, "1000BASE-CX" }, + { 0x02, "1000BASE-LX" }, + { 0x01, "1000BASE-SX" }, + { 0, NULL } +}; + +/* FC link length, byte 7 */ +static struct _nv fc_len[] = { + { 0x80, "very long distance" }, + { 0x40, "short distance" }, + { 0x20, "intermediate distance" }, + { 0x10, "long distance" }, + { 0x08, "medium distance" }, + { 0, NULL } +}; + +/* Channel/Cable technology, byte 7-8 */ +static struct _nv cab_tech[] = { + { 0x0400, "Shortwave laser (SA)" }, + { 0x0200, "Longwave laser (LC)" }, + { 0x0100, "Electrical inter-enclosure (EL)" }, + { 0x80, "Electrical intra-enclosure (EL)" }, + { 0x40, "Shortwave laser (SN)" }, + { 0x20, "Shortwave laser (SL)" }, + { 0x10, "Longwave laser (LL)" }, + { 0x08, "Active Cable" }, + { 0x04, "Passive Cable" }, + { 0, NULL } +}; + +/* FC Transmission media, byte 9 */ +static struct _nv fc_media[] = { + { 0x80, "Twin Axial Pair" }, + { 0x40, "Twisted Pair" }, + { 0x20, "Miniature Coax" }, + { 0x10, "Viao Coax" }, + { 0x08, "Miltimode, 62.5um" }, + { 0x04, "Multimode, 50um" }, + { 0x02, "" }, + { 0x01, "Single Mode" }, + { 0, NULL } +}; + +/* FC Speed, byte 10 */ +static struct _nv fc_speed[] = { + { 0x80, "1200 MBytes/sec" }, + { 0x40, "800 MBytes/sec" }, + { 0x20, "1600 MBytes/sec" }, + { 0x10, "400 MBytes/sec" }, + { 0x08, "3200 MBytes/sec" }, + { 0x04, "200 MBytes/sec" }, + { 0x01, "100 MBytes/sec" }, + { 0, NULL } +}; + +/* SFF-8436 Rev. 4.8 table 33: Specification compliance */ + +/* 10/40G Ethernet compliance codes, byte 128 + 3 */ +static struct _nv eth_1040g[] = { + { 0x80, "Reserved" }, + { 0x40, "10GBASE-LRM" }, + { 0x20, "10GBASE-LR" }, + { 0x10, "10GBASE-SR" }, + { 0x08, "40GBASE-CR4" }, + { 0x04, "40GBASE-SR4" }, + { 0x02, "40GBASE-LR4" }, + { 0x01, "40G Active Cable" }, + { 0, NULL } +}; + +const char * +find_value(struct _nv *x, int value) +{ + for (; x->n != NULL; x++) + if (x->v == value) + return (x->n); + return (NULL); +} + +const char * +find_zero_bit(struct _nv *x, int value, int sz) +{ + int v, m; + const char *s; + + v = 1; + for (v = 1, m = 1 << (8 * sz); v < m; v *= 2) { + if ((value & v) == 0) + continue; + if ((s = find_value(x, value & v)) != NULL) { + value &= ~v; + return (s); + } + } + + return (NULL); +} + +static void +convert_sff_identifier(char *buf, size_t size, uint8_t value) +{ + const char *x; + + x = NULL; + if (value <= SFF_8024_ID_LAST) + x = sff_8024_id[value]; + else { + if (value > 0x80) + x = "Vendor specific"; + else + x = "Reserved"; + } + + snprintf(buf, size, "%s", x); +} + +static void +convert_sff_connector(char *buf, size_t size, uint8_t value) +{ + const char *x; + + if ((x = find_value(conn, value)) == NULL) { + if (value >= 0x0D && value <= 0x1F) + x = "Unallocated"; + else if (value >= 0x24 && value <= 0x7F) + x = "Unallocated"; + else + x = "Vendor specific"; + } + + snprintf(buf, size, "%s", x); +} + +static void +get_sfp_identifier(struct i2c_info *ii, char *buf, size_t size) +{ + uint8_t data; + + ii->f(ii, SFF_8472_BASE, SFF_8472_ID, 1, (caddr_t)&data); + convert_sff_identifier(buf, size, data); +} + +static void +get_sfp_connector(struct i2c_info *ii, char *buf, size_t size) +{ + uint8_t data; + + ii->f(ii, SFF_8472_BASE, SFF_8472_CONNECTOR, 1, (caddr_t)&data); + convert_sff_connector(buf, size, data); +} + +static void +get_qsfp_identifier(struct i2c_info *ii, char *buf, size_t size) +{ + uint8_t data; + + ii->f(ii, SFF_8436_BASE, SFF_8436_ID, 1, (caddr_t)&data); + convert_sff_identifier(buf, size, data); +} + +static void +get_qsfp_connector(struct i2c_info *ii, char *buf, size_t size) +{ + uint8_t data; + + ii->f(ii, SFF_8436_BASE, SFF_8436_CONNECTOR, 1, (caddr_t)&data); + convert_sff_connector(buf, size, data); +} + +static void +printf_sfp_transceiver_descr(struct i2c_info *ii, char *buf, size_t size) +{ + char xbuf[12]; + const char *tech_class, *tech_len, *tech_tech, *tech_media, *tech_speed; + + tech_class = NULL; + tech_len = NULL; + tech_tech = NULL; + tech_media = NULL; + tech_speed = NULL; + + /* Read bytes 3-10 at once */ + ii->f(ii, SFF_8472_BASE, SFF_8472_TRANS_START, 8, &xbuf[3]); + + /* Check 10G ethernet first */ + tech_class = find_zero_bit(eth_10g, xbuf[3], 1); + if (tech_class == NULL) { + /* No match. Try 1G */ + tech_class = find_zero_bit(eth_compat, xbuf[6], 1); + } + + tech_len = find_zero_bit(fc_len, xbuf[7], 1); + tech_tech = find_zero_bit(cab_tech, xbuf[7] << 8 | xbuf[8], 2); + tech_media = find_zero_bit(fc_media, xbuf[9], 1); + tech_speed = find_zero_bit(fc_speed, xbuf[10], 1); + + printf("Class: %s\n", tech_class); + printf("Length: %s\n", tech_len); + printf("Tech: %s\n", tech_tech); + printf("Media: %s\n", tech_media); + printf("Speed: %s\n", tech_speed); +} + +static void +get_sfp_transceiver_class(struct i2c_info *ii, char *buf, size_t size) +{ + const char *tech_class; + uint8_t code; + + /* Check 10G Ethernet/IB first */ + ii->f(ii, SFF_8472_BASE, SFF_8472_TRANS_START, 1, (caddr_t)&code); + tech_class = find_zero_bit(eth_10g, code, 1); + if (tech_class == NULL) { + /* No match. Try Ethernet 1G */ + ii->f(ii, SFF_8472_BASE, SFF_8472_TRANS_START + 3, + 1, (caddr_t)&code); + tech_class = find_zero_bit(eth_compat, code, 1); + } + + if (tech_class == NULL) + tech_class = "Unknown"; + + snprintf(buf, size, "%s", tech_class); +} + +static void +get_qsfp_transceiver_class(struct i2c_info *ii, char *buf, size_t size) +{ + const char *tech_class; + uint8_t code; + + /* Check 10/40G Ethernet class only */ + ii->f(ii, SFF_8436_BASE, SFF_8436_CODE_E1040G, 1, (caddr_t)&code); + tech_class = find_zero_bit(eth_1040g, code, 1); + if (tech_class == NULL) + tech_class = "Unknown"; + + snprintf(buf, size, "%s", tech_class); +} + +/* + * Print SFF-8472/SFF-8436 string to supplied buffer. + * All (vendor-specific) strings are padded right with '0x20'. + */ +static void +convert_sff_name(char *buf, size_t size, char *xbuf) +{ + char *p; + + for (p = &xbuf[16]; *(p - 1) == 0x20; p--) + ; + *p = '\0'; + snprintf(buf, size, "%s", xbuf); +} + +static void +convert_sff_date(char *buf, size_t size, char *xbuf) +{ + + snprintf(buf, size, "20%c%c-%c%c-%c%c", xbuf[0], xbuf[1], + xbuf[2], xbuf[3], xbuf[4], xbuf[5]); +} + +static void +get_sfp_vendor_name(struct i2c_info *ii, char *buf, size_t size) +{ + char xbuf[17]; + + memset(xbuf, 0, sizeof(xbuf)); + ii->f(ii, SFF_8472_BASE, SFF_8472_VENDOR_START, 16, xbuf); + convert_sff_name(buf, size, xbuf); +} + +static void +get_sfp_vendor_pn(struct i2c_info *ii, char *buf, size_t size) +{ + char xbuf[17]; + + memset(xbuf, 0, sizeof(xbuf)); + ii->f(ii, SFF_8472_BASE, SFF_8472_PN_START, 16, xbuf); + convert_sff_name(buf, size, xbuf); +} + +static void +get_sfp_vendor_sn(struct i2c_info *ii, char *buf, size_t size) +{ + char xbuf[17]; + + memset(xbuf, 0, sizeof(xbuf)); + ii->f(ii, SFF_8472_BASE, SFF_8472_SN_START, 16, xbuf); + convert_sff_name(buf, size, xbuf); +} + +static void +get_sfp_vendor_date(struct i2c_info *ii, char *buf, size_t size) +{ + char xbuf[6]; + + memset(xbuf, 0, sizeof(xbuf)); + /* Date code, see Table 3.8 for description */ + ii->f(ii, SFF_8472_BASE, SFF_8472_DATE_START, 6, xbuf); + convert_sff_date(buf, size, xbuf); +} + +static void +get_qsfp_vendor_name(struct i2c_info *ii, char *buf, size_t size) +{ + char xbuf[17]; + + memset(xbuf, 0, sizeof(xbuf)); + ii->f(ii, SFF_8436_BASE, SFF_8436_VENDOR_START, 16, xbuf); + convert_sff_name(buf, size, xbuf); +} + +static void +get_qsfp_vendor_pn(struct i2c_info *ii, char *buf, size_t size) +{ + char xbuf[17]; + + memset(xbuf, 0, sizeof(xbuf)); + ii->f(ii, SFF_8436_BASE, SFF_8436_PN_START, 16, xbuf); + convert_sff_name(buf, size, xbuf); +} + +static void +get_qsfp_vendor_sn(struct i2c_info *ii, char *buf, size_t size) +{ + char xbuf[17]; + + memset(xbuf, 0, sizeof(xbuf)); + ii->f(ii, SFF_8436_BASE, SFF_8436_SN_START, 16, xbuf); + convert_sff_name(buf, size, xbuf); +} + +static void +get_qsfp_vendor_date(struct i2c_info *ii, char *buf, size_t size) +{ + char xbuf[6]; + + memset(xbuf, 0, sizeof(xbuf)); + ii->f(ii, SFF_8436_BASE, SFF_8436_DATE_START, 6, xbuf); + convert_sff_date(buf, size, xbuf); +} + +static void +print_sfp_vendor(struct i2c_info *ii, char *buf, size_t size) +{ + char xbuf[80]; + + memset(xbuf, 0, sizeof(xbuf)); + if (ii->qsfp != 0) { + get_qsfp_vendor_name(ii, xbuf, 20); + get_qsfp_vendor_pn(ii, &xbuf[20], 20); + get_qsfp_vendor_sn(ii, &xbuf[40], 20); + get_qsfp_vendor_date(ii, &xbuf[60], 20); + } else { + get_sfp_vendor_name(ii, xbuf, 20); + get_sfp_vendor_pn(ii, &xbuf[20], 20); + get_sfp_vendor_sn(ii, &xbuf[40], 20); + get_sfp_vendor_date(ii, &xbuf[60], 20); + } + + snprintf(buf, size, "vendor: %s PN: %s SN: %s DATE: %s", + xbuf, &xbuf[20], &xbuf[40], &xbuf[60]); +} + +/* + * Converts internal templerature (SFF-8472, SFF-8436) + * 16-bit unsigned value to human-readable representation: + * + * Internally measured Module temperature are represented + * as a 16-bit signed twos complement value in increments of + * 1/256 degrees Celsius, yielding a total range of –128C to +128C + * that is considered valid between –40 and +125C. + * + */ +static void +convert_sff_temp(char *buf, size_t size, char *xbuf) +{ + double d; + + d = (double)(int8_t)xbuf[0]; + d += (double)(uint8_t)xbuf[1] / 256; + + snprintf(buf, size, "%.2f C", d); +} + +/* + * Retrieves supplied voltage (SFF-8472, SFF-8436). + * 16-bit usigned value, treated as range 0..+6.55 Volts + */ +static void +convert_sff_voltage(char *buf, size_t size, char *xbuf) +{ + double d; + + d = (double)(((uint8_t)xbuf[0] << 8) | (uint8_t)xbuf[1]); + snprintf(buf, size, "%.2f Volts", d / 10000); +} + +/* + * Converts value in @xbuf to both milliwats and dBm + * human representation. + */ +static void +convert_sff_power(struct i2c_info *ii, char *buf, size_t size, char *xbuf) +{ + uint16_t mW; + double dbm; + + mW = ((uint8_t)xbuf[0] << 8) + (uint8_t)xbuf[1]; + + /* Convert mw to dbm */ + dbm = 10.0 * log10(1.0 * mW / 10000); + + /* + * Assume internally-calibrated data. + * This is always true for SFF-8346, and explicitly + * checked for SFF-8472. + */ + + /* Table 3.9, bit 5 is set, internally calibrated */ + snprintf(buf, size, "%d.%02d mW (%.2f dBm)", + mW / 10000, (mW % 10000) / 100, dbm); +} + +static void +get_sfp_temp(struct i2c_info *ii, char *buf, size_t size) +{ + char xbuf[2]; + + memset(xbuf, 0, sizeof(xbuf)); + ii->f(ii, SFF_8472_DIAG, SFF_8472_TEMP, 2, xbuf); + convert_sff_temp(buf, size, xbuf); +} + +static void +get_sfp_voltage(struct i2c_info *ii, char *buf, size_t size) +{ + char xbuf[2]; + + memset(xbuf, 0, sizeof(xbuf)); + ii->f(ii, SFF_8472_DIAG, SFF_8472_VCC, 2, xbuf); + convert_sff_voltage(buf, size, xbuf); +} + +static void +get_qsfp_temp(struct i2c_info *ii, char *buf, size_t size) +{ + char xbuf[2]; + + memset(xbuf, 0, sizeof(xbuf)); + ii->f(ii, SFF_8436_BASE, SFF_8436_TEMP, 2, xbuf); + convert_sff_temp(buf, size, xbuf); +} + +static void +get_qsfp_voltage(struct i2c_info *ii, char *buf, size_t size) +{ + char xbuf[2]; + + memset(xbuf, 0, sizeof(xbuf)); + ii->f(ii, SFF_8436_BASE, SFF_8436_VCC, 2, xbuf); + convert_sff_voltage(buf, size, xbuf); +} + +static void +get_sfp_rx_power(struct i2c_info *ii, char *buf, size_t size) +{ + char xbuf[2]; + + memset(xbuf, 0, sizeof(xbuf)); + ii->f(ii, SFF_8472_DIAG, SFF_8472_RX_POWER, 2, xbuf); + convert_sff_power(ii, buf, size, xbuf); +} + +static void +get_sfp_tx_power(struct i2c_info *ii, char *buf, size_t size) +{ + char xbuf[2]; + + memset(xbuf, 0, sizeof(xbuf)); + ii->f(ii, SFF_8472_DIAG, SFF_8472_TX_POWER, 2, xbuf); + convert_sff_power(ii, buf, size, xbuf); +} + +static void +get_qsfp_rx_power(struct i2c_info *ii, char *buf, size_t size, int chan) +{ + char xbuf[2]; + + memset(xbuf, 0, sizeof(xbuf)); + ii->f(ii, SFF_8436_BASE, SFF_8436_RX_CH1_MSB + (chan - 1) * 2, 2, xbuf); + convert_sff_power(ii, buf, size, xbuf); +} + +static void +get_qsfp_tx_power(struct i2c_info *ii, char *buf, size_t size, int chan) +{ + char xbuf[2]; + + memset(xbuf, 0, sizeof(xbuf)); + ii->f(ii, SFF_8436_BASE, SFF_8436_TX_CH1_MSB + (chan -1) * 2, 2, xbuf); + convert_sff_power(ii, buf, size, xbuf); +} + +/* Intel ixgbe-specific structures and handlers */ +struct ixgbe_i2c_req { + uint8_t dev_addr; + uint8_t offset; + uint8_t len; + uint8_t data[8]; +}; +#define SIOCGI2C SIOCGIFGENERIC + +static int +read_i2c_ixgbe(struct i2c_info *ii, uint8_t addr, uint8_t off, uint8_t len, + caddr_t buf) +{ + struct ixgbe_i2c_req ixreq; + int i; + + if (ii->error != 0) + return (ii->error); + + ii->ifr->ifr_data = (caddr_t)&ixreq; + + memset(&ixreq, 0, sizeof(ixreq)); + ixreq.dev_addr = addr; + + for (i = 0; i < len; i += 1) { + ixreq.offset = off + i; + ixreq.len = 1; + ixreq.data[0] = '\0'; + + if (ioctl(ii->s, SIOCGI2C, ii->ifr) != 0) { + ii->error = errno; + return (errno); + } + memcpy(&buf[i], ixreq.data, 1); + } + + return (0); +} + +/* Generic handler */ +static int +read_i2c_generic(struct i2c_info *ii, uint8_t addr, uint8_t off, uint8_t len, + caddr_t buf) +{ + + ii->error = EINVAL; + return (-1); +} + +static void +print_qsfp_status(struct i2c_info *ii, int verbose) +{ + char buf[80], buf2[40], buf3[40]; + uint8_t diag_type; + int i; + + /* Read diagnostic monitoring type */ + ii->f(ii, SFF_8436_BASE, SFF_8436_DIAG_TYPE, 1, (caddr_t)&diag_type); + if (ii->error != 0) + return; + + /* + * Read monitoring data it is supplied. + * XXX: It is not exactly clear from standard + * how one can specify lack of measurements (passive cables case). + */ + if (diag_type != 0) + ii->do_diag = 1; + ii->qsfp = 1; + + /* Transceiver type */ + get_qsfp_identifier(ii, buf, sizeof(buf)); + get_qsfp_transceiver_class(ii, buf2, sizeof(buf2)); + get_qsfp_connector(ii, buf3, sizeof(buf3)); + if (ii->error == 0) + printf("\tplugged: %s %s (%s)\n", buf, buf2, buf3); + print_sfp_vendor(ii, buf, sizeof(buf)); + if (ii->error == 0) + printf("\t%s\n", buf); + + /* Request current measurements if they are provided: */ + if (ii->do_diag != 0) { + get_qsfp_temp(ii, buf, sizeof(buf)); + get_qsfp_voltage(ii, buf2, sizeof(buf2)); + printf("\tmodule temperature: %s voltage: %s\n", buf, buf2); + for (i = 1; i <= 4; i++) { + get_qsfp_rx_power(ii, buf, sizeof(buf), i); + get_qsfp_tx_power(ii, buf2, sizeof(buf2), i); + printf("\tlane %d: RX: %s TX: %s\n", i, buf, buf2); + } + } +} + +static void +print_sfp_status(struct i2c_info *ii, int verbose) +{ + char buf[80], buf2[40], buf3[40]; + uint8_t diag_type, flags; + + /* Read diagnostic monitoring type */ + ii->f(ii, SFF_8472_BASE, SFF_8472_DIAG_TYPE, 1, (caddr_t)&diag_type); + if (ii->error != 0) + return; + + /* + * Read monitoring data IFF it is supplied AND is + * internally calibrated + */ + flags = SFF_8472_DDM_DONE | SFF_8472_DDM_INTERNAL; + if ((diag_type & flags) == flags) + ii->do_diag = 1; + + /* Transceiver type */ + get_sfp_identifier(ii, buf, sizeof(buf)); + get_sfp_transceiver_class(ii, buf2, sizeof(buf2)); + get_sfp_connector(ii, buf3, sizeof(buf3)); + if (ii->error == 0) + printf("\tplugged: %s %s (%s)\n", buf, buf2, buf3); + if (verbose > 2) + printf_sfp_transceiver_descr(ii, buf, sizeof(buf)); + print_sfp_vendor(ii, buf, sizeof(buf)); + if (ii->error == 0) + printf("\t%s\n", buf); + + /* + * Request current measurements iff they are provided: + */ + if (ii->do_diag != 0) { + get_sfp_temp(ii, buf, sizeof(buf)); + get_sfp_voltage(ii, buf2, sizeof(buf2)); + printf("\tmodule temperature: %s Voltage: %s\n", buf, buf2); + get_sfp_rx_power(ii, buf, sizeof(buf)); + get_sfp_tx_power(ii, buf2, sizeof(buf2)); + printf("\tRX: %s TX: %s\n", buf, buf2); + } +} + +void +sfp_status(int s, struct ifreq *ifr, int verbose) +{ + struct i2c_info ii; + + /* Prepare necessary into to pass to NIC handler */ + ii.s = s; + ii.ifr = ifr; + + /* + * Check if we have i2c support for particular driver. + * TODO: Determine driver by original name. + */ + memset(&ii, 0, sizeof(ii)); + if (strncmp(ifr->ifr_name, "ix", 2) == 0) { + ii.f = read_i2c_ixgbe; + print_sfp_status(&ii, verbose); + } else if (strncmp(ifr->ifr_name, "cxl", 3) == 0) { + ii.port_id = atoi(&ifr->ifr_name[3]); + ii.f = read_i2c_generic; + ii.cfd = -1; + print_qsfp_status(&ii, verbose); + } else + return; +} + diff --git a/sbin/init/init.c b/sbin/init/init.c index 8583ba5..5ab3527 100644 --- a/sbin/init/init.c +++ b/sbin/init/init.c @@ -242,7 +242,7 @@ invalid: * Note that this does NOT open a file... * Does 'init' deserve its own facility number? */ - openlog("init", LOG_CONS|LOG_ODELAY, LOG_AUTH); + openlog("init", LOG_CONS, LOG_AUTH); /* * Create an initial session. diff --git a/sbin/ipf/ipf/Makefile b/sbin/ipf/ipf/Makefile index 73888b2..c3938c6 100644 --- a/sbin/ipf/ipf/Makefile +++ b/sbin/ipf/ipf/Makefile @@ -39,6 +39,4 @@ DPADD+= ${LIBPCAP} LDADD+= -lpcap .endif -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/sbin/ipf/ipfstat/Makefile b/sbin/ipf/ipfstat/Makefile index c2b422d..a33c5df 100644 --- a/sbin/ipf/ipfstat/Makefile +++ b/sbin/ipf/ipfstat/Makefile @@ -8,6 +8,4 @@ MAN= ipfstat.8 DPADD+= ${LIBCURSES} LDADD+= -lcurses -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/sbin/ipf/ipftest/Makefile b/sbin/ipf/ipftest/Makefile index 57f3c4e..32b074c 100644 --- a/sbin/ipf/ipftest/Makefile +++ b/sbin/ipf/ipftest/Makefile @@ -32,8 +32,6 @@ CLEANFILES+= ipnat.tab.c ipnat.tab.h CLEANFILES+= ippool_y.c ippool_l.c CLEANFILES+= ippool.tab.c ippool.tab.h -NO_PIE= yes - ipnat_y.c: ipnat_y.y ${YACC} -b ipnat -d ${.ALLSRC} sed -e 's/yy/ipnat_yy/g' \ diff --git a/sbin/ipf/ipmon/Makefile b/sbin/ipf/ipmon/Makefile index 2ecfed1..3639f87 100644 --- a/sbin/ipf/ipmon/Makefile +++ b/sbin/ipf/ipmon/Makefile @@ -11,8 +11,6 @@ DPSRCS+= ${GENHDRS} CLEANFILES+= ${GENHDRS} ipmon_y.c ipmon_l.c -NO_PIE= yes - ipmon_y.c: ipmon_y.y ${YACC} -d ${.ALLSRC} sed -e 's/yy/ipmon_yy/g' \ diff --git a/sbin/ipf/ipnat/Makefile b/sbin/ipf/ipnat/Makefile index aafb014..1c017e1 100644 --- a/sbin/ipf/ipnat/Makefile +++ b/sbin/ipf/ipnat/Makefile @@ -11,8 +11,6 @@ DPSRCS+= ${GENHDRS} CLEANFILES+= ${GENHDRS} ipnat_y.c ipnat_l.c -NO_PIE= yes - ipnat_y.c: ipnat_y.y ${YACC} -d ${.ALLSRC} sed -e 's/yy/ipnat_yy/g' \ diff --git a/sbin/ipf/ippool/Makefile b/sbin/ipf/ippool/Makefile index bb7e9ce..6e3f85d 100644 --- a/sbin/ipf/ippool/Makefile +++ b/sbin/ipf/ippool/Makefile @@ -10,8 +10,6 @@ DPSRCS+= ${GENHDRS} CLEANFILES+= ${GENHDRS} ippool_y.c ippool_l.c -NO_PIE= yes - ippool_y.c: ippool_y.y ${YACC} -d ${.ALLSRC} sed -e 's/yy/ippool_yy/g' \ diff --git a/sbin/ipf/ipresend/Makefile b/sbin/ipf/ipresend/Makefile index 492451c..5e0ac15 100644 --- a/sbin/ipf/ipresend/Makefile +++ b/sbin/ipf/ipresend/Makefile @@ -4,8 +4,6 @@ PROG= ipresend SRCS= ipresend.c ip.c resend.c sbpf.c sock.c 44arp.c MAN= ipresend.1 -NO_PIE= yes - .PATH: ${.CURDIR}/../../../contrib/ipfilter/ipsend .include <bsd.prog.mk> diff --git a/sbin/mksnap_ffs/Makefile b/sbin/mksnap_ffs/Makefile index 9247cb2..de96fa0 100644 --- a/sbin/mksnap_ffs/Makefile +++ b/sbin/mksnap_ffs/Makefile @@ -10,9 +10,9 @@ WARNS?= 2 CFLAGS+=-I${.CURDIR}/../mount .if defined(NOSUID) -BINMODE=550 +BINMODE=554 .else -BINMODE=4550 +BINMODE=4554 BINOWN= root .endif BINGRP= operator diff --git a/sbin/mount/mntopts.h b/sbin/mount/mntopts.h index 86a350f..d273dde 100644 --- a/sbin/mount/mntopts.h +++ b/sbin/mount/mntopts.h @@ -33,7 +33,7 @@ struct mntopt { const char *m_option; /* option name */ int m_inverse; /* if a negative option, e.g. "atime" */ - int m_flag; /* bit to set, e.g. MNT_RDONLY */ + long long m_flag; /* bit to set, e.g. MNT_RDONLY */ int m_altloc; /* 1 => set bit in altflags */ }; @@ -55,6 +55,7 @@ struct mntopt { #define MOPT_MULTILABEL { "multilabel", 0, MNT_MULTILABEL, 0 } #define MOPT_ACLS { "acls", 0, MNT_ACLS, 0 } #define MOPT_NFS4ACLS { "nfsv4acls", 0, MNT_NFS4ACLS, 0 } +#define MOPT_AUTOMOUNTED { "automounted",0, MNT_AUTOMOUNTED, 0 } /* Control flags. */ #define MOPT_FORCE { "force", 0, MNT_FORCE, 0 } @@ -89,7 +90,8 @@ struct mntopt { MOPT_NOCLUSTERW, \ MOPT_MULTILABEL, \ MOPT_ACLS, \ - MOPT_NFS4ACLS + MOPT_NFS4ACLS, \ + MOPT_AUTOMOUNTED void getmntopts(const char *, const struct mntopt *, int *, int *); void rmslashes(char *, char *); diff --git a/sbin/mount/mount.8 b/sbin/mount/mount.8 index 3b5c254..bfa70b6 100644 --- a/sbin/mount/mount.8 +++ b/sbin/mount/mount.8 @@ -28,7 +28,7 @@ .\" @(#)mount.8 8.8 (Berkeley) 6/16/94 .\" $FreeBSD$ .\" -.Dd June 6, 2011 +.Dd August 20, 2014 .Dt MOUNT 8 .Os .Sh NAME @@ -150,6 +150,11 @@ For this reason, the .Cm async flag should be used sparingly, and only when some data recovery mechanism is present. +.It Cm automounted +This flag indicates that the file system was mounted by +.Xr automountd 8 . +Automounted file systems are automatically unmounted by +.Xr autounmountd 8 . .It Cm current When used with the .Fl u diff --git a/sbin/mount/mount.c b/sbin/mount/mount.c index 91c7d7c..5ea45df 100644 --- a/sbin/mount/mount.c +++ b/sbin/mount/mount.c @@ -114,6 +114,7 @@ static struct opt { { MNT_ACLS, "acls" }, { MNT_NFS4ACLS, "nfsv4acls" }, { MNT_GJOURNAL, "gjournal" }, + { MNT_AUTOMOUNTED, "automounted" }, { 0, NULL } }; diff --git a/sbin/newfs_msdos/newfs_msdos.c b/sbin/newfs_msdos/newfs_msdos.c index 4bfb219..f315d98 100644 --- a/sbin/newfs_msdos/newfs_msdos.c +++ b/sbin/newfs_msdos/newfs_msdos.c @@ -689,7 +689,7 @@ main(int argc, char *argv[]) ((u_int)tm->tm_hour << 8 | (u_int)tm->tm_min)); mk4(bsx->exVolumeID, x); - mklabel(bsx->exVolumeLabel, opt_L ? opt_L : "NO_NAME"); + mklabel(bsx->exVolumeLabel, opt_L ? opt_L : "NO NAME"); sprintf(buf, "FAT%u", fat); setstr(bsx->exFileSysType, buf, sizeof(bsx->exFileSysType)); if (!opt_B) { diff --git a/sbin/rcorder/Makefile b/sbin/rcorder/Makefile index dc48b4c..b71aa4b 100644 --- a/sbin/rcorder/Makefile +++ b/sbin/rcorder/Makefile @@ -14,8 +14,6 @@ CFLAGS+= -DORDER -I. SRCS+= util.h CLEANFILES+= util.h -NO_PIE= yes - util.h: ln -sf ${.CURDIR}/../../lib/libutil/libutil.h ${.TARGET} diff --git a/sbin/shutdown/Makefile b/sbin/shutdown/Makefile index a6ecb93..905d1bc 100644 --- a/sbin/shutdown/Makefile +++ b/sbin/shutdown/Makefile @@ -8,6 +8,6 @@ MLINKS= shutdown.8 poweroff.8 BINOWN= root BINGRP= operator -BINMODE=4550 +BINMODE=4554 .include <bsd.prog.mk> diff --git a/sbin/umount/umount.c b/sbin/umount/umount.c index f2e02f2..521bbc8 100644 --- a/sbin/umount/umount.c +++ b/sbin/umount/umount.c @@ -394,7 +394,7 @@ umountfs(struct statfs *sfs) * has been unmounted. */ if (ai != NULL && !(fflag & MNT_FORCE) && do_rpc) { - clp = clnt_create(hostp, MOUNTPROG, MOUNTVERS, "udp"); + clp = clnt_create(hostp, MOUNTPROG, MOUNTVERS3, "udp"); if (clp == NULL) { warnx("%s: %s", hostp, clnt_spcreateerror("MOUNTPROG")); diff --git a/secure/usr.bin/ssh/Makefile b/secure/usr.bin/ssh/Makefile index bb23f43..3c969cd 100644 --- a/secure/usr.bin/ssh/Makefile +++ b/secure/usr.bin/ssh/Makefile @@ -22,7 +22,7 @@ USEPRIVATELIB= ssh .if ${MK_LDNS} != "no" CFLAGS+= -DHAVE_LDNS=1 DPADD+= ${LIBLDNS} -LDADD+= ${LIBLDNSADD} +LDADD+= ${LDLDNS} USEPRIVATELIB+= ldns .endif diff --git a/share/examples/autofs/driver/Makefile b/share/examples/autofs/driver/Makefile deleted file mode 100644 index 3e15883..0000000 --- a/share/examples/autofs/driver/Makefile +++ /dev/null @@ -1,18 +0,0 @@ -# $Id: Makefile,v 1.5 2004/09/08 08:27:12 bright Exp $ -# $FreeBSD$ - -PROG= autodriver -MAN= - -SRCS= autodriver.c -WARNS?= 4 -CFLAGS+= -g -BINDIR?= /sbin - -DPADD+= ${.OBJDIR}/../libautofs/libautofs.a -#LDADD+= -lautofs -LDADD+= ${.OBJDIR}/../libautofs/libautofs.a -LDFLAGS+= -L${.OBJDIR}/../libautofs -CFLAGS+= -I${.CURDIR}/../libautofs - -.include <bsd.prog.mk> diff --git a/share/examples/autofs/driver/autodriver.c b/share/examples/autofs/driver/autodriver.c deleted file mode 100644 index 69af0c5..0000000 --- a/share/examples/autofs/driver/autodriver.c +++ /dev/null @@ -1,538 +0,0 @@ -/* - * Copyright (c) 2004 Alfred Perlstein <alfred@FreeBSD.org> - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * $Id: autodriver.c,v 1.9 2004/09/08 08:12:21 bright Exp $ - * $FreeBSD$ - */ -#include <ctype.h> -#include <err.h> -#include <errno.h> -#include <stdio.h> -#include <stdlib.h> -#include <string.h> -#include <unistd.h> -#include <fcntl.h> - -#include <sys/dirent.h> -#include <sys/types.h> -#include <sys/param.h> -#include <sys/mount.h> -#include <sys/poll.h> -#include <sys/stat.h> - -#include <libautofs.h> - -struct autoentry { - char *ae_mnt; /* autofs mountpoint. */ - char *ae_path; /* path under mount. */ - char *ae_type; /* fs to be mounted type. */ - char *ae_opts; /* options passed to mount. */ - char *ae_rpath; /* remote path */ - char *ae_free; /* freeme! */ - char *ae_fullpath; /* full path to mount */ - int ae_line; /* line it came from in the conf. */ - int ae_indirect; /* is this an indirect mount? */ - int ae_direct; /* is this a direct mount? */ - int ae_browse; /* browseable? */ - struct autoentry *ae_next; /* next. */ -}; - -struct autoentry *entries; -const char *mount_prog = "mount"; -const char *fstype = "autofs"; - -void *xmalloc(size_t); -void *xcalloc(size_t number, size_t size); -void parsetab(void); -void populate_tab(void); -void doreq(autoh_t, autoreq_t); -void dotheneedful(autoh_t); -void eventloop(void); -int poll_handles(autoh_t *array, int cnt); -int mount_indirect(struct autofs_userreq *req, struct autoentry *ent); -int mount_direct(struct autofs_userreq *req, struct autoentry *ent); -int mount_browse(struct autofs_userreq *req, struct autoentry *ent); - -#define DSTR(s) sizeof(s) - 1, s - -struct dirent dumbents[] = { - {50, sizeof(struct dirent), DT_DIR, DSTR("one") }, - {51, sizeof(struct dirent), DT_DIR, DSTR(".") }, - {52, sizeof(struct dirent), DT_DIR, DSTR("..") }, - {50, sizeof(struct dirent), DT_DIR, DSTR("two") }, -}; - -void * -xmalloc(size_t size) -{ - void *ret; - - ret = malloc(size); - if (ret == NULL) - err(1, "malloc %d", (int) size); - return (ret); -} - -void * -xcalloc(size_t number, size_t size) -{ - void *ret; - - ret = calloc(number, size); - if (ret == NULL) - err(1, "calloc %d %d", (int)number, (int)size); - return (ret); -} - -void -parsetab(void) -{ - FILE *fp; - const char *tab; - char *cp, *p, *line, *opt; - size_t len; - struct autoentry *ent; - int i, lineno, x, gotopt; - const char *expecting = "expecting 'direct', 'indirect' or 'browse'"; - const char *tabfiles[] = { - "/etc/autotab", "/usr/local/etc/autotab", "./autotab", NULL - }; - - lineno = 0; - for (i = 0; (tab = tabfiles[i]) != NULL; i++) { - tab = tabfiles[i]; - fp = fopen(tab, "r"); - if (fp == NULL) - warn("fopen %s", tab); - if (fp != NULL) - break; - } - if (fp == NULL) { - err(1, "no config file available."); - } - - fprintf(stderr, "using config file: %s\n", tab); - - while ((cp = fgetln(fp, &len)) != NULL) { - lineno++; - while (len > 0 && isspace(cp[len - 1])) - len--; - line = xmalloc(len + 1); - bcopy(cp, line, len); - line[len] = '\0'; - cp = line; - if ((cp = strchr(line, '#')) != NULL) - *cp = '\0'; - cp = line; - while (isspace(*cp)) - cp++; - if (*cp == '\0') { - free(line); - continue; - } - ent = xcalloc(1, sizeof(*ent)); - if ((p = strsep(&cp, " \t")) == NULL) - goto bad; - ent->ae_mnt = p; - if ((p = strsep(&cp, " \t")) == NULL) - goto bad; - ent->ae_path = p; - if ((p = strsep(&cp, " \t")) == NULL) - goto bad; - ent->ae_type = p; - if ((p = strsep(&cp, " \t")) == NULL) - goto bad; - ent->ae_opts = p; - if ((p = strsep(&cp, " \t")) == NULL) - goto bad; - ent->ae_rpath = p; - if ((p = strsep(&cp, " \t")) == NULL) - goto bad; - gotopt = 0; - opt = p; - while ((p = strsep(&opt, ",")) != NULL) { - if (strcmp(p, "indirect") == 0) { - ent->ae_indirect = 1; - gotopt = 1; - } else if (strcmp(p, "direct") == 0) { - ent->ae_direct = 1; - gotopt = 1; - } else if (strcmp(p, "browse") == 0) { - ent->ae_browse = 1; - gotopt = 1; - } else { - warnx("unreconized option '%s', %s", - p, expecting); - goto bad2; - } - } - if (!gotopt) { - warnx("no options specified %s", expecting); - goto bad2; - } - if (ent->ae_direct && ent->ae_indirect) { - warnx("direct and indirect are mutually exclusive"); - goto bad2; - - } - x = asprintf(&ent->ae_fullpath, "%s/%s", - ent->ae_mnt, ent->ae_path); - if (x == -1) - err(1, "asprintf"); - - if (strlen(ent->ae_fullpath) + 1 > PATH_MAX) { - warnx("Error in file %s, line %d, " - "mountpath (%s) exceeds PATH_MAX (%d)", - tab, lineno, ent->ae_fullpath, PATH_MAX); - goto bad2; - } - ent->ae_line = lineno; - ent->ae_free = line; - ent->ae_next = entries; - entries = ent; - continue; -bad: - warnx("Parse error in file %s, line %d", tab, lineno); -bad2: - free(ent->ae_fullpath); - free(line); - free(ent); - } - if (ferror(fp)) - err(1, "error with file %s", tab); -} - -void -populate_tab(void) -{ - struct autoentry *ent; - char *path, *cmd; - int error; - autoh_t ah; - - path = cmd = NULL; - - for (ent = entries; ent != NULL; ent = ent->ae_next) { - free(path); - free(cmd); - error = asprintf(&path, "%s/%s", ent->ae_mnt, ent->ae_path); - if (error == -1) - err(1, "asprintf"); - error = asprintf(&cmd, "mkdir -p %s", path); - if (error == -1) - err(1, "asprintf"); - error = system(cmd); - if (error) { - warn("system: %s", cmd); - continue; - } - if (autoh_get(ent->ae_mnt, &ah)) { - warn("autoh_get %s", path); - continue; - } - error = autoh_togglepath(ah, AUTO_MOUNTER, getpid(), path); - if (error) { - err(1, "AUTO_MOUNTER %s", path); - continue; - } - if (ent->ae_browse) { - error = autoh_togglepath(ah, AUTO_BROWSE, getpid(), - path); - if (error) - err(1, "AUTO_BROWSE %s", path); - } - if (ent->ae_direct) { - error = autoh_togglepath(ah, AUTO_DIRECT, getpid(), - path); - if (error) - err(1, "AUTO_DIRECT %s", path); - } - if (ent->ae_indirect) { - error = autoh_togglepath(ah, AUTO_INDIRECT, getpid(), - path); - if (error) - err(1, "AUTO_INDIRECT %s", path); - } - autoh_free(ah); - } - free(path); - free(cmd); -} - -/* - * Process an autofs request, scan the list of entries in the config - * looking for our node, if found mount it. - */ -void -doreq(autoh_t ah, autoreq_t req) -{ - struct autoentry *ent; - int error; - int mcmp; - int xid; - const char *mnt; - - mnt = autoh_mp(ah); - - autoreq_seterrno(req, 0); - for (ent = entries; ent != NULL; ent = ent->ae_next) { - fprintf(stderr, "comparing {%s,%s} to {%s,%s}\n", - mnt, ent->ae_mnt, autoreq_getpath(req), ent->ae_path); - fprintf(stderr, "comparing {%d,%d} to {%d,%d}\n", - (int)strlen(mnt), - (int)strlen(ent->ae_mnt), - (int)strlen(autoreq_getpath(req)), - (int)strlen(ent->ae_path)); - autoreq_getxid(req, &xid); - fprintf(stderr, "req xid %d\n", xid); - if ((mcmp = strcmp(mnt, ent->ae_mnt)) != 0) { - fprintf(stderr, "mcmp = %d\n", mcmp); - continue; - } - if (mount_direct(req, ent)) - goto serve; - if (mount_indirect(req, ent)) - goto serve; - if (mount_browse(req, ent)) - goto serve; - } - fprintf(stderr, "no entry found...\n"); - autoreq_seterrno(req, ENOENT); -serve: - error = autoreq_serv(ah, req); - if (error == -1) { - warn("AUTOFS_CTL_SERVREQ"); - } -} - -int -mount_indirect(req, ent) - struct autofs_userreq *req; - struct autoentry *ent; -{ - struct stat sb; - char *path, *cmd; - int error, x; - - if (ent->ae_indirect != 1) { - fprintf(stderr, "not indirect.\n"); - return (0); - } - fprintf(stderr, "indirect mount...\n"); - /* - * handle lookups, fake all stat(2) requests... this is bad, - * but we're a driver so we don't care... - * If we don't care about the type of request, then just return. - */ - switch (autoreq_getop(req)) { - case AUTOREQ_OP_LOOKUP: - break; - case AUTOREQ_OP_STAT: - fprintf(stderr, "stat\n"); - return (1); - default: - fprintf(stderr, "unknown\n"); - return (0); - } - if (stat(ent->ae_fullpath, &sb)) - return (0); - if (sb.st_ino != autoreq_getdirino(req)) { - fprintf(stderr, "st_ino %d != dirino %d\n", - (int)sb.st_ino, (int)autoreq_getdirino(req)); - return (0); - } - x = asprintf(&path, "%s/%s", ent->ae_fullpath, autoreq_getpath(req)); - if (x > PATH_MAX) { - autoreq_seterrno(req, ENAMETOOLONG); - return (1); - } - if (mkdir(path, 0555) == -1) - warn("mkdir %s", path); - error = asprintf(&cmd, "%s -t %s -o %s %s/%s %s", mount_prog, - ent->ae_type, ent->ae_opts, ent->ae_rpath, autoreq_getpath(req), path); - fprintf(stderr, "running:\n\t%s\n", cmd); - error = system(cmd); - fprintf(stderr, "error = %d\n", error); - free(cmd); - if (error) { - if (rmdir(path) == -1) - warn("rmdir %s", path); - autoreq_seterrno(req, ENOENT); - } else { - if (stat(path, &sb) != -1) - autoreq_setino(req, sb.st_ino); - /* XXX !!! */ - /* req->au_flags = 1; */ - } - free(path); - return (1); -} - -int -mount_direct(req, ent) - struct autofs_userreq *req; - struct autoentry *ent; -{ - struct stat sb; - char *cmd; - int error; - - if (ent->ae_direct != 1) { - fprintf(stderr, "not direct.\n"); - return (0); - } - fprintf(stderr, "direct mount...\n"); - /* - * handle lookups, fake all stat(2) requests... this is bad, - * but we're a driver so we don't care... - * If we don't care about the type of request, then just return. - */ - switch (autoreq_getop(req)) { - case AUTOREQ_OP_LOOKUP: - break; - case AUTOREQ_OP_STAT: - return (1); - default: - return (0); - } - if (stat(ent->ae_fullpath, &sb)) - return (0); - if (sb.st_ino != autoreq_getino(req)) - return (0); - error = asprintf(&cmd, "%s -t %s -o %s %s %s", mount_prog, - ent->ae_type, ent->ae_opts, ent->ae_rpath, ent->ae_fullpath); - if (error == -1) - err(1, "asprintf"); - fprintf(stderr, "running:\n\t%s\n", cmd); - error = system(cmd); - fprintf(stderr, "error = %d\n", error); - free(cmd); - if (error) { - autoreq_seterrno(req, ENOENT); - return (1); - } - /* XXX: fix ONLIST in kernel */ - /* req->au_flags = 1; */ - return (1); -} - -int -mount_browse(req, ent) - struct autofs_userreq *req; - struct autoentry *ent; -{ - off_t off; - - if (ent->ae_browse != 1) - return (0); - if (autoreq_getop(req) != AUTOREQ_OP_READDIR) - return (0); - autoreq_getoffset(req, &off); - if (off < sizeof(dumbents)) - autoreq_setaux(req, dumbents, sizeof(dumbents)); - fprintf(stderr, "mount_browse: offset %d, size %d\n", - (int)off, (int)sizeof(dumbents)); - autoreq_seteof(req, 1); - return (1); -} - -/* - * Ask the filesystem passed in if it has a pending request. - * if so process them. - */ -void -dotheneedful(autoh_t ah) -{ - int cnt, i; - autoreq_t *reqs; - - if (autoreq_get(ah, &reqs, &cnt)) - err(1, "autoreq_get"); - - for (i = 0; i < cnt; i++) { - fprintf(stderr, "processing request for '%s' '%s'\n", - autoh_mp(ah), autoreq_getpath(reqs[i])); - doreq(ah, reqs[i]); - } - free(reqs); -} - -int -poll_handles(autoh_t *array, int cnt) -{ - int i, saved_errno, x; - static struct pollfd *pfd = NULL; - - pfd = reallocf(pfd, cnt * sizeof(*pfd)); - if (pfd == NULL) - return (-1); - for (i = 0; i < cnt; i++) { - pfd[i].fd = autoh_fd(array[i]); - pfd[i].events = POLLPRI; - pfd[i].revents = 0; - } - fprintf(stderr, "start polling...\n"); - x = poll(pfd, cnt, 10000); - saved_errno = errno; - fprintf(stderr, "done polling...\n"); - errno = saved_errno; - if (x == -1) - return (-1); - /* at least one fs is ready... */ - if (x > 0) - return (0); - return (0); -} - -void -eventloop(void) -{ - autoh_t *array; - int cnt, i; - - fprintf(stderr, "starting event loop...\n"); - for ( ;; ) { - if (autoh_getall(&array, &cnt)) - err(1, "autoh_getall"); - if (poll_handles(array, cnt)) - err(1, "poll_handles"); - for (i = 0; i < cnt; i++) { - dotheneedful(array[i]); - } - autoh_freeall(array); - } -} - -int -main(int argc __unused, char **argv __unused) -{ - - if (getuid() != 0) - errx(1, "autodriver needs to be run as root to work."); - parsetab(); - populate_tab(); - eventloop(); - return (0); -} diff --git a/share/examples/autofs/driver/autotab b/share/examples/autofs/driver/autotab deleted file mode 100644 index c56e072..0000000 --- a/share/examples/autofs/driver/autotab +++ /dev/null @@ -1,7 +0,0 @@ -# $Id: autotab,v 1.8 2004/09/08 08:12:21 bright Exp $ -# $FreeBSD$ -# autofs, directory, fstype, opts, path -/auto share nfs ro,-R=1 big:/vol/share direct -#/auto src nfs ro,-R=1 big:/vol/share/src indirect -/auto src nfs ro,-R=1 big:/vol/share/src direct -/auto browse nfs ro,-R=1 big:/vol/share/src browse,indirect diff --git a/share/man/man4/altera_atse.4 b/share/man/man4/altera_atse.4 index d3d96ff..10835cf 100644 --- a/share/man/man4/altera_atse.4 +++ b/share/man/man4/altera_atse.4 @@ -1,5 +1,5 @@ .\"- -.\" Copyright (c) 2013 SRI International +.\" Copyright (c) 2013-2014 SRI International .\" All rights reserved. .\" .\" This software was developed by SRI International and the University of @@ -29,7 +29,7 @@ .\" .\" $FreeBSD$ .\" -.Dd October 18, 2013 +.Dd May 21, 2014 .Dt ALTERA_ATSE 4 .Os .Sh NAME @@ -66,6 +66,25 @@ The current version of the .Nm driver supports the Ethernet MegaCore as described in version 11.1 of Altera's documentation when the device is configured with internal FIFOs. +.Sh MAC SELECTION +The default MAC address for each +.Nm +interface is derived from a value stored in +.Xr cfi 4 +flash. +The value is managed by the +.Xr atsectl 8 +utility. +.Pp +Only a single MAC address may be stored in flash. +If the address begins with the Altera prefix 00:07:ed and ends in 00 then +up to 16 addresses will be derived from it by adding the unit number of +the interface to the stored address. +For other prefixes, the address will be assigned to atse0 and random +addresses will be used for other interfaces. +If the stored address is invalid, for example all zero's, multicast, or the +default address shipped on all DE4 boards (00:07:ed:ff:ed:15) then a random +address is generated when the device is attached. .Sh SEE ALSO .Xr miibus 4 , .Xr netintro 4 , diff --git a/share/man/man4/iwn.4 b/share/man/man4/iwn.4 index 0a824e7..ff65e9f 100644 --- a/share/man/man4/iwn.4 +++ b/share/man/man4/iwn.4 @@ -25,7 +25,7 @@ .\" .\" $FreeBSD$ .\" -.Dd May 28, 2014 +.Dd August 14, 2014 .Dt IWN 4 .Os .Sh NAME @@ -46,6 +46,8 @@ You also need to select a firmware for your device. Choose one from: .Bd -ragged -offset indent .Cd "device iwn1000fw" +.Cd "device iwn105fw" +.Cd "device iwn135fw" .Cd "device iwn2000fw" .Cd "device iwn2030fw" .Cd "device iwn4965fw" @@ -70,6 +72,8 @@ module at boot time, place the following lines in .Bd -literal -offset indent if_iwn_load="YES" iwn1000fw_load="YES" +iwn105fw_load="YES" +iwn135fw_load="YES" iwn2000fw_load="YES" iwn2030fw_load="YES" iwn4965fw_load="YES" @@ -89,11 +93,13 @@ driver provides support for: .It Intel Centrino Advanced-N 6200 .It Intel Centrino Advanced-N 6205 .It Intel Centrino Advanced-N 6230 +.It Intel Centrino Advanced-N 6235 .It Intel Centrino Advanced-N + WiMAX 6250 .It Intel Centrino Ultimate-N 6300 .It Intel Centrino Wireless-N 100 .It Intel Centrino Wireless-N 105 .It Intel Centrino Wireless-N 130 +.It Intel Centrino Wireless-N 135 .It Intel Centrino Wireless-N 1000 .It Intel Centrino Wireless-N 1030 .It Intel Centrino Wireless-N 2200 diff --git a/share/man/man4/iwnfw.4 b/share/man/man4/iwnfw.4 index 7af2bb2..f72c058 100644 --- a/share/man/man4/iwnfw.4 +++ b/share/man/man4/iwnfw.4 @@ -22,7 +22,7 @@ .\" .\" $FreeBSD$ .\" -.Dd February 9, 2014 +.Dd August 14, 2014 .Dt IWNFW 4 .Os .Sh NAME @@ -36,11 +36,15 @@ kernel configuration file: .Cd "device iwnfw" .Ed .Pp -This will include three firmware images inside the kernel. +This will include firmware images for all +.Xr iwn 4 +devices inside the kernel. If you want to pick only the firmware image for your network adapter choose one of the following: .Bd -ragged -offset indent .Cd "device iwn1000fw" +.Cd "device iwn105fw" +.Cd "device iwn135fw" .Cd "device iwn2000fw" .Cd "device iwn2030fw" .Cd "device iwn4965fw" @@ -57,6 +61,8 @@ module at boot time, place the following line in .Xr loader.conf 5 : .Bd -literal -offset indent iwn1000fw_load="YES" +iwn105fw_load="YES" +iwn135fw_load="YES" iwn2000fw_load="YES" iwn2030fw_load="YES" iwn4965fw_load="YES" @@ -69,7 +75,7 @@ iwn6050fw_load="YES" .Ed .Sh DESCRIPTION This module provides access to firmware sets for the -Intel Wireless WiFi Link 1000, 2000, 2030, 4965, 5000 and 6000 series of +Intel Wireless WiFi Link 105, 135, 1000, 2000, 2030, 4965, 5000 and 6000 series of IEEE 802.11n adapters. It may be statically linked into the kernel, or loaded as a module. diff --git a/share/man/man4/urtwn.4 b/share/man/man4/urtwn.4 index 223dbbc..d63d00c 100644 --- a/share/man/man4/urtwn.4 +++ b/share/man/man4/urtwn.4 @@ -88,6 +88,7 @@ IEEE 802.11b/g/n wireless network adapters, including: .Bl -tag -width Ds -offset indent -compact .It ASUS USB-N10 NANO .It Belkin F7D1102 Surf Wireless Micro +.It D-Link DWA-125 rev D1 .It D-Link DWA-131 .It Edimax EW-7811Un .It Netgear WNA1000M diff --git a/share/man/man5/Makefile b/share/man/man5/Makefile index 541f211..e848335 100644 --- a/share/man/man5/Makefile +++ b/share/man/man5/Makefile @@ -7,6 +7,7 @@ MAN= acct.5 \ ar.5 \ a.out.5 \ + autofs.5 \ bluetooth.device.conf.5 \ bluetooth.hosts.5 \ bluetooth.protocols.5 \ diff --git a/share/man/man5/autofs.5 b/share/man/man5/autofs.5 new file mode 100644 index 0000000..a7a49b3 --- /dev/null +++ b/share/man/man5/autofs.5 @@ -0,0 +1,99 @@ +.\" Copyright (c) 2014 The FreeBSD Foundation +.\" All rights reserved. +.\" +.\" This software was developed by Edward Tomasz Napierala under sponsorship +.\" from the FreeBSD Foundation. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $FreeBSD$ +.\" +.Dd July 14, 2014 +.Dt AUTOFS 5 +.Os +.Sh NAME +.Nm autofs +.Nd "automounter filesystem" +.Sh SYNOPSIS +To compile this driver into the kernel, +place the following line in the +kernel configuration file: +.Bd -ragged -offset indent +.Cd "options AUTOFS" +.Ed +.Pp +Alternatively, to load the driver as a +module at boot time, place the following line in +.Xr loader.conf 5 : +.Bd -literal -offset indent +autofs_load="YES" +.Ed +.Sh DESCRIPTION +The +.Nm +driver is the kernel component of the automounter infrastructure. +Its job is to pass mount requests to the +.Xr automountd 8 +daemon, and pause the processes trying to access the automounted filesystem +until the mount is completed. +It is mounted by the +.Xr automount 8 . +.Sh OPTIONS +These options are available when +mounting +.Nm +file systems: +.Bl -tag -width indent +.It Cm master_options +Mount options for all filesystems specified in the map entry. +.It Cm master_prefix +Filesystem mountpoint prefix. +.El +.Sh EXAMPLES +To unmount all mounted +.Nm +filesystems: +.Pp +.Dl "umount -At autofs" +.Pp +To mount +.Nm +filesystems specified in +.Xr auto_master 5 : +.Pp +.Dl "automount" +.Sh SEE ALSO +.Xr auto_master 5 , +.Xr automount 8 , +.Xr automountd 8 , +.Xr autounmountd 8 +.Sh HISTORY +The +.Nm +driver first appeared in +.Fx 10.2 . +.Sh AUTHORS +The +.Nm +was developed by +.An Edward Tomasz Napierala Aq Mt trasz@FreeBSD.org +under sponsorship from the FreeBSD Foundation. diff --git a/share/man/man5/src.conf.5 b/share/man/man5/src.conf.5 index 3c3c9cf..2a20d7b 100644 --- a/share/man/man5/src.conf.5 +++ b/share/man/man5/src.conf.5 @@ -1,7 +1,7 @@ .\" DO NOT EDIT-- this file is automatically generated. .\" from FreeBSD: head/tools/build/options/makeman 255964 2013-10-01 07:22:04Z des .\" $FreeBSD$ -.Dd July 16, 2014 +.Dd August 19, 2014 .Dt SRC.CONF 5 .Os .Sh NAME @@ -327,6 +327,9 @@ similar to DWARF and the venerable stabs and is required for DTrace. Set to not build .Xr ctm 1 and related utilities. +.It Va WITHOUT_CUSE +.\" from FreeBSD: head/tools/build/options/WITHOUT_CUSE 270171 2014-08-19 15:40:26Z hselasky +Set to not build CUSE-related programs and libraries. .It Va WITHOUT_CXX .\" from FreeBSD: head/tools/build/options/WITHOUT_CXX 220402 2011-04-06 20:19:07Z uqs Set to not build @@ -885,9 +888,6 @@ When set, it also enforces the following options: .It .Va WITHOUT_AUTHPF .El -.It Va WITH_PIE -.\" from FreeBSD: head/tools/build/options/WITH_PIE 267233 2014-06-08 17:29:31Z bdrewery -Enable building of Position-Independent Executables (PIEs). .It Va WITHOUT_PKGBOOTSTRAP .\" from FreeBSD: head/tools/build/options/WITHOUT_PKGBOOTSTRAP 258924 2013-12-04 15:58:42Z bdrewery Set to not build diff --git a/share/man/man9/timeout.9 b/share/man/man9/timeout.9 index 7d97db6..1e82b71 100644 --- a/share/man/man9/timeout.9 +++ b/share/man/man9/timeout.9 @@ -29,7 +29,7 @@ .\" .\" $FreeBSD$ .\" -.Dd July 17, 2014 +.Dd August 21, 2014 .Dt TIMEOUT 9 .Os .Sh NAME @@ -74,7 +74,7 @@ struct callout_handle handle = CALLOUT_HANDLE_INITIALIZER(&handle); .Fn callout_init "struct callout *c" "int mpsafe" .Ft void .Fn callout_init_mtx "struct callout *c" "struct mtx *mtx" "int flags" -.Fn void +.Ft void .Fn callout_init_rm "struct callout *c" "struct rmlock *rm" "int flags" .Ft void .Fn callout_init_rw "struct callout *c" "struct rwlock *rw" "int flags" @@ -103,6 +103,7 @@ struct callout_handle handle = CALLOUT_HANDLE_INITIALIZER(&handle); .Fn callout_pending "struct callout *c" .Ft int .Fn callout_active "struct callout *c" +.Ft void .Fn callout_deactivate "struct callout *c" .Sh DESCRIPTION The function diff --git a/share/misc/bsd-family-tree b/share/misc/bsd-family-tree index c3a2d25..f4ff2bc 100644 --- a/share/misc/bsd-family-tree +++ b/share/misc/bsd-family-tree @@ -303,9 +303,18 @@ FreeBSD 5.2 | | | | | | | | NetBSD 6.1.4 | | | | | | | | | | | | OpenBSD 5.5 | + | | | | | | | | | | | DragonFly 3.8.0 + | | | | | | + | | | | | | + | | | | | DragonFly 3.8.1 + | | | | | | + | | | | | | + | | | | | DragonFly 3.6.3 + | | | | | | | FreeBSD | | | | | 9.3 | | | | + | | | | DragonFly 3.8.2 | | | | | | | | | | | | | | | @@ -640,7 +649,10 @@ NetBSD 6.0.5 2014-04-19 [NDB] NetBSD 6.1.4 2014-04-19 [NDB] OpenBSD 5.5 2014-05-01 [OBD] DragonFly 3.8.0 2014-06-04 [DFB] +DragonFly 3.8.1 2014-06-16 [DFB] +DragonFly 3.6.3 2014-06-17 [DFB] FreeBSD 9.3 2014-07-05 [FBD] +DragonFly 3.8.2 2014-08-08 [DFB] Bibliography ------------------------ diff --git a/share/mk/bsd.opts.mk b/share/mk/bsd.opts.mk index 4539e92..0dbd26b 100644 --- a/share/mk/bsd.opts.mk +++ b/share/mk/bsd.opts.mk @@ -68,8 +68,7 @@ __DEFAULT_NO_OPTIONS = \ CTF \ DEBUG_FILES \ INSTALL_AS_USER \ - INFO \ - PIE + INFO .include <bsd.mkopt.mk> diff --git a/share/mk/bsd.prog.mk b/share/mk/bsd.prog.mk index b83e2ca..c49b2bb 100644 --- a/share/mk/bsd.prog.mk +++ b/share/mk/bsd.prog.mk @@ -11,18 +11,6 @@ CFLAGS+=${COPTS} .endif -.if ${MK_PIE} != "no" && (!defined(NO_PIE) || ${NO_PIE} == "no") -.if !defined(RESCUE) && !defined(NO_SHARED) -CFLAGS+= -fPIE -pie -LDFLAGS+= -pie -.elif defined(NO_SHARED) -.if ${NO_SHARED} == "no" || ${NO_SHARED} == "NO" -CFLAGS+= -fPIE -pie -LDFLAGS+= -pie -.endif -.endif -.endif - .if ${MK_ASSERT_DEBUG} == "no" CFLAGS+= -DNDEBUG NO_WERROR= diff --git a/share/mk/src.libnames.mk b/share/mk/src.libnames.mk index 09a44ee..bc41ea2 100644 --- a/share/mk/src.libnames.mk +++ b/share/mk/src.libnames.mk @@ -17,6 +17,10 @@ LIBATF_CXXDIR= ${ROOTOBJDIR}/lib/atf/libatf-c++ LDATF_CXX?= ${LIBATF_CXXDIR}/libatf-c++.so LIBATF_CXX?= ${LIBATF_CXXDIR}/libatf-c++.a +LIBBSDSTATDIR= ${ROOTOBJDIR}/lib/libbsdstat +LDBSDSTAT?= ${LIBBSDSTATDIR}/libbsdstat.so +LIBBSDSTAT?= ${LIBBSDSTATDIR}/libbsdstat.a + LIBHEIMIPCCDIR= ${ROOTOBJDIR}/kerberos5/lib/libheimipcc LDHEIMIPCC?= ${LIBHEIMIPCCDIR}/libheimipcc.so LIBHEIMIPCC?= ${LIBHEIMIPCCDIR}/libheimipcc.a diff --git a/share/syscons/keymaps/INDEX.keymaps b/share/syscons/keymaps/INDEX.keymaps index 1ecfa74..221bf5a 100644 --- a/share/syscons/keymaps/INDEX.keymaps +++ b/share/syscons/keymaps/INDEX.keymaps @@ -4,7 +4,7 @@ # # Format <file>:<lang>:<description> # -# lang: ar bg cs da de el en es fi fr hr hu hy is it iw ja kk ko nl no pl +# lang: ar bg cs da de el en es fi fr he hr hu hy is it ja kk ko nl no pl # pt ro ru sh sk sl sv tr uk zh # lang: lang,lang # @@ -27,7 +27,7 @@ MENU:fr:Choisissez la nationalité de votre clavier MENU:pl:Wybierz uk³ad klawiatury MENU:pt:Escolha o layout do teclado MENU:es:Seleccione el idioma de su teclado -MENU:iw:êìù úãì÷îä úôù úà øçá +MENU:he:êìù úãì÷îä úôù úà øçá MENU:uk:BÉÂÅÒ¦ÔØ ÒÏÚËÌÁÄËÕ ËÌÁצÁÔÕÒÉ MENU:el:ÅðéëÝîôå ôï ðëçêôñïëüãéï ôçò êïíóüëáò MENU:hy:ÀÝïñ»ù ëï»Õݳ߳ñÇ ¹³ë³íáñáõÃÛáõÝÁ @@ -36,7 +36,7 @@ FONT:en:cp437-8x16.fnt FONT:de,fr,da,no,sv,pt,es:iso-8x16.fnt FONT:ru:koi8-r-8x16.fnt FONT:pl:iso02-8x16.fnt -FONT:iw:iso08-8x16.fnt +FONT:he:iso08-8x16.fnt FONT:uk:koi8-u-8x16.fnt FONT:el:iso07-8x16.fnt FONT:hy:haik8-8x16.fnt @@ -52,8 +52,10 @@ be.iso.acc.kbd:fr:Belge ISO-8859-1 (avec accents) be.iso.acc.kbd:pt:Belga ISO-8859-1 (com acentos) be.iso.acc.kbd:es:Belga ISO-8859-1 (con acentos) -bg.bds.ctrlcaps.kbd:bg:Bulgarian BDS -bg.phonetic.ctrlcaps.kbd:bg:Bulgarian Phonetic +bg.bds.ctrlcaps.kbd:en:Bulgarian (BDS) +bg.bds.ctrlcaps.kbd:de:Bulgarisch (BDS) +bg.phonetic.ctrlcaps.kbd:en:Bulgarian (Phonetic) +bg.phonetic.ctrlcaps.kbd:de:Bulgarisch (phonetisch) br275.iso.kbd:en:Brazilian 275 ISO-8859-1 br275.iso.kbd:de:Brasilianisch 275 ISO-8859-1 @@ -74,10 +76,13 @@ br275.cp850.kbd:pt:Brasileiro 275 Codepage 850 br275.cp850.kbd:es:Brasileño 275 Codepage 850 by.cp1131.kbd:en:Belarusian Codepage 1131 +by.cp1131.kbd:de:Weißrussisch Code page 1131 by.cp1131.kbd:fr:Biélorusse Code page 1131 +by.cp1251.kbd:de:Weißrussisch Codepage 1251 by.cp1251.kbd:en:Belarusian Codepage 1251 by.cp1251.kbd:fr:Biélorusse Code page 1251 by.iso5.kbd:en:Belarusian ISO-8859-5 +by.iso5.kbd:de:Weißrussisch ISO-8859-5 by.iso5.kbd:fr:Biélorusse ISO-8859-5 ce.iso2.kbd:en:Central European ISO-8859-2 @@ -88,6 +93,7 @@ ce.iso2.kbd:es:Centroeuropeo ISO-8859-2 colemak.iso15.acc.kbd:en:Colemak ergonomic alternative cs.latin2.qwertz.kbd:en:Czech ISO-8859-2 (QWERTZ, accent keys) +cs.latin2.qwertz.kbd:de:Tschechisch ISO-8859-2 (QWERTZ, mit Akzenten) cs.latin2.qwertz.kbd:fr:Tchèque ISO-8859-2 (QWERTZ, avec accents) cs.latin2.qwertz.kbd:es:Checo ISO-8859-2 (QWERTZ, con acentos) @@ -118,8 +124,14 @@ danish.cp865.kbd:pt:Dinamarquês Codepage 865 danish.cp865.kbd:es:Danés Codepage 865 danish.iso.macbook.kbd:da:Danish ISO-8859-1 (macbook) +danish.iso.macbook.kbd:da:Dansk ISO-8859-1 (macbook) +danish.iso.macbook.kbd:de:Dänisch ISO-8859-1 (Macbook) +danish.iso.macbook.kbd:fr:Danois ISO-8859-1 (macbook) +danish.iso.macbook.kbd:pt:Dinamarquês ISO-8859-1 (macbook) +danish.iso.macbook.kbd:es:Danés ISO-8859-1 (macbook) dutch.iso.acc.kbd:en:Dutch ISO keymap (accent keys) +dutch.iso.acc.kbd:de:Holländisch (mit Akzenten) eee_nordic.kbd:en:Nordic layout on Asus eeePC eee_nordic.kbd:fr:Norvégien phonétique sur Asus eeePC @@ -193,19 +205,19 @@ fr_CA.iso.acc.kbd:fr:Français Canadien ISO-8859-1 (avec accents) fr_CA.iso.acc.kbd:es:Francocanadiense ISO-8859-1 (con acentos) fr_CA.iso.acc.kbd:uk:æÒÁÎÃÕÚØËÏ-ËÁÎÁÄÓØËÁ ISO-8859-1 (accent keys) -german.iso.kbd:en:German ISO-8859-1 -german.iso.kbd:de:Deutsch ISO-8859-1 -german.iso.kbd:fr:Allemand ISO-8859-1 -german.iso.kbd:pt:Alemão ISO-8859-1 -german.iso.kbd:es:Alemán ISO-8859-1 -german.iso.kbd:uk:î¦ÍÅÃØËÁ ISO-8859-1 +german.iso.kbd:en:German ISO-8859-15 +german.iso.kbd:de:Deutsch ISO-8859-15 +german.iso.kbd:fr:Allemand ISO-8859-15 +german.iso.kbd:pt:Alemão ISO-8859-15 +german.iso.kbd:es:Alemán ISO-8859-15 +german.iso.kbd:uk:î¦ÍÅÃØËÁ ISO-8859-15 -german.iso.acc.kbd:en:German ISO-8859-1 (accent keys) -german.iso.acc.kbd:de:Deutsch ISO-8859-1 (mit Akzenten) -german.iso.acc.kbd:fr:Allemand ISO-8859-1 (avec accents) -german.iso.acc.kbd:pt:Alemão ISO-8859-1 (com acentos) -german.iso.acc.kbd:es:Alemán ISO-8859-1 (con acentos) -german.iso.acc.kbd:uk:î¦ÍÅÃØËÁ ISO-8859-1 (accent keys) +german.iso.acc.kbd:en:German ISO-8859-15 (accent keys) +german.iso.acc.kbd:de:Deutsch ISO-8859-15 (mit Akzenten) +german.iso.acc.kbd:fr:Allemand ISO-8859-15 (avec accents) +german.iso.acc.kbd:pt:Alemão ISO-8859-15 (com acentos) +german.iso.acc.kbd:es:Alemán ISO-8859-15 (con acentos) +german.iso.acc.kbd:uk:î¦ÍÅÃØËÁ ISO-8859-15 (accent keys) german.cp850.kbd:en:German Codepage 850 german.cp850.kbd:de:Deutsch Codeseite 850 @@ -215,14 +227,17 @@ german.cp850.kbd:es:Alemán Codepage 850 german.cp850.kbd:uk:î¦ÍÅÃØËÁ CP-850 gr.elot.acc.kbd:en:Greek ISO-8859-7 ELOT +gr.elot.acc.kbd:de:Grieschisch ISO-8859-7 ELOT gr.elot.acc.kbd:fr:Grec ISO-8859-7 ELOT gr.elot.acc.kbd:el:Åëëçíéêü ISO-8859-7 ÅËÏÔ gr.us101.acc.kbd:en:Greek ISO-8859-7 (101 keys) +gr.us101.acc.kbd:de:Grieschisch ISO-8859-7 (101 Tasten) gr.us101.acc.kbd:fr:Grec ISO-8859-7 (101 touches) gr.us101.acc.kbd:el:Åëëçíéêü ISO-8859-7 (101 ðëÞêôñùí) iw.iso8.kbd:en:Hebrew ISO-8859-8 +iw.iso8.kbd:de:Hebräisch ISO-8859-8 iw.iso8.kbd:fr:Hébreu ISO-8859-8 iw.iso8.kbd:he:ISO-8859-8 úéøáò @@ -280,15 +295,25 @@ jp.106x.kbd:es:Japonés 106x jp.106x.kbd:uk:ñÐÏÎÓØËÁ 106x jp.pc98.kbd:en:Japanese PC-98x1 +jp.pc98.kbd:de:Japanisch PC-98x1 jp.pc98.kbd:fr:Japonais PC-98x1 +jp.pc98.kbd:pt:Japonês PC-98x1 +jp.pc98.kbd:es:Japonés PC-98x1 +jp.pc98.kbd:uk:ñÐÏÎÓØËÁ PC-98x1 jp.pc98.iso.kbd:en:Japanese PC-98x1 (ISO) +jp.pc98.iso.kbd:de:Japanisch PC-98x1 (ISO) jp.pc98.iso.kbd:fr:Japonais PC-98x1 (ISO) +jp.pc98.iso.kbd:pt:Japonês PC-98x1 (ISO) +jp.pc98.iso.kbd:es:Japonés PC-98x1 (ISO) +jp.pc98.iso.kbd:uk:ñÐÏÎÓØËÁ PC-98x1 (ISO) kk.pt154.kst.kbd:en:Kazakh PT154 codepage +kk.pt154.kst.kbd:de:Kasachisch PT154 codepage kk.pt154.kst.kbd:fr:Kazakh PT154 code page -kk.pt154.io.kbd:en:Kazakh PT154 codepage -kk.pt154.io.kbd:fr:Kazakh PT154 code page +kk.pt154.io.kbd:en:Kazakh PT154 codepage (with IO) +kk.pt154.io.kbd:de:Kasachisch PT154 codepage (mit IO) +kk.pt154.io.kbd:fr:Kazakh PT154 code page (avec IO) latinamerican.kbd:en:Latin American latinamerican.kbd:de:Latein Amerikanisch @@ -301,6 +326,7 @@ latinamerican.iso.acc.kbd:fr:Amérique latine (avec accents) latinamerican.iso.acc.kbd:pt,es:América Latina (com acentos) lt.iso4.kbd:en:Lithuanian ISO-8859-4 +lt.iso4.kbd:de:Litauisch ISO-8859-4 lt.iso4.kbd:fr:Lithuanien ISO-8859-4 lt.iso4.kbd:es:Lituano ISO-8859-4 @@ -310,6 +336,7 @@ norwegian.iso.kbd:de:Norwegisch ISO-8859-1 norwegian.iso.kbd:fr:Norvégien ISO-8859-1 norwegian.iso.kbd:pt:Norueguês ISO-8859-1 norwegian.iso.kbd:es:Noruego ISO-8859-1 + norwegian.dvorak.kbd:en:Norwegian dvorak norwegian.dvorak.kbd:no:Norsk dvorak norwegian.dvorak.kbd:de:Norwegisch dvorak @@ -352,8 +379,11 @@ ru.cp866.kbd:es:Ruso Codepage 866 (alternativo) ru.cp866.kbd:uk:òÏÓ¦ÊÓØËÁ CP-866 (ÁÌØÔÅÒÎÁÔÉ×ÎÁ) ru.iso5.kbd:en:Russian ISO-8859-5 +ru.iso5.kbd:de:Russisch ISO-8859-5 ru.iso5.kbd:fr:Russe ISO-8859-5 ru.iso5.kbd:ru:òÕÓÓËÉÊ ISO-8859-5 +ru.iso5.kbd:pt:Russo ISO-8859-5 +ru.iso5.kbd:es:Ruso ISO-8859-5 ru.iso5.kbd:uk:òÏÓ¦ÊÓØËÉÊ ISO-8859-5 ru.koi8-r.kbd:en:Russian koi8-r @@ -465,6 +495,7 @@ swissgerman.macbook.acc.kbd:pt:Suiço-Alemão Macbook/Macbook Pro (com acentos) swissgerman.macbook.acc.kbd:es:Germanosuizo Macbook/Macbook Pro (con acentos) tr.iso9.q.kbd:en:Turkish ISO-8859-9 +tr.iso9.q.kbd:de:Türkisch ISO-8859-9 tr.iso9.q.kbd:fr:Turc ISO-8859-9 tr.iso9.q.kbd:uk:ôÕÒÅÃØËÁ ISO-8859-9 @@ -475,6 +506,10 @@ uk.iso.kbd:pt:Reino Unido ISO-8859-1 uk.iso.kbd:es:Británico ISO-8859-1 uk.iso-ctrl.kbd:en:United Kingdom ISO-8859-1 (Caps Lock acts as Left Ctrl) +uk.iso-ctrl.kbd:de:Vereinigtes Königreich ISO-8859-1 (Caps Lock als linke Strg) +#uk.iso-ctrl.kbd:fr:Royaume Uni ISO-8859-1 (caps lock acts as Left Ctrl) +#uk.iso-ctrl.kbd:pt:Reino Unido ISO-8859-1 (caps lock acts as Left Ctrl) +#uk.iso-ctrl.kbd:es:Británico ISO-8859-1 (caps lock acts as Left Ctrl) uk.cp850.kbd:en:United Kingdom Codepage 850 uk.cp850.kbd:de:Vereinigtes Königreich Codeseite 850 @@ -483,9 +518,13 @@ uk.cp850.kbd:pt:Reino Unido Codepage 850 uk.cp850.kbd:es:Británico Codepage 850 uk.cp850-ctrl.kbd:en:United Kingdom Codepage 850 (Caps Lock acts as Left Ctrl) +uk.cp850.kbd:de:Vereinigtes Königreich ISO-8859-1 (Caps Lock als linke Strg) +#uk.cp850.kbd:fr:Royaume Uni ISO-8859-1 (caps lock acts as Left Ctrl) +#uk.cp850.kbd:pt:Reino Unido ISO-8859-1 (caps lock acts as Left Ctrl) +#uk.cp850.kbd:es:Británico ISO-8859-1 (caps lock acts as Left Ctrl) uk.dvorak.kbd:en:United Kingdom Dvorak -uk.dvorak.kbd:de:Vereinigtes K\xf6nigreich Dvorak +uk.dvorak.kbd:de:Vereinigtes Königreich Dvorak uk.dvorak.kbd:fr:Royaume Uni Dvorak uk.dvorak.kbd:pt:Reino Unido Dvorak uk.dvorak.kbd:es:Británico Dvorak @@ -521,6 +560,10 @@ us.dvorakl.kbd:pt:Estados Unidos da América dvorakl us.dvorakl.kbd:es:Estadounidense dvorak zurdo us.dvorakp.kbd:en:United States of America Programmer Dvorak +us.dvorakp.kbd:de:US-amerikanisch (Dvorak für Programmierer) +us.dvorakp.kbd:fr:États Unis d'Amérique dvorakp +us.dvorakp.kbd:pt:Estados Unidos da América dvorakp +us.dvorakp.kbd:es:Estadounidense dvorakp us.dvorakx.kbd:en:United States of America dvorakx us.dvorakx.kbd:de:US-amerikanisch dvorakx @@ -543,14 +586,17 @@ us.unix.kbd:pt:Estados Unidos da América unix us.unix.kbd:es:Estadounidense Unix tradicional ua.iso5.kbd:en:Ukrainian ISO-8859-5 +ua.iso5.kbd:de:Ukrainisch ISO-8859-5 ua.iso5.kbd:fr:Ukrainien ISO-8859-5 ua.iso5.kbd:ru:õËÒÁÉÎÓËÉÊ ISO-8859-5 ua.iso5.kbd:uk:õËÒÁ§ÎÓØËÁ ISO-8859-5 ua.koi8-u.kbd:en:Ukrainian koi8-u +ua.koi8-u.kbd:de:Ukrainisch koi8-u ua.koi8-u.kbd:fr:Ukrainien koi8-u ua.koi8-u.kbd:uk:õËÒÁ§ÎÓØËÁ koi8-u ua.koi8-u.shift.alt.kbd:en:Ukrainian koi8-u with koi8-r (shift) +ua.koi8-u.shift.alt.kbd:de:Ukrainisch koi8-u mit koi8-r (shift) ua.koi8-u.shift.alt.kbd:fr:Ukrainien koi8-u avec koi8-r (shift) ua.koi8-u.shift.alt.kbd:uk:õËÒÁ§ÎÓØËÁ koi8-u Ú koi8-r (shift) diff --git a/share/syscons/keymaps/be.iso.acc.kbd b/share/syscons/keymaps/be.iso.acc.kbd index 83a093c..7f6d247 100644 --- a/share/syscons/keymaps/be.iso.acc.kbd +++ b/share/syscons/keymaps/be.iso.acc.kbd @@ -42,7 +42,7 @@ 036 'j' 'J' nl nl 'j' 'J' nl nl C 037 'k' 'K' vt vt 'k' 'K' vt vt C 038 'l' 'L' ff ff 'l' 'L' ff ff C - 039 'm' 'M' cr cr 'm' 'M' cr cr O + 039 'm' 'M' cr cr 'm' 'M' cr cr C 040 249 '%' nop nop dacu dacu nop nop O 041 178 179 nop nop 178 179 nop nop O 042 lshift lshift lshift lshift lshift lshift lshift lshift O @@ -53,7 +53,7 @@ 047 'v' 'V' syn syn 'v' 'V' syn syn C 048 'b' 'B' stx stx 'b' 'B' stx stx C 049 'n' 'N' so so 'n' 'N' so so C - 050 ',' '?' nop nop ',' '?' nop nop C + 050 ',' '?' nop nop ',' '?' nop nop O 051 ';' '.' nop nop ';' '.' nop nop O 052 ':' '/' nop nop ':' '/' nop nop O 053 '=' '+' nop nop dtil dtil nop nop O diff --git a/share/syscons/keymaps/cs.latin2.qwertz.kbd b/share/syscons/keymaps/cs.latin2.qwertz.kbd index fefebe0..25dbe5a 100644 --- a/share/syscons/keymaps/cs.latin2.qwertz.kbd +++ b/share/syscons/keymaps/cs.latin2.qwertz.kbd @@ -1,5 +1,5 @@ # Czech Standard Typewriter QWERTZ Keyboard -# by Rudolf Cejka <cejkar@dcse.fee.vutbr.cz> +# by Rudolf Cejka <cejkar@fit.vutbr.cz> # # $FreeBSD$ # diff --git a/share/syscons/keymaps/uk.iso-ctrl.kbd b/share/syscons/keymaps/uk.iso-ctrl.kbd index 2225c30..7b529fb 100644 --- a/share/syscons/keymaps/uk.iso-ctrl.kbd +++ b/share/syscons/keymaps/uk.iso-ctrl.kbd @@ -46,7 +46,7 @@ 040 ''' '@' nul nul ''' '@' nul nul O 041 '`' 172 nop nop '|' '|' nop nop O 042 lshift lshift lshift lshift lshift lshift lshift lshift O - 043 '#' '~' nop nop '~' '~' nop nop O + 043 '#' '~' nop nop '#' '~' nop nop O 044 'z' 'Z' sub sub 'z' 'Z' sub sub C 045 'x' 'X' can can 'x' 'X' can can C 046 'c' 'C' etx etx 'c' 'C' etx etx C diff --git a/share/syscons/keymaps/uk.iso.kbd b/share/syscons/keymaps/uk.iso.kbd index adaf9d0..b7b9c32 100644 --- a/share/syscons/keymaps/uk.iso.kbd +++ b/share/syscons/keymaps/uk.iso.kbd @@ -46,7 +46,7 @@ 040 ''' '@' nul nul ''' '@' nul nul O 041 '`' 172 nop nop '|' '|' nop nop O 042 lshift lshift lshift lshift lshift lshift lshift lshift O - 043 '#' '~' nop nop '~' '~' nop nop O + 043 '#' '~' nop nop '#' '~' nop nop O 044 'z' 'Z' sub sub 'z' 'Z' sub sub C 045 'x' 'X' can can 'x' 'X' can can C 046 'c' 'C' etx etx 'c' 'C' etx etx C diff --git a/share/vt/keymaps/INDEX.keymaps b/share/vt/keymaps/INDEX.keymaps new file mode 100644 index 0000000..8a33bc8 --- /dev/null +++ b/share/vt/keymaps/INDEX.keymaps @@ -0,0 +1,598 @@ +# $FreeBSD$ +# +# database for kbdmap(8) +# +# Format <file>:<lang>:<description> +# +# lang: ar bg cs da de el en es fi fr he hr hu hy is it ja kk ko nl no pl +# pt ro ru sh sk sl sv tr uk zh +# lang: lang,lang +# +# If lang empty use 'en' (us-english) as default. +# +# Example: +# german.iso.kbd:de:deutsch +# german.iso.kbd:en:german +# +# See also setlocal +# /usr/share/locale, /usr/X11/lib/X11/locale/locale.alias +# +# +# Language support: MENU, FONT +# +MENU:en:Choose your keyboard language +MENU:da,no,sv:Vælg dit keyboard layout +MENU:de:Wählen Sie Ihre Tastaturbelegung +MENU:fr:Choisissez la nationalité de votre clavier +MENU:pl:Wybierz ukÅ‚ad klawiatury +MENU:pt:Escolha o layout do teclado +MENU:es:Seleccione el idioma de su teclado +MENU::ךלש תדלקמה תפש ×ª× ×¨×—×‘ +MENU:uk:Bиберіть розкладку клавіатури +MENU:el:ΕπιλÎξτε το πληκτÏολόγιο της κονσόλας +MENU:hy:Ô¸Õ¶Õ¿Ö€Õ¥Ö„ Õ½Õ¿Õ¥Õ²Õ¶Õ¡Õ·Õ¡Ö€Õ« Õ¤Õ¡Õ½Õ¡Õ¾Õ¸Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨ + +# +# The font definition for "en" is the fall-back font for +# all languages. +# Add language specific font definitions only where required! +# +FONT:en:vgarom-8x16.hex + +# +be.kbd:en:Belgian +be.kbd:de:Belgisch +be.kbd:fr:Belge +be.kbd:pt,es:Belga + +be.acc.kbd:en:Belgian (accent keys) +be.acc.kbd:de:Belgisch (mit Akzenten) +be.acc.kbd:fr:Belge (avec accents) +be.acc.kbd:pt:Belga (com acentos) +be.acc.kbd:es:Belga (con acentos) + +bg.bds.kbd:en:Bulgarian (BDS) +bg.bds.kbd:de:Bulgarisch (BDS) + +bg.phonetic.kbd:en:Bulgarian (Phonetic) +bg.phonetic.kbd:de:Bulgarisch (phonetisch) + +br.kbd:en:Brazilian (accent keys) +br.kbd:de:Brasilianisch (mit Akzenten) +br.kbd:fr:Brésilien (avec accents) +br.kbd:pt:Brasileiro (com acentos) +br.kbd:es:Brasileño (con acentos) + +br.noacc.kbd:en:Brazilian (without accent keys) +br.noacc.kbd:de:Brasilianisch (ohne Akzente) +br.noacc.kbd:fr:Brésilien (sans accents) +br.noacc.kbd:pt:Brasileiro (without accent keys) +br.noacc.kbd:es:Brasileño (without accent keys) + +by.kbd:en:Belarusian +by.kbd:de:Weißrussisch +by.kbd:fr:Biélorusse + +centraleuropean.kbd:en:Central European +centraleuropean.kbd:de:Zentral Europäisch +centraleuropean.kbd:fr:Centre européen +centraleuropean.kbd:es:Centroeuropeo + +centraleuropean.qwerty.kbd:en:Central European (QWERTY) +centraleuropean.qwerty.kbd:de:Zentral Europäisch (QWERTY) +centraleuropean.qwerty.kbd:fr:Centre européen (QWERTY) +centraleuropean.qwerty.kbd:es:Centroeuropeo (QWERTY) + +colemak.acc.kbd:en:Colemak ergonomic alternative + +cz.kbd:en:Czech (QWERTZ, accent keys) +cz.kbd:de:Tschechisch (QWERTZ, mit Akzenten) +cz.kbd:fr:Tchèque (QWERTZ, avec accents) +cz.kbd:es:Checo (QWERTZ, con acentos) + +cz.kbd.from-ce:en:Czech +cz.kbd.from-ce:de:Tschechisch +cz.kbd.from-ce:fr:Tchèque +cz.kbd.from-ce:es:Checo + +cz.qwerty.kbd.from-ce:en:Czech (QWERTY) +cz.qwerty.kbd.from-ce:de:Tschechisch (QWERTY) +cz.qwerty.kbd.from-ce:fr:Tchèquey (QWERTY) +cz.qwerty.kbd.from-ce:es:Checo (QWERTY) + +dk.kbd:en:Danish +dk.kbd:da:Dansk +dk.kbd:de:Dänisch +dk.kbd:fr:Danois +dk.kbd:pt:Dinamarquês +dk.kbd:es:Danés + +dk.acc.kbd:en:Danish (accent keys) +dk.acc.kbd:da:Dansk (accent taster) +dk.acc.kbd:de:Dänisch (mit Akzenten) +dk.acc.kbd:fr:Danois (avec accents) +dk.acc.kbd:pt:Dinamarquês (com acentos) +dk.acc.kbd:es:Danés (con acentos) + +dk.kbd.from-cp865:en:Danish +dk.kbd.from-cp865:da:Dansk +dk.kbd.from-cp865:de:Dänisch +dk.kbd.from-cp865:fr:Danois +dk.kbd.from-cp865:pt:Dinamarquês +dk.kbd.from-cp865:es:Danés + +dk.macbook.kbd:da:Danish (macbook) +dk.macbook.kbd:da:Dansk (macbook) +dk.macbook.kbd:de:Dänisch (Macbook) +dk.macbook.kbd:fr:Danois (macbook) +dk.macbook.kbd:pt:Dinamarquês (macbook) +dk.macbook.kbd:es:Danés (macbook) + +nl.kbd:en:Dutch (accent keys) +nl.kbd:de:Holländisch (mit Akzenten) + +nordic.asus-eee.kbd:en:Nordic layout on Asus eeePC +nordic.asus-eee.kbd:fr:Norvégien phonétique sur Asus eeePC + +gr.kbd:en:Greek (104 keys) +gr.kbd:fr:Grec (104 touches) +gr.kbd:el:Ελληνικό (104 πλήκτÏων) + +ee.kbd.from-iso1:en:Estonian +ee.kbd.from-iso1:de:Estnisch +ee.kbd.from-iso1:fr:Estonien +ee.kbd.from-iso1:es:Estonio + +ee.kbd:en:Estonian +ee.kbd:de:Estnisch +ee.kbd:fr:Estonien +ee.kbd:es:Estonio + +ee.kbd.from-cp850:en:Estonian +ee.kbd.from-cp850:de:Estnisch +ee.kbd.from-cp850:fr:Estonien +ee.kbd.from-cp850:es:Estonio + +fi.kbd:en:Finnish +fi.kbd:de:Finnisch +fi.kbd:fr:Finlandais +fi.kbd:es:Finlandés + +fi.kbd.from-cp850:en:Finnish +fi.kbd.from-cp850:de:Finnisch +fi.kbd.from-cp850:fr:Finlandais +fi.kbd.from-cp850:es:Finlandés + +fr.kbd:en:French +fr.kbd:de:Französisch +fr.kbd:fr:Français +fr.kbd:pt:Francês +fr.kbd:es:Francés +fr.kbd:uk:Французька + +fr.acc.kbd:en:French (accent keys) +fr.acc.kbd:de:Französisch (mit Akzenten) +fr.acc.kbd:fr:Français (avec accents) +fr.acc.kbd:pt:Francês (com acentos) +fr.acc.kbd:es:Francés (con acentos) +fr.acc.kbd:uk:Французька (accent keys) + +fr.macbook.kbd:en:French Macbook/Macbook Pro (accent keys) +fr.macbook.kbd:de:Französisch Macbook/Macbook Pro (mit Aksenten) +fr.macbook.kbd:fr:Français Macbook/Macbook Pro (accent keys) +fr.macbook.kbd:pt:Francês Macbook/Macbook Pro (com acentos) +fr.macbook.kbd:es:Francés Macbook/Macbook Pro (con acentos) + +fr.dvorak.kbd:en:French Dvorak-like +fr.dvorak.kbd:de:Französisch Dvorak +fr.dvorak.kbd:fr:Français Dvorak +fr.dvorak.kbd:pt:Francês Dvorak +fr.dvorak.kbd:es:Francés Dvorak +fr.dvorak.kbd:uk:French Dvorak-like + +fr.dvorak.acc.kbd:en:French Dvorak-like (accent keys) +fr.dvorak.acc.kbd:de:Französisch Dvorak (mit Akzenten) +fr.dvorak.acc.kbd:fr:Français Dvorak (accent keys) +fr.dvorak.acc.kbd:pt:Francês Dvorak (com acentos) +fr.dvorak.acc.kbd:es:Francés Dvorak (con acentos) +fr.dvorak.acc.kbd:uk:French Dvorak-like (accent keys) + +ca.kbd:en:Canadian Bilingual + +ca-fr.kbd:en:French Canadian (accent keys) +ca-fr.kbd:de:Französisch Kanada (mit Akzenten) +ca-fr.kbd:fr:Français Canadien (avec accents) +ca-fr.kbd:es:Francocanadiense (con acentos) +ca-fr.kbd:uk:Французько-канадÑька (accent keys) + +de.kbd:en:German +de.kbd:de:Deutsch +de.kbd:fr:Allemand +de.kbd:pt:Alemão +de.kbd:es:Alemán +de.kbd:uk:Ðімецька + +de.acc.kbd:en:German (accent keys) +de.acc.kbd:de:Deutsch (mit Akzenten) +de.acc.kbd:fr:Allemand (avec accents) +de.acc.kbd:pt:Alemão (com acentos) +de.acc.kbd:es:Alemán (con acentos) +de.acc.kbd:uk:Ðімецька (accent keys) + +de.noacc.kbd:en:German (no accent keys) +de.noacc.kbd:de:Deutsch (ohne Akzente) +de.noacc.kbd:fr:Allemand (sans accents) +de.noacc.kbd:pt:Alemão (no accent keys) +de.noacc.kbd:es:Alemán (no accent keys) +de.noacc.kbd:uk:Ðімецька (no accent keys) + +de.kbd.from-cp850:en:German +de.kbd.from-cp850:de:Deutsch +de.kbd.from-cp850:fr:Allemand +de.kbd.from-cp850:pt:Alemão +de.kbd.from-cp850:es:Alemán +de.kbd.from-cp850:uk:Ðімецька + +gr.elot.acc.kbd:en:Greek ELOT +gr.elot.acc.kbd:de:Grieschisch ELOT +gr.elot.acc.kbd:fr:Grec ELOT +gr.elot.acc.kbd:el:Ελληνικό ΕΛΟΤ + +gr.101.acc.kbd:en:Greek (101 keys) +gr.101.acc.kbd:de:Grieschisch (101 Tasten) +gr.101.acc.kbd:fr:Grec (101 touches) +gr.101.acc.kbd:el:Ελληνικό (101 πλήκτÏων) + +il.kbd:en:Hebrew +il.kbd:de:Hebräisch +il.kbd:fr:Hébreu +il.kbd::תירבע + +hr.kbd:en:Croatian +hr.kbd:de:Kroatisch +hr.kbd:fr:Croate +hr.kbd:es:Croata + +hu.101.kbd:en:Hungarian (101 keys) +hu.101.kbd:de:Ungarisch (101 Tasten) +hu.101.kbd:fr:Hongrois (101 touches) +hu.101.kbd:es:Húngaro (101) + +hu.102.kbd:en:Hungarian (102 keys) +hu.102.kbd:de:Ungarisch (102 Tasten) +hu.102.kbd:fr:Hongrois (102 touches) +hu.102.kbd:es:Húngaro (102) + +am.kbd:hy:Õ€Õ¡ÕµÕ¥Ö€Õ¥Õ¶ Õ°Õ¶Õ¹ÕµÕ¸Ö‚Õ¶Õ¡ÕµÕ«Õ¶ (Phonetic) Õ¤Õ¡Õ½Õ¡Õ¾Õ¸Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶ +am.kbd:ru:ÐрмÑнÑÐºÐ°Ñ Ñ„Ð¾Ð½ÐµÑ‚Ð¸Ñ‡ÐµÑÐºÐ°Ñ Ñ€Ð°Ñкладка +am.kbd:en:Armenian phonetic layout +am.kbd:fr:Arménien phonétique +am.kbd:de:Armenische phonetische Tastenbelegung + +is.kbd:en:Icelandic +is.kbd:de:Isländisch +is.kbd:fr:Islandais +is.kbd:pt:Islandês +is.kbd:es:Islandés + +is.acc.kbd:en:Icelandic (accent keys) +is.acc.kbd:de:Isländisch (mit Akzenten) +is.acc.kbd:fr:Islandais (avec accents) +is.acc.kbd:pt:Islandês (com acentos) +is.acc.kbd:es:Islandés (con acentos) + +it.kbd:en:Italian +it.kbd:de:Italienisch +it.kbd:fr:Italien +it.kbd:pt,es:Italiano +it.kbd:uk:ІталійÑька + +jp.kbd:en:Japanese 106 +jp.kbd:de:Japanisch 106 +jp.kbd:fr:Japonais 106 +jp.kbd:pt:Japonês 106 +jp.kbd:es:Japonés 106 +jp.kbd:uk:ЯпонÑька 106 + +jp.capsctrl.kbd:en:Japanese 106x +jp.capsctrl.kbd:de:Japanisch 106x +jp.capsctrl.kbd:fr:Japonais 106x +jp.capsctrl.kbd:pt:Japonês 106x +jp.capsctrl.kbd:es:Japonés 106x +jp.capsctrl.kbd:uk:ЯпонÑька 106x + +jp.pc98.kbd:en:Japanese PC-98x1 +jp.pc98.kbd:de:Japanisch PC-98x1 +jp.pc98.kbd:fr:Japonais PC-98x1 +jp.pc98.kbd:pt:Japonês PC-98x1 +jp.pc98.kbd:es:Japonés PC-98x1 +jp.pc98.kbd:uk:ЯпонÑька PC-98x1 + +jp.pc98.iso.kbd:en:Japanese PC-98x1 (ISO) +jp.pc98.iso.kbd:de:Japanisch PC-98x1 (ISO) +jp.pc98.iso.kbd:fr:Japonais PC-98x1 (ISO) +jp.pc98.iso.kbd:pt:Japonês PC-98x1 (ISO) +jp.pc98.iso.kbd:es:Japonés PC-98x1 (ISO) +jp.pc98.iso.kbd:uk:ЯпонÑька PC-98x1 (ISO) + +kz.kst.kbd:en:Kazakh +kz.kst.kbd:de:Kasachisch +kz.kst.kbd:fr:Kazakh + +kz.io.kbd:en:Kazakh +kz.io.kbd:de:Kasachisch +kz.io.kbd:fr:Kazakh + +latinamerican.kbd:en:Latin American +latinamerican.kbd:de:Latein Amerikanisch +latinamerican.kbd:fr:Amérique latine +latinamerican.kbd:pt,es:América Latina + +latinamerican.acc.kbd:en:Latin American (accent keys) +latinamerican.acc.kbd:de:Latein Amerikanisch (mit Akzenten) +latinamerican.acc.kbd:fr:Amérique latine (avec accents) +latinamerican.acc.kbd:pt,es:América Latina (com acentos) + +lt.kbd:en:Lithuanian +lt.kbd:de:Litauisch +lt.kbd:fr:Lithuanien +lt.kbd:es:Lituano + +no.kbd:en:Norwegian +no.kbd:no:Norsk +no.kbd:de:Norwegisch +no.kbd:fr:Norvégien +no.kbd:pt:Norueguês +no.kbd:es:Noruego + +no.dvorak.kbd:en:Norwegian dvorak +no.dvorak.kbd:no:Norsk dvorak +no.dvorak.kbd:de:Norwegisch dvorak +no.dvorak.kbd:fr:Norvégien dvorak +no.dvorak.kbd:pt:Norueguês dvorak +no.dvorak.kbd:es:Noruego Idvorak + +pl.kbd:en:Polish (programmer's) +pl.kbd:de:Polnisch (für Programmierer) +pl.kbd:fr:Polonais (pour programmeurs) +pl.kbd:pl:Polska (programisty) +pl.kbd:pt:Polonês (para programadores) +pl.kbd:es:Polaco (para programadores) + +pl.dvorak.kbd:en:Polish Dvorak +pl.dvorak.kbd:de:Polnisch Dvorak +pl.dvorak.kbd:fr:Polonais Dvorak +pl.dvorak.kbd:pl:Polska Dvorak +pl.dvorak.kbd:pt:Polonês Dvorak +pl.dvorak.kbd:es:Polaco Dvorak + +pt.kbd:en:Portuguese +pt.kbd:de:Portugisisch +pt.kbd:fr:Portugais +pt.kbd:pt:Português +pt.kbd:es:Portugués + +pt.acc.kbd:en:Portuguese (accent keys) +pt.acc.kbd:de:Portugisisch (mit Akzenten) +pt.acc.kbd:fr:Portugais (avec accents) +pt.acc.kbd:pt:Português (com acentos) +pt.acc.kbd:es:Portugués (con acentos) + +ru.kbd.from-cp866:en:Russian (alternative) +ru.kbd.from-cp866:de:Russisch (alternativ) +ru.kbd.from-cp866:ru:РуÑÑкий (alternative) +ru.kbd.from-cp866:fr:Russe (alternative) +ru.kbd.from-cp866:pt:Russo (alternativo) +ru.kbd.from-cp866:es:Ruso (alternativo) +ru.kbd.from-cp866:uk:РоÑійÑька (альтернативна) + +ru.kbd.from-iso5:en:Russian +ru.kbd.from-iso5:de:Russisch +ru.kbd.from-iso5:fr:Russe +ru.kbd.from-iso5:ru:РуÑÑкий +ru.kbd.from-iso5:pt:Russo +ru.kbd.from-iso5:es:Ruso +ru.kbd.from-iso5:uk:РоÑійÑький + +ru.kbd:en:Russian +ru.kbd:de:Russisch +ru.kbd:ru:РуÑÑкий +ru.kbd:fr:Russe +ru.kbd:pt:Russo +ru.kbd:es:Ruso +ru.kbd:uk:РоÑійÑька + +ru.shift.kbd:en:Russian (shift) +ru.shift.kbd:de:Russisch (shift) +ru.shift.kbd:ru:РуÑÑкий (shift) +ru.shift.kbd:fr:Russe (shift) +ru.shift.kbd:pt:Russo (shift) +ru.shift.kbd:es:Ruso (shift) +ru.shift.kbd:uk:РоÑійÑька (shift) + +ru.win.kbd:en:Russian (winkeys) +ru.win.kbd:de:Russisch (winkeys) +ru.win.kbd:ru:РуÑÑкий (winkeys) +ru.win.kbd:fr:Russe (winkeys) +ru.win.kbd:pt:Russo (winkeys) +ru.win.kbd:es:Ruso (winkeys) +ru.win.kbd:uk:РоÑійÑька (winkeys) + +es.dvorak.kbd:en:Spanish Dvorak +es.dvorak.kbd:de:Spanisch Dvorak +es.dvorak.kbd:fr:Espagnol Dvorak +es.dvorak.kbd:pt:Espanhol Dvorak +es.dvorak.kbd:es:Español Dvorak + +es.kbd.from-iso1:en:Spanish +es.kbd.from-iso1:de:Spanisch +es.kbd.from-iso1:fr:Espagnol +es.kbd.from-iso1:pt:Espanhol +es.kbd.from-iso1:es:Español + +es.acc.kbd:en:Spanish (accent keys) +es.acc.kbd:de:Spanisch (accent keys) +es.acc.kbd:fr:Espagnol (avec accents) +es.acc.kbd:pt:Espanhol (com acentos) +es.acc.kbd:es:Español (con acentos) + +es.kbd:en:Spanish (accent keys) +es.kbd:de:Spanisch (accent keys) +es.kbd:fr:Espagnol (avec accents) +es.kbd:pt:Espanhol (com acentos) +es.kbd:es:Español (con acentos) + +si.kbd:en:Slovenian +si.kbd:de:Slovenisch +si.kbd:fr:Slovène +si.kbd:pt:Eslovênio +si.kbd:es:Esloveno + +sk.kbd:en:Slovak +sk.kbd:de:Slovakisch +sk.kbd:fr:Slovène +sk.kbd:es:Eslovaco + +se.kbd:en:Swedish +se.kbd:de:Schwedisch +se.kbd:fr:Suédois +se.kbd:pt,es:Sueco + +se.kbd.from-cp850:en:Swedish +se.kbd.from-cp850:de:Schwedisch +se.kbd.from-cp850:fr:Suédois +se.kbd.from-cp850:pt,es:Sueco + +ch-fr.kbd:en:Swiss-French +ch-fr.kbd:de:Schweiz-Französisch +ch-fr.kbd:fr:Suisse-Français +ch-fr.kbd:es:Francosuizo + +ch-fr.acc.kbd:en:Swiss-French (accent keys) +ch-fr.acc.kbd:de:Schweiz-Französisch (mit Akzenten) +ch-fr.acc.kbd:fr:Suisse-Français (avec accents) +ch-fr.acc.kbd:es:Francosuizo (con acentos) + +ch-fr.kbd.from-cp850:en:Swiss-French +ch-fr.kbd.from-cp850:de:Schweiz-Französisch +ch-fr.kbd.from-cp850:fr:Suisse-Français +ch-fr.kbd.from-cp850:es:Francosuizo + +ch.kbd:en:Swiss-German +ch.kbd:de:Schweiz-Deutsch +ch.kbd:fr:Suisse-Allemand +ch.kbd:pt:Suiço-Alemão +ch.kbd:es:Germanosuizo + +ch.acc.kbd:en:Swiss-German (accent keys) +ch.acc.kbd:de:Schweiz-Deutsch (mit Akzenten) +ch.acc.kbd:fr:Suisse-Allemand (avec accents) +ch.acc.kbd:pt:Suiço-Alemão (com acentos) +ch.acc.kbd:es:Germanosuizo (con acentos) + +ch.kbd.from-cp850:en:Swiss-German +ch.kbd.from-cp850:de:Schweiz-Deutsch +ch.kbd.from-cp850:fr:Suisse-Allemand +ch.kbd.from-cp850:pt:Suiço-Alemão +ch.kbd.from-cp850:es:Germanosuizo + +ch.macbook.acc.kbd:en:Swiss-German Macbook/Macbook Pro (accent keys) +ch.macbook.acc.kbd:de:Schweiz-Deutsch Macbook/Macbook Pro (mit Akzenten) +ch.macbook.acc.kbd:fr:Suisse-Allemand Macbook/Macbook Pro (avec accents) +ch.macbook.acc.kbd:pt:Suiço-Alemão Macbook/Macbook Pro (com acentos) +ch.macbook.acc.kbd:es:Germanosuizo Macbook/Macbook Pro (con acentos) + +tr.kbd:en:Turkish +tr.kbd:de:Türkisch +tr.kbd:fr:Turc +tr.kbd:uk:Турецька + +uk.kbd:en:United Kingdom +uk.kbd:de:Vereinigtes Königreich +uk.kbd:fr:Royaume Uni +uk.kbd:pt:Reino Unido +uk.kbd:es:Británico + +uk.capsctrl.kbd:en:United Kingdom (Caps Lock acts as Left Ctrl) +uk.capsctrl.kbd:de:Vereinigtes Königreich (Caps Lock als linke Strg) +#uk.iso-ctrl.kbd:fr:Royaume Uni (caps lock acts as Left Ctrl) +#uk.iso-ctrl.kbd:pt:Reino Unido (caps lock acts as Left Ctrl) +#uk.iso-ctrl.kbd:es:Británico (caps lock acts as Left Ctrl) + +uk.dvorak.kbd:en:United Kingdom Dvorak +uk.dvorak.kbd:de:Vereinigtes Königreich Dvorak +uk.dvorak.kbd:fr:Royaume Uni Dvorak +uk.dvorak.kbd:pt:Reino Unido Dvorak +uk.dvorak.kbd:es:Británico Dvorak + +us.kbd:en:United States of America +us.kbd:de:US-amerikanisch +us.kbd:fr:États Unis d'Amérique +us.kbd:pt:Estados Unidos da América +us.kbd:es:Estadounidense + +us.acc.kbd:en:United States of America (accent keys) +us.acc.kbd:de:US-amerikanisch (mit Akzenten) +us.acc.kbd:fr:États Unis d'Amérique (avec accents) +us.acc.kbd:pt:Estados Unidos da América (com acentos) +us.acc.kbd:es:Estadounidense (con acentos) + +us.dvorak.kbd:en:United States of America dvorak +us.dvorak.kbd:de:US-amerikanisch dvorak +us.dvorak.kbd:fr:États Unis d'Amérique dvorak +us.dvorak.kbd:pt:Estados Unidos da América dvorak +us.dvorak.kbd:es:Estadounidense dvorak + +us.dvorakr.kbd:en:United States of America righthand dvorak +us.dvorakr.kbd:de:US-amerikanisch dvorak rechte Hand +us.dvorakr.kbd:fr:États Unis d'Amérique dvorakr +us.dvorakr.kbd:pt:Estados Unidos da América dvorakr +us.dvorakr.kbd:es:Estadounidense dvorak diestro + +us.dvorakl.kbd:en:United States of America lefthand dvorak +us.dvorakl.kbd:de:US-amerikanisch dvorak linke Hand +us.dvorakl.kbd:fr:États Unis d'Amérique dvorakl +us.dvorakl.kbd:pt:Estados Unidos da América dvorakl +us.dvorakl.kbd:es:Estadounidense dvorak zurdo + +us.dvorakp.kbd:en:United States of America Programmer Dvorak +us.dvorakp.kbd:de:US-amerikanisch (Dvorak für Programmierer) +us.dvorakp.kbd:fr:États Unis d'Amérique dvorakp +us.dvorakp.kbd:pt:Estados Unidos da América dvorakp +us.dvorakp.kbd:es:Estadounidense dvorakp + +us.dvorakx.kbd:en:United States of America dvorakx +us.dvorakx.kbd:de:US-amerikanisch dvorakx +us.dvorakx.kbd:fr:États Unis d'Amérique dvorakx +us.dvorakx.kbd:pt:Estados Unidos da América dvorakx +us.dvorakx.kbd:es:Estadounidense dvorakx + +us.emacs.kbd:en:United States of America Emacs optimized layout +us.emacs.kbd:de:US-amerikanisch für Emacs optimiert +us.emacs.kbd:fr:États Unis d'Amérique emacs +us.emacs.kbd:pt:Estados Unidos da América emacs +us.emacs.kbd:es:Estadounidense optimizado para Emacs + +us.ctrl.kbd:en:United States of America (Caps Lock acts as Left Ctrl) + +us.unix.kbd:en:United States of America Traditional Unix Workstation +us.unix.kbd:de:US-amerikanisch traditionelles Unix Layout +us.unix.kbd:fr:États Unis d'Amérique unix +us.unix.kbd:pt:Estados Unidos da América unix +us.unix.kbd:es:Estadounidense Unix tradicional + +ua.kbd.from-iso5:en:Ukrainian +ua.kbd.from-iso5:de:Ukrainisch +ua.kbd.from-iso5:fr:Ukrainien +ua.kbd.from-iso5:ru:УкраинÑкий +ua.kbd.from-iso5:uk:УкраїнÑька + +ua.kbd:en:Ukrainian +ua.kbd:de:Ukrainisch +ua.kbd:fr:Ukrainien +ua.kbd:uk:УкраїнÑька + +ua.shift.alt.kbd:en:Ukrainian (with Russian) (shift) +ua.shift.alt.kbd:de:Ukrainisch (mit Russisch) (shift) +ua.shift.alt.kbd:fr:Ukrainien (koi8-u avec koi8-r) (shift) +ua.shift.alt.kbd:uk:УкраїнÑька (koi8-u з) koi8-r (shift) diff --git a/share/vt/keymaps/Makefile b/share/vt/keymaps/Makefile index 35944a9..4e0b64c 100644 --- a/share/vt/keymaps/Makefile +++ b/share/vt/keymaps/Makefile @@ -1,6 +1,88 @@ # $FreeBSD$ -FILES= pl.kbd ua.kbd ua.shift.alt.kbd +FILES= INDEX.keymaps \ + am.kbd \ + be.acc.kbd \ + be.kbd \ + bg.bds.kbd \ + bg.phonetic.kbd \ + br.kbd \ + br.noacc.kbd \ + by.kbd \ + ca.kbd \ + ca-fr.kbd \ + centraleuropean.kbd \ + centraleuropean.qwerty.kbd \ + ch-fr.acc.kbd \ + ch-fr.kbd \ + ch.acc.kbd \ + ch.kbd \ + ch.macbook.acc.kbd \ + colemak.acc.kbd \ + cz.kbd \ + de.acc.kbd \ + de.noacc.kbd \ + de.kbd \ + dk.acc.kbd \ + dk.kbd \ + dk.macbook.kbd \ + ee.kbd \ + es.acc.kbd \ + es.dvorak.kbd \ + es.kbd \ + fi.kbd \ + fr.dvorak.acc.kbd \ + fr.dvorak.kbd \ + fr.macbook.kbd \ + gr.101.acc.kbd \ + gr.elot.acc.kbd \ + gr.kbd \ + hr.kbd \ + hu.101.kbd \ + hu.102.kbd \ + il.kbd \ + is.acc.kbd \ + is.kbd \ + it.kbd \ + jp.capsctrl.kbd \ + jp.kbd \ + jp.pc98.iso.kbd \ + jp.pc98.kbd \ + kz.io.kbd \ + kz.kst.kbd \ + latinamerican.acc.kbd \ + latinamerican.kbd \ + lt.kbd \ + nl.kbd \ + no.dvorak.kbd \ + no.kbd \ + nordic.asus-eee.kbd \ + pl.dvorak.kbd \ + pl.kbd \ + pt.acc.kbd \ + pt.kbd \ + ru.kbd \ + ru.shift.kbd \ + ru.win.kbd \ + se.kbd \ + si.kbd \ + sk.kbd \ + tr.kbd \ + ua.kbd \ + ua.shift.alt.kbd \ + uk.capsctrl.kbd \ + uk.dvorak.kbd \ + uk.kbd \ + us.acc.kbd \ + us.ctrl.kbd \ + us.dvorak.kbd \ + us.dvorakl.kbd \ + us.dvorakp.kbd \ + us.dvorakr.kbd \ + us.dvorakx.kbd \ + us.emacs.kbd \ + us.kbd \ + us.unix.kbd \ FILESDIR= ${SHAREDIR}/vt/keymaps diff --git a/share/vt/keymaps/am.kbd b/share/vt/keymaps/am.kbd new file mode 100644 index 0000000..0c32243 --- /dev/null +++ b/share/vt/keymaps/am.kbd @@ -0,0 +1,247 @@ +# $FreeBSD$ +# +# FreeBSD Armenian Phonetic keyboard layout +# by Vahe Khachikyan <vahe@khachikyan.de> +# US <=> Armphonetic lock (AltGrLock) Alt+Ctrl+Shift +# US <=> Armphonetic shift (AltGr) Alt +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc nop nop debug esc O + 002 '1' '!' nop nop 0x0567 0x0537 nop nop O + 003 '2' '@' nul nul 0x0569 0x0539 nul nul O + 004 '3' '#' nop nop 0x0583 0x0553 nop nop O + 005 '4' '$' nop nop 0x0571 0x0541 nop nop O + 006 '5' '%' nop nop 0x057b 0x054b nop nop O + 007 '6' '^' rs rs ')' '(' rs rs O + 008 '7' '&' nop nop 0x0587 '%' nop nop O + 009 '8' '*' nop nop 0x057c 0x054c nop nop O + 010 '9' '(' nop nop 0x0579 0x0549 nop nop O + 011 '0' ')' nop nop 0x0573 0x0543 nop nop O + 012 '-' '_' us us 0x2014 '-' us us O + 013 '=' '+' nop nop 0x056a 0x053a nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 0x0584 0x0554 dc1 dc1 C + 017 'w' 'W' etb etb 0x0578 0x0548 etb etb C + 018 'e' 'E' enq enq 0x0565 0x0535 enq enq C + 019 'r' 'R' dc2 dc2 0x0580 0x0550 dc2 dc2 C + 020 't' 'T' dc4 dc4 0x057f 0x054f dc4 dc4 C + 021 'y' 'Y' em em 0x0568 0x0538 em em C + 022 'u' 'U' nak nak 0x0582 0x0552 nak nak C + 023 'i' 'I' ht ht 0x056b 0x053b ht ht C + 024 'o' 'O' si si 0x0585 0x0555 si si C + 025 'p' 'P' dle dle 0x057a 0x054a dle dle C + 026 '[' '{' esc esc 0x056d 0x053d esc esc O + 027 ']' '}' gs gs 0x056e 0x053e gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl alock lctrl alock O + 030 'a' 'A' soh soh 0x0561 0x0531 soh soh C + 031 's' 'S' dc3 dc3 0x057d 0x054d dc3 dc3 C + 032 'd' 'D' eot eot 0x0564 0x0534 eot eot C + 033 'f' 'F' ack ack 0x0586 0x0556 ack ack C + 034 'g' 'G' bel bel 0x0563 0x0533 bel bel C + 035 'h' 'H' bs bs 0x0570 0x0540 bs bs C + 036 'j' 'J' nl nl 0x0575 0x0545 nl nl C + 037 'k' 'K' vt vt 0x056f 0x053f vt vt C + 038 'l' 'L' ff ff 0x056c 0x053c ff ff C + 039 ';' ':' nop nop 0x0589 0x2026 nop nop O + 040 ''' '"' nop nop 0x055b 0x055a nop nop O + 041 '`' '~' nop nop 0x055d 0x055c nop nop O + 042 lshift lshift lshift lshift lshift lshift alock alock O + 043 '\' '|' fs fs 0x0577 0x0547 fs fs O + 044 'z' 'Z' sub sub 0x0566 0x0536 sub sub C + 045 'x' 'X' can can 0x0572 0x0542 can can C + 046 'c' 'C' etx etx 0x0581 0x0551 etx etx C + 047 'v' 'V' syn syn 0x057e 0x054e syn syn C + 048 'b' 'B' stx stx 0x0562 0x0532 stx stx C + 049 'n' 'N' so so 0x0576 0x0546 so so C + 050 'm' 'M' cr cr 0x0574 0x0544 cr cr C + 051 ',' '<' nop nop ',' 0xab nop nop O + 052 '.' '>' nop nop '.' 0xbb nop nop O + 053 '/' '?' nop nop 0xe000 0x055e nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' nop nop '*' '*' O + 056 lalt lalt lalt alock lalt lalt lalt alock O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 nop nop nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr nscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + 109 nop nop nop nop nop nop nop nop O + 110 nop nop nop nop nop nop nop nop O + 111 nop nop nop nop nop nop nop nop O + 112 nop nop nop nop nop nop nop nop O + 113 nop nop nop nop nop nop nop nop O + 114 nop nop nop nop nop nop nop nop O + 115 nop nop nop nop nop nop nop nop O + 116 nop nop nop nop nop nop nop nop O + 117 nop nop nop nop nop nop nop nop O + 118 nop nop nop nop nop nop nop nop O + 119 nop nop nop nop nop nop nop nop O + 120 nop nop nop nop nop nop nop nop O + 121 nop nop nop nop nop nop nop nop O + 122 nop nop nop nop nop nop nop nop O + 123 nop nop nop nop nop nop nop nop O + 124 nop nop nop nop nop nop nop nop O + 125 nop nop nop nop nop nop nop nop O + 126 nop nop nop nop nop nop nop nop O + 127 nop nop nop nop nop nop nop nop O + 128 nop nop nop nop nop nop nop nop O + 129 nop nop esc esc esc esc debug esc O + 130 0x0567 0x0537 nop nop '1' '!' nop nop O + 131 0x0569 0x0539 nul nul '2' '@' nul nul O + 132 0x0583 0x0553 nop nop '3' '#' nop nop O + 133 0x0571 0x0541 nop nop '4' '$' nop nop O + 134 0x057b 0x054b nop nop '5' '%' nop nop O + 135 ')' '(' rs rs '6' '^' rs rs O + 136 0x0587 '%' nop nop '7' '&' nop nop O + 137 0x057c 0x054c nop nop '8' '*' nop nop O + 138 0x0579 0x0549 nop nop '9' '(' nop nop O + 139 0x0573 0x0543 nop nop '0' ')' nop nop O + 140 0x2014 '-' us us '-' '_' us us O + 141 0x056a 0x053a nop nop '=' '+' nop nop O + 142 bs bs del del bs bs del del O + 143 ht btab nop nop ht btab nop nop O + 144 0x0584 0x0554 dc1 dc1 'q' 'Q' dc1 dc1 C + 145 0x0578 0x0548 etb etb 'w' 'W' etb etb C + 146 0x0565 0x0535 enq enq 'e' 'E' enq enq C + 147 0x0580 0x0550 dc2 dc2 'r' 'R' dc2 dc2 C + 148 0x057f 0x054f dc4 dc4 't' 'T' dc4 dc4 C + 149 0x0568 0x0538 em em 'y' 'Y' em em C + 150 0x0582 0x0552 nak nak 'u' 'U' nak nak C + 151 0x056b 0x053b ht ht 'i' 'I' ht ht C + 152 0x0585 0x0555 si si 'o' 'O' si si C + 153 0x057a 0x054a dle dle 'p' 'P' dle dle C + 154 0x056d 0x053d esc esc '[' '{' esc esc O + 155 0x056e 0x053e gs gs ']' '}' gs gs O + 156 cr cr nl nl cr cr nl nl O + 157 lctrl lctrl lctrl lctrl lctrl alock lctrl alock O + 158 0x0561 0x0531 soh soh 'a' 'A' soh soh C + 159 0x057d 0x054d dc3 dc3 's' 'S' dc3 dc3 C + 160 0x0564 0x0534 eot eot 'd' 'D' eot eot C + 161 0x0586 0x0556 ack ack 'f' 'F' ack ack C + 162 0x0563 0x0533 bel bel 'g' 'G' bel bel C + 163 0x0570 0x0540 bs bs 'h' 'H' bs bs C + 164 0x0575 0x0545 nl nl 'j' 'J' nl nl C + 165 0x056f 0x053f vt vt 'k' 'K' vt vt C + 166 0x056c 0x053c ff ff 'l' 'L' ff ff C + 167 0x0589 0x2026 nop nop ';' ':' nop nop O + 168 0x055b 0x055a nop nop ''' '"' nop nop O + 169 0x055d 0x055c nop nop '`' '~' nop nop O + 170 lshift lshift lshift lshift lshift lshift alock alock O + 171 0x0577 0x0547 fs fs '|' '|' fs fs O + 172 0x0566 0x0536 sub sub 'z' 'Z' sub sub C + 173 0x0572 0x0542 can can 'x' 'X' can can C + 174 0x0581 0x0551 etx etx 'c' 'C' etx etx C + 175 0x057e 0x054e syn syn 'v' 'V' syn syn C + 176 0x0562 0x0532 stx stx 'b' 'B' stx stx C + 177 0x0576 0x0546 so so 'n' 'N' so so C + 178 0x0574 0x0544 cr cr 'm' 'M' cr cr C + 179 ',' 0xab nop nop ',' '<' nop nop O + 180 '.' 0xbb nop nop '.' '>' nop nop O + 181 0xe000 0x055e nop nop '/' '?' nop nop O + 182 rshift rshift rshift rshift rshift rshift rshift rshift O + 183 nop nop '*' '*' '*' '*' '*' '*' O + 184 lalt lalt lalt alock lalt lalt lalt alock O + 185 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 186 clock clock clock clock clock clock clock clock O + 187 scr01 scr11 fkey25 fkey37 fkey01 fkey13 scr01 scr11 O + 188 scr02 scr12 fkey26 fkey38 fkey02 fkey14 scr02 scr12 O + 189 scr03 scr13 fkey27 fkey39 fkey03 fkey15 scr03 scr13 O + 190 scr04 scr14 fkey28 fkey40 fkey04 fkey16 scr04 scr14 O + 191 scr05 scr15 fkey29 fkey41 fkey05 fkey17 scr05 scr15 O + 192 scr06 scr16 fkey30 fkey42 fkey06 fkey18 scr06 scr16 O + 193 scr07 scr07 fkey31 fkey43 fkey07 fkey19 scr07 scr07 O + 194 scr08 scr08 fkey32 fkey44 fkey08 fkey20 scr08 scr08 O + 195 scr09 scr09 fkey33 fkey45 fkey09 fkey21 scr09 scr09 O + 196 scr10 scr10 fkey34 fkey46 fkey10 fkey22 scr10 scr10 O + 197 nlock nlock nlock nlock nlock nlock nlock nlock O + 198 slock slock slock slock slock slock slock slock O + 199 '7' '7' '7' '7' fkey49 '7' '7' '7' N + 200 '8' '8' '8' '8' fkey50 '8' '8' '8' N + 201 '9' '9' '9' '9' fkey51 '9' '9' '9' N + 202 '-' '-' '-' '-' fkey52 '-' '-' '-' N + 203 '4' '4' '4' '4' fkey53 '4' '4' '4' N + 204 '5' '5' '5' '5' fkey54 '5' '5' '5' N + 205 '6' '6' '6' '6' fkey55 '6' '6' '6' N + 206 '+' '+' '+' '+' fkey56 '+' '+' '+' N + 207 '1' '1' '1' '1' fkey57 '1' '1' '1' N + 208 '2' '2' '2' '2' fkey58 '2' '2' '2' N + 209 '3' '3' '3' '3' fkey59 '3' '3' '3' N + 210 '0' '0' '0' '0' fkey60 '0' '0' '0' N + 211 '.' '.' '.' '.' del '.' boot boot N + 212 nop nop nop nop nop nop nop nop O + 213 nop nop nop nop nop nop nop nop O + 214 nop nop nop nop nop nop nop nop O + 215 scr11 scr11 fkey35 fkey47 fkey11 fkey23 scr11 scr11 O + 216 scr12 scr12 fkey36 fkey48 fkey12 fkey24 scr12 scr12 O + 217 cr cr nl nl cr cr nl nl O + 218 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 219 '/' '/' '/' '/' '/' '/' '/' '/' N + 220 nop nop debug debug nscr nscr nop nop O + 221 ralt ralt ralt ralt ralt ralt ralt ralt O + 222 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 223 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 224 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 225 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 226 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 227 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 228 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 229 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 230 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 231 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 232 susp nop slock saver slock saver susp nop O + 233 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 234 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 235 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 236 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/be.acc.kbd b/share/vt/keymaps/be.acc.kbd new file mode 100644 index 0000000..8f43a00 --- /dev/null +++ b/share/vt/keymaps/be.acc.kbd @@ -0,0 +1,137 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '&' '1' nop nop '|' '|' nop nop O + 003 0xe9 '2' nul nul '@' '@' nul nul O + 004 '"' '3' nop nop '#' '#' nop nop O + 005 ''' '4' nop nop ''' '4' nop nop O + 006 '(' '5' nop nop '(' '5' nop nop O + 007 0xa7 '6' rs rs '^' '^' rs rs O + 008 0xe8 '7' nop nop 0xe8 '7' nop nop O + 009 '!' '8' nop nop '!' '8' nop nop O + 010 0xe7 '9' nop nop '{' '{' nop nop O + 011 0xe0 '0' nop nop '}' '}' nop nop O + 012 ')' 0xb0 nop nop ')' 0xb0 nop nop O + 013 '-' '_' us us '-' '_' us us O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'a' 'A' soh soh 'a' 'A' soh soh C + 017 'z' 'Z' sub sub 'z' 'Z' sub sub C + 018 'e' 'E' enq enq 0x20ac 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 dcir duml esc esc '[' '[' esc esc O + 027 '$' '*' gs gs ']' ']' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 'm' 'M' cr cr 'm' 'M' cr cr C + 040 0xf9 '%' nop nop dacu dacu nop nop O + 041 0xb2 0xb3 nop nop 0xb2 0xb3 nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 0xb5 0xa3 nop nop dgra dgra nop nop O + 044 'w' 'W' etb etb 'w' 'W' etb etb C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 ',' '?' nop nop ',' '?' nop nop O + 051 ';' '.' nop nop ';' '.' nop nop O + 052 ':' '/' nop nop ':' '/' nop nop O + 053 '=' '+' nop nop dtil dtil nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' fs fs '\' '\' '\' fs O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + + dgra '`' ( 'a' 0xe0 ) ( 'A' 0xc0 ) ( 'e' 0xe8 ) ( 'E' 0xc8 ) + ( 'i' 0xec ) ( 'I' 0xcc ) ( 'o' 0xf2 ) ( 'O' 0xd2 ) + ( 'u' 0xf9 ) ( 'U' 0xd9 ) + + dacu 0xb4 ( 'a' 0xe1 ) ( 'A' 0xc1 ) ( 'e' 0xe9 ) ( 'E' 0xc9 ) + ( 'i' 0xed ) ( 'I' 0xcd ) ( 'o' 0xf3 ) ( 'O' 0xd3 ) + ( 'u' 0xfa ) ( 'U' 0xda ) ( 'y' 0xfd ) ( 'Y' 0xdd ) + + dcir '^' ( 'a' 0xe2 ) ( 'A' 0xc2 ) ( 'e' 0xea ) ( 'E' 0xca ) + ( 'i' 0xee ) ( 'I' 0xce ) ( 'o' 0xf4 ) ( 'O' 0xd4 ) + ( 'u' 0xfb ) ( 'U' 0xdb ) + + dtil '~' ( 'a' 0xe3 ) ( 'A' 0xc3 ) ( 'n' 0xf1 ) ( 'N' 0xd1 ) + ( 'o' 0xf5 ) ( 'O' 0xd5 ) + + duml 0xa8 ( 'a' 0xe4 ) ( 'A' 0xc4 ) ( 'e' 0xeb ) ( 'E' 0xcb ) + ( 'i' 0xef ) ( 'I' 0xcf ) ( 'o' 0xf6 ) ( 'O' 0xd6 ) + ( 'u' 0xfc ) ( 'U' 0xdc ) ( 'y' 0xff ) + + drin 0xb0 ( 'a' 0xe5 ) ( 'A' 0xc5 ) + + dced 0xb8 ( 'c' 0xe7 ) ( 'C' 0xc7 ) diff --git a/share/vt/keymaps/be.kbd b/share/vt/keymaps/be.kbd new file mode 100644 index 0000000..d9c4246 --- /dev/null +++ b/share/vt/keymaps/be.kbd @@ -0,0 +1,114 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '&' '1' nop nop '|' '|' nop nop O + 003 0xe9 '2' nul nul '@' '@' nul nul O + 004 '"' '3' nop nop '#' '#' nop nop O + 005 ''' '4' nop nop ''' '4' nop nop O + 006 '(' '5' nop nop '(' '5' nop nop O + 007 0xa7 '6' rs rs '^' '^' rs rs O + 008 0xe8 '7' nop nop 0xe8 '7' nop nop O + 009 '!' '8' nop nop '!' '8' nop nop O + 010 0xe7 '9' nop nop '{' '{' nop nop O + 011 0xe0 '0' nop nop '}' '}' nop nop O + 012 ')' 0xb0 nop nop ')' 0xb0 nop nop O + 013 '-' '_' us us '-' '_' us us O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'a' 'A' soh soh 'a' 'A' soh soh C + 017 'z' 'Z' sub sub 'z' 'Z' sub sub C + 018 'e' 'E' enq enq 0x20ac 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 '^' 0xa8 esc esc '[' '[' esc esc O + 027 '$' '*' gs gs ']' ']' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 'm' 'M' cr cr 'm' 'M' cr cr C + 040 0xf9 '%' nop nop ''' ''' nop nop O + 041 0xb2 0xb3 nop nop 0xb2 0xb3 nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 0xb5 0xa3 nop nop '`' '`' nop nop O + 044 'w' 'W' etb etb 'w' 'W' etb etb C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 ',' '?' nop nop ',' '?' nop nop O + 051 ';' '.' nop nop ';' '.' nop nop O + 052 ':' '/' nop nop ':' '/' nop nop O + 053 '=' '+' nop nop '~' '~' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' fs fs '\' '\' '\' fs O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/bg.bds.kbd b/share/vt/keymaps/bg.bds.kbd new file mode 100644 index 0000000..ba87abb1 --- /dev/null +++ b/share/vt/keymaps/bg.bds.kbd @@ -0,0 +1,245 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '1' '!' nop nop O + 003 '2' '@' nul nul '2' '@' nul nul O + 004 '3' '#' nop nop '3' '#' nop nop O + 005 '4' '$' nop nop '4' '$' nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '^' rs rs '6' '^' rs rs O + 008 '7' '&' nop nop '7' '&' nop nop O + 009 '8' '*' nop nop '8' '*' nop nop O + 010 '9' '(' nop nop '9' '(' nop nop O + 011 '0' ')' nop nop '0' ')' nop nop O + 012 '-' '_' us us '-' '_' us us O + 013 '=' '+' nop nop '=' '+' nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 'e' 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 '[' '{' esc esc '[' '{' esc esc O + 027 ']' '}' gs gs ']' '}' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 ';' ':' nop nop ';' ':' nop nop O + 040 ''' '"' nop nop ''' '"' nop nop O + 041 '`' '~' nop nop '`' '~' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '\' '|' fs fs '\' '|' fs fs O + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' '<' nop nop ',' '<' nop nop O + 052 '.' '>' nop nop '.' '>' nop nop O + 053 '/' '?' nop nop '/' '?' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock alock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 nop nop nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + 109 nop nop nop nop nop nop nop nop O + 110 nop nop nop nop nop nop nop nop O + 111 nop nop nop nop nop nop nop nop O + 112 nop nop nop nop nop nop nop nop O + 113 nop nop nop nop nop nop nop nop O + 114 nop nop nop nop nop nop nop nop O + 115 nop nop nop nop nop nop nop nop O + 116 nop nop nop nop nop nop nop nop O + 117 nop nop nop nop nop nop nop nop O + 118 nop nop nop nop nop nop nop nop O + 119 nop nop nop nop nop nop nop nop O + 120 nop nop nop nop nop nop nop nop O + 121 nop nop nop nop nop nop nop nop O + 122 nop nop nop nop nop nop nop nop O + 123 nop nop nop nop nop nop nop nop O + 124 nop nop nop nop nop nop nop nop O + 125 nop nop nop nop nop nop nop nop O + 126 nop nop nop nop nop nop nop nop O + 127 nop nop nop nop nop nop nop nop O + 128 nop nop nop nop nop nop nop nop O + 129 esc esc esc esc esc esc debug esc O + 130 '1' '!' nop nop '1' '!' nop nop O + 131 '2' '?' nul nul '2' '@' nul nul O + 132 '3' '+' nop nop '3' '#' nop nop O + 133 '4' '"' nop nop '4' '$' nop nop O + 134 '5' '%' nop nop '5' '%' nop nop O + 135 '6' '=' rs rs '6' '^' rs rs O + 136 '7' ':' nop nop '7' '&' nop nop O + 137 '8' '/' nop nop '8' '*' nop nop O + 138 '9' '-' nop nop '9' '(' nop nop O + 139 '0' 0x0419 nop nop '0' ')' nop nop O + 140 '-' '-' us us '-' '_' us us O + 141 '.' 'V' nop nop '=' '+' nop nop O + 142 bs bs del del bs bs del del O + 143 ht btab nop nop ht btab nop nop O + 144 ',' 0x045b dc1 dc1 'q' 'Q' dc1 dc1 C + 145 0x0453 0x0433 etb etb 'w' 'W' etb etb C + 146 0x0445 0x0425 enq enq 'e' 'E' enq enq C + 147 0x0448 0x0428 dc2 dc2 'r' 'R' dc2 dc2 C + 148 0x0458 0x0438 dc4 dc4 't' 'T' dc4 dc4 C + 149 0x0459 0x0439 em em 'y' 'Y' em em C + 150 0x044a 0x042a nak nak 'u' 'U' nak nak C + 151 0x0451 0x0431 ht ht 'i' 'I' ht ht C + 152 0x0444 0x0424 si si 'o' 'O' si si C + 153 0x0447 0x0427 dle dle 'p' 'P' dle dle C + 154 0x0456 0x0436 esc esc '[' '{' esc esc C + 155 ';' 0x0407 gs gs ']' '}' gs gs C + 156 cr cr nl nl cr cr nl nl O + 157 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 158 0x045c 0x043c soh soh 'a' 'A' soh soh C + 159 0x045f 0x043f dc3 dc3 's' 'S' dc3 dc3 C + 160 0x0440 0x0420 eot eot 'd' 'D' eot eot C + 161 0x044e 0x042e ack ack 'f' 'F' ack ack C + 162 0x0446 0x0426 bel bel 'g' 'G' bel bel C + 163 0x0443 0x0423 bs bs 'h' 'H' bs bs C + 164 0x0452 0x0432 nl nl 'j' 'J' nl nl C + 165 0x044d 0x042d vt vt 'k' 'K' vt vt C + 166 0x0442 0x0422 ff ff 'l' 'L' ff ff C + 167 0x044c 0x042c nop nop ';' ':' nop nop C + 168 0x0457 0x0437 nop nop ''' '"' nop nop C + 169 '(' ')' nop nop '`' '~' nop nop C + 170 lshift lshift lshift lshift lshift lshift lshift lshift O + 171 '\' '|' fs fs '\' '|' fs fs O + 172 0x045e 0x043e sub sub 'z' 'Z' sub sub C + 173 0x0449 0x0429 can can 'x' 'X' can can C + 174 0x045a 0x043a etx etx 'c' 'C' etx etx C + 175 0x0447 0x0427 syn syn 'v' 'V' syn syn C + 176 0x0454 0x0434 stx stx 'b' 'B' stx stx C + 177 0x0455 0x0435 so so 'n' 'N' so so C + 178 0x044f 0x042f cr cr 'm' 'M' cr cr C + 179 0x2116 0x0430 nop nop ',' '<' nop nop C + 180 0x044b 0x042b nop nop '.' '>' nop nop C + 181 0x0441 0x0421 nop nop '/' '?' nop nop C + 182 rshift rshift rshift rshift rshift rshift rshift rshift O + 183 '*' '*' '*' '*' '*' '*' '*' '*' O + 184 lalt lalt lalt lalt lalt lalt lalt lalt O + 185 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 186 clock clock alock clock clock clock clock clock O + 187 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 188 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 189 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 190 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 191 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 192 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 193 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 194 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 195 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 196 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 197 nlock nlock nlock nlock nlock nlock nlock nlock O + 198 slock slock slock slock slock slock slock slock O + 199 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 200 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 201 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 202 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 203 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 204 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 205 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 206 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 207 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 208 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 209 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 210 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 211 del '.' '.' '.' '.' '.' boot boot N + 212 nop nop nop nop nop nop nop nop O + 213 nop nop nop nop nop nop nop nop O + 214 nop nop nop nop nop nop nop nop O + 215 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 216 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 217 cr cr nl nl cr cr nl nl O + 218 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 219 '/' '/' '/' '/' '/' '/' '/' '/' N + 220 nscr pscr debug debug nop nop nop nop O + 221 ralt ralt ralt ralt ralt ralt ralt ralt O + 222 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 223 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 224 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 225 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 226 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 227 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 228 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 229 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 230 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 231 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 232 slock saver slock saver susp nop susp nop O + 233 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 234 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 235 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 236 nop nop nop nop nop nop nop nop O + + + diff --git a/share/vt/keymaps/bg.phonetic.kbd b/share/vt/keymaps/bg.phonetic.kbd new file mode 100644 index 0000000..dd652b5 --- /dev/null +++ b/share/vt/keymaps/bg.phonetic.kbd @@ -0,0 +1,260 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '1' '!' nop nop O + 003 '2' '@' nul nul '2' '@' nul nul O + 004 '3' '#' nop nop '3' '#' nop nop O + 005 '4' '$' nop nop '4' '$' nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '^' rs rs '6' '^' rs rs O + 008 '7' '&' nop nop '7' '&' nop nop O + 009 '8' '*' nop nop '8' '*' nop nop O + 010 '9' '(' nop nop '9' '(' nop nop O + 011 '0' ')' nop nop '0' ')' nop nop O + 012 '-' '_' us us '-' '_' us us O + 013 '=' '+' nop nop '=' '+' nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 'e' 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 '[' '{' esc esc '[' '{' esc esc O + 027 ']' '}' gs gs ']' '}' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 ';' ':' nop nop ';' ':' nop nop O + 040 ''' '"' nop nop ''' '"' nop nop O + 041 '`' '~' nop nop '`' '~' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '\' '|' fs fs '\' '|' fs fs O + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' '<' nop nop ',' '<' nop nop O + 052 '.' '>' nop nop '.' '>' nop nop O + 053 '/' '?' nop nop '/' '?' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock alock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 nop nop nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 109 nop nop nop nop nop nop nop nop O + 110 nop nop nop nop nop nop nop nop O + 111 nop nop nop nop nop nop nop nop O + 112 nop nop nop nop nop nop nop nop O + 113 nop nop nop nop nop nop nop nop O + 114 nop nop nop nop nop nop nop nop O + 115 nop nop nop nop nop nop nop nop O + 116 nop nop nop nop nop nop nop nop O + 117 nop nop nop nop nop nop nop nop O + 118 nop nop nop nop nop nop nop nop O + 119 nop nop nop nop nop nop nop nop O + 120 nop nop nop nop nop nop nop nop O + 121 nop nop nop nop nop nop nop nop O + 122 nop nop nop nop nop nop nop nop O + 123 nop nop nop nop nop nop nop nop O + 124 nop nop nop nop nop nop nop nop O + 125 nop nop nop nop nop nop nop nop O + 126 nop nop nop nop nop nop nop nop O + 127 nop nop nop nop nop nop nop nop O + 128 nop nop nop nop nop nop nop nop O + 129 esc esc esc esc esc esc debug esc O + 130 '1' '!' nop nop '1' '!' nop nop O + 131 '2' '@' nul nul '2' '@' nul nul O + 132 '3' '#' nop nop '3' '#' nop nop O + 133 '4' '$' nop nop '4' '$' nop nop O + 134 '5' '%' nop nop '5' '%' nop nop O + 135 '6' '^' rs rs '6' '^' rs rs O + 136 '7' '&' nop nop '7' '&' nop nop O + 137 '8' '*' nop nop '8' '*' nop nop O + 138 '9' '(' nop nop '9' '(' nop nop O + 139 '0' ')' nop nop '0' ')' nop nop O + 140 '-' '_' us us '-' '_' us us O + 141 '=' '+' nop nop '=' '+' nop nop O + 142 bs bs del del bs bs del del O + 143 ht btab nop nop ht btab nop nop O + 144 0x045f 0x043f dc1 dc1 'q' 'Q' dc1 dc1 C + 145 0x0442 0x0422 etb etb 'w' 'W' etb etb C + 146 0x0445 0x0425 enq enq 'e' 'E' enq enq C + 147 0x2116 0x0430 dc2 dc2 'r' 'R' dc2 dc2 C + 148 0x0452 0x0432 dc4 dc4 't' 'T' dc4 dc4 C + 149 0x045a 0x043a em em 'y' 'Y' em em C + 150 0x0453 0x0433 nak nak 'u' 'U' nak nak C + 151 0x0448 0x0428 ht ht 'i' 'I' ht ht C + 152 0x044e 0x042e si si 'o' 'O' si si C + 153 0x044f 0x042f dle dle 'p' 'P' dle dle C + 154 0x0458 0x0438 esc esc '[' '{' esc esc C + 155 0x0459 0x0439 gs gs ']' '}' gs gs C + 156 cr cr nl nl cr cr nl nl O + 157 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 158 0x0440 0x0420 soh soh 'a' 'A' soh soh C + 159 0x0451 0x0431 dc3 dc3 's' 'S' dc3 dc3 C + 160 0x0444 0x0424 eot eot 'd' 'D' eot eot C + 161 0x0454 0x0434 ack ack 'f' 'F' ack ack C + 162 0x0443 0x0423 bel bel 'g' 'G' bel bel C + 163 0x0455 0x0435 bs bs 'h' 'H' bs bs C + 164 0x0449 0x0429 nl nl 'j' 'J' nl nl C + 165 0x044a 0x042a vt vt 'k' 'K' vt vt C + 166 0x044b 0x042b ff ff 'l' 'L' ff ff C + 167 ';' ':' nop nop ';' ':' nop nop O + 168 ''' '"' nop nop ''' '"' nop nop O + 169 0x0457 0x0437 nop nop '`' '~' nop nop C + 170 lshift lshift lshift lshift lshift lshift lshift lshift O + 171 0x045e 0x043e fs fs '\' '|' fs fs C + 172 0x0447 0x0427 sub sub 'z' 'Z' sub sub C + 173 0x045c 0x043c can can 'x' 'X' can can C + 174 0x0456 0x0436 etx etx 'c' 'C' etx etx C + 175 0x0446 0x0426 syn syn 'v' 'V' syn syn C + 176 0x0441 0x0421 stx stx 'b' 'B' stx stx C + 177 0x044d 0x042d so so 'n' 'N' so so C + 178 0x044c 0x042c cr cr 'm' 'M' cr cr C + 179 ',' '<' nop nop ',' '<' nop nop O + 180 '.' '>' nop nop '.' '>' nop nop O + 181 '/' '?' nop nop '/' '?' nop nop O + 182 rshift rshift rshift rshift rshift rshift rshift rshift O + 183 '*' '*' '*' '*' '*' '*' '*' '*' O + 184 lalt lalt lalt lalt lalt lalt lalt lalt O + 185 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 186 clock clock alock clock clock clock clock clock O + 187 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 188 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 189 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 190 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 191 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 192 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 193 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 194 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 195 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 196 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 197 nlock nlock nlock nlock nlock nlock nlock nlock O + 198 slock slock slock slock slock slock slock slock O + 199 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 200 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 201 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 202 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 203 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 204 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 205 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 206 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 207 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 208 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 209 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 210 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 211 del '.' '.' '.' '.' '.' boot boot N + 212 nop nop nop nop nop nop nop nop O + 213 nop nop nop nop nop nop nop nop O + 214 nop nop nop nop nop nop nop nop O + 215 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 216 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 217 cr cr nl nl cr cr nl nl O + 218 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 219 '/' '/' '/' '/' '/' '/' '/' '/' N + 220 nscr pscr debug debug nop nop nop nop O + 221 ralt ralt ralt ralt ralt ralt ralt ralt O + 222 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 223 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 224 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 225 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 226 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 227 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 228 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 229 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 230 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 231 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 232 slock saver slock saver susp nop susp nop O + 233 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 234 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 235 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 236 nop nop nop nop nop nop nop nop O + 237 nop nop nop nop nop nop nop nop O + 238 nop nop nop nop nop nop nop nop O + 239 nop nop nop nop nop nop nop nop O + 240 nop nop nop nop nop nop nop nop O + 241 nop nop nop nop nop nop nop nop O + 242 nop nop nop nop nop nop nop nop O + 243 nop nop nop nop nop nop nop nop O + 244 nop nop nop nop nop nop nop nop O + 245 nop nop nop nop nop nop nop nop O + 246 nop nop nop nop nop nop nop nop O + 247 nop nop nop nop nop nop nop nop O + 248 nop nop nop nop nop nop nop nop O + 249 nop nop nop nop nop nop nop nop O + 250 nop nop nop nop nop nop nop nop O + 251 nop nop nop nop nop nop nop nop O + 252 nop nop nop nop nop nop nop nop O + 253 nop nop nop nop nop nop nop nop O + 254 nop nop nop nop nop nop nop nop O + 255 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/br.kbd b/share/vt/keymaps/br.kbd new file mode 100644 index 0000000..37e85ea --- /dev/null +++ b/share/vt/keymaps/br.kbd @@ -0,0 +1,151 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop 0xb9 '!' nop nop O + 003 '2' '@' nul nul 0xb2 '@' nul nul O + 004 '3' '#' nop nop 0xb3 '#' nop nop O + 005 '4' '$' nop nop 0xa3 '$' nop nop O + 006 '5' '%' nop nop 0xa2 '%' nop nop O + 007 '6' duml rs rs 0xac duml rs rs O + 008 '7' '&' nop nop '7' '&' nop nop O + 009 '8' '*' nop nop '8' '*' nop nop O + 010 '9' '(' nop nop '9' '(' nop nop O + 011 '0' ')' nop nop '0' ')' nop nop O + 012 '-' '_' us us '-' '_' us us O + 013 '=' '+' nop nop 0xa7 '+' nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 'e' 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 dacu dgra nop nop dacu dgra nop nop O + 027 '[' '{' esc esc 0xaa '{' esc esc O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 0xe7 0xc7 nop nop 0xe7 0xc7 nop nop C + 040 dtil dcir nop nop dtil dcir nop nop O + 041 ''' '"' nop nop ''' '"' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 ']' '}' gs gs 0xba '}' gs gs O + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' '<' nop nop ',' '<' nop nop O + 052 '.' '>' nop nop '.' '>' nop nop O + 053 ';' ':' nop nop ';' ':' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del ',' ',' ',' ',' ',' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '\' '|' fs fs '\' '|' fs fs O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + 109 nop nop nop nop nop nop nop nop O + 110 nop nop nop nop nop nop nop nop O + 111 nop nop nop nop nop nop nop nop O + 112 nop nop nop nop nop nop nop nop O + 113 nop nop nop nop nop nop nop nop O + 114 nop nop nop nop nop nop nop nop O + 115 '/' '?' nop nop 0xb0 '?' nop nop O + 116 nop nop nop nop nop nop nop nop O + 117 nop nop nop nop nop nop nop nop O + 118 nop nop nop nop nop nop nop nop O + 119 nop nop nop nop nop nop nop nop O + 120 nop nop nop nop nop nop nop nop O + 121 nop nop nop nop nop nop nop nop O + 122 nop nop nop nop nop nop nop nop O + 123 nop nop nop nop nop nop nop nop O + 124 nop nop nop nop nop nop nop nop O + 125 nop nop nop nop nop nop nop nop O + 126 '.' '.' '.' '.' '.' '.' '.' '.' N + + dgra '`' ( 'a' 0xe0 ) ( 'A' 0xc0 ) ( 'e' 0xe8 ) ( 'E' 0xc8 ) + ( 'i' 0xec ) ( 'I' 0xcc ) ( 'o' 0xf2 ) ( 'O' 0xd2 ) + ( 'u' 0xf9 ) ( 'U' 0xd9 ) + + dacu 0xb4 ( 'a' 0xe1 ) ( 'A' 0xc1 ) ( 'e' 0xe9 ) ( 'E' 0xc9 ) + ( 'i' 0xed ) ( 'I' 0xcd ) ( 'o' 0xf3 ) ( 'O' 0xd3 ) + ( 'u' 0xfa ) ( 'U' 0xda ) ( 'y' 0xfd ) ( 'Y' 0xdd ) + + dcir '^' ( 'a' 0xe2 ) ( 'A' 0xc2 ) ( 'e' 0xea ) ( 'E' 0xca ) + ( 'i' 0xee ) ( 'I' 0xce ) ( 'o' 0xf4 ) ( 'O' 0xd4 ) + ( 'u' 0xfb ) ( 'U' 0xdb ) + + dtil '~' ( 'a' 0xe3 ) ( 'A' 0xc3 ) ( 'n' 0xf1 ) ( 'N' 0xd1 ) + ( 'o' 0xf5 ) ( 'O' 0xd5 ) + + duml 0xa8 ( 'a' 0xe4 ) ( 'A' 0xc4 ) ( 'e' 0xeb ) ( 'E' 0xcb ) + ( 'i' 0xef ) ( 'I' 0xcf ) ( 'o' 0xf6 ) ( 'O' 0xd6 ) + ( 'u' 0xfc ) ( 'U' 0xdc ) ( 'y' 0xff ) diff --git a/share/vt/keymaps/br.noacc.kbd b/share/vt/keymaps/br.noacc.kbd new file mode 100644 index 0000000..103a081 --- /dev/null +++ b/share/vt/keymaps/br.noacc.kbd @@ -0,0 +1,132 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop 0xb9 '!' nop nop O + 003 '2' '@' nul nul 0xb2 '@' nul nul O + 004 '3' '#' nop nop 0xb3 '#' nop nop O + 005 '4' '$' nop nop 0xa3 '$' nop nop O + 006 '5' '%' nop nop 0xa2 '%' nop nop O + 007 '6' 0xa8 rs rs 0xac 0xbf rs rs O + 008 '7' '&' nop nop '7' '&' nop nop O + 009 '8' '*' nop nop '8' '*' nop nop O + 010 '9' '(' nop nop '9' '(' nop nop O + 011 '0' ')' nop nop '0' ')' nop nop O + 012 '-' '_' us us '-' '_' us us O + 013 '=' '+' nop nop 0xa7 '+' nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 'e' 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 0xb4 '`' nop nop 0xb4 '`' nop nop O + 027 '[' '{' esc esc 0xaa '{' esc esc O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 0xe7 0xc7 nop nop 0xe7 0xc7 nop nop C + 040 '~' '^' nop nop '~' '^' nop nop O + 041 ''' '"' nop nop ''' '"' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 ']' '}' gs gs 0xba '}' gs gs O + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' '<' nop nop ',' '<' nop nop O + 052 '.' '>' nop nop '.' '>' nop nop O + 053 ';' ':' nop nop ';' ':' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del ',' ',' ',' ',' ',' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '\' '|' fs fs '\' '|' fs fs O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + 109 nop nop nop nop nop nop nop nop O + 110 nop nop nop nop nop nop nop nop O + 111 nop nop nop nop nop nop nop nop O + 112 nop nop nop nop nop nop nop nop O + 113 nop nop nop nop nop nop nop nop O + 114 nop nop nop nop nop nop nop nop O + 115 '/' '?' nop nop 0xb0 '?' nop nop O + 116 nop nop nop nop nop nop nop nop O + 117 nop nop nop nop nop nop nop nop O + 118 nop nop nop nop nop nop nop nop O + 119 nop nop nop nop nop nop nop nop O + 120 nop nop nop nop nop nop nop nop O + 121 nop nop nop nop nop nop nop nop O + 122 nop nop nop nop nop nop nop nop O + 123 nop nop nop nop nop nop nop nop O + 124 nop nop nop nop nop nop nop nop O + 125 nop nop nop nop nop nop nop nop O + 126 '.' '.' '.' '.' '.' '.' '.' '.' N diff --git a/share/vt/keymaps/by.kbd b/share/vt/keymaps/by.kbd new file mode 100644 index 0000000..8de2ac4 --- /dev/null +++ b/share/vt/keymaps/by.kbd @@ -0,0 +1,224 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '1' '!' nop nop O + 003 '2' '@' nul nul '2' '@' nul nul O + 004 '3' '#' nop nop '3' '#' nop nop O + 005 '4' '$' nop nop '4' '$' nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '^' rs rs '6' '^' rs rs O + 008 '7' '&' nop nop '7' '&' nop nop O + 009 '8' '*' nop nop '8' '*' nop nop O + 010 '9' '(' nop nop '9' '(' nop nop O + 011 '0' ')' nop nop '0' ')' nop nop O + 012 '-' '_' us us '-' '_' us us O + 013 '=' '+' nop nop '=' '+' nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 'e' 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 '[' '{' esc esc '[' '{' esc esc O + 027 ']' '}' gs gs ']' '}' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 ';' ':' nop nop ';' ':' nop nop O + 040 ''' '"' nop nop ''' '"' nop nop O + 041 '`' '~' nop nop '`' '~' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '\' '|' fs fs '\' '|' fs fs O + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' '<' nop nop ',' '<' nop nop O + 052 '.' '>' nop nop '.' '>' nop nop O + 053 '/' '?' nop nop '/' '?' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 alock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 alock alock alock alock alock alock alock alock O + 085 nop nop nop nop nop nop nop nop O + 086 nop nop nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr nscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + + 128 nop nop nop nop nop nop nop nop O + 129 esc esc esc esc esc esc debug esc O + 130 '1' '!' nop nop '1' '!' nop nop O + 131 '2' '"' nul nul '2' '@' nul nul O + 132 '3' 0x2116 nop nop '3' '#' nop nop O + 133 '4' ';' nop nop '4' ';' nop nop O + 134 '5' '%' nop nop '5' '%' nop nop O + 135 '6' ':' rs rs '6' '^' rs rs O + 136 '7' '?' nop nop '7' '&' nop nop O + 137 '8' '*' nop nop '8' '*' nop nop O + 138 '9' '(' nop nop '9' '(' nop nop O + 139 '0' ')' nop nop '0' ')' nop nop O + 140 '-' '_' us us '-' '_' us us O + 141 '=' '+' nop nop '=' '+' nop nop O + 142 bs bs del del bs bs del del O + 143 ht btab nop nop ht btab nop nop O + 144 0x0439 0x0419 dc1 dc1 'q' 'Q' dc1 dc1 C + 145 0x0446 0x0426 etb etb 'w' 'W' etb etb C + 146 0x0443 0x0423 enq enq 'e' 'E' enq enq C + 147 0x043a 0x041a dc2 dc2 'r' 'R' dc2 dc2 C + 148 0x0435 0x0415 dc4 dc4 't' 'T' dc4 dc4 C + 149 0x043d 0x041d em em 'y' 'Y' em em C + 150 0x0433 0x0413 nak nak 'u' 'U' nak nak C + 151 0x0448 0x0428 ht ht 'i' 'I' ht ht C + 152 0x045e 0x040e si si 'o' 'O' si si C + 153 0x0437 0x0417 dle dle 'p' 'P' dle dle C + 154 0x0445 0x0425 esc esc '[' '{' esc esc C + 155 ''' ''' gs gs ']' '}' gs gs O + 156 cr cr nl nl cr cr nl nl O + 157 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 158 0x0444 0x0424 soh soh 'a' 'A' soh soh C + 159 0x044b 0x042b dc3 dc3 's' 'S' dc3 dc3 C + 160 0x0432 0x0412 eot eot 'd' 'D' eot eot C + 161 0x0430 0x0410 ack ack 'f' 'F' ack ack C + 162 0x043f 0x041f bel bel 'g' 'G' bel bel C + 163 0x0440 0x0420 bs bs 'h' 'H' bs bs C + 164 0x043e 0x041e nl nl 'j' 'J' nl nl C + 165 0x043b 0x041b vt vt 'k' 'K' vt vt C + 166 0x0434 0x0414 ff ff 'l' 'L' ff ff C + 167 0x0436 0x0416 nop nop ';' ':' nop nop C + 168 0x044d 0x042d nop nop ''' '"' nop nop C + 169 0x0451 0x0401 nop nop '`' '~' nop nop C + 170 lshift lshift lshift lshift lshift lshift lshift lshift O + 171 '\' '|' fs fs '\' '|' fs fs O + 172 0x044f 0x042f sub sub 'z' 'Z' sub sub C + 173 0x0447 0x0427 can can 'x' 'X' can can C + 174 0x0441 0x0421 etx etx 'c' 'C' etx etx C + 175 0x043c 0x041c syn syn 'v' 'V' syn syn C + 176 0x0456 0x0406 stx stx 'b' 'B' stx stx C + 177 0x0442 0x0422 so so 'n' 'N' so so C + 178 0x044c 0x042c cr cr 'm' 'M' cr cr C + 179 0x0431 0x0411 nop nop ',' '<' nop nop C + 180 0x044e 0x042e nop nop '.' '>' nop nop C + 181 '.' ',' nop nop '/' '?' nop nop O + 182 rshift rshift rshift rshift rshift rshift rshift rshift O + 183 '*' '*' '*' '*' '*' '*' '*' '*' O + 184 lalt lalt lalt lalt lalt lalt lalt lalt O + 185 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 186 alock clock clock clock clock clock clock clock O + 187 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 188 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 189 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 190 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 191 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 192 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 193 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 194 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 195 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 196 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 197 nlock nlock nlock nlock nlock nlock nlock nlock O + 198 slock slock slock slock slock slock slock slock O + 199 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 200 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 201 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 202 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 203 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 204 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 205 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 206 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 207 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 208 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 209 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 210 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 211 del '.' '.' '.' '.' '.' boot boot N + 212 alock alock alock alock alock alock alock alock O + 213 nop nop nop nop nop nop nop nop O + 214 nop nop nop nop nop nop nop nop O + 215 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 216 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 217 cr cr nl nl cr cr nl nl O + 218 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 219 '/' '/' '/' '/' '/' '/' '/' '/' N + 220 nscr nscr debug debug nop nop nop nop O + 221 ralt ralt ralt ralt ralt ralt ralt ralt O + 222 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 223 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 224 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 225 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 226 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 227 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 228 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 229 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 230 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 231 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 232 slock saver slock saver susp nop susp nop O + 233 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 234 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 235 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 236 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/ca-fr.kbd b/share/vt/keymaps/ca-fr.kbd new file mode 100644 index 0000000..1d62e2c --- /dev/null +++ b/share/vt/keymaps/ca-fr.kbd @@ -0,0 +1,143 @@ +# French Canadian keyboard +# by Alexandre Normand (outcast@globetretrotter.net) +# with the help of Demis (demis@club-internet.fr) +# +# July 4, 1999 +# +# $FreeBSD$ + +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop 0xb1 '!' nop nop O + 003 '2' '"' nul nul '@' '"' nul nul O + 004 '3' '/' nop nop 0xa3 '/' nop nop O + 005 '4' '$' nop nop 0xa2 '$' nop nop O + 006 '5' '%' nop nop 0xa4 '%' nop nop O + 007 '6' '?' nop nop 0xac '?' nop nop O + 008 '7' '&' nop nop '|' '&' nop nop O + 009 '8' '*' nop nop 0xb2 '*' nop nop O + 010 '9' '(' nop nop 0xb3 '(' nop nop O + 011 '0' ')' nop nop 0xbc ')' nop nop O + 012 '-' '_' nop nop 0xbd '_' nop nop O + 013 '=' '+' nop nop 0xbe '+' nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 0x20ac 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 dcir dcir esc esc '[' dcir esc esc O + 027 dced duml gs gs ']' duml gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 ';' ':' nop nop '~' ':' nop nop O + 040 dgra dgra nop nop '{' dgra nop nop O + 041 '#' '|' nop nop '\' '|' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '<' '>' fs fs '}' '>' fs fs O + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' ''' nop nop '_' ''' nop nop O + 052 '.' '.' nop nop '.' '.' nop nop O + 053 0xe9 0xc9 nop nop dacu 0xc9 nop nop C + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 0xab 0xbb nop nop 0xb0 0xbb nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' O + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + + dgra '`' ( 'a' 0xe0 ) ( 'A' 0xc0 ) ( 'e' 0xe8 ) ( 'E' 0xc8 ) + ( 'i' 0xec ) ( 'I' 0xcc ) ( 'o' 0xf2 ) ( 'O' 0xd2 ) + ( 'u' 0xf9 ) ( 'U' 0xd9 ) + + dacu 0xb4 ( 'a' 0xe1 ) ( 'A' 0xc1 ) ( 'e' 0xe9 ) ( 'E' 0xc9 ) + ( 'i' 0xed ) ( 'I' 0xcd ) ( 'o' 0xf3 ) ( 'O' 0xd3 ) + ( 'u' 0xfa ) ( 'U' 0xda ) ( 'y' 0xfd ) ( 'Y' 0xdd ) + + dcir '^' ( 'a' 0xe2 ) ( 'A' 0xc2 ) ( 'e' 0xea ) ( 'E' 0xca ) + ( 'i' 0xee ) ( 'I' 0xce ) ( 'o' 0xf4 ) ( 'O' 0xd4 ) + ( 'u' 0xfb ) ( 'U' 0xdb ) + + dtil '~' ( 'a' 0xe3 ) ( 'A' 0xc3 ) ( 'n' 0xf1 ) ( 'N' 0xd1 ) + ( 'o' 0xf5 ) ( 'O' 0xd5 ) + + duml 0xa8 ( 'a' 0xe4 ) ( 'A' 0xc4 ) ( 'e' 0xeb ) ( 'E' 0xcb ) + ( 'i' 0xef ) ( 'I' 0xcf ) ( 'o' 0xf6 ) ( 'O' 0xd6 ) + ( 'u' 0xfc ) ( 'U' 0xdc ) ( 'y' 0xff ) + + drin 0xb0 ( 'a' 0xe5 ) ( 'A' 0xc5 ) + + dced 0xb8 ( 'c' 0xe7 ) ( 'C' 0xc7 ) diff --git a/share/vt/keymaps/ca.kbd b/share/vt/keymaps/ca.kbd new file mode 100644 index 0000000..de59f38 --- /dev/null +++ b/share/vt/keymaps/ca.kbd @@ -0,0 +1,139 @@ +# Canadian Bilingual keyboard +# +# $FreeBSD$ + +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop 0xb1 '!' nop nop O + 003 '2' '@' nul nul '@' '"' nul nul O + 004 '3' '#' nop nop 0xa3 '/' nop nop O + 005 '4' '$' nop nop 0xa2 '$' nop nop O + 006 '5' '%' nop nop 0xa4 '%' nop nop O + 007 '6' '^' nop nop 0xac '?' nop nop O + 008 '7' '&' nop nop '|' '&' nop nop O + 009 '8' '*' nop nop 0xb2 '*' nop nop O + 010 '9' '(' nop nop 0xb3 '(' nop nop O + 011 '0' ')' nop nop 0xbc ')' nop nop O + 012 '-' '_' nop nop 0xbd '_' nop nop O + 013 '=' '+' nop nop 0xbe '+' nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 0x20ac 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 0xa7 'O' si si C + 025 'p' 'P' dle dle 0xb6 'P' dle dle C + 026 '[' '{' nop nop dcir dcir nop nop O + 027 ']' '}' nop nop dced duml gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 ';' ':' nop nop '~' ':' nop nop O + 040 ''' '"' nop nop dgra dgra nop nop O + 041 '`' '~' nop nop '`' '~' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '\' '|' fs fs '<' '>' nop nop O + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' '<' nop nop '<' ''' nop nop O + 052 '.' '>' nop nop '>' '.' nop nop O + 053 '/' '?' nop nop dacu 0xc9 nop nop C + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '\' '|' nop nop 0xab 0xbb nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' O + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + + dgra '`' ( 'a' 0xe0 ) ( 'A' 0xc0 ) ( 'e' 0xe8 ) ( 'E' 0xc8 ) + ( 'i' 0xec ) ( 'I' 0xcc ) ( 'o' 0xf2 ) ( 'O' 0xd2 ) + ( 'u' 0xf9 ) ( 'U' 0xd9 ) + + dacu 0xb4 ( 'a' 0xe1 ) ( 'A' 0xc1 ) ( 'e' 0xe9 ) ( 'E' 0xc9 ) + ( 'i' 0xed ) ( 'I' 0xcd ) ( 'o' 0xf3 ) ( 'O' 0xd3 ) + ( 'u' 0xfa ) ( 'U' 0xda ) ( 'y' 0xfd ) ( 'Y' 0xdd ) + + dcir '^' ( 'a' 0xe2 ) ( 'A' 0xc2 ) ( 'e' 0xea ) ( 'E' 0xca ) + ( 'i' 0xee ) ( 'I' 0xce ) ( 'o' 0xf4 ) ( 'O' 0xd4 ) + ( 'u' 0xfb ) ( 'U' 0xdb ) + + dtil '~' ( 'a' 0xe3 ) ( 'A' 0xc3 ) ( 'n' 0xf1 ) ( 'N' 0xd1 ) + ( 'o' 0xf5 ) ( 'O' 0xd5 ) + + duml 0xa8 ( 'a' 0xe4 ) ( 'A' 0xc4 ) ( 'e' 0xeb ) ( 'E' 0xcb ) + ( 'i' 0xef ) ( 'I' 0xcf ) ( 'o' 0xf6 ) ( 'O' 0xd6 ) + ( 'u' 0xfc ) ( 'U' 0xdc ) ( 'y' 0xff ) + + drin 0xb0 ( 'a' 0xe5 ) ( 'A' 0xc5 ) + + dced 0xb8 ( 'c' 0xe7 ) ( 'C' 0xc7 ) diff --git a/share/vt/keymaps/centraleuropean.kbd b/share/vt/keymaps/centraleuropean.kbd new file mode 100644 index 0000000..4344761 --- /dev/null +++ b/share/vt/keymaps/centraleuropean.kbd @@ -0,0 +1,242 @@ +# Keyboard map for Central European languages under FreeBSD. +# Created by G. Adam Stanislav <adam@whizkidtech.net> +# +# Version 1.0 - 1999-03-18 +# +# $FreeBSD$ +# +# This map uses a QWERTZ keyboard for its basic layout. +# It adds a "third row" to the top of the PC keyboard. To +# access the third row, press and hold the Alt key, then +# strike a key in the top row. +# +# Note that some of the third-row keys produce characters. +# Others must be followed by another keystroke resulting +# in accented characters. To print the accent mark alone, +# press the space bar after pressing and releasing the +# alt-accent mark key. +# +# In most cases I have mapped a key to a character or an +# accent mark because the key on the US QWERTY keyboard +# somewhat resembles the result. +# +# In addition to the top row, three keys on the numeric keypad +# are mapped for the use with IS 8859-2 when combined with the +# Alt key: The dot (del) key combined with alt will print a +# comma instead of a dot; alt-/ will show the division mark, +# and alt-* the multpilication sign. +# +# You can see the layout here: +# +# alt-` Ë› (ogonek) and alt-~ ¸ (cedilla) +# Examples: ęąţçş +# alt-! ß (German double s) +# alt-@ ° (degree) +# alt-# ¤ (currency) +# alt-$ § (section, called paragraf in most CE languages) +# alt-% ¨ (umlaut, dve bodky) +# Examples: äüöë +# alt-^ ^ (circumflex, vokáň) +# Examples: ôâî +# alt-&  (hyphen, pomlÄka, rozdeľovacie znamienko) +# alt-* ° (ring) +# Examples: ůŮ +# alt-( Ë (Hungarian long umlaut) +# Examples: őű +# alt-) Ë™ (dot accent) +# Examples: żŻ +# alt-- ´ (acute, dĺžeň, Äárka) +# Examples: áśéÃúńźŕĺ +# alt-= ˇ (caron, mäkÄeň, háÄek) and alt-+ ˘ (breve) +# Examples: ăÄřľÄťňž +# alt-\ / (slash) +# Examples: đł +# alt-/ [on numeric keypad] ÷ +# alt-* [on numeric keypad] × +# alt-. [on numeric keypad] , +# +# This layout offers access to the entire character set of +# ISO 8859-2, used by Slovak, Czech, German, Polish, Croatian, +# Slovenian, Rumanian, Hungarian, and probably other languages, +# while remaining mostly compatible with the default US QWERTY +# keyboard. +# +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop 0xdf 0xdf nop nop O + 003 '2' '@' nul nul 0xb0 0xb0 nul nul O + 004 '3' '#' nop nop 0xa4 0xa4 nop nop O + 005 '4' '$' nop nop 0xa7 0xa7 nop nop O + 006 '5' '%' nop nop duml duml nop nop O + 007 '6' '^' rs rs dcir dcir rs rs O + 008 '7' '&' nop nop 0xad 0xad nop nop O + 009 '8' '*' nop nop drin drin nop nop O + 010 '9' '(' nop nop ddac ddac nop nop O + 011 '0' ')' nop nop ddot ddot nop nop O + 012 '-' '_' us us dacu dacu us us O + 013 '=' '+' nop nop dcar dbre nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 'e' 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'z' 'Z' sub sub 'z' 'Z' sub sub C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 '[' '{' esc esc '[' '{' esc esc O + 027 ']' '}' gs gs ']' '}' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'k' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 ';' ':' nop nop ';' ':' nop nop O + 040 ''' '"' nop nop ''' '"' nop nop O + 041 '`' '~' nop nop dogo dced nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '\' '|' fs fs dsla dsla fs fs O + 044 'y' 'Y' em em 'y' 'Y' em em C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' '<' nop nop ',' '<' nop nop O + 052 '.' '>' nop nop '.' '>' nop nop O + 053 '/' '?' nop nop '/' '?' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' 0xd7 0xd7 0xd7 0xd7 O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' ',' ',' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 nop nop nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' 0xf7 0xf7 0xf7 0xf7 N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + + dacu 0xb4 ( 'a' 0xe1 ) ( 'A' 0xc1 ) + ( 'c' 0x0107 ) ( 'C' 0x0106 ) + ( 'e' 0xe9 ) ( 'E' 0xc9 ) + ( 'i' 0xed ) ( 'I' 0xcd ) + ( 'l' 0x013a ) ( 'L' 0x0139 ) + ( 'n' 0x0144 ) ( 'N' 0x0143 ) + ( 'o' 0xf3 ) ( 'O' 0xd3 ) + ( 'r' 0x0155 ) ( 'R' 0x0154 ) + ( 's' 0x015b ) ( 'S' 0x015a ) + ( 'u' 0xfa ) ( 'U' 0xda ) + ( 'y' 0xfd ) ( 'Y' 0xdd ) + ( 'z' 0x017a ) ( 'Z' 0x0179 ) + + dcir '^' ( 'a' 0xe2 ) ( 'A' 0xc2 ) + ( 'i' 0xee ) ( 'I' 0xce ) + ( 'o' 0xf4 ) ( 'O' 0xd4 ) + + dbre 0x02d8 ( 'a' 0x0103 ) ( 'A' 0x0102 ) + ( 'c' 0x010d ) ( 'C' 0x010c ) + ( 'd' 0x010f ) ( 'D' 0x010e ) + ( 'e' 0x011b ) ( 'E' 0x011a ) + ( 'l' 0x013e ) ( 'L' 0x013d ) + ( 'n' 0x0148 ) ( 'N' 0x0147 ) + ( 'r' 0x0159 ) ( 'R' 0x0158 ) + ( 's' 0x0161 ) ( 'S' 0x0160 ) + ( 't' 0x0165 ) ( 'T' 0x0164 ) + ( 'z' 0x017e ) ( 'Z' 0x017d ) + + ddot 0x02d9 ( 'z' 0x017c ) ( 'Z' 0x017b ) + + duml 0xa8 ( 'a' 0xe4 ) ( 'A' 0xc4 ) + ( 'e' 0xeb ) ( 'E' 0xcb ) + ( 'o' 0xf6 ) ( 'O' 0xd6 ) + ( 'u' 0xfc ) ( 'U' 0xdc ) + + dsla '/' ( 'd' 0x0111 ) ( 'D' 0x0110 ) + ( 'l' 0x0142 ) ( 'L' 0x0141 ) + + drin 0xb0 ( 'u' 0x016f ) ( 'U' 0x016e ) + + dced 0xb8 ( 'a' 0x0105 ) ( 'A' 0x0104 ) + ( 'c' 0xe7 ) ( 'C' 0xc7 ) + ( 'e' 0x0119 ) ( 'E' 0x0118 ) + ( 's' 0x015f ) ( 'S' 0x015e ) + ( 't' 0x0163 ) ( 'T' 0x0162 ) + + ddac 0x02dd ( 'o' 0x0151 ) ( 'O' 0x0150 ) + ( 'u' 0x0171 ) ( 'U' 0x0170 ) + + dogo 0x02db ( 'a' 0x0105 ) ( 'A' 0x0104 ) + ( 'c' 0xe7 ) ( 'C' 0xc7 ) + ( 'e' 0x0119 ) ( 'E' 0x0118 ) + ( 's' 0x015f ) ( 'S' 0x015e ) + ( 't' 0x0163 ) ( 'T' 0x0162 ) + + dcar 0x02c7 ( 'a' 0x0103 ) ( 'A' 0x0102 ) + ( 'c' 0x010d ) ( 'C' 0x010c ) + ( 'd' 0x010f ) ( 'D' 0x010e ) + ( 'e' 0x011b ) ( 'E' 0x011a ) + ( 'l' 0x013e ) ( 'L' 0x013d ) + ( 'n' 0x0148 ) ( 'N' 0x0147 ) + ( 'r' 0x0159 ) ( 'R' 0x0158 ) + ( 's' 0x0161 ) ( 'S' 0x0160 ) + ( 't' 0x0165 ) ( 'T' 0x0164 ) + ( 'z' 0x017e ) ( 'Z' 0x017d ) diff --git a/share/vt/keymaps/centraleuropean.qwerty.kbd b/share/vt/keymaps/centraleuropean.qwerty.kbd new file mode 100644 index 0000000..ce2ea2e --- /dev/null +++ b/share/vt/keymaps/centraleuropean.qwerty.kbd @@ -0,0 +1,242 @@ +# Keyboard map for Central European languages under FreeBSD. +# Created by G. Adam Stanislav <adam@whizkidtech.net> +# +# Version 1.0 - 1999-03-18 +# +# $FreeBSD$ +# +# This map uses the US QWERTY keyboard for its basic layout. +# It adds a "third row" to the top of the PC keyboard. To +# access the third row, press and hold the Alt key, then +# strike a key in the top row. +# +# Note that some of the third-row keys produce characters. +# Others must be followed by another keystroke resulting +# in accented characters. To print the accent mark alone, +# press the space bar after pressing and releasing the +# alt-accent mark key. +# +# In most cases I have mapped a key to a character or an +# accent mark because the key on the US QWERTY keyboard +# somewhat resembles the result. +# +# In addition to the top row, three keys on the numeric keypad +# are mapped for the use with IS 8859-2 when combined with the +# Alt key: The dot (del) key combined with alt will print a +# comma instead of a dot; alt-/ will show the division mark, +# and alt-* the multpilication sign. +# +# You can see the layout here: +# +# alt-` Ë› (ogonek) and alt-~ ¸ (cedilla) +# Examples: ęąţçş +# alt-! ß (German double s) +# alt-@ ° (degree) +# alt-# ¤ (currency) +# alt-$ § (section, called paragraf in most CE languages) +# alt-% ¨ (umlaut, dve bodky) +# Examples: äüöë +# alt-^ ^ (circumflex, vokáň) +# Examples: ôâî +# alt-&  (hyphen, pomlÄka, rozdeľovacie znamienko) +# alt-* ° (ring) +# Examples: ůŮ +# alt-( Ë (Hungarian long umlaut) +# Examples: őű +# alt-) Ë™ (dot accent) +# Examples: żŻ +# alt-- ´ (acute, dĺžeň, Äárka) +# Examples: áśéÃúńźŕĺ +# alt-= ˇ (caron, mäkÄeň, háÄek) and alt-+ ˘ (breve) +# Examples: ăÄřľÄťňž +# alt-\ / (slash) +# Examples: đł +# alt-/ [on numeric keypad] ÷ +# alt-* [on numeric keypad] × +# alt-. [on numeric keypad] , +# +# This layout offers access to the entire character set of +# ISO 8859-2, used by Slovak, Czech, German, Polish, Croatian, +# Slovenian, Rumanian, Hungarian, and probably other languages, +# while remaining fully compatible with the default US QWERTY +# keyboard. +# +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop 0xdf 0xdf nop nop O + 003 '2' '@' nul nul 0xb0 0xb0 nul nul O + 004 '3' '#' nop nop 0xa4 0xa4 nop nop O + 005 '4' '$' nop nop 0xa7 0xa7 nop nop O + 006 '5' '%' nop nop duml duml nop nop O + 007 '6' '^' rs rs dcir dcir rs rs O + 008 '7' '&' nop nop 0xad 0xad nop nop O + 009 '8' '*' nop nop drin drin nop nop O + 010 '9' '(' nop nop ddac ddac nop nop O + 011 '0' ')' nop nop ddot ddot nop nop O + 012 '-' '_' us us dacu dacu us us O + 013 '=' '+' nop nop dcar dbre nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 'e' 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 '[' '{' esc esc '[' '{' esc esc O + 027 ']' '}' gs gs ']' '}' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'k' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 ';' ':' nop nop ';' ':' nop nop O + 040 ''' '"' nop nop ''' '"' nop nop O + 041 '`' '~' nop nop dogo dced nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '\' '|' fs fs dsla dsla fs fs O + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' '<' nop nop ',' '<' nop nop O + 052 '.' '>' nop nop '.' '>' nop nop O + 053 '/' '?' nop nop '/' '?' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' 0xd7 0xd7 0xd7 0xd7 O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' ',' ',' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 nop nop nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' 0xf7 0xf7 0xf7 0xf7 N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + + dacu 0xb4 ( 'a' 0xe1 ) ( 'A' 0xc1 ) + ( 'c' 0x0107 ) ( 'C' 0x0106 ) + ( 'e' 0xe9 ) ( 'E' 0xc9 ) + ( 'i' 0xed ) ( 'I' 0xcd ) + ( 'l' 0x013a ) ( 'L' 0x0139 ) + ( 'n' 0x0144 ) ( 'N' 0x0143 ) + ( 'o' 0xf3 ) ( 'O' 0xd3 ) + ( 'r' 0x0155 ) ( 'R' 0x0154 ) + ( 's' 0x015b ) ( 'S' 0x015a ) + ( 'u' 0xfa ) ( 'U' 0xda ) + ( 'y' 0xfd ) ( 'Y' 0xdd ) + ( 'z' 0x017a ) ( 'Z' 0x0179 ) + + dcir '^' ( 'a' 0xe2 ) ( 'A' 0xc2 ) + ( 'i' 0xee ) ( 'I' 0xce ) + ( 'o' 0xf4 ) ( 'O' 0xd4 ) + + dbre 0x02d8 ( 'a' 0x0103 ) ( 'A' 0x0102 ) + ( 'c' 0x010d ) ( 'C' 0x010c ) + ( 'd' 0x010f ) ( 'D' 0x010e ) + ( 'e' 0x011b ) ( 'E' 0x011a ) + ( 'l' 0x013e ) ( 'L' 0x013d ) + ( 'n' 0x0148 ) ( 'N' 0x0147 ) + ( 'r' 0x0159 ) ( 'R' 0x0158 ) + ( 's' 0x0161 ) ( 'S' 0x0160 ) + ( 't' 0x0165 ) ( 'T' 0x0164 ) + ( 'z' 0x017e ) ( 'Z' 0x017d ) + + ddot 0x02d9 ( 'z' 0x017c ) ( 'Z' 0x017b ) + + duml 0xa8 ( 'a' 0xe4 ) ( 'A' 0xc4 ) + ( 'e' 0xeb ) ( 'E' 0xcb ) + ( 'o' 0xf6 ) ( 'O' 0xd6 ) + ( 'u' 0xfc ) ( 'U' 0xdc ) + + dsla '/' ( 'd' 0x0111 ) ( 'D' 0x0110 ) + ( 'l' 0x0142 ) ( 'L' 0x0141 ) + + drin 0xb0 ( 'u' 0x016f ) ( 'U' 0x016e ) + + dced 0xb8 ( 'a' 0x0105 ) ( 'A' 0x0104 ) + ( 'c' 0xe7 ) ( 'C' 0xc7 ) + ( 'e' 0x0119 ) ( 'E' 0x0118 ) + ( 's' 0x015f ) ( 'S' 0x015e ) + ( 't' 0x0163 ) ( 'T' 0x0162 ) + + ddac 0x02dd ( 'o' 0x0151 ) ( 'O' 0x0150 ) + ( 'u' 0x0171 ) ( 'U' 0x0170 ) + + dogo 0x02db ( 'a' 0x0105 ) ( 'A' 0x0104 ) + ( 'c' 0xe7 ) ( 'C' 0xc7 ) + ( 'e' 0x0119 ) ( 'E' 0x0118 ) + ( 's' 0x015f ) ( 'S' 0x015e ) + ( 't' 0x0163 ) ( 'T' 0x0162 ) + + dcar 0x02c7 ( 'a' 0x0103 ) ( 'A' 0x0102 ) + ( 'c' 0x010d ) ( 'C' 0x010c ) + ( 'd' 0x010f ) ( 'D' 0x010e ) + ( 'e' 0x011b ) ( 'E' 0x011a ) + ( 'l' 0x013e ) ( 'L' 0x013d ) + ( 'n' 0x0148 ) ( 'N' 0x0147 ) + ( 'r' 0x0159 ) ( 'R' 0x0158 ) + ( 's' 0x0161 ) ( 'S' 0x0160 ) + ( 't' 0x0165 ) ( 'T' 0x0164 ) + ( 'z' 0x017e ) ( 'Z' 0x017d ) diff --git a/share/vt/keymaps/ch-fr.acc.kbd b/share/vt/keymaps/ch-fr.acc.kbd new file mode 100644 index 0000000..cea506b --- /dev/null +++ b/share/vt/keymaps/ch-fr.acc.kbd @@ -0,0 +1,137 @@ +# $FreeBSD$ +# +# swissfrench keymap, accent keys +# created 14.11.1999 by Martin Blapp <mb@imp.ch> +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '+' nop nop '|' '|' nop nop O + 003 '2' '"' nul nul '@' '@' nul nul O + 004 '3' '*' nop nop '#' '#' nop nop O + 005 '4' 0xe7 nop nop '4' 0xe7 nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '&' nop nop 0xac 0xac nop nop O + 008 '7' '/' nop nop 0xa6 0xa6 nop nop O + 009 '8' '(' esc esc 0xde 0xde esc esc O + 010 '9' ')' gs gs '9' ')' gs gs O + 011 '0' '=' nop nop '0' '=' nop nop O + 012 ''' '?' fs fs dacu dacu fs fs O + 013 dcir dgra nop nop dtil dtil nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 0x20ac 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'z' 'Z' sub sub 'z' 'Z' sub sub C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 0xe8 0xfc esc esc '[' 0xdc esc esc C + 027 duml '!' gs gs ']' ']' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 0xe9 0xf6 nop nop 0xe9 0xd6 nop nop C + 040 0xe0 0xe4 nop nop '{' 0xc4 nop nop C + 041 0xa7 0xb0 nop nop nop nop nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '$' 0xa3 rs rs '}' '}' rs rs O + 044 'y' 'Y' em em 'y' 'Y' em em C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 0xb5 0xb5 cr cr C + 051 ',' ';' nop nop ',' ';' nop nop O + 052 '.' ':' nop nop '.' ':' nop nop O + 053 '-' '_' us us '-' '_' us us O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' nop nop '\' '\' nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + + dacu 0xb4 ( 'a' 0xe1 ) ( 'A' 0xc1 ) ( 'e' 0xe9 ) ( 'E' 0xc9 ) + ( 'i' 0xed ) ( 'I' 0xcd ) ( 'o' 0xf3 ) ( 'O' 0xd3 ) + ( 'u' 0xfa ) ( 'U' 0xda ) ( 'c' 0xe7 ) ( 'C' 0xc7 ) + ( 'y' 0xfd ) ( 'Y' 0xdd ) + + dgra '`' ( 'a' 0xe0 ) ( 'A' 0xc0 ) ( 'e' 0xe8 ) ( 'E' 0xc8 ) + ( 'i' 0xec ) ( 'I' 0xcc ) ( 'o' 0xf2 ) ( 'O' 0xd2 ) + ( 'u' 0xf9 ) ( 'U' 0xd9 ) + + dcir '^' ( 'a' 0xe2 ) ( 'A' 0xc2 ) ( 'e' 0xea ) ( 'E' 0xca ) + ( 'i' 0xee ) ( 'I' 0xce ) ( 'o' 0xf4 ) ( 'O' 0xd4 ) + ( 'u' 0xfb ) ( 'U' 0xdb ) + + dtil '~' ( 'a' 0xe3 ) ( 'A' 0xc3 ) ( 'o' 0xf5 ) ( 'O' 0xd5 ) + ( 'n' 0xf1 ) ( 'N' 0xd1 ) + + duml 0xa8 ( 'a' 0xe4 ) ( 'A' 0xc4 ) ( 'e' 0xeb ) ( 'E' 0xcb ) + ( 'i' 0xef ) ( 'I' 0xcf ) ( 'o' 0xf6 ) ( 'O' 0xd6 ) + ( 'u' 0xfc ) ( 'U' 0xdc ) ( 'y' 0xff ) diff --git a/share/vt/keymaps/ch-fr.kbd b/share/vt/keymaps/ch-fr.kbd new file mode 100644 index 0000000..173690c --- /dev/null +++ b/share/vt/keymaps/ch-fr.kbd @@ -0,0 +1,117 @@ +# $FreeBSD$ +# +# swissfrench keymap, no dead keys +# created 14.11.1999 by Martin Blapp <mb@imp.ch> +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '+' nop nop '|' '|' nop nop O + 003 '2' '"' nul nul '@' '@' nul nul O + 004 '3' '*' nop nop '#' '#' nop nop O + 005 '4' 0xe7 nop nop '4' 0xe7 nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '&' nop nop 0xac 0xac nop nop O + 008 '7' '/' nop nop 0xa6 0xa6 nop nop O + 009 '8' '(' esc esc 0xa2 0xa2 esc esc O + 010 '9' ')' gs gs '9' ')' gs gs O + 011 '0' '=' nop nop '0' '=' nop nop O + 012 ''' '?' fs fs 0xb4 0xb4 fs fs O + 013 '^' '`' nop nop '~' '~' nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 0x20ac 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'z' 'Z' sub sub 'z' 'Z' sub sub C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 0xe8 0xfc esc esc '[' 0xdc esc esc C + 027 0xa8 '!' gs gs ']' ']' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 0xe9 0xf6 nop nop 0xe9 0xd6 nop nop C + 040 0xe0 0xe4 nop nop '{' 0xc4 nop nop C + 041 0xa7 0xb0 nop nop nop nop nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '$' 0xa3 rs rs '}' '}' rs rs O + 044 'y' 'Y' em em 'y' 'Y' em em C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 0xb5 0xb5 cr cr C + 051 ',' ';' nop nop ',' ';' nop nop O + 052 '.' ':' nop nop '.' ':' nop nop O + 053 '-' '_' us us '-' '_' us us O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' nop nop '\' '\' nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/ch.acc.kbd b/share/vt/keymaps/ch.acc.kbd new file mode 100644 index 0000000..6791199 --- /dev/null +++ b/share/vt/keymaps/ch.acc.kbd @@ -0,0 +1,137 @@ +# $FreeBSD$ +# +# swissgerman keymap, accent keys +# created 14.11.1999 by Martin Blapp <mb@imp.ch> +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '+' nop nop '|' '|' nop nop O + 003 '2' '"' nul nul '@' '@' nul nul O + 004 '3' '*' nop nop '#' '#' nop nop O + 005 '4' 0xe7 nop nop '4' 0xe7 nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '&' nop nop 0xac 0xac nop nop O + 008 '7' '/' nop nop 0xa6 0xa6 nop nop O + 009 '8' '(' esc esc 0xde 0xde esc esc O + 010 '9' ')' gs gs '9' ')' gs gs O + 011 '0' '=' nop nop '0' '=' nop nop O + 012 ''' '?' fs fs dacu dacu fs fs O + 013 dcir dgra nop nop dtil dtil nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 0x20ac 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'z' 'Z' sub sub 'z' 'Z' sub sub C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 0xfc 0xe8 esc esc '[' 0xdc esc esc C + 027 duml '!' gs gs ']' ']' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 0xf6 0xe9 nop nop 0xf6 0xd6 nop nop C + 040 0xe4 0xe0 nop nop '{' 0xc4 nop nop C + 041 0xa7 0xb0 nop nop nop nop nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '$' 0xa3 rs rs '}' '}' rs rs O + 044 'y' 'Y' em em 'y' 'Y' em em C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 0xb5 0xb5 cr cr C + 051 ',' ';' nop nop ',' ';' nop nop O + 052 '.' ':' nop nop '.' ':' nop nop O + 053 '-' '_' us us '-' '_' us us O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' nop nop '\' '\' nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + + dacu 0xb4 ( 'a' 0xe1 ) ( 'A' 0xc1 ) ( 'e' 0xe9 ) ( 'E' 0xc9 ) + ( 'i' 0xed ) ( 'I' 0xcd ) ( 'o' 0xf3 ) ( 'O' 0xd3 ) + ( 'u' 0xfa ) ( 'U' 0xda ) ( 'c' 0xe7 ) ( 'C' 0xc7 ) + ( 'y' 0xfd ) ( 'Y' 0xdd ) + + dgra '`' ( 'a' 0xe0 ) ( 'A' 0xc0 ) ( 'e' 0xe8 ) ( 'E' 0xc8 ) + ( 'i' 0xec ) ( 'I' 0xcc ) ( 'o' 0xf2 ) ( 'O' 0xd2 ) + ( 'u' 0xf9 ) ( 'U' 0xd9 ) + + dcir '^' ( 'a' 0xe2 ) ( 'A' 0xc2 ) ( 'e' 0xea ) ( 'E' 0xca ) + ( 'i' 0xee ) ( 'I' 0xce ) ( 'o' 0xf4 ) ( 'O' 0xd4 ) + ( 'u' 0xfb ) ( 'U' 0xdb ) + + dtil '~' ( 'a' 0xe3 ) ( 'A' 0xc3 ) ( 'o' 0xf5 ) ( 'O' 0xd5 ) + ( 'n' 0xf1 ) ( 'N' 0xd1 ) + + duml 0xa8 ( 'a' 0xe4 ) ( 'A' 0xc4 ) ( 'e' 0xeb ) ( 'E' 0xcb ) + ( 'i' 0xef ) ( 'I' 0xcf ) ( 'o' 0xf6 ) ( 'O' 0xd6 ) + ( 'u' 0xfc ) ( 'U' 0xdc ) ( 'y' 0xff ) diff --git a/share/vt/keymaps/ch.kbd b/share/vt/keymaps/ch.kbd new file mode 100644 index 0000000..a39dc59 --- /dev/null +++ b/share/vt/keymaps/ch.kbd @@ -0,0 +1,117 @@ +# $FreeBSD$ +# +# swissgerman keymap, no dead keys +# created 14.11.1999 by Martin Blapp <mb@imp.ch> +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '+' nop nop '|' '|' nop nop O + 003 '2' '"' nul nul '@' '@' nul nul O + 004 '3' '*' nop nop '#' '#' nop nop O + 005 '4' 0xe7 nop nop '4' 0xe7 nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '&' nop nop 0xac 0xac nop nop O + 008 '7' '/' nop nop 0xa6 0xa6 nop nop O + 009 '8' '(' esc esc 0xde 0xde esc esc O + 010 '9' ')' gs gs '9' ')' gs gs O + 011 '0' '=' nop nop '0' '=' nop nop O + 012 ''' '?' fs fs 0xb4 0xb4 fs fs O + 013 '^' '`' nop nop '~' '~' nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 0x20ac 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'z' 'Z' sub sub 'z' 'Z' sub sub C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 0xfc 0xe8 esc esc '[' 0xdc esc esc C + 027 0xa8 '!' gs gs ']' ']' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 0xf6 0xe9 nop nop 0xf6 0xd6 nop nop C + 040 0xe4 0xe0 nop nop '{' 0xc4 nop nop C + 041 0xa7 0xb0 nop nop nop nop nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '$' 0xa3 rs rs '}' '}' rs rs O + 044 'y' 'Y' em em 'y' 'Y' em em C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 0xb5 0xb5 cr cr C + 051 ',' ';' nop nop ',' ';' nop nop O + 052 '.' ':' nop nop '.' ':' nop nop O + 053 '-' '_' us us '-' '_' us us O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' nop nop '\' '\' nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/ch.macbook.acc.kbd b/share/vt/keymaps/ch.macbook.acc.kbd new file mode 100644 index 0000000..8bf6985 --- /dev/null +++ b/share/vt/keymaps/ch.macbook.acc.kbd @@ -0,0 +1,138 @@ +# $FreeBSD$ +# +# swissgerman Macbook/Macbook PRO keymap, with accent keys +# derived from swissgerman.iso.acc.kbd +# 06.08.2010 by Andreas Tobler <andreast@fgznet.ch> +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '+' nop nop '1' '1' nop nop O + 003 '2' '"' nul nul '2' '2' nul nul O + 004 '3' '*' nop nop '#' '#' nop nop O + 005 '4' 0xe7 nop nop '4' 0xe7 nop nop O + 006 '5' '%' nop nop '[' '[' nop nop O + 007 '6' '&' nop nop ']' ']' nop nop O + 008 '7' '/' nop nop '|' '\' nop nop O + 009 '8' '(' esc esc '{' '{' nop nop O + 010 '9' ')' gs gs '}' '}' nop nop O + 011 '0' '=' nop nop '0' '=' nop nop O + 012 ''' '?' fs fs dacu dacu fs fs O + 013 dcir dgra nop nop dtil dtil nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 0x20ac 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'z' 'Z' sub sub 'z' 'Z' sub sub C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 dgra duml esc esc '[' 0xdc esc esc C + 027 duml '!' gs gs ']' ']' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel '@' '@' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 0xe9 0xe9 nop nop 0xf6 0xd6 nop nop C + 040 0xe0 0xe0 nop nop '{' 0xc4 nop nop C + 041 '<' '>' nop nop nop nop nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '$' 0xa3 rs rs '}' '}' rs rs O + 044 'y' 'Y' em em 'y' 'Y' em em C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so '~' '~' so so C + 050 'm' 'M' cr cr 0xb5 0xb5 cr cr C + 051 ',' ';' nop nop ',' ';' nop nop O + 052 '.' ':' nop nop '.' ':' nop nop O + 053 '-' '_' us us '-' '_' us us O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' nop nop '\' '\' nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + + dacu 0xb4 ( 'a' 0xe1 ) ( 'A' 0xc1 ) ( 'e' 0xe9 ) ( 'E' 0xc9 ) + ( 'i' 0xed ) ( 'I' 0xcd ) ( 'o' 0xf3 ) ( 'O' 0xd3 ) + ( 'u' 0xfa ) ( 'U' 0xda ) ( 'c' 0xe7 ) ( 'C' 0xc7 ) + ( 'y' 0xfd ) ( 'Y' 0xdd ) + + dgra '`' ( 'a' 0xe0 ) ( 'A' 0xc0 ) ( 'e' 0xe8 ) ( 'E' 0xc8 ) + ( 'i' 0xec ) ( 'I' 0xcc ) ( 'o' 0xf2 ) ( 'O' 0xd2 ) + ( 'u' 0xf9 ) ( 'U' 0xd9 ) + + dcir '^' ( 'a' 0xe2 ) ( 'A' 0xc2 ) ( 'e' 0xea ) ( 'E' 0xca ) + ( 'i' 0xee ) ( 'I' 0xce ) ( 'o' 0xf4 ) ( 'O' 0xd4 ) + ( 'u' 0xfb ) ( 'U' 0xdb ) + + dtil '~' ( 'a' 0xe3 ) ( 'A' 0xc3 ) ( 'o' 0xf5 ) ( 'O' 0xd5 ) + ( 'n' 0xf1 ) ( 'N' 0xd1 ) + + duml 0xa8 ( 'a' 0xe4 ) ( 'A' 0xc4 ) ( 'e' 0xeb ) ( 'E' 0xcb ) + ( 'i' 0xef ) ( 'I' 0xcf ) ( 'o' 0xf6 ) ( 'O' 0xd6 ) + ( 'u' 0xfc ) ( 'U' 0xdc ) ( 'y' 0xff ) diff --git a/share/vt/keymaps/colemak.acc.kbd b/share/vt/keymaps/colemak.acc.kbd new file mode 100644 index 0000000..8091281 --- /dev/null +++ b/share/vt/keymaps/colemak.acc.kbd @@ -0,0 +1,147 @@ +# $FreeBSD$ +# +# Colemak Layout for FreeBSD console +# 2006-01-01 Shai Coleman, http://colemak.com/ . Public domain. + +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + + 041 '`' '~' nop nop dtil '~' nop nop O + 002 '1' '!' nop nop 0xa1 0xb9 nop nop O + 003 '2' '@' nul nul 0xba 0xb2 nul nul O + 004 '3' '#' nop nop 0xaa 0xb3 nop nop O + 005 '4' '$' nop nop 0xa2 0xa3 nop nop O + 006 '5' '%' nop nop 0xa4 0xa5 nop nop O + 007 '6' '^' rs rs '~' '~' rs rs O + 008 '7' '&' nop nop 0xf0 0xd0 nop nop O + 009 '8' '*' nop nop 0xfe 0xde nop nop O + 010 '9' '(' nop nop '~' '~' nop nop O + 011 '0' ')' nop nop '~' '~' nop nop O + 012 '-' '_' us us '~' '~' us us O + 013 '=' '+' nop nop 0xd7 0xf7 nop nop O + + 016 'q' 'Q' dc1 dc1 0xe4 0xc4 dc1 dc1 C + 017 'w' 'W' etb etb 0xe5 0xc5 etb etb C + 018 'f' 'F' ack ack 0xe3 0xc3 ack ack C + 019 'p' 'P' dle dle 0xf8 0xd8 dle dle C + 020 'g' 'G' bel bel '~' '~' bel bel C + 021 'j' 'J' nl nl '~' '~' nl nl C + 022 'l' 'L' ff ff '~' '~' ff ff C + 023 'u' 'U' nak nak 0xfa 0xda nak nak C + 024 'y' 'Y' em em 0xfc 0xdc em em C + 025 ';' ':' nop nop 0xf6 0xd6 nop nop O + 026 '[' '{' esc esc 0xab '~' esc esc O + 027 ']' '}' gs gs 0xbb '~' gs gs O + 043 '\' '|' fs fs '~' '~' fs fs O + + 030 'a' 'A' soh soh 0xe1 0xc1 soh soh C + 031 'r' 'R' dc2 dc2 dgra '~' dc2 dc2 C + 032 's' 'S' dc3 dc3 0xdf '~' dc3 dc3 C + 033 't' 'T' dc4 dc4 dacu '~' dc4 dc4 C + 034 'd' 'D' eot eot duml '~' eot eot C + 035 'h' 'H' bs bs '~' '~' bs bs C + 036 'n' 'N' so so 0xf1 0xd1 so so C + 037 'e' 'E' enq enq 0xe9 0xc9 enq enq C + 038 'i' 'I' ht ht 0xed 0xcd ht ht C + 039 'o' 'O' si si 0xf3 0xd3 si si C + 040 ''' '"' nop nop 0xf5 0xd5 nop nop O + + 044 'z' 'Z' sub sub 0xe6 0xc6 sub sub C + 045 'x' 'X' can can dcir '~' can can C + 046 'c' 'C' etx etx 0xe7 0xc7 etx etx C + 047 'v' 'V' syn syn 0xbd 0xbc syn syn C + 048 'b' 'B' stx stx '~' '~' stx stx C + 049 'k' 'K' vt vt drin '~' vt vt C + 050 'm' 'M' cr cr '~' '~' cr cr C + 051 ',' '<' nop nop dced '~' nop nop O + 052 '.' '>' nop nop '~' '~' nop nop O + 053 '/' '?' nop nop 0xbf '~' nop nop O + + 058 bs bs bs bs bs bs bs bs O + 086 '-' '_' us us '~' '~' us us O + 057 ' ' ' ' nul nul ' ' ' ' susp susp O + + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug debug O + 014 bs bs del del bs bs del del O + 015 ht btab nscr nscr ht btab nop nop O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr nscr nop nop debug debug debug debug O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 saver saver susp susp nop nop susp susp O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + + dgra '`' ( 'a' 0xe0 ) ( 'A' 0xc0 ) ( 'e' 0xe8 ) ( 'E' 0xc8 ) + ( 'i' 0xec ) ( 'I' 0xcc ) ( 'o' 0xf2 ) ( 'O' 0xd2 ) + ( 'u' 0xf9 ) ( 'U' 0xd9 ) + + dacu 0xb4 ( 'a' 0xe1 ) ( 'A' 0xc1 ) ( 'e' 0xe9 ) ( 'E' 0xc9 ) + ( 'i' 0xed ) ( 'I' 0xcd ) ( 'o' 0xf3 ) ( 'O' 0xd3 ) + ( 'u' 0xfa ) ( 'U' 0xda ) ( 'y' 0xfd ) ( 'Y' 0xdd ) + + dcir '^' ( 'a' 0xe2 ) ( 'A' 0xc2 ) ( 'e' 0xea ) ( 'E' 0xca ) + ( 'i' 0xee ) ( 'I' 0xce ) ( 'o' 0xf4 ) ( 'O' 0xd4 ) + ( 'u' 0xfb ) ( 'U' 0xdb ) + + dtil '~' ( 'a' 0xe3 ) ( 'A' 0xc3 ) ( 'n' 0xf1 ) ( 'N' 0xd1 ) + ( 'o' 0xf5 ) ( 'O' 0xd5 ) + + duml 0xa8 ( 'a' 0xe4 ) ( 'A' 0xc4 ) ( 'e' 0xeb ) ( 'E' 0xcb ) + ( 'i' 0xef ) ( 'I' 0xcf ) ( 'o' 0xf6 ) ( 'O' 0xd6 ) + ( 'u' 0xfc ) ( 'U' 0xdc ) ( 'y' 0xff ) + + drin 0xb0 ( 'a' 0xe5 ) ( 'A' 0xc5 ) + + dced 0xb8 ( 'c' 0xe7 ) ( 'C' 0xc7 ) diff --git a/share/vt/keymaps/cz.kbd b/share/vt/keymaps/cz.kbd new file mode 100644 index 0000000..3db432e --- /dev/null +++ b/share/vt/keymaps/cz.kbd @@ -0,0 +1,296 @@ +# Czech Standard Typewriter QWERTZ Keyboard +# by Rudolf Cejka <cejkar@fit.vutbr.cz> +# +# $FreeBSD$ +# +# English/Czech keyboard lock: (Left)Alt+Shift +# English/Czech keyboard shift: (Right)AltGr +# +# Meta shift: (Right|Left)Windows, Menu +# +# Previous screen: Ctrl+(Grey)Left +# Next screen: Ctrl+(Grey)Right +# +# Screen saver: Shift+Pause +# Suspend power (APM): (Left)Alt+Pause +# +# Accent characters: +# acute: [=/+] and =SZszRALCEINOUYralceinouy => ´ŚŹśźŔÃĹĆÉÃŃÓÚÃŕáĺćéÃńóúý +# caron: Shift+[=/+] and =LSTZlstzCEDNRcednrUu => ˇĽŠŤŽľšťžČĚĎŇŘÄÄ›ÄňřŮů +# circumflex: Alt+Ctrl+[=/+] and =AIOaio => ^ÂÎÔâîô +# breve: Ctrl+Shift+[=/+] and =Aa => ˘Ăă +# cedilla: Ctrl+[-/_] and -SsCTct => ¸ŞşÇŢçţ +# dot: Alt+[=/+] and =Zz => ˙Żż +# double acute: Alt+Shift+[-/_] and -OUou => ËÅŰőű +# double dot: Alt+Shift+[=/+] and =AEOUaeou => ¨ÄËÖÜäëöü +# ogonek: Ctrl+Shift+[-/_] and -AaEe => ˛ĄąĘę +# ring: Ctrl+[=/+] and =Uuso78/ => °Ůůߤ§×÷ +# slash: Alt+[-/_] and -LlDd => ÂÅÅ‚ÄÄ‘ +# +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug panic O + 002 '1' '!' nop nop '1' '!' nop nop O + 003 '2' '@' nul nul '2' '@' nul nul O + 004 '3' '#' nop nop '3' '#' nop nop O + 005 '4' '$' nop nop '4' '$' nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '^' rs rs '6' '^' rs rs O + 008 '7' '&' nop nop '7' '&' nop nop O + 009 '8' '*' nop nop '8' '*' nop nop O + 010 '9' '(' nop nop '9' '(' nop nop O + 011 '0' ')' nop nop '0' ')' nop nop O + 012 '-' '_' us us '-' '_' us us O + 013 '=' '+' nop nop '=' '+' nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 'e' 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 '[' '{' esc esc '[' '{' esc esc O + 027 ']' '}' gs gs ']' '}' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 ';' ':' nop nop ';' ':' nop nop O + 040 ''' '"' nop nop ''' '"' nop nop O + 041 '`' '~' nop nop '`' '~' nop nop O + 042 lshift lshift lshift lshift lshifta lshifta lshift lshift O + 043 '\' '|' fs fs '\' '|' fs fs O + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' '<' nop nop ',' '<' nop nop O + 052 '.' '>' nop nop '.' '>' nop nop O + 053 '/' '?' nop nop '/' '?' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' N + 056 lalt lalta lalt lalt lalt lalta lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 nop nop nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl N + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ashift ashift ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 pscr pscr fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 nscr nscr fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 meta meta fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 meta meta fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 meta meta fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 128 nop nop nop nop nop nop nop nop O + 129 esc esc esc esc esc esc debug panic O + 130 '+' '1' nop nop '+' '1' nop nop O + 131 0x011b '2' nop nop 0x011b '2' nop nop O + 132 0x0161 '3' nop nop 0x0161 '3' nop nop O + 133 0x010d '4' nop nop 0x010d '4' nop nop O + 134 0x0159 '5' nop nop 0x0159 '5' nop nop O + 135 0x017e '6' nop nop 0x017e '6' nop nop O + 136 0xfd '7' nop nop 0xfd '7' nop nop O + 137 0xe1 '8' nop nop 0xe1 '8' nop nop O + 138 0xed '9' nop nop 0xed '9' nop nop O + 139 0xe9 '0' nop nop 0xe9 '0' nop nop O + 140 '=' '%' dced dogo dsla ddac nop nop O + 141 dacu dcar drin dbre ddot duml dcir nop O + 142 bs bs del del bs bs del del O + 143 ht btab nop nop ht btab nop nop O + 144 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 145 'w' 'W' etb etb 'w' 'W' etb etb C + 146 'e' 'E' enq enq 'e' 'E' enq enq C + 147 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 148 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 149 'z' 'Z' sub sub 'z' 'Z' sub sub C + 150 'u' 'U' nak nak 'u' 'U' nak nak C + 151 'i' 'I' ht ht 'i' 'I' ht ht C + 152 'o' 'O' si si 'o' 'O' si si C + 153 'p' 'P' dle dle 'p' 'P' dle dle C + 154 0xfa '/' nop nop 0xfa '/' nop nop O + 155 ')' '(' nop nop ')' '(' nop nop O + 156 cr cr nl nl cr cr nl nl O + 157 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 158 'a' 'A' soh soh 'a' 'A' soh soh C + 159 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 160 'd' 'D' eot eot 'd' 'D' eot eot C + 161 'f' 'F' ack ack 'f' 'F' ack ack C + 162 'g' 'G' bel bel 'g' 'G' bel bel C + 163 'h' 'H' bs bs 'h' 'H' bs bs C + 164 'j' 'J' nl nl 'j' 'J' nl nl C + 165 'k' 'K' vt vt 'k' 'K' vt vt C + 166 'l' 'L' ff ff 'l' 'L' ff ff C + 167 0x016f '"' nop nop 0x016f '"' nop nop O + 168 0xa7 '!' nop nop 0xa7 '!' nop nop O + 169 '`' ';' nop nop '`' ';' nop nop O + 170 lshift lshift lshift lshift lshifta lshifta lshift lshift O + 171 '\' '|' fs fs '\' '|' fs fs O + 172 'y' 'Y' em em 'y' 'Y' em em C + 173 'x' 'X' can can 'x' 'X' can can C + 174 'c' 'C' etx etx 'c' 'C' etx etx C + 175 'v' 'V' syn syn 'v' 'V' syn syn C + 176 'b' 'B' stx stx 'b' 'B' stx stx C + 177 'n' 'N' so so 'n' 'N' so so C + 178 'm' 'M' cr cr 'm' 'M' cr cr C + 179 ',' '?' nop nop ',' '?' nop nop O + 180 '.' ':' nop nop '.' ':' nop nop O + 181 '-' '_' us us '-' '_' us us O + 182 rshift rshift rshift rshift rshift rshift rshift rshift O + 183 '*' '*' '*' '*' '*' '*' '*' '*' N + 184 lalt lalta lalt lalt lalt lalta lalt lalt O + 185 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 186 clock clock clock clock clock clock clock clock O + 187 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 188 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 189 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 190 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 191 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 192 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 193 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 194 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 195 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 196 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 197 nlock nlock nlock nlock nlock nlock nlock nlock O + 198 slock slock slock slock slock slock slock slock O + 199 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 200 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 201 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 202 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 203 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 204 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 205 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 206 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 207 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 208 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 209 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 210 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 211 del '.' '.' '.' '.' '.' boot boot N + 212 nop nop nop nop nop nop nop nop O + 213 nop nop nop nop nop nop nop nop O + 214 nop nop nop nop nop nop nop nop O + 215 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 216 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 217 cr cr nl nl cr cr nl nl N + 218 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 219 '/' '/' '/' '/' '/' '/' '/' '/' N + 220 nscr pscr debug debug nop nop nop nop O + 221 ashift ashift ralt ralt ralt ralt ralt ralt O + 222 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 223 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 224 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 225 fkey53 fkey53 pscr pscr fkey53 fkey53 fkey53 fkey53 O + 226 fkey55 fkey55 nscr nscr fkey55 fkey55 fkey55 fkey55 O + 227 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 228 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 229 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 230 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 231 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 232 slock saver slock saver susp nop susp nop O + 233 meta meta fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 234 meta meta fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 235 meta meta fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 236 nop nop nop nop nop nop nop nop O + + dacu 0xb4 ( 0xb4 0xb4 ) ( 'S' 0x015a ) ( 'Z' 0x0179 ) ( 's' 0x015b ) + ( 'z' 0x017a ) ( 'R' 0x0154 ) ( 'A' 0xc1 ) ( 'L' 0x0139 ) + ( 'C' 0x0106 ) ( 'E' 0xc9 ) ( 'I' 0xcd ) ( 'N' 0x0143 ) + ( 'O' 0xd3 ) ( 'U' 0xda ) ( 'Y' 0xdd ) ( 'r' 0x0155 ) + ( 'a' 0xe1 ) ( 'l' 0x013a ) ( 'c' 0x0107 ) ( 'e' 0xe9 ) + ( 'i' 0xed ) ( 'n' 0x0144 ) ( 'o' 0xf3 ) ( 'u' 0xfa ) + ( 'y' 0xfd ) + + dcir '^' ( '^' '^' ) ( 'A' 0xc2 ) ( 'I' 0xce ) ( 'O' 0xd4 ) + ( 'a' 0xe2 ) ( 'i' 0xee ) ( 'o' 0xf4 ) + + dbre 0x02d8 ( 0x02d8 0x02d8 ) ( 'A' 0x0102 ) ( 'a' 0x0103 ) + + ddot 0x02d9 ( 0x02d9 0x02d9 ) ( 'Z' 0x017b ) ( 'z' 0x017c ) + + duml 0xa8 ( 0xa8 0xa8 ) ( 'A' 0xc4 ) ( 'E' 0xcb ) ( 'O' 0xd6 ) + ( 'U' 0xdc ) ( 'a' 0xe4 ) ( 'e' 0xeb ) ( 'o' 0xf6 ) + ( 'u' 0xfc ) + + dsla 0xad ( 0xad 0xad ) ( 'L' 0x0141 ) ( 'l' 0x0142 ) ( 'D' 0x0110 ) + ( 'd' 0x0111 ) + + drin 0xb0 ( 0xb0 0xb0 ) ( 'U' 0x016e ) ( 'u' 0x016f ) ( 's' 0xdf ) + ( 'o' 0xa4 ) ( 0xfd 0xa7 ) ( 0xe1 0xd7 ) ( '-' 0xf7 ) + + dced 0xb8 ( 0xb8 0xb8 ) ( 'S' 0x015e ) ( 's' 0x015f ) ( 'C' 0xc7 ) + ( 'T' 0x0162 ) ( 'c' 0xe7 ) ( 't' 0x0163 ) + + ddac 0x02dd ( 0x02dd 0x02dd ) ( 'O' 0x0150 ) ( 'U' 0x0170 ) ( 'o' 0x0151 ) + ( 'u' 0x0171 ) + + dogo 0x02db ( 0x02db 0x02db ) ( 'A' 0x0104 ) ( 'a' 0x0105 ) ( 'E' 0x0118 ) + ( 'e' 0x0119 ) + + dcar 0x02c7 ( 0x02c7 0x02c7 ) ( 'L' 0x013d ) ( 'S' 0x0160 ) ( 'T' 0x0164 ) + ( 'Z' 0x017d ) ( 'l' 0x013e ) ( 's' 0x0161 ) ( 't' 0x0165 ) + ( 'z' 0x017e ) ( 'C' 0x010c ) ( 'E' 0x011a ) ( 'D' 0x010e ) + ( 'N' 0x0147 ) ( 'R' 0x0158 ) ( 'c' 0x010d ) ( 'e' 0x011b ) + ( 'd' 0x010f ) ( 'n' 0x0148 ) ( 'r' 0x0159 ) ( 'U' 0x016e ) + ( 'u' 0x016f ) diff --git a/share/vt/keymaps/de.acc.kbd b/share/vt/keymaps/de.acc.kbd new file mode 100644 index 0000000..36de267 --- /dev/null +++ b/share/vt/keymaps/de.acc.kbd @@ -0,0 +1,137 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '1' '!' nop nop O + 003 '2' '"' nop nop 0xb2 0xb2 nop nop O + 004 '3' 0xa7 nop nop 0xb3 0xb3 nop nop O + 005 '4' '$' nop nop '4' '$' nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '&' nop nop '6' '&' nop nop O + 008 '7' '/' nop nop '{' '{' nop nop O + 009 '8' '(' esc esc '[' '[' esc esc O + 010 '9' ')' gs gs ']' ']' gs gs O + 011 '0' '=' nop nop '}' '}' nop nop O + 012 0xdf '?' fs fs '\' '\' fs fs O + 013 dacu dgra nop nop 0xb3 0xb4 nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 '@' '@' nul nul C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 0x20ac 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'z' 'Z' sub sub 'z' 'Z' sub sub C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 0xfc 0xdc nop nop 0xfc 0xdc esc nop C + 027 '+' '*' nop nop dtil dtil nop nop O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 0xf6 0xd6 nop nop 0xf6 0xd6 nop nop C + 040 0xe4 0xc4 nop nop 0xe4 0xc4 nop nop C + 041 dcir 0xb0 rs rs '^' 0xb0 rs rs O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '#' ''' nop nop '#' ''' nop nop O + 044 'y' 'Y' em em 'y' 'Y' em em C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 0xa2 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 0xb5 0xb5 cr cr C + 051 ',' ';' nop nop ',' ';' nop nop O + 052 '.' ':' nop nop '.' ':' nop nop O + 053 '-' '_' us us '-' '_' us us O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' nop nop '|' 0xa6 nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + + dgra '`' ( 'a' 0xe0 ) ( 'A' 0xc0 ) ( 'e' 0xe8 ) ( 'E' 0xc8 ) + ( 'i' 0xec ) ( 'I' 0xcc ) ( 'o' 0xf2 ) ( 'O' 0xd2 ) + ( 'u' 0xf9 ) ( 'U' 0xd9 ) + + dacu 0xb4 ( 'a' 0xe1 ) ( 'A' 0xc1 ) ( 'e' 0xe9 ) ( 'E' 0xc9 ) + ( 'i' 0xed ) ( 'I' 0xcd ) ( 'o' 0xf3 ) ( 'O' 0xd3 ) + ( 'u' 0xfa ) ( 'U' 0xda ) ( 'y' 0xfd ) ( 'Y' 0xdd ) + + dcir '^' ( 'a' 0xe2 ) ( 'A' 0xc2 ) ( 'e' 0xea ) ( 'E' 0xca ) + ( 'i' 0xee ) ( 'I' 0xce ) ( 'o' 0xf4 ) ( 'O' 0xd4 ) + ( 'u' 0xfb ) ( 'U' 0xdb ) + + dtil '~' ( 'a' 0xe3 ) ( 'A' 0xc3 ) ( 'n' 0xf1 ) ( 'N' 0xd1 ) + ( 'o' 0xf5 ) ( 'O' 0xd5 ) + + duml 0xa8 ( 'a' 0xe4 ) ( 'A' 0xc4 ) ( 'e' 0xeb ) ( 'E' 0xcb ) + ( 'i' 0xef ) ( 'I' 0xcf ) ( 'o' 0xf6 ) ( 'O' 0xd6 ) + ( 'u' 0xfc ) ( 'U' 0xdc ) ( 'y' 0xff ) + + drin 0xb0 ( 'a' 0xe5 ) ( 'A' 0xc5 ) + + dced 0xb8 ( 'c' 0xe7 ) ( 'C' 0xc7 ) diff --git a/share/vt/keymaps/de.kbd b/share/vt/keymaps/de.kbd new file mode 100644 index 0000000..7568e27 --- /dev/null +++ b/share/vt/keymaps/de.kbd @@ -0,0 +1,126 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '1' '!' nop nop O + 003 '2' '"' nop nop 0xb2 0xb2 nop nop O + 004 '3' 0xa7 nop nop 0xb3 0xb3 nop nop O + 005 '4' '$' nop nop '4' '$' nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '&' nop nop '6' '&' nop nop O + 008 '7' '/' nop nop '{' '{' nop nop O + 009 '8' '(' esc esc '[' '[' esc esc O + 010 '9' ')' gs gs ']' ']' gs gs O + 011 '0' '=' nop nop '}' '}' nop nop O + 012 0xdf '?' fs fs '\' '\' fs fs O + 013 dacu dgra nop nop 0xb3 0xb4 nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 '@' '@' nul nul C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 0x20ac 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'z' 'Z' sub sub 'z' 'Z' sub sub C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 0xfc 0xdc nop nop 0xfc 0xdc esc nop C + 027 '+' '*' nop nop '~' '~' nop nop O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 0xf6 0xd6 nop nop 0xf6 0xd6 nop nop C + 040 0xe4 0xc4 nop nop 0xe4 0xc4 nop nop C + 041 dcir 0xb0 rs rs '^' 0xb0 rs rs O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '#' ''' nop nop '#' ''' nop nop O + 044 'y' 'Y' em em 'y' 'Y' em em C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 0xa2 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 0xb5 0xb5 cr cr C + 051 ',' ';' nop nop ',' ';' nop nop O + 052 '.' ':' nop nop '.' ':' nop nop O + 053 '-' '_' us us '-' '_' us us O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' nop nop '|' 0xa6 nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + + dgra '`' ( 'a' 0xe0 ) ( 'A' 0xc0 ) ( 'e' 0xe8 ) ( 'E' 0xc8 ) + ( 'i' 0xec ) ( 'I' 0xcc ) ( 'o' 0xf2 ) ( 'O' 0xd2 ) + ( 'u' 0xf9 ) ( 'U' 0xd9 ) + + dacu 0xb4 ( 'a' 0xe1 ) ( 'A' 0xc1 ) ( 'e' 0xe9 ) ( 'E' 0xc9 ) + ( 'i' 0xed ) ( 'I' 0xcd ) ( 'o' 0xf3 ) ( 'O' 0xd3 ) + ( 'u' 0xfa ) ( 'U' 0xda ) ( 'y' 0xfd ) ( 'Y' 0xdd ) + + dcir '^' ( 'a' 0xe2 ) ( 'A' 0xc2 ) ( 'e' 0xea ) ( 'E' 0xca ) + ( 'i' 0xee ) ( 'I' 0xce ) ( 'o' 0xf4 ) ( 'O' 0xd4 ) + ( 'u' 0xfb ) ( 'U' 0xdb ) diff --git a/share/vt/keymaps/de.noacc.kbd b/share/vt/keymaps/de.noacc.kbd new file mode 100644 index 0000000..26ff37a --- /dev/null +++ b/share/vt/keymaps/de.noacc.kbd @@ -0,0 +1,115 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '1' '!' nop nop O + 003 '2' '"' nop nop 0xb2 0xb2 nop nop O + 004 '3' 0xa7 nop nop 0xb3 0xb3 nop nop O + 005 '4' '$' nop nop '4' '$' nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '&' nop nop '6' '&' nop nop O + 008 '7' '/' nop nop '{' '{' nop nop O + 009 '8' '(' esc esc '[' '[' esc esc O + 010 '9' ')' gs gs ']' ']' gs gs O + 011 '0' '=' nop nop '}' '}' nop nop O + 012 0xdf '?' fs fs '\' '\' fs fs O + 013 ''' '`' nop nop 0xb3 0xb4 nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 '@' '@' nul nul C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 0x20ac 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'z' 'Z' sub sub 'z' 'Z' sub sub C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 0xfc 0xdc nop nop 0xfc 0xdc esc nop C + 027 '+' '*' nop nop '~' '~' nop nop O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 0xf6 0xd6 nop nop 0xf6 0xd6 nop nop C + 040 0xe4 0xc4 nop nop 0xe4 0xc4 nop nop C + 041 '^' 0xb0 rs rs '^' 0xb0 rs rs O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '#' ''' nop nop '#' ''' nop nop O + 044 'y' 'Y' em em 'y' 'Y' em em C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 0xa2 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 0xb5 0xb5 cr cr C + 051 ',' ';' nop nop ',' ';' nop nop O + 052 '.' ':' nop nop '.' ':' nop nop O + 053 '-' '_' us us '-' '_' us us O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N +# 083 del ',' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' nop nop '|' 0xa6 nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/dk.acc.kbd b/share/vt/keymaps/dk.acc.kbd new file mode 100644 index 0000000..ef97c92 --- /dev/null +++ b/share/vt/keymaps/dk.acc.kbd @@ -0,0 +1,162 @@ +# Copyright (c) 2004 +# Kim Norgaard <jasen@jasen.dk>, Denmark. +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer as +# the first lines of this file unmodified. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# THIS SOFTWARE IS PROVIDED BY KIM NOORGAARD ``AS IS'' AND ANY EXPRESS OR +# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +# IN NO EVENT SHALL KIM NOORGAARD BE LIABLE FOR ANY DIRECT, INDIRECT, +# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# +# $FreeBSD$ + +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop 0xa1 0xb9 nop nop O + 003 '2' '"' nul nul '@' 0xb2 nul nul O + 004 '3' '#' nop nop 0x9e 0xb3 nop nop O + 005 '4' 0xa4 nop nop '$' 0xa4 nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '&' nop nop '6' '&' nop nop O + 008 '7' '/' nop nop '{' '/' nop nop O + 009 '8' '(' esc esc '[' '8' esc esc O + 010 '9' ')' gs gs ']' ')' gs gs O + 011 '0' '=' nop nop '}' '=' nop nop O + 012 '+' '?' nop nop '+' 0xbf nop nop O + 013 dacu dgra nop nop '|' '`' nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 0x20ac 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 0xe5 0xc5 nop nop 0x86 0x8f nop nop C + 027 duml dcir rs rs dtil '^' rs rs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 0xdf 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 0xe6 0xc6 nop nop 0x91 0x92 nop nop C + 040 0xf8 0xd8 nop nop 0x9b 0x9d nop nop C + 041 0xbd 0xa7 nop nop 0xbd 0xa7 nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 ''' '*' nop nop ''' '*' nop nop O + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' ';' nop nop ',' ';' nop nop O + 052 '.' ':' nop nop '.' ':' nop nop O + 053 '-' '_' us us '-' '_' us us O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' fs fs '\' '>' fs fs O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' O + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + + duml '"' ( 'a' 0xe4 ) ( 'A' 0xc4 ) ( 'e' 0xeb ) ( 'E' 0xcb ) + ( 'i' 0xef ) ( 'I' 0xcf ) ( 'o' 0xf6 ) ( 'O' 0xd6 ) + ( 'u' 0xfc ) ( 'U' 0xdc ) ( 'y' 0xff ) + + dcir '^' ( 'a' 0xe2 ) ( 'A' 0xc2 ) ( 'e' 0xea ) ( 'E' 0xca ) + ( 'i' 0xee ) ( 'I' 0xce ) ( 'o' 0xf4 ) ( 'O' 0xd4 ) + ( 'u' 0xfb ) ( 'U' 0xdb ) + + dtil '~' ( 'a' 0xe3 ) ( 'A' 0xc3 ) ( 'n' 0xf1 ) ( 'N' 0xd1 ) + ( 'o' 0xf5 ) ( 'O' 0xd5 ) + + dgra '`' ( 'a' 0xe0 ) ( 'A' 0xc0 ) ( 'e' 0xe8 ) ( 'E' 0xc8 ) + ( 'i' 0xec ) ( 'I' 0xcc ) ( 'o' 0xf2 ) ( 'O' 0xd2 ) + ( 'u' 0xf9 ) ( 'U' 0xd9 ) + + dacu ''' ( 'a' 0xe1 ) ( 'A' 0xc1 ) ( 'e' 0xe9 ) ( 'E' 0xc9 ) + ( 'i' 0xed ) ( 'I' 0xcd ) ( 'o' 0xf3 ) ( 'O' 0xd3 ) + ( 'u' 0xfa ) ( 'U' 0xda ) ( 'y' 0xfd ) ( 'Y' 0xdd ) + + drin 0xb0 ( 'a' 0xe5 ) ( 'A' 0xc5 ) + + dced 0xb8 ( 'c' 0xe7 ) ( 'C' 0xc7 ) diff --git a/share/vt/keymaps/dk.kbd b/share/vt/keymaps/dk.kbd new file mode 100644 index 0000000..58789ff --- /dev/null +++ b/share/vt/keymaps/dk.kbd @@ -0,0 +1,114 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '1' '!' nop nop O + 003 '2' '"' nul nul '@' '@' nul nul O + 004 '3' '#' nop nop 0x9e '#' nop nop O + 005 '4' 0xa4 nop nop '$' 0xa4 nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '&' nop nop '6' '&' nop nop O + 008 '7' '/' nop nop '{' '/' nop nop O + 009 '8' '(' esc esc '[' '(' esc esc O + 010 '9' ')' gs gs ']' ')' gs gs O + 011 '0' '=' nop nop '}' '=' nop nop O + 012 '+' '?' nop nop '+' '?' nop nop O + 013 ''' '`' nop nop '|' '`' nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 0x20ac 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 0xe5 0xc5 nop nop 0x86 0x8f nop nop C + 027 '"' '^' rs rs '~' '^' rs rs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 0xe6 0xc6 nop nop 0x91 0x92 nop nop C + 040 0xf8 0xd8 nop nop 0x9b 0x9d nop nop C + 041 0xbd 0xa7 nop nop 0xbd 0xa7 nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 ''' '*' nop nop ''' '*' nop nop O + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' ';' nop nop ',' ';' nop nop O + 052 '.' ':' nop nop '.' ':' nop nop O + 053 '-' '_' us us '-' '_' us us O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' fs fs '\' '>' fs fs O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' O + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/dk.macbook.kbd b/share/vt/keymaps/dk.macbook.kbd new file mode 100644 index 0000000..e7a7dea --- /dev/null +++ b/share/vt/keymaps/dk.macbook.kbd @@ -0,0 +1,117 @@ +# $FreeBSD$ +# Danish keyboard layout for Apple MacBook keyboards. Not all +# key combinations are available in this character set yet. +# by Erik Cederstrand <erik@cederstrand.dk> +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' '1' nop 0xa1 0xaf '1' '1' O + 003 '2' '"' '2' '2' nop nop '2' '2' O + 004 '3' '#' '3' '3' 0xa7 '$' '3' '3' O + 005 '4' nop '4' '4' 0xa3 0xa2 '4' '4' O + 006 '5' '%' '5' '5' nop nop '5' '5' O + 007 '6' '&' '6' '6' nop nop '6' '6' O + 008 '7' '/' '7' '7' 0xb6 '\' '7' '7' O + 009 '8' '(' '8' '8' '[' '{' '8' '8' O + 010 '9' ')' '9' '9' ']' '}' '9' '9' O + 011 '0' '=' '0' '0' nop nop '0' '0' O + 012 '+' '?' '+' '+' 0xb1 0xbf '+' '+' O + 013 dacu dgra dacu dacu ''' nop dacu dacu O + 014 bs del del bs del bs susp bs O + 015 ht btab ht ht ht btab ht ht O + 016 'q' 'Q' dc1 dc1 0xba nop nop nop C + 017 'w' 'W' etb etb 'w' 0xb0 nop nop C + 018 'e' 'E' enq enq 0xdf nop nop nop C + 019 'r' 'R' dc2 dc2 0xae nop nop nop C + 020 't' 'T' dc4 dc4 nop nop nop nop C + 021 'y' 'Y' em em 0xa5 0xff nop nop C + 022 'u' 'U' nak nak 0xfc nop nop nop C + 023 'i' 'I' ht ht '|' nop nop nop C + 024 'o' 'O' si si nop nop nop nop C + 025 'p' 'P' dle dle nop nop nop nop C + 026 0xe5 nop nop nop nop nop nop nop C + 027 0xa8 '^' nop nop '~' '^' '~' '~' O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 0xaa nop nop nop C + 031 's' 'S' dc3 dc3 nop nop nop nop C + 032 'd' 'D' eot eot 0xf0 nop nop nop C + 033 'f' 'F' ack ack nop nop nop nop C + 034 'g' 'G' bel bel 0xa9 nop nop nop C + 035 'h' 'H' bs bs 0xab 0xbb nop nop C + 036 'j' 'J' nl nl nop nop nop nop C + 037 'k' 'K' vt vt nop nop nop nop C + 038 'l' 'L' ff ff 0xac nop nop nop C + 039 0xe6 nop nop nop 0xe4 nop nop nop C + 040 0xf8 nop nop nop 0xf6 nop nop nop C + 041 '$' 0xa7 '0' '0' nop ''' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 ''' '*' nop nop '@' nop nop nop O + 044 'z' 'Z' sub sub nop 0xb8 nop nop C + 045 'x' 'X' can can nop nop nop nop C + 046 'c' 'C' etx etx 0xe7 nop nop nop C + 047 'v' 'V' syn syn 'v' 'V' nop nop C + 048 'b' 'B' stx stx nop nop nop nop C + 049 'n' 'N' so so 0xf1 nop nop nop C + 050 'm' 'M' cr cr 0xb5 nop nop nop C + 051 ',' ';' ',' ',' ',' ';' ',' ',' O + 052 '.' ':' '.' '.' 0xb7 0xf7 '.' '.' O + 053 '-' '_' '-' '-' '-' nop '-' '-' O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 nlock fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 slock fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 '7' '7' '7' '7' '7' '7' '7' '7' N + 072 '8' '8' '8' '8' '8' '8' '8' '8' N + 073 '9' '9' '9' '9' '9' '9' '9' '9' N + 074 '-' '-' '-' '-' '-' '-' '-' '-' N + 075 '4' '4' '4' '4' '4' '4' '4' '4' N + 076 '5' '5' '5' '5' '5' '5' '5' '5' N + 077 '6' '6' '6' '6' '6' '6' '6' '6' N + 078 '+' '+' '+' '+' '+' '+' '+' '+' N + 079 '1' '1' '1' '1' '1' '1' '1' '1' N + 080 '2' '2' '2' '2' '2' '2' '2' '2' N + 081 '3' '3' '3' '3' '3' '3' '3' '3' N + 082 '0' '0' '0' '0' '0' '0' '0' '0' N + 083 ',' ',' ',' ',' ',' ',' ',' ',' N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' fs fs '\' '>' fs fs O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' O + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 'I' fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 'Q' fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 'O' fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 'G' fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 del del del del del fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/ee.kbd b/share/vt/keymaps/ee.kbd new file mode 100644 index 0000000..24eea36 --- /dev/null +++ b/share/vt/keymaps/ee.kbd @@ -0,0 +1,114 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop nop nop nop nop O + 003 '2' '"' nul nul '@' '@' nul nul O + 004 '3' '#' nop nop 0xa3 nop nop nop O + 005 '4' '$' nop nop '$' nop nop nop O + 006 '5' '%' nop nop nop nop nop nop O + 007 '6' '&' nop nop nop nop nop nop O + 008 '7' '/' nop nop '{' nop nop nop O + 009 '8' '(' nop nop '[' nop nop nop O + 010 '9' ')' nop nop ']' nop gs nop O + 011 '0' '=' nop nop '}' nop nop nop O + 012 '+' '?' nop nop '\' nop fs nop O + 013 '`' '`' nop nop '`' '`' nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 0x20ac 0x20ac enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 0xfc 0xdc nop nop 0xfc 0xdc nop nop C + 027 0xf5 0xd5 nop nop 0xa7 0xa7 nop nop O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 0x0161 0x0160 dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 0xf6 0xd6 nop nop 0xf6 0xd6 nop nop C + 040 0xe4 0xc4 nop nop '^' '^' nop nop C + 041 '~' '~' nop nop '~' '~' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 ''' '*' nop nop ''' '*' nop nop O + 044 'z' 'Z' sub sub 0x017e 0x017d sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' ';' nop nop nop '<' nop nop O + 052 '.' ':' nop nop nop '>' nop nop O + 053 '-' '_' us nop '/' '?' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' nop nop '|' nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/es.acc.kbd b/share/vt/keymaps/es.acc.kbd new file mode 100644 index 0000000..4648fe6 --- /dev/null +++ b/share/vt/keymaps/es.acc.kbd @@ -0,0 +1,137 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '|' '|' nop nop O + 003 '2' '"' nul nul '@' '@' nul nul O + 004 '3' 0xb7 nop nop '#' '#' nop nop O + 005 '4' '$' nop nop '~' '~' nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '&' nop nop 0xac 0xac nop nop O + 008 '7' '/' nop nop '7' '/' nop nop O + 009 '8' '(' nop nop '8' '(' nop nop O + 010 '9' ')' nop nop '9' ')' nop nop O + 011 '0' '=' nop nop '0' '=' nop nop O + 012 ''' '?' nop nop ''' '?' nop nop O + 013 0xa1 0xbf nop nop 0xa1 0xbf nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 0xe9 0xc9 enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 0xfa 0xda nak nak C + 023 'i' 'I' ht ht 0xed 0xcd ht ht C + 024 'o' 'O' si si 0xf3 0xd3 si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 dgra dcir esc esc '[' '[' esc esc O + 027 '+' '*' gs gs ']' ']' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 0xe1 0xc1 soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 0xf1 0xd1 nop nop '~' '~' nop nop C + 040 dacu duml nop nop '{' '{' nop nop O + 041 0xba 0xaa fs fs '\' '\' fs fs O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 0xe7 0xc7 rs rs '}' '}' rs rs C + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' ';' nop nop ',' ';' nop nop O + 052 '.' ':' nop nop '.' ':' nop nop O + 053 '-' '_' us us '-' '_' us us O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' nop nop '<' '>' nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + + dgra '`' ( 'a' 0xe0 ) ( 'A' 0xc0 ) ( 'e' 0xe8 ) ( 'E' 0xc8 ) + ( 'i' 0xec ) ( 'I' 0xcc ) ( 'o' 0xf2 ) ( 'O' 0xd2 ) + ( 'u' 0xf9 ) ( 'U' 0xd9 ) + + dacu 0xb4 ( 'a' 0xe1 ) ( 'A' 0xc1 ) ( 'e' 0xe9 ) ( 'E' 0xc9 ) + ( 'i' 0xed ) ( 'I' 0xcd ) ( 'o' 0xf3 ) ( 'O' 0xd3 ) + ( 'u' 0xfa ) ( 'U' 0xda ) ( 'y' 0xfd ) ( 'Y' 0xdd ) + + dcir '^' ( 'a' 0xe2 ) ( 'A' 0xc2 ) ( 'e' 0xea ) ( 'E' 0xca ) + ( 'i' 0xee ) ( 'I' 0xce ) ( 'o' 0xf4 ) ( 'O' 0xd4 ) + ( 'u' 0xfb ) ( 'U' 0xdb ) + + dtil '~' ( 'a' 0xe3 ) ( 'A' 0xc3 ) ( 'n' 0xf1 ) ( 'N' 0xd1 ) + ( 'o' 0xf5 ) ( 'O' 0xd5 ) + + duml 0xa8 ( 'a' 0xe4 ) ( 'A' 0xc4 ) ( 'e' 0xeb ) ( 'E' 0xcb ) + ( 'i' 0xef ) ( 'I' 0xcf ) ( 'o' 0xf6 ) ( 'O' 0xd6 ) + ( 'u' 0xfc ) ( 'U' 0xdc ) ( 'y' 0xff ) + + drin 0xb0 ( 'a' 0xe5 ) ( 'A' 0xc5 ) + + dced 0xb8 ( 'c' 0xe7 ) ( 'C' 0xc7 ) diff --git a/share/vt/keymaps/es.dvorak.kbd b/share/vt/keymaps/es.dvorak.kbd new file mode 100644 index 0000000..f016257 --- /dev/null +++ b/share/vt/keymaps/es.dvorak.kbd @@ -0,0 +1,139 @@ +# $FreeBSD$ +# +# Submitted by: Ãlvaro Castillo <netsys@fedoraproject.org> +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '|' '!' nop nop O + 003 '2' '"' nop nop '@' '"' nop nop O + 004 '3' 0xb7 nop nop '#' '#' nop nop O + 005 '4' '$' nop nop '~' '~' nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '&' nop nop 0xac 0xac nop nop O + 008 '7' '/' nop nop '7' '/' nop nop O + 009 '8' '(' nop nop '8' '(' nop nop O + 010 '9' ')' nop nop '9' ')' nop nop O + 011 '0' '=' nop nop '0' '=' nop nop O + 012 ''' '?' nop nop ''' '?' nop nop O + 013 0xa1 0xbf nop nop 0xa1 0xbf nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 '.' ':' nop nop '.' ':' nop nop O + 017 ',' ';' nop nop ',' ';' nop nop O + 018 0xf1 0xd1 nop nop '~' '~' nop nop O + 019 'p' 'P' dle dle 'p' 'P' dle dle C + 020 'y' 'Y' em em 'y' 'Y' em em C + 021 'f' 'F' ack ack 'f' 'F' ack ack C + 022 'g' 'G' bel bel 'g' 'G' bel bel C + 023 'c' 'C' etx etx 'c' 'C' etx etx C + 024 'h' 'H' bs bs 'h' 'H' bs bs C + 025 'l' 'L' ff ff 'l' 'L' ff ff C + 026 dgra dcir esc esc '[' '[' esc esc O + 027 '+' '*' gs gs ']' ']' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 'o' 'O' si si 0xf3 0xd3 si si C + 032 'e' 'E' enq enq 0x20ac 0x20ac enq enq C + 033 'u' 'U' nak nak 0xfa 0xda nak nak C + 034 'i' 'I' ht ht 0xed 0xcd ht ht C + 035 'd' 'D' eot eot 'd' 'D' eot eot C + 036 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 037 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 038 'n' 'N' so so 'n' 'N' so so C + 039 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 040 dacu duml nop nop '{' '{' nop nop O + 041 '\' '|' fs fs '\' '|' fs fs O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 0xe7 0xc7 rs rs '}' '}' rs rs O + 044 '-' '_' us us '-' '_' us us O + 045 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 046 'j' 'J' nl nl 'j' 'J' nl nl C + 047 'k' 'K' vt vt 'k' 'K' vt vt C + 048 'x' 'X' can can 'x' 'X' can can C + 049 'b' 'B' stx stx 'b' 'B' stx stx C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 'w' 'W' etb etb 'w' 'W' etb etb C + 052 'v' 'V' syn syn 'v' 'V' syn syn C + 053 'z' 'Z' sub sub 'z' 'Z' sub sub C + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' nop nop '<' '>' nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + + dgra '`' ( 'a' 0xe0 ) ( 'A' 0xc0 ) ( 'e' 0xe8 ) ( 'E' 0xc8 ) + ( 'i' 0xec ) ( 'I' 0xcc ) ( 'o' 0xf2 ) ( 'O' 0xd2 ) + ( 'u' 0xf9 ) ( 'U' 0xd9 ) + + dacu 0xb4 ( 'a' 0xe1 ) ( 'A' 0xc1 ) ( 'e' 0xe9 ) ( 'E' 0xc9 ) + ( 'i' 0xed ) ( 'I' 0xcd ) ( 'o' 0xf3 ) ( 'O' 0xd3 ) + ( 'u' 0xfa ) ( 'U' 0xda ) ( 'y' 0xfd ) ( 'Y' 0xdd ) + + dcir '^' ( 'a' 0xe2 ) ( 'A' 0xc2 ) ( 'e' 0xea ) ( 'E' 0xca ) + ( 'i' 0xee ) ( 'I' 0xce ) ( 'o' 0xf4 ) ( 'O' 0xd4 ) + ( 'u' 0xfb ) ( 'U' 0xdb ) + + dtil '~' ( 'a' 0xe3 ) ( 'A' 0xc3 ) ( 'n' 0xf1 ) ( 'N' 0xd1 ) + ( 'o' 0xf5 ) ( 'O' 0xd5 ) + + duml 0xa8 ( 'a' 0xe4 ) ( 'A' 0xc4 ) ( 'e' 0xeb ) ( 'E' 0xcb ) + ( 'i' 0xef ) ( 'I' 0xcf ) ( 'o' 0xf6 ) ( 'O' 0xd6 ) + ( 'u' 0xfc ) ( 'U' 0xdc ) ( 'y' 0xff ) + + drin 0xb0 ( 'a' 0xe5 ) ( 'A' 0xc5 ) + + dced 0xb8 ( 'c' 0xe7 ) ( 'C' 0xc7 ) diff --git a/share/vt/keymaps/es.kbd b/share/vt/keymaps/es.kbd new file mode 100644 index 0000000..2297574 --- /dev/null +++ b/share/vt/keymaps/es.kbd @@ -0,0 +1,137 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '|' '|' nop nop O + 003 '2' '"' nul nul '@' '@' nul nul O + 004 '3' 0xb7 nop nop '#' '#' nop nop O + 005 '4' '$' nop nop '~' '~' nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '&' nop nop 0xac 0xac nop nop O + 008 '7' '/' nop nop '7' '/' nop nop O + 009 '8' '(' nop nop '8' '(' nop nop O + 010 '9' ')' nop nop '9' ')' nop nop O + 011 '0' '=' nop nop '0' '=' nop nop O + 012 ''' '?' nop nop ''' '?' nop nop O + 013 0xa1 0xbf nop nop 0xa1 0xbf nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 0x20ac 0x20ac enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 0xfa 0xda nak nak C + 023 'i' 'I' ht ht 0xed 0xcd ht ht C + 024 'o' 'O' si si 0xf3 0xd3 si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 dgra dcir esc esc '[' '[' esc esc O + 027 '+' '*' gs gs ']' ']' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 0xe1 0xc1 soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 0xf1 0xd1 nop nop '~' '~' nop nop C + 040 dacu duml nop nop '{' '{' nop nop O + 041 0xba 0xaa fs fs '\' '\' fs fs O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 0xe7 0xc7 rs rs '}' '}' rs rs C + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' ';' nop nop ',' ';' nop nop O + 052 '.' ':' nop nop '.' ':' nop nop O + 053 '-' '_' us us '-' '_' us us O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' nop nop '<' '>' nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + + dgra '`' ( 'a' 0xe0 ) ( 'A' 0xc0 ) ( 'e' 0xe8 ) ( 'E' 0xc8 ) + ( 'i' 0xec ) ( 'I' 0xcc ) ( 'o' 0xf2 ) ( 'O' 0xd2 ) + ( 'u' 0xf9 ) ( 'U' 0xd9 ) + + dacu 0xb4 ( 'a' 0xe1 ) ( 'A' 0xc1 ) ( 'e' 0xe9 ) ( 'E' 0xc9 ) + ( 'i' 0xed ) ( 'I' 0xcd ) ( 'o' 0xf3 ) ( 'O' 0xd3 ) + ( 'u' 0xfa ) ( 'U' 0xda ) ( 'y' 0xfd ) ( 'Y' 0xdd ) + + dcir '^' ( 'a' 0xe2 ) ( 'A' 0xc2 ) ( 'e' 0xea ) ( 'E' 0xca ) + ( 'i' 0xee ) ( 'I' 0xce ) ( 'o' 0xf4 ) ( 'O' 0xd4 ) + ( 'u' 0xfb ) ( 'U' 0xdb ) + + dtil '~' ( 'a' 0xe3 ) ( 'A' 0xc3 ) ( 'n' 0xf1 ) ( 'N' 0xd1 ) + ( 'o' 0xf5 ) ( 'O' 0xd5 ) + + duml 0xa8 ( 'a' 0xe4 ) ( 'A' 0xc4 ) ( 'e' 0xeb ) ( 'E' 0xcb ) + ( 'i' 0xef ) ( 'I' 0xcf ) ( 'o' 0xf6 ) ( 'O' 0xd6 ) + ( 'u' 0xfc ) ( 'U' 0xdc ) ( 'y' 0xff ) + + drin 0xb0 ( 'a' 0xe5 ) ( 'A' 0xc5 ) + + dced 0xb8 ( 'c' 0xe7 ) ( 'C' 0xc7 ) diff --git a/share/vt/keymaps/fi.kbd b/share/vt/keymaps/fi.kbd new file mode 100644 index 0000000..bea4cf1 --- /dev/null +++ b/share/vt/keymaps/fi.kbd @@ -0,0 +1,114 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop nop nop nop nop O + 003 '2' '"' nul nul '@' '@' nul nul O + 004 '3' '#' nop nop 0xa3 nop nop nop O + 005 '4' 0xa4 nop nop '$' nop nop nop O + 006 '5' '%' nop nop nop nop nop nop O + 007 '6' '&' nop nop nop nop nop nop O + 008 '7' '/' nop nop '{' nop nop nop O + 009 '8' '(' nop nop '[' nop nop nop O + 010 '9' ')' nop nop ']' nop gs nop O + 011 '0' '=' nop nop '}' nop nop nop O + 012 '+' '?' nop nop '\' nop fs nop O + 013 0x80 '`' nop nop nop nop nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 0x20ac 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 0xe5 0xc5 nop nop '}' ']' nop nop C + 027 0xa8 '^' nop nop '~' nop nop nop O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 0xf6 0xd6 nop nop '|' '\' nop nop C + 040 0xe4 0xc4 nop nop '{' '[' nop nop C + 041 0xa7 0xbd nop nop '\' '|' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 ''' '*' nop nop nop nop nop nop O + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' ';' nop nop nop '<' nop nop O + 052 '.' ':' nop nop nop '>' nop nop O + 053 '-' '_' us nop '/' '?' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' nop nop '|' nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/fr.acc.kbd b/share/vt/keymaps/fr.acc.kbd new file mode 100644 index 0000000..250f4a7 --- /dev/null +++ b/share/vt/keymaps/fr.acc.kbd @@ -0,0 +1,137 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '&' '1' nop nop nop nop nop nop C + 003 0xe9 '2' nul nul '~' nop nop nop C + 004 '"' '3' nop nop '#' nop nop nop C + 005 ''' '4' nop nop '{' nop nop nop C + 006 '(' '5' nop nop '[' nop nop nop C + 007 '-' '6' nop nop '|' nop nop nop C + 008 0xe8 '7' nop nop '`' nop nop nop C + 009 '_' '8' nop nop '\' nop fs nop C + 010 0xe7 '9' nop nop '^' nop nop nop C + 011 0xe0 '0' nop nop '@' nop nop nop C + 012 ')' 0xb0 nop nop ']' nop nop nop C + 013 '=' '+' nop nop '}' nop nop nop C + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'a' 'A' soh soh 0xe2 0xe4 dc1 dc1 C + 017 'z' 'Z' sub sub 'z' 'Z' etb etb C + 018 'e' 'E' enq enq 0x20ac 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 0xed 0xec em em C + 022 'u' 'U' nak nak 0xfb 0xfc nak nak C + 023 'i' 'I' ht ht 0xee 0xef ht ht C + 024 'o' 'O' si si 0xf4 0xf6 si si C + 025 'p' 'P' dle dle 0xf7 0xe6 dle dle C + 026 dcir duml esc esc '[' '{' esc esc O + 027 '$' 0xa3 gs gs ']' '}' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'q' 'Q' dc1 dc1 'q' 'Q' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 'm' 'M' cr cr 'm' 'M' cr cr C + 040 0xf9 '%' nul nul ''' '@' nul nul O + 041 0xb2 nop nop nop '|' '|' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '*' 0xb5 nop nop '#' '~' nop nop O + 044 'w' 'W' etb etb 'w' 'W' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 0xdf 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 ',' '?' nop nop nop nop nop nop O + 051 ';' '.' nop nop ',' '<' nop nop O + 052 ':' '/' nop nop '.' '>' nop nop O + 053 '!' 0xa7 nop nop '/' '?' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' fs fs 0xab 0xbb fs fs O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' O + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + + dgra '`' ( 'a' 0xe0 ) ( 'A' 0xc0 ) ( 'e' 0xe8 ) ( 'E' 0xc8 ) + ( 'i' 0xec ) ( 'I' 0xcc ) ( 'o' 0xf2 ) ( 'O' 0xd2 ) + ( 'u' 0xf9 ) ( 'U' 0xd9 ) + + dacu 0xb4 ( 'a' 0xe1 ) ( 'A' 0xc1 ) ( 'e' 0xe9 ) ( 'E' 0xc9 ) + ( 'i' 0xed ) ( 'I' 0xcd ) ( 'o' 0xf3 ) ( 'O' 0xd3 ) + ( 'u' 0xfa ) ( 'U' 0xda ) ( 'y' 0xfd ) ( 'Y' 0xdd ) + + dcir '^' ( 'a' 0xe2 ) ( 'A' 0xc2 ) ( 'e' 0xea ) ( 'E' 0xca ) + ( 'i' 0xee ) ( 'I' 0xce ) ( 'o' 0xf4 ) ( 'O' 0xd4 ) + ( 'u' 0xfb ) ( 'U' 0xdb ) + + dtil '~' ( 'a' 0xe3 ) ( 'A' 0xc3 ) ( 'n' 0xf1 ) ( 'N' 0xd1 ) + ( 'o' 0xf5 ) ( 'O' 0xd5 ) + + duml 0xa8 ( 'a' 0xe4 ) ( 'A' 0xc4 ) ( 'e' 0xeb ) ( 'E' 0xcb ) + ( 'i' 0xef ) ( 'I' 0xcf ) ( 'o' 0xf6 ) ( 'O' 0xd6 ) + ( 'u' 0xfc ) ( 'U' 0xdc ) ( 'y' 0xff ) + + drin 0xb0 ( 'a' 0xe5 ) ( 'A' 0xc5 ) + + dced 0xb8 ( 'c' 0xe7 ) ( 'C' 0xc7 ) diff --git a/share/vt/keymaps/fr.dvorak.acc.kbd b/share/vt/keymaps/fr.dvorak.acc.kbd new file mode 100644 index 0000000..cce19f7 --- /dev/null +++ b/share/vt/keymaps/fr.dvorak.acc.kbd @@ -0,0 +1,153 @@ +# A Dvorak keyboard for French +# +# This is a Dvorak-like layout for French +# according to Francis Leboutte on +# http://www.algo.be/ergo/dvorak-fr.html +# +# Note that letters with accents won't be correctly +# displayed unless one uses the correct font: +# vidcontrol -f iso15-8x16.fnt +# +# -Frédéric Praca <frederic.praca@freebsd-fr.org> +# -Clément Pillias <clement.pillias@free.fr> for accent keys +# +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '=' '1' nop nop nop nop nop nop C + 003 '/' '2' nop nop nop nop nop nop C + 004 '-' '3' nop nop nop nop nop nop C + 005 0xe8 '4' nop nop nop nop nop nop C + 006 '\' '5' nop nop nop nop nop nop C + 007 dcir '6' nop nop nop nop nop nop C + 008 '(' '7' nop nop nop nop nop nop C + 009 dgra '8' nop nop nop nop nop nop C + 010 ')' '9' nop nop nop nop nop nop C + 011 '"' '0' nop nop nop nop nop nop C + 012 '[' '+' nop nop nop nop nop nop C + 013 ']' '%' nop nop nop nop nop nop C + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 ':' '?' nop nop nop nop nop nop O + 017 ''' '<' nop nop nop nop nop nop C + 018 0xe9 '>' nop nop nop nop nop nop C + 019 'g' 'G' nop nop nop nop nop nop C + 020 '.' '!' nop nop nop nop nop nop O + 021 'h' 'H' nop nop nop nop nop nop C + 022 'v' 'V' nop nop nop nop nop nop C + 023 'c' 'C' nop nop nop nop nop nop C + 024 'm' 'M' nop nop nop nop nop nop C + 025 'k' 'K' nop nop nop nop nop nop C + 026 'z' 'Z' nop nop nop nop nop nop C + 027 ddia '&' nop nop nop nop nop nop O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'o' 'O' nop nop nop nop nop nop C + 031 'a' 'A' nop nop nop nop nop nop C + 032 'u' 'U' nop nop nop nop nop nop C + 033 'e' 'E' nop nop nop nop nop nop C + 034 'b' 'B' nop nop nop nop nop nop C + 035 'f' 'F' nop nop nop nop nop nop C + 036 's' 'S' nop nop nop nop nop nop C + 037 't' 'T' nop nop nop nop nop nop C + 038 'n' 'N' nop nop nop nop nop nop C + 039 'd' 'D' nop nop nop nop nop nop C + 040 'w' 'W' nop nop nop nop nop nop C + 041 '_' '*' nop nop nop nop nop nop C + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 dtil '#' nop nop nop nop nop nop O + 044 ';' '|' nop nop nop nop nop nop O + 045 'q' 'Q' nop nop nop nop nop nop C + 046 ',' '@' nop nop nop nop nop nop O + 047 'i' 'I' nop nop nop nop nop nop C + 048 'y' 'Y' nop nop nop nop nop nop C + 049 'x' 'X' nop nop nop nop nop nop C + 050 'r' 'R' nop nop nop nop nop nop C + 051 'l' 'L' nop nop nop nop nop nop C + 052 'p' 'P' nop nop nop nop nop nop C + 053 'j' 'J' nop nop nop nop nop nop C + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 0xe0 0xe7 nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' O + 092 nscr nscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + + dgra '`' ( '/' 0xb1 ) ( '-' 0xbc ) ( 0xe8 0xbd ) ( '\' 0xbe ) + ( '?' 0xc6 ) ( 'C' 0xc7 ) + ( ':' 0xe6 ) ( '`' '$' ) ( 0xe9 0xc9 ) ( 'g' 0xa4 ) + ( '.' 0xb0 ) ( 'c' 0xe7 ) ( 'm' 0xb5 ) + ( 'O' 0xd2 ) ( 'A' 0xc0 ) ( 'U' 0xd9 ) ( 'E' 0xc8 ) + ( 'o' 0xf2 ) ( 'a' 0xe0 ) ( 'u' 0xf9 ) ( 'e' 0xe8 ) + ( 's' 0xab ) ( 'n' 0xbb ) + ( 0xe7 0xc7 ) ( '|' 0xbc ) ( 'I' 0xcc ) + ( 0xe0 0xc0 ) ( ';' 0xbd ) ( 'q' '{' ) ( ',' '}' ) + ( 'i' 0xec ) ( 'r' 0xba ) ( 'p' 0xa7 ) + ( '!' 0xa1 ) + + dcir '^' ( 'a' 0xe2 ) ( 'e' 0xea ) ( 'i' 0xee ) ( 'o' 0xf4 ) ( 'u' 0xfb ) + ( 'A' 0xc2 ) ( 'E' 0xca ) ( 'I' 0xce ) ( 'O' 0xd4 ) ( 'U' 0xdb ) + + dtil '~' ( 'n' 0xf1 ) ( 'N' 0xd1 ) + ( 'a' 0xe3 ) ( 'A' 0xc3 ) ( 'o' 0xf5 ) ( 'O' 0xd5 ) + + ddia '"' ( 'a' 0xe4 ) ( 'e' 0xeb ) ( 'i' 0xef ) ( 'o' 0xf6 ) ( 'u' 0xfc ) + ( 'A' 0xc4 ) ( 'E' 0xcb ) ( 'I' 0xcf ) ( 'O' 0xd6 ) ( 'U' 0xdc ) + ( 'y' 0xff ) ( 'Y' 0xbe ) + + dacu 0xb4( 'a' 0xe1 ) ( 'e' 0xe9 ) ( 'i' 0xed ) ( 'o' 0xf3 ) ( 'u' 0xfa ) + ( 'A' 0xc1 ) ( 'E' 0xc9 ) ( 'I' 0xcd ) ( 'O' 0xd3 ) ( 'U' 0xda ) + ( 'Y' 0xdd ) ( 'y' 0xfd ) diff --git a/share/vt/keymaps/fr.dvorak.kbd b/share/vt/keymaps/fr.dvorak.kbd new file mode 100644 index 0000000..38fd124 --- /dev/null +++ b/share/vt/keymaps/fr.dvorak.kbd @@ -0,0 +1,122 @@ +# A Dvorak keyboard for French +# +# This is a Dvorak-like layout for French +# according to Francis Leboutte on +# http://www.algo.be/ergo/dvorak-fr.html +# +# -Frédéric Praca <frederic.praca@freebsd-fr.org> +# +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '=' '1' nop ' ' '=' '1' nop nop C + 003 0xe0 '2' nop '~' 0xe0 '2' nop nop C + 004 '-' '3' nop '#' '-' '3' nop nop C + 005 0xe8 '4' nop '{' 0xe8 '4' nop nop C + 006 '/' '5' nop '[' '/' '5' nop nop C + 007 '^' '6' nop '|' '^' '6' nop nop C + 008 '(' '7' nop '`' '(' '7' nop nop C + 009 '`' '8' nop '\' '`' '8' nop nop C + 010 ')' '9' nop '^' ')' '9' nop nop C + 011 '"' '0' nop '@' '"' '0' nop nop C + 012 '[' '|' nop ']' '[' '|' nop nop O + 013 ']' '%' nop '}' ']' '%' nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 ':' '?' nop ' ' ':' '?' nop nop O + 017 ''' '<' nop ' ' ''' '<' nop nop C + 018 0xe9 '>' nop '?' 0xe9 '>' nop nop C + 019 'g' 'G' nop ' ' 'g' 'G' nop nop C + 020 '.' '!' nop ' ' '.' '!' nop nop O + 021 'h' 'H' nop ' ' 'h' 'H' nop nop C + 022 'v' 'V' nop ' ' 'v' 'V' nop nop C + 023 'c' 'C' nop ' ' 'c' 'C' nop nop C + 024 'm' 'M' nop ' ' 'm' 'M' nop nop C + 025 'k' 'K' nop ' ' 'k' 'K' nop nop C + 026 'z' 'Z' nop ' ' 'z' 'Z' nop nop C + 027 0xa8 '&' nop 0xa4 0xa8 '&' nop nop C + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'o' 'O' nop ' ' 'o' 'O' nop nop C + 031 'a' 'A' nop ' ' 'a' 'A' nop nop C + 032 'u' 'U' nop ' ' 'u' 'U' nop nop C + 033 'e' 'E' nop ' ' 'e' 'E' nop nop C + 034 'b' 'B' nop ' ' 'b' 'B' nop nop C + 035 'f' 'F' nop ' ' 'f' 'F' nop nop C + 036 's' 'S' nop ' ' 's' 'S' nop nop C + 037 't' 'T' nop ' ' 't' 'T' nop nop C + 038 'n' 'N' nop ' ' 'n' 'N' nop nop C + 039 'd' 'D' nop ' ' 'd' 'D' nop nop C + 040 'w' 'W' nop ' ' 'w' 'W' nop nop C + 041 0xb2 nop nop nop '|' '|' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '~' '#' nop ' ' '~' '#' nop nop O + 044 ';' '@' nop ' ' ';' '@' nop nop O + 045 'q' 'Q' nop ' ' 'q' 'Q' nop nop C + 046 ',' '\' nop ' ' ',' '\' nop nop O + 047 'i' 'I' nop ' ' 'i' 'I' nop nop C + 048 'y' 'Y' nop ' ' 'y' 'Y' nop nop C + 049 'x' 'X' nop ' ' 'x' 'X' nop nop C + 050 'r' 'R' nop ' ' 'r' 'R' nop nop C + 051 'l' 'L' nop ' ' 'l' 'L' nop nop C + 052 'p' 'P' nop ' ' 'p' 'P' nop nop C + 053 'j' 'J' nop ' ' 'j' 'J' nop nop N + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '+' '*' nop ' ' '+' '*' nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' O + 092 nscr nscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/fr.kbd b/share/vt/keymaps/fr.kbd new file mode 100644 index 0000000..a7e92fa --- /dev/null +++ b/share/vt/keymaps/fr.kbd @@ -0,0 +1,114 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '&' '1' nop nop nop nop nop nop C + 003 0xe9 '2' nul nul '~' nop nop nop C + 004 '"' '3' nop nop '#' nop nop nop C + 005 ''' '4' nop nop '{' nop nop nop C + 006 '(' '5' nop nop '[' nop nop nop C + 007 '-' '6' nop nop '|' nop nop nop C + 008 0xe8 '7' nop nop '`' nop nop nop C + 009 '_' '8' nop nop '\' nop fs nop C + 010 0xe7 '9' nop nop '^' nop nop nop C + 011 0xe0 '0' nop nop '@' nop nop nop C + 012 ')' 0xb0 nop nop ']' nop nop nop C + 013 '=' '+' nop nop '}' nop nop nop C + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'a' 'A' soh soh 0xe2 0xe4 dc1 dc1 C + 017 'z' 'Z' sub sub 'z' 'Z' etb etb C + 018 'e' 'E' enq enq 0x20ac 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 0xed 0xec em em C + 022 'u' 'U' nak nak 0xfb 0xfc nak nak C + 023 'i' 'I' ht ht 0xee 0xef ht ht C + 024 'o' 'O' si si 0xf4 0xf6 si si C + 025 'p' 'P' dle dle 0xf7 0xe6 dle dle C + 026 0xea 0xf4 esc esc '[' '{' esc esc O + 027 '$' 0xa3 gs gs ']' '}' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'q' 'Q' dc1 dc1 'q' 'Q' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 'm' 'M' cr cr 'm' 'M' cr cr C + 040 0xf9 '%' nul nul ''' '@' nul nul O + 041 0xb2 nop nop nop '|' '|' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '*' 0xb5 nop nop '#' '~' nop nop O + 044 'w' 'W' etb etb 'w' 'W' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 0xdf 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 ',' '?' nop nop nop nop nop nop O + 051 ';' '.' nop nop ',' '<' nop nop O + 052 ':' '/' nop nop '.' '>' nop nop O + 053 '!' 0xa7 nop nop '/' '?' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' fs fs 0xab 0xbb fs fs O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' O + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/fr.macbook.kbd b/share/vt/keymaps/fr.macbook.kbd new file mode 100644 index 0000000..18144cf --- /dev/null +++ b/share/vt/keymaps/fr.macbook.kbd @@ -0,0 +1,137 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '&' '1' nop nop nop nop nop nop C + 003 0xe9 '2' nul nul '~' nop nop nop C + 004 '"' '3' nop nop '#' nop nop nop C + 005 ''' '4' nop nop '{' nop nop nop C + 006 '(' '5' nop nop '[' nop nop nop C + 007 0xa7 '6' nop nop '|' nop nop nop C + 008 0xe8 '7' nop nop '`' nop nop nop C + 009 '!' '8' nop nop '\' nop fs nop C + 010 0xe7 '9' nop nop '^' nop nop nop C + 011 0xe0 '0' nop nop '@' nop nop nop C + 012 ')' 0xb0 nop nop ']' nop nop nop C + 013 '-' '_' nop nop '}' nop nop nop C + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'a' 'A' soh soh 0xe2 0xe4 dc1 dc1 C + 017 'z' 'Z' sub sub 'z' 'Z' etb etb C + 018 'e' 'E' enq enq 0x20ac 'E' enq enq C + 019 'r' 'R' dc2 dc2 0xae 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 0xed 0xec em em C + 022 'u' 'U' nak nak 0xfb 0xfc nak nak C + 023 'i' 'I' ht ht 0xee 0xef ht ht C + 024 'o' 'O' si si 0xbd 0xbc si si C + 025 'p' 'P' dle dle 0xf7 0xe6 dle dle C + 026 dcir duml esc esc '[' '{' esc esc O + 027 '$' '*' gs gs 0xa4 '}' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'q' 'Q' dc1 dc1 'q' 'Q' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' '|' ff ff C + 039 'm' 'M' cr cr 'm' 'M' cr cr C + 040 0xf9 '%' nul nul ''' '@' nul nul O + 041 '@' '#' nop nop '|' '|' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 dgra 0xa3 nop nop '#' '~' nop nop O + 044 'w' 'W' etb etb 'w' 'W' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 0xa9 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 0xdf 'B' stx stx C + 049 'n' 'N' so so '~' 'N' so so C + 050 ',' '?' nop nop nop nop nop nop O + 051 ';' '.' nop nop ',' '<' nop nop O + 052 ':' '/' nop nop '.' '\' nop nop O + 053 '=' '+' nop nop nop nop nop nop C + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' fs fs 0xab 0xbb fs fs O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' O + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + + dgra '`' ( 'a' 0xe0 ) ( 'A' 0xc0 ) ( 'e' 0xe8 ) ( 'E' 0xc8 ) + ( 'i' 0xec ) ( 'I' 0xcc ) ( 'o' 0xf2 ) ( 'O' 0xd2 ) + ( 'u' 0xf9 ) ( 'U' 0xd9 ) + + dacu 0xb4 ( 'a' 0xe1 ) ( 'A' 0xc1 ) ( 'e' 0xe9 ) ( 'E' 0xc9 ) + ( 'i' 0xed ) ( 'I' 0xcd ) ( 'o' 0xf3 ) ( 'O' 0xd3 ) + ( 'u' 0xfa ) ( 'U' 0xda ) ( 'y' 0xfd ) ( 'Y' 0xdd ) + + dcir '^' ( 'a' 0xe2 ) ( 'A' 0xc2 ) ( 'e' 0xea ) ( 'E' 0xca ) + ( 'i' 0xee ) ( 'I' 0xce ) ( 'o' 0xf4 ) ( 'O' 0xd4 ) + ( 'u' 0xfb ) ( 'U' 0xdb ) + + dtil '~' ( 'a' 0xe3 ) ( 'A' 0xc3 ) ( 'n' 0xf1 ) ( 'N' 0xd1 ) + ( 'o' 0xf5 ) ( 'O' 0xd5 ) + + duml 0xa8 ( 'a' 0xe4 ) ( 'A' 0xc4 ) ( 'e' 0xeb ) ( 'E' 0xcb ) + ( 'i' 0xef ) ( 'I' 0xcf ) ( 'o' 0xf6 ) ( 'O' 0xd6 ) + ( 'u' 0xfc ) ( 'U' 0xdc ) ( 'y' 0xff ) + + drin 0xb0 ( 'a' 0xe5 ) ( 'A' 0xc5 ) + + dced 0xb8 ( 'c' 0xe7 ) ( 'C' 0xc7 ) diff --git a/share/vt/keymaps/gr.101.acc.kbd b/share/vt/keymaps/gr.101.acc.kbd new file mode 100644 index 0000000..89a931f --- /dev/null +++ b/share/vt/keymaps/gr.101.acc.kbd @@ -0,0 +1,255 @@ +# $FreeBSD$ +# +# Built on Wed 1 Apr 15:59:44 EEST 1998 by peppe@cs.uoi.gr +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ +# + 000 nop nop nop nop nop nop nop nop O + 001 esc esc nop nop esc esc debug nop O + 002 '1' '!' nop nop '1' '!' nop nop O + 003 '2' '@' nul nul '2' '@' nul nul O + 004 '3' '#' nop nop '3' '#' nop nop O + 005 '4' '$' nop nop '4' '$' nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '^' rs rs '6' '^' rs rs O + 008 '7' '&' nop nop '7' '&' nop nop O + 009 '8' '*' nop nop '8' '*' nop nop O + 010 '9' '(' nop nop '9' '(' nop nop O + 011 '0' ')' nop nop '0' ')' nop nop O + 012 '-' '_' ns ns '-' '_' ns ns O + 013 '=' '+' nop nop '=' '+' nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 ';' ':' dc1 dc1 C + 017 'w' 'W' etb etb 0x03c2 0x03a3 etb etb C + 018 'e' 'E' enq enq 0x03b5 0x0395 enq enq C + 019 'r' 'R' dc2 dc2 0x03c1 0x03a1 dc2 dc2 C + 020 't' 'T' dc4 dc4 0x03c4 0x03a4 dc4 dc4 C + 021 'y' 'Y' em em 0x03c5 0x03a5 em em C + 022 'u' 'U' nak nak 0x03b8 0x0398 nak nak C + 023 'i' 'I' ht ht 0x03b9 0x0399 ht ht C + 024 'o' 'O' si si 0x03bf 0x039f si si C + 025 'p' 'P' dle dle 0x03c0 0x03a0 dle dle C + 026 '[' '{' esc esc '[' '{' esc esc O + 027 ']' '}' gs gs ']' '}' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 0x03b1 0x0391 soh soh C + 031 's' 'S' dc3 dc3 0x03c3 0x03a3 dc3 dc3 C + 032 'd' 'D' eot eot 0x03b4 0x0394 eot eot C + 033 'f' 'F' ack ack 0x03c6 0x03a6 ack ack C + 034 'g' 'G' bel bel 0x03b3 0x0393 bel bel C + 035 'h' 'H' bs bs 0x03b7 0x0397 bs bs C + 036 'j' 'J' nl nl 0x03be 0x039e nl nl C + 037 'k' 'K' vt vt 0x03ba 0x039a vt vt C + 038 'l' 'L' ff ff 0x03bb 0x039b ff ff C + 039 ';' ':' nop nop dacu ddia dcir nop O + 040 ''' '"' nop nop ''' '"' nop nop O + 041 '`' '~' nop nop '`' '~' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '\' '|' fs fs '\' '|' fs fs O + 044 'z' 'Z' sub sub 0x03b6 0x0396 sub sub C + 045 'x' 'X' can can 0x03c7 0x03a7 can can C + 046 'c' 'C' etx etx 0x03c8 0x03a8 etx etx C + 047 'v' 'V' syn syn 0x03c9 0x03a9 syn syn C + 048 'b' 'B' stx stx 0x03b2 0x0392 stx stx C + 049 'n' 'N' so so 0x03bd 0x039d so so C + 050 'm' 'M' cr cr 0x03bc 0x039c cr cr C + 051 ',' '<' nop nop ',' '<' nop nop O + 052 '.' '>' nop nop '.' '>' nop nop O + 053 '/' '?' nop nop '/' '?' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' nscr nscr '*' '*' nscr nscr O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' alock ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 ns ns ns ns ns ns ns ns O + 085 nop nop nop nop nop nop nop nop O + 086 '\' '|' nop nop '\' '|' nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug nop nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock slock slock slock slock slock slock slock O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O +# + 108 nop nop nop nop nop nop nop nop O + 109 nop nop nop nop nop nop nop nop O + 110 nop nop nop nop nop nop nop nop O + 111 nop nop nop nop nop nop nop nop O + 112 nop nop nop nop nop nop nop nop O + 113 nop nop nop nop nop nop nop nop O + 114 nop nop nop nop nop nop nop nop O + 115 nop nop nop nop nop nop nop nop O + 116 nop nop nop nop nop nop nop nop O + 117 nop nop nop nop nop nop nop nop O + 118 nop nop nop nop nop nop nop nop O + 119 nop nop nop nop nop nop nop nop O + 120 nop nop nop nop nop nop nop nop O + 121 nop nop nop nop nop nop nop nop O + 122 nop nop nop nop nop nop nop nop O + 123 nop nop nop nop nop nop nop nop O + 124 nop nop nop nop nop nop nop nop O + 125 nop nop nop nop nop nop nop nop O + 126 nop nop nop nop nop nop nop nop O + 127 nop nop nop nop nop nop nop nop O +# + 128 nop nop nop nop nop nop nop nop O + 129 esc esc nop nop esc esc debug nop O + 130 '1' '!' nop nop '1' '!' nop nop O + 131 '2' '@' nul nul '2' '@' nul nul O + 132 '3' '#' nop nop '3' '#' nop nop O + 133 '4' '$' nop nop '4' '$' nop nop O + 134 '5' '%' nop nop '5' '%' nop nop O + 135 '6' '^' rs rs '6' '^' rs rs O + 136 '7' '&' nop nop '7' '&' nop nop O + 137 '8' '*' nop nop '8' '*' nop nop O + 138 '9' '(' nop nop '9' '(' nop nop O + 139 '0' ')' nop nop '0' ')' nop nop O + 140 '-' '_' ns ns '-' '_' ns ns O + 141 '=' '+' nop nop '=' '+' nop nop O + 142 bs bs del del bs bs del del O + 143 ht btab nop nop ht btab nop nop O + 144 ';' ':' dc1 dc1 'q' 'Q' dc1 dc1 C + 145 0x03c2 0x03a3 etb etb 'w' 'W' etb etb C + 146 0x03b5 0x0395 enq enq 'e' 'E' enq enq C + 147 0x03c1 0x03a1 dc2 dc2 'r' 'R' dc2 dc2 C + 148 0x03c4 0x03a4 dc4 dc4 't' 'T' dc4 dc4 C + 149 0x03c5 0x03a5 em em 'y' 'Y' em em C + 150 0x03b8 0x0398 nak nak 'u' 'U' nak nak C + 151 0x03b9 0x0399 ht ht 'i' 'I' ht ht C + 152 0x03bf 0x039f si si 'o' 'O' si si C + 153 0x03c0 0x03a0 dle dle 'p' 'P' dle dle C + 154 '[' '{' esc esc '[' '{' esc esc O + 155 ']' '}' gs gs ']' '}' gs gs O + 156 cr cr nl nl cr cr nl nl O + 157 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 158 0x03b1 0x0391 soh soh 'a' 'A' soh soh C + 159 0x03c3 0x03a3 dc3 dc3 's' 'S' dc3 dc3 C + 160 0x03b4 0x0394 eot eot 'd' 'D' eot eot C + 161 0x03c6 0x03a6 ack ack 'f' 'F' ack ack C + 162 0x03b3 0x0393 bel bel 'g' 'G' bel bel C + 163 0x03b7 0x0397 bs bs 'h' 'H' bs bs C + 164 0x03be 0x039e nl nl 'j' 'J' nl nl C + 165 0x03ba 0x039a vt vt 'k' 'K' vt vt C + 166 0x03bb 0x039b ff ff 'l' 'L' ff ff C + 167 dacu ddia dcir nop ';' ':' nop nop O + 168 ''' '"' nop nop ''' '"' nop nop O + 169 '`' '~' nop nop '`' '~' nop nop O + 170 lshift lshift lshift lshift lshift lshift lshift lshift O + 171 '\' '|' fs fs '\' '|' fs fs O + 172 0x03b6 0x0396 sub sub 'z' 'Z' sub sub C + 173 0x03c7 0x03a7 can can 'x' 'X' can can C + 174 0x03c8 0x03a8 etx etx 'c' 'C' etx etx C + 175 0x03c9 0x03a9 syn syn 'v' 'V' syn syn C + 176 0x03b2 0x0392 stx stx 'b' 'B' stx stx C + 177 0x03bd 0x039d so so 'n' 'N' so so C + 178 0x03bc 0x039c cr cr 'm' 'M' cr cr C + 179 ',' '<' nop nop ',' '<' nop nop O + 180 '.' '>' nop nop '.' '>' nop nop O + 181 '/' '?' nop nop '/' '?' nop nop O + 182 rshift rshift rshift rshift rshift rshift rshift rshift O + 183 '*' '*' nscr nscr '*' '*' nscr nscr O + 184 lalt lalt lalt lalt lalt lalt lalt lalt O + 185 ' ' ' ' nul ' ' alock ' ' susp ' ' O + 186 clock clock clock clock clock clock clock clock O + 187 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 188 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 189 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 190 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 191 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 192 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 193 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 194 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 195 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 196 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 197 nlock nlock nlock nlock nlock nlock nlock nlock O + 198 slock slock slock slock slock slock slock slock O + 199 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 200 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 201 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 202 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 203 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 204 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 205 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 206 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 207 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 208 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 209 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 210 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 211 del '.' '.' '.' '.' '.' boot boot N + 212 ns ns ns ns ns ns ns ns O + 213 nop nop nop nop nop nop nop nop O + 214 '\' '|' nop nop '\' '|' nop nop O + 215 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 216 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 217 cr cr nl nl cr cr nl nl O + 218 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 219 '/' '/' '/' '/' '/' '/' '/' '/' N + 220 nscr pscr debug nop nop nop nop nop O + 221 ralt ralt ralt ralt ralt ralt ralt ralt O + 222 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 223 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 224 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 225 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 226 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 227 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 228 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 229 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 230 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 231 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 232 slock slock slock slock slock slock slock slock O + 233 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 234 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 235 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + + dacu 0x0384 ( 0x03b1 0x03ac ) ( 0x0391 0x0386 ) ( 0x03b5 0x03ad ) ( 0x0395 0x0388 ) + ( 0x03b9 0x03af ) ( 0x0399 0x038a ) ( 0x03b7 0x03ae ) ( 0x0397 0x0389 ) + ( 0x03c5 0x03cd ) ( 0x03a5 0x038e ) ( 0x03bf 0x03cc ) ( 0x039f 0x038c ) + ( 0x03c9 0x03ce ) ( 0x03a9 0x038f ) + + dcir 0x0385 ( 0x03b9 0x0390 ) ( 0x0399 0x03aa ) ( 0x03c5 0x03b0 ) ( 0x03a5 0x03ab ) + + ddia 0xa8 ( 0x03b9 0x03ca ) ( 0x0399 0x03aa ) ( 0x03c5 0x03cb ) ( 0x03a5 0x03ab ) diff --git a/share/vt/keymaps/gr.elot.acc.kbd b/share/vt/keymaps/gr.elot.acc.kbd new file mode 100644 index 0000000..1a758a7 --- /dev/null +++ b/share/vt/keymaps/gr.elot.acc.kbd @@ -0,0 +1,255 @@ +# $FreeBSD$ +# +# Built on Wed 1 Apr 15:59:44 EEST 1998 by peppe@cs.uoi.gr +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ +# + 000 nop nop nop nop nop nop nop nop O + 001 esc esc nop nop esc esc debug nop O + 002 '1' '!' nop nop '1' '!' nop nop O + 003 '2' '"' nul nul '2' '"' nul nul O + 004 '3' 0xa3 nop nop '3' 0xa3 nop nop O + 005 '4' '$' nop nop '4' '$' nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '^' rs rs '6' '^' rs rs O + 008 '7' '&' nop nop '7' '&' nop nop O + 009 '8' '*' nop nop '8' '*' nop nop O + 010 '9' '(' nop nop '9' '(' nop nop O + 011 '0' ')' nop nop '0' ')' nop nop O + 012 '-' '_' ns ns '-' '_' ns ns O + 013 '=' '+' nop nop '=' '+' nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 0xab 0xbb dc1 dc1 C + 017 'w' 'W' etb etb 0x03c2 0x03a3 etb etb C + 018 'e' 'E' enq enq 0x03b5 0x0395 enq enq C + 019 'r' 'R' dc2 dc2 0x03c1 0x03a1 dc2 dc2 C + 020 't' 'T' dc4 dc4 0x03c4 0x03a4 dc4 dc4 C + 021 'y' 'Y' em em 0x03c5 0x03a5 em em C + 022 'u' 'U' nak nak 0x03b8 0x0398 nak nak C + 023 'i' 'I' ht ht 0x03b9 0x0399 ht ht C + 024 'o' 'O' si si 0x03bf 0x039f si si C + 025 'p' 'P' dle dle 0x03c0 0x03a0 dle dle C + 026 '[' '{' esc esc '[' '{' esc esc O + 027 ']' '}' gs gs ']' '}' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 0x03b1 0x0391 soh soh C + 031 's' 'S' dc3 dc3 0x03c3 0x03a3 dc3 dc3 C + 032 'd' 'D' eot eot 0x03b4 0x0394 eot eot C + 033 'f' 'F' ack ack 0x03c6 0x03a6 ack ack C + 034 'g' 'G' bel bel 0x03b3 0x0393 bel bel C + 035 'h' 'H' bs bs 0x03b7 0x0397 bs bs C + 036 'j' 'J' nl nl 0x03be 0x039e nl nl C + 037 'k' 'K' vt vt 0x03ba 0x039a vt vt C + 038 'l' 'L' ff ff 0x03bb 0x039b ff ff C + 039 ';' ':' nop nop ';' ':' nop nop O + 040 '/' '@' nop nop dacu ddia nop dcir O + 041 '`' ''' nop nop '`' ''' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '#' '~' fs fs '#' '~' fs fs O + 044 'z' 'Z' sub sub 0x03b6 0x0396 sub sub C + 045 'x' 'X' can can 0x03c7 0x03a7 can can C + 046 'c' 'C' etx etx 0x03c8 0x03a8 etx etx C + 047 'v' 'V' syn syn 0x03c9 0x03a9 syn syn C + 048 'b' 'B' stx stx 0x03b2 0x0392 stx stx C + 049 'n' 'N' so so 0x03bd 0x039d so so C + 050 'm' 'M' cr cr 0x03bc 0x039c cr cr C + 051 ',' '<' nop nop ',' '<' nop nop O + 052 '.' '>' nop nop '.' '>' nop nop O + 053 '/' '?' nop nop '/' '?' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' nscr nscr '*' '*' nscr nscr O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' alock ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 ns ns ns ns ns ns ns ns O + 085 nop nop nop nop nop nop nop nop O + 086 '\' '|' nop nop '\' '|' nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug nop nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock slock slock slock slock slock slock slock O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O +# + 108 nop nop nop nop nop nop nop nop O + 109 nop nop nop nop nop nop nop nop O + 110 nop nop nop nop nop nop nop nop O + 111 nop nop nop nop nop nop nop nop O + 112 nop nop nop nop nop nop nop nop O + 113 nop nop nop nop nop nop nop nop O + 114 nop nop nop nop nop nop nop nop O + 115 nop nop nop nop nop nop nop nop O + 116 nop nop nop nop nop nop nop nop O + 117 nop nop nop nop nop nop nop nop O + 118 nop nop nop nop nop nop nop nop O + 119 nop nop nop nop nop nop nop nop O + 120 nop nop nop nop nop nop nop nop O + 121 nop nop nop nop nop nop nop nop O + 122 nop nop nop nop nop nop nop nop O + 123 nop nop nop nop nop nop nop nop O + 124 nop nop nop nop nop nop nop nop O + 125 nop nop nop nop nop nop nop nop O + 126 nop nop nop nop nop nop nop nop O + 127 nop nop nop nop nop nop nop nop O +# + 128 nop nop nop nop nop nop nop nop O + 129 esc esc nop nop esc esc debug nop O + 130 '1' '!' nop nop '1' '!' nop nop O + 131 '2' '"' nul nul '2' '"' nul nul O + 132 '3' 0xa3 nop nop '3' 0xa3 nop nop O + 133 '4' '$' nop nop '4' '$' nop nop O + 134 '5' '%' nop nop '5' '%' nop nop O + 135 '6' '^' rs rs '6' '^' rs rs O + 136 '7' '&' nop nop '7' '&' nop nop O + 137 '8' '*' nop nop '8' '*' nop nop O + 138 '9' '(' nop nop '9' '(' nop nop O + 139 '0' ')' nop nop '0' ')' nop nop O + 140 '-' '_' ns ns '-' '_' ns ns O + 141 '=' '+' nop nop '=' '+' nop nop O + 142 bs bs del del bs bs del del O + 143 ht btab nop nop ht btab nop nop O + 144 0xab 0xbb dc1 dc1 'q' 'Q' dc1 dc1 C + 145 0x03c2 0x03a3 etb etb 'w' 'W' etb etb C + 146 0x03b5 0x0395 enq enq 'e' 'E' enq enq C + 147 0x03c1 0x03a1 dc2 dc2 'r' 'R' dc2 dc2 C + 148 0x03c4 0x03a4 dc4 dc4 't' 'T' dc4 dc4 C + 149 0x03c5 0x03a5 em em 'y' 'Y' em em C + 150 0x03b8 0x0398 nak nak 'u' 'U' nak nak C + 151 0x03b9 0x0399 ht ht 'i' 'I' ht ht C + 152 0x03bf 0x039f si si 'o' 'O' si si C + 153 0x03c0 0x03a0 dle dle 'p' 'P' dle dle C + 154 '[' '{' esc esc '[' '{' esc esc O + 155 ']' '}' gs gs ']' '}' gs gs O + 156 cr cr nl nl cr cr nl nl O + 157 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 158 0x03b1 0x0391 soh soh 'a' 'A' soh soh C + 159 0x03c3 0x03a3 dc3 dc3 's' 'S' dc3 dc3 C + 160 0x03b4 0x0394 eot eot 'd' 'D' eot eot C + 161 0x03c6 0x03a6 ack ack 'f' 'F' ack ack C + 162 0x03b3 0x0393 bel bel 'g' 'G' bel bel C + 163 0x03b7 0x0397 bs bs 'h' 'H' bs bs C + 164 0x03be 0x039e nl nl 'j' 'J' nl nl C + 165 0x03ba 0x039a vt vt 'k' 'K' vt vt C + 166 0x03bb 0x039b ff ff 'l' 'L' ff ff C + 167 ';' ':' nop nop ';' ':' nop nop O + 168 dacu ddia dcir nop '/' '@' nop nop O + 169 '`' ''' nop nop '`' ''' nop nop O + 170 lshift lshift lshift lshift lshift lshift lshift lshift O + 171 '#' '~' fs fs '#' '~' fs fs O + 172 0x03b6 0x0396 sub sub 'z' 'Z' sub sub C + 173 0x03c7 0x03a7 can can 'x' 'X' can can C + 174 0x03c8 0x03a8 etx etx 'c' 'C' etx etx C + 175 0x03c9 0x03a9 syn syn 'v' 'V' syn syn C + 176 0x03b2 0x0392 stx stx 'b' 'B' stx stx C + 177 0x03bd 0x039d so so 'n' 'N' so so C + 178 0x03bc 0x039c cr cr 'm' 'M' cr cr C + 179 ',' '<' nop nop ',' '<' nop nop O + 180 '.' '>' nop nop '.' '>' nop nop O + 181 '/' '?' nop nop '/' '?' nop nop O + 182 rshift rshift rshift rshift rshift rshift rshift rshift O + 183 '*' '*' nscr nscr '*' '*' nscr nscr O + 184 lalt lalt lalt lalt lalt lalt lalt lalt O + 185 ' ' ' ' nul ' ' alock ' ' susp ' ' O + 186 clock clock clock clock clock clock clock clock O + 187 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 188 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 189 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 190 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 191 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 192 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 193 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 194 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 195 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 196 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 197 nlock nlock nlock nlock nlock nlock nlock nlock O + 198 slock slock slock slock slock slock slock slock O + 199 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 200 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 201 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 202 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 203 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 204 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 205 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 206 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 207 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 208 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 209 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 210 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 211 del '.' '.' '.' '.' '.' boot boot N + 212 ns ns ns ns ns ns ns ns O + 213 nop nop nop nop nop nop nop nop O + 214 '\' '|' nop nop '\' '|' nop nop O + 215 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 216 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 217 cr cr nl nl cr cr nl nl O + 218 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 219 '/' '/' '/' '/' '/' '/' '/' '/' N + 220 nscr pscr debug nop nop nop nop nop O + 221 ralt ralt ralt ralt ralt ralt ralt ralt O + 222 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 223 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 224 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 225 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 226 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 227 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 228 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 229 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 230 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 231 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 232 slock slock slock slock slock slock slock slock O + 233 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 234 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 235 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + + dacu 0x0384 ( 0x03b1 0x03ac ) ( 0x0391 0x0386 ) ( 0x03b5 0x03ad ) ( 0x0395 0x0388 ) + ( 0x03b9 0x03af ) ( 0x0399 0x038a ) ( 0x03b7 0x03ae ) ( 0x0397 0x0389 ) + ( 0x03c5 0x03cd ) ( 0x03a5 0x038e ) ( 0x03bf 0x03cc ) ( 0x039f 0x038c ) + ( 0x03c9 0x03ce ) ( 0x03a9 0x038f ) + + dcir 0x0385 ( 0x03b9 0x0390 ) ( 0x0399 0x03aa ) ( 0x03c5 0x03b0 ) ( 0x03a5 0x03ab ) + + ddia 0xa8 ( 0x03b9 0x03ca ) ( 0x0399 0x03aa ) ( 0x03c5 0x03cb ) ( 0x03a5 0x03ab ) diff --git a/share/vt/keymaps/gr.kbd b/share/vt/keymaps/gr.kbd new file mode 100644 index 0000000..816205e --- /dev/null +++ b/share/vt/keymaps/gr.kbd @@ -0,0 +1,290 @@ +# Greek keyboard for FreeBSD +# by Basileios Anastasatos <B.Anastasatos@Freemail.gr> +# +# $FreeBSD$ +# +# English/Greek keyboard lock: (Left)Alt+(Left|Right)Shift +# English/Greek keyboard shift: (Right)AltGr +# +# Meta shift: (Right)Windows or Menu +# +# Extra escape (for vi users): (Left)Windows +# +# Previous screen: Ctrl+Left Arrow +# Next screen: Ctrl+Right Arrow +# +# Screen saver: Shift+Pause +# Suspend power (APM): (Left)Alt+Pause +# +# Composite characters: +# acute (tonos): [;/:] and ΑΕΗΙΟΥΩαεηιουω => ΆΈΉΊΌΎÎάÎήίόÏÏŽ +# diaeresis (dialytika): Shift+[;/:] and ΙΥιυ => ΪΫϊϋ +# acute and diaeresis: Ctrl+[;/:] and ιυ => Îΰ +# +# Greek semicolon (ano teleia): Shift+'w/W' => · +# +# Other characters from the ISO 8859-7 charset: +# +# Key combination Code Symbol Name +# +# Ctrl+[`/~] 166 ¦ BROKEN BAR +# Shift+Ctrl+[`/~] 189 ½ VULGAR FRACTION ONE HALF +# Ctrl+[1/!] 178 ² SUPERSCRIPT TWO +# Shift+Ctrl+[1/!] 179 ³ SUPERSCRIPT THREE +# Shift(+Ctrl)+[3/#] 169 © COPYRIGHT SIGN +# Shift(+Ctrl)+[4/$] 163 £ POUND SIGN +# Shift(+Ctrl)+[5/%] 167 § SECTION SIGN +# Shift(+Ctrl)+[7/&] 161 ‘ SINGLE HIGH-REVERSED-9 QUOTATION MARK +# Shift(+Ctrl)+[8/*] 162 ’ RIGHT SINGLE QUOTATION MARK +# Shift(+Ctrl)+[9/(] 171 « LEFT-POINTING DOUBLE ANGLE QUOTATION MARK +# Shift(+Ctrl)+[0/)] 187 » RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK +# Shift(+Ctrl)+[=/+] 177 ± PLUS-MINUS SIGN +# Shift(+Ctrl)+['/"] 176 ° DEGREE SIGN +# Shift(+Ctrl)+[,/<] 173  SOFT HYPHEN +# Shift(+Ctrl)+[./>] 175 ― HORIZONTAL BAR +# Shift(+Ctrl)+[//?] 172 ¬ NOT SIGN +# Ctrl+Shift+Space 160  NO-BREAK SPACE +# +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug panic O + 002 '1' '!' 0xb2 0xb3 '1' '!' 0xb2 0xb3 O + 003 '2' '@' nul nul '2' '@' nul nul O + 004 '3' '#' 0xa9 0xa9 '3' '#' 0xa9 0xa9 O + 005 '4' '$' 0xa3 0xa3 '4' '$' 0xa3 0xa3 O + 006 '5' '%' 0xa7 0xa7 '5' '%' 0xa7 0xa7 O + 007 '6' '^' rs rs '6' '^' rs rs O + 008 '7' '&' 0x2018 0x2018 '7' '&' 0x2018 0x2018 O + 009 '8' '*' 0x2019 0x2019 '8' '*' 0x2019 0x2019 O + 010 '9' '(' 0xab 0xab '9' '(' 0xab 0xab O + 011 '0' ')' 0xbb 0xbb '0' ')' 0xbb 0xbb O + 012 '-' '_' us us '-' '_' us us O + 013 '=' '+' 0xb1 0xb1 '=' '+' 0xb1 0xb1 O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 'e' 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 '[' '{' esc esc '[' '{' esc esc O + 027 ']' '}' gs gs ']' '}' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 ';' ':' nop nop ';' ':' nop nop O + 040 ''' '"' 0xb0 0xb0 ''' '"' 0xb0 0xb0 O + 041 '`' '~' 0xa6 0xbd '`' '~' 0xa6 0xbd O + 042 lshift lshift lshift lshift lshifta lshifta lshift lshift O + 043 '\' '|' fs fs '\' '|' fs fs O + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' '<' 0xad 0xad ',' '<' 0xad 0xad O + 052 '.' '>' 0x2015 0x2015 '.' '>' 0x2015 0x2015 O + 053 '/' '?' 0xac 0xac '/' '?' 0xac 0xac O + 054 rshift rshift rshift rshift rshifta rshifta rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' N + 056 lalt lalta lalt lalt lalt lalta lalt lalt O + 057 ' ' ' ' nul 0xa0 ' ' ' ' susp 0xa0 O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 nop nop nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl N + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ashift ashift ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 pscr pscr fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 nscr nscr fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 esc esc fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 meta meta fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 meta meta fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 128 nop nop nop nop nop nop nop nop O + 129 esc esc esc esc esc esc debug panic O + 130 '1' '!' 0xb2 0xb3 '1' '!' 0xb2 0xb3 O + 131 '2' '@' nul nul '2' '@' nul nul O + 132 '3' '#' 0xa9 0xa9 '3' '#' 0xa9 0xa9 O + 133 '4' '$' 0xa3 0xa3 '4' '$' 0xa3 0xa3 O + 134 '5' '%' 0xa7 0xa7 '5' '%' 0xa7 0xa7 O + 135 '6' '^' rs rs '6' '^' rs rs O + 136 '7' '&' 0x2018 0x2018 '7' '&' 0x2018 0x2018 O + 137 '8' '*' 0x2019 0x2019 '8' '*' 0x2019 0x2019 O + 138 '9' '(' 0xab 0xab '9' '(' 0xab 0xab O + 139 '0' ')' 0xbb 0xbb '0' ')' 0xbb 0xbb O + 140 '-' '_' us us '-' '_' us us O + 141 '=' '+' 0xb1 0xb1 '=' '+' 0xb1 0xb1 O + 142 bs bs del del bs bs del del O + 143 ht btab nop nop ht btab nop nop O + 144 ';' ':' dc1 dc1 ';' ':' dc1 dc1 C + 145 0x03c2 0xb7 etb etb 0x03c2 0xb7 etb etb C + 146 0x03b5 0x0395 enq enq 0x03b5 0x0395 enq enq C + 147 0x03c1 0x03a1 dc2 dc2 0x03c1 0x03a1 dc2 dc2 C + 148 0x03c4 0x03a4 dc4 dc4 0x03c4 0x03a4 dc4 dc4 C + 149 0x03c5 0x03a5 em em 0x03c5 0x03a5 em em C + 150 0x03b8 0x0398 nak nak 0x03b8 0x0398 nak nak C + 151 0x03b9 0x0399 ht ht 0x03b9 0x0399 ht ht C + 152 0x03bf 0x039f si si 0x03bf 0x039f si si C + 153 0x03c0 0x03a0 dle dle 0x03c0 0x03a0 dle dle C + 154 '[' '{' esc esc '[' '{' esc esc O + 155 ']' '}' gs gs ']' '}' gs gs O + 156 cr cr nl nl cr cr nl nl O + 157 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 158 0x03b1 0x0391 soh soh 0x03b1 0x0391 soh soh C + 159 0x03c3 0x03a3 dc3 dc3 0x03c3 0x03a3 dc3 dc3 C + 160 0x03b4 0x0394 eot eot 0x03b4 0x0394 eot eot C + 161 0x03c6 0x03a6 ack ack 0x03c6 0x03a6 ack ack C + 162 0x03b3 0x0393 bel bel 0x03b3 0x0393 bel bel C + 163 0x03b7 0x0397 bs bs 0x03b7 0x0397 bs bs C + 164 0x03be 0x039e nl nl 0x03be 0x039e nl nl C + 165 0x03ba 0x039a vt vt 0x03ba 0x039a vt vt C + 166 0x03bb 0x039b ff ff 0x03bb 0x039b ff ff C + 167 dacu ddia ddac nop dacu ddia ddac nop O + 168 ''' '"' 0xb0 0xb0 ''' '"' 0xb0 0xb0 O + 169 '`' '~' 0xa6 0xbd '`' '~' 0xa6 0xbd O + 170 lshift lshift lshift lshift lshifta lshifta lshift lshift O + 171 '\' '|' fs fs '\' '|' fs fs O + 172 0x03b6 0x0396 sub sub 0x03b6 0x0396 sub sub C + 173 0x03c7 0x03a7 can can 0x03c7 0x03a7 can can C + 174 0x03c8 0x03a8 etx etx 0x03c8 0x03a8 etx etx C + 175 0x03c9 0x03a9 syn syn 0x03c9 0x03a9 syn syn C + 176 0x03b2 0x0392 stx stx 0x03b2 0x0392 stx stx C + 177 0x03bd 0x039d so so 0x03bc 0x039c so so C + 178 0x03bc 0x039c cr cr 0x03bb 0x039b cr cr C + 179 ',' '<' 0xad 0xad ',' '<' 0xad 0xad O + 180 '.' '>' 0x2015 0x2015 '.' '>' 0x2015 0x2015 O + 181 '/' '?' 0xac 0xac '/' '?' 0xac 0xac O + 182 rshift rshift rshift rshift rshifta rshifta rshift rshift O + 183 '*' '*' '*' '*' '*' '*' '*' '*' N + 184 lalt lalta lalt lalt lalt lalta lalt lalt O + 185 ' ' ' ' nul 0xa0 ' ' ' ' susp 0xa0 O + 186 clock clock clock clock clock clock clock clock O + 187 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 188 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 189 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 190 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 191 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 192 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 193 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 194 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 195 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 196 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 197 nlock nlock nlock nlock nlock nlock nlock nlock O + 198 slock slock slock slock slock slock slock slock O + 199 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 200 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 201 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 202 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 203 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 204 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 205 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 206 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 207 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 208 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 209 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 210 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 211 del '.' '.' '.' '.' '.' boot boot N + 212 nop nop nop nop nop nop nop nop O + 213 nop nop nop nop nop nop nop nop O + 214 nop nop nop nop nop nop nop nop O + 215 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 216 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 217 cr cr nl nl cr cr nl nl N + 218 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 219 '/' '/' '/' '/' '/' '/' '/' '/' N + 220 nscr pscr debug debug nop nop nop nop O + 221 ashift ashift ralt ralt ralt ralt ralt ralt O + 222 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 223 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 224 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 225 fkey53 fkey53 pscr pscr fkey53 fkey53 fkey53 fkey53 O + 226 fkey55 fkey55 nscr nscr fkey55 fkey55 fkey55 fkey55 O + 227 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 228 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 229 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 230 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 231 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 232 slock saver slock saver susp nop susp nop O + 233 esc esc fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 234 meta meta fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 235 meta meta fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 236 nop nop nop nop nop nop nop nop O + +# +# accent capital lower +# ---------------------------------------------- + dacu 0x0384 ( 0x0384 0x0384 ) ( 0x0391 0x0386 ) ( 0x03b1 0x03ac ) + ( 0x0395 0x0388 ) ( 0x03b5 0x03ad ) + ( 0x0397 0x0389 ) ( 0x03b7 0x03ae ) + ( 0x0399 0x038a ) ( 0x03b9 0x03af ) + ( 0x039f 0x038c ) ( 0x03bf 0x03cc ) + ( 0x03a5 0x038e ) ( 0x03c5 0x03cd ) + ( 0x03a9 0x038f ) ( 0x03c9 0x03ce ) + + ddac 0x0385 ( 0x0385 0x0385 ) ( 0x03b9 0x0390 ) + ( 0x03c5 0x03b0 ) + + ddia 0xa8 ( 0xa8 0xa8 ) ( 0x0399 0x03aa ) ( 0x03b9 0x03ca ) + ( 0x03a5 0x03ab ) ( 0x03c5 0x03cb ) diff --git a/share/vt/keymaps/hr.kbd b/share/vt/keymaps/hr.kbd new file mode 100644 index 0000000..69aa304 --- /dev/null +++ b/share/vt/keymaps/hr.kbd @@ -0,0 +1,117 @@ +# $FreeBSD$ +# +# Slovenian keyboard +# Blaz Zupan <blaz@amis.net> +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '~' '~' nop nop O + 003 '2' '"' nul nul 0x02c7 0x02c7 nul nul O + 004 '3' '#' nop nop '^' '^' nop nop O + 005 '4' '$' nop nop 0x02d8 0x02d8 nop nop O + 006 '5' '%' nop nop 0xb0 0xb0 nop nop O + 007 '6' '&' rs rs 0x02db 0x02db rs rs O + 008 '7' '/' nop nop '`' '`' nop nop O + 009 '8' '(' nop nop 0x02d9 0x02d9 nop nop O + 010 '9' ')' nop nop ''' ''' nop nop O + 011 '0' '=' nop nop 0x02dd 0x02dd nop nop O + 012 ''' '?' us us 0xa8 0xa8 us us O + 013 '+' '*' nop nop 0xb8 0xb8 nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 '\' '\' dc1 dc1 C + 017 'w' 'W' etb etb '|' '|' etb etb C + 018 'e' 'E' enq enq 'e' 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'z' 'Z' sub sub 'z' 'Z' sub sub C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 0x0161 0x0160 esc esc 0xf7 0xf7 esc esc C + 027 0x0111 0x0110 gs gs 0xd7 0xd7 gs gs C + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack '[' '[' ack ack C + 034 'g' 'G' bel bel ']' ']' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 0x0142 0x0142 vt vt C + 038 'l' 'L' ff ff 0x0141 0x0141 ff ff C + 039 0x010d 0x010c nop nop 0x010d 0x010c nop nop C + 040 0x0107 0x0106 nop nop 0xdf 0xdf nop nop C + 041 0xb8 0xa8 nop nop 0xb8 0xa8 nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 0x017e 0x017d fs fs 0xa4 0xa4 fs fs C + 044 'y' 'Y' em em 'y' 'Y' em em C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn '@' '@' syn syn C + 048 'b' 'B' stx stx '{' '{' stx stx C + 049 'n' 'N' so so '}' '}' so so C + 050 'm' 'M' cr cr 0xa7 0xa7 cr cr C + 051 ',' ';' nop nop '<' ';' '<' nop O + 052 '.' ':' nop nop '>' ':' '>' nop O + 053 '-' '_' nop nop '-' '_' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del ',' ',' ',' ',' ',' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' nop nop '<' '>' nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/hu.101.kbd b/share/vt/keymaps/hu.101.kbd new file mode 100644 index 0000000..3101b36 --- /dev/null +++ b/share/vt/keymaps/hu.101.kbd @@ -0,0 +1,293 @@ +# $FreeBSD$ +# +# This is for use with a US keyboard, with only the +# Hungarian accented characters added to it, and some tricks: +# The accented characters are available as Alt + something: (and the upper +# case version is with Alt + Shift + something) +# ' -> a' +# ; -> e' +# ` -> i' +# = -> o' +# 0 -> o: +# [ -> o" +# ] -> u' +# - -> u: +# \ -> u" +# (i' and I' has another method: Alt + j -> i' and Alt + i -> I') +# +# This keymap file has a switching feature: +# with the Shift+Ctrl combination, +# we can change the keyboard from US kbd (with hungarian accented letters as +# Alt+something) to a US kbd, with the help of which we can type the accented +# characters +# without the Alt key (and can type the original characters as Alt + ;). So +# after loading that keymap: +# ; -> ; +# Alt + ; -> e' +# press Shift+Ctrl, and get: +# ; -> e' +# Alt + ; -> ; +# The keyboard switch can be seen at the CapsLock led: off = normal mode; on = +# switched mode. By the way, we cannot see the CapsLock key's status ;-( +# +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '1' '!' nop nop O + 003 '2' '@' nul nul '2' '@' nul nul O + 004 '3' '#' nop nop '3' '#' nop nop O + 005 '4' '$' nop nop '4' '$' nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '^' rs rs '6' '^' rs rs O + 008 '7' '&' nop nop '7' '&' nop nop O + 009 '8' '*' nop nop '8' '*' nop nop O + 010 '9' '(' nop nop '9' '(' nop nop O + 011 '0' ')' nop nop 0xf6 0xd6 nop nop O + 012 '-' '_' ns ns 0xfc 0xdc ns ns C + 013 '=' '+' nop nop 0xf3 0xd3 nop nop C + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 'e' 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 0xcd 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 '[' '{' esc esc 0x0151 0x0150 esc esc C + 027 ']' '}' gs gs 0xfa 0xda gs gs C + 028 cr cr nl nl cr cr nl nl O + 029 lctrl alock lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 0xed 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 ';' ':' nop nop 0xe9 0xc9 nop nop C + 040 ''' '"' nop nop 0xe1 0xc1 nop nop C + 041 '`' '~' nop nop 0xed 0xcd nop nop C + 042 lshift lshift alock lshift lshift lshift lshift lshift O + 043 '\' '|' fs fs 0x0171 0x0170 fs fs C + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' '<' nop nop ',' '<' nop nop O + 052 '.' '>' nop nop '.' '>' nop nop O + 053 '/' '?' nop nop '/' '?' nop nop C + 054 rshift rshift alock rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 0xed 0xcd nop nop nop nop nop nop C + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr cr cr cr cr cr cr O + 090 rctrl alock rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' O + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + 109 nop nop nop nop nop nop nop nop O + 110 nop nop nop nop nop nop nop nop O + 111 nop nop nop nop nop nop nop nop O + 112 nop nop nop nop nop nop nop nop O + 113 nop nop nop nop nop nop nop nop O + 114 nop nop nop nop nop nop nop nop O + 115 nop nop nop nop nop nop nop nop O + 116 nop nop nop nop nop nop nop nop O + 117 nop nop nop nop nop nop nop nop O + 118 nop nop nop nop nop nop nop nop O + 119 nop nop nop nop nop nop nop nop O + 120 nop nop nop nop nop nop nop nop O + 121 nop nop nop nop nop nop nop nop O + 122 nop nop nop nop nop nop nop nop O + 123 nop nop nop nop nop nop nop nop O + 124 nop nop nop nop nop nop nop nop O + 125 nop nop nop nop nop nop nop nop O + 126 nop nop nop nop nop nop nop nop O + 127 nop nop nop nop nop nop nop nop O +# ------------------------------------------------------------------ + 128 nop nop nop nop nop nop nop nop O + 129 esc esc esc esc esc esc debug esc O + 130 '1' '!' nop nop '1' '!' nop nop O + 131 '2' '@' nul nul '2' '@' nul nul O + 132 '3' '#' nop nop '3' '#' nop nop O + 133 '4' '$' nop nop '4' '$' nop nop O + 134 '5' '%' nop nop '5' '%' nop nop O + 135 '6' '^' rs rs '6' '^' rs rs O + 136 '7' '&' nop nop '7' '&' nop nop O + 137 '8' '*' nop nop '8' '*' nop nop O + 138 '9' '(' nop nop '9' '(' nop nop O + 139 0xf6 0xd6 nop nop '0' ')' nop nop O + 140 0xfc 0xdc ns ns '-' '_' ns ns C + 141 0xf3 0xd3 nop nop '=' '+' nop nop C + 142 bs bs del del bs bs del del O + 143 ht btab nop nop ht btab nop nop O + 144 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 145 'w' 'W' etb etb 'w' 'W' etb etb C + 146 'e' 'E' enq enq 'e' 'E' enq enq C + 147 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 148 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 149 'y' 'Y' em em 'y' 'Y' em em C + 150 'u' 'U' nak nak 'u' 'U' nak nak C + 151 'i' 'I' ht ht 0xcd 'I' ht ht C + 152 'o' 'O' si si 'o' 'O' si si C + 153 'p' 'P' dle dle 'p' 'P' dle dle C + 154 0x0151 0x0150 esc esc '[' '{' esc esc C + 155 0xfa 0xda gs gs ']' '}' gs gs C + 156 cr cr nl nl cr cr nl nl O + 157 lctrl alock lctrl lctrl lctrl lctrl lctrl lctrl O + 158 'a' 'A' soh soh 'a' 'A' soh soh C + 159 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 160 'd' 'D' eot eot 'd' 'D' eot eot C + 161 'f' 'F' ack ack 'f' 'F' ack ack C + 162 'g' 'G' bel bel 'g' 'G' bel bel C + 163 'h' 'H' bs bs 'h' 'H' bs bs C + 164 'j' 'J' nl nl 0xed 'J' nl nl C + 165 'k' 'K' vt vt 'k' 'K' vt vt C + 166 'l' 'L' ff ff 'l' 'L' ff ff C + 167 0xe9 0xc9 nop nop ';' ':' nop nop C + 168 0xe1 0xc1 nop nop ''' '"' nop nop C + 169 0xed 0xcd nop nop '`' '~' nop nop C + 170 lshift lshift alock lshift lshift lshift lshift lshift O + 171 0x0171 0x0170 fs fs '\' '|' fs fs C + 172 'z' 'Z' sub sub 'z' 'Z' sub sub C + 173 'x' 'X' can can 'x' 'X' can can C + 174 'c' 'C' etx etx 'c' 'C' etx etx C + 175 'v' 'V' syn syn 'v' 'V' syn syn C + 176 'b' 'B' stx stx 'b' 'B' stx stx C + 177 'n' 'N' so so 'n' 'N' so so C + 178 'm' 'M' cr cr 'm' 'M' cr cr C + 179 ',' '<' nop nop ',' '<' nop nop O + 180 '.' '>' nop nop '.' '>' nop nop O + 181 '/' '?' nop nop '/' '?' nop nop C + 182 rshift rshift alock rshift rshift rshift rshift rshift O + 183 '*' '*' '*' '*' '*' '*' '*' '*' O + 184 lalt lalt lalt lalt lalt lalt lalt lalt O + 185 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 186 clock clock clock clock clock clock clock clock O + 187 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 188 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 189 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 190 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 191 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 192 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 193 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 194 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 195 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 196 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 197 nlock nlock nlock nlock nlock nlock nlock nlock O + 198 slock slock slock slock slock slock slock slock O + 199 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 200 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 201 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 202 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 203 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 204 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 205 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 206 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 207 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 208 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 209 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 210 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 211 del '.' '.' '.' '.' '.' boot boot N + 212 nop nop nop nop nop nop nop nop O + 213 nop nop nop nop nop nop nop nop O + 214 0xed 0xcd nop nop nop nop nop nop C + 215 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 216 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 217 cr cr cr cr cr cr cr cr O + 218 rctrl alock rctrl rctrl rctrl rctrl rctrl rctrl O + 219 '/' '/' '/' '/' '/' '/' '/' '/' O + 220 nscr pscr debug debug nop nop nop nop O + 221 ralt ralt ralt ralt ralt ralt ralt ralt O + 222 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 223 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 224 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 225 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 226 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 227 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 228 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 229 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 230 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 231 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 232 slock saver slock saver susp nop susp nop O + 233 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 234 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 235 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 236 nop nop nop nop nop nop nop nop O + 237 nop nop nop nop nop nop nop nop O + 238 nop nop nop nop nop nop nop nop O + 239 nop nop nop nop nop nop nop nop O + 240 nop nop nop nop nop nop nop nop O + 241 nop nop nop nop nop nop nop nop O + 242 nop nop nop nop nop nop nop nop O + 243 nop nop nop nop nop nop nop nop O + 244 nop nop nop nop nop nop nop nop O + 245 nop nop nop nop nop nop nop nop O + 246 nop nop nop nop nop nop nop nop O + 247 nop nop nop nop nop nop nop nop O + 248 nop nop nop nop nop nop nop nop O + 249 nop nop nop nop nop nop nop nop O + 250 nop nop nop nop nop nop nop nop O + 251 nop nop nop nop nop nop nop nop O + 252 nop nop nop nop nop nop nop nop O + 253 nop nop nop nop nop nop nop nop O + 254 nop nop nop nop nop nop nop nop O + 255 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/hu.102.kbd b/share/vt/keymaps/hu.102.kbd new file mode 100644 index 0000000..532cbd8 --- /dev/null +++ b/share/vt/keymaps/hu.102.kbd @@ -0,0 +1,142 @@ +# This is an as-close-as-possible (closer :-) representation of the +# Hungarian keyboard standard (after M$'s W*). There are so many PCs in +# Hungary with that type of keyboard. +# +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' ''' nop nop '~' nop nop nop O + 003 '2' '"' nop nop 0x02c7 nop nop nop O + 004 '3' '+' nop nop '^' nop rs rs O + 005 '4' '!' nop nop 0x02d8 nop nop nop O + 006 '5' '%' nop nop 0xb0 nop nop nop O + 007 '6' '/' rs rs 0x02db nop rs rs O + 008 '7' '=' nop nop '`' nop nop nop O + 009 '8' '(' nop nop 0x02d9 nop nop nop O + 010 '9' ')' nop nop 0xb4 nop nop nop O + 011 0xf6 0xd6 nop nop 0x02dd nop nop nop C + 012 0xfc 0xdc nop nop 0xa8 nop nop nop C + 013 0xf3 0xd3 nop nop 0xb8 nop nop nop C + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 '\' nop fs fs C + 017 'w' 'W' etb etb '|' nop etb etb C + 018 'e' 'E' enq enq nop nop enq enq C + 019 'r' 'R' dc2 dc2 nop nop dc2 dc2 C + 020 't' 'T' dc4 dc4 nop nop dc4 dc4 C + 021 'z' 'Z' sub sub nop nop sub sub C + 022 'u' 'U' nak nak nop nop nak nak C + 023 'i' 'I' ht ht 0xcd nop ht ht C + 024 'o' 'O' si si nop nop si si C + 025 'p' 'P' dle dle nop nop dle dle C + 026 0x0151 0x0150 esc esc 0xf7 nop esc esc C + 027 0xfa 0xda gs gs 0xd7 nop gs gs C + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh nop nop soh soh C + 031 's' 'S' dc3 dc3 0x0111 nop dc3 dc3 C + 032 'd' 'D' eot eot 0x0110 nop eot eot C + 033 'f' 'F' ack ack '[' nop esc esc C + 034 'g' 'G' bel bel ']' nop gs gs C + 035 'h' 'H' bs bs nop nop bs bs C + 036 'j' 'J' nl nl 0xed nop nl nl C + 037 'k' 'K' vt vt 0x0142 nop vt vt C + 038 'l' 'L' ff ff 0x0141 nop ff ff C + 039 0xe9 0xc9 nop nop '$' nop nop nop C + 040 0xe1 0xc1 nop nop 0xdf nop nop nop C + 041 '0' 0x15 nop nop nop nop nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 0x0171 0x0170 fs fs 0xa4 nop fs fs C + 044 'y' 'Y' em em '>' '<' em em C + 045 'x' 'X' can can '#' nop can can C + 046 'c' 'C' etx etx '&' nop etx etx C + 047 'v' 'V' syn syn '@' nop nul nul C + 048 'b' 'B' stx stx '{' nop stx stx C + 049 'n' 'N' so so '}' nop so so C + 050 'm' 'M' cr cr '<' nop cr cr C + 051 ',' '?' nop nop ';' nop nop nop O + 052 '.' ':' nop nop '>' nop nop nop O + 053 '-' '_' ns ns '*' nop nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 0xed 0xcd nop nop '<' nop nop nop C + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr cr cr cr cr cr cr O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' O + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O +# the left Windows key. If you would like to use them, +# program these keys with: +# kbdcontrol -f 62 'strings you would like to send' + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O +# the right Windows key. + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O +# the right Menu pointer key. + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + 109 nop nop nop nop nop nop nop nop O + 110 nop nop nop nop nop nop nop nop O + 111 nop nop nop nop nop nop nop nop O + 112 nop nop nop nop nop nop nop nop O + 113 nop nop nop nop nop nop nop nop O + 114 nop nop nop nop nop nop nop nop O + 115 nop nop nop nop nop nop nop nop O + 116 nop nop nop nop nop nop nop nop O + 117 nop nop nop nop nop nop nop nop O + 118 nop nop nop nop nop nop nop nop O + 119 nop nop nop nop nop nop nop nop O + 120 nop nop nop nop nop nop nop nop O + 121 nop nop nop nop nop nop nop nop O + 122 nop nop nop nop nop nop nop nop O + 123 nop nop nop nop nop nop nop nop O + 124 nop nop nop nop nop nop nop nop O + 125 nop nop nop nop nop nop nop nop O + 126 nop nop nop nop nop nop nop nop O + 127 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/il.kbd b/share/vt/keymaps/il.kbd new file mode 100644 index 0000000..49e1876 --- /dev/null +++ b/share/vt/keymaps/il.kbd @@ -0,0 +1,114 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '1' '!' nop nop O + 003 '2' '@' nul nul '2' '@' nul nul O + 004 '3' '#' nop nop '3' '#' nop nop O + 005 '4' '$' nop nop '4' '$' nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '^' rs rs '6' '^' rs rs O + 008 '7' '&' nop nop '7' '&' nop nop O + 009 '8' '*' nop nop '8' '*' nop nop O + 010 '9' '(' nop nop '9' '(' nop nop O + 011 '0' ')' nop nop '0' ')' nop nop O + 012 '-' '_' us us '-' '_' us us O + 013 '=' '+' nop nop '=' '+' nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 '/' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb ''' 'W' etb etb C + 018 'e' 'E' enq enq 0x05e7 'E' enq enq C + 019 'r' 'R' dc2 dc2 0x05e8 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 0x05d0 'T' dc4 dc4 C + 021 'y' 'Y' em em 0x05d8 'Y' em em C + 022 'u' 'U' nak nak 0x05d5 'U' nak nak C + 023 'i' 'I' ht ht 0x05df 'I' ht ht C + 024 'o' 'O' si si 0x05dd 'O' si si C + 025 'p' 'P' dle dle 0x05e4 'P' dle dle C + 026 '[' '{' esc esc '[' '{' esc esc O + 027 ']' '}' gs gs ']' '}' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 0x05e9 'A' soh soh C + 031 's' 'S' dc3 dc3 0x05d3 'S' dc3 dc3 C + 032 'd' 'D' eot eot 0x05d2 'D' eot eot C + 033 'f' 'F' ack ack 0x05db 'F' ack ack C + 034 'g' 'G' bel bel 0x05e2 'G' bel bel C + 035 'h' 'H' bs bs 0x05d9 'H' bs bs C + 036 'j' 'J' nl nl 0x05d7 'J' nl nl C + 037 'k' 'K' vt vt 0x05dc 'K' vt vt C + 038 'l' 'L' ff ff 0x05da 'L' ff ff C + 039 ';' ':' nop nop 0x05e3 ':' nop nop O + 040 ''' '"' nop nop ',' '"' nop nop O + 041 '`' '~' nop nop ';' '~' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '\' '|' fs fs '\' '|' fs fs O + 044 'z' 'Z' sub sub 0x05d6 'Z' sub sub C + 045 'x' 'X' can can 0x05e1 'X' can can C + 046 'c' 'C' etx etx 0x05d1 'C' etx etx C + 047 'v' 'V' syn syn 0x05d4 'V' syn syn C + 048 'b' 'B' stx stx 0x05e0 'B' stx stx C + 049 'n' 'N' so so 0x05de 'N' so so C + 050 'm' 'M' cr cr 0x05e6 'M' cr cr C + 051 ',' '<' nop nop 0x05ea '<' nop nop O + 052 '.' '>' nop nop 0x05e5 '>' nop nop O + 053 '/' '?' nop nop '.' '?' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 nop nop nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/is.acc.kbd b/share/vt/keymaps/is.acc.kbd new file mode 100644 index 0000000..99f4361 --- /dev/null +++ b/share/vt/keymaps/is.acc.kbd @@ -0,0 +1,137 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop nop nop nop nop O + 003 '2' '"' nul nul nop nop nul nul O + 004 '3' '#' nop nop nop nop nop nop O + 005 '4' '$' nop nop nop nop nop nop O + 006 '5' '%' nop nop nop nop nop nop O + 007 '6' '&' nop nop nop nop nop nop O + 008 '7' '/' nop nop '{' nop nop nop O + 009 '8' '(' nop nop '[' nop nop nop O + 010 '9' ')' nop nop ']' nop nop nop O + 011 '0' '=' nop nop '}' nop nop nop O + 012 0xf6 0xd6 nop nop '\' nop fs nop C + 013 '-' '_' nop nop nop nop nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 '@' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 'e' 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 0xf0 0xd0 nop nop nop nop nop nop C + 027 ''' '?' nop nop '~' nop nop nop O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 0xdf 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 0xe6 0xc6 nop nop '|' '\' nop nop C + 040 dacu dacu nop nop dtil nop nop nop C + 041 drin duml nop nop nop nop nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '+' '*' nop nop '`' '*' nop nop O + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' ';' nop nop nop nop nop nop O + 052 '.' ':' nop nop nop nop nop nop O + 053 0xfe 0xde us nop nop nop nop nop C + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' nop nop '|' nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr cr cr cr cr cr cr N + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + + dgra '`' ( 'a' 0xe0 ) ( 'A' 0xc0 ) ( 'e' 0xe8 ) ( 'E' 0xc8 ) + ( 'i' 0xec ) ( 'I' 0xcc ) ( 'o' 0xf2 ) ( 'O' 0xd2 ) + ( 'u' 0xf9 ) ( 'U' 0xd9 ) + + dacu 0xb4 ( 'a' 0xe1 ) ( 'A' 0xc1 ) ( 'e' 0xe9 ) ( 'E' 0xc9 ) + ( 'i' 0xed ) ( 'I' 0xcd ) ( 'o' 0xf3 ) ( 'O' 0xd3 ) + ( 'u' 0xfa ) ( 'U' 0xda ) ( 'y' 0xfd ) ( 'Y' 0xdd ) + + dcir '^' ( 'a' 0xe2 ) ( 'A' 0xc2 ) ( 'e' 0xea ) ( 'E' 0xca ) + ( 'i' 0xee ) ( 'I' 0xce ) ( 'o' 0xf4 ) ( 'O' 0xd4 ) + ( 'u' 0xfb ) ( 'U' 0xdb ) + + dtil '~' ( 'a' 0xe3 ) ( 'A' 0xc3 ) ( 'n' 0xf1 ) ( 'N' 0xd1 ) + ( 'o' 0xf5 ) ( 'O' 0xd5 ) + + duml 0xa8 ( 'a' 0xe4 ) ( 'A' 0xc4 ) ( 'e' 0xeb ) ( 'E' 0xcb ) + ( 'i' 0xef ) ( 'I' 0xcf ) ( 'o' 0xf6 ) ( 'O' 0xd6 ) + ( 'u' 0xfc ) ( 'U' 0xdc ) ( 'y' 0xff ) + + drin 0xb0 ( 'a' 0xe5 ) ( 'A' 0xc5 ) + + dced 0xb8 ( 'c' 0xe7 ) ( 'C' 0xc7 ) diff --git a/share/vt/keymaps/is.kbd b/share/vt/keymaps/is.kbd new file mode 100644 index 0000000..a0103e7 --- /dev/null +++ b/share/vt/keymaps/is.kbd @@ -0,0 +1,114 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop nop nop nop nop O + 003 '2' '"' nul nul nop nop nul nul O + 004 '3' '#' nop nop 0xa3 nop nop nop O + 005 '4' '$' nop nop 0xa4 nop nop nop O + 006 '5' '%' nop nop nop nop nop nop O + 007 '6' '&' nop nop nop nop nop nop O + 008 '7' '/' nop nop '{' nop nop nop O + 009 '8' '(' nop nop '[' nop nop nop O + 010 '9' ')' nop nop ']' nop nop nop O + 011 '0' '=' nop nop '}' nop nop nop O + 012 0xf6 0xd6 nop nop '\' nop fs nop O + 013 '-' '_' nop nop nop nop nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 '@' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 'e' 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 0xf0 0xd0 nop nop '}' ']' nop nop C + 027 ''' '?' nop nop '~' nop nop nop C + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 0xdf 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 0xe6 0xc6 nop nop '|' '\' nop nop C + 040 0xb4 0xb4 nop nop '~' '[' nop nop C + 041 0xb0 0xa8 nop nop '^' '*' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '+' '*' nop nop '`' '*' nop nop C + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' ';' nop nop nop '<' nop nop O + 052 '.' ':' nop nop nop '>' nop nop O + 053 0xfe 0xde us nop '/' '?' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' nop nop '|' nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr cr cr cr cr cr cr N + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/it.kbd b/share/vt/keymaps/it.kbd new file mode 100644 index 0000000..ffcdc2b --- /dev/null +++ b/share/vt/keymaps/it.kbd @@ -0,0 +1,164 @@ +# $FreeBSD$ +# +# Aggiunte ad una tastiera italiana standard : +# +# -- ~ : SHIFT + ALT + a accentata +# -- { : SHIFT + [ +# : ALT + 7 +# -- } : SHIFT + ] +# : ALT + 0 +# -- [ : definita anche come ALT + 8 +# -- ] : definita anche come ALT + 9 +# -- ` : ALT + ' +# : CTRL + ' +# +# Per l'utilizzo della stessa in modo permanente e/o +# per eventuali note su specifiche applicazioni: +# Gruppo utenti FreeBSD Italia - http://www.gufi.org +# Gianmarco Home Page - http://www.gufi.org/~gmarco +# +# +# Credits to: +# +# Gianmarco Giovannelli <gmarco@giovannelli.it> +# Nicola Vitale <nivit@libero.it> +# Marco Trentini <m.trentini@remotelab.org> +# +#################################################################### +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop 0xb9 0xa1 nop nop O + 003 '2' '"' nul duml 0xb2 nop nul nul O + 004 '3' 0xa3 nop nop 0xb3 0xa3 nop nop O + 005 '4' '$' nop nop 0xbc '$' nop nop O + 006 '5' '%' nop nop 0xbd nop nop nop O + 007 '6' '&' rs rs 0xbe nop rs rs O + 008 '7' '/' nop nop '{' nop nop nop O + 009 '8' '(' nop nop '[' nop nop nop O + 010 '9' ')' nop nop ']' 0xb1 nop nop O + 011 '0' '=' nop nop '}' 0xb0 nop nop O + 012 ''' '?' '`' dacu '`' 0xbf us dgra O + 013 0xec '^' nop dcir '~' dogo nop dtil O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 '@' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb nop nop etb etb C + 018 'e' 'E' enq enq 0x20ac 'E' enq enq C + 019 'r' 'R' dc2 dc2 0xa7 0xae dc2 dc2 C + 020 't' 'T' dc4 dc4 nop nop dc4 dc4 C + 021 'y' 'Y' em em nop 0xa5 em em C + 022 'u' 'U' nak nak nop nop nak nak C + 023 'i' 'I' ht ht nop nop ht ht C + 024 'o' 'O' si si 0xf8 0xd8 si si C + 025 'p' 'P' dle dle 0xfe 0xde dle dle C + 026 0xe8 0xe9 esc esc '[' '{' esc esc O + 027 '+' '*' gs gs ']' '}' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 0xe6 0xc6 soh soh C + 031 's' 'S' dc3 dc3 0xdf 0xa7 dc3 dc3 C + 032 'd' 'D' eot eot 0xf0 0xd0 eot eot C + 033 'f' 'F' ack ack nop 0xaa ack ack C + 034 'g' 'G' bel bel nop nop bel bel C + 035 'h' 'H' bs bs nop nop bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' '&' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 0xf2 0xe7 nop nop '@' ddac nop nop O + 040 0xe0 0xb0 nop drin '#' '~' nop dtil O + 041 '\' '|' fs nop 0xac nop nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 0xf9 0xa7 fs dgra fs fs fs dbre O + 044 'z' 'Z' sub sub 0xab '<' sub sub C + 045 'x' 'X' can can 0xbb '>' can can C + 046 'c' 'C' etx etx 0xa2 0xa9 etx etx C + 047 'v' 'V' syn syn nop '`' syn syn C + 048 'b' 'B' stx stx nop ''' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 0xb5 0xba cr cr C + 051 ',' ';' nop nop '_' 0xd7 nop nop O + 052 '.' ':' nop nop 0xb7 0xf7 nop nop O + 053 '-' '_' nop nop ddot ddot nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' nop nop '|' 0xa6 nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' O + 092 nscr nscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot pdwn O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + + dgra '`' ( 'a' 0xe0 ) ( 'A' 0xc0 ) ( 'e' 0xe8 ) ( 'E' 0xc8 ) + ( 'i' 0xec ) ( 'I' 0xcc ) ( 'o' 0xf2 ) ( 'O' 0xd2 ) + ( 'u' 0xf9 ) ( 'U' 0xd9 ) + + dacu ''' ( 'a' 0xe1 ) ( 'A' 0xc1 ) ( 'e' 0xe9 ) ( 'E' 0xc9 ) + ( 'i' 0xed ) ( 'I' 0xcd ) ( 'o' 0xf3 ) ( 'O' 0xd3 ) + ( 'u' 0xfa ) ( 'U' 0xda ) ( 'y' 0xfd ) ( 'Y' 0xdd ) + + dcir '^' ( 'a' 0xe2 ) ( 'A' 0xc2 ) ( 'e' 0xea ) ( 'E' 0xca ) + ( 'i' 0xee ) ( 'I' 0xce ) ( 'o' 0xf4 ) ( 'O' 0xd4 ) + ( 'u' 0xfb ) ( 'U' 0xdb ) + + dtil '~' ( 'a' 0xe3 ) ( 'A' 0xc3 ) ( 'n' 0xf1 ) ( 'N' 0xd1 ) + ( 'o' 0xf5 ) ( 'O' 0xd5 ) + + dmac 0xaf + + duml 0xa8 ( 'a' 0xe4 ) ( 'A' 0xc4 ) ( 'e' 0xeb ) ( 'E' 0xcb ) + ( 'i' 0xef ) ( 'I' 0xcf ) ( 'o' 0xf6 ) ( 'O' 0xd6 ) + ( 'u' 0xfc ) ( 'U' 0xdc ) ( 'y' 0xff ) + + drin 0xb0 ( 'a' 0xe5 ) ( 'A' 0xc5 ) + + dced 0xb8 ( 'c' 0xe7 ) ( 'C' 0xc7 ) diff --git a/share/vt/keymaps/jp.capsctrl.kbd b/share/vt/keymaps/jp.capsctrl.kbd new file mode 100644 index 0000000..294d531 --- /dev/null +++ b/share/vt/keymaps/jp.capsctrl.kbd @@ -0,0 +1,120 @@ +# $FreeBSD$ +# +# (this one has capslock and control swapped) +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '1' '!' nop nop O + 003 '2' '"' nop nop '2' '"' nop nop O + 004 '3' '#' nop nop '3' '#' nop nop O + 005 '4' '$' nop nop '4' '$' nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '&' nop nop '6' '&' nop nop O + 008 '7' ''' nop nop '7' ''' nop nop O + 009 '8' '(' nop nop '8' '(' nop nop O + 010 '9' ')' nop nop '9' ')' nop nop O + 011 '0' '~' nop nop '0' '~' nop nop O + 012 '-' '=' nop nop '-' '=' nop nop O + 013 '^' '~' rs rs '^' '~' rs rs O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 'e' 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 '@' '`' nul nul '@' '`' nul nul O + 027 '[' '{' esc esc '[' '{' esc esc O + 028 cr cr nl nl cr cr nl nl O + 029 clock clock clock clock clock clock clock clock O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 ';' '+' nop nop ';' '+' nop nop O + 040 ':' '*' nop nop ':' '*' nop nop O + 041 esc esc esc esc esc esc debug esc O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 ']' '}' gs gs ']' '}' gs gs O + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' '<' nop nop ',' '<' nop nop O + 052 '.' '>' nop nop '.' '>' nop nop O + 053 '/' '?' nop nop '/' '?' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 nop nop nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' O + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + 115 '\' '_' fs us '\' '_' fs us O + 121 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 123 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 125 0xa5 '|' fs us 0xa5 '|' fs us O diff --git a/share/vt/keymaps/jp.kbd b/share/vt/keymaps/jp.kbd new file mode 100644 index 0000000..1fbff5d --- /dev/null +++ b/share/vt/keymaps/jp.kbd @@ -0,0 +1,118 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '1' '!' nop nop O + 003 '2' '"' nop nop '2' '"' nop nop O + 004 '3' '#' nop nop '3' '#' nop nop O + 005 '4' '$' nop nop '4' '$' nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '&' nop nop '6' '&' nop nop O + 008 '7' ''' nop nop '7' ''' nop nop O + 009 '8' '(' nop nop '8' '(' nop nop O + 010 '9' ')' nop nop '9' ')' nop nop O + 011 '0' '~' nop nop '0' '~' nop nop O + 012 '-' '=' nop nop '-' '=' nop nop O + 013 '^' '~' rs rs '^' '~' rs rs O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 'e' 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 '@' '`' nul nul '@' '`' nul nul O + 027 '[' '{' esc esc '[' '{' esc esc O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 ';' '+' nop nop ';' '+' nop nop O + 040 ':' '*' nop nop ':' '*' nop nop O + 041 esc esc esc esc esc esc debug esc O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 ']' '}' gs gs ']' '}' gs gs O + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' '<' nop nop ',' '<' nop nop O + 052 '.' '>' nop nop '.' '>' nop nop O + 053 '/' '?' nop nop '/' '?' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 nop nop nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' O + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + 115 '\' '_' fs us '\' '_' fs us O + 121 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 123 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 125 0xa5 '|' fs us 0xa5 '|' fs us O diff --git a/share/vt/keymaps/jp.pc98.iso.kbd b/share/vt/keymaps/jp.pc98.iso.kbd new file mode 100644 index 0000000..b60375c --- /dev/null +++ b/share/vt/keymaps/jp.pc98.iso.kbd @@ -0,0 +1,134 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 esc esc esc esc esc esc debug esc O + 001 '1' '!' '!' '!' '1' '!' '!' '!' O + 002 '2' '@' sub sub '2' '"' nul nul O + 003 '3' '#' esc esc '3' '#' esc esc O + 004 '4' '$' fs fs '4' '$' fs fs O + 005 '5' '%' gs gs '5' '%' gs gs O + 006 '6' '^' rs rs '6' '&' rs rs O + 007 '7' '&' '&' '&' '7' ''' us us O + 008 '8' '*' bs bs '8' '(' del del O + 009 '9' '(' '(' '(' '9' ')' '9' '9' O + 010 '0' ')' ')' ')' '0' nop '0' '0' O + 011 '-' '_' us us '-' '=' '-' '-' O + 012 '=' '+' '+' '+' '^' '`' rs rs O + 013 0xa5 '|' fs fs 0xa5 '|' fs fs O + 014 bs bs bs bs bs bs bs bs O + 015 ht btab ht btab ht btab ht btab O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 'e' 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 '[' '{' esc esc '@' '~' nul nul O + 027 ']' '}' gs gs '[' '{' esc esc O + 028 cr cr nl nl cr cr nl nl O + 029 'a' 'A' soh soh 'a' 'A' soh soh C + 030 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 031 'd' 'D' eot eot 'd' 'D' eot eot C + 032 'f' 'F' ack ack 'f' 'F' ack ack C + 033 'g' 'G' bel bel 'g' 'G' bel bel C + 034 'h' 'H' bs bs 'h' 'H' bs bs C + 035 'j' 'J' nl nl 'j' 'J' nl nl C + 036 'k' 'K' vt vt 'k' 'K' vt vt C + 037 'l' 'L' ff ff 'l' 'L' ff ff C + 038 ';' ':' ';' ';' ';' '+' ';' ';' O + 039 ''' '"' ''' ''' ':' '*' ':' ':' O + 040 '`' '~' '~' '~' ']' '}' gs gs O + 041 'z' 'Z' sub sub 'z' 'Z' sub sub C + 042 'x' 'X' can can 'x' 'X' can can C + 043 'c' 'C' etx etx 'c' 'C' etx etx C + 044 'v' 'V' syn syn 'v' 'V' syn syn C + 045 'b' 'B' stx stx 'b' 'B' stx stx C + 046 'n' 'N' so so 'n' 'N' so so C + 047 'm' 'M' cr cr 'm' 'M' cr cr C + 048 ',' '<' '<' '<' ',' '<' '<' '<' O + 049 '.' '>' '>' '>' '.' '>' '>' '>' O + 050 '/' '?' del del '/' '?' del del O + 051 '\' '|' fs fs nop '_' us us O + 052 ' ' ' ' nul nul ' ' ' ' nul nul O + 053 esc esc esc esc esc esc esc esc O + 054 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 055 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 056 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 057 del del del del del del boot boot N + 058 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 059 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 060 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 061 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 062 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 063 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 064 '-' '-' '-' '-' '-' '-' '-' '-' O + 065 '/' '/' '/' '/' '/' '/' '/' '/' O + 066 '7' '7' '7' '7' '7' '7' '7' '7' O + 067 '8' '8' '8' '8' '8' '8' '8' '8' O + 068 '9' '9' '9' '9' '9' '9' '9' '9' O + 069 '*' '*' '*' '*' '*' '*' '*' '*' O + 070 '4' '4' '4' '4' '4' '4' '4' '4' O + 071 '5' '5' '5' '5' '5' '5' '5' '5' O + 072 '6' '6' '6' '6' '6' '6' '6' '6' O + 073 '+' '+' '+' '+' '+' '+' '+' '+' O + 074 '1' '1' '1' '1' '1' '1' '1' '1' O + 075 '2' '2' '2' '2' '2' '2' '2' '2' O + 076 '3' '3' '3' '3' '3' '3' '3' '3' O + 077 '=' '=' '=' '=' '=' '=' '=' '=' O + 078 '0' '0' '0' '0' '0' '0' '0' '0' O + 079 ',' ',' ',' ',' ',' ',' ',' ',' O + 080 '.' '.' '.' '.' '.' '.' '.' '.' O + 081 meta meta meta meta meta meta meta meta O + 082 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 083 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 084 slock slock slock slock slock slock slock slock O + 085 nop nop nop nop nop nop nop nop O + 086 nop nop nop nop nop nop nop nop O + 087 nop nop nop nop nop nop nop nop O + 088 nop nop nop nop nop nop nop nop O + 089 nop nop nop nop nop nop nop nop O + 090 nop nop nop nop nop nop nop nop O + 091 nop nop nop nop nop nop nop nop O + 092 nop nop nop nop nop nop nop nop O + 093 nop nop nop nop nop nop nop nop O + 094 nop nop nop nop nop nop nop nop O + 095 nop nop nop nop nop nop nop nop O + 096 slock saver slock saver susp nop susp nop O + 097 nscr nscr debug debug nop nop nop nop O + 098 fkey01 fkey13 fkey25 fkey37 scr01 scr01 scr01 scr01 O + 099 fkey02 fkey14 fkey26 fkey38 scr02 scr02 scr02 scr02 O + 100 fkey03 fkey15 fkey27 fkey39 scr03 scr03 scr03 scr03 O + 101 fkey04 fkey16 fkey28 fkey40 scr04 scr04 scr04 scr04 O + 102 fkey05 fkey17 fkey29 fkey41 scr05 scr05 scr05 scr05 O + 103 fkey06 fkey18 fkey30 fkey42 scr06 scr06 scr06 scr06 O + 104 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 105 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 106 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 107 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 108 nop nop nop nop nop nop nop nop O + 109 nop nop nop nop nop nop nop nop O + 110 nop nop nop nop nop nop nop nop O + 111 nop nop nop nop nop nop nop nop O + 112 lshift lshift lshift lshift lshift lshift lshift lshift O + 113 clock clock clock clock clock clock clock clock O + 114 lalt lalt lalt lalt lalt lalt lalt lalt O + 115 lalt lalt lalt lalt lalt lalt lalt lalt O + 116 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 117 nop nop nop nop nop nop nop nop O + 118 nop nop nop nop nop nop nop nop O + 119 nop nop nop nop nop nop nop nop O + 120 nop nop nop nop nop nop nop nop O + 121 nop nop nop nop nop nop nop nop O + 122 nop nop nop nop nop nop nop nop O + 123 nop nop nop nop nop nop nop nop O + 124 nop nop nop nop nop nop nop nop O + 125 nop nop nop nop nop nop nop nop O + 126 nop nop nop nop nop nop nop nop O + 127 nop nop nop nop nop nop nop nop O + diff --git a/share/vt/keymaps/jp.pc98.kbd b/share/vt/keymaps/jp.pc98.kbd new file mode 100644 index 0000000..6c8a4d6 --- /dev/null +++ b/share/vt/keymaps/jp.pc98.kbd @@ -0,0 +1,134 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 esc esc esc esc esc esc debug esc O + 001 '1' '!' '!' '!' '1' '!' '!' '!' O + 002 '2' '"' sub sub '2' '@' nul nul O + 003 '3' '#' esc esc '3' '#' esc esc O + 004 '4' '$' fs fs '4' '$' fs fs O + 005 '5' '%' gs gs '5' '%' gs gs O + 006 '6' '&' rs rs '6' '^' rs rs O + 007 '7' ''' us us '7' '&' '&' '&' O + 008 '8' '(' del del '8' '*' bs bs O + 009 '9' ')' '9' '9' '9' '(' '(' '(' O + 010 '0' nop '0' '0' '0' ')' ')' ')' O + 011 '-' '=' '-' '-' '-' '_' us us O + 012 '^' '`' rs rs '=' '+' '+' '+' O + 013 '\' '|' fs fs 0xa5 '|' fs fs O + 014 bs bs bs bs bs bs bs bs O + 015 ht btab ht btab ht btab ht btab O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 'e' 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 '@' '~' nul nul '[' '{' esc esc O + 027 '[' '{' esc esc ']' '}' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 'a' 'A' soh soh 'a' 'A' soh soh C + 030 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 031 'd' 'D' eot eot 'd' 'D' eot eot C + 032 'f' 'F' ack ack 'f' 'F' ack ack C + 033 'g' 'G' bel bel 'g' 'G' bel bel C + 034 'h' 'H' bs bs 'h' 'H' bs bs C + 035 'j' 'J' nl nl 'j' 'J' nl nl C + 036 'k' 'K' vt vt 'k' 'K' vt vt C + 037 'l' 'L' ff ff 'l' 'L' ff ff C + 038 ';' '+' ';' ';' ';' ':' ';' ';' O + 039 ':' '*' ':' ':' ''' '"' ''' ''' O + 040 ']' '}' gs gs '`' '~' '~' '~' O + 041 'z' 'Z' sub sub 'z' 'Z' sub sub C + 042 'x' 'X' can can 'x' 'X' can can C + 043 'c' 'C' etx etx 'c' 'C' etx etx C + 044 'v' 'V' syn syn 'v' 'V' syn syn C + 045 'b' 'B' stx stx 'b' 'B' stx stx C + 046 'n' 'N' so so 'n' 'N' so so C + 047 'm' 'M' cr cr 'm' 'M' cr cr C + 048 ',' '<' '<' '<' ',' '<' '<' '<' O + 049 '.' '>' '>' '>' '.' '>' '>' '>' O + 050 '/' '?' del del '/' '?' del del O + 051 nop '_' us us '\' '|' fs fs O + 052 ' ' ' ' nul nul ' ' ' ' nul nul O + 053 esc esc esc esc esc esc esc esc O + 054 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 055 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 056 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 057 del del del del del del boot boot N + 058 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 059 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 060 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 061 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 062 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 063 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 064 '-' '-' '-' '-' '-' '-' '-' '-' O + 065 '/' '/' '/' '/' '/' '/' '/' '/' O + 066 '7' '7' '7' '7' '7' '7' '7' '7' O + 067 '8' '8' '8' '8' '8' '8' '8' '8' O + 068 '9' '9' '9' '9' '9' '9' '9' '9' O + 069 '*' '*' '*' '*' '*' '*' '*' '*' O + 070 '4' '4' '4' '4' '4' '4' '4' '4' O + 071 '5' '5' '5' '5' '5' '5' '5' '5' O + 072 '6' '6' '6' '6' '6' '6' '6' '6' O + 073 '+' '+' '+' '+' '+' '+' '+' '+' O + 074 '1' '1' '1' '1' '1' '1' '1' '1' O + 075 '2' '2' '2' '2' '2' '2' '2' '2' O + 076 '3' '3' '3' '3' '3' '3' '3' '3' O + 077 '=' '=' '=' '=' '=' '=' '=' '=' O + 078 '0' '0' '0' '0' '0' '0' '0' '0' O + 079 ',' ',' ',' ',' ',' ',' ',' ',' O + 080 '.' '.' '.' '.' '.' '.' '.' '.' O + 081 meta meta meta meta meta meta meta meta O + 082 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 083 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 084 slock slock slock slock slock slock slock slock O + 085 nop nop nop nop nop nop nop nop O + 086 nop nop nop nop nop nop nop nop O + 087 nop nop nop nop nop nop nop nop O + 088 nop nop nop nop nop nop nop nop O + 089 nop nop nop nop nop nop nop nop O + 090 nop nop nop nop nop nop nop nop O + 091 nop nop nop nop nop nop nop nop O + 092 nop nop nop nop nop nop nop nop O + 093 nop nop nop nop nop nop nop nop O + 094 nop nop nop nop nop nop nop nop O + 095 nop nop nop nop nop nop nop nop O + 096 slock saver slock saver susp nop susp nop O + 097 nscr nscr debug debug nop nop nop nop O + 098 fkey01 fkey13 fkey25 fkey37 scr01 scr01 scr01 scr01 O + 099 fkey02 fkey14 fkey26 fkey38 scr02 scr02 scr02 scr02 O + 100 fkey03 fkey15 fkey27 fkey39 scr03 scr03 scr03 scr03 O + 101 fkey04 fkey16 fkey28 fkey40 scr04 scr04 scr04 scr04 O + 102 fkey05 fkey17 fkey29 fkey41 scr05 scr05 scr05 scr05 O + 103 fkey06 fkey18 fkey30 fkey42 scr06 scr06 scr06 scr06 O + 104 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 105 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 106 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 107 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 108 nop nop nop nop nop nop nop nop O + 109 nop nop nop nop nop nop nop nop O + 110 nop nop nop nop nop nop nop nop O + 111 nop nop nop nop nop nop nop nop O + 112 lshift lshift lshift lshift lshift lshift lshift lshift O + 113 clock clock clock clock clock clock clock clock O + 114 lalt lalt lalt lalt lalt lalt lalt lalt O + 115 lalt lalt lalt lalt lalt lalt lalt lalt O + 116 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 117 nop nop nop nop nop nop nop nop O + 118 nop nop nop nop nop nop nop nop O + 119 nop nop nop nop nop nop nop nop O + 120 nop nop nop nop nop nop nop nop O + 121 nop nop nop nop nop nop nop nop O + 122 nop nop nop nop nop nop nop nop O + 123 nop nop nop nop nop nop nop nop O + 124 nop nop nop nop nop nop nop nop O + 125 nop nop nop nop nop nop nop nop O + 126 nop nop nop nop nop nop nop nop O + 127 nop nop nop nop nop nop nop nop O + diff --git a/share/vt/keymaps/kz.io.kbd b/share/vt/keymaps/kz.io.kbd new file mode 100644 index 0000000..1f280d3 --- /dev/null +++ b/share/vt/keymaps/kz.io.kbd @@ -0,0 +1,244 @@ +# $FreeBSD$ +# KST KazSSR 903-90 with CYRILLIC LETTER IO +# Birsh T <birsh@mail.kz>, 2003-12-02 +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc nop nop 0x04e3 0x04e3 debug nop O + 002 '1' '!' nop nop 0x04b1 0x040e nop nop O + 003 '2' '@' nul nul 0x0406 0x0410 0x0496 0x0496 O + 004 '3' '#' nop nop 0x0456 0x0408 nop nop O + 005 '4' '$' nop nop 0x0499 0x04e8 nop nop O + 006 '5' '%' nop nop 0x04e9 0x0498 nop nop O + 007 '6' '^' rs rs 0xb6 0x042e 0x04bb 0x04bb O + 008 '7' '&' nop nop 0xb7 0x04b0 nop nop O + 009 '8' '*' nop nop 0x0451 0x04d8 nop nop O + 010 '9' '(' nop nop 0x2116 0x0401 nop nop O + 011 '0' ')' nop nop 0xb0 0xa9 nop nop O + 012 '-' '_' us us 0x04ef 0x042f 0x04b9 0x04b9 O + 013 '=' '+' nop nop 0x04aa 0xab nop nop O + 014 bs bs del del 0x04b2 0x04b2 0x044f 0x044f O + 015 ht btab nop nop 0x04af btab nop nop O + 016 'q' 'Q' dc1 dc1 0x0441 0x0421 0x2018 0x2018 C + 017 'w' 'W' etb etb 0x0447 0x0427 0x2014 0x2014 C + 018 'e' 'E' enq enq 0x0435 0x0415 0x2026 0x2026 C + 019 'r' 'R' dc2 dc2 0x0442 0x0422 0x2019 0x2019 C + 020 't' 'T' dc4 dc4 0x0444 0x0424 0x201d 0x201d C + 021 'y' 'Y' em em 0x0449 0x0429 0x04b7 0x04b7 C + 022 'u' 'U' nak nak 0x0445 0x0425 0x2022 0x2022 C + 023 'i' 'I' ht ht 0x0439 0x0419 0x04af 0x04af C + 024 'o' 'O' si si 0x043f 0x041f 0x04b8 0x04b8 C + 025 'p' 'P' dle dle 0x0440 0x0420 0x0497 0x0497 C + 026 '[' '{' esc esc 0x042b 0x044b 0x04e3 0x04e3 O + 027 ']' '}' gs gs 0x042d 0x044d 0x049b 0x049b O + 028 cr cr nl nl 0x049a 0x049a 0x04a0 0x04a0 O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 0x0431 0x0411 0x0492 0x0492 C + 031 's' 'S' dc3 dc3 0x0443 0x0423 0x201c 0x201c C + 032 'd' 'D' eot eot 0x0434 0x0414 0x201e 0x201e C + 033 'f' 'F' ack ack 0x0436 0x0416 0x04b6 0x04b6 C + 034 'g' 'G' bel bel 0x0437 0x0417 0x04ae 0x04ae C + 035 'h' 'H' bs bs 0x0438 0x0418 0x04b2 0x04b2 C + 036 'j' 'J' nl nl 0x043a 0x041a 0x04a0 0x04a0 C + 037 'k' 'K' vt vt 0x043b 0x041b 0x04e2 0x04e2 C + 038 'l' 'L' ff ff 0x043c 0x041c 0x04a2 0x04a2 C + 039 ';' ':' nop nop 0xbb 0x04d9 nop nop O + 040 ''' '"' nop nop 0xa7 0x045e nop nop O + 041 '`' '~' nop nop 0x0430 0x044e nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '\' '|' fs fs 0x042c 0x044c 0x04a3 0x04a3 O + 044 'z' 'Z' sub sub 0x044a 0x042a 0x04a1 0x04a1 C + 045 'x' 'X' can can 0x0448 0x0428 0x04b3 0x04b3 C + 046 'c' 'C' etx etx 0x0433 0x0413 0x0493 0x0493 C + 047 'v' 'V' syn syn 0x0446 0x0426 0x2013 0x2013 C + 048 'b' 'B' stx stx 0x0432 0x0412 0x04ee 0x04ee C + 049 'n' 'N' so so 0x043e 0x041e 0x04ba 0x04ba C + 050 'm' 'M' cr cr 0x043d 0x041d 0x049a 0x049a C + 051 ',' '<' nop nop 0xac 0x0458 nop nop O + 052 '.' '>' nop nop 0xae 0x04ab nop nop O + 053 '/' '?' nop nop 0x049c 0x049d nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' nl nl 0x04d8 0x04d8 0x04a0 0x04a0 O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' 0xa0 0xa0 susp 0xa0 O + 058 alock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' 0xb7 0xb7 0xb7 0xb7 N + 072 fkey50 '8' '8' '8' 0x0451 0x0451 0x0451 0x0451 N + 073 fkey51 '9' '9' '9' 0x2116 0x2116 0x2116 0x2116 N + 074 fkey52 '-' '-' '-' 0x04ef 0x04ef 0x04ef 0x04ef N + 075 fkey53 '4' '4' '4' 0x0499 0x0499 0x0499 0x0499 N + 076 fkey54 '5' '5' '5' 0x04e9 0x04e9 0x04e9 0x04e9 N + 077 fkey55 '6' '6' '6' 0xb6 0xb6 0xb6 0xb6 N + 078 fkey56 '+' '+' '+' 0xab 0xab 0xab 0xab N + 079 fkey57 '1' '1' '1' 0x04b1 0x04b1 0x04b1 0x04b1 N + 080 fkey58 '2' '2' '2' 0x0406 0x0406 0x0406 0x0406 N + 081 fkey59 '3' '3' '3' 0x0456 0x0456 0x0456 0x0456 N + 082 fkey60 '0' '0' '0' 0xb0 0xb0 0xb0 0xb0 N + 083 del '.' '.' '.' 0xae 0xae boot boot N + 084 alock alock alock alock alock alock alock alock O + 085 nop nop nop nop nop nop nop nop O + 086 nop nop nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl 0x049a 0x049a 0x04a0 0x04a0 O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' nop nop 0x049c 0x049c nop nop O + 092 nscr nscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + 109 nop nop nop nop nop nop nop nop O + 110 nop nop nop nop nop nop nop nop O + 111 nop nop nop nop nop nop nop nop O + 112 nop nop nop nop nop nop nop nop O + 113 nop nop nop nop nop nop nop nop O + 114 nop nop nop nop nop nop nop nop O + 115 nop nop nop nop nop nop nop nop O + 116 nop nop nop nop nop nop nop nop O + 117 nop nop nop nop nop nop nop nop O + 118 nop nop nop nop nop nop nop nop O + 119 nop nop nop nop nop nop nop nop O + 120 nop nop nop nop nop nop nop nop O + 121 nop nop nop nop nop nop nop nop O + 122 nop nop nop nop nop nop nop nop O + 123 nop nop nop nop nop nop nop nop O + 124 nop nop nop nop nop nop nop nop O + 125 nop nop nop nop nop nop nop nop O + 126 nop nop nop nop nop nop nop nop O + 127 nop nop nop nop nop nop nop nop O + 128 nop nop nop nop nop nop nop nop O + 129 esc esc nop nop 0x04e3 0x04e3 debug nop O + 130 '"' '!' nop nop 0x04b1 0x040e nop nop O + 131 0x04d9 0x04d8 nul nul 0x0406 0x0410 0x0496 0x0496 C + 132 0x0456 0x0406 nop nop 0x0456 0x0408 nop nop C + 133 0x04a3 0x04a2 nop nop 0x0499 0x04e8 nop nop C + 134 0x0493 0x0492 nop nop 0x04e9 0x0498 nop nop C + 135 ',' ';' rs rs 0xb6 0x042e 0x04bb 0x04bb O + 136 '.' ':' nop nop 0xb7 0x04b0 nop nop O + 137 0x04af 0x04ae nop nop 0x0451 0x04d8 nop nop C + 138 0x04b1 0x04b0 nop nop 0x2116 0x0401 nop nop C + 139 0x049b 0x049a nop nop 0xb0 0xa9 nop nop C + 140 0x04e9 0x04e8 us us 0x04ef 0x042f 0x04b9 0x04b9 C + 141 0x04bb 0x04ba nop nop 0x04aa 0xab nop nop C + 142 bs bs del del 0x04b2 0x04b2 0x044f 0x044f O + 143 ht btab nop nop 0x04af btab nop nop O + 144 0x0439 0x0419 dc1 dc1 0x0441 0x0421 0x2018 0x2018 C + 145 0x0446 0x0426 etb etb 0x0447 0x0427 0x2014 0x2014 C + 146 0x0443 0x0423 enq enq 0x0435 0x0415 0x2026 0x2026 C + 147 0x043a 0x041a dc2 dc2 0x0442 0x0422 0x2019 0x2019 C + 148 0x0435 0x0415 dc4 dc4 0x0444 0x0424 0x201d 0x201d C + 149 0x043d 0x041d em em 0x0449 0x0429 0x04b7 0x04b7 C + 150 0x0433 0x0413 nak nak 0x0445 0x0425 0x2022 0x2022 C + 151 0x0448 0x0428 ht ht 0x0439 0x0419 0x04af 0x04af C + 152 0x0449 0x0429 si si 0x043f 0x041f 0x04b8 0x04b8 C + 153 0x0437 0x0417 dle dle 0x0440 0x0420 0x0497 0x0497 C + 154 0x0445 0x0425 esc esc 0x042b 0x044b 0x04e3 0x04e3 C + 155 0x044a 0x042a gs gs 0x042d 0x044d 0x049b 0x049b C + 156 cr cr nl nl 0x049a 0x049a 0x04a0 0x04a0 O + 157 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 158 0x0444 0x0424 soh soh 0x0431 0x0411 0x0492 0x0492 C + 159 0x044b 0x042b dc3 dc3 0x0443 0x0423 0x201c 0x201c C + 160 0x0432 0x0412 eot eot 0x0434 0x0414 0x201e 0x201e C + 161 0x0430 0x0410 ack ack 0x0436 0x0416 0x04b6 0x04b6 C + 162 0x043f 0x041f bel bel 0x0437 0x0417 0x04ae 0x04ae C + 163 0x0440 0x0420 bs bs 0x0438 0x0418 0x04b2 0x04b2 C + 164 0x043e 0x041e nl nl 0x043a 0x041a 0x04a0 0x04a0 C + 165 0x043b 0x041b vt vt 0x043b 0x041b 0x04e2 0x04e2 C + 166 0x0434 0x0414 ff ff 0x043c 0x041c 0x04a2 0x04a2 C + 167 0x0436 0x0416 nop nop 0xbb 0x04d9 nop nop C + 168 0x044d 0x042d nop nop 0xa7 0x045e nop nop C + 169 '(' ')' nop nop 0x0430 0x044e nop nop O + 170 lshift lshift lshift lshift lshift lshift lshift lshift O + 171 0x0451 0x0401 fs fs 0x042c 0x044c 0x04a3 0x04a3 C + 172 0x044f 0x042f sub sub 0x044a 0x042a 0x04a1 0x04a1 C + 173 0x0447 0x0427 can can 0x0448 0x0428 0x04b3 0x04b3 C + 174 0x0441 0x0421 etx etx 0x0433 0x0413 0x0493 0x0493 C + 175 0x043c 0x041c syn syn 0x0446 0x0426 0x2013 0x2013 C + 176 0x0438 0x0418 stx stx 0x0432 0x0412 0x04ee 0x04ee C + 177 0x0442 0x0422 so so 0x043e 0x041e 0x04ba 0x04ba C + 178 0x044c 0x042c cr cr 0x043d 0x041d 0x049a 0x049a C + 179 0x0431 0x0411 nop nop 0xac 0x0458 nop nop C + 180 0x044e 0x042e nop nop 0xae 0x04ab nop nop C + 181 0x2116 '?' nop nop 0x049c 0x049d nop nop O + 182 rshift rshift rshift rshift rshift rshift rshift rshift O + 183 '*' '*' nl nl 0x04d8 0x04d8 0x04a0 0x04a0 O + 184 lalt lalt lalt lalt lalt lalt lalt lalt O + 185 ' ' ' ' nul ' ' 0xa0 0xa0 0xa0 0xa0 O + 186 alock clock clock clock clock clock clock clock O + 187 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 188 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 189 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 190 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 191 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 192 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 193 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 194 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 195 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 196 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 197 nlock nlock nlock nlock nlock nlock nlock nlock O + 198 slock slock slock slock slock slock slock slock O + 199 fkey49 '7' '7' '7' 0xb7 0xb7 0xb7 0xb7 N + 200 fkey50 '8' '8' '8' 0x0451 0x0451 0x0451 0x0451 N + 201 fkey51 '9' '9' '9' 0x2116 0x2116 0x2116 0x2116 N + 202 fkey52 '-' '-' '-' 0x04ef 0x04ef 0x04ef 0x04ef N + 203 fkey53 '4' '4' '4' 0x0499 0x0499 0x0499 0x0499 N + 204 fkey54 '5' '5' '5' 0x04e9 0x04e9 0x04e9 0x04e9 N + 205 fkey55 '6' '6' '6' 0xb6 0xb6 0xb6 0xb6 N + 206 fkey56 '+' '+' '+' 0xab 0xab 0xab 0xab N + 207 fkey57 '1' '1' '1' 0x04b1 0x04b1 0x04b1 0x04b1 N + 208 fkey58 '2' '2' '2' 0x0406 0x0406 0x0406 0x0406 N + 209 fkey59 '3' '3' '3' 0x0456 0x0456 0x0456 0x0456 N + 210 fkey60 '0' '0' '0' 0xb0 0xb0 0xb0 0xb0 N + 211 del '.' '.' '.' 0xae 0xae boot boot N + 212 alock alock alock alock alock alock alock alock O + 213 nop nop nop nop nop nop nop nop O + 214 nop nop nop nop nop nop nop nop O + 215 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 216 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 217 cr cr nl nl 0x049a 0x049a 0x04a0 0x04a0 O + 218 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 219 '/' '/' nop nop 0x049c 0x049c nop nop O + 220 nscr nscr debug debug nop nop nop nop O + 221 ralt ralt ralt ralt ralt ralt ralt ralt O + 222 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 223 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 224 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 225 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 226 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 227 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 228 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 229 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 230 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 231 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 232 slock saver slock saver susp nop susp nop O + 233 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 234 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 235 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 236 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/kz.kst.kbd b/share/vt/keymaps/kz.kst.kbd new file mode 100644 index 0000000..d9d1f27 --- /dev/null +++ b/share/vt/keymaps/kz.kst.kbd @@ -0,0 +1,245 @@ +# $FreeBSD$ +# +# KST KazSSR 903-90 keyboard implementation +# Birsh T <birsh@mail.kz>, 2003-12-02 +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc nop nop 0x04e3 0x04e3 debug nop O + 002 '1' '!' nop nop 0x04b1 0x040e nop nop O + 003 '2' '@' nul nul 0x0406 0x0410 0x0496 0x0496 O + 004 '3' '#' nop nop 0x0456 0x0408 nop nop O + 005 '4' '$' nop nop 0x0499 0x04e8 nop nop O + 006 '5' '%' nop nop 0x04e9 0x0498 nop nop O + 007 '6' '^' rs rs 0xb6 0x042e 0x04bb 0x04bb O + 008 '7' '&' nop nop 0xb7 0x04b0 nop nop O + 009 '8' '*' nop nop 0x0451 0x04d8 nop nop O + 010 '9' '(' nop nop 0x2116 0x0401 nop nop O + 011 '0' ')' nop nop 0xb0 0xa9 nop nop O + 012 '-' '_' us us 0x04ef 0x042f 0x04b9 0x04b9 O + 013 '=' '+' nop nop 0x04aa 0xab nop nop O + 014 bs bs del del 0x04b2 0x04b2 0x044f 0x044f O + 015 ht btab nop nop 0x04af btab nop nop O + 016 'q' 'Q' dc1 dc1 0x0441 0x0421 0x2018 0x2018 C + 017 'w' 'W' etb etb 0x0447 0x0427 0x2014 0x2014 C + 018 'e' 'E' enq enq 0x0435 0x0415 0x2026 0x2026 C + 019 'r' 'R' dc2 dc2 0x0442 0x0422 0x2019 0x2019 C + 020 't' 'T' dc4 dc4 0x0444 0x0424 0x201d 0x201d C + 021 'y' 'Y' em em 0x0449 0x0429 0x04b7 0x04b7 C + 022 'u' 'U' nak nak 0x0445 0x0425 0x2022 0x2022 C + 023 'i' 'I' ht ht 0x0439 0x0419 0x04af 0x04af C + 024 'o' 'O' si si 0x043f 0x041f 0x04b8 0x04b8 C + 025 'p' 'P' dle dle 0x0440 0x0420 0x0497 0x0497 C + 026 '[' '{' esc esc 0x042b 0x044b 0x04e3 0x04e3 O + 027 ']' '}' gs gs 0x042d 0x044d 0x049b 0x049b O + 028 cr cr nl nl 0x049a 0x049a 0x04a0 0x04a0 O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 0x0431 0x0411 0x0492 0x0492 C + 031 's' 'S' dc3 dc3 0x0443 0x0423 0x201c 0x201c C + 032 'd' 'D' eot eot 0x0434 0x0414 0x201e 0x201e C + 033 'f' 'F' ack ack 0x0436 0x0416 0x04b6 0x04b6 C + 034 'g' 'G' bel bel 0x0437 0x0417 0x04ae 0x04ae C + 035 'h' 'H' bs bs 0x0438 0x0418 0x04b2 0x04b2 C + 036 'j' 'J' nl nl 0x043a 0x041a 0x04a0 0x04a0 C + 037 'k' 'K' vt vt 0x043b 0x041b 0x04e2 0x04e2 C + 038 'l' 'L' ff ff 0x043c 0x041c 0x04a2 0x04a2 C + 039 ';' ':' nop nop 0xbb 0x04d9 nop nop O + 040 ''' '"' nop nop 0xa7 0x045e nop nop O + 041 '`' '~' nop nop 0x0430 0x044e nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '\' '|' fs fs 0x042c 0x044c 0x04a3 0x04a3 O + 044 'z' 'Z' sub sub 0x044a 0x042a 0x04a1 0x04a1 C + 045 'x' 'X' can can 0x0448 0x0428 0x04b3 0x04b3 C + 046 'c' 'C' etx etx 0x0433 0x0413 0x0493 0x0493 C + 047 'v' 'V' syn syn 0x0446 0x0426 0x2013 0x2013 C + 048 'b' 'B' stx stx 0x0432 0x0412 0x04ee 0x04ee C + 049 'n' 'N' so so 0x043e 0x041e 0x04ba 0x04ba C + 050 'm' 'M' cr cr 0x043d 0x041d 0x049a 0x049a C + 051 ',' '<' nop nop 0xac 0x0458 nop nop O + 052 '.' '>' nop nop 0xae 0x04ab nop nop O + 053 '/' '?' nop nop 0x049c 0x049d nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' nl nl 0x04d8 0x04d8 0x04a0 0x04a0 O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' 0xa0 0xa0 susp 0xa0 O + 058 alock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' 0xb7 0xb7 0xb7 0xb7 N + 072 fkey50 '8' '8' '8' 0x0451 0x0451 0x0451 0x0451 N + 073 fkey51 '9' '9' '9' 0x2116 0x2116 0x2116 0x2116 N + 074 fkey52 '-' '-' '-' 0x04ef 0x04ef 0x04ef 0x04ef N + 075 fkey53 '4' '4' '4' 0x0499 0x0499 0x0499 0x0499 N + 076 fkey54 '5' '5' '5' 0x04e9 0x04e9 0x04e9 0x04e9 N + 077 fkey55 '6' '6' '6' 0xb6 0xb6 0xb6 0xb6 N + 078 fkey56 '+' '+' '+' 0xab 0xab 0xab 0xab N + 079 fkey57 '1' '1' '1' 0x04b1 0x04b1 0x04b1 0x04b1 N + 080 fkey58 '2' '2' '2' 0x0406 0x0406 0x0406 0x0406 N + 081 fkey59 '3' '3' '3' 0x0456 0x0456 0x0456 0x0456 N + 082 fkey60 '0' '0' '0' 0xb0 0xb0 0xb0 0xb0 N + 083 del '.' '.' '.' 0xae 0xae boot boot N + 084 alock alock alock alock alock alock alock alock O + 085 nop nop nop nop nop nop nop nop O + 086 nop nop nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl 0x049a 0x049a 0x04a0 0x04a0 O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' nop nop 0x049c 0x049c nop nop O + 092 nscr nscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + 109 nop nop nop nop nop nop nop nop O + 110 nop nop nop nop nop nop nop nop O + 111 nop nop nop nop nop nop nop nop O + 112 nop nop nop nop nop nop nop nop O + 113 nop nop nop nop nop nop nop nop O + 114 nop nop nop nop nop nop nop nop O + 115 nop nop nop nop nop nop nop nop O + 116 nop nop nop nop nop nop nop nop O + 117 nop nop nop nop nop nop nop nop O + 118 nop nop nop nop nop nop nop nop O + 119 nop nop nop nop nop nop nop nop O + 120 nop nop nop nop nop nop nop nop O + 121 nop nop nop nop nop nop nop nop O + 122 nop nop nop nop nop nop nop nop O + 123 nop nop nop nop nop nop nop nop O + 124 nop nop nop nop nop nop nop nop O + 125 nop nop nop nop nop nop nop nop O + 126 nop nop nop nop nop nop nop nop O + 127 nop nop nop nop nop nop nop nop O + 128 nop nop nop nop nop nop nop nop O + 129 esc esc nop nop 0x04e3 0x04e3 debug nop O + 130 '"' '!' nop nop 0x04b1 0x040e nop nop O + 131 0x04d9 0x04d8 nul nul 0x0406 0x0410 0x0496 0x0496 C + 132 0x0456 0x0406 nop nop 0x0456 0x0408 nop nop C + 133 0x04a3 0x04a2 nop nop 0x0499 0x04e8 nop nop C + 134 0x0493 0x0492 nop nop 0x04e9 0x0498 nop nop C + 135 ',' ';' rs rs 0xb6 0x042e 0x04bb 0x04bb O + 136 '.' ':' nop nop 0xb7 0x04b0 nop nop O + 137 0x04af 0x04ae nop nop 0x0451 0x04d8 nop nop C + 138 0x04b1 0x04b0 nop nop 0x2116 0x0401 nop nop C + 139 0x049b 0x049a nop nop 0xb0 0xa9 nop nop C + 140 0x04e9 0x04e8 us us 0x04ef 0x042f 0x04b9 0x04b9 C + 141 0x04bb 0x04ba nop nop 0x04aa 0xab nop nop C + 142 bs bs del del 0x04b2 0x04b2 0x044f 0x044f O + 143 ht btab nop nop 0x04af btab nop nop O + 144 0x0439 0x0419 dc1 dc1 0x0441 0x0421 0x2018 0x2018 C + 145 0x0446 0x0426 etb etb 0x0447 0x0427 0x2014 0x2014 C + 146 0x0443 0x0423 enq enq 0x0435 0x0415 0x2026 0x2026 C + 147 0x043a 0x041a dc2 dc2 0x0442 0x0422 0x2019 0x2019 C + 148 0x0435 0x0415 dc4 dc4 0x0444 0x0424 0x201d 0x201d C + 149 0x043d 0x041d em em 0x0449 0x0429 0x04b7 0x04b7 C + 150 0x0433 0x0413 nak nak 0x0445 0x0425 0x2022 0x2022 C + 151 0x0448 0x0428 ht ht 0x0439 0x0419 0x04af 0x04af C + 152 0x0449 0x0429 si si 0x043f 0x041f 0x04b8 0x04b8 C + 153 0x0437 0x0417 dle dle 0x0440 0x0420 0x0497 0x0497 C + 154 0x0445 0x0425 esc esc 0x042b 0x044b 0x04e3 0x04e3 C + 155 0x044a 0x042a gs gs 0x042d 0x044d 0x049b 0x049b C + 156 cr cr nl nl 0x049a 0x049a 0x04a0 0x04a0 O + 157 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 158 0x0444 0x0424 soh soh 0x0431 0x0411 0x0492 0x0492 C + 159 0x044b 0x042b dc3 dc3 0x0443 0x0423 0x201c 0x201c C + 160 0x0432 0x0412 eot eot 0x0434 0x0414 0x201e 0x201e C + 161 0x0430 0x0410 ack ack 0x0436 0x0416 0x04b6 0x04b6 C + 162 0x043f 0x041f bel bel 0x0437 0x0417 0x04ae 0x04ae C + 163 0x0440 0x0420 bs bs 0x0438 0x0418 0x04b2 0x04b2 C + 164 0x043e 0x041e nl nl 0x043a 0x041a 0x04a0 0x04a0 C + 165 0x043b 0x041b vt vt 0x043b 0x041b 0x04e2 0x04e2 C + 166 0x0434 0x0414 ff ff 0x043c 0x041c 0x04a2 0x04a2 C + 167 0x0436 0x0416 nop nop 0xbb 0x04d9 nop nop C + 168 0x044d 0x042d nop nop 0xa7 0x045e nop nop C + 169 '(' ')' nop nop 0x0430 0x044e nop nop O + 170 lshift lshift lshift lshift lshift lshift lshift lshift O + 171 '\' '|' fs fs 0x042c 0x044c 0x04a3 0x04a3 O + 172 0x044f 0x042f sub sub 0x044a 0x042a 0x04a1 0x04a1 C + 173 0x0447 0x0427 can can 0x0448 0x0428 0x04b3 0x04b3 C + 174 0x0441 0x0421 etx etx 0x0433 0x0413 0x0493 0x0493 C + 175 0x043c 0x041c syn syn 0x0446 0x0426 0x2013 0x2013 C + 176 0x0438 0x0418 stx stx 0x0432 0x0412 0x04ee 0x04ee C + 177 0x0442 0x0422 so so 0x043e 0x041e 0x04ba 0x04ba C + 178 0x044c 0x042c cr cr 0x043d 0x041d 0x049a 0x049a C + 179 0x0431 0x0411 nop nop 0xac 0x0458 nop nop C + 180 0x044e 0x042e nop nop 0xae 0x04ab nop nop C + 181 0x2116 '?' nop nop 0x049c 0x049d nop nop O + 182 rshift rshift rshift rshift rshift rshift rshift rshift O + 183 '*' '*' nl nl 0x04d8 0x04d8 0x04a0 0x04a0 O + 184 lalt lalt lalt lalt lalt lalt lalt lalt O + 185 ' ' ' ' nul ' ' 0xa0 0xa0 0xa0 0xa0 O + 186 alock clock clock clock clock clock clock clock O + 187 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 188 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 189 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 190 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 191 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 192 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 193 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 194 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 195 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 196 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 197 nlock nlock nlock nlock nlock nlock nlock nlock O + 198 slock slock slock slock slock slock slock slock O + 199 fkey49 '7' '7' '7' 0xb7 0xb7 0xb7 0xb7 N + 200 fkey50 '8' '8' '8' 0x0451 0x0451 0x0451 0x0451 N + 201 fkey51 '9' '9' '9' 0x2116 0x2116 0x2116 0x2116 N + 202 fkey52 '-' '-' '-' 0x04ef 0x04ef 0x04ef 0x04ef N + 203 fkey53 '4' '4' '4' 0x0499 0x0499 0x0499 0x0499 N + 204 fkey54 '5' '5' '5' 0x04e9 0x04e9 0x04e9 0x04e9 N + 205 fkey55 '6' '6' '6' 0xb6 0xb6 0xb6 0xb6 N + 206 fkey56 '+' '+' '+' 0xab 0xab 0xab 0xab N + 207 fkey57 '1' '1' '1' 0x04b1 0x04b1 0x04b1 0x04b1 N + 208 fkey58 '2' '2' '2' 0x0406 0x0406 0x0406 0x0406 N + 209 fkey59 '3' '3' '3' 0x0456 0x0456 0x0456 0x0456 N + 210 fkey60 '0' '0' '0' 0xb0 0xb0 0xb0 0xb0 N + 211 del '.' '.' '.' 0xae 0xae boot boot N + 212 alock alock alock alock alock alock alock alock O + 213 nop nop nop nop nop nop nop nop O + 214 nop nop nop nop nop nop nop nop O + 215 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 216 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 217 cr cr nl nl 0x049a 0x049a 0x04a0 0x04a0 O + 218 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 219 '/' '/' nop nop 0x049c 0x049c nop nop O + 220 nscr nscr debug debug nop nop nop nop O + 221 ralt ralt ralt ralt ralt ralt ralt ralt O + 222 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 223 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 224 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 225 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 226 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 227 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 228 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 229 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 230 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 231 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 232 slock saver slock saver susp nop susp nop O + 233 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 234 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 235 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 236 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/latinamerican.acc.kbd b/share/vt/keymaps/latinamerican.acc.kbd new file mode 100644 index 0000000..a25507b --- /dev/null +++ b/share/vt/keymaps/latinamerican.acc.kbd @@ -0,0 +1,137 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '1' '!' nop nop O + 003 '2' '"' nul nul '2' '"' nul nul O + 004 '3' '#' nop nop '3' '#' nop nop O + 005 '4' '$' nop nop '4' '$' nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '&' nop nop '6' '&' nop nop O + 008 '7' '/' nop nop '7' '/' nop nop O + 009 '8' '(' nop nop '8' '(' nop nop O + 010 '9' ')' nop nop '9' ')' nop nop O + 011 '0' '=' nop nop '0' '=' nop nop O + 012 ''' '?' nop nop '\' '\' nop nop O + 013 0xbf 0xa1 nop nop 0xbf 0xa1 nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 '@' '@' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 'e' 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' sub sub C + 022 'u' 'U' nak nak 0x97 0x81 nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 dacu duml esc esc ''' 0xa8 esc esc O + 027 '+' '*' gs gs '~' '~' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 0xf1 0xd1 nop nop 0xf1 0xd1 nop nop C + 040 '{' '[' nop nop dcir '^' nop nop O + 041 '|' 0xba fs fs 0xac 0xac fs fs O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '}' ']' fs fs dgra '`' fs fs O + 044 'z' 'Z' sub sub 'z' 'Z' em em C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' ';' nop nop ',' ';' nop nop O + 052 '.' ':' nop nop '.' ':' nop nop O + 053 '-' '_' us us '-' '_' us us O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' fs fs '\' '>' fs fs O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 scr03 scr03 scr03 scr03 scr03 scr03 scr03 scr03 N + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + + dgra '`' ( 'a' 0xe0 ) ( 'A' 0xc0 ) ( 'e' 0xe8 ) ( 'E' 0xc8 ) + ( 'i' 0xec ) ( 'I' 0xcc ) ( 'o' 0xf2 ) ( 'O' 0xd2 ) + ( 'u' 0xf9 ) ( 'U' 0xd9 ) + + dacu 0xb4 ( 'a' 0xe1 ) ( 'A' 0xc1 ) ( 'e' 0xe9 ) ( 'E' 0xc9 ) + ( 'i' 0xed ) ( 'I' 0xcd ) ( 'o' 0xf3 ) ( 'O' 0xd3 ) + ( 'u' 0xfa ) ( 'U' 0xda ) ( 'y' 0xfd ) ( 'Y' 0xdd ) + + dcir '^' ( 'a' 0xe2 ) ( 'A' 0xc2 ) ( 'e' 0xea ) ( 'E' 0xca ) + ( 'i' 0xee ) ( 'I' 0xce ) ( 'o' 0xf4 ) ( 'O' 0xd4 ) + ( 'u' 0xfb ) ( 'U' 0xdb ) + + dtil '~' ( 'a' 0xe3 ) ( 'A' 0xc3 ) ( 'n' 0xf1 ) ( 'N' 0xd1 ) + ( 'o' 0xf5 ) ( 'O' 0xd5 ) + + duml 0xa8 ( 'a' 0xe4 ) ( 'A' 0xc4 ) ( 'e' 0xeb ) ( 'E' 0xcb ) + ( 'i' 0xef ) ( 'I' 0xcf ) ( 'o' 0xf6 ) ( 'O' 0xd6 ) + ( 'u' 0xfc ) ( 'U' 0xdc ) ( 'y' 0xff ) + + drin 0xb0 ( 'a' 0xe5 ) ( 'A' 0xc5 ) + + dced 0xb8 ( 'c' 0xe7 ) ( 'C' 0xc7 ) diff --git a/share/vt/keymaps/latinamerican.kbd b/share/vt/keymaps/latinamerican.kbd new file mode 100644 index 0000000..7eb38a6 --- /dev/null +++ b/share/vt/keymaps/latinamerican.kbd @@ -0,0 +1,114 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '1' '!' nop nop O + 003 '2' '"' nul nul '2' '"' nul nul O + 004 '3' '#' nop nop '3' '#' nop nop O + 005 '4' '$' nop nop '4' '$' nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '&' rs rs '6' '&' rs rs O + 008 '7' '/' esc esc '7' '/' esc esc O + 009 '8' '(' nop nop '8' '(' nop nop O + 010 '9' ')' gs gs '8' '(' gs gs O + 011 '0' '=' nop nop '9' ')' nop nop O + 012 ''' '?' nop nop '\' '\' nop nop O + 013 0xa8 0xad nop nop 0xa8 0xad nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 '@' '@' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 'e' 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' sub sub C + 022 'u' 'U' nak nak 0x97 0x81 nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 ''' '|' esc esc ''' '|' esc esc C + 027 '+' '*' gs gs '~' '~' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 0xa4 0xa5 nop nop 0xa4 0xa5 nop nop C + 040 '{' '[' nop nop '^' '^' nop nop O + 041 '|' 0xf8 fs fs 0xbf 0xbf fs fs O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '}' ']' fs fs '`' '`' fs fs O + 044 'z' 'Z' sub sub 'z' 'Z' em em C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' ';' nop nop ',' ';' nop nop O + 052 '.' ':' nop nop '.' ':' nop nop O + 053 '-' '_' us us '-' '_' us us O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' fs fs '\' '>' fs fs O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 scr03 scr03 scr03 scr03 scr03 scr03 scr03 scr03 N + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/lt.kbd b/share/vt/keymaps/lt.kbd new file mode 100644 index 0000000..0f7ac09 --- /dev/null +++ b/share/vt/keymaps/lt.kbd @@ -0,0 +1,242 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc nop nop esc esc debug nop O + 002 '1' '!' nop nop 0x0105 0x0104 nop nop O + 003 '2' '@' nul nul 0x010d 0x010c nul nul O + 004 '3' '#' nop nop 0x0119 0x0118 nop nop O + 005 '4' '$' nop nop 0x0117 0x0116 nop nop O + 006 '5' '%' nop nop 0x012f 0x012e nop nop O + 007 '6' '^' rs rs 0x0161 0x0160 rs rs O + 008 '7' '&' nop nop 0x0173 0x0172 nop nop O + 009 '8' '*' nop nop 0x016b 0x0172 nop nop O + 010 '9' '(' nop nop '9' '(' nop nop O + 011 '0' ')' nop nop '0' ')' nop nop O + 012 '-' '_' ns ns '-' '_' ns ns O + 013 '=' '+' nop nop 0x017e 0x017d nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 'e' 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 '[' '{' esc esc '[' '{' esc esc O + 027 ']' '}' gs gs ']' '}' gs gs O + 028 cr alock nl nl alock cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 ';' ':' nop nop ';' ':' nop nop O + 040 ''' '"' nop nop ''' '"' nop nop O + 041 '`' '~' nop nop '`' '~' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '\' '|' fs fs '\' '|' fs fs O + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' '<' nop nop ',' '<' nop nop O + 052 '.' '>' nop nop '.' '>' nop nop O + 053 '/' '?' nop nop '/' '?' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' nscr nscr '*' '*' nscr nscr O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' ',' ',' del ',' boot boot N + 084 ns ns ns ns ns ns ns ns O + 085 nop nop nop nop nop nop nop nop O + 086 ralt ralt ralt ralt ralt ralt ralt ralt O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug nop nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock slock slock slock slock slock slock slock O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + 109 nop nop nop nop nop nop nop nop O + 110 nop nop nop nop nop nop nop nop O + 111 nop nop nop nop nop nop nop nop O + 112 nop nop nop nop nop nop nop nop O + 113 nop nop nop nop nop nop nop nop O + 114 nop nop nop nop nop nop nop nop O + 115 nop nop nop nop nop nop nop nop O + 116 nop nop nop nop nop nop nop nop O + 117 nop nop nop nop nop nop nop nop O + 118 nop nop nop nop nop nop nop nop O + 119 nop nop nop nop nop nop nop nop O + 120 nop nop nop nop nop nop nop nop O + 121 nop nop nop nop nop nop nop nop O + 122 nop nop nop nop nop nop nop nop O + 123 nop nop nop nop nop nop nop nop O + 124 nop nop nop nop nop nop nop nop O + 125 nop nop nop nop nop nop nop nop O + 126 nop nop nop nop nop nop nop nop O + 127 nop nop nop nop nop nop nop nop O + 128 nop nop nop nop nop nop nop nop O + 129 esc esc nop nop esc esc debug nop O + 130 0x0105 0x0104 nop nop '1' '!' nop nop C + 131 0x010d 0x010c nul nul '2' '@' nul nul C + 132 0x0119 0x0118 nop nop '3' '#' nop nop C + 133 0x0117 0x0116 nop nop '4' '$' nop nop C + 134 0x012f 0x012e nop nop '5' '%' nop nop C + 135 0x0161 0x0160 rs rs '6' '^' rs rs C + 136 0x0173 0x0172 nop nop '7' '&' nop nop C + 137 0x016b 0x016a nop nop '8' '*' nop nop C + 138 '9' '(' nop nop '9' '(' nop nop O + 139 '0' ')' nop nop '0' ')' nop nop O + 140 '-' '_' ns ns '-' '_' ns ns O + 141 0x017e 0x017d nop nop '=' '+' nop nop C + 142 bs bs del del bs bs del del O + 143 ht btab nop nop ht btab nop nop O + 144 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 145 'w' 'W' etb etb 'w' 'W' etb etb C + 146 'e' 'E' enq enq 'e' 'E' enq enq C + 147 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 148 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 149 'y' 'Y' em em 'y' 'Y' em em C + 150 'u' 'U' nak nak 'u' 'U' nak nak C + 151 'i' 'I' ht ht 'i' 'I' ht ht C + 152 'o' 'O' si si 'o' 'O' si si C + 153 'p' 'P' dle dle 'p' 'P' dle dle C + 154 '[' '{' esc esc '[' '{' esc esc O + 155 ']' '}' gs gs ']' '}' gs gs O + 156 cr alock nl nl alock cr nl nl O + 157 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 158 'a' 'A' soh soh 'a' 'A' soh soh C + 159 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 160 'd' 'D' eot eot 'd' 'D' eot eot C + 161 'f' 'F' ack ack 'f' 'F' ack ack C + 162 'g' 'G' bel bel 'g' 'G' bel bel C + 163 'h' 'H' bs bs 'h' 'H' bs bs C + 164 'j' 'J' nl nl 'j' 'J' nl nl C + 165 'k' 'K' vt vt 'k' 'K' vt vt C + 166 'l' 'L' ff ff 'l' 'L' ff ff C + 167 ';' ':' nop nop ';' ':' nop nop O + 168 ''' '"' nop nop ''' '"' nop nop O + 169 '`' '~' nop nop '`' '~' nop nop O + 170 lshift lshift lshift lshift lshift lshift lshift lshift O + 171 '\' '|' fs fs '\' '|' fs fs O + 172 'z' 'Z' sub sub 'z' 'Z' sub sub C + 173 'x' 'X' can can 'x' 'X' can can C + 174 'c' 'C' etx etx 'c' 'C' etx etx C + 175 'v' 'V' syn syn 'v' 'V' syn syn C + 176 'b' 'B' stx stx 'b' 'B' stx stx C + 177 'n' 'N' so so 'n' 'N' so so C + 178 'm' 'M' cr cr 'm' 'M' cr cr C + 179 ',' '<' nop nop ',' '<' nop nop O + 180 '.' '>' nop nop '.' '>' nop nop O + 181 '/' '?' nop nop '/' '?' nop nop O + 182 rshift rshift rshift rshift rshift rshift rshift rshift O + 183 '*' '*' nscr nscr '*' '*' nscr nscr O + 184 lalt lalt lalt lalt lalt lalt lalt lalt O + 185 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 186 clock clock clock clock clock clock clock clock O + 187 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 188 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 189 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 190 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 191 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 192 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 193 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 194 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 195 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 196 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 197 nlock nlock nlock nlock nlock nlock nlock nlock O + 198 slock slock slock slock slock slock slock slock O + 199 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 200 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 201 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 202 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 203 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 204 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 205 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 206 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 207 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 208 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 209 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 210 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 211 del ',' '.' '.' del '.' boot boot N + 212 ns ns ns ns ns ns ns ns O + 213 nop nop nop nop nop nop nop nop O + 214 ralt ralt ralt ralt ralt ralt ralt ralt O + 215 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 216 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 217 cr cr nl nl cr cr nl nl O + 218 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 219 '/' '/' '/' '/' '/' '/' '/' '/' N + 220 nscr pscr debug nop nop nop nop nop O + 221 ralt ralt ralt ralt ralt ralt ralt ralt O + 222 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 223 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 224 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 225 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 226 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 227 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 228 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 229 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 230 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 231 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 232 slock slock slock slock slock slock slock slock O + 233 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 234 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 235 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + diff --git a/share/vt/keymaps/nl.kbd b/share/vt/keymaps/nl.kbd new file mode 100644 index 0000000..a4112e9 --- /dev/null +++ b/share/vt/keymaps/nl.kbd @@ -0,0 +1,143 @@ +# $FreeBSD$ +# alt +# Dutch keymap, accent keys +# Created 29.03.2000 by Jeroen v. Yperen <j.vanijperen@student.utwente.nl> +# Collected by Edwin Groothuis <mavetju@chello.nl> +# Based on the US standard keymap +# Accent coding by M. Blapp <mb@imp.ch> +# +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '1' '!' nop nop O + 003 '2' '"' nul nul '2' '"' nul nul O + 004 '3' '#' nop nop '3' '#' nop nop O + 005 '4' '$' nop nop 0xbc '$' nop nop O + 006 '5' '%' nop nop 0xbd '%' nop nop O + 007 '6' '&' rs rs 0xbe '^' rs rs O + 008 '7' '_' nop nop 0xa3 '&' nop nop O + 009 '8' '(' nop nop '{' '*' nop nop O + 010 '9' ')' nop nop '}' '(' nop nop O + 011 '0' ''' nop nop 0xbf ')' nop nop O + 012 '/' '?' us us '\' '?' us us O + 013 drin dtil nop nop dced dtil nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 'e' 'E' enq enq C + 019 'r' 'R' dc2 dc2 0xb6 0xb6 dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 duml dcir esc esc '[' dcir esc esc O + 027 '*' '|' gs gs ']' 0xa6 gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 0xdf 0xdf dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 '+' 0xb1 nop nop '+' 0xb1 nop nop O + 040 dacu dgra nop nop ''' '"' nop nop O + 041 '@' '~' nop nop 0xac '~' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '<' '>' fs fs 0xa6 0xa6 fs fs O + 044 'z' 'Z' sub sub 0xab 0xab sub sub C + 045 'x' 'X' can can 0xbb 0xbb can can C + 046 'c' 'C' etx etx 0xa2 0xa2 etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 0xb5 0xb5 cr cr C + 051 ',' ';' nop nop ',' ';' nop nop O + 052 '.' ':' nop nop 0xb7 ':' nop nop O + 053 '-' '=' nop nop '-' '=' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nop nop ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 ']' '[' nop nop '|' '|' nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr nscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + + dgra '`' ( 'a' 0xe0 ) ( 'A' 0xc0 ) ( 'e' 0xe8 ) ( 'E' 0xc8 ) + ( 'i' 0xec ) ( 'I' 0xcc ) ( 'o' 0xf2 ) ( 'O' 0xd2 ) + ( 'u' 0xf9 ) ( 'U' 0xd9 ) + + dacu 0xb4 ( 'a' 0xe1 ) ( 'A' 0xc1 ) ( 'e' 0xe9 ) ( 'E' 0xc9 ) + ( 'i' 0xed ) ( 'I' 0xcd ) ( 'o' 0xf3 ) ( 'O' 0xd3 ) + ( 'u' 0xfa ) ( 'U' 0xda ) ( 'y' 0xfd ) ( 'Y' 0xdd ) + + dcir '^' ( 'a' 0xe2 ) ( 'A' 0xc2 ) ( 'e' 0xea ) ( 'E' 0xca ) + ( 'i' 0xee ) ( 'I' 0xce ) ( 'o' 0xf4 ) ( 'O' 0xd4 ) + ( 'u' 0xfb ) ( 'U' 0xdb ) + + dtil '~' ( 'a' 0xe3 ) ( 'A' 0xc3 ) ( 'n' 0xf1 ) ( 'N' 0xd1 ) + ( 'o' 0xf5 ) ( 'O' 0xd5 ) + + duml 0xa8 ( 'a' 0xe4 ) ( 'A' 0xc4 ) ( 'e' 0xeb ) ( 'E' 0xcb ) + ( 'i' 0xef ) ( 'I' 0xcf ) ( 'o' 0xf6 ) ( 'O' 0xd6 ) + ( 'u' 0xfc ) ( 'U' 0xdc ) ( 'y' 0xff ) + + drin 0xb0 ( 'a' 0xe5 ) ( 'A' 0xc5 ) + + dced 0xb8 ( 'c' 0xe7 ) ( 'C' 0xc7 ) diff --git a/share/vt/keymaps/no.dvorak.kbd b/share/vt/keymaps/no.dvorak.kbd new file mode 100644 index 0000000..a2a392c --- /dev/null +++ b/share/vt/keymaps/no.dvorak.kbd @@ -0,0 +1,114 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '1' '!' nop nop O + 003 '2' '"' nul nul '@' '@' nul nul O + 004 '3' '#' nop nop 0x9e '#' nop nop O + 005 '4' 0xa4 nop nop '$' 0xa4 nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '&' rs rs '6' '&' nop nop O + 008 '7' '/' nop nop '{' '/' nop nop O + 009 '8' '(' nop nop '[' '(' esc esc O + 010 '9' ')' nop nop ']' ')' gs gs O + 011 '0' '=' nop nop '}' '=' nop nop O + 012 '+' '?' esc esc '[' '?' nop nop O + 013 '\' '`' nop nop ''' nop nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 0xe5 0xc5 nop nop '}' ']' nop nop C + 017 ',' ';' nop nop ',' '<' nop nop O + 018 '.' ':' nop nop '.' '>' nop nop O + 019 'p' 'P' dle dle 'p' 'P' dle dle C + 020 'y' 'Y' em em 'y' 'Y' em em C + 021 'f' 'F' ack ack 'f' 'F' ack ack C + 022 'g' 'G' bel bel 'g' 'G' bel bel C + 023 'c' 'C' etx etx 'c' 'C' etx etx C + 024 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 025 'l' 'L' ff ff 'l' 'L' ff ff C + 026 ''' '*' nop nop ''' 0xd7 nop nop O + 027 0xa8 '^' rs rs 0xac '^' rs rs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 'o' 'O' si si 'o' 'O' si si C + 032 'e' 'E' enq enq 'e' 'E' enq enq C + 033 'u' 'U' nak nak 'u' 'U' nak nak C + 034 'i' 'I' ht ht 'i' 'I' ht ht C + 035 'd' 'D' eot eot 'd' 'D' eot eot C + 036 'h' 'H' bs bs 'h' 'H' bs bs C + 037 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 038 'n' 'N' so so 'n' 'N' so so C + 039 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 040 '-' '_' us us '-' '_' us us O + 041 '|' 0xa7 nop nop 0xa6 0xb6 nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '<' '>' nop nop '|' '\' nop nop C + 044 0xe6 0xc6 nop nop '{' '[' nop nop C + 045 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 046 'j' 'J' nl nl 'j' 'J' nl nl C + 047 'k' 'K' vt vt 'k' 'K' vt vt C + 048 'x' 'X' can can 'x' 'X' can can C + 049 'b' 'B' stx stx 'b' 'B' stx stx C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 'w' 'W' etb etb 'w' 'W' etb etb C + 052 'v' 'V' syn syn 'v' 'V' syn syn C + 053 'z' 'Z' sub sub 'z' 'Z' sub sub C + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 0xf8 0xd8 nop nop '|' '\' nop nop C + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/no.kbd b/share/vt/keymaps/no.kbd new file mode 100644 index 0000000..7105639 --- /dev/null +++ b/share/vt/keymaps/no.kbd @@ -0,0 +1,114 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '1' '!' nop nop O + 003 '2' '"' nul nul '@' '@' nul nul O + 004 '3' '#' nop nop 0x9e '#' nop nop O + 005 '4' 0xa4 nop nop '$' 0xa4 nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '&' nop nop '6' '&' nop nop O + 008 '7' '/' nop nop '{' '/' nop nop O + 009 '8' '(' esc esc '[' '(' esc esc O + 010 '9' ')' gs gs ']' ')' gs gs O + 011 '0' '=' nop nop '}' '=' nop nop O + 012 '+' '?' nop nop '+' '?' nop nop O + 013 '\' '`' fs fs ''' nop nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 0xe9 0xc9 enq enq C + 019 'r' 'R' dc2 dc2 0xae 0xae dc2 dc2 C + 020 't' 'T' dc4 dc4 0xfe 0xde dc4 dc4 C + 021 'y' 'Y' em em 0xff 0xa5 em em C + 022 'u' 'U' nak nak 0xfc 0xdc nak nak C + 023 'i' 'I' ht ht 0xef 0xcf ht ht C + 024 'o' 'O' si si 0xf2 0xd2 si si C + 025 'p' 'P' dle dle 0xb6 0xb6 dle dle C + 026 0xe5 0xc5 nop nop '}' ']' nop nop C + 027 0xa8 '^' rs rs '~' '^' rs rs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 0xe1 0xc1 soh soh C + 031 's' 'S' dc3 dc3 0xdf 0xdf dc3 dc3 C + 032 'd' 'D' eot eot 0xf0 0xd0 eot eot C + 033 'f' 'F' ack ack 0xaa 0xaa ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 0xf8 0xd8 nop nop '|' '\' nop nop C + 040 0xe6 0xc6 nop nop '{' '[' nop nop C + 041 '|' 0xa7 nop nop 0xa6 0xb6 nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 ''' '*' nop nop ''' 0xd7 nop nop O + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 0xd7 0xd7 can can C + 046 'c' 'C' etx etx 0xe7 0xc7 etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 0xf1 0xd1 so so C + 050 'm' 'M' cr cr 0xb5 0xba cr cr C + 051 ',' ';' nop nop 0xb8 0xab nop nop O + 052 '.' ':' nop nop 0xb7 0xbb nop nop O + 053 '-' '_' us us 0xad 0xad us us O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' fs fs 0xab 0xbb fs fs O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' O + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/nordic.asus-eee.kbd b/share/vt/keymaps/nordic.asus-eee.kbd new file mode 100644 index 0000000..d043b58 --- /dev/null +++ b/share/vt/keymaps/nordic.asus-eee.kbd @@ -0,0 +1,132 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop nop nop nop nop O + 003 '2' '"' nul nul '@' '@' nul nul O + 004 '3' '#' nop nop 0xa3 nop nop nop O + 005 '4' 0xa4 nop nop '$' nop nop nop O + 006 '5' '%' nop nop nop nop nop nop O + 007 '6' '&' nop nop nop nop nop nop O +# Alt + Shift + 7 = ÷ + 008 '7' '/' nop nop '{' 0xf7 nop nop O + 009 '8' '(' nop nop '[' nop nop nop O + 010 '9' ')' nop nop ']' nop gs nop O + 011 '0' '=' nop nop '}' nop nop nop O + 012 '+' '?' nop nop '\' nop fs nop O +# For left of backspace key, gives with Alt=' and Alt+Shift+Key=| + 013 0x80 '`' nop nop ''' '|' nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C +# Alt + Ctrl + E = French e (as in café) + 018 'e' 'E' enq enq 0x20ac 'E' 0xe9 enq C +# Alt + R = Registered sign + 019 'r' 'R' dc2 dc2 0xae 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C +# Alt + U = Mikro, Alt + Shift + U = German U (???) + 022 'u' 'U' nak nak 0xb5 'U' 0xfc 0xdc C + 023 'i' 'I' ht ht 'i' 'I' ht ht C +# Alt + O = Norwegian/Danish Ø + 024 'o' 'O' si si 0xf8 0xd8 si si C +# Alt + P = Pi + 025 'p' 'P' dle dle 0xb6 'P' dle dle C + 026 0xe5 0xc5 nop nop '}' ']' nop nop C + 027 0x0161 '^' nop nop '~' nop nop nop O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O +# Alt + A = At sign, Ctrl+Alt = æ, Ctrl+Alt+Shift = Æ + 030 'a' 'A' soh soh '@' 'A' 0xe6 0xc6 C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 0xf6 0xd6 nop nop '|' '\' nop nop C + 040 0xe4 0xc4 nop nop '{' '[' nop nop C + 041 0xa7 0x0153 nop nop '\' '|' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 ''' '*' nop nop nop nop nop nop O +# Alt + Z = Pipe + 044 'z' 'Z' sub sub '|' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C +# Alt + C = Copyright sign + 046 'c' 'C' etx etx 0xa9 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C +# Ctrl + Shift + B = German ß + 048 'b' 'B' stx 0xdf 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C +# Alt + M = µ + 050 'm' 'M' cr cr 0xb5 'M' cr cr C +# Alt + [,/;] = < + 051 ',' ';' nop nop '<' '<' nop nop O +# Alt + [./:] = > + 052 '.' ':' nop nop '>' '>' nop nop O + 053 '-' '_' us nop '/' '?' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' nop nop '|' nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O +# Alt+Arrow up = Page up + 095 fkey50 fkey50 fkey50 fkey50 fkey51 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O +# Alt+Arrow left = Home + 097 fkey53 fkey53 fkey53 fkey53 fkey49 fkey53 fkey53 fkey53 O +# Alt+Arrow right = End + 098 fkey55 fkey55 fkey55 fkey55 fkey57 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O +# Alt+Arrow down = Page down + 100 fkey58 fkey58 fkey58 fkey58 fkey59 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/pl.dvorak.kbd b/share/vt/keymaps/pl.dvorak.kbd new file mode 100644 index 0000000..8175e70 --- /dev/null +++ b/share/vt/keymaps/pl.dvorak.kbd @@ -0,0 +1,117 @@ +# $FreeBSD$ +# +# Polish dvorak keymap by Robert Sebastian Gerus (17:05 01-07-2006 CEST) +# (arachnist@gmail.com) +# Based on pl_PL.ISO-8859-2 and us.dvorak keymaps. +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '1' '!' nop nop O + 003 '2' '@' nul nul '2' '@' nul nul O + 004 '3' '#' nop nop '3' '#' nop nop O + 005 '4' '$' nop nop '4' '$' nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '^' rs rs '6' '^' rs rs O + 008 '7' '&' nop nop '7' '&' nop nop O + 009 '8' '*' nop nop '8' '*' nop nop O + 010 '9' '(' nop nop '9' '(' nop nop O + 011 '0' ')' nop nop '0' ')' nop nop O + 012 '[' '{' esc esc '[' '{' esc esc O + 013 ']' '}' gs gs ']' '}' gs gs O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 ''' '"' nop nop ''' '"' nop nop O + 017 ',' '<' nop nop ',' '<' nop nop O + 018 '.' '>' nop nop '.' '>' nop nop O + 019 'p' 'P' dle dle 'p' 'P' dle dle C + 020 'y' 'Y' em em 'y' 'Y' em em C + 021 'f' 'F' ack ack 'f' 'F' ack ack C + 022 'g' 'G' bel bel 'g' 'G' bel bel C + 023 'c' 'C' etx etx 0x0107 0x0106 etx etx C + 024 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 025 'l' 'L' ff ff 0x0142 0x0141 ff ff C + 026 '/' '?' nop nop '/' '?' nop nop O + 027 '=' '+' nop nop '=' '+' nop nop O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 0x0105 0x0104 soh soh C + 031 'o' 'O' si si 0xf3 0xd3 si si C + 032 'e' 'E' enq enq 0x0119 0x0118 enq enq C + 033 'u' 'U' nak nak 'u' 'U' nak nak C + 034 'i' 'I' ht ht 'i' 'I' ht ht C + 035 'd' 'D' eot eot 'd' 'D' eot eot C + 036 'h' 'H' bs bs 'h' 'H' bs bs C + 037 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 038 'n' 'N' so so 0x0144 0x0143 so so C + 039 's' 'S' dc3 dc3 0x015b 0x015a dc3 dc3 C + 040 '-' '_' us us '-' '_' us us O + 041 '`' '~' nop nop '`' '~' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '\' '|' fs fs '\' '|' fs fs O + 044 ';' ':' nop nop ';' ':' nop nop O + 045 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 046 'j' 'J' nl nl 'j' 'J' nl nl C + 047 'k' 'K' vt vt 'k' 'K' vt vt C + 048 'x' 'X' can can 'x' 'X' can can C + 049 'b' 'B' stx stx 'b' 'B' stx stx C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 'w' 'W' etb etb 'w' 'W' etb etb C + 052 'v' 'V' syn syn 0x017a 0x0179 syn syn C + 053 'z' 'Z' sub sub 0x017c 0x017b sub sub C + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 nop nop nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr cr cr cr cr cr cr O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' O + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/pl.kbd b/share/vt/keymaps/pl.kbd index ebbf8e9..c6606ca 100644 --- a/share/vt/keymaps/pl.kbd +++ b/share/vt/keymaps/pl.kbd @@ -1,6 +1,7 @@ -# Polish ISO-8859-2 keymap by Krzysztof Mlynarski (17:46 27-04-1996 MET DST) -# (krzysio@hydra.mimuw.edu.pl) # $FreeBSD$ +# +# Polish keymap by Krzysztof Mlynarski (17:46 27-04-1996 MET DST) +# (krzysio@hydra.mimuw.edu.pl) # alt # scan cntrl alt alt cntrl lock # code base shift cntrl shift alt shift cntrl shift state @@ -23,38 +24,38 @@ 015 ht btab nop nop ht btab nop nop O 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C 017 'w' 'W' etb etb 'w' 'W' etb etb C - 018 'e' 'E' enq enq 281 280 enq enq C + 018 'e' 'E' enq enq 0x0119 0x0118 enq enq C 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C 021 'y' 'Y' em em 'y' 'Y' em em C 022 'u' 'U' nak nak 'u' 'U' nak nak C 023 'i' 'I' ht ht 'i' 'I' ht ht C - 024 'o' 'O' si si 243 211 si si C + 024 'o' 'O' si si 0xf3 0xd3 si si C 025 'p' 'P' dle dle 'p' 'P' dle dle C 026 '[' '{' esc esc '[' '{' esc esc O 027 ']' '}' gs gs ']' '}' gs gs O 028 cr cr nl nl cr cr nl nl O 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O - 030 'a' 'A' soh soh 261 260 soh soh C - 031 's' 'S' dc3 dc3 347 346 dc3 dc3 C + 030 'a' 'A' soh soh 0x0105 0x0104 soh soh C + 031 's' 'S' dc3 dc3 0x015b 0x015a dc3 dc3 C 032 'd' 'D' eot eot 'd' 'D' eot eot C 033 'f' 'F' ack ack 'f' 'F' ack ack C 034 'g' 'G' bel bel 'g' 'G' bel bel C 035 'h' 'H' bs bs 'h' 'H' bs bs C 036 'j' 'J' nl nl 'j' 'J' nl nl C 037 'k' 'K' vt vt 'k' 'K' vt vt C - 038 'l' 'L' ff ff 322 321 ff ff C + 038 'l' 'L' ff ff 0x0142 0x0141 ff ff C 039 ';' ':' nop nop ';' ':' nop nop O 040 ''' '"' nop nop ''' '"' nop nop O 041 '`' '~' nop nop '`' '~' nop nop O 042 lshift lshift lshift lshift lshift lshift lshift lshift O 043 '\' '|' fs fs '\' '|' fs fs O - 044 'z' 'Z' sub sub 380 379 sub sub C - 045 'x' 'X' can can 378 377 can can C - 046 'c' 'C' etx etx 263 262 etx etx C + 044 'z' 'Z' sub sub 0x017c 0x017b sub sub C + 045 'x' 'X' can can 0x017a 0x0179 can can C + 046 'c' 'C' etx etx 0x0107 0x0106 etx etx C 047 'v' 'V' syn syn 'v' 'V' syn syn C 048 'b' 'B' stx stx 'b' 'B' stx stx C - 049 'n' 'N' so so 324 323 so so C + 049 'n' 'N' so so 0x0144 0x0143 so so C 050 'm' 'M' cr cr 'm' 'M' cr cr C 051 ',' '<' nop nop ',' '<' nop nop O 052 '.' '>' nop nop '.' '>' nop nop O diff --git a/share/vt/keymaps/pt.acc.kbd b/share/vt/keymaps/pt.acc.kbd new file mode 100644 index 0000000..02ee9b5 --- /dev/null +++ b/share/vt/keymaps/pt.acc.kbd @@ -0,0 +1,139 @@ +#pt.iso.acc.kbd +#by: pm@dee.uc.pt +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '1' '!' nop nop O + 003 '2' '"' nul nul '@' '@' nul nul O + 004 '3' '#' nop nop '3' '#' nop nop O + 005 '4' '$' nop nop '4' '$' nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '&' rs rs '6' '^' rs rs O + 008 '7' '/' nop nop '{' '&' nop nop O + 009 '8' '(' nop nop '[' '*' nop nop O + 010 '9' ')' nop nop ']' '(' nop nop O + 011 '0' '=' nop nop '}' ')' nop nop O + 012 ''' '?' ns ns '-' '_' ns ns O + 013 '=' '+' nop nop '=' '+' nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 0x20ac 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 '+' '*' esc esc duml '{' esc esc O + 027 dacu dgra gs gs ']' '}' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 0xe7 0xc7 nop nop ';' ':' nop nop O + 040 nop nop nop nop ''' '"' nop nop O + 041 '\' '|' nop nop '`' '~' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 dtil dcir fs fs '\' '|' fs fs O + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' ';' nop nop nop nop nop nop C + 052 '.' ':' nop nop '.' '>' nop nop O + 053 '-' '_' nop nop '/' '?' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' 0x82 ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr cr cr cr cr cr cr O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' O + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + + dgra '`' ( 'a' 0xe0 ) ( 'A' 0xc0 ) ( 'e' 0xe8 ) ( 'E' 0xc8 ) + ( 'i' 0xec ) ( 'I' 0xcc ) ( 'o' 0xf2 ) ( 'O' 0xd2 ) + ( 'u' 0xf9 ) ( 'U' 0xd9 ) + + dacu 0xb4 ( 'a' 0xe1 ) ( 'A' 0xc1 ) ( 'e' 0xe9 ) ( 'E' 0xc9 ) + ( 'i' 0xed ) ( 'I' 0xcd ) ( 'o' 0xf3 ) ( 'O' 0xd3 ) + ( 'u' 0xfa ) ( 'U' 0xda ) ( 'y' 0xfd ) ( 'Y' 0xdd ) + + dcir '^' ( 'a' 0xe2 ) ( 'A' 0xc2 ) ( 'e' 0xea ) ( 'E' 0xca ) + ( 'i' 0xee ) ( 'I' 0xce ) ( 'o' 0xf4 ) ( 'O' 0xd4 ) + ( 'u' 0xfb ) ( 'U' 0xdb ) + + dtil '~' ( 'a' 0xe3 ) ( 'A' 0xc3 ) ( 'n' 0xf1 ) ( 'N' 0xd1 ) + ( 'o' 0xf5 ) ( 'O' 0xd5 ) + + duml 0xa8 ( 'a' 0xe4 ) ( 'A' 0xc4 ) ( 'e' 0xeb ) ( 'E' 0xcb ) + ( 'i' 0xef ) ( 'I' 0xcf ) ( 'o' 0xf6 ) ( 'O' 0xd6 ) + ( 'u' 0xfc ) ( 'U' 0xdc ) ( 'y' 0xff ) + + drin 0xb0 ( 'a' 0xe5 ) ( 'A' 0xc5 ) + + dced 0xb8 ( 'c' 0xe7 ) ( 'C' 0xc7 ) diff --git a/share/vt/keymaps/pt.kbd b/share/vt/keymaps/pt.kbd new file mode 100644 index 0000000..46f781e --- /dev/null +++ b/share/vt/keymaps/pt.kbd @@ -0,0 +1,116 @@ +# $FreeBSD$ +# alt +#by: pm@dee.uc.pt +# +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '1' '!' nop nop O + 003 '2' '"' nul nul '@' '@' nul nul O + 004 '3' '#' nop nop '3' '#' nop nop O + 005 '4' '$' nop nop '4' '$' nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '&' rs rs '6' '^' rs rs O + 008 '7' '/' nop nop '{' '&' nop nop O + 009 '8' '(' nop nop '[' '*' nop nop O + 010 '9' ')' nop nop ']' '(' nop nop O + 011 '0' '=' nop nop '}' ')' nop nop O + 012 ''' '?' ns ns '-' '_' ns ns O + 013 '=' '+' nop nop '=' '+' nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 0x20ac 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 '+' '*' esc esc 'h' '{' esc esc O + 027 ''' '`' gs gs ']' '}' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 0xe7 0xc7 nop nop ';' ':' nop nop O + 040 nop nop nop nop ''' '"' nop nop O + 041 '\' '|' nop nop '`' '~' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '~' '^' fs fs '\' '|' fs fs O + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' ';' nop nop nop nop nop nop C + 052 '.' ':' nop nop '.' '>' nop nop O + 053 '-' '_' nop nop '/' '?' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' 0x82 ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr cr cr cr cr cr cr O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' O + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/ru.kbd b/share/vt/keymaps/ru.kbd new file mode 100644 index 0000000..a0309e6 --- /dev/null +++ b/share/vt/keymaps/ru.kbd @@ -0,0 +1,242 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc nop nop 0x2321 0x2321 debug nop O + 002 '1' '!' nop nop 0x2560 0x2551 nop nop O + 003 '2' '@' nul nul 0x2561 0x044e 0x2500 0x2500 O + 004 '3' '#' nop nop 0x0401 0x0451 nop nop O + 005 '4' '$' nop nop 0x2562 0x2553 nop nop O + 006 '5' '%' nop nop 0x2563 0x2554 nop nop O + 007 '6' '^' rs rs 0x2564 0x0447 0xb7 0xb7 O + 008 '7' '&' nop nop 0x2565 0x2555 nop nop O + 009 '8' '*' nop nop 0x2566 0x2559 nop nop O + 010 '9' '(' nop nop 0x2567 0x2557 nop nop O + 011 '0' ')' nop nop 0x255f 0x2558 nop nop O + 012 '-' '_' us us 0x255c 0x044a 0xf7 0xf7 O + 013 '=' '+' nop nop 0x256b 0x255a nop nop O + 014 bs bs del del 0x252c 0x252c 0x042a 0x042a O + 015 ht btab nop nop 0x2534 btab nop nop O + 016 'q' 'Q' dc1 dc1 0x042f 0x044f 0x2592 0x2592 C + 017 'w' 'W' etb etb 0x0412 0x0432 0x2248 0x2248 C + 018 'e' 'E' enq enq 0x0415 0x0435 0x2518 0x2518 C + 019 'r' 'R' dc2 dc2 0x0420 0x0440 0x2593 0x2593 C + 020 't' 'T' dc4 dc4 0x0422 0x0442 0x25a0 0x25a0 C + 021 'y' 'Y' em em 0x042b 0x044b 0x2265 0x2265 C + 022 'u' 'U' nak nak 0x0423 0x0443 0x2219 0x2219 C + 023 'i' 'I' ht ht 0x0418 0x0438 0x2534 0x2534 C + 024 'o' 'O' si si 0x041e 0x043e 0x2590 0x2590 C + 025 'p' 'P' dle dle 0x041f 0x043f 0x2591 0x2591 C + 026 '[' '{' esc esc 0x0448 0x0428 0x2321 0x2321 O + 027 ']' '}' gs gs 0x0449 0x0429 0xb2 0xb2 O + 028 cr cr nl nl 0x2588 0x2588 0x253c 0x253c O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 0x0410 0x0430 0x2502 0x2502 C + 031 's' 'S' dc3 dc3 0x0421 0x0441 0x2320 0x2320 C + 032 'd' 'D' eot eot 0x0414 0x0434 0x2514 0x2514 C + 033 'f' 'F' ack ack 0x0424 0x0444 0x251c 0x251c C + 034 'g' 'G' bel bel 0x0413 0x0433 0x2524 0x2524 C + 035 'h' 'H' bs bs 0x0425 0x0445 0x252c 0x252c C + 036 'j' 'J' nl nl 0x0419 0x0439 0x253c 0x253c C + 037 'k' 'K' vt vt 0x041a 0x043a 0x2580 0x2580 C + 038 'l' 'L' ff ff 0x041b 0x043b 0x2584 0x2584 C + 039 ';' ':' nop nop 0x2569 0x2568 nop nop O + 040 ''' '"' nop nop 0x2556 0x2552 nop nop O + 041 '`' '~' nop nop 0x042e 0x0427 nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '\' '|' fs fs 0x044d 0x042d 0xb0 0xb0 O + 044 'z' 'Z' sub sub 0x0417 0x0437 0xa0 0xa0 C + 045 'x' 'X' can can 0x042c 0x044c 0x2264 0x2264 C + 046 'c' 'C' etx etx 0x0426 0x0446 0x2510 0x2510 C + 047 'v' 'V' syn syn 0x0416 0x0436 0x221a 0x221a C + 048 'b' 'B' stx stx 0x0411 0x0431 0x250c 0x250c C + 049 'n' 'N' so so 0x041d 0x043d 0x258c 0x258c C + 050 'm' 'M' cr cr 0x041c 0x043c 0x2588 0x2588 C + 051 ',' '<' nop nop 0x255b 0x256a nop nop O + 052 '.' '>' nop nop 0x255d 0x256c nop nop O + 053 '/' '?' nop nop 0x255e 0xa9 nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' nl nl 0x2559 0x2559 0x253c 0x253c O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' 0x2550 0x2550 susp 0x2550 O + 058 alock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' 0x2565 0x2565 0x2565 0x2565 N + 072 fkey50 '8' '8' '8' 0x2566 0x2566 0x2566 0x2566 N + 073 fkey51 '9' '9' '9' 0x2567 0x2567 0x2567 0x2567 N + 074 fkey52 '-' '-' '-' 0x255c 0x255c 0x255c 0x255c N + 075 fkey53 '4' '4' '4' 0x2562 0x2562 0x2562 0x2562 N + 076 fkey54 '5' '5' '5' 0x2563 0x2563 0x2563 0x2563 N + 077 fkey55 '6' '6' '6' 0x2564 0x2564 0x2564 0x2564 N + 078 fkey56 '+' '+' '+' 0x255a 0x255a 0x255a 0x255a N + 079 fkey57 '1' '1' '1' 0x2560 0x2560 0x2560 0x2560 N + 080 fkey58 '2' '2' '2' 0x2561 0x2561 0x2561 0x2561 N + 081 fkey59 '3' '3' '3' 0x0401 0x0401 0x0401 0x0401 N + 082 fkey60 '0' '0' '0' 0x255f 0x255f 0x255f 0x255f N + 083 del '.' '.' '.' 0x255d 0x255d boot boot N + 084 alock alock alock alock alock alock alock alock O + 085 nop nop nop nop nop nop nop nop O + 086 nop nop nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl 0x2588 0x2588 0x253c 0x253c O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' nop nop 0x255e 0x255e nop nop O + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + 109 nop nop nop nop nop nop nop nop O + 110 nop nop nop nop nop nop nop nop O + 111 nop nop nop nop nop nop nop nop O + 112 nop nop nop nop nop nop nop nop O + 113 nop nop nop nop nop nop nop nop O + 114 nop nop nop nop nop nop nop nop O + 115 nop nop nop nop nop nop nop nop O + 116 nop nop nop nop nop nop nop nop O + 117 nop nop nop nop nop nop nop nop O + 118 nop nop nop nop nop nop nop nop O + 119 nop nop nop nop nop nop nop nop O + 120 nop nop nop nop nop nop nop nop O + 121 nop nop nop nop nop nop nop nop O + 122 nop nop nop nop nop nop nop nop O + 123 nop nop nop nop nop nop nop nop O + 124 nop nop nop nop nop nop nop nop O + 125 nop nop nop nop nop nop nop nop O + 126 nop nop nop nop nop nop nop nop O + 127 nop nop nop nop nop nop nop nop O + 128 nop nop nop nop nop nop nop nop O + 129 esc esc nop nop 0x2321 0x2321 debug nop O + 130 '!' '1' nop nop 0x2560 0x2551 nop nop O + 131 '"' '2' nul nul 0x2561 0x044e 0x2500 0x2500 O + 132 ''' '3' nop nop 0x0401 0x0451 nop nop O + 133 '*' '4' nop nop 0x2562 0x2553 nop nop O + 134 ':' '5' nop nop 0x2563 0x2554 nop nop O + 135 ',' '6' rs rs 0x2564 0x0447 0xb7 0xb7 O + 136 '.' '7' nop nop 0x2565 0x2555 nop nop O + 137 ';' '8' nop nop 0x2566 0x2559 nop nop O + 138 '(' '9' nop nop 0x2567 0x2557 nop nop O + 139 ')' '0' nop nop 0x255f 0x2558 nop nop O + 140 '-' '_' us us 0x255c 0x044a 0xf7 0xf7 O + 141 '=' '+' nop nop 0x256b 0x255a nop nop O + 142 bs bs del del 0x252c 0x252c 0x042a 0x042a O + 143 ht btab nop nop 0x2534 btab nop nop O + 144 0x0439 0x0419 dc1 dc1 0x042f 0x044f 0x2592 0x2592 C + 145 0x0446 0x0426 etb etb 0x0412 0x0432 0x2248 0x2248 C + 146 0x0443 0x0423 enq enq 0x0415 0x0435 0x2518 0x2518 C + 147 0x043a 0x041a dc2 dc2 0x0420 0x0440 0x2593 0x2593 C + 148 0x0435 0x0415 dc4 dc4 0x0422 0x0442 0x25a0 0x25a0 C + 149 0x043d 0x041d em em 0x042b 0x044b 0x2265 0x2265 C + 150 0x0433 0x0413 nak nak 0x0423 0x0443 0x2219 0x2219 C + 151 0x0448 0x0428 ht ht 0x0418 0x0438 0x2534 0x2534 C + 152 0x0449 0x0429 si si 0x041e 0x043e 0x2590 0x2590 C + 153 0x0437 0x0417 dle dle 0x041f 0x043f 0x2591 0x2591 C + 154 0x0445 0x0425 esc esc 0x0448 0x0428 0x2321 0x2321 C + 155 0x044a 0x042a gs gs 0x0449 0x0429 0xb2 0xb2 C + 156 cr cr nl nl 0x2588 0x2588 0x253c 0x253c O + 157 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 158 0x0444 0x0424 soh soh 0x0410 0x0430 0x2502 0x2502 C + 159 0x044b 0x042b dc3 dc3 0x0421 0x0441 0x2320 0x2320 C + 160 0x0432 0x0412 eot eot 0x0414 0x0434 0x2514 0x2514 C + 161 0x0430 0x0410 ack ack 0x0424 0x0444 0x251c 0x251c C + 162 0x043f 0x041f bel bel 0x0413 0x0433 0x2524 0x2524 C + 163 0x0440 0x0420 bs bs 0x0425 0x0445 0x252c 0x252c C + 164 0x043e 0x041e nl nl 0x0419 0x0439 0x253c 0x253c C + 165 0x043b 0x041b vt vt 0x041a 0x043a 0x2580 0x2580 C + 166 0x0434 0x0414 ff ff 0x041b 0x043b 0x2584 0x2584 C + 167 0x0436 0x0416 nop nop 0x2569 0x2568 nop nop C + 168 0x044d 0x042d nop nop 0x2556 0x2552 nop nop C + 169 0x0451 0x0401 nop nop 0x042e 0x0427 nop nop C + 170 lshift lshift lshift lshift lshift lshift lshift lshift O + 171 '\' '|' fs fs 0x044d 0x042d 0xb0 0xb0 O + 172 0x044f 0x042f sub sub 0x0417 0x0437 0xa0 0xa0 C + 173 0x0447 0x0427 can can 0x042c 0x044c 0x2264 0x2264 C + 174 0x0441 0x0421 etx etx 0x0426 0x0446 0x2510 0x2510 C + 175 0x043c 0x041c syn syn 0x0416 0x0436 0x221a 0x221a C + 176 0x0438 0x0418 stx stx 0x0411 0x0431 0x250c 0x250c C + 177 0x0442 0x0422 so so 0x041d 0x043d 0x258c 0x258c C + 178 0x044c 0x042c cr cr 0x041c 0x043c 0x2588 0x2588 C + 179 0x0431 0x0411 nop nop 0x255b 0x256a nop nop C + 180 0x044e 0x042e nop nop 0x255d 0x256c nop nop C + 181 '/' '?' nop nop 0x255e 0xa9 nop nop O + 182 rshift rshift rshift rshift rshift rshift rshift rshift O + 183 '*' '*' nl nl 0x2559 0x2559 0x253c 0x253c O + 184 lalt lalt lalt lalt lalt lalt lalt lalt O + 185 ' ' ' ' nul ' ' 0x2550 0x2550 0x2550 0x2550 O + 186 alock clock clock clock clock clock clock clock O + 187 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 188 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 189 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 190 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 191 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 192 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 193 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 194 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 195 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 196 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 197 nlock nlock nlock nlock nlock nlock nlock nlock O + 198 slock slock slock slock slock slock slock slock O + 199 fkey49 '7' '7' '7' 0x2565 0x2565 0x2565 0x2565 N + 200 fkey50 '8' '8' '8' 0x2566 0x2566 0x2566 0x2566 N + 201 fkey51 '9' '9' '9' 0x2567 0x2567 0x2567 0x2567 N + 202 fkey52 '-' '-' '-' 0x255c 0x255c 0x255c 0x255c N + 203 fkey53 '4' '4' '4' 0x2562 0x2562 0x2562 0x2562 N + 204 fkey54 '5' '5' '5' 0x2563 0x2563 0x2563 0x2563 N + 205 fkey55 '6' '6' '6' 0x2564 0x2564 0x2564 0x2564 N + 206 fkey56 '+' '+' '+' 0x255a 0x255a 0x255a 0x255a N + 207 fkey57 '1' '1' '1' 0x2560 0x2560 0x2560 0x2560 N + 208 fkey58 '2' '2' '2' 0x2561 0x2561 0x2561 0x2561 N + 209 fkey59 '3' '3' '3' 0x0401 0x0401 0x0401 0x0401 N + 210 fkey60 '0' '0' '0' 0x255f 0x255f 0x255f 0x255f N + 211 del '.' '.' '.' 0x255d 0x255d boot boot N + 212 alock alock alock alock alock alock alock alock O + 213 nop nop nop nop nop nop nop nop O + 214 nop nop nop nop nop nop nop nop O + 215 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 216 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 217 cr cr nl nl 0x2588 0x2588 0x253c 0x253c O + 218 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 219 '/' '/' nop nop 0x255e 0x255e nop nop O + 220 nscr pscr debug debug nop nop nop nop O + 221 ralt ralt ralt ralt ralt ralt ralt ralt O + 222 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 223 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 224 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 225 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 226 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 227 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 228 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 229 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 230 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 231 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 232 slock saver slock saver susp nop susp nop O + 233 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 234 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 235 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 236 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/ru.shift.kbd b/share/vt/keymaps/ru.shift.kbd new file mode 100644 index 0000000..5e12b62 --- /dev/null +++ b/share/vt/keymaps/ru.shift.kbd @@ -0,0 +1,242 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc nop nop 0x2321 0x2321 debug nop O + 002 '1' '!' nop nop 0x2560 0x2551 nop nop O + 003 '2' '@' nul nul 0x2561 0x044e 0x2500 0x2500 O + 004 '3' '#' nop nop 0x0401 0x0451 nop nop O + 005 '4' '$' nop nop 0x2562 0x2553 nop nop O + 006 '5' '%' nop nop 0x2563 0x2554 nop nop O + 007 '6' '^' rs rs 0x2564 0x0447 0xb7 0xb7 O + 008 '7' '&' nop nop 0x2565 0x2555 nop nop O + 009 '8' '*' nop nop 0x2566 0x2559 nop nop O + 010 '9' '(' nop nop 0x2567 0x2557 nop nop O + 011 '0' ')' nop nop 0x255f 0x2558 nop nop O + 012 '-' '_' us us 0x255c 0x044a 0xf7 0xf7 O + 013 '=' '+' nop nop 0x256b 0x255a nop nop O + 014 bs bs del del 0x252c 0x252c 0x042a 0x042a O + 015 ht btab nop nop 0x2534 btab nop nop O + 016 'q' 'Q' dc1 dc1 0x042f 0x044f 0x2592 0x2592 C + 017 'w' 'W' etb etb 0x0412 0x0432 0x2248 0x2248 C + 018 'e' 'E' enq enq 0x0415 0x0435 0x2518 0x2518 C + 019 'r' 'R' dc2 dc2 0x0420 0x0440 0x2593 0x2593 C + 020 't' 'T' dc4 dc4 0x0422 0x0442 0x25a0 0x25a0 C + 021 'y' 'Y' em em 0x042b 0x044b 0x2265 0x2265 C + 022 'u' 'U' nak nak 0x0423 0x0443 0x2219 0x2219 C + 023 'i' 'I' ht ht 0x0418 0x0438 0x2534 0x2534 C + 024 'o' 'O' si si 0x041e 0x043e 0x2590 0x2590 C + 025 'p' 'P' dle dle 0x041f 0x043f 0x2591 0x2591 C + 026 '[' '{' esc esc 0x0448 0x0428 0x2321 0x2321 O + 027 ']' '}' gs gs 0x0449 0x0429 0xb2 0xb2 O + 028 cr cr nl nl 0x2588 0x2588 0x253c 0x253c O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 0x0410 0x0430 0x2502 0x2502 C + 031 's' 'S' dc3 dc3 0x0421 0x0441 0x2320 0x2320 C + 032 'd' 'D' eot eot 0x0414 0x0434 0x2514 0x2514 C + 033 'f' 'F' ack ack 0x0424 0x0444 0x251c 0x251c C + 034 'g' 'G' bel bel 0x0413 0x0433 0x2524 0x2524 C + 035 'h' 'H' bs bs 0x0425 0x0445 0x252c 0x252c C + 036 'j' 'J' nl nl 0x0419 0x0439 0x253c 0x253c C + 037 'k' 'K' vt vt 0x041a 0x043a 0x2580 0x2580 C + 038 'l' 'L' ff ff 0x041b 0x043b 0x2584 0x2584 C + 039 ';' ':' nop nop 0x2569 0x2568 nop nop O + 040 ''' '"' nop nop 0x2556 0x2552 nop nop O + 041 '`' '~' nop nop 0x042e 0x0427 nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '\' '|' fs fs 0x044d 0x042d 0xb0 0xb0 O + 044 'z' 'Z' sub sub 0x0417 0x0437 0xa0 0xa0 C + 045 'x' 'X' can can 0x042c 0x044c 0x2264 0x2264 C + 046 'c' 'C' etx etx 0x0426 0x0446 0x2510 0x2510 C + 047 'v' 'V' syn syn 0x0416 0x0436 0x221a 0x221a C + 048 'b' 'B' stx stx 0x0411 0x0431 0x250c 0x250c C + 049 'n' 'N' so so 0x041d 0x043d 0x258c 0x258c C + 050 'm' 'M' cr cr 0x041c 0x043c 0x2588 0x2588 C + 051 ',' '<' nop nop 0x255b 0x256a nop nop O + 052 '.' '>' nop nop 0x255d 0x256c nop nop O + 053 '/' '?' nop nop 0x255e 0xa9 nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' nl nl 0x2559 0x2559 0x253c 0x253c O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' 0x2550 0x2550 susp 0x2550 O + 058 alock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' 0x2565 0x2565 0x2565 0x2565 N + 072 fkey50 '8' '8' '8' 0x2566 0x2566 0x2566 0x2566 N + 073 fkey51 '9' '9' '9' 0x2567 0x2567 0x2567 0x2567 N + 074 fkey52 '-' '-' '-' 0x255c 0x255c 0x255c 0x255c N + 075 fkey53 '4' '4' '4' 0x2562 0x2562 0x2562 0x2562 N + 076 fkey54 '5' '5' '5' 0x2563 0x2563 0x2563 0x2563 N + 077 fkey55 '6' '6' '6' 0x2564 0x2564 0x2564 0x2564 N + 078 fkey56 '+' '+' '+' 0x255a 0x255a 0x255a 0x255a N + 079 fkey57 '1' '1' '1' 0x2560 0x2560 0x2560 0x2560 N + 080 fkey58 '2' '2' '2' 0x2561 0x2561 0x2561 0x2561 N + 081 fkey59 '3' '3' '3' 0x0401 0x0401 0x0401 0x0401 N + 082 fkey60 '0' '0' '0' 0x255f 0x255f 0x255f 0x255f N + 083 del '.' '.' '.' 0x255d 0x255d boot boot N + 084 alock alock alock alock alock alock alock alock O + 085 nop nop nop nop nop nop nop nop O + 086 nop nop nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl 0x2588 0x2588 0x253c 0x253c O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' nop nop 0x255e 0x255e nop nop O + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + 109 nop nop nop nop nop nop nop nop O + 110 nop nop nop nop nop nop nop nop O + 111 nop nop nop nop nop nop nop nop O + 112 nop nop nop nop nop nop nop nop O + 113 nop nop nop nop nop nop nop nop O + 114 nop nop nop nop nop nop nop nop O + 115 nop nop nop nop nop nop nop nop O + 116 nop nop nop nop nop nop nop nop O + 117 nop nop nop nop nop nop nop nop O + 118 nop nop nop nop nop nop nop nop O + 119 nop nop nop nop nop nop nop nop O + 120 nop nop nop nop nop nop nop nop O + 121 nop nop nop nop nop nop nop nop O + 122 nop nop nop nop nop nop nop nop O + 123 nop nop nop nop nop nop nop nop O + 124 nop nop nop nop nop nop nop nop O + 125 nop nop nop nop nop nop nop nop O + 126 nop nop nop nop nop nop nop nop O + 127 nop nop nop nop nop nop nop nop O + 128 nop nop nop nop nop nop nop nop O + 129 esc esc nop nop 0x2321 0x2321 debug nop O + 130 '1' '!' nop nop 0x2560 0x2551 nop nop O + 131 '2' '"' nul nul 0x2561 0x044e 0x2500 0x2500 O + 132 '3' ''' nop nop 0x0401 0x0451 nop nop O + 133 '4' ';' nop nop 0x2562 0x2553 nop nop O + 134 '5' ':' nop nop 0x2563 0x2554 nop nop O + 135 '6' ',' rs rs 0x2564 0x0447 0xb7 0xb7 O + 136 '7' '.' nop nop 0x2565 0x2555 nop nop O + 137 '8' '*' nop nop 0x2566 0x2559 nop nop O + 138 '9' '(' nop nop 0x2567 0x2557 nop nop O + 139 '0' ')' nop nop 0x255f 0x2558 nop nop O + 140 '-' '_' us us 0x255c 0x044a 0xf7 0xf7 O + 141 '=' '+' nop nop 0x256b 0x255a nop nop O + 142 bs bs del del 0x252c 0x252c 0x042a 0x042a O + 143 ht btab nop nop 0x2534 btab nop nop O + 144 0x0439 0x0419 dc1 dc1 0x042f 0x044f 0x2592 0x2592 C + 145 0x0446 0x0426 etb etb 0x0412 0x0432 0x2248 0x2248 C + 146 0x0443 0x0423 enq enq 0x0415 0x0435 0x2518 0x2518 C + 147 0x043a 0x041a dc2 dc2 0x0420 0x0440 0x2593 0x2593 C + 148 0x0435 0x0415 dc4 dc4 0x0422 0x0442 0x25a0 0x25a0 C + 149 0x043d 0x041d em em 0x042b 0x044b 0x2265 0x2265 C + 150 0x0433 0x0413 nak nak 0x0423 0x0443 0x2219 0x2219 C + 151 0x0448 0x0428 ht ht 0x0418 0x0438 0x2534 0x2534 C + 152 0x0449 0x0429 si si 0x041e 0x043e 0x2590 0x2590 C + 153 0x0437 0x0417 dle dle 0x041f 0x043f 0x2591 0x2591 C + 154 0x0445 0x0425 esc esc 0x0448 0x0428 0x2321 0x2321 C + 155 0x044a 0x042a gs gs 0x0449 0x0429 0xb2 0xb2 C + 156 cr cr nl nl 0x2588 0x2588 0x253c 0x253c O + 157 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 158 0x0444 0x0424 soh soh 0x0410 0x0430 0x2502 0x2502 C + 159 0x044b 0x042b dc3 dc3 0x0421 0x0441 0x2320 0x2320 C + 160 0x0432 0x0412 eot eot 0x0414 0x0434 0x2514 0x2514 C + 161 0x0430 0x0410 ack ack 0x0424 0x0444 0x251c 0x251c C + 162 0x043f 0x041f bel bel 0x0413 0x0433 0x2524 0x2524 C + 163 0x0440 0x0420 bs bs 0x0425 0x0445 0x252c 0x252c C + 164 0x043e 0x041e nl nl 0x0419 0x0439 0x253c 0x253c C + 165 0x043b 0x041b vt vt 0x041a 0x043a 0x2580 0x2580 C + 166 0x0434 0x0414 ff ff 0x041b 0x043b 0x2584 0x2584 C + 167 0x0436 0x0416 nop nop 0x2569 0x2568 nop nop C + 168 0x044d 0x042d nop nop 0x2556 0x2552 nop nop C + 169 0x0451 0x0401 nop nop 0x042e 0x0427 nop nop C + 170 lshift lshift lshift lshift lshift lshift lshift lshift O + 171 '\' '|' fs fs 0x044d 0x042d 0xb0 0xb0 O + 172 0x044f 0x042f sub sub 0x0417 0x0437 0xa0 0xa0 C + 173 0x0447 0x0427 can can 0x042c 0x044c 0x2264 0x2264 C + 174 0x0441 0x0421 etx etx 0x0426 0x0446 0x2510 0x2510 C + 175 0x043c 0x041c syn syn 0x0416 0x0436 0x221a 0x221a C + 176 0x0438 0x0418 stx stx 0x0411 0x0431 0x250c 0x250c C + 177 0x0442 0x0422 so so 0x041d 0x043d 0x258c 0x258c C + 178 0x044c 0x042c cr cr 0x041c 0x043c 0x2588 0x2588 C + 179 0x0431 0x0411 nop nop 0x255b 0x256a nop nop C + 180 0x044e 0x042e nop nop 0x255d 0x256c nop nop C + 181 '/' '?' nop nop 0x255e 0xa9 nop nop O + 182 rshift rshift rshift rshift rshift rshift rshift rshift O + 183 '*' '*' nl nl 0x2559 0x2559 0x253c 0x253c O + 184 lalt lalt lalt lalt lalt lalt lalt lalt O + 185 ' ' ' ' nul ' ' 0x2550 0x2550 0x2550 0x2550 O + 186 alock clock clock clock clock clock clock clock O + 187 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 188 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 189 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 190 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 191 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 192 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 193 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 194 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 195 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 196 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 197 nlock nlock nlock nlock nlock nlock nlock nlock O + 198 slock slock slock slock slock slock slock slock O + 199 fkey49 '7' '7' '7' 0x2565 0x2565 0x2565 0x2565 N + 200 fkey50 '8' '8' '8' 0x2566 0x2566 0x2566 0x2566 N + 201 fkey51 '9' '9' '9' 0x2567 0x2567 0x2567 0x2567 N + 202 fkey52 '-' '-' '-' 0x255c 0x255c 0x255c 0x255c N + 203 fkey53 '4' '4' '4' 0x2562 0x2562 0x2562 0x2562 N + 204 fkey54 '5' '5' '5' 0x2563 0x2563 0x2563 0x2563 N + 205 fkey55 '6' '6' '6' 0x2564 0x2564 0x2564 0x2564 N + 206 fkey56 '+' '+' '+' 0x255a 0x255a 0x255a 0x255a N + 207 fkey57 '1' '1' '1' 0x2560 0x2560 0x2560 0x2560 N + 208 fkey58 '2' '2' '2' 0x2561 0x2561 0x2561 0x2561 N + 209 fkey59 '3' '3' '3' 0x0401 0x0401 0x0401 0x0401 N + 210 fkey60 '0' '0' '0' 0x255f 0x255f 0x255f 0x255f N + 211 del '.' '.' '.' 0x255d 0x255d boot boot N + 212 alock alock alock alock alock alock alock alock O + 213 nop nop nop nop nop nop nop nop O + 214 nop nop nop nop nop nop nop nop O + 215 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 216 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 217 cr cr nl nl 0x2588 0x2588 0x253c 0x253c O + 218 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 219 '/' '/' nop nop 0x255e 0x255e nop nop O + 220 nscr pscr debug debug nop nop nop nop O + 221 ralt ralt ralt ralt ralt ralt ralt ralt O + 222 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 223 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 224 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 225 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 226 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 227 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 228 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 229 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 230 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 231 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 232 slock saver slock saver susp nop susp nop O + 233 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 234 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 235 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 236 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/ru.win.kbd b/share/vt/keymaps/ru.win.kbd new file mode 100644 index 0000000..e3e50fc --- /dev/null +++ b/share/vt/keymaps/ru.win.kbd @@ -0,0 +1,242 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc nop nop 0x2321 0x2321 debug nop O + 002 '1' '!' nop nop 0x2560 0x2551 nop nop O + 003 '2' '@' nul nul 0x2561 0x044e 0x2500 0x2500 O + 004 '3' '#' nop nop 0x0401 0x0451 nop nop O + 005 '4' '$' nop nop 0x2562 0x2553 nop nop O + 006 '5' '%' nop nop 0x2563 0x2554 nop nop O + 007 '6' '^' rs rs 0x2564 0x0447 0xb7 0xb7 O + 008 '7' '&' nop nop 0x2565 0x2555 nop nop O + 009 '8' '*' nop nop 0x2566 0x2559 nop nop O + 010 '9' '(' nop nop 0x2567 0x2557 nop nop O + 011 '0' ')' nop nop 0x255f 0x2558 nop nop O + 012 '-' '_' us us 0x255c 0x044a 0xf7 0xf7 O + 013 '=' '+' nop nop 0x256b 0x255a nop nop O + 014 bs bs del del 0x252c 0x252c 0x042a 0x042a O + 015 ht btab nop nop 0x2534 btab nop nop O + 016 'q' 'Q' dc1 dc1 0x042f 0x044f 0x2592 0x2592 C + 017 'w' 'W' etb etb 0x0412 0x0432 0x2248 0x2248 C + 018 'e' 'E' enq enq 0x0415 0x0435 0x2518 0x2518 C + 019 'r' 'R' dc2 dc2 0x0420 0x0440 0x2593 0x2593 C + 020 't' 'T' dc4 dc4 0x0422 0x0442 0x25a0 0x25a0 C + 021 'y' 'Y' em em 0x042b 0x044b 0x2265 0x2265 C + 022 'u' 'U' nak nak 0x0423 0x0443 0x2219 0x2219 C + 023 'i' 'I' ht ht 0x0418 0x0438 0x2534 0x2534 C + 024 'o' 'O' si si 0x041e 0x043e 0x2590 0x2590 C + 025 'p' 'P' dle dle 0x041f 0x043f 0x2591 0x2591 C + 026 '[' '{' esc esc 0x0448 0x0428 0x2321 0x2321 O + 027 ']' '}' gs gs 0x0449 0x0429 0xb2 0xb2 O + 028 cr cr nl nl 0x2588 0x2588 0x253c 0x253c O + 029 lctrl alock lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 0x0410 0x0430 0x2502 0x2502 C + 031 's' 'S' dc3 dc3 0x0421 0x0441 0x2320 0x2320 C + 032 'd' 'D' eot eot 0x0414 0x0434 0x2514 0x2514 C + 033 'f' 'F' ack ack 0x0424 0x0444 0x251c 0x251c C + 034 'g' 'G' bel bel 0x0413 0x0433 0x2524 0x2524 C + 035 'h' 'H' bs bs 0x0425 0x0445 0x252c 0x252c C + 036 'j' 'J' nl nl 0x0419 0x0439 0x253c 0x253c C + 037 'k' 'K' vt vt 0x041a 0x043a 0x2580 0x2580 C + 038 'l' 'L' ff ff 0x041b 0x043b 0x2584 0x2584 C + 039 ';' ':' nop nop 0x2569 0x2568 nop nop O + 040 ''' '"' nop nop 0x2556 0x2552 nop nop O + 041 '`' '~' nop nop 0x042e 0x0427 nop nop O + 042 lshift lshift alock lshift lshift lshift lshift lshift O + 043 '\' '|' fs fs 0x044d 0x042d 0xb0 0xb0 O + 044 'z' 'Z' sub sub 0x0417 0x0437 0xa0 0xa0 C + 045 'x' 'X' can can 0x042c 0x044c 0x2264 0x2264 C + 046 'c' 'C' etx etx 0x0426 0x0446 0x2510 0x2510 C + 047 'v' 'V' syn syn 0x0416 0x0436 0x221a 0x221a C + 048 'b' 'B' stx stx 0x0411 0x0431 0x250c 0x250c C + 049 'n' 'N' so so 0x041d 0x043d 0x258c 0x258c C + 050 'm' 'M' cr cr 0x041c 0x043c 0x2588 0x2588 C + 051 ',' '<' nop nop 0x255b 0x256a nop nop O + 052 '.' '>' nop nop 0x255d 0x256c nop nop O + 053 '/' '?' nop nop 0x255e 0xa9 nop nop O + 054 rshift rshift alock rshift rshift rshift rshift rshift O + 055 '*' '*' nl nl 0x2559 0x2559 0x253c 0x253c O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' 0x2550 0x2550 susp 0x2550 O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' 0x2565 0x2565 0x2565 0x2565 N + 072 fkey50 '8' '8' '8' 0x2566 0x2566 0x2566 0x2566 N + 073 fkey51 '9' '9' '9' 0x2567 0x2567 0x2567 0x2567 N + 074 fkey52 '-' '-' '-' 0x255c 0x255c 0x255c 0x255c N + 075 fkey53 '4' '4' '4' 0x2562 0x2562 0x2562 0x2562 N + 076 fkey54 '5' '5' '5' 0x2563 0x2563 0x2563 0x2563 N + 077 fkey55 '6' '6' '6' 0x2564 0x2564 0x2564 0x2564 N + 078 fkey56 '+' '+' '+' 0x255a 0x255a 0x255a 0x255a N + 079 fkey57 '1' '1' '1' 0x2560 0x2560 0x2560 0x2560 N + 080 fkey58 '2' '2' '2' 0x2561 0x2561 0x2561 0x2561 N + 081 fkey59 '3' '3' '3' 0x0401 0x0401 0x0401 0x0401 N + 082 fkey60 '0' '0' '0' 0x255f 0x255f 0x255f 0x255f N + 083 del '.' '.' '.' 0x255d 0x255d boot boot N + 084 alock alock alock alock alock alock alock alock O + 085 nop nop nop nop nop nop nop nop O + 086 nop nop nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl 0x2588 0x2588 0x253c 0x253c O + 090 rctrl alock rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' nop nop 0x255e 0x255e nop nop O + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 meta fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 meta fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 saver fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + 109 nop nop nop nop nop nop nop nop O + 110 nop nop nop nop nop nop nop nop O + 111 nop nop nop nop nop nop nop nop O + 112 nop nop nop nop nop nop nop nop O + 113 nop nop nop nop nop nop nop nop O + 114 nop nop nop nop nop nop nop nop O + 115 nop nop nop nop nop nop nop nop O + 116 nop nop nop nop nop nop nop nop O + 117 nop nop nop nop nop nop nop nop O + 118 nop nop nop nop nop nop nop nop O + 119 nop nop nop nop nop nop nop nop O + 120 nop nop nop nop nop nop nop nop O + 121 nop nop nop nop nop nop nop nop O + 122 nop nop nop nop nop nop nop nop O + 123 nop nop nop nop nop nop nop nop O + 124 nop nop nop nop nop nop nop nop O + 125 nop nop nop nop nop nop nop nop O + 126 nop nop nop nop nop nop nop nop O + 127 nop nop nop nop nop nop nop nop O + 128 nop nop nop nop nop nop nop nop O + 129 esc esc nop nop 0x2321 0x2321 debug nop O + 130 '1' '!' nop nop 0x2560 0x2551 nop nop O + 131 '2' '"' nul nul 0x2561 0x044e 0x2500 0x2500 O + 132 '3' '#' nop nop 0x0401 0x0451 nop nop O + 133 '4' ';' nop nop 0x2562 0x2553 nop nop O + 134 '5' '%' nop nop 0x2563 0x2554 nop nop O + 135 '6' ':' rs rs 0x2564 0x0447 0xb7 0xb7 O + 136 '7' '?' nop nop 0x2565 0x2555 nop nop O + 137 '8' '*' nop nop 0x2566 0x2559 nop nop O + 138 '9' '(' nop nop 0x2567 0x2557 nop nop O + 139 '0' ')' nop nop 0x255f 0x2558 nop nop O + 140 '-' '_' us us 0x255c 0x044a 0xf7 0xf7 O + 141 '=' '+' nop nop 0x256b 0x255a nop nop O + 142 bs bs del del 0x252c 0x252c 0x042a 0x042a O + 143 ht btab nop nop 0x2534 btab nop nop O + 144 0x0439 0x0419 dc1 dc1 0x042f 0x044f 0x2592 0x2592 C + 145 0x0446 0x0426 etb etb 0x0412 0x0432 0x2248 0x2248 C + 146 0x0443 0x0423 enq enq 0x0415 0x0435 0x2518 0x2518 C + 147 0x043a 0x041a dc2 dc2 0x0420 0x0440 0x2593 0x2593 C + 148 0x0435 0x0415 dc4 dc4 0x0422 0x0442 0x25a0 0x25a0 C + 149 0x043d 0x041d em em 0x042b 0x044b 0x2265 0x2265 C + 150 0x0433 0x0413 nak nak 0x0423 0x0443 0x2219 0x2219 C + 151 0x0448 0x0428 ht ht 0x0418 0x0438 0x2534 0x2534 C + 152 0x0449 0x0429 si si 0x041e 0x043e 0x2590 0x2590 C + 153 0x0437 0x0417 dle dle 0x041f 0x043f 0x2591 0x2591 C + 154 0x0445 0x0425 esc esc 0x0448 0x0428 0x2321 0x2321 C + 155 0x044a 0x042a gs gs 0x0449 0x0429 0xb2 0xb2 C + 156 cr cr nl nl 0x2588 0x2588 0x253c 0x253c O + 157 lctrl alock lctrl lctrl lctrl lctrl lctrl lctrl O + 158 0x0444 0x0424 soh soh 0x0410 0x0430 0x2502 0x2502 C + 159 0x044b 0x042b dc3 dc3 0x0421 0x0441 0x2320 0x2320 C + 160 0x0432 0x0412 eot eot 0x0414 0x0434 0x2514 0x2514 C + 161 0x0430 0x0410 ack ack 0x0424 0x0444 0x251c 0x251c C + 162 0x043f 0x041f bel bel 0x0413 0x0433 0x2524 0x2524 C + 163 0x0440 0x0420 bs bs 0x0425 0x0445 0x252c 0x252c C + 164 0x043e 0x041e nl nl 0x0419 0x0439 0x253c 0x253c C + 165 0x043b 0x041b vt vt 0x041a 0x043a 0x2580 0x2580 C + 166 0x0434 0x0414 ff ff 0x041b 0x043b 0x2584 0x2584 C + 167 0x0436 0x0416 nop nop 0x2569 0x2568 nop nop C + 168 0x044d 0x042d nop nop 0x2556 0x2552 nop nop C + 169 0x0451 0x0401 nop nop 0x042e 0x0427 nop nop C + 170 lshift lshift alock lshift lshift lshift lshift lshift O + 171 '\' '/' fs fs 0x044d 0x042d 0xb0 0xb0 O + 172 0x044f 0x042f sub sub 0x0417 0x0437 0xa0 0xa0 C + 173 0x0447 0x0427 can can 0x042c 0x044c 0x2264 0x2264 C + 174 0x0441 0x0421 etx etx 0x0426 0x0446 0x2510 0x2510 C + 175 0x043c 0x041c syn syn 0x0416 0x0436 0x221a 0x221a C + 176 0x0438 0x0418 stx stx 0x0411 0x0431 0x250c 0x250c C + 177 0x0442 0x0422 so so 0x041d 0x043d 0x258c 0x258c C + 178 0x044c 0x042c cr cr 0x041c 0x043c 0x2588 0x2588 C + 179 0x0431 0x0411 nop nop 0x255b 0x256a nop nop C + 180 0x044e 0x042e nop nop 0x255d 0x256c nop nop C + 181 '.' ',' nop nop 0x255e 0xa9 nop nop O + 182 rshift rshift alock rshift rshift rshift rshift rshift O + 183 '*' '*' nl nl 0x2559 0x2559 0x253c 0x253c O + 184 lalt lalt lalt lalt lalt lalt lalt lalt O + 185 ' ' ' ' nul ' ' 0x2550 0x2550 0x2550 0x2550 O + 186 clock clock clock clock clock clock clock clock O + 187 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 188 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 189 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 190 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 191 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 192 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 193 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 194 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 195 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 196 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 197 nlock nlock nlock nlock nlock nlock nlock nlock O + 198 slock slock slock slock slock slock slock slock O + 199 fkey49 '7' '7' '7' 0x2565 0x2565 0x2565 0x2565 N + 200 fkey50 '8' '8' '8' 0x2566 0x2566 0x2566 0x2566 N + 201 fkey51 '9' '9' '9' 0x2567 0x2567 0x2567 0x2567 N + 202 fkey52 '-' '-' '-' 0x255c 0x255c 0x255c 0x255c N + 203 fkey53 '4' '4' '4' 0x2562 0x2562 0x2562 0x2562 N + 204 fkey54 '5' '5' '5' 0x2563 0x2563 0x2563 0x2563 N + 205 fkey55 '6' '6' '6' 0x2564 0x2564 0x2564 0x2564 N + 206 fkey56 '+' '+' '+' 0x255a 0x255a 0x255a 0x255a N + 207 fkey57 '1' '1' '1' 0x2560 0x2560 0x2560 0x2560 N + 208 fkey58 '2' '2' '2' 0x2561 0x2561 0x2561 0x2561 N + 209 fkey59 '3' '3' '3' 0x0401 0x0401 0x0401 0x0401 N + 210 fkey60 '0' '0' '0' 0x255f 0x255f 0x255f 0x255f N + 211 del '.' '.' '.' 0x255d 0x255d boot boot N + 212 alock alock alock alock alock alock alock alock O + 213 nop nop nop nop nop nop nop nop O + 214 nop nop nop nop nop nop nop nop O + 215 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 216 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 217 cr cr nl nl 0x2588 0x2588 0x253c 0x253c O + 218 rctrl alock rctrl rctrl rctrl rctrl rctrl rctrl O + 219 '/' '/' nop nop 0x255e 0x255e nop nop O + 220 nscr pscr debug debug nop nop nop nop O + 221 ralt ralt ralt ralt ralt ralt ralt ralt O + 222 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 223 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 224 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 225 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 226 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 227 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 228 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 229 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 230 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 231 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 232 slock saver slock saver susp nop susp nop O + 233 meta fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 234 meta fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 235 saver fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 236 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/se.kbd b/share/vt/keymaps/se.kbd new file mode 100644 index 0000000..bea4cf1 --- /dev/null +++ b/share/vt/keymaps/se.kbd @@ -0,0 +1,114 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop nop nop nop nop O + 003 '2' '"' nul nul '@' '@' nul nul O + 004 '3' '#' nop nop 0xa3 nop nop nop O + 005 '4' 0xa4 nop nop '$' nop nop nop O + 006 '5' '%' nop nop nop nop nop nop O + 007 '6' '&' nop nop nop nop nop nop O + 008 '7' '/' nop nop '{' nop nop nop O + 009 '8' '(' nop nop '[' nop nop nop O + 010 '9' ')' nop nop ']' nop gs nop O + 011 '0' '=' nop nop '}' nop nop nop O + 012 '+' '?' nop nop '\' nop fs nop O + 013 0x80 '`' nop nop nop nop nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 0x20ac 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 0xe5 0xc5 nop nop '}' ']' nop nop C + 027 0xa8 '^' nop nop '~' nop nop nop O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 0xf6 0xd6 nop nop '|' '\' nop nop C + 040 0xe4 0xc4 nop nop '{' '[' nop nop C + 041 0xa7 0xbd nop nop '\' '|' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 ''' '*' nop nop nop nop nop nop O + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' ';' nop nop nop '<' nop nop O + 052 '.' ':' nop nop nop '>' nop nop O + 053 '-' '_' us nop '/' '?' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' nop nop '|' nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/si.kbd b/share/vt/keymaps/si.kbd new file mode 100644 index 0000000..f20ba2c --- /dev/null +++ b/share/vt/keymaps/si.kbd @@ -0,0 +1,117 @@ +# $FreeBSD$ +# +# Slovenian keyboard +# Blaz Zupan <blaz@amis.net> +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '~' '~' nop nop O + 003 '2' '"' nul nul 0x02c7 0x02c7 nul nul O + 004 '3' '#' nop nop '^' '^' nop nop O + 005 '4' '$' nop nop 0x02d8 0x02d8 nop nop O + 006 '5' '%' nop nop 0xb0 0xb0 nop nop O + 007 '6' '&' rs rs 0x02db 0x02db rs rs O + 008 '7' '/' nop nop '`' '`' nop nop O + 009 '8' '(' nop nop 0x02d9 0x02d9 nop nop O + 010 '9' ')' nop nop ''' ''' nop nop O + 011 '0' '=' nop nop 0x02dd 0x02dd nop nop O + 012 ''' '?' us us 0xa8 0xa8 us us O + 013 '+' '*' nop nop 0xb8 0xb8 nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 '\' '\' dc1 dc1 C + 017 'w' 'W' etb etb '|' '|' etb etb C + 018 'e' 'E' enq enq 'e' 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'z' 'Z' sub sub 'z' 'Z' sub sub C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 0x0161 0x0160 esc esc 0xf7 0xf7 esc esc C + 027 0x0111 0x0110 gs gs 0xd7 0xd7 gs gs C + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack '[' '[' ack ack C + 034 'g' 'G' bel bel ']' ']' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 0x0142 0x0142 vt vt C + 038 'l' 'L' ff ff 0x0141 0x0141 ff ff C + 039 0x010d 0x010c nop nop 0x010d 0x010c nop nop C + 040 0x0107 0x0106 nop nop 0xdf 0xdf nop nop C + 041 0xb8 0xa8 nop nop 0xb8 0xa8 nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 0x017e 0x017d fs fs 0xa4 0xa4 fs fs C + 044 'y' 'Y' em em 'y' 'Y' em em C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn '@' '@' syn syn C + 048 'b' 'B' stx stx '{' '{' stx stx C + 049 'n' 'N' so so '}' '}' so so C + 050 'm' 'M' cr cr 0xa7 0xa7 cr cr C + 051 ',' ';' nop nop ',' ';' nop nop O + 052 '.' ':' nop nop '.' ':' nop nop O + 053 '-' '_' nop nop '-' '_' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del ',' ',' ',' ',' ',' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' nop nop '<' '>' nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/sk.kbd b/share/vt/keymaps/sk.kbd new file mode 100644 index 0000000..7a23c8d --- /dev/null +++ b/share/vt/keymaps/sk.kbd @@ -0,0 +1,364 @@ +# Keyboard map for Slovak language under FreeBSD. +# Created by G. Adam Stanislav <adam@whizkidtech.net> +# +# Version 1.1 - 1999-03-21 +# +# $FreeBSD$ +# +# This map is derived from my Central European map +# (ce.iso2.kbd). The description of the CE map is next. +# After that is a description of what was added +# specifically to the Slovak map: +# +########### CE map described: ################################# +# +# This map uses the US QWERTY keyboard for its basic layout. +# It adds a "third row" to the top of the PC keyboard. To +# access the third row, press and hold the Alt key, then +# strike a key in the top row. +# +# Note that some of the third-row keys produce characters. +# Others must be followed by another keystroke resulting +# in accented characters. To print the accent mark alone, +# press the space bar after pressing and releasing the +# alt-accent mark key. +# +# In most cases I have mapped a key to a character or an +# accent mark because the key on the US QWERTY keyboard +# somewhat resembles the result. +# +# In addition to the top row, three keys on the numeric keypad +# are mapped for the use with UTF-8 when combined with the +# Alt key: The dot (del) key combined with alt will print a +# comma instead of a dot; alt-/ will show the division mark, +# and alt-* the multpilication sign. +# +# If you have an Unicode font loaded, you can see the layout here: +# +# alt-` Ë› (ogonek) and alt-~ ¸ (cedilla) +# Examples: ęąţçş +# alt-! ß (German double s) +# alt-@ ° (degree) +# alt-# ¤ (currency) +# alt-$ § (section, called paragraf in most CE languages) +# alt-% ¨ (umlaut, dve bodky) +# Examples: äüöë +# alt-^ ^ (circumflex, vokáň) +# Examples: ôâî +# alt-&  (hyphen, pomlÄka, rozdeľovacie znamienko) +# alt-* ° (ring) +# Examples: ůŮ +# alt-( Ë (Hungarian long umlaut) +# Examples: őű +# alt-) Ë™ (dot accent) +# Examples: żŻ +# alt-- ´ (acute, dĺžeň, Äárka) +# Examples: áśéÃúńźŕĺ +# alt-= ˇ (caron, mäkÄeň, háÄek) and alt-+ ˘ (breve) +# Examples: ăÄřľÄťňž +# alt-\ / (slash) +# Examples: đł +# alt-/ [on numeric keypad] ÷ +# alt-* [on numeric keypad] × +# alt-. [on numeric keypad] , +# +# This layout offers access to the entire character set of +# ISO 8859-2, used by Slovak, Czech, German, Polish, Croatian, +# Slovenian, Rumanian, Hungarian, and probably other languages, +# while remaining fully compatible with the default US QWERTY +# keyboard. +# +######### Slovak map described: ############################### +# +# In addition to everything described above, pressing +# Alt-character is a "shortcut" to the most commonly used +# accented character. For example, Alt-a produces "dlhe a". +# +# In most cases, a character is used with only one possible +# accent mark in Slovak (dlzen alebo makcen). These are the +# characters that work unambiguously with the Alt key: +# +# e r t y u i s d z c n +# +# Three characters are used with two different accent marks: +# +# o a l +# +# Using the Alt-character combination produces the most commonly +# used result, which is: +# +# Alt-o - dlhe o +# Alt-a - dlhe a +# Alt-l - makke l +# +# To produce the other possible result, press Alt and the closest +# key on the keyboard that is not used with any accent in Slovak. +# That is: +# +# Alt-p - o s vokanom +# Alt-q - a s dvoma bodkami +# Alt-k - dlhe l +# +# If you have any comments, send me email, in English or Slovak, +# to "G. Adam Stanislav" <adam@whizkidtech.net>. +# +# If you are sending email from aol.com, hotmail.com, or +# some other free provider often abused by spammers, I will not +# receive it. In that case, try <zen@buddhist.com>. +# +# Note: This keymap uses the QWERTY model which is used by +# most of the world. Slovak typewriters use the QWERTZ +# model. If you get a Z when you press the key marked Y, +# and Y when pressing Z, you have two options: +# +# 1. Change the markings on your keyboard to the QWERTY +# standard; or +# 2. Edit this file. All you have to do is change 021 +# to 044, and 044 to 021 at the beginning of the +# respective lines. This will turn your keyboard +# to the QWERTZ model. +# +# The current version of this file is kept at +# http://www.whizkidtech.net/ISO-8859-2/ +# +# New in version 1.0: You can keep holding the alt key after pressing +# an accent key. For example, pressing the acute accent followed by +# alt-s will produce acute s - in version 1.0 it just beeped. +# +# This is more compatible with the universal ISO-8859-2 key map. +# +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop 0xdf 0xdf nop nop O + 003 '2' '@' nul nul 0xb0 0xb0 nul nul O + 004 '3' '#' nop nop 0xa4 0xa4 nop nop O + 005 '4' '$' nop nop 0xa7 0xa7 nop nop O + 006 '5' '%' nop nop duml duml nop nop O + 007 '6' '^' rs rs dcir dcir rs rs O + 008 '7' '&' nop nop 0xad 0xad nop nop O + 009 '8' '*' nop nop drin drin nop nop O + 010 '9' '(' nop nop ddac ddac nop nop O + 011 '0' ')' nop nop ddot ddot nop nop O + 012 '-' '_' us us dacu dacu us us O + 013 '=' '+' nop nop dcar dbre nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 0xe4 0xc4 dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 0xe9 0xc9 enq enq C + 019 'r' 'R' dc2 dc2 0x0155 0x0154 dc2 dc2 C + 020 't' 'T' dc4 dc4 0x0165 0x0164 dc4 dc4 C + 021 'y' 'Y' em em 0xfd 0xdd em em C + 022 'u' 'U' nak nak 0xfa 0xda nak nak C + 023 'i' 'I' ht ht 0xed 0xcd ht ht C + 024 'o' 'O' si si 0xf3 0xd3 si si C + 025 'p' 'P' dle dle 0xf4 0xd4 dle dle C + 026 '[' '{' esc esc '[' '{' esc esc O + 027 ']' '}' gs gs ']' '}' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 0xe1 0xc1 soh soh C + 031 's' 'S' dc3 dc3 0x0161 0x0160 dc3 dc3 C + 032 'd' 'D' eot eot 0x010f 0x010e eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 0x013a 0x0139 vt vt C + 038 'l' 'L' ff ff 0x013e 0x013d ff ff C + 039 ';' ':' nop nop ';' ':' nop nop O + 040 ''' '"' nop nop ''' '"' nop nop O + 041 '`' '~' nop nop dogo dced nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '\' '|' fs fs dsla dsla fs fs O + 044 'z' 'Z' sub sub 0x017e 0x017d sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 0x010d 0x010c etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 0x0148 0x0147 so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' '<' nop nop ',' '<' nop nop O + 052 '.' '>' nop nop '.' '>' nop nop O + 053 '/' '?' nop nop '/' '?' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' 0xd7 0xd7 0xd7 0xd7 O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' ',' ',' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 nop nop nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' 0xf7 0xf7 0xf7 0xf7 N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + + dacu 0xb4 ( 'a' 0xe1 ) ( 'A' 0xc1 ) + ( 0xe1 0xe1 ) ( 0xc1 0xc1 ) + ( 'c' 0x0107 ) ( 'C' 0x0106 ) + ( 0x010d 0x0107 ) ( 0x010c 0x0106 ) + ( 'e' 0xe9 ) ( 'E' 0xc9 ) + ( 0xe9 0xe9 ) ( 0xc9 0xc9 ) + ( 'i' 0xed ) ( 'I' 0xcd ) + ( 0xed 0xed ) ( 0xcd 0xcd ) + ( 'l' 0x013a ) ( 'L' 0x0139 ) + ( 0x013e 0x013a ) ( 0x013d 0x0139 ) + ( 'n' 0x0144 ) ( 'N' 0x0143 ) + ( 0x0148 0x0144 ) ( 0x0147 0x0143 ) + ( 'o' 0xf3 ) ( 'O' 0xd3 ) + ( 0xf3 0xf3 ) ( 0xd3 0xd3 ) + ( 'r' 0x0155 ) ( 'R' 0x0154 ) + ( 0x0155 0x0155 ) ( 0x0154 0x0154 ) + ( 's' 0x015b ) ( 'S' 0x015a ) + ( 0x0161 0x015b ) ( 0x0160 0x015a ) + ( 'u' 0xfa ) ( 'U' 0xda ) + ( 0xfa 0xfa ) ( 0xda 0xda ) + ( 'y' 0xfd ) ( 'Y' 0xdd ) + ( 0xfd 0xfd ) ( 0xdd 0xdd ) + ( 'z' 0x017a ) ( 'Z' 0x0179 ) + ( 0x017e 0x017a ) ( 0x017d 0x0179 ) + + dcir '^' ( 'a' 0xe2 ) ( 'A' 0xc2 ) + ( 0xe1 0xe2 ) ( 0xc1 0xc2 ) + ( 'i' 0xee ) ( 'I' 0xce ) + ( 0xed 0xee ) ( 0xcd 0xce ) + ( 'o' 0xf4 ) ( 'O' 0xd4 ) + ( 0xf3 0xf4 ) ( 0xd3 0xd4 ) + + dbre 0x02d8 ( 'a' 0x0103 ) ( 'A' 0x0102 ) + ( 0xe1 0x0103 ) ( 0xc1 0x0102 ) + ( 'c' 0x010d ) ( 'C' 0x010c ) + ( 0x010d 0x010d ) ( 0x010c 0x010c ) + ( 'd' 0x010f ) ( 'D' 0x010e ) + ( 0x010f 0x010f ) ( 0x010e 0x010e ) + ( 'e' 0x011b ) ( 'E' 0x011a ) + ( 0xe9 0x011b ) ( 0xc9 0x011a ) + ( 'l' 0x013e ) ( 'L' 0x013d ) + ( 0x013e 0x013e ) ( 0x013d 0x013d ) + ( 'n' 0x0148 ) ( 'N' 0x0147 ) + ( 0x0148 0x0148 ) ( 0x0147 0x0147 ) + ( 'r' 0x0159 ) ( 'R' 0x0158 ) + ( 0x0155 0x0159 ) ( 0x0154 0x0158 ) + ( 's' 0x0161 ) ( 'S' 0x0160 ) + ( 0x0161 0x0161 ) ( 0x0160 0x0160 ) + ( 't' 0x0165 ) ( 'T' 0x0164 ) + ( 0x0165 0x0165 ) ( 0x0164 0x0164 ) + ( 'z' 0x017e ) ( 'Z' 0x017d ) + ( 0x017e 0x017e ) ( 0x017d 0x017d ) + + ddot 0x02d9 ( 'z' 0x017c ) ( 'Z' 0x017b ) + ( 0x017e 0x017c ) ( 0x017d 0x017b ) + + duml 0xa8 ( 'a' 0xe4 ) ( 'A' 0xc4 ) + ( 0xe1 0xe4 ) ( 0xc1 0xc4 ) + ( 'e' 0xeb ) ( 'E' 0xcb ) + ( 0xe9 0xeb ) ( 0xc9 0xcb ) + ( 'o' 0xf6 ) ( 'O' 0xd6 ) + ( 0xf3 0xf6 ) ( 0xd3 0xd6 ) + ( 'u' 0xfc ) ( 'U' 0xdc ) + ( 0xfa 0xfc ) ( 0xda 0xdc ) + + dsla '/' ( 'd' 0x0111 ) ( 'D' 0x0110 ) + ( 0x010f 0x0111 ) ( 0x010e 0x0110 ) + ( 'l' 0x0142 ) ( 'L' 0x0141 ) + ( 0x013e 0x0142 ) ( 0x013d 0x0141 ) + + drin 0xb0 ( 'u' 0x016f ) ( 'U' 0x016e ) + ( 0xfa 0x016f ) ( 0xda 0x016e ) + + dced 0xb8 ( 'a' 0x0105 ) ( 'A' 0x0104 ) + ( 0xe1 0x0105 ) ( 0xc1 0x0104 ) + ( 'c' 0xe7 ) ( 'C' 0xc7 ) + ( 0x010d 0xe7 ) ( 0x010c 0xc7 ) + ( 'e' 0x0119 ) ( 'E' 0x0118 ) + ( 0xe9 0x0119 ) ( 0xc9 0x0118 ) + ( 's' 0x015f ) ( 'S' 0x015e ) + ( 0x0161 0x015f ) ( 0x0160 0x015e ) + ( 't' 0x0163 ) ( 'T' 0x0162 ) + ( 0x0165 0x0163 ) ( 0x0164 0x0162 ) + + ddac 0x02dd ( 'o' 0x0151 ) ( 'O' 0x0150 ) + ( 0xf3 0x0151 ) ( 0xd3 0x0150 ) + ( 'u' 0x0171 ) ( 'U' 0x0170 ) + ( 0xfa 0x0171 ) ( 0xda 0x0170 ) + + dogo 0x02db ( 'a' 0x0105 ) ( 'A' 0x0104 ) + ( 0xe1 0x0105 ) ( 0xc1 0x0104 ) + ( 'c' 0xe7 ) ( 'C' 0xc7 ) + ( 0x010d 0xe7 ) ( 0x010c 0xc7 ) + ( 'e' 0x0119 ) ( 'E' 0x0118 ) + ( 0xe9 0x0119 ) ( 0xc9 0x0118 ) + ( 's' 0x015f ) ( 'S' 0x015e ) + ( 0x0161 0x015f ) ( 0x0160 0x015e ) + ( 't' 0x0163 ) ( 'T' 0x0162 ) + ( 0x0165 0x0163 ) ( 0x0164 0x0162 ) + + dcar 0x02c7 ( 'a' 0x0103 ) ( 'A' 0x0102 ) + ( 0xe1 0x0103 ) ( 0xc1 0x0102 ) + ( 'c' 0x010d ) ( 'C' 0x010c ) + ( 0x010d 0x010d ) ( 0x010c 0x010c ) + ( 'd' 0x010f ) ( 'D' 0x010e ) + ( 0x010f 0x010f ) ( 0x010e 0x010e ) + ( 'e' 0x011b ) ( 'E' 0x011a ) + ( 0xe9 0x011b ) ( 0xc9 0x011a ) + ( 'l' 0x013e ) ( 'L' 0x013d ) + ( 0x013e 0x013e ) ( 0x013d 0x013d ) + ( 'n' 0x0148 ) ( 'N' 0x0147 ) + ( 0x0148 0x0148 ) ( 0x0147 0x0147 ) + ( 'r' 0x0159 ) ( 'R' 0x0158 ) + ( 0x0155 0x0159 ) ( 0x0154 0x0158 ) + ( 's' 0x0161 ) ( 'S' 0x0160 ) + ( 0x0161 0x0161 ) ( 0x0160 0x0160 ) + ( 't' 0x0165 ) ( 'T' 0x0164 ) + ( 0x0165 0x0165 ) ( 0x0164 0x0164 ) + ( 'z' 0x017e ) ( 'Z' 0x017d ) + ( 0x017e 0x017e ) ( 0x017d 0x017d ) + diff --git a/share/vt/keymaps/tr.kbd b/share/vt/keymaps/tr.kbd new file mode 100644 index 0000000..b9cf886 --- /dev/null +++ b/share/vt/keymaps/tr.kbd @@ -0,0 +1,129 @@ +# Turkish keymap by Evren Yurtesen (09-12-1999) +# +# $FreeBSD$ +# +# For suggestions and corrections please contact with me. +# +# Evren Yurtesen +# yurtesen@ispro.net.tr +# +# Mobile : +358 40 5185215 +# +# Work Address : ISPRO Internet Servisleri +# 18 Sokak No:12 +# PK. 35290 Guzelyali/Izmir/TURKEY +# +# Work Tel : +90 232 2463992 +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '>' nop nop nop O + 003 '2' ''' nul nul 0xa3 nop nul nul O + 004 '3' '^' nop nop '#' nop nop nop O + 005 '4' '+' nop nop '$' nop nop nop O + 006 '5' '%' nop nop 0xbd nop nop nop O + 007 '6' '&' nop nop nop nop nop nop O + 008 '7' '/' nop nop '{' nop nop nop O + 009 '8' '(' nop nop '[' nop nop nop O + 010 '9' ')' nop nop ']' nop gs nop O + 011 '0' '=' nop nop '}' nop nop nop O + 012 '*' '?' nop nop '\' nop fs nop O + 013 '-' '_' nop nop nop nop nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 '@' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 'e' 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 0x0131 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 0x011f 0x011e nop nop 0xa8 0x011e nop nop C + 027 0xfc 0xdc nop nop '~' nop nop nop C + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 0xe6 0xc6 soh soh C + 031 's' 'S' dc3 dc3 0xdf 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 0x015f 0x015e nop nop 0xb4 0x015e nop nop C + 040 'i' 0x0130 nop nop 'i' 0x0130 nop nop C + 041 '"' 0xe9 nop nop '<' nop nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 ',' ';' nop nop '`' nop nop nop O + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 0xf6 0xd6 nop nop 0xf6 0xd6 nop nop C + 052 0xe7 0xc7 nop nop 0xe7 0xc7 nop nop C + 053 '.' ':' us nop nop nop nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '<' '>' nop nop '|' nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/ua.kbd b/share/vt/keymaps/ua.kbd index a93800f..d031f1d 100644 --- a/share/vt/keymaps/ua.kbd +++ b/share/vt/keymaps/ua.kbd @@ -19,43 +19,43 @@ 013 '=' '+' nop nop '=' '+' nop nop O 014 bs bs del del bs bs del del O 015 ht btab nop nop btab btab nop nop O - 016 'q' 'Q' dc1 dc1 1081 1049 dc1 dc1 C - 017 'w' 'W' etb etb 1094 1062 etb etb C - 018 'e' 'E' enq enq 1091 1059 enq enq C - 019 'r' 'R' dc2 dc2 1082 1050 dc2 dc2 C - 020 't' 'T' dc4 dc4 1077 1045 dc4 dc4 C - 021 'y' 'Y' em em 1085 1053 em em C - 022 'u' 'U' nak nak 1075 1043 nak nak C - 023 'i' 'I' ht ht 1096 1064 ht ht C - 024 'o' 'O' si si 1097 1065 si si C - 025 'p' 'P' dle dle 1079 1047 dle dle C - 026 '[' '{' esc esc 1093 1061 esc esc O - 027 ']' '}' gs gs 1111 1031 1098 1066 O + 016 'q' 'Q' dc1 dc1 0x0439 0x0419 dc1 dc1 C + 017 'w' 'W' etb etb 0x0446 0x0426 etb etb C + 018 'e' 'E' enq enq 0x0443 0x0423 enq enq C + 019 'r' 'R' dc2 dc2 0x043a 0x041a dc2 dc2 C + 020 't' 'T' dc4 dc4 0x0435 0x0415 dc4 dc4 C + 021 'y' 'Y' em em 0x043d 0x041d em em C + 022 'u' 'U' nak nak 0x0433 0x0413 nak nak C + 023 'i' 'I' ht ht 0x0448 0x0428 ht ht C + 024 'o' 'O' si si 0x0449 0x0429 si si C + 025 'p' 'P' dle dle 0x0437 0x0417 dle dle C + 026 '[' '{' esc esc 0x0445 0x0425 esc esc O + 027 ']' '}' gs gs 0x0457 0x0407 0x044a 0x042a O 028 cr cr nl nl cr cr nl nl O 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O - 030 'a' 'A' soh soh 1092 1060 soh soh C - 031 's' 'S' dc3 dc3 1110 1030 1099 1067 C - 032 'd' 'D' eot eot 1074 1042 eot eot C - 033 'f' 'F' ack ack 1072 1040 ack ack C - 034 'g' 'G' bel bel 1087 1055 bel bel C - 035 'h' 'H' bs bs 1088 1056 bs bs C - 036 'j' 'J' nl nl 1086 1054 nl nl C - 037 'k' 'K' vt vt 1083 1051 vt vt C - 038 'l' 'L' ff ff 1076 1044 ff ff C - 039 ';' ':' nop nop 1078 1046 nop nop O - 040 ''' '"' nop nop 1108 1028 1101 1069 O - 041 '`' '~' nop nop 1169 1168 1105 1025 O + 030 'a' 'A' soh soh 0x0444 0x0424 soh soh C + 031 's' 'S' dc3 dc3 0x0456 0x0406 0x044b 0x042b C + 032 'd' 'D' eot eot 0x0432 0x0412 eot eot C + 033 'f' 'F' ack ack 0x0430 0x0410 ack ack C + 034 'g' 'G' bel bel 0x043f 0x041f bel bel C + 035 'h' 'H' bs bs 0x0440 0x0420 bs bs C + 036 'j' 'J' nl nl 0x043e 0x041e nl nl C + 037 'k' 'K' vt vt 0x043b 0x041b vt vt C + 038 'l' 'L' ff ff 0x0434 0x0414 ff ff C + 039 ';' ':' nop nop 0x0436 0x0416 nop nop O + 040 ''' '"' nop nop 0x0454 0x0404 0x044d 0x042d O + 041 '`' '~' nop nop 0x0491 0x0490 0x0451 0x0401 O 042 lshift lshift lshift lshift lshift lshift lshift lshift O 043 '\' '|' fs fs '\' '|' fs fs O - 044 'z' 'Z' sub sub 1103 1071 sub sub C - 045 'x' 'X' can can 1095 1063 can can C - 046 'c' 'C' etx etx 1089 1057 etx etx C - 047 'v' 'V' syn syn 1084 1052 syn syn C - 048 'b' 'B' stx stx 1080 1048 stx stx C - 049 'n' 'N' so so 1090 1058 so so C - 050 'm' 'M' cr cr 1100 1068 cr cr C - 051 ',' '<' nop nop 1073 1041 nop nop O - 052 '.' '>' nop nop 1102 1070 nop nop O + 044 'z' 'Z' sub sub 0x044f 0x042f sub sub C + 045 'x' 'X' can can 0x0447 0x0427 can can C + 046 'c' 'C' etx etx 0x0441 0x0421 etx etx C + 047 'v' 'V' syn syn 0x043c 0x041c syn syn C + 048 'b' 'B' stx stx 0x0438 0x0418 stx stx C + 049 'n' 'N' so so 0x0442 0x0422 so so C + 050 'm' 'M' cr cr 0x044c 0x042c cr cr C + 051 ',' '<' nop nop 0x0431 0x0411 nop nop O + 052 '.' '>' nop nop 0x044e 0x042e nop nop O 053 '/' '?' nop nop '/' '?' nop nop O 054 rshift rshift rshift rshift rshift rshift rshift rshift O 055 '*' '*' nl nl '*' '*' nl nl O @@ -148,43 +148,43 @@ 141 '=' '+' nop nop '=' '+' nop nop O 142 bs bs del del bs bs del del O 143 ht btab nop nop btab btab nop nop O - 144 1081 1049 dc1 dc1 'q' 'Q' dc1 dc1 C - 145 1094 1062 etb etb 'w' 'W' etb etb C - 146 1091 1059 enq enq 'e' 'E' enq enq C - 147 1082 1050 dc2 dc2 'r' 'R' dc2 dc2 C - 148 1077 1045 dc4 dc4 't' 'T' dc4 dc4 C - 149 1085 1053 em em 'y' 'Y' em em C - 150 1075 1043 nak nak 'u' 'U' nak nak C - 151 1096 1064 ht ht 'i' 'I' ht ht C - 152 1097 1065 si si 'o' 'O' si si C - 153 1079 1047 dle dle 'p' 'P' dle dle C - 154 1093 1061 esc esc '[' '{' esc esc C - 155 1111 1031 gs gs ']' '}' 1098 1066 C + 144 0x0439 0x0419 dc1 dc1 'q' 'Q' dc1 dc1 C + 145 0x0446 0x0426 etb etb 'w' 'W' etb etb C + 146 0x0443 0x0423 enq enq 'e' 'E' enq enq C + 147 0x043a 0x041a dc2 dc2 'r' 'R' dc2 dc2 C + 148 0x0435 0x0415 dc4 dc4 't' 'T' dc4 dc4 C + 149 0x043d 0x041d em em 'y' 'Y' em em C + 150 0x0433 0x0413 nak nak 'u' 'U' nak nak C + 151 0x0448 0x0428 ht ht 'i' 'I' ht ht C + 152 0x0449 0x0429 si si 'o' 'O' si si C + 153 0x0437 0x0417 dle dle 'p' 'P' dle dle C + 154 0x0445 0x0425 esc esc '[' '{' esc esc C + 155 0x0457 0x0407 gs gs ']' '}' 0x044a 0x042a C 156 cr cr nl nl cr cr nl nl O 157 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O - 158 1092 1060 soh soh 'a' 'A' soh soh C - 159 1110 1030 dc3 dc3 's' 'S' 1099 1067 C - 160 1074 1042 eot eot 'd' 'D' eot eot C - 161 1072 1040 ack ack 'f' 'F' ack ack C - 162 1087 1055 bel bel 'g' 'G' bel bel C - 163 1088 1056 bs bs 'h' 'H' bs bs C - 164 1086 1054 nl nl 'j' 'J' nl nl C - 165 1083 1051 vt vt 'k' 'K' vt vt C - 166 1076 1044 ff ff 'l' 'L' ff ff C - 167 1078 1046 nop nop ';' ':' nop nop C - 168 1108 1028 nop nop ''' '"' 1101 1069 C - 169 1169 1168 nop nop '`' '~' 1105 1025 C + 158 0x0444 0x0424 soh soh 'a' 'A' soh soh C + 159 0x0456 0x0406 dc3 dc3 's' 'S' 0x044b 0x042b C + 160 0x0432 0x0412 eot eot 'd' 'D' eot eot C + 161 0x0430 0x0410 ack ack 'f' 'F' ack ack C + 162 0x043f 0x041f bel bel 'g' 'G' bel bel C + 163 0x0440 0x0420 bs bs 'h' 'H' bs bs C + 164 0x043e 0x041e nl nl 'j' 'J' nl nl C + 165 0x043b 0x041b vt vt 'k' 'K' vt vt C + 166 0x0434 0x0414 ff ff 'l' 'L' ff ff C + 167 0x0436 0x0416 nop nop ';' ':' nop nop C + 168 0x0454 0x0404 nop nop ''' '"' 0x044d 0x042d C + 169 0x0491 0x0490 nop nop '`' '~' 0x0451 0x0401 C 170 lshift lshift lshift lshift lshift lshift lshift lshift O 171 '\' '|' fs fs '\' '|' fs fs O - 172 1103 1071 sub sub 'z' 'Z' sub sub C - 173 1095 1063 can can 'x' 'X' can can C - 174 1089 1057 etx etx 'c' 'C' etx etx C - 175 1084 1052 syn syn 'v' 'V' syn syn C - 176 1080 1048 stx stx 'b' 'B' stx stx C - 177 1090 1058 so so 'n' 'N' so so C - 178 1100 1068 cr cr 'm' 'M' cr cr C - 179 1073 1041 nop nop ',' '<' nop nop C - 180 1102 1070 nop nop '.' '>' nop nop C + 172 0x044f 0x042f sub sub 'z' 'Z' sub sub C + 173 0x0447 0x0427 can can 'x' 'X' can can C + 174 0x0441 0x0421 etx etx 'c' 'C' etx etx C + 175 0x043c 0x041c syn syn 'v' 'V' syn syn C + 176 0x0438 0x0418 stx stx 'b' 'B' stx stx C + 177 0x0442 0x0422 so so 'n' 'N' so so C + 178 0x044c 0x042c cr cr 'm' 'M' cr cr C + 179 0x0431 0x0411 nop nop ',' '<' nop nop C + 180 0x044e 0x042e nop nop '.' '>' nop nop C 181 '/' '?' nop nop '/' '?' nop nop O 182 rshift rshift rshift rshift rshift rshift rshift rshift O 183 '*' '*' nl nl '*' '*' nl nl O diff --git a/share/vt/keymaps/ua.shift.alt.kbd b/share/vt/keymaps/ua.shift.alt.kbd index edf1f25..cef2c27 100644 --- a/share/vt/keymaps/ua.shift.alt.kbd +++ b/share/vt/keymaps/ua.shift.alt.kbd @@ -1,13 +1,13 @@ # $FreeBSD$ # -# keyboard mapping for both Ukrainian and Russian languages, koi8-u charset. +# keyboard mapping for both Ukrainian and Russian languages # by sia@lot.cs.kiev.ua # based on ru.koi8-r.kbd by ache@FreeBSD.org # some additions by petr@i.am and kunia@i.am # # it has 'i', 'ye','yi',"g'" at positions of '-','=','\','`'; # ->`1234567890-=\<- -# ->1234567890¦¤§<- +# ->Ò‘1234567890ієї<- # Lwin,Rwin=Meta, Menu=Screensaver # PrScr=NextScreen, Shift+PrScr=PrevScreen # Shift+Insert=paste @@ -18,61 +18,61 @@ 000 nop nop nop nop nop nop nop nop O 001 esc esc nop nop esc esc debug nop O 002 '1' '!' nop nop '1' '!' nop nop O - 003 '2' '@' nul nul '2' '"' 9472 9472 O + 003 '2' '@' nul nul '2' '"' 0x2500 0x2500 O 004 '3' '#' nop nop '3' ''' nop nop O 005 '4' '$' nop nop '4' ';' nop nop O 006 '5' '%' nop nop '5' ':' nop nop O - 007 '6' '^' rs rs '6' ',' 183 183 O + 007 '6' '^' rs rs '6' ',' 0xb7 0xb7 O 008 '7' '&' nop nop '7' '.' nop nop O 009 '8' '*' nop nop '8' '*' nop nop O 010 '9' '(' nop nop '9' '(' nop nop O 011 '0' ')' nop nop '0' ')' nop nop O - 012 '-' '_' ns ns 1110 1030 247 247 O - 013 '=' '+' nop nop 1108 1028 nop nop O - 014 bs bs del del bs bs 1066 1066 O + 012 '-' '_' ns ns 0x0456 0x0406 0xf7 0xf7 O + 013 '=' '+' nop nop 0x0454 0x0404 nop nop O + 014 bs bs del del bs bs 0x042a 0x042a O 015 ht btab nop nop ht btab nop nop O - 016 'q' 'Q' dc1 dc1 1081 1049 9618 9618 C - 017 'w' 'W' etb etb 1094 1062 8776 8776 C - 018 'e' 'E' enq enq 1091 1059 9496 9496 C - 019 'r' 'R' dc2 dc2 1082 1050 9619 9619 C - 020 't' 'T' dc4 dc4 1077 1045 9632 9632 C - 021 'y' 'Y' em em 1085 1053 8805 8805 C - 022 'u' 'U' nak nak 1075 1043 8729 8729 C - 023 'i' 'I' ht ht 1096 1064 9524 9524 C - 024 'o' 'O' si si 1097 1065 9616 9616 C - 025 'p' 'P' dle dle 1079 1047 9617 9617 C - 026 '[' '{' esc esc 1093 1061 8993 8993 O - 027 ']' '}' gs gs 1098 1066 178 178 O - 028 cr cr nl nl cr cr 9532 9532 O + 016 'q' 'Q' dc1 dc1 0x0439 0x0419 0x2592 0x2592 C + 017 'w' 'W' etb etb 0x0446 0x0426 0x2248 0x2248 C + 018 'e' 'E' enq enq 0x0443 0x0423 0x2518 0x2518 C + 019 'r' 'R' dc2 dc2 0x043a 0x041a 0x2593 0x2593 C + 020 't' 'T' dc4 dc4 0x0435 0x0415 0x25a0 0x25a0 C + 021 'y' 'Y' em em 0x043d 0x041d 0x2265 0x2265 C + 022 'u' 'U' nak nak 0x0433 0x0413 0x2219 0x2219 C + 023 'i' 'I' ht ht 0x0448 0x0428 0x2534 0x2534 C + 024 'o' 'O' si si 0x0449 0x0429 0x2590 0x2590 C + 025 'p' 'P' dle dle 0x0437 0x0417 0x2591 0x2591 C + 026 '[' '{' esc esc 0x0445 0x0425 0x2321 0x2321 O + 027 ']' '}' gs gs 0x044a 0x042a 0xb2 0xb2 O + 028 cr cr nl nl cr cr 0x253c 0x253c O 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O - 030 'a' 'A' soh soh 1092 1060 9474 9474 C - 031 's' 'S' dc3 dc3 1099 1067 8992 8992 C - 032 'd' 'D' eot eot 1074 1042 9492 9492 C - 033 'f' 'F' ack ack 1072 1040 9500 9500 C - 034 'g' 'G' bel bel 1087 1055 9508 9508 C - 035 'h' 'H' bs bs 1088 1056 9516 9516 C - 036 'j' 'J' nl nl 1086 1054 9532 9532 C - 037 'k' 'K' vt vt 1083 1051 9600 9600 C - 038 'l' 'L' ff ff 1076 1044 9604 9604 C - 039 ';' ':' nop nop 1078 1046 nop nop O - 040 ''' '"' nop nop 1101 1069 nop nop O - 041 '`' '~' nop nop 1169 1168 nop nop O + 030 'a' 'A' soh soh 0x0444 0x0424 0x2502 0x2502 C + 031 's' 'S' dc3 dc3 0x044b 0x042b 0x2320 0x2320 C + 032 'd' 'D' eot eot 0x0432 0x0412 0x2514 0x2514 C + 033 'f' 'F' ack ack 0x0430 0x0410 0x251c 0x251c C + 034 'g' 'G' bel bel 0x043f 0x041f 0x2524 0x2524 C + 035 'h' 'H' bs bs 0x0440 0x0420 0x252c 0x252c C + 036 'j' 'J' nl nl 0x043e 0x041e 0x253c 0x253c C + 037 'k' 'K' vt vt 0x043b 0x041b 0x2580 0x2580 C + 038 'l' 'L' ff ff 0x0434 0x0414 0x2584 0x2584 C + 039 ';' ':' nop nop 0x0436 0x0416 nop nop O + 040 ''' '"' nop nop 0x044d 0x042d nop nop O + 041 '`' '~' nop nop 0x0491 0x0490 nop nop O 042 lshift lshift lshift lshift lshift lshift lshift lshift O - 043 '\' '|' fs fs 1111 1031 176 176 O - 044 'z' 'Z' sub sub 1103 1071 160 160 C - 045 'x' 'X' can can 1095 1063 8804 8804 C - 046 'c' 'C' etx etx 1089 1057 9488 9488 C - 047 'v' 'V' syn syn 1084 1052 8730 8730 C - 048 'b' 'B' stx stx 1080 1048 9484 9484 C - 049 'n' 'N' so so 1090 1058 9612 9612 C - 050 'm' 'M' cr cr 1100 1068 9608 9608 C - 051 ',' '<' nop nop 1073 1041 nop nop O - 052 '.' '>' nop nop 1102 1070 nop nop O - 053 '/' '?' nop nop 1105 1025 nop nop O + 043 '\' '|' fs fs 0x0457 0x0407 0xb0 0xb0 O + 044 'z' 'Z' sub sub 0x044f 0x042f 0xa0 0xa0 C + 045 'x' 'X' can can 0x0447 0x0427 0x2264 0x2264 C + 046 'c' 'C' etx etx 0x0441 0x0421 0x2510 0x2510 C + 047 'v' 'V' syn syn 0x043c 0x041c 0x221a 0x221a C + 048 'b' 'B' stx stx 0x0438 0x0418 0x250c 0x250c C + 049 'n' 'N' so so 0x0442 0x0422 0x258c 0x258c C + 050 'm' 'M' cr cr 0x044c 0x042c 0x2588 0x2588 C + 051 ',' '<' nop nop 0x0431 0x0411 nop nop O + 052 '.' '>' nop nop 0x044e 0x042e nop nop O + 053 '/' '?' nop nop 0x0451 0x0401 nop nop O 054 rshift rshift rshift rshift rshift rshift rshift rshift O - 055 '*' '*' nl nl '*' '*' 9532 9532 O + 055 '*' '*' nl nl '*' '*' 0x253c 0x253c O 056 lalt lalt lalt lalt lalt lalt lalt lalt O - 057 ' ' ' ' ' ' ' ' ' ' ' ' 9552 9552 O + 057 ' ' ' ' ' ' ' ' ' ' ' ' 0x2550 0x2550 O 058 alock clock clock clock clock clock clock clock O 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O @@ -86,27 +86,27 @@ 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O 069 nlock nlock nlock nlock nlock nlock nlock nlock O 070 slock slock slock slock slock slock slock slock O - 071 fkey49 '7' '7' '7' 1031 1031 1031 1031 N - 072 fkey50 '8' '8' '8' 9574 9574 9574 9574 N - 073 fkey51 '9' '9' '9' 9575 9575 9575 9575 N - 074 fkey52 '-' '-' '-' 1169 1169 1169 1169 N - 075 fkey53 '4' '4' '4' 1028 1028 1028 1028 N - 076 fkey48 '5' '5' '5' 9571 9571 9571 9571 N - 077 fkey55 '6' '6' '6' 1030 1030 1030 1030 N - 078 fkey56 '+' '+' '+' 9562 9562 9562 9562 N - 079 fkey57 '1' '1' '1' 9568 9568 9568 9568 N - 080 fkey58 '2' '2' '2' 9569 9569 9569 9569 N - 081 fkey59 '3' '3' '3' 1025 1025 1025 1025 N - 082 fkey60 '0' '0' '0' 9567 9567 9567 9567 N - 083 fkey54 '.' del del 1066 1066 boot halt N + 071 fkey49 '7' '7' '7' 0x0407 0x0407 0x0407 0x0407 N + 072 fkey50 '8' '8' '8' 0x2566 0x2566 0x2566 0x2566 N + 073 fkey51 '9' '9' '9' 0x2567 0x2567 0x2567 0x2567 N + 074 fkey52 '-' '-' '-' 0x0491 0x0491 0x0491 0x0491 N + 075 fkey53 '4' '4' '4' 0x0404 0x0404 0x0404 0x0404 N + 076 fkey48 '5' '5' '5' 0x2563 0x2563 0x2563 0x2563 N + 077 fkey55 '6' '6' '6' 0x0406 0x0406 0x0406 0x0406 N + 078 fkey56 '+' '+' '+' 0x255a 0x255a 0x255a 0x255a N + 079 fkey57 '1' '1' '1' 0x2560 0x2560 0x2560 0x2560 N + 080 fkey58 '2' '2' '2' 0x2561 0x2561 0x2561 0x2561 N + 081 fkey59 '3' '3' '3' 0x0401 0x0401 0x0401 0x0401 N + 082 fkey60 '0' '0' '0' 0x255f 0x255f 0x255f 0x255f N + 083 fkey54 '.' del del 0x042a 0x042a boot halt N 084 alock alock alock alock alock alock alock alock O 085 nop nop nop nop nop nop nop nop O 086 nop nop nop nop nop nop nop nop O 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O - 089 cr cr nl nl 9608 9608 9532 9532 O + 089 cr cr nl nl 0x2588 0x2588 0x253c 0x253c O 090 alock rctrl rctrl rctrl rctrl rctrl rctrl rctrl O - 091 '/' '/' nop nop 9566 9566 nop nop O + 091 '/' '/' nop nop 0x255e 0x255e nop nop O 092 nscr pscr debug nop nop nop nop nop O 093 ralt ralt ralt ralt ralt ralt ralt ralt O 094 fkey49 fkey49 fkey69 fkey49 fkey49 fkey49 fkey49 fkey49 O @@ -146,61 +146,61 @@ 128 nop nop nop nop nop nop nop nop O 129 esc esc nop nop esc esc debug nop O 130 '1' '!' nop nop '1' '!' nop nop O - 131 '2' '"' nul nul '2' '@' 9472 9472 O + 131 '2' '"' nul nul '2' '@' 0x2500 0x2500 O 132 '3' ''' nop nop '3' '#' nop nop O 133 '4' ';' nop nop '4' '$' nop nop O 134 '5' ':' nop nop '5' '%' nop nop O - 135 '6' ',' rs rs '6' '^' 183 183 O + 135 '6' ',' rs rs '6' '^' 0xb7 0xb7 O 136 '7' '.' nop nop '7' '&' nop nop O 137 '8' '*' nop nop '8' '*' nop nop O 138 '9' '(' nop nop '9' '(' nop nop O 139 '0' ')' nop nop '0' ')' nop nop O - 140 1110 1030 ns ns '-' '_' 247 247 O - 141 1108 1028 nop nop '=' '+' nop nop O - 142 bs bs del del bs bs 1066 1066 O + 140 0x0456 0x0406 ns ns '-' '_' 0xf7 0xf7 O + 141 0x0454 0x0404 nop nop '=' '+' nop nop O + 142 bs bs del del bs bs 0x042a 0x042a O 143 ht btab nop nop ht btab nop nop O - 144 1081 1049 dc1 dc1 'q' 'Q' 9618 9618 C - 145 1094 1062 etb etb 'w' 'W' 8776 8776 C - 146 1091 1059 enq enq 'e' 'E' 9496 9496 C - 147 1082 1050 dc2 dc2 'r' 'R' 9619 9619 C - 148 1077 1045 dc4 dc4 't' 'T' 9632 9632 C - 149 1085 1053 em em 'y' 'Y' 8805 8805 C - 150 1075 1043 nak nak 'u' 'U' 8729 8729 C - 151 1096 1064 ht ht 'i' 'I' 9524 9524 C - 152 1097 1065 si si 'o' 'O' 9616 9616 C - 153 1079 1047 dle dle 'p' 'P' 9617 9617 C - 154 1093 1061 esc esc '[' '{' 8993 8993 C - 155 1098 1066 gs gs ']' '}' 178 178 C - 156 cr cr nl nl cr cr 9532 9532 O + 144 0x0439 0x0419 dc1 dc1 'q' 'Q' 0x2592 0x2592 C + 145 0x0446 0x0426 etb etb 'w' 'W' 0x2248 0x2248 C + 146 0x0443 0x0423 enq enq 'e' 'E' 0x2518 0x2518 C + 147 0x043a 0x041a dc2 dc2 'r' 'R' 0x2593 0x2593 C + 148 0x0435 0x0415 dc4 dc4 't' 'T' 0x25a0 0x25a0 C + 149 0x043d 0x041d em em 'y' 'Y' 0x2265 0x2265 C + 150 0x0433 0x0413 nak nak 'u' 'U' 0x2219 0x2219 C + 151 0x0448 0x0428 ht ht 'i' 'I' 0x2534 0x2534 C + 152 0x0449 0x0429 si si 'o' 'O' 0x2590 0x2590 C + 153 0x0437 0x0417 dle dle 'p' 'P' 0x2591 0x2591 C + 154 0x0445 0x0425 esc esc '[' '{' 0x2321 0x2321 C + 155 0x044a 0x042a gs gs ']' '}' 0xb2 0xb2 C + 156 cr cr nl nl cr cr 0x253c 0x253c O 157 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O - 158 1092 1060 soh soh 'a' 'A' 9474 9474 C - 159 1099 1067 dc3 dc3 's' 'S' 8992 8992 C - 160 1074 1042 eot eot 'd' 'D' 9492 9492 C - 161 1072 1040 ack ack 'f' 'F' 9500 9500 C - 162 1087 1055 bel bel 'g' 'G' 9508 9508 C - 163 1088 1056 bs bs 'h' 'H' 9516 9516 C - 164 1086 1054 nl nl 'j' 'J' 9532 9532 C - 165 1083 1051 vt vt 'k' 'K' 9600 9600 C - 166 1076 1044 ff ff 'l' 'L' 9604 9604 C - 167 1078 1046 nop nop ';' ':' nop nop C - 168 1101 1069 nop nop ''' '"' nop nop C - 169 1169 1168 nop nop '`' '~' nop nop C + 158 0x0444 0x0424 soh soh 'a' 'A' 0x2502 0x2502 C + 159 0x044b 0x042b dc3 dc3 's' 'S' 0x2320 0x2320 C + 160 0x0432 0x0412 eot eot 'd' 'D' 0x2514 0x2514 C + 161 0x0430 0x0410 ack ack 'f' 'F' 0x251c 0x251c C + 162 0x043f 0x041f bel bel 'g' 'G' 0x2524 0x2524 C + 163 0x0440 0x0420 bs bs 'h' 'H' 0x252c 0x252c C + 164 0x043e 0x041e nl nl 'j' 'J' 0x253c 0x253c C + 165 0x043b 0x041b vt vt 'k' 'K' 0x2580 0x2580 C + 166 0x0434 0x0414 ff ff 'l' 'L' 0x2584 0x2584 C + 167 0x0436 0x0416 nop nop ';' ':' nop nop C + 168 0x044d 0x042d nop nop ''' '"' nop nop C + 169 0x0491 0x0490 nop nop '`' '~' nop nop C 170 lshift lshift lshift lshift lshift lshift lshift lshift O - 171 1111 1031 fs fs '\' '|' 176 176 O - 172 1103 1071 sub sub 'z' 'Z' 160 160 C - 173 1095 1063 can can 'x' 'X' 8804 8804 C - 174 1089 1057 etx etx 'c' 'C' 9488 9488 C - 175 1084 1052 syn syn 'v' 'V' 8730 8730 C - 176 1080 1048 stx stx 'b' 'B' 9484 9484 C - 177 1090 1058 so so 'n' 'N' 9612 9612 C - 178 1100 1068 cr cr 'm' 'M' 9608 9608 C - 179 1073 1041 nop nop ',' '<' nop nop C - 180 1102 1070 nop nop '.' '>' nop nop C - 181 1105 1025 nop nop '/' '?' nop nop O + 171 0x0457 0x0407 fs fs '\' '|' 0xb0 0xb0 O + 172 0x044f 0x042f sub sub 'z' 'Z' 0xa0 0xa0 C + 173 0x0447 0x0427 can can 'x' 'X' 0x2264 0x2264 C + 174 0x0441 0x0421 etx etx 'c' 'C' 0x2510 0x2510 C + 175 0x043c 0x041c syn syn 'v' 'V' 0x221a 0x221a C + 176 0x0438 0x0418 stx stx 'b' 'B' 0x250c 0x250c C + 177 0x0442 0x0422 so so 'n' 'N' 0x258c 0x258c C + 178 0x044c 0x042c cr cr 'm' 'M' 0x2588 0x2588 C + 179 0x0431 0x0411 nop nop ',' '<' nop nop C + 180 0x044e 0x042e nop nop '.' '>' nop nop C + 181 0x0451 0x0401 nop nop '/' '?' nop nop O 182 rshift rshift rshift rshift rshift rshift rshift rshift O - 183 '*' '*' nl nl '*' '*' 9532 9532 O + 183 '*' '*' nl nl '*' '*' 0x253c 0x253c O 184 lalt lalt lalt lalt lalt lalt lalt lalt O - 185 ' ' ' ' ' ' ' ' ' ' ' ' 9552 9552 O + 185 ' ' ' ' ' ' ' ' ' ' ' ' 0x2550 0x2550 O 186 alock clock clock clock clock clock clock clock O 187 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O 188 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O @@ -214,27 +214,27 @@ 196 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O 197 nlock nlock nlock nlock nlock nlock nlock nlock O 198 slock slock slock slock slock slock slock slock O - 199 fkey49 '7' '7' '7' 1031 1031 1031 1031 N - 200 fkey50 '8' '8' '8' 9574 9574 9574 9574 N - 201 fkey51 '9' '9' '9' 9575 9575 9575 9575 N - 202 fkey52 '-' '-' '-' 1169 1169 1169 1169 N - 203 fkey53 '4' '4' '4' 1028 1028 1028 1028 N - 204 fkey48 '5' '5' '5' 9571 9571 9571 9571 N - 205 fkey55 '6' '6' '6' 1030 1030 1030 1030 N - 206 fkey56 '+' '+' '+' 9562 9562 9562 9562 N - 207 fkey57 '1' '1' '1' 9568 9568 9568 9568 N - 208 fkey58 '2' '2' '2' 9569 9569 9569 9569 N - 209 fkey59 '3' '3' '3' 1025 1025 1025 1025 N - 210 fkey60 '0' '0' '0' 9567 9567 9567 9567 N - 211 del '.' del del 1066 1066 boot halt N + 199 fkey49 '7' '7' '7' 0x0407 0x0407 0x0407 0x0407 N + 200 fkey50 '8' '8' '8' 0x2566 0x2566 0x2566 0x2566 N + 201 fkey51 '9' '9' '9' 0x2567 0x2567 0x2567 0x2567 N + 202 fkey52 '-' '-' '-' 0x0491 0x0491 0x0491 0x0491 N + 203 fkey53 '4' '4' '4' 0x0404 0x0404 0x0404 0x0404 N + 204 fkey48 '5' '5' '5' 0x2563 0x2563 0x2563 0x2563 N + 205 fkey55 '6' '6' '6' 0x0406 0x0406 0x0406 0x0406 N + 206 fkey56 '+' '+' '+' 0x255a 0x255a 0x255a 0x255a N + 207 fkey57 '1' '1' '1' 0x2560 0x2560 0x2560 0x2560 N + 208 fkey58 '2' '2' '2' 0x2561 0x2561 0x2561 0x2561 N + 209 fkey59 '3' '3' '3' 0x0401 0x0401 0x0401 0x0401 N + 210 fkey60 '0' '0' '0' 0x255f 0x255f 0x255f 0x255f N + 211 del '.' del del 0x042a 0x042a boot halt N 212 alock alock alock alock alock alock alock alock O 213 nop nop nop nop nop nop nop nop O 214 nop nop nop nop nop nop nop nop O 215 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O 216 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O - 217 cr cr nl nl 9608 9608 9532 9532 O + 217 cr cr nl nl 0x2588 0x2588 0x253c 0x253c O 218 alock rctrl rctrl rctrl rctrl rctrl rctrl rctrl O - 219 '/' '/' nop nop 9566 9566 nop nop O + 219 '/' '/' nop nop 0x255e 0x255e nop nop O 220 nscr pscr debug nop nop nop nop nop O 221 ralt ralt ralt ralt ralt ralt ralt ralt O 222 fkey49 fkey49 fkey69 fkey49 fkey49 fkey49 fkey49 fkey49 O diff --git a/share/vt/keymaps/uk.capsctrl.kbd b/share/vt/keymaps/uk.capsctrl.kbd new file mode 100644 index 0000000..65d606b --- /dev/null +++ b/share/vt/keymaps/uk.capsctrl.kbd @@ -0,0 +1,114 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '`' '`' nop nop O + 003 '2' '"' nul nul '@' '@' nul nul O + 004 '3' 0xa3 nop nop '#' '#' nop nop O + 005 '4' '$' 0xa4 0xa4 '4' '$' nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '^' rs rs '^' '^' rs rs O + 008 '7' '&' nop nop '[' '[' esc esc O + 009 '8' '*' nop nop '8' '*' nop nop O + 010 '9' '(' nop nop ']' ']' gs gs O + 011 '0' ')' nop nop '{' '{' nop nop O + 012 '-' '_' us us '|' '|' us us O + 013 '=' '+' nop nop '}' '}' nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 0x20ac 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 '[' '{' esc esc '[' '{' esc esc O + 027 ']' '}' gs gs ']' '}' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 ';' ':' nop nop ';' ':' nop nop O + 040 ''' '@' nul nul ''' '@' nul nul O + 041 '`' 0xac nop nop '|' '|' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '#' '~' nop nop '#' '~' nop nop O + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' '<' nop nop ',' '<' nop nop O + 052 '.' '>' nop nop '.' '>' nop nop O + 053 '/' '?' nop nop '/' '?' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '\' '|' fs fs '\' '|' fs fs O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/uk.dvorak.kbd b/share/vt/keymaps/uk.dvorak.kbd new file mode 100644 index 0000000..ec547d0 --- /dev/null +++ b/share/vt/keymaps/uk.dvorak.kbd @@ -0,0 +1,121 @@ +# $FreeBSD$ +# +# A Dvorak keyboard for UK English +# +# Based on us.dvorak.kbd and uk.iso.kbd, and on the X.org GB layout, Dvorak +# variant. +# +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '1' '!' nop nop O + 003 '2' '"' nul nul '2' '"' nul nul O + 004 '3' 0xa3 nop nop '3' 0xa3 nop nop O + 005 '4' '$' nop nop '4' '$' nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '^' rs rs '6' '^' rs rs O + 008 '7' '&' nop nop '7' '&' nop nop O + 009 '8' '*' nop nop '8' '*' nop nop O + 010 '9' '(' nop nop '9' '(' nop nop O + 011 '0' ')' nop nop '0' ')' nop nop O + 012 '[' '{' esc esc '[' '{' esc esc O + 013 ']' '}' gs gs ']' '}' gs gs O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 ''' '@' nop nop ''' '@' nop nop O + 017 ',' '<' nop nop ',' '<' nop nop O + 018 '.' '>' nop nop '.' '>' nop nop O + 019 'p' 'P' dle dle 'p' 'P' dle dle C + 020 'y' 'Y' em em 'y' 'Y' em em C + 021 'f' 'F' ack ack 'f' 'F' ack ack C + 022 'g' 'G' bel bel 'g' 'G' bel bel C + 023 'c' 'C' etx etx 'c' 'C' etx etx C + 024 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 025 'l' 'L' ff ff 'l' 'L' ff ff C + 026 '/' '?' nop nop '/' '?' nop nop O + 027 '=' '+' nop nop '=' '+' nop nop O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 'o' 'O' si si 'o' 'O' si si C + 032 'e' 'E' enq enq 'e' 'E' enq enq C + 033 'u' 'U' nak nak 'u' 'U' nak nak C + 034 'i' 'I' ht ht 'i' 'I' ht ht C + 035 'd' 'D' eot eot 'd' 'D' eot eot C + 036 'h' 'H' bs bs 'h' 'H' bs bs C + 037 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 038 'n' 'N' so so 'n' 'N' so so C + 039 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 040 '-' '_' us us '-' '_' us us O + 041 '`' '~' nop nop '`' 0xac nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '#' '~' fs fs '#' '~' fs fs O + 044 ';' ':' nop nop ';' ':' nop nop O + 045 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 046 'j' 'J' nl nl 'j' 'J' nl nl C + 047 'k' 'K' vt vt 'k' 'K' vt vt C + 048 'x' 'X' can can 'x' 'X' can can C + 049 'b' 'B' stx stx 'b' 'B' stx stx C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 'w' 'W' etb etb 'w' 'W' etb etb C + 052 'v' 'V' syn syn 'v' 'V' syn syn C + 053 'z' 'Z' sub sub 'z' 'Z' sub sub C + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '\' '|' fs fs '\' '|' fs fs O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + + diff --git a/share/vt/keymaps/uk.kbd b/share/vt/keymaps/uk.kbd new file mode 100644 index 0000000..f2a8a40 --- /dev/null +++ b/share/vt/keymaps/uk.kbd @@ -0,0 +1,114 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '`' '`' nop nop O + 003 '2' '"' nul nul '@' '@' nul nul O + 004 '3' 0xa3 nop nop '#' '#' nop nop O + 005 '4' '$' 0xa4 0xa4 '4' '$' nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '^' rs rs '^' '^' rs rs O + 008 '7' '&' nop nop '[' '[' esc esc O + 009 '8' '*' nop nop '8' '*' nop nop O + 010 '9' '(' nop nop ']' ']' gs gs O + 011 '0' ')' nop nop '{' '{' nop nop O + 012 '-' '_' us us '|' '|' us us O + 013 '=' '+' nop nop '}' '}' nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 0x20ac 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 '[' '{' esc esc '[' '{' esc esc O + 027 ']' '}' gs gs ']' '}' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 ';' ':' nop nop ';' ':' nop nop O + 040 ''' '@' nul nul ''' '@' nul nul O + 041 '`' 0xac nop nop '|' '|' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '#' '~' nop nop '#' '~' nop nop O + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' '<' nop nop ',' '<' nop nop O + 052 '.' '>' nop nop '.' '>' nop nop O + 053 '/' '?' nop nop '/' '?' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 '\' '|' fs fs '\' '|' fs fs O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/us.acc.kbd b/share/vt/keymaps/us.acc.kbd new file mode 100644 index 0000000..edf9d90 --- /dev/null +++ b/share/vt/keymaps/us.acc.kbd @@ -0,0 +1,137 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug debug O + 002 '1' '!' nop nop '1' '!' nop nop O + 003 '2' '@' nul nul '2' '@' nul nul O + 004 '3' '#' nop nop '3' '#' nop nop O + 005 '4' '$' nop nop '4' '$' nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '^' rs rs '6' dcir rs rs O + 008 '7' '&' nop nop '7' '&' nop nop O + 009 '8' '*' nop nop '8' drin nop nop O + 010 '9' '(' nop nop '9' '(' nop nop O + 011 '0' ')' nop nop '0' ')' nop nop O + 012 '-' '_' us us '-' '_' us us O + 013 '=' '+' nop nop '=' '+' nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nscr nscr ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 'e' 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 '[' '{' esc esc '[' '{' esc esc O + 027 ']' '}' gs gs ']' '}' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 ';' ':' nop nop ';' ':' nop nop O + 040 ''' '"' nop nop dacu duml nop nop O + 041 '`' '~' nop nop dgra dtil nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '\' '|' fs fs '\' '|' fs fs O + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' '<' nop nop dced '<' nop nop O + 052 '.' '>' nop nop '.' '>' nop nop O + 053 '/' '?' nop nop '/' '?' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul nul ' ' ' ' susp susp O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 nop nop nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr nscr nop nop debug debug debug debug O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 saver saver susp susp nop nop susp susp O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O + + dgra '`' ( 'a' 0xe0 ) ( 'A' 0xc0 ) ( 'e' 0xe8 ) ( 'E' 0xc8 ) + ( 'i' 0xec ) ( 'I' 0xcc ) ( 'o' 0xf2 ) ( 'O' 0xd2 ) + ( 'u' 0xf9 ) ( 'U' 0xd9 ) + + dacu 0xb4 ( 'a' 0xe1 ) ( 'A' 0xc1 ) ( 'e' 0xe9 ) ( 'E' 0xc9 ) + ( 'i' 0xed ) ( 'I' 0xcd ) ( 'o' 0xf3 ) ( 'O' 0xd3 ) + ( 'u' 0xfa ) ( 'U' 0xda ) ( 'y' 0xfd ) ( 'Y' 0xdd ) + + dcir '^' ( 'a' 0xe2 ) ( 'A' 0xc2 ) ( 'e' 0xea ) ( 'E' 0xca ) + ( 'i' 0xee ) ( 'I' 0xce ) ( 'o' 0xf4 ) ( 'O' 0xd4 ) + ( 'u' 0xfb ) ( 'U' 0xdb ) + + dtil '~' ( 'a' 0xe3 ) ( 'A' 0xc3 ) ( 'n' 0xf1 ) ( 'N' 0xd1 ) + ( 'o' 0xf5 ) ( 'O' 0xd5 ) + + duml 0xa8 ( 'a' 0xe4 ) ( 'A' 0xc4 ) ( 'e' 0xeb ) ( 'E' 0xcb ) + ( 'i' 0xef ) ( 'I' 0xcf ) ( 'o' 0xf6 ) ( 'O' 0xd6 ) + ( 'u' 0xfc ) ( 'U' 0xdc ) ( 'y' 0xff ) + + drin 0xb0 ( 'a' 0xe5 ) ( 'A' 0xc5 ) + + dced 0xb8 ( 'c' 0xe7 ) ( 'C' 0xc7 ) diff --git a/share/vt/keymaps/us.ctrl.kbd b/share/vt/keymaps/us.ctrl.kbd new file mode 100644 index 0000000..58b66f3 --- /dev/null +++ b/share/vt/keymaps/us.ctrl.kbd @@ -0,0 +1,114 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '1' '!' nop nop O + 003 '2' '@' nul nul '2' '@' nul nul O + 004 '3' '#' nop nop '3' '#' nop nop O + 005 '4' '$' nop nop '4' '$' nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '^' rs rs '6' '^' rs rs O + 008 '7' '&' nop nop '7' '&' nop nop O + 009 '8' '*' nop nop '8' '*' nop nop O + 010 '9' '(' nop nop '9' '(' nop nop O + 011 '0' ')' nop nop '0' ')' nop nop O + 012 '-' '_' us us '-' '_' us us O + 013 '=' '+' nop nop '=' '+' nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 'e' 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 '[' '{' esc esc '[' '{' esc esc O + 027 ']' '}' gs gs ']' '}' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 ';' ':' nop nop ';' ':' nop nop O + 040 ''' '"' nop nop ''' '"' nop nop O + 041 '`' '~' nop nop '`' '~' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '\' '|' fs fs '\' '|' fs fs O + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' '<' nop nop ',' '<' nop nop O + 052 '.' '>' nop nop '.' '>' nop nop O + 053 '/' '?' nop nop '/' '?' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 nop nop nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/us.dvorak.kbd b/share/vt/keymaps/us.dvorak.kbd new file mode 100644 index 0000000..ae7a57d --- /dev/null +++ b/share/vt/keymaps/us.dvorak.kbd @@ -0,0 +1,123 @@ +# A Dvorak keyboard for US English +# +# There are some minor variations, but this seems like the most +# common layout. I personally use one with three more pairs swapped: +# esc <-> `~, clock <-> lctrl, and =+ <-> \| (supplied as +# "us.dvorakx.kbd"). +# +# -Satoshi +# +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '1' '!' nop nop O + 003 '2' '@' nul nul '2' '@' nul nul O + 004 '3' '#' nop nop '3' '#' nop nop O + 005 '4' '$' nop nop '4' '$' nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '^' rs rs '6' '^' rs rs O + 008 '7' '&' nop nop '7' '&' nop nop O + 009 '8' '*' nop nop '8' '*' nop nop O + 010 '9' '(' nop nop '9' '(' nop nop O + 011 '0' ')' nop nop '0' ')' nop nop O + 012 '[' '{' esc esc '[' '{' esc esc O + 013 ']' '}' gs gs ']' '}' gs gs O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 ''' '"' nop nop ''' '"' nop nop O + 017 ',' '<' nop nop ',' '<' nop nop O + 018 '.' '>' nop nop '.' '>' nop nop O + 019 'p' 'P' dle dle 'p' 'P' dle dle C + 020 'y' 'Y' em em 'y' 'Y' em em C + 021 'f' 'F' ack ack 'f' 'F' ack ack C + 022 'g' 'G' bel bel 'g' 'G' bel bel C + 023 'c' 'C' etx etx 'c' 'C' etx etx C + 024 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 025 'l' 'L' ff ff 'l' 'L' ff ff C + 026 '/' '?' nop nop '/' '?' nop nop O + 027 '=' '+' nop nop '=' '+' nop nop O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 'o' 'O' si si 'o' 'O' si si C + 032 'e' 'E' enq enq 'e' 'E' enq enq C + 033 'u' 'U' nak nak 'u' 'U' nak nak C + 034 'i' 'I' ht ht 'i' 'I' ht ht C + 035 'd' 'D' eot eot 'd' 'D' eot eot C + 036 'h' 'H' bs bs 'h' 'H' bs bs C + 037 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 038 'n' 'N' so so 'n' 'N' so so C + 039 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 040 '-' '_' us us '-' '_' us us O + 041 '`' '~' nop nop '`' '~' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '\' '|' fs fs '\' '|' fs fs O + 044 ';' ':' nop nop ';' ':' nop nop O + 045 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 046 'j' 'J' nl nl 'j' 'J' nl nl C + 047 'k' 'K' vt vt 'k' 'K' vt vt C + 048 'x' 'X' can can 'x' 'X' can can C + 049 'b' 'B' stx stx 'b' 'B' stx stx C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 'w' 'W' etb etb 'w' 'W' etb etb C + 052 'v' 'V' syn syn 'v' 'V' syn syn C + 053 'z' 'Z' sub sub 'z' 'Z' sub sub C + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 nop nop nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/us.dvorakl.kbd b/share/vt/keymaps/us.dvorakl.kbd new file mode 100644 index 0000000..50334c2 --- /dev/null +++ b/share/vt/keymaps/us.dvorakl.kbd @@ -0,0 +1,116 @@ +# A left handed Dvorak keyboard for US English +# +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '[' '{' esc esc '[' '{' esc esc O + 003 ']' '}' gs gs ']' '}' gs gs O + 004 '/' '?' nop nop '/' '?' nop nop O + 005 'p' 'P' dle dle 'p' 'P' dle dle C + 006 'f' 'F' ack ack 'f' 'F' ack ack C + 007 'm' 'M' cr cr 'm' 'M' cr cr C + 008 'l' 'L' ff ff 'l' 'L' ff ff C + 009 'j' 'J' nl nl 'j' 'J' nl nl C + 010 '4' '$' nop nop '4' '$' nop nop O + 011 '3' '#' nop nop '3' '#' nop nop O + 012 '2' '@' nul nul '2' '@' nul nul O + 013 '1' '!' nop nop '1' '!' nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 ';' ':' nop nop ';' ':' nop nop O + 017 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 018 'b' 'B' stx stx 'b' 'B' stx stx C + 019 'y' 'Y' em em 'y' 'Y' em em C + 020 'u' 'U' nak nak 'u' 'U' nak nak C + 021 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 022 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 023 'o' 'O' si si 'o' 'O' si si C + 024 '.' '>' nop nop '.' '>' nop nop O + 025 '6' '^' rs rs '6' '^' rs rs O + 026 '5' '%' nop nop '5' '%' nop nop O + 027 '=' '+' nop nop '=' '+' nop nop O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 '-' '_' us us '-' '_' us us O + 031 'k' 'K' vt vt 'k' 'K' vt vt C + 032 'c' 'C' etx etx 'c' 'C' etx etx C + 033 'd' 'D' eot eot 'd' 'D' eot eot C + 034 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'e' 'E' enq enq 'e' 'E' enq enq C + 037 'a' 'A' soh soh 'a' 'A' soh soh C + 038 'z' 'Z' sub sub 'z' 'Z' sub sub C + 039 '8' '*' nop nop '8' '*' nop nop O + 040 '7' '&' nop nop '7' '&' nop nop O + 041 '`' '~' nop nop '`' '~' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '\' '|' fs fs '\' '|' fs fs O + 044 ''' '"' nop nop ''' '"' nop nop O + 045 'x' 'X' can can 'x' 'X' can can C + 046 'g' 'G' bel bel 'g' 'G' bel bel C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'w' 'W' etb etb 'w' 'W' etb etb C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'i' 'I' ht ht 'i' 'I' ht ht C + 051 ',' '<' nop nop ',' '<' nop nop O + 052 '0' ')' nop nop '0' ')' nop nop O + 053 '9' '(' nop nop '9' '(' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 nop nop nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/us.dvorakp.kbd b/share/vt/keymaps/us.dvorakp.kbd new file mode 100644 index 0000000..ff504c2 --- /dev/null +++ b/share/vt/keymaps/us.dvorakp.kbd @@ -0,0 +1,116 @@ +# A Programmer Dvorak keyboard for US English +# +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '&' '%' nop nop '&' '%' nop nop O + 003 '[' '7' nul nul '[' '7' nul nul O + 004 '{' '5' nop nop '{' '5' nop nop O + 005 '}' '3' nop nop '}' '3' nop nop O + 006 '(' '1' nop nop '(' '1' nop nop O + 007 '=' '9' rs rs '=' '9' rs rs O + 008 '*' '0' nop nop '*' '0' nop nop O + 009 ')' '2' nop nop ')' '2' nop nop O + 010 '+' '4' nop nop '+' '4' nop nop O + 011 ']' '6' nop nop ']' ')' nop nop O + 012 '!' '8' esc esc '!' '8' esc esc O + 013 '#' '`' gs gs '#' '`' gs gs O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 ';' ':' nop nop ';' ':' nop nop O + 017 ',' '<' nop nop ',' '<' nop nop O + 018 '.' '>' nop nop '.' '>' nop nop O + 019 'p' 'P' dle dle 'p' 'P' dle dle C + 020 'y' 'Y' em em 'y' 'Y' em em C + 021 'f' 'F' ack ack 'f' 'F' ack ack C + 022 'g' 'G' bel bel 'g' 'G' bel bel C + 023 'c' 'C' etx etx 'c' 'C' etx etx C + 024 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 025 'l' 'L' ff ff 'l' 'L' ff ff C + 026 '/' '?' nop nop '/' '?' nop nop O + 027 '@' '^' nop nop '@' '^' nop nop O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 'o' 'O' si si 'o' 'O' si si C + 032 'e' 'E' enq enq 'e' 'E' enq enq C + 033 'u' 'U' nak nak 'u' 'U' nak nak C + 034 'i' 'I' ht ht 'i' 'I' ht ht C + 035 'd' 'D' eot eot 'd' 'D' eot eot C + 036 'h' 'H' bs bs 'h' 'H' bs bs C + 037 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 038 'n' 'N' so so 'n' 'N' so so C + 039 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 040 '-' '_' us us '-' '_' us us O + 041 '$' '~' nop nop '$' '~' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '\' '|' fs fs '\' '|' fs fs O + 044 ''' '"' nop nop ''' '"' nop nop O + 045 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 046 'j' 'J' nl nl 'j' 'J' nl nl C + 047 'k' 'K' vt vt 'k' 'K' vt vt C + 048 'x' 'X' can can 'x' 'X' can can C + 049 'b' 'B' stx stx 'b' 'B' stx stx C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 'w' 'W' etb etb 'w' 'W' etb etb C + 052 'v' 'V' syn syn 'v' 'V' syn syn C + 053 'z' 'Z' sub sub 'z' 'Z' sub sub C + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 nop nop nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/us.dvorakr.kbd b/share/vt/keymaps/us.dvorakr.kbd new file mode 100644 index 0000000..54ce39b --- /dev/null +++ b/share/vt/keymaps/us.dvorakr.kbd @@ -0,0 +1,116 @@ +# A right handed Dvorak keyboard for US English +# +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '1' '!' nop nop O + 003 '2' '@' nul nul '2' '@' nul nul O + 004 '3' '#' nop nop '3' '#' nop nop O + 005 '4' '$' nop nop '4' '$' nop nop O + 006 'j' 'J' nl nl 'j' 'J' nl nl C + 007 'l' 'L' ff ff 'l' 'L' ff ff C + 008 'm' 'M' cr cr 'm' 'M' cr cr C + 009 'f' 'F' ack ack 'f' 'F' ack ack C + 010 'p' 'P' dle dle 'p' 'P' dle dle C + 011 '/' '?' nop nop '/' '?' nop nop O + 012 '[' '{' esc esc '[' '{' esc esc O + 013 ']' '}' gs gs ']' '}' gs gs O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 '5' '%' nop nop '5' '%' nop nop O + 017 '6' '^' rs rs '6' '^' rs rs O + 018 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 019 '.' '>' nop nop '.' '>' nop nop O + 020 'o' 'O' si si 'o' 'O' si si C + 021 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 022 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 023 'u' 'U' nak nak 'u' 'U' nak nak C + 024 'y' 'Y' em em 'y' 'Y' em em C + 025 'b' 'B' stx stx 'b' 'B' stx stx C + 026 ';' ':' nop nop ';' ':' nop nop O + 027 '=' '+' nop nop '=' '+' nop nop O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 '7' '&' nop nop '7' '&' nop nop O + 031 '8' '*' nop nop '8' '*' nop nop O + 032 'z' 'Z' sub sub 'z' 'Z' sub sub C + 033 'a' 'A' soh soh 'a' 'A' soh soh C + 034 'e' 'E' enq enq 'e' 'E' enq enq C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 037 'd' 'D' eot eot 'd' 'D' eot eot C + 038 'c' 'C' etx etx 'c' 'C' etx etx C + 039 'k' 'K' vt vt 'k' 'K' vt vt C + 040 '-' '_' us us '-' '_' us us O + 041 '`' '~' nop nop '`' '~' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '\' '|' fs fs '\' '|' fs fs O + 044 '9' '(' nop nop '9' '(' nop nop O + 045 '0' ')' nop nop '0' ')' nop nop O + 046 'x' 'X' can can 'x' 'X' can can C + 047 ',' '<' nop nop ',' '<' nop nop O + 048 'i' 'I' ht ht 'i' 'I' ht ht C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'w' 'W' etb etb 'w' 'W' etb etb C + 051 'v' 'V' syn syn 'v' 'V' syn syn C + 052 'g' 'G' bel bel 'g' 'G' bel bel C + 053 ''' '"' nop nop ''' '"' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 nop nop nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/us.dvorakx.kbd b/share/vt/keymaps/us.dvorakx.kbd new file mode 100644 index 0000000..75ef795 --- /dev/null +++ b/share/vt/keymaps/us.dvorakx.kbd @@ -0,0 +1,121 @@ +# A Dvorak keyboard for US English +# +# This is the version that I use. For a more "common" (or so I +# think) layout, try "us.dvorak.kbd". +# +# -Satoshi +# +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 '`' '~' nop nop '`' '~' nop nop O + 002 '1' '!' nop nop '1' '!' nop nop O + 003 '2' '@' nul nul '2' '@' nul nul O + 004 '3' '#' nop nop '3' '#' nop nop O + 005 '4' '$' nop nop '4' '$' nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '^' rs rs '6' '^' rs rs O + 008 '7' '&' nop nop '7' '&' nop nop O + 009 '8' '*' nop nop '8' '*' nop nop O + 010 '9' '(' nop nop '9' '(' nop nop O + 011 '0' ')' nop nop '0' ')' nop nop O + 012 '[' '{' esc esc '[' '{' esc esc O + 013 ']' '}' gs gs ']' '}' gs gs O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 ''' '"' nop nop ''' '"' nop nop O + 017 ',' '<' nop nop ',' '<' nop nop O + 018 '.' '>' nop nop '.' '>' nop nop O + 019 'p' 'P' dle dle 'p' 'P' dle dle C + 020 'y' 'Y' em em 'y' 'Y' em em C + 021 'f' 'F' ack ack 'f' 'F' ack ack C + 022 'g' 'G' bel bel 'g' 'G' bel bel C + 023 'c' 'C' etx etx 'c' 'C' etx etx C + 024 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 025 'l' 'L' ff ff 'l' 'L' ff ff C + 026 '/' '?' nop nop '/' '?' nop nop O + 027 '\' '|' fs fs '\' '|' fs fs O + 028 cr cr nl nl cr cr nl nl O + 029 clock clock clock clock clock clock clock clock O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 'o' 'O' si si 'o' 'O' si si C + 032 'e' 'E' enq enq 'e' 'E' enq enq C + 033 'u' 'U' nak nak 'u' 'U' nak nak C + 034 'i' 'I' ht ht 'i' 'I' ht ht C + 035 'd' 'D' eot eot 'd' 'D' eot eot C + 036 'h' 'H' bs bs 'h' 'H' bs bs C + 037 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 038 'n' 'N' so so 'n' 'N' so so C + 039 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 040 '-' '_' us us '-' '_' us us O + 041 esc esc nop nop esc esc debug nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '=' '+' nop nop '=' '+' nop nop O + 044 ';' ':' nop nop ';' ':' nop nop O + 045 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 046 'j' 'J' nl nl 'j' 'J' nl nl C + 047 'k' 'K' vt vt 'k' 'K' vt vt C + 048 'x' 'X' can can 'x' 'X' can can C + 049 'b' 'B' stx stx 'b' 'B' stx stx C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 'w' 'W' etb etb 'w' 'W' etb etb C + 052 'v' 'V' syn syn 'v' 'V' syn syn C + 053 'z' 'Z' sub sub 'z' 'Z' sub sub C + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 nop nop nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/us.emacs.kbd b/share/vt/keymaps/us.emacs.kbd new file mode 100644 index 0000000..e5852d9 --- /dev/null +++ b/share/vt/keymaps/us.emacs.kbd @@ -0,0 +1,111 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc esc esc O + 002 '1' '!' nop nop 0xb1 0xa1 nop nop O + 003 '2' '@' nul nul 0xb2 0xc0 0x80 0x80 O + 004 '3' '#' nop nop 0xb3 0xa3 nop nop O + 005 '4' '$' nop nop 0xb4 0xa4 nop nop O + 006 '5' '%' nop nop 0xb5 0xa5 nop nop O + 007 '6' '^' rs rs 0xb6 0xde 0x9e 0x9e O + 008 '7' '&' nop nop 0xb7 0xa6 nop nop O + 009 '8' '*' nop nop 0xb8 0xaa nop nop O + 010 '9' '(' nop nop 0xb9 0xa8 nop nop O + 011 '0' ')' nop nop 0xb0 0xa9 nop nop O + 012 '-' '_' us us 0xad 0xdf 0x9f 0x9f O + 013 '=' '+' nop nop 0xbd 0xab nop nop O + 014 del del bs bs 0xff 0xff 0x88 0x88 O + 015 ht ht ht ht 0x89 0x89 0x89 0x89 O + 016 'q' 'Q' dc1 dc1 0xf1 0xd1 0x91 0x91 C + 017 'w' 'W' etb etb 0xf7 0xd7 0x97 0x97 C + 018 'e' 'E' enq enq 0xe5 0xc5 0x85 0x85 C + 019 'r' 'R' dc2 dc2 0xf2 0xd2 0x92 0x92 C + 020 't' 'T' dc4 dc4 0xf4 0xd4 0x94 0x94 C + 021 'y' 'Y' em em 0xf9 0xd9 0x99 0x99 C + 022 'u' 'U' nak nak 0xf5 0xd5 0x95 0x95 C + 023 'i' 'I' ht ht 0xe9 0xc9 0x89 0x89 C + 024 'o' 'O' si si 0xef 0xcf 0x8f 0x8f C + 025 'p' 'P' dle dle 0xf0 0xd0 0x90 0x90 C + 026 '[' '{' esc esc 0xdb 0xfb 0x9b 0x9b O + 027 ']' '}' gs gs 0xdd 0xfd 0x9d 0x9d O + 028 cr cr nl nl 0x8d 0x8d 0x8a 0x8a O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 0xe1 0xc1 0x81 0x81 C + 031 's' 'S' dc3 dc3 0xf3 0xd3 0x93 0x93 C + 032 'd' 'D' eot eot 0xe4 0xc4 0x84 0x84 C + 033 'f' 'F' ack ack 0xe6 0xc6 0x86 0x86 C + 034 'g' 'G' bel bel 0xe7 0xc7 0x87 0x87 C + 035 'h' 'H' bs bs 0xe8 0xc8 0x88 0x88 C + 036 'j' 'J' nl nl 0xea 0xca 0x8a 0x8a C + 037 'k' 'K' vt vt 0xeb 0xcb 0x8b 0x8b C + 038 'l' 'L' ff ff 0xec 0xcc 0x8c 0x8c C + 039 ';' ':' nop nop 0xbb 0xba nop nop O + 040 ''' '"' nop nop 0xa7 0xa2 nop nop O + 041 '`' '~' nop nop 0xe0 0xfe nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '\' '|' fs fs 0xdc 0xfc 0x9c 0x9c O + 044 'z' 'Z' sub sub 0xfa 0xda 0x9a 0x9a C + 045 'x' 'X' can can 0xf8 0xd8 0x98 0x98 C + 046 'c' 'C' etx etx 0xe3 0xc3 0x83 0x83 C + 047 'v' 'V' syn syn 0xf6 0xd6 0x96 0x96 C + 048 'b' 'B' stx stx 0xe2 0xc2 0x82 0x82 C + 049 'n' 'N' so so 0xee 0xce 0x8e 0x8e C + 050 'm' 'M' cr cr 0xed 0xcd 0x8d 0x8d C + 051 ',' '<' nop nop 0xac 0xbc nop nop O + 052 '.' '>' nop nop 0xae 0xbe nop nop O + 053 '/' '?' nop nop 0xaf 0xbf nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' nl nl 0xaa 0xaa 0x8a 0x8a O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul nul 0xa0 0xa0 0x80 0x80 O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' 0xb7 0xb7 0xb7 0xb7 N + 072 fkey50 '8' '8' '8' 0xb8 0xb8 0xb8 0xb8 N + 073 fkey51 '9' '9' '9' 0xb9 0xb9 0xb9 0xb9 N + 074 fkey52 '-' '-' '-' 0xad 0xad 0xad 0xad N + 075 fkey53 '4' '4' '4' 0xb4 0xb4 0xb4 0xb4 N + 076 fkey54 '5' '5' '5' 0xb5 0xb5 0xb5 0xb5 N + 077 fkey55 '6' '6' '6' 0xb6 0xb6 0xb6 0xb6 N + 078 fkey56 '+' '+' '+' 0xab 0xab 0xab 0xab N + 079 fkey57 '1' '1' '1' 0xb1 0xb1 0xb1 0xb1 N + 080 fkey58 '2' '2' '2' 0xb2 0xb2 0xb2 0xb2 N + 081 fkey59 '3' '3' '3' 0xb3 0xb3 0xb3 0xb3 N + 082 fkey60 '0' '0' '0' 0xb0 0xb0 0xb0 0xb0 N + 083 nop '.' '.' '.' 0xae 0xae 0xae 0xae N + 084 us us us us us us us us O + 085 nop nop nop nop nop nop nop nop O + 086 nop nop nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 nop cr cr cr 0x8d 0x8d 0x8d 0x8d N + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 nop '/' '/' '/' 0xaf 0xaf 0xaf 0xaf N + 092 nop '*' '*' '*' 0xaa 0xaa 0xaa 0xaa N + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 '7' '7' '7' 0xb7 0xb7 0xb7 0xb7 N + 095 fkey50 '8' '8' '8' 0xb8 0xb8 0xb8 0xb8 N + 096 fkey51 '9' '9' '9' 0xb9 0xb9 0xb9 0xb9 N + 097 fkey53 '4' '4' '4' 0xb4 0xb4 0xb4 0xb4 N + 098 fkey55 '6' '6' '6' 0xb6 0xb6 0xb6 0xb6 N + 099 fkey57 '1' '1' '1' 0xb1 0xb1 0xb1 0xb1 N + 100 fkey58 '2' '2' '2' 0xb2 0xb2 0xb2 0xb2 N + 101 fkey59 '3' '3' '3' 0xb3 0xb3 0xb3 0xb3 N + 102 fkey60 '0' '0' '0' 0xb0 0xb0 0xb0 0xb0 N + 103 fkey54 '5' '5' '5' 0xb5 0xb5 0xb5 0xb5 N + 104 slock slock slock slock slock slock slock slock O + 105 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/us.kbd b/share/vt/keymaps/us.kbd new file mode 100644 index 0000000..e213392 --- /dev/null +++ b/share/vt/keymaps/us.kbd @@ -0,0 +1,114 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 esc esc esc esc esc esc debug esc O + 002 '1' '!' nop nop '1' '!' nop nop O + 003 '2' '@' nul nul '2' '@' nul nul O + 004 '3' '#' nop nop '3' '#' nop nop O + 005 '4' '$' nop nop '4' '$' nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '^' rs rs '6' '^' rs rs O + 008 '7' '&' nop nop '7' '&' nop nop O + 009 '8' '*' nop nop '8' '*' nop nop O + 010 '9' '(' nop nop '9' '(' nop nop O + 011 '0' ')' nop nop '0' ')' nop nop O + 012 '-' '_' us us '-' '_' us us O + 013 '=' '+' nop nop '=' '+' nop nop O + 014 bs bs del del bs bs del del O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 'e' 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 '[' '{' esc esc '[' '{' esc esc O + 027 ']' '}' gs gs ']' '}' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 ';' ':' nop nop ';' ':' nop nop O + 040 ''' '"' nop nop ''' '"' nop nop O + 041 '`' '~' nop nop '`' '~' nop nop O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '\' '|' fs fs '\' '|' fs fs O + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' '<' nop nop ',' '<' nop nop O + 052 '.' '>' nop nop '.' '>' nop nop O + 053 '/' '?' nop nop '/' '?' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 clock clock clock clock clock clock clock clock O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 del '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 nop nop nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 fkey61 fkey61 fkey61 fkey61 fkey61 fkey61 boot fkey61 O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/share/vt/keymaps/us.unix.kbd b/share/vt/keymaps/us.unix.kbd new file mode 100644 index 0000000..b883eab --- /dev/null +++ b/share/vt/keymaps/us.unix.kbd @@ -0,0 +1,114 @@ +# $FreeBSD$ +# alt +# scan cntrl alt alt cntrl lock +# code base shift cntrl shift alt shift cntrl shift state +# ------------------------------------------------------------------ + 000 nop nop nop nop nop nop nop nop O + 001 '`' '~' nop nop '`' '~' debug nop O + 002 '1' '!' nop nop '1' '!' nop nop O + 003 '2' '@' nul nul '2' '@' nul nul O + 004 '3' '#' nop nop '3' '#' nop nop O + 005 '4' '$' nop nop '4' '$' nop nop O + 006 '5' '%' nop nop '5' '%' nop nop O + 007 '6' '^' rs rs '6' '^' rs rs O + 008 '7' '&' nop nop '7' '&' nop nop O + 009 '8' '*' nop nop '8' '*' nop nop O + 010 '9' '(' nop nop '9' '(' nop nop O + 011 '0' ')' nop nop '0' ')' nop nop O + 012 '-' '_' us us '-' '_' us us O + 013 '=' '+' nop nop '=' '+' nop nop O + 014 del del bs bs del del bs bs O + 015 ht btab nop nop ht btab nop nop O + 016 'q' 'Q' dc1 dc1 'q' 'Q' dc1 dc1 C + 017 'w' 'W' etb etb 'w' 'W' etb etb C + 018 'e' 'E' enq enq 'e' 'E' enq enq C + 019 'r' 'R' dc2 dc2 'r' 'R' dc2 dc2 C + 020 't' 'T' dc4 dc4 't' 'T' dc4 dc4 C + 021 'y' 'Y' em em 'y' 'Y' em em C + 022 'u' 'U' nak nak 'u' 'U' nak nak C + 023 'i' 'I' ht ht 'i' 'I' ht ht C + 024 'o' 'O' si si 'o' 'O' si si C + 025 'p' 'P' dle dle 'p' 'P' dle dle C + 026 '[' '{' esc esc '[' '{' esc esc O + 027 ']' '}' gs gs ']' '}' gs gs O + 028 cr cr nl nl cr cr nl nl O + 029 clock clock clock clock clock clock clock clock O + 030 'a' 'A' soh soh 'a' 'A' soh soh C + 031 's' 'S' dc3 dc3 's' 'S' dc3 dc3 C + 032 'd' 'D' eot eot 'd' 'D' eot eot C + 033 'f' 'F' ack ack 'f' 'F' ack ack C + 034 'g' 'G' bel bel 'g' 'G' bel bel C + 035 'h' 'H' bs bs 'h' 'H' bs bs C + 036 'j' 'J' nl nl 'j' 'J' nl nl C + 037 'k' 'K' vt vt 'k' 'K' vt vt C + 038 'l' 'L' ff ff 'l' 'L' ff ff C + 039 ';' ':' nop nop ';' ':' nop nop O + 040 ''' '"' nop nop ''' '"' nop nop O + 041 esc esc esc esc esc esc debug esc O + 042 lshift lshift lshift lshift lshift lshift lshift lshift O + 043 '\' '|' fs fs '\' '|' fs fs O + 044 'z' 'Z' sub sub 'z' 'Z' sub sub C + 045 'x' 'X' can can 'x' 'X' can can C + 046 'c' 'C' etx etx 'c' 'C' etx etx C + 047 'v' 'V' syn syn 'v' 'V' syn syn C + 048 'b' 'B' stx stx 'b' 'B' stx stx C + 049 'n' 'N' so so 'n' 'N' so so C + 050 'm' 'M' cr cr 'm' 'M' cr cr C + 051 ',' '<' nop nop ',' '<' nop nop O + 052 '.' '>' nop nop '.' '>' nop nop O + 053 '/' '?' nop nop '/' '?' nop nop O + 054 rshift rshift rshift rshift rshift rshift rshift rshift O + 055 '*' '*' '*' '*' '*' '*' '*' '*' O + 056 lalt lalt lalt lalt lalt lalt lalt lalt O + 057 ' ' ' ' nul ' ' ' ' ' ' susp ' ' O + 058 lctrl lctrl lctrl lctrl lctrl lctrl lctrl lctrl O + 059 fkey01 fkey13 fkey25 fkey37 scr01 scr11 scr01 scr11 O + 060 fkey02 fkey14 fkey26 fkey38 scr02 scr12 scr02 scr12 O + 061 fkey03 fkey15 fkey27 fkey39 scr03 scr13 scr03 scr13 O + 062 fkey04 fkey16 fkey28 fkey40 scr04 scr14 scr04 scr14 O + 063 fkey05 fkey17 fkey29 fkey41 scr05 scr15 scr05 scr15 O + 064 fkey06 fkey18 fkey30 fkey42 scr06 scr16 scr06 scr16 O + 065 fkey07 fkey19 fkey31 fkey43 scr07 scr07 scr07 scr07 O + 066 fkey08 fkey20 fkey32 fkey44 scr08 scr08 scr08 scr08 O + 067 fkey09 fkey21 fkey33 fkey45 scr09 scr09 scr09 scr09 O + 068 fkey10 fkey22 fkey34 fkey46 scr10 scr10 scr10 scr10 O + 069 nlock nlock nlock nlock nlock nlock nlock nlock O + 070 slock slock slock slock slock slock slock slock O + 071 fkey49 '7' '7' '7' '7' '7' '7' '7' N + 072 fkey50 '8' '8' '8' '8' '8' '8' '8' N + 073 fkey51 '9' '9' '9' '9' '9' '9' '9' N + 074 fkey52 '-' '-' '-' '-' '-' '-' '-' N + 075 fkey53 '4' '4' '4' '4' '4' '4' '4' N + 076 fkey54 '5' '5' '5' '5' '5' '5' '5' N + 077 fkey55 '6' '6' '6' '6' '6' '6' '6' N + 078 fkey56 '+' '+' '+' '+' '+' '+' '+' N + 079 fkey57 '1' '1' '1' '1' '1' '1' '1' N + 080 fkey58 '2' '2' '2' '2' '2' '2' '2' N + 081 fkey59 '3' '3' '3' '3' '3' '3' '3' N + 082 fkey60 '0' '0' '0' '0' '0' '0' '0' N + 083 bs '.' '.' '.' '.' '.' boot boot N + 084 nop nop nop nop nop nop nop nop O + 085 nop nop nop nop nop nop nop nop O + 086 nop nop nop nop nop nop nop nop O + 087 fkey11 fkey23 fkey35 fkey47 scr11 scr11 scr11 scr11 O + 088 fkey12 fkey24 fkey36 fkey48 scr12 scr12 scr12 scr12 O + 089 cr cr nl nl cr cr nl nl O + 090 rctrl rctrl rctrl rctrl rctrl rctrl rctrl rctrl O + 091 '/' '/' '/' '/' '/' '/' '/' '/' N + 092 nscr pscr debug debug nop nop nop nop O + 093 ralt ralt ralt ralt ralt ralt ralt ralt O + 094 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 fkey49 O + 095 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 fkey50 O + 096 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 fkey51 O + 097 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 fkey53 O + 098 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 fkey55 O + 099 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 fkey57 O + 100 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 fkey58 O + 101 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 fkey59 O + 102 fkey60 paste fkey60 fkey60 fkey60 fkey60 fkey60 fkey60 O + 103 bs bs fkey61 fkey61 bs bs boot boot O + 104 slock saver slock saver susp nop susp nop O + 105 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 fkey62 O + 106 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 fkey63 O + 107 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 fkey64 O + 108 nop nop nop nop nop nop nop nop O diff --git a/sys/amd64/amd64/pmap.c b/sys/amd64/amd64/pmap.c index 6adc86d..8a22689 100644 --- a/sys/amd64/amd64/pmap.c +++ b/sys/amd64/amd64/pmap.c @@ -4201,9 +4201,10 @@ retry: mpte = _pmap_allocpte(pmap, pmap_pde_pindex(va), nosleep ? NULL : &lock); if (mpte == NULL && nosleep) { - KASSERT(lock == NULL, ("lock leaked for nosleep")); - PMAP_UNLOCK(pmap); + if (lock != NULL) + rw_wunlock(lock); rw_runlock(&pvh_global_lock); + PMAP_UNLOCK(pmap); return (KERN_RESOURCE_SHORTAGE); } goto retry; diff --git a/sys/amd64/conf/NOTES b/sys/amd64/conf/NOTES index 8866e76..1262af3 100644 --- a/sys/amd64/conf/NOTES +++ b/sys/amd64/conf/NOTES @@ -307,7 +307,8 @@ options DRM_DEBUG # Include debug printfs (slow) # Requires the ipw firmware module # iwi: Intel PRO/Wireless 2200BG/2225BG/2915ABG IEEE 802.11 adapters # Requires the iwi firmware module -# iwn: Intel Wireless WiFi Link 4965/1000/5000/6000 802.11 network adapters +# iwn: Intel Wireless WiFi Link 1000/105/135/2000/4965/5000/6000/6050 abgn +# 802.11 network adapters # Requires the iwn firmware module # mlx4ib: Mellanox ConnectX HCA InfiniBand # mlxen: Mellanox ConnectX HCA Ethernet @@ -347,12 +348,18 @@ device wpi # Intel 3945ABG wireless NICs. # iwiibssfw: IBSS mode firmware # iwimonitorfw: Monitor mode firmware # Intel Wireless WiFi Link 4965/1000/5000/6000 series firmware: -# iwnfw: Single module to support the 4965/1000/5000/5150/6000 -# iwn4965fw: Specific module for the 4965 only +# iwnfw: Single module to support all devices # iwn1000fw: Specific module for the 1000 only +# iwn105fw: Specific module for the 105 only +# iwn135fw: Specific module for the 135 only +# iwn2000fw: Specific module for the 2000 only +# iwn2030fw: Specific module for the 2030 only +# iwn4965fw: Specific module for the 4965 only # iwn5000fw: Specific module for the 5000 only # iwn5150fw: Specific module for the 5150 only # iwn6000fw: Specific module for the 6000 only +# iwn6000g2afw: Specific module for the 6000g2a only +# iwn6000g2bfw: Specific module for the 6000g2b only # iwn6050fw: Specific module for the 6050 only # wpifw: Intel 3945ABG Wireless LAN Controller firmware @@ -365,11 +372,17 @@ device ipwbssfw device ipwibssfw device ipwmonitorfw device iwnfw -device iwn4965fw device iwn1000fw +device iwn105fw +device iwn135fw +device iwn2000fw +device iwn2030fw +device iwn4965fw device iwn5000fw device iwn5150fw device iwn6000fw +device iwn6000g2afw +device iwn6000g2bfw device iwn6050fw device wpifw @@ -508,7 +521,7 @@ hint.pbio.0.port="0x360" device smbios device vpd device asmc -#device si +device si device tpm device padlock_rng # VIA Padlock RNG device rdrand_rng # Intel Bull Mountain RNG diff --git a/sys/amd64/include/param.h b/sys/amd64/include/param.h index 7dcd7dd..ad6c733 100644 --- a/sys/amd64/include/param.h +++ b/sys/amd64/include/param.h @@ -65,7 +65,7 @@ #if defined(SMP) || defined(KLD_MODULE) #ifndef MAXCPU -#define MAXCPU 64 +#define MAXCPU 256 #endif #else #define MAXCPU 1 diff --git a/sys/amd64/include/vmparam.h b/sys/amd64/include/vmparam.h index bda9722..14c5134 100644 --- a/sys/amd64/include/vmparam.h +++ b/sys/amd64/include/vmparam.h @@ -87,7 +87,7 @@ * largest physical address that is accessible by ISA DMA is split * into two PHYSSEG entries. */ -#define VM_PHYSSEG_MAX 31 +#define VM_PHYSSEG_MAX 63 /* * Create three free page pools: VM_FREEPOOL_DEFAULT is the default pool diff --git a/sys/amd64/vmm/intel/vtd.c b/sys/amd64/vmm/intel/vtd.c index afd7155..be57aff 100644 --- a/sys/amd64/vmm/intel/vtd.c +++ b/sys/amd64/vmm/intel/vtd.c @@ -448,6 +448,11 @@ vtd_update_mapping(void *arg, vm_paddr_t gpa, vm_paddr_t hpa, uint64_t len, ptpindex = 0; ptpshift = 0; + KASSERT(gpa + len > gpa, ("%s: invalid gpa range %#lx/%#lx", __func__, + gpa, len)); + KASSERT(gpa + len <= dom->maxaddr, ("%s: gpa range %#lx/%#lx beyond " + "domain maxaddr %#lx", __func__, gpa, len, dom->maxaddr)); + if (gpa & PAGE_MASK) panic("vtd_create_mapping: unaligned gpa 0x%0lx", gpa); diff --git a/sys/amd64/vmm/io/vatpic.c b/sys/amd64/vmm/io/vatpic.c index ee6fc84..38fc458 100644 --- a/sys/amd64/vmm/io/vatpic.c +++ b/sys/amd64/vmm/io/vatpic.c @@ -195,26 +195,29 @@ vatpic_notify_intr(struct vatpic *vatpic) atpic->mask, atpic->request, atpic->service); /* + * From Section 3.6.2, "Interrupt Modes", in the + * MPtable Specification, Version 1.4 + * * PIC interrupts are routed to both the Local APIC * and the I/O APIC to support operation in 1 of 3 * modes. * * 1. Legacy PIC Mode: the PIC effectively bypasses - * all APIC components. In mode '1' the local APIC is + * all APIC components. In this mode the local APIC is * disabled and LINT0 is reconfigured as INTR to * deliver the PIC interrupt directly to the CPU. * * 2. Virtual Wire Mode: the APIC is treated as a * virtual wire which delivers interrupts from the PIC - * to the CPU. In mode '2' LINT0 is programmed as + * to the CPU. In this mode LINT0 is programmed as * ExtINT to indicate that the PIC is the source of * the interrupt. * - * 3. Symmetric I/O Mode: PIC interrupts are fielded - * by the I/O APIC and delivered to the appropriate - * CPU. In mode '3' the I/O APIC input 0 is - * programmed as ExtINT to indicate that the PIC is - * the source of the interrupt. + * 3. Virtual Wire Mode via I/O APIC: PIC interrupts are + * fielded by the I/O APIC and delivered to the appropriate + * CPU. In this mode the I/O APIC input 0 is programmed + * as ExtINT to indicate that the PIC is the source of the + * interrupt. */ atpic->intr_raised = true; lapic_set_local_intr(vatpic->vm, -1, APIC_LVT_LINT0); diff --git a/sys/amd64/vmm/vmm.c b/sys/amd64/vmm/vmm.c index 397035a..ae67c58 100644 --- a/sys/amd64/vmm/vmm.c +++ b/sys/amd64/vmm/vmm.c @@ -572,6 +572,21 @@ vm_malloc(struct vm *vm, vm_paddr_t gpa, size_t len) return (0); } +static vm_paddr_t +vm_maxmem(struct vm *vm) +{ + int i; + vm_paddr_t gpa, maxmem; + + maxmem = 0; + for (i = 0; i < vm->num_mem_segs; i++) { + gpa = vm->mem_segs[i].gpa + vm->mem_segs[i].len; + if (gpa > maxmem) + maxmem = gpa; + } + return (maxmem); +} + static void vm_gpa_unwire(struct vm *vm) { @@ -709,7 +724,7 @@ vm_assign_pptdev(struct vm *vm, int bus, int slot, int func) if (ppt_assigned_devices(vm) == 0) { KASSERT(vm->iommu == NULL, ("vm_assign_pptdev: iommu must be NULL")); - maxaddr = vmm_mem_maxaddr(); + maxaddr = vm_maxmem(vm); vm->iommu = iommu_create_domain(maxaddr); error = vm_gpa_wire(vm); diff --git a/sys/arm/arm/disassem.c b/sys/arm/arm/disassem.c index 55ef0b2..69b8682 100644 --- a/sys/arm/arm/disassem.c +++ b/sys/arm/arm/disassem.c @@ -55,6 +55,7 @@ __FBSDID("$FreeBSD$"); #include <sys/systm.h> #include <machine/disassem.h> #include <machine/armreg.h> +#include <machine/acle-compat.h> #include <ddb/ddb.h> /* @@ -130,7 +131,7 @@ static const struct arm32_insn arm32_i[] = { { 0x0c500000, 0x04100000, "ldr", "daW" }, { 0x0c500000, 0x04400000, "strb", "daW" }, { 0x0c500000, 0x04500000, "ldrb", "daW" }, -#if defined(__FreeBSD_ARCH_armv6__) || (defined(__ARM_ARCH) && __ARM_ARCH >= 6) +#if __ARM_ARCH >= 6 { 0xffffffff, 0xf57ff01f, "clrex", "c" }, { 0x0ff00ff0, 0x01800f90, "strex", "dmo" }, { 0x0ff00fff, 0x01900f9f, "ldrex", "do" }, diff --git a/sys/arm/arm/elf_machdep.c b/sys/arm/arm/elf_machdep.c index d816980..9085d67 100644 --- a/sys/arm/arm/elf_machdep.c +++ b/sys/arm/arm/elf_machdep.c @@ -46,6 +46,8 @@ __FBSDID("$FreeBSD$"); #include <machine/elf.h> #include <machine/md_var.h> +static boolean_t elf32_arm_abi_supported(struct image_params *); + struct sysentvec elf32_freebsd_sysvec = { .sv_size = SYS_MAXSYSCALL, .sv_table = sysent, @@ -90,29 +92,42 @@ static Elf32_Brandinfo freebsd_brand_info = { .sysvec = &elf32_freebsd_sysvec, .interp_newpath = NULL, .brand_note = &elf32_freebsd_brandnote, - .flags = BI_CAN_EXEC_DYN | BI_BRAND_NOTE + .flags = BI_CAN_EXEC_DYN | BI_BRAND_NOTE, + .header_supported= elf32_arm_abi_supported, }; SYSINIT(elf32, SI_SUB_EXEC, SI_ORDER_FIRST, (sysinit_cfunc_t) elf32_insert_brand_entry, &freebsd_brand_info); -static Elf32_Brandinfo freebsd_brand_oinfo = { - .brand = ELFOSABI_FREEBSD, - .machine = EM_ARM, - .compat_3_brand = "FreeBSD", - .emul_path = NULL, - .interp_path = "/usr/libexec/ld-elf.so.1", - .sysvec = &elf32_freebsd_sysvec, - .interp_newpath = NULL, - .brand_note = &elf32_freebsd_brandnote, - .flags = BI_CAN_EXEC_DYN | BI_BRAND_NOTE -}; - -SYSINIT(oelf32, SI_SUB_EXEC, SI_ORDER_ANY, - (sysinit_cfunc_t) elf32_insert_brand_entry, - &freebsd_brand_oinfo); +static boolean_t +elf32_arm_abi_supported(struct image_params *imgp) +{ + const Elf_Ehdr *hdr = (const Elf_Ehdr *)imgp->image_header; +#ifdef __ARM_EABI__ + /* + * When configured for EABI, FreeBSD supports EABI vesions 4 and 5. + */ + if (EF_ARM_EABI_VERSION(hdr->e_flags) < EF_ARM_EABI_FREEBSD_MIN) { + if (bootverbose) + uprintf("Attempting to execute non EABI binary (rev %d) image %s", + EF_ARM_EABI_VERSION(hdr->e_flags), imgp->args->fname); + return (FALSE); + } +#else + /* + * When configured for OABI, that's all we do, so reject EABI binaries. + */ + if (EF_ARM_EABI_VERSION(hdr->e_flags) != EF_ARM_EABI_VERSION_UNKNOWN) { + if (bootverbose) + uprintf("Attempting to execute EABI binary (rev %d) image %s", + EF_ARM_EABI_VERSION(hdr->e_flags), imgp->args->fname); + return (FALSE); + } +#endif + return (TRUE); +} void elf32_dump_thread(struct thread *td __unused, void *dst __unused, diff --git a/sys/arm/arm/nexus.c b/sys/arm/arm/nexus.c index a66fc3e..c388486 100644 --- a/sys/arm/arm/nexus.c +++ b/sys/arm/arm/nexus.c @@ -362,4 +362,3 @@ nexus_ofw_map_intr(device_t dev, device_t child, phandle_t iparent, int icells, return (interrupt); } #endif - diff --git a/sys/arm/at91/at91.c b/sys/arm/at91/at91.c index 5caa326..56b32bd 100644 --- a/sys/arm/at91/at91.c +++ b/sys/arm/at91/at91.c @@ -255,7 +255,7 @@ at91_cpu_add_builtin_children(device_t dev, const struct cpu_devs *walker) { int i; - for (i = 1; walker->name; i++, walker++) { + for (i = 0; walker->name; i++, walker++) { at91_add_child(dev, i, walker->name, walker->unit, walker->mem_base, walker->mem_len, walker->irq0, walker->irq1, walker->irq2); diff --git a/sys/arm/at91/at91_aic.c b/sys/arm/at91/at91_aic.c index 0f1556c..f7489de 100644 --- a/sys/arm/at91/at91_aic.c +++ b/sys/arm/at91/at91_aic.c @@ -176,13 +176,9 @@ static driver_t at91_aic_driver = { static devclass_t at91_aic_devclass; #ifdef FDT -DRIVER_MODULE(at91_aic, simplebus, at91_aic_driver, at91_aic_devclass, NULL, - NULL); -#else -DRIVER_MODULE(at91_aic, atmelarm, at91_aic_driver, at91_aic_devclass, NULL, - NULL); -#endif -/* not yet EARLY_DRIVER_MODULE(at91_aic, simplebus, at91_aic_driver, at91_aic_devclass, NULL, NULL, BUS_PASS_INTERRUPT); -*/ +#else +EARLY_DRIVER_MODULE(at91_aic, atmelarm, at91_aic_driver, at91_aic_devclass, + NULL, NULL, BUS_PASS_INTERRUPT); +#endif diff --git a/sys/arm/at91/at91_common.c b/sys/arm/at91/at91_common.c new file mode 100644 index 0000000..8282aa1 --- /dev/null +++ b/sys/arm/at91/at91_common.c @@ -0,0 +1,117 @@ +/*- + * Copyright (c) 2014 M. Warner Losh. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + +#define _ARM32_BUS_DMA_PRIVATE +#include <sys/param.h> +#include <sys/systm.h> +#include <vm/vm.h> +#include <machine/devmap.h> +#include <machine/machdep.h> +#include <machine/platform.h> +#include <arm/at91/at91var.h> +#include <arm/at91/at91soc.h> +#include <arm/at91/at91_aicreg.h> +#include <dev/fdt/fdt_common.h> +#include <dev/ofw/openfirm.h> +#include <machine/fdt.h> + +extern const struct arm_devmap_entry at91_devmap[]; +extern struct bus_space at91_bs_tag; +bus_space_tag_t fdtbus_bs_tag = &at91_bs_tag; + +struct fdt_fixup_entry fdt_fixup_table[] = { + { NULL, NULL } +}; + +static int +fdt_aic_decode_ic(phandle_t node, pcell_t *intr, int *interrupt, int *trig, + int *pol) +{ + int offset; + + if (fdt_is_compatible(node, "atmel,at91rm9200-aic")) + offset = 0; + else + return (ENXIO); + + *interrupt = fdt32_to_cpu(intr[0]) + offset; + *trig = INTR_TRIGGER_CONFORM; + *pol = INTR_POLARITY_CONFORM; + + return (0); +} + +fdt_pic_decode_t fdt_pic_table[] = { + &fdt_aic_decode_ic, + NULL +}; + +static void +at91_eoi(void *unused) +{ + uint32_t *eoicr = (uint32_t *)(0xdffff000 + IC_EOICR); + + *eoicr = 0; +} + + +vm_offset_t +platform_lastaddr(void) +{ + + return (arm_devmap_lastaddr()); +} + +void +platform_probe_and_attach(void) +{ + + arm_post_filter = at91_eoi; + at91_soc_id(); +} + +int +platform_devmap_init(void) +{ + +// arm_devmap_add_entry(0xfff00000, 0x00100000); /* 1MB - uart, aic and timers*/ + + arm_devmap_register_table(at91_devmap); + + return (0); +} + +void +platform_gpio_init(void) +{ +} + +void +platform_late_init(void) +{ +} diff --git a/sys/arm/at91/at91_machdep.c b/sys/arm/at91/at91_machdep.c index 3da9e18..0f6b79b 100644 --- a/sys/arm/at91/at91_machdep.c +++ b/sys/arm/at91/at91_machdep.c @@ -43,6 +43,8 @@ * Created : 17/09/94 */ +#include "opt_platform.h" + #include <sys/cdefs.h> __FBSDID("$FreeBSD$"); @@ -111,8 +113,12 @@ __FBSDID("$FreeBSD$"); /* this should be evenly divisable by PAGE_SIZE / L2_TABLE_SIZE_REAL (or 4) */ #define NUM_KERNEL_PTS (KERNEL_PT_AFKERNEL + KERNEL_PT_AFKERNEL_NUM) +extern struct bus_space at91_bs_tag; + struct pv_addr kernel_pt_table[NUM_KERNEL_PTS]; +extern uint32_t at91_master_clock; + /* Static device mappings. */ const struct arm_devmap_entry at91_devmap[] = { /* @@ -194,15 +200,6 @@ const struct arm_devmap_entry at91_devmap[] = { { 0, 0, 0, 0, 0, } }; -/* Physical and virtual addresses for some global pages */ - -struct pv_addr systempage; -struct pv_addr msgbufpv; -struct pv_addr irqstack; -struct pv_addr undstack; -struct pv_addr abtstack; -struct pv_addr kernelstack; - #ifdef LINUX_BOOT_ABI extern int membanks; extern int memstart[]; @@ -444,6 +441,16 @@ board_init(void) } #endif +#ifndef FDT +/* Physical and virtual addresses for some global pages */ + +struct pv_addr msgbufpv; +struct pv_addr kernelstack; +struct pv_addr systempage; +struct pv_addr irqstack; +struct pv_addr abtstack; +struct pv_addr undstack; + void * initarm(struct arm_boot_params *abp) { @@ -651,6 +658,7 @@ initarm(struct arm_boot_params *abp) return ((void *)(kernelstack.pv_va + USPACE_SVC_STACK_TOP - sizeof(struct pcb))); } +#endif /* * These functions are handled elsewhere, so make them nops here. diff --git a/sys/arm/at91/at91_mci.c b/sys/arm/at91/at91_mci.c index 5d58228..5d426cf 100644 --- a/sys/arm/at91/at91_mci.c +++ b/sys/arm/at91/at91_mci.c @@ -1210,10 +1210,11 @@ at91_mci_intr(void *arg) */ if (cmd->opcode != 8) { device_printf(sc->dev, - "IO error; status MCI_SR = 0x%x cmd opcode = %d%s\n", - sr, cmd->opcode, + "IO error; status MCI_SR = 0x%b cmd opcode = %d%s\n", + sr, MCI_SR_BITSTRING, cmd->opcode, (cmd->opcode != 12) ? "" : (sc->flags & CMD_MULTIREAD) ? " after read" : " after write"); + /* XXX not sure RTOE needs a full reset, just a retry */ at91_mci_reset(sc); } at91_mci_next_operation(sc); diff --git a/sys/arm/at91/at91_mcireg.h b/sys/arm/at91/at91_mcireg.h index 87b08ab..1831c0d 100644 --- a/sys/arm/at91/at91_mcireg.h +++ b/sys/arm/at91/at91_mcireg.h @@ -118,6 +118,30 @@ #define MCI_SR_OVRE (0x1u << 30) /* (MCI) Overrun flag */ #define MCI_SR_UNRE (0x1u << 31) /* (MCI) Underrun flag */ +/* TXRDY,DTIP,ENDTX,TXBUFE,RTOE */ + +#define MCI_SR_BITSTRING \ + "\020" \ + "\001CMDRDY" \ + "\002RXRDY" \ + "\003TXRDY" \ + "\004BLKE" \ + "\005DTIP" \ + "\006NOTBUSY" \ + "\007ENDRX" \ + "\010ENDTX" \ + "\017RXBUFF" \ + "\020TXBUFE" \ + "\021RINDE" \ + "\022RDIRE" \ + "\023RCRCE" \ + "\024RENDE" \ + "\025RTOE" \ + "\026DCRCE" \ + "\027DTOE" \ + "\037OVRE" \ + "\040UNRE" + /* -------- MCI_IER : (MCI Offset: 0x44) MCI Interrupt Enable Register -------- */ /* -------- MCI_IDR : (MCI Offset: 0x48) MCI Interrupt Disable Register -------- */ /* -------- MCI_IMR : (MCI Offset: 0x4c) MCI Interrupt Mask Register -------- */ diff --git a/sys/arm/at91/at91_pinctrl.c b/sys/arm/at91/at91_pinctrl.c new file mode 100644 index 0000000..a53779b --- /dev/null +++ b/sys/arm/at91/at91_pinctrl.c @@ -0,0 +1,524 @@ +/*- + * Copyright (c) 2014 Warner Losh. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + +#include <sys/param.h> +#include <sys/bus.h> +#include <sys/kernel.h> +#include <sys/module.h> +#include <sys/resource.h> +#include <sys/systm.h> +#include <sys/rman.h> + +#include <machine/bus.h> + +#include <arm/at91/at91var.h> +#include <arm/at91/at91_piovar.h> + +#include <dev/fdt/fdt_common.h> +#include <dev/ofw/openfirm.h> +#include <dev/ofw/ofw_bus.h> +#include <dev/ofw/ofw_bus_subr.h> + +#define BUS_PASS_PINMUX (BUS_PASS_INTERRUPT + 1) + +struct pinctrl_range { + uint64_t bus; + uint64_t host; + uint64_t size; +}; + +struct pinctrl_softc { + device_t dev; + phandle_t node; + + struct pinctrl_range *ranges; + int nranges; + + pcell_t acells, scells; + int done_pinmux; +}; + +struct pinctrl_devinfo { + struct ofw_bus_devinfo obdinfo; + struct resource_list rl; +}; + +static int +at91_pinctrl_probe(device_t dev) +{ + + if (!ofw_bus_is_compatible(dev, "atmel,at91rm9200-pinctrl")) + return (ENXIO); + device_set_desc(dev, "pincontrol bus"); + return (0); +} + +/* XXX Make this a subclass of simplebus */ + +static struct pinctrl_devinfo * +at91_pinctrl_setup_dinfo(device_t dev, phandle_t node) +{ + struct pinctrl_softc *sc; + struct pinctrl_devinfo *ndi; + uint32_t *reg, *intr, icells; + uint64_t phys, size; + phandle_t iparent; + int i, j, k; + int nintr; + int nreg; + + sc = device_get_softc(dev); + + ndi = malloc(sizeof(*ndi), M_DEVBUF, M_WAITOK | M_ZERO); + if (ofw_bus_gen_setup_devinfo(&ndi->obdinfo, node) != 0) { + free(ndi, M_DEVBUF); + return (NULL); + } + + resource_list_init(&ndi->rl); + nreg = OF_getencprop_alloc(node, "reg", sizeof(*reg), (void **)®); + if (nreg == -1) + nreg = 0; + if (nreg % (sc->acells + sc->scells) != 0) { +// if (bootverbose) + device_printf(dev, "Malformed reg property on <%s>\n", + ndi->obdinfo.obd_name); + nreg = 0; + } + + for (i = 0, k = 0; i < nreg; i += sc->acells + sc->scells, k++) { + phys = size = 0; + for (j = 0; j < sc->acells; j++) { + phys <<= 32; + phys |= reg[i + j]; + } + for (j = 0; j < sc->scells; j++) { + size <<= 32; + size |= reg[i + sc->acells + j]; + } + + resource_list_add(&ndi->rl, SYS_RES_MEMORY, k, + phys, phys + size - 1, size); + } + free(reg, M_OFWPROP); + + nintr = OF_getencprop_alloc(node, "interrupts", sizeof(*intr), + (void **)&intr); + if (nintr > 0) { + if (OF_searchencprop(node, "interrupt-parent", &iparent, + sizeof(iparent)) == -1) { + device_printf(dev, "No interrupt-parent found, " + "assuming direct parent\n"); + iparent = OF_parent(node); + } + if (OF_searchencprop(OF_xref_phandle(iparent), + "#interrupt-cells", &icells, sizeof(icells)) == -1) { + device_printf(dev, "Missing #interrupt-cells property, " + "assuming <1>\n"); + icells = 1; + } + if (icells < 1 || icells > nintr) { + device_printf(dev, "Invalid #interrupt-cells property " + "value <%d>, assuming <1>\n", icells); + icells = 1; + } + for (i = 0, k = 0; i < nintr; i += icells, k++) { + intr[i] = ofw_bus_map_intr(dev, iparent, icells, + &intr[i]); + resource_list_add(&ndi->rl, SYS_RES_IRQ, k, intr[i], + intr[i], 1); + } + free(intr, M_OFWPROP); + } + + return (ndi); +} + +static int +at91_pinctrl_fill_ranges(phandle_t node, struct pinctrl_softc *sc) +{ + int host_address_cells; + cell_t *base_ranges; + ssize_t nbase_ranges; + int err; + int i, j, k; + + err = OF_searchencprop(OF_parent(node), "#address-cells", + &host_address_cells, sizeof(host_address_cells)); + if (err <= 0) + return (-1); + + nbase_ranges = OF_getproplen(node, "ranges"); + if (nbase_ranges < 0) + return (-1); + sc->nranges = nbase_ranges / sizeof(cell_t) / + (sc->acells + host_address_cells + sc->scells); + if (sc->nranges == 0) + return (0); + + sc->ranges = malloc(sc->nranges * sizeof(sc->ranges[0]), + M_DEVBUF, M_WAITOK); + base_ranges = malloc(nbase_ranges, M_DEVBUF, M_WAITOK); + OF_getencprop(node, "ranges", base_ranges, nbase_ranges); + + for (i = 0, j = 0; i < sc->nranges; i++) { + sc->ranges[i].bus = 0; + for (k = 0; k < sc->acells; k++) { + sc->ranges[i].bus <<= 32; + sc->ranges[i].bus |= base_ranges[j++]; + } + sc->ranges[i].host = 0; + for (k = 0; k < host_address_cells; k++) { + sc->ranges[i].host <<= 32; + sc->ranges[i].host |= base_ranges[j++]; + } + sc->ranges[i].size = 0; + for (k = 0; k < sc->scells; k++) { + sc->ranges[i].size <<= 32; + sc->ranges[i].size |= base_ranges[j++]; + } + } + + free(base_ranges, M_DEVBUF); + return (sc->nranges); +} + +static int +at91_pinctrl_attach(device_t dev) +{ + struct pinctrl_softc *sc; + struct pinctrl_devinfo *di; + phandle_t node; + device_t cdev; + + sc = device_get_softc(dev); + node = ofw_bus_get_node(dev); + + sc->dev = dev; + sc->node = node; + + /* + * Some important numbers + */ + sc->acells = 2; + OF_getencprop(node, "#address-cells", &sc->acells, sizeof(sc->acells)); + sc->scells = 1; + OF_getencprop(node, "#size-cells", &sc->scells, sizeof(sc->scells)); + + if (at91_pinctrl_fill_ranges(node, sc) < 0) { + device_printf(dev, "could not get ranges\n"); + return (ENXIO); + } + + for (node = OF_child(node); node > 0; node = OF_peer(node)) { + if ((di = at91_pinctrl_setup_dinfo(dev, node)) == NULL) + continue; + cdev = device_add_child(dev, NULL, -1); + if (cdev == NULL) { + device_printf(dev, "<%s>: device_add_child failed\n", + di->obdinfo.obd_name); + resource_list_free(&di->rl); + ofw_bus_gen_destroy_devinfo(&di->obdinfo); + free(di, M_DEVBUF); + continue; + } + device_set_ivars(cdev, di); + } + + return (bus_generic_attach(dev)); +} + +static const struct ofw_bus_devinfo * +pinctrl_get_devinfo(device_t bus __unused, device_t child) +{ + struct pinctrl_devinfo *ndi; + + ndi = device_get_ivars(child); + return (&ndi->obdinfo); +} + +static struct resource * +pinctrl_alloc_resource(device_t bus, device_t child, int type, int *rid, + u_long start, u_long end, u_long count, u_int flags) +{ + struct pinctrl_softc *sc; + struct pinctrl_devinfo *di; + struct resource_list_entry *rle; + int j; + + sc = device_get_softc(bus); + + /* + * Request for the default allocation with a given rid: use resource + * list stored in the local device info. + */ + if ((start == 0UL) && (end == ~0UL)) { + if ((di = device_get_ivars(child)) == NULL) + return (NULL); + + if (type == SYS_RES_IOPORT) + type = SYS_RES_MEMORY; + + rle = resource_list_find(&di->rl, type, *rid); + if (rle == NULL) { +// if (bootverbose) + device_printf(bus, "no default resources for " + "rid = %d, type = %d\n", *rid, type); + return (NULL); + } + start = rle->start; + end = rle->end; + count = rle->count; + } + + if (type == SYS_RES_MEMORY) { + /* Remap through ranges property */ + for (j = 0; j < sc->nranges; j++) { + if (start >= sc->ranges[j].bus && end < + sc->ranges[j].bus + sc->ranges[j].size) { + start -= sc->ranges[j].bus; + start += sc->ranges[j].host; + end -= sc->ranges[j].bus; + end += sc->ranges[j].host; + break; + } + } + if (j == sc->nranges && sc->nranges != 0) { +// if (bootverbose) + device_printf(bus, "Could not map resource " + "%#lx-%#lx\n", start, end); + + return (NULL); + } + } + + return (bus_generic_alloc_resource(bus, child, type, rid, start, end, + count, flags)); +} + +static int +pinctrl_print_res(struct pinctrl_devinfo *di) +{ + int rv; + + rv = 0; + rv += resource_list_print_type(&di->rl, "mem", SYS_RES_MEMORY, "%#lx"); + rv += resource_list_print_type(&di->rl, "irq", SYS_RES_IRQ, "%ld"); + return (rv); +} + +static void +pinctrl_probe_nomatch(device_t bus, device_t child) +{ + const char *name, *type, *compat; + +// if (!bootverbose) + return; + + name = ofw_bus_get_name(child); + type = ofw_bus_get_type(child); + compat = ofw_bus_get_compat(child); + + device_printf(bus, "<%s>", name != NULL ? name : "unknown"); + pinctrl_print_res(device_get_ivars(child)); + if (!ofw_bus_status_okay(child)) + printf(" disabled"); + if (type) + printf(" type %s", type); + if (compat) + printf(" compat %s", compat); + printf(" (no driver attached)\n"); +} + +static int +pinctrl_print_child(device_t bus, device_t child) +{ + int rv; + + rv = bus_print_child_header(bus, child); + rv += pinctrl_print_res(device_get_ivars(child)); + if (!ofw_bus_status_okay(child)) + rv += printf(" disabled"); + rv += bus_print_child_footer(bus, child); + return (rv); +} + +const char *periphs[] = {"gpio", "periph A", "periph B", "periph C", "periph D", "periph E" }; + +static void +pinctrl_walk_tree(device_t bus, phandle_t node) +{ + struct pinctrl_softc *sc; + char status[10]; + char name[32]; + phandle_t pinctrl[32], pins[32 * 4], scratch; + ssize_t len, npins; + int i, j; + + sc = device_get_softc(bus); + for (node = OF_child(node); node > 0; node = OF_peer(node)) { + pinctrl_walk_tree(bus, node); + memset(status, 0, sizeof(status)); + memset(name, 0, sizeof(name)); + OF_getprop(node, "status", status, sizeof(status)); + OF_getprop(node, "name", name, sizeof(name)); + if (strcmp(status, "okay") != 0) { +// printf("pinctrl: omitting node %s since it isn't active\n", name); + continue; + } + len = OF_getencprop(node, "pinctrl-0", pinctrl, sizeof(pinctrl)); + if (len <= 0) { +// printf("pinctrl: no pinctrl-0 property for node %s, omitting\n", name); + continue; + } + len /= sizeof(phandle_t); + printf("pinctrl: Found active node %s\n", name); + for (i = 0; i < len; i++) { + scratch = OF_xref_phandle(pinctrl[i]); + npins = OF_getencprop(scratch, "atmel,pins", pins, sizeof(pins)); + if (npins <= 0) { + printf("We're doing it wrong %s\n", name); + continue; + } + memset(name, 0, sizeof(name)); + OF_getprop(scratch, "name", name, sizeof(name)); + npins /= (4 * 4); + printf("----> need to cope with %d more pins for %s\n", npins, name); + for (j = 0; j < npins; j++) { + uint32_t unit = pins[j * 4]; + uint32_t pin = pins[j * 4 + 1]; + uint32_t periph = pins[j * 4 + 2]; + uint32_t flags = pins[j * 4 + 3]; + uint32_t pio = (0xfffffff & sc->ranges[0].bus) + 0x200 * unit; + printf("P%c%d %s %#x\n", unit + 'A', pin, periphs[periph], + flags); + switch (periph) { + case 0: + at91_pio_use_gpio(pio, 1u << pin); + at91_pio_gpio_pullup(pio, 1u << pin, !!(flags & 1)); + at91_pio_gpio_high_z(pio, 1u << pin, !!(flags & 2)); + at91_pio_gpio_set_deglitch(pio, 1u << pin, !!(flags & 4)); + // at91_pio_gpio_pulldown(pio, 1u << pin, !!(flags & 8)); + // at91_pio_gpio_dis_schmidt(pio, 1u << pin, !!(flags & 16)); + break; + case 1: + at91_pio_use_periph_a(pio, 1u << pin, flags); + break; + case 2: + at91_pio_use_periph_b(pio, 1u << pin, flags); + break; + } + } + } + } +} + +static void +pinctrl_new_pass(device_t bus) +{ + struct pinctrl_softc *sc; + phandle_t node; + + sc = device_get_softc(bus); + + bus_generic_new_pass(bus); + + if (sc->done_pinmux || bus_current_pass < BUS_PASS_PINMUX) + return; + sc->done_pinmux++; + + node = OF_peer(0); + if (node == -1) + return; + pinctrl_walk_tree(bus, node); +} + +static device_method_t at91_pinctrl_methods[] = { + DEVMETHOD(device_probe, at91_pinctrl_probe), + DEVMETHOD(device_attach, at91_pinctrl_attach), + + DEVMETHOD(bus_print_child, pinctrl_print_child), + DEVMETHOD(bus_probe_nomatch, pinctrl_probe_nomatch), + DEVMETHOD(bus_setup_intr, bus_generic_setup_intr), + DEVMETHOD(bus_teardown_intr, bus_generic_teardown_intr), + DEVMETHOD(bus_alloc_resource, pinctrl_alloc_resource), + DEVMETHOD(bus_release_resource, bus_generic_release_resource), + DEVMETHOD(bus_activate_resource, bus_generic_activate_resource), + DEVMETHOD(bus_deactivate_resource, bus_generic_deactivate_resource), + DEVMETHOD(bus_adjust_resource, bus_generic_adjust_resource), + DEVMETHOD(bus_child_pnpinfo_str, ofw_bus_gen_child_pnpinfo_str), + DEVMETHOD(bus_new_pass, pinctrl_new_pass), + + /* ofw_bus interface */ + DEVMETHOD(ofw_bus_get_devinfo, pinctrl_get_devinfo), + DEVMETHOD(ofw_bus_get_compat, ofw_bus_gen_get_compat), + DEVMETHOD(ofw_bus_get_model, ofw_bus_gen_get_model), + DEVMETHOD(ofw_bus_get_name, ofw_bus_gen_get_name), + DEVMETHOD(ofw_bus_get_node, ofw_bus_gen_get_node), + DEVMETHOD(ofw_bus_get_type, ofw_bus_gen_get_type), + + DEVMETHOD_END +}; + +static driver_t at91_pinctrl_driver = { + "at91_pinctrl", + at91_pinctrl_methods, + sizeof(struct pinctrl_softc), +}; + +static devclass_t at91_pinctrl_devclass; + +EARLY_DRIVER_MODULE(at91_pinctrl, simplebus, at91_pinctrl_driver, at91_pinctrl_devclass, + NULL, NULL, BUS_PASS_BUS); + +/* + * dummy driver to force pass BUS_PASS_PINMUX to happen. + */ +static int +at91_pingroup_probe(device_t dev) +{ + return ENXIO; +} + +static device_method_t at91_pingroup_methods[] = { + DEVMETHOD(device_probe, at91_pingroup_probe), + + DEVMETHOD_END +}; + + +static driver_t at91_pingroup_driver = { + "at91_pingroup", + at91_pingroup_methods, + 0, +}; + +static devclass_t at91_pingroup_devclass; + +EARLY_DRIVER_MODULE(at91_pingroup, at91_pinctrl, at91_pingroup_driver, at91_pingroup_devclass, + NULL, NULL, BUS_PASS_PINMUX); diff --git a/sys/arm/at91/at91_pio.c b/sys/arm/at91/at91_pio.c index b902294..ff36097 100644 --- a/sys/arm/at91/at91_pio.c +++ b/sys/arm/at91/at91_pio.c @@ -591,6 +591,17 @@ at91_pio_gpio_set_deglitch(uint32_t pio, uint32_t data_mask, int use_deglitch) } void +at91_pio_gpio_pullup(uint32_t pio, uint32_t data_mask, int do_pullup) +{ + uint32_t *PIO = (uint32_t *)(AT91_BASE + pio); + + if (do_pullup) + PIO[PIO_PUER / 4] = data_mask; + else + PIO[PIO_PUDR / 4] = data_mask; +} + +void at91_pio_gpio_set_interrupt(uint32_t pio, uint32_t data_mask, int enable_interrupt) { @@ -611,12 +622,21 @@ at91_pio_gpio_clear_interrupt(uint32_t pio) return (PIO[PIO_ISR / 4]); } +static void +at91_pio_new_pass(device_t dev) +{ + + device_printf(dev, "Pass %d\n", bus_current_pass); +} + static device_method_t at91_pio_methods[] = { /* Device interface */ DEVMETHOD(device_probe, at91_pio_probe), DEVMETHOD(device_attach, at91_pio_attach), DEVMETHOD(device_detach, at91_pio_detach), + DEVMETHOD(bus_new_pass, at91_pio_new_pass), + DEVMETHOD_END }; @@ -626,10 +646,5 @@ static driver_t at91_pio_driver = { sizeof(struct at91_pio_softc), }; -#ifdef FDT -DRIVER_MODULE(at91_pio, simplebus, at91_pio_driver, at91_pio_devclass, NULL, - NULL); -#else -DRIVER_MODULE(at91_pio, atmelarm, at91_pio_driver, at91_pio_devclass, NULL, - NULL); -#endif +EARLY_DRIVER_MODULE(at91_pio, at91_pinctrl, at91_pio_driver, at91_pio_devclass, + NULL, NULL, BUS_PASS_INTERRUPT); diff --git a/sys/arm/at91/at91_piovar.h b/sys/arm/at91/at91_piovar.h index d2b912d..7b83d07 100644 --- a/sys/arm/at91/at91_piovar.h +++ b/sys/arm/at91/at91_piovar.h @@ -45,5 +45,6 @@ void at91_pio_gpio_set_deglitch(uint32_t pio, uint32_t data_mask, void at91_pio_gpio_set_interrupt(uint32_t pio, uint32_t data_mask, int enable_interrupt); uint32_t at91_pio_gpio_clear_interrupt(uint32_t pio); +void at91_pio_gpio_pullup(uint32_t pio, uint32_t data_mask, int do_pullup); #endif /* ARM_AT91_AT91_PIOVAR_H */ diff --git a/sys/arm/at91/at91_pit.c b/sys/arm/at91/at91_pit.c index 944c75e..a4b58eb 100644 --- a/sys/arm/at91/at91_pit.c +++ b/sys/arm/at91/at91_pit.c @@ -214,9 +214,9 @@ static driver_t at91_pit_driver = { static devclass_t at91_pit_devclass; #ifdef FDT -DRIVER_MODULE(at91_pit, simplebus, at91_pit_driver, at91_pit_devclass, NULL, - NULL); +EARLY_DRIVER_MODULE(at91_pit, simplebus, at91_pit_driver, at91_pit_devclass, + NULL, NULL, BUS_PASS_TIMER); #else -DRIVER_MODULE(at91_pit, atmelarm, at91_pit_driver, at91_pit_devclass, NULL, - NULL); +EARLY_DRIVER_MODULE(at91_pit, atmelarm, at91_pit_driver, at91_pit_devclass, + NULL, NULL, BUS_PASS_TIMER); #endif diff --git a/sys/arm/at91/at91_pmc.c b/sys/arm/at91/at91_pmc.c index 904709b..13d5ff7 100644 --- a/sys/arm/at91/at91_pmc.c +++ b/sys/arm/at91/at91_pmc.c @@ -709,9 +709,9 @@ static driver_t at91_pmc_driver = { static devclass_t at91_pmc_devclass; #ifdef FDT -DRIVER_MODULE(at91_pmc, simplebus, at91_pmc_driver, at91_pmc_devclass, NULL, - NULL); +EARLY_DRIVER_MODULE(at91_pmc, simplebus, at91_pmc_driver, at91_pmc_devclass, + NULL, NULL, BUS_PASS_CPU); #else -DRIVER_MODULE(at91_pmc, atmelarm, at91_pmc_driver, at91_pmc_devclass, NULL, - NULL); +EARLY_DRIVER_MODULE(at91_pmc, atmelarm, at91_pmc_driver, at91_pmc_devclass, + NULL, NULL, BUS_PASS_CPU); #endif diff --git a/sys/arm/at91/at91sam9260.c b/sys/arm/at91/at91sam9260.c index 03ad462..5b0f537 100644 --- a/sys/arm/at91/at91sam9260.c +++ b/sys/arm/at91/at91sam9260.c @@ -103,6 +103,7 @@ static const uint32_t at91_pio_base[] = { static const struct cpu_devs at91_devs[] = { + DEVICE("at91_aic", AIC, 0), DEVICE("at91_pmc", PMC, 0), DEVICE("at91_wdt", WDT, 0), DEVICE("at91_rst", RSTC, 0), diff --git a/sys/arm/at91/at91sam9260reg.h b/sys/arm/at91/at91sam9260reg.h index 5320d8a..839b714 100644 --- a/sys/arm/at91/at91sam9260reg.h +++ b/sys/arm/at91/at91sam9260reg.h @@ -220,6 +220,7 @@ #define AT91SAM9260_IRQ_RSTC AT91SAM9260_IRQ_SYSTEM #define AT91SAM9260_IRQ_OHCI AT91SAM9260_IRQ_UHP #define AT91SAM9260_IRQ_NAND (-1) +#define AT91SAM9260_IRQ_AIC (-1) #define AT91SAM9260_AIC_BASE 0xffff000 #define AT91SAM9260_AIC_SIZE 0x200 diff --git a/sys/arm/at91/files.at91 b/sys/arm/at91/files.at91 index f8af397..f8a98eb 100644 --- a/sys/arm/at91/files.at91 +++ b/sys/arm/at91/files.at91 @@ -3,28 +3,34 @@ arm/arm/cpufunc_asm_arm9.S standard arm/at91/at91_machdep.c standard arm/at91/at91_aic.c standard arm/at91/at91.c standard -arm/at91/at91_cfata.c optional at91_cfata -arm/at91/at91_mci.c optional at91_mci -dev/nand/nfc_at91.c optional nand +arm/at91/at91_aic.c standard arm/at91/at91_pio.c standard arm/at91/at91_pmc.c standard +arm/at91/at91_smc.c standard +arm/at91/at91_cfata.c optional at91_cfata +arm/at91/at91_common.c optional fdt +arm/at91/at91_mci.c optional at91_mci +arm/at91/at91_pinctrl.c optional fdt arm/at91/at91_pit.c optional at91sam9 arm/at91/at91_reset.S optional at91sam9 arm/at91/at91_rst.c optional at91sam9 arm/at91/at91_rtc.c optional at91_rtc -arm/at91/at91_smc.c standard +arm/at91/at91_sdramc.c optional fdt +arm/at91/at91_shdwc.c optional fdt arm/at91/at91_spi.c optional at91_spi \ dependency "spibus_if.h" arm/at91/at91_ssc.c optional at91_ssc arm/at91/at91_st.c optional at91rm9200 -arm/at91/at91_tc.c optional at91_tc +arm/at91/at91_tcb.c optional fdt arm/at91/at91_twi.c optional at91_twi arm/at91/at91_wdt.c optional at91_wdt arm/at91/if_ate.c optional ate arm/at91/if_macb.c optional macb -arm/at91/uart_bus_at91usart.c optional uart -arm/at91/uart_cpu_at91usart.c optional uart +arm/at91/uart_bus_at91usart.c optional uart ! fdt +arm/at91/uart_cpu_at91usart.c optional uart ! fdt arm/at91/uart_dev_at91usart.c optional uart +dev/uart/uart_cpu_fdt.c optional uart fdt +dev/nand/nfc_at91.c optional nand # # All the "systems on a chip" we support # @@ -54,5 +60,7 @@ arm/at91/board_tsc4370.c optional at91_board_tsc4370 # usb # dev/usb/controller/at91dci.c optional at91_dci -dev/usb/controller/at91dci_atmelarm.c optional at91_dci -dev/usb/controller/ohci_atmelarm.c optional ohci +dev/usb/controller/at91dci_atmelarm.c optional at91_dci !fdt +dev/usb/controller/ohci_atmelarm.c optional ohci !fdt +dev/usb/controller/at91dci_fdt.c optional at91_dci fdt +dev/usb/controller/ohci_fdt.c optional ohci fdt diff --git a/sys/arm/at91/std.atmel b/sys/arm/at91/std.atmel index 108cf54..fc1e968 100644 --- a/sys/arm/at91/std.atmel +++ b/sys/arm/at91/std.atmel @@ -11,3 +11,5 @@ device at91sam9x5 # bring in the sam specific timers and such device at91sam9 + +options ARM_DEVICE_MULTIPASS diff --git a/sys/arm/conf/HL201 b/sys/arm/conf/HL201 index fb80bbe..df5d53d 100644 --- a/sys/arm/conf/HL201 +++ b/sys/arm/conf/HL201 @@ -23,8 +23,6 @@ ident HL201 include "../at91/std.hl201" -#To statically compile in device wiring instead of /boot/device.hints -hints "HL201.hints" makeoptions MODULES_OVERRIDE="" makeoptions DEBUG=-g # Build kernel with gdb(1) debug symbols @@ -76,8 +74,14 @@ device loop device ether device uart device ate +device at91_wdt device mii -#device lxtphy +device lxtphy + +# I2C +device at91_twi # Atmel AT91 Two-wire Interface +device iic # I2C generic I/O device driver +device iicbus # I2C bus system # Debugging for use in -current #options INVARIANTS # Enable calls of extra sanity checking @@ -105,7 +109,7 @@ device miibus #device cue # CATC USB Ethernet #device kue # Kawasaki LSI USB Ethernet #device rue # RealTek RTL8150 USB Ethernet -device udav # Davicom DM9601E USB +#device udav # Davicom DM9601E USB # USB Wireless #device rum # Ralink Technology RT2501USB wireless NICs #device uath # Atheros AR5523 wireless NICs @@ -127,10 +131,16 @@ options ROOTDEVNAME=\"ufs:da0s1a\" # NAND Flash - my board as 128MB Samsung part, YMMV. device nand # NAND interface on CS3 +# SPI: Data Flash +device at91_spi # SPI: +device spibus +device at45d # at45db642 and maybe others + + # Coming soon, but not yet -#options FDT -#options FDT_DTB_STATIC -#makeoptions FDT_DTS_FILE=hl201.dts +options FDT +options FDT_DTB_STATIC +makeoptions FDT_DTS_FILE=hl201.dts options EARLY_PRINTF options SOCDEV_PA=0xfc000000 diff --git a/sys/arm/freescale/imx/imx6_anatop.c b/sys/arm/freescale/imx/imx6_anatop.c index 3097838..240abc5 100644 --- a/sys/arm/freescale/imx/imx6_anatop.c +++ b/sys/arm/freescale/imx/imx6_anatop.c @@ -558,7 +558,6 @@ static void initialize_tempmon(struct imx6_anatop_softc *sc) { uint32_t cal; - struct sysctl_ctx_list *ctx; /* * Fetch calibration data: a sensor count at room temperature (25C), @@ -602,11 +601,10 @@ initialize_tempmon(struct imx6_anatop_softc *sc) callout_reset_sbt(&sc->temp_throttle_callout, sc->temp_throttle_delay, 0, tempmon_throttle_check, sc, 0); - ctx = device_get_sysctl_ctx(sc->dev); - SYSCTL_ADD_PROC(ctx, SYSCTL_CHILDREN(device_get_sysctl_tree(sc->dev)), + SYSCTL_ADD_PROC(NULL, SYSCTL_STATIC_CHILDREN(_hw_imx6), OID_AUTO, "temperature", CTLTYPE_INT | CTLFLAG_RD, sc, 0, temp_sysctl_handler, "IK", "Current die temperature"); - SYSCTL_ADD_PROC(ctx, SYSCTL_CHILDREN(device_get_sysctl_tree(sc->dev)), + SYSCTL_ADD_PROC(NULL, SYSCTL_STATIC_CHILDREN(_hw_imx6), OID_AUTO, "throttle_temperature", CTLTYPE_INT | CTLFLAG_RW, sc, 0, temp_throttle_sysctl_handler, "IK", "Throttle CPU when exceeding this temperature"); diff --git a/sys/arm/include/acle-compat.h b/sys/arm/include/acle-compat.h new file mode 100644 index 0000000..93e965a --- /dev/null +++ b/sys/arm/include/acle-compat.h @@ -0,0 +1,185 @@ +/* + * Copyright (c) 2014 ARM Ltd + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. The name of the company may not be used to endorse or promote + * products derived from this software without specific prior written + * permission. + * + * THIS SOFTWARE IS PROVIDED BY ARM LTD ``AS IS'' AND ANY EXPRESS OR IMPLIED + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL ARM LTD BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED + * TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef __ARM_ARCH + +/* ACLE standardises a set of pre-defines that describe the ARM architecture. + These were mostly implemented in GCC around GCC-4.8; older versions + have no, or only partial support. To provide a level of backwards + compatibility we try to work out what the definitions should be, given + the older pre-defines that GCC did produce. This isn't complete, but + it should be enough for use by routines that depend on this header. */ + +/* No need to handle ARMv8, GCC had ACLE support before that. */ + +#define __ARM_ACLE 101 + +# ifdef __ARM_ARCH_7__ +/* The common subset of ARMv7 in all profiles. */ +# define __ARM_ARCH 7 +# define __ARM_ARCH_ISA_THUMB 2 +# define __ARM_FEATURE_CLZ +# define __ARM_FEATURE_LDREX 7 +# define __ARM_FEATURE_UNALIGNED +# endif + +# if defined (__ARM_ARCH_7A__) || defined (__ARM_ARCH_7R__) +# define __ARM_ARCH 7 +# define __ARM_ARCH_ISA_THUMB 2 +# define __ARM_ARCH_ISA_ARM +# define __ARM_FEATURE_CLZ +# define __ARM_FEATURE_SIMD32 +# define __ARM_FEATURE_DSP +# define __ARM_FEATURE_QBIT +# define __ARM_FEATURE_SAT +# define __ARM_FEATURE_LDREX 15 +# define __ARM_FEATURE_UNALIGNED +# ifdef __ARM_ARCH_7A__ +# define __ARM_ARCH_PROFILE 'A' +# else +# define __ARM_ARCH_PROFILE 'R' +# endif +# endif + +# ifdef __ARM_ARCH_7EM__ +# define __ARM_ARCH 7 +# define __ARM_ARCH_ISA_THUMB 2 +# define __ARM_FEATURE_CLZ +# define __ARM_FEATURE_SIMD32 +# define __ARM_FEATURE_DSP +# define __ARM_FEATURE_QBIT +# define __ARM_FEATURE_SAT +# define __ARM_FEATURE_LDREX 7 +# define __ARM_FEATURE_UNALIGNED +# define __ARM_ARCH_PROFILE 'M' +# endif + +# ifdef __ARM_ARCH_7M__ +# define __ARM_ARCH 7 +# define __ARM_ARCH_ISA_THUMB 2 +# define __ARM_FEATURE_CLZ +# define __ARM_FEATURE_QBIT +# define __ARM_FEATURE_SAT +# define __ARM_FEATURE_LDREX 7 +# define __ARM_FEATURE_UNALIGNED +# define __ARM_ARCH_PROFILE 'M' +# endif + +# ifdef __ARM_ARCH_6T2__ +# define __ARM_ARCH 6 +# define __ARM_ARCH_ISA_THUMB 2 +# define __ARM_ARCH_ISA_ARM +# define __ARM_FEATURE_CLZ +# define __ARM_FEATURE_SIMD32 +# define __ARM_FEATURE_DSP +# define __ARM_FEATURE_QBIT +# define __ARM_FEATURE_SAT +# define __ARM_FEATURE_LDREX 4 +# define __ARM_FEATURE_UNALIGNED +# endif + +# ifdef __ARM_ARCH_6M__ +# define __ARM_ARCH 6 +# define __ARM_ARCH_ISA_THUMB 1 +# define __ARM_ARCH_PROFILE 'M' +# endif + +# if defined (__ARM_ARCH_6__) || defined (__ARM_ARCH_6J__) \ + || defined (__ARM_ARCH_6K__) || defined (__ARM_ARCH_6Z__) \ + || defined (__ARM_ARCH_6ZK__) +# define __ARM_ARCH 6 +# define __ARM_ARCH_ISA_THUMB 1 +# define __ARM_ARCH_ISA_ARM +# define __ARM_FEATURE_CLZ +# define __ARM_FEATURE_SIMD32 +# define __ARM_FEATURE_DSP +# define __ARM_FEATURE_QBIT +# define __ARM_FEATURE_SAT +# define __ARM_FEATURE_UNALIGNED +# ifndef __thumb__ +# if defined (__ARM_ARCH_6K__) || defined (__ARM_ARCH_6ZK__) +# define __ARM_FEATURE_LDREX 15 +# else +# define __ARM_FEATURE_LDREX 4 +# endif +# endif +# endif + +# if defined (__ARM_ARCH_5TE__) || defined (__ARM_ARCH_5E__) +# define __ARM_ARCH 5 +# define __ARM_ARCH_ISA_ARM +# ifdef __ARM_ARCH_5TE__ +# define __ARM_ARCH_ISA_THUMB 1 +# endif +# define __ARM_FEATURE_CLZ +# define __ARM_FEATURE_DSP +# endif + +# if defined (__ARM_ARCH_5T__) || defined (__ARM_ARCH_5__) +# define __ARM_ARCH 5 +# define __ARM_ARCH_ISA_ARM +# ifdef __ARM_ARCH_5TE__ +# define __ARM_ARCH_ISA_THUMB 1 +# endif +# define __ARM_FEATURE_CLZ +# endif + +# ifdef __ARM_ARCH_4T__ +# define __ARM_ARCH 4 +# define __ARM_ARCH_ISA_ARM +# define __ARM_ARCH_ISA_THUMB 1 +# endif + +# ifdef __ARM_ARCH_4__ +# define __ARM_ARCH 4 +# define __ARM_ARCH_ISA_ARM +# endif + +# if defined (__ARM_ARCH_3__) || defined (__ARM_ARCH_3M__) +# define __ARM_ARCH 3 +# define __ARM_ARCH_ISA_ARM +# endif + +# ifdef __ARM_ARCH_2__ +# define __ARM_ARCH 2 +# define __ARM_ARCH_ISA_ARM +# endif + +# ifdef __ARMEB__ +# define __ARM_BIG_ENDIAN +# endif + +/* If we still don't know what the target architecture is, then we're + probably not using GCC. */ +# ifndef __ARM_ARCH +# error Unable to determine architecture version. +# endif + +#endif /* __ARM_ARCH */ diff --git a/sys/arm/include/elf.h b/sys/arm/include/elf.h index 9b18646..b0aa7c6 100644 --- a/sys/arm/include/elf.h +++ b/sys/arm/include/elf.h @@ -103,6 +103,12 @@ __ElfType(Auxinfo); #define ELF_TARG_MACH EM_ARM #define ELF_TARG_VER 1 +/* Defines specific for arm headers */ +#define EF_ARM_EABIMASK 0xff000000 +#define EF_ARM_EABI_VERSION(x) (((x) & EF_ARM_EABIMASK) >> 24) +#define EF_ARM_EABI_VERSION_UNKNOWN 0 +#define EF_ARM_EABI_FREEBSD_MIN 4 + /* * Magic number for the elf trampoline, chosen wisely to be an immediate * value. diff --git a/sys/arm/include/param.h b/sys/arm/include/param.h index d28a2b3..4a64607 100644 --- a/sys/arm/include/param.h +++ b/sys/arm/include/param.h @@ -46,13 +46,14 @@ */ #include <machine/_align.h> +#include <machine/acle-compat.h> #define STACKALIGNBYTES (8 - 1) #define STACKALIGN(p) ((u_int)(p) & ~STACKALIGNBYTES) #define __PCI_REROUTE_INTERRUPT -#if defined(__FreeBSD_ARCH_armv6__) || (defined(__ARM_ARCH) && __ARM_ARCH >= 6) +#if __ARM_ARCH >= 6 #define _V6_SUFFIX "v6" #else #define _V6_SUFFIX "" @@ -64,7 +65,7 @@ #define _HF_SUFFIX "" #endif -#ifdef __ARMEB__ +#ifdef __ARM_BIG_ENDIAN #define _EB_SUFFIX "eb" #else #define _EB_SUFFIX "" diff --git a/sys/arm/include/platform.h b/sys/arm/include/platform.h index d4db0e1..5632003 100644 --- a/sys/arm/include/platform.h +++ b/sys/arm/include/platform.h @@ -29,6 +29,34 @@ #ifndef _MACHINE_PLATFORM_H_ #define _MACHINE_PLATFORM_H_ +/* + * Initialization functions called by the common initarm() function in + * arm/machdep.c (but not necessarily from the custom initarm() functions of + * older code). + * + * - platform_probe_and_attach() is called very early, after parsing the boot + * params and after physical memory has been located and sized. + * + * - platform_devmap_init() is called as one of the last steps of early virtual + * memory initialization, shortly before the new page tables are installed. + * + * - platform_lastaddr() is called after platform_devmap_init(), and must return + * the address of the first byte of unusable KVA space. This allows a + * platform to carve out of the top of the KVA space whatever reserves it + * needs for things like static device mapping, and this is called to get the + * value before calling pmap_bootstrap() which uses the value to size the + * available KVA. + * + * - platform_gpio_init() is called after the static device mappings are + * established and just before cninit(). The intention is that the routine + * can do any hardware setup (such as gpio or pinmux) necessary to make the + * console functional. + * + * - platform_late_init() is called just after cninit(). This is the first of + * the init routines that can use printf() and expect the output to appear on + * a standard console. + * + */ void platform_probe_and_attach(void); int platform_devmap_init(void); vm_offset_t platform_lastaddr(void); diff --git a/sys/arm/ti/ti_i2c.c b/sys/arm/ti/ti_i2c.c index e76ab11..3ad5102 100644 --- a/sys/arm/ti/ti_i2c.c +++ b/sys/arm/ti/ti_i2c.c @@ -1,6 +1,6 @@ /*- - * Copyright (c) 2011 - * Ben Gray <ben.r.gray@gmail.com>. + * Copyright (c) 2011 Ben Gray <ben.r.gray@gmail.com>. + * Copyright (c) 2014 Luiz Otavio O Souza <loos@freebsd.org>. * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -58,9 +58,9 @@ __FBSDID("$FreeBSD$"); #include <sys/module.h> #include <sys/mutex.h> #include <sys/rman.h> +#include <sys/sysctl.h> #include <machine/bus.h> -#include <dev/fdt/fdt_common.h> #include <dev/ofw/openfirm.h> #include <dev/ofw/ofw_bus.h> #include <dev/ofw/ofw_bus_subr.h> @@ -90,8 +90,13 @@ struct ti_i2c_softc struct mtx sc_mtx; - volatile uint16_t sc_stat_flags; /* contains the status flags last IRQ */ + struct iic_msg* sc_buffer; + int sc_bus_inuse; + int sc_buffer_pos; + int sc_error; + int sc_fifo_trsh; + uint16_t sc_con_reg; uint16_t sc_rev; }; @@ -106,63 +111,54 @@ struct ti_i2c_clock_config uint8_t hssclh; /* High Speed mode SCL high time */ }; +#if defined(SOC_OMAP3) +#error "Unsupported SoC" +#endif + #if defined(SOC_OMAP4) static struct ti_i2c_clock_config ti_omap4_i2c_clock_configs[] = { - { IIC_SLOW, 100000, 23, 13, 15, 0, 0}, - { IIC_FAST, 400000, 9, 5, 7, 0, 0}, - { IIC_FASTEST, 3310000, 1, 113, 115, 7, 10}, + { IIC_UNKNOWN, 100000, 23, 13, 15, 0, 0}, + { IIC_SLOW, 100000, 23, 13, 15, 0, 0}, + { IIC_FAST, 400000, 9, 5, 7, 0, 0}, + { IIC_FASTEST, 1000000, 5, 3, 4, 0, 0}, + /* { IIC_FASTEST, 3200000, 1, 113, 115, 7, 10}, - HS mode */ { -1, 0 } }; #endif #if defined(SOC_TI_AM335X) +/* + * AM335X doesn't support HS mode. For 100kHz I2C clock set the internal + * clock to 12Mhz, for 400kHz I2C clock set the internal clock to 24Mhz. + */ static struct ti_i2c_clock_config ti_am335x_i2c_clock_configs[] = { - { IIC_SLOW, 100000, 3, 53, 55, 0, 0}, - { IIC_FAST, 400000, 3, 8, 10, 0, 0}, - { IIC_FASTEST, 400000, 3, 8, 10, 0, 0}, /* This might be higher */ + { IIC_UNKNOWN, 100000, 7, 59, 61, 0, 0}, + { IIC_SLOW, 100000, 7, 59, 61, 0, 0}, + { IIC_FAST, 400000, 3, 23, 25, 0, 0}, + { IIC_FASTEST, 400000, 3, 23, 25, 0, 0}, { -1, 0 } }; #endif - -#define TI_I2C_REV1 0x003C /* OMAP3 */ -#define TI_I2C_REV2 0x000A /* OMAP4 */ - /** * Locking macros used throughout the driver */ -#define TI_I2C_LOCK(_sc) mtx_lock(&(_sc)->sc_mtx) -#define TI_I2C_UNLOCK(_sc) mtx_unlock(&(_sc)->sc_mtx) -#define TI_I2C_LOCK_INIT(_sc) \ - mtx_init(&_sc->sc_mtx, device_get_nameunit(_sc->sc_dev), \ - "ti_i2c", MTX_DEF) -#define TI_I2C_LOCK_DESTROY(_sc) mtx_destroy(&_sc->sc_mtx); -#define TI_I2C_ASSERT_LOCKED(_sc) mtx_assert(&_sc->sc_mtx, MA_OWNED); -#define TI_I2C_ASSERT_UNLOCKED(_sc) mtx_assert(&_sc->sc_mtx, MA_NOTOWNED); +#define TI_I2C_LOCK(_sc) mtx_lock(&(_sc)->sc_mtx) +#define TI_I2C_UNLOCK(_sc) mtx_unlock(&(_sc)->sc_mtx) +#define TI_I2C_LOCK_INIT(_sc) \ + mtx_init(&_sc->sc_mtx, device_get_nameunit(_sc->sc_dev), \ + "ti_i2c", MTX_DEF) +#define TI_I2C_LOCK_DESTROY(_sc) mtx_destroy(&_sc->sc_mtx) +#define TI_I2C_ASSERT_LOCKED(_sc) mtx_assert(&_sc->sc_mtx, MA_OWNED) +#define TI_I2C_ASSERT_UNLOCKED(_sc) mtx_assert(&_sc->sc_mtx, MA_NOTOWNED) #ifdef DEBUG -#define ti_i2c_dbg(_sc, fmt, args...) \ - device_printf((_sc)->sc_dev, fmt, ##args) +#define ti_i2c_dbg(_sc, fmt, args...) \ + device_printf((_sc)->sc_dev, fmt, ##args) #else -#define ti_i2c_dbg(_sc, fmt, args...) +#define ti_i2c_dbg(_sc, fmt, args...) #endif -static devclass_t ti_i2c_devclass; - -/* bus entry points */ - -static int ti_i2c_probe(device_t dev); -static int ti_i2c_attach(device_t dev); -static int ti_i2c_detach(device_t dev); -static void ti_i2c_intr(void *); - -/* OFW routine */ -static phandle_t ti_i2c_get_node(device_t bus, device_t dev); - -/* helper routines */ -static int ti_i2c_activate(device_t dev); -static void ti_i2c_deactivate(device_t dev); - /** * ti_i2c_read_2 - reads a 16-bit value from one of the I2C registers * @sc: I2C device context @@ -178,7 +174,8 @@ static void ti_i2c_deactivate(device_t dev); static inline uint16_t ti_i2c_read_2(struct ti_i2c_softc *sc, bus_size_t off) { - return bus_read_2(sc->sc_mem_res, off); + + return (bus_read_2(sc->sc_mem_res, off)); } /** @@ -196,142 +193,117 @@ ti_i2c_read_2(struct ti_i2c_softc *sc, bus_size_t off) static inline void ti_i2c_write_2(struct ti_i2c_softc *sc, bus_size_t off, uint16_t val) { - bus_write_2(sc->sc_mem_res, off, val); -} -/** - * ti_i2c_read_reg - reads a 16-bit value from one of the I2C registers - * take into account revision-dependent register offset - * @sc: I2C device context - * @off: the byte offset within the register bank to read from. - * - * - * LOCKING: - * No locking required - * - * RETURNS: - * 16-bit value read from the register. - */ -static inline uint16_t -ti_i2c_read_reg(struct ti_i2c_softc *sc, bus_size_t off) -{ - /* XXXOMAP3: FIXME add registers mapping here */ - return bus_read_2(sc->sc_mem_res, off); -} - -/** - * ti_i2c_write_reg - writes a 16-bit value to one of the I2C registers - * take into account revision-dependent register offset - * @sc: I2C device context - * @off: the byte offset within the register bank to read from. - * @val: the value to write into the register - * - * LOCKING: - * No locking required - * - * RETURNS: - * 16-bit value read from the register. - */ -static inline void -ti_i2c_write_reg(struct ti_i2c_softc *sc, bus_size_t off, uint16_t val) -{ - /* XXXOMAP3: FIXME add registers mapping here */ bus_write_2(sc->sc_mem_res, off, val); } -/** - * ti_i2c_set_intr_enable - writes the interrupt enable register - * @sc: I2C device context - * @ie: bitmask of the interrupts to enable - * - * This function is needed as writing the I2C_IE register on the OMAP4 devices - * doesn't seem to actually enable the interrupt, rather you have to write - * through the I2C_IRQENABLE_CLR and I2C_IRQENABLE_SET registers. - * - * LOCKING: - * No locking required - * - * RETURNS: - * Nothing. - */ -static inline void -ti_i2c_set_intr_enable(struct ti_i2c_softc *sc, uint16_t ie) -{ - /* XXXOMAP3: FIXME */ - ti_i2c_write_2(sc, I2C_REG_IRQENABLE_CLR, 0xffff); - if (ie) - ti_i2c_write_2(sc, I2C_REG_IRQENABLE_SET, ie); -} - -/** - * ti_i2c_reset - attach function for the driver - * @dev: i2c device handle - * - * - * - * LOCKING: - * Called from timer context - * - * RETURNS: - * EH_HANDLED or EH_NOT_HANDLED - */ static int -ti_i2c_reset(device_t dev, u_char speed, u_char addr, u_char *oldaddr) +ti_i2c_transfer_intr(struct ti_i2c_softc* sc, uint16_t status) { - struct ti_i2c_softc *sc = device_get_softc(dev); - struct ti_i2c_clock_config *clkcfg; - uint16_t con_reg; - - switch (ti_chip()) { -#ifdef SOC_OMAP4 - case CHIP_OMAP_4: - clkcfg = ti_omap4_i2c_clock_configs; - break; -#endif -#ifdef SOC_TI_AM335X - case CHIP_AM335X: - clkcfg = ti_am335x_i2c_clock_configs; - break; -#endif - default: - panic("Unknown Ti SoC, unable to reset the i2c"); + int amount, done, i; + + done = 0; + amount = 0; + /* Check for the error conditions. */ + if (status & I2C_STAT_NACK) { + /* No ACK from slave. */ + ti_i2c_dbg(sc, "NACK\n"); + ti_i2c_write_2(sc, I2C_REG_STATUS, I2C_STAT_NACK); + sc->sc_error = ENXIO; + } else if (status & I2C_STAT_AL) { + /* Arbitration lost. */ + ti_i2c_dbg(sc, "Arbitration lost\n"); + ti_i2c_write_2(sc, I2C_REG_STATUS, I2C_STAT_AL); + sc->sc_error = ENXIO; } - while (clkcfg->speed != -1) { - if (clkcfg->speed == speed) - break; - /* take slow if speed is unknown */ - if ((speed == IIC_UNKNOWN) && (clkcfg->speed == IIC_SLOW)) - break; - clkcfg++; + + /* Check if we have finished. */ + if (status & I2C_STAT_ARDY) { + /* Register access ready - transaction complete basically. */ + ti_i2c_dbg(sc, "ARDY transaction complete\n"); + if (sc->sc_error != 0 && sc->sc_buffer->flags & IIC_M_NOSTOP) { + ti_i2c_write_2(sc, I2C_REG_CON, + sc->sc_con_reg | I2C_CON_STP); + } + ti_i2c_write_2(sc, I2C_REG_STATUS, + I2C_STAT_ARDY | I2C_STAT_RDR | I2C_STAT_RRDY | + I2C_STAT_XDR | I2C_STAT_XRDY); + return (1); } - if (clkcfg->speed == -1) - return (EINVAL); - TI_I2C_LOCK(sc); + if (sc->sc_buffer->flags & IIC_M_RD) { + /* Read some data. */ + if (status & I2C_STAT_RDR) { + /* + * Receive draining interrupt - last data received. + * The set FIFO threshold wont be reached to trigger + * RRDY. + */ + ti_i2c_dbg(sc, "Receive draining interrupt\n"); - /* First disable the controller while changing the clocks */ - con_reg = ti_i2c_read_reg(sc, I2C_REG_CON); - ti_i2c_write_reg(sc, I2C_REG_CON, 0x0000); + /* + * Drain the FIFO. Read the pending data in the FIFO. + */ + amount = sc->sc_buffer->len - sc->sc_buffer_pos; + } else if (status & I2C_STAT_RRDY) { + /* + * Receive data ready interrupt - FIFO has reached the + * set threshold. + */ + ti_i2c_dbg(sc, "Receive data ready interrupt\n"); - /* Program the prescaler */ - ti_i2c_write_reg(sc, I2C_REG_PSC, clkcfg->psc); + amount = min(sc->sc_fifo_trsh, + sc->sc_buffer->len - sc->sc_buffer_pos); + } - /* Set the bitrate */ - ti_i2c_write_reg(sc, I2C_REG_SCLL, clkcfg->scll | (clkcfg->hsscll<<8)); - ti_i2c_write_reg(sc, I2C_REG_SCLH, clkcfg->sclh | (clkcfg->hssclh<<8)); + /* Read the bytes from the fifo. */ + for (i = 0; i < amount; i++) + sc->sc_buffer->buf[sc->sc_buffer_pos++] = + (uint8_t)(ti_i2c_read_2(sc, I2C_REG_DATA) & 0xff); - /* Check if we are dealing with high speed mode */ - if ((clkcfg->hsscll + clkcfg->hssclh) > 0) - con_reg = I2C_CON_OPMODE_HS; - else - con_reg = I2C_CON_OPMODE_STD; + if (status & I2C_STAT_RDR) + ti_i2c_write_2(sc, I2C_REG_STATUS, I2C_STAT_RDR); + if (status & I2C_STAT_RRDY) + ti_i2c_write_2(sc, I2C_REG_STATUS, I2C_STAT_RRDY); - /* Enable the I2C module again */ - ti_i2c_write_reg(sc, I2C_REG_CON, I2C_CON_I2C_EN | con_reg); + } else { + /* Write some data. */ + if (status & I2C_STAT_XDR) { + /* + * Transmit draining interrupt - FIFO level is below + * the set threshold and the amount of data still to + * be transferred wont reach the set FIFO threshold. + */ + ti_i2c_dbg(sc, "Transmit draining interrupt\n"); - TI_I2C_UNLOCK(sc); + /* + * Drain the TX data. Write the pending data in the + * FIFO. + */ + amount = sc->sc_buffer->len - sc->sc_buffer_pos; + } else if (status & I2C_STAT_XRDY) { + /* + * Transmit data ready interrupt - the FIFO level + * is below the set threshold. + */ + ti_i2c_dbg(sc, "Transmit data ready interrupt\n"); - return (IIC_ENOADDR); + amount = min(sc->sc_fifo_trsh, + sc->sc_buffer->len - sc->sc_buffer_pos); + } + + /* Write the bytes from the fifo. */ + for (i = 0; i < amount; i++) + ti_i2c_write_2(sc, I2C_REG_DATA, + sc->sc_buffer->buf[sc->sc_buffer_pos++]); + + if (status & I2C_STAT_XDR) + ti_i2c_write_2(sc, I2C_REG_STATUS, I2C_STAT_XDR); + if (status & I2C_STAT_XRDY) + ti_i2c_write_2(sc, I2C_REG_STATUS, I2C_STAT_XRDY); + } + + return (done); } /** @@ -349,439 +321,163 @@ ti_i2c_reset(device_t dev, u_char speed, u_char addr, u_char *oldaddr) static void ti_i2c_intr(void *arg) { - struct ti_i2c_softc *sc = (struct ti_i2c_softc*) arg; - uint16_t status; + int done; + struct ti_i2c_softc *sc; + uint16_t events, status; - status = ti_i2c_read_reg(sc, I2C_REG_STAT); - if (status == 0) - return; + sc = (struct ti_i2c_softc *)arg; TI_I2C_LOCK(sc); - /* save the flags */ - sc->sc_stat_flags |= status; - - /* clear the status flags */ - ti_i2c_write_reg(sc, I2C_REG_STAT, status); - - /* wakeup the process the started the transaction */ - wakeup(sc); - - TI_I2C_UNLOCK(sc); - - return; -} - -/** - * ti_i2c_wait - waits for the specific event to occur - * @sc: i2c driver context - * @flags: the event(s) to wait on, this is a bitmask of the I2C_STAT_??? flags - * @statp: if not null will contain the status flags upon return - * @timo: the number of ticks to wait - * - * - * - * LOCKING: - * The driver context must be locked before calling this function. Internally - * the function sleeps, releasing the lock as it does so, however the lock is - * always retaken before this function returns. - * - * RETURNS: - * 0 if the event(s) were tripped within timeout period - * EBUSY if timedout waiting for the events - * ENXIO if a NACK event was received - */ -static int -ti_i2c_wait(struct ti_i2c_softc *sc, uint16_t flags, uint16_t *statp, int timo) -{ - int waittime = timo; - int start_ticks = ticks; - int rc; - - TI_I2C_ASSERT_LOCKED(sc); - - /* check if the condition has already occured, the interrupt routine will - * clear the status flags. - */ - if ((sc->sc_stat_flags & flags) == 0) { - - /* condition(s) haven't occured so sleep on the IRQ */ - while (waittime > 0) { - - rc = mtx_sleep(sc, &sc->sc_mtx, 0, "I2Cwait", waittime); - if (rc == EWOULDBLOCK) { - /* timed-out, simply break out of the loop */ - break; - } else { - /* IRQ has been tripped, but need to sanity check we have the - * right events in the status flag. - */ - if ((sc->sc_stat_flags & flags) != 0) - break; - - /* event hasn't been tripped so wait some more */ - waittime -= (ticks - start_ticks); - start_ticks = ticks; - } - } - } - - /* copy the actual status bits */ - if (statp != NULL) - *statp = sc->sc_stat_flags; - - /* return the status found */ - if ((sc->sc_stat_flags & flags) != 0) - rc = 0; - else - rc = EBUSY; - - /* clear the flags set by the interrupt handler */ - sc->sc_stat_flags = 0; - - return (rc); -} - -/** - * ti_i2c_wait_for_free_bus - waits for the bus to become free - * @sc: i2c driver context - * @timo: the time to wait for the bus to become free - * - * - * - * LOCKING: - * The driver context must be locked before calling this function. Internally - * the function sleeps, releasing the lock as it does so, however the lock is - * always taken before this function returns. - * - * RETURNS: - * 0 if the event(s) were tripped within timeout period - * EBUSY if timedout waiting for the events - * ENXIO if a NACK event was received - */ -static int -ti_i2c_wait_for_free_bus(struct ti_i2c_softc *sc, int timo) -{ - /* check if the bus is free, BB bit = 0 */ - if ((ti_i2c_read_reg(sc, I2C_REG_STAT) & I2C_STAT_BB) == 0) - return 0; - - /* enable bus free interrupts */ - ti_i2c_set_intr_enable(sc, I2C_IE_BF); - - /* wait for the bus free interrupt to be tripped */ - return ti_i2c_wait(sc, I2C_STAT_BF, NULL, timo); -} - -/** - * ti_i2c_read_bytes - attempts to perform a read operation - * @sc: i2c driver context - * @buf: buffer to hold the received bytes - * @len: the number of bytes to read - * - * This function assumes the slave address is already set - * - * LOCKING: - * The context lock should be held before calling this function - * - * RETURNS: - * 0 on function succeeded - * EINVAL if invalid message is passed as an arg - */ -static int -ti_i2c_read_bytes(struct ti_i2c_softc *sc, uint8_t *buf, uint16_t len) -{ - int timo = (hz / 4); - int err = 0; - uint16_t con_reg; - uint16_t events; - uint16_t status; - uint32_t amount = 0; - uint32_t sofar = 0; - uint32_t i; - - /* wait for the bus to become free */ - err = ti_i2c_wait_for_free_bus(sc, timo); - if (err != 0) { - device_printf(sc->sc_dev, "bus never freed\n"); - return (err); + status = ti_i2c_read_2(sc, I2C_REG_STATUS); + if (status == 0) { + TI_I2C_UNLOCK(sc); + return; } - /* set the events to wait for */ - events = I2C_IE_RDR | /* Receive draining interrupt */ - I2C_IE_RRDY | /* Receive Data Ready interrupt */ - I2C_IE_ARDY | /* Register Access Ready interrupt */ - I2C_IE_NACK | /* No Acknowledgment interrupt */ - I2C_IE_AL; - - /* enable interrupts for the events we want */ - ti_i2c_set_intr_enable(sc, events); - - /* write the number of bytes to read */ - ti_i2c_write_reg(sc, I2C_REG_CNT, len); - - /* clear the write bit and initiate the read transaction. Setting the STT - * (start) bit initiates the transfer. - */ - con_reg = ti_i2c_read_reg(sc, I2C_REG_CON); - con_reg &= ~I2C_CON_TRX; - con_reg |= I2C_CON_MST | I2C_CON_STT | I2C_CON_STP; - ti_i2c_write_reg(sc, I2C_REG_CON, con_reg); - - /* reading loop */ - while (1) { - - /* wait for an event */ - err = ti_i2c_wait(sc, events, &status, timo); - if (err != 0) { - break; - } - - /* check for the error conditions */ - if (status & I2C_STAT_NACK) { - /* no ACK from slave */ - ti_i2c_dbg(sc, "NACK\n"); - err = ENXIO; - break; - } - if (status & I2C_STAT_AL) { - /* arbitration lost */ - ti_i2c_dbg(sc, "Arbitration lost\n"); - err = ENXIO; - break; - } - - /* check if we have finished */ - if (status & I2C_STAT_ARDY) { - /* register access ready - transaction complete basically */ - ti_i2c_dbg(sc, "ARDY transaction complete\n"); - err = 0; - break; - } - - /* read some data */ - if (status & I2C_STAT_RDR) { - /* Receive draining interrupt - last data received */ - ti_i2c_dbg(sc, "Receive draining interrupt\n"); - - /* get the number of bytes in the FIFO */ - amount = ti_i2c_read_reg(sc, I2C_REG_BUFSTAT); - amount >>= 8; - amount &= 0x3f; - } - else if (status & I2C_STAT_RRDY) { - /* Receive data ready interrupt - enough data received */ - ti_i2c_dbg(sc, "Receive data ready interrupt\n"); - - /* get the number of bytes in the FIFO */ - amount = ti_i2c_read_reg(sc, I2C_REG_BUF); - amount >>= 8; - amount &= 0x3f; - amount += 1; - } + /* Save enabled interrupts. */ + events = ti_i2c_read_2(sc, I2C_REG_IRQENABLE_SET); - /* sanity check we haven't overwritten the array */ - if ((sofar + amount) > len) { - ti_i2c_dbg(sc, "to many bytes to read\n"); - amount = (len - sofar); - } + /* We only care about enabled interrupts. */ + status &= events; - /* read the bytes from the fifo */ - for (i = 0; i < amount; i++) { - buf[sofar++] = (uint8_t)(ti_i2c_read_reg(sc, I2C_REG_DATA) & 0xff); - } + done = 0; - /* attempt to clear the receive ready bits */ - ti_i2c_write_reg(sc, I2C_REG_STAT, I2C_STAT_RDR | I2C_STAT_RRDY); + if (sc->sc_buffer != NULL) + done = ti_i2c_transfer_intr(sc, status); + else { + ti_i2c_dbg(sc, "Transfer interrupt without buffer\n"); + sc->sc_error = EINVAL; + done = 1; } - /* reset the registers regardless if there was an error or not */ - ti_i2c_set_intr_enable(sc, 0x0000); - ti_i2c_write_reg(sc, I2C_REG_CON, I2C_CON_I2C_EN | I2C_CON_MST | I2C_CON_STP); + if (done) + /* Wakeup the process that started the transaction. */ + wakeup(sc); - return (err); + TI_I2C_UNLOCK(sc); } /** - * ti_i2c_write_bytes - attempts to perform a read operation - * @sc: i2c driver context - * @buf: buffer containing the bytes to write - * @len: the number of bytes to write + * ti_i2c_transfer - called to perform the transfer + * @dev: i2c device handle + * @msgs: the messages to send/receive + * @nmsgs: the number of messages in the msgs array * - * This function assumes the slave address is already set * * LOCKING: - * The context lock should be held before calling this function + * Internally locked * * RETURNS: * 0 on function succeeded * EINVAL if invalid message is passed as an arg */ static int -ti_i2c_write_bytes(struct ti_i2c_softc *sc, const uint8_t *buf, uint16_t len) +ti_i2c_transfer(device_t dev, struct iic_msg *msgs, uint32_t nmsgs) { - int timo = (hz / 4); - int err = 0; - uint16_t con_reg; - uint16_t events; - uint16_t status; - uint32_t amount = 0; - uint32_t sofar = 0; - uint32_t i; - - /* wait for the bus to become free */ - err = ti_i2c_wait_for_free_bus(sc, timo); - if (err != 0) - return (err); + int err, i, repstart, timeout; + struct ti_i2c_softc *sc; + uint16_t reg; - /* set the events to wait for */ - events = I2C_IE_XDR | /* Transmit draining interrupt */ - I2C_IE_XRDY | /* Transmit Data Ready interrupt */ - I2C_IE_ARDY | /* Register Access Ready interrupt */ - I2C_IE_NACK | /* No Acknowledgment interrupt */ - I2C_IE_AL; + sc = device_get_softc(dev); + TI_I2C_LOCK(sc); - /* enable interrupts for the events we want*/ - ti_i2c_set_intr_enable(sc, events); + /* If the controller is busy wait until it is available. */ + while (sc->sc_bus_inuse == 1) + mtx_sleep(dev, &sc->sc_mtx, 0, "i2cbuswait", 0); - /* write the number of bytes to write */ - ti_i2c_write_reg(sc, I2C_REG_CNT, len); + /* Now we have control over the I2C controller. */ + sc->sc_bus_inuse = 1; - /* set the write bit and initiate the write transaction. Setting the STT - * (start) bit initiates the transfer. - */ - con_reg = ti_i2c_read_reg(sc, I2C_REG_CON); - con_reg |= I2C_CON_TRX | I2C_CON_MST | I2C_CON_STT | I2C_CON_STP; - ti_i2c_write_reg(sc, I2C_REG_CON, con_reg); + err = 0; + repstart = 0; + for (i = 0; i < nmsgs; i++) { - /* writing loop */ - while (1) { + sc->sc_buffer = &msgs[i]; + sc->sc_buffer_pos = 0; + sc->sc_error = 0; - /* wait for an event */ - err = ti_i2c_wait(sc, events, &status, timo); - if (err != 0) { + /* Zero byte transfers aren't allowed. */ + if (sc->sc_buffer == NULL || sc->sc_buffer->buf == NULL || + sc->sc_buffer->len == 0) { + err = EINVAL; break; } - /* check for the error conditions */ - if (status & I2C_STAT_NACK) { - /* no ACK from slave */ - ti_i2c_dbg(sc, "NACK\n"); - err = ENXIO; - break; - } - if (status & I2C_STAT_AL) { - /* arbitration lost */ - ti_i2c_dbg(sc, "Arbitration lost\n"); - err = ENXIO; - break; - } + /* Check if the i2c bus is free. */ + if (repstart == 0) { + /* + * On repeated start we send the START condition while + * the bus _is_ busy. + */ + timeout = 0; + while (ti_i2c_read_2(sc, I2C_REG_STATUS_RAW) & I2C_STAT_BB) { + if (timeout++ > 100) { + err = EBUSY; + goto out; + } + DELAY(1000); + } + timeout = 0; + } else + repstart = 0; - /* check if we have finished */ - if (status & I2C_STAT_ARDY) { - /* register access ready - transaction complete basically */ - ti_i2c_dbg(sc, "ARDY transaction complete\n"); - err = 0; - break; - } + if (sc->sc_buffer->flags & IIC_M_NOSTOP) + repstart = 1; - /* read some data */ - if (status & I2C_STAT_XDR) { - /* Receive draining interrupt - last data received */ - ti_i2c_dbg(sc, "Transmit draining interrupt\n"); + /* Set the slave address. */ + ti_i2c_write_2(sc, I2C_REG_SA, msgs[i].slave >> 1); - /* get the number of bytes in the FIFO */ - amount = ti_i2c_read_reg(sc, I2C_REG_BUFSTAT); - amount &= 0x3f; - } - else if (status & I2C_STAT_XRDY) { - /* Receive data ready interrupt - enough data received */ - ti_i2c_dbg(sc, "Transmit data ready interrupt\n"); + /* Write the data length. */ + ti_i2c_write_2(sc, I2C_REG_CNT, sc->sc_buffer->len); - /* get the number of bytes in the FIFO */ - amount = ti_i2c_read_reg(sc, I2C_REG_BUF); - amount &= 0x3f; - amount += 1; - } + /* Clear the RX and the TX FIFO. */ + reg = ti_i2c_read_2(sc, I2C_REG_BUF); + reg |= I2C_BUF_RXFIFO_CLR | I2C_BUF_TXFIFO_CLR; + ti_i2c_write_2(sc, I2C_REG_BUF, reg); - /* sanity check we haven't overwritten the array */ - if ((sofar + amount) > len) { - ti_i2c_dbg(sc, "to many bytes to write\n"); - amount = (len - sofar); - } + reg = sc->sc_con_reg | I2C_CON_STT; + if (repstart == 0) + reg |= I2C_CON_STP; + if ((sc->sc_buffer->flags & IIC_M_RD) == 0) + reg |= I2C_CON_TRX; + ti_i2c_write_2(sc, I2C_REG_CON, reg); - /* write the bytes from the fifo */ - for (i = 0; i < amount; i++) { - ti_i2c_write_reg(sc, I2C_REG_DATA, buf[sofar++]); - } + /* Wait for an event. */ + err = mtx_sleep(sc, &sc->sc_mtx, 0, "i2ciowait", hz); + if (err == 0) + err = sc->sc_error; - /* attempt to clear the transmit ready bits */ - ti_i2c_write_reg(sc, I2C_REG_STAT, I2C_STAT_XDR | I2C_STAT_XRDY); + if (err) + break; } - /* reset the registers regardless if there was an error or not */ - ti_i2c_set_intr_enable(sc, 0x0000); - ti_i2c_write_reg(sc, I2C_REG_CON, I2C_CON_I2C_EN | I2C_CON_MST | I2C_CON_STP); - - return (err); -} - -/** - * ti_i2c_transfer - called to perform the transfer - * @dev: i2c device handle - * @msgs: the messages to send/receive - * @nmsgs: the number of messages in the msgs array - * - * - * LOCKING: - * Internally locked - * - * RETURNS: - * 0 on function succeeded - * EINVAL if invalid message is passed as an arg - */ -static int -ti_i2c_transfer(device_t dev, struct iic_msg *msgs, uint32_t nmsgs) -{ - struct ti_i2c_softc *sc = device_get_softc(dev); - int err = 0; - uint32_t i; - uint16_t len; - uint8_t *buf; - - TI_I2C_LOCK(sc); - - for (i = 0; i < nmsgs; i++) { - - len = msgs[i].len; - buf = msgs[i].buf; - - /* zero byte transfers aren't allowed */ - if (len == 0 || buf == NULL) { - err = EINVAL; - goto out; +out: + if (timeout == 0) { + while (ti_i2c_read_2(sc, I2C_REG_STATUS_RAW) & I2C_STAT_BB) { + if (timeout++ > 100) + break; + DELAY(1000); } + } + /* Put the controller in master mode again. */ + if ((ti_i2c_read_2(sc, I2C_REG_CON) & I2C_CON_MST) == 0) + ti_i2c_write_2(sc, I2C_REG_CON, sc->sc_con_reg); - /* set the slave address */ - ti_i2c_write_reg(sc, I2C_REG_SA, msgs[i].slave >> 1); - - /* perform the read or write */ - if (msgs[i].flags & IIC_M_RD) { - err = ti_i2c_read_bytes(sc, buf, len); - } else { - err = ti_i2c_write_bytes(sc, buf, len); - } + sc->sc_buffer = NULL; + sc->sc_bus_inuse = 0; - } + /* Wake up the processes that are waiting for the bus. */ + wakeup(sc); -out: TI_I2C_UNLOCK(sc); return (err); } /** - * ti_i2c_callback - not sure about this one + * ti_i2c_callback - as we only provide iicbus_transfer() interface + * we don't need to implement the serialization here. * @dev: i2c device handle * * @@ -811,158 +507,231 @@ ti_i2c_callback(device_t dev, int index, caddr_t data) return (error); } -/** - * ti_i2c_activate - initialises and activates an I2C bus - * @dev: i2c device handle - * @num: the number of the I2C controller to activate; 1, 2 or 3 - * - * - * LOCKING: - * Assumed called in an atomic context. - * - * RETURNS: - * nothing - */ static int -ti_i2c_activate(device_t dev) +ti_i2c_reset(struct ti_i2c_softc *sc, u_char speed) { - struct ti_i2c_softc *sc = (struct ti_i2c_softc*) device_get_softc(dev); - unsigned int timeout = 0; - uint16_t con_reg; - int err; - clk_ident_t clk; + int timeout; + struct ti_i2c_clock_config *clkcfg; + uint16_t fifo_trsh, reg, scll, sclh; - /* - * The following sequence is taken from the OMAP3530 technical reference - * - * 1. Enable the functional and interface clocks (see Section 18.3.1.1.1). - */ - clk = I2C0_CLK + sc->device_id; - err = ti_prcm_clk_enable(clk); - if (err) - return (err); + switch (ti_chip()) { +#ifdef SOC_OMAP4 + case CHIP_OMAP_4: + clkcfg = ti_omap4_i2c_clock_configs; + break; +#endif +#ifdef SOC_TI_AM335X + case CHIP_AM335X: + clkcfg = ti_am335x_i2c_clock_configs; + break; +#endif + default: + panic("Unknown Ti SoC, unable to reset the i2c"); + } + while (clkcfg->speed != -1) { + if (clkcfg->speed == speed) + break; + clkcfg++; + } + if (clkcfg->speed == -1) + return (EINVAL); - /* There seems to be a bug in the I2C reset mechanism, for some reason you - * need to disable the I2C module before issuing the reset and then enable - * it again after to detect the reset done. + /* + * 23.1.4.3 - HS I2C Software Reset + * From OMAP4 TRM at page 4068. * - * I found this out by looking at the Linux driver implementation, thanks - * linux guys! + * 1. Ensure that the module is disabled. */ + sc->sc_con_reg = 0; + ti_i2c_write_2(sc, I2C_REG_CON, sc->sc_con_reg); - /* Disable the I2C controller */ - ti_i2c_write_reg(sc, I2C_REG_CON, 0x0000); - - /* Issue a softreset to the controller */ - /* XXXOMAP3: FIXME */ - bus_write_2(sc->sc_mem_res, I2C_REG_SYSC, 0x0002); + /* 2. Issue a softreset to the controller. */ + bus_write_2(sc->sc_mem_res, I2C_REG_SYSC, I2C_REG_SYSC_SRST); - /* Re-enable the module and then check for the reset done */ - ti_i2c_write_reg(sc, I2C_REG_CON, I2C_CON_I2C_EN); + /* + * 3. Enable the module. + * The I2Ci.I2C_SYSS[0] RDONE bit is asserted only after the module + * is enabled by setting the I2Ci.I2C_CON[15] I2C_EN bit to 1. + */ + ti_i2c_write_2(sc, I2C_REG_CON, I2C_CON_I2C_EN); - while ((ti_i2c_read_reg(sc, I2C_REG_SYSS) & 0x01) == 0x00) { - if (timeout++ > 100) { + /* 4. Wait for the software reset to complete. */ + timeout = 0; + while ((ti_i2c_read_2(sc, I2C_REG_SYSS) & I2C_SYSS_RDONE) == 0) { + if (timeout++ > 100) return (EBUSY); - } DELAY(100); } - /* Disable the I2C controller once again, now that the reset has finished */ - ti_i2c_write_reg(sc, I2C_REG_CON, 0x0000); - - /* 2. Program the prescaler to obtain an approximately 12-MHz internal - * sampling clock (I2Ci_INTERNAL_CLK) by programming the corresponding - * value in the I2Ci.I2C_PSC[3:0] PSC field. - * This value depends on the frequency of the functional clock (I2Ci_FCLK). - * Because this frequency is 96MHz, the I2Ci.I2C_PSC[7:0] PSC field value - * is 0x7. + /* + * Disable the I2C controller once again, now that the reset has + * finished. */ + ti_i2c_write_2(sc, I2C_REG_CON, sc->sc_con_reg); - /* Program the prescaler to obtain an approximately 12-MHz internal - * sampling clock. + /* + * The following sequence is taken from the OMAP4 TRM at page 4077. + * + * 1. Enable the functional and interface clocks (see Section + * 23.1.5.1.1.1.1). Done at ti_i2c_activate(). + * + * 2. Program the prescaler to obtain an approximately 12MHz internal + * sampling clock (I2Ci_INTERNAL_CLK) by programming the + * corresponding value in the I2Ci.I2C_PSC[3:0] PSC field. + * This value depends on the frequency of the functional clock + * (I2Ci_FCLK). Because this frequency is 96MHz, the + * I2Ci.I2C_PSC[7:0] PSC field value is 0x7. */ - ti_i2c_write_reg(sc, I2C_REG_PSC, 0x0017); + ti_i2c_write_2(sc, I2C_REG_PSC, clkcfg->psc); - /* 3. Program the I2Ci.I2C_SCLL[7:0] SCLL and I2Ci.I2C_SCLH[7:0] SCLH fields - * to obtain a bit rate of 100K bps or 400K bps. These values depend on - * the internal sampling clock frequency (see Table 18-12). + /* + * 3. Program the I2Ci.I2C_SCLL[7:0] SCLL and I2Ci.I2C_SCLH[7:0] SCLH + * bit fields to obtain a bit rate of 100 Kbps, 400 Kbps or 1Mbps. + * These values depend on the internal sampling clock frequency + * (see Table 23-8). */ + scll = clkcfg->scll & I2C_SCLL_MASK; + sclh = clkcfg->sclh & I2C_SCLH_MASK; - /* Set the bitrate to 100kbps */ - ti_i2c_write_reg(sc, I2C_REG_SCLL, 0x000d); - ti_i2c_write_reg(sc, I2C_REG_SCLH, 0x000f); - - /* 4. (Optional) Program the I2Ci.I2C_SCLL[15:8] HSSCLL and - * I2Ci.I2C_SCLH[15:8] HSSCLH fields to obtain a bit rate of 400K bps or - * 3.4M bps (for the second phase of HS mode). These values depend on the - * internal sampling clock frequency (see Table 18-12). + /* + * 4. (Optional) Program the I2Ci.I2C_SCLL[15:8] HSSCLL and + * I2Ci.I2C_SCLH[15:8] HSSCLH fields to obtain a bit rate of + * 400K bps or 3.4M bps (for the second phase of HS mode). These + * values depend on the internal sampling clock frequency (see + * Table 23-8). * * 5. (Optional) If a bit rate of 3.4M bps is used and the bus line - * capacitance exceeds 45 pF, program the CONTROL.CONTROL_DEVCONF1[12] - * I2C1HSMASTER bit for I2C1, the CONTROL.CONTROL_DEVCONF1[13] - * I2C2HSMASTER bit for I2C2, or the CONTROL.CONTROL_DEVCONF1[14] - * I2C3HSMASTER bit for I2C3. + * capacitance exceeds 45 pF, (see Section 18.4.8, PAD Functional + * Multiplexing and Configuration). */ + switch (ti_chip()) { +#ifdef SOC_OMAP4 + case CHIP_OMAP_4: + if ((clkcfg->hsscll + clkcfg->hssclh) > 0) { + scll |= clkcfg->hsscll << I2C_HSSCLL_SHIFT; + sclh |= clkcfg->hssclh << I2C_HSSCLH_SHIFT; + sc->sc_con_reg |= I2C_CON_OPMODE_HS; + } + break; +#endif + } - /* 6. Configure the Own Address of the I2C controller by storing it in the - * I2Ci.I2C_OA0 register. Up to four Own Addresses can be programmed in - * the I2Ci.I2C_OAi registers (with I = 0, 1, 2, 3) for each I2C - * controller. - * - * Note: For a 10-bit address, set the corresponding expand Own Address bit - * in the I2Ci.I2C_CON register. - */ - - /* Driver currently always in single master mode so ignore this step */ - - /* 7. Set the TX threshold (in transmitter mode) and the RX threshold (in - * receiver mode) by setting the I2Ci.I2C_BUF[5:0]XTRSH field to (TX - * threshold - 1) and the I2Ci.I2C_BUF[13:8]RTRSH field to (RX threshold - * - 1), where the TX and RX thresholds are greater than or equal to 1. - */ + /* Write the selected bit rate. */ + ti_i2c_write_2(sc, I2C_REG_SCLL, scll); + ti_i2c_write_2(sc, I2C_REG_SCLH, sclh); - /* Set the FIFO buffer threshold, note I2C1 & I2C2 have 8 byte FIFO, whereas - * I2C3 has 64 bytes. Threshold set to 5 for now. + /* + * 6. Configure the Own Address of the I2C controller by storing it in + * the I2Ci.I2C_OA0 register. Up to four Own Addresses can be + * programmed in the I2Ci.I2C_OAi registers (where i = 0, 1, 2, 3) + * for each I2C controller. + * + * Note: For a 10-bit address, set the corresponding expand Own Address + * bit in the I2Ci.I2C_CON register. + * + * Driver currently always in single master mode so ignore this step. */ - ti_i2c_write_reg(sc, I2C_REG_BUF, 0x0404); /* - * 8. Take the I2C controller out of reset by setting the I2Ci.I2C_CON[15] - * I2C_EN bit to 1. + * 7. Set the TX threshold (in transmitter mode) and the RX threshold + * (in receiver mode) by setting the I2Ci.I2C_BUF[5:0]XTRSH field to + * (TX threshold - 1) and the I2Ci.I2C_BUF[13:8]RTRSH field to (RX + * threshold - 1), where the TX and RX thresholds are greater than + * or equal to 1. + * + * The threshold is set to 5 for now. */ - ti_i2c_write_reg(sc, I2C_REG_CON, I2C_CON_I2C_EN | I2C_CON_OPMODE_STD); + fifo_trsh = (sc->sc_fifo_trsh - 1) & I2C_BUF_TRSH_MASK; + reg = fifo_trsh | (fifo_trsh << I2C_BUF_RXTRSH_SHIFT); + ti_i2c_write_2(sc, I2C_REG_BUF, reg); /* + * 8. Take the I2C controller out of reset by setting the + * I2Ci.I2C_CON[15] I2C_EN bit to 1. + * + * 23.1.5.1.1.1.2 - Initialize the I2C Controller + * * To initialize the I2C controller, perform the following steps: * * 1. Configure the I2Ci.I2C_CON register: - * · For master or slave mode, set the I2Ci.I2C_CON[10] MST bit (0: slave, - * 1: master). - * · For transmitter or receiver mode, set the I2Ci.I2C_CON[9] TRX bit - * (0: receiver, 1: transmitter). + * . For master or slave mode, set the I2Ci.I2C_CON[10] MST bit + * (0: slave, 1: master). + * . For transmitter or receiver mode, set the I2Ci.I2C_CON[9] TRX + * bit (0: receiver, 1: transmitter). */ - con_reg = ti_i2c_read_reg(sc, I2C_REG_CON); - con_reg |= I2C_CON_MST; - ti_i2c_write_reg(sc, I2C_REG_CON, con_reg); - /* 2. If using an interrupt to transmit/receive data, set to 1 the + /* Enable the I2C controller in master mode. */ + sc->sc_con_reg |= I2C_CON_I2C_EN | I2C_CON_MST; + ti_i2c_write_2(sc, I2C_REG_CON, sc->sc_con_reg); + + /* + * 2. If using an interrupt to transmit/receive data, set the * corresponding bit in the I2Ci.I2C_IE register (the I2Ci.I2C_IE[4] - * XRDY_IE bit for the transmit interrupt, the I2Ci.I2C_IE[3] RRDY bit - * for the receive interrupt). + * XRDY_IE bit for the transmit interrupt, the I2Ci.I2C_IE[3] RRDY + * bit for the receive interrupt). */ - ti_i2c_set_intr_enable(sc, I2C_IE_XRDY | I2C_IE_RRDY); - /* 3. If using DMA to receive/transmit data, set to 1 the corresponding bit - * in the I2Ci.I2C_BUF register (the I2Ci.I2C_BUF[15] RDMA_EN bit for the - * receive DMA channel, the I2Ci.I2C_BUF[7] XDMA_EN bit for the transmit - * DMA channel). - */ + /* Set the interrupts we want to be notified. */ + reg = I2C_IE_XDR | /* Transmit draining interrupt. */ + I2C_IE_XRDY | /* Transmit Data Ready interrupt. */ + I2C_IE_RDR | /* Receive draining interrupt. */ + I2C_IE_RRDY | /* Receive Data Ready interrupt. */ + I2C_IE_ARDY | /* Register Access Ready interrupt. */ + I2C_IE_NACK | /* No Acknowledgment interrupt. */ + I2C_IE_AL; /* Arbitration lost interrupt. */ - /* not using DMA for now, so ignore this */ + /* Enable the interrupts. */ + ti_i2c_write_2(sc, I2C_REG_IRQENABLE_SET, reg); + + /* + * 3. If using DMA to receive/transmit data, set to 1 the corresponding + * bit in the I2Ci.I2C_BUF register (the I2Ci.I2C_BUF[15] RDMA_EN + * bit for the receive DMA channel, the I2Ci.I2C_BUF[7] XDMA_EN bit + * for the transmit DMA channel). + * + * Not using DMA for now, so ignore this. + */ return (0); } +static int +ti_i2c_iicbus_reset(device_t dev, u_char speed, u_char addr, u_char *oldaddr) +{ + struct ti_i2c_softc *sc; + int err; + + sc = device_get_softc(dev); + TI_I2C_LOCK(sc); + err = ti_i2c_reset(sc, speed); + TI_I2C_UNLOCK(sc); + if (err) + return (err); + + return (IIC_ENOADDR); +} + +static int +ti_i2c_activate(device_t dev) +{ + clk_ident_t clk; + int err; + struct ti_i2c_softc *sc; + + sc = (struct ti_i2c_softc*)device_get_softc(dev); + + /* + * 1. Enable the functional and interface clocks (see Section + * 23.1.5.1.1.1.1). + */ + clk = I2C0_CLK + sc->device_id; + err = ti_prcm_clk_enable(clk); + if (err) + return (err); + + return (ti_i2c_reset(sc, IIC_UNKNOWN)); +} + /** * ti_i2c_deactivate - deactivates the controller and releases resources * @dev: i2c device handle @@ -981,136 +750,154 @@ ti_i2c_deactivate(device_t dev) struct ti_i2c_softc *sc = device_get_softc(dev); clk_ident_t clk; - /* Disable the controller - cancel all transactions */ - ti_i2c_write_reg(sc, I2C_REG_CON, 0x0000); + /* Disable the controller - cancel all transactions. */ + ti_i2c_write_2(sc, I2C_REG_IRQENABLE_CLR, 0xffff); + ti_i2c_write_2(sc, I2C_REG_STATUS, 0xffff); + ti_i2c_write_2(sc, I2C_REG_CON, 0); - /* Release the interrupt handler */ - if (sc->sc_irq_h) { + /* Release the interrupt handler. */ + if (sc->sc_irq_h != NULL) { bus_teardown_intr(dev, sc->sc_irq_res, sc->sc_irq_h); - sc->sc_irq_h = 0; + sc->sc_irq_h = NULL; } bus_generic_detach(sc->sc_dev); - /* Unmap the I2C controller registers */ - if (sc->sc_mem_res != 0) { - bus_release_resource(dev, SYS_RES_MEMORY, rman_get_rid(sc->sc_irq_res), - sc->sc_mem_res); + /* Unmap the I2C controller registers. */ + if (sc->sc_mem_res != NULL) { + bus_release_resource(dev, SYS_RES_MEMORY, 0, sc->sc_mem_res); sc->sc_mem_res = NULL; } - /* Release the IRQ resource */ + /* Release the IRQ resource. */ if (sc->sc_irq_res != NULL) { - bus_release_resource(dev, SYS_RES_IRQ, rman_get_rid(sc->sc_irq_res), - sc->sc_irq_res); + bus_release_resource(dev, SYS_RES_IRQ, 0, sc->sc_irq_res); sc->sc_irq_res = NULL; } - /* Finally disable the functional and interface clocks */ + /* Finally disable the functional and interface clocks. */ clk = I2C0_CLK + sc->device_id; ti_prcm_clk_disable(clk); +} - return; +static int +ti_i2c_sysctl_clk(SYSCTL_HANDLER_ARGS) +{ + device_t dev; + int clk, psc, sclh, scll; + struct ti_i2c_softc *sc; + + dev = (device_t)arg1; + sc = device_get_softc(dev); + + TI_I2C_LOCK(sc); + /* Get the system prescaler value. */ + psc = (int)ti_i2c_read_2(sc, I2C_REG_PSC) + 1; + + /* Get the bitrate. */ + scll = (int)ti_i2c_read_2(sc, I2C_REG_SCLL) & I2C_SCLL_MASK; + sclh = (int)ti_i2c_read_2(sc, I2C_REG_SCLH) & I2C_SCLH_MASK; + + clk = I2C_CLK / psc / (scll + 7 + sclh + 5); + TI_I2C_UNLOCK(sc); + + return (sysctl_handle_int(oidp, &clk, 0, req)); } -/** - * ti_i2c_probe - probe function for the driver - * @dev: i2c device handle - * - * - * - * LOCKING: - * - * - * RETURNS: - * Always returns 0 - */ static int ti_i2c_probe(device_t dev) { if (!ofw_bus_status_okay(dev)) return (ENXIO); - if (!ofw_bus_is_compatible(dev, "ti,i2c")) return (ENXIO); - device_set_desc(dev, "TI I2C Controller"); + return (0); } -/** - * ti_i2c_attach - attach function for the driver - * @dev: i2c device handle - * - * Initialised driver data structures and activates the I2C controller. - * - * LOCKING: - * - * - * RETURNS: - * - */ static int ti_i2c_attach(device_t dev) { - struct ti_i2c_softc *sc = device_get_softc(dev); + int err, rid; phandle_t node; - pcell_t did; - int err; - int rid; + struct ti_i2c_softc *sc; + struct sysctl_ctx_list *ctx; + struct sysctl_oid_list *tree; + uint16_t fifosz; + sc = device_get_softc(dev); sc->sc_dev = dev; - /* Get the i2c device id from FDT */ + /* Get the i2c device id from FDT. */ node = ofw_bus_get_node(dev); - if ((OF_getprop(node, "i2c-device-id", &did, sizeof(did))) <= 0) { + if ((OF_getencprop(node, "i2c-device-id", &sc->device_id, + sizeof(sc->device_id))) <= 0) { device_printf(dev, "missing i2c-device-id attribute in FDT\n"); return (ENXIO); } - sc->device_id = fdt32_to_cpu(did); - TI_I2C_LOCK_INIT(sc); - - /* Get the memory resource for the register mapping */ + /* Get the memory resource for the register mapping. */ rid = 0; sc->sc_mem_res = bus_alloc_resource_any(dev, SYS_RES_MEMORY, &rid, - RF_ACTIVE); - if (sc->sc_mem_res == NULL) - panic("%s: Cannot map registers", device_get_name(dev)); + RF_ACTIVE); + if (sc->sc_mem_res == NULL) { + device_printf(dev, "Cannot map registers.\n"); + return (ENXIO); + } - /* Allocate an IRQ resource for the MMC controller */ + /* Allocate our IRQ resource. */ rid = 0; sc->sc_irq_res = bus_alloc_resource_any(dev, SYS_RES_IRQ, &rid, - RF_ACTIVE | RF_SHAREABLE); + RF_ACTIVE | RF_SHAREABLE); if (sc->sc_irq_res == NULL) { - err = ENOMEM; - goto out; + bus_release_resource(dev, SYS_RES_MEMORY, 0, sc->sc_mem_res); + device_printf(dev, "Cannot allocate interrupt.\n"); + return (ENXIO); } - /* First we _must_ activate the H/W */ + TI_I2C_LOCK_INIT(sc); + + /* First of all, we _must_ activate the H/W. */ err = ti_i2c_activate(dev); if (err) { device_printf(dev, "ti_i2c_activate failed\n"); goto out; } - /* XXXOMAP3: FIXME get proper revision here */ /* Read the version number of the I2C module */ sc->sc_rev = ti_i2c_read_2(sc, I2C_REG_REVNB_HI) & 0xff; - device_printf(dev, "I2C revision %d.%d\n", sc->sc_rev >> 4, - sc->sc_rev & 0xf); + /* Get the fifo size. */ + fifosz = ti_i2c_read_2(sc, I2C_REG_BUFSTAT); + fifosz >>= I2C_BUFSTAT_FIFODEPTH_SHIFT; + fifosz &= I2C_BUFSTAT_FIFODEPTH_MASK; + + device_printf(dev, "I2C revision %d.%d FIFO size: %d bytes\n", + sc->sc_rev >> 4, sc->sc_rev & 0xf, 8 << fifosz); + + /* Set the FIFO threshold to 5 for now. */ + sc->sc_fifo_trsh = 5; + + ctx = device_get_sysctl_ctx(dev); + tree = SYSCTL_CHILDREN(device_get_sysctl_tree(dev)); + SYSCTL_ADD_PROC(ctx, tree, OID_AUTO, "i2c_clock", + CTLFLAG_RD | CTLTYPE_UINT | CTLFLAG_MPSAFE, dev, 0, + ti_i2c_sysctl_clk, "IU", "I2C bus clock"); - /* activate the interrupt */ + /* Activate the interrupt. */ err = bus_setup_intr(dev, sc->sc_irq_res, INTR_TYPE_MISC | INTR_MPSAFE, - NULL, ti_i2c_intr, sc, &sc->sc_irq_h); + NULL, ti_i2c_intr, sc, &sc->sc_irq_h); if (err) goto out; - /* Attach to the iicbus */ - if ((sc->sc_iicbus = device_add_child(dev, "iicbus", -1)) == NULL) + /* Attach the iicbus. */ + if ((sc->sc_iicbus = device_add_child(dev, "iicbus", -1)) == NULL) { device_printf(dev, "could not allocate iicbus instance\n"); + err = ENXIO; + goto out; + } /* Probe and attach the iicbus */ bus_generic_attach(dev); @@ -1124,42 +911,28 @@ out: return (err); } -/** - * ti_i2c_detach - detach function for the driver - * @dev: i2c device handle - * - * - * - * LOCKING: - * - * - * RETURNS: - * Always returns 0 - */ static int ti_i2c_detach(device_t dev) { - struct ti_i2c_softc *sc = device_get_softc(dev); + struct ti_i2c_softc *sc; int rv; + sc = device_get_softc(dev); ti_i2c_deactivate(dev); - - if (sc->sc_iicbus && (rv = device_delete_child(dev, sc->sc_iicbus)) != 0) - return (rv); - TI_I2C_LOCK_DESTROY(sc); + if (sc->sc_iicbus && + (rv = device_delete_child(dev, sc->sc_iicbus)) != 0) + return (rv); return (0); } - static phandle_t ti_i2c_get_node(device_t bus, device_t dev) { - /* - * Share controller node with iibus device - */ - return ofw_bus_get_node(bus); + + /* Share controller node with iibus device. */ + return (ofw_bus_get_node(bus)); } static device_method_t ti_i2c_methods[] = { @@ -1173,9 +946,10 @@ static device_method_t ti_i2c_methods[] = { /* iicbus interface */ DEVMETHOD(iicbus_callback, ti_i2c_callback), - DEVMETHOD(iicbus_reset, ti_i2c_reset), + DEVMETHOD(iicbus_reset, ti_i2c_iicbus_reset), DEVMETHOD(iicbus_transfer, ti_i2c_transfer), - { 0, 0 } + + DEVMETHOD_END }; static driver_t ti_i2c_driver = { @@ -1184,6 +958,8 @@ static driver_t ti_i2c_driver = { sizeof(struct ti_i2c_softc), }; +static devclass_t ti_i2c_devclass; + DRIVER_MODULE(ti_iic, simplebus, ti_i2c_driver, ti_i2c_devclass, 0, 0); DRIVER_MODULE(iicbus, ti_iic, iicbus_driver, iicbus_devclass, 0, 0); diff --git a/sys/arm/ti/ti_i2c.h b/sys/arm/ti/ti_i2c.h index f569f87..d8dac60 100644 --- a/sys/arm/ti/ti_i2c.h +++ b/sys/arm/ti/ti_i2c.h @@ -69,7 +69,12 @@ #define I2C_STAT_NACK (1UL << 1) #define I2C_STAT_AL (1UL << 0) #define I2C_REG_SYSS 0x90 +#define I2C_SYSS_RDONE (1UL << 0) #define I2C_REG_BUF 0x94 +#define I2C_BUF_RXFIFO_CLR (1UL << 14) +#define I2C_BUF_TXFIFO_CLR (1UL << 6) +#define I2C_BUF_RXTRSH_SHIFT 8 +#define I2C_BUF_TRSH_MASK 0x3f #define I2C_REG_CNT 0x98 #define I2C_REG_DATA 0x9c #define I2C_REG_CON 0xa4 @@ -91,10 +96,17 @@ #define I2C_REG_OA0 0xa8 #define I2C_REG_SA 0xac #define I2C_REG_PSC 0xb0 +#define I2C_PSC_MASK 0xff #define I2C_REG_SCLL 0xb4 +#define I2C_SCLL_MASK 0xff +#define I2C_HSSCLL_SHIFT 8 #define I2C_REG_SCLH 0xb8 +#define I2C_SCLH_MASK 0xff +#define I2C_HSSCLH_SHIFT 8 #define I2C_REG_SYSTEST 0xbc #define I2C_REG_BUFSTAT 0xc0 +#define I2C_BUFSTAT_FIFODEPTH_MASK 0x3 +#define I2C_BUFSTAT_FIFODEPTH_SHIFT 14 #define I2C_REG_OA1 0xc4 #define I2C_REG_OA2 0xc8 #define I2C_REG_OA3 0xcc @@ -107,9 +119,13 @@ #define I2C_REG_REVNB_LO 0x00 #define I2C_REG_REVNB_HI 0x04 #define I2C_REG_SYSC 0x10 +#define I2C_REG_SYSC_SRST (1UL << 1) +#define I2C_REG_STATUS_RAW 0x24 +#define I2C_REG_STATUS 0x28 #define I2C_REG_IRQENABLE_SET 0x2C #define I2C_REG_IRQENABLE_CLR 0x30 - +#define I2C_CLK 96000000UL /* 96MHz */ +#define I2C_ICLK 12000000UL /* 12MHz */ #endif /* _TI_I2C_H_ */ diff --git a/sys/boot/fdt/dts/arm/sam9260ek.dts b/sys/boot/fdt/dts/arm/sam9260ek.dts new file mode 100644 index 0000000..8e4d753 --- /dev/null +++ b/sys/boot/fdt/dts/arm/sam9260ek.dts @@ -0,0 +1,37 @@ +/* + * SAM9260EK eval board - Warner Losh public domain + * + * $FreeBSD$ + */ +/dts-v1/; +#include "sam9260ek_common.dtsi" + +/ { + model = "Atmel at91sam9260ek"; + compatible = "atmel,at91sam9260ek", "atmel,at91sam9260", "atmel,at91sam9"; + + leds { + compatible = "gpio-leds"; + + ds1 { + label = "ds1"; + gpios = <&pioA 9 0>; + linux,default-trigger = "heartbeat"; + }; + + ds5 { + label = "ds5"; + gpios = <&pioA 6 1>; + }; + }; + + aliases { + dbgu = &dbgu; + }; + + + chosen { + stdin = "dbgu"; + stdout = "dbgu"; + }; +}; diff --git a/sys/boot/i386/boot2/Makefile b/sys/boot/i386/boot2/Makefile index e52060d..fa8c29d 100644 --- a/sys/boot/i386/boot2/Makefile +++ b/sys/boot/i386/boot2/Makefile @@ -22,8 +22,6 @@ BOOT2_UFS?= UFS1_AND_UFS2 #BOOT2_UFS?= UFS2_ONLY #BOOT2_UFS?= UFS1_ONLY -NO_PIE= yes - CFLAGS= -Os \ -fomit-frame-pointer \ -mrtd \ diff --git a/sys/boot/i386/btx/btx/Makefile b/sys/boot/i386/btx/btx/Makefile index 55756e0..0f5a468 100644 --- a/sys/boot/i386/btx/btx/Makefile +++ b/sys/boot/i386/btx/btx/Makefile @@ -5,8 +5,6 @@ INTERNALPROG= MAN= SRCS= btx.S -NO_PIE= yes - .if defined(BOOT_BTX_NOHANG) BOOT_BTX_FLAGS=0x1 .else diff --git a/sys/boot/i386/btx/btxldr/Makefile b/sys/boot/i386/btx/btxldr/Makefile index 6808934..7e57ca3 100644 --- a/sys/boot/i386/btx/btxldr/Makefile +++ b/sys/boot/i386/btx/btxldr/Makefile @@ -5,8 +5,6 @@ INTERNALPROG= MAN= SRCS= btxldr.S -NO_PIE= yes - CFLAGS+=-DLOADER_ADDRESS=${LOADER_ADDRESS} CFLAGS+=-I${.CURDIR}/../../common diff --git a/sys/boot/i386/btx/lib/Makefile b/sys/boot/i386/btx/lib/Makefile index caec3eb..c66f0fc 100644 --- a/sys/boot/i386/btx/lib/Makefile +++ b/sys/boot/i386/btx/lib/Makefile @@ -7,6 +7,4 @@ SRCS= btxcsu.S btxsys.s btxv86.s CFLAGS+=-I${.CURDIR}/../../common LDFLAGS=-Wl,-r -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/sys/boot/i386/loader/Makefile b/sys/boot/i386/loader/Makefile index f691314..6d372dd 100644 --- a/sys/boot/i386/loader/Makefile +++ b/sys/boot/i386/loader/Makefile @@ -8,8 +8,6 @@ PROG= ${LOADER}.sym INTERNALPROG= NEWVERSWHAT?= "bootstrap loader" x86 -NO_PIE= yes - # architecture-specific loader code SRCS= main.c conf.c vers.c diff --git a/sys/boot/mips/beri/boot2/Makefile b/sys/boot/mips/beri/boot2/Makefile index b4258c0..104a399 100644 --- a/sys/boot/mips/beri/boot2/Makefile +++ b/sys/boot/mips/beri/boot2/Makefile @@ -32,8 +32,6 @@ BINDIR?= /boot INSTALLFLAGS= -b -NO_PIE= yes - LOADERS= flashboot jtagboot FILES= ${LOADERS} ${LOADERS:S/$/.md5/} diff --git a/sys/boot/mips/beri/loader/Makefile b/sys/boot/mips/beri/loader/Makefile index 3a75189..3da7f7f 100644 --- a/sys/boot/mips/beri/loader/Makefile +++ b/sys/boot/mips/beri/loader/Makefile @@ -36,8 +36,6 @@ PROG?= loader NEWVERSWHAT= "BERI loader" ${MACHINE_CPUARCH} INSTALLFLAGS= -b -NO_PIE= yes - # Architecture-specific loader code SRCS= start.S \ main.c \ diff --git a/sys/boot/pc98/boot2/Makefile b/sys/boot/pc98/boot2/Makefile index 1657cad..f462717 100644 --- a/sys/boot/pc98/boot2/Makefile +++ b/sys/boot/pc98/boot2/Makefile @@ -6,8 +6,6 @@ #CC:= gcc #COMPILER_TYPE:= gcc -NO_PIE= yes - FILES= boot boot1 boot2 NM?= nm diff --git a/sys/boot/pc98/btx/lib/Makefile b/sys/boot/pc98/btx/lib/Makefile index 9e2b8c6..e5876bc 100644 --- a/sys/boot/pc98/btx/lib/Makefile +++ b/sys/boot/pc98/btx/lib/Makefile @@ -7,6 +7,4 @@ SRCS= btxcsu.S btxsys.s btxv86.s CFLAGS+=-I${.CURDIR}/../../../i386/common LDFLAGS=-Wl,-r -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/sys/boot/pc98/loader/Makefile b/sys/boot/pc98/loader/Makefile index f18db05..7ab13a1 100644 --- a/sys/boot/pc98/loader/Makefile +++ b/sys/boot/pc98/loader/Makefile @@ -8,8 +8,6 @@ PROG= ${LOADER}.sym INTERNALPROG= NEWVERSWHAT= "bootstrap loader" pc98 -NO_PIE= yes - # architecture-specific loader code SRCS= main.c conf.c vers.c .PATH: ${.CURDIR}/../../i386/loader diff --git a/sys/boot/sparc64/boot1/Makefile b/sys/boot/sparc64/boot1/Makefile index c867a61..5150c3b 100644 --- a/sys/boot/sparc64/boot1/Makefile +++ b/sys/boot/sparc64/boot1/Makefile @@ -7,8 +7,6 @@ FILES?= boot1 SRCS= _start.s boot1.c CLEANFILES=${FILES} boot1.aout -NO_PIE= yes - BOOTBLOCKBASE= 0x4000 CFLAGS.clang+=-mcmodel=small diff --git a/sys/boot/sparc64/loader/Makefile b/sys/boot/sparc64/loader/Makefile index 00c37dc..d7266ad 100644 --- a/sys/boot/sparc64/loader/Makefile +++ b/sys/boot/sparc64/loader/Makefile @@ -7,8 +7,6 @@ PROG?= loader NEWVERSWHAT?= "bootstrap loader" sparc64 INSTALLFLAGS= -b -NO_PIE= yes - # Architecture-specific loader code SRCS= locore.S main.c metadata.c vers.c diff --git a/sys/cam/ata/ata_da.c b/sys/cam/ata/ata_da.c index 9c99e88..9209e36 100644 --- a/sys/cam/ata/ata_da.c +++ b/sys/cam/ata/ata_da.c @@ -299,10 +299,10 @@ static struct ada_quirk_entry ada_quirk_table[] = }, { /* - * Corsair Force GT SSDs + * Corsair Force GT & GS SSDs * 4k optimised & trim only works in 4k requests + 4k aligned */ - { T_DIRECT, SIP_MEDIA_FIXED, "*", "Corsair Force GT*", "*" }, + { T_DIRECT, SIP_MEDIA_FIXED, "*", "Corsair Force G*", "*" }, /*quirks*/ADA_Q_4K }, { @@ -443,6 +443,22 @@ static struct ada_quirk_entry ada_quirk_table[] = }, { /* + * Samsung 840 SSDs + * 4k optimised + */ + { T_DIRECT, SIP_MEDIA_FIXED, "*", "Samsung SSD 840*", "*" }, + /*quirks*/ADA_Q_4K + }, + { + /* + * Samsung 843T Series SSDs + * 4k optimised + */ + { T_DIRECT, SIP_MEDIA_FIXED, "*", "SAMSUNG MZ7WD*", "*" }, + /*quirks*/ADA_Q_4K + }, + { + /* * SuperTalent TeraDrive CT SSDs * 4k optimised & trim only works in 4k requests + 4k aligned */ diff --git a/sys/cam/ata/ata_xpt.c b/sys/cam/ata/ata_xpt.c index 867b2fe..a442ec1 100644 --- a/sys/cam/ata/ata_xpt.c +++ b/sys/cam/ata/ata_xpt.c @@ -750,14 +750,6 @@ out: goto noerror; /* - * Some Samsung SSDs report supported Asynchronous Notification, - * but return ABORT on attempt to enable it. - */ - } else if (softc->action == PROBE_SETAN && - status == CAM_ATA_STATUS_ERROR) { - goto noerror; - - /* * SES and SAF-TE SEPs have different IDENTIFY commands, * but SATA specification doesn't tell how to identify them. * Until better way found, just try another if first fail. @@ -1059,7 +1051,8 @@ noerror: } /* FALLTHROUGH */ case PROBE_SETDMAAA: - if ((ident_buf->satasupport & ATA_SUPPORT_ASYNCNOTIF) && + if (path->device->protocol != PROTO_ATA && + (ident_buf->satasupport & ATA_SUPPORT_ASYNCNOTIF) && (!(softc->caps & CTS_SATA_CAPS_H_AN)) != (!(ident_buf->sataenabled & ATA_SUPPORT_ASYNCNOTIF))) { PROBE_SET_ACTION(softc, PROBE_SETAN); @@ -1180,7 +1173,7 @@ notsata: else caps = 0; /* Remember what transport thinks about AEN. */ - if (caps & CTS_SATA_CAPS_H_AN) + if ((caps & CTS_SATA_CAPS_H_AN) && path->device->protocol != PROTO_ATA) path->device->inq_flags |= SID_AEN; else path->device->inq_flags &= ~SID_AEN; diff --git a/sys/cam/ctl/ctl_frontend_iscsi.c b/sys/cam/ctl/ctl_frontend_iscsi.c index 8953ece..d251789 100644 --- a/sys/cam/ctl/ctl_frontend_iscsi.c +++ b/sys/cam/ctl/ctl_frontend_iscsi.c @@ -67,9 +67,9 @@ __FBSDID("$FreeBSD$"); #include <cam/ctl/ctl_ioctl.h> #include <cam/ctl/ctl_private.h> -#include "../../dev/iscsi/icl.h" -#include "../../dev/iscsi/iscsi_proto.h" -#include "ctl_frontend_iscsi.h" +#include <dev/iscsi/icl.h> +#include <dev/iscsi/iscsi_proto.h> +#include <cam/ctl/ctl_frontend_iscsi.h> #ifdef ICL_KERNEL_PROXY #include <sys/socketvar.h> diff --git a/sys/cam/ctl/ctl_tpc.c b/sys/cam/ctl/ctl_tpc.c index a037189..4d41005 100644 --- a/sys/cam/ctl/ctl_tpc.c +++ b/sys/cam/ctl/ctl_tpc.c @@ -228,7 +228,7 @@ ctl_tpc_lun_shutdown(struct ctl_lun *lun) } /* Free ROD tokens for this LUN. */ - mtx_lock(&control_softc->ctl_lock); + mtx_assert(&control_softc->ctl_lock, MA_OWNED); TAILQ_FOREACH_SAFE(token, &control_softc->tpc_tokens, links, ttoken) { if (token->lun != lun->lun || token->active) continue; @@ -236,7 +236,6 @@ ctl_tpc_lun_shutdown(struct ctl_lun *lun) free(token->params, M_CTL); free(token, M_CTL); } - mtx_unlock(&control_softc->ctl_lock); } int diff --git a/sys/cam/scsi/scsi_da.c b/sys/cam/scsi/scsi_da.c index 0b1f8d5..a7a7902 100644 --- a/sys/cam/scsi/scsi_da.c +++ b/sys/cam/scsi/scsi_da.c @@ -967,10 +967,10 @@ static struct da_quirk_entry da_quirk_table[] = }, { /* - * Corsair Force GT SSDs + * Corsair Force GT & GS SSDs * 4k optimised & trim only works in 4k requests + 4k aligned */ - { T_DIRECT, SIP_MEDIA_FIXED, "ATA", "Corsair Force GT*", "*" }, + { T_DIRECT, SIP_MEDIA_FIXED, "ATA", "Corsair Force G*", "*" }, /*quirks*/DA_Q_4K }, { @@ -1111,6 +1111,22 @@ static struct da_quirk_entry da_quirk_table[] = }, { /* + * Samsung 840 SSDs + * 4k optimised & trim only works in 4k requests + 4k aligned + */ + { T_DIRECT, SIP_MEDIA_FIXED, "ATA", "Samsung SSD 840*", "*" }, + /*quirks*/DA_Q_4K + }, + { + /* + * Samsung 843T Series SSDs + * 4k optimised + */ + { T_DIRECT, SIP_MEDIA_FIXED, "ATA", "SAMSUNG MZ7WD*", "*" }, + /*quirks*/DA_Q_4K + }, + { + /* * SuperTalent TeraDrive CT SSDs * 4k optimised & trim only works in 4k requests + 4k aligned */ diff --git a/sys/cam/scsi/scsi_low.c b/sys/cam/scsi/scsi_low.c index 6e6a2e9..8ca669e 100644 --- a/sys/cam/scsi/scsi_low.c +++ b/sys/cam/scsi/scsi_low.c @@ -326,15 +326,13 @@ scsi_low_find_ccb(slp, target, lun, osdep) if ((cb = slp->sl_Qnexus) != NULL && cb->osdep == osdep) return cb; - for (cb = TAILQ_FIRST(&slp->sl_start); cb != NULL; - cb = TAILQ_NEXT(cb, ccb_chain)) + TAILQ_FOREACH(cb, &slp->sl_start, ccb_chain) { if (cb->osdep == osdep) return cb; } - for (cb = TAILQ_FIRST(&li->li_discq); cb != NULL; - cb = TAILQ_NEXT(cb, ccb_chain)) + TAILQ_FOREACH(cb, &li->li_discq, ccb_chain) { if (cb->osdep == osdep) return cb; @@ -4184,8 +4182,7 @@ scsi_low_info(slp, ti, s) printf(">>>>> SCSI_LOW_INFO(0x%lx): %s\n", (u_long) slp->sl_Tnexus, s); if (ti == NULL) { - for (ti = TAILQ_FIRST(&slp->sl_titab); ti != NULL; - ti = TAILQ_NEXT(ti, ti_chain)) + TAILQ_FOREACH(ti, &slp->sl_titab, ti_chain) { scsi_low_print(slp, ti); } diff --git a/sys/cddl/compat/opensolaris/sys/atomic.h b/sys/cddl/compat/opensolaris/sys/atomic.h index 65c9e71..9b81876 100644 --- a/sys/cddl/compat/opensolaris/sys/atomic.h +++ b/sys/cddl/compat/opensolaris/sys/atomic.h @@ -117,6 +117,12 @@ atomic_inc_64_nv(volatile uint64_t *target) return (atomic_add_64_nv(target, 1)); } +static __inline uint64_t +atomic_dec_64_nv(volatile uint64_t *target) +{ + return (atomic_add_64_nv(target, -1)); +} + #if !defined(COMPAT_32BIT) && defined(__LP64__) static __inline void * atomic_cas_ptr(volatile void *target, void *cmp, void *newval) diff --git a/sys/cddl/contrib/opensolaris/uts/common/dtrace/fasttrap.c b/sys/cddl/contrib/opensolaris/uts/common/dtrace/fasttrap.c index efb470b..6865dee 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/dtrace/fasttrap.c +++ b/sys/cddl/contrib/opensolaris/uts/common/dtrace/fasttrap.c @@ -1467,7 +1467,7 @@ fasttrap_proc_lookup(pid_t pid) mutex_enter(&fprc->ftpc_mtx); mutex_exit(&bucket->ftb_mtx); fprc->ftpc_rcount++; - atomic_add_64(&fprc->ftpc_acount, 1); + atomic_inc_64(&fprc->ftpc_acount); ASSERT(fprc->ftpc_acount <= fprc->ftpc_rcount); mutex_exit(&fprc->ftpc_mtx); @@ -1501,7 +1501,7 @@ fasttrap_proc_lookup(pid_t pid) mutex_enter(&fprc->ftpc_mtx); mutex_exit(&bucket->ftb_mtx); fprc->ftpc_rcount++; - atomic_add_64(&fprc->ftpc_acount, 1); + atomic_inc_64(&fprc->ftpc_acount); ASSERT(fprc->ftpc_acount <= fprc->ftpc_rcount); mutex_exit(&fprc->ftpc_mtx); @@ -1738,7 +1738,7 @@ fasttrap_provider_free(fasttrap_provider_t *provider) * count of active providers on the associated process structure. */ if (!provider->ftp_retired) { - atomic_add_64(&provider->ftp_proc->ftpc_acount, -1); + atomic_dec_64(&provider->ftp_proc->ftpc_acount); ASSERT(provider->ftp_proc->ftpc_acount < provider->ftp_proc->ftpc_rcount); } @@ -1814,7 +1814,7 @@ fasttrap_provider_retire(pid_t pid, const char *name, int mprov) * bucket lock therefore protects the integrity of the provider hash * table. */ - atomic_add_64(&fp->ftp_proc->ftpc_acount, -1); + atomic_dec_64(&fp->ftp_proc->ftpc_acount); ASSERT(fp->ftp_proc->ftpc_acount < fp->ftp_proc->ftpc_rcount); fp->ftp_retired = 1; @@ -1910,10 +1910,10 @@ fasttrap_add_probe(fasttrap_probe_spec_t *pdata) pdata->ftps_mod, pdata->ftps_func, name_str) != 0) continue; - atomic_add_32(&fasttrap_total, 1); + atomic_inc_32(&fasttrap_total); if (fasttrap_total > fasttrap_max) { - atomic_add_32(&fasttrap_total, -1); + atomic_dec_32(&fasttrap_total); goto no_mem; } diff --git a/sys/cddl/contrib/opensolaris/uts/common/dtrace/profile.c b/sys/cddl/contrib/opensolaris/uts/common/dtrace/profile.c index 8de919a..e5d15a5 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/dtrace/profile.c +++ b/sys/cddl/contrib/opensolaris/uts/common/dtrace/profile.c @@ -169,9 +169,9 @@ profile_create(hrtime_t interval, const char *name, int kind) if (dtrace_probe_lookup(profile_id, NULL, NULL, name) != 0) return; - atomic_add_32(&profile_total, 1); + atomic_inc_32(&profile_total); if (profile_total > profile_max) { - atomic_add_32(&profile_total, -1); + atomic_dec_32(&profile_total); return; } @@ -326,7 +326,7 @@ profile_destroy(void *arg, dtrace_id_t id, void *parg) kmem_free(prof, sizeof (profile_probe_t)); ASSERT(profile_total >= 1); - atomic_add_32(&profile_total, -1); + atomic_dec_32(&profile_total); } /*ARGSUSED*/ diff --git a/sys/cddl/contrib/opensolaris/uts/common/dtrace/systrace.c b/sys/cddl/contrib/opensolaris/uts/common/dtrace/systrace.c index be14660..1d8219c 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/dtrace/systrace.c +++ b/sys/cddl/contrib/opensolaris/uts/common/dtrace/systrace.c @@ -165,11 +165,11 @@ systrace_enable(void *arg, dtrace_id_t id, void *parg) return; } - (void) casptr(&sysent[sysnum].sy_callc, + (void) atomic_cas_ptr(&sysent[sysnum].sy_callc, (void *)systrace_sysent[sysnum].stsy_underlying, (void *)dtrace_systrace_syscall); #ifdef _SYSCALL32_IMPL - (void) casptr(&sysent32[sysnum].sy_callc, + (void) atomic_cas_ptr(&sysent32[sysnum].sy_callc, (void *)systrace_sysent32[sysnum].stsy_underlying, (void *)dtrace_systrace_syscall32); #endif @@ -184,12 +184,12 @@ systrace_disable(void *arg, dtrace_id_t id, void *parg) systrace_sysent[sysnum].stsy_return == DTRACE_IDNONE); if (disable) { - (void) casptr(&sysent[sysnum].sy_callc, + (void) atomic_cas_ptr(&sysent[sysnum].sy_callc, (void *)dtrace_systrace_syscall, (void *)systrace_sysent[sysnum].stsy_underlying); #ifdef _SYSCALL32_IMPL - (void) casptr(&sysent32[sysnum].sy_callc, + (void) atomic_cas_ptr(&sysent32[sysnum].sy_callc, (void *)dtrace_systrace_syscall32, (void *)systrace_sysent32[sysnum].stsy_underlying); #endif diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c index 9275601..9102322c 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c +++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c @@ -70,12 +70,6 @@ dbuf_cons(void *vdb, void *unused, int kmflag) cv_init(&db->db_changed, NULL, CV_DEFAULT, NULL); refcount_create(&db->db_holds); -#if defined(illumos) || !defined(_KERNEL) - db->db_creation = gethrtime(); -#else - db->db_creation = cpu_ticks() ^ ((uint64_t)CPU_SEQID << 48); -#endif - return (0); } @@ -182,7 +176,7 @@ dbuf_hash_insert(dmu_buf_impl_t *db) db->db_hash_next = h->hash_table[idx]; h->hash_table[idx] = db; mutex_exit(DBUF_HASH_MUTEX(h, idx)); - atomic_add_64(&dbuf_hash_count, 1); + atomic_inc_64(&dbuf_hash_count); return (NULL); } @@ -216,7 +210,7 @@ dbuf_hash_remove(dmu_buf_impl_t *db) *dbp = db->db_hash_next; db->db_hash_next = NULL; mutex_exit(DBUF_HASH_MUTEX(h, idx)); - atomic_add_64(&dbuf_hash_count, -1); + atomic_dec_64(&dbuf_hash_count); } static arc_evict_func_t dbuf_do_evict; @@ -823,7 +817,7 @@ dbuf_free_range(dnode_t *dn, uint64_t start_blkid, uint64_t end_blkid, db_search.db_level = 0; db_search.db_blkid = start_blkid; - db_search.db_creation = 0; + db_search.db_state = DB_SEARCH; mutex_enter(&dn->dn_dbufs_mtx); if (start_blkid >= dn->dn_unlisted_l0_blkid) { @@ -1609,7 +1603,7 @@ dbuf_clear(dmu_buf_impl_t *db) dndb = dn->dn_dbuf; if (db->db_blkid != DMU_BONUS_BLKID && MUTEX_HELD(&dn->dn_dbufs_mtx)) { avl_remove(&dn->dn_dbufs, db); - (void) atomic_dec_32_nv(&dn->dn_dbufs_count); + atomic_dec_32(&dn->dn_dbufs_count); membar_producer(); DB_DNODE_EXIT(db); /* @@ -1785,7 +1779,7 @@ dbuf_create(dnode_t *dn, uint8_t level, uint64_t blkid, ASSERT(dn->dn_object == DMU_META_DNODE_OBJECT || refcount_count(&dn->dn_holds) > 0); (void) refcount_add(&dn->dn_holds, db); - (void) atomic_inc_32_nv(&dn->dn_dbufs_count); + atomic_inc_32(&dn->dn_dbufs_count); dprintf_dbuf(db, "db=%p\n", db); @@ -1831,7 +1825,7 @@ dbuf_destroy(dmu_buf_impl_t *db) dn = DB_DNODE(db); mutex_enter(&dn->dn_dbufs_mtx); avl_remove(&dn->dn_dbufs, db); - (void) atomic_dec_32_nv(&dn->dn_dbufs_count); + atomic_dec_32(&dn->dn_dbufs_count); mutex_exit(&dn->dn_dbufs_mtx); DB_DNODE_EXIT(db); /* @@ -2115,7 +2109,7 @@ dbuf_rele_and_unlock(dmu_buf_impl_t *db, void *tag) * until the move completes. */ DB_DNODE_ENTER(db); - (void) atomic_dec_32_nv(&DB_DNODE(db)->dn_dbufs_count); + atomic_dec_32(&DB_DNODE(db)->dn_dbufs_count); DB_DNODE_EXIT(db); /* * The bonus buffer's dnode hold is no longer discounted diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu.c b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu.c index e3558f8..7f7f3dc 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu.c +++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu.c @@ -287,7 +287,7 @@ dmu_bonus_hold(objset_t *os, uint64_t object, void *tag, dmu_buf_t **dbp) /* as long as the bonus buf is held, the dnode will be held */ if (refcount_add(&db->db_holds, tag) == 1) { VERIFY(dnode_add_ref(dn, db)); - (void) atomic_inc_32_nv(&dn->dn_dbufs_count); + atomic_inc_32(&dn->dn_dbufs_count); } /* diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dnode.c b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dnode.c index a378601..55bf895 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dnode.c +++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dnode.c @@ -69,33 +69,35 @@ dbuf_compare(const void *x1, const void *x2) if (d1->db_level < d2->db_level) { return (-1); - } else if (d1->db_level > d2->db_level) { + } + if (d1->db_level > d2->db_level) { return (1); } if (d1->db_blkid < d2->db_blkid) { return (-1); - } else if (d1->db_blkid > d2->db_blkid) { + } + if (d1->db_blkid > d2->db_blkid) { return (1); } - /* - * If a dbuf is being evicted while dn_dbufs_mutex is not held, we set - * the db_state to DB_EVICTING but do not remove it from dn_dbufs. If - * another thread creates a dbuf of the same blkid before the dbuf is - * removed from dn_dbufs, we can reach a state where there are two - * dbufs of the same blkid and level in db_dbufs. To maintain the avl - * invariant that there cannot be duplicate items, we distinguish - * between these two dbufs based on the time they were created. - */ - if (d1->db_creation < d2->db_creation) { + if (d1->db_state < d2->db_state) { return (-1); - } else if (d1->db_creation > d2->db_creation) { + } + if (d1->db_state > d2->db_state) { return (1); - } else { - ASSERT3P(d1, ==, d2); - return (0); } + + ASSERT3S(d1->db_state, !=, DB_SEARCH); + ASSERT3S(d2->db_state, !=, DB_SEARCH); + + if ((uintptr_t)d1 < (uintptr_t)d2) { + return (-1); + } + if ((uintptr_t)d1 > (uintptr_t)d2) { + return (1); + } + return (0); } /* ARGSUSED */ diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c index a0e19ec..7d21896 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c +++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c @@ -1872,9 +1872,9 @@ spa_load_verify_done(zio_t *zio) if (error) { if ((BP_GET_LEVEL(bp) != 0 || DMU_OT_IS_METADATA(type)) && type != DMU_OT_INTENT_LOG) - atomic_add_64(&sle->sle_meta_count, 1); + atomic_inc_64(&sle->sle_meta_count); else - atomic_add_64(&sle->sle_data_count, 1); + atomic_inc_64(&sle->sle_data_count); } zio_data_buf_free(zio->io_data, zio->io_size); diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dbuf.h b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dbuf.h index 643d968..8ca8753 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dbuf.h +++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dbuf.h @@ -66,8 +66,13 @@ extern "C" { * | | * | | * +--------> NOFILL -------+ + * + * DB_SEARCH is an invalid state for a dbuf. It is used by dbuf_free_range + * to find all dbufs in a range of a dnode and must be less than any other + * dbuf_states_t (see comment on dn_dbufs in dnode.h). */ typedef enum dbuf_states { + DB_SEARCH = -1, DB_UNCACHED, DB_FILL, DB_NOFILL, @@ -213,9 +218,6 @@ typedef struct dmu_buf_impl { /* pointer to most recent dirty record for this buffer */ dbuf_dirty_record_t *db_last_dirty; - /* Creation time of dbuf (see comment in dbuf_compare). */ - hrtime_t db_creation; - /* * Our link on the owner dnodes's dn_dbufs list. * Protected by its dn_dbufs_mtx. diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dnode.h b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dnode.h index 6e4a845..8a4f3f6 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dnode.h +++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/dnode.h @@ -211,7 +211,18 @@ typedef struct dnode { refcount_t dn_holds; kmutex_t dn_dbufs_mtx; - avl_tree_t dn_dbufs; /* descendent dbufs */ + /* + * Descendent dbufs, ordered by dbuf_compare. Note that dn_dbufs + * can contain multiple dbufs of the same (level, blkid) when a + * dbuf is marked DB_EVICTING without being removed from + * dn_dbufs. To maintain the avl invariant that there cannot be + * duplicate entries, we order the dbufs by an arbitrary value - + * their address in memory. This means that dn_dbufs cannot be used to + * directly look up a dbuf. Instead, callers must use avl_walk, have + * a reference to the dbuf, or look up a non-existant node with + * db_state = DB_SEARCH (see dbuf_free_range for an example). + */ + avl_tree_t dn_dbufs; /* protected by dn_struct_rwlock */ struct dmu_buf_impl *dn_bonus; /* bonus buffer dbuf */ diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/refcount.h b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/refcount.h index ee927c1..3423645 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/refcount.h +++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/refcount.h @@ -89,8 +89,8 @@ typedef struct refcount { #define refcount_destroy_many(rc, number) ((rc)->rc_count = 0) #define refcount_is_zero(rc) ((rc)->rc_count == 0) #define refcount_count(rc) ((rc)->rc_count) -#define refcount_add(rc, holder) atomic_add_64_nv(&(rc)->rc_count, 1) -#define refcount_remove(rc, holder) atomic_add_64_nv(&(rc)->rc_count, -1) +#define refcount_add(rc, holder) atomic_inc_64_nv(&(rc)->rc_count) +#define refcount_remove(rc, holder) atomic_dec_64_nv(&(rc)->rc_count) #define refcount_add_many(rc, number, holder) \ atomic_add_64_nv(&(rc)->rc_count, number) #define refcount_remove_many(rc, number, holder) \ diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_cache.c b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_cache.c index a3e9b02..0222e63 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_cache.c +++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_cache.c @@ -111,7 +111,7 @@ static vdc_stats_t vdc_stats = { { "misses", KSTAT_DATA_UINT64 } }; -#define VDCSTAT_BUMP(stat) atomic_add_64(&vdc_stats.stat.value.ui64, 1); +#define VDCSTAT_BUMP(stat) atomic_inc_64(&vdc_stats.stat.value.ui64); static int vdev_cache_offset_compare(const void *a1, const void *a2) diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_label.c b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_label.c index 014b851..70c186f 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_label.c +++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_label.c @@ -992,7 +992,7 @@ vdev_uberblock_sync_done(zio_t *zio) uint64_t *good_writes = zio->io_private; if (zio->io_error == 0 && zio->io_vd->vdev_top->vdev_ms_array != 0) - atomic_add_64(good_writes, 1); + atomic_inc_64(good_writes); } /* @@ -1067,7 +1067,7 @@ vdev_label_sync_done(zio_t *zio) uint64_t *good_writes = zio->io_private; if (zio->io_error == 0) - atomic_add_64(good_writes, 1); + atomic_inc_64(good_writes); } /* diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c index 33748fe..d7d5fde 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c +++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c @@ -1233,7 +1233,7 @@ out: dmu_objset_disown(zfsvfs->z_os, zfsvfs); zfsvfs_free(zfsvfs); } else { - atomic_add_32(&zfs_active_fs_count, 1); + atomic_inc_32(&zfs_active_fs_count); } return (error); @@ -2324,7 +2324,7 @@ zfs_freevfs(vfs_t *vfsp) zfsvfs_free(zfsvfs); - atomic_add_32(&zfs_active_fs_count, -1); + atomic_dec_32(&zfs_active_fs_count); } #ifdef __i386__ diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio_inject.c b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio_inject.c index b297611..991a0a3 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio_inject.c +++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio_inject.c @@ -426,7 +426,7 @@ zio_inject_fault(char *name, int flags, int *id, zinject_record_t *record) handler->zi_spa = spa; handler->zi_record = *record; list_insert_tail(&inject_handlers, handler); - atomic_add_32(&zio_injection_enabled, 1); + atomic_inc_32(&zio_injection_enabled); rw_exit(&inject_lock); } @@ -503,7 +503,7 @@ zio_clear_fault(int id) spa_inject_delref(handler->zi_spa); kmem_free(handler, sizeof (inject_handler_t)); - atomic_add_32(&zio_injection_enabled, -1); + atomic_dec_32(&zio_injection_enabled); return (0); } diff --git a/sys/cddl/contrib/opensolaris/uts/common/os/fm.c b/sys/cddl/contrib/opensolaris/uts/common/os/fm.c index 3c9ba51..66a860d 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/os/fm.c +++ b/sys/cddl/contrib/opensolaris/uts/common/os/fm.c @@ -379,7 +379,7 @@ fm_panic(const char *format, ...) { va_list ap; - (void) casptr((void *)&fm_panicstr, NULL, (void *)format); + (void) atomic_cas_ptr((void *)&fm_panicstr, NULL, (void *)format); #if defined(__i386) || defined(__amd64) fastreboot_disable_highpil(); #endif /* __i386 || __amd64 */ @@ -524,20 +524,20 @@ fm_ereport_post(nvlist_t *ereport, int evc_flag) (void) nvlist_size(ereport, &nvl_size, NV_ENCODE_NATIVE); if (nvl_size > ERPT_DATA_SZ || nvl_size == 0) { - atomic_add_64(&erpt_kstat_data.erpt_dropped.value.ui64, 1); + atomic_inc_64(&erpt_kstat_data.erpt_dropped.value.ui64); return; } #ifdef sun if (sysevent_evc_bind(FM_ERROR_CHAN, &error_chan, EVCH_CREAT|EVCH_HOLD_PEND) != 0) { - atomic_add_64(&erpt_kstat_data.erpt_dropped.value.ui64, 1); + atomic_inc_64(&erpt_kstat_data.erpt_dropped.value.ui64); return; } if (sysevent_evc_publish(error_chan, EC_FM, ESC_FM_ERROR, SUNW_VENDOR, FM_PUB, ereport, evc_flag) != 0) { - atomic_add_64(&erpt_kstat_data.erpt_dropped.value.ui64, 1); + atomic_inc_64(&erpt_kstat_data.erpt_dropped.value.ui64); (void) sysevent_evc_unbind(error_chan); return; } @@ -803,8 +803,7 @@ fm_payload_set(nvlist_t *payload, ...) va_end(ap); if (ret) - atomic_add_64( - &erpt_kstat_data.payload_set_failed.value.ui64, 1); + atomic_inc_64(&erpt_kstat_data.payload_set_failed.value.ui64); } /* @@ -837,24 +836,24 @@ fm_ereport_set(nvlist_t *ereport, int version, const char *erpt_class, int ret; if (version != FM_EREPORT_VERS0) { - atomic_add_64(&erpt_kstat_data.erpt_set_failed.value.ui64, 1); + atomic_inc_64(&erpt_kstat_data.erpt_set_failed.value.ui64); return; } (void) snprintf(ereport_class, FM_MAX_CLASS, "%s.%s", FM_EREPORT_CLASS, erpt_class); if (nvlist_add_string(ereport, FM_CLASS, ereport_class) != 0) { - atomic_add_64(&erpt_kstat_data.erpt_set_failed.value.ui64, 1); + atomic_inc_64(&erpt_kstat_data.erpt_set_failed.value.ui64); return; } if (nvlist_add_uint64(ereport, FM_EREPORT_ENA, ena)) { - atomic_add_64(&erpt_kstat_data.erpt_set_failed.value.ui64, 1); + atomic_inc_64(&erpt_kstat_data.erpt_set_failed.value.ui64); } if (nvlist_add_nvlist(ereport, FM_EREPORT_DETECTOR, (nvlist_t *)detector) != 0) { - atomic_add_64(&erpt_kstat_data.erpt_set_failed.value.ui64, 1); + atomic_inc_64(&erpt_kstat_data.erpt_set_failed.value.ui64); } va_start(ap, detector); @@ -863,7 +862,7 @@ fm_ereport_set(nvlist_t *ereport, int version, const char *erpt_class, va_end(ap); if (ret) - atomic_add_64(&erpt_kstat_data.erpt_set_failed.value.ui64, 1); + atomic_inc_64(&erpt_kstat_data.erpt_set_failed.value.ui64); } /* @@ -886,19 +885,19 @@ static int fm_fmri_hc_set_common(nvlist_t *fmri, int version, const nvlist_t *auth) { if (version != FM_HC_SCHEME_VERSION) { - atomic_add_64(&erpt_kstat_data.fmri_set_failed.value.ui64, 1); + atomic_inc_64(&erpt_kstat_data.fmri_set_failed.value.ui64); return (0); } if (nvlist_add_uint8(fmri, FM_VERSION, version) != 0 || nvlist_add_string(fmri, FM_FMRI_SCHEME, FM_FMRI_SCHEME_HC) != 0) { - atomic_add_64(&erpt_kstat_data.fmri_set_failed.value.ui64, 1); + atomic_inc_64(&erpt_kstat_data.fmri_set_failed.value.ui64); return (0); } if (auth != NULL && nvlist_add_nvlist(fmri, FM_FMRI_AUTHORITY, (nvlist_t *)auth) != 0) { - atomic_add_64(&erpt_kstat_data.fmri_set_failed.value.ui64, 1); + atomic_inc_64(&erpt_kstat_data.fmri_set_failed.value.ui64); return (0); } @@ -930,22 +929,22 @@ fm_fmri_hc_set(nvlist_t *fmri, int version, const nvlist_t *auth, pairs[i] = fm_nvlist_create(nva); if (nvlist_add_string(pairs[i], FM_FMRI_HC_NAME, name) != 0 || nvlist_add_string(pairs[i], FM_FMRI_HC_ID, idstr) != 0) { - atomic_add_64( - &erpt_kstat_data.fmri_set_failed.value.ui64, 1); + atomic_inc_64( + &erpt_kstat_data.fmri_set_failed.value.ui64); } } va_end(ap); if (nvlist_add_nvlist_array(fmri, FM_FMRI_HC_LIST, pairs, npairs) != 0) - atomic_add_64(&erpt_kstat_data.fmri_set_failed.value.ui64, 1); + atomic_inc_64(&erpt_kstat_data.fmri_set_failed.value.ui64); for (i = 0; i < npairs; i++) fm_nvlist_destroy(pairs[i], FM_NVA_RETAIN); if (snvl != NULL) { if (nvlist_add_nvlist(fmri, FM_FMRI_HC_SPECIFIC, snvl) != 0) { - atomic_add_64( - &erpt_kstat_data.fmri_set_failed.value.ui64, 1); + atomic_inc_64( + &erpt_kstat_data.fmri_set_failed.value.ui64); } } } @@ -970,7 +969,7 @@ fm_fmri_dev_set(nvlist_t *fmri_dev, int version, const nvlist_t *auth, int err = 0; if (version != DEV_SCHEME_VERSION0) { - atomic_add_64(&erpt_kstat_data.fmri_set_failed.value.ui64, 1); + atomic_inc_64(&erpt_kstat_data.fmri_set_failed.value.ui64); return; } @@ -991,7 +990,7 @@ fm_fmri_dev_set(nvlist_t *fmri_dev, int version, const nvlist_t *auth, err |= nvlist_add_string(fmri_dev, FM_FMRI_DEV_TGTPTLUN0, tpl0); if (err) - atomic_add_64(&erpt_kstat_data.fmri_set_failed.value.ui64, 1); + atomic_inc_64(&erpt_kstat_data.fmri_set_failed.value.ui64); } @@ -1016,35 +1015,35 @@ fm_fmri_cpu_set(nvlist_t *fmri_cpu, int version, const nvlist_t *auth, uint64_t *failedp = &erpt_kstat_data.fmri_set_failed.value.ui64; if (version < CPU_SCHEME_VERSION1) { - atomic_add_64(failedp, 1); + atomic_inc_64(failedp); return; } if (nvlist_add_uint8(fmri_cpu, FM_VERSION, version) != 0) { - atomic_add_64(failedp, 1); + atomic_inc_64(failedp); return; } if (nvlist_add_string(fmri_cpu, FM_FMRI_SCHEME, FM_FMRI_SCHEME_CPU) != 0) { - atomic_add_64(failedp, 1); + atomic_inc_64(failedp); return; } if (auth != NULL && nvlist_add_nvlist(fmri_cpu, FM_FMRI_AUTHORITY, (nvlist_t *)auth) != 0) - atomic_add_64(failedp, 1); + atomic_inc_64(failedp); if (nvlist_add_uint32(fmri_cpu, FM_FMRI_CPU_ID, cpu_id) != 0) - atomic_add_64(failedp, 1); + atomic_inc_64(failedp); if (cpu_maskp != NULL && nvlist_add_uint8(fmri_cpu, FM_FMRI_CPU_MASK, *cpu_maskp) != 0) - atomic_add_64(failedp, 1); + atomic_inc_64(failedp); if (serial_idp == NULL || nvlist_add_string(fmri_cpu, FM_FMRI_CPU_SERIAL_ID, (char *)serial_idp) != 0) - atomic_add_64(failedp, 1); + atomic_inc_64(failedp); } /* @@ -1065,49 +1064,47 @@ fm_fmri_mem_set(nvlist_t *fmri, int version, const nvlist_t *auth, const char *unum, const char *serial, uint64_t offset) { if (version != MEM_SCHEME_VERSION0) { - atomic_add_64(&erpt_kstat_data.fmri_set_failed.value.ui64, 1); + atomic_inc_64(&erpt_kstat_data.fmri_set_failed.value.ui64); return; } if (!serial && (offset != (uint64_t)-1)) { - atomic_add_64(&erpt_kstat_data.fmri_set_failed.value.ui64, 1); + atomic_inc_64(&erpt_kstat_data.fmri_set_failed.value.ui64); return; } if (nvlist_add_uint8(fmri, FM_VERSION, version) != 0) { - atomic_add_64(&erpt_kstat_data.fmri_set_failed.value.ui64, 1); + atomic_inc_64(&erpt_kstat_data.fmri_set_failed.value.ui64); return; } if (nvlist_add_string(fmri, FM_FMRI_SCHEME, FM_FMRI_SCHEME_MEM) != 0) { - atomic_add_64(&erpt_kstat_data.fmri_set_failed.value.ui64, 1); + atomic_inc_64(&erpt_kstat_data.fmri_set_failed.value.ui64); return; } if (auth != NULL) { if (nvlist_add_nvlist(fmri, FM_FMRI_AUTHORITY, (nvlist_t *)auth) != 0) { - atomic_add_64( - &erpt_kstat_data.fmri_set_failed.value.ui64, 1); + atomic_inc_64( + &erpt_kstat_data.fmri_set_failed.value.ui64); } } if (nvlist_add_string(fmri, FM_FMRI_MEM_UNUM, unum) != 0) { - atomic_add_64(&erpt_kstat_data.fmri_set_failed.value.ui64, 1); + atomic_inc_64(&erpt_kstat_data.fmri_set_failed.value.ui64); } if (serial != NULL) { if (nvlist_add_string_array(fmri, FM_FMRI_MEM_SERIAL_ID, (char **)&serial, 1) != 0) { - atomic_add_64( - &erpt_kstat_data.fmri_set_failed.value.ui64, 1); + atomic_inc_64( + &erpt_kstat_data.fmri_set_failed.value.ui64); } - if (offset != (uint64_t)-1) { - if (nvlist_add_uint64(fmri, FM_FMRI_MEM_OFFSET, - offset) != 0) { - atomic_add_64(&erpt_kstat_data. - fmri_set_failed.value.ui64, 1); - } + if (offset != (uint64_t)-1 && nvlist_add_uint64(fmri, + FM_FMRI_MEM_OFFSET, offset) != 0) { + atomic_inc_64( + &erpt_kstat_data.fmri_set_failed.value.ui64); } } } @@ -1117,28 +1114,28 @@ fm_fmri_zfs_set(nvlist_t *fmri, int version, uint64_t pool_guid, uint64_t vdev_guid) { if (version != ZFS_SCHEME_VERSION0) { - atomic_add_64(&erpt_kstat_data.fmri_set_failed.value.ui64, 1); + atomic_inc_64(&erpt_kstat_data.fmri_set_failed.value.ui64); return; } if (nvlist_add_uint8(fmri, FM_VERSION, version) != 0) { - atomic_add_64(&erpt_kstat_data.fmri_set_failed.value.ui64, 1); + atomic_inc_64(&erpt_kstat_data.fmri_set_failed.value.ui64); return; } if (nvlist_add_string(fmri, FM_FMRI_SCHEME, FM_FMRI_SCHEME_ZFS) != 0) { - atomic_add_64(&erpt_kstat_data.fmri_set_failed.value.ui64, 1); + atomic_inc_64(&erpt_kstat_data.fmri_set_failed.value.ui64); return; } if (nvlist_add_uint64(fmri, FM_FMRI_ZFS_POOL, pool_guid) != 0) { - atomic_add_64(&erpt_kstat_data.fmri_set_failed.value.ui64, 1); + atomic_inc_64(&erpt_kstat_data.fmri_set_failed.value.ui64); } if (vdev_guid != 0) { if (nvlist_add_uint64(fmri, FM_FMRI_ZFS_VDEV, vdev_guid) != 0) { - atomic_add_64( - &erpt_kstat_data.fmri_set_failed.value.ui64, 1); + atomic_inc_64( + &erpt_kstat_data.fmri_set_failed.value.ui64); } } } @@ -1322,20 +1319,20 @@ fm_fmri_hc_create(nvlist_t *fmri, int version, const nvlist_t *auth, */ if (nvlist_lookup_nvlist_array(bboard, FM_FMRI_HC_LIST, &hcl, &n) != 0) { - atomic_add_64(&erpt_kstat_data.fmri_set_failed.value.ui64, 1); + atomic_inc_64(&erpt_kstat_data.fmri_set_failed.value.ui64); return; } for (i = 0; i < n; i++) { if (nvlist_lookup_string(hcl[i], FM_FMRI_HC_NAME, &hcname) != 0) { - atomic_add_64( - &erpt_kstat_data.fmri_set_failed.value.ui64, 1); + atomic_inc_64( + &erpt_kstat_data.fmri_set_failed.value.ui64); return; } if (nvlist_lookup_string(hcl[i], FM_FMRI_HC_ID, &hcid) != 0) { - atomic_add_64( - &erpt_kstat_data.fmri_set_failed.value.ui64, 1); + atomic_inc_64( + &erpt_kstat_data.fmri_set_failed.value.ui64); return; } @@ -1347,8 +1344,8 @@ fm_fmri_hc_create(nvlist_t *fmri, int version, const nvlist_t *auth, fm_nvlist_destroy(pairs[j], FM_NVA_RETAIN); } - atomic_add_64( - &erpt_kstat_data.fmri_set_failed.value.ui64, 1); + atomic_inc_64( + &erpt_kstat_data.fmri_set_failed.value.ui64); return; } } @@ -1372,8 +1369,8 @@ fm_fmri_hc_create(nvlist_t *fmri, int version, const nvlist_t *auth, fm_nvlist_destroy(pairs[j], FM_NVA_RETAIN); } - atomic_add_64( - &erpt_kstat_data.fmri_set_failed.value.ui64, 1); + atomic_inc_64( + &erpt_kstat_data.fmri_set_failed.value.ui64); return; } } @@ -1384,7 +1381,7 @@ fm_fmri_hc_create(nvlist_t *fmri, int version, const nvlist_t *auth, */ if (nvlist_add_nvlist_array(fmri, FM_FMRI_HC_LIST, pairs, npairs + n) != 0) { - atomic_add_64(&erpt_kstat_data.fmri_set_failed.value.ui64, 1); + atomic_inc_64(&erpt_kstat_data.fmri_set_failed.value.ui64); return; } @@ -1394,8 +1391,8 @@ fm_fmri_hc_create(nvlist_t *fmri, int version, const nvlist_t *auth, if (snvl != NULL) { if (nvlist_add_nvlist(fmri, FM_FMRI_HC_SPECIFIC, snvl) != 0) { - atomic_add_64( - &erpt_kstat_data.fmri_set_failed.value.ui64, 1); + atomic_inc_64( + &erpt_kstat_data.fmri_set_failed.value.ui64); return; } } diff --git a/sys/cddl/contrib/opensolaris/uts/common/sys/acl.h b/sys/cddl/contrib/opensolaris/uts/common/sys/acl.h index 991978e..92d563a 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/sys/acl.h +++ b/sys/cddl/contrib/opensolaris/uts/common/sys/acl.h @@ -19,6 +19,8 @@ * CDDL HEADER END */ /* + * Copyright 2014 Garrett D'Amore <garrett@damore.org> + * * Copyright 2009 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ @@ -299,13 +301,8 @@ extern int cmp2acls(void *, void *); #endif /* !defined(_KERNEL) */ -#if defined(__STDC__) extern int acl(const char *path, int cmd, int cnt, void *buf); extern int facl(int fd, int cmd, int cnt, void *buf); -#else /* !__STDC__ */ -extern int acl(); -extern int facl(); -#endif /* defined(__STDC__) */ #ifdef __cplusplus } diff --git a/sys/cddl/contrib/opensolaris/uts/common/sys/bitmap.h b/sys/cddl/contrib/opensolaris/uts/common/sys/bitmap.h index d259282..8d70549 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/sys/bitmap.h +++ b/sys/cddl/contrib/opensolaris/uts/common/sys/bitmap.h @@ -171,9 +171,9 @@ extern int odd_parity(ulong_t); * to 0 otherwise. */ #define BT_ATOMIC_SET(bitmap, bitindex) \ - { atomic_or_long(&(BT_WIM(bitmap, bitindex)), BT_BIW(bitindex)); } + { atomic_or_ulong(&(BT_WIM(bitmap, bitindex)), BT_BIW(bitindex)); } #define BT_ATOMIC_CLEAR(bitmap, bitindex) \ - { atomic_and_long(&(BT_WIM(bitmap, bitindex)), ~BT_BIW(bitindex)); } + { atomic_and_ulong(&(BT_WIM(bitmap, bitindex)), ~BT_BIW(bitindex)); } #define BT_ATOMIC_SET_EXCL(bitmap, bitindex, result) \ { result = atomic_set_long_excl(&(BT_WIM(bitmap, bitindex)), \ diff --git a/sys/cddl/contrib/opensolaris/uts/common/sys/cpuvar.h b/sys/cddl/contrib/opensolaris/uts/common/sys/cpuvar.h index d4075d5..b93cb5a 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/sys/cpuvar.h +++ b/sys/cddl/contrib/opensolaris/uts/common/sys/cpuvar.h @@ -524,8 +524,8 @@ typedef ulong_t cpuset_t; /* a set of CPUs */ largest = (uint_t)(highbit(set) - 1); \ } -#define CPUSET_ATOMIC_DEL(set, cpu) atomic_and_long(&(set), ~CPUSET(cpu)) -#define CPUSET_ATOMIC_ADD(set, cpu) atomic_or_long(&(set), CPUSET(cpu)) +#define CPUSET_ATOMIC_DEL(set, cpu) atomic_and_ulong(&(set), ~CPUSET(cpu)) +#define CPUSET_ATOMIC_ADD(set, cpu) atomic_or_ulong(&(set), CPUSET(cpu)) #define CPUSET_ATOMIC_XADD(set, cpu, result) \ { result = atomic_set_long_excl(&(set), (cpu)); } diff --git a/sys/cddl/contrib/opensolaris/uts/common/sys/debug.h b/sys/cddl/contrib/opensolaris/uts/common/sys/debug.h index 1bba5ca..4ccc2ec 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/sys/debug.h +++ b/sys/cddl/contrib/opensolaris/uts/common/sys/debug.h @@ -19,6 +19,8 @@ * CDDL HEADER END */ /* + * Copyright 2014 Garrett D'Amore <garrett@damore.org> + * * Copyright 2010 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ @@ -47,7 +49,6 @@ extern "C" { * ASSERT and is evaluated on both debug and non-debug kernels. */ -#if defined(__STDC__) extern int assfail(const char *, const char *, int); #define VERIFY(EX) ((void)((EX) || assfail(#EX, __FILE__, __LINE__))) #ifdef DEBUG @@ -55,15 +56,6 @@ extern int assfail(const char *, const char *, int); #else #define ASSERT(x) ((void)0) #endif -#else /* defined(__STDC__) */ -extern int assfail(); -#define VERIFY(EX) ((void)((EX) || assfail("EX", __FILE__, __LINE__))) -#ifdef DEBUG -#define ASSERT(EX) ((void)((EX) || assfail("EX", __FILE__, __LINE__))) -#else -#define ASSERT(x) ((void)0) -#endif -#endif /* defined(__STDC__) */ /* * Assertion variants sensitive to the compilation data model diff --git a/sys/cddl/contrib/opensolaris/uts/common/sys/feature_tests.h b/sys/cddl/contrib/opensolaris/uts/common/sys/feature_tests.h index 11f4ec7..717da1e 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/sys/feature_tests.h +++ b/sys/cddl/contrib/opensolaris/uts/common/sys/feature_tests.h @@ -20,6 +20,8 @@ */ /* + * Copyright 2013 Garrett D'Amore <garrett@damore.org> + * * Copyright 2006 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ @@ -42,15 +44,16 @@ extern "C" { * 199309L POSIX.1b-1993 compilation (Real Time) * 199506L POSIX.1c-1995 compilation (POSIX Threads) * 200112L POSIX.1-2001 compilation (Austin Group Revision) + * 200809L POSIX.1-2008 compilation */ #if defined(_POSIX_SOURCE) && !defined(_POSIX_C_SOURCE) #define _POSIX_C_SOURCE 1 #endif /* - * The feature test macros __XOPEN_OR_POSIX, _STRICT_STDC, and _STDC_C99 - * are Sun implementation specific macros created in order to compress - * common standards specified feature test macros for easier reading. + * The feature test macros __XOPEN_OR_POSIX, _STRICT_STDC, _STRICT_SYMBOLS, + * and _STDC_C99 are Sun implementation specific macros created in order to + * compress common standards specified feature test macros for easier reading. * These macros should not be used by the application developer as * unexpected results may occur. Instead, the user should reference * standards(5) for correct usage of the standards feature test macros. @@ -76,6 +79,10 @@ extern "C" { * the C standard. A value of 199901L indicates a * compiler that complies with ISO/IEC 9899:1999, other- * wise known as the C99 standard. + * + * _STRICT_SYMBOLS Used in cases where symbol visibility is restricted + * by the standards, and the user has not explicitly + * relaxed the strictness via __EXTENSIONS__. */ #if defined(_XOPEN_SOURCE) || defined(_POSIX_C_SOURCE) @@ -145,6 +152,14 @@ extern "C" { #endif /* + * Use strict symbol visibility. + */ +#if (defined(_STRICT_STDC) || defined(__XOPEN_OR_POSIX)) && \ + !defined(__EXTENSIONS__) +#define _STRICT_SYMBOLS +#endif + +/* * Large file interfaces: * * _LARGEFILE_SOURCE @@ -223,6 +238,8 @@ extern "C" { * X/Open CAE Specification, Issue 5 (XPG5) * Open Group Technical Standard, Issue 6 (XPG6), also referred to as * IEEE Std. 1003.1-2001 and ISO/IEC 9945:2002. + * Open Group Technical Standard, Issue 7 (XPG7), also referred to as + * IEEE Std. 1003.1-2008 and ISO/IEC 9945:2009. * * XPG4v2 is also referred to as UNIX 95 (SUS or SUSv1). * XPG5 is also referred to as UNIX 98 or the Single Unix Specification, @@ -230,6 +247,7 @@ extern "C" { * XPG6 is the result of a merge of the X/Open and POSIX specifications * and as such is also referred to as IEEE Std. 1003.1-2001 in * addition to UNIX 03 and SUSv3. + * XPG7 is also referred to as UNIX 08 and SUSv4. * * When writing a conforming X/Open application, as per the specification * requirements, the appropriate feature test macros must be defined at @@ -242,6 +260,7 @@ extern "C" { * _XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED = 1 XPG4v2 * _XOPEN_SOURCE = 500 XPG5 * _XOPEN_SOURCE = 600 (or POSIX_C_SOURCE=200112L) XPG6 + * _XOPEN_SOURCE = 700 (or POSIX_C_SOURCE=200809L) XPG7 * * In order to simplify the guards within the headers, the following * implementation private test macros have been created. Applications @@ -261,6 +280,7 @@ extern "C" { * _XPG4_2 X/Open CAE Specification, Issue 4, Version 2 (XPG4v2/UNIX 95/SUS) * _XPG5 X/Open CAE Specification, Issue 5 (XPG5/UNIX 98/SUSv2) * _XPG6 Open Group Technical Standard, Issue 6 (XPG6/UNIX 03/SUSv3) + * _XPG7 Open Group Technical Standard, Issue 7 (XPG7/UNIX 08/SUSv4) */ /* X/Open Portability Guide, Issue 3 */ @@ -295,6 +315,19 @@ extern "C" { #define _POSIX_C_SOURCE 200112L #undef _XOPEN_SOURCE #define _XOPEN_SOURCE 600 + +/* Open Group Technical Standard, Issue 7 */ +#elif (_XOPEN_SOURCE - 0 == 700) || (_POSIX_C_SOURCE - 0 == 200809L) +#define _XPG7 +#define _XPG6 +#define _XPG5 +#define _XPG4_2 +#define _XPG4 +#define _XPG3 +#undef _POSIX_C_SOURCE +#define _POSIX_C_SOURCE 200809L +#undef _XOPEN_SOURCE +#define _XOPEN_SOURCE 700 #endif /* @@ -305,12 +338,15 @@ extern "C" { * with the value of 4 indicates an XPG4 or XPG4v2 (UNIX 95) application. * _XOPEN_VERSION defined with a value of 500 indicates an XPG5 (UNIX 98) * application and with a value of 600 indicates an XPG6 (UNIX 03) - * application. The appropriate version is determined by the use of the + * application and with a value of 700 indicates an XPG7 (UNIX 08). + * The appropriate version is determined by the use of the * feature test macros described earlier. The value of _XOPEN_VERSION * defaults to 3 otherwise indicating support for XPG3 applications. */ #ifndef _XOPEN_VERSION -#ifdef _XPG6 +#if defined(_XPG7) +#define _XOPEN_VERSION 700 +#elif defined(_XPG6) #define _XOPEN_VERSION 600 #elif defined(_XPG5) #define _XOPEN_VERSION 500 diff --git a/sys/cddl/contrib/opensolaris/uts/common/sys/processor.h b/sys/cddl/contrib/opensolaris/uts/common/sys/processor.h index c0fe6e2..ec4b747 100644 --- a/sys/cddl/contrib/opensolaris/uts/common/sys/processor.h +++ b/sys/cddl/contrib/opensolaris/uts/common/sys/processor.h @@ -25,6 +25,8 @@ */ /* + * Copyright 2014 Garrett D'Amore <garrett@damore.org> + * * Copyright 2008 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ @@ -112,7 +114,6 @@ typedef struct { * User-level system call interface prototypes */ #ifndef _KERNEL -#ifdef __STDC__ extern int p_online(processorid_t processorid, int flag); extern int processor_info(processorid_t processorid, @@ -122,16 +123,6 @@ extern int processor_bind(idtype_t idtype, id_t id, extern processorid_t getcpuid(void); extern lgrpid_t gethomelgroup(void); -#else - -extern int p_online(); -extern int processor_info(); -extern int processor_bind(); -extern processorid_t getcpuid(); -extern lgrpid_t gethomelgroup(); - -#endif /* __STDC__ */ - #else /* _KERNEL */ /* diff --git a/sys/cddl/contrib/opensolaris/uts/sparc/dtrace/fasttrap_isa.c b/sys/cddl/contrib/opensolaris/uts/sparc/dtrace/fasttrap_isa.c index f3cf665..43315a0 100644 --- a/sys/cddl/contrib/opensolaris/uts/sparc/dtrace/fasttrap_isa.c +++ b/sys/cddl/contrib/opensolaris/uts/sparc/dtrace/fasttrap_isa.c @@ -24,8 +24,6 @@ * Use is subject to license terms. */ -#pragma ident "%Z%%M% %I% %E% SMI" - #include <sys/fasttrap_isa.h> #include <sys/fasttrap_impl.h> #include <sys/dtrace.h> @@ -1410,7 +1408,7 @@ fasttrap_getreg(struct regs *rp, uint_t reg) value = dtrace_getreg_win(reg, 1); dtrace_interrupt_enable(cookie); - atomic_add_64(&fasttrap_getreg_fast_cnt, 1); + atomic_inc_64(&fasttrap_getreg_fast_cnt); return (value); } @@ -1435,7 +1433,7 @@ fasttrap_getreg(struct regs *rp, uint_t reg) if ((long)mpcb->mpcb_spbuf[i] != rp->r_sp) continue; - atomic_add_64(&fasttrap_getreg_mpcb_cnt, 1); + atomic_inc_64(&fasttrap_getreg_mpcb_cnt); return (rwin[i].rw_local[reg - 16]); } while (i > 0); } @@ -1455,7 +1453,7 @@ fasttrap_getreg(struct regs *rp, uint_t reg) if ((long)mpcb->mpcb_spbuf[i] != rp->r_sp) continue; - atomic_add_64(&fasttrap_getreg_mpcb_cnt, 1); + atomic_inc_64(&fasttrap_getreg_mpcb_cnt); return (rwin[i].rw_local[reg - 16]); } while (i > 0); } @@ -1466,7 +1464,7 @@ fasttrap_getreg(struct regs *rp, uint_t reg) v32[0] = 0; } - atomic_add_64(&fasttrap_getreg_slow_cnt, 1); + atomic_inc_64(&fasttrap_getreg_slow_cnt); return (value); err: @@ -1505,7 +1503,7 @@ fasttrap_putreg(struct regs *rp, uint_t reg, ulong_t value) if (dtrace_getotherwin() > 0) { dtrace_putreg_win(reg, value); dtrace_interrupt_enable(cookie); - atomic_add_64(&fasttrap_putreg_fast_cnt, 1); + atomic_inc_64(&fasttrap_putreg_fast_cnt); return; } dtrace_interrupt_enable(cookie); @@ -1536,7 +1534,7 @@ fasttrap_putreg(struct regs *rp, uint_t reg, ulong_t value) continue; rwin[i].rw_local[reg - 16] = value; - atomic_add_64(&fasttrap_putreg_mpcb_cnt, 1); + atomic_inc_64(&fasttrap_putreg_mpcb_cnt); return; } while (i > 0); } @@ -1549,7 +1547,7 @@ fasttrap_putreg(struct regs *rp, uint_t reg, ulong_t value) rwin[mpcb->mpcb_wbcnt].rw_local[reg - 16] = value; mpcb->mpcb_spbuf[mpcb->mpcb_wbcnt] = (caddr_t)rp->r_sp; mpcb->mpcb_wbcnt++; - atomic_add_64(&fasttrap_putreg_mpcb_cnt, 1); + atomic_inc_64(&fasttrap_putreg_mpcb_cnt); return; } } else { @@ -1567,7 +1565,7 @@ fasttrap_putreg(struct regs *rp, uint_t reg, ulong_t value) continue; rwin[i].rw_local[reg - 16] = v32; - atomic_add_64(&fasttrap_putreg_mpcb_cnt, 1); + atomic_inc_64(&fasttrap_putreg_mpcb_cnt); return; } while (i > 0); } @@ -1580,12 +1578,12 @@ fasttrap_putreg(struct regs *rp, uint_t reg, ulong_t value) rwin[mpcb->mpcb_wbcnt].rw_local[reg - 16] = v32; mpcb->mpcb_spbuf[mpcb->mpcb_wbcnt] = (caddr_t)rp->r_sp; mpcb->mpcb_wbcnt++; - atomic_add_64(&fasttrap_putreg_mpcb_cnt, 1); + atomic_inc_64(&fasttrap_putreg_mpcb_cnt); return; } } - atomic_add_64(&fasttrap_putreg_slow_cnt, 1); + atomic_inc_64(&fasttrap_putreg_slow_cnt); return; err: diff --git a/sys/cddl/dev/fbt/fbt.c b/sys/cddl/dev/fbt/fbt.c index a4bffa2..894eb62 100644 --- a/sys/cddl/dev/fbt/fbt.c +++ b/sys/cddl/dev/fbt/fbt.c @@ -61,25 +61,13 @@ #include <sys/dtrace.h> #include <sys/dtrace_bsd.h> -static MALLOC_DEFINE(M_FBT, "fbt", "Function Boundary Tracing"); - -#define FBT_PUSHL_EBP 0x55 -#define FBT_MOVL_ESP_EBP0_V0 0x8b -#define FBT_MOVL_ESP_EBP1_V0 0xec -#define FBT_MOVL_ESP_EBP0_V1 0x89 -#define FBT_MOVL_ESP_EBP1_V1 0xe5 -#define FBT_REX_RSP_RBP 0x48 - -#define FBT_POPL_EBP 0x5d -#define FBT_RET 0xc3 -#define FBT_RET_IMM16 0xc2 -#define FBT_LEAVE 0xc9 - -#ifdef __amd64__ -#define FBT_PATCHVAL 0xcc -#else -#define FBT_PATCHVAL 0xf0 -#endif +#include "fbt.h" + +MALLOC_DEFINE(M_FBT, "fbt", "Function Boundary Tracing"); + +dtrace_provider_id_t fbt_id; +fbt_probe_t **fbt_probetab; +int fbt_probetab_mask; static d_open_t fbt_open; static int fbt_unload(void); @@ -92,11 +80,6 @@ static void fbt_load(void *); static void fbt_suspend(void *, dtrace_id_t, void *); static void fbt_resume(void *, dtrace_id_t, void *); -#define FBT_ENTRY "entry" -#define FBT_RETURN "return" -#define FBT_ADDR2NDX(addr) ((((uintptr_t)(addr)) >> 4) & fbt_probetab_mask) -#define FBT_PROBETAB_SIZE 0x8000 /* 32k entries -- 128K total */ - static struct cdevsw fbt_cdevsw = { .d_version = D_VERSION, .d_open = fbt_open, @@ -124,28 +107,8 @@ static dtrace_pops_t fbt_pops = { fbt_destroy }; -typedef struct fbt_probe { - struct fbt_probe *fbtp_hashnext; - uint8_t *fbtp_patchpoint; - int8_t fbtp_rval; - uint8_t fbtp_patchval; - uint8_t fbtp_savedval; - uintptr_t fbtp_roffset; - dtrace_id_t fbtp_id; - const char *fbtp_name; - modctl_t *fbtp_ctl; - int fbtp_loadcnt; - int fbtp_primary; - int fbtp_invop_cnt; - int fbtp_symindx; - struct fbt_probe *fbtp_next; -} fbt_probe_t; - static struct cdev *fbt_cdev; -static dtrace_provider_id_t fbt_id; -static fbt_probe_t **fbt_probetab; static int fbt_probetab_size; -static int fbt_probetab_mask; static int fbt_verbose = 0; static void @@ -162,257 +125,6 @@ fbt_doubletrap(void) } } -static int -fbt_invop(uintptr_t addr, uintptr_t *stack, uintptr_t rval) -{ - solaris_cpu_t *cpu = &solaris_cpu[curcpu]; - uintptr_t stack0, stack1, stack2, stack3, stack4; - fbt_probe_t *fbt = fbt_probetab[FBT_ADDR2NDX(addr)]; - - for (; fbt != NULL; fbt = fbt->fbtp_hashnext) { - if ((uintptr_t)fbt->fbtp_patchpoint == addr) { - fbt->fbtp_invop_cnt++; - if (fbt->fbtp_roffset == 0) { - int i = 0; - /* - * When accessing the arguments on the stack, - * we must protect against accessing beyond - * the stack. We can safely set NOFAULT here - * -- we know that interrupts are already - * disabled. - */ - DTRACE_CPUFLAG_SET(CPU_DTRACE_NOFAULT); - cpu->cpu_dtrace_caller = stack[i++]; - stack0 = stack[i++]; - stack1 = stack[i++]; - stack2 = stack[i++]; - stack3 = stack[i++]; - stack4 = stack[i++]; - DTRACE_CPUFLAG_CLEAR(CPU_DTRACE_NOFAULT | - CPU_DTRACE_BADADDR); - - dtrace_probe(fbt->fbtp_id, stack0, stack1, - stack2, stack3, stack4); - - cpu->cpu_dtrace_caller = 0; - } else { -#ifdef __amd64__ - /* - * On amd64, we instrument the ret, not the - * leave. We therefore need to set the caller - * to assure that the top frame of a stack() - * action is correct. - */ - DTRACE_CPUFLAG_SET(CPU_DTRACE_NOFAULT); - cpu->cpu_dtrace_caller = stack[0]; - DTRACE_CPUFLAG_CLEAR(CPU_DTRACE_NOFAULT | - CPU_DTRACE_BADADDR); -#endif - - dtrace_probe(fbt->fbtp_id, fbt->fbtp_roffset, - rval, 0, 0, 0); - cpu->cpu_dtrace_caller = 0; - } - - return (fbt->fbtp_rval); - } - } - - return (0); -} - -static int -fbt_provide_module_function(linker_file_t lf, int symindx, - linker_symval_t *symval, void *opaque) -{ - char *modname = opaque; - const char *name = symval->name; - fbt_probe_t *fbt, *retfbt; - int j; - int size; - u_int8_t *instr, *limit; - - if ((strncmp(name, "dtrace_", 7) == 0 && - strncmp(name, "dtrace_safe_", 12) != 0) || - strcmp(name, "trap_check") == 0) { - /* - * Anything beginning with "dtrace_" may be called - * from probe context unless it explicitly indicates - * that it won't be called from probe context by - * using the prefix "dtrace_safe_". - * - * Additionally, we avoid instrumenting trap_check() to avoid - * the possibility of generating a fault in probe context before - * DTrace's fault handler is called. - */ - return (0); - } - - if (name[0] == '_' && name[1] == '_') - return (0); - - size = symval->size; - - instr = (u_int8_t *) symval->value; - limit = (u_int8_t *) symval->value + symval->size; - -#ifdef __amd64__ - while (instr < limit) { - if (*instr == FBT_PUSHL_EBP) - break; - - if ((size = dtrace_instr_size(instr)) <= 0) - break; - - instr += size; - } - - if (instr >= limit || *instr != FBT_PUSHL_EBP) { - /* - * We either don't save the frame pointer in this - * function, or we ran into some disassembly - * screw-up. Either way, we bail. - */ - return (0); - } -#else - if (instr[0] != FBT_PUSHL_EBP) - return (0); - - if (!(instr[1] == FBT_MOVL_ESP_EBP0_V0 && - instr[2] == FBT_MOVL_ESP_EBP1_V0) && - !(instr[1] == FBT_MOVL_ESP_EBP0_V1 && - instr[2] == FBT_MOVL_ESP_EBP1_V1)) - return (0); -#endif - - fbt = malloc(sizeof (fbt_probe_t), M_FBT, M_WAITOK | M_ZERO); - fbt->fbtp_name = name; - fbt->fbtp_id = dtrace_probe_create(fbt_id, modname, - name, FBT_ENTRY, 3, fbt); - fbt->fbtp_patchpoint = instr; - fbt->fbtp_ctl = lf; - fbt->fbtp_loadcnt = lf->loadcnt; - fbt->fbtp_rval = DTRACE_INVOP_PUSHL_EBP; - fbt->fbtp_savedval = *instr; - fbt->fbtp_patchval = FBT_PATCHVAL; - fbt->fbtp_symindx = symindx; - - fbt->fbtp_hashnext = fbt_probetab[FBT_ADDR2NDX(instr)]; - fbt_probetab[FBT_ADDR2NDX(instr)] = fbt; - - lf->fbt_nentries++; - - retfbt = NULL; -again: - if (instr >= limit) - return (0); - - /* - * If this disassembly fails, then we've likely walked off into - * a jump table or some other unsuitable area. Bail out of the - * disassembly now. - */ - if ((size = dtrace_instr_size(instr)) <= 0) - return (0); - -#ifdef __amd64__ - /* - * We only instrument "ret" on amd64 -- we don't yet instrument - * ret imm16, largely because the compiler doesn't seem to - * (yet) emit them in the kernel... - */ - if (*instr != FBT_RET) { - instr += size; - goto again; - } -#else - if (!(size == 1 && - (*instr == FBT_POPL_EBP || *instr == FBT_LEAVE) && - (*(instr + 1) == FBT_RET || - *(instr + 1) == FBT_RET_IMM16))) { - instr += size; - goto again; - } -#endif - - /* - * We (desperately) want to avoid erroneously instrumenting a - * jump table, especially given that our markers are pretty - * short: two bytes on x86, and just one byte on amd64. To - * determine if we're looking at a true instruction sequence - * or an inline jump table that happens to contain the same - * byte sequences, we resort to some heuristic sleeze: we - * treat this instruction as being contained within a pointer, - * and see if that pointer points to within the body of the - * function. If it does, we refuse to instrument it. - */ - for (j = 0; j < sizeof (uintptr_t); j++) { - caddr_t check = (caddr_t) instr - j; - uint8_t *ptr; - - if (check < symval->value) - break; - - if (check + sizeof (caddr_t) > (caddr_t)limit) - continue; - - ptr = *(uint8_t **)check; - - if (ptr >= (uint8_t *) symval->value && ptr < limit) { - instr += size; - goto again; - } - } - - /* - * We have a winner! - */ - fbt = malloc(sizeof (fbt_probe_t), M_FBT, M_WAITOK | M_ZERO); - fbt->fbtp_name = name; - - if (retfbt == NULL) { - fbt->fbtp_id = dtrace_probe_create(fbt_id, modname, - name, FBT_RETURN, 3, fbt); - } else { - retfbt->fbtp_next = fbt; - fbt->fbtp_id = retfbt->fbtp_id; - } - - retfbt = fbt; - fbt->fbtp_patchpoint = instr; - fbt->fbtp_ctl = lf; - fbt->fbtp_loadcnt = lf->loadcnt; - fbt->fbtp_symindx = symindx; - -#ifndef __amd64__ - if (*instr == FBT_POPL_EBP) { - fbt->fbtp_rval = DTRACE_INVOP_POPL_EBP; - } else { - ASSERT(*instr == FBT_LEAVE); - fbt->fbtp_rval = DTRACE_INVOP_LEAVE; - } - fbt->fbtp_roffset = - (uintptr_t)(instr - (uint8_t *) symval->value) + 1; - -#else - ASSERT(*instr == FBT_RET); - fbt->fbtp_rval = DTRACE_INVOP_RET; - fbt->fbtp_roffset = - (uintptr_t)(instr - (uint8_t *) symval->value); -#endif - - fbt->fbtp_savedval = *instr; - fbt->fbtp_patchval = FBT_PATCHVAL; - fbt->fbtp_hashnext = fbt_probetab[FBT_ADDR2NDX(instr)]; - fbt_probetab[FBT_ADDR2NDX(instr)] = fbt; - - lf->fbt_nentries++; - - instr += size; - goto again; -} - static void fbt_provide_module(void *arg, modctl_t *lf) { @@ -524,9 +236,8 @@ fbt_enable(void *arg, dtrace_id_t id, void *parg) return; } - for (; fbt != NULL; fbt = fbt->fbtp_next) { - *fbt->fbtp_patchpoint = fbt->fbtp_patchval; - } + for (; fbt != NULL; fbt = fbt->fbtp_next) + fbt_patch_tracepoint(fbt, fbt->fbtp_patchval); } static void @@ -542,7 +253,7 @@ fbt_disable(void *arg, dtrace_id_t id, void *parg) return; for (; fbt != NULL; fbt = fbt->fbtp_next) - *fbt->fbtp_patchpoint = fbt->fbtp_savedval; + fbt_patch_tracepoint(fbt, fbt->fbtp_patchval); } static void @@ -557,7 +268,7 @@ fbt_suspend(void *arg, dtrace_id_t id, void *parg) return; for (; fbt != NULL; fbt = fbt->fbtp_next) - *fbt->fbtp_patchpoint = fbt->fbtp_savedval; + fbt_patch_tracepoint(fbt, fbt->fbtp_patchval); } static void @@ -572,7 +283,7 @@ fbt_resume(void *arg, dtrace_id_t id, void *parg) return; for (; fbt != NULL; fbt = fbt->fbtp_next) - *fbt->fbtp_patchpoint = fbt->fbtp_patchval; + fbt_patch_tracepoint(fbt, fbt->fbtp_patchval); } static int diff --git a/sys/cddl/dev/fbt/fbt.h b/sys/cddl/dev/fbt/fbt.h new file mode 100644 index 0000000..1522b40 --- /dev/null +++ b/sys/cddl/dev/fbt/fbt.h @@ -0,0 +1,73 @@ +/* + * CDDL HEADER START + * + * The contents of this file are subject to the terms of the + * Common Development and Distribution License (the "License"). + * You may not use this file except in compliance with the License. + * + * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE + * or http://www.opensolaris.org/os/licensing. + * See the License for the specific language governing permissions + * and limitations under the License. + * + * When distributing Covered Code, include this CDDL HEADER in each + * file and include the License file at usr/src/OPENSOLARIS.LICENSE. + * If applicable, add the following below this CDDL HEADER, with the + * fields enclosed by brackets "[]" replaced with your own identifying + * information: Portions Copyright [yyyy] [name of copyright owner] + * + * CDDL HEADER END + * + * Portions Copyright 2006-2008 John Birrell jb@freebsd.org + * + * $FreeBSD$ + * + */ + +/* + * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Use is subject to license terms. + */ + +#ifndef _FBT_H_ +#define _FBT_H_ + +#include "fbt_isa.h" + +typedef struct fbt_probe { + struct fbt_probe *fbtp_hashnext; + fbt_patchval_t *fbtp_patchpoint; + int8_t fbtp_rval; + fbt_patchval_t fbtp_patchval; + fbt_patchval_t fbtp_savedval; + uintptr_t fbtp_roffset; + dtrace_id_t fbtp_id; + const char *fbtp_name; + modctl_t *fbtp_ctl; + int fbtp_loadcnt; + int fbtp_primary; + int fbtp_invop_cnt; + int fbtp_symindx; + struct fbt_probe *fbtp_next; +} fbt_probe_t; + +struct linker_file; +struct linker_symval; + +int fbt_invop(uintptr_t, uintptr_t *, uintptr_t); +void fbt_patch_tracepoint(fbt_probe_t *, fbt_patchval_t); +int fbt_provide_module_function(struct linker_file *, int, + struct linker_symval *, void *); + +extern dtrace_provider_id_t fbt_id; +extern fbt_probe_t **fbt_probetab; +extern int fbt_probetab_mask; + +#define FBT_ADDR2NDX(addr) ((((uintptr_t)(addr)) >> 4) & fbt_probetab_mask) +#define FBT_PROBETAB_SIZE 0x8000 /* 32k entries -- 128K total */ + +#ifdef MALLOC_DECLARE +MALLOC_DECLARE(M_FBT); +#endif + +#endif diff --git a/sys/cddl/dev/fbt/fbt_powerpc.c b/sys/cddl/dev/fbt/fbt_powerpc.c deleted file mode 100644 index 88b74dd..0000000 --- a/sys/cddl/dev/fbt/fbt_powerpc.c +++ /dev/null @@ -1,1351 +0,0 @@ -/* - * CDDL HEADER START - * - * The contents of this file are subject to the terms of the - * Common Development and Distribution License (the "License"). - * You may not use this file except in compliance with the License. - * - * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE - * or http://www.opensolaris.org/os/licensing. - * See the License for the specific language governing permissions - * and limitations under the License. - * - * When distributing Covered Code, include this CDDL HEADER in each - * file and include the License file at usr/src/OPENSOLARIS.LICENSE. - * If applicable, add the following below this CDDL HEADER, with the - * fields enclosed by brackets "[]" replaced with your own identifying - * information: Portions Copyright [yyyy] [name of copyright owner] - * - * CDDL HEADER END - * - * Portions Copyright 2006-2008 John Birrell jb@freebsd.org - * Portions Copyright 2013 Justin Hibbits jhibbits@freebsd.org - * - * $FreeBSD$ - * - */ - -/* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. - * Use is subject to license terms. - */ - -#include <sys/cdefs.h> -#include <sys/param.h> -#include <sys/systm.h> -#include <sys/conf.h> -#include <sys/cpuvar.h> -#include <sys/fcntl.h> -#include <sys/filio.h> -#include <sys/kdb.h> -#include <sys/kernel.h> -#include <sys/kmem.h> -#include <sys/kthread.h> -#include <sys/limits.h> -#include <sys/linker.h> -#include <sys/lock.h> -#include <sys/malloc.h> -#include <sys/module.h> -#include <sys/mutex.h> -#include <sys/pcpu.h> -#include <sys/poll.h> -#include <sys/proc.h> -#include <sys/selinfo.h> -#include <sys/smp.h> -#include <sys/syscall.h> -#include <sys/sysent.h> -#include <sys/sysproto.h> -#include <sys/uio.h> -#include <sys/unistd.h> -#include <machine/md_var.h> -#include <machine/stdarg.h> - -#include <sys/dtrace.h> -#include <sys/dtrace_bsd.h> - -static MALLOC_DEFINE(M_FBT, "fbt", "Function Boundary Tracing"); - -#define FBT_PATCHVAL 0x7c810808 -#define FBT_MFLR_R0 0x7c0802a6 -#define FBT_MTLR_R0 0x7c0803a6 -#define FBT_BLR 0x4e800020 -#define FBT_BCTR 0x4e800030 -#define FBT_BRANCH 0x48000000 -#define FBT_BR_MASK 0x03fffffc -#define FBT_IS_JUMP(instr) ((instr & ~FBT_BR_MASK) == FBT_BRANCH) - -static d_open_t fbt_open; -static int fbt_unload(void); -static void fbt_getargdesc(void *, dtrace_id_t, void *, dtrace_argdesc_t *); -static void fbt_provide_module(void *, modctl_t *); -static void fbt_destroy(void *, dtrace_id_t, void *); -static void fbt_enable(void *, dtrace_id_t, void *); -static void fbt_disable(void *, dtrace_id_t, void *); -static void fbt_load(void *); -static void fbt_suspend(void *, dtrace_id_t, void *); -static void fbt_resume(void *, dtrace_id_t, void *); - -#define FBT_ENTRY "entry" -#define FBT_RETURN "return" -#define FBT_ADDR2NDX(addr) ((((uintptr_t)(addr)) >> 4) & fbt_probetab_mask) -#define FBT_PROBETAB_SIZE 0x8000 /* 32k entries -- 128K total */ - -static struct cdevsw fbt_cdevsw = { - .d_version = D_VERSION, - .d_open = fbt_open, - .d_name = "fbt", -}; - -static dtrace_pattr_t fbt_attr = { -{ DTRACE_STABILITY_EVOLVING, DTRACE_STABILITY_EVOLVING, DTRACE_CLASS_COMMON }, -{ DTRACE_STABILITY_PRIVATE, DTRACE_STABILITY_PRIVATE, DTRACE_CLASS_UNKNOWN }, -{ DTRACE_STABILITY_PRIVATE, DTRACE_STABILITY_PRIVATE, DTRACE_CLASS_ISA }, -{ DTRACE_STABILITY_EVOLVING, DTRACE_STABILITY_EVOLVING, DTRACE_CLASS_COMMON }, -{ DTRACE_STABILITY_PRIVATE, DTRACE_STABILITY_PRIVATE, DTRACE_CLASS_ISA }, -}; - -static dtrace_pops_t fbt_pops = { - NULL, - fbt_provide_module, - fbt_enable, - fbt_disable, - fbt_suspend, - fbt_resume, - fbt_getargdesc, - NULL, - NULL, - fbt_destroy -}; - -typedef struct fbt_probe { - struct fbt_probe *fbtp_hashnext; - uint32_t *fbtp_patchpoint; - int8_t fbtp_rval; - uint32_t fbtp_patchval; - uint32_t fbtp_savedval; - uintptr_t fbtp_roffset; - dtrace_id_t fbtp_id; - const char *fbtp_name; - modctl_t *fbtp_ctl; - int fbtp_loadcnt; - int fbtp_primary; - int fbtp_invop_cnt; - int fbtp_symindx; - struct fbt_probe *fbtp_next; -} fbt_probe_t; - -static struct cdev *fbt_cdev; -static dtrace_provider_id_t fbt_id; -static fbt_probe_t **fbt_probetab; -static int fbt_probetab_size; -static int fbt_probetab_mask; -static int fbt_verbose = 0; - -static int -fbt_invop(uintptr_t addr, uintptr_t *stack, uintptr_t rval) -{ - struct trapframe *frame = (struct trapframe *)stack; - solaris_cpu_t *cpu = &solaris_cpu[curcpu]; - fbt_probe_t *fbt = fbt_probetab[FBT_ADDR2NDX(addr)]; - uintptr_t tmp; - - for (; fbt != NULL; fbt = fbt->fbtp_hashnext) { - if ((uintptr_t)fbt->fbtp_patchpoint == addr) { - fbt->fbtp_invop_cnt++; - if (fbt->fbtp_roffset == 0) { - cpu->cpu_dtrace_caller = addr; - - dtrace_probe(fbt->fbtp_id, frame->fixreg[3], - frame->fixreg[4], frame->fixreg[5], - frame->fixreg[6], frame->fixreg[7]); - - cpu->cpu_dtrace_caller = 0; - } else { - - dtrace_probe(fbt->fbtp_id, fbt->fbtp_roffset, - rval, 0, 0, 0); - /* - * The caller doesn't have the fbt item, so - * fixup tail calls here. - */ - if (fbt->fbtp_rval == DTRACE_INVOP_JUMP) { - frame->srr0 = (uintptr_t)fbt->fbtp_patchpoint; - tmp = fbt->fbtp_savedval & FBT_BR_MASK; - /* Sign extend. */ - if (tmp & 0x02000000) -#ifdef __powerpc64__ - tmp |= 0xfffffffffc000000ULL; -#else - tmp |= 0xfc000000UL; -#endif - frame->srr0 += tmp; - } - cpu->cpu_dtrace_caller = 0; - } - - return (fbt->fbtp_rval); - } - } - - return (0); -} - -static int -fbt_provide_module_function(linker_file_t lf, int symindx, - linker_symval_t *symval, void *opaque) -{ - char *modname = opaque; - const char *name = symval->name; - fbt_probe_t *fbt, *retfbt; - int j; - u_int32_t *instr, *limit; - - /* PowerPC64 uses '.' prefixes on symbol names, ignore it. */ - if (name[0] == '.') - name++; - - if (strncmp(name, "dtrace_", 7) == 0 && - strncmp(name, "dtrace_safe_", 12) != 0) { - /* - * Anything beginning with "dtrace_" may be called - * from probe context unless it explicitly indicates - * that it won't be called from probe context by - * using the prefix "dtrace_safe_". - */ - return (0); - } - - if (name[0] == '_' && name[1] == '_') - return (0); - - instr = (u_int32_t *) symval->value; - limit = (u_int32_t *) (symval->value + symval->size); - - for (; instr < limit; instr++) - if (*instr == FBT_MFLR_R0) - break; - - if (*instr != FBT_MFLR_R0) - return (0); - - fbt = malloc(sizeof (fbt_probe_t), M_FBT, M_WAITOK | M_ZERO); - fbt->fbtp_name = name; - fbt->fbtp_id = dtrace_probe_create(fbt_id, modname, - name, FBT_ENTRY, 3, fbt); - fbt->fbtp_patchpoint = instr; - fbt->fbtp_ctl = lf; - fbt->fbtp_loadcnt = lf->loadcnt; - fbt->fbtp_savedval = *instr; - fbt->fbtp_patchval = FBT_PATCHVAL; - fbt->fbtp_rval = DTRACE_INVOP_MFLR_R0; - fbt->fbtp_symindx = symindx; - - fbt->fbtp_hashnext = fbt_probetab[FBT_ADDR2NDX(instr)]; - fbt_probetab[FBT_ADDR2NDX(instr)] = fbt; - - lf->fbt_nentries++; - - retfbt = NULL; -again: - if (instr >= limit) - return (0); - - /* - * We (desperately) want to avoid erroneously instrumenting a - * jump table To determine if we're looking at a true instruction - * sequence or an inline jump table that happens to contain the same - * byte sequences, we resort to some heuristic sleeze: we treat this - * instruction as being contained within a pointer, and see if that - * pointer points to within the body of the function. If it does, we - * refuse to instrument it. - */ - { - uint32_t *ptr; - - ptr = *(uint32_t **)instr; - - if (ptr >= (uint32_t *) symval->value && ptr < limit) { - instr++; - goto again; - } - } - - if (*instr != FBT_MTLR_R0) { - instr++; - goto again; - } - - instr++; - - for (j = 0; j < 12 && instr < limit; j++, instr++) { - if ((*instr == FBT_BCTR) || (*instr == FBT_BLR) || - FBT_IS_JUMP(*instr)) - break; - } - - if (!(*instr == FBT_BCTR || *instr == FBT_BLR || FBT_IS_JUMP(*instr))) - goto again; - - /* - * We have a winner! - */ - fbt = malloc(sizeof (fbt_probe_t), M_FBT, M_WAITOK | M_ZERO); - fbt->fbtp_name = name; - - if (retfbt == NULL) { - fbt->fbtp_id = dtrace_probe_create(fbt_id, modname, - name, FBT_RETURN, 5, fbt); - } else { - retfbt->fbtp_next = fbt; - fbt->fbtp_id = retfbt->fbtp_id; - } - - retfbt = fbt; - fbt->fbtp_patchpoint = instr; - fbt->fbtp_ctl = lf; - fbt->fbtp_loadcnt = lf->loadcnt; - fbt->fbtp_symindx = symindx; - - if (*instr == FBT_BCTR) - fbt->fbtp_rval = DTRACE_INVOP_BCTR; - else if (*instr == FBT_BLR) - fbt->fbtp_rval = DTRACE_INVOP_RET; - else - fbt->fbtp_rval = DTRACE_INVOP_JUMP; - - fbt->fbtp_savedval = *instr; - fbt->fbtp_patchval = FBT_PATCHVAL; - fbt->fbtp_hashnext = fbt_probetab[FBT_ADDR2NDX(instr)]; - fbt_probetab[FBT_ADDR2NDX(instr)] = fbt; - - lf->fbt_nentries++; - - instr += 4; - goto again; -} - -static void -fbt_provide_module(void *arg, modctl_t *lf) -{ - char modname[MAXPATHLEN]; - int i; - size_t len; - - strlcpy(modname, lf->filename, sizeof(modname)); - len = strlen(modname); - if (len > 3 && strcmp(modname + len - 3, ".ko") == 0) - modname[len - 3] = '\0'; - - /* - * Employees of dtrace and their families are ineligible. Void - * where prohibited. - */ - if (strcmp(modname, "dtrace") == 0) - return; - - /* - * The cyclic timer subsystem can be built as a module and DTrace - * depends on that, so it is ineligible too. - */ - if (strcmp(modname, "cyclic") == 0) - return; - - /* - * To register with DTrace, a module must list 'dtrace' as a - * dependency in order for the kernel linker to resolve - * symbols like dtrace_register(). All modules with such a - * dependency are ineligible for FBT tracing. - */ - for (i = 0; i < lf->ndeps; i++) - if (strncmp(lf->deps[i]->filename, "dtrace", 6) == 0) - return; - - if (lf->fbt_nentries) { - /* - * This module has some FBT entries allocated; we're afraid - * to screw with it. - */ - return; - } - - /* - * List the functions in the module and the symbol values. - */ - (void) linker_file_function_listall(lf, fbt_provide_module_function, modname); -} - -static void -fbt_destroy(void *arg, dtrace_id_t id, void *parg) -{ - fbt_probe_t *fbt = parg, *next, *hash, *last; - modctl_t *ctl; - int ndx; - - do { - ctl = fbt->fbtp_ctl; - - ctl->fbt_nentries--; - - /* - * Now we need to remove this probe from the fbt_probetab. - */ - ndx = FBT_ADDR2NDX(fbt->fbtp_patchpoint); - last = NULL; - hash = fbt_probetab[ndx]; - - while (hash != fbt) { - ASSERT(hash != NULL); - last = hash; - hash = hash->fbtp_hashnext; - } - - if (last != NULL) { - last->fbtp_hashnext = fbt->fbtp_hashnext; - } else { - fbt_probetab[ndx] = fbt->fbtp_hashnext; - } - - next = fbt->fbtp_next; - free(fbt, M_FBT); - - fbt = next; - } while (fbt != NULL); -} - -static void -fbt_enable(void *arg, dtrace_id_t id, void *parg) -{ - fbt_probe_t *fbt = parg; - modctl_t *ctl = fbt->fbtp_ctl; - - ctl->nenabled++; - - /* - * Now check that our modctl has the expected load count. If it - * doesn't, this module must have been unloaded and reloaded -- and - * we're not going to touch it. - */ - if (ctl->loadcnt != fbt->fbtp_loadcnt) { - if (fbt_verbose) { - printf("fbt is failing for probe %s " - "(module %s reloaded)", - fbt->fbtp_name, ctl->filename); - } - - return; - } - - for (; fbt != NULL; fbt = fbt->fbtp_next) { - *fbt->fbtp_patchpoint = fbt->fbtp_patchval; - __syncicache(fbt->fbtp_patchpoint, 4); - } -} - -static void -fbt_disable(void *arg, dtrace_id_t id, void *parg) -{ - fbt_probe_t *fbt = parg; - modctl_t *ctl = fbt->fbtp_ctl; - - ASSERT(ctl->nenabled > 0); - ctl->nenabled--; - - if ((ctl->loadcnt != fbt->fbtp_loadcnt)) - return; - - for (; fbt != NULL; fbt = fbt->fbtp_next) { - *fbt->fbtp_patchpoint = fbt->fbtp_savedval; - __syncicache(fbt->fbtp_patchpoint, 4); - } -} - -static void -fbt_suspend(void *arg, dtrace_id_t id, void *parg) -{ - fbt_probe_t *fbt = parg; - modctl_t *ctl = fbt->fbtp_ctl; - - ASSERT(ctl->nenabled > 0); - - if ((ctl->loadcnt != fbt->fbtp_loadcnt)) - return; - - for (; fbt != NULL; fbt = fbt->fbtp_next) { - *fbt->fbtp_patchpoint = fbt->fbtp_savedval; - __syncicache(fbt->fbtp_patchpoint, 4); - } -} - -static void -fbt_resume(void *arg, dtrace_id_t id, void *parg) -{ - fbt_probe_t *fbt = parg; - modctl_t *ctl = fbt->fbtp_ctl; - - ASSERT(ctl->nenabled > 0); - - if ((ctl->loadcnt != fbt->fbtp_loadcnt)) - return; - - for (; fbt != NULL; fbt = fbt->fbtp_next) { - *fbt->fbtp_patchpoint = fbt->fbtp_patchval; - __syncicache(fbt->fbtp_patchpoint, 4); - } -} - -static int -fbt_ctfoff_init(modctl_t *lf, linker_ctf_t *lc) -{ - const Elf_Sym *symp = lc->symtab;; - const ctf_header_t *hp = (const ctf_header_t *) lc->ctftab; - const uint8_t *ctfdata = lc->ctftab + sizeof(ctf_header_t); - int i; - uint32_t *ctfoff; - uint32_t objtoff = hp->cth_objtoff; - uint32_t funcoff = hp->cth_funcoff; - ushort_t info; - ushort_t vlen; - - /* Sanity check. */ - if (hp->cth_magic != CTF_MAGIC) { - printf("Bad magic value in CTF data of '%s'\n",lf->pathname); - return (EINVAL); - } - - if (lc->symtab == NULL) { - printf("No symbol table in '%s'\n",lf->pathname); - return (EINVAL); - } - - if ((ctfoff = malloc(sizeof(uint32_t) * lc->nsym, M_LINKER, M_WAITOK)) == NULL) - return (ENOMEM); - - *lc->ctfoffp = ctfoff; - - for (i = 0; i < lc->nsym; i++, ctfoff++, symp++) { - if (symp->st_name == 0 || symp->st_shndx == SHN_UNDEF) { - *ctfoff = 0xffffffff; - continue; - } - - switch (ELF_ST_TYPE(symp->st_info)) { - case STT_OBJECT: - if (objtoff >= hp->cth_funcoff || - (symp->st_shndx == SHN_ABS && symp->st_value == 0)) { - *ctfoff = 0xffffffff; - break; - } - - *ctfoff = objtoff; - objtoff += sizeof (ushort_t); - break; - - case STT_FUNC: - if (funcoff >= hp->cth_typeoff) { - *ctfoff = 0xffffffff; - break; - } - - *ctfoff = funcoff; - - info = *((const ushort_t *)(ctfdata + funcoff)); - vlen = CTF_INFO_VLEN(info); - - /* - * If we encounter a zero pad at the end, just skip it. - * Otherwise skip over the function and its return type - * (+2) and the argument list (vlen). - */ - if (CTF_INFO_KIND(info) == CTF_K_UNKNOWN && vlen == 0) - funcoff += sizeof (ushort_t); /* skip pad */ - else - funcoff += sizeof (ushort_t) * (vlen + 2); - break; - - default: - *ctfoff = 0xffffffff; - break; - } - } - - return (0); -} - -static ssize_t -fbt_get_ctt_size(uint8_t version, const ctf_type_t *tp, ssize_t *sizep, - ssize_t *incrementp) -{ - ssize_t size, increment; - - if (version > CTF_VERSION_1 && - tp->ctt_size == CTF_LSIZE_SENT) { - size = CTF_TYPE_LSIZE(tp); - increment = sizeof (ctf_type_t); - } else { - size = tp->ctt_size; - increment = sizeof (ctf_stype_t); - } - - if (sizep) - *sizep = size; - if (incrementp) - *incrementp = increment; - - return (size); -} - -static int -fbt_typoff_init(linker_ctf_t *lc) -{ - const ctf_header_t *hp = (const ctf_header_t *) lc->ctftab; - const ctf_type_t *tbuf; - const ctf_type_t *tend; - const ctf_type_t *tp; - const uint8_t *ctfdata = lc->ctftab + sizeof(ctf_header_t); - int ctf_typemax = 0; - uint32_t *xp; - ulong_t pop[CTF_K_MAX + 1] = { 0 }; - - - /* Sanity check. */ - if (hp->cth_magic != CTF_MAGIC) - return (EINVAL); - - tbuf = (const ctf_type_t *) (ctfdata + hp->cth_typeoff); - tend = (const ctf_type_t *) (ctfdata + hp->cth_stroff); - - int child = hp->cth_parname != 0; - - /* - * We make two passes through the entire type section. In this first - * pass, we count the number of each type and the total number of types. - */ - for (tp = tbuf; tp < tend; ctf_typemax++) { - ushort_t kind = CTF_INFO_KIND(tp->ctt_info); - ulong_t vlen = CTF_INFO_VLEN(tp->ctt_info); - ssize_t size, increment; - - size_t vbytes; - uint_t n; - - (void) fbt_get_ctt_size(hp->cth_version, tp, &size, &increment); - - switch (kind) { - case CTF_K_INTEGER: - case CTF_K_FLOAT: - vbytes = sizeof (uint_t); - break; - case CTF_K_ARRAY: - vbytes = sizeof (ctf_array_t); - break; - case CTF_K_FUNCTION: - vbytes = sizeof (ushort_t) * (vlen + (vlen & 1)); - break; - case CTF_K_STRUCT: - case CTF_K_UNION: - if (size < CTF_LSTRUCT_THRESH) { - ctf_member_t *mp = (ctf_member_t *) - ((uintptr_t)tp + increment); - - vbytes = sizeof (ctf_member_t) * vlen; - for (n = vlen; n != 0; n--, mp++) - child |= CTF_TYPE_ISCHILD(mp->ctm_type); - } else { - ctf_lmember_t *lmp = (ctf_lmember_t *) - ((uintptr_t)tp + increment); - - vbytes = sizeof (ctf_lmember_t) * vlen; - for (n = vlen; n != 0; n--, lmp++) - child |= - CTF_TYPE_ISCHILD(lmp->ctlm_type); - } - break; - case CTF_K_ENUM: - vbytes = sizeof (ctf_enum_t) * vlen; - break; - case CTF_K_FORWARD: - /* - * For forward declarations, ctt_type is the CTF_K_* - * kind for the tag, so bump that population count too. - * If ctt_type is unknown, treat the tag as a struct. - */ - if (tp->ctt_type == CTF_K_UNKNOWN || - tp->ctt_type >= CTF_K_MAX) - pop[CTF_K_STRUCT]++; - else - pop[tp->ctt_type]++; - /*FALLTHRU*/ - case CTF_K_UNKNOWN: - vbytes = 0; - break; - case CTF_K_POINTER: - case CTF_K_TYPEDEF: - case CTF_K_VOLATILE: - case CTF_K_CONST: - case CTF_K_RESTRICT: - child |= CTF_TYPE_ISCHILD(tp->ctt_type); - vbytes = 0; - break; - default: - printf("%s(%d): detected invalid CTF kind -- %u\n", __func__, __LINE__, kind); - return (EIO); - } - tp = (ctf_type_t *)((uintptr_t)tp + increment + vbytes); - pop[kind]++; - } - - /* account for a sentinel value below */ - ctf_typemax++; - *lc->typlenp = ctf_typemax; - - if ((xp = malloc(sizeof(uint32_t) * ctf_typemax, M_LINKER, M_ZERO | M_WAITOK)) == NULL) - return (ENOMEM); - - *lc->typoffp = xp; - - /* type id 0 is used as a sentinel value */ - *xp++ = 0; - - /* - * In the second pass, fill in the type offset. - */ - for (tp = tbuf; tp < tend; xp++) { - ushort_t kind = CTF_INFO_KIND(tp->ctt_info); - ulong_t vlen = CTF_INFO_VLEN(tp->ctt_info); - ssize_t size, increment; - - size_t vbytes; - uint_t n; - - (void) fbt_get_ctt_size(hp->cth_version, tp, &size, &increment); - - switch (kind) { - case CTF_K_INTEGER: - case CTF_K_FLOAT: - vbytes = sizeof (uint_t); - break; - case CTF_K_ARRAY: - vbytes = sizeof (ctf_array_t); - break; - case CTF_K_FUNCTION: - vbytes = sizeof (ushort_t) * (vlen + (vlen & 1)); - break; - case CTF_K_STRUCT: - case CTF_K_UNION: - if (size < CTF_LSTRUCT_THRESH) { - ctf_member_t *mp = (ctf_member_t *) - ((uintptr_t)tp + increment); - - vbytes = sizeof (ctf_member_t) * vlen; - for (n = vlen; n != 0; n--, mp++) - child |= CTF_TYPE_ISCHILD(mp->ctm_type); - } else { - ctf_lmember_t *lmp = (ctf_lmember_t *) - ((uintptr_t)tp + increment); - - vbytes = sizeof (ctf_lmember_t) * vlen; - for (n = vlen; n != 0; n--, lmp++) - child |= - CTF_TYPE_ISCHILD(lmp->ctlm_type); - } - break; - case CTF_K_ENUM: - vbytes = sizeof (ctf_enum_t) * vlen; - break; - case CTF_K_FORWARD: - case CTF_K_UNKNOWN: - vbytes = 0; - break; - case CTF_K_POINTER: - case CTF_K_TYPEDEF: - case CTF_K_VOLATILE: - case CTF_K_CONST: - case CTF_K_RESTRICT: - vbytes = 0; - break; - default: - printf("%s(%d): detected invalid CTF kind -- %u\n", __func__, __LINE__, kind); - return (EIO); - } - *xp = (uint32_t)((uintptr_t) tp - (uintptr_t) ctfdata); - tp = (ctf_type_t *)((uintptr_t)tp + increment + vbytes); - } - - return (0); -} - -/* - * CTF Declaration Stack - * - * In order to implement ctf_type_name(), we must convert a type graph back - * into a C type declaration. Unfortunately, a type graph represents a storage - * class ordering of the type whereas a type declaration must obey the C rules - * for operator precedence, and the two orderings are frequently in conflict. - * For example, consider these CTF type graphs and their C declarations: - * - * CTF_K_POINTER -> CTF_K_FUNCTION -> CTF_K_INTEGER : int (*)() - * CTF_K_POINTER -> CTF_K_ARRAY -> CTF_K_INTEGER : int (*)[] - * - * In each case, parentheses are used to raise operator * to higher lexical - * precedence, so the string form of the C declaration cannot be constructed by - * walking the type graph links and forming the string from left to right. - * - * The functions in this file build a set of stacks from the type graph nodes - * corresponding to the C operator precedence levels in the appropriate order. - * The code in ctf_type_name() can then iterate over the levels and nodes in - * lexical precedence order and construct the final C declaration string. - */ -typedef struct ctf_list { - struct ctf_list *l_prev; /* previous pointer or tail pointer */ - struct ctf_list *l_next; /* next pointer or head pointer */ -} ctf_list_t; - -#define ctf_list_prev(elem) ((void *)(((ctf_list_t *)(elem))->l_prev)) -#define ctf_list_next(elem) ((void *)(((ctf_list_t *)(elem))->l_next)) - -typedef enum { - CTF_PREC_BASE, - CTF_PREC_POINTER, - CTF_PREC_ARRAY, - CTF_PREC_FUNCTION, - CTF_PREC_MAX -} ctf_decl_prec_t; - -typedef struct ctf_decl_node { - ctf_list_t cd_list; /* linked list pointers */ - ctf_id_t cd_type; /* type identifier */ - uint_t cd_kind; /* type kind */ - uint_t cd_n; /* type dimension if array */ -} ctf_decl_node_t; - -typedef struct ctf_decl { - ctf_list_t cd_nodes[CTF_PREC_MAX]; /* declaration node stacks */ - int cd_order[CTF_PREC_MAX]; /* storage order of decls */ - ctf_decl_prec_t cd_qualp; /* qualifier precision */ - ctf_decl_prec_t cd_ordp; /* ordered precision */ - char *cd_buf; /* buffer for output */ - char *cd_ptr; /* buffer location */ - char *cd_end; /* buffer limit */ - size_t cd_len; /* buffer space required */ - int cd_err; /* saved error value */ -} ctf_decl_t; - -/* - * Simple doubly-linked list append routine. This implementation assumes that - * each list element contains an embedded ctf_list_t as the first member. - * An additional ctf_list_t is used to store the head (l_next) and tail - * (l_prev) pointers. The current head and tail list elements have their - * previous and next pointers set to NULL, respectively. - */ -static void -ctf_list_append(ctf_list_t *lp, void *new) -{ - ctf_list_t *p = lp->l_prev; /* p = tail list element */ - ctf_list_t *q = new; /* q = new list element */ - - lp->l_prev = q; - q->l_prev = p; - q->l_next = NULL; - - if (p != NULL) - p->l_next = q; - else - lp->l_next = q; -} - -/* - * Prepend the specified existing element to the given ctf_list_t. The - * existing pointer should be pointing at a struct with embedded ctf_list_t. - */ -static void -ctf_list_prepend(ctf_list_t *lp, void *new) -{ - ctf_list_t *p = new; /* p = new list element */ - ctf_list_t *q = lp->l_next; /* q = head list element */ - - lp->l_next = p; - p->l_prev = NULL; - p->l_next = q; - - if (q != NULL) - q->l_prev = p; - else - lp->l_prev = p; -} - -static void -ctf_decl_init(ctf_decl_t *cd, char *buf, size_t len) -{ - int i; - - bzero(cd, sizeof (ctf_decl_t)); - - for (i = CTF_PREC_BASE; i < CTF_PREC_MAX; i++) - cd->cd_order[i] = CTF_PREC_BASE - 1; - - cd->cd_qualp = CTF_PREC_BASE; - cd->cd_ordp = CTF_PREC_BASE; - - cd->cd_buf = buf; - cd->cd_ptr = buf; - cd->cd_end = buf + len; -} - -static void -ctf_decl_fini(ctf_decl_t *cd) -{ - ctf_decl_node_t *cdp, *ndp; - int i; - - for (i = CTF_PREC_BASE; i < CTF_PREC_MAX; i++) { - for (cdp = ctf_list_next(&cd->cd_nodes[i]); - cdp != NULL; cdp = ndp) { - ndp = ctf_list_next(cdp); - free(cdp, M_FBT); - } - } -} - -static const ctf_type_t * -ctf_lookup_by_id(linker_ctf_t *lc, ctf_id_t type) -{ - const ctf_type_t *tp; - uint32_t offset; - uint32_t *typoff = *lc->typoffp; - - if (type >= *lc->typlenp) { - printf("%s(%d): type %d exceeds max %ld\n",__func__,__LINE__,(int) type,*lc->typlenp); - return(NULL); - } - - /* Check if the type isn't cross-referenced. */ - if ((offset = typoff[type]) == 0) { - printf("%s(%d): type %d isn't cross referenced\n",__func__,__LINE__, (int) type); - return(NULL); - } - - tp = (const ctf_type_t *)(lc->ctftab + offset + sizeof(ctf_header_t)); - - return (tp); -} - -static void -fbt_array_info(linker_ctf_t *lc, ctf_id_t type, ctf_arinfo_t *arp) -{ - const ctf_header_t *hp = (const ctf_header_t *) lc->ctftab; - const ctf_type_t *tp; - const ctf_array_t *ap; - ssize_t increment; - - bzero(arp, sizeof(*arp)); - - if ((tp = ctf_lookup_by_id(lc, type)) == NULL) - return; - - if (CTF_INFO_KIND(tp->ctt_info) != CTF_K_ARRAY) - return; - - (void) fbt_get_ctt_size(hp->cth_version, tp, NULL, &increment); - - ap = (const ctf_array_t *)((uintptr_t)tp + increment); - arp->ctr_contents = ap->cta_contents; - arp->ctr_index = ap->cta_index; - arp->ctr_nelems = ap->cta_nelems; -} - -static const char * -ctf_strptr(linker_ctf_t *lc, int name) -{ - const ctf_header_t *hp = (const ctf_header_t *) lc->ctftab;; - const char *strp = ""; - - if (name < 0 || name >= hp->cth_strlen) - return(strp); - - strp = (const char *)(lc->ctftab + hp->cth_stroff + name + sizeof(ctf_header_t)); - - return (strp); -} - -static void -ctf_decl_push(ctf_decl_t *cd, linker_ctf_t *lc, ctf_id_t type) -{ - ctf_decl_node_t *cdp; - ctf_decl_prec_t prec; - uint_t kind, n = 1; - int is_qual = 0; - - const ctf_type_t *tp; - ctf_arinfo_t ar; - - if ((tp = ctf_lookup_by_id(lc, type)) == NULL) { - cd->cd_err = ENOENT; - return; - } - - switch (kind = CTF_INFO_KIND(tp->ctt_info)) { - case CTF_K_ARRAY: - fbt_array_info(lc, type, &ar); - ctf_decl_push(cd, lc, ar.ctr_contents); - n = ar.ctr_nelems; - prec = CTF_PREC_ARRAY; - break; - - case CTF_K_TYPEDEF: - if (ctf_strptr(lc, tp->ctt_name)[0] == '\0') { - ctf_decl_push(cd, lc, tp->ctt_type); - return; - } - prec = CTF_PREC_BASE; - break; - - case CTF_K_FUNCTION: - ctf_decl_push(cd, lc, tp->ctt_type); - prec = CTF_PREC_FUNCTION; - break; - - case CTF_K_POINTER: - ctf_decl_push(cd, lc, tp->ctt_type); - prec = CTF_PREC_POINTER; - break; - - case CTF_K_VOLATILE: - case CTF_K_CONST: - case CTF_K_RESTRICT: - ctf_decl_push(cd, lc, tp->ctt_type); - prec = cd->cd_qualp; - is_qual++; - break; - - default: - prec = CTF_PREC_BASE; - } - - if ((cdp = malloc(sizeof (ctf_decl_node_t), M_FBT, M_WAITOK)) == NULL) { - cd->cd_err = EAGAIN; - return; - } - - cdp->cd_type = type; - cdp->cd_kind = kind; - cdp->cd_n = n; - - if (ctf_list_next(&cd->cd_nodes[prec]) == NULL) - cd->cd_order[prec] = cd->cd_ordp++; - - /* - * Reset cd_qualp to the highest precedence level that we've seen so - * far that can be qualified (CTF_PREC_BASE or CTF_PREC_POINTER). - */ - if (prec > cd->cd_qualp && prec < CTF_PREC_ARRAY) - cd->cd_qualp = prec; - - /* - * C array declarators are ordered inside out so prepend them. Also by - * convention qualifiers of base types precede the type specifier (e.g. - * const int vs. int const) even though the two forms are equivalent. - */ - if (kind == CTF_K_ARRAY || (is_qual && prec == CTF_PREC_BASE)) - ctf_list_prepend(&cd->cd_nodes[prec], cdp); - else - ctf_list_append(&cd->cd_nodes[prec], cdp); -} - -static void -ctf_decl_sprintf(ctf_decl_t *cd, const char *format, ...) -{ - size_t len = (size_t)(cd->cd_end - cd->cd_ptr); - va_list ap; - size_t n; - - va_start(ap, format); - n = vsnprintf(cd->cd_ptr, len, format, ap); - va_end(ap); - - cd->cd_ptr += MIN(n, len); - cd->cd_len += n; -} - -static ssize_t -fbt_type_name(linker_ctf_t *lc, ctf_id_t type, char *buf, size_t len) -{ - ctf_decl_t cd; - ctf_decl_node_t *cdp; - ctf_decl_prec_t prec, lp, rp; - int ptr, arr; - uint_t k; - - if (lc == NULL && type == CTF_ERR) - return (-1); /* simplify caller code by permitting CTF_ERR */ - - ctf_decl_init(&cd, buf, len); - ctf_decl_push(&cd, lc, type); - - if (cd.cd_err != 0) { - ctf_decl_fini(&cd); - return (-1); - } - - /* - * If the type graph's order conflicts with lexical precedence order - * for pointers or arrays, then we need to surround the declarations at - * the corresponding lexical precedence with parentheses. This can - * result in either a parenthesized pointer (*) as in int (*)() or - * int (*)[], or in a parenthesized pointer and array as in int (*[])(). - */ - ptr = cd.cd_order[CTF_PREC_POINTER] > CTF_PREC_POINTER; - arr = cd.cd_order[CTF_PREC_ARRAY] > CTF_PREC_ARRAY; - - rp = arr ? CTF_PREC_ARRAY : ptr ? CTF_PREC_POINTER : -1; - lp = ptr ? CTF_PREC_POINTER : arr ? CTF_PREC_ARRAY : -1; - - k = CTF_K_POINTER; /* avoid leading whitespace (see below) */ - - for (prec = CTF_PREC_BASE; prec < CTF_PREC_MAX; prec++) { - for (cdp = ctf_list_next(&cd.cd_nodes[prec]); - cdp != NULL; cdp = ctf_list_next(cdp)) { - - const ctf_type_t *tp = - ctf_lookup_by_id(lc, cdp->cd_type); - const char *name = ctf_strptr(lc, tp->ctt_name); - - if (k != CTF_K_POINTER && k != CTF_K_ARRAY) - ctf_decl_sprintf(&cd, " "); - - if (lp == prec) { - ctf_decl_sprintf(&cd, "("); - lp = -1; - } - - switch (cdp->cd_kind) { - case CTF_K_INTEGER: - case CTF_K_FLOAT: - case CTF_K_TYPEDEF: - ctf_decl_sprintf(&cd, "%s", name); - break; - case CTF_K_POINTER: - ctf_decl_sprintf(&cd, "*"); - break; - case CTF_K_ARRAY: - ctf_decl_sprintf(&cd, "[%u]", cdp->cd_n); - break; - case CTF_K_FUNCTION: - ctf_decl_sprintf(&cd, "()"); - break; - case CTF_K_STRUCT: - case CTF_K_FORWARD: - ctf_decl_sprintf(&cd, "struct %s", name); - break; - case CTF_K_UNION: - ctf_decl_sprintf(&cd, "union %s", name); - break; - case CTF_K_ENUM: - ctf_decl_sprintf(&cd, "enum %s", name); - break; - case CTF_K_VOLATILE: - ctf_decl_sprintf(&cd, "volatile"); - break; - case CTF_K_CONST: - ctf_decl_sprintf(&cd, "const"); - break; - case CTF_K_RESTRICT: - ctf_decl_sprintf(&cd, "restrict"); - break; - } - - k = cdp->cd_kind; - } - - if (rp == prec) - ctf_decl_sprintf(&cd, ")"); - } - - ctf_decl_fini(&cd); - return (cd.cd_len); -} - -static void -fbt_getargdesc(void *arg __unused, dtrace_id_t id __unused, void *parg, dtrace_argdesc_t *desc) -{ - const ushort_t *dp; - fbt_probe_t *fbt = parg; - linker_ctf_t lc; - modctl_t *ctl = fbt->fbtp_ctl; - int ndx = desc->dtargd_ndx; - int symindx = fbt->fbtp_symindx; - uint32_t *ctfoff; - uint32_t offset; - ushort_t info, kind, n; - - if (fbt->fbtp_roffset != 0 && desc->dtargd_ndx == 0) { - (void) strcpy(desc->dtargd_native, "int"); - return; - } - - desc->dtargd_ndx = DTRACE_ARGNONE; - - /* Get a pointer to the CTF data and it's length. */ - if (linker_ctf_get(ctl, &lc) != 0) - /* No CTF data? Something wrong? *shrug* */ - return; - - /* Check if this module hasn't been initialised yet. */ - if (*lc.ctfoffp == NULL) { - /* - * Initialise the CTF object and function symindx to - * byte offset array. - */ - if (fbt_ctfoff_init(ctl, &lc) != 0) - return; - - /* Initialise the CTF type to byte offset array. */ - if (fbt_typoff_init(&lc) != 0) - return; - } - - ctfoff = *lc.ctfoffp; - - if (ctfoff == NULL || *lc.typoffp == NULL) - return; - - /* Check if the symbol index is out of range. */ - if (symindx >= lc.nsym) - return; - - /* Check if the symbol isn't cross-referenced. */ - if ((offset = ctfoff[symindx]) == 0xffffffff) - return; - - dp = (const ushort_t *)(lc.ctftab + offset + sizeof(ctf_header_t)); - - info = *dp++; - kind = CTF_INFO_KIND(info); - n = CTF_INFO_VLEN(info); - - if (kind == CTF_K_UNKNOWN && n == 0) { - printf("%s(%d): Unknown function!\n",__func__,__LINE__); - return; - } - - if (kind != CTF_K_FUNCTION) { - printf("%s(%d): Expected a function!\n",__func__,__LINE__); - return; - } - - if (fbt->fbtp_roffset != 0) { - /* Only return type is available for args[1] in return probe. */ - if (ndx > 1) - return; - ASSERT(ndx == 1); - } else { - /* Check if the requested argument doesn't exist. */ - if (ndx >= n) - return; - - /* Skip the return type and arguments up to the one requested. */ - dp += ndx + 1; - } - - if (fbt_type_name(&lc, *dp, desc->dtargd_native, sizeof(desc->dtargd_native)) > 0) - desc->dtargd_ndx = ndx; - - return; -} - -static int -fbt_linker_file_cb(linker_file_t lf, void *arg) -{ - - fbt_provide_module(arg, lf); - - return (0); -} - -static void -fbt_load(void *dummy) -{ - /* Create the /dev/dtrace/fbt entry. */ - fbt_cdev = make_dev(&fbt_cdevsw, 0, UID_ROOT, GID_WHEEL, 0600, - "dtrace/fbt"); - - /* Default the probe table size if not specified. */ - if (fbt_probetab_size == 0) - fbt_probetab_size = FBT_PROBETAB_SIZE; - - /* Choose the hash mask for the probe table. */ - fbt_probetab_mask = fbt_probetab_size - 1; - - /* Allocate memory for the probe table. */ - fbt_probetab = - malloc(fbt_probetab_size * sizeof (fbt_probe_t *), M_FBT, M_WAITOK | M_ZERO); - - dtrace_invop_add(fbt_invop); - - if (dtrace_register("fbt", &fbt_attr, DTRACE_PRIV_USER, - NULL, &fbt_pops, NULL, &fbt_id) != 0) - return; - - /* Create probes for the kernel and already-loaded modules. */ - linker_file_foreach(fbt_linker_file_cb, NULL); -} - - -static int -fbt_unload() -{ - int error = 0; - - /* De-register the invalid opcode handler. */ - dtrace_invop_remove(fbt_invop); - - /* De-register this DTrace provider. */ - if ((error = dtrace_unregister(fbt_id)) != 0) - return (error); - - /* Free the probe table. */ - free(fbt_probetab, M_FBT); - fbt_probetab = NULL; - fbt_probetab_mask = 0; - - destroy_dev(fbt_cdev); - - return (error); -} - -static int -fbt_modevent(module_t mod __unused, int type, void *data __unused) -{ - int error = 0; - - switch (type) { - case MOD_LOAD: - break; - - case MOD_UNLOAD: - break; - - case MOD_SHUTDOWN: - break; - - default: - error = EOPNOTSUPP; - break; - - } - - return (error); -} - -static int -fbt_open(struct cdev *dev __unused, int oflags __unused, int devtype __unused, struct thread *td __unused) -{ - return (0); -} - -SYSINIT(fbt_load, SI_SUB_DTRACE_PROVIDER, SI_ORDER_ANY, fbt_load, NULL); -SYSUNINIT(fbt_unload, SI_SUB_DTRACE_PROVIDER, SI_ORDER_ANY, fbt_unload, NULL); - -DEV_MODULE(fbt, fbt_modevent, NULL); -MODULE_VERSION(fbt, 1); -MODULE_DEPEND(fbt, dtrace, 1, 1, 1); -MODULE_DEPEND(fbt, opensolaris, 1, 1, 1); diff --git a/sys/cddl/dev/fbt/powerpc/fbt_isa.c b/sys/cddl/dev/fbt/powerpc/fbt_isa.c new file mode 100644 index 0000000..b862f8a --- /dev/null +++ b/sys/cddl/dev/fbt/powerpc/fbt_isa.c @@ -0,0 +1,241 @@ +/* + * CDDL HEADER START + * + * The contents of this file are subject to the terms of the + * Common Development and Distribution License (the "License"). + * You may not use this file except in compliance with the License. + * + * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE + * or http://www.opensolaris.org/os/licensing. + * See the License for the specific language governing permissions + * and limitations under the License. + * + * When distributing Covered Code, include this CDDL HEADER in each + * file and include the License file at usr/src/OPENSOLARIS.LICENSE. + * If applicable, add the following below this CDDL HEADER, with the + * fields enclosed by brackets "[]" replaced with your own identifying + * information: Portions Copyright [yyyy] [name of copyright owner] + * + * CDDL HEADER END + * + * Portions Copyright 2006-2008 John Birrell jb@freebsd.org + * Portions Copyright 2013 Justin Hibbits jhibbits@freebsd.org + * + * $FreeBSD$ + * + */ + +/* + * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Use is subject to license terms. + */ + +#include <sys/cdefs.h> +#include <sys/param.h> +#include <sys/dtrace.h> +#include <machine/md_var.h> + +#include "fbt.h" + +#define FBT_PATCHVAL 0x7c810808 +#define FBT_MFLR_R0 0x7c0802a6 +#define FBT_MTLR_R0 0x7c0803a6 +#define FBT_BLR 0x4e800020 +#define FBT_BCTR 0x4e800030 +#define FBT_BRANCH 0x48000000 +#define FBT_BR_MASK 0x03fffffc +#define FBT_IS_JUMP(instr) ((instr & ~FBT_BR_MASK) == FBT_BRANCH) + +#define FBT_ENTRY "entry" +#define FBT_RETURN "return" + +int +fbt_invop(uintptr_t addr, uintptr_t *stack, uintptr_t rval) +{ + struct trapframe *frame = (struct trapframe *)stack; + solaris_cpu_t *cpu = &solaris_cpu[curcpu]; + fbt_probe_t *fbt = fbt_probetab[FBT_ADDR2NDX(addr)]; + uintptr_t tmp; + + for (; fbt != NULL; fbt = fbt->fbtp_hashnext) { + if ((uintptr_t)fbt->fbtp_patchpoint == addr) { + fbt->fbtp_invop_cnt++; + if (fbt->fbtp_roffset == 0) { + cpu->cpu_dtrace_caller = addr; + + dtrace_probe(fbt->fbtp_id, frame->fixreg[3], + frame->fixreg[4], frame->fixreg[5], + frame->fixreg[6], frame->fixreg[7]); + + cpu->cpu_dtrace_caller = 0; + } else { + + dtrace_probe(fbt->fbtp_id, fbt->fbtp_roffset, + rval, 0, 0, 0); + /* + * The caller doesn't have the fbt item, so + * fixup tail calls here. + */ + if (fbt->fbtp_rval == DTRACE_INVOP_JUMP) { + frame->srr0 = (uintptr_t)fbt->fbtp_patchpoint; + tmp = fbt->fbtp_savedval & FBT_BR_MASK; + /* Sign extend. */ + if (tmp & 0x02000000) +#ifdef __powerpc64__ + tmp |= 0xfffffffffc000000ULL; +#else + tmp |= 0xfc000000UL; +#endif + frame->srr0 += tmp; + } + cpu->cpu_dtrace_caller = 0; + } + + return (fbt->fbtp_rval); + } + } + + return (0); +} + +void +fbt_patch_tracepoint(fbt_probe_t *fbt, fbt_patchval_t val) +{ + + *fbt->fbtp_patchpoint = val; + __syncicache(fbt->fbtp_patchpoint, 4); +} + +int +fbt_provide_module_function(linker_file_t lf, int symindx, + linker_symval_t *symval, void *opaque) +{ + char *modname = opaque; + const char *name = symval->name; + fbt_probe_t *fbt, *retfbt; + int j; + uint32_t *instr, *limit; + + /* PowerPC64 uses '.' prefixes on symbol names, ignore it. */ + if (name[0] == '.') + name++; + + if (strncmp(name, "dtrace_", 7) == 0 && + strncmp(name, "dtrace_safe_", 12) != 0) { + /* + * Anything beginning with "dtrace_" may be called + * from probe context unless it explicitly indicates + * that it won't be called from probe context by + * using the prefix "dtrace_safe_". + */ + return (0); + } + + if (name[0] == '_' && name[1] == '_') + return (0); + + instr = (uint32_t *) symval->value; + limit = (uint32_t *) (symval->value + symval->size); + + for (; instr < limit; instr++) + if (*instr == FBT_MFLR_R0) + break; + + if (*instr != FBT_MFLR_R0) + return (0); + + fbt = malloc(sizeof (fbt_probe_t), M_FBT, M_WAITOK | M_ZERO); + fbt->fbtp_name = name; + fbt->fbtp_id = dtrace_probe_create(fbt_id, modname, + name, FBT_ENTRY, 3, fbt); + fbt->fbtp_patchpoint = instr; + fbt->fbtp_ctl = lf; + fbt->fbtp_loadcnt = lf->loadcnt; + fbt->fbtp_savedval = *instr; + fbt->fbtp_patchval = FBT_PATCHVAL; + fbt->fbtp_rval = DTRACE_INVOP_MFLR_R0; + fbt->fbtp_symindx = symindx; + + fbt->fbtp_hashnext = fbt_probetab[FBT_ADDR2NDX(instr)]; + fbt_probetab[FBT_ADDR2NDX(instr)] = fbt; + + lf->fbt_nentries++; + + retfbt = NULL; +again: + if (instr >= limit) + return (0); + + /* + * We (desperately) want to avoid erroneously instrumenting a + * jump table. To determine if we're looking at a true instruction + * sequence or an inline jump table that happens to contain the same + * byte sequences, we resort to some heuristic sleeze: we treat this + * instruction as being contained within a pointer, and see if that + * pointer points to within the body of the function. If it does, we + * refuse to instrument it. + */ + { + uint32_t *ptr; + + ptr = *(uint32_t **)instr; + + if (ptr >= (uint32_t *) symval->value && ptr < limit) { + instr++; + goto again; + } + } + + if (*instr != FBT_MTLR_R0) { + instr++; + goto again; + } + + instr++; + + for (j = 0; j < 12 && instr < limit; j++, instr++) { + if ((*instr == FBT_BCTR) || (*instr == FBT_BLR) || + FBT_IS_JUMP(*instr)) + break; + } + + if (!(*instr == FBT_BCTR || *instr == FBT_BLR || FBT_IS_JUMP(*instr))) + goto again; + + /* + * We have a winner! + */ + fbt = malloc(sizeof (fbt_probe_t), M_FBT, M_WAITOK | M_ZERO); + fbt->fbtp_name = name; + + if (retfbt == NULL) { + fbt->fbtp_id = dtrace_probe_create(fbt_id, modname, + name, FBT_RETURN, 5, fbt); + } else { + retfbt->fbtp_next = fbt; + fbt->fbtp_id = retfbt->fbtp_id; + } + + retfbt = fbt; + fbt->fbtp_patchpoint = instr; + fbt->fbtp_ctl = lf; + fbt->fbtp_loadcnt = lf->loadcnt; + fbt->fbtp_symindx = symindx; + + if (*instr == FBT_BCTR) + fbt->fbtp_rval = DTRACE_INVOP_BCTR; + else if (*instr == FBT_BLR) + fbt->fbtp_rval = DTRACE_INVOP_RET; + else + fbt->fbtp_rval = DTRACE_INVOP_JUMP; + + fbt->fbtp_savedval = *instr; + fbt->fbtp_patchval = FBT_PATCHVAL; + fbt->fbtp_hashnext = fbt_probetab[FBT_ADDR2NDX(instr)]; + fbt_probetab[FBT_ADDR2NDX(instr)] = fbt; + + lf->fbt_nentries++; + + instr += 4; + goto again; +} diff --git a/sys/cddl/dev/fbt/powerpc/fbt_isa.h b/sys/cddl/dev/fbt/powerpc/fbt_isa.h new file mode 100644 index 0000000..5552f31 --- /dev/null +++ b/sys/cddl/dev/fbt/powerpc/fbt_isa.h @@ -0,0 +1,30 @@ +/* + * CDDL HEADER START + * + * The contents of this file are subject to the terms of the + * Common Development and Distribution License (the "License"). + * You may not use this file except in compliance with the License. + * + * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE + * or http://www.opensolaris.org/os/licensing. + * See the License for the specific language governing permissions + * and limitations under the License. + * + * When distributing Covered Code, include this CDDL HEADER in each + * file and include the License file at usr/src/OPENSOLARIS.LICENSE. + * If applicable, add the following below this CDDL HEADER, with the + * fields enclosed by brackets "[]" replaced with your own identifying + * information: Portions Copyright [yyyy] [name of copyright owner] + * + * CDDL HEADER END + * + * $FreeBSD$ + * + */ + +#ifndef _FBT_ISA_H_ +#define _FBT_ISA_H_ + +typedef uint32_t fbt_patchval_t; + +#endif diff --git a/sys/cddl/dev/fbt/x86/fbt_isa.c b/sys/cddl/dev/fbt/x86/fbt_isa.c new file mode 100644 index 0000000..160c9b3 --- /dev/null +++ b/sys/cddl/dev/fbt/x86/fbt_isa.c @@ -0,0 +1,316 @@ +/* + * CDDL HEADER START + * + * The contents of this file are subject to the terms of the + * Common Development and Distribution License (the "License"). + * You may not use this file except in compliance with the License. + * + * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE + * or http://www.opensolaris.org/os/licensing. + * See the License for the specific language governing permissions + * and limitations under the License. + * + * When distributing Covered Code, include this CDDL HEADER in each + * file and include the License file at usr/src/OPENSOLARIS.LICENSE. + * If applicable, add the following below this CDDL HEADER, with the + * fields enclosed by brackets "[]" replaced with your own identifying + * information: Portions Copyright [yyyy] [name of copyright owner] + * + * CDDL HEADER END + * + * Portions Copyright 2006-2008 John Birrell jb@freebsd.org + * + * $FreeBSD$ + * + */ + +/* + * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Use is subject to license terms. + */ + +#include <sys/cdefs.h> +#include <sys/param.h> + +#include <sys/dtrace.h> + +#include "fbt.h" + +#define FBT_PUSHL_EBP 0x55 +#define FBT_MOVL_ESP_EBP0_V0 0x8b +#define FBT_MOVL_ESP_EBP1_V0 0xec +#define FBT_MOVL_ESP_EBP0_V1 0x89 +#define FBT_MOVL_ESP_EBP1_V1 0xe5 +#define FBT_REX_RSP_RBP 0x48 + +#define FBT_POPL_EBP 0x5d +#define FBT_RET 0xc3 +#define FBT_RET_IMM16 0xc2 +#define FBT_LEAVE 0xc9 + +#ifdef __amd64__ +#define FBT_PATCHVAL 0xcc +#else +#define FBT_PATCHVAL 0xf0 +#endif + +#define FBT_ENTRY "entry" +#define FBT_RETURN "return" + +int +fbt_invop(uintptr_t addr, uintptr_t *stack, uintptr_t rval) +{ + solaris_cpu_t *cpu = &solaris_cpu[curcpu]; + uintptr_t stack0, stack1, stack2, stack3, stack4; + fbt_probe_t *fbt = fbt_probetab[FBT_ADDR2NDX(addr)]; + + for (; fbt != NULL; fbt = fbt->fbtp_hashnext) { + if ((uintptr_t)fbt->fbtp_patchpoint == addr) { + fbt->fbtp_invop_cnt++; + if (fbt->fbtp_roffset == 0) { + int i = 0; + /* + * When accessing the arguments on the stack, + * we must protect against accessing beyond + * the stack. We can safely set NOFAULT here + * -- we know that interrupts are already + * disabled. + */ + DTRACE_CPUFLAG_SET(CPU_DTRACE_NOFAULT); + cpu->cpu_dtrace_caller = stack[i++]; + stack0 = stack[i++]; + stack1 = stack[i++]; + stack2 = stack[i++]; + stack3 = stack[i++]; + stack4 = stack[i++]; + DTRACE_CPUFLAG_CLEAR(CPU_DTRACE_NOFAULT | + CPU_DTRACE_BADADDR); + + dtrace_probe(fbt->fbtp_id, stack0, stack1, + stack2, stack3, stack4); + + cpu->cpu_dtrace_caller = 0; + } else { +#ifdef __amd64__ + /* + * On amd64, we instrument the ret, not the + * leave. We therefore need to set the caller + * to assure that the top frame of a stack() + * action is correct. + */ + DTRACE_CPUFLAG_SET(CPU_DTRACE_NOFAULT); + cpu->cpu_dtrace_caller = stack[0]; + DTRACE_CPUFLAG_CLEAR(CPU_DTRACE_NOFAULT | + CPU_DTRACE_BADADDR); +#endif + + dtrace_probe(fbt->fbtp_id, fbt->fbtp_roffset, + rval, 0, 0, 0); + cpu->cpu_dtrace_caller = 0; + } + + return (fbt->fbtp_rval); + } + } + + return (0); +} + +void +fbt_patch_tracepoint(fbt_probe_t *fbt, fbt_patchval_t val) +{ + + *fbt->fbtp_patchpoint = val; +} + +int +fbt_provide_module_function(linker_file_t lf, int symindx, + linker_symval_t *symval, void *opaque) +{ + char *modname = opaque; + const char *name = symval->name; + fbt_probe_t *fbt, *retfbt; + int j; + int size; + uint8_t *instr, *limit; + + if ((strncmp(name, "dtrace_", 7) == 0 && + strncmp(name, "dtrace_safe_", 12) != 0) || + strcmp(name, "trap_check") == 0) { + /* + * Anything beginning with "dtrace_" may be called + * from probe context unless it explicitly indicates + * that it won't be called from probe context by + * using the prefix "dtrace_safe_". + * + * Additionally, we avoid instrumenting trap_check() to avoid + * the possibility of generating a fault in probe context before + * DTrace's fault handler is called. + */ + return (0); + } + + if (name[0] == '_' && name[1] == '_') + return (0); + + size = symval->size; + + instr = (uint8_t *) symval->value; + limit = (uint8_t *) symval->value + symval->size; + +#ifdef __amd64__ + while (instr < limit) { + if (*instr == FBT_PUSHL_EBP) + break; + + if ((size = dtrace_instr_size(instr)) <= 0) + break; + + instr += size; + } + + if (instr >= limit || *instr != FBT_PUSHL_EBP) { + /* + * We either don't save the frame pointer in this + * function, or we ran into some disassembly + * screw-up. Either way, we bail. + */ + return (0); + } +#else + if (instr[0] != FBT_PUSHL_EBP) + return (0); + + if (!(instr[1] == FBT_MOVL_ESP_EBP0_V0 && + instr[2] == FBT_MOVL_ESP_EBP1_V0) && + !(instr[1] == FBT_MOVL_ESP_EBP0_V1 && + instr[2] == FBT_MOVL_ESP_EBP1_V1)) + return (0); +#endif + + fbt = malloc(sizeof (fbt_probe_t), M_FBT, M_WAITOK | M_ZERO); + fbt->fbtp_name = name; + fbt->fbtp_id = dtrace_probe_create(fbt_id, modname, + name, FBT_ENTRY, 3, fbt); + fbt->fbtp_patchpoint = instr; + fbt->fbtp_ctl = lf; + fbt->fbtp_loadcnt = lf->loadcnt; + fbt->fbtp_rval = DTRACE_INVOP_PUSHL_EBP; + fbt->fbtp_savedval = *instr; + fbt->fbtp_patchval = FBT_PATCHVAL; + fbt->fbtp_symindx = symindx; + + fbt->fbtp_hashnext = fbt_probetab[FBT_ADDR2NDX(instr)]; + fbt_probetab[FBT_ADDR2NDX(instr)] = fbt; + + lf->fbt_nentries++; + + retfbt = NULL; +again: + if (instr >= limit) + return (0); + + /* + * If this disassembly fails, then we've likely walked off into + * a jump table or some other unsuitable area. Bail out of the + * disassembly now. + */ + if ((size = dtrace_instr_size(instr)) <= 0) + return (0); + +#ifdef __amd64__ + /* + * We only instrument "ret" on amd64 -- we don't yet instrument + * ret imm16, largely because the compiler doesn't seem to + * (yet) emit them in the kernel... + */ + if (*instr != FBT_RET) { + instr += size; + goto again; + } +#else + if (!(size == 1 && + (*instr == FBT_POPL_EBP || *instr == FBT_LEAVE) && + (*(instr + 1) == FBT_RET || + *(instr + 1) == FBT_RET_IMM16))) { + instr += size; + goto again; + } +#endif + + /* + * We (desperately) want to avoid erroneously instrumenting a + * jump table, especially given that our markers are pretty + * short: two bytes on x86, and just one byte on amd64. To + * determine if we're looking at a true instruction sequence + * or an inline jump table that happens to contain the same + * byte sequences, we resort to some heuristic sleeze: we + * treat this instruction as being contained within a pointer, + * and see if that pointer points to within the body of the + * function. If it does, we refuse to instrument it. + */ + for (j = 0; j < sizeof (uintptr_t); j++) { + caddr_t check = (caddr_t) instr - j; + uint8_t *ptr; + + if (check < symval->value) + break; + + if (check + sizeof (caddr_t) > (caddr_t)limit) + continue; + + ptr = *(uint8_t **)check; + + if (ptr >= (uint8_t *) symval->value && ptr < limit) { + instr += size; + goto again; + } + } + + /* + * We have a winner! + */ + fbt = malloc(sizeof (fbt_probe_t), M_FBT, M_WAITOK | M_ZERO); + fbt->fbtp_name = name; + + if (retfbt == NULL) { + fbt->fbtp_id = dtrace_probe_create(fbt_id, modname, + name, FBT_RETURN, 3, fbt); + } else { + retfbt->fbtp_next = fbt; + fbt->fbtp_id = retfbt->fbtp_id; + } + + retfbt = fbt; + fbt->fbtp_patchpoint = instr; + fbt->fbtp_ctl = lf; + fbt->fbtp_loadcnt = lf->loadcnt; + fbt->fbtp_symindx = symindx; + +#ifndef __amd64__ + if (*instr == FBT_POPL_EBP) { + fbt->fbtp_rval = DTRACE_INVOP_POPL_EBP; + } else { + ASSERT(*instr == FBT_LEAVE); + fbt->fbtp_rval = DTRACE_INVOP_LEAVE; + } + fbt->fbtp_roffset = + (uintptr_t)(instr - (uint8_t *) symval->value) + 1; + +#else + ASSERT(*instr == FBT_RET); + fbt->fbtp_rval = DTRACE_INVOP_RET; + fbt->fbtp_roffset = + (uintptr_t)(instr - (uint8_t *) symval->value); +#endif + + fbt->fbtp_savedval = *instr; + fbt->fbtp_patchval = FBT_PATCHVAL; + fbt->fbtp_hashnext = fbt_probetab[FBT_ADDR2NDX(instr)]; + fbt_probetab[FBT_ADDR2NDX(instr)] = fbt; + + lf->fbt_nentries++; + + instr += size; + goto again; +} diff --git a/sys/cddl/dev/fbt/x86/fbt_isa.h b/sys/cddl/dev/fbt/x86/fbt_isa.h new file mode 100644 index 0000000..79190db --- /dev/null +++ b/sys/cddl/dev/fbt/x86/fbt_isa.h @@ -0,0 +1,30 @@ +/* + * CDDL HEADER START + * + * The contents of this file are subject to the terms of the + * Common Development and Distribution License (the "License"). + * You may not use this file except in compliance with the License. + * + * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE + * or http://www.opensolaris.org/os/licensing. + * See the License for the specific language governing permissions + * and limitations under the License. + * + * When distributing Covered Code, include this CDDL HEADER in each + * file and include the License file at usr/src/OPENSOLARIS.LICENSE. + * If applicable, add the following below this CDDL HEADER, with the + * fields enclosed by brackets "[]" replaced with your own identifying + * information: Portions Copyright [yyyy] [name of copyright owner] + * + * CDDL HEADER END + * + * $FreeBSD$ + * + */ + +#ifndef _FBT_ISA_H_ +#define _FBT_ISA_H_ + +typedef uint8_t fbt_patchval_t; + +#endif diff --git a/sys/conf/Makefile.arm b/sys/conf/Makefile.arm index 06f75a7..67db55d 100644 --- a/sys/conf/Makefile.arm +++ b/sys/conf/Makefile.arm @@ -17,7 +17,7 @@ # # Which version of config(8) is required. -%VERSREQ= 600012 +%VERSREQ= 600013 STD8X16FONT?= iso diff --git a/sys/conf/NOTES b/sys/conf/NOTES index 6959425..50d76dc 100644 --- a/sys/conf/NOTES +++ b/sys/conf/NOTES @@ -1012,6 +1012,7 @@ options FFS #Fast filesystem options NFSCLIENT #Network File System client # The rest are optional: +options AUTOFS #Automounter filesystem options CD9660 #ISO 9660 filesystem options FDESCFS #File descriptor filesystem options FUSE #FUSE support module diff --git a/sys/conf/files b/sys/conf/files index 7faba40..049ae41 100644 --- a/sys/conf/files +++ b/sys/conf/files @@ -707,6 +707,8 @@ dev/ath/if_ath_ahb.c optional ath_ahb \ # dev/ath/if_ath.c optional ath \ compile-with "${NORMAL_C} -I$S/dev/ath" +dev/ath/if_ath_alq.c optional ath \ + compile-with "${NORMAL_C} -I$S/dev/ath" dev/ath/if_ath_beacon.c optional ath \ compile-with "${NORMAL_C} -I$S/dev/ath" dev/ath/if_ath_btcoex.c optional ath \ @@ -1422,22 +1424,26 @@ dev/hptiop/hptiop.c optional hptiop scbus dev/hwpmc/hwpmc_logging.c optional hwpmc dev/hwpmc/hwpmc_mod.c optional hwpmc dev/hwpmc/hwpmc_soft.c optional hwpmc -dev/i40e/if_i40e.c optional i40e inet \ - compile-with "${NORMAL_C} -I$S/dev/i40e -DSMP" -dev/i40e/i40e_txrx.c optional i40e inet \ - compile-with "${NORMAL_C} -I$S/dev/i40e -DSMP" -dev/i40e/i40e_osdep.c optional i40e inet \ - compile-with "${NORMAL_C} -I$S/dev/i40e -DSMP" -dev/i40e/i40e_nvm.c optional i40e inet \ - compile-with "${NORMAL_C} -I$S/dev/i40e -DSMP" -dev/i40e/i40e_lan_hmc.c optional i40e inet \ - compile-with "${NORMAL_C} -I$S/dev/i40e -DSMP" -dev/i40e/i40e_hmc.c optional i40e inet \ - compile-with "${NORMAL_C} -I$S/dev/i40e -DSMP" -dev/i40e/i40e_common.c optional i40e inet \ - compile-with "${NORMAL_C} -I$S/dev/i40e -DSMP" -dev/i40e/i40e_adminq.c optional i40e inet \ - compile-with "${NORMAL_C} -I$S/dev/i40e -DSMP" +dev/ixl/if_ixl.c optional ixl inet \ + compile-with "${NORMAL_C} -I$S/dev/ixl" +dev/ixl/if_ixlv.c optional ixlv inet \ + compile-with "${NORMAL_C} -I$S/dev/ixl" +dev/ixl/ixlvc.c optional ixlv inet \ + compile-with "${NORMAL_C} -I$S/dev/ixl" +dev/ixl/ixl_txrx.c optional ixl ixlv inet \ + compile-with "${NORMAL_C} -I$S/dev/ixl" +dev/ixl/i40e_osdep.c optional ixl ixlv inet \ + compile-with "${NORMAL_C} -I$S/dev/ixl" +dev/ixl/i40e_lan_hmc.c optional ixl ixlv inet \ + compile-with "${NORMAL_C} -I$S/dev/ixl" +dev/ixl/i40e_hmc.c optional ixl ixlv inet \ + compile-with "${NORMAL_C} -I$S/dev/ixl" +dev/ixl/i40e_common.c optional ixl ixlv inet \ + compile-with "${NORMAL_C} -I$S/dev/ixl" +dev/ixl/i40e_nvm.c optional ixl ixlv inet \ + compile-with "${NORMAL_C} -I$S/dev/ixl" +dev/ixl/i40e_adminq.c optional ixl ixlv inet \ + compile-with "${NORMAL_C} -I$S/dev/ixl" dev/ichsmb/ichsmb.c optional ichsmb dev/ichsmb/ichsmb_pci.c optional ichsmb pci dev/ida/ida.c optional ida @@ -1596,6 +1602,34 @@ iwn1000.fw optional iwn1000fw | iwnfw \ compile-with "${NORMAL_FW}" \ no-obj no-implicit-rule \ clean "iwn1000.fw" +iwn105fw.c optional iwn105fw | iwnfw \ + compile-with "${AWK} -f $S/tools/fw_stub.awk iwn105.fw:iwn105fw -miwn105fw -c${.TARGET}" \ + no-implicit-rule before-depend local \ + clean "iwn105fw.c" +iwn105fw.fwo optional iwn105fw | iwnfw \ + dependency "iwn105.fw" \ + compile-with "${NORMAL_FWO}" \ + no-implicit-rule \ + clean "iwn105fw.fwo" +iwn105.fw optional iwn105fw | iwnfw \ + dependency "$S/contrib/dev/iwn/iwlwifi-105-6-18.168.6.1.fw.uu" \ + compile-with "${NORMAL_FW}" \ + no-obj no-implicit-rule \ + clean "iwn105.fw" +iwn135fw.c optional iwn135fw | iwnfw \ + compile-with "${AWK} -f $S/tools/fw_stub.awk iwn135.fw:iwn135fw -miwn135fw -c${.TARGET}" \ + no-implicit-rule before-depend local \ + clean "iwn135fw.c" +iwn135fw.fwo optional iwn135fw | iwnfw \ + dependency "iwn135.fw" \ + compile-with "${NORMAL_FWO}" \ + no-implicit-rule \ + clean "iwn135fw.fwo" +iwn135.fw optional iwn135fw | iwnfw \ + dependency "$S/contrib/dev/iwn/iwlwifi-135-6-18.168.6.1.fw.uu" \ + compile-with "${NORMAL_FW}" \ + no-obj no-implicit-rule \ + clean "iwn135.fw" iwn2000fw.c optional iwn2000fw | iwnfw \ compile-with "${AWK} -f $S/tools/fw_stub.awk iwn2000.fw:iwn2000fw -miwn2000fw -c${.TARGET}" \ no-implicit-rule before-depend local \ @@ -1918,6 +1952,7 @@ dev/netmap/netmap_freebsd.c optional netmap dev/netmap/netmap_generic.c optional netmap dev/netmap/netmap_mbq.c optional netmap dev/netmap/netmap_mem2.c optional netmap +dev/netmap/netmap_monitor.c optional netmap dev/netmap/netmap_offloadings.c optional netmap dev/netmap/netmap_pipe.c optional netmap dev/netmap/netmap_vale.c optional netmap @@ -2596,6 +2631,9 @@ dev/xen/timer/timer.c optional xen | xenhvm dev/xen/pvcpu/pvcpu.c optional xen | xenhvm dev/xl/if_xl.c optional xl pci dev/xl/xlphy.c optional xl pci +fs/autofs/autofs.c optional autofs +fs/autofs/autofs_vfsops.c optional autofs +fs/autofs/autofs_vnops.c optional autofs fs/deadfs/dead_vnops.c standard fs/devfs/devfs_devs.c standard fs/devfs/devfs_dir.c standard @@ -3133,6 +3171,7 @@ libkern/strcmp.c standard libkern/strcpy.c standard libkern/strcspn.c standard libkern/strdup.c standard +libkern/strndup.c standard libkern/strlcat.c standard libkern/strlcpy.c standard libkern/strlen.c standard diff --git a/sys/conf/kern.mk b/sys/conf/kern.mk index d8873a6..c3fb969 100644 --- a/sys/conf/kern.mk +++ b/sys/conf/kern.mk @@ -29,14 +29,17 @@ NO_WSOMETIMES_UNINITIALIZED= -Wno-error-sometimes-uninitialized # enough to error out the whole kernel build. Display them anyway, so there is # some incentive to fix them eventually. CWARNEXTRA?= -Wno-error-tautological-compare -Wno-error-empty-body \ - -Wno-error-parentheses-equality -Wno-error-unused-function \ - ${NO_WFORMAT} + -Wno-error-parentheses-equality -Wno-error-unused-function +.endif + +.if ${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} >= 40300 +CWARNEXTRA?= -Wno-inline .endif # External compilers may not support our format extensions. Allow them # to be disabled. WARNING: format checking is disabled in this case. .if ${MK_FORMAT_EXTENSIONS} == "no" -NO_WFORMAT= -Wno-format +FORMAT_EXTENSIONS= -Wno-format .else FORMAT_EXTENSIONS= -fformat-extensions .endif diff --git a/sys/conf/options b/sys/conf/options index 8e6f95e..eff8a12 100644 --- a/sys/conf/options +++ b/sys/conf/options @@ -221,6 +221,7 @@ INCLUDE_CONFIG_FILE opt_config.h # time, since the corresponding lkms cannot work if there are any static # dependencies. Unusability is enforced by hiding the defines for the # options in a never-included header. +AUTOFS opt_dontuse.h CD9660 opt_dontuse.h EXT2FS opt_dontuse.h FDESCFS opt_dontuse.h @@ -457,6 +458,7 @@ SCTP_LTRACE_ERRORS opt_sctp.h # Log to KTR error returns. SCTP_USE_PERCPU_STAT opt_sctp.h # Use per cpu stats. SCTP_MCORE_INPUT opt_sctp.h # Have multiple input threads for input mbufs SCTP_LOCAL_TRACE_BUF opt_sctp.h # Use tracebuffer exported via sysctl +SCTP_DETAILED_STR_STATS opt_sctp.h # Use per PR-SCTP policy stream stats # # # diff --git a/sys/ddb/db_run.c b/sys/ddb/db_run.c index f0b31bf..897dc3d 100644 --- a/sys/ddb/db_run.c +++ b/sys/ddb/db_run.c @@ -188,14 +188,14 @@ db_restart_at_pc(watchpt) if ((db_run_mode == STEP_COUNT) || (db_run_mode == STEP_RETURN) || (db_run_mode == STEP_CALLT)) { - db_expr_t ins; - /* * We are about to execute this instruction, * so count it now. */ - - ins = db_get_value(pc, sizeof(int), FALSE); +#ifdef SOFTWARE_SSTEP + db_expr_t ins = +#endif + db_get_value(pc, sizeof(int), FALSE); db_inst_count++; db_load_count += inst_load(ins); db_store_count += inst_store(ins); diff --git a/sys/dev/cs/if_cs.c b/sys/dev/cs/if_cs.c index 502c2b3..e247fe2 100644 --- a/sys/dev/cs/if_cs.c +++ b/sys/dev/cs/if_cs.c @@ -264,7 +264,7 @@ cs_cs89x0_probe(device_t dev) uint16_t id; char chip_revision; uint16_t eeprom_buff[CHKSUM_LEN]; - int chip_type, pp_isaint, pp_isadma; + int chip_type, pp_isaint; sc->dev = dev; error = cs_alloc_port(dev, 0, CS_89x0_IO_PORTS); @@ -299,11 +299,9 @@ cs_cs89x0_probe(device_t dev) if (chip_type == CS8900) { pp_isaint = PP_CS8900_ISAINT; - pp_isadma = PP_CS8900_ISADMA; sc->send_cmd = TX_CS8900_AFTER_ALL; } else { pp_isaint = PP_CS8920_ISAINT; - pp_isadma = PP_CS8920_ISADMA; sc->send_cmd = TX_CS8920_AFTER_ALL; } @@ -381,17 +379,6 @@ cs_cs89x0_probe(device_t dev) if (!(sc->flags & CS_NO_IRQ)) cs_writereg(sc, pp_isaint, irq); - /* - * Temporary disabled - * - if (drq>0) - cs_writereg(sc, pp_isadma, drq); - else { - device_printf(dev, "incorrect drq\n",); - return (0); - } - */ - if (bootverbose) device_printf(dev, "CS89%c0%s rev %c media%s%s%s\n", chip_type == CS8900 ? '0' : '2', @@ -702,7 +689,6 @@ cs_get_packet(struct cs_softc *sc) { struct ifnet *ifp = sc->ifp; int status, length; - struct ether_header *eh; struct mbuf *m; #ifdef CS_DEBUG @@ -746,8 +732,6 @@ cs_get_packet(struct cs_softc *sc) bus_read_multi_2(sc->port_res, RX_FRAME_PORT, mtod(m, uint16_t *), (length + 1) >> 1); - eh = mtod(m, struct ether_header *); - #ifdef CS_DEBUG for (i=0;i<length;i++) printf(" %02x",(unsigned char)*((char *)(m->m_data+i))); diff --git a/sys/dev/cxgbe/t4_netmap.c b/sys/dev/cxgbe/t4_netmap.c index f7210d4..89aef32 100644 --- a/sys/dev/cxgbe/t4_netmap.c +++ b/sys/dev/cxgbe/t4_netmap.c @@ -434,19 +434,18 @@ cxgbe_netmap_on(struct adapter *sc, struct port_info *pi, struct ifnet *ifp, hwb = &sc->sge.hw_buf_info[0]; for (i = 0; i < SGE_FLBUF_SIZES; i++, hwb++) { - if (hwb->size == NETMAP_BUF_SIZE) + if (hwb->size == NETMAP_BUF_SIZE(na)) break; } if (i >= SGE_FLBUF_SIZES) { if_printf(ifp, "no hwidx for netmap buffer size %d.\n", - NETMAP_BUF_SIZE); + NETMAP_BUF_SIZE(na)); return (ENXIO); } hwidx = i; /* Must set caps before calling netmap_reset */ - na->na_flags |= (NAF_NATIVE_ON | NAF_NETMAP_ON); - ifp->if_capenable |= IFCAP_NETMAP; + nm_set_native_flags(na); for_each_nm_rxq(pi, i, nm_rxq) { alloc_nm_rxq_hwq(pi, nm_rxq); @@ -460,7 +459,7 @@ cxgbe_netmap_on(struct adapter *sc, struct port_info *pi, struct ifnet *ifp, for (j = 0; j < nm_rxq->fl_sidx - 8; j++) { uint64_t ba; - PNMB(&slot[j], &ba); + PNMB(na, &slot[j], &ba); nm_rxq->fl_desc[j] = htobe64(ba | hwidx); } nm_rxq->fl_pidx = j; @@ -512,8 +511,7 @@ cxgbe_netmap_off(struct adapter *sc, struct port_info *pi, struct ifnet *ifp, rc = -t4_enable_vi(sc, sc->mbox, pi->nm_viid, false, false); if (rc != 0) if_printf(ifp, "netmap disable_vi failed: %d\n", rc); - na->na_flags &= ~(NAF_NATIVE_ON | NAF_NETMAP_ON); - ifp->if_capenable &= ~IFCAP_NETMAP; + nm_clear_native_flags(na); /* * XXXNM: We need to make sure that the tx queues are quiet and won't @@ -669,7 +667,7 @@ cxgbe_nm_tx(struct adapter *sc, struct sge_nm_txq *nm_txq, for (i = 0; i < n; i++) { slot = &ring->slot[kring->nr_hwcur]; - PNMB(slot, &ba); + PNMB(kring->na, slot, &ba); cpl->ctrl0 = nm_txq->cpl_ctrl0; cpl->pack = 0; @@ -786,13 +784,13 @@ reclaim_nm_tx_desc(struct sge_nm_txq *nm_txq) } static int -cxgbe_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) +cxgbe_netmap_txsync(struct netmap_kring *kring, int flags) { - struct netmap_kring *kring = &na->tx_rings[ring_nr]; + struct netmap_adapter *na = kring->na; struct ifnet *ifp = na->ifp; struct port_info *pi = ifp->if_softc; struct adapter *sc = pi->adapter; - struct sge_nm_txq *nm_txq = &sc->sge.nm_txq[pi->first_nm_txq + ring_nr]; + struct sge_nm_txq *nm_txq = &sc->sge.nm_txq[pi->first_nm_txq + kring->ring_id]; const u_int head = kring->rhead; u_int reclaimed = 0; int n, d, npkt_remaining, ndesc_remaining; @@ -851,14 +849,14 @@ cxgbe_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) } static int -cxgbe_netmap_rxsync(struct netmap_adapter *na, u_int ring_nr, int flags) +cxgbe_netmap_rxsync(struct netmap_kring *kring, int flags) { - struct netmap_kring *kring = &na->rx_rings[ring_nr]; + struct netmap_adapter *na = kring->na; struct netmap_ring *ring = kring->ring; struct ifnet *ifp = na->ifp; struct port_info *pi = ifp->if_softc; struct adapter *sc = pi->adapter; - struct sge_nm_rxq *nm_rxq = &sc->sge.nm_rxq[pi->first_nm_rxq + ring_nr]; + struct sge_nm_rxq *nm_rxq = &sc->sge.nm_rxq[pi->first_nm_rxq + kring->ring_id]; u_int const head = nm_rxsync_prologue(kring); u_int n; int force_update = (flags & NAF_FORCE_READ) || kring->nr_kflags & NKR_PENDINTR; @@ -891,7 +889,7 @@ cxgbe_netmap_rxsync(struct netmap_adapter *na, u_int ring_nr, int flags) while (n > 0) { for (i = 0; i < 8; i++, fl_pidx++, slot++) { - PNMB(slot, &ba); + PNMB(na, slot, &ba); nm_rxq->fl_desc[fl_pidx] = htobe64(ba | hwidx); slot->flags &= ~NS_BUF_CHANGED; MPASS(fl_pidx <= nm_rxq->fl_sidx); diff --git a/sys/dev/e1000/if_em.c b/sys/dev/e1000/if_em.c index 2d101b8..3eba0b2 100644 --- a/sys/dev/e1000/if_em.c +++ b/sys/dev/e1000/if_em.c @@ -3340,10 +3340,10 @@ em_setup_transmit_ring(struct tx_ring *txr) uint64_t paddr; void *addr; - addr = PNMB(slot + si, &paddr); + addr = PNMB(na, slot + si, &paddr); txr->tx_base[i].buffer_addr = htole64(paddr); /* reload the map for netmap mode */ - netmap_load_map(txr->txtag, txbuf->map, addr); + netmap_load_map(na, txr->txtag, txbuf->map, addr); } #endif /* DEV_NETMAP */ @@ -4082,8 +4082,8 @@ em_setup_receive_ring(struct rx_ring *rxr) uint64_t paddr; void *addr; - addr = PNMB(slot + si, &paddr); - netmap_load_map(rxr->rxtag, rxbuf->map, addr); + addr = PNMB(na, slot + si, &paddr); + netmap_load_map(na, rxr->rxtag, rxbuf->map, addr); /* Update descriptor */ rxr->rx_base[j].buffer_addr = htole64(paddr); continue; diff --git a/sys/dev/e1000/if_igb.c b/sys/dev/e1000/if_igb.c index 68539b5..d7bf529 100644 --- a/sys/dev/e1000/if_igb.c +++ b/sys/dev/e1000/if_igb.c @@ -3629,7 +3629,7 @@ igb_setup_transmit_ring(struct tx_ring *txr) if (slot) { int si = netmap_idx_n2k(&na->tx_rings[txr->me], i); /* no need to set the address */ - netmap_load_map(txr->txtag, txbuf->map, NMB(slot + si)); + netmap_load_map(na, txr->txtag, txbuf->map, NMB(na, slot + si)); } #endif /* DEV_NETMAP */ /* clear the watch index */ @@ -4433,8 +4433,8 @@ igb_setup_receive_ring(struct rx_ring *rxr) uint64_t paddr; void *addr; - addr = PNMB(slot + sj, &paddr); - netmap_load_map(rxr->ptag, rxbuf->pmap, addr); + addr = PNMB(na, slot + sj, &paddr); + netmap_load_map(na, rxr->ptag, rxbuf->pmap, addr); /* Update descriptor */ rxr->rx_base[j].read.pkt_addr = htole64(paddr); continue; diff --git a/sys/dev/e1000/if_lem.c b/sys/dev/e1000/if_lem.c index 1fe22cb..53dc921 100644 --- a/sys/dev/e1000/if_lem.c +++ b/sys/dev/e1000/if_lem.c @@ -32,6 +32,15 @@ ******************************************************************************/ /*$FreeBSD$*/ +/* + * Uncomment the following extensions for better performance in a VM, + * especially if you have support in the hypervisor. + * See http://info.iet.unipi.it/~luigi/netmap/ + */ +// #define BATCH_DISPATCH +// #define NIC_SEND_COMBINING +// #define NIC_PARAVIRT /* enable virtio-like synchronization */ + #include "opt_inet.h" #include "opt_inet6.h" @@ -291,6 +300,10 @@ static int lem_tx_int_delay_dflt = EM_TICKS_TO_USECS(EM_TIDV); static int lem_rx_int_delay_dflt = EM_TICKS_TO_USECS(EM_RDTR); static int lem_tx_abs_int_delay_dflt = EM_TICKS_TO_USECS(EM_TADV); static int lem_rx_abs_int_delay_dflt = EM_TICKS_TO_USECS(EM_RADV); +/* + * increase lem_rxd and lem_txd to at least 2048 in netmap mode + * for better performance. + */ static int lem_rxd = EM_DEFAULT_RXD; static int lem_txd = EM_DEFAULT_TXD; static int lem_smart_pwr_down = FALSE; @@ -460,6 +473,20 @@ lem_attach(device_t dev) "max number of rx packets to process", &adapter->rx_process_limit, lem_rx_process_limit); +#ifdef NIC_SEND_COMBINING + /* Sysctls to control mitigation */ + lem_add_rx_process_limit(adapter, "sc_enable", + "driver TDT mitigation", &adapter->sc_enable, 0); +#endif /* NIC_SEND_COMBINING */ +#ifdef BATCH_DISPATCH + lem_add_rx_process_limit(adapter, "batch_enable", + "driver rx batch", &adapter->batch_enable, 0); +#endif /* BATCH_DISPATCH */ +#ifdef NIC_PARAVIRT + lem_add_rx_process_limit(adapter, "rx_retries", + "driver rx retries", &adapter->rx_retries, 0); +#endif /* NIC_PARAVIRT */ + /* Sysctl for setting the interface flow control */ lem_set_flow_cntrl(adapter, "flow_control", "flow control setting", @@ -517,6 +544,49 @@ lem_attach(device_t dev) */ adapter->hw.mac.report_tx_early = 1; +#ifdef NIC_PARAVIRT + device_printf(dev, "driver supports paravirt, subdev 0x%x\n", + adapter->hw.subsystem_device_id); + if (adapter->hw.subsystem_device_id == E1000_PARA_SUBDEV) { + uint64_t bus_addr; + + device_printf(dev, "paravirt support on dev %p\n", adapter); + tsize = 4096; // XXX one page for the csb + if (lem_dma_malloc(adapter, tsize, &adapter->csb_mem, BUS_DMA_NOWAIT)) { + device_printf(dev, "Unable to allocate csb memory\n"); + error = ENOMEM; + goto err_csb; + } + /* Setup the Base of the CSB */ + adapter->csb = (struct paravirt_csb *)adapter->csb_mem.dma_vaddr; + /* force the first kick */ + adapter->csb->host_need_txkick = 1; /* txring empty */ + adapter->csb->guest_need_rxkick = 1; /* no rx packets */ + bus_addr = adapter->csb_mem.dma_paddr; + lem_add_rx_process_limit(adapter, "csb_on", + "enable paravirt.", &adapter->csb->guest_csb_on, 0); + lem_add_rx_process_limit(adapter, "txc_lim", + "txc_lim", &adapter->csb->host_txcycles_lim, 1); + + /* some stats */ +#define PA_SC(name, var, val) \ + lem_add_rx_process_limit(adapter, name, name, var, val) + PA_SC("host_need_txkick",&adapter->csb->host_need_txkick, 1); + PA_SC("host_rxkick_at",&adapter->csb->host_rxkick_at, ~0); + PA_SC("guest_need_txkick",&adapter->csb->guest_need_txkick, 0); + PA_SC("guest_need_rxkick",&adapter->csb->guest_need_rxkick, 1); + PA_SC("tdt_reg_count",&adapter->tdt_reg_count, 0); + PA_SC("tdt_csb_count",&adapter->tdt_csb_count, 0); + PA_SC("tdt_int_count",&adapter->tdt_int_count, 0); + PA_SC("guest_need_kick_count",&adapter->guest_need_kick_count, 0); + /* tell the host where the block is */ + E1000_WRITE_REG(&adapter->hw, E1000_CSBAH, + (u32)(bus_addr >> 32)); + E1000_WRITE_REG(&adapter->hw, E1000_CSBAL, + (u32)bus_addr); + } +#endif /* NIC_PARAVIRT */ + tsize = roundup2(adapter->num_tx_desc * sizeof(struct e1000_tx_desc), EM_DBA_ALIGN); @@ -675,6 +745,11 @@ err_hw_init: err_rx_desc: lem_dma_free(adapter, &adapter->txdma); err_tx_desc: +#ifdef NIC_PARAVIRT + lem_dma_free(adapter, &adapter->csb_mem); +err_csb: +#endif /* NIC_PARAVIRT */ + err_pci: if (adapter->ifp != (void *)NULL) if_free_drv(adapter->ifp); @@ -762,6 +837,12 @@ lem_detach(device_t dev) adapter->rx_desc_base = NULL; } +#ifdef NIC_PARAVIRT + if (adapter->csb) { + lem_dma_free(adapter, &adapter->csb_mem); + adapter->csb = NULL; + } +#endif /* NIC_PARAVIRT */ lem_release_hw_control(adapter); free(adapter->mta, M_DEVBUF); EM_TX_LOCK_DESTROY(adapter); @@ -871,6 +952,16 @@ lem_start_locked(if_t ifp) } if (adapter->num_tx_desc_avail <= EM_TX_OP_THRESHOLD) if_setdrvflagbits(ifp, IFF_DRV_OACTIVE, 0); +#ifdef NIC_PARAVIRT + if (if_getdrvflags(ifp) & IFF_DRV_OACTIVE && adapter->csb && + adapter->csb->guest_csb_on && + !(adapter->csb->guest_need_txkick & 1)) { + adapter->csb->guest_need_txkick = 1; + adapter->guest_need_kick_count++; + // XXX memory barrier + lem_txeof(adapter); // XXX possibly clear IFF_DRV_OACTIVE + } +#endif /* NIC_PARAVIRT */ return; } @@ -1716,6 +1807,37 @@ lem_xmit(struct adapter *adapter, struct mbuf **m_headp) */ bus_dmamap_sync(adapter->txdma.dma_tag, adapter->txdma.dma_map, BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE); + +#ifdef NIC_PARAVIRT + if (adapter->csb) { + adapter->csb->guest_tdt = i; + /* XXX memory barrier ? */ + if (adapter->csb->guest_csb_on && + !(adapter->csb->host_need_txkick & 1)) { + /* XXX maybe useless + * clean the ring. maybe do it before ? + * maybe a little bit of histeresys ? + */ + if (adapter->num_tx_desc_avail <= 64) {// XXX + lem_txeof(adapter); + } + return (0); + } + } +#endif /* NIC_PARAVIRT */ + +#ifdef NIC_SEND_COMBINING + if (adapter->sc_enable) { + if (adapter->shadow_tdt & MIT_PENDING_INT) { + /* signal intr and data pending */ + adapter->shadow_tdt = MIT_PENDING_TDT | (i & 0xffff); + return (0); + } else { + adapter->shadow_tdt = MIT_PENDING_INT; + } + } +#endif /* NIC_SEND_COMBINING */ + if (adapter->hw.mac.type == e1000_82547 && adapter->link_duplex == HALF_DUPLEX) lem_82547_move_tail(adapter); @@ -1959,6 +2081,20 @@ lem_local_timer(void *arg) lem_smartspeed(adapter); +#ifdef NIC_PARAVIRT + /* recover space if needed */ + if (adapter->csb && adapter->csb->guest_csb_on && + (adapter->watchdog_check == TRUE) && + (ticks - adapter->watchdog_time > EM_WATCHDOG) && + (adapter->num_tx_desc_avail != adapter->num_tx_desc) ) { + lem_txeof(adapter); + /* + * lem_txeof() normally (except when space in the queue + * runs low XXX) cleans watchdog_check so that + * we do not hung. + */ + } +#endif /* NIC_PARAVIRT */ /* * We check the watchdog: the time since * the last TX descriptor was cleaned. @@ -2643,10 +2779,10 @@ lem_setup_transmit_structures(struct adapter *adapter) uint64_t paddr; void *addr; - addr = PNMB(slot + si, &paddr); + addr = PNMB(na, slot + si, &paddr); adapter->tx_desc_base[i].buffer_addr = htole64(paddr); /* reload the map for netmap mode */ - netmap_load_map(adapter->txtag, tx_buffer->map, addr); + netmap_load_map(na, adapter->txtag, tx_buffer->map, addr); } #endif /* DEV_NETMAP */ tx_buffer->next_eop = -1; @@ -3021,6 +3157,16 @@ lem_txeof(struct adapter *adapter) adapter->next_tx_to_clean = first; adapter->num_tx_desc_avail = num_avail; +#ifdef NIC_SEND_COMBINING + if ((adapter->shadow_tdt & MIT_PENDING_TDT) == MIT_PENDING_TDT) { + /* a tdt write is pending, do it */ + E1000_WRITE_REG(&adapter->hw, E1000_TDT(0), + 0xffff & adapter->shadow_tdt); + adapter->shadow_tdt = MIT_PENDING_INT; + } else { + adapter->shadow_tdt = 0; // disable + } +#endif /* NIC_SEND_COMBINING */ /* * If we have enough room, clear IFF_DRV_OACTIVE to * tell the stack that it is OK to send packets. @@ -3028,6 +3174,12 @@ lem_txeof(struct adapter *adapter) */ if (adapter->num_tx_desc_avail > EM_TX_CLEANUP_THRESHOLD) { if_setdrvflagbits(ifp, 0, IFF_DRV_OACTIVE); +#ifdef NIC_PARAVIRT + if (adapter->csb) { // XXX also csb_on ? + adapter->csb->guest_need_txkick = 2; /* acked */ + // XXX memory barrier + } +#endif /* NIC_PARAVIRT */ if (adapter->num_tx_desc_avail == adapter->num_tx_desc) { adapter->watchdog_check = FALSE; return; @@ -3213,8 +3365,8 @@ lem_setup_receive_structures(struct adapter *adapter) uint64_t paddr; void *addr; - addr = PNMB(slot + si, &paddr); - netmap_load_map(adapter->rxtag, rx_buffer->map, addr); + addr = PNMB(na, slot + si, &paddr); + netmap_load_map(na, adapter->rxtag, rx_buffer->map, addr); /* Update descriptor */ adapter->rx_desc_base[i].buffer_addr = htole64(paddr); continue; @@ -3413,7 +3565,23 @@ lem_rxeof(struct adapter *adapter, int count, int *done) int i, rx_sent = 0; struct e1000_rx_desc *current_desc; +#ifdef BATCH_DISPATCH + struct mbuf *mh = NULL, *mt = NULL; +#endif /* BATCH_DISPATCH */ +#ifdef NIC_PARAVIRT + int retries = 0; + struct paravirt_csb* csb = adapter->csb; + int csb_mode = csb && csb->guest_csb_on; + + //ND("clear guest_rxkick at %d", adapter->next_rx_desc_to_check); + if (csb_mode && csb->guest_need_rxkick) + csb->guest_need_rxkick = 0; +#endif /* NIC_PARAVIRT */ EM_RX_LOCK(adapter); + +#ifdef BATCH_DISPATCH + batch_again: +#endif /* BATCH_DISPATCH */ i = adapter->next_rx_desc_to_check; current_desc = &adapter->rx_desc_base[i]; bus_dmamap_sync(adapter->rxdma.dma_tag, adapter->rxdma.dma_map, @@ -3426,19 +3594,45 @@ lem_rxeof(struct adapter *adapter, int count, int *done) } #endif /* DEV_NETMAP */ +#if 1 // XXX optimization ? if (!((current_desc->status) & E1000_RXD_STAT_DD)) { if (done != NULL) *done = rx_sent; EM_RX_UNLOCK(adapter); return (FALSE); } +#endif /* 0 */ while (count != 0 && if_getdrvflags(ifp) & IFF_DRV_RUNNING) { struct mbuf *m = NULL; status = current_desc->status; - if ((status & E1000_RXD_STAT_DD) == 0) + if ((status & E1000_RXD_STAT_DD) == 0) { +#ifdef NIC_PARAVIRT + if (csb_mode) { + /* buffer not ready yet. Retry a few times before giving up */ + if (++retries <= adapter->rx_retries) { + continue; + } + if (csb->guest_need_rxkick == 0) { + // ND("set guest_rxkick at %d", adapter->next_rx_desc_to_check); + csb->guest_need_rxkick = 1; + // XXX memory barrier, status volatile ? + continue; /* double check */ + } + } + /* no buffer ready, give up */ +#endif /* NIC_PARAVIRT */ break; + } +#ifdef NIC_PARAVIRT + if (csb_mode) { + if (csb->guest_need_rxkick) + // ND("clear again guest_rxkick at %d", adapter->next_rx_desc_to_check); + csb->guest_need_rxkick = 0; + retries = 0; + } +#endif /* NIC_PARAVIRT */ mp = adapter->rx_buffer_area[i].m_head; /* @@ -3563,11 +3757,36 @@ discard: bus_dmamap_sync(adapter->rxdma.dma_tag, adapter->rxdma.dma_map, BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE); +#ifdef NIC_PARAVIRT + if (csb_mode) { + /* the buffer at i has been already replaced by lem_get_buf() + * so it is safe to set guest_rdt = i and possibly send a kick. + * XXX see if we can optimize it later. + */ + csb->guest_rdt = i; + // XXX memory barrier + if (i == csb->host_rxkick_at) + E1000_WRITE_REG(&adapter->hw, E1000_RDT(0), i); + } +#endif /* NIC_PARAVIRT */ /* Advance our pointers to the next descriptor. */ if (++i == adapter->num_rx_desc) i = 0; /* Call into the stack */ if (m != NULL) { +#ifdef BATCH_DISPATCH + if (adapter->batch_enable) { + if (mh == NULL) + mh = mt = m; + else + mt->m_nextpkt = m; + mt = m; + m->m_nextpkt = NULL; + rx_sent++; + current_desc = &adapter->rx_desc_base[i]; + continue; + } +#endif /* BATCH_DISPATCH */ adapter->next_rx_desc_to_check = i; EM_RX_UNLOCK(adapter); if_input(ifp, m); @@ -3578,10 +3797,27 @@ discard: current_desc = &adapter->rx_desc_base[i]; } adapter->next_rx_desc_to_check = i; +#ifdef BATCH_DISPATCH + if (mh) { + EM_RX_UNLOCK(adapter); + while ( (mt = mh) != NULL) { + mh = mh->m_nextpkt; + mt->m_nextpkt = NULL; + if_input(ifp, mt); + } + EM_RX_LOCK(adapter); + i = adapter->next_rx_desc_to_check; /* in case of interrupts */ + if (count > 0) + goto batch_again; + } +#endif /* BATCH_DISPATCH */ /* Advance the E1000's Receive Queue #0 "Tail Pointer". */ if (--i < 0) i = adapter->num_rx_desc - 1; +#ifdef NIC_PARAVIRT + if (!csb_mode) /* filter out writes */ +#endif /* NIC_PARAVIRT */ E1000_WRITE_REG(&adapter->hw, E1000_RDT(0), i); if (done != NULL) *done = rx_sent; diff --git a/sys/dev/ep/if_ep.c b/sys/dev/ep/if_ep.c index 863c545..74c6a86 100644 --- a/sys/dev/ep/if_ep.c +++ b/sys/dev/ep/if_ep.c @@ -343,7 +343,9 @@ ep_attach(struct ep_softc *sc) EP_FSET(sc, F_RX_FIRST); sc->top = sc->mcur = 0; + EP_LOCK(sc); epstop(sc); + EP_UNLOCK(sc); return (0); } @@ -1000,6 +1002,9 @@ epwatchdog(struct ep_softc *sc) static void epstop(struct ep_softc *sc) { + + EP_ASSERT_LOCKED(sc); + CSR_WRITE_2(sc, EP_COMMAND, RX_DISABLE); CSR_WRITE_2(sc, EP_COMMAND, RX_DISCARD_TOP_PACK); EP_BUSY_WAIT(sc); diff --git a/sys/dev/hptnr/README b/sys/dev/hptnr/README index 0423e5d..150994a 100644 --- a/sys/dev/hptnr/README +++ b/sys/dev/hptnr/README @@ -1,10 +1,19 @@ Rocket Controller Driver for FreeBSD -Copyright (C) 2013 HighPoint Technologies, Inc. All rights reserved. +Copyright (C) 2014 HighPoint Technologies, Inc. All rights reserved. ############################################################################# Revision History: + v1.0.1 2014-8-19 + * Do not retry the command and reset the disk when failed to enable or + disable spin up feature. + * Fix up a bug that disk failed to probe if driver failed to access the + 10th LBA. + * Fix a bug that request timeout but it has been completed in certain + cases. + * Support smartmontool for R750. + v1.0 2013-7-3 - First source code release + *First source code release ############################################################################# @@ -40,7 +49,7 @@ Revision History: 2) Extract the driver files under the kernel source tree: # cd /usr/src/sys/ - # tar xvzf /your/path/to/hptnr-freebsd-src-v1.0-130701.tgz + # tar xvzf /your/path/to/hptnr_freebsd_src_v1.0.1_14_08_19.tgz 3) Update the kernel configuration file to include the HighPoint source. Assume the configure file is GENERIC, and new kernel configure file is diff --git a/sys/dev/hptnr/amd64-elf.hptnr_lib.o.uu b/sys/dev/hptnr/amd64-elf.hptnr_lib.o.uu index 3c24e2a..4f01b04 100644 --- a/sys/dev/hptnr/amd64-elf.hptnr_lib.o.uu +++ b/sys/dev/hptnr/amd64-elf.hptnr_lib.o.uu @@ -1,5 +1,5 @@ begin 644 hptnr_lib.o -M?T5,1@(!`0D```````````$`/@`!`````````````````````````##R!0`` +M?T5,1@(!`0D```````````$`/@`!`````````````````````````+`#!@`` M`````````$```````$``$``-`(G0Q@<(QD<!$D"$]G0&@$\"!.L$@&<"^X3` M=`:`9PS?ZP2`3PP@N!0```##9F9FD//#9F9FD&9F9I!F9I!F9I!!5T%6055! M5%532(/L&$F)_4F)]DB)U8A,)`=%B<=(BT8P2(E$)!!(QT8P`````$B%P`^% @@ -45,167 +45,167 @@ MP>`P2`G"#[9'04@)P@^V1SQ(P>`H2`G"#[9'/4C!X"!("<(/MD<^2,'@&$@) MP@^V1S](P>`02`G"#[9'0$C!X`A(B=%("<$/ME="P>(8#[9'0\'@$`G"#[9' M10G"#[9'1,'@"`G02(F/B````(F'D````&:#3R(!\\-F9F:0NO____]FA?9T M,4B)^;\`````NO____])Q\``````9I`/M@$QT`^VP,'J"$$S%("#QP%(@\$! -M9CGW=>6)T,-FD%-(@^Q@2(G[1`^V3SM$#[9'.@^V3SD/ME<X#[9'1XE$)%@/ -MMD=&B40D4`^V1T6)1"1(#[9'1(E$)$`/MD=#B40D.`^V1T*)1"0P#[9'08E$ -M)"@/MD=`B40D(`^V1S^)1"08#[9'/HE$)!`/MD<]B40D"`^V1SR)!"1(B?Y( -MQ\<`````N`````#H``````^W<R!(Q\<`````N`````#H`````$B#Q&!;PV9F -M9I!F9F:02(/L"`^V1@&(1P$/MD8"B$<"BT8$B4<$2(M'"`^V5P%(C1122,'B -M`DB+=@A(B<?H`````$B#Q`C#9F9FD&9FD$B+3V`/ME=8N`````!F9I#&!#@` -M2(/``4@]J````'7P2(E/8(A76,-F9F:09F9FD+@`````NO____]F9I!F9I"( -M%#A(@\`!2#T``@``=?'SPV9F9I!F9F:09F9FD&9FD+D`````2#L_=!)(BT\( -M2(L12(M!"$B)0@A(B1!(B<C#2(L/BX$$`0``B<*!XG[__O^)D00!```E?O_R -M_TB+5PB)`DB+5PB)0@Q(BU<(B4(02(M7"(E"%$B+5PB)0AA(BU<(B4($2(L' -MBX!4`0``B04`````)?X`__](BQ>)@E0!``##9F9FD&9FD&9FD&9FD(GQ2(L' -MBY`$`0``B14`````#[='/&8]@&1T#&8]@)%T!F8]@)1U$0^VR8/!"+@!```` -MT^`)PNL00`^VSH/!#+@!````T^`)PDB+!XF0!`$``,-F9F:09F9FD&9FD&9F -MD(GQ2(L'BY`$`0``B14`````#[='/&8]@&1T#&8]@)%T!F8]@)1U$0^VR8/! -M"+C^____T\`APNL00`^VSH/!#+C^____T\`APDB+!XF0!`$``,-F9F:09F9F -MD&9FD&9FD(GQ0(#^_W1O0(#^'W<RB[<8`0``N@$```#3XHG0]]`A\(F'&`$` -M`(N'6`$``(D%`````"'0=$")AU@!``##9I"+MQP!```/ML&#Z""Z`0```(G! -MT^*)T/?0(?")AQP!``"+AV`!``")!0`````AT'0&B8=@`0``\\-F9F:09F:0 -M2(/L*$B)7"0(2(EL)!!,B60D&$R);"0@2(G5B?!,BR]`@/X##X:)````2(T< -MQ0````"!X_@'``!-C:0=``(``$''!"0,`0``OQ`G``#H`````$F-G!T$`@`` -M#[95`\'B&`^V10+!X!`)P@^V10`)P@^V10'!X`@)PHD30<<$)!`!``"_$"<` -M`.@`````#[95!\'B&`^V10;!X!`)P@^V100)P@^V107!X`@)PHD3Z80```!( -MC1S%`````('C^`<``$Z-I"L``@``0<<$)`P!``"_$"<``.@`````2HV<*P0" -M```/ME4#P>(8#[9%`L'@$`G"#[9%``G"#[9%`<'@"`G"B1-!QP0D$`$``+\0 -M)P``Z``````/ME4'P>(8#[9%!L'@$`G"#[9%!`G"#[9%!<'@"`G"B1-(BUPD -M"$B+;"003(MD)!A,BVPD($B#Q"C#2(/L&$B)7"0(3(ED)!!)B?Q`#[;>B=[H -M`````+\0)P``Z`````")WDR)Y^@`````2(M<)`A,BV0D$$B#Q!C#D$%7059! -M54%455-(@^Q828G_B%0D5TB+%X!_/@`/A#P"``!!O`````!!O>#___]!OO#_ -M__]`#[;&2(E$)$A(C8*``0``2(E$)$!(C8J$`0``2(E,)#A(C8*@`0``2(E$ -M)#!(C8JD`0``2(E,)"A(C8)0`@``2(E$)"!(C8I4`@``2(E,)!A(C8+@`0`` -M2(E$)!!(@<+0`0``2(E4)`AF9I!(BT0D2$2)X4C3^*@!#X2-`0``1(GE@_T# -M=A=$B>I(`U0D*(L"B04`````@^#^B0+K&XT4[0````")TD@#5"0XBP*)!0`` -M``"#X/Z)`K\0)P``Z`````"`?"17`'1R@_T#=A=$B?)(`U0D$(L"B04````` -M@\@"B0+K&XT4K0````")TD@#5"0(BP*)!0````"#R`*)`D2)\$B+3"002`'! -MC02M`````(G`2(M4)`A(`<*#_0-V"HL!B04`````ZPB+`HD%`````*@"='3K -MXV:0@_T#=B]$B>M(BT0D($@!V,<``````+\0)P``Z`````!(`UPD&(L#B04` -M````@\@!B0/K08T<[0````")VTB+1"0@2`'8QP``````OQ`G``#H`````$@# -M7"08BP.)!0````"#R`&)`^LW9F9FD&9FD(/]`W8K1(GJ2(M$)#!(`=#'``$` -M``!(`U0D*(L"B04`````@\@!B0+K-F9FD&9FD(T$[0````")P$B+5"1`2`'" -MQP(!````2`-$)#B+$(D5`````(/*`8D09F9FD&9FD$&-5"0!28/$`4&#Q0A! -M@\8$00^V1SXYT`^'0O[__TB#Q%A;74%<05U!7D%?PV9FD%532(/L"(G12(LO -M@_X#=B"-!/7@____B<!(C90%H`$``(L"B04`````@^#^B0+K'HT$]0````") -MP$B-E`6``0``BP*)!0````"#X/Z)`H3)='Z#_@-V((T$M?#___^)P$B-E`7@ -M`0``BP*)!0````"#R`*)`NL>C02U`````(G`2(V4!=`!``"+`HD%`````(/( -M`HD"C12U`````(U"\(G`2(V,!>`!``")TDB-E!70`0``@_X#=@J+`8D%```` -M`.L(BP*)!0````"H`G1UZ^.#_@-V.(T<]>#___^)VTB-A"M0`@``QP`````` -MOQ`G``#H`````$B-G"M4`@``BP.)!0````"#R`&)`^LVC1SU`````(G;2(V$ -M*U`"``#'``````"_$"<``.@`````2(V<*U0"``"+`XD%`````(/(`8D#2(/$ -M"%M=PY"0D)"0D$B)^4B+/P^W@;`2``"#P`%FB8&P$@``9CN!M!(``'()9L>! -ML!(`````#[>!L!(``$C!X`)(`X%H$0``BQ:)$`^W@;`2``")ARP!``##9F:0 -M08G0N`````#&!`@`2(/``4B#^`1U\HGR9H'B_P\/MP%F)0#P"=!FB0$/ME<- -MP>(,BP$E_P_P_PG0B0$/MD<*@^`"2(/X`1G2@^("@\(!P>(%#[9!`X/@'PG0 -M@\@0@^#WB$$#]D<*`7071(G"@^)_P>($#[=!`F8E#_@)T&:)00+SPV9F9I!F -M9F:09F:09F:0N`````#&!#``2(/``4B#^`UU\@^V1SF(!@^V1SJ(1@$/MD<[ -MB$8"#[9'/(A&`P^V1SV(1@0/MD<^B$8%#[9'/XA&!O:'E@````1T(P^V1T"( -M1@@/MD=!B$8)#[9'0HA&"@^V1T.(1@L/MD=$B$8,N`$```##9F9FD&9F9I!F -M9I"Z`````$&Z`````$&Y_____^M2`=)$B<#3^*@!=!+WP@````%U&H'R=R?; -M`.L29I")T#5W)]L`]\(````!#T70@^D!1#G)=<M)@\(!28/Z"'43B=#!Z!"( -M!XG0P>@(B$<!B%<"PT4/M@0RN0<```#KHF9F9I!F9F:09F9FD&9FD$B+AP@1 -M``"+$(M0!(M0"(M`#(D%`````,-F9F:09F:02(/L"$B+AH@```!$#[9'0T6$ -MP'0B#[90#;D`````]L(!=`SK$DB)T$C3^*@!=0B#P0%$.,%U[L9&0@SH```` -M`$B#Q`C#9F9FD&9F9I!F9I!(@^P(2(GX2(L_9L=`3@$`QD!"'4B)QN@````` -M2(/$",-F9F:09F9FD&9F9I!F9I!(@^P(2(L_#[?V2,'F`T@#M[`)``!(BS9( -MA?9T/4B+%P^W1C)FP>@%#[?`C02%``,``(F"<`$``$B+%P^W3C*#X1^X`0`` -M`$C3X(F"=`$``+H`````Z`````!(@\0(PY!!5T%6055!5%532(/L"$B)_4F) -M]H!_0P!T);D`````]D8-`70.ZQA!#[9C3^*@!=0R#P0$/MD5#9CG(=^A) -MBT9`2(7`=!Q(C;"0````2(M]*.@`````28MV0$B)[^@`````28U&8$DY1F`/ -MA%P!``!)B<=,B?_H`````$B)PTB#>$``#X0I`0``@+B#``````^$H@```&:# -M?6@`#X27````0;T`````0;P`````D$B+A;`)``!,`>!(BS!(A?9T8P^W1B!F -M.T,X=5EF/84`=U,/M\"`O`5@"```_W1&2(M5``^W1C)FP>@%#[?`C02%``,` -M`(F"<`$``$B+50`/MTXR@^$?N`$```!(T^")@G0!``#&1B0AN@````!(B>_H -M`````$&#Q0%)@\0(#[=%:$0YZ`^/=O___TB+0T!(QT!@`````/9#3`1U&4B) -M[^@`````2(MS0+H!````2(GOZ`````!(BT-`#[90`@^V<`%(Q\<`````N``` -M``#H`````$B+4T!(B[7P"```OP$```#H`````$B+4T!(B[7P"```OP8```#H -M`````$C'0T``````08!N#@%(B=Y(B>_H`````$TY?F`/A:?^__])QT9````` -M`$B+10"+B%@!``")#0````"%R70*2(M%`(F(6`$``$B#Q`A;74%<05U!7D%? -MPV9F9I!F9I!F9I!F9I!(@^P(3(L'00^V<$-`A/9T-4F-@+@2``"Y`````$@Y -M^'4:ZR(/ML%(C11`2(T4D$F-E-"X$@``2#GZ=`^#P0%`./%UX.L%N0`````/ -MML%(C11`2(T4D$B-!-4`````28NT`,`2``!(A?9T??9&"@)T=TF-A`"X$@`` -M2#E&('5I#[9&6(3`=`B#P`&(1ECK64B+5DA(@^HX2(U.2$B-0CA(.<AT1$B# -M>A``=2SK"F9FD$B#>A``=2#&1E@!#[:*NP```$F+N+`0``!)Q\``````Z``` -M``#K$4B+4CA(@^HX2(U".$@YR'7(2(/$",-F9I!(@^PH2(E<)`A(B6PD$$R) -M9"083(EL)"!(B?M(B?5(BT9P3(MH*`^W5B!F@?J%`'=T#[?"#[:$!V`(```\ -M_W1E9H/Z?W<<#[;`2(N7.`D``$AIP)@!``!(BT004`^V0`CK2&:!^H$`=QP/ -MML!(BY>("0``2&G`R`\``$B+1!`(#[9`".LE#[;`2(N78`D``$B-!,!(P>`% -M2(N$$(@````/MD`(ZP6X_P```$B81`^VI`/F"```2(MU>$B%]G0(2(G?Z``` -M``!(B>Y(B=_H`````$$/ML1(C3R`2(T\N$B-O/O``0``3(GN0?^5H````$B+ -M7"0(2(ML)!!,BV0D&$R+;"0@2(/$*,-F9F:09F9FD$%455-(B?5(B=-F@7XX -MX0%U$0^V1CJ#Z!%!O``````\`78O2(L72(NZ.`D```^W12"^:)8!`&8]A0!W -M$@^WP`^VA`)@"```2&GPF`$``$R-)#?&0P0%@&,%_H`CW[@`````9H%]..$! -M=18/MD4Z@^@!/`$/EL`/ML!F9F:09F:0P>`'#[83@^)_"<*($P^VA98```"# +M9CGW=>6)T,-FD$B#[&A$#[9/.T0/MD<Z#[9/.0^V5S@/MD='B40D6`^V1T:) +M1"10#[9'18E$)$@/MD=$B40D0`^V1T.)1"0X#[9'0HE$)#`/MD=!B40D*`^V +M1T")1"0@#[9'/XE$)!@/MD<^B40D$`^V1SV)1"0(#[9'/(D$)$B)_DC'QP`` +M``"X`````.@`````2(/$:,-FD$B#[`@/MD8!B$<!#[9&`HA'`HM&!(E'!$B+ +M1P@/ME<!2(T44DC!X@)(BW8(2(G'Z`````!(@\0(PV9F9I!F9I!(BT]@#[97 +M6+@`````9F:0Q@0X`$B#P`%(/:@```!U\$B)3V"(5UC#9F9FD&9F9I"X```` +M`+K_____9F:09F:0B!0X2(/``4@]``(``'7Q\\-F9F:09F9FD&9F9I!F9I"Y +M`````$@[/W022(M/"$B+$4B+00A(B4((2(D02(G(PTB+#XN!!`$``(G"@>)^ +M__[_B9$$`0``)7[_\O](BU<(B0)(BU<(B4(,2(M7"(E"$$B+5PB)0A1(BU<( +MB4(82(M7"(E"!$B+!XN`5`$``(D%`````"7^`/__2(L7B8)4`0``PV9F9I!F +M9I!F9I!F9I")\4B+!XN0!`$``(D5``````^W1SQF/8!D=`QF/8"1=`9F/8"4 +M=1$/MLF#P0BX`0```-/@"<+K$$`/MLZ#P0RX`0```-/@"<)(BP>)D`0!``## +M9F9FD&9F9I!F9I!F9I")\4B+!XN0!`$``(D5``````^W1SQF/8!D=`QF/8"1 +M=`9F/8"4=1$/MLF#P0BX_O___]/`(<+K$$`/MLZ#P0RX_O___]/`(<)(BP>) +MD`0!``##9F9FD&9F9I!F9I!F9I")\4"`_O]T;T"`_A]W,HNW&`$``+H!```` +MT^*)T/?0(?")AQ@!``"+AU@!``")!0`````AT'1`B8=8`0``PV:0B[<<`0`` +M#[;!@^@@N@$```")P=/BB=#WT"'PB8<<`0``BX=@`0``B04`````(=!T!HF' +M8`$``//#9F9FD&9FD$B#["A(B5PD"$B);"003(ED)!A,B6PD($B)U8GP3(LO +M0(#^`P^&B0```$B-',4`````@>/X!P``38VD'0`"``!!QP0D#`$``+\0)P`` +MZ`````!)C9P=!`(```^V50/!XA@/MD4"P>`0"<(/MD4`"<(/MD4!P>`("<*) +M$T''!"00`0``OQ`G``#H``````^V50?!XA@/MD4&P>`0"<(/MD4$"<(/MD4% +MP>`("<*)$^F$````2(T<Q0````"!X_@'``!.C:0K``(``$''!"0,`0``OQ`G +M``#H`````$J-G"L$`@``#[95`\'B&`^V10+!X!`)P@^V10`)P@^V10'!X`@) +MPHD30<<$)!`!``"_$"<``.@`````#[95!\'B&`^V10;!X!`)P@^V100)P@^V +M107!X`@)PHD32(M<)`A(BVPD$$R+9"083(ML)"!(@\0HPTB#[!A(B5PD"$R) +M9"0028G\0`^VWHG>Z`````"_$"<``.@`````B=Y,B>?H`````$B+7"0(3(MD +M)!!(@\08PY!!5T%6055!5%532(/L6$F)_XA4)%=(BQ>`?SX`#X0\`@``0;P` +M````0;W@____0;[P____0`^VQDB)1"1(2(V"@`$``$B)1"1`2(V*A`$``$B) +M3"0X2(V"H`$``$B)1"0P2(V*I`$``$B)3"0H2(V"4`(``$B)1"0@2(V*5`(` +M`$B)3"082(V"X`$``$B)1"002('"T`$``$B)5"0(9F:02(M$)$A$B>%(T_BH +M`0^$C0$``$2)Y8/]`W871(GJ2`-4)"B+`HD%`````(/@_HD"ZQN-%.T````` +MB=)(`U0D.(L"B04`````@^#^B0*_$"<``.@`````@'PD5P!T<H/]`W871(GR +M2`-4)!"+`HD%`````(/(`HD"ZQN-%*T`````B=)(`U0D"(L"B04`````@\@" +MB0)$B?!(BTPD$$@!P8T$K0````")P$B+5"0(2`'"@_T#=@J+`8D%`````.L( +MBP*)!0````"H`G1TZ^-FD(/]`W8O1(GK2(M$)"!(`=C'``````"_$"<``.@` +M````2`-<)!B+`XD%`````(/(`8D#ZT&-'.T`````B=M(BT0D($@!V,<````` +M`+\0)P``Z`````!(`UPD&(L#B04`````@\@!B0/K-V9F9I!F9I"#_0-V*T2) +MZDB+1"0P2`'0QP`!````2`-4)"B+`HD%`````(/(`8D"ZS9F9I!F9I"-!.T` +M````B<!(BU0D0$@!PL<"`0```$@#1"0XBQ")%0````"#R@&)$&9F9I!F9I!! +MC50D`4F#Q`%!@\4(08/&!$$/MD<^.=`/AT+^__](@\186UU!7$%=05Y!7\-F +M9I!54TB#[`B)T4B++X/^`W8@C03UX/___XG`2(V4!:`!``"+`HD%`````(/@ +M_HD"ZQZ-!/4`````B<!(C90%@`$``(L"B04`````@^#^B0*$R71^@_X#=B"- +M!+7P____B<!(C90%X`$``(L"B04`````@\@"B0+K'HT$M0````")P$B-E`70 +M`0``BP*)!0````"#R`*)`HT4M0````"-0O")P$B-C`7@`0``B=)(C905T`$` +M`(/^`W8*BP&)!0````#K"(L"B04`````J`)T=>OC@_X#=CB-'/7@____B=M( +MC80K4`(``,<``````+\0)P``Z`````!(C9PK5`(``(L#B04`````@\@!B0/K +M-HT<]0````")VTB-A"M0`@``QP``````OQ`G``#H`````$B-G"M4`@``BP.) +M!0````"#R`&)`TB#Q`A;7<.0D)"0D)!(B?E(BS\/MX&P$@``@\`!9HF!L!(` +M`&8[@;02``!R"6;'@;`2``````^W@;`2``!(P>`"2`.!:!$``(L6B1`/MX&P +M$@``B8<L`0``PV9FD$&)T+@`````Q@0(`$B#P`%(@_@$=?*)\F:!XO\/#[<! +M9B4`\`G09HD!#[97#<'B#(L!)?\/\/\)T(D!#[9'"H/@`DB#^`$9TH/B`H/" +M`<'B!0^V00.#X!\)T(/($(/@]XA!`_9'"@%T%T2)PH/B?\'B!`^W00)F)0_X +M"=!FB4$"\\-F9F:09F9FD&9FD&9FD+@`````Q@0P`$B#P`%(@_@-=?(/MD<Y +MB`8/MD<ZB$8!#[9'.XA&`@^V1SR(1@,/MD<]B$8$#[9'/HA&!0^V1S^(1@;V +MAY8````$=",/MD=`B$8(#[9'08A&"0^V1T*(1@H/MD=#B$8+#[9'1(A&#+@! +M````PV9F9I!F9F:09F:0N@````!!N@````!!N?_____K4@'21(G`T_BH`702 +M]\(````!=1J!\G<GVP#K$F:0B=`U=R?;`/?"`````0]%T(/I`40YR77+28/" +M`4F#^@AU$XG0P>@0B`>)T,'H"(A'`8A7`L-%#[8$,KD'````ZZ)F9F:09F9F +MD&9F9I!F9I!(BX<($0``BQ"+4`2+4`B+0`R)!0````##9F9FD&9FD$B#[`A( +MBX:(````1`^V1T-%A,!T(@^V4`VY`````/;"`70,ZQ)(B=!(T_BH`74(@\$! +M1#C!=>[&1D(,Z`````!(@\0(PV9F9I!F9F:09F:02(/L"$B)^$B+/V;'0$X! +M`,9`0AU(B<;H`````$B#Q`C#9F9FD&9F9I!F9F:09F:02(/L"$B+/P^W]DC! +MY@-(`[>P"0``2(LV2(7V=#U(BQ</MT8R9L'H!0^WP(T$A0`#``")@G`!``!( +MBQ</MTXR@^$?N`$```!(T^")@G0!``"Z`````.@`````2(/$",.005=!5D%5 +M05154TB#[`A(B?M)B?:`?T,`="6Y`````/9�%T#NL800^V1@U(T_BH`74, +M@\$!#[9#0V8YR'?H28M&0$B%P'0<2(VPD````$B+>RCH`````$F+=D!(B=_H +M`````$F-1F!).49@#X1S`0``28G'3(G_Z`````!(B<5(@WA```^$0`$``("X +M@P`````/A*````!F@WMH``^$E0```$&]`````$&\`````)!(BX.P"0``3`'@ +M2(LP2(7V=&$/MT8@9CM%.'579CV%`'=1#[?`@+P#8`@``/]T1$B+$P^W1C)F +MP>@%#[?`C02%``,``(F"<`$``$B+$P^W3C*#X1^X`0```$C3X(F"=`$``,9& +M)"&Z`````$B)W^@`````08/%`4F#Q`@/MT-H1#GH#X]X____2(M%0$C'0&`` +M````]D5,!'492(G?Z`````!(BW5`N@$```!(B=_H`````$B+54`/MH+,```` +MC02`#[92`@'02)@/MH@`````#[93.@^V<SE(Q\<`````N`````#H`````$B+ +M54!(B[/P"```OP$```#H`````$B+54!(B[/P"```OP8```#H`````$C'14`` +M````08!N#@%(B>Y(B=_H`````$TY?F`/A9#^__])QT9``````$B+`XN(6`$` +M`(D-`````(7)=`E(BP.)B%@!``!(@\0(6UU!7$%=05Y!7\-F9F:09F9FD$B# +M[`A,BP=!#[9P0T"$]G0U28V`N!(``+D`````2#GX=1KK(@^VP4B-%$!(C120 +M28V4T+@2``!(.?IT#X/!`4`X\77@ZP6Y``````^VP4B-%$!(C1202(T$U0`` +M``!)B[0`R!(``$B%]G1]]D8*`G1W28V$`+@2``!(.48@=6D/MD98A,!T"(/` +M`8A&6.M92(M62$B#ZCA(C4Y(2(U".$@YR'1$2(-Z$`!U+.L*9F:02(-Z$`!U +M(,9&6`$/MHJ[````28NXL!```$G'P`````#H`````.L12(M2.$B#ZCA(C4(X +M2#G(=<A(@\0(PV9FD$B#["A(B5PD"$B);"003(ED)!A,B6PD($B)^TB)]4B+ +M1G!,BV@H#[=.(&:!^84`=W\/M\$/MH0'8`@``#S_='!F@_E_=R$/MM!(BX\X +M"0``2(T$4DB-!()(P>`%2(M$"%`/MD`(ZTYF@?F!`'<<#[;`2(N7B`D``$AI +MP,@/``!(BT00"`^V0`CK*P^VP$B+EV`)``!(C03`2,'@!4B+A!"(````#[9` +M".L+9F:09F:0N/\```!(F$0/MJ0#Y@@``$B+=7A(A?9T"$B)W^@`````2(GN +M2(G?Z`````!!#[;$2(T\@$B-/+A(C;S[P`$``$R)[D'_E:````!(BUPD"$B+ +M;"003(MD)!A,BVPD($B#Q"C#9F9FD&9FD&9FD&9FD$%455-(B?5(B=-F@7XX +MX0%U$0^V1CJ#Z!%!O``````\`78T2(LW2(N^.`D```^W12"Z8)X!`&8]A0!W +M%P^WP`^VA`9@"```2(T40$B-%)!(P>(%3(TD%\9#!`6`8P7^@"/?N`````!F +M@7TXX0%U$0^V13J#Z`$\`0^6P`^VP&:0P>`'#[83@^)_"<*($P^VA98```"# MX`'!X`:#XK\)PH@3]H66`````70.3(GGZ`````!FB4,(ZP1FB4L(#[=#"(A% M)6:!?3CA`74E#[95.HU"_SP!=PH/ME4[@^(/ZRJ0C4+ON@\````\`78=9F9F MD+H`````28-\)&``=`Q!#[:4)($```"#X@\/M@.#X/`)T(@#6UU!7,-F9F:0 M9F9FD$B#[#A(B5PD"$B);"003(ED)!A,B6PD($R)="0H3(E\)#!)B?Q(B?-) MB=</MD8X/`AT#SPH=`L\J'0'/(AF9I!U#H.+E`````KK)69FD&:0/`IT#CPJ M=`H\JG0&/(IFD'4.@XN4`````F9F9I!F9I`/MWLX9H'_X0%U'`^V0SJ#Z!$\ -M`7<1@XN4````"+@`````Z2D%``!$BT,X08'@____`$&!^.$!$``/A>$````/ -MMU,@9H'ZA0`/A]($```/M\)!#[:,!&`(``")R(#Y_W1F9H/Z?W<=#[;!28N4 -M)#@)``!(:<"8`0``2(M$$%`/MD`(ZT-F@?J!`'<=#[;!28N4)(@)``!(:<#( -M#P``2(M$$`@/MD`(ZQ\/ML%)BY0D8`D``$B-!,!(P>`%2(N$$(@````/MD`( -M#[;`00^VA`3F"```2(T4@$B-%)!)C;34P`$``$F+E"2("0``#[;!2&G`R`\` -M`$&]`````/9$`ET0#X5*`@``QD,D!$''!P````"X`0```.DU!```9F:09I`/ -MMU,@N?\```"X_____V:!^H4`#X=]````#[?"00^VC`1@"```B<B`^?]T9V:# -M^G]W'@^VP4F+E"0X"0``2&G`F`$``$B+1!!0#[9`".M$D&:!^H$`=QT/ML%) -MBY0DB`D``$AIP,@/``!(BT00"`^V0`CK'P^VP4F+E"1@"0``2(T$P$C!X`5( -MBX00B`````^V0`@/MLE$#[;P26/&00^VK`3F"```2(U$K0!(C42%`$F-M,3` -M`0``#[?!2&G`F`$``$F)Q4T#K"0X"0``9H'_X0%U#`^V0SJ#Z`$\`78DD&:! -M^?\`=`=!]D5+!'45QD,D!D''!P````"X`0```.DM`P``00^V54B)T8/A`70C -M]L($=!Y!#[9$)$1!.D0D3G(10<<'`0```+@!````Z?X"``!-A>T/A/4```"% -MR69FD`^$Z@```/;"!`^$X0```$B)WDR)[^@`````A,!U%<9#)`1!QP<````` -MN`$```#IO0(``$&`O8,````?=A%!QP<!````N`$```#IH@(``/:#E@````%T -M%TB-1*T`2(U$A0!!]H3$S`$```%T&^M?2(U$K0!(C42%`$'VA,3,`0```0^$ -MN@$``$2)]DR)Y^@`````A,!T$4''!P$```"X`0```.E)`@``]H.6`````0^$ -MC0$``$B-1*T`2(U$A0!!]H3$S`$```$/A'0!``!,B>_H`````&:#^!\/AF(! -M``!!QP<!````N`$```#I``(``/9&"@)T,D&!^.$!$`!F9I`/A#L!``!!#[:% -M@P```$$ZA8(```!R'D''!P$```"X`0```.G(`0``08'XX0$0``^$#`$``$$/ -MMT5J@'LXX0^%_0```(![.0$/A?,```!(T>A(B<*#X@$/MD,Z@^@&/`D/A\8` -M```/ML#_),4`````0;@!````N0$```!(B=I,B>Y,B>?H`````(3`#X6P```` -M0<<'`@```+@!````Z4X!``!!N`$```"Y`````$B)VDR)[DR)Y^@`````A,`/ -MA7X```!!QP<"````N`$```#I'`$```^VRD&X`0```$B)VDR)[DR)Y^@````` -MA,!U4D''!P(```"X`0```.GP````#[;*0;@`````2(G:3(GN3(GGZ`````"$ -MP'4F0<<'`@```+@!````Z<0```#&0R0$0<<'`````+@!````Z:\```!)C;PD -MH`\``.@`````A,!T$4''!P$```"X`0```.F-````@'LXX75.@'LY`69FD'5% -M@'LZ#W4_@'L]`69F9I!U-0^V<SS!Y@@/MD,[`<8/M_9,B>?H`````$@[0VAU -M!4B%P'42QD,D!$''!P````"X`0```.LYN`````#K,F:000^VA"3E"0``2(T4 -M@$B-%)!)C;34P`$``$F+E"2("0``N#BX#P#IJOO__V9FD&:02(M<)`A(BVPD -M$$R+9"083(ML)"!,BW0D*$R+?"0P2(/$.,-F9F:09F:09F:09F:02(/L"$B+ -M/^@`````2(/$",-F9F:09F9FD&9F9I!F9I!!5T%6055!5%532(/L6$F)_4B) -M]4B+GS@1``!FQT8R_P](C50D+.@`````A,!T"8M$)"SI#0L``(M%."7___\` -M/>$!$``/A=L```"_B!,``.@`````#[=5(&:!^H4`#X>X"@``#[?"00^VC`5@ -M"```B<B`^?]T8V:#^G]W'`^VP4F+E3@)``!(:<"8`0``2(M$$%`/MD`(ZT%F -M@?J!`'<<#[;!28N5B`D``$AIP,@/``!(BT00"`^V0`CK'@^VP4F+E6`)``!( -MC03`2,'@!4B+A!"(````#[9`"`^VP$$/MH0%Y@@``$B-%(!(C12038VTU<`! -M``!)BY6("0``#[;!2&G`R`\``$@!PDB)5"002,=$)`@`````2,=$)!@````` -MZ6@!```/MU4@N?\```!F@?J%`'<,#[?"00^VC`5@"```#[=U.&:!_N$!=0\/ -MMD4Z@^@1/`$/AKP```!F@?J%`'=U#[?"00^VA`5@"```//]T96:#^G]W'`^V -MP$F+E3@)``!(:<"8`0``2(M$$%`/MD`(ZTAF@?J!`'<<#[;`28N5B`D``$AI -MP,@/``!(BT00"`^V0`CK)0^VP$F+E6`)``!(C03`2,'@!4B+A!"(````#[9` -M".L%N/____\/ML!!#[:$!>8(``!(C12`2(T4D$V-M-7``0``#[?!2&G`F`$` -M`$D#A3@)``!(B40D"&:!_N$!=4;K,@^WP4B-!,!(P>`%20.%8`D``$B)1"08 -M3(NPB````$C'1"0(`````$C'1"00`````.M$#[95.HU"[SP!=B>-0O\\`78@ -M9H'Y_P!T"TB+1"0(]D!+!'4.QD4D!K@`````Z<D(``!(QT0D$`````!(QT0D -M&`````!(C70D2$R)[^@`````08G'9HE%,DR)[^@`````28G$N`(```!-A>0/ -MA(H(``!,B:6`````00^WUTB)%"1(:<*P!```2(T<&$B-0R!)*X4X$0``20.% -M0!$``$B+5"1(B4(@2,'H($B+5"1(B4(D28M$)!A(BU0D2(E"*$C!Z"!(BU0D -M2(E"+$B+1"1(9D2)>`BX`````,8$&`!(@\`!2#VP!```=?!F@7TXX0%U50^V -M13J#Z!$\`7=*2(U,)#!(BT0D2`^V4`A(B>Y(BWPD".@`````2(V#(`0``$DK -MA3@1``!)`X5`$0``2(M4)$B)0A!(P>@@2(M4)$B)0A3I/@$``)!!#[96"O;" -M`74LBT4X)?___P`]X0$0``^$S0```$B+3"0(#[9!2*@!#X2\````J`0/A+0` -M``#VA98````@=`](C70D,$B)[^@`````ZQM(C4PD,$B+1"1(#[90"$B)[DB+ -M?"0(Z`````!(C8,@!```22N%.!$``$D#A4`1``!(BU0D2(E"$$C!Z"!(BU0D -M2(E"%&:!?3CA`74/#[9%.H/H$3P!#X:4````2(M$)`@/ME!(2(G0@^`&2(/X -M!G5_]L(!='I(B=A)*X4X$0``20.%0!$``$B+5"1(B4(82,'H($B+5"1(B4(< -MZU/VP@)T3DB)V$DKA3@1``!)`X5`$0``2(M4)$B)0AA(P>@@2(M4)$B)0AQ( -MC8,@!```22N%.!$``$D#A4`1``!(BU0D2(E"$$C!Z"!(BU0D2(E"%$B+1"1( -M@$@!`@^V55E(BT0D2&:)4`*`?5D`=#._`````(GX2(T$0$C!X`))BW0D$$B+ -M36!(BQ0(2(D4!HM4"`B)5`8(@\<!#[9%63GX=]*+531(BT0D2(E0#&:!?3CA -M`75!#[9%.H/H$3P!=S9!#[?/2(M4)$A(B>Y,B??H`````$B-3"0P2(G:2(GN -M3(GWZ`````!!@&8,_NF-!```9F:09I!!#[9&"J@"#X0B!```2(M$)$C&0`;^ -M2(M$)$B`8`?^2(-\)`@`#X2X````2(M,)`@/ME%(2(G0@^`&2(/X!@^%GP`` +M`7<1@XN4````"+@`````Z4D%``!$BT,X08'@____`$&!^.$!$``/A>8````/ +MMTL@9H'YA0`/A_($```/M\%!#[:\!&`(``")^$"`__]T;F:#^7]W(T`/MM=) +MBXPD.`D``$B-!%)(C02"2,'@!4B+1`A0#[9`".M%9H'Y@0!W'D`/ML=)BY0D +MB`D``$AIP,@/``!(BT00"`^V0`CK($`/ML=)BY0D8`D``$B-!,!(P>`%2(N$ +M$(@````/MD`(#[;`00^VA`3F"```2(T4@$B-%)!)C;34P`$``$F+E"2("0`` +M0`^VQTAIP,@/``!!O0````#V1`)=$`^%8`(``,9#)`1!QP<`````N`$```#I +M2P0```^W4R"Y_P```+C_____9H'ZA0`/AXL````/M\)!#[:T!&`(``")\$"` +M_O]T<V:#^G]W*$`/MM9)BXPD.`D``$B-!%)(C02"2,'@!4B+1`A0#[9`".M* +M9F:09I!F@?J!`'<>0`^VQDF+E"2("0``2&G`R`\``$B+1!`(#[9`".L@0`^V +MQDF+E"1@"0``2(T$P$C!X`5(BX00B`````^V0`A`#[;.1`^V\$ECQD$/MJP$ +MY@@``$B-1*T`2(U$A0!)C;3$P`$```^WP4B-%$!(C1202,'B!4F)U4T#K"0X +M"0``9H'_X0%U"P^V0SJ#Z`$\`78I9H'Y_P!T!T'V14L$=1O&0R0&0<<'```` +M`+@!````Z38#``!F9I!F9I!!#[952(G1@^$!="3VP@1T'T$/MD0D1$$Z1"1. +M<A)!QP<!````N`$```#I`0,``)!-A>T/A/<```"%R0^$[P```/;"!`^$Y@`` +M`$B)WDR)[^@`````A,!U%<9#)`1!QP<`````N`$```#IP@(``$&`O8,````? +M=A%!QP<!````N`$```#IIP(``/:#E@````%T%TB-1*T`2(U$A0!!]H3$S`$` +M``%T&^M?2(U$K0!(C42%`$'VA,3,`0```0^$OP$``$2)]DR)Y^@`````A,!T +M$4''!P$```"X`0```.E.`@``]H.6`````0^$D@$``$B-1*T`2(U$A0!!]H3$ +MS`$```$/A'D!``!,B>_H`````&:#^!\/AF<!``!!QP<!````N`$```#I!0(` +M`&9FD&:0]D8*`G0R08'XX0$0`&9FD`^$.P$``$$/MH6#````03J%@@```'(> +M0<<'`0```+@!````Z<@!``!!@?CA`1``#X0,`0``00^W16J`>SCA#X7]```` +M@'LY`0^%\P```$C1Z$B)PH/B`0^V0SJ#Z`8\"0^'Q@````^VP/\DQ0````!! +MN`$```"Y`0```$B)VDR)[DR)Y^@`````A,`/A;````!!QP<"````N`$```#I +M3@$``$&X`0```+D`````2(G:3(GN3(GGZ`````"$P`^%?@```$''!P(```"X +M`0```.D<`0``#[;*0;@!````2(G:3(GN3(GGZ`````"$P'520<<'`@```+@! +M````Z?`````/MLI!N`````!(B=I,B>Y,B>?H`````(3`=29!QP<"````N`$` +M``#IQ````,9#)`1!QP<`````N`$```#IKP```$F-O"2@#P``Z`````"$P'01 +M0<<'`0```+@!````Z8T```"`>SCA=4Z`>SD!9F:0=46`>SH/=3^`>ST!9F9F +MD'4U#[9S/,'F"`^V0SL!Q@^W]DR)Y^@`````2#M#:'4%2(7`=1+&0R0$0<<' +M`````+@!````ZSFX`````.LR9I!!#[:$).4)``!(C12`2(T4D$F-M-3``0`` +M28N4)(@)``"X.+@/`.F4^___9F:09I!(BUPD"$B+;"003(MD)!A,BVPD($R+ +M="0H3(M\)#!(@\0XPV9F9I!F9I!F9I!F9I!(@^P(2(L_Z`````!(@\0(PV9F +M9I!F9F:09F9FD&9FD$%7059!54%455-(@^Q828G]2(GU2(N?.!$``&;'1C+_ +M#TB-5"0LZ`````"$P'0)BT0D+.D."P``BT4X)?___P`]X0$0``^%Y0```+^( +M$P``Z``````/MTT@9H'YA0`/A[D*```/M\%!#[:T!6`(``")\$"`_O]T:V:# +M^7]W(D`/MM9)BXTX"0``2(T$4DB-!()(P>`%2(M$"%`/MD`(ZT-F@?F!`'<= +M0`^VQDF+E8@)``!(:<#(#P``2(M$$`@/MD`(ZQ]`#[;&28N58`D``$B-!,!( +MP>`%2(N$$(@````/MD`(#[;`00^VA`7F"```2(T4@$B-%)!-C;35P`$``$F+ +ME8@)``!`#[;&2&G`R`\``$@!PDB)5"002,=$)`@`````2,=$)!@`````Z7(! +M```/MU4@OO\```!F@?J%`'<,#[?"00^VM`5@"```#[=].&:!_^$!=0\/MD4Z +M@^@1/`$/AL8```!F@?J%`'=Z#[?"00^VA`5@"```//]T:F:#^G]W(0^VT$F+ +MC3@)``!(C0122(T$@DC!X`5(BT0(4`^V0`CK2&:!^H$`=QP/ML!)BY6("0`` +M2&G`R`\``$B+1!`(#[9`".LE#[;`28N58`D``$B-!,!(P>`%2(N$$(@````/ +MMD`(ZP6X_____P^VP$$/MH0%Y@@``$B-%(!(C12038VTU<`!```/M\9(C11` +M2(T4D$C!X@5)`Y4X"0``2(E4)`AF@?_A`75&ZS(/M\9(C03`2,'@!4D#A6`) +M``!(B40D&$R+L(@```!(QT0D"`````!(QT0D$`````#K1`^V53J-0N\\`78G +MC4+_/`%V(&:!_O\`=`M(BT0D"/9`2P1U#L9%)`:X`````.FV"```2,=$)!`` +M````2,=$)!@`````2(UT)$A,B>_H`````$&)QV:)13),B>_H`````$F)Q+@" +M````387D#X1W"```3(FE@````$$/M]=(B10D2&G"L`0``$B-'!A(C4,@22N% +M.!$``$D#A4`1``!(BU0D2(E"($C!Z"!(BU0D2(E")$F+1"082(M4)$B)0BA( +MP>@@2(M4)$B)0BQ(BT0D2&9$B7@(N`````#&!!@`2(/``4@]L`0``'7P9H%] +M..$!=50/MD4Z@^@1/`%W24B-3"0P2(M$)$@/ME`(2(GN2(M\)`CH`````$B- +M@R`$``!)*X4X$0``20.%0!$``$B+5"1(B4(02,'H($B+5"1(B4(4Z14!``!! +M#[96"O;"`74LBT4X)?___P`]X0$0``^$G````$B+3"0(#[9!2*@!#X2+```` +MJ`0/A(,```#VA98````@=`](C70D,$B)[^@`````ZQM(C4PD,$B+1"1(#[90 +M"$B)[DB+?"0(Z`````!(C8,@!```22N%.!$``$D#A4`1``!(BU0D2(E"$$C! +MZ"!(BU0D2(E"%$B)V$DKA3@1``!)`X5`$0``2(M4)$B)0AA(P>@@2(M4)$B) +M0ASK7/;"`G172(G822N%.!$``$D#A4`1``!(BU0D2(E"&$C!Z"!(BU0D2(E" +M'$B-@R`$``!)*X4X$0``20.%0!$``$B+5"1(B4(02,'H($B+5"1(B4(42(M$ +M)$B`2`$"#[9564B+1"1(9HE0`H!]60!T,[\`````B?A(C01`2,'@`DF+="00 +M2(M-8$B+%`A(B10&BU0("(E4!@B#QP$/MD59.?AWTHM5-$B+1"1(B5`,9H%] +M..$!=3\/MD4Z@^@1/`%W-$$/M\](BU0D2$B)[DR)]^@`````2(U,)#!(B=I( +MB>Y,B??H`````$&`9@S^Z8L$``!F9I!!#[9&"J@"#X0B!```2(M$)$C&0`;^ +M2(M$)$B`8`?^2(-\)`@`#X2X````2(M$)`@/ME!(2(G0@^`&2(/X!@^%GP`` M`/;"`0^$E@```$$/M\](BU0D2$B)[DR)]^@`````]H66`````7002(M$)$@/ MMT`(P>`#B$0D,4B-3"0P2(G:2(GN3(GWZ`````#VA98````!=`=!@$X,`>L% M08!F#/[&`Z%(BU0D"`^V@NH```"#X`\/ME,!@^+P"<*(4P%(BTPD"`^W03B# @@ -215,7 +215,7 @@ M2(!@!?Z`3"1#"$B+="1(#[9%)4$/MHWN````T^!F"48(2(M,)$@/MD$!@^`? M@\@@B$$!2(M%/DB)@S@$``!FP<((9HF31`0```^V13V(@T($``#&`Y%(BU0D M"`^W0CB#P`%FP<`(9HE#`DB+3"0(#[:1Z@```(/B#P^V0P&#X/`)T(A#`4F) MS$F!Q-0```#I:`(``$B+5"1(#[9%)4$/MHWN````T^!F"4((Q@.!9L=#`O__ -M2(M$)!`/MI"[````@^(/#[9#`8/@\`G0B$,!2(-]2`!U#L9%)"&X`````.G- +M2(M$)!`/MI"[````@^(/#[9#`8/@\`G0B$,!2(-]2`!U#L9%)"&X`````.GN M`P``]D4[`70I3(ME4$V%Y'0@28N]L!```$R)YN@`````@^`/#[93`8/B\`G" MB%,!ZP5,BV0D$$B+54@/MD(!OA`````\@`^$A@```#R`=Q\\%7<2/!!F9I!F MD'-G@^@"/`%W1.M7/!=F9I!W.^M>/(5T+CR%9F:09F:0=Q`\@71#/()U(V9F @@ -230,107 +230,109 @@ M````2(M%.$B)@T0$``!(BT5`2(F#3`0``$B+5"0(2(N"W````$B)@S@$``#& M`Y%(BTPD"`^VD>H```"#X@\/MD,!@^#P"="(0P$/MT$X@\`!9L'`"&:)0P)- MA>1T8TF+!"1(B4,$ZUFH`71500^WSTB+5"1(2(GN3(GWZ`````#VA98````! M=!!(BT0D2`^W0`C!X`.(1"0Q2(U,)#!(B=I(B>Y,B??H`````/:%E@````%T -M!T&`3@P!ZP5!@&8,_DF+A;`)``!(BQ0D2(DLT$2)^F;!Z@5!#[??@>+_!P`` -MB=F#X1^X`0```$C3X$$)A)6X"0``BT4X)?___P`]X0$0`'4H2(U,)$"Z```` -M`(G>3(GWZ``````/MD0D0X/@'X/(0(A$)$/II````&:!?3CA`74T#[9%.H/H -M$3P!=RE(BW0D&$R)[^@`````2(U,)$!(BT0D&`^V4%")WDR)]^@`````ZVIF -MD$B+="0(3(GOZ`````!(C4PD0$B+1"0(#[90<HG>3(GWZ`````!(BTPD"`^V -M44A(B="#X`9(@_@&=2[VP@%T*0^V1"1#@^`?@\A@B$0D0P^V47*#XG_!X@0/ -MMT0D0F8E#_@)T&:)1"1"2(UT)$!,B>_H`````+@#````ZRE!#[:%Y0D``$B- -M%(!(C12038VTU<`!``!)BY6("0``N#BX#P#IPO7__TB#Q%A;74%<05U!7D%? -MPV9F9I!F9F:09F9FD$%505154TB#[`A(B?U!O0````!,C:?X````Z;$!``"0 -M3(GGZ`````!(B<-(@WAP`'4V2(GOZ`````!(B4-P2(7`=25(C97X````2(N% -M^````$B)6`A(B0-(B5,(2(F=^````.F0`0``BT,X)?___P`]X0$0``^$U@`` -M``^W0R!F/8``#X3(````#[;09HE3(&:#^G]V&F:!>SCA`74I#[9#.H/H$3P! -M=QYF9F:09F:09H'ZA0!W$`^WP@^VC`5@"```@/G_=1G&0R0&2(G>2(GOZ``` -M``#I]0```&9FD&:0#[=S.&:!_N$!=14/MGLZC4?O/`$/A^4```#K&F9F9I`/ -MML%(:<"8`0``28G%3`.M.`D``.L*C4?_/`%V-&9FD&:!^H``="IF@?[A`74+ -M#[9#.H/H$3P!=AA!]D5+!'41QD,D!DB)WDB)[^@`````ZW](B=Y(B>_H```` -M`(/X`I!W#H/X`7,@ZPYF9F:09F:0@_@#=5OK2TB)WDB)[V9FD.@`````ZTE( -M@[N``````'0/2(VS@````$B)[^@`````2(V5^````$B+A?@```!(B5@(2(D# -M2(E3"$B)G?@```#K-DB)WDB)[^@`````9F:03#FE^`````^%0_[__^L9#[;! -M2&G`F`$``$F)Q4P#K3@)``#I'O___TB#Q`A;74%<05W#9F9FD&9FD&9FD&9F -MD$B#[$A(B5PD&$B);"0@3(ED)"A,B6PD,$R)="0X3(E\)$!(B?5)B?U,BV=0 -M38LT)$$/MD0D#*@0=`S&A^@````&Z7P"```/MI?H````@/H!#X2"````@/H! -M<AJ`^@0/A*,```"`^@8/A:P"``!F9I#I30(``,:'Z`````%(B?Y,B??H```` -M`,9%)(%!@$PD#`A(@[V``````'0/2(VU@````$R)]^@`````28N&^````$B) -M:`A(B44`28V&^````$B)10A)B:[X````3(GWZ`````#I00(``(/@]T&(1"0, -M@(?K`````<:'Z`````#&1B0"3(GWZ`````!,B??H`````.D2`@``QH?K```` -M`$B#OH``````=`](C;:`````3(GWZ`````!)BTU`2(7)#X2.`0``BU$$C4(! -MB4$$@_H%#X=\`0``28N&^````$B):`A(B44`28V&^````$B)10A)B:[X```` -M08!]2O]T)$F+16!(A<!T!H!X0@!T%4R)ZKX"````3(GGZ`````#IAP$``$$/ -MMD0D#(/@]X/($$&(1"0,28MU6$B%]G4408!\)`X`=2SIY0```&9F9I!F9I!! -M#[:5@0```$&X`````+D"````3(GGZ`````#I.0$``$&_`````,9$)!<`28U$ -M)&!(B40D"$B+?"0(Z`````!(B<5)BT0D:$F);"1H2(M4)`A(B54`2(E%"$B) -M*$B+54!(A=)T%4F+MO`(``"_!0```.@`````@$U,`DB)ZKX&````3(GGZ``` -M``"`O8,`````=#9!C5\!08'_?Y:8`'<F3(GWZ`````"_`0```.@`````@+V# -M`````'0+@\,!@?N!EI@`==I!B=^`1"07`0^V1"0703A$)`X/AU?___])BWU@ -M2(7_=1)!QD5*`TR)[DR)]^@`````ZV#H`````&:0ZU=!#[9=2D&`9"0,[TF+ -MAO@```!(B6@(2(E%`$F-AO@```!(B44(28FN^````$R)ZKX&````3(GGZ``` -M``"`^_]U#DR)ZDR)YDR)]^@`````3(GWZ`````!(BUPD&$B+;"0@3(MD)"A, -MBVPD,$R+="0X3(M\)$!(@\1(PV9F9I!!5T%6055!5%532(/L*$B)_4F)]4B+ -MES@)``"X:)8!`&:!?B"%`'<3#[=&(`^VA`=@"```2&G`F`$``$R-)`)(BY4( -M$0``2('"0`@``$$/MD0D<L'@"$B82`'"BS*)-0````!!B?=!P>\02(N5"!$` -M`$B!PD`(``!!#[9$)'+!X`A(F$@!PHM"!(D%`````(A$)!")PL'J"(A4)!'! -MZ!"(1"022(N5"!$``$B!PD`(``!!#[9$)'+!X`A(F$@!PHM""(D%`````(A$ -M)!.)PL'J"(A4)!3!Z!"(1"05QD0D%@#&1"07`(M,)!!!B?9!P>X800^VWT2+ -M1"041(GRB=Y(Q\<`````N`````#H`````(G8@_`!B<*#X@%T%$6$_W0/0<9% -M)`"X`````.F@`@``08!])(%U(4B-3"001(GRB=Y,B>_H`````$'&120"N``` -M``#I>`(``$&+13@E____`#WA`0X`=0]!QD4D(;@`````Z5D"``!!]H66```` -M`74HA-)U)$&`?"1*_W0<2(U,)!!$B?*)WDR)[^@`````N`````#I)P(``$R) -MYDB)[^@`````3(GF2(GOZ`````!(BU4`00^W13)FP>@%#[?`C02%``,``(F" -M<`$``$B+10!!#[=-,H/A'[H!````2(G32-/CB9AT`0``00^W13)(P>`#2`.% -ML`D``$C'``````!!#[=-,HG(9L'H!27_!P``@^$?2(G62-/F2(GQ]]$AC(6X -M"0``00^W33*)R&;!Z`4E_P<``(/A'TC3XO?2(52%;$F+50!)BT4(2(E""$B) -M$$$/MW4R2(V]H`\``.@`````08"L)(,````!0<9%)(%)@[V``````'0/28VU -M@````$B)[^@`````28U$)"!).40D(`^$!`$``$F)QDB-A:`/``!(B40D"$R- -MO?@```!FD$R)]^@`````2(G#2(M5``^W0#)FP>@%#[?`C02%``,``(F"<`$` -M`$B+10`/MTLR@^$?N@$```!(B=9(T^:)L'0!```/MT,R2,'@`T@#A;`)``!( -MQP``````#[=+,HG(9L'H!27_!P``@^$?2(G62-/F2(GQ]]$AC(6X"0``#[=+ -M,HG(9L'H!27_!P``@^$?2-/B]](A5(5L#[=S,DB+?"0(Z`````!!@*PD@P`` -M``%(@[N``````'0/2(VS@````$B)[^@`````2(N%^````$B)6`A(B0-,B7L( -M2(F=^````$TY="0@#X44____08&EE````/___O]!QH0DZ`````1,B>Y,B>?H -M`````+@!````2(/$*%M=05Q!74%>05_#D$B#[%A(B5PD*$B);"0P3(ED)#A, -MB6PD0$R)="1(3(E\)%!(B50D$$B++TR+A3@1``!(A=(/A,8"```/M]9(:<*P -M!```2HT,`/9!(0)T&$B-!-4`````2`.%L`D``$B+`,9`)`+K%DB-!-4````` -M2`.%L`D``$B+`,9`)"%,C135`````$B+A;`)``!,`=!(BQ"+0C@E____`#WA -M`1``#X2L`0``#[="(&8]A0!W$@^WP`^VA`5@"```//]U&69FD$R)T$@#A;`) -M``!(BP#&0"0&Z;H(```/ML!(:<"8`0``3(N=.`D``$D!PX!\)!,`>6Y!#[93 -M2$B)T(/@!DB#^`9U(_;"`70>2(M%`(N06`$``(D5`````(72=`I(BT4`B9!8 -M`0``2(M%`(N`4`$``(D%`````(/(`DB+50")@E`!``!(BT4`BX`$`0``B04` -M````@,S_2(M5`(F"!`$``&;W02`""`^$ZP```(!]0P`/A.$```"[`````$&Y -M`````$6)R$$/MLD/MD<-2-/XJ`%T84&`^0-V*$B+10!(!=`!``"-%(T````` -M2&/22`'0BP")!0````#!Z!2#X`'K)I!(BT4`2`70`0``C12-`````$ACTD@! -MT(L`B04`````P>@4@^`!A,!T"K@!````2-/@"<-!@\$!08U``3A%0W>`A-MT -M4CA?#75-B?!FP>@%)?\'``"+1(5LB?](T_BH`74R08"[Z`````)W"$'& -M@^@````#3(G02`.%L`D``$B+,$R)W^@`````Z4`'``!!NP````#V1"03`0^$ -M+P<``$R)T$@#A;`)``!(BS#&1B0ABT8X)?___P`]X0$.``^$"P<``$B+E0@1 -M``!(@<)`"```00^V0W+!X`A(F$@!PHL"B04`````2(N5"!$``$B!PD0(``!! -M#[9#<L'@"$B82`'"BP*)!0````!(BY4($0``2('"2`@``$$/MD-RP>`(2)A( -M`<*+`HD%`````$B)[^@`````Z94&``!F9I!FD`^W]DB-'/4`````2(N%L`D` -M`$@!V$B+$&:!>CCA`0^%#`$```^V>CI`@/\0#X=>!@``N`$```")^4C3X*G` -M,```#X7,````J0```0!U5/;$@`^$.08``$AIQK`$``!*C0P`#[9!,XA")$B) -MV$@#A;`)``!(BP#V0",$#X00!@``@'@D``^$!@8``$B+4%!(A=(/A/D%```/ -MMD$SB`+I[@4``$AIQK`$``!*C0P`3(UA*$B)V$@#A;`)``!(BQ!!#[9$)`*( -M0B1(B=A(`X6P"0``2(L`2(-X2``/A+$%```/MKDA!```Z`````!(B=I(`Y6P -M"0``2(L*BU$T.=`/1\*)PDB+>4A,B>;H`````.E]!0``2(G82`.%L`D``$B+ -M`,9`)`#I9P4``&9F9I!F9I!(B=A(`X6P"0``3(LH38M]:+C_____9D&!?2"% -M`'<92(G82`.%L`D``$B+``^W0"`/MH0%8`@```^VP$AIP)@!``!,BZ4X"0`` -M20'$0<:$).@`````00^V5"1(2(G0@^`&2(/X!@^%EP$``/;"`0^$C@$``$'& -M120`0?:%E@```"`/A-D$``!-A?\/A-`$``!!]H>Q`````@^$H0```$&+132% -MP`^$E0```$F+OZ````!(A?]T#8G"28MU2.@`````ZWQ)@WU(`'1U28._N``` -M``!U"DF#O\``````=&%-BVU(28N'N````$B%P'0-2(G#0?:'L0````%T)DB+ -MM4`*``"Z`0```$R)_T'_E\````"[`````(7`=`=(BYU`"@``2(M["(L33(GN -MZ`````"+`TD!Q8M#!$B#PQ"%P'3B2(N5"!$``$B!PD`(``!!#[9$)'+!X`A( -MF$@!PHL"B04`````B<+!ZA!!B)>;````P>@89D&)AY````!(BY4($0``2('" -M1`@``$$/MD0D<L'@"$B82`'"BQ*)%0`````/ML)F08F'E`````^VQF9!B8>6 -M````B=#!Z!`/ML!F08F'F````,'J&$&(EYH```!(BY4($0``2('"3`@``$$/ -MMD0D<L'@"$B82`'"BP*)!0`````/ML!F08F'D@```.E>`P``2&G&L`0``$Z- -M-`!!#[9&,X3`#X7,````2(G82`.%L`D``$B+`,9`)`!!]H66````$`^$)P,` -M`$V%_P^$'@,``$$/MD8S08B'D@```$'VA[$````"#X0$`P``08-]-``/A/D" -M``!)@[^X`````'4.28._P``````/A.$"``!-BV5(28N'N````$B%P'0-2(G# -M0?:'L0````%T)DB+M4`*``"Z`0```$R)_T'_E\````"[`````(7`=`=(BYU` -M"@``2(M["(L33(GFZ`````"+`TD!Q(M#!$B#PQ"%P`^%?`(``.O</`(/A28" +M!T&`3@P!ZP5!@&8,_DF+A;`)``!(BQ0D2(DLT$2)^F;!Z@5%#[?G@>+_!P`` +M1(GA@^$?N`$```!(T^!!"825N`D``(M%."7___\`/>$!$`!U*4B-3"1`N@`` +M``!$B>9,B??H``````^V1"1#@^`?@\A`B$0D0^FD````9H%]..$!=3,/MD4Z +M@^@1/`%W*$B+="083(GOZ`````!(C4PD0$B+1"08#[904$2)YDR)]^@````` +MZVE(BW0D"$R)[^@`````2(U,)$!(BT0D"`^V4')$B>9,B??H`````$B+3"0( +M#[912$B)T(/@!DB#^`9U+O;"`70I#[9$)$.#X!^#R&"(1"1##[91<H/B?\'B +M!`^W1"1"9B4/^`G09HE$)$)(C70D0$R)[^@`````2(MS(+@#````2(7V=$%( +MQ\<`````N`````#H`````+@#````ZRE!#[:%Y0D``$B-%(!(C12038VTU<`! +M``!)BY6("0``N#BX#P#IR_7__TB#Q%A;74%<05U!7D%?PV9F9I!F9F:09F:0 +M055!5%532(/L"$B)_4&]`````$R-I_@```#IN0$``)!,B>?H`````$B)PTB# +M>'``=39(B>_H`````$B)0W!(A<!U)4B-E?@```!(BX7X````2(E8"$B)`TB) +M4PA(B9WX````Z9T!``"+0S@E____`#WA`1``#X3=````#[=#(&8]@``/A,\` +M```/MLAFB4L@9H/Y?W8:9H%[..$!=2D/MD,Z@^@1/`%W'F9F9I!F9I!F@?F% +M`'<0#[?!#[:4!6`(``"`^O]U&<9#)`9(B=Y(B>_H`````.G]````9F:09I`/ +MMW,X9H'^X0%U%0^V>SJ-1^\\`0^'[0```.L?9F9FD`^VPDB-%$!(C1202,'B +M!4F)U4P#K3@)``#K!XU'_SP!=C9F@?F``'0O9H'^X0%FD'4+#[9#.H/H$3P! +M=AM!]D5+!'44QD,D!DB)WDB)[^@`````Z8````!(B=Y(B>_H`````(/X`G<* +M@_@!<R5F9I#K$(/X`W5A9F:09F:09F:0ZTM(B=Y(B>_H`````&9FD.M&2(.[ +M@`````!T#TB-LX````!(B>_H`````$B-E?@```!(BX7X````2(E8"$B)`TB) +M4PA(B9WX````ZSA(B=Y(B>_H`````$PYI?@````/A3O^___K'@^VPDB-%$!( +MC1202,'B!4F)U4P#K3@)``#I%O___TB#Q`A;74%<05W#2(/L2$B)7"082(EL +M)"!,B60D*$R);"0P3(ET)#A,B7PD0$B)]4F)_4R+9U!-BS0D00^V1"0,J!!T +M#,:'Z`````;IC`(```^VE^@```"`^@$/A((```"`^@%R&H#Z!`^$HP```(#Z +M!@^%S0(``&9FD.E=`@``QH?H`````4B)_DR)]^@`````QD4D@4&`3"0,"$B# +MO8``````=`](C;6`````3(GWZ`````!)BX;X````2(EH"$B)10!)C8;X```` +M2(E%"$F)KO@```!,B??H`````.EB`@``@^#W08A$)`R`A^L````!QH?H```` +M`,9&)`),B??H`````$R)]^@`````Z3,"``#&A^L`````2(.^@`````!T#TB- +MMH````!,B??H`````$F+34!(A<D/A)X!``"+402-0@&)002#^B@/AXP!``!) +MBX;X````2(EH"$B)10!)C8;X````2(E%"$F)KO@```!!@'U*_W0D28M%8$B% +MP'0&@'A"`'053(GJO@(```!,B>?H`````.FH`0``00^V1"0,@^#W@\@008A$ +M)`Q)BW582(7V=11!@'PD#@!U+.GE````9F9FD&9FD$$/MI6!````0;@````` +MN0(```!,B>?H`````.E:`0``0;\`````QD0D%P!)C40D8$B)1"0(2(M\)`CH +M`````$B)Q4F+1"1H28EL)&A(BU0D"$B)50!(B44(2(DH2(M50$B%TG0528NV +M\`@``+\%````Z`````"`34P"2(GJO@8```!,B>?H`````("]@P````!T-D&- +M7P%!@?]_EI@`=R9,B??H`````+\!````Z`````"`O8,`````=`N#PP&!^X&6 +MF`!UVD&)WX!$)!<!#[9$)!=!.$0D#@^'5____TF+?6!(A?]U'$'&14H#9D'' +MA<@``````$R)[DR)]^@`````ZW?H`````&9F9I!F9F:0ZVA!#[9=2DC'QP`` +M``"X`````.@`````08!D)`SO28N&^````$B):`A(B44`28V&^````$B)10A) +MB:[X````3(GJO@8```!,B>?H`````(#[_W4.3(GJ3(GF3(GWZ`````!,B??H +M`````$B+7"082(ML)"!,BV0D*$R+;"0P3(MT)#A,BWPD0$B#Q$C#9F:005=! +M5D%505154TB#["A(B?U)B?5(BX\X"0``N&">`0!F@7X@A0!W&P^W1B`/MH0' +M8`@``$B-%$!(C1202(G02,'@!4R-)`%(BY4($0``2('"0`@``$$/MD0D<L'@ +M"$B82`'"BS*)-0````!!B?=!P>\02(N5"!$``$B!PD`(``!!#[9$)'+!X`A( +MF$@!PHM"!(D%`````(A$)!")PL'J"(A4)!'!Z!"(1"022(N5"!$``$B!PD`( +M``!!#[9$)'+!X`A(F$@!PHM""(D%`````(A$)!.)PL'J"(A4)!3!Z!"(1"05 +MQD0D%@#&1"07`(M,)!!!B?9!P>X800^VWT2+1"041(GRB=Y(Q\<`````N``` +M``#H`````(G8@_`!B<*#X@%T%$6$_W0/0<9%)`"X`````.FH`@``08!])(%F +M9I!U(4B-3"001(GRB=Y,B>_H`````$'&120"N`````#I?0(``$&+13@E____ +M`#WA`0X`=0]!QD4D(;@`````Z5X"``!!]H66`````74HA-)U)$&`?"1*_W0< +M2(U,)!!$B?*)WDR)[^@`````N`````#I+`(``$R)YDB)[^@`````3(GF2(GO +MZ`````!(BU4`00^W13)FP>@%#[?`C02%``,``(F"<`$``$B+10!!#[=-,H/A +M'[H!````2(G32-/CB9AT`0``00^W13)(P>`#2`.%L`D``$C'``````!!#[=- +M,HG(9L'H!27_!P``@^$?2(G62-/F2(GQ]]$AC(6X"0``00^W33*)R&;!Z`4E +M_P<``(/A'TC3XO?2(52%;$F+50!)BT4(2(E""$B)$$$/MW4R2(V]H`\``.@` +M````08"L)(,````!0<9%)(%)@[V``````'0/28VU@````$B)[^@`````28U$ +M)"!).40D(`^$"0$``$F)QDB-A:`/``!(B40D"$R-O?@```!F9F:09F:03(GW +MZ`````!(B<-(BU4`#[=`,F;!Z`4/M\"-!(4``P``B8)P`0``2(M%``^W2S*# +MX1^Z`0```$B)UDC3YHFP=`$```^W0S)(P>`#2`.%L`D``$C'```````/MTLR +MB<AFP>@%)?\'``"#X1](B=9(T^9(B?'WT2&,A;@)```/MTLRB<AFP>@%)?\' +M``"#X1](T^+WTB%4A6P/MW,R2(M\)`CH`````$&`K"2#`````4B#NX`````` +M=`](C;.`````2(GOZ`````!(BX7X````2(E8"$B)`TR)>PA(B9WX````33ET +M)"`/A13___]!@:64````___^_T'&A"3H````!$R)[DR)Y^@`````N`$```!( +M@\0H6UU!7$%=05Y!7\.02(/L6$B)7"0H2(EL)#!,B60D.$R);"1`3(ET)$A, +MB7PD4$B)5"002(LO3(N%.!$``$B%T@^$Q@(```^WUDAIPK`$``!*C0P`]D$A +M`G082(T$U0````!(`X6P"0``2(L`QD`D`NL62(T$U0````!(`X6P"0``2(L` +MQD`D(4R-%-4`````2(N%L`D``$P!T$B+$(M"."7___\`/>$!$``/A+`!```/ +MMT(@9CV%`'<2#[?`#[:$!6`(```\_W499F:03(G02`.%L`D``$B+`,9`)`;I +MR@@```^VP$B-%$!(C1202,'B!4R+G3@)``!)`=.`?"03`'EN00^V4TA(B="# +MX`9(@_@&=2/VP@%T'DB+10"+D%@!``")%0````"%TG0*2(M%`(F06`$``$B+ +M10"+@%`!``")!0````"#R`)(BU4`B8)0`0``2(M%`(N`!`$``(D%`````(#, +M_TB+50")@@0!``!F]T$@`@@/A.H```"`?4,`#X3@````NP````!!N0````!% +MB<A!#[;)#[9'#4C3^*@!=&!!@/D#=B=(BT4`2`70`0``C12-`````$ACTD@! +MT(L`B04`````P>@4@^`!ZR5(BT4`2`70`0``C12-`````$ACTD@!T(L`B04` +M````P>@4@^`!A,!T"K@!````2-/@"<-!@\$!08U``3A%0W>!A-MT4CA?#75- +MB?!FP>@%)?\'``"+1(5LB?](T_BH`74R08"[Z`````)W"$'&@^@````# +M3(G02`.%L`D``$B+,$R)W^@`````Z4P'``!!NP````#V1"03`0^$.P<``$R) +MT$@#A;`)``!(BS#&1B0ABT8X)?___P`]X0$.``^$%P<``$B+E0@1``!(@<)` +M"```00^V0W+!X`A(F$@!PHL"B04`````2(N5"!$``$B!PD0(``!!#[9#<L'@ +M"$B82`'"BP*)!0````!(BY4($0``2('"2`@``$$/MD-RP>`(2)A(`<*+`HD% +M`````$B)[^@`````Z:$&``"0#[?V2(T<]0````!(BX6P"0``2`'82(L09H%Z +M..$!#X4,`0``#[9Z.D"`_Q`/AVX&``"X`0```(GY2-/@J<`P```/A<P```"I +M```!`'54]L2`#X1)!@``2&G&L`0``$J-#``/MD$SB$(D2(G82`.%L`D``$B+ +M`/9`(P0/A"`&``"`>"0`#X06!@``2(M04$B%T@^$"08```^V03.(`NG^!0`` +M2&G&L`0``$J-#`!,C6$H2(G82`.%L`D``$B+$$$/MD0D`HA")$B)V$@#A;`) +M``!(BP!(@WA(``^$P04```^VN2$$``#H`````$B)VD@#E;`)``!(BPJ+430Y +MT`]'PHG"2(MY2$R)YN@`````Z8T%``!(B=A(`X6P"0``2(L`QD`D`.EW!0`` +M9F9FD&9FD$B)V$@#A;`)``!,BRA-BWUHN/____]F08%]((4`=QE(B=A(`X6P +M"0``2(L`#[=`(`^VA`5@"```#[;`2(T40$B-%)!(P>(%3(NE.`D``$D!U$'& +MA"3H`````$$/ME0D2$B)T(/@!DB#^`8/A9<!``#VP@$/A(X!``!!QD4D`$'V +MA98````@#X3D!```387_#X3;!```0?:'L0````(/A*$```!!BT4TA<`/A)4` +M``!)B[^@````2(7_=`V)PDF+=4CH`````.M\28-]2`!T=4F#O[@`````=0I) +M@[_``````'1A38MM2$F+A[@```!(A<!T#4B)PT'VA[$````!="9(B[5`"@`` +MN@$```!,B?]!_Y?`````NP````"%P'0'2(N=0`H``$B+>PB+$TR)[N@````` +MBP-)`<6+0P1(@\,0A<!TXDB+E0@1``!(@<)`"```00^V1"1RP>`(2)A(`<*+ +M`HD%`````(G"P>H008B7FP```,'H&&9!B8>0````2(N5"!$``$B!PD0(``!! +M#[9$)'+!X`A(F$@!PHL2B14`````#[;"9D&)AY0````/ML9F08F'E@```(G0 +MP>@0#[;`9D&)AY@```#!ZAA!B)>:````2(N5"!$``$B!PDP(``!!#[9$)'+! +MX`A(F$@!PHL"B04`````#[;`9D&)AY(```#I:0,``$AIQK`$``!.C30`00^V +M1C.$P`^%T0```$B)V$@#A;`)``!(BP#&0"0`0?:%E@```!`/A#(#``!-A?\/ +MA"D#``!!#[9&,T&(AY(```!!]H>Q`````@^$#P,``$&#?30`#X0$`P``28._ +MN`````!U#DF#O\``````#X3L`@``38ME2$F+A[@```!(A<!T#4B)PT'VA[$` +M```!="9(B[5`"@``N@$```!,B?]!_Y?`````NP````"%P'0'2(N=0`H``$B+ +M>PB+$TR)YN@`````BP-)`<2+0P1(@\,0A<`/A8<"``#KW&9FD&:0/`(/A2@" M``!!#[9.0$&+1CB)1"0D#[94)"</MD0D),'@&`G"#[9$)"7!X!`)P@^V1"0F MP>`(08G400G$@^%_@/EQ=CS&1"0-`$&#_`%V#$$/MD9!@^`/B$0D#<9$)`X` M08/\`G8)00^V3D*(3"0.08/\`W9F00^V1D.(1"0/ZV#&1"0-`$&#_`)V#$$/ @@ -338,4490 +340,1720 @@ MMDY"@^$/B$PD#<9$)`X`QD0D#P!!@_P'=CE!#[9&1X/`"$$YQ$0/1^#&1"0. M`$&#_`QV"4$/MD9,B$0D#D&#_`UV"T$/MDY-B$PD#^L%QD0D#P!(B=A(`X6P M"0``2(L`@'@P`'1(187D=$/&0"0@2(G82`.%L`D``$B+``^V0#`/MM!$..!$ M#T+B2(G82`.%L`D``$B+`$B+>%!(A?]T'T2)XDF-=D#H`````.L12(G82`.% -ML`D``$B+`,9`)"*`?"0-!'412(G82`.%L`D``$B+`,9`)`)).6TH#X0,`0`` -M387_#X0#`0``0?:%E@```!!T0$$/MD8S08B'D@```$'VA[$````"="I!#[9% +ML`D``$B+`,9`)"*`?"0-!'412(G82`.%L`D``$B+`,9`)`)).6TH#X02`0`` +M387_#X0)`0``0?:%E@```!!T0$$/MD8S08B'D@```$'VA[$````"="I!#[9% M,$2)XD$XQ`]'T(32=!A)B[^H````2(7_=`P/MM))C79`Z`````"`?"0-"W=< -M#[9$)`W_),4`````0<:'L@````'IF0```(!\)`X$=12`?"0/`G4-0<:'L@`` -M`!'I?@```$'&A[(````"ZW1!QH>R````$.MJ0<:'L@````OK8$'&A[(````& -MZU9!QH>R````#>M,/"AU)T$/MH0D@P```(/H`4&(A"2"````2(G82`.%L`D` -M`$B+`,9`)('K(3P(=0J_$"<``.@`````2(G82`.%L`D``$B+`,9`)"%FD$B+ -M7"0H2(ML)#!,BV0D.$R+;"1`3(MT)$A,BWPD4$B#Q%C#9F9FD&9FD&9FD&9F -MD$%7059!54%455-(@^PH2(G[2(E\)!A$#[>GLA(``$B+!XN`0`$``(D%```` -M`&8E_P]FB8>R$@``9D0YX'5.2(L'B[!0`0``B34`````2(L'B;!0`0``N``` -M``#WQ@#__P`/A-T&``!(Q\<`````N`````#H`````$B+?"08Z`````"X`0`` -M`.FX!@``9H&_LA(``/\/#X45!@``Z3X&``!(B[,X$0``08/$`69$.Z.V$@`` -MN`````!$#T/@2(N3F!$``$B#P@1!#[?$BP2"08G`0<'H$$'VP`@/A+$```!( -MBP.+D%`!``")%0````!(BP.)D%`!``#WP@#__P!T;8![0P!T9XG6]\8``0`` -M=3"_`````/?&```!`'1$ZR%FD`^WUXU*"$B)\$C3^*@!=12-2A!(B?!(T_BH -M`74'ZR&_``````^WQTB-%(!(C1202(VLT\`!``!(A>UU'^L.9I"#QP$/MD-# -M9CGX=[1(BWPD&.@`````Z54%``!(BWPD&.@`````B$4/Z4,%``!F9I")P6:! -MX?\/#[?!2&G0L`0``$R+3!8@2(T\Q0````!(BX.P"0``2`'X2(LH2(7M#X0, -M!0``0?;`(`^$?@$``(!])($/A5@!``#&120A#[=%,DC!X`-(`X.P"0``2,<` -M``````^W33*)R&;!Z`4E_P<``(/A'[H!````2(G62-/F2(GQ]]$AC(.X"0`` -M#[=-,HG(9L'H!27_!P``@^$?2-/B]](A5(-L#[=U,DB+?"00Z`````!(@[V` -M`````'0/2(VU@````$B)W^@`````#[=5(&:!^H4`#X?$````#[?"#[:$`V`( -M```\_P^$L0```&:#^G]W'@^VP$AIP)@!``!(`X,X"0``2(M`4(!X"/\/E<#K -M60^W12!F/8$`=R8/M\`/MH0#8`@``$AIP,@/``!(`X.("0``2(M`"(!X"/\/ -ME<#K*0^W12`/MH0#8`@``$B-!,!(P>`%2`.#8`D``$B+@(@```"`>`C_#Y7` -MA,!T,$B)[DB)W^@`````2(N#^````$B):`A(B44`2(M$)`A(B44(2(FK^``` -M`.FA`P``D$F+5@A(C44028E&"$R)=1!(B5`(2(D"Z80#``")R&;!Z`4/M\") -M1"0@2)@/M_&)\H/B'XE4)"2+1(-LB=%(T_BH`0^%6`,``$B)^$@#@[`)``!( -MBP`/MU`@9H'ZA0`/A[4````/M\(/MH0#8`@``#S_#X2B````9H/Z?W<;#[;` -M2&G`F`$``$@#@S@)``!(BT!0#[9`".MM2(GX2`.#L`D``$B+``^W0"!F/8$` -M=R,/M\`/MH0#8`@``$AIP,@/``!(`X.("0``2(M`"`^V0`CK,TB)^$@#@[`) -M``!(BP`/MT`@#[:$`V`(``!(C03`2,'@!4@#@V`)``!(BX"(````#[9`"#S_ -M=!`/MM!(8\*`O`/F"```_W4_2&-$)""+1(-L#[9,)"1(T_BH`0^%;@(``,9% -M)`:^`````$B)[^@`````N@````!(B>Y(B=_H`````.E(`@``2&/"#[:$`^8( -M``!(C12`2(T4D$B-O-/``0``387)=`U!]L`"N`````!,#T3(]D<*`@^$4@$` -M`$R)RN@`````2&-$)""+1(-L#[9,)"1(T_BH`0^%\`$``(!])($/A9`````/ -MMT4R2,'@`T@#@[`)``!(QP``````#[=-,HG*9L'J!8'B_P<``(/A'[@!```` -M2-/@]]`AA).X"0``#[=U,DB+?"00Z`````!(B>Y(B=_H`````$B#O8`````` -M=`](C;6`````2(G?Z`````!(BX/X````2(EH"$B)10!(BW0D"$B)=0A(B:OX -M````Z58!``!(BX,(`0``3#GP=%9!O0````!!@\4!2(L`23G&=?1%A.UT/T&_ -M`````$R)]^@`````2(U(\$F+5@A)B48(3(DP2(E0"$B)`D@YZ;@!````1`]$ -M^$&`[0%UT$6$_P^%]````$F+5@A(C44028E&"$R)=1!(B5`(2(D"2&-4)""X -M`0````^V3"0D2-/@"823K````.F_````3(G*Z`````!(BX,(`0``3#GP=%)! -MO0````!!@\4!2(L`23G&=?1%A.UT.T&_`````$R)]^@`````2(U(\$F+5@A) -MB48(3(DP2(E0"$B)`D@YZ;@!````1`]$^$&`[0%UT$6$_W59@'TD@71328M6 -M"$B-11!)B48(3(EU$$B)4`A(B0)(8U0D(+@!````#[9,)"1(T^`)A).L```` -MZR&03(VW"`$``$B-MZ`/``!(B70D$$B-A_@```!(B40D")!F1#FCLA(```^% -MPOG__TB-@P@!``!(.8,(`0``=$E(B<5(B>_H`````$B-</`/MTXRB<IFP>H% -M@>+_!P``@^$?N`$```!(T^#WT"&$DZP```"Z`````$B)W^@`````2#FK"`$` -M`'6Z2(G?Z`````"X`0```$B#Q"A;74%<05U!7D%?PV9F9I!F9I!F9I!F9I!( -M@^PH2(E<)`A(B6PD$$R)9"083(EL)"!(BY_P"```2(M#"$2+*$2)+0````!! -M]\4```"0='I(BT,(1(DHZW&02('#>!0``$B+`XN04`$``(D5`````$B+`XF0 -M4`$``(72=#SWP@```!!T'$B+`\>`4`$``````!!(BP.+@%`!``")!0````!( -MBP/'@%`!```!````2(G?Z`````!!`<2#Q0&#_0)UF>L79F9FD&9FD$&\```` -M`+T`````ZXIF9I!%A.0/E<!%A>T/E<()T`^VP$B+7"0(2(ML)!!,BV0D&$R+ -M;"0@2(/$*,-F9I!F9I!!5T%6055!5%532(/L*$F)_$B+!XN04`$``(D5```` -M`$B+!XF04`$``&9F9I!F9I#WP@#__P`/A"@)``!!@'PD0P`/A!P)``#&1"00 -M`(G22(E4)`A$#[9L)!!!C4T(2(M$)`A(T_BH`74408U-$$B+1"0(2-/XJ`$/ -MA-$(``"`?"00`W8K28L$)$@%@`$``$*-%.T`````2&/22`'0BP")!0````#! -MZ!.#X`'K*69FD$F+!"1(!8`!``!"C13M`````$ACTD@!T(L`B04`````P>@3 -M@^`!A,!T)DR)Y^@`````26/52(T$4DB-!()!@8S$Z!(`````"`!F9F:09F:0 -M28L4)(!\)!`#=B5"C03M`````$B82(V$`H`!``"+`(D%`````"4```$`ZR-F -M9F:00HT$[0````!(F$B-A`*``0``BP")!0`````E```!`(7`=$&`?"00`W8= -M0HT$[0````!(F$B-A`*``0``QP````$`Z1D(``!"C03M`````$B82(V$`H`! -M``#'`````0#I_`<``$&`?"11`0^%J`8``(!\)!`#=BE)BP0D2`6``0``0HT4 -M[0````!(8])(`="+`(D%`````(/@`>LG9F9FD$F+!"1(!8`!``!"C13M```` -M`$ACTD@!T(L`B04`````@^`!A,`/A%4!``!)8\5(C1Q`2(T<F$C!XP-)C;0< -M\!(``$F+?"0HZ`````!)B[P<P!(``$B%_W0=2(M'0$B%P'04]D!.`G4.Z``` -M``"$P)`/A0H!``!)8\5(C11`2(T4D$F+A-3`$@``2(7`='5)B<:`>`X`#X2+ -M````0;\`````2(UH8$B)[^@`````2(G#2(M%"$B)70A(B2M(B4,(2(D8]D-, -M`G4O2(M30$B%TG0628NT)/`(``"_!0```.@`````@$M,`DB)VKX&````3(GW -MZ`````!!@\<!13A^#G8EZZ(/MG0D$+H!````3(GGZ`````"_H(8!`.@````` -MN@`M,0'K!;I`2TP`26/%2(T,0$B-#(A(P>$#2HTT(8F6\!(``$C'A@`3```` -M````#[9$)!!(C11`2(T4D$F-E-2X$@``2(F6"!,``$F-M`SP$@``28M\)"CH -M`````&9FD(!\)!`#=CU"C13M`````$ACTDF+!"1(!8`!``!(`="+`(D%```` -M`$F+!"1(!8`!``!(`<*+`HD%`````,'H!X/@`>L[0HT4[0````!(8]))BP0D -M2`6``0``2`'0BP")!0````!)BP0D2`6``0``2`'"BP*)!0````#!Z`>#X`&$ -MP'1U@'PD$`-V-T*-#.T`````2&/)28L$)$@%A`$``$@!R(L`B04`````28L4 -M)$B!PH0!``!(`=$-```!`(D!ZSY"C0SM`````$ACR4F+!"1(!80!``!(`<B+ -M`(D%`````$F+%"1(@<*$`0``2`'1#0```0")`>LO@'PD$`-V*$F+!"1(!8`! -M``!"C13M`````$ACTD@!T(L`B04`````P>@2@^`!ZR9)BP0D2`6``0``0HT4 -M[0````!(8])(`="+`(D%`````,'H$H/@`83`#X0B`@``@'PD$`-V-T*-#.T` -M````2&/)28L$)$@%@`$``$@!R(L`B04`````#0``!`!)BQ0D2('"@`$``$@! -MT8D!ZS5"C0SM`````$ACR4F+!"1(!8`!``!(`<B+`(D%``````T```0`28L4 -M)$B!PH`!``!(`=&)`4ECQ4B-%$!(C12028N$U,`2``!(A<!T$TF)Q4B#>$`` -M#X6B````Z80!``"`?"00`W9*0HT4[0````!(8]))BP0D2`6``0``2`'0BPB) -M#0````!)BP0D2`6``0``2(T$`HD(28L$)$@%@`$``$@!PHL"B04`````Z=`# -M``!"C13M`````$ACTDF+!"1(!8`!``!(`="+"(D-`````$F+!"1(!8`!``!( -MC00"B0A)BP0D2`6``0``2`'"BP*)!0````#IA@,``&:02(M(0`^W04X/M]#V -MQ@$/A=,```!(B<WVP@(/A,<```"#X/UFB4%.2(VQP````$F+?"0HZ`````#& -M1"00`(!].P!T=\9$)!``#[9$)!!(BUS%6$B%VW142(M30$B%TG0628NT)/`( -M``"_!0```.@`````@$M,`DB)VKX&````3(GOZ`````"`NX,`````=!R03(GG -MZ`````"_`0```.@`````@+N#`````'7E@$0D$`$/MD0D$#A%.W>.QX7````` -M0$M,`$C'A=``````````2(FMV````$B-M<````!)BWPD*.@`````@'PD$`-V -M,DF+!"1(!8`!```/ME0D$$C!X@.!XO@'``!(`="+`(D%`````,'H"(/@`>LP -M9F:09F:028L$)$@%@`$```^V5"002,'B`X'B^`<``$@!T(L`B04`````P>@( -M@^`!A,`/A!8!``"`?"00`W8L28L$)$@%@`$```^V5"002,'B`X'B^`<``$@! -MT(L`B04`````@_`!@^`!ZRI)BP0D2`6``0``#[94)!!(P>(#@>+X!P``2`'0 -MBP")!0````"#\`&#X`&$P`^$L0````^V1"002(T40$B-%)!)C934L!(``$R- -M>@A)BT<(2(7`#X2+````28G&2(UR0$F+?"0HZ`````!!@'X.`'110;T````` -M28UN8)!(B>_H`````$B)PTB+10A(B5T(2(DK2(E#"$B)&$B+4T!(A=)T%DF+ -MM"3P"```OP4```#H`````(!+3`)!@\4!13AN#G>Z0<='.("$'@!)QT=(```` -M`$V)?U!)C7<X28M\)"CH`````(!\)!`##X9_````#[9<)!!(P>,#@>/X!P`` -M28L$)$@%@`$``$@!V(L0B14`````28L$)$@%@`$``$B-!`.)$$F+!"1(!8`! -M``!(C00#BP")!0````!)BP0D2`4P`@``2(T$`\<``````+\0)P``Z`````!) -MBP0D2`4T`@``2`'#BP.)!0````#K?0^V7"002,'C`X'C^`<``$F+!"1(!8`! -M``!(`=B+$(D5`````$F+!"1(!8`!``!(C00#B1!)BP0D2`6``0``2(T$`XL` -MB04`````28L$)$@%4`(``$B-!`/'``````"_$"<``.@`````28L$)$@%5`(` -M`$@!PXL#B04`````@$0D$`$/MD0D$$$X1"1##X?P]O__28L$)(N04`$``(D5 -M`````$F+!"2)D%`!``#WP@#__P!T)NFE]O__9F:09I!)8]5(C0122(T$@D&! -MC,3H$@`````!`.GH]___N`````!(@\0H6UU!7$%=05Y!7\-!5T%6055!5%53 -M2(/L:$F)_4"(="1+0`^VQHE$)$Q(F$B-%$!(C1202(T4UTR+NL`2```/MJKA -M$@``2(L'0(#^`W8,QX!P`0``Q`$``.L*QX!P`0``J`$``$B)1"1@2`5T`0`` -M2(E$)%!(BU0D8(N"=`$``(D%`````(M,)$R#X0.[!P```-/C08G<00G$1(FB -M=`$``+_H`P``Z`````#WTT0AXTB+3"1@B9ET`0``@'PD2P-V58M$)$S!X`)( -MF$B-E`'0`0``BP*)!0````"#R`B)`HM<)$S!XP-(8]M(C809``(``,<`.``` -M`+\0)P``Z`````!(BU0D8$B-A!H$`@``QP``````ZUB+1"1,P>`"2)A(BTPD -M8$B-E`'0`0``BP*)!0````"#R`B)`HM<)$S!XP-(8]M(C809``(``,<`.``` -M`+\0)P``Z`````!(BU0D8$B-A!H$`@``QP``````387_#X0V"```08!]0P!T -M++L`````#[;+00^V1PU(T_BH`70/N@$```")SDR)[^@`````@\,!03A=0W?9 -M0?9'"@%T9TR)_DR)[^@`````BW0D3$R)[^@`````2&-$)$Q(C11`2(T4D$F- -ME-70$@``BT(4J0``$`!T""7__^__B4(43(G^3(GOZ`````!(8T0D3$B-%$!( -MC1202<>$U<`2````````Z94'``!!@']8`'0428N]L!```$R)_N@`````08!O -M6`%(Q\#^____#[9,)$Q(T\!`(.B(1"1;#X2]`@``BW0D3$R)[^@`````2&-$ -M)$Q(C11`2(T4D$F-E-70$@``BT(4J0``$`!T""7__^__B4(4#[9$)%M!B$<- -M08!]0P`/A.\!``#'1"1<``````^VT$B)5"0P2(M,)&!(@<$``@``2(E,)"A( -MBT0D8$@%!`(``$B)1"0@#[94)%N)5"0<2(M,)&!(@<'0`0``2(E,)!!$#[9T -M)%Q!#[;N2(M$)#")Z4C3^*@!#X1-`0``2&/%2(T40$B-%)`/MD0D6T&(A-7A -M$@``08#^`P^&E0```(T<[0````!(8]M(BT0D*$@!V,<`.````+\0)P``Z``` -M``!(`UPD((M4)!R)$TB+3"1@QX%P`0``Q`$``$B+5"10BP*)!0````")Z8/A -M`[L'````T^-!B=Q!"<1$B2*_Z`,``.@`````]]-$(>-(BTPD4(D9C12M```` -M`$ACTD@#5"00BP*)!0````"#R`B)`NF6````C1SM`````$ACVTB+1"0H2`'8 -MQP`X````OQ`G``#H`````$@#7"0@BT0D'(D#2(M4)&#'@G`!``"H`0``2(M, -M)%"+`8D%`````(GI@^$#NP<```#3XT&)W$$)Q$B+1"101(D@O^@#``#H```` -M`/?302'<2(M4)%!$B2*-%*T`````2&/22`-4)!"+`HD%`````(/("(D"@T0D -M7`%!C48!03A%0W8LZ8/^__](B=_H`````$B-<,A(BU,(2(E#"$B)&$B)4`A( -MB0)(@WC8`'01ZPF^`````$F-7TA).5](=<I(A?9T.,9&6@!!@'U#`'0MN0`` -M``"Z`````$$/MD<-2-/XJ`%T#@^VPHA,!G"`1EH!@\(!@\$!03A-0W?=N@`` -M``"^@0```$R)_^@`````2&-$)$Q(C11`2(T4D$G'A-7`$@```````$&`?4,` -M#X5^`P``Z:$$``"Z`````+X&````3(G_Z`````"+="1,3(GOZ`````!(8T0D -M3$B-%$!(C12028V4U=`2``"+0A2I```0`'0()?__[_^)0A1)C4=(23E'2`^$ -M``(``$B)!"1(BSPDZ`````!,C7#(2(U0$$@Y4!`/A,,!``!)C49(2(E$)`A( -MBWPD".@`````2(U8\(![20UU%TB-L%`!``!(BT-02(L`2(MX*.@`````2(L3 -M2(M#"$B)0@A(B1"`NX,`````=!UFD$R)[^@`````OP$```#H`````("[@P`` -M``!UY4B+0T!(A<`/A"H!``!(QT!@`````("[@P`````/A*<```!F08-]:``/ -MA)L```"]`````$&\`````$R)X$D#A;`)``!(BS!(A?9T:@^W1B!F.T,X=6!F -M/84`=UH/M\!!@+P%8`@``/]T3$F+50`/MT8R9L'H!0^WP(T$A0`#``")@G`! -M``!)BU4`#[=.,H/A'[@!````2-/@B8)T`0``QD8D(;H`````3(GOZ`````!F -M9I!F9I"#Q0%)@\0(00^W16@YZ`^/</____9#3`1U&4R)[^@`````2(MS0+H! -M````3(GOZ`````!(BT-`#[90`@^V<`%(Q\<`````N`````#H`````$B+4T!) -MB[7P"```OP$```#H`````$B+4T!)B[7P"```OP8```#H`````$C'0T`````` -M08!O#@%!@&Y8`4B)WDR)[^@`````2(M4)`A).59(#X5&_O__08!O*`%,B?9, -MB>_H`````$B+#"1).4](#X4$_O__28U'8$DY1V`/A.\```"]`````$F)Q$R) -MY^@`````2(G#@+B#`````'0ZC44!@?U_EI@`=@>)Q>LK9F:0B<5,B>_H```` -M`+\!````Z`````"`NX,`````=`N#Q0&!_8&6F`!UVDB+0T!(A<!T=DC'0&`` -M````]D-,!'493(GOZ`````!(BW-`N@$```!,B>_H`````$B+0T`/ME`"#[9P -M`4C'QP````"X`````.@`````2(M30$F+M?`(``"_`0```.@`````2(M30$F+ -MM?`(``"_!@```.@`````2,=#0`````!!@&\.`4B)WDR)[^@`````33EG8`^% -M&?___TR)_DR)[^@`````2&-$)$Q(C11`2(T4D$G'A-7`$@```````.EW_/__ -M0;\`````#[9$)%M(B40D0$B+5"1@2('"T`$``$B)5"0X18G^00^V[TB+1"1` -MB>E(T_BH`74+1#A\)$L/A=4```!!@/X#=FA(BT0D8,>`<`$``,0!``!(BU0D -M4(L"B04`````B>F#X0.-#$F[!P```-/C08G<00G$1(DBO^@#``#H`````/?3 -M1"'C2(M,)%")&8T4K0````!(8])(`U0D.(L"B04`````@\@(B0+K9TB+1"1@ -MQX!P`0``J`$``$B+5"10BP*)!0````")Z8/A`XT,2;L'````T^-!B=Q!"<1$ -MB2*_Z`,``.@`````]]-!(=Q(BTPD4$2)(8T4K0````!(8])(`U0D.(L"B04` -M````@\@(B0)!@\<!08U&`4$X14,/A_G^__](@\1H6UU!7$%=05Y!7\-F9F:0 -M9F9FD&9F9I!F9I!!5%5328G\2(GU#[9W0T"$]G0F#[95#;L`````]L(!=`[K -M%DB)T(G92-/XJ`%U#X/#`4`X\W7LZP6[`````/9%#`)U"DB-16!(.45@=6A( -MB>_H`````(3`=%%,B>?H`````$B)QDB%P'1,2(M5:$B)16A(C45@2(D&2(E6 -M"$B),H!%#@%(B6Y0QD9(!<9&20#&AH$````/N0$```"Z`0```$B)[^@````` -MZPL/MO-,B>?H`````%M=05S#9F:09I!!5D%505154TB)_4&)]40/MO9"C02U -M`````$QCX+L`````OQ`G``#H`````$&`_0-V'DB+10!(!=`!``!,`>"+`(D% -M`````,'H%(/@`>L=D$B+10!(!=`!``!)C00$BP")!0````#!Z!2#X`&$P'4* -M@\,!9H'[+`%UJ$2)]DB)[^@`````2(GOZ`````!)8\9(C11`2(T4D$B-1-4` -M]H#@$@```70/2(NPP!(``$B)[^@`````6UU!7$%=05[#9I!!5D%505154T&) -M]4F)_$0/MO9)8\9(C11`2(T4D$B+K-?`$@``2(7M#X26`0``2,?`_O___T2) -M\4C3P(1%#0^%@`$``$B-14A(.45(=15!O0````!(C5U@@'T.`'4CZ?,"``!` -M#[;&2(T\0$B-/+A)C;S\N!(``.@`````Z=4"``!(B=_H`````$B)P4B+0PA( -MB4L(2(D92(E!"$B)"(!Y20`/A0D!```/MT$X28.\Q&`$````=0M(@WE```^$ -MV0````^W03A)BX3$8`0``$B#N(``````#X2G````QH'H``````^V44A(B="# -MX`9(@_@&=2WVP@%T*,9!2@7&04L$#[:1@0```$B+<5A(BWE0Z`````#IF``` -M`&9F9I!F9I`/ME%(2(G0@^`&2(/X!'4@]L(!=!O&04H#QD%+!$B)SDR)Y^@` -M````ZV=F9I!F9I`/ME%(2(G0@^`&2(/X!G51]L(!=4S&04L&QD%*!6;'@<@` -M`````$B)SDR)Y^@`````ZRY(BU%`28NT)/`(``"_!````.@`````ZQ8/MU$X -M28NT)/`(``"_`@```.@`````08/%`40X;0X/AI<!``#IO?[__T*-!+4````` -M2&/HNP````"_$"<``.@`````08#]`W8=28L$)$@%T`$``$@!Z(L`B04````` -MP>@4@^`!ZQM)BP0D2`70`0``2`'HBP")!0````#!Z!2#X`&$P'4*@\,!9H'[ -M+`%UJD2)]DR)Y^@`````3(GGZ`````!)8\9(C11`2(T4D$F+K-3`$@``2(7M -M#X3]````08!\)$,`="R[``````^VRP^V10U(T_BH`70/N@````")SDR)Y^@` -M````@\,!03A<)$-WV4$/ML5(C11`2(T4D$F-E-2X$@``2(E5($B-14A(.45( -M=3A(C45@2#E%8'4NZWMF9I!FD$B)W^@`````2(UPR$B+4PA(B4,(2(D82(E0 -M"$B)`DB#>-@`=!'K";X`````2(U=2$@Y74AURDB%]G1;QD9:`$&`?"1#`'1/ -MN0````"Z``````^V10U(T_BH`70.#[;"B$P&<(!&6@&#P@&#P0%!.$PD0W8B -MZ]OV10H!=`U(B>Y,B>?H`````.L-O@````!(B>_H`````%M=05Q!74%>PY!( -M@^P(3(L'1(M/,$$/MG!#0(3V=&))C8"X$@``N0````!(.?AU&NM/#[;!2(T4 -M0$B-%)!)C930N!(``$@Y^G0(@\$!0#CQ=>"`^0-V+TF+`$@%T`$``$B-%(T` -M````@>+\`P``2`'0BP")!0````#!Z!2#X`'K+;D`````28L`2`70`0``2(T4 -MC0````"!XOP#``!(`="+`(D%`````,'H%(/@`83`=!`/MO%$B<I,B<?H```` -M`.L+#[;Q3(G'Z`````!(@\0(PV9F9I!F9F:005=!5D%505154TB#[`A(B?-) -MB?Y,BZ>(````28LL)$'V1"0,$'0$QD=1!D$/MD91/`%T>3P!<A4\!`^$F0`` -M`#P(`P``Z;H!``!!QD91`4R)]DB)[^@`````QD,D@4&`3"0,"$B#NX`` -M````=`](C;.`````2(GOZ`````!(C97X````2(N%^````$B)6`A(B0-(B5,( -M2(F=^````$B)[^@`````Z>,"``!!@&0D#/=!@$92`4'&1E$`QD,D`DB)WDB) -M[^@`````2(GOZ`````#IMP(``$$/MD0D#(/@]X/($$&(1"0,08N6"`$``(U" -M`4&)A@@!``"#^@(/AP,!``!(@[N``````'0/2(VS@````$B)[^@`````2(V5 -M^````$B+A?@```!(B5@(2(D#2(E3"$B)G?@```!!@'Y"`'480;\`````38UL -M)&!!@'PD#@!U'NF>````N@````"^`@```$R)Y^@`````9I#I&P(``$R)[^@` -M````2(G#28M%"$F)70A,B2M(B4,(2(D82(M30$B%TG052(NU\`@``+\%```` -MZ`````"`2TP"2(G:O@8```!,B>?H`````("[@P````!T(F9F9I!F9I!(B>_H -M`````+\!````Z`````"`NX,`````=>5!@\<!13A\)`X/AWO___],B??H```` -M`.F)`0``08!D)`SW0<>&"`$```````!(@[N``````'0/2(VS@````$B)[^@` -M````2(V5^````$B+A?@```!(B5@(2(D#2(E3"$B)G?@```"Z`````+X&```` -M3(GGZ`````!)C40D8$DY1"1@='Q)B<5,B>_H`````$B)PTB+0$!(A<!T4TC' -M0&``````2(GOZ`````!(BW-`N@$```!(B>_H`````$B+4T!(B[7P"```OP$` -M``#H`````$B+4T!(B[7P"```OP8```#H`````$C'0T``````2(G>2(GOZ``` -M``!-.6PD8'6'3(GV2(GOZ`````!)QT0D0`````!(BT4`BY!8`0``B14````` -MA=)T"DB+10")D%@!``!!]D0D"@%T:X!]0P!T++D`````0?9$)`T!=!7K'69F -MD&9FD$$/MD0D#4C3^*@!=0^#P0$X34-WZ^L%N0`````/MMF)WDB)[^@````` -M3(GF2(GOZ`````!(8]M(C01;2(T$@TC'A,7`$@```````&9FD&:02(/$"%M= -M05Q!74%>05_#D$B#["A(B5PD"$B);"003(ED)!A,B6PD($B)\TB)_4R+;U!- -MBV4`#[=.,HG(9L'H!0^W\$ACQD&+1(1L@^$?2-/XJ`$/A6<#``!)BQ0DC02U -M``,``(F"<`$``$F+!"2+D'0!``")%0````#&0R0ABT,X)?___P`]X0$/`'4C -MO@````!(B=_H`````+H`````2(G>3(GGZ`````#I$0,``)")T`^W2S*#X1]( -MT_BH`705O@$```!(B=_H`````$R)Y^@`````#[:%Z````#P$#X?<`@``#[;` -M_R3%`````,:%Z`````&Z`0```$B)WDR)[^@`````Z;8"``#&A>@````"N@@` -M``!(B=Y,B>_H`````.F:`@``QH7H`````TB)ZKXA````3(GOZ`````!(BW58 -M2(7V=!\/MI6!````0;@`````N0$```!,B>_H`````.E;`@``00^V=0VZ```` -M`$R)Y^@`````Z40"``#&A>@````$2(-]6`!T,TB)ZKXA````3(GOZ``````/ -MMI6!````2(MU6$&X`````+D"````3(GOZ`````#I`P(``+H`````OB$```!, -MB>_H`````$$/MG4-N@$```!,B>?H`````.G:`0``@'U*_W052(GJO@8```!, -MB>_H`````.F_`0``2(GJO@8```!,B>_H`````$B+34!(A<ET$HM1!(U"`8E! -M!(/Z!0^&E`$``,9%2P'&14H`@+V#`````'0>9F:03(GGZ`````"_`0```.@` -M````@+V#`````'7E2(-]6`!T&4B+51!(BT482(E""$B)$$B+15B`:%@!ZQE( -MBU5@2(72=!`/MH6!````2,=$PE@`````2(M5`$B+10A(B4((2(D008!M#@%( -MB[T@`0``2(7_=!$/MK4-`0``N@$```#H`````$B+?5A(A?]T$0^VM8$```"Z -M`0```.@`````2(M%0$B%P'1R2,=`8`````!,B>?H`````$B+=4"Z`0```$R) -MY^@`````2(M%0`^V4`(/MG`!2,?'`````+@`````Z`````!(BU5`28NT)/`( -M``"_`0```.@`````2(M50$F+M"3P"```OP8```#H`````$C'14``````2(GN -M3(GGZ`````!!@'T)_W14O0````!!@'T.`'0RO0````!)C5U@2(G?Z`````!( -MBU,(2(E#"$B)&$B)4`A(B0*`>$K_=0F#Q0%!.&T.=]=!.&T.=Q!!QD4)_TR) -M[DR)Y^@`````2(M<)`A(BVPD$$R+9"083(ML)"!(@\0HPV9F9I!F9I!!5T%6 -M055!5%532(/L&$F)_$R+OX@```!)BQ](BX.8$0``1(LH2(G^2(G?Z`````!! -M@'PD4@%V!D'&1"11!$F-;"0H23EL)"@/A/\!``!(B>_H`````$F)QDF+1"0H -M3(EP"$F)!DF);@A-B70D*&:#>V@`#X2T`0``O0````!(C8.@#P``2(E$)!!( -MC;OX````2(E\)`@/M\5(P>`#2`.#L`D``$B+,$B%]@^$<`$```^W1B!F03E$ -M)$`/A6`!```/MY.R$@``03G5=$]F9F:0@\(!#[>#MA(``#G"N``````/0]"- -M0@%(P>`"2`.#F!$``(L`J0``"`!U&V8E_P]F.>AU$DDY]G422(G?Z`````#I -M-P$``$0YZG6U#[=&(&8]A0`/A_<````/M\"`O`-@"```_P^$Y@```$&`?U@` -M#X7;````0?9'"@$/A-````!(BQ,/MT8R9L'H!0^WP(T$A0`#``")@G`!``!( -MBP,/MTXR@^$?N@$```!(B==(T^>)N'0!```/MT8R2,'@`T@#@[`)``!(QP`` -M````#[=.,HG(9L'H!27_!P``@^$?2(G72-/G2(GY]]$AC(.X"0``#[=.,HG( -M9L'H!27_!P``@^$?2-/B]](A5(-L3#GV="Q(BP9(BU8(2(E0"$B)`DB+@_@` -M``!(B7`(2(D&2(M$)`A(B48(2(FS^`````^W=C)(BWPD$.@`````08!L)$4! -M@\4!9CEK:`^':?[__T'V1PH!=!E)BQ9)BT8(2(E""$B)$$R)]DR)Y^@````` -M2(/$&%M=05Q!74%>05_#9F9FD$%505154TB#[`A(B10D3(LG#[?V2,'F`TD# -MM"2P"0``2(L>9H%[..$!=28/MD,Z@^@1/`%W&TB+;T!!O0````!(A=)U4L9% -M40!!O0````#K1DF+E"0X"0``N&B6`0!F@7L@A0!W%`^W0R!!#[:$!&`(``!( -M:<"8`0``3(TL`KT`````2(,\)`!U#4'&A>@`````O0````"`>R2!=02`9PSW -M2(,\)``/A00!``#&0R0`]H.6````(`^$*@,``$B+0VA(A<`/A!T#``!(B<7V -M@+$````"=!U(B[B@````2(7_=!%(BW-(2(7V=`B+4S3H`````$F+E"0($0`` -M2('"0`@``$$/MD5RP>`(2)A(`<*+`HD%`````(G"P>H0B)6;````P>@89HF% -MD````$F+E"0($0``2('"1`@``$$/MD5RP>`(2)A(`<*+$HD5``````^VPF:) -MA90````/ML9FB866````B=#!Z!`/ML!FB868````P>H8B)6:````28N4)`@1 -M``!(@<),"```00^V17+!X`A(F$@!PHL"B04`````#[;`9HF%D@```.DX`@`` -MD(![)(!U"L9#)"%F9I!F9I!(BS0D2,?'`````+@`````Z`````!F@7LXX0%U -M&`^V0SJ#Z!$\`7<-2(GOZ`````#I\@$``$B)X0^V5"0#]L(!#X1]`0``BT,X -M)?___P`]X0$.``^$:@$``$F+E"0($0``2('"0`@``$$/MD5RP>`(2)A(`<*+ -M,HDU`````$F+E"0($0``2('"1`@``$$/MD5RP>`(2)A(`<)$BP)$B04````` -M28N4)`@1``!(@<)("```00^V17+!X`A(F$@!PHL*B0T`````]H.6````(`^$ -MX@```$B+>VC&A[(````0QD,D((GPP>@0B(>;````B?#!Z!AFB8>0````B<C! -MX`A!#[;0`=!FB8>4````B<BP`$R)PP^VUP'09HF'E@```(G*P>H0P>((1(G` -MP>@0#[;``<)FB9>8````28N4)`@1``!(@<),"```00^V17+!X`A(F$@!PHLR -MB34`````0`^V]F:)MY(````/MX^6````#[>7F`````^W]D0/MX>4````2,?' -M`````+@`````Z`````!)BY0D"!$``$B!PD`(``!!#[9%<L'@"$B82`'"QP(` -M````ZW%(B=Y,B>?H`````.MDA-)Y($F+!"2+B%@!``")#0````"%R71,28L$ -M)(F(6`$``.M`@#D`>#N`>0<`>35)BQ0D#[=#,F;!Z`4/M\"-!(4``P``B8)P -M`0``28L4)`^W2S*#X1^X`0```$C3X(F"=`$``$B#Q`A;74%<05W#9F9FD&9F -M9I!F9I!F9I!(@^P(#[9&.$@Y?BAU2CP(=&4\*'1A/*AT73R(9F9FD'15/`IT -M43PJ=$T\JF9F9I!T13R*=$%(BX?X````2(EP"$B)!DB-A_@```!(B48(2(FW -M^````.L?2(N7``$``$B)MP`!``!(C8?X````2(D&2(E6"$B),N@`````2(/$ -M",-F9F:09F9FD&9F9I!F9I!(@^P(Z`````!(@\0(PV:04TB#[&!(B?M(C4PD -M74B-5"1>2(UT)%\/MW\\2(U$)%)(B40D.$B-1"142(E$)#!(C40D3$B)1"0H -M2(U$)$Y(B40D($B-1"182(E$)!A(C40D6DB)1"002(U$)%M(B40D"$B-1"16 -M2(D$)$R-3"1<3(U$)%#H``````^V5"1?#[9T)%Y(C7PD2.@`````#[94)%]( -M:=*8`0``2(MS($B-NQ@)``"Y`0```.@`````#[94)%U(C1322,'B!4B+<R!( -MC;M`"0``N0$```#H``````^V5"1>2&G2R`\``$B+<R!(C;MH"0``N0$```#H -M``````^W5"182,'B`TB+<R!(C;N0"0``N0$```#H``````^W1"102(T4@$B- -M%)!(P>(#2(MS($B-NV@*``"Y`0```.@`````#[94)%P/MT0D4$@/K]!(C112 -M2,'B`DB+<R!(C;OX"0``N0$```#H`````$B+<R!(C;L@"@``N0$```"Z``(` -M`.@`````#[9,)%](BW,@2(V[6`L``+H`"```Z``````/ME0D6TC!X@5(BW,@ -M2(V[N`H``+D!````Z`````!(BW,@2(V[X`H``+D!````N@`!``#H``````^V -M5"1:2(T4DDC!X@5(BW,@2(V["`L``+D!````Z``````/MU0D5DB-%))(P>(# -M2(MS($B-NS`+``"Y`0```.@`````#[=4)%A(`=)(BW,@2(V[>`\``+D!```` -MZ``````/ME0D7T@!TDB+<R!(C;NP#P``N0$```#H``````^V5"1=2`'22(MS -M($B-N^@/``"Y`0```.@`````#[94)%Y(`=)(BW,@2(V[(!```+D!````Z``` -M```/ME,^2`'22(MS($B-NU@0``"Y`0```.@`````#[=4)$Y(C1122,'B!$B+ -M<R!(C;N0"@``N0$```#H`````(M4)$A(BW,@2(V[D!```+D!````Z``````/ -MMU0D6$C!X@9(BW,@2(V[N!```$&X`0```+E`````Z`````!(BW,@2(V[Z!`` -M`$&X`0```+D``0``N@`9``#H``````^W5"182&G2L`0``$B+<R!(C;L8$0`` -M0;@!````N8````#H``````^W5"142,'B`DB+<R!(C;M($0``0;@!````N00` -M``#H``````^W5"122,'B`DB+<R!(C;MX$0``0;@!````N00```#H``````^V -M5"1;P>(+2(MS($B-NZ@1``!!N`$```"Y"````.@`````2(MS($B-N]@1``!! -MN`$```"Y"````+H```@`Z``````/MU0D5DAITHP!``!(BW,@2('#"!(``$&X -M`0```+D(````2(G?Z`````"X`````$B#Q&!;PV9F9I!F9I!F9I!(@^PX2(E< -M)`A(B6PD$$R)9"083(EL)"!,B70D*$R)?"0P28GW28G]2(L'2(D$)$R-9TA, -MB>?H`````$B)PTR-<,A(BSPDZ`````!(B<5)BT5028E=4$V)9CA)B49`2(D8 -MN`$```!(A>UT>,9%..'&13D!QD4Z$(!-.P%)BX>@````2(E%:$B+17!,B7@H -M28V'D````$B)15#&127,00^V1EMFB44@28M%`$B)12C'1320````3(E]2$C' -MA:``````````2(U]6+X`````Z`````!(B>Y(BSPDZ`````"X`````$B+7"0( -M2(ML)!!,BV0D&$R+;"0@3(MT)"A,BWPD,$B#Q#C#9F9FD&9FD&9FD$%7059! -M54%455-(@^P82(G]2,=$)!``````2(M$)!`/MI0HY@@``(#Z_P^$Z@````^V -MRDB-!(E(C02!2(V$Q<`!``!(B40D"`^V\DACQDB-%(!(C120@+S5S@$````/ -MA+8```!!O`````!(C02)2(T$@4C!X`-,C;0%(`(``$R-+"A(8\9(C12`2(T4 -MD$R-O-7``0``3(GWZ`````!(B<-)BX4H`@``28F=*`(``$R),TB)0PA(B1A( -MBU-`2(72=!5(B[7P"```OP4```#H`````(!+3`)(B=J^`@```$B+?"0(Z``` -M``"`NX,`````=!M(B>_H`````+\!````Z`````"`NX,`````=>5!@\0!13AG -M#@^'>____TB#1"00`4B#?"00!`^%[O[__TB)[^@`````2(/$&%M=05Q!74%> -M05_#9F9FD&9FD&9FD&9FD$%7059!54%455-(@^QX2(G[QD=1`,9'4`#&1T\` -MQH=I%````$B-E[@2``"X`````,8$$`!(@\`!2#V@`0``=?!(C8/X````2(F# -M^````$B)@P`!``!(C8,(`0``2(F#"`$``$B)@Q`!``!,C:,8`0``3(FC&`$` -M`$R)HR`!``!,C:LH`0``3(FK*`$``$R)JS`!``!(C8,X`0``2(E$)$A(B8,X -M`0``2(F#0`$``$B-BT@!``!(B4PD4$B)BT@!``!(B8M0`0``3(VS:`$``$R) -MLV@!``!,B;-P`0``2(VS>`$``$B)="1`2(FS>`$``$B)LX`!``!,C;M8`0`` -M3(F[6`$``$R)NV`!``!(C4PD;DB-5"1P2(UT)'$/MWL\2(U$)')(B40D.$B- -M1"1T2(E$)#!(C40D9$B)1"0H2(U$)&I(B40D($B-1"1V2(E$)!A(C40D;$B) -M1"002(U$)&U(B40D"$B-1"1H2(D$)$R-3"1O3(U$)&;H``````^V1"1QB$-& -M#[9$)'"(0T</MD0D;HB#\0````^W1"1V9HE#:`^W1"1T9HF#M!(```^W1"1R -M@^@!9HF#MA(```^W1"1F9HE#4@^W0SQF/8"1=`IF/8"4#X6@"0``QD--!,9# -M0P3&0TY`QD-,`,:#[@````G&0T0`2(V[&`D``.@`````2(G!2(F#.`D```^V -M1"1Q2&G0F`$``$B%TG002(G(Q@``2(/``4B#Z@%U\TB-NT`)``#H`````$B) -MP4B)@V`)```/MD0D;DB-!,!(B<)(P>(%2(72=!!(B<C&``!(@\`!2(/J`77S -M2(V[:`D``.@`````2(G!2(F#B`D```^V1"1P2&G0R`\``$B%TG002(G(Q@`` -M2(/``4B#Z@%U\TB-NY`)``#H`````$B)P4B)@[`)```/MT0D=DB-%,4````` -M2(72=!!(B<C&``!(@\`!2(/J`77S2(V[(`H``.@`````2(F#0`H``$B-N_@) -M``#H`````$B)Q4B)@Q@*``!(C;MH"@``Z`````!(B<)(B8.("@``9H-\)&8` -M=$BY`````$B):F`/MD0D;XA"6$B+@R`!``!(B9,@`0``3(DB2(E""$B)$`^V -M1"1O2(T$0$B-;(4`2('"J````(/!`68Y3"1F=[U(C;N0"@``Z`````!(B<)( -MB8.P"@``9H-\)&H`="^Y`````,9"$`!(BX,P`0``2(F3,`$``$R)*DB)0@A( -MB1!(@\(P@\$!9CE,)&IWUDB-N[@*``#H`````$B)PDB)@]@*``"`?"1M`'0S -MN0````!(BX-``0``2(F30`$``$B+="1(2(DR2(E""$B)$$B#PB"#P0$/MD0D -M;68YR'?22(V[X`H``.@`````2(G"2(F#``L``$B-B``!``!(BX-0`0``2(F3 -M4`$``$B+="102(DR2(E""$B)$$B#PB!(.<IUVDB-NP@+``#H`````$B)PDB) -M@R@+``"`?"1L`'0QN0````!(BX-P`0``2(F3<`$``$R),DB)0@A(B1!(@<*@ -M````@\$!#[9$)&QF.<AWU$B-NS`+``#H`````$B)PDB)@U`+``!F@WPD:`!T -M*[D`````2(N#8`$``$B)DV`!``!,B3I(B4((2(D02(/"*(/!`68Y3"1H=]J` -M?"1Q`'1)O0````!,C:-8"P``3(GGZ``````/M]5(B833>`L``$B+DX`!``!( -MB8.``0``2(M,)$!(B0A(B5`(2(D"@\4!#[9$)'%F.>AWPTB-NW@/``#H```` -M`$B)@Y@/``!(B8.@#P``#[=T)'9FB;.J#P``#[?V2(V[H`\``.@`````2(V[ -ML`\``.@`````2(F#T`\``$B)@]@/```/MG0D<6:)L^(/```/M_9(C;O8#P`` -MZ`````!(C;OH#P``Z`````!(B8,($```2(F#$!````^V="1N9HFS&A````^W -M]DB-NQ`0``#H`````$B-NR`0``#H`````$B)@T`0``!(B8-($```#[9T)'!F -MB;-2$```#[?V2(V[2!```.@`````2(V[6!```.@`````2(F#>!```$B)@X`0 -M```/MD,^9HF#BA````^V<SY(C;N`$```Z`````!(C;N0$```Z`````!(B<%( -MB8.P$```#[9$)'!(C03`2,'@!XG&@<9@5P``=!*)\DB)R,8``$B#P`%(@^H! -M=?-(BX.P$```B3!(BY.P$```#[9$)'"(0@0/ME0D<$B+N[`0``#H`````$&X -M`````(T4@#BS@)``!(C4$@2(E!($@#DS@)``!(C4(@2(E"*(/&`0^V1"1Q9CGP -M#X=T____9L>#[```````N`````!F9I!F9I#&A!A@"```_TB#P`%(/88```!U -M[(!\)'``#X2]````O@`````/M\9(:<#(#P``2(N3B`D``,9$`E@`2(N3B`D` -M`,9$$%D`2(N3B`D``$C'1!`0`````$B)P4@#BX@)``!(C5$82(E1&$B)P4@# -MBX@)``!(C5$82(E1($B)P4@#BX@)``!(C5$H2(E1*$B)P4@#BX@)``!(C5$H -M2(E1,$B+DX@)``!,B400"$B)P4@#BX@)``!(C5%(2(E12$@#@X@)``!(C5!( -M2(E04(/&`0^V1"1P9CGP#X=(____QH/O````@(!\)&X`#X2"````O@`````/ -MM\9(C03`2,'@!4B+DV`)``!FQT0"3@0`2(N38`D``,9$$$(`2(N38`D``,9$ -M$$3_2(N38`D``,9$$%#_2(G!2`.+8`D``$B-42A(B5$H2(G!2`.+8`D``$B- -M42A(B5$P2(N38`D``$R)A!"(````@\8!#[9$)&YF.?!W@\:#\````()(C;/@ -M$```2(V[N!```.@`````2(F#V!```$B-LQ`1``!(C;OH$```Z`````!(B8,( -M$0``2(VS0!$``$B-NQ@1``#H`````$B)@S@1``!(C;-P$0``2(V[2!$``.@` -M````2(F#:!$``$B-LZ`1``!(C;MX$0``Z`````!(B8.8$0``2(VST!$``$B- -MNZ@1``#H`````$F)Q$B)@\@1``!(BZO0$0``@'PD;0!T4D&]`````$B+?"1( -MZ`````!,B6`02(EH&$B+DT`!``!(B8-``0``2(MT)$A(B3!(B5`(2(D"28'$ -M``@``$B!Q0`(``!!@\4!#[9$)&UF1#GH=[1(C;,`$@``2(V[V!$``.@````` -M28G$2(F#^!$``$B+JP`2``!!O0````!(BWPD4.@`````3(E@$$B):!A(BY-0 -M`0``2(F#4`$``$B+3"102(D(2(E0"$B)`DF!Q````0!(@<4```$`08/%`69! -M@_T(=;A(C;,P$@``2(V["!(``.@`````2(F#*!(``$R+HS`2``!F@WPD:`!T -M2$B)Q4&U`$R)_^@`````2(EH$$R)8!A(BY-@`0``2(F#8`$``$R).$B)4`A( -MB0)(@<6,`0``28'$C`$``$&#Q0%F1#EL)&AWODB#Q'A;74%<05U!7D%?PV9F -M9I!F9F:0055!5%532(/L"$F)_4F)]$B+GH@````/ME9'2(G^2(G?Z`````!( -MB<5F08-,)$X008!]0P!T6;D`````]D,-`70-ZTP/MD,-2-/XJ`%U#8/!`4$/ -MMD5#9CG(=^AF@_D#=C-)BT4`2`70`0``2(T4C0````"!XOS_`P!(`="+`(D% -M`````,'H%(/P`8/@`>LQN0````!)BT4`2`70`0``2(T4C0````"!XOS_`P!( -M`="+`(D%`````,'H%(/P`8/@`83`=!`/MO%,B>_H`````.F7`0``2(U#8$@Y -M0V`/A!D!``!(A>T/A!`!```/MH6!````2<=$Q%@`````2(M5`$B+10A(B4(( -M2(D02(GJO@8```!(B=_H`````("]@P````!T&TR)[^@`````OP$```#H```` -M`("]@P````!UY4B+14!(A<!T2$C'0&``````]D5,!'4(3(GOZ`````!(BU5` -M28NU\`@``+\!````Z`````!(BU5`28NU\`@``+\&````Z`````!(QT5````` -M`(!K#@%(B>Y,B>_H`````$F+10"+D%@!``")%0````"%TG0*28M%`(F06`$` -M`$'&1"1"`&9!@V0D3N]!@'PD.P!T*KH`````#[?"28M$Q%A(A<!T"H!X2O\/ -MA7X```"#P@%!#[9$)#MF.=!WVT&`?"1.`'@/O0````!!@'PD.P!U$>M+3(GF -M3(GOZ`````!FD.M*#[?%28M<Q%A(A=MT(?9#3`)T&TB+4T!)B[7P"```OP8` -M``#H`````(!C3/UFD(/%`4$/MD0D.V8YZ'?$9D''1"1.`@!!@&0D2?U(@\0( -M6UU!7$%=PV9FD&9FD&9FD$%7059!54%455-(@^PH28G\2(E\)!A(BT=02(E$ -M)"!(BQA(BX.8$0``1(LP2(G^2(G?Z`````!!@+PDZP````%V"4'&A"3H```` -M!$F-;"0@23EL)"`/A&4"``!(B>_H`````$F)QTF+1"0@3(EX"$F)!TF);PA- -MB7PD(&:#>V@`#X0+`@``0;T`````2(VSH`\``$B)="002(V#^````$B)1"0( -M00^WQ4C!X`-(`X.P"0``2(LH2(7M#X3#`0``#[=%(&9!.40D.`^%LP$```^W -MD[(2``!!.=9T469FD&:0@\(!#[>#MA(``#G"N``````/0]"-0@%(P>`"2`.# -MF!$``(L`J0``"`!U'&8E_P]F1#GH=1)).>]U$DB)W^@`````Z9D!``!$.?)U -MM$B+="0@@'Y8``^%1P$```^W12!F/84`#X<Y`0``#[?`@+P#8`@``/\/A"@! -M``!(@WPD&``/A`8!``!!#[9$)$BH`0^$^````*@$#X3P````2(L3#[=%,F;! -MZ`4/M\"-!(4``P``B8)P`0``2(L##[=-,H/A'[H!````2(G62-/FB;!T`0`` -M#[=%,DC!X`-(`X.P"0``2,<```````^W33*)R&;!Z`4E_P<``(/A'TB)UDC3 -MYDB)\??1(8R#N`D```^W33*)R&;!Z`4E_P<``(/A'TC3XO?2(52#;$PY_71' -M2(M5`$B+10A(B4((2(D02(.]@`````!T#TB-M8````!(B=_H`````$B+@_@` -M``!(B6@(2(E%`$B+1"0(2(E%"$B)J_@````/MW4R2(M\)!#H`````$&`K"2# -M`````>L62(MT)"#V1@H"=`M(B>Y,B>?H`````$&#Q0%F1#EK:`^'$_[__TB# -M?"08`'0G00^V1"1(J`%T':@$=!E)BQ=)BT<(2(E""$B)$$R)_DR)Y^@````` -M2(/$*%M=05Q!74%>05_#D$B+1U!,BPA!N`````!$C1060P^VA`A@"```//]T -M0@^VP$AIT)@!``!(B=!)`X$X"0``0#BP#@$``'4E2#FX(`$``'4<1(B0#0$` -M`$F+@3@)``"(C`(,`0``9F9FD&9FD$F#P`%)@?B`````=:3SPY!(BW]8#[:' -MP````#Q/=S$/ML!(C01`2,'@!`'RB)0'R0````^VA\````!(C01`2,'@!(B, -M!\@```"`A\`````!\\-F9F:09F9FD&9FD&9FD$&X_____V:%]G1,2(GZ0;C_ -M____OP````!F9F:09F:0#[8*C4'0/`EW&T&`^/^X`````$0/1,!!#[;`C02` -M1(U$0=#K!D&`^/]U#(/'`4B#P@%F.?=UR4$/ML##9F9FD$B+1U!,BP"Y```` -M`&9F9I!"#[:$`6`(```\_W0J#[;`2&G`F`$``$D#@#@)``!(.;@@`0``=1!` -M.+`-`0``=0>(D`\!``##2(/!`4B!^8````!UO//#9F9FD&9FD&9FD$B+1U!, -MBQ!,BU]80;D`````0P^VA!%@"```//]T0@^VP$AIP)@!``!)B<!-`X(X"0`` -M23FX(`$``'4E03BP#0$``'4<A,ET#$F+@!@!``!(B0+K&4B+`DF)@!@!``#K -M#4F#P0%)@?F`````=:1-B=BX`````$$/MKC(````0(#_`78_0(#_%W0Y03BP -MR0```'4PA,ET%DB82(T$0$C!X`1)BX0#T````$B)`L-(F$B-!$!(P>`$2(L2 -M28F4`]````##@\`!28/`,(/X4'6G\\-!5D%505154TB#[!!)B?Y!B?%(B[\H -M`0``#[9'`L'@"`^V5P-$C00000^WP(/`!#T`"```#X_L````0(3V=$Q!#[:6 -M$`$``+[@____(=8/MD<!@^`/B=`)\`G(O@@````AUH/@\XG1@^$$"?`) -MR(/B`H/@_$$/MHX0`0``@^$!"=`)R(A'`>M*#[97`;[@____(=9!#[:&$`$` -M`(/@#XG1@^$0"?`)R+X(````(=:#X/.)T8/A!`GP"<B#X@*#X/P/MD\!@^$! -M"=`)R$&(AA`!``!(C5<(00^WP$R-9`<$23G4=C](B50D"+L`````00^VZ4R- -M;"0(9F:09F:0#[;SB>E,B>I,B??H`````$B+1"0(2(/`!$B)1"0(@\,!3#G@ -M<MI(@\006UU!7$%=05[#9F9FD&9FD&9FD&9FD%-(B?M(BTY(#[9!`L'@"`^V -M40,!T`^WP(U0!`^W1C0YPG\?2(N_*`$``$ACTDB)SN@`````O@````!(B=_H -M`````%O#9F9FD&9F9I!F9F:005=!5D%505154TB#[`A)B?=!B=1(BU]828G> -MO0````!,C6X$#[:#R````#P!=D$\%W0]1#BCR0```'4T00^V5P-(8\5(C01` -M2,'@!$F-O`;8````@/H@N"`````/1]`/MM),B>[H`````&9FD&9FD(/%`4B# -MPS"#_5!UJ$B#Q`A;74%<05U!7D%?PV9FD&:02(/L2$B)7"082(EL)"!,B60D -M*$R);"0P3(ET)#A,B7PD0$F)_$&)UXG+3(D$)$"(="0/2(M'4$R+,$R)]^@` -M````2(G%2(7`#X3V````3(GWZ`````!)B<5(A<!U$DB)[DR)]^@`````Z=8` -M``!FD$B-15A(B40D$$F+?1")VDF+M"0H`0``Z`````#&A9@````*QD4EK$$/ -MMT0D.&:)12!(BQ0D2(E5:$R)=2B)732#C90````228M%$$B)14A,B6UX28V$ -M).P```!(B450QD4P($C'A:``````````QD4X.\9%.0(/MD0D#XA%.D2)^,'H -M$(A%.TR)^@^VQHA%/$2(?3T/MD4VB$4^#[9%-8A%/XA=0,9%00"^`````$B+ -M?"00Z`````"+531)BW482(M\)!#H`````$B)[DR)]^@`````2(M<)!A(BVPD -M($R+9"0H3(ML)#!,BW0D.$R+?"1`2(/$2,-F9I!F9I!F9I!(@^Q(2(E<)!A( -MB6PD($R)9"0H3(EL)#!,B70D.$R)?"1`28G\08G7B4PD"$R)PT"(="0/2(M' -M4$R+,$R)]^@`````2(G%2(7`#X3J````3(GWZ`````!)B<5(A<!U$4B)[DR) -M]^@`````Z<H```"02(U%6$B)1"00QH68````"L9%):Q!#[=$)#AFB44@2(E= -M:$R)=2C'A90````(````3(EM>$F+11!(B45(BU0D"(E5-$F-A"3L````2(E% -M4,9%,"!(QX6@`````````,9%.#S&13D"#[9$)`^(13I$B?C!Z!"(13M,B?H/ -MML:(13Q$B'T]#[9%-HA%/@^V136(13\/MD0D"(A%0,9%00"^`````$B+?"00 -MZ`````"+531)BW482(M\)!#H`````$B)[DR)]^@`````2(M<)!A(BVPD($R+ -M9"0H3(ML)#!,BW0D.$R+?"1`2(/$2,-F9F:02(/L.$B)7"0(2(EL)!!,B60D -M&$R);"0@3(ET)"A,B7PD,$F)_$B+1U!,BSA(BY<H`0``#[9"`L'@"`^V4@,! -MT`^WP$2-:`1!@?T`"```#X_.````3(G_Z`````!(B<5(A<`/A+H```!,B?_H -M`````$F)QDB%P'402(GN3(G_Z`````#IF@```$B-75A(BW@026/528NT)"@! -M``#H`````,9%):Q!#[=$)#AFB44@3(E]*$2);32#C90````228M&$$B)14A, -MB75X28V$).P```!(B450QD4P($C'A:``````````QD4X'<9%.1#&13H"#[9% -M-8A%.T2(;3R^`````$B)W^@`````BU4T28MV&$B)W^@`````2(GN3(G_Z``` -M``!(BUPD"$B+;"003(MD)!A,BVPD($R+="0H3(M\)#!(@\0XPV9F9I!F9F:0 -M9F:02(/L*$B)7"082(EL)"!(B?N)U4C'1"00`````(!_2P%T04B-5"000`^V -M]KD!````Z`````!(BT0D$$B%P'0D@`B`0(3M=`M(BT0D$(!(`R#K"4B+1"00 -M@&`#WTB)W^@`````2(M<)!A(BVPD($B#Q"C#9F9FD&9F9I!F9I!F9I!(@^PX -M2(E<)`A(B6PD$$R)9"083(EL)"!,B70D*$R)?"0P28G]08GW2(M'4$R+,$R) -M]^@`````2(G%2(7`#X2I````3(GWZ`````!)B<1(A<!U$$B)[DR)]^@````` -MZ8D```!(C5U8QD4EK$$/MT4X9HE%($R)=2C'A90````(````3(EE>$F+1"00 -M2(E%2,=%-``(``!)C87L````2(E%4,9%,"!(QX6@`````````,9%.!S&13D! -M1(A].L9%.PC&13P`O@````!(B=_H`````(M5-$F+="082(G?Z`````!(B>Y, -MB??H`````$B+7"0(2(ML)!!,BV0D&$R+;"0@3(MT)"A,BWPD,$B#Q#C#D$%7 -M059!54%455-(@^P82(D\)$B+3D@/MD$"P>`(#[91`XT\$`^WQX/`!`^W5C0Y -MT`^/6@$``$R-:0@/M\=,C70!!$R);"0(0;P`````QT0D%`````!-.?4/@]D` -M``!FD`^V1"04B$0D$T$/MD4"P>`(00^V50-$C3P000^W]TB+?"0(2(/'!.@` -M````B<$\_W5>00^WQTB+7"0(2(U4`P1(B=-).=8/AL\```!!B<R0#[9"`L'@ -M"`^V4@.-+!`/M_5(C7L$Z``````\_W4(08#\_W5YZW%!.,1$#T?@#[?%2(U4 -M`P1(B=-).=9V8.O!D(G"1"CB#[;2#[9<)!.)WDB+/"3H`````(G:3(GN2(L\ -M).@`````00^WQTB+5"0(3(UL`@1,B6PD"(-$)!0!33GN#X<I____O@(```!( -MBSPDZ`````#K24&\``````^V5"033(GN2(L\).@`````00^WQTB+7"0(3(UL -M`P1,B6PD"(-$)!0!Z>7^__\/ME0D$TR)[DB+/"3H`````.NI9I!(@\086UU! -M7$%=05Y!7\.005=!5D%505154TB#[`A)B?Y(BTY(#[9!`L'@"`^V40,!T`^W -MP(/`!`^W5C0YT`^/#`$``$B-40@/MG$!QD0D`P"Y``````^V0@(`1"0##[9" -M`TB-5`($@\$!0#C.<^>`?"0#``^$O@```$B-:@1!OP````!!O0````#'1"0$ -M``````^V5?U!`=4/MD7\/`%T!#P7=3M$B>LHTT$XW79Q#[9$)`2#P`%$#[;@ -M9F:09I`/MDW\#[;S1(GB3(GWZ`````"#PP%$..MT1NOD9F9FD$F+1EB`N,$` -M```!=#-$B>LHTT$XW78I#[9$)`2#P`%$#[;@#[9-_`^V\T2)XDR)]^@````` -M@\,!1#CK=>9F9I!!@\<!@T0D!`%(@\4$1#I\)`,/A5K___])BT98QH#!```` -M`;X'````3(GWZ`````!(@\0(6UU!7$%=05Y!7\.02(/L*$B)'"1(B6PD"$R) -M9"003(EL)!A,B70D($F)_$B%_P^$Q````$B+1U!,BS!,B??H`````$B)Q4B% -MP`^$J0```$R)]^@`````28G%2(7`=1!(B>Y,B??H`````.F)````2(U=6,9% -M):Q!#[=$)#AFB44@3(EU*,>%E`````@```!,B6UX28M%$$B)14C'130`"``` -M28V$).P```!(B450QD4P($C'A:``````````QD4X',9%.0'&13H"QD4[",9% -M/`"^`````$B)W^@`````BU4T28MU&$B)W^@`````2(GN3(GWZ`````!(BQPD -M2(ML)`A,BV0D$$R+;"083(MT)"!(@\0HPV9F9I!F9I!(@^P82(D<)$B);"0( -M3(ED)!!(B?-)B?Q(BVYH#[=6(&:!^H4`#X>6````#[?"#[:,!V`(``"`^?\/ -MA((```!F@_I_=QP/ML%(BY<X"0``2&G`F`$``$B+1!!0#[9`".M!9H'Z@0!W -M'`^VP4B+EX@)``!(:<#(#P``2(M$$`@/MD`(ZQX/ML%(BY=@"0``2(T$P$C! -MX`5(BX00B`````^V0`@\_W0;#[;`08"\!.8(``#_=`V`^?]T"`^V0R0\!G4O -M2(-[>`!T#$B-<WA,B>?H`````$B)WDR)Y^@`````QT50_____TB)[_]52.MR -M9I"$P'4Y]H.4````"'032(M],(M3-$B+<TCH`````&9FD,=%4`````!(BU4X -M2(72=`6+12")`DB)[_]52.L3QT50_____TB)[_]52&9FD&9FD$B#>W@`=`Q( -MC7-X3(GGZ`````!(B=Y,B>?H`````&:02(L<)$B+;"0(3(MD)!!(@\08PV9F -M9I!F9I!F9I!F9I!(@^PH2(E<)`A(B6PD$$R)9"083(EL)"!(B?-)B?Q$#[9N -M)`^W1B!F/84`=QM(BY<X"0``#[?`#[:$!V`(``!(:<"8`0``ZPQ(BY<X"0`` -MN&B6`0!(C2P"183M=2-FQX7(``````"`>S@<=12`>SH"=0Y(B=Y(B>_H```` -M`&9FD$B#>W@`=`Q(C7-X3(GGZ`````!(B=Y,B>?H`````$&`_09T/4B-G6`! -M``!)BWPD*$B)WN@`````QX5@`0``@(0>`$C'A7`!````````2(FM>`$``$F+ -M?"0H2(G>Z`````!(BUPD"$B+;"003(MD)!A,BVPD($B#Q"C#9F:09F:005=! -M5D%505154TB#[`A)B?]!B=9(BT=02(LH0;P`````3(UN#$$/MH0L8`@``#S_ -M=$X/ML!(:=B8`0``2(G?2`.].`D``$B!Q]0```"Z"````$R)[N@`````A,!T -M(DB+A3@)``!$B+0##@$``$B+A3@)``!,B;P#(`$``&9F9I!)@\0!28'\@``` -M`'682(/$"%M=05Q!74%>05_#9F9FD$%7059!54%455-(@^P82(E\)`A(BTY( -M#[9!`L'@"`^V40.-/!`/M\>#P`0/MU8T.=`/C^8```!(C5D(#[?'2(U,`01( -MB4PD$$F)W4@YV0^&N@```$&^`````&9FD&9FD$2)\@^V"X3)#XB%````B<B# -MX`\\!G5\]D,#P'0&]D,%P'5P]L$0=#F`>P0`9F9FD'1A28UM"$&\`````&9F -M9I`/ME,#2(GN2(M\)`CH`````$B#Q1Q!@\0!1#AC!'8TZ]^`>P(`="Q)C6T$ -M0;P`````1`^V^D2)^DB)[DB+?"0(Z`````!(@\4<08/$`40X8P)WX@^V0P%) -MC5P%`DF)W4&#Q@%(.UPD$`^"4O___[X!````2(M\)`CH`````$B#Q!A;74%< -M05U!7D%?PV9F9I!!5T%6055!5%532(/L*$B)="0(2(E\)!`/MD8DB$0D)P^W -M5B!F@?J%``^'Z`,```^WP@^VC`=@"```N/\```"`^?]T<F:#^G]W(0^VP4B+ -M7"002(N3.`D``$AIP)@!``!(BT004`^V0`CK2V:!^H$`=R$/ML%(BUPD$$B+ -MDX@)``!(:<#(#P``2(M$$`@/MD`(ZR,/ML%(BUPD$$B+DV`)``!(C03`2,'@ -M!4B+A!"(````#[9`"$B82(M4)!!$#[:\`N8(``!+C02_28T$ATB-A,+``0`` -M2(E$)!A(BY(X"0``#[;!2&G`F`$``$B-+`*`?"0G``^%M0(``&;'A<@````` -M`$B+1"0(@'@X'`^%G0(```^V0#H\`G15/`)W"CP!#X6)`@``ZR,\!V9FD&:0 -M="P\"@^%=@(``$B+="0(2(GOZ`````#I9`(``$B+="0(2(GOZ`````#I4@(` -M`$B+="0(2(GOZ`````#I0`(``$B+="0(2(GOZ`````!(C9U@`0``2(M%4$B+ -M`$B+>"A(B=[H`````,>%8`$``("$'@!(QX5P`0```````$B)K7@!``!(BT50 -M2(L`2(MX*$B)WN@`````QD5*_TN-!+])C02'2(M<)!"`O,/.`0````^$F@$` -M`$&\`````$N-!+])C02'2,'@`TR-M`,@`@``2(T<&$R-J\`!``!F9I!F9I!, -MB??H`````$B)Q4B+@R@"``!(B:LH`@``3(EU`$B)10A(B2B`?4K_#X27```` -M@'U)``^%F````$B)[H"]Z0`````/A%@!```/ME5(2(G0@^`&2(/X!G4H]L(! -M=",/MI6!````2(MU6$B)Z4B+?"08Z`````#I)@$``&9FD&9FD$B#^`1U&_;" -M`69F9I!F9I!T#TB+?"00Z`````#I_P```$B#^`8/A?4```#VP@%FD`^%Z@`` -M`$B+?"00Z`````#IVP```,:%Z0````!F9F:008/$`4$/MD4.1#C@#X<>____ -M03C$#X6$````A,`/A'P```!!O`````!+C02_28T$ATC!X`-(BU0D$$R-K`(@ -M`@``2(T<$$R-L\`!``!F9I!,B>_H`````$B)Q4B+@R@"``!(B:LH`@``3(EM -M`$B)10A(B2B`?4K_=!L/MD5)/")T!#P-=0^^"@```$B)[^@`````ZSM!@\0! -M13AF#G>Q2XT$OTF-!(=(BUPD$,:$P\D!``#_2(MT)!A(B=_H`````(!\)"<` -M#X6D````9F9FD$B+1"0(2(-X>`!T$4B)QDB#QGA(BWPD$.@`````2(MT)`A( -MBWPD$.@`````@'PD)P!T;0^WA<@```"#P`%FB87(````9H/X"G8.9L>%R``` -M````Z;[]__^^"@```$B)[^@`````ZSE(BU0D$$0/MKKE"0``2XT$OTF-!(=( -MC83"P`$``$B)1"082(N2.`D``+AHE@$`Z:+\__]F9I!F9I!(@\0H6UU!7$%= -M05Y!7\.02(7_=$M(A?9T1DB%TG1!2(7)=#QF08'XA0!W-$$/M\"`O`=@"``` -M_W0FQD(XX<9".0'&0CH39D2)0B!(B7(H2(F*H````+@!````PV9F9I"X```` -M`,-F9F:09F:09F:02(M'"(M`!(D%`````(G"@<H```P`)?__\_]`A/8/1<)( -MBU<(B0)(BU<(B4(,2(M7"(E"$$B+5PB)0A1(BU<(B4(82(M7"(E"!,.0D)"0 -MD)!,BU0D($R+7"0PB?AF@?\B)W=?9H'_("</@Y0```!F@?]`(0^$B0```&:! -M_T`A9I!W(&:!_R`A='EF@?\B(6:0='!F@?]0!W5O9F9FD&9FD.M@9H'_1"%T -M66:!_T0A9I!R5F8M$"=F@_@!=TQF9F:0ZT!F@?^")W0Y9H'_@B=FD'<29H'_ -M)"=T*6:!_X`G9I!U)NL>9H'_@)%F9F:09F:0=!!F@?^`E'0)9H'_@')FD'4& -MQ@9`Q@("Q@$$#[862(M$)!B($&9!QP*``&9!QP,``$'&`2!(BT0D"&;'```! -M#[862(M$)!"($`^V!F9!`P)F00,#2(M4)"AFB0)F08D`00^W$DB+1"0X9HD0 -M00^W$H/""TB+1"1`9HD0PV9F9I!31`^W7VAF187;#X3S````3(N/L`D``$&Z -M`````+O_____28L!2(7`#X3#````#[=0(+C_````B=EF@?J%``^'@P````^W -MPD0/MH0'8`@``$2)P4&`^/]T:F:#^G]W(4$/ML!(BY<X"0``2&G`F`$``$B+ -M1!!0#[9(".M'9F9FD&:!^H$`=QU!#[;`2(N7B`D``$AIP,@/``!(BT00"`^V -M2`CK'T$/ML!(BY=@"0``2(T$P$C!X`5(BX00B`````^V2`A!#[;`2(N7.`D` -M`$`X\74>#[?`2&G`F`$```^V1!!(J`%T"Z@$=`>X`0```.L708/"`4F#P0AF -M13G:#X4?____N`````!;PV9FD&9FD$B+1U!,BQ!-BYK8$```10^W2FBY```` -M`$&X`````.M##[?Q28N"L`D``$B+%/!(A=)T+8M"."7___\`/>$!$`!T'@^W -M1SAF.T(@=11(B?!(P>`&9D8Y1!@(=`YF9I!FD(/!`69$.<ERMV9$.<ET$T&# -MP`%F08/X'W<(N0````"0Z^%!#[?`PV9FD&9FD&9FD$B+1U!(A<!T&L8`<$B+ -M1U!`B'`"2(M'4,9`!P!(BT=0B%`,\\-F9F:09F9FD&9FD//#9F9FD&9F9I!F -M9I!F9I!!B?%,B<J!XO\!``!(BX>P"0``3(L$T$V%P'0K#[:W[@```$$/MD`E -MB?'3X`^W^$$/M]&X__\``-/@(<(YU[@`````3`]%P$R)P,-F9I!FD+@````` -MQ@0X`$B#P`%(/2`!``!U\,9'1/_&1U#_2(U'*$B)1RA(B4<PPV9FD&9FD+@` -M````Q@0X`$B#P`%(/9@!``!U\,:'@````/_&1W+_QH>"````'TB-1R!(B4<@ -M2(E'*,-F9F:09F9FD&9F9I!(BP9(BY<P`0``2(F',`$``$B!QR@!``!(B3A( -MB5`(2(D"2,<&`````,-F9I!F9I!(BY<@`0``2(FW(`$``$B-AQ@!``!(B09( -MB58(2(DR2(-^<`!T"4B#QG#H`````//#9F9FD&9F9I!F9F:09F:02(L&2(N7 -M4`$``$B)AU`!``!(@<=(`0``2(DX2(E0"$B)`DC'!@````##9F:09F:02(L& -M2(N70`$``$B)AT`!``!(@<<X`0``2(DX2(E0"$B)`DC'!@````##9F:09F:0 -M2(N'<`$``$B)MW`!``!(@<=H`0``2(D^2(E&"$B),,-(BP9(BY>``0``2(F' -M@`$``$B!QW@!``!(B3A(B5`(2(D"2,<&`````,-F9I!F9I!(BP9(BY=@`0`` -M2(F'8`$``$B!QU@!``!(B3A(B5`(2(D"2,<&`````,-F9I!F9I!`@/\7=Q%` -M#[;'_R3%`````+@T````P[@$````9F9FD,.X/````,.X%````&9F9I##N$`` -M``##N!P```!F9F:0P[@8````P[@H````9F9FD,.X(````,.X3````&9F9I## -M9F9FD&9F9I!F9F:09F:0#[962$B)T(/@!DB#^`9U$/;"`0^$VP```&9F9I!F -M9I"`?G+_#X7*````2(L'1(N(&`$``$2)#0````"Y`````+@!````08G`0=/@ -M187!=3.(3G)(BQ=$B<!$"<B)@A@!``!(BP>+@%@!``")!0````!$B<(APG1X -M2(L'B9!8`0``ZVV#P0&#^2!UM4B+!T2+B!P!``!$B0T`````L0!FD(G*N`$` -M``!!B<!!T^!%A<%U-HU"((A&<DB+%T2)P$0)R(F"'`$``$B+!XN`8`$``(D% -M`````$2)PB'"=!-(BP>)D&`!``#K"(/!`8/Y('6P@$=$`?/#9F9FD&9FD&9F -MD(!^4/\/A<4```!(BP=$BX@8`0``1(D-`````+D`````N`$```!!B<!!T^!% -MA<%U,XA.4$B+%T2)P$0)R(F"&`$``$B+!XN`6`$``(D%`````$2)PB'"='-( -MBP>)D%@!``#K:(/!`8/Y('6U2(L'1(N('`$``$2)#0````"Q`&:0N`$```!! -MB<!!T^!%A<%U,XA.4$B+%T2)P$0)R(F"'`$``$B+!XN`8`$``(D%`````$2) -MPB'"=!-(BP>)D&`!``#K"(/!`8/Y('6U@$=$`?/#9F9FD&9F9I!F9F:09F:0 -M2(MW0$B%]G0YN0````!FD$B+1,Y82(7`=`@XD($```!T#$B#P0%(@_D%=!;K -MXF:!?D"%`'<,2(7`9F9FD&9FD'4%N`````#SPV9F9I!F9I!!54%455-(B?U) -MB<W!Y@@/MM(!UH!_,``/A-4```!(@W]0``^$R@```(N'E````*@)00^4P+D` -M````2,?'`````$&)S`^W%,^)\"'09CG"#X60````#[8$S0`````\`W0$/`=U -M"T0X!,T`````=7:0QD4D($UCY$C'PP````!"#[94XP8/MO!(B>_H`````$B+ -M55!"#[9$XP>(0@U-A>UT-$F+30!(B<I(P>H@2(M%4(E0`TB+15"`"(#VA98` -M```$=!*%TG0.2(M%4(E("$B+15"`('](BU50#[9%,(/H!XA"!^L.2(/!`4B# -M^1`/A4[___];74%<05W#9F:09F:02(/L"$B-EU@!``"X`````$@YEU@!``!T -M$$B)U^@`````2,=`(`````!(@\0(PV:02(/L"$B-EW@!``"X`````$@YEW@! -M``!T"$B)U^@`````2(/$",-F9F:09F:09F:02(/L"$B-EV@!``"X`````$@Y -MEV@!``!T*$B)U^@`````2(G!N@````!F9F:09F:0Q@0*`$B#P@%(@?J@```` -M=>](@\0(PV9F9I!F9I!F9I!(@^P(2(V7.`$``+@`````2#F7.`$``'0(2(G7 -MZ`````!(@\0(PV9F9I!F9I!F9I!(@^P(2(V7*`$``+@`````2#F7*`$``'0, -M2(G7Z`````#&0!``2(/$",-F9I!F9I!!5T%6055!5%532(/L"$F)_T&)]<=$ -M)`0`````0;X`````0P^VA#[@"```//\/A!T!```/MM!!C8:`````9CV!`'=] -M#[?"2&G`R`\``$B)PTD#GX@)``"`>U@`=%.]`````$R-8TA,B>?H`````$B- -M2/!(BU-02(E#4$R)81!(B5$82(D"BT%()0#__P`]``#_`'43]D%+!'0-2(M! -M0$B%P'0$1(AH`8/%`4`X:UAWMD2(J\(```!!@\4!Z9`````/M\)(C03`2,'@ -M!4B)QDD#MV`)``"`?CL`=#VY``````^VP4B+5,982(72=".+0D@E`/__`#T` -M`/\`=13V0DL$=`Y(BT)`2(7`=`5$B&@!D(/!`3A..W?(1(BN%`$``("^%0$` -M``-U'X-$)`0!BT0D!(/``X/X!G8708/%`<=$)`0`````ZPE!@\4!9F:09I!) -M@\8!28/^!@^%Q/[__TF+A_`(``!,.?AU#TB-N'@4``!$B>[HA_[__TB#Q`A; -M74%<05U!7D%?PV9F9I!F9F:02(/L"`^V1@@/MK0'Y@@``,:$!^8(``#_#[?V -M2(''@!```.@`````2(/$",-F9F:02(M6<$B%TG082(M"&$B)1CA(BT(@2(E& -M0$B+0BA(B49(\\-F9F:09F:09F:09F:02(M6<$B%TG0<2(M&.$B)0AA(BT9` -M2(E"($B+1DA(B4(HQD(0`?/#9F:09F:09F:005154TF)_$B+'V:#>V@`#X3( -M````O0````!F9I!F9I`/M]5(BX.P"0``2(L\T$B%_P^$F0````^W5R!F@?J% -M`'=T#[?"#[:$`V`(```\_W1E9H/Z?W<<#[;`2(N3.`D``$AIP)@!``!(BT00 -M4`^V4`CK2&:!^H$`=QP/ML!(BY.("0``2&G`R`\``$B+1!`(#[90".LE#[;` -M2(N38`D``$B-!,!(P>`%2(N$$(@````/ME`(ZP6Z_P```$$/MD0D"#G"=0N^ -M`````.@`````D(/%`68Y:V@/AT/___];74%<PV9F9I!F9F:09F:09F:02(/L -M&$B)7"0(2(EL)!!(B?M(B?4/MD90//]T$P^V\$B+/^@`````QD50_X!K1`%( -MBUPD"$B+;"002(/$&,-FD$B#[!A(B5PD"$B);"002(G[2(GU#[9&<CS_=!,/ -MMO!(BS_H`````,9%<O^`:T0!2(M<)`A(BVPD$$B#Q!C#9I!54TB#[`A(B?U( -MB?-(.7XH#X3;````@'XD``^%IP````^V1C@\%70(/%4/A9<```!(BT-P2(7` -M#X2*````2(G"@'@0`0^%?0```&:!>!CA`75U2(NU.`D```^W0R"Y:)8!`&8] -MA0!W$@^WP`^VA`5@"```2&G(F`$``$B-!`X/ME(:@/H'=!V`^@=W!X#Z!G4V -MZQ^`^@QT*H#Z#69FD&:0=27K%6:#8&K]9F9FD&9FD.L59H-(:@+K#F:#8&KW -M9I#K!6:#2&H(2(-[>`!T(X%[-``(``!W#DB-<WA(B>_H`````.L,2(US>$B) -M[^@`````9H%[..$!#X47`0``#[=#(&8]A0!W?P^WP`^VA`5@"```//]T<$B+ -ME3@)``"`>R0`=6,/ML!(:<"8`0``2(T$`@^V4SJ`^@=T'X#Z!W<'@/H&=3/K -M'(#Z#&9F9I!F9I!T((#Z#74@ZQ!F@V!J_6:0ZQ5F@TAJ`NL.9H-@:O=FD.L% -M9H-(:@AF@7LXX0%F9I`/A8X```"`>SH+#X6$````#[=S(`^V14:->/^)\NL; -MD(/"`6:!^H4`=Q`/M\I(8\&`O`5@"```_W4)#[?".?A\W^M-9H'Y_P!U(F9F -MD&9FD.L^@\8!9H'^A0!W$`^WUDACPH"\!6`(``#_=0P/M\8YQW_?NO\```!F -MB5,@QD,D@$B)WDB)[^@`````Z2`!``#&0R0`2#EK*'0F2(M#<$B%P'0=@'@0 -M`74+2(G>2(GOZ`````!(C7-P2(GOZ`````!(@[N``````'0/2(VS@````$B) -M[^@`````2(M[*$B)WO^3H`````^W4SAF@?KA`757#[9#.H/H$3P!=TP/MT,@ -M9CV%``^'I@````^WP`^VA`5@"```//\/A),````/ML!(C03`2,'@!4B)QD@# -MM6`)``"`?D4`=7B`?E#_=')(B>_H`````.MH#[=#(&8]A0!W7@^WP`^VC`5@ -M"```2(NU.`D``(M#."7___\`/>$!$`!T/8'Y_P```'0U9H'ZX0%U#@^V0SJ# -MZ!$\`78C9F:0B<A(:<"8`0``2`'&@+Z#`````'4+2(GOZ`````!F9I!(@\0( -M6UW#9F:09F:09F:055-(@^P(2(G]2(GS#[=6(&:!^H4`#X>7````#[?"#[:, -M!V`(``"`^?\/A(,```!F@_I_=QP/ML%(BY<X"0``2&G`F`$``$B+1!!0#[9` -M".M!9H'Z@0!W'`^VP4B+EX@)``!(:<#(#P``2(M$$`@/MD`(ZQX/ML%(BY=@ -M"0``2(T$P$C!X`5(BX00B`````^V0`AF/?\`=!H/M\`/MKP%Y@@``$"`__]T -M"0^VP68]_P!U$$B)WDB)[^@`````Z8$````/ME,[#[9#/`^V2SV`^0%T!8#Y -M"'5@2(M+:,'@"`^VT@'0)?\!``!(BY6P"0``2#D,PG5"#[=),HG*9L'J!8'B -M_P<``(/A'[@!````2-/@]]`A1)5L2(M#:`^W<#)`#[;'2(T\@$B-/+A(C;S] -MP`$``.@`````2(G>2(GOZ`````!(@\0(6UW#9F:09F:02(/L&$B)7"0(2(EL -M)!!(B?M(C;\8`0``O0````!(.;L8`0``=!SH`````$B)Q4B)Q^@`````2(G? -MZ`````!(B45P2(GH2(M<)`A(BVPD$$B#Q!C#9F9FD&9F9I!F9F:02(/L&$B) -M'"1(B6PD"$R)9"002(G]2(M'4$R+($R)Y^@`````2(G#2(7`='!,B>?H```` -M`$B)PDB%P'44QH7I`````4B)WDR)Y^@`````ZTS&0S@`#[=%.&:)0R#&@Y@` -M```/3(EC*,=#-`````!(QT-(`````$B+0A!(B4-0QD,P)$B)4WA(QX.@```` -M`````$B)WDR)Y^@`````2(L<)$B+;"0(3(MD)!!(@\08PY!(@^P82(D<)$B) -M;"0(3(ED)!!(B?U!B?1(BT=02(L82(G?Z`````!(B<)(A<!T1,9`.!O&0#D! -M1(A@/`^W13AFB4(@QH*8````#TB)6BC'0C0`````2,="2`````!(QX*@```` -M`````$B)UDB)W^@`````2(L<)$B+;"0(3(MD)!!(@\08PV9F9I!F9I!F9I!( -M@^PX2(E<)`A(B6PD$$R)9"083(EL)"!,B70D*$R)?"0P28G_28GU3(LW3(GW -MZ`````!(B<5(A<`/A(X```!,B??H`````$F)Q$B%P'412(GN3(GWZ`````#K -M<69F9I!(C5U8QD4XX<9%.0'&13H.00^W13AFB44@9D`CW28L'2(E%*,=% -M-``(``!)BT0D$$B)14A,B65X2,>%H`````````"^`````$B)W^@`````BU4T -M28MT)!A(B=_H`````$B)[DR)]^@`````2(M<)`A(BVPD$$R+9"083(ML)"!, -MBW0D*$R+?"0P2(/$.,-(@^PH2(E<)`A(B6PD$$R)9"083(EL)"!)B?2)U4B+ -M'TB)W^@`````2(G"2(7`=%_&0#CAQD`Y`4"(:#K&0#L/00^W1"0X9HE"($B) -M6BC'0C0`````2,="2`````!(QX*@`````````$B)UDB)W^@`````0(#]`74, -MOP4```#H`````.L*OU##``#H`````$B+7"0(2(ML)!!,BV0D&$R+;"0@2(/$ -M*,-F9F:09F9FD%532(/L"$B)_4B)\P^W5B!F@?J%``^'F`````^WP@^VC`=@ -M"```@/G_#X2$````9H/Z?W<<#[;!2(N7.`D``$AIP)@!``!(BT004`^V0`CK -M06:!^H$`=QP/ML%(BY>("0``2&G`R`\``$B+1!`(#[9`".L>#[;!2(N78`D` -M`$B-!,!(P>`%2(N$$(@````/MD`(//]T'0^VP`^VA`7F"```//]T#H#Y_W0) -M#[93)(#Z!G4]2(-[>`!T)(%[-``(``!W#TB-<WA(B>_H`````)#K#$B-<WA( -MB>_H`````$B)WDB)[^@`````ZW5F9I!FD$B+O3@)``"$TG0K#[;Q2&GVF`$` -M`$B--#</ML!(C3R`2(T\N$B-O/W``0``N@$```#H`````$B#>W@`=".!>S0` -M"```=PY(C7-X2(GOZ`````#K#$B-<WA(B>_H`````$B)WDB)[^@`````9F:0 -M9I!(@\0(6UW#9F:09F:09F:02(/L*$B)'"1(B6PD"$R)9"003(EL)!A,B70D -M($B)^TB)]0^W5B!F@?J%``^'#P$```^WP@^VC`=@"```@/G_#X3[````9H/Z -M?W<<#[;!2(N7.`D``$AIP)@!``!(BT004`^V0`CK06:!^H$`=QP/ML%(BY>( -M"0``2&G`R`\``$B+1!`(#[9`".L>#[;!2(N78`D``$B-!,!(P>`%2(N$$(@` -M```/MD`(//\/A)````!$#[;I#[;`1`^VI`/F"```08#\_W1Z9D&!_?\`='*` -M?20&=&Q,B[,X"0``@'TZ`75$OPH```#H`````$B)[DB)W^@`````00^W]4AI -M]I@!``!)C30V00^VQ$B-/(!(C3RX2(V\^\`!``"Z`@```.@`````ZQN_]`$` -M`.@`````2(GN2(G?Z`````!F9I!F9I!(BQPD2(ML)`A,BV0D$$R+;"083(MT -M)"!(@\0HPV9FD$B#[!A(B1PD2(EL)`A,B60D$$F)_$B+1U!(BRA(B>_H```` -M`$B)PTB%P'4+0<:$).D````!ZU_&0#@5QD`EJT$/MT0D.&:)0R!(B6LH0;@! -M````N0$```!(B=I,B>9(B>_H`````(3`=19(B=Y(B>_H`````$'&A"3I```` -M`>L62,>#H`````````!(B=Y(B>_H`````$B+'"1(BVPD"$R+9"002(/$&,-F -M9F:09F:02(/L*$B)7"0(2(EL)!!,B60D&$R);"0@2(G[2(M'4$R+*$R)[^@` -M````2(G%2(7`=0[&@^D````!Z;8```!FD$R)[^@`````28G$2(7`=1?&@^D` -M```!2(GN3(GOZ`````#IC0```,9%.!K&13D(QD4Z",9%.P#&13S_QD4]`,9% -M):L/MT,X9HE%($R);2C'133_````QX64````"````$F+1"002(E%2$@%_P`` -M`$B)15#&13`D3(EE>$C'A:``````````2(U=6+X`````2(G?Z`````!)BW0D -M&+K_````2(G?Z`````!(B>Y,B>_H`````$B+7"0(2(ML)!!,BV0D&$R+;"0@ -M2(/$*,-F9I!(@^PX2(E<)`A(B6PD$$R)9"083(EL)"!,B70D*$R)?"0P28G\ -M08GV2(M'4$R+*$R)[^@`````2(G#2(7`=1%!QH0DZ0````'IN@```&9FD$R) -M[^@`````2(G%2(7`=2!!QH0DZ0````%(B=Y,B>_H`````.F.````9F9FD&9F -MD$R->UC&0S@2183V=!/&0SD!QD,Z@,9#/$#K"69FD&:0QD,\),9#):M!#[=$ -M)#AFB4,@3(EK*,=#-&````#'@Y0````(````2(M%$$B)0TA(B6MX2,>#H``` -M``````"^`````$R)_^@`````2(MU&+I@````3(G_Z`````!(B=Y,B>_H```` -M`$B+7"0(2(ML)!!,BV0D&$R+;"0@3(MT)"A,BWPD,$B#Q#C#9F:09F:02(/L -M*$B)'"1(B6PD"$R)9"003(EL)!A,B70D($F)_$B+1U!,BS!,B??H`````$B) -MQ4B%P'4.0<:$).D````!Z;(```!,B??H`````$F)Q4B%P'4<0<:$).D````! -M2(GN3(GWZ`````#IB0```&9FD$B-75C&13B>QD4Y$,9%12#&126K00^W1"0X -M9HE%($R)=2C'130@````QX64````"````$F+11!(B45(3(EM>$B#P"!(B450 -MQD4P)$C'A:``````````QH68````#[X`````2(G?Z`````!)BW48NB````!( -MB=_H`````$B)[DR)]^@`````2(L<)$B+;"0(3(MD)!!,BVPD&$R+="0@2(/$ -M*,-F9F:09F:09F:09F:02(/L*$B)'"1(B6PD"$R)9"003(EL)!A,B70D($F) -M_$B+1U!,BS!,B??H`````$B)Q4B%P'4.0<:$).D````!Z:,```!,B??H```` -M`$F)Q4B%P'4<0<:$).D````!2(GN3(GWZ`````#K?69FD&9FD$B-75C&13@E -MQD4EJT$/MT0D.&:)12!,B74HQT4T"````,>%E`````@```!)BT402(E%2$B# -MP`A(B450QD4P)$R);7A(QX6@`````````+X`````2(G?Z`````!)BW48N@@` -M``!(B=_H`````$B)[DR)]^@`````2(L<)$B+;"0(3(MD)!!,BVPD&$R+="0@ -M2(/$*,-F9F:09F9FD&9F9I!(@^PX2(E<)`A(B6PD$$R)9"083(EL)"!,B70D -M*$R)?"0P28G_28GTB50D!$B++TR+M3@)```/MT8@1`^VK`5@"```2(GOZ``` -M``!(B<-!#[=T)#*)\&;!Z`4/M\"+1(5LB?](T_BH`0^%O0```$B%VP^$ -MM````$$/MM5(:=*8`0``28T4%D$/MD0D)0^VC>X```#3X`GPQD,XX<9#.0'& -M0SH/B$,[9L'H"(A#/`^V1"0$B$,]2(N"W````$B)0SY,B6-HQD,EJ@^W0CAF -MB4,@28L'2(E#*,=#-`````!(QT-(`````$C'@Z``````````2(U[6+X````` -MZ`````!(B=Y(B>_H`````$$/MTPD,HG*9L'J!8'B_P<``(/A'[@!````2-/@ -M"425;$B+7"0(2(ML)!!,BV0D&$R+;"0@3(MT)"A,BWPD,$B#Q#C#9F9FD&9F -M9I!F9F:09F:005=!5D%505154TB#[`A)B?Y)B=5!B?=(BQ]F@WMH``^$[`$` -M`+T`````0;S_____#[?52(N#L`D``$B+--!(A?8/A+T!``"+?CB!Y____P"! -M_^$!$``/A94```!-A>T/A9\!```/MU8@9H'ZA0!W=`^WP@^VA`-@"```//]T -M96:#^G]W'`^VP$B+DS@)``!(:<"8`0``2(M$$%`/ME`(ZT9F@?J!`'<<#[;` -M2(N3B`D``$AIP,@/``!(BT00"`^V4`CK(P^VP$B+DV`)``!(C03`2,'@!4B+ -MA!"(````#[90".L#1(GBN0````#IIP````^W5B!F@?J%``^'D`````^WP@^V -MC`-@"```@/G_#X1\````9H/Z?W<<#[;!2(N3.`D``$AIP)@!``!(BT004`^V -M4`CK06:!^H$`=QP/ML%(BY.("0``2&G`R`\``$B+1!`(#[90".L>#[;!2(N3 -M8`D``$B-!,!(P>`%2(N$$(@````/ME`(#[;!2&G`F`$``$B)P4@#BS@)``#K -M"V9FD$2)XKD`````03A6"'5F387M=`M!#[=%.&8[1B!U5D&`_P9T08'_X0$0 -M`'0Y#[912$B)T(/@!DB#^`9U*?;"`74D@+GH`````'4;@?_A`0\`=")$B'XD -MN@$```!,B??H`````.L/1(A^)`^W]4R)]^@`````@\4!9CEK:`^''_[__T&` -M_X$/A$L!``!(BX/X````2(VK^````$@YQ0^$-`$``+H`````@\(!2(L`2#G% -M=?5FA=(/A!L!``!$C6+_D$B)[^@`````2(G!387M="A!#[=%.&8[02!T'4B+ -M@P`!``!(B8L``0``2(DI2(E!"$B)".G"````#[=1(&:!^H4`=W0/M\(/MH0# -M8`@``#S_=&5F@_I_=QP/ML!(BY,X"0``2&G`F`$``$B+1!!0#[9`".M(9H'Z -M@0!W'`^VP$B+DX@)``!(:<#(#P``2(M$$`@/MD`(ZR4/ML!(BY-@"0``2(T$ -MP$C!X`5(BX00B`````^V0`CK!;C_____03I&"'4@BT$X)?___P`]X0$/`'01 -M1(AY)$B)SDB)W^@`````ZQA(BX,``0``2(F+``$``$B)*4B)00A(B0A!C40D -M_V9%A>1T$4@[J_@```!T"$&)Q.GJ_O__2(/$"%M=05Q!74%>05_#9F9FD&9F -M9I!F9I!(@^PX2(E<)`A(B6PD$$R)9"083(EL)"!,B70D*$R)?"0P28G\28GV -M28G-08G72(LO2(GOZ`````!(B<-(A<!U#T'&A>D````!Z8L```!FD$B)[^@` -M````2(G"2(7`=15(B=Y(B>_H`````$'&A>D````!ZV3&0SCAQD,Y`<9#.A!$ -MB'LE00^V1EMFB4,@28L$)$B)0RC'0S20````2(U"$$B)0TA(B5-XQD`!$L9" -M$$!$B'@)2,>#H`````````!(C7M8O@````#H`````$B)WDB)[^@`````2(M< -M)`A(BVPD$$R+9"083(ML)"!,BW0D*$R+?"0P2(/$.,-F9F:02(/L.$B)7"0( -M2(EL)!!,B60D&$R);"0@3(ET)"A,B7PD,$F)_$F)]4&)UD&)STB++TB)[^@` -M````2(G#2(7`#X2"````2(GOZ`````!(B<)(A<!T<L9#..'&0SD!QD,Z$$2( -M<R5!#[9%6V:)0R!)BP0D2(E#*,=#-)````!(C4(02(E#2$B)4WC&0`&1QD(0 -M0$2(<`E$B'@*2,>#H`````````!(C7M8O@````#H`````$B)WDB)[^@````` -MOZ"&`0#H`````$B+7"0(2(ML)!!,BV0D&$R+;"0@3(MT)"A,BWPD,$B#Q#C# -M9F:09F:02(/L*$B)'"1(B6PD"$R)9"003(EL)!A,B70D($F)_$F)]4&)UDB+ -M+TB)[^@`````2(G#2(7`='1(B>_H`````$B)PDB%P'1DQD,XX<9#.0'&0SH0 -MQD,ENT$/MD5;9HE#($F+!"1(B4,HQT,TD````$B-0A!(B4-(2(E3>,9``1#& -M0A!`1(AP"4C'@Z``````````2(U[6+X`````Z`````!(B=Y(B>_H`````$B+ -M'"1(BVPD"$R+9"003(ML)!A,BW0D($B#Q"C#9F9FD&9FD$B#["A(B5PD"$B) -M;"003(ED)!A,B6PD($F)_$F)]4B++TB)[^@`````2(G#2(7`='!(B>_H```` -M`$B)PDB%P'1@QD,XX<9#.0'&0SH0QD,ENT$/MD5;9HE#($F+!"1(B4,HQT,T -MD````$B-0A!(B4-(2(E3>,9``0#&0A!`2,>#H`````````!(C7M8O@````#H -M`````$B)WDB)[^@`````2(M<)`A(BVPD$$R+9"083(ML)"!(@\0HPV9FD&9F -MD%532(/L"$B)_4B-GX`0``!(B=_H`````(3`#X7@````2(G?Z`````")P;@` -M````B<:`O"CF"```_W4*.$5,<Q*(14SK#8/&`4B#P`%(@_@$==U`@/X$#X2D -M````0`^VQHB,!>8(```/M_E(C02_2(T$ATB-E,7``0``N`````"0Q@00`$B# -MP`%(/:@```!U\`^WP4B-%(!(C1202,'B`TB-C!7P`0``2(T$*DB)B/`!``!( -MB8CX`0``2(V,%0@"``!(B8@(`@``2(F($`(``$B-E!4@`@``2(F0(`(``$B) -MD"@"``!`B+#(`0``2(T$OTB-!(=(C83%P`$``.L'9I"X`````$B#Q`A;7<-F -M9F:02(/L&$B)'"1(B6PD"$R)9"002(G]2(V?V`\``$B)W^@`````A,`/A30! -M``!(B=_H`````(G"N`````!F9I!FD(G#@+PH8`@``/]U%0^VP&8YA>P```!S -M&&:)A>P```#K#X/#`4B#P`%(/8````!UT(#[@`^$YP````^VPXB4!6`(```/ -MM\),:>"8`0``3(GG2`.].`D``.@`````2(N5.`D```^VPV9!B404.$B+A3@) +M#[9$)`W_),4`````0<:'L@````'IGP```(!\)`X$=12`?"0/`G4-0<:'L@`` +M`!'IA````$'&A[(````"ZWI!QH>R````$.MP0<:'L@````OK9D'&A[(````& +MZUQ!QH>R````#>M29I`\*'4G00^VA"2#````@^@!08B$)((```!(B=A(`X6P +M"0``2(L`QD`D@>LE/`AU"K\0)P``Z`````!(B=A(`X6P"0``2(L`QD`D(69F +MD&9FD$B+7"0H2(ML)#!,BV0D.$R+;"1`3(MT)$A,BWPD4$B#Q%C#9F9FD&9F +MD&9FD&9FD$%7059!54%455-(@>RH````2(G]2(E\)'`/MX>R$@``9HF$)(`` +M``!(BP>+@$`!``")!0````!F)?\/9HF'LA(``&8[A"2`````=7%(BP>+L%`! +M``")-0````!(BP>)L%`!``"X`````/?&`/__``^$!`D``$C'QP````"X```` +M`.@`````2(M\)'#H`````+@!````Z=\(``!F9I!F9I!(BT4`BX!``0``B04` +M````9B7_#V:)A;(2``#K)$B-EP@!``!(B50D:$B-CZ`/``!(B4PD8$B-M_@` +M``!(B70D6$B+A9@1``"+`(D%``````^WC;(2```E_P\```^WT3G0=9UF@?G_ +M#P^%P@<``.G2!P``3(N%.!$``&:#A"2``````0^WA"2`````9CN%MA(``+@` +M````#[>4)(`````/0]!FB90D@````$B+E9@1``!(@\($#[>$)(````"+#()! +MB<E!P>D00?;!"`^$KP```$B+10"+D%`!``")%0````!(BT4`B9!0`0``]\(` +M__\`=&F`?4,`=&.)UO?&``$``'4NOP````#WQ@```0!T0.L?#[?7C4H(2(GP +M2-/XJ`%U%(U*$$B)\$C3^*@!=0?K'[\`````#[?'2(T4@$B-%)!(C9S5P`$` +M`$B%VW4=ZPR#QP$/MD5#9CGX=[9(BWPD<.@`````Z<4&``!(BWPD<.@````` +MB$,/Z;,&``!F9I")SF:!YO\/#[?&2&G0L`0``$V+1!`@2(T\Q0````!(BX6P +M"0``2`'X2(L82(7;#X5L`0``#[?VB?)(Q\<`````N`````#H`````&:#?6@` +M#X1;!@``QH0DGP````!F9I!$#[:T))\```!.C3SU`````$B+A;`)``!,`?A( +MBS!(A?8/A/D```!-:>:P!```3`.E.!$``$B+G=@0```/MDXE1`^VK"2?```` +M1(GJ2,?'`````+@`````Z`````!,B?A(`X6P"0``2(LXZ`````!!BXPD)`0` +M`$&+E"0@!```18N,)"P$``!%BX0D*`0``$2)[DC'QP````"X`````.@````` +M3(GP2,'@!D@!PXM#-(M[,$2+4RQ$BULH1(MC)$2+:R!$BW,<1(M[&(M+%(E, +M)'Q$BTL01(M##(M+"(M3!(LSB40D0(E\)#A$B50D,$2)7"0H1(ED)"!$B6PD +M&$2)="001(E\)`B+1"1\B00D2,?'`````+@`````Z`````"`A"2?`````0^V +MA"2?````9CM%:`^#%@4``.G!_O__D$'VP2`/A(@!``"`>R2!9I`/A5L!``#& +M0R0A#[=#,DC!X`-(`X6P"0``2,<```````^W2S*)R&;!Z`4E_P<``(/A'[H! +M````2(G62-/F2(GQ]]$AC(6X"0``#[=+,HG(9L'H!27_!P``@^$?2-/B]](A +M5(5L#[=S,DB+?"1@Z`````!(@[N``````'0/2(VS@````$B)[^@`````#[=3 +M(&:!^H4`#X?'````#[?"#[:$!6`(```\_P^$M````&:#^G]W(P^VP$B-%$!( +MC1202,'B!4@#E3@)``!(BT)0@'@(_P^5P.M9#[=#(&8]@0!W)@^WP`^VA`5@ +M"```2&G`R`\``$@#A8@)``!(BT`(@'@(_P^5P.LI#[=#(`^VA`5@"```2(T$ +MP$C!X`5(`X5@"0``2(N`B````(!X"/\/E<"$P'0N2(G>2(GOZ`````!(BX7X +M````2(E8"$B)`TB+1"182(E#"$B)G?@```#IGP,``$B+3"1H2(M1"$B-0Q!( +MB4$(2(E+$$B)4`A(B0+I?@,``(GP9L'H!40/M_!)8\8/M_9!B?=!@^<?BT2% +M;$2)^4C3^*@!#X55`P``2(GX2`.%L`D``$B+``^W4"!F@?J%``^'N@````^W +MP@^VA`5@"```//\/A*<```!F@_I_=R`/ML!(C11`2(T4D$C!X@5(`Y4X"0`` +M2(M"4`^V0`CK;4B)^$@#A;`)``!(BP`/MT`@9CV!`'<C#[?`#[:$!6`(``!( +M:<#(#P``2`.%B`D``$B+0`@/MD`(ZS-(B?A(`X6P"0``2(L`#[=`(`^VA`5@ +M"```2(T$P$C!X`5(`X5@"0``2(N`B`````^V0`@\_W00#[;02&/"@+P%Y@@` +M`/]U-DECQHM$A6Q$B?E(T_BH`0^%:@(``,9#)`9(B=_H`````+H`````2(G> +M2(GOZ`````#I20(``$ACP@^VA`7F"```2(T4@$B-%)!(C;S5P`$``$V%P'0- +M0?;!`K@`````3`]$P/9'"@(/A%X!``!,B<+H`````$ECQHM$A6Q$B?E(T_BH +M`0^%]0$``(![)($/A8\````/MT,R2,'@`T@#A;`)``!(QP``````#[=+,HG* +M9L'J!8'B_P<``(/A'[@!````2-/@]]`AA)6X"0``#[=S,DB+?"1@Z`````!( +MB=Y(B>_H`````$B#NX``````=`](C;.`````2(GOZ`````!(BX7X````2(E8 +M"$B)`TB+="182(ES"$B)G?@```#I7`$``$B+A0@!``!(.T0D:'1?0;P````` +M08/$`4B+`$@Y1"1H=?)%A.1T1D&]`````$B+?"1HZ`````!(C4CP2(MT)&A( +MBU8(2(E&"$B),$B)4`A(B0)(.=FX`0```$0/1.A!@.P!=<E%A.T/A>\```!( +MBT0D:$B+4`A(C4,02(M,)&A(B4$(2(E+$$B)4`A(B0))8]:X`0```$2)^4C3 +MX`F$E:P```#IM````$R)PN@`````2(N%"`$``$@[1"1H=%M!O`````!!@\0! +M2(L`2#E$)&AU\D6$Y'1"0;T`````2(M\)&CH`````$B-2/!(BW0D:$B+5@A( +MB48(2(DP2(E0"$B)`D@YV;@!````1`]$Z$&`[`%UR46$[75#@'LD@70]2(M$ +M)&A(BU`(2(U#$$B+3"1H2(E!"$B)2Q!(B5`(2(D"26/6N`$```!$B?E(T^`) +MA)6L````9F9FD&9FD`^WM"2`````9CFULA(```^%+OC__V:!O;(2``#_#W0C +M2(N%F!$``(L`B04`````)?\/```/MY6R$@``.=`/A<[W__](C84(`0``2#F% +M"`$``'1)2(G#2(G?Z`````!(C7#P#[=.,HG*9L'J!8'B_P<``(/A'[@!```` +M2-/@]]`AA)6L````N@````!(B>_H`````$@YG0@!``!UNDB)[^@`````N`$` +M``!(@<2H````6UU!7$%=05Y!7\-F9I!FD$B#["A(B5PD"$B);"003(ED)!A, +MB6PD($B+G_`(``!(BT,(1(LH1(DM`````$'WQ0```)!T>DB+0PA$B2CK<9!( +M@<.(%```2(L#BY!0`0``B14`````2(L#B9!0`0``A=)T//?"````$'0<2(L# +MQX!0`0``````$$B+`XN`4`$``(D%`````$B+`\>`4`$```$```!(B=_H```` +M`$$!Q(/%`8/]`G69ZQ=F9F:09F:00;P`````O0````#KBF9FD$6$Y`^5P$6% +M[0^5P@G0#[;`2(M<)`A(BVPD$$R+9"083(ML)"!(@\0HPV9FD&9FD$%7059! +M54%455-(@^PH28G\2(L'BY!0`0``B14`````2(L'B9!0`0``9F9FD&9FD/?" +M`/__``^$*`D``$&`?"1#``^$'`D``,9$)!``B=)(B50D"$0/MFPD$$&-30A( +MBT0D"$C3^*@!=11!C4T02(M$)`A(T_BH`0^$T0@``(!\)!`#=BM)BP0D2`6` +M`0``0HT4[0````!(8])(`="+`(D%`````,'H$X/@`>LI9F:028L$)$@%@`$` +M`$*-%.T`````2&/22`'0BP")!0````#!Z!.#X`&$P'0F3(GGZ`````!)8]5( +MC0122(T$@D&!C,3L$@`````(`&9F9I!F9I!)BQ0D@'PD$`-V)4*-!.T````` +M2)A(C80"@`$``(L`B04`````)0```0#K(V9F9I!"C03M`````$B82(V$`H`! +M``"+`(D%`````"4```$`A<!T08!\)!`#=AU"C03M`````$B82(V$`H`!``#' +M`````0#I&0@``$*-!.T`````2)A(C80"@`$``,<````!`.G\!P``08!\)%$! +M#X6H!@``@'PD$`-V*4F+!"1(!8`!``!"C13M`````$ACTD@!T(L`B04````` +M@^`!ZR=F9F:028L$)$@%@`$``$*-%.T`````2&/22`'0BP")!0````"#X`&$ +MP`^$50$``$ECQ4B-'$!(C1R82,'C`TF-M!SP$@``28M\)"CH`````$F+O!S( +M$@``2(7_=!U(BT=`2(7`=!3V0$X"=0[H`````(3`D`^%"@$``$ECQ4B-%$!( +MC12028N$U,@2``!(A<!T=4F)QH!X#@`/A(L```!!OP````!(C6A@2(GOZ``` +M``!(B<-(BT4(2(E="$B)*TB)0PA(B1CV0TP"=2](BU-`2(72=!9)B[0D\`@` +M`+\%````Z`````"`2TP"2(G:O@8```!,B??H`````$&#QP%%.'X.=B7KH@^V +M="00N@$```!,B>?H`````+^@A@$`Z`````"Z`"TQ`>L%ND!+3`!)8\5(C0Q` +M2(T,B$C!X0-*C30AB9;P$@``2,>&`!,````````/MD0D$$B-%$!(C12028V4 +MU+@2``!(B98($P``28VT#/`2``!)BWPD*.@`````9F:0@'PD$`-V/4*-%.T` +M````2&/228L$)$@%@`$``$@!T(L`B04`````28L$)$@%@`$``$@!PHL"B04` +M````P>@'@^`!ZSM"C13M`````$ACTDF+!"1(!8`!``!(`="+`(D%`````$F+ +M!"1(!8`!``!(`<*+`HD%`````,'H!X/@`83`='6`?"00`W8W0HT,[0````!( +M8\E)BP0D2`6$`0``2`'(BP")!0````!)BQ0D2('"A`$``$@!T0T```$`B0'K +M/D*-#.T`````2&/)28L$)$@%A`$``$@!R(L`B04`````28L4)$B!PH0!``!( +M`=$-```!`(D!ZR^`?"00`W8H28L$)$@%@`$``$*-%.T`````2&/22`'0BP") +M!0````#!Z!*#X`'K)DF+!"1(!8`!``!"C13M`````$ACTD@!T(L`B04````` +MP>@2@^`!A,`/A"("``"`?"00`W8W0HT,[0````!(8\E)BP0D2`6``0``2`'( +MBP")!0`````-```$`$F+%"1(@<*``0``2`'1B0'K-4*-#.T`````2&/)28L$ +M)$@%@`$``$@!R(L`B04`````#0``!`!)BQ0D2('"@`$``$@!T8D!26/%2(T4 +M0$B-%)!)BX34R!(``$B%P'0328G%2(-X0``/A:(```#IA`$``(!\)!`#=DI" +MC13M`````$ACTDF+!"1(!8`!``!(`="+"(D-`````$F+!"1(!8`!``!(C00" +MB0A)BP0D2`6``0``2`'"BP*)!0````#IT`,``$*-%.T`````2&/228L$)$@% +M@`$``$@!T(L(B0T`````28L$)$@%@`$``$B-!`*)"$F+!"1(!8`!``!(`<*+ +M`HD%`````.F&`P``9I!(BTA`#[=!3@^WT/;&`0^%TP```$B)S?;"`@^$QP`` +M`(/@_6:)04Y(C;'`````28M\)"CH`````,9$)!``@'T[`'1WQD0D$``/MD0D +M$$B+7,582(7;=%1(BU-`2(72=!9)B[0D\`@``+\%````Z`````"`2TP"2(G: +MO@8```!,B>_H`````("[@P````!T')!,B>?H`````+\!````Z`````"`NX,` +M````=>6`1"00`0^V1"00.$4[=X['A<````!`2TP`2,>%T`````````!(B:W8 +M````2(VUP````$F+?"0HZ`````"`?"00`W8R28L$)$@%@`$```^V5"002,'B +M`X'B^`<``$@!T(L`B04`````P>@(@^`!ZS!F9I!F9I!)BP0D2`6``0``#[94 +M)!!(P>(#@>+X!P``2`'0BP")!0````#!Z`B#X`&$P`^$%@$``(!\)!`#=BQ) +MBP0D2`6``0``#[94)!!(P>(#@>+X!P``2`'0BP")!0````"#\`&#X`'K*DF+ +M!"1(!8`!```/ME0D$$C!X@.!XO@'``!(`="+`(D%`````(/P`8/@`83`#X2Q +M````#[9$)!!(C11`2(T4D$F-E-2P$@``3(UZ"$F+1Q!(A<`/A(L```!)B<9( +MC7)`28M\)"CH`````$&`?@X`=%%!O0````!)C6Y@D$B)[^@`````2(G#2(M% +M"$B)70A(B2M(B4,(2(D82(M30$B%TG0628NT)/`(``"_!0```.@`````@$M, +M`D&#Q0%%.&X.=[I!QT<X@(0>`$G'1T@`````38E_4$F-=SA)BWPD*.@````` +M@'PD$`,/AG\````/MEPD$$C!XP.!X_@'``!)BP0D2`6``0``2`'8BQ")%0`` +M``!)BP0D2`6``0``2(T$`XD028L$)$@%@`$``$B-!`.+`(D%`````$F+!"1( +M!3`"``!(C00#QP``````OQ`G``#H`````$F+!"1(!30"``!(`<.+`XD%```` +M`.M]#[9<)!!(P>,#@>/X!P``28L$)$@%@`$``$@!V(L0B14`````28L$)$@% +M@`$``$B-!`.)$$F+!"1(!8`!``!(C00#BP")!0````!)BP0D2`50`@``2(T$ +M`\<``````+\0)P``Z`````!)BP0D2`54`@``2`'#BP.)!0````"`1"00`0^V +M1"0003A$)$,/A_#V__])BP0DBY!0`0``B14`````28L$)(F04`$``/?"`/__ +M`'0FZ:7V__]F9I!FD$ECU4B-!%)(C02"08&,Q.P2``````$`Z>CW__^X```` +M`$B#Q"A;74%<05U!7D%?PT%7059!54%455-(@^QH28G]0(AT)$M`#[;&B40D +M3$B82(T40$B-%)!(C1373(NZR!(```^VJL(2``!(BP=`@/X#=@S'@'`!``#$ +M`0``ZPK'@'`!``"H`0``2(E$)&!(!70!``!(B40D4$B+5"1@BX)T`0``B04` +M````BTPD3(/A`[L'````T^-!B=Q!"<1$B:)T`0``O^@#``#H`````/?31"'C +M2(M,)&")F70!``"`?"1+`W95BT0D3,'@`DB82(V4`=`!``"+`HD%`````(/( +M"(D"BUPD3,'C`TACVTB-A!D``@``QP`X````OQ`G``#H`````$B+5"1@2(V$ +M&@0"``#'``````#K6(M$)$S!X`)(F$B+3"1@2(V4`=`!``"+`HD%`````(/( +M"(D"BUPD3,'C`TACVTB-A!D``@``QP`X````OQ`G``#H`````$B+5"1@2(V$ +M&@0"``#'``````!-A?\/A%<(``!!@'U#`'0LNP`````/MLM!#[9'#4C3^*@! +M=`^Z`0```(G.3(GOZ`````"#PP%!.%U#=]E!]D<*`71G3(G^3(GOZ`````"+ +M="1,3(GOZ`````!(8T0D3$B-%$!(C12028V4U>`2``"+0@BI```0`'0()?__ +M[_^)0@A,B?Y,B>_H`````$AC1"1,2(T40$B-%)!)QX35R!(```````#IM@<` +M`$&`?U@`=!1)B[VP$```3(G^Z`````!!@&]8`4C'P/[___\/MDPD3$C3P$`@ +MZ(A$)%L/A+T"``"+="1,3(GOZ`````!(8T0D3$B-%$!(C12028V4U>`2``"+ +M0@BI```0`'0()?__[_^)0@@/MD0D6T&(1PU!@'U#``^$[P$``,=$)%P````` +M#[;02(E4)#!(BTPD8$B!P0`"``!(B4PD*$B+1"1@2`4$`@``2(E$)"`/ME0D +M6XE4)!Q(BTPD8$B!P=`!``!(B4PD$$0/MG0D7$$/MNY(BT0D,(GI2-/XJ`$/ +MA$T!``!(8\5(C11`2(T4D`^V1"1;08B$U<(2``!!@/X##X:5````C1SM```` +M`$ACVTB+1"0H2`'8QP`X````OQ`G``#H`````$@#7"0@BU0D'(D32(M,)&#' +M@7`!``#$`0``2(M4)%"+`HD%`````(GI@^$#NP<```#3XT&)W$$)Q$2)(K_H +M`P``Z`````#WTT0AXTB+3"10B1F-%*T`````2&/22`-4)!"+`HD%`````(/( +M"(D"Z98```"-'.T`````2&/;2(M$)"A(`=C'`#@```"_$"<``.@`````2`-< +M)""+1"0<B0-(BU0D8,>"<`$``*@!``!(BTPD4(L!B04`````B>F#X0.[!P`` +M`-/C08G<00G$2(M$)%!$B2"_Z`,``.@`````]]-!(=Q(BU0D4$2)(HT4K0`` +M``!(8])(`U0D$(L"B04`````@\@(B0*#1"1<`4&-1@%!.$5#=BSI@_[__TB) +MW^@`````2(UPR$B+4PA(B4,(2(D82(E0"$B)`DB#>-@`=!'K";X`````28U? +M2$DY7TAURDB%]G0XQD9:`$&`?4,`="VY`````+H`````00^V1PU(T_BH`70. +M#[;"B$P&<(!&6@&#P@&#P0%!.$U#=]VZ`````+Z!````3(G_Z`````!(8T0D +M3$B-%$!(C1202<>$U<@2````````08!]0P`/A9\#``#IP@0``+H`````O@8` +M``!,B?_H`````(MT)$Q,B>_H`````$AC1"1,2(T40$B-%)!)C935X!(``(M" +M"*D``!``=`@E___O_XE""$F-1TA).4=(#X0``@``2(D$)$B+/"3H`````$R- +M<,A(C5`02#E0$`^$PP$``$F-1DA(B40D"$B+?"0(Z`````!(C5CP@'M)#747 +M2(VP4`$``$B+0U!(BP!(BW@HZ`````!(BQ-(BT,(2(E""$B)$("[@P````!T +M'6:03(GOZ`````"_`0```.@`````@+N#`````'7E2(M#0$B%P`^$*@$``$C' +M0&``````@+N#``````^$IP```&9!@WUH``^$FP```+T`````0;P`````3(G@ +M20.%L`D``$B+,$B%]G1J#[=&(&8[0SAU8&8]A0!W6@^WP$&`O`5@"```_W1, +M28M5``^W1C)FP>@%#[?`C02%``,``(F"<`$``$F+50`/MTXR@^$?N`$```!( +MT^")@G0!``#&1B0AN@````!,B>_H`````&9FD&9FD(/%`4F#Q`A!#[=%:#GH +M#X]P____]D-,!'493(GOZ`````!(BW-`N@$```!,B>_H`````$B+0T`/ME`" +M#[9P`4C'QP````"X`````.@`````2(M30$F+M?`(``"_`0```.@`````2(M3 +M0$F+M?`(``"_!@```.@`````2,=#0`````!!@&\.`4&`;E@!2(G>3(GOZ``` +M``!(BU0D"$DY5D@/A4;^__]!@&\H`4R)]DR)[^@`````2(L,)$DY3T@/A03^ +M__])C4=@23E'8`^$$`$``+T`````28G$2<?&`````$R)Y^@`````2(G#@+B# +M`````'0WC44!@?U_EI@`=@2)Q>LHB<5,B>_H`````+\!````Z`````"`NX,` +M````=`N#Q0&!_8&6F`!UVDB+0T!(A<`/A(\```!(QT!@`````/9#3`1U&4R) +M[^@`````2(MS0+H!````3(GOZ`````!(BU-`#[:"S````(T$@`^V4@(!T$B8 +M00^V#`9!#[95.D$/MG4Y2,?'`````+@`````Z`````!(BU-`28NU\`@``+\! +M````Z`````!(BU-`28NU\`@``+\&````Z`````!(QT-``````$&`;PX!2(G> +M3(GOZ`````!-.6=@#X7__O__3(G^3(GOZ`````!(8T0D3$B-%$!(C1202<>$ +MU<@2````````Z5;\__]!OP`````/MD0D6TB)1"1`2(M4)&!(@<+0`0``2(E4 +M)#A%B?Y!#[;O2(M$)$")Z4C3^*@!=0M$.'PD2P^%U0```$&`_@-V:$B+1"1@ +MQX!P`0``Q`$``$B+5"10BP*)!0````")Z8/A`XT,2;L'````T^-!B=Q!"<1$ +MB2*_Z`,``.@`````]]-$(>-(BTPD4(D9C12M`````$ACTD@#5"0XBP*)!0`` +M``"#R`B)`NMG2(M$)&#'@'`!``"H`0``2(M4)%"+`HD%`````(GI@^$#C0Q) +MNP<```#3XT&)W$$)Q$2)(K_H`P``Z`````#WTT$AW$B+3"101(DAC12M```` +M`$ACTD@#5"0XBP*)!0````"#R`B)`D&#QP%!C48!03A%0P^'^?[__TB#Q&A; +M74%<05U!7D%?PV9F9I!F9F:09F:09F:005154TF)_$B)]0^V=T-`A/9T)@^V +M50V[`````/;"`70.ZQ9(B=")V4C3^*@!=0^#PP%`./-U[.L%NP````#V10P" +M=0I(C45@2#E%8'5H2(GOZ`````"$P'113(GGZ`````!(B<9(A<!T3$B+56A( +MB45H2(U%8$B)!DB)5@A(B3*`10X!2(EN4,9&2`7&1DD`QH:!````#[D!```` +MN@$```!(B>_H`````.L+#[;S3(GGZ`````!;74%<PV9FD&:0059!54%455-( +MB?U!B?5$#[;V0HT$M0````!,8^"[`````+\0)P``Z`````!!@/T#=AY(BT4` +M2`70`0``3`'@BP")!0````#!Z!2#X`'K'9!(BT4`2`70`0``28T$!(L`B04` +M````P>@4@^`!A,!U"H/#`6:!^RP!=:A$B?9(B>_H`````$B)[^@`````26/& +M2(T40$B-%)!(C435`/:`P1(```%T#TB+L,@2``!(B>_H`````%M=05Q!74%> +MPV:0059!54%455-!B?5)B?Q$#[;V26/&2(T40$B-%)!(BZS7R!(``$B%[0^$ +ME@$``$C'P/[___]$B?%(T\"$10T/A8`!``!(C45(2#E%2'450;T`````2(U= +M8(!]#@!U(^GS`@``0`^VQDB-/$!(C3RX28V\_+@2``#H`````.G5`@``2(G? +MZ`````!(B<%(BT,(2(E+"$B)&4B)00A(B0B`>4D`#X4)`0``#[=!.$F#O,1@ +M!````'4+2(-Y0``/A-D````/MT$X28N$Q&`$``!(@[B```````^$IP```,:! +MZ``````/ME%(2(G0@^`&2(/X!G4M]L(!="C&04H%QD%+!`^VD8$```!(BW%8 +M2(MY4.@`````Z9@```!F9F:09F:0#[912$B)T(/@!DB#^`1U(/;"`70;QD%* +M`\9!2P1(B<Y,B>?H`````.MG9F:09F:0#[912$B)T(/@!DB#^`9U4?;"`75, +MQD%+!L9!2@5FQX'(``````!(B<Y,B>?H`````.LN2(M10$F+M"3P"```OP0` +M``#H`````.L6#[=1.$F+M"3P"```OP(```#H`````$&#Q0%$.&T.#X:7`0`` +MZ;W^__]"C02U`````$ACZ+L`````OQ`G``#H`````$&`_0-V'4F+!"1(!=`! +M``!(`>B+`(D%`````,'H%(/@`>L;28L$)$@%T`$``$@!Z(L`B04`````P>@4 +M@^`!A,!U"H/#`6:!^RP!=:I$B?9,B>?H`````$R)Y^@`````26/&2(T40$B- +M%)!)BZS4R!(``$B%[0^$_0```$&`?"1#`'0LNP`````/MLL/MD4-2-/XJ`%T +M#[H`````B<Y,B>?H`````(/#`4$X7"1#=]E!#[;%2(T40$B-%)!)C934N!(` +M`$B)52!(C45(2#E%2'4X2(U%8$@Y16!U+NM[9F:09I!(B=_H`````$B-<,A( +MBU,(2(E#"$B)&$B)4`A(B0)(@WC8`'01ZPF^`````$B-74A(.5U(=<I(A?9T +M6\9&6@!!@'PD0P!T3[D`````N@`````/MD4-2-/XJ`%T#@^VPHA,!G"`1EH! +M@\(!@\$!03A,)$-V(NO;]D4*`70-2(GN3(GGZ`````#K#;X`````2(GOZ``` +M``!;74%<05U!7L.02(/L"$R+!T2+3S1!#[9P0T"$]G1B28V`N!(``+D````` +M2#GX=1KK3P^VP4B-%$!(C12028V4T+@2``!(.?IT"(/!`4`X\77@@/D#=B]) +MBP!(!=`!``!(C12-`````('B_`,``$@!T(L`B04`````P>@4@^`!ZRVY```` +M`$F+`$@%T`$``$B-%(T`````@>+\`P``2`'0BP")!0````#!Z!2#X`&$P'00 +M#[;Q1(G*3(G'Z`````#K"P^V\4R)Q^@`````2(/$",-F9F:09F9FD$%7059! +M54%455-(@^P(2(GS28G^3(NGB````$F++"1!]D0D#!!T!,9'409!#[9&43P! +M='D\`7(5/`0/A)D````\!@^%2`,``.FZ`0``0<9&40%,B?9(B>_H`````,9# +M)(%!@$PD#`A(@[N``````'0/2(VS@````$B)[^@`````2(V5^````$B+A?@` +M``!(B5@(2(D#2(E3"$B)G?@```!(B>_H`````.GC`@``08!D)`SW08!&4@%! +MQD91`,9#)`)(B=Y(B>_H`````$B)[^@`````Z;<"``!!#[9$)`R#X/>#R!!! +MB$0D#$&+E@@!``"-0@%!B88(`0``@_H"#X<#`0``2(.[@`````!T#TB-LX`` +M``!(B>_H`````$B-E?@```!(BX7X````2(E8"$B)`TB)4PA(B9WX````08!^ +M0@!U&$&_`````$V-;"1@08!\)`X`=1[IG@```+H`````O@(```!,B>?H```` +M`&:0Z1L"``!,B>_H`````$B)PTF+10A)B5T(3(DK2(E#"$B)&$B+4T!(A=)T +M%4B+M?`(``"_!0```.@`````@$M,`DB)VKX&````3(GGZ`````"`NX,````` +M=")F9F:09F:02(GOZ`````"_`0```.@`````@+N#`````'7E08/'`44X?"0. +M#X=[____3(GWZ`````#IB0$``$&`9"0,]T''A@@!````````2(.[@`````!T +M#TB-LX````!(B>_H`````$B-E?@```!(BX7X````2(E8"$B)`TB)4PA(B9WX +M````N@````"^!@```$R)Y^@`````28U$)&!).40D8'1\28G%3(GOZ`````!( +MB<-(BT!`2(7`=%-(QT!@`````$B)[^@`````2(MS0+H!````2(GOZ`````!( +MBU-`2(NU\`@``+\!````Z`````!(BU-`2(NU\`@``+\&````Z`````!(QT-` +M`````$B)WDB)[^@`````33EL)&!UATR)]DB)[^@`````2<=$)$``````2(M% +M`(N06`$``(D5`````(72=`I(BT4`B9!8`0``0?9$)`H!=&N`?4,`="RY```` +M`$'V1"0-`705ZQUF9I!F9I!!#[9$)`U(T_BH`74/@\$!.$U#=^OK!;D````` +M#[;9B=Y(B>_H`````$R)YDB)[^@`````2&/;2(T$6TB-!(-(QX3%R!(````` +M``!F9I!FD$B#Q`A;74%<05U!7D%?PY!(@^PH2(E<)`A(B6PD$$R)9"083(EL +M)"!(B?-(B?U,BV]038ME``^W3C*)R&;!Z`4/M_!(8\9!BT2$;(/A'TC3^*@! +M#X5G`P``28L4)(T$M0`#``")@G`!``!)BP0DBY!T`0``B14`````QD,D(8M# +M."7___\`/>$!#P!U(TB)W^@`````N@````!(B=Y,B>?H`````.D6`P``9F:0 +M9F:0B=`/MTLR@^$?2-/XJ`%T$$B)W^@`````3(GGZ``````/MH7H````/`0/ +MA^$"```/ML#_),4`````QH7H`````;H!````2(G>3(GOZ`````#INP(``,:% +MZ`````*Z"````$B)WDR)[^@`````Z9\"``#&A>@````#2(GJOB$```!,B>_H +M`````$B+=5A(A?9T'P^VE8$```!!N`````"Y`0```$R)[^@`````Z6`"``!! +M#[9U#;H`````3(GGZ`````#I20(``,:%Z`````1(@WU8`'0S2(GJOB$```!, +MB>_H``````^VE8$```!(BW580;@`````N0(```!,B>_H`````.D(`@``N@`` +M``"^(0```$R)[^@`````00^V=0VZ`0```$R)Y^@`````Z=\!``"`?4K_=!5( +MB>J^!@```$R)[^@`````Z<0!``!(B>J^!@```$R)[^@`````2(M-0$B%R702 +MBU$$C4(!B4$$@_H%#X:9`0``QD5+`<9%2@"`O8,`````=!M,B>?H`````+\! +M````Z`````"`O8,`````=>5(@WU8`'092(M5$$B+11A(B4((2(D02(M%6(!H +M6`'K&4B+56!(A=)T$`^VA8$```!(QT3"6`````!(BU4`2(M%"$B)0@A(B1!! +M@&T.`4B+O2`!``!(A?]T$0^VM0T!``"Z`0```.@`````2(M]6$B%_W01#[:U +M@0```+H!````Z`````!(BT5`2(7`=')(QT!@`````$R)Y^@`````2(MU0+H! +M````3(GGZ`````!(BT5`#[90`@^V<`%(Q\<`````N`````#H`````$B+54!) +MB[0D\`@``+\!````Z`````!(BU5`28NT)/`(``"_!@```.@`````2,=%0``` +M``!(B>Y,B>?H`````$&`?0G_=%R]`````$&`?0X`=#F]`````$F-76!F9F:0 +M9F:02(G?Z`````!(BU,(2(E#"$B)&$B)4`A(B0*`>$K_=0F#Q0%!.&T.=]=! +M.&T.=Q%!QD4)_TR)[DR)Y^@`````D$B+7"0(2(ML)!!,BV0D&$R+;"0@2(/$ +M*,-F9F:09F:005=!5D%505154TB#[&A)B?](BX>(````2(E$)&!(BRA(BX68 +M$0``1(LP2(G^2(GOZ`````!!@']2`78%0<9'401)C5\H23E?*`^$4P$``$B) +MW^@`````2(E$)%A)BT<H2(M4)%A(B5`(2(D"2(E:"$F)5RA(A=(/A#L#``!( +MBTPD8$B+02`/MDU!#[95.@^V=3E(BUPD6$0/MTLR1`^V0`A(Q\<`````N``` +M``#H`````$0/MVLR36GEL`0``$P#I3@1``!(BYW8$```2(M\)%CH`````$&+ +MC"0D!```08N4)"`$``!(BWPD6`^W=S)%BXPD+`0``$6+A"0H!```2,?'```` +M`+@`````Z`````!)P>4&3`'KBT,TBWLP1(M3+$2+6RA$BV,D1(MK((M3'(E4 +M)$R+2QB)3"10BU,4B50D5$2+2Q!$BT,,BTL(BU,$BS.)1"1`B7PD.$2)5"0P +M1(E<)"A$B60D($2);"08BUPD3(E<)!"+?"10B7PD"(M$)%2)!"1(Q\<````` +MN`````#H`````&:#?6@`=3OIZP$``$B+5"1@2(M"(`^V34$/ME4Z#[9U.4&Y +M____`$0/MD`(2,?'`````+@`````Z`````#I$0(``+L`````3(VEH`\``$R- +MK?@```!F9I!FD`^WPTC!X`-(`X6P"0``2(LP2(7V#X1V`0``#[=&(&9!.4=` +M#X5G`0``#[>5LA(``$$YUG10@\(!#[>%MA(``#G"N``````/0]"-0@%(P>`" +M2`.%F!$``(L`J0``"`!U(&8E_P]F.=AU%T@Y="18=15(B>_H`````.E\`0`` +M9F:01#GR=;`/MT8@9CV%`&9FD`^'^@````^WP("\!6`(``#_#X3I````2(M, +M)&"`>5@`#X7:````]D$*`0^$T````$B+50`/MT8R9L'H!0^WP(T$A0`#``") +M@G`!``!(BT4`#[=.,H/A'[H!````2(G72-/GB;AT`0``#[=&,DC!X`-(`X6P +M"0``2,<```````^W3C*)R&;!Z`4E_P<``(/A'TB)UTC3YTB)^??1(8R%N`D` +M``^W3C*)R&;!Z`4E_P<``(/A'TC3XO?2(52%;$@Y="18="=(BP9(BU8(2(E0 +M"$B)`DB+A?@```!(B7`(2(D&3(EN"$B)M?@````/MW8R3(GGZ`````!!@&]% +M`69F9I"#PP%F.5UH#X=C_O__2(M$)&#V0`H!=%%(BTPD6$B+$4B+00A(B4(( +M2(D02(G.3(G_Z`````#K,4B+7"1@2(M#(`^V34$/ME4Z#[9U.4&Y____`$0/ +MMD`(2,?'`````+@`````Z`````!(@\1H6UU!7$%=05Y!7\-F9F:09F9FD$%7 +M059!54%455-(@^PH28GX2(E4)"!,BR\/M_9(P>8#20.UL`D``$B++F:!?3CA +M`74N#[9%.H/H$3P!=R-,BW]`2,=$)!@`````2(72=6E!QD=1`$C'1"08```` +M`.M9D$F+C3@)``"X8)X!`&:!?2"%`'<<#[=%($$/MH0%8`@``$B-%$!(C120 +M2(G02,'@!4@!P4B)3"080;\`````2(-\)"``=1)(BT0D&,:`Z`````!!OP`` +M``"`?22!=05!@&`,]TB#?"0@``^%`@$``,9%)`#VA98````@#X2"!0``2(M% +M:$B%P`^$=04``$B)P_:`L0````)T'4B+N*````!(A?]T$4B+=4A(A?9T"(M5 +M-.@`````28N5"!$``$B!PD`(``!(BTPD&`^V07+!X`A(F$@!PHL"B04````` +MB<+!ZA"(DYL```#!Z!AFB8.0````28N5"!$``$B!PD0(```/MD%RP>`(2)A( +M`<*+$HD5``````^VPF:)@Y0````/ML9FB8.6````B=#!Z!`/ML!FB8.8```` +MP>H8B).:````28N5"!$``$B!PDP(```/MD%RP>`(2)A(`<*+`HD%``````^V +MP&:)@Y(```#ID00```^W13)(:<"P!```38NE.!$``$D!Q$F-G"0@!```@'TD +M@'4$QD4D(4B#?"08``^$F````$B+1"082(M00$B%TG1"#[:"S````(T$@`^V +M4@(!T$B8#[:(`````$$/ME4Z00^V=3E,BTPD($2+131(Q\<`````N`````#H +M`````.F#````BWTT2(M,)!A$#[:)@0```$F+0"!$#[9`"$$/MDU!00^V53I! +M#[9U.4B+1"0@2(E$)`B)/"1(Q\<`````N`````#H`````.L[387_=#9$BTTT +M28M`($0/MD`(00^V34%!#[95.D$/MG4Y2(M$)"!(B00D2,?'`````+@````` +MZ`````"+2P2+$P^W=3)$BTL,1(M#"$C'QP````"X`````.@`````0?9$)"(! +M='],C6583(NU@````$&+5"0$00^V="0!2,?'`````+@`````Z`````"`?5@` +M#X3R````NP`````/ML-(C01`2,'@`DF+5"0(2`'"20-&$(M*"$B+$@^V\T2+ +M2`A,BP!(Q\<`````N`````#H`````(/#`4$X'"0/AJ@```#KN6:008!\)"<` +M#XF8````#[=U,HGR9L'J!0^WT@^W]DC'QP````"X`````.@`````08N-P`D` +M`$&+E;P)``!!B[6X"0``18N%Q`D``$C'QP````"X`````.@`````#[=U,DC' +MQP````"X`````.@`````28M5``^W13)FP>@%#[?`C02%``,``(F"<`$``$F+ +M50`/MTTR@^$?N`$```!(T^")@G0!``!F@7TXX0%U&`^V13J#Z!$\`7<-3(G_ +MZ`````#I'@(```^V5"0C]L(!#X3N`0``BT4X)?___P`]X0$.``^$VP$``$F+ +ME0@1``!(@<)`"```2(M,)!@/MD%RP>`(2)A(`<)$BR)$B24`````28N5"!$` +M`$B!PD0(```/MD%RP>`(2)A(`<)$BS)$B34`````28N5"!$``$B!PD@(```/ +MMD%RP>`(2)A(`<*+&HD=`````$F+E0@1``!(@<),"```#[9!<L'@"$B82`'" +M1(L"1(D%`````(G91(GR1(GF2,?'`````+@`````Z`````#VA98````@#X3J +M````2(M]:,:'L@```!#&120@1(G@P>@0B(>;````1(G@P>@89HF'D````(G8 +MP>`(00^VU@'09HF'E````(G8L`!,B?$/MM4!T&:)AY8```")VL'J$,'B"$2) +M\,'H$`^VP`'"9HF7F````$F+E0@1``!(@<),"```2(M,)!@/MD%RP>`(2)A( +M`<*+,HDU`````$`/MO9FB;>2````#[>/E@````^WEY@````/M_9$#[>'E``` +M`$C'QP````"X`````.@`````28N5"!$``$B!PD`(``!(BTPD&`^V07+!X`A( +MF$@!PL<"`````.M:9H%]..$!=2(/MD4Z@^@:/`%W%TC'QP````"X`````.@` +M````QD4D(>LP2(GN3(GOZ`````#K(Y"$TGD>28M%`(N(6`$``(D-`````(7) +M=`I)BT4`B8A8`0``2(/$*%M=05Q!74%>05_#9F9FD&9F9I!F9F:09F:02(/L +M"`^V1CA(.7XH=4H\"'1E/"AT83RH=%T\B&9F9I!T53P*=%$\*G1-/*IF9F:0 +M=$4\BG1!2(N'^````$B)<`A(B09(C8?X````2(E&"$B)M_@```#K'TB+EP`! +M``!(B;<``0``2(V'^````$B)!DB)5@A(B3+H`````$B#Q`C#9F9FD&9F9I!F +M9F:09F:02(/L".@`````2(/$",-FD%-(@^Q@2(G[2(U,)%U(C50D7DB-="1? +M#[=_/$B-1"122(E$)#A(C40D5$B)1"0P2(U$)$Q(B40D*$B-1"1.2(E$)"!( +MC40D6$B)1"082(U$)%I(B40D$$B-1"1;2(E$)`A(C40D5DB)!"1,C4PD7$R- +M1"10Z``````/ME0D7P^V="1>2(U\)$CH``````^V1"1?2(T40$B-%)!(P>(% +M2(MS($B-NQ@)``"Y`0```.@`````#[94)%U(C1322,'B!4B+<R!(C;M`"0`` +MN0$```#H``````^V5"1>2&G2R`\``$B+<R!(C;MH"0``N0$```#H``````^W +M5"182,'B`TB+<R!(C;N0"0``N0$```#H``````^W1"102(T4@$B-%)!(P>(# +M2(MS($B-NV@*``"Y`0```.@`````#[94)%P/MT0D4$@/K]!(C1122,'B`DB+ +M<R!(C;OX"0``N0$```#H`````$B+<R!(C;L@"@``N0$```"Z``(``.@````` +M#[9,)%](BW,@2(V[6`L``+H`"```Z``````/ME0D6TC!X@5(BW,@2(V[N`H` +M`+D!````Z`````!(BW,@2(V[X`H``+D!````N@`!``#H``````^V5"1:2(T4 +MDDC!X@5(BW,@2(V["`L``+D!````Z``````/MU0D5DB-%))(P>(#2(MS($B- +MNS`+``"Y`0```.@`````#[=4)%A(`=)(BW,@2(V[>`\``+D!````Z``````/ +MME0D7T@!TDB+<R!(C;NP#P``N0$```#H``````^V5"1=2`'22(MS($B-N^@/ +M``"Y`0```.@`````#[94)%Y(`=)(BW,@2(V[(!```+D!````Z``````/ME,^ +M2`'22(MS($B-NU@0``"Y`0```.@`````#[=4)$Y(C1122,'B!$B+<R!(C;N0 +M"@``N0$```#H`````(M4)$A(BW,@2(V[D!```+D!````Z``````/MU0D6$C! +MX@9(BW,@2(V[N!```$&X`0```+E`````Z`````!(BW,@2(V[Z!```$&X`0`` +M`+D``0``N@`9``#H``````^W5"182&G2L`0``$B+<R!(C;L8$0``0;@!```` +MN8````#H``````^W5"142,'B`DB+<R!(C;M($0``0;@!````N00```#H```` +M``^W5"122,'B`DB+<R!(C;MX$0``0;@!````N00```#H``````^V5"1;P>(+ +M2(MS($B-NZ@1``!!N`$```"Y"````.@`````2(MS($B-N]@1``!!N`$```"Y +M"````+H```@`Z``````/MU0D5DAITHP!``!(BW,@2('#"!(``$&X`0```+D( +M````2(G?Z`````"X`````$B#Q&!;PV9FD&:02(/L.$B)7"0(2(EL)!!,B60D +M&$R);"0@3(ET)"A,B7PD,$F)]TF)_4B+!TB)!"1,C6=(3(GGZ`````!(B<-, +MC7#(2(L\).@`````2(G%28M%4$F)75!-B68X28E&0$B)&+@!````2(7M='C& +M13CAQD4Y`<9%.A"`33L!28N'H````$B)16A(BT5P3(EX*$F-AY````!(B450 +MQD4ES$$/MD9;9HE%($F+10!(B44HQT4TD````$R)?4A(QX6@`````````$B- +M?5B^`````.@`````2(GN2(L\).@`````N`````!(BUPD"$B+;"003(MD)!A, +MBVPD($R+="0H3(M\)#!(@\0XPV9F9I!F9I!F9I!!5T%6055!5%532(/L&$B) +M_4C'1"00`````$B+1"00#[:4*.8(``"`^O\/A.H````/MLI(C02)2(T$@4B- +MA,7``0``2(E$)`@/MO)(8\9(C12`2(T4D("\U<X!````#X2V````0;P````` +M2(T$B4B-!(%(P>`#3(VT!2`"``!,C2PH2&/&2(T4@$B-%)!,C;S5P`$``$R) +M]^@`````2(G#28N%*`(``$F)G2@"``!,B3-(B4,(2(D82(M30$B%TG052(NU +M\`@``+\%````Z`````"`2TP"2(G:O@(```!(BWPD".@`````@+N#`````'0; +M2(GOZ`````"_`0```.@`````@+N#`````'7E08/$`44X9PX/AWO___](@T0D +M$`%(@WPD$`0/A>[^__](B>_H`````$B#Q!A;74%<05U!7D%?PV9F9I!F9I!F +M9I!F9I!!5T%6055!5%532(/L>$B)^\9'40#&1U``QD=/`,:':10```!(C9>X +M$@``N`````#&!!``2(/``4@]H`$``'7P2(V#^````$B)@_@```!(B8,``0`` +M2(V#"`$``$B)@P@!``!(B8,0`0``3(VC&`$``$R)HQ@!``!,B:,@`0``3(VK +M*`$``$R)JR@!``!,B:LP`0``2(V#.`$``$B)1"1(2(F#.`$``$B)@T`!``!( +MC8M(`0``2(E,)%!(B8M(`0``2(F+4`$``$R-LV@!``!,B;-H`0``3(FS<`$` +M`$B-LW@!``!(B70D0$B)LW@!``!(B;.``0``3(V[6`$``$R)NU@!``!,B;M@ +M`0``2(U,)&Y(C50D<$B-="1Q#[=[/$B-1"1R2(E$)#A(C40D=$B)1"0P2(U$ +M)&1(B40D*$B-1"1J2(E$)"!(C40D=DB)1"082(U$)&Q(B40D$$B-1"1M2(E$ +M)`A(C40D:$B)!"1,C4PD;TR-1"1FZ``````/MD0D<8A#1@^V1"1PB$-'#[9$ +M)&Z(@_$````/MT0D=F:)0V@/MT0D=&:)@[02```/MT0D<H/H`6:)@[82```/ +MMT0D9F:)0U(/MT,\9CV`D70*9CV`E`^%I`D``,9#303&0T,$QD-.0,9#3`#& +M@^X````)QD-$`$B-NQ@)``#H`````$B)P4B)@S@)```/MD0D<4B-%$!(C120 +M2,'B!4B%TG002(G(Q@``2(/``4B#Z@%U\TB-NT`)``#H`````$B)P4B)@V`) +M```/MD0D;DB-!,!(B<)(P>(%2(72=!!(B<C&``!(@\`!2(/J`77S2(V[:`D` +M`.@`````2(G!2(F#B`D```^V1"1P2&G0R`\``$B%TG002(G(Q@``2(/``4B# +MZ@%U\TB-NY`)``#H`````$B)P4B)@[`)```/MT0D=DB-%,4`````2(72=!!( +MB<C&``!(@\`!2(/J`77S2(V[(`H``.@`````2(F#0`H``$B-N_@)``#H```` +M`$B)Q4B)@Q@*``!(C;MH"@``Z`````!(B<)(B8.("@``9H-\)&8`=$BY```` +M`$B):F`/MD0D;XA"6$B+@R`!``!(B9,@`0``3(DB2(E""$B)$`^V1"1O2(T$ +M0$B-;(4`2('"J````(/!`68Y3"1F=[U(C;N0"@``Z`````!(B<)(B8.P"@`` +M9H-\)&H`="^Y`````,9"$`!(BX,P`0``2(F3,`$``$R)*DB)0@A(B1!(@\(P +M@\$!9CE,)&IWUDB-N[@*``#H`````$B)PDB)@]@*``"`?"1M`'0SN0````!( +MBX-``0``2(F30`$``$B+="1(2(DR2(E""$B)$$B#PB"#P0$/MD0D;68YR'?2 +M2(V[X`H``.@`````2(G"2(F#``L``$B-B``!``!(BX-0`0``2(F34`$``$B+ +M="102(DR2(E""$B)$$B#PB!(.<IUVDB-NP@+``#H`````$B)PDB)@R@+``"` +M?"1L`'0QN0````!(BX-P`0``2(F3<`$``$R),DB)0@A(B1!(@<*@````@\$! +M#[9$)&QF.<AWU$B-NS`+``#H`````$B)PDB)@U`+``!F@WPD:`!T*[D````` +M2(N#8`$``$B)DV`!``!,B3I(B4((2(D02(/"*(/!`68Y3"1H=]J`?"1Q`'1) +MO0````!,C:-8"P``3(GGZ``````/M]5(B833>`L``$B+DX`!``!(B8.``0`` +M2(M,)$!(B0A(B5`(2(D"@\4!#[9$)'%F.>AWPTB-NW@/``#H`````$B)@Y@/ +M``!(B8.@#P``#[=T)'9FB;.J#P``#[?V2(V[H`\``.@`````2(V[L`\``.@` +M````2(F#T`\``$B)@]@/```/MG0D<6:)L^(/```/M_9(C;O8#P``Z`````!( +MC;OH#P``Z`````!(B8,($```2(F#$!````^V="1N9HFS&A````^W]DB-NQ`0 +M``#H`````$B-NR`0``#H`````$B)@T`0``!(B8-($```#[9T)'!FB;-2$``` +M#[?V2(V[2!```.@`````2(V[6!```.@`````2(F#>!```$B)@X`0```/MD,^ +M9HF#BA````^V<SY(C;N`$```Z`````!(C;N0$```Z`````!(B<%(B8.P$``` +M#[9$)'!(C03`2,'@!XG&@<9@5P``=!*)\DB)R,8``$B#P`%(@^H!=?-(BX.P +M$```B3!(BY.P$```#[9$)'"(0@0/ME0D<$B+N[`0``#H`````$&X`````(![ +M/@`/A*0```"_``````^WQTB-%(!(C1202,'B`TR-A!/``0``2(T$&D&(>`A! +MQD`)`$B)F,`!``!!QD`.`,:`&`(```#&@.@!````QX!@`@```````$B-C!/P +M`0``2(F(\`$``$B)B/@!``!(C8P3"`(``$B)B`@"``!(B8@0`@``2(V4$R`" +M``!(B9`@`@``2(F0*`(``$'&0`H"@\<!#[9#/F8Y^`^'8?___\9#3`#&@^8( +M``#_QH/G"```_\:#Z`@``/_&@^D(``#_@'PD<0`/A)8```"^``````^WSDB- +M!$E(C02!2,'@!4B+DS@)``#&1`)+`4B+DS@)``#&1!!*`$B+DS@)``#&A!"` +M````_TB+DS@)``#&1!!R_TB+DS@)``!FQX00R```````2,>$RV`$```````` +M2(G!2`.+.`D``$B-42!(B5$@2`.#.`D``$B-4"!(B5`H@\8!#[9$)'%F.?`/ +MAV____]FQX/L``````"X`````,:$&&`(``#_2(/``4@]A@```'7L@'PD<``/ +MA+T```"^``````^WQDAIP,@/``!(BY.("0``QD0"6`!(BY.("0``QD0060!( +MBY.("0``2,=$$!``````2(G!2`.+B`D``$B-41A(B5$82(G!2`.+B`D``$B- +M41A(B5$@2(G!2`.+B`D``$B-42A(B5$H2(G!2`.+B`D``$B-42A(B5$P2(N3 +MB`D``$R)1!`(2(G!2`.+B`D``$B-44A(B5%(2`.#B`D``$B-4$A(B5!0@\8! +M#[9$)'!F.?`/ATC____&@^\```"`@'PD;@`/A((```"^``````^WQDB-!,!( +MP>`%2(N38`D``&;'1`).!`!(BY-@"0``QD000@!(BY-@"0``QD001/](BY-@ +M"0``QD004/](B<%(`XM@"0``2(U1*$B)42A(B<%(`XM@"0``2(U1*$B)43!( +MBY-@"0``3(F$$(@```"#Q@$/MD0D;F8Y\'>#QH/P````@DB-L^`0``!(C;NX +M$```Z`````!(B8/8$```2(VS$!$``$B-N^@0``#H`````$B)@P@1``!(C;-` +M$0``2(V[&!$``.@`````2(F#.!$``$B-LW`1``!(C;M($0``Z`````!(B8-H +M$0``2(VSH!$``$B-NW@1``#H`````$B)@Y@1``!(C;/0$0``2(V[J!$``.@` +M````28G$2(F#R!$``$B+J]`1``"`?"1M`'120;T`````2(M\)$CH`````$R) +M8!!(B6@82(N30`$``$B)@T`!``!(BW0D2$B),$B)4`A(B0))@<0`"```2('% +M``@``$&#Q0$/MD0D;69$.>AWM$B-LP`2``!(C;O8$0``Z`````!)B<1(B8/X +M$0``2(NK`!(``$&]`````$B+?"10Z`````!,B6`02(EH&$B+DU`!``!(B8-0 +M`0``2(M,)%!(B0A(B5`(2(D"28'$```!`$B!Q0```0!!@\4!9D&#_0AUN$B- +MLS`2``!(C;L($@``Z`````!(B8,H$@``3(NC,!(``&:#?"1H`'1(2(G%0;4` +M3(G_Z`````!(B6@03(E@&$B+DV`!``!(B8-@`0``3(DX2(E0"$B)`DB!Q8P! +M``!)@<2,`0``08/%`69$.6PD:'>^2(/$>%M=05Q!74%>05_#9F9FD$%50515 +M4TB#[`A)B?U)B?1(BYZ(````#[961TB)_DB)W^@`````2(G%9D"1.$$&` +M?4,`=%FY`````/9##0%T#>M,#[9##4C3^*@!=0V#P0%!#[9%0V8YR'?H9H/Y +M`W8S28M%`$@%T`$``$B-%(T`````@>+\_P,`2`'0BP")!0````#!Z!2#\`&# +MX`'K,;D`````28M%`$@%T`$``$B-%(T`````@>+\_P,`2`'0BP")!0````#! +MZ!2#\`&#X`&$P'00#[;Q3(GOZ`````#IEP$``$B-0V!(.4-@#X09`0``2(7M +M#X00`0``#[:%@0```$G'1,18`````$B+50!(BT4(2(E""$B)$$B)ZKX&```` +M2(G?Z`````"`O8,`````=!M,B>_H`````+\!````Z`````"`O8,`````=>5( +MBT5`2(7`=$A(QT!@`````/9%3`1U"$R)[^@`````2(M50$F+M?`(``"_`0`` +M`.@`````2(M50$F+M?`(``"_!@```.@`````2,=%0`````"`:PX!2(GN3(GO +MZ`````!)BT4`BY!8`0``B14`````A=)T"DF+10")D%@!``!!QD0D0@!F08-D +M)$[O08!\)#L`="JZ``````^WPDF+1,182(7`=`J`>$K_#X5^````@\(!00^V +M1"0[9CG0=]M!@'PD3@!X#[T`````08!\)#L`=1'K2TR)YDR)[^@`````9I#K +M2@^WQ4F+7,182(7;="'V0TP"=!M(BU-`28NU\`@``+\&````Z`````"`8TS] +M9I"#Q0%!#[9$)#MF.>AWQ&9!QT0D3@(`08!D)$G]2(/$"%M=05Q!7<-F9I!F +M9I!F9I!!5T%6055!5%532(/L>$F)_TB)?"102(M'4$B)1"1P2(LH2(N%F!$` +M`$2+,$B)_DB)[^@`````08"_ZP````%V"$'&A^@````$28U'($C'1"1H```` +M`$DY1R!T*4F-7R!(B=_H`````$B)1"1H28M'($B+5"1H2(E0"$B)`DB)6@A) +MB5<@28-_0`!T4$&X____`$B#?"1H`'0*2(M,)&A$#[=!,DF+5T`/MH+,```` +MC02`#[92`@'02)@/MH@`````#[95.@^V=3E(Q\<`````N`````#H`````.M, +MO____P!(@WPD:`!T"4B+="1H#[=^,D4/MH^!````2(M4)'!(BT(@1`^V0`@/ +MMDU!#[95.@^V=3F)/"1(Q\<`````N`````#H`````$B#?"1H``^$S@,``$B+ +M3"1H1`^W:3)-:>6P!```3`.E.!$``$B+G=@0``!(B<_H`````$&+C"0D!``` +M08N4)"`$``!(BT0D:`^W<#)%BXPD+`0``$6+A"0H!```2,?'`````+@````` +MZ`````!)P>4&3`'KBT,TBWLP1(M3+$2+6RA$BV,D1(MK((M3'(E4)%R+2QB) +M3"1@BW,4B70D9$2+2Q!$BT,,BTL(BU,$BS.)1"1`B7PD.$2)5"0P1(E<)"A$ +MB60D($2);"08BT0D7(E$)!"+1"1@B40D"(M$)&2)!"1(Q\<`````N`````#H +M`````$R+9"1H28/$6$B+5"1H3(NJ@````$&+5"0$00^V="0!2,?'`````+@` +M````Z`````!!@'PD`0!T3KL`````9F9FD&9FD`^VPTB-!$!(P>`"28M4)`A( +M`<))`T40BTH(2(L2#[;S1(M("$R+`$C'QP````"X`````.@`````@\,!03A< +M)`%WOF:#?6@`#X0B`@``0;P`````3(VMH`\``$B-C?@```!(B4PD2$$/M\1( +MP>`#2`.%L`D``$B+&$B%VP^$WP$```^W0R!F03E'.`^%T`$```^WE;(2``!! +M.=9T;&9F9I"#P@$/MX6V$@``.<*X``````]#T(U"`4C!X`)(`X68$0``BP"I +M```(`'4X9B7_#V9$.>!U+D@Y7"1H=2Q(BT0D:`^W<#)(Q\<`````N`````#H +M`````$B)[^@`````Z9\!``!$.?)UF$B+5"1P@'I8``^%20$```^W0R!F/84` +M#X<[`0``#[?`@+P%8`@``/\/A"H!``!(@WPD4``/A`0!``!!#[9'2*@!#X3W +M````J`0/A.\```!(BU4`#[=#,F;!Z`4/M\"-!(4``P``B8)P`0``2(M%``^W +M2S*#X1^Z`0```$B)UDC3YHFP=`$```^W0S)(P>`#2`.%L`D``$C'```````/ +MMTLRB<AFP>@%)?\'``"#X1](B=9(T^9(B?'WT2&,A;@)```/MTLRB<AFP>@% +M)?\'``"#X1](T^+WTB%4A6Q(.UPD:'1%2(L32(M#"$B)0@A(B1!(@[N````` +M`'0/2(VS@````$B)[^@`````2(N%^````$B)6`A(B0-(BT0D2$B)0PA(B9WX +M````#[=S,DR)[^@`````08"O@P````'K&DB+5"1P]D(*`G0/2(G>3(G_Z``` +M``!F9F:008/$`69$.65H#X?W_?__2(-\)%``="M!#[9'2*@!="*H!'0>2(M, +M)&A(BQ%(BT$(2(E""$B)$$B)SDR)_^@`````2(/$>%M=05Q!74%>05_#D)"0 +MD)"0D)"0D)"0D)"02(M'4$R+"$&X`````$2-%!9##[:$"&`(```\_W1"#[;` +M2(T40$B-%)!(P>(%2(G020.!.`D``$`XL`X!``!U($@YN"`!``!U%T2(D`T! +M``!)BX$X"0``B(P"#`$``&:028/``4F!^(````!UI//#D$B+?U@/MH?````` +M/$]W,0^VP$B-!$!(P>`$`?*(E`?)````#[:'P````$B-!$!(P>`$B(P'R``` +M`("'P`````'SPV9F9I!F9F:09F:09F:00;C_____9H7V=$Q(B?I!N/____^_ +M`````&9F9I!F9I`/M@J-0=`\"7<;08#X_[@`````1`]$P$$/ML"-!(!$C41! +MT.L&08#X_W4,@\<!2(/"`68Y]W7)00^VP,-F9F:008G12(M'4$R+`+D````` +MD$(/MH0!8`@``#S_=#,/ML!(C11`2(T4D$C!X@5(B=!)`X`X"0``2#FX(`$` +M`'410#BP#0$``'4(1(B(#P$``,-(@\$!2('Y@````'6S\\.028G32(M'4$R+ +M"$R+5UA!N`````!##[:$"&`(```\_W1$#[;`2(T40$B-%)!(P>(%20.1.`D` +M`$@YNB`!``!U)4`XL@T!``!U'(3)=`Q(BX(8`0``28D#ZQE)BP-(B8(8`0`` +MZPU)@\`!28'X@````'6B3(G7N`````!F9I!F9I`/MI?(````@/H!=D2`^A=T +M/T`XM\D```!U-H3)=!9(F$B-!$!(P>`$28N$`M````!)B0/#2)A(C01`2,'@ +M!$F+$TF)E`+0````PV9FD&9FD(/``4B#QS"#^%!UI//#9I!!5D%505154TB# +M[!!)B?Y!B?%(B[\H`0``#[9'`L'@"`^V5P-$C00000^WP(/`!#T`"```#X_L +M````0(3V=$Q!#[:6$`$``+[@____(=8/MD<!@^`/B=`)\`G(O@@````A +MUH/@\XG1@^$$"?`)R(/B`H/@_$$/MHX0`0``@^$!"=`)R(A'`>M*#[97`;[@ +M____(=9!#[:&$`$``(/@#XG1@^$0"?`)R+X(````(=:#X/.)T8/A!`GP"<B# +MX@*#X/P/MD\!@^$!"=`)R$&(AA`!``!(C5<(00^WP$R-9`<$23G4=C](B50D +M"+L`````00^VZ4R-;"0(9F:09F:0#[;SB>E,B>I,B??H`````$B+1"0(2(/` +M!$B)1"0(@\,!3#G@<MI(@\006UU!7$%=05[#9F9FD&9FD&9FD&9FD%-(B?M( +MBTY(#[9!`L'@"`^V40,!T`^WP(U0!`^W1C0YPG\?2(N_*`$``$ACTDB)SN@` +M````O@````!(B=_H`````%O#9F9FD&9F9I!F9F:005=!5D%505154TB#[`A) +MB?=!B=1(BU]828G>O0````!,C6X$#[:#R````#P!=D$\%W0]1#BCR0```'4T +M00^V5P-(8\5(C01`2,'@!$F-O`;8````@/H@N"`````/1]`/MM),B>[H```` +M`&9FD&9FD(/%`4B#PS"#_5!UJ$B#Q`A;74%<05U!7D%?PV9FD&:02(/L2$B) +M7"082(EL)"!,B60D*$R);"0P3(ET)#A,B7PD0$F)_$&)UXG+3(D$)$"(="0/ +M2(M'4$R+,$R)]^@`````2(G%2(7`#X3V````3(GWZ`````!)B<5(A<!U$DB) +M[DR)]^@`````Z=8```!FD$B-15A(B40D$$F+?1")VDF+M"0H`0``Z`````#& +MA9@````*QD4EK$$/MT0D.&:)12!(BQ0D2(E5:$R)=2B)732#C90````228M% +M$$B)14A,B6UX28V$).P```!(B450QD4P($C'A:``````````QD4X.\9%.0(/ +MMD0D#XA%.D2)^,'H$(A%.TR)^@^VQHA%/$2(?3T/MD4VB$4^#[9%-8A%/XA= +M0,9%00"^`````$B+?"00Z`````"+531)BW482(M\)!#H`````$B)[DR)]^@` +M````2(M<)!A(BVPD($R+9"0H3(ML)#!,BW0D.$R+?"1`2(/$2,-F9I!F9I!F +M9I!(@^Q(2(E<)!A(B6PD($R)9"0H3(EL)#!,B70D.$R)?"1`28G\08G7B4PD +M"$R)PT"(="0/2(M'4$R+,$R)]^@`````2(G%2(7`#X3J````3(GWZ`````!) +MB<5(A<!U$4B)[DR)]^@`````Z<H```"02(U%6$B)1"00QH68````"L9%):Q! +M#[=$)#AFB44@2(E=:$R)=2C'A90````(````3(EM>$F+11!(B45(BU0D"(E5 +M-$F-A"3L````2(E%4,9%,"!(QX6@`````````,9%.#S&13D"#[9$)`^(13I$ +MB?C!Z!"(13M,B?H/ML:(13Q$B'T]#[9%-HA%/@^V136(13\/MD0D"(A%0,9% +M00"^`````$B+?"00Z`````"+531)BW482(M\)!#H`````$B)[DR)]^@````` +M2(M<)!A(BVPD($R+9"0H3(ML)#!,BW0D.$R+?"1`2(/$2,-F9F:02(/L.$B) +M7"0(2(EL)!!,B60D&$R);"0@3(ET)"A,B7PD,$F)_$B+1U!,BSA(BY<H`0`` +M#[9"`L'@"`^V4@,!T`^WP$2-:`1!@?T`"```#X_.````3(G_Z`````!(B<5( +MA<`/A+H```!,B?_H`````$F)QDB%P'402(GN3(G_Z`````#IF@```$B-75A( +MBW@026/528NT)"@!``#H`````,9%):Q!#[=$)#AFB44@3(E]*$2);32#C90` +M```228M&$$B)14A,B75X28V$).P```!(B450QD4P($C'A:``````````QD4X +M'<9%.1#&13H"#[9%-8A%.T2(;3R^`````$B)W^@`````BU4T28MV&$B)W^@` +M````2(GN3(G_Z`````!(BUPD"$B+;"003(MD)!A,BVPD($R+="0H3(M\)#!( +M@\0XPV9F9I!F9F:09F:02(/L*$B)7"082(EL)"!(B?N)U4C'1"00`````(!_ +M2P%T04B-5"000`^V]KD!````Z`````!(BT0D$$B%P'0D@`B`0(3M=`M(BT0D +M$(!(`R#K"4B+1"00@&`#WTB)W^@`````2(M<)!A(BVPD($B#Q"C#9F9FD&9F +M9I!F9I!F9I!(@^PX2(E<)`A(B6PD$$R)9"083(EL)"!,B70D*$R)?"0P28G] +M08GW2(M'4$R+,$R)]^@`````2(G%2(7`#X2I````3(GWZ`````!)B<1(A<!U +M$$B)[DR)]^@`````Z8D```!(C5U8QD4EK$$/MT4X9HE%($R)=2C'A90````( +M````3(EE>$F+1"002(E%2,=%-``(``!)C87L````2(E%4,9%,"!(QX6@```` +M`````,9%.!S&13D!1(A].L9%.PC&13P`O@````!(B=_H`````(M5-$F+="08 +M2(G?Z`````!(B>Y,B??H`````$B+7"0(2(ML)!!,BV0D&$R+;"0@3(MT)"A, +MBWPD,$B#Q#C#D$%7059!54%455-(@^P82(D\)$B+3D@/MD$"P>`(#[91`XT\ +M$`^WQX/`!`^W5C0YT`^/6@$``$R-:0@/M\=,C70!!$R);"0(0;P`````QT0D +M%`````!-.?4/@]D```!FD`^V1"04B$0D$T$/MD4"P>`(00^V50-$C3P000^W +M]TB+?"0(2(/'!.@`````B<$\_W5>00^WQTB+7"0(2(U4`P1(B=-).=8/AL\` +M``!!B<R0#[9"`L'@"`^V4@.-+!`/M_5(C7L$Z``````\_W4(08#\_W5YZW%! +M.,1$#T?@#[?%2(U4`P1(B=-).=9V8.O!D(G"1"CB#[;2#[9<)!.)WDB+/"3H +M`````(G:3(GN2(L\).@`````00^WQTB+5"0(3(UL`@1,B6PD"(-$)!0!33GN +M#X<I____O@(```!(BSPDZ`````#K24&\``````^V5"033(GN2(L\).@````` +M00^WQTB+7"0(3(UL`P1,B6PD"(-$)!0!Z>7^__\/ME0D$TR)[DB+/"3H```` +M`.NI9I!(@\086UU!7$%=05Y!7\.005=!5D%505154TB#[`A)B?Y(BTY(#[9! +M`L'@"`^V40,!T`^WP(/`!`^W5C0YT`^/#`$``$B-40@/MG$!QD0D`P"Y```` +M``^V0@(`1"0##[9"`TB-5`($@\$!0#C.<^>`?"0#``^$O@```$B-:@1!OP`` +M``!!O0````#'1"0$``````^V5?U!`=4/MD7\/`%T!#P7=3M$B>LHTT$XW79Q +M#[9$)`2#P`%$#[;@9F:09I`/MDW\#[;S1(GB3(GWZ`````"#PP%$..MT1NOD +M9F9FD$F+1EB`N,$````!=#-$B>LHTT$XW78I#[9$)`2#P`%$#[;@#[9-_`^V +M\T2)XDR)]^@`````@\,!1#CK=>9F9I!!@\<!@T0D!`%(@\4$1#I\)`,/A5K_ +M__])BT98QH#!`````;X'````3(GWZ`````!(@\0(6UU!7$%=05Y!7\.02(/L +M*$B)'"1(B6PD"$R)9"003(EL)!A,B70D($F)_$B%_P^$Q````$B+1U!,BS!, +MB??H`````$B)Q4B%P`^$J0```$R)]^@`````28G%2(7`=1!(B>Y,B??H```` +M`.F)````2(U=6,9%):Q!#[=$)#AFB44@3(EU*,>%E`````@```!,B6UX28M% +M$$B)14C'130`"```28V$).P```!(B450QD4P($C'A:``````````QD4X',9% +M.0'&13H"QD4[",9%/`"^`````$B)W^@`````BU4T28MU&$B)W^@`````2(GN +M3(GWZ`````!(BQPD2(ML)`A,BV0D$$R+;"083(MT)"!(@\0HPV9F9I!F9I!( +M@^P82(D<)$B);"0(3(ED)!!(B?-)B?Q(BVYH#[=.(&:!^84`#X>E````#[?! +M#[:T!V`(``!`@/[_#X20````9H/Y?W<B0`^VUDB+CS@)``!(C0122(T$@DC! +MX`5(BT0(4`^V0`CK2&:!^8$`=QU`#[;&2(N7B`D``$AIP,@/``!(BT00"`^V +M0`CK)$`/ML9(BY=@"0``2(T$P$C!X`5(BX00B`````^V0`AF9I!FD#S_=!P/ +MML!!@+P$Y@@``/]T#D"`_O]T"`^V0R0\!G4P2(-[>`!T#$B-<WA,B>?H```` +M`$B)WDR)Y^@`````QT50_____TB)[_]52.MS9F:0A,!U.?:#E`````AT$TB+ +M?3"+4S1(BW-(Z`````!F9I#'15``````2(M5.$B%TG0%BT4@B0)(B>__54CK +M$\=%4/____](B>__54AF9I!F9I!(@WMX`'0,2(US>$R)Y^@`````2(G>3(GG +MZ`````!FD$B+'"1(BVPD"$R+9"002(/$&,-F9F:09F:09F:09F:02(/L*$B) +M7"0(2(EL)!!,B60D&$R);"0@2(GS28G\1`^V;B0/MT8@9CV%`'<C2(N/.`D` +M``^WP`^VA`=@"```2(T40$B-%)!(B=!(P>`%ZPQ(BX\X"0``N&">`0!(C2P! +M183M=2!FQX7(``````"`>S@<=1&`>SH"=0M(B=Y(B>_H`````$B#>W@`=`Q( +MC7-X3(GGZ`````!(B=Y,B>?H`````$&`_09T/4B-G6`!``!)BWPD*$B)WN@` +M````QX5@`0``@(0>`$C'A7`!````````2(FM>`$``$F+?"0H2(G>Z`````!( +MBUPD"$B+;"003(MD)!A,BVPD($B#Q"C#D$%7059!54%455-(@^P(28G_08G6 +M2(M'4$B+*$&\`````$R-;@Q!#[:$+&`(```\_W12#[;`2(T40$B-%)!(B=-( +MP>,%2(G?2`.].`D``$B!Q]0```"Z"````$R)[N@`````A,!T'DB+A3@)``!$ +MB+0##@$``$B+A3@)``!,B;P#(`$``$F#Q`%)@?R`````=91(@\0(6UU!7$%= +M05Y!7\-!5T%6055!5%532(/L&$B)?"0(2(M.2`^V00+!X`@/ME$#C3P0#[?' +M@\`$#[=6-#G0#X_F````2(U9"`^WQTB-3`$$2(E,)!!)B=U(.=D/AKH```!! +MO@````!F9I!F9I!$B?(/M@N$R0^(A0```(G(@^`//`9U?/9#`\!T!O9#!<!U +M</;!$'0Y@'L$`&9F9I!T84F-;0A!O`````!F9F:0#[93`TB)[DB+?"0(Z``` +M``!(@\4<08/$`40X8P1V-.O?@'L"`'0L28UM!$&\`````$0/MOI$B?I(B>Y( +MBWPD".@`````2(/%'$&#Q`%$.&,"=^(/MD,!28U<!0))B=U!@\8!2#M<)!`/ +M@E+___^^`0```$B+?"0(Z`````!(@\086UU!7$%=05Y!7\-F9F:005=!5D%5 +M05154TB#["A(B70D"$B)?"00#[9&)(A$)"</MTX@9H'YA0`/A_@#```/M\$/ +MMK0'8`@``+C_````0(#^_W1Z9H/Y?W<G0`^VUDB+1"002(N(.`D``$B-!%)( +MC02"2,'@!4B+1`A0#[9`".M-9H'Y@0!W(D`/ML9(BTPD$$B+D8@)``!(:<#( +M#P``2(M$$`@/MD`(ZR1`#[;&2(M,)!!(BY%@"0``2(T$P$C!X`5(BX00B``` +M``^V0`A(F$B+5"001`^VO`+F"```2XT$OTF-!(=(C83"P`$``$B)1"082(N* +M.`D``$`/ML9(C11`2(T4D$B)T$C!X`5(C2P!@'PD)P`/A;,"``!FQX7(```` +M``!(BTPD"(!Y.!P/A9L"```/MD$Z/`)T6CP"=Q$\`0^%AP(``&9F9I!F9I#K +M'CP'="\\"@^%<@(``$B+="0(2(GOZ`````#I8`(``$B+="0(2(GOZ`````!F +M9I#I2P(``$B+="0(2(GOZ`````#I.0(``$B+="0(2(GOZ`````!(C9U@`0`` +M2(M%4$B+`$B+>"A(B=[H`````,>%8`$``("$'@!(QX5P`0```````$B)K7@! +M``!(BT502(L`2(MX*$B)WN@`````QD5*_TN-!+])C02'2(M4)!"`O,+.`0`` +M``^$DP$``$&\`````$N-!+])C02'2,'@`TR-M`(@`@``2(T<$$R-J\`!``!, +MB??H`````$B)Q4B+@R@"``!(B:LH`@``3(EU`$B)10A(B2B`?4K_#X26```` +M@'U)``^%EP```$B)[H"]Z0`````/A%<!```/ME5(2(G0@^`&2(/X!G4G]L(! +M="(/MI6!````2(MU6$B)Z4B+?"08Z`````#I)0$``&9FD&:02(/X!'4;]L(! +M9F9FD&9FD'0/2(M\)!#H`````.G_````2(/X!@^%]0```/;"`6:0#X7J```` +M2(M\)!#H`````.G;````QH7I`````&9F9I!!@\0!00^V10Y$..`/AQ____]! +M.,0/A80```"$P`^$?````$&\`````$N-!+])C02'2,'@`TB+3"003(VL`2`" +M``!(C1P(3(VSP`$``&9FD$R)[^@`````2(G%2(N#*`(``$B)JR@"``!,B6T` +M2(E%"$B)*(!]2O]T&P^V14D\(G0$/`UU#[X*````2(GOZ`````#K.T&#Q`%% +M.&8.=[%+C02_28T$ATB+5"00QH3"R0$``/](BW0D&$B)U^@`````@'PD)P`/ +MA:0```!F9F:02(M,)`A(@WEX`'012(G.2(/&>$B+?"00Z`````!(BW0D"$B+ +M?"00Z`````"`?"0G`'1M#[>%R````(/``6:)A<@```!F@_@*=@YFQX7(```` +M``#IQ?W__[X*````2(GOZ`````#K.4B+1"001`^VN.4)``!+C02_28T$ATB+ +M5"002(V$PL`!``!(B40D&$B+BC@)``"X8)X!`.F?_/__D$B#Q"A;74%<05U! +M7D%?PY!(A?]T2TB%]G1&2(72=$%(A<ET/&9!@?B%`'<T00^WP("\!V`(``#_ +M=";&0CCAQD(Y`<9".A-F1(E"($B)<BA(B8J@````N`$```##9F9FD+@````` +MPV9F9I!F9I!F9I!(BT<(BT`$B04`````B<*!R@``#``E___S_T"$]@]%PDB+ +M5PB)`DB+5PB)0@Q(BU<(B4(02(M7"(E"%$B+5PB)0AA(BU<(B4($PY"0D)"0 +MD$R+5"0@3(M<)#")^&:!_R(G=U]F@?\@)P^#E````&:!_T`A#X2)````9H'_ +M0"%FD'<@9H'_("%T>6:!_R(A9I!T<&:!_U`'=6]F9F:09F:0ZV!F@?]$(719 +M9H'_1"%FD')69BT0)V:#^`%W3&9F9I#K0&:!_X(G=#EF@?^")V:0=Q)F@?\D +M)W0I9H'_@"=FD'4FZQYF@?^`D69F9I!F9I!T$&:!_X"4=`EF@?^`<F:0=0;& +M!A3&`@+&`00/MA9(BT0D&(@09D''`H``9D''`P``0<8!($B+1"0(9L<```$/ +MMA9(BT0D$(@0#[8&9D$#`F9!`P-(BU0D*&:)`F9!B0!!#[<22(M$)#AFB1!! +M#[<2@\(+2(M$)$!FB1##9F9FD%53B?,/MW=H9H7V#X0$`0``3(N7L`D``$&[ +M`````+W_____28L"2(7`#X34````#[=((+C_````08GH9H'YA0`/AXX````/ +MM\%$#[:,!V`(``!%B<A!@/G_='5F@_E_=R-!#[;12(N/.`D``$B-!%)(C02" +M2,'@!4B+1`A01`^V0`CK3&:!^8$`=QY!#[;!2(N7B`D``$AIP,@/``!(BT00 +M"$0/MD`(ZR=!#[;!2(N78`D``$B-!,!(P>`%2(N$$(@```!$#[9`"&9F9I!F +M9I!!#[;!2(N/.`D``$$XV'4C#[?`2(T40$B-%)!(P>(%#[9$"DBH`70+J`1T +M![@!````ZQ=!@\,!28/""&9!.?,/A0[___^X`````%M=PV9FD$B+1U!,BQ!- +MBYK8$```10^W2FBY`````$&X`````.M##[?Q28N"L`D``$B+%/!(A=)T+8M" +M."7___\`/>$!$`!T'@^W1SAF.T(@=11(B?!(P>`&9D8Y1!@(=`YF9I!FD(/! +M`69$.<ERMV9$.<ET$T&#P`%F08/X'W<(N0````"0Z^%!#[?`PV9FD&9FD&9F +MD$B+1U!(A<!T&L8`<$B+1U!`B'`"2(M'4,9`!P!(BT=0B%`,\\-F9F:09F9F +MD&9FD//#9F9FD&9F9I!F9I!F9I!!B?%,B<J!XO\!``!(BX>P"0``3(L$T$V% +MP'0K#[:W[@```$$/MD`EB?'3X`^W^$$/M]&X__\``-/@(<(YU[@`````3`]% +MP$R)P,-F9I!FD+@`````Q@0X`$B#P`%(/2`!``!U\,9'1/_&1U#_2(U'*$B) +M1RA(B4<PPV9FD&9FD+@`````Q@0X`$B#P`%(/:`!``!U\,:'@````/_&1W+_ +MQH>"````'TB-1R!(B4<@2(E'*,-F9F:09F9FD&9F9I!(BP9(BY<P`0``2(F' +M,`$``$B!QR@!``!(B3A(B5`(2(D"2,<&`````,-F9I!F9I!(BY<@`0``2(FW +M(`$``$B-AQ@!``!(B09(B58(2(DR2(-^<`!T"4B#QG#H`````//#9F9FD&9F +M9I!F9F:09F:02(L&2(N74`$``$B)AU`!``!(@<=(`0``2(DX2(E0"$B)`DC' +M!@````##9F:09F:02(L&2(N70`$``$B)AT`!``!(@<<X`0``2(DX2(E0"$B) +M`DC'!@````##9F:09F:02(N'<`$``$B)MW`!``!(@<=H`0``2(D^2(E&"$B) +M,,-(BP9(BY>``0``2(F'@`$``$B!QW@!``!(B3A(B5`(2(D"2,<&`````,-F +M9I!F9I!(BP9(BY=@`0``2(F'8`$``$B!QU@!``!(B3A(B5`(2(D"2,<&```` +M`,-F9I!F9I!`@/\7=Q%`#[;'_R3%`````+@T````P[@$````9F9FD,.X/``` +M`,.X%````&9F9I##N$````##N!P```!F9F:0P[@8````P[@H````9F9FD,.X +M(````,.X3````&9F9I##9F9FD&9F9I!F9F:09F:0#[962$B)T(/@!DB#^`9U +M$/;"`0^$VP```&9F9I!F9I"`?G+_#X7*````2(L'1(N(&`$``$2)#0````"Y +M`````+@!````08G`0=/@187!=3.(3G)(BQ=$B<!$"<B)@A@!``!(BP>+@%@! +M``")!0````!$B<(APG1X2(L'B9!8`0``ZVV#P0&#^2!UM4B+!T2+B!P!``!$ +MB0T`````L0!FD(G*N`$```!!B<!!T^!%A<%U-HU"((A&<DB+%T2)P$0)R(F" +M'`$``$B+!XN`8`$``(D%`````$2)PB'"=!-(BP>)D&`!``#K"(/!`8/Y('6P +M@$=$`?/#9F9FD&9FD&9FD(!^4/\/A<4```!(BP=$BX@8`0``1(D-`````+D` +M````N`$```!!B<!!T^!%A<%U,XA.4$B+%T2)P$0)R(F"&`$``$B+!XN`6`$` +M`(D%`````$2)PB'"='-(BP>)D%@!``#K:(/!`8/Y('6U2(L'1(N('`$``$2) +M#0````"Q`&:0N`$```!!B<!!T^!%A<%U,XA.4$B+%T2)P$0)R(F"'`$``$B+ +M!XN`8`$``(D%`````$2)PB'"=!-(BP>)D&`!``#K"(/!`8/Y('6U@$=$`?/# +M9F9FD&9F9I!F9F:09F:02(MW0$B%]G0YN0````!FD$B+1,Y82(7`=`@XD($` +M``!T#$B#P0%(@_D%=!;KXF:!?D"%`'<,2(7`9F9FD&9FD'4%N`````#SPV9F +M9I!F9I!!54%455-(B?U)B<W!Y@@/MM(!UH!_,``/A-4```!(@W]0``^$R@`` +M`(N'E````*@)00^4P+D`````2,?'`````$&)S`^W%,^)\"'09CG"#X60```` +M#[8$S0`````\`W0$/`=U"T0X!,T`````=7:0QD4D($UCY$C'PP````!"#[94 +MXP8/MO!(B>_H`````$B+55!"#[9$XP>(0@U-A>UT-$F+30!(B<I(P>H@2(M% +M4(E0`TB+15"`"(#VA98````$=!*%TG0.2(M%4(E("$B+15"`('](BU50#[9% +M,(/H!XA"!^L.2(/!`4B#^1`/A4[___];74%<05W#9F:09F:02(/L"$B-EU@! +M``"X`````$@YEU@!``!T$$B)U^@`````2,=`(`````!(@\0(PV:02(/L"$B- +MEW@!``"X`````$@YEW@!``!T"$B)U^@`````2(/$",-F9F:09F:09F:02(/L +M"$B-EV@!``"X`````$@YEV@!``!T*$B)U^@`````2(G!N@````!F9F:09F:0 +MQ@0*`$B#P@%(@?J@````=>](@\0(PV9F9I!F9I!F9I!(@^P(2(V7.`$``+@` +M````2#F7.`$``'0(2(G7Z`````!(@\0(PV9F9I!F9I!F9I!(@^P(2(V7*`$` +M`+@`````2#F7*`$``'0,2(G7Z`````#&0!``2(/$",-F9I!F9I!!5T%6055! +M5%532(/L"$F)_T&)]<=$)`0`````0;X`````0P^VA#[@"```//\/A!T!```/ +MMM!!C8:`````9CV!`'=]#[?"2&G`R`\``$B)PTD#GX@)``"`>U@`=%.]```` +M`$R-8TA,B>?H`````$B-2/!(BU-02(E#4$R)81!(B5$82(D"BT%()0#__P`] +M``#_`'43]D%+!'0-2(M!0$B%P'0$1(AH`8/%`4`X:UAWMD2(J\(```!!@\4! +MZ9`````/M\)(C03`2,'@!4B)QDD#MV`)``"`?CL`=#VY``````^VP4B+5,98 +M2(72=".+0D@E`/__`#T``/\`=13V0DL$=`Y(BT)`2(7`=`5$B&@!D(/!`3A. +M.W?(1(BN%`$``("^%0$```-U'X-$)`0!BT0D!(/``X/X!G8708/%`<=$)`0` +M````ZPE!@\4!9F:09I!)@\8!28/^!@^%Q/[__TF+A_`(``!,.?AU#TB-N(@4 +M``!$B>[HA_[__TB#Q`A;74%<05U!7D%?PV9F9I!F9F:02(/L"`^V1@@/MK0' +MY@@``,:$!^8(``#_#[?V2(''@!```.@`````2(/$",-F9F:02(M6<$B%TG08 +M2(M"&$B)1CA(BT(@2(E&0$B+0BA(B49(\\-F9F:09F:09F:09F:02(M6<$B% +MTG0<2(M&.$B)0AA(BT9`2(E"($B+1DA(B4(HQD(0`?/#9F:09F:09F:00515 +M4TF)_$B+'V:#>V@`#X3,````O0````!F9I!F9I`/M]5(BX.P"0``2(L\T$B% +M_P^$G0````^W3R!F@?F%`'=^#[?!#[:$`V`(```\_W1O9H/Y?W<A#[;02(N+ +M.`D``$B-!%)(C02"2,'@!4B+1`A0#[90".M-9H'Y@0!W'`^VP$B+DX@)``!( +M:<#(#P``2(M$$`@/ME`(ZRH/ML!(BY-@"0``2(T$P$C!X`5(BX00B`````^V +M4`CK"F9FD&:0NO\```!!#[9$)`@YPG4%Z`````"#Q0%F.6MH#X<_____6UU! +M7,-F9F:09F:09F:02(/L&$B)7"0(2(EL)!!(B?M(B?4/MD90//]T$P^V\$B+ +M/^@`````QD50_X!K1`%(BUPD"$B+;"002(/$&,-FD$B#[!A(B5PD"$B);"00 +M2(G[2(GU#[9&<CS_=!,/MO!(BS_H`````,9%<O^`:T0!2(M<)`A(BVPD$$B# +MQ!C#9I!54TB#[`A(B?U(B?-(.7XH#X3;````@'XD``^%IP````^V1C@\%70( +M/%4/A9<```!(BT-P2(7`#X2*````2(G!@'@0`0^%?0```&:!>!CA`75U2(NU +M.`D```^W0R"Z8)X!`&8]A0!W%P^WP`^VA`5@"```2(T40$B-%)!(P>(%2(T$ +M%@^V21J`^0=T'8#Y!W<'@/D&=3'K&H#Y#&9FD&:0=""`^0UU(.L09H-@:OUF +MD.L59H-(:@+K#F:#8&KW9I#K!6:#2&H(2(-[>`!T(X%[-``(``!W#DB-<WA( +MB>_H`````.L,2(US>$B)[^@`````9H%[..$!#X4G`0``#[=#(&8]A0`/AXL` +M```/M\`/MH0%8`@``#S_#X1X````2(N-.`D``(![)`!U:P^VP$B-%$!(C120 +M2,'B!4B-!!$/ME,Z@/H'=!V`^@=W!X#Z!G4VZQ^`^@QT*H#Z#69FD&:0=27K +M%6:#8&K]9F9FD&9FD.L59H-(:@+K#F:#8&KW9I#K!6:#2&H(9H%[..$!9F:0 +M#X6.````@'LZ"P^%A`````^W<R`/MD5&C7C_B?+K&Y"#P@%F@?J%`'<0#[?* +M2&/!@+P%8`@``/]U"0^WPCGX?-_K36:!^?\`=2)F9I!F9I#K/H/&`6:!_H4` +M=Q`/M]9(8\*`O`5@"```_W4,#[?&.<=_W[K_````9HE3(,9#)(!(B=Y(B>_H +M`````.DB`0``QD,D`$@Y:RAT)DB+0W!(A<!T'8!X$`%U"TB)WDB)[^@````` +M2(US<$B)[^@`````2(.[@`````!T#TB-LX````!(B>_H`````$B+>RA(B=[_ +MDZ`````/MU,X9H'ZX0%U5P^V0SJ#Z!$\`7=,#[=#(&8]A0`/AZ@````/M\`/ +MMH0%8`@``#S_#X25````#[;`2(T$P$C!X`5(B<9(`[5@"0``@'Y%`'5Z@'Y0 +M_W1T2(GOZ`````#K:@^W0R!F/84`=V`/M\`/MHP%8`@``$B+M3@)``"+0S@E +M____`#WA`1``=#^!^?\```!T-V:!^N$!=0X/MD,Z@^@1/`%V)69FD(G(2(T4 +M0$B-%)!(P>(%2`'6@+Z#`````'4(2(GOZ`````!(@\0(6UW#9F9FD&9FD%53 +M2(/L"$B)_4B)\P^W3B!F@?F%``^'I@````^WP0^VM`=@"```0(#^_P^$D0`` +M`&:#^7]W(D`/MM9(BX\X"0``2(T$4DB-!()(P>`%2(M$"%`/MD`(ZTAF@?F! +M`'<=0`^VQDB+EX@)``!(:<#(#P``2(M$$`@/MD`(ZR1`#[;&2(N78`D``$B- +M!,!(P>`%2(N$$(@````/MD`(9F:09I!F/?\`=!L/M\`/MKP%Y@@``$"`__]T +M"D`/ML9F/?\`=1!(B=Y(B>_H`````.F!````#[93.P^V0SP/MDL]@/D!=`6` +M^0AU8$B+2VC!X`@/MM(!T"7_`0``2(N5L`D``$@Y#,)U0@^W23*)RF;!Z@6! +MXO\'``"#X1^X`0```$C3X/?0(425;$B+0V@/MW`R0`^VQTB-/(!(C3RX2(V\ +M_<`!``#H`````$B)WDB)[^@`````2(/$"%M=PV9F9I!F9I!(@^P82(E<)`A( +MB6PD$$B)^TB-OQ@!``"]`````$@YNQ@!``!T'.@`````2(G%2(G'Z`````!( +MB=_H`````$B)17!(B>A(BUPD"$B+;"002(/$&,-F9F:09F9FD&9F9I!(@^P8 +M2(D<)$B);"0(3(ED)!!(B?U(BT=03(L@3(GGZ`````!(B<-(A<!T<$R)Y^@` +M````2(G"2(7`=13&A>D````!2(G>3(GGZ`````#K3,9#.``/MT4X9HE#(,:# +MF`````],B6,HQT,T`````$C'0T@`````2(M"$$B)0U#&0S`D2(E3>$C'@Z`` +M````````2(G>3(GGZ`````!(BQPD2(ML)`A,BV0D$$B#Q!C#D$B#[!A(B1PD +M2(EL)`A,B60D$$B)_4&)]$B+1U!(BQA(B=_H`````$B)PDB%P'1$QD`X&\9` +M.0%$B&`\#[=%.&:)0B#&@I@````/2(E:*,="-`````!(QT)(`````$C'@J`` +M````````2(G62(G?Z`````!(BQPD2(ML)`A,BV0D$$B#Q!C#9F9FD&9FD&9F +MD$B#[#A(B5PD"$B);"003(ED)!A,B6PD($R)="0H3(E\)#!)B?])B?5,BS=, +MB??H`````$B)Q4B%P`^$C@```$R)]^@`````28G$2(7`=1%(B>Y,B??H```` +M`.MQ9F9FD$B-75C&13CAQD4Y`<9%.@Y!#[=%.&:)12!F08-E:/=)BP=(B44H +MQT4T``@``$F+1"002(E%2$R)97A(QX6@`````````+X`````2(G?Z`````"+ +M531)BW0D&$B)W^@`````2(GN3(GWZ`````!(BUPD"$B+;"003(MD)!A,BVPD +M($R+="0H3(M\)#!(@\0XPTB#["A(B5PD"$B);"003(ED)!A,B6PD($F)](G5 +M2(L?2(G?Z`````!(B<)(A<!T7\9`..'&0#D!0(AH.L9`.P]!#[=$)#AFB4(@ +M2(E:*,="-`````!(QT)(`````$C'@J``````````2(G62(G?Z`````!`@/T! +M=0R_!0```.@`````ZPJ_4,,``.@`````2(M<)`A(BVPD$$R+9"083(ML)"!( +M@\0HPV9F9I!F9F:055-(@^P(2(G]2(GS#[=.(&:!^84`#X>G````#[?!#[:T +M!V`(``!`@/[_#X22````9H/Y?W<B0`^VUDB+CS@)``!(C0122(T$@DC!X`5( +MBT0(4`^V0`CK2&:!^8$`=QU`#[;&2(N7B`D``$AIP,@/``!(BT00"`^V0`CK +M)$`/ML9(BY=@"0``2(T$P$C!X`5(BX00B`````^V0`AF9I!FD#S_=!X/ML`/ +MMHP%Y@@``(#Y_W0.0(#^_W0(#[9#)#P&=3Y(@WMX`'0E@7LT``@``'<02(US +M>$B)[^@`````9I#K#$B-<WA(B>_H`````$B)WDB)[^@`````ZWQF9I!FD$B+ +ME3@)``"$P'0U0`^VQDB--$!(C32P2,'F!4B--#(/ML%(C3R`2(T\N$B-O/W` +M`0``N@$```#H`````&9F9I!(@WMX`'0E@7LT``@``'<02(US>$B)[^@````` +MZPYFD$B-<WA(B>_H`````$B)WDB)[^@`````2(/$"%M=PV:02(/L*$B)'"1( +MB6PD"$R)9"003(EL)!A,B70D($B)^TB)]0^W3B!F@?F%``^''P$```^WP0^V +MM`=@"```0(#^_P^$"@$``&:#^7]W)$`/MM9(BX\X"0``2(T$4DB-!()(P>`% +M2(M$"%`/MD`(ZT5FD&:!^8$`=QU`#[;&2(N7B`D``$AIP,@/``!(BT00"`^V +M0`CK'T`/ML9(BY=@"0``2(T$P$C!X`5(BX00B`````^V0`@\_P^$E0```$0/ +MMN8/ML!$#[:L`^8(``!!@/W_=']F08'\_P!T=X!])`9T<4R+LS@)``"`?3H! +M=4F_"@```.@`````2(GN2(G?Z`````!!#[?$2(TT0$B--+!(P>8%28TT-D$/ +MML5(C3R`2(T\N$B-O/O``0``N@(```#H`````.L;O_0!``#H`````$B)[DB) +MW^@`````9F:09F:02(L<)$B+;"0(3(MD)!!,BVPD&$R+="0@2(/$*,-F9I!( +M@^P82(D<)$B);"0(3(ED)!!)B?Q(BT=02(LH2(GOZ`````!(B<-(A<!U"T'& +MA"3I`````>M?QD`X%<9`):M!#[=$)#AFB4,@2(EK*$&X`0```+D!````2(G: +M3(GF2(GOZ`````"$P'462(G>2(GOZ`````!!QH0DZ0````'K%DC'@Z`````` +M````2(G>2(GOZ`````!(BQPD2(ML)`A,BV0D$$B#Q!C#9F9FD&9FD$B#["A( +MB5PD"$B);"003(ED)!A,B6PD($B)^TB+1U!,BRA,B>_H`````$B)Q4B%P'4. +MQH/I`````>FV````9I!,B>_H`````$F)Q$B%P'47QH/I`````4B)[DR)[^@` +M````Z8T```#&13@:QD4Y",9%.@C&13L`QD4\_\9%/0#&126K#[=#.&:)12!, +MB6THQT4T_P```,>%E`````@```!)BT0D$$B)14A(!?\```!(B450QD4P)$R) +M97A(QX6@`````````$B-75B^`````$B)W^@`````28MT)!BZ_P```$B)W^@` +M````2(GN3(GOZ`````!(BUPD"$B+;"003(MD)!A,BVPD($B#Q"C#9F:02(/L +M.$B)7"0(2(EL)!!,B60D&$R);"0@3(ET)"A,B7PD,$F)_$&)]DB+1U!,BRA, +MB>_H`````$B)PTB%P'410<:$).D````!Z;H```!F9I!,B>_H`````$B)Q4B% +MP'4@0<:$).D````!2(G>3(GOZ`````#IC@```&9F9I!F9I!,C7M8QD,X$D6$ +M]G03QD,Y`<9#.H#&0SQ`ZPEF9I!FD,9#/"3&0R6K00^W1"0X9HE#($R):RC' +M0S1@````QX.4````"````$B+11!(B4-(2(EK>$C'@Z``````````O@````!, +MB?_H`````$B+=1BZ8````$R)_^@`````2(G>3(GOZ`````!(BUPD"$B+;"00 +M3(MD)!A,BVPD($R+="0H3(M\)#!(@\0XPV9FD&9FD$B#["A(B1PD2(EL)`A, +MB60D$$R);"083(ET)"!)B?Q(BT=03(LP3(GWZ`````!(B<5(A<!U#D'&A"3I +M`````>FR````3(GWZ`````!)B<5(A<!U'$'&A"3I`````4B)[DR)]^@````` +MZ8D```!F9I!(C5U8QD4XGL9%.1#&144@QD4EJT$/MT0D.&:)12!,B74HQT4T +M(````,>%E`````@```!)BT402(E%2$R);7A(@\`@2(E%4,9%,"1(QX6@```` +M`````,:%F`````^^`````$B)W^@`````28MU&+H@````2(G?Z`````!(B>Y, +MB??H`````$B+'"1(BVPD"$R+9"003(ML)!A,BW0D($B#Q"C#9F9FD&9FD&9F +MD&9FD$B#["A(B1PD2(EL)`A,B60D$$R);"083(ET)"!)B?Q(BT=03(LP3(GW +MZ`````!(B<5(A<!U#D'&A"3I`````>FC````3(GWZ`````!)B<5(A<!U'$'& +MA"3I`````4B)[DR)]^@`````ZWUF9I!F9I!(C5U8QD4X)<9%):M!#[=$)#AF +MB44@3(EU*,=%-`@```#'A90````(````28M%$$B)14A(@\`(2(E%4,9%,"1, +MB6UX2,>%H`````````"^`````$B)W^@`````28MU&+H(````2(G?Z`````!( +MB>Y,B??H`````$B+'"1(BVPD"$R+9"003(ML)!A,BW0D($B#Q"C#9F9FD&9F +M9I!F9F:02(/L.$B)7"0(2(EL)!!,B60D&$R);"0@3(ET)"A,B7PD,$F)_TF) +M](E4)`1(BR],B[4X"0``#[=&($0/MJP%8`@``$B)[^@`````2(G#00^W="0R +MB?!FP>@%#[?`BT2%;(GQ@^$?2-/XJ`$/A<(```!(A=L/A+D```!!#[;%2(T4 +M0$B-%)!(P>(%28T4%D$/MD0D)0^VC>X```#3X`GPQD,XX<9#.0'&0SH/B$,[ +M9L'H"(A#/`^V1"0$B$,]2(N"W````$B)0SY,B6-HQD,EJ@^W0CAFB4,@28L' +M2(E#*,=#-`````!(QT-(`````$C'@Z``````````2(U[6+X`````Z`````!( +MB=Y(B>_H`````$$/MTPD,HG*9L'J!8'B_P<``(/A'[@!````2-/@"425;$B+ +M7"0(2(ML)!!,BV0D&$R+;"0@3(MT)"A,BWPD,$B#Q#C#9F9FD&9FD&9FD$%7 +M059!54%455-(@^P(28G^28G508GW2(L?9H-[:``/A`X"``"]`````$&\____ +M_P^WU4B+@[`)``!(BS302(7V#X3?`0``1(M&.$&!X/___P!!@?CA`1``#X6A +M````387M#X6^`0``#[=.(&:!^84`=WD/M\$/MH0#8`@``#S_=&IF@_E_=R$/ +MMM!(BXLX"0``2(T$4DB-!()(P>`%2(M$"%`/MD@(ZT9F@?F!`'<<#[;`2(N3 +MB`D``$AIP,@/``!(BT00"`^V2`CK(P^VP$B+DV`)``!(C03`2,'@!4B+A!"( +M````#[9(".L#1(GAN@````#IOP```&9F9I!F9I`/MTX@9H'YA0`/AZ$````/ +MM\$/MKP#8`@``$"`__\/A(P```!F@_E_=R)`#[;72(N+.`D``$B-!%)(C02" +M2,'@!4B+1`A0#[9(".M$9H'Y@0!W'4`/ML=(BY.("0``2&G`R`\``$B+1!`( +M#[9(".L@0`^VQTB+DV`)``!(C03`2,'@!4B+A!"(````#[9(")!`#[;'2(T4 +M0$B-%)!(P>(%2`.3.`D``.L/9F9FD&9FD$2)X;H`````03A."'5H387M=`M! +M#[=%.&8[1B!U6$&`_P9T0T&!^.$!$`!T.@^V2DA(B<B#X`9(@_@&=2KVP0%U +M)8"ZZ`````!U'$&!^.$!#P!T(D2(?B2Z`0```$R)]^@`````ZP]$B'XD#[?U +M3(GWZ`````"#Q0%F.6MH#X?]_?__08#_@0^$5P$``$B+@_@```!(C:OX```` +M2#G%#X1``0``N@````!F9F:09F:0@\(!2(L`2#G%=?5FA=(/A"`!``!$C6+_ +M2(GOZ`````!(B<9-A>UT*$$/MT4X9CM&('0=2(N#``$``$B)LP`!``!(B2Y( +MB48(2(DPZ<@````/MTX@9H'YA0!W>0^WP0^VA`-@"```//]T:F:#^7]W(0^V +MT$B+BS@)``!(C0122(T$@DC!X`5(BT0(4`^V0`CK2&:!^8$`=QP/ML!(BY.( +M"0``2&G`R`\``$B+1!`(#[9`".LE#[;`2(N38`D``$B-!,!(P>`%2(N$$(@` +M```/MD`(ZP6X_____T$Z1@AU(8M&."7___\`/>$!#P!T$D2(?B1(B=_H```` +M`.L<9F9FD$B+@P`!``!(B;,``0``2(DN2(E&"$B),$&-1"3_9D6%Y'012#NK +M^````'0(08G$Z>3^__](@\0(6UU!7$%=05Y!7\-F9F:09F:09F:09F:02(/L +M.$B)7"0(2(EL)!!,B60D&$R);"0@3(ET)"A,B7PD,$F)_$F)]DF)S4&)UTB+ +M+TB)[^@`````2(G#2(7`=0]!QH7I`````>F+````9I!(B>_H`````$B)PDB% +MP'452(G>2(GOZ`````!!QH7I`````>MDQD,XX<9#.0'&0SH01(A[)4$/MD9; +M9HE#($F+!"1(B4,HQT,TD````$B-0A!(B4-(2(E3>,9``1+&0A!`1(AX"4C' +M@Z``````````2(U[6+X`````Z`````!(B=Y(B>_H`````$B+7"0(2(ML)!!, +MBV0D&$R+;"0@3(MT)"A,BWPD,$B#Q#C#9F9FD$B#[#A(B5PD"$B);"003(ED +M)!A,B6PD($R)="0H3(E\)#!)B?Q)B?5!B=9!B<](BR](B>_H`````$B)PTB% +MP`^$@@```$B)[^@`````2(G"2(7`='+&0SCAQD,Y`<9#.A!$B',E00^V15MF +MB4,@28L$)$B)0RC'0S20````2(U"$$B)0TA(B5-XQD`!D<9"$$!$B'`)1(AX +M"DC'@Z``````````2(U[6+X`````Z`````!(B=Y(B>_H`````+^@A@$`Z``` +M``!(BUPD"$B+;"003(MD)!A,BVPD($R+="0H3(M\)#!(@\0XPV9FD&9FD$B# +M["A(B1PD2(EL)`A,B60D$$R);"083(ET)"!)B?Q)B?5!B=9(BR](B>_H```` +M`$B)PTB%P'1T2(GOZ`````!(B<)(A<!T9,9#..'&0SD!QD,Z$,9#);M!#[9% +M6V:)0R!)BP0D2(E#*,=#-)````!(C4(02(E#2$B)4WC&0`$0QD(00$2(<`E( +MQX.@`````````$B->UB^`````.@`````2(G>2(GOZ`````!(BQPD2(ML)`A, +MBV0D$$R+;"083(MT)"!(@\0HPV9F9I!F9I!(@^PH2(E<)`A(B6PD$$R)9"08 +M3(EL)"!)B?Q)B?5(BR](B>_H`````$B)PTB%P'1P2(GOZ`````!(B<)(A<!T +M8,9#..'&0SD!QD,Z$,9#);M!#[9%6V:)0R!)BP0D2(E#*,=#-)````!(C4(0 +M2(E#2$B)4WC&0`$`QD(00$C'@Z``````````2(U[6+X`````Z`````!(B=Y( +MB>_H`````$B+7"0(2(ML)!!,BV0D&$R+;"0@2(/$*,-F9I!F9I!54TB#[`A( +MB?U(C9^`$```2(G?Z`````"$P`^%X````$B)W^@`````B<&X`````(G&@+PH +MY@@``/]U"CA%3',2B$5,ZPV#Q@%(@\`!2(/X!'7=0(#^!`^$I````$`/ML:( +MC`7F"```#[?Y2(T$OTB-!(=(C93%P`$``+@`````D,8$$`!(@\`!2#VH```` +M=?`/M\%(C12`2(T4D$C!X@-(C8P5\`$``$B-!"I(B8CP`0``2(F(^`$``$B- +MC!4(`@``2(F("`(``$B)B!`"``!(C905(`(``$B)D"`"``!(B9`H`@``0(BP +MR`$``$B-!+](C02'2(V$Q<`!``#K!V:0N`````!(@\0(6UW#9F9FD$B#[!A( +MB1PD2(EL)`A,B60D$$B)_4B-G]@/``!(B=_H`````(3`#X4Y`0``2(G?Z``` +M``")PK@`````9F:09I")PX"\*&`(``#_=14/ML!F.87L````<QAFB87L```` +MZP^#PP%(@\`!2#V`````=="`^X`/A.P````/ML.(E`5@"```#[?"2(T40$B- +M%)!)B=1)P>0%3(GG2`.].`D``.@`````2(N5.`D```^VPV9!B404.$B+A3@) M``!!QD0$2@!(BX4X"0``0<9$!&W_2(N%.`D``$'&1`1L_TB+A3@)``!!QD0$ M;O](BX4X"0``0<9$!'#_2(N%.`D``$'&1`1O_TB+A3@)``!!QD0$<?](BX4X M"0``0<:$!.H`````2(N%.`D``$'&A`0/`0``_TB)[^@`````2(N5.`D``$F) -MA!0H`0``@'U1`74-2(N%.`D``$&`3`1,`4R)X$@#A3@)``#K"&9FD+@````` -M2(L<)$B+;"0(3(MD)!!(@\08PV9F9I!F9F:04TB)^^BWX?__2(N[\`@``.@` -M````6\-F9I!F9I!F9I!(@^P82(D<)$B);"0(3(ED)!!(B?U(C9\0$```2(G? -MZ`````"$P`^%Y@```$B)W^@`````B<)(B>B[@O___V:0@+CB"```_W47.)WP -M````<R&(G?````#K&69F9I!F9I"#PP%(@\`!@/N+````Z\Z`^X8/A)<` -M```/ML.(E`5@"```#[?"2(T$P$F)Q$G!Y`5,B>=(`[U@"0``Z`````!(BY5@ -M"0``#[;#9D&)1!1`@'U1`74/2(N%8`D``&9!QT0$3/__2(N%8`D``$'&1`1" -M`$B+A6`)``!F0<=$!$X``$B+A6`)``!F0<>$!``!`````$B+O?`(``"^```` -M`.@`````3(G@2`.%8`D``.L%N`````!(BQPD2(ML)`A,BV0D$$B#Q!C#9F:0 -M9F:055-(@^P(2(G]#[=&0`^VG`=@"```QH0'8`@``/\/M_-(C;\0$```Z``` -M```/M]M(C1S;2,'C!4B)WD@#M6`)``"`?E#_=`A(B>_H`````$B+O?`(``"^ -M`````.@`````2(/$"%M=PV9FD&9FD&9FD%-(B?L/MD9;#[:T!V`(``#&A`=@ -M"```_P^W]DB-OT@0``#H`````$B+N_`(``"^`````.@`````6\-F9I!F9I!3 -M2(GS@'Y$_W042(VVD````$B+?RCH`````,9#1/];PU-(B?.`OH````#_=!=( -MC;8P`0``2(M_*.@`````QH.`````_UO#9F9FD&9FD&9FD$B#["A(B5PD"$B) -M;"003(ED)!A,B6PD($B)^TB)]0^W1CA$#[:L!V`(``!!#[?%3&G@F`$``$R) -MYD@#MS@)``!(@<8H`0``Z``````/MU4X2(N$TV`$``!(A<!T%DB#N(`````` -M=0Q(QX338`0````````/MT4XQH0#8`@``/]!#[?U2(V[V`\``.@`````3(GF -M2`.S.`D``(!^<O]T"$B)W^@`````2(GN2(G?Z`````!(BX,X"0``0<9$!$H` -M2(N#.`D``$'&1`1+`4B+7"0(2(ML)!!,BV0D&$R+;"0@2(/$*,-F9F:09F9F -MD&9FD$B#["A(B5PD"$B);"003(ED)!A,B6PD($F)_4B)\V:!?CCA`0^%S@`` -M``^V1CJ#Z!$\`0^'OP````^W1B!F/84`#X>``0``#[?`#[:$!V`(``!(BY=@ -M"0``//\/A&8!```/ML!(C03`2,'@!4B-+`*`;44!3(UE*$R)Y^@`````2(G" -M2#G8=4I(B>Y,B>_H`````$P[92@/A"H!``#'A9``````$GH`2,>%H``````` -M``!(B:VH````2(VUD````$F+?2CH`````,9%1`#I]0```$B+12A(B5`(2(D" -M3(EB"$B)52A(BQ-(BT,(2(E""$B)$.G/````#[=#(&8]A0`/A\$````/M\!! -M#[:4!6`(``!)BXTX"0``BT,X)?___P`]X0$0``^$FP```('Z_P````^$CP`` -M`(G02&G`F`$``$B-+`&`K8,````!3(UE($R)Y^@`````2(G"2#G8=49(B>Y, -MB>_H`````$P[92!T5L>%,`$````2>@!(QX5``0```````$B)K4@!``!(C;4P -M`0``28M]*.@`````QH6``````.LA2(M%($B)4`A(B0),B6((2(E5($B+$TB+ -M0PA(B4((2(D02(M<)`A(BVPD$$R+9"083(ML)"!(@\0HPU532(/L"$B)^TB) -M]0^W?C*)^F;!Z@4/M_>)\8/A'[@!````2-/@B<'WT8'B_P<``"%,DVQF@?__ -M#W1$#[?'2,'@`T@#@[`)``!(@S@`=#!(QP``````(8R3N`D``$B-NZ`/``#H -M`````$B)[DB)W^@`````2(GN2(G?Z`````!(@\0(6UW#9F9FD&9FD&9FD%53 -M2(/L"$B)]6:!?CCA`0^%K`````^V1CJ#Z!$\`0^'G0````^W1B"Z_P```&8] -MA0!W"P^WP`^VE`=@"```B=!(C03`2,'@!4B)PT@#GV`)``"`>T3_=4D/MI68 -M````C002A-*Z"`````]$P@^VP&G`0$(/`(F#D````$C'@Z``````````2(F; -MJ````$B-LY````!(BW\HZ`````#&0T0`2(M3,$B):S!(C4,H2(E%`$B)50A( -MB2J`0T4!Z;0````/MT4@N?\```!F/84`=PL/M\`/MHP'8`@``$B+ES@)``"+ -M13@E____`#WA`1``#X2`````B<A(:<"8`0``2(T<`H"[@````/]U3`^VE9@` -M``"-!!*$TKH(````#T3"#[;`:<!`0@\`B8,P`0``2,>#0`$```````!(B9M( -M`0``2(VS,`$``$B+?RCH`````,:#@`````!(BU,H2(EK*$B-0R!(B44`2(E5 -M"$B)*H"#@P````%(@\0(6UW#9F9FD$%7059!54%455-(@^PH28G^2(ET)`@/ -MMU8@9H'ZA0`/AP4#```/M\(/MK0'8`@``(GP0(#^_W1F9H/Z?W<=0`^VQDB+ -MES@)``!(:<"8`0``2(M$$%`/MD`(ZT-F@?J!`'<=0`^VQDB+EX@)``!(:<#( +MA!0H`0``@'U1`74-2(N%.`D``$&`3`1,`4R)X$@#A3@)``#K!;@`````2(L< +M)$B+;"0(3(MD)!!(@\08PV9FD%-(B?OH1^'__TB+N_`(``#H`````%O#9F:0 +M9F:09F:02(/L&$B)'"1(B6PD"$R)9"002(G]2(V?$!```$B)W^@`````A,`/ +MA>8```!(B=_H`````(G"2(GHNX+___]FD("XX@@``/]U%SB=\````',AB)WP +M````ZQEF9F:09F:0@\,!2(/``8#[A@^$H@```.O.@/N'````#[;#B)0% +M8`@```^WPDB-!,!)B<1)P>0%3(GG2`.]8`D``.@`````2(N58`D```^VPV9! +MB4040(!]40%U#TB+A6`)``!F0<=$!$S__TB+A6`)``!!QD0$0@!(BX5@"0`` +M9D''1`1.``!(BX5@"0``9D''A`0``0````!(B[WP"```O@````#H`````$R) +MX$@#A6`)``#K!;@`````2(L<)$B+;"0(3(MD)!!(@\08PV9FD&9FD%532(/L +M"$B)_0^W1D`/MIP'8`@``,:$!V`(``#_#[?S2(V_$!```.@`````#[?;2(T< +MVTC!XP5(B=Y(`[5@"0``@'Y0_W0(2(GOZ`````!(B[WP"```O@````#H```` +M`$B#Q`A;7<-F9I!F9I!F9I!32(G[#[9&6P^VM`=@"```QH0'8`@``/\/M_9( +MC;]($```Z`````!(B[OP"```O@````#H`````%O#9F:09F:04TB)\X!^1/]T +M%$B-MI````!(BW\HZ`````#&0T3_6\-32(GS@+Z`````_W072(VV,`$``$B+ +M?RCH`````,:#@````/];PV9F9I!F9I!F9I!(@^PH2(E<)`A(B6PD$$R)9"08 +M3(EL)"!(B?M)B?0/MT8X1`^VK`=@"```00^WQ4B-%$!(C1202(G52,'E!4B) +M[D@#MS@)``!(@<8H`0``Z`````!!#[=4)#A(BX338`0``$B%P'092(.X@``` +M``!U#TC'A--@!````````&9FD$$/MT0D.,:$`V`(``#_00^W]4B-N]@/``#H +M`````$B)[D@#LS@)``"`?G+_=`A(B=_H`````$R)YDB)W^@`````2(N#.`D` +M`,9$!4H`2(N#.`D``,9$!4L!2(M<)`A(BVPD$$R+9"083(ML)"!(@\0HPV9F +M9I!F9F:09F:09F:02(/L*$B)7"0(2(EL)!!,B60D&$R);"0@28G]2(GS9H%^ +M..$!#X7.````#[9&.H/H$3P!#X>_````#[=&(&8]A0`/AXH!```/M\`/MH0' +M8`@``$B+EV`)```\_P^$<`$```^VP$B-!,!(P>`%2(TL`H!M10%,C64H3(GG +MZ`````!(B<)(.=AU2DB)[DR)[^@`````3#ME*`^$-`$``,>%D``````2>@!( +MQX6@`````````$B)K:@```!(C;60````28M]*.@`````QD5$`.G_````2(M% +M*$B)4`A(B0),B6((2(E5*$B+$TB+0PA(B4((2(D0Z=D````/MT,@9CV%``^' +MRP````^WP$$/MI0%8`@``$F+C3@)``"+0S@E____`#WA`1``#X2E````@?K_ +M````#X29````B=!(C11`2(T4D$C!X@5(C2P1@*V#`````4R-92!,B>?H```` +M`$B)PD@YV'5+2(GN3(GOZ`````!,.V4@=%O'A3`!````$GH`2,>%0`$````` +M``!(B:U(`0``2(VU,`$``$F+?2CH`````,:%@`````#K)F9FD&:02(M%($B) +M4`A(B0),B6((2(E5($B+$TB+0PA(B4((2(D02(M<)`A(BVPD$$R+9"083(ML +M)"!(@\0HPV9FD&9FD%532(/L"$B)^TB)]0^W?C*)^F;!Z@4/M_>)\8/A'[@! +M````2-/@B<'WT8'B_P<``"%,DVQF@?__#W1$#[?'2,'@`T@#@[`)``!(@S@` +M=#!(QP``````(8R3N`D``$B-NZ`/``#H`````$B)[DB)W^@`````2(GN2(G? +MZ`````!(@\0(6UW#9F9FD&9FD&9FD%532(/L"$B)]6:!?CCA`0^%K`````^V +M1CJ#Z!$\`0^'G0````^W1B"Z_P```&8]A0!W"P^WP`^VE`=@"```B=!(C03` +M2,'@!4B)PT@#GV`)``"`>T3_=4D/MI68````C002A-*Z"`````]$P@^VP&G` +M0$(/`(F#D````$C'@Z``````````2(F;J````$B-LY````!(BW\HZ`````#& +M0T0`2(M3,$B):S!(C4,H2(E%`$B)50A(B2J`0T4!Z;T````/MT4@NO\```!F +M/84`=PL/M\`/MI0'8`@``$B+CS@)``"+13@E____`#WA`1``#X2)````B=!( +MC11`2(T4D$C!X@5(C1P1@+N`````_W50#[:5F````(T$$H32N@@````/1,(/ +MML!IP$!"#P")@S`!``!(QX-``0```````$B)FT@!``!(C;,P`0``2(M_*.@` +M````QH.``````&9F9I!(BU,H2(EK*$B-0R!(B44`2(E5"$B)*H"#@P````%( +M@\0(6UW#9F9FD&9F9I!F9I!!5T%6055!5%532(/L*$F)_DB)="0(#[=.(&:! +M^84`#X<%`P``#[?!#[:T!V`(``")\$"`_O]T:V:#^7]W(D`/MM9(BX\X"0`` +M2(T$4DB-!()(P>`%2(M$"%`/MD`(ZT-F@?F!`'<=0`^VQDB+EX@)``!(:<#( M#P``2(M$$`@/MD`(ZQ]`#[;&2(N78`D``$B-!,!(P>`%2(N$$(@````/MD`( -M#[;`00^VE`;F"```2(T$DDB-!())C83&P`$``$B)1"0028N.B`D``$`/ML9( -M:<#(#P``3(T\`4B+1"0(2(M(2`^V00$\$G0I/)$/A1<"``!(C0222(T$@KD` -M````08"\QLX!````#X3/`0``Z6`!``!(C0222(T$@DF-!,9(BYC``0``2(E< -M)"`/MED)B%PD'@^V21J(3"0?NP````"`N,X!````='5!O`````!(C0222(T$ -M@DC!X`--C:P&(`(``$J-+#!,C;7``0``9F:09F:03(GOZ`````!(B<-(BX4H -M`@``2(F=*`(``$R)*TB)0PA(B1A,.7M8=1</MH.!````2(M4)`@Z0B5T$&9F -MD&9FD$&#Q`%%.&8.=[9(BT0D"$B+<'A(A?9T"DB+?"0@Z`````!(BW0D"$B+ -M?"0@Z``````/MH/*````C5`!B)/*````/`-W*X!\)!\`=21(BT0D"`^V4"5( -MBW-80;@`````N0(```!(BWPD$.@`````ZS.-0@&(@\H```"`^@)V)8!\)!\` -M=1[&0TL"QD-*_X!C3/Y(B=Y(BWPD(.@`````Z00!```/MDPD'P^V5"0>3(G^ -M2(M\)!#H`````.GH````O0````!(C0222(T$@DC!X`--C:0&(`(``$J-'#!, -MC:O``0``3(GGZ`````!(B<%(BX,H`@``2(F+*`(``$R)(4B)00A(B0A,.7E8 -M=10/MH&!````2(M4)`@Z0B5T#&9FD(/%`4$X;0YWN@^V44A(B="#X`9(@_@& -M=1SVP@%T%TB+7"0(#[93)4B+<5A(BWPD$.@`````2(M$)`A(BW!X2(7V=`A, -MB??H`````$B+="0(3(GWZ`````#K+0^VE^4)``!(C0222(T$@DB-A,?``0`` -M2(E$)!!(BX^("0``N#BX#P#I>OW__TB#Q"A;74%<05U!7D%?PV9F9I!F9I!F -M9I!!54%455-(@^P(28G]28GT2(G3QD)+`<9"2@"^!@```$R)Y^@`````2(-[ -M6`!T%TB+4Q!(BT,82(E""$B)$$B+0UB`:%@!@+N#`````'0<D$R)[^@````` -MOP$```#H`````("[@P````!UY4B+NR`!``!(A?]T$0^VLPT!``"Z`0```.@` -M````2(M[6$B%_W01#[:S@0```+H!````Z`````!(BVM`2(7M#X2*````2(.] -M@`````!U<$B#O8@`````=6;V0TP$=1E,B>_H`````$B+<T"Z`0```$R)[^@` -M````2(M#0`^V4`(/MG`!2,?'`````+@`````Z`````!(BU-`28NU\`@``+\! -M````Z`````!(BU-`28NU\`@``+\&````Z`````!(QT-``````$C'16`````` -M2(M38$B%TG00#[:#@0```$C'1,)8`````$B+$TB+0PA(B4((2(D008!L)`X! -M2(G>3(GOZ`````!!@'PD"?]T74&`?"0.`'1$NP````!)C6PD8&9FD&:02(GO -MZ`````!)BU0D:$F)1"1H2(DH2(E0"$B)`H!X2O]U#(/#`4$X7"0.=@GKTD$X -M7"0.=Q%!QD0D"?],B>9,B>_H`````$B#Q`A;74%<05W#9F9FD&9F9I!F9F:0 -M9F:005=!5D%505154TB#[`A)B?])B?9(B=7&0DL!QD)*`+X&````3(GWZ``` -M``!(@WU8`'072(M5$$B+11A(B4((2(D02(M%6(!H6`&`O8,`````=!M,B?_H -M`````+\!````Z`````"`O8,`````=>5(B[T@`0``2(7_=!$/MK4-`0``N@$` -M``#H`````$B+?5A(A?]T$0^VM8$```"Z`0```.@`````2(M=0$B%VP^$$0$` -M`/9%3`1U34R)_^@`````2(MU0+H!````3(G_Z`````!(BT5`#[90`@^V<`%( -MQ\<`````N`````#H`````$B+54!)B[?P"```OP$```#H`````.LN#[93`@^V -M<P%(Q\<`````N`````#H`````$B+54!)B[?P"```OP$```#H`````$B+BX`` -M``!(A<D/A#<!```/MT4X2<>$QV`$````````2,>#@`````````!(B[N0```` -MNO____](B=[_T>D&`0``#[=%.$G'A,=@!````````$C'@X@`````````2(N[ -MD````/_2]D5,`G052(M50$F+M_`(``"_!@```.@`````2,=%0`````!(QT-@ -M`````$B+56!(A=)T$`^VA8$```!(QT3"6`````!(BU4`2(M%"$B)0@A(B1!! -M#[96#H/J`4&(5@Y(BT5@2(7`=`=F@WA.`G59A-)T54&\`````$V-;F!,B>_H -M`````$B)PTF+1FA)B5YH3(DK2(E#"$B)&$B%VW0?]D-,`G092(M30$F+M_`( -M``"_!@```.@`````@&-,_4&#Q`%%.&8.=[5(B>Y,B?_H`````$B#Q`A;74%< -M05U!7D%?PTB+DX@```!(A=(/A>K^___I"?___Y!(@^PH2(E<)`A(B6PD$$R) -M9"083(EL)"!(B?M(BT=03(LH3(GOZ`````!(B<5(A<`/A-4```!,B>_H```` -M`$F)Q$B%P'4:QH/I`````4B)[DR)[^@`````Z:X```!F9I#&13B@2(U5.;@` -M````9F:0Q@00`$B#P`%(@_@%=?+&13X`QD4_`,9%0`#&14&(QD5"`,9%0P#& -M126K#[=#.&:)12!,B6THQX64````"````,=%-(@```!)BT0D$$B)14A(!8@` -M``!(B450QD4P)$R)97A(QX6@`````````$B-75B^`````$B)W^@`````28MT -M)!BZB````$B)W^@`````2(GN3(GOZ`````!(BUPD"$B+;"003(MD)!A,BVPD -M($B#Q"C#9F9FD&9F9I!F9F:055-(@^P(2(G]2(V?2!```$B)W^@`````A,`/ -MA0@!``!(B=_H`````(G"N8#___^`O>`(``#_=!*`O>$(``#_#X7C````N8'_ -M__\XC>\```!S!HB-[P```(#Y@@^$QP````^VP8B4!6`(```/M\)(:=C(#P`` -M2(G:2`.5B`D``+@`````Q@00`$B#P`%(/<@/``!U\$B)VD@#E8@)``!(C4(8 -M2(E"&$B)VD@#E8@)``!(C4(82(E"($B)VD@#E8@)``!(C4(H2(E"*$B)VD@# -ME8@)``!(C4(H2(E",$B)VD@#E8@)``!(C4)(2(E"2$B)VD@#E8@)``!(C4)( -M2(E"4$B+A8@)``"(3`-;2(N]\`@``+X`````Z`````!(B=A(`X6("0``ZP6X -M`````$B#Q`A;7<-F9F:09F9FD&9F9I!!5%-(@^P(28GT2(N?V!```$B!QZ`/ -M``#H`````(G!#[?`2,'@!D@!V$F)!"2Z`````,8$`@!(@\(!2(/Z0'7R#[?! -M2(/$"%M!7,-F9I!FD$B#[`A(C9=(`0``N`````!(.9=(`0``=`A(B=?H```` -M`$B#Q`C#D)"0D)"0D)"0D$`/MO9(C33V2,'F!X'&8%<``(DWPV9F9I!F9F:0 -M9F:0#[;2#[=$5GB#P`%FB416>`^V5@(!T`^WP,-F9I!F9I"X`0```("_NT(` -M``%T$X/``4B!Q[````"#^"!UZ&:X___SPV9F9I!F9I!F9I!F9I!(B?FX`0`` -M`$`XL;A"``!U'SB1N4(``'47B<!(C12`2(T44$C!X@3&A!<+0@```<.#P`%( -M@<&P````@_@@=<GSPV9F9I!F9F:09F9FD&9FD,8!_D0/ME<$1832=$Y)B?A! -MN0````!!NP````"X`````$DYL-A9``!U'D$XTW452)A(C03`2,'@!P^VA`?$ -M5P``B`'#08/#`4&#P0&#P`%)@<"`!```13C1=<;SPV9FD$F)^H#Z`7081`^V -M1P2_`````$6$P`^$<`$``.E!`0``0;L`````387`#X0<`0``#[97!$&[```` -M`(32=#1(B?A!NP````!!N0````!F9F:02#FPV%D``'4)03C)=!-!@\$!08/# -M`4@%@`0``$$XTW7?00^V^TACSTB-#,E(P>$'28V4"F!7``!(BP))B0!(BT(( -M28E`"$B+0A!)B4`02(M"&$F)0!A(BT(@28E`($B+0BA)B4`H2(M",$F)0#!( -MBT(X28E`.$B+0D!)B4!`2(M"2$F)0$A(BT)028E`4$B+0EA)B4!8BT)@08E` -M8$&`O`I@5P```'13O@````!(8\=(C03`2(T\Q0````!.C0P10`^VQDB)PDC! -MX@1)C4P08$B-!`=(P>`$28V4`N!9``!(BP)(B4$$2(M""$B)00R#Q@%!.+%@ -M5P``=\5!#[;#2(T$P$C!X`=!#[:$`F!7``##3(G2N0````"_`````&:02#FR -MV%D```^4P`''@\$!2('"@`0``$0XP77E0`^VQ\-!54%455-(B?-)B=5-B<Q! -MB<E$B<5)B?B^`````&9FD(GQ2#E?(`^%A0```$ACQDAIP%`0``!-C50`($&[ -M`````$2)VD$/MD(LA,!T!#SP=4](8])(8\E(B=!(P>`%2&G)4!```$@!R$P! -MP$B)6#!,B6@X2,'B!4B-5`H@2HT$`DB-2"!FB6D"1(A(($F+!"1)B400),9! -M#/_K%F9FD&:008/#`4F#PB!!@?N"````=9"#Q@%(@<=0$```@_X$#X5<____ -M6UU!7$%=PV9FD&:0055!5%532(/L"$F)]4B)_8!_!`!T1D&\`````&9F9I!! -M#[;<2&/#2(T$P$C!X`>`O`7$5P``_7092(V\!;Q7``"Z"````$R)[N@````` -MA,!U#T&#Q`%$.&4$=\2[_P```(G82(/$"%M=05Q!7<-FD%-(B?OH`````+H) -M````//]T$P^VP$B-!,!(P>`'#[:4`V97``")T%O#9F9FD&9FD$B#[`A)B?)) -MB=%$B<)(B?Y,C8=@00``N`````!F9F:00L8$``!(@\`!2#V0````=>_&AF%! -M```3QH9@00``0`^VQHB&9D$``(B69T$``(B.:4$``$C'A@!"````````2(F^ -M^$$``$F+05Q(B8;P00``2('&8$$``$R)U^@`````2(/$",-F9F:09F9FD&9F -MD$%505154TB#[`A)B?5)B=1,B<U!B<E$B<-(B?A)B?JZ`0```$&)TT&)T("X -MNT(```$/A>X```!(8])(C0222(T$0DC!X`1,`=!(C9``0@``QD(+`$R)D/A! -M```/MDH*2&/!2(T4@$B-%%!(P>($28V4$F!!``"X`````&9FD&:0Q@00`$B# -MP`%(/9````!U\$ACP4B--(!(C31P2,'F!$J-%!9(C8I@00``QD$!D,:"8$$` -M`$`/ML>(00:(FF=!``!$B$D)2(M%`$F)A#)P00``26/`2(T4@$B-%%!(P>($ -M2HT$$DC'@`!"````````2(FX^$$``$F+1"1<28F$$O!!``!!#[;#2(T4@$B- -M%%!(P>($28VT$F!!``!,B>_H`````.L7@\(!2`6P````@_H@#X7M_O__N`$` -M``!(@\0(6UU!7$%=PV9FD&9FD&9FD$B#[`A)B?-!B=)(B?I)B?BX`0```(G& -M@+J[0@```0^%X0```$B82(T4@$B-%%!(P>($28V$$`!"``!$B%`(B$@)QD`+ -M`$0/MD@*26/!2(T4@$B-%%!(P>($28V4$&!!``"X`````,8$$`!(@\`!2#V0 -M````=?!)8]%(C0222(T$0DC!X`1,`<!(C9!@00``QD(!$,:`8$$``$"(2@E( -M8\9(C0R`2(T,2$C!X01!#[:$"`I"``!(C12`2(T44$C!X@1*C00"2,>``$(` -M``````!(B;CX00``00^VPDB-!,!(P>`'28N$`+Q7``!)B80(\$$``$F-M!!@ -M00``3(G?Z`````#K%8/``4B!PK````"#^"`/A?W^__^P`4B#Q`C#D$B#[`A) -MB?&)T$B)_L:'"T(```!,C8=@00``N0````"00L8$`0!(@\$!2('YD````'7N -MQH9A00```<:&8$$``$!(QX8`0@```````$B)OOA!```/ML!(C03`2,'@!TB+ -MA`:\5P``2(F&\$$``$B!QF!!``!,B<_H`````$B#Q`C#2(/L"$F)\8G02(G^ -MQH<+0@```$R-AV!!``"Y`````)!"Q@0!`$B#P0%(@?F0````=>[&AF%!```` -MQH9@00``0$C'A@!"````````2(F^^$$```^VP$B-!,!(P>`'2(N$!KQ7``!( -MB8;P00``2('&8$$``$R)S^@`````2(/$",-!5T%6055!5%532(/L.$B)?"08 -M2(ET)!!!B=5$B$0D#TF)_$4/MO5)8\9(C03`2,'@!X"\!\17``#]#X3&"``` -M@/D0#X2%`@``@/D0=Q>$R0^$G0```(#Y`0^%IP@``)#I!@$``(#YXG0;@/G_ -M9F:0="F`^9`/A8L(``!F9I!FD.G(!@``N0````"`?P0`9I`/A=P'``#I!`@` -M`$ECQDB-!,!(P>`'QH0'Q%<``/^`OPM"```!=25$B?)(BW0D$$B+?"08Z``` -M``"%P`^%-0@``$&`1"0&`>DJ"```26/&QD0'!P%(BU0D$$B)5,<0Z1,(``"` -MOPM"```!=5A(C8]@00``26/&2(T$P$C!X`=(`?@/ME$)B)!B5P``2`7`5P`` -M#[91"H/B`8A0!<9`!`!$B?)(BW0D$$B+?"08Z`````"%P`^%O0<``$&`1"0& -M`>FR!P``26/&QD0'!P%(BTPD$$B)3,<0Z9L'``!)8\9(C03`2,'@!TB--#@/ -MMI>200``B):R5P``#[>7D$$``&:)E`>P5P``2(N7B$$``$B)E`>@5P``2(N7 -M;$$``$B)E`=P5P``2(V,!X!7``!(BY=T00``2(D12(N7?$$``$B)40B+EX1! -M``")E`>85P``QH;$5P```8!_!A\/A!<'``"[`````$B-KF!7``!,C:ZP5P`` -MZTD/MLM$B?)(BW0D$$B+?"08Z`````"%P'0526/&2(T$P$C!X`=!B)P$LU<` -M`.L@@\,!08!$)`8!.%T"#T7#08A%`T&`?"0&'W0%.ET"<K)!QH0D"T(```%! -M#[9T)`1`A/8/A)P&``"Z`````$&`?"0'`707ZT-F9F:09F:0#[;12&/"08!\ -M!`<!=3-(8\)!QD0$!_])BW3$$$&Y`````$&X`````+G_````2(M\)!CH```` -M`.E*!@``N0````"#P0%`./%UM^DX!@``38G/28U!&$B)1"0@2(UT)#!)BT$8 -M2(E$)#!)8\9(C03`2,'@!TB-+#A(C87`5P``QD`$$$'V00QP#X1"`P``2(N5 -MR%<``$B%TG1Q#[98!DB->ERZ"````.@`````A,!U6T'V1P\/=%1(BX7(5P`` -M2(7`=$A(B<6`?64`=#\/MMN)VDB)[DR)Y^@`````3(M,)"!$#[?`B=E(B>I( -MBW0D$$B+?"08Z``````/MEUF2(M%:$B%P'0%2(G%Z[M!#[9/#_;!#0^$ZP`` -M`$ECQDB-%,!(B=!(P>`'00^VM`1@5P``0(#^'P^'R@```/;!"'070`^VQDB- -M!-!(P>`$0<:$!.!9```&ZQQ`#[;626/&2(T$P$B-!,)(P>`$0<:$!.!9```' -M0`^VQDEC]DB--/9(C13P2,'B!$F-O!3@60``QD<!`$$/MD</B$<#2(M$)#!) -MB804Z%D``$$/MD<)B$<"00^V5PV#X@](P>8'3`'F2(V.8%<```^V008XP@]' -MT(/B#P^V1P2#X/`)T(A'!$$/ME<I@^(/#[9)!CC*#T?1P>($@^`/"="(1P2` -MAF!7```!Z<P!``#VP0(/A,,!``!(C70D,$R)Y^@`````B<$\_P^%8@$``$$/ -MMDPD!(3)=#U!#[:$),17```\_W0PN@`````\_74>ZR4/ML)(C03`2,'@!T$/ -MMH0$Q%<``#S_=!(\_70.@\(!.,IUW>L%N@`````/ML)(C03`2,'@!TF-C`1@ -M5P``N`````#&!`@`2(/``4B#^&1U\D0/MM))8])(C1322,'B!TJ-/")!#[;% -M2(T$P$C!X`=)C80$8%<``$B)A\A7``!-C804L%<``$ECUDB-%-)(P>('28N$ -M%+Q7``!)B4`$2(M,)!!(B8_860``3`'B2(N"T%<``$B)A]!7``!,C8_`5P`` -M0<9!!/](C;=@5P``#[9.!T$/MD<)B(0/:%<``(!&!P%!#[9'#8/@#P^VDF97 -M```XT`]'PHA&!DB+1"0P28E`#$$/MD</B$8##[9$)`]!B$$&00^V1"0%03I$ -M)`1U!D'&1"0%`$&`1"0%`4ECPD'&1`0'`4B+5"0028E4Q!#K2DECQDB-!,!( -MP>`'#[;12(T4TDC!X@=)C9048%<``$DYE`3(5P``="(/ML%(C03`2,'@!TP! -MX`^V<@=!#[9/"8B,,&A7``"`0@<!00^V5PE$B?9,B>?H`````$ECQDB-!,!( -MP>`'08"\!+-7````#X2@````08!\)`8?=6/I@`(``$'&1P00#[9+`T2)\DB+ -M="002(M\)!CH`````(7`#X5=`@``08!$)`8!#[9+`P^VP8/``0^V50(YT'4/ -MQD,#`.D\`@``9F:09F:0C4$!B$,#08!\)`8?#X0D`@``ZR-)8\9(C03`2,'@ -M!TP!X$B-F+!7``!(C:A@5P``3(VXP%<```^V0P,Z10(/@G+____I[0$``$&` -M?"0&``^%X0$``$&Y`````$&X`````+F0````1(GR2(MT)!!(BWPD&.@````` -MZ;D!``!)B?U!OP````!(BTPD$$DY32`/A8,```!$B?A(:<!0$```28U<!""] -M`````$2)^$AIP%`0``!(B00D@'LL_W5*08!\)`8?#X1M`0``B>A(P>`%2(L4 -M)$B-1!!`#[9+($B+4QA-C4P$!$0/MT,B2(MT)!!(BWPD&.@`````A<!U"D&` -M1"0&`<9#+/!(@\4!2(/#($B!_8(```!UGTF#QP%)@<50$```28/_!`^%6?__ -M_T&`?"0&``^%_0```$$/MG0D!$"$]@^$RP```+H`````08!\)`<!=!#K/`^V -MT4ACPD&`?`0'`74S2&/"0<9$!`?_28MTQ!!!N0````!!N`````"Y_P```$B+ -M?"08Z`````#IHP```+D`````@\$!0#CQ=;?K<0^VP4B-!,!(P>`'28V4!,!7 -M```/MD($//UT"#S_=`3&0@3^@\$!03A,)`1WTTECQDB-!,!(P>`'28NL!-!7 -M``"[`````$*`?",H`7420L9$(R@`2HMT(R!(BWPD&/_52('#4!```$B!^T!! -M``!T)>O40;D`````0;@`````N>(```!$B?)(BW0D$$B+?"08Z`````!(@\0X -M6UU!7$%=05Y!7\-F9F:09F9FD&9FD$B#[!A(B1PD2(EL)`A,B60D$$F)_$B) -M]4B+GI@```"`>P8`#X1'`0``2(VVD````$B)W^@`````B<$\_P^$+@$``$B) -M[@^V10$\`71:/`%R&CP0#X2*````/)!F9I!FD`^%"@$``.G&````@+L+0@`` -M``^%^````,:#"T(```&`:P8!#[;10;D`````0;@`````N0````!,B>9(B=_H -M`````.G)````@+L+0@````^%O````,:#"T(```&`:P8!#[;10;D`````0;@` -M````N0$```!,B>9(B=_H`````.F-````N@`````ZC!JX0@``=0\/MH0:N4(` -M`#I&"7029I!(@<*P````2('Z4!4``'78@&L&`0^VT4F)\40/MD8)N1````!, -MB>9(B=_H`````.L_#[:%J@```$B-%(!(C1102,'B!,:$$PM"```!@&L&`0^V -MT4&Y`````$&X`````+F0````3(GF2(G?Z`````"02(L<)$B+;"0(3(MD)!!( -M@\08PV9F9I!F9I!F9I!F9I!!B=")\H7V=!1(B?E(B="0Q@$`2(/!`4B#Z`%U -M\XDW2('J8%<``$BXC^,XCN,XCN-(]^)(P>H*03C000]"T(A7!(32="NZ```` -M`&9FD&9FD`^VPL9$!P?_2(T$P$C!X`?&A`?$5P``_8/"`3A7!'?@QD<&`,9' -M!0!(B?BZ`````,:`"T(```&(D`I"``"#P@%(!;````"#^B!UY?/#9F:02(GY -M@'\$``^$F0```+\`````1`^VQTECP$B-!,!(P>`'2#FT`=A9``!U;K@````` -M0#B\"+A"``!U",:$"+M"```!2`6P````2#U0%0``=>!)8\!(C03`2,'@!TC' -MA`'860```````$B-E`%@5P``N`````#&!!``2(/``4B#^&1U\DECP$B-!,!( -MP>`'QH0!Q%<``/V`:04!@\<!0#AY!`^';/___TB)ST&X`````$@Y=R!U,$C' -M1R``````QD<H`$ECP$AIP%`0``!(C40!(+H`````QD`L`(/"`4B#P""`^H)U -M\$&#P`%(@<=0$```08/X!'6Y\\-F9F:09F9FD$%505154TB#[`A(B?U(B?=) -MB=1-B<5!B<A(B>L/MD4%.D4$=03&104`1`^V6P5(B=Y)B=FX`````$&)PHG" -M28M)($@Y^75+2)A(:<!0$```QD0#*`$/MDL$0;L`````A,ET9$&[`````$@Y -MOMA9``!U#@^VAL17``"#P`,\`79'08/#`4B!QH`$``!!.,MT-^O72(7)=1E( -M8\)(:<!0$```2`'82(EX(,9`*`'K&6:008/"`8/``4F!P5`0``"#^`0/A7+_ -M__]!#[;"2&G`4!```$B-1`,PN0````!F9F:0Q@0!`$B#P0%(@?D"$```=>]% -M#[;326/"2(E\PQ!!#[;#2(T$P$C!X`=(C80#8%<``&:Y``#&!`$`2(/!`4B# -M^61U\DECPDB-!,!(P>`'2(V,`]A7``"X`````&9FD&:0Q@0(`$B#P`%(/0`" -M``!U\$ECPDB-!,!(P>`'2(T,&$B)N=A9``!,B:G05P``QH'$5P``_TC'@<A7 -M````````28L4)$B)E`.\5P``1(B!9E<``$&Y`````$&X`````+G_````1(G2 -M2(G^2(GOZ`````"`0P4!2(/$"%M=05Q!7<-(BP=,BP`/MG!#0(3V=$</ME<- -MN0````#VP@%T#>LWD$B)T$C3^*@!=0B#P0%`./%U[H#Y`W8D2(T$C0`````E -M_`,``$F-A`#0`0``BP")!0````#K(KD`````2(T$C0`````E_`,``$F-A`#0 -M`0``BP")!0````#!Z!2#X`'#D$B+!T0/MD!#0;D*````183`=$H/MG\-2(G" -MO@````!!N0H```"Y`````&9FD&9FD$B)^$C3^*@!=!0/MH+F$@``@^`#@\`( -M03C!1`]'R(/&`8/!`4B#PFA$.,9UTT$/ML'#9F9FD&9F9I!F9I!F9I!(BP=$ -M#[9`0T&Y"````$6$P'1*#[9_#4B)PKX`````0;D(````N0````!F9I!F9I!( -MB?A(T_BH`704#[:"YA(``(/@`X/`"$$XP40/0LB#Q@&#P0%(@\)H1#C&==-! -M#[;!PV9F9I!F9F:09F:09F:0#[8'P.@$@^`'#[9W`HG"@,X"0/;&!`]%P@^V -M3P.)PH'*```"`/;!!`]%PHG"@,X(0/;&"`]%PHG"@<H```@`]L$(#T7"B<*` -MS@1`]L8"#T7"B<*!R@``!`#VP0(/1<(/ME<4P>(8"=##9F9FD&9FD.@````` -M\\-F9I!F9I!F9I"+AQ`)```E____`+H`````/5`!DP!U&0^VAQ,)``#`Z`0\ -M#`^4P`^VT&9F9I!F9I")T,-F9F:09F:09F:09F:0A?9^0@^V!X3`=`0\('4Q -M2(GZN0````#K%V9F9I!F9I`/MD(!2(/"`83`=`0\('40@\$!.?%UZ>L-9F9F -MD&9FD+@`````P[@!````9F:09I##9F9FD&9F9I!F9F:09F:0#[9'`P^V5P+! -MX@@)T,'@$`^V3P$/MA?!X@@)T0G(PY!!B="%TG0EN0````!F9F:0#[87#[9' -M`8@&B%8!2(/&`DB#QP*#P0%$.<%UY//#9I!(@^P(28GP#[=&(+K_````9CV% -M`'<+#[?`#[:4!V`(```/M])(C1322,'B!4@#EV`)``!(B[<($0``#[9"4,'@ -M"$B82(V$!DP(``"+"(D-`````('A_P````^V0E#!X`A(F$B-M`9$"```BP:) -M!0````#!X`@)R(F"$`$``&;'@@P!`````$R)QN@`````2(/$",-F9F:09F:0 -M9F:09F:02(/L*$B)7"0(2(EL)!!,B60D&$R);"0@28G]08GT2(LO0(#^`W8Y -M2HT<Y0````"!X_@'``!(C80=,`(``,<`#````+\0)P``Z`````!(C80=-`(` -M`(LXB3T`````ZS>02HT<Y0````"!X_@'``!(C80K4`(``,<`#````+\0)P`` -MZ`````!(C9PK5`(``(L[B3T`````00^V]$ACQDB-%$!(C12028V4U=`2```/ -MMDH0@^'\B$H0B?@E```_`#T``!``=0N)R(/(`HA"$.L9D$ACQDB-%$!(C120 -MB<B#R`%!B(35X!(``$B+7"0(2(ML)!!,BV0D&$R+;"0@2(/$*,-F9F:09F9F -MD&9F9I!F9I!!5T%6055!5%532(/L&$F)_DR+/TF+!\9&20#&1D@%QD9+!DB) -M?E"Y`````+T`````2(V0``(``$B)5"002`4$`@``2(E$)`CK%F9FD&9FD$$/ -MMD8-2-/XJ`%U"H/!`9!!.D]#<NJ`^0-V>DB-',T`````@>/X!P``3(ML)!!) -M`=U!QT4`+````+\0)P``Z`````!(`UPD"$2+(T2))0````!!QT4`)````+\0 -M)P``Z`````"+`XD%`````,'@"$&!Y/\```!!"<1!QT4`(````+\0)P``Z``` -M``"+&XD=`````.MX2(T<S0````"!X_@'``!,BVPD$$D!W4''10`L````OQ`G -M``#H`````$@#7"0(1(LC1(DE`````$''10`D````OQ`G``#H`````(L#B04` -M````P>`(08'D_P```$$)Q$''10`@````OQ`G``#H`````(L;B1T`````08'\ -M`0%IEG4:08!.#`:)V,'H$#Q0#Y3`#[;`ZTAF9I!F9I!!@?P!`0``=0^)V,'H -M$#Q0#Y3`#[;`ZRJ_B!,``.@`````@\4!0(#]!'<*N0````#IJ_[__XG8P>@0 -M/%`/E,`/ML!(@\086UU!7$%=05Y!7\-F9F:09F9FD&9F9I!F9I!!54%455-( -M@^P(2(G]08GT2(N'B````$R+*&:#OPP!````=#")\[_H`P``Z`````!%A>1T -M!8/[`78:3(GO9F:0Z`````!F@[T,`0```'0%@^L"Z])(@\0(6UU!7$%=PY!( -M@^PX2(E<)`A(B6PD$$R)9"083(EL)"!,B70D*$R)?"0P28G\B<M!B?9!B=5% -MB<=(BX>(````2(LH2(GOZ`````!(B<;&0#CAQD`Y`<9`.A*X#P```$6$]G4& -M00^V1"1'B$8[1(AN/$R)Z@^VQHA&/0^VQXA&/HG8P>@0B$8_B=C!Z!B(1D"( -M7D%!#[=$)$!FB48@2(EN*,=&-`````!(QT9(`````$6$_TC'P`````!(Q\(` -M````2`]%PDB)AJ````!(B>_H`````$B+7"0(2(ML)!!,BV0D&$R+;"0@3(MT -M)"A,BWPD,$B#Q#C#9I!(@^PH2(D<)$B);"0(3(ED)!!,B6PD&$R)="0@28G\ -MB<M!B?9!B=5(BX>(````2(LH2(GOZ`````!(B<;&0#CAQD`Y`<9`.A*X#P`` -M`$6$]G4&00^V1"1'B$8[1(AN/$R)Z@^VQHA&/0^VQXA&/HG8P>@0B$8_B=C! -MZ!B(1D"(7D%!#[=$)$!FB48@2(EN*,=&-`````!(QT9(`````$C'AJ`````` -M````2(GOZ`````!(BQPD2(ML)`A,BV0D$$R+;"083(MT)"!(@\0HPV:04TB) -M^T&)RD&)T4B%_P^$`0$``$R+!TV%P`^$]0```$$/MGA#A?]^5TB+@X@````/ -MME`-N0````#VP@%T#>M`D$B)T$C3^*@!=0>#P0$Y^77O@_D#?BY)BP!(!=`! -M``"-%(T`````2&/22`'0BP")!0````#!Z!2#\`&#X`'K++D`````28L`2`70 -M`0``C12-`````$ACTD@!T(L`B04`````P>@4@_`!@^`!A,!U98"['`$```!U -M!H![0@!U5@^W0T!!@+P`8`@``/]T1\9#0B5FQX,,`0```0!!#[?10`^V]D&X -M`0```$2)T4B)W^@`````O@4```!(B=_H`````,9#0@!F@[L,`0````^4P`^V -MP.L%N`````!;PV9FD&:02(/L*$B)7"0(2(EL)!!,B60D&$R);"0@2(G]08GU -M08G42(N'B````$B+&$B)W^@`````2(G&QD`XX<9`.0'&0#H1N`\```!%A.UU -M!`^V14>(1CM$B&8\3(GB#[;&B$8]#[=%0&:)1B!(B5XHQT8T`````$C'1D@` -M````2,>&H`````````!(B=_H`````$B+7"0(2(ML)!!,BV0D&$R+;"0@2(/$ -M*,-F9I!F9I!F9I!54TB#[`A(B?M(B<U!B=%(A?\/A`8!``!,BP=-A<`/A/H` -M``!!#[9X0X7_?E9(BX.(````#[90#;D`````]L(!=`SK/TB)T$C3^*@!=0># -MP0$YSW7O@_D#?BY)BP!(!=`!``"-%(T`````2&/22`'0BP")!0````#!Z!2# -M\`&#X`'K++D`````28L`2`70`0``C12-`````$ACTD@!T(L`B04`````P>@4 -M@_`!@^`!A,!U:X"['`$```!U!H![0@!U7`^W0T!!@+P`8`@``/]T3<9#0B5F -MQX,,`0```0!!#[?10`^V]KD!````2(G?Z`````"^!0```$B)W^@`````QD-" -M`&:#NPP!````=1"+@Q`!``")10"X`0```.L%N`````!(@\0(6UW#9F:09F:0 -M2(/L*$B)'"1(B6PD"$R)9"003(EL)!A,B70D($B)_4&)]4&)U$&)SDB+AX@` -M``!(BQA(B=_H`````$B)QL9`..'&0#D!QD`Z$;@/````183M=00/MD5'B$8[ -M1(AF/$R)X@^VQHA&/0^W14!FB48@2(E>*,=&-`````!(QT9(`````$6$]DC' -MP`````!(Q\(`````2`]%PDB)AJ````!(B=_H`````$B+'"1(BVPD"$R+9"00 -M3(ML)!A,BW0D($B#Q"C#9F9FD&9FD&9FD&9FD$B#["A(B5PD"$B);"003(ED -M)!A,B6PD($B)]4&)U$&)S4B+'TB)W^@`````2(G"2(7`=1#&A>D````!QD5* -M`^F4````QD`XX<9`.0%!@/P!&<#WT(/``HA".D6$[751N`````!(@WU@`'0' -M#[:%@0```(A".P^W13AFB4(@2(E:*,="-`````!(QT)(`````$C'P`````!( -MB8*@````2(G62(G?Z`````#K+69FD&:0QD([#P^W13AFB4(@2(E:*,="-``` -M``!(QT)(`````$C'P`````#KOTB+7"0(2(ML)!!,BV0D&$R+;"0@2(/$*,-F -M9F:09F9FD&9F9I!F9I!!5T%6055!5%532(/L.(GU28G42(L/C13M`````(U" -MX(G`2(V<""`"``!(B1PD2(V$""0"``!(B40D"(G23(V\"@`"``!,C:P*!`(` -M`+L`````3(UT)!"#_0-V)8V#'`$``$B+%"2)`K\0)P``Z`````!(BU0D"(L" -MB04`````ZQV-@QP!``!!B0>_$"<``.@`````08M%`(D%`````$*)!#-(@\,$ -M2(/[''6K2(M$)!!)B00D2(M$)!A)B40D"$B+1"0@28E$)!"+1"0H08E$)!A( -M@\0X6UU!7$%=05Y!7\-F9F:09F9FD&9F9I!F9I!!5T%6055!5%532(/L.(GU -M28G42(L/C13M`````(U"X(G`2(V<""`"``!(B1PD2(V$""0"``!(B40D"(G2 -M3(V\"@`"``!,C:P*!`(``+L`````3(UT)!"#_0-V)8V#``$``$B+%"2)`K\0 -M)P``Z`````!(BU0D"(L"B04`````ZQV-@P`!``!!B0>_$"<``.@`````08M% -M`(D%`````$*)!#-(@\,$2(/[''6K2(M$)!!)B00D2(M$)!A)B40D"$B+1"0@ -M28E$)!"+1"0H08E$)!A(@\0X6UU!7$%=05Y!7\-F9F:09F9FD&9F9I!F9I!! -M5T%6055!5%532(/L.$F)_D"(="0+3(L_1`^V[DECQ4B-%$!(C1202(T4UTB) -MNK@2``#&@N$2````1(GNZ`````!(C6PD$$B)Z$B)ZF9FD,8``$B#P`%(B=-, +M#[;`10^VA`;F"```2XT$@$F-!(!)C83&P`$``$B)1"0028N6B`D``$`/ML9( +M:<#(#P``3(T\`DB+1"0(2(M02`^V0@$\$G0I/)$/A1("``!+C02`28T$@+D` +M````08"\QLX!````#X3*`0``Z5L!``!+C02`28T$@$F-!,9(BXC``0``2(E, +M)"`/MDH)B$PD'@^V4AJ(5"0?NP````"`N,X!````='!!O`````!+C02`28T$ +M@$C!X`--C:P&(`(``$J-+#!,C;7``0``D$R)[^@`````2(G#2(N%*`(``$B) +MG2@"``!,B2M(B4,(2(D83#E[6'47#[:#@0```$B+5"0(.D(E=!!F9I!F9I!! +M@\0!13AF#G>V2(M,)`A(BW%X2(7V=`I(BWPD(.@`````2(MT)`A(BWPD(.@` +M````#[:#R@```(U0`8B3R@```#P#=RN`?"0?`'4D2(M$)`@/ME`E2(MS6$&X +M`````+D"````2(M\)!#H`````.LSC4(!B(/*````@/H"=B6`?"0?`'4>QD-+ +M`L9#2O^`8TS^2(G>2(M\)"#H`````.D%`0``#[9,)!\/ME0D'DR)_DB+?"00 +MZ`````#IZ0```+T`````2XT$@$F-!(!(P>`#38VD!B`"``!*C1PP3(VKP`$` +M`$R)Y^@`````2(G!2(N#*`(``$B)BR@"``!,B2%(B4$(2(D(3#EY6'44#[:! +M@0```$B+5"0(.D(E=`QF9I"#Q0%!.&T.=[H/ME%(2(G0@^`&2(/X!G4<]L(! +M=!=(BT0D"`^V4"5(BW%82(M\)!#H`````$B+5"0(2(MR>$B%]G0(3(GWZ``` +M``!(BW0D"$R)]^@`````ZRY$#[:'Y0D``$N-!(!)C02`2(V$Q\`!``!(B40D +M$$B+EX@)``"X.+@/`.E^_?__2(/$*%M=05Q!74%>05_#9F:09F:09F:0055! +M5%532(/L"$F)_4F)]$B)T\9"2P'&0DH`O@8```!,B>?H`````$B#>U@`=!=( +MBU,02(M#&$B)0@A(B1!(BT-8@&A8`8"[@P````!T')!,B>_H`````+\!```` +MZ`````"`NX,`````=>5(B[L@`0``2(7_=!$/MK,-`0``N@$```#H`````$B+ +M>UA(A?]T$0^VLX$```"Z`0```.@`````2(MK0$B%[0^$B@```$B#O8`````` +M=7!(@[V(`````'5F]D-,!'493(GOZ`````!(BW-`N@$```!,B>_H`````$B+ +M0T`/ME`"#[9P`4C'QP````"X`````.@`````2(M30$F+M?`(``"_`0```.@` +M````2(M30$F+M?`(``"_!@```.@`````2,=#0`````!(QT5@`````$B+4V!( +MA=)T$`^V@X$```!(QT3"6`````!(BQ-(BT,(2(E""$B)$$&`;"0.`4B)WDR) +M[^@`````08!\)`G_=%U!@'PD#@!T1+L`````28UL)&!F9I!FD$B)[^@````` +M28M4)&A)B40D:$B)*$B)4`A(B0*`>$K_=0R#PP%!.%PD#G8)Z])!.%PD#G<1 +M0<9$)`G_3(GF3(GOZ`````!(@\0(6UU!7$%=PV9F9I!F9F:09F9FD&9FD$%7 +M059!54%455-(@^P(28G_28GV2(G5QD)+`<9"2@"^!@```$R)]^@`````2(-] +M6`!T%TB+51!(BT482(E""$B)$$B+15B`:%@!@+V#`````'0;3(G_Z`````"_ +M`0```.@`````@+V#`````'7E2(N](`$``$B%_W01#[:U#0$``+H!````Z``` +M``!(BWU82(7_=!$/MK6!````N@$```#H`````$B+74!(A=L/A`0!``#V14P$ +M=1E,B?_H`````$B+=4"Z`0```$R)_^@`````2(M50`^V@LP```"-!(`/ME(" +M`=!(F`^VB`````!!#[97.D$/MG<Y1`^VA8,```!(Q\<`````N`````#H```` +M`$B+54!)B[?P"```OP$```#H`````$B+BX````!(A<D/A#X!```/MT4X2<>$ +MQV`$````````2,>#@`````````!(B[N0````NO____](B=[_T>D-`0``#[=% +M.$G'A,=@!````````$C'@X@`````````2(N[D````/_2]D5,`G052(M50$F+ +MM_`(``"_!@```.@`````2,=%0`````!(QT-@`````$B+56!(A=)T$`^VA8$` +M``!(QT3"6`````!(BU4`2(M%"$B)0@A(B1!!#[96#H/J`4&(5@Y(BT5@2(7` +M=`=F@WA.`G5@A-)T7$&\`````$V-;F!,B>_H`````$B)PTF+1FA)B5YH3(DK +M2(E#"$B)&$B%VW0F]D-,`G0@2(M30$F+M_`(``"_!@```.@`````@&-,_69F +M9I!F9I!!@\0!13AF#G>N2(GN3(G_Z`````!(@\0(6UU!7$%=05Y!7\-(BY.( +M````2(72#X7C_O__Z0+___]F9F:09F:02(/L*$B)7"0(2(EL)!!,B60D&$R) +M;"0@2(G[2(M'4$R+*$R)[^@`````2(G%2(7`#X35````3(GOZ`````!)B<1( +MA<!U&L:#Z0````%(B>Y,B>_H`````.FN````9F:0QD4XH$B-53FX`````&9F +MD,8$$`!(@\`!2(/X!77RQD4^`,9%/P#&14``QD5!B,9%0@#&14,`QD4EJP^W +M0SAFB44@3(EM*,>%E`````@```#'132(````28M$)!!(B45(2`6(````2(E% +M4,9%,"1,B65X2,>%H`````````!(C5U8O@````!(B=_H`````$F+="08NH@` +M``!(B=_H`````$B)[DR)[^@`````2(M<)`A(BVPD$$R+9"083(ML)"!(@\0H +MPV9F9I!F9F:09F9FD%532(/L"$B)_4B-GT@0``!(B=_H`````(3`#X4(`0`` +M2(G?Z`````")PKF`____@+W@"```_W02@+WA"```_P^%XP```+F!____.(WO +M````<P:(C>\```"`^8(/A,<````/ML&(E`5@"```#[?"2&G8R`\``$B)VD@# +ME8@)``"X`````,8$$`!(@\`!2#W(#P``=?!(B=I(`Y6("0``2(U"&$B)0AA( +MB=I(`Y6("0``2(U"&$B)0B!(B=I(`Y6("0``2(U"*$B)0BA(B=I(`Y6("0`` +M2(U"*$B)0C!(B=I(`Y6("0``2(U"2$B)0DA(B=I(`Y6("0``2(U"2$B)0E!( +MBX6("0``B$P#6TB+O?`(``"^`````.@`````2(G82`.%B`D``.L%N`````!( +M@\0(6UW#9F9FD&9F9I!F9F:005132(/L"$F)]$B+G]@0``!(@<>@#P``Z``` +M``")P0^WP$C!X`9(`=A)B00DN@````#&!`(`2(/"`4B#^D!U\@^WP4B#Q`A; +M05S#9F:09I!(@^P(2(V72`$``+@`````2#F72`$``'0(2(G7Z`````!(@\0( +MPY"0D)"0D)"0D)!`#[;V2(TT]DC!Y@>!QF!7``")-\-F9F:09F9FD&9FD`^V +MT@^W1%9X@\`!9HE$5G@/ME8"`=`/M\##9F:09F:0N`$```"`O[M"```!=!.# +MP`%(@<>P````@_@@=>AFN/__\\-F9F:09F:09F:09F:02(GYN`$```!`.+&X +M0@``=1\XD;E"``!U%XG`2(T4@$B-%%!(P>($QH07"T(```'#@\`!2('!L``` +M`(/X('7)\\-F9F:09F9FD&9F9I!F9I#&`?Y$#[97!$6$TG1.28GX0;D````` +M0;L`````N`````!).;#860``=1Y!.--U%4B82(T$P$C!X`</MH0'Q%<``(@! +MPT&#PP%!@\$!@\`!28'`@`0``$4XT77&\\-F9I!)B?J`^@%T&$0/MD<$OP`` +M``!%A,`/A'`!``#I00$``$&[`````$V%P`^$'`$```^V5P1!NP````"$TG0T +M2(GX0;L`````0;D`````9F9FD$@YL-A9``!U"4$XR70308/!`4&#PP%(!8`$ +M``!!.--UWT$/MOM(8\](C0S)2,'A!TF-E`I@5P``2(L"28D`2(M""$F)0`A( +MBT(028E`$$B+0AA)B4`82(M"($F)0"!(BT(H28E`*$B+0C!)B4`P2(M".$F) +M0#A(BT)`28E`0$B+0DA)B4!(2(M"4$F)0%!(BT)828E`6(M"8$&)0&!!@+P* +M8%<```!T4[X`````2&/'2(T$P$B-/,4`````3HT,$4`/ML9(B<)(P>($28U, +M$&!(C00'2,'@!$F-E`+@60``2(L"2(E!!$B+0@A(B4$,@\8!03BQ8%<``'?% +M00^VPTB-!,!(P>`'00^VA`)@5P``PTR)TKD`````OP````!FD$@YLMA9```/ +ME,`!QX/!`4B!PH`$``!$.,%UY4`/ML?#055!5%532(GS28G538G,08G)1(G% +M28GXO@````!F9I")\4@Y7R`/A84```!(8\9(:<!0$```38U4`"!!NP````!$ +MB=I!#[9"+(3`=`0\\'5/2&/22&/)2(G02,'@!4AIR5`0``!(`<A,`<!(B5@P +M3(EH.$C!X@5(C50*($J-!`)(C4@@9HEI`D2(2"!)BP0D28E$$"3&00S_ZQ9F +M9I!FD$&#PP%)@\(@08'[@@```'60@\8!2(''4!```(/^!`^%7/___UM=05Q! +M7<-F9I!FD$%505154TB#[`A)B?5(B?V`?P0`=$9!O`````!F9F:000^VW$AC +MPTB-!,!(P>`'@+P%Q%<``/UT&4B-O`6\5P``N@@```!,B>[H`````(3`=0]! +M@\0!1#AE!'?$N_\```")V$B#Q`A;74%<05W#9I!32(G[Z`````"Z"0```#S_ +M=!,/ML!(C03`2,'@!P^VE`-F5P``B=!;PV9F9I!F9I!(@^P(28GR28G11(G" +M2(G^3(V'8$$``+@`````9F9FD$+&!```2(/``4@]D````'7OQH9A00``$\:& +M8$$``$`/ML:(AF9!``"(EF=!``"(CFE!``!(QX8`0@```````$B)OOA!``!) +MBT%<2(F&\$$``$B!QF!!``!,B=?H`````$B#Q`C#9F9FD&9F9I!F9I!!54%4 +M55-(@^P(28GU28G43(G-08G)1(G#2(GX28GZN@$```!!B=-!B="`N+M"```! +M#X7N````2&/22(T$DDB-!$)(P>`$3`'02(V0`$(``,9""P!,B9#X00``#[9* +M"DACP4B-%(!(C1102,'B!$F-E!)@00``N`````!F9I!FD,8$$`!(@\`!2#V0 +M````=?!(8\%(C32`2(TT<$C!Y@1*C1062(V*8$$``,9!`9#&@F!!``!`#[;' +MB$$&B)IG00``1(A)"4B+10!)B80R<$$``$ECP$B-%(!(C1102,'B!$J-!!)( +MQX``0@```````$B)N/A!``!)BT0D7$F)A!+P00``00^VPTB-%(!(C1102,'B +M!$F-M!)@00``3(GOZ`````#K%X/"`4@%L````(/Z(`^%[?[__[@!````2(/$ +M"%M=05Q!7<-F9I!F9I!F9I!(@^P(28GS08G22(GZ28GXN`$```")QH"ZNT(` +M``$/A>$```!(F$B-%(!(C1102,'B!$F-A!``0@``1(A0"(A("<9`"P!$#[9( +M"DECP4B-%(!(C1102,'B!$F-E!!@00``N`````#&!!``2(/``4@]D````'7P +M26/12(T$DDB-!$)(P>`$3`'`2(V08$$``,9"`1#&@&!!``!`B$H)2&/&2(T, +M@$B-#$A(P>$$00^VA`@*0@``2(T4@$B-%%!(P>($2HT$`DC'@`!"```````` +M2(FX^$$``$$/ML)(C03`2,'@!TF+A`"\5P``28F$"/!!``!)C;008$$``$R) +MW^@`````ZQ6#P`%(@<*P````@_@@#X7]_O__L`%(@\0(PY!(@^P(28GQB=!( +MB?[&APM"````3(V'8$$``+D`````D$+&!`$`2(/!`4B!^9````!U[L:&84$` +M``'&AF!!``!`2,>&`$(```````!(B;[X00``#[;`2(T$P$C!X`=(BX0&O%<` +M`$B)AO!!``!(@<9@00``3(G/Z`````!(@\0(PTB#[`A)B?&)T$B)_L:'"T(` +M``!,C8=@00``N0````"00L8$`0!(@\$!2('YD````'7NQH9A00```,:&8$$` +M`$!(QX8`0@```````$B)OOA!```/ML!(C03`2,'@!TB+A`:\5P``2(F&\$$` +M`$B!QF!!``!,B<_H`````$B#Q`C#05=!5D%505154TB#[#A(B7PD&$B)="00 +M08G51(A$)`])B?Q%#[;U26/&2(T$P$C!X`>`O`?$5P``_0^$Q@@``(#Y$`^$ +MA0(``(#Y$'<7A,D/A)T```"`^0$/A:<(``"0Z08!``"`^>)T&X#Y_V9FD'0I +M@/F0#X6+"```9F:09I#IR`8``+D`````@'\$`&:0#X7<!P``Z00(``!)8\9( +MC03`2,'@!\:$!\17``#_@+\+0@```74E1(GR2(MT)!!(BWPD&.@`````A<`/ +MA34(``!!@$0D!@'I*@@``$ECQL9$!P<!2(M4)!!(B53'$.D3"```@+\+0@`` +M`7582(V/8$$``$ECQDB-!,!(P>`'2`'X#[91"8B08E<``$@%P%<```^V40J# +MX@&(4`7&0`0`1(GR2(MT)!!(BWPD&.@`````A<`/A;T'``!!@$0D!@'IL@<` +M`$ECQL9$!P<!2(M,)!!(B4S'$.F;!P``26/&2(T$P$C!X`=(C30X#[:7DD$` +M`(B6LE<```^WEY!!``!FB90'L%<``$B+EXA!``!(B90'H%<``$B+EVQ!``!( +MB90'<%<``$B-C`>`5P``2(N7=$$``$B)$4B+EWQ!``!(B5$(BY>$00``B90' +MF%<``,:&Q%<```&`?P8?#X07!P``NP````!(C:Y@5P``3(VNL%<``.M)#[;+ +M1(GR2(MT)!!(BWPD&.@`````A<!T%4ECQDB-!,!(P>`'08B<!+-7``#K((/# +M`4&`1"0&`3A=`@]%PT&(10-!@'PD!A]T!3I=`G*R0<:$)`M"```!00^V="0$ +M0(3V#X2<!@``N@````!!@'PD!P%T%^M#9F9FD&9FD`^VT4ACPD&`?`0'`74S +M2&/"0<9$!`?_28MTQ!!!N0````!!N`````"Y_P```$B+?"08Z`````#I2@8` +M`+D`````@\$!0#CQ=;?I.`8``$V)STF-01A(B40D($B-="0P28M!&$B)1"0P +M26/&2(T$P$C!X`=(C2PX2(V%P%<``,9`!!!!]D$,<`^$0@,``$B+E<A7``!( +MA=)T<0^V6`9(C7I<N@@```#H`````(3`=5M!]D</#W142(N%R%<``$B%P'1( +M2(G%@'UE`'0_#[;;B=I(B>Y,B>?H`````$R+3"0@1`^WP(G92(GJ2(MT)!!( +MBWPD&.@`````#[9=9DB+16A(A<!T!4B)Q>N[00^V3P_VP0T/A.L```!)8\9( +MC13`2(G02,'@!T$/MK0$8%<``$"`_A\/A\H```#VP0AT%T`/ML9(C0302,'@ +M!$'&A`3@60``!NL<0`^VUDECQDB-!,!(C03"2,'@!$'&A`3@60``!T`/ML9) +M8_9(C33V2(T4\$C!X@1)C;P4X%D``,9'`0!!#[9'#XA'`TB+1"0P28F$%.A9 +M``!!#[9'"8A'`D$/ME<-@^(/2,'F!TP!YDB-CF!7```/MD$&.,(/1]"#X@\/ +MMD<$@^#P"="(1P1!#[97*8/B#P^V208XR@]'T<'B!(/@#PG0B$<$@(9@5P`` +M`>G,`0``]L$"#X3#`0``2(UT)#!,B>?H`````(G!//\/A6(!``!!#[9,)`2$ +MR70]00^VA"3$5P``//]T,+H`````//UU'NLE#[;"2(T$P$C!X`=!#[:$!,17 +M```\_W02//UT#H/"`3C*==WK!;H`````#[;"2(T$P$C!X`=)C8P$8%<``+@` +M````Q@0(`$B#P`%(@_AD=?)$#[;226/22(T4TDC!X@=*C3PB00^VQ4B-!,!( +MP>`'28V$!&!7``!(B8?(5P``38V$%+!7``!)8]9(C1322,'B!TF+A!2\5P`` +M28E`!$B+3"002(F/V%D``$P!XDB+@M!7``!(B8?05P``3(V/P%<``$'&003_ +M2(VW8%<```^V3@=!#[9'"8B$#VA7``"`1@<!00^V1PV#X`\/MI)F5P``.-`/ +M1\*(1@9(BT0D,$F)0`Q!#[9'#XA&`P^V1"0/08A!!D$/MD0D!4$Z1"0$=09! +MQD0D!0!!@$0D!0%)8\)!QD0$!P%(BU0D$$F)5,00ZTI)8\9(C03`2,'@!P^V +MT4B-%-)(P>('28V4%&!7``!).90$R%<``'0B#[;!2(T$P$C!X`=,`>`/MG(' +M00^V3PF(C#!H5P``@$('`4$/ME<)1(GV3(GGZ`````!)8\9(C03`2,'@!T&` +MO`2S5P````^$H````$&`?"0&'W5CZ8`"``!!QD<$$`^V2P-$B?)(BW0D$$B+ +M?"08Z`````"%P`^%70(``$&`1"0&`0^V2P,/ML&#P`$/ME4".=!U#\9#`P#I +M/`(``&9FD&9FD(U!`8A#`T&`?"0&'P^$)`(``.LC26/&2(T$P$C!X`=,`>!( +MC9BP5P``2(VH8%<``$R-N,!7```/MD,#.D4"#X)R____Z>T!``!!@'PD!@`/ +MA>$!``!!N0````!!N`````"YD````$2)\DB+="002(M\)!CH`````.FY`0`` +M28G]0;\`````2(M,)!!).4T@#X6#````1(GX2&G`4!```$F-7`0@O0````!$ +MB?A(:<!0$```2(D$)(![+/]U2D&`?"0&'P^$;0$``(GH2,'@!4B+%"1(C400 +M0`^V2R!(BU,838U,!`1$#[=#(DB+="002(M\)!CH`````(7`=0I!@$0D!@'& +M0RSP2(/%`4B#PR!(@?V"````=9])@\<!28'%4!```$F#_P0/A5G___]!@'PD +M!@`/A?T```!!#[9T)`1`A/8/A,L```"Z`````$&`?"0'`700ZSP/MM%(8\)! +M@'P$!P%U,TACPD'&1`0'_TF+=,000;D`````0;@`````N?\```!(BWPD&.@` +M````Z:,```"Y`````(/!`4`X\76WZW$/ML%(C03`2,'@!TF-E`3`5P``#[9" +M!#S]=`@\_W0$QD($_H/!`4$X3"0$=]-)8\9(C03`2,'@!TF+K`305P``NP`` +M``!"@'PC*`%U$D+&1",H`$J+=",@2(M\)!C_U4B!PU`0``!(@?M`00``="7K +MU$&Y`````$&X`````+GB````1(GR2(MT)!!(BWPD&.@`````2(/$.%M=05Q! +M74%>05_#9F9FD&9F9I!F9I!(@^P82(D<)$B);"0(3(ED)!!)B?Q(B?5(BYZ8 +M````@'L&``^$1P$``$B-MI````!(B=_H`````(G!//\/A"X!``!(B>X/MD4! +M/`%T6CP!<AH\$`^$B@```#R09F:09I`/A0H!``#IQ@```("["T(````/A?@` +M``#&@PM"```!@&L&`0^VT4&Y`````$&X`````+D`````3(GF2(G?Z`````#I +MR0```("["T(````/A;P```#&@PM"```!@&L&`0^VT4&Y`````$&X`````+D! +M````3(GF2(G?Z`````#IC0```+H`````.HP:N$(``'4/#[:$&KE"```Z1@ET +M$F:02('"L````$B!^E`5``!UV(!K!@$/MM%)B?%$#[9&";D0````3(GF2(G? +MZ`````#K/P^VA:H```!(C12`2(T44$C!X@3&A!,+0@```8!K!@$/MM%!N0`` +M``!!N`````"YD````$R)YDB)W^@`````D$B+'"1(BVPD"$R+9"002(/$&,-F +M9F:09F:09F:09F:008G0B?*%]G042(GY2(G0D,8!`$B#P0%(@^@!=?.)-TB! +MZF!7``!(N(_C.([C.([C2/?B2,'J"D$XT$$/0M"(5P2$TG0KN@````!F9I!F +M9I`/ML+&1`<'_TB-!,!(P>`'QH0'Q%<``/V#P@$X5P1WX,9'!@#&1P4`2(GX +MN@````#&@`M"```!B)`*0@``@\(!2`6P````@_H@=>7SPV9FD$B)^8!_!``/ +MA)D```"_`````$0/ML=)8\!(C03`2,'@!T@YM`'860``=6ZX`````$`XO`BX +M0@``=0C&A`B[0@```4@%L````$@]4!4``'7@26/`2(T$P$C!X`=(QX0!V%D` +M``````!(C90!8%<``+@`````Q@00`$B#P`%(@_AD=?))8\!(C03`2,'@!\:$ +M`<17``#]@&D%`8/'`4`X>00/AVS___](B<]!N`````!(.7<@=3!(QT<@```` +M`,9'*`!)8\!(:<!0$```2(U$`2"Z`````,9`+`"#P@%(@\`@@/J"=?!!@\`! +M2(''4!```$&#^`1UN?/#9F9FD&9F9I!!54%455-(@^P(2(G]2(GW28G438G% +M08G(2(GK#[9%!3I%!'4$QD4%`$0/MEL%2(G>28G9N`````!!B<*)PDF+22!( +M.?EU2TB82&G`4!```,9$`R@!#[9+!$&[`````(3)=&1!NP````!(.;[860`` +M=0X/MH;$5P``@\`#/`%V1T&#PP%(@<:`!```03C+=#?KUTB%R7492&/"2&G` +M4!```$@!V$B)>"#&0"@!ZQEFD$&#P@&#P`%)@<%0$```@_@$#X5R____00^V +MPDAIP%`0``!(C40#,+D`````9F9FD,8$`0!(@\$!2('Y`A```'7O10^VTTEC +MPDB)?,,000^VPTB-!,!(P>`'2(V$`V!7``!FN0``Q@0!`$B#P0%(@_ED=?)) +M8\)(C03`2,'@!TB-C`/85P``N`````!F9I!FD,8$"`!(@\`!2#T``@``=?!) +M8\)(C03`2,'@!TB-#!A(B;G860``3(FIT%<``,:!Q%<``/](QX'(5P`````` +M`$F+%"1(B90#O%<``$2(@697``!!N0````!!N`````"Y_P```$2)TDB)_DB) +M[^@`````@$,%`4B#Q`A;74%<05W#2(L'3(L`#[9P0T"$]G1'#[97#;D````` +M]L(!=`WK-Y!(B=!(T_BH`74(@\$!0#CQ=>Z`^0-V)$B-!(T`````)?P#``!) +MC80`T`$``(L`B04`````ZR*Y`````$B-!(T`````)?P#``!)C80`T`$``(L` +MB04`````P>@4@^`!PY!(BP=$#[9`0T&Y"@```$6$P'1*#[9_#4B)PKX````` +M0;D*````N0````!F9I!F9I!(B?A(T_BH`704#[:"ZA(``(/@`X/`"$$XP40/ +M1\B#Q@&#P0%(@\)H1#C&==-!#[;!PV9F9I!F9F:09F:09F:02(L'1`^V0$-! +MN0@```!%A,!T2@^V?PU(B<*^`````$&Y"````+D`````9F:09F:02(GX2-/X +MJ`%T%`^V@NH2``"#X`.#P`A!.,%$#T+(@\8!@\$!2(/":$0XQG7300^VP<-F +M9F:09F9FD&9FD&9FD`^V!\#H!(/@!P^V=P*)PH#.`D#VQ@0/1<(/MD\#B<*! +MR@```@#VP00/1<*)PH#."$#VQ@@/1<*)PH'*```(`/;!"`]%PHG"@,X$0/;& +M`@]%PHG"@<H```0`]L$"#T7"#[97%,'B&`G0PV9F9I!F9I#H`````//#9F:0 +M9F:09F:0BX<0"0``)?___P"Z`````#U0`9,`=1D/MH<3"0``P.@$/`P/E,`/ +MMM!F9F:09F:0B=##9F9FD&9FD&9FD&9FD(7V?D(/M@>$P'0$/"!U,4B)^KD` +M````ZQ=F9F:09F:0#[9"`4B#P@&$P'0$/"!U$(/!`3GQ=>GK#69F9I!F9I"X +M`````,.X`0```&9FD&:0PV9F9I!F9F:09F9FD&9FD`^V1P,/ME<"P>(("=#! +MX!`/MD\!#[87P>(("=$)R,.008G0A=)T);D`````9F9FD`^V%P^V1P&(!HA6 +M`4B#Q@)(@\<"@\$!1#G!=>3SPV:02(/L"$F)\`^W1B"Z_P```&8]A0!W"P^W +MP`^VE`=@"```#[?22(T4TDC!X@5(`Y=@"0``2(NW"!$```^V0E#!X`A(F$B- +MA`9,"```BPB)#0````"!X?\````/MD)0P>`(2)A(C;0&1`@``(L&B04````` +MP>`("<B)@A`!``!FQX(,`0````!,B<;H`````$B#Q`C#9F9FD&9FD&9FD&9F +MD$B#["A(B5PD"$B);"003(ED)!A,B6PD($F)_4&)]$B++T"`_@-V.4J-'.4` +M````@>/X!P``2(V$'3`"``#'``P```"_$"<``.@`````2(V$'30"``"+.(D] +M`````.LWD$J-'.4`````@>/X!P``2(V$*U`"``#'``P```"_$"<``.@````` +M2(V<*U0"``"+.XD]`````$$/MO1(8\9(C11`2(T4D$F-E-6P$@``#[9*$8/A +M_(A*$8GX)0``/P`]```0`'4+B<B#R`*(0A'K&9!(8\9(C11`2(T4D(G(@\@! +M08B$U<$2``!(BUPD"$B+;"003(MD)!A,BVPD($B#Q"C#9F9FD&9F9I!F9F:0 +M9F:005=!5D%505154TB#[!A)B?Y,BS])BP?&1DD`QD9(!<9&2P9(B7Y0N0`` +M``"]`````$B-D``"``!(B50D$$@%!`(``$B)1"0(ZQ9F9I!F9I!!#[9C3 +M^*@!=0J#P0&003I/0W+J@/D#=GI(C1S-`````('C^`<``$R+;"0020'=0<=% +M`"P```"_$"<``.@`````2`-<)`A$BR-$B24`````0<=%`"0```"_$"<``.@` +M````BP.)!0````#!X`A!@>3_````00G$0<=%`"````"_$"<``.@`````BQN) +M'0````#K>$B-',T`````@>/X!P``3(ML)!!)`=U!QT4`+````+\0)P``Z``` +M``!(`UPD"$2+(T2))0````!!QT4`)````+\0)P``Z`````"+`XD%`````,'@ +M"$&!Y/\```!!"<1!QT4`(````+\0)P``Z`````"+&XD=`````$&!_`$!:99U +M&D&`3@P&B=C!Z!`\4`^4P`^VP.M(9F:09F:008'\`0$``'4/B=C!Z!`\4`^4 +MP`^VP.LJOX@3``#H`````(/%`4"`_01W"KD`````Z:O^__^)V,'H$#Q0#Y3` +M#[;`2(/$&%M=05Q!74%>05_#9F9FD&9F9I!F9F:09F:0055!5%532(/L"$B) +M_4&)]$B+AX@```!,BRAF@[\,`0```'0PB?._Z`,``.@`````187D=`6#^P%V +M&DR)[V9FD.@`````9H.]#`$```!T!8/K`NO22(/$"%M=05Q!7<.02(/L.$B) +M7"0(2(EL)!!,B60D&$R);"0@3(ET)"A,B7PD,$F)_(G+08GV08G518G'2(N' +MB````$B+*$B)[^@`````2(G&QD`XX<9`.0'&0#H2N`\```!%A/9U!D$/MD0D +M1XA&.T2(;CQ,B>H/ML:(1CT/ML>(1CZ)V,'H$(A&/XG8P>@8B$9`B%Y!00^W +M1"1`9HE&($B);BC'1C0`````2,=&2`````!%A/](Q\``````2,?"`````$@/ +M1<)(B8:@````2(GOZ`````!(BUPD"$B+;"003(MD)!A,BVPD($R+="0H3(M\ +M)#!(@\0XPV:02(/L*$B)'"1(B6PD"$R)9"003(EL)!A,B70D($F)_(G+08GV +M08G52(N'B````$B+*$B)[^@`````2(G&QD`XX<9`.0'&0#H2N`\```!%A/9U +M!D$/MD0D1XA&.T2(;CQ,B>H/ML:(1CT/ML>(1CZ)V,'H$(A&/XG8P>@8B$9` +MB%Y!00^W1"1`9HE&($B);BC'1C0`````2,=&2`````!(QX:@`````````$B) +M[^@`````2(L<)$B+;"0(3(MD)!!,BVPD&$R+="0@2(/$*,-FD%-(B?M!B<I! +MB=%(A?\/A`$!``!,BP=-A<`/A/4```!!#[9X0X7_?E=(BX.(````#[90#;D` +M````]L(!=`WK0)!(B=!(T_BH`74'@\$!.?EU[X/Y`WXN28L`2`70`0``C12- +M`````$ACTD@!T(L`B04`````P>@4@_`!@^`!ZRRY`````$F+`$@%T`$``(T4 +MC0````!(8])(`="+`(D%`````,'H%(/P`8/@`83`=66`NQP!````=0:`>T(` +M=58/MT-`08"\`&`(``#_=$?&0T(E9L>##`$```$`00^WT4`/MO9!N`$```!$ +MB=%(B=_H`````+X%````2(G?Z`````#&0T(`9H.[#`$````/E,`/ML#K!;@` +M````6\-F9I!FD$B#["A(B5PD"$B);"003(ED)!A,B6PD($B)_4&)]4&)U$B+ +MAX@```!(BQA(B=_H`````$B)QL9`..'&0#D!QD`Z$;@/````183M=00/MD5' +MB$8[1(AF/$R)X@^VQHA&/0^W14!FB48@2(E>*,=&-`````!(QT9(`````$C' +MAJ``````````2(G?Z`````!(BUPD"$B+;"003(MD)!A,BVPD($B#Q"C#9F:0 +M9F:09F:055-(@^P(2(G[2(G-08G12(7_#X0&`0``3(L'387`#X3Z````00^V +M>$.%_WY62(N#B`````^V4`VY`````/;"`70,ZS](B=!(T_BH`74'@\$!.<]U +M[X/Y`WXN28L`2`70`0``C12-`````$ACTD@!T(L`B04`````P>@4@_`!@^`! +MZRRY`````$F+`$@%T`$``(T4C0````!(8])(`="+`(D%`````,'H%(/P`8/@ +M`83`=6N`NQP!````=0:`>T(`=5P/MT-`08"\`&`(``#_=$W&0T(E9L>##`$` +M``$`00^WT4`/MO:Y`0```$B)W^@`````O@4```!(B=_H`````,9#0@!F@[L, +M`0```'40BX,0`0``B44`N`$```#K!;@`````2(/$"%M=PV9FD&9FD$B#["A( +MB1PD2(EL)`A,B60D$$R);"083(ET)"!(B?U!B?5!B=1!B<Y(BX>(````2(L8 +M2(G?Z`````!(B<;&0#CAQD`Y`<9`.A&X#P```$6$[74$#[9%1XA&.T2(9CQ, +MB>(/ML:(1CT/MT5`9HE&($B)7BC'1C0`````2,=&2`````!%A/9(Q\`````` +M2,?"`````$@/1<)(B8:@````2(G?Z`````!(BQPD2(ML)`A,BV0D$$R+;"08 +M3(MT)"!(@\0HPV9F9I!F9I!F9I!F9I!(@^PH2(E<)`A(B6PD$$R)9"083(EL +M)"!(B?5!B=1!B<U(BQ](B=_H`````$B)PDB%P'40QH7I`````<9%2@/IE``` +M`,9`..'&0#D!08#\`1G`]]"#P`*(0CI%A.UU4;@`````2(-]8`!T!P^VA8$` +M``"(0CL/MT4X9HE"($B)6BC'0C0`````2,="2`````!(Q\``````2(F"H``` +M`$B)UDB)W^@`````ZRUF9I!FD,9".P\/MT4X9HE"($B)6BC'0C0`````2,=" +M2`````!(Q\``````Z[](BUPD"$B+;"003(MD)!A,BVPD($B#Q"C#9F9FD&9F +M9I!F9F:09F:005=!5D%505154TB#[#B)]4F)U$B+#XT4[0````"-0N")P$B- +MG`@@`@``2(D<)$B-A`@D`@``2(E$)`B)TDR-O`H``@``3(VL"@0"``"[```` +M`$R-="00@_T#=B6-@QP!``!(BQ0DB0*_$"<``.@`````2(M4)`B+`HD%```` +M`.L=C8,<`0``08D'OQ`G``#H`````$&+10")!0````!"B00S2(/#!$B#^QQU +MJTB+1"0028D$)$B+1"0828E$)`A(BT0D($F)1"00BT0D*$&)1"082(/$.%M= +M05Q!74%>05_#9F9FD&9F9I!F9F:09F:005=!5D%505154TB#[#B)]4F)U$B+ +M#XT4[0````"-0N")P$B-G`@@`@``2(D<)$B-A`@D`@``2(E$)`B)TDR-O`H` +M`@``3(VL"@0"``"[`````$R-="00@_T#=B6-@P`!``!(BQ0DB0*_$"<``.@` +M````2(M4)`B+`HD%`````.L=C8,``0``08D'OQ`G``#H`````$&+10")!0`` +M``!"B00S2(/#!$B#^QQUJTB+1"0028D$)$B+1"0828E$)`A(BT0D($F)1"00 +MBT0D*$&)1"082(/$.%M=05Q!74%>05_#9F9FD&9F9I!F9F:09F:005=!5D%5 +M05154TB#[#A)B?Y`B'0D"TR+/T0/MNY)8\5(C11`2(T4D$B-%-=(C8*P$@`` +M0(AP$$B)NK@2``#&0!(`1(GNZ`````!(C6PD$$B)Z$B)ZL8``$B#P`%(B=-, MC60D,$PYX'7L#[9$)`N)1"0,B<9,B??H`````$B)W^@`````26/52(T,4DB- -M#(I(P>$#2HT4,8F"R!(``$B+0PQ)B80.S!(``(!\)`L#=CQ"C02M`````$B8 -M28V$!]`!``"+`(D%`````(F"Y!(``$*-!.T`````2)A)C80'@`$``(L(B0T` +M#(I(P>$#2HT4,8F"T!(``$B+0PQ)B80.U!(``(!\)`L#=CQ"C02M`````$B8 +M28V$!]`!``"+`(D%`````(F"Z!(``$*-!.T`````2)A)C80'@`$``(L(B0T` M````ZT="C02M`````$B828V$!]`!``"+"(D-`````$ECQ4B-%$!(C12008F, -MUN02``!"C03M`````$B828V$!X`!``"+"(D-`````$ECQ4B-%$!(C12028T4 -MUHF*Z!(``$B-@M`2``#V0!80#X0\`0``]D`0`G149F:09F:0QD4``$B#Q0%, -M.>5U\TB-7"002(G:BW0D#$R)]^@`````2(G?Z`````!)8]5(C0Q22(T,BDC! -MX0-!B80.U!(``$B+0PQ)B80.V!(``.L726/%2(T40$B-%)!!QX36U!(```$` -M`@"`?"0+`W8U0HT<[0````!(8]M*C80[,`(``,<`&````+\0)P``Z`````!* -MC9P[-`(``(LSB34`````ZS-"C1SM`````$ACVTJ-A#M0`@``QP`8````OQ`G -M``#H`````$J-G#M4`@``BS.)-0````!)8\5(C11`2(T4D(GQ@>'____?B?`- -M````($'WA-;D$@`````#`(G*#T70@'PD"P-V%D*-!.T`````2)A)C80'-`(` -M`(D0ZQ1"C03M`````$B828V$!U0"``")$$B#Q#A;74%<05U!7D%?PY!!54%4 -M55-(@^P(2(G]28GU#[<&9H7`>0LE`!\``,'X"(A'24B-O80```!)C54428M% -M%$B)A80```!(BT((2(E'"(M"$(E'$$R-I<````!)BT4N2(F%P````$B-G9@` -M``!)C54V28M%-DB)A9@```!(BT((2(E#"$B+0A!(B4,02(M"&$B)0QA(BT(@ -M2(E#(+H*````2(G^Z#3P__^Z!````$R)YDR)Y^@D\/__NA0```!(B=Y(B=_H -M%/#__V;'16@``&;'16H``&9!@[VR`0```0^4PL'B`P^V14R#X/<)T(A%3$'V -MA:<````$=`9FQT5H`0!!]H6D`````70D9H--:`)!]H6J`````70%9H--:@%! -M]H6H`````70&9H%-:``!0?:%I````"!T%6:#36@$0?:%J@```"!T!F:#36H" -MD$'VA:0```!`=!9F@4UH@`!!]H6J````0'0&9H--:@B0QH6"`````D'VA9D` -M```!=#(/MT5HJ`%T#(/("&:)16AF@TUJ$$$/MH66````@^`?@\`!/""Z'P`` -M``]$PHB%@@```$'VA9@````(=`9F@4UH``)!]H68````!'0%9H--:"!!]H68 -M`````G0%9H--:!!!]H6H````('050?:%K@```"!T"V:#36A`9F:09F:0]D5H -M`70-28N%R````$B)17CK"$&+17A(B45X2(-M>`%!]D5J`G0:00^WA8````"H -M#W0.9H/X`AG`@\`$B$5LZP3&16P"QD5M_T$/MU5^#[?"J`1T"\9%;0+K&V9F -MD&:0J`)T!L9%;0'K#/;"`69FD'0$QD5M`,9%;O]!]D5J!'0?N0````!!#[>% -ML````$C3^*@!=`.(36Z#P0&#^0=UYKX``@``3(GOZ`````")A<P```"X`0`` -M`$B#Q`A;74%<05W#9F9FD&9FD&9FD&9FD$%7059!54%455-(@^PX2(E\)!!` -MB'0D#TB+!TB)1"0P0`^VUHE4)!P/MG="2,?'`````+@`````Z`````!(BTPD -M$(!Y0J`/A$@&``"+1"0<P>`#2)A(BU0D,$B-E`(P`@``2(E4)"!(BTPD,$R- -MK`$T`@``2(V4`5`"``!(B50D*$B-K`%4`@``0;\`````0;X`````0;P````` -M9F:09I!!@/P!="I!@/P!<A9!@/P"=2Y!OR`!``!!OB0!``!FD.L>0;\8`0`` -M0;X<`0``ZQ!!OQP!``!!OB`!``!F9F:01(GBBW0D'$C'QP````"X`````.@` -M````@'PD#P,/AMT```!(BTPD($2).;\0)P``Z`````!!BUT`B1T`````B=I$ -MB?Y(Q\<`````N`````#H`````('C__]!\('+```T"XG:1(G^2,?'`````+@` -M````Z`````!!B5T`08M5`(D5`````$2)_DC'QP````"X`````.@`````2(M$ -M)"!$B3"_$"<``.@`````08M=`(D=`````(G:1(GV2,?'`````+@`````Z``` -M``"`YS^`S\")VD2)]DC'QP````"X`````.@`````08E=`$&+50")%0````#I -MT@```&9FD&9FD$B+5"0H1(DZOQ`G``#H`````(M=`(D=`````(G:1(G^2,?' -M`````+@`````Z`````"!X___0?"!RP``-`N)VD2)_DC'QP````"X`````.@` -M````B5T`BU4`B14`````1(G^2,?'`````+@`````Z`````!(BTPD*$2),;\0 -M)P``Z`````"+70")'0````")VD2)]DC'QP````"X`````.@`````@.<_@,_` -MB=I$B?9(Q\<`````N`````#H`````(E=`(M5`(D5`````$2)]DC'QP````"X -M`````.@`````08/$`4&#_`,/A=+]__](BT0D$(!X0J`/A+<#``"+="0<2,?' -M`````+@`````Z`````"`?"0/`W8A2(M4)"#'`@P!``"_$"<``.@`````08M= -M`(D=`````.L>2(M,)"C'`0P!``"_$"<``.@`````BUT`B1T`````B=J^#`$` -M`$C'QP````"X`````.@`````B=BP`(G"@,KW#/Q(BTPD$(!Y0@&)TP]%V(G: -MO@P!``!(Q\<`````N`````#H`````(!\)`\##X:!`0``08E=`$&+50")%0`` -M``"^#`$``$C'QP````"X`````.@`````2(M$)"#'`*`!``"_$"<``.@````` -M08M=`(D=`````(G:OJ`!``!(Q\<`````N`````#H`````('C_O_[_XG:OJ`! -M``!(Q\<`````N`````#H`````$&)70!!BU4`B14`````OJ`!``!(Q\<````` -MN`````#H`````$B+5"0@QP(0`0``OQ`G``#H`````$&+70")'0````")VKX0 -M`0``2,?'`````+@`````Z`````"!XP#P__^!R\`/``")VKX0`0``2,?'```` -M`+@`````Z`````!!B5T`08M5`(D5`````+X0`0``2,?'`````+@`````Z``` -M``!(BTPD(,<!H`$``+\0)P``Z`````!!BUT`B1T`````B=J^H`$``$C'QP`` -M``"X`````.@`````@^/WB=J^H`$``$C'QP````"X`````.@`````08E=`$&+ -M50")%0````#I<0$``(E=`(M5`(D5`````+X,`0``2,?'`````+@`````Z``` -M``!(BT0D*,<`H`$``+\0)P``Z`````"+70")'0````")VKZ@`0``2,?'```` -M`+@`````Z`````"!X_[_^_^)VKZ@`0``2,?'`````+@`````Z`````")70"+ -M50")%0````"^H`$``$C'QP````"X`````.@`````2(M4)"C'`A`!``"_$"<` -M`.@`````BUT`B1T`````B=J^$`$``$C'QP````"X`````.@`````@>,`\/__ -M@<O`#P``B=J^$`$``$C'QP````"X`````.@`````B5T`BU4`B14`````OA`! -M``!(Q\<`````N`````#H`````$B+3"0HQP&@`0``OQ`G``#H`````(M=`(D= -M`````(G:OJ`!``!(Q\<`````N`````#H`````(/C]XG:OJ`!``!(Q\<````` -MN`````#H`````(E=`(M5`(D5`````+Z@`0``2,?'`````+@`````Z`````"` -M?"0/`P^&B````(M<)!S!XP-(8]M(BU0D,$B-A!,P`@``QP`(````OQ`G``#H -M`````$B+3"0P2(V<"S0"``!$BR-$B24`````1(GBO@@```!(Q\<`````N``` -M``#H`````$&#Y(]!@\QP1(GBO@@```!(Q\<`````N`````#H`````$2)(XL3 -MB14`````Z8,```"+7"0<P>,#2&/;2(M4)#!(C8034`(``,<`"````+\0)P`` -MZ`````!(BTPD,$B-G`M4`@``1(LC1(DE`````$2)XKX(````2,?'`````+@` -M````Z`````!!@^2/08/,<$2)XKX(````2,?'`````+@`````Z`````!$B2.+ -M$XD5`````+X(````2,?'`````+@`````Z`````!(@\0X6UU!7$%=05Y!7\.0 -M2(/L*$B)'"1(B6PD"$R)9"003(EL)!A,B70D($F)_4F)]DR+)[N`____ZPEF -M9F:0@/N%=T,/ML-!#[:L!&`(``!`@/W_=#%`#[;%2&G`R`\``$B)QTD#O"2( -M"0``3#EO"'45N@@```!,B?;H`````(3`=`2)Z.L/@\,!@/N!9I!VKKC_____ -M#[;`2(L<)$B+;"0(3(MD)!!,BVPD&$R+="0@2(/$*,-F9I!F9I!F9I!!5T%6 -M055!5%532(/L2$F)_$B+!X!_0P`/A"H#``#'1"1$`````$B-D``"``!(B50D -M$$@%!`(``$B)1"0(9F:0#[9,)$2(3"1##[;!B40D-$B82(T40$B-%)!)C334 -M2(V6T!(``/9"%A`/A,$"``"X`0````^V3"0T2-/@"$(12(NVP!(``$B)="0X -M]D(0`@^$(`$```^V1"1#C6@!03AL)$,/A@T!``!(8T0D-$B-%$!(C1202,'B -M`TB)5"0H3`'B2(E4)"!(BU0D*$F-E!38$@``2(E4)!A$#[;M26/%2(T40$B- -M%)!(C1S5`````$Z-/"--C;?0$@``0?9&%A`/A*(```!(BTPD(/>!U!(````` -M#@`/A(T```!)C;0<V!(``+H(````2(M\)!CH`````(3`='))C;0<S!(``$B+ -M1"0H28V\!,P2``"Z"````.@`````A,!T3[@!````1(GI2-/@2(M4)"!(@<+0 -M$@``"D(1B$(108A&$4B#?"0X`'4.38N_P!(``$R)?"0XZQA)8\5(C11`2(T4 -MD$B+1"0X28F$U,`2``"#Q0%!.&PD0P^'(____TB#?"0X``^%SP```$R)Y^@` -M````2(E$)#A(A<`/A'$!``!(8T0D-$B-#$!(C0R(28T,S$B+5"0X2(F1P!(` -M``^V1"1#2(T40$B-%)!)C934N!(``$B+1"0X2(E0(`^V@>`2``!(BU0D.(A" -M"L9""0!,B2+&0@X`QD)8`,9"*``/MDPD0XUQ`4$X="1#=F=(8T0D-$B-%$!( -MC12028V\U-`2``!`#[;.#[9'$4C3^*@!=!A(8\%(C11`2(T4D$B+1"0X28F$ -MU,`2``"#Q@%!.'0D0W8AZ\UF9I!FD$AC1"0T2(T40$B-%)!(BTPD.$F)C-3` -M$@``2&-$)#1(C11`2(T4D$F-E-30$@``#[9"$4B+3"0XB$$-#[9J$8!\)$,# -M=BN+7"0TP>,#2&/;2(M$)!!(`=C'`#@```"_$"<``.@`````2`-<)`B)*^LO -MBUPD-,'C`TACVTB+1"002`'8QP`X````OQ`G``#H`````$@#7"0(B2MF9I!F -M9I"#1"1$`0^V1"1#@\`!03A$)$,/A_C\__](@\1(6UU!7$%=05Y!7\-F9I!F -M9I!F9I!!5T%6055!5%532(/L:$B)_4R+)\9$)%!0QD0D407&1"12!,9$)%,P -MQD0D5!'&1"15J\9$)%8`QD0D5P!!QX0D`$`!`!,@``!(BP?'@`1``0#__P`` -M2(L'QX`$0`$``````$@[O_`(```/A=0```!(C9]X%```2(V7$`D``$&X`0`` -M`+D(````O@```@#H`````(N%"`D```^VE1,)``"#Z@2-!(*(A1,)``!(B>_H -M`````(3`=0Q(BT0D4$B)A1`)``"+!0``````A1,)``"#P`&)!0`````/MH40 -M"0``B(,0"0``#[:%$0D``(B#$0D```^VA1()``"(@Q()```/MH43"0``@\`" -MB(,3"0``#[:%%`D``(B#%`D```^VA14)``"(@Q4)```/MH46"0``B(,6"0`` -M#[:%%PD``(B#%PD``$V)YTF-A"0``0``2(E$)$!!BX0D``$``(D%``````^W -MT(E4)%RH('0+)=__``")1"1<ZQB)T(/(((E$)%Q(BU0D0(D"BP*)!0````!( -MBT4`QX`$`0```````$B+10#'@!@!````````2(M%`,>`'`$```````"_D-`# -M`.@`````0<>'<`$``!@!``!!BX=T`0``B04`````@.3]@,P$B40D7$''AW`! -M```8`0``BT0D7$&)AW0!``!!QX=P`0``*`$``$''AW0!``!_?P``0<>'<`$` -M`"0!``!!BX=T`0``B04`````9K@```W_/P``B40D7$''AW`!```D`0``BT0D -M7$&)AW0!``!!QX=P`0``/`$``$''AW0!`````'H`0<>'<`$``*0!``!!QX=T -M`0``?;_O_T''AW`!``"X`0``08N'=`$``(D%`````"7__P``#0``^@")1"1< -M0<>'<`$``+@!``"+1"1<08F'=`$``$''AYP```#_````0<>'D`(``$0!``!! -MQX>4`@``!A``"$''AY`"``"T`0``0<>'E`(``%]P``!!QX>0`@``,````$&+ -MAY0"``")!0`````PY(#,,XE$)%Q!B8>4`@``@'U#``^$E0(``,=$)$@````` -M28V'4`(``$B)1"0X28V75`(``$B)5"0P2(V%$`D``$B)1"0H28V7@`$``$B) -M5"0@28V'A`$``$B)1"0828V7,`(``$B)5"0028V'-`(``$B)1"0(9F9FD&9F -MD`^V5"1(B%0D3X#Z`P^&_@```$0/MO)"C1SU`````$ACVTR+;"0020'=0<=% -M``@```"_$"<``.@`````2(M$)`A,C20#08L$)(D%`````(E$)%P-``"``$&) -M!"1(BU0D*$2)]DB)[^@`````1(GV2(GOZ`````!!QT4`1`$``+\0)P``Z``` -M``!!QP0D!A``"$''10"T`0``OQ`G``#H`````$''!"1?<```0<=%``@```"_ -M$"<``.@`````QT0D7/]4@`!!QP0D_U0``+H!````1(GV2(GOZ`````!(BT0D -M($B-%`.+`HD%`````"7___[_B0+'1"1<!0'(`$@#7"08QP,%`<@`Z?L```!F -M9F:01`^V="1/0HT<]0````!(8]M,BVPD.$D!W4''10`(````OQ`G``#H```` -M`$B+5"0P3(TD$T&+!"2)!0````")1"1<#0``@`!!B00D2(M4)"A$B?9(B>_H -M`````$2)]DB)[^@`````0<=%`$0!``"_$"<``.@`````0<<$)`80``A!QT4` -MM`$``+\0)P``Z`````!!QP0D7W```$''10`(````OQ`G``#H`````,=$)%S_ -M5(``0<<$)/]4``"Z`0```$2)]DB)[^@`````2(M$)"!(C10#BP*)!0`````E -M___^_XD"QT0D7`4!R`!(`UPD&,<#!0'(`+^@A@$`Z`````!$B?9(B>_H```` -M`(-$)$@!#[9$)$^#P`$X14,/A\[]__](B>_H`````$&+AP0!``")!0````"# -MR`*)1"1<08F'!`$``$B+5"1`BP*)!0````"#X/"#R`V)1"1<B0*+`HD%```` -M`$B+A>`0``!!B8<(`0``BX7D$```08F'#`$``$B+A1`1``!!B8<0`0``BX44 -M$0``08F'%`$``$''AR`!````````#[>%M!(``"7_#P``#0```0!!B8<@`0`` -M2(N%<!$``$&)AR0!``"+A701``!!B8<H`0``2(N%F!$``,<`_P\``$''AS0! -M````````#[>%MA(``"7_#P``#0```0!!B8<T`0``2(N%H!$``$&)AS@!``"+ -MA:01``!!B8<\`0``0<>'2`$```````#'1"1<``$``$''ATP!`````0``08N' -M!`$``(D%`````(/(64&)AP0!``#'1"1<^_\`#$''AU0!``#[_P`,0<>'7`$` -M`/__``"Z`````&9FD$ACPL>$A;@)````````QT2%;`````"#P@&#^A!UXF;' -MA;`2``#_#V;'A;(2``#_#\9%4`&X`0```$B#Q&A;74%<05U!7D%?PV9F9I!F -M9F:005=!5D%505154TB#[`A)B?Y)B?1,BR],B>_H`````$B)PTB%P'4.0<:$ -M).D````!Z;$```!,B>_H`````$B)Q4B%P'490<:$).D````!2(G>3(GOZ``` -M``#IB````$R->UC&0SCAQD,Y`<9#.@-!#[=$)#AFB4,@QH.8````"DF+!DB) -M0RC'0S0``@``2(M5$$B)4TBX`````&9FD&9FD,8$$`!(@\`!2#T``@``=?!( -MB6MX2,>#H`````````"^`````$R)_^@`````BU,T2(MU&$R)_^@`````2(G> -M3(GOZ`````!(@\0(6UU!7$%=05Y!7\-F9F:09F9FD&9FD$%6055!5%532(/L -M,$F)_4R+)P^V1PV$P`^$P@,```^V\+T`````0/;&`745N@````"#P@$/MNJ) -M\(GIT_BH`73P2&/%2(T40$B-%)!)C934P!(``(M"%*D```(`=`T-```$`"7_ -M__W_B4(42&/%2(T40$B-%)!!BX34U!(``*D```0`#X2A`@``28N<)/`(``!) -MC80D>!0``$PYXT@/1-A)C3341`^VCMH2``!$#[:&V1(```^VCM@2``!!#[94 -M)$$/MH;?$@``B40D(`^VAMX2``")1"08#[:&W1(``(E$)!`/MH;<$@``B40D -M"`^VAML2``")!"2)[DC'QP````"X`````.@`````0;@`````2&/%2(T40$B- -M%)!-C8S4V!(``$$/MH08X`@``#S_#X2$````#[;`2&G`R`\``$F)PDP#DX@) -M``!,B=9,B<^Y"````/SSI@^7P@^2P#C"=5A%#[9*!$4/MD(#00^V2@)!#[92 -M`4$/MC)!#[9"!XE$)!!!#[9"!HE$)`A!#[9"!8D$)$C'QP````"X`````.@` -M````0<9%"?],B>Y,B>?H`````.DH`@``28/``4F#^`(/A5W___],B>?H```` -M`$B)PTB%P`^$!@(``$ACQ4B-%$!(C1200?:$U-42```$=`2`2UT"2&/%2(T4 -M0$B-%)!!]H34UA(```1T!(!+71!(8\5(C11`2(T4D$'VA-35$@``"'0$@$M= -M!$ACQ4B-%$!(C1200?:$U-82```(=`2`2UT@2&/%2(T40$B-%)!!]H34U1(` -M``)T!(!+70%(8\5(C11`2(T4D$'VA-36$@```G0$@$M=",9#6`!)B=Y(8\5( -MC11`2(T4D$F+A-38$@``2(D#3(EK"$R)[^@`````B(.[````08!%*`%!@'PD -M0P!T,KD`````N@````!F9F:000^V10U(T_BH`70.#[;"B$P#<(!#6@&#P@&# -MP0%!.$PD0W?<28M-4$B-4SA)B55028U%2$B)0SA(B4M`2(D108!%6`$/MHN[ -M````28N\)+`0``!)Q\``````3(GR3(GNZ`````#IM@```*D```@`#X2K```` -M3(GGZ`````!(B<-(A<`/A)<```#&0$L&QD!*!6;'@,@``````,9`2`;&0$D` -M2,=`>```!0!(8\5(C11`2(T4D$F+A-38$@``2(F#U````$B)@\P```!,B6M0 -M3(GOZ`````"(@^H```!F@TMH$$R)[^@`````/`EV!F:!2V@``D'&10X!28M5 -M:$F)76A)C45@2(D#2(E3"$B)&DB)WDR)Y^@`````9F:09F:02(/$,%M=05Q! -M74%>PV9FD$%7059!54%455-(@^PH2(G]2(GS2(7V=!4/MD8)A,!T#3S_#X7- -M!P``Z4<!``"Y``````^VA"GF"```//]T$P^VP$B-%(!(C1202(V<U<`!``!( -M@\$!2(/Y!'770;P`````00^VA"SF"```//]T.`^VP$B-%(!(C1202,'B`TB- -MG!7``0``]H05R@$```)T#[X`````2(G?Z`````#K"$B)W^@`````28/$`4F# -M_`20=;`/MD4^9CF%B!````^%,P<``$B%VP^%E````(!]40`/A2`'``#&15$! -M9F:09F:02(NTW6`$``!(A?9T8TB+AH````!(A<!T)TC'AH``````````2,>$ -MW6`$````````2(N^D````+K______]#K,$B+AH@```!(A<!T)$C'AH@````` -M````2,>$W6`$````````2(N^D````/_09F9FD$B#PP%(@_M`#X28!@``ZX#& -M0PG_2(G>2(GOZ`````"0Z8$&``"Y`````&9FD&9FD`^VA"GF"```//\/A``! -M```/MM!(C0222(T$@DC!X`-,C;P%P`$``$&`?PG_#X3>````08!_#@`/A#D& -M``!!O`````!(C0222(T$@DC!X`-,C:P%(`(``$B-'"A-B?Y,B>_H`````$B) -MP4B+@R@"``!(B8LH`@``3(DI2(E!"$B)"(!Y2O]T;X"YZ0`````/A.(%```/ -MMD%(2(G"@^(&2(/Z!G4<J`%T/@^VD8$```!(BW%83(G_Z`````#IM@4``$B# -M^@0/A:P%``"H`69F9I`/A*`%``!(B<Y(B>_H`````.F0!0``2(G.2(GOZ``` -M``#I@`4``$&#Q`%%.&8.#X9R!0``Z57___]F9F:09F:02(/!`4B#^00/A>+^ -M__](QT0D$`````"`?5$`#X6;````NP````!(B[3=8`0```^VA"M@"```2(7V -M=&I(BXZ`````2(7)=%Y(@WY@`'57//]T+@^VT`^WPDAIP)@!``!(`X4X"0`` -M]D!+!'04@'A)`'4.#[?22(GOZ`````#K)I!(QX3=8`0```````!(QX:````` -M`````$B+OI````"Z_______12(/#`4B#^T`/A7/____&15$!Z:H$``!(BU0D -M$`^VA"KF"```//\/A(,$```/MM!(C0222(T$@DC!X`-(C8P%P`$``$B)3"0@ -M@+P%S@$````/A%D$``#&1"0?`$B-!))(C02"2,'@`TB-E`4@`@``2(D4)$R- -M-"A)B<^02(L\).@`````2(G#28N&*`(``$F)GB@"``!(BPPD2(D+2(E#"$B) -M&(![2O\/A>X#``!$#[=K.$ECQ0^VE`5@"```9HE4)`Y,BZ3%8`0``/9#3`1T -M<4V%Y'1L28.\)(``````=&%)@WPD8`!U68!C3/OV0TL$=!(/MU0D#DR)YDB) -M[^@`````ZSU)BX0D@````$ECU4C'A-5@!````````$G'A"2``````````$C' -M0T``````28N\))````"Z_____TR)YO_0]D-+!`^$5P$``,:#Z`````!!@&<, -MY_9#3`$/A.P```"`8TS^2(M30$B%TG1%@'M)`'4I]D-+!'0C#[950<'B!D0! -MZDACTDB+M?`(``"_!P```.@`````Z=T```!(B[7P"```OP$```#H`````.G' -M````387D=&5)BXPD@````$B%R718@'M)`'4;]D-+!'05#[=4)`Y,B>9(B>_H -M`````.F4````26/%2,>$Q6`$````````2<>$)(``````````2,=#0`````!) -MB[PDD````+K_____3(GF_]'K78![20!U5_9#2P1F9F:0=$T/ME5!P>(&1`'J -M2&/22(NU\`@``+\"````Z`````#K+4B+0T!(A<!T)$B+D(@```!(A=)T&$C' -M@(@`````````2(M#0$B+N)````#_TO9#3`(/A!<"``!(BU-`2(NU\`@``+\& -M````Z`````"`8TS]Z=H!``!(BT-`2(7`#X3-`0``2(.XB``````/A+\!``#& +MUN@2``!"C03M`````$B828V$!X`!``"+"(D-`````$ECQ4B-%$!(C12028T4 +MUDB-@N`2``")2`SV0`H0#X0Z`0``]H+!$@```G1/D,9%``!(@\4!3#GE=?-( +MC5PD$$B)VHMT)`Q,B??H`````$B)W^@`````26/52(T,4DB-#(I(P>$#08F$ +M#MP2``!(BT,,28F$#N`2``#K%TECQ4B-%$!(C1200<>$UMP2```!``(`@'PD +M"P-V-4*-'.T`````2&/;2HV$.S`"``#'`!@```"_$"<``.@`````2HV<.S0" +M``"+,XDU`````.LS0HT<[0````!(8]M*C80[4`(``,<`&````+\0)P``Z``` +M``!*C9P[5`(``(LSB34`````26/%2(T40$B-%)")\8'A____WXGP#0```"!! +M]X36Z!(``````P")R@]%T(!\)`L#=A9"C03M`````$B828V$!S0"``")$.L4 +M0HT$[0````!(F$F-A`=4`@``B1!(@\0X6UU!7$%=05Y!7\.0059!54%455-( +MB?U)B?9)B?4/MP9FA<!Y"R4`'P``P?@(B$=)2(V]A````$F-511)BT442(F% +MA````$B+0@A(B4<(BT(0B4<03(VEP````$F+12Y(B87`````2(V=F````$F- +M539)BT4V2(F%F````$B+0@A(B4,(2(M"$$B)0Q!(BT(82(E#&$B+0B!(B4,@ +MN@H```!(B?[H,_#__[H$````3(GF3(GGZ"/P__^Z%````$B)WDB)W^@3\/__ +M9L=%:```9L=%:@``9D&#OK(!```!#Y3"P>(##[9%3(/@]PG0B$5,0?:%IP`` +M``1T!F;'16@!`$'VA:0````!="1F@TUH`D'VA:H````!=`5F@TUJ`4'VA:@` +M```!=`9F@4UH``%!]H6D````('049H--:`1!]H6J````('0%9H--:@)!]H6D +M````0'069H%-:(``0?:%J@```$!T!F:#36H(D,:%@@````)!]H69`````70R +M#[=%:*@!=`R#R`AFB45H9H--:A!!#[:%E@```(/@'X/``3P@NA\````/1,*( +MA8(```!!]H68````"'0&9H%-:``"0?:%F`````1T!6:#36@@0?:%F`````)T +M!6:#36@00?:%J````"!T%4'VA:X````@=`MF@TUH0&9FD&9FD/9%:`%T#4F+ +MA<@```!(B45XZPA!BT5X2(E%>$B#;7@!0?9%:@)T&D$/MX6`````J`]T#F:# +M^`(9P(/`!(A%;.L$QD5L`L9%;?]!#[=5?@^WPJ@$=`O&16T"ZQMF9I!FD*@" +M=`;&16T!ZPSVP@%F9I!T!,9%;0#&16[_0?9%:@1T'[D`````00^WA;````!( +MT_BH`70#B$UN@\$!@_D'=>:^``(``$R)[^@`````B87,````0?:&I@```"!T +M&T$/MX:L````@^`@@_@!&<"#P`*(A9@!``#K!\:%F`$```"X`0```%M=05Q! +M74%>PV9FD$B#["A(B1PD2(EL)`A,B60D$$R);"083(ET)"!)B?U)B?9,BR>[ +M@/___^L)9F9FD(#[A7=##[;#00^VK`1@"```0(#]_W0Q0`^VQ4AIP,@/``!( +MB<=)`[PDB`D``$PY;PAU%;H(````3(GVZ`````"$P'0$B>CK#X/#`8#[@6:0 +M=JZX_____P^VP$B+'"1(BVPD"$R+9"003(ML)!A,BW0D($B#Q"C#9F:09F:0 +M9F:005=!5D%505154TB#[#A)B?Y(BP>`?T,`#X01`P``QT0D-`````!(C9`` +M`@``2(E4)`A(!00"``!(B00D9F9FD`^V3"0TB$PD,T0/MOE)8\=(C11`2(T4 +MD$F---;VANH2```0#X2O`@``2(V6L!(``+@!````1(GY2-/@"$(22(NVR!(` +M`$B)="0H]D(1`@^$'@$```^V1"0SC6@!03AN0P^&#`$``$ECQTB-%$!(C120 +M2,'B`TB)5"0@3`'R2(E4)!A(BU0D($F-E!;@$@``2(E4)!!$#[;M26/%2(T4 +M0$B-%)!(C1S5`````$Z-)#-!]H0DZA(``!`/A*<```!(BTPD&/>!W!(````` +M#@`/A)(```!)C;0>X!(``+H(````2(M\)!#H`````(3`='=)C;0>U!(``$B+ +M1"0@28V\!M02``"Z"````.@`````A,!T5+@!````1(GI2-/@2(M4)!A(@<*P +M$@``"D(2B$(208B$),(2``!(@WPD*`!U#TV+I"3($@``3(ED)"CK&$ECQ4B- +M%$!(C1202(M$)"A)B836R!(``(/%`4$X;D,/AR+___](@WPD*``/A<0```!, +MB??H`````$B)1"0H2(7`#X1;`0``26/'2(T,0$B-#(A)C0S.2(M4)"A(B9'( +M$@``#[9$)#-(C11`2(T4D$F-E-:X$@``2(M$)"A(B5`@#[:!P1(``$B+5"0H +MB$(*QD()`$R),L9"#@#&0E@`QD(H``^V3"0SC7$!03AV0W9=26/'2(T40$B- +M%)!)C;S6L!(``$`/MLX/MD<22-/XJ`%T&$ACP4B-%$!(C1202(M$)"A)B836 +MR!(``(/&`4$X=D-V&NO.26/'2(T40$B-%)!(BTPD*$F)C-;($@``26/'2(T4 +M0$B-%)!)C936L!(```^V0A)(BTPD*(A!#0^V:A*`?"0S`W8K0HT<_0````!( +M8]M(BT0D"$@!V,<`.````+\0)P``Z`````!(`QPDB2OK*4*-'/T`````2&/; +M2(M$)`A(`=C'`#@```"_$"<``.@`````2`,<)(DK@T0D-`$/MD0D,X/``4$X +M1D,/AQ']__](@\0X6UU!7$%=05Y!7\-FD$%7059!54%455-(@^QH2(G]3(LG +MQD0D4%#&1"11!<9$)%($QD0D4S#&1"14$<9$)%6KQD0D5@#&1"17`$''A"0` +M0`$`$R```$B+!\>`!$`!`/__``!(BP?'@`1``0``````2#N_\`@```^%U``` +M`$B-GX@4``!(C9<0"0``0;@!````N0@```"^```"`.@`````BX4("0``#[:5 +M$PD``(/J!(T$@HB%$PD``$B)[^@`````A,!U#$B+1"102(F%$`D``(L%```` +M``"%$PD``(/``8D%``````^VA1`)``"(@Q`)```/MH41"0``B(,1"0``#[:% +M$@D``(B#$@D```^VA1,)``"#P`*(@Q,)```/MH44"0``B(,4"0``#[:%%0D` +M`(B#%0D```^VA18)``"(@Q8)```/MH47"0``B(,7"0``38GG28V$)``!``!( +MB40D0$&+A"0``0``B04`````#[?0B50D7*@@=`LEW_\``(E$)%SK&(G0@\@@ +MB40D7$B+5"1`B0*+`HD%`````$B+10#'@`0!````````2(M%`,>`&`$````` +M``!(BT4`QX`<`0```````+^0T`,`Z`````!!QX=P`0``&`$``$&+AW0!``") +M!0````"`Y/V`S`2)1"1<0<>'<`$``!@!``"+1"1<08F'=`$``$''AW`!```H +M`0``0<>'=`$``']_``!!QX=P`0``)`$``$&+AW0!``")!0````!FN```#?\_ +M``")1"1<0<>'<`$``"0!``"+1"1<08F'=`$``$''AW`!```\`0``0<>'=`$` +M````>@!!QX=P`0``I`$``$''AW0!``!]O^__0<>'<`$``+@!``!!BX=T`0`` +MB04`````)?__```-``#Z`(E$)%Q!QX=P`0``N`$``(M$)%Q!B8=T`0``0<>' +MG````/\```!!QX>0`@``1`$``$''AY0"```&$``(0<>'D`(``+0!``!!QX>4 +M`@``7W```$''AY`"```P````08N'E`(``(D%`````##D@,PSB40D7$&)AY0" +M``"`?4,`#X25`@``QT0D2`````!)C8=0`@``2(E$)#A)C9=4`@``2(E4)#!( +MC840"0``2(E$)"A)C9>``0``2(E4)"!)C8>$`0``2(E$)!A)C9<P`@``2(E4 +M)!!)C8<T`@``2(E$)`AF9F:09F:0#[94)$B(5"1/@/H##X;^````1`^V\D*- +M'/4`````2&/;3(ML)!!)`=U!QT4`"````+\0)P``Z`````!(BT0D"$R-)`-! +MBP0DB04`````B40D7`T``(``08D$)$B+5"0H1(GV2(GOZ`````!$B?9(B>_H +M`````$''10!$`0``OQ`G``#H`````$''!"0&$``(0<=%`+0!``"_$"<``.@` +M````0<<$)%]P``!!QT4`"````+\0)P``Z`````#'1"1<_U2``$''!"3_5``` +MN@$```!$B?9(B>_H`````$B+1"0@2(T4`XL"B04`````)?___O^)`L=$)%P% +M`<@`2`-<)!C'`P4!R`#I^P```&9F9I!$#[9T)$]"C1SU`````$ACVTR+;"0X +M20'=0<=%``@```"_$"<``.@`````2(M4)#!,C20308L$)(D%`````(E$)%P- +M``"``$&)!"1(BU0D*$2)]DB)[^@`````1(GV2(GOZ`````!!QT4`1`$``+\0 +M)P``Z`````!!QP0D!A``"$''10"T`0``OQ`G``#H`````$''!"1?<```0<=% +M``@```"_$"<``.@`````QT0D7/]4@`!!QP0D_U0``+H!````1(GV2(GOZ``` +M``!(BT0D($B-%`.+`HD%`````"7___[_B0+'1"1<!0'(`$@#7"08QP,%`<@` +MOZ"&`0#H`````$2)]DB)[^@`````@T0D2`$/MD0D3X/``3A%0P^'SOW__TB) +M[^@`````08N'!`$``(D%`````(/(`HE$)%Q!B8<$`0``2(M4)$"+`HD%```` +M`"7P___]#0T```*)1"1<B0*+`HD%`````$B+A>`0``!!B8<(`0``BX7D$``` +M08F'#`$``$B+A1`1``!!B8<0`0``BX44$0``08F'%`$``$''AR`!```````` +M#[>%M!(``"7_#P``#0```0!!B8<@`0``2(N%<!$``$&)AR0!``"+A701``!! +MB8<H`0``2(N%F!$``,<`_P\``$''AS0!````````#[>%MA(``"7_#P``#0`` +M`0!!B8<T`0``2(N%H!$``$&)AS@!``"+A:01``!!B8<\`0``0<>'2`$````` +M``#'1"1<``$``$''ATP!`````0``08N'!`$``(D%`````(/(64&)AP0!``#' +M1"1<^_\`#$''AU0!``#[_P`,0<>'7`$``/__``"Z`````$ACPL>$A;@)```` +M````QT2%;`````"#P@&#^A!UXF;'A;`2``#_#V;'A;(2``#_#\9%4`&X`0`` +M`$B#Q&A;74%<05U!7D%?PV9F9I!F9I!!5T%6055!5%532(/L"$F)_DF)]$R+ +M+TR)[^@`````2(G#2(7`=0Y!QH0DZ0````'IL0```$R)[^@`````2(G%2(7` +M=1E!QH0DZ0````%(B=Y,B>_H`````.F(````3(U[6,9#..'&0SD!QD,Z`T$/ +MMT0D.&:)0R#&@Y@````/28L&2(E#*,=#-``"``!(BU402(E32+@`````9F:0 +M9F:0Q@00`$B#P`%(/0`"``!U\$B):WA(QX.@`````````+X`````3(G_Z``` +M``"+4S1(BW483(G_Z`````!(B=Y,B>_H`````$B#Q`A;74%<05U!7D%?PV9F +M9I!F9F:09F:0059!54%455-(@^PP28G]3(LG#[9'#83`#X3"`P``#[;PO0`` +M``!`]L8!=16Z`````(/"`0^VZHGPB>G3^*@!=/!(8\5(C11`2(T4D$F-E-30 +M$@``BT(,J0```@!T#0T```0`)?___?^)0@Q(8\5(C11`2(T4D$&+A-3<$@`` +MJ0``!``/A*$"``!)BYPD\`@``$F-A"2(%```3#GC2`]$V$F---1$#[:.XA(` +M`$0/MH;A$@``#[:.X!(``$$/ME0D00^VAN<2``")1"0@#[:&YA(``(E$)!@/ +MMH;E$@``B40D$`^VAN02``")1"0(#[:&XQ(``(D$)(GN2,?'`````+@````` +MZ`````!!N`````!(8\5(C11`2(T4D$V-C-3@$@``00^VA!C@"```//\/A(0` +M```/ML!(:<#(#P``28G"3`.3B`D``$R)UDR)S[D(````_/.F#Y?"#Y+`.,)U +M6$4/MDH$10^V0@-!#[9*`D$/ME(!00^V,D$/MD('B40D$$$/MD(&B40D"$$/ +MMD(%B00D2,?'`````+@`````Z`````!!QD4)_TR)[DR)Y^@`````Z2@"``!) +M@\`!28/X`@^%7?___TR)Y^@`````2(G#2(7`#X0&`@``2&/%2(T40$B-%)!! +M]H34W1(```1T!(!+70)(8\5(C11`2(T4D$'VA-3>$@``!'0$@$M=$$ACQ4B- +M%$!(C1200?:$U-T2```(=`2`2UT$2&/%2(T40$B-%)!!]H34WA(```AT!(!+ +M72!(8\5(C11`2(T4D$'VA-3=$@```G0$@$M=`4ACQ4B-%$!(C1200?:$U-X2 +M```"=`2`2UT(QD-8`$F)WDACQ4B-%$!(C12028N$U.`2``!(B0-,B6L(3(GO +MZ`````"(@[L```!!@$4H`4&`?"1#`'0RN0````"Z`````&9F9I!!#[9%#4C3 +M^*@!=`X/ML*(3`-P@$-:`8/"`8/!`4$X3"1#=]Q)BTU02(U3.$F)55!)C45( +M2(E#.$B)2T!(B1%!@$58`0^VB[L```!)B[PDL!```$G'P`````!,B?),B>[H +M`````.FV````J0``"``/A*L```!,B>?H`````$B)PTB%P`^$EP```,9`2P;& +M0$H%9L>`R```````QD!(!L9`20!(QT!X```%`$ACQ4B-%$!(C12028N$U.`2 +M``!(B8/4````2(F#S````$R):U!,B>_H`````(B#Z@```&:#2V@03(GOZ``` +M```\"78&9H%+:``"0<9%#@%)BU5H28E=:$F-16!(B0-(B5,(2(D:2(G>3(GG +MZ`````!F9I!F9I!(@\0P6UU!7$%=05[#9F:005=!5D%505154TB#["A)B?Q( +MB?-(A?9T%P^V1@F$P'0///\/A>T'``#I1P$``&:0N0````!"#[:$(>8(```\ +M_W03#[;`2(T4@$B-%)!)C9S4P`$``$B#P0%(@_D$==:]`````$(/MH0EY@@` +M`#S_=#D/ML!(C12`2(T4D$C!X@-)C9P4P`$``$'VA!3*`0```G0/O@````!( +MB=_H`````.L(2(G?Z`````!(@\4!2(/]!'6P00^V1"0^9D$YA"2($```#X5- +M!P``2(7;#X6.````08!\)%$`#X4X!P``0<9$)%$!28NTW&`$``!(A?9T7TB+ +MAH````!(A<!T)TC'AH``````````2<>$W&`$````````2(N^D````+K_____ +M_]#K+$B+AH@```!(A<!T($C'AH@`````````2<>$W&`$````````2(N^D``` +M`/_02(/#`4B#^Q0/A+@&``#KA,9#"?](B=Y,B>?H`````)#IH08``+D````` +M9F:09F:00@^VA"'F"```//\/A/<````/MM!(C0222(T$@DC!X`--C;P$P`$` +M`$&`?PG_#X35````08!_#@`/A%@&``"]`````$B-!))(C02"2,'@`TV-K`0@ +M`@``2HT<($V)_DR)[^@`````2(G!2(N#*`(``$B)BR@"``!,B2E(B4$(2(D( +M@'E*_W1O@+GI``````^$`@8```^V44A(B="#X`9(@_@&=1WVP@%T/0^VD8$` +M``!(BW%83(G_Z`````#IU04``$B#^`0/A<L%``#VP@%FD`^$P`4``$B)SDR) +MY^@`````Z;`%``!(B<Y,B>?H`````.F@!0``@\4!03AN#@^&DP4``.E6____ +M2(/!`4B#^00/A>K^__](QT0D$`````!!@'PD40`/A:8```"[`````$F+M-Q@ +M!```0@^VA"-@"```2(7V=')(BXZ`````2(7)=&9(@WY@`'5?//]T-@^V^`^W +MQTB-%$!(C1202,'B!4B)T$D#A"0X"0``]D!+!'03@'A)`'4-#[?73(GGZ``` +M``#K)4G'A-Q@!````````$C'AH``````````2(N^D````+K______]%(@\,! +M2(/[%`^%:O___T'&1"11`>G%!```2(M4)!!"#[:$(N8(```\_P^$G00```^V +MT$B-!))(C02"2,'@`TF-C`3``0``2(E,)"!!@+P$S@$````/A'($``#&1"0? +M`$B-!))(C02"2,'@`TF-E`0@`@``2(D4)$Z--"!)B<](BSPDZ`````!(B<-) +MBX8H`@``28F>*`(``$B+#"1(B0M(B4,(2(D8@'M*_P^%"`0``$0/MVLX26/% +M00^VE`1@"```9HE4)`Y)BZS$8`0``/9#3`1T;$B%[71G2(.]@`````!T74B# +M?6``=5:`8TS[]D-+!'02#[=4)`Y(B>Y,B>?H`````.LZ2(N%@````$ECU4G' +MA-1@!````````$C'A8``````````2,=#0`````!(B[V0````NO____](B>[_ +MT/9#2P0/A&X!``#&@^@`````08!G#.?V0TP!#X3X````@&-,_DB+4T!(A=)T +M2X`'5B]D-+!'1<00^V5"1!C12208U4E0!(8]))B[0D\`@``+\"````Z``` +M``#K-V9F9I!F9I!(BT-`2(7`="=(BY"(````2(72=!M(QX"(`````````$B+ +M0T!(B[B0````_])F9I#V0TP"#X0F`@``2(M30$F+M"3P"```OP8```#H```` +M`(!C3/WIX`$``&9F9I!F9I!(BT-`2(7`#X3,`0``2(.XB``````/A+X!``#& M0TL!QD-*`$B)VKX&````2(M\)"#H`````$B#>U@`=!=(BU,02(M#&$B)0@A( -MB1!(BT-8@&A8`8"[@P````!T&TB)[^@`````OP$```#H`````("[@P````!U -MY4B+NR`!``!(A?]T$0^VLPT!``"Z`0```.@`````2(M[6$B%_W01#[:S@0`` -M`+H!````Z`````!,BV-`387D#X3H````]D-,!'5-2(GOZ`````!(BW-`N@$` -M``!(B>_H`````$B+0T`/ME`"#[9P`4C'QP````"X`````.@`````2(M30$B+ -MM?`(``"_`0```.@`````ZS)!#[94)`)!#[9T)`%(Q\<`````N`````#H```` -M`$B+4T!(B[7P"```OP$```#H`````$F+E"2(````2(72="8/MT,X2,>$Q6`$ -M````````2<>$)(@`````````28N\))````#_TO9#3`)T&4B+4T!(B[7P"``` -MOP8```#H`````(!C3/U(QT-``````$G'1"1@`````$B+4V!(A=)T$`^V@X$` -M``!(QT3"6`````!(BQ-(BT,(2(E""$B)$$&`;PX!2(G>2(GOZ`````#V0TP" -M=!E(BU-`2(NU\`@``+\&````Z`````"`8TS]@$0D'P$/MDPD'T$X3PX/A\S[ -M__](@T0D$`%(@WPD$`0/A5;[__^X`0```$B#Q"A;74%<05U!7D%?PV9FD&9F -MD%532(/L"$B)^TB++^@`````A,!T&0^V=4-`A/9T-`^V4PVY`````/;"`70> -MZR3&0PG_2(G>2(GOZ`````#K8I!(B=!(T_BH`74(@\$!0#CQ=>Y(B>_H```` -M`$B)QDB%P'0_2(M3:$B)0VA(C4-@2(D&2(E6"$B),H!##@%(B5Y0QD9(!<9& -M20#&AH$````/N0$```"Z`0```$B)W^@`````2(/$"%M=PV9F9I!F9F:02(/L -M*$B)'"1(B6PD"$R)9"003(EL)!A,B70D($F)_$B)\TB+%TB+KH@````/MD9" -M/"0/AS@&```/ML#_),4`````]D9.!'0,9L=&3@$`QD9"`>M*9H-^3B!U#&;' -M1DX(`,9&0A'K-P^W1DZ$P'D5]D9)`W0/)'^#R`AFB49.QD9"#>L:]D-."'0& -MQD-"!^L.]D-/`G0(QD-'`,9#0AY(B=Y,B>?H`````.G"!0``BX($`0``B04` -M````@\A0B8($`0``N0$```"Z`@```+X!````2(G?Z`````#ID04``+D!```` -MN@````"^`0```$B)W^@`````Z74%``"Y`0```+H!````O@$```!(B=_H```` -M`.E9!0``N0$```"Z8````+X!````2(G?Z`````#I/04```^V3DA!N`$```"Z -M8````+X!````2(G?Z`````#I'`4``$&X`0```+D```$$NB$```"^`0```$B) -MW^@`````Z?H$``!(BT4@@6`P___W_T&X`0```+D!````N@(```"^`````$B) -MW^@`````Z<T$``!!N`$```"Y`````+H"````O@````!(B=_H`````+\0)P`` -MZ`````#IH00``$B+12"!8##___?_0;@!````N0$```"Z`@```+X`````2(G? -MZ`````#I=`0``$&X`0```+D`````N@(```"^`````$B)W^@`````OQ`G``#H -M`````.E(!```N0$```"Z`@```+X`````2(G?Z`````#I+`0``+D!````N@`` -M``"^`````$B)W^@`````Z1`$``"Y`0```+H!````O@````!(B=_H`````.GT -M`P``0;@!````N?____^Z`0```+X`````2(G?Z`````#IT@,``+D!````N@`` -M``"^`````$B)W^@`````Z;8#```/MD9'3(MLQEA)B6U028EU8`^V1D=!B(6! -M````0<9%2@-!QD5)`$&`34@%@$4.`4B-16!(BU`(3(EH"$F)10!)B54(3(DJ -MOX`:!@#H`````$&`?"1#`'0INP````#V10T!=!)F9I#K&0^V10V)V4C3^*@! -M=1&#PP%!.%PD0W?IZP6[`````$B+52"+0C"I```(`'0*)?__]_^)0C#K:4B- -M!-T`````28G&08'F^`<``+VX"P``D(#[`W8=28L$)$@%@`$``$P!\(L`B04` -M````P>@3@^`!ZQQ)BP0D2`6``0``28T$!HL`B04`````P>@3@^`!A,!U#[_H -M`P``Z`````"#[0%UKTR)[DR)Y^@`````Z9\"``"_0`T#`.@`````N0````"Z -M(````+X!````2(G?Z`````"_$"<``.@`````Z6\"``"Y`````+H!````O@`` -M``!(B=_H`````+\0)P``Z`````#I20(``$B+12"!8##___?_0;@`````N?__ -M__^Z`0```+X`````2(G?Z`````"_$"<``.@`````Z1("``"Y`````+H````` -MO@````!(B=_H`````+\0)P``Z`````#I[`$``.@`````9F9FD&9FD.G;`0`` -MZ`````!F9I!F9I#IRP$``$&X`0```+GP````NIL```"^`0```$B)W^@````` -MZ:D!``!!N`$```"YH-9:*[K@`P``O@$```!(B=_H`````.F'`0``0;@!```` -MN0#@`P"ZI`,``+X!````2(G?Z`````#I90$``$&X`0```+GDJ`8!NL0#``"^ -M`0```$B)W^@`````Z4,!``"Y`0```+I(`P``O@$```!(B=_H`````.DG`0`` -MOT`-`P#H`````+D!````NB````"^`0```$B)W^@`````OQ`G``#H`````.GW -M````0;@!````N0````"Z(0```+X!````2(G?Z`````#IU0```+D!````NF`` -M``"^`0```$B)W^@`````Z;D````/MDY(0;@!````NF````"^`0```$B)W^@` -M````Z9@```!(BX:(````QD`)`$B+OH@```#H`````.M_N0$```"Z`0```+X` -M````2(G?Z`````"_$"<``.@`````ZUQ(BT4@@6`P___W_T&X`0```+G_____ -MN@$```"^`````$B)W^@`````OQ`G``#H`````.LHN0$```"Z`0```+X````` -M2(G?Z`````"_$"<``.@`````9F9FD&9FD+@!````2(L<)$B+;"0(3(MD)!!, -MBVPD&$R+="0@2(/$*,-F9F:09F9FD&9FD&9FD$B#[!A(B1PD2(EL)`A,B60D -M$$B)^TB)]0^W5B!F@?J%``^'B0````^WP@^VA`=@"```//]T>F:#^G]W&P^V -MP$AIP)@!``!(`X<X"0``2(M`4`^V4`CK7@^W1B!F/8$`=R,/M\`/MH0'8`@` -M`$AIP,@/``!(`X>("0``2(M`"`^V4`CK,0^W1B`/MH0'8`@``$B-!,!(P>`% -M2`.'8`D``$B+@(@````/ME`(ZPEF9F:0NO____^Y_____V:!?2"%`'<,#[=% -M(`^VC`-@"```2(NS8`D```^VPH#Z_W072)B`O`/F"```_W0+@/G_=`:`?20& -M=2-(@WUX`'0,2(UU>$B)W^@`````2(GN2(G?Z`````#I"0$```^VP4B-!,!( -MP>`%3(TD!D$/MD0D0CP:#X2!````/!IW"CP1#X6W````ZQ,\&W1W/!P/A:D` -M``!FD.F<````2(N3"!$``$B!PDP(``!!#[9$)%#!X`A(F$@!PHL*B0T````` -M#[;)2(N3"!$``$B!PD0(``!!#[9$)%#!X`A(F$@!PHL"B04`````P>`("<%! -MB8PD!`$``$'&1"1"&NM"0<9$)$(;ZSI(BX,($0``2`5,"```00^V5"10P>(( -M2&/22`'0BP")!0````"#X/=!B$0D2$'&1"1"'.L&0<9$)$(=2(-]>`!T#$B- -M=7A(B=_H`````$B)[DB)W^@`````3(GF2(G?Z`````!(BQPD2(ML)`A,BV0D -M$$B#Q!C#9F9FD&9FD&9FD&9FD$B#[#A(B5PD"$B);"003(ED)!A,B6PD($R) -M="0H3(E\)#!)B?](B?-(BVY0#[=V.$ACQKH`````@+P'8`@``/\/A#H)```/ -MMD-*/`D/A$X%```\"7=*/`4/A)<````\!7<>/`,/A*T````\!&9F9I`/A>P( -M``#IT0```&9FD&:0/`</A*$$```\!V9FD&9FD`^''`0``.F!`@``9F:09I`\ -M%@^$?@,``#P69F:09F:0=R,\%`^$T04``#P49F9FD`^'VP(``#P*#X64"``` -M9I#I.P4``#P:#X0?`@``//^0#X2I!0``/!</A70(``!FD.E&`P``#[9W0T"$ -M]F9F9I`/A(<````/ME4-0;P`````]L(!=&WK=DB+12"!8##___[_2(M[4+D` -M````N@$```!(B=[H`````+\%````Z`````"Z`0```.DT"```N0````"Z```` -M`$B)WDB)[^@`````OU##``#H`````+H!````Z0L(``!(B=!$B>%(T_BH`741 -M08/$`4$X]'7JZP9!O``````/ME-(2(G0@^`&2(/X!G4)]L(!#X7&````2(M5 -M((M",*D```$`=`TE___^_XE",.FK````2HT$Y0````!)B<9!@>;X!P``0;VX -M"P``D$F+%T&`_`-V%TF-A!:``0``BP")!0`````E```!`.L528V$%H`!``"+ -M`(D%`````"4```$`A<!T+$&`_`-V$TF-A!:``0``QP````$`Z3<'``!)C806 -M@`$``,<````!`.DD!P``O^@#``#H`````$&#[0%UB\9#2P+&0TK_2(G>3(G_ -MZ`````"Z`0```.D.!P``]D4*`70T2(G>2(GOZ`````"$P'4E0;WZ````2(G> -M2(GOZ`````"$P'40O^@#``#H`````$&#[0%UX4&`_`-V)DF+!T@%@`$``$J- -M%.4`````@>+X!P``2`'0BQ")%0````")$.LD28L'2`6``0``2HT4Y0````"! -MXO@'``!(`="+$(D5`````(D02(M[4$B)WNAHYO__OR!.``#H`````+H!```` -MZ60&``!(Q\<`````N`````#H`````$B+:U!,BV4`3(GGZ`````!(B<%(A<!U -M$<:#Z0````&Z`0```.DJ!@``QD`XX<9`.0'&0#H7#[=#.&:)02!(BT4`2(E! -M*,=!-`````!(QT%(`````$C'@:``````````2(G.3(GGZ`````"Z`0```.G? -M!0``2,?'`````+@`````Z`````!(BVM03(ME`$R)Y^@`````2(G!2(7`=1'& -M@^D````!N@$```#II04``,9`..'&0#D!QD`Z&`^W0SAFB4$@2(M%`$B)02C' -M030`````2,=!2`````!(QX&@`````````$B)SDR)Y^@`````N@$```#I6@4` -M`$B)WDB)[^@_Y?__N@$```#I104``$R+90!,B>?H`````$B)P@^V2VQ(A<!U -M#L:#Z0````&R`>D?!0``QD`XX<9`.0'&0#H%B$@[#[=#.&:)0B!(BT4`2(E" -M*,="-`````!(QT)(`````$C'@J``````````B$MO2(G63(GGZ`````"Z`0`` -M`.G.!```3(ME`$R)Y^@`````2(G"#[9+;DB%P'4.QH/I`````;(!Z:@$``#& -M0#CAQD`Y`<9`.@2(2#L/MT,X9HE"($B+10!(B4(HQT(T`````$C'0D@````` -M2,>"H`````````"(2W%(B=9,B>?H`````+H!````Z5<$``!,BV4`3(GGZ``` -M``!(B<%(A<!U$<:#Z0````&Z`0```.DR!```QD`XX<9`.0'&0#H&#[=#.&:) -M02!(BT4`2(E!*,=!-`````!(QT%(`````$C'@:``````````2(G.3(GGZ``` -M``"Z`0```.GG`P``9F9FD&9FD$R+90!,B>?H`````$B)P4B%P'41QH/I```` -M`;H!````Z;L#``#&0#CAQD`Y`<9`.@P/MT,X9HE!($B+10!(B4$HQT$T```` -M`$C'04@`````2,>!H`````````!(B<Y,B>?H`````+H!````Z7`#``!,BV4` -M3(GGZ`````!(B<%(A<!U$<:#Z0````&Z`0```.E+`P``QD`XX<9`.0'&0#H6 -MQD`\`0^W0SAFB4$@QH&8````#TB+10!(B4$HQT$T`````$C'04@`````2,>! -MH`````````!(B<Y,B>?H`````+H!````Z?4"``#&0TK_#[932$B)T(/@!DB# -M^`9U!?;"`74<2(-[8`!U%4B)[V:0Z`````"(@^H```!F9I!FD(![2P)U#TB+ -M<U!(B=I,B?_H`````/9%#`)U&KL`````3(UE8(!]#@`/A4(!``!FD.E7`@`` -M2(MU0`^V3D8/MM$/MD8[@^@!.<)]+HU!`8A&1H!&1P'&1D(`#[=&3H/@_H/( -M"&:)1DY,B?_H`````+H!````Z4<"```YPG04NP````!,C65@@'T.`'4IZ1$" -M``#&1D(`#[=&3H/@]H#,`F:)1DY,B?_H`````+H!````Z0L"``!,B>?H```` -M`$B)P4B+16A(B4UH3(DA2(E!"$B)"(!Y2O]T?("YZ0`````/A+T!```/ME%( -M2(G0@^`&2(/X!G4B]L(!=$4/MI&!````2(MQ6$B)[^@`````N@$```#IJ0$` -M`$B#^`0/A8$!``#VP@$/A'@!``!(B<Y,B?_H`````+H!````Z8$!``!(B<Y, -MB?_H`````+H!````Z6P!``#&@>D`````@\,!.%T.#X8[`0``Z4G___]F9F:0 -M3(GGZ`````!(B<%(BT5H2(E-:$R)(4B)00A(B0B`>4K_#X20````@'E)``^% -M?P```("YZ0`````/A/0````/ME%(2(G0@^`&2(/X!G4B]L(!=$@/MI&!```` -M2(MQ6$B)[^@`````N@$```#IX````$B#^`0/A;@```#VP@%F9I`/A*P```!( -MB<Y,B?_H`````+H!````Z;4```!(B<Y,B?_H`````+H!````Z:````#&@>D` -M````@\,!#[9%#CC8#X<Z____.,-U4H3`=$Z[`````$R-96!,B>?H`````$B) -MPDB+16A(B55H3(DB2(E""$B)$`^V0DD\(G0$/`UU%+X*````2(G7Z`````"Z -M`0```.L\@\,!.%T.=[O&10G_2(GN3(G_Z`````"Z`0```.L>N@$```#K%T6% -M[69F9I`/A-_X___I]_C__V9FD&:0B=!(BUPD"$B+;"003(MD)!A,BVPD($R+ -M="0H3(M\)#!(@\0XPV9F9I!F9F:09F:02(/L*$B)7"0(2(EL)!!,B60D&$R) -M;"0@2(G[28GT#[=6(&:!^H4`#X?3````#[?"#[:,!V`(``"`^?\/A+\```!F -M@_I_=QP/ML%(BY<X"0``2&G`F`$``$B+1!!0#[9`".M!9H'Z@0!W'`^VP4B+ -MEX@)``!(:<#(#P``2(M$$`@/MD`(ZQX/ML%(BY=@"0``2(T$P$C!X`5(BX00 -MB`````^V0`@\_W18#[;`#[:L`^8(``!`@/W_=!>`^?]T$D$/ME0D)(#Z!G5< -M9F9FD&9FD$"`_?]T*H#Y_W0E#[;!2&G`F`$``$F)Q4P#JS@)``!!QD5+`D'& -M14K_Z68"``!FD$F#?"1X`'0-28UT)'A(B=_H`````$R)YDB)W^@`````Z6H" -M```/ML%(:<"8`0``28G%3`.K.`D``$F+3"1(A-(/A+H```!!#[9$)#H\!@^$ -MT0```#P,#X3)````00^WE<@```"-0@%F08F%R````&:#^@EV&T&`?4H&=!1! -MQD5+`D'&14K_08!E3/[IU`$``+_H`P``Z`````!!#[952$B)T(/@!DB#^`9U -M.O;"`70U00^VE8$```!)BW580`^VQ4B-/(!(C3RX2(V\^\`!``!!N`````"Y -M`@```.@`````Z:H!``!!QD5*`TR)[DB)W^@`````Z94!``!F9I!F9I!!#[9$ -M)#H\`74+0<9%2@20Z4\!```\`G4,0<9%2@5FD.D_`0``/`,/A:8```!(B<Y! -M@'U*!74K9H%Y!,@W9F:0=2!!#[=U.$C'QP````"X`````.@`````0<9%2@;I -M`@$``$R)[^@`````28V]F````+XH````Z)6W__^$P'5!28V]A````+X4```` -MZ("W__^$P'4L28V]P````+X(````Z&NW__^$P'4728-]>`!T$$'&14H7Z:H` -M``!F9I!F9I!!QD5*&F9!@X7(`````>F1````/!=U"D'&14H5Z8,````\&'4' -M0<9%2A;K>#P$9I!U!T'&14H'ZVL\!69FD&:0=0=!QD5*".M;/`9F9I!FD'4' -M0<9%2@GK2SP,9F:09I!U!T'&14H*ZSL\%F9FD&:0=0=!QD5*%.LK/`YF9I!F -MD'4B28-\)'@`=`U)C70D>$B)W^@`````3(GF2(G?Z`````#K*TF#?"1X`'0- -M28UT)'A(B=_H`````$R)YDB)W^@`````3(GN2(G?Z`````!(BUPD"$B+;"00 -M3(MD)!A,BVPD($B#Q"C#9F9FD&9F9I!(@^PH2(D<)$B);"0(3(ED)!!,B6PD -M&$R)="0@28G^28GT2(MN4`^W1CBZ`````("\!V`(``#_#X3+`@``#[9&2CP4 -M#X3'````/!1W.#P-D`^$^P```#P-=PX\!69F9I`/A9T"``#K33P.9F:09F:0 -M#X3O````/`\/A84"``!FD.GR````/!L/A)4````\&Y!W$#P8=#D\&0^%90(` -M`&:0ZT0\''17//\/A54"``!FD.G&````O@````!,B>=F9I#H`````+H!```` -MZ3D"``"^`0```$R)Y^@`````N@$```#I(@(``+X!````3(GGZ`````"Z`0`` -M`.D+`@``2(GWZ`````"Z`0```.GY`0``D$B)]^@`````N@$```#IY@$``/9& -M:01T%TB)]V9FD&:0Z`````"Z`0```.G)`0``2(GWZ`````"Z`0```.FW`0`` -M2(GWZ`````"Z`0```&:0Z:,!``!(B??H`````+H!````Z9$!``#&1DK_@'T. -M``^$V0```+L`````3(UM8&:03(GOZ`````!(B<%(BT5H2(E-:$R)*4B)00A( -MB0B`>4K_#X2)````@'E)``^%A@```("YZ0`````/A#4!```/ME%(2(G0@^`& -M2(/X!G4B]L(!=$@/MI&!````2(MQ6$B)[^@`````N@$```#I"`$``$B#^`0/ -MA?D```#VP@%F9I`/A.T```!(B<Y,B??H`````+H!````Z=T```!(B<Y,B??H -M`````+H!````Z<@```#&@>D`````@\,!#[9%#CC8#X<Z____.,,/A8\```!! -M#[9$)$D\(G06/`UT$D&\`````$R-;6"`?0X`=1;K;[X*````3(GGZ`````"Z -M`0```.MV3(GOZ`````!(B<-(BT5H2(E=:$R)*TB)0PA(B1@/MD-)/")T!#P- -M=2A(B=Y(Q\<`````N`````#H`````+X*````2(G?Z`````"Z`0```.LE08/$ -M`40X90YWI<9%"?](B>Y,B??H`````+H!````ZP6Z`0```(G02(L<)$B+;"0( -M3(MD)!!,BVPD&$R+="0@2(/$*,-F9I!F9I!F9I!!5T%6055!5%532(/L*$F) -M_0^W5B"Y_____XG(9H'ZA0!W=0^WP@^VC`=@"```B<B`^?]T8V:#^G]W'`^V -MP4B+ES@)``!(:<"8`0``2(M$$%`/MD`(ZT%F@?J!`'<<#[;!2(N7B`D``$AI -MP,@/``!(BT00"`^V0`CK'@^VP4B+EV`)``!(C03`2,'@!4B+A!"(````#[9` -M"`^VP$$/MKP%Y@@``$B-!+](C02'28V$Q<`!``!(B40D&`^VP4AIP)@!``!) -M`X4X"0``2(E$)"!(BTY(#[8!P>`8#[91`<'B$`G0#[91`PG0#[91`L'B"`G0 -MP>@#2(UI"(/X$+H0````#T?"B<!,C33!3#GU#X=\`0``QT0D%`````!(C02_ -M2(T$ATC!X`-.C3PH28V7P`$``$B)5"0(28V$!2`"``!(B00D2(GOZ`````!! -MB<1(C74$N00```#\2,?'`````/.F#Y?"#Y+`.,(/A1,!``!!@_P0#X<)`0`` -M@T0D%`&#?"04`74K2(M$)"#'@)`!```!````1(F@E`$``$B+10!(BU0D($B) -M@MP```#IT@```$R)[^@`````2(G#2(7`#X3+````QD!+!L9`2@5FQX#(```` -M``#&0$@&QD!)`$C'0'@```4`QX"0`0```0```$2)H)0!``!(BU0D($B+@M0` -M``!(B8/4````2(N"U````$B)@\P```!(BT4`2(F#W````$B+1"082(E#4$B) -MQ^@`````B(/J````9H-+:!!(BWPD&.@`````/`EV!F:!2V@``DB+5"0(@$(. -M`4F+AR@"``!)B9\H`@``2(L4)$B)$TB)0PA(B1A(B=Y,B>_H`````$B#Q0A, -M.?4/AK3^__](@\0H6UU!7$%=05Y!7\-F9I!!5T%6055!5%532('L2`(``$B) -M?"082(ET)!")T$B+5PA(B50D($B+"DB)3"0H#[976(A4)#=(B?E(@\%(2(E, -M)#A(.4](#X21`@``@'PD-P`/A(8"```/ML")1"0,2(M\)#CH`````$R-8/!, -MC40D0(M,)`RZ`0```$B+="0@2(M\)!#H`````$R-?"1`@'PD0``/A`4!``!! -MO0````!-C;0DU````$$/MNU(8\5(B<-(P>,$28U\'VRZ"````$R)]N@````` -MA,`/A+$```!)C50?8`^V0@B#X`]!B(0DZ@```$$/MTPD:&:!X=_]B<B#R!!F -M08E$)&@/MD((P.@$/`EU"XG(@\@P9D&)1"1H2&/%2,'@!$$/MD0':,#H!#P* -M=0AF08%,)&@``DB+3"0X2(M1"$F-1"002(E!"$F)3"0028E4)!A(B0)!]D0D -M3`)T0T&`9"1,_4F+5"1`2(72=#-(BT0D*$B+L/`(``"_!@```.@`````ZQMF -M9I!F9I!!@\4!13@O=A5F9F:09F:0Z1+___]%."\/AR0!``!,B>*^!@```$B+ -M?"0@Z`````!!@+PD@P````!T)&9FD&:02(M\)"CH`````+\!````Z`````!! -M@+PD@P````!UX4F+O"0@`0``2(7_=!-!#[:T)`T!``"Z`0```.@`````28M\ -M)%A(A?]T$T$/MK0D@0```+H!````Z`````!)BT0D0$B%P'1M2,=`8`````!! -M]D0D3`1U'DB+?"0HZ`````!)BW0D0+H!````2(M\)"CH`````$F+5"1`2(M, -M)"A(B['P"```OP8```#H`````$F+5"1`2(M$)"A(B[#P"```OP$```#H```` -M`$G'1"1``````$F+%"1)BT0D"$B)0@A(B1!(BU0D((!J#@%(BTPD&(!I6`%, -MB>9(BWPD*.@`````2(M4)#A(BT0D&$@Y4$AT"X!L)#<!#X6!_?__2('$2`(` -M`%M=05Q!74%>05_#D$%7059!54%455-(@>PH`@``28G_28GU2(G52(L'2(E$ -M)!!$#[;A2(U<)"!)B=A$B>&Z`0```$B)_DR)[^@`````1(GB3(GN2(GOZ``` -M``!,BW5(28/N$$B-74A)C4802#G8="]!#[9&23P-=!4\(G4SZP]!#[9&23P- -M=`8\(F:0=2)!QD9*!4'&1DL$QD0D'@'K!<9$)!X`@'PD(`!U&.G=`0``38MV -M$$F#[A!)C4802#G8=;[KW,9$)!\`28U78$B)5"0(3(ME2$F#[!!)C40D$$@Y -MPP^$O`$```^V1"0?2,'@!$R-K`2,````9F9FD$F-O"34````N@@```!,B>[H -M`````(3`#X5@`0``38MD)!!)@^P028U$)!!(.=@/A',!``#KRD&`1PX!QD%* -M!<:!Z`````#&04L$9L>!R```````QH'*`````$C'07@```4`#[9\)!](8\=( -MP>`$2(V4!(`````/MD($B$%(#[9"!8A!24R)>5`/MD((@^`/B('J````#[=Q -M:&:!YM_]B?"#R!!FB4%H#[9"",#H!#P)=0F)\(/(,&:)06A(8\=(P>`$#[:$ -M!(@```#`Z`0\"G4&9H%):``"2(EI6$ACQTC!X`0/MI0$A@```(B1@0```$B+ -MA`2,````2(F!U````$B)@<P```"`15@!28M':$F)3VA(BU0D"$B)$4B)00A( -MB0A(BU502(U!$$B)15!(B5D02(E1&$B)`@^V44A(B="#X`;&1"0>`$B#^`9U -M,/;"`709#[:1@0```$B)[DR)_^@`````QD0D'@#K$DB)SDB+?"00Z`````#& -M1"0>`(!$)!\!#[9$)!\X1"0@#X=$_O__@'PD'@!T);X*````3(GWZ`````#K -M%DB+?"00Z`````!(B<%(A<`/A7G^__](@<0H`@``6UU!7$%=05Y!7\.005=! -M5D%505154TB![$@"``!)B?U(B70D*$B++P^V1RB(1"0W2(U72$B)5"0X2#E7 -M2`^$H0,``(3`#X29`P``2(U,)$!(@\%<2(E,)"!(C40D0$B#P%1(B40D&$B- -M5"1`2(/"0$B)5"002(U,)$!(@\$02(E,)`A(C40D0$B#P"!(B00D2(M\)#CH -M`````$R-8,A!N`````"Y`````+H`````3(GN2(M\)"CH`````$&)QX3`#X0+ -M`P``0;X`````NP````")7"0P0;@`````B=FZ`0```$R)[DB+?"0HZ``````/ -MML!(P>`$2(/`9$@]``(```^'N0$``$R-1"1`B=FZ`0```$R)[DB+?"0HZ``` -M``"Z"````$R)YDB+?"0@Z`````"$P`^$A@$``$B+3"0X2(M1"$F-1"0X2(E! -M"$F)3"0X28E4)$!(B0(/MD0D0D&(1"192(MT)!A,B>_H`````#S_=!8/ML!( -M:<#(#P``2`.%B`D``$F)1"00183V=%\/MD0D0]'H@^`!P>`$00^V5"1=@^+O -M"<)!B%0D70^V1"1#P>@#@^`!P>`%@^+?"<)!B%0D70^V1"1#P>@"@^`!P>`# -M@^+W"<)!B%0D70^V1"1&08B$)+L```#IN0````^V1"1"08A$)%E-B6PD"`^V -M1"1&08B$)+L````/MT0D1$&)1"1@#[>$))````!F08F$)+@````/MH0DD@`` -M`$&(A"2Z````2(N$)(````!)B80DJ````$B+5"002(M""$F)A"2P````2(M$ -M)%!)B40D>$B+3"0(2(M!"$F)A"2`````28V4)(@```!(BT0D8$F)A"2(```` -M2(L,)$B+00A(B4((2(M!$$B)0A!(BT0D>$F)A"2@````BTPD,$R)XDB+="0H -M3(GOZ`````#I^0```$&#Q@&#PP%%./X/A`(!``#I_?W__TR)]^@`````2(U8 -M\$B)VKX&````3(GOZ`````"`NX,`````=!YF9I!(B>_H`````+\!````Z``` -M``"`NX,`````=>5(BT-`2(7`=%E(QT!@`````/9#3`1U&4B)[^@`````2(MS -M0+H!````2(GOZ`````!(BU-`2(NU\`@``+\!````Z`````!(BU-`2(NU\`@` -M`+\&````Z`````!(QT-``````$B+$TB+0PA(B4((2(D008!M#@%!@&PD6`%( -MB=Y(B>_H`````$TY="1(#X4L____08!M*`%,B>9(B>_H`````$B+1"0X23E% -M2'0A@&PD-P%T&F:0Z;_\__]-C70D2$TY="1(D`^%\O[__^O$2('$2`(``%M= -M05Q!74%>05_#9F:09F:005=!5D%505154TB![#@"``!(B7PD&$B)]4B+!DB) -M1"0@2(G^2(GOZ`````!!N`````"Y`````+H`````2(GN2(M\)!CH`````(A$ -M)"^$P`^$;@,``$&_`````$&^`````$B-54A(B50D"$B-36!(B0PD0;@````` -M1(GQN@$```!(B>Y(BWPD&.@`````#[;`2,'@!$B#P&1(/0`"```/APP#``!, -MC40D,$2)\;H!````2(GN2(M\)!CH`````$R-9"0P28UT)%Q(B>_H`````#S_ -M#X78`@``2(M\)"#H`````$B)PTB%P`^$[`(``(!%*`'&0%@`28M$)%Q(B0-) -MC70D5$B)[^@`````//]T&@^VP$AIP,@/``!(BW0D($@#AH@)``!(B4,000^V -M1"0"B$-900^V1"0#T>B#X`'!X`0/ME-=@^+O"<*(4UU!#[9$)`/!Z`.#X`'! -MX`6#XM\)PHA374$/MD0D`\'H`H/@`<'@`X/B]PG"B%-=2(EK"$$/MD0D!HB# -MNP```$F+1"0(2(E#<$$/MD0D!XA#6D$/MT0D!(E#8$$/MT0D4&:)@[@```!! -M#[9$)%*(@[H```!)BT0D0$B)@Z@```!)BT0D2$B)@[````!)BT0D$$B)0WA) -MBT0D&$B)@X````!(C8N(````28U4)"!)BT0D($B)@X@```!(BT((2(E!"$B+ -M0A!(B4$028M$)#A(B8.@````2(M54$B-0SA(B4502(M,)`A(B4LX2(E30$B) -M`D&`/"0`#X1J`0``0;T`````2(US2$B)="002(M\)"#H`````$B)P4B%P`^$ -M;P$``(!%#@'&0$H%QH#H`````,9`2P1(QT!X```%`&;'@,@``````$$/M_U( -M8\=(P>`$28U4!&`/MD($B$%(#[9"!8A!24B):5!(B5E8#[9"!HB!@0````^V -M0@B#X`^(@>H````/MW%H9H'FW_V)\(/($&:)06@/MD((P.@$/`EU"8GP@\@P -M9HE!:$ACQTC!X`1!#[9$!&C`Z`0\"G4*9H%):``"9F9FD$ACQTC!X`1)BT0$ -M;$B)@=0```!(B8',````@$-8`4B+16A(B4UH2(L4)$B)$4B)00A(B0A(BU-0 -M2(U!$$B)0U!(BW0D$$B)<1!(B5$82(D"#[912$B)T(/@!DB#^`9U)O;"`704 -M#[:1@0```$B)WDB)[^@`````ZPU(B<Y(BWPD(.@`````08/%`4$/M@0D9D0Y -MZ`^'K/[__V9F9I!F9I!!@\<!08/&`40Z?"0O#X6O_/__@'T.`'41QD4)_TB) -M[DB+?"0@Z`````!(@<0X`@``6UU!7$%=05Y!7\-F9F:005=!5D%505154TB# -M[!A)B?Y)B?1!N`````"Y`````+H`````Z`````!!B<6$P'0VO0````"[```` -M`$R-?"07D$R)^8G:3(GF3(GWZ`````"`?"07_@^%K@```(/%`8/#`40X[77: -M00^V1"18@^@!08A$)%B$P'1[28LL)$'&1"18`$F+7"1(2(/K.$F-5"1(2(U# -M.$@YT'1P2(-[$`!U0.L'2(-[$`!U-T'&1"18`4R)YDR)]^@`````#[:+NP`` -M`$B+O;`0``!)Q\``````2(G:3(GFZ`````#K+69F9I!(BULX2(/K.$B-0SA( -M.=!UL>L63(GF3(GWZ`````!,B>9,B??H`````$B#Q!A;74%<05U!7D%?PV9F -M9I!F9F:0055!5%532(/L"$B)_4F)]$R++[L*````3(GF2(GOZ`````"$P'4/ -MO^@#``#H`````(/K`77B00^V=4-`A/9T(@^V50VY`````/;"`70,ZQ)(B=!( -MT_BH`74(@\$!0#CQ=>Y)BQ0D28M$)`A(B4((2(D0@&T.`4R)YDR)[^@````` -M]D4,`G1)2(MU0$B%]G483(GOZ`````!(B<9(A<`/A%(!``!(B45`3(DN2(FN -MB````,9&1@#&1D<`QD9"`&:#3DX$3(GOZ`````#I)@$``$B+14!(A<`/A+@` -M``!(C;"0````28M]*.@`````2(MU0$R)[^@`````3(UE8$PY96`/A(8```!, -MB>?H`````$B)PTB+0$!(A<!T64C'0&``````]D-,!'493(GOZ`````!(BW-` -MN@$```!,B>_H`````$B+4T!)B[7P"```OP$```#H`````$B+4T!)B[7P"``` -MOP8```#H`````$C'0T``````@&T.`4B)WDR)[^@`````3#EE8`^%>O___TC' -M14``````@'T.`'022(U]8.@`````2(G!@&T.`>L+3(GOZ`````!(B<%(A<ET -M.4B+56A(B4UH2(U%8$B)`4B)40A(B0J`10X!2(EI4,9!2`7&04D`QD%+!L9! -M2@-(B<Y,B>_H`````$B#Q`A;74%<05W#9F9FD&9F9I!F9F:09F:02(/L*$B) -M'"1(B6PD"$R)9"003(EL)!A,B70D($B)_4B)\P^W5B!F@?J%``^'@0````^W -MP@^VC`=@"```@/G_='%F@_I_=QP/ML%(BY<X"0``2&G`F`$``$B+1!!0#[9` -M".M!9H'Z@0!W'`^VP4B+EX@)``!(:<#(#P``2(M$$`@/MD`(ZQX/ML%(BY=@ -M"0``2(T$P$C!X`5(BX00B`````^V0`@/MLD\_W0'9H'Y_P!U(TB#>W@`=`Q( -MC7-X2(GOZ`````!(B=Y(B>_H`````.G;````#[;P2&/&#[:$!>8(``!(C12` -M2(T4D$R-+-4`````3HVT+<`!```/M\%(:<"8`0``28G$3`.E.`D``(![)`!T -M0TC'QP````"X`````.@`````28L4)$F+1"0(2(E""$B)$$&`;@X!3(GF2(GO -MZ`````!!QD8)_TR)]DB)[^@`````ZUB`>SH!=3*_$"<``.@`````2(G>2(GO -MZ`````"Y`0```+H`````3(GF3(GWZ`````#K)F9FD&9FD+]0PP``Z`````!( -MB=Y(B>_H`````$R)YDR)]^@`````2(L<)$B+;"0(3(MD)!!,BVPD&$R+="0@ -M2(/$*,-F9I!!5T%6055!5%532(/L"$B)^TF)]4&)UD&)STB+!TB)!"2`?PX` -M='*]`````$R-9V!,B>?H`````$B)PDB+0VA(B5-H3(DB2(E""$B)$$PY:EAU -M#40XLH$```!T#69F9I"#Q0%`.&L.=\=`.&L.="I!@/]0=23&0DL&QD)*!<9" -M2`?&0DD`3(EJ6$B)6E!(B=9(BSPDZ`````!(@\0(6UU!7$%=05Y!7\-F9F:0 -M9F9FD$B#[#A(B5PD"$B);"003(ED)!A,B6PD($R)="0H3(E\)#!(B?U)B?0/ -MMU8@9H'ZA0`/AXD````/M\(/MH0'8`@``#S_='IF@_I_=QL/ML!(:<"8`0`` -M2`.'.`D``$B+0%`/ME`(ZUX/MT8@9CV!`'<C#[?`#[:$!V`(``!(:<#(#P`` -M2`.'B`D``$B+0`@/ME`(ZS$/MT8@#[:$!V`(``!(C03`2,'@!4@#AV`)``!( -MBX"(````#[90".L)9F9FD+K_____N?____]F08%\)""%`'<.00^W1"0@#[:, -M!6`(```/ML(/MH0%Y@@``$B-%(!(C1203(VTU<`!```/ML%(C03`2,'@!4R+ -MK6`)``!)`<5!@'PD/`)U?4$/MD0D0"7P````@_@@=`6#^!!U:$$/ME0D0(G0 -M@^`/@_@!=26)T8'A\````$&X`0```+H"````O@````!,B>_H`````.E,"@`` -M00^V14=)BU3%6$$/MD0D0"7P````@_@@#Y3`@\`(B(+J````2(M"8&:!8$[_ -M_ND9"@``00^V1"0DA,!T/XG#28-\)'@`=`U)C70D>$B)[^@`````3(GF2(GO -MZ`````"`^P(/A>0)``!,B>Y(B>_H`````.G4"0``9F9FD$''A0@!```````` -M00^V14(\)`^'6PD```^VP/\DQ0````!)BT8@]D`R"`^$>@D``.FC!0``2(N5 -M"!$``$B!PDP(``!!#[9%4,'@"$B82`'"BP*)!0````"#^`6Z!0````]'PD&( -M13M!@'X/`'0/0<9%0@!!QD8/`.GV"```0<9%0@+I[`@``$B+E0@1``!(@<), -M"```00^V15#!X`A(F$@!PHL"B04`````#[;`9D&)13Q(BY4($0``2('"1`@` -M`$$/MD50P>`(2)A(`<*+`HD%`````(G"P>H(9D&)53[!X`AF00E%/&:!^D!! -M=0I!QD5"&>E["```9D&!?3X5E[@#````NB0````/1,)!B$5"Z5X(``!(BY4( -M$0``2('"1`@``$$/MD50P>`(2)A(`<*+`HD%`````$&(13E(BY4($0``2('" -M3`@``$$/MD50P>`(2)A(`<*+`HD%`````(G`J`AT!T'&13H,ZQVH!'0'0<9% -M.@OK$H/@`DB#^`$9P/?0@^`*08A%.D$/MD5'/`$9P(/@`H/`%$&(14+IT@<` -M`$B+A0@1``!(!4P(``!!#[954,'B"$ACTD@!T(L`B04`````@\@(08A%2$'& -M14(%Z9X'``!!QD5"`$$/MT5.9B7W_8/(`F9!B45.28-\)'@`=`U)C70D>$B) -M[^@`````3(GF2(GOZ`````!!QD8)_TR)]DB)[^@`````Z;`'``!!QD5"!.E) -M!P``00^V14>#P`%!B$5'03I%.W,*0<9%0A;I+0<``$'&14<`0<9%0A>_(*$' -M`.@`````Z10'``!!QD5"%.D*!P``0<9%0@AFD.G^!@``0<9%0A3I]`8``$'& -M14H`Z`````!)B87P````0<9%0A7IV08``$B+E0@1``!(@<),"```00^V15#! -MX`A(F$@!PHL:B1T`````#[;;2(N5"!$``$B!PD0(``!!#[9%4,'@"$B82`'" -MBP*)!0````#H`````$F)A?@```"#XP^#^P-U"D'&14(*Z7(&``!!BX7P```` -M!4`-`P!!.87X````>1I!#[9%2CP*=Q%!QD5"%8/``4&(14KI0P8``$$/MD5' -M28-\Q5@`#X1N`0``0;\`````08!^#@!T0L9$)`<`28U>8$B)W^@`````28G' -M00^V14=-.7S%6'0B2(M#"$R)>PA)B1])B4<(3(DX@$0D!P$/MD0D!T$X1@YW -MQT&`;@X!28M'0$B%P`^$]````$C'0&``````0?9'3`1U+TB)[^@`````28M' -M8,:`'`$```%)BW=`N@$```!(B>_H`````$F+1V#&@!P!````28M70$B+M?`( -M``"_`0```.@`````28M'0$B+B(````!(A<ET,D$/MT<X2,>$Q6`$```````` -M28M'0$C'@(``````````28MW0$B+OI````"Z_______128M'0$B%P'0Y2(N0 -MB````$B%TG0M00^W1SA(QX3%8`0```````!)BT=`2,>`B`````````!)BT=` -M2(NXD````/_228M70$B+M?`(``"_!@```.@`````2<='0`````!!#[9%1TG' -M1,58`````$R)_DB)[^@`````0<9%0@GIN@0``$B+E0@1``!(@<),"```00^V -M15#!X`A(F$@!PHL*B0T`````#[;)2(N5"!$``$B!PD0(``!!#[9%4,'@"$B8 -M2`'"BP*)!0````#!X`@)R$&)151!@'U""G0'J0```0!T"D'&14(+Z5`$``!! -MQD5"#$$/MD5'28-\Q5@`=%%!@'X.``^$D`0``$&_`````$F-7F!(B=_H```` -M`$B)PD$/MD5'23E4Q5AU!T&`;@X!ZRE(BT,(2(E3"$B)&DB)0@A(B1!!@\<! -M13A^#G8-Z\1(B>_H`````$B)PDB%T@^$-@0``$$/MD5'28E4Q5A!#[9%2XB" -MZ@```.F_`P``2(GOZ`````"_`0```.@`````@^L!@_O_=`I)BT8@]D`R"'3< -M0<9%0@GID0,``$B+E0@1``!(@<),"```00^V15#!X`A(F$@!PHL*B0T````` -M#[;)2(N5"!$``$B!PD0(``!!#[9%4,'@"$B82`'"BP*)!0`````/ML#!X`@) -MR"7_#P``/1,!```/E,(](P$```^4P832=1"$R74,/3,!``!U/NE$`P``0<9% -M0AB$TG0*0<9%2PCI!`,``(3)=`I!QD5+">GV`@``/3,!```/A>L"``!!QD5+ -M"F9FD.G>`@``00^V348/MM%!#[9%.X/H`3G"?1:-00%!B$5&08!%1P%!QD5" -M!^FT`@``0<9%1P!!QD5"'NFE`@``0<9%0@/IFP(``$'&14(B9F:0Z8X"``!! -MQD5"(^F$`@``0<9%0@/I>@(``$B+E0@1``!(@<),"```00^V15#!X`A(F$@! -MPHL*B0T`````2(N5"!$``$B!PD0(``!!#[9%4,'@"$B82`'"BQ*)%0````") -MT,'@"`^VR0G(9CT#$0^%HP```(G0P>@(9CU%4W0*9CU``P^%C@```&9!QT4\ -M`Q%F08E%/F8]15-U'T&`O14!```"=!5!QH45`0```D''A1@!```?````ZR9F -M08%]/D`#=1U!@+T5`0```W030<:%%0$```-!QX48`0``#_@#`$'&A1P!```! -M3(GOZ`````!!QH4<`0```$F+10!(B[CP"```O@````#H`````$'&14(#Z7T! -M``!!QD5"(4'&A14!````Z6L!``!(BY4($0``2('"3`@``$$/MD50P>`(2)A( -M`<*+`HD%`````$B+E0@1``!(@<)$"```00^V15#!X`A(F$@!PHL"B04````` -M0<9%0A_I&P$``$'&14(@Z1$!``!(BY4($0``2('"3`@``$$/MD50P>`(2)A( -M`<*+`HD%`````$B+E0@1``!(@<)$"```00^V15#!X`A(F$@!PHL"B04````` -M00^V34=!#[9%.XU1`4&(54</MLD/ML"#Z`$YP;@&````NA\````/3,)!B$5" -MZ9D```!(BY4($0``2('"3`@``$$/MD50P>`(2)A(`<*+"HD-``````^VR4B+ -ME0@1``!(@<)$"```00^V15#!X`A(F$@!PHL"B04`````P>`("<%!B8T$`0`` -M0<9%0AKK/4'&14(;ZS9(BX4($0``2`5,"```00^V55#!X@A(8])(`="+`(D% -M`````(/@]T&(14A!QD5"'.L%0<9%0AU)@WPD>`!T#4F-="1X2(GOZ`````!, -MB>9(B>_H`````$R)[DB)[^@`````ZS!!QD5"&.G%_/__2(GO9F:0Z`````"_ -M`0```.@`````NSY"#P#I!?S__V9F9I!F9I!(BUPD"$B+;"003(MD)!A,BVPD -M($R+="0H3(M\)#!(@\0XPV9F9I!F9I!F9I!F9I!(@^PX2(E<)`A(B6PD$$R) -M9"083(EL)"!,B70D*$R)?"0P2(G]2(GS#[=6(&:!^H4`#X?,````#[?"#[:, -M!V`(``"`^?\/A+@```!F@_I_=Q\/ML%(BY<X"0``2&G`F`$``$B+1!!0#[9` -M".M$9F:09H'Z@0!W'`^VP4B+EX@)``!(:<#(#P``2(M$$`@/MD`(ZQX/ML%( -MBY=@"0``2(T$P$C!X`5(BX00B`````^V0`@\_W1.#[;`#[:4!>8(``"`^O]T -M#X#Y_W0*#[9S)$"`_@9U4H#Z_W0J@/G_="4/ML%(:<"8`0``28G$3`.E.`D` -M`$'&1"1+`D'&1"1*_^F]!P``2(-[>`!T#$B-<WA(B>_H`````$B)WDB)[^@` -M````Z<H'```/ML%(:<"8`0``28G$3`.E.`D``$$/M[PDR````&:!_ZL-=P9` -M@/X"=3I(@WMX`'0,2(US>$B)[^@`````2(G>2(GOZ`````!!QD0D2O]!QD0D -M2P),B>9(B>_H`````.EF!P``0;D`````0(#^('4D2(M+4`^V`8/@?SQQ=@Q! -MN0\```!$(DD!ZPI!N0\```!$(DD"1`^VZDN-1*T`28U$A0!,C;3%P`$```^V -M0S@\&@^$\@4``#P:=QL\$G11/!4/A),&``"$P&:0#X29!0``Z<4&```\)69F -MD`^$)P,``#PE=Q$\&V9F9I`/A:H&``#I:04``#R>9F:0#X0;!```/*`/A9(& -M``!FD.E>!@``0(3V#X7.`@``2(M+2(![.0!T9TB%R71,@'D!@'5&@'D"`'5` -M#[9!`SP\D'<W#[;028VT)(0```"X`````,8$,"!(@\`!2(/X%'7R@_H4#T/0 -M28V\)(0```")TDB-<03H`````&9!QX0DR```````0<9$)$H9Z1$&``!!QD0D -M2ACV009`=1$/M@&#X!^#^`T/A90!``#K"P^V`8/@'X/X#74+0<9$)$D-9F:0 -MZP9!QD0D22)!#[9T)$E(Q\<`````N`````#H`````$B#>W@`=`Q(C7-X2(GO -MZ`````!(B=Y(B>_H`````$N-1*T`28U$A0"`O,7.`0````^$NP4``$&^```` -M`$N-1*T`28U$A0!(P>`#3(VD!2`"``!(C1PH3(V[P`$``$R)Y^@`````2(N3 -M*`(``$B)@R@"``!,B2!(B5`(2(D"#[9`23PB=`0\#74*08/&`44X=PYWRDN- -M1*T`28U$A0`/MH3%S@$``$0X\`^%0P4``(3`#X0[!0``0;P`````9L=$)`8` -M`$&_`````$N-1*T`28U$A0!(P>`#3(VL!2`"``!(C1PH3(VSP`$``$R)[^@` -M````2(G"2(N#*`(``$B)DR@"``!,B2I(B4((2(D0#[9"23PB=`0\#743#[=" -M.&8[1"0&<@AFB40D!DF)UT&#Q`%%.&8.=[1-A?\/A+($``!!@']*_P^$IP0` -M`$'&1TK_3(G^2(GOZ`````#ID@0``(/X`7420<9$)$D!0<9$)$K_D.E+!``` -M]D$%`70(9D&!3"1H``1(BW-(2(7V=&9)C90DF````+@`````Q@00`$B#P`%( -M@_@H=?))C90DP````+``Q@00`$B#P`%(@_@(=?))C8PDF````$B-5@A(BT8( -M28F$))@```!(BT((2(E!"$B+0A!(B4$0BT8@08F$),````!!@[PDD`$````/ -MA;\#``!!QD0D2ASIM`,``(U'`69!B80DR````+\0)P``Z`````!!QD0D2@7I -MDP,``$B+2TA`A/8/A9L````/ME$&P>((#[9!!<'@$`G"#[9!!PG"#[9!!,'@ -M&`G"08F4).0````/MA'!XA@/MD$#"<(/MD$"P>`("<(/MD$!P>`0"=")PDF) -M5"1X08.\).0`````=1]F08.$),@````!OQ`G``#H`````$'&1"1*&^D0`P`` -M@_C_=1-F08%,)&@`!$'&1"1*&^GX`@``0<9$)$H-9I#IZP(``$"`_B!U-4&` -M^0:0=`9!@/D"=2B-1P%F08F$),@```"_$"<``.@`````0<9$)$H%Z;<"``!F -M9F:09F:02(-[>`!T#$B-<WA(B>_H`````$B)WDB)[^@`````3(GB3(GV2(GO -MZ`````#IKP(``$R+0TA`A/8/A<P```!!#[90"L'B"$$/MD`)P>`0"<)!#[9` -M"PG"00^V0`C!X!@)PD&)E"3D````00^V2`-(P>$@00^V0`)(P>`H2`G!00^V -M`$C!X#A("<%!#[9``4C!X#!("<%!#[90!L'B"$$/MD`%P>`0"<)!#[9`!PG" -M00^V0`3!X!@)PD@)T4F)3"1X0?9`#`%T!V9!@TPD:@1!@[PDY`````!U'V9! -M@X0DR`````&_$"<``.@`````0<9$)$H;Z;@!``!F08-,)&@!0<9$)$H-Z:8! -M``!`@/X@9I!U,4&`^09T"D&`^0)F9F:0=2&-1P%F08F$),@```"_$"<``.@` -M````0<9$)$H;Z6T!``!(@WMX`'0,2(US>$B)[^@`````2(G>2(GOZ`````!, -MB>),B?9(B>_H`````.EL`0``0<9$)$H4Z3$!``!`@/X@=2Y!@/D&=`=!@/D" -MD'4AC4<!9D&)A"3(````OQ`G``#H`````$'&1"1*%.G]````0<9$)$H;Z?(` -M``!`A/9U;4B+0TAF08-,)&@"9D"1J`69!@4PD:(0`@'@#`'4%@#@6=Q]F -M08.$),@````!OQ`G``#H`````$'&1"1*#>FI````]D`&!'0)9D"1J`NL' -M9D	"1J_4B+0WA)B40D,$C'0W@`````ZS=`@/X@=2I!@/D&=`9!@/D"=26- -M1P%F08F$),@```"_$"<``.@`````0<9$)$H%ZU!F08-D)&CY0<9$)$H.ZT%` -MA/9U!V9!@TPD:@-!QD0D2@_K+4"$]G4+2(G>2(GOZ`````!!@[PDD`$```$9 -MP(/@$X/`!4&(1"1*9F9FD&9FD$B#>W@`=`Q(C7-X2(GOZ`````!(B=Y(B>_H -M`````$R)YDB)[^@`````9F9FD&9FD$B+7"0(2(ML)!!,BV0D&$R+;"0@3(MT -M)"A,BWPD,$B#Q#C#D)"0D)"0D)"0D)"0D(/B!\'B"(#.($B+1PA(+>0\``!( -MP>8(@>8`_P``2`'PB1`/MP!FB04`````#[;`PX/B!\'B"(C*@,X02(M'"$@M -MY#P``$C!Y@B!Y@#_``!(`?")$,-F9F:09F9FD&9FD%53O0````"[`````$&Y -M_____T&[`````$6)VD&#PP&X`0```$&)P$2)V4'3X$2)P;X`````N,#AY`"Z -M`````/?Q.?AW$8GZ*<)$.<IS"$2)U8GS08G1@\8!1`'!@_X0==1!@_L(=;&- -M!-T`````">@/ML!;7<-F9F:09F:09F:02(/L$$B)'"1,B60D"$F)_$`/MMZY -M`````+H'````B=[H*____T$/MHPD.1(``+H#````B=Y,B>?H$____TB+'"1, -MBV0D"$B#Q!##9F:09I!3B?,/MO*Z`P```.C`_O__.-@/E,`/ML!;PV9FD&9F -MD$B%_W0WN@````!F9I!F9I`/MH0ZX@@```^VR#S_=!,/M\%(C03`2,'@!4@# -MAV`)``##2(/"`4B#^@1UU+@`````PV9F9I!F9F:09F:09F:055-(BY_X"``` -M2(7;2`]$W[T`````N0````"Z!P```(GN2(G?Z&?^__^Y1````+H"````B>Y( -MB=_H4_[__[G0````N@````")[DB)W^@__O__N0````"Z!````(GN2(G?Z"O^ -M__^#Q0&#_0)UJ+^@A@$`Z$G^__^(@SD2```/MLBZ`P```+X`````2(G?Z/[] -M__];7<-F9F:09F9FD&9FD$%455-(B?L/MH<5`0``/`(/A;(```!$BY<8`0`` -M0;P`````O0```"I!N0````"^`````+\`````0;@$````9I"Z`0```(G0B?'3 -MX$&%PG48C4X&T^)!"=1!"=&X%0```(GYT^`)Q>L)1(G`B?G3X`G%@\8!@\<% -M08/``X/^!77`1(G)NJ@#``!`M@%(B=_H`````(GINL0#``"^`0```$B)W^@` -M````00^WS`N+&`$``+J@`P``O@$```!(B=_H`````.FX````/`,/A;````!$ -MBY<8`0``0;P`````O0```"I!N0````"^`````+\`````0;@$````N@$```") -MT(GQT^!!A<)U&(U.!M/B00G400G1N!4```")^=/@"<7K"42)P(GYT^`)Q8/& -M`8/'!4&#P`.#_@1UP$2)R;JH`P``0+8!2(G?Z`````")Z;K$`P``O@$```!( -MB=_H`````$$/M\P+BQ@!``#WT;J@`P``O@$```!(B=_H`````&9FD%M=05S# -M9F9FD&9F9I!F9I!(@^P(B?&$TG06N/[____3P"&'&`$``.L49F9FD&9FD+@! -M````T^`)AQ@!``#H`````$B#Q`C#9F:09F:09F:04TB)^V;'APP!```!``^W -M]HGQP>$-0;@!````NJ`#``"^`0```.@`````OA0```!(B=_H`````%O#9F9F -MD&9FD$B#[`B)\832=1:X_O___]/`9B&'``$``.L49F:09F:0N`$```#3X&8) -MAP`!```/M[<``0``Z`````!(@\0(PY!(@^PH2(E<)`A(B6PD$$R)9"083(EL -M)"!)B?U!B=0/MJ[,````#[9>`DB+?G!(A?]T"P^VT@^V\^@`````@/L#=Q"- -M%*N-1*L$0(#]`P]&PNL-C540C44@0(#]`P]&PD$/MM0/MO!,B>_H`````$B+ -M7"0(2(ML)!!,BV0D&$R+;"0@2(/$*,-F9I!F9I!F9I!!5%5328G\NP````!` -M#[;NN@(```")[DR)Y^C!^O__J`AT#;@`````ZR!F9I!F9I"_`0```.@````` -M@\,!@?L0)P``=<NX_P```%M=05S#D$B#["A(B5PD"$B);"003(ED)!A,B6PD -M($B)_4F)S4&)U$`/MMZ)WNB$____A<!U,$$/MO2)VDB)[^B"^___A<!T'KH! -M````B=Y(B>_H/_K__T&(10"X`````.L)9F9FD+C_____2(M<)`A(BVPD$$R+ -M9"083(ML)"!(@\0HPV:02(/L*$B)7"0(2(EL)!!,B60D&$R);"0@2(G]08G- -M1`^VXD`/MMY$B>&Z`0```(G>Z`OZ__^Y0````+H"````B=Y(B>_H]_G__XG> -M2(GOZ-W^__^%P'5,187M=#1!]L0!=!6)VKY`````2(GOZ,_Z__^%P'0NZS.) -MVKX8````2(GOZ+KZ__^%P'09ZQYF9F:0B=J^*````$B)[^BA^O__A<!U![C_ -M````ZP:X`````)!(BUPD"$B+;"003(MD)!A,BVPD($B#Q"C#9F9FD&9FD$%7 -M059!54%455-(@^P(28G]2(D,)$6)QHGSB=6$T@^$\0```$0/MOZY9````+H" -M````1(G^Z#;Y__]$B?Y,B>_H&_[__X7`=1"Z`P```$2)_DR)[^CG^/__0`^V -MU;D!````1(G^3(GOZ,/^__]!O/____^$P`^%@P$``$&\`````$6%]@^.=`$` -M`$B+'"1!O`````!!C6[_1#GE=36Y0````+H"````1(G^3(GOZ+[X__])8\Q( -M`PPDNE@```!$B?Y,B>_HY_W__X7`=#7I+`$``+E$````N@(```!$B?Y,B>_H -MB?C__TB)V;I0````1(G^3(GOZ+;]__^%P`^%_````$&#Q`%(@\,!13GT#X3K -M````ZX._H(8!`.B!^/__#[;K#[;(N@,```")[DR)[^@\^/__B>Y,B>_H(OW_ -M_X7`=")!#[:-.1(``+H#````B>Y,B>_H%_C__T&\_____^F:````B>J^8``` -M`$R)[^C]^/__A<!T#4&\`````$6%]GYEZQ]!#[:-.1(``+H#````B>Y,B>_H -MU??__T&\_____^M;2(L<)$&\`````&9FD+E$````N@(```")[DR)[^BL]___ -M2(G9NH````")[DR)[^C:_/__A<!U#4&#Q`%(@\,!13GT=<E!#[:-.1(``+H# -M````B>Y,B>_H<O?__T2)X$B#Q`A;74%<05U!7D%?PTB#[!A(B5PD"$R)9"00 -M28G\2(G00`^VUD&)R$B)P;X!````Z,C]__^)P[E4````N@(```"^`0```$R) -MY^@?]___B=A(BUPD"$R+9"002(/$&,-F9F:09F9FD&9FD&9FD$B#[!A(B5PD -M"$R)9"0028G\2(G00`^VUD&)R$B)P;X`````Z&C]__^)P[E4````N@(```"^ -M`````$R)Y^B_]O__B=A(BUPD"$R+9"002(/$&,-F9F:09F9FD&9FD&9FD$%6 -M055!5%5328G]2(G-18G&B=-$#[;FN60```"Z`@```$2)YNAW]O__1(GF3(GO -MZ%S[__^%P'40N@,```!$B>9,B>_H*/;__P^VT[D!````1(GF3(GOZ`7\__^$ -MP'4V187V?CA(B>N]`````&9F9I`/MA.Y`````$2)YDR)[^C=^___A,!U#H/% -M`4B#PP%$.?5T">O;N/_____K!;@`````6UU!7$%=05[#9F:09F:02(/L&$B) -M7"0(3(ED)!!)B?Q(B=!`#[;608G(2(G!O@````#H*/___XG#N50```"Z`@`` -M`+X`````3(GGZ*_U__^)V$B+7"0(3(MD)!!(@\08PV9F9I!F9F:09F:09F:0 -M2(/L"$B+A_@(``!(A<!(#T3'0(@U`````+D@````2,?"`````+X.````2(G' -MZ`````!(@\0(PV9FD&9FD&9FD$B#[`B)\832=!:X`0```-/@9@F'9!0``.L4 -M9F:09F:0N/[____3P&8AAV04```/MK=D%```Z`````!(@\0(PY!!5T%6055! -M5%532(/L2$B)^TF)]DB+3BA(@\$!BW8<@^X!QT0D1`````!)BT8P2(E$)"`/ -MME$!@/H!=11!QT90`````.F'!```9F9FD&9FD(#Z`G5)@'D"`74V2(N'^`@` -M`$B%P$@/1,=(BY#P"```#[9!`XB"9A0```^V00.(@MXH``!!QT90`````.D_ -M!```0<=&4/[____I,@0``(#Z!`^%_@$```^V00.#Z#L\`0^'[P$``$V+?BA) -M@\<!00^V;P)(BY_P"```0`^V]4B)W^@`````B<*$P'0-#[;`@+P#8`@``/]U -M4$B+F_`(``!(@<-X%```2(N[\`@``.@`````B>HHP@^V\DB)W^@`````B<*$ -MP'0-#[;`@+P#8`@``/]U%$''1E#_____3(GW0?]62.FM`P``#[;"#[:$`V`( -M``"`^H%W9`^VR$AIR<@/``!!#[9W!$$/ME<%P>(000^V1P;!X`@)PD$/MD<' -M"<*)5"0L00^V5PC!XA!!#[9'"<'@"`G"00^V1PH)PHE4)#!(B<U(`ZN("0`` -M#X3M````@'U8`'4=Z>(```!!QT90_____TR)]T'_5DAF9F:0Z2$#``!!O``` -M``#&1"0W`$R-;4B+1"0L2(E$)!!)C5<+2(E4)`A`#[;VB70D!$R)[^@````` -M2(U8\$B+55!(B4503(EK$$B)4QA(B0(/MD-)/`UT!#PB=5U!#[9'`SP[="(\ -M/'5038GPBTPD+(M4)#"+="0$2(G?Z`````#&1"0W`>LR2(N[*`$``$B+5"00 -M2(MT)`CH`````$V)\(M,)"R+5"0PBW0D!$B)W^@`````QD0D-P%!@\0!1#AE -M6`^':O___X!\)#<`#X57`@``0<=&4/____],B?=!_U9(9I#I00(``(#Z`P^% -MF0```(!Y`@$/A8(````/MD,^C30`#[9Y`XGZB?C!^A_W_HG5.=9^6TR-:01$ -M#[;B#[91!$2)YDB)W^@`````C47\@_@#=AB-1?2#^`-V$(U%[(/X`W8(C47D -M@_@#=P=(@<-X%```00^V50!$B>9(B=_H`````$''1E``````Z:,!``!!QT90 -M_O___^F6`0``0<=&4/[____IB0$``(`Y!78W@'D$_G4Q2(U4)$1(B[OP"``` -M3(GVZ`````"$P`^%8@$``,=$)$0`````0<=&4/_____I30$``$R+J_@(``!- -MA>U,#T3K2(G+N`(```!(*<A(B40D&$QC_NF<````9F9FD&9FD`^V*TR-8@$/ -MMM#VP@%T08M,)$2-1`T`03M&(`^'V@```(G)2`-,)"!!B>B^`````$R)[^BX -M]___.>@/A;L````!;"1$3(GCZTQF9F:09F:02&/%2HT<($B+1"082`'83#GX -M#X^3````08GH3(GAO@````!,B>_H1?K__X7`=7R`.P!U!H![`0!T"[\0)P`` -MD.@`````2(U3`0^V0P&$P`^%6____P^V`X3`=%</MMBY5````+H"````O@`` -M``!,B>_HFO#__XM,)$1!BT8@*<@YPP]'V(G)2`-,)"!!B=BZ`````+X````` -M3(GOZ/_V__^%P'@&`40D1.L(0<=&4/____^Y5````+H"````O@````!,B>_H -M1O#__V9FD&9FD$F+5CA(A=)T!HM$)$2)`DR)]T'_5DA(@\1(6UU!7$%=05Y! -M7\-F9F:09F9FD&9FD$B#[`A(BX?X"```2(7`2`]$QTB+N/`(```/MH=G%``` -MA,!T#8/H`8B'9Q0``(3`=1W&!0``````N2````!(Q\(`````O@X```#H```` -M`$B#Q`C#9F9FD&9FD&9FD&9FD$B#[`A(BX?X"```2(7`2`]$QTB+N/`(``"` -MOV84````=22`AV<4```!Q@4``````;D@````2,?"`````+X.````Z`````!( -M@\0(PV9FD&:02(/L&$B)7"0(3(ED)!!)B?Q(B=!`#[;608G(2(G!O@````#H -MF/C__XG#N50```"Z`@```+X`````3(GGZ!_O__^)V$B+7"0(3(MD)!!(@\08 -MPY"0D)"0D)"0D)"0D)"0B?9(BT<(2"T``@$`2`'&BP:)!0````##9F9FD&9F -M9I")]DB+1PA(+0`"`0!(`<:)%L-F9F:09F9FD&9FD&9FD%-(B?M(BU<(2('J -M``(!`,>"@``!``````"+@@0!`0")!0````"`S`&)@@0!`0"Z"````+X,P@`` -MZ`````"ZN`L``+X(P@``2(G?Z`````"Z`0``/+X`P@``2(G?Z`````"Z"``` -M`+X,PP``2(G?Z`````"ZN`L``+X(PP``2(G?Z`````"Z`0``/+X`PP``2(G? -MZ`````"Z@("`@+XXP@``2(G?Z`````"Z"!@H.+X@P@``2(G?Z`````"Z@("` -M@+X\P@``2(G?Z`````"Z"1DI.;XDP@``2(G?Z`````"Z@("`@+Y`P@``2(G? -MZ`````"Z"AHJ.KXHP@``2(G?Z`````"Z@("`@+Y$P@``2(G?Z`````"Z"QLK -M.[XLP@``2(G?Z`````"Z@("`@+Y(P@``2(G?Z`````"Z2$E*2[XPP@``2(G? -MZ`````"Z@("`@+XXPP``2(G?Z`````"Z#!PL/+X@PP``2(G?Z`````"Z@("` -M@+X\PP``2(G?Z`````"Z#1TM/;XDPP``2(G?Z`````"Z@("`@+Y`PP``2(G? -MZ`````"Z#AXN/KXHPP``2(G?Z`````"Z@("`@+Y$PP``2(G?Z`````"Z#Q\O -M/[XLPP``2(G?Z`````"Z@("`@+Y(PP``2(G?Z`````"Z3$U.3[XPPP``2(G? -MZ`````#'0U2`@("`QT-8@("`@,=#7("`@(#'0V"`@("`QT-D@("`@$B-@W@4 -M``#'0%2`@("`QT!8@("`@,=`7("`@(#'0&"`@("`QT!D@("`@%O#9I!(BU<( -M2('J``(!`(N";``!`(D%`````(F";``!`,-FD$B+5PA(@>H``@$`BX)H``$` -MB04`````"?")@F@``0##55-(B?N)\4@YO_`(```/A;P```")\,#H`D&X```` -M`)`/MO")R/?0@^`#C3S%`````+@'````B?G3X/?01(M,LU1!(<%$B4RS5(32 -M=`ZX`0```-/@1`G(B42S5$$/ML")Q<'E"(M35(VU.,(``$B+N_`(``#H```` -M`(M36(VU/,(``$B+N_`(``#H`````(M37(VU0,(``$B+N_`(``#H`````(M3 -M8(VU1,(``$B+N_`(``#H`````(M39(VU2,(``$B+N_`(``#H`````%M=PXGP -MP.@"@^@%0;@!````Z3W___]F9F:09F:09F:09F:005=!5D%505154TB#[`A( -MB?U!B?9!B==!B<U(BT<(3(L@3(GGZ`````!(B<-(A<`/A.L```!,B>?H```` -M`$B)PDB%P`^$UP```,9%7`'&0SCAQD,Y`<9#.A#&0R6[#[9%6V:)0R!,B6,H -MQT,TD````$B-0A!(B4-(2(E3>$B)P4B)PK@`````Q@00`$B#P`%(/9````!U -M\,9!`8+&`4!$B'$"1(AY`T2(:01!@/T"=R%(C7D(2HT4K0````"!XOP#``!) -MC;0DH!(``.@`````ZRM)BX0DH!(``$B)00A(C7D000^VU8T4E?C___](8])) -MC;0DJ!(``.@`````2,>#H`````````!(C7M8O@````#H`````$B)WDR)Y^@` -M````2(/$"%M=05Q!74%>05_#D$B#[#A(B5PD"$B);"003(ED)!A,B6PD($R) -M="0H3(E\)#!(B?U!B?5!B=9!B<](BT<(3(L@3(GGZ`````!(B<-(A<!T>TR) -MY^@`````2(G"2(7`=&O&15P!QD,XX<9#.0'&0SH0QD,ENP^V15MFB4,@3(EC -M*,=#-)````!(C4(02(E#2$B)4WC&0`$"QD(00$2(:`)$B'`#1(AX!$C'@Z`` -M````````2(U[6+X`````Z`````!(B=Y,B>?H`````$B+7"0(2(ML)!!,BV0D -M&$R+;"0@3(MT)"A,BWPD,$B#Q#C#9F9FD&9FD&9FD&9FD$%6055!5%532(G[ -M08GU08G62(M'"$B+*+D"````N@````"^`````.@`````@'M<`'082(GOZ``` -M``"_`0```.@`````@'M<`'7H2(M#"$B+`$@%H!(``(!X`@!X.X!(`H"Y`0`` -M`+H`````O@````!(B=_H`````(![7`!T&F:02(GOZ`````"_`0```.@````` -M@'M<`'7H1(GHP.@"1`^VX+D!````1(GBO@,```!(B=_H`````(![7`!T&V9F -MD$B)[^@`````OP$```#H`````(![7`!UZ$B+0PA(BS!$B>GWT8/A`T6$]@^5 -MPL'B`P^VA`Z@$@``@^#G"="(A`Z@$@``N0$```!$B>*^`P```$B)W^@````` -M6UU!7$%=05[#9F9FD&9F9I!F9I!F9I!(@^PH2(E<)`A(B6PD$$R)9"083(EL -M)"!(B?M(B?4/MT8@9CV%`'<;3(NOB`D```^WP`^VA`=@"```3&G@R`\``.L- -M3(NOB`D``$&\.+@/`$B+54B`>@$"=19(BT($2(F#H!(``$B+0@Q(B8.H$@`` -M2(MU>$B%]G0(2(G?Z`````!(B>Y(B=_H`````$/&1"5<`$B+7"0(2(ML)!!, -MBV0D&$R+;"0@2(/$*,.0D)"0D$R+CS@)```/MT8@0;IHE@$`9CV%`'<2#[?` -M#[:$!V`(``!,:="8`0``3(V"(`0``,:"(`0``"=F@7XXX0%U(0^V5CJ-0O\\ -M`7<)#[96.X/B#^LGC4+ON@\````\`78;D$N-!!&Z`````$B#>&``=`H/MI"! -M````@^(/00^V0`&#X/`)T$&(0`&X`0```&:!?CCA`74/#[9&.H/H`3P!#Y?` -M#[;`B<+!X@=!#[9``8/@?PG008A``0^V009!B$`"#[8!08A``P^V005!B$`' -M#[9!!T&(0`\/MD$"08A`!`^V00-!B$`%#[9!!$&(0`8/MD$!08A`#`^V00I! -MB$`(#[9!"T&(0`D/MD$,08A`"@^V00A!B$`+#[9!"4&(0`W#D$`/ML?#9F9F -MD&9F9I!F9I")^`^VQ,-F9F:09F:09F:0QD<D`DB+1U!`B'`"2(M'4,9`!P!( -MBT=0B%`,PV9F9I`/MD<]B$8"#[9'/(A&`P^V1SN(1@0/MD<ZB$8*PV9FD`^V -M1T&(1@(/MD=`B$8##[9'/XA&!`^V1SZ(1@H/MD<]B$8+#[9'/(A&#,-F9I!F -MD(72?B&Y`````&9F9I!F9I")T"G(@_@"#YW`#[;`C4P!`3G*?^OSPV9FD&9F -MD&9FD$B#["A(B1PD2(EL)`A,B60D$$R);"083(ET)"!(B?M(B=5!B?8/MD<X -M/"IT)3PJ=Q$\*`^%W0```&9F9I!F9I#K$#R(="H\B@^%R````&:0ZQY$#[9C -M0$0/MFL_2(GN2(G?Z`````#K'&9F9I!F9I!$#[9C140/MFM$2(GN2(G?Z``` -M``#&105`BX.4````J0```0!T,$2(90!$B&T(0HT$]0````"(10$/MD,X/"AT -M!#R(=0O&109@ZUMF9I!FD,9%!F'K4*D```0`9F:09I!T($2(90%$B&T)#[9# -M.#PH=`0\B'4&QD4&)>LJQD4&->LD1(AE`0^V0SJ#X`\(104/MD,X/"AT!#R( -M=0;&10;(ZP3&10;*2(L<)$B+;"0(3(MD)!!,BVPD&$R+="0@2(/$*,-F9F:0 -M9F:09F:09F:0#[9'.@I'.PI'/`I'/0^VP`^V5T"#X@$)T'05NB0```"^!0`` -M`.@`````\\-F9F:0QD8&[$C'AZ``````````PTB#["!(B1PD2(EL)`A,B60D -M$$R);"082(G[2(GU#[9'.#PO=`L\CW59ZQ=F9I!FD$0/MF=`1`^V;S_H```` -M`)#K#T0/MF=%1`^V;T3H`````,9%!4#V@Y8````$=!)$B&4!1(AM"<9%!D+K -M%F9F9I!$B&4!#[9#.H/@#PA%!<9%!D!(BQPD2(ML)`A,BV0D$$R+;"082(/$ -M(,-F9I!F9I!(B?'&0@5`#[9&.#PU=`8\D74CZQL/MT=H@^`!@_@!&<"#X/V# -MZ!:(0@;K)&9F9I#&0@;JZQJZ)````+X%````2(G/Z`````#SPV9FD&9FD/9! -M.0)T!,9!)`#SPV9F9I#V1SSP=`^Z)````+X%````Z`````#SPV9FD&9FD&9F -MD$B#[`A)B?"X`````&9F9I#&!`@`2(/``4B#^`UU\D$/MD`X/#4/A)T````\ -M-7<I/"AT8CPH=PX\&P^%H0,``)#IFP```#PJ=$P\+V9FD&:0#X6*`P``ZU@\ -MCV9FD&9FD'1./(]W$CR(="L\BF9F9I`/A6H#``#K'3R19F:09F:0=$8\X0^% -M5@,``&9FD&9FD.F$````#[;R2(G*3(G'Z`````#'1"0$`0```.DX`P``2(G. -M3(G'Z`````#'1"0$`0```.D@`P``2(G*3(G&Z`````#'1"0$`0```.D(`P`` -M0?9`/`%T(<9!!G#&000`QD$#`,9!`@#&005`QT0D!`$```#IX`(``,9!!N#' -M1"0$`0```.G/`@``08!X.0$/A;P"``!!@'@Z'`^'L0(``$$/MD`Z_R3%```` -M`,9!!P3'1"0$`0```.F<`@``QD$'`,=$)`0!````Z8L"``#&00;LQT0D!`$` -M``#I>@(``,9!!N_&`0-!#[9`.X/(0(A!`<=$)`0!````Z5L"``#&00;OQ@$' -MQT0D!`$```#I1P(``,9!!D#&00$!QD$%0,=$)`0!````Z2X"``#&00;OQ@$# -M00^V0#N#R`B(00''1"0$`0```.D/`@``QD$&[\8!`L=$)`0!````Z?L!``#& -M00;OQ@&"QT0D!`$```#IYP$``,9!!N_&`0;'1"0$`0```.G3`0``QD$&[\8! -MAL=$)`0!````Z;\!``#&00;C00^V0#N(00''1"0$`0```.FF`0``QD$&L,8! -MV,9!`T_&003"QT0D!`$```#IB@$``,9!!K#&`=G&00-/QD$$PL=$)`0!```` -MZ6X!``#&00:PQ@':QD$#3\9!!,+'1"0$`0```.E2`0``]D=H`701QD$&ZL=$ -M)`0!````Z3L!``#&00;GQT0D!`$```#I*@$``,9!!N_&`:K'1"0$`0```.D6 -M`0``QD$&[\8!5<=$)`0!````Z0(!``#&008OQD$!`<9!`A#'1"0$`0```.GI -M````QD$&Y$$/MD`\B`%!#[9`/8A!"$$/MD`[B$$%QT0D!`$```#IP0```$$/ -MMD`[B$$&00^V0#R(`4$/MD`]B$$"00^V0#Z(00-!#[9`/XA!!$$/MD!!B$$* -M00^V0$"(00''1"0$`0```.E]````QD$&Z$$/MD`\B`%!#[9`/8A!"$$/MD`[ -MB$$%00^V0#Z(00)!#[9`/XA!`T$/MD!`B$$$00^V0$&(00''1"0$`0```.LX -MQT0D!`$```!!]D`\`70IQD$&<,9!!`#&00,`QD$"`,9!!4#'1"0$`0```.L+ -M9F:0QT0D!`````"+1"0$2(/$",-F9F:09F9FD&9F9I!F9I!32(/L($B)\TB+ -M3DA(QP0D`````$C'1"0(`````$C'1"00`````$C'1"08`````/:!IP````1T -M#4B+D<@```!(@^H!ZP:+47B#Z@&`>S@E=6%(B=!(P>@8B`0D2(G02,'H$(A$ -M)`%(B=!(P>@(B$0D`HA4)`/V@=4````0=13&1"0&`L9$)`<`N`@```#IK@`` -M`$B-?"0$2(VQZ@```+H$````Z`````"X"````.F.````2(G02,'H.(@$)$B) -MT$C!Z#"(1"0!2(G02,'H*(A$)`)(B=!(P>@@B$0D`TB)T$C!Z!B(1"0$2(G0 -M2,'H$(A$)`5(B=!(P>@(B$0D!HA4)`?V@=4````0=17&1"0*`L9$)`L`N"`` -M``#K)&9F9I!(C7PD"$B-L>H```"Z!````.@`````N"````!F9I!FD$B+>TA( -M8]!(B>;H`````$B#Q"!;PV9F9I!F9F:09F:04TB)\TB+5U!(BPH/MD8X/"]T -M7SPO=RL\&P^$,0$``#P;=P\\$@^%10$``&9FD&:0ZT`\*'0\/"H/A3(!``!F -MD.LP/(IT+#R*=Q@\-69F9I`/A/H````\B`^%$@$``&:0ZQ`\CW0,/.$/A0(! -M``!FD.MU]D=H`70*@8N4```````$`/9':A`/A!0!``!(@W]@``^%"0$```^V -M0S@\*'00/"IT##R(=`@\B@^%\0```/9"#`%U%`^V<@A(B<_H`````(3`#X37 -M````@'LD@0^$S0```(&+E````````0"X`0```.F^````@'XY`0^%I````(!^ -M.AP/AYH```!(#[Y..K@!````2-/@J?8_P!UU(ZD(0`8`=0RI```@`'4C9F:0 -MZW.#CI0````(N`$```!FD.MS@XZ4`````;@!````ZV6#CI0````@N`$```#K -M5V:0]D=H`70*@8N4```````$`(.+E`````&X`0```.LW9I"+@Y0```"I```@ -M`'08]D=H`70=#0``!`")@Y0```"X`0```.L0N`````#K"69F9I"X`0```%O# -MD)"0D)"0D)"02(M_"$4/ML!!P>`$#[;2P>((00G01(G`@\@$A,E$#T7`08/Y -M_W092(V7`/[^_T2)R"7__P,`B8($R```08/(`D2)!L-F9F:09F9FD&9F9I!( -MBT<(2"T``@$`@\X!B;``R```PV9F9I!F9F:09F9FD$%455-!B?1(BT<(A?9T -M3$@M``(!`$B-J`#(``"+@`#(``")!0````"[`````*@!=0_K(8M%`(D%```` -M`*@!=!2_"@```.@`````@\,!1#GC=>'K![@`````ZP6X_____UM=05S#9F9F -MD&9F9I!F9I!54TB#[!A(B?O'1"04`````$B+;PC&AV@4````#[85`````$B- -M="040;D`````0;@"````N0$```#HXO[__XMT)!1(B=_H)O___[Z@A@$`2(G? -MZ#G___^%P'552(V%`/[^_XN`#,@``(D%`````(E$)!0]'V,``'4WQX-8%``` -M'V,``,>#7!0`````!`#'@V`4``````$`2,>#<!0```````!FN```Z5<"``!F -M9I!FD,=$)!0`````2(MK",:#:!0```$/MA4`````2(UT)!1!N?____]!N`(` -M``"Y`0```$B)W^@X_O__BW0D%$B)W^A\_O__OA`G``!(B=_HC_[__X7`=6Y( -MC84`_O[_BX`,R```B04`````B40D%#T?0P``="T]'T0``'5)QX-8%```'T0` -M`,>#7!0`````!P#'@V`4``````$`Z9,!``!F9I#'@U@4```?0P``QX-<%``` -M```$`,>#8!0``````0#I;0$``,=$)!0`````2(MK",:#:!0````/MA4````` -M2(UT)!1!N0````!!N`(```"Y`0```$B)W^AU_?__BW0D%$B)W^BY_?__OA`G -M``!(B=_HS/W__X7`=5!(C84`_O[_BX`,R```B04`````B40D%#V_0P``=3+' -M@U@4``"_0P``QX-<%``````@`,>#8!0````0``!(QX-P%````````&:X``#I -MZ@```,=$)!0`````2(MK",:#:!0````/MA4`````2(UT)!1!N0````!!N`(` -M``"Y`0```$B)W^C0_/__BW0D%$B)W^@4_?__OA`G``!(B=_H)_W__X7`=6=( -MC84`_O[_BX`,R```B04`````B40D%#WO$0``=`D][Q(``'5"ZR#'@U@4``#O -M$0``QX-<%``````$`,>#8!0``````0#K/L>#6!0``.\2``#'@UP4``````@` -MQX-@%``````!`.L>N/_____K)V9FD&:02,>#<!0```````"X`````.L02,># -M<!0```````"X`````$B#Q!A;7<-F9F:09F:02(/L*$B)7"002(EL)!A,B60D -M($B)^XGW28G42(MK"(#Y!+@$````#T?(2(N#<!0```^V4`1(C70D#$&)^40/ -MML&Y`0```$B)W^C"^___BW0D#$B)W^@&_/__OA`G``!(B=_H&?S__[K_____ -MA<!U($B-A0#^_O^+@`S(``")!0````")1"0,08D$)+H`````B=!(BUPD$$B+ -M;"083(MD)"!(@\0HPV9F9I!F9I!F9I!54TB#[!A(B?M(B=5(BX=P%```#[90 -M"TB-1"0408GQ0;@!````N0$```!(B<;H+OO__XMT)!1(B=_H<OO__[X0)P`` -M2(G?Z(7[__^Z_____X7`=1I(BT,(2"WT.0``BP")!0````"(10"Z`````(G0 -M2(/$&%M=PV9FD&9FD&9FD$%7059!54%455-(@^P82(G[08G-08GW08G6A<D/ -MA(X```"]`````$R+8PA(BX-P%```#[90`D&Y_____T&X`0```+D!````2(UT -M)!1(B=_HC/K__XMT)!1(B=_HT/K__[X0)P``2(G?Z./Z__^%P'4I28V$)`#^ -M_O^+D`S(``")%0````!$B?@AT$0X\'4'N`````#K'XE4)!2_"@```.@````` -M@\4!1#GM#X5W____N/____](@\086UU!7$%=05Y!7\-F9F:09F9FD&9F9I!3 -M2(/L$$B)^TB+AW`4```/MA!(C70D#$&Y_____T&X`````+D`````Z./Y__^+ -M="0,2(G?Z"?Z__^^$"<``$B)W^@Z^O__A<!U)KG@DP0`N@(```"^`P```$B) -MW^C/_O__N@````"%P'0+9F:09F:0NO____^)T$B#Q!!;PV9FD$B#["A(B5PD -M&$B);"0@2(G[B?7&1"07_TB-5"07Z`````"%P'5R@'PD%P!T<TB)W^A+____ -M@_C_=%Y(BX-P%```#[90"DB-="0008GI0;@`````N0````!(B=_H,/G__XMT -M)!!(B=_H=/G__[X0)P``2(G?Z(?Y__^%P'4;N>"3!`"Z`````+X#````2(G? -MZ!S^__^%P'0(N/_____K!I"X`````$B+7"082(ML)"!(@\0HPV9F9I!F9F:0 -M9F9FD$B#[%A(B5PD*$B);"0P3(ED)#A,B6PD0$R)="1(3(E\)%!(B?U!B?:) -MRTB#OW`4````#X3X`@``28G7183`#X1<`0``@_[_=1</MX=8%```9HD"N`$` -M``#I^0(``&9FD(/^_G42BX=<%```B0*X`0```.G?`@``@_[]=12+AV`4``") -M`K@!````Z<@"``!FD`'SB5PD##N?7!0```^'C@(``(GS@^/\08GT08/D`W1B -M3(UL)"2Y!````$R)ZHG>Z/S[__^#PP2Z!````#E<)`QS#42)X$0I\(M,)`R- -M%`A$.>)V+DR)_T2)X69FD&9FD(G(00^V1`4`B`=(@\<!@\$!.=%UZXG01"G@ -M@^@!38U\!P%$BV0D#$&#Y/Q$.>-S*DR-;"0DN00```!,B>J)WDB)[^B)^___ -MBT0D)$&)!TF#QP2#PP1!.=QWVSE<)`P/AN,!``!,C60D)+D$````3(GBB=Y( -MB>_H5?O__XMT)`PIW@^$P`$``+D`````N@````!!#[8$%$*(!#J#P0%(@\(! -M.?$/A)X!``#KYF9FD&:0@_[_=2N`.@]U$<:':10```&X`0```.F;`0``QH=I -M%````+@!````Z8H!``!F9F:0B4PD%(G(`?`[AUP4```/ATP!``"`OVD4```` -M#X0_`0``B?"Z`````/>W8!0``(72#X6-````@+]H%````'0-Z`````"%P`^% -M%`$``$B)[^B<_/__@_C_#X0#`0``2(N%<!0```^V4`9(C70D)$6)\4&X```` -M`+D`````2(GOZ'WV__^+="0D2(GOZ,'V__^^$"<``$B)[^C4]O__A<`/A;P` -M``"YX),$`+H`````O@,```!(B>_H9?O__X7`#X6=````A=L/A)P```#'1"00 -M`````(M$)!!%BR0'1(ML)!!%`?5(BUT(2('K``(!`$B)[^CZ^___1(FC",@` -M`$B+A7`4```/ME`%18GI0;@$````N0````!(C70D)$B)[^C=]?__BW0D)$B) -M[^@A]O__OA`G``!(B>_H-/;__X7`=2"YB!,``+H`````O@$```!(B>_HR?K_ -M_X7`=!=F9I!FD+@`````ZQ^X`0```&9F9I#K%(-$)!`$BT0D$#E$)!1VYNE- -M____2(M<)"A(BVPD,$R+9"0X3(ML)$!,BW0D2$R+?"102(/$6,.0D)"0D)"0 -MN`````##9F9FD&9FD&9FD+@`````.3T`````?C=(8\=(Q\$`````2(T$0$C! -MX`,/MQ0(9HD6#[=4"`)FB58"#[94"`B(5@@/MD0("8A&";@!````\\-F9F:0 -M9F:09F:0N/`H``##9F9FD&9FD&9FD+C0````PV9F9I!F9I!F9I"X"````,-F -M9F:09F:09F:0O@````!!N`````"Y``````^VE#G@"```@/K_=$J-@8````!F -M/8$`=P>#Q@'K.6:0#[;"2(N78`D``$B-!,!(P>`%@+P0%0$```-U&$&#P`%! -MC4`#@_@&=@Z#Q@%!N`````#K`X/&`4B#P0%(@_D&=9^)\,-F9F:09F9FD&9F -M9I!(B?E!N@````!!NP````!!N8````!`#[;V@\8!9F9FD$6)R`^V@>`(```\ -M_W109D&!^8$`=PI!@\(!ZSUF9F:0#[;`2(N78`D``$B-!,!(P>`%@+P0%0$` -M``-U&4&#PP%!C4,#@_@&=A!!@\(!0;L`````ZP1!@\(!1#G6=!=(@\$!08/! -M`4&!^88```!UD4&X`````$2)P,-F9F:09F:0\\-F9F:09F9FD&9FD&9FD,:' -MRP````##9F9FD&9F9I"X_P```$B%_W1$OO____^Y``````^VA#GB"```//]T -M(`^VP$B+EV`)``!(C03`2,'@!0^VA!`4`0``0#C&#T?P2(/!`4B#^01URD`/ -MML;SP[@`````PV9F9I!F9I!F9I"X`````,-F9F:09F:09F:0B?#`Z`2-2%>- -M4#`\"@]#T8@7B?"#X`^#^`E^"HGP@^`/@\!7ZPB)\(/@#X/`,(A'`<-F9F:0 -M9F9FD&9FD&9FD$B#[!!(B1PD3(ED)`A(B?M!B?1,B>`/MO3HHO___T$/MO1( -M@\,"2(G?Z)+___](BQPD3(MD)`A(@\00PV9F9I#'0@0`````QP(`````N``` -M``##9F9FD&9FD&9FD&9FD$B+1V!(A<!T44C'0$``````@$A,!$C'1V`````` -M2,='<`````!(QT=H`````(M'"(/X/W\32(M7>$B82,>$PF`$````````PTB+ -M5WA(F$C'A,)@`@```````//#9F9FD$B+1V!(A<!T44C'0$``````@&!,^TC' -M1V``````2,='<`````!(QT=H`````(M'"(/X/W\32(M7>$B82,>$PF`$```` -M````PTB+5WA(F$C'A,)@`@```````//#9F9FD$B#[`A(Q\<`````Z`````"X -M`````$B#Q`C#9F:09F:055-(@^PXQ@0D;<9$)`'_QD0D`B/&1"0#%,9$)`0Z -MQD0D!>_&1"0&%L9$)`>22(NO^`@``$B%[4@/1.](C40D$$B)PL8``$B#P`%( -MB=-(C4PD,$@YR'7LQD0D%`&Y(````+X.````2(GOZ`````"%P'5"OX`:!@#H -M`````+D@````2(G:O@\```!(B>_H`````(/X('4>2(US$$B)Y[D(````_/.F -M#Y?"#Y+`N0$````XPG062,?'`````+@`````Z`````"Y``````^VP4B#Q#A; -M7<-F9F:09F9FD&9F9I!!5T%6055!5%532(/L:$F)_$R+O_`(``!)@<=X%``` -M2(L'2(7`=!-(C;```/[_2(DW2(M_(.@`````28MT)!!(A?9T"DF+?"0@Z``` -M``!)BW0D&$B%]G0*28M\)"#H`````$B-3"1E2(U4)&9(C70D9T$/MWPD/$B- -M1"1:2(E$)#A(C40D7$B)1"0P2(U$)%9(B40D*$B-1"182(E$)"!(C40D8$B) -M1"082(U$)&)(B40D$$B-1"1C2(E$)`A(C40D7DB)!"1,C4PD9$R-1"14Z``` -M``!)B[0D.`D``$B%]G0@28V\)!@)``#H`````$F+MS@)``!)C;\8"0``Z``` -M``!)B[0D8`D``$B%]G0@28V\)$`)``#H`````$F+MV`)``!)C;]`"0``Z``` -M``!)B[0DB`D``$B%]G0@28V\)&@)``#H`````$F+MX@)``!)C;]H"0``Z``` -M``!)B[0D*`L``$B%]G0@28V\)`@+``#H`````$F+MR@+``!)C;\("P``Z``` -M``"`?"1G`'1$O0````!-C;0D6`L``$V-KU@+```/M]U)B[3<>`L``$R)]^@` -M````28NTWW@+``!,B>_H`````(/%`0^V1"1G9CGH=]!)B[0D"!```$B%]G0@ -M28V\).@/``#H`````$F+MP@0``!)C;_H#P``Z`````!)B[0D0!```$B%]G0@ -M28V\)"`0``#H`````$F+MT`0``!)C;\@$```Z`````!)B[0DL!```$B%]G0@ -M28V\))`0``#H`````$F+M[`0``!)C;^0$```Z`````!)B[0DL`D``$B%]G0@ -M28V\))`)``#H`````$F+M[`)``!)C;^0"0``Z`````!)B[0DB`H``$B%]G0@ -M28V\)&@*``#H`````$F+MX@*``!)C;]H"@``Z`````!)B[0D&`H``$B%]G0@ -M28V\)/@)``#H`````$F+MQ@*``!)C;_X"0``Z`````!)B[0D0`H``$B%]G0@ -M28V\)"`*``#H`````$F+MT`*``!)C;\@"@``Z`````!)B[0DV`H``$B%]G0@ -M28V\)+@*``#H`````$F+M]@*``!)C;^X"@``Z`````!)B[0D``L``$B%]G0@ -M28V\).`*``#H`````$F+MP`+``!)C;_@"@``Z`````!)B[0D4`L``$B%]G0@ -M28V\)#`+``#H`````$F+MU`+``!)C;\P"P``Z`````!)B[0DF`\``$B%]G0@ -M28V\)'@/``#H`````$F+MY@/``!)C;]X#P``Z`````!)B[0DT`\``$B%]G0@ -M28V\)+`/``#H`````$F+M]`/``!)C;^P#P``Z`````!)B[0D>!```$B%]G0@ -M28V\)%@0``#H`````$F+MW@0``!)C;]8$```Z`````!)B[0DL`H``$B%]G0@ -M28V\))`*``#H`````$F+M[`*``!)C;^0"@``Z`````!)B[0DV!```$B%]G0O -M28N4).`0``!)C;PDN!```.@`````28N7X!```$F+M]@0``!)C;^X$```Z``` -M``!)B[0D"!$``$B%]G0O28N4)!`1``!)C;PDZ!```.@`````28N7$!$``$F+ -MMP@1``!)C;_H$```Z`````!)B[0D.!$``$B%]G0O28N4)$`1``!)C;PD&!$` -M`.@`````28N70!$``$F+MS@1``!)C;\8$0``Z`````!)B[0DF!$``$B%]G0O -M28N4)*`1``!)C;PD>!$``.@`````28N7H!$``$F+MY@1``!)C;]X$0``Z``` -M``!)B[0D:!$``$B%]G0O28N4)'`1``!)C;PD2!$``.@`````28N7<!$``$F+ -MMV@1``!)C;]($0``Z`````!)B[0DR!$``$B%]G0O28N4)-`1``!)C;PDJ!$` -M`.@`````28N7T!$``$F+M\@1``!)C;^H$0``Z`````!)B[0D^!$``$B%]G0O -M28N4)``2``!)C;PDV!$``.@`````28N7`!(``$F+M_@1``!)C;_8$0``Z``` -M``!)B[0D*!(``$B%]G0O28N4)#`2``!)C;PD"!(``.@`````28N7,!(``$F+ -MMR@2``!)C;\($@``Z`````!(@\1H6UU!7$%=05Y!7\-F9F:09F:02(/L&$B) -M7"0(3(ED)!!)B?Q!B'0D3T`/MMZ)WN@`````28'$>!0``(G>3(GGZ`````"X -M`0```$B+7"0(3(MD)!!(@\08PV9F9I!F9I!F9I!54TB#[`A(B?WH`````$B) -M[^@`````2(V=>!0``$B)W^@`````2(GOZ`````"_T`<``.@`````2(GOZ``` -M``"^`0```$B)[^@`````O@$```!(B=_H`````+N`````9I!(BY7P"```2&/# -M#[:$`F`(```\_W0M#[;`2(T$P$C!X`5(B<9(`[)@"0``]D9.`G029L=&3@$` -MQD9"'4B)[^@`````@\,!@?N&````=;)(BYWP"```2('#>!0``+T`````#[:$ -M'>`(```\_W0S#[;`2(T$P$C!X`5(B<9(`[-@"0``]D9.`G089L=&3@$`QD9" -M'4B)W^@`````9F:09F:02(/%`4B#_09UMTB#Q`A;7<-F9F:09F9FD&9F9I!F -M9I!32(G[Z`````!(B[OP"```2(''>!0``.@`````6\-FD%-(B?OH`````$B+ -MN_`(``!(@<=X%```Z`````!;PV:02(/L".@`````#[;`2(/$",-F9F:09F9F -MD&9F9I!F9I!(@^PX2(E<)`A(B6PD$$R)9"083(EL)"!,B70D*$R)?"0P2(G[ -M08GT08G52(MO8$R+=WA(A>T/A!L!``"`O\L`````#X4.`0``3(GWZ`````!) -MB<=(A<`/A/H```#&0#CAQD`Y`46$Y'0-08#]`1G`]]"#P`?K"T&`_0$9P/?0 -M@\`-08A'.D'&1R2`#[=%.&9!B4<@28E?*$''1S0`````2<='2`````!)QX>@ -M`````````$R)_DR)]^@`````QH/+`````6;'@\@```#T`4B%VW1.2(M38$B% -MTG1/9H&[R````)8`=0Y(BWI0OB$```#H`````&:#J\@````!O]`'``#H```` -M`$R)]^@`````2(M38$B%TG0)@+O+`````'6[9H.[R`````!T&D&`?R0`=1-( -MBT-@#[=`:F:)0UJ[`````.L%N_____],B?Y,B??H`````.L%N_____^)V$B+ -M7"0(2(ML)!!,BV0D&$R+;"0@3(MT)"A,BWPD,$B#Q#C#9F9FD&9F9I!F9F:0 -M9F:02(/L*$B)'"1(B6PD"$R)9"003(EL)!A,B70D($B)^T&)]$B+;V!,BV]X -M2(7M#X0#`0``@+_+``````^%]@```/8'`@^%[0```$R)[^@`````28G&2(7` -M#X39````QD`XX<9`.0%!@/P"#Y7`@\`:08A&.D'&1B2`#[=%.&9!B48@28E> -M*$''1C0`````2<=&2`````!)QX:@`````````$R)]DR)[^@`````QH/+```` -M`6;'@\@```#Z`$B%VW1.2(M38$B%TG1/9H&[R````)8`=0Y(BWI0OB$```#H -M`````&:#J\@````!O]`'``#H`````$R)[^@`````2(M38$B%TG0)@+O+```` -M`'6[9H.[R`````!T#+L`````08!^)`!T!;O_____3(GV3(GOZ`````#K!;O_ -M____B=A(BQPD2(ML)`A,BV0D$$R+;"083(MT)"!(@\0HPV9FD&9FD$B#[$A( -MB5PD&$B);"0@3(ED)"A,B6PD,$R)="0X3(E\)$!(B?U!B?5,BV=@3(MW>$V% -MY`^$>00``("_RP`````/A6P$``!,B??H`````$F)QTB%P`^$6`0``/9%``(/ -MA?P```!!@/T4=PQ!#[;%C01`P>`"ZQ>XB?___T'VY6;!Z`C`Z`0/ML`%\``` -M`$'&1SCA0<9'.0%!QD<Z'$&(1SM!QD<D@$$/MT0D.&9!B4<@28EO*$''1S0` -M````2<='2`````!)QX>@`````````$R)_DR)]^@`````QH7+`````6;'A<@` -M``#$"4B%[71.2(M58$B%TG139H&]R````)8`=0Y(BWI0OB$```#H`````&:# -MK<@````!O]`'``#H`````$R)]^@`````2(M58$B%TG0)@+W+`````'6[9H.] -MR``````/A%4#``"[`````$&`?R0`#X1*`P``Z4`#``!,B??H`````$B)1"00 -M2(7`#X0J`P``28U?6$B+0!!(B00D0<9'.!I!QD<Y"$'&1SH:0<9'.P!!QD<\ -M$$'&1ST`2(M$)!!)B4=X0<9')(!!#[=$)#AF08E'($F);RA(BT0D$$B+0!!) -MB4=(0<='-!````!(BT5@2`7L````28E'4$'&1S`@2<>'H`````````"^```` -M`$B)W^@`````08M7-$B+1"002(MP&$B)W^@`````3(G^3(GWZ`````#&A<L` -M```!9L>%R````/H`2(7M=$Y(BU5@2(72=$]F@;W(````E@!U#DB+>E"^(0`` -M`.@`````9H.MR`````&_T`<``.@`````3(GWZ`````!(BU5@2(72=`F`O<L` -M````=;MF@[W(`````'0'08!_)`!T%TB-="003(GWZ`````"[_____^G]`0`` -M3(G^3(GWZ`````!,B??H`````$F)QTB%P'4=2(UT)!!,B??H`````+O_____ -MZ=T!``!F9I!F9I!(C5A82(L\)$B#QP1(BQ0D#[9"`P^V!`>(0@3&1P$*QD<" -M`+@`````2(L4),8$$`!(@\`!2(/X!'7N183M=0:`9P/\ZT%!#[;5:=)@Z@`` -MN!^%ZU'WZL'Z!8!/`P.)T<'I&(A/!(G6P>X00(AW!8G0P>@(B$<&B%<'B$\( -M0(AW"8A'"HA7"TB+1"0028E'>$'&1S@5#[8'P/@']]"#P!%!B$<Y0<9'.@!! -MQD<[`$'&1SP00<9'/0"`)S]!QD<D@$$/MT0D.&9!B4<@28EO*$B+1"002(M` -M$$F)1TA!QT<T$````$B+16!(!>P```!)B4=00<9',"!)QX>@`````````+X` -M````2(G?Z`````!!BU<T2(M$)!!(BW`82(G?Z`````!,B?Y,B??H`````,:% -MRP````%FQX7(````^@!(A>UT3DB+56!(A=)T3V:!O<@```"6`'4.2(MZ4+XA -M````Z`````!F@ZW(`````;_0!P``Z`````!,B??H`````$B+56!(A=)T"8"] -MRP````!UNV:#O<@`````=`R[`````$&`?R0`=`6[_____TB-="003(GWZ``` -M``#K"F9FD&:0N_____],B?Y,B??H`````.L%N_____^)V$B+7"082(ML)"!, -MBV0D*$R+;"0P3(MT)#A,BWPD0$B#Q$C#9F9FD$B#[&A(B5PD.$B);"1`3(ED -M)$A,B6PD4$R)="183(E\)&!(B?U(B?-)B<]!B=5%B<9,BV=@387D#X2V`P`` -M@+_+``````^%J0,``$F+1"102(E$)#!(BU=X2(E4)`AFQX?(````$"=(B=?H -M`````$B)1"0H2(7`#X1W`P``00^WQ8E$)`1F08/]!'85B<9(Q\<`````N``` -M``#H`````.L42(M\)`CH`````$B)1"002(7`=1E(BW0D*$B+?"0(Z`````"[ -M_____^E"`P``BU0D!,'B"8E4)"1(BT0D"$B+L/`(``#&1C\!2(GJOP4```#H -M`````$&`3"1,`DB+56"^(0```$B+?"0PZ`````!(BU0D*$B#PEA(B50D&$6$ -M]G052(M$)"C'@)0````*````QD`X*.LH2(M4)"C'@I0````2````QD(X*DB+ -M1"002(MX$(M4)"1,B?[H`````$B+16#V0&@!#X2!````08#^`1G`@^`"@^AX -M2(M4)"B(0CC&0CD`2(G82,'H.(A".DB)V$C!Z#"(0CM(B=A(P>@HB$(\2(G8 -M2,'H((A"/4B)V$C!Z!B(0CY(B=A(P>@0B$(_2(G82,'H"(A"0(A:0<9"0@#& -M0D,`1(GH9L'H"(A"1$2(:D7&0D8`QD)'`.M/08#^`1G`@^`"@\`H2(M4)"B( -M0CC&0CD`2(G82,'H&(A".DB)V$C!Z!"(0CM(B=A(P>@(B$(\B%H]QD(^`$2) -MZ&;!Z`B(0C]$B&I`QD)!`$B+?"0HZ`````!(BT5@#[=`.$B+5"0H9HE"(,9" -M)(!(B6HH2(M4)!!(BT(02(M4)"A(B4)(BT0D)(E"-$B+1"002(E">,9","!( -MBT5@2`7L````2(E"4$C'@J``````````O@````!(BWPD&.@`````2(M$)"B+ -M4#1(BT0D$$B+<!A(BWPD&.@`````QH7+`````4B+="0H2(M\)`CH`````$B% -M[0^$F````$B+56!(A=(/A(L```"`O<L`````#X3Y````9H&]R````)8`=0Y( -MBWI0OB$```#H`````&:#K<@````!O]`'``#H`````$B+?"0(Z`````!(BU5@ -M2(72=$"`O<L`````#X2N````Z[-(BU0D*(!Z)`!U)KL`````183V="&+5"0D -M2(M$)!!(BW`03(G_Z`````"[`````.L%N_____](BU0D*$B#>G@`="^!>C0` -M"```=Q-(B=9(@\9X2(M\)`CH`````.L32(MT)"A(@\9X2(M\)`CH`````$B+ -M="0H2(M\)`CH`````$B+1"0(2(NP\`@``,9&/P!(B>J_!@```.@`````08!D -M)$S]ZQR[_____^L59H.]R``````/A4;____I<O___V:0B=A(BUPD.$B+;"1` -M3(MD)$A,BVPD4$R+="183(M\)&!(@\1HPV9F9I!F9F:09F:02(/L&$B)'"1( -MB6PD"$R)9"002(GS2(M'4$R+($B+;F@/MD8D/"!T2#P@=PJ$P'0B/`9W%>LP -M/")T-CPB9F9FD'(D@\"`/`%V';@`````9I#K8TB+1T#'0`0`````QH6R```` -M`>L*QH6R````#69FD$B#>W@`="6!>S0`"```=Q!(C7-X3(GGZ`````#K#F:0 -M2(US>$R)Y^@`````2(G>3(GGZ`````!(B>__E<@```"X`0```$B+'"1(BVPD -M"$R+9"002(/$&,-F9F:09F9FD$B#["A(B1PD2(EL)`A,B60D$$R);"083(ET -M)"!(B?M)B?5)B=1(BV]@2(7M=0I(B=?_UND^`0``2(._B`````!U#DB#OX`` -M````=`]F9F:03(GG0?_5Z1L!``"`O>@`````#X4(`0``@'U*_V9F9I`/A?H` -M``!(BT5@2(7`=`J`>%$`#X7G````2(M]4/9'#!`/A=D```!,BS>`O8,````` -M=`U(B>J^!@```.@`````3(FKB````$R)HY`````/ME5(2(G0@^`&2(/X!G4I -M]L(!='W&14H%QD5+!`^VE8$```!(BW582(M]4$B)Z>@`````Z7\```!(@_@$ -M=7GVP@%T=$B+56!(A=)T+P^W0DZH`G1C@^#]9HE"3DB+16!FQT!.`0!(BT5@ -MQD!"'4B+=6!,B??H`````.L\QD5*`\9%2P1(B>Y,B??H`````.LGD,9%2@7& -M14L&9L>%R```````2(GN3(GWZ`````#K"&:03(GG0?_52(L<)$B+;"0(3(MD -M)!!,BVPD&$R+="0@2(/$*,-F9F:09F:09F:09F:04TB)^TB%_P^$PP```$B+ -M?WCH`````$B)PDB%P`^$?@```("X%0$```!T=8`+`0^V@!4!```\`G4Z2(-[ -M<`!U&0^V@\P```"#X`.(0P(/MH(4`0``B$,!ZW</MH/-````B$,"2(M#<`^V -M@!0!``"(0P'K73P#=5D/MH/,````@^`#P>`"`H/-````B$,"2(M#<`^V@!0! -M``"(0P'K,V9FD$B+0W!(A<!U"TB+0VA(A<!U#NL<#[:`%`$``(A#`>L0#[:` -MP@```(A#`69FD&9FD%O#9F9FD&9F9I!F9I!F9I!54TB#[`A(B?M(A?]T;[T` -M````#[:$'6`(```\_W0Y#[;`2&G`F`$``$B)PD@#DS@)``!T(XM"2"4`__\` -M/0``_P!U%/9"2P1T#DB+>D!(A?]T!>@`````2(/%`4B!_8````!UKDB+@_`( -M``!(.=AU#$B-N'@4``#H`````$B#Q`A;7<-F9F:09F9FD&9F9I!54TB#[`A( -MB?M(C:]X%```Z`````!(B4,H2(E%*$B)F_`(``!(B9WP"```BX,("0``B84( -M"0``QH-F%````<:%9A0```%(B=_H`````$B)W^@`````2(GOZ`````!(B=_H -M`````(3`='=(B>_H`````(3`=&M(B=_H`````+_0!P``Z`````!(B=_H```` -M`,>#D`$``.@#``!(QX.@`0```````$B)FZ@!``!(C;.0`0``2(M[*.@````` -MO@````!(B=_H`````+X`````2(GOZ`````"X`0```.L)9F9FD+@`````2(/$ -M"%M=PV9F9I!32(G[Z`````!(@<-X%```2(G?Z`````"X`0```%O#D$%7059! -M54%455-(@^P82(ET)`A(B10D@ST```````^%;P$``,<%``````$```!$BST` -M````QT0D%`````!)Q\4`````2,?#`````$G'Q@````#I=@(```^WA@````#! -MX!!"#[<4+@G0.<4/A?$```!!N`````"_`````&9FD&:09H,\'P!U7TECT$B) -MT4C!X05*BP0N2(D$&4*+1"X(B409"`^V@0````!(P>(#2(T\`@^V1"03B$2[ -M#0^V@0````!(C3P"#[9$)!*(1+L.#[:!`````$@!PL9$DP\`@($``````>MT -M#[:/``````^VP;H`````0O<T-H72=$L/ML%)8]!(C0S5`````$B-/`$/MD0D -M$XA$NPU(P>(%#[:"`````$B-/`$/MD0D$HA$NPX/MH(`````2`'!QD2+#P"` -M@@`````!ZQ)!@\`!2(/'($&#^`0/A2;___^#A@`````!08/"`4B#QAA%.?H/ -MA>7^__]!@\0!08/\(`^%%P$``(-$)!0!@7PD%/\````/A3H!``!(@WPD"`!T -M"$B+5"0(Q@(`BS4`````O0````"%]GXUN0````"]`````+H``````ZH````` -M2(-\)`@`=`V+@@````!(BUPD"``#@\$!2(/"&#GQ==I(@SPD``^$[````$&Z -M`````$&Y`````$G'Q`````!F0X,\(0`/A,T```!!#[:1`````(32=&=!N``` -M``!)8\),C1S%``````^VPH/H`4B-6`%+C00#2(TTA0````!(BSPDN00```#\ -M\Z8/E\(/DL`XPG4A2(-\)`@`=`]!#[:!`````$B+5"0(B`)!#[:I`````.L) -M28/``4DYV'6T08/"`4F#P2!!@_H$=$SI;O___T2(9"02N0````"Z`````$2) -MYHM\)!3H`````(G%0;H`````O@````!%A?\/CX_]___II?[__P^V1"04B$0D -M$T&\`````.NY0`^VQ4B#Q!A;74%<05U!7D%?PV9F9I!F9F:09F9FD&9FD$B# -M[!A(B1PD2(EL)`A,B60D$(GU3(MG>$B+7V#V!P%T7TB+>UA(A?]T$$`/MM8/ -MMK.!````Z`````!(B[L@`0``2(7_=!!`#[;5#[:S#0$``.@`````3(GGZ``` -M``!(A<!T+8"X%0$```!T)$`/MM5(BW-`3(GGZ`````#K$F:00`^VUDB+<T!, -MB>?H`````$B+'"1(BVPD"$R+9"002(/$&,-F9F:09F:09F:09F:02(/L*$B) -M7"0(2(EL)!!,B60D&$R);"0@2(G[@#X)=Q`/M@;_),4`````9F:09F:0N/__ -M___I)@$``$B+1@A(BY#X"```2(722`]$T$B+NO`(``#&AV<4```!Z`````"X -M`````.GW````#[96"+X`````Z-GJ___IY`````^V5@B^`0```.C&ZO__Z=$` -M```/MG8(Z`````#IPP```$0/MFX(3(MG>$B+;V"X______9'6`@/A*<```!) -MB[0D\`@``$B)^K\%````Z`````"`34P"2(M]4$B)ZKXA````Z`````"`O8,` -M````=!]F9F:0O]`'``#H`````$R)Y^@`````@+V#`````'7E183M=`QF@TM: -M$&:#36H0ZPIF@V-:[V:#96KO28NT)/`(``!(B=J_!@```.@`````@&5,_;@` -M````ZQH/MG8(Z`````"0ZPX/MG8(Z`````"X`````$B+7"0(2(ML)!!,BV0D -M&$R+;"0@2(/$*,-F9F:09F:02(/L6$B)7"1`2(EL)$A,B60D4$B)_4R+9WA) -MBX0D\`@``(!X/P`/A;0```!(BY^`````2(M_8$0/MH\/`0``0;@!````1")% -M``^V30(/ME4!BW4(#[:'VP```(E$)#@/MH?:````B40D,`^VA]D```")1"0H -M#[:'V````(E$)"`/MH?7````B40D&`^VA]8```")1"00#[:'U0```(E$)`@/ -MMH?4````B00D08/@`4C'QP````"X`````.@`````2,>%@`````````"+50A( -MB[V0````2(GN_]/K069F9I!(C9^8````28M\)"A(B=[H`````,>%F````/0! -M``!(QX6H`````````$B)K;````!)BWPD*$B)WN@`````2(M<)$!(BVPD2$R+ -M9"102(/$6,-F9F:09F9FD&9F9I!F9I!!5T%6055!5%532(/L"$B)/"1)B?8/ -MM])(:=*8`0``28G53`.O.`D``$R+A_`(``!)@<!X%```3(EN8$F)=4!)@WU8 -M`'4Z28-]8`!U,TB+!"0/MGA#0(3_#X1!!```28MU4+D`````2#NPP!(```^$ -M`00``.D9!```9F9FD&9FD$&`#@%)BT5@28E&<$F+15A)B49H2(L4)`^V>D-` -MA/]T3DF+=5"Y`````$@[LL`2``!T&^LM#[;!2(T40$B-%)!(BP0D2#FTT,`2 -M``!U&4B+%"0/MD)!C02!08B&S````.L-N0````"#P0%`./EUQDB+!"1(BXCP -M"```#[:!X`@``+X`````//]T*4F+55A(A=)T&P^VP$AIP,@/``!(`X&("0`` -MO@````!(.<)T+[X!````#[:!X0@``#S_="M)BU582(72=!\/ML!(:<#(#P`` -M2`.!B`D``$@YPG4)08AV`>GW````@\8!N@````!FD`^VA`KB"```//]T)P^V -MP$B-!,!(P>`%2`.!8`D``$D[16!U#$&(=@'IP````&9FD(/&`4B#P@%(@_H$ -M=<.)\4$/MH#@"```//]T)DF+55A(A=)U!8UQ`>L8#[;`2&G`R`\``$D#@(@) -M``!(.<)UY>LK00^V@.$(```\_W0H28M56$B%TG0<#[;`2&G`R`\``$D#@(@) -M``!(.<)U!D&(=@'K2X/&`;H`````9F:09F:00@^VA`+B"```//]T)@^VP$B- -M!,!(P>`%20.`8`D``$D[16!U"T&(=@'K$F9FD&:0@\8!2(/"`4B#^@1UPTB+ -M%"2`>E$!=3U)BWU82(7_=!)!#[:U@0```+H`````Z`````!)B[T@`0``2(7_ -M#X2\`0``00^VM0T!``"Z`````.@`````28.](`$````/A)P!``!)BVU8@'U8 -M`'190;P`````2(U=2$F)WTB)W^@`````2(U(\$B+55!(B4502(E9$$B)41A( -MB0*`N0\!``#_=1"`>4D`=0I(@[D@`0```'4*08/$`40X95AWNT0X95@/A9$` -M``!!#[:%#P$``$&(1@*`?5@`#X23`0``NP````!,C65(3(GGZ`````!(C4CP -M2(M54$B)15!,B6$02(E1&$B)`DB+04!(A<!T/`^VD0\!```X4`)T,$B#N(`` -M````=29(@[B(`````'4<B%`"#[=1.$B+!"1(B[#P"```OP<```#H`````(/# -M`3A=6`^&&@$``.N.00^VA8$```!!B$8"0<:%#P$``/^`?5@`#X3Z````NP`` -M``!F9F:09F:03(G_Z`````!(C4CP2(M54$B)15!,B7D02(E1&$B)`H"Y#P$` -M`/]T3,:!#P$``/](BT%`2(7`=#P/MI&!````.%`"=#!(@[B``````'4F2(.X -MB`````!U'(A0`@^W43A(BP0D2(NP\`@``+\'````Z`````"#PP$X75AV<NN" -M00^VA8$```!!B$8"ZV(/ML%(C11`2(T4D$B+!"1(.;30P!(``'4B2(L4)`^V -M0D&-!(%!B$8!08B&S````#A*0W44ZPVY`````(/!`4`X^76]0<9&`?]!QD8" -M`$&#O9`!````=`M!BX64`0``08A&`DF-3B!)C968````28N%F````$F)1B!( -MBT((2(E!"$B+0A!(B4$02(M"&$B)01A(BT(@2(E!($F-3@Q)C96$````28N% -MA````$F)1@Q(BT((2(E!"(M"$(E!$$F+A<````!)B49(00^W16AF08E&6$$/ -MMT5J9D&)1EI)BT5X28E&4$$/MH6"````08A&7$'V14P$=0E(BSPDZ`````!! -M#[952$B)T(/@!DB#^`9U"_;"`74&08`.`NL$08`F_4$/ME5,T.J#X@1!#[8& -M@^#["=!!B`9!#[9&`4&(ALX```!!#[9&`D&(ALT```!,B??H`````$F+=4"Z -M`````$B+/"3H`````$R)]^CU^/__2(/$"%M=05Q!74%>05_#9F:09F:02(/L -M&$B)7"0(2(EL)!!(B?U(BY_P"```Z`````"`?5$!=0F`N\D4```!=#M(C9V0 -M`0``2(M]*$B)WN@`````QX60`0``Z`,``$C'A:`!````````2(FMJ`$``$B+ -M?2A(B=[H`````$B+7"0(2(ML)!!(@\08PV9F9I!F9I!F9I!!5%532(/L,$F) -M^TB)TTB+;BA,BV8P1`^V50M(BX?P"```2(NP\`@``+\`````0;@`````N0`` -M``!F9F:09F:0#[:4,>`(``"`^O]T2HV!@````&8]@0!W!X/'`>LY9I`/ML)( -MBY9@"0``2(T$P$C!X`6`O!`5`0```W4808/``4&-0`.#^`9V#H/'`4&X```` -M`.L#@\<!2(/!`4B#^09UGT&)^4B+MO`(``!(@<9X%```L0`/MI0QX`@``(#Z -M_W1/C8&`````9CV!`'<%@\<!ZSX/ML)(BY9@"0``2(T$P$C!X`6`O!`5`0`` -M`W4808/``4&-0`.#^`9V%8/'`4&X`````.L*@\<!9F9FD&9FD$B#P0%(@_D& -M=9I!.?H/C>\'``!%.=$/GL#'`P`````\_P^$U`<```^V^$AI_W@4``!)`[OP -M"```Z`````!(B<=(A<`/A+('```/MH`5`0``/`(/A<4!``#'`P0````/MG4' -M2(L7#[='0+D`````@+P"8`@``/\/A)D!``!`@/XC#X>``0``0`^VQO\DQ0`` -M``!!QP0D15,#$;@!````9I#I;0$``$B-3"0LNA`#``"^`0```.@`````A,`/ -MA$4!``"+1"0LA<`/A$`!```E_P,``&G`$"<``(V($):O_[ISB*M,B<CWXHG( -M*=#1Z`'"P>H'08D4)+@!````Z1(!``!(C4PD++H(`P``O@$```#H`````(3` -M#X3J````BT0D+(7`#X3E````)?\#``!IP.@#``"-B,CE]_^ZRVLHKXG(]^*) -MR"G0T>@!PL'J!$&)%"2X`0```.FW````2(U,)"RZ"`,``+X!````Z`````"$ -MP`^$CP```(M$)"R%P`^$B@```,'H$"7_`P``:<#H`P``C8C(Y??_NLMK**^) -MR/?BB<@IT-'H`<+!Z@1!B10DN`$```#K7$B-3"0LN@P#``"^`0```.@````` -MA,!T.(M$)"R%P'0W)?\#``!IP.@#``"-B,CE]_^ZRVLHKXG(]^*)R"G0T>@! -MPL'J!$&)%"2X`0```.L,N`````#K!;@!````#[;(#[;!Z?`%```\`P^%U@4` -M`,<#!````$0/MDT'2,<$)`````!(QT0D"`````!(QT0D$`````!(QT0D&``` -M``!(BQ</MH+Q````A,`/A*$```!!N`````!)B>,/ML"#Z`%,C5`!O@````"X -M`0```(G'1(G!T^</MH06X@@``#S_="@/ML!(C03`2,'@!4B)P4@#BF`)``!( -MBX&(````2(M`(`^V0"DY^'002(/&`4B#_@0/A"8%``#KO$B%R0^$&P4```^W -M04"`O`)@"```_P^$"04``("Y%0$```,/A?P$``!+B0S#28/``4TYT`^%<O__ -M_T&`^54/A]<$``!!#[;!_R3%`````$''!"1``P,1N`$```#IOP0``$B-3"0L -M08U!`8/@`TB+/,2Z-`,``+X!````Z`````"$P`^$DP0```^W5"0LB50D+('Z -M__\``'420<<$)/____^X`0```.EU!```N,#AY`")T;H`````]_%!B00DN`$` -M``#I600``$B-3"0L2(M\)`BZ$`,``+X!````Z`````"$P`^$,P0``(M$)"PE -M_P,``&G`$"<``(V($):O_[ISB*M,B<CWXHG(*=#1Z`'"P>H'08D4)+@!```` -MZ0$$``!(C4PD+$B+?"0(N@@#``"^`0```.@`````A,`/A-L#``"+1"0L)?\# -M``!IP.@#``"-B,CE]_^ZRVLHKXG(]^*)R"G0T>@!PL'J!$&)%"2X`0```.FI -M`P``2(U,)"Q(BWPD"+H(`P``O@$```#H`````(3`#X2#`P``#[=$)"XE_P,` -M`&G`Z`,``(V(R.7W_[K+:RBOB<CWXHG(*=#1Z`'"P>H$08D4)+@!````Z5`# -M``!(C4PD+$B+?"0(N@P#``"^`0```.@`````A,`/A"H#``"+1"0L)?\#``!I -MP.@#``"-B,CE]_^ZRVLHKXG(]^*)R"G0T>@!PL'J!$&)%"2X`0```.GX`@`` -M2(U,)"Q(BSPDNA0#``"^`0```.@`````A,`/A-,"``"+5"0L@>+_`P``2&G2 -M.K@!`$B!PN-*`P!(P>H%2+A#>+1QQ%I\"DCWXDC!Z@=!B10DN`$```#IG0(` -M`$B-3"0L2(M\)`BZ%`,``+X!````Z`````"$P`^$=P(``(M4)"R!XO\#``!( -M:=(ZN`$`2('"XTH#`$C!Z@1(N(7P:..(M?@42/?B2,'J"$&)%"2X`0```.E! -M`@``2(U,)"Q(BWPD$+H4`P``O@$```#H`````(3`#X0;`@``BU0D+('B_P,` -M`$AITN830`)(@<(-_TX$2+B]0GKEU92_UDCWXDC!ZA=!B10DN`$```#IZ0$` -M`$B-3"0L2(M\)!BZ%`,``+X!````Z`````"$P`^$PP$``(M4)"R!XO\#``!( -M:=*N1>$`2('"*5*O`4BXVS2VUX+>&T-(]^)(P>H208D4)+@!````Z9$!``!( -MC4PD+$B+?"0(NK`#``"^`0```.@`````A,`/A&L!``"+1"0LP>@/@^`!08D$ -M)+@!````Z5@!``"`?0@`=!%(BT0D"(&@&`$``/_W___K#TB+1"0(@8@8`0`` -M``@``$B+?"0(Z`````"X`0```.D>`0``@'T(`'012(M$)`B!H!@!``#_[___ -MZP](BT0D"(&(&`$````0``!(BWPD".@`````N`$```#IY````(!]"`!T$4B+ -M1"0(@:`8`0``_]___^L/2(M$)`B!B!@!````(```2(M\)`CH`````+@!```` -MZ:H```"`?0@`=!%(BT0D"(&@&`$``/^____K#TB+1"0(@8@8`0```$```$B+ -M?"0(Z`````"X`0```.MS@'T(`'012(M$)`B!H!@!``#___[_ZP](BT0D"(&( -M&`$``````0!(BWPD".@`````N`$```#K/(!]"`!T$4B+1"0(@:`8`0``___] -M_^L/2(M$)`B!B!@!``````(`2(M\)`CH`````+@!````ZP6X``````^VP.L% -MN``````/ML#K$K@`````ZPO'`P````"X`````$B#Q#!;74%<PV9F9I!F9I!F -M9I!!5T%6055!5%532(/L.$F)_(GP2(G328G-08GV0<'N&$&)]T':R"+!0`` -M``"(0T"#P`&)!0````!$B',[1(A[.@^V1"00B$,Y#[94)`^(4SC&0T$`00^W -M!"1FB4,P00^W1"0"9HE#,D&+1"0$B4,T3(EM(`^V0T"(14!$B'4[1(A].@^V -M1"00B$4YB%4XQD5!`4$/MP0D9HE%,$$/MT0D`F:)13)!BT0D!(E%-`^W0S)F -M/20G#X0>`0``9CTD)P^'C@```&8]1"$/A`H!``!F/40A=TYF/2`A#X3Z```` -M9CT@(7<39CU0!P^%_@```&9F9I#IX0```&8](B%F9F:09F:0#X30````9CU` -M(69FD&9FD`^%U````.F[````9F:09I!F/1`G#X+`````9CT1)V:0#X:@```` -M9BT@)V:#^`)FD`^'I````.F+````9F:09I!F/8`G#X1\````9CV`)V:0=RYF -M/4`G=&YF/4`G9F9FD'<(9CTP)W5RZUQF/40G9I!T5&8]8"=U8NM,9F:09F:0 -M9CV`<G1`9CV`<F9FD&9FD'<(9CV")W5"ZRQF/8"19I!T#F8]@)1U,NL<9F:0 -M9F:09L=#/("1QD,^!&;'13R`D<9%/@3K%&;'0SR`E,9#/@1FQT4\@)3&13X$ -M00^V1"0(B$-"00^V1"0(B$5"N0``!`"Z`````+X"````3(GOZ`````!(B0.Y -M`"```+H`````O@````!,B>_H`````$B)P4B)0Q!(BP-(A<`/A.4!``!(A<D/ -MA-P!``!(C9```@$`2(E3"$B-@````@!(B0-(!0!```!(B44`2(E5"$B)31!$ -MBP4`````187`?F>^`````+D`````2,?'``````^W!#EF03L$)'4_#[>!```` -M`&9!.T0D`G4PBY$`````@\(!B9$`````1(N)`````$6%R7051#G*=A")T+H` -M````0??QB9$`````@\8!2(/!&$0YQG6J2(M#"$@MX'T``,<``?`#`$B+0PA( -M+=A]``#'``$``.A(BWL@OG@```#H`````(G")0!P```]`"```'81#[;R2(M[ -M(+IX````Z`````!$B'0D(T2(?"0B#[94)!"(5"0A#[9$)`^(1"0@O0````!! -MN0````!)Q\0`````3(UL)"!F0X,\(0`/A*4```!!@+D```````^$AP```$&X -M`````$ACQ4R-%,4`````38GK2XT$`DB--(4`````N00```#\3(G?\Z8/E\(/ -MDL`XPG4^00^V@0````"#P`%!B($`````00^VD0````"$TG0@.-!V'`^VP`^V -MRKH`````9O?Q08B1`````&9F9I!F9I!!C5`!28/``4$/MH$`````.=!_C8/% -M`4F#P2"#_00/A4_____'@P@)```!````N`$```#K!;@`````2(/$.%M=05Q! -M74%>05_#9F9FD&9FD$%455-(B?M(B?5(BW]X#[8#@^`!1`^VX+@`````9F:0 -MQ@0H`$B#P`%(@_@H=?)(B[=`"@``2(GRL`!F9I!F9I#&!!``2(/``4@]``(` -M`'7P2(U.-KH`````9F9FD&9FD`^V1%,AB`11#[9$4R"(1%$!2(/"`4B#^A1U -MY4B-3A2R``^V1%,-B`11#[9$4PR(1%$!2(/"`4B#^@IUY4B-3BZR``^V1%-) -MB`11#[9$4TB(1%$!2(/"`4B#^@1UY4B)=1A(BT-02(/``4B)10!(@WM@`'5! -M]@,!=#Q(BT-H2(7_#Y7"2(7`=!*$TG0.#[9`6X"\!V`(``#_=1M(BT-PA-)T -M-TB%P'0R#[=`0("\!V`(``#_="0/MH/,````C02`#[93`@'02)@/MH`````` -MB$4,0;P`````ZR#H`````$B%P'02@+@5`0```G4)#[9#`8A%#.L$QD4,_P^V -M0P*(10T/MD-<B$4.QD42$,9%$1!$B>"-%`"^_?___T`B=0H)UD"(=0K!X`4/ -MMDT(@^'?"<&(30@/MT-82,'H!X/@`<'@!H/AOPG!B$T(#[=#6$C!Z`*#X`$/ -MME4)@^+^"<*(50D/MT-:2,'H`\'@!X/A?PG!B$T(#[=#6DC1Z(/@`0'`@^+] -M"<*(50D/MT-82,'H`X/@`<'@!H/BOPG"B%4)#[=#6DC!Z`3!X`>#XG\)PHA5 -M"8/)$(A-"`^V`]#H@^`!@^;^"<9`B'4*#[8#@^`$@^;["<9`B'4*9L=%%``0 -M#[:#S````(A%(%M=05S#9F:09I!!5D%505154T&)]4&)UDB)RTR)Q4B%R707 -MN`````!FD,8$&`!(@\`!2#VL````=?!(A>UT&;@`````9F:09F:0Q@0H`$B# -MP`%(@_@H=?),BZ?P"```00^V]4R)Y^@`````B<)FA<!T#@^WP$&`O`1@"``` -M_W5(38ND)/`(``!)@<1X%```28N\)/`(``#H`````$$IQ4$/MO5,B>?H```` -M`(G"9H7`#X1/`P``#[?`08"\!&`(``#_#X0]`P``#[?"00^VA`1@"```9H'Z -M@0`/AU("``!)BXPDB`D```^WP$AIP,@/``!(C30!2(7;#X36````2(M6$$B% -MTG1U00^VA"3@"```//]T&`^VP$AIP,@/``!(C00!OX````!(.<)T)4$/MH0D -MX0@``#S_=!P/ML!(:<#(#P``2(T$`4@YPG4)OX$```!`B'L"@'Y:`'0PN@`` -M```/ML(/MDP&<+@!````T^`)0R"#P@$X5EIV$>ODQD,"_TB+1@@/MD`-B4,@ -MQ@,!#[9&68A#`4B+1GA(B4,$2(N&B````$B)0PQ(BX:0````2(E#%(N&H``` -M`(E#'$2):R0/MH;`````B4,HN`````#I-@(``$B%[0^$*`(``$6%]@^('P(` -M``^VAL````!!.<8/C0\"``!)8\9(C01`2,'@!$@!\$B-D,`````/MDH(B$T` -M#[92"8A5`4B+@-`````/M@"#X`^(10*`^0-T+H#Y`W<.@/D"#X6I````Z:L` -M``"`^01F9I!F9I!T0(#Y$@^%D````&9FD&:0ZU])8\9(C01`2,'@!$B+E`;0 -M````#[9"`8/@!P^VP,'@"`^V4@(!T(T$@`'`B44$ZV!)8\9(C01`2,'@!$B+ -MA`;0````#[9``H3`=0G'100`````ZSP/ML"#Z!2)103K,4ECQDB-!$!(P>`$ -M2(N4!M`````/MD("P>`(#[92`P'0C02``<")103K!\=%!`````!(C4T(26/& -M2(T$0$C!X`1(C80&T````$B-4`A(BT`(2(E%"$B+0@A(B4$(2(M"$$B)01!( -MBT(82(E!&+@`````Z=D````/M\!(C03`2,'@!4B)Q4D#K"1@"0``QD,"_\8# -M`DF+E"1@"0``#[9$$#N(0P%(BX6(````#[9`#8E#(`^VA14!```\`G4KQT,$ -M2%!4`,=##%)O8VO'0Q!E=%-TQT,4;W(@``^W=3Y(C7L7Z'K$___K1SP#=2'& -M0P$0QT,@`0```,=#!$A05`#'0PQ%2C,T9L=#$#``ZR+&0P1V#[=U/$B->P7H -M0L3__\9##&0/MW4^2(U[#>@QQ/__QD,<<@^V=3E(C7L=Z.##__]$B6LDN``` -M``#K!;C_____6UU!7$%=05[#9F9FD&9FD$%505154T&)]4B)T[@`````Q@08 -M`$B#P`%(/2@-``!U\$B+K_`(``!!#[;U2(GOZ`````")PF:%P'0-#[?`@+P% -M8`@``/]U14B+K?`(``!(@<5X%```2(N]\`@``.@`````02G%00^V]4B)[^@` -M````B<)FA<`/A)$#```/M\"`O`5@"```_P^$@`,```^WP@^VA`5@"```9H'Z -M@0`/AXT"``!(BXV("0``#[?`2&G`R`\``$R-!`%)BU`02(72='0/MH7@"``` -M//]T&`^VP$AIP,@/``!(C00!OH````!(.<)T(P^VA>$(```\_W0<#[;`2&G` -MR`\``$B-!`%(.<)U";Z!````0(AS`D&`>%H`=#*Z``````^VPD$/MDP`<+@! -M````T^`)0R"#P@%!.%!:=A'KXL9#`O])BT`(#[9`#8E#(,8#`4$/MD!9B$,! -M28M`>$B)0P1)BX"(````2(E##$F+@)````!(B4,408N`H````(E#'$2):R1! -M@+C```````^$BP(``$&Y`````$$/MOE(8\=(C0R`2(T,RTB-!$!(P>`$3`'` -M2(V0P`````^V<@A`B+&H````#[92"8B1J0```$B+@-`````/M@"#X`^(@:H` -M``!`@/X#=#1`@/X#=Q%`@/X"#X73````9I#IW@```$"`_@1F9F:09F:0=$M` -M@/X2#X6U````9F9FD.M]2&//2(T$24C!X`1)BY0`T````$B-#(D/MD(!@^`' -M#[;`P>`(#[92`@'0C02``<")A,NL````Z88```!(8]=(C0122,'@!$F+A`#0 -M````#[9``H3`=1%(C022QX3#K`````````#K6DACUTB-%)(/ML"#Z!2)A-.L -M````ZT1(8\](C01)2,'@!$F+E`#0````2(T,B0^V0@+!X`@/ME(#`="-!(`! -MP(F$RZP```#K$DACQTB-!(#'A,.L`````````$ACQTB-%(!(C933H````$B- -M<A!(C01`2,'@!$F-A`#0````2(U("$B+0`A(B4(02(M!"$B)1@A(BT$02(E& -M$$B+01A(B48808/!`44XB,`````/AND```#I7_[__P^WP$B-!,!(P>`%28G$ -M3`.E8`D``,9#`O_&`P)(BY5@"0``#[9$$#N(0P%)BX0DB`````^V0`V)0R!! -M#[:$)!4!```\`G4MQT,$2%!4`,=##%)O8VO'0Q!E=%-TQT,4;W(@`$$/MW0D -M/DB->Q?H7L#__^M+/`-U(<9#`1#'0R`!````QT,$2%!4`,=##$5*,S1FQT,0 -M,`#K)L9#!'9!#[=T)#Q(C7L%Z"3`___&0PQD00^W="0^2(U[#>@1P/__QD,< -M<D$/MG0D.4B->QWHOK___T2):R2X`````.L,N/_____K!;@`````6UU!7$%= -MPT%455-!B?1(B=.X`````)#&!!@`2(/``4@]I`P``'7P2(NO\`@``$$/MO1( -MB>_H`````(G"9H7`=`T/M\"`O`5@"```_W5'2(NM\`@``$B!Q7@4``!(B[WP -M"```Z`````!$B>8IQD`/MO9(B>_H`````(G"9H7`#X1G`P``#[?`@+P%8`@` -M`/\/A%8#```/M\(/MH0%8`@``&:!^H$`#X=G`@``2(N-B`D```^WP$AIP,@/ -M``!,C00!28M0$$B%TG1T#[:%X`@``#S_=!@/ML!(:<#(#P``2(T$`;Z````` -M2#G"=",/MH7A"```//]T'`^VP$AIP,@/``!(C00!2#G"=0F^@0```$"(<P)! -M@'A:`'0RN@`````/ML)!#[9,`'"X`0```-/@"4,@@\(!03A06G81Z^+&0P+_ -M28M`"`^V0`V)0R#&`P%!#[9`68A#`4F+0'A(B4,$28N`B````$B)0PQ)BX"0 -M````2(E#%$&+@*````")0QQ!@+C```````^$90(``$&Y`````$$/MOE(8\=( -MC0R`2(T,RTB-!$!(P>`$3`'`2(V0P`````^V<@A`B'$D#[92"8A1)4B+@-`` -M```/M@"#X`^(029`@/X#=#!`@/X#=P]`@/X"#X7`````Z<H```!`@/X$9F:0 -M9I!T14"`_A(/A:8```!F9F:0ZW%(8\](C01)2,'@!$F+E`#0````2(T,B0^V -M0@&#X`</ML#!X`@/ME("`="-!(`!P(E$RRCK>DACUTB-!%)(P>`$28N$`-`` -M```/MD`"A,!U#DB-!)+'1,,H`````.M12&/72(T4D@^VP(/H%(E$TRCK/DAC -MSTB-!$E(P>`$28N4`-````!(C0R)#[9"`L'@"`^V4@,!T(T$@`'`B43+*.L/ -M2&/'2(T$@,=$PR@`````2&/'2(T4@$B-5-,@2(UR#$B-!$!(P>`$28V$`-`` -M``!(C4@(2(M`"$B)0@Q(BT$(2(E&"$B+01!(B4802(M!&$B)1AA!@\$!13B( -MP`````^&Y0```.F!_O__#[?`2(T$P$C!X`5)B<1,`Z5@"0``QD,"_\8#`DB+ -ME6`)```/MD00.XA#`4F+A"2(````#[9`#8E#($$/MH0D%0$``#P"=2W'0P1( -M4%0`QT,,4F]C:\=#$&5T4W3'0Q1O<B``00^W="0^2(U[%^ACO/__ZTL\`W4A -MQD,!$,=#(`$```#'0P1(4%0`QT,,14HS-&;'0Q`P`.LFQD,$=D$/MW0D/$B- -M>P7H*;S__\9##&1!#[=T)#Y(C7L-Z!:\___&0QQR00^V="0Y2(U['>C#N___ -MN`````#K#+C_____ZP6X`````%M=05S#9F9FD&9F9I!F9I!!5%5308GT2(G3 -MN`````"0Q@08`$B#P`%(/0`!``!U\$B+K_`(``!!#[;T2(GOZ`````")PF:% -MP'0-#[?`@+P%8`@``/]U1TB+K?`(``!(@<5X%```2(N]\`@``.@`````1(GF -M*<9`#[;V2(GOZ`````")PF:%P`^$V0$```^WP("\!6`(``#_#X3(`0``#[?" -M#[:$!6`(``!F@?J!``^'V0```$B+C8@)```/M\!(:<#(#P``2(TT`4B+5A!( -MA=)T<0^VA>`(```\_W08#[;`2&G`R`\``$B-!`&_@````$@YPG0C#[:%X0@` -M`#S_=!P/ML!(:<#(#P``2(T$`4@YPG4)OX$```!`B'L"@'Y:`'0PN@`````/ -MML(/MDP&<+@!````T^`)0R"#P@$X5EIV$>ODQD,"_TB+1@@/MD`-B4,@Q@,! -M#[9&68A#`4B+1GA(B4,$2(N&B````$B)0PQ(BX:0````2(E#%(N&H````(E# -M'+@`````Z=X````/M\!(C03`2,'@!4F)Q$P#I6`)``#&0P+_Q@,"2(N58`D` -M``^V1!`[B$,!28N$)(@````/MD`-B4,@00^VA"05`0``/`)U+<=#!$A05`#' -M0PQ2;V-KQT,09713=,=#%&]R(`!!#[=T)#Y(C7L7Z/&Y___K2SP#=2'&0P$0 -MQT,@`0```,=#!$A05`#'0PQ%2C,T9L=#$#``ZR;&0P1V00^W="0\2(U[!>BW -MN?__QD,,9$$/MW0D/DB->PWHI+G__\9#'')!#[9T)#E(C7L=Z%&Y__^X```` -M`.L%N/____];74%<PTB#["A(B1PD2(EL)`A,B60D$$R);"083(ET)"!(B?M) -MB?1,BW=X2(M&2$B).$B+1V!(A<!U&L:&L@````)(B??_EL@```#I:@8``&9F -MD&:0]D!,`G0:QH:R`````DB)]_^6R````.E*!@``9F:09I!,B??H`````$B) -MQ4B%P&:0=1Y!QH0DL@````),B>=!_Y0DR````.D:!@``9F:09I#'@)0````` -M````3(E@:$B+0V!(B44H2(M#8`^W0#AFB44@QD4D@$$/MH0DL````#P"#X1I -M`0``/`)W"H3`=!R0Z4(#```\`P^$\`$``#P$D`^%,0,``.FX`0``2(M#8/9` -M:`$/A)\```!!#[:$)+$```"H`G0&QD4XB.L0@^`$/`$9P(/@!8/H=HA%.$F+ -ME"20````00^WC"28````QD4Y`$B)T$C!Z#B(13I(B=!(P>@PB$4[2(G02,'H -M*(A%/$B)T$C!Z""(13U(B=!(P>@8B$4^2(G02,'H$(A%/TB)T$C!Z`B(14"( -M54'&14(`QD5#`(G(9L'H"(A%1(A-1<9%1@#&14<`ZVU!#[:$)+$```"H`G0& -MQD4X*.L0@^`$/`$9P(/@!8/`*HA%.$F+E"20````00^WC"28````QD4Y`$B) -MT$C!Z!B(13I(B=!(P>@0B$4[2(G02,'H"(A%/(A5/<9%/@")R&;!Z`B(13^( -M34#&14$`2(M#8$@%[````$B)15#&13`@#[?!P>`)B44T@XV4`````NGY`0`` -M9F9FD$$/MH0DD````#P0=P7V`P)U#D'&A"2R````!NDD!```2(U].`^VT$F- -MM"28````Z`````!(BT-@2`7L````2(E%4,9%,""!C90``````!``QD4EJT'V -MA"2Q````!@^$D@$``$&+A"24````B44TZ8(!``!!#[:$)+$```"#X#`\('41 -MQD4X&\9%.0'&13P`Z6$!``#&13@UZ5@!``!(BT-@#[9`2*@!=">H!'0C@8V4 -M```````@`$$/MY0DG````&9!.Y0DD@```'43ZV-F9I!!QH0DL@````;I9@,` -M`$$/MH0DFP```#SC=$4\XW<3/$)T/3RP=!T\0'4G9F:09I#K+CSL=`X\[W0F -M/.5F9F:0=1#K'&9!B90DD@```&9FD.L.0<:$)+(````&Z10#``#&13BP00^W -MA"20````B$4Y00^WA"22````B$4Z00^WA"24````B$4[00^WA"26````B$4\ -M00^WA"28````B$4]00^VA"2:````B$4^00^VA"2;````B$4_00^VA"21```` -MB$5`00^VA"23````B$5!00^VA"25````B$5"00^VA"27````B$5#00^VA"29 -M````B$5$0?:$)+$````&="9!#[>$))P```#!X`F)132#C90````$ZPY!QH0D -ML@````;I3P(``$C'A:``````````00^VA"2Q````J`8/A!\"``"H`G0)@XV4 -M````".L'@XV4````$$R-;5A)BYPDN````$B%VW0+0?:$)+$````!=39)BX0D -MP````$B%P`^$"@(``$F+MD`*``"Z`````$R)Y__0A<`/A/$!``!)BYY`"@`` -M2(7;=#E(B>_H`````+X`````3(GOZ`````!(@\,0BU/P2(MS^$R)[^@````` -MBT/T2(/#$(7`#X6)`0``Z^"^`````$R)[^@`````BT4T/0`(``!W.TR)]^@` -M````2(G!2(7`=0Y!QH0DL@````OI7P$``$B+0!!(B45(2(E->(M5-$B+<1A, -MB>_H`````.M4/0```0!W/TR)]V9F9I#H`````$B)P4B%P'4.0<:$)+(````+ -MZ1D!``!(BT`02(E%2$B)37B+531(BW$83(GOZ`````#K#D'&A"2R````!NGN -M````00^VA"2Q````J`0/A-````!!@+PDL`````-U'DF+M"2@````2(7V=!%( -MBWU(BU4TZ`````#IIP```$F+E"2X````2(72=1-)BX0DP````$B%P`^%N``` -M`.MA3(MM2*@!=0I(B=-F9I!FD.LI28N$),````!(A<!T'$F+MD`*``"Z`0`` -M`$R)Y__0A<!T!TF+GD`*``!(@\,0BU/P2(MS^$R)[^@`````BT/P20'%BT/T -M2(/#$(7`=2CKWHM%-$B+34B%P'0;B<)(B<C&``!(@\`!2(/J`70)Z_&#C90` -M```!2(GN3(GWZ`````#K,4B)[DR)]^@`````3(GG0?^4),@```#K&;L````` -MZ4K^__],BVU(9F:09F:0Z5K___](BQPD2(ML)`A,BV0D$$R+;"083(MT)"!( -M@\0HPV9F9I!F9F:09F:09F:055-(@^P(2(G]2(GSN`````#&!!@`2(/``4@] -M@````'7P@[T("0```0^40Q,/ME4Z#[9-.0^V=3@/MD4[B$,#B%,"B$L!0(@S -M@$L1$`^W13!FB4,$#[=%,F:)0P:+A0@)``"(0W#&0Q(@#[=5,F:!^B`A=`=F -M@?HB(75(QD,7`DB-0SS'0SQ2;V-KQT-`97120<=`"$E$(%/'0`Q31"`RQT`0 -M,3)X(,=`%$-O;G3'0!AR;VQL9L=`'&5RQD`>`.D!`0``C8+PV/__9H/X`782 -M9H'Z0"%T"V:!^D0A#X6G````QD,7!`^W53*-@O#8__]F@_@!=T1(C4,\QT,\ -M4F]C:\=#0&5T4D''0`A)1"`RQT`,-S%X(,=`$%-!4R#'0!1#;VYTQT`8<F]L -M;&;'0!QE<L9`'@#IBP```&:!^D`A=`=F@?I$(75]2(U#/,=#/%)O8VO'0T!E -M=%)!QT`(240@4\=`#%-$(#+'0!`Q-'@@QT`40V]N=,=`&')O;&QFQT`<97+& -M0!X`ZSS&0Q<(2(U#/,=#/%)O8VO'0T!E="`WQT`(-3`@4\=`#$%402#'0!!# -M;VYTQT`4<F]L;&;'0!AE<L9`&@`/MD,2]F,7A,"Z@/___P]$PHA#$$B-0QC' -M0QA(:6=HQT,<4&]I;L=`"'0@5&7'0`QC:&YOQT`0;&]G:<=`%&5S+"#'0!A) -M;F,NQD`<`$B+A0`)``!(A<!T"DB+0!!(B4-HZPA(BT402(E#:,=#8``@``!( -MBWT@OGP```#H`````(G"@>+P`P``P>H$B%-Q@^`/B$-S2(M](+Z`````Z``` -M``")PH'B``#P`\'J%(A3<B4```\`P>@0B$-T2(/$"%M=PV9F9I!F9I!F9I!! -M5T%6055!5%532(/L"$F)_8GU2(G3N`````!F9I!FD,8$&`!(@\`!2#W0```` -M=?"):PB#_3]^"DF!Q7@4``"#[4!(8\6Z`````$F#O,5@!`````^%Q`(``$AC -MQ4F)G,5@!```3(EK>$B)BX````!,B8.0````08!]40$/A9<"``"!_84````/ -MCW4"``!!#[:$!6`(```\_P^$9`(```^VP&:)1"0&#[?`2&G`F`$``$F)Q$T# -MI3@)``!!]D0D2P0/A#P"``!!BT0D2"4`__\`/0``_P`/A2<"``!!]D0D3`0/ -MA)@!``!!QH0DZ`````!!#[9$)$A(B<*#X@9(@_H&=3FH`0^$#`$``$'&1"1* -M!4'&1"1+!$$/MI0D@0```$F+="1828M\)%!,B>'H`````+H!````Z>(!``!( -M@_H$#X73`0``J`$/A,L!``!)BUPD4$F+1"1@2(7`#X6%````0<9$)$H#0<9$ -M)$L$@'L.`'1/O0````!,C7-@3(GWZ`````!(B<)(BT-H2(E3:$R),DB)0@A( -MB1"`>DK_=!A).=1T$T'&A"3I`````;H!````Z6<!``"#Q0$/MD,..>A_ND&` -MO"3I`````0^$2`$``$R)YDR)[^@`````N@$```#I.`$``(!X0@`/A2D!``!F -M@V!._4F+1"1@9L=`3B``28MT)&!,B>_H`````+H!````Z0<!``!)BT0D4`^V -M0`U!@'T^`'0MNP`````/MN@/MLM(B>A(T_BH`70/N@````")SDR)[^@````` -M@\,!03A=/G?;0<9$)$L&0<9$)$H%9D''A"3(``````!,B>9,B>_H`````+H! -M````Z9X```!-BV0D4$&`?"0.`'1?0;X`````38U\)&!,B?_H`````$B)PDF+ -M1"1H28E4)&A,B3I(B4((2(D0@'I*_W0D#[9"23PB=`0\#7482&/%2<>$Q6`$ -M````````N@````#K/V:008/&`44X="0.=ZP/MU0D!DB)WDR)[^@`````N@$` -M``#K&TACQ4G'A,5@!````````+H`````ZP6Z`0```(G02(/$"%M=05Q!74%> -M05_#D)")T,8'",9'`1)`A/9T!H!/`@3K!(!G`ON$P'0&@&<,W^L$@$\,(+@4 -M````PV9F9I#SPV9F9I!F9F:09F:09F:005=!5D%505154TB#[!A)B?U)B?9( -MB=6(3"0'18G'2(M&,$B)1"002,=&,`````!(A<`/A70!``#H`````$F)Q+@` -M````387D#X01`@``3(GOZ`````!(B40D$$B%P'453(GF3(GOZ`````"X```` -M`.GJ`0``0<9$)#@:0<9$)#D(0<9$)#H(0<9$)#L`0<9$)#S_0<9$)#T`0<9$ -M)"6K00^W1CAF08E$)"!-B6PD*$''1"0T_P```$''A"24````"````$B+1"00 -M2(M`$$F)1"1(2`7_````28E$)%!!QD0D,"1(BT0D$$F)1"1X2<>$)*`````` -M````0<9$)"2`28U<)%B^`````$B)W^@`````2(M$)!!(BW`8NO\```!(B=_H -M`````$R)YDR)[^@`````N\C____K(&9F9I!F9I"_Z`,``.@`````@^L!3(GO -MZ`````"$VW0.00^V1"0D/(!TW83`=#%(C70D$$R)[^@`````00^W="0R28M^ -M4.@`````3(GF3(GOZ`````"X`````.G'````2<=$)'@`````3(GF3(GOZ``` -M``!(BT0D$$B+6!!!#[;7#[9T)`=(C7L$Z`````!!B<3&`P#&0P$`QD,"`,9# -M`P!(B>Y,B>_H`````$B-53BX`````&9FD,8$$`!(@\`!2(/X$'7R08U$)`3& -M13@5QD4Y$8A%/,9%/0!(C5U81`^VX$2)933'A90`````````2(M4)!!(BT(0 -M2(E%2$B)57B^`````$B)W^@`````2(M$)!!(BW`81(GB2(G?Z`````"X`0`` -M`$B#Q!A;74%<05U!7D%?PY"0B?!FB7<(QD<.`&;'1PP``&:%]G0?C5#_N0`` -M``!F9I!(BP=FB10(2(/!`H/J`6:#^O]U[//#9F9FD&9FD&9FD$&)\&:)=PC& -M1PX!9L='#```9H7V=!ZZ`````+D`````2(L'9HD4"(/"`4B#P0)F1#G"=>SS -MPV9F9I!F9I!F9I"`?PX!=2H/MT<,#[?(2(L7#[<42H/``6:)1PQF.T<*<@9F -MQT<,``!F@V\(`0^WPL-(BQ</MT<(@^@!9HE'"`^WP`^W!$+#9F9FD&9FD&9F -MD(!_#@%U*@^W5P@/MT<,`<(/MT<*B<&)T,'Z'_?Y2&/22(L'9HDT4&:#1P@! -MPV9FD`^W1P@/M\A(BQ=FB31*@\`!9HE'",-F9F:09F:09F:09H-_"``/E,`/ -MML##D)"0D$B+#T@YSW4(N0````#K#Y!(BQ%(BT$(2(E""$B)$$B)R,-F9F:0 -M9F9FD&9FD&9FD$&)T(32=#H/M@<Z!G4H2(GQO@````#K%`^V5P$/MD$!2(/' -M`4B#P0$XPG4*@\8!1#C&=>3K"[@`````9F:09I##N`$```##9F:09F:09F:0 -MQD<!`$"(=P+'1P0`````PT&)T`^V5P$/ML)(C01`2,'@`DB)P4@#3PB#P@&( -M5P%$`4<$N`````#&!`@`2(/``4B#^`QU\DB),42(00A,B<(/ML:(00E$B<+! -MZA"#XC\/MD$*@^#`"="(00K#9F9FD`^V1P$Z!P^2P`^VP,-F9I!(B?FX```` -M`(!Y`O]U"&:),8A1`NL-@\`!2(/!!&8]@`!UY0^WP,-F9I!F9I!F9I!!B=`/ -MM\9(C02'@'@"_W409D2)`(A(`@^WQL-F9I!FD`^VT4$/M_#H``````^WP,-( -MB?FX`````#A1`G439CDQ=0[&00+_9L<!___K$&9FD(/``4B#P01F/8``==L/ -MM\##9F9FD&9F9I!F9F:09F:0N`````")P3A4AP)U!F8Y-(=T#X/!`4B#P`%( -M/8````!UXV:!^8``N(`!```/1,@/M\'#9F9FD&9FD&9FD&9FD`^V1S@\"'0^ -M/"AT.CRH#X3_````/(@/A#D!```\"F:0="0\*G0@/*H/A.4````\B@^$'P$` -M`#PO=`P\CV9F9I`/A90!```\+P^$D@```#PO=R(\"G1?/`IW"CP(9F9FD'5$ -MZU$\*'1X/"IF9I!F9I!U-.ML/(\/A-D````\CV:0=Q4\B`^$RP```#R*9F9F -MD'44Z;X````\J&9F9I!F9I!T<3RJ=&VY`````+@`````Z1,!```/MD<ZP>`( -M#[97.PG0#[97.8/B'\'B$`G0B<$/MD<\Z>\```!F9F:09F:0#[97.L'B&`^V -M1SO!X!`)P@^V1ST)P@^V1SS!X`B)T0G!#[9'/\'@"`^V5T`)T.FU````#[97 -M.L'B&`^V1SO!X!`)P@^V1ST)P@^V1SS!X`B)T0G!#[97/L'B&`^V1S_!X!`) -MP@^V1T$)P@^V1T#!X`@)T.MS#[97.DC!XC@/MD<[2,'@,$@)P@^V1T%("<(/ -MMD<\2,'@*$@)P@^V1SU(P>`@2`G"#[9'/DC!X!A("<(/MD<_2,'@$$@)P@^V -M1T!(P>`(2(G12`G!#[970L'B&`^V1T/!X!`)P@^V1T4)P@^V1T3!X`@)T$B) -MCX@```")AY````!F@T\B`?/#9F9FD+K_____9H7V=#%(B?F_`````+K_____ -M2<?``````&:0#[8!,=`/ML#!Z@A!,Q2`@\<!2(/!`68Y]W7EB=##9I!32(/L -M8$B)^T0/MD\[1`^V1SH/MD\Y#[97.`^V1T>)1"18#[9'1HE$)%`/MD=%B40D -M2`^V1T2)1"1`#[9'0XE$)#@/MD="B40D,`^V1T&)1"0H#[9'0(E$)"`/MD<_ -MB40D&`^V1SZ)1"00#[9'/8E$)`@/MD<\B00D2(G^2,?'`````+@`````Z``` -M```/MW,@2,?'`````+@`````Z`````!(@\1@6\-F9F:09F9FD$B#[`@/MD8! -MB$<!#[9&`HA'`HM&!(E'!$B+1P@/ME<!2(T44DC!X@)(BW8(2(G'Z`````!( -M@\0(PV9F9I!F9I!(BT]@#[976+@`````9F:0Q@0X`$B#P`%(/:@```!U\$B) -M3V"(5UC#9F9FD&9F9I"X`````+K_____9F:09F:0B!0X2(/``4@]``(``'7Q -M\\-F9F:09F9FD&9F9I!F9I"Y`````$@[/W022(M/"$B+$4B+00A(B4((2(D0 -M2(G(PTB+#XN!!`$``(G"@>)^__[_B9$$`0``)7[_\O](BU<(B0)(BU<(B4(, -M2(M7"(E"$$B+5PB)0A1(BU<(B4(82(M7"(E"!$B+!XN`5`$``(D%`````"7^ -M`/__2(L7B8)4`0``PV9F9I!F9I!F9I!F9I")\4B+!XN0!`$``(D5``````^W -M1SQF/8!D=`QF/8"1=`9F/8"4=1$/MLF#P0BX`0```-/@"<+K$$`/MLZ#P0RX -M`0```-/@"<)(BP>)D`0!``##9F9FD&9F9I!F9I!F9I")\4B+!XN0!`$``(D5 -M``````^W1SQF/8!D=`QF/8"1=`9F/8"4=1$/MLF#P0BX_O___]/`(<+K$$`/ -MMLZ#P0RX_O___]/`(<)(BP>)D`0!``##9F9FD&9F9I!F9I!F9I")\4"`_O]T -M;T"`_A]W,HNW&`$``+H!````T^*)T/?0(?")AQ@!``"+AU@!``")!0`````A -MT'1`B8=8`0``PV:0B[<<`0``#[;!@^@@N@$```")P=/BB=#WT"'PB8<<`0`` -MBX=@`0``B04`````(=!T!HF'8`$``//#9F9FD&9FD$B#["A(B5PD"$B);"00 -M3(ED)!A,B6PD($B)U8GP3(LO0(#^`P^&B0```$B-',4`````@>/X!P``38VD -M'0`"``!!QP0D#`$``+\0)P``Z`````!)C9P=!`(```^V50/!XA@/MD4"P>`0 -M"<(/MD4`"<(/MD4!P>`("<*)$T''!"00`0``OQ`G``#H``````^V50?!XA@/ -MMD4&P>`0"<(/MD4$"<(/MD4%P>`("<*)$^F$````2(T<Q0````"!X_@'``!. -MC:0K``(``$''!"0,`0``OQ`G``#H`````$J-G"L$`@``#[95`\'B&`^V10+! -MX!`)P@^V10`)P@^V10'!X`@)PHD30<<$)!`!``"_$"<``.@`````#[95!\'B -M&`^V10;!X!`)P@^V100)P@^V107!X`@)PHD32(M<)`A(BVPD$$R+9"083(ML -M)"!(@\0HPTB#[!A(B5PD"$R)9"0028G\0`^VWHG>Z`````"_$"<``.@````` -MB=Y,B>?H`````$B+7"0(3(MD)!!(@\08PY!!5T%6055!5%532(/L6$F)_XA4 -M)%=(BQ>`?SX`#X0\`@``0;P`````0;W@____0;[P____0`^VQDB)1"1(2(V" -M@`$``$B)1"1`2(V*A`$``$B)3"0X2(V"H`$``$B)1"0P2(V*I`$``$B)3"0H -M2(V"4`(``$B)1"0@2(V*5`(``$B)3"082(V"X`$``$B)1"002('"T`$``$B) -M5"0(9F:02(M$)$A$B>%(T_BH`0^$C0$``$2)Y8/]`W871(GJ2`-4)"B+`HD% -M`````(/@_HD"ZQN-%.T`````B=)(`U0D.(L"B04`````@^#^B0*_$"<``.@` -M````@'PD5P!T<H/]`W871(GR2`-4)!"+`HD%`````(/(`HD"ZQN-%*T````` -MB=)(`U0D"(L"B04`````@\@"B0)$B?!(BTPD$$@!P8T$K0````")P$B+5"0( -M2`'"@_T#=@J+`8D%`````.L(BP*)!0````"H`G1TZ^-FD(/]`W8O1(GK2(M$ -M)"!(`=C'``````"_$"<``.@`````2`-<)!B+`XD%`````(/(`8D#ZT&-'.T` -M````B=M(BT0D($@!V,<``````+\0)P``Z`````!(`UPD&(L#B04`````@\@! -MB0/K-V9F9I!F9I"#_0-V*T2)ZDB+1"0P2`'0QP`!````2`-4)"B+`HD%```` -M`(/(`8D"ZS9F9I!F9I"-!.T`````B<!(BU0D0$@!PL<"`0```$@#1"0XBQ") -M%0````"#R@&)$&9F9I!F9I!!C50D`4F#Q`%!@\4(08/&!$$/MD<^.=`/AT+^ -M__](@\186UU!7$%=05Y!7\-F9I!54TB#[`B)T4B++X/^`W8@C03UX/___XG` -M2(V4!:`!``"+`HD%`````(/@_HD"ZQZ-!/4`````B<!(C90%@`$``(L"B04` -M````@^#^B0*$R71^@_X#=B"-!+7P____B<!(C90%X`$``(L"B04`````@\@" -MB0+K'HT$M0````")P$B-E`70`0``BP*)!0````"#R`*)`HT4M0````"-0O") -MP$B-C`7@`0``B=)(C905T`$``(/^`W8*BP&)!0````#K"(L"B04`````J`)T -M=>OC@_X#=CB-'/7@____B=M(C80K4`(``,<``````+\0)P``Z`````!(C9PK -M5`(``(L#B04`````@\@!B0/K-HT<]0````")VTB-A"M0`@``QP``````OQ`G -M``#H`````$B-G"M4`@``BP.)!0````"#R`&)`TB#Q`A;7<.0D)"0D)!(B?E( -MBS\/MX&X$@``@\`!9HF!N!(``&8[@;P2``!R"6;'@;@2``````^W@;@2``!( -MP>`"2`.!<!$``(L6B1`/MX&X$@``B8<L`0``PV9FD$&)T+@`````Q@0(`$B# -MP`%(@_@$=?*)\F:!XO\/#[<!9B4`\`G09HD!#[97#<'B#(L!)?\/\/\)T(D! -M#[9'"H/@`DB#^`$9TH/B`H/"`<'B!0^V00.#X!\)T(/($(/@]XA!`_9'"@%T -M%T2)PH/B?\'B!`^W00)F)0_X"=!FB4$"\\-F9F:09F9FD&9FD&9FD+@````` -MQ@0P`$B#P`%(@_@-=?(/MD<YB`8/MD<ZB$8!#[9'.XA&`@^V1SR(1@,/MD<] -MB$8$#[9'/HA&!0^V1S^(1@;VAY8````$=",/MD=`B$8(#[9'08A&"0^V1T*( -M1@H/MD=#B$8+#[9'1(A&#+@!````PV9F9I!F9F:09F:0N@````!!N@````!! -MN?_____K4@'21(G`T_BH`702]\(````!=1J!\G<GVP#K$F:0B=`U=R?;`/?" -M`````0]%T(/I`40YR77+28/"`4F#^@AU$XG0P>@0B`>)T,'H"(A'`8A7`L-% -M#[8$,KD'````ZZ)F9F:09F9FD&9F9I!F9I!(BX<0$0``BQ"+4`2+4`B+0`R) -M!0````##9F9FD&9FD$B#[`A(BX:(````1`^V1T-%A,!T(@^V4`VY`````/;" -M`70,ZQ)(B=!(T_BH`74(@\$!1#C!=>[&1D(,Z`````!(@\0(PV9F9I!F9F:0 -M9F:02(/L"$B)^$B+/V;'0$X!`,9`0AU(B<;H`````$B#Q`C#9F9FD&9F9I!F -M9F:09F:02(/L"$B+/P^W]DC!Y@-(`[>X"0``2(LV2(7V=#U(BQ</MT8R9L'H -M!0^WP(T$A0`#``")@G`!``!(BQ</MTXR@^$?N`$```!(T^")@G0!``"Z```` -M`.@`````2(/$",.005=!5D%505154TB#[`A(B?U)B?:`?T,`="6Y`````/9& -M#0%T#NL800^V1@U(T_BH`74,@\$!#[9%0V8YR'?H28M&0$B%P'0<2(VPD``` -M`$B+?2CH`````$F+=D!(B>_H`````$F-1F!).49@#X1<`0``28G'3(G_Z``` -M``!(B<-(@WA```^$*0$``("X@P`````/A*(```!F@WUT``^$EP```$&]```` -M`$&\`````)!(BX6X"0``3`'@2(LP2(7V=&,/MT8@9CM#.'599CV%`'=3#[?` -M@+P%:`@``/]T1DB+50`/MT8R9L'H!0^WP(T$A0`#``")@G`!``!(BU4`#[=. -M,H/A'[@!````2-/@B8)T`0``QD8D(;H`````2(GOZ`````!!@\4!28/$"`^W -M171$.>@/CW;___](BT-`2,=`8`````#V0TP$=1E(B>_H`````$B+<T"Z`0`` -M`$B)[^@`````2(M#0`^V4`(/MG`!2,?'`````+@`````Z`````!(BU-`2(NU -M^`@``+\!````Z`````!(BU-`2(NU^`@``+\&````Z`````!(QT-``````$&` -M;@X!2(G>2(GOZ`````!-.7Y@#X6G_O__2<=&0`````!(BT4`BXA8`0``B0T` -M````A<ET"DB+10")B%@!``!(@\0(6UU!7$%=05Y!7\-F9F:09F:09F:09F:0 -M2(/L"$R+!T$/MG!#0(3V=#5)C8#`$@``N0````!(.?AU&NLB#[;!2(T40$B- -M%)!)C930P!(``$@Y^G0/@\$!0#CQ=>#K!;D`````#[;!2(T40$B-%)!(C035 -M`````$F+M`#($@``2(7V='WV1@H"='=)C80`P!(``$@Y1B!U:0^V1EB$P'0( -M@\`!B$98ZUE(BU9(2(/J.$B-3DA(C4(X2#G(=$1(@WH0`'4LZPIF9I!(@WH0 -M`'4@QD98`0^VBKL```!)B[BX$```2<?``````.@`````ZQ%(BU(X2(/J.$B- -M0CA(.<AUR$B#Q`C#9F:02(/L*$B)7"0(2(EL)!!,B60D&$R);"0@2(G[2(GU -M2(M&<$R+:"@/MU8@9H'ZA0!W=`^WP@^VA`=H"```//]T96:#^G]W'`^VP$B+ -MET`)``!(:<"8`0``2(M$$%`/MD`(ZTAF@?J!`'<<#[;`2(N7D`D``$AIP,@/ -M``!(BT00"`^V0`CK)0^VP$B+EV@)``!(C03`2,'@!4B+A!"(````#[9`".L% -MN/\```!(F$0/MJ0#[@@``$B+=7A(A?9T"$B)W^@`````2(GN2(G?Z`````!! -M#[;$2(T\@$B-/+A(C;S[R`$``$R)[D'_E:````!(BUPD"$B+;"003(MD)!A, -MBVPD($B#Q"C#9F9FD&9F9I!!5%532(GU2(G39H%^..$!=1$/MD8Z@^@10;P` -M````/`%V+TB+%TB+ND`)```/MT4@OFB6`0!F/84`=Q(/M\`/MH0":`@``$AI -M\)@!``!,C20WQD,$!8!C!?Z`(]^X`````&:!?3CA`746#[9%.H/H`3P!#Y;` -M#[;`9F9FD&9FD,'@!P^V$X/B?PG"B!,/MH66````@^`!P>`&@^*_"<*($_:% -ME@````%T#DR)Y^@`````9HE#".L$9HE+"`^W0PB(125F@7TXX0%U)0^V53J- -M0O\\`7<*#[95.X/B#^LJD(U"[[H/````/`%V'69F9I"Z`````$F#?"1@`'0, -M00^VE"2!````@^(/#[8#@^#P"="(`UM=05S#9F9FD&9F9I!(@^PX2(E<)`A( -MB6PD$$R)9"083(EL)"!,B70D*$R)?"0P28G\2(GS28G7#[9&.#P(=`\\*'0+ -M/*AT!SR(9F:0=0Z#BY0````*ZR5F9I!FD#P*=`X\*G0*/*IT!CR*9I!U#H.+ -ME`````)F9F:09F:0#[=[.&:!_^$!=1P/MD,Z@^@1/`%W$8.+E`````BX```` -M`.DI!0``1(M#.$&!X/___P!!@?CA`1``#X7A````#[=3(&:!^H4`#X?2!``` -M#[?"00^VC`1H"```B<B`^?]T9F:#^G]W'0^VP4F+E"1`"0``2&G`F`$``$B+ -M1!!0#[9`".M#9H'Z@0!W'0^VP4F+E"20"0``2&G`R`\``$B+1!`(#[9`".L? -M#[;!28N4)&@)``!(C03`2,'@!4B+A!"(````#[9`"`^VP$$/MH0$[@@``$B- -M%(!(C12028VTU,@!``!)BY0DD`D```^VP4AIP,@/``!!O0````#V1`)=$`^% -M2@(``,9#)`1!QP<`````N`$```#I-00``&9FD&:0#[=3(+G_````N/____]F -M@?J%``^'?0````^WPD$/MHP$:`@``(G(@/G_=&=F@_I_=QX/ML%)BY0D0`D` -M`$AIP)@!``!(BT004`^V0`CK1)!F@?J!`'<=#[;!28N4))`)``!(:<#(#P`` -M2(M$$`@/MD`(ZQ\/ML%)BY0D:`D``$B-!,!(P>`%2(N$$(@````/MD`(#[;) -M1`^V\$ECQD$/MJP$[@@``$B-1*T`2(U$A0!)C;3$R`$```^WP4AIP)@!``!) -MB<5-`ZPD0`D``&:!_^$!=0P/MD,Z@^@!/`%V))!F@?G_`'0'0?9%2P1U%<9# -M)`9!QP<`````N`$```#I+0,``$$/ME5(B=�%T(_;"!'0>00^V1"1$03I$ -M)$YR$4''!P$```"X`0```.G^`@``387M#X3U````A<EF9I`/A.H```#VP@0/ -MA.$```!(B=Y,B>_H`````(3`=17&0R0$0<<'`````+@!````Z;T"``!!@+V# -M````'W810<<'`0```+@!````Z:("``#V@Y8````!=!=(C42M`$B-1(4`0?:$ -MQ-0!```!=!OK7TB-1*T`2(U$A0!!]H3$U`$```$/A+H!``!$B?9,B>?H```` -M`(3`=!%!QP<!````N`$```#I20(``/:#E@````$/A(T!``!(C42M`$B-1(4` -M0?:$Q-0!```!#X1T`0``3(GOZ`````!F@_@?#X9B`0``0<<'`0```+@!```` -MZ0`"``#V1@H"=#)!@?CA`1``9F:0#X0[`0``00^VA8,```!!.H6"````<AY! -MQP<!````N`$```#IR`$``$&!^.$!$``/A`P!``!!#[=%:H![..$/A?T```"` -M>SD!#X7S````2-'H2(G"@^(!#[9#.H/H!CP)#X?&````#[;`_R3%`````$&X -M`0```+D!````2(G:3(GN3(GGZ`````"$P`^%L````$''!P(```"X`0```.E. -M`0``0;@!````N0````!(B=I,B>Y,B>?H`````(3`#X5^````0<<'`@```+@! -M````Z1P!```/MLI!N`$```!(B=I,B>Y,B>?H`````(3`=5)!QP<"````N`$` -M``#I\`````^VRD&X`````$B)VDR)[DR)Y^@`````A,!U)D''!P(```"X`0`` -M`.G$````QD,D!$''!P````"X`0```.FO````28V\)*@/``#H`````(3`=!%! -MQP<!````N`$```#IC0```(![..%U3H![.0%F9I!U18![.@]U/X![/0%F9F:0 -M=34/MG,\P>8(#[9#.P'&#[?V3(GGZ`````!(.T-H=05(A<!U$L9#)`1!QP<` -M````N`$```#K.;@`````ZS)FD$$/MH0D[0D``$B-%(!(C12028VTU,@!``!) -MBY0DD`D``+@XN`\`Z:K[__]F9I!FD$B+7"0(2(ML)!!,BV0D&$R+;"0@3(MT -M)"A,BWPD,$B#Q#C#9F9FD&9FD&9FD&9FD$B#[`A(BS_H`````$B#Q`C#9F9F -MD&9F9I!F9F:09F:005=!5D%505154TB#[%A)B?U(B?5(BY]`$0``9L=&,O\/ -M2(U4)"SH`````(3`=`F+1"0LZ0T+``"+13@E____`#WA`1``#X7;````OX@3 -M``#H``````^W52!F@?J%``^'N`H```^WPD$/MHP%:`@``(G(@/G_=&-F@_I_ -M=QP/ML%)BY5`"0``2&G`F`$``$B+1!!0#[9`".M!9H'Z@0!W'`^VP4F+E9`) -M``!(:<#(#P``2(M$$`@/MD`(ZQX/ML%)BY5H"0``2(T$P$C!X`5(BX00B``` -M``^V0`@/ML!!#[:$!>X(``!(C12`2(T4D$V-M-7(`0``28N5D`D```^VP4AI -MP,@/``!(`<)(B50D$$C'1"0(`````$C'1"08`````.EH`0``#[=5(+G_```` -M9H'ZA0!W#`^WPD$/MHP%:`@```^W=3AF@?[A`74/#[9%.H/H$3P!#X:\```` -M9H'ZA0!W=0^WPD$/MH0%:`@``#S_=&5F@_I_=QP/ML!)BY5`"0``2&G`F`$` -M`$B+1!!0#[9`".M(9H'Z@0!W'`^VP$F+E9`)``!(:<#(#P``2(M$$`@/MD`( -MZR4/ML!)BY5H"0``2(T$P$C!X`5(BX00B`````^V0`CK!;C_____#[;`00^V -MA`7N"```2(T4@$B-%)!-C;35R`$```^WP4AIP)@!``!)`X5`"0``2(E$)`AF -M@?[A`75&ZS(/M\%(C03`2,'@!4D#A6@)``!(B40D&$R+L(@```!(QT0D"``` -M``!(QT0D$`````#K1`^V53J-0N\\`78GC4+_/`%V(&:!^?\`=`M(BT0D"/9` -M2P1U#L9%)`:X`````.G)"```2,=$)!``````2,=$)!@`````2(UT)$A,B>_H -M`````$&)QV:)13),B>_H`````$F)Q+@"````387D#X2*"```3(FE@````$$/ -MM]=(B10D2&G"L`0``$B-'!A(C4,@22N%0!$``$D#A4@1``!(BU0D2(E"($C! -MZ"!(BU0D2(E")$F+1"082(M4)$B)0BA(P>@@2(M4)$B)0BQ(BT0D2&9$B7@( -MN`````#&!!@`2(/``4@]L`0``'7P9H%]..$!=54/MD4Z@^@1/`%W2DB-3"0P -M2(M$)$@/ME`(2(GN2(M\)`CH`````$B-@R`$``!)*X5`$0``20.%2!$``$B+ -M5"1(B4(02,'H($B+5"1(B4(4Z3X!``"000^V5@KVP@%U+(M%."7___\`/>$! -M$``/A,T```!(BTPD"`^V04BH`0^$O````*@$#X2T````]H66````('0/2(UT -M)#!(B>_H`````.L;2(U,)#!(BT0D2`^V4`A(B>Y(BWPD".@`````2(V#(`0` -M`$DKA4`1``!)`X5($0``2(M4)$B)0A!(P>@@2(M4)$B)0A1F@7TXX0%U#P^V -M13J#Z!$\`0^&E````$B+1"0(#[902$B)T(/@!DB#^`9U?_;"`71Z2(G822N% -M0!$``$D#A4@1``!(BU0D2(E"&$C!Z"!(BU0D2(E"'.M3]L("=$Y(B=A)*X5` -M$0``20.%2!$``$B+5"1(B4(82,'H($B+5"1(B4(<2(V#(`0``$DKA4`1``!) -M`X5($0``2(M4)$B)0A!(P>@@2(M4)$B)0A1(BT0D2(!(`0(/ME592(M$)$AF -MB5`"@'U9`'0SOP````")^$B-!$!(P>`"28MT)!!(BTU@2(L4"$B)%`:+5`@( -MB50&"(/'`0^V15DY^'?2BU4T2(M$)$B)4`QF@7TXX0%U00^V13J#Z!$\`7<V -M00^WSTB+5"1(2(GN3(GWZ`````!(C4PD,$B)VDB)[DR)]^@`````08!F#/[I -MC00``&9FD&:000^V1@JH`@^$(@0``$B+1"1(QD`&_DB+1"1(@&`'_DB#?"0( -M``^$N````$B+3"0(#[912$B)T(/@!DB#^`8/A9\```#VP@$/A)8```!!#[?/ -M2(M4)$A(B>Y,B??H`````/:%E@````%T$$B+1"1(#[=`",'@`XA$)#%(C4PD -M,$B)VDB)[DR)]^@`````]H66`````70'08!.#`'K!4&`9@S^Q@.A2(M4)`@/ -MMH+J````@^`/#[93`8/B\`G"B%,!2(M,)`@/MT$X@\`!9L'`"&:)0P))B<Q) -M@<34````Z3T#``!F@7TXX0$/A20"```/MD4Z/`]T$T&\`````#P0#X4;`P`` -MZ:X````/ME4\P>((#[9%.P'"2(M$)$C&0`0-2(M$)$B`8`7^@$PD0PA(BW0D -M2`^V125!#[:-^@```-/@9@E&"$B+3"1(#[9!`8/@'X/(((A!`4B+13Y(B8,X -M!```9L'""&:)DT0$```/MD4]B(-"!```Q@.12(M4)`@/MT(X@\`!9L'`"&:) -M0P)(BTPD"`^VD>H```"#X@\/MD,!@^#P"="(0P%)B<Q)@<34````Z6@"``!( -MBU0D2`^V125!#[:-^@```-/@9@E"",8#@6;'0P+__TB+1"00#[:0NP```(/B -M#P^V0P&#X/`)T(A#`4B#?4@`=0[&120AN`````#IS0,``/9%.P%T*4R+95!- -MA>1T($F+O;@0``!,B>;H`````(/@#P^V4P&#XO`)PHA3`>L%3(MD)!!(BU5( -M#[9"`;X0````/(`/A(8````\@'<?/!5W$CP09F:09I!S9X/H`CP!=T3K5SP7 -M9F:0=SOK7CR%="X\A69FD&9FD'<0/(%T0SR"=2-F9I!F9I#K(CR0<A>^*``` -M`#R29F:0=C4\DW4'OHP```#K*KX$````ZR,/MD($C32%"````)#K%;X(```` -MZPZ^#````&:0ZP6^'````(GRP>H"2(M$)$B(4`1(BTPD2&;!Z@B#X@$/MD$% -M@^#^"="(005(C;L@!```B?)(BW5(Z`````#I#0$```^V13B#Z`0\JW=`#[;` -M_R3%``````^V14#!X`@/ME5!C0P0@_D-=QBX`0```$C3X*G8/@``=`E(BT0D -M2(!(`01(BT0D2(!(`0'K"4B+1"1(@&`!^TB+1"1(QD`$#4B+1"1(@&`%_DB+ -M5"1(#[9%)4$/MHWZ````T^!F"4((2(M$)$B`8`$?QH,@!```!DR+9"0(28'$ -MU````$B-NR$$``!,B>;H`````$B-NR4$``!,B>;H`````$B+13A(B8-$!``` -M2(M%0$B)@TP$``!(BU0D"$B+@MP```!(B8,X!```Q@.12(M,)`@/MI'J```` -M@^(/#[9#`8/@\`G0B$,!#[=!.(/``6;!P`AFB4,"387D=&-)BP0D2(E#!.M9 -MJ`%T54$/M\](BU0D2$B)[DR)]^@`````]H66`````7002(M$)$@/MT`(P>`# -MB$0D,4B-3"0P2(G:2(GN3(GWZ`````#VA98````!=`=!@$X,`>L%08!F#/Y) -MBX6X"0``2(L4)$B)+-!$B?IFP>H%00^WWX'B_P<``(G9@^$?N`$```!(T^!! -M"825P`D``(M%."7___\`/>$!$`!U*$B-3"1`N@````")WDR)]^@`````#[9$ -M)$.#X!^#R$"(1"1#Z:0```!F@7TXX0%U-`^V13J#Z!$\`7<I2(MT)!A,B>_H -M`````$B-3"1`2(M$)!@/ME!0B=Y,B??H`````.MJ9I!(BW0D"$R)[^@````` -M2(U,)$!(BT0D"`^V4'*)WDR)]^@`````2(M,)`@/ME%(2(G0@^`&2(/X!G4N -M]L(!="D/MD0D0X/@'X/(8(A$)$,/ME%R@^)_P>($#[=$)$)F)0_X"=!FB40D -M0DB-="1`3(GOZ`````"X`P```.LI00^VA>T)``!(C12`2(T4D$V-M-7(`0`` -M28N5D`D``+@XN`\`Z<+U__](@\186UU!7$%=05Y!7\-F9F:09F9FD&9F9I!! -M54%455-(@^P(2(G]0;T`````3(VG``$``.FQ`0``D$R)Y^@`````2(G#2(-X -M<`!U-DB)[^@`````2(E#<$B%P'4E2(V5``$``$B+A0`!``!(B5@(2(D#2(E3 -M"$B)G0`!``#ID`$``(M#."7___\`/>$!$``/A-8````/MT,@9CV```^$R``` -M``^VT&:)4R!F@_I_=AIF@7LXX0%U*0^V0SJ#Z!$\`7<>9F9FD&9FD&:!^H4` -M=Q`/M\(/MHP%:`@``(#Y_W49QD,D!DB)WDB)[^@`````Z?4```!F9I!FD`^W -M<SAF@?[A`745#[9[.HU'[SP!#X?E````ZQIF9F:0#[;!2&G`F`$``$F)Q4P# -MK4`)``#K"HU'_SP!=C1F9I!F@?J``'0J9H'^X0%U"P^V0SJ#Z!$\`7880?9% -M2P1U$<9#)`9(B=Y(B>_H`````.M_2(G>2(GOZ`````"#^`*0=PZ#^`%S(.L. -M9F9FD&9FD(/X`W5;ZTM(B=Y(B>]F9I#H`````.M)2(.[@`````!T#TB-LX`` -M``!(B>_H`````$B-E0`!``!(BX4``0``2(E8"$B)`TB)4PA(B9T``0``ZS9( -MB=Y(B>_H`````&9FD$PYI0`!```/A4/^___K&0^VP4AIP)@!``!)B<5,`ZU` -M"0``Z1[___](@\0(6UU!7$%=PV9F9I!F9I!F9I!F9I!(@^Q(2(E<)!A(B6PD -M($R)9"0H3(EL)#!,B70D.$R)?"1`2(GU28G]3(MG4$V+-"1!#[9$)`RH$'0, -MQH?H````!NE\`@``#[:7Z````(#Z`0^$@@```(#Z`7(:@/H$#X2C````@/H& -M#X6L`@``9F:0Z4T"``#&A^@````!2(G^3(GWZ`````#&122!08!,)`P(2(.] -M@`````!T#TB-M8````!,B??H`````$F+A@`!``!(B6@(2(E%`$F-A@`!``!( -MB44(28FN``$``$R)]^@`````Z4$"``"#X/=!B$0D#("'ZP````'&A^@````` -MQD8D`DR)]^@`````3(GWZ`````#I$@(``,:'ZP````!(@[Z``````'0/2(VV -M@````$R)]^@`````28M-0$B%R0^$C@$``(M1!(U"`8E!!(/Z!0^'?`$``$F+ -MA@`!``!(B6@(2(E%`$F-A@`!``!(B44(28FN``$``$&`?4K_="1)BT5@2(7` -M=`:`>$(`=!5,B>J^`@```$R)Y^@`````Z8<!``!!#[9$)`R#X/>#R!!!B$0D -M#$F+=5A(A?9U%$&`?"0.`'4LZ>4```!F9F:09F:000^VE8$```!!N`````"Y -M`@```$R)Y^@`````Z3D!``!!OP````#&1"07`$F-1"1@2(E$)`A(BWPD".@` -M````2(G%28M$)&A)B6PD:$B+5"0(2(E5`$B)10A(B2A(BU5`2(72=!5)B[;X -M"```OP4```#H`````(!-3`)(B>J^!@```$R)Y^@`````@+V#`````'0V08U? -M`4&!_W^6F`!W)DR)]^@`````OP$```#H`````("]@P````!T"X/#`8'[@9:8 -M`'7:08G?@$0D%P$/MD0D%T$X1"0.#X=7____28M]8$B%_W420<9%2@-,B>Y, -MB??H`````.M@Z`````!FD.M700^V74I!@&0D#.])BX8``0``2(EH"$B)10!) -MC88``0``2(E%"$F)K@`!``!,B>J^!@```$R)Y^@`````@/O_=0Y,B>I,B>9, -MB??H`````$R)]^@`````2(M<)!A(BVPD($R+9"0H3(ML)#!,BW0D.$R+?"1` -M2(/$2,-F9F:005=!5D%505154TB#["A(B?U)B?5(BY=`"0``N&B6`0!F@7X@ -MA0!W$P^W1B`/MH0':`@``$AIP)@!``!,C20"2(N5$!$``$B!PD`(``!!#[9$ -M)'+!X`A(F$@!PHLRB34`````08GW0<'O$$B+E1`1``!(@<)`"```00^V1"1R -MP>`(2)A(`<*+0@2)!0````"(1"00B<+!Z@B(5"01P>@0B$0D$DB+E1`1``!( -M@<)`"```00^V1"1RP>`(2)A(`<*+0@B)!0````"(1"03B<+!Z@B(5"04P>@0 -MB$0D%<9$)!8`QD0D%P"+3"0008GV0<'N&$$/MM]$BT0D%$2)\HG>2,?'```` -M`+@`````Z`````")V(/P`8G"@^(!=!1%A/]T#T'&120`N`````#IH`(``$&` -M?22!=2%(C4PD$$2)\HG>3(GOZ`````!!QD4D`K@`````Z7@"``!!BT4X)?__ -M_P`]X0$.`'4/0<9%)"&X`````.E9`@``0?:%E@````%U*(32=21!@'PD2O]T -M'$B-3"001(GRB=Y,B>_H`````+@`````Z2<"``!,B>9(B>_H`````$R)YDB) -M[^@`````2(M5`$$/MT4R9L'H!0^WP(T$A0`#``")@G`!``!(BT4`00^W33*# -MX1^Z`0```$B)TTC3XXF8=`$``$$/MT4R2,'@`T@#A;@)``!(QP``````00^W -M33*)R&;!Z`4E_P<``(/A'TB)UDC3YDB)\??1(8R%P`D``$$/MTTRB<AFP>@% -M)?\'``"#X1](T^+WTB%4A7A)BU4`28M%"$B)0@A(B1!!#[=U,DB-O:@/``#H -M`````$&`K"2#`````4'&122!28.]@`````!T#TF-M8````!(B>_H`````$F- -M1"0@23E$)"`/A`0!``!)B<9(C86H#P``2(E$)`A,C;T``0``9I!,B??H```` -M`$B)PTB+50`/MT`R9L'H!0^WP(T$A0`#``")@G`!``!(BT4`#[=+,H/A'[H! -M````2(G62-/FB;!T`0``#[=#,DC!X`-(`X6X"0``2,<```````^W2S*)R&;! -MZ`4E_P<``(/A'TB)UDC3YDB)\??1(8R%P`D```^W2S*)R&;!Z`4E_P<``(/A -M'TC3XO?2(52%>`^W<S)(BWPD".@`````08"L)(,````!2(.[@`````!T#TB- -MLX````!(B>_H`````$B+A0`!``!(B5@(2(D#3(E["$B)G0`!``!-.70D(`^% -M%/___T&!I90```#___[_0<:$).@````$3(GN3(GGZ`````"X`0```$B#Q"A; -M74%<05U!7D%?PY!(@^Q82(E<)"A(B6PD,$R)9"0X3(EL)$!,B70D2$R)?"10 -M2(E4)!!(BR],BX5`$0``2(72#X3&`@``#[?62&G"L`0``$J-#`#V02$"=!A( -MC035`````$@#A;@)``!(BP#&0"0"ZQ9(C035`````$@#A;@)``!(BP#&0"0A -M3(T4U0````!(BX6X"0``3`'02(L0BT(X)?___P`]X0$0``^$K`$```^W0B!F -M/84`=Q(/M\`/MH0%:`@``#S_=1EF9I!,B=!(`X6X"0``2(L`QD`D!NFZ"``` -M#[;`2&G`F`$``$R+G4`)``!)`<.`?"03`'EN00^V4TA(B="#X`9(@_@&=2/V -MP@%T'DB+10"+D%@!``")%0````"%TG0*2(M%`(F06`$``$B+10"+@%`!``") -M!0````"#R`)(BU4`B8)0`0``2(M%`(N`!`$``(D%`````(#,_TB+50")@@0! -M``!F]T$@`@@/A.L```"`?4,`#X3A````NP````!!N0````!%B<A!#[;)#[9' -M#4C3^*@!=&%!@/D#=BA(BT4`2`70`0``C12-`````$ACTD@!T(L`B04````` -MP>@4@^`!ZR:02(M%`$@%T`$``(T4C0````!(8])(`="+`(D%`````,'H%(/@ -M`83`=`JX`0```$C3X`G#08/!`4&-0`$X14-W@(3;=%(X7PUU38GP9L'H!27_ -M!P``BT2%>(GQ@^$?2-/XJ`%U,D&`N^@````"=PA!QH/H`````TR)T$@#A;@) -M``!(BS!,B=_H`````.E`!P``0;L`````]D0D$P$/A"\'``!,B=!(`X6X"0`` -M2(LPQD8D(8M&."7___\`/>$!#@`/A`L'``!(BY40$0``2('"0`@``$$/MD-R -MP>`(2)A(`<*+`HD%`````$B+E1`1``!(@<)$"```00^V0W+!X`A(F$@!PHL" -MB04`````2(N5$!$``$B!PD@(``!!#[9#<L'@"$B82`'"BP*)!0````!(B>_H -M`````.F5!@``9F:09I`/M_9(C1SU`````$B+A;@)``!(`=A(BQ!F@7HXX0$/ -MA0P!```/MGHZ0(#_$`^'7@8``+@!````B?E(T^"IP#````^%S````*D```$` -M=53VQ(`/A#D&``!(:<:P!```2HT,``^V03.(0B1(B=A(`X6X"0``2(L`]D`C -M!`^$$`8``(!X)``/A`8&``!(BU!02(72#X3Y!0``#[9!,X@"Z>X%``!(:<:P -M!```2HT,`$R-82A(B=A(`X6X"0``2(L000^V1"0"B$(D2(G82`.%N`D``$B+ -M`$B#>$@`#X2Q!0``#[:Y(00``.@`````2(G:2`.5N`D``$B+"HM1-#G0#T?" -MB<)(BWE(3(GFZ`````#I?04``$B)V$@#A;@)``!(BP#&0"0`Z6<%``!F9F:0 -M9F:02(G82`.%N`D``$R+*$V+?6BX_____V9!@7T@A0!W&4B)V$@#A;@)``!( -MBP`/MT`@#[:$!6@(```/ML!(:<"8`0``3(NE0`D``$D!Q$'&A"3H`````$$/ -MME0D2$B)T(/@!DB#^`8/A9<!``#VP@$/A(X!``!!QD4D`$'VA98````@#X39 -M!```387_#X30!```0?:'L0````(/A*$```!!BT4TA<`/A)4```!)B[^@```` -M2(7_=`V)PDF+=4CH`````.M\28-]2`!T=4F#O[@`````=0I)@[_``````'1A -M38MM2$F+A[@```!(A<!T#4B)PT'VA[$````!="9(B[5("@``N@$```!,B?]! -M_Y?`````NP````"%P'0'2(N=2`H``$B+>PB+$TR)[N@`````BP-)`<6+0P1( -M@\,0A<!TXDB+E1`1``!(@<)`"```00^V1"1RP>`(2)A(`<*+`HD%`````(G" -MP>H008B7FP```,'H&&9!B8>0````2(N5$!$``$B!PD0(``!!#[9$)'+!X`A( -MF$@!PHL2B14`````#[;"9D&)AY0````/ML9F08F'E@```(G0P>@0#[;`9D&) -MAY@```#!ZAA!B)>:````2(N5$!$``$B!PDP(``!!#[9$)'+!X`A(F$@!PHL" -MB04`````#[;`9D&)AY(```#I7@,``$AIQK`$``!.C30`00^V1C.$P`^%S``` -M`$B)V$@#A;@)``!(BP#&0"0`0?:%E@```!`/A"<#``!-A?\/A!X#``!!#[9& -M,T&(AY(```!!]H>Q`````@^$!`,``$&#?30`#X3Y`@``28._N`````!U#DF# -MO\``````#X3A`@``38ME2$F+A[@```!(A<!T#4B)PT'VA[$````!="9(B[5( -M"@``N@$```!,B?]!_Y?`````NP````"%P'0'2(N=2`H``$B+>PB+$TR)YN@` -M````BP-)`<2+0P1(@\,0A<`/A7P"``#KW#P"#X4F`@``00^V3D!!BT8XB40D -M)`^V5"0G#[9$)"3!X!@)P@^V1"0EP>`0"<(/MD0D)L'@"$&)U$$)Q(/A?X#Y -M<78\QD0D#0!!@_P!=@Q!#[9&08/@#XA$)`W&1"0.`$&#_`)V"4$/MDY"B$PD -M#D&#_`-V9D$/MD9#B$0D#^M@QD0D#0!!@_P"=@Q!#[9.0H/A#XA,)`W&1"0. -M`,9$)`\`08/\!W8Y00^V1D>#P`A!.<1$#T?@QD0D#@!!@_P,=@E!#[9&3(A$ -M)`Y!@_P-=@M!#[9.38A,)`_K!<9$)`\`2(G82`.%N`D``$B+`(!X,`!T2$6% -MY'1#QD`D($B)V$@#A;@)``!(BP`/MD`P#[;01#C@1`]"XDB)V$@#A;@)``!( -MBP!(BWA02(7_=!]$B>))C79`Z`````#K$4B)V$@#A;@)``!(BP#&0"0B@'PD -M#01U$4B)V$@#A;@)``!(BP#&0"0"23EM*`^$#`$``$V%_P^$`P$``$'VA98` -M```0=$!!#[9&,T&(AY(```!!]H>Q`````G0J00^V13!$B>)!.,0/1]"$TG08 -M28N_J````$B%_W0,#[;228UV0.@`````@'PD#0MW7`^V1"0-_R3%`````$'& -MA[(````!Z9D```"`?"0.!'44@'PD#P)U#4'&A[(````1Z7X```!!QH>R```` -M`NMT0<:'L@```!#K:D'&A[(````+ZV!!QH>R````!NM60<:'L@````WK3#PH -M=2=!#[:$)(,```"#Z`%!B(0D@@```$B)V$@#A;@)``!(BP#&0"2!ZR$\"'4* -MOQ`G``#H`````$B)V$@#A;@)``!(BP#&0"0A9I!(BUPD*$B+;"0P3(MD)#A, -MBVPD0$R+="1(3(M\)%!(@\18PV9F9I!F9I!F9I!F9I!!5T%6055!5%532(/L -M*$B)^TB)?"081`^WI[H2``!(BP>+@$`!``")!0````!F)?\/9HF'NA(``&9$ -M.>!U3DB+!XNP4`$``(DU`````$B+!XFP4`$``+@`````]\8`__\`#X3=!@`` -M2,?'`````+@`````Z`````!(BWPD&.@`````N`$```#IN`8``&:!O[H2``#_ -M#P^%%08``.D^!@``2(NS0!$``$&#Q`%F1#NCOA(``+@`````1`]#X$B+DZ`1 -M``!(@\($00^WQ(L$@D&)P$'!Z!!!]L`(#X2Q````2(L#BY!0`0``B14````` -M2(L#B9!0`0``]\(`__\`=&V`>T,`=&>)UO?&``$``'4POP````#WQ@```0!T -M1.LA9I`/M]>-2@A(B?!(T_BH`744C4H02(GP2-/XJ`%U!^LAOP`````/M\=( -MC12`2(T4D$B-K-/(`0``2(7M=1_K#F:0@\<!#[9#0V8Y^'>T2(M\)!CH```` -M`.E5!0``2(M\)!CH`````(A%#^E#!0``9F:0B<%F@>'_#P^WP4AIT+`$``!, -MBTP6($B-/,4`````2(N#N`D``$@!^$B+*$B%[0^$#`4``$'VP"`/A'X!``"` -M?22!#X58`0``QD4D(0^W13)(P>`#2`.#N`D``$C'```````/MTTRB<AFP>@% -M)?\'``"#X1^Z`0```$B)UDC3YDB)\??1(8R#P`D```^W33*)R&;!Z`4E_P<` -M`(/A'TC3XO?2(52#>`^W=3)(BWPD$.@`````2(.]@`````!T#TB-M8````!( -MB=_H``````^W52!F@?J%``^'Q`````^WP@^VA`-H"```//\/A+$```!F@_I_ -M=QX/ML!(:<"8`0``2`.#0`D``$B+0%"`>`C_#Y7`ZUD/MT4@9CV!`'<F#[?` -M#[:$`V@(``!(:<#(#P``2`.#D`D``$B+0`B`>`C_#Y7`ZRD/MT4@#[:$`V@( -M``!(C03`2,'@!4@#@V@)``!(BX"(````@'@(_P^5P(3`=#!(B>Y(B=_H```` -M`$B+@P`!``!(B6@(2(E%`$B+1"0(2(E%"$B)JP`!``#IH0,``)!)BU8(2(U% -M$$F)1@A,B7402(E0"$B)`NF$`P``B<AFP>@%#[?`B40D($B8#[?QB?*#XA^) -M5"0DBT2#>(G12-/XJ`$/A5@#``!(B?A(`X.X"0``2(L`#[=0(&:!^H4`#X>U -M````#[?"#[:$`V@(```\_P^$H@```&:#^G]W&P^VP$AIP)@!``!(`X-`"0`` -M2(M`4`^V0`CK;4B)^$@#@[@)``!(BP`/MT`@9CV!`'<C#[?`#[:$`V@(``!( -M:<#(#P``2`.#D`D``$B+0`@/MD`(ZS-(B?A(`X.X"0``2(L`#[=`(`^VA`-H -M"```2(T$P$C!X`5(`X-H"0``2(N`B`````^V0`@\_W00#[;02&/"@+P#[@@` -M`/]U/TAC1"0@BT2#>`^V3"0D2-/XJ`$/A6X"``#&120&O@````!(B>_H```` -M`+H`````2(GN2(G?Z`````#I2`(``$ACP@^VA`/N"```2(T4@$B-%)!(C;S3 -MR`$``$V%R70-0?;``K@`````3`]$R/9'"@(/A%(!``!,B<KH`````$AC1"0@ -MBT2#>`^V3"0D2-/XJ`$/A?`!``"`?22!#X60````#[=%,DC!X`-(`X.X"0`` -M2,<```````^W33*)RF;!Z@6!XO\'``"#X1^X`0```$C3X/?0(823P`D```^W -M=3)(BWPD$.@`````2(GN2(G?Z`````!(@[V``````'0/2(VU@````$B)W^@` -M````2(N#``$``$B):`A(B44`2(MT)`A(B74(2(FK``$``.E6`0``2(N#$`$` -M`$PY\'160;T`````08/%`4B+`$DYQG7T183M=#]!OP````!,B??H`````$B- -M2/!)BU8(28E&"$R),$B)4`A(B0)(.>FX`0```$0/1/A!@.T!==!%A/\/A?0` -M``!)BU8(2(U%$$F)1@A,B7402(E0"$B)`DAC5"0@N`$````/MDPD)$C3X`F$ -MD[@```#IOP```$R)RN@`````2(N#$`$``$PY\'120;T`````08/%`4B+`$DY -MQG7T183M=#M!OP````!,B??H`````$B-2/!)BU8(28E&"$R),$B)4`A(B0)( -M.>FX`0```$0/1/A!@.T!==!%A/]U68!])(%T4TF+5@A(C44028E&"$R)=1!( -MB5`(2(D"2&-4)""X`0````^V3"0D2-/@"823N````.LAD$R-MQ`!``!(C;>H -M#P``2(ET)!!(C8<``0``2(E$)`B09D0YH[H2```/A<+Y__](C8,0`0``2#F# -M$`$``'1)2(G%2(GOZ`````!(C7#P#[=.,HG*9L'J!8'B_P<``(/A'[@!```` -M2-/@]]`AA).X````N@````!(B=_H`````$@YJQ`!``!UNDB)W^@`````N`$` -M``!(@\0H6UU!7$%=05Y!7\-F9F:09F:09F:09F:02(/L*$B)7"0(2(EL)!!, -MB60D&$R);"0@2(N?^`@``$B+0PA$BRA$B2T`````0??%````D'1Z2(M#"$2) -M*.MQD$B!PX`4``!(BP.+D%`!``")%0````!(BP.)D%`!``"%TG0\]\(````0 -M=!Q(BP/'@%`!```````02(L#BX!0`0``B04`````2(L#QX!0`0```0```$B) -MW^@`````00'$@\4!@_T"=9GK%V9F9I!F9I!!O`````"]`````.N*9F:0183D -M#Y7`187M#Y7""=`/ML!(BUPD"$B+;"003(MD)!A,BVPD($B#Q"C#9F:09F:0 -M05=!5D%505154TB#["A)B?Q(BP>+D%`!``")%0````!(BP>)D%`!``!F9F:0 -M9F:0]\(`__\`#X0H"0``08!\)$,`#X0<"0``QD0D$`")TDB)5"0(1`^V;"00 -M08U-"$B+1"0(2-/XJ`%U%$&-31!(BT0D"$C3^*@!#X31"```@'PD$`-V*TF+ -M!"1(!8`!``!"C13M`````$ACTD@!T(L`B04`````P>@3@^`!ZREF9I!)BP0D -M2`6``0``0HT4[0````!(8])(`="+`(D%`````,'H$X/@`83`="9,B>?H```` -M`$ECU4B-!%)(C02"08&,Q/`2``````@`9F9FD&9FD$F+%"2`?"00`W8E0HT$ -M[0````!(F$B-A`*``0``BP")!0`````E```!`.LC9F9FD$*-!.T`````2)A( -MC80"@`$``(L`B04`````)0```0"%P'1!@'PD$`-V'4*-!.T`````2)A(C80" -M@`$``,<````!`.D9"```0HT$[0````!(F$B-A`*``0``QP````$`Z?P'``!! -M@'PD40$/A:@&``"`?"00`W8I28L$)$@%@`$``$*-%.T`````2&/22`'0BP") -M!0````"#X`'K)V9F9I!)BP0D2`6``0``0HT4[0````!(8])(`="+`(D%```` -M`(/@`83`#X15`0``26/%2(T<0$B-')A(P>,#28VT'/@2``!)BWPD*.@````` -M28N\',@2``!(A?]T'4B+1T!(A<!T%/9`3@)U#N@`````A,"0#X4*`0``26/% -M2(T40$B-%)!)BX34R!(``$B%P'1U28G&@'@.``^$BP```$&_`````$B-:&!( -MB>_H`````$B)PTB+10A(B5T(2(DK2(E#"$B)&/9#3`)U+TB+4T!(A=)T%DF+ -MM"3X"```OP4```#H`````(!+3`)(B=J^!@```$R)]^@`````08/'`44X?@YV -M)>NB#[9T)!"Z`0```$R)Y^@`````OZ"&`0#H`````+H`+3$!ZP6Z0$M,`$EC -MQ4B-#$!(C0R(2,'A`TJ--"&)EO@2``!(QX8($P````````^V1"002(T40$B- -M%)!)C934P!(``$B)EA`3``!)C;0,^!(``$F+?"0HZ`````!F9I"`?"00`W8] -M0HT4[0````!(8]))BP0D2`6``0``2`'0BP")!0````!)BP0D2`6``0``2`'" -MBP*)!0````#!Z`>#X`'K.T*-%.T`````2&/228L$)$@%@`$``$@!T(L`B04` -M````28L$)$@%@`$``$@!PHL"B04`````P>@'@^`!A,!T=8!\)!`#=C="C0SM -M`````$ACR4F+!"1(!80!``!(`<B+`(D%`````$F+%"1(@<*$`0``2`'1#0`` -M`0")`>L^0HT,[0````!(8\E)BP0D2`6$`0``2`'(BP")!0````!)BQ0D2('" -MA`$``$@!T0T```$`B0'K+X!\)!`#=BA)BP0D2`6``0``0HT4[0````!(8])( -M`="+`(D%`````,'H$H/@`>LF28L$)$@%@`$``$*-%.T`````2&/22`'0BP") -M!0````#!Z!*#X`&$P`^$(@(``(!\)!`#=C="C0SM`````$ACR4F+!"1(!8`! -M``!(`<B+`(D%``````T```0`28L4)$B!PH`!``!(`=&)`>LU0HT,[0````!( -M8\E)BP0D2`6``0``2`'(BP")!0`````-```$`$F+%"1(@<*``0``2`'1B0%) -M8\5(C11`2(T4D$F+A-3($@``2(7`=!-)B<5(@WA```^%H@```.F$`0``@'PD -M$`-V2D*-%.T`````2&/228L$)$@%@`$``$@!T(L(B0T`````28L$)$@%@`$` -M`$B-!`*)"$F+!"1(!8`!``!(`<*+`HD%`````.G0`P``0HT4[0````!(8])) -MBP0D2`6``0``2`'0BPB)#0````!)BP0D2`6``0``2(T$`HD(28L$)$@%@`$` -M`$@!PHL"B04`````Z88#``!FD$B+2$`/MT%.#[?0]L8!#X73````2(G-]L(" -M#X3'````@^#]9HE!3DB-L<````!)BWPD*.@`````QD0D$`"`?3L`='?&1"00 -M``^V1"002(M<Q5A(A=MT5$B+4T!(A=)T%DF+M"3X"```OP4```#H`````(!+ -M3`)(B=J^!@```$R)[^@`````@+N#`````'0<D$R)Y^@`````OP$```#H```` -M`("[@P````!UY8!$)!`!#[9$)!`X13MWCL>%P````$!+3`!(QX70```````` -M`$B)K=@```!(C;7`````28M\)"CH`````(!\)!`#=C))BP0D2`6``0``#[94 -M)!!(P>(#@>+X!P``2`'0BP")!0````#!Z`B#X`'K,&9FD&9FD$F+!"1(!8`! -M```/ME0D$$C!X@.!XO@'``!(`="+`(D%`````,'H"(/@`83`#X06`0``@'PD -M$`-V+$F+!"1(!8`!```/ME0D$$C!X@.!XO@'``!(`="+`(D%`````(/P`8/@ -M`>LJ28L$)$@%@`$```^V5"002,'B`X'B^`<``$@!T(L`B04`````@_`!@^`! -MA,`/A+$````/MD0D$$B-%$!(C12038V\U,`2``!)BT<(2(7`#X2/````28G& -M28UW.$F+?"0HZ`````!!@'X.`'150;T`````28UN8&9FD&:02(GOZ`````!( -MB<-(BT4(2(E="$B)*TB)0PA(B1A(BU-`2(72=!9)B[0D^`@``+\%````Z``` -M``"`2TP"08/%`44X;@YWND''1SB`A!X`2<='2`````!-B7]028UW.$F+?"0H -MZ`````"`?"00`P^&?P````^V7"002,'C`X'C^`<``$F+!"1(!8`!``!(`=B+ -M$(D5`````$F+!"1(!8`!``!(C00#B1!)BP0D2`6``0``2(T$`XL`B04````` -M28L$)$@%,`(``$B-!`/'``````"_$"<``.@`````28L$)$@%-`(``$@!PXL# -MB04`````ZWT/MEPD$$C!XP.!X_@'``!)BP0D2`6``0``2`'8BQ")%0````!) -MBP0D2`6``0``2(T$`XD028L$)$@%@`$``$B-!`.+`(D%`````$F+!"1(!5`" -M``!(C00#QP``````OQ`G``#H`````$F+!"1(!50"``!(`<.+`XD%`````(!$ -M)!`!#[9$)!!!.$0D0P^'\/;__TF+!"2+D%`!``")%0````!)BP0DB9!0`0`` -M]\(`__\`=";II?;__V9FD&:026/52(T$4DB-!()!@8S$\!(``````0#IZ/?_ -M_[@`````2(/$*%M=05Q!74%>05_#05=!5D%505154TB#[&A)B?U`B'0D2T`/ -MML:)1"1,2)A(C11`2(T4D$B-%-=,B[K($@``#[:JZ1(``$B+!T"`_@-V#,>` -M<`$``,0!``#K"L>`<`$``*@!``!(B40D8$@%=`$``$B)1"102(M4)&"+@G0! -M``")!0````"+3"1,@^$#NP<```#3XT&)W$$)Q$2)HG0!``"_Z`,``.@````` -M]]-$(>-(BTPD8(F9=`$``(!\)$L#=E6+1"1,P>`"2)A(C90!T`$``(L"B04` -M````@\@(B0*+7"1,P>,#2&/;2(V$&0`"``#'`#@```"_$"<``.@`````2(M4 -M)&!(C80:!`(``,<``````.M8BT0D3,'@`DB82(M,)&!(C90!T`$``(L"B04` -M````@\@(B0*+7"1,P>,#2&/;2(V$&0`"``#'`#@```"_$"<``.@`````2(M4 -M)&!(C80:!`(``,<``````$V%_P^$-@@``$&`?4,`="R[``````^VRT$/MD<- -M2-/XJ`%T#[H!````B<Y,B>_H`````(/#`4$X74-WV4'V1PH!=&=,B?Y,B>_H -M`````(MT)$Q,B>_H`````$AC1"1,2(T40$B-%)!)C935X!(``(M"#*D``!`` -M=`@E___O_XE"#$R)_DR)[^@`````2&-$)$Q(C11`2(T4D$G'A-7($@`````` -M`.F5!P``08!_6`!T%$F+O;@0``!,B?[H`````$&`;U@!2,?`_O___P^V3"1, -M2-/`0"#HB$0D6P^$O0(``(MT)$Q,B>_H`````$AC1"1,2(T40$B-%)!)C935 -MX!(``(M"#*D``!``=`@E___O_XE"#`^V1"1;08A'#4&`?4,`#X3O`0``QT0D -M7``````/MM!(B50D,$B+3"1@2('!``(``$B)3"0H2(M$)&!(!00"``!(B40D -M(`^V5"1;B50D'$B+3"1@2('!T`$``$B)3"001`^V="1<00^V[DB+1"0PB>E( -MT_BH`0^$30$``$ACQ4B-%$!(C120#[9$)%M!B(35Z1(``$&`_@,/AI4```"- -M'.T`````2&/;2(M$)"A(`=C'`#@```"_$"<``.@`````2`-<)""+5"0<B1-( -MBTPD8,>!<`$``,0!``!(BU0D4(L"B04`````B>F#X0.[!P```-/C08G<00G$ -M1(DBO^@#``#H`````/?31"'C2(M,)%")&8T4K0````!(8])(`U0D$(L"B04` -M````@\@(B0+IE@```(T<[0````!(8]M(BT0D*$@!V,<`.````+\0)P``Z``` -M``!(`UPD((M$)!R)`TB+5"1@QX)P`0``J`$``$B+3"10BP&)!0````")Z8/A -M`[L'````T^-!B=Q!"<1(BT0D4$2)(+_H`P``Z`````#WTT$AW$B+5"101(DB -MC12M`````$ACTD@#5"00BP*)!0````"#R`B)`H-$)%P!08U&`4$X14-V+.F# -M_O__2(G?Z`````!(C7#(2(M3"$B)0PA(B1A(B5`(2(D"2(-XV`!T$>L)O@`` -M``!)C5](23E?2'7*2(7V=#C&1EH`08!]0P!T+;D`````N@````!!#[9'#4C3 -M^*@!=`X/ML*(3`9P@$9:`8/"`8/!`4$X34-WW;H`````OH$```!,B?_H```` -M`$AC1"1,2(T40$B-%)!)QX35R!(```````!!@'U#``^%?@,``.FA!```N@`` -M``"^!@```$R)_^@`````BW0D3$R)[^@`````2&-$)$Q(C11`2(T4D$F-E-7@ -M$@``BT(,J0``$`!T""7__^__B4(,28U'2$DY1T@/A``"``!(B00D2(L\).@` -M````3(UPR$B-4!!(.5`0#X3#`0``28U&2$B)1"0(2(M\)`CH`````$B-6/"` -M>TD-=1=(C;!0`0``2(M#4$B+`$B+>"CH`````$B+$TB+0PA(B4((2(D0@+N# -M`````'0=9I!,B>_H`````+\!````Z`````"`NX,`````=>5(BT-`2(7`#X0J -M`0``2,=`8`````"`NX,`````#X2G````9D&#?70`#X2;````O0````!!O``` -M``!,B>!)`X6X"0``2(LP2(7V=&H/MT8@9CM#.'5@9CV%`'=:#[?`08"\!6@( -M``#_=$Q)BU4`#[=&,F;!Z`4/M\"-!(4``P``B8)P`0``28M5``^W3C*#X1^X -M`0```$C3X(F"=`$``,9&)"&Z`````$R)[^@`````9F:09F:0@\4!28/$"$$/ -MMT5T.>@/CW#____V0TP$=1E,B>_H`````$B+<T"Z`0```$R)[^@`````2(M# -M0`^V4`(/MG`!2,?'`````+@`````Z`````!(BU-`28NU^`@``+\!````Z``` -M``!(BU-`28NU^`@``+\&````Z`````!(QT-``````$&`;PX!08!N6`%(B=Y, -MB>_H`````$B+5"0(23E62`^%1O[__T&`;R@!3(GV3(GOZ`````!(BPPD23E/ -M2`^%!/[__TF-1V!).4=@#X3O````O0````!)B<1,B>?H`````$B)PX"X@P`` -M``!T.HU%`8']?Y:8`'8'B<7K*V9FD(G%3(GOZ`````"_`0```.@`````@+N# -M`````'0+@\4!@?V!EI@`==I(BT-`2(7`='9(QT!@`````/9#3`1U&4R)[^@` -M````2(MS0+H!````3(GOZ`````!(BT-`#[90`@^V<`%(Q\<`````N`````#H -M`````$B+4T!)B[7X"```OP$```#H`````$B+4T!)B[7X"```OP8```#H```` -M`$C'0T``````08!O#@%(B=Y,B>_H`````$TY9V`/A1G___],B?Y,B>_H```` -M`$AC1"1,2(T40$B-%)!)QX35R!(```````#I=_S__T&_``````^V1"1;2(E$ -M)$!(BU0D8$B!PM`!``!(B50D.$6)_D$/MN](BT0D0(GI2-/XJ`%U"T0X?"1+ -M#X75````08#^`W9H2(M$)&#'@'`!``#$`0``2(M4)%"+`HD%`````(GI@^$# -MC0Q)NP<```#3XT&)W$$)Q$2)(K_H`P``Z`````#WTT0AXTB+3"10B1F-%*T` -M````2&/22`-4)#B+`HD%`````(/("(D"ZV=(BT0D8,>`<`$``*@!``!(BU0D -M4(L"B04`````B>F#X0.-#$F[!P```-/C08G<00G$1(DBO^@#``#H`````/?3 -M02'<2(M,)%!$B2&-%*T`````2&/22`-4)#B+`HD%`````(/("(D"08/'`4&- -M1@%!.$5##X?Y_O__2(/$:%M=05Q!74%>05_#9F9FD&9F9I!F9F:09F:00515 -M4TF)_$B)]0^V=T-`A/9T)@^V50V[`````/;"`70.ZQ9(B=")V4C3^*@!=0^# -MPP%`./-U[.L%NP````#V10P"=0I(C45@2#E%8'5H2(GOZ`````"$P'113(GG -MZ`````!(B<9(A<!T3$B+56A(B45H2(U%8$B)!DB)5@A(B3*`10X!2(EN4,9& -M2`7&1DD`QH:!````#[D!````N@$```!(B>_H`````.L+#[;S3(GGZ`````!; -M74%<PV9FD&:0059!54%455-(B?U!B?5$#[;V0HT$M0````!,8^"[`````+\0 -M)P``Z`````!!@/T#=AY(BT4`2`70`0``3`'@BP")!0````#!Z!2#X`'K'9!( -MBT4`2`70`0``28T$!(L`B04`````P>@4@^`!A,!U"H/#`6:!^RP!=:A$B?9( -MB>_H`````$B)[^@`````26/&2(T40$B-%)!(C435`/:`Z!(```%T#TB+L,@2 -M``!(B>_H`````%M=05Q!74%>PV:0059!54%455-!B?5)B?Q$#[;V26/&2(T4 -M0$B-%)!(BZS7R!(``$B%[0^$E@$``$C'P/[___]$B?%(T\"$10T/A8`!``!( -MC45(2#E%2'450;T`````2(U=8(!]#@!U(^GS`@``0`^VQDB-/$!(C3RX28V\ -M_,`2``#H`````.G5`@``2(G?Z`````!(B<%(BT,(2(E+"$B)&4B)00A(B0B` -M>4D`#X4)`0``#[=!.$F#O,1H!````'4+2(-Y0``/A-D````/MT$X28N$Q&@$ -M``!(@[B```````^$IP```,:!Z``````/ME%(2(G0@^`&2(/X!G4M]L(!="C& -M04H%QD%+!`^VD8$```!(BW%82(MY4.@`````Z9@```!F9F:09F:0#[912$B) -MT(/@!DB#^`1U(/;"`70;QD%*`\9!2P1(B<Y,B>?H`````.MG9F:09F:0#[91 -M2$B)T(/@!DB#^`9U4?;"`75,QD%+!L9!2@5FQX'(``````!(B<Y,B>?H```` -M`.LN2(M10$F+M"3X"```OP0```#H`````.L6#[=1.$F+M"3X"```OP(```#H -M`````$&#Q0%$.&T.#X:7`0``Z;W^__]"C02U`````$ACZ+L`````OQ`G``#H -M`````$&`_0-V'4F+!"1(!=`!``!(`>B+`(D%`````,'H%(/@`>L;28L$)$@% -MT`$``$@!Z(L`B04`````P>@4@^`!A,!U"H/#`6:!^RP!=:I$B?9,B>?H```` -M`$R)Y^@`````26/&2(T40$B-%)!)BZS4R!(``$B%[0^$_0```$&`?"1#`'0L -MNP`````/MLL/MD4-2-/XJ`%T#[H`````B<Y,B>?H`````(/#`4$X7"1#=]E! -M#[;%2(T40$B-%)!)C934P!(``$B)52!(C45(2#E%2'4X2(U%8$@Y16!U+NM[ -M9F:09I!(B=_H`````$B-<,A(BU,(2(E#"$B)&$B)4`A(B0)(@WC8`'01ZPF^ -M`````$B-74A(.5U(=<I(A?9T6\9&6@!!@'PD0P!T3[D`````N@`````/MD4- -M2-/XJ`%T#@^VPHA,!G"`1EH!@\(!@\$!03A,)$-V(NO;]D4*`70-2(GN3(GG -MZ`````#K#;X`````2(GOZ`````!;74%<05U!7L.02(/L"$R+!T2+3S!!#[9P -M0T"$]G1B28V`P!(``+D`````2#GX=1KK3P^VP4B-%$!(C12028V4T,`2``!( -M.?IT"(/!`4`X\77@@/D#=B])BP!(!=`!``!(C12-`````('B_`,``$@!T(L` -MB04`````P>@4@^`!ZRVY`````$F+`$@%T`$``$B-%(T`````@>+\`P``2`'0 -MBP")!0````#!Z!2#X`&$P'00#[;Q1(G*3(G'Z`````#K"P^V\4R)Q^@````` -M2(/$",-F9F:09F9FD$%7059!54%455-(@^P(2(GS28G^3(NGB````$F++"1! -M]D0D#!!T!,9'409!#[9&43P!='D\`7(5/`0/A)D````\!@^%2`,``.FZ`0`` -M0<9&40%,B?9(B>_H`````,9#)(%!@$PD#`A(@[N``````'0/2(VS@````$B) -M[^@`````2(V5``$``$B+A0`!``!(B5@(2(D#2(E3"$B)G0`!``!(B>_H```` -M`.GC`@``08!D)`SW08!&4@%!QD91`,9#)`)(B=Y(B>_H`````$B)[^@````` -MZ;<"``!!#[9$)`R#X/>#R!!!B$0D#$&+E@@!``"-0@%!B88(`0``@_H"#X<# -M`0``2(.[@`````!T#TB-LX````!(B>_H`````$B-E0`!``!(BX4``0``2(E8 -M"$B)`TB)4PA(B9T``0``08!^0@!U&$&_`````$V-;"1@08!\)`X`=1[IG@`` -M`+H`````O@(```!,B>?H`````&:0Z1L"``!,B>_H`````$B)PTF+10A)B5T( -M3(DK2(E#"$B)&$B+4T!(A=)T%4B+M?@(``"_!0```.@`````@$M,`DB)VKX& -M````3(GGZ`````"`NX,`````=")F9F:09F:02(GOZ`````"_`0```.@````` -M@+N#`````'7E08/'`44X?"0.#X=[____3(GWZ`````#IB0$``$&`9"0,]T'' -MA@@!````````2(.[@`````!T#TB-LX````!(B>_H`````$B-E0`!``!(BX4` -M`0``2(E8"$B)`TB)4PA(B9T``0``N@````"^!@```$R)Y^@`````28U$)&!) -M.40D8'1\28G%3(GOZ`````!(B<-(BT!`2(7`=%-(QT!@`````$B)[^@````` -M2(MS0+H!````2(GOZ`````!(BU-`2(NU^`@``+\!````Z`````!(BU-`2(NU -M^`@``+\&````Z`````!(QT-``````$B)WDB)[^@`````33EL)&!UATR)]DB) -M[^@`````2<=$)$``````2(M%`(N06`$``(D5`````(72=`I(BT4`B9!8`0`` -M0?9$)`H!=&N`?4,`="RY`````$'V1"0-`705ZQUF9I!F9I!!#[9$)`U(T_BH -M`74/@\$!.$U#=^OK!;D`````#[;9B=Y(B>_H`````$R)YDB)[^@`````2&/; -M2(T$6TB-!(-(QX3%R!(```````!F9I!FD$B#Q`A;74%<05U!7D%?PY!(@^PH -M2(E<)`A(B6PD$$R)9"083(EL)"!(B?-(B?U,BV]038ME``^W3C*)R&;!Z`4/ -MM_!(8\9!BT2$>(/A'TC3^*@!#X5G`P``28L4)(T$M0`#``")@G`!``!)BP0D -MBY!T`0``B14`````QD,D(8M#."7___\`/>$!#P!U([X`````2(G?Z`````"Z -M`````$B)WDR)Y^@`````Z1$#``"0B=`/MTLR@^$?2-/XJ`%T%;X!````2(G? -MZ`````!,B>?H``````^VA>@````\!`^'W`(```^VP/\DQ0````#&A>@````! -MN@$```!(B=Y,B>_H`````.FV`@``QH7H`````KH(````2(G>3(GOZ`````#I -MF@(``,:%Z`````-(B>J^(0```$R)[^@`````2(MU6$B%]G0?#[:5@0```$&X -M`````+D!````3(GOZ`````#I6P(``$$/MG4-N@````!,B>?H`````.E$`@`` -MQH7H````!$B#?5@`=#-(B>J^(0```$R)[^@`````#[:5@0```$B+=5A!N``` -M``"Y`@```$R)[^@`````Z0,"``"Z`````+XA````3(GOZ`````!!#[9U#;H! -M````3(GGZ`````#IV@$``(!]2O]T%4B)ZKX&````3(GOZ`````#IOP$``$B) -MZKX&````3(GOZ`````!(BTU`2(7)=!*+402-0@&)002#^@4/AI0!``#&14L! -MQD5*`("]@P````!T'F9FD$R)Y^@`````OP$```#H`````("]@P````!UY4B# -M?5@`=!E(BU402(M%&$B)0@A(B1!(BT58@&A8`>L92(M58$B%TG00#[:%@0`` -M`$C'1,)8`````$B+50!(BT4(2(E""$B)$$&`;0X!2(N](`$``$B%_W01#[:U -M#0$``+H!````Z`````!(BWU82(7_=!$/MK6!````N@$```#H`````$B+14!( -MA<!T<DC'0&``````3(GGZ`````!(BW5`N@$```!,B>?H`````$B+14`/ME`" -M#[9P`4C'QP````"X`````.@`````2(M50$F+M"3X"```OP$```#H`````$B+ -M54!)B[0D^`@``+\&````Z`````!(QT5``````$B)[DR)Y^@`````08!]"?]T -M5+T`````08!]#@!T,KT`````28U=8$B)W^@`````2(M3"$B)0PA(B1A(B5`( -M2(D"@'A*_W4)@\4!03AM#G?703AM#G<00<9%"?],B>Y,B>?H`````$B+7"0( -M2(ML)!!,BV0D&$R+;"0@2(/$*,-F9F:09F:005=!5D%505154TB#[!A)B?Q, -MB[^(````28L?2(N#H!$``$2+*$B)_DB)W^@`````08!\)%(!=@9!QD0D401) -MC6PD*$DY;"0H#X3_`0``2(GOZ`````!)B<9)BT0D*$R)<`A)B09)B6X(38ET -M)"AF@WMT``^$M`$``+T`````2(V#J`\``$B)1"002(V[``$``$B)?"0(#[?% -M2,'@`T@#@[@)``!(BS!(A?8/A'`!```/MT8@9D$Y1"1`#X5@`0``#[>3NA(` -M`$$YU71/9F9FD(/"`0^W@[X2```YPK@`````#T/0C4(!2,'@`D@#@Z`1``"+ -M`*D```@`=1MF)?\/9CGH=1)).?9U$DB)W^@`````Z3<!``!$.>IUM0^W1B!F -M/84`#X?W````#[?`@+P#:`@``/\/A.8```!!@']8``^%VP```$'V1PH!#X30 -M````2(L3#[=&,F;!Z`4/M\"-!(4``P``B8)P`0``2(L##[=.,H/A'[H!```` -M2(G72-/GB;AT`0``#[=&,DC!X`-(`X.X"0``2,<```````^W3C*)R&;!Z`4E -M_P<``(/A'TB)UTC3YTB)^??1(8R#P`D```^W3C*)R&;!Z`4E_P<``(/A'TC3 -MXO?2(52#>$PY]G0L2(L&2(M6"$B)4`A(B0)(BX,``0``2(EP"$B)!DB+1"0( -M2(E&"$B)LP`!```/MW8R2(M\)!#H`````$&`;"1%`8/%`68Y:W0/AVG^__]! -M]D<*`70928L628M&"$B)0@A(B1!,B?9,B>?H`````$B#Q!A;74%<05U!7D%? -MPV9F9I!!54%455-(@^P(2(D4)$R+)P^W]DC!Y@-)`[0DN`D``$B+'F:!>SCA -M`74F#[9#.H/H$3P!=QM(BV]`0;T`````2(72=5+&15$`0;T`````ZT9)BY0D -M0`D``+AHE@$`9H%[((4`=Q0/MT,@00^VA`1H"```2&G`F`$``$R-+`*]```` -M`$B#/"0`=0U!QH7H`````+T`````@'LD@74$@&<,]TB#/"0`#X4$`0``QD,D -M`/:#E@```"`/A"H#``!(BT-H2(7`#X0=`P``2(G%]H"Q`````G0=2(NXH``` -M`$B%_W012(MS2$B%]G0(BU,TZ`````!)BY0D$!$``$B!PD`(``!!#[9%<L'@ -M"$B82`'"BP*)!0````")PL'J$(B5FP```,'H&&:)A9````!)BY0D$!$``$B! -MPD0(``!!#[9%<L'@"$B82`'"BQ*)%0`````/ML)FB864````#[;&9HF%E@`` -M`(G0P>@0#[;`9HF%F````,'J&(B5F@```$F+E"00$0``2('"3`@``$$/MD5R -MP>`(2)A(`<*+`HD%``````^VP&:)A9(```#I.`(``)"`>R2`=0K&0R0A9F:0 -M9F:02(LT)$C'QP````"X`````.@`````9H%[..$!=1@/MD,Z@^@1/`%W#4B) -M[^@`````Z?(!``!(B>$/ME0D`_;"`0^$?0$``(M#."7___\`/>$!#@`/A&H! -M``!)BY0D$!$``$B!PD`(``!!#[9%<L'@"$B82`'"BS*)-0````!)BY0D$!$` -M`$B!PD0(``!!#[9%<L'@"$B82`'"1(L"1(D%`````$F+E"00$0``2('"2`@` -M`$$/MD5RP>`(2)A(`<*+"HD-`````/:#E@```"`/A.(```!(BWMHQH>R```` -M$,9#)"")\,'H$(B'FP```(GPP>@89HF'D````(G(P>`(00^VT`'09HF'E``` -M`(G(L`!,B<,/MM<!T&:)AY8```")RL'J$,'B"$2)P,'H$`^VP`'"9HF7F``` -M`$F+E"00$0``2('"3`@``$$/MD5RP>`(2)A(`<*+,HDU`````$`/MO9FB;>2 -M````#[>/E@````^WEY@````/M_9$#[>'E````$C'QP````"X`````.@````` -M28N4)!`1``!(@<)`"```00^V17+!X`A(F$@!PL<"`````.MQ2(G>3(GGZ``` -M``#K9(32>2!)BP0DBXA8`0``B0T`````A<ET3$F+!"2)B%@!``#K0(`Y`'@[ -M@'D'`'DU28L4)`^W0S)FP>@%#[?`C02%``,``(F"<`$``$F+%"0/MTLR@^$? -MN`$```!(T^")@G0!``!(@\0(6UU!7$%=PV9F9I!F9F:09F:09F:02(/L"`^V -M1CA(.7XH=4H\"'1E/"AT83RH=%T\B&9F9I!T53P*=%$\*G1-/*IF9F:0=$4\ -MBG1!2(N'``$``$B)<`A(B09(C8<``0``2(E&"$B)MP`!``#K'TB+EP@!``!( -MB;<(`0``2(V'``$``$B)!DB)5@A(B3+H`````$B#Q`C#9F9FD&9F9I!F9F:0 -M9F:02(/L".@`````2(/$",-FD%-(@^Q@2(G[2(U,)%U(C50D7DB-="1?#[=_ -M/$B-1"122(E$)#A(C40D5$B)1"0P2(U$)$Q(B40D*$B-1"1.2(E$)"!(C40D -M6$B)1"082(U$)%I(B40D$$B-1"1;2(E$)`A(C40D5DB)!"1,C4PD7$R-1"10 -MZ``````/ME0D7P^V="1>2(U\)$CH``````^V5"1?2&G2F`$``$B+<R!(C;L@ -M"0``N0$```#H``````^V5"1=2(T4TDC!X@5(BW,@2(V[2`D``+D!````Z``` -M```/ME0D7DAITL@/``!(BW,@2(V[<`D``+D!````Z``````/MU0D6$C!X@-( -MBW,@2(V[F`D``+D!````Z``````/MT0D4$B-%(!(C1202,'B`TB+<R!(C;MP -M"@``N0$```#H``````^V5"1<#[=$)%!(#Z_02(T44DC!X@)(BW,@2(V[``H` -M`+D!````Z`````!(BW,@2(V[*`H``+D!````N@`"``#H``````^V3"1?2(MS -M($B-NV`+``"Z``@``.@`````#[94)%M(P>(%2(MS($B-N\`*``"Y`0```.@` -M````2(MS($B-N^@*``"Y`0```+H``0``Z``````/ME0D6DB-%))(P>(%2(MS -M($B-NQ`+``"Y`0```.@`````#[=4)%9(C1222,'B`TB+<R!(C;LX"P``N0$` -M``#H``````^W5"182`'22(MS($B-NX`/``"Y`0```.@`````#[94)%](`=)( -MBW,@2(V[N`\``+D!````Z``````/ME0D74@!TDB+<R!(C;OP#P``N0$```#H -M``````^V5"1>2`'22(MS($B-NR@0``"Y`0```.@`````#[93/D@!TDB+<R!( -MC;M@$```N0$```#H``````^W5"1.2(T44DC!X@1(BW,@2(V[F`H``+D!```` -MZ`````"+5"1(2(MS($B-NY@0``"Y`0```.@`````#[=4)%A(P>(&2(MS($B- -MN\`0``!!N`$```"Y0````.@`````2(MS($B-N_`0``!!N`$```"Y``$``+H` -M&0``Z``````/MU0D6$AITK`$``!(BW,@2(V[(!$``$&X`0```+F`````Z``` -M```/MU0D5$C!X@)(BW,@2(V[4!$``$&X`0```+D$````Z``````/MU0D4DC! -MX@)(BW,@2(V[@!$``$&X`0```+D$````Z``````/ME0D6\'B"TB+<R!(C;NP -M$0``0;@!````N0@```#H`````$B+<R!(C;O@$0``0;@!````N0@```"Z```( -M`.@`````#[=4)%9(:=*,`0``2(MS($B!PQ`2``!!N`$```"Y"````$B)W^@` -M````N`````!(@\1@6\-F9F:09F:09F:02(/L.$B)7"0(2(EL)!!,B60D&$R) -M;"0@3(ET)"A,B7PD,$F)]TF)_4B+!TB)!"1,C6=(3(GGZ`````!(B<-,C7#( -M2(L\).@`````2(G%28M%4$F)75!-B68X28E&0$B)&+@!````2(7M='C&13CA -MQD4Y`<9%.A"`33L!28N'H````$B)16A(BT5P3(EX*$F-AY````!(B450QD4E -MS$$/MD9;9HE%($F+10!(B44HQT4TD````$R)?4A(QX6@`````````$B-?5B^ -M`````.@`````2(GN2(L\).@`````N`````!(BUPD"$B+;"003(MD)!A,BVPD -M($R+="0H3(M\)#!(@\0XPV9F9I!F9I!F9I!!5T%6055!5%532(/L&$B)_4C' -M1"00`````$B+1"00#[:4*.X(``"`^O\/A.H````/MLI(C02)2(T$@4B-A,7( -M`0``2(E$)`@/MO)(8\9(C12`2(T4D("\U=8!````#X2V````0;P`````2(T$ -MB4B-!(%(P>`#3(VT!2@"``!,C2PH2&/&2(T4@$B-%)!,C;S5P`$``$R)]^@` -M````2(G#28N%,`(``$F)G3`"``!,B3-(B4,(2(D82(M30$B%TG052(NU^`@` -M`+\%````Z`````"`2TP"2(G:O@(```!(BWPD".@`````@+N#`````'0;2(GO -MZ`````"_`0```.@`````@+N#`````'7E08/$`44X9Q8/AWO___](@T0D$`%( -M@WPD$`0/A>[^__](B>_H`````$B#Q!A;74%<05U!7D%?PV9F9I!F9I!F9I!F -M9I!!5T%6055!5%532(/L>$B)^\9'40#&1U``QD=/`,:'<10```!(C9?`$@`` -MN`````#&!!``2(/``4@]H`$``'7P2(V#``$``$B)@P`!``!(B8,(`0``2(V# -M$`$``$B)@Q`!``!(B8,8`0``3(VC(`$``$R)HR`!``!,B:,H`0``3(VK,`$` -M`$R)JS`!``!,B:LX`0``2(V#0`$``$B)1"1(2(F#0`$``$B)@T@!``!(C8M0 -M`0``2(E,)%!(B8M0`0``2(F+6`$``$R-LW`!``!,B;-P`0``3(FS>`$``$B- -MLX`!``!(B70D0$B)LX`!``!(B;.(`0``3(V[8`$``$R)NV`!``!,B;MH`0`` -M2(U,)&Y(C50D<$B-="1Q#[=[/$B-1"1R2(E$)#A(C40D=$B)1"0P2(U$)&1( -MB40D*$B-1"1J2(E$)"!(C40D=DB)1"082(U$)&Q(B40D$$B-1"1M2(E$)`A( -MC40D:$B)!"1,C4PD;TR-1"1FZ``````/MD0D<8A#1@^V1"1PB$-'#[9$)&Z( -M@_T````/MT0D=F:)0W0/MT0D=&:)@[P2```/MT0D<H/H`6:)@[X2```/MT0D -M9F:)0U(/MT,\9CV`D70*9CV`E`^%H`D``,9#303&0T,$QD-.0,9#3`#&@_H` -M```)QD-$`$B-NR`)``#H`````$B)P4B)@T`)```/MD0D<4AIT)@!``!(A=)T -M$$B)R,8``$B#P`%(@^H!=?-(C;M("0``Z`````!(B<%(B8-H"0``#[9$)&Y( -MC03`2(G"2,'B!4B%TG002(G(Q@``2(/``4B#Z@%U\TB-NW`)``#H`````$B) -MP4B)@Y`)```/MD0D<$AIT,@/``!(A=)T$$B)R,8``$B#P`%(@^H!=?-(C;N8 -M"0``Z`````!(B<%(B8.X"0``#[=$)'9(C13%`````$B%TG002(G(Q@``2(/` -M`4B#Z@%U\TB-NR@*``#H`````$B)@T@*``!(C;L`"@``Z`````!(B<5(B8,@ -M"@``2(V[<`H``.@`````2(G"2(F#D`H``&:#?"1F`'1(N0````!(B6I@#[9$ -M)&^(0EA(BX,H`0``2(F3*`$``$R)(DB)0@A(B1`/MD0D;TB-!$!(C6R%`$B! -MPJ@```"#P0%F.4PD9G>]2(V[F`H``.@`````2(G"2(F#N`H``&:#?"1J`'0O -MN0````#&0A``2(N#.`$``$B)DS@!``!,B2I(B4((2(D02(/",(/!`68Y3"1J -M=]9(C;O`"@``Z`````!(B<)(B8/@"@``@'PD;0!T,[D`````2(N#2`$``$B) -MDT@!``!(BW0D2$B),DB)0@A(B1!(@\(@@\$!#[9$)&UF.<AWTDB-N^@*``#H -M`````$B)PDB)@P@+``!(C8@``0``2(N#6`$``$B)DU@!``!(BW0D4$B),DB) -M0@A(B1!(@\(@2#G*==I(C;L0"P``Z`````!(B<)(B8,P"P``@'PD;`!T,;D` -M````2(N#>`$``$B)DW@!``!,B3)(B4((2(D02('"H````(/!`0^V1"1L9CG( -M=]1(C;LX"P``Z`````!(B<)(B8-8"P``9H-\)&@`="NY`````$B+@V@!``!( -MB9-H`0``3(DZ2(E""$B)$$B#PBB#P0%F.4PD:'?:@'PD<0!T2;T`````3(VC -M8`L``$R)Y^@`````#[?52(F$TX`+``!(BY.(`0``2(F#B`$``$B+3"1`2(D( -M2(E0"$B)`H/%`0^V1"1Q9CGH=\-(C;N`#P``Z`````!(B8.@#P``2(F#J`\` -M``^W="1V9HFSL@\```^W]DB-NZ@/``#H`````$B-N[@/``#H`````$B)@]@/ -M``!(B8/@#P``#[9T)'%FB;/J#P``#[?V2(V[X`\``.@`````2(V[\`\``.@` -M````2(F#$!```$B)@Q@0```/MG0D;F:)LR(0```/M_9(C;L8$```Z`````!( -MC;LH$```Z`````!(B8-($```2(F#4!````^V="1P9HFS6A````^W]DB-NU`0 -M``#H`````$B-NV`0``#H`````$B)@X`0``!(B8.($```#[9#/F:)@Y(0```/ -MMG,^2(V[B!```.@`````2(V[F!```.@`````2(G!2(F#N!````^V1"1P2(T$ -MP$C!X`>)QH'&8%<``'02B?)(B<C&``!(@\`!2(/J`77S2(N#N!```(DP2(N3 -MN!````^V1"1PB$($#[94)'!(B[NX$```Z`````!!N`````"`>SX`#X2H```` -MOP`````/M\=(C12`2(T4D$C!X@-,C803R`$``$B-!!I(C;#``0``0(A^$,9& -M$0!(B9C(`0``QD86`,:`(`(```#&@/`!````QX!H`@```````$B-C!/X`0`` -M2(F(^`$``$B)B``"``!(C8P3$`(``$B)B!`"``!(B8@8`@``2(V4$R@"``!( -MB9`H`@``2(F0,`(``,9&$@*#QP$/MD,^9CGX#X==____QD-,`,:#[@@``/_& -M@^\(``#_QH/P"```_\:#\0@``/^`?"1Q``^$D0```+X`````#[?.2&G1F`$` -M`$B+@T`)``#&1!!+`4B+@T`)``#&1`)*`$B+@T`)``#&A`*`````_TB+@T`) -M``#&1`)R_TB+@T`)``!FQX0"R```````2,>$RV@$````````2(G12`.+0`D` -M`$B-02!(B4$@2`.30`D``$B-0B!(B4(H@\8!#[9$)'%F.?`/AW3___]FQX/X -M``````"X`````&:0QH08:`@``/](@\`!2#V&````=>R`?"1P``^$O0```+X` -M````#[?&2&G`R`\``$B+DY`)``#&1`)8`$B+DY`)``#&1!!9`$B+DY`)``!( -MQT00$`````!(B<%(`XN0"0``2(U1&$B)41A(B<%(`XN0"0``2(U1&$B)42!( -MB<%(`XN0"0``2(U1*$B)42A(B<%(`XN0"0``2(U1*$B)43!(BY.0"0``3(E$ -M$`A(B<%(`XN0"0``2(U12$B)44A(`X.0"0``2(U02$B)4%"#Q@$/MD0D<&8Y -M\`^'2/___\:#^P```("`?"1N``^$@@```+X`````#[?&2(T$P$C!X`5(BY-H -M"0``9L=$`DX$`$B+DV@)``#&1!!"`$B+DV@)``#&1!!$_TB+DV@)``#&1!!0 -M_TB)P4@#BV@)``!(C5$H2(E1*$B)P4@#BV@)``!(C5$H2(E1,$B+DV@)``!, -MB800B````(/&`0^V1"1N9CGP=X/&@_P```""2(VSZ!```$B-N\`0``#H```` -M`$B)@^`0``!(C;,8$0``2(V[\!```.@`````2(F#$!$``$B-LT@1``!(C;L@ -M$0``Z`````!(B8-`$0``2(VS>!$``$B-NU`1``#H`````$B)@W`1``!(C;.H -M$0``2(V[@!$``.@`````2(F#H!$``$B-L]@1``!(C;NP$0``Z`````!)B<1( -MB8/0$0``2(NKV!$``(!\)&T`=%)!O0````!(BWPD2.@`````3(E@$$B):!A( -MBY-(`0``2(F#2`$``$B+="1(2(DP2(E0"$B)`DF!Q``(``!(@<4`"```08/% -M`0^V1"1M9D0YZ'>T2(VS"!(``$B-N^`1``#H`````$F)Q$B)@P`2``!(BZL( -M$@``0;T`````2(M\)%#H`````$R)8!!(B6@82(N36`$``$B)@U@!``!(BTPD -M4$B)"$B)4`A(B0))@<0```$`2('%```!`$&#Q0%F08/]"'6X2(VS.!(``$B- -MNQ`2``#H`````$B)@S`2``!,BZ,X$@``9H-\)&@`=$A(B<5!M0!,B?_H```` -M`$B):!!,B6`82(N3:`$``$B)@V@!``!,B3A(B5`(2(D"2('%C`$``$F!Q(P! -M``!!@\4!9D0Y;"1H=[Y(@\1X6UU!7$%=05Y!7\-F9F:09F9FD$%505154TB# -M[`A)B?U)B?1(BYZ(````#[961TB)_DB)W^@`````2(G%9D"1.$$&`?4,` -M=%FY`````/9##0%T#>M,#[9##4C3^*@!=0V#P0%!#[9%0V8YR'?H9H/Y`W8S -M28M%`$@%T`$``$B-%(T`````@>+\_P,`2`'0BP")!0````#!Z!2#\`&#X`'K -M,;D`````28M%`$@%T`$``$B-%(T`````@>+\_P,`2`'0BP")!0````#!Z!2# -M\`&#X`&$P'00#[;Q3(GOZ`````#IEP$``$B-0V!(.4-@#X09`0``2(7M#X00 -M`0``#[:%@0```$G'1,18`````$B+50!(BT4(2(E""$B)$$B)ZKX&````2(G? -MZ`````"`O8,`````=!M,B>_H`````+\!````Z`````"`O8,`````=>5(BT5` -M2(7`=$A(QT!@`````/9%3`1U"$R)[^@`````2(M50$F+M?@(``"_`0```.@` -M````2(M50$F+M?@(``"_!@```.@`````2,=%0`````"`:PX!2(GN3(GOZ``` -M``!)BT4`BY!8`0``B14`````A=)T"DF+10")D%@!``!!QD0D0@!F08-D)$[O -M08!\)#L`="JZ``````^WPDF+1,182(7`=`J`>$K_#X5^````@\(!00^V1"0[ -M9CG0=]M!@'PD3@!X#[T`````08!\)#L`=1'K2TR)YDR)[^@`````9I#K2@^W -MQ4F+7,182(7;="'V0TP"=!M(BU-`28NU^`@``+\&````Z`````"`8TS]9I"# -MQ0%!#[9$)#MF.>AWQ&9!QT0D3@(`08!D)$G]2(/$"%M=05Q!7<-F9I!F9I!F -M9I!!5T%6055!5%532(/L*$F)_$B)?"082(M'4$B)1"0@2(L82(N#H!$``$2+ -M,$B)_DB)W^@`````08"\).L````!=@E!QH0DZ`````1)C6PD($DY;"0@#X1E -M`@``2(GOZ`````!)B<=)BT0D($R)>`A)B0=)B6\(38E\)"!F@WMT``^$"P(` -M`$&]`````$B-LZ@/``!(B70D$$B-@P`!``!(B40D"$$/M\5(P>`#2`.#N`D` -M`$B+*$B%[0^$PP$```^W12!F03E$)#@/A;,!```/MY.Z$@``03G6=%%F9I!F -MD(/"`0^W@[X2```YPK@`````#T/0C4(!2,'@`D@#@Z`1``"+`*D```@`=1QF -M)?\/9D0YZ'4223GO=1)(B=_H`````.F9`0``1#GR=;1(BW0D((!^6``/A4<! -M```/MT4@9CV%``^'.0$```^WP("\`V@(``#_#X0H`0``2(-\)!@`#X0&`0`` -M00^V1"1(J`$/A/@```"H!`^$\````$B+$P^W13)FP>@%#[?`C02%``,``(F" -M<`$``$B+`P^W33*#X1^Z`0```$B)UDC3YHFP=`$```^W13)(P>`#2`.#N`D` -M`$C'```````/MTTRB<AFP>@%)?\'``"#X1](B=9(T^9(B?'WT2&,@\`)```/ -MMTTRB<AFP>@%)?\'``"#X1](T^+WTB%4@WA,.?UT1TB+50!(BT4(2(E""$B) -M$$B#O8``````=`](C;6`````2(G?Z`````!(BX,``0``2(EH"$B)10!(BT0D -M"$B)10A(B:L``0``#[=U,DB+?"00Z`````!!@*PD@P````'K%DB+="0@]D8* -M`G0+2(GN3(GGZ`````!!@\4!9D0Y:W0/AQ/^__](@WPD&`!T)T$/MD0D2*@! -M=!VH!'0928L728M'"$B)0@A(B1!,B?Y,B>?H`````$B#Q"A;74%<05U!7D%? -MPY!(BT=03(L(0;@`````1(T4%D,/MH0(:`@``#S_=$(/ML!(:="8`0``2(G0 -M20.!0`D``$`XL`X!``!U)4@YN"`!``!U'$2(D`T!``!)BX%`"0``B(P"#`$` -M`&9F9I!F9I!)@\`!28'X@````'6D\\.02(M_6`^VA\`````\3W<Q#[;`2(T$ -M0$C!X`0!\HB4!\D````/MH?`````2(T$0$C!X`2(C`?(````@(?``````?/# -M9F9FD&9F9I!F9I!F9I!!N/____]FA?9T3$B)^D&X_____[\`````9F9FD&9F -MD`^V"HU!T#P)=QM!@/C_N`````!$#T3`00^VP(T$@$2-1$'0ZP9!@/C_=0R# -MQP%(@\(!9CGW=<E!#[;`PV9F9I!(BT=03(L`N0````!F9F:00@^VA`%H"``` -M//]T*@^VP$AIP)@!``!)`X!`"0``2#FX(`$``'400#BP#0$``'4'B)`/`0`` -MPTB#P0%(@?F`````=;SSPV9F9I!F9I!F9I!(BT=03(L03(M?6$&Y`````$,/ -MMH01:`@``#S_=$(/ML!(:<"8`0``28G`30."0`D``$DYN"`!``!U)4$XL`T! -M``!U'(3)=`Q)BX`8`0``2(D"ZQE(BP))B8`8`0``ZPU)@\$!28'Y@````'6D -M38G8N`````!!#[:XR````$"`_P%V/T"`_Q=T.4$XL,D```!U,(3)=!9(F$B- -M!$!(P>`$28N$`]````!(B0+#2)A(C01`2,'@!$B+$DF)E`/0````PX/``4F# -MP#"#^%!UI_/#059!54%455-(@^P028G^08GQ2(N_*`$```^V1P+!X`@/ME<# -M1(T$$$$/M\"#P`0]``@```^/[````$"$]G1,00^VEA`!``"^X/___R'6#[9' -M`8/@#XG1@^$0"?`)R+X(````(=:#X/.)T8/A!`GP"<B#X@*#X/Q!#[:.$`$` -M`(/A`0G0"<B(1P'K2@^V5P&^X/___R'600^VAA`!``"#X`^)T8/A$`GP"<B^ -M"````"'6@^#SB=�)\`G(@^("@^#\#[9/`8/A`0G0"<A!B(80`0``2(U7 -M"$$/M\!,C60'!$DYU'8_2(E4)`B[`````$$/MNE,C6PD"&9FD&9FD`^V\XGI -M3(GJ3(GWZ`````!(BT0D"$B#P`1(B40D"(/#`4PYX'+:2(/$$%M=05Q!74%> -MPV9F9I!F9I!F9I!F9I!32(G[2(M.2`^V00+!X`@/ME$#`=`/M\"-4`0/MT8T -M.<)_'TB+OR@!``!(8])(B<[H`````+X`````2(G?Z`````!;PV9F9I!F9F:0 -M9F9FD$%7059!54%455-(@^P(28GW08G42(M?6$F)WKT`````3(UN!`^V@\@` -M```\`79!/!=T/40XH\D```!U-$$/ME<#2&/%2(T$0$C!X`1)C;P&V````(#Z -M(+@@````#T?0#[;23(GNZ`````!F9I!F9I"#Q0%(@\,P@_U0=:A(@\0(6UU! -M7$%=05Y!7\-F9I!FD$B#[$A(B5PD&$B);"0@3(ED)"A,B6PD,$R)="0X3(E\ -M)$!)B?Q!B=>)RTR)!"1`B'0D#TB+1U!,BS!,B??H`````$B)Q4B%P`^$]@`` -M`$R)]^@`````28G%2(7`=1)(B>Y,B??H`````.G6````9I!(C4582(E$)!!) -MBWT0B=I)B[0D*`$``.@`````QH68````"L9%):Q!#[=$)#AFB44@2(L4)$B) -M56A,B74HB5TT@XV4````$DF+11!(B45(3(EM>$F-A"3L````2(E%4,9%,"!( -MQX6@`````````,9%.#O&13D"#[9$)`^(13I$B?C!Z!"(13M,B?H/ML:(13Q$ -MB'T]#[9%-HA%/@^V136(13^(74#&14$`O@````!(BWPD$.@`````BU4T28MU -M&$B+?"00Z`````!(B>Y,B??H`````$B+7"082(ML)"!,BV0D*$R+;"0P3(MT -M)#A,BWPD0$B#Q$C#9F:09F:09F:02(/L2$B)7"082(EL)"!,B60D*$R);"0P -M3(ET)#A,B7PD0$F)_$&)UXE,)`A,B<-`B'0D#TB+1U!,BS!,B??H`````$B) -MQ4B%P`^$Z@```$R)]^@`````28G%2(7`=1%(B>Y,B??H`````.G*````D$B- -M15A(B40D$,:%F`````K&126L00^W1"0X9HE%($B)76A,B74HQX64````"``` -M`$R);7A)BT402(E%2(M4)`B)531)C80D[````$B)15#&13`@2,>%H``````` -M``#&13@\QD4Y`@^V1"0/B$4Z1(GXP>@0B$4[3(GZ#[;&B$4\1(A]/0^V13:( -M13X/MD4UB$4_#[9$)`B(14#&14$`O@````!(BWPD$.@`````BU4T28MU&$B+ -M?"00Z`````!(B>Y,B??H`````$B+7"082(ML)"!,BV0D*$R+;"0P3(MT)#A, -MBWPD0$B#Q$C#9F9FD$B#[#A(B5PD"$B);"003(ED)!A,B6PD($R)="0H3(E\ -M)#!)B?Q(BT=03(LX2(N7*`$```^V0@+!X`@/ME(#`=`/M\!$C6@$08']``@` -M``^/S@```$R)_^@`````2(G%2(7`#X2Z````3(G_Z`````!)B<9(A<!U$$B) -M[DR)_^@`````Z9H```!(C5U82(MX$$ECU4F+M"0H`0``Z`````#&126L00^W -M1"0X9HE%($R)?2A$B6TT@XV4````$DF+1A!(B45(3(EU>$F-A"3L````2(E% -M4,9%,"!(QX6@`````````,9%.!W&13D0QD4Z`@^V136(13M$B&T\O@````!( -MB=_H`````(M5-$F+=AA(B=_H`````$B)[DR)_^@`````2(M<)`A(BVPD$$R+ -M9"083(ML)"!,BW0D*$R+?"0P2(/$.,-F9F:09F9FD&9FD$B#["A(B5PD&$B) -M;"0@2(G[B=5(QT0D$`````"`?TL!=$%(C50D$$`/MO:Y`0```.@`````2(M$ -M)!!(A<!T)(`(@$"$[70+2(M$)!"`2`,@ZPE(BT0D$(!@`]](B=_H`````$B+ -M7"082(ML)"!(@\0HPV9F9I!F9F:09F:09F:02(/L.$B)7"0(2(EL)!!,B60D -M&$R);"0@3(ET)"A,B7PD,$F)_4&)]TB+1U!,BS!,B??H`````$B)Q4B%P`^$ -MJ0```$R)]^@`````28G$2(7`=1!(B>Y,B??H`````.F)````2(U=6,9%):Q! -M#[=%.&:)12!,B74HQX64````"````$R)97A)BT0D$$B)14C'130`"```28V% -M[````$B)15#&13`@2,>%H`````````#&13@<QD4Y`42(?3K&13L(QD4\`+X` -M````2(G?Z`````"+531)BW0D&$B)W^@`````2(GN3(GWZ`````!(BUPD"$B+ -M;"003(MD)!A,BVPD($R+="0H3(M\)#!(@\0XPY!!5T%6055!5%532(/L&$B) -M/"1(BTY(#[9!`L'@"`^V40.-/!`/M\>#P`0/MU8T.=`/CUH!``!,C6D(#[?' -M3(UT`01,B6PD"$&\`````,=$)!0`````33GU#X/9````9I`/MD0D%(A$)!-! -M#[9%`L'@"$$/ME4#1(T\$$$/M_=(BWPD"$B#QP3H`````(G!//]U7D$/M\=( -MBUPD"$B-5`,$2(G323G6#X;/````08G,D`^V0@+!X`@/ME(#C2P0#[?U2(U[ -M!.@`````//]U"$&`_/]U>>MQ03C$1`]'X`^WQ4B-5`,$2(G323G6=F#KP9") -MPD0HX@^VT@^V7"03B=Y(BSPDZ`````")VDR)[DB+/"3H`````$$/M\=(BU0D -M"$R-;`($3(EL)`B#1"04`4TY[@^'*?___[X"````2(L\).@`````ZTE!O``` -M```/ME0D$TR)[DB+/"3H`````$$/M\=(BUPD"$R-;`,$3(EL)`B#1"04`>GE -M_O__#[94)!-,B>Y(BSPDZ`````#KJ6:02(/$&%M=05Q!74%>05_#D$%7059! -M54%455-(@^P(28G^2(M.2`^V00+!X`@/ME$#`=`/M\"#P`0/MU8T.=`/CPP! -M``!(C5$(#[9Q`<9$)`,`N0`````/MD("`$0D`P^V0@-(C50"!(/!`4`XSG/G -M@'PD`P`/A+X```!(C6H$0;\`````0;T`````QT0D!``````/ME7]00'5#[9% -M_#P!=`0\%W4[1(GK*--!.-UV<0^V1"0$@\`!1`^VX&9FD&:0#[9-_`^V\T2) -MXDR)]^@`````@\,!1#CK=$;KY&9F9I!)BT98@+C!`````70S1(GK*--!.-UV -M*0^V1"0$@\`!1`^VX`^V3?P/MO-$B>),B??H`````(/#`40XZW7F9F:008/' -M`8-$)`0!2(/%!$0Z?"0##X5:____28M&6,:`P0````&^!P```$R)]^@````` -M2(/$"%M=05Q!74%>05_#D$B#["A(B1PD2(EL)`A,B60D$$R);"083(ET)"!) -MB?Q(A?\/A,0```!(BT=03(LP3(GWZ`````!(B<5(A<`/A*D```!,B??H```` -M`$F)Q4B%P'402(GN3(GWZ`````#IB0```$B-75C&126L00^W1"0X9HE%($R) -M=2C'A90````(````3(EM>$F+11!(B45(QT4T``@``$F-A"3L````2(E%4,9% -M,"!(QX6@`````````,9%.!S&13D!QD4Z`L9%.PC&13P`O@````!(B=_H```` -M`(M5-$F+=1A(B=_H`````$B)[DR)]^@`````2(L<)$B+;"0(3(MD)!!,BVPD -M&$R+="0@2(/$*,-F9F:09F:02(/L&$B)'"1(B6PD"$R)9"002(GS28G\2(MN -M:`^W5B!F@?J%``^'E@````^WP@^VC`=H"```@/G_#X2"````9H/Z?W<<#[;! -M2(N70`D``$AIP)@!``!(BT004`^V0`CK06:!^H$`=QP/ML%(BY>0"0``2&G` -MR`\``$B+1!`(#[9`".L>#[;!2(N7:`D``$B-!,!(P>`%2(N$$(@````/MD`( -M//]T&P^VP$&`O`3N"```_W0-@/G_=`@/MD,D/`9U+TB#>W@`=`Q(C7-X3(GG -MZ`````!(B=Y,B>?H`````,=%4/____](B>__54CK<F:0A,!U.?:#E`````AT -M$TB+?3"+4S1(BW-(Z`````!F9I#'15``````2(M5.$B%TG0%BT4@B0)(B>__ -M54CK$\=%4/____](B>__54AF9I!F9I!(@WMX`'0,2(US>$R)Y^@`````2(G> -M3(GGZ`````!FD$B+'"1(BVPD"$R+9"002(/$&,-F9F:09F:09F:09F:02(/L -M*$B)7"0(2(EL)!!,B60D&$R);"0@2(GS28G\1`^V;B0/MT8@9CV%`'<;2(N7 -M0`D```^WP`^VA`=H"```2&G`F`$``.L,2(N70`D``+AHE@$`2(TL`D6$[74C -M9L>%R```````@'LX''44@'LZ`G4.2(G>2(GOZ`````!F9I!(@WMX`'0,2(US -M>$R)Y^@`````2(G>3(GGZ`````!!@/T&=#U(C9U@`0``28M\)"A(B=[H```` -M`,>%8`$``("$'@!(QX5P`0```````$B)K7@!``!)BWPD*$B)WN@`````2(M< -M)`A(BVPD$$R+9"083(ML)"!(@\0HPV9FD&9FD$%7059!54%455-(@^P(28G_ -M08G62(M'4$B+*$&\`````$R-;@Q!#[:$+&@(```\_W1.#[;`2&G8F`$``$B) -MWT@#O4`)``!(@<?4````N@@```!,B>[H`````(3`=")(BX5`"0``1(BT`PX! -M``!(BX5`"0``3(F\`R`!``!F9F:028/$`4F!_(````!UF$B#Q`A;74%<05U! -M7D%?PV9F9I!!5T%6055!5%532(/L&$B)?"0(2(M.2`^V00+!X`@/ME$#C3P0 -M#[?'@\`$#[=6-#G0#X_F````2(U9"`^WQTB-3`$$2(E,)!!)B=U(.=D/AKH` -M``!!O@````!F9I!F9I!$B?(/M@N$R0^(A0```(G(@^`//`9U?/9#`\!T!O9# -M!<!U</;!$'0Y@'L$`&9F9I!T84F-;0A!O`````!F9F:0#[93`TB)[DB+?"0( -MZ`````!(@\4<08/$`40X8P1V-.O?@'L"`'0L28UM!$&\`````$0/MOI$B?I( -MB>Y(BWPD".@`````2(/%'$&#Q`%$.&,"=^(/MD,!28U<!0))B=U!@\8!2#M< -M)!`/@E+___^^`0```$B+?"0(Z`````!(@\086UU!7$%=05Y!7\-F9F:005=! -M5D%505154TB#["A(B70D"$B)?"00#[9&)(A$)"</MU8@9H'ZA0`/A^@#```/ -MM\(/MHP':`@``+C_````@/G_=')F@_I_=R$/ML%(BUPD$$B+DT`)``!(:<"8 -M`0``2(M$$%`/MD`(ZTMF@?J!`'<A#[;!2(M<)!!(BY.0"0``2&G`R`\``$B+ -M1!`(#[9`".LC#[;!2(M<)!!(BY-H"0``2(T$P$C!X`5(BX00B`````^V0`A( -MF$B+5"001`^VO`+N"```2XT$OTF-!(=(C83"R`$``$B)1"082(N20`D```^V -MP4AIP)@!``!(C2P"@'PD)P`/A;4"``!FQX7(``````!(BT0D"(!X.!P/A9T" -M```/MD`Z/`)T53P"=PH\`0^%B0(``.LC/`=F9I!FD'0L/`H/A78"``!(BW0D -M"$B)[^@`````Z60"``!(BW0D"$B)[^@`````Z5("``!(BW0D"$B)[^@````` -MZ4`"``!(BW0D"$B)[^@`````2(V=8`$``$B+15!(BP!(BW@H2(G>Z`````#' -MA6`!``"`A!X`2,>%<`$```````!(B:UX`0``2(M%4$B+`$B+>"A(B=[H```` -M`,9%2O]+C02_28T$ATB+7"00@+S#U@$````/A)H!``!!O`````!+C02_28T$ -MATC!X`-,C;0#*`(``$B-'!A,C:O``0``9F:09F:03(GWZ`````!(B<5(BX,P -M`@``2(FK,`(``$R)=0!(B44(2(DH@'U*_P^$EP```(!]20`/A9@```!(B>Z` -MO>D`````#X18`0``#[952$B)T(/@!DB#^`9U*/;"`70C#[:5@0```$B+=5A( -MB>E(BWPD&.@`````Z28!``!F9I!F9I!(@_@$=1OVP@%F9F:09F:0=`](BWPD -M$.@`````Z?\```!(@_@U````]L(!9I`/A>H```!(BWPD$.@`````Z=L` -M``#&A>D`````9F9FD$&#Q`%!#[9%%D0XX`^''O___T$XQ`^%A````(3`#X1\ -M````0;P`````2XT$OTF-!(=(P>`#2(M4)!!,C:P"*`(``$B-'!!,C;/``0`` -M9F:03(GOZ`````!(B<5(BX,P`@``2(FK,`(``$R);0!(B44(2(DH@'U*_W0; -M#[9%23PB=`0\#74/O@H```!(B>_H`````.L[08/$`44X9A9WL4N-!+])C02' -M2(M<)!#&A,/1`0``_TB+="082(G?Z`````"`?"0G``^%I````&9F9I!(BT0D -M"$B#>'@`=!%(B<9(@\9X2(M\)!#H`````$B+="0(2(M\)!#H`````(!\)"<` -M=&T/MX7(````@\`!9HF%R````&:#^`IV#F;'A<@``````.F^_?__O@H```!( -MB>_H`````.LY2(M4)!!$#[:Z[0D``$N-!+])C02'2(V$PL@!``!(B40D&$B+ -MDD`)``"X:)8!`.FB_/__9F:09F:02(/$*%M=05Q!74%>05_#D$B%_W1+2(7V -M=$9(A=)T04B%R70\9D&!^(4`=S1!#[?`@+P':`@``/]T)L9"..'&0CD!QD(Z -M$V9$B4(@2(ER*$B)BJ````"X`0```,-F9F:0N`````##9F9FD&9FD&9FD$B+ -M1PB+0`2)!0````")PH'*```,`"7___/_0(3V#T7"2(M7"(D"2(M7"(E"#$B+ -M5PB)0A!(BU<(B4(42(M7"(E"&$B+5PB)0@3#D)"0D)"03(M4)"!,BUPD,(GX -M9H'_(B=W7V:!_R`G#X.4````9H'_0"$/A(D```!F@?]`(6:0=R!F@?\@(71Y -M9H'_(B%FD'1P9H'_4`=U;V9F9I!F9I#K8&:!_T0A=%EF@?]$(6:0<E9F+1`G -M9H/X`7=,9F9FD.M`9H'_@B=T.6:!_X(G9I!W$F:!_R0G="EF@?^`)V:0=2;K -M'F:!_X"19F9FD&9FD'009H'_@)1T"6:!_X!R9I!U!L8&0,8"`L8!!`^V%DB+ -M1"08B!!F0<<"@`!F0<<#``!!Q@$@2(M$)`AFQP```0^V%DB+1"00B!`/M@9F -M00,"9D$#`TB+5"0H9HD"9D&)`$$/MQ)(BT0D.&:)$$$/MQ*#P@M(BT0D0&:) -M$,-F9F:04T0/MU]T9D6%VP^$\P```$R+C[@)``!!N@````"[_____TF+`4B% -MP`^$PP````^W4""X_P```(G99H'ZA0`/AX,````/M\)$#[:$!V@(``!$B<%! -M@/C_=&IF@_I_=R%!#[;`2(N70`D``$AIP)@!``!(BT004`^V2`CK1V9F9I!F -M@?J!`'<=00^VP$B+EY`)``!(:<#(#P``2(M$$`@/MD@(ZQ]!#[;`2(N7:`D` -M`$B-!,!(P>`%2(N$$(@````/MD@(00^VP$B+ET`)``!`./%U'@^WP$AIP)@! -M```/MD002*@!=`NH!'0'N`$```#K%T&#P@%)@\$(9D4YV@^%'____[@````` -M6\-F9I!F9I!(BT=03(L038N:X!```$4/MTITN0````!!N`````#K0P^W\4F+ -M@K@)``!(BQ3P2(72="V+0C@E____`#WA`1``=!X/MT<X9CM"('442(GP2,'@ -M!F9&.408"'0.9F:09I"#P0%F1#G)<K=F1#G)=!-!@\`!9D&#^!]W"+D````` -MD.OA00^WP,-F9I!F9I!F9I!(BT=02(7`=!K&`'!(BT=00(AP`DB+1U#&0`<` -M2(M'4(A0#//#9F9FD&9F9I!F9I#SPV9F9I!F9F:09F:09F:008GQ3(G*@>+_ -M`0``2(N'N`D``$R+!-!-A<!T*P^VM_H```!!#[9`)8GQT^`/M_A!#[?1N/__ -M``#3X"'".=>X`````$P/1<!,B<##9F:09I"X`````,8$.`!(@\`!2#T@`0`` -M=?#&1T3_QD=0_TB-1RA(B4<H2(E',,-F9I!F9I"X`````,8$.`!(@\`!2#V8 -M`0``=?#&AX````#_QD=R_\:'@@```!](C4<@2(E'($B)1RC#9F9FD&9F9I!F -M9F:02(L&2(N7.`$``$B)AS@!``!(@<<P`0``2(DX2(E0"$B)`DC'!@````## -M9F:09F:02(N7*`$``$B)MR@!``!(C8<@`0``2(D&2(E6"$B),DB#?G``=`E( -M@\9PZ`````#SPV9F9I!F9F:09F9FD&9FD$B+!DB+EU@!``!(B8=8`0``2('' -M4`$``$B).$B)4`A(B0)(QP8`````PV9FD&9FD$B+!DB+ET@!``!(B8=(`0`` -M2(''0`$``$B).$B)4`A(B0)(QP8`````PV9FD&9FD$B+AW@!``!(B;=X`0`` -M2(''<`$``$B)/DB)1@A(B3##2(L&2(N7B`$``$B)AX@!``!(@<>``0``2(DX -M2(E0"$B)`DC'!@````##9F:09F:02(L&2(N7:`$``$B)AV@!``!(@<=@`0`` -M2(DX2(E0"$B)`DC'!@````##9F:09F:00(#_%W<10`^VQ_\DQ0````"X-``` -M`,.X!````&9F9I##N#P```##N!0```!F9F:0P[A`````P[@<````9F9FD,.X -M&````,.X*````&9F9I##N"````##N$P```!F9F:0PV9F9I!F9F:09F9FD&9F -MD`^V5DA(B="#X`9(@_@&=1#VP@$/A-L```!F9F:09F:0@'YR_P^%R@```$B+ -M!T2+B!@!``!$B0T`````N0````"X`0```$&)P$'3X$6%P74SB$YR2(L71(G` -M1`G(B8(8`0``2(L'BX!8`0``B04`````1(G"(<)T>$B+!XF06`$``.MM@\$! -M@_D@=;5(BP=$BX@<`0``1(D-`````+$`9I")RK@!````08G`0=/@187!=3:- -M0B"(1G)(BQ=$B<!$"<B)@AP!``!(BP>+@&`!``")!0````!$B<(APG032(L' -MB9!@`0``ZPB#P0&#^2!UL(!'1`'SPV9F9I!F9I!F9I"`?E#_#X7%````2(L' -M1(N(&`$``$2)#0````"Y`````+@!````08G`0=/@187!=3.(3E!(BQ=$B<!$ -M"<B)@A@!``!(BP>+@%@!``")!0````!$B<(APG1S2(L'B9!8`0``ZVB#P0&# -M^2!UM4B+!T2+B!P!``!$B0T`````L0!FD+@!````08G`0=/@187!=3.(3E!( -MBQ=$B<!$"<B)@AP!``!(BP>+@&`!``")!0````!$B<(APG032(L'B9!@`0`` -MZPB#P0&#^2!UM8!'1`'SPV9F9I!F9F:09F9FD&9FD$B+=T!(A?9T.;D````` -M9I!(BT3.6$B%P'0(.)"!````=`Q(@\$!2(/Y!706Z^)F@7Y`A0!W#$B%P&9F -M9I!F9I!U!;@`````\\-F9F:09F:0055!5%532(G]28G-P>8(#[;2`=:`?S`` -M#X35````2(-_4``/A,H```"+AY0```"H"4$/E,"Y`````$C'QP````!!B<P/ -MMQ3/B?`AT&8YP@^%D`````^V!,T`````/`-T!#P'=0M$.`3-`````'5VD,9% -M)"!-8^1(Q\,`````0@^V5.,&#[;P2(GOZ`````!(BU500@^V1.,'B$(-387M -M=#1)BTT`2(G*2,'J($B+15")4`-(BT50@`B`]H66````!'02A=)T#DB+15") -M2`A(BT50@"!_2(M54`^V13"#Z`>(0@?K#DB#P0%(@_D0#X5.____6UU!7$%= -MPV9FD&9FD$B#[`A(C9=@`0``N`````!(.9=@`0``=!!(B=?H`````$C'0"`` -M````2(/$",-FD$B#[`A(C9>``0``N`````!(.9>``0``=`A(B=?H`````$B# -MQ`C#9F9FD&9FD&9FD$B#[`A(C9=P`0``N`````!(.9=P`0``="A(B=?H```` -M`$B)P;H`````9F9FD&9FD,8$"@!(@\(!2('ZH````'7O2(/$",-F9F:09F:0 -M9F:02(/L"$B-ET`!``"X`````$@YET`!``!T"$B)U^@`````2(/$",-F9F:0 -M9F:09F:02(/L"$B-ES`!``"X`````$@YES`!``!T#$B)U^@`````QD`0`$B# -MQ`C#9F:09F:005=!5D%505154TB#[`A)B?]!B?7'1"0$`````$&^`````$,/ -MMH0^Z`@``#S_#X0=`0``#[;008V&@````&8]@0!W?0^WPDAIP,@/``!(B<-) -M`Y^0"0``@'M8`'13O0````!,C6-(3(GGZ`````!(C4CP2(M34$B)0U!,B6$0 -M2(E1&$B)`HM!2"4`__\`/0``_P!U$_9!2P1T#4B+04!(A<!T!$2(:`&#Q0%` -M.&M8=[9$B*O"````08/%`>F0````#[?"2(T$P$C!X`5(B<9)`[=H"0``@'X[ -M`'0]N0`````/ML%(BU3&6$B%TG0CBT)()0#__P`]``#_`'44]D)+!'0.2(M" -M0$B%P'0%1(AH`9"#P0$X3CMWR$2(KA0!``"`OA4!```#=1^#1"0$`8M$)`2# -MP`.#^`9V%T&#Q0''1"0$`````.L)08/%`69FD&:028/&`4F#_@8/A<3^__]) -MBX?X"```3#GX=0](C;B`%```1(GNZ(?^__](@\0(6UU!7$%=05Y!7\-F9F:0 -M9F9FD$B#[`@/MD8(#[:T!^X(``#&A`?N"```_P^W]DB!QX@0``#H`````$B# -MQ`C#9F9FD$B+5G!(A=)T&$B+0AA(B48X2(M"($B)1D!(BT(H2(E&2//#9F9F -MD&9FD&9FD&9FD$B+5G!(A=)T'$B+1CA(B4(82(M&0$B)0B!(BT9(2(E"*,9" -M$`'SPV9FD&9FD&9FD$%455-)B?Q(BQ]F@WMT``^$R````+T`````9F:09F:0 -M#[?52(N#N`D``$B+/-!(A?\/A)D````/MU<@9H'ZA0!W=`^WP@^VA`-H"``` -M//]T96:#^G]W'`^VP$B+DT`)``!(:<"8`0``2(M$$%`/ME`(ZTAF@?J!`'<< -M#[;`2(N3D`D``$AIP,@/``!(BT00"`^V4`CK)0^VP$B+DV@)``!(C03`2,'@ -M!4B+A!"(````#[90".L%NO\```!!#[9$)`@YPG4+O@````#H`````)"#Q0%F -M.6MT#X=#____6UU!7,-F9F:09F9FD&9FD&9FD$B#[!A(B5PD"$B);"002(G[ -M2(GU#[9&4#S_=!,/MO!(BS_H`````,9%4/^`:T0!2(M<)`A(BVPD$$B#Q!C# -M9I!(@^P82(E<)`A(B6PD$$B)^TB)]0^V1G(\_W03#[;P2(L_Z`````#&17+_ -M@&M$`4B+7"0(2(ML)!!(@\08PV:055-(@^P(2(G]2(GS2#E^*`^$VP```(!^ -M)``/A:<````/MD8X/!5T"#Q5#X67````2(M#<$B%P`^$B@```$B)PH!X$`$/ -MA7T```!F@7@8X0%U=4B+M4`)```/MT,@N6B6`0!F/84`=Q(/M\`/MH0%:`@` -M`$AIR)@!``!(C00.#[92&H#Z!W0=@/H'=P>`^@9U-NL?@/H,="J`^@UF9I!F -MD'4EZQ5F@V!J_69F9I!F9I#K%6:#2&H"ZPYF@V!J]V:0ZP5F@TAJ"$B#>W@` -M=".!>S0`"```=PY(C7-X2(GOZ`````#K#$B-<WA(B>_H`````&:!>SCA`0^% -M%P$```^W0R!F/84`=W\/M\`/MH0%:`@``#S_='!(BY5`"0``@'LD`'5C#[;` -M2&G`F`$``$B-!`(/ME,Z@/H'=!^`^@=W!X#Z!G4SZQR`^@QF9F:09F:0=""` -M^@UU(.L09H-@:OUFD.L59H-(:@+K#F:#8&KW9I#K!6:#2&H(9H%[..$!9F:0 -M#X6.````@'LZ"P^%A`````^W<R`/MD5&C7C_B?+K&Y"#P@%F@?J%`'<0#[?* -M2&/!@+P%:`@``/]U"0^WPCGX?-_K36:!^?\`=2)F9I!F9I#K/H/&`6:!_H4` -M=Q`/M]9(8\*`O`5H"```_W4,#[?&.<=_W[K_````9HE3(,9#)(!(B=Y(B>_H -M`````.D@`0``QD,D`$@Y:RAT)DB+0W!(A<!T'8!X$`%U"TB)WDB)[^@````` -M2(US<$B)[^@`````2(.[@`````!T#TB-LX````!(B>_H`````$B+>RA(B=[_ -MDZ`````/MU,X9H'ZX0%U5P^V0SJ#Z!$\`7=,#[=#(&8]A0`/AZ8````/M\`/ -MMH0%:`@``#S_#X23````#[;`2(T$P$C!X`5(B<9(`[5H"0``@'Y%`'5X@'Y0 -M_W1R2(GOZ`````#K:`^W0R!F/84`=UX/M\`/MHP%:`@``$B+M4`)``"+0S@E -M____`#WA`1``=#V!^?\```!T-6:!^N$!=0X/MD,Z@^@1/`%V(V9FD(G(2&G` -MF`$``$@!QH"^@P````!U"TB)[^@`````9F:02(/$"%M=PV9FD&9FD&9FD%53 -M2(/L"$B)_4B)\P^W5B!F@?J%``^'EP````^WP@^VC`=H"```@/G_#X2#```` -M9H/Z?W<<#[;!2(N70`D``$AIP)@!``!(BT004`^V0`CK06:!^H$`=QP/ML%( -MBY>0"0``2&G`R`\``$B+1!`(#[9`".L>#[;!2(N7:`D``$B-!,!(P>`%2(N$ -M$(@````/MD`(9CW_`'0:#[?`#[:\!>X(``!`@/__=`D/ML%F/?\`=1!(B=Y( -MB>_H`````.F!````#[93.P^V0SP/MDL]@/D!=`6`^0AU8$B+2VC!X`@/MM(! -MT"7_`0``2(N5N`D``$@Y#,)U0@^W23*)RF;!Z@6!XO\'``"#X1^X`0```$C3 -MX/?0(425>$B+0V@/MW`R0`^VQTB-/(!(C3RX2(V\_<@!``#H`````$B)WDB) -M[^@`````2(/$"%M=PV9FD&9FD$B#[!A(B5PD"$B);"002(G[2(V_(`$``+T` -M````2#F[(`$``'0<Z`````!(B<5(B<?H`````$B)W^@`````2(E%<$B)Z$B+ -M7"0(2(ML)!!(@\08PV9F9I!F9F:09F9FD$B#[!A(B1PD2(EL)`A,B60D$$B) -M_4B+1U!,BR!,B>?H`````$B)PTB%P'1P3(GGZ`````!(B<)(A<!U%,:%Z0`` -M``%(B=Y,B>?H`````.M,QD,X``^W13AFB4,@QH.8````#TR)8RC'0S0````` -M2,=#2`````!(BT(02(E#4,9#,"1(B5-X2,>#H`````````!(B=Y,B>?H```` -M`$B+'"1(BVPD"$R+9"002(/$&,.02(/L&$B)'"1(B6PD"$R)9"002(G]08GT -M2(M'4$B+&$B)W^@`````2(G"2(7`=$3&0#@;QD`Y`42(8#P/MT4X9HE"(,:" -MF`````](B5HHQT(T`````$C'0D@`````2,>"H`````````!(B=9(B=_H```` -M`$B+'"1(BVPD"$R+9"002(/$&,-F9F:09F:09F:02(/L.$B)7"0(2(EL)!!, -MB60D&$R);"0@3(ET)"A,B7PD,$F)_TF)]4R+-TR)]^@`````2(G%2(7`#X2. -M````3(GWZ`````!)B<1(A<!U$4B)[DR)]^@`````ZW%F9F:02(U=6,9%..'& -M13D!QD4Z#D$/MT4X9HE%(&9!@V5H]TF+!TB)12C'130`"```28M$)!!(B45( -M3(EE>$C'A:``````````O@````!(B=_H`````(M5-$F+="082(G?Z`````!( -MB>Y,B??H`````$B+7"0(2(ML)!!,BV0D&$R+;"0@3(MT)"A,BWPD,$B#Q#C# -M2(/L*$B)7"0(2(EL)!!,B60D&$R);"0@28GTB=5(BQ](B=_H`````$B)PDB% -MP'1?QD`XX<9`.0%`B&@ZQD`[#T$/MT0D.&:)0B!(B5HHQT(T`````$C'0D@` -M````2,>"H`````````!(B=9(B=_H`````$"`_0%U#+\%````Z`````#K"K]0 -MPP``Z`````!(BUPD"$B+;"003(MD)!A,BVPD($B#Q"C#9F9FD&9F9I!54TB# -M[`A(B?U(B?,/MU8@9H'ZA0`/AY@````/M\(/MHP':`@``(#Y_P^$A````&:# -M^G]W'`^VP4B+ET`)``!(:<"8`0``2(M$$%`/MD`(ZT%F@?J!`'<<#[;!2(N7 -MD`D``$AIP,@/``!(BT00"`^V0`CK'@^VP4B+EV@)``!(C03`2,'@!4B+A!"( -M````#[9`"#S_=!T/ML`/MH0%[@@``#S_=`Z`^?]T"0^V4R2`^@9U/4B#>W@` -M="2!>S0`"```=P](C7-X2(GOZ`````"0ZPQ(C7-X2(GOZ`````!(B=Y(B>_H -M`````.MU9F:09I!(B[U`"0``A-)T*P^V\4AI]I@!``!(C30W#[;`2(T\@$B- -M/+A(C;S]R`$``+H!````Z`````!(@WMX`'0C@7LT``@``'<.2(US>$B)[^@` -M````ZPQ(C7-X2(GOZ`````!(B=Y(B>_H`````&9FD&:02(/$"%M=PV9FD&9F -MD&9FD$B#["A(B1PD2(EL)`A,B60D$$R);"083(ET)"!(B?M(B?4/MU8@9H'Z -MA0`/AP\!```/M\(/MHP':`@``(#Y_P^$^P```&:#^G]W'`^VP4B+ET`)``!( -M:<"8`0``2(M$$%`/MD`(ZT%F@?J!`'<<#[;!2(N7D`D``$AIP,@/``!(BT00 -M"`^V0`CK'@^VP4B+EV@)``!(C03`2,'@!4B+A!"(````#[9`"#S_#X20```` -M1`^VZ0^VP$0/MJ0#[@@``$&`_/]T>F9!@?W_`'1R@'TD!G1L3(NS0`D``(!] -M.@%U1+\*````Z`````!(B>Y(B=_H`````$$/M_5(:?:8`0``28TT-D$/ML1( -MC3R`2(T\N$B-O/O(`0``N@(```#H`````.L;O_0!``#H`````$B)[DB)W^@` -M````9F:09F:02(L<)$B+;"0(3(MD)!!,BVPD&$R+="0@2(/$*,-F9I!(@^P8 -M2(D<)$B);"0(3(ED)!!)B?Q(BT=02(LH2(GOZ`````!(B<-(A<!U"T'&A"3I -M`````>M?QD`X%<9`):M!#[=$)#AFB4,@2(EK*$&X`0```+D!````2(G:3(GF -M2(GOZ`````"$P'462(G>2(GOZ`````!!QH0DZ0````'K%DC'@Z`````````` -M2(G>2(GOZ`````!(BQPD2(ML)`A,BV0D$$B#Q!C#9F9FD&9FD$B#["A(B5PD -M"$B);"003(ED)!A,B6PD($B)^TB+1U!,BRA,B>_H`````$B)Q4B%P'4.QH/I -M`````>FV````9I!,B>_H`````$F)Q$B%P'47QH/I`````4B)[DR)[^@````` -MZ8T```#&13@:QD4Y",9%.@C&13L`QD4\_\9%/0#&126K#[=#.&:)12!,B6TH -MQT4T_P```,>%E`````@```!)BT0D$$B)14A(!?\```!(B450QD4P)$R)97A( -MQX6@`````````$B-75B^`````$B)W^@`````28MT)!BZ_P```$B)W^@````` -M2(GN3(GOZ`````!(BUPD"$B+;"003(MD)!A,BVPD($B#Q"C#9F:02(/L.$B) -M7"0(2(EL)!!,B60D&$R);"0@3(ET)"A,B7PD,$F)_$&)]DB+1U!,BRA,B>_H -M`````$B)PTB%P'410<:$).D````!Z;H```!F9I!,B>_H`````$B)Q4B%P'4@ -M0<:$).D````!2(G>3(GOZ`````#IC@```&9F9I!F9I!,C7M8QD,X$D6$]G03 -MQD,Y`<9#.H#&0SQ`ZPEF9I!FD,9#/"3&0R6K00^W1"0X9HE#($R):RC'0S1@ -M````QX.4````"````$B+11!(B4-(2(EK>$C'@Z``````````O@````!,B?_H -M`````$B+=1BZ8````$R)_^@`````2(G>3(GOZ`````!(BUPD"$B+;"003(MD -M)!A,BVPD($R+="0H3(M\)#!(@\0XPV9FD&9FD$B#["A(B1PD2(EL)`A,B60D -M$$R);"083(ET)"!)B?Q(BT=03(LP3(GWZ`````!(B<5(A<!U#D'&A"3I```` -M`>FR````3(GWZ`````!)B<5(A<!U'$'&A"3I`````4B)[DR)]^@`````Z8D` -M``!F9I!(C5U8QD4XGL9%.1#&144@QD4EJT$/MT0D.&:)12!,B74HQT4T(``` -M`,>%E`````@```!)BT402(E%2$R);7A(@\`@2(E%4,9%,"1(QX6@```````` -M`,:%F`````^^`````$B)W^@`````28MU&+H@````2(G?Z`````!(B>Y,B??H -M`````$B+'"1(BVPD"$R+9"003(ML)!A,BW0D($B#Q"C#9F9FD&9FD&9FD&9F -MD$B#["A(B1PD2(EL)`A,B60D$$R);"083(ET)"!)B?Q(BT=03(LP3(GWZ``` -M``!(B<5(A<!U#D'&A"3I`````>FC````3(GWZ`````!)B<5(A<!U'$'&A"3I -M`````4B)[DR)]^@`````ZWUF9I!F9I!(C5U8QD4X)<9%):M!#[=$)#AFB44@ -M3(EU*,=%-`@```#'A90````(````28M%$$B)14A(@\`(2(E%4,9%,"1,B6UX -M2,>%H`````````"^`````$B)W^@`````28MU&+H(````2(G?Z`````!(B>Y, -MB??H`````$B+'"1(BVPD"$R+9"003(ML)!A,BW0D($B#Q"C#9F9FD&9F9I!F -M9F:02(/L.$B)7"0(2(EL)!!,B60D&$R);"0@3(ET)"A,B7PD,$F)_TF)](E4 -M)`1(BR],B[5`"0``#[=&($0/MJP%:`@``$B)[^@`````2(G#00^W="0RB?!F -MP>@%#[?`BT2%>(GQ@^$?2-/XJ`$/A;T```!(A=L/A+0```!!#[;52&G2F`$` -M`$F-%!9!#[9$)"4/MHWZ````T^`)\,9#..'&0SD!QD,Z#XA#.V;!Z`B(0SP/ -MMD0D!(A#/4B+@MP```!(B4,^3(EC:,9#):H/MT(X9HE#($F+!TB)0RC'0S0` -M````2,=#2`````!(QX.@`````````$B->UB^`````.@`````2(G>2(GOZ``` -M``!!#[=,)#*)RF;!Z@6!XO\'``"#X1^X`0```$C3X`E$E7A(BUPD"$B+;"00 -M3(MD)!A,BVPD($R+="0H3(M\)#!(@\0XPV9F9I!F9F:09F9FD&9FD$%7059! -M54%455-(@^P(28G^28G508GW2(L?9H-[=``/A.P!``"]`````$&\_____P^W -MU4B+@[@)``!(BS302(7V#X2]`0``BWXX@>?___\`@?_A`1``#X65````387M -M#X6?`0``#[=6(&:!^H4`=W0/M\(/MH0#:`@``#S_=&5F@_I_=QP/ML!(BY-` -M"0``2&G`F`$``$B+1!!0#[90".M&9H'Z@0!W'`^VP$B+DY`)``!(:<#(#P`` -M2(M$$`@/ME`(ZR,/ML!(BY-H"0``2(T$P$C!X`5(BX00B`````^V4`CK`T2) -MXKD`````Z:<````/MU8@9H'ZA0`/AY`````/M\(/MHP#:`@``(#Y_P^$?``` -M`&:#^G]W'`^VP4B+DT`)``!(:<"8`0``2(M$$%`/ME`(ZT%F@?J!`'<<#[;! -M2(N3D`D``$AIP,@/``!(BT00"`^V4`CK'@^VP4B+DV@)``!(C03`2,'@!4B+ -MA!"(````#[90"`^VP4AIP)@!``!(B<%(`XM`"0``ZPMF9I!$B>*Y`````$$X -M5@AU9DV%[70+00^W13AF.T8@=59!@/\&=$&!_^$!$`!T.0^V44A(B="#X`9( -M@_@&=2GVP@%U)("YZ`````!U&X'_X0$/`'0B1(A^)+H!````3(GWZ`````#K -M#T2(?B0/M_5,B??H`````(/%`68Y:W0/AQ_^__]!@/^!#X1+`0``2(N#``$` -M`$B-JP`!``!(.<4/A#0!``"Z`````(/"`4B+`$@YQ77U9H72#X0;`0``1(UB -M_Y!(B>_H`````$B)P4V%[70H00^W13AF.T$@=!U(BX,(`0``2(F+"`$``$B) -M*4B)00A(B0CIP@````^W42!F@?J%`'=T#[?"#[:$`V@(```\_W1E9H/Z?W<< -M#[;`2(N30`D``$AIP)@!``!(BT004`^V0`CK2&:!^H$`=QP/ML!(BY.0"0`` -M2&G`R`\``$B+1!`(#[9`".LE#[;`2(N3:`D``$B-!,!(P>`%2(N$$(@````/ -MMD`(ZP6X_____T$Z1@AU((M!."7___\`/>$!#P!T$42(>21(B<Y(B=_H```` -M`.L82(N#"`$``$B)BP@!``!(B2E(B4$(2(D(08U$)/]F187D=!%(.ZL``0`` -M=`A!B<3IZO[__TB#Q`A;74%<05U!7D%?PV9F9I!F9F:09F:02(/L.$B)7"0( -M2(EL)!!,B60D&$R);"0@3(ET)"A,B7PD,$F)_$F)]DF)S4&)UTB++TB)[^@` -M````2(G#2(7`=0]!QH7I`````>F+````9I!(B>_H`````$B)PDB%P'452(G> -M2(GOZ`````!!QH7I`````>MDQD,XX<9#.0'&0SH01(A[)4$/MD9;9HE#($F+ -M!"1(B4,HQT,TD````$B-0A!(B4-(2(E3>,9``1+&0A!`1(AX"4C'@Z`````` -M````2(U[6+X`````Z`````!(B=Y(B>_H`````$B+7"0(2(ML)!!,BV0D&$R+ -M;"0@3(MT)"A,BWPD,$B#Q#C#9F9FD$B#[#A(B5PD"$B);"003(ED)!A,B6PD -M($R)="0H3(E\)#!)B?Q)B?5!B=9!B<](BR](B>_H`````$B)PTB%P`^$@@`` -M`$B)[^@`````2(G"2(7`='+&0SCAQD,Y`<9#.A!$B',E00^V15MFB4,@28L$ -M)$B)0RC'0S20````2(U"$$B)0TA(B5-XQD`!D<9"$$!$B'`)1(AX"DC'@Z`` -M````````2(U[6+X`````Z`````!(B=Y(B>_H`````+^@A@$`Z`````!(BUPD -M"$B+;"003(MD)!A,BVPD($R+="0H3(M\)#!(@\0XPV9FD&9FD$B#["A(B1PD -M2(EL)`A,B60D$$R);"083(ET)"!)B?Q)B?5!B=9(BR](B>_H`````$B)PTB% -MP'1T2(GOZ`````!(B<)(A<!T9,9#..'&0SD!QD,Z$,9#);M!#[9%6V:)0R!) -MBP0D2(E#*,=#-)````!(C4(02(E#2$B)4WC&0`$0QD(00$2(<`E(QX.@```` -M`````$B->UB^`````.@`````2(G>2(GOZ`````!(BQPD2(ML)`A,BV0D$$R+ -M;"083(MT)"!(@\0HPV9F9I!F9I!(@^PH2(E<)`A(B6PD$$R)9"083(EL)"!) -MB?Q)B?5(BR](B>_H`````$B)PTB%P'1P2(GOZ`````!(B<)(A<!T8,9#..'& -M0SD!QD,Z$,9#);M!#[9%6V:)0R!)BP0D2(E#*,=#-)````!(C4(02(E#2$B) -M4WC&0`$`QD(00$C'@Z``````````2(U[6+X`````Z`````!(B=Y(B>_H```` -M`$B+7"0(2(ML)!!,BV0D&$R+;"0@2(/$*,-F9I!F9I!54TB#[`A(B?U(C9^( -M$```2(G?Z`````"$P`^%X````$B)W^@`````B<&X`````(G&@+PH[@@``/]U -M"CA%3',2B$5,ZPV#Q@%(@\`!2(/X!'7=0(#^!`^$I````$`/ML:(C`7N"``` -M#[?Y2(T$OTB-!(=(C93%R`$``+@`````D,8$$`!(@\`!2#VH````=?`/M\%( -MC12`2(T4D$C!X@-(C8P5^`$``$B-!"I(B8CX`0``2(F(``(``$B-C!40`@`` -M2(F($`(``$B)B!@"``!(C905*`(``$B)D"@"``!(B9`P`@``0(BPT`$``$B- -M!+](C02'2(V$Q<@!``#K!V:0N`````!(@\0(6UW#9F9FD$B#[!A(B1PD2(EL -M)`A,B60D$$B)_4B-G^`/``!(B=_H`````(3`#X4T`0``2(G?Z`````")PK@` -M````9F:09I")PX"\*&@(``#_=14/ML!F.87X````<QAFB87X````ZP^#PP%( -M@\`!2#V`````=="`^X`/A.<````/ML.(E`5H"```#[?"3&G@F`$``$R)YT@# -MO4`)``#H`````$B+E4`)```/ML-F08E$%#A(BX5`"0``0<9$!$H`2(N%0`D` -M`$'&1`1M_TB+A4`)``!!QD0$;/](BX5`"0``0<9$!&[_2(N%0`D``$'&1`1P -M_TB+A4`)``!!QD0$;_](BX5`"0``0<9$!''_2(N%0`D``$'&A`3J`````$B+ -MA4`)``!!QH0$#P$``/](B>_H`````$B+E4`)``!)B804*`$``(!]40%U#4B+ -MA4`)``!!@$P$3`%,B>!(`X5`"0``ZPAF9I"X`````$B+'"1(BVPD"$R+9"00 -M2(/$&,-F9F:09F9FD%-(B?OHM^'__TB+N_@(``#H`````%O#9F:09F:09F:0 -M2(/L&$B)'"1(B6PD"$R)9"002(G]2(V?&!```$B)W^@`````A,`/A>8```!( -MB=_H`````(G"2(GHNX+___]FD("XZ@@``/]U%SB=_````',AB)W\````ZQEF -M9F:09F:0@\,!2(/``8#[A@^$H@```.O.@/N'````#[;#B)0%:`@```^W -MPDB-!,!)B<1)P>0%3(GG2`.]:`D``.@`````2(N5:`D```^VPV9!B4040(!] -M40%U#TB+A6@)``!F0<=$!$S__TB+A6@)``!!QD0$0@!(BX5H"0``9D''1`1. -M``!(BX5H"0``9D''A`0``0``__](B[WX"```O@````#H`````$R)X$@#A6@) -M``#K!;@`````2(L<)$B+;"0(3(MD)!!(@\08PV9FD&9FD%532(/L"$B)_0^W -M1D`/MIP':`@``,:$!V@(``#_#[?S2(V_&!```.@`````#[?;2(T<VTC!XP5( -MB=Y(`[5H"0``@'Y0_W0(2(GOZ`````!(B[WX"```O@````#H`````$B#Q`A; -M7<-F9I!F9I!F9I!32(G[#[9&6P^VM`=H"```QH0':`@``/\/M_9(C;]0$``` -MZ`````!(B[OX"```O@````#H`````%O#9F:09F:04TB)\X!^1/]T%$B-MI`` -M``!(BW\HZ`````#&0T3_6\-32(GS@+Z`````_W072(VV,`$``$B+?RCH```` -M`,:#@````/];PV9F9I!F9I!F9I!(@^PH2(E<)`A(B6PD$$R)9"083(EL)"!( -MB?M(B?4/MT8X1`^VK`=H"```00^WQ4QIX)@!``!,B>9(`[=`"0``2('&*`$` -M`.@`````#[=5.$B+A--H!```2(7`=!9(@[B``````'4,2,>$TV@$```````` -M#[=%.,:$`V@(``#_00^W]4B-N^`/``#H`````$R)YD@#LT`)``"`?G+_=`A( -MB=_H`````$B)[DB)W^@`````2(N#0`D``$'&1`1*`$B+@T`)``!!QD0$2P%( -MBUPD"$B+;"003(MD)!A,BVPD($B#Q"C#9F9FD&9F9I!F9I!(@^PH2(E<)`A( -MB6PD$$R)9"083(EL)"!)B?U(B?-F@7XXX0$/A<X````/MD8Z@^@1/`$/A[\` -M```/MT8@9CV%``^'@`$```^WP`^VA`=H"```2(N7:`D``#S_#X1F`0``#[;` -M2(T$P$C!X`5(C2P"@&U%`4R-92A,B>?H`````$B)PD@YV'5*2(GN3(GOZ``` -M``!,.V4H#X0J`0``QX60`````!)Z`$C'A:``````````2(FMJ````$B-M9`` -M``!)BWTHZ`````#&140`Z?4```!(BT4H2(E0"$B)`DR)8@A(B54H2(L32(M# -M"$B)0@A(B1#ISP````^W0R!F/84`#X?!````#[?`00^VE`5H"```28N-0`D` -M`(M#."7___\`/>$!$``/A)L```"!^O\````/A(\```")T$AIP)@!``!(C2P! -M@*V#`````4R-92!,B>?H`````$B)PD@YV'5&2(GN3(GOZ`````!,.V4@=%;' -MA3`!````$GH`2,>%0`$```````!(B:U(`0``2(VU,`$``$F+?2CH`````,:% -M@`````#K(4B+12!(B5`(2(D"3(EB"$B)52!(BQ-(BT,(2(E""$B)$$B+7"0( -M2(ML)!!,BV0D&$R+;"0@2(/$*,-54TB#[`A(B?M(B?4/MWXRB?IFP>H%#[?W -MB?^X`0```$C3X(G!]]&!XO\'```A3)-X9H'__P]T1`^WQTC!X`-(`X.X -M"0``2(,X`'0P2,<``````"&,D\`)``!(C;NH#P``Z`````!(B>Y(B=_H```` -M`$B)[DB)W^@`````2(/$"%M=PV9F9I!F9I!F9I!54TB#[`A(B?5F@7XXX0$/ -MA:P````/MD8Z@^@1/`$/AYT````/MT8@NO\```!F/84`=PL/M\`/MI0':`@` -M`(G02(T$P$C!X`5(B<-(`Y]H"0``@'M$_W5)#[:5F````(T$$H32N@@````/ -M1,(/ML!IP$!"#P")@Y````!(QX.@`````````$B)FZ@```!(C;.0````2(M_ -M*.@`````QD-$`$B+4S!(B6LP2(U#*$B)10!(B54(2(DJ@$-%`>FT````#[=% -M(+G_````9CV%`'<+#[?`#[:,!V@(``!(BY=`"0``BT4X)?___P`]X0$0``^$ -M@````(G(2&G`F`$``$B-'`*`NX````#_=4P/MI68````C002A-*Z"`````]$ -MP@^VP&G`0$(/`(F#,`$``$C'@T`!````````2(F;2`$``$B-LS`!``!(BW\H -MZ`````#&@X``````2(M3*$B):RA(C4,@2(E%`$B)50A(B2J`@X,````!2(/$ -M"%M=PV9F9I!!5T%6055!5%532(/L*$F)_DB)="0(#[=6(&:!^H4`#X<%`P`` -M#[?"#[:T!V@(``")\$"`_O]T9F:#^G]W'4`/ML9(BY=`"0``2&G`F`$``$B+ -M1!!0#[9`".M#9H'Z@0!W'4`/ML9(BY>0"0``2&G`R`\``$B+1!`(#[9`".L? -M0`^VQDB+EV@)``!(C03`2,'@!4B+A!"(````#[9`"`^VP$$/MI0&[@@``$B- -M!))(C02"28V$QL@!``!(B40D$$F+CI`)``!`#[;&2&G`R`\``$R-/`%(BT0D -M"$B+2$@/MD$!/!)T*3R1#X47`@``2(T$DDB-!(*Y`````$&`O,;6`0````^$ -MSP$``.E@`0``2(T$DDB-!())C03&2(N8R`$``$B)7"0@#[99"8A<)!X/MDD: -MB$PD'[L`````@+C6`0```'1U0;P`````2(T$DDB-!()(P>`#38VL!B@"``!* -MC2PP3(VUP`$``&9FD&9FD$R)[^@`````2(G#2(N%,`(``$B)G3`"``!,B2M( -MB4,(2(D83#E[6'47#[:#@0```$B+5"0(.D(E=!!F9I!F9I!!@\0!13AF%G>V -M2(M$)`A(BW!X2(7V=`I(BWPD(.@`````2(MT)`A(BWPD(.@`````#[:#R@`` -M`(U0`8B3R@```#P#=RN`?"0?`'4D2(M$)`@/ME`E2(MS6$&X`````+D"```` -M2(M\)!#H`````.LSC4(!B(/*````@/H"=B6`?"0?`'4>QD-+`L9#2O^`8TS^ -M2(G>2(M\)"#H`````.D$`0``#[9,)!\/ME0D'DR)_DB+?"00Z`````#IZ``` -M`+T`````2(T$DDB-!()(P>`#38VD!B@"``!*C1PP3(VKP`$``$R)Y^@````` -M2(G!2(N#,`(``$B)BS`"``!,B2%(B4$(2(D(3#EY6'44#[:!@0```$B+5"0( -M.D(E=`QF9I"#Q0%!.&T6=[H/ME%(2(G0@^`&2(/X!G4<]L(!=!=(BUPD"`^V -M4R5(BW%82(M\)!#H`````$B+1"0(2(MP>$B%]G0(3(GWZ`````!(BW0D"$R) -M]^@`````ZRT/MI?M"0``2(T$DDB-!()(C83'R`$``$B)1"002(N/D`D``+@X -MN`\`Z7K]__](@\0H6UU!7$%=05Y!7\-F9F:09F:09F:0055!5%532(/L"$F) -M_4F)]$B)T\9"2P'&0DH`O@8```!,B>?H`````$B#>U@`=!=(BU,02(M#&$B) -M0@A(B1!(BT-8@&A8`8"[@P````!T')!,B>_H`````+\!````Z`````"`NX,` +MB1!(BT-8@&A8`8"[@P````!T'V9F9I!,B>?H`````+\!````Z`````"`NX,` M````=>5(B[L@`0``2(7_=!$/MK,-`0``N@$```#H`````$B+>UA(A?]T$0^V -MLX$```"Z`0```.@`````2(MK0$B%[0^$B@```$B#O8``````=7!(@[V(```` -M`'5F]D-,!'493(GOZ`````!(BW-`N@$```!,B>_H`````$B+0T`/ME`"#[9P -M`4C'QP````"X`````.@`````2(M30$F+M?@(``"_`0```.@`````2(M30$F+ -MM?@(``"_!@```.@`````2,=#0`````!(QT5@`````$B+4V!(A=)T$`^V@X$` -M``!(QT3"6`````!(BQ-(BT,(2(E""$B)$$&`;"0.`4B)WDR)[^@`````08!\ -M)`G_=%U!@'PD#@!T1+L`````28UL)&!F9I!FD$B)[^@`````28M4)&A)B40D -M:$B)*$B)4`A(B0*`>$K_=0R#PP%!.%PD#G8)Z])!.%PD#G<10<9$)`G_3(GF -M3(GOZ`````!(@\0(6UU!7$%=PV9F9I!F9F:09F9FD&9FD$%7059!54%455-( -M@^P(28G_28GV2(G5QD)+`<9"2@"^!@```$R)]^@`````2(-]6`!T%TB+51!( -MBT482(E""$B)$$B+15B`:%@!@+V#`````'0;3(G_Z`````"_`0```.@````` -M@+V#`````'7E2(N](`$``$B%_W01#[:U#0$``+H!````Z`````!(BWU82(7_ -M=!$/MK6!````N@$```#H`````$B+74!(A=L/A!$!``#V14P$=4U,B?_H```` -M`$B+=4"Z`0```$R)_^@`````2(M%0`^V4`(/MG`!2,?'`````+@`````Z``` -M``!(BU5`28NW^`@``+\!````Z`````#K+@^V4P(/MG,!2,?'`````+@````` -MZ`````!(BU5`28NW^`@``+\!````Z`````!(BXN`````2(7)#X0W`0``#[=% -M.$G'A,=H!````````$C'@X``````````2(N[D````+K_____2(G>_]'I!@$` -M``^W13A)QX3':`0```````!(QX.(`````````$B+NY````#_TO9%3`)T%4B+ -M54!)B[?X"```OP8```#H`````$C'14``````2,=#8`````!(BU5@2(72=!`/ -MMH6!````2,=$PE@`````2(M5`$B+10A(B4((2(D000^V5@Z#Z@%!B%8.2(M% -M8$B%P'0'9H-X3@)U6832=%5!O`````!-C6Y@3(GOZ`````!(B<-)BT9H28E> -M:$R)*TB)0PA(B1A(A=MT'_9#3`)T&4B+4T!)B[?X"```OP8```#H`````(!C -M3/U!@\0!13AF#G>U2(GN3(G_Z`````!(@\0(6UU!7$%=05Y!7\-(BY.(```` -M2(72#X7J_O__Z0G___^02(/L*$B)7"0(2(EL)!!,B60D&$R);"0@2(G[2(M' -M4$R+*$R)[^@`````2(G%2(7`#X35````3(GOZ`````!)B<1(A<!U&L:#Z0`` -M``%(B>Y,B>_H`````.FN````9F:0QD4XH$B-53FX`````&9FD,8$$`!(@\`! -M2(/X!77RQD4^`,9%/P#&14``QD5!B,9%0@#&14,`QD4EJP^W0SAFB44@3(EM -M*,>%E`````@```#'132(````28M$)!!(B45(2`6(````2(E%4,9%,"1,B65X -M2,>%H`````````!(C5U8O@````!(B=_H`````$F+="08NH@```!(B=_H```` -M`$B)[DR)[^@`````2(M<)`A(BVPD$$R+9"083(ML)"!(@\0HPV9F9I!F9F:0 -M9F9FD%532(/L"$B)_4B-GU`0``!(B=_H`````(3`#X4(`0``2(G?Z`````") -MPKF`____@+WH"```_W02@+WI"```_P^%XP```+F!____.(W[````<P:(C?L` -M``"`^8(/A,<````/ML&(E`5H"```#[?"2&G8R`\``$B)VD@#E9`)``"X```` -M`,8$$`!(@\`!2#W(#P``=?!(B=I(`Y60"0``2(U"&$B)0AA(B=I(`Y60"0`` -M2(U"&$B)0B!(B=I(`Y60"0``2(U"*$B)0BA(B=I(`Y60"0``2(U"*$B)0C!( -MB=I(`Y60"0``2(U"2$B)0DA(B=I(`Y60"0``2(U"2$B)0E!(BX60"0``B$P# -M6TB+O?@(``"^`````.@`````2(G82`.%D`D``.L%N`````!(@\0(6UW#9F9F -MD&9F9I!F9F:005132(/L"$F)]$B+G^`0``!(@<>H#P``Z`````")P0^WP$C! -MX`9(`=A)B00DN@````#&!`(`2(/"`4B#^D!U\@^WP4B#Q`A;05S#9F:09I!( -M@^P(2(V74`$``+@`````2#F74`$``'0(2(G7Z`````!(@\0(PY"0D)"0D)"0 -MD)!`#[;V2(TT]DC!Y@>!QF!7``")-\-F9F:09F9FD&9FD`^VT@^W1%9X@\`! -M9HE$5G@/ME8"`=`/M\##9F:09F:0N`$```"`O[M"```!=!.#P`%(@<>P```` -M@_@@=>AFN/__\\-F9F:09F:09F:09F:02(GYN`$```!`.+&X0@``=1\XD;E" -M``!U%XG`2(T4@$B-%%!(P>($QH07"T(```'#@\`!2('!L````(/X('7)\\-F -M9F:09F9FD&9F9I!F9I#&`?Y$#[97!$6$TG1.28GX0;D`````0;L`````N``` -M``!).;#860``=1Y!.--U%4B82(T$P$C!X`</MH0'Q%<``(@!PT&#PP%!@\$! -M@\`!28'`@`0``$4XT77&\\-F9I!)B?J`^@%T&$0/MD<$OP````!%A,`/A'`! -M``#I00$``$&[`````$V%P`^$'`$```^V5P1!NP````"$TG0T2(GX0;L````` -M0;D`````9F9FD$@YL-A9``!U"4$XR70308/!`4&#PP%(!8`$``!!.--UWT$/ -MMOM(8\](C0S)2,'A!TF-E`I@5P``2(L"28D`2(M""$F)0`A(BT(028E`$$B+ -M0AA)B4`82(M"($F)0"!(BT(H28E`*$B+0C!)B4`P2(M".$F)0#A(BT)`28E` -M0$B+0DA)B4!(2(M"4$F)0%!(BT)828E`6(M"8$&)0&!!@+P*8%<```!T4[X` -M````2&/'2(T$P$B-/,4`````3HT,$4`/ML9(B<)(P>($28U,$&!(C00'2,'@ -M!$F-E`+@60``2(L"2(E!!$B+0@A(B4$,@\8!03BQ8%<``'?%00^VPTB-!,!( -MP>`'00^VA`)@5P``PTR)TKD`````OP````!FD$@YLMA9```/E,`!QX/!`4B! -MPH`$``!$.,%UY4`/ML?#055!5%532(GS28G538G,08G)1(G%28GXO@````!F -M9I")\4@Y7R`/A84```!(8\9(:<!0$```38U4`"!!NP````!$B=I!#[9"+(3` -M=`0\\'5/2&/22&/)2(G02,'@!4AIR5`0``!(`<A,`<!(B5@P3(EH.$C!X@5( -MC50*($J-!`)(C4@@9HEI`D2(2"!)BP0D28E$$"3&00S_ZQ9F9I!FD$&#PP%) -M@\(@08'[@@```'60@\8!2(''4!```(/^!`^%7/___UM=05Q!7<-F9I!FD$%5 -M05154TB#[`A)B?5(B?V`?P0`=$9!O`````!F9F:000^VW$ACPTB-!,!(P>`' -M@+P%Q%<``/UT&4B-O`6\5P``N@@```!,B>[H`````(3`=0]!@\0!1#AE!'?$ -MN_\```")V$B#Q`A;74%<05W#9I!32(G[Z`````"Z"0```#S_=!,/ML!(C03` -M2,'@!P^VE`-F5P``B=!;PV9F9I!F9I!(@^P(28GR28G11(G"2(G^3(V'8$$` -M`+@`````9F9FD$+&!```2(/``4@]D````'7OQH9A00``$\:&8$$``$`/ML:( -MAF9!``"(EF=!``"(CFE!``!(QX8`0@```````$B)OOA!``!)BT%<2(F&\$$` -M`$B!QF!!``!,B=?H`````$B#Q`C#9F9FD&9F9I!F9I!!54%455-(@^P(28GU -M28G43(G-08G)1(G#2(GX28GZN@$```!!B=-!B="`N+M"```!#X7N````2&/2 -M2(T$DDB-!$)(P>`$3`'02(V0`$(``,9""P!,B9#X00``#[9*"DACP4B-%(!( -MC1102,'B!$F-E!)@00``N`````!F9I!FD,8$$`!(@\`!2#V0````=?!(8\%( -MC32`2(TT<$C!Y@1*C1062(V*8$$``,9!`9#&@F!!``!`#[;'B$$&B)IG00`` -M1(A)"4B+10!)B80R<$$``$ECP$B-%(!(C1102,'B!$J-!!)(QX``0@`````` -M`$B)N/A!``!)BT0D7$F)A!+P00``00^VPTB-%(!(C1102,'B!$F-M!)@00`` -M3(GOZ`````#K%X/"`4@%L````(/Z(`^%[?[__[@!````2(/$"%M=05Q!7<-F -M9I!F9I!F9I!(@^P(28GS08G22(GZ28GXN`$```")QH"ZNT(```$/A>$```!( -MF$B-%(!(C1102,'B!$F-A!``0@``1(A0"(A("<9`"P!$#[9("DECP4B-%(!( -MC1102,'B!$F-E!!@00``N`````#&!!``2(/``4@]D````'7P26/12(T$DDB- -M!$)(P>`$3`'`2(V08$$``,9"`1#&@&!!``!`B$H)2&/&2(T,@$B-#$A(P>$$ -M00^VA`@*0@``2(T4@$B-%%!(P>($2HT$`DC'@`!"````````2(FX^$$``$$/ -MML)(C03`2,'@!TF+A`"\5P``28F$"/!!``!)C;008$$``$R)W^@`````ZQ6# -MP`%(@<*P````@_@@#X7]_O__L`%(@\0(PY!(@^P(28GQB=!(B?[&APM"```` -M3(V'8$$``+D`````D$+&!`$`2(/!`4B!^9````!U[L:&84$```'&AF!!``!` -M2,>&`$(```````!(B;[X00``#[;`2(T$P$C!X`=(BX0&O%<``$B)AO!!``!( -M@<9@00``3(G/Z`````!(@\0(PTB#[`A)B?&)T$B)_L:'"T(```!,C8=@00`` -MN0````"00L8$`0!(@\$!2('YD````'7NQH9A00```,:&8$$``$!(QX8`0@`` -M`````$B)OOA!```/ML!(C03`2,'@!TB+A`:\5P``2(F&\$$``$B!QF!!``!, -MB<_H`````$B#Q`C#05=!5D%505154TB#[#A(B7PD&$B)="0008G51(A$)`]) -MB?Q%#[;U26/&2(T$P$C!X`>`O`?$5P``_0^$Q@@``(#Y$`^$A0(``(#Y$'<7 -MA,D/A)T```"`^0$/A:<(``"0Z08!``"`^>)T&X#Y_V9FD'0I@/F0#X6+"``` -M9F:09I#IR`8``+D`````@'\$`&:0#X7<!P``Z00(``!)8\9(C03`2,'@!\:$ -M!\17``#_@+\+0@```74E1(GR2(MT)!!(BWPD&.@`````A<`/A34(``!!@$0D -M!@'I*@@``$ECQL9$!P<!2(M4)!!(B53'$.D3"```@+\+0@```7582(V/8$$` -M`$ECQDB-!,!(P>`'2`'X#[91"8B08E<``$@%P%<```^V40J#X@&(4`7&0`0` -M1(GR2(MT)!!(BWPD&.@`````A<`/A;T'``!!@$0D!@'IL@<``$ECQL9$!P<! -M2(M,)!!(B4S'$.F;!P``26/&2(T$P$C!X`=(C30X#[:7DD$``(B6LE<```^W -MEY!!``!FB90'L%<``$B+EXA!``!(B90'H%<``$B+EVQ!``!(B90'<%<``$B- -MC`>`5P``2(N7=$$``$B)$4B+EWQ!``!(B5$(BY>$00``B90'F%<``,:&Q%<` -M``&`?P8?#X07!P``NP````!(C:Y@5P``3(VNL%<``.M)#[;+1(GR2(MT)!!( -MBWPD&.@`````A<!T%4ECQDB-!,!(P>`'08B<!+-7``#K((/#`4&`1"0&`3A= -M`@]%PT&(10-!@'PD!A]T!3I=`G*R0<:$)`M"```!00^V="0$0(3V#X2<!@`` -MN@````!!@'PD!P%T%^M#9F9FD&9FD`^VT4ACPD&`?`0'`74S2&/"0<9$!`?_ -M28MTQ!!!N0````!!N`````"Y_P```$B+?"08Z`````#I2@8``+D`````@\$! -M0#CQ=;?I.`8``$V)STF-01A(B40D($B-="0P28M!&$B)1"0P26/&2(T$P$C! -MX`=(C2PX2(V%P%<``,9`!!!!]D$,<`^$0@,``$B+E<A7``!(A=)T<0^V6`9( -MC7I<N@@```#H`````(3`=5M!]D</#W142(N%R%<``$B%P'1(2(G%@'UE`'0_ -M#[;;B=I(B>Y,B>?H`````$R+3"0@1`^WP(G92(GJ2(MT)!!(BWPD&.@````` -M#[9=9DB+16A(A<!T!4B)Q>N[00^V3P_VP0T/A.L```!)8\9(C13`2(G02,'@ -M!T$/MK0$8%<``$"`_A\/A\H```#VP0AT%T`/ML9(C0302,'@!$'&A`3@60`` -M!NL<0`^VUDECQDB-!,!(C03"2,'@!$'&A`3@60``!T`/ML9)8_9(C33V2(T4 -M\$C!X@1)C;P4X%D``,9'`0!!#[9'#XA'`TB+1"0P28F$%.A9``!!#[9'"8A' -M`D$/ME<-@^(/2,'F!TP!YDB-CF!7```/MD$&.,(/1]"#X@\/MD<$@^#P"="( -M1P1!#[97*8/B#P^V208XR@]'T<'B!(/@#PG0B$<$@(9@5P```>G,`0``]L$" -M#X3#`0``2(UT)#!,B>?H`````(G!//\/A6(!``!!#[9,)`2$R70]00^VA"3$ -M5P``//]T,+H`````//UU'NLE#[;"2(T$P$C!X`=!#[:$!,17```\_W02//UT -M#H/"`3C*==WK!;H`````#[;"2(T$P$C!X`=)C8P$8%<``+@`````Q@0(`$B# -MP`%(@_AD=?)$#[;226/22(T4TDC!X@=*C3PB00^VQ4B-!,!(P>`'28V$!&!7 -M``!(B8?(5P``38V$%+!7``!)8]9(C1322,'B!TF+A!2\5P``28E`!$B+3"00 -M2(F/V%D``$P!XDB+@M!7``!(B8?05P``3(V/P%<``$'&003_2(VW8%<```^V -M3@=!#[9'"8B$#VA7``"`1@<!00^V1PV#X`\/MI)F5P``.-`/1\*(1@9(BT0D -M,$F)0`Q!#[9'#XA&`P^V1"0/08A!!D$/MD0D!4$Z1"0$=09!QD0D!0!!@$0D -M!0%)8\)!QD0$!P%(BU0D$$F)5,00ZTI)8\9(C03`2,'@!P^VT4B-%-)(P>(' -M28V4%&!7``!).90$R%<``'0B#[;!2(T$P$C!X`=,`>`/MG('00^V3PF(C#!H -M5P``@$('`4$/ME<)1(GV3(GGZ`````!)8\9(C03`2,'@!T&`O`2S5P````^$ -MH````$&`?"0&'W5CZ8`"``!!QD<$$`^V2P-$B?)(BW0D$$B+?"08Z`````"% -MP`^%70(``$&`1"0&`0^V2P,/ML&#P`$/ME4".=!U#\9#`P#I/`(``&9FD&9F -MD(U!`8A#`T&`?"0&'P^$)`(``.LC26/&2(T$P$C!X`=,`>!(C9BP5P``2(VH -M8%<``$R-N,!7```/MD,#.D4"#X)R____Z>T!``!!@'PD!@`/A>$!``!!N0`` -M``!!N`````"YD````$2)\DB+="002(M\)!CH`````.FY`0``28G]0;\````` -M2(M,)!!).4T@#X6#````1(GX2&G`4!```$F-7`0@O0````!$B?A(:<!0$``` -M2(D$)(![+/]U2D&`?"0&'P^$;0$``(GH2,'@!4B+%"1(C4000`^V2R!(BU,8 -M38U,!`1$#[=#(DB+="002(M\)!CH`````(7`=0I!@$0D!@'&0RSP2(/%`4B# -MPR!(@?V"````=9])@\<!28'%4!```$F#_P0/A5G___]!@'PD!@`/A?T```!! -M#[9T)`1`A/8/A,L```"Z`````$&`?"0'`700ZSP/MM%(8\)!@'P$!P%U,TAC -MPD'&1`0'_TF+=,000;D`````0;@`````N?\```!(BWPD&.@`````Z:,```"Y -M`````(/!`4`X\76WZW$/ML%(C03`2,'@!TF-E`3`5P``#[9"!#S]=`@\_W0$ -MQD($_H/!`4$X3"0$=]-)8\9(C03`2,'@!TF+K`305P``NP````!"@'PC*`%U -M$D+&1",H`$J+=",@2(M\)!C_U4B!PU`0``!(@?M`00``="7KU$&Y`````$&X -M`````+GB````1(GR2(MT)!!(BWPD&.@`````2(/$.%M=05Q!74%>05_#9F9F -MD&9F9I!F9I!(@^P82(D<)$B);"0(3(ED)!!)B?Q(B?5(BYZ8````@'L&``^$ -M1P$``$B-MI````!(B=_H`````(G!//\/A"X!``!(B>X/MD4!/`%T6CP!<AH\ -M$`^$B@```#R09F:09I`/A0H!``#IQ@```("["T(````/A?@```#&@PM"```! -M@&L&`0^VT4&Y`````$&X`````+D`````3(GF2(G?Z`````#IR0```("["T(` -M```/A;P```#&@PM"```!@&L&`0^VT4&Y`````$&X`````+D!````3(GF2(G? -MZ`````#IC0```+H`````.HP:N$(``'4/#[:$&KE"```Z1@ET$F:02('"L``` -M`$B!^E`5``!UV(!K!@$/MM%)B?%$#[9&";D0````3(GF2(G?Z`````#K/P^V -MA:H```!(C12`2(T44$C!X@3&A!,+0@```8!K!@$/MM%!N0````!!N`````"Y -MD````$R)YDB)W^@`````D$B+'"1(BVPD"$R+9"002(/$&,-F9F:09F:09F:0 -M9F:008G0B?*%]G042(GY2(G0D,8!`$B#P0%(@^@!=?.)-TB!ZF!7``!(N(_C -M.([C.([C2/?B2,'J"D$XT$$/0M"(5P2$TG0KN@````!F9I!F9I`/ML+&1`<' -M_TB-!,!(P>`'QH0'Q%<``/V#P@$X5P1WX,9'!@#&1P4`2(GXN@````#&@`M" -M```!B)`*0@``@\(!2`6P````@_H@=>7SPV9FD$B)^8!_!``/A)D```"_```` -M`$0/ML=)8\!(C03`2,'@!T@YM`'860``=6ZX`````$`XO`BX0@``=0C&A`B[ -M0@```4@%L````$@]4!4``'7@26/`2(T$P$C!X`=(QX0!V%D```````!(C90! -M8%<``+@`````Q@00`$B#P`%(@_AD=?))8\!(C03`2,'@!\:$`<17``#]@&D% -M`8/'`4`X>00/AVS___](B<]!N`````!(.7<@=3!(QT<@`````,9'*`!)8\!( -M:<!0$```2(U$`2"Z`````,9`+`"#P@%(@\`@@/J"=?!!@\`!2(''4!```$&# -M^`1UN?/#9F9FD&9F9I!!54%455-(@^P(2(G]2(GW28G438G%08G(2(GK#[9% -M!3I%!'4$QD4%`$0/MEL%2(G>28G9N`````!!B<*)PDF+22!(.?EU2TB82&G` -M4!```,9$`R@!#[9+!$&[`````(3)=&1!NP````!(.;[860``=0X/MH;$5P`` -M@\`#/`%V1T&#PP%(@<:`!```03C+=#?KUTB%R7492&/"2&G`4!```$@!V$B) -M>"#&0"@!ZQEFD$&#P@&#P`%)@<%0$```@_@$#X5R____00^VPDAIP%`0``!( -MC40#,+D`````9F9FD,8$`0!(@\$!2('Y`A```'7O10^VTTECPDB)?,,000^V -MPTB-!,!(P>`'2(V$`V!7``!FN0``Q@0!`$B#P0%(@_ED=?))8\)(C03`2,'@ -M!TB-C`/85P``N`````!F9I!FD,8$"`!(@\`!2#T``@``=?!)8\)(C03`2,'@ -M!TB-#!A(B;G860``3(FIT%<``,:!Q%<``/](QX'(5P```````$F+%"1(B90# -MO%<``$2(@697``!!N0````!!N`````"Y_P```$2)TDB)_DB)[^@`````@$,% -M`4B#Q`A;74%<05W#2(L'3(L`#[9P0T"$]G1'#[97#;D`````]L(!=`WK-Y!( -MB=!(T_BH`74(@\$!0#CQ=>Z`^0-V)$B-!(T`````)?P#``!)C80`T`$``(L` -MB04`````ZR*Y`````$B-!(T`````)?P#``!)C80`T`$``(L`B04`````P>@4 -M@^`!PY!(BP=$#[9`0T&Y"@```$6$P'1*#[9_#4B)PKX`````0;D*````N0`` -M``!F9I!F9I!(B?A(T_BH`704#[:"[A(``(/@`X/`"$$XP40/1\B#Q@&#P0%( -M@\)H1#C&==-!#[;!PV9F9I!F9F:09F:09F:02(L'1`^V0$-!N0@```!%A,!T -M2@^V?PU(B<*^`````$&Y"````+D`````9F:09F:02(GX2-/XJ`%T%`^V@NX2 -M``"#X`.#P`A!.,%$#T+(@\8!@\$!2(/":$0XQG7300^VP<-F9F:09F9FD&9F -MD&9FD`^V!\#H!(/@!P^V=P*)PH#.`D#VQ@0/1<(/MD\#B<*!R@```@#VP00/ -M1<*)PH#."$#VQ@@/1<*)PH'*```(`/;!"`]%PHG"@,X$0/;&`@]%PHG"@<H` -M``0`]L$"#T7"#[97%,'B&`G0PV9F9I!F9I#H`````//#9F:09F:09F:0BX<8 -M"0``)?___P"Z`````#U0`9,`=1D/MH<;"0``P.@$/`P/E,`/MM!F9F:09F:0 -MB=##9F9FD&9FD&9FD&9FD(7V?D(/M@>$P'0$/"!U,4B)^KD`````ZQ=F9F:0 -M9F:0#[9"`4B#P@&$P'0$/"!U$(/!`3GQ=>GK#69F9I!F9I"X`````,.X`0`` -M`&9FD&:0PV9F9I!F9F:09F9FD&9FD`^V1P,/ME<"P>(("=#!X!`/MD\!#[87 -MP>(("=$)R,.008G0A=)T);D`````9F9FD`^V%P^V1P&(!HA6`4B#Q@)(@\<" -M@\$!1#G!=>3SPV:02(/L"$F)\`^W1B"Z_P```&8]A0!W"P^WP`^VE`=H"``` -M#[?22(T4TDC!X@5(`Y=H"0``2(NW$!$```^V0E#!X`A(F$B-A`9,"```BPB) -M#0````"!X?\````/MD)0P>`(2)A(C;0&1`@``(L&B04`````P>`("<B)@A`! -M``!FQX(,`0````!,B<;H`````$B#Q`C#9F9FD&9FD&9FD&9FD$B#["A(B5PD -M"$B);"003(ED)!A,B6PD($F)_4&)]$B++T"`_@-V.4J-'.4`````@>/X!P`` -M2(V$'3`"``#'``P```"_$"<``.@`````2(V$'30"``"+.(D]`````.LWD$J- -M'.4`````@>/X!P``2(V$*U`"``#'``P```"_$"<``.@`````2(V<*U0"``"+ -M.XD]`````$$/MO1(8\9(C11`2(T4D$F-E-7@$@``#[9*"(/A_(A*"(GX)0`` -M/P`]```0`'4+B<B#R`*(0@CK&9!(8\9(C11`2(T4D(G(@\@!08B$U>@2``!( -MBUPD"$B+;"003(MD)!A,BVPD($B#Q"C#9F9FD&9F9I!F9F:09F:005=!5D%5 -M05154TB#[!A)B?Y,BS])BP?&1DD`QD9(!<9&2P9(B7Y0N0````"]`````$B- -MD``"``!(B50D$$@%!`(``$B)1"0(ZQ9F9I!F9I!!#[9C3^*@!=0J#P0&0 -M03I/0W+J@/D#=GI(C1S-`````('C^`<``$R+;"0020'=0<=%`"P```"_$"<` -M`.@`````2`-<)`A$BR-$B24`````0<=%`"0```"_$"<``.@`````BP.)!0`` -M``#!X`A!@>3_````00G$0<=%`"````"_$"<``.@`````BQN)'0````#K>$B- -M',T`````@>/X!P``3(ML)!!)`=U!QT4`+````+\0)P``Z`````!(`UPD"$2+ -M(T2))0````!!QT4`)````+\0)P``Z`````"+`XD%`````,'@"$&!Y/\```!! -M"<1!QT4`(````+\0)P``Z`````"+&XD=`````$&!_`$!:99U&D&`3@P&B=C! -MZ!`\4`^4P`^VP.M(9F:09F:008'\`0$``'4/B=C!Z!`\4`^4P`^VP.LJOX@3 -M``#H`````(/%`4"`_01W"KD`````Z:O^__^)V,'H$#Q0#Y3`#[;`2(/$&%M= -M05Q!74%>05_#9F9FD&9F9I!F9F:09F:0055!5%532(/L"$B)_4&)]$B+AX@` -M``!,BRAF@[\,`0```'0PB?._Z`,``.@`````187D=`6#^P%V&DR)[V9FD.@` -M````9H.]#`$```!T!8/K`NO22(/$"%M=05Q!7<.02(/L.$B)7"0(2(EL)!!, -MB60D&$R);"0@3(ET)"A,B7PD,$F)_(G+08GV08G518G'2(N'B````$B+*$B) -M[^@`````2(G&QD`XX<9`.0'&0#H2N`\```!%A/9U!D$/MD0D1XA&.T2(;CQ, -MB>H/ML:(1CT/ML>(1CZ)V,'H$(A&/XG8P>@8B$9`B%Y!00^W1"1`9HE&($B) -M;BC'1C0`````2,=&2`````!%A/](Q\``````2,?"`````$@/1<)(B8:@```` -M2(GOZ`````!(BUPD"$B+;"003(MD)!A,BVPD($R+="0H3(M\)#!(@\0XPV:0 -M2(/L*$B)'"1(B6PD"$R)9"003(EL)!A,B70D($F)_(G+08GV08G52(N'B``` -M`$B+*$B)[^@`````2(G&QD`XX<9`.0'&0#H2N`\```!%A/9U!D$/MD0D1XA& -M.T2(;CQ,B>H/ML:(1CT/ML>(1CZ)V,'H$(A&/XG8P>@8B$9`B%Y!00^W1"1` -M9HE&($B);BC'1C0`````2,=&2`````!(QX:@`````````$B)[^@`````2(L< -M)$B+;"0(3(MD)!!,BVPD&$R+="0@2(/$*,-FD%-(B?M!B<I!B=%(A?\/A`$! -M``!,BP=-A<`/A/4```!!#[9X0X7_?E=(BX.(````#[90#;D`````]L(!=`WK -M0)!(B=!(T_BH`74'@\$!.?EU[X/Y`WXN28L`2`70`0``C12-`````$ACTD@! -MT(L`B04`````P>@4@_`!@^`!ZRRY`````$F+`$@%T`$``(T4C0````!(8])( -M`="+`(D%`````,'H%(/P`8/@`83`=66`NQP!````=0:`>T(`=58/MT-`08"\ -M`&@(``#_=$?&0T(E9L>##`$```$`00^WT4`/MO9!N`$```!$B=%(B=_H```` -M`+X%````2(G?Z`````#&0T(`9H.[#`$````/E,`/ML#K!;@`````6\-F9I!F -MD$B#["A(B5PD"$B);"003(ED)!A,B6PD($B)_4&)]4&)U$B+AX@```!(BQA( -MB=_H`````$B)QL9`..'&0#D!QD`Z$;@/````183M=00/MD5'B$8[1(AF/$R) -MX@^VQHA&/0^W14!FB48@2(E>*,=&-`````!(QT9(`````$C'AJ`````````` -M2(G?Z`````!(BUPD"$B+;"003(MD)!A,BVPD($B#Q"C#9F:09F:09F:055-( -M@^P(2(G[2(G-08G12(7_#X0&`0``3(L'387`#X3Z````00^V>$.%_WY62(N# -MB`````^V4`VY`````/;"`70,ZS](B=!(T_BH`74'@\$!.<]U[X/Y`WXN28L` -M2`70`0``C12-`````$ACTD@!T(L`B04`````P>@4@_`!@^`!ZRRY`````$F+ -M`$@%T`$``(T4C0````!(8])(`="+`(D%`````,'H%(/P`8/@`83`=6N`NQP! -M````=0:`>T(`=5P/MT-`08"\`&@(``#_=$W&0T(E9L>##`$```$`00^WT4`/ -MMO:Y`0```$B)W^@`````O@4```!(B=_H`````,9#0@!F@[L,`0```'40BX,0 -M`0``B44`N`$```#K!;@`````2(/$"%M=PV9FD&9FD$B#["A(B1PD2(EL)`A, -MB60D$$R);"083(ET)"!(B?U!B?5!B=1!B<Y(BX>(````2(L82(G?Z`````!( -MB<;&0#CAQD`Y`<9`.A&X#P```$6$[74$#[9%1XA&.T2(9CQ,B>(/ML:(1CT/ -MMT5`9HE&($B)7BC'1C0`````2,=&2`````!%A/9(Q\``````2,?"`````$@/ -M1<)(B8:@````2(G?Z`````!(BQPD2(ML)`A,BV0D$$R+;"083(MT)"!(@\0H -MPV9F9I!F9I!F9I!F9I!(@^PH2(E<)`A(B6PD$$R)9"083(EL)"!(B?5!B=1! -MB<U(BQ](B=_H`````$B)PDB%P'40QH7I`````<9%2@/IE````,9`..'&0#D! -M08#\`1G`]]"#P`*(0CI%A.UU4;@`````2(-]8`!T!P^VA8$```"(0CL/MT4X -M9HE"($B)6BC'0C0`````2,="2`````!(Q\``````2(F"H````$B)UDB)W^@` -M````ZRUF9I!FD,9".P\/MT4X9HE"($B)6BC'0C0`````2,="2`````!(Q\`` -M````Z[](BUPD"$B+;"003(MD)!A,BVPD($B#Q"C#9F9FD&9F9I!F9F:09F:0 -M05=!5D%505154TB#[#B)]4F)U$B+#XT4[0````"-0N")P$B-G`@@`@``2(D< -M)$B-A`@D`@``2(E$)`B)TDR-O`H``@``3(VL"@0"``"[`````$R-="00@_T# -M=B6-@QP!``!(BQ0DB0*_$"<``.@`````2(M4)`B+`HD%`````.L=C8,<`0`` -M08D'OQ`G``#H`````$&+10")!0````!"B00S2(/#!$B#^QQUJTB+1"0028D$ -M)$B+1"0828E$)`A(BT0D($F)1"00BT0D*$&)1"082(/$.%M=05Q!74%>05_# -M9F9FD&9F9I!F9F:09F:005=!5D%505154TB#[#B)]4F)U$B+#XT4[0````"- -M0N")P$B-G`@@`@``2(D<)$B-A`@D`@``2(E$)`B)TDR-O`H``@``3(VL"@0" -M``"[`````$R-="00@_T#=B6-@P`!``!(BQ0DB0*_$"<``.@`````2(M4)`B+ -M`HD%`````.L=C8,``0``08D'OQ`G``#H`````$&+10")!0````!"B00S2(/# -M!$B#^QQUJTB+1"0028D$)$B+1"0828E$)`A(BT0D($F)1"00BT0D*$&)1"08 -M2(/$.%M=05Q!74%>05_#9F9FD&9F9I!F9F:09F:005=!5D%505154TB#[#A) -MB?Y`B'0D"TR+/T0/MNY)8\5(C11`2(T4D$B-%-=(B;K`$@``QH+I$@```$2) -M[N@`````2(UL)!!(B>A(B>IF9I#&``!(@\`!2(G33(UD)#!,.>!U[`^V1"0+ -MB40D#(G&3(GWZ`````!(B=_H`````$ECU4B-#%)(C0R*2,'A`TJ-%#&)@M`2 -M``!(BT,,28F$#M02``"`?"0+`W8\0HT$K0````!(F$F-A`?0`0``BP")!0`` -M``")@NP2``!"C03M`````$B828V$!X`!``"+"(D-`````.M'0HT$K0````!( -MF$F-A`?0`0``BPB)#0````!)8\5(C11`2(T4D$&)C-;L$@``0HT$[0````!( -MF$F-A`>``0``BPB)#0````!)8\5(C11`2(T4D$F-%-:)BO`2``!(C8+@$@`` -M]D`.$`^$/`$``/9`"`)T5&9FD&9FD,9%``!(@\4!3#GE=?-(C5PD$$B)VHMT -M)`Q,B??H`````$B)W^@`````26/52(T,4DB-#(I(P>$#08F$#MP2``!(BT,, -M28F$#N`2``#K%TECQ4B-%$!(C1200<>$UMP2```!``(`@'PD"P-V-4*-'.T` -M````2&/;2HV$.S`"``#'`!@```"_$"<``.@`````2HV<.S0"``"+,XDU```` -M`.LS0HT<[0````!(8]M*C80[4`(``,<`&````+\0)P``Z`````!*C9P[5`(` -M`(LSB34`````26/%2(T40$B-%)")\8'A____WXGP#0```"!!]X36[!(````` -M`P")R@]%T(!\)`L#=A9"C03M`````$B828V$!S0"``")$.L40HT$[0````!( -MF$F-A`=4`@``B1!(@\0X6UU!7$%=05Y!7\.0055!5%532(/L"$B)_4F)]0^W -M!F:%P'D+)0`?``#!^`B(1TE(C;V$````28U5%$F+111(B86$````2(M""$B) -M1PB+0A")1Q!,C:7`````28M%+DB)A<````!(C9V8````28U5-DF+139(B868 -M````2(M""$B)0PA(BT(02(E#$$B+0AA(B4,82(M"($B)0R"Z"@```$B)_N@T -M\/__N@0```!,B>9,B>?H)/#__[H4````2(G>2(G?Z!3P__]FQT5H``!FQT5J -M``!F08.]L@$```$/E,+!X@,/MD5,@^#W"="(14Q!]H6G````!'0&9L=%:`$` -M0?:%I`````%T)&:#36@"0?:%J@````%T!6:#36H!0?:%J`````%T!F:!36@` -M`4'VA:0````@=!5F@TUH!$'VA:H````@=`9F@TUJ`I!!]H6D````0'069H%- -M:(``0?:%J@```$!T!F:#36H(D,:%@@````)!]H69`````70R#[=%:*@!=`R# -MR`AFB45H9H--:A!!#[:%E@```(/@'X/``3P@NA\````/1,*(A8(```!!]H68 -M````"'0&9H%-:``"0?:%F`````1T!6:#36@@0?:%F`````)T!6:#36@00?:% -MJ````"!T%4'VA:X````@=`MF@TUH0&9FD&9FD/9%:`%T#4F+A<@```!(B45X -MZPA!BT5X2(E%>$B#;7@!0?9%:@)T&D$/MX6`````J`]T#F:#^`(9P(/`!(A% -M;.L$QD5L`L9%;?]!#[=5?@^WPJ@$=`O&16T"ZQMF9I!FD*@"=`;&16T!ZPSV -MP@%F9I!T!,9%;0#&16[_0?9%:@1T'[D`````00^WA;````!(T_BH`70#B$UN -M@\$!@_D'=>:^``(``$R)[^@`````B87,````N`$```!(@\0(6UU!7$%=PV9F -M9I!F9I!F9I!F9I!!5T%6055!5%532(/L.$B)?"000(AT)`](BP=(B40D,$`/ -MMM:)5"0<#[9W0DC'QP````"X`````.@`````2(M,)!"`>4*@#X1(!@``BT0D -M','@`TB82(M4)#!(C90",`(``$B)5"0@2(M,)#!,C:P!-`(``$B-E`%0`@`` -M2(E4)"A(C:P!5`(``$&_`````$&^`````$&\`````&9FD&:008#\`70J08#\ -M`7(608#\`G4N0;\@`0``0;XD`0``9I#K'D&_&`$``$&^'`$``.L00;\<`0`` -M0;X@`0``9F9FD$2)XHMT)!Q(Q\<`````N`````#H`````(!\)`\##X;=```` -M2(M,)"!$B3F_$"<``.@`````08M=`(D=`````(G:1(G^2,?'`````+@````` -MZ`````"!X___0?"!RP``-`N)VD2)_DC'QP````"X`````.@`````08E=`$&+ -M50")%0````!$B?Y(Q\<`````N`````#H`````$B+1"0@1(DPOQ`G``#H```` -M`$&+70")'0````")VD2)]DC'QP````"X`````.@`````@.<_@,_`B=I$B?9( -MQ\<`````N`````#H`````$&)70!!BU4`B14`````Z=(```!F9I!F9I!(BU0D -M*$2).K\0)P``Z`````"+70")'0````")VD2)_DC'QP````"X`````.@````` -M@>/__T'P@<L``#0+B=I$B?Y(Q\<`````N`````#H`````(E=`(M5`(D5```` -M`$2)_DC'QP````"X`````.@`````2(M,)"A$B3&_$"<``.@`````BUT`B1T` -M````B=I$B?9(Q\<`````N`````#H`````(#G/X#/P(G:1(GV2,?'`````+@` -M````Z`````")70"+50")%0````!$B?9(Q\<`````N`````#H`````$&#Q`%! -M@_P##X72_?__2(M$)!"`>$*@#X2W`P``BW0D'$C'QP````"X`````.@````` -M@'PD#P-V(4B+5"0@QP(,`0``OQ`G``#H`````$&+70")'0````#K'DB+3"0H -MQP$,`0``OQ`G``#H`````(M=`(D=`````(G:O@P!``!(Q\<`````N`````#H -M`````(G8L`")PH#*]PS\2(M,)!"`>4(!B=,/1=B)VKX,`0``2,?'`````+@` -M````Z`````"`?"0/`P^&@0$``$&)70!!BU4`B14`````O@P!``!(Q\<````` -MN`````#H`````$B+1"0@QP"@`0``OQ`G``#H`````$&+70")'0````")VKZ@ -M`0``2,?'`````+@`````Z`````"!X_[_^_^)VKZ@`0``2,?'`````+@````` -MZ`````!!B5T`08M5`(D5`````+Z@`0``2,?'`````+@`````Z`````!(BU0D -M(,<"$`$``+\0)P``Z`````!!BUT`B1T`````B=J^$`$``$C'QP````"X```` -M`.@`````@>,`\/__@<O`#P``B=J^$`$``$C'QP````"X`````.@`````08E= -M`$&+50")%0````"^$`$``$C'QP````"X`````.@`````2(M,)"#'`:`!``"_ -M$"<``.@`````08M=`(D=`````(G:OJ`!``!(Q\<`````N`````#H`````(/C -M]XG:OJ`!``!(Q\<`````N`````#H`````$&)70!!BU4`B14`````Z7$!``") -M70"+50")%0````"^#`$``$C'QP````"X`````.@`````2(M$)"C'`*`!``"_ -M$"<``.@`````BUT`B1T`````B=J^H`$``$C'QP````"X`````.@`````@>/^ -M__O_B=J^H`$``$C'QP````"X`````.@`````B5T`BU4`B14`````OJ`!``!( -MQ\<`````N`````#H`````$B+5"0HQP(0`0``OQ`G``#H`````(M=`(D=```` -M`(G:OA`!``!(Q\<`````N`````#H`````('C`/#__X'+P`\``(G:OA`!``!( -MQ\<`````N`````#H`````(E=`(M5`(D5`````+X0`0``2,?'`````+@````` -MZ`````!(BTPD*,<!H`$``+\0)P``Z`````"+70")'0````")VKZ@`0``2,?' -M`````+@`````Z`````"#X_>)VKZ@`0``2,?'`````+@`````Z`````")70"+ -M50")%0````"^H`$``$C'QP````"X`````.@`````@'PD#P,/AH@```"+7"0< -MP>,#2&/;2(M4)#!(C803,`(``,<`"````+\0)P``Z`````!(BTPD,$B-G`LT -M`@``1(LC1(DE`````$2)XKX(````2,?'`````+@`````Z`````!!@^2/08/, -M<$2)XKX(````2,?'`````+@`````Z`````!$B2.+$XD5`````.F#````BUPD -M','C`TACVTB+5"0P2(V$$U`"``#'``@```"_$"<``.@`````2(M,)#!(C9P+ -M5`(``$2+(T2))0````!$B>*^"````$C'QP````"X`````.@`````08/DCT&# -MS'!$B>*^"````$C'QP````"X`````.@`````1(DCBQ.)%0````"^"````$C' -MQP````"X`````.@`````2(/$.%M=05Q!74%>05_#D$B#["A(B1PD2(EL)`A, -MB60D$$R);"083(ET)"!)B?U)B?9,BR>[@/___^L)9F9FD(#[A7=##[;#00^V -MK`1H"```0(#]_W0Q0`^VQ4AIP,@/``!(B<=)`[PDD`D``$PY;PAU%;H(```` -M3(GVZ`````"$P'0$B>CK#X/#`8#[@6:0=JZX_____P^VP$B+'"1(BVPD"$R+ -M9"003(ML)!A,BW0D($B#Q"C#9F:09F:09F:005=!5D%505154TB#[$A)B?Q( -MBP>`?T,`#X0:`P``QT0D1`````!(C9```@``2(E4)!!(!00"``!(B40D"&9F -MD`^V3"1$B$PD0P^VP8E$)#1(F$B-%$!(C12028TTU$B-EN`2``#V0@X0#X2Q -M`@``N`$````/MDPD-$C3X`A""4B+ML@2``!(B70D./9""`(/A!L!```/MD0D -M0XUH`4$X;"1##X8(`0``2&-$)#1(C11`2(T4D$C!X@-(B50D*$P!XDB)5"0@ -M2(M4)"A)C904U!(``$B)5"081`^V[4ECQ4B-%$!(C1202(T<U0````!.C3PC -M38VWX!(``$'V1@X0#X2=````2(M,)"#W@=P2``````X`#X2(````3(GV2(M$ -M)"A)C;P$X!(``+H(````Z`````"$P'1J28VT'-02``"Z"````$B+?"08Z``` -M``"$P'1/N`$```!$B>E(T^!(BU0D($B!PN`2```*0@F(0@E!B$8)2(-\)#@` -M=0Y-B[_($@``3(E\)#CK&$ECQ4B-%$!(C1202(M$)#A)B834R!(``(/%`4$X -M;"1##X<H____2(-\)#@`#X7*````3(GGZ`````!(B40D.$B%P`^$9@$``$AC -M1"0T2(T,0$B-#(A)C0S,2(M4)#A(B9'($@``#[9$)$-(C11`2(T4D$F-E-3` -M$@``2(M$)#A(B5`@#[:!Z!(``$B+5"0XB$(*QD()`$R)(L9"#@#&0E@`QD(H -M``^V3"1#C7$!03AT)$-V8DAC1"0T2(T40$B-%)!)C;S4X!(``$`/MLX/MD<) -M2-/XJ`%T&$ACP4B-%$!(C1202(M$)#A)B834R!(``(/&`4$X="1#=ASKS4AC -M1"0T2(T40$B-%)!(BTPD.$F)C-3($@``2&-$)#1(C11`2(T4D$F-E-3@$@`` -M#[9""4B+3"0XB$$-#[9J"8!\)$,#=BN+7"0TP>,#2&/;2(M$)!!(`=C'`#@` -M``"_$"<``.@`````2`-<)`B)*^LIBUPD-,'C`TACVTB+1"002`'8QP`X```` -MOQ`G``#H`````$@#7"0(B2N#1"1$`0^V1"1#@\`!03A$)$,/APC]__](@\1( -M6UU!7$%=05Y!7\-F9I!F9I!F9I!!5T%6055!5%532(/L:$B)_4R+)\9$)%!0 -MQD0D407&1"12!,9$)%,PQD0D5!'&1"15J\9$)%8`QD0D5P!!QX0D`$`!`!,@ -M``!(BP?'@`1``0#__P``2(L'QX`$0`$``````$@[O_@(```/A=0```!(C9^` -M%```2(V7&`D``$&X`0```+D(````O@```@#H`````(N%$`D```^VE1L)``"# -MZ@2-!(*(A1L)``!(B>_H`````(3`=0Q(BT0D4$B)A1@)``"+!0``````A1L) -M``"#P`&)!0`````/MH48"0``B(,8"0``#[:%&0D``(B#&0D```^VA1H)``"( -M@QH)```/MH4;"0``@\`"B(,;"0``#[:%'`D``(B#'`D```^VA1T)``"(@QT) -M```/MH4>"0``B(,>"0``#[:%'PD``(B#'PD``$V)YTF-A"0``0``2(E$)$!! -MBX0D``$``(D%``````^WT(E4)%RH('0+)=__``")1"1<ZQB)T(/(((E$)%Q( -MBU0D0(D"BP*)!0````!(BT4`QX`$`0```````$B+10#'@!@!````````2(M% -M`,>`'`$```````"_D-`#`.@`````0<>'<`$``!@!``!!BX=T`0``B04````` -M@.3]@,P$B40D7$''AW`!```8`0``BT0D7$&)AW0!``!!QX=P`0``*`$``$'' -MAW0!``!_?P``0<>'<`$``"0!``!!BX=T`0``B04`````9K@```W_/P``B40D -M7$''AW`!```D`0``BT0D7$&)AW0!``!!QX=P`0``/`$``$''AW0!`````'H` -M0<>'<`$``*0!``!!QX=T`0``?;_O_T''AW`!``"X`0``08N'=`$``(D%```` -M`"7__P``#0``^@")1"1<0<>'<`$``+@!``"+1"1<08F'=`$``$''AYP```#_ -M````0<>'D`(``$0!``!!QX>4`@``!A``"$''AY`"``"T`0``0<>'E`(``%]P -M``!!QX>0`@``,````$&+AY0"``")!0`````PY(#,,XE$)%Q!B8>4`@``@'U# -M``^$E0(``,=$)$@`````28V'4`(``$B)1"0X28V75`(``$B)5"0P2(V%&`D` -M`$B)1"0H28V7@`$``$B)5"0@28V'A`$``$B)1"0828V7,`(``$B)5"0028V' -M-`(``$B)1"0(9F9FD&9FD`^V5"1(B%0D3X#Z`P^&_@```$0/MO)"C1SU```` -M`$ACVTR+;"0020'=0<=%``@```"_$"<``.@`````2(M$)`A,C20#08L$)(D% -M`````(E$)%P-``"``$&)!"1(BU0D*$2)]DB)[^@`````1(GV2(GOZ`````!! -MQT4`1`$``+\0)P``Z`````!!QP0D!A``"$''10"T`0``OQ`G``#H`````$'' -M!"1?<```0<=%``@```"_$"<``.@`````QT0D7/]4@`!!QP0D_U0``+H!```` -M1(GV2(GOZ`````!(BT0D($B-%`.+`HD%`````"7___[_B0+'1"1<!0'(`$@# -M7"08QP,%`<@`Z?L```!F9F:01`^V="1/0HT<]0````!(8]M,BVPD.$D!W4'' -M10`(````OQ`G``#H`````$B+5"0P3(TD$T&+!"2)!0````")1"1<#0``@`!! -MB00D2(M4)"A$B?9(B>_H`````$2)]DB)[^@`````0<=%`$0!``"_$"<``.@` -M````0<<$)`80``A!QT4`M`$``+\0)P``Z`````!!QP0D7W```$''10`(```` -MOQ`G``#H`````,=$)%S_5(``0<<$)/]4``"Z`0```$2)]DB)[^@`````2(M$ -M)"!(C10#BP*)!0`````E___^_XD"QT0D7`4!R`!(`UPD&,<#!0'(`+^@A@$` -MZ`````!$B?9(B>_H`````(-$)$@!#[9$)$^#P`$X14,/A\[]__](B>_H```` -M`$&+AP0!``")!0````"#R`*)1"1<08F'!`$``$B+5"1`BP*)!0````"#X/"# -MR`V)1"1<B0*+`HD%`````$B+A>@0``!!B8<(`0``BX7L$```08F'#`$``$B+ -MA1@1``!!B8<0`0``BX4<$0``08F'%`$``$''AR`!````````#[>%O!(``"7_ -M#P``#0```0!!B8<@`0``2(N%>!$``$&)AR0!``"+A7P1``!!B8<H`0``2(N% -MH!$``,<`_P\``$''AS0!````````#[>%OA(``"7_#P``#0```0!!B8<T`0`` -M2(N%J!$``$&)AS@!``"+A:P1``!!B8<\`0``0<>'2`$```````#'1"1<``$` -M`$''ATP!`````0``08N'!`$``(D%`````(/(64&)AP0!``#'1"1<^_\`#$'' -MAU0!``#[_P`,0<>'7`$``/__``"Z`````&9FD$ACPL>$A<`)````````QT2% -M>`````"#P@&#^A!UXF;'A;@2``#_#V;'A;H2``#_#\9%4`&X`0```$B#Q&A; -M74%<05U!7D%?PV9F9I!F9F:005=!5D%505154TB#[`A)B?Y)B?1,BR],B>_H -M`````$B)PTB%P'4.0<:$).D````!Z;$```!,B>_H`````$B)Q4B%P'490<:$ -M).D````!2(G>3(GOZ`````#IB````$R->UC&0SCAQD,Y`<9#.@-!#[=$)#AF -MB4,@QH.8````"DF+!DB)0RC'0S0``@``2(M5$$B)4TBX`````&9FD&9FD,8$ -M$`!(@\`!2#T``@``=?!(B6MX2,>#H`````````"^`````$R)_^@`````BU,T -M2(MU&$R)_^@`````2(G>3(GOZ`````!(@\0(6UU!7$%=05Y!7\-F9F:09F9F -MD&9FD$%6055!5%532(/L,$F)_4R+)P^V1PV$P`^$P@,```^V\+T`````0/;& -M`745N@````"#P@$/MNJ)\(GIT_BH`73P2&/%2(T40$B-%)!)C934T!(``(M" -M#*D```(`=`T-```$`"7___W_B4(,2&/%2(T40$B-%)!!BX34W!(``*D```0` -M#X2A`@``28N<)/@(``!)C80D@!0``$PYXT@/1-A)C3341`^VCN(2``!$#[:& -MX1(```^VCN`2``!!#[94)$$/MH;G$@``B40D(`^VAN82``")1"08#[:&Y1(` -M`(E$)!`/MH;D$@``B40D"`^VAN,2``")!"2)[DC'QP````"X`````.@````` -M0;@`````2&/%2(T40$B-%)!-C8S4X!(``$$/MH08Z`@``#S_#X2$````#[;` -M2&G`R`\``$F)PDP#DY`)``!,B=9,B<^Y"````/SSI@^7P@^2P#C"=5A%#[9* -M!$4/MD(#00^V2@)!#[92`4$/MC)!#[9"!XE$)!!!#[9"!HE$)`A!#[9"!8D$ -M)$C'QP````"X`````.@`````0<9%"?],B>Y,B>?H`````.DH`@``28/``4F# -M^`(/A5W___],B>?H`````$B)PTB%P`^$!@(``$ACQ4B-%$!(C1200?:$U-T2 -M```$=`2`2UT"2&/%2(T40$B-%)!!]H34WA(```1T!(!+71!(8\5(C11`2(T4 -MD$'VA-3=$@``"'0$@$M=!$ACQ4B-%$!(C1200?:$U-X2```(=`2`2UT@2&/% -M2(T40$B-%)!!]H34W1(```)T!(!+70%(8\5(C11`2(T4D$'VA-3>$@```G0$ -M@$M=",9#6`!)B=Y(8\5(C11`2(T4D$F+A-3@$@``2(D#3(EK"$R)[^@````` -MB(.[````08!%*`%!@'PD0P!T,KD`````N@````!F9F:000^V10U(T_BH`70. -M#[;"B$P#<(!#6@&#P@&#P0%!.$PD0W?<28M-4$B-4SA)B55028U%2$B)0SA( -MB4M`2(D108!%6`$/MHN[````28N\)+@0``!)Q\``````3(GR3(GNZ`````#I -MM@```*D```@`#X2K````3(GGZ`````!(B<-(A<`/A)<```#&0$L&QD!*!6;' -M@,@``````,9`2`;&0$D`2,=`>```!0!(8\5(C11`2(T4D$F+A-3@$@``2(F# -MU````$B)@\P```!,B6M03(GOZ`````"(@^H```!F@TMH$$R)[^@`````/`EV -M!F:!2V@``D'&10X!28M5:$F)76A)C45@2(D#2(E3"$B)&DB)WDR)Y^@````` -M9F:09F:02(/$,%M=05Q!74%>PV9FD$%7059!54%455-(@^PH2(G]2(GS2(7V -M=!4/MD8)A,!T#3S_#X7M!P``Z4<!``"Y``````^VA"GN"```//]T$P^VP$B- -M%(!(C1202(V<U<@!``!(@\$!2(/Y!'770;P`````00^VA"SN"```//]T.`^V -MP$B-%(!(C1202,'B`TB-G!7(`0``]H05T@$```)T#[X`````2(G?Z`````#K -M"$B)W^@`````28/$`4F#_`20=;`/MD4^9CF%D!````^%4P<``$B%VP^%E``` -M`(!]40`/A4`'``#&15$!9F:09F:02(NTW6@$``!(A?9T8TB+AH````!(A<!T -M)TC'AH``````````2,>$W6@$````````2(N^D````+K______]#K,$B+AH@` -M``!(A<!T)$C'AH@`````````2,>$W6@$````````2(N^D````/_09F9FD$B# -MPP%(@_M`#X2X!@``ZX#&0PG_2(G>2(GOZ`````"0Z:$&``"Y`````&9FD&9F -MD`^VA"GN"```//\/A`4!```/MM!(C0222(T$@DC!X`-,C;P%R`$``$B-A`7` -M`0``@'@1_P^$W````(!X%@`/A%,&``!!O`````!(C0222(T$@DC!X`-,C:P% -M*`(``$B-'"A,C;/``0``3(GOZ`````!(B<%(BX,P`@``2(F+,`(``$R)*4B) -M00A(B0B`>4K_=&^`N>D`````#X3X!0``#[9!2$B)PH/B!DB#^@9U'*@!=#H/ -MMI&!````2(MQ6$R)_^@`````Z<P%``!(@_H$#X7"!0``J`$/A+H%``!(B<Y( -MB>_H`````.FJ!0``2(G.2(GOZ`````#IF@4``&9F9I!!@\0!13AF%@^&B`4` -M`&:0Z5/___](@\$!2(/Y!&9FD`^%VO[__TC'1"00`````(!]40`/A:,```"[ -M`````&:02(NTW6@$```/MH0K:`@``$B%]G1P2(N.@````$B%R71D2(-^8`!U -M73S_=#0/MM`/M\)(:<"8`0``2`.%0`D``/9`2P1T&H!X20!U%`^WTDB)[^@` -M````ZRQF9F:09F:02,>$W6@$````````2,>&@`````````!(B[Z0````NO__ -M____T4B#PP%(@_M`#X5M____QD51`>FZ!```2(M4)!`/MH0J[@@``#S_#X23 -M!```#[;02(T$DDB-!()(P>`#2(V,!<@!``!(B4PD(("\!=8!````#X1I!``` -MQD0D'P!(C0222(T$@DC!X`-(C90%*`(``$B)%"1,C30H38V^P`$``$B+/"3H -M`````$B)PTF+AC`"``!)B9XP`@``2(L,)$B)"TB)0PA(B1B`>TK_#X7[`P`` -M1`^W:SA)8\4/MI0%:`@``&:)5"0.3(NDQ6@$``#V0TP$='A-A>1T<TF#O"2` -M`````'1H28-\)&``9I!U7H!C3/OV0TL$=!(/MU0D#DR)YDB)[^@`````ZT)) -MBX0D@````$ECU4C'A-5H!````````$G'A"2``````````$C'0T``````28N\ -M))````"Z_____TR)YO_09F:09I#V0TL$#X13`0``QH/H`````$&`9Q3G]D-, -M`0^$Z````(!C3/Y(BU-`2(72=$6`>TD`=2GV0TL$=",/ME5!P>(&1`'J2&/2 -M2(NU^`@``+\'````Z`````#IV0```$B+M?@(``"_`0```.@`````Z<,```!- -MA>1T94F+C"2`````2(7)=%B`>TD`=1OV0TL$=!4/MU0D#DR)YDB)[^@````` -MZ9````!)8\5(QX3%:`0```````!)QX0D@`````````!(QT-``````$F+O"20 -M````NO____],B>;_T>M9@'M)`'53]D-+!'1-#[950<'B!D0!ZDACTDB+M?@( -M``"_`@```.@`````ZRU(BT-`2(7`="1(BY"(````2(72=!A(QX"(```````` -M`$B+0T!(B[B0````_]+V0TP"#X0A`@``2(M30$B+M?@(``"_!@```.@````` -M@&-,_>GA`0``2(M#0$B%P`^$U`$``$B#N(@`````#X3&`0``QD-+`<9#2@!( -MB=J^!@```$B+?"0@Z`````!(@WM8`'072(M3$$B+0QA(B4((2(D02(M#6(!H -M6`&`NX,`````=")F9F:09F:02(GOZ`````"_`0```.@`````@+N#`````'7E -M2(N[(`$``$B%_W01#[:S#0$``+H!````Z`````!(BWM82(7_=!$/MK.!```` -MN@$```#H`````$R+8T!-A>0/A.@```#V0TP$=4U(B>_H`````$B+<T"Z`0`` -M`$B)[^@`````2(M#0`^V4`(/MG`!2,?'`````+@`````Z`````!(BU-`2(NU -M^`@``+\!````Z`````#K,D$/ME0D`D$/MG0D`4C'QP````"X`````.@````` -M2(M30$B+M?@(``"_`0```.@`````28N4)(@```!(A=)T)@^W0SA(QX3%:`0` -M``````!)QX0DB`````````!)B[PDD````/_2]D-,`G092(M30$B+M?@(``"_ -M!@```.@`````@&-,_4C'0T``````2<=$)&``````2(M38$B%TG00#[:#@0`` -M`$C'1,)8`````$B+$TB+0PA(B4((2(D008!O%@%(B=Y(B>_H`````/9#3`)T -M'$B+4T!(B[7X"```OP8```#H`````(!C3/UF9I"`1"0?`0^V3"0?03A/%@^' -MO_O__TB#1"00`4B#?"00!`^%1OO__[@!````2(/$*%M=05Q!74%>05_#9F:0 -M9F:055-(@^P(2(G[2(LOZ`````"$P'09#[9U0T"$]G0T#[93#;D`````]L(! -M=T$C3^*@!=0B#P0%`./%U[DB)[^@` -M````2(G&2(7`=#](BU-H2(E#:$B-0V!(B09(B58(2(DR@$,.`4B)7E#&1D@% -MQD9)`,:&@0````^Y`0```+H!````2(G?Z`````!(@\0(6UW#9F9FD&9F9I!( -M@^PH2(D<)$B);"0(3(ED)!!,B6PD&$R)="0@28G\2(GS2(L72(NNB`````^V -M1D(\)`^'.`8```^VP/\DQ0````#V1DX$=`QFQT9.`0#&1D(!ZTIF@WY.('4, -M9L=&3@@`QD9"$>LW#[=&3H3`>17V1DD#=`\D?X/("&:)1D[&1D(-ZQKV0TX( -M=`;&0T('ZP[V0T\"=`C&0T<`QD-"'DB)WDR)Y^@`````Z<(%``"+@@0!``") -M!0````"#R%")@@0!``"Y`0```+H"````O@$```!(B=_H`````.F1!0``N0$` -M``"Z`````+X!````2(G?Z`````#I=04``+D!````N@$```"^`0```$B)W^@` -M````Z5D%``"Y`0```+I@````O@$```!(B=_H`````.D]!0``#[9.2$&X`0`` -M`+I@````O@$```!(B=_H`````.D<!0``0;@!````N0```02Z(0```+X!```` -M2(G?Z`````#I^@0``$B+12"!8##___?_0;@!````N0$```"Z`@```+X````` -M2(G?Z`````#IS00``$&X`0```+D`````N@(```"^`````$B)W^@`````OQ`G -M``#H`````.FA!```2(M%((%@,/__]_]!N`$```"Y`0```+H"````O@````!( -MB=_H`````.ET!```0;@!````N0````"Z`@```+X`````2(G?Z`````"_$"<` -M`.@`````Z4@$``"Y`0```+H"````O@````!(B=_H`````.DL!```N0$```"Z -M`````+X`````2(G?Z`````#I$`0``+D!````N@$```"^`````$B)W^@````` -MZ?0#``!!N`$```"Y_____[H!````O@````!(B=_H`````.G2`P``N0$```"Z -M`````+X`````2(G?Z`````#IM@,```^V1D=,BVS&6$F);5!)B75@#[9&1T&( -MA8$```!!QD5*`T'&14D`08!-2`6`10X!2(U%8$B+4`A,B6@(28E%`$F)50A, -MB2J_@!H&`.@`````08!\)$,`="F[`````/9%#0%T$F9FD.L9#[9%#8G92-/X -MJ`%U$8/#`4$X7"1#=^GK!;L`````2(M5((M",*D```@`=`HE___W_XE",.MI -M2(T$W0````!)B<9!@>;X!P``O;@+``"0@/L#=AU)BP0D2`6``0``3`'PBP") -M!0````#!Z!.#X`'K'$F+!"1(!8`!``!)C00&BP")!0````#!Z!.#X`&$P'4/ -MO^@#``#H`````(/M`76O3(GN3(GGZ`````#IGP(``+]`#0,`Z`````"Y```` -M`+H@````O@$```!(B=_H`````+\0)P``Z`````#I;P(``+D`````N@$```"^ -M`````$B)W^@`````OQ`G``#H`````.E)`@``2(M%((%@,/__]_]!N`````"Y -M_____[H!````O@````!(B=_H`````+\0)P``Z`````#I$@(``+D`````N@`` -M``"^`````$B)W^@`````OQ`G``#H`````.GL`0``Z`````!F9F:09F:0Z=L! -M``#H`````&9FD&9FD.G+`0``0;@!````N?````"ZFP```+X!````2(G?Z``` -M``#IJ0$``$&X`0```+F@UEHKNN`#``"^`0```$B)W^@`````Z8<!``!!N`$` -M``"Y`.`#`+JD`P``O@$```!(B=_H`````.EE`0``0;@!````N>2H!@&ZQ`,` -M`+X!````2(G?Z`````#I0P$``+D!````ND@#``"^`0```$B)W^@`````Z2<! -M``"_0`T#`.@`````N0$```"Z(````+X!````2(G?Z`````"_$"<``.@````` -MZ?<```!!N`$```"Y`````+HA````O@$```!(B=_H`````.G5````N0$```"Z -M8````+X!````2(G?Z`````#IN0````^V3DA!N`$```"Z8````+X!````2(G? -MZ`````#IF````$B+AH@```#&0`D`2(N^B````.@`````ZW^Y`0```+H!```` -MO@````!(B=_H`````+\0)P``Z`````#K7$B+12"!8##___?_0;@!````N?__ -M__^Z`0```+X`````2(G?Z`````"_$"<``.@`````ZRBY`0```+H!````O@`` -M``!(B=_H`````+\0)P``Z`````!F9F:09F:0N`$```!(BQPD2(ML)`A,BV0D -M$$R+;"083(MT)"!(@\0HPV9F9I!F9F:09F:09F:02(/L&$B)'"1(B6PD"$R) -M9"002(G[2(GU#[=6(&:!^H4`#X>)````#[?"#[:$!V@(```\_W1Z9H/Z?W<; -M#[;`2&G`F`$``$@#AT`)``!(BT!0#[90".M>#[=&(&8]@0!W(P^WP`^VA`=H -M"```2&G`R`\``$@#AY`)``!(BT`(#[90".LQ#[=&(`^VA`=H"```2(T$P$C! -MX`5(`X=H"0``2(N`B`````^V4`CK"69F9I"Z_____[G_____9H%]((4`=PP/ -MMT4@#[:,`V@(``!(B[-H"0``#[;"@/K_=!=(F("\`^X(``#_=`N`^?]T!H!] -M)`9U(TB#?7@`=`Q(C75X2(G?Z`````!(B>Y(B=_H`````.D)`0``#[;!2(T$ -MP$C!X`5,C20&00^V1"1"/!H/A($````\&G<*/!$/A;<```#K$SP;='<\'`^% -MJ0```&:0Z9P```!(BY,0$0``2('"3`@``$$/MD0D4,'@"$B82`'"BPJ)#0`` -M```/MLE(BY,0$0``2('"1`@``$$/MD0D4,'@"$B82`'"BP*)!0````#!X`@) -MP4&)C"0$`0``0<9$)$(:ZT)!QD0D0AOK.DB+@Q`1``!(!4P(``!!#[94)%#! -MX@A(8])(`="+`(D%`````(/@]T&(1"1(0<9$)$(<ZP9!QD0D0AU(@WUX`'0, -M2(UU>$B)W^@`````2(GN2(G?Z`````!,B>9(B=_H`````$B+'"1(BVPD"$R+ -M9"002(/$&,-F9F:09F:09F:09F:02(/L.$B)7"0(2(EL)!!,B60D&$R);"0@ -M3(ET)"A,B7PD,$F)_TB)\TB+;E`/MW8X2&/&N@````"`O`=H"```_P^$.@D` -M``^V0TH\"0^$3@4``#P)=TH\!0^$EP```#P%=QX\`P^$K0```#P$9F9FD`^% -M[`@``.G1````9F:09I`\!P^$H00``#P'9F:09F:0#X<<!```Z8$"``!F9I!F -MD#P6#X1^`P``/!9F9I!F9I!W(SP4#X31!0``/!1F9F:0#X?;`@``/`H/A90( -M``!FD.D[!0``/!H/A!\"```\_Y`/A*D%```\%P^%=`@``&:0Z48#```/MG=# -M0(3V9F9FD`^$AP````^V50U!O`````#VP@%T;>MV2(M%((%@,/___O](BWM0 -MN0````"Z`0```$B)WN@`````OP4```#H`````+H!````Z30(``"Y`````+H` -M````2(G>2(GOZ`````"_4,,``.@`````N@$```#I"P@``$B)T$2)X4C3^*@! -M=1%!@\0!03CT=>KK!D&\``````^V4TA(B="#X`9(@_@&=0GVP@$/A<8```!( -MBU4@BT(PJ0```0!T#27___[_B4(PZ:L```!*C03E`````$F)QD&!YO@'``!! -MO;@+``"028L708#\`W8728V$%H`!``"+`(D%`````"4```$`ZQ5)C806@`$` -M`(L`B04`````)0```0"%P'0L08#\`W8328V$%H`!``#'`````0#I-P<``$F- -MA!:``0``QP````$`Z20'``"_Z`,``.@`````08/M`76+QD-+`L9#2O](B=Y, -MB?_H`````+H!````Z0X'``#V10H!=#1(B=Y(B>_H`````(3`=25!O?H```!( -MB=Y(B>_H`````(3`=1"_Z`,``.@`````08/M`77A08#\`W8F28L'2`6``0`` -M2HT4Y0````"!XO@'``!(`="+$(D5`````(D0ZR1)BP=(!8`!``!*C13E```` -M`('B^`<``$@!T(L0B14`````B1!(BWM02(G>Z$CF__^_($X``.@`````N@$` -M``#I9`8``$C'QP````"X`````.@`````2(MK4$R+90!,B>?H`````$B)P4B% -MP'41QH/I`````;H!````Z2H&``#&0#CAQD`Y`<9`.A</MT,X9HE!($B+10!( -MB4$HQT$T`````$C'04@`````2,>!H`````````!(B<Y,B>?H`````+H!```` -MZ=\%``!(Q\<`````N`````#H`````$B+:U!,BV4`3(GGZ`````!(B<%(A<!U -M$<:#Z0````&Z`0```.FE!0``QD`XX<9`.0'&0#H8#[=#.&:)02!(BT4`2(E! -M*,=!-`````!(QT%(`````$C'@:``````````2(G.3(GGZ`````"Z`0```.E: -M!0``2(G>2(GOZ!_E__^Z`0```.E%!0``3(ME`$R)Y^@`````2(G"#[9+;$B% -MP'4.QH/I`````;(!Z1\%``#&0#CAQD`Y`<9`.@6(2#L/MT,X9HE"($B+10!( -MB4(HQT(T`````$C'0D@`````2,>"H`````````"(2V](B=9,B>?H`````+H! -M````Z<X$``!,BV4`3(GGZ`````!(B<(/MDMN2(7`=0[&@^D````!L@'IJ`0` -M`,9`..'&0#D!QD`Z!(A(.P^W0SAFB4(@2(M%`$B)0BC'0C0`````2,="2``` -M``!(QX*@`````````(A+<4B)UDR)Y^@`````N@$```#I5P0``$R+90!,B>?H -M`````$B)P4B%P'41QH/I`````;H!````Z3($``#&0#CAQD`Y`<9`.@8/MT,X -M9HE!($B+10!(B4$HQT$T`````$C'04@`````2,>!H`````````!(B<Y,B>?H -M`````+H!````Z><#``!F9F:09F:03(ME`$R)Y^@`````2(G!2(7`=1'&@^D` -M```!N@$```#INP,``,9`..'&0#D!QD`Z#`^W0SAFB4$@2(M%`$B)02C'030` -M````2,=!2`````!(QX&@`````````$B)SDR)Y^@`````N@$```#I<`,``$R+ -M90!,B>?H`````$B)P4B%P'41QH/I`````;H!````Z4L#``#&0#CAQD`Y`<9` -M.A;&0#P!#[=#.&:)02#&@9@````/2(M%`$B)02C'030`````2,=!2`````!( -MQX&@`````````$B)SDR)Y^@`````N@$```#I]0(``,9#2O\/ME-(2(G0@^`& -M2(/X!G4%]L(!=1Q(@WM@`'452(GO9I#H`````(B#Z@```&9FD&:0@'M+`G4/ -M2(MS4$B)VDR)_^@`````]D4,`G4:NP````!,C65@@'T.``^%0@$``&:0Z5<" -M``!(BW5`#[9.1@^VT0^V1CN#Z`$YPGTNC4$!B$9&@$9'`<9&0@`/MT9.@^#^ -M@\@(9HE&3DR)_^@`````N@$```#I1P(``#G"=!2[`````$R-96"`?0X`=2GI -M$0(``,9&0@`/MT9.@^#V@,P"9HE&3DR)_^@`````N@$```#I"P(``$R)Y^@` -M````2(G!2(M%:$B)36A,B2%(B4$(2(D(@'E*_W1\@+GI``````^$O0$```^V -M44A(B="#X`9(@_@&=2+VP@%T10^VD8$```!(BW%82(GOZ`````"Z`0```.FI -M`0``2(/X!`^%@0$``/;"`0^$>`$``$B)SDR)_^@`````N@$```#I@0$``$B) -MSDR)_^@`````N@$```#I;`$``,:!Z0````"#PP$X70X/ACL!``#I2?___V9F -M9I!,B>?H`````$B)P4B+16A(B4UH3(DA2(E!"$B)"(!Y2O\/A)````"`>4D` -M#X5_````@+GI``````^$]`````^V44A(B="#X`9(@_@&=2+VP@%T2`^VD8$` -M``!(BW%82(GOZ`````"Z`0```.G@````2(/X!`^%N````/;"`69FD`^$K``` -M`$B)SDR)_^@`````N@$```#IM0```$B)SDR)_^@`````N@$```#IH````,:! -MZ0````"#PP$/MD4..-@/ASK___\XPW52A,!T3KL`````3(UE8$R)Y^@````` -M2(G"2(M%:$B)56A,B2)(B4((2(D0#[9"23PB=`0\#744O@H```!(B=?H```` -M`+H!````ZSR#PP$X70YWN\9%"?](B>Y,B?_H`````+H!````ZQZZ`0```.L7 -M187M9F9FD`^$W_C__^GW^/__9F:09I")T$B+7"0(2(ML)!!,BV0D&$R+;"0@ -M3(MT)"A,BWPD,$B#Q#C#9F9FD&9F9I!F9I!(@^PH2(E<)`A(B6PD$$R)9"08 -M3(EL)"!(B?M)B?0/MU8@9H'ZA0`/A],````/M\(/MHP':`@``(#Y_P^$OP`` -M`&:#^G]W'`^VP4B+ET`)``!(:<"8`0``2(M$$%`/MD`(ZT%F@?J!`'<<#[;! -M2(N7D`D``$AIP,@/``!(BT00"`^V0`CK'@^VP4B+EV@)``!(C03`2,'@!4B+ -MA!"(````#[9`"#S_=%@/ML`/MJP#[@@``$"`_?]T%X#Y_W0200^V5"0D@/H& -M=5QF9F:09F:00(#]_W0J@/G_="4/ML%(:<"8`0``28G%3`.K0`D``$'&14L" -M0<9%2O_I9@(``&:028-\)'@`=`U)C70D>$B)W^@`````3(GF2(G?Z`````#I -M:@(```^VP4AIP)@!``!)B<5,`ZM`"0``28M,)$B$T@^$N@```$$/MD0D.CP& -M#X31````/`P/A,D```!!#[>5R````(U"`69!B87(````9H/Z"78;08!]2@9T -M%$'&14L"0<9%2O]!@&5,_NG4`0``O^@#``#H`````$$/ME5(2(G0@^`&2(/X -M!G4Z]L(!=#5!#[:5@0```$F+=5A`#[;%2(T\@$B-/+A(C;S[R`$``$&X```` -M`+D"````Z`````#IJ@$``$'&14H#3(GN2(G?Z`````#IE0$``&9FD&9FD$$/ -MMD0D.CP!=0M!QD5*!)#I3P$``#P"=0Q!QD5*!6:0Z3\!```\`P^%I@```$B) -MSD&`?4H%=2MF@7D$R#=F9I!U($$/MW4X2,?'`````+@`````Z`````!!QD5* -M!ND"`0``3(GOZ`````!)C;V8````OB@```#HA;?__X3`=4%)C;V$````OA0` -M``#H<+?__X3`=2Q)C;W`````O@@```#H6[?__X3`=1=)@WUX`'000<9%2A?I -MJ@```&9FD&9FD$'&14H:9D&#A<@````!Z9$````\%W4*0<9%2A7I@P```#P8 -M=0=!QD5*%NMX/`1FD'4'0<9%2@?K:SP%9F:09I!U!T'&14H(ZUL\!F9FD&:0 -M=0=!QD5*">M+/`QF9I!FD'4'0<9%2@KK.SP69F:09I!U!T'&14H4ZRL\#F9F -MD&:0=2))@WPD>`!T#4F-="1X2(G?Z`````!,B>9(B=_H`````.LK28-\)'@` -M=`U)C70D>$B)W^@`````3(GF2(G?Z`````!,B>Y(B=_H`````$B+7"0(2(ML -M)!!,BV0D&$R+;"0@2(/$*,-F9F:09F9FD$B#["A(B1PD2(EL)`A,B60D$$R) -M;"083(ET)"!)B?Y)B?1(BVY0#[=&.+H`````@+P':`@``/\/A,L"```/MD9* -M/!0/A,<````\%'<X/`V0#X3[````/`UW#CP%9F9FD`^%G0(``.M-/`YF9I!F -M9I`/A.\````\#P^%A0(``&:0Z?(````\&P^$E0```#P;D'<0/!AT.3P9#X5E -M`@``9I#K1#P<=%<\_P^%50(``&:0Z<8```"^`````$R)YV9FD.@`````N@$` -M``#I.0(``+X!````3(GGZ`````"Z`0```.DB`@``O@$```!,B>?H`````+H! -M````Z0L"``!(B??H`````+H!````Z?D!``"02(GWZ`````"Z`0```.GF`0`` -M]D9I!'072(GW9F:09I#H`````+H!````Z<D!``!(B??H`````+H!````Z;<! -M``!(B??H`````+H!````9I#IHP$``$B)]^@`````N@$```#ID0$``,9&2O^` -M?0X`#X39````NP````!,C6U@9I!,B>_H`````$B)P4B+16A(B4UH3(DI2(E! -M"$B)"(!Y2O\/A(D```"`>4D`#X6&````@+GI``````^$-0$```^V44A(B="# -MX`9(@_@&=2+VP@%T2`^VD8$```!(BW%82(GOZ`````"Z`0```.D(`0``2(/X -M!`^%^0```/;"`69FD`^$[0```$B)SDR)]^@`````N@$```#IW0```$B)SDR) -M]^@`````N@$```#IR````,:!Z0````"#PP$/MD4..-@/ASK___\XPP^%CP`` -M`$$/MD0D23PB=!8\#7020;P`````3(UM8(!]#@!U%NMOO@H```!,B>?H```` -M`+H!````ZW9,B>_H`````$B)PTB+16A(B5UH3(DK2(E#"$B)&`^V0TD\(G0$ -M/`UU*$B)WDC'QP````"X`````.@`````O@H```!(B=_H`````+H!````ZR5! -M@\0!1#AE#G>EQD4)_TB)[DR)]^@`````N@$```#K!;H!````B=!(BQPD2(ML -M)`A,BV0D$$R+;"083(MT)"!(@\0HPV9FD&9FD&9FD$%7059!54%455-(@^PH -M28G]#[=6(+G_____B<AF@?J%`'=U#[?"#[:,!V@(``")R(#Y_W1C9H/Z?W<< -M#[;!2(N70`D``$AIP)@!``!(BT004`^V0`CK06:!^H$`=QP/ML%(BY>0"0`` -M2&G`R`\``$B+1!`(#[9`".L>#[;!2(N7:`D``$B-!,!(P>`%2(N$$(@````/ -MMD`(#[;`00^VO`7N"```2(T$OTB-!(=)C83%R`$``$B)1"0@#[;!2&G`F`$` -M`$F)QTT#O4`)``!(BTY(#[8!P>`8#[91`<'B$`G0#[91`PG0#[91`L'B"`G0 -MP>@#2(UI"(/X$+H0````#T?"B<!,C33!3#GU#X=]`0``QT0D'`````!(C02_ -M2(T$ATC!X`-*C10H2(E4)!!(@<+``0``2(E4)`A)C80%*`(``$B)!"1(B>_H -M`````$&)Q$B-=01(Q\<`````N00```#\\Z8/E\(/DL`XP@^%#P$``$&#_!`/ -MAP4!``"#1"0<`8-\)!P!=2)!QX>0`0```0```$6)IY0!``!(BT4`28F'W``` -M`.G7````3(GOZ`````!(B<-(A<`/A-````#&0$L&QD!*!6;'@,@``````,9` -M2`;&0$D`2,=`>```!0#'@)`!```!````1(F@E`$``$F+A]0```!(B8/4```` -M28N'U````$B)@\P```!(BT4`2(F#W````$B+1"0@2(E#4$B)Q^@`````B(/J -M````9H-+:!!(BWPD(.@`````/`EV!F:!2V@``DB+5"0(@$(6`4B+5"002(N" -M,`(``$B)FC`"``!(BQ0D2(D32(E#"$B)&$B)WDR)[^@`````9F:09I!(@\4( -M3#GU#X:X_O__2(/$*%M=05Q!74%>05_#9F9FD$%7059!54%455-(@>Q(`@`` -M2(E\)!A(B70D$(G02(M7"$B)5"0@2(L*2(E,)"@/ME=8B%0D-TB)^4B#P4A( -MB4PD.$@Y3T@/A)$"``"`?"0W``^$A@(```^VP(E$)`Q(BWPD..@`````3(U@ -M\$R-1"1`BTPD#+H!````2(MT)"!(BWPD$.@`````3(U\)$"`?"1```^$!0$` -M`$&]`````$V-M"34````00^V[4ACQ4B)PTC!XP1)C7P?;+H(````3(GVZ``` -M``"$P`^$L0```$F-5!]@#[9""(/@#T&(A"3J````00^W3"1H9H'AW_V)R(/( -M$&9!B40D:`^V0@C`Z`0\"74+B<B#R#!F08E$)&A(8\5(P>`$00^V1`=HP.@$ -M/`IU"&9!@4PD:``"2(M,)#A(BU$(28U$)!!(B4$(28E,)!!)B50D&$B)`D'V -M1"1,`G1#08!D)$S]28M4)$!(A=)T,TB+1"0H2(NP^`@``+\&````Z`````#K -M&V9FD&9FD$&#Q0%%."]V%69F9I!F9I#I$O___T4X+P^')`$``$R)XKX&```` -M2(M\)"#H`````$&`O"2#`````'0D9F:09I!(BWPD*.@`````OP$```#H```` -M`$&`O"2#`````'7A28N\)"`!``!(A?]T$T$/MK0D#0$``+H!````Z`````!) -MBWPD6$B%_W0300^VM"2!````N@$```#H`````$F+1"1`2(7`=&U(QT!@```` -M`$'V1"1,!'4>2(M\)"CH`````$F+="1`N@$```!(BWPD*.@`````28M4)$!( -MBTPD*$B+L?@(``"_!@```.@`````28M4)$!(BT0D*$B+L/@(``"_`0```.@` -M````2<=$)$``````28L4)$F+1"0(2(E""$B)$$B+5"0@@&H.`4B+3"08@&E8 -M`4R)YDB+?"0HZ`````!(BU0D.$B+1"082#E02'0+@&PD-P$/A8']__](@<1( -M`@``6UU!7$%=05Y!7\.005=!5D%505154TB!["@"``!)B?])B?5(B=5(BP=( -MB40D$$0/MN%(C5PD($F)V$2)X;H!````2(G^3(GOZ`````!$B>),B>Y(B>_H -M`````$R+=4A)@^X02(U=2$F-1A!(.=AT+T$/MD9)/`UT%3PB=3/K#T$/MD9) -M/`UT!CPB9I!U(D'&1DH%0<9&2P3&1"0>`>L%QD0D'@"`?"0@`'48Z=T!``!- -MBW8028/N$$F-1A!(.=AUONO<QD0D'P!)C5=@2(E4)`A,BV5(28/L$$F-1"00 -M2#G##X2\`0``#[9$)!](P>`$3(VL!(P```!F9F:028V\)-0```"Z"````$R) -M[N@`````A,`/A6`!``!-BV0D$$F#[!!)C40D$$@YV`^$<P$``.O*08!'#@'& -M04H%QH'H`````,9!2P1FQX'(``````#&@<H`````2,=!>```!0`/MGPD'TAC -MQTC!X`1(C90$@`````^V0@2(04@/MD(%B$%)3(EY4`^V0@B#X`^(@>H````/ -MMW%H9H'FW_V)\(/($&:)06@/MD((P.@$/`EU"8GP@\@P9HE!:$ACQTC!X`0/ -MMH0$B````,#H!#P*=09F@4EH``)(B6E82&/'2,'@!`^VE`2&````B)&!```` -M2(N$!(P```!(B8'4````2(F!S````(!%6`%)BT=H28E/:$B+5"0(2(D12(E! -M"$B)"$B+55!(C4$02(E%4$B)61!(B5$82(D"#[912$B)T(/@!L9$)!X`2(/X -M!G4P]L(!=!D/MI&!````2(GN3(G_Z`````#&1"0>`.L22(G.2(M\)!#H```` -M`,9$)!X`@$0D'P$/MD0D'SA$)"`/AT3^__^`?"0>`'0EO@H```!,B??H```` -M`.L62(M\)!#H`````$B)P4B%P`^%>?[__TB!Q"@"``!;74%<05U!7D%?PY!! -M5T%6055!5%532('L2`(``$F)_4B)="0H2(LO#[9'*(A$)#=(C5=(2(E4)#A( -M.5=(#X2A`P``A,`/A)D#``!(C4PD0$B#P5Q(B4PD($B-1"1`2(/`5$B)1"08 -M2(U4)$!(@\)`2(E4)!!(C4PD0$B#P1!(B4PD"$B-1"1`2(/`($B)!"1(BWPD -M..@`````3(U@R$&X`````+D`````N@````!,B>Y(BWPD*.@`````08G'A,`/ -MA`L#``!!O@````"[`````(E<)#!!N`````")V;H!````3(GN2(M\)"CH```` -M``^VP$C!X`1(@\!D2#T``@``#X>Y`0``3(U$)$")V;H!````3(GN2(M\)"CH -M`````+H(````3(GF2(M\)"#H`````(3`#X2&`0``2(M,)#A(BU$(28U$)#A( -MB4$(28E,)#A)B50D0$B)`@^V1"1"08A$)%E(BW0D&$R)[^@`````//]T%@^V -MP$AIP,@/``!(`X60"0``28E$)!!%A/9T7P^V1"1#T>B#X`'!X`1!#[94)%V# -MXN\)PD&(5"1=#[9$)$/!Z`.#X`'!X`6#XM\)PD&(5"1=#[9$)$/!Z`*#X`'! -MX`.#XO<)PD&(5"1=#[9$)$9!B(0DNP```.FY````#[9$)$)!B$0D64V);"0( -M#[9$)$9!B(0DNP````^W1"1$08E$)&`/MX0DD````&9!B80DN`````^VA"22 -M````08B$)+H```!(BX0D@````$F)A"2H````2(M4)!!(BT((28F$)+````!( -MBT0D4$F)1"1X2(M,)`A(BT$(28F$)(````!)C90DB````$B+1"1@28F$)(@` -M``!(BPPD2(M!"$B)0@A(BT$02(E"$$B+1"1X28F$)*````"+3"0P3(GB2(MT -M)"A,B>_H`````.GY````08/&`8/#`44X_@^$`@$``.G]_?__3(GWZ`````!( -MC5CP2(G:O@8```!,B>_H`````("[@P````!T'F9FD$B)[^@`````OP$```#H -M`````("[@P````!UY4B+0T!(A<!T64C'0&``````]D-,!'492(GOZ`````!( -MBW-`N@$```!(B>_H`````$B+4T!(B[7X"```OP$```#H`````$B+4T!(B[7X -M"```OP8```#H`````$C'0T``````2(L32(M#"$B)0@A(B1!!@&T.`4&`;"18 -M`4B)WDB)[^@`````33ET)$@/A2S___]!@&TH`4R)YDB)[^@`````2(M$)#A) -M.45(="&`;"0W`70:9I#IO_S__TV-="1(33ET)$B0#X7R_O__Z\1(@<1(`@`` -M6UU!7$%=05Y!7\-F9I!F9I!!5T%6055!5%532('L.`(``$B)?"082(GU2(L& -M2(E$)"!(B?Y(B>_H`````$&X`````+D`````N@````!(B>Y(BWPD&.@````` -MB$0D+X3`#X1N`P``0;\`````0;X`````2(U52$B)5"0(2(U-8$B)#"1!N``` -M``!$B?&Z`0```$B)[DB+?"08Z``````/ML!(P>`$2(/`9$@]``(```^'#`,` -M`$R-1"0P1(GQN@$```!(B>Y(BWPD&.@`````3(UD)#!)C70D7$B)[^@````` -M//\/A=@"``!(BWPD(.@`````2(G#2(7`#X3L`@``@$4H`<9`6`!)BT0D7$B) -M`TF-="142(GOZ``````\_W0:#[;`2&G`R`\``$B+="0@2`.&D`D``$B)0Q!! -M#[9$)`*(0UE!#[9$)`/1Z(/@`<'@!`^V4UV#XN\)PHA374$/MD0D`\'H`X/@ -M`<'@!8/BWPG"B%-=00^V1"0#P>@"@^`!P>`#@^+W"<*(4UU(B6L(00^V1"0& -MB(.[````28M$)`A(B4-P00^V1"0'B$-:00^W1"0$B4-@00^W1"109HF#N``` -M`$$/MD0D4HB#N@```$F+1"1`2(F#J````$F+1"1(2(F#L````$F+1"002(E# -M>$F+1"082(F#@````$B-BX@```!)C50D($F+1"0@2(F#B````$B+0@A(B4$( -M2(M"$$B)01!)BT0D.$B)@Z````!(BU502(U#.$B)15!(BTPD"$B)2SA(B5-` -M2(D"08`\)``/A&H!``!!O0````!(C7-(2(ET)!!(BWPD(.@`````2(G!2(7` -M#X1O`0``@$4.`<9`2@7&@.@`````QD!+!$C'0'@```4`9L>`R```````00^W -M_4ACQTC!X`1)C50$8`^V0@2(04@/MD(%B$%)2(EI4$B)65@/MD(&B(&!```` -M#[9""(/@#XB!Z@````^W<6AF@>;?_8GP@\@09HE!:`^V0@C`Z`0\"74)B?"# -MR#!FB4%H2&/'2,'@!$$/MD0$:,#H!#P*=0IF@4EH``)F9F:02&/'2,'@!$F+ -M1`1L2(F!U````$B)@<P```"`0U@!2(M%:$B)36A(BQ0D2(D12(E!"$B)"$B+ -M4U!(C4$02(E#4$B+="002(EQ$$B)41A(B0(/ME%(2(G0@^`&2(/X!G4F]L(! -M=!0/MI&!````2(G>2(GOZ`````#K#4B)SDB+?"0@Z`````!!@\4!00^V!"1F -M1#GH#X>L_O__9F9FD&9FD$&#QP%!@\8!1#I\)"\/A:_\__^`?0X`=1'&10G_ -M2(GN2(M\)"#H`````$B!Q#@"``!;74%<05U!7D%?PV9F9I!!5T%6055!5%53 -M2(/L&$F)_DF)]$&X`````+D`````N@````#H`````$&)Q83`=#:]`````+L` -M````3(U\)!>03(GYB=I,B>9,B??H`````(!\)!?^#X6N````@\4!@\,!1#CM -M==I!#[9$)%B#Z`%!B$0D6(3`='M)BRPD0<9$)%@`28M<)$A(@^LX28U4)$A( -MC4,X2#G0='!(@WL0`'5`ZP=(@WL0`'4W0<9$)%@!3(GF3(GWZ``````/MHN[ -M````2(N]N!```$G'P`````!(B=I,B>;H`````.LM9F9FD$B+6SA(@^LX2(U# -M.$@YT'6QZQ9,B>9,B??H`````$R)YDR)]^@`````2(/$&%M=05Q!74%>05_# -M9F9FD&9F9I!!54%455-(@^P(2(G]28GT3(LONPH```!,B>9(B>_H`````(3` -M=0^_Z`,``.@`````@^L!=>)!#[9U0T"$]G0B#[95#;D`````]L(!=`SK$DB) -MT$C3^*@!=0B#P0%`./%U[DF+%"1)BT0D"$B)0@A(B1"`;0X!3(GF3(GOZ``` -M``#V10P"=$E(BW5`2(7V=1A,B>_H`````$B)QDB%P`^$4@$``$B)14!,B2Y( -MB:Z(````QD9&`,9&1P#&1D(`9H-.3@1,B>_H`````.DF`0``2(M%0$B%P`^$ -MN````$B-L)````!)BWTHZ`````!(BW5`3(GOZ`````!,C65@3#EE8`^$A@`` -M`$R)Y^@`````2(G#2(M`0$B%P'192,=`8`````#V0TP$=1E,B>_H`````$B+ -M<T"Z`0```$R)[^@`````2(M30$F+M?@(``"_`0```.@`````2(M30$F+M?@( -M``"_!@```.@`````2,=#0`````"`;0X!2(G>3(GOZ`````!,.65@#X5Z____ -M2,=%0`````"`?0X`=!)(C7U@Z`````!(B<&`;0X!ZPM,B>_H`````$B)P4B% -MR70Y2(M5:$B)36A(C45@2(D!2(E1"$B)"H!%#@%(B6E0QD%(!<9!20#&04L& -MQD%*`TB)SDR)[^@`````2(/$"%M=05Q!7<-F9F:09F9FD&9F9I!F9I!(@^PH -M2(D<)$B);"0(3(ED)!!,B6PD&$R)="0@2(G]2(GS#[=6(&:!^H4`#X>!```` -M#[?"#[:,!V@(``"`^?]T<6:#^G]W'`^VP4B+ET`)``!(:<"8`0``2(M$$%`/ -MMD`(ZT%F@?J!`'<<#[;!2(N7D`D``$AIP,@/``!(BT00"`^V0`CK'@^VP4B+ -MEV@)``!(C03`2,'@!4B+A!"(````#[9`"`^VR3S_=`=F@?G_`'4C2(-[>`!T -M#$B-<WA(B>_H`````$B)WDB)[^@`````Z>(````/MO!(8\8/MH0%[@@``$B- -M%(!(C1203(TLU0````!.C;0MR`$```^WP4AIP)@!``!)B<1,`Z5`"0``@'LD -M`'1+2,?'`````+@`````Z`````!)BQ0D28M$)`A(B4((2(D02HV<+<`!``"` -M:Q8!3(GF2(GOZ`````#&0Q'_3(GV2(GOZ`````#K66:0@'LZ`74QOQ`G``!F -M9I!FD.@`````2(G>2(GOZ`````"Y`0```+H`````3(GF3(GWZ`````#K(+]0 -MPP``Z`````!(B=Y(B>_H`````$R)YDR)]^@`````2(L<)$B+;"0(3(MD)!!, -MBVPD&$R+="0@2(/$*,-F9F:09F9FD&9F9I!!5T%6055!5%532(/L"$B)^TF) -M]4&)UD&)STB+!TB)!"2`?PX`='*]`````$R-9V!,B>?H`````$B)PDB+0VA( -MB5-H3(DB2(E""$B)$$PY:EAU#40XLH$```!T#69F9I"#Q0%`.&L.=\=`.&L. -M="I!@/]0=23&0DL&QD)*!<9"2`?&0DD`3(EJ6$B)6E!(B=9(BSPDZ`````!( -M@\0(6UU!7$%=05Y!7\-F9F:09F9FD$B#[#A(B5PD"$B);"003(ED)!A,B6PD -M($R)="0H3(E\)#!(B?U)B?0/MU8@9H'ZA0`/AXD````/M\(/MH0':`@``#S_ -M='IF@_I_=QL/ML!(:<"8`0``2`.'0`D``$B+0%`/ME`(ZUX/MT8@9CV!`'<C -M#[?`#[:$!V@(``!(:<#(#P``2`.'D`D``$B+0`@/ME`(ZS$/MT8@#[:$!V@( -M``!(C03`2,'@!4@#AV@)``!(BX"(````#[90".L)9F9FD+K_____N?____]F -M08%\)""%`'<.00^W1"0@#[:,!6@(```/ML(/MH0%[@@``$B-%(!(C1203(VT -MU<@!```/ML%(C03`2,'@!4R+K6@)``!)`<5!@'PD/`)U?4$/MD0D0"7P```` -M@_@@=`6#^!!U:$$/ME0D0(G0@^`/@_@!=26)T8'A\````$&X`0```+H"```` -MO@````!,B>_H`````.E,"@``00^V14=)BU3%6$$/MD0D0"7P````@_@@#Y3` -M@\`(B(+J````2(M"8&:!8$[__ND9"@``00^V1"0DA,!T/XG#28-\)'@`=`U) -MC70D>$B)[^@`````3(GF2(GOZ`````"`^P(/A>0)``!,B>Y(B>_H`````.G4 -M"0``9F9FD$''A0@!````````00^V14(\)`^'6PD```^VP/\DQ0````!)BT8@ -M]D`R"`^$>@D``.FC!0``2(N5$!$``$B!PDP(``!!#[9%4,'@"$B82`'"BP*) -M!0````"#^`6Z!0````]'PD&(13M!@'X/`'0/0<9%0@!!QD8/`.GV"```0<9% -M0@+I[`@``$B+E1`1``!(@<),"```00^V15#!X`A(F$@!PHL"B04`````#[;` -M9D&)13Q(BY40$0``2('"1`@``$$/MD50P>`(2)A(`<*+`HD%`````(G"P>H( -M9D&)53[!X`AF00E%/&:!^D!!=0I!QD5"&>E["```9D&!?3X5E[@#````NB0` -M```/1,)!B$5"Z5X(``!(BY40$0``2('"1`@``$$/MD50P>`(2)A(`<*+`HD% -M`````$&(13E(BY40$0``2('"3`@``$$/MD50P>`(2)A(`<*+`HD%`````(G` -MJ`AT!T'&13H,ZQVH!'0'0<9%.@OK$H/@`DB#^`$9P/?0@^`*08A%.D$/MD5' -M/`$9P(/@`H/`%$&(14+IT@<``$B+A1`1``!(!4P(``!!#[954,'B"$ACTD@! -MT(L`B04`````@\@(08A%2$'&14(%Z9X'``!!QD5"`$$/MT5.9B7W_8/(`F9! -MB45.28-\)'@`=`U)C70D>$B)[^@`````3(GF2(GOZ`````!!QD8)_TR)]DB) -M[^@`````Z;`'``!!QD5"!.E)!P``00^V14>#P`%!B$5'03I%.W,*0<9%0A;I -M+0<``$'&14<`0<9%0A>_(*$'`.@`````Z10'``!!QD5"%.D*!P``0<9%0@AF -MD.G^!@``0<9%0A3I]`8``$'&14H`Z`````!)B87P````0<9%0A7IV08``$B+ -ME1`1``!(@<),"```00^V15#!X`A(F$@!PHL:B1T`````#[;;2(N5$!$``$B! -MPD0(``!!#[9%4,'@"$B82`'"BP*)!0````#H`````$F)A?@```"#XP^#^P-U -M"D'&14(*Z7(&``!!BX7P````!4`-`P!!.87X````>1I!#[9%2CP*=Q%!QD5" -M%8/``4&(14KI0P8``$$/MD5'28-\Q5@`#X1N`0``0;\`````08!^#@!T0L9$ -M)`<`28U>8$B)W^@`````28G'00^V14=-.7S%6'0B2(M#"$R)>PA)B1])B4<( -M3(DX@$0D!P$/MD0D!T$X1@YWQT&`;@X!28M'0$B%P`^$]````$C'0&`````` -M0?9'3`1U+TB)[^@`````28M'8,:`'`$```%)BW=`N@$```!(B>_H`````$F+ -M1V#&@!P!````28M70$B+M?@(``"_`0```.@`````28M'0$B+B(````!(A<ET -M,D$/MT<X2,>$Q6@$````````28M'0$C'@(``````````28MW0$B+OI````"Z -M_______128M'0$B%P'0Y2(N0B````$B%TG0M00^W1SA(QX3%:`0```````!) -MBT=`2,>`B`````````!)BT=`2(NXD````/_228M70$B+M?@(``"_!@```.@` -M````2<='0`````!!#[9%1TG'1,58`````$R)_DB)[^@`````0<9%0@GIN@0` -M`$B+E1`1``!(@<),"```00^V15#!X`A(F$@!PHL*B0T`````#[;)2(N5$!$` -M`$B!PD0(``!!#[9%4,'@"$B82`'"BP*)!0````#!X`@)R$&)151!@'U""G0' -MJ0```0!T"D'&14(+Z5`$``!!QD5"#$$/MD5'28-\Q5@`=%%!@'X.``^$D`0` -M`$&_`````$F-7F!(B=_H`````$B)PD$/MD5'23E4Q5AU!T&`;@X!ZRE(BT,( -M2(E3"$B)&DB)0@A(B1!!@\<!13A^#G8-Z\1(B>_H`````$B)PDB%T@^$-@0` -M`$$/MD5'28E4Q5A!#[9%2XB"Z@```.F_`P``2(GOZ`````"_`0```.@````` -M@^L!@_O_=`I)BT8@]D`R"'3<0<9%0@GID0,``$B+E1`1``!(@<),"```00^V -M15#!X`A(F$@!PHL*B0T`````#[;)2(N5$!$``$B!PD0(``!!#[9%4,'@"$B8 -M2`'"BP*)!0`````/ML#!X`@)R"7_#P``/1,!```/E,(](P$```^4P832=1"$ -MR74,/3,!``!U/NE$`P``0<9%0AB$TG0*0<9%2PCI!`,``(3)=`I!QD5+">GV -M`@``/3,!```/A>L"``!!QD5+"F9FD.G>`@``00^V348/MM%!#[9%.X/H`3G" -M?1:-00%!B$5&08!%1P%!QD5"!^FT`@``0<9%1P!!QD5"'NFE`@``0<9%0@/I -MFP(``$'&14(B9F:0Z8X"``!!QD5"(^F$`@``0<9%0@/I>@(``$B+E1`1``!( -M@<),"```00^V15#!X`A(F$@!PHL*B0T`````2(N5$!$``$B!PD0(``!!#[9% -M4,'@"$B82`'"BQ*)%0````")T,'@"`^VR0G(9CT#$0^%HP```(G0P>@(9CU% -M4W0*9CU``P^%C@```&9!QT4\`Q%F08E%/F8]15-U'T&`O14!```"=!5!QH45 -M`0```D''A1@!```?````ZR9F08%]/D`#=1U!@+T5`0```W030<:%%0$```-! -MQX48`0``#_@#`$'&A1P!```!3(GOZ`````!!QH4<`0```$F+10!(B[CX"``` -MO@````#H`````$'&14(#Z7T!``!!QD5"(4'&A14!````Z6L!``!(BY40$0`` -M2('"3`@``$$/MD50P>`(2)A(`<*+`HD%`````$B+E1`1``!(@<)$"```00^V -M15#!X`A(F$@!PHL"B04`````0<9%0A_I&P$``$'&14(@Z1$!``!(BY40$0`` -M2('"3`@``$$/MD50P>`(2)A(`<*+`HD%`````$B+E1`1``!(@<)$"```00^V -M15#!X`A(F$@!PHL"B04`````00^V34=!#[9%.XU1`4&(54</MLD/ML"#Z`$Y -MP;@&````NA\````/3,)!B$5"Z9D```!(BY40$0``2('"3`@``$$/MD50P>`( -M2)A(`<*+"HD-``````^VR4B+E1`1``!(@<)$"```00^V15#!X`A(F$@!PHL" -MB04`````P>`("<%!B8T$`0``0<9%0AKK/4'&14(;ZS9(BX40$0``2`5,"``` -M00^V55#!X@A(8])(`="+`(D%`````(/@]T&(14A!QD5"'.L%0<9%0AU)@WPD -M>`!T#4F-="1X2(GOZ`````!,B>9(B>_H`````$R)[DB)[^@`````ZS!!QD5" -M&.G%_/__2(GO9F:0Z`````"_`0```.@`````NSY"#P#I!?S__V9F9I!F9I!( -MBUPD"$B+;"003(MD)!A,BVPD($R+="0H3(M\)#!(@\0XPV9F9I!F9I!F9I!F -M9I!(@^PX2(E<)`A(B6PD$$R)9"083(EL)"!,B70D*$R)?"0P2(G]2(GS#[=6 -M(&:!^H4`#X?,````#[?"#[:,!V@(``"`^?\/A+@```!F@_I_=Q\/ML%(BY=` -M"0``2&G`F`$``$B+1!!0#[9`".M$9F:09H'Z@0!W'`^VP4B+EY`)``!(:<#( -M#P``2(M$$`@/MD`(ZQX/ML%(BY=H"0``2(T$P$C!X`5(BX00B`````^V0`@\ -M_W1.#[;`#[:4!>X(``"`^O]T#X#Y_W0*#[9S)$"`_@9U4H#Z_W0J@/G_="4/ -MML%(:<"8`0``28G$3`.E0`D``$'&1"1+`D'&1"1*_^F]!P``2(-[>`!T#$B- -M<WA(B>_H`````$B)WDB)[^@`````Z<H'```/ML%(:<"8`0``28G$3`.E0`D` -M`$$/M[PDR````&:!_ZL-=P9`@/X"=3I(@WMX`'0,2(US>$B)[^@`````2(G> -M2(GOZ`````!!QD0D2O]!QD0D2P),B>9(B>_H`````.EF!P``0;D`````0(#^ -M('4D2(M+4`^V`8/@?SQQ=@Q!N0\```!$(DD!ZPI!N0\```!$(DD"1`^VZDN- -M1*T`28U$A0!,C;3%R`$```^V0S@\&@^$\@4``#P:=QL\$G11/!4/A),&``"$ -MP&:0#X29!0``Z<4&```\)69FD`^$)P,``#PE=Q$\&V9F9I`/A:H&``#I:04` -M`#R>9F:0#X0;!```/*`/A9(&``!FD.E>!@``0(3V#X7.`@``2(M+2(![.0!T -M9TB%R71,@'D!@'5&@'D"`'5`#[9!`SP\D'<W#[;028VT)(0```"X`````,8$ -M,"!(@\`!2(/X%'7R@_H4#T/028V\)(0```")TDB-<03H`````&9!QX0DR``` -M````0<9$)$H9Z1$&``!!QD0D2ACV009`=1$/M@&#X!^#^`T/A90!``#K"P^V -M`8/@'X/X#74+0<9$)$D-9F:0ZP9!QD0D22)!#[9T)$E(Q\<`````N`````#H -M`````$B#>W@`=`Q(C7-X2(GOZ`````!(B=Y(B>_H`````$N-1*T`28U$A0"` -MO,76`0````^$NP4``$&^`````$N-1*T`28U$A0!(P>`#3(VD!2@"``!(C1PH -M3(V[P`$``$R)Y^@`````2(N3,`(``$B)@S`"``!,B2!(B5`(2(D"#[9`23PB -M=`0\#74*08/&`44X=Q9WRDN-1*T`28U$A0`/MH3%U@$``$0X\`^%0P4``(3` -M#X0[!0``0;P`````9L=$)`8``$&_`````$N-1*T`28U$A0!(P>`#3(VL!2@" -M``!(C1PH3(VSP`$``$R)[^@`````2(G"2(N#,`(``$B)DS`"``!,B2I(B4(( -M2(D0#[9"23PB=`0\#743#[=".&8[1"0&<@AFB40D!DF)UT&#Q`%%.&86=[1- -MA?\/A+($``!!@']*_P^$IP0``$'&1TK_3(G^2(GOZ`````#ID@0``(/X`742 -M0<9$)$D!0<9$)$K_D.E+!```]D$%`70(9D&!3"1H``1(BW-(2(7V=&9)C90D -MF````+@`````Q@00`$B#P`%(@_@H=?))C90DP````+``Q@00`$B#P`%(@_@( -M=?))C8PDF````$B-5@A(BT8(28F$))@```!(BT((2(E!"$B+0A!(B4$0BT8@ -M08F$),````!!@[PDD`$````/A;\#``!!QD0D2ASIM`,``(U'`69!B80DR``` -M`+\0)P``Z`````!!QD0D2@7IDP,``$B+2TA`A/8/A9L````/ME$&P>((#[9! -M!<'@$`G"#[9!!PG"#[9!!,'@&`G"08F4).0````/MA'!XA@/MD$#"<(/MD$" -MP>`("<(/MD$!P>`0"=")PDF)5"1X08.\).0`````=1]F08.$),@````!OQ`G -M``#H`````$'&1"1*&^D0`P``@_C_=1-F08%,)&@`!$'&1"1*&^GX`@``0<9$ -M)$H-9I#IZP(``$"`_B!U-4&`^0:0=`9!@/D"=2B-1P%F08F$),@```"_$"<` -M`.@`````0<9$)$H%Z;<"``!F9F:09F:02(-[>`!T#$B-<WA(B>_H`````$B) -MWDB)[^@`````3(GB3(GV2(GOZ`````#IKP(``$R+0TA`A/8/A<P```!!#[90 +MLX$```"Z`0```.@`````2(MK0$B%[0^$XP```/9#3`1U3DR)Y^@`````2(MS +M0+H!````3(GGZ`````!(BT-`#[90`@^V<`%(Q\<`````N`````#H`````$B+ +M4T!)B[0D\`@``+\!````Z`````#K+P^V50(/MG4!2,?'`````+@`````Z``` +M``!(BU-`28NT)/`(``"_`0```.@`````2(N5B````$B%TG0D#[=#.$G'A,1@ +M!````````$C'A8@`````````2(N]D````/_2]D-,`G0:2(M30$F+M"3P"``` +MOP8```#H`````(!C3/U(QT-``````$C'16``````2(M38$B%TG00#[:#@0`` +M`$C'1,)8`````$B+$TB+0PA(B4((2(D008!O#@%(B=Y,B>?H`````/9#3`)T +M(4B+4T!)B[0D\`@``+\&````Z`````"`8TS]9F9FD&9FD(!$)!\!#[9,)!]! +M.$\.#X>R^___2(-$)!`!2(-\)!`$#X4[^___N`$```!(@\0H6UU!7$%=05Y! +M7\-F9I!F9I!54TB#[`A(B?M(BR_H`````(3`=!D/MG5#0(3V=#0/ME,-N0`` +M``#VP@%T'NLDQD,)_TB)WDB)[^@`````ZV*02(G02-/XJ`%U"(/!`4`X\77N +M2(GOZ`````!(B<9(A<!T/TB+4VA(B4-H2(U#8$B)!DB)5@A(B3*`0PX!2(E> +M4,9&2`7&1DD`QH:!````#[D!````N@$```!(B=_H`````$B#Q`A;7<-F9F:0 +M9F9FD$B#["A(B1PD2(EL)`A,B60D$$R);"083(ET)"!)B?Q(B?5(BYZ(```` +M#[9&0CPD#X<2!@``#[;`_R3%``````^W1DX/M]#VP@1T#&;'1DX!`,9&0@'K +M0V:#^"!U#&;'1DX(`,9&0A'K,832>17V1DD#=`\D?X/("&:)1D[&1D(-ZQCV +MP@AT!L9%0@?K#?;&`G0(QD5'`,9%0AY(B>Y,B>?H`````.F=!0``N0$```"Z +M`@```+X!````2(GOZ`````#I@04``+D!````N@````"^`0```$B)[^@````` +MZ64%``"Y`0```+H!````O@$```!(B>_H`````.E)!0``N0$```"Z8````+X! +M````2(GOZ`````#I+04```^V3DA!N`$```"Z8````+X!````2(GOZ`````#I +M#`4``$&X`0```+D```$$NB$```"^`0```$B)[^@`````Z>H$``!(BT,@@6`T +M___W_T&X`0```+D!````N@(```"^`````$B)[^@`````Z;T$``!!N`$```"Y +M`````+H"````O@````!(B>_H`````+\0)P``Z`````#ID00``$B+0R"!8#3_ +M__?_0;@!````N0$```"Z`@```+X`````2(GOZ`````#I9`0``$&X`0```+D` +M````N@(```"^`````$B)[^@`````OQ`G``#H`````.DX!```N0$```"Z`@`` +M`+X`````2(GOZ`````#I'`0``+D!````N@````"^`````$B)[^@`````Z0`$ +M``"Y`0```+H!````O@````!(B>_H`````.GD`P``0;@!````N?____^Z`0`` +M`+X`````2(GOZ`````#IP@,``+D!````N@````"^`````$B)[^@`````Z:8# +M```/MD9'3(MLQEA)B5U028EU8`^V1D=!B(6!````0<9%2@-!QD5)`$&`34@% +M@$,.`4B+4VA(C4-@3(EK:$F)10!)B54(3(DJOX`:!@#H`````$&`?"1#`'0F +MO0````#V0PT!=`_K&0^V0PV)Z4C3^*@!=1&#Q0%!.&PD0W?IZP6]`````$B+ +M4R"+0C2I```(`'0*)?__]_^)0C3K:4B-!.T`````28G&08'F^`<``+NX"P`` +M0(#]`W8=28L$)$@%@`$``$P!\(L`B04`````P>@3@^`!ZQQ)BP0D2`6``0`` +M28T$!HL`B04`````P>@3@^`!A,!U#[_H`P``Z`````"#ZP%UKF9!QX7(```` +M``!,B>Y,B>?H`````.F(`@``OT`-`P#H`````+D`````NB````"^`0```$B) +M[^@`````OQ`G``#H`````.E8`@``N0````"Z`0```+X`````2(GOZ`````"_ +M$"<``.@`````Z3("``!(BT,@@6`T___W_T&X`````+G_____N@$```"^```` +M`$B)[^@`````OQ`G``#H`````.G[`0``N0````"Z`````+X`````2(GOZ``` +M``"_$"<``.@`````Z=4!``#H`````.G+`0``9F9FD.@`````Z;T!``!!N`$` +M``"Y\````+J;````O@$```!(B>_H`````.F;`0``0;@!````N:#66BNZX`,` +M`+X!````2(GOZ`````#I>0$``$&X`0```+D`X`,`NJ0#``"^`0```$B)[^@` +M````Z5<!``!!N`$```"YY*@&`;K$`P``O@$```!(B>_H`````.DU`0``N0$` +M``"Z2`,``+X!````2(GOZ`````#I&0$``+]`#0,`Z`````"Y`0```+H@```` +MO@$```!(B>_H`````+\0)P``Z`````#IZ0```$&X`0```+D`````NB$```"^ +M`0```$B)[^@`````Z<<```"Y`0```+I@````O@$```!(B>_H`````.FK```` +M#[9.2$&X`0```+I@````O@$```!(B>_H`````.F*````QD,)`$B+OH@```#H +M`````.MXN0$```"Z`0```+X`````2(GOZ`````"_$"<``.@`````ZU5(BT,@ +M@6`T___W_T&X`0```+G_____N@$```"^`````$B)[^@`````OQ`G``#H```` +M`.LAN0$```"Z`0```+X`````2(GOZ`````"_$"<``.@`````N`$```!(BQPD +M2(ML)`A,BV0D$$R+;"083(MT)"!(@\0HPV9F9I!F9I!(@^P82(D<)$B);"0( +M3(ED)!!(B?M(B?4/MU8@9H'ZA0`/AXX````/M\(/MH0'8`@``#S_=']F@_I_ +M=R0/ML!(C11`2(T4D$C!X@5(`Y<X"0``2(M"4`^V4`CK7F9F9I`/MT8@9CV! +M`'<C#[?`#[:$!V`(``!(:<#(#P``2`.'B`D``$B+0`@/ME`(ZRT/MT8@#[:$ +M!V`(``!(C03`2,'@!4@#AV`)``!(BX"(````#[90".L%NO____^Y_____V:! +M?2"%`'<,#[=%(`^VC`-@"```2(NS8`D```^VPH#Z_W0>2)B`O`/F"```_W02 +M@/G_=`V`?20&=2IF9F:09F:02(-]>`!T#$B-=7A(B=_H`````$B)[DB)W^@` +M````Z0T!```/ML%(C03`2,'@!4R-)`9!#[9$)$(\&@^$A0```#P:=PX\$0^% +MNP```&9F9I#K$SP;='<\'`^%J0```&:0Z9P```!(BY,($0``2('"3`@``$$/ +MMD0D4,'@"$B82`'"BPJ)#0`````/MLE(BY,($0``2('"1`@``$$/MD0D4,'@ +M"$B82`'"BP*)!0````#!X`@)P4&)C"0$`0``0<9$)$(:ZT)!QD0D0AOK.DB+ +M@P@1``!(!4P(``!!#[94)%#!X@A(8])(`="+`(D%`````(/@]T&(1"1(0<9$ +M)$(<ZP9!QD0D0AU(@WUX`'0,2(UU>$B)W^@`````2(GN2(G?Z`````!,B>9( +MB=_H`````$B+'"1(BVPD"$R+9"002(/$&,-F9F:09F:09F:09F:02(/L"$B) +M_DB+/^@`````2(/$",-F9F:09F9FD&9F9I!(@^PX2(E<)`A(B6PD$$R)9"08 +M3(EL)"!,B70D*$R)?"0P28G_2(GS2(MN4`^W=CA(8\:Z`````("\!V`(``#_ +M#X0Z"0``#[9#2CP)#X1.!0``/`EW2CP%#X27````/`5W'CP##X2M````/`1F +M9F:0#X7L"```Z=$```!F9I!FD#P'#X2A!```/`=F9I!F9I`/AQP$``#I@0(` +M`&9FD&:0/!8/A'X#```\%F9FD&9FD'<C/!0/A-$%```\%&9F9I`/A]L"```\ +M"@^%E`@``&:0Z3L%```\&@^$'P(``#S_D`^$J04``#P7#X5T"```9I#I1@,` +M``^V=T-`A/9F9F:0#X2'````#[95#4&\`````/;"`71MZW9(BT4@@6`T___^ +M_TB+>U"Y`````+H!````2(G>Z`````"_!0```.@`````N@$```#I-`@``+D` +M````N@````!(B=Y(B>_H`````+]0PP``Z`````"Z`0```.D+"```2(G01(GA +M2-/XJ`%U$4&#Q`%!./1UZNL&0;P`````#[932$B)T(/@!DB#^`9U"?;"`0^% +MQ@```$B+52"+0C2I```!`'0-)?___O^)0C3IJP```$J-!.4`````28G&08'F +M^`<``$&]$"<``)!)BQ=!@/P#=A=)C806@`$``(L`B04`````)0```0#K%4F- +MA!:``0``BP")!0`````E```!`(7`="Q!@/P#=A-)C806@`$``,<````!`.DW +M!P``28V$%H`!``#'`````0#I)`<``+_H`P``Z`````!!@^T!=8O&0TL"QD-* +M_TB)WDR)_^@`````N@$```#I#@<``/9%"@%T-$B)WDB)[^@`````A,!U)4&] +M^@```$B)WDB)[^@`````A,!U$+_H`P``Z`````!!@^T!=>%!@/P#=B9)BP=( +M!8`!``!*C13E`````('B^`<``$@!T(L0B14`````B1#K)$F+!T@%@`$``$J- +M%.4`````@>+X!P``2`'0BQ")%0````")$$B+>U!(B=[H2.;__[\@3@``Z``` +M``"Z`0```.ED!@``2,?'`````+@`````Z`````!(BVM03(ME`$R)Y^@````` +M2(G!2(7`=1'&@^D````!N@$```#I*@8``,9`..'&0#D!QD`Z%P^W0SAFB4$@ +M2(M%`$B)02C'030`````2,=!2`````!(QX&@`````````$B)SDR)Y^@````` +MN@$```#IWP4``$C'QP````"X`````.@`````2(MK4$R+90!,B>?H`````$B) +MP4B%P'41QH/I`````;H!````Z:4%``#&0#CAQD`Y`<9`.A@/MT,X9HE!($B+ +M10!(B4$HQT$T`````$C'04@`````2,>!H`````````!(B<Y,B>?H`````+H! +M````Z5H%``!(B=Y(B>_H'^7__[H!````Z44%``!,BV4`3(GGZ`````!(B<(/ +MMDML2(7`=0[&@^D````!L@'I'P4``,9`..'&0#D!QD`Z!8A(.P^W0SAFB4(@ +M2(M%`$B)0BC'0C0`````2,="2`````!(QX*@`````````(A+;TB)UDR)Y^@` +M````N@$```#IS@0``$R+90!,B>?H`````$B)P@^V2VY(A<!U#L:#Z0````&R +M`>FH!```QD`XX<9`.0'&0#H$B$@[#[=#.&:)0B!(BT4`2(E"*,="-`````!( +MQT)(`````$C'@J``````````B$MQ2(G63(GGZ`````"Z`0```.E7!```3(ME +M`$R)Y^@`````2(G!2(7`=1'&@^D````!N@$```#I,@0``,9`..'&0#D!QD`Z +M!@^W0SAFB4$@2(M%`$B)02C'030`````2,=!2`````!(QX&@`````````$B) +MSDR)Y^@`````N@$```#IYP,``&9F9I!F9I!,BV4`3(GGZ`````!(B<%(A<!U +M$<:#Z0````&Z`0```.F[`P``QD`XX<9`.0'&0#H,#[=#.&:)02!(BT4`2(E! +M*,=!-`````!(QT%(`````$C'@:``````````2(G.3(GGZ`````"Z`0```.EP +M`P``3(ME`$R)Y^@`````2(G!2(7`=1'&@^D````!N@$```#I2P,``,9`..'& +M0#D!QD`Z%L9`/`$/MT,X9HE!(,:!F`````](BT4`2(E!*,=!-`````!(QT%( +M`````$C'@:``````````2(G.3(GGZ`````"Z`0```.GU`@``QD-*_V;'@\@` +M``````^V4TA(B="#X`9(@_@&=07VP@%U%4B#>V``=0Y(B>_H`````(B#Z@`` +M`(![2P)U#TB+<U!(B=I,B?_H`````/9%#`)U&+L`````3(UE8(!]#@`/A4`! +M``#I5P(``$B+=4`/MDY&#[;1#[9&.X/H`3G"?2Z-00&(1D:`1D<!QD9"``^W +M1DZ#X/Z#R`AFB49.3(G_Z`````"Z`0```.E'`@``.<)T%+L`````3(UE8(!] +M#@!U*>D1`@``QD9"``^W1DZ#X/:`S`)FB49.3(G_Z`````"Z`0```.D+`@`` +M3(GGZ`````!(B<%(BT5H2(E-:$R)(4B)00A(B0B`>4K_='R`N>D`````#X2] +M`0``#[912$B)T(/@!DB#^`9U(O;"`71%#[:1@0```$B+<5A(B>_H`````+H! +M````Z:D!``!(@_@$#X6!`0``]L(!#X1X`0``2(G.3(G_Z`````"Z`0```.F! +M`0``2(G.3(G_Z`````"Z`0```.EL`0``QH'I`````(/#`3A=#@^&.P$``.E) +M____9F9FD$R)Y^@`````2(G!2(M%:$B)36A,B2%(B4$(2(D(@'E*_P^$D``` +M`(!Y20`/A7\```"`N>D`````#X3T````#[912$B)T(/@!DB#^`9U(O;"`71( +M#[:1@0```$B+<5A(B>_H`````+H!````Z>````!(@_@$#X6X````]L(!9F:0 +M#X2L````2(G.3(G_Z`````"Z`0```.FU````2(G.3(G_Z`````"Z`0```.F@ +M````QH'I`````(/#`0^V10XXV`^'.O___SC#=5*$P'1.NP````!,C65@3(GG +MZ`````!(B<)(BT5H2(E5:$R)(DB)0@A(B1`/MD))/")T!#P-=12^"@```$B) +MU^@`````N@$```#K/(/#`3A=#G>[QD4)_TB)[DR)_^@`````N@$```#K'KH! +M````ZQ=%A>UF9F:0#X3?^/__Z??X__]F9I!FD(G02(M<)`A(BVPD$$R+9"08 +M3(ML)"!,BW0D*$R+?"0P2(/$.,-F9F:09F9FD&9FD$B#["A(B5PD"$B);"00 +M3(ED)!A,B6PD($B)^TF)]`^W3B!F@?F%``^'Z`````^WP0^VM`=@"```0(#^ +M_P^$TP```&:#^7]W*$`/MM9(BX\X"0``2(T$4DB-!()(P>`%2(M$"%`/MD`( +MZTEF9I!F9I!F@?F!`'<=0`^VQDB+EX@)``!(:<#(#P``2(M$$`@/MD`(ZQ]` +M#[;&2(N78`D``$B-!,!(P>`%2(N$$(@````/MD`(//]T7@^VP`^VK`/F"``` +M0(#]_W080(#^_W0200^V3"0D@/D&=6=F9F:09F:00(#]_W0O0(#^_W0I0`^V +MQDB-%$!(C1202,'B!4F)U4P#JS@)``!!QD5+`D'&14K_Z9\"``!)@WPD>`!T +M#4F-="1X2(G?Z`````!,B>9(B=_H`````.FE`@``9F:09F:00`^VQDB-%$!( +MC1202,'B!4F)U4P#JS@)``!)BU0D2(3)#X2Y````00^V1"0Z/`8/A-`````\ +M#`^$R````$$/MY7(````C4(!9D&)A<@```!F@_H)=AM!@'U*!G040<9%2P)! +MQD5*_T&`94S^Z0,"``"_Z`,``.@`````00^V54A(B="#X`9(@_@&=3KVP@%T +M-4$/MI6!````28MU6$`/ML5(C3R`2(T\N$B-O/O``0``0;@`````N0(```#H +M`````.G9`0``0<9%2@-,B>Y(B=_H`````.G$`0``9F:09I!!#[9$)#H\`74+ +M0<9%2@20Z7\!```\`G4,0<9%2@5FD.EO`0``/`,/A<\```!(B=9!@'U*!74K +M9H%Z!,@W9F:0=2!!#[=U.$C'QP````"X`````.@`````0<9%2@;I,@$``$R) +M[^@`````28V]F````+XH````Z"6___^$P'5!28V]A````+X4````Z!"___^$ +MP'4L28V]P````+X(````Z/N^__^$P'4728-]>`!T$$'&14H7Z=H```!F9I!F +M9I!F08.]R````!UV%$'&14L"0<9%2O]!@&5,_NFU````O^@#``#H`````$'& +M14H:9D&#A<@````!Z9@````\%W4*0<9%2A7IB@```#P89F9FD'4'0<9%2A;K +M>SP$9F:09I!U!T'&14H'ZVL\!69FD&:0=0=!QD5*".M;/`9F9I!FD'4'0<9% +M2@GK2SP,9F:09I!U!T'&14H*ZSL\%F9FD&:0=0=!QD5*%.LK/`YF9I!FD'4B +M28-\)'@`=`U)C70D>$B)W^@`````3(GF2(G?Z`````#K*TF#?"1X`'0-28UT +M)'A(B=_H`````$R)YDB)W^@`````3(GN2(G?Z`````!(BUPD"$B+;"003(MD +M)!A,BVPD($B#Q"C#9F9FD&9F9I!(@^PH2(D<)$B);"0(3(ED)!!,B6PD&$R) +M="0@28G^28GT2(MN4`^W1CBZ`````("\!V`(``#_#X3+`@``#[9&2CP4#X3' +M````/!1W.#P-D`^$^P```#P-=PX\!69F9I`/A9T"``#K33P.9F:09F:0#X3O +M````/`\/A84"``!FD.GR````/!L/A)4````\&Y!W$#P8=#D\&0^%90(``&:0 +MZT0\''17//\/A54"``!FD.G&````O@````!,B>=F9I#H`````+H!````Z3D" +M``"^`0```$R)Y^@`````N@$```#I(@(``+X!````3(GGZ`````"Z`0```.D+ +M`@``2(GWZ`````"Z`0```.GY`0``D$B)]^@`````N@$```#IY@$``/9&:01T +M%TB)]V9FD&:0Z`````"Z`0```.G)`0``2(GWZ`````"Z`0```.FW`0``2(GW +MZ`````"Z`0```&:0Z:,!``!(B??H`````+H!````Z9$!``#&1DK_@'T.``^$ +MV0```+L`````3(UM8&:03(GOZ`````!(B<%(BT5H2(E-:$R)*4B)00A(B0B` +M>4K_#X2)````@'E)``^%A@```("YZ0`````/A#4!```/ME%(2(G0@^`&2(/X +M!G4B]L(!=$@/MI&!````2(MQ6$B)[^@`````N@$```#I"`$``$B#^`0/A?D` +M``#VP@%F9I`/A.T```!(B<Y,B??H`````+H!````Z=T```!(B<Y,B??H```` +M`+H!````Z<@```#&@>D`````@\,!#[9%#CC8#X<Z____.,,/A8\```!!#[9$ +M)$D\(G06/`UT$D&\`````$R-;6"`?0X`=1;K;[X*````3(GGZ`````"Z`0`` +M`.MV3(GOZ`````!(B<-(BT5H2(E=:$R)*TB)0PA(B1@/MD-)/")T!#P-=2A( +MB=Y(Q\<`````N`````#H`````+X*````2(G?Z`````"Z`0```.LE08/$`40X +M90YWI<9%"?](B>Y,B??H`````+H!````ZP6Z`0```(G02(L<)$B+;"0(3(MD +M)!!,BVPD&$R+="0@2(/$*,-F9I!F9I!F9I!!5T%6055!5%532(/L*$F)_0^W +M5B!!N/____]$B<!F@?J%``^'@`````^WPD0/MH0'8`@``$2)P$&`^/]T:V:# +M^G]W(D$/MM!(BX\X"0``2(T$4DB-!()(P>`%2(M$"%`/MD`(ZT-F@?J!`'<= +M00^VP$B+EX@)``!(:<#(#P``2(M$$`@/MD`(ZQ]!#[;`2(N78`D``$B-!,!( +MP>`%2(N$$(@````/MD`(#[;`00^VO`7F"```2(T$OTB-!(=)C83%P`$``$B) +M1"0800^VP$B-%$!(C1202,'B!4D#E3@)``!(B50D($B+3D@/M@'!X!@/ME$! +MP>(0"=`/ME$#"=`/ME$"P>(("=#!Z`-(C6D(@_@0NA`````/1\*)P$R--,%, +M.?4/AX0!``#'1"04`````$B-!+](C02'2,'@`TZ-/"A)C9?``0``2(E4)`A) +MC80%(`(``$B)!"1F9F:09F:02(GOZ`````!!B<1(C74$N00```#\2,?'```` +M`/.F#Y?"#Y+`.,(/A10!``!!@_P0#X<*`0``@T0D%`&#?"04`74K2(M$)"#' +M@)`!```!````1(F@E`$``$B+10!(BU0D($B)@MP```#ITP```$R)[^@````` +M2(G#2(7`#X3,````QD!+!L9`2@5FQX#(``````#&0$@&QD!)`$C'0'@```4` +MQX"0`0```0```$2)H)0!``!(BU0D($B+@M0```!(B8/4````2(N"U````$B) +M@\P```!(BT4`2(F#W````$B+1"082(E#4$B)Q^@`````B(/J````9H-+:!!( +MBWPD&.@`````/`EV!F:!2V@``DB+5"0(@$(.`4F+AR@"``!)B9\H`@``2(L4 +M)$B)$TB)0PA(B1A(B=Y,B>_H`````)!(@\4(3#GU#X:S_O__2(/$*%M=05Q! +M74%>05_#9F9FD$%7059!54%455-(@>Q(`@``2(E\)!A(B70D$(G02(M7"$B) +M5"0@2(L*2(E,)"@/ME=8B%0D-TB)^4B#P4A(B4PD.$@Y3T@/A)$"``"`?"0W +M``^$A@(```^VP(E$)`Q(BWPD..@`````3(U@\$R-1"1`BTPD#+H!````2(MT +M)"!(BWPD$.@`````3(U\)$"`?"1```^$!0$``$&]`````$V-M"34````00^V +M[4ACQ4B)PTC!XP1)C7P?;+H(````3(GVZ`````"$P`^$L0```$F-5!]@#[9" +M"(/@#T&(A"3J````00^W3"1H9H'AW_V)R(/($&9!B40D:`^V0@C`Z`0\"74+ +MB<B#R#!F08E$)&A(8\5(P>`$00^V1`=HP.@$/`IU"&9!@4PD:``"2(M,)#A( +MBU$(28U$)!!(B4$(28E,)!!)B50D&$B)`D'V1"1,`G1#08!D)$S]28M4)$!( +MA=)T,TB+1"0H2(NP\`@``+\&````Z`````#K&V9FD&9FD$&#Q0%%."]V%69F +M9I!F9I#I$O___T4X+P^')`$``$R)XKX&````2(M\)"#H`````$&`O"2#```` +M`'0D9F:09I!(BWPD*.@`````OP$```#H`````$&`O"2#`````'7A28N\)"`! +M``!(A?]T$T$/MK0D#0$``+H!````Z`````!)BWPD6$B%_W0300^VM"2!```` +MN@$```#H`````$F+1"1`2(7`=&U(QT!@`````$'V1"1,!'4>2(M\)"CH```` +M`$F+="1`N@$```!(BWPD*.@`````28M4)$!(BTPD*$B+L?`(``"_!@```.@` +M````28M4)$!(BT0D*$B+L/`(``"_`0```.@`````2<=$)$``````28L4)$F+ +M1"0(2(E""$B)$$B+5"0@@&H.`4B+3"08@&E8`4R)YDB+?"0HZ`````!(BU0D +M.$B+1"082#E02'0+@&PD-P$/A8']__](@<1(`@``6UU!7$%=05Y!7\.005=! +M5D%505154TB!["@"``!)B?])B?5(B=5(BP=(B40D$$0/MN%(C5PD($F)V$2) +MX;H!````2(G^3(GOZ`````!$B>),B>Y(B>_H`````$R+=4A)@^X02(U=2$F- +M1A!(.=AT+T$/MD9)/`UT%3PB=3/K#T$/MD9)/`UT!CPB9I!U(D'&1DH%0<9& +M2P3&1"0>`>L%QD0D'@"`?"0@`'48Z=T!``!-BW8028/N$$F-1A!(.=AUONO< +MQD0D'P!)C5=@2(E4)`A,BV5(28/L$$F-1"002#G##X2\`0``#[9$)!](P>`$ +M3(VL!(P```!F9F:028V\)-0```"Z"````$R)[N@`````A,`/A6`!``!-BV0D +M$$F#[!!)C40D$$@YV`^$<P$``.O*08!'#@'&04H%QH'H`````,9!2P1FQX'( +M``````#&@<H`````2,=!>```!0`/MGPD'TACQTC!X`1(C90$@`````^V0@2( +M04@/MD(%B$%)3(EY4`^V0@B#X`^(@>H````/MW%H9H'FW_V)\(/($&:)06@/ +MMD((P.@$/`EU"8GP@\@P9HE!:$ACQTC!X`0/MH0$B````,#H!#P*=09F@4EH +M``)(B6E82&/'2,'@!`^VE`2&````B)&!````2(N$!(P```!(B8'4````2(F! +MS````(!%6`%)BT=H28E/:$B+5"0(2(D12(E!"$B)"$B+55!(C4$02(E%4$B) +M61!(B5$82(D"#[912$B)T(/@!L9$)!X`2(/X!G4P]L(!=!D/MI&!````2(GN +M3(G_Z`````#&1"0>`.L22(G.2(M\)!#H`````,9$)!X`@$0D'P$/MD0D'SA$ +M)"`/AT3^__^`?"0>`'0EO@H```!,B??H`````.L62(M\)!#H`````$B)P4B% +MP`^%>?[__TB!Q"@"``!;74%<05U!7D%?PY!!5T%6055!5%532('L2`(``$F) +M_4B)="0H2(LO#[9'*(A$)#=(C5=(2(E4)#A(.5=(#X2A`P``A,`/A)D#``!( +MC4PD0$B#P5Q(B4PD($B-1"1`2(/`5$B)1"082(U4)$!(@\)`2(E4)!!(C4PD +M0$B#P1!(B4PD"$B-1"1`2(/`($B)!"1(BWPD..@`````3(U@R$&X`````+D` +M````N@````!,B>Y(BWPD*.@`````08G'A,`/A`L#``!!O@````"[`````(E< +M)#!!N`````")V;H!````3(GN2(M\)"CH``````^VP$C!X`1(@\!D2#T``@`` +M#X>Y`0``3(U$)$")V;H!````3(GN2(M\)"CH`````+H(````3(GF2(M\)"#H +M`````(3`#X2&`0``2(M,)#A(BU$(28U$)#A(B4$(28E,)#A)B50D0$B)`@^V +M1"1"08A$)%E(BW0D&$R)[^@`````//]T%@^VP$AIP,@/``!(`X6("0``28E$ +M)!!%A/9T7P^V1"1#T>B#X`'!X`1!#[94)%V#XN\)PD&(5"1=#[9$)$/!Z`.# +MX`'!X`6#XM\)PD&(5"1=#[9$)$/!Z`*#X`'!X`.#XO<)PD&(5"1=#[9$)$9! +MB(0DNP```.FY````#[9$)$)!B$0D64V);"0(#[9$)$9!B(0DNP````^W1"1$ +M08E$)&`/MX0DD````&9!B80DN`````^VA"22````08B$)+H```!(BX0D@``` +M`$F)A"2H````2(M4)!!(BT((28F$)+````!(BT0D4$F)1"1X2(M,)`A(BT$( +M28F$)(````!)C90DB````$B+1"1@28F$)(@```!(BPPD2(M!"$B)0@A(BT$0 +M2(E"$$B+1"1X28F$)*````"+3"0P3(GB2(MT)"A,B>_H`````.GY````08/& +M`8/#`44X_@^$`@$``.G]_?__3(GWZ`````!(C5CP2(G:O@8```!,B>_H```` +M`("[@P````!T'F9FD$B)[^@`````OP$```#H`````("[@P````!UY4B+0T!( +MA<!T64C'0&``````]D-,!'492(GOZ`````!(BW-`N@$```!(B>_H`````$B+ +M4T!(B[7P"```OP$```#H`````$B+4T!(B[7P"```OP8```#H`````$C'0T`` +M````2(L32(M#"$B)0@A(B1!!@&T.`4&`;"18`4B)WDB)[^@`````33ET)$@/ +MA2S___]!@&TH`4R)YDB)[^@`````2(M$)#A).45(="&`;"0W`70:9I#IO_S_ +M_TV-="1(33ET)$B0#X7R_O__Z\1(@<1(`@``6UU!7$%=05Y!7\-F9I!F9I!! +M5T%6055!5%532('L.`(``$B)?"082(GU2(L&2(E$)"!(B?Y(B>_H`````$&X +M`````+D`````N@````!(B>Y(BWPD&.@`````B$0D+X3`#X1N`P``0;\````` +M0;X`````2(U52$B)5"0(2(U-8$B)#"1!N`````!$B?&Z`0```$B)[DB+?"08 +MZ``````/ML!(P>`$2(/`9$@]``(```^'#`,``$R-1"0P1(GQN@$```!(B>Y( +MBWPD&.@`````3(UD)#!)C70D7$B)[^@`````//\/A=@"``!(BWPD(.@````` +M2(G#2(7`#X3L`@``@$4H`<9`6`!)BT0D7$B)`TF-="142(GOZ``````\_W0: +M#[;`2&G`R`\``$B+="0@2`.&B`D``$B)0Q!!#[9$)`*(0UE!#[9$)`/1Z(/@ +M`<'@!`^V4UV#XN\)PHA374$/MD0D`\'H`X/@`<'@!8/BWPG"B%-=00^V1"0# +MP>@"@^`!P>`#@^+W"<*(4UU(B6L(00^V1"0&B(.[````28M$)`A(B4-P00^V +M1"0'B$-:00^W1"0$B4-@00^W1"109HF#N````$$/MD0D4HB#N@```$F+1"1` +M2(F#J````$F+1"1(2(F#L````$F+1"002(E#>$F+1"082(F#@````$B-BX@` +M``!)C50D($F+1"0@2(F#B````$B+0@A(B4$(2(M"$$B)01!)BT0D.$B)@Z`` +M``!(BU502(U#.$B)15!(BTPD"$B)2SA(B5-`2(D"08`\)``/A&H!``!!O0`` +M``!(C7-(2(ET)!!(BWPD(.@`````2(G!2(7`#X1O`0``@$4.`<9`2@7&@.@` +M````QD!+!$C'0'@```4`9L>`R```````00^W_4ACQTC!X`1)C50$8`^V0@2( +M04@/MD(%B$%)2(EI4$B)65@/MD(&B(&!````#[9""(/@#XB!Z@````^W<6AF +M@>;?_8GP@\@09HE!:`^V0@C`Z`0\"74)B?"#R#!FB4%H2&/'2,'@!$$/MD0$ +M:,#H!#P*=0IF@4EH``)F9F:02&/'2,'@!$F+1`1L2(F!U````$B)@<P```"` +M0U@!2(M%:$B)36A(BQ0D2(D12(E!"$B)"$B+4U!(C4$02(E#4$B+="002(EQ +M$$B)41A(B0(/ME%(2(G0@^`&2(/X!G4F]L(!=!0/MI&!````2(G>2(GOZ``` +M``#K#4B)SDB+?"0@Z`````!!@\4!00^V!"1F1#GH#X>L_O__9F9FD&9FD$&# +MQP%!@\8!1#I\)"\/A:_\__^`?0X`=1'&10G_2(GN2(M\)"#H`````$B!Q#@" +M``!;74%<05U!7D%?PV9F9I!!5T%6055!5%532(/L&$F)_DF)]$&X`````+D` +M````N@````#H`````$&)Q83`=#:]`````+L`````3(U\)!>03(GYB=I,B>9, +MB??H`````(!\)!?^#X6N````@\4!@\,!1#CM==I!#[9$)%B#Z`%!B$0D6(3` +M='M)BRPD0<9$)%@`28M<)$A(@^LX28U4)$A(C4,X2#G0='!(@WL0`'5`ZP=( +M@WL0`'4W0<9$)%@!3(GF3(GWZ``````/MHN[````2(N]L!```$G'P`````!( +MB=I,B>;H`````.LM9F9FD$B+6SA(@^LX2(U#.$@YT'6QZQ9,B>9,B??H```` +M`$R)YDR)]^@`````2(/$&%M=05Q!74%>05_#9F9FD&9F9I!!54%455-(@^P( +M2(G]28GT3(LONPH```!,B>9(B>_H`````(3`=0^_Z`,``.@`````@^L!=>)! +M#[9U0T"$]G0B#[95#;D`````]L(!=`SK$DB)T$C3^*@!=0B#P0%`./%U[DF+ +M%"1)BT0D"$B)0@A(B1"`;0X!3(GF3(GOZ`````#V10P"=$E(BW5`2(7V=1A, +MB>_H`````$B)QDB%P`^$4@$``$B)14!,B2Y(B:Z(````QD9&`,9&1P#&1D(` +M9H-.3@1,B>_H`````.DF`0``2(M%0$B%P`^$N````$B-L)````!)BWTHZ``` +M``!(BW5`3(GOZ`````!,C65@3#EE8`^$A@```$R)Y^@`````2(G#2(M`0$B% +MP'192,=`8`````#V0TP$=1E,B>_H`````$B+<T"Z`0```$R)[^@`````2(M3 +M0$F+M?`(``"_`0```.@`````2(M30$F+M?`(``"_!@```.@`````2,=#0``` +M``"`;0X!2(G>3(GOZ`````!,.65@#X5Z____2,=%0`````"`?0X`=!)(C7U@ +MZ`````!(B<&`;0X!ZPM,B>_H`````$B)P4B%R70Y2(M5:$B)36A(C45@2(D! +M2(E1"$B)"H!%#@%(B6E0QD%(!<9!20#&04L&QD%*`TB)SDR)[^@`````2(/$ +M"%M=05Q!7<-F9F:09F9FD&9F9I!F9I!(@^PH2(E<)`A(B6PD$$R)9"083(EL +M)"!(B?M(B?4/MTX@9H'YA0`/AY4````/M\$/MK0'8`@``$"`_O\/A(````!F +M@_E_=RA`#[;62(N/.`D``$B-!%)(C02"2,'@!4B+1`A0#[9`".M)9F:09F:0 +M9H'Y@0!W'4`/ML9(BY>("0``2&G`R`\``$B+1!`(#[9`".L?0`^VQDB+EV`) +M``!(C03`2,'@!4B+A!"(````#[9`"$`/MM8\_W0'9H'Z_P!U(TB#?7@`=`Q( +MC75X2(G?Z`````!(B>Y(B=_H`````.D]`0``#[;`#[:,`^8(```/M\)(C11` +M2(T4D$C!X@5)B=5,`ZLX"0``@'TD``^$K0```$B-!(E(C02!3(VDP\`!``!! +M#[9,)`T/ME4[#[9U.D4/MD0D#DC'QP````"X`````.@`````28M5`$F+10A( +MB4((2(D008!L)`X!3(GN2(G?Z`````!(B>Y(B=_H``````^V>T-`A/\/A*(` +M``!!#[9T)`VY`````$#VQ@%U#^L9#[;*2(GP2-/XJ`%T$8G.2(G?Z`````#K +M=KH`````@\(!0#CZ==KK9V9FD&:02(T$B4B-!(%,C:3#P`$``(!].@%U++\0 +M)P``Z`````!(B>Y(B=_H`````+D!````N@````!,B>Y,B>?H`````.L@OU## +M``#H`````$B)[DB)W^@`````3(GN3(GGZ`````!(BUPD"$B+;"003(MD)!A, +MBVPD($B#Q"C#9F:09I!!5T%6055!5%532(/L"$B)^TF)]4&)UD&)STB+!TB) +M!"2`?PX`='F]`````$R-9V!,B>?H`````$B)PDB+0VA(B5-H3(DB2(E""$B) +M$$PY:EAU#40XLH$```!T#69F9I"#Q0%`.&L.=\=`.&L.=#%!@/]0=2O&0DL& +MQD)*!<9"2`?&0DD`3(EJ6$B)6E#&@LH`````2(G62(L\).@`````2(/$"%M= +M05Q!74%>05_#D$B#[#A(B5PD"$B);"003(ED)!A,B6PD($R)="0H3(E\)#!( +MB?U)B?0/MU8@9H'ZA0`/AXX````/M\(/MH0'8`@``#S_=']F@_I_=R0/ML!( +MC11`2(T4D$C!X@5(`Y<X"0``2(M"4`^V4`CK7F9F9I`/MT8@9CV!`'<C#[?` +M#[:$!V`(``!(:<#(#P``2`.'B`D``$B+0`@/ME`(ZRT/MT8@#[:$!V`(``!( +MC03`2,'@!4@#AV`)``!(BX"(````#[90".L%NO____^Y_____V9!@7PD((4` +M=PY!#[=$)"`/MHP%8`@```^VP@^VA`7F"```2(T4@$B-%)!,C;35P`$```^V +MP4B-!,!(P>`%3(NM8`D``$D!Q4&`?"0\`@^%@````$$/MD0D0"7P````@_@@ +M=`6#^!!U:T$/ME0D0(G0@^`/@_@!=2B)T8'A\````$&X`0```+H"````O@`` +M``!,B>_H`````.GS"@``9F:000^V14=)BU3%6$$/MD0D0"7P````@_@@#Y3` +M@\`(B(+J````2(M"8&:!8$[__NF]"@``00^V1"0DA,!T.XG#28-\)'@`=`U) +MC70D>$B)[^@`````3(GF2(GOZ`````"`^P(/A8@*``!,B>Y(B>_H`````.EX +M"@``0<>%"`$```````!!#[9%0CPD#X<#"@``#[;`_R3%`````$F+1B#V0#8( +M#X0B"@``Z4<&``!F9I!(BY4($0``2('"3`@``$$/MD50P>`(2)A(`<*+`HD% +M`````(/X!;H%````#T?"08A%.T&`?@\`=`]!QD5"`$'&1@\`Z9L)``!!QD5" +M`NF1"0``2(N5"!$``$B!PDP(``!!#[9%4,'@"$B82`'"BP*)!0`````/ML!F +M08E%/$B+E0@1``!(@<)$"```00^V15#!X`A(F$@!PHL"B04`````B<+!Z@AF +M08E5/L'@"&9!"44\9H'Z0$&X`P```+H9````#T3"08A%0ND6"0``2(N5"!$` +M`$B!PD0(``!!#[9%4,'@"$B82`'"BP*)!0````!!B$4Y2(N5"!$``$B!PDP( +M``!!#[9%4,'@"$B82`'"BP*)!0````")P*@(=`=!QD4Z#.L@J`1T"D'&13H+ +M9F:0ZQ*#X`)(@_@!&<#WT(/@"D&(13I!#[9%1SP!&<"#X`*#P!1!B$5"Z8<( +M``!(BX4($0``2`5,"```00^V55#!X@A(8])(`="+`(D%`````(/("$&(14A! +MQD5"!>E3"```0<9%0@!!#[=%3F8E]_V#R`)F08E%3DF#?"1X`'0-28UT)'A( +MB>_H`````$R)YDB)[^@`````0<9&"?],B?9(B>_H`````.EE"```0<9%0@3I +M_@<``$$/MD5'@\`!08A%1T$Z13MS5T'&14(628-\)'@`=`U)C70D>$B)[^@` +M````3(GF2(GOZ`````!!QX60````@(0>`$G'A:``````````38FMJ````$F- +MM9````!(BWTHZ`````#I\@<``$'&14<`0<9%0A>_(*$'`.@`````Z7P'``!! +MQD5"%.ER!P``0<9%0@CI:`<``$'&14(4Z5X'``!!QD5*`.@`````28F%\``` +M`$'&14(5Z4,'``!(BY4($0``2('"3`@``$$/MD50P>`(2)A(`<*+&HD=```` +M``^VVTB+E0@1``!(@<)$"```00^V15#!X`A(F$@!PHL"B04`````Z`````!) +MB87X````@^,/@_L#=0I!QD5""NG<!@``08N%\`````5`#0,`03F%^````'D: +M00^V14H\"G<10<9%0A6#P`%!B$5*Z:T&``!!#[9%1TF#?,58``^$U`$``$C' +M!"0`````08!^#@!T0D&_`````$F-7F!(B=_H`````$B)!"1!#[9%1TB+%"1) +M.53%6'0<2(M#"$B)4PA(B1I(B4((2(D008/'`44X?@YWR$&`;@X!2(L,)$B+ +M04!(A<`/A%,!``!(QT!@`````/9!3`1U-TB)[^@`````2(L4)$B+0F#&@!P! +M```!2(MR0+H!````2(GOZ`````!(BPPD2(M!8,:`'`$```!(BP0D2(M00$B+ +MM?`(``"_`0```.@`````2(L4)$B+0D!(BXB`````2(7)=#$/MT(X2,>$Q6`$ +M````````2(M"0$C'@(``````````2(MR0$B+OI````"Z_______12(L,)$B+ +M04!(A<!T.$B+D(@```!(A=)T+`^W03A(QX3%8`0```````!(BT%`2,>`B``` +M``````!(BT%`2(NXD````/_22(L$)$B+4$`/MH+,````C02`#[92`@'02)@/ +MMH@`````#[95.@^V=3E(BP0D1`^V@(,```!(Q\<`````N`````#H`````$B+ +M#"1(BU%`2(NU\`@``+\&````Z`````!(BP0D2,=`0`````!!#[9%1TG'1,58 +M`````$B+-"1(B>_H`````$'&14()Z;X$``!(BY4($0``2('"3`@``$$/MD50 +MP>`(2)A(`<*+"HD-``````^VR4B+E0@1``!(@<)$"```00^V15#!X`A(F$@! +MPHL"B04`````P>`("<A!B45408!]0@IT!ZD```$`=`I!QD5""^E4!```0<9% +M0@Q!#[9%1TF#?,58`'1108!^#@`/A)0$``!!OP````!)C5Y@2(G?Z`````!( +MB<)!#[9%1TDY5,58=0=!@&X.`>LI2(M#"$B)4PA(B1I(B4((2(D008/'`44X +M?@YV#>O$2(GOZ`````!(B<)(A=(/A#H$``!!#[9%1TF)5,5800^V14N(@NH` +M``#IPP,``$B)[^@`````OP$```#H`````(/K`8/[_W0*28M&(/9`-@ATW$'& +M14()Z94#``!(BY4($0``2('"3`@``$$/MD50P>`(2)A(`<*+"HD-``````^V +MR4B+E0@1``!(@<)$"```00^V15#!X`A(F$@!PHL"B04`````#[;`P>`("<@E +M_P\``#T3`0``#Y3"/2,!```/E,&$TG40A,EU##TS`0``=4+I2`,``$'&14(8 +MA-*0=`I!QD5+".D'`P``A,EFD'0*0<9%2PGI]P(``#TS`0``#X7L`@``0<9% +M2PIF9F:0Z=X"``!!#[9-1@^VT4$/MD4[@^@!.<)]%HU!`4&(149!@$5'`4'& +M14('Z;0"``!!QD5'`$'&14(>Z:4"``!!QD5"`^F;`@``0<9%0B)F9I#IC@(` +M`$'&14(CZ80"``!!QD5"`^EZ`@``2(N5"!$``$B!PDP(``!!#[9%4,'@"$B8 +M2`'"BPJ)#0````!(BY4($0``2('"1`@``$$/MD50P>`(2)A(`<*+$HD5```` +M`(G0P>`(#[;)"<AF/0,1#X6C````B=#!Z`AF/453=`IF/4`##X6.````9D'' +M13P#$69!B44^9CU%4W4?08"]%0$```)T%4'&A14!```"0<>%&`$``!\```#K +M)F9!@7T^0`-U'4&`O14!```#=!-!QH45`0```T''A1@!```/^`,`0<:%'`$` +M``%,B>_H`````$'&A1P!````28M%`$B+N/`(``"^`````.@`````0<9%0@/I +M?0$``$'&14(A0<:%%0$```#I:P$``$B+E0@1``!(@<),"```00^V15#!X`A( +MF$@!PHL"B04`````2(N5"!$``$B!PD0(``!!#[9%4,'@"$B82`'"BP*)!0`` +M``!!QD5"'^D;`0``0<9%0B#I$0$``$B+E0@1``!(@<),"```00^V15#!X`A( +MF$@!PHL"B04`````2(N5"!$``$B!PD0(``!!#[9%4,'@"$B82`'"BP*)!0`` +M``!!#[9-1T$/MD4[C5$!08A51P^VR0^VP(/H`3G!N`8```"Z'P````],PD&( +M14+IF0```$B+E0@1``!(@<),"```00^V15#!X`A(F$@!PHL*B0T`````#[;) +M2(N5"!$``$B!PD0(``!!#[9%4,'@"$B82`'"BP*)!0````#!X`@)P4&)C00! +M``!!QD5"&NL]0<9%0AOK-DB+A0@1``!(!4P(``!!#[954,'B"$ACTD@!T(L` +MB04`````@^#W08A%2$'&14(<ZP5!QD5"'4F#?"1X`'0-28UT)'A(B>_H```` +M`$R)YDB)[^@`````3(GN2(GOZ`````#K,$'&14(8Z<+\__](B>]F9I#H```` +M`+\!````Z`````"[/D(/`.D!_/__9F9FD&9FD$B+7"0(2(ML)!!,BV0D&$R+ +M;"0@3(MT)"A,BWPD,$B#Q#C#9F9FD&9FD&9FD&9FD$B#[#A(B5PD"$B);"00 +M3(ED)!A,B6PD($R)="0H3(E\)#!(B?U(B?,/MTX@9H'YA0`/A]\````/M\$/ +MMK0'8`@``$"`_O\/A,H```!F@_E_=R)`#[;62(N/.`D``$B-!%)(C02"2,'@ +M!4B+1`A0#[9`".M#9H'Y@0!W'4`/ML9(BY>("0``2&G`R`\``$B+1!`(#[9` +M".L?0`^VQDB+EV`)``!(C03`2,'@!4B+A!"(````#[9`"#S_=%L/ML`/MHP% +MY@@``(#Y_W050(#^_W0/#[9[)$"`_P9U969FD&:0@/G_=#%`@/[_="M`#[;& +M2(T40$B-%)!(P>(%28G43`.E.`D``$'&1"1+`D'&1"1*_^FZ!P``2(-[>`!T +M#$B-<WA(B>_H`````$B)WDB)[^@`````Z<<'``!F9F:09F:00`^VQDB-%$!( +MC1202,'B!4F)U$P#I3@)``!!#[>T),@```!F@?ZK#7<&0(#_`G4Z2(-[>`!T +M#$B-<WA(B>_H`````$B)WDB)[^@`````0<9$)$K_0<9$)$L"3(GF2(GOZ``` +M``#I5@<``+H`````0(#_('4>2(M34`^V`H/@?SQQ=@D/ME(!@^(/ZP</ME(" +M@^(/1`^VZ4N-1*T`28U$A0!,C;3%P`$```^V0S@\&@^$Y@4``#P:=QP\$G1. +M/!60#X2)!@``A,`/A(X%``!FD.F[!@``/"4/A"<#```\)9!W$SP;#X6F!@`` +M9F:09F:0Z5P%```\G@^$%`0``#R@D`^%B@8``.E8!@``0(3_9I`/A<T"``!( +MBTM(@'LY`&:0=&9(A<ET2X!Y`8!U18!Y`@!U/P^V00,\/'<W#[;028VT)(0` +M``"X`````,8$,"!(@\`!2(/X%'7R@_H4#T/028V\)(0```")TDB-<03H```` +M`&9!QX0DR```````0<9$)$H9Z0@&``!!QD0D2ACV009`=1$/M@&#X!^#^`T/ +MA9$!``#K"P^V`8/@'X/X#74(0<9$)$D-ZP9!QD0D22)!#[9T)$E(Q\<````` +MN`````#H`````$B#>W@`=`Q(C7-X2(GOZ`````!(B=Y(B>_H`````$N-1*T` +M28U$A0"`O,7.`0````^$M04``$&^`````$N-1*T`28U$A0!(P>`#3(VD!2`" +M``!(C1PH3(V[P`$``$R)Y^@`````2(N3*`(``$B)@R@"``!,B2!(B5`(2(D" +M#[9`23PB=`0\#74*08/&`44X=PYWRDN-1*T`28U$A0`/MH3%S@$``$0X\`^% +M/04``(3`#X0U!0``0;P`````9L=$)`8``$&_`````$N-1*T`28U$A0!(P>`# +M3(VL!2`"``!(C1PH3(VSP`$``$R)[^@`````2(G"2(N#*`(``$B)DR@"``!, +MB2I(B4((2(D0#[9"23PB=`0\#743#[=".&8[1"0&<@AFB40D!DF)UT&#Q`%% +M.&8.=[1-A?\/A*P$``!!@']*_P^$H00``$'&1TK_3(G^2(GOZ`````#IC`0` +M`(/X`7410<9$)$D!0<9$)$K_Z48$``#V004!9I!T"&9!@4PD:``$2(MS2$B% +M]G1F28V4))@```"X`````,8$$`!(@\`!2(/X*'7R28V4),````"P`,8$$`!( +M@\`!2(/X"'7R28V,))@```!(C58(2(M&"$F)A"28````2(M""$B)00A(BT(0 +M2(E!$(M&($&)A"3`````08.\))`!````#X6X`P``0<9$)$H<Z:T#``"-1@%F +M08F$),@```"_$"<``.@`````0<9$)$H%Z8P#``!(BTM(0(3_#X69````#[91 +M!L'B"`^V007!X!`)P@^V00<)P@^V003!X!@)PD&)E"3D````#[81P>(8#[9! +M`PG"#[9!`L'@"`G"#[9!`<'@$`G0B<))B50D>$&#O"3D`````'4?9D&#A"3( +M`````;\0)P``Z`````!!QD0D2AOI"0,``(/X_W439D&!3"1H``1!QD0D2AOI +M\0(``$'&1"1*#>GF`@``0(#_(&:0=2Z`^@9T!8#Z`G4DC48!9D&)A"3(```` +MOQ`G``#H`````$'&1"1*!>FS`@``9F:02(-[>`!T#$B-<WA(B>_H`````$B) +MWDB)[^@`````3(GB3(GV2(GOZ`````#IKP(``$R+0TA`A/\/A<P```!!#[90 M"L'B"$$/MD`)P>`0"<)!#[9`"PG"00^V0`C!X!@)PD&)E"3D````00^V2`-( MP>$@00^V0`)(P>`H2`G!00^V`$C!X#A("<%!#[9``4C!X#!("<%!#[90!L'B M"$$/MD`%P>`0"<)!#[9`!PG"00^V0`3!X!@)PD@)T4F)3"1X0?9`#`%T!V9! M@TPD:@1!@[PDY`````!U'V9!@X0DR`````&_$"<``.@`````0<9$)$H;Z;@! -M``!F08-,)&@!0<9$)$H-Z:8!``!`@/X@9I!U,4&`^09T"D&`^0)F9F:0=2&- -M1P%F08F$),@```"_$"<``.@`````0<9$)$H;Z6T!``!(@WMX`'0,2(US>$B) -M[^@`````2(G>2(GOZ`````!,B>),B?9(B>_H`````.EL`0``0<9$)$H4Z3$! -M``!`@/X@=2Y!@/D&=`=!@/D"D'4AC4<!9D&)A"3(````OQ`G``#H`````$'& -M1"1*%.G]````0<9$)$H;Z?(```!`A/9U;4B+0TAF08-,)&@"9D"1J`69! -M@4PD:(0`@'@#`'4%@#@6=Q]F08.$),@````!OQ`G``#H`````$'&1"1*#>FI -M````]D`&!'0)9D"1J`NL'9D	"1J_4B+0WA)B40D,$C'0W@`````ZS=` -M@/X@=2I!@/D&=`9!@/D"=26-1P%F08F$),@```"_$"<``.@`````0<9$)$H% -MZU!F08-D)&CY0<9$)$H.ZT%`A/9U!V9!@TPD:@-!QD0D2@_K+4"$]G4+2(G> +M``!F08-,)&@!0<9$)$H-Z:8!``!`@/\@9I!U+H#Z!G0%@/H"=22-1@%F08F$ +M),@```"_$"<``.@`````0<9$)$H;Z7,!``!F9I!(@WMX`'0,2(US>$B)[^@` +M````2(G>2(GOZ`````!,B>),B?9(B>_H`````.EO`0``0<9$)$H4Z30!``!` +M@/\@=2Z`^@9T!8#Z`G4DC48!9D&)A"3(````OQ`G``#H`````$'&1"1*%.D# +M`0``9F:00<9$)$H;Z?4```!`A/]FD'5M2(M#2&9!@TPD:`)F08-,)&H!9D&! +M3"1HA`"`>`,`=06`.!9W'V9!@X0DR`````&_$"<``.@`````0<9$)$H-Z:H` +M``#V0`8$=`EF08-,)&H"ZP=F08-D)&K]2(M#>$F)1"0P2,=#>`````#K.$"` +M_R!U*X#Z!G0(@/H"9F:0=26-1@%F08F$),@```"_$"<``.@`````0<9$)$H% +MZU!F08-D)&CY0<9$)$H.ZT%`A/]U!V9!@TPD:@-!QD0D2@_K+4"$_W4+2(G> M2(GOZ`````!!@[PDD`$```$9P(/@$X/`!4&(1"1*9F9FD&9FD$B#>W@`=`Q( MC7-X2(GOZ`````!(B=Y(B>_H`````$R)YDB)[^@`````9F9FD&9FD$B+7"0( M2(ML)!!,BV0D&$R+;"0@3(MT)"A,BWPD,$B#Q#C#D)"0D)"0D)"0D)"0D(/B @@ -4830,13 +2062,13 @@ MPX/B!\'B"(C*@,X02(M'"$@MY#P``$C!Y@B!Y@#_``!(`?")$,-F9F:09F9F MD&9FD%53O0````"[`````$&Y_____T&[`````$6)VD&#PP&X`0```$&)P$2) MV4'3X$2)P;X`````N,#AY`"Z`````/?Q.?AW$8GZ*<)$.<IS"$2)U8GS08G1 M@\8!1`'!@_X0==1!@_L(=;&-!-T`````">@/ML!;7<-F9F:09F:09F:02(/L -M$$B)'"1,B60D"$F)_$`/MMZY`````+H'````B=[H*____T$/MHPD01(``+H# +M$$B)'"1,B60D"$F)_$`/MMZY`````+H'````B=[H*____T$/MHPD.1(``+H# M````B=Y,B>?H$____TB+'"1,BV0D"$B#Q!##9F:09I!3B?,/MO*Z`P```.C` -M_O__.-@/E,`/ML!;PV9FD&9FD$B%_W0WN@````!F9I!F9I`/MH0ZZ@@```^V -MR#S_=!,/M\%(C03`2,'@!4@#AV@)``##2(/"`4B#^@1UU+@`````PV9F9I!F -M9F:09F:09F:055-(BY\`"0``2(7;2`]$W[T`````N0````"Z!P```(GN2(G? +M_O__.-@/E,`/ML!;PV9FD&9FD$B%_W0WN@````!F9I!F9I`/MH0ZX@@```^V +MR#S_=!,/M\%(C03`2,'@!4@#AV`)``##2(/"`4B#^@1UU+@`````PV9F9I!F +M9F:09F:09F:055-(BY_X"```2(7;2`]$W[T`````N0````"Z!P```(GN2(G? MZ&?^__^Y1````+H"````B>Y(B=_H4_[__[G0````N@````")[DB)W^@__O__ -MN0````"Z!````(GN2(G?Z"O^__^#Q0&#_0)UJ+^@A@$`Z$G^__^(@T$2```/ +MN0````"Z!````(GN2(G?Z"O^__^#Q0&#_0)UJ+^@A@$`Z$G^__^(@SD2```/ MMLBZ`P```+X`````2(G?Z/[]__];7<-F9F:09F9FD&9FD$%455-(B?L/MH<5 M`0``/`(/A;(```!$BY<8`0``0;P`````O0```"I!N0````"^`````+\````` M0;@$````9I"Z`0```(G0B?'3X$&%PG48C4X&T^)!"=1!"=&X%0```(GYT^`) @@ -4848,1390 +2080,4238 @@ M^=/@"<7K"42)P(GYT^`)Q8/&`8/'!4&#P`.#_@1UP$2)R;JH`P``0+8!2(G? MZ`````")Z;K$`P``O@$```!(B=_H`````$$/M\P+BQ@!``#WT;J@`P``O@$` M``!(B=_H`````&9FD%M=05S#9F9FD&9F9I!F9I!(@^P(B?&$TG06N/[____3 MP"&'&`$``.L49F9FD&9FD+@!````T^`)AQ@!``#H`````$B#Q`C#9F:09F:0 -M9F:02(/L"`^W]L'F"(U.#T&X`0```+J:````O@$```#H`````$B#Q`C#9F:0 -M9F:09F:02(/L"(GQA-)T%KC^____T\!F(8<``0``ZQ1F9I!F9I"X`0```-/@ -M9@F'``$```^WMP`!``#H`````$B#Q`C#D$B#["A(B1PD2(EL)`A,B60D$$R) -M;"083(ET)"!(B?U!B=8/MI[,````1`^V;@)(BWYP2(7_=`P/MM)!#[;UZ``` -M``!(B>_H`````(#[!W=(#[;#_R3%`````$&\^P```.LV0;PS````ZRY!O#L` -M``#K)D&\<P```.L>0;Q[````ZQ9!O+,```#K#D&\NP```.L&0;SS````1(GF -M2(GOZ`````!!#[;608UTG0!`#[;V2(GOZ`````!(BQPD2(ML)`A,BV0D$$R+ -M;"083(MT)"!(@\0HPV9F9I!F9F:09F:005154TF)_+L`````0`^V[KH"```` -MB>Y,B>?H@?K__Z@(=`VX`````.L@9F:09F:0OP$```#H`````(/#`8'[$"<` -M`'7+N/\```!;74%<PY!(@^PH2(E<)`A(B6PD$$R)9"083(EL)"!(B?U)B<U! -MB=1`#[;>B=[HA/___X7`=3!!#[;TB=I(B>_H0OO__X7`=!ZZ`0```(G>2(GO -MZ/_Y__]!B$4`N`````#K"69F9I"X_____TB+7"0(2(ML)!!,BV0D&$R+;"0@ -M2(/$*,-FD$B#["A(B5PD"$B);"003(ED)!A,B6PD($B)_4&)S40/MN)`#[;> -M1(GAN@$```")WNC+^?__N4````"Z`@```(G>2(GOZ+?Y__^)WDB)[^C=_O__ -MA<!U3$6%[70T0?;$`705B=J^0````$B)[^B/^O__A<!T+NLSB=J^&````$B) -M[^AZ^O__A<!T&>L>9F9FD(G:OB@```!(B>_H8?K__X7`=0>X_P```.L&N``` -M``"02(M<)`A(BVPD$$R+9"083(ML)"!(@\0HPV9F9I!F9I!!5T%6055!5%53 -M2(/L"$F)_4B)#"1%B<:)\XG5A-(/A/$```!$#[;^N60```"Z`@```$2)_NCV -M^/__1(G^3(GOZ!O^__^%P'40N@,```!$B?Y,B>_HI_C__T`/MM6Y`0```$2) -M_DR)[^C#_O__0;S_____A,`/A8,!``!!O`````!%A?8/CG0!``!(BQPD0;P` -M````08UN_T0YY74UN4````"Z`@```$2)_DR)[^A^^/__26/,2`,,)+I8```` -M1(G^3(GOZ.?]__^%P'0UZ2P!``"Y1````+H"````1(G^3(GOZ$GX__](B=FZ -M4````$2)_DR)[^BV_?__A<`/A?P```!!@\0!2(/#`44Y]`^$ZP```.N#OZ"& -M`0#H0?C__P^VZP^VR+H#````B>Y,B>_H_/?__XGN3(GOZ"+]__^%P'0B00^V -MC4$2``"Z`P```(GN3(GOZ-?W__]!O/_____IF@```(GJOF````!,B>_HO?C_ -M_X7`=`U!O`````!%A?9^9>L?00^VC4$2``"Z`P```(GN3(GOZ)7W__]!O/__ -M___K6TB+'"1!O`````!F9I"Y1````+H"````B>Y,B>_H;/?__TB)V;J````` -MB>Y,B>_HVOS__X7`=0U!@\0!2(/#`44Y]'7)00^VC4$2``"Z`P```(GN3(GO -MZ#+W__]$B>!(@\0(6UU!7$%=05Y!7\-(@^P82(E<)`A,B60D$$F)_$B)T$`/ -MMM9!B<A(B<&^`````.C(_?__B<.Y5````+H"````O@````!,B>?HW_;__XG8 -M2(M<)`A,BV0D$$B#Q!C#9F9FD&9F9I!F9I!F9I!(@^P82(E<)`A,B60D$$F) -M_$B)T$`/MM9!B<A(B<&^`0```.AH_?__B<.Y5````+H"````O@$```!,B>?H -M?_;__XG82(M<)`A,BV0D$$B#Q!C#9F9FD&9F9I!F9I!F9I!!5D%505154TF) -M_4B)S46)QHG31`^VYKED````N@(```!$B>;H-_;__T2)YDR)[^A<^___A<!U -M$+H#````1(GF3(GOZ.CU__\/MM.Y`0```$2)YDR)[^@%_/__A,!U-D6%]GXX -M2(GKO0````!F9F:0#[83N0````!$B>9,B>_HW?O__X3`=0Z#Q0%(@\,!1#GU -M=`GKV[C_____ZP6X`````%M=05Q!74%>PV9FD&9FD$B#[!A(B5PD"$R)9"00 -M28G\2(G00`^VUD&)R$B)P;X!````Z"C___^)P[E4````N@(```"^`0```$R) -MY^AO]?__B=A(BUPD"$R+9"002(/$&,-F9F:09F9FD&9FD&9FD$B#[`A(BX<` -M"0``2(7`2`]$QT"(-0````"Y(````$C'P@````"^#@```$B)Q^@`````2(/$ -M",-F9I!F9I!F9I!(@^P(B?&$TG06N`$```#3X&8)AVP4``#K%&9FD&9FD+C^ -M____T\!F(8=L%```#[:W;!0``.@`````2(/$",.005=!5D%505154TB#[%A( -MB?M)B?9(BTXH2(/!`HMV'(/N`<=$)%0`````28M&,$B)1"0P28M&*`^V40&` -M^@%U$$''1E``````Z?,$``!F9I"`^@)U28!Y`@%U-DB+AP`)``!(A<!(#T3' -M2(N0^`@```^V00.(@FX4```/MD$#B(+N*```0<=&4`````#IKP0``$''1E#^ -M____Z:($``!,C7@!@/H$#X7U`0``#[9!`X/H.SP!#X?F`0``00^V;P)(BY_X -M"```0`^V]4B)W^@`````B<*$P'0-#[;`@+P#:`@``/]U4$B+F_@(``!(@<.` -M%```2(N[^`@``.@`````B>HHP@^V\DB)W^@`````B<*$P'0-#[;`@+P#:`@` -M`/]U%$''1E#_____3(GW0?]62.DA!```#[;"#[:$`V@(``"`^H%W9`^VR$AI -MR<@/``!!#[9W!$$/ME<%P>(000^V1P;!X`@)PD$/MD<'"<*)5"0\00^V5PC! -MXA!!#[9'"<'@"`G"00^V1PH)PHE4)$!(B<U(`ZN0"0``#X3I````@'U8`'49 -MZ=X```!!QT90_____TR)]T'_5DCIF0,``$&\`````,9$)$<`3(UM2(M$)#Q( -MB40D&$F-5PM(B50D$$`/MO:)="0,3(GOZ`````!(C5CP2(M54$B)15!,B6L0 -M2(E3&$B)`@^V0TD\#70$/")U74$/MD<#/#MT(CP\=5!-B?"+3"0\BU0D0(MT -M)`Q(B=_H`````,9$)$<!ZS)(B[LH`0``2(M4)!A(BW0D$.@`````38GPBTPD -M/(M4)$"+="0,2(G?Z`````#&1"1'`4&#Q`%$.&58#X=J____@'PD1P`/A<\" -M``!!QT90_____TR)]T'_5DCINP(``&9FD&:0@/H##X6<````@'D"`69FD`^% -M@@````^V0SZ--``/MGD#B?J)^,'Z'_?^B=4YUGY;3(UI!$0/MN(/ME$$1(GF -M2(G?Z`````"-1?R#^`-V&(U%](/X`W80C47L@_@#=@B-1>2#^`-W!TB!PX`4 -M``!!#[95`$2)YDB)W^@`````0<=&4`````#I%0(``$''1E#^____Z0@"``!! -MQT90_O___^G[`0``@#D%=CF`>03^9I!U,4B-5"142(N[^`@``$R)]N@````` -MA,`/A=(!``#'1"14`````$''1E#_____Z;T!``!,BZL`"0``387M3`]$ZTB) -MR[@"````2"G(2(E$)"A(8_9(B70D(.GG````9I`/MBM,C6(!#[;0]L(!=&F+ -M3"14B>N-1`T`03M&(`^'3`$``$&`/P%U)XG)2`-,)#!!B>B^`0```$R)[^BP -M]___.>AT*^DF`0``9F9FD&9FD(G)2`-,)#!!B>B^`````$R)[^B)]___.>@/ -MA0`!```!7"143(GCZVU(8\5*C1P@2(M$)"A(`=A(.T0D(`^/W0```$&`/P%U -M'$&)Z$R)X;X!````3(GOZ!7Z__^%P'0@Z;L```!!B>A,B>&^`````$R)[^CY -M^?__A<`/A:````"`.P!U!H![`0!T"[\0)P``D.@`````2(U3`0^V0P&$P`^% -M"____P^V`X3`='L/MMBY5````+H"````O@````!,B>_H"O#__XM4)%1!BT8@ -M*=`YPP]'V$&`/P%U'HG12`-,)#!!B=BZ`````+X!````3(GOZ*GV___K'(G1 -M2`-,)#!!B=BZ`````+X`````3(GOZ(OV__^%P'@&`40D5.L(0<=&4/____^Y -M5````+H"````O@````!,B>_HDN___V:028M6.$B%TG0&BT0D5(D"3(GW0?]6 -M2$B#Q%A;74%<05U!7D%?PV9F9I!F9F:09F:02(/L"$B+AP`)``!(A<!(#T3' -M2(NX^`@```^VAV\4``"$P'0-@^@!B(=O%```A,!U'<8%``````"Y(````$C' -MP@````"^#@```.@`````2(/$",-F9F:09F:09F:09F:02(/L"$B+AP`)``!( -MA<!(#T3'2(NX^`@``("_;A0```!U)("';Q0```'&!0`````!N2````!(Q\(` -M````O@X```#H`````$B#Q`C#9F:09I!(@^P82(E<)`A,B60D$$F)_$B)T$`/ -MMM9!B<A(B<&^`````.@H^/__B<.Y5````+H"````O@````!,B>?H;^[__XG8 -M2(M<)`A,BV0D$$B#Q!C#D)"0D)"0D)"0D)"0D)")]DB+1PA(+0`"`0!(`<:+ -M!HD%`````,-F9F:09F9FD(GV2(M'"$@M``(!`$@!QHD6PV9F9I!F9F:09F:0 -M9F:04TB)^TB+5PA(@>H``@$`QX*```$``````(N"!`$!`(D%`````(#,`8F" -M!`$!`+H$````O@S"``#H`````+JX"P``O@C"``!(B=_H`````+H!``P`O@#" -M``!(B=_H`````+H$````O@S#``!(B=_H`````+JX"P``O@C#``!(B=_H```` -M`+H!``P`O@##``!(B=_H`````$B+0PA(+;0!``!FQP```$B+0PA(+90!```/ -MMP!FB04`````#[?`2(M3"$B!ZI0!``"#R`1FB0)(BT,(2"V8`0``9L<`!`!F -MQX-L%```__];PV9F9I!F9F:02(M7"$B!Z@`"`0"+@FP``0")!0`````,R(F" -M;``!`,-(BU<(2('J``(!`(N":``!`(D%`````"0W"?")@F@``0##9F9FD&9F -M9I!F9I!F9I!32#F_^`@``'5HB?#`Z`)!NP````!$#[;026/:B?"#X`-$C0Q` -MN`<```!$B<G3X/?01(M$GU1!(<!$B42?5(32=`ZX!````-/@1`G`B42?5$EC -MPHM4AU1!#[;SP>8(@<90P@``2(N_^`@``.@`````6\.)\,#H`H/H!$&[`0`` -M`.N39F9FD&9F9I!F9I!F9I!!5T%6055!5%532(/L"$B)_4&)]D&)UT&)S4B+ -M1PA,BR!,B>?H`````$B)PTB%P`^$ZP```$R)Y^@`````2(G"2(7`#X37```` -MQD5<`<9#..'&0SD!QD,Z$,9#);L/MD5;9HE#($R)8RC'0S20````2(U"$$B) -M0TA(B5-X2(G!2(G"N`````#&!!``2(/``4@]D````'7PQD$!@L8!0$2(<0)$ -MB'D#1(AI!$&`_0)W(4B->0A*C12M`````('B_`,``$F-M"2H$@``Z`````#K -M*TF+A"2H$@``2(E!"$B->1!!#[;5C125^/___TACTDF-M"2P$@``Z`````!( -MQX.@`````````$B->UB^`````.@`````2(G>3(GGZ`````!(@\0(6UU!7$%= -M05Y!7\.02(/L.$B)7"0(2(EL)!!,B60D&$R);"0@3(ET)"A,B7PD,$B)_4&) -M]4&)UD&)STB+1PA,BR!,B>?H`````$B)PTB%P'1[3(GGZ`````!(B<)(A<!T -M:\9%7`'&0SCAQD,Y`<9#.A#&0R6[#[9%6V:)0R!,B6,HQT,TD````$B-0A!( -MB4-(2(E3>,9``0+&0A!`1(AH`D2(<`-$B'@$2,>#H`````````!(C7M8O@`` -M``#H`````$B)WDR)Y^@`````2(M<)`A(BVPD$$R+9"083(ML)"!,BW0D*$R+ -M?"0P2(/$.,-F9F:09F:09F:09F:0059!54%455-(B?M!B?5!B=9(BT<(2(LH -MN0(```"Z`````+X`````Z`````"`>UP`=!A(B>_H`````+\!````Z`````"` -M>UP`=>A(BT,(2(L`2`6H$@``@'@"`'@[@$@"@+D!````N@````"^`````$B) -MW^@`````@'M<`'0:9I!(B>_H`````+\!````Z`````"`>UP`=>A$B>C`Z`)$ -M#[;@N0$```!$B>*^`P```$B)W^@`````@'M<`'0;9F:02(GOZ`````"_`0`` -M`.@`````@'M<`'7H2(M#"$B+,$2)Z??1@^$#183V#Y7"P>(##[:$#J@2``"# -MX.<)T(B$#J@2``"Y`0```$2)XKX#````2(G?Z`````!;74%<05U!7L-F9F:0 -M9F9FD&9FD&9FD$B#["A(B5PD"$B);"003(ED)!A,B6PD($B)^TB)]0^W1B!F -M/84`=QM,BZ^0"0``#[?`#[:$!V@(``!,:>#(#P``ZPU,BZ^0"0``0;PXN`\` -M2(M52(!Z`0)U%DB+0@1(B8.H$@``2(M"#$B)@[`2``!(BW5X2(7V=`A(B=_H -M`````$B)[DB)W^@`````0\9$)5P`2(M<)`A(BVPD$$R+9"083(ML)"!(@\0H -MPY"0D)"03(N/0`D```^W1B!!NFB6`0!F/84`=Q(/M\`/MH0':`@``$QIT)@! -M``!,C8(@!```QH(@!```)V:!?CCA`74A#[96.HU"_SP!=PD/ME8[@^(/ZR>- -M0N^Z#P```#P!=AN02XT$$;H`````2(-X8`!T"@^VD($```"#X@]!#[9``8/@ -M\`G008A``;@!````9H%^..$!=0\/MD8Z@^@!/`$/E\`/ML")PL'B!T$/MD`! -M@^!_"=!!B$`!#[9!!D&(0`(/M@%!B$`##[9!!4&(0`</MD$'08A`#P^V00)! -MB$`$#[9!`T&(0`4/MD$$08A`!@^V00%!B$`,#[9!"D&(0`@/MD$+08A`"0^V -M00Q!B$`*#[9!"$&(0`L/MD$)08A`#<.00`^VQ\-F9F:09F9FD&9FD(GX#[;$ -MPV9F9I!F9I!F9I#&1R0"2(M'4$"(<`)(BT=0QD`'`$B+1U"(4`S#9F9FD`^V -M1SV(1@(/MD<\B$8##[9'.XA&!`^V1SJ(1@K#9F:0#[9'08A&`@^V1T"(1@,/ -MMD<_B$8$#[9'/HA&"@^V1SV(1@L/MD<\B$8,PV9FD&:0A=)^(;D`````9F9F -MD&9FD(G0*<B#^`(/G<`/ML"-3`$!.<I_Z_/#9F:09F:09F:02(/L*$B)'"1( -MB6PD"$R)9"003(EL)!A,B70D($B)^TB)U4&)]@^V1S@\*G0E/"IW$3PH#X7= -M````9F9FD&9FD.L0/(AT*CR*#X7(````9I#K'D0/MF-`1`^V:S](B>Y(B=_H -M`````.L<9F9FD&9FD$0/MF-%1`^V:T1(B>Y(B=_H`````,9%!4"+@Y0```"I -M```!`'0P1(AE`$2(;0A"C03U`````(A%`0^V0S@\*'0$/(AU"\9%!F#K6V9F -MD&:0QD4&8>M0J0``!`!F9I!FD'0@1(AE`42(;0D/MD,X/"AT!#R(=0;&108E -MZRK&108UZR1$B&4!#[9#.H/@#PA%!0^V0S@\*'0$/(AU!L9%!LCK!,9%!LI( -MBQPD2(ML)`A,BV0D$$R+;"083(MT)"!(@\0HPV9F9I!F9I!F9I!F9I`/MD<Z -M"D<["D<\"D<]#[;`#[970(/B`0G0=!6Z)````+X%````Z`````#SPV9F9I#& -M1@;L2,>'H`````````##2(/L($B)'"1(B6PD"$R)9"003(EL)!A(B?M(B?4/ -MMD<X/"]T"SR/=5GK%V9FD&:01`^V9T!$#[9O/^@`````D.L/1`^V9T5$#[9O -M1.@`````QD4%0/:#E@````1T$D2(90%$B&T)QD4&0NL69F9FD$2(90$/MD,Z -M@^`/"$4%QD4&0$B+'"1(BVPD"$R+9"003(ML)!A(@\0@PV9FD&9FD$B)\<9" -M!4`/MD8X/#5T!CR1=2/K&P^W1VB#X`&#^`$9P(/@_8/H%HA"!NLD9F9FD,9" -M!NKK&KHD````O@4```!(B<_H`````//#9F:09F:0]D$Y`G0$QD$D`//#9F9F -MD/9'//!T#[HD````O@4```#H`````//#9F:09F:09F:02(/L"$F)\+@````` -M9F9FD,8$"`!(@\`!2(/X#77R00^V0#@\-0^$G0```#PU=RD\*'1B/"AW#CP; -M#X6A`P``D.F;````/"IT3#PO9F:09I`/A8H#``#K6#R/9F:09F:0=$X\CW<2 -M/(AT*SR*9F9FD`^%:@,``.L=/)%F9I!F9I!T1CSA#X56`P``9F:09F:0Z80` -M```/MO)(B<I,B<?H`````,=$)`0!````Z3@#``!(B<Y,B<?H`````,=$)`0! -M````Z2`#``!(B<I,B<;H`````,=$)`0!````Z0@#``!!]D`\`70AQD$&<,9! -M!`#&00,`QD$"`,9!!4#'1"0$`0```.G@`@``QD$&X,=$)`0!````Z<\"``!! -M@'@Y`0^%O`(``$&`>#H<#X>Q`@``00^V0#K_),4`````QD$'!,=$)`0!```` -MZ9P"``#&00<`QT0D!`$```#IBP(``,9!!NS'1"0$`0```.EZ`@``QD$&[\8! -M`T$/MD`[@\A`B$$!QT0D!`$```#I6P(``,9!!N_&`0?'1"0$`0```.E'`@`` -MQD$&0,9!`0'&005`QT0D!`$```#I+@(``,9!!N_&`0-!#[9`.X/("(A!`<=$ -M)`0!````Z0\"``#&00;OQ@$"QT0D!`$```#I^P$``,9!!N_&`8+'1"0$`0`` -M`.GG`0``QD$&[\8!!L=$)`0!````Z=,!``#&00;OQ@&&QT0D!`$```#IOP$` -M`,9!!N-!#[9`.XA!`<=$)`0!````Z:8!``#&00:PQ@'8QD$#3\9!!,+'1"0$ -M`0```.F*`0``QD$&L,8!V<9!`T_&003"QT0D!`$```#I;@$``,9!!K#&`=K& -M00-/QD$$PL=$)`0!````Z5(!``#V1V@!=!'&00;JQT0D!`$```#I.P$``,9! -M!N?'1"0$`0```.DJ`0``QD$&[\8!JL=$)`0!````Z18!``#&00;OQ@%5QT0D -M!`$```#I`@$``,9!!B_&00$!QD$"$,=$)`0!````Z>D```#&00;D00^V0#R( -M`4$/MD`]B$$(00^V0#N(007'1"0$`0```.G!````00^V0#N(009!#[9`/(@! -M00^V0#V(00)!#[9`/HA!`T$/MD`_B$$$00^V0$&(00I!#[9`0(A!`<=$)`0! -M````Z7T```#&00;H00^V0#R(`4$/MD`]B$$(00^V0#N(005!#[9`/HA!`D$/ -MMD`_B$$#00^V0$"(001!#[9`08A!`<=$)`0!````ZSC'1"0$`0```$'V0#P! -M="G&009PQD$$`,9!`P#&00(`QD$%0,=$)`0!````ZPMF9I#'1"0$`````(M$ -M)`1(@\0(PV9F9I!F9F:09F9FD&9FD%-(@^P@2(GS2(M.2$C'!"0`````2,=$ -M)`@`````2,=$)!``````2,=$)!@`````]H&G````!'0-2(N1R````$B#Z@'K -M!HM1>(/J`8![."5U84B)T$C!Z!B(!"1(B=!(P>@0B$0D`4B)T$C!Z`B(1"0" -MB%0D`_:!U0```!!U%,9$)`8"QD0D!P"X"````.FN````2(U\)`1(C;'J```` -MN@0```#H`````+@(````Z8X```!(B=!(P>@XB`0D2(G02,'H,(A$)`%(B=!( -MP>@HB$0D`DB)T$C!Z""(1"0#2(G02,'H&(A$)`1(B=!(P>@0B$0D!4B)T$C! -MZ`B(1"0&B%0D!_:!U0```!!U%<9$)`H"QD0D"P"X(````.LD9F9FD$B-?"0( -M2(VQZ@```+H$````Z`````"X(````&9FD&:02(M[2$ACT$B)YN@`````2(/$ -M(%O#9F9FD&9F9I!F9I!32(GS2(M74$B+"@^V1C@\+W1?/"]W*SP;#X0Q`0`` -M/!MW#SP2#X5%`0``9F:09I#K0#PH=#P\*@^%,@$``&:0ZS`\BG0L/(IW&#PU -M9F9FD`^$^@```#R(#X42`0``9I#K$#R/=`P\X0^%`@$``&:0ZW7V1V@!=`J! -MBY0```````0`]D=J$`^$%`$``$B#?V``#X4)`0``#[9#.#PH=!`\*G0,/(AT -M"#R*#X7Q````]D(,`744#[9R"$B)S^@`````A,`/A-<```"`>R2!#X3-```` -M@8N4```````!`+@!````Z;X```"`?CD!#X6D````@'XZ'`^'F@```$@/ODXZ -MN`$```!(T^"I]C_`'74CJ0A`!@!U#*D``"``=2-F9I#K<X..E`````BX`0`` -M`&:0ZW.#CI0````!N`$```#K98..E````""X`0```.M79I#V1V@!=`J!BY0` -M``````0`@XN4`````;@!````ZS=FD(N#E````*D``"``=!CV1V@!=!T-```$ -M`(F#E````+@!````ZQ"X`````.L)9F9FD+@!````6\.0D)"0D)"0D)!(BW\( -M10^VP$'!X`0/MM+!X@A!"=!$B<"#R`2$R40/1<!!@_G_=!E(C9<`_O[_1(G( -M)?__`P")@@3(``!!@\@"1(D&PV9F9I!F9F:09F9FD$B+1PA(+0`"`0"#S@&) -ML`#(``##9F9FD&9F9I!F9F:005154T&)]$B+1PB%]G1,2"T``@$`2(VH`,@` -M`(N``,@``(D%`````+L`````J`%U#^LABT4`B04`````J`%T%+\*````Z``` -M``"#PP%$.>-UX>L'N`````#K!;C_____6UU!7,-F9F:09F9FD&9FD%532(/L -M&$B)^\=$)!0`````2(MO",:'<!0````/MA4`````2(UT)!1!N0````!!N`(` -M``"Y`0```.CB_O__BW0D%$B)W^@F____OJ"&`0!(B=_H.?___X7`=55(C84` -M_O[_BX`,R```B04`````B40D%#T?8P``=3?'@V`4```?8P``QX-D%``````$ -M`,>#:!0``````0!(QX-X%````````&:X``#I5P(``&9FD&:0QT0D%`````!( -MBVL(QH-P%````0^V%0````!(C70D%$&Y_____T&X`@```+D!````2(G?Z#C^ -M__^+="042(G?Z'S^__^^$"<``$B)W^B/_O__A<!U;DB-A0#^_O^+@`S(``") -M!0````")1"04/1]#``!T+3T?1```=4G'@V`4```?1```QX-D%``````'`,># -M:!0``````0#IDP$``&9FD,>#8!0``!]#``#'@V04``````0`QX-H%``````! -M`.EM`0``QT0D%`````!(BVL(QH-P%`````^V%0````!(C70D%$&Y`````$&X -M`@```+D!````2(G?Z'7]__^+="042(G?Z+G]__^^$"<``$B)W^C,_?__A<!U -M4$B-A0#^_O^+@`S(``")!0````")1"04/;]#``!U,L>#8!0``+]#``#'@V04 -M`````"``QX-H%````!```$C'@W@4````````9K@``.GJ````QT0D%`````!( -MBVL(QH-P%`````^V%0````!(C70D%$&Y`````$&X`@```+D!````2(G?Z-#\ -M__^+="042(G?Z!3]__^^$"<``$B)W^@G_?__A<!U9TB-A0#^_O^+@`S(``") -M!0````")1"04/>\1``!T"3WO$@``=4+K(,>#8!0``.\1``#'@V04``````0` -MQX-H%``````!`.L^QX-@%```[Q(``,>#9!0`````"`#'@V@4``````$`ZQZX -M_____^LG9F:09I!(QX-X%````````+@`````ZQ!(QX-X%````````+@````` -M2(/$&%M=PV9F9I!F9I!(@^PH2(E<)!!(B6PD&$R)9"0@2(G[B?=)B=1(BVL( -M@/D$N`0````/1\A(BX-X%```#[90!$B-="0,08GY1`^VP;D!````2(G?Z,+[ -M__^+="0,2(G?Z`;\__^^$"<``$B)W^@9_/__NO____^%P'4@2(V%`/[^_XN` -M#,@``(D%`````(E$)`Q!B00DN@````")T$B+7"002(ML)!A,BV0D($B#Q"C# -M9F9FD&9FD&9FD%532(/L&$B)^TB)U4B+AW@4```/ME`+2(U$)!1!B?%!N`$` -M``"Y`0```$B)QN@N^___BW0D%$B)W^AR^___OA`G``!(B=_HA?O__[K_____ -MA<!U&DB+0PA(+?0Y``"+`(D%`````(A%`+H`````B=!(@\086UW#9F:09F:0 -M9F:005=!5D%505154TB#[!A(B?M!B<U!B?=!B=:%R0^$C@```+T`````3(MC -M"$B+@W@4```/ME`"0;G_____0;@!````N0$```!(C70D%$B)W^B,^O__BW0D -M%$B)W^C0^O__OA`G``!(B=_HX_K__X7`=2E)C80D`/[^_XN0#,@``(D5```` -M`$2)^"'01#CP=0>X`````.L?B50D%+\*````Z`````"#Q0%$.>T/A7?___^X -M_____TB#Q!A;74%<05U!7D%?PV9F9I!F9F:09F9FD%-(@^P02(G[2(N'>!0` -M``^V$$B-="0,0;G_____0;@`````N0````#HX_G__XMT)`Q(B=_H)_K__[X0 -M)P``2(G?Z#KZ__^%P'4FN>"3!`"Z`@```+X#````2(G?Z,_^__^Z`````(7` -M=`MF9I!F9I"Z_____XG02(/$$%O#9F:02(/L*$B)7"082(EL)"!(B?N)]<9$ -M)!?_2(U4)!?H`````(7`=7*`?"07`'1S2(G?Z$O___^#^/]T7DB+@W@4```/ -MME`*2(UT)!!!B>E!N`````"Y`````$B)W^@P^?__BW0D$$B)W^AT^?__OA`G -M``!(B=_HA_G__X7`=1NYX),$`+H`````O@,```!(B=_H'/[__X7`=`BX____ -M_^L&D+@`````2(M<)!A(BVPD($B#Q"C#9F9FD&9F9I!F9F:02(/L6$B)7"0H -M2(EL)#!,B60D.$R);"1`3(ET)$A,B7PD4$B)_4&)]HG+2(._>!0````/A/@" -M``!)B==%A,`/A%P!``"#_O]U%P^WAV`4``!FB0*X`0```.GY`@``9F:0@_[^ -M=1*+AV04``")`K@!````Z=\"``"#_OUU%(N':!0``(D"N`$```#IR`(``&:0 -M`?.)7"0,.Y]D%```#X>.`@``B?.#X_Q!B?1!@^0#=&),C6PD)+D$````3(GJ -MB=[H_/O__X/#!+H$````.5PD#',-1(G@1"GPBTPD#(T4"$0YXG8N3(G_1(GA -M9F:09F:0B<A!#[9$!0"(!TB#QP&#P0$YT77KB=!$*>"#Z`%-C7P'`42+9"0, -M08/D_$0YXW,J3(UL)"2Y!````$R)ZHG>2(GOZ(G[__^+1"0D08D'28/'!(/# -M!$$YW'?;.5PD#`^&XP$``$R-9"0DN00```!,B>*)WDB)[^A5^___BW0D#"G> -M#X3``0``N0````"Z`````$$/M@040H@$.H/!`4B#P@$Y\0^$G@$``.OF9F:0 -M9I"#_O]U*X`Z#W41QH=Q%````;@!````Z9L!``#&AW$4````N`$```#IB@$` -M`&9F9I")3"04B<@!\#N'9!0```^'3`$``("_<10````/A#\!``")\+H````` -M][=H%```A=(/A8T```"`OW`4````=`WH`````(7`#X44`0``2(GOZ)S\__^# -M^/\/A`,!``!(BX5X%```#[90!DB-="0D18GQ0;@`````N0````!(B>_H??;_ -M_XMT)"1(B>_HP?;__[X0)P``2(GOZ-3V__^%P`^%O````+G@DP0`N@````"^ -M`P```$B)[^AE^___A<`/A9T```"%VP^$G````,=$)!``````BT0D$$6+)`=$ -MBVPD$$4!]4B+70A(@>L``@$`2(GOZ/K[__]$B:,(R```2(N%>!0```^V4`5% -MB>E!N`0```"Y`````$B-="0D2(GOZ-WU__^+="0D2(GOZ"'V__^^$"<``$B) -M[^@T]O__A<!U(+F($P``N@````"^`0```$B)[^C)^O__A<!T%V9FD&:0N``` -M``#K'[@!````9F9FD.L4@T0D$`2+1"00.40D%';FZ4W___](BUPD*$B+;"0P -M3(MD)#A,BVPD0$R+="1(3(M\)%!(@\18PY"0D)"0D)"X`````,-F9F:09F:0 -M9F:0N``````Y/0````!^-TACQTC'P0````!(C01`2,'@`P^W%`AFB18/MU0( -M`F:)5@(/ME0("(A6"`^V1`@)B$8)N`$```#SPV9F9I!F9I!F9I"X`"D``,-F -M9F:09F:09F:0N-````##9F9FD&9FD&9FD+@(````PV9F9I!F9I!F9I"^```` -M`$&X`````+D`````#[:4.>@(``"`^O]T2HV!@````&8]@0!W!X/&`>LY9I`/ -MML)(BY=H"0``2(T$P$C!X`6`O!`5`0```W4808/``4&-0`.#^`9V#H/&`4&X -M`````.L#@\8!2(/!`4B#^09UGXGPPV9F9I!F9F:09F9FD$B)^4&Z`````$&[ -M`````$&Y@````$`/MO:#Q@%F9F:018G(#[:!Z`@``#S_=%!F08'Y@0!W"D&# -MP@'K/69F9I`/ML!(BY=H"0``2(T$P$C!X`6`O!`5`0```W4908/#`4&-0P.# -M^`9V$$&#P@%!NP````#K!$&#P@%$.=9T%TB#P0%!@\$!08'YA@```'610;@` -M````1(G`PV9F9I!F9I#SPV9F9I!F9F:09F:09F:0QH?+`````,-F9F:09F9F -MD+C_````2(7_=$2^_____[D`````#[:$.>H(```\_W0@#[;`2(N7:`D``$B- -M!,!(P>`%#[:$$!0!``!`.,8/1_!(@\$!2(/Y!'7*0`^VQO/#N`````##9F9F -MD&9FD&9FD$B+M_@(``"_`````$&X`````+D`````#[:4,>@(``"`^O]T3XV! -M@````&8]@0!W!8/'`>L^#[;"2(N6:`D``$B-!,!(P>`%@+P0%0$```-U'T&# -MP`%!C4`#@_@&=A6#QP%!N`````#K"F9F9I!F9I"#QP%(@\$!2(/Y!G6:2(NV -M^`@``$B!QH`4``"Q`&9FD`^VE#'H"```@/K_=$J-@8````!F/8$`=P>#QP'K -M.6:0#[;"2(N6:`D``$B-!,!(P>`%@+P0%0$```-U&$&#P`%!C4`#@_@&=@Z# -MQP%!N`````#K`X/'`4B#P0%(@_D&=9^)^,-F9F:09F9FD&9F9I")\,#H!(U( -M5XU0,#P*#T/1B!>)\(/@#X/X"7X*B?"#X`^#P%?K"(GP@^`/@\`PB$<!PV9F -M9I!F9F:09F:09F:02(/L$$B)'"1,B60D"$B)^T&)]$R)X`^V].BB____00^V -M]$B#PP)(B=_HDO___TB+'"1,BV0D"$B#Q!##9F9FD,="!`````#'`@````"X -M`````,-F9F:09F:09F:09F:02(M'8$B%P'112,=`0`````"`2$P$2,='8``` -M``!(QT=P`````$C'1V@`````BT<(@_@_?Q-(BU=X2)A(QX3":`0```````## -M2(M7>$B82,>$PF@"````````\\-F9F:02(M'8$B%P'112,=`0`````"`8$S[ -M2,='8`````!(QT=P`````$C'1V@`````BT<(@_@_?Q-(BU=X2)A(QX3":`0` -M``````##2(M7>$B82,>$PF@"````````\\-F9F:02(/L"$C'QP````#H```` -M`+@`````2(/$",-F9I!F9I!54TB#[#C&!"1MQD0D`?_&1"0"(\9$)`,4QD0D -M!#K&1"0%[\9$)`86QD0D!Y)(BZ\`"0``2(7M2`]$[TB-1"002(G"Q@``2(/` -M`4B)TTB-3"0P2#G(=>S&1"04`;D@````O@X```!(B>_H`````(7`=4*_@!H& -M`.@`````N2````!(B=J^#P```$B)[^@`````@_@@=1Y(C7,02(GGN0@```#\ -M\Z8/E\(/DL"Y`0```#C"=!9(Q\<`````N`````#H`````+D`````#[;!2(/$ -M.%M=PV9F9I!F9F:09F9FD$%7059!54%455-(@^QH28G\3(N_^`@``$F!QX`4 -M``!(BP=(A<!T$TB-L```_O](B3=(BW\@Z`````!)BW0D$$B%]G0*28M\)"#H -M`````$F+="082(7V=`I)BWPD(.@`````2(U,)&5(C50D9DB-="1G00^W?"0\ -M2(U$)%I(B40D.$B-1"1<2(E$)#!(C40D5DB)1"0H2(U$)%A(B40D($B-1"1@ -M2(E$)!A(C40D8DB)1"002(U$)&-(B40D"$B-1"1>2(D$)$R-3"1D3(U$)%3H -M`````$F+M"1`"0``2(7V="!)C;PD(`D``.@`````28NW0`D``$F-OR`)``#H -M`````$F+M"1H"0``2(7V="!)C;PD2`D``.@`````28NW:`D``$F-OT@)``#H -M`````$F+M"20"0``2(7V="!)C;PD<`D``.@`````28NWD`D``$F-OW`)``#H -M`````$F+M"0P"P``2(7V="!)C;PD$`L``.@`````28NW,`L``$F-OQ`+``#H -M`````(!\)&<`=$2]`````$V-M"1@"P``38VO8`L```^WW4F+M-R`"P``3(GW -MZ`````!)B[3?@`L``$R)[^@`````@\4!#[9$)&=F.>AWT$F+M"00$```2(7V -M="!)C;PD\`\``.@`````28NW$!```$F-O_`/``#H`````$F+M"1($```2(7V -M="!)C;PD*!```.@`````28NW2!```$F-OR@0``#H`````$F+M"2X$```2(7V -M="!)C;PDF!```.@`````28NWN!```$F-OY@0``#H`````$F+M"2X"0``2(7V -M="!)C;PDF`D``.@`````28NWN`D``$F-OY@)``#H`````$F+M"20"@``2(7V -M="!)C;PD<`H``.@`````28NWD`H``$F-OW`*``#H`````$F+M"0@"@``2(7V -M="!)C;PD``H``.@`````28NW(`H``$F-OP`*``#H`````$F+M"1("@``2(7V -M="!)C;PD*`H``.@`````28NW2`H``$F-OR@*``#H`````$F+M"3@"@``2(7V -M="!)C;PDP`H``.@`````28NWX`H``$F-O\`*``#H`````$F+M"0("P``2(7V -M="!)C;PDZ`H``.@`````28NW"`L``$F-O^@*``#H`````$F+M"18"P``2(7V -M="!)C;PD.`L``.@`````28NW6`L``$F-OS@+``#H`````$F+M"2@#P``2(7V -M="!)C;PD@`\``.@`````28NWH`\``$F-OX`/``#H`````$F+M"38#P``2(7V -M="!)C;PDN`\``.@`````28NWV`\``$F-O[@/``#H`````$F+M"2`$```2(7V -M="!)C;PD8!```.@`````28NW@!```$F-OV`0``#H`````$F+M"2X"@``2(7V -M="!)C;PDF`H``.@`````28NWN`H``$F-OY@*``#H`````$F+M"3@$```2(7V -M="])BY0DZ!```$F-O"3`$```Z`````!)BY?H$```28NWX!```$F-O\`0``#H -M`````$F+M"00$0``2(7V="])BY0D&!$``$F-O"3P$```Z`````!)BY<8$0`` -M28NW$!$``$F-O_`0``#H`````$F+M"1`$0``2(7V="])BY0D2!$``$F-O"0@ -M$0``Z`````!)BY=($0``28NW0!$``$F-OR`1``#H`````$F+M"2@$0``2(7V -M="])BY0DJ!$``$F-O"2`$0``Z`````!)BY>H$0``28NWH!$``$F-OX`1``#H -M`````$F+M"1P$0``2(7V="])BY0D>!$``$F-O"10$0``Z`````!)BY=X$0`` -M28NW<!$``$F-OU`1``#H`````$F+M"30$0``2(7V="])BY0DV!$``$F-O"2P -M$0``Z`````!)BY?8$0``28NWT!$``$F-O[`1``#H`````$F+M"0`$@``2(7V -M="])BY0D"!(``$F-O"3@$0``Z`````!)BY<($@``28NW`!(``$F-O^`1``#H -M`````$F+M"0P$@``2(7V="])BY0D.!(``$F-O"00$@``Z`````!)BY<X$@`` -M28NW,!(``$F-OQ`2``#H`````$B#Q&A;74%<05U!7D%?PV9F9I!F9I!(@^P8 -M2(E<)`A,B60D$$B)^^@`````2(G?Z`````!,C:.`%```3(GGZ`````!(B=_H -M`````+_0!P``Z`````!(B=_H`````+X!````2(G?Z`````"^`0```$R)Y^@` -M````2(M<)`A,BV0D$$B#Q!C#2(/L&$B)7"0(3(ED)!!)B?Q!B'0D3T`/MMZ) -MWN@`````28'$@!0``(G>3(GGZ`````"X`0```$B+7"0(3(MD)!!(@\08PV9F -M9I!F9I!F9I!32(G[Z`````!(B[OX"```2(''@!0``.@`````6\-FD%-(B?OH -M`````$B+N_@(``!(@<>`%```Z`````!;PV:02(/L".@`````#[;`2(/$",-F -M9F:09F9FD&9F9I!F9I!(@^PX2(E<)`A(B6PD$$R)9"083(EL)"!,B70D*$R) -M?"0P2(G[08GT08G52(MO8$R+=WA(A>T/A!L!``"`O\L`````#X4.`0``3(GW -MZ`````!)B<=(A<`/A/H```#&0#CAQD`Y`46$Y'0-08#]`1G`]]"#P`?K"T&` -M_0$9P/?0@\`-08A'.D'&1R2`#[=%.&9!B4<@28E?*$''1S0`````2<='2``` -M``!)QX>@`````````$R)_DR)]^@`````QH/+`````6;'@\@```#T`4B%VW1. -M2(M38$B%TG1/9H&[R````)8`=0Y(BWI0OB$```#H`````&:#J\@````!O]`' -M``#H`````$R)]^@`````2(M38$B%TG0)@+O+`````'6[9H.[R`````!T&D&` -M?R0`=1-(BT-@#[=`:F:)0UJ[`````.L%N_____],B?Y,B??H`````.L%N___ -M__^)V$B+7"0(2(ML)!!,BV0D&$R+;"0@3(MT)"A,BWPD,$B#Q#C#9F9FD&9F -M9I!F9F:09F:02(/L*$B)'"1(B6PD"$R)9"003(EL)!A,B70D($B)^T&)]$B+ -M;V!,BV]X2(7M#X0#`0``@+_+``````^%]@```/8'`@^%[0```$R)[^@````` -M28G&2(7`#X39````QD`XX<9`.0%!@/P"#Y7`@\`:08A&.D'&1B2`#[=%.&9! -MB48@28E>*$''1C0`````2<=&2`````!)QX:@`````````$R)]DR)[^@````` -MQH/+`````6;'@\@```#Z`$B%VW1.2(M38$B%TG1/9H&[R````)8`=0Y(BWI0 -MOB$```#H`````&:#J\@````!O]`'``#H`````$R)[^@`````2(M38$B%TG0) -M@+O+`````'6[9H.[R`````!T#+L`````08!^)`!T!;O_____3(GV3(GOZ``` -M``#K!;O_____B=A(BQPD2(ML)`A,BV0D$$R+;"083(MT)"!(@\0HPV9FD&9F -MD$B#[$A(B5PD&$B);"0@3(ED)"A,B6PD,$R)="0X3(E\)$!(B?U!B?5,BV=@ -M3(MW>$V%Y`^$>00``("_RP`````/A6P$``!,B??H`````$F)QTB%P`^$6`0` -M`/9%``(/A?P```!!@/T4=PQ!#[;%C01`P>`"ZQ>XB?___T'VY6;!Z`C`Z`0/ -MML`%\````$'&1SCA0<9'.0%!QD<Z'$&(1SM!QD<D@$$/MT0D.&9!B4<@28EO -M*$''1S0`````2<='2`````!)QX>@`````````$R)_DR)]^@`````QH7+```` -M`6;'A<@```#$"4B%[71.2(M58$B%TG139H&]R````)8`=0Y(BWI0OB$```#H -M`````&:#K<@````!O]`'``#H`````$R)]^@`````2(M58$B%TG0)@+W+```` -M`'6[9H.]R``````/A%4#``"[`````$&`?R0`#X1*`P``Z4`#``!,B??H```` -M`$B)1"002(7`#X0J`P``28U?6$B+0!!(B00D0<9'.!I!QD<Y"$'&1SH:0<9' -M.P!!QD<\$$'&1ST`2(M$)!!)B4=X0<9')(!!#[=$)#AF08E'($F);RA(BT0D -M$$B+0!!)B4=(0<='-!````!(BT5@2`7L````28E'4$'&1S`@2<>'H``````` -M``"^`````$B)W^@`````08M7-$B+1"002(MP&$B)W^@`````3(G^3(GWZ``` -M``#&A<L````!9L>%R````/H`2(7M=$Y(BU5@2(72=$]F@;W(````E@!U#DB+ -M>E"^(0```.@`````9H.MR`````&_T`<``.@`````3(GWZ`````!(BU5@2(72 -M=`F`O<L`````=;MF@[W(`````'0'08!_)`!T%TB-="003(GWZ`````"[____ -M_^G]`0``3(G^3(GWZ`````!,B??H`````$F)QTB%P'4=2(UT)!!,B??H```` -M`+O_____Z=T!``!F9I!F9I!(C5A82(L\)$B#QP1(BQ0D#[9"`P^V!`>(0@3& -M1P$*QD<"`+@`````2(L4),8$$`!(@\`!2(/X!'7N183M=0:`9P/\ZT%!#[;5 -M:=)@Z@``N!^%ZU'WZL'Z!8!/`P.)T<'I&(A/!(G6P>X00(AW!8G0P>@(B$<& -MB%<'B$\(0(AW"8A'"HA7"TB+1"0028E'>$'&1S@5#[8'P/@']]"#P!%!B$<Y -M0<9'.@!!QD<[`$'&1SP00<9'/0"`)S]!QD<D@$$/MT0D.&9!B4<@28EO*$B+ -M1"002(M`$$F)1TA!QT<T$````$B+16!(!>P```!)B4=00<9',"!)QX>@```` -M`````+X`````2(G?Z`````!!BU<T2(M$)!!(BW`82(G?Z`````!,B?Y,B??H -M`````,:%RP````%FQX7(````^@!(A>UT3DB+56!(A=)T3V:!O<@```"6`'4. -M2(MZ4+XA````Z`````!F@ZW(`````;_0!P``Z`````!,B??H`````$B+56!( -MA=)T"8"]RP````!UNV:#O<@`````=`R[`````$&`?R0`=`6[_____TB-="00 -M3(GWZ`````#K"F9FD&:0N_____],B?Y,B??H`````.L%N_____^)V$B+7"08 -M2(ML)"!,BV0D*$R+;"0P3(MT)#A,BWPD0$B#Q$C#9F9FD$B#[&A(B5PD.$B) -M;"1`3(ED)$A,B6PD4$R)="183(E\)&!(B?U(B?-)B<]!B=5%B<9,BV=@387D -M#X2V`P``@+_+``````^%J0,``$F+1"102(E$)#!(BU=X2(E4)`AFQX?(```` -M$"=(B=?H`````$B)1"0H2(7`#X1W`P``00^WQ8E$)`1F08/]!'85B<9(Q\<` -M````N`````#H`````.L42(M\)`CH`````$B)1"002(7`=1E(BW0D*$B+?"0( -MZ`````"[_____^E"`P``BU0D!,'B"8E4)"1(BT0D"$B+L/@(``#&1C\!2(GJ -MOP4```#H`````$&`3"1,`DB+56"^(0```$B+?"0PZ`````!(BU0D*$B#PEA( -MB50D&$6$]G052(M$)"C'@)0````*````QD`X*.LH2(M4)"C'@I0````2```` -MQD(X*DB+1"002(MX$(M4)"1,B?[H`````$B+16#V0&@!#X2!````08#^`1G` -M@^`"@^AX2(M4)"B(0CC&0CD`2(G82,'H.(A".DB)V$C!Z#"(0CM(B=A(P>@H -MB$(\2(G82,'H((A"/4B)V$C!Z!B(0CY(B=A(P>@0B$(_2(G82,'H"(A"0(A: -M0<9"0@#&0D,`1(GH9L'H"(A"1$2(:D7&0D8`QD)'`.M/08#^`1G`@^`"@\`H -M2(M4)"B(0CC&0CD`2(G82,'H&(A".DB)V$C!Z!"(0CM(B=A(P>@(B$(\B%H] -MQD(^`$2)Z&;!Z`B(0C]$B&I`QD)!`$B+?"0HZ`````!(BT5@#[=`.$B+5"0H -M9HE"(,9")(!(B6HH2(M4)!!(BT(02(M4)"A(B4)(BT0D)(E"-$B+1"002(E" -M>,9","!(BT5@2`7L````2(E"4$C'@J``````````O@````!(BWPD&.@````` -M2(M$)"B+4#1(BT0D$$B+<!A(BWPD&.@`````QH7+`````4B+="0H2(M\)`CH -M`````$B%[0^$F````$B+56!(A=(/A(L```"`O<L`````#X3Y````9H&]R``` -M`)8`=0Y(BWI0OB$```#H`````&:#K<@````!O]`'``#H`````$B+?"0(Z``` -M``!(BU5@2(72=$"`O<L`````#X2N````Z[-(BU0D*(!Z)`!U)KL`````183V -M="&+5"0D2(M$)!!(BW`03(G_Z`````"[`````.L%N_____](BU0D*$B#>G@` -M="^!>C0`"```=Q-(B=9(@\9X2(M\)`CH`````.L32(MT)"A(@\9X2(M\)`CH -M`````$B+="0H2(M\)`CH`````$B+1"0(2(NP^`@``,9&/P!(B>J_!@```.@` -M````08!D)$S]ZQR[_____^L59H.]R``````/A4;____I<O___V:0B=A(BUPD -M.$B+;"1`3(MD)$A,BVPD4$R+="183(M\)&!(@\1HPV9F9I!F9F:09F:02(/L -M&$B)'"1(B6PD"$R)9"002(GS2(M'4$R+($B+;F@/MD8D/"!T2#P@=PJ$P'0B -M/`9W%>LP/")T-CPB9F9FD'(D@\"`/`%V';@`````9I#K8TB+1T#'0`0````` -MQH6R`````>L*QH6R````#69FD$B#>W@`="6!>S0`"```=Q!(C7-X3(GGZ``` -M``#K#F:02(US>$R)Y^@`````2(G>3(GGZ`````!(B>__E<@```"X`0```$B+ -M'"1(BVPD"$R+9"002(/$&,-F9F:09F9FD$B#["A(B1PD2(EL)`A,B60D$$R) -M;"083(ET)"!(B?M)B?5)B=1(BV]@2(7M=0I(B=?_UND^`0``2(._B`````!U -M#DB#OX``````=`]F9F:03(GG0?_5Z1L!``"`O>@`````#X4(`0``@'U*_V9F -M9I`/A?H```!(BT5@2(7`=`J`>%$`#X7G````2(M]4/9'#!`/A=D```!,BS>` -MO8,`````=`U(B>J^!@```.@`````3(FKB````$R)HY`````/ME5(2(G0@^`& -M2(/X!G4I]L(!='W&14H%QD5+!`^VE8$```!(BW582(M]4$B)Z>@`````Z7\` -M``!(@_@$=7GVP@%T=$B+56!(A=)T+P^W0DZH`G1C@^#]9HE"3DB+16!FQT!. -M`0!(BT5@QD!"'4B+=6!,B??H`````.L\QD5*`\9%2P1(B>Y,B??H`````.LG -MD,9%2@7&14L&9L>%R```````2(GN3(GWZ`````#K"&:03(GG0?_52(L<)$B+ -M;"0(3(MD)!!,BVPD&$R+="0@2(/$*,-F9F:09F:09F:09F:04TB)^TB%_P^$ -MPP```$B+?WCH`````$B)PDB%P`^$?@```("X%0$```!T=8`+`0^V@!4!```\ -M`G4Z2(-[<`!U&0^V@\P```"#X`.(0P(/MH(4`0``B$,!ZW</MH/-````B$," -M2(M#<`^V@!0!``"(0P'K73P#=5D/MH/,````@^`#P>`"`H/-````B$,"2(M# -M<`^V@!0!``"(0P'K,V9FD$B+0W!(A<!U"TB+0VA(A<!U#NL<#[:`%`$``(A# -M`>L0#[:`P@```(A#`69FD&9FD%O#9F9FD&9F9I!F9I!F9I!54TB#[`A(B?M( -MA?]T;[T`````#[:$'6@(```\_W0Y#[;`2&G`F`$``$B)PD@#DT`)``!T(XM" -M2"4`__\`/0``_P!U%/9"2P1T#DB+>D!(A?]T!>@`````2(/%`4B!_8````!U -MKDB+@_@(``!(.=AU#$B-N(`4``#H`````$B#Q`A;7<-F9F:09F9FD&9F9I!5 -M4TB#[`A(B?M(C:^`%```Z`````!(B4,H2(E%*$B)F_@(``!(B9WX"```BX,0 -M"0``B840"0``QH-N%````<:%;A0```%(B=_H`````$B)W^@`````2(GOZ``` -M``!(B=_H`````(3`='=(B>_H`````(3`=&M(B=_H`````+_0!P``Z`````!( -MB=_H`````,>#F`$``.@#``!(QX.H`0```````$B)F[`!``!(C;.8`0``2(M[ -M*.@`````O@````!(B=_H`````+X`````2(GOZ`````"X`0```.L)9F9FD+@` -M````2(/$"%M=PV9F9I!32(G[Z`````!(@<.`%```2(G?Z`````"X`0```%O# -MD$%7059!54%455-(@^P82(ET)`A(B10D@ST```````^%;P$``,<%``````$` -M``!$BST`````QT0D%`````!)Q\4`````2,?#`````$G'Q@````#I=@(```^W -MA@````#!X!!"#[<4+@G0.<4/A?$```!!N`````"_`````&9FD&:09H,\'P!U -M7TECT$B)T4C!X05*BP0N2(D$&4*+1"X(B409"`^V@0````!(P>(#2(T\`@^V -M1"03B$2[#0^V@0````!(C3P"#[9$)!*(1+L.#[:!`````$@!PL9$DP\`@($` -M`````>MT#[:/``````^VP;H`````0O<T-H72=$L/ML%)8]!(C0S5`````$B- -M/`$/MD0D$XA$NPU(P>(%#[:"`````$B-/`$/MD0D$HA$NPX/MH(`````2`'! -MQD2+#P"`@@`````!ZQ)!@\`!2(/'($&#^`0/A2;___^#A@`````!08/"`4B# -MQAA%.?H/A>7^__]!@\0!08/\(`^%%P$``(-$)!0!@7PD%/\````/A3H!``!( -M@WPD"`!T"$B+5"0(Q@(`BS4`````O0````"%]GXUN0````"]`````+H````` -M`ZH`````2(-\)`@`=`V+@@````!(BUPD"``#@\$!2(/"&#GQ==I(@SPD``^$ -M[````$&Z`````$&Y`````$G'Q`````!F0X,\(0`/A,T```!!#[:1`````(32 -M=&=!N`````!)8\),C1S%``````^VPH/H`4B-6`%+C00#2(TTA0````!(BSPD -MN00```#\\Z8/E\(/DL`XPG4A2(-\)`@`=`]!#[:!`````$B+5"0(B`)!#[:I -M`````.L)28/``4DYV'6T08/"`4F#P2!!@_H$=$SI;O___T2(9"02N0````"Z -M`````$2)YHM\)!3H`````(G%0;H`````O@````!%A?\/CX_]___II?[__P^V -M1"04B$0D$T&\`````.NY0`^VQ4B#Q!A;74%<05U!7D%?PV9F9I!F9F:09F9F -MD&9FD$B#[!A(B1PD2(EL)`A,B60D$(GU3(MG>$B+7V#V!P%T7TB+>UA(A?]T -M$$`/MM8/MK.!````Z`````!(B[L@`0``2(7_=!!`#[;5#[:S#0$``.@````` -M3(GGZ`````!(A<!T+8"X%0$```!T)$`/MM5(BW-`3(GGZ`````#K$F:00`^V -MUDB+<T!,B>?H`````$B+'"1(BVPD"$R+9"002(/$&,-F9F:09F:09F:09F:0 -M2(/L*$B)7"0(2(EL)!!,B60D&$R);"0@2(G[@#X)=Q`/M@;_),4`````9F:0 -M9F:0N/_____I)@$``$B+1@A(BY``"0``2(722`]$T$B+NO@(``#&AV\4```! -MZ`````"X`````.GW````#[96"+X`````Z-GJ___IY`````^V5@B^`0```.C& -MZO__Z=$````/MG8(Z`````#IPP```$0/MFX(3(MG>$B+;V"X______9'6`@/ -MA*<```!)B[0D^`@``$B)^K\%````Z`````"`34P"2(M]4$B)ZKXA````Z``` -M``"`O8,`````=!]F9F:0O]`'``#H`````$R)Y^@`````@+V#`````'7E183M -M=`QF@TM:$&:#36H0ZPIF@V-:[V:#96KO28NT)/@(``!(B=J_!@```.@````` -M@&5,_;@`````ZQH/MG8(Z`````"0ZPX/MG8(Z`````"X`````$B+7"0(2(ML -M)!!,BV0D&$R+;"0@2(/$*,-F9F:09F:02(/L6$B)7"1`2(EL)$A,B60D4$B) -M_4R+9WA)BX0D^`@``(!X/P`/A;0```!(BY^`````2(M_8$0/MH\/`0``0;@! -M````1")%``^V30(/ME4!BW4(#[:'VP```(E$)#@/MH?:````B40D,`^VA]D` -M``")1"0H#[:'V````(E$)"`/MH?7````B40D&`^VA]8```")1"00#[:'U0`` -M`(E$)`@/MH?4````B00D08/@`4C'QP````"X`````.@`````2,>%@``````` -M``"+50A(B[V0````2(GN_]/K069F9I!(C9^8````28M\)"A(B=[H`````,>% -MF````/0!``!(QX6H`````````$B)K;````!)BWPD*$B)WN@`````2(M<)$!( -MBVPD2$R+9"102(/$6,-F9F:09F9FD&9F9I!F9I!!5T%6055!5%532(/L"$B) -M/"1)B?8/M])(:=*8`0``28G53`.O0`D``$R+A_@(``!)@<"`%```3(EN8$F) -M=4!)@WU8`'4Z28-]8`!U,TB+!"0/MGA#0(3_#X1!!```28MU4+D`````2#NP -MR!(```^$`00``.D9!```9F9FD&9FD$&`#@%)BT5@28E&<$F+15A)B49H2(L4 -M)`^V>D-`A/]T3DF+=5"Y`````$@[LL@2``!T&^LM#[;!2(T40$B-%)!(BP0D -M2#FTT,@2``!U&4B+%"0/MD)!C02!08B&S````.L-N0````"#P0%`./EUQDB+ -M!"1(BXCX"```#[:!Z`@``+X`````//]T*4F+55A(A=)T&P^VP$AIP,@/``!( -M`X&0"0``O@````!(.<)T+[X!````#[:!Z0@``#S_="M)BU582(72=!\/ML!( -M:<#(#P``2`.!D`D``$@YPG4)08AV`>GW````@\8!N@````!FD`^VA`KJ"``` -M//]T)P^VP$B-!,!(P>`%2`.!:`D``$D[16!U#$&(=@'IP````&9FD(/&`4B# -MP@%(@_H$=<.)\4$/MH#H"```//]T)DF+55A(A=)U!8UQ`>L8#[;`2&G`R`\` -M`$D#@)`)``!(.<)UY>LK00^V@.D(```\_W0H28M56$B%TG0<#[;`2&G`R`\` -M`$D#@)`)``!(.<)U!D&(=@'K2X/&`;H`````9F:09F:00@^VA`+J"```//]T -M)@^VP$B-!,!(P>`%20.`:`D``$D[16!U"T&(=@'K$F9FD&:0@\8!2(/"`4B# -M^@1UPTB+%"2`>E$!=3U)BWU82(7_=!)!#[:U@0```+H`````Z`````!)B[T@ -M`0``2(7_#X2\`0``00^VM0T!``"Z`````.@`````28.](`$````/A)P!``!) -MBVU8@'U8`'190;P`````2(U=2$F)WTB)W^@`````2(U(\$B+55!(B4502(E9 -M$$B)41A(B0*`N0\!``#_=1"`>4D`=0I(@[D@`0```'4*08/$`40X95AWNT0X -M95@/A9$```!!#[:%#P$``$&(1@*`?5@`#X23`0``NP````!,C65(3(GGZ``` -M``!(C4CP2(M54$B)15!,B6$02(E1&$B)`DB+04!(A<!T/`^VD0\!```X4`)T -M,$B#N(``````=29(@[B(`````'4<B%`"#[=1.$B+!"1(B[#X"```OP<```#H -M`````(/#`3A=6`^&&@$``.N.00^VA8$```!!B$8"0<:%#P$``/^`?5@`#X3Z -M````NP````!F9F:09F:03(G_Z`````!(C4CP2(M54$B)15!,B7D02(E1&$B) -M`H"Y#P$``/]T3,:!#P$``/](BT%`2(7`=#P/MI&!````.%`"=#!(@[B````` -M`'4F2(.XB`````!U'(A0`@^W43A(BP0D2(NP^`@``+\'````Z`````"#PP$X -M75AV<NN"00^VA8$```!!B$8"ZV(/ML%(C11`2(T4D$B+!"1(.;30R!(``'4B -M2(L4)`^V0D&-!(%!B$8!08B&S````#A*0W44ZPVY`````(/!`4`X^76]0<9& -M`?]!QD8"`$&#O9`!````=`M!BX64`0``08A&`DF-3B!)C968````28N%F``` -M`$F)1B!(BT((2(E!"$B+0A!(B4$02(M"&$B)01A(BT(@2(E!($F-3@Q)C96$ -M````28N%A````$F)1@Q(BT((2(E!"(M"$(E!$$F+A<````!)B49(00^W16AF -M08E&6$$/MT5J9D&)1EI)BT5X28E&4$$/MH6"````08A&7$'V14P$=0E(BSPD -MZ`````!!#[952$B)T(/@!DB#^`9U"_;"`74&08`.`NL$08`F_4$/ME5,T.J# -MX@1!#[8&@^#["=!!B`9!#[9&`4&(ALX```!!#[9&`D&(ALT```!,B??H```` -M`$F+=4"Z`````$B+/"3H`````$R)]^CU^/__2(/$"%M=05Q!74%>05_#9F:0 -M9F:02(/L&$B)7"0(2(EL)!!(B?U(BY_X"```Z`````"`?5$!=0F`N]$4```! -M=#M(C9V8`0``2(M]*$B)WN@`````QX68`0``Z`,``$C'A:@!````````2(FM -ML`$``$B+?2A(B=[H`````$B+7"0(2(ML)!!(@\08PV9F9I!F9I!F9I!!5%53 -M2(/L,$F)^TB)TTB+;BA,BV8P1`^V50M(BX?X"```2(NP^`@``+\`````0;@` -M````N0````!F9F:09F:0#[:4,>@(``"`^O]T2HV!@````&8]@0!W!X/'`>LY +M9F:04TB)^V;'APP!```!``^W]HGQP>$-0;@!````NJ`#``"^`0```.@````` +MOA0```!(B=_H`````%O#9F9FD&9FD$B#[`B)\832=1:X_O___]/`9B&'``$` +M`.L49F:09F:0N`$```#3X&8)AP`!```/M[<``0``Z`````!(@\0(PY!(@^PH +M2(E<)`A(B6PD$$R)9"083(EL)"!)B?U!B=0/MJ[,````#[9>`DB+?G!(A?]T +M"P^VT@^V\^@`````@/L#=Q"-%*N-1*L$0(#]`P]&PNL-C540C44@0(#]`P]& +MPD$/MM0/MO!,B>_H`````$B+7"0(2(ML)!!,BV0D&$R+;"0@2(/$*,-F9I!F +M9I!F9I!!5%5328G\NP````!`#[;NN@(```")[DR)Y^C!^O__J`AT#;@````` +MZR!F9I!F9I"_`0```.@`````@\,!@?L0)P``=<NX_P```%M=05S#D$B#["A( +MB5PD"$B);"003(ED)!A,B6PD($B)_4F)S4&)U$`/MMZ)WNB$____A<!U,$$/ +MMO2)VDB)[^B"^___A<!T'KH!````B=Y(B>_H/_K__T&(10"X`````.L)9F9F +MD+C_____2(M<)`A(BVPD$$R+9"083(ML)"!(@\0HPV:02(/L*$B)7"0(2(EL +M)!!,B60D&$R);"0@2(G]08G-1`^VXD`/MMY$B>&Z`0```(G>Z`OZ__^Y0``` +M`+H"````B=Y(B>_H]_G__XG>2(GOZ-W^__^%P'5,187M=#1!]L0!=!6)VKY` +M````2(GOZ,_Z__^%P'0NZS.)VKX8````2(GOZ+KZ__^%P'09ZQYF9F:0B=J^ +M*````$B)[^BA^O__A<!U![C_````ZP:X`````)!(BUPD"$B+;"003(MD)!A, +MBVPD($B#Q"C#9F9FD&9FD$%7059!54%455-(@^P(28G]2(D,)$6)QHGSB=6$ +MT@^$\0```$0/MOZY9````+H"````1(G^Z#;Y__]$B?Y,B>_H&_[__X7`=1"Z +M`P```$2)_DR)[^CG^/__0`^VU;D!````1(G^3(GOZ,/^__]!O/____^$P`^% +M@P$``$&\`````$6%]@^.=`$``$B+'"1!O`````!!C6[_1#GE=36Y0````+H" +M````1(G^3(GOZ+[X__])8\Q(`PPDNE@```!$B?Y,B>_HY_W__X7`=#7I+`$` +M`+E$````N@(```!$B?Y,B>_HB?C__TB)V;I0````1(G^3(GOZ+;]__^%P`^% +M_````$&#Q`%(@\,!13GT#X3K````ZX._H(8!`.B!^/__#[;K#[;(N@,```") +M[DR)[^@\^/__B>Y,B>_H(OW__X7`=")!#[:-.1(``+H#````B>Y,B>_H%_C_ +M_T&\_____^F:````B>J^8````$R)[^C]^/__A<!T#4&\`````$6%]GYEZQ]! +M#[:-.1(``+H#````B>Y,B>_HU??__T&\_____^M;2(L<)$&\`````&9FD+E$ +M````N@(```")[DR)[^BL]___2(G9NH````")[DR)[^C:_/__A<!U#4&#Q`%( +M@\,!13GT=<E!#[:-.1(``+H#````B>Y,B>_H<O?__T2)X$B#Q`A;74%<05U! +M7D%?PTB#[!A(B5PD"$R)9"0028G\2(G00`^VUD&)R$B)P;X!````Z,C]__^) +MP[E4````N@(```"^`0```$R)Y^@?]___B=A(BUPD"$R+9"002(/$&,-F9F:0 +M9F9FD&9FD&9FD$B#[!A(B5PD"$R)9"0028G\2(G00`^VUD&)R$B)P;X````` +MZ&C]__^)P[E4````N@(```"^`````$R)Y^B_]O__B=A(BUPD"$R+9"002(/$ +M&,-F9F:09F9FD&9FD&9FD$%6055!5%5328G]2(G-18G&B=-$#[;FN60```"Z +M`@```$2)YNAW]O__1(GF3(GOZ%S[__^%P'40N@,```!$B>9,B>_H*/;__P^V +MT[D!````1(GF3(GOZ`7\__^$P'4V187V?CA(B>N]`````&9F9I`/MA.Y```` +M`$2)YDR)[^C=^___A,!U#H/%`4B#PP%$.?5T">O;N/_____K!;@`````6UU! +M7$%=05[#9F:09F:02(/L&$B)7"0(3(ED)!!)B?Q(B=!`#[;608G(2(G!O@`` +M``#H*/___XG#N50```"Z`@```+X`````3(GGZ*_U__^)V$B+7"0(3(MD)!!( +M@\08PV9F9I!F9F:09F:09F:02(/L"$B+A_@(``!(A<!(#T3'0(@U`````+D@ +M````2,?"`````+X.````2(G'Z`````!(@\0(PV9FD&9FD&9FD$B#[`B)\832 +M=!:X`0```-/@9@F'9!0``.L49F:09F:0N/[____3P&8AAV04```/MK=D%``` +MZ`````!(@\0(PY!!5T%6055!5%532(/L2$B)^TF)]DB+3BA(@\$!BW8<@^X! +MQT0D1`````!)BT8P2(E$)"`/ME$!@/H!=11!QT90`````.F'!```9F9FD&9F +MD(#Z`G5)@'D"`74V2(N'^`@``$B%P$@/1,=(BY#P"```#[9!`XB"9A0```^V +M00.(@NXH``!!QT90`````.D_!```0<=&4/[____I,@0``(#Z!`^%_@$```^V +M00.#Z#L\`0^'[P$``$V+?BA)@\<!00^V;P)(BY_P"```0`^V]4B)W^@````` +MB<*$P'0-#[;`@+P#8`@``/]U4$B+F_`(``!(@<.(%```2(N[\`@``.@````` +MB>HHP@^V\DB)W^@`````B<*$P'0-#[;`@+P#8`@``/]U%$''1E#_____3(GW +M0?]62.FM`P``#[;"#[:$`V`(``"`^H%W9`^VR$AIR<@/``!!#[9W!$$/ME<% +MP>(000^V1P;!X`@)PD$/MD<'"<*)5"0L00^V5PC!XA!!#[9'"<'@"`G"00^V +M1PH)PHE4)#!(B<U(`ZN("0``#X3M````@'U8`'4=Z>(```!!QT90_____TR) +M]T'_5DAF9F:0Z2$#``!!O`````#&1"0W`$R-;4B+1"0L2(E$)!!)C5<+2(E4 +M)`A`#[;VB70D!$R)[^@`````2(U8\$B+55!(B4503(EK$$B)4QA(B0(/MD-) +M/`UT!#PB=5U!#[9'`SP[="(\/'5038GPBTPD+(M4)#"+="0$2(G?Z`````#& +M1"0W`>LR2(N[*`$``$B+5"002(MT)`CH`````$V)\(M,)"R+5"0PBW0D!$B) +MW^@`````QD0D-P%!@\0!1#AE6`^':O___X!\)#<`#X57`@``0<=&4/____], +MB?=!_U9(9I#I00(``(#Z`P^%F0```(!Y`@$/A8(````/MD,^C30`#[9Y`XGZ +MB?C!^A_W_HG5.=9^6TR-:01$#[;B#[91!$2)YDB)W^@`````C47\@_@#=AB- +M1?2#^`-V$(U%[(/X`W8(C47D@_@#=P=(@<.(%```00^V50!$B>9(B=_H```` +M`$''1E``````Z:,!``!!QT90_O___^F6`0``0<=&4/[____IB0$``(`Y!78W +M@'D$_G4Q2(U4)$1(B[OP"```3(GVZ`````"$P`^%8@$``,=$)$0`````0<=& +M4/_____I30$``$R+J_@(``!-A>U,#T3K2(G+N`(```!(*<A(B40D&$QC_NF< +M````9F9FD&9FD`^V*TR-8@$/MM#VP@%T08M,)$2-1`T`03M&(`^'V@```(G) +M2`-,)"!!B>B^`````$R)[^BX]___.>@/A;L````!;"1$3(GCZTQF9F:09F:0 +M2&/%2HT<($B+1"082`'83#GX#X^3````08GH3(GAO@````!,B>_H1?K__X7` +M=7R`.P!U!H![`0!T"[\0)P``D.@`````2(U3`0^V0P&$P`^%6____P^V`X3` +M=%</MMBY5````+H"````O@````!,B>_HFO#__XM,)$1!BT8@*<@YPP]'V(G) +M2`-,)"!!B=BZ`````+X`````3(GOZ/_V__^%P'@&`40D1.L(0<=&4/____^Y +M5````+H"````O@````!,B>_H1O#__V9FD&9FD$F+5CA(A=)T!HM$)$2)`DR) +M]T'_5DA(@\1(6UU!7$%=05Y!7\-F9F:09F9FD&9FD$B#[`A(BX?X"```2(7` +M2`]$QTB+N/`(```/MH=G%```A,!T#8/H`8B'9Q0``(3`=1W&!0``````N2`` +M``!(Q\(`````O@X```#H`````$B#Q`C#9F9FD&9FD&9FD&9FD$B#[`A(BX?X +M"```2(7`2`]$QTB+N/`(``"`OV84````=22`AV<4```!Q@4``````;D@```` +M2,?"`````+X.````Z`````!(@\0(PV9FD&:02(/L&$B)7"0(3(ED)!!)B?Q( +MB=!`#[;608G(2(G!O@````#HF/C__XG#N50```"Z`@```+X`````3(GGZ!_O +M__^)V$B+7"0(3(MD)!!(@\08PY"0D)"0D)"0D)"0D)"0B?9(BT<(2"T``@$` +M2`'&BP:)!0````##9F9FD&9F9I")]DB+1PA(+0`"`0!(`<:)%L-F9F:09F9F +MD&9FD&9FD%-(B?M(BU<(2('J``(!`,>"@``!``````"+@@0!`0")!0````"` +MS`&)@@0!`0"Z"````+X,P@``Z`````"ZN`L``+X(P@``2(G?Z`````"Z`0`` +M/+X`P@``2(G?Z`````"Z"````+X,PP``2(G?Z`````"ZN`L``+X(PP``2(G? +MZ`````"Z`0``/+X`PP``2(G?Z`````"Z@("`@+XXP@``2(G?Z`````"Z"!@H +M.+X@P@``2(G?Z`````"Z@("`@+X\P@``2(G?Z`````"Z"1DI.;XDP@``2(G? +MZ`````"Z@("`@+Y`P@``2(G?Z`````"Z"AHJ.KXHP@``2(G?Z`````"Z@("` +M@+Y$P@``2(G?Z`````"Z"QLK.[XLP@``2(G?Z`````"Z@("`@+Y(P@``2(G? +MZ`````"Z2$E*2[XPP@``2(G?Z`````"Z@("`@+XXPP``2(G?Z`````"Z#!PL +M/+X@PP``2(G?Z`````"Z@("`@+X\PP``2(G?Z`````"Z#1TM/;XDPP``2(G? +MZ`````"Z@("`@+Y`PP``2(G?Z`````"Z#AXN/KXHPP``2(G?Z`````"Z@("` +M@+Y$PP``2(G?Z`````"Z#Q\O/[XLPP``2(G?Z`````"Z@("`@+Y(PP``2(G? +MZ`````"Z3$U.3[XPPP``2(G?Z`````#'0U2`@("`QT-8@("`@,=#7("`@(#' +M0V"`@("`QT-D@("`@$B-@X@4``#'0%2`@("`QT!8@("`@,=`7("`@(#'0&"` +M@("`QT!D@("`@%O#9I!(BU<(2('J``(!`(N";``!`(D%`````(F";``!`,-F +MD$B+5PA(@>H``@$`BX)H``$`B04`````"?")@F@``0##55-(B?N)\4@YO_`( +M```/A;P```")\,#H`D&X`````)`/MO")R/?0@^`#C3S%`````+@'````B?G3 +MX/?01(M,LU1!(<%$B4RS5(32=`ZX`0```-/@1`G(B42S5$$/ML")Q<'E"(M3 +M5(VU.,(``$B+N_`(``#H`````(M36(VU/,(``$B+N_`(``#H`````(M37(VU +M0,(``$B+N_`(``#H`````(M38(VU1,(``$B+N_`(``#H`````(M39(VU2,(` +M`$B+N_`(``#H`````%M=PXGPP.@"@^@%0;@!````Z3W___]F9F:09F:09F:0 +M9F:005=!5D%505154TB#[`A(B?U!B?9!B==!B<U(BT<(3(L@3(GGZ`````!( +MB<-(A<`/A.L```!,B>?H`````$B)PDB%P`^$UP```,9%7`'&0SCAQD,Y`<9# +M.A#&0R6[#[9%6V:)0R!,B6,HQT,TD````$B-0A!(B4-(2(E3>$B)P4B)PK@` +M````Q@00`$B#P`%(/9````!U\,9!`8+&`4!$B'$"1(AY`T2(:01!@/T"=R%( +MC7D(2HT4K0````"!XOP#``!)C;0DH!(``.@`````ZRM)BX0DH!(``$B)00A( +MC7D000^VU8T4E?C___](8]))C;0DJ!(``.@`````2,>#H`````````!(C7M8 +MO@````#H`````$B)WDR)Y^@`````2(/$"%M=05Q!74%>05_#D$B#[#A(B5PD +M"$B);"003(ED)!A,B6PD($R)="0H3(E\)#!(B?U!B?5!B=9!B<](BT<(3(L@ +M3(GGZ`````!(B<-(A<!T>TR)Y^@`````2(G"2(7`=&O&15P!QD,XX<9#.0'& +M0SH0QD,ENP^V15MFB4,@3(EC*,=#-)````!(C4(02(E#2$B)4WC&0`$"QD(0 +M0$2(:`)$B'`#1(AX!$C'@Z``````````2(U[6+X`````Z`````!(B=Y,B>?H +M`````$B+7"0(2(ML)!!,BV0D&$R+;"0@3(MT)"A,BWPD,$B#Q#C#9F9FD&9F +MD&9FD&9FD$%6055!5%532(G[08GU08G62(M'"$B+*+D"````N@````"^```` +M`.@`````@'M<`'082(GOZ`````"_`0```.@`````@'M<`'7H2(M#"$B+`$@% +MH!(``(!X`@!X.X!(`H"Y`0```+H`````O@````!(B=_H`````(![7`!T&F:0 +M2(GOZ`````"_`0```.@`````@'M<`'7H1(GHP.@"1`^VX+D!````1(GBO@,` +M``!(B=_H`````(![7`!T&V9FD$B)[^@`````OP$```#H`````(![7`!UZ$B+ +M0PA(BS!$B>GWT8/A`T6$]@^5PL'B`P^VA`Z@$@``@^#G"="(A`Z@$@``N0$` +M``!$B>*^`P```$B)W^@`````6UU!7$%=05[#9F9FD&9F9I!F9I!F9I!(@^PH +M2(E<)`A(B6PD$$R)9"083(EL)"!(B?M(B?4/MT8@9CV%`'<;3(NOB`D```^W +MP`^VA`=@"```3&G@R`\``.L-3(NOB`D``$&\.+@/`$B+54B`>@$"=19(BT($ +M2(F#H!(``$B+0@Q(B8.H$@``2(MU>$B%]G0(2(G?Z`````!(B>Y(B=_H```` +M`$/&1"5<`$B+7"0(2(ML)!!,BV0D&$R+;"0@2(/$*,.0D)"0D$F)T4R+ES@) +M```/MT8@NF">`0!F/84`=Q</M\`/MH0'8`@``$B-%$!(C1202,'B!4V-@2`$ +M``!!QH$@!```)V:!?CCA`74I1`^V3CI!C4'_/`%W#$&Y#P```$0B3COK+D&- +M0>]!N0\````\`78@9I!)C0020;D`````2(-X8`!T#4&Y#P```$0BB($```!! +M#[9``8/@\$0)R$&(0`&X`0```&:!?CCA`746#[9&.H/H`3P!#Y?`#[;`9F9F +MD&9FD(G"P>('00^V0`&#X'\)T$&(0`$/MD$&08A``@^V`4&(0`,/MD$%08A` +M!P^V00=!B$`/#[9!`D&(0`0/MD$#08A`!0^V001!B$`&#[9!`4&(0`P/MD$* +M08A`"`^V00M!B$`)#[9!#$&(0`H/MD$(08A`"P^V00E!B$`-PV9FD&:00`^V +MQ\-F9F:09F9FD&9FD(GX#[;$PV9F9I!F9I!F9I#&1R0"2(M'4$"(<`)(BT=0 +MQD`'`$B+1U"(4`S#9F9FD`^V1SV(1@(/MD<\B$8##[9'.XA&!`^V1SJ(1@K# +M9F:0#[9'08A&`@^V1T"(1@,/MD<_B$8$#[9'/HA&"@^V1SV(1@L/MD<\B$8, +MPV9FD&:0A=)^(;D`````9F9FD&9FD(G0*<B#^`(/G<`/ML"-3`$!.<I_Z_/# +M9F:09F:09F:02(/L*$B)'"1(B6PD"$R)9"003(EL)!A,B70D($B)^TB)U4&) +M]@^V1S@\*G0E/"IW$3PH#X7=````9F9FD&9FD.L0/(AT*CR*#X7(````9I#K +M'D0/MF-`1`^V:S](B>Y(B=_H`````.L<9F9FD&9FD$0/MF-%1`^V:T1(B>Y( +MB=_H`````,9%!4"+@Y0```"I```!`'0P1(AE`$2(;0A"C03U`````(A%`0^V +M0S@\*'0$/(AU"\9%!F#K6V9FD&:0QD4&8>M0J0``!`!F9I!FD'0@1(AE`42( +M;0D/MD,X/"AT!#R(=0;&108EZRK&108UZR1$B&4!#[9#.H/@#PA%!0^V0S@\ +M*'0$/(AU!L9%!LCK!,9%!LI(BQPD2(ML)`A,BV0D$$R+;"083(MT)"!(@\0H +MPV9F9I!F9I!F9I!F9I`/MD<Z"D<["D<\"D<]#[;`#[970(/B`0G0=!6Z)``` +M`+X%````Z`````#SPV9F9I#&1@;L2,>'H`````````##2(/L($B)'"1(B6PD +M"$R)9"003(EL)!A(B?M(B?4/MD<X/"]T"SR/=5GK%V9FD&:01`^V9T!$#[9O +M/^@`````D.L/1`^V9T5$#[9O1.@`````QD4%0/:#E@````1T$D2(90%$B&T) +MQD4&0NL69F9FD$2(90$/MD,Z@^`/"$4%QD4&0$B+'"1(BVPD"$R+9"003(ML +M)!A(@\0@PV9FD&9FD$B)\<9"!4`/MD8X/#5T!CR1=2/K&P^W1VB#X`&#^`$9 +MP(/@_8/H%HA"!NLD9F9FD,9"!NKK&KHD````O@4```!(B<_H`````//#9F:0 +M9F:0]D$Y`G0$QD$D`//#9F9FD/9'//!T#[HD````O@4```#H`````//#9F:0 +M9F:09F:02(/L"$F)\+@`````9F9FD,8$"`!(@\`!2(/X#77R00^V0#@\-0^$ +MG0```#PU=RD\*'1B/"AW#CP;#X6A`P``D.F;````/"IT3#PO9F:09I`/A8H# +M``#K6#R/9F:09F:0=$X\CW<2/(AT*SR*9F9FD`^%:@,``.L=/)%F9I!F9I!T +M1CSA#X56`P``9F:09F:0Z80````/MO)(B<I,B<?H`````,=$)`0!````Z3@# +M``!(B<Y,B<?H`````,=$)`0!````Z2`#``!(B<I,B<;H`````,=$)`0!```` +MZ0@#``!!]D`\`70AQD$&<,9!!`#&00,`QD$"`,9!!4#'1"0$`0```.G@`@`` +MQD$&X,=$)`0!````Z<\"``!!@'@Y`0^%O`(``$&`>#H<#X>Q`@``00^V0#K_ +M),4`````QD$'!,=$)`0!````Z9P"``#&00<`QT0D!`$```#IBP(``,9!!NS' +M1"0$`0```.EZ`@``QD$&[\8!`T$/MD`[@\A`B$$!QT0D!`$```#I6P(``,9! +M!N_&`0?'1"0$`0```.E'`@``QD$&0,9!`0'&005`QT0D!`$```#I+@(``,9! +M!N_&`0-!#[9`.X/("(A!`<=$)`0!````Z0\"``#&00;OQ@$"QT0D!`$```#I +M^P$``,9!!N_&`8+'1"0$`0```.GG`0``QD$&[\8!!L=$)`0!````Z=,!``#& +M00;OQ@&&QT0D!`$```#IOP$``,9!!N-!#[9`.XA!`<=$)`0!````Z:8!``#& +M00:PQ@'8QD$#3\9!!,+'1"0$`0```.F*`0``QD$&L,8!V<9!`T_&003"QT0D +M!`$```#I;@$``,9!!K#&`=K&00-/QD$$PL=$)`0!````Z5(!``#V1V@!=!'& +M00;JQT0D!`$```#I.P$``,9!!N?'1"0$`0```.DJ`0``QD$&[\8!JL=$)`0! +M````Z18!``#&00;OQ@%5QT0D!`$```#I`@$``,9!!B_&00$!QD$"$,=$)`0! +M````Z>D```#&00;D00^V0#R(`4$/MD`]B$$(00^V0#N(007'1"0$`0```.G! +M````00^V0#N(009!#[9`/(@!00^V0#V(00)!#[9`/HA!`T$/MD`_B$$$00^V +M0$&(00I!#[9`0(A!`<=$)`0!````Z7T```#&00;H00^V0#R(`4$/MD`]B$$( +M00^V0#N(005!#[9`/HA!`D$/MD`_B$$#00^V0$"(001!#[9`08A!`<=$)`0! +M````ZSC'1"0$`0```$'V0#P!="G&009PQD$$`,9!`P#&00(`QD$%0,=$)`0! +M````ZPMF9I#'1"0$`````(M$)`1(@\0(PV9F9I!F9F:09F9FD&9FD%-(@^P@ +M2(GS2(M.2$C'!"0`````2,=$)`@`````2,=$)!``````2,=$)!@`````]H&G +M````!'0-2(N1R````$B#Z@'K!HM1>(/J`8![."5U84B)T$C!Z!B(!"1(B=!( +MP>@0B$0D`4B)T$C!Z`B(1"0"B%0D`_:!U0```!!U%,9$)`8"QD0D!P"X"``` +M`.FN````2(U\)`1(C;'J````N@0```#H`````+@(````Z8X```!(B=!(P>@X +MB`0D2(G02,'H,(A$)`%(B=!(P>@HB$0D`DB)T$C!Z""(1"0#2(G02,'H&(A$ +M)`1(B=!(P>@0B$0D!4B)T$C!Z`B(1"0&B%0D!_:!U0```!!U%<9$)`H"QD0D +M"P"X(````.LD9F9FD$B-?"0(2(VQZ@```+H$````Z`````"X(````&9FD&:0 +M2(M[2$ACT$B)YN@`````2(/$(%O#9F9FD&9F9I!F9I!32(GS2(M74$B+"@^V +M1C@\+W1?/"]W*SP;#X0Q`0``/!MW#SP2#X5%`0``9F:09I#K0#PH=#P\*@^% +M,@$``&:0ZS`\BG0L/(IW&#PU9F9FD`^$^@```#R(#X42`0``9I#K$#R/=`P\ +MX0^%`@$``&:0ZW7V1V@!=`J!BY0```````0`]D=J$`^$%`$``$B#?V``#X4) +M`0``#[9#.#PH=!`\*G0,/(AT"#R*#X7Q````]D(,`744#[9R"$B)S^@````` +MA,`/A-<```"`>R2!#X3-````@8N4```````!`+@!````Z;X```"`?CD!#X6D +M````@'XZ'`^'F@```$@/ODXZN`$```!(T^"I]C_`'74CJ0A`!@!U#*D``"`` +M=2-F9I#K<X..E`````BX`0```&:0ZW.#CI0````!N`$```#K98..E````""X +M`0```.M79I#V1V@!=`J!BY0```````0`@XN4`````;@!````ZS=FD(N#E``` +M`*D``"``=!CV1V@!=!T-```$`(F#E````+@!````ZQ"X`````.L)9F9FD+@! +M````6\.0D)"0D)"0D)!(BW\(10^VP$'!X`0/MM+!X@A!"=!$B<"#R`2$R40/ +M1<!!@_G_=!E(C9<`_O[_1(G()?__`P")@@3(``!!@\@"1(D&PV9F9I!F9F:0 +M9F9FD$B+1PA(+0`"`0"#S@&)L`#(``##9F9FD&9F9I!F9F:005154T&)]$B+ +M1PB%]G1,2"T``@$`2(VH`,@``(N``,@``(D%`````+L`````J`%U#^LABT4` +MB04`````J`%T%+\*````Z`````"#PP%$.>-UX>L'N`````#K!;C_____6UU! +M7,-F9F:09F9FD&9FD%532(/L&$B)^\=$)!0`````2(MO",:':!0````/MA4` +M````2(UT)!1!N0````!!N`(```"Y`0```.CB_O__BW0D%$B)W^@F____OJ"& +M`0!(B=_H.?___X7`=55(C84`_O[_BX`,R```B04`````B40D%#T?8P``=3?' +M@U@4```?8P``QX-<%``````$`,>#8!0``````0!(QX-P%````````&:X``#I +M5P(``&9FD&:0QT0D%`````!(BVL(QH-H%````0^V%0````!(C70D%$&Y____ +M_T&X`@```+D!````2(G?Z#C^__^+="042(G?Z'S^__^^$"<``$B)W^B/_O__ +MA<!U;DB-A0#^_O^+@`S(``")!0````")1"04/1]#``!T+3T?1```=4G'@U@4 +M```?1```QX-<%``````'`,>#8!0``````0#IDP$``&9FD,>#6!0``!]#``#' +M@UP4``````0`QX-@%``````!`.EM`0``QT0D%`````!(BVL(QH-H%`````^V +M%0````!(C70D%$&Y`````$&X`@```+D!````2(G?Z'7]__^+="042(G?Z+G] +M__^^$"<``$B)W^C,_?__A<!U4$B-A0#^_O^+@`S(``")!0````")1"04/;]# +M``!U,L>#6!0``+]#``#'@UP4`````"``QX-@%````!```$C'@W`4```````` +M9K@``.GJ````QT0D%`````!(BVL(QH-H%`````^V%0````!(C70D%$&Y```` +M`$&X`@```+D!````2(G?Z-#\__^+="042(G?Z!3]__^^$"<``$B)W^@G_?__ +MA<!U9TB-A0#^_O^+@`S(``")!0````")1"04/>\1``!T"3WO$@``=4+K(,># +M6!0``.\1``#'@UP4``````0`QX-@%``````!`.L^QX-8%```[Q(``,>#7!0` +M````"`#'@V`4``````$`ZQZX_____^LG9F:09I!(QX-P%````````+@````` +MZQ!(QX-P%````````+@`````2(/$&%M=PV9F9I!F9I!(@^PH2(E<)!!(B6PD +M&$R)9"0@2(G[B?=)B=1(BVL(@/D$N`0````/1\A(BX-P%```#[90!$B-="0, +M08GY1`^VP;D!````2(G?Z,+[__^+="0,2(G?Z`;\__^^$"<``$B)W^@9_/__ +MNO____^%P'4@2(V%`/[^_XN`#,@``(D%`````(E$)`Q!B00DN@````")T$B+ +M7"002(ML)!A,BV0D($B#Q"C#9F9FD&9FD&9FD%532(/L&$B)^TB)U4B+AW`4 +M```/ME`+2(U$)!1!B?%!N`$```"Y`0```$B)QN@N^___BW0D%$B)W^AR^___ +MOA`G``!(B=_HA?O__[K_____A<!U&DB+0PA(+?0Y``"+`(D%`````(A%`+H` +M````B=!(@\086UW#9F:09F:09F:005=!5D%505154TB#[!A(B?M!B<U!B?=! +MB=:%R0^$C@```+T`````3(MC"$B+@W`4```/ME`"0;G_____0;@!````N0$` +M``!(C70D%$B)W^B,^O__BW0D%$B)W^C0^O__OA`G``!(B=_HX_K__X7`=2E) +MC80D`/[^_XN0#,@``(D5`````$2)^"'01#CP=0>X`````.L?B50D%+\*```` +MZ`````"#Q0%$.>T/A7?___^X_____TB#Q!A;74%<05U!7D%?PV9F9I!F9F:0 +M9F9FD%-(@^P02(G[2(N'<!0```^V$$B-="0,0;G_____0;@`````N0````#H +MX_G__XMT)`Q(B=_H)_K__[X0)P``2(G?Z#KZ__^%P'4FN>"3!`"Z`@```+X# +M````2(G?Z,_^__^Z`````(7`=`MF9I!F9I"Z_____XG02(/$$%O#9F:02(/L +M*$B)7"082(EL)"!(B?N)]<9$)!?_2(U4)!?H`````(7`=7*`?"07`'1S2(G? +MZ$O___^#^/]T7DB+@W`4```/ME`*2(UT)!!!B>E!N`````"Y`````$B)W^@P +M^?__BW0D$$B)W^AT^?__OA`G``!(B=_HA_G__X7`=1NYX),$`+H`````O@,` +M``!(B=_H'/[__X7`=`BX_____^L&D+@`````2(M<)!A(BVPD($B#Q"C#9F9F +MD&9F9I!F9F:02(/L6$B)7"0H2(EL)#!,B60D.$R);"1`3(ET)$A,B7PD4$B) +M_4&)]HG+2(._<!0````/A/@"``!)B==%A,`/A%P!``"#_O]U%P^WAU@4``!F +MB0*X`0```.GY`@``9F:0@_[^=1*+AUP4``")`K@!````Z=\"``"#_OUU%(N' +M8!0``(D"N`$```#IR`(``&:0`?.)7"0,.Y]<%```#X>.`@``B?.#X_Q!B?1! +M@^0#=&),C6PD)+D$````3(GJB=[H_/O__X/#!+H$````.5PD#',-1(G@1"GP +MBTPD#(T4"$0YXG8N1(GA3(G_9F:09F:0B<A!#[9$!0"(!TB#QP&#P0$YT77K +MB=!$*>"#Z`%-C7P'`42+9"0,08/D_$0YXW,J3(UL)"2Y!````$R)ZHG>2(GO +MZ(G[__^+1"0D08D'28/'!(/#!$$YW'?;.5PD#`^&XP$``$R-9"0DN00```!, +MB>*)WDB)[^A5^___BW0D#"G>#X3``0``N0````"Z`````$$/M@040H@$.H/! +M`4B#P@$Y\0^$G@$``.OF9F:09I"#_O]U*X`Z#W41QH=I%````;@!````Z9L! +M``#&AVD4````N`$```#IB@$``&9F9I")3"04B<@!\#N'7!0```^'3`$``("_ +M:10````/A#\!``")\+H`````][=@%```A=(/A8T```"`OV@4````=`WH```` +M`(7`#X44`0``2(GOZ)S\__^#^/\/A`,!``!(BX5P%```#[90!DB-="0D18GQ +M0;@`````N0````!(B>_H??;__XMT)"1(B>_HP?;__[X0)P``2(GOZ-3V__^% +MP`^%O````+G@DP0`N@````"^`P```$B)[^AE^___A<`/A9T```"%VP^$G``` +M`,=$)!``````BT0D$$6+)`=$BVPD$$4!]4B+70A(@>L``@$`2(GOZ/K[__]$ +MB:,(R```2(N%<!0```^V4`5%B>E!N`0```"Y`````$B-="0D2(GOZ-WU__^+ +M="0D2(GOZ"'V__^^$"<``$B)[^@T]O__A<!U(+F($P``N@````"^`0```$B) +M[^C)^O__A<!T%V9FD&:0N`````#K'[@!````9F9FD.L4@T0D$`2+1"00.40D +M%';FZ4W___](BUPD*$B+;"0P3(MD)#A,BVPD0$R+="1(3(M\)%!(@\18PY"0 +MD)"0D)"X`````,-F9F:09F:09F:0N``````Y/0````!^-TACQTC'P0````!( +MC01`2,'@`P^W%`AFB18/MU0(`F:)5@(/ME0("(A6"`^V1`@)B$8)N`$```#S +MPV9F9I!F9I!F9I"X$"L``,-F9F:09F:09F:0N-````##9F9FD&9FD&9FD+@( +M````PV9F9I!F9I!F9I"^`````$&X`````+D`````#[:4.>`(``"`^O]T2HV! +M@````&8]@0!W!X/&`>LY9I`/ML)(BY=@"0``2(T$P$C!X`6`O!`5`0```W48 +M08/``4&-0`.#^`9V#H/&`4&X`````.L#@\8!2(/!`4B#^09UGXGPPV9F9I!F +M9F:09F9FD$B)^4&Z`````$&[`````$&Y@````$`/MO:#Q@%F9F:018G(#[:! +MX`@``#S_=%!F08'Y@0!W"D&#P@'K/69F9I`/ML!(BY=@"0``2(T$P$C!X`6` +MO!`5`0```W4908/#`4&-0P.#^`9V$$&#P@%!NP````#K!$&#P@%$.=9T%TB# +MP0%!@\$!08'YA@```'610;@`````1(G`PV9F9I!F9I#SPV9F9I!F9F:09F:0 +M9F:0QH?+`````,-F9F:09F9FD+C_````2(7_=$2^_____[D`````#[:$.>(( +M```\_W0@#[;`2(N78`D``$B-!,!(P>`%#[:$$!0!``!`.,8/1_!(@\$!2(/Y +M!'7*0`^VQO/#N`````##9F9FD&9FD&9FD+@`````PV9F9I!F9I!F9I")\,#H +M!(U(5XU0,#P*#T/1B!>)\(/@#X/X"7X*B?"#X`^#P%?K"(GP@^`/@\`PB$<! +MPV9F9I!F9F:09F:09F:02(/L$$B)'"1,B60D"$B)^T&)]$R)X`^V].BB____ +M00^V]$B#PP)(B=_HDO___TB+'"1,BV0D"$B#Q!##9F9FD,="!`````#'`@`` +M``"X`````,-F9F:09F:09F:09F:02(M'8$B%P'112,=`0`````"`2$P$2,=' +M8`````!(QT=P`````$C'1V@`````BT<(@_@_?Q-(BU=X2)A(QX3"8`0````` +M``##2(M7>$B82,>$PF`"````````\\-F9F:02(M'8$B%P'112,=`0`````"` +M8$S[2,='8`````!(QT=P`````$C'1V@`````BT<(@_@_?Q-(BU=X2)A(QX3" +M8`0```````##2(M7>$B82,>$PF`"````````\\-F9F:02(/L"$C'QP````#H +M`````+@`````2(/$",-F9I!F9I!54TB#[#C&!"1MQD0D`?_&1"0"(\9$)`,4 +MQD0D!#K&1"0%[\9$)`86QD0D!Y)(BZ_X"```2(7M2`]$[TB-1"002(G"Q@`` +M2(/``4B)TTB-3"0P2#G(=>S&1"04`;D@````O@X```!(B>_H`````(7`=4*_ +M@!H&`.@`````N2````!(B=J^#P```$B)[^@`````@_@@=1Y(C7,02(GGN0@` +M``#\\Z8/E\(/DL"Y`0```#C"=!9(Q\<`````N`````#H`````+D`````#[;! +M2(/$.%M=PV9F9I!F9F:09F9FD$%7059!54%455-(@^QH28G\3(N_\`@``$F! +MQX@4``!(BP=(A<!T$TB-L```_O](B3=(BW\@Z`````!)BW0D$$B%]G0*28M\ +M)"#H`````$F+="082(7V=`I)BWPD(.@`````2(U,)&5(C50D9DB-="1G00^W +M?"0\2(U$)%I(B40D.$B-1"1<2(E$)#!(C40D5DB)1"0H2(U$)%A(B40D($B- +M1"1@2(E$)!A(C40D8DB)1"002(U$)&-(B40D"$B-1"1>2(D$)$R-3"1D3(U$ +M)%3H`````$F+M"0X"0``2(7V="!)C;PD&`D``.@`````28NW.`D``$F-OQ@) +M``#H`````$F+M"1@"0``2(7V="!)C;PD0`D``.@`````28NW8`D``$F-OT`) +M``#H`````$F+M"2("0``2(7V="!)C;PD:`D``.@`````28NWB`D``$F-OV@) +M``#H`````$F+M"0H"P``2(7V="!)C;PD"`L``.@`````28NW*`L``$F-OP@+ +M``#H`````(!\)&<`=$2]`````$V-M"18"P``38VO6`L```^WW4F+M-QX"P`` +M3(GWZ`````!)B[3?>`L``$R)[^@`````@\4!#[9$)&=F.>AWT$F+M"0($``` +M2(7V="!)C;PDZ`\``.@`````28NW"!```$F-O^@/``#H`````$F+M"1`$``` +M2(7V="!)C;PD(!```.@`````28NW0!```$F-OR`0``#H`````$F+M"2P$``` +M2(7V="!)C;PDD!```.@`````28NWL!```$F-OY`0``#H`````$F+M"2P"0`` +M2(7V="!)C;PDD`D``.@`````28NWL`D``$F-OY`)``#H`````$F+M"2("@`` +M2(7V="!)C;PD:`H``.@`````28NWB`H``$F-OV@*``#H`````$F+M"08"@`` +M2(7V="!)C;PD^`D``.@`````28NW&`H``$F-O_@)``#H`````$F+M"1`"@`` +M2(7V="!)C;PD(`H``.@`````28NW0`H``$F-OR`*``#H`````$F+M"38"@`` +M2(7V="!)C;PDN`H``.@`````28NWV`H``$F-O[@*``#H`````$F+M"0`"P`` +M2(7V="!)C;PDX`H``.@`````28NW``L``$F-O^`*``#H`````$F+M"10"P`` +M2(7V="!)C;PD,`L``.@`````28NW4`L``$F-OS`+``#H`````$F+M"28#P`` +M2(7V="!)C;PD>`\``.@`````28NWF`\``$F-OW@/``#H`````$F+M"30#P`` +M2(7V="!)C;PDL`\``.@`````28NWT`\``$F-O[`/``#H`````$F+M"1X$``` +M2(7V="!)C;PD6!```.@`````28NW>!```$F-OU@0``#H`````$F+M"2P"@`` +M2(7V="!)C;PDD`H``.@`````28NWL`H``$F-OY`*``#H`````$F+M"38$``` +M2(7V="])BY0DX!```$F-O"2X$```Z`````!)BY?@$```28NWV!```$F-O[@0 +M``#H`````$F+M"0($0``2(7V="])BY0D$!$``$F-O"3H$```Z`````!)BY<0 +M$0``28NW"!$``$F-O^@0``#H`````$F+M"0X$0``2(7V="])BY0D0!$``$F- +MO"08$0``Z`````!)BY=`$0``28NW.!$``$F-OQ@1``#H`````$F+M"28$0`` +M2(7V="])BY0DH!$``$F-O"1X$0``Z`````!)BY>@$0``28NWF!$``$F-OW@1 +M``#H`````$F+M"1H$0``2(7V="])BY0D<!$``$F-O"1($0``Z`````!)BY=P +M$0``28NW:!$``$F-OT@1``#H`````$F+M"3($0``2(7V="])BY0DT!$``$F- +MO"2H$0``Z`````!)BY?0$0``28NWR!$``$F-OZ@1``#H`````$F+M"3X$0`` +M2(7V="])BY0D`!(``$F-O"38$0``Z`````!)BY<`$@``28NW^!$``$F-O]@1 +M``#H`````$F+M"0H$@``2(7V="])BY0D,!(``$F-O"0($@``Z`````!)BY<P +M$@``28NW*!(``$F-OP@2``#H`````$B#Q&A;74%<05U!7D%?PV9F9I!F9I!( +M@^P82(E<)`A,B60D$$F)_$&(="1/0`^VWHG>Z`````!)@<2(%```B=Y,B>?H +M`````+@!````2(M<)`A,BV0D$$B#Q!C#9F9FD&9FD&9FD%532(/L"$B)_>@` +M````2(GOZ`````!(C9V(%```2(G?Z`````!(B>_H`````+_0!P``Z`````!( +MB>_H`````+X!````2(GOZ`````"^`0```$B)W^@`````NX````!FD$B+E?`( +M``!(8\,/MH0"8`@``#S_="T/ML!(C03`2,'@!4B)QD@#LF`)``#V1DX"=!)F +MQT9.`0#&1D(=2(GOZ`````"#PP&!^X8```!ULDB+G?`(``!(@<.(%```O0`` +M```/MH0=X`@``#S_=#,/ML!(C03`2,'@!4B)QD@#LV`)``#V1DX"=!AFQT9. +M`0#&1D(=2(G?Z`````!F9I!F9I!(@\4!2(/]!G6W2(/$"%M=PV9F9I!F9F:0 +M9F9FD&9FD%-(B?OH`````$B+N_`(``!(@<>(%```Z`````!;PV:04TB)^^@` +M````2(N[\`@``$B!QX@4``#H`````%O#9I!(@^P(Z``````/ML!(@\0(PV9F +M9I!F9F:09F9FD&9FD$B#[#A(B5PD"$B);"003(ED)!A,B6PD($R)="0H3(E\ +M)#!(B?M!B?1!B=5(BV]@3(MW>$B%[0^$&P$``("_RP`````/A0X!``!,B??H +M`````$F)QTB%P`^$^@```,9`..'&0#D!183D=`U!@/T!&<#WT(/`!^L+08#] +M`1G`]]"#P`U!B$<Z0<9')(`/MT4X9D&)1R!)B5\H0<='-`````!)QT=(```` +M`$G'AZ``````````3(G^3(GWZ`````#&@\L````!9L>#R````/0!2(7;=$Y( +MBU-@2(72=$]F@;O(````E@!U#DB+>E"^(0```.@`````9H.KR`````&_T`<` +M`.@`````3(GWZ`````!(BU-@2(72=`F`N\L`````=;MF@[O(`````'0:08!_ +M)`!U$TB+0V`/MT!J9HE#6KL`````ZP6[_____TR)_DR)]^@`````ZP6[____ +M_XG82(M<)`A(BVPD$$R+9"083(ML)"!,BW0D*$R+?"0P2(/$.,-F9F:09F9F +MD&9F9I!F9I!(@^Q(2(E<)!A(B6PD($R)9"0H3(EL)#!,B70D.$R)?"1`2(G] +M08GU3(MG8$R+=WA-A>0/A'D$``"`O\L`````#X5L!```3(GWZ`````!)B<=( +MA<`/A%@$``#V10`"#X7\````08#]%'<,00^VQ8T$0,'@`NL7N(G___]!]N5F +MP>@(P.@$#[;`!?````!!QD<XX4'&1SD!0<9'.AQ!B$<[0<9')(!!#[=$)#AF +M08E'($F);RA!QT<T`````$G'1T@`````2<>'H`````````!,B?Y,B??H```` +M`,:%RP````%FQX7(````Q`E(A>UT3DB+56!(A=)T4V:!O<@```"6`'4.2(MZ +M4+XA````Z`````!F@ZW(`````;_0!P``Z`````!,B??H`````$B+56!(A=)T +M"8"]RP````!UNV:#O<@`````#X15`P``NP````!!@'\D``^$2@,``.E``P`` +M3(GWZ`````!(B40D$$B%P`^$*@,``$F-7UA(BT`02(D$)$'&1S@:0<9'.0A! +MQD<Z&D'&1SL`0<9'/!!!QD<]`$B+1"0028E'>$'&1R2`00^W1"0X9D&)1R!) +MB6\H2(M$)!!(BT`028E'2$''1S00````2(M%8$@%[````$F)1U!!QD<P($G' +MAZ``````````O@````!(B=_H`````$&+5S1(BT0D$$B+<!A(B=_H`````$R) +M_DR)]^@`````QH7+`````6;'A<@```#Z`$B%[71.2(M58$B%TG1/9H&]R``` +M`)8`=0Y(BWI0OB$```#H`````&:#K<@````!O]`'``#H`````$R)]^@````` +M2(M58$B%TG0)@+W+`````'6[9H.]R`````!T!T&`?R0`=!=(C70D$$R)]^@` +M````N______I_0$``$R)_DR)]^@`````3(GWZ`````!)B<=(A<!U'4B-="00 +M3(GWZ`````"[_____^G=`0``9F:09F:02(U86$B+/"1(@\<$2(L4)`^V0@,/ +MM@0'B$($QD<!"L9'`@"X`````$B+%"3&!!``2(/``4B#^`1U[D6$[74&@&<# +M_.M!00^VU6G28.H``+@?A>M1]^K!^@6`3P,#B='!Z1B(3P2)UL'N$$"(=P6) +MT,'H"(A'!HA7!XA/"$"(=PF(1PJ(5PM(BT0D$$F)1WA!QD<X%0^V!\#X!_?0 +M@\`108A'.4'&1SH`0<9'.P!!QD<\$$'&1ST`@"<_0<9')(!!#[=$)#AF08E' +M($F);RA(BT0D$$B+0!!)B4=(0<='-!````!(BT5@2`7L````28E'4$'&1S`@ +M2<>'H`````````"^`````$B)W^@`````08M7-$B+1"002(MP&$B)W^@````` +M3(G^3(GWZ`````#&A<L````!9L>%R````/H`2(7M=$Y(BU5@2(72=$]F@;W( +M````E@!U#DB+>E"^(0```.@`````9H.MR`````&_T`<``.@`````3(GWZ``` +M``!(BU5@2(72=`F`O<L`````=;MF@[W(`````'0,NP````!!@'\D`'0%N___ +M__](C70D$$R)]^@`````ZPIF9I!FD+O_____3(G^3(GWZ`````#K!;O_____ +MB=A(BUPD&$B+;"0@3(MD)"A,BVPD,$R+="0X3(M\)$!(@\1(PV9F9I!(@^QH +M2(E<)#A(B6PD0$R)9"1(3(EL)%!,B70D6$R)?"1@2(G]2(GS28G/08G518G& +M3(MG8$V%Y`^$M@,``("_RP`````/A:D#``!)BT0D4$B)1"0P2(M7>$B)5"0( +M9L>'R````!`G2(G7Z`````!(B40D*$B%P`^$=P,``$$/M\6)1"0$9D&#_01V +M%8G&2,?'`````+@`````Z`````#K%$B+?"0(Z`````!(B40D$$B%P'492(MT +M)"A(BWPD".@`````N______I0@,``(M4)`3!X@F)5"0D2(M$)`A(B[#P"``` +MQD8_`4B)ZK\%````Z`````!!@$PD3`)(BU5@OB$```!(BWPD,.@`````2(M4 +M)"A(@\)82(E4)!A%A/9T%4B+1"0HQX"4````"@```,9`."CK*$B+5"0HQX*4 +M````$@```,9"."I(BT0D$$B+>!"+5"0D3(G^Z`````!(BT5@]D!H`0^$@0`` +M`$&`_@$9P(/@`H/H>$B+5"0HB$(XQD(Y`$B)V$C!Z#B(0CI(B=A(P>@PB$([ +M2(G82,'H*(A"/$B)V$C!Z""(0CU(B=A(P>@8B$(^2(G82,'H$(A"/TB)V$C! +MZ`B(0D"(6D'&0D(`QD)#`$2)Z&;!Z`B(0D1$B&I%QD)&`,9"1P#K3T&`_@$9 +MP(/@`H/`*$B+5"0HB$(XQD(Y`$B)V$C!Z!B(0CI(B=A(P>@0B$([2(G82,'H +M"(A"/(A:/<9"/@!$B>AFP>@(B$(_1(AJ0,9"00!(BWPD*.@`````2(M%8`^W +M0#A(BU0D*&:)0B#&0B2`2(EJ*$B+5"002(M"$$B+5"0H2(E"2(M$)"2)0C1( +MBT0D$$B)0GC&0C`@2(M%8$@%[````$B)0E!(QX*@`````````+X`````2(M\ +M)!CH`````$B+1"0HBU`T2(M$)!!(BW`82(M\)!CH`````,:%RP````%(BW0D +M*$B+?"0(Z`````!(A>T/A)@```!(BU5@2(72#X2+````@+W+``````^$^0`` +M`&:!O<@```"6`'4.2(MZ4+XA````Z`````!F@ZW(`````;_0!P``Z`````!( +MBWPD".@`````2(M58$B%TG1`@+W+``````^$K@```.NS2(M4)"B`>B0`=2:[ +M`````$6$]G0ABU0D)$B+1"002(MP$$R)_^@`````NP````#K!;O_____2(M4 +M)"A(@WIX`'0O@7HT``@``'<32(G62(/&>$B+?"0(Z`````#K$TB+="0H2(/& +M>$B+?"0(Z`````!(BW0D*$B+?"0(Z`````!(BT0D"$B+L/`(``#&1C\`2(GJ +MOP8```#H`````$&`9"1,_>L<N______K%6:#O<@`````#X5&____Z7+___]F +MD(G82(M<)#A(BVPD0$R+9"1(3(ML)%!,BW0D6$R+?"1@2(/$:,-F9F:09F9F +MD&9FD$B#[!A(B1PD2(EL)`A,B60D$$B)\TB+1U!,BR!(BVYH#[9&)#P@=$@\ +M('<*A,!T(CP&=Q7K,#PB=#8\(F9F9I!R)(/`@#P!=AVX`````&:0ZV-(BT=` +MQT`$`````,:%L@````'K"L:%L@````UF9I!(@WMX`'0E@7LT``@``'<02(US +M>$R)Y^@`````ZPYFD$B-<WA,B>?H`````$B)WDR)Y^@`````2(GO_Y7(```` +MN`$```!(BQPD2(ML)`A,BV0D$$B#Q!C#9F9FD&9F9I!(@^PH2(D<)$B);"0( +M3(ED)!!,B6PD&$R)="0@2(G[28GU28G42(MO8$B%[74*2(G7_];I/@$``$B# +MOX@`````=0Y(@[^``````'0/9F9FD$R)YT'_U>D;`0``@+WH``````^%"`$` +M`(!]2O]F9F:0#X7Z````2(M%8$B%P'0*@'A1``^%YP```$B+?5#V1PP0#X79 +M````3(LW@+V#`````'0-2(GJO@8```#H`````$R)JX@```!,B:.0````#[95 +M2$B)T(/@!DB#^`9U*?;"`71]QD5*!<9%2P0/MI6!````2(MU6$B+?5!(B>GH +M`````.E_````2(/X!'5Y]L(!='1(BU5@2(72="\/MT).J`)T8X/@_6:)0DY( +MBT5@9L=`3@$`2(M%8,9`0AU(BW5@3(GWZ`````#K/,9%2@/&14L$2(GN3(GW +MZ`````#K)Y#&14H%QD5+!F;'A<@``````$B)[DR)]^@`````ZPAFD$R)YT'_ +MU4B+'"1(BVPD"$R+9"003(ML)!A,BW0D($B#Q"C#9F9FD&9FD&9FD&9FD%-( +MB?M(A?\/A,,```!(BW]XZ`````!(B<)(A<`/A'X```"`N!4!````='6`"P$/ +MMH`5`0``/`)U.DB#>W``=1D/MH/,````@^`#B$,"#[:"%`$``(A#`>MW#[:# +MS0```(A#`DB+0W`/MH`4`0``B$,!ZUT\`W59#[:#S````(/@`\'@`@*#S0`` +M`(A#`DB+0W`/MH`4`0``B$,!ZS-F9I!(BT-P2(7`=0M(BT-H2(7`=0[K'`^V +M@!0!``"(0P'K$`^V@,(```"(0P%F9I!F9I!;PV9F9I!F9F:09F:09F:055-( +M@^P(2(G[2(7_='>]``````^VA!U@"```//]T00^VT$B-!%)(C02"2,'@!4B) +MPD@#DS@)``!T)HM"2"4`__\`/0``_P!U%_9"2P1T$4B+>D!(A?]T".@````` +M9F:02(/%`4B!_8````!UIDB+@_`(``!(.=AU#$B-N(@4``#H`````$B#Q`A; +M7<-F9F:055-(@^P(2(G[2(VOB!0``.@`````2(E#*$B)12A(B9OP"```2(F= +M\`@``(N#"`D``(F%"`D``,:#9A0```'&A684```!2(G?Z`````!(B=_H```` +M`$B)[^@`````2(G?Z`````"$P'1G2(GOZ`````"$P'1;2(G?Z`````"_T`<` +M`.@`````2(G?Z`````#'@Y`!``#H`P``2,>#H`$```````!(B9NH`0``2(VS +MD`$``$B+>RCH`````+X`````2(G?Z`````"X`0```.L&D+@`````2(/$"%M= +MPV9F9I!32(G[Z`````!(@<.(%```2(G?Z`````"X`0```%O#D$%7059!54%4 +M55-(@^P82(ET)`A(B10D@ST```````^%;P$``,<%``````$```!$BST````` +MQT0D%`````!)Q\4`````2,?#`````$G'Q@````#I=@(```^WA@````#!X!!" +M#[<4+@G0.<4/A?$```!!N`````"_`````&9FD&:09H,\'P!U7TECT$B)T4C! +MX05*BP0N2(D$&4*+1"X(B409"`^V@0````!(P>(#2(T\`@^V1"03B$2[#0^V +M@0````!(C3P"#[9$)!*(1+L.#[:!`````$@!PL9$DP\`@($``````>MT#[:/ +M``````^VP;H`````0O<T-H72=$L/ML%)8]!(C0S5`````$B-/`$/MD0D$XA$ +MNPU(P>(%#[:"`````$B-/`$/MD0D$HA$NPX/MH(`````2`'!QD2+#P"`@@`` +M```!ZQ)!@\`!2(/'($&#^`0/A2;___^#A@`````!08/"`4B#QAA%.?H/A>7^ +M__]!@\0!08/\(`^%%P$``(-$)!0!@7PD%/\````/A3H!``!(@WPD"`!T"$B+ +M5"0(Q@(`BS4`````O0````"%]GXUN0````"]`````+H``````ZH`````2(-\ +M)`@`=`V+@@````!(BUPD"``#@\$!2(/"&#GQ==I(@SPD``^$[````$&Y```` +M`$&Z`````$G'Q`````!F0X,\(@`/A,T```!!#[:2`````(32=&=!N`````!) +M8\%,C1S%``````^VPH/H`4B-6`%+C00#2(TTA0````!(BSPDN00```#\\Z8/ +ME\(/DL`XPG4A2(-\)`@`=`]!#[:"`````$B+5"0(B`)!#[:J`````.L)28/` +M`4DYV'6T08/!`4F#PB!!@_D$=$SI;O___T2(9"02N0````"Z`````$2)YHM\ +M)!3H`````(G%0;H`````O@````!%A?\/CX_]___II?[__P^V1"04B$0D$T&\ +M`````.NY0`^VQ4B#Q!A;74%<05U!7D%?PV9F9I!F9F:09F9FD&9FD$B#[!A( +MB1PD2(EL)`A,B60D$(GU3(MG>$B+7V#V!P%T7TB+>UA(A?]T$$`/MM8/MK.! +M````Z`````!(B[L@`0``2(7_=!!`#[;5#[:S#0$``.@`````3(GGZ`````!( +MA<!T+8"X%0$```!T)$`/MM5(BW-`3(GGZ`````#K$F:00`^VUDB+<T!,B>?H +M`````$B+'"1(BVPD"$R+9"002(/$&,-F9F:09F:09F:09F:02(/L2$B)7"08 +M2(EL)"!,B60D*$R);"0P3(ET)#A,B7PD0$B)^T&)]$B+;V!,BV]X2(7M#X0^ +M`P``@+_+``````^%,0,``/8'`@^%*`,```^VA9@!``"$P'0+0#CP=3J0Z1(# +M```/M@^#X0$/MLD/ME<"#[9W`40/MH4/`0``2,?'`````+@`````Z`````"[ +M_____^GC`@``3(GOZ`````!)B<=(A<`/A,H"``!(BU5`#[:"S````(T$@`^V +M4@(!T$B8#[:(`````$$/ME4Z00^V=3E%#[;$2,?'`````+@`````Z`````!! +MQD<XX4'&1SD!08#\`@^5P(/`&D&(1SI!QD<D@`^W13AF08E'($F)7RA!QT<T +M`````$G'1T@`````2<>'H`````````!,B?Y,B>_H`````,:#RP````%FQX/( +M````]`%(A=MT3DB+4V!(A=)T4V:!N\@```"6`'4.2(MZ4+XA````Z`````!F +M@ZO(`````;_0!P``Z`````!,B>_H`````$B+4V!(A=)T"8"[RP````!UNV:# +MN\@`````#X2[`0``08!_)``/A;`!``!(BT-@2(E$)!!(BT!03(LP3(GWZ``` +M``!(B<5(A<!U%DB+1"00QH#I`````;L`````Z7\!``!,B??H`````$F)Q$B% +MP'4E2(M4)!#&@ND````!2(GN3(GWZ`````"[`````.E.`0``9F9FD$B-15A( +MB40D",9%..'&13D!QD4Z`TB+5"00#[=".&:)12#&A9@````/2(E=*,=%-``" +M``!)BU0D$$B)54BX`````,8$$`!(@\`!2#T``@``=?!,B65X2,>%H``````` +M``"^`````$B+?"0(Z`````"+531)BW0D&$B+?"0(Z`````!(B>Y,B??H```` +M`,:#RP````%FQX/(````^@!(A=MT3DB+4V!(A=)T3V:!N\@```"6`'4.2(MZ +M4+XA````Z`````!F@ZO(`````;_0!P``Z`````!,B??H`````$B+4V!(A=)T +M"8"[RP````!UNV:#N\@`````=":`?20`=2!(BW5(2(M\)!#H`````$B+5"00 +M#[:"F`$``(B#SP```$B#?7@`=`Q(C75X3(GWZ`````!(B>Y,B??H`````+L` +M````ZP6[_____TR)_DR)[^@`````ZP6[_____XG82(M<)!A(BVPD($R+9"0H +M3(ML)#!,BW0D.$R+?"1`2(/$2,-F9F:09F9FD&9F9I!F9I!(@^PH2(E<)`A( +MB6PD$$R)9"083(EL)"!(B?N`/@EW$`^V!O\DQ0````!F9I!F9I"X_____^DF +M`0``2(M&"$B+D/@(``!(A=)(#T302(NZ\`@``,:'9Q0```'H`````+@````` +MZ?<````/ME8(O@````#HF>C__^GD````#[96"+X!````Z(;H___IT0````^V +M=@CH`````.G#````1`^V;@A,BV=X2(MO8+C_____]D=8"`^$IP```$F+M"3P +M"```2(GZOP4```#H`````(!-3`)(BWU02(GJOB$```#H`````("]@P````!T +M'V9F9I"_T`<``.@`````3(GGZ`````"`O8,`````=>5%A.UT#&:#2UH09H-- +M:A#K"F:#8UKO9H-E:N])B[0D\`@``$B)VK\&````Z`````"`94S]N`````#K +M&@^V=@CH`````)#K#@^V=@CH`````+@`````2(M<)`A(BVPD$$R+9"083(ML +M)"!(@\0HPV9F9I!F9I!(@^P82(D<)$B);"0(3(ED)!!(B?U,BV=X28N$)/`( +M``"`>#\`=6%(BY^`````#[:'S````(T$@`^V5P(!T$B8#[:(`````$$/ME0D +M.D$/MG0D.40/MH?/````2,?'`````+@`````Z`````!(QX6``````````(M5 +M"$B+O9````!(B>[_T^L]2(V?F````$F+?"0H2(G>Z`````#'A9@```#T`0`` +M2,>%J`````````!(B:VP````28M\)"A(B=[H`````$B+'"1(BVPD"$R+9"00 +M2(/$&,-F9F:09F9FD$%7059!54%455-(@^P(2(D\)$F)]@^WTDB-!%)(C02" +M2,'@!4F)Q4P#KS@)``!,BX?P"```28'`B!0``$R);F!)B75`28-]6`!U-4F# +M?6``=2Y(BP0D#[9X0T"$_P^$/`0``$F+=5"Y`````$@[L,@2```/A/P#``#I +M%`0``&:008`.`4F+16!)B49P28M%6$F)1FA(BQ0D#[9Z0T"$_W1.28MU4+D` +M````2#NRR!(``'0;ZRT/ML%(C11`2(T4D$B+!"1(.;30R!(``'492(L4)`^V +M0D&-!(%!B(;,````ZPVY`````(/!`4`X^77&2(L$)$B+B/`(```/MH'@"``` +MO@`````\_W0I28M56$B%TG0;#[;`2&G`R`\``$@#@8@)``"^`````$@YPG0O +MO@$````/MH'A"```//]T*TF+55A(A=)T'P^VP$AIP,@/``!(`X&("0``2#G" +M=0E!B'8!Z?<```"#Q@&Z`````&:0#[:$"N((```\_W0G#[;`2(T$P$C!X`5( +M`X%@"0``23M%8'4,08AV`>G`````9F:0@\8!2(/"`4B#^@1UPXGQ00^V@.`( +M```\_W0F28M56$B%TG4%C7$!ZQ@/ML!(:<#(#P``20.`B`D``$@YPG7EZRM! +M#[:`X0@``#S_="A)BU582(72=!P/ML!(:<#(#P``20.`B`D``$@YPG4&08AV +M`>M+@\8!N@````!F9I!F9I!"#[:$`N((```\_W0F#[;`2(T$P$C!X`5)`X!@ +M"0``23M%8'4+08AV`>L29F:09I"#Q@%(@\(!2(/Z!'7#2(L4)(!Z40%U/4F+ +M?5A(A?]T$D$/MK6!````N@````#H`````$F+O2`!``!(A?\/A+P!``!!#[:U +M#0$``+H`````Z`````!)@[T@`0````^$G`$``$F+;5B`?5@`=%E!O`````!( +MC5U(28G?2(G?Z`````!(C4CP2(M54$B)15!(B5D02(E1&$B)`H"Y#P$``/]U +M$(!Y20!U"DB#N2`!````=0I!@\0!1#AE6'>[1#AE6`^%D0```$$/MH4/`0`` +M08A&`H!]6``/A),!``"[`````$R-94A,B>?H`````$B-2/!(BU502(E%4$R) +M81!(B5$82(D"2(M!0$B%P'0\#[:1#P$``#A0`G0P2(.X@`````!U)DB#N(@` +M````=1R(4`(/MU$X2(L$)$B+L/`(``"_!P```.@`````@\,!.%U8#X8:`0`` +MZXY!#[:%@0```$&(1@)!QH4/`0``_X!]6``/A/H```"[`````&9F9I!F9I!, +MB?_H`````$B-2/!(BU502(E%4$R)>1!(B5$82(D"@+D/`0``_W1,QH$/`0`` +M_TB+04!(A<!T/`^VD8$````X4`)T,$B#N(``````=29(@[B(`````'4<B%`" +M#[=1.$B+!"1(B[#P"```OP<```#H`````(/#`3A=6'9RZX)!#[:%@0```$&( +M1@+K8@^VP4B-%$!(C1202(L$)$@YM-#($@``=2)(BQ0D#[9"08T$@4&(1@%! +MB(;,````.$I#=13K#;D`````@\$!0#CY=;U!QD8!_T'&1@(`08.]D`$```!T +M"T&+A90!``!!B$8"28U.($F-E9@```!)BX68````28E&($B+0@A(B4$(2(M" +M$$B)01!(BT(82(E!&$B+0B!(B4$@28U.#$F-E80```!)BX6$````28E&#$B+ +M0@A(B4$(BT(0B4$028N%P````$F)1DA!#[=%:&9!B49800^W16IF08E&6DF+ +M17A)B49000^VA8(```!!B$9<00^VA9@!``!!B(;/````0?9%3`1U"4B+/"3H +M`````$$/ME5(2(G0@^`&2(/X!G4+]L(!=09!@`X"ZP1!@";]00^V54S0ZH/B +M!$$/M@:#X/L)T$&(!D$/MD8!08B&S@```$$/MD8"08B&S0```$R)]^@````` +M28MU0+H`````2(L\).@`````3(GWZ$;Y__](@\0(6UU!7$%=05Y!7\-F9F:0 +M9F:02(/L&$B)7"0(2(EL)!!(B?U(BY_P"```Z`````"`?5$!=2U(C;N(%``` +M@']1`71;@+UX%````'47O@````#H`````("%>!0```%F9I!F9I!(C9V0`0`` +M2(M]*$B)WN@`````QX60`0``Z`,``$C'A:`!````````2(FMJ`$``$B+?2A( +MB=[H`````$B+7"0(2(ML)!!(@\08PV9FD&9FD$%455-(@^PP28G[2(G32(MN +M*$R+9C!$#[95"TB+A_`(``!(B[#P"```OP````!!N`````"Y`````&9F9I!F +M9I`/MI0QX`@``(#Z_W1*C8&`````9CV!`'<'@\<!ZSEFD`^VPDB+EF`)``!( +MC03`2,'@!8"\$!4!```#=1A!@\`!08U``X/X!G8.@\<!0;@`````ZP.#QP%( +M@\$!2(/Y!G6?08GY2(NV\`@``$B!QH@4``"Q``^VE#'@"```@/K_=$^-@8`` +M``!F/8$`=P6#QP'K/@^VPDB+EF`)``!(C03`2,'@!8"\$!4!```#=1A!@\`! +M08U``X/X!G85@\<!0;@`````ZPJ#QP%F9F:09F:02(/!`4B#^09UFD$Y^@^- +M[P<``$4YT0^>P,<#`````#S_#X34!P``#[;X2&G_B!0``$D#N_`(``#H```` +M`$B)QTB%P`^$L@<```^V@!4!```\`@^%Q0$``,<#!`````^V=0=(BQ</MT=` +MN0````"`O`)@"```_P^$F0$``$"`_B,/AX`!``!`#[;&_R3%`````$''!"1% +M4P,1N`$```!FD.EM`0``2(U,)"RZ$`,``+X!````Z`````"$P`^$10$``(M$ +M)"R%P`^$0`$``"7_`P``:<`0)P``C8@0EJ__NG.(JTR)R/?BB<@IT-'H`<+! +MZ@=!B10DN`$```#I$@$``$B-3"0LN@@#``"^`0```.@`````A,`/A.H```"+ +M1"0LA<`/A.4````E_P,``&G`Z`,``(V(R.7W_[K+:RBOB<CWXHG(*=#1Z`'" +MP>H$08D4)+@!````Z;<```!(C4PD++H(`P``O@$```#H`````(3`#X2/```` +MBT0D+(7`#X2*````P>@0)?\#``!IP.@#``"-B,CE]_^ZRVLHKXG(]^*)R"G0 +MT>@!PL'J!$&)%"2X`0```.M<2(U,)"RZ#`,``+X!````Z`````"$P'0XBT0D +M+(7`=#<E_P,``&G`Z`,``(V(R.7W_[K+:RBOB<CWXHG(*=#1Z`'"P>H$08D4 +M)+@!````ZPRX`````.L%N`$````/ML@/ML'I\`4``#P##X76!0``QP,$```` +M1`^V30=(QP0D`````$C'1"0(`````$C'1"00`````$C'1"08`````$B+%P^V +M@O$```"$P`^$H0```$&X`````$F)XP^VP(/H`4R-4`&^`````+@!````B<=$ +MB<'3YP^VA!;B"```//]T*`^VP$B-!,!(P>`%2(G!2`.*8`D``$B+@8@```!( +MBT`@#[9`"CGX=!!(@\8!2(/^!`^$)@4``.N\2(7)#X0;!0``#[=!0("\`F`( +M``#_#X0)!0``@+D5`0```P^%_`0``$N)#,-)@\`!33G0#X5R____08#Y50^' +MUP0``$$/ML'_),4`````0<<$)$`#`Q&X`0```.F_!```2(U,)"Q!C4$!@^`# +M2(L\Q+HT`P``O@$```#H`````(3`#X23!```#[=4)"R)5"0L@?K__P``=1)! +MQP0D_____[@!````Z74$``"XP.'D`(G1N@````#W\4&)!"2X`0```.E9!``` +M2(U,)"Q(BWPD"+H0`P``O@$```#H`````(3`#X0S!```BT0D+"7_`P``:<`0 +M)P``C8@0EJ__NG.(JTR)R/?BB<@IT-'H`<+!Z@=!B10DN`$```#I`00``$B- +M3"0L2(M\)`BZ"`,``+X!````Z`````"$P`^$VP,``(M$)"PE_P,``&G`Z`,` +M`(V(R.7W_[K+:RBOB<CWXHG(*=#1Z`'"P>H$08D4)+@!````Z:D#``!(C4PD +M+$B+?"0(N@@#``"^`0```.@`````A,`/A(,#```/MT0D+B7_`P``:<#H`P`` +MC8C(Y??_NLMK**^)R/?BB<@IT-'H`<+!Z@1!B10DN`$```#I4`,``$B-3"0L +M2(M\)`BZ#`,``+X!````Z`````"$P`^$*@,``(M$)"PE_P,``&G`Z`,``(V( +MR.7W_[K+:RBOB<CWXHG(*=#1Z`'"P>H$08D4)+@!````Z?@"``!(C4PD+$B+ +M/"2Z%`,``+X!````Z`````"$P`^$TP(``(M4)"R!XO\#``!(:=(ZN`$`2('" +MXTH#`$C!Z@5(N$-XM''$6GP*2/?B2,'J!T&)%"2X`0```.F=`@``2(U,)"Q( +MBWPD"+H4`P``O@$```#H`````(3`#X1W`@``BU0D+('B_P,``$AITCJX`0!( +M@<+C2@,`2,'J!$BXA?!HXXBU^!1(]^)(P>H(08D4)+@!````Z4$"``!(C4PD +M+$B+?"00NA0#``"^`0```.@`````A,`/A!L"``"+5"0L@>+_`P``2&G2YA-` +M`DB!P@W_3@1(N+U">N75E+_62/?B2,'J%T&)%"2X`0```.GI`0``2(U,)"Q( +MBWPD&+H4`P``O@$```#H`````(3`#X3#`0``BU0D+('B_P,``$AITJY%X0!( +M@<(I4J\!2+C;-+;7@MX;0TCWXDC!ZA)!B10DN`$```#ID0$``$B-3"0L2(M\ +M)`BZL`,``+X!````Z`````"$P`^$:P$``(M$)"S!Z`^#X`%!B00DN`$```#I +M6`$``(!]"`!T$4B+1"0(@:`8`0``__?__^L/2(M$)`B!B!@!````"```2(M\ +M)`CH`````+@!````Z1X!``"`?0@`=!%(BT0D"(&@&`$``/_O___K#TB+1"0( +M@8@8`0```!```$B+?"0(Z`````"X`0```.GD````@'T(`'012(M$)`B!H!@! +M``#_W___ZP](BT0D"(&(&`$````@``!(BWPD".@`````N`$```#IJ@```(!] +M"`!T$4B+1"0(@:`8`0``_[___^L/2(M$)`B!B!@!````0```2(M\)`CH```` +M`+@!````ZW.`?0@`=!%(BT0D"(&@&`$``/___O_K#TB+1"0(@8@8`0`````! +M`$B+?"0(Z`````"X`0```.L\@'T(`'012(M$)`B!H!@!``#___W_ZP](BT0D +M"(&(&`$``````@!(BWPD".@`````N`$```#K!;@`````#[;`ZP6X``````^V +MP.L2N`````#K"\<#`````+@`````2(/$,%M=05S#9F9FD&9FD&9FD$%7059! +M54%455-(@^PX28G\B?!(B=-)B<U!B?9!P>X808GW0<'O$`^VU(A4)!!`B'0D +M#TB-JX@4``"X`````)#&!!@`2(/``4@]$"L``'7P3(EK((L%`````(A#0(/` +M`8D%`````$2(<SM$B'LZ#[9$)!"(0SD/ME0D#XA3.,9#00!!#[<$)&:)0S!! +M#[=$)`)FB4,R08M$)`2)0S1(C9,0*0``2(F3@!0``$R);2`/MD-`B$5`1(AU +M.T2(?3H/MD0D$(A%.0^V1"0/B$4XQD5!`4$/MP0D9HE%,$$/MT0D`F:)13)! +MBT0D!(E%-$B)E8`4```/MT,R9CTD)P^$%`$``&8])"</AX0```!F/40A#X0` +M`0``9CU$(7=$9CT@(0^$\````&8]("%W#V8]4`</A?0```#IVP```&8](B&0 +M#X30````9CU`(69FD&9FD`^%U````.F[````9F:09I!F/1`G#X+`````9CT1 +M)V:0#X:@````9BT@)V:#^`)FD`^'I````.F+````9F:09I!F/8`G#X1\```` +M9CV`)V:0=RYF/4`G=&YF/4`G9F9FD'<(9CTP)W5RZUQF/40G9I!T5&8]8"=U +M8NM,9F:09F:09CV`<G1`9CV`<F9FD&9FD'<(9CV")W5"ZRQF/8"19I!T#F8] +M@)1U,NL<9F:09F:09L=#/("1QD,^!&;'13R`D<9%/@3K%&;'0SR`E,9#/@1F +MQT4\@)3&13X$00^V1"0(B$-"00^V1"0(B$5"N0``!`"Z`````+X"````3(GO +MZ`````!(B0.Y`"```+H`````O@````!,B>_H`````$B)P4B)0Q!(BP-(A<`/ +MA.4!``!(A<D/A-P!``!(C9```@$`2(E3"$B-@````@!(B0-(!0!```!(B44` +M2(E5"$B)31!$BP4`````187`?F>^`````+D`````2,?'``````^W!#EF03L$ +M)'4_#[>!`````&9!.T0D`G4PBY$`````@\(!B9$`````1(N)`````$6%R705 +M1#G*=A")T+H`````0??QB9$`````@\8!2(/!&$0YQG6J2(M#"$@MX'T``,<` +M`?`#`$B+0PA(+=A]``#'``$``.A(BWL@OG@```#H`````(G")0!P```]`"`` +M`'84@.:/@,X@2(M[(+YX````Z`````!$B'0D(T2(?"0B#[94)!"(5"0A#[9$ +M)`^(1"0@O0````!!N0````!)Q\0`````3(UL)"!F0X,\(0`/A*(```!!@+D` +M``````^$A````$&X`````$ACQ4R-%,4`````38GK2XT$`DB--(4`````N00` +M``#\3(G?\Z8/E\(/DL`XPG4[00^V@0````"#P`%!B($`````00^VD0````"$ +MTG0=.-!V&0^VP`^VRKH`````9O?Q08B1`````&9F9I!!C5`!28/``4$/MH$` +M````.=!_D(/%`4F#P2"#_00/A5+____'@P@)```!````N`$```#K!;@````` +M2(/$.%M=05Q!74%>05_#9F9FD&9FD$%455-(B?M(B?5(BW]X#[8#@^`!1`^V +MX+@`````9F:0Q@0H`$B#P`%(@_@H=?)(B[>`%```2(GRL`!F9I!F9I#&!!`` +M2(/``4@]``(``'7P2(U.-KH`````9F9FD&9FD`^V1%,AB`11#[9$4R"(1%$! +M2(/"`4B#^A1UY4B-3A2R``^V1%,-B`11#[9$4PR(1%$!2(/"`4B#^@IUY4B- +M3BZR``^V1%-)B`11#[9$4TB(1%$!2(/"`4B#^@1UY4B)=1A(BT-02(/``4B) +M10!(@WM@`'5!]@,!=#Q(BT-H2(7_#Y7"2(7`=!*$TG0.#[9`6X"\!V`(``#_ +M=1M(BT-PA-)T-TB%P'0R#[=`0("\!V`(``#_="0/MH/,````C02`#[93`@'0 +M2)@/MH``````B$4,0;P`````ZR#H`````$B%P'02@+@5`0```G4)#[9#`8A% +M#.L$QD4,_\9%#0#&10X!QD42$,9%$1!$B>"-%`"^_?___T`B=0H)UD"(=0K! +MX`4/MDT(@^'?"<&(30@/MT-82,'H!X/@`<'@!H/AOPG!B$T(#[=#6$C!Z`*# +MX`$/ME4)@^+^"<*(50D/MT-:2,'H`\'@!X/A?PG!B$T(#[=#6DC1Z(/@`0'` +M@^+]"<*(50D/MT-82,'H`X/@`<'@!H/BOPG"B%4)#[=#6DC!Z`3!X`>#XG\) +MPHA5"8/)$(A-"`^V`]#H@^`!@^;^"<9`B'4*#[8#@^`$@^;["<9`B'4*9L=% +M%``0#[:#SP```(A%#P^V@\P```"(12!;74%<PY!!5D%505154T&)]4&)UDB) +MRTR)Q4B%R707N`````!FD,8$&`!(@\`!2#VL````=?!(A>UT&;@`````9F:0 +M9F:0Q@0H`$B#P`%(@_@H=?),BZ?P"```00^V]4R)Y^@`````B<)FA<!T#@^W +MP$&`O`1@"```_W5(38ND)/`(``!)@<2(%```28N\)/`(``#H`````$$IQ4$/ +MMO5,B>?H`````(G"9H7`#X1/`P``#[?`08"\!&`(``#_#X0]`P``#[?"00^V +MA`1@"```9H'Z@0`/AU("``!)BXPDB`D```^WP$AIP,@/``!(C30!2(7;#X36 +M````2(M6$$B%TG1U00^VA"3@"```//]T&`^VP$AIP,@/``!(C00!OX````!( +M.<)T)4$/MH0DX0@``#S_=!P/ML!(:<#(#P``2(T$`4@YPG4)OX$```!`B'L" +M@'Y:`'0PN@`````/ML(/MDP&<+@!````T^`)0R"#P@$X5EIV$>ODQD,"_TB+ +M1@@/MD`-B4,@Q@,!#[9&68A#`4B+1GA(B4,$2(N&B````$B)0PQ(BX:0```` +M2(E#%(N&H````(E#'$2):R0/MH;`````B4,HN`````#I-@(``$B%[0^$*`(` +M`$6%]@^('P(```^VAL````!!.<8/C0\"``!)8\9(C01`2,'@!$@!\$B-D,`` +M```/MDH(B$T`#[92"8A5`4B+@-`````/M@"#X`^(10*`^0-T+H#Y`W<.@/D" +M#X6I````Z:L```"`^01F9I!F9I!T0(#Y$@^%D````&9FD&:0ZU])8\9(C01` +M2,'@!$B+E`;0````#[9"`8/@!P^VP,'@"`^V4@(!T(T$@`'`B44$ZV!)8\9( +MC01`2,'@!$B+A`;0````#[9``H3`=0G'100`````ZSP/ML"#Z!2)103K,4EC +MQDB-!$!(P>`$2(N4!M`````/MD("P>`(#[92`P'0C02``<")103K!\=%!``` +M``!(C4T(26/&2(T$0$C!X`1(C80&T````$B-4`A(BT`(2(E%"$B+0@A(B4$( +M2(M"$$B)01!(BT(82(E!&+@`````Z=D````/M\!(C03`2,'@!4B)Q4D#K"1@ +M"0``QD,"_\8#`DF+E"1@"0``#[9$$#N(0P%(BX6(````#[9`#8E#(`^VA14! +M```\`G4KQT,$2%!4`,=##%)O8VO'0Q!E=%-TQT,4;W(@``^W=3Y(C7L7Z%K" +M___K1SP#=2'&0P$0QT,@`0```,=#!$A05`#'0PQ%2C,T9L=#$#``ZR+&0P1V +M#[=U/$B->P7H(L+__\9##&0/MW4^2(U[#>@1PO__QD,<<@^V=3E(C7L=Z,#! +M__]$B6LDN`````#K!;C_____6UU!7$%=05[#9F9FD&9FD$%505154T&)]4B) +MT[@`````Q@08`$B#P`%(/2@-``!U\$B+K_`(``!!#[;U2(GOZ`````")PF:% +MP'0-#[?`@+P%8`@``/]U14B+K?`(``!(@<6(%```2(N]\`@``.@`````02G% +M00^V]4B)[^@`````B<)FA<`/A)$#```/M\"`O`5@"```_P^$@`,```^WP@^V +MA`5@"```9H'Z@0`/AXT"``!(BXV("0``#[?`2&G`R`\``$R-!`%)BU`02(72 +M='0/MH7@"```//]T&`^VP$AIP,@/``!(C00!OH````!(.<)T(P^VA>$(```\ +M_W0<#[;`2&G`R`\``$B-!`%(.<)U";Z!````0(AS`D&`>%H`=#*Z``````^V +MPD$/MDP`<+@!````T^`)0R"#P@%!.%!:=A'KXL9#`O])BT`(#[9`#8E#(,8# +M`4$/MD!9B$,!28M`>$B)0P1)BX"(````2(E##$F+@)````!(B4,408N`H``` +M`(E#'$2):R1!@+C```````^$BP(``$&Y`````$$/MOE(8\=(C0R`2(T,RTB- +M!$!(P>`$3`'`2(V0P`````^V<@A`B+&H````#[92"8B1J0```$B+@-`````/ +MM@"#X`^(@:H```!`@/X#=#1`@/X#=Q%`@/X"#X73````9I#IW@```$"`_@1F +M9F:09F:0=$M`@/X2#X6U````9F9FD.M]2&//2(T$24C!X`1)BY0`T````$B- +M#(D/MD(!@^`'#[;`P>`(#[92`@'0C02``<")A,NL````Z88```!(8]=(C012 +M2,'@!$F+A`#0````#[9``H3`=1%(C022QX3#K`````````#K6DACUTB-%)(/ +MML"#Z!2)A-.L````ZT1(8\](C01)2,'@!$F+E`#0````2(T,B0^V0@+!X`@/ +MME(#`="-!(`!P(F$RZP```#K$DACQTB-!(#'A,.L`````````$ACQTB-%(!( +MC933H````$B-<A!(C01`2,'@!$F-A`#0````2(U("$B+0`A(B4(02(M!"$B) +M1@A(BT$02(E&$$B+01A(B48808/!`44XB,`````/AND```#I7_[__P^WP$B- +M!,!(P>`%28G$3`.E8`D``,9#`O_&`P)(BY5@"0``#[9$$#N(0P%)BX0DB``` +M``^V0`V)0R!!#[:$)!4!```\`G4MQT,$2%!4`,=##%)O8VO'0Q!E=%-TQT,4 +M;W(@`$$/MW0D/DB->Q?H/K[__^M+/`-U(<9#`1#'0R`!````QT,$2%!4`,=# +M#$5*,S1FQT,0,`#K)L9#!'9!#[=T)#Q(C7L%Z`2^___&0PQD00^W="0^2(U[ +M#>CQO?__QD,<<D$/MG0D.4B->QWHGKW__T2):R2X`````.L,N/_____K!;@` +M````6UU!7$%=PT%455-!B?1(B=.X`````)#&!!@`2(/``4@]I`P``'7P2(NO +M\`@``$$/MO1(B>_H`````(G"9H7`=`T/M\"`O`5@"```_W5'2(NM\`@``$B! +MQ8@4``!(B[WP"```Z`````!$B>8IQD`/MO9(B>_H`````(G"9H7`#X1G`P`` +M#[?`@+P%8`@``/\/A%8#```/M\(/MH0%8`@``&:!^H$`#X=G`@``2(N-B`D` +M``^WP$AIP,@/``!,C00!28M0$$B%TG1T#[:%X`@``#S_=!@/ML!(:<#(#P`` +M2(T$`;Z`````2#G"=",/MH7A"```//]T'`^VP$AIP,@/``!(C00!2#G"=0F^ +M@0```$"(<P)!@'A:`'0RN@`````/ML)!#[9,`'"X`0```-/@"4,@@\(!03A0 +M6G81Z^+&0P+_28M`"`^V0`V)0R#&`P%!#[9`68A#`4F+0'A(B4,$28N`B``` +M`$B)0PQ)BX"0````2(E#%$&+@*````")0QQ!@+C```````^$90(``$&Y```` +M`$$/MOE(8\=(C0R`2(T,RTB-!$!(P>`$3`'`2(V0P`````^V<@A`B'$D#[92 +M"8A1)4B+@-`````/M@"#X`^(029`@/X#=#!`@/X#=P]`@/X"#X7`````Z<H` +M``!`@/X$9F:09I!T14"`_A(/A:8```!F9F:0ZW%(8\](C01)2,'@!$F+E`#0 +M````2(T,B0^V0@&#X`</ML#!X`@/ME("`="-!(`!P(E$RRCK>DACUTB-!%)( +MP>`$28N$`-`````/MD`"A,!U#DB-!)+'1,,H`````.M12&/72(T4D@^VP(/H +M%(E$TRCK/DACSTB-!$E(P>`$28N4`-````!(C0R)#[9"`L'@"`^V4@,!T(T$ +M@`'`B43+*.L/2&/'2(T$@,=$PR@`````2&/'2(T4@$B-5-,@2(UR#$B-!$!( +MP>`$28V$`-````!(C4@(2(M`"$B)0@Q(BT$(2(E&"$B+01!(B4802(M!&$B) +M1AA!@\$!13B(P`````^&Y0```.F!_O__#[?`2(T$P$C!X`5)B<1,`Z5@"0`` +MQD,"_\8#`DB+E6`)```/MD00.XA#`4F+A"2(````#[9`#8E#($$/MH0D%0$` +M`#P"=2W'0P1(4%0`QT,,4F]C:\=#$&5T4W3'0Q1O<B``00^W="0^2(U[%^A# +MNO__ZTL\`W4AQD,!$,=#(`$```#'0P1(4%0`QT,,14HS-&;'0Q`P`.LFQD,$ +M=D$/MW0D/$B->P7H";K__\9##&1!#[=T)#Y(C7L-Z/:Y___&0QQR00^V="0Y +M2(U['>BCN?__N`````#K#+C_____ZP6X`````%M=05S#9F9FD&9F9I!F9I!! +M5%5308GT2(G3N`````"0Q@08`$B#P`%(/0`!``!U\$B+K_`(``!!#[;T2(GO +MZ`````")PF:%P'0-#[?`@+P%8`@``/]U1TB+K?`(``!(@<6(%```2(N]\`@` +M`.@`````1(GF*<9`#[;V2(GOZ`````")PF:%P`^$V0$```^WP("\!6`(``#_ +M#X3(`0``#[?"#[:$!6`(``!F@?J!``^'V0```$B+C8@)```/M\!(:<#(#P`` +M2(TT`4B+5A!(A=)T<0^VA>`(```\_W08#[;`2&G`R`\``$B-!`&_@````$@Y +MPG0C#[:%X0@``#S_=!P/ML!(:<#(#P``2(T$`4@YPG4)OX$```!`B'L"@'Y: +M`'0PN@`````/ML(/MDP&<+@!````T^`)0R"#P@$X5EIV$>ODQD,"_TB+1@@/ +MMD`-B4,@Q@,!#[9&68A#`4B+1GA(B4,$2(N&B````$B)0PQ(BX:0````2(E# +M%(N&H````(E#'+@`````Z=X````/M\!(C03`2,'@!4F)Q$P#I6`)``#&0P+_ +MQ@,"2(N58`D```^V1!`[B$,!28N$)(@````/MD`-B4,@00^VA"05`0``/`)U +M+<=#!$A05`#'0PQ2;V-KQT,09713=,=#%&]R(`!!#[=T)#Y(C7L7Z-&W___K +M2SP#=2'&0P$0QT,@`0```,=#!$A05`#'0PQ%2C,T9L=#$#``ZR;&0P1V00^W +M="0\2(U[!>B7M___QD,,9$$/MW0D/DB->PWHA+?__\9#'')!#[9T)#E(C7L= +MZ#&W__^X`````.L%N/____];74%<PTB#["A(B1PD2(EL)`A,B60D$$R);"08 +M3(ET)"!(B?M)B?1,BW=X2(M&2$B).$B+1V!(A<!U&L:&L@````)(B??_EL@` +M``#I:@8``&9FD&:0]D!,`G0:QH:R`````DB)]_^6R````.E*!@``9F:09I!, +MB??H`````$B)Q4B%P&:0=1Y!QH0DL@````),B>=!_Y0DR````.D:!@``9F:0 +M9I#'@)0`````````3(E@:$B+0V!(B44H2(M#8`^W0#AFB44@QD4D@$$/MH0D +ML````#P"#X1I`0``/`)W"H3`=!R0Z4(#```\`P^$\`$``#P$D`^%,0,``.FX +M`0``2(M#8/9`:`$/A)\```!!#[:$)+$```"H`G0&QD4XB.L0@^`$/`$9P(/@ +M!8/H=HA%.$F+E"20````00^WC"28````QD4Y`$B)T$C!Z#B(13I(B=!(P>@P +MB$4[2(G02,'H*(A%/$B)T$C!Z""(13U(B=!(P>@8B$4^2(G02,'H$(A%/TB) +MT$C!Z`B(14"(54'&14(`QD5#`(G(9L'H"(A%1(A-1<9%1@#&14<`ZVU!#[:$ +M)+$```"H`G0&QD4X*.L0@^`$/`$9P(/@!8/`*HA%.$F+E"20````00^WC"28 +M````QD4Y`$B)T$C!Z!B(13I(B=!(P>@0B$4[2(G02,'H"(A%/(A5/<9%/@") +MR&;!Z`B(13^(34#&14$`2(M#8$@%[````$B)15#&13`@#[?!P>`)B44T@XV4 +M`````NGY`0``9F9FD$$/MH0DD````#P0=P7V`P)U#D'&A"2R````!NDD!``` +M2(U].`^VT$F-M"28````Z`````!(BT-@2`7L````2(E%4,9%,""!C90````` +M`!``QD4EJT'VA"2Q````!@^$D@$``$&+A"24````B44TZ8(!``!!#[:$)+$` +M``"#X#`\('41QD4X&\9%.0'&13P`Z6$!``#&13@UZ5@!``!(BT-@#[9`2*@! +M=">H!'0C@8V4```````@`$$/MY0DG````&9!.Y0DD@```'43ZV-F9I!!QH0D +ML@````;I9@,``$$/MH0DFP```#SC=$4\XW<3/$)T/3RP=!T\0'4G9F:09I#K +M+CSL=`X\[W0F/.5F9F:0=1#K'&9!B90DD@```&9FD.L.0<:$)+(````&Z10# +M``#&13BP00^WA"20````B$4Y00^WA"22````B$4Z00^WA"24````B$4[00^W +MA"26````B$4\00^WA"28````B$4]00^VA"2:````B$4^00^VA"2;````B$4_ +M00^VA"21````B$5`00^VA"23````B$5!00^VA"25````B$5"00^VA"27```` +MB$5#00^VA"29````B$5$0?:$)+$````&="9!#[>$))P```#!X`F)132#C90` +M```$ZPY!QH0DL@````;I3P(``$C'A:``````````00^VA"2Q````J`8/A!\" +M``"H`G0)@XV4````".L'@XV4````$$R-;5A)BYPDN````$B%VW0+0?:$)+$` +M```!=39)BX0DP````$B%P`^$"@(``$F+MD`*``"Z`````$R)Y__0A<`/A/$! +M``!)BYY`"@``2(7;=#E(B>_H`````+X`````3(GOZ`````!(@\,0BU/P2(MS +M^$R)[^@`````BT/T2(/#$(7`#X6)`0``Z^"^`````$R)[^@`````BT4T/0`( +M``!W.TR)]^@`````2(G!2(7`=0Y!QH0DL@````OI7P$``$B+0!!(B45(2(E- +M>(M5-$B+<1A,B>_H`````.M4/0```0!W/TR)]V9F9I#H`````$B)P4B%P'4. +M0<:$)+(````+Z1D!``!(BT`02(E%2$B)37B+531(BW$83(GOZ`````#K#D'& +MA"2R````!NGN````00^VA"2Q````J`0/A-````!!@+PDL`````-U'DF+M"2@ +M````2(7V=!%(BWU(BU4TZ`````#IIP```$F+E"2X````2(72=1-)BX0DP``` +M`$B%P`^%N````.MA3(MM2*@!=0I(B=-F9I!FD.LI28N$),````!(A<!T'$F+ +MMD`*``"Z`0```$R)Y__0A<!T!TF+GD`*``!(@\,0BU/P2(MS^$R)[^@````` +MBT/P20'%BT/T2(/#$(7`=2CKWHM%-$B+34B%P'0;B<)(B<C&``!(@\`!2(/J +M`70)Z_&#C90````!2(GN3(GWZ`````#K,4B)[DR)]^@`````3(GG0?^4),@` +M``#K&;L`````Z4K^__],BVU(9F:09F:0Z5K___](BQPD2(ML)`A,BV0D$$R+ +M;"083(MT)"!(@\0HPV9F9I!F9F:09F:09F:055-(@^P(2(G]2(GSN`````#& +M!!@`2(/``4@]@````'7P@[T("0```0^40Q,/ME4Z#[9-.0^V=3@/MD4[B$,# +MB%,"B$L!0(@S@$L1$`^W13!FB4,$#[=%,F:)0P:+A0@)``"(0W#&0Q(@#[=5 +M,F:!^B`A=`=F@?HB(75(QD,7`DB-0SS'0SQ2;V-KQT-`97120<=`"$E$(%/' +M0`Q31"`RQT`0,3)X(,=`%$-O;G3'0!AR;VQL9L=`'&5RQD`>`.D!`0``C8+P +MV/__9H/X`7829H'Z0"%T"V:!^D0A#X6G````QD,7!`^W53*-@O#8__]F@_@! +M=T1(C4,\QT,\4F]C:\=#0&5T4D''0`A)1"`RQT`,-S%X(,=`$%-!4R#'0!1# +M;VYTQT`8<F]L;&;'0!QE<L9`'@#IBP```&:!^D`A=`=F@?I$(75]2(U#/,=# +M/%)O8VO'0T!E=%)!QT`(240@4\=`#%-$(#+'0!`Q-'@@QT`40V]N=,=`&')O +M;&QFQT`<97+&0!X`ZSS&0Q<(2(U#/,=#/%)O8VO'0T!E="`WQT`(-3`@4\=` +M#$%402#'0!!#;VYTQT`4<F]L;&;'0!AE<L9`&@#&0Q<HQD,2`<9#$"A(C4,8 +MQT,82&EG:,=#'%!O:6['0`AT(%1EQT`,8VAN;\=`$&QO9VG'0!1E<RP@QT`8 +M26YC+L9`'`!(BX4`"0``2(7`=`I(BT`02(E#:.L(2(M%$$B)0VC'0V``(``` +M2(M](+Y\````Z`````")PH'B\`,``,'J!(A3<8/@#XA#<TB+?2"^@````.@` +M````B<*!X@``\`/!ZA2(4W(E```/`,'H$(A#=$B#Q`A;7<-FD$%7059!54%4 +M55-(@^P(28G]B?5(B=.X`````&9FD&:0Q@08`$B#P`%(/=````!U\(EK"(/] +M$WX*28'%B!0``(/M%$ACQ;H`````28.\Q6`$````#X72`@``2&/%28F<Q6`$ +M``!,B6MX2(F+@````$R)@Y````!!@'U1`0^%I0(``(']A0````^/@P(``$$/ +MMH0%8`@``#S_#X1R`@``#[;`9HE$)`8/M\!(C11`2(T4D$C!X@5)B=1-`Z4X +M"0``0?9$)$L$#X1%`@``08M$)$@E`/__`#T``/\`#X4P`@``0?9$)$P$#X2< +M`0``0<:$).@`````00^V1"1(2(G"@^(&2(/Z!G4YJ`$/A!`!``!!QD0D2@5! +MQD0D2P1!#[:4)($```!)BW0D6$F+?"103(GAZ`````"Z`0```.GK`0``2(/Z +M!`^%W`$``*@!9F9FD`^$T`$``$F+7"1028M$)&!(A<`/A84```!!QD0D2@-! +MQD0D2P2`>PX`=$^]`````$R-<V!,B??H`````$B)PDB+0VA(B5-H3(DR2(E" +M"$B)$(!Z2O]T&$DYU'030<:$).D````!N@$```#I;`$``(/%`0^V0PXYZ'^Z +M08"\).D````!#X1-`0``3(GF3(GOZ`````"Z`0```.D]`0``@'A"``^%+@$` +M`&:#8$[]28M$)&!FQT!.(`!)BW0D8$R)[^@`````N@$```#I#`$``$F+1"10 +M#[9`#4&`?3X`="V[``````^VZ`^VRTB)Z$C3^*@!=`^Z`````(G.3(GOZ``` +M``"#PP%!.%T^=]M!QD0D2P9!QD0D2@5F0<>$),@``````$R)YDR)[^@````` +MN@$```#IHP```$V+9"1008!\)`X`=%U!O@````!-C7PD8$R)_^@`````2(G" +M28M$)&A)B50D:$R).DB)0@A(B1"`>DK_="(/MD))/")T!#P-=19(8\5)QX3% +M8`0```````"Z`````.M$08/&`44X="0.=ZX/MU0D!DB)WDR)[^@`````N@$` +M``#K(F9F9I!F9I!(8\5)QX3%8`0```````"Z`````.L%N@$```")T$B#Q`A; +M74%<05U!7D%?PY"0D)")T,8'",9'`1)`A/9T!H!/`@3K!(!G`ON$P'0&@&<, +MW^L$@$\,(+@4````PV9F9I#SPV9F9I!F9F:09F:09F:005=!5D%505154TB# +M[!A)B?U)B?9(B=6(3"0'18G'2(M&,$B)1"002,=&,`````!(A<`/A70!``#H +M`````$F)Q+@`````387D#X01`@``3(GOZ`````!(B40D$$B%P'453(GF3(GO +MZ`````"X`````.GJ`0``0<9$)#@:0<9$)#D(0<9$)#H(0<9$)#L`0<9$)#S_ +M0<9$)#T`0<9$)"6K00^W1CAF08E$)"!-B6PD*$''1"0T_P```$''A"24```` +M"````$B+1"002(M`$$F)1"1(2`7_````28E$)%!!QD0D,"1(BT0D$$F)1"1X +M2<>$)*``````````0<9$)"2`28U<)%B^`````$B)W^@`````2(M$)!!(BW`8 +MNO\```!(B=_H`````$R)YDR)[^@`````N\C____K(&9F9I!F9I"_Z`,``.@` +M````@^L!3(GOZ`````"$VW0.00^V1"0D/(!TW83`=#%(C70D$$R)[^@````` +M00^W="0R28M^4.@`````3(GF3(GOZ`````"X`````.G'````2<=$)'@````` +M3(GF3(GOZ`````!(BT0D$$B+6!!!#[;7#[9T)`=(C7L$Z`````!!B<3&`P#& +M0P$`QD,"`,9#`P!(B>Y,B>_H`````$B-53BX`````&9FD,8$$`!(@\`!2(/X +M$'7R08U$)`3&13@5QD4Y$8A%/,9%/0!(C5U81`^VX$2)933'A90````````` +M2(M4)!!(BT(02(E%2$B)57B^`````$B)W^@`````2(M$)!!(BW`81(GB2(G? +MZ`````"X`0```$B#Q!A;74%<05U!7D%?PY"0B?!FB7<(QD<.`&;'1PP``&:% +M]G0?C5#_N0````!F9I!(BP=FB10(2(/!`H/J`6:#^O]U[//#9F9FD&9FD&9F +MD$&)\&:)=PC&1PX!9L='#```9H7V=!ZZ`````+D`````2(L'9HD4"(/"`4B# +MP0)F1#G"=>SSPV9F9I!F9I!F9I"`?PX!=2H/MT<,#[?(2(L7#[<42H/``6:) +M1PQF.T<*<@9FQT<,``!F@V\(`0^WPL-(BQ</MT<(@^@!9HE'"`^WP`^W!$+# +M9F9FD&9FD&9FD(!_#@%U*@^W5P@/MT<,`<(/MT<*B<&)T,'Z'_?Y2&/22(L' +M9HDT4&:#1P@!PV9FD`^W1P@/M\A(BQ=FB31*@\`!9HE'",-F9F:09F:09F:0 +M9H-_"``/E,`/ML##D)"0D$B+#T@YSW4(N0````#K#Y!(BQ%(BT$(2(E""$B) +M$$B)R,-F9F:09F9FD&9FD&9FD$&)T(32=#H/M@<Z!G4H2(GQO@````#K%`^V +M5P$/MD$!2(/'`4B#P0$XPG4*@\8!1#C&=>3K"[@`````9F:09I##N`$```## +M9F:09F:09F:0QD<!`$"(=P+'1P0`````PT&)T`^V5P$/ML)(C01`2,'@`DB) +MP4@#3PB#P@&(5P%$`4<$N`````#&!`@`2(/``4B#^`QU\DB),42(00A,B<(/ +MML:(00E$B<+!ZA"#XC\/MD$*@^#`"="(00K#9F9FD`^V1P$Z!P^2P`^VP,-F +M9I!(B?FX`````(!Y`O]U"&:),8A1`NL-@\`!2(/!!&8]@`!UY0^WP,-F9I!F +M9I!F9I!!B=`/M\9(C02'@'@"_W409D2)`(A(`@^WQL-F9I!FD`^VT4$/M_#H +M``````^WP,-(B?FX`````#A1`G439CDQ=0[&00+_9L<!___K$&9FD(/``4B# +MP01F/8``==L/M\##9F9FD&9F9I!F9F:09F:0N`````")P3A4AP)U!F8Y-(=T +M#X/!`4B#P`%(/8````!UXV:!^8``N(`!```/1,@/M\'#9F9FD&9FD&9FD&9F +MD`^V1S@\"'0^/"AT.CRH#X3_````/(@/A#D!```\"F:0="0\*G0@/*H/A.4` +M```\B@^$'P$``#PO=`P\CV9F9I`/A90!```\+P^$D@```#PO=R(\"G1?/`IW +M"CP(9F9FD'5$ZU$\*'1X/"IF9I!F9I!U-.ML/(\/A-D````\CV:0=Q4\B`^$ +MRP```#R*9F9FD'44Z;X````\J&9F9I!F9I!T<3RJ=&VY`````+@`````Z1,! +M```/MD<ZP>`(#[97.PG0#[97.8/B'\'B$`G0B<$/MD<\Z>\```!F9F:09F:0 +M#[97.L'B&`^V1SO!X!`)P@^V1ST)P@^V1SS!X`B)T0G!#[9'/\'@"`^V5T`) +MT.FU````#[97.L'B&`^V1SO!X!`)P@^V1ST)P@^V1SS!X`B)T0G!#[97/L'B +M&`^V1S_!X!`)P@^V1T$)P@^V1T#!X`@)T.MS#[97.DC!XC@/MD<[2,'@,$@) +MP@^V1T%("<(/MD<\2,'@*$@)P@^V1SU(P>`@2`G"#[9'/DC!X!A("<(/MD<_ +M2,'@$$@)P@^V1T!(P>`(2(G12`G!#[970L'B&`^V1T/!X!`)P@^V1T4)P@^V +M1T3!X`@)T$B)CX@```")AY````!F@T\B`?/#9F9FD+K_____9H7V=#%(B?F_ +M`````+K_____2<?``````&:0#[8!,=`/ML#!Z@A!,Q2`@\<!2(/!`68Y]W7E +MB=##9I!(@^QH1`^V3SM$#[9'.@^V3SD/ME<X#[9'1XE$)%@/MD=&B40D4`^V +M1T6)1"1(#[9'1(E$)$`/MD=#B40D.`^V1T*)1"0P#[9'08E$)"@/MD=`B40D +M(`^V1S^)1"08#[9'/HE$)!`/MD<]B40D"`^V1SR)!"1(B?Y(Q\<`````N``` +M``#H`````$B#Q&C#9I!(@^P(#[9&`8A'`0^V1@*(1P*+1@2)1P1(BT<(#[97 +M`4B-%%)(P>("2(MV"$B)Q^@`````2(/$",-F9F:09F:02(M/8`^V5UBX```` +M`&9FD,8$.`!(@\`!2#VH````=?!(B4]@B%=8PV9F9I!F9F:0N`````"Z____ +M_V9FD&9FD(@4.$B#P`%(/0`"``!U\?/#9F9FD&9F9I!F9F:09F:0N0````!( +M.S]T$DB+3PA(BQ%(BT$(2(E""$B)$$B)R,-(BP^+@00!``")PH'B?O_^_XF1 +M!`$``"5^__+_2(M7"(D"2(M7"(E"#$B+5PB)0A!(BU<(B4(42(M7"(E"&$B+ +M5PB)0@1(BP>+@%0!``")!0`````E_@#__TB+%XF"5`$``,-F9F:09F:09F:0 +M9F:0B?%(BP>+D`0!``")%0`````/MT<\9CV`9'0,9CV`D70&9CV`E'41#[;) +M@\$(N`$```#3X`G"ZQ!`#[;.@\$,N`$```#3X`G"2(L'B9`$`0``PV9F9I!F +M9F:09F:09F:0B?%(BP>+D`0!``")%0`````/MT<\9CV`9'0,9CV`D70&9CV` +ME'41#[;)@\$(N/[____3P"'"ZQ!`#[;.@\$,N/[____3P"'"2(L'B9`$`0`` +MPV9F9I!F9F:09F:09F:0B?%`@/[_=&]`@/X?=S*+MQ@!``"Z`0```-/BB=#W +MT"'PB8<8`0``BX=8`0``B04`````(=!T0(F'6`$``,-FD(NW'`$```^VP8/H +M(+H!````B<'3XHG0]]`A\(F''`$``(N'8`$``(D%`````"'0=`:)AV`!``#S +MPV9F9I!F9I!(@^PH2(E<)`A(B6PD$$R)9"083(EL)"!(B=6)\$R++T"`_@,/ +MAHD```!(C1S%`````('C^`<``$V-I!T``@``0<<$)`P!``"_$"<``.@````` +M28V<'00"```/ME4#P>(8#[9%`L'@$`G"#[9%``G"#[9%`<'@"`G"B1-!QP0D +M$`$``+\0)P``Z``````/ME4'P>(8#[9%!L'@$`G"#[9%!`G"#[9%!<'@"`G" +MB1/IA````$B-',4`````@>/X!P``3HVD*P`"``!!QP0D#`$``+\0)P``Z``` +M``!*C9PK!`(```^V50/!XA@/MD4"P>`0"<(/MD4`"<(/MD4!P>`("<*)$T'' +M!"00`0``OQ`G``#H``````^V50?!XA@/MD4&P>`0"<(/MD4$"<(/MD4%P>`( +M"<*)$TB+7"0(2(ML)!!,BV0D&$R+;"0@2(/$*,-(@^P82(E<)`A,B60D$$F) +M_$`/MMZ)WN@`````OQ`G``#H`````(G>3(GGZ`````!(BUPD"$R+9"002(/$ +M&,.005=!5D%505154TB#[%A)B?^(5"172(L7@'\^``^$/`(``$&\`````$&] +MX/___T&^\/___T`/ML9(B40D2$B-@H`!``!(B40D0$B-BH0!``!(B4PD.$B- +M@J`!``!(B40D,$B-BJ0!``!(B4PD*$B-@E`"``!(B40D($B-BE0"``!(B4PD +M&$B-@N`!``!(B40D$$B!PM`!``!(B50D"&9FD$B+1"1(1(GA2-/XJ`$/A(T! +M``!$B>6#_0-V%T2)ZD@#5"0HBP*)!0````"#X/Z)`NL;C13M`````(G22`-4 +M)#B+`HD%`````(/@_HD"OQ`G``#H`````(!\)%<`='*#_0-V%T2)\D@#5"00 +MBP*)!0````"#R`*)`NL;C12M`````(G22`-4)`B+`HD%`````(/(`HD"1(GP +M2(M,)!!(`<&-!*T`````B<!(BU0D"$@!PH/]`W8*BP&)!0````#K"(L"B04` +M````J`)T=.OC9I"#_0-V+T2)ZTB+1"0@2`'8QP``````OQ`G``#H`````$@# +M7"08BP.)!0````"#R`&)`^M!C1SM`````(G;2(M$)"!(`=C'``````"_$"<` +M`.@`````2`-<)!B+`XD%`````(/(`8D#ZS=F9F:09F:0@_T#=BM$B>I(BT0D +M,$@!T,<``0```$@#5"0HBP*)!0````"#R`&)`NLV9F:09F:0C03M`````(G` +M2(M4)$!(`<+'`@$```!(`T0D.(L0B14`````@\H!B1!F9F:09F:008U4)`%) +M@\0!08/%"$&#Q@1!#[9'/CG0#X="_O__2(/$6%M=05Q!74%>05_#9F:055-( +M@^P(B=%(BR^#_@-V((T$]>#___^)P$B-E`6@`0``BP*)!0````"#X/Z)`NL> +MC03U`````(G`2(V4!8`!``"+`HD%`````(/@_HD"A,ET?H/^`W8@C02U\/__ +M_XG`2(V4!>`!``"+`HD%`````(/(`HD"ZQZ-!+4`````B<!(C90%T`$``(L" +MB04`````@\@"B0*-%+4`````C4+PB<!(C8P%X`$``(G22(V4%=`!``"#_@-V +M"HL!B04`````ZPB+`HD%`````*@"='7KXX/^`W8XC1SUX/___XG;2(V$*U`" +M``#'``````"_$"<``.@`````2(V<*U0"``"+`XD%`````(/(`8D#ZS:-'/4` +M````B=M(C80K4`(``,<``````+\0)P``Z`````!(C9PK5`(``(L#B04````` +M@\@!B0-(@\0(6UW#D)"0D)"02(GY2(L_#[>!N!(``(/``6:)@;@2``!F.X&\ +M$@``<@EFQX&X$@`````/MX&X$@``2,'@`D@#@7`1``"+%HD0#[>!N!(``(F' +M+`$``,-F9I!!B="X`````,8$"`!(@\`!2(/X!'7RB?)F@>+_#P^W`68E`/`) +MT&:)`0^V5PW!X@R+`27_#_#_"=")`0^V1PJ#X`)(@_@!&=*#X@*#P@'!X@4/ +MMD$#@^`?"="#R!"#X/>(00/V1PH!=!=$B<*#XG_!X@0/MT$"9B4/^`G09HE! +M`O/#9F9FD&9F9I!F9I!F9I"X`````,8$,`!(@\`!2(/X#77R#[9'.8@&#[9' +M.HA&`0^V1SN(1@(/MD<\B$8##[9'/8A&!`^V1SZ(1@4/MD<_B$8&]H>6```` +M!'0C#[9'0(A&"`^V1T&(1@D/MD="B$8*#[9'0XA&"P^V1T2(1@RX`0```,-F +M9F:09F9FD&9FD+H`````0;H`````0;G_____ZU(!TD2)P-/XJ`%T$O?"```` +M`74:@?)W)]L`ZQ)FD(G0-7<GVP#WP@````$/1="#Z0%$.<EURTF#P@%)@_H( +M=1.)T,'H$(@'B=#!Z`B(1P&(5P+#10^V!#*Y!P```.NB9F9FD&9F9I!F9F:0 +M9F:02(N'$!$``(L0BU`$BU`(BT`,B04`````PV9F9I!F9I!(@^P(2(N&B``` +M`$0/MD=#183`="(/ME`-N0````#VP@%T#.L22(G02-/XJ`%U"(/!`40XP77N +MQD9"#.@`````2(/$",-F9F:09F9FD&9FD$B#[`A(B?A(BS]FQT!.`0#&0$(= +M2(G&Z`````!(@\0(PV9F9I!F9F:09F9FD&9FD$B#[`A(BS\/M_9(P>8#2`.W +MN`D``$B+-DB%]G0]2(L7#[=&,F;!Z`4/M\"-!(4``P``B8)P`0``2(L7#[=. +M,H/A'[@!````2-/@B8)T`0``N@````#H`````$B#Q`C#D$%7059!54%455-( +M@^P(2(G]28GV@']#`'0EN0````#V1@T!=`[K&$$/MD8-2-/XJ`%U#(/!`0^V +M14-F.<AWZ$F+1D!(A<!T'$B-L)````!(BWTHZ`````!)BW9`2(GOZ`````!) +MC49@23E&8`^$7`$``$F)QTR)_^@`````2(G#2(-X0``/A"D!``"`N(,````` +M#X2B````9H-]=``/A)<```!!O0````!!O`````"02(N%N`D``$P!X$B+,$B% +M]G1C#[=&(&8[0SAU668]A0!W4P^WP("\!6@(``#_=$9(BU4`#[=&,F;!Z`4/ +MM\"-!(4``P``B8)P`0``2(M5``^W3C*#X1^X`0```$C3X(F"=`$``,9&)"&Z +M`````$B)[^@`````08/%`4F#Q`@/MT5T1#GH#X]V____2(M#0$C'0&`````` +M]D-,!'492(GOZ`````!(BW-`N@$```!(B>_H`````$B+0T`/ME`"#[9P`4C' +MQP````"X`````.@`````2(M30$B+M?@(``"_`0```.@`````2(M30$B+M?@( +M``"_!@```.@`````2,=#0`````!!@&X.`4B)WDB)[^@`````33E^8`^%I_[_ +M_TG'1D``````2(M%`(N(6`$``(D-`````(7)=`I(BT4`B8A8`0``2(/$"%M= +M05Q!74%>05_#9F9FD&9FD&9FD&9FD$B#[`A,BP=!#[9P0T"$]G0U28V`P!(` +M`+D`````2#GX=1KK(@^VP4B-%$!(C12028V4T,`2``!(.?IT#X/!`4`X\77@ +MZP6Y``````^VP4B-%$!(C1202(T$U0````!)B[0`T!(``$B%]G1]]D8*`G1W +M28V$`,`2``!(.48@=6D/MD98A,!T"(/``8A&6.M92(M62$B#ZCA(C4Y(2(U" +M.$@YR'1$2(-Z$`!U+.L*9F:02(-Z$`!U(,9&6`$/MHJ[````28NXN!```$G' +MP`````#H`````.L12(M2.$B#ZCA(C4(X2#G(=<A(@\0(PV9FD$B#["A(B5PD +M"$B);"003(ED)!A,B6PD($B)^TB)]4B+1G!,BV@H#[=.(&:!^84`=W\/M\$/ +MMH0':`@``#S_='!F@_E_=R$/MM!(BX]`"0``2(T$4DB-!()(P>`%2(M$"%`/ +MMD`(ZTYF@?F!`'<<#[;`2(N7D`D``$AIP,@/``!(BT00"`^V0`CK*P^VP$B+ +MEV@)``!(C03`2,'@!4B+A!"(````#[9`".L+9F:09F:0N/\```!(F$0/MJ0# +M[@@``$B+=7A(A?9T"$B)W^@`````2(GN2(G?Z`````!!#[;$2(T\@$B-/+A( +MC;S[R`$``$R)[D'_E:````!(BUPD"$B+;"003(MD)!A,BVPD($B#Q"C#9F9F +MD&9FD&9FD&9FD$%455-(B?5(B=-F@7XXX0%U$0^V1CJ#Z!%!O``````\`78T +M2(LW2(N^0`D```^W12"Z8)X!`&8]A0!W%P^WP`^VA`9H"```2(T40$B-%)!( +MP>(%3(TD%\9#!`6`8P7^@"/?N`````!F@7TXX0%U$0^V13J#Z`$\`0^6P`^V +MP&:0P>`'#[83@^)_"<*($P^VA98```"#X`'!X`:#XK\)PH@3]H66`````70. +M3(GGZ`````!FB4,(ZP1FB4L(#[=#"(A%)6:!?3CA`74E#[95.HU"_SP!=PH/ +MME4[@^(/ZRJ0C4+ON@\````\`78=9F9FD+H`````28-\)&``=`Q!#[:4)($` +M``"#X@\/M@.#X/`)T(@#6UU!7,-F9F:09F9FD$B#[#A(B5PD"$B);"003(ED +M)!A,B6PD($R)="0H3(E\)#!)B?Q(B?-)B=</MD8X/`AT#SPH=`L\J'0'/(AF +M9I!U#H.+E`````KK)69FD&:0/`IT#CPJ=`H\JG0&/(IFD'4.@XN4`````F9F +M9I!F9I`/MWLX9H'_X0%U'`^V0SJ#Z!$\`7<1@XN4````"+@`````Z4D%``!$ +MBT,X08'@____`$&!^.$!$``/A>8````/MTL@9H'YA0`/A_($```/M\%!#[:\ +M!&@(``")^$"`__]T;F:#^7]W(T`/MM=)BXPD0`D``$B-!%)(C02"2,'@!4B+ +M1`A0#[9`".M%9H'Y@0!W'D`/ML=)BY0DD`D``$AIP,@/``!(BT00"`^V0`CK +M($`/ML=)BY0D:`D``$B-!,!(P>`%2(N$$(@````/MD`(#[;`00^VA`3N"``` +M2(T4@$B-%)!)C;34R`$``$F+E"20"0``0`^VQTAIP,@/``!!O0````#V1`)= +M$`^%8`(``,9#)`1!QP<`````N`$```#I2P0```^W4R"Y_P```+C_____9H'Z +MA0`/AXL````/M\)!#[:T!&@(``")\$"`_O]T<V:#^G]W*$`/MM9)BXPD0`D` +M`$B-!%)(C02"2,'@!4B+1`A0#[9`".M*9F:09I!F@?J!`'<>0`^VQDF+E"20 +M"0``2&G`R`\``$B+1!`(#[9`".L@0`^VQDF+E"1H"0``2(T$P$C!X`5(BX00 +MB`````^V0`A`#[;.1`^V\$ECQD$/MJP$[@@``$B-1*T`2(U$A0!)C;3$R`$` +M``^WP4B-%$!(C1202,'B!4F)U4T#K"1`"0``9H'_X0%U"P^V0SJ#Z`$\`78I +M9H'Y_P!T!T'V14L$=1O&0R0&0<<'`````+@!````Z38#``!F9I!F9I!!#[95 +M2(G1@^$!="3VP@1T'T$/MD0D1$$Z1"1.<A)!QP<!````N`$```#I`0,``)!- +MA>T/A/<```"%R0^$[P```/;"!`^$Y@```$B)WDR)[^@`````A,!U%<9#)`1! +MQP<`````N`$```#IP@(``$&`O8,````?=A%!QP<!````N`$```#IIP(``/:# +ME@````%T%TB-1*T`2(U$A0!!]H3$U`$```%T&^M?2(U$K0!(C42%`$'VA,34 +M`0```0^$OP$``$2)]DR)Y^@`````A,!T$4''!P$```"X`0```.E.`@``]H.6 +M`````0^$D@$``$B-1*T`2(U$A0!!]H3$U`$```$/A'D!``!,B>_H`````&:# +M^!\/AF<!``!!QP<!````N`$```#I!0(``&9FD&:0]D8*`G0R08'XX0$0`&9F +MD`^$.P$``$$/MH6#````03J%@@```'(>0<<'`0```+@!````Z<@!``!!@?CA +M`1``#X0,`0``00^W16J`>SCA#X7]````@'LY`0^%\P```$C1Z$B)PH/B`0^V +M0SJ#Z`8\"0^'Q@````^VP/\DQ0````!!N`$```"Y`0```$B)VDR)[DR)Y^@` +M````A,`/A;````!!QP<"````N`$```#I3@$``$&X`0```+D`````2(G:3(GN +M3(GGZ`````"$P`^%?@```$''!P(```"X`0```.D<`0``#[;*0;@!````2(G: +M3(GN3(GGZ`````"$P'520<<'`@```+@!````Z?`````/MLI!N`````!(B=I, +MB>Y,B>?H`````(3`=29!QP<"````N`$```#IQ````,9#)`1!QP<`````N`$` +M``#IKP```$F-O"2H#P``Z`````"$P'010<<'`0```+@!````Z8T```"`>SCA +M=4Z`>SD!9F:0=46`>SH/=3^`>ST!9F9FD'4U#[9S/,'F"`^V0SL!Q@^W]DR) +MY^@`````2#M#:'4%2(7`=1+&0R0$0<<'`````+@!````ZSFX`````.LR9I!! +M#[:$).T)``!(C12`2(T4D$F-M-3(`0``28N4))`)``"X.+@/`.F4^___9F:0 +M9I!(BUPD"$B+;"003(MD)!A,BVPD($R+="0H3(M\)#!(@\0XPV9F9I!F9I!F +M9I!F9I!(@^P(2(L_Z`````!(@\0(PV9F9I!F9F:09F9FD&9FD$%7059!54%4 +M55-(@^Q828G]2(GU2(N?0!$``&;'1C+_#TB-5"0LZ`````"$P'0)BT0D+.D. +M"P``BT4X)?___P`]X0$0``^%Y0```+^($P``Z``````/MTT@9H'YA0`/A[D* +M```/M\%!#[:T!6@(``")\$"`_O]T:V:#^7]W(D`/MM9)BXU`"0``2(T$4DB- +M!()(P>`%2(M$"%`/MD`(ZT-F@?F!`'<=0`^VQDF+E9`)``!(:<#(#P``2(M$ +M$`@/MD`(ZQ]`#[;&28N5:`D``$B-!,!(P>`%2(N$$(@````/MD`(#[;`00^V +MA`7N"```2(T4@$B-%)!-C;35R`$``$F+E9`)``!`#[;&2&G`R`\``$@!PDB) +M5"002,=$)`@`````2,=$)!@`````Z7(!```/MU4@OO\```!F@?J%`'<,#[?" +M00^VM`5H"```#[=].&:!_^$!=0\/MD4Z@^@1/`$/AL8```!F@?J%`'=Z#[?" +M00^VA`5H"```//]T:F:#^G]W(0^VT$F+C4`)``!(C0122(T$@DC!X`5(BT0( +M4`^V0`CK2&:!^H$`=QP/ML!)BY60"0``2&G`R`\``$B+1!`(#[9`".LE#[;` +M28N5:`D``$B-!,!(P>`%2(N$$(@````/MD`(ZP6X_____P^VP$$/MH0%[@@` +M`$B-%(!(C12038VTU<@!```/M\9(C11`2(T4D$C!X@5)`Y5`"0``2(E4)`AF +M@?_A`75&ZS(/M\9(C03`2,'@!4D#A6@)``!(B40D&$R+L(@```!(QT0D"``` +M``!(QT0D$`````#K1`^V53J-0N\\`78GC4+_/`%V(&:!_O\`=`M(BT0D"/9` +M2P1U#L9%)`:X`````.FV"```2,=$)!``````2,=$)!@`````2(UT)$A,B>_H +M`````$&)QV:)13),B>_H`````$F)Q+@"````387D#X1W"```3(FE@````$$/ +MM]=(B10D2&G"L`0``$B-'!A(C4,@22N%0!$``$D#A4@1``!(BU0D2(E"($C! +MZ"!(BU0D2(E")$F+1"082(M4)$B)0BA(P>@@2(M4)$B)0BQ(BT0D2&9$B7@( +MN`````#&!!@`2(/``4@]L`0``'7P9H%]..$!=50/MD4Z@^@1/`%W24B-3"0P +M2(M$)$@/ME`(2(GN2(M\)`CH`````$B-@R`$``!)*X5`$0``20.%2!$``$B+ +M5"1(B4(02,'H($B+5"1(B4(4Z14!``!!#[96"O;"`74LBT4X)?___P`]X0$0 +M``^$G````$B+3"0(#[9!2*@!#X2+````J`0/A(,```#VA98````@=`](C70D +M,$B)[^@`````ZQM(C4PD,$B+1"1(#[90"$B)[DB+?"0(Z`````!(C8,@!``` +M22N%0!$``$D#A4@1``!(BU0D2(E"$$C!Z"!(BU0D2(E"%$B)V$DKA4`1``!) +M`X5($0``2(M4)$B)0AA(P>@@2(M4)$B)0ASK7/;"`G172(G822N%0!$``$D# +MA4@1``!(BU0D2(E"&$C!Z"!(BU0D2(E"'$B-@R`$``!)*X5`$0``20.%2!$` +M`$B+5"1(B4(02,'H($B+5"1(B4(42(M$)$B`2`$"#[9564B+1"1(9HE0`H!] +M60!T,[\`````B?A(C01`2,'@`DF+="002(M-8$B+%`A(B10&BU0("(E4!@B# +MQP$/MD59.?AWTHM5-$B+1"1(B5`,9H%]..$!=3\/MD4Z@^@1/`%W-$$/M\]( +MBU0D2$B)[DR)]^@`````2(U,)#!(B=I(B>Y,B??H`````$&`9@S^Z8L$``!F +M9I!!#[9&"J@"#X0B!```2(M$)$C&0`;^2(M$)$B`8`?^2(-\)`@`#X2X```` +M2(M$)`@/ME!(2(G0@^`&2(/X!@^%GP```/;"`0^$E@```$$/M\](BU0D2$B) +M[DR)]^@`````]H66`````7002(M$)$@/MT`(P>`#B$0D,4B-3"0P2(G:2(GN +M3(GWZ`````#VA98````!=`=!@$X,`>L%08!F#/[&`Z%(BU0D"`^V@NH```"# +MX`\/ME,!@^+P"<*(4P%(BTPD"`^W03B#P`%FP<`(9HE#`DF)S$F!Q-0```#I +M/0,``&:!?3CA`0^%)`(```^V13H\#W030;P`````/!`/A1L#``#IK@````^V +M53S!X@@/MD4[`<)(BT0D2,9`!`U(BT0D2(!@!?Z`3"1#"$B+="1(#[9%)4$/ +MMHWZ````T^!F"48(2(M,)$@/MD$!@^`?@\@@B$$!2(M%/DB)@S@$``!FP<(( +M9HF31`0```^V13V(@T($``#&`Y%(BU0D"`^W0CB#P`%FP<`(9HE#`DB+3"0( +M#[:1Z@```(/B#P^V0P&#X/`)T(A#`4F)S$F!Q-0```#I:`(``$B+5"1(#[9% +M)4$/MHWZ````T^!F"4((Q@.!9L=#`O__2(M$)!`/MI"[````@^(/#[9#`8/@ +M\`G0B$,!2(-]2`!U#L9%)"&X`````.GN`P``]D4[`70I3(ME4$V%Y'0@28N] +MN!```$R)YN@`````@^`/#[93`8/B\`G"B%,!ZP5,BV0D$$B+54@/MD(!OA`` +M```\@`^$A@```#R`=Q\\%7<2/!!F9I!FD'-G@^@"/`%W1.M7/!=F9I!W.^M> +M/(5T+CR%9F:09F:0=Q`\@71#/()U(V9FD&9FD.LB/)!R%[XH````/))F9I!V +M-3R3=0>^C````.LJO@0```#K(P^V0@2--(4(````D.L5O@@```#K#KX,```` +M9I#K!;X<````B?+!Z@)(BT0D2(A0!$B+3"1(9L'J"(/B`0^V006#X/X)T(A! +M!4B-NR`$``")\DB+=4CH`````.D-`0``#[9%.(/H!#RK=T`/ML#_),4````` +M#[9%0,'@"`^V54&-#!"#^0UW&+@!````2-/@J=@^``!T"4B+1"1(@$@!!$B+ +M1"1(@$@!`>L)2(M$)$B`8`'[2(M$)$C&0`0-2(M$)$B`8`7^2(M4)$@/MD4E +M00^VC?H```#3X&8)0@A(BT0D2(!@`1_&@R`$```&3(MD)`A)@<34````2(V[ +M(00``$R)YN@`````2(V[)00``$R)YN@`````2(M%.$B)@T0$``!(BT5`2(F# +M3`0``$B+5"0(2(N"W````$B)@S@$``#&`Y%(BTPD"`^VD>H```"#X@\/MD,! +M@^#P"="(0P$/MT$X@\`!9L'`"&:)0P)-A>1T8TF+!"1(B4,$ZUFH`71500^W +MSTB+5"1(2(GN3(GWZ`````#VA98````!=!!(BT0D2`^W0`C!X`.(1"0Q2(U, +M)#!(B=I(B>Y,B??H`````/:%E@````%T!T&`3@P!ZP5!@&8,_DF+A;@)``!( +MBQ0D2(DLT$2)^F;!Z@5%#[?G@>+_!P``1(GA@^$?N`$```!(T^!!"825P`D` +M`(M%."7___\`/>$!$`!U*4B-3"1`N@````!$B>9,B??H``````^V1"1#@^`? +M@\A`B$0D0^FD````9H%]..$!=3,/MD4Z@^@1/`%W*$B+="083(GOZ`````!( +MC4PD0$B+1"08#[904$2)YDR)]^@`````ZVE(BW0D"$R)[^@`````2(U,)$!( +MBT0D"`^V4')$B>9,B??H`````$B+3"0(#[912$B)T(/@!DB#^`9U+O;"`70I +M#[9$)$.#X!^#R&"(1"1##[91<H/B?\'B!`^W1"1"9B4/^`G09HE$)$)(C70D +M0$R)[^@`````2(MS(+@#````2(7V=$%(Q\<`````N`````#H`````+@#```` +MZRE!#[:%[0D``$B-%(!(C12038VTU<@!``!)BY60"0``N#BX#P#IR_7__TB# +MQ%A;74%<05U!7D%?PV9F9I!F9F:09F:0055!5%532(/L"$B)_4&]`````$R- +MIP`!``#IN0$``)!,B>?H`````$B)PTB#>'``=39(B>_H`````$B)0W!(A<!U +M)4B-E0`!``!(BX4``0``2(E8"$B)`TB)4PA(B9T``0``Z9T!``"+0S@E____ +M`#WA`1``#X3=````#[=#(&8]@``/A,\````/MLAFB4L@9H/Y?W8:9H%[..$! +M=2D/MD,Z@^@1/`%W'F9F9I!F9I!F@?F%`'<0#[?!#[:4!6@(``"`^O]U&<9# +M)`9(B=Y(B>_H`````.G]````9F:09I`/MW,X9H'^X0%U%0^V>SJ-1^\\`0^' +M[0```.L?9F9FD`^VPDB-%$!(C1202,'B!4F)U4P#K4`)``#K!XU'_SP!=C9F +M@?F``'0O9H'^X0%FD'4+#[9#.H/H$3P!=AM!]D5+!'44QD,D!DB)WDB)[^@` +M````Z8````!(B=Y(B>_H`````(/X`G<*@_@!<R5F9I#K$(/X`W5A9F:09F:0 +M9F:0ZTM(B=Y(B>_H`````&9FD.M&2(.[@`````!T#TB-LX````!(B>_H```` +M`$B-E0`!``!(BX4``0``2(E8"$B)`TB)4PA(B9T``0``ZSA(B=Y(B>_H```` +M`$PYI0`!```/A3O^___K'@^VPDB-%$!(C1202,'B!4F)U4P#K4`)``#I%O__ +M_TB#Q`A;74%<05W#2(/L2$B)7"082(EL)"!,B60D*$R);"0P3(ET)#A,B7PD +M0$B)]4F)_4R+9U!-BS0D00^V1"0,J!!T#,:'Z`````;IC`(```^VE^@```"` +M^@$/A((```"`^@%R&H#Z!`^$HP```(#Z!@^%S0(``&9FD.E=`@``QH?H```` +M`4B)_DR)]^@`````QD4D@4&`3"0,"$B#O8``````=`](C;6`````3(GWZ``` +M``!)BX8``0``2(EH"$B)10!)C88``0``2(E%"$F)K@`!``!,B??H`````.EB +M`@``@^#W08A$)`R`A^L````!QH?H`````,9&)`),B??H`````$R)]^@````` +MZ3,"``#&A^L`````2(.^@`````!T#TB-MH````!,B??H`````$F+34!(A<D/ +MA)X!``"+402-0@&)002#^B@/AXP!``!)BX8``0``2(EH"$B)10!)C88``0`` +M2(E%"$F)K@`!``!!@'U*_W0D28M%8$B%P'0&@'A"`'053(GJO@(```!,B>?H +M`````.FH`0``00^V1"0,@^#W@\@008A$)`Q)BW582(7V=11!@'PD#@!U+.GE +M````9F9FD&9FD$$/MI6!````0;@`````N0(```!,B>?H`````.E:`0``0;\` +M````QD0D%P!)C40D8$B)1"0(2(M\)`CH`````$B)Q4F+1"1H28EL)&A(BU0D +M"$B)50!(B44(2(DH2(M50$B%TG0528NV^`@``+\%````Z`````"`34P"2(GJ +MO@8```!,B>?H`````("]@P````!T-D&-7P%!@?]_EI@`=R9,B??H`````+\! +M````Z`````"`O8,`````=`N#PP&!^X&6F`!UVD&)WX!$)!<!#[9$)!=!.$0D +M#@^'5____TF+?6!(A?]U'$'&14H#9D''A<@``````$R)[DR)]^@`````ZW?H +M`````&9F9I!F9F:0ZVA!#[9=2DC'QP````"X`````.@`````08!D)`SO28N& +M``$``$B):`A(B44`28V&``$``$B)10A)B:X``0``3(GJO@8```!,B>?H```` +M`(#[_W4.3(GJ3(GF3(GWZ`````!,B??H`````$B+7"082(ML)"!,BV0D*$R+ +M;"0P3(MT)#A,BWPD0$B#Q$C#9F:005=!5D%505154TB#["A(B?U)B?5(BX]` +M"0``N&">`0!F@7X@A0!W&P^W1B`/MH0':`@``$B-%$!(C1202(G02,'@!4R- +M)`%(BY40$0``2('"0`@``$$/MD0D<L'@"$B82`'"BS*)-0````!!B?=!P>\0 +M2(N5$!$``$B!PD`(``!!#[9$)'+!X`A(F$@!PHM"!(D%`````(A$)!")PL'J +M"(A4)!'!Z!"(1"022(N5$!$``$B!PD`(``!!#[9$)'+!X`A(F$@!PHM""(D% +M`````(A$)!.)PL'J"(A4)!3!Z!"(1"05QD0D%@#&1"07`(M,)!!!B?9!P>X8 +M00^VWT2+1"041(GRB=Y(Q\<`````N`````#H`````(G8@_`!B<*#X@%T%$6$ +M_W0/0<9%)`"X`````.FH`@``08!])(%F9I!U(4B-3"001(GRB=Y,B>_H```` +M`$'&120"N`````#I?0(``$&+13@E____`#WA`0X`=0]!QD4D(;@`````Z5X" +M``!!]H66`````74HA-)U)$&`?"1*_W0<2(U,)!!$B?*)WDR)[^@`````N``` +M``#I+`(``$R)YDB)[^@`````3(GF2(GOZ`````!(BU4`00^W13)FP>@%#[?` +MC02%``,``(F"<`$``$B+10!!#[=-,H/A'[H!````2(G32-/CB9AT`0``00^W +M13)(P>`#2`.%N`D``$C'``````!!#[=-,HG(9L'H!27_!P``@^$?2(G62-/F +M2(GQ]]$AC(7`"0``00^W33*)R&;!Z`4E_P<``(/A'TC3XO?2(52%>$F+50!) +MBT4(2(E""$B)$$$/MW4R2(V]J`\``.@`````08"L)(,````!0<9%)(%)@[V` +M`````'0/28VU@````$B)[^@`````28U$)"!).40D(`^$"0$``$F)QDB-A:@/ +M``!(B40D"$R-O0`!``!F9F:09F:03(GWZ`````!(B<-(BU4`#[=`,F;!Z`4/ +MM\"-!(4``P``B8)P`0``2(M%``^W2S*#X1^Z`0```$B)UDC3YHFP=`$```^W +M0S)(P>`#2`.%N`D``$C'```````/MTLRB<AFP>@%)?\'``"#X1](B=9(T^9( +MB?'WT2&,A<`)```/MTLRB<AFP>@%)?\'``"#X1](T^+WTB%4A7@/MW,R2(M\ +M)`CH`````$&`K"2#`````4B#NX``````=`](C;.`````2(GOZ`````!(BX4` +M`0``2(E8"$B)`TR)>PA(B9T``0``33ET)"`/A13___]!@:64````___^_T'& +MA"3H````!$R)[DR)Y^@`````N`$```!(@\0H6UU!7$%=05Y!7\.02(/L6$B) +M7"0H2(EL)#!,B60D.$R);"1`3(ET)$A,B7PD4$B)5"002(LO3(N%0!$``$B% +MT@^$Q@(```^WUDAIPK`$``!*C0P`]D$A`G082(T$U0````!(`X6X"0``2(L` +MQD`D`NL62(T$U0````!(`X6X"0``2(L`QD`D(4R-%-4`````2(N%N`D``$P! +MT$B+$(M"."7___\`/>$!$``/A+`!```/MT(@9CV%`'<2#[?`#[:$!6@(```\ +M_W499F:03(G02`.%N`D``$B+`,9`)`;IR@@```^VP$B-%$!(C1202,'B!4R+ +MG4`)``!)`=.`?"03`'EN00^V4TA(B="#X`9(@_@&=2/VP@%T'DB+10"+D%@! +M``")%0````"%TG0*2(M%`(F06`$``$B+10"+@%`!``")!0````"#R`)(BU4` +MB8)0`0``2(M%`(N`!`$``(D%`````(#,_TB+50")@@0!``!F]T$@`@@/A.H` +M``"`?4,`#X3@````NP````!!N0````!%B<A!#[;)#[9'#4C3^*@!=&!!@/D# +M=B=(BT4`2`70`0``C12-`````$ACTD@!T(L`B04`````P>@4@^`!ZR5(BT4` +M2`70`0``C12-`````$ACTD@!T(L`B04`````P>@4@^`!A,!T"K@!````2-/@ +M"<-!@\$!08U``3A%0W>!A-MT4CA?#75-B?!FP>@%)?\'``"+1(5XB?]( +MT_BH`74R08"[Z`````)W"$'&@^@````#3(G02`.%N`D``$B+,$R)W^@````` +MZ4P'``!!NP````#V1"03`0^$.P<``$R)T$@#A;@)``!(BS#&1B0ABT8X)?__ +M_P`]X0$.``^$%P<``$B+E1`1``!(@<)`"```00^V0W+!X`A(F$@!PHL"B04` +M````2(N5$!$``$B!PD0(``!!#[9#<L'@"$B82`'"BP*)!0````!(BY40$0`` +M2('"2`@``$$/MD-RP>`(2)A(`<*+`HD%`````$B)[^@`````Z:$&``"0#[?V +M2(T<]0````!(BX6X"0``2`'82(L09H%Z..$!#X4,`0``#[9Z.D"`_Q`/AVX& +M``"X`0```(GY2-/@J<`P```/A<P```"I```!`'54]L2`#X1)!@``2&G&L`0` +M`$J-#``/MD$SB$(D2(G82`.%N`D``$B+`/9`(P0/A"`&``"`>"0`#X06!@`` +M2(M04$B%T@^$"08```^V03.(`NG^!0``2&G&L`0``$J-#`!,C6$H2(G82`.% +MN`D``$B+$$$/MD0D`HA")$B)V$@#A;@)``!(BP!(@WA(``^$P04```^VN2$$ +M``#H`````$B)VD@#E;@)``!(BPJ+430YT`]'PHG"2(MY2$R)YN@`````Z8T% +M``!(B=A(`X6X"0``2(L`QD`D`.EW!0``9F9FD&9FD$B)V$@#A;@)``!,BRA- +MBWUHN/____]F08%]((4`=QE(B=A(`X6X"0``2(L`#[=`(`^VA`5H"```#[;` +M2(T40$B-%)!(P>(%3(NE0`D``$D!U$'&A"3H`````$$/ME0D2$B)T(/@!DB# +M^`8/A9<!``#VP@$/A(X!``!!QD4D`$'VA98````@#X3D!```387_#X3;!``` +M0?:'L0````(/A*$```!!BT4TA<`/A)4```!)B[^@````2(7_=`V)PDF+=4CH +M`````.M\28-]2`!T=4F#O[@`````=0I)@[_``````'1A38MM2$F+A[@```!( +MA<!T#4B)PT'VA[$````!="9(B[5("@``N@$```!,B?]!_Y?`````NP````"% +MP'0'2(N=2`H``$B+>PB+$TR)[N@`````BP-)`<6+0P1(@\,0A<!TXDB+E1`1 +M``!(@<)`"```00^V1"1RP>`(2)A(`<*+`HD%`````(G"P>H008B7FP```,'H +M&&9!B8>0````2(N5$!$``$B!PD0(``!!#[9$)'+!X`A(F$@!PHL2B14````` +M#[;"9D&)AY0````/ML9F08F'E@```(G0P>@0#[;`9D&)AY@```#!ZAA!B)>: +M````2(N5$!$``$B!PDP(``!!#[9$)'+!X`A(F$@!PHL"B04`````#[;`9D&) +MAY(```#I:0,``$AIQK`$``!.C30`00^V1C.$P`^%T0```$B)V$@#A;@)``!( +MBP#&0"0`0?:%E@```!`/A#(#``!-A?\/A"D#``!!#[9&,T&(AY(```!!]H>Q +M`````@^$#P,``$&#?30`#X0$`P``28._N`````!U#DF#O\``````#X3L`@`` +M38ME2$F+A[@```!(A<!T#4B)PT'VA[$````!="9(B[5("@``N@$```!,B?]! +M_Y?`````NP````"%P'0'2(N=2`H``$B+>PB+$TR)YN@`````BP-)`<2+0P1( +M@\,0A<`/A8<"``#KW&9FD&:0/`(/A2@"``!!#[9.0$&+1CB)1"0D#[94)"</ +MMD0D),'@&`G"#[9$)"7!X!`)P@^V1"0FP>`(08G400G$@^%_@/EQ=CS&1"0- +M`$&#_`%V#$$/MD9!@^`/B$0D#<9$)`X`08/\`G8)00^V3D*(3"0.08/\`W9F +M00^V1D.(1"0/ZV#&1"0-`$&#_`)V#$$/MDY"@^$/B$PD#<9$)`X`QD0D#P!! +M@_P'=CE!#[9&1X/`"$$YQ$0/1^#&1"0.`$&#_`QV"4$/MD9,B$0D#D&#_`UV +M"T$/MDY-B$PD#^L%QD0D#P!(B=A(`X6X"0``2(L`@'@P`'1(187D=$/&0"0@ +M2(G82`.%N`D``$B+``^V0#`/MM!$..!$#T+B2(G82`.%N`D``$B+`$B+>%!( +MA?]T'T2)XDF-=D#H`````.L12(G82`.%N`D``$B+`,9`)"*`?"0-!'412(G8 +M2`.%N`D``$B+`,9`)`)).6TH#X02`0``387_#X0)`0``0?:%E@```!!T0$$/ +MMD8S08B'D@```$'VA[$````"="I!#[9%,$2)XD$XQ`]'T(32=!A)B[^H```` +M2(7_=`P/MM))C79`Z`````"`?"0-"W=<#[9$)`W_),4`````0<:'L@````'I +MGP```(!\)`X$=12`?"0/`G4-0<:'L@```!'IA````$'&A[(````"ZWI!QH>R +M````$.MP0<:'L@````OK9D'&A[(````&ZUQ!QH>R````#>M29I`\*'4G00^V +MA"2#````@^@!08B$)((```!(B=A(`X6X"0``2(L`QD`D@>LE/`AU"K\0)P`` +MZ`````!(B=A(`X6X"0``2(L`QD`D(69FD&9FD$B+7"0H2(ML)#!,BV0D.$R+ +M;"1`3(MT)$A,BWPD4$B#Q%C#9F9FD&9FD&9FD&9FD$%7059!54%455-(@>RH +M````2(G]2(E\)'`/MX>Z$@``9HF$)(````!(BP>+@$`!``")!0````!F)?\/ +M9HF'NA(``&8[A"2`````=7%(BP>+L%`!``")-0````!(BP>)L%`!``"X```` +M`/?&`/__``^$!`D``$C'QP````"X`````.@`````2(M\)'#H`````+@!```` +MZ=\(``!F9I!F9I!(BT4`BX!``0``B04`````9B7_#V:)A;H2``#K)$B-EQ`! +M``!(B50D:$B-CZ@/``!(B4PD8$B-MP`!``!(B70D6$B+A:`1``"+`(D%```` +M``^WC;H2```E_P\```^WT3G0=9UF@?G_#P^%P@<``.G2!P``3(N%0!$``&:# +MA"2``````0^WA"2`````9CN%OA(``+@`````#[>4)(`````/0]!FB90D@``` +M`$B+E:`1``!(@\($#[>$)(````"+#()!B<E!P>D00?;!"`^$KP```$B+10"+ +MD%`!``")%0````!(BT4`B9!0`0``]\(`__\`=&F`?4,`=&.)UO?&``$``'4N +MOP````#WQ@```0!T0.L?#[?7C4H(2(GP2-/XJ`%U%(U*$$B)\$C3^*@!=0?K +M'[\`````#[?'2(T4@$B-%)!(C9S5R`$``$B%VW4=ZPR#QP$/MD5#9CGX=[9( +MBWPD<.@`````Z<4&``!(BWPD<.@`````B$,/Z;,&``!F9I")SF:!YO\/#[?& +M2&G0L`0``$V+1!`@2(T\Q0````!(BX6X"0``2`'X2(L82(7;#X5L`0``#[?V +MB?)(Q\<`````N`````#H`````&:#?70`#X1;!@``QH0DGP````!F9I!$#[:T +M))\```!.C3SU`````$B+A;@)``!,`?A(BS!(A?8/A/D```!-:>:P!```3`.E +M0!$``$B+G>`0```/MDXE1`^VK"2?````1(GJ2,?'`````+@`````Z`````!, +MB?A(`X6X"0``2(LXZ`````!!BXPD)`0``$&+E"0@!```18N,)"P$``!%BX0D +M*`0``$2)[DC'QP````"X`````.@`````3(GP2,'@!D@!PXM#-(M[,$2+4RQ$ +MBULH1(MC)$2+:R!$BW,<1(M[&(M+%(E,)'Q$BTL01(M##(M+"(M3!(LSB40D +M0(E\)#A$B50D,$2)7"0H1(ED)"!$B6PD&$2)="001(E\)`B+1"1\B00D2,?' +M`````+@`````Z`````"`A"2?`````0^VA"2?````9CM%=`^#%@4``.G!_O__ +MD$'VP2`/A(@!``"`>R2!9I`/A5L!``#&0R0A#[=#,DC!X`-(`X6X"0``2,<` +M``````^W2S*)R&;!Z`4E_P<``(/A'[H!````2(G62-/F2(GQ]]$AC(7`"0`` +M#[=+,HG(9L'H!27_!P``@^$?2-/B]](A5(5X#[=S,DB+?"1@Z`````!(@[N` +M`````'0/2(VS@````$B)[^@`````#[=3(&:!^H4`#X?'````#[?"#[:$!6@( +M```\_P^$M````&:#^G]W(P^VP$B-%$!(C1202,'B!4@#E4`)``!(BT)0@'@( +M_P^5P.M9#[=#(&8]@0!W)@^WP`^VA`5H"```2&G`R`\``$@#A9`)``!(BT`( +M@'@(_P^5P.LI#[=#(`^VA`5H"```2(T$P$C!X`5(`X5H"0``2(N`B````(!X +M"/\/E<"$P'0N2(G>2(GOZ`````!(BX4``0``2(E8"$B)`TB+1"182(E#"$B) +MG0`!``#IGP,``$B+3"1H2(M1"$B-0Q!(B4$(2(E+$$B)4`A(B0+I?@,``(GP +M9L'H!40/M_!)8\8/M_9!B?=!@^<?BT2%>$2)^4C3^*@!#X55`P``2(GX2`.% +MN`D``$B+``^W4"!F@?J%``^'N@````^WP@^VA`5H"```//\/A*<```!F@_I_ +M=R`/ML!(C11`2(T4D$C!X@5(`Y5`"0``2(M"4`^V0`CK;4B)^$@#A;@)``!( +MBP`/MT`@9CV!`'<C#[?`#[:$!6@(``!(:<#(#P``2`.%D`D``$B+0`@/MD`( +MZS-(B?A(`X6X"0``2(L`#[=`(`^VA`5H"```2(T$P$C!X`5(`X5H"0``2(N` +MB`````^V0`@\_W00#[;02&/"@+P%[@@``/]U-DECQHM$A7A$B?E(T_BH`0^% +M:@(``,9#)`9(B=_H`````+H`````2(G>2(GOZ`````#I20(``$ACP@^VA`7N +M"```2(T4@$B-%)!(C;S5R`$``$V%P'0-0?;!`K@`````3`]$P/9'"@(/A%X! +M``!,B<+H`````$ECQHM$A7A$B?E(T_BH`0^%]0$``(![)($/A8\````/MT,R +M2,'@`T@#A;@)``!(QP``````#[=+,HG*9L'J!8'B_P<``(/A'[@!````2-/@ +M]]`AA)7`"0``#[=S,DB+?"1@Z`````!(B=Y(B>_H`````$B#NX``````=`]( +MC;.`````2(GOZ`````!(BX4``0``2(E8"$B)`TB+="182(ES"$B)G0`!``#I +M7`$``$B+A1`!``!(.T0D:'1?0;P`````08/$`4B+`$@Y1"1H=?)%A.1T1D&] +M`````$B+?"1HZ`````!(C4CP2(MT)&A(BU8(2(E&"$B),$B)4`A(B0)(.=FX +M`0```$0/1.A!@.P!=<E%A.T/A>\```!(BT0D:$B+4`A(C4,02(M,)&A(B4$( +M2(E+$$B)4`A(B0))8]:X`0```$2)^4C3X`F$E;@```#IM````$R)PN@````` +M2(N%$`$``$@[1"1H=%M!O`````!!@\0!2(L`2#E$)&AU\D6$Y'1"0;T````` +M2(M\)&CH`````$B-2/!(BW0D:$B+5@A(B48(2(DP2(E0"$B)`D@YV;@!```` +M1`]$Z$&`[`%UR46$[75#@'LD@70]2(M$)&A(BU`(2(U#$$B+3"1H2(E!"$B) +M2Q!(B5`(2(D"26/6N`$```!$B?E(T^`)A)6X````9F9FD&9FD`^WM"2````` +M9CFUNA(```^%+OC__V:!O;H2``#_#W0C2(N%H!$``(L`B04`````)?\/```/ +MMY6Z$@``.=`/A<[W__](C840`0``2#F%$`$``'1)2(G#2(G?Z`````!(C7#P +M#[=.,HG*9L'J!8'B_P<``(/A'[@!````2-/@]]`AA)6X````N@````!(B>_H +M`````$@YG1`!``!UNDB)[^@`````N`$```!(@<2H````6UU!7$%=05Y!7\-F +M9I!FD$B#["A(B5PD"$B);"003(ED)!A,B6PD($B+G_@(``!(BT,(1(LH1(DM +M`````$'WQ0```)!T>DB+0PA$B2CK<9!(@<.0%```2(L#BY!0`0``B14````` +M2(L#B9!0`0``A=)T//?"````$'0<2(L#QX!0`0``````$$B+`XN`4`$``(D% +M`````$B+`\>`4`$```$```!(B=_H`````$$!Q(/%`8/]`G69ZQ=F9F:09F:0 +M0;P`````O0````#KBF9FD$6$Y`^5P$6%[0^5P@G0#[;`2(M<)`A(BVPD$$R+ +M9"083(ML)"!(@\0HPV9FD&9FD$%7059!54%455-(@^PH28G\2(L'BY!0`0`` +MB14`````2(L'B9!0`0``9F9FD&9FD/?"`/__``^$*`D``$&`?"1#``^$'`D` +M`,9$)!``B=)(B50D"$0/MFPD$$&-30A(BT0D"$C3^*@!=11!C4T02(M$)`A( +MT_BH`0^$T0@``(!\)!`#=BM)BP0D2`6``0``0HT4[0````!(8])(`="+`(D% +M`````,'H$X/@`>LI9F:028L$)$@%@`$``$*-%.T`````2&/22`'0BP")!0`` +M``#!Z!.#X`&$P'0F3(GGZ`````!)8]5(C0122(T$@D&!C,3T$@`````(`&9F +M9I!F9I!)BQ0D@'PD$`-V)4*-!.T`````2)A(C80"@`$``(L`B04`````)0`` +M`0#K(V9F9I!"C03M`````$B82(V$`H`!``"+`(D%`````"4```$`A<!T08!\ +M)!`#=AU"C03M`````$B82(V$`H`!``#'`````0#I&0@``$*-!.T`````2)A( +MC80"@`$``,<````!`.G\!P``08!\)%$!#X6H!@``@'PD$`-V*4F+!"1(!8`! +M``!"C13M`````$ACTD@!T(L`B04`````@^`!ZR=F9F:028L$)$@%@`$``$*- +M%.T`````2&/22`'0BP")!0````"#X`&$P`^$50$``$ECQ4B-'$!(C1R82,'C +M`TF-M!SX$@``28M\)"CH`````$F+O!S0$@``2(7_=!U(BT=`2(7`=!3V0$X" +M=0[H`````(3`D`^%"@$``$ECQ4B-%$!(C12028N$U-`2``!(A<!T=4F)QH!X +M#@`/A(L```!!OP````!(C6A@2(GOZ`````!(B<-(BT4(2(E="$B)*TB)0PA( +MB1CV0TP"=2](BU-`2(72=!9)B[0D^`@``+\%````Z`````"`2TP"2(G:O@8` +M``!,B??H`````$&#QP%%.'X.=B7KH@^V="00N@$```!,B>?H`````+^@A@$` +MZ`````"Z`"TQ`>L%ND!+3`!)8\5(C0Q`2(T,B$C!X0-*C30AB9;X$@``2,>& +M"!,````````/MD0D$$B-%$!(C12028V4U,`2``!(B980$P``28VT#/@2``!) +MBWPD*.@`````9F:0@'PD$`-V/4*-%.T`````2&/228L$)$@%@`$``$@!T(L` +MB04`````28L$)$@%@`$``$@!PHL"B04`````P>@'@^`!ZSM"C13M`````$AC +MTDF+!"1(!8`!``!(`="+`(D%`````$F+!"1(!8`!``!(`<*+`HD%`````,'H +M!X/@`83`='6`?"00`W8W0HT,[0````!(8\E)BP0D2`6$`0``2`'(BP")!0`` +M``!)BQ0D2('"A`$``$@!T0T```$`B0'K/D*-#.T`````2&/)28L$)$@%A`$` +M`$@!R(L`B04`````28L4)$B!PH0!``!(`=$-```!`(D!ZR^`?"00`W8H28L$ +M)$@%@`$``$*-%.T`````2&/22`'0BP")!0````#!Z!*#X`'K)DF+!"1(!8`! +M``!"C13M`````$ACTD@!T(L`B04`````P>@2@^`!A,`/A"("``"`?"00`W8W +M0HT,[0````!(8\E)BP0D2`6``0``2`'(BP")!0`````-```$`$F+%"1(@<*` +M`0``2`'1B0'K-4*-#.T`````2&/)28L$)$@%@`$``$@!R(L`B04`````#0`` +M!`!)BQ0D2('"@`$``$@!T8D!26/%2(T40$B-%)!)BX34T!(``$B%P'0328G% +M2(-X0``/A:(```#IA`$``(!\)!`#=DI"C13M`````$ACTDF+!"1(!8`!``!( +M`="+"(D-`````$F+!"1(!8`!``!(C00"B0A)BP0D2`6``0``2`'"BP*)!0`` +M``#IT`,``$*-%.T`````2&/228L$)$@%@`$``$@!T(L(B0T`````28L$)$@% +M@`$``$B-!`*)"$F+!"1(!8`!``!(`<*+`HD%`````.F&`P``9I!(BTA`#[=! +M3@^WT/;&`0^%TP```$B)S?;"`@^$QP```(/@_6:)04Y(C;'`````28M\)"CH +M`````,9$)!``@'T[`'1WQD0D$``/MD0D$$B+7,582(7;=%1(BU-`2(72=!9) +MB[0D^`@``+\%````Z`````"`2TP"2(G:O@8```!,B>_H`````("[@P````!T +M')!,B>?H`````+\!````Z`````"`NX,`````=>6`1"00`0^V1"00.$4[=X[' +MA<````!`2TP`2,>%T`````````!(B:W8````2(VUP````$F+?"0HZ`````"` +M?"00`W8R28L$)$@%@`$```^V5"002,'B`X'B^`<``$@!T(L`B04`````P>@( +M@^`!ZS!F9I!F9I!)BP0D2`6``0``#[94)!!(P>(#@>+X!P``2`'0BP")!0`` +M``#!Z`B#X`&$P`^$%@$``(!\)!`#=BQ)BP0D2`6``0``#[94)!!(P>(#@>+X +M!P``2`'0BP")!0````"#\`&#X`'K*DF+!"1(!8`!```/ME0D$$C!X@.!XO@' +M``!(`="+`(D%`````(/P`8/@`83`#X2Q````#[9$)!!(C11`2(T4D$V-O-3` +M$@``28M'$$B%P`^$CP```$F)QDF-=SA)BWPD*.@`````08!^#@!T54&]```` +M`$F-;F!F9I!FD$B)[^@`````2(G#2(M%"$B)70A(B2M(B4,(2(D82(M30$B% +MTG0628NT)/@(``"_!0```.@`````@$M,`D&#Q0%%.&X.=[I!QT<X@(0>`$G' +M1T@`````38E_4$F-=SA)BWPD*.@`````@'PD$`,/AG\````/MEPD$$C!XP.! +MX_@'``!)BP0D2`6``0``2`'8BQ")%0````!)BP0D2`6``0``2(T$`XD028L$ +M)$@%@`$``$B-!`.+`(D%`````$F+!"1(!3`"``!(C00#QP``````OQ`G``#H +M`````$F+!"1(!30"``!(`<.+`XD%`````.M]#[9<)!!(P>,#@>/X!P``28L$ +M)$@%@`$``$@!V(L0B14`````28L$)$@%@`$``$B-!`.)$$F+!"1(!8`!``!( +MC00#BP")!0````!)BP0D2`50`@``2(T$`\<``````+\0)P``Z`````!)BP0D +M2`54`@``2`'#BP.)!0````"`1"00`0^V1"0003A$)$,/A_#V__])BP0DBY!0 +M`0``B14`````28L$)(F04`$``/?"`/__`'0FZ:7V__]F9I!FD$ECU4B-!%)( +MC02"08&,Q/02``````$`Z>CW__^X`````$B#Q"A;74%<05U!7D%?PT%7059! +M54%455-(@^QH28G]0(AT)$M`#[;&B40D3$B82(T40$B-%)!(C1373(NZT!(` +M``^VJLH2``!(BP=`@/X#=@S'@'`!``#$`0``ZPK'@'`!``"H`0``2(E$)&!( +M!70!``!(B40D4$B+5"1@BX)T`0``B04`````BTPD3(/A`[L'````T^-!B=Q! +M"<1$B:)T`0``O^@#``#H`````/?31"'C2(M,)&")F70!``"`?"1+`W95BT0D +M3,'@`DB82(V4`=`!``"+`HD%`````(/("(D"BUPD3,'C`TACVTB-A!D``@`` +MQP`X````OQ`G``#H`````$B+5"1@2(V$&@0"``#'``````#K6(M$)$S!X`)( +MF$B+3"1@2(V4`=`!``"+`HD%`````(/("(D"BUPD3,'C`TACVTB-A!D``@`` +MQP`X````OQ`G``#H`````$B+5"1@2(V$&@0"``#'``````!-A?\/A#D(``!! +M@'U#`'0LNP`````/MLM!#[9'#4C3^*@!=`^Z`0```(G.3(GOZ`````"#PP%! +M.%U#=]E!]D<*`71J3(G^3(GOZ`````"+="1,3(GOZ`````!(8T0D3$B-%$!( +MC12028U4U0"+@O`2``"I```0`'0+)?__[_^)@O`2``!,B?Y,B>_H`````$AC +M1"1,2(T40$B-%)!)QX35T!(```````#IE0<``$&`?U@`=!1)B[VX$```3(G^ +MZ`````!!@&]8`4C'P/[___\/MDPD3$C3P$`@Z(A$)%L/A,`"``"+="1,3(GO +MZ`````!(8T0D3$B-%$!(C12028U4U0"+@O`2``"I```0`'0+)?__[_^)@O`2 +M```/MD0D6T&(1PU!@'U#``^$[P$``,=$)%P`````#[;02(E4)#!(BTPD8$B! +MP0`"``!(B4PD*$B+1"1@2`4$`@``2(E$)"`/ME0D6XE4)!Q(BTPD8$B!P=`! +M``!(B4PD$$0/MG0D7$$/MNY(BT0D,(GI2-/XJ`$/A$T!``!(8\5(C11`2(T4 +MD`^V1"1;08B$U<H2``!!@/X##X:5````C1SM`````$ACVTB+1"0H2`'8QP`X +M````OQ`G``#H`````$@#7"0@BU0D'(D32(M,)&#'@7`!``#$`0``2(M4)%"+ +M`HD%`````(GI@^$#NP<```#3XT&)W$$)Q$2)(K_H`P``Z`````#WTT0AXTB+ +M3"10B1F-%*T`````2&/22`-4)!"+`HD%`````(/("(D"Z98```"-'.T````` +M2&/;2(M$)"A(`=C'`#@```"_$"<``.@`````2`-<)""+1"0<B0-(BU0D8,>" +M<`$``*@!``!(BTPD4(L!B04`````B>F#X0.[!P```-/C08G<00G$2(M$)%!$ +MB2"_Z`,``.@`````]]-!(=Q(BU0D4$2)(HT4K0````!(8])(`U0D$(L"B04` +M````@\@(B0*#1"1<`4&-1@%!.$5#=BSI@_[__TB)W^@`````2(UPR$B+4PA( +MB4,(2(D82(E0"$B)`DB#>-@`=!'K";X`````28U?2$DY7TAURDB%]G0XQD9: +M`$&`?4,`="VY`````+H`````00^V1PU(T_BH`70.#[;"B$P&<(!&6@&#P@&# +MP0%!.$U#=]VZ`````+Z!````3(G_Z`````!(8T0D3$B-%$!(C1202<>$U=`2 +M````````08!]0P`/A7L#``#IG@0``+H`````O@8```!,B?_H`````(MT)$Q, +MB>_H`````$AC1"1,2(T40$B-%)!)C535`(N"\!(``*D``!``=`LE___O_XF" +M\!(``$F-1TA).4=(#X3]`0``2(D$)$B+/"3H`````$R-<,A(C5`02#E0$`^$ +MP`$``$F-1DA(B40D"$B+?"0(Z`````!(C5CP@'M)#7472(VP4`$``$B+0U!( +MBP!(BW@HZ`````!(BQ-(BT,(2(E""$B)$("[@P````!T&TR)[^@`````OP$` +M``#H`````("[@P````!UY4B+0T!(A<`/A"D!``!(QT!@`````("[@P`````/ +MA*8```!F08-]=``/A)H```"]`````$&\`````&9FD&:03(G@20.%N`D``$B+ +M,$B%]G1D#[=&(&8[0SAU6F8]A0!W5`^WP$&`O`5H"```_W1&28M5``^W1C)F +MP>@%#[?`C02%``,``(F"<`$``$F+50`/MTXR@^$?N`$```!(T^")@G0!``#& +M1B0AN@````!,B>_H`````(/%`4F#Q`A!#[=%=#GH#X]V____]D-,!'493(GO +MZ`````!(BW-`N@$```!,B>_H`````$B+0T`/ME`"#[9P`4C'QP````"X```` +M`.@`````2(M30$F+M?@(``"_`0```.@`````2(M30$F+M?@(``"_!@```.@` +M````2,=#0`````!!@&\.`4&`;E@!2(G>3(GOZ`````!(BU0D"$DY5D@/A4G^ +M__]!@&\H`4R)]DR)[^@`````2(L,)$DY3T@/A0?^__])C4=@23E'8`^$[``` +M`+T`````28G$3(GGZ`````!(B<.`N(,`````=#>-10&!_7^6F`!V!(G%ZRB) +MQ4R)[^@`````OP$```#H`````("[@P````!T"X/%`8']@9:8`'7:2(M#0$B% +MP'1V2,=`8`````#V0TP$=1E,B>_H`````$B+<T"Z`0```$R)[^@`````2(M# +M0`^V4`(/MG`!2,?'`````+@`````Z`````!(BU-`28NU^`@``+\!````Z``` +M``!(BU-`28NU^`@``+\&````Z`````!(QT-``````$&`;PX!2(G>3(GOZ``` +M``!-.6=@#X4<____3(G^3(GOZ`````!(8T0D3$B-%$!(C1202<>$U=`2```` +M````Z7K\__]!OP`````/MD0D6TB)1"1`2(M4)&!(@<+0`0``2(E4)#A%B?Y! +M#[;O2(M$)$")Z4C3^*@!=0M$.'PD2P^%U0```$&`_@-V:$B+1"1@QX!P`0`` +MQ`$``$B+5"10BP*)!0````")Z8/A`XT,2;L'````T^-!B=Q!"<1$B2*_Z`,` +M`.@`````]]-$(>-(BTPD4(D9C12M`````$ACTD@#5"0XBP*)!0````"#R`B) +M`NMG2(M$)&#'@'`!``"H`0``2(M4)%"+`HD%`````(GI@^$#C0Q)NP<```#3 +MXT&)W$$)Q$2)(K_H`P``Z`````#WTT$AW$B+3"101(DAC12M`````$ACTD@# +M5"0XBP*)!0````"#R`B)`D&#QP%!C48!03A%0P^'^?[__TB#Q&A;74%<05U! +M7D%?PV9F9I!F9F:09F9FD$%455-)B?Q(B?4/MG=#0(3V="8/ME4-NP````#V +MP@%T#NL62(G0B=E(T_BH`74/@\,!0#CS=>SK!;L`````]D4,`G4*2(U%8$@Y +M16!U:$B)[^@`````A,!T44R)Y^@`````2(G&2(7`=$Q(BU5H2(E%:$B-16!( +MB09(B58(2(DR@$4.`4B);E#&1D@%QD9)`,:&@0````^Y`0```+H!````2(GO +MZ`````#K"P^V\TR)Y^@`````6UU!7,-F9I!FD$%6055!5%532(G]08GU1`^V +M]D*-!+4`````3&/@NP````"_$"<``.@`````08#]`W8>2(M%`$@%T`$``$P! +MX(L`B04`````P>@4@^`!ZQV02(M%`$@%T`$``$F-!`2+`(D%`````,'H%(/@ +M`83`=0J#PP%F@?LL`76H1(GV2(GOZ`````!(B>_H`````$ECQDB-%$!(C120 +M2(U$U0#V@,D2```!=`](B[#0$@``2(GOZ`````!;74%<05U!7L-FD$%6055! +M5%5308GU28G\1`^V]DECQDB-%$!(C1202(NLU]`2``!(A>T/A)8!``!(Q\#^ +M____1(GQ2-/`A$4-#X6``0``2(U%2$@Y14AU%4&]`````$B-76"`?0X`=2/I +M\P(``$`/ML9(C3Q`2(T\N$F-O/S`$@``Z`````#IU0(``$B)W^@`````2(G! +M2(M#"$B)2PA(B1E(B4$(2(D(@'E)``^%"0$```^W03A)@[S$:`0```!U"TB# +M>4``#X39````#[=!.$F+A,1H!```2(.X@``````/A*<```#&@>@`````#[91 +M2$B)T(/@!DB#^`9U+?;"`70HQD%*!<9!2P0/MI&!````2(MQ6$B+>5#H```` +M`.F8````9F9FD&9FD`^V44A(B="#X`9(@_@$=2#VP@%T&\9!2@/&04L$2(G. +M3(GGZ`````#K9V9FD&9FD`^V44A(B="#X`9(@_@&=5'VP@%U3,9!2P;&04H% +M9L>!R```````2(G.3(GGZ`````#K+DB+44!)B[0D^`@``+\$````Z`````#K +M%@^W43A)B[0D^`@``+\"````Z`````!!@\4!1#AM#@^&EP$``.F]_O__0HT$ +MM0````!(8^B[`````+\0)P``Z`````!!@/T#=AU)BP0D2`70`0``2`'HBP") +M!0````#!Z!2#X`'K&TF+!"1(!=`!``!(`>B+`(D%`````,'H%(/@`83`=0J# +MPP%F@?LL`76J1(GV3(GGZ`````!,B>?H`````$ECQDB-%$!(C12028NLU-`2 +M``!(A>T/A/T```!!@'PD0P!T++L`````#[;+#[9%#4C3^*@!=`^Z`````(G. +M3(GGZ`````"#PP%!.%PD0W?900^VQ4B-%$!(C12028V4U,`2``!(B54@2(U% +M2$@Y14AU.$B-16!(.45@=2[K>V9FD&:02(G?Z`````!(C7#(2(M3"$B)0PA( +MB1A(B5`(2(D"2(-XV`!T$>L)O@````!(C5U(2#E=2'7*2(7V=%O&1EH`08!\ +M)$,`=$^Y`````+H`````#[9%#4C3^*@!=`X/ML*(3`9P@$9:`8/"`8/!`4$X +M3"1#=B+KV_9%"@%T#4B)[DR)Y^@`````ZPV^`````$B)[^@`````6UU!7$%= +M05[#D$B#[`A,BP=$BT\T00^V<$-`A/9T8DF-@,`2``"Y`````$@Y^'4:ZT\/ +MML%(C11`2(T4D$F-E-#`$@``2#GZ=`B#P0%`./%UX(#Y`W8O28L`2`70`0`` +M2(T4C0````"!XOP#``!(`="+`(D%`````,'H%(/@`>LMN0````!)BP!(!=`! +M``!(C12-`````('B_`,``$@!T(L`B04`````P>@4@^`!A,!T$`^V\42)RDR) +MQ^@`````ZPL/MO%,B<?H`````$B#Q`C#9F9FD&9F9I!!5T%6055!5%532(/L +M"$B)\TF)_DR+IX@```!)BRPD0?9$)`P0=`3&1U$&00^V1E$\`71Y/`%R%3P$ +M#X29````/`8/A4@#``#IN@$``$'&1E$!3(GV2(GOZ`````#&0R2!08!,)`P( +M2(.[@`````!T#TB-LX````!(B>_H`````$B-E0`!``!(BX4``0``2(E8"$B) +M`TB)4PA(B9T``0``2(GOZ`````#IXP(``$&`9"0,]T&`1E(!0<9&40#&0R0" +M2(G>2(GOZ`````!(B>_H`````.FW`@``00^V1"0,@^#W@\@008A$)`Q!BY8( +M`0``C4(!08F&"`$``(/Z`@^'`P$``$B#NX``````=`](C;.`````2(GOZ``` +M``!(C94``0``2(N%``$``$B)6`A(B0-(B5,(2(F=``$``$&`?D(`=1A!OP`` +M``!-C6PD8$&`?"0.`'4>Z9X```"Z`````+X"````3(GGZ`````!FD.D;`@`` +M3(GOZ`````!(B<-)BT4(28E="$R)*TB)0PA(B1A(BU-`2(72=!5(B[7X"``` +MOP4```#H`````(!+3`)(B=J^!@```$R)Y^@`````@+N#`````'0B9F9FD&9F +MD$B)[^@`````OP$```#H`````("[@P````!UY4&#QP%%.'PD#@^'>____TR) +M]^@`````Z8D!``!!@&0D#/=!QX8(`0```````$B#NX``````=`](C;.````` +M2(GOZ`````!(C94``0``2(N%``$``$B)6`A(B0-(B5,(2(F=``$``+H````` +MO@8```!,B>?H`````$F-1"1@23E$)&!T?$F)Q4R)[^@`````2(G#2(M`0$B% +MP'132,=`8`````!(B>_H`````$B+<T"Z`0```$B)[^@`````2(M30$B+M?@( +M``"_`0```.@`````2(M30$B+M?@(``"_!@```.@`````2,=#0`````!(B=Y( +MB>_H`````$TY;"1@=8=,B?9(B>_H`````$G'1"1``````$B+10"+D%@!``") +M%0````"%TG0*2(M%`(F06`$``$'V1"0*`71K@'U#`'0LN0````!!]D0D#0%T +M%>L=9F:09F:000^V1"0-2-/XJ`%U#X/!`3A-0W?KZP6Y``````^VV8G>2(GO +MZ`````!,B>9(B>_H`````$ACVTB-!%M(C02#2,>$Q=`2````````9F:09I!( +M@\0(6UU!7$%=05Y!7\.02(/L*$B)7"0(2(EL)!!,B60D&$R);"0@2(GS2(G] +M3(MO4$V+90`/MTXRB<AFP>@%#[?P2&/&08M$A'B#X1](T_BH`0^%9P,``$F+ +M%"2-!+4``P``B8)P`0``28L$)(N0=`$``(D5`````,9#)"&+0S@E____`#WA +M`0\`=2-(B=_H`````+H`````2(G>3(GGZ`````#I%@,``&9FD&9FD(G0#[=+ +M,H/A'TC3^*@!=!!(B=_H`````$R)Y^@`````#[:%Z````#P$#X?A`@``#[;` +M_R3%`````,:%Z`````&Z`0```$B)WDR)[^@`````Z;L"``#&A>@````"N@@` +M``!(B=Y,B>_H`````.F?`@``QH7H`````TB)ZKXA````3(GOZ`````!(BW58 +M2(7V=!\/MI6!````0;@`````N0$```!,B>_H`````.E@`@``00^V=0VZ```` +M`$R)Y^@`````Z4D"``#&A>@````$2(-]6`!T,TB)ZKXA````3(GOZ``````/ +MMI6!````2(MU6$&X`````+D"````3(GOZ`````#I"`(``+H`````OB$```!, +MB>_H`````$$/MG4-N@$```!,B>?H`````.G?`0``@'U*_W052(GJO@8```!, +MB>_H`````.G$`0``2(GJO@8```!,B>_H`````$B+34!(A<ET$HM1!(U"`8E! +M!(/Z!0^&F0$``,9%2P'&14H`@+V#`````'0;3(GGZ`````"_`0```.@````` +M@+V#`````'7E2(-]6`!T&4B+51!(BT482(E""$B)$$B+15B`:%@!ZQE(BU5@ +M2(72=!`/MH6!````2,=$PE@`````2(M5`$B+10A(B4((2(D008!M#@%(B[T@ +M`0``2(7_=!$/MK4-`0``N@$```#H`````$B+?5A(A?]T$0^VM8$```"Z`0`` +M`.@`````2(M%0$B%P'1R2,=`8`````!,B>?H`````$B+=4"Z`0```$R)Y^@` +M````2(M%0`^V4`(/MG`!2,?'`````+@`````Z`````!(BU5`28NT)/@(``"_ +M`0```.@`````2(M50$F+M"3X"```OP8```#H`````$C'14``````2(GN3(GG +MZ`````!!@'T)_W1<O0````!!@'T.`'0YO0````!)C5U@9F9FD&9FD$B)W^@` +M````2(M3"$B)0PA(B1A(B5`(2(D"@'A*_W4)@\4!03AM#G?703AM#G<10<9% +M"?],B>Y,B>?H`````)!(BUPD"$B+;"003(MD)!A,BVPD($B#Q"C#9F9FD&9F +MD$%7059!54%455-(@^QH28G_2(N'B````$B)1"1@2(LH2(N%H!$``$2+,$B) +M_DB)[^@`````08!_4@%V!4'&1U$$28U?*$DY7R@/A%,!``!(B=_H`````$B) +M1"1828M'*$B+5"182(E0"$B)`DB)6@A)B5<H2(72#X0[`P``2(M,)&!(BT$@ +M#[9-00^V53H/MG4Y2(M<)%A$#[=+,D0/MD`(2,?'`````+@`````Z`````!$ +M#[=K,DUIY;`$``!,`Z5`$0``2(N=X!```$B+?"18Z`````!!BXPD)`0``$&+ +ME"0@!```2(M\)%@/MW<R18N,)"P$``!%BX0D*`0``$C'QP````"X`````.@` +M````2<'E!DP!ZXM#-(M[,$2+4RQ$BULH1(MC)$2+:R"+4QR)5"1,BTL8B4PD +M4(M3%(E4)%1$BTL01(M##(M+"(M3!(LSB40D0(E\)#A$B50D,$2)7"0H1(ED +M)"!$B6PD&(M<)$R)7"00BWPD4(E\)`B+1"14B00D2,?'`````+@`````Z``` +M``!F@WUT`'4[Z>L!``!(BU0D8$B+0B`/MDU!#[95.@^V=3E!N?___P!$#[9` +M"$C'QP````"X`````.@`````Z1$"``"[`````$R-I:@/``!,C:T``0``9F:0 +M9I`/M\-(P>`#2`.%N`D``$B+,$B%]@^$=@$```^W1B!F03E'0`^%9P$```^W +ME;H2``!!.=9T4(/"`0^WA;X2```YPK@`````#T/0C4(!2,'@`D@#A:`1``"+ +M`*D```@`=2!F)?\/9CG8=1=(.70D6'452(GOZ`````#I?`$``&9FD$0Y\G6P +M#[=&(&8]A0!F9I`/A_H````/M\"`O`5H"```_P^$Z0```$B+3"1@@'E8``^% +MV@```/9!"@$/A-````!(BU4`#[=&,F;!Z`4/M\"-!(4``P``B8)P`0``2(M% +M``^W3C*#X1^Z`0```$B)UTC3YXFX=`$```^W1C)(P>`#2`.%N`D``$C'```` +M```/MTXRB<AFP>@%)?\'``"#X1](B==(T^=(B?GWT2&,A<`)```/MTXRB<AF +MP>@%)?\'``"#X1](T^+WTB%4A7A(.70D6'0G2(L&2(M6"$B)4`A(B0)(BX4` +M`0``2(EP"$B)!DR);@A(B;4``0``#[=V,DR)Y^@`````08!O10%F9F:0@\,! +M9CE==`^'8_[__TB+1"1@]D`*`7112(M,)%A(BQ%(BT$(2(E""$B)$$B)SDR) +M_^@`````ZS%(BUPD8$B+0R`/MDU!#[95.@^V=3E!N?___P!$#[9`"$C'QP`` +M``"X`````.@`````2(/$:%M=05Q!74%>05_#9F9FD&9F9I!!5T%6055!5%53 +M2(/L*$F)^$B)5"0@3(LO#[?V2,'F`TD#M;@)``!(BRYF@7TXX0%U+@^V13J# +MZ!$\`7<C3(M_0$C'1"08`````$B%TG5I0<9'40!(QT0D&`````#K69!)BXU` +M"0``N&">`0!F@7T@A0!W'`^W12!!#[:$!6@(``!(C11`2(T4D$B)T$C!X`5( +M`<%(B4PD&$&_`````$B#?"0@`'422(M$)!C&@.@`````0;\`````@'TD@74% +M08!@#/=(@WPD(``/A0(!``#&120`]H66````(`^$0@4``$B+16A(A<`/A#4% +M``!(B</V@+$````"=!U(B[B@````2(7_=!%(BW5(2(7V=`B+533H`````$F+ +ME1`1``!(@<)`"```2(M,)!@/MD%RP>`(2)A(`<*+`HD%`````(G"P>H0B).; +M````P>@89HF#D````$F+E1`1``!(@<)$"```#[9!<L'@"$B82`'"BQ*)%0`` +M```/ML)FB8.4````#[;&9HF#E@```(G0P>@0#[;`9HF#F````,'J&(B3F@`` +M`$F+E1`1``!(@<),"```#[9!<L'@"$B82`'"BP*)!0`````/ML!FB8.2```` +MZ5$$```/MT4R2&G`L`0``$V+I4`1``!)`<1)C9PD(`0``(!])(!U!,9%)"%( +M@WPD&`!T4TB+1"082(-X0``/A8````"+?31$#[:(@0```$F+0"!$#[9`"$$/ +MMDU!00^V53I!#[9U.4B+1"0@2(E$)`B)/"1(Q\<`````N`````#H`````.L] +M387_=#A$BTTT28M`($0/MD`(00^V34%!#[95.D$/MG4Y2(M$)"!(B00D2,?' +M`````+@`````Z`````!FD(M+!(L3#[=U,D2+2PQ$BT,(2,?'`````+@````` +MZ`````!!]D0D(@%T?4R-95A,B[6`````08M4)`1!#[9T)`%(Q\<`````N``` +M``#H`````(!]6``/A/4```"[``````^VPTB-!$!(P>`"28M4)`A(`<))`T80 +MBTH(2(L2#[;S1(M("$R+`$C'QP````"X`````.@`````@\,!03@<)`^&JP`` +M`.NY08!\)"<`9F:0#XF:````#[=U,HGR9L'J!0^WT@^W]DC'QP````"X```` +M`.@`````08N-R`D``$&+E<0)``!!B[7`"0``18N%S`D``$C'QP````"X```` +M`.@`````#[=U,DC'QP````"X`````.@`````28M5``^W13)FP>@%#[?`C02% +M``,``(F"<`$``$F+50`/MTTR@^$?N`$```!(T^")@G0!``!FD&:!?3CA`748 +M#[9%.H/H$3P!=PU,B?_H`````.DB`@``#[94)"/VP@$/A/(!``"+13@E____ +M`#WA`0X`#X3?`0``28N5$!$``$B!PD`(``!(BTPD&`^V07+!X`A(F$@!PD2+ +M(D2))0````!)BY40$0``2('"1`@```^V07+!X`A(F$@!PD2+,D2)-0````!) +MBY40$0``2('"2`@```^V07+!X`A(F$@!PHL:B1T`````28N5$!$``$B!PDP( +M```/MD%RP>`(2)A(`<)$BP)$B04`````B=E$B?)$B>9(Q\<`````N`````#H +M`````/:%E@```"`/A.H```!(BWUHQH>R````$,9%)"!$B>#!Z!"(AYL```!$ +MB>#!Z!AFB8>0````B=C!X`A!#[;6`=!FB8>4````B=BP`$R)\0^VU0'09HF' +ME@```(G:P>H0P>((1(GPP>@0#[;``<)FB9>8````28N5$!$``$B!PDP(``!( +MBTPD&`^V07+!X`A(F$@!PHLRB34`````0`^V]F:)MY(````/MX^6````#[>7 +MF`````^W]D0/MX>4````2,?'`````+@`````Z`````!)BY40$0``2('"0`@` +M`$B+3"08#[9!<L'@"$B82`'"QP(`````ZUYF@7TXX0%U)`^V13J#Z!H\`7<9 +M2,?'`````+@`````Z`````#&120AZS1FD$B)[DR)[^@`````ZR5F9I"$TGD> +M28M%`(N(6`$``(D-`````(7)=`I)BT4`B8A8`0``2(/$*%M=05Q!74%>05_# +M9F9FD&9F9I!F9F:09F:02(/L"`^V1CA(.7XH=4H\"'1E/"AT83RH=%T\B&9F +M9I!T53P*=%$\*G1-/*IF9F:0=$4\BG1!2(N'``$``$B)<`A(B09(C8<``0`` +M2(E&"$B)MP`!``#K'TB+EP@!``!(B;<(`0``2(V'``$``$B)!DB)5@A(B3+H +M`````$B#Q`C#9F9FD&9F9I!F9F:09F:02(/L".@`````2(/$",-FD%-(@^Q@ +M2(G[2(U,)%U(C50D7DB-="1?#[=_/$B-1"122(E$)#A(C40D5$B)1"0P2(U$ +M)$Q(B40D*$B-1"1.2(E$)"!(C40D6$B)1"082(U$)%I(B40D$$B-1"1;2(E$ +M)`A(C40D5DB)!"1,C4PD7$R-1"10Z``````/ME0D7P^V="1>2(U\)$CH```` +M``^V1"1?2(T40$B-%)!(P>(%2(MS($B-NR`)``"Y`0```.@`````#[94)%U( +MC1322,'B!4B+<R!(C;M("0``N0$```#H``````^V5"1>2&G2R`\``$B+<R!( +MC;MP"0``N0$```#H``````^W5"182,'B`TB+<R!(C;N8"0``N0$```#H```` +M``^W1"102(T4@$B-%)!(P>(#2(MS($B-NW`*``"Y`0```.@`````#[94)%P/ +MMT0D4$@/K]!(C1122,'B`DB+<R!(C;L`"@``N0$```#H`````$B+<R!(C;LH +M"@``N0$```"Z``(``.@`````#[9,)%](BW,@2(V[8`L``+H`"```Z``````/ +MME0D6TC!X@5(BW,@2(V[P`H``+D!````Z`````!(BW,@2(V[Z`H``+D!```` +MN@`!``#H``````^V5"1:2(T4DDC!X@5(BW,@2(V[$`L``+D!````Z``````/ +MMU0D5DB-%))(P>(#2(MS($B-NS@+``"Y`0```.@`````#[=4)%A(`=)(BW,@ +M2(V[@`\``+D!````Z``````/ME0D7T@!TDB+<R!(C;NX#P``N0$```#H```` +M``^V5"1=2`'22(MS($B-N_`/``"Y`0```.@`````#[94)%Y(`=)(BW,@2(V[ +M*!```+D!````Z``````/ME,^2`'22(MS($B-NV`0``"Y`0```.@`````#[=4 +M)$Y(C1122,'B!$B+<R!(C;N8"@``N0$```#H`````(M4)$A(BW,@2(V[F!`` +M`+D!````Z``````/MU0D6$C!X@9(BW,@2(V[P!```$&X`0```+E`````Z``` +M``!(BW,@2(V[\!```$&X`0```+D``0``N@`9``#H``````^W5"182&G2L`0` +M`$B+<R!(C;L@$0``0;@!````N8````#H``````^W5"142,'B`DB+<R!(C;M0 +M$0``0;@!````N00```#H``````^W5"122,'B`DB+<R!(C;N`$0``0;@!```` +MN00```#H``````^V5"1;P>(+2(MS($B-N[`1``!!N`$```"Y"````.@````` +M2(MS($B-N^`1``!!N`$```"Y"````+H```@`Z``````/MU0D5DAITHP!``!( +MBW,@2('#$!(``$&X`0```+D(````2(G?Z`````"X`````$B#Q&!;PV9FD&:0 +M2(/L.$B)7"0(2(EL)!!,B60D&$R);"0@3(ET)"A,B7PD,$F)]TF)_4B+!TB) +M!"1,C6=(3(GGZ`````!(B<-,C7#(2(L\).@`````2(G%28M%4$F)75!-B68X +M28E&0$B)&+@!````2(7M='C&13CAQD4Y`<9%.A"`33L!28N'H````$B)16A( +MBT5P3(EX*$F-AY````!(B450QD4ES$$/MD9;9HE%($F+10!(B44HQT4TD``` +M`$R)?4A(QX6@`````````$B-?5B^`````.@`````2(GN2(L\).@`````N``` +M``!(BUPD"$B+;"003(MD)!A,BVPD($R+="0H3(M\)#!(@\0XPV9F9I!F9I!F +M9I!!5T%6055!5%532(/L&$B)_4C'1"00`````$B+1"00#[:4*.X(``"`^O\/ +MA.H````/MLI(C02)2(T$@4B-A,7(`0``2(E$)`@/MO)(8\9(C12`2(T4D("\ +MU=8!````#X2V````0;P`````2(T$B4B-!(%(P>`#3(VT!2@"``!,C2PH2&/& +M2(T4@$B-%)!,C;S5P`$``$R)]^@`````2(G#28N%,`(``$F)G3`"``!,B3-( +MB4,(2(D82(M30$B%TG052(NU^`@``+\%````Z`````"`2TP"2(G:O@(```!( +MBWPD".@`````@+N#`````'0;2(GOZ`````"_`0```.@`````@+N#`````'7E +M08/$`44X9Q8/AWO___](@T0D$`%(@WPD$`0/A>[^__](B>_H`````$B#Q!A; +M74%<05U!7D%?PV9F9I!F9I!F9I!F9I!!5T%6055!5%532(/L>$B)^\9'40#& +M1U``QD=/`,:'<10```!(C9?`$@``N`````#&!!``2(/``4@]H`$``'7P2(V# +M``$``$B)@P`!``!(B8,(`0``2(V#$`$``$B)@Q`!``!(B8,8`0``3(VC(`$` +M`$R)HR`!``!,B:,H`0``3(VK,`$``$R)JS`!``!,B:LX`0``2(V#0`$``$B) +M1"1(2(F#0`$``$B)@T@!``!(C8M0`0``2(E,)%!(B8M0`0``2(F+6`$``$R- +MLW`!``!,B;-P`0``3(FS>`$``$B-LX`!``!(B70D0$B)LX`!``!(B;.(`0`` +M3(V[8`$``$R)NV`!``!,B;MH`0``2(U,)&Y(C50D<$B-="1Q#[=[/$B-1"1R +M2(E$)#A(C40D=$B)1"0P2(U$)&1(B40D*$B-1"1J2(E$)"!(C40D=DB)1"08 +M2(U$)&Q(B40D$$B-1"1M2(E$)`A(C40D:$B)!"1,C4PD;TR-1"1FZ``````/ +MMD0D<8A#1@^V1"1PB$-'#[9$)&Z(@_T````/MT0D=F:)0W0/MT0D=&:)@[P2 +M```/MT0D<H/H`6:)@[X2```/MT0D9F:)0U(/MT,\9CV`D70*9CV`E`^%J`D` +M`,9#303&0T,$QD-.0,9#3`#&@_H````)QD-$`$B-NR`)``#H`````$B)P4B) +M@T`)```/MD0D<4B-%$!(C1202,'B!4B%TG002(G(Q@``2(/``4B#Z@%U\TB- +MNT@)``#H`````$B)P4B)@V@)```/MD0D;DB-!,!(B<)(P>(%2(72=!!(B<C& +M``!(@\`!2(/J`77S2(V[<`D``.@`````2(G!2(F#D`D```^V1"1P2&G0R`\` +M`$B%TG002(G(Q@``2(/``4B#Z@%U\TB-NY@)``#H`````$B)P4B)@[@)```/ +MMT0D=DB-%,4`````2(72=!!(B<C&``!(@\`!2(/J`77S2(V[*`H``.@````` +M2(F#2`H``$B-NP`*``#H`````$B)Q4B)@R`*``!(C;MP"@``Z`````!(B<)( +MB8.0"@``9H-\)&8`=$BY`````$B):F`/MD0D;XA"6$B+@R@!``!(B9,H`0`` +M3(DB2(E""$B)$`^V1"1O2(T$0$B-;(4`2('"J````(/!`68Y3"1F=[U(C;N8 +M"@``Z`````!(B<)(B8.X"@``9H-\)&H`="^Y`````,9"$`!(BX,X`0``2(F3 +M.`$``$R)*DB)0@A(B1!(@\(P@\$!9CE,)&IWUDB-N\`*``#H`````$B)PDB) +M@^`*``"`?"1M`'0SN0````!(BX-(`0``2(F32`$``$B+="1(2(DR2(E""$B) +M$$B#PB"#P0$/MD0D;68YR'?22(V[Z`H``.@`````2(G"2(F#"`L``$B-B``! +M``!(BX-8`0``2(F36`$``$B+="102(DR2(E""$B)$$B#PB!(.<IUVDB-NQ`+ +M``#H`````$B)PDB)@S`+``"`?"1L`'0QN0````!(BX-X`0``2(F3>`$``$R) +M,DB)0@A(B1!(@<*@````@\$!#[9$)&QF.<AWU$B-NS@+``#H`````$B)PDB) +M@U@+``!F@WPD:`!T*[D`````2(N#:`$``$B)DV@!``!,B3I(B4((2(D02(/" +M*(/!`68Y3"1H=]J`?"1Q`'1)O0````!,C:-@"P``3(GGZ``````/M]5(B833 +M@`L``$B+DX@!``!(B8.(`0``2(M,)$!(B0A(B5`(2(D"@\4!#[9$)'%F.>AW +MPTB-NX`/``#H`````$B)@Z`/``!(B8.H#P``#[=T)'9FB;.R#P``#[?V2(V[ +MJ`\``.@`````2(V[N`\``.@`````2(F#V`\``$B)@^`/```/MG0D<6:)L^H/ +M```/M_9(C;O@#P``Z`````!(C;OP#P``Z`````!(B8,0$```2(F#&!````^V +M="1N9HFS(A````^W]DB-NQ@0``#H`````$B-NR@0``#H`````$B)@T@0``!( +MB8-0$```#[9T)'!FB;-:$```#[?V2(V[4!```.@`````2(V[8!```.@````` +M2(F#@!```$B)@X@0```/MD,^9HF#DA````^V<SY(C;N($```Z`````!(C;N8 +M$```Z`````!(B<%(B8.X$```#[9$)'!(C03`2,'@!XG&@<9@5P``=!*)\DB) +MR,8``$B#P`%(@^H!=?-(BX.X$```B3!(BY.X$```#[9$)'"(0@0/ME0D<$B+ +MN[@0``#H`````$&X`````(P4@#BT`)``!(C5$@2(E1($@#@T`) +M``!(C5`@2(E0*(/&`0^V1"1Q9CGP#X=O____9L>#^```````N`````#&A!AH +M"```_TB#P`%(/88```!U[(!\)'``#X2]````O@`````/M\9(:<#(#P``2(N3 +MD`D``,9$`E@`2(N3D`D``,9$$%D`2(N3D`D``$C'1!`0`````$B)P4@#BY`) +M``!(C5$82(E1&$B)P4@#BY`)``!(C5$82(E1($B)P4@#BY`)``!(C5$H2(E1 +M*$B)P4@#BY`)``!(C5$H2(E1,$B+DY`)``!,B400"$B)P4@#BY`)``!(C5%( +M2(E12$@#@Y`)``!(C5!(2(E04(/&`0^V1"1P9CGP#X=(____QH/[````@(!\ +M)&X`#X2"````O@`````/M\9(C03`2,'@!4B+DV@)``!FQT0"3@0`2(N3:`D` +M`,9$$$(`2(N3:`D``,9$$$3_2(N3:`D``,9$$%#_2(G!2`.+:`D``$B-42A( +MB5$H2(G!2`.+:`D``$B-42A(B5$P2(N3:`D``$R)A!"(````@\8!#[9$)&YF +M.?!W@\:#_````()(C;/H$```2(V[P!```.@`````2(F#X!```$B-LQ@1``!( +MC;OP$```Z`````!(B8,0$0``2(VS2!$``$B-NR`1``#H`````$B)@T`1``!( +MC;-X$0``2(V[4!$``.@`````2(F#<!$``$B-LZ@1``!(C;N`$0``Z`````!( +MB8.@$0``2(VSV!$``$B-N[`1``#H`````$F)Q$B)@]`1``!(BZO8$0``@'PD +M;0!T4D&]`````$B+?"1(Z`````!,B6`02(EH&$B+DT@!``!(B8-(`0``2(MT +M)$A(B3!(B5`(2(D"28'$``@``$B!Q0`(``!!@\4!#[9$)&UF1#GH=[1(C;,( +M$@``2(V[X!$``.@`````28G$2(F#`!(``$B+JP@2``!!O0````!(BWPD4.@` +M````3(E@$$B):!A(BY-8`0``2(F#6`$``$B+3"102(D(2(E0"$B)`DF!Q``` +M`0!(@<4```$`08/%`69!@_T(=;A(C;,X$@``2(V[$!(``.@`````2(F#,!(` +M`$R+HS@2``!F@WPD:`!T2$B)Q4&U`$R)_^@`````2(EH$$R)8!A(BY-H`0`` +M2(F#:`$``$R).$B)4`A(B0)(@<6,`0``28'$C`$``$&#Q0%F1#EL)&AWODB# +MQ'A;74%<05U!7D%?PT%505154TB#[`A)B?U)B?1(BYZ(````#[961TB)_DB) +MW^@`````2(G%9D"1.$$&`?4,`=%FY`````/9##0%T#>M,#[9##4C3^*@! +M=0V#P0%!#[9%0V8YR'?H9H/Y`W8S28M%`$@%T`$``$B-%(T`````@>+\_P,` +M2`'0BP")!0````#!Z!2#\`&#X`'K,;D`````28M%`$@%T`$``$B-%(T````` +M@>+\_P,`2`'0BP")!0````#!Z!2#\`&#X`&$P'00#[;Q3(GOZ`````#IEP$` +M`$B-0V!(.4-@#X09`0``2(7M#X00`0``#[:%@0```$G'1,18`````$B+50!( +MBT4(2(E""$B)$$B)ZKX&````2(G?Z`````"`O8,`````=!M,B>_H`````+\! +M````Z`````"`O8,`````=>5(BT5`2(7`=$A(QT!@`````/9%3`1U"$R)[^@` +M````2(M50$F+M?@(``"_`0```.@`````2(M50$F+M?@(``"_!@```.@````` +M2,=%0`````"`:PX!2(GN3(GOZ`````!)BT4`BY!8`0``B14`````A=)T"DF+ +M10")D%@!``!!QD0D0@!F08-D)$[O08!\)#L`="JZ``````^WPDF+1,182(7` +M=`J`>$K_#X5^````@\(!00^V1"0[9CG0=]M!@'PD3@!X#[T`````08!\)#L` +M=1'K2TR)YDR)[^@`````9I#K2@^WQ4F+7,182(7;="'V0TP"=!M(BU-`28NU +M^`@``+\&````Z`````"`8TS]9I"#Q0%!#[9$)#MF.>AWQ&9!QT0D3@(`08!D +M)$G]2(/$"%M=05Q!7<-F9I!F9I!F9I!!5T%6055!5%532(/L>$F)_TB)?"10 +M2(M'4$B)1"1P2(LH2(N%H!$``$2+,$B)_DB)[^@`````08"_ZP````%V"$'& +MA^@````$28U'($C'1"1H`````$DY1R!T*4F-7R!(B=_H`````$B)1"1H28M' +M($B+5"1H2(E0"$B)`DB)6@A)B5<@28-_0`!U3+____\`2(-\)&@`=`E(BTPD +M:`^W>3)%#[:/@0```$B+="1P2(M&($0/MD`(#[9-00^V53H/MG4YB3PD2,?' +M`````+@`````Z`````!(@WPD:``/A,X#``!(BT0D:$0/MV@R36GEL`0``$P# +MI4`1``!(BYW@$```2(G'Z`````!!BXPD)`0``$&+E"0@!```2(M$)&@/MW`R +M18N,)"P$``!%BX0D*`0``$C'QP````"X`````.@`````2<'E!DP!ZXM#-(M[ +M,$2+4RQ$BULH1(MC)$2+:R"+4QR)5"1<BTL8B4PD8(MS%(ET)&1$BTL01(M# +M#(M+"(M3!(LSB40D0(E\)#A$B50D,$2)7"0H1(ED)"!$B6PD&(M$)%R)1"00 +MBT0D8(E$)`B+1"1DB00D2,?'`````+@`````Z`````!,BV0D:$F#Q%A(BU0D +M:$R+JH````!!BU0D!$$/MG0D`4C'QP````"X`````.@`````08!\)`$`=$Z[ +M`````&9F9I!F9I`/ML-(C01`2,'@`DF+5"0(2`'"20-%$(M*"$B+$@^V\T2+ +M2`A,BP!(Q\<`````N`````#H`````(/#`4$X7"0!=[YF@WUT``^$(@(``$&\ +M`````$R-K:@/``!(C8T``0``2(E,)$A!#[?$2,'@`T@#A;@)``!(BQA(A=L/ +MA-\!```/MT,@9D$Y1S@/A=`!```/MY6Z$@``03G6=&QF9F:0@\(!#[>%OA(` +M`#G"N``````/0]"-0@%(P>`"2`.%H!$``(L`J0``"`!U.&8E_P]F1#G@=2Y( +M.5PD:'4L2(M$)&@/MW`R2,?'`````+@`````Z`````!(B>_H`````.F?`0`` +M1#GR=9A(BU0D<(!Z6``/A4D!```/MT,@9CV%``^'.P$```^WP("\!6@(``#_ +M#X0J`0``2(-\)%``#X0$`0``00^V1TBH`0^$]P```*@$#X3O````2(M5``^W +M0S)FP>@%#[?`C02%``,``(F"<`$``$B+10`/MTLR@^$?N@$```!(B=9(T^:) +ML'0!```/MT,R2,'@`T@#A;@)``!(QP``````#[=+,HG(9L'H!27_!P``@^$? +M2(G62-/F2(GQ]]$AC(7`"0``#[=+,HG(9L'H!27_!P``@^$?2-/B]](A5(5X +M2#M<)&AT14B+$TB+0PA(B4((2(D02(.[@`````!T#TB-LX````!(B>_H```` +M`$B+A0`!``!(B5@(2(D#2(M$)$A(B4,(2(F=``$```^W<S),B>_H`````$&` +MKX,````!ZQI(BU0D</9""@)T#TB)WDR)_^@`````9F9FD$&#Q`%F1#EE=`^' +M]_W__TB#?"10`'0K00^V1TBH`70BJ`1T'DB+3"1H2(L12(M!"$B)0@A(B1!( +MB<Y,B?_H`````$B#Q'A;74%<05U!7D%?PY"0D)"0D)"0D)"0D)"0D$B+1U!, +MBPA!N`````!$C1060P^VA`AH"```//]T0@^VP$B-%$!(C1202,'B!4B)T$D# +M@4`)``!`.+`.`0``=2!(.;@@`0``=1=$B)`-`0``28N!0`D``(B,`@P!``!F +MD$F#P`%)@?B`````=:3SPY!(BW]8#[:'P````#Q/=S$/ML!(C01`2,'@!`'R +MB)0'R0````^VA\````!(C01`2,'@!(B,!\@```"`A\`````!\\-F9F:09F9F +MD&9FD&9FD$&X_____V:%]G1,2(GZ0;C_____OP````!F9F:09F:0#[8*C4'0 +M/`EW&T&`^/^X`````$0/1,!!#[;`C02`1(U$0=#K!D&`^/]U#(/'`4B#P@%F +M.?=UR4$/ML##9F9FD$&)T4B+1U!,BP"Y`````)!"#[:$`6@(```\_W0S#[;` +M2(T40$B-%)!(P>(%2(G020.`0`D``$@YN"`!``!U$4`XL`T!``!U"$2(B`\! +M``##2(/!`4B!^8````!UL_/#D$F)TTB+1U!,BPA,BU=80;@`````0P^VA`AH +M"```//]T1`^VP$B-%$!(C1202,'B!4D#D4`)``!(.;H@`0``=25`.+(-`0`` +M=1R$R70,2(N"&`$``$F)`^L928L#2(F"&`$``.L-28/``4F!^(````!UHDR) +MU[@`````9F:09F:0#[:7R````(#Z`79$@/H7=#]`.+?)````=3:$R7062)A( +MC01`2,'@!$F+A`+0````28D#PTB82(T$0$C!X`1)BQ-)B90"T````,-F9I!F +M9I"#P`%(@\<P@_A0=:3SPV:0059!54%455-(@^P028G^08GQ2(N_*`$```^V +M1P+!X`@/ME<#1(T$$$$/M\"#P`0]``@```^/[````$"$]G1,00^VEA`!``"^ +MX/___R'6#[9'`8/@#XG1@^$0"?`)R+X(````(=:#X/.)T8/A!`GP"<B#X@*# +MX/Q!#[:.$`$``(/A`0G0"<B(1P'K2@^V5P&^X/___R'600^VAA`!``"#X`^) +MT8/A$`GP"<B^"````"'6@^#SB=�)\`G(@^("@^#\#[9/`8/A`0G0"<A! +MB(80`0``2(U7"$$/M\!,C60'!$DYU'8_2(E4)`B[`````$$/MNE,C6PD"&9F +MD&9FD`^V\XGI3(GJ3(GWZ`````!(BT0D"$B#P`1(B40D"(/#`4PYX'+:2(/$ +M$%M=05Q!74%>PV9F9I!F9I!F9I!F9I!32(G[2(M.2`^V00+!X`@/ME$#`=`/ +MM\"-4`0/MT8T.<)_'TB+OR@!``!(8])(B<[H`````+X`````2(G?Z`````!; +MPV9F9I!F9F:09F9FD$%7059!54%455-(@^P(28GW08G42(M?6$F)WKT````` +M3(UN!`^V@\@````\`79!/!=T/40XH\D```!U-$$/ME<#2&/%2(T$0$C!X`1) +MC;P&V````(#Z(+@@````#T?0#[;23(GNZ`````!F9I!F9I"#Q0%(@\,P@_U0 +M=:A(@\0(6UU!7$%=05Y!7\-F9I!FD$B#[$A(B5PD&$B);"0@3(ED)"A,B6PD +M,$R)="0X3(E\)$!)B?Q!B=>)RTR)!"1`B'0D#TB+1U!,BS!,B??H`````$B) +MQ4B%P`^$]@```$R)]^@`````28G%2(7`=1)(B>Y,B??H`````.G6````9I!( +MC4582(E$)!!)BWT0B=I)B[0D*`$``.@`````QH68````"L9%):Q!#[=$)#AF +MB44@2(L4)$B)56A,B74HB5TT@XV4````$DF+11!(B45(3(EM>$F-A"3L```` +M2(E%4,9%,"!(QX6@`````````,9%.#O&13D"#[9$)`^(13I$B?C!Z!"(13M, +MB?H/ML:(13Q$B'T]#[9%-HA%/@^V136(13^(74#&14$`O@````!(BWPD$.@` +M````BU4T28MU&$B+?"00Z`````!(B>Y,B??H`````$B+7"082(ML)"!,BV0D +M*$R+;"0P3(MT)#A,BWPD0$B#Q$C#9F:09F:09F:02(/L2$B)7"082(EL)"!, +MB60D*$R);"0P3(ET)#A,B7PD0$F)_$&)UXE,)`A,B<-`B'0D#TB+1U!,BS!, +MB??H`````$B)Q4B%P`^$Z@```$R)]^@`````28G%2(7`=1%(B>Y,B??H```` +M`.G*````D$B-15A(B40D$,:%F`````K&126L00^W1"0X9HE%($B)76A,B74H +MQX64````"````$R);7A)BT402(E%2(M4)`B)531)C80D[````$B)15#&13`@ +M2,>%H`````````#&13@\QD4Y`@^V1"0/B$4Z1(GXP>@0B$4[3(GZ#[;&B$4\ +M1(A]/0^V13:(13X/MD4UB$4_#[9$)`B(14#&14$`O@````!(BWPD$.@````` +MBU4T28MU&$B+?"00Z`````!(B>Y,B??H`````$B+7"082(ML)"!,BV0D*$R+ +M;"0P3(MT)#A,BWPD0$B#Q$C#9F9FD$B#[#A(B5PD"$B);"003(ED)!A,B6PD +M($R)="0H3(E\)#!)B?Q(BT=03(LX2(N7*`$```^V0@+!X`@/ME(#`=`/M\!$ +MC6@$08']``@```^/S@```$R)_^@`````2(G%2(7`#X2Z````3(G_Z`````!) +MB<9(A<!U$$B)[DR)_^@`````Z9H```!(C5U82(MX$$ECU4F+M"0H`0``Z``` +M``#&126L00^W1"0X9HE%($R)?2A$B6TT@XV4````$DF+1A!(B45(3(EU>$F- +MA"3L````2(E%4,9%,"!(QX6@`````````,9%.!W&13D0QD4Z`@^V136(13M$ +MB&T\O@````!(B=_H`````(M5-$F+=AA(B=_H`````$B)[DR)_^@`````2(M< +M)`A(BVPD$$R+9"083(ML)"!,BW0D*$R+?"0P2(/$.,-F9F:09F9FD&9FD$B# +M["A(B5PD&$B);"0@2(G[B=5(QT0D$`````"`?TL!=$%(C50D$$`/MO:Y`0`` +M`.@`````2(M$)!!(A<!T)(`(@$"$[70+2(M$)!"`2`,@ZPE(BT0D$(!@`]]( +MB=_H`````$B+7"082(ML)"!(@\0HPV9F9I!F9F:09F:09F:02(/L.$B)7"0( +M2(EL)!!,B60D&$R);"0@3(ET)"A,B7PD,$F)_4&)]TB+1U!,BS!,B??H```` +M`$B)Q4B%P`^$J0```$R)]^@`````28G$2(7`=1!(B>Y,B??H`````.F)```` +M2(U=6,9%):Q!#[=%.&:)12!,B74HQX64````"````$R)97A)BT0D$$B)14C' +M130`"```28V%[````$B)15#&13`@2,>%H`````````#&13@<QD4Y`42(?3K& +M13L(QD4\`+X`````2(G?Z`````"+531)BW0D&$B)W^@`````2(GN3(GWZ``` +M``!(BUPD"$B+;"003(MD)!A,BVPD($R+="0H3(M\)#!(@\0XPY!!5T%6055! +M5%532(/L&$B)/"1(BTY(#[9!`L'@"`^V40.-/!`/M\>#P`0/MU8T.=`/CUH! +M``!,C6D(#[?'3(UT`01,B6PD"$&\`````,=$)!0`````33GU#X/9````9I`/ +MMD0D%(A$)!-!#[9%`L'@"$$/ME4#1(T\$$$/M_=(BWPD"$B#QP3H`````(G! +M//]U7D$/M\=(BUPD"$B-5`,$2(G323G6#X;/````08G,D`^V0@+!X`@/ME(# +MC2P0#[?U2(U[!.@`````//]U"$&`_/]U>>MQ03C$1`]'X`^WQ4B-5`,$2(G3 +M23G6=F#KP9")PD0HX@^VT@^V7"03B=Y(BSPDZ`````")VDR)[DB+/"3H```` +M`$$/M\=(BU0D"$R-;`($3(EL)`B#1"04`4TY[@^'*?___[X"````2(L\).@` +M````ZTE!O``````/ME0D$TR)[DB+/"3H`````$$/M\=(BUPD"$R-;`,$3(EL +M)`B#1"04`>GE_O__#[94)!-,B>Y(BSPDZ`````#KJ6:02(/$&%M=05Q!74%> +M05_#D$%7059!54%455-(@^P(28G^2(M.2`^V00+!X`@/ME$#`=`/M\"#P`0/ +MMU8T.=`/CPP!``!(C5$(#[9Q`<9$)`,`N0`````/MD("`$0D`P^V0@-(C50" +M!(/!`4`XSG/G@'PD`P`/A+X```!(C6H$0;\`````0;T`````QT0D!``````/ +MME7]00'5#[9%_#P!=`0\%W4[1(GK*--!.-UV<0^V1"0$@\`!1`^VX&9FD&:0 +M#[9-_`^V\T2)XDR)]^@`````@\,!1#CK=$;KY&9F9I!)BT98@+C!`````70S +M1(GK*--!.-UV*0^V1"0$@\`!1`^VX`^V3?P/MO-$B>),B??H`````(/#`40X +MZW7F9F:008/'`8-$)`0!2(/%!$0Z?"0##X5:____28M&6,:`P0````&^!P`` +M`$R)]^@`````2(/$"%M=05Q!74%>05_#D$B#["A(B1PD2(EL)`A,B60D$$R) +M;"083(ET)"!)B?Q(A?\/A,0```!(BT=03(LP3(GWZ`````!(B<5(A<`/A*D` +M``!,B??H`````$F)Q4B%P'402(GN3(GWZ`````#IB0```$B-75C&126L00^W +M1"0X9HE%($R)=2C'A90````(````3(EM>$F+11!(B45(QT4T``@``$F-A"3L +M````2(E%4,9%,"!(QX6@`````````,9%.!S&13D!QD4Z`L9%.PC&13P`O@`` +M``!(B=_H`````(M5-$F+=1A(B=_H`````$B)[DR)]^@`````2(L<)$B+;"0( +M3(MD)!!,BVPD&$R+="0@2(/$*,-F9F:09F:02(/L&$B)'"1(B6PD"$R)9"00 +M2(GS28G\2(MN:`^W3B!F@?F%``^'I0````^WP0^VM`=H"```0(#^_P^$D``` +M`&:#^7]W(D`/MM9(BX]`"0``2(T$4DB-!()(P>`%2(M$"%`/MD`(ZTAF@?F! +M`'<=0`^VQDB+EY`)``!(:<#(#P``2(M$$`@/MD`(ZR1`#[;&2(N7:`D``$B- +M!,!(P>`%2(N$$(@````/MD`(9F:09I`\_W0<#[;`08"\!.X(``#_=`Y`@/[_ +M=`@/MD,D/`9U,$B#>W@`=`Q(C7-X3(GGZ`````!(B=Y,B>?H`````,=%4/__ +M__](B>__54CK<V9FD(3`=3GV@Y0````(=!-(BWTPBU,T2(MS2.@`````9F:0 +MQT50`````$B+53A(A=)T!8M%((D"2(GO_U5(ZQ/'15#_____2(GO_U5(9F:0 +M9F:02(-[>`!T#$B-<WA,B>?H`````$B)WDR)Y^@`````9I!(BQPD2(ML)`A, +MBV0D$$B#Q!C#9F9FD&9FD&9FD&9FD$B#["A(B5PD"$B);"003(ED)!A,B6PD +M($B)\TF)_$0/MFXD#[=&(&8]A0!W(TB+CT`)```/M\`/MH0':`@``$B-%$!( +MC1202(G02,'@!>L,2(N/0`D``+A@G@$`2(TL`46$[74@9L>%R```````@'LX +M''41@'LZ`G4+2(G>2(GOZ`````!(@WMX`'0,2(US>$R)Y^@`````2(G>3(GG +MZ`````!!@/T&=#U(C9U@`0``28M\)"A(B=[H`````,>%8`$``("$'@!(QX5P +M`0```````$B)K7@!``!)BWPD*$B)WN@`````2(M<)`A(BVPD$$R+9"083(ML +M)"!(@\0HPY!!5T%6055!5%532(/L"$F)_T&)UDB+1U!(BRA!O`````!,C6X, +M00^VA"QH"```//]T4@^VP$B-%$!(C1202(G32,'C!4B)WT@#O4`)``!(@<?4 +M````N@@```!,B>[H`````(3`=!Y(BX5`"0``1(BT`PX!``!(BX5`"0``3(F\ +M`R`!``!)@\0!28'\@````'642(/$"%M=05Q!74%>05_#05=!5D%505154TB# +M[!A(B7PD"$B+3D@/MD$"P>`(#[91`XT\$`^WQX/`!`^W5C0YT`^/Y@```$B- +M60@/M\=(C4P!!$B)3"0028G=2#G9#X:Z````0;X`````9F:09F:01(GR#[8+ +MA,D/B(4```")R(/@#SP&=7SV0P/`=`;V0P7`=7#VP1!T.8![!`!F9F:0=&%) +MC6T(0;P`````9F9FD`^V4P-(B>Y(BWPD".@`````2(/%'$&#Q`%$.&,$=C3K +MWX![`@!T+$F-;01!O`````!$#[;Z1(GZ2(GN2(M\)`CH`````$B#Q1Q!@\0! +M1#AC`G?B#[9#`4F-7`4"28G=08/&`4@[7"00#X)2____O@$```!(BWPD".@` +M````2(/$&%M=05Q!74%>05_#9F9FD$%7059!54%455-(@^PH2(ET)`A(B7PD +M$`^V1B2(1"0G#[=.(&:!^84`#X?X`P``#[?!#[:T!V@(``"X_P```$"`_O]T +M>F:#^7]W)T`/MM9(BT0D$$B+B$`)``!(C0122(T$@DC!X`5(BT0(4`^V0`CK +M36:!^8$`=R)`#[;&2(M,)!!(BY&0"0``2&G`R`\``$B+1!`(#[9`".LD0`^V +MQDB+3"002(N1:`D``$B-!,!(P>`%2(N$$(@````/MD`(2)A(BU0D$$0/MKP" +M[@@``$N-!+])C02'2(V$PL@!``!(B40D&$B+BD`)``!`#[;&2(T40$B-%)!( +MB=!(P>`%2(TL`8!\)"<`#X6S`@``9L>%R```````2(M,)`B`>3@<#X6;`@`` +M#[9!.CP"=%H\`G<1/`$/A8<"``!F9F:09F:0ZQX\!W0O/`H/A7("``!(BW0D +M"$B)[^@`````Z6`"``!(BW0D"$B)[^@`````9F:0Z4L"``!(BW0D"$B)[^@` +M````Z3D"``!(BW0D"$B)[^@`````2(V=8`$``$B+15!(BP!(BW@H2(G>Z``` +M``#'A6`!``"`A!X`2,>%<`$```````!(B:UX`0``2(M%4$B+`$B+>"A(B=[H +M`````,9%2O]+C02_28T$ATB+5"00@+S"U@$````/A),!``!!O`````!+C02_ +M28T$ATC!X`-,C;0"*`(``$B-'!!,C:O``0``3(GWZ`````!(B<5(BX,P`@`` +M2(FK,`(``$R)=0!(B44(2(DH@'U*_P^$E@```(!]20`/A9<```!(B>Z`O>D` +M````#X17`0``#[952$B)T(/@!DB#^`9U)_;"`70B#[:5@0```$B+=5A(B>E( +MBWPD&.@`````Z24!``!F9I!FD$B#^`1U&_;"`69F9I!F9I!T#TB+?"00Z``` +M``#I_P```$B#^`8/A?4```#VP@%FD`^%Z@```$B+?"00Z`````#IVP```,:% +MZ0````!F9F:008/$`4$/MD461#C@#X<?____03C$#X6$````A,`/A'P```!! +MO`````!+C02_28T$ATC!X`-(BTPD$$R-K`$H`@``2(T<"$R-L\`!``!F9I!, +MB>_H`````$B)Q4B+@S`"``!(B:LP`@``3(EM`$B)10A(B2B`?4K_=!L/MD5) +M/")T!#P-=0^^"@```$B)[^@`````ZSM!@\0!13AF%G>Q2XT$OTF-!(=(BU0D +M$,:$PM$!``#_2(MT)!A(B=?H`````(!\)"<`#X6D````9F9FD$B+3"0(2(-Y +M>`!T$4B)SDB#QGA(BWPD$.@`````2(MT)`A(BWPD$.@`````@'PD)P!T;0^W +MA<@```"#P`%FB87(````9H/X"G8.9L>%R```````Z<7]__^^"@```$B)[^@` +M````ZSE(BT0D$$0/MKCM"0``2XT$OTF-!(=(BU0D$$B-A,+(`0``2(E$)!A( +MBXI`"0``N&">`0#IG_S__Y!(@\0H6UU!7$%=05Y!7\.02(7_=$M(A?9T1DB% +MTG1!2(7)=#QF08'XA0!W-$$/M\"`O`=H"```_W0FQD(XX<9".0'&0CH39D2) +M0B!(B7(H2(F*H````+@!````PV9F9I"X`````,-F9F:09F:09F:02(M'"(M` +M!(D%`````(G"@<H```P`)?__\_]`A/8/1<)(BU<(B0)(BU<(B4(,2(M7"(E" +M$$B+5PB)0A1(BU<(B4(82(M7"(E"!,.0D)"0D)!,BU0D($R+7"0PB?AF@?\B +M)W=?9H'_("</@Y0```!F@?]`(0^$B0```&:!_T`A9I!W(&:!_R`A='EF@?\B +M(6:0='!F@?]0!W5O9F9FD&9FD.M@9H'_1"%T66:!_T0A9I!R5F8M$"=F@_@! +M=TQF9F:0ZT!F@?^")W0Y9H'_@B=FD'<29H'_)"=T*6:!_X`G9I!U)NL>9H'_ +M@)%F9F:09F:0=!!F@?^`E'0)9H'_@')FD'4&Q@9`Q@("Q@$$#[862(M$)!B( +M$&9!QP*``&9!QP,``$'&`2!(BT0D"&;'```!#[862(M$)!"($`^V!F9!`P)F +M00,#2(M4)"AFB0)F08D`00^W$DB+1"0X9HD000^W$H/""TB+1"1`9HD0PV9F +M9I!54XGS#[=W=&:%]@^$!`$``$R+E[@)``!!NP````"]_____TF+`DB%P`^$ +MU`````^W2""X_P```$&)Z&:!^84`#X>.````#[?!1`^VC`=H"```18G(08#Y +M_W1U9H/Y?W<C00^VT4B+CT`)``!(C0122(T$@DC!X`5(BT0(4$0/MD`(ZTQF +M@?F!`'<>00^VP4B+EY`)``!(:<#(#P``2(M$$`A$#[9`".LG00^VP4B+EV@) +M``!(C03`2,'@!4B+A!"(````1`^V0`AF9F:09F:000^VP4B+CT`)``!!.-AU +M(P^WP$B-%$!(C1202,'B!0^V1`I(J`%T"Z@$=`>X`0```.L708/#`4F#P@AF +M03GS#X4.____N`````!;7<-F9I!(BT=03(L038N:X!```$4/MTITN0````!! +MN`````#K0P^W\4F+@K@)``!(BQ3P2(72="V+0C@E____`#WA`1``=!X/MT<X +M9CM"('442(GP2,'@!F9&.408"'0.9F:09I"#P0%F1#G)<K=F1#G)=!-!@\`! +M9D&#^!]W"+D`````D.OA00^WP,-F9I!F9I!F9I!(BT=02(7`=!K&`'!(BT=0 +M0(AP`DB+1U#&0`<`2(M'4(A0#//#9F9FD&9F9I!F9I#SPV9F9I!F9F:09F:0 +M9F:008GQ3(G*@>+_`0``2(N'N`D``$R+!-!-A<!T*P^VM_H```!!#[9`)8GQ +MT^`/M_A!#[?1N/__``#3X"'".=>X`````$P/1<!,B<##9F:09I"X`````,8$ +M.`!(@\`!2#T@`0``=?#&1T3_QD=0_TB-1RA(B4<H2(E',,-F9I!F9I"X```` +M`,8$.`!(@\`!2#V@`0``=?#&AX````#_QD=R_\:'@@```!](C4<@2(E'($B) +M1RC#9F9FD&9F9I!F9F:02(L&2(N7.`$``$B)AS@!``!(@<<P`0``2(DX2(E0 +M"$B)`DC'!@````##9F:09F:02(N7*`$``$B)MR@!``!(C8<@`0``2(D&2(E6 +M"$B),DB#?G``=`E(@\9PZ`````#SPV9F9I!F9F:09F9FD&9FD$B+!DB+EU@! +M``!(B8=8`0``2(''4`$``$B).$B)4`A(B0)(QP8`````PV9FD&9FD$B+!DB+ +MET@!``!(B8=(`0``2(''0`$``$B).$B)4`A(B0)(QP8`````PV9FD&9FD$B+ +MAW@!``!(B;=X`0``2(''<`$``$B)/DB)1@A(B3##2(L&2(N7B`$``$B)AX@! +M``!(@<>``0``2(DX2(E0"$B)`DC'!@````##9F:09F:02(L&2(N7:`$``$B) +MAV@!``!(@<=@`0``2(DX2(E0"$B)`DC'!@````##9F:09F:00(#_%W<10`^V +MQ_\DQ0````"X-````,.X!````&9F9I##N#P```##N!0```!F9F:0P[A````` +MP[@<````9F9FD,.X&````,.X*````&9F9I##N"````##N$P```!F9F:0PV9F +M9I!F9F:09F9FD&9FD`^V5DA(B="#X`9(@_@&=1#VP@$/A-L```!F9F:09F:0 +M@'YR_P^%R@```$B+!T2+B!@!``!$B0T`````N0````"X`0```$&)P$'3X$6% +MP74SB$YR2(L71(G`1`G(B8(8`0``2(L'BX!8`0``B04`````1(G"(<)T>$B+ +M!XF06`$``.MM@\$!@_D@=;5(BP=$BX@<`0``1(D-`````+$`9I")RK@!```` +M08G`0=/@187!=3:-0B"(1G)(BQ=$B<!$"<B)@AP!``!(BP>+@&`!``")!0`` +M``!$B<(APG032(L'B9!@`0``ZPB#P0&#^2!UL(!'1`'SPV9F9I!F9I!F9I"` +M?E#_#X7%````2(L'1(N(&`$``$2)#0````"Y`````+@!````08G`0=/@187! +M=3.(3E!(BQ=$B<!$"<B)@A@!``!(BP>+@%@!``")!0````!$B<(APG1S2(L' +MB9!8`0``ZVB#P0&#^2!UM4B+!T2+B!P!``!$B0T`````L0!FD+@!````08G` +M0=/@187!=3.(3E!(BQ=$B<!$"<B)@AP!``!(BP>+@&`!``")!0````!$B<(A +MPG032(L'B9!@`0``ZPB#P0&#^2!UM8!'1`'SPV9F9I!F9F:09F9FD&9FD$B+ +M=T!(A?9T.;D`````9I!(BT3.6$B%P'0(.)"!````=`Q(@\$!2(/Y!706Z^)F +M@7Y`A0!W#$B%P&9F9I!F9I!U!;@`````\\-F9F:09F:0055!5%532(G]28G- +MP>8(#[;2`=:`?S``#X35````2(-_4``/A,H```"+AY0```"H"4$/E,"Y```` +M`$C'QP````!!B<P/MQ3/B?`AT&8YP@^%D`````^V!,T`````/`-T!#P'=0M$ +M.`3-`````'5VD,9%)"!-8^1(Q\,`````0@^V5.,&#[;P2(GOZ`````!(BU50 +M0@^V1.,'B$(-387M=#1)BTT`2(G*2,'J($B+15")4`-(BT50@`B`]H66```` +M!'02A=)T#DB+15")2`A(BT50@"!_2(M54`^V13"#Z`>(0@?K#DB#P0%(@_D0 +M#X5.____6UU!7$%=PV9FD&9FD$B#[`A(C9=@`0``N`````!(.9=@`0``=!!( +MB=?H`````$C'0"``````2(/$",-FD$B#[`A(C9>``0``N`````!(.9>``0`` +M=`A(B=?H`````$B#Q`C#9F9FD&9FD&9FD$B#[`A(C9=P`0``N`````!(.9=P +M`0``="A(B=?H`````$B)P;H`````9F9FD&9FD,8$"@!(@\(!2('ZH````'7O +M2(/$",-F9F:09F:09F:02(/L"$B-ET`!``"X`````$@YET`!``!T"$B)U^@` +M````2(/$",-F9F:09F:09F:02(/L"$B-ES`!``"X`````$@YES`!``!T#$B) +MU^@`````QD`0`$B#Q`C#9F:09F:005=!5D%505154TB#[`A)B?]!B?7'1"0$ +M`````$&^`````$,/MH0^Z`@``#S_#X0=`0``#[;008V&@````&8]@0!W?0^W +MPDAIP,@/``!(B<-)`Y^0"0``@'M8`'13O0````!,C6-(3(GGZ`````!(C4CP +M2(M34$B)0U!,B6$02(E1&$B)`HM!2"4`__\`/0``_P!U$_9!2P1T#4B+04!( +MA<!T!$2(:`&#Q0%`.&M8=[9$B*O"````08/%`>F0````#[?"2(T$P$C!X`5( +MB<9)`[=H"0``@'X[`'0]N0`````/ML%(BU3&6$B%TG0CBT)()0#__P`]``#_ +M`'44]D)+!'0.2(M"0$B%P'0%1(AH`9"#P0$X3CMWR$2(KA0!``"`OA4!```# +M=1^#1"0$`8M$)`2#P`.#^`9V%T&#Q0''1"0$`````.L)08/%`69FD&:028/& +M`4F#_@8/A<3^__])BX?X"```3#GX=0](C;B0%```1(GNZ(?^__](@\0(6UU! +M7$%=05Y!7\-F9F:09F9FD$B#[`@/MD8(#[:T!^X(``#&A`?N"```_P^W]DB! +MQX@0``#H`````$B#Q`C#9F9FD$B+5G!(A=)T&$B+0AA(B48X2(M"($B)1D!( +MBT(H2(E&2//#9F9FD&9FD&9FD&9FD$B+5G!(A=)T'$B+1CA(B4(82(M&0$B) +M0B!(BT9(2(E"*,9"$`'SPV9FD&9FD&9FD$%455-)B?Q(BQ]F@WMT``^$S``` +M`+T`````9F:09F:0#[?52(N#N`D``$B+/-!(A?\/A)T````/MT\@9H'YA0!W +M?@^WP0^VA`-H"```//]T;V:#^7]W(0^VT$B+BT`)``!(C0122(T$@DC!X`5( +MBT0(4`^V4`CK36:!^8$`=QP/ML!(BY.0"0``2&G`R`\``$B+1!`(#[90".LJ +M#[;`2(N3:`D``$B-!,!(P>`%2(N$$(@````/ME`(ZPIF9I!FD+K_````00^V +M1"0(.<)U!>@`````@\4!9CEK=`^'/____UM=05S#9F9FD&9FD&9FD$B#[!A( +MB5PD"$B);"002(G[2(GU#[9&4#S_=!,/MO!(BS_H`````,9%4/^`:T0!2(M< +M)`A(BVPD$$B#Q!C#9I!(@^P82(E<)`A(B6PD$$B)^TB)]0^V1G(\_W03#[;P +M2(L_Z`````#&17+_@&M$`4B+7"0(2(ML)!!(@\08PV:055-(@^P(2(G]2(GS +M2#E^*`^$VP```(!^)``/A:<````/MD8X/!5T"#Q5#X67````2(M#<$B%P`^$ +MB@```$B)P8!X$`$/A7T```!F@7@8X0%U=4B+M4`)```/MT,@NF">`0!F/84` +M=Q</M\`/MH0%:`@``$B-%$!(C1202,'B!4B-!!8/MDD:@/D'=!V`^0=W!X#Y +M!G4QZQJ`^0QF9I!FD'0@@/D-=2#K$&:#8&K]9I#K%6:#2&H"ZPYF@V!J]V:0 +MZP5F@TAJ"$B#>W@`=".!>S0`"```=PY(C7-X2(GOZ`````#K#$B-<WA(B>_H +M`````&:!>SCA`0^%)P$```^W0R!F/84`#X>+````#[?`#[:$!6@(```\_P^$ +M>````$B+C4`)``"`>R0`=6L/ML!(C11`2(T4D$C!X@5(C001#[93.H#Z!W0= +M@/H'=P>`^@9U-NL?@/H,="J`^@UF9I!FD'4EZQ5F@V!J_69F9I!F9I#K%6:# +M2&H"ZPYF@V!J]V:0ZP5F@TAJ"&:!>SCA`69FD`^%C@```(![.@L/A80````/ +MMW,@#[9%1HUX_XGRZQN0@\(!9H'ZA0!W$`^WRDACP8"\!6@(``#_=0D/M\(Y +M^'S?ZTUF@?G_`'4B9F:09F:0ZSZ#Q@%F@?Z%`'<0#[?62&/"@+P%:`@``/]U +M#`^WQCG'?]^Z_P```&:)4R#&0R2`2(G>2(GOZ`````#I(@$``,9#)`!(.6LH +M="9(BT-P2(7`=!V`>!`!=0M(B=Y(B>_H`````$B-<W!(B>_H`````$B#NX`` +M````=`](C;.`````2(GOZ`````!(BWLH2(G>_Y.@````#[=3.&:!^N$!=5</ +MMD,Z@^@1/`%W3`^W0R!F/84`#X>H````#[?`#[:$!6@(```\_P^$E0````^V +MP$B-!,!(P>`%2(G&2`.U:`D``(!^10!U>H!^4/]T=$B)[^@`````ZVH/MT,@ +M9CV%`'=@#[?`#[:,!6@(``!(B[5`"0``BT,X)?___P`]X0$0`'0_@?G_```` +M=#=F@?KA`74.#[9#.H/H$3P!=B5F9I")R$B-%$!(C1202,'B!4@!UH"^@P`` +M``!U"$B)[^@`````2(/$"%M=PV9F9I!F9I!54TB#[`A(B?U(B?,/MTX@9H'Y +MA0`/AZ8````/M\$/MK0':`@``$"`_O\/A)$```!F@_E_=R)`#[;62(N/0`D` +M`$B-!%)(C02"2,'@!4B+1`A0#[9`".M(9H'Y@0!W'4`/ML9(BY>0"0``2&G` +MR`\``$B+1!`(#[9`".LD0`^VQDB+EV@)``!(C03`2,'@!4B+A!"(````#[9` +M"&9FD&:09CW_`'0;#[?`#[:\!>X(``!`@/__=`I`#[;&9CW_`'402(G>2(GO +MZ`````#I@0````^V4SL/MD,\#[9+/8#Y`70%@/D(=6!(BTMHP>`(#[;2`=`E +M_P$``$B+E;@)``!(.0S"=4(/MTDRB<IFP>H%@>+_!P``@^$?N`$```!(T^#W +MT"%$E7A(BT-H#[=P,D`/ML=(C3R`2(T\N$B-O/W(`0``Z`````!(B=Y(B>_H +M`````$B#Q`A;7<-F9F:09F:02(/L&$B)7"0(2(EL)!!(B?M(C;\@`0``O0`` +M``!(.;L@`0``=!SH`````$B)Q4B)Q^@`````2(G?Z`````!(B45P2(GH2(M< +M)`A(BVPD$$B#Q!C#9F9FD&9F9I!F9F:02(/L&$B)'"1(B6PD"$R)9"002(G] +M2(M'4$R+($R)Y^@`````2(G#2(7`='!,B>?H`````$B)PDB%P'44QH7I```` +M`4B)WDR)Y^@`````ZTS&0S@`#[=%.&:)0R#&@Y@````/3(EC*,=#-`````!( +MQT-(`````$B+0A!(B4-0QD,P)$B)4WA(QX.@`````````$B)WDR)Y^@````` +M2(L<)$B+;"0(3(MD)!!(@\08PY!(@^P82(D<)$B);"0(3(ED)!!(B?U!B?1( +MBT=02(L82(G?Z`````!(B<)(A<!T1,9`.!O&0#D!1(A@/`^W13AFB4(@QH*8 +M````#TB)6BC'0C0`````2,="2`````!(QX*@`````````$B)UDB)W^@````` +M2(L<)$B+;"0(3(MD)!!(@\08PV9F9I!F9I!F9I!(@^PX2(E<)`A(B6PD$$R) +M9"083(EL)"!,B70D*$R)?"0P28G_28GU3(LW3(GWZ`````!(B<5(A<`/A(X` +M``!,B??H`````$F)Q$B%P'412(GN3(GWZ`````#K<69F9I!(C5U8QD4XX<9% +M.0'&13H.00^W13AFB44@9D`CW28L'2(E%*,=%-``(``!)BT0D$$B)14A, +MB65X2,>%H`````````"^`````$B)W^@`````BU4T28MT)!A(B=_H`````$B) +M[DR)]^@`````2(M<)`A(BVPD$$R+9"083(ML)"!,BW0D*$R+?"0P2(/$.,-( +M@^PH2(E<)`A(B6PD$$R)9"083(EL)"!)B?2)U4B+'TB)W^@`````2(G"2(7` +M=%_&0#CAQD`Y`4"(:#K&0#L/00^W1"0X9HE"($B)6BC'0C0`````2,="2``` +M``!(QX*@`````````$B)UDB)W^@`````0(#]`74,OP4```#H`````.L*OU## +M``#H`````$B+7"0(2(ML)!!,BV0D&$R+;"0@2(/$*,-F9F:09F9FD%532(/L +M"$B)_4B)\P^W3B!F@?F%``^'IP````^WP0^VM`=H"```0(#^_P^$D@```&:# +M^7]W(D`/MM9(BX]`"0``2(T$4DB-!()(P>`%2(M$"%`/MD`(ZTAF@?F!`'<= +M0`^VQDB+EY`)``!(:<#(#P``2(M$$`@/MD`(ZR1`#[;&2(N7:`D``$B-!,!( +MP>`%2(N$$(@````/MD`(9F:09I`\_W0>#[;`#[:,!>X(``"`^?]T#D"`_O]T +M"`^V0R0\!G4^2(-[>`!T)8%[-``(``!W$$B-<WA(B>_H`````&:0ZPQ(C7-X +M2(GOZ`````!(B=Y(B>_H`````.M\9F:09I!(BY5`"0``A,!T-4`/ML9(C31` +M2(TTL$C!Y@5(C30R#[;!2(T\@$B-/+A(C;S]R`$``+H!````Z`````!F9F:0 +M2(-[>`!T)8%[-``(``!W$$B-<WA(B>_H`````.L.9I!(C7-X2(GOZ`````!( +MB=Y(B>_H`````$B#Q`A;7<-FD$B#["A(B1PD2(EL)`A,B60D$$R);"083(ET +M)"!(B?M(B?4/MTX@9H'YA0`/AQ\!```/M\$/MK0':`@``$"`_O\/A`H!``!F +M@_E_=R1`#[;62(N/0`D``$B-!%)(C02"2,'@!4B+1`A0#[9`".M%9I!F@?F! +M`'<=0`^VQDB+EY`)``!(:<#(#P``2(M$$`@/MD`(ZQ]`#[;&2(N7:`D``$B- +M!,!(P>`%2(N$$(@````/MD`(//\/A)4```!$#[;F#[;`1`^VK`/N"```08#] +M_W1_9D&!_/\`='>`?20&='%,B[-`"0``@'TZ`75)OPH```#H`````$B)[DB) +MW^@`````00^WQ$B--$!(C32P2,'F!4F--#9!#[;%2(T\@$B-/+A(C;S[R`$` +M`+H"````Z`````#K&[_T`0``Z`````!(B>Y(B=_H`````&9FD&9FD$B+'"1( +MBVPD"$R+9"003(ML)!A,BW0D($B#Q"C#9F:02(/L&$B)'"1(B6PD"$R)9"00 +M28G\2(M'4$B+*$B)[^@`````2(G#2(7`=0M!QH0DZ0````'K7\9`.!7&0"6K +M00^W1"0X9HE#($B):RA!N`$```"Y`0```$B)VDR)YDB)[^@`````A,!U%DB) +MWDB)[^@`````0<:$).D````!ZQ9(QX.@`````````$B)WDB)[^@`````2(L< +M)$B+;"0(3(MD)!!(@\08PV9F9I!F9I!(@^PH2(E<)`A(B6PD$$R)9"083(EL +M)"!(B?M(BT=03(LH3(GOZ`````!(B<5(A<!U#L:#Z0````'IM@```&:03(GO +MZ`````!)B<1(A<!U%\:#Z0````%(B>Y,B>_H`````.F-````QD4X&L9%.0C& +M13H(QD4[`,9%//_&13T`QD4EJP^W0SAFB44@3(EM*,=%-/\```#'A90````( +M````28M$)!!(B45(2`7_````2(E%4,9%,"1,B65X2,>%H`````````!(C5U8 +MO@````!(B=_H`````$F+="08NO\```!(B=_H`````$B)[DR)[^@`````2(M< +M)`A(BVPD$$R+9"083(ML)"!(@\0HPV9FD$B#[#A(B5PD"$B);"003(ED)!A, +MB6PD($R)="0H3(E\)#!)B?Q!B?9(BT=03(LH3(GOZ`````!(B<-(A<!U$4'& +MA"3I`````>FZ````9F:03(GOZ`````!(B<5(A<!U($'&A"3I`````4B)WDR) +M[^@`````Z8X```!F9F:09F:03(U[6,9#.!)%A/9T$\9#.0'&0SJ`QD,\0.L) +M9F:09I#&0SPDQD,EJT$/MT0D.&:)0R!,B6LHQT,T8````,>#E`````@```!( +MBT402(E#2$B):WA(QX.@`````````+X`````3(G_Z`````!(BW48NF````!, +MB?_H`````$B)WDR)[^@`````2(M<)`A(BVPD$$R+9"083(ML)"!,BW0D*$R+ +M?"0P2(/$.,-F9I!F9I!(@^PH2(D<)$B);"0(3(ED)!!,B6PD&$R)="0@28G\ +M2(M'4$R+,$R)]^@`````2(G%2(7`=0Y!QH0DZ0````'IL@```$R)]^@````` +M28G%2(7`=1Q!QH0DZ0````%(B>Y,B??H`````.F)````9F:02(U=6,9%.)[& +M13D0QD5%(,9%):M!#[=$)#AFB44@3(EU*,=%-"````#'A90````(````28M% +M$$B)14A,B6UX2(/`($B)15#&13`D2,>%H`````````#&A9@````/O@````!( +MB=_H`````$F+=1BZ(````$B)W^@`````2(GN3(GWZ`````!(BQPD2(ML)`A, +MBV0D$$R+;"083(MT)"!(@\0HPV9F9I!F9I!F9I!F9I!(@^PH2(D<)$B);"0( +M3(ED)!!,B6PD&$R)="0@28G\2(M'4$R+,$R)]^@`````2(G%2(7`=0Y!QH0D +MZ0````'IHP```$R)]^@`````28G%2(7`=1Q!QH0DZ0````%(B>Y,B??H```` +M`.M]9F:09F:02(U=6,9%."7&126K00^W1"0X9HE%($R)=2C'130(````QX64 +M````"````$F+11!(B45(2(/`"$B)15#&13`D3(EM>$C'A:``````````O@`` +M``!(B=_H`````$F+=1BZ"````$B)W^@`````2(GN3(GWZ`````!(BQPD2(ML +M)`A,BV0D$$R+;"083(MT)"!(@\0HPV9F9I!F9F:09F9FD$B#[#A(B5PD"$B) +M;"003(ED)!A,B6PD($R)="0H3(E\)#!)B?])B?2)5"0$2(LO3(NU0`D```^W +M1B!$#[:L!6@(``!(B>_H`````$B)PT$/MW0D,HGP9L'H!0^WP(M$A7B)\8/A +M'TC3^*@!#X7"````2(7;#X2Y````00^VQ4B-%$!(C1202,'B!4F-%!9!#[9$ +M)"4/MHWZ````T^`)\,9#..'&0SD!QD,Z#XA#.V;!Z`B(0SP/MD0D!(A#/4B+ +M@MP```!(B4,^3(EC:,9#):H/MT(X9HE#($F+!TB)0RC'0S0`````2,=#2``` +M``!(QX.@`````````$B->UB^`````.@`````2(G>2(GOZ`````!!#[=,)#*) +MRF;!Z@6!XO\'``"#X1^X`0```$C3X`E$E7A(BUPD"$B+;"003(MD)!A,BVPD +M($R+="0H3(M\)#!(@\0XPV9F9I!F9I!F9I!!5T%6055!5%532(/L"$F)_DF) +MU4&)]TB+'V:#>W0`#X0.`@``O0````!!O/____\/M]5(BX.X"0``2(LTT$B% +M]@^$WP$``$2+1CA!@>#___\`08'XX0$0``^%H0```$V%[0^%O@$```^W3B!F +M@?F%`'=Y#[?!#[:$`V@(```\_W1J9H/Y?W<A#[;02(N+0`D``$B-!%)(C02" +M2,'@!4B+1`A0#[9(".M&9H'Y@0!W'`^VP$B+DY`)``!(:<#(#P``2(M$$`@/ +MMD@(ZR,/ML!(BY-H"0``2(T$P$C!X`5(BX00B`````^V2`CK`T2)X;H````` +MZ;\```!F9F:09F:0#[=.(&:!^84`#X>A````#[?!#[:\`V@(``!`@/__#X2, +M````9H/Y?W<B0`^VUTB+BT`)``!(C0122(T$@DC!X`5(BT0(4`^V2`CK1&:! +M^8$`=QU`#[;'2(N3D`D``$AIP,@/``!(BT00"`^V2`CK($`/ML=(BY-H"0`` +M2(T$P$C!X`5(BX00B`````^V2`B00`^VQTB-%$!(C1202,'B!4@#DT`)``#K +M#V9F9I!F9I!$B>&Z`````$$X3@AU:$V%[70+00^W13AF.T8@=5A!@/\&=$-! +M@?CA`1``=#H/MDI(2(G(@^`&2(/X!G4J]L$!=26`NN@`````=1Q!@?CA`0\` +M=")$B'XDN@$```!,B??H`````.L/1(A^)`^W]4R)]^@`````@\4!9CEK=`^' +M_?W__T&`_X$/A%<!``!(BX,``0``2(VK``$``$@YQ0^$0`$``+H`````9F9F +MD&9FD(/"`4B+`$@YQ77U9H72#X0@`0``1(UB_TB)[^@`````2(G&387M="A! +M#[=%.&8[1B!T'4B+@P@!``!(B;,(`0``2(DN2(E&"$B),.G(````#[=.(&:! +M^84`=WD/M\$/MH0#:`@``#S_=&IF@_E_=R$/MM!(BXM`"0``2(T$4DB-!()( +MP>`%2(M$"%`/MD`(ZTAF@?F!`'<<#[;`2(N3D`D``$AIP,@/``!(BT00"`^V +M0`CK)0^VP$B+DV@)``!(C03`2,'@!4B+A!"(````#[9`".L%N/____]!.D8( +M=2&+1C@E____`#WA`0\`=!)$B'XD2(G?Z`````#K'&9F9I!(BX,(`0``2(FS +M"`$``$B)+DB)1@A(B3!!C40D_V9%A>1T$4@[JP`!``!T"$&)Q.GD_O__2(/$ +M"%M=05Q!74%>05_#9F9FD&9FD&9FD&9FD$B#[#A(B5PD"$B);"003(ED)!A, +MB6PD($R)="0H3(E\)#!)B?Q)B?9)B<U!B==(BR](B>_H`````$B)PTB%P'4/ +M0<:%Z0````'IBP```&:02(GOZ`````!(B<)(A<!U%4B)WDB)[^@`````0<:% +MZ0````'K9,9#..'&0SD!QD,Z$$2(>R5!#[9&6V:)0R!)BP0D2(E#*,=#-)`` +M``!(C4(02(E#2$B)4WC&0`$2QD(00$2(>`E(QX.@`````````$B->UB^```` +M`.@`````2(G>2(GOZ`````!(BUPD"$B+;"003(MD)!A,BVPD($R+="0H3(M\ +M)#!(@\0XPV9F9I!(@^PX2(E<)`A(B6PD$$R)9"083(EL)"!,B70D*$R)?"0P +M28G\28GU08G608G/2(LO2(GOZ`````!(B<-(A<`/A((```!(B>_H`````$B) +MPDB%P'1RQD,XX<9#.0'&0SH01(AS)4$/MD5;9HE#($F+!"1(B4,HQT,TD``` +M`$B-0A!(B4-(2(E3>,9``9'&0A!`1(AP"42(>`I(QX.@`````````$B->UB^ +M`````.@`````2(G>2(GOZ`````"_H(8!`.@`````2(M<)`A(BVPD$$R+9"08 +M3(ML)"!,BW0D*$R+?"0P2(/$.,-F9I!F9I!(@^PH2(D<)$B);"0(3(ED)!!, +MB6PD&$R)="0@28G\28GU08G62(LO2(GOZ`````!(B<-(A<!T=$B)[^@````` +M2(G"2(7`=&3&0SCAQD,Y`<9#.A#&0R6[00^V15MFB4,@28L$)$B)0RC'0S20 +M````2(U"$$B)0TA(B5-XQD`!$,9"$$!$B'`)2,>#H`````````!(C7M8O@`` +M``#H`````$B)WDB)[^@`````2(L<)$B+;"0(3(MD)!!,BVPD&$R+="0@2(/$ +M*,-F9F:09F:02(/L*$B)7"0(2(EL)!!,B60D&$R);"0@28G\28GU2(LO2(GO +MZ`````!(B<-(A<!T<$B)[^@`````2(G"2(7`=&#&0SCAQD,Y`<9#.A#&0R6[ +M00^V15MFB4,@28L$)$B)0RC'0S20````2(U"$$B)0TA(B5-XQD`!`,9"$$!( +MQX.@`````````$B->UB^`````.@`````2(G>2(GOZ`````!(BUPD"$B+;"00 +M3(MD)!A,BVPD($B#Q"C#9F:09F:055-(@^P(2(G]2(V?B!```$B)W^@````` +MA,`/A>````!(B=_H`````(G!N`````")QH"\*.X(``#_=0HX14QS$HA%3.L- +M@\8!2(/``4B#^`1UW4"`_@0/A*0```!`#[;&B(P%[@@```^W^4B-!+](C02' +M2(V4Q<@!``"X`````)#&!!``2(/``4@]J````'7P#[?!2(T4@$B-%)!(P>(# +M2(V,%?@!``!(C00J2(F(^`$``$B)B``"``!(C8P5$`(``$B)B!`"``!(B8@8 +M`@``2(V4%2@"``!(B9`H`@``2(F0,`(``$"(L-`!``!(C02_2(T$ATB-A,7( +M`0``ZP=FD+@`````2(/$"%M=PV9F9I!(@^P82(D<)$B);"0(3(ED)!!(B?U( +MC9_@#P``2(G?Z`````"$P`^%.0$``$B)W^@`````B<*X`````&9FD&:0B<.` +MO"AH"```_W45#[;`9CF%^````',89HF%^````.L/@\,!2(/``4@]@````'70 +M@/N`#X3L````#[;#B)0%:`@```^WPDB-%$!(C12028G42<'D!4R)YT@#O4`) +M``#H`````$B+E4`)```/ML-F08E$%#A(BX5`"0``0<9$!$H`2(N%0`D``$'& +M1`1M_TB+A4`)``!!QD0$;/](BX5`"0``0<9$!&[_2(N%0`D``$'&1`1P_TB+ +MA4`)``!!QD0$;_](BX5`"0``0<9$!''_2(N%0`D``$'&A`3J`````$B+A4`) +M``!!QH0$#P$``/](B>_H`````$B+E4`)``!)B804*`$``(!]40%U#4B+A4`) +M``!!@$P$3`%,B>!(`X5`"0``ZP6X`````$B+'"1(BVPD"$R+9"002(/$&,-F +M9I!32(G[Z$?A__](B[OX"```Z`````!;PV9FD&9FD&9FD$B#[!A(B1PD2(EL +M)`A,B60D$$B)_4B-GQ@0``!(B=_H`````(3`#X7F````2(G?Z`````")PDB) +MZ+N"____9I"`N.H(``#_=1<XG?P```!S(8B=_````.L99F9FD&9FD(/#`4B# +MP`&`^X8/A*(```#KSH#[A@^$EP````^VPXB4!6@(```/M\)(C03`28G$2<'D +M!4R)YT@#O6@)``#H`````$B+E6@)```/ML-F08E$%$"`?5$!=0](BX5H"0`` +M9D''1`1,__](BX5H"0``0<9$!$(`2(N%:`D``&9!QT0$3@``2(N%:`D``&9! +MQX0$``$``/__2(N]^`@``+X`````Z`````!,B>!(`X5H"0``ZP6X`````$B+ +M'"1(BVPD"$R+9"002(/$&,-F9I!F9I!54TB#[`A(B?T/MT9`#[:<!V@(``#& +MA`=H"```_P^W\TB-OQ@0``#H``````^WVTB-'-M(P>,%2(G>2`.U:`D``(!^ +M4/]T"$B)[^@`````2(N]^`@``+X`````Z`````!(@\0(6UW#9F:09F:09F:0 +M4TB)^P^V1EL/MK0':`@``,:$!V@(``#_#[?V2(V_4!```.@`````2(N[^`@` +M`+X`````Z`````!;PV9FD&9FD%-(B?.`?D3_=!1(C;:0````2(M_*.@````` +MQD-$_UO#4TB)\X"^@````/]T%TB-MC`!``!(BW\HZ`````#&@X````#_6\-F +M9F:09F:09F:02(/L*$B)7"0(2(EL)!!,B60D&$R);"0@2(G[28GT#[=&.$0/ +MMJP':`@``$$/M\5(C11`2(T4D$B)U4C!Y05(B>Y(`[=`"0``2('&*`$``.@` +M````00^W5"0X2(N$TV@$``!(A<!T&4B#N(``````=0](QX33:`0```````!F +M9I!!#[=$)#C&A`-H"```_T$/M_5(C;O@#P``Z`````!(B>Y(`[-`"0``@'YR +M_W0(2(G?Z`````!,B>9(B=_H`````$B+@T`)``#&1`5*`$B+@T`)``#&1`5+ +M`4B+7"0(2(ML)!!,BV0D&$R+;"0@2(/$*,-F9F:09F9FD&9FD&9FD$B#["A( +MB5PD"$B);"003(ED)!A,B6PD($F)_4B)\V:!?CCA`0^%S@````^V1CJ#Z!$\ +M`0^'OP````^W1B!F/84`#X>*`0``#[?`#[:$!V@(``!(BY=H"0``//\/A'`! +M```/ML!(C03`2,'@!4B-+`*`;44!3(UE*$R)Y^@`````2(G"2#G8=4I(B>Y, +MB>_H`````$P[92@/A#0!``#'A9``````$GH`2,>%H`````````!(B:VH```` +M2(VUD````$F+?2CH`````,9%1`#I_P```$B+12A(B5`(2(D"3(EB"$B)52A( +MBQ-(BT,(2(E""$B)$.G9````#[=#(&8]A0`/A\L````/M\!!#[:4!6@(``!) +MBXU`"0``BT,X)?___P`]X0$0``^$I0```('Z_P````^$F0```(G02(T40$B- +M%)!(P>(%2(TL$8"M@P````%,C64@3(GGZ`````!(B<)(.=AU2TB)[DR)[^@` +M````3#ME('1;QX4P`0```!)Z`$C'A4`!````````2(FM2`$``$B-M3`!``!) +MBWTHZ`````#&A8``````ZR9F9I!FD$B+12!(B5`(2(D"3(EB"$B)52!(BQ-( +MBT,(2(E""$B)$$B+7"0(2(ML)!!,BV0D&$R+;"0@2(/$*,-F9I!F9I!54TB# +M[`A(B?M(B?4/MWXRB?IFP>H%#[?WB?^X`0```$C3X(G!]]&!XO\'```A +M3)-X9H'__P]T1`^WQTC!X`-(`X.X"0``2(,X`'0P2,<``````"&,D\`)``!( +MC;NH#P``Z`````!(B>Y(B=_H`````$B)[DB)W^@`````2(/$"%M=PV9F9I!F +M9I!F9I!54TB#[`A(B?5F@7XXX0$/A:P````/MD8Z@^@1/`$/AYT````/MT8@ +MNO\```!F/84`=PL/M\`/MI0':`@``(G02(T$P$C!X`5(B<-(`Y]H"0``@'M$ +M_W5)#[:5F````(T$$H32N@@````/1,(/ML!IP$!"#P")@Y````!(QX.@```` +M`````$B)FZ@```!(C;.0````2(M_*.@`````QD-$`$B+4S!(B6LP2(U#*$B) +M10!(B54(2(DJ@$-%`>F]````#[=%(+K_````9CV%`'<+#[?`#[:4!V@(``!( +MBX]`"0``BT4X)?___P`]X0$0``^$B0```(G02(T40$B-%)!(P>(%2(T<$8"[ +M@````/]U4`^VE9@```"-!!*$TKH(````#T3"#[;`:<!`0@\`B8,P`0``2,># +M0`$```````!(B9M(`0``2(VS,`$``$B+?RCH`````,:#@`````!F9F:02(M3 +M*$B):RA(C4,@2(E%`$B)50A(B2J`@X,````!2(/$"%M=PV9F9I!F9F:09F:0 +M05=!5D%505154TB#["A)B?Y(B70D"`^W3B!F@?F%``^'!0,```^WP0^VM`=H +M"```B?!`@/[_=&MF@_E_=R)`#[;62(N/0`D``$B-!%)(C02"2,'@!4B+1`A0 +M#[9`".M#9H'Y@0!W'4`/ML9(BY>0"0``2&G`R`\``$B+1!`(#[9`".L?0`^V +MQDB+EV@)``!(C03`2,'@!4B+A!"(````#[9`"`^VP$4/MH0&[@@``$N-!(!) +MC02`28V$QL@!``!(B40D$$F+EI`)``!`#[;&2&G`R`\``$R-/`)(BT0D"$B+ +M4$@/MD(!/!)T*3R1#X42`@``2XT$@$F-!("Y`````$&`O,;6`0````^$R@$` +M`.E;`0``2XT$@$F-!(!)C03&2(N(R`$``$B)3"0@#[9*"8A,)!X/ME(:B%0D +M'[L`````@+C6`0```'1P0;P`````2XT$@$F-!(!(P>`#38VL!B@"``!*C2PP +M3(VUP`$``)!,B>_H`````$B)PTB+A3`"``!(B9TP`@``3(DK2(E#"$B)&$PY +M>UAU%P^V@X$```!(BU0D"#I")7009F:09F:008/$`44X9A9WMDB+3"0(2(MQ +M>$B%]G0*2(M\)"#H`````$B+="0(2(M\)"#H``````^V@\H```"-4`&(D\H` +M```\`W<K@'PD'P!U)$B+1"0(#[90)4B+<UA!N`````"Y`@```$B+?"00Z``` +M``#K,XU"`8B#R@```(#Z`G8E@'PD'P!U'L9#2P+&0TK_@&-,_DB)WDB+?"0@ +MZ`````#I!0$```^V3"0?#[94)!Y,B?Y(BWPD$.@`````Z>D```"]`````$N- +M!(!)C02`2,'@`TV-I`8H`@``2HT<,$R-J\`!``!,B>?H`````$B)P4B+@S`" +M``!(B8LP`@``3(DA2(E!"$B)"$PY>5AU%`^V@8$```!(BU0D"#I")70,9F:0 +M@\4!03AM%G>Z#[912$B)T(/@!DB#^`9U'/;"`7072(M$)`@/ME`E2(MQ6$B+ +M?"00Z`````!(BU0D"$B+<GA(A?9T"$R)]^@`````2(MT)`A,B??H`````.LN +M1`^VA^T)``!+C02`28T$@$B-A,?(`0``2(E$)!!(BY>0"0``N#BX#P#I?OW_ +M_TB#Q"A;74%<05U!7D%?PV9FD&9FD&9FD$%505154TB#[`A)B?U)B?1(B=/& +M0DL!QD)*`+X&````3(GGZ`````!(@WM8`'072(M3$$B+0QA(B4((2(D02(M# +M6(!H6`&`NX,`````=!R03(GOZ`````"_`0```.@`````@+N#`````'7E2(N[ +M(`$``$B%_W01#[:S#0$``+H!````Z`````!(BWM82(7_=!$/MK.!````N@$` +M``#H`````$B+:T!(A>T/A(H```!(@[V``````'5P2(.]B`````!U9O9#3`1U +M&4R)[^@`````2(MS0+H!````3(GOZ`````!(BT-`#[90`@^V<`%(Q\<````` +MN`````#H`````$B+4T!)B[7X"```OP$```#H`````$B+4T!)B[7X"```OP8` +M``#H`````$C'0T``````2,=%8`````!(BU-@2(72=!`/MH.!````2,=$PE@` +M````2(L32(M#"$B)0@A(B1!!@&PD#@%(B=Y,B>_H`````$&`?"0)_W1=08!\ +M)`X`=$2[`````$F-;"1@9F:09I!(B>_H`````$F+5"1H28E$)&A(B2A(B5`( +M2(D"@'A*_W4,@\,!03A<)`YV">O203A<)`YW$4'&1"0)_TR)YDR)[^@````` +M2(/$"%M=05Q!7<-F9F:09F9FD&9F9I!F9I!!5T%6055!5%532(/L"$F)_TF) +M]DB)U<9"2P'&0DH`O@8```!,B??H`````$B#?5@`=!=(BU402(M%&$B)0@A( +MB1!(BT58@&A8`8"]@P````!T&TR)_^@`````OP$```#H`````("]@P````!U +MY4B+O2`!``!(A?]T$0^VM0T!``"Z`0```.@`````2(M]6$B%_W01#[:U@0`` +M`+H!````Z`````!(BUU`2(7;#X01`0``]D5,!'5-3(G_Z`````!(BW5`N@$` +M``!,B?_H`````$B+14`/ME`"#[9P`4C'QP````"X`````.@`````2(M50$F+ +MM_@(``"_`0```.@`````ZRX/ME,"#[9S`4C'QP````"X`````.@`````2(M5 +M0$F+M_@(``"_`0```.@`````2(N+@````$B%R0^$-P$```^W13A)QX3':`0` +M``````!(QX.``````````$B+NY````"Z_____TB)WO_1Z08!```/MT4X2<>$ +MQV@$````````2,>#B`````````!(B[N0````_]+V14P"=!5(BU5`28NW^`@` +M`+\&````Z`````!(QT5``````$C'0V``````2(M58$B%TG00#[:%@0```$C' +M1,)8`````$B+50!(BT4(2(E""$B)$$$/ME8.@^H!08A6#DB+16!(A<!T!V:# +M>$X"=5F$TG150;P`````38UN8$R)[^@`````2(G#28M&:$F)7FA,B2M(B4,( +M2(D82(7;=!_V0TP"=!E(BU-`28NW^`@``+\&````Z`````"`8TS]08/$`44X +M9@YWM4B)[DR)_^@`````2(/$"%M=05Q!74%>05_#2(N3B````$B%T@^%ZO[_ +M_^D)____D$B#["A(B5PD"$B);"003(ED)!A,B6PD($B)^TB+1U!,BRA,B>_H +M`````$B)Q4B%P`^$U0```$R)[^@`````28G$2(7`=1K&@^D````!2(GN3(GO +MZ`````#IK@```&9FD,9%.*!(C54YN`````!F9I#&!!``2(/``4B#^`5U\L9% +M/@#&13\`QD5``,9%08C&14(`QD5#`,9%):L/MT,X9HE%($R);2C'A90````( +M````QT4TB````$F+1"002(E%2$@%B````$B)15#&13`D3(EE>$C'A:`````` +M````2(U=6+X`````2(G?Z`````!)BW0D&+J(````2(G?Z`````!(B>Y,B>_H +M`````$B+7"0(2(ML)!!,BV0D&$R+;"0@2(/$*,-F9F:09F9FD&9F9I!54TB# +M[`A(B?U(C9]0$```2(G?Z`````"$P`^%"`$``$B)W^@`````B<*Y@/___X"] +MZ`@``/]T$H"]Z0@``/\/A>,```"Y@?___SB-^P```',&B(W[````@/F"#X3' +M````#[;!B)0%:`@```^WPDAIV,@/``!(B=I(`Y60"0``N`````#&!!``2(/` +M`4@]R`\``'7P2(G:2`.5D`D``$B-0AA(B4(82(G:2`.5D`D``$B-0AA(B4(@ +M2(G:2`.5D`D``$B-0BA(B4(H2(G:2`.5D`D``$B-0BA(B4(P2(G:2`.5D`D` +M`$B-0DA(B4)(2(G:2`.5D`D``$B-0DA(B4)02(N%D`D``(A,`UM(B[WX"``` +MO@````#H`````$B)V$@#A9`)``#K!;@`````2(/$"%M=PV9F9I!F9F:09F9F +MD$%44TB#[`A)B?1(BY_@$```2(''J`\``.@`````B<$/M\!(P>`&2`'828D$ +M)+H`````Q@0"`$B#P@%(@_I`=?(/M\%(@\0(6T%<PV9FD&:02(/L"$B-EU`! +M``"X`````$@YEU`!``!T"$B)U^@`````2(/$",.0D)"0D)"0D)"00`^V]DB- +M-/9(P>8'@<9@5P``B3?#9F9FD&9F9I!F9I`/MM(/MT16>(/``6:)1%9X#[96 +M`@'0#[?`PV9FD&9FD+@!````@+^[0@```703@\`!2(''L````(/X('7H9KC_ +M__/#9F9FD&9FD&9FD&9FD$B)^;@!````0#BQN$(``'4?.)&Y0@``=1>)P$B- +M%(!(C1102,'B!,:$%PM"```!PX/``4B!P;````"#^"!UR?/#9F9FD&9F9I!F +M9F:09F:0Q@'^1`^V5P1%A-)T3DF)^$&Y`````$&[`````+@`````23FPV%D` +M`'4>03C3=15(F$B-!,!(P>`'#[:$!\17``"(`<-!@\,!08/!`8/``4F!P(`$ +M``!%.-%UQO/#9F:028GZ@/H!=!A$#[9'!+\`````183`#X1P`0``Z4$!``!! +MNP````!-A<`/A!P!```/ME<$0;L`````A-)T-$B)^$&[`````$&Y`````&9F +M9I!(.;#860``=0E!.,ET$T&#P0%!@\,!2`6`!```03C3==]!#[;[2&//2(T, +MR4C!X0=)C90*8%<``$B+`DF)`$B+0@A)B4`(2(M"$$F)0!!(BT(828E`&$B+ +M0B!)B4`@2(M"*$F)0"A(BT(P28E`,$B+0CA)B4`X2(M"0$F)0$!(BT)(28E` +M2$B+0E!)B4!02(M"6$F)0%B+0F!!B4!@08"\"F!7````=%.^`````$ACQTB- +M!,!(C3S%`````$Z-#!%`#[;&2(G"2,'B!$F-3!!@2(T$!TC!X`1)C90"X%D` +M`$B+`DB)001(BT((2(E!#(/&`4$XL6!7``!WQ4$/ML-(C03`2,'@!T$/MH0" +M8%<``,-,B=*Y`````+\`````9I!(.;+860``#Y3``<>#P0%(@<*`!```1#C! +M=>5`#[;'PT%505154TB)\TF)U4V)S$&)R42)Q4F)^+X`````9F:0B?%(.5\@ +M#X6%````2&/&2&G`4!```$V-5``@0;L`````1(G:00^V0BR$P'0$//!U3TAC +MTDACR4B)T$C!X`5(:<E0$```2`'(3`'`2(E8,$R):#A(P>(%2(U4"B!*C00" +M2(U((&:):0)$B$@@28L$)$F)1!`DQD$,_^L69F:09I!!@\,!28/"($&!^X(` +M``!UD(/&`4B!QU`0``"#_@0/A5S___];74%<05W#9F:09I!!54%455-(@^P( +M28GU2(G]@'\$`'1&0;P`````9F9FD$$/MMQ(8\-(C03`2,'@!X"\!<17``#] +M=!E(C;P%O%<``+H(````3(GNZ`````"$P'4/08/$`40X901WQ+O_````B=A( +M@\0(6UU!7$%=PV:04TB)^^@`````N@D````\_W03#[;`2(T$P$C!X`</MI0# +M9E<``(G06\-F9F:09F:02(/L"$F)\DF)T42)PDB)_DR-AV!!``"X`````&9F +M9I!"Q@0``$B#P`%(/9````!U[\:&84$``!/&AF!!``!`#[;&B(9F00``B)9G +M00``B(YI00``2,>&`$(```````!(B;[X00``28M!7$B)AO!!``!(@<9@00`` +M3(G7Z`````!(@\0(PV9F9I!F9F:09F:0055!5%532(/L"$F)]4F)U$R)S4&) +MR42)PTB)^$F)^KH!````08G308G0@+B[0@```0^%[@```$ACTDB-!))(C01" +M2,'@!$P!T$B-D`!"``#&0@L`3(F0^$$```^V2@I(8\%(C12`2(T44$C!X@1) +MC9028$$``+@`````9F:09I#&!!``2(/``4@]D````'7P2&/!2(TT@$B--'!( +MP>8$2HT4%DB-BF!!``#&00&0QH)@00``0`^VQXA!!HB:9T$``$2(20E(BT4` +M28F$,G!!``!)8\!(C12`2(T44$C!X@1*C0022,>``$(```````!(B;CX00`` +M28M$)%Q)B802\$$``$$/ML-(C12`2(T44$C!X@1)C;028$$``$R)[^@````` +MZQ>#P@%(!;````"#^B`/A>W^__^X`0```$B#Q`A;74%<05W#9F:09F:09F:0 +M2(/L"$F)\T&)TDB)^DF)^+@!````B<:`NKM"```!#X7A````2)A(C12`2(T4 +M4$C!X@1)C800`$(``$2(4`B(2`G&0`L`1`^V2`I)8\%(C12`2(T44$C!X@1) +MC9008$$``+@`````Q@00`$B#P`%(/9````!U\$ECT4B-!))(C01"2,'@!$P! +MP$B-D&!!``#&0@$0QH!@00``0(A*"4ACQDB-#(!(C0Q(2,'A!$$/MH0("D(` +M`$B-%(!(C1102,'B!$J-!`)(QX``0@```````$B)N/A!``!!#[;"2(T$P$C! +MX`=)BX0`O%<``$F)A`CP00``28VT$&!!``!,B=_H`````.L5@\`!2('"L``` +M`(/X(`^%_?[__[`!2(/$",.02(/L"$F)\8G02(G^QH<+0@```$R-AV!!``"Y +M`````)!"Q@0!`$B#P0%(@?F0````=>[&AF%!```!QH9@00``0$C'A@!"```` +M````2(F^^$$```^VP$B-!,!(P>`'2(N$!KQ7``!(B8;P00``2('&8$$``$R) +MS^@`````2(/$",-(@^P(28GQB=!(B?[&APM"````3(V'8$$``+D`````D$+& +M!`$`2(/!`4B!^9````!U[L:&84$```#&AF!!``!`2,>&`$(```````!(B;[X +M00``#[;`2(T$P$C!X`=(BX0&O%<``$B)AO!!``!(@<9@00``3(G/Z`````!( +M@\0(PT%7059!54%455-(@^PX2(E\)!A(B70D$$&)U42(1"0/28G\10^V]4EC +MQDB-!,!(P>`'@+P'Q%<``/T/A,8(``"`^1`/A(4"``"`^1!W%X3)#X2=```` +M@/D!#X6G"```D.D&`0``@/GB=!N`^?]F9I!T*8#YD`^%BP@``&9FD&:0Z<@& +M``"Y`````(!_!`!FD`^%W`<``.D$"```26/&2(T$P$C!X`?&A`?$5P``_X"_ +M"T(```%U)42)\DB+="002(M\)!CH`````(7`#X4U"```08!$)`8!Z2H(``!) +M8\;&1`<'`4B+5"002(E4QQ#I$P@``("_"T(```%U6$B-CV!!``!)8\9(C03` +M2,'@!T@!^`^V40F(D&)7``!(!<!7```/ME$*@^(!B%`%QD`$`$2)\DB+="00 +M2(M\)!CH`````(7`#X6]!P``08!$)`8!Z;('``!)8\;&1`<'`4B+3"002(E, +MQQ#IFP<``$ECQDB-!,!(P>`'2(TT.`^VEY)!``"(EK)7```/MY>000``9HF4 +M![!7``!(BY>(00``2(F4!Z!7``!(BY=L00``2(F4!W!7``!(C8P'@%<``$B+ +MEW1!``!(B1%(BY=\00``2(E1"(N7A$$``(F4!YA7``#&AL17```!@'\&'P^$ +M%P<``+L`````2(VN8%<``$R-KK!7``#K20^VRT2)\DB+="002(M\)!CH```` +M`(7`=!5)8\9(C03`2,'@!T&(G`2S5P``ZR"#PP%!@$0D!@$X70(/1<-!B$4# +M08!\)`8?=`4Z70)RLD'&A"0+0@```4$/MG0D!$"$]@^$G`8``+H`````08!\ +M)`<!=!?K0V9F9I!F9I`/MM%(8\)!@'P$!P%U,TACPD'&1`0'_TF+=,000;D` +M````0;@`````N?\```!(BWPD&.@`````Z4H&``"Y`````(/!`4`X\76WZ3@& +M``!-B<])C4$82(E$)"!(C70D,$F+01A(B40D,$ECQDB-!,!(P>`'2(TL.$B- +MA<!7``#&0`000?9!#'`/A$(#``!(BY7(5P``2(72='$/ME@&2(UZ7+H(```` +MZ`````"$P'5;0?9'#P]T5$B+A<A7``!(A<!T2$B)Q8!]90!T/P^VVXG:2(GN +M3(GGZ`````!,BTPD($0/M\")V4B)ZDB+="002(M\)!CH``````^V769(BT5H +M2(7`=`5(B<7KNT$/MD\/]L$-#X3K````26/&2(T4P$B)T$C!X`=!#[:T!&!7 +M``!`@/X?#X?*````]L$(=!=`#[;&2(T$T$C!X`1!QH0$X%D```;K'$`/MM9) +M8\9(C03`2(T$PDC!X`1!QH0$X%D```=`#[;&26/V2(TT]DB-%/!(P>($28V\ +M%.!9``#&1P$`00^V1P^(1P-(BT0D,$F)A!3H60``00^V1PF(1P)!#[97#8/B +M#TC!Y@=,`>9(C8Y@5P``#[9!!CC"#T?0@^(/#[9'!(/@\`G0B$<$00^V5RF# +MX@\/MDD&.,H/1]'!X@2#X`\)T(A'!("&8%<```'IS`$``/;!`@^$PP$``$B- +M="0P3(GGZ`````")P3S_#X5B`0``00^V3"0$A,ET/4$/MH0DQ%<``#S_=#"Z +M`````#S]=1[K)0^VPDB-!,!(P>`'00^VA`3$5P``//]T$CS]=`Z#P@$XRG7= +MZP6Z``````^VPDB-!,!(P>`'28V,!&!7``"X`````,8$"`!(@\`!2(/X9'7R +M1`^VTDECTDB-%-)(P>('2HT\(D$/ML5(C03`2,'@!TF-A`1@5P``2(F'R%<` +M`$V-A!2P5P``26/62(T4TDC!X@=)BX04O%<``$F)0`1(BTPD$$B)C]A9``!, +M`>)(BX+05P``2(F'T%<``$R-C\!7``!!QD$$_TB-MV!7```/MDX'00^V1PF( +MA`]H5P``@$8'`4$/MD<-@^`/#[:29E<``#C0#T?"B$8&2(M$)#!)B4`,00^V +M1P^(1@,/MD0D#T&(009!#[9$)`5!.D0D!'4&0<9$)`4`08!$)`4!26/"0<9$ +M!`<!2(M4)!!)B53$$.M*26/&2(T$P$C!X`</MM%(C1322,'B!TF-E!1@5P`` +M23F4!,A7``!T(@^VP4B-!,!(P>`'3`'@#[9R!T$/MD\)B(PP:%<``(!"!P%! +M#[97"42)]DR)Y^@`````26/&2(T$P$C!X`=!@+P$LU<````/A*````!!@'PD +M!A]U8^F``@``0<9'!!`/MDL#1(GR2(MT)!!(BWPD&.@`````A<`/A5T"``!! +M@$0D!@$/MDL##[;!@\`!#[95`CG0=0_&0P,`Z3P"``!F9I!F9I"-00&(0P-! +M@'PD!A\/A"0"``#K(TECQDB-!,!(P>`'3`'@2(V8L%<``$B-J&!7``!,C;C` +M5P``#[9#`SI%`@^"<O___^GM`0``08!\)`8`#X7A`0``0;D`````0;@````` +MN9````!$B?)(BW0D$$B+?"08Z`````#IN0$``$F)_4&_`````$B+3"0023E- +M(`^%@P```$2)^$AIP%`0``!)C5P$(+T`````1(GX2&G`4!```$B)!"2`>RS_ +M=4I!@'PD!A\/A&T!``")Z$C!X`5(BQ0D2(U$$$`/MDL@2(M3&$V-3`0$1`^W +M0R)(BW0D$$B+?"08Z`````"%P'4*08!$)`8!QD,L\$B#Q0%(@\,@2(']@@`` +M`'6?28/'`4F!Q5`0``!)@_\$#X59____08!\)`8`#X7]````00^V="0$0(3V +M#X3+````N@````!!@'PD!P%T$.L\#[;12&/"08!\!`<!=3-(8\)!QD0$!_]) +MBW3$$$&Y`````$&X`````+G_````2(M\)!CH`````.FC````N0````"#P0%` +M./%UM^MQ#[;!2(T$P$C!X`=)C90$P%<```^V0@0\_70(//]T!,9"!/Z#P0%! +M.$PD!'?326/&2(T$P$C!X`=)BZP$T%<``+L`````0H!\(R@!=1)"QD0C*`!* +MBW0C($B+?"08_]5(@<-0$```2('[0$$``'0EZ]1!N0````!!N`````"YX@`` +M`$2)\DB+="002(M\)!CH`````$B#Q#A;74%<05U!7D%?PV9F9I!F9F:09F:0 +M2(/L&$B)'"1(B6PD"$R)9"0028G\2(GU2(N>F````(^+H`````QH`+0@```8B0"D(` +M`(/"`4@%L````(/Z('7E\\-F9I!(B?F`?P0`#X29````OP````!$#[;'26/` +M2(T$P$C!X`=(.;0!V%D``'5NN`````!`.+P(N$(``'4(QH0(NT(```%(!;`` +M``!(/5`5``!UX$ECP$B-!,!(P>`'2,>$`=A9````````2(V4`6!7``"X```` +M`,8$$`!(@\`!2(/X9'7R26/`2(T$P$C!X`?&A`'$5P``_8!I!0&#QP%`.'D$ +M#X=L____2(G/0;@`````2#EW('4P2,='(`````#&1R@`26/`2&G`4!```$B- +M1`$@N@````#&0"P`@\(!2(/`((#Z@G7P08/``4B!QU`0``!!@_@$=;GSPV9F +M9I!F9F:0055!5%532(/L"$B)_4B)]TF)U$V)Q4&)R$B)ZP^V104Z101U!,9% +M!0!$#[9;!4B)WDF)V;@`````08G"B<))BTD@2#GY=4M(F$AIP%`0``#&1`,H +M`0^V2P1!NP````"$R71D0;L`````2#F^V%D``'4.#[:&Q%<``(/``SP!=D=! +M@\,!2('&@`0``$$XRW0WZ]=(A<EU&4ACPDAIP%`0``!(`=A(B7@@QD`H`>L9 +M9I!!@\(!@\`!28'!4!```(/X!`^%<O___T$/ML)(:<!0$```2(U$`S"Y```` +M`&9F9I#&!`$`2(/!`4B!^0(0``!U[T4/MM-)8\)(B7S#$$$/ML-(C03`2,'@ +M!TB-A`-@5P``9KD``,8$`0!(@\$!2(/Y9'7R26/"2(T$P$C!X`=(C8P#V%<` +M`+@`````9F:09I#&!`@`2(/``4@]``(``'7P26/"2(T$P$C!X`=(C0P82(FY +MV%D``$R)J=!7``#&@<17``#_2,>!R%<```````!)BQ0D2(F4`[Q7``!$B(%F +M5P``0;D`````0;@`````N?\```!$B=)(B?Y(B>_H`````(!#!0%(@\0(6UU! +M7$%=PTB+!TR+``^V<$-`A/9T1P^V5PVY`````/;"`70-ZS>02(G02-/XJ`%U +M"(/!`4`X\77N@/D#=B1(C02-`````"7\`P``28V$`-`!``"+`(D%`````.LB +MN0````!(C02-`````"7\`P``28V$`-`!``"+`(D%`````,'H%(/@`<.02(L' +M1`^V0$-!N0H```!%A,!T2@^V?PU(B<*^`````$&Y"@```+D`````9F:09F:0 +M2(GX2-/XJ`%T%`^V@O(2``"#X`.#P`A!.,%$#T?(@\8!@\$!2(/":$0XQG73 +M00^VP<-F9F:09F9FD&9FD&9FD$B+!T0/MD!#0;D(````183`=$H/MG\-2(G" +MO@````!!N0@```"Y`````&9FD&9FD$B)^$C3^*@!=!0/MH+R$@``@^`#@\`( +M03C!1`]"R(/&`8/!`4B#PFA$.,9UTT$/ML'#9F9FD&9F9I!F9I!F9I`/M@?` +MZ`2#X`</MG<"B<*`S@)`]L8$#T7"#[9/`XG"@<H```(`]L$$#T7"B<*`S@A` +M]L8(#T7"B<*!R@``"`#VP0@/1<*)PH#.!$#VQ@(/1<*)PH'*```$`/;!`@]% +MP@^V5Q3!XA@)T,-F9F:09F:0Z`````#SPV9FD&9FD&9FD(N'&`D``"7___\` +MN@`````]4`&3`'49#[:'&PD``,#H!#P,#Y3`#[;09F9FD&9FD(G0PV9F9I!F +M9I!F9I!F9I"%]GY"#[8'A,!T!#P@=3%(B?JY`````.L79F9FD&9FD`^V0@%( +M@\(!A,!T!#P@=1"#P0$Y\77IZPUF9F:09F:0N`````##N`$```!F9I!FD,-F +M9F:09F9FD&9F9I!F9I`/MD<##[97`L'B"`G0P>`0#[9/`0^V%\'B"`G1"<C# +MD$&)T(72="6Y`````&9F9I`/MA</MD<!B`:(5@%(@\8"2(/'`H/!`40YP77D +M\\-FD$B#[`A)B?`/MT8@NO\```!F/84`=PL/M\`/MI0':`@```^WTDB-%-)( +MP>(%2`.7:`D``$B+MQ`1```/MD)0P>`(2)A(C80&3`@``(L(B0T`````@>'_ +M````#[9"4,'@"$B82(VT!D0(``"+!HD%`````,'@"`G(B8(0`0``9L>"#`$` +M````3(G&Z`````!(@\0(PV9F9I!F9I!F9I!F9I!(@^PH2(E<)`A(B6PD$$R) +M9"083(EL)"!)B?U!B?1(BR]`@/X#=CE*C1SE`````('C^`<``$B-A!TP`@`` +MQP`,````OQ`G``#H`````$B-A!TT`@``BSB)/0````#K-Y!*C1SE`````('C +M^`<``$B-A"M0`@``QP`,````OQ`G``#H`````$B-G"M4`@``BSN)/0````!! +M#[;T2&/&2(T40$B-%)!)C935P!(```^V2@F#X?R(2@F)^"4``#\`/0``$`!U +M"XG(@\@"B$()ZQF02&/&2(T40$B-%)")R(/(`4&(A-7)$@``2(M<)`A(BVPD +M$$R+9"083(ML)"!(@\0HPV9F9I!F9F:09F9FD&9FD$%7059!54%455-(@^P8 +M28G^3(L_28L'QD9)`,9&2`7&1DL&2(E^4+D`````O0````!(C9```@``2(E4 +M)!!(!00"``!(B40D".L69F:09F:000^V1@U(T_BH`74*@\$!D$$Z3T-RZH#Y +M`W9Z2(T<S0````"!X_@'``!,BVPD$$D!W4''10`L````OQ`G``#H`````$@# +M7"0(1(LC1(DE`````$''10`D````OQ`G``#H`````(L#B04`````P>`(08'D +M_P```$$)Q$''10`@````OQ`G``#H`````(L;B1T`````ZWA(C1S-`````('C +M^`<``$R+;"0020'=0<=%`"P```"_$"<``.@`````2`-<)`A$BR-$B24````` +M0<=%`"0```"_$"<``.@`````BP.)!0````#!X`A!@>3_````00G$0<=%`"`` +M``"_$"<``.@`````BQN)'0````!!@?P!`6F6=1I!@$X,!HG8P>@0/%`/E,`/ +MML#K2&9FD&9FD$&!_`$!``!U#XG8P>@0/%`/E,`/ML#K*K^($P``Z`````"# +MQ0%`@/T$=PJY`````.FK_O__B=C!Z!`\4`^4P`^VP$B#Q!A;74%<05U!7D%? +MPV9F9I!F9F:09F9FD&9FD$%505154TB#[`A(B?U!B?1(BX>(````3(LH9H._ +M#`$```!T,(GSO^@#``#H`````$6%Y'0%@_L!=AI,B>]F9I#H`````&:#O0P! +M````=`6#ZP+KTDB#Q`A;74%<05W#D$B#[#A(B5PD"$B);"003(ED)!A,B6PD +M($R)="0H3(E\)#!)B?R)RT&)]D&)U46)QTB+AX@```!(BRA(B>_H`````$B) +MQL9`..'&0#D!QD`Z$K@/````183V=09!#[9$)$>(1CM$B&X\3(GJ#[;&B$8] +M#[;'B$8^B=C!Z!"(1C^)V,'H&(A&0(A>04$/MT0D0&:)1B!(B6XHQT8T```` +M`$C'1D@`````183_2,?``````$C'P@````!(#T7"2(F&H````$B)[^@````` +M2(M<)`A(BVPD$$R+9"083(ML)"!,BW0D*$R+?"0P2(/$.,-FD$B#["A(B1PD +M2(EL)`A,B60D$$R);"083(ET)"!)B?R)RT&)]D&)U4B+AX@```!(BRA(B>_H +M`````$B)QL9`..'&0#D!QD`Z$K@/````183V=09!#[9$)$>(1CM$B&X\3(GJ +M#[;&B$8]#[;'B$8^B=C!Z!"(1C^)V,'H&(A&0(A>04$/MT0D0&:)1B!(B6XH +MQT8T`````$C'1D@`````2,>&H`````````!(B>_H`````$B+'"1(BVPD"$R+ +M9"003(ML)!A,BW0D($B#Q"C#9I!32(G[08G*08G12(7_#X0!`0``3(L'387` +M#X3U````00^V>$.%_WY72(N#B`````^V4`VY`````/;"`70-ZT"02(G02-/X +MJ`%U!X/!`3GY=>^#^0-^+DF+`$@%T`$``(T4C0````!(8])(`="+`(D%```` +M`,'H%(/P`8/@`>LLN0````!)BP!(!=`!``"-%(T`````2&/22`'0BP")!0`` +M``#!Z!2#\`&#X`&$P'5E@+L<`0```'4&@'M"`'56#[=#0$&`O`!H"```_W1' +MQD-")6;'@PP!```!`$$/M]%`#[;V0;@!````1(G12(G?Z`````"^!0```$B) +MW^@`````QD-"`&:#NPP!````#Y3`#[;`ZP6X`````%O#9F:09I!(@^PH2(E< +M)`A(B6PD$$R)9"083(EL)"!(B?U!B?5!B=1(BX>(````2(L82(G?Z`````!( +MB<;&0#CAQD`Y`<9`.A&X#P```$6$[74$#[9%1XA&.T2(9CQ,B>(/ML:(1CT/ +MMT5`9HE&($B)7BC'1C0`````2,=&2`````!(QX:@`````````$B)W^@````` +M2(M<)`A(BVPD$$R+9"083(ML)"!(@\0HPV9FD&9FD&9FD%532(/L"$B)^TB) +MS4&)T4B%_P^$!@$``$R+!TV%P`^$^@```$$/MGA#A?]^5DB+@X@````/ME`- +MN0````#VP@%T#.L_2(G02-/XJ`%U!X/!`3G/=>^#^0-^+DF+`$@%T`$``(T4 +MC0````!(8])(`="+`(D%`````,'H%(/P`8/@`>LLN0````!)BP!(!=`!``"- +M%(T`````2&/22`'0BP")!0````#!Z!2#\`&#X`&$P'5K@+L<`0```'4&@'M" +M`'5<#[=#0$&`O`!H"```_W1-QD-")6;'@PP!```!`$$/M]%`#[;VN0$```!( +MB=_H`````+X%````2(G?Z`````#&0T(`9H.[#`$```!U$(N#$`$``(E%`+@! +M````ZP6X`````$B#Q`A;7<-F9I!F9I!(@^PH2(D<)$B);"0(3(ED)!!,B6PD +M&$R)="0@2(G]08GU08G408G.2(N'B````$B+&$B)W^@`````2(G&QD`XX<9` +M.0'&0#H1N`\```!%A.UU!`^V14>(1CM$B&8\3(GB#[;&B$8]#[=%0&:)1B!( +MB5XHQT8T`````$C'1D@`````183V2,?``````$C'P@````!(#T7"2(F&H``` +M`$B)W^@`````2(L<)$B+;"0(3(MD)!!,BVPD&$R+="0@2(/$*,-F9F:09F:0 +M9F:09F:02(/L*$B)7"0(2(EL)!!,B60D&$R);"0@2(GU08G408G-2(L?2(G? +MZ`````!(B<)(A<!U$,:%Z0````'&14H#Z90```#&0#CAQD`Y`4&`_`$9P/?0 +M@\`"B$(Z183M=5&X`````$B#?6``=`</MH6!````B$([#[=%.&:)0B!(B5HH +MQT(T`````$C'0D@`````2,?``````$B)@J````!(B=9(B=_H`````.LM9F:0 +M9I#&0CL/#[=%.&:)0B!(B5HHQT(T`````$C'0D@`````2,?``````.N_2(M< +M)`A(BVPD$$R+9"083(ML)"!(@\0HPV9F9I!F9F:09F9FD&9FD$%7059!54%4 +M55-(@^PXB?5)B=1(BP^-%.T`````C4+@B<!(C9P((`(``$B)'"1(C80()`(` +M`$B)1"0(B=),C;P*``(``$R-K`H$`@``NP````!,C70D$(/]`W8EC8,<`0`` +M2(L4)(D"OQ`G``#H`````$B+5"0(BP*)!0````#K'8V#'`$``$&)![\0)P`` +MZ`````!!BT4`B04`````0HD$,TB#PP1(@_L<=:M(BT0D$$F)!"1(BT0D&$F) +M1"0(2(M$)"!)B40D$(M$)"A!B40D&$B#Q#A;74%<05U!7D%?PV9F9I!F9F:0 +M9F9FD&9FD$%7059!54%455-(@^PXB?5)B=1(BP^-%.T`````C4+@B<!(C9P( +M(`(``$B)'"1(C80()`(``$B)1"0(B=),C;P*``(``$R-K`H$`@``NP````!, +MC70D$(/]`W8EC8,``0``2(L4)(D"OQ`G``#H`````$B+5"0(BP*)!0````#K +M'8V#``$``$&)![\0)P``Z`````!!BT4`B04`````0HD$,TB#PP1(@_L<=:M( +MBT0D$$F)!"1(BT0D&$F)1"0(2(M$)"!)B40D$(M$)"A!B40D&$B#Q#A;74%< +M05U!7D%?PV9F9I!F9F:09F9FD&9FD$%7059!54%455-(@^PX28G^0(AT)`M, +MBS]$#[;N26/%2(T40$B-%)!(C1372(V"P!(``$"(<`A(B;K`$@``QD`*`$2) +M[N@`````2(UL)!!(B>A(B>K&``!(@\`!2(G33(UD)#!,.>!U[`^V1"0+B40D +M#(G&3(GWZ`````!(B=_H`````$ECU4B-#%)(C0R*2,'A`TJ-%#&)@M@2``!( +MBT,,28F$#MP2``"`?"0+`W8\0HT$K0````!(F$F-A`?0`0``BP")!0````") +M@O`2``!"C03M`````$B828V$!X`!``"+"(D-`````.M'0HT$K0````!(F$F- +MA`?0`0``BPB)#0````!)8\5(C11`2(T4D$&)C-;P$@``0HT$[0````!(F$F- +MA`>``0``BPB)#0````!)8\5(C11`2(T4D$F-!-:)B/02``#V@/(2```0#X0[ +M`0``]H#)$@```G109I#&10``2(/%`4PYY77S2(U<)!!(B=J+="0,3(GWZ``` +M``!(B=_H`````$ECU4B-#%)(C0R*2,'A`T&)A`[D$@``2(M##$F)A`[H$@`` +MZQ=)8\5(C11`2(T4D$''A-;D$@```0`"`(!\)`L#=C5"C1SM`````$ACVTJ- +MA#LP`@``QP`8````OQ`G``#H`````$J-G#LT`@``BS.)-0````#K,T*-'.T` +M````2&/;2HV$.U`"``#'`!@```"_$"<``.@`````2HV<.U0"``"+,XDU```` +M`$ECQ4B-%$!(C120B?&!X?___]^)\`T````@0?>$UO`2``````,`B<H/1="` +M?"0+`W860HT$[0````!(F$F-A`<T`@``B1#K%$*-!.T`````2)A)C80'5`(` +M`(D02(/$.%M=05Q!74%>05_#D$%6055!5%532(G]28GV28GU#[<&9H7`>0LE +M`!\``,'X"(A'24B-O80```!)C54428M%%$B)A80```!(BT((2(E'"(M"$(E' +M$$R-I<````!)BT4N2(F%P````$B-G9@```!)C54V28M%-DB)A9@```!(BT(( +M2(E#"$B+0A!(B4,02(M"&$B)0QA(BT(@2(E#(+H*````2(G^Z#/P__^Z!``` +M`$R)YDR)Y^@C\/__NA0```!(B=Y(B=_H$_#__V;'16@``&;'16H``&9!@[ZR +M`0```0^4PL'B`P^V14R#X/<)T(A%3$'VA:<````$=`9FQT5H`0!!]H6D```` +M`70D9H--:`)!]H6J`````70%9H--:@%!]H6H`````70&9H%-:``!0?:%I``` +M`"!T%&:#36@$0?:%J@```"!T!6:#36H"0?:%I````$!T%F:!36B``$'VA:H` +M``!`=`9F@TUJ")#&A8(````"0?:%F0````%T,@^W16BH`70,@\@(9HE%:&:# +M36H000^VA98```"#X!^#P`$\(+H?````#T3"B(6"````0?:%F`````AT!F:! +M36@``D'VA9@````$=`5F@TUH($'VA9@````"=`5F@TUH$$'VA:@````@=!5! +M]H6N````('0+9H--:$!F9I!F9I#V16@!=`U)BX7(````2(E%>.L(08M%>$B) +M17A(@VUX`4'V16H"=!I!#[>%@````*@/=`YF@_@"&<"#P`2(16SK!,9%;`+& +M16W_00^W57X/M\*H!'0+QD5M`NL;9F:09I"H`G0&QD5M`>L,]L(!9F:0=`3& +M16T`QD5N_T'V16H$=!^Y`````$$/MX6P````2-/XJ`%T`XA-;H/!`8/Y!W7F +MO@`"``!,B>_H`````(F%S````$'VAJ8````@=!M!#[>&K````(/@((/X`1G` +M@\`"B(68`0``ZP?&A9@!````N`$```!;74%<05U!7L-F9I!(@^PH2(D<)$B) +M;"0(3(ED)!!,B6PD&$R)="0@28G]28GV3(LGNX#____K"69F9I"`^X5W0P^V +MPT$/MJP$:`@``$"`_?]T,4`/ML5(:<#(#P``2(G'20.\))`)``!,.6\(=16Z +M"````$R)]N@`````A,!T!(GHZP^#PP&`^X%FD':NN/____\/ML!(BQPD2(ML +M)`A,BV0D$$R+;"083(MT)"!(@\0HPV9FD&9FD&9FD$%7059!54%455-(@^PX +M28G^2(L'@']#``^$$0,``,=$)#0`````2(V0``(``$B)5"0(2`4$`@``2(D$ +M)&9F9I`/MDPD-(A,)#-$#[;Y26/'2(T40$B-%)!)C336]H;R$@``$`^$KP(` +M`$B-EL`2``"X`0```$2)^4C3X`A""DB+MM`2``!(B70D*/9""0(/A!X!```/ +MMD0D,XUH`4$X;D,/A@P!``!)8\=(C11`2(T4D$C!X@-(B50D($P!\DB)5"08 +M2(M4)"!)C906Z!(``$B)5"001`^V[4ECQ4B-%$!(C1202(T<U0````!.C20S +M0?:$)/(2```0#X2G````2(M,)!CW@>02``````X`#X22````28VT'N@2``"Z +M"````$B+?"00Z`````"$P'1W28VT'MP2``!(BT0D($F-O`;<$@``N@@```#H +M`````(3`=%2X`0```$2)Z4C3X$B+5"082('"P!(```I""HA""D&(A"3*$@`` +M2(-\)"@`=0]-BZ0DT!(``$R)9"0HZQA)8\5(C11`2(T4D$B+1"0H28F$UM`2 +M``"#Q0%!.&Y##X<B____2(-\)"@`#X7$````3(GWZ`````!(B40D*$B%P`^$ +M6P$``$ECQTB-#$!(C0R(28T,SDB+5"0H2(F1T!(```^V1"0S2(T40$B-%)!) +MC936P!(``$B+1"0H2(E0(`^V@<D2``!(BU0D*(A""L9""0!,B3+&0@X`QD)8 +M`,9"*``/MDPD,XUQ`4$X=D-V74ECQTB-%$!(C12028V\UL`2``!`#[;.#[9' +M"DC3^*@!=!A(8\%(C11`2(T4D$B+1"0H28F$UM`2``"#Q@%!.'9#=AKKSDEC +MQTB-%$!(C1202(M,)"A)B8S6T!(``$ECQTB-%$!(C12028V4UL`2```/MD(* +M2(M,)"B(00T/MFH*@'PD,P-V*T*-'/T`````2&/;2(M$)`A(`=C'`#@```"_ +M$"<``.@`````2`,<)(DKZRE"C1S]`````$ACVTB+1"0(2`'8QP`X````OQ`G +M``#H`````$@#'"2)*X-$)#0!#[9$)#.#P`%!.$9##X<1_?__2(/$.%M=05Q! +M74%>05_#9I!!5T%6055!5%532(/L:$B)_4R+)\9$)%!0QD0D407&1"12!,9$ +M)%,PQD0D5!'&1"15J\9$)%8`QD0D5P!!QX0D`$`!`!,@``!(BP?'@`1``0#_ +M_P``2(L'QX`$0`$``````$@[O_@(```/A=0```!(C9^0%```2(V7&`D``$&X +M`0```+D(````O@```@#H`````(N%$`D```^VE1L)``"#Z@2-!(*(A1L)``!( +MB>_H`````(3`=0Q(BT0D4$B)A1@)``"+!0``````A1L)``"#P`&)!0`````/ +MMH48"0``B(,8"0``#[:%&0D``(B#&0D```^VA1H)``"(@QH)```/MH4;"0`` +M@\`"B(,;"0``#[:%'`D``(B#'`D```^VA1T)``"(@QT)```/MH4>"0``B(,> +M"0``#[:%'PD``(B#'PD``$V)YTF-A"0``0``2(E$)$!!BX0D``$``(D%```` +M``^WT(E4)%RH('0+)=__``")1"1<ZQB)T(/(((E$)%Q(BU0D0(D"BP*)!0`` +M``!(BT4`QX`$`0```````$B+10#'@!@!````````2(M%`,>`'`$```````"_ +MD-`#`.@`````0<>'<`$``!@!``!!BX=T`0``B04`````@.3]@,P$B40D7$'' +MAW`!```8`0``BT0D7$&)AW0!``!!QX=P`0``*`$``$''AW0!``!_?P``0<>' +M<`$``"0!``!!BX=T`0``B04`````9K@```W_/P``B40D7$''AW`!```D`0`` +MBT0D7$&)AW0!``!!QX=P`0``/`$``$''AW0!`````'H`0<>'<`$``*0!``!! +MQX=T`0``?;_O_T''AW`!``"X`0``08N'=`$``(D%`````"7__P``#0``^@") +M1"1<0<>'<`$``+@!``"+1"1<08F'=`$``$''AYP```#_````0<>'D`(``$0! +M``!!QX>4`@``!A``"$''AY`"``"T`0``0<>'E`(``%]P``!!QX>0`@``,``` +M`$&+AY0"``")!0`````PY(#,,XE$)%Q!B8>4`@``@'U#``^$E0(``,=$)$@` +M````28V'4`(``$B)1"0X28V75`(``$B)5"0P2(V%&`D``$B)1"0H28V7@`$` +M`$B)5"0@28V'A`$``$B)1"0828V7,`(``$B)5"0028V'-`(``$B)1"0(9F9F +MD&9FD`^V5"1(B%0D3X#Z`P^&_@```$0/MO)"C1SU`````$ACVTR+;"0020'= +M0<=%``@```"_$"<``.@`````2(M$)`A,C20#08L$)(D%`````(E$)%P-``"` +M`$&)!"1(BU0D*$2)]DB)[^@`````1(GV2(GOZ`````!!QT4`1`$``+\0)P`` +MZ`````!!QP0D!A``"$''10"T`0``OQ`G``#H`````$''!"1?<```0<=%``@` +M``"_$"<``.@`````QT0D7/]4@`!!QP0D_U0``+H!````1(GV2(GOZ`````!( +MBT0D($B-%`.+`HD%`````"7___[_B0+'1"1<!0'(`$@#7"08QP,%`<@`Z?L` +M``!F9F:01`^V="1/0HT<]0````!(8]M,BVPD.$D!W4''10`(````OQ`G``#H +M`````$B+5"0P3(TD$T&+!"2)!0````")1"1<#0``@`!!B00D2(M4)"A$B?9( +MB>_H`````$2)]DB)[^@`````0<=%`$0!``"_$"<``.@`````0<<$)`80``A! +MQT4`M`$``+\0)P``Z`````!!QP0D7W```$''10`(````OQ`G``#H`````,=$ +M)%S_5(``0<<$)/]4``"Z`0```$2)]DB)[^@`````2(M$)"!(C10#BP*)!0`` +M```E___^_XD"QT0D7`4!R`!(`UPD&,<#!0'(`+^@A@$`Z`````!$B?9(B>_H +M`````(-$)$@!#[9$)$^#P`$X14,/A\[]__](B>_H`````$&+AP0!``")!0`` +M``"#R`*)1"1<08F'!`$``$B+5"1`BP*)!0`````E\/___0T-```"B40D7(D" +MBP*)!0````!(BX7H$```08F'"`$``(N%[!```$&)APP!``!(BX48$0``08F' +M$`$``(N%'!$``$&)AQ0!``!!QX<@`0````````^WA;P2```E_P\```T```$` +M08F'(`$``$B+A7@1``!!B8<D`0``BX5\$0``08F'*`$``$B+A:`1``#'`/\/ +M``!!QX<T`0````````^WA;X2```E_P\```T```$`08F'-`$``$B+A:@1``!! +MB8<X`0``BX6L$0``08F'/`$``$''AT@!````````QT0D7``!``!!QX=,`0`` +M``$``$&+AP0!``")!0````"#R%E!B8<$`0``QT0D7/O_``Q!QX=4`0``^_\` +M#$''AUP!``#__P``N@````!(8\+'A(7`"0```````,=$A7@`````@\(!@_H0 +M=>)FQX6X$@``_P]FQX6Z$@``_P_&15`!N`$```!(@\1H6UU!7$%=05Y!7\-F +M9F:09F:005=!5D%505154TB#[`A)B?Y)B?1,BR],B>_H`````$B)PTB%P'4. +M0<:$).D````!Z;$```!,B>_H`````$B)Q4B%P'490<:$).D````!2(G>3(GO +MZ`````#IB````$R->UC&0SCAQD,Y`<9#.@-!#[=$)#AFB4,@QH.8````#TF+ +M!DB)0RC'0S0``@``2(M5$$B)4TBX`````&9FD&9FD,8$$`!(@\`!2#T``@`` +M=?!(B6MX2,>#H`````````"^`````$R)_^@`````BU,T2(MU&$R)_^@````` +M2(G>3(GOZ`````!(@\0(6UU!7$%=05Y!7\-F9F:09F9FD&9FD$%6055!5%53 +M2(/L,$F)_4R+)P^V1PV$P`^$P@,```^V\+T`````0/;&`745N@````"#P@$/ +MMNJ)\(GIT_BH`73P2&/%2(T40$B-%)!)C934X!(``(M"!*D```(`=`T-```$ +M`"7___W_B4($2&/%2(T40$B-%)!!BX34Y!(``*D```0`#X2A`@``28N<)/@( +M``!)C80DD!0``$PYXT@/1-A)C3341`^VCNH2``!$#[:&Z1(```^VCN@2``!! +M#[94)$$/MH;O$@``B40D(`^VANX2``")1"08#[:&[1(``(E$)!`/MH;L$@`` +MB40D"`^VANL2``")!"2)[DC'QP````"X`````.@`````0;@`````2&/%2(T4 +M0$B-%)!-C8S4Z!(``$$/MH08Z`@``#S_#X2$````#[;`2&G`R`\``$F)PDP# +MDY`)``!,B=9,B<^Y"````/SSI@^7P@^2P#C"=5A%#[9*!$4/MD(#00^V2@)! +M#[92`4$/MC)!#[9"!XE$)!!!#[9"!HE$)`A!#[9"!8D$)$C'QP````"X```` +M`.@`````0<9%"?],B>Y,B>?H`````.DH`@``28/``4F#^`(/A5W___],B>?H +M`````$B)PTB%P`^$!@(``$ACQ4B-%$!(C1200?:$U.42```$=`2`2UT"2&/% +M2(T40$B-%)!!]H34YA(```1T!(!+71!(8\5(C11`2(T4D$'VA-3E$@``"'0$ +M@$M=!$ACQ4B-%$!(C1200?:$U.82```(=`2`2UT@2&/%2(T40$B-%)!!]H34 +MY1(```)T!(!+70%(8\5(C11`2(T4D$'VA-3F$@```G0$@$M=",9#6`!)B=Y( +M8\5(C11`2(T4D$F+A-3H$@``2(D#3(EK"$R)[^@`````B(.[````08!%*`%! +M@'PD0P!T,KD`````N@````!F9F:000^V10U(T_BH`70.#[;"B$P#<(!#6@&# +MP@&#P0%!.$PD0W?<28M-4$B-4SA)B55028U%2$B)0SA(B4M`2(D108!%6`$/ +MMHN[````28N\)+@0``!)Q\``````3(GR3(GNZ`````#IM@```*D```@`#X2K +M````3(GGZ`````!(B<-(A<`/A)<```#&0$L&QD!*!6;'@,@``````,9`2`;& +M0$D`2,=`>```!0!(8\5(C11`2(T4D$F+A-3H$@``2(F#U````$B)@\P```!, +MB6M03(GOZ`````"(@^H```!F@TMH$$R)[^@`````/`EV!F:!2V@``D'&10X! +M28M5:$F)76A)C45@2(D#2(E3"$B)&DB)WDR)Y^@`````9F:09F:02(/$,%M= +M05Q!74%>PV9FD$%7059!54%455-(@^PH2(G]2(GS2(7V=!4/MD8)A,!T#3S_ +M#X7M!P``Z4<!``"Y``````^VA"GN"```//]T$P^VP$B-%(!(C1202(V<U<@! +M``!(@\$!2(/Y!'770;P`````00^VA"SN"```//]T.`^VP$B-%(!(C1202,'B +M`TB-G!7(`0``]H05T@$```)T#[X`````2(G?Z`````#K"$B)W^@`````28/$ +M`4F#_`20=;`/MD4^9CF%D!````^%4P<``$B%VP^%E````(!]40`/A4`'``#& +M15$!9F:09F:02(NTW6@$``!(A?9T8TB+AH````!(A<!T)TC'AH`````````` +M2,>$W6@$````````2(N^D````+K______]#K,$B+AH@```!(A<!T)$C'AH@` +M````````2,>$W6@$````````2(N^D````/_09F9FD$B#PP%(@_M`#X2X!@`` +MZX#&0PG_2(G>2(GOZ`````"0Z:$&``"Y`````&9FD&9FD`^VA"GN"```//\/ +MA`4!```/MM!(C0222(T$@DC!X`-,C;P%R`$``$B-A`7``0``@'@1_P^$W``` +M`(!X%@`/A%,&``!!O`````!(C0222(T$@DC!X`-,C:P%*`(``$B-'"A,C;/` +M`0``3(GOZ`````!(B<%(BX,P`@``2(F+,`(``$R)*4B)00A(B0B`>4K_=&^` +MN>D`````#X3X!0``#[9!2$B)PH/B!DB#^@9U'*@!=#H/MI&!````2(MQ6$R) +M_^@`````Z<P%``!(@_H$#X7"!0``J`$/A+H%``!(B<Y(B>_H`````.FJ!0`` +M2(G.2(GOZ`````#IF@4``&9F9I!!@\0!13AF%@^&B`4``&:0Z5/___](@\$! +M2(/Y!&9FD`^%VO[__TC'1"00`````(!]40`/A:4```"[`````&:02(NTW6@$ +M```/MH0K:`@``$B%]G1R2(N.@````$B%R71F2(-^8`!U7SS_=#8/MO@/M\=( +MC11`2(T4D$C!X@5(B=!(`X5`"0``]D!+!'04@'A)`'4.#[?72(GOZ`````"0 +MZR5(QX3=:`0```````!(QX:``````````$B+OI````"Z_______12(/#`4B# +M^T`/A6O____&15$!Z;@$``!(BU0D$`^VA"KN"```//\/A)$$```/MM!(C022 +M2(T$@DC!X`-(C8P%R`$``$B)3"0@@+P%U@$````/A&<$``#&1"0?`$B-!))( +MC02"2,'@`TB-E`4H`@``2(D4)$R--"A-C;[``0``2(L\).@`````2(G#28N& +M,`(``$F)GC`"``!(BPPD2(D+2(E#"$B)&(![2O\/A?D#``!$#[=K.$ECQ0^V +ME`5H"```9HE4)`Y,BZ3%:`0``/9#3`1T=DV%Y'1Q28.\)(``````=&9)@WPD +M8`!U7H!C3/OV0TL$=!(/MU0D#DR)YDB)[^@`````ZT))BX0D@````$ECU4C' +MA-5H!````````$G'A"2``````````$C'0T``````28N\))````"Z_____TR) +MYO_09F:09I#V0TL$#X13`0``QH/H`````$&`9Q3G]D-,`0^$Z````(!C3/Y( +MBU-`2(72=$6`>TD`=2GV0TL$=",/ME5!P>(&1`'J2&/22(NU^`@``+\'```` +MZ`````#IV0```$B+M?@(``"_`0```.@`````Z<,```!-A>1T94F+C"2````` +M2(7)=%B`>TD`=1OV0TL$=!4/MU0D#DR)YDB)[^@`````Z9````!)8\5(QX3% +M:`0```````!)QX0D@`````````!(QT-``````$F+O"20````NO____],B>;_ +MT>M9@'M)`'53]D-+!'1-#[950<'B!D0!ZDACTDB+M?@(``"_`@```.@````` +MZRU(BT-`2(7`="1(BY"(````2(72=!A(QX"(`````````$B+0T!(B[B0```` +M_]+V0TP"#X0A`@``2(M30$B+M?@(``"_!@```.@`````@&-,_>GA`0``2(M# +M0$B%P`^$U`$``$B#N(@`````#X3&`0``QD-+`<9#2@!(B=J^!@```$B+?"0@ +MZ`````!(@WM8`'072(M3$$B+0QA(B4((2(D02(M#6(!H6`&`NX,`````=")F +M9F:09F:02(GOZ`````"_`0```.@`````@+N#`````'7E2(N[(`$``$B%_W01 +M#[:S#0$``+H!````Z`````!(BWM82(7_=!$/MK.!````N@$```#H`````$R+ +M8T!-A>0/A.@```#V0TP$=4U(B>_H`````$B+<T"Z`0```$B)[^@`````2(M# +M0`^V4`(/MG`!2,?'`````+@`````Z`````!(BU-`2(NU^`@``+\!````Z``` +M``#K,D$/ME0D`D$/MG0D`4C'QP````"X`````.@`````2(M30$B+M?@(``"_ +M`0```.@`````28N4)(@```!(A=)T)@^W0SA(QX3%:`0```````!)QX0DB``` +M``````!)B[PDD````/_2]D-,`G092(M30$B+M?@(``"_!@```.@`````@&-, +M_4C'0T``````2<=$)&``````2(M38$B%TG00#[:#@0```$C'1,)8`````$B+ +M$TB+0PA(B4((2(D008!O%@%(B=Y(B>_H`````/9#3`)T'$B+4T!(B[7X"``` +MOP8```#H`````(!C3/UF9I"`1"0?`0^V3"0?03A/%@^'P?O__TB#1"00`4B# +M?"00!`^%2/O__[@!````2(/$*%M=05Q!74%>05_#9F:09F:055-(@^P(2(G[ +M2(LOZ`````"$P'09#[9U0T"$]G0T#[93#;D`````]L(!=T$C3^*@!=0B#P0%`./%U[DB)[^@`````2(G&2(7`=#]( +MBU-H2(E#:$B-0V!(B09(B58(2(DR@$,.`4B)7E#&1D@%QD9)`,:&@0````^Y +M`0```+H!````2(G?Z`````!(@\0(6UW#9F9FD&9F9I!(@^PH2(D<)$B);"0( +M3(ED)!!,B6PD&$R)="0@28G\2(GU2(N>B`````^V1D(\)`^'$@8```^VP/\D +MQ0`````/MT9.#[?0]L($=`QFQT9.`0#&1D(!ZT-F@_@@=0QFQT9."`#&1D(1 +MZS&$TGD5]D9)`W0/)'^#R`AFB49.QD9"#>L8]L((=`;&14('ZPWVQ@)T",9% +M1P#&14(>2(GN3(GGZ`````#IG04``+D!````N@(```"^`0```$B)[^@````` +MZ8$%``"Y`0```+H`````O@$```!(B>_H`````.EE!0``N0$```"Z`0```+X! +M````2(GOZ`````#I204``+D!````NF````"^`0```$B)[^@`````Z2T%```/ +MMDY(0;@!````NF````"^`0```$B)[^@`````Z0P%``!!N`$```"Y```!!+HA +M````O@$```!(B>_H`````.GJ!```2(M#((%@-/__]_]!N`$```"Y`0```+H" +M````O@````!(B>_H`````.F]!```0;@!````N0````"Z`@```+X`````2(GO +MZ`````"_$"<``.@`````Z9$$``!(BT,@@6`T___W_T&X`0```+D!````N@(` +M``"^`````$B)[^@`````Z60$``!!N`$```"Y`````+H"````O@````!(B>_H +M`````+\0)P``Z`````#I.`0``+D!````N@(```"^`````$B)[^@`````Z1P$ +M``"Y`0```+H`````O@````!(B>_H`````.D`!```N0$```"Z`0```+X````` +M2(GOZ`````#IY`,``$&X`0```+G_____N@$```"^`````$B)[^@`````Z<(# +M``"Y`0```+H`````O@````!(B>_H`````.FF`P``#[9&1TR+;,9828E=4$F) +M=6`/MD9'08B%@0```$'&14H#0<9%20!!@$U(!8!##@%(BU-H2(U#8$R):VA) +MB44`28E5"$R)*K^`&@8`Z`````!!@'PD0P!T)KT`````]D,-`70/ZQD/MD,- +MB>E(T_BH`741@\4!03AL)$-WZ>L%O0````!(BU,@BT(TJ0``"`!T"B7___?_ +MB4(TZVE(C03M`````$F)QD&!YO@'``"[N`L``$"`_0-V'4F+!"1(!8`!``!, +M`?"+`(D%`````,'H$X/@`>L<28L$)$@%@`$``$F-!`:+`(D%`````,'H$X/@ +M`83`=0^_Z`,``.@`````@^L!=:YF0<>%R```````3(GN3(GGZ`````#IB`(` +M`+]`#0,`Z`````"Y`````+H@````O@$```!(B>_H`````+\0)P``Z`````#I +M6`(``+D`````N@$```"^`````$B)[^@`````OQ`G``#H`````.DR`@``2(M# +M((%@-/__]_]!N`````"Y_____[H!````O@````!(B>_H`````+\0)P``Z``` +M``#I^P$``+D`````N@````"^`````$B)[^@`````OQ`G``#H`````.G5`0`` +MZ`````#IRP$``&9F9I#H`````.F]`0``0;@!````N?````"ZFP```+X!```` +M2(GOZ`````#IFP$``$&X`0```+F@UEHKNN`#``"^`0```$B)[^@`````Z7D! +M``!!N`$```"Y`.`#`+JD`P``O@$```!(B>_H`````.E7`0``0;@!````N>2H +M!@&ZQ`,``+X!````2(GOZ`````#I-0$``+D!````ND@#``"^`0```$B)[^@` +M````Z1D!``"_0`T#`.@`````N0$```"Z(````+X!````2(GOZ`````"_$"<` +M`.@`````Z>D```!!N`$```"Y`````+HA````O@$```!(B>_H`````.G'```` +MN0$```"Z8````+X!````2(GOZ`````#IJP````^V3DA!N`$```"Z8````+X! +M````2(GOZ`````#IB@```,9#"0!(B[Z(````Z`````#K>+D!````N@$```"^ +M`````$B)[^@`````OQ`G``#H`````.M52(M#((%@-/__]_]!N`$```"Y____ +M_[H!````O@````!(B>_H`````+\0)P``Z`````#K(;D!````N@$```"^```` +M`$B)[^@`````OQ`G``#H`````+@!````2(L<)$B+;"0(3(MD)!!,BVPD&$R+ +M="0@2(/$*,-F9F:09F:02(/L&$B)'"1(B6PD"$R)9"002(G[2(GU#[=6(&:! +M^H4`#X>.````#[?"#[:$!V@(```\_W1_9H/Z?W<D#[;`2(T40$B-%)!(P>(% +M2`.70`D``$B+0E`/ME`(ZUYF9F:0#[=&(&8]@0!W(P^WP`^VA`=H"```2&G` +MR`\``$@#AY`)``!(BT`(#[90".LM#[=&(`^VA`=H"```2(T$P$C!X`5(`X=H +M"0``2(N`B`````^V4`CK!;K_____N?____]F@7T@A0!W#`^W12`/MHP#:`@` +M`$B+LV@)```/ML*`^O]T'DB8@+P#[@@``/]T$H#Y_W0-@'TD!G4J9F9FD&9F +MD$B#?7@`=`Q(C75X2(G?Z`````!(B>Y(B=_H`````.D-`0``#[;!2(T$P$C! +MX`5,C20&00^V1"1"/!H/A(4````\&G<./!$/A;L```!F9F:0ZQ,\&W1W/!P/ +MA:D```!FD.F<````2(N3$!$``$B!PDP(``!!#[9$)%#!X`A(F$@!PHL*B0T` +M````#[;)2(N3$!$``$B!PD0(``!!#[9$)%#!X`A(F$@!PHL"B04`````P>`( +M"<%!B8PD!`$``$'&1"1"&NM"0<9$)$(;ZSI(BX,0$0``2`5,"```00^V5"10 +MP>((2&/22`'0BP")!0````"#X/=!B$0D2$'&1"1"'.L&0<9$)$(=2(-]>`!T +M#$B-=7A(B=_H`````$B)[DB)W^@`````3(GF2(G?Z`````!(BQPD2(ML)`A, +MBV0D$$B#Q!C#9F9FD&9FD&9FD&9FD$B#[`A(B?Y(BS_H`````$B#Q`C#9F9F +MD&9F9I!F9F:02(/L.$B)7"0(2(EL)!!,B60D&$R);"0@3(ET)"A,B7PD,$F) +M_TB)\TB+;E`/MW8X2&/&N@````"`O`=H"```_P^$.@D```^V0TH\"0^$3@4` +M`#P)=TH\!0^$EP```#P%=QX\`P^$K0```#P$9F9FD`^%[`@``.G1````9F:0 +M9I`\!P^$H00``#P'9F:09F:0#X<<!```Z8$"``!F9I!FD#P6#X1^`P``/!9F +M9I!F9I!W(SP4#X31!0``/!1F9F:0#X?;`@``/`H/A90(``!FD.D[!0``/!H/ +MA!\"```\_Y`/A*D%```\%P^%=`@``&:0Z48#```/MG=#0(3V9F9FD`^$AP`` +M``^V50U!O`````#VP@%T;>MV2(M%((%@-/___O](BWM0N0````"Z`0```$B) +MWN@`````OP4```#H`````+H!````Z30(``"Y`````+H`````2(G>2(GOZ``` +M``"_4,,``.@`````N@$```#I"P@``$B)T$2)X4C3^*@!=1%!@\0!03CT=>KK +M!D&\``````^V4TA(B="#X`9(@_@&=0GVP@$/A<8```!(BU4@BT(TJ0```0!T +M#27___[_B4(TZ:L```!*C03E`````$F)QD&!YO@'``!!O1`G``"028L708#\ +M`W8728V$%H`!``"+`(D%`````"4```$`ZQ5)C806@`$``(L`B04`````)0`` +M`0"%P'0L08#\`W8328V$%H`!``#'`````0#I-P<``$F-A!:``0``QP````$` +MZ20'``"_Z`,``.@`````08/M`76+QD-+`L9#2O](B=Y,B?_H`````+H!```` +MZ0X'``#V10H!=#1(B=Y(B>_H`````(3`=25!O?H```!(B=Y(B>_H`````(3` +M=1"_Z`,``.@`````08/M`77A08#\`W8F28L'2`6``0``2HT4Y0````"!XO@' +M``!(`="+$(D5`````(D0ZR1)BP=(!8`!``!*C13E`````('B^`<``$@!T(L0 +MB14`````B1!(BWM02(G>Z$CF__^_($X``.@`````N@$```#I9`8``$C'QP`` +M``"X`````.@`````2(MK4$R+90!,B>?H`````$B)P4B%P'41QH/I`````;H! +M````Z2H&``#&0#CAQD`Y`<9`.A</MT,X9HE!($B+10!(B4$HQT$T`````$C' +M04@`````2,>!H`````````!(B<Y,B>?H`````+H!````Z=\%``!(Q\<````` +MN`````#H`````$B+:U!,BV4`3(GGZ`````!(B<%(A<!U$<:#Z0````&Z`0`` +M`.FE!0``QD`XX<9`.0'&0#H8#[=#.&:)02!(BT4`2(E!*,=!-`````!(QT%( +M`````$C'@:``````````2(G.3(GGZ`````"Z`0```.E:!0``2(G>2(GOZ!_E +M__^Z`0```.E%!0``3(ME`$R)Y^@`````2(G"#[9+;$B%P'4.QH/I`````;(! +MZ1\%``#&0#CAQD`Y`<9`.@6(2#L/MT,X9HE"($B+10!(B4(HQT(T`````$C' +M0D@`````2,>"H`````````"(2V](B=9,B>?H`````+H!````Z<X$``!,BV4` +M3(GGZ`````!(B<(/MDMN2(7`=0[&@^D````!L@'IJ`0``,9`..'&0#D!QD`Z +M!(A(.P^W0SAFB4(@2(M%`$B)0BC'0C0`````2,="2`````!(QX*@```````` +M`(A+<4B)UDR)Y^@`````N@$```#I5P0``$R+90!,B>?H`````$B)P4B%P'41 +MQH/I`````;H!````Z3($``#&0#CAQD`Y`<9`.@8/MT,X9HE!($B+10!(B4$H +MQT$T`````$C'04@`````2,>!H`````````!(B<Y,B>?H`````+H!````Z><# +M``!F9F:09F:03(ME`$R)Y^@`````2(G!2(7`=1'&@^D````!N@$```#INP,` +M`,9`..'&0#D!QD`Z#`^W0SAFB4$@2(M%`$B)02C'030`````2,=!2`````!( +MQX&@`````````$B)SDR)Y^@`````N@$```#I<`,``$R+90!,B>?H`````$B) +MP4B%P'41QH/I`````;H!````Z4L#``#&0#CAQD`Y`<9`.A;&0#P!#[=#.&:) +M02#&@9@````/2(M%`$B)02C'030`````2,=!2`````!(QX&@`````````$B) +MSDR)Y^@`````N@$```#I]0(``,9#2O]FQX/(```````/ME-(2(G0@^`&2(/X +M!G4%]L(!=15(@WM@`'4.2(GOZ`````"(@^H```"`>TL"=0](BW-02(G:3(G_ +MZ`````#V10P"=1B[`````$R-96"`?0X`#X5``0``Z5<"``!(BW5`#[9.1@^V +MT0^V1CN#Z`$YPGTNC4$!B$9&@$9'`<9&0@`/MT9.@^#^@\@(9HE&3DR)_^@` +M````N@$```#I1P(``#G"=!2[`````$R-96"`?0X`=2GI$0(``,9&0@`/MT9. +M@^#V@,P"9HE&3DR)_^@`````N@$```#I"P(``$R)Y^@`````2(G!2(M%:$B) +M36A,B2%(B4$(2(D(@'E*_W1\@+GI``````^$O0$```^V44A(B="#X`9(@_@& +M=2+VP@%T10^VD8$```!(BW%82(GOZ`````"Z`0```.FI`0``2(/X!`^%@0$` +M`/;"`0^$>`$``$B)SDR)_^@`````N@$```#I@0$``$B)SDR)_^@`````N@$` +M``#I;`$``,:!Z0````"#PP$X70X/ACL!``#I2?___V9F9I!,B>?H`````$B) +MP4B+16A(B4UH3(DA2(E!"$B)"(!Y2O\/A)````"`>4D`#X5_````@+GI```` +M``^$]`````^V44A(B="#X`9(@_@&=2+VP@%T2`^VD8$```!(BW%82(GOZ``` +M``"Z`0```.G@````2(/X!`^%N````/;"`69FD`^$K````$B)SDR)_^@````` +MN@$```#IM0```$B)SDR)_^@`````N@$```#IH````,:!Z0````"#PP$/MD4. +M.-@/ASK___\XPW52A,!T3KL`````3(UE8$R)Y^@`````2(G"2(M%:$B)56A, +MB2)(B4((2(D0#[9"23PB=`0\#744O@H```!(B=?H`````+H!````ZSR#PP$X +M70YWN\9%"?](B>Y,B?_H`````+H!````ZQZZ`0```.L7187M9F9FD`^$W_C_ +M_^GW^/__9F:09I")T$B+7"0(2(ML)!!,BV0D&$R+;"0@3(MT)"A,BWPD,$B# +MQ#C#9F9FD&9F9I!F9I!(@^PH2(E<)`A(B6PD$$R)9"083(EL)"!(B?M)B?0/ +MMTX@9H'YA0`/A^@````/M\$/MK0':`@``$"`_O\/A-,```!F@_E_=RA`#[;6 +M2(N/0`D``$B-!%)(C02"2,'@!4B+1`A0#[9`".M)9F:09F:09H'Y@0!W'4`/ +MML9(BY>0"0``2&G`R`\``$B+1!`(#[9`".L?0`^VQDB+EV@)``!(C03`2,'@ +M!4B+A!"(````#[9`"#S_=%X/ML`/MJP#[@@``$"`_?]T&$"`_O]T$D$/MDPD +M)(#Y!G5G9F9FD&9FD$"`_?]T+T"`_O]T*4`/ML9(C11`2(T4D$C!X@5)B=5, +M`ZM`"0``0<9%2P)!QD5*_^F?`@``28-\)'@`=`U)C70D>$B)W^@`````3(GF +M2(G?Z`````#II0(``&9FD&9FD$`/ML9(C11`2(T4D$C!X@5)B=5,`ZM`"0`` +M28M4)$B$R0^$N0```$$/MD0D.CP0````/`P/A,@```!!#[>5R````(U" +M`69!B87(````9H/Z"78;08!]2@9T%$'&14L"0<9%2O]!@&5,_ND#`@``O^@# +M``#H`````$$/ME5(2(G0@^`&2(/X!G4Z]L(!=#5!#[:5@0```$F+=5A`#[;% +M2(T\@$B-/+A(C;S[R`$``$&X`````+D"````Z`````#IV0$``$'&14H#3(GN +M2(G?Z`````#IQ`$``&9FD&:000^V1"0Z/`%U"T'&14H$D.E_`0``/`)U#$'& +M14H%9I#I;P$``#P##X7/````2(G608!]2@5U*V:!>@3(-V9FD'4@00^W=3A( +MQ\<`````N`````#H`````$'&14H&Z3(!``!,B>_H`````$F-O9@```"^*``` +M`.@EO___A,!U04F-O80```"^%````.@0O___A,!U+$F-O<````"^"````.C[ +MOO__A,!U%TF#?7@`=!!!QD5*%^G:````9F:09F:09D&#O<@````==A1!QD5+ +M`D'&14K_08!E3/[IM0```+_H`P``Z`````!!QD5*&F9!@X7(`````>F8```` +M/!=U"D'&14H5Z8H````\&&9F9I!U!T'&14H6ZWL\!&9FD&:0=0=!QD5*!^MK +M/`5F9I!FD'4'0<9%2@CK6SP&9F:09I!U!T'&14H)ZTL\#&9FD&:0=0=!QD5* +M"NL[/!9F9I!FD'4'0<9%2A3K*SP.9F:09I!U(DF#?"1X`'0-28UT)'A(B=_H +M`````$R)YDB)W^@`````ZRM)@WPD>`!T#4F-="1X2(G?Z`````!,B>9(B=_H +M`````$R)[DB)W^@`````2(M<)`A(BVPD$$R+9"083(ML)"!(@\0HPV9F9I!F +M9F:02(/L*$B)'"1(B6PD"$R)9"003(EL)!A,B70D($F)_DF)]$B+;E`/MT8X +MN@````"`O`=H"```_P^$RP(```^V1DH\%`^$QP```#P4=S@\#9`/A/L````\ +M#7<./`5F9F:0#X6=`@``ZTT\#F9FD&9FD`^$[P```#P/#X6%`@``9I#I\@`` +M`#P;#X25````/!N0=Q`\&'0Y/!D/A64"``!FD.M$/!QT5SS_#X55`@``9I#I +MQ@```+X`````3(GG9F:0Z`````"Z`0```.DY`@``O@$```!,B>?H`````+H! +M````Z2("``"^`0```$R)Y^@`````N@$```#I"P(``$B)]^@`````N@$```#I +M^0$``)!(B??H`````+H!````Z>8!``#V1FD$=!=(B?=F9I!FD.@`````N@$` +M``#IR0$``$B)]^@`````N@$```#IMP$``$B)]^@`````N@$```!FD.FC`0`` +M2(GWZ`````"Z`0```.F1`0``QD9*_X!]#@`/A-D```"[`````$R-;6!FD$R) +M[^@`````2(G!2(M%:$B)36A,B2E(B4$(2(D(@'E*_P^$B0```(!Y20`/A88` +M``"`N>D`````#X0U`0``#[912$B)T(/@!DB#^`9U(O;"`71(#[:1@0```$B+ +M<5A(B>_H`````+H!````Z0@!``!(@_@$#X7Y````]L(!9F:0#X3M````2(G. +M3(GWZ`````"Z`0```.G=````2(G.3(GWZ`````"Z`0```.G(````QH'I```` +M`(/#`0^V10XXV`^'.O___SC##X6/````00^V1"1)/")T%CP-=!)!O`````!, +MC6U@@'T.`'46ZV^^"@```$R)Y^@`````N@$```#K=DR)[^@`````2(G#2(M% +M:$B)76A,B2M(B4,(2(D8#[9#23PB=`0\#74H2(G>2,?'`````+@`````Z``` +M``"^"@```$B)W^@`````N@$```#K)4&#Q`%$.&4.=Z7&10G_2(GN3(GWZ``` +M``"Z`0```.L%N@$```")T$B+'"1(BVPD"$R+9"003(ML)!A,BW0D($B#Q"C# +M9F:09F:09F:005=!5D%505154TB#["A)B?T/MU8@0;C_____1(G`9H'ZA0`/ +MAX`````/M\)$#[:$!V@(``!$B<!!@/C_=&MF@_I_=R)!#[;02(N/0`D``$B- +M!%)(C02"2,'@!4B+1`A0#[9`".M#9H'Z@0!W'4$/ML!(BY>0"0``2&G`R`\` +M`$B+1!`(#[9`".L?00^VP$B+EV@)``!(C03`2,'@!4B+A!"(````#[9`"`^V +MP$$/MKP%[@@``$B-!+](C02'28V$Q<@!``!(B40D($$/ML!(C11`2(T4D$C! +MX@5)B==-`[U`"0``2(M.2`^V`<'@&`^V40'!XA`)T`^V40,)T`^V40+!X@@) +MT,'H`TB-:0B#^!"Z$`````]'PHG`3(TTP4PY]0^'?`$``,=$)!P`````2(T$ +MOTB-!(=(P>`#2HT4*$B)5"002('"P`$``$B)5"0(28V$!2@"``!(B00D9F9F +MD$B)[^@`````08G$2(UU!$C'QP````"Y!````/SSI@^7P@^2P#C"#X4*`0`` +M08/\$`^'``$``(-$)!P!@WPD'`%U(D''AY`!```!````18FGE`$``$B+10!) +MB8?<````Z=(```!,B>_H`````$B)PTB%P`^$RP```,9`2P;&0$H%9L>`R``` +M````QD!(!L9`20!(QT!X```%`,>`D`$```$```!$B:"4`0``28N'U````$B) +M@]0```!)BX?4````2(F#S````$B+10!(B8/<````2(M$)"!(B4-02(G'Z``` +M``"(@^H```!F@TMH$$B+?"0@Z``````\"78&9H%+:``"2(M4)`B`0A8!2(M4 +M)!!(BX(P`@``2(F:,`(``$B+%"1(B1-(B4,(2(D82(G>3(GOZ`````!(@\4( +M3#GU#X:]_O__2(/$*%M=05Q!74%>05_#9F9FD&9F9I!F9I!F9I!!5T%6055! +M5%532('L2`(``$B)?"082(ET)!")T$B+5PA(B50D($B+"DB)3"0H#[976(A4 +M)#=(B?E(@\%(2(E,)#A(.4](#X21`@``@'PD-P`/A(8"```/ML")1"0,2(M\ +M)#CH`````$R-8/!,C40D0(M,)`RZ`0```$B+="0@2(M\)!#H`````$R-?"1` +M@'PD0``/A`4!``!!O0````!-C;0DU````$$/MNU(8\5(B<-(P>,$28U\'VRZ +M"````$R)]N@`````A,`/A+$```!)C50?8`^V0@B#X`]!B(0DZ@```$$/MTPD +M:&:!X=_]B<B#R!!F08E$)&@/MD((P.@$/`EU"XG(@\@P9D&)1"1H2&/%2,'@ +M!$$/MD0':,#H!#P*=0AF08%,)&@``DB+3"0X2(M1"$F-1"002(E!"$F)3"00 +M28E4)!A(B0)!]D0D3`)T0T&`9"1,_4F+5"1`2(72=#-(BT0D*$B+L/@(``"_ +M!@```.@`````ZQMF9I!F9I!!@\4!13@O=A5F9F:09F:0Z1+___]%."\/AR0! +M``!,B>*^!@```$B+?"0@Z`````!!@+PD@P````!T)&9FD&:02(M\)"CH```` +M`+\!````Z`````!!@+PD@P````!UX4F+O"0@`0``2(7_=!-!#[:T)`T!``"Z +M`0```.@`````28M\)%A(A?]T$T$/MK0D@0```+H!````Z`````!)BT0D0$B% +MP'1M2,=`8`````!!]D0D3`1U'DB+?"0HZ`````!)BW0D0+H!````2(M\)"CH +M`````$F+5"1`2(M,)"A(B['X"```OP8```#H`````$F+5"1`2(M$)"A(B[#X +M"```OP$```#H`````$G'1"1``````$F+%"1)BT0D"$B)0@A(B1!(BU0D((!J +M#@%(BTPD&(!I6`%,B>9(BWPD*.@`````2(M4)#A(BT0D&$@Y4$AT"X!L)#<! +M#X6!_?__2('$2`(``%M=05Q!74%>05_#D$%7059!54%455-(@>PH`@``28G_ +M28GU2(G52(L'2(E$)!!$#[;A2(U<)"!)B=A$B>&Z`0```$B)_DR)[^@````` +M1(GB3(GN2(GOZ`````!,BW5(28/N$$B-74A)C4802#G8="]!#[9&23P-=!4\ +M(G4SZP]!#[9&23P-=`8\(F:0=2)!QD9*!4'&1DL$QD0D'@'K!<9$)!X`@'PD +M(`!U&.G=`0``38MV$$F#[A!)C4802#G8=;[KW,9$)!\`28U78$B)5"0(3(ME +M2$F#[!!)C40D$$@YPP^$O`$```^V1"0?2,'@!$R-K`2,````9F9FD$F-O"34 +M````N@@```!,B>[H`````(3`#X5@`0``38MD)!!)@^P028U$)!!(.=@/A',! +M``#KRD&`1PX!QD%*!<:!Z`````#&04L$9L>!R```````QH'*`````$C'07@` +M``4`#[9\)!](8\=(P>`$2(V4!(`````/MD($B$%(#[9"!8A!24R)>5`/MD(( +M@^`/B('J````#[=Q:&:!YM_]B?"#R!!FB4%H#[9"",#H!#P)=0F)\(/(,&:) +M06A(8\=(P>`$#[:$!(@```#`Z`0\"G4&9H%):``"2(EI6$ACQTC!X`0/MI0$ +MA@```(B1@0```$B+A`2,````2(F!U````$B)@<P```"`15@!28M':$F)3VA( +MBU0D"$B)$4B)00A(B0A(BU502(U!$$B)15!(B5D02(E1&$B)`@^V44A(B="# +MX`;&1"0>`$B#^`9U,/;"`709#[:1@0```$B)[DR)_^@`````QD0D'@#K$DB) +MSDB+?"00Z`````#&1"0>`(!$)!\!#[9$)!\X1"0@#X=$_O__@'PD'@!T);X* +M````3(GWZ`````#K%DB+?"00Z`````!(B<%(A<`/A7G^__](@<0H`@``6UU! +M7$%=05Y!7\.005=!5D%505154TB![$@"``!)B?U(B70D*$B++P^V1RB(1"0W +M2(U72$B)5"0X2#E72`^$H0,``(3`#X29`P``2(U,)$!(@\%<2(E,)"!(C40D +M0$B#P%1(B40D&$B-5"1`2(/"0$B)5"002(U,)$!(@\$02(E,)`A(C40D0$B# +MP"!(B00D2(M\)#CH`````$R-8,A!N`````"Y`````+H`````3(GN2(M\)"CH +M`````$&)QX3`#X0+`P``0;X`````NP````")7"0P0;@`````B=FZ`0```$R) +M[DB+?"0HZ``````/ML!(P>`$2(/`9$@]``(```^'N0$``$R-1"1`B=FZ`0`` +M`$R)[DB+?"0HZ`````"Z"````$R)YDB+?"0@Z`````"$P`^$A@$``$B+3"0X +M2(M1"$F-1"0X2(E!"$F)3"0X28E4)$!(B0(/MD0D0D&(1"192(MT)!A,B>_H +M`````#S_=!8/ML!(:<#(#P``2`.%D`D``$F)1"00183V=%\/MD0D0]'H@^`! +MP>`$00^V5"1=@^+O"<)!B%0D70^V1"1#P>@#@^`!P>`%@^+?"<)!B%0D70^V +M1"1#P>@"@^`!P>`#@^+W"<)!B%0D70^V1"1&08B$)+L```#IN0````^V1"1" +M08A$)%E-B6PD"`^V1"1&08B$)+L````/MT0D1$&)1"1@#[>$))````!F08F$ +M)+@````/MH0DD@```$&(A"2Z````2(N$)(````!)B80DJ````$B+5"002(M" +M"$F)A"2P````2(M$)%!)B40D>$B+3"0(2(M!"$F)A"2`````28V4)(@```!( +MBT0D8$F)A"2(````2(L,)$B+00A(B4((2(M!$$B)0A!(BT0D>$F)A"2@```` +MBTPD,$R)XDB+="0H3(GOZ`````#I^0```$&#Q@&#PP%%./X/A`(!``#I_?W_ +M_TR)]^@`````2(U8\$B)VKX&````3(GOZ`````"`NX,`````=!YF9I!(B>_H +M`````+\!````Z`````"`NX,`````=>5(BT-`2(7`=%E(QT!@`````/9#3`1U +M&4B)[^@`````2(MS0+H!````2(GOZ`````!(BU-`2(NU^`@``+\!````Z``` +M``!(BU-`2(NU^`@``+\&````Z`````!(QT-``````$B+$TB+0PA(B4((2(D0 +M08!M#@%!@&PD6`%(B=Y(B>_H`````$TY="1(#X4L____08!M*`%,B>9(B>_H +M`````$B+1"0X23E%2'0A@&PD-P%T&F:0Z;_\__]-C70D2$TY="1(D`^%\O[_ +M_^O$2('$2`(``%M=05Q!74%>05_#9F:09F:005=!5D%505154TB![#@"``!( +MB7PD&$B)]4B+!DB)1"0@2(G^2(GOZ`````!!N`````"Y`````+H`````2(GN +M2(M\)!CH`````(A$)"^$P`^$;@,``$&_`````$&^`````$B-54A(B50D"$B- +M36!(B0PD0;@`````1(GQN@$```!(B>Y(BWPD&.@`````#[;`2,'@!$B#P&1( +M/0`"```/APP#``!,C40D,$2)\;H!````2(GN2(M\)!CH`````$R-9"0P28UT +M)%Q(B>_H`````#S_#X78`@``2(M\)"#H`````$B)PTB%P`^$[`(``(!%*`'& +M0%@`28M$)%Q(B0-)C70D5$B)[^@`````//]T&@^VP$AIP,@/``!(BW0D($@# +MAI`)``!(B4,000^V1"0"B$-900^V1"0#T>B#X`'!X`0/ME-=@^+O"<*(4UU! +M#[9$)`/!Z`.#X`'!X`6#XM\)PHA374$/MD0D`\'H`H/@`<'@`X/B]PG"B%-= +M2(EK"$$/MD0D!HB#NP```$F+1"0(2(E#<$$/MD0D!XA#6D$/MT0D!(E#8$$/ +MMT0D4&:)@[@```!!#[9$)%*(@[H```!)BT0D0$B)@Z@```!)BT0D2$B)@[`` +M``!)BT0D$$B)0WA)BT0D&$B)@X````!(C8N(````28U4)"!)BT0D($B)@X@` +M``!(BT((2(E!"$B+0A!(B4$028M$)#A(B8.@````2(M54$B-0SA(B4502(M, +M)`A(B4LX2(E30$B)`D&`/"0`#X1J`0``0;T`````2(US2$B)="002(M\)"#H +M`````$B)P4B%P`^$;P$``(!%#@'&0$H%QH#H`````,9`2P1(QT!X```%`&;' +M@,@``````$$/M_U(8\=(P>`$28U4!&`/MD($B$%(#[9"!8A!24B):5!(B5E8 +M#[9"!HB!@0````^V0@B#X`^(@>H````/MW%H9H'FW_V)\(/($&:)06@/MD(( +MP.@$/`EU"8GP@\@P9HE!:$ACQTC!X`1!#[9$!&C`Z`0\"G4*9H%):``"9F9F +MD$ACQTC!X`1)BT0$;$B)@=0```!(B8',````@$-8`4B+16A(B4UH2(L4)$B) +M$4B)00A(B0A(BU-02(U!$$B)0U!(BW0D$$B)<1!(B5$82(D"#[912$B)T(/@ +M!DB#^`9U)O;"`704#[:1@0```$B)WDB)[^@`````ZPU(B<Y(BWPD(.@````` +M08/%`4$/M@0D9D0YZ`^'K/[__V9F9I!F9I!!@\<!08/&`40Z?"0O#X6O_/__ +M@'T.`'41QD4)_TB)[DB+?"0@Z`````!(@<0X`@``6UU!7$%=05Y!7\-F9F:0 +M05=!5D%505154TB#[!A)B?Y)B?1!N`````"Y`````+H`````Z`````!!B<6$ +MP'0VO0````"[`````$R-?"07D$R)^8G:3(GF3(GWZ`````"`?"07_@^%K@`` +M`(/%`8/#`40X[77:00^V1"18@^@!08A$)%B$P'1[28LL)$'&1"18`$F+7"1( +M2(/K.$F-5"1(2(U#.$@YT'1P2(-[$`!U0.L'2(-[$`!U-T'&1"18`4R)YDR) +M]^@`````#[:+NP```$B+O;@0``!)Q\``````2(G:3(GFZ`````#K+69F9I!( +MBULX2(/K.$B-0SA(.=!UL>L63(GF3(GWZ`````!,B>9,B??H`````$B#Q!A; +M74%<05U!7D%?PV9F9I!F9F:0055!5%532(/L"$B)_4F)]$R++[L*````3(GF +M2(GOZ`````"$P'4/O^@#``#H`````(/K`77B00^V=4-`A/9T(@^V50VY```` +M`/;"`70,ZQ)(B=!(T_BH`74(@\$!0#CQ=>Y)BQ0D28M$)`A(B4((2(D0@&T. +M`4R)YDR)[^@`````]D4,`G1)2(MU0$B%]G483(GOZ`````!(B<9(A<`/A%(! +M``!(B45`3(DN2(FNB````,9&1@#&1D<`QD9"`&:#3DX$3(GOZ`````#I)@$` +M`$B+14!(A<`/A+@```!(C;"0````28M]*.@`````2(MU0$R)[^@`````3(UE +M8$PY96`/A(8```!,B>?H`````$B)PTB+0$!(A<!T64C'0&``````]D-,!'49 +M3(GOZ`````!(BW-`N@$```!,B>_H`````$B+4T!)B[7X"```OP$```#H```` +M`$B+4T!)B[7X"```OP8```#H`````$C'0T``````@&T.`4B)WDR)[^@````` +M3#EE8`^%>O___TC'14``````@'T.`'022(U]8.@`````2(G!@&T.`>L+3(GO +MZ`````!(B<%(A<ET.4B+56A(B4UH2(U%8$B)`4B)40A(B0J`10X!2(EI4,9! +M2`7&04D`QD%+!L9!2@-(B<Y,B>_H`````$B#Q`A;74%<05W#9F9FD&9F9I!F +M9F:09F:02(/L*$B)7"0(2(EL)!!,B60D&$R);"0@2(G[2(GU#[=.(&:!^84` +M#X>5````#[?!#[:T!V@(``!`@/[_#X2`````9H/Y?W<H0`^VUDB+CT`)``!( +MC0122(T$@DC!X`5(BT0(4`^V0`CK269FD&9FD&:!^8$`=QU`#[;&2(N7D`D` +M`$AIP,@/``!(BT00"`^V0`CK'T`/ML9(BY=H"0``2(T$P$C!X`5(BX00B``` +M``^V0`A`#[;6//]T!V:!^O\`=2-(@WUX`'0,2(UU>$B)W^@`````2(GN2(G? +MZ`````#I/0$```^VP`^VC`/N"```#[?"2(T40$B-%)!(P>(%28G53`.K0`D` +M`(!])``/A*T```!(C02)2(T$@4R-I,/``0``00^V3"05#[95.P^V=3I%#[9$ +M)!9(Q\<`````N`````#H`````$F+50!)BT4(2(E""$B)$$&`;"06`4R)[DB) +MW^@`````2(GN2(G?Z``````/MGM#0(3_#X2B````00^V="05N0````!`]L8! +M=0_K&0^VRDB)\$C3^*@!=!&)SDB)W^@`````ZW:Z`````(/"`4`X^G7:ZV=F +M9I!FD$B-!(E(C02!3(VDP\@!``"`?3H!=2R_$"<``.@`````2(GN2(G?Z``` +M``"Y`0```+H`````3(GN3(GGZ`````#K(+]0PP``Z`````!(B>Y(B=_H```` +M`$R)[DR)Y^@`````2(M<)`A(BVPD$$R+9"083(ML)"!(@\0HPV9FD&:005=! +M5D%505154TB#[`A(B?M)B?5!B=9!B<](BP=(B00D@'\.`'1YO0````!,C6=@ +M3(GGZ`````!(B<)(BT-H2(E3:$R)(DB)0@A(B1!,.6I8=0U$.+*!````=`UF +M9F:0@\4!0#AK#G?'0#AK#G0Q08#_4'4KQD)+!L9"2@7&0D@'QD))`$R):EA( +MB5I0QH+*`````$B)UDB+/"3H`````$B#Q`A;74%<05U!7D%?PY!(@^PX2(E< +M)`A(B6PD$$R)9"083(EL)"!,B70D*$R)?"0P2(G]28GT#[=6(&:!^H4`#X>. +M````#[?"#[:$!V@(```\_W1_9H/Z?W<D#[;`2(T40$B-%)!(P>(%2`.70`D` +M`$B+0E`/ME`(ZUYF9F:0#[=&(&8]@0!W(P^WP`^VA`=H"```2&G`R`\``$@# +MAY`)``!(BT`(#[90".LM#[=&(`^VA`=H"```2(T$P$C!X`5(`X=H"0``2(N` +MB`````^V4`CK!;K_____N?____]F08%\)""%`'<.00^W1"0@#[:,!6@(```/ +MML(/MH0%[@@``$B-%(!(C1203(VTU<@!```/ML%(C03`2,'@!4R+K6@)``!) +M`<5!@'PD/`(/A8````!!#[9$)$`E\````(/X('0%@_@0=6M!#[94)$")T(/@ +M#X/X`74HB=&!X?````!!N`$```"Z`@```+X`````3(GOZ`````#IXPH``&9F +MD$$/MD5'28M4Q5A!#[9$)$`E\````(/X(`^4P(/`"(B"Z@```$B+0F!F@6!. +M__[IK0H``$$/MD0D)(3`=#N)PTF#?"1X`'0-28UT)'A(B>_H`````$R)YDB) +M[^@`````@/L"#X5X"@``3(GN2(GOZ`````#I:`H``$''A0@!````````00^V +M14(\)`^'\PD```^VP/\DQ0````!)BT8@]D`V"`^$$@H``.DW!@``9F:02(N5 +M$!$``$B!PDP(``!!#[9%4,'@"$B82`'"BP*)!0````"#^`6Z!0````]'PD&( +M13M!@'X/`'0/0<9%0@!!QD8/`.F+"0``0<9%0@+I@0D``$B+E1`1``!(@<), +M"```00^V15#!X`A(F$@!PHL"B04`````#[;`9D&)13Q(BY40$0``2('"1`@` +M`$$/MD50P>`(2)A(`<*+`HD%`````(G"P>H(9D&)53[!X`AF00E%/&:!^D!! +M=0I!QD5"&>D0"0``9D&!?3X5E[@#````NB0````/1,)!B$5"Z?,(``!(BY40 +M$0``2('"1`@``$$/MD50P>`(2)A(`<*+`HD%`````$&(13E(BY40$0``2('" +M3`@``$$/MD50P>`(2)A(`<*+`HD%`````(G`J`AT!T'&13H,ZQVH!'0'0<9% +M.@OK$H/@`DB#^`$9P/?0@^`*08A%.D$/MD5'/`$9P(/@`H/`%$&(14+I9P@` +M`$B+A1`1``!(!4P(``!!#[954,'B"$ACTD@!T(L`B04`````@\@(08A%2$'& +M14(%Z3,(``!!QD5"`$$/MT5.9B7W_8/(`F9!B45.28-\)'@`=`U)C70D>$B) +M[^@`````3(GF2(GOZ`````!!QD8)_TR)]DB)[^@`````Z44(``!!QD5"!.G> +M!P``00^V14>#P`%!B$5'03I%.W-70<9%0A9)@WPD>`!T#4F-="1X2(GOZ``` +M``!,B>9(B>_H`````$''A9````"`A!X`2<>%H`````````!-B:VH````28VU +MD````$B+?2CH`````.G2!P``0<9%1P!!QD5"%[\@H0<`Z`````#I7`<``$'& +M14(4Z5('``!!QD5"".E(!P``0<9%0A3I/@<``$'&14H`Z`````!)B87P```` +M0<9%0A7I(P<``$B+E1`1``!(@<),"```00^V15#!X`A(F$@!PHL:B1T````` +M#[;;2(N5$!$``$B!PD0(``!!#[9%4,'@"$B82`'"BP*)!0````#H`````$F) +MA?@```"#XP^#^P-U"D'&14(*Z;P&``!!BX7P````!4`-`P!!.87X````>1I! +M#[9%2CP*=Q%!QD5"%8/``4&(14KIC08``$$/MD5'28-\Q5@`#X2O`0``2,<$ +M)`````!!@'X.`'1"0;\`````28U>8$B)W^@`````2(D$)$$/MD5'2(L4)$DY +M5,58=!Q(BT,(2(E3"$B)&DB)0@A(B1!!@\<!13A^#G?(08!N#@%(BPPD2(M! +M0$B%P`^$+@$``$C'0&``````]D%,!'4W2(GOZ`````!(BQ0D2(M"8,:`'`$` +M``%(BW)`N@$```!(B>_H`````$B+#"1(BT%@QH`<`0```$B+!"1(BU!`2(NU +M^`@``+\!````Z`````!(BQ0D2(M"0$B+B(````!(A<ET,0^W0CA(QX3%:`0` +M``````!(BT)`2,>`@`````````!(BW)`2(N^D````+K______]%(BPPD2(M! +M0$B%P'0X2(N0B````$B%TG0L#[=!.$C'A,5H!````````$B+04!(QX"(```` +M`````$B+04!(B[B0````_])(BQ0D2(M"0`^V4`(/MG`!2,?'`````+@````` +MZ`````!(BPPD2(M10$B+M?@(``"_!@```.@`````2(L$)$C'0$``````00^V +M14=)QT3%6`````!(BS0D2(GOZ`````!!QD5"">G#!```2(N5$!$``$B!PDP( +M``!!#[9%4,'@"$B82`'"BPJ)#0`````/MLE(BY40$0``2('"1`@``$$/MD50 +MP>`(2)A(`<*+`HD%`````,'@"`G(08E%5$&`?4(*=`>I```!`'0*0<9%0@OI +M600``$'&14(,00^V14=)@WS%6`!T4D&`?@X`#X29!```0;\`````28U>8$B) +MW^@`````2(G"00^V14=).53%6'4(08!N#@'K*I!(BT,(2(E3"$B)&DB)0@A( +MB1!!@\<!13A^#G8-Z\-(B>_H`````$B)PDB%T@^$/@0``$$/MD5'28E4Q5A! +M#[9%2XB"Z@```.G'`P``9F9FD$B)[^@`````OP$```#H`````(/K`8/[_W0* +M28M&(/9`-@ATW$'&14()Z94#``!(BY40$0``2('"3`@``$$/MD50P>`(2)A( +M`<*+"HD-``````^VR4B+E1`1``!(@<)$"```00^V15#!X`A(F$@!PHL"B04` +M````#[;`P>`("<@E_P\``#T3`0``#Y3"/2,!```/E,&$TG40A,EU##TS`0`` +M=4+I2`,``$'&14(8A-*0=`I!QD5+".D'`P``A,EFD'0*0<9%2PGI]P(``#TS +M`0``#X7L`@``0<9%2PIF9F:0Z=X"``!!#[9-1@^VT4$/MD4[@^@!.<)]%HU! +M`4&(149!@$5'`4'&14('Z;0"``!!QD5'`$'&14(>Z:4"``!!QD5"`^F;`@`` +M0<9%0B)F9I#IC@(``$'&14(CZ80"``!!QD5"`^EZ`@``2(N5$!$``$B!PDP( +M``!!#[9%4,'@"$B82`'"BPJ)#0````!(BY40$0``2('"1`@``$$/MD50P>`( +M2)A(`<*+$HD5`````(G0P>`(#[;)"<AF/0,1#X6C````B=#!Z`AF/453=`IF +M/4`##X6.````9D''13P#$69!B44^9CU%4W4?08"]%0$```)T%4'&A14!```" +M0<>%&`$``!\```#K)F9!@7T^0`-U'4&`O14!```#=!-!QH45`0```T''A1@! +M```/^`,`0<:%'`$```%,B>_H`````$'&A1P!````28M%`$B+N/@(``"^```` +M`.@`````0<9%0@/I?0$``$'&14(A0<:%%0$```#I:P$``$B+E1`1``!(@<), +M"```00^V15#!X`A(F$@!PHL"B04`````2(N5$!$``$B!PD0(``!!#[9%4,'@ +M"$B82`'"BP*)!0````!!QD5"'^D;`0``0<9%0B#I$0$``$B+E1`1``!(@<), +M"```00^V15#!X`A(F$@!PHL"B04`````2(N5$!$``$B!PD0(``!!#[9%4,'@ +M"$B82`'"BP*)!0````!!#[9-1T$/MD4[C5$!08A51P^VR0^VP(/H`3G!N`8` +M``"Z'P````],PD&(14+IF0```$B+E1`1``!(@<),"```00^V15#!X`A(F$@! +MPHL*B0T`````#[;)2(N5$!$``$B!PD0(``!!#[9%4,'@"$B82`'"BP*)!0`` +M``#!X`@)P4&)C00!``!!QD5"&NL]0<9%0AOK-DB+A1`1``!(!4P(``!!#[95 +M4,'B"$ACTD@!T(L`B04`````@^#W08A%2$'&14(<ZP5!QD5"'4F#?"1X`'0- +M28UT)'A(B>_H`````$R)YDB)[^@`````3(GN2(GOZ`````#K,$'&14(8Z<+\ +M__](B>]F9I#H`````+\!````Z`````"[/D(/`.D!_/__9F9FD&9FD$B+7"0( +M2(ML)!!,BV0D&$R+;"0@3(MT)"A,BWPD,$B#Q#C#9F9FD&9FD&9FD&9FD$B# +M[#A(B5PD"$B);"003(ED)!A,B6PD($R)="0H3(E\)#!(B?U(B?,/MTX@9H'Y +MA0`/A]\````/M\$/MK0':`@``$"`_O\/A,H```!F@_E_=R)`#[;62(N/0`D` +M`$B-!%)(C02"2,'@!4B+1`A0#[9`".M#9H'Y@0!W'4`/ML9(BY>0"0``2&G` +MR`\``$B+1!`(#[9`".L?0`^VQDB+EV@)``!(C03`2,'@!4B+A!"(````#[9` +M"#S_=%L/ML`/MHP%[@@``(#Y_W050(#^_W0/#[9[)$"`_P9U969FD&:0@/G_ +M=#%`@/[_="M`#[;&2(T40$B-%)!(P>(%28G43`.E0`D``$'&1"1+`D'&1"1* +M_^FZ!P``2(-[>`!T#$B-<WA(B>_H`````$B)WDB)[^@`````Z<<'``!F9F:0 +M9F:00`^VQDB-%$!(C1202,'B!4F)U$P#I4`)``!!#[>T),@```!F@?ZK#7<& +M0(#_`G4Z2(-[>`!T#$B-<WA(B>_H`````$B)WDB)[^@`````0<9$)$K_0<9$ +M)$L"3(GF2(GOZ`````#I5@<``+H`````0(#_('4>2(M34`^V`H/@?SQQ=@D/ +MME(!@^(/ZP</ME("@^(/1`^VZ4N-1*T`28U$A0!,C;3%R`$```^V0S@\&@^$ +MY@4``#P:=QP\$G1./!60#X2)!@``A,`/A(X%``!FD.F[!@``/"4/A"<#```\ +M)9!W$SP;#X6F!@``9F:09F:0Z5P%```\G@^$%`0``#R@D`^%B@8``.E8!@`` +M0(3_9I`/A<T"``!(BTM(@'LY`&:0=&9(A<ET2X!Y`8!U18!Y`@!U/P^V00,\ +M/'<W#[;028VT)(0```"X`````,8$,"!(@\`!2(/X%'7R@_H4#T/028V\)(0` +M``")TDB-<03H`````&9!QX0DR```````0<9$)$H9Z0@&``!!QD0D2ACV009` +M=1$/M@&#X!^#^`T/A9$!``#K"P^V`8/@'X/X#74(0<9$)$D-ZP9!QD0D22)! +M#[9T)$E(Q\<`````N`````#H`````$B#>W@`=`Q(C7-X2(GOZ`````!(B=Y( +MB>_H`````$N-1*T`28U$A0"`O,76`0````^$M04``$&^`````$N-1*T`28U$ +MA0!(P>`#3(VD!2@"``!(C1PH3(V[P`$``$R)Y^@`````2(N3,`(``$B)@S`" +M``!,B2!(B5`(2(D"#[9`23PB=`0\#74*08/&`44X=Q9WRDN-1*T`28U$A0`/ +MMH3%U@$``$0X\`^%/04``(3`#X0U!0``0;P`````9L=$)`8``$&_`````$N- +M1*T`28U$A0!(P>`#3(VL!2@"``!(C1PH3(VSP`$``$R)[^@`````2(G"2(N# +M,`(``$B)DS`"``!,B2I(B4((2(D0#[9"23PB=`0\#743#[=".&8[1"0&<@AF +MB40D!DF)UT&#Q`%%.&86=[1-A?\/A*P$``!!@']*_P^$H00``$'&1TK_3(G^ +M2(GOZ`````#IC`0``(/X`7410<9$)$D!0<9$)$K_Z48$``#V004!9I!T"&9! +M@4PD:``$2(MS2$B%]G1F28V4))@```"X`````,8$$`!(@\`!2(/X*'7R28V4 +M),````"P`,8$$`!(@\`!2(/X"'7R28V,))@```!(C58(2(M&"$F)A"28```` +M2(M""$B)00A(BT(02(E!$(M&($&)A"3`````08.\))`!````#X6X`P``0<9$ +M)$H<Z:T#``"-1@%F08F$),@```"_$"<``.@`````0<9$)$H%Z8P#``!(BTM( +M0(3_#X69````#[91!L'B"`^V007!X!`)P@^V00<)P@^V003!X!@)PD&)E"3D +M````#[81P>(8#[9!`PG"#[9!`L'@"`G"#[9!`<'@$`G0B<))B50D>$&#O"3D +M`````'4?9D&#A"3(`````;\0)P``Z`````!!QD0D2AOI"0,``(/X_W439D&! +M3"1H``1!QD0D2AOI\0(``$'&1"1*#>GF`@``0(#_(&:0=2Z`^@9T!8#Z`G4D +MC48!9D&)A"3(````OQ`G``#H`````$'&1"1*!>FS`@``9F:02(-[>`!T#$B- +M<WA(B>_H`````$B)WDB)[^@`````3(GB3(GV2(GOZ`````#IKP(``$R+0TA` +MA/\/A<P```!!#[90"L'B"$$/MD`)P>`0"<)!#[9`"PG"00^V0`C!X!@)PD&) +ME"3D````00^V2`-(P>$@00^V0`)(P>`H2`G!00^V`$C!X#A("<%!#[9``4C! +MX#!("<%!#[90!L'B"$$/MD`%P>`0"<)!#[9`!PG"00^V0`3!X!@)PD@)T4F) +M3"1X0?9`#`%T!V9!@TPD:@1!@[PDY`````!U'V9!@X0DR`````&_$"<``.@` +M````0<9$)$H;Z;@!``!F08-,)&@!0<9$)$H-Z:8!``!`@/\@9I!U+H#Z!G0% +M@/H"=22-1@%F08F$),@```"_$"<``.@`````0<9$)$H;Z7,!``!F9I!(@WMX +M`'0,2(US>$B)[^@`````2(G>2(GOZ`````!,B>),B?9(B>_H`````.EO`0`` +M0<9$)$H4Z30!``!`@/\@=2Z`^@9T!8#Z`G4DC48!9D&)A"3(````OQ`G``#H +M`````$'&1"1*%.D#`0``9F:00<9$)$H;Z?4```!`A/]FD'5M2(M#2&9!@TPD +M:`)F08-,)&H!9D&!3"1HA`"`>`,`=06`.!9W'V9!@X0DR`````&_$"<``.@` +M````0<9$)$H-Z:H```#V0`8$=`EF08-,)&H"ZP=F08-D)&K]2(M#>$F)1"0P +M2,=#>`````#K.$"`_R!U*X#Z!G0(@/H"9F:0=26-1@%F08F$),@```"_$"<` +M`.@`````0<9$)$H%ZU!F08-D)&CY0<9$)$H.ZT%`A/]U!V9!@TPD:@-!QD0D +M2@_K+4"$_W4+2(G>2(GOZ`````!!@[PDD`$```$9P(/@$X/`!4&(1"1*9F9F +MD&9FD$B#>W@`=`Q(C7-X2(GOZ`````!(B=Y(B>_H`````$R)YDB)[^@````` +M9F9FD&9FD$B+7"0(2(ML)!!,BV0D&$R+;"0@3(MT)"A,BWPD,$B#Q#C#D)"0 +MD)"0D)"0D)"0D(/B!\'B"(#.($B+1PA(+>0\``!(P>8(@>8`_P``2`'PB1`/ +MMP!FB04`````#[;`PX/B!\'B"(C*@,X02(M'"$@MY#P``$C!Y@B!Y@#_``!( +M`?")$,-F9F:09F9FD&9FD%53O0````!!N?____^[`````$&[`````$6)VD&# +MPP&X`0```$&)P$2)V4'3X$2)P;X`````N,#AY`"Z`````/?Q.?AW$8GZ*<)$ +M.<IS"(GU08G11(G3@\8!1`'!@_X0==1!@_L(=;&-!.T`````"=@/ML!;7<-F +M9F:09F:09F:02(/L$$B)'"1,B60D"$F)_$`/MMZY`````+H'````B=[H*___ +M_T$/MHPD01(``+H#````B=Y,B>?H$____TB+'"1,BV0D"$B#Q!##9F:09I!3 +MB?,/MO*Z`P```.C`_O__.-@/E,`/ML!;PV9FD&9FD$B%_W0WN@````!F9I!F +M9I`/MH0ZZ@@```^VR#S_=!,/M\%(C03`2,'@!4@#AV@)``##2(/"`4B#^@1U +MU+@`````PV9F9I!F9F:09F:09F:055-(BY\`"0``2(7;2`]$W[T`````N0`` +M``"Z!P```(GN2(G?Z&?^__^Y1````+H"````B>Y(B=_H4_[__[G0````N@`` +M``")[DB)W^@__O__N0````"Z!````(GN2(G?Z"O^__^#Q0&#_0)UJ+^@A@$` +MZ$G^__^(@T$2```/MLBZ`P```+X`````2(G?Z/[]__];7<-F9F:09F9FD&9F +MD$%455-(B?L/MH<5`0``/`(/A;(```!$BY<8`0``0;P`````O0```"I!N0`` +M``"^`````+\`````0;@$````9I"Z`0```(G0B?'3X$&%PG48C4X&T^)!"=1! +M"=&X%0```(GYT^`)Q>L)1(G`B?G3X`G%@\8!@\<%08/``X/^!77`1(G)NJ@# +M``!`M@%(B=_H`````(GINL0#``"^`0```$B)W^@`````00^WS`N+&`$``+J@ +M`P``O@$```!(B=_H`````.FX````/`,/A;````!$BY<8`0``0;P`````O0`` +M`"I!N0````"^`````+\`````0;@$````N@$```")T(GQT^!!A<)U&(U.!M/B +M00G400G1N!4```")^=/@"<7K"42)P(GYT^`)Q8/&`8/'!4&#P`.#_@1UP$2) +MR;JH`P``0+8!2(G?Z`````")Z;K$`P``O@$```!(B=_H`````$$/M\P+BQ@! +M``#WT;J@`P``O@$```!(B=_H`````&9FD%M=05S#9F9FD&9F9I!F9I!(@^P( +MB?&$TG06N/[____3P"&'&`$``.L49F9FD&9FD+@!````T^`)AQ@!``#H```` +M`$B#Q`C#9F:09F:09F:02(/L"`^W]L'F"(U.#T&X`0```+J:````O@$```#H +M`````$B#Q`C#9F:09F:09F:02(/L"(GQA-)T%KC^____T\!F(8<``0``ZQ1F +M9I!F9I"X`0```-/@9@F'``$```^WMP`!``#H`````$B#Q`C#D$B#["A(B1PD +M2(EL)`A,B60D$$R);"083(ET)"!(B?U!B=8/MI[,````1`^V;@)(BWYP2(7_ +M=`P/MM)!#[;UZ`````!(B>_H`````(#[!W=(#[;#_R3%`````$&\^P```.LV +M0;PS````ZRY!O#L```#K)D&\<P```.L>0;Q[````ZQ9!O+,```#K#D&\NP`` +M`.L&0;SS````1(GF2(GOZ`````!!#[;608UTG0!`#[;V2(GOZ`````!(BQPD +M2(ML)`A,BV0D$$R+;"083(MT)"!(@\0HPV9F9I!F9F:09F:005154TF)_+L` +M````0`^V[KH"````B>Y,B>?H@?K__Z@(=`VX`````.L@9F:09F:0OP$```#H +M`````(/#`8'[$"<``'7+N/\```!;74%<PY!(@^PH2(E<)`A(B6PD$$R)9"08 +M3(EL)"!(B?U)B<U!B=1`#[;>B=[HA/___X7`=3!!#[;TB=I(B>_H0OO__X7` +M=!ZZ`0```(G>2(GOZ/_Y__]!B$4`N`````#K"69F9I"X_____TB+7"0(2(ML +M)!!,BV0D&$R+;"0@2(/$*,-FD$B#["A(B5PD"$B);"003(ED)!A,B6PD($B) +M_4&)S40/MN)`#[;>1(GAN@$```")WNC+^?__N4````"Z`@```(G>2(GOZ+?Y +M__^)WDB)[^C=_O__A<!U3$6%[70T0?;$`705B=J^0````$B)[^B/^O__A<!T +M+NLSB=J^&````$B)[^AZ^O__A<!T&>L>9F9FD(G:OB@```!(B>_H8?K__X7` +M=0>X_P```.L&N`````"02(M<)`A(BVPD$$R+9"083(ML)"!(@\0HPV9F9I!F +M9I!!5T%6055!5%532(/L"$F)_4B)#"1%B<:)\XG5A-(/A/$```!$#[;^N60` +M``"Z`@```$2)_NCV^/__1(G^3(GOZ!O^__^%P'40N@,```!$B?Y,B>_HI_C_ +M_T`/MM6Y`0```$2)_DR)[^C#_O__0;S_____A,`/A8,!``!!O`````!%A?8/ +MCG0!``!(BQPD0;P`````08UN_T0YY74UN4````"Z`@```$2)_DR)[^A^^/__ +M26/,2`,,)+I8````1(G^3(GOZ.?]__^%P'0UZ2P!``"Y1````+H"````1(G^ +M3(GOZ$GX__](B=FZ4````$2)_DR)[^BV_?__A<`/A?P```!!@\0!2(/#`44Y +M]`^$ZP```.N#OZ"&`0#H0?C__P^VZP^VR+H#````B>Y,B>_H_/?__XGN3(GO +MZ"+]__^%P'0B00^VC4$2``"Z`P```(GN3(GOZ-?W__]!O/_____IF@```(GJ +MOF````!,B>_HO?C__X7`=`U!O`````!%A?9^9>L?00^VC4$2``"Z`P```(GN +M3(GOZ)7W__]!O/_____K6TB+'"1!O`````!F9I"Y1````+H"````B>Y,B>_H +M;/?__TB)V;J`````B>Y,B>_HVOS__X7`=0U!@\0!2(/#`44Y]'7)00^VC4$2 +M``"Z`P```(GN3(GOZ#+W__]$B>!(@\0(6UU!7$%=05Y!7\-(@^P82(E<)`A, +MB60D$$F)_$B)T$`/MM9!B<A(B<&^`````.C(_?__B<.Y5````+H"````O@`` +M``!,B>?HW_;__XG82(M<)`A,BV0D$$B#Q!C#9F9FD&9F9I!F9I!F9I!(@^P8 +M2(E<)`A,B60D$$F)_$B)T$`/MM9!B<A(B<&^`0```.AH_?__B<.Y5````+H" +M````O@$```!,B>?H?_;__XG82(M<)`A,BV0D$$B#Q!C#9F9FD&9F9I!F9I!F +M9I!!5D%505154TF)_4B)S46)QHG31`^VYKED````N@(```!$B>;H-_;__T2) +MYDR)[^A<^___A<!U$+H#````1(GF3(GOZ.CU__\/MM.Y`0```$2)YDR)[^@% +M_/__A,!U-D6%]GXX2(GKO0````!F9F:0#[83N0````!$B>9,B>_HW?O__X3` +M=0Z#Q0%(@\,!1#GU=`GKV[C_____ZP6X`````%M=05Q!74%>PV9FD&9FD$B# +M[!A(B5PD"$R)9"0028G\2(G00`^VUD&)R$B)P;X!````Z"C___^)P[E4```` +MN@(```"^`0```$R)Y^AO]?__B=A(BUPD"$R+9"002(/$&,-F9F:09F9FD&9F +MD&9FD$B#[`A(BX<`"0``2(7`2`]$QT"(-0````"Y(````$C'P@````"^#@`` +M`$B)Q^@`````2(/$",-F9I!F9I!F9I!(@^P(B?&$TG06N`$```#3X&8)AVP4 +M``#K%&9FD&9FD+C^____T\!F(8=L%```#[:W;!0``.@`````2(/$",.005=! +M5D%505154TB#[%A(B?M)B?9(BTXH2(/!`HMV'(/N`<=$)%0`````28M&,$B) +M1"0P28M&*`^V40&`^@%U$$''1E``````Z?,$``!F9I"`^@)U28!Y`@%U-DB+ +MAP`)``!(A<!(#T3'2(N0^`@```^V00.(@FX4```/MD$#B(+^*```0<=&4``` +M``#IKP0``$''1E#^____Z:($``!,C7@!@/H$#X7U`0``#[9!`X/H.SP!#X?F +M`0``00^V;P)(BY_X"```0`^V]4B)W^@`````B<*$P'0-#[;`@+P#:`@``/]U +M4$B+F_@(``!(@<.0%```2(N[^`@``.@`````B>HHP@^V\DB)W^@`````B<*$ +MP'0-#[;`@+P#:`@``/]U%$''1E#_____3(GW0?]62.DA!```#[;"#[:$`V@( +M``"`^H%W9`^VR$AIR<@/``!!#[9W!$$/ME<%P>(000^V1P;!X`@)PD$/MD<' +M"<*)5"0\00^V5PC!XA!!#[9'"<'@"`G"00^V1PH)PHE4)$!(B<U(`ZN0"0`` +M#X3I````@'U8`'49Z=X```!!QT90_____TR)]T'_5DCIF0,``$&\`````,9$ +M)$<`3(UM2(M$)#Q(B40D&$F-5PM(B50D$$`/MO:)="0,3(GOZ`````!(C5CP +M2(M54$B)15!,B6L02(E3&$B)`@^V0TD\#70$/")U74$/MD<#/#MT(CP\=5!- +MB?"+3"0\BU0D0(MT)`Q(B=_H`````,9$)$<!ZS)(B[LH`0``2(M4)!A(BW0D +M$.@`````38GPBTPD/(M4)$"+="0,2(G?Z`````#&1"1'`4&#Q`%$.&58#X=J +M____@'PD1P`/A<\"``!!QT90_____TR)]T'_5DCINP(``&9FD&:0@/H##X6< +M````@'D"`69FD`^%@@````^V0SZ--``/MGD#B?J)^,'Z'_?^B=4YUGY;3(UI +M!$0/MN(/ME$$1(GF2(G?Z`````"-1?R#^`-V&(U%](/X`W80C47L@_@#=@B- +M1>2#^`-W!TB!PY`4``!!#[95`$2)YDB)W^@`````0<=&4`````#I%0(``$'' +M1E#^____Z0@"``!!QT90_O___^G[`0``@#D%=CF`>03^9I!U,4B-5"142(N[ +M^`@``$R)]N@`````A,`/A=(!``#'1"14`````$''1E#_____Z;T!``!,BZL` +M"0``387M3`]$ZTB)R[@"````2"G(2(E$)"A(8_9(B70D(.GG````9I`/MBM, +MC6(!#[;0]L(!=&F+3"14B>N-1`T`03M&(`^'3`$``$&`/P%U)XG)2`-,)#!! +MB>B^`0```$R)[^BP]___.>AT*^DF`0``9F9FD&9FD(G)2`-,)#!!B>B^```` +M`$R)[^B)]___.>@/A0`!```!7"143(GCZVU(8\5*C1P@2(M$)"A(`=A(.T0D +M(`^/W0```$&`/P%U'$&)Z$R)X;X!````3(GOZ!7Z__^%P'0@Z;L```!!B>A, +MB>&^`````$R)[^CY^?__A<`/A:````"`.P!U!H![`0!T"[\0)P``D.@````` +M2(U3`0^V0P&$P`^%"____P^V`X3`='L/MMBY5````+H"````O@````!,B>_H +M"O#__XM4)%1!BT8@*=`YPP]'V$&`/P%U'HG12`-,)#!!B=BZ`````+X!```` +M3(GOZ*GV___K'(G12`-,)#!!B=BZ`````+X`````3(GOZ(OV__^%P'@&`40D +M5.L(0<=&4/____^Y5````+H"````O@````!,B>_HDN___V:028M6.$B%TG0& +MBT0D5(D"3(GW0?]62$B#Q%A;74%<05U!7D%?PV9F9I!F9F:09F:02(/L"$B+ +MAP`)``!(A<!(#T3'2(NX^`@```^VAV\4``"$P'0-@^@!B(=O%```A,!U'<8% +M``````"Y(````$C'P@````"^#@```.@`````2(/$",-F9F:09F:09F:09F:0 +M2(/L"$B+AP`)``!(A<!(#T3'2(NX^`@``("_;A0```!U)("';Q0```'&!0`` +M```!N2````!(Q\(`````O@X```#H`````$B#Q`C#9F:09I!(@^P82(E<)`A, +MB60D$$F)_$B)T$`/MM9!B<A(B<&^`````.@H^/__B<.Y5````+H"````O@`` +M``!,B>?H;^[__XG82(M<)`A,BV0D$$B#Q!C#D)"0D)"0D)"0D)"0D)")]DB+ +M1PA(+0`"`0!(`<:+!HD%`````,-F9F:09F9FD(GV2(M'"$@M``(!`$@!QHD6 +MPV9F9I!F9F:09F:09F:04TB)^TB+5PA(@>H``@$`QX*```$``````(N"!`$! +M`(D%`````(#,`8F"!`$!`+H$````O@S"``#H`````+JX"P``O@C"``!(B=_H +M`````+H!``P`O@#"``!(B=_H`````+H$````O@S#``!(B=_H`````+JX"P`` +MO@C#``!(B=_H`````+H!``P`O@##``!(B=_H`````$B+0PA(+;0!``!FQP`` +M`$B+0PA(+90!```/MP!FB04`````#[?`2(M3"$B!ZI0!``"#R`1FB0)(BT,( +M2"V8`0``9L<`!`!FQX-L%```__];PV9F9I!F9F:02(M7"$B!Z@`"`0"+@FP` +M`0")!0`````,R(F";``!`,-(BU<(2('J``(!`(N":``!`(D%`````"0W"?") +M@F@``0##9F9FD&9F9I!F9I!F9I!32#F_^`@``'5HB?#`Z`)!NP````!$#[;0 +M26/:B?"#X`-$C0Q`N`<```!$B<G3X/?01(M$GU1!(<!$B42?5(32=`ZX!``` +M`-/@1`G`B42?5$ECPHM4AU1!#[;SP>8(@<90P@``2(N_^`@``.@`````6\.) +M\,#H`H/H!$&[`0```.N39F9FD&9F9I!F9I!F9I!!5T%6055!5%532(/L"$B) +M_4&)]D&)UT&)S4B+1PA,BR!,B>?H`````$B)PTB%P`^$ZP```$R)Y^@````` +M2(G"2(7`#X37````QD5<`<9#..'&0SD!QD,Z$,9#);L/MD5;9HE#($R)8RC' +M0S20````2(U"$$B)0TA(B5-X2(G!2(G"N`````#&!!``2(/``4@]D````'7P +MQD$!@L8!0$2(<0)$B'D#1(AI!$&`_0)W(4B->0A*C12M`````('B_`,``$F- +MM"2H$@``Z`````#K*TF+A"2H$@``2(E!"$B->1!!#[;5C125^/___TACTDF- +MM"2P$@``Z`````!(QX.@`````````$B->UB^`````.@`````2(G>3(GGZ``` +M``!(@\0(6UU!7$%=05Y!7\.02(/L.$B)7"0(2(EL)!!,B60D&$R);"0@3(ET +M)"A,B7PD,$B)_4&)]4&)UD&)STB+1PA,BR!,B>?H`````$B)PTB%P'1[3(GG +MZ`````!(B<)(A<!T:\9%7`'&0SCAQD,Y`<9#.A#&0R6[#[9%6V:)0R!,B6,H +MQT,TD````$B-0A!(B4-(2(E3>,9``0+&0A!`1(AH`D2(<`-$B'@$2,>#H``` +M``````!(C7M8O@````#H`````$B)WDR)Y^@`````2(M<)`A(BVPD$$R+9"08 +M3(ML)"!,BW0D*$R+?"0P2(/$.,-F9F:09F:09F:09F:0059!54%455-(B?M! +MB?5!B=9(BT<(2(LHN0(```"Z`````+X`````Z`````"`>UP`=!A(B>_H```` +M`+\!````Z`````"`>UP`=>A(BT,(2(L`2`6H$@``@'@"`'@[@$@"@+D!```` +MN@````"^`````$B)W^@`````@'M<`'0:9I!(B>_H`````+\!````Z`````"` +M>UP`=>A$B>C`Z`)$#[;@N0$```!$B>*^`P```$B)W^@`````@'M<`'0;9F:0 +M2(GOZ`````"_`0```.@`````@'M<`'7H2(M#"$B+,$2)Z??1@^$#183V#Y7" +MP>(##[:$#J@2``"#X.<)T(B$#J@2``"Y`0```$2)XKX#````2(G?Z`````!; +M74%<05U!7L-F9F:09F9FD&9FD&9FD$B#["A(B5PD"$B);"003(ED)!A,B6PD +M($B)^TB)]0^W1B!F/84`=QM,BZ^0"0``#[?`#[:$!V@(``!,:>#(#P``ZPU, +MBZ^0"0``0;PXN`\`2(M52(!Z`0)U%DB+0@1(B8.H$@``2(M"#$B)@[`2``!( +MBW5X2(7V=`A(B=_H`````$B)[DB)W^@`````0\9$)5P`2(M<)`A(BVPD$$R+ +M9"083(ML)"!(@\0HPY"0D)"028G13(N70`D```^W1B"Z8)X!`&8]A0!W%P^W +MP`^VA`=H"```2(T40$B-%)!(P>(%38V!(`0``$'&@2`$```G9H%^..$!=2E$ +M#[9..D&-0?\\`7<,0;D/````1")..^LN08U![T&Y#P```#P!=B!FD$F-!!)! +MN0````!(@WA@`'0-0;D/````1"*(@0```$$/MD`!@^#P1`G(08A``;@!```` +M9H%^..$!=18/MD8Z@^@!/`$/E\`/ML!F9F:09F:0B<+!X@=!#[9``8/@?PG0 +M08A``0^V009!B$`"#[8!08A``P^V005!B$`'#[9!!T&(0`\/MD$"08A`!`^V +M00-!B$`%#[9!!$&(0`8/MD$!08A`#`^V00I!B$`(#[9!"T&(0`D/MD$,08A` +M"@^V00A!B$`+#[9!"4&(0`W#9F:09I!`#[;'PV9F9I!F9F:09F:0B?@/ML3# +M9F9FD&9FD&9FD,9')`)(BT=00(AP`DB+1U#&0`<`2(M'4(A0#,-F9F:0#[9' +M/8A&`@^V1SR(1@,/MD<[B$8$#[9'.HA&"L-F9I`/MD=!B$8"#[9'0(A&`P^V +M1S^(1@0/MD<^B$8*#[9'/8A&"P^V1SR(1@S#9F:09I"%TGXAN0````!F9F:0 +M9F:0B=`IR(/X`@^=P`^VP(U,`0$YRG_K\\-F9I!F9I!F9I!(@^PH2(D<)$B) +M;"0(3(ED)!!,B6PD&$R)="0@2(G[2(G508GV#[9'.#PJ="4\*G<1/"@/A=T` +M``!F9F:09F:0ZQ`\B'0J/(H/A<@```!FD.L>1`^V8T!$#[9K/TB)[DB)W^@` +M````ZQQF9F:09F:01`^V8T5$#[9K1$B)[DB)W^@`````QD4%0(N#E````*D` +M``$`=#!$B&4`1(AM"$*-!/4`````B$4!#[9#.#PH=`0\B'4+QD4&8.M;9F:0 +M9I#&109AZU"I```$`&9FD&:0="!$B&4!1(AM"0^V0S@\*'0$/(AU!L9%!B7K +M*L9%!C7K)$2(90$/MD,Z@^`/"$4%#[9#.#PH=`0\B'4&QD4&R.L$QD4&RDB+ +M'"1(BVPD"$R+9"003(ML)!A,BW0D($B#Q"C#9F9FD&9FD&9FD&9FD`^V1SH* +M1SL*1SP*1ST/ML`/ME=`@^(!"=!T%;HD````O@4```#H`````//#9F9FD,9& +M!NQ(QX>@`````````,-(@^P@2(D<)$B);"0(3(ED)!!,B6PD&$B)^TB)]0^V +M1S@\+W0+/(]U6>L79F:09I!$#[9G0$0/MF\_Z`````"0ZP]$#[9G140/MF]$ +MZ`````#&105`]H.6````!'021(AE`42(;0G&109"ZQ9F9F:01(AE`0^V0SJ# +MX`\(107&109`2(L<)$B+;"0(3(MD)!!,BVPD&$B#Q"##9F:09F:02(GQQD(% +M0`^V1C@\-70&/)%U(^L;#[=':(/@`8/X`1G`@^#]@^@6B$(&ZR1F9F:0QD(& +MZNL:NB0```"^!0```$B)S^@`````\\-F9I!F9I#V03D"=`3&020`\\-F9F:0 +M]D<\\'0/NB0```"^!0```.@`````\\-F9I!F9I!F9I!(@^P(28GPN`````!F +M9F:0Q@0(`$B#P`%(@_@-=?)!#[9`.#PU#X2=````/#5W*3PH=&(\*'<./!L/ +MA:$#``"0Z9L````\*G1,/"]F9I!FD`^%B@,``.M8/(]F9I!F9I!T3CR/=Q(\ +MB'0K/(IF9F:0#X5J`P``ZQT\D69FD&9FD'1&/.$/A58#``!F9I!F9I#IA``` +M``^V\DB)RDR)Q^@`````QT0D!`$```#I.`,``$B)SDR)Q^@`````QT0D!`$` +M``#I(`,``$B)RDR)QN@`````QT0D!`$```#I"`,``$'V0#P!="'&009PQD$$ +M`,9!`P#&00(`QD$%0,=$)`0!````Z>`"``#&00;@QT0D!`$```#ISP(``$&` +M>#D!#X6\`@``08!X.AP/A[$"``!!#[9`.O\DQ0````#&00<$QT0D!`$```#I +MG`(``,9!!P#'1"0$`0```.F+`@``QD$&[,=$)`0!````Z7H"``#&00;OQ@$# +M00^V0#N#R$"(00''1"0$`0```.E;`@``QD$&[\8!!\=$)`0!````Z4<"``#& +M009`QD$!`<9!!4#'1"0$`0```.DN`@``QD$&[\8!`T$/MD`[@\@(B$$!QT0D +M!`$```#I#P(``,9!!N_&`0+'1"0$`0```.G[`0``QD$&[\8!@L=$)`0!```` +MZ><!``#&00;OQ@$&QT0D!`$```#ITP$``,9!!N_&`8;'1"0$`0```.F_`0`` +MQD$&XT$/MD`[B$$!QT0D!`$```#II@$``,9!!K#&`=C&00-/QD$$PL=$)`0! +M````Z8H!``#&00:PQ@'9QD$#3\9!!,+'1"0$`0```.EN`0``QD$&L,8!VL9! +M`T_&003"QT0D!`$```#I4@$``/9':`%T$<9!!NK'1"0$`0```.D[`0``QD$& +MY\=$)`0!````Z2H!``#&00;OQ@&JQT0D!`$```#I%@$``,9!!N_&`57'1"0$ +M`0```.D"`0``QD$&+\9!`0'&00(0QT0D!`$```#IZ0```,9!!N1!#[9`/(@! +M00^V0#V(00A!#[9`.XA!!<=$)`0!````Z<$```!!#[9`.XA!!D$/MD`\B`%! +M#[9`/8A!`D$/MD`^B$$#00^V0#^(001!#[9`08A!"D$/MD!`B$$!QT0D!`$` +M``#I?0```,9!!NA!#[9`/(@!00^V0#V(00A!#[9`.XA!!4$/MD`^B$$"00^V +M0#^(00-!#[9`0(A!!$$/MD!!B$$!QT0D!`$```#K.,=$)`0!````0?9`/`%T +M*<9!!G#&000`QD$#`,9!`@#&005`QT0D!`$```#K"V9FD,=$)`0`````BT0D +M!$B#Q`C#9F9FD&9F9I!F9F:09F:04TB#["!(B?-(BTY(2,<$)`````!(QT0D +M"`````!(QT0D$`````!(QT0D&`````#V@:<````$=`U(BY'(````2(/J`>L& +MBU%X@^H!@'LX)75A2(G02,'H&(@$)$B)T$C!Z!"(1"0!2(G02,'H"(A$)`*( +M5"0#]H'5````$'44QD0D!@+&1"0'`+@(````Z:X```!(C7PD!$B-L>H```"Z +M!````.@`````N`@```#IC@```$B)T$C!Z#B(!"1(B=!(P>@PB$0D`4B)T$C! +MZ"B(1"0"2(G02,'H((A$)`-(B=!(P>@8B$0D!$B)T$C!Z!"(1"0%2(G02,'H +M"(A$)`:(5"0']H'5````$'45QD0D"@+&1"0+`+@@````ZR1F9F:02(U\)`A( +MC;'J````N@0```#H`````+@@````9F:09I!(BWM(2&/02(GFZ`````!(@\0@ +M6\-F9F:09F9FD&9FD%-(B?-(BU=02(L*#[9&.#PO=%\\+W<K/!L/A#$!```\ +M&W<//!(/A44!``!F9I!FD.M`/"AT/#PJ#X4R`0``9I#K,#R*="P\BG<8/#5F +M9F:0#X3Z````/(@/A1(!``!FD.L0/(]T##SA#X4"`0``9I#K=?9':`%T"H&+ +ME```````!`#V1VH0#X04`0``2(-_8``/A0D!```/MD,X/"AT$#PJ=`P\B'0( +M/(H/A?$```#V0@P!=10/MG((2(G/Z`````"$P`^$UP```(![)($/A,T```"! +MBY0```````$`N`$```#IO@```(!^.0$/A:0```"`?CH<#X>:````2`^^3CJX +M`0```$C3X*GV/\`==2.I"$`&`'4,J0``(`!U(V9FD.MS@XZ4````"+@!```` +M9I#K<X..E`````&X`0```.ME@XZ4````(+@!````ZU=FD/9':`%T"H&+E``` +M````!`"#BY0````!N`$```#K-V:0BX.4````J0``(`!T&/9':`%T'0T```0` +MB8.4````N`$```#K$+@`````ZPEF9F:0N`$```!;PY"0D)"0D)"0D$B+?PA% +M#[;`0<'@!`^VTL'B"$$)T$2)P(/(!(3)1`]%P$&#^?]T&4B-EP#^_O]$B<@E +M__\#`(F"!,@``$&#R`)$B0;#9F9FD&9F9I!F9F:02(M'"$@M``(!`(/.`8FP +M`,@``,-F9F:09F9FD&9F9I!!5%5308GT2(M'"(7V=$Q(+0`"`0!(C:@`R``` +MBX``R```B04`````NP````"H`74/ZR&+10")!0````"H`704OPH```#H```` +M`(/#`40YXW7AZP>X`````.L%N/____];74%<PV9F9I!F9F:09F:055-(@^P8 +M2(G[QT0D%`````!(BV\(QH=P%`````^V%0````!(C70D%$&Y`````$&X`@`` +M`+D!````Z.+^__^+="042(G?Z";___^^H(8!`$B)W^@Y____A<!U54B-A0#^ +M_O^+@`S(``")!0````")1"04/1]C``!U-\>#8!0``!]C``#'@V04``````0` +MQX-H%``````!`$C'@W@4````````9K@``.E7`@``9F:09I#'1"04`````$B+ +M:PC&@W`4```!#[85`````$B-="040;G_____0;@"````N0$```!(B=_H./[_ +M_XMT)!1(B=_H?/[__[X0)P``2(G?Z(_^__^%P'5N2(V%`/[^_XN`#,@``(D% +M`````(E$)!0]'T,``'0M/1]$``!U2<>#8!0``!]$``#'@V04``````<`QX-H +M%``````!`.F3`0``9F:0QX-@%```'T,``,>#9!0`````!`#'@V@4``````$` +MZ6T!``#'1"04`````$B+:PC&@W`4````#[85`````$B-="040;D`````0;@" +M````N0$```!(B=_H=?W__XMT)!1(B=_HN?W__[X0)P``2(G?Z,S]__^%P'50 +M2(V%`/[^_XN`#,@``(D%`````(E$)!0]OT,``'4RQX-@%```OT,``,>#9!0` +M````(`#'@V@4````$```2,>#>!0```````!FN```Z>H```#'1"04`````$B+ +M:PC&@W`4````#[85`````$B-="040;D`````0;@"````N0$```!(B=_HT/S_ +M_XMT)!1(B=_H%/W__[X0)P``2(G?Z"?]__^%P'5G2(V%`/[^_XN`#,@``(D% +M`````(E$)!0][Q$``'0)/>\2``!U0NL@QX-@%```[Q$``,>#9!0`````!`#' +M@V@4``````$`ZS['@V`4``#O$@``QX-D%``````(`,>#:!0``````0#K'KC_ +M____ZR=F9I!FD$C'@W@4````````N`````#K$$C'@W@4````````N`````!( +M@\086UW#9F9FD&9FD$B#["A(B5PD$$B);"083(ED)"!(B?N)]TF)U$B+:PB` +M^02X!`````]'R$B+@W@4```/ME`$2(UT)`Q!B?E$#[;!N0$```!(B=_HPOO_ +M_XMT)`Q(B=_H!OS__[X0)P``2(G?Z!G\__^Z_____X7`=2!(C84`_O[_BX`, +MR```B04`````B40D#$&)!"2Z`````(G02(M<)!!(BVPD&$R+9"0@2(/$*,-F +M9F:09F:09F:055-(@^P82(G[2(G52(N'>!0```^V4`M(C40D%$&)\4&X`0`` +M`+D!````2(G&Z"[[__^+="042(G?Z'+[__^^$"<``$B)W^B%^___NO____^% +MP'4:2(M#"$@M]#D``(L`B04`````B$4`N@````")T$B#Q!A;7<-F9I!F9I!F +M9I!!5T%6055!5%532(/L&$B)^T&)S4&)]T&)UH7)#X2.````O0````!,BV,( +M2(N#>!0```^V4`)!N?____]!N`$```"Y`0```$B-="042(G?Z(SZ__^+="04 +M2(G?Z-#Z__^^$"<``$B)W^CC^O__A<!U*4F-A"0`_O[_BY`,R```B14````` +M1(GX(=!$./!U![@`````ZQ^)5"04OPH```#H`````(/%`40Y[0^%=____[C_ +M____2(/$&%M=05Q!74%>05_#9F9FD&9F9I!F9F:04TB#[!!(B?M(BX=X%``` +M#[802(UT)`Q!N?____]!N`````"Y`````.CC^?__BW0D#$B)W^@G^O__OA`G +M``!(B=_H.OK__X7`=2:YX),$`+H"````O@,```!(B=_HS_[__[H`````A<!T +M"V9FD&9FD+K_____B=!(@\006\-F9I!(@^PH2(E<)!A(B6PD($B)^XGUQD0D +M%_](C50D%^@`````A<!U<H!\)!<`='-(B=_H2____X/X_W1>2(N#>!0```^V +M4`I(C70D$$&)Z4&X`````+D`````2(G?Z##Y__^+="002(G?Z'3Y__^^$"<` +M`$B)W^B'^?__A<!U&[G@DP0`N@````"^`P```$B)W^@<_O__A<!T"+C_____ +MZP:0N`````!(BUPD&$B+;"0@2(/$*,-F9F:09F9FD&9F9I!(@^Q82(E<)"A( +MB6PD,$R)9"0X3(EL)$!,B70D2$R)?"102(G]08GVB<M(@[]X%`````^$^`(` +M`$F)UT6$P`^$7`$``(/^_W47#[>'8!0``&:)`K@!````Z?D"``!F9I"#_OYU +M$HN'9!0``(D"N`$```#IWP(``(/^_744BX=H%```B0*X`0```.G(`@``9I`! +M\XE<)`P[GV04```/AXX"``")\X/C_$&)]$&#Y`-T8DR-;"0DN00```!,B>J) +MWNC\^___@\,$N@0````Y7"0,<PU$B>!$*?"+3"0,C10(1#GB=BY$B>%,B?]F +M9I!F9I")R$$/MD0%`(@'2(/'`8/!`3G1=>N)T$0IX(/H`4V-?`<!1(MD)`Q! +M@^3\1#GC<RI,C6PD)+D$````3(GJB=Y(B>_HB?O__XM$)"1!B0=)@\<$@\,$ +M03G<=]LY7"0,#X;C`0``3(UD)"2Y!````$R)XHG>2(GOZ%7[__^+="0,*=X/ +MA,`!``"Y`````+H`````00^V!!1"B`0Z@\$!2(/"`3GQ#X2>`0``Z^9F9I!F +MD(/^_W4K@#H/=1'&AW$4```!N`$```#IFP$``,:'<10```"X`0```.F*`0`` +M9F9FD(E,)!2)R`'P.X=D%```#X=,`0``@+]Q%`````^$/P$``(GPN@````#W +MMV@4``"%T@^%C0```("_<!0```!T#>@`````A<`/A10!``!(B>_HG/S__X/X +M_P^$`P$``$B+A7@4```/ME`&2(UT)"1%B?%!N`````"Y`````$B)[^A]]O__ +MBW0D)$B)[^C!]O__OA`G``!(B>_HU/;__X7`#X6\````N>"3!`"Z`````+X# +M````2(GOZ&7[__^%P`^%G0```(7;#X2<````QT0D$`````"+1"0018LD!T2+ +M;"0010'U2(M="$B!ZP`"`0!(B>_H^OO__T2)HPC(``!(BX5X%```#[90!46) +MZ4&X!````+D`````2(UT)"1(B>_HW?7__XMT)"1(B>_H(?;__[X0)P``2(GO +MZ#3V__^%P'4@N8@3``"Z`````+X!````2(GOZ,GZ__^%P'079F:09I"X```` +M`.L?N`$```!F9F:0ZQ2#1"00!(M$)!`Y1"04=N;I3?___TB+7"0H2(ML)#!, +MBV0D.$R+;"1`3(MT)$A,BWPD4$B#Q%C#D)"0D)"0D+@`````PV9F9I!F9I!F +M9I"X`````#D]`````'XW2&/'2,?!`````$B-!$!(P>`##[<4"&:)%@^W5`@" +M9HE6`@^V5`@(B%8(#[9$"`F(1@FX`0```//#9F9FD&9FD&9FD+@@*P``PV9F +M9I!F9I!F9I"XT````,-F9F:09F:09F:0N`@```##9F9FD&9FD&9FD+X````` +M0;@`````N0`````/MI0YZ`@``(#Z_W1*C8&`````9CV!`'<'@\8!ZSEFD`^V +MPDB+EV@)``!(C03`2,'@!8"\$!4!```#=1A!@\`!08U``X/X!G8.@\8!0;@` +M````ZP.#Q@%(@\$!2(/Y!G6?B?##9F9FD&9F9I!F9F:02(GY0;H`````0;L` +M````0;F`````0`^V]H/&`69F9I!%B<@/MH'H"```//]T4&9!@?F!`'<*08/" +M`>L]9F9FD`^VP$B+EV@)``!(C03`2,'@!8"\$!4!```#=1E!@\,!08U#`X/X +M!G8008/"`4&[`````.L$08/"`40YUG072(/!`4&#P0%!@?F&````=9%!N``` +M``!$B<##9F9FD&9FD//#9F9FD&9F9I!F9I!F9I#&A\L`````PV9F9I!F9F:0 +MN/\```!(A?]T1+[_____N0`````/MH0YZ@@``#S_="`/ML!(BY=H"0``2(T$ +MP$C!X`4/MH00%`$``$`XQ@]'\$B#P0%(@_D$=<I`#[;&\\.X`````,-F9F:0 +M9F:09F:02(NW^`@``+\`````0;@`````N0`````/MI0QZ`@``(#Z_W1/C8&` +M````9CV!`'<%@\<!ZSX/ML)(BY9H"0``2(T$P$C!X`6`O!`5`0```W4?08/` +M`4&-0`.#^`9V%8/'`4&X`````.L*9F9FD&9FD(/'`4B#P0%(@_D&=9I(B[;X +M"```2('&D!0``+$`9F:0#[:4,>@(``"`^O]T2HV!@````&8]@0!W!X/'`>LY M9I`/ML)(BY9H"0``2(T$P$C!X`6`O!`5`0```W4808/``4&-0`.#^`9V#H/' -M`4&X`````.L#@\<!2(/!`4B#^09UGT&)^4B+MO@(``!(@<:`%```L0`/MI0Q -MZ`@``(#Z_W1/C8&`````9CV!`'<%@\<!ZSX/ML)(BY9H"0``2(T$P$C!X`6` -MO!`5`0```W4808/``4&-0`.#^`9V%8/'`4&X`````.L*@\<!9F9FD&9FD$B# -MP0%(@_D&=9I!.?H/C?X'``!%.=$/GL#'`P`````\_P^$XP<```^VP$B-/(4` -M````2`''2(T\^$C!YP=)`[OX"```Z`````!(B<=(A<`/A+4'```/MH`5`0`` -M/`(/A<,!``#'`P0````/MG4'2(L7#[='0+D`````@+P":`@``/\/A)<!``!` -M@/XC#X=^`0``0`^VQO\DQ0````!!QP0D15,#$;@!````Z6T!``!(C4PD++H0 -M`P``O@$```#H`````(3`#X1%`0``BT0D+(7`#X1``0``)?\#``!IP!`G``"- -MB!"6K_^Z<XBK3(G(]^*)R"G0T>@!PL'J!T&)%"2X`0```.D2`0``2(U,)"RZ -M"`,``+X!````Z`````"$P`^$Z@```(M$)"R%P`^$Y0```"7_`P``:<#H`P`` -MC8C(Y??_NLMK**^)R/?BB<@IT-'H`<+!Z@1!B10DN`$```#IMP```$B-3"0L -MN@@#``"^`0```.@`````A,`/A(\```"+1"0LA<`/A(H```#!Z!`E_P,``&G` -MZ`,``(V(R.7W_[K+:RBOB<CWXHG(*=#1Z`'"P>H$08D4)+@!````ZUQ(C4PD -M++H,`P``O@$```#H`````(3`=#B+1"0LA<!T-R7_`P``:<#H`P``C8C(Y??_ -MNLMK**^)R/?BB<@IT-'H`<+!Z@1!B10DN`$```#K#+@`````ZP6X`0````^V -MR`^VP>GU!0``/`,/A=L%``#'`P0```!$#[9-!TC'!"0`````2,=$)`@````` -M2,=$)!``````2,=$)!@`````2(L7#[:"_0```(3`#X2A````0;@`````28GC -M#[;`@^@!3(U0`;X`````N`$```")QT2)P=/G#[:$%NH(```\_W0H#[;`2(T$ -MP$C!X`5(B<%(`XIH"0``2(N!B````$B+0"`/MD`I.?AT$$B#Q@%(@_X$#X0K -M!0``Z[Q(A<D/A"`%```/MT%`@+P":`@``/\/A`X%``"`N14!```##X4!!0`` -M2XD,PTF#P`%-.=`/A7+___]!@/E5#X?7!```00^VP?\DQ0````!!QP0D0`,# -M$;@!````Z;\$``!(C4PD+$&-00&#X`-(BSS$NC0#``"^`0```.@`````A,`/ -MA),$```/MU0D+(E4)"R!^O__``!U$D''!"3_____N`$```#I=00``+C`X>0` -MB=&Z`````/?Q08D$)+@!````Z5D$``!(C4PD+$B+?"0(NA`#``"^`0```.@` -M````A,`/A#,$``"+1"0L)?\#``!IP!`G``"-B!"6K_^Z<XBK3(G(]^*)R"G0 -MT>@!PL'J!T&)%"2X`0```.D!!```2(U,)"Q(BWPD"+H(`P``O@$```#H```` -M`(3`#X3;`P``BT0D+"7_`P``:<#H`P``C8C(Y??_NLMK**^)R/?BB<@IT-'H -M`<+!Z@1!B10DN`$```#IJ0,``$B-3"0L2(M\)`BZ"`,``+X!````Z`````"$ -MP`^$@P,```^W1"0N)?\#``!IP.@#``"-B,CE]_^ZRVLHKXG(]^*)R"G0T>@! -MPL'J!$&)%"2X`0```.E0`P``2(U,)"Q(BWPD"+H,`P``O@$```#H`````(3` -M#X0J`P``BT0D+"7_`P``:<#H`P``C8C(Y??_NLMK**^)R/?BB<@IT-'H`<+! -MZ@1!B10DN`$```#I^`(``$B-3"0L2(L\)+H4`P``O@$```#H`````(3`#X33 -M`@``BU0D+('B_P,``$AITCJX`0!(@<+C2@,`2,'J!4BX0WBT<<1:?`I(]^)( -MP>H'08D4)+@!````Z9T"``!(C4PD+$B+?"0(NA0#``"^`0```.@`````A,`/ -MA'<"``"+5"0L@>+_`P``2&G2.K@!`$B!PN-*`P!(P>H$2+B%\&CCB+7X%$CW -MXDC!Z@A!B10DN`$```#I00(``$B-3"0L2(M\)!"Z%`,``+X!````Z`````"$ -MP`^$&P(``(M4)"R!XO\#``!(:=+F$T`"2('"#?].!$BXO4)ZY=64O]9(]^)( -MP>H708D4)+@!````Z>D!``!(C4PD+$B+?"08NA0#``"^`0```.@`````A,`/ -MA,,!``"+5"0L@>+_`P``2&G2KD7A`$B!PBE2KP%(N-LTMM>"WAM#2/?B2,'J -M$D&)%"2X`0```.F1`0``2(U,)"Q(BWPD"+JP`P``O@$```#H`````(3`#X1K -M`0``BT0D+,'H#X/@`4&)!"2X`0```.E8`0``@'T(`'012(M$)`B!H!@!``#_ -M]___ZP](BT0D"(&(&`$````(``!(BWPD".@`````N`$```#I'@$``(!]"`!T -M$4B+1"0(@:`8`0``_^___^L/2(M$)`B!B!@!````$```2(M\)`CH`````+@! -M````Z>0```"`?0@`=!%(BT0D"(&@&`$``/_?___K#TB+1"0(@8@8`0```"`` -M`$B+?"0(Z`````"X`0```.FJ````@'T(`'012(M$)`B!H!@!``#_O___ZP]( -MBT0D"(&(&`$```!```!(BWPD".@`````N`$```#K<X!]"`!T$4B+1"0(@:`8 -M`0``___^_^L/2(M$)`B!B!@!``````$`2(M\)`CH`````+@!````ZSR`?0@` -M=!%(BT0D"(&@&`$``/___?_K#TB+1"0(@8@8`0`````"`$B+?"0(Z`````"X -M`0```.L%N``````/ML#K"F9FD&:0N``````/ML#K$K@`````ZPO'`P````"X -M`````$B#Q#!;74%<PV9F9I!F9F:09F:005=!5D%505154TB#[#A)B?R)\$B) -MTTF)S4&)]D'![AA!B?=!P>\0#[;4B%0D$$"(="0/2(VK@!0``+@`````D,8$ -M&`!(@\`!2#T`*0``=?!,B6L@BP4`````B$-`@\`!B04`````1(AS.T2(>SH/ -MMD0D$(A#.0^V5"0/B%,XQD-!`$$/MP0D9HE#,$$/MT0D`F:)0S)!BT0D!(E# -M-$R);2`/MD-`B$5`1(AU.T2(?3H/MD0D$(A%.8A5.,9%00%!#[<$)&:)13!! -M#[=$)`)FB44R08M$)`2)130/MT,R9CTD)P^$'@$``&8])"</AXX```!F/40A -M#X0*`0``9CU$(7=.9CT@(0^$^@```&8]("%W$V8]4`</A?X```!F9F:0Z>$` -M``!F/2(A9F9FD&9FD`^$T````&8]0"%F9I!F9I`/A=0```#INP```&9FD&:0 -M9CT0)P^"P````&8]$2=FD`^&H````&8M("=F@_@"9I`/AZ0```#IBP```&9F -MD&:09CV`)P^$?````&8]@"=FD'<N9CU`)W1N9CU`)V9F9I!W"&8],"=U<NM< -M9CU$)V:0=%1F/6`G=6+K3&9FD&9FD&8]@')T0&8]@')F9I!F9I!W"&8]@B=U -M0NLL9CV`D6:0=`YF/8"4=3+K'&9FD&9FD&;'0SR`D<9#/@1FQT4\@)'&13X$ -MZQ1FQT,\@)3&0SX$9L=%/("4QD4^!$$/MD0D"(A#0D$/MD0D"(A%0KD```0` -MN@````"^`@```$R)[^@`````2(D#N0`@``"Z`````+X`````3(GOZ`````!( -MB<%(B4,02(L#2(7`#X3E`0``2(7)#X3<`0``2(V0``(!`$B)4PA(C8````(` -M2(D#2`4`0```2(E%`$B)50A(B4T01(L%`````$6%P'YGO@````"Y`````$C' -MQP`````/MP0Y9D$[!"1U/P^W@0````!F03M$)`)U,(N1`````(/"`8F1```` -M`$2+B0````!%A<ET%40YRG80B="Z`````$'W\8F1`````(/&`4B#P1A$.<9U -MJDB+0PA(+>!]``#'``'P`P!(BT,(2"W8?0``QP`!``#H2(M[(+YX````Z``` -M``")PB4`<```/0`@``!V$0^V\DB+>R"Z>````.@`````1(AT)"-$B'PD(@^V -M5"00B%0D(0^V1"0/B$0D(+T`````0;D`````2<?$`````$R-;"0@9D.#/"$` -M#X2E````08"Y```````/A(<```!!N`````!(8\5,C13%`````$V)ZTN-!`)( -MC32%`````+D$````_$R)W_.F#Y?"#Y+`.,)U/D$/MH$`````@\`!08B!```` -M`$$/MI$`````A-)T(#C0=AP/ML`/MLJZ`````&;W\4&(D0````!F9F:09F:0 -M08U0`4F#P`%!#[:!`````#G0?XV#Q0%)@\$@@_T$#X5/____QX,0"0```0`` -M`+@!````ZP6X`````$B#Q#A;74%<05U!7D%?PV9F9I!F9I!!5%532(G[2(GU -M2(M_>$&\`0```$0B([@`````9F9FD,8$*`!(@\`!2(/X*'7R2(NW2`H``$B) -M\K``9F:09F:0Q@00`$B#P`%(/0`"``!U\$B-3C:Z`````&9F9I!F9I`/MD13 -M(8@$40^V1%,@B$11`4B#P@%(@_H4=>5(C4X4L@`/MD13#8@$40^V1%,,B$11 -M`4B#P@%(@_H*=>5(C4XNL@`/MD1328@$40^V1%-(B$11`4B#P@%(@_H$=>5( -MB7482(M#4$B#P`%(B44`2(-[8`!U0?8#`70\2(M#:$B%_P^5PDB%P'02A-)T -M#@^V0%N`O`=H"```_W4;2(M#<(32=!Q(A<!T%P^W0$"`O`=H"```_W0)#[9# -M`8A%#.L@Z`````!(A<!T$H"X%0$```)U"0^V0P&(10SK!,9%#/\/MD,"B$4- -M#[9#7(A%#L9%$A#&11$01(G@C10`OOW___]`(G4*"=9`B'4*P>`%#[9-"(/A -MWPG!B$T(#[=#6$C!Z`>#X`'!X`:#X;\)P8A-"`^W0UA(P>@"@^`!#[95"8/B -M_@G"B%4)#[=#6DC!Z`/!X`>#X7\)P8A-"`^W0UI(T>B#X`$!P(/B_0G"B%4) -M#[=#6$C!Z`.#X`'!X`:#XK\)PHA5"0^W0UI(P>@$P>`'@^)_"<*(50F#R1"( -M30@/M@/0Z(/@`8/F_@G&0(AU"@^V`X/@!(/F^PG&0(AU"F;'110`$`^V@\P` -M``"(12!;74%<PT%6055!5%5308GU08G62(G+3(G%2(7)=!>X`````&:0Q@08 -M`$B#P`%(/:P```!U\$B%[709N`````!F9I!F9I#&!"@`2(/``4B#^"AU\DR+ -MI_@(``!!#[;U3(GGZ`````")PF:%P'0.#[?`08"\!&@(``#_=4A-BZ0D^`@` -M`$F!Q(`4``!)B[PD^`@``.@`````02G%00^V]4R)Y^@`````B<)FA<`/A$\# -M```/M\!!@+P$:`@``/\/A#T#```/M\)!#[:$!&@(``!F@?J!``^'4@(``$F+ -MC"20"0``#[?`2&G`R`\``$B--`%(A=L/A-8```!(BU802(72='5!#[:$).@( -M```\_W08#[;`2&G`R`\``$B-!`&_@````$@YPG0E00^VA"3I"```//]T'`^V -MP$AIP,@/``!(C00!2#G"=0F_@0```$"(>P*`?EH`=#"Z``````^VP@^V3`9P -MN`$```#3X`E#((/"`3A66G81Z^3&0P+_2(M&"`^V0`V)0R#&`P$/MD99B$,! -M2(M&>$B)0P1(BX:(````2(E##$B+AI````!(B4,4BX:@````B4,<1(EK)`^V -MAL````")0RBX`````.DV`@``2(7M#X0H`@``187V#X@?`@``#[:&P````$$Y -MQ@^-#P(``$ECQDB-!$!(P>`$2`'P2(V0P`````^V2@B(30`/ME()B%4!2(N` -MT`````^V`(/@#XA%`H#Y`W0N@/D#=PZ`^0(/A:D```#IJP```(#Y!&9FD&9F -MD'1`@/D2#X60````9F:09I#K7TECQDB-!$!(P>`$2(N4!M`````/MD(!@^`' -M#[;`P>`(#[92`@'0C02``<")103K8$ECQDB-!$!(P>`$2(N$!M`````/MD`" -MA,!U"<=%!`````#K/`^VP(/H%(E%!.LQ26/&2(T$0$C!X`1(BY0&T`````^V -M0@+!X`@/ME(#`="-!(`!P(E%!.L'QT4$`````$B-30A)8\9(C01`2,'@!$B- -MA`;0````2(U0"$B+0`A(B44(2(M""$B)00A(BT(02(E!$$B+0AA(B4$8N``` -M``#IV0````^WP$B-!,!(P>`%2(G%20.L)&@)``#&0P+_Q@,"28N4)&@)```/ -MMD00.XA#`4B+A8@````/MD`-B4,@#[:%%0$``#P"=2O'0P1(4%0`QT,,4F]C -M:\=#$&5T4W3'0Q1O<B``#[=U/DB->Q?H.L7__^M'/`-U(<9#`1#'0R`!```` -MQT,$2%!4`,=##$5*,S1FQT,0,`#K(L9#!'8/MW4\2(U[!>@"Q?__QD,,9`^W -M=3Y(C7L-Z/'$___&0QQR#[9U.4B->QWHH,3__T2):R2X`````.L%N/____]; -M74%<05U!7L-F9F:09F:0055!5%5308GU2(G3N`````#&!!@`2(/``4@]*`T` -M`'7P2(NO^`@``$$/MO5(B>_H`````(G"9H7`=`T/M\"`O`5H"```_W5%2(NM -M^`@``$B!Q8`4``!(B[WX"```Z`````!!*<5!#[;U2(GOZ`````")PF:%P`^$ -MD0,```^WP("\!6@(``#_#X2``P``#[?"#[:$!6@(``!F@?J!``^'C0(``$B+ -MC9`)```/M\!(:<#(#P``3(T$`4F+4!!(A=)T=`^VA>@(```\_W08#[;`2&G` -MR`\``$B-!`&^@````$@YPG0C#[:%Z0@``#S_=!P/ML!(:<#(#P``2(T$`4@Y -MPG4)OH$```!`B',"08!X6@!T,KH`````#[;"00^V3`!PN`$```#3X`E#((/" -M`4$X4%IV$>OBQD,"_TF+0`@/MD`-B4,@Q@,!00^V0%F(0P%)BT!X2(E#!$F+ -M@(@```!(B4,,28N`D````$B)0Q1!BX"@````B4,<1(EK)$&`N,``````#X2+ -M`@``0;D`````00^V^4ACQTB-#(!(C0S+2(T$0$C!X`1,`<!(C9#`````#[9R -M"$"(L:@````/ME()B)&I````2(N`T`````^V`(/@#XB!J@```$"`_@-T-$"` -M_@-W$4"`_@(/A=,```!FD.G>````0(#^!&9F9I!F9I!T2T"`_A(/A;4```!F -M9F:0ZWU(8\](C01)2,'@!$F+E`#0````2(T,B0^V0@&#X`</ML#!X`@/ME(" -M`="-!(`!P(F$RZP```#IA@```$ACUTB-!%)(P>`$28N$`-`````/MD`"A,!U -M$4B-!)+'A,.L`````````.M:2&/72(T4D@^VP(/H%(F$TZP```#K1$ACSTB- -M!$E(P>`$28N4`-````!(C0R)#[9"`L'@"`^V4@,!T(T$@`'`B83+K````.L2 -M2&/'2(T$@,>$PZP`````````2&/'2(T4@$B-E-.@````2(UR$$B-!$!(P>`$ -M28V$`-````!(C4@(2(M`"$B)0A!(BT$(2(E&"$B+01!(B4802(M!&$B)1AA! -M@\$!13B(P`````^&Z0```.E?_O__#[?`2(T$P$C!X`5)B<1,`Z5H"0``QD," -M_\8#`DB+E6@)```/MD00.XA#`4F+A"2(````#[9`#8E#($$/MH0D%0$``#P" -M=2W'0P1(4%0`QT,,4F]C:\=#$&5T4W3'0Q1O<B``00^W="0^2(U[%^@>P?__ -MZTL\`W4AQD,!$,=#(`$```#'0P1(4%0`QT,,14HS-&;'0Q`P`.LFQD,$=D$/ -MMW0D/$B->P7HY,#__\9##&1!#[=T)#Y(C7L-Z-'`___&0QQR00^V="0Y2(U[ -M'>A^P/__1(EK)+@`````ZPRX_____^L%N`````!;74%<05W#05154T&)]$B) -MT[@`````D,8$&`!(@\`!2#VD#```=?!(BZ_X"```00^V]$B)[^@`````B<)F -MA<!T#0^WP("\!6@(``#_=4=(BZWX"```2('%@!0``$B+O?@(``#H`````$2) -MYBG&0`^V]DB)[^@`````B<)FA<`/A&<#```/M\"`O`5H"```_P^$5@,```^W -MP@^VA`5H"```9H'Z@0`/AV<"``!(BXV0"0``#[?`2&G`R`\``$R-!`%)BU`0 -M2(72='0/MH7H"```//]T&`^VP$AIP,@/``!(C00!OH````!(.<)T(P^VA>D( -M```\_W0<#[;`2&G`R`\``$B-!`%(.<)U";Z!````0(AS`D&`>%H`=#*Z```` -M``^VPD$/MDP`<+@!````T^`)0R"#P@%!.%!:=A'KXL9#`O])BT`(#[9`#8E# -M(,8#`4$/MD!9B$,!28M`>$B)0P1)BX"(````2(E##$F+@)````!(B4,408N` -MH````(E#'$&`N,``````#X1E`@``0;D`````00^V^4ACQTB-#(!(C0S+2(T$ -M0$C!X`1,`<!(C9#`````#[9R"$"(<20/ME()B%$E2(N`T`````^V`(/@#XA! -M)D"`_@-T,$"`_@-W#T"`_@(/A<````#IR@```$"`_@1F9I!FD'1%0(#^$@^% -MI@```&9F9I#K<4ACSTB-!$E(P>`$28N4`-````!(C0R)#[9"`8/@!P^VP,'@ -M"`^V4@(!T(T$@`'`B43+*.MZ2&/72(T$4DC!X`1)BX0`T`````^V0`*$P'4. -M2(T$DL=$PR@`````ZU%(8]=(C122#[;`@^@4B433*.L^2&//2(T$24C!X`1) -MBY0`T````$B-#(D/MD("P>`(#[92`P'0C02``<")1,LHZP](8\=(C02`QT3# -M*`````!(8\=(C12`2(U4TR!(C7(,2(T$0$C!X`1)C80`T````$B-2`A(BT`( -M2(E"#$B+00A(B48(2(M!$$B)1A!(BT$82(E&&$&#P0%%.(C`````#X;E```` -MZ8'^__\/M\!(C03`2,'@!4F)Q$P#I6@)``#&0P+_Q@,"2(N5:`D```^V1!`[ -MB$,!28N$)(@````/MD`-B4,@00^VA"05`0``/`)U+<=#!$A05`#'0PQ2;V-K -MQT,09713=,=#%&]R(`!!#[=T)#Y(C7L7Z".]___K2SP#=2'&0P$0QT,@`0`` -M`,=#!$A05`#'0PQ%2C,T9L=#$#``ZR;&0P1V00^W="0\2(U[!>CIO/__QD,, -M9$$/MW0D/DB->PWHUKS__\9#'')!#[9T)#E(C7L=Z(.\__^X`````.L,N/__ -M___K!;@`````6UU!7,-F9F:09F9FD&9FD$%455-!B?1(B=.X`````)#&!!@` -M2(/``4@]``$``'7P2(NO^`@``$$/MO1(B>_H`````(G"9H7`=`T/M\"`O`5H -M"```_W5'2(NM^`@``$B!Q8`4``!(B[WX"```Z`````!$B>8IQD`/MO9(B>_H -M`````(G"9H7`#X39`0``#[?`@+P%:`@``/\/A,@!```/M\(/MH0%:`@``&:! -M^H$`#X?9````2(N-D`D```^WP$AIP,@/``!(C30!2(M6$$B%TG1Q#[:%Z`@` -M`#S_=!@/ML!(:<#(#P``2(T$`;^`````2#G"=",/MH7I"```//]T'`^VP$AI -MP,@/``!(C00!2#G"=0F_@0```$"(>P*`?EH`=#"Z``````^VP@^V3`9PN`$` -M``#3X`E#((/"`3A66G81Z^3&0P+_2(M&"`^V0`V)0R#&`P$/MD99B$,!2(M& -M>$B)0P1(BX:(````2(E##$B+AI````!(B4,4BX:@````B4,<N`````#IW@`` -M``^WP$B-!,!(P>`%28G$3`.E:`D``,9#`O_&`P)(BY5H"0``#[9$$#N(0P%) -MBX0DB`````^V0`V)0R!!#[:$)!4!```\`G4MQT,$2%!4`,=##%)O8VO'0Q!E -M=%-TQT,4;W(@`$$/MW0D/DB->Q?HL;K__^M+/`-U(<9#`1#'0R`!````QT,$ -M2%!4`,=##$5*,S1FQT,0,`#K)L9#!'9!#[=T)#Q(C7L%Z'>Z___&0PQD00^W -M="0^2(U[#>ADNO__QD,<<D$/MG0D.4B->QWH$;K__[@`````ZP6X_____UM= -M05S#2(/L*$B)'"1(B6PD"$R)9"003(EL)!A,B70D($B)^TF)]$R+=WA(BT9( -M2(DX2(M'8$B%P'4:QH:R`````DB)]_^6R````.EJ!@``9F:09I#V0$P"=!K& -MAK(````"2(GW_Y;(````Z4H&``!F9I!FD$R)]^@`````2(G%2(7`9I!U'D'& -MA"2R`````DR)YT'_E"3(````Z1H&``!F9I!FD,>`E`````````!,B6!H2(M# -M8$B)12A(BT-@#[=`.&:)12#&122`00^VA"2P````/`(/A&D!```\`G<*A,!T -M')#I0@,``#P##X3P`0``/`20#X4Q`P``Z;@!``!(BT-@]D!H`0^$GP```$$/ -MMH0DL0```*@"=`;&13B(ZQ"#X`0\`1G`@^`%@^AVB$4X28N4))````!!#[>, -M))@```#&13D`2(G02,'H.(A%.DB)T$C!Z#"(13M(B=!(P>@HB$4\2(G02,'H -M((A%/4B)T$C!Z!B(13Y(B=!(P>@0B$4_2(G02,'H"(A%0(A50<9%0@#&14,` -MB<AFP>@(B$5$B$U%QD5&`,9%1P#K;4$/MH0DL0```*@"=`;&13@HZQ"#X`0\ -M`1G`@^`%@\`JB$4X28N4))````!!#[>,))@```#&13D`2(G02,'H&(A%.DB) -MT$C!Z!"(13M(B=!(P>@(B$4\B%4]QD4^`(G(9L'H"(A%/XA-0,9%00!(BT-@ -M2`7L````2(E%4,9%,"`/M\'!X`F)132#C90````"Z?D!``!F9F:000^VA"20 -M````/!!W!?8#`G4.0<:$)+(````&Z20$``!(C7TX#[;028VT))@```#H```` -M`$B+0V!(!>P```!(B450QD4P((&-E```````$`#&126K0?:$)+$````" -M`0``08N$))0```")133I@@$``$$/MH0DL0```(/@,#P@=1'&13@;QD4Y`<9% -M/`#I80$``,9%.#7I6`$``$B+0V`/MD!(J`%T)Z@$=".!C90``````"``00^W -ME"2<````9D$[E"22````=1/K8V9FD$'&A"2R````!NEF`P``00^VA"2;```` -M/.-T13SC=Q,\0G0]/+!T'3Q`=2=F9I!FD.LN/.QT#CSO="8\Y69F9I!U$.L< -M9D&)E"22````9F:0ZPY!QH0DL@````;I%`,``,9%.+!!#[>$))````"(13E! -M#[>$))(```"(13I!#[>$))0```"(13M!#[>$))8```"(13Q!#[>$))@```"( -M13U!#[:$))H```"(13Y!#[:$))L```"(13]!#[:$))$```"(14!!#[:$)),` -M``"(14%!#[:$))4```"(14)!#[:$))<```"(14-!#[:$))D```"(141!]H0D -ML0````9T)D$/MX0DG````,'@"8E%-(.-E`````3K#D'&A"2R````!NE/`@`` -M2,>%H`````````!!#[:$)+$```"H!@^$'P(``*@"=`F#C90````(ZP>#C90` -M```03(UM6$F+G"2X````2(7;=`M!]H0DL0````%U-DF+A"3`````2(7`#X0* -M`@``28NV2`H``+H`````3(GG_]"%P`^$\0$``$F+GD@*``!(A=MT.4B)[^@` -M````O@````!,B>_H`````$B#PQ"+4_!(BW/X3(GOZ`````"+0_1(@\,0A<`/ -MA8D!``#KX+X`````3(GOZ`````"+130]``@``'<[3(GWZ`````!(B<%(A<!U -M#D'&A"2R````"^E?`0``2(M`$$B)14A(B4UXBU4T2(MQ&$R)[^@`````ZU0] -M```!`'<_3(GW9F9FD.@`````2(G!2(7`=0Y!QH0DL@````OI&0$``$B+0!!( -MB45(2(E->(M5-$B+<1A,B>_H`````.L.0<:$)+(````&Z>X```!!#[:$)+$` -M``"H!`^$T````$&`O"2P`````W4>28NT)*````!(A?9T$4B+?4B+533H```` -M`.FG````28N4)+@```!(A=)U$TF+A"3`````2(7`#X6X````ZV%,BVU(J`%U -M"DB)TV9FD&:0ZRE)BX0DP````$B%P'0<28NV2`H``+H!````3(GG_]"%P'0' -M28N>2`H``$B#PQ"+4_!(BW/X3(GOZ`````"+0_!)`<6+0_1(@\,0A<!U*.O> -MBT4T2(M-2(7`=!N)PDB)R,8``$B#P`%(@^H!=`GK\8.-E`````%(B>Y,B??H -M`````.LQ2(GN3(GWZ`````!,B>=!_Y0DR````.L9NP````#I2O[__TR+;4AF -M9I!F9I#I6O___TB+'"1(BVPD"$R+9"003(ML)!A,BW0D($B#Q"C#9F9FD&9F -M9I!F9I!F9I!54TB#[`A(B?U(B?.X`````,8$&`!(@\`!2#V`````=?"#O1`) -M```!#Y1#$P^V53H/MDTY#[9U.`^V13N(0P.(4P*(2P%`B#.`2Q$0#[=%,&:) -M0P0/MT4R9HE#!HN%$`D``(A#<,9#$B`/MU4R9H'Z("%T!V:!^B(A=4C&0Q<" -M2(U#/,=#/%)O8VO'0T!E=%)!QT`(240@4\=`#%-$(#+'0!`Q,G@@QT`40V]N -M=,=`&')O;&QFQT`<97+&0!X`Z0D!``"-@O#8__]F@_@!=A)F@?I`(70+9H'Z -M1"$/A:L```#&0Q<$#[=5,HV"\-C__V:#^`%W1$B-0SS'0SQ2;V-KQT-`9712 -M0<=`"$E$(#+'0`PW,7@@QT`04T%3(,=`%$-O;G3'0!AR;VQL9L=`'&5RQD`> -M`.F3````9H'Z0"%T"V:!^D0A#X6!````2(U#/,=#/%)O8VO'0T!E=%)!QT`( -M240@4\=`#%-$(#+'0!`Q-'@@QT`40V]N=,=`&')O;&QFQT`<97+&0!X`ZT#& -M0Q<(2(U#/,=#/$1A=&''0T!#96YTQT`(97(@-\=`##(X,"#'0!!3051!QT`4 -M($-O;L=`&'1R;VS'0!QL97(`#[9#$O9C%X3`NH#___\/1,*(0Q!(C4,8QT,8 -M2&EG:,=#'%!O:6['0`AT(%1EQT`,8VAN;\=`$&QO9VG'0!1E<RP@QT`826YC -M+L9`'`!(BX4("0``2(7`=`I(BT`02(E#:.L(2(M%$$B)0VC'0V``(```2(M] -M(+Y\````Z`````")PH'B\`,``,'J!(A3<8/@#XA#<TB+?2"^@````.@````` -MB<*!X@``\`/!ZA2(4W(E```/`,'H$(A#=$B#Q`A;7<-FD$%7059!54%455-( -M@^P(28G]B?5(B=.X`````&9FD&:0Q@08`$B#P`%(/=````!U\(EK"(/]/WX* -M28'%@!0``(/M0$ACQ;H`````28.\Q6@$````#X7$`@``2&/%28F<Q6@$``!, -MB6MX2(F+@````$R)@Y````!!@'U1`0^%EP(``(']A0````^/=0(``$$/MH0% -M:`@``#S_#X1D`@``#[;`9HE$)`8/M\!(:<"8`0``28G$30.E0`D``$'V1"1+ -M!`^$/`(``$&+1"1()0#__P`]``#_``^%)P(``$'V1"1,!`^$F`$``$'&A"3H -M`````$$/MD0D2$B)PH/B!DB#^@9U.:@!#X0,`0``0<9$)$H%0<9$)$L$00^V -ME"2!````28MT)%A)BWPD4$R)X>@`````N@$```#IX@$``$B#^@0/A=,!``"H -M`0^$RP$``$F+7"1028M$)&!(A<`/A84```!!QD0D2@-!QD0D2P2`>PX`=$^] -M`````$R-<V!,B??H`````$B)PDB+0VA(B5-H3(DR2(E""$B)$(!Z2O]T&$DY -MU'030<:$).D````!N@$```#I9P$``(/%`0^V0PXYZ'^Z08"\).D````!#X1( -M`0``3(GF3(GOZ`````"Z`0```.DX`0``@'A"``^%*0$``&:#8$[]28M$)&!F -MQT!.(`!)BW0D8$R)[^@`````N@$```#I!P$``$F+1"10#[9`#4&`?3X`="V[ -M``````^VZ`^VRTB)Z$C3^*@!=`^Z`````(G.3(GOZ`````"#PP%!.%T^=]M! -MQD0D2P9!QD0D2@5F0<>$),@``````$R)YDR)[^@`````N@$```#IG@```$V+ -M9"1008!\)`X`=%]!O@````!-C7PD8$R)_^@`````2(G"28M$)&A)B50D:$R) -M.DB)0@A(B1"`>DK_="0/MD))/")T!#P-=1A(8\5)QX3%:`0```````"Z```` -M`.L_9I!!@\8!13AT)`YWK`^W5"0&2(G>3(GOZ`````"Z`0```.L;2&/%2<>$ -MQ6@$````````N@````#K!;H!````B=!(@\0(6UU!7$%=05Y!7\.0D$B+!0`` -M``!(B4<(2(D]`````,-F9F:09F:09F:09F:0BP4`````!:@"!`##9F9FD$B% -M_W0;2(L72(72=`Q(A?9T!TB+0@A(B09(B=##9F:02(L5`````.O?9F9FD&9F -MD(M&%$B-A`>H`@0`PV9F9I!32(GS2('L``$``$B+1PA(BW\02(VT)(````#_ -M4#A(BT,(2(GF2(M[$/]0.`^V1"0!.(0D@0```'8.N`$```!(@<0``0``6\-R -M)@^V1"0".(0D@@```'?B<A8/MD0D`SB$)(,```!WTG(&,<#KT6:0N/_____K -MR&9FD&9FD&9FD$%454B)_5-(BQT`````2(7;=0KK>TB+&TB%VW1S2(M#$$B% -MP'1Q2(M5"$@[4`AUY4B+<!!(BWT0_U)(A,!TUDB+<Q!,C6,02(7V=1WK8V:0 -M2(GOZ`````"%P'A538LD)$F+-"1(A?9T2$B+10A(BY```0``2(72=-=(.T8( -M==%(BW802(M]$/_2Z\UF9I!FD#'`6UU!7,-(QT4``````$B)71BX`0```$B) -M:Q!;74%<PTF+!"1(B5T82(E%`+@!````28DL).O*9F9FD&9F9I!(BP4````` -M2(D'BT<02(D]`````(7`=!*+!0````")1Q0#1Q")!0````#SPV9F9I!!5%6) -M_5-(BQT`````2(7;=#%`.'L(1`^VYW4*ZR5FD$`X:PAT'4B+0VA(A<!F9I!T -M"42)Y__0A<!U"$B+&TB%VW7=2(G86UU!7,-F9I!FD%-(B?-(@^PP@#T````` -M`G0_2(MW&$B-5Q@QR4@Y\G0B.8Z@_/__2(GP=0WK'F9FD#F(H/S__W032(L` -M2#G09I!U[HE+,$B#Q#!;PX/!`>O+@[^D`@0`('>X2(M&:$B+NX````!(B>;_ -M4'A(BU-X#[9$)`P#0D")0S#KRF9FD&:02(L5`````+C0````2(72=!@QR8M" -M'$B+$CG!#T+(2(72=?"-@=````#SPV9FD&:02(M7&$B-3QA(.<IT*CFRH/S_ -M_TB-@G#\__]U$^L=9I`YLJ#\__](C8)P_/__=`I(BQ)(.<IUZ3'`\\/SPV9F -MD%-(BU\02(7;=!QF9I!F9I!(BT,(2(M[$/^0V````$B+&TB%VW7J6\-F9F:0 -M9F9FD$B)_DB+/^G5_O__9F:09I"+5S"%TG@'QT<P______/#,<"%]G0=,<DQ -MTF9FD&9FD`^V!X/"`4B#QP$!P3GR=?`/ML'SPV9F9I!F9F:09F:02(L%```` -M`$B%P'0N2(M0$$B%TG0=2#EZ$'4-9F:09I#K&D@Y>A!T$DB+$DB%TF:0=?!( -MBP!(A<!UTO/#\\-FD$B+3QA(@\<82#GY=$-,8\KK"$B+"4@YSW0V@+F`_/__ -M!$B-@7#\__]VZ#FQJ/S__W7@A=)X'4R+@8C\__]-A<!TT$LY1,A@=<GSPV9F -MD&:0,<##2(.YB/S__P!UM?/#D$%428G\54F-;"084^@`````28M<)!A(.>MT -M+69FD&:0BW/X2(V[</S__X7V=!)(BX-X_/__2(M`6$B%P'0"_]!(BQM(.>MU -MV$R)YV9FD&:0Z`````!)BT0D&$@YZ'4+D.L:2(L`2#GH=!*+2/2%R9!T\%M= -M05RX`0```,-;74%<,<##9F9FD&9FD&9FD&9FD$%4,<!)B?Q54X"_D`($``!U -M+4B+7Q!(A=MT(C'M9F:02(M#"$B+>Q#_D*@```!(BQL)Q4B%VW7H0(3M=0<Q -MP%M=05S#3(GGZ`````!;0`^VQ5U!7,-F9F:09F9FD&9FD$%6055!5%5(B?U3 -MZ`````!(BYTP`0``28G&2(7;#X2<````08G%2(M#"$B)VDR-I3`!``!$*?"% -MP'X0Z8\```!(BT((1"GHA<!_.DB+0BA(A<!T!$R)8"!(B84P`0``2,="(``` -M``!(B<-(QT(H`````$B+>AC_4A!(BY4P`0``2(72=;M(B>_H`````$B%VW0, -M2(N%,`$``$@YV'0)6UU!7$%=05[#6TB+<`A(BWT(74%<05U$*?9!7ND````` -M6TB)[UU!7$%=05[I`````$B)[^@`````Z[EF9F:09F:054B)_5-(B?-(@^P( -MZ`````!(BU,@2(G!2(72=!Q(BT,H2(7`=`A(B5`@2(M3($B)`DC'0R`````` -MBP-(BY4P`0``2(722(T$`4B-C3`!``!(B4,(="6)QDB+0@@I\(7`?@SK,DB+ -M0@@I\(7`?RA(C4HH2(M2*$B%TG7I2(E3*$B)&4@YG3`!``!(B4L@="-(@\0( -M6UW#2(E3*$B)&4B-0RA(.9TP`0``2(E+($B)0B!UW4B+?0B+,TB#Q`A;7>D` -M````9F9FD&9FD&9FD&9FD%5(B?U32(/L"$B+5B!(A=)T7DB+1BA(BX\P`0`` -M2(7`=`A(B5`@2(M6($B)`DC'1B@`````2(N%,`$``$C'1B``````2(7`="=( -M.<%T(HM8".@`````2(M]"$B#Q`@IPXG>6UWI`````&9F9I!F9I!(@\0(6UW# -M9F:09F:09F:054B)_5-(@^P(2(M?$$B%VW48ZRY(BT,(2(M[$/^0T````$B+ -M&TB%VW08@'MH`'3D2(M#"$B+>Q`Q]O]04&9FD.O22(/$"$B-M3@!``!(B>]; -M7>D`````9F:09F:09F:0051)B?Q54TB+7Q!(A=MU"NLT2(L;2(7;="Q(BT,( -M2(M[$/^0X````(![:`!TY$B+0PA(BWL0O@$```#_4%!(BQM(A=MUU$F+7"08 -M28UL)!A(.>MU"NLR2(L;2#GK="J`NX#\__\!2(V[</S__W7H2(N#>/S__TB+ -M0%A(A<!TV/_02(L;2#GK==:`/0``````=05;74%<PTF-G"0X`0``3(GG2(G> -MZ`````!!QX0D.`$```"'DP-)QX0D2`$```````!(B=Y-B:0D4`$``$R)YUM= -M05SI`````&9F9I!F9I!!54F)_4%454B)]5-(@^P(2(7V='U(BT4(2(M]$/^0 -MX````(!]:``/A;<```!)BUT838UE&$PYXW4.ZS]F9F:02(L;3#GC=#.`NX#\ -M__\!2(V[</S__W7H2#FKZ/S__W7?2(N#>/S__TB+0%A(A<!TS__02(L;3#GC -M=<U(BVT`2(7M=!M(@\0(2(GH6UU!7$%=PTB+;Q!(A>T/A7;___^`/0`````` -M=-Q)C9TX`0``3(GO2(G>Z`````!!QX4X`0```(>3`TG'A4@!````````2(G> -M38FM4`$``$R)[^@`````ZZ!(BT4(2(M]$+X!````_U!0Z33___]F9F:09F:0 -M4TB)^^@`````2(G!QT`0`````$B-@-````!(C5%02(E!2(M##"W0````B4%` -M2(U!&$B)01A(B4$@,<!F9I!FD,8$$`!(@\`!2#V`````=?!;2(G(PV9F9I!F -M9F:09F:02(/L&$B)'"1(B6PD"(G53(ED)!`QTCEN"$F)_$B)\W(@2(GWZ``` -M``"):!!(B<),B2!(B5@(BT,(@\`!*>B)0PA(BQPD2(ML)`A(B=!,BV0D$$B# -MQ!C#9F:09F:09F:0B?!(C;>P````B<+I`````(M&$`-'"(/H`8E'".D````` -M9F9FD&9F9I!F9F:09F:02(GX2(L_2(G&2(''L````.D`````9F9FD&9F9I!F -M9I!!5D%528G]051,C6<855-(BU\83#GC=1#K6F9FD&9FD$B+&TPYXW1,@+N` -M_/__`4B-NW#\__]UZ`^V@]3\__^H0`^%N@$``(`]``````!TT*@"=<RH`0^% -MYP$``/:#U/S__P1UNX"+U/S__R1(BQM,.>-UM$F+72A)C6TH2#GK=!%(C7OH -MZ`````!(BQM(.>MU[TF+;1A,.>4/A-````"0@+V`_/__!$B-O7#\__]V#DB# -MO8C\__\`#X1R`0``2(MM`$PYY77928M=&$PYXP^$FP```$4Q]NL/9F9FD&9F -MD$B+&T@YZW19@+N`_/__`4B-NW#\__]UZ/:#U/S__R!TWTB+@ZC\__^`H]3\ -M___;2(7`=1CI\@```&9F9I!F9I!(BP!(A<`/A-\```!(@W@8`'3M2(L;0;X! -M````2#GK=:=)BUT823G<="5F9I!F9I#V0_`!2(VK</S__W0*2(.[B/S__P!T -M*DB+&TPYXW7A28N%F`($`$B%P`^$NP```%M=05Q)BWT(28G#05U!7D'_XP^V -MDX#\__^`^@1V$DB+@_#^__](A<!T%$@Y:`AT#H#J`76S]H/4_/__`G2JBWTP -MA?\/B(4```#VA8`#```"=)8Q]DR)[^@`````2(7`2(G"=(1(.<4/A'O____V -M@(`#```"=&B`I8`#``#]Z6;____H`````.D5_O__183V9I`/A<K^__^`/0`` -M```!9F:0#X6Z_O__Z`````#IL/[__^@`````Z83^__];74%<05U!7L/H```` -M`.D/_O__2(GN3(GOZ"CU___I:____XM%,(E",,=%,`````#I^/[__Y!!5T%6 -M055!5%532(G[2('LB````$B%_TR+9Q@/A,P```!%,?9(BT,(2(M[$$B)YO]0 -M.`^V1"00.P4`````#XZ4````3(U[(.LG9F9FD&9FD$0Y:RA!@]8`BQ4````` -M#[9$)!"#P@$YT(D5`````'YG]D0D$0%U$`^V!0````!$.?`/A(D```!$BVLH -M08.$)*`"!``!3(G_Z`````!(B<5(BT,(BS4`````2(M[$$F)V$C'P0````!( -MB>K_4&B$P'6/2(GN3(G_Z`````!!@ZPDH`($``'K@4B+&\<%``````````!( -MA=L/A3?___]!BX0DH`($`(/H`87`08F$)*`"!`!U0$R)Y^B$_/__ZS9FD`^V -M!0````!(Q\8`````3(GG2,<%``````````!(B1T`````:<!`0@\`B04````` -MZ`````!(@<2(````6UU!7$%=05Y!7\-F9F:09F:09F:0055)B=5!5$F)]%5( -MB?U32(/L"$B+7Q!(B968`@0`2(7;=0KK+$B+&TB%VW0D2(M#"$B+>Q#_D/`` -M``"$P'7FQH60`@0``4B#Q`A;74%<05W#2(L=`````$B%VW099F:02(M#.$B% -MP'0%2(GO_]!(BQM(A=MUZDV%Y'0828M$)`A)BWPD$+X!````_U!00<9$)&@! -M2(M]$,>%H`($``$```#H`````$2+C:`"!`!%A<ETE$V%[7092(/$"$B)[UM= -M05Q!7>D`````9F9FD&9FD+^@A@$`Z`````!(B>_H`````$2+A:`"!`!%A<!U -MXNE3____9F9FD&9FD&9FD&9FD$B#[!A(B6PD"$R)9"002(G]2(D<)$B+7QA) -MB?2#JZ`"!``!A=)X2>@`````2(7`=$I$BY.@`@0`1872=!-(BQPD2(ML)`A, -MBV0D$$B#Q!C#2(G?2(ML)`A(BQPD3(MD)!!(@\08Z<;Z__]F9I!F9I!(C7\@ -MZ`````#KMDB+10A,B>?_D(````!(C7T@3(GFZ`````#KFV9F9I!F9I!F9I!! -M54%454B)_5-(@^P(3(LO28M=.$V-93CK$V9FD&9FD$B->^A(BQM(.6]0=$)) -M.=QU[DB+10A(BT!02(7`=`5(B>__T$B+A9`#``!(BY68`P``2(GN28U]<$B) -M4`A(B0)(@\0(6UU!7$%=Z0````!(BU<82(M'($B-3QA(B4((2(D02(E/($B) -M3QC&A[(````"Z`````#KE69F9I!F9F:005=)B==!5DF)SD%508GU05152(G] -M4TB#[`A(BT<82(M0&$B#P!A(.<)U$>G&````2(L22#G"#X2Z````@+J`_/__ -M`4B-FG#\__]UY$0[JN#\__]UVT@[JNC\__]UTDB%VP^$CP```/9"\`$/A=D` -M``!$BZ)8_?__187D#X7)````1(N:./W__T6%VP^%N0```$B+0SA(A<!U#NM2 -M9F9FD$B+`$B%P'1&2(MX&$B%_Y!T[DB+=QA(A?8/A(\```"`?D0`#X2%```` -M,<GK#P^V1D2-40%(@\$!.=!^<D@Y?,Y@=>I(QT3.8`````#KWTB)W^@````` -M3(UE($R)Y^@`````2(7`2(G#=$!(BT4(2(G:2(M]$$V)\$R)^42)[O]0:(3` -MN@$```!T$4B#Q`B)T%M=05Q!74%>05_#2(G>3(GGZ``````QTNO@,=+KW&:0 -MZ`````#I-____V9FD&9FD$%6055)B?5!5$F)_%532(/$@$B%]@^$HP$``$F+ -M;"002(7M=&!!BX0DI`($`$B+?1!(B>:)14!(BT4(_U`X#[9<)!!(BT4(00&< -M)*0"!`!(BWT0_U!@2(U]((G"B=E,B>[H``````^V3"002(U]2+HH````3(GN -MZ`````!(BVT`2(7M=:!(BPT`````NO@#``!(A<ET(&8QTF9F9I!F9I"+01A( -MBPDYP@]"T$B%R77P@<+X`P``08N,)*0"!`!)C7PD<$R)[HT,R>@`````08N, -M)*0"!`!)C;PDD````+H``@``3(GNZ`````!)C;PD\````+D!````ND@```!, -MB>[H`````$&+C"2D`@0`28V\)!`!``"Z*````$R)[N@`````08N,)*0"!`!) -MC;PDT````+JP````3(GNC0S)Z`````!!QX0D:`$```$```!!QX0D=`$````0 -M``!!QX0D;`$````0``#H`````$F-O"2P````N4(A``")PDR)[N@`````2(L= -M`````$B%VW0C9I!(BT,@2(7`=!!!BY0DI`($`$R)[DR)Y__02(L;2(7;==]( -M@^R`6UU!7$%=05[#3(MO".E4_O__9F:09F:09F:0051)B?152(LM`````%-( -MB?OH`````(7`=!.)P$B)VI#&`@!(@\(!2(/H`77S2(,]``````!U#.MQ9F9F -MD&9FD$B)Q4B+10!(A<!U]$B)70!(C4,83(EC",>#6`($```0``!(B4,82(E# -M($B-0RA(B4,H2(E#,$B-0SA(B4,X2(E#0$B-@Q`"``!(B8,0`@``2(F#&`(` -M`$B-@U`"``!(B8-0`@0`6UU!7,-(B1T`````ZYUF9F:09F:09F:09F:02(/L -M*(`]``````)(B6PD"$R)9"00B?5(B1PD3(EL)!A)B?Q,B70D(`^$%P$``$`/ -MMOWH`````$B%P$F)Q0^$#`$``$V-="1P3(GWZ`````!(B<,QP,8$&`!(@\`! -M2#WX`P``=?"+!0````!,B6L(3(DC@\`!B04`````B8/H`P``2(V#R`,``("+ -M@`,```%`B&L02(F#R`,``$B)@]`#``!!BT48A<!T*4B-@_@#``!(B4,@08M% -M&(7`=!:)PDB)V,:`^`,```!(@\`!2(/J`77O2(V#H`,``,=#-`(!``#'0S#_ -M____2(F#H`,``$B)@Z@#``!(C8.P`P``2(F#L`,``$B)@[@#``!)BT5(2(7` -M=`E(B=__T(7`=55)BTPD($B-DY`#``!)C40D&$F)5"0@2(F#D`,``$B)BY@# -M``!(B1'K#$"`_@$/A-_^__\QVTB)V$B+;"0(2(L<)$R+9"003(ML)!A,BW0D -M($B#Q"C#2(G>3(GW,=OH`````.O1051(BQ4`````54B)_4@Y^E-U".G3```` -M2(G"2(72=`](BP)(.>AU\$B+10!(B0)(BT482(U=&$@YV'099F9FD$B-N'#\ -M___H`````$B+11A(.=AUZTB+12A,C64H3#G@=#)(C9W0````9F9FD&9FD$B- -M<.A(B=](BT8@2(M6&$B)0@A(B1#H`````$B+12A,.>!UW("]D`($``!U*4B+ -M'0````!(A=MT'69F9I!F9I!(BT-`2(7`=`5(B>__T$B+&TB%VW7J2(M=$$B% -MVW07D$B+0PA(BWL0_Y#H````2(L;2(7;=>I;74%<PTB+!TB)!0````#I-?__ -M_Y"0D)"0D$B+5R`QP,8$$`!(@\`!2(/X4'7R2(U"$$B)$DB)4@A(QT(H```` -M`$B)>C!(B4(02(E"&#'`2,=".`````##9I!(BT=(BQ4`````2(/H*$@!T,-F -M9F:09F9FD&9FD&9FD$B+1R`QTDB+"$@YP7092(L12(M!"$B)0@A(B1!(BU$8 -M2(D)2(E)"$B)T,-F9I!FD("^L`````!(BU<@=1(/MX:8````2`.&D````$B) -M1UB#0B`!2(M':$B+OX````!,BYB8````0?_C9F9FD&9F9I#VAX`#```(2(GZ -M2(M'('0"\\/'0$0`````2(M':$C'Q@````"`CX`#```(2(N_@````$R+F(@` -M``!!_^-F9F:0]H>``P```74'N/_____#D$B+1V@/M])(B[^`````10^VP$R+ -MF*````!!_^-F9F:0]D=D0$C'1T@`````=4E(BU<X2(72=$HQ]C')ZPYF9I!( -MBQ*#P0%(A=)T(DB#>A@`=>Y(BT(02`%'2$B+0A!(BQ)(.?!(#T?P2(72==Z# -M^0-_!4B)=T##2,='0`````"0PS'VZ^UF9F:09F9FD&9FD$AC]D@!_D@Y]W,< -M2(GQ9I`/ME'^#[9!_XA1_XA!_DB#Z0)(.<]RZ4@Y]W0H#[8'/"!U(TB)^NL' -M#[8"/"!U&DB#P@%(.?)U\,8'`$B#QP%(.?=U]//#2(GZA,!T(69FD$B#P@$\ -M('0J#[9"_X@'2(/'`4@YUG0'#[8"A,!UXD@Y_G31Q@<`2(/'`4@Y]W6YD.O" -M2#GR=.</M@*$P&9F9I!TMSP@=+,/MD+_B`=(@\<!Z\5F9F:09F9FD&9FD&9F -MD$B+1R#'0$0!````PV9F9I!52(G]4TB#[`CV1V0"=3)(BU\X2(7;=!A(BWL8 -M2(7_=`=(BT<(_U`P2(L;2(7;=>C'A>@`````````2(/$"%M=P^@`````Z^AF -M9F:09F9FD%/V1V8"2(G[2(M'('0&]D!(`G0,@T!$`5O#9F:09F:0.7!$<N]( -MBS^^`0```.@`````2(7`2(G"=-X/MH"Q````2(E:4$B)UTB)6EC&@K`````$ -MQH*R`````$C'@L@`````````@^#/@\@@B(*Q````6^D`````9F:09F:09F:0 -M4TB)^TB+/[X!````Z`````!(A<!(B<)T8/9#9@)U8<:`L`````-(QX"@```` -M`````,:`FP```$!FQX"4``````!FQX"6``````!FQX"8``````#&@)H```!` -M9L>`D```````9L>`D@````$`9L>`G```````2(E:4%M(B=##9I#&@+`````" -MBP4`````B8*8````#[<%`````,:"D`````;'@I0`````````QH*1`````&:) -M@IP```#KNF9FD&:02(/L&$B)7"0(2(EL)!!(B?M(BV\@Z";___](B<*X____ -M_TB%TG0E2,>"R`````````"`34@!2(G62(M#:$B+NX````#_D)@````QP$B+ -M7"0(2(ML)!!(@\08PV9FD&:0051)B?154X!_$`1(B?MV58!_1`!T2C'MZQ5F -M9I!F9I`/MD-$C54!2(/%`3G0?C%(BWSK8$B%_W3G]H>``P```73>3(GFZ``` -M```/MD-$C54!2(/%`3G0?]9F9F:09F:06UU!7,-T./:#@`,```%FD'3N2(G? -MZ&;^__](A<!TX4&#!"0!3(E@6$B)QTC'@,@`````````6UU!7.D`````2(M? -M./:#@`,```%TM.O$9I#I`````&9F9I!F9F:09F:02(/L&$B)7"0(2(EL)!!( -MBU]82(LOZ`````"+`X/H`87`B0-T#TB+7"0(2(ML)!!(@\08PTB-<PA(B>]( -MBUPD"$B+;"002(/$&.D`````9I!54TB#[`A(BRT`````QP4``````````$B% -M[74-ZS!FD$B+;0A(A>UT)8L=`````/^5D````#G#<^?_E9````!(BVT(B04` -M````2(7M==M(Q\<`````@P4`````*.@`````2(/$"#'`6UW#9F:09F:02(/L -M&$B)7"0(2(EL)!!(BV]02(M=(`^V4TB)T(/@_HA#2("_L@````%T1>@````` -MBT-`A<!T#TB+7"0(2(ML)!!(@\08PTB+?0!(C7,HQT-``0```$B+7"0(2(ML -M)!!(@\082(/'6.D`````9F9FD(/B_(A32.NS9F9FD&9F9I!(BT<@@*>``P`` -M]\>'R`````````"+4$"%TG0$\\-FD$B+/TB-<"C'0$`!````2(/'6.D````` -M9F:09F:09F:04TB+7R!(B?A(B<9(BSM(@<<0`0``Z`````!(BSM(QX/0```` -M`````$B-L]````!(B9O8````2,>#X`````````!;2(/'2.D`````9F:09I!5 -M2(G]4TB)\TC'Q@````!(@^P(2(L_Z`````!(B<%(BT4X2(7`=!M(.=A(C54X -M=0?K%T@YV'022(G"2(L`2(7`=?!(@\0(6UW#2(L#2(G>2(G/2(D"2(/$"%M= -MZ0````!(@^PX2(E<)`A(B6PD$#'M3(ET)"A,B7PD,$F)_DR)9"083(EL)"!( -MB?-(BT\X28G72(7)="!(B<TQP&9FD&:02(-]&`%(BVT`@]C_2(7M=>^#^`-^ -M)DB)Z$B+7"0(2(ML)!!,BV0D&$R+;"0@3(MT)"A,BWPD,$B#Q#C#28T\'TF) -MS.L823E<)`@/A+(```!-BR0D387D#X2=````28-\)!@`=>!)BU0D"$@YVG?A -M28MT)!!)B?U(C0062#G'=]!(.=H/A)$!``!SQ4F+/DC'Q@````#H`````$B) -MQ^@`````2(7`2(G"#X1H____,<#&!!``2(/``4B#^"!U\DF+1"0(2(E""$B) -MV$DK1"0(28E<)`A(B4(028L$)$B)`DF+1"002"M"$$F)%"1).<=)B40D$`^" -M;@$``$R)Y>D4____28L$)$B%P'0XN@$```#K"$B+`$B%P'0@2(-X&`"0=/!( -M.5@(=>I)BW0D$$@Y<!!,#T?@@\(!Z]B#Z@$/C]/^__])BU0D$$F)S4DYUW<2 -MZ9````!-BVT`387M#X2T_O__28-]&`!U[$B)T$D#1"0(23E%"'7>20-5$$DY -MUP^'DO[__TF+/DC'Q@````#H`````$B)Q^@`````2(G",<#&!!``2(/``4B# -M^"!U\DR)^$D#1"0(28E%"$F+11!)`T0D$$PI^$F)11!)BP0D2(G52(E:"$R) -M>A!(B0))B10DZ3'^__])BSY(Q\8`````Z`````!(B<?H`````$B%P$B)P@^$ -M#O[__S'`Q@00`$B#P`%(@_@@=?+KL$DY]P^$U_[__TF+/DC'Q@````#H```` -M`$B)Q^@`````2(7`2(G"#X30_?__,<#&!!``2(/``4B#^"!U\DF+1"003(EJ -M"$PI^$B)0A#K1TF+/DC'Q@````#H`````$B)Q^@`````2(G",<!(A=)T/L8$ -M$`!(@\`!2(/X('7R3(GX20-$)`A(B4((28M$)!!,*?A(B4(028L$)$R)Y4V) -M?"002(D"28D4).E/_?__28L<)$F+/DC'Q@````!(BT,(28E$)`A(BP-)B00D -MZ`````!(B=Y(B<?H`````.D<_?__9F:09F:0051(Q\8`````54B)_5-(BS_H -M`````/9%9`A)B<1U'$B+=3A(A?9T$TB+'DR)Y^@`````2(7;2(G>=>U(BT5H -M2(N]@````/^0@````%M(BWUX2(NU@````%U!7$B#QR#I`````&9F9I!F9F:0 -M9F9FD%532(G[2(/L"$B+5SB`IX`#``#^2(72=!]F9F:09F:02(M"&$B%P'0' -M@*"``P``_DB+$DB%TG7H2(G>OP$```#H`````$B+.\>#Z`````$```!(@<<0 -M`0``Z`````!(A<!(B<5T9L<``0```$C'0`@`````2(E%$$C'0!@`````2(E8 -M($B+6SA(A=MT,F9FD$B+0QA(A<!U"NL<9F:09I!(B?A(BW@82(7_=?1(B>Y( -MB<?H`````$B+&TB%VW71BT4`@^@!A<")10!T!TB#Q`A;7<-(@\0(2(GO6UWI -MO_K__V9F9I!F9F:09F9FD&9FD$B#[!A(B5PD"$R)9"00B=-)B?1(Q\8````` -MZ`````"-#-M,B>9(BUPD"$R+9"002(G'NB````!(@\08Z0````!(@^Q8@_\' -M2(EL)#A,B60D0$B)]4R);"1(2(E<)#!!B?Q,B70D4$F)U7=508G^0O\D]0`` -M``"+N\@```"%_W5`2(M#",>#R`````$```!(C;.P````2(UY6$B+0%A(B9NX -M````2,>#P`````````!(B8.P````Z`````!F9I!FD$B+7"0P2(ML)#A,BV0D -M0$R+;"1(3(MT)%!(@\18PTB+7B"_`P```$C'1B``````Z`````!(B5T@Z\9( -MB??H`````$B+6!!)B<1(A=MU"NL22(L;2(7;=`I(.6L09F9FD'7N2(U[2.@` -M````2(7`9I!TCDF-?"1(2(E8&$2):"!(QP``````2(E`"$B)QDC'0!`````` -MZ`````#I8?___TB)]^@`````2(G!2(M`&$B-41A(.=!U%>E$____9F9FD$B+ -M`$@YT`^$-/___X"X@/S__P%(C9AP_/__=>1,.:CP_/__==M!@_P'#X<1____ -MD$+_)/4`````2(M#>$B)YDR)[TB+0`C_4'@/MD0D#HA#8@^V5"0*#[9#9H/B -M`0'2@^#]"="(0V;IU/[__TB+0R"`HX`#``#OBW!`A?8/A;[^__](B<9(C7E8 -MQT!``0```$B#QBCH`````.FB_O__@(N``P``$.F6_O__2(M#"$B)W_]0,.F' -M_O__9F9FD&9FD$B#[!A(B?A(B5PD"$R)9"002(G&2(M?&$2+9R!(C7M(Z``` -M``!(B=E$B>9(B=],BV0D$$B+7"0(2,?"`````$B#Q!CI`````&9F9I!F9F:0 -M2('L&`(``(`]``````!(B9PD"`(``$B)K"00`@``2(G[=1U(BYPD"`(``$B+ -MK"00`@``2('$&`(``,-F9I!FD`^V1V1!N`$```!(B>&Z`0```+X)````@\@# -M@^#[B$=DZ`````"%P'5(@3PD>6-G;'1<]D-D`72K2(MK.$B%[9!T(DB+.TC' -MQ@````#H`````$B)[DB)Q^@`````2,=#.`````!(BT-02(E#*.ER____@*.` -M`P``_DB)WK\!````Z`````"`2V0!Z57___^^``(``$B)Y^@`````A,!UDP^V -M3"0$#[:#@`,``(G*@^#]P.H$@^(""=#VP1"(@X`#``!T#`^V1"0%@$MD@(A# -M8_9$)`<!=!</ME-EB<C`Z`*#X`*#R@&#XOT)PHA39?9$)`<"=!4/ME-EC00) -M@^`(@\H$@^+W"<*(4V7V1"0'"'05#[9#9<'A!(/A((/($(/@WPG(B$-E]D0D -M!P0/A`+___\/ME-E#[9$)`2#RD"#X`'!X`>#XG\)PHA39>GC_O__D%5(C4\X -M4TB)^TB![`@"```/MD$L@^`#+`$/A"`"``"_[____T`B>V1(B>5(B>!`B'MD -M2(V4)``"``#&``!(@\`!2#G0=>SV02P"#X7O`0``2(M#*+[W____QP0D7W=A -M4B'^0(AS9$B)1"0$@'DL`'D-#[9#8X!,)`P0B$0D#?9!+0%T'0^V4V4/MD0D -M#(!,)`\!P>("@^#W@^(("="(1"0,]D$M!'0<#[9390^V1"0,@$PD#P+0ZH/@ -M^X/B!`G0B$0D#/9!+1!T'0^V4V4/MD0D#(!,)`\(P.H$@^#]@^(""="(1"0, -M]D$M0'0:#[9$)`P/ME-E@$PD#P3`Z@>#X/X)T(A$)`Q(@7M`__\?`'<+OO/_ -M__\A_D"(<V3V02P@#X0D`0``2(M+.$B%R70\,?9(@WD8`'0K2&/&2(M1"(/& -M`4B-!$!(C43%`$B)4!!(BU$02(E0&$B+41A(BU)`2(E0($B+"4B%R77&#[9# -M9KX``@``2(GGQH7_`0```8/@`8B%_@$``.@`````]]A%,<!(B>&(A0`!``!( -MBW-0N@$```!(B=](@>X```(`2('F``#^_^@`````2(MS.$B%]G1$,?](BU88 -M2(72=#%(BT-03(M"0$ACSTB-#$F#QP%*C10`2"T```(`2"4``/[_2('J``@` -M`$@IPDB)5,T@2(LV2(7V=;Z^``(``$B)Y\:%``$```#H`````/?813'`2(GA -MB(4``0``2(MS4+H!````2(G?2('N``@``.@`````2('$"`(``%M=PT#`[@*# -MY@%`B'0D#NG+_O__9F:09F:04TB)^TB+/TC'Q@````#H`````$B)Q^@````` -M2(G",<!(A=)T*,8$$`!(@\`!2(/X('7R2(M#*$B)0A!(BT,H2(E3.$B)0TA( -MB4-`6\-(B=];Z0````!F9F:09F:09F:02('L2`,``(`]``````)(B:PD(`,` -M`$R)K"0P`P``2(G]2(F<)!@#``!,B:0D*`,``$R-;SA,B;0D.`,``$R)O"1` -M`P``#X2K`0``2(MW4$R-?"0@0;@!````N@$```!,B?E(@>X`"```Z`````"% -MP$&)Q`^$=P,``$B+=5!!N`$```!,B?FZ`0```$B)[TB![@```@!(@>8``/[_ -MZ`````"%P$&)Q@^$B0,``$&#_/\/E,!!@_[_#X32!@``187V#Y5$)!=T=$6% -MY'5O2(MU4$&X`0```$R)^;H!````2(GO2('N``@``.@`````A<!!B<1T1X"E -M@`,``/Y(B>Z_`0```.@`````@$UD`>F?`0``O@`"``!,B?_H`````(3`#X5' -M`P``08"__P$```!U!D&\_O___\9$)!<`08$_7W=A4@^$D`,``$B+=5!(@>X` -M``(`2(GP2,'H($B%P`^%(@,``(!-9`$/M@4`````/`(/A(4````L`0^$<@8` -M`/:%@`,```%T>("E@`,``/M)C9<``@``3(GXQ@``2(/``4@YT'7T,?9!N`$` -M``!,B?FZ`0```$B)[^@`````@'PD($4/A-X%``"`O"0>`@``574N@+PD'P(` -M`*IU)#'`1HN$.,H!``!%A<!U$4B#P!!(@_A`=>GK"4R-?"0@@$UD`O9%9`(/ -MA=\```!!]D4L`6:0=#1(BUTX2(7;="-(BWT`2,?&`````.@`````2(G>2(G' -MZ`````!(QT4X`````$B+15!(B44H08!]+``/B!@%``!!]D4M`0^%X@0``$'V -M12T$#X6K!```0?9%+1!F9F:0#X5K!```0?9%+4!F9I!FD'0NQD0D(`4/MD5E -M3(G^QD0D*0#`Z`>(1"0H2(M%:$B+O8````#_D,````!F9I!FD$B+G"08`P`` -M2(NL)"`#``!,BZ0D*`,``$R+K"0P`P``3(NT)#@#``!,B[PD0`,``$B!Q$@# -M``###[9%9$&X`0```$R)^;H!````O@D```!(B>^#R`&#X/N(163H`````(7` -M#X7<_?__@7PD('EC9VP/A>/^__^^``(``$R)_^@`````A,`/A<[^__\/MDPD -M)`^VA8`#``")RH/@_<#J!(/B`@G0B(6``P``]D0D)!!T#(!-9(`/MD0D)8A% -M8_9$)"<!=!</ME5EB<C`Z`*#X`*#R@&#XOT)PHA59?9$)"<"=!4/ME5EC00) -M@^`(@\H$@^+W"<*(567V1"0G"'05#[9%9<'A!(/A((/($(/@WPG(B$5E]D0D -M)P0/A#O^__\/ME5E#[9$)"2#RD"#X`'!X`>#XG\)PHA59>D<_O__9F:0#[:< -M)!\"``"^``(``$R)_^@`````BW0D(`^VT$C'QP`````QP(G9Z`````"!?"0@ -M7W=A4@^$VP,``$&\_O___^E$_/__00^VG_\!``"^``(``$R)_^@`````08LW -M#[;02,?'`````#'`B=GH`````$&!/U]W85(/A*3\__]%A>0/A4?\__]!O/__ -M__]F9F:0Z3C\__^!Y@``_O]!N`$```!,B?FZ`0```$B)[^@`````A<`/A4O\ -M__]!@3]?=V%2#X6M_/__O@`"``!,B?_H`````(3`#X3;!0``08$_7W=A4@^% -MB_S__[X``@``3(G_Z`````"$P`^%=OS__T&`?PX`#[9%9$R)[DC'QP`````/ -ME<*#X/O!X@()T(A%9`^V169!@+_^`0````^5PH/@_@G0#[;2B$5F,<#H```` -M`$B+15!(B>](+0```@!()0``_O](B44HZ%7Z__]!]D<,$'0,@$UD@$$/MD<- -MB$5C0?9'#P%T&@^V565!#[9'#(/*`<#H`H/@`H/B_0G"B%5E0?9'#P)T&0^V -M565!#[9'#(/*!`'`@^`(@^+W"<*(565!]D</"'0:#[9594$/MD<,@\H0P>`$ -M@^`@@^+?"<*(565!]D</!'0:#[9594$/MD<,@\I`@^`!P>`'@^)_"<*(565( -MQT0D&``````QVTJ#?#L8``^%)P(``$B#PQA(@_M@=>J`?"07``^$"P,``#') -M2H-\.1@`="=*BU0Y($B+15!(@<(`"```2"G"2"T```(`2"4``/[_2`'"2HE4 -M.2!(@\$82(/Y8'7'O@`"``!,B?]!QH<``0```.@`````]]A%,<!,B?E!B(<` -M`0``2(MU4+H!````2(GO,=M(@>X```(`2('F``#^_^@`````2(MU4$&X`0`` -M`$R)^;H!````2(GO2('N_P<``$B--#/H`````(7`#X30`0``2(/#`4B#^P1U -MR4B#?"08``^$=`,``(!-9$!(B>_H`````.EE^___QD0D(`0/MD5E3(G^QD0D -M*0#`Z`6#X`&(1"0H2(M%:$B+O8````#_D,````#I9/O__\9$)"`##[9%94R) -M_L#H`X/@`8A$)"A(BT5H2(N]@````/^0P````.DI^___QD0D(`(/MD5E3(G^ -MT.B#X`&(1"0H2(M%:$B+O8````#_D,````#I\_K__\9$)"``#[9%8TR)_HA$ -M)"A(BT5H2(N]@````/^0P````.G"^O__A,`/A";Y__]F9I!F9I!F9I#I3_G_ -M_X!\)"%29F:09F:0#X41^O__0;@!````3(GYN@$```"^`0```$B)[^@````` -M@'PD(%`/A>OY__^`?"0A30^%X/G__^D/^O__9F9FD(`]```````/A8'Y__]F -M9I#I]OG__[X``@``3(G_Z`````"$P`^$7_C__^D+_/__2(M]`+X$````Z``` -M``!(A<!(B40D&`^$=?K__TJ+5#L82HMT.Q!(B>_H,^S__TB%P$B)P0^$2`,` -M`$B+5"08187V2(EJ.'5\2HM$.R!(B4)`2(M4)!A(B4I(2(M!$$B)41A(B4(H -MZ6[]__](BT502(GO13'`3(GYN@$```!(+0```@!()0``_O](C70#`>@````` -M2(MU4$C'QP````!(C88``/[_2(VT'@'X__]()0``_O](C50#`3'`Z`````#I -MU_W__T6%Y'6(2HM4.R!(BT502('"``@``$@IPD@M```"`$@E``#^_T@!PDB+ -M1"082(E00.E8____187D#X2C_?__08"__P$````/A+<````QR4J#?#D8`'0G -M2(M%4$B)PDH#5#D@2"T```(`2"4``/[_2('J``@``$@IPDJ)5#D@2(/!&$B# -M^6!UQ[X``@``3(G_0<:'``$```#H`````/?813'`3(GY08B'``$``$B+=5"Z -M`0```$B)[S';2('N``@``.@`````2(M%4$&X`0```$R)^;H!````2(GO2"T` -M``(`2"4``/[_2(UT`P'H`````(7`='Y(@\,!2(/[!'7'Z=[\__](Q\<````` -M,<#H`````$R)_[X``@``0<:'_P$```%!QH<``0```.@`````]]A%,<!,B?E! -MB(<``0``2(MU4+H!````2(GO2('N```"`$B!Y@``_O_H`````.GK_O__0?9% -M+`0/A!CW__^0Z7O\__](BW502(GO13'`3(GYN@$```!(@>[_!P``2`'>Z``` -M``!(BT502,?'`````$B-E!@!^/__2"T```(`2"4``/[_2(UT`P$QP.@````` -MZ3'___](C9PD(`(``$F-=Q"Z\````$B)WTB#PPCH`````$B-A"08`P``2(E$ -M)`CK"TB#PQA(.UPD"'1C2(,[`'3O2(MS"$&X`0```$R)^;H!````2(GO@^;_ -MZ`````"%P`^%[/7__TR)_^@`````08$_]!9X6@^$F````$B+<PA%,<!,B?FZ -M`0```$B)[^@`````A<!TFNFW]?__9F:02(MU4$&X`0```$R)^;H!````2(GO -M2('N```"`('F``#^_^@`````A<`/A87U__](BW5013'`3(GYN@$```!(B>]( -M@>X```(`2('F``#^_^@`````A<`/A5CU___I*OG__TB+?"08Z`````!F9I!F -MD.G[]O__O@`"``!,B?_H`````.E6____9F:09F:09F:005=)B?>^`0```$%6 -M055)B?U!5%532(/L>$B+?QB)5"0,Z`````!(B<5)BT4(2(UT)$!,B?__4'A( -MBX68`P``2(N5D`,``$B)0@A(B1!(BT4`2(M8&$B#P!A(.<,/A)\```!,C70D -M$.L;9F9FD&9FD$B+10!(BQM(@\`82#G8#X1]````@+N`_/__`4R-HW#\__]U -MW$B+L^C\__])BT4(2#M&"`^$)P$``$R)[^@`````@_@`?$MUN$F+10A)B[PD -M@````$R)]O]0>`^V5"1*#[9$)!K0ZM#H@^(!@^`!.<)_CGP=#[9$)!PX1"1, -M=X&0<@\/MD0D33I$)!T/AV____](BU,(2(V%D`,``$B)G9`#``#'130!```` -M2(V]B````+XH````2(E#"$B)`H"-@`,```%)BT4(3(F]@````$R);7A(B968 -M`P``2(E%:(M$)`R)17!(BT0D0$B)15!(B44H#[9$)$Z(16(/MT0D5&:)16`/ -MME0D2@^V16:#X@$!TH/@_0G0B$5FZ`````!(BT5H2(N]@````$B-="1`_U!X -M]D0D2@%(BT0D6'4)]H```0``!'4(2(GOZ`````!(@\1X2(GH6UU!7$%=05Y! -M7\-(BX```0``2(7`#X3)_O__2(MV$$F+?1#_T.G"_O__D%.`?Q`!2(G[=`=; -MN/_____#@#T``````G3P2(M'4$@M```"`$@E``#^_TB)1RCHK?'__X!C9/3' -M0S#_____2(G?Z`````!;,<##9F:09F:02(/L&(722(EL)`A,B60D$$B)_4B) -M'"1)B?1X:.@`````2(7`2(G#=$X/MD!D2(MM&*@"=6V`/0``````=!JH`75J -M]D-D1'4$@$MD)$2+C=@!``!%A<ET7DB)WDB+;"0(2(L<)$R+9"00OP(```!( -M@\08Z0````!(BT4(3(GG_Y"`````2(U]($R)YDB+'"1(BVPD"$R+9"002(/$ -M&.D`````2(G?Z`````#KK$B)W^@`````ZXQ(C;7``0``2(U]2,>%V`$```$` -M``!(QX7``0```````$B)K<@!``!(QX70`0```````.@`````Z6;___]F9F:0 -M9F9FD&9FD&9FD$%5051)B?Q54TB#[`A(BV\X2(M?2$B+53A(A=(/A#8!``!( -MB=`Q]D@YV'0,2(M+"$@Y2`A(#T3P2(L`2(7`=>=(A?8/A(8```!(BWX02(M+ -M$$@YSW(*ZS1(BQ)(A=)T.4B#>A@`=?%(B<A(`T,(2#E""'7D2(M"$$@#0Q!( -M`WX(2"M&$$B)>@A(B4(02(G>2(GOZ`````#K&$B+1@A(`T802"E[$$C'0Q@` -M````2(E#"(!-9!!,B>?H`````$B#Q`A(B>];74%<05WI`````$4Q[>L(2(L2 -M2(72="Y(@WH8`'7Q2(M["$B+2@A(B?A(`T,02#G!=%E(`TH02#G/2`]$\DB+ -M$DB%TG722(7V2,=#&`````!T&$B+1@A(B>](B4,(2(M&$$@!0Q#H`````$V% -M[0^$>?___TF+11!(`4,03(GN2(GOZ`````#I8?___TF)U>E\____2,=#&``` -M``#I3/___V9F9I!F9F:09F:0055)B?TQ_T%428GT55-(@^P(2(72#X28```` -M2(MZ2$B%_P^$BP```$F+33A(A<ET<C'M13'`ZPU(.<)T$4B+"4B%R71%2(M! -M&$B%P'7J2(MQ$$DY]'<.2(7M=`9(.W40<P-(B<U(A<!UTTB%_V9FD'3+2(M' -M"$@#1Q!(.4$(3`]$P4B+"4B%R76[387`=`])BT`02`-'$$DYQ$@/1N](A>UU -M'#';2(/$"$B)V%M=05Q!7<--.65`#X-K____Z^1)BWT`O@0```#H`````$B% -MP$B)PW303(EH.$F+15`Q]DF+53A(+0```@!()0``_O](A=)(C7@!="!(BT(8 -M2(7`=`](BTA`N`$````I^=/@"<9(BQ)(A=)UX#')N`$```#3X(7&=!^#P0&# -M^01U[4C'0T``````2(G?,=OH`````.EA____2&/!2`'X2(7`2(E#0'3B3(EC -M*$B+=0A,B>),B>_HFN+__TB%P'3*2(E8&$B)0TA,B>]!@$UD$.@`````Z2#_ -M__]F9F:09F9FD&9FD%-(B?M(BT,X2(7`=0OK6Y!(BP!(A<!T4DB+>!A(A?^0 -M=.Y(BW<82(7V=#B`?D0`=#(QR>L/#[9&1(U1`4B#P0$YT'X?2#E\SF!UZ@^V -M1D2-40%(QT3.8`````!(@\$!.=!_X>@`````ZYI(B=]F9I#H`````$B+0VA( -MB[N`````_Y#(````2(G?6^D`````D%5(B?U32(/L"$B+7SB`9V2_2(7;=$)( -MBWL82(7_=`7H`````$B+&TB%VW7J2(M%..L#2(L`2(7`=!Y(BW@82(7_=.]( -M@W\8`'7HZ`````!(BT4X2(7`=>)(@\0(2(GO6UWI`````&9F9I!F9I!F9I!! -M5DB)^$B)QD%505154TR+;R!)C;T0`0``38UE&.@`````28M=&$''A=@!```` -M````3#GC=0KK-$B+&TPYXW0L@+N`_/__`4B-NW#\__]UZ/:#U/S__T!TW_9# -M\`%TV>@`````2(L;3#GC==1)BUTH28UM*$@YZW089F9FD&9FD$B->^CH```` -M`$B+&T@YZW7O28MM&$PYY0^$X````&:0@+V`_/__!$B-O7#\__]V#DB#O8C\ -M__\`#X1Z`0``2(MM`$PYY77928M=&$PYXP^$J@```$4Q]NL/9F9FD&9FD$B+ -M&T@YZW19@+N`_/__`4B-NW#\__]UZ/:#U/S__R!TWTB+@ZC\__^`H]3\___; -M2(7`=1CI[````&9F9I!F9I!(BP!(A<`/A-D```!(@W@8`'3M2(L;0;X!```` -M2#GK=:=)BUT83#GC=0[K,F9F9I!(BQM,.>-T)D2+DZ#\__](C;MP_/__1872 -M>!SV0_`!==_H`````$B+&TPYXW7:6UU!7$%=05[#]D/P`73##[:#@/S__SP$ -M#X9^````2(.[B/S__P!UJO:#T/[__T!UH4B+@_#^__](A<!T!D@Y>`AUCP^V -M@[3\__^%P'XO@^@!,<E(@\`!2(M4SV!(A=)T$X!Z$`1V#?:"8`(``$`/A5[_ -M__](@\$!2#G!==KH`````.E+____183V#X72_O__9I#H`````.G&_O__+`%F -M9F:0#X4J____]H/4_/__`F9FD`^$&O___^O#Z`````!F9I#I>?[__V9F9I!F -M9F:09F:0051)B?Q(C;\0`0``55/H`````$B%P$B)Q71J28M<)!A,B6`@28/$ -M&,<``0```$C'0`@`````2(E%$$C'0!@`````3#GC=1'K+V9F9I!F9I!(BQM, -M.>-T(("[@/S__P%(C;MP_/__=>A(B>[H`````$B+&TPYXW7@BT4`@^@!A<") -M10!T!5M=05S#6TB)[UU!7.D:_?__9F9FD&9FD&9FD$B#[!A(B6PD"$B)'"1( -MB?U,B60D$$B+7R#'0T``````]H>``P``&`^%HP```$2+I\@```!%A>0/A9,` -M```/MD-(J`$/A8<```"H`DR-8Q!T'TPY8Q!U!4@Y&W0=2(GOD.C+VO__]D-( -M`75E9F:09I!(BTL03#GA=6H/MD5B.4,@<A;K3$B)UDB)[^@AU___#[9%8CE# -M(',X2(GOZ.#6__](A<!(B<)T*`^W@+````!F)?\P9CT$('7+2#D;=6'V168" -M=,"`2T@"Z[IF9I!F9I!(BQPD2(ML)`A,BV0D$$B#Q!C#1(M;($6%VW7D2(L1 -M2(M!"$B)[TB+<1A(B4((2(D02(E)"$B)"4B+'"1(BVPD"$R+9"002(/$&.F1 -MUO__2(G7QH*R`````>@`````2(GOZ$K6__](B<+I1O___V:02(/L&$B)'"1( -MB6PD"$B)^TR)9"003(MG4.@"UO__@+NP````!$B)PDF+;"0@#X2-````2(N# -MR````,=%1`````!(B2K'0B``````2(E:&$C'@\@`````````2(E"$$B+10A( -MB54(2(D02(E""$$/MD0D8CE%(','BT5`A<!T$TB+'"1(BVPD"$R+9"002(/$ -M&,-)BSPD2(UU*,=%0`$```!(BQPD2(ML)`A,BV0D$$B#Q!A(@\=8Z0````!F -M9F:0]H.Q````,'0*]D5(`@^$8/___\:#L@````%(B=](BVPD"$B+'"1,BV0D -M$$B#Q!CI`````&9F9I!F9F:09F9FD$B#["A(B6PD"$R)9"002(G]3(EL)!A, -MB70D($B)'"3H_-3__TR+=5!)B<5-BV8@08-L)"`!#[:%L@```#P-#X0,`0`` -M/!%T2#P+=&0\$&:0#X3/````28M%$$B)[TB)A<@```#H`````$&+1"1`A<!T -M;DB+'"1(BVPD"$R+9"003(ML)!A,BW0D($B#Q"C#D$R)]^A8V/__A<!U>@^V -MA;,````\`7=O@\`!B(6S````28U$)!#&A;(`````28M4)!A-B6PD&$F)10!! -MBT0D0$F)50A,B2J%P'689F:09F:028L^28UT)"A!QT0D0`$```!(BQPD2(ML -M)`A,BV0D$$R+;"083(MT)"!(@\=82(/$*.D`````#[:%L@```#P0#X4Q____ -M@+VP`````P^$)/___TF+7B!,B?9)B6X@OP,```#H`````$F)7B#I!O___P^W -MA;````!F)?\"9CT``@^%\?[__X"]LP````!U#,:%LP````'I-O___\:%L@`` -M`!#KHI"0D)"0D)"0D)"0D)!(BS4`````2(7V=$-(BU882(U.&$@YRG0N2(V" -M</S__SFXZ`,``'47ZREF9I!F9I!(C8)P_/__.;CH`P``=!)(BQ)(.<IUZ4B+ -M-DB%]G6],<#SP_/#9F9FD&9F9I!F9I"`?P0`=0PQP($_>P$```^7P,,QP($_ -M>P$```^7P,-FD`^V!P^V#CC(=!KK+&9F9I`/ME<!#[9&`3C"=1%(@\<!2(/& -M`83`=>@QTHG0PP^^P`^^TBG"B=###[[0#[[!*<+KZ&9F9I!F9F:09F:09F:0 -M05=)B?=!5D&)_D%505154TB![)@```!,BRT`````387M=$-,C60D$#'M28M= -M$$B%VW0J3(ED)`A(BT,(2(M[$$R)YO]0.(!\)",`=`A$.?5T*X/%`4B+&TB% -MVW7;38MM`$V%[77$,=M(@<28````2(G86UU!7$%=05Y!7\--A?]TY@^V5"0G -M08L'.=!\VDB+&TB%VW32*=!(BWL02(MT)`A!B0=(BT,(_U`X@'PD(P!TT.NR -M9F9FD&9F9I!F9F:005=!5DF)_D%5051)B=152(G-4TB![*@```!(BP4````` -MQP(`````2(ET)`C'`0````!(A<!(B40D$`^$G@```$&]_____\=$)!P````` -M2(M$)!!(BU@02(7;#X20````2(7M00^5Q^L?9F9FD&9FD$B+&P^V1"0W00$$ -M)(M$)!P!10!(A=MT:$B+0PA(BWL02(UT)"#_4#A(BT,(2(N`"`$``$B%P'0/ -M183_=`I(BWL0_]")1"0<@'PD,P!T$T''!"0`````08/%`<=%``````!,.?-U -MFDB+1"0(1(DH2('$J````%M=05Q!74%>05_#2(M$)!!(BP!(A<!(B40D$`^% -M2/___^O69F9FD&9F9I!!54%453'M4TB![(@```!,BR4`````387D=#%)BUPD -M$$B%VW0>2(M#"$B+>Q!(B>;_4#B`?"03`4B+&X/=_TB%VW7B38LD)$V%Y'7/ -M2('$B````(GH6UU!7$%=PV9F9I!!5T%6055!5%5(B=532('LV````(ET)`Q( -MC70D#.BN_?__28G&N/____]-A?8/A/D```!-BV88,<!F9F:09F:0Q@0H`$B# -MP`%(@_A$=?))BT8(2(UT)!!)BWX0_U`X@'PD(A`/ME0D(K@/````BW0D#`]" -MPDB-E"3`````B$0D(DF+1@A)BWX0_Y"X````A<`/A*@```!)BUPD&$V-;"08 -M3#GK#X2!````13'_ZPIFD$B+&TPYZW1R@+N`_/__`4R-HW#\__]UZ$P[L^C\ -M__]UWTB+@]C\__](B[OP_/__2(VT))````#_4'CVA"2:`````G6\#[:$))P` -M```[1"0,=:X/MH0DG0```#I$)")SH`^VT$&+A"3H`P``08/'`8E$E0A$.'PD -M(G6&,<!(@<38````6UU!7$%=05Y!7\.+A"3$````B44$BX0DP````(E%`.D_ -M____9F:09F:09F:0C4?[,=*#^`=W#HG`_R3%`````+H!````B=##N@@```") -MT,.Z`@```(G0P[H'````B=##N@,```")T,.Z!````(G0P[H%````B=##N@8` -M``")T,-F9F:09F:09F:09F:0#[:/@`,``$0/MD8(B<J#\@&#X@&)T(/(($'V -MP"`/1,*)PH/*`O;!!`]%PHG"@\H$@^$"#[9."@]%PHG"@\H008/@$`]%PHG" -M@\I`]L$!#T7"B<*`RH"#X0(/1<(/ME=DB<&!R0```(#VP@0/1<&)P8')```" -M`/;"`@]%P8G!@<D```$`@^(!#T7!B<*!R@``!`#V1V8!#T7"PV9FD&9FD$B+ -MAV@"``!(BT\H1`^V1T1(P>@+2,'I"TAIT.@#``!(B=`QTDCW\42)PDB)P4B+ -M1P@/MD`**<*)T$B82`^OR$6%P$B-!(E$C10`?GU!C4#_,?9,C4@!2(M,]V!( -MA<ET8/:!@`,```%T5X!Y$`1V4?:!8`(``'!T2$B+40@/MD%$#[92"BG0C02` -M1(T$`$B+@6@"``!(BTDH2,'H"TC!Z0MIT.@#``")T#'2]_%$#Z_`1872=`5% -M.<)V!D6)PF9FD$B#Q@%,.<YUC4&!^A`G``"X$"<``$$/1L+#9F:09F:02(N/ -M@`(```^V@:H````\`G5R2(M!$+\0)P``2(MP*$B+00A,BT`H2(GR3"G"2,'J -M"TB%TG0V@'DH`'4T2(N!H````$PIP$C!Z`M(:<#H`P``2(G1,=)(]_%(C02` -M`<"_$"<``#T0)P``#T;XB?C#D$@KL:````!(P>X+2&G&Z`,``.O-/`-T5X!Y -M*`!T(TB+01!(BU`H2(G02"N!H````$C!Z@M(P>@+2&G`Z`,``.N@2(N!H``` -M`$C!Z`M(:=#H`P``2(M!$$B+2"A(B=`QTDC!Z0M(]_%(C02``<#K@(!Y*`!T -M!DB+00CKITB+@:````!(P>@+2&G0Z`,``$B+00CKQ&9F9I!F9I!F9I!F9I!, -MBT<8387`=#Q!#[9`1(3`#[;P=",QR4DY>&!T'DR)PC')ZPU(BT)H2(/""$@Y -M^'0*@\$!.?%U[#'`PT&+0#B#P`$!R,.+1SC#9F9FD&9FD`^V1T2%P'YC@^@! -M13')3(U0`4J+3,]@2(7)=$;V@8`#```!=#V`>1`$=D0/MD%$A<!^+X/H`3'2 -M3(U``69F9I!(BT318$B%P'0/]H"``P```70&2#EP.'042(/"`4PYPG7>28/! -M`4TYT76G,<#SPT@Y<3AU[4B)R,-F9F:09F:005=!B==!5DF)_D%528G-0515 -M4TB#[`A(A?]`B'0D`T2(1"0"1(A,)`$/A`D!``"`?Q`'#Y3`0(#^!P^4PH3` -M#X7;````A-(/A>L```!%A?\/A"P"``!,B>W'1"0$`````$G'Q?____]%,>1F -M9I!FD(M]`.@`````2(7`2(G##X2'````28L&2#D##X5[````@'L0`75U2(G> -M3(GWZ-_^__\Q_TB%P$B)QG0$2(MX2$B+2SA(A<D/A-D```!(B<@QTDB#>!@! -M2(L`2(/:_TB%P'7O2(/Z`P^&N0```#'213'M@T0D!`%)`=1(@\4$1#E\)`0/ -MA7C___\/MDPD`H/A#X!\)`,'#X8M`0``13'D2(/$"$R)X%M=05Q!74%>05_# -M#[9'1#P!#X0A____A-)T"(3`#X5!`0``187_9F:09I`/A#P!``!,B>TQVTG' -MQ?____]%,>3K*8!X$`%UKDB+0$!(A<!TI4D!Q$DYQ4P/1^B#PP%(@\4$1#G[ -M#X1X____BWT`Z`````!(A<!URF9FD.EV____,=)(A?9T!$B+5BA(A<ET:44Q -MP.LA9F:09F:02(M!&$@YQG0*2(7_=!U(A<!T5TB+"4B%R70J2(7V9I!UWDB% -M_TB+01AUXTB%P&:0=>%(BT$02#G02`]'T$B+"4B%R7762(7_=!1-A<!T#TF+ -M0!!(`T<02#G"2`]"T$DYU4P/1^KIQ_[__TB+1PA(`T<02#E!"'6Z2(M!$$F) -MR$@YT$@/1]#KM0^V1"0#_R3%`````$&#_P$/AKW^__]!@_\"38GL#X:S_O__ -M#[;)N/____]!T>_3X$B822'$1(GX3`^OX.F5_O__187_#X6[````2<?%____ -M_T4QY.EG_O__08/_`P^&</[__P^VR;C_____38GLT^!(F$DAQ$&-1_Y,#Z_@ -MZ53^__]!@_\"#X9'_O__#[;)N/____]-B>S3X$B822'$08U'_TP/K^#I*_[_ -M_X!\)`$!#X;]````@'PD`0(/ADO___]$#[9,)`$QTD2)^$'W\872#X7\_?__ -M@_@!#X[S_?__3&/@08U!_P^VR4B83`^OX+C_____T^!(F$DAQ4T/K^7IT?W_ -M_TB+1V`Q[3'22(7`=1[IO/W__T$Y[P^&X/W__XGJ28M$UF!(A<`/A*/]__]( -MBU@X08M\E0#H`````$@YPW0200^V1D2#Q0$YZ`^&K?W__^O"00^V1D0/MMA! -M.=\/@FW]__^$P'1G28M&8#'M,=)(A<!U).E7_?__00^V1D2#Q0$/MM@YZW9& -MB>I)BT368$B%P`^$./W__TB+6#A!BWR5`.@`````2#G#=,[I(/W__P^VR;C_ -M____38GLT^!(F$DAQ$2)^$P/K^#I!?W__P^VP$V+9BA)BW3&6$B+1CA(BT@X -M2(7)=0KK)4B+"4B%R70=2(-Y&`!U\4B+5DA(BT((2`-"$$@Y00AUWTP#81!! -M.=]W*^F[_/__28L62#D0#X6L_/__@'@0`0^%HOS__X/#`4P#8$!$.?L/A)7\ -M__^)V$&+?(4`Z`````!(A<!UR>E\_/__D//#9F9FD&9F9I!F9I!F9I"+#0`` -M``"-40&)T,'X'\'H'$2-!`)!@^`/02G`1#L%`````+C_____=%E(8\%(Q\8` -M````2(T4@$B-%%!(BP=(C0R5`````$B)!)4`````2(M'"$B)1#$(2(M'$$B) -M1#$02(M'&$B)1#$82(M'($B)1#$@BT<H1(D%`````(E$,2@QP//#9F9FD&9F -M9I!F9I!(@^PX#[9'$$F)T#P!="8\!'0]2(U4)`R#_@%(B><9P(/`&8A$)`AF -MB4H(Z`````!(@\0XPXN'Z`,``$B-5"0,3(E$)`R)1"0$Z\UF9I!FD$B+5SA( -MBT=(BY+H`P``3`-`"(E4)`1(C50D#$R)1"0,ZZ9F9F:09F9FD&9FD&9FD%53 -M2(/L&,8$)`9(BU\02(7;="!(BT,0,?](B>9(B40D"$B+0PC_D,````!(BQM( -MA=MUX$B#Q!A;7<-F9I!F9I!(BT=01`^WCY@```!)B?!!B=)(B["``@``3(L8 -M1(G)P>$)@'XH`'0-]H>Q````!`^%B`````^WEIH```#!X@F%R4F+LU`"!`!% -MBXM8`@0`=%Z)T#'20??QB<!(P>`$2(T\!DF-<!#K-HG02`,'2(E&^$2)R,=& -M]`````!)B?`IT(E&\#G(B<@/1D;P*<&)1O!(C780A<ET%TB#QQ`QTD6%TG7% -MB=!(`T<(2(E&^.O"N`$```!!QT#T`0```,,/MY:8````#[>&F@```"G"1"G* -MP>()Z6?___]F9F:09F9FD$%428G\54B)]5.`?D0`=&HQV^LB2(M62$F+1"1( -M2(M("$@Y2@AT.0^V142-4P%(@\,!.=!^1$B+=-U@2(7V=.>`?A`$=LY,B>?H -MLO___X3`=-5;74%<N`$```##9F9FD$F+1"0X2#E&.'3G#[9%1(U3`4B#PP$Y -MT'^\6UU!7#'`PV9F9I!F9F:09F9FD&9FD$%528GU051)B?Q54X!_1`!T4C'M -MZQQ,B>Y(B=_HW____T$/MD0D1(U5`4B#Q0$YT'XR28M<[&!(A=MTY8(BT(82(7`=?1(.?)T!4PYPG6N -M2(L)2(7)9I!USK@!````PTF)\.NV3(M`$.NP9F9FD&9FD&9FD&9FD(M''(7` -M>`:#?R`#=P?'1U#^____\\-F9F:09F:09F:0@7\<QP```'8)@7\@QP```'<' -MQT=0_O____/#9F:09I"!?QS'````=@F+5R"%TG@"\\/'1U#^____PV9FD&9F -MD(M/'(7)>`:#?R`#=P?'1U#^____\\-F9F:09F:09F:0@W\<`W8&@W\@2W<' -MQT=0_O____/#9F9FD&9F9I!F9I"#?QP#=@:#?R!7=P?'1U#^____\\-F9F:0 -M9F9FD&9FD(-_'`-V!H-_($-W!\='4/[____SPV9F9I!F9F:09F:0@W\<!W8& -M@W\@#W<'QT=0_O____/#9F9FD&9F9I!F9I"#?QP'=@:#?R!#=P?'1U#^____ -M\\-F9F:09F9FD&9FD(-_'`-V!H-_(`-W!\='4/[____SPV9F9I!F9F:09F:0 -M@W\<!W8)@7\@_P```'<'QT=0_O____/#9F9FD&9F9I"#?QP'=@F!?R"C#``` -M=P?'1U#^____\\-F9F:09F9FD(-_'`=V"8%_("<-``!W!\='4/[____SPV9F -M9I!F9F:0@W\<!W8)@7\@JP```'<'QT=0_O____/#9F9FD&9F9I"#?QP+=@:# -M?R`G=P?'1U#^____\\-F9F:09F9FD&9FD(-_'`-(BT<HBP!V$TAC5R")P$B- -M!(4$````2#G"<P?'1U#^____\\-F9F:09F9FD(-_'`-(BT<HBP!V$TAC5R") -MP$B-!(4$````2#G"<P?'1U#^____\\-F9F:09F9FD%-(B?M(BT<H@WL<`XLX -M=@F!>R"M````=PG'0U#^____6\/H`````$B%P'3M6V9FD,-F9F:09F9FD&9F -M9I!F9I!32(G[2(M'*(-['`.+.'8)@7L@UP```'<)QT-0_O___UO#Z`````!( -MA<!T[5MF9I##9F9FD&9F9I!F9F:09F:04TB)^TB+1RB#>QP#BSAV"8%[(/D` -M``!W"<=#4/[___];P^@`````2(7`=.U;9F:0PV9F9I!F9F:09F9FD&9FD%-( -MB?M(BT<H@WL<"$B+2S"+.'8,@WL@!'\69F:09F:0QT-0_O___UO#9F9FD&9F -MD`^V4`B+0`2)`832B%$$=!2!.<,!``!VV.@`````2(7`=,Y;PSW#`0``9F9F -MD&9FD':^Z^1F9F:09F9FD&9F9I!(@^P02(EL)`A(B1PD2(G]@7\<LP```'8& -M@W\@!W<5QT50_O___TB+'"1(BVPD"$B#Q!##2(M'*(L8B=^#ZP'H`````(/[ -M_7?=2(7`=-&`>!`$=LM(@[B``@```'7!9I#KQ&9F9I!F9F:09F:09F:02(/L -M&$B);"0(2(D<)$B)_4R)9"00@W\<"'8&@W\@!W<?QT50_O___TB+'"1(BVPD -M"$R+9"002(/$&,-F9I!FD$R+9RA!BQPDB=^#ZP'H`````(/[_7<22(7`=`:` -M>!`$=Q?'15#^____28U\)`3HG>O__RP!=:KKKTB#N(`"````==_KY&9F9I!F -M9F:09F:02(/L*$B);"0(2(D<)$B)_4R)9"003(EL)!A,B70D($B+3RA(8U<< -M1(LQ1(GP2(T$A00```!(.<)R9HMW((7V>%^`/0`````"=%9%,>U%A?9!O`0` -M``!U,>M-9F:09F:0B=_H`````$B+51!(.1!FD'52]D!D`70H08/%`4F#Q`1% -M.?5T(DB+32A"BQPAB=_H`````$B%P'7'9F9FD&9FD,=%4/[___](BQPD2(ML -M)`A,BV0D$$R+;"083(MT)"!(@\0HP\=%4/S____KVF9FD$B#["!(B1PD2(EL -M)`A(B?M,B60D$$R);"08@7\<AP```$R+9RAV"8-_(`-W(V9FD,=#4/[___]( -MBQPD2(ML)`A,BV0D$$R+;"082(/$(,.000^V1"0!/`AWUD4Q[83`=1WKU(GO -MZ`````!(BU,02#D0=2)!@\4!13AL)`%VN4$/ML5!BVR$:(GOZ`````!(A<!U -MT.N;QT-0_/___V9F9I#KE69F9I!F9F:09F:09F:0@W\<`W8&@W\@`W\'QT=0 -M_O____/#9F9FD&9F9I!F9I!(BT<HBU<<N1````"+<`A$BT`,A?9T!T2)P$B- -M2!!(8\)(.<%W#(7VBT<@=0Q!.<!V!\='4/[____SPV9FD&:02(/L($B)'"1( -MB6PD"$B)^TR)9"003(EL)!B!?QRO````3(MG*'8)@W\@`W<C9F:0QT-0_O__ -M_TB+'"1(BVPD"$R+9"003(ML)!A(@\0@PY!!#[9$)`$\$'?613'MA,!U'>O4 -MB>_H`````$B+4Q!(.1!U(D&#Q0%%.&PD`7:Y00^VQ4&+;(1PB>_H`````$B% -MP'70ZYO'0U#\____9F9FD.N59F9FD&9F9I!F9I!F9I!(@^P@2(D<)$B);"0( -M2(G[3(ED)!!,B6PD&(-_'`1(BV\H?@:#?R`#=R;'0U#^____2(L<)$B+;"0( -M3(MD)!!,BVPD&$B#Q"##9F9FD&9FD$B)[^B8Z/__+`%US@^V10T\0'?&13'M -MA,!U(>O$9F:01(GGZ`````!(BU,02#D0D'4B08/%`40X;0UVI4$/ML5$BV2% -M?$2)Y^@`````2(7`=<[KAL=#4/S___]F9I!FD.E\____9F9FD&9F9I!F9I!( -M@^P@2(D<)$B);"0(2(G[3(ED)!!,B6PD&(%_'+,```!(BV\H1(ME`'8&@W\@ -M`W<?QT-0_O___TB+'"1(BVPD"$R+9"003(ML)!A(@\0@PT2)Y^@`````2(7` -M=-1$B>?H`````$B+4Q!(.1!T"<=#4/S____KP4R-901!#[9$)`$\$'>L13'M -MA,!U(>NJ9I")[^@`````2(M3$$@Y$&:0=<Q!@\4!13AL)`%VBT$/ML5!BVR$ -M<(GOZ`````!(A<!USNEJ____9F:09F:09F:02(/L($B)'"1(B6PD"$B)^TR) -M9"003(EL)!B#?QP(2(MO*$2+90!V!H-_(`-W(L=#4/[___](BQPD2(ML)`A, -MBV0D$$R+;"082(/$(,-F9I!$B>?H`````$B%P'311(GGZ`````!(BU,02#D0 -M=`G'0U#\____Z[Y,C64$3(GGZ-WF__\L`76G00^V1"0-/$!WG44Q[83`=2GK -MFV9FD&9FD(GOZ`````!(BU,02#D09I!UO$&#Q0%%.&PD#0^&=/___T$/ML5! -MBVR$?(GOZ`````!(A<!URNE3____9F:09I!$BT<<187`>`:#?R`K=P?'1U#^ -M____\\-F9F:09F9FD$B#[!!(B1PD2(EL)`A(B?N#?QP(2(M'*(LH=C1$BT\@ -M187)>"N)[^@`````2(7`=!^)[^@`````2(M3$$@Y$'06QT-0_/___^L-9F:0 -M9F:0QT-0_O___TB+'"1(BVPD"$B#Q!##9F9FD&9F9I!F9I!(@^P02(D<)$B) -M;"0(2(G[@W\<"$B+1RB+*'8T1(M7($6%TGXKB>_H`````$B%P'0?B>_H```` -M`$B+4Q!(.1!T%L=#4/S____K#69FD&9FD,=#4/[___](BQPD2(ML)`A(@\00 -MPV9F9I!F9F:09F:02(/L$$B)'"1(B6PD"$B)^X-_'`A(BT<HBRAV-$2+7R!% -MA=MX*XGOZ`````!(A<!T'XGOZ`````!(BU,02#D0=!;'0U#\____ZPUF9I!F -M9I#'0U#^____2(L<)$B+;"0(2(/$$,-F9F:09F9FD&9FD$B#[!!(B1PD2(EL -M)`A(B?N#?QP-2(M'*(LH=BR+1R"%P'@EB>_H`````$B%P'09B>_H`````$B+ -M4Q!(.1!T$,=#4/S____K!\=#4/[___](BQPD2(ML)`A(@\00PV9FD$B#[!!( -MB1PD2(EL)`A(B?N#?QP-2(M'*(LH=BR+1R"%P'XEB>_H`````$B%P'09B>_H -M`````$B+4Q!(.1!T$,=#4/S____K!\=#4/[___](BQPD2(ML)`A(@\00PV9F -MD$B#[!!(B1PD2(EL)`A(B?N#?QP-2(M'*(LH=BR+1R"%P'@EB>_H`````$B% -MP'09B>_H`````$B+4Q!(.1!T$,=#4/S____K!\=#4/[___](BQPD2(ML)`A( -M@\00PV9FD$B#[!!(B1PD2(EL)`A(B?N#?QP#2(M'*(LH=E6+1R"%P'A.B>_H -M`````$B%P'1"B>_H`````$B+4Q!(.1!T"<=#4/S____K,(!X$`1V(TB+D(`" -M``!(A=)T%X"ZJP````!U#@^V@&$"``"#X!@\"'0'QT-0_O___TB+'"1(BVPD -M"$B#Q!##9F9FD&9FD&9FD$B#[!!(B1PD2(EL)`A(B?N#?QP#2(M'*(LH=C2+ -M1R"%P'@MB>_H`````$B%P'0AB>_H`````$B+4Q!(.1!T"<=#4/S____K#X!X -M$`%T"6:0QT-0_O___TB+'"1(BVPD"$B#Q!##9F9FD&9F9I!F9I!(@^P02(D< -M)$B);"0(2(G[@W\<`TB+1RB+*'8TBT<@A<!X+8GOZ`````!(A<!T(8GOZ``` -M``!(BU,02#D0=`G'0U#\____ZP^`>!`!=`EFD,=#4/[___](BQPD2(ML)`A( -M@\00PV9F9I!F9F:09F:02(/L&$B)'"1(B6PD"$B)^TR)9"00@W\<!TB+1RB+ -M*$2+8`1V>XM7((72>'2)[^@`````2(7`=&A$B>?H`````$B%P'1;B>_H```` -M`$2)YTB)Q>@`````2(G"2(M%`$@[0Q!T"<=#4/S____K.D@[`G7R2(M%"(!X -M"@!T)(!Z$`%U'DB#?5@`=!=(BX6``@``2(7`=!*`N*L`````=`EFD,=#4/[_ -M__](BQPD2(ML)`A,BV0D$$B#Q!C#9F:09F:02(/L$$B)'"1(B6PD"$B)^X-_ -M'`=(BT<HBRAV-(M/((7)>"V)[^@`````2(7`="&)[^@`````2(M3$$@Y$'0) -MQT-0_/___^L/@'@0!'<)9I#'0U#^____2(L<)$B+;"0(2(/$$,-F9F:09F9F -MD&9FD$B#[!!(B1PD2(EL)`A(B?N#?QQ72(M'*(LH=CF+=R"%]G@RB>_H```` -M`$B%P'0FB>_H`````$B+4Q!(.1!T"<=#4/S____K%(!X$`1V!TB#>!@`=`?' -M0U#^____2(L<)$B+;"0(2(/$$,-F9I!F9I!(@^P02(D<)$B);"0(2(G[@W\< -M0TB+1RB+*'8VBW\@A?]X+X7M=#*)[^@`````2(7`=!^)[^@`````2(M3$$@Y -M$'0)QT-0_/___^L-@'@0`70'QT-0_O___TB+'"1(BVPD"$B#Q!##9F:09F:0 -M9F:02(/L$$B)'"1(B6PD"$B)^X-_'`A(BT<HBRAV.$2+1R!%A<!X+X7M=#*) -M[^@`````2(7`=!^)[^@`````2(M3$$@Y$'0)QT-0_/___^L-@'@0`70'QT-0 -M_O___TB+'"1(BVPD"$B#Q!##9F9FD&9FD$2+5QQ%A=)X"T2+3R!%A<EX`O/# -MQT=0_O___\-F9F:01(M?'$6%VW@&@W\@*W<'QT=0_O____/#9F9FD&9F9I"+ -M1QR%P'@&@W\@?W<'QT=0_O____/#9F9FD&9FD&9FD$B#[!!(B1PD2(EL)`A( -MB?M(BV\HBT\<OQ`````/ME4+#[9U#,'B"4"`_@)T.$ACP4@YQW<;0(#N`8M+ -M(+\0````=%1(8\%(.<=V)69FD&:0QT-0_O___TB+'"1(BVPD"$B#Q!##B=!( -MC7@0Z\!F9I"+?0#H`````$B%P'33BWT`Z`````!(BU,02#D0=!G'0U#\____ -MZ\")T$B->!!(8\%(.<=WJ^O)@'@0`76C9F:0ZZ5F9F:09F9FD&9FD&9FD$B# -M[!!(B1PD2(EL)`A(B?M(BV\HBT\<OQ0````/MU40#[9U$L'B"4"`_@)T.$AC -MP4@YQW<;0(#N`8M+(+\4````=%1(8\%(.<=V)69FD&:0QT-0_O___TB+'"1( -MBVPD"$B#Q!##B=!(C7@4Z\!F9I"+?0#H`````$B%P'33BWT`Z`````!(BU,0 -M2#D0=!G'0U#\____Z\")T$B->!1(8\%(.<=WJ^O)@'@0`76C9F:0ZZ5F9F:0 -M9F9FD&9FD&9FD$B#[!!(B1PD2(EL)`A(B?N#?QP#2(M'*(LH=BR+1R"%P'@E -MB>_H`````$B%P'09B>_H`````$B+4Q!(.1!T$,=#4/S____K!\=#4/[___]( -MBQPD2(ML)`A(@\00PV9FD$B#["A(B6PD"$B)'"1(B?U,B60D$$R);"083(ET +M`4&X`````.L#@\<!2(/!`4B#^09UGXGXPV9F9I!F9F:09F9FD(GPP.@$C4A7 +MC5`P/`H/0]&(%XGP@^`/@_@)?@J)\(/@#X/`5^L(B?"#X`^#P#"(1P'#9F9F +MD&9F9I!F9I!F9I!(@^P02(D<)$R)9"0(2(G[08GT3(G@#[;TZ*+___]!#[;T +M2(/#`DB)W^B2____2(L<)$R+9"0(2(/$$,-F9F:0QT($`````,<"`````+@` +M````PV9F9I!F9I!F9I!F9I!(BT=@2(7`=%%(QT!``````(!(3`1(QT=@```` +M`$C'1W``````2,=':`````"+1PB#^#]_$TB+5WA(F$C'A,)H!````````,-( +MBU=X2)A(QX3":`(```````#SPV9F9I!(BT=@2(7`=%%(QT!``````(!@3/M( +MQT=@`````$C'1W``````2,=':`````"+1PB#^#]_$TB+5WA(F$C'A,)H!``` +M`````,-(BU=X2)A(QX3":`(```````#SPV9F9I!(@^P(2,?'`````.@````` +MN`````!(@\0(PV9FD&9FD%532(/L.,8$)&W&1"0!_\9$)`(CQD0D`Q3&1"0$ +M.L9$)`7OQD0D!A;&1"0'DDB+KP`)``!(A>U(#T3O2(U$)!!(B<+&``!(@\`! +M2(G32(U,)#!(.<AU[,9$)!0!N2````"^#@```$B)[^@`````A<!U0K^`&@8` +MZ`````"Y(````$B)VKX/````2(GOZ`````"#^"!U'DB-<Q!(B>>Y"````/SS +MI@^7P@^2P+D!````.,)T%DC'QP````"X`````.@`````N0`````/ML%(@\0X +M6UW#9F9FD&9F9I!F9F:005=!5D%505154TB#[&A)B?Q,B[_X"```28''D!0` +M`$B+!TB%P'032(VP``#^_TB)-TB+?R#H`````$F+="002(7V=`I)BWPD(.@` +M````28MT)!A(A?9T"DF+?"0@Z`````!(C4PD94B-5"1F2(UT)&=!#[=\)#Q( +MC40D6DB)1"0X2(U$)%Q(B40D,$B-1"162(E$)"A(C40D6$B)1"0@2(U$)&!( +MB40D&$B-1"1B2(E$)!!(C40D8TB)1"0(2(U$)%Y(B00D3(U,)&1,C40D5.@` +M````28NT)$`)``!(A?9T($F-O"0@"0``Z`````!)B[=`"0``28V_(`D``.@` +M````28NT)&@)``!(A?9T($F-O"1("0``Z`````!)B[=H"0``28V_2`D``.@` +M````28NT))`)``!(A?9T($F-O"1P"0``Z`````!)B[>0"0``28V_<`D``.@` +M````28NT)#`+``!(A?9T($F-O"00"P``Z`````!)B[<P"P``28V_$`L``.@` +M````@'PD9P!T1+T`````38VT)&`+``!-C:]@"P``#[?=28NTW(`+``!,B??H +M`````$F+M-^`"P``3(GOZ`````"#Q0$/MD0D9V8YZ'?028NT)!`0``!(A?9T +M($F-O"3P#P``Z`````!)B[<0$```28V_\`\``.@`````28NT)$@0``!(A?9T +M($F-O"0H$```Z`````!)B[=($```28V_*!```.@`````28NT)+@0``!(A?9T +M($F-O"28$```Z`````!)B[>X$```28V_F!```.@`````28NT)+@)``!(A?9T +M($F-O"28"0``Z`````!)B[>X"0``28V_F`D``.@`````28NT))`*``!(A?9T +M($F-O"1P"@``Z`````!)B[>0"@``28V_<`H``.@`````28NT)"`*``!(A?9T +M($F-O"0`"@``Z`````!)B[<@"@``28V_``H``.@`````28NT)$@*``!(A?9T +M($F-O"0H"@``Z`````!)B[=("@``28V_*`H``.@`````28NT).`*``!(A?9T +M($F-O"3`"@``Z`````!)B[?@"@``28V_P`H``.@`````28NT)`@+``!(A?9T +M($F-O"3H"@``Z`````!)B[<("P``28V_Z`H``.@`````28NT)%@+``!(A?9T +M($F-O"0X"P``Z`````!)B[=8"P``28V_.`L``.@`````28NT)*`/``!(A?9T +M($F-O"2`#P``Z`````!)B[>@#P``28V_@`\``.@`````28NT)-@/``!(A?9T +M($F-O"2X#P``Z`````!)B[?8#P``28V_N`\``.@`````28NT)(`0``!(A?9T +M($F-O"1@$```Z`````!)B[>`$```28V_8!```.@`````28NT)+@*``!(A?9T +M($F-O"28"@``Z`````!)B[>X"@``28V_F`H``.@`````28NT).`0``!(A?9T +M+TF+E"3H$```28V\),`0``#H`````$F+E^@0``!)B[?@$```28V_P!```.@` +M````28NT)!`1``!(A?9T+TF+E"08$0``28V\)/`0``#H`````$F+EQ@1``!) +MB[<0$0``28V_\!```.@`````28NT)$`1``!(A?9T+TF+E"1($0``28V\)"`1 +M``#H`````$F+ET@1``!)B[=`$0``28V_(!$``.@`````28NT)*`1``!(A?9T +M+TF+E"2H$0``28V\)(`1``#H`````$F+EZ@1``!)B[>@$0``28V_@!$``.@` +M````28NT)'`1``!(A?9T+TF+E"1X$0``28V\)%`1``#H`````$F+EW@1``!) +MB[=P$0``28V_4!$``.@`````28NT)-`1``!(A?9T+TF+E"38$0``28V\)+`1 +M``#H`````$F+E]@1``!)B[?0$0``28V_L!$``.@`````28NT)``2``!(A?9T +M+TF+E"0($@``28V\).`1``#H`````$F+EP@2``!)B[<`$@``28V_X!$``.@` +M````28NT)#`2``!(A?9T+TF+E"0X$@``28V\)!`2``#H`````$F+ES@2``!) +MB[<P$@``28V_$!(``.@`````2(/$:%M=05Q!74%>05_#9F9FD&9FD$B#[!A( +MB5PD"$R)9"002(G[Z`````!(B=_H`````$R-HY`4``!,B>?H`````$B)W^@` +M````O]`'``#H`````$B)W^@`````O@$```!(B=_H`````+X!````3(GGZ``` +M``!(BUPD"$R+9"002(/$&,-(@^P82(E<)`A,B60D$$F)_$&(="1/0`^VWHG> +MZ`````!)@<20%```B=Y,B>?H`````+@!````2(M<)`A,BV0D$$B#Q!C#9F9F +MD&9FD&9FD%-(B?OH`````$B+N_@(``!(@<>0%```Z`````!;PV:04TB)^^@` +M````2(N[^`@``$B!QY`4``#H`````%O#9I!(@^P(Z``````/ML!(@\0(PV9F +M9I!F9F:09F9FD&9FD$B#[#A(B5PD"$B);"003(ED)!A,B6PD($R)="0H3(E\ +M)#!(B?M!B?1!B=5(BV]@3(MW>$B%[0^$&P$``("_RP`````/A0X!``!,B??H +M`````$F)QTB%P`^$^@```,9`..'&0#D!183D=`U!@/T!&<#WT(/`!^L+08#] +M`1G`]]"#P`U!B$<Z0<9')(`/MT4X9D&)1R!)B5\H0<='-`````!)QT=(```` +M`$G'AZ``````````3(G^3(GWZ`````#&@\L````!9L>#R````/0!2(7;=$Y( +MBU-@2(72=$]F@;O(````E@!U#DB+>E"^(0```.@`````9H.KR`````&_T`<` +M`.@`````3(GWZ`````!(BU-@2(72=`F`N\L`````=;MF@[O(`````'0:08!_ +M)`!U$TB+0V`/MT!J9HE#6KL`````ZP6[_____TR)_DR)]^@`````ZP6[____ +M_XG82(M<)`A(BVPD$$R+9"083(ML)"!,BW0D*$R+?"0P2(/$.,-F9F:09F9F +MD&9F9I!F9I!(@^Q(2(E<)!A(B6PD($R)9"0H3(EL)#!,B70D.$R)?"1`2(G] +M08GU3(MG8$R+=WA-A>0/A'D$``"`O\L`````#X5L!```3(GWZ`````!)B<=( +MA<`/A%@$``#V10`"#X7\````08#]%'<,00^VQ8T$0,'@`NL7N(G___]!]N5F +MP>@(P.@$#[;`!?````!!QD<XX4'&1SD!0<9'.AQ!B$<[0<9')(!!#[=$)#AF +M08E'($F);RA!QT<T`````$G'1T@`````2<>'H`````````!,B?Y,B??H```` +M`,:%RP````%FQX7(````Q`E(A>UT3DB+56!(A=)T4V:!O<@```"6`'4.2(MZ +M4+XA````Z`````!F@ZW(`````;_0!P``Z`````!,B??H`````$B+56!(A=)T +M"8"]RP````!UNV:#O<@`````#X15`P``NP````!!@'\D``^$2@,``.E``P`` +M3(GWZ`````!(B40D$$B%P`^$*@,``$F-7UA(BT`02(D$)$'&1S@:0<9'.0A! +MQD<Z&D'&1SL`0<9'/!!!QD<]`$B+1"0028E'>$'&1R2`00^W1"0X9D&)1R!) +MB6\H2(M$)!!(BT`028E'2$''1S00````2(M%8$@%[````$F)1U!!QD<P($G' +MAZ``````````O@````!(B=_H`````$&+5S1(BT0D$$B+<!A(B=_H`````$R) +M_DR)]^@`````QH7+`````6;'A<@```#Z`$B%[71.2(M58$B%TG1/9H&]R``` +M`)8`=0Y(BWI0OB$```#H`````&:#K<@````!O]`'``#H`````$R)]^@````` +M2(M58$B%TG0)@+W+`````'6[9H.]R`````!T!T&`?R0`=!=(C70D$$R)]^@` +M````N______I_0$``$R)_DR)]^@`````3(GWZ`````!)B<=(A<!U'4B-="00 +M3(GWZ`````"[_____^G=`0``9F:09F:02(U86$B+/"1(@\<$2(L4)`^V0@,/ +MM@0'B$($QD<!"L9'`@"X`````$B+%"3&!!``2(/``4B#^`1U[D6$[74&@&<# +M_.M!00^VU6G28.H``+@?A>M1]^K!^@6`3P,#B='!Z1B(3P2)UL'N$$"(=P6) +MT,'H"(A'!HA7!XA/"$"(=PF(1PJ(5PM(BT0D$$F)1WA!QD<X%0^V!\#X!_?0 +M@\`108A'.4'&1SH`0<9'.P!!QD<\$$'&1ST`@"<_0<9')(!!#[=$)#AF08E' +M($F);RA(BT0D$$B+0!!)B4=(0<='-!````!(BT5@2`7L````28E'4$'&1S`@ +M2<>'H`````````"^`````$B)W^@`````08M7-$B+1"002(MP&$B)W^@````` +M3(G^3(GWZ`````#&A<L````!9L>%R````/H`2(7M=$Y(BU5@2(72=$]F@;W( +M````E@!U#DB+>E"^(0```.@`````9H.MR`````&_T`<``.@`````3(GWZ``` +M``!(BU5@2(72=`F`O<L`````=;MF@[W(`````'0,NP````!!@'\D`'0%N___ +M__](C70D$$R)]^@`````ZPIF9I!FD+O_____3(G^3(GWZ`````#K!;O_____ +MB=A(BUPD&$B+;"0@3(MD)"A,BVPD,$R+="0X3(M\)$!(@\1(PV9F9I!(@^QH +M2(E<)#A(B6PD0$R)9"1(3(EL)%!,B70D6$R)?"1@2(G]2(GS28G/08G518G& +M3(MG8$V%Y`^$M@,``("_RP`````/A:D#``!)BT0D4$B)1"0P2(M7>$B)5"0( +M9L>'R````!`G2(G7Z`````!(B40D*$B%P`^$=P,``$$/M\6)1"0$9D&#_01V +M%8G&2,?'`````+@`````Z`````#K%$B+?"0(Z`````!(B40D$$B%P'492(MT +M)"A(BWPD".@`````N______I0@,``(M4)`3!X@F)5"0D2(M$)`A(B[#X"``` +MQD8_`4B)ZK\%````Z`````!!@$PD3`)(BU5@OB$```!(BWPD,.@`````2(M4 +M)"A(@\)82(E4)!A%A/9T%4B+1"0HQX"4````"@```,9`."CK*$B+5"0HQX*4 +M````$@```,9"."I(BT0D$$B+>!"+5"0D3(G^Z`````!(BT5@]D!H`0^$@0`` +M`$&`_@$9P(/@`H/H>$B+5"0HB$(XQD(Y`$B)V$C!Z#B(0CI(B=A(P>@PB$([ +M2(G82,'H*(A"/$B)V$C!Z""(0CU(B=A(P>@8B$(^2(G82,'H$(A"/TB)V$C! +MZ`B(0D"(6D'&0D(`QD)#`$2)Z&;!Z`B(0D1$B&I%QD)&`,9"1P#K3T&`_@$9 +MP(/@`H/`*$B+5"0HB$(XQD(Y`$B)V$C!Z!B(0CI(B=A(P>@0B$([2(G82,'H +M"(A"/(A:/<9"/@!$B>AFP>@(B$(_1(AJ0,9"00!(BWPD*.@`````2(M%8`^W +M0#A(BU0D*&:)0B#&0B2`2(EJ*$B+5"002(M"$$B+5"0H2(E"2(M$)"2)0C1( +MBT0D$$B)0GC&0C`@2(M%8$@%[````$B)0E!(QX*@`````````+X`````2(M\ +M)!CH`````$B+1"0HBU`T2(M$)!!(BW`82(M\)!CH`````,:%RP````%(BW0D +M*$B+?"0(Z`````!(A>T/A)@```!(BU5@2(72#X2+````@+W+``````^$^0`` +M`&:!O<@```"6`'4.2(MZ4+XA````Z`````!F@ZW(`````;_0!P``Z`````!( +MBWPD".@`````2(M58$B%TG1`@+W+``````^$K@```.NS2(M4)"B`>B0`=2:[ +M`````$6$]G0ABU0D)$B+1"002(MP$$R)_^@`````NP````#K!;O_____2(M4 +M)"A(@WIX`'0O@7HT``@``'<32(G62(/&>$B+?"0(Z`````#K$TB+="0H2(/& +M>$B+?"0(Z`````!(BW0D*$B+?"0(Z`````!(BT0D"$B+L/@(``#&1C\`2(GJ +MOP8```#H`````$&`9"1,_>L<N______K%6:#O<@`````#X5&____Z7+___]F +MD(G82(M<)#A(BVPD0$R+9"1(3(ML)%!,BW0D6$R+?"1@2(/$:,-F9F:09F9F +MD&9FD$B#[!A(B1PD2(EL)`A,B60D$$B)\TB+1U!,BR!(BVYH#[9&)#P@=$@\ +M('<*A,!T(CP&=Q7K,#PB=#8\(F9F9I!R)(/`@#P!=AVX`````&:0ZV-(BT=` +MQT`$`````,:%L@````'K"L:%L@````UF9I!(@WMX`'0E@7LT``@``'<02(US +M>$R)Y^@`````ZPYFD$B-<WA,B>?H`````$B)WDR)Y^@`````2(GO_Y7(```` +MN`$```!(BQPD2(ML)`A,BV0D$$B#Q!C#9F9FD&9F9I!(@^PH2(D<)$B);"0( +M3(ED)!!,B6PD&$R)="0@2(G[28GU28G42(MO8$B%[74*2(G7_];I/@$``$B# +MOX@`````=0Y(@[^``````'0/9F9FD$R)YT'_U>D;`0``@+WH``````^%"`$` +M`(!]2O]F9F:0#X7Z````2(M%8$B%P'0*@'A1``^%YP```$B+?5#V1PP0#X79 +M````3(LW@+V#`````'0-2(GJO@8```#H`````$R)JX@```!,B:.0````#[95 +M2$B)T(/@!DB#^`9U*?;"`71]QD5*!<9%2P0/MI6!````2(MU6$B+?5!(B>GH +M`````.E_````2(/X!'5Y]L(!='1(BU5@2(72="\/MT).J`)T8X/@_6:)0DY( +MBT5@9L=`3@$`2(M%8,9`0AU(BW5@3(GWZ`````#K/,9%2@/&14L$2(GN3(GW +MZ`````#K)Y#&14H%QD5+!F;'A<@``````$B)[DR)]^@`````ZPAFD$R)YT'_ +MU4B+'"1(BVPD"$R+9"003(ML)!A,BW0D($B#Q"C#9F9FD&9FD&9FD&9FD%-( +MB?M(A?\/A,,```!(BW]XZ`````!(B<)(A<`/A'X```"`N!4!````='6`"P$/ +MMH`5`0``/`)U.DB#>W``=1D/MH/,````@^`#B$,"#[:"%`$``(A#`>MW#[:# +MS0```(A#`DB+0W`/MH`4`0``B$,!ZUT\`W59#[:#S````(/@`\'@`@*#S0`` +M`(A#`DB+0W`/MH`4`0``B$,!ZS-F9I!(BT-P2(7`=0M(BT-H2(7`=0[K'`^V +M@!0!``"(0P'K$`^V@,(```"(0P%F9I!F9I!;PV9F9I!F9F:09F:09F:055-( +M@^P(2(G[2(7_='>]``````^VA!UH"```//]T00^VT$B-!%)(C02"2,'@!4B) +MPD@#DT`)``!T)HM"2"4`__\`/0``_P!U%_9"2P1T$4B+>D!(A?]T".@````` +M9F:02(/%`4B!_8````!UIDB+@_@(``!(.=AU#$B-N)`4``#H`````$B#Q`A; +M7<-F9F:055-(@^P(2(G[2(VOD!0``.@`````2(E#*$B)12A(B9OX"```2(F= +M^`@``(N#$`D``(F%$`D``,:#;A0```'&A6X4```!2(G?Z`````!(B=_H```` +M`$B)[^@`````2(G?Z`````"$P'1G2(GOZ`````"$P'1;2(G?Z`````"_T`<` +M`.@`````2(G?Z`````#'@Y@!``#H`P``2,>#J`$```````!(B9NP`0``2(VS +MF`$``$B+>RCH`````+X`````2(G?Z`````"X`0```.L&D+@`````2(/$"%M= +MPV9F9I!32(G[Z`````!(@<.0%```2(G?Z`````"X`0```%O#D$%7059!54%4 +M55-(@^P82(ET)`A(B10D@ST```````^%;P$``,<%``````$```!$BST````` +MQT0D%`````!)Q\4`````2,?#`````$G'Q@````#I=@(```^WA@````#!X!!" +M#[<4+@G0.<4/A?$```!!N`````"_`````&9FD&:09H,\'P!U7TECT$B)T4C! +MX05*BP0N2(D$&4*+1"X(B409"`^V@0````!(P>(#2(T\`@^V1"03B$2[#0^V +M@0````!(C3P"#[9$)!*(1+L.#[:!`````$@!PL9$DP\`@($``````>MT#[:/ +M``````^VP;H`````0O<T-H72=$L/ML%)8]!(C0S5`````$B-/`$/MD0D$XA$ +MNPU(P>(%#[:"`````$B-/`$/MD0D$HA$NPX/MH(`````2`'!QD2+#P"`@@`` +M```!ZQ)!@\`!2(/'($&#^`0/A2;___^#A@`````!08/"`4B#QAA%.?H/A>7^ +M__]!@\0!08/\(`^%%P$``(-$)!0!@7PD%/\````/A3H!``!(@WPD"`!T"$B+ +M5"0(Q@(`BS4`````O0````"%]GXUN0````"]`````+H``````ZH`````2(-\ +M)`@`=`V+@@````!(BUPD"``#@\$!2(/"&#GQ==I(@SPD``^$[````$&Y```` +M`$&Z`````$G'Q`````!F0X,\(@`/A,T```!!#[:2`````(32=&=!N`````!) +M8\%,C1S%``````^VPH/H`4B-6`%+C00#2(TTA0````!(BSPDN00```#\\Z8/ +ME\(/DL`XPG4A2(-\)`@`=`]!#[:"`````$B+5"0(B`)!#[:J`````.L)28/` +M`4DYV'6T08/!`4F#PB!!@_D$=$SI;O___T2(9"02N0````"Z`````$2)YHM\ +M)!3H`````(G%0;H`````O@````!%A?\/CX_]___II?[__P^V1"04B$0D$T&\ +M`````.NY0`^VQ4B#Q!A;74%<05U!7D%?PV9F9I!F9F:09F9FD&9FD$B#[!A( +MB1PD2(EL)`A,B60D$(GU3(MG>$B+7V#V!P%T7TB+>UA(A?]T$$`/MM8/MK.! +M````Z`````!(B[L@`0``2(7_=!!`#[;5#[:S#0$``.@`````3(GGZ`````!( +MA<!T+8"X%0$```!T)$`/MM5(BW-`3(GGZ`````#K$F:00`^VUDB+<T!,B>?H +M`````$B+'"1(BVPD"$R+9"002(/$&,-F9F:09F:09F:09F:02(/L2$B)7"08 +M2(EL)"!,B60D*$R);"0P3(ET)#A,B7PD0$B)^T&)]$B+;V!,BV]X2(7M#X0W +M`P``@+_+``````^%*@,``/8'`@^%(0,```^VA9@!``"$P'0+0#CP=3J0Z0L# +M```/M@^#X0$/MLD/ME<"#[9W`40/MH4/`0``2,?'`````+@`````Z`````"[ +M_____^G<`@``3(GOZ`````!)B<9(A<`/A,,"``!(BT-@#[8+@^$!#[;)#[93 +M`@^V<P%%#[;,1`^V@`\!``!(Q\<`````N`````#H`````$'&1CCA0<9&.0%! +M@/P"#Y7`@\`:08A&.D'&1B2`#[=%.&9!B48@28E>*$''1C0`````2<=&2``` +M``!)QX:@`````````$R)]DR)[^@`````QH/+`````6;'@\@```#T`4B%VW1. +M2(M38$B%TG139H&[R````)8`=0Y(BWI0OB$```#H`````&:#J\@````!O]`' +M``#H`````$R)[^@`````2(M38$B%TG0)@+O+`````'6[9H.[R``````/A+<! +M``!!@'XD``^%K`$``$B+0V!(B40D$$B+0%!,BSA,B?_H`````$B)Q4B%P'46 +M2(M$)!#&@.D````!NP````#I>P$``$R)_^@`````28G$2(7`=2%(BU0D$,:" +MZ0````%(B>Y,B?_H`````+L`````Z4H!``!(C4582(E$)`C&13CAQD4Y`<9% +M.@-(BU0D$`^W0CAFB44@QH68````#TB)72C'130``@``28M4)!!(B55(N``` +M``#&!!``2(/``4@]``(``'7P3(EE>$C'A:``````````O@````!(BWPD".@` +M````BU4T28MT)!A(BWPD".@`````2(GN3(G_Z`````#&@\L````!9L>#R``` +M`/H`2(7;=$Y(BU-@2(72=$]F@;O(````E@!U#DB+>E"^(0```.@`````9H.K +MR`````&_T`<``.@`````3(G_Z`````!(BU-@2(72=`F`N\L`````=;MF@[O( +M`````'0F@'TD`'4@2(MU2$B+?"00Z`````!(BU0D$`^V@I@!``"(@\\```!( +M@WUX`'0,2(UU>$R)_^@`````2(GN3(G_Z`````"[`````.L%N_____],B?9, +MB>_H`````.L,9F9FD&9FD+O_____B=A(BUPD&$B+;"0@3(MD)"A,BVPD,$R+ +M="0X3(M\)$!(@\1(PV9FD&9FD$B#["A(B5PD"$B);"003(ED)!A,B6PD($B) +M^X`^"7<0#[8&_R3%`````&9FD&9FD+C_____Z28!``!(BT8(2(N0``D``$B% +MTD@/1-!(B[KX"```QH=O%````>@`````N`````#I]P````^V5@B^`````.BI +MZ/__Z>0````/ME8(O@$```#HENC__^G1````#[9V".@`````Z<,```!$#[9N +M"$R+9WA(BV]@N/_____V1U@(#X2G````28NT)/@(``!(B?J_!0```.@````` +M@$U,`DB+?5!(B>J^(0```.@`````@+V#`````'0?9F9FD+_0!P``Z`````!, +MB>?H`````("]@P````!UY46$[70,9H-+6A!F@TUJ$.L*9H-C6N]F@V5J[TF+ +MM"3X"```2(G:OP8```#H`````(!E3/VX`````.L:#[9V".@`````D.L.#[9V +M".@`````N`````!(BUPD"$B+;"003(MD)!A,BVPD($B#Q"C#9F9FD&9FD$B# +M[%A(B5PD0$B);"1(3(ED)%!(B?U,BV=X28N$)/@(``"`>#\`#X6T````2(N? +M@````$B+?V!$#[:/#P$``$&X`0```$0B10`/MDT"#[95`8MU"`^VA]L```") +M1"0X#[:'V@```(E$)#`/MH?9````B40D*`^VA]@```")1"0@#[:'UP```(E$ +M)!@/MH?6````B40D$`^VA]4```")1"0(#[:'U````(D$)$&#X`%(Q\<````` +MN`````#H`````$C'A8``````````BU4(2(N]D````$B)[O_3ZT%F9F:02(V? +MF````$F+?"0H2(G>Z`````#'A9@```#T`0``2,>%J`````````!(B:VP```` +M28M\)"A(B=[H`````$B+7"1`2(ML)$A,BV0D4$B#Q%C#9F9FD&9F9I!F9F:0 +M9F:005=!5D%505154TB#[`A(B3PD28GV#[?22(T$4DB-!()(P>`%28G%3`.O +M0`D``$R+A_@(``!)@<"0%```3(EN8$F)=4!)@WU8`'4U28-]8`!U+DB+!"0/ +MMGA#0(3_#X0\!```28MU4+D`````2#NPT!(```^$_`,``.D4!```9I!!@`X! +M28M%8$F)1G!)BT5828E&:$B+%"0/MGI#0(3_=$Y)BW50N0````!(.[+0$@`` +M=!OK+0^VP4B-%$!(C1202(L$)$@YM-#0$@``=1E(BQ0D#[9"08T$@4&(ALP` +M``#K#;D`````@\$!0#CY=<9(BP0D2(N(^`@```^V@>@(``"^`````#S_="E) +MBU582(72=!L/ML!(:<#(#P``2`.!D`D``+X`````2#G"="^^`0````^V@>D( +M```\_W0K28M56$B%TG0?#[;`2&G`R`\``$@#@9`)``!(.<)U"4&(=@'I]P`` +M`(/&`;H`````9I`/MH0*Z@@``#S_="</ML!(C03`2,'@!4@#@6@)``!).T5@ +M=0Q!B'8!Z<````!F9I"#Q@%(@\(!2(/Z!'7#B?%!#[:`Z`@``#S_="9)BU58 +M2(72=06-<0'K&`^VP$AIP,@/``!)`X"0"0``2#G"=>7K*T$/MH#I"```//]T +M*$F+55A(A=)T'`^VP$AIP,@/``!)`X"0"0``2#G"=09!B'8!ZTN#Q@&Z```` +M`&9FD&9FD$(/MH0"Z@@``#S_="8/ML!(C03`2,'@!4D#@&@)``!).T5@=0M! +MB'8!ZQ)F9I!FD(/&`4B#P@%(@_H$=<-(BQ0D@'I1`74]28M]6$B%_W0200^V +MM8$```"Z`````.@`````28N](`$``$B%_P^$O`$``$$/MK4-`0``N@````#H +M`````$F#O2`!````#X2<`0``28MM6(!]6`!T64&\`````$B-74A)B=](B=_H +M`````$B-2/!(BU502(E%4$B)61!(B5$82(D"@+D/`0``_W40@'E)`'4*2(.Y +M(`$```!U"D&#Q`%$.&58=[M$.&58#X61````00^VA0\!``!!B$8"@'U8``^$ +MDP$``+L`````3(UE2$R)Y^@`````2(U(\$B+55!(B4503(EA$$B)41A(B0)( +MBT%`2(7`=#P/MI$/`0``.%`"=#!(@[B``````'4F2(.XB`````!U'(A0`@^W +M43A(BP0D2(NP^`@``+\'````Z`````"#PP$X75@/AAH!``#KCD$/MH6!```` +M08A&`D'&A0\!``#_@'U8``^$^@```+L`````9F9FD&9FD$R)_^@`````2(U( +M\$B+55!(B4503(EY$$B)41A(B0*`N0\!``#_=$S&@0\!``#_2(M!0$B%P'0\ +M#[:1@0```#A0`G0P2(.X@`````!U)DB#N(@`````=1R(4`(/MU$X2(L$)$B+ +ML/@(``"_!P```.@`````@\,!.%U8=G+K@D$/MH6!````08A&`NMB#[;!2(T4 +M0$B-%)!(BP0D2#FTT-`2``!U(DB+%"0/MD)!C02!08A&`4&(ALP````X2D-U +M%.L-N0````"#P0%`./EUO4'&1@'_0<9&`@!!@[V0`0```'0+08N%E`$``$&( +M1@))C4X@28V5F````$F+A9@```!)B48@2(M""$B)00A(BT(02(E!$$B+0AA( +MB4$82(M"($B)02!)C4X,28V5A````$F+A80```!)B48,2(M""$B)00B+0A") +M01!)BX7`````28E&2$$/MT5H9D&)1EA!#[=%:F9!B49:28M%>$F)1E!!#[:% +M@@```$&(1EQ!#[:%F`$``$&(AL\```!!]D5,!'4)2(L\).@`````00^V54A( +MB="#X`9(@_@&=0OVP@%U!D&`#@+K!$&`)OU!#[953-#J@^($00^V!H/@^PG0 +M08@&00^V1@%!B(;.````00^V1@)!B(;-````3(GWZ`````!)BW5`N@````!( +MBSPDZ`````!,B??HYOC__TB#Q`A;74%<05U!7D%?PV9F9I!F9I!(@^P82(E< +M)`A(B6PD$$B)_4B+G_@(``#H`````(!]40%U+4B-NY`4``"`?U$!=%N`O8`4 +M````=1>^`````.@`````@(6`%````69FD&9FD$B-G9@!``!(BWTH2(G>Z``` +M``#'A9@!``#H`P``2,>%J`$```````!(B:VP`0``2(M]*$B)WN@`````2(M< +M)`A(BVPD$$B#Q!C#9F:09F:005154TB#[#!)B?M(B=-(BVXH3(MF,$0/ME4+ +M2(N'^`@``$B+L/@(``!!N`````"_`````+D`````9F9FD&9FD`^VE#'H"``` +M@/K_=$J-@8````!F/8$`=P>#QP'K.6:0#[;"2(N6:`D``$B-!,!(P>`%@+P0 +M%0$```-U&$&#P`%!C4`#@_@&=@Z#QP%!N`````#K`X/'`4B#P0%(@_D&=9]! +MB?E(B[;X"```2('&D!0``+$`#[:4,>@(``"`^O]T3XV!@````&8]@0!W!8/' +M`>L^#[;"2(N6:`D``$B-!,!(P>`%@+P0%0$```-U&$&#P`%!C4`#@_@&=A6# +MQP%!N`````#K"H/'`69F9I!F9I!(@\$!2(/Y!G6:03GZ#XWO!P``13G1#Y[` +MQP,`````//\/A-0'```/MOA(:?^0%```20.[^`@``.@`````2(G'2(7`#X2R +M!P``#[:`%0$``#P"#X7%`0``QP,$````#[9U!TB+%P^W1T"Y`````("\`F@( +M``#_#X29`0``0(#^(P^'@`$``$`/ML;_),4`````0<<$)$53`Q&X`0```&:0 +MZ6T!``!(C4PD++H0`P``O@$```#H`````(3`#X1%`0``BT0D+(7`#X1``0`` +M)?\#``!IP!`G``"-B!"6K_^Z<XBK3(G(]^*)R"G0T>@!PL'J!T&)%"2X`0`` +M`.D2`0``2(U,)"RZ"`,``+X!````Z`````"$P`^$Z@```(M$)"R%P`^$Y0`` +M`"7_`P``:<#H`P``C8C(Y??_NLMK**^)R/?BB<@IT-'H`<+!Z@1!B10DN`$` +M``#IMP```$B-3"0LN@@#``"^`0```.@`````A,`/A(\```"+1"0LA<`/A(H` +M``#!Z!`E_P,``&G`Z`,``(V(R.7W_[K+:RBOB<CWXHG(*=#1Z`'"P>H$08D4 +M)+@!````ZUQ(C4PD++H,`P``O@$```#H`````(3`=#B+1"0LA<!T-R7_`P`` +M:<#H`P``C8C(Y??_NLMK**^)R/?BB<@IT-'H`<+!Z@1!B10DN`$```#K#+@` +M````ZP6X`0````^VR`^VP>GP!0``/`,/A=8%``#'`P0```!$#[9-!TC'!"0` +M````2,=$)`@`````2,=$)!``````2,=$)!@`````2(L7#[:"_0```(3`#X2A +M````0;@`````28GC#[;`@^@!3(U0`;X`````N`$```")QT2)P=/G#[:$%NH( +M```\_W0H#[;`2(T$P$C!X`5(B<%(`XIH"0``2(N!B````$B+0"`/MD`*.?AT +M$$B#Q@%(@_X$#X0F!0``Z[Q(A<D/A!L%```/MT%`@+P":`@``/\/A`D%``"` +MN14!```##X7\!```2XD,PTF#P`%-.=`/A7+___]!@/E5#X?7!```00^VP?\D +MQ0````!!QP0D0`,#$;@!````Z;\$``!(C4PD+$&-00&#X`-(BSS$NC0#``"^ +M`0```.@`````A,`/A),$```/MU0D+(E4)"R!^O__``!U$D''!"3_____N`$` +M``#I=00``+C`X>0`B=&Z`````/?Q08D$)+@!````Z5D$``!(C4PD+$B+?"0( +MNA`#``"^`0```.@`````A,`/A#,$``"+1"0L)?\#``!IP!`G``"-B!"6K_^Z +M<XBK3(G(]^*)R"G0T>@!PL'J!T&)%"2X`0```.D!!```2(U,)"Q(BWPD"+H( +M`P``O@$```#H`````(3`#X3;`P``BT0D+"7_`P``:<#H`P``C8C(Y??_NLMK +M**^)R/?BB<@IT-'H`<+!Z@1!B10DN`$```#IJ0,``$B-3"0L2(M\)`BZ"`,` +M`+X!````Z`````"$P`^$@P,```^W1"0N)?\#``!IP.@#``"-B,CE]_^ZRVLH +MKXG(]^*)R"G0T>@!PL'J!$&)%"2X`0```.E0`P``2(U,)"Q(BWPD"+H,`P`` +MO@$```#H`````(3`#X0J`P``BT0D+"7_`P``:<#H`P``C8C(Y??_NLMK**^) +MR/?BB<@IT-'H`<+!Z@1!B10DN`$```#I^`(``$B-3"0L2(L\)+H4`P``O@$` +M``#H`````(3`#X33`@``BU0D+('B_P,``$AITCJX`0!(@<+C2@,`2,'J!4BX +M0WBT<<1:?`I(]^)(P>H'08D4)+@!````Z9T"``!(C4PD+$B+?"0(NA0#``"^ +M`0```.@`````A,`/A'<"``"+5"0L@>+_`P``2&G2.K@!`$B!PN-*`P!(P>H$ +M2+B%\&CCB+7X%$CWXDC!Z@A!B10DN`$```#I00(``$B-3"0L2(M\)!"Z%`,` +M`+X!````Z`````"$P`^$&P(``(M4)"R!XO\#``!(:=+F$T`"2('"#?].!$BX +MO4)ZY=64O]9(]^)(P>H708D4)+@!````Z>D!``!(C4PD+$B+?"08NA0#``"^ +M`0```.@`````A,`/A,,!``"+5"0L@>+_`P``2&G2KD7A`$B!PBE2KP%(N-LT +MMM>"WAM#2/?B2,'J$D&)%"2X`0```.F1`0``2(U,)"Q(BWPD"+JP`P``O@$` +M``#H`````(3`#X1K`0``BT0D+,'H#X/@`4&)!"2X`0```.E8`0``@'T(`'01 +M2(M$)`B!H!@!``#_]___ZP](BT0D"(&(&`$````(``!(BWPD".@`````N`$` +M``#I'@$``(!]"`!T$4B+1"0(@:`8`0``_^___^L/2(M$)`B!B!@!````$``` +M2(M\)`CH`````+@!````Z>0```"`?0@`=!%(BT0D"(&@&`$``/_?___K#TB+ +M1"0(@8@8`0```"```$B+?"0(Z`````"X`0```.FJ````@'T(`'012(M$)`B! +MH!@!``#_O___ZP](BT0D"(&(&`$```!```!(BWPD".@`````N`$```#K<X!] +M"`!T$4B+1"0(@:`8`0``___^_^L/2(M$)`B!B!@!``````$`2(M\)`CH```` +M`+@!````ZSR`?0@`=!%(BT0D"(&@&`$``/___?_K#TB+1"0(@8@8`0`````" +M`$B+?"0(Z`````"X`0```.L%N``````/ML#K!;@`````#[;`ZQ*X`````.L+ +MQP,`````N`````!(@\0P6UU!7,-F9F:09F:09F:005=!5D%505154TB#[#A) +MB?R)\$B)TTF)S4&)]D'![AA!B?=!P>\0#[;4B%0D$$"(="0/2(VKD!0``+@` +M````D,8$&`!(@\`!2#T@*P``=?!,B6L@BP4`````B$-`@\`!B04`````1(AS +M.T2(>SH/MD0D$(A#.0^V5"0/B%,XQD-!`$$/MP0D9HE#,$$/MT0D`F:)0S)! +MBT0D!(E#-$B-DR`I``!(B9.(%```3(EM(`^V0T"(14!$B'4[1(A].@^V1"00 +MB$4Y#[9$)`^(13C&14$!00^W!"1FB44P00^W1"0"9HE%,D&+1"0$B44T2(F5 +MB!0```^W0S)F/20G#X04`0``9CTD)P^'A````&8]1"$/A``!``!F/40A=T1F +M/2`A#X3P````9CT@(7</9CU0!P^%]````.G;````9CTB(9`/A-````!F/4`A +M9F:09F:0#X74````Z;L```!F9I!FD&8]$"</@L````!F/1$G9I`/AJ````!F +M+2`G9H/X`F:0#X>D````Z8L```!F9I!FD&8]@"</A'P```!F/8`G9I!W+F8] +M0"=T;F8]0"=F9F:0=PAF/3`G=7+K7&8]1"=FD'149CU@)W5BZTQF9I!F9I!F +M/8!R=$!F/8!R9F:09F:0=PAF/8(G=4+K+&8]@)%FD'0.9CV`E'4RZQQF9I!F +M9I!FQT,\@)'&0SX$9L=%/("1QD4^!.L49L=#/("4QD,^!&;'13R`E,9%/@1! +M#[9$)`B(0T)!#[9$)`B(14*Y```$`+H`````O@(```!,B>_H`````$B)`[D` +M(```N@````"^`````$R)[^@`````2(G!2(E#$$B+`TB%P`^$Y0$``$B%R0^$ +MW`$``$B-D``"`0!(B5,(2(V````"`$B)`T@%`$```$B)10!(B54(2(E-$$2+ +M!0````!%A<!^9[X`````N0````!(Q\<`````#[<$.69!.P0D=3\/MX$````` +M9D$[1"0"=3"+D0````"#P@&)D0````!$BXD`````187)=!5$.<IV$(G0N@`` +M``!!]_&)D0````"#Q@%(@\$81#G&=:I(BT,(2"W@?0``QP`!\`,`2(M#"$@M +MV'T``,<``0``Z$B+>R"^>````.@`````B<(E`'```#T`(```=A2`YH^`SB!( +MBWL@OG@```#H`````$2(="0C1(A\)"(/ME0D$(A4)"$/MD0D#XA$)""]```` +M`$&Y`````$G'Q`````!,C6PD(&9#@SPA``^$H@```$&`N0``````#X2$```` +M0;@`````2&/%3(T4Q0````!-B>M+C00"2(TTA0````"Y!````/Q,B=_SI@^7 +MP@^2P#C"=3M!#[:!`````(/``4&(@0````!!#[:1`````(32=!TXT'89#[;` +M#[;*N@````!F]_%!B)$`````9F9FD$&-4`%)@\`!00^V@0`````YT'^0@\4! +M28/!((/]!`^%4O___\>#$`D```$```"X`0```.L%N`````!(@\0X6UU!7$%= +M05Y!7\-F9F:09F:005154TB)^TB)]4B+?WA!O`$```!$(B.X`````&9F9I#& +M!"@`2(/``4B#^"AU\DB+MX@4``!(B?*P`&9FD&9FD,8$$`!(@\`!2#T``@`` +M=?!(C4XVN@````!F9F:09F:0#[9$4R&(!%$/MD13((A$40%(@\(!2(/Z%'7E +M2(U.%+(`#[9$4PV(!%$/MD13#(A$40%(@\(!2(/Z"G7E2(U.+K(`#[9$4TF( +M!%$/MD132(A$40%(@\(!2(/Z!'7E2(EU&$B+0U!(@\`!2(E%`$B#>V``=4'V +M`P%T/$B+0VA(A?\/E<)(A<!T$H32=`X/MD!;@+P':`@``/]U&TB+0W"$TG0< +M2(7`=!</MT!`@+P':`@``/]T"0^V0P&(10SK(.@`````2(7`=!*`N!4!```" +M=0D/MD,!B$4,ZP3&10S_#[9#`HA%#;@!````]D-:$'0$#[9#7(A%#L9%$A#& +M11$01(G@C10`OOW___]`(G4*"=9`B'4*P>`%#[9-"(/AWPG!B$T(#[=#6$C! +MZ`>#X`'!X`:#X;\)P8A-"`^W0UA(P>@"@^`!#[95"8/B_@G"B%4)#[=#6DC! +MZ`/!X`>#X7\)P8A-"`^W0UI(T>B#X`$!P(/B_0G"B%4)#[=#6$C!Z`.#X`'! +MX`:#XK\)PHA5"0^W0UI(P>@$P>`'@^)_"<*(50F#R1"(30@/M@/0Z(/@`8/F +M_@G&0(AU"@^V`X/@!(/F^PG&0(AU"F;'110`$`^V@\\```"(10\/MH/,```` +MB$4@6UU!7,-F9F:09F9FD&9FD$%6055!5%5308GU08G62(G+3(G%2(7)=!>X +M`````&:0Q@08`$B#P`%(/:P```!U\$B%[709N`````!F9I!F9I#&!"@`2(/` +M`4B#^"AU\DR+I_@(``!!#[;U3(GGZ`````")PF:%P'0.#[?`08"\!&@(``#_ +M=4A-BZ0D^`@``$F!Q)`4``!)B[PD^`@``.@`````02G%00^V]4R)Y^@````` +MB<)FA<`/A$\#```/M\!!@+P$:`@``/\/A#T#```/M\)!#[:$!&@(``!F@?J! +M``^'4@(``$F+C"20"0``#[?`2&G`R`\``$B--`%(A=L/A-8```!(BU802(72 +M='5!#[:$).@(```\_W08#[;`2&G`R`\``$B-!`&_@````$@YPG0E00^VA"3I +M"```//]T'`^VP$AIP,@/``!(C00!2#G"=0F_@0```$"(>P*`?EH`=#"Z```` +M``^VP@^V3`9PN`$```#3X`E#((/"`3A66G81Z^3&0P+_2(M&"`^V0`V)0R#& +M`P$/MD99B$,!2(M&>$B)0P1(BX:(````2(E##$B+AI````!(B4,4BX:@```` +MB4,<1(EK)`^VAL````")0RBX`````.DV`@``2(7M#X0H`@``187V#X@?`@`` +M#[:&P````$$YQ@^-#P(``$ECQDB-!$!(P>`$2`'P2(V0P`````^V2@B(30`/ +MME()B%4!2(N`T`````^V`(/@#XA%`H#Y`W0N@/D#=PZ`^0(/A:D```#IJP`` +M`(#Y!&9FD&9FD'1`@/D2#X60````9F:09I#K7TECQDB-!$!(P>`$2(N4!M`` +M```/MD(!@^`'#[;`P>`(#[92`@'0C02``<")103K8$ECQDB-!$!(P>`$2(N$ +M!M`````/MD`"A,!U"<=%!`````#K/`^VP(/H%(E%!.LQ26/&2(T$0$C!X`1( +MBY0&T`````^V0@+!X`@/ME(#`="-!(`!P(E%!.L'QT4$`````$B-30A)8\9( +MC01`2,'@!$B-A`;0````2(U0"$B+0`A(B44(2(M""$B)00A(BT(02(E!$$B+ +M0AA(B4$8N`````#IV0````^WP$B-!,!(P>`%2(G%20.L)&@)``#&0P+_Q@," +M28N4)&@)```/MD00.XA#`4B+A8@````/MD`-B4,@#[:%%0$``#P"=2O'0P1( +M4%0`QT,,4F]C:\=#$&5T4W3'0Q1O<B``#[=U/DB->Q?HNL+__^M'/`-U(<9# +M`1#'0R`!````QT,$2%!4`,=##$5*,S1FQT,0,`#K(L9#!'8/MW4\2(U[!>B" +MPO__QD,,9`^W=3Y(C7L-Z''"___&0QQR#[9U.4B->QWH(,+__T2):R2X```` +M`.L%N/____];74%<05U!7L-F9F:09F:0055!5%5308GU2(G3N`````#&!!@` +M2(/``4@]*`T``'7P2(NO^`@``$$/MO5(B>_H`````(G"9H7`=`T/M\"`O`5H +M"```_W5%2(NM^`@``$B!Q9`4``!(B[WX"```Z`````!!*<5!#[;U2(GOZ``` +M``")PF:%P`^$D0,```^WP("\!6@(``#_#X2``P``#[?"#[:$!6@(``!F@?J! +M``^'C0(``$B+C9`)```/M\!(:<#(#P``3(T$`4F+4!!(A=)T=`^VA>@(```\ +M_W08#[;`2&G`R`\``$B-!`&^@````$@YPG0C#[:%Z0@``#S_=!P/ML!(:<#( +M#P``2(T$`4@YPG4)OH$```!`B',"08!X6@!T,KH`````#[;"00^V3`!PN`$` +M``#3X`E#((/"`4$X4%IV$>OBQD,"_TF+0`@/MD`-B4,@Q@,!00^V0%F(0P%) +MBT!X2(E#!$F+@(@```!(B4,,28N`D````$B)0Q1!BX"@````B4,<1(EK)$&` +MN,``````#X2+`@``0;D`````00^V^4ACQTB-#(!(C0S+2(T$0$C!X`1,`<!( +MC9#`````#[9R"$"(L:@````/ME()B)&I````2(N`T`````^V`(/@#XB!J@`` +M`$"`_@-T-$"`_@-W$4"`_@(/A=,```!FD.G>````0(#^!&9F9I!F9I!T2T"` +M_A(/A;4```!F9F:0ZWU(8\](C01)2,'@!$F+E`#0````2(T,B0^V0@&#X`</ +MML#!X`@/ME("`="-!(`!P(F$RZP```#IA@```$ACUTB-!%)(P>`$28N$`-`` +M```/MD`"A,!U$4B-!)+'A,.L`````````.M:2&/72(T4D@^VP(/H%(F$TZP` +M``#K1$ACSTB-!$E(P>`$28N4`-````!(C0R)#[9"`L'@"`^V4@,!T(T$@`'` +MB83+K````.L22&/'2(T$@,>$PZP`````````2&/'2(T4@$B-E-.@````2(UR +M$$B-!$!(P>`$28V$`-````!(C4@(2(M`"$B)0A!(BT$(2(E&"$B+01!(B480 +M2(M!&$B)1AA!@\$!13B(P`````^&Z0```.E?_O__#[?`2(T$P$C!X`5)B<1, +M`Z5H"0``QD,"_\8#`DB+E6@)```/MD00.XA#`4F+A"2(````#[9`#8E#($$/ +MMH0D%0$``#P"=2W'0P1(4%0`QT,,4F]C:\=#$&5T4W3'0Q1O<B``00^W="0^ +M2(U[%^B>OO__ZTL\`W4AQD,!$,=#(`$```#'0P1(4%0`QT,,14HS-&;'0Q`P +M`.LFQD,$=D$/MW0D/$B->P7H9+[__\9##&1!#[=T)#Y(C7L-Z%&^___&0QQR +M00^V="0Y2(U['>C^O?__1(EK)+@`````ZPRX_____^L%N`````!;74%<05W# +M05154T&)]$B)T[@`````D,8$&`!(@\`!2#VD#```=?!(BZ_X"```00^V]$B) +M[^@`````B<)FA<!T#0^WP("\!6@(``#_=4=(BZWX"```2('%D!0``$B+O?@( +M``#H`````$2)YBG&0`^V]DB)[^@`````B<)FA<`/A&<#```/M\"`O`5H"``` +M_P^$5@,```^WP@^VA`5H"```9H'Z@0`/AV<"``!(BXV0"0``#[?`2&G`R`\` +M`$R-!`%)BU`02(72='0/MH7H"```//]T&`^VP$AIP,@/``!(C00!OH````!( +M.<)T(P^VA>D(```\_W0<#[;`2&G`R`\``$B-!`%(.<)U";Z!````0(AS`D&` +M>%H`=#*Z``````^VPD$/MDP`<+@!````T^`)0R"#P@%!.%!:=A'KXL9#`O]) +MBT`(#[9`#8E#(,8#`4$/MD!9B$,!28M`>$B)0P1)BX"(````2(E##$F+@)`` +M``!(B4,408N`H````(E#'$&`N,``````#X1E`@``0;D`````00^V^4ACQTB- +M#(!(C0S+2(T$0$C!X`1,`<!(C9#`````#[9R"$"(<20/ME()B%$E2(N`T``` +M``^V`(/@#XA!)D"`_@-T,$"`_@-W#T"`_@(/A<````#IR@```$"`_@1F9I!F +MD'1%0(#^$@^%I@```&9F9I#K<4ACSTB-!$E(P>`$28N4`-````!(C0R)#[9" +M`8/@!P^VP,'@"`^V4@(!T(T$@`'`B43+*.MZ2&/72(T$4DC!X`1)BX0`T``` +M``^V0`*$P'4.2(T$DL=$PR@`````ZU%(8]=(C122#[;`@^@4B433*.L^2&// +M2(T$24C!X`1)BY0`T````$B-#(D/MD("P>`(#[92`P'0C02``<")1,LHZP]( +M8\=(C02`QT3#*`````!(8\=(C12`2(U4TR!(C7(,2(T$0$C!X`1)C80`T``` +M`$B-2`A(BT`(2(E"#$B+00A(B48(2(M!$$B)1A!(BT$82(E&&$&#P0%%.(C` +M````#X;E````Z8'^__\/M\!(C03`2,'@!4F)Q$P#I6@)``#&0P+_Q@,"2(N5 +M:`D```^V1!`[B$,!28N$)(@````/MD`-B4,@00^VA"05`0``/`)U+<=#!$A0 +M5`#'0PQ2;V-KQT,09713=,=#%&]R(`!!#[=T)#Y(C7L7Z*.Z___K2SP#=2'& +M0P$0QT,@`0```,=#!$A05`#'0PQ%2C,T9L=#$#``ZR;&0P1V00^W="0\2(U[ +M!>AINO__QD,,9$$/MW0D/DB->PWH5KK__\9#'')!#[9T)#E(C7L=Z`.Z__^X +M`````.L,N/_____K!;@`````6UU!7,-F9F:09F9FD&9FD$%455-!B?1(B=.X +M`````)#&!!@`2(/``4@]``$``'7P2(NO^`@``$$/MO1(B>_H`````(G"9H7` +M=`T/M\"`O`5H"```_W5'2(NM^`@``$B!Q9`4``!(B[WX"```Z`````!$B>8I +MQD`/MO9(B>_H`````(G"9H7`#X39`0``#[?`@+P%:`@``/\/A,@!```/M\(/ +MMH0%:`@``&:!^H$`#X?9````2(N-D`D```^WP$AIP,@/``!(C30!2(M6$$B% +MTG1Q#[:%Z`@``#S_=!@/ML!(:<#(#P``2(T$`;^`````2#G"=",/MH7I"``` +M//]T'`^VP$AIP,@/``!(C00!2#G"=0F_@0```$"(>P*`?EH`=#"Z``````^V +MP@^V3`9PN`$```#3X`E#((/"`3A66G81Z^3&0P+_2(M&"`^V0`V)0R#&`P$/ +MMD99B$,!2(M&>$B)0P1(BX:(````2(E##$B+AI````!(B4,4BX:@````B4,< +MN`````#IW@````^WP$B-!,!(P>`%28G$3`.E:`D``,9#`O_&`P)(BY5H"0`` +M#[9$$#N(0P%)BX0DB`````^V0`V)0R!!#[:$)!4!```\`G4MQT,$2%!4`,=# +M#%)O8VO'0Q!E=%-TQT,4;W(@`$$/MW0D/DB->Q?H,;C__^M+/`-U(<9#`1#' +M0R`!````QT,$2%!4`,=##$5*,S1FQT,0,`#K)L9#!'9!#[=T)#Q(C7L%Z/>W +M___&0PQD00^W="0^2(U[#>CDM___QD,<<D$/MG0D.4B->QWHD;?__[@````` +MZP6X_____UM=05S#2(/L*$B)'"1(B6PD"$R)9"003(EL)!A,B70D($B)^TF) +M]$R+=WA(BT9(2(DX2(M'8$B%P'4:QH:R`````DB)]_^6R````.EJ!@``9F:0 +M9I#V0$P"=!K&AK(````"2(GW_Y;(````Z4H&``!F9I!FD$R)]^@`````2(G% +M2(7`9I!U'D'&A"2R`````DR)YT'_E"3(````Z1H&``!F9I!FD,>`E``````` +M``!,B6!H2(M#8$B)12A(BT-@#[=`.&:)12#&122`00^VA"2P````/`(/A&D! +M```\`G<*A,!T')#I0@,``#P##X3P`0``/`20#X4Q`P``Z;@!``!(BT-@]D!H +M`0^$GP```$$/MH0DL0```*@"=`;&13B(ZQ"#X`0\`1G`@^`%@^AVB$4X28N4 +M))````!!#[>,))@```#&13D`2(G02,'H.(A%.DB)T$C!Z#"(13M(B=!(P>@H +MB$4\2(G02,'H((A%/4B)T$C!Z!B(13Y(B=!(P>@0B$4_2(G02,'H"(A%0(A5 +M0<9%0@#&14,`B<AFP>@(B$5$B$U%QD5&`,9%1P#K;4$/MH0DL0```*@"=`;& +M13@HZQ"#X`0\`1G`@^`%@\`JB$4X28N4))````!!#[>,))@```#&13D`2(G0 +M2,'H&(A%.DB)T$C!Z!"(13M(B=!(P>@(B$4\B%4]QD4^`(G(9L'H"(A%/XA- +M0,9%00!(BT-@2`7L````2(E%4,9%,"`/M\'!X`F)132#C90````"Z?D!``!F +M9F:000^VA"20````/!!W!?8#`G4.0<:$)+(````&Z20$``!(C7TX#[;028VT +M))@```#H`````$B+0V!(!>P```!(B450QD4P((&-E```````$`#&126K0?:$ +M)+$````"`0``08N$))0```")133I@@$``$$/MH0DL0```(/@,#P@=1'& +M13@;QD4Y`<9%/`#I80$``,9%.#7I6`$``$B+0V`/MD!(J`%T)Z@$=".!C90` +M`````"``00^WE"2<````9D$[E"22````=1/K8V9FD$'&A"2R````!NEF`P`` +M00^VA"2;````/.-T13SC=Q,\0G0]/+!T'3Q`=2=F9I!FD.LN/.QT#CSO="8\ +MY69F9I!U$.L<9D&)E"22````9F:0ZPY!QH0DL@````;I%`,``,9%.+!!#[>$ +M))````"(13E!#[>$))(```"(13I!#[>$))0```"(13M!#[>$))8```"(13Q! +M#[>$))@```"(13U!#[:$))H```"(13Y!#[:$))L```"(13]!#[:$))$```"( +M14!!#[:$)),```"(14%!#[:$))4```"(14)!#[:$))<```"(14-!#[:$))D` +M``"(141!]H0DL0````9T)D$/MX0DG````,'@"8E%-(.-E`````3K#D'&A"2R +M````!NE/`@``2,>%H`````````!!#[:$)+$```"H!@^$'P(``*@"=`F#C90` +M```(ZP>#C90````03(UM6$F+G"2X````2(7;=`M!]H0DL0````%U-DF+A"3` +M````2(7`#X0*`@``28NV2`H``+H`````3(GG_]"%P`^$\0$``$F+GD@*``!( +MA=MT.4B)[^@`````O@````!,B>_H`````$B#PQ"+4_!(BW/X3(GOZ`````"+ +M0_1(@\,0A<`/A8D!``#KX+X`````3(GOZ`````"+130]``@``'<[3(GWZ``` +M``!(B<%(A<!U#D'&A"2R````"^E?`0``2(M`$$B)14A(B4UXBU4T2(MQ&$R) +M[^@`````ZU0]```!`'<_3(GW9F9FD.@`````2(G!2(7`=0Y!QH0DL@````OI +M&0$``$B+0!!(B45(2(E->(M5-$B+<1A,B>_H`````.L.0<:$)+(````&Z>X` +M``!!#[:$)+$```"H!`^$T````$&`O"2P`````W4>28NT)*````!(A?9T$4B+ +M?4B+533H`````.FG````28N4)+@```!(A=)U$TF+A"3`````2(7`#X6X```` +MZV%,BVU(J`%U"DB)TV9FD&:0ZRE)BX0DP````$B%P'0<28NV2`H``+H!```` +M3(GG_]"%P'0'28N>2`H``$B#PQ"+4_!(BW/X3(GOZ`````"+0_!)`<6+0_1( +M@\,0A<!U*.O>BT4T2(M-2(7`=!N)PDB)R,8``$B#P`%(@^H!=`GK\8.-E``` +M``%(B>Y,B??H`````.LQ2(GN3(GWZ`````!,B>=!_Y0DR````.L9NP````#I +M2O[__TR+;4AF9I!F9I#I6O___TB+'"1(BVPD"$R+9"003(ML)!A,BW0D($B# +MQ"C#9F9FD&9F9I!F9I!F9I!54TB#[`A(B?U(B?.X`````,8$&`!(@\`!2#V` +M````=?"#O1`)```!#Y1#$P^V53H/MDTY#[9U.`^V13N(0P.(4P*(2P%`B#.` +M2Q$0#[=%,&:)0P0/MT4R9HE#!HN%$`D``(A#<,9#$B`/MU4R9H'Z("%T!V:! +M^B(A=4C&0Q<"2(U#/,=#/%)O8VO'0T!E=%)!QT`(240@4\=`#%-$(#+'0!`Q +M,G@@QT`40V]N=,=`&')O;&QFQT`<97+&0!X`Z0D!``"-@O#8__]F@_@!=A)F +M@?I`(70+9H'Z1"$/A:L```#&0Q<$#[=5,HV"\-C__V:#^`%W1$B-0SS'0SQ2 +M;V-KQT-`97120<=`"$E$(#+'0`PW,7@@QT`04T%3(,=`%$-O;G3'0!AR;VQL +M9L=`'&5RQD`>`.F3````9H'Z0"%T"V:!^D0A#X6!````2(U#/,=#/%)O8VO' +M0T!E=%)!QT`(240@4\=`#%-$(#+'0!`Q-'@@QT`40V]N=,=`&')O;&QFQT`< +M97+&0!X`ZT#&0Q<(2(U#/,=#/$1A=&''0T!#96YTQT`(97(@-\=`##(X,"#' +M0!!3051!QT`4($-O;L=`&'1R;VS'0!QL97(`#[9#$O9C%X3`NH#___\/1,*( +M0Q!(C4,8QT,82&EG:,=#'%!O:6['0`AT(%1EQT`,8VAN;\=`$&QO9VG'0!1E +M<RP@QT`826YC+L9`'`!(BX4("0``2(7`=`I(BT`02(E#:.L(2(M%$$B)0VC' +M0V``(```2(M](+Y\````Z`````")PH'B\`,``,'J!(A3<8/@#XA#<TB+?2"^ +M@````.@`````B<*!X@``\`/!ZA2(4W(E```/`,'H$(A#=$B#Q`A;7<-FD$%7 +M059!54%455-(@^P(28G]B?5(B=.X`````&9FD&:0Q@08`$B#P`%(/=````!U +M\(EK"(/]/WX*28'%D!0``(/M0$ACQ;H`````28.\Q6@$````#X72`@``2&/% +M28F<Q6@$``!,B6MX2(F+@````$R)@Y````!!@'U1`0^%I0(``(']A0````^/ +M@P(``$$/MH0%:`@``#S_#X1R`@``#[;`9HE$)`8/M\!(C11`2(T4D$C!X@5) +MB=1-`Z5`"0``0?9$)$L$#X1%`@``08M$)$@E`/__`#T``/\`#X4P`@``0?9$ +M)$P$#X2<`0``0<:$).@`````00^V1"1(2(G"@^(&2(/Z!G4YJ`$/A!`!``!! +MQD0D2@5!QD0D2P1!#[:4)($```!)BW0D6$F+?"103(GAZ`````"Z`0```.GK +M`0``2(/Z!`^%W`$``*@!9F9FD`^$T`$``$F+7"1028M$)&!(A<`/A84```!! +MQD0D2@-!QD0D2P2`>PX`=$^]`````$R-<V!,B??H`````$B)PDB+0VA(B5-H +M3(DR2(E""$B)$(!Z2O]T&$DYU'030<:$).D````!N@$```#I;`$``(/%`0^V +M0PXYZ'^Z08"\).D````!#X1-`0``3(GF3(GOZ`````"Z`0```.D]`0``@'A" +M``^%+@$``&:#8$[]28M$)&!FQT!.(`!)BW0D8$R)[^@`````N@$```#I#`$` +M`$F+1"10#[9`#4&`?3X`="V[``````^VZ`^VRTB)Z$C3^*@!=`^Z`````(G. +M3(GOZ`````"#PP%!.%T^=]M!QD0D2P9!QD0D2@5F0<>$),@``````$R)YDR) +M[^@`````N@$```#IHP```$V+9"1008!\)`X`=%U!O@````!-C7PD8$R)_^@` +M````2(G"28M$)&A)B50D:$R).DB)0@A(B1"`>DK_="(/MD))/")T!#P-=19( +M8\5)QX3%:`0```````"Z`````.M$08/&`44X="0.=ZX/MU0D!DB)WDR)[^@` +M````N@$```#K(F9F9I!F9I!(8\5)QX3%:`0```````"Z`````.L%N@$```") +MT$B#Q`A;74%<05U!7D%?PY"0D)!(BP4`````2(E'"$B)/0````##9F9FD&9F +MD&9FD&9FD(L%``````6H`@0`PV9F9I!(A?]T&TB+%TB%TG0,2(7V=`=(BT(( +M2(D&2(G0PV9FD$B+%0````#KWV9F9I!F9I"+1A1(C80'J`($`,-F9F:04TB) +M\TB![``!``!(BT<(2(M_$$B-M"2`````_U`X2(M#"$B)YDB+>Q#_4#@/MD0D +M`3B$)($```!V#K@!````2('$``$``%O#<B8/MD0D`CB$)((```!WXG(6#[9$ +M)`,XA"2#````=])R!C'`Z]%FD+C_____Z\AF9I!F9I!F9I!!5%5(B?U32(L= +M`````$B%VW4*ZWM(BQM(A=MT<TB+0Q!(A<!T<4B+50A(.U`(=>5(BW`02(M] +M$/]22(3`=-9(BW,03(UC$$B%]G4=ZV-FD$B)[^@`````A<!X54V+)"1)BS0D +M2(7V=$A(BT4(2(N0``$``$B%TG372#M&"'712(MV$$B+?1#_TNO-9F:09I`Q +MP%M=05S#2,=%``````!(B5T8N`$```!(B6L06UU!7,-)BP0D2(E=&$B)10"X +M`0```$F)+"3KRF9F9I!F9F:02(L%`````$B)!XM'$$B)/0````"%P'02BP4` +M````B4<4`T<0B04`````\\-F9F:00515B?U32(L=`````$B%VW0Q0#A["$0/ +MMN=U"NLE9I!`.&L(=!U(BT-H2(7`9F:0=`E$B>?_T(7`=0A(BQM(A=MUW4B) +MV%M=05S#9F:09I!,BT<82(U7&#')3#G"="-!.8B@_/__3(G`=0WK&69FD#F( +MH/S__W0.2(L`2#G"9I!U[HE.,,.#P0'KSV9FD&:02(L5`````+C0````2(72 +M=!@QR8M"'$B+$CG!#T+(2(72=?"-@=````#SPV9FD&:02(M7&$B-3QA(.<IT +M*CFRH/S__TB-@G#\__]U$^L=9I`YLJ#\__](C8)P_/__=`I(BQ)(.<IUZ3'` +M\\/SPV9FD%-(BU\02(7;=!QF9I!F9I!(BT,(2(M[$/^0V````$B+&TB%VW7J +M6\-F9F:09F9FD$B)_DB+/^D5____9F:09I"+5S"%TG@'QT<P______/#,<"% +M]G0=,<DQTF9FD&9FD`^V!X/"`4B#QP$!P3GR=?`/ML'SPV9F9I!F9F:09F:0 +M2(L%`````$B%P'0N2(M0$$B%TG0=2#EZ$'4-9F:09I#K&D@Y>A!T$DB+$DB% +MTF:0=?!(BP!(A<!UTO/#\\-FD$B+3QA(@\<82#GY=$-,8\KK"$B+"4@YSW0V +M@+F`_/__!$B-@7#\__]VZ#FQJ/S__W7@A=)X'4R+@8C\__]-A<!TT$LY1,A@ +M=<GSPV9FD&:0,<##2(.YB/S__P!UM?/#D$%428G\54F-;"084^@`````28M< +M)!A(.>MT+69FD&:0BW/X2(V[</S__X7V=!)(BX-X_/__2(M`6$B%P'0"_]!( +MBQM(.>MUV$R)YV9FD&:0Z`````!)BT0D&$@YZ'4+D.L:2(L`2#GH=!*+2/2% +MR9!T\%M=05RX`0```,-;74%<,<##9F9FD&9FD&9FD&9FD$%4,<!)B?Q54X"_ +MD`($``!U+4B+7Q!(A=MT(C'M9F:02(M#"$B+>Q#_D*@```!(BQL)Q4B%VW7H +M0(3M=0<QP%M=05S#3(GGZ`````!;0`^VQ5U!7,-F9F:09F9FD&9FD$%6055! +M5%5(B?U3Z`````!(BYTP`0``28G&2(7;#X2<````08G%2(M#"$B)VDR-I3`! +M``!$*?"%P'X0Z8\```!(BT((1"GHA<!_.DB+0BA(A<!T!$R)8"!(B84P`0`` +M2,="(`````!(B<-(QT(H`````$B+>AC_4A!(BY4P`0``2(72=;M(B>_H```` +M`$B%VW0,2(N%,`$``$@YV'0)6UU!7$%=05[#6TB+<`A(BWT(74%<05U$*?9! +M7ND`````6TB)[UU!7$%=05[I`````$B)[^@`````Z[EF9F:09F:054B)_5-( +MB?-(@^P(Z`````!(BU,@2(G!2(72=!Q(BT,H2(7`=`A(B5`@2(M3($B)`DC' +M0R``````BP-(BY4P`0``2(722(T$`4B-C3`!``!(B4,(="6)QDB+0@@I\(7` +M?@SK,DB+0@@I\(7`?RA(C4HH2(M2*$B%TG7I2(E3*$B)&4@YG3`!``!(B4L@ +M="-(@\0(6UW#2(E3*$B)&4B-0RA(.9TP`0``2(E+($B)0B!UW4B+?0B+,TB# +MQ`A;7>D`````9F9FD&9FD&9FD&9FD%5(B?U32(/L"$B+5B!(A=)T7DB+1BA( +MBX\P`0``2(7`=`A(B5`@2(M6($B)`DC'1B@`````2(N%,`$``$C'1B`````` +M2(7`="=(.<%T(HM8".@`````2(M]"$B#Q`@IPXG>6UWI`````&9F9I!F9I!( +M@\0(6UW#9F:09F:09F:054B)_5-(@^P(2(M?$$B%VW48ZRY(BT,(2(M[$/^0 +MT````$B+&TB%VW08@'MH`'3D2(M#"$B+>Q`Q]O]04&9FD.O22(/$"$B-M3@! +M``!(B>];7>D`````9F:09F:09F:0051)B?Q54TB+7Q!(A=MU"NLT2(L;2(7; +M="Q(BT,(2(M[$/^0X````(![:`!TY$B+0PA(BWL0O@$```#_4%!(BQM(A=MU +MU$F+7"0828UL)!A(.>MU"NLR2(L;2#GK="J`NX#\__\!2(V[</S__W7H2(N# +M>/S__TB+0%A(A<!TV/_02(L;2#GK==:`/0``````=05;74%<PTF-G"0X`0`` +M3(GG2(G>Z`````!!QX0D.`$```"'DP-)QX0D2`$```````!(B=Y-B:0D4`$` +M`$R)YUM=05SI`````&9F9I!F9I!!54F)_4%454B)]5-(@^P(2(7V='U(BT4( +M2(M]$/^0X````(!]:``/A;<```!)BUT838UE&$PYXW4.ZS]F9F:02(L;3#GC +M=#.`NX#\__\!2(V[</S__W7H2#FKZ/S__W7?2(N#>/S__TB+0%A(A<!TS__0 +M2(L;3#GC=<U(BVT`2(7M=!M(@\0(2(GH6UU!7$%=PTB+;Q!(A>T/A7;___^` +M/0``````=-Q)C9TX`0``3(GO2(G>Z`````!!QX4X`0```(>3`TG'A4@!```` +M````2(G>38FM4`$``$R)[^@`````ZZ!(BT4(2(M]$+X!````_U!0Z33___]F +M9F:09F:04TB)^^@`````2(G!QT`0`````$B-@-````!(C5%02(E!2(M##"W0 +M````B4%`2(U!&$B)01A(B4$@,<!F9I!FD,8$$`!(@\`!2#V`````=?!;2(G( +MPV9F9I!F9F:09F:02(/L&$B)'"1(B6PD"(G53(ED)!`QTCEN"$F)_$B)\W(@ +M2(GWZ`````"):!!(B<),B2!(B5@(BT,(@\`!*>B)0PA(BQPD2(ML)`A(B=!, +MBV0D$$B#Q!C#9F:09F:09F:0B?!(C;>P````B<+I`````(M&$`-'"(/H`8E' +M".D`````9F9FD&9F9I!F9F:09F:02(GX2(L_2(G&2(''L````.D`````9F9F +MD&9F9I!F9I!!5D%528G]051,C6<855-(BU\83#GC=1#K6F9FD&9FD$B+&TPY +MXW1,@+N`_/__`4B-NW#\__]UZ`^V@]3\__^H0`^%N@$``(`]``````!TT*@" +M=<RH`0^%YP$``/:#U/S__P1UNX"+U/S__R1(BQM,.>-UM$F+72A)C6TH2#GK +M=!%(C7OHZ`````!(BQM(.>MU[TF+;1A,.>4/A-````"0@+V`_/__!$B-O7#\ +M__]V#DB#O8C\__\`#X1R`0``2(MM`$PYY77928M=&$PYXP^$FP```$4Q]NL/ +M9F9FD&9FD$B+&T@YZW19@+N`_/__`4B-NW#\__]UZ/:#U/S__R!TWTB+@ZC\ +M__^`H]3\___;2(7`=1CI\@```&9F9I!F9I!(BP!(A<`/A-\```!(@W@8`'3M +M2(L;0;X!````2#GK=:=)BUT823G<="5F9I!F9I#V0_`!2(VK</S__W0*2(.[ +MB/S__P!T*DB+&TPYXW7A28N%F`($`$B%P`^$NP```%M=05Q)BWT(28G#05U! +M7D'_XP^VDX#\__^`^@1V$DB+@_#^__](A<!T%$@Y:`AT#H#J`76S]H/4_/__ +M`G2JBWTPA?\/B(4```#VA8`#```"=)8Q]DR)[^@`````2(7`2(G"=(1(.<4/ +MA'O____V@(`#```"=&B`I8`#``#]Z6;____H`````.D5_O__183V9I`/A<K^ +M__^`/0`````!9F:0#X6Z_O__Z`````#IL/[__^@`````Z83^__];74%<05U! +M7L/H`````.D/_O__2(GN3(GOZ&CU___I:____XM%,(E",,=%,`````#I^/[_ +M_Y!!5T%6055!5%532(G[2('LB````$B%_TR+9Q@/A,P```!%,?9(BT,(2(M[ +M$$B)YO]0.`^V1"00.P4`````#XZ4````3(U[(.LG9F9FD&9FD$0Y:RA!@]8` +MBQ4`````#[9$)!"#P@$YT(D5`````'YG]D0D$0%U$`^V!0````!$.?`/A(D` +M``!$BVLH08.$)*`"!``!3(G_Z`````!(B<5(BT,(BS4`````2(M[$$F)V$C' +MP0````!(B>K_4&B$P'6/2(GN3(G_Z`````!!@ZPDH`($``'K@4B+&\<%```` +M``````!(A=L/A3?___]!BX0DH`($`(/H`87`08F$)*`"!`!U0$R)Y^B$_/__ +MZS9FD`^V!0````!(Q\8`````3(GG2,<%``````````!(B1T`````:<!`0@\` +MB04`````Z`````!(@<2(````6UU!7$%=05Y!7\-F9F:09F:09F:0055)B=5! +M5$F)]%5(B?U32(/L"$B+7Q!(B968`@0`2(7;=0KK+$B+&TB%VW0D2(M#"$B+ +M>Q#_D/````"$P'7FQH60`@0``4B#Q`A;74%<05W#2(L=`````$B%VW099F:0 +M2(M#.$B%P'0%2(GO_]!(BQM(A=MUZDV%Y'0828M$)`A)BWPD$+X!````_U!0 +M0<9$)&@!2(M]$,>%H`($``$```#H`````$2+C:`"!`!%A<ETE$V%[7092(/$ +M"$B)[UM=05Q!7>D`````9F9FD&9FD+^@A@$`Z`````!(B>_H`````$2+A:`" +M!`!%A<!UXNE3____9F9FD&9FD&9FD&9FD$B#[!A(B6PD"$R)9"002(G]2(D< +M)$B+7QA)B?2#JZ`"!``!A=)X2>@`````2(7`=$I$BY.@`@0`1872=!-(BQPD +M2(ML)`A,BV0D$$B#Q!C#2(G?2(ML)`A(BQPD3(MD)!!(@\08Z<;Z__]F9I!F +M9I!(C7\@Z`````#KMDB+10A,B>?_D(````!(C7T@3(GFZ`````#KFV9F9I!F +M9I!F9I!!54%454B)_5-(@^P(3(LO28M=.$V-93CK$V9FD&9FD$B->^A(BQM( +M.6]0=$)).=QU[DB+10A(BT!02(7`=`5(B>__T$B+A9`#``!(BY68`P``2(GN +M28U]<$B)4`A(B0)(@\0(6UU!7$%=Z0````!(BU<82(M'($B-3QA(B4((2(D0 +M2(E/($B)3QC&A[(````"Z`````#KE69F9I!F9F:005=)B==!5DF)SD%508GU +M05152(G]4TB#[`A(BT<82(M0&$B#P!A(.<)U$>G&````2(L22#G"#X2Z```` +M@+J`_/__`4B-FG#\__]UY$0[JN#\__]UVT@[JNC\__]UTDB%VP^$CP```/9" +M\`$/A=D```!$BZ)8_?__187D#X7)````1(N:./W__T6%VP^%N0```$B+0SA( +MA<!U#NM29F9FD$B+`$B%P'1&2(MX&$B%_Y!T[DB+=QA(A?8/A(\```"`?D0` +M#X2%````,<GK#P^V1D2-40%(@\$!.=!^<D@Y?,Y@=>I(QT3.8`````#KWTB) +MW^@`````3(UE($R)Y^@`````2(7`2(G#=$!(BT4(2(G:2(M]$$V)\$R)^42) +M[O]0:(3`N@$```!T$4B#Q`B)T%M=05Q!74%>05_#2(G>3(GGZ``````QTNO@ +M,=+KW&:0Z`````#I-____V9FD&9FD$%6055)B?5!5$F)_%532(/$@$B%]@^$ +MHP$``$F+;"002(7M=&!!BX0DI`($`$B+?1!(B>:)14!(BT4(_U`X#[9<)!!( +MBT4(00&<)*0"!`!(BWT0_U!@2(U]((G"B=E,B>[H``````^V3"002(U]2+HH +M````3(GNZ`````!(BVT`2(7M=:!(BPT`````NO@#``!(A<ET(&8QTF9F9I!F +M9I"+01A(BPDYP@]"T$B%R77P@<+X`P``08N,)*0"!`!)C7PD<$R)[HT,R>@` +M````08N,)*0"!`!)C;PDD````+H``@``3(GNZ`````!)C;PD\````+D!```` +MND@```!,B>[H`````$&+C"2D`@0`28V\)!`!``"Z*````$R)[N@`````08N, +M)*0"!`!)C;PDT````+JP````3(GNC0S)Z`````!!QX0D:`$```$```!!QX0D +M=`$````0``!!QX0D;`$````0``#H`````$F-O"2P````N4(A``")PDR)[N@` +M````2(L=`````$B%VW0C9I!(BT,@2(7`=!!!BY0DI`($`$R)[DR)Y__02(L; +M2(7;==](@^R`6UU!7$%=05[#3(MO".E4_O__9F:09F:09F:0051)B?152(LM +M`````%-(B?OH`````(7`=!.)P$B)VI#&`@!(@\(!2(/H`77S2(,]``````!U +M#.MQ9F9FD&9FD$B)Q4B+10!(A<!U]$B)70!(C4,83(EC",>#6`($```0``!( +MB4,82(E#($B-0RA(B4,H2(E#,$B-0SA(B4,X2(E#0$B-@Q`"``!(B8,0`@`` +M2(F#&`(``$B-@U`"``!(B8-0`@0`6UU!7,-(B1T`````ZYUF9F:09F:09F:0 +M9F:02(/L*(`]``````)(B6PD"$R)9"00B?5(B1PD3(EL)!A)B?Q,B70D(`^$ +M%P$``$`/MOWH`````$B%P$F)Q0^$#`$``$V-="1P3(GWZ`````!(B<,QP,8$ +M&`!(@\`!2#WX`P``=?"+!0````!,B6L(3(DC@\`!B04`````B8/H`P``2(V# +MR`,``("+@`,```%`B&L02(F#R`,``$B)@]`#``!!BT48A<!T*4B-@_@#``!( +MB4,@08M%&(7`=!:)PDB)V,:`^`,```!(@\`!2(/J`77O2(V#H`,``,=#-`(! +M``#'0S#_____2(F#H`,``$B)@Z@#``!(C8.P`P``2(F#L`,``$B)@[@#``!) +MBT5(2(7`=`E(B=__T(7`=55)BTPD($B-DY`#``!)C40D&$F)5"0@2(F#D`,` +M`$B)BY@#``!(B1'K#$"`_@$/A-_^__\QVTB)V$B+;"0(2(L<)$R+9"003(ML +M)!A,BW0D($B#Q"C#2(G>3(GW,=OH`````.O1051(BQ4`````54B)_4@Y^E-U +M".G3````2(G"2(72=`](BP)(.>AU\$B+10!(B0)(BT482(U=&$@YV'099F9F +MD$B-N'#\___H`````$B+11A(.=AUZTB+12A,C64H3#G@=#)(C9W0````9F9F +MD&9FD$B-<.A(B=](BT8@2(M6&$B)0@A(B1#H`````$B+12A,.>!UW("]D`($ +M``!U*4B+'0````!(A=MT'69F9I!F9I!(BT-`2(7`=`5(B>__T$B+&TB%VW7J +M2(M=$$B%VW07D$B+0PA(BWL0_Y#H````2(L;2(7;=>I;74%<PTB+!TB)!0`` +M``#I-?___Y"0D)"0D$B+5R`QP,8$$`!(@\`!2(/X4'7R2(U"$$B)$DB)4@A( +MQT(H`````$B)>C!(B4(02(E"&#'`2,=".`````##9I!(BT=(BQ4`````2(/H +M*$@!T,-F9F:09F9FD&9FD&9FD$B+1R`QTDB+"$@YP7092(L12(M!"$B)0@A( +MB1!(BU$82(D)2(E)"$B)T,-F9I!FD("^L`````!(BU<@=1(/MX:8````2`.& +MD````$B)1UB#0B`!2(M':$B+OX````!,BYB8````0?_C9F9FD&9F9I#VAX`# +M```(2(GZ2(M'('0"\\/'0$0`````2(M':$C'Q@````"`CX`#```(2(N_@``` +M`$R+F(@```!!_^-F9F:0]H>``P```;C_____="%%A,!T&@^WPL'@"87`=!!( +MF)#&`0!(@\$!2(/H`77S,<#SPV9F9I!F9F:09F9FD&9FD/9'9$!(QT=(```` +M`'5)2(M7.$B%TG1*,?8QR>L.9F:02(L2@\$!2(72=")(@WH8`'7N2(M"$$@! +M1TA(BT(02(L22#GP2`]'\$B%TG7>@_D#?P5(B7=`PTC'1T``````D,,Q]NOM +M9F9FD&9F9I!F9I!(8_9(`?Y(.?=S'$B)\6:0#[91_@^V0?^(4?^(0?Y(@^D" +M2#G/<NE(.?=T*`^V!SP@=2-(B?KK!P^V`CP@=1I(@\(!2#GR=?#&!P!(@\<! +M2#GW=?3SPTB)^H3`="%F9I!(@\(!/"!T*@^V0O^(!TB#QP%(.=9T!P^V`H3` +M=>)(.?YTT<8'`$B#QP%(.?=UN9#KPD@Y\G3G#[8"A,!F9F:0=+<\('2S#[9" +M_X@'2(/'`>O%9F9FD&9F9I!F9I!F9I!(BT<@QT!$`0```,-F9F:054B)_5-( +M@^P(]D=D`G4R2(M?.$B%VW082(M[&$B%_W0'2(M'"/]0,$B+&TB%VW7HQX7H +M`````````$B#Q`A;7</H`````.OH9F9FD&9F9I!3]D=F`DB)^TB+1R!T!O9` +M2`)T#(-`1`%;PV9FD&9FD#EP1'+O2(L_O@$```#H`````$B%P$B)PG3>#[:` +ML0```$B)6E!(B==(B5I8QH*P````!,:"L@````!(QX+(`````````(/@SX/( +M((B"L0```%OI`````&9FD&9FD&9FD%-(B?M(BS^^`0```.@`````2(7`2(G" +M=&#V0V8"=6'&@+`````#2,>`H`````````#&@)L```!`9L>`E```````9L>` +ME@``````9L>`F```````QH":````0&;'@)```````&;'@)(````!`&;'@)P` +M`````$B)6E!;2(G0PV:0QH"P`````HL%`````(F"F`````^W!0````#&@I`` +M```&QX*4`````````,:"D0````!FB8*<````Z[IF9I!FD$B#[!A(B5PD"$B) +M;"002(G[2(MO(.@F____2(G"N/____](A=)T)4C'@L@`````````@$U(`4B) +MUDB+0VA(B[N`````_Y"8````,<!(BUPD"$B+;"002(/$&,-F9I!FD$%428GT +M55.`?Q`$2(G[=E6`?T0`=$HQ[>L59F:09F:0#[9#1(U5`4B#Q0$YT'XQ2(M\ +MZV!(A?]TY_:'@`,```%TWDR)YN@`````#[9#1(U5`4B#Q0$YT'_69F9FD&9F +MD%M=05S#=#CV@X`#```!9I!T[DB)W^AF_O__2(7`=.%!@P0D`4R)8%A(B<=( +MQX#(`````````%M=05SI`````$B+7SCV@X`#```!=+3KQ&:0Z0````!F9F:0 +M9F9FD&9FD$B#[!A(B5PD"$B);"002(M?6$B++^@`````BP.#Z`&%P(D#=`]( +MBUPD"$B+;"002(/$&,-(C7,(2(GO2(M<)`A(BVPD$$B#Q!CI`````&:055-( +M@^P(2(LM`````,<%``````````!(A>UU#>LP9I!(BVT(2(7M="6+'0````#_ +ME9`````YPW/G_Y60````2(MM"(D%`````$B%[77;2,?'`````(,%`````"CH +M`````$B#Q`@QP%M=PV9FD&9FD$B#[!A(B5PD"$B);"002(MO4$B+72`/ME-( +MB="#X/Z(0TB`O[(````!=$7H`````(M#0(7`=`](BUPD"$B+;"002(/$&,-( +MBWT`2(US*,=#0`$```!(BUPD"$B+;"002(/$&$B#QUCI`````&9F9I"#XOR( +M4TCKLV9F9I!F9F:02(M'(("G@`,``/?'A\@`````````BU!`A=)T!//#9I!( +MBS](C7`HQT!``0```$B#QUCI`````&9FD&9FD&9FD%-(BU\@2(GX2(G&2(L[ +M2(''$`$``.@`````2(L[2,>#T`````````!(C;/0````2(F;V````$C'@^`` +M````````6TB#QTCI`````&9FD&:054B)_5-(B?-(Q\8`````2(/L"$B+/^@` +M````2(G!2(M%.$B%P'0;2#G82(U5.'4'ZQ=(.=AT$DB)PDB+`$B%P'7P2(/$ +M"%M=PTB+`TB)WDB)STB)`DB#Q`A;7>D`````2(/L.$B)7"0(2(EL)!`Q[4R) +M="0H3(E\)#!)B?Y,B60D&$R);"0@2(GS2(M/.$F)UTB%R70@2(G-,<!F9I!F +MD$B#?1@!2(MM`(/8_TB%[77O@_@#?B9(B>A(BUPD"$B+;"003(MD)!A,BVPD +M($R+="0H3(M\)#!(@\0XPTF-/!])B<SK&$DY7"0(#X2R````38LD)$V%Y`^$ +MG0```$F#?"08`'7@28M4)`A(.=IWX4F+="0028G]2(T$%D@YQW?02#G:#X21 +M`0``<\5)BSY(Q\8`````Z`````!(B<?H`````$B%P$B)P@^$:/___S'`Q@00 +M`$B#P`%(@_@@=?))BT0D"$B)0@A(B=A)*T0D"$F)7"0(2(E"$$F+!"1(B0)) +MBT0D$$@K0A!)B10D23G'28E$)!`/@FX!``!,B>7I%/___TF+!"1(A<!T.+H! +M````ZPA(BP!(A<!T($B#>!@`D'3P2#E8"'7J28MT)!!(.7`03`]'X(/"`>O8 +M@^H!#X_3_O__28M4)!!)B<U).==W$NF0````38MM`$V%[0^$M/[__TF#?1@` +M=>Q(B=!)`T0D"$DY10AUWDD#51!).=</AY+^__])BSY(Q\8`````Z`````!( +MB<?H`````$B)PC'`Q@00`$B#P`%(@_@@=?),B?A)`T0D"$F)10A)BT4020-$ +M)!!,*?A)B44028L$)$B)U4B)6@A,B7H02(D"28D4).DQ_O__28L^2,?&```` +M`.@`````2(G'Z`````!(A<!(B<(/A`[^__\QP,8$$`!(@\`!2(/X('7RZ[!) +M.?</A-?^__])BSY(Q\8`````Z`````!(B<?H`````$B%P$B)P@^$T/W__S'` +MQ@00`$B#P`%(@_@@=?))BT0D$$R):@A,*?A(B4(0ZT=)BSY(Q\8`````Z``` +M``!(B<?H`````$B)PC'`2(72=#[&!!``2(/``4B#^"!U\DR)^$D#1"0(2(E" +M"$F+1"003"GX2(E"$$F+!"1,B>5-B7PD$$B)`DF)%"3I3_W__TF+'"1)BSY( +MQ\8`````2(M#"$F)1"0(2(L#28D$).@`````2(G>2(G'Z`````#I'/W__V9F +MD&9FD$%42,?&`````%5(B?U32(L_Z`````#V160(28G$=1Q(BW4X2(7V=!-( +MBQY,B>?H`````$B%VTB)WG7M2(M%:$B+O8````#_D(````!;2(M]>$B+M8`` +M``!=05Q(@\<@Z0````!F9F:09F9FD&9F9I!54TB)^TB#[`A(BU<X@*>``P`` +M_DB%TG0?9F9FD&9FD$B+0AA(A<!T!X"@@`,``/Y(BQ)(A=)UZ$B)WK\!```` +MZ`````!(BSO'@^@````!````2(''$`$``.@`````2(7`2(G%=&;'``$```!( +MQT`(`````$B)11!(QT`8`````$B)6"!(BULX2(7;=#)F9I!(BT,82(7`=0KK +M'&9FD&:02(GX2(MX&$B%_W7T2(GN2(G'Z`````!(BQM(A=MUT8M%`(/H`87` +MB44`=`=(@\0(6UW#2(/$"$B)[UM=Z;_Z__]F9F:09F9FD&9F9I!F9I!(@^P8 +M2(E<)`A,B60D$(G328GT2,?&`````.@`````C0S;3(GF2(M<)`A,BV0D$$B) +MQ[H@````2(/$&.D`````2(/L6(/_!TB);"0X3(ED)$!(B?5,B6PD2$B)7"0P +M08G\3(ET)%!)B=5W54&)_D+_)/4`````B[O(````A?]U0$B+0PC'@\@````! +M````2(VSL````$B->5A(BT!82(F;N````$C'@\``````````2(F#L````.@` +M````9F:09I!(BUPD,$B+;"0X3(MD)$!,BVPD2$R+="102(/$6,-(BUX@OP,` +M``!(QT8@`````.@`````2(E=(.O&2(GWZ`````!(BU@028G$2(7;=0KK$DB+ +M&TB%VW0*2#EK$&9F9I!U[DB->TCH`````$B%P&:0=(Y)C7PD2$B)6!A$B6@@ +M2,<``````$B)0`A(B<9(QT`0`````.@`````Z6'___](B??H`````$B)P4B+ +M0!A(C5$82#G0=17I1/___V9F9I!(BP!(.=`/A#3___^`N(#\__\!2(V8</S_ +M_W7D3#FH\/S__W7;08/\!P^'$?___Y!"_R3U`````$B+0WA(B>9,B>](BT`( +M_U!X#[9$)`Z(0V(/ME0D"@^V0V:#X@$!TH/@_0G0B$-FZ=3^__](BT,@@*.` +M`P``[XMP0(7V#X6^_O__2(G&2(UY6,=`0`$```!(@\8HZ`````#IHO[__X"+ +M@`,``!#IEO[__TB+0PA(B=__4##IA_[__V9F9I!F9I!(@^P82(GX2(E<)`A, +MB60D$$B)QDB+7QA$BV<@2(U[2.@`````2(G91(GF2(G?3(MD)!!(BUPD"$C' +MP@````!(@\08Z0````!F9F:09F9FD$B![!@"``"`/0``````2(F<)`@"``!( +MB:PD$`(``$B)^W4=2(N<)`@"``!(BZPD$`(``$B!Q!@"``##9F:09I`/MD=D +M0;@!````2(GAN@$```"^"0```(/(`X/@^XA'9.@`````A<!U2($\)'EC9VQT +M7/9#9`%TJTB+:SA(A>V0=")(BSM(Q\8`````Z`````!(B>Y(B<?H`````$C' +M0S@`````2(M#4$B)0RCI<O___X"C@`,``/Y(B=Z_`0```.@`````@$MD`>E5 +M____O@`"``!(B>?H`````(3`=9,/MDPD!`^V@X`#``")RH/@_<#J!(/B`@G0 +M]L$0B(.``P``=`P/MD0D!8!+9("(0V/V1"0'`707#[9398G(P.@"@^`"@\H! +M@^+]"<*(4V7V1"0'`G05#[9398T$"8/@"(/*!(/B]PG"B%-E]D0D!PAT%0^V +M0V7!X02#X2"#R!"#X-\)R(A#9?9$)`<$#X0"____#[9390^V1"0$@\I`@^`! +MP>`'@^)_"<*(4V7IX_[__Y!52(U/.%-(B?M(@>P(`@``#[9!+(/@`RP!#X0@ +M`@``O^____]`(GMD2(GE2(G@0(A[9$B-E"0``@``Q@``2(/``4@YT'7L]D$L +M`@^%[P$``$B+0RB^]____\<$)%]W85(A_D"(<V1(B40D!(!Y+`!Y#0^V0V.` +M3"0,$(A$)`WV02T!=!T/ME-E#[9$)`R`3"0/`<'B`H/@]X/B"`G0B$0D#/9! +M+01T'`^V4V4/MD0D#(!,)`\"T.J#X/N#X@0)T(A$)`SV02T0=!T/ME-E#[9$ +M)`R`3"0/",#J!(/@_8/B`@G0B$0D#/9!+4!T&@^V1"0,#[9398!,)`\$P.H' +M@^#^"="(1"0,2(%[0/__'P!W"[[S____(?Y`B'-D]D$L(`^$)`$``$B+2SA( +MA<ET/#'V2(-Y&`!T*TACQDB+40B#Q@%(C01`2(U$Q0!(B5`02(M1$$B)4!A( +MBU$82(M20$B)4"!(BPE(A<EUQ@^V0V:^``(``$B)Y\:%_P$```&#X`&(A?X! +M``#H`````/?813'`2(GAB(4``0``2(MS4+H!````2(G?2('N```"`$B!Y@`` +M_O_H`````$B+<SA(A?9T1#'_2(M6&$B%TG0Q2(M#4$R+0D!(8\](C0Q)@\<! +M2HT4`$@M```"`$@E``#^_TB!Z@`(``!(*<)(B53-($B+-DB%]G6^O@`"``!( +MB>?&A0`!````Z`````#WV$4QP$B)X8B%``$``$B+<U"Z`0```$B)WTBPC'`2(72="C&!!``2(/``4B#^"!U +M\DB+0RA(B4(02(M#*$B)4SA(B4-(2(E#0%O#2(G?6^D`````9F9FD&9FD&9F +MD$B +M[TB![@`(``#H`````(7`08G%=$>`I8`#``#^2(GNOP$```#H`````(!-9`'I +MGP$``+X``@``3(G_Z`````"$P`^%[0(``$&`O_\!````=09!O?[____&1"07 +M`$&!/U]W85(/A#(#``!(BW502('N```"`$B)\$C!Z"!(A<`/A<0"``"`360! +M#[8%`````#P"#X2%````+`$/A&(%``#VA8`#```!='B`I8`#``#[28V7``(` +M`$R)^,8``$B#P`%(.=!U]#'V0;@!````3(GYN@$```!(B>_H`````(!\)"!% +M#X3.!```@+PD'@(``%5U+H"\)!\"``"J=20QP$:+A#C*`0``187`=1%(@\`0 +M2(/X0'7IZPE,C7PD((!-9`+V160"=`T/MD5D@\@!@^#[B$5D0?9$)"P!=#1( +MBUTX2(7;="-(BWT`2,?&`````.@`````2(G>2(G'Z`````!(QT4X`````$B+ +M15!(B44H08!\)"P`#X@6`0``0?9$)"T!#X7?````0?9$)"T$#X6G````0?9$ +M)"T0=6Y!]D0D+4!T+L9$)"`%#[9%94R)_L9$)"D`P.@'B$0D*$B+16A(B[V` +M````_Y#`````9F:09I!(BYPD&`,``$B+K"0@`P``3(ND)"@#``!,BZPD,`,` +M`$R+M"0X`P``3(N\)$`#``!(@<1(`P``P\9$)"`$#[9%94R)_L9$)"D`P.@% +M@^`!B$0D*$B+16A(B[V`````_Y#`````Z6'____&1"0@`P^V165,B?[`Z`.# +MX`&(1"0H2(M%:$B+O8````#_D,````#I+?___\9$)"`"#[9%94R)_M#H@^`! +MB$0D*$B+16A(B[V`````_Y#`````Z?;^___&1"0@``^V16-,B?Z(1"0H2(M% +M:$B+O8````#_D,````#IQ/[__P^VG"0?`@``O@`"``!,B?_H`````(MT)"`/ +MMM!(Q\<`````,<")V>@`````@7PD(%]W85(/A"4#``!!O?[____IGOS__T$/ +MMI__`0``O@`"``!,B?_H`````$&+-P^VT$C'QP`````QP(G9Z`````!!@3]? +M=V%2#X3^_/__187M#X6A_/__0;W_____Z9;\__^!Y@``_O]!N`$```!,B?FZ +M`0```$B)[^@`````A<`/A:G\__]!@3]?=V%2#X4+_?__O@`"``!,B?_H```` +M`(3`#X0I!0``08$_7W=A4@^%Z?S__[X``@``3(G_Z`````"$P`^%U/S__T&` +M?PX`#[9%9$R)YDC'QP`````/E<*#X/O!X@()T(A%9`^V169!@+_^`0````^5 +MPH/@_@G0#[;2B$5F,<#H`````$B+15!(B>](+0```@!()0``_O](B44HZ+/Z +M__]!]D<,$'0,@$UD@$$/MD<-B$5C0?9'#P%T&@^V565!#[9'#(/*`<#H`H/@ +M`H/B_0G"B%5E0?9'#P)T&0^V565!#[9'#(/*!`'`@^`(@^+W"<*(565!]D</ +M"'0:#[9594$/MD<,@\H0P>`$@^`@@^+?"<*(565!]D</!'0:#[9594$/MD<, +M@\I`@^`!P>`'@^)_"<*(565(QT0D&``````QVTJ#?#L8``^%=0$``$B#PQA( +M@_M@=>J`?"07``^$60(``#')2H-\.1@`="=*BU0Y($B+15!(@<(`"```2"G" +M2"T```(`2"4``/[_2`'"2HE4.2!(@\$82(/Y8'7'O@`"``!,B?]!QH<``0`` +M`.@`````]]A%,<!,B?E!B(<``0``2(MU4+H!````2(GO,=M(@>X```(`2('F +M``#^_^@`````2(MU4$&X`0```$R)^;H!````2(GO2('N_P<``$@!WN@````` +MA<`/A!\!``!(@\,!2(/[!'7*2(-\)!@`#X3#`@``@$UD0$B)[^@`````Z<S[ +M__^$P`^$,_K__V9FD&9FD.E?^O__@'PD(5)F9I!F9I`/A2'[__]!N`$```!, +MB?FZ`0```+X!````2(GOZ`````"`?"0@4`^%^_K__X!\)"%-#X7P^O__Z1_[ +M__]F9F:0@#T```````^%D?K__V9FD.D&^___O@`"``!,B?_H`````(3`#X1O +M^?__Z<'\__](BWT`O@0```#H`````$B%P$B)1"08#X2%^___2HM4.QA*BW0[ +M$$B)[^A#[?__2(7`2(G!#X1(`P``2(M4)!A%A?9(B6HX=7Q*BT0[($B)0D!( +MBU0D&$B)2DA(BT$02(E1&$B)0BCI(/[__TB+15!(B>]%,<!,B?FZ`0```$@M +M```"`$@E``#^_TB-=`,!Z`````!(BW502,?'`````$B-A@``_O](C;0>`?C_ +M_T@E``#^_TB-5`,!,<#H`````.F(_O__187M=8A*BU0[($B+15!(@<(`"``` +M2"G"2"T```(`2"4``/[_2`'"2(M$)!A(B5!`Z5C___]%A>T/A%3^__]!@+__ +M`0````^$MP```#')2H-\.1@`="=(BT502(G"2@-4.2!(+0```@!()0``_O]( +M@>H`"```2"G"2HE4.2!(@\$82(/Y8'7'O@`"``!,B?]!QH<``0```.@````` +M]]A%,<!,B?E!B(<``0``2(MU4+H!````2(GO,=M(@>X`"```Z`````!(BT50 +M0;@!````3(GYN@$```!(B>](+0```@!()0``_O](C70#`>@`````A<!T?DB# +MPP%(@_L$=<?IC_W__TC'QP`````QP.@`````3(G_O@`"``!!QH?_`0```4'& +MAP`!````Z`````#WV$4QP$R)^4&(AP`!``!(BW50N@$```!(B>](@>X```(` +M2('F``#^_^@`````Z>O^__]!]D0D+`0/A"?X___I+/W__TB+=5!(B>]%,<!, +MB?FZ`0```$B0``_O](C70#`3'`Z`````#I,?___TB-G"0@`@``28UW$+KP````2(G? +M2(/#".@`````2(V$)!@#``!(B40D".L+2(/#&$@[7"0(=&-(@SL`=.](BW,( +M0;@!````3(GYN@$```!(B>^#YO_H`````(7`#X7\]O__3(G_Z`````!!@3_T +M%GA:#X28````2(MS"$4QP$R)^;H!````2(GOZ`````"%P'2:Z<?V__]F9I!( +MBW500;@!````3(GYN@$```!(B>](@>X```(`@>8``/[_Z`````"%P`^%E?;_ +M_TB+=5!%,<!,B?FZ`0```$B)[TB![@```@!(@>8``/[_Z`````"%P`^%:/;_ +M_^G<^?__2(M\)!CH`````&9FD&:0Z0OX__^^``(``$R)_^@`````Z5;___]F +M9I!F9I!F9I!!5TF)][X!````059!54F)_4%455-(@^QX2(M_&(E4)`SH```` +M`$B)Q4F+10A(C70D0$R)__]0>$B+A9@#``!(BY60`P``2(E""$B)$$B+10!( +MBU@82(/`&$@YPP^$GP```$R-="00ZQMF9F:09F:02(M%`$B+&TB#P!A(.=@/ +MA'T```"`NX#\__\!3(VC</S__W7<2(NSZ/S__TF+10A(.T8(#X0G`0``3(GO +MZ`````"#^`!\2W6X28M%"$F+O"2`````3(GV_U!X#[94)$H/MD0D&M#JT.B# +MX@&#X`$YPG^.?!T/MD0D'#A$)$QW@9!R#P^V1"1-.D0D'0^';____TB+4PA( +MC860`P``2(F=D`,``,=%-`$```!(C;V(````OB@```!(B4,(2(D"@(V``P`` +M`4F+10A,B;V`````3(EM>$B)E9@#``!(B45HBT0D#(E%<$B+1"1`2(E%4$B) +M12@/MD0D3HA%8@^W1"149HE%8`^V5"1*#[9%9H/B`0'2@^#]"="(16;H```` +M`$B+16A(B[V`````2(UT)$#_4'CV1"1*`4B+1"18=0GV@``!```$=0A(B>_H +M`````$B#Q'A(B>A;74%<05U!7D%?PTB+@``!``!(A<`/A,G^__](BW8028M] +M$/_0Z<+^__^04X!_$`%(B?MT!UNX_____\.`/0`````"=/!(BT=02"T```(` +M2"4``/[_2(E'*.B]\O__@&-D],=#,/____](B=_H`````%LQP,-F9I!F9I!( +M@^P8A=)(B6PD"$R)9"002(G]2(D<)$F)]'AHZ`````!(A<!(B<-T3@^V0&1( +MBVT8J`)U;8`]``````!T&J@!=6KV0V1$=02`2V0D1(N-V`$``$6%R71>2(G> +M2(ML)`A(BQPD3(MD)!"_`@```$B#Q!CI`````$B+10A,B>?_D(````!(C7T@ +M3(GF2(L<)$B+;"0(3(MD)!!(@\08Z0````!(B=_H`````.NL2(G?Z`````#K +MC$B-M<`!``!(C7U(QX78`0```0```$C'A<`!````````2(FMR`$``$C'A=`! +M````````Z`````#I9O___V9F9I!F9F:09F:09F:0055!5$F)_%532(/L"$B+ +M;SA(BU](2(M5.$B%T@^$-@$``$B)T#'V2#G8=`Q(BTL(2#E("$@/1/!(BP!( +MA<!UYTB%]@^$A@```$B+?A!(BTL02#G/<@KK-$B+$DB%TG0Y2(-Z&`!U\4B) +MR$@#0PA(.4((=>1(BT(02`-#$$@#?@A(*T802(EZ"$B)0A!(B=Y(B>_H```` +M`.L82(M&"$@#1A!(*7L02,=#&`````!(B4,(@$UD$$R)Y^@`````2(/$"$B) +M[UM=05Q!7>D`````13'MZPA(BQ)(A=)T+DB#>A@`=?%(BWL(2(M*"$B)^$@# +M0Q!(.<%T64@#2A!(.<](#T3R2(L22(72==)(A?9(QT,8`````'082(M&"$B) +M[TB)0PA(BT802`%#$.@`````387M#X1Y____28M%$$@!0Q!,B>Y(B>_H```` +M`.EA____28G5Z7S___](QT,8`````.E,____9F9FD&9F9I!F9I!!54F)_3'_ +M051)B?154TB#[`A(A=(/A)@```!(BWI(2(7_#X2+````28M-.$B%R71R,>U% +M,<#K#4@YPG012(L)2(7)=$5(BT$82(7`=>I(BW$023GT=PY(A>UT!D@[=1!S +M`TB)S4B%P'732(7_9F:0=,M(BT<(2`-'$$@Y00A,#T3!2(L)2(7)=;M-A<!T +M#TF+0!!(`T<023G$2`]&[TB%[74<,=M(@\0(2(G86UU!7$%=PTTY94`/@VO_ +M___KY$F+?0"^!````.@`````2(7`2(G#=-!,B6@X28M%4#'V28M5.$@M```" +M`$@E``#^_TB%TDB->`%T($B+0AA(A<!T#TB+2$"X`0```"GYT^`)QDB+$DB% +MTG7@,<FX`0```-/@A<9T'X/!`8/Y!'7M2,=#0`````!(B=\QV^@`````Z6'_ +M__](8\%(`?A(A<!(B4-`=.),B6,H2(MU"$R)XDR)[^BJX___2(7`=,I(B5@8 +M2(E#2$R)[T&`3600Z`````#I(/___V9F9I!F9F:09F:04TB)^TB+0SA(A<!U +M"^M;D$B+`$B%P'122(MX&$B%_Y!T[DB+=QA(A?9T.(!^1`!T,C')ZP\/MD9$ +MC5$!2(/!`3G0?A](.7S.8'7J#[9&1(U1`4C'1,Y@`````$B#P0$YT'_AZ``` +M``#KFDB)WV9FD.@`````2(M#:$B+NX````#_D,@```!(B=];Z0````"054B) +M_5-(@^P(2(M?.(!G9+](A=MT0DB+>QA(A?]T!>@`````2(L;2(7;=>I(BT4X +MZP-(BP!(A<!T'DB+>!A(A?]T[TB#?Q@`=>CH`````$B+13A(A<!UXDB#Q`A( +MB>];7>D`````9F9FD&9FD&9FD$%62(GX2(G&055!5%533(MO($F-O1`!``!- +MC648Z`````!)BUT80<>%V`$```````!,.>-U"NLT2(L;3#GC="R`NX#\__\! +M2(V[</S__W7H]H/4_/__0'3?]D/P`739Z`````!(BQM,.>-UU$F+72A)C6TH +M2#GK=!AF9F:09F:02(U[Z.@`````2(L;2#GK=>])BVT83#GE#X3@````9I"` +MO8#\__\$2(V]</S__W8.2(.]B/S__P`/A'H!``!(BVT`3#GE==E)BUT83#GC +M#X2J````13'VZP]F9F:09F:02(L;2#GK=%F`NX#\__\!2(V[</S__W7H]H/4 +M_/__('3?2(N#J/S__X"CU/S__]M(A<!U&.GL````9F9FD&9FD$B+`$B%P`^$ +MV0```$B#>!@`=.U(BQM!O@$```!(.>MUITF+71A).=QU#NLR9F9FD$B+&TPY +MXW0F1(N3H/S__TB-NW#\__]%A=)X'/9#\`%UW^@`````2(L;3#GC==I;74%< +M05U!7L/V0_`!=,,/MH.`_/__/`0/AGX```!(@[N(_/__`'6J]H/0_O__0'6A +M2(N#\/[__TB%P'0&2#EX"'6/#[:#M/S__X7`?B^#Z`$QR4B#P`%(BU3/8$B% +MTG03@'H0!'8-]H)@`@``0`^%7O___TB#P0%(.<%UVN@`````Z4O___]%A/8/ +MA=+^__]FD.@`````Z<;^__\L`69F9I`/A2K____V@]3\__\"9F:0#X0:____ +MZ\/H`````&9FD.EY_O__9F9FD&9F9I!F9I!!5$F)_$B-OQ`!``!54^@````` +M2(7`2(G%=&I)BUPD&$R)8"!)@\08QP`!````2,=`"`````!(B4402,=`&``` +M``!,.>-U$>LO9F9FD&9FD$B+&TPYXW0@@+N`_/__`4B-NW#\__]UZ$B)[N@` +M````2(L;3#GC=>"+10"#Z`&%P(E%`'0%6UU!7,-;2(GO74%<Z1K]__]F9F:0 +M9F:09F:02(/L&$B);"0(2(D<)$B)_4R)9"002(M?(,=#0`````#VAX`#```8 +M#X6C````1(NGR````$6%Y`^%DP````^V0TBH`0^%AP```*@"3(UC$'0?3#EC +M$'4%2#D;=!U(B>^0Z-O;___V0T@!=65F9I!FD$B+2Q!,.>%U:@^V16(Y0R!R +M%NM,2(G62(GOZ"'8__\/MD5B.4,@<SA(B>_HX-?__TB%P$B)PG0H#[>`L``` +M`&8E_S!F/00@=<M(.1MU8?9%9@)TP(!+2`+KNF9FD&9FD$B+'"1(BVPD"$R+ +M9"002(/$&,-$BUL@187;=>1(BQ%(BT$(2(GO2(MQ&$B)0@A(B1!(B4D(2(D) +M2(L<)$B+;"0(3(MD)!!(@\08Z9'7__](B=?&@K(````!Z`````!(B>_H2M?_ +M_TB)PNE&____9I!(@^P82(D<)$B);"0(2(G[3(ED)!!,BV=0Z`+7__^`N[`` +M```$2(G"28ML)"`/A(T```!(BX/(````QT5$`````$B)*L="(`````!(B5H8 +M2,>#R`````````!(B4(02(M%"$B)50A(B1!(B4((00^V1"1B.44@<P>+14"% +MP'032(L<)$B+;"0(3(MD)!!(@\08PTF+/"1(C74HQT5``0```$B+'"1(BVPD +M"$R+9"002(/$&$B#QUCI`````&9F9I#V@[$````P=`KV14@"#X1@____QH.R +M`````4B)WTB+;"0(2(L<)$R+9"002(/$&.D`````9F9FD&9F9I!F9F:02(/L +M*$B);"0(3(ED)!!(B?U,B6PD&$R)="0@2(D<).C\U?__3(MU4$F)Q4V+9B!! +M@VPD(`$/MH6R````/`UT4#P1#X3(````/`MT9#P09I`/A.````!)BT402(GO +M2(F%R````.@`````08M$)$"%P'1H2(L<)$B+;"0(3(MD)!!,BVPD&$R+="0@ +M2(/$*,.0@+VP`````'6]@+VS``````^%NP```,:%LP````%F9I!)C40D$,:% +ML@````!)BU0D&$V);"0828E%`$&+1"1`28E5"$R)*H7`=9A)BSY)C70D*$'' +M1"1``0```$B+'"1(BVPD"$R+9"003(ML)!A,BW0D($B#QUA(@\0HZ0````!, +MB??HZ-C__X7`=0L/MH6S````/`%V0P^VA;(````\$`^%(/___X"]L`````,/ +MA!/___])BUX@3(GV28EN(+\#````Z`````!)B5X@Z?7^___&A;(````0Z\R# +MP`&(A;,```#I./___Y"0D)"0D)"02(LU`````$B%]G1#2(M6&$B-3AA(.<IT +M+DB-@G#\__\YN.@#``!U%^LI9F:09F:02(V"</S__SFXZ`,``'022(L22#G* +M=>E(BS9(A?9UO3'`\\/SPV9F9I!F9F:09F:0@'\$`'4,,<"!/WL!```/E\## +M,<"!/WL!```/E\##9I`/M@</M@XXR'0:ZRQF9F:0#[97`0^V1@$XPG412(/' +M`4B#Q@&$P'7H,=*)T,,/OL`/OM(IPHG0PP^^T`^^P2G"Z^AF9F:09F9FD&9F +MD&9FD$%728GW059!B?Y!54%455-(@>R8````3(LM`````$V%[71#3(UD)!`Q +M[4F+71!(A=MT*DR)9"0(2(M#"$B+>Q!,B>;_4#B`?"0C`'0(1#GU="N#Q0%( +MBQM(A=MUVTV+;0!-A>UUQ#';2('$F````$B)V%M=05Q!74%>05_#387_=.8/ +MME0D)T&+!SG0?-I(BQM(A=MTTBG02(M[$$B+="0(08D'2(M#"/]0.(!\)",` +M=-#KLF9F9I!F9F:09F9FD$%7059)B?Y!54%428G454B)S5-(@>RH````2(L% +M`````,<"`````$B)="0(QP$`````2(7`2(E$)!`/A)X```!!O?_____'1"0< +M`````$B+1"002(M8$$B%VP^$D````$B%[4$/E<?K'V9F9I!F9I!(BQL/MD0D +M-T$!!"2+1"0<`44`2(7;=&A(BT,(2(M[$$B-="0@_U`X2(M#"$B+@`@!``!( +MA<!T#T6$_W0*2(M[$/_0B40D'(!\)#,`=!-!QP0D`````$&#Q0''10`````` +M3#GS=9I(BT0D"$2)*$B!Q*@```!;74%<05U!7D%?PTB+1"002(L`2(7`2(E$ +M)!`/A4C____KUF9F9I!F9F:0055!5%4Q[5-(@>R(````3(LE`````$V%Y'0Q +M28M<)!!(A=MT'DB+0PA(BWL02(GF_U`X@'PD$P%(BQN#W?](A=MUXDV+)"1- +MA>1USTB!Q(@```")Z%M=05Q!7<-F9F:005=!5D%505152(G54TB![-@```") +M="0,2(UT)`SHKOW__TF)QKC_____387V#X3Y````38MF&#'`9F9FD&9FD,8$ +M*`!(@\`!2(/X1'7R28M&"$B-="0028M^$/]0.(!\)"(0#[94)"*X#P```(MT +M)`P/0L)(C90DP````(A$)"))BT8(28M^$/^0N````(7`#X2H````28M<)!A- +MC6PD&$PYZP^$@0```$4Q_^L*9I!(BQM,.>MT<H"[@/S__P%,C:-P_/__=>A, +M.[/H_/__==](BX/8_/__2(N[\/S__TB-M"20````_U!X]H0DF@````)UO`^V +MA"2<````.T0D#'6N#[:$))T````Z1"0B<Z`/MM!!BX0DZ`,``$&#QP&)1)4( +M1#A\)")UAC'`2('$V````%M=05Q!74%>05_#BX0DQ````(E%!(N$),````") +M10#I/____V9FD&9FD&9FD(U'^S'2@_@'=PZ)P/\DQ0````"Z`0```(G0P[H( +M````B=##N@(```")T,.Z!P```(G0P[H#````B=##N@0```")T,.Z!0```(G0 +MP[H&````B=##9F9FD&9FD&9FD&9FD`^VCX`#``!$#[9&"(G*@_(!@^(!B="# +MR"!!]L`@#T3"B<*#R@+VP00/1<*)PH/*!(/A`@^V3@H/1<*)PH/*$$&#X!`/ +M1<*)PH/*0/;!`0]%PHG"@,J`@^$"#T7"#[979(G!@<D```"`]L($#T7!B<&! +MR0```@#VP@(/1<&)P8')```!`(/B`0]%P8G"@<H```0`]D=F`0]%PL-F9I!F +M9I!(BX=H`@``2(M/*$0/MD=$2,'H"TC!Z0M(:=#H`P``2(G0,=)(]_%$B<)( +MB<%(BT<(#[9`"BG"B=!(F$@/K\A%A<!(C02)1(T4`'Y]08U`_S'V3(U(`4B+ +M3/=@2(7)=&#V@8`#```!=%>`>1`$=E'V@6`"``!P=$A(BU$(#[9!1`^V4@HI +MT(T$@$2-!`!(BX%H`@``2(M)*$C!Z`M(P>D+:=#H`P``B=`QTO?Q1`^OP$6% +MTG0%13G"=@9%B<)F9I!(@\8!3#G.=8U!@?H0)P``N!`G``!!#T;"PV9FD&9F +MD$B+CX`"```/MH&J````/`)U<DB+01"_$"<``$B+<"A(BT$(3(M`*$B)\DPI +MPDC!Z@M(A=)T-H!Y*`!U-$B+@:````!,*<!(P>@+2&G`Z`,``$B)T3'22/?Q +M2(T$@`'`OQ`G```]$"<```]&^(GXPY!(*[&@````2,'N"TAIQN@#``#KS3P# +M=%>`>2@`="-(BT$02(M0*$B)T$@K@:````!(P>H+2,'H"TAIP.@#``#KH$B+ +M@:````!(P>@+2&G0Z`,``$B+01!(BT@H2(G0,=)(P>D+2/?Q2(T$@`'`ZX"` +M>2@`=`9(BT$(ZZ=(BX&@````2,'H"TAIT.@#``!(BT$(Z\1F9F:09F:09F:0 +M9F:03(M'&$V%P'0\00^V0$2$P`^V\'0C,<E).7A@=!Y,B<(QR>L-2(M":$B# +MP@A(.?AT"H/!`3GQ=>PQP,-!BT`X@\`!`<C#BT<XPV9F9I!F9I`/MD=$A<!^ +M8X/H`44QR4R-4`%*BTS/8$B%R71&]H&``P```70]@'D0!'9$#[9!1(7`?B^# +MZ`$QTDR-0`%F9F:02(M$T6!(A<!T#_:`@`,```%T!D@Y<#AT%$B#P@%,.<)U +MWDF#P0%-.=%UIS'`\\-(.7$X=>U(B<C#9F9FD&9FD$%708G7059)B?Y!54F) +MS4%455-(@^P(2(7_0(AT)`-$B$0D`D2(3"0!#X0)`0``@'\0!P^4P$"`_@</ +ME,*$P`^%VP```(32#X7K````187_#X0L`@``3(GMQT0D!`````!)Q\7_____ +M13'D9F:09I"+?0#H`````$B%P$B)PP^$AP```$F+!D@Y`P^%>P```(![$`%U +M=4B)WDR)]^C?_O__,?](A<!(B<9T!$B+>$A(BTLX2(7)#X39````2(G(,=)( +M@W@8`4B+`$B#VO](A<!U[TB#^@,/AKD````QTD4Q[8-$)`0!20'42(/%!$0Y +M?"0$#X5X____#[9,)`*#X0^`?"0#!P^&+0$``$4QY$B#Q`A,B>!;74%<05U! +M7D%?PP^V1T0\`0^$(?___X32=`B$P`^%00$``$6%_V9FD&:0#X0\`0``3(GM +M,=M)Q\7_____13'DZRF`>!`!=:Y(BT!`2(7`=*5)`<1).<5,#T?H@\,!2(/% +M!$0Y^P^$>/___XM]`.@`````2(7`=<IF9I#I=O___S'22(7V=`1(BU8H2(7) +M=&E%,<#K(69FD&9FD$B+01A(.<9T"DB%_W0=2(7`=%=(BPE(A<ET*DB%]F:0 +M==Y(A?](BT$8=>-(A<!FD'7A2(M!$$@YT$@/1]!(BPE(A<EUUDB%_W04387` +M=`])BT`02`-'$$@YPD@/0M!).=5,#T?JZ<?^__](BT<(2`-'$$@Y00AUNDB+ +M01!)B<A(.=!(#T?0Z[4/MD0D`_\DQ0````!!@_\!#X:]_O__08/_`DV)[`^& +ML_[__P^VR;C_____0='OT^!(F$DAQ$2)^$P/K^#IE?[__T6%_P^%NP```$G' +MQ?____]%,>3I9_[__T&#_P,/AG#^__\/MLFX_____TV)[-/@2)A)(<1!C4?^ +M3`^OX.E4_O__08/_`@^&1_[__P^VR;C_____38GLT^!(F$DAQ$&-1_],#Z_@ +MZ2O^__^`?"0!`0^&_0```(!\)`$"#X9+____1`^V3"0!,=)$B?A!]_&%T@^% +M_/W__X/X`0^.\_W__TQCX$&-0?\/MLE(F$P/K^"X_____]/@2)A)(<5-#Z_E +MZ=']__](BT=@,>TQTDB%P'4>Z;S]__]!.>\/AN#]__^)ZDF+1-9@2(7`#X2C +M_?__2(M8.$&+?)4`Z`````!(.<-T$D$/MD9$@\4!.>@/AJW]___KPD$/MD9$ +M#[;803G?#X)M_?__A,!T9TF+1F`Q[3'22(7`=23I5_W__T$/MD9$@\4!#[;8 +M.>MV1HGJ28M$UF!(A<`/A#C]__](BU@X08M\E0#H`````$@YPW3.Z2#]__\/ +MMLFX_____TV)[-/@2)A)(<1$B?A,#Z_@Z07]__\/ML!-BV8H28MTQEA(BT8X +M2(M(.$B%R74*ZR5(BPE(A<ET'4B#>1@`=?%(BU9(2(M""$@#0A!(.4$(==], +M`V$003G?=ROIN_S__TF+%D@Y$`^%K/S__X!X$`$/A:+\__^#PP%,`V!`1#G[ +M#X25_/__B=A!BWR%`.@`````2(7`=<GI?/S__Y#SPV9F9I!F9F:09F:09F:0 +MBPT`````C5$!B=#!^!_!Z!Q$C00"08/@#T$IP$0[!0````"X_____W192&/! +M2,?&`````$B-%(!(C1102(L'2(T,E0````!(B025`````$B+1PA(B40Q"$B+ +M1Q!(B40Q$$B+1QA(B40Q&$B+1R!(B40Q((M'*$2)!0````")1#$H,<#SPV9F +M9I!F9F:09F:02(/L.`^V1Q!)B=`\`70F/`1T/4B-5"0,@_X!2(GG&<"#P!F( +M1"0(9HE*".@`````2(/$.,.+A^@#``!(C50D#$R)1"0,B40D!.O-9F:09I!( +MBU<X2(M'2(N2Z`,``$P#0`B)5"0$2(U4)`Q,B40D#.NF9F9FD&9F9I!F9I!F +M9I!54TB#[!C&!"0&2(M?$$B%VW0@2(M#$#'_2(GF2(E$)`A(BT,(_Y#````` +M2(L;2(7;=>!(@\086UW#9F:09F:02(M'4$0/MX^8````28GP08G22(NP@`(` +M`$R+&$2)R<'A"8!^*`!T#?:'L0````0/A8@````/MY::````P>()A<E)B[-0 +M`@0`18N+6`($`'1>B=`QTD'W\8G`2,'@!$B-/`9)C7`0ZS:)T$@#!TB)1OA$ +MB<C'1O0`````28GP*=")1O`YR(G(#T9&\"G!B4;P2(UV$(7)=!=(@\<0,=)% +MA=)UQ8G02`-'"$B)1OCKPK@!````0<=`]`$```###[>6F`````^WAIH````I +MPD0IRL'B">EG____9F9FD&9F9I!!5$F)_%5(B?53@'Y$`'1J,=OK(DB+5DA) +MBT0D2$B+2`A(.4H(=#D/MD5$C5,!2(/#`3G0?D1(BW3=8$B%]G3G@'X0!';. +M3(GGZ++___^$P'356UU!7+@!````PV9F9I!)BT0D.$@Y1CATYP^V142-4P%( +M@\,!.=!_O%M=05PQP,-F9F:09F9FD&9F9I!F9I!!54F)]4%428G\55.`?T0` +M=%(Q[>L<3(GN2(G?Z-____]!#[9$)$2-50%(@\4!.=!^,DF+7.Q@2(7;=.6` +M>Q`$=]1,B>Y(B=_H(____X3`C54!#Y1#4$$/MD0D1$B#Q0$YT'_.6UU!7$%= +MPV9FD&:0@'\0`70#,<##2(7V=%I(BX:``@``2(7`=$Y,BT`(23GP=$I(BT\X +M2(7)=#9F9F:02(M1&$B%TG0?2(7V=0=FD.O$2(G"2(M"&$B%P'7T2#GR=`5, +M.<)UKDB+"4B%R6:0=<ZX`0```,-)B?#KMDR+0!#KL&9F9I!F9I!F9I!F9I"+ +M1QR%P'@&@W\@`W<'QT=0_O____/#9F9FD&9FD&9FD(%_',<```!V"8%_(,<` +M``!W!\='4/[____SPV9FD&:0@7\<QP```'8)BU<@A=)X`O/#QT=0_O___\-F +M9I!F9I"+3QR%R7@&@W\@`W<'QT=0_O____/#9F9FD&9FD&9FD(-_'`-V!H-_ +M($MW!\='4/[____SPV9F9I!F9F:09F:0@W\<`W8&@W\@5W<'QT=0_O____/# +M9F9FD&9F9I!F9I"#?QP#=@:#?R!#=P?'1U#^____\\-F9F:09F9FD&9FD(-_ +M'`=V!H-_(`]W!\='4/[____SPV9F9I!F9F:09F:0@W\<!W8&@W\@0W<'QT=0 +M_O____/#9F9FD&9F9I!F9I"#?QP#=@:#?R`#=P?'1U#^____\\-F9F:09F9F +MD&9FD(-_'`=V"8%_(/\```!W!\='4/[____SPV9F9I!F9F:0@W\<!W8)@7\@ +MHPP``'<'QT=0_O____/#9F9FD&9F9I"#?QP'=@F!?R`G#0``=P?'1U#^____ +M\\-F9F:09F9FD(-_'`=V"8%_(*L```!W!\='4/[____SPV9F9I!F9F:0@W\< +M"W8&@W\@)W<'QT=0_O____/#9F9FD&9F9I!F9I"#?QP#2(M'*(L`=A-(8U<@ +MB<!(C02%!````$@YPG,'QT=0_O____/#9F9FD&9F9I"#?QP#2(M'*(L`=A-( +M8U<@B<!(C02%!````$@YPG,'QT=0_O____/#9F9FD&9F9I!32(G[2(M'*(-[ +M'`.+.'8)@7L@K0```'<)QT-0_O___UO#Z`````!(A<!T[5MF9I##9F9FD&9F +M9I!F9F:09F:04TB)^TB+1RB#>QP#BSAV"8%[(-<```!W"<=#4/[___];P^@` +M````2(7`=.U;9F:0PV9F9I!F9F:09F9FD&9FD%-(B?M(BT<H@WL<`XLX=@F! +M>R#Y````=PG'0U#^____6\/H`````$B%P'3M6V9FD,-F9F:09F9FD&9F9I!F +M9I!32(G[2(M'*(-['`A(BTLPBSAV#(-[(`1_%F9FD&9FD,=#4/[___];PV9F +M9I!F9I`/ME`(BT`$B0&$THA1!'04@3G#`0``=MCH`````$B%P'3.6\,]PP$` +M`&9F9I!F9I!VONOD9F9FD&9F9I!F9F:02(/L$$B);"0(2(D<)$B)_8%_'+,` +M``!V!H-_(`=W%<=%4/[___](BQPD2(ML)`A(@\00PTB+1RB+&(G?@^L!Z``` +M``"#^_UWW4B%P'31@'@0!';+2(.X@`(```!UP6:0Z\1F9F:09F9FD&9FD&9F +MD$B#[!A(B6PD"$B)'"1(B?U,B60D$(-_'`AV!H-_(`=W'\=%4/[___](BQPD +M2(ML)`A,BV0D$$B#Q!C#9F:09I!,BV<H08L<)(G?@^L!Z`````"#^_UW$DB% +MP'0&@'@0!'<7QT50_O___TF-?"0$Z)WK__\L`76JZZ](@[B``@```'7?Z^1F +M9F:09F9FD&9FD$B#["A(B6PD"$B)'"1(B?U,B60D$$R);"083(ET)"!(BT\H +M2&-7'$2+,42)\$B-!(4$````2#G"<F:+=R"%]GA?@#T``````G1613'M187V +M0;P$````=3'K369FD&9FD(G?Z`````!(BU402#D09I!U4O9`9`%T*$&#Q0%) +M@\0$13GU=")(BTTH0HL<(8G?Z`````!(A<!UQV9F9I!F9I#'15#^____2(L< +M)$B+;"0(3(MD)!!,BVPD&$R+="0@2(/$*,/'15#\____Z]IF9I!(@^P@2(D< +M)$B);"0(2(G[3(ED)!!,B6PD&(%_'(<```!,BV<H=@F#?R`#=R-F9I#'0U#^ +M____2(L<)$B+;"0(3(MD)!!,BVPD&$B#Q"##D$$/MD0D`3P(=]9%,>V$P'4= +MZ]2)[^@`````2(M3$$@Y$'4B08/%`44X;"0!=KE!#[;%08MLA&B)[^@````` +M2(7`==#KF\=#4/S___]F9F:0ZY5F9F:09F9FD&9FD&9FD(-_'`-V!H-_(`-_ +M!\='4/[____SPV9F9I!F9F:09F:02(M'*(M7'+D0````BW`(1(M`#(7V=`=$ +MB<!(C4@02&/"2#G!=PR%]HM'('4,03G`=@?'1U#^____\\-F9I!FD$B#["!( +MB1PD2(EL)`A(B?M,B60D$$R);"08@7\<KP```$R+9RAV"8-_(`-W(V9FD,=# +M4/[___](BQPD2(ML)`A,BV0D$$R+;"082(/$(,.000^V1"0!/!!WUD4Q[83` +M=1WKU(GOZ`````!(BU,02#D0=2)!@\4!13AL)`%VN4$/ML5!BVR$<(GOZ``` +M``!(A<!UT.N;QT-0_/___V9F9I#KE69F9I!F9F:09F:09F:02(/L($B)'"1( +MB6PD"$B)^TR)9"003(EL)!B#?QP$2(MO*'X&@W\@`W<FQT-0_O___TB+'"1( +MBVPD"$R+9"003(ML)!A(@\0@PV9F9I!F9I!(B>_HF.C__RP!=<X/MD4-/$!W +MQD4Q[83`=2'KQ&9FD$2)Y^@`````2(M3$$@Y$)!U(D&#Q0%$.&T-=J5!#[;% +M1(MDA7Q$B>?H`````$B%P'7.ZX;'0U#\____9F:09I#I?/___V9F9I!F9F:0 +M9F:02(/L($B)'"1(B6PD"$B)^TR)9"003(EL)!B!?QRS````2(MO*$2+90!V +M!H-_(`-W'\=#4/[___](BQPD2(ML)`A,BV0D$$R+;"082(/$(,-$B>?H```` +M`$B%P'341(GGZ`````!(BU,02#D0=`G'0U#\____Z\%,C64$00^V1"0!/!!W +MK$4Q[83`=2'KJF:0B>_H`````$B+4Q!(.1!FD'7,08/%`44X;"0!=HM!#[;% +M08MLA'")[^@`````2(7`=<[I:O___V9FD&9FD&9FD$B#["!(B1PD2(EL)`A( +MB?M,B60D$$R);"08@W\<"$B+;RA$BV4`=@:#?R`#=R+'0U#^____2(L<)$B+ +M;"0(3(MD)!!,BVPD&$B#Q"##9F:01(GGZ`````!(A<!TT42)Y^@`````2(M3 +M$$@Y$'0)QT-0_/___^N^3(UE!$R)Y^C=YO__+`%UIT$/MD0D#3Q`=YU%,>V$ +MP'4IZYMF9I!F9I")[^@`````2(M3$$@Y$&:0=;Q!@\4!13AL)`T/AG3___]! +M#[;%08MLA'R)[^@`````2(7`=<KI4____V9FD&:01(M''$6%P'@&@W\@*W<' +MQT=0_O____/#9F9FD&9F9I!(@^P02(D<)$B);"0(2(G[@W\<"$B+1RB+*'8T +M1(M/($6%R7@KB>_H`````$B%P'0?B>_H`````$B+4Q!(.1!T%L=#4/S____K +M#69FD&9FD,=#4/[___](BQPD2(ML)`A(@\00PV9F9I!F9F:09F:02(/L$$B) +M'"1(B6PD"$B)^X-_'`A(BT<HBRAV-$2+5R!%A=)^*XGOZ`````!(A<!T'XGO +MZ`````!(BU,02#D0=!;'0U#\____ZPUF9I!F9I#'0U#^____2(L<)$B+;"0( +M2(/$$,-F9F:09F9FD&9FD$B#[!!(B1PD2(EL)`A(B?N#?QP(2(M'*(LH=C1$ +MBU\@187;>"N)[^@`````2(7`=!^)[^@`````2(M3$$@Y$'06QT-0_/___^L- +M9F:09F:0QT-0_O___TB+'"1(BVPD"$B#Q!##9F9FD&9F9I!F9I!(@^P02(D< +M)$B);"0(2(G[@W\<#4B+1RB+*'8LBT<@A<!X)8GOZ`````!(A<!T&8GOZ``` +M``!(BU,02#D0=!#'0U#\____ZP?'0U#^____2(L<)$B+;"0(2(/$$,-F9I!( +M@^P02(D<)$B);"0(2(G[@W\<#4B+1RB+*'8LBT<@A<!^)8GOZ`````!(A<!T +M&8GOZ`````!(BU,02#D0=!#'0U#\____ZP?'0U#^____2(L<)$B+;"0(2(/$ +M$,-F9I!(@^P02(D<)$B);"0(2(G[@W\<#4B+1RB+*'8LBT<@A<!X)8GOZ``` +M``!(A<!T&8GOZ`````!(BU,02#D0=!#'0U#\____ZP?'0U#^____2(L<)$B+ +M;"0(2(/$$,-F9I!(@^P02(D<)$B);"0(2(G[@W\<`TB+1RB+*'95BT<@A<!X +M3HGOZ`````!(A<!T0HGOZ`````!(BU,02#D0=`G'0U#\____ZS"`>!`$=B-( +MBY"``@``2(72=!>`NJL`````=0X/MH!A`@``@^`8/`AT!\=#4/[___](BQPD +M2(ML)`A(@\00PV9F9I!F9I!F9I!(@^P02(D<)$B);"0(2(G[@W\<`TB+1RB+ +M*'8TBT<@A<!X+8GOZ`````!(A<!T(8GOZ`````!(BU,02#D0=`G'0U#\____ +MZP^`>!`!=`EFD,=#4/[___](BQPD2(ML)`A(@\00PV9F9I!F9F:09F:02(/L +M$$B)'"1(B6PD"$B)^X-_'`-(BT<HBRAV-(M'((7`>"V)[^@`````2(7`="&) +M[^@`````2(M3$$@Y$'0)QT-0_/___^L/@'@0`70)9I#'0U#^____2(L<)$B+ +M;"0(2(/$$,-F9F:09F9FD&9FD$B#[!A(B1PD2(EL)`A(B?M,B60D$(-_'`=( +MBT<HBRA$BV`$=GN+5R"%TGATB>_H`````$B%P'1H1(GGZ`````!(A<!T6XGO +MZ`````!$B>=(B<7H`````$B)PDB+10!(.T,0=`G'0U#\____ZSI(.P)U\DB+ +M10B`>`H`="2`>A`!=1Y(@WU8`'072(N%@`(``$B%P'02@+BK`````'0)9I#' +M0U#^____2(L<)$B+;"0(3(MD)!!(@\08PV9FD&9FD$B#[!!(B1PD2(EL)`A( +MB?N#?QP'2(M'*(LH=C2+3R"%R7@MB>_H`````$B%P'0AB>_H`````$B+4Q!( +M.1!T"<=#4/S____K#X!X$`1W"6:0QT-0_O___TB+'"1(BVPD"$B#Q!##9F9F +MD&9F9I!F9I!(@^P02(D<)$B);"0(2(G[@W\<5TB+1RB+*'8YBW<@A?9X,HGO +MZ`````!(A<!T)HGOZ`````!(BU,02#D0=`G'0U#\____ZQ2`>!`$=@=(@W@8 +M`'0'QT-0_O___TB+'"1(BVPD"$B#Q!##9F:09F:02(/L$$B)'"1(B6PD"$B) +M^X-_'$-(BT<HBRAV-HM_((7_>"^%[70RB>_H`````$B%P'0?B>_H`````$B+ +M4Q!(.1!T"<=#4/S____K#8!X$`%T!\=#4/[___](BQPD2(ML)`A(@\00PV9F +MD&9FD&9FD$B#[!!(B1PD2(EL)`A(B?N#?QP(2(M'*(LH=CA$BT<@187`>"^% +M[70RB>_H`````$B%P'0?B>_H`````$B+4Q!(.1!T"<=#4/S____K#8!X$`%T +M!\=#4/[___](BQPD2(ML)`A(@\00PV9F9I!F9I!$BU<<1872>`M$BT\@187) +M>`+SP\='4/[____#9F9FD$2+7QQ%A=MX!H-_("MW!\='4/[____SPV9F9I!F +M9F:0BT<<A<!X!H-_(']W!\='4/[____SPV9F9I!F9I!F9I!(@^P02(D<)$B) +M;"0(2(G[2(MO*(M/'+\0````#[95"P^V=0S!X@E`@/X"=#A(8\%(.<=W&T"` +M[@&+2R"_$````'142&/!2#G'=B5F9I!FD,=#4/[___](BQPD2(ML)`A(@\00 +MPXG02(UX$.O`9F:0BWT`Z`````!(A<!TTXM]`.@`````2(M3$$@Y$'09QT-0 +M_/___^O`B=!(C7@02&/!2#G'=ZOKR8!X$`%UHV9FD.NE9F9FD&9F9I!F9I!F +M9I!(@^P02(D<)$B);"0(2(G[2(MO*(M/'+\4````#[=5$`^V=1+!X@E`@/X" +M=#A(8\%(.<=W&T"`[@&+2R"_%````'142&/!2#G'=B5F9I!FD,=#4/[___]( +MBQPD2(ML)`A(@\00PXG02(UX%.O`9F:0BWT`Z`````!(A<!TTXM]`.@````` +M2(M3$$@Y$'09QT-0_/___^O`B=!(C7@42&/!2#G'=ZOKR8!X$`%UHV9FD.NE +M9F9FD&9F9I!F9I!F9I!(@^P02(D<)$B);"0(2(G[@W\<`TB+1RB+*'8LBT<@ +MA<!X)8GOZ`````!(A<!T&8GOZ`````!(BU,02#D0=!#'0U#\____ZP?'0U#^ +M____2(L<)$B+;"0(2(/$$,-F9I!(@^PH2(EL)`A(B1PD2(G]3(ED)!!,B6PD +M&$R)="0@2(M/*$AC5QQ$#[8Q1(GP2(T$A00```!(.<)R2(-_(`-V0D4Q[46% +M]D&\!````'4DD.LXB=_H`````$B+51!(.1!U14&#Q0%)@\0$13GU=!M(BTTH +M0HL<(8G?Z`````!(A<!US\=%4/[___](BQPD2(ML)`A,BV0D$$R+;"083(MT +M)"!(@\0HP\=%4/S____KVDB#["A(B6PD"$B)'"1(B?U,B60D$$R);"083(ET M)"!(BT\H2&-7'$0/MC%$B?!(C02%!````$@YPG)(@W\@`W9"13'M187V0;P$ M````=220ZSB)W^@`````2(M5$$@Y$'5%08/%`4F#Q`1%.?5T&TB+32A"BQPA MB=_H`````$B%P'7/QT50_O___TB+'"1(BVPD"$R+9"003(ML)!A,BW0D($B# -MQ"C#QT50_/___^O:2(/L*$B);"0(2(D<)$B)_4R)9"003(EL)!A,B70D($B+ -M3RA(8U<<1`^V,42)\$B-!(4$````2#G"<DB#?R`#=D)%,>U%A?9!O`0```!U -M))#K.(G?Z`````!(BU402#D0=45!@\4!28/$!$4Y]70;2(M-*$*+'"&)W^@` -M````2(7`=<_'15#^____2(L<)$B+;"0(3(MD)!!,BVPD&$R+="0@2(/$*,/' -M15#\____Z]I(@^P02(D<)$B);"0(2(G[@W\<!TB+1RB+*'<5QT-0_O___TB+ -M'"1(BVPD"$B#Q!##B>_H`````$B%P'3?B>_H`````$B+4Q!(.1!TUL=#4/S_ -M___KS69F9I!F9I!F9I"#?QP#2(M'*(L`=A-(8U<@B<!(C02%!````$@YPG,' -MQT=0_O____/#9F9FD&9F9I!3@W\<`DB)^TB+1R@/M@!V/XM7((72>#@Q]@^V -M^.@>W/__2(7`2(G"="9(BT`(2(.X^`````!T&$B+0Q!(.4(8=`?'0U#\____ -M6\-F9I!FD,=#4/[___];PV9F9I!F9I!(@^P0OAP```!(B1PD2(EL)`A(B?M( -MBV\HBU<<#[9-!(#Y`G0R2&/"2#G&=Q6`Z0&+4R"^"````'1-2&/"2#G&=A[' -M0U#^____2(L<)$B+;"0(2(/$$,.+11A(C7`<Z\6+?0#H`````$B%P'35BWT` -MZ`````!(BU,02#D0=!K'0U#\____Z\*+11A(C7`(2&/"2#G&=ZSKR(!X$`%U -MI(!]!Q!WGNNC9F9FD&9FD&9FD$B+?U@QP(722(M/*'0?@'D$`70<2(U!'$B) -M1@B+01C'1@0!````B0:X`0```//#D$B+1S!(@\`(2(E&".O>9I!(@^P02(D< -M)$B);"0(2(G[BW<<2(MO*(/^"W9TBU<@A=)X;8!]!P!U?`^V108QR<'@"8G` -M2(UX#$ACQD@Y^')0B<A(8])(@\`$2#G"<D*+?0#H`````$B%P'0UBWT`Z``` -M``!(BU,02#D0=`G'0U#\____ZR*`>!`!=14/MD4&#[=5!`'0/0`@``!^"V9F -M9I#'0U#^____2(L<)$B+;"0(2(/$$,,/MDT&OPP```#!X0GKA69F9I!F9I!F -M9I!F9I!(@^P02(D<)$B);"0(2(G[BW<<2(MO*(/^!W8KBT<@A<!X)(7V#[9- -M!`^V505X&`^VT@^VR4B8`<K!X@F)TDB#P@A(.=!S%<=#4/[___](BQPD2(ML -M)`A(@\00PXM]`.@`````2(7`=-Z+?0#H`````$B+4Q!(.1!T"<=#4/S____K -MRX!X$`%UOF9F9I!F9I#KO&9F9I!F9F:09F:09F:0052+!0````!)B?Q52(GU -M@_C_4W1^BU882,?#`````.L+2(/#*(L#@_C_=&<YT'7Q@\`!=%['15`````` -M2(GOD/]3"(MU4(7V=5!!@+PDD`($``!U/HM+((7)#X6@````28.\).`!```` -M=#U)BY0D&`(``$F-A"00`@``28FL)!@"``!(B44`2(E5"$B)*EM=05S#QT50 -M_O___UM(B>],BUU(74%<0?_C2(-[$`!)B:PDX`$``'1)2(M#&$''A"3H`0`` -M`0```$B)[TF)K"3X`0``2<>$)``"````````28F$)/`!``#_4Q!!BX0DZ`$` -M`(/H`87`08F$).@!``!UCDR+6QA(B>];74%<0?_C9I!(BP=(C9=H`P``QX<0 -M`P``#_\``,>'%`,```@```#'AQ@#````````2(F7(`,``$C'AS`#```````` -M2(F'"`,``(N'Z`,``(ER!$C'AT`#````````2(VW^`(``(F':`,``$B+OP@# -M``#I@O[__V:04TB)^TB+?Q!(.9_@`0``=`](B=],BUM(6T'_XV9F9I!(B[<0 -M`@``2(V'$`(``$C'A^`!````````2#G&=--(BQ9(BT8(2(E""$B)$$B)=@A( -MB3;H*/[__^NW9F:09F:0BX?H`P``PV9FD&9FD&9FD$B#[#B)^4F)\$B-5"0L -M2(GG2(G@Q@``2(/``4@YT'7T@/D'B$PD"`^$JP```(#Y!G00@/D$=`N`^05T -M!H#Y")!U&`^V5"0,]H9@`@```;@!````#T3"B$0D#(#Y''1A@/D#=!A!BX#H -M`P``2(GGB40D!.@`````2(/$.,-)BU`@2(72=-\/MH*P````B$0D#("ZL``` -M``!URTB+@I````!(B4<0#[>"F````(E'&`^V@K$```#0Z(/@`8A$)`WKI$B+ -MAF@"``!(B4<,#[>&=`,``&:)1Q3KC$B+1AA(A<!T"8N`Z`,``(E'#$R+1CCI -M<?___V9F9I!F9I!F9I!F9I!`B#4`````PV9F9I!F9F:02(M7&$B-3QA(.<IU -M"^LND$B+$D@YRG0E@+J`_/__`4B-@G#\__]UZ/9"\`%TXH7V=`U(BQ*#[@%( -M.<IUVS'`\\-F9F:09F9FD&9F9I!F9I!(@^P82(E<)`A,B60D$$B)^T&)](MW -M-$B+/T6)Y.@`````2(G'#[:`L0```$B)7U#&A[`````$2(E?6$R)9V#&A[(` -M````2,>'R`````````"#X,^#R""(A[$```!(BUPD"$R+9"002(/$&.D````` -M2(/L*$B)'"1,B60D$$F)_$R);"083(ET)"!)B?5(B6PD"$B++TF)UHMW-$B) -M[^@`````2(V]\````$B)P^@`````2,<``````$F+5"0H2(G?2,=`,`````!( -MQT`0`````$C'0"@`````2,=`.`````!(B5`(2(U0&,=`0`````!(B4-X3(EC -M4$B)4!A(B5`@3(EK6,:#L`````1,B;/(````QH.R`````$B+'"1(BVPD"$R+ -M9"003(ML)!A,BW0D($B#Q"CI`````&9FD&9FD$B#[!A(B1PD2(EL)`A(B?U, -MB60D$(,"`4&)](MW-$B+/TB)T^@`````2(G'08/\`0^VE[$````9P$B);U"# -MP`+&A[`````$2(E?6(/@`\:'L@````#!X`2#XL\)PHB7L0```(!]$`1V%TB# -MO8`"````=`U(QX?(`````````.L+2,>'R`````````#H`````$B+?0!(BQPD -M2(ML)`A,BV0D$$B#Q!CI`````&9FD&:02(/L.$R)?"0P3(V_$`$``$R)9"08 -M28G\2(EL)!!,B6PD($R)_TR)="0H2(E<)`A)B?9)B=7H`````$B%P$B)Q0^$ -MPP```$F+7"083(E@($F#Q!C'``$```!,B7`(3(EH$$C'0!@`````3#GC=0KK -M,TB+&TPYXW0K@+N`_/__`4B-NW#\__]UZ/9#\`%TXDB)ZKX!````Z+7^__]( -MBQM,.>-UU8M%`(/H`87`B44`="-(BUPD"$B+;"003(MD)!A,BVPD($R+="0H -M3(M\)#!(@\0XPTB)[DR)_^@`````3(GO38GS2(M<)`A(BVPD$$R+9"083(ML -M)"!,BW0D*$R+?"0P2(/$.$'_XTC'QP`````QP.@`````Z\5F9F:09F:02(/L -M.$R)?"0P3(V_$`$``$R)9"0828G\2(EL)!!,B6PD($R)_TR)="0H2(E<)`A) -MB?9)B=7H`````$B%P$B)Q0^$L@```$F+7"083(E@($F#Q!C'``$```!,B7`( -M3(EH$$C'0!@`````3#GC="1FD(.[H/S___](C;MP_/__=`I(B>HQ]NBF_?__ -M2(L;3#GC==Z+10"#Z`&%P(E%`'0C2(M<)`A(BVPD$$R+9"083(ML)"!,BW0D -M*$R+?"0P2(/$.,-(B>Y,B?_H`````$R)[TV)\TB+7"0(2(ML)!!,BV0D&$R+ -M;"0@3(MT)"A,BWPD,$B#Q#A!_^-(Q\<`````,<#H`````.O%9F9FD&9F9I!( -MBU8X4TB)^TB)?A!(A=)T!8M&((D"2(G?Z'+X__](B=];Z0````!F9I!F9I!F -M9I"+AN@#``!(C99H`P``2(F^"`,``,>&$`,```__``#'AA0#```(````2(F6 -M(`,``,="!`P```")AF@#``!(C89Z`P``QX88`P```````$C'AC`#```````` -M2(FV.`,``$B)AB@#``!(QX9``P```````$B!QO@"``#I`````&9FD$B+1Q!( +MQ"C#QT50_/___^O:2(/L$$B)'"1(B6PD"$B)^X-_'`=(BT<HBRAW%<=#4/[_ +M__](BQPD2(ML)`A(@\00PXGOZ`````!(A<!TWXGOZ`````!(BU,02#D0=-;' +M0U#\____Z\UF9F:09F:09F:0@W\<`TB+1RB+`'832&-7((G`2(T$A00```!( +M.<)S!\='4/[____SPV9F9I!F9F:04X-_'`)(B?M(BT<H#[8`=C^+5R"%TG@X +M,?8/MOCH'MS__TB%P$B)PG0F2(M`"$B#N/@`````=!A(BT,02#E"&'0'QT-0 +M_/___UO#9F:09I#'0U#^____6\-F9F:09F:02(/L$+X<````2(D<)$B);"0( +M2(G[2(MO*(M7'`^V302`^0)T,DACPD@YQG<5@.D!BU,@O@@```!T34ACPD@Y +MQG8>QT-0_O___TB+'"1(BVPD"$B#Q!##BT482(UP'.O%BWT`Z`````!(A<!T +MU8M]`.@`````2(M3$$@Y$'0:QT-0_/___^O"BT482(UP"$ACPD@YQG>LZ\B` +M>!`!=:2`?0<0=Y[KHV9F9I!F9I!F9I!(BW]8,<"%TDB+3RAT'X!Y!`%T'$B- +M01Q(B48(BT$8QT8$`0```(D&N`$```#SPY!(BT<P2(/`"$B)1@CKWF:02(/L +M$$B)'"1(B6PD"$B)^XMW'$B+;RB#_@MV=(M7((72>&V`?0<`=7P/MD4&,<G! +MX`F)P$B->`Q(8\9(.?AR4(G(2&/22(/`!$@YPG)"BWT`Z`````!(A<!T-8M] +M`.@`````2(M3$$@Y$'0)QT-0_/___^LB@'@0`745#[9%!@^W500!T#T`(``` +M?@MF9F:0QT-0_O___TB+'"1(BVPD"$B#Q!###[9-!K\,````P>$)ZX5F9F:0 +M9F:09F:09F:02(/L$$B)'"1(B6PD"$B)^XMW'$B+;RB#_@=V*XM'((7`>"2% +M]@^V300/ME4%>!@/MM(/MLE(F`'*P>()B=)(@\((2#G0<Q7'0U#^____2(L< +M)$B+;"0(2(/$$,.+?0#H`````$B%P'3>BWT`Z`````!(BU,02#D0=`G'0U#\ +M____Z\N`>!`!=;YF9F:09F:0Z[QF9F:09F9FD&9FD&9FD$%4BP4`````28G\ +M54B)]8/X_U-T?HM6&$C'PP````#K"TB#PRB+`X/X_W1G.=!U\8/``71>QT50 +M`````$B)[Y#_4PB+=5"%]G5008"\))`"!```=3Z+2R"%R0^%H````$F#O"3@ +M`0```'0]28N4)!@"``!)C80D$`(``$F)K"08`@``2(E%`$B)50A(B2I;74%< +MP\=%4/[___];2(GO3(M=2%U!7$'_XTB#>Q``28FL).`!``!T24B+0QA!QX0D +MZ`$```$```!(B>])B:PD^`$``$G'A"0``@```````$F)A"3P`0``_U,008N$ +M).@!``"#Z`&%P$&)A"3H`0``=8Y,BUL82(GO6UU!7$'_XV:02(L'2(V7:`,` +M`,>'$`,```__``#'AQ0#```(````QX<8`P```````$B)ER`#``!(QX<P`P`` +M`````$B)AP@#``"+A^@#``")<@1(QX=``P```````$B-M_@"``")AV@#``!( +MB[\(`P``Z8+^__]FD%-(B?M(BW\02#F?X`$``'0/2(G?3(M;2%M!_^-F9F:0 +M2(NW$`(``$B-AQ`"``!(QX?@`0```````$@YQG332(L62(M&"$B)0@A(B1!( +MB78(2(DVZ"C^___KMV9FD&9FD(N'Z`,``,-F9I!F9I!F9I!(@^PXB?E)B?!( +MC50D+$B)YTB)X,8``$B#P`%(.=!U](#Y!XA,)`@/A*L```"`^09T$(#Y!'0+ +M@/D%=`:`^0B0=1@/ME0D#/:&8`(```&X`0````]$PHA$)`R`^1QT88#Y`W08 +M08N`Z`,``$B)YXE$)`3H`````$B#Q#C#28M0($B%TG3?#[:"L````(A$)`R` +MNK``````=<M(BX*0````2(E'$`^W@I@```")1Q@/MH*Q````T.B#X`&(1"0- +MZZ1(BX9H`@``2(E'#`^WAG0#``!FB4<4ZXQ(BT882(7`=`F+@.@#``")1PQ, +MBT8XZ7'___]F9F:09F:09F:09F:00(@U`````,-F9F:09F9FD$B+5QA(C4\8 +M2#G*=0OK+I!(BQ)(.<IT)8"Z@/S__P%(C8)P_/__=>CV0O`!=.*%]G0-2(L2 +M@^X!2#G*==LQP//#9F9FD&9F9I!F9F:09F:02(/L&$B)7"0(3(ED)!!(B?M! +MB?2+=S1(BS]%B>3H`````$B)QP^V@+$```!(B5]0QH>P````!$B)7UA,B6=@ +MQH>R`````$C'A\@`````````@^#/@\@@B(>Q````2(M<)`A,BV0D$$B#Q!CI +M`````$B#["A(B1PD3(ED)!!)B?Q,B6PD&$R)="0@28GU2(EL)`A(BR])B=:+ +M=S1(B>_H`````$B-O?````!(B</H`````$C'``````!)BU0D*$B)WTC'0#`` +M````2,=`$`````!(QT`H`````$C'0#@`````2(E0"$B-4!C'0$``````2(E# +M>$R)8U!(B5`82(E0($R):UC&@[`````$3(FSR````,:#L@````!(BQPD2(ML +M)`A,BV0D$$R+;"083(MT)"!(@\0HZ0````!F9I!F9I!(@^P82(D<)$B);"0( +M2(G]3(ED)!"#`@%!B?2+=S1(BS](B=/H`````$B)QT&#_`$/MI>Q````&<!( +MB6]0@\`"QH>P````!$B)7UB#X`/&A[(`````P>`$@^+/"<*(E[$```"`?1`$ +M=A=(@[V``@```'0-2,>'R`````````#K"TC'A\@`````````Z`````!(BWT` +M2(L<)$B+;"0(3(MD)!!(@\08Z0````!F9I!FD$B#[#A,B7PD,$R-OQ`!``!, +MB60D&$F)_$B);"003(EL)"!,B?],B70D*$B)7"0(28GV28G5Z`````!(A<!( +MB<4/A,,```!)BUPD&$R)8"!)@\08QP`!````3(EP"$R):!!(QT`8`````$PY +MXW4*ZS-(BQM,.>-T*X"[@/S__P%(C;MP_/__=>CV0_`!=.)(B>J^`0```.BU +M_O__2(L;3#GC==6+10"#Z`&%P(E%`'0C2(M<)`A(BVPD$$R+9"083(ML)"!, +MBW0D*$R+?"0P2(/$.,-(B>Y,B?_H`````$R)[TV)\TB+7"0(2(ML)!!,BV0D +M&$R+;"0@3(MT)"A,BWPD,$B#Q#A!_^-(Q\<`````,<#H`````.O%9F9FD&9F +MD$B#[#A,B7PD,$R-OQ`!``!,B60D&$F)_$B);"003(EL)"!,B?],B70D*$B) +M7"0(28GV28G5Z`````!(A<!(B<4/A+(```!)BUPD&$R)8"!)@\08QP`!```` +M3(EP"$R):!!(QT`8`````$PYXW0D9I"#NZ#\____2(V[</S__W0*2(GJ,?;H +MIOW__TB+&TPYXW7>BT4`@^@!A<")10!T(TB+7"0(2(ML)!!,BV0D&$R+;"0@ +M3(MT)"A,BWPD,$B#Q#C#2(GN3(G_Z`````!,B>]-B?-(BUPD"$B+;"003(MD +M)!A,BVPD($R+="0H3(M\)#!(@\0X0?_C2,?'`````#'`Z`````#KQ69F9I!F +M9F:02(M6.%-(B?M(B7X02(72=`6+1B")`DB)W^AR^/__2(G?6^D`````9F:0 +M9F:09F:0BX;H`P``2(V6:`,``$B)O@@#``#'AA`#```/_P``QX84`P``"``` +M`$B)EB`#``#'0@0,````B89H`P``2(V&>@,``,>&&`,```````!(QX8P`P`` +M`````$B)MC@#``!(B88H`P``2,>&0`,```````!(@<;X`@``Z0````!F9I!( +MBT<02(FX*`(``$B-L"`"``!(C7A(2,>`(`(```````!(QX`P`@```````.D` +M````9F9FD&9F9I!F9F:09F:02(M'$$B)N"@"``!(C;`@`@``2(UX2$C'@"`" +M````````2,>`,`(```````#I`````&9F9I!F9F:09F9FD&9FD$B+1Q!(B;@H +M`@``2(VP(`(``$B->$A(QX`@`@```````$C'@#`"````````Z0````!F9F:0 +M9F9FD&9F9I!F9I!(BT<02(FX*`(``$B-L"`"``!(C7A(2,>`(`(```````!( +MQX`P`@```````.D`````9F9FD&9F9I!F9F:09F:02(M'$$B)N"@"``!(C;`@ +M`@``2(UX2$C'@"`"````````2,>`,`(```````#I`````&9F9I!F9F:09F9F +MD&9FD$B+1Q!(B;@H`@``2(VP(`(``$B->$A(QX`@`@```````$C'@#`"```` +M````Z0````!F9F:09F9FD&9F9I!F9I!(BT<02(FX*`(``$B-L"`"``!(C7A( +M2,>`(`(```````!(QX`P`@```````.D`````9F9FD&9F9I!F9F:09F:02(M' +M$$B)N"@"``!(C;`@`@``2(UX2$C'@"`"````````2,>`,`(```````#I```` +M`&9F9I!F9F:09F9FD&9FD$B+1Q!(B;@H`@``2(VP(`(``$B->$A(QX`@`@`` +M`````$C'@#`"````````Z0````!F9F:09F9FD&9F9I!F9I!(BT<02(FX*`(` +M`$B-L"`"``!(C7A(2,>`(`(```````!(QX`P`@```````.D`````9F9FD&9F +M9I!F9F:09F:02(M'$$B)N"@"``!(C;`@`@``2(UX2$C'@"`"````````2,>` +M,`(```````#I`````&9F9I!F9F:09F9FD&9FD$B+1Q!(B;@H`@``2(VP(`(` +M`$B->$A(QX`@`@```````$C'@#`"````````Z0````!F9F:09F9FD&9F9I!F +M9I!(BT<02(FX*`(``$B-L"`"``!(C7A(2,>`(`(```````!(QX`P`@`````` +M`.D`````9F9FD&9F9I!F9F:09F:02(M'$$B)N"@"``!(C;`@`@``2(UX2$C' +M@"`"````````2,>`,`(```````#I`````&9F9I!F9F:09F9FD&9FD$B+1Q!( MB;@H`@``2(VP(`(``$B->$A(QX`@`@```````$C'@#`"````````Z0````!F M9F:09F9FD&9F9I!F9I!(BT<02(FX*`(``$B-L"`"``!(C7A(2,>`(`(````` M``!(QX`P`@```````.D`````9F9FD&9F9I!F9F:09F:02(M'$$B)N"@"``!( @@ -6240,1149 +6320,1129 @@ M9F9FD&9FD$B+1Q!(B;@H`@``2(VP(`(``$B->$A(QX`@`@```````$C'@#`" M````````Z0````!F9F:09F9FD&9F9I!F9I!(BT<02(FX*`(``$B-L"`"``!( MC7A(2,>`(`(```````!(QX`P`@```````.D`````9F9FD&9F9I!F9F:09F:0 M2(M'$$B)N"@"``!(C;`@`@``2(UX2$C'@"`"````````2,>`,`(```````#I -M`````&9F9I!F9F:09F9FD&9FD$B+1Q!(B;@H`@``2(VP(`(``$B->$A(QX`@ -M`@```````$C'@#`"````````Z0````!F9F:09F9FD&9F9I!F9I!(BT<02(FX -M*`(``$B-L"`"``!(C7A(2,>`(`(```````!(QX`P`@```````.D`````9F9F -MD&9F9I!F9F:09F:02(M'$$B)N"@"``!(C;`@`@``2(UX2$C'@"`"```````` -M2,>`,`(```````#I`````&9F9I!F9F:09F9FD&9FD$B+1Q!(B;@H`@``2(VP -M(`(``$B->$A(QX`@`@```````$C'@#`"````````Z0````!F9F:09F9FD&9F -M9I!F9I!(BT<02(FX*`(``$B-L"`"``!(C7A(2,>`(`(```````!(QX`P`@`` -M`````.D`````9F9FD&9F9I!F9F:09F:02(M'$$B)N"@"``!(C;`@`@``2(UX -M2$C'@"`"````````2,>`,`(```````#I`````&9F9I!F9F:09F9FD&9FD$B+ -M1Q!(B;@H`@``2(VP(`(``$B->$A(QX`@`@```````$C'@#`"````````Z0`` -M``!F9F:09F9FD&9F9I!F9I!(BT<02(FX*`(``$B-L"`"``!(C7A(2,>`(`(` -M``````!(QX`P`@```````.D`````9F9FD&9F9I!F9F:09F:02(M'$$B)N"@" -M``!(C;`@`@``2(UX2$C'@"`"````````2,>`,`(```````#I`````&9F9I!F -M9F:09F9FD&9FD$B+1Q!(B;@H`@``2(VP(`(``$B->$A(QX`@`@```````$C' -M@#`"````````Z0````!F9F:09F9FD&9F9I!F9I!(BT<02(FX*`(``$B-L"`" -M``!(C7A(2,>`(`(```````!(QX`P`@```````.D`````9F9FD&9F9I!F9F:0 -M9F:02(M'$$B)N"@"``!(C;`@`@``2(UX2$C'@"`"````````2,>`,`(````` -M``#I`````&9F9I!F9F:09F9FD&9FD$B+1Q!(B;@H`@``2(VP(`(``$B->$A( -MQX`@`@```````$C'@#`"````````Z0````!F9F:09F9FD&9F9I!F9I!(BT<0 -M2(FX*`(``$B-L"`"``!(C7A(2,>`(`(```````!(QX`P`@```````.D````` -M9F9FD&9F9I!F9F:09F:02,='*`````!(B7\P2(UW*$C'1S@`````2(L_2(/' -M2.D`````9F9FD&9F9I!F9F:02(M'"$C'1S``````2(UW,$B)?SA(QT=````` -M`$B+.$B#QTCI`````&9F9I!F9F:04X"_L@````%(B?MT%`^VA[,```"#P`$\ -M`HB'LP```'8_2(L[2(MS>$B!Q_````#H`````$B+.TC'0R@`````2(US*$B) -M6S!(QT,X`````%M(@\=(Z0````!F9F:09F:02(M'>,:'L@````!(QT`0```` -M`$B+1WA(C5`82,=`*`````!(QT`P`````$C'0#@`````QT!``````$B)4!A( -MB5`@6^D`````9F9FD&9F9I!(BT=8BQ"#Z@&%THD0=21(QT<H`````$B)?S!( -MC7<H2,='.`````!(BS](@\=8Z0````#I`````&9F9I!F9F:02(/L&$B)'"1( -MB6PD"$R)9"002(M'4$B+D(`"``!(BVH(2#G%#X28````2(7M=`GVA8`#```! -M=1A(BQPD2(ML)`A,BV0D$$B#Q!CI<?___Y!,BV=8#[:?L0```.@`````2(M] -M`(MU-,#K!.@`````2(G'#[:`L0```(/C`\'C!$B);U#&A[`````$3(EG6,:' -ML@````!(QX?(`````````(/@SPG8B(>Q````2(L<)$B+;"0(3(MD)!!(@\08 -MZ0````!(BVH0Z5____]F9I!FD$B#[!A,B60D$$B)7"0(28G\2(M?6$B+>Q#_ -M4PA)BSPD2(G>2(''$`$``.@`````3(GG2(M<)`A,BV0D$$B#Q!CI`````&9F -M9I!F9F:09F:0051)B?Q54TB![,````!(BV]02(VT)(````!(BUUX2(M%:$B+ -MO8````#_4'A(BT,(2(GF2(M[$/]0.$B-C"2T````2(V4)+@```!(C;0DO``` -M`$B)W^AFRO__]H0DB@````)T;(N4)+0````/MH0DC`````'"08"\)+(````! -M=&"+M"2\````2,?'`````#'`Z`````!(B>Z_&@```.@`````2(M]`$F+="18 -M2(''D````.@`````3(GGZ`````!(@<3`````6UU!7,-F9I!FD(N4)+@```#K -MDF9F9I!F9I"+M"2\````2,?'`````#'`Z`````!(B>Z_&P```.@`````ZYYF -M9F:09F9FD&9F9I!(@^P82(E<)`A(B6PD$$B+7UA(BT,(2(LHZ`````!(C7,P -M2,=#,`````!(B5LX2(U]2$C'0T``````2(M<)`A(BVPD$$B#Q!CI`````&9F -MD$B#[#A(B5PD"$B);"002(G[3(ED)!A,B6PD($R)="0H3(E\)#"`O[(````! -M2(MO6$R++TR+=0A,BV4038N]X`$``'08#[:'LP```(/``3P"B(>S````#X;7 -M````2(MS>$F-O?````#H`````$B)W^@`````387D28M7,`^$GP```$&+A"3H -M`P``B0*#P`$/A)(```!!@(YA`@``!$F)K"2``@``2(U5&$&`C"1A`@``!$F- -M12A(C74P08"D)&`"``#]28FN@`(``$F-?4A)BTTP2(E%&$F)53!(B1%(B4T@ -M2,=%,`````!(B6TX2,=%0`````!(BUPD"$B+;"003(MD)!A,BVPD($R+="0H -M3(M\)#!(@\0XZ0````!F9I!FD,<"_____T''1U#_____Z6'___](BT=XQH>R -M`````$C'0!``````2(M'>$B-4!A(QT`H`````$C'0#``````2,=`.`````#' -M0$``````2(E0&$B)4"!(BUPD"$B+;"003(MD)!A,BVPD($R+="0H3(M\)#!( -M@\0XZ0````!F9F:005=!5DF)_D%505154TB#[`A(BV\H3(MO,(M]`.@````` -M#[9-!`^V=05)B<1!QT90_____P^V50:`^@L/AZ\```"`?0<+#X>E````#[;! -MB40D!`^VP@-$)`2#^`M^![D+````*-%!B$T$#[9-!T`/MM8/ML$!T(/X"WX( -MO@L```!`*,Y!@'T$`$V-?0A!B'4%#X2)````,=OK#V9FD&9FD(/#`4$X701V -M=DF+="10#[9%!DB)V4C!X0E!N`$```"Z`0```('A`/X!`$R)YTB![@```@!, -M`?E(@>8``/[_2`'&#[;#2`'&Z`````"%P'2P2<=&6`````!-B79@28UV6$G' -M1F@`````28M^$$B#Q`A;74%<05U!7D%?Z0````!!@'T%`'13,=OK#V9FD&9F -MD(/#`4$X705V0`^V=0</MLL#3"0$20-T)%`/ML-!N`$```"Z`0```$R)Y\'A -M"4ACR4B-M`8`^/__3`'YZ`````"%P'2\Z7?___]!QT90`````.EJ____9F9F -MD&9FD&9FD$%6055!5$F)_%532(M?*(L[3(US#.@`````28G%28M$)##'```` -M``!!QT0D4`````"`>P<`=`=)B<9)@\8$@'L&`'1G,>WK"8/%`4`X:P9V6DF+ -M15`/MW,$2(GI1`^V0P=(P>$)N@$```"!X0#^`0!,B>](+0```@!,`?%()0`` -M_O](C70&"T`/ML5(`<;H`````(7`=+%)BT0D,,<`_____T''1"10_____TG' -M1"18`````$V)9"1@28UT)%A)QT0D:`````!)BWPD$%M=05Q!74%>Z0````!F -M9F:09F:04X"_L@````%(BU]82(M+,'0^@+^2`````'4UQT-0_____^@````` -M2,=#6`````!(B5M@2(US6$C'0V@`````2(M[$%OI`````&9F9I!F9I#'0U`` -M````#[:'D@```(3`B`%U'(N'E````(E!!$B+4SA(A=)TK(M!!(/`"(D"ZZ(/ -MMH>1````B4$$Z^%F9F:02('LR````$B)K"2@````2(F<))@```!(B?U,B:0D -MJ````$R)K"2P````3(FT)+@```!,B;PDP````$B+1R@/ME`"#[8(@/H##X0I -M`0``@/H$#X1)`0``@'@!!78&@'@%_G1_#[;Y,?;HD\/__TB)PTB+11!(BU5( -M2(GN2,=%2`````!(B:@H`@``2(F0(`(``$C'@#`"````````2(M#"$B+>Q#_ -MD/@```!(BYPDF````$B+K"2@````3(ND)*@```!,BZPDL````$R+M"2X```` -M3(N\),````!(@<3(````PT2+=R`Q]@^V^4R->`M$#[9@"^@'P___2(7`2(G# -M=#](BT,(2(N`"`$``$B%P'022(M[$/_01#C@#X?K````02C$2(L;2(7;=!5( -MBT,(2(M[$$B)YO]0.(!\)!,`=,%(BT4XQP``````2(M]$$B-=5C'15#_____ -M2,=%6`````!(B6U@2,=%:`````#H`````.DS____#[9`!$B-M"2,````#[;Y -MB80DC````.ANPO__2(G#Z=;^__]F9I!F9I`Q]@^V^4R-<`-$#[9@`^A-PO__ -M2(7`2(G#=2WKC69FD$$HQ$B+&TB%VP^$>____TB+0PA(BWL02(GF_U`X@'PD -M$P`/A6+___](BT,(2(N`"`$``$B%P'3+2(M[$/_01#C@=KU%B";I9?[__T6( -M)TB+13A$B3#I5O[__V9FD&9FD$B+5Q!(C7=82(E_8$C'1V@`````2(N"(`(` -M`$C'1U@`````2(E'2$B)U^D`````D$%713'`059!54F)_4%455-(@>RH```` -M2(M'*$B++0````"+`$B%[8E$)!Q(BT<P=&E,C7@$3(UT)"!%,>1(BUT02(7; -M=0[K14&#Q`%(BQM(A=MT.4B+0PA$B40D"$R)]DB+>Q#_4#B`?"0S`$2+1"0( -M=-E).6T0=<]!@\`!1#E$)!Q%B2=V#TF#QP3KNTB+;0!(A>UUITF+13!)BWT0 -M28UU6$G'15@`````38EM8$G'16@`````1(D`Z`````!(@<2H````6UU!7$%= -M05Y!7\.+-0`````[-0````!(BT\P#X2*````2&/&2(T4@$B-%%!(BP25```` -M`$B)`4B+!)4`````2(E!"$B+!)4`````2(E!$$B+!)4`````2(E!&$B+!)4` -M````2(E!((L$E0````")02B-1@&)PL'Z'\'J'`'0@^`/*=")!0````!(QT=8 -M`````$B)?V!(C7=82,=':`````!(BW\0Z0````"0QT=0_____^O59F9FD&9F -MD$B#["@Q]DB)7"0(2(EL)!!(B?M,B60D&$R);"0@2(M'*(LX1(MH!(MH"$2+ -M8`SH_;___TB%P$B)P71\A>UT6$B+4RA(BT`(13'`2(MY$$2)[D2)X4B#PA#_ -MD#`!``!(BWL02(US6$C'0U@`````2(E;8$C'0V@`````2(M<)`A(BVPD$$R+ -M9"083(ML)"!(@\0HZ0````!(BWD02(M3,$&X`0```$B+0`A$B>%$B>[_D#`! -M``#KI\=#4/[____KGE4Q]E-(B?M(@>R(````2(M'*(LXZ%>___](A<!(B<)( -MBVLP=$M(BT`(2(GF2(MZ$/]0.`^W1"0$9HE%``^W1"0&9HE%`DB+>Q!(C7-8 -M2,=#6`````!(B5M@2,=#:`````#H`````$B!Q(@```!;7</'0U#^____Z\QF -M9F:09F:02(/L*$B);"003(ED)!A(B?U(B5PD"$R);"0@2(M'*$R+;S"+&$R- -M8`2)WX/K`>@`````@_O]2(G'N`````!(#T?X00^V1"0*A,!U"4$/MD0D#L#H -M!$4/MD0D#D$/MG0D#`^VP$$/ME0D#4F-3"1\08G!08/@#^C%Q?__2(M]$$B- -M=5A)B44`2,=%6`````!(B6U@2,=%:`````!(BUPD"$B+;"003(MD)!A,BVPD -M($B#Q"CI`````&9F9I!F9F:02(/L*$R)9"0(3(ET)!A)B?Q(B1PD3(EL)!!, -MB7PD($R+;RA,BW\P08M=`$V-=02)WX/K`>@`````10^V1@)!#[9U!(/[_4$/ -MME8!2(G'28U-=+@`````2`]'^$4QR4&#X`_H&<7__TF+?"0028UT)%A)B0=) -MQT0D6`````!-B60D8$G'1"1H`````$B+'"1,BV0D"$R+;"003(MT)!A,BWPD -M($B#Q"CI`````&9F9I!32(M'*$B+7S!$BQ!,C5L$1872?GU,BPT`````387) -M='%%,<!)BTD828UQ&$@Y\74*ZU5(BPE(.?%T38"Y@/S__P%(C8%P_/__=>B+ -M@.@#``!)8]!!@\`!13G"08D$DW721(G`2,='6`````!(B7]@2(UW6$C'1V@` -M````B0-;2(M_$.D`````38L)387)=93KSS'`Z\YF9F:09F:09F:055-(BT<H -M2(MO,$2+&$B-701%A=L/CL@```!,BQ4`````3872#X2X````13')28M*&$V- -M0AA,.<%U$NF3````D$B+"4PYP0^$A@```$B#N8C\__\`2(VQ</S__W7C#[:! -M@/S__SP$=E=(BX'P_O__2(7`=`U(@W@(`'0&2#EP$'2_BX;H`P``26/108/! -M`8D$DT4YV76J1(G(2,='6`````!(B7]@2(UW6$C'1V@`````B44`6UU(BW\0 -MZ0`````L`77.]H'4_/__`G3%9F9FD.NO38L23872#X5/____9I#KM#'`Z[-F -M9F:09F:09F:005<Q]D%6055!5$F)_%532('LB````$B+1RA,BW<PBSB+:`1$ -MBW@(Z,2[__](A<!(B<-!QT0D4/____]T/&9FD$B+0PA(BX`(`0``2(7`=`Q( -MBWL0_]`YQ7Q7*<5(BQM(A=MT%4B+0PA(BWL02(GF_U`X@'PD$P!TQTF+?"00 -M28UT)%A)QT0D6`````!-B60D8$G'1"1H`````.@`````2('$B````%M=05Q! -M74%>05_#2(M#"#')2(M[$$V)\$2)^HGN_Y`H`0``A<!UK$''1"10`````.NA -M9F9FD&9F9I!!5S'V059!54%428G\55-(@>R(````2(M'*$R+?S"+.(MH!.CH -MNO__2(7`2(G#0<=$)%#_____=$-%,>UF9F:02(M#"$B+@`@!``!(A<!T#TB+ -M>Q#_T#G%?%HIQ4$!Q4B+&TB%VW052(M#"$B+>Q!(B>;_4#B`?"03`'3$28M\ -M)!!)C70D6$G'1"18`````$V)9"1@2<=$)&@`````Z`````!(@<2(````6UU! -M7$%=05Y!7\-(BT,(2(N`*`$``$B%P'2X13'`,=)(BWL03(GYB>[_T(7`=:1! -M#[9'`CS_=`=$`>A!B$<"0<=$)%``````ZXEF9F:09F:09F:09F:005<Q]D%6 -M055!5$F)_%532('LB````$B+1RA,BW\PBSB+:`3HZ+G__TB%P$B)PT''1"10 -M_____W1#13'M9F9FD$B+0PA(BX`(`0``2(7`=`](BWL0_]`YQ7Q:*<5!`<5( -MBQM(A=MT%4B+0PA(BWL02(GF_U`X@'PD$P!TQ$F+?"0028UT)%A)QT0D6``` -M``!-B60D8$G'1"1H`````.@`````2('$B````%M=05Q!74%>05_#2(M#"$B+ -M@"`!``!(A<!TN$B+>Q!,B?J)[O_0A<!UJ4$/MD<"//]T!T0!Z$&(1P)!QT0D -M4`````#KCF:005<Q]D%6055!5$F)_%532('LB````$B+1RA,BW\PBSB+:`3H -M^+C__TB%P$B)PT''1"10_____W1#13'M9F9FD$B+0PA(BX`(`0``2(7`=`]( -MBWL0_]`YQ7Q:*<5!`<5(BQM(A=MT%4B+0PA(BWL02(GF_U`X@'PD$P!TQ$F+ -M?"0028UT)%A)QT0D6`````!-B60D8$G'1"1H`````.@`````2('$B````%M= -M05Q!74%>05_#2(M#"$B+@!@!``!(A<!TN$B+>Q!,B?J)[O_0A<!UJ4$/MD<" -M//]T!T0!Z$&(1P)!QT0D4`````#KCF:005<Q]D%6055!5$F)_%532('LB``` -M`$B+1RA,BW\PBSB+:`3H"+C__TB%P$B)PT''1"10_____W1#13'M9F9FD$B+ -M0PA(BX`(`0``2(7`=`](BWL0_]`YQ7Q:*<5!`<5(BQM(A=MT%4B+0PA(BWL0 -M2(GF_U`X@'PD$P!TQ$F+?"0028UT)%A)QT0D6`````!-B60D8$G'1"1H```` -M`.@`````2('$B````%M=05Q!74%>05_#2(M#"$B+@!`!``!(A<!TN$B+>Q!, -MB?J)[O_0A<!UJ4$/MD<"//]T!T0!Z$&(1P)!QT0D4`````#KCF:0054Q]D%4 -M54B)_5-(@>R(````2(M'*(LXZ".W__\QTDB%P$B)PW1"13'D9F:09F:02(M# -M"$B+@`@!``!(A<!T"4B+>Q#_T$$!Q$B+&TB%VW052(M#"$B+>Q!(B>;_4#B` -M?"03`'3*1(GB2(M%,$B+?1!(C7582,=%6`````!(B6U@2,=%:`````")$.@` -M````2('$B````%M=05Q!7<-FD%-(BT<H2(G[2(M7,(MP!(LXZ+JX__^%P'0' -MQT-0_____TC'0U@`````2(E;8$B-<UA(QT-H`````$B+>Q!;Z0````!F9F:0 -M9F:09F:09F:054B)_3'V4TBT -M?S'`Q@08`$B#P`%(@_A$=?)(B>!(C8PD@````,8``$B#P`%(.<AU[$B+0@A( -MBWH02(GF_U`X#[9$)'&(`P^V1"1RB$,!#[9$)'.(0P(/MD0D=(A#`TB+?1!( -MC7582,=%6`````!(B6U@2,=%:`````#H`````$B!Q(@```!;7</'15#_____ -MZ\QF9I!(@^P82(E<)`A,B60D$$B)^TR+9S#H5K?__TB+>Q!(C7-82,=#6``` -M``!!B00D2(E;8$C'0V@`````2(M<)`A,BV0D$$B#Q!CI`````&9FD%5(Q\8` -M````4TB)^TB#[`A(BV\H2(GOZ.2T__^%P'4Q#[9%((@%`````$C'0U@````` -M2(E;8$B-<UA(QT-H`````$B+>Q!(@\0(6UWI`````$C'Q@````!(B>_HH+3_ -M_X7`=1,/MD4@C03%</[__XD%`````.NS2,?&`````$B)[^AZM/__A<!T2DC' -MQ@````!(B>_H9[3__X7`=49(BWL02,>'(`(```````!(B9\H`@``2,>',`(` -M``````!(@\0(6UU(C;<@`@``2(/'2.D`````#[9%((@%`````.E'____2,?& -M`````$B)[^@.M/__A<!U$4B+>Q!(QX<@`@```````.NEQT-0_____^D7____ -M9F9FD&9FD&9FD&9FD$B+1S!(QT=8`````$B-=UA(B7]@2,=':`````!(BW\0 -MQP````$"Z0````!F9I!FD$%6055!5%5(B?U32(/L0$B+12A(BW\0QD0D,`>` -M>"`!3(UG&!G`@\`"B$0D.$B+7QA,.>-T)4R-="0P9F:09I#V0_`!=`F`NX#\ -M__\!=#U(BQM,.>-UZ4B+?1!(C758QT50`````$C'15@`````2(EM8$C'16@` -M````Z`````!(@\1`6UU!7$%=05[#2(N#V/S__TB+N_#\__](B>;_4'@/MD0D -M#SI$)#ATI$B+@]C\__](B[OP_/__3(GV_Y#`````ZXMF9F:09F9FD&9F9I!( -M@^PH2(D<)$R)9"002(G[2(EL)`A,B6PD&$R)="0@2(MO6$R+-TB+12A$BRA$ -MB>_H`````("[L@````%)B<1T&`^V@[,```"#P`$\`HB#LP````^&EP```$B+ -M<WA)C;[P````Z`````!(B=_H`````(M%&#TI_P``=&4].?\``'1>387D=`]) -MBP0D3#GP9I`/A,````!(BWT02(UU6,=%4/[___](QT58`````$B);6!(QT5H -M`````$B+'"1(BVPD"$R+9"003(ML)!A,BW0D($B#Q"CI`````&9FD&9FD$B+ -M13!$B2CKF69F9I!F9I!(BT-XQH.R`````$B)WTC'0!``````2(M#>$B-4!A( -MQT`H`````$C'0#``````2,=`.`````#'0$``````2(E0&$B)4"!(BQPD2(ML -M)`A,BV0D$$R+;"083(MT)"!(@\0HZ0````!(C;`@`@``2(UX2$C'@"`"```` -M````2(FH*`(``$C'@#`"````````2(L<)$B+;"0(3(MD)!!,BVPD&$R+="0@ -M2(/$*.D`````D$B+-TB!QN@!``#I`````)!(@^P(2(M'*(LXZ`````!(@\0( -M2(G'Z]AF9F:09F9FD$B#[`A(BT<HBSCH`````$B#Q`A(B<?KN&9F9I!F9F:0 -M2(/L"$B+1RB`>`0!BSAT!4B#Q`C#Z`````!(@\0(2(G'ZXUF9F:09F:09F:0 -M9F:0055)B?U!5%532(/L"$B+1RB+$&;WP@#_=41!B=1!@>3_````?C@Q[;L$ -M````ZP6028M%*(L\&.@`````2(7`=!&`>!`$=@M(@[B``@```)!T%X/%`4B# -MPP1$.>5UTDB#Q`A;74%<05W#2(G'Z`_____KWV9F9I!F9I!F9I!F9I!(@^P( -M2(M'*(LXZ`````!(@\0(2(G'Z>7^__]F9I!FD$B#[!A(B6PD$$B)7"0(2(M' -M*(M8!(LXZ`````"#^PU(B<5T-(/[`709@_L$=!2#^P=T#TB+7"0(2(ML)!!( -M@\08PTB)[TB+7"0(2(ML)!!(@\08Z8C^__](A<!TUDB+@(`"``!(A<!TRDB+ -M>`A(A?]T#.AI_O__2(N%@`(``$B+>!!(A?]UONNJ9F9FD&9FD$B#[!A,B60D -M$$B)7"0(2(M'*(M8!(LXZ`````")WTF)Q.@`````3(GG2(G#Z!_^__](B=], -MBV0D$$B+7"0(2(/$&.D)_O__9F:09F:09F:02(/L"$B+1RB+..@`````2(/$ -M"$B)Q^GE_?__9F:09I!(@^P(2(M'*(LXZ`````!(@\0(2(G'Z<7]__]F9I!F -MD%-(BT<HBSCH`````$B%P$B)PW0P2(N`@`(``$B%P'0D2(MX"$B%_W0,Z)+] -M__](BX.``@``2(MX$$B%_W026^E\_?__2(G?6^ES_?__9F:06\-F9F:09F9F -MD&9FD&9FD%532(/L"$B+;RA(@\4$@'T-`'0@,=N)V(/#`8M\A7SH`````$B) -MQ^@T_?__#[9%#3G8=^)(@\0(6UW#9F:09I!54TB#[`A(BV\H2(/%!(!]`0!T -M(#';B=B#PP&+?(5PZ`````!(B<?H]/S__P^V10$YV'?B2(/$"%M=PV9FD&:0 -M55-(@^P(2(MO*(!]#0!T(#';B=B#PP&+?(5\Z`````!(B<?HN/S__P^V10TY -MV'?B2(/$"%M=PV9FD&9FD&9FD%532(/L"$B+;RB`?0$`="`QVXG8@\,!BWR% -M<.@`````2(G'Z'C\__\/MD4!.=AWXDB#Q`A;7<-F9I!F9I!F9I!54TB#[`A( -MBV\H@'T!`'0@,=N)V(/#`8M\A6CH`````$B)Q^@X_/__#[9%`3G8=^)(@\0( -M6UW#9F:09F:09F:055-(@^P(2(MO*(M]`(7_=!TQVX/#`8G8BWR%`.@````` -M2(G'Z/?[__\Y70!WY4B#Q`A;7<-F9F:09F9FD&9FD%5(B?U(Q\8`````4TB# -M[`A(BW\HZ`>M__^%P'4Y2(M%$$B+6!A(@\`82#G#="AFD/9#\`%(C;MP_/__ -M=`F`NX#\__\!=!=(BT402(L;2(/`&$@YV'7:2(/$"%M=P^A^^___Z^)F9F:0 -M9F9FD&9F9I!!5T%6055!5%5(B?U32('LF````$R+;Q!,BW<H28M=&$V-91A, -M.>-T*DR-O"2`````]D/P`4B-NW#\__]T#8"[@/S__P$/A+8```!(BQM,.>-U -MWD$/MD8@B`4`````28M=$$B%VW41ZUYF9F:09F:02(L;2(7;=$](BT,(2(M[ -M$$B)YO]0./9$)!$0=.-)C9TX`0``3(GO2(G>Z`````!!QX4X`0```(>3`TG' -MA4@!````````2(G>38FM4`$``$R)[^@`````2(M]$$B-=5C'15``````2,=% -M6`````!(B6U@2,=%:`````#H`````$B!Q)@```!;74%<05U!7D%?P^@````` -MQH0D@`````A!#[9&($R)_HB$)(@```!(BX/8_/__2(N[\/S___^0P````.D5 -M____9F9FD&9FD&9FD$B#["A(B5PD"$B);"002(G]3(EL)"!,B60D&$F)]8MW -M-$B+/^@`````2(7`2(G##X1I`@``13'DQH"P`````T&!?1A"_P``2(EH4$$/ -ME,1%A>0/A;@```!)BU4H,<"`>@KT#Y3`A<`/A;@```!%A>0/A$H!```/MD(2 -M/`$/A`$"```\`@^$QP$```^V0@^(@YL````/MT((9HF#E`````^W0@IFB8.6 -M````#[="#&:)@Y@````/MD(.B(.:````#[="!&:)@Y`````/MT(&9HF#D@`` -M``^W0A!FB8.<````3(EK6$C'@\@`````````2(G?2(ML)!!(BUPD"$R+9"08 -M3(ML)"!(@\0HZ0````"028M5*#'`@'H/]`^4P(7`#X1(____2(M]`$B!QY`` -M``#H`````$B%P$B)Q0^$G@$``$6%Y`^%Y@```$F+=2A(@\802(GON@`"``#H -M`````("+L0````1(B:N@````28UU6,:#FP```/1FQX.<`````0!)BWT02(EK -M6$C'@\@`````````0<=%4`````!)QT58`````$V);6!)QT5H`````.@````` -MZ37___]F9I!F9I`/MD(,/`$/A)P````\`F:0=&L/MD(*B(.;````#[9"!F:) -M@Y0````/MD('9HF#E@````^V0@AFB8.8````#[9""8B#F@````^V0@1FB8.0 -M````#[9"!6:)@Y(````/MD(+9HF#G````.FS_O__9F:028MU*$B#QA3I%?__ -M_X"+L0````1(C4(02(F#H````.N!@(NQ````!$B-0A1(B8.@````Z2+^__^` -MB[$````"28M%,$B#P!!(B8.@````Z4____^`B[$````"28M%,$B#P!1(B8.@ -M````Z>S]__])BWT028UU6$''15#]____2<=%6`````!-B6U@2<=%:`````!( -MBUPD"$B+;"003(MD)!A,BVPD($B#Q"CI`````$F+?1!)C7580<=%4/____]) -MQT58`````$V);6!)QT5H`````.@`````2(G?2(ML)!!(BUPD"$R+9"083(ML -M)"!(@\0HZ0````!F9F:09F9FD%-(BT<H2(G[BSCH`````$B)WDB)QUOIM?S_ -M_V9FD&:04TB+1RA(B?N+..@`````2(G>2(G'6^F5_/__9F:09I!(@^PH2(E< -M)`A(B6PD$$R);"0@3(ED)!A)B?U,BV<H08L\).@`````BW`T2(LX2(G%Z``` -M``!(A<!(B<,/A,H```!,B6A82(EH4,:`L`````)!#[9$)`0\`0^$D0```#P" -M#X29````00^V5"0'2(V[F````$F-="0(Z`````!!#[9$)`>(@Y````!!BT0D -M&(F#E````$$/MD4@@^@(A,"(@Y$```!T#TF+13!(@\`(2(F#J````$C'@\`` -M````````2,>#R`````````!(B=](BVPD$$B+7"0(3(MD)!A,BVPD($B#Q"CI -M`````&9F9I"`B[$````"Z6O___]F9F:0@(NQ````!.E;____28M]$$F-=5A! -MQT50_?___TG'15@`````38EM8$G'16@`````2(M<)`A(BVPD$$R+9"083(ML -M)"!(@\0HZ0````!F9I!54TB)^TB#[%A(BT<H2(MO,$B)XHMP!(LXZ!*I__^% -MP'0OQT-0_____TB+>Q!(C7-82,=#6`````!(B5M@2,=#:`````#H`````$B# -MQ%A;7<-(BP0D2(E%`$B+1"0(2(E%".O%9F9FD&9F9I!F9F:0052`/0`````! -M28G\55/'1U``````2(MO*$B+7S`/A@X!``!(Q\8`````2(GOZ`ZF__^%P`^$ -MA@```$C'Q@````!(B>_H]Z7__X7`#X6_````2(M%`$B)`TB+10A(B4,(2(M% -M$$B)0Q!(BT48QD-$`,9#00#&0T`"2(E#&`^V146(0T4/M@4`````B$,@9F:0 -M2<=$)%@`````38ED)&!)C70D6$G'1"1H`````$F+?"006UU!7.D`````9F:0 -M9F:02(M%`$B)`TB+10A(B4,(2(M%$$B)0Q!(BT48QD-$`,9#00#&0T`!2(E# -M&`^V146(0T6+!0`````%D`$``(U0!X7`#TC"P?@#B$,@ZX-F9I!(Q\8````` -M2(GOZ"&E__^%P'1F0<=$)%#_____Z5____](Q\8`````2(GOZ`"E__^%P`^% -MV_[__TB+10!(B0-(BT4(2(E#"$B+11!(B4,02(M%&,9#1`#&0T$`QD-``DB) -M0Q@/MD5%B$-%#[8%`````(A#(.D'____2(M%`$B)`TB+10A(B4,(2(M%$$B) -M0Q!(BT48QD-$`,9#00#&0T`!2(E#&`^V146(0T4/M@4`````B$,@Z<;^__]F -M9I!F9I!!5TF)]T%6055!5%5(B?U32('L*`(``(A4)`</MD8/QD0D$`&$P'@/ -MQD0D$`"`?Q`L`@``2(U$)"!F9F:02(V4)"`"``#&``!(@\`!2#G0=>Q! -M#[9'"P^VE6`"``"(14A!#[9'#HA%14$/MD\.N`$```#3X&:)14:)T(/(!(B% -M8`(``$'V1P\##X2:`0``B=!(QX5H`@```````(/(!8B%8`(``$B+10B`>`L` -M#X66`0``28M'$`^V541)Q\;_____2(F%<`(``$F+1QB%TDB)A7@"``!^6$4Q -MY.L1#[951$&-1"0!28/$`3G"?D)*BUSE8$B+0RA(B6L823G&3`]'\(![$`1U -MU8!\)`<`2(M#.$B)1"0(=62`?"00`'5D#[951$&-1"0!28/$`3G"?[Z`?1`' -M#X0Z`0``2(M-"(!Y"0`/A?$````/MD$**<)(8\),#Z_P3(EU*$$/MD</@^`< -MP?@"B(6!`P``2('$*`(``%M=05Q!74%>05_#@'PD$`!T<4B+0TA(BWPD"$B- -M3"0@0;@!````N@$```!(BW`(Z`````"%P`^%,/___X"\)!X"``"J#X0.`0`` -M,<"`?"0@4@^$YP```(7`#X0-____2(M#2$B+?"0(2(U,)"!%,<"Z`0```$B+ -M<`CH`````.GI_O__13'M2(M#2$R)[DB+?"0(2(U,)"!%,<"Z`0```$F#Q0%( -M`W`(Z`````!)@_T"#X2V_O__Z\Y(QX5H`@``_____^EZ_O__#[=%1O?82)A) -M(<;I__[__X/*!X!]$`J(E6`"```/A5?^__\/MDU$N`$```"#Z0%(T^!(B450 -MZ3_^__^`?40`#X3;_O__,<E(BT3-8(U1`4B#P0%(BT`H2`%%*`^V140YT'_D -MZ;C^___1Z(/@`8A$)!#IAOW__X!\)"%%#X4.____QD0D($7&1"0A4ND'____ -M@+PD'P(``%4/A>3^__^P`<:$)!X"``!5QH0D'P(``*KIS_[__T%5,?9!5$F) -M_%532('LB````$B+1RA(BV\PBSCHKZ'__TB%P$B)PP^$4@$``#'`D,8$*`!( -M@\`!2(/X6'7R28GE2(G@2(V4)(````#&``!(@\`!2#G0=>Q(BT,(2(M[$$B) -MYO]0.`^V1"0628U5/$B-302(10,/MD0D%(A%``^V1"05B$4!2(M$)#Q(B44$ -M2(M""$B)00A(BT(02(E!$$B+0AA(B4$8BT(@28U5&(E!($B+1"082(U-*$B) -M12A(BT((2(E!"$B+0A!(B4$02(M"&$B)01B+0B")02`/M@0DB$50#[9$)`&( -M15$/MD0D`HA%4@^V1"0#B$532(M#&(E%3(![:`!U<0^V1"07B$4"2(L;2(7; -M=1CK*V9FD&9FD`^V1"07`$4"2(L;2(7;=!5(BT,(2(M[$$B)YO]0.(!\)!,` -M=-M)BWPD$$F-="182<=$)%@`````38ED)&!)QT0D:`````#H`````$B!Q(@` -M``!;74%<05W#@$T#!.N)0<=$)%#_____Z[MF9I!F9I!!54F)_3'V05154TB! -M[(@```!(BT<H2(MO,(LXZ!^@__](A<!(B<,/A!<!```QP)#&!"@`2(/``4B# -M^$QU\DF)Y$B)X$B-E"2`````Q@``2(/``4@YT'7L2(M#"$B+>Q!(B>;_4#@/ -MMD0D%DF-5"0\2(U-!(A%`P^V1"04B$4`#[9$)!6(10%)BT0D/$B)101(BT(( -M2(E!"$B+0A!(B4$02(M"&$B)01B+0B!)C50D&(E!($F+1"082(U-*$B)12A( -MBT((2(E!"$B+0A!(B4$02(M"&$B)01B+0B")02`/MD0D%XA%`DB+&TB%VW42 -MZR4/MD0D%P!%`DB+&TB%VW052(M#"$B+>Q!(B>;_4#B`?"03`'3;28M]$$F- -M=5A)QT58`````$V);6!)QT5H`````.@`````2('$B````%M=05Q!7<-!QT50 -M_____^O'9I!(@^P83(ED)`A(B1PD28G\3(EL)!!(BU\(2(M7$(M#,$R+*XE" -M,("C80(``//'0S#_____@*)A`@``\XMR,$F+?0CH`````(MS-$R)[^@````` -M2(E84,:`L`````1(B<=,B6!82,>`R`````````!(BQPD3(MD)`A,BVPD$$B# -MQ!CI`````&9F9I!F9I!F9I!32(M'*$B)^XLXZ`````!(B<?H`````$C'0U@` -M````2(E;8$B-<UA(QT-H`````$B+>Q!;Z0````!F9F:09F:04TB+?PA(BQ_H -M`````$B+@^`!``!(QT!8`````$B)0&!(C7!82,=`:`````!(BW@06^D````` -M9F9FD&9FD&9FD%.#?U#]2(M?0`^$]0```/:#80(```C&@WL#````=&F+1U"# -M^/T/A-L!``"%P`^%X`$``$B+@X`"``!(BY"@````#[>`J````('B__\/`$@Y -MP@^#B0```$C'@^@"````````2(F;\`(``$C'@^`"````````2(L#2(VSX`(` -M`%M(BW@(Z0`````/MHM@`@``]L$0#X2(````BT=0@_C]#X1"`0``A<`/A4,! -M``!(BU,(#[9#1`^V4@HIT$B82`^O@V@"``!(.T,H#X/1`0``]H-A`@``"`^% -M6/___V9FD&:0]H-@`@``4`^%B0```$C'@^@"````````2(F;\`(``.EP____ -M#[:#>P,``#P"#X_\_O__@\`!B(-[`P``Z\]FD/;!('5L]L%`#X2V````]L$! -M#X2/`0``1(M'4$6%P&:0#X5"`0``2(M3"`^V0T0/ME(**=!(F$@/KX-H`@`` -M2#M#*`^">/___TB)W[X)````6^GJP___2(N#:`(``"7__S\`2(/X?P^'8?__ -M_^G&_O__1(M/4+@+````187)=2F$R;`*>"-(BU,(#[9#1`^V4@HIT$B82`^O -M@V@"``!(.T,H<G>X#````(/A7TB)WHG'B(M@`@``Z`````#V@V`"```(=6]; -MPX`]``````!U<H/A[TB)WK\(````B(M@`@``6^D`````@#T```````^%F@`` -M`$B+@X`"``"`HV$"``#W2(G>OQ0```!(BT`0@*!A`@``]UOI`````$B+@R@# -M``"`.``/A);^__^#X=^(BV`"``!(B=^^`0```%OI_\+__\='4`````!(B=Z_ -M'````.@`````#[>#=`,``$@!@V@"``#I)/[__X/AOTB)WK\/````B(M@`@`` -M6^D`````2(G?O@,```!;Z;/"___'1U``````2(G>OQP```#H`````.D(_O__ -M@^&_2(G>OPX```"(BV`"``!;Z0````!F9I!(C89H`P``]H9A`@``"$B)O@@# -M``#'AA@#````````2,>&,`,```````!(B88@`P``2(V&>@,``$B)MC@#``!( -MQX9``P```````$B)AB@#``"+AN@#``")AF@#``!T-\>&$`,``"K_``#'AA0# -M```$````BX;<`@``,=*#P`&#^&4/3-")EMP"``!(@<;X`@``Z0`````/MHY@ -M`@``]L%P#X2J````B<B#X*`\H`^$GP```$R+1@@/MD9$00^V4`HIT$B82`^O -MAF@"``!(.T8H#X-\````]L$0N"/_``!U#X/A((#Y`1G`]]`%)?\``(F&$`,` -M`$B+EB`#``!(BX9H`@``2(E"!$&`>`D`=%H/MT9&2(N6(`,``&:)0@SVAF`" -M```@QX84`P``#@````^$/____TB+AB@#``#&``#'AA@#```!````Z2;___]F -M9I#SPTB-OO@"``#'AD@#````````Z;C[__](BU8H2"N6:`(``+F`````2(N& -M(`,``$B!^H````!(#T?19HE0#.N-2(M'0$C'@.@"````````2(F`\`(``$B- -ML.`"``!(BP!(BW@(Z0````!F9F:09F:02(/L&$B);"002(E<)`A(B?U(BU\8 -M2(7;2`]$WP^V@V$"``"H!'1^J`@/A9,```!(BY.``@``2(72#X2#````2(M" -M"$B%P`^$=@```$B#>A``=&^`B&$"```(2(VSX`(``$B+0A"`B&$"```(2(L# -M2,>#Z`(```````!(B9OP`@``2(MX".@`````2(G>2(ML)!!(BUPD"+\2```` -M2(/$&.D`````#[:78`(``/;"$'412(7;=`2H"'4(]L)@9F:0=`](BUPD"$B+ -M;"002(/$&,-(BT4`@^+W2,>%Z`(```````"#RA!(B:WP`@``2(VUX`(``(B5 -M8`(``$B+>`CH`````$B)[DB+7"0(2(ML)!"_!````$B#Q!CI`````&:0055! -M5$F)_%532(/L"$B+1RB+6`2+..@`````@_L.2(G%=CU!QT0D4/[___])QT0D -M6`````!-B60D8$F-="182<=$)&@`````28M\)!!(@\0(6UU!7$%=Z0````!F -M9F:0B=C_),4`````9F9FD&9FD$B)Q4B+11A(A<!U](!]$`4/A.X%``"`I6`" -M``"_2(GNOPX```#H`````$2+53!%A=(/B$X&``!(BTT8N@$```#IV`,``$B+ -M11A(A<!T#?:`80(```P/A5C___]F]X5@`@``<`P/A4G____VA8`#```!#X0\ -M____@'T0!0^%&@8``(!]1``/A&,&``!%,>UFD.L4#[9%1$&-50%)@\4!.=`/ -MCD@&``!*BUSM8$B%VW3B@'L0!';<]H-@`@``$'732(M[6.@`````2(M3"`^V -M4@HYT`^-V_[__P^V@V`"``!(QX/H`@```````$B-L^`"``!(B9OP`@``@^#W -M@\@0B(-@`@``2(L#2(MX".@`````2(G>OP0```#H`````.EP____@'T0!0^$ -MB00``("E8`(``.=(B>Z_!0```.@`````2(M-&+H!````Z<\"``#VA6`"```0 -M#X18_O__]H6``P```0^$2_[__X"E8`(``.5(BT582(GN2,>%:`(``/____^_ -M!@```$B)15#H`````$B+31B`I6`"``#^2(7)=%2`>40`=$XQ]DB+1/%@2(7` -M="_V@(`#```!=":`>!`$=B`/MI!@`@``#[:!8`(``(/B`8/@_@G0J`&(@6`" -M``!U#P^V042-5@%(@\8!.=!_N$B+31A(@WU8`1G2@\("Z1L"``!(BT482(7` -M=`WV@&$"```,#X6;_?__9O>%8`(``'`,#X6,_?__]H6``P```0^$?_W__X!] -M$`4/A=@$``"`?40`#X1T_?__13'M9F:09I#K%`^V141!C54!28/%`3G"#XU6 -M_?__2HM<[6!(A=MTXHA`@``[TB-M>`"``"`H&$"``#O@(IA`@``"("(80(```A(BT4`2,>%Z`(` -M``````!(B:WP`@``2(MX".@`````2(GNOQ(```#H`````.F\^O__#[>%8`(` -M`$B+C8`"``!F)7`(9CT`"`^%E_K__TB%R0^$COK__TB+00A(BU$02(GNOQ,` -M``"`H&$"``#W@*)A`@``]^@`````2(M-&+H!````Z<?^__](BTT8N@,````Q -MP(3`#X7'_O__@(U@`@``!(/Z`@^$[P```$B+A8`"``!(A<`/A.P```!(BW@( -M2(M8$$B%_W0%Z`````!(A=L/A!CZ__](B=_H`````&9F9I#I!_K__S';@'U$ -M`'4;9F:0Z7+Z__\/MD5$C5,!2(/#`3G0#XY?^O__2(MTW6!(A?9TXX!^$`1V -MW?:&8`(``!!TU("F8`(``.>_!0```.@`````Z\&`?40`#X0<^O__,=OK$P^V -M142-4P%(@\,!.=`/C@7Z__](BW3=8$B%]G3C@'X0!';=]H9@`@``0'34@*9@ -M`@``O[\.````Z`````#KP4B)ZX"C8`(``/Y(B=_H`````.FI_?__2(GOZ``` -M``#I1_G__TB)[^@`````9F:0Z3?Y__](B>_H`````$B+31BZ`0```.F"_?__ -M2(M]6.@`````2(M5"`^V4@HYT`^-__C__TB+10"`C6`"```02(VUX`(``$C' -MA>@"````````2(FM\`(``$B+>`CH`````$B)[K\$````Z`````"`I6`"``#W -M2(-]6``/A#?Y___H`````$B+31BZ`0```(E%/.D'_?__2(M]4$@+?5CH```` -M`$B+50@/ME(*.=`/C8#X__](BT4`@(U@`@``($B-M>`"``!(QX5H`@`````` -M`$C'A>@"````````2(FM\`(``$B+>`CH`````$B)[K\)````Z`````#I/_C_ -M_TB+10"`C6`"``!`2(VUX`(``$C'A6@"````````2,>%Z`(```````!(B:WP -M`@``2(MX".@`````2(GNOPT```#H`````.FU^___#[:#8`(``$C'@V@"```` -M````2(VSX`(``$C'@^@"````````2(F;\`(``(/(0(/@]XB#8`(``$B+`TB+ -M>`CH`````$B)WK\-````Z`````#I4/O__V9F9I!52(G]4TB#[`CVAX`#```! -M=2,/MH=A`@``@^`$/`$9VX'C`/C__X'#`0@``(G82(/$"%M=PP^VEV`"``#V -MP@(/A#,!``!(BW]8NP(```")V(#,$/;"`0]%V(G8@\@$]L(0#T78B=B`S`'V -MPB`/1=B)V(#,`H/B0`]%V$B%_P^%(@(```^VE8`#``")V$0/ME5$@\@0]L($ -M10^VR@]%V(G8@\A`@^("#[:580(```]%V(G8#(#VA6`"```(#T78B=B`S`CV -MP@0/1=B)V(#,!(/B"`]%V$6%R0^.M@```$&-0?\Q]DR-0`'K8$B+>EA(B?A( -M]]!(A4)0=`.#RP*)V(#,$/;!`0]%V(G8@\@$]L$0#T78B=B`S`'VP2`/1=B) -MV(#,`O;!0`]%V(G8@\@(2(7_#T78B=@,@(/A"`]%V&9FD$B#Q@%,.<9T2DB+ -M5/5@2(72=.WV@H`#```!=.2`>A`$=MX/MHI@`@``]L$"#X1W____2(MZ6.N! -M2(M_6#';2(GX2/?02(5%4`^$P/[__^FV_O__]L,"=!'VQQ!F9I!FD`^$Z@`` -M`(/C_46%R0^.$@$``$B+56!(A=(/A&W^___V@H`#```!#X1@_O__,?^`>A`$ -M00^VPD2-0/\/AIX````/MG)$A?9^:$B+0F!(A<`/A#?^___V@(`#```!#X0J -M_O__2(M`2$B#>`@`#X4;_O__,<GK+4B+0FA(A<`/A`K^___V@(`#```!#X3] -M_?__2(M`2$B#P@A(@W@(``^%ZOW__X/!`3G.=<QF9F:09F:03#G'=&](BU3] -M:$B%T@^$R?W__TB#QP'V@H`#```!#X2X_?__@'H0!`^'8O___TB+0DA(@W@( -M`'3'Z9[]__]FD(G8)0@@``"#^`@/A0G____I`?___^@`````2(M5"(/+"(G9 -M@,T@#[92"CG0#TS9Z;_]__^!RP```$#I7?W__Y!!5D%5051)B?Q54TB+1RA( -MBU\01(LH1(GOZ`````!(BVL82(/#&$F)QD@YW74+ZTY(BVT`2#G==$5(@[V( -M_/__`$B-O7#\__]UYD6%[74&]D7P`G5723G^=&;VAX`#```"=,V`IX`#``#] -M@'\0`71&Z`````!(BVT`2#G==;M)QT0D6`````!-B60D8$F-="182<=$)&@` -M````28M\)!!;74%<05U!7ND`````@&7P_8!_$`%UNN@`````Z7#____VAX`# -M```"#X5C____@(^``P```NN49F9FD&9FD&9FD$B#[&A(B5PD2$B);"102(G[ -M3(ED)%A,B6PD8$B+;RB+?0"%_W5*2(M[$.BQF/__QT-0_/___TB+>Q!(C7-8 -M2,=#6`````!(B5M@2,=#:`````#H`````$B+7"1(2(ML)%!,BV0D6$R+;"1@ -M2(/$:,/H`````$F)Q(M%!$R-;02H`75MJ`(/A;T```"H!`^%'0$``*@(#X5\ -M`0``J!!F9I`/A=H!``"H0`^%,P(``*@@#X5O`@``0?9$)&009F9FD`^$</__ -M_TF+1"1H28N\)(````!(B>;_4'@/MD0D#DR)YT&(1"1BZ`````#I1O___\9$ -M)#``00^V101(C70D,(A$)#A)BT0D:$F+O"2`````_Y#`````A<")0U!U($$/ -MMD0D9(/(@$&(1"1D00^V502#R!!!B$0D9$&(5"1CBT4$J`(/A$/____&1"0P -M!$$/MD4%2(UT)##&1"0Y`(A$)#A)BT0D:$F+O"2`````_Y#`````A<")0U!U -M*4$/ME0D98/*$$&(5"1E08!]!0`/E<!!@$PD9!"#XM_!X`4)PD&(5"1E08M% -M`*@$#X3D_O__D,9$)#`%00^V109(C70D,,9$)#D`B$0D.$F+1"1H28N\)(`` -M``#_D,````"%P(E#4'4I00^V5"1E@\I`08A4)&5!@'T&``^5P$&`3"1D$(/B -M?\'@!PG"08A4)&5!BT4`J`@/A(3^___&1"0P`T$/MD4'2(UT)#"(1"0X28M$ -M)&A)B[PD@````/^0P````(7`B4-0=2E!#[94)&6#R@1!B%0D94&`?0<`#Y7` -M08!,)&00@^+WP>`#"<)!B%0D94&+10"H$`^$+?[__V9F9I!F9I#&1"0P`D$/ -MMD4(2(UT)#"(1"0X28M$)&A)B[PD@````/^0P````(7`B4-0=2A!#[94)&6# -MR@%!B%0D94&`?0@`#Y7`08!,)&00@^+]`<`)PD&(5"1E08M%`*A`#X3-_?__ -M00^V=0HQP$C'QP````#H`````,=#4`````!!@'T*`$$/MD0D9@^5PD&`3"1D -M$(/@_@G008A$)&9!BT4`J"`/A)']___&1"0P!T$/MD4)2(UT)#"(1"0X28M$ -M)&A)B[PD@````/^0P````(E#4$'V1"1D$`^$W/S__^EG_?__D$B#[#A(B5PD -M&$B);"0@2(G[3(ED)"A,B6PD,$B+;RB+?0"%_W5*2(M[$.A1E?__QT-0_/__ -M_TB+>Q!(C7-82,=#6`````!(B5M@2,=#:`````#H`````$B+7"082(ML)"!, -MBV0D*$R+;"0P2(/$.,/H`````/9%!`%,C6T$28G$=1)!]D0D9!!TK$R)Y^@` -M````ZZ+&!"0`00^V101(B>:(1"0(28M$)&A)B[PD@````/^0P````(7`B4-0 -M=<1!#[9$)&2#R(!!B$0D9$$/ME4$@\@008A$)&1!B%0D8^NB4TB+1RA(B?N+ -M..@`````#[9(9(%[&`S_``!(B<:)R$`/E,?`Z`)`#[;7@^`!.=!T&HT$O0`` -M``"#X?M(B?<)P8/)$(A.9.@`````2,=#6`````!(B5M@2(US6$C'0V@````` -M2(M[$%OI`````&9FD$%7059!B=9!54%428G\55-(@>P8`@``0(AT)`^`?T0` -M#X29````18U^_T`/ML9%,>V)1"0(ZUA!@_\!#X:?````@'M0`$B+:SAU!X!\ -M)`\`=`WVA8`#```!#X6<````2(G?Z`````#V1600=!/VA8`#```!#X7F```` -M9F:09F:008U%`4F#Q0%!.$0D1'8P2XM<[&!(A=MTYP^V0Q`\!':6BW0D"$2) -M\DB)W^A0____08U%`4F#Q0%!.$0D1'?03(GGZ`````!(@<08`@``6UU!7$%= -M05Y!7\-F9F:09F:0/`1(B=T/A*````!!@_X"=8](B>_H`````.N%2(M#2$B- -M3"000;@!````N@$```!(B>](BW`(Z`````"%P`^%//___X"\)`X"``!5=$`Q -MP(!\)!!%=&:%P`^$(?___TB+0TA(C4PD$$4QP+H!````2(GO2(MP".@````` -MZ?_^__](B>_H`````.D3____@+PD#P(``*IUMK`!QH0D#@(``*K&A"0/`@`` -M5>ND2(MK.$B)W^@`````Z4____^`?"014G63QD0D$%+&1"011>N/D$B#["A( -MB5PD"$B);"002(G[3(ED)!A,B6PD($B+1RA,BV\0BSA$BV`$Z`````!(BZB` -M`@``2(G'2(7M#X2/````2(M%"$B%P'1FBY"$`P``A=)T3$B+0S#'`/_____' -M0U#_____2(M[$$B-<UA(QT-8`````$B)6V!(QT-H`````$B+7"0(2(ML)!!, -MBV0D&$R+;"0@2(/$*.D`````9I!(@[C@`P```'6J9F:09F:02(M%$$B%P'07 -M1(N8A`,``$6%VW6/2(.XX`,```!UA9#VAV`"``!P#X5W____#[9'1(7`?C&# -MZ`$QR4B#P`%FD$B+5,]@2(72=!.`>A`$=@WV@F`"``!P#X5'____2(/!`4@Y -MP77:08/D`T$/E,1(A>UT54B+?0A(A?]T"T$/MO0QTN@9_?__2(M]$$B%_W0+ -M00^V]#'2Z`7]__](BT482(M5($F-O=````!(B>Y(B5`(2(D"Z`````!(BT,P -MQP``````Z>W^__]!#[;T,=+HS?S__^OD9F9FD&9F9I!F9I!!5T%6055!5%5( -MB=532('LB````$B)?"082(ET)!#H`````(E$)"P/ME4.3(MU=(G0P.@$A,!! -MB<5U$40/MFT*N`$```!%A.U$#T3H#[9-#8/B#XA5#H#Y0'<+@/D!=QV`?0P' -M=!>X_____TB!Q(@```!;74%<05U!7D%?PX3)=#$QV^L;]H"``P```738#[9- -M#8U3`4B#PP$/ML$YT'X2BWR=?.@`````@'@0`736D.NT@'T,"'>N#[9%#&9F -M9I#_),4`````QD0D,`S&1"1``$&_#````$2)_^@`````2(7`2(E$)%@/A'G_ -M__]!@/T!2,=$)&``````=BX/MD4-,=)!#[;-9O?Q9H72#X54____#[9\)$#H -M`````$B%P$B)1"1@#X0\____387V#X7$`@``@'PD,`</A"L$```QVX!]#0!) -MQ\;_____#X1>"0``BWR=?.@`````2(M`0(U3`4DYQDP/1_`/MD4-2(/#`3G0 -M?]U(BU0D6`^V2@F$R7432(-\)&``=&Q(BT0D8(!X"0!T80^V30ZX_____TB+ -M5"18T^!(F$DAQDR)=72`>@D`=!H/MD4-#[92"D'V]0^VP"G02)A)#Z_&2(E% -M=$B#?"1@`'0@2(M,)&"`>0D`=!4/ME$*00^VQ2G02)A(#Z]%=$B)171(@WPD -M$`!T=4B+7"00@'L0!`^&6O[__TB+`TB+5"082#G02(E$)"`/A43^___V@X`# -M```!#X0W_O__2(.[@`(````/A2G^__]F]X-@`@``4`(/A1K^__](BTUT2#E+ -M*`^'#/[__X!E#_R`>Q`'#X3]`0``@'T,!P^$#`(``,=$)&P`````2(M\)!A$ -MB?[H`````$B%P$F)QP^$T_W__X!\)#`'#X0&`P``#[9-#3';A,EU'NG>`0`` -M9F:0#[9-#8U3`4B#PP$/ML$YT`^.Q0$``(M\G7R)7"1HZ`````"+3"1L,=)) -MB<2%R7482(-\)!``=!!(BWPD$$B)QNC+A___2(G"3(GV3(GGZ`````!(A<!) -MB43?8'6CBW0D:(7V?AM,B?LQ[4B+>V"#Q0%(@\,(Z``````[;"1H=>I,B?_H -M`````+C_____Z2G]__]!OP<```#&1"0P!\9$)$``Z8#]__^`?0X'#X4%_?__ -M0;\*````QD0D,`K&1"1``.EA_?__0;\)````QD0D,`G&1"1``.E,_?__0;\( -M````QD0D,`C&1"1``.DW_?__@/D#N`(````9V_?3@\,&@/D#1`]#Z!G`B%PD -M,/?0@^`&@/D#11G_B$0D0$'WUT&#QP;I`/W__T&`_0-!OP4```#&1"0P!1G2 -M@^+^@\((B%0D0.G@_/__2(M<)%@/MDL)A,ET(0^V10T/ME,*0?;U#[;`*=!( -M8]!,B?!(B=,QTDCW\TF)QDB#?"1@``^$3/W__TB+1"1@@'@)``^$/?W__TB+ -M7"1@00^VQ0^V4PHIT$ACT$R)\$B)TS'22/?S28G&Z1C]__^`?0P'#X1.!@`` -M2(M<)!"`>T0!#X3T_?__QT0D;`$```#I[_W__T&(3T2+3"0L08#]`4&)3SA! -MB4]`#X;O!0``10^V]0^V7"1`1(AL)'M!C4;_1(AT)'I%,>1(@\`!B5PD?$B) -M1"0(BW0D?$B+?"08Z`````!(A<!(B<,/A"\%```QTD6%]GX>9F:008T$%$B8 -M28M$QV!(B4338$B#P@%(.U0D"'7E08M'.$2(:T1(B>Y(B=^)0S@QP$B#?"00 -M``^4P(G"B40D*.C^V?__1(GB1(G@10'TP?H?0??^2)A)B5S'8$$/MD=$#[94 -M)'L"5"1Z.D0D>P^&VP```(A4)'OI8____S';@'T-`'4<Z?[[__](`45T#[9% -M#8U3`4B#PP$YT`^..P(``(M\G7SH`````$B+0$!(A<!UU^G"^O__3(ME=`^V -M50U-A>0/E<"%TGX'13'VA,!U),=$)&@`````A,!T"CE4)&@/A#K]__\/ME0D -M:$&(5T3IKO[__T*+?+5\1(ET)&CH`````$B)QTB+0$!).<1(B<-)#T;<,=)( -MB=[H`````$B%P$N)1/=@#X3T_/__08U&`4DIW(E$)&@/ME4-#Y7`28/&`3M4 -M)&A^D(3`=)KKI@^VP$'V]3P_08A'1'<F#[;`,<F-4`&)QHT$#H/"`4B#P0%( -MF$G'1,=@`````(U"_SP_=N2+5"0H2(GN3(G_Z++8__]!#[971(72?C4Q]DB+ -M7"1828M,]V`/MD,**<))BT<H2&/22(G3,=)(]_-!#[971$B)02B-1@%(@\8! -M.<)_S4B#?"00``^$)P4``$B+5"003(G^BT)`2(G708E'0.@`````A,`/A>\` -M``!(BTPD$$$/MH>``P``28M?*`^VD8`#``"#X/N#X@0)T$&(AX`#```/MI&` -M`P``@^#]@^(""=!!B(>``P``#[9!2$@Y62A!B$=(=SU)BT<(@'@*`'4.28M' -M8$B+0`B`>`H`="5(BWPD$.@,[?__08G$08'D`A```'5\2(M$)!!)BU<H2#E0 -M*')M2(M,)!"`N8$#```"#X0`!0``2(M<)!!(BU0D&(M#,$B)T4B#P3A!B4<P -M2(M".$@YR'41Z4D"``!(BP!(.<@/A#T"``!(C5#H2(M<)!!(.5I0=>5,B7I0 -MZ]](BT0D6`^V2`GII_G__T&\`0```$B+?"082(''T````.@`````2(G#,<#& -M!!@`2(/``4@]L````'7PZ`````!(BU0D$(D#2(G?3(E[$$B)4PCH`````$F+ -M1PB`>`H`#X5,`@``28M'8$B+0`B`>`H`#X4Z`@``QH.J`````X![*``/A+\# -M``"`NZH````##X1:!```28M'*("[J@````)(B8.@````#X2S`P``2(M,)!"` -MN8$#```"#X2A`P``2(M$)!"`B&$"```$28F?@`(``$&`CV$"```$08"G8`(` -M`/U(B9B``@``2(M4)!A(BT0D&$B+2C!(C5,82(M\)!!(B5`P2(/`*$B)0QA( -MB4L@2(D1Z`````!,B?_H``````^V10^H`0^%@````*@"='!!@/T!#X9!`P`` -M2(M,)&"`>0H`#X0R`P``08!_1`!T4#'M28M<[V!(BP.`BV`"```02(VSX`(` -M`$C'@^@"````````2(F;\`(``$B+>`CH`````$B)WK\$````Z`````!!#[9' -M1(U5`4B#Q0$YT'^R08N'Z`,``.GX]O__08#]`0^&,P(``$B+5"1@@'H*``^$ -M)`(``$&`?T0`=%`Q[4F+7.]@2(L#@(M@`@``0$B-L^`"``!(QX/H`@`````` -M`$B)F_`"``!(BW@(Z`````!(B=Z_#0```.@`````00^V1T2-50%(@\4!.=!_ -MLD&`IV`"``"_Z7?___](BWPD$#'V,=+HPO+__TB+1"0808MW,$B+>`CH```` -M`.G*_O__1(GB1(G@,>W!^A],B?M!]_Z%P$&)Q7X<2(M[8#'VN@$```"#Q0%( -M@\,(Z'SR__]$.>UUY$$/MD=$03G$#XW9^/__1(GC2&/#@\,!28M\QV#H```` -M`$$/MD=$.=A_Y^FX^/__187DN`(```!T!X![*``/E<"(@ZH```#IL?W__S'2 -M2(-\)!``2(GN3(G_#Y3"Z(;4___I#?S__TB+7"18#[9+">G`]O__2(M<)!"` -M>T0`#X2C^?__@'T-``^$F?G__TB+0V!%,>1(A<!U/NE_]?__2(M,)!!!C50D -M`0^V040YT`^.LP$```^V10TYT`^.D0$``$B+5"002HM$XFA)@\0!2(7`#X1& -M]?__2(M8.$*+?*5\Z`````!(.<-UM$B+5"00#[9"1#I%#0^'(?7__P^VT(72 -M#XYU`0``2(M,)!!%,>1(BT%@2(7`=3+I`/7__TB+1"00#[901$&-1"0!.<(/ -MCDD!``!(BUPD$$J+1.-H28/$`4B%P`^$T_3__TB+6#A"BWRE?.@`````2#G# -M=,#IN_3__V9FD&:028L'08"/8`(``$!)C;?@`@``2<>'Z`(```````!-B;_P -M`@``2(MX".@`````3(G^OPT```#H`````.EX_?__3(G_Z`````#V10\!#X5R -M_?__3(G_Z`````#IV?S__S'`187D#X5'_/__2(M4)!!(BT(HZ3G\__](BWPD -M$$C'P@````!(B=[HY:'__S'`Z2GT__])BP=!@(]@`@``$$F-M^`"``!)QX?H -M`@```````$V)O_`"``!(BW@(Z`````!,B?Z_!````.@`````Z>;\__](Q\(` -M````3(G^2(G/Z(VA__\QP.G1\___2(M<)!`/MD,0/`</A,3W___ISO?__P^V -M01#K[4B+3"002(M!*)#IF_O__TB+171(BTPD$$F)Q4PK:2AT?4ACPDB+?,%8 -M3(M_.$F+=SA(A?9U$>D$`0``2(LV2(7V#X3X````2(-^&`!U[4B+5TA(BTH0 -M2(G(2`-""$@Y1@AUV$B+1A!(BU\H23G%2(E<)'`/@Y0```!*C00I2(E"$$B) -M1RA,B?],`6X(3"EN$$&`3V00Z`````!(BT5T2(M4)!!(B4(H2(M%$$B)UTB) -M@G`"``!(BT482(F">`(``.@`````2(M,)!!(BP&+<3!(BW@(Z``````/MD4/ -M2(M<)!"#X!S!^`*`NX$#```"B<(/A&L!``!(BTPD$(N!Z`,``(B1@0,``.FH -M\O__22G%2(T$`4B)0A!(B4<H3(G_Z`````!!@$]D$$R)_^@`````387M=1)( -MBT5TZ5____](QT0D<`````!(BT0D$`^V50U-A>U$#[9P1`^5P$$YUGPWA,!T -M!4$YUG1H2(M<)!!$B'-$2(M%=.DB____2(M,)!!!@\8!32GE2(E(&`^V50T/ -ME<!$.?)^R83`=,Y)8]Z+?)U\Z`````!(B<=(BT!`23G%28G$30]&Y3'23(GF -MZ`````!(BU0D$$B%P$B)1-I@=:I(@WPD<`!T.TB+3"00#[9!1$B+?,%8Z``` -M``!(BT0D$$B+="1P,=),B?\/MEA$Z`````!(BU0D$(/K`4ACVTB)1-I@2(M, -M)!`/MD%$1#GP#XV)\?__,>U!B<1(BT0D$$&-'"Q(@\4!2&/;2(M\V&#H```` -M`$B+5"0008T$+$0Y\$C'1-I@`````'S/Z4[Q__\\`@^$C?[__XB#@0,``$B+ -M1"0@2,?"`````$B)WTB+L.`!``#HWY[__S'`Z2/Q__]F9F:09F9FD%532(G[ -M2(/L"$B+;RB+?0#H`````$B+>Q!(C54$2(G&Z(OP__^%P(G"=#6#^/]T-TB+ -M0S!(QT-8`````$B-<UA(B5M@2,=#:`````!(BWL0B1!(@\0(6UWI`````&9F -MD$B#Q`A;7<.)0U#KQ&9F9I!52(G]4TB![*@```!(BW\02(MU*$B-1"0,28G@ -M2(GBD,8"`$B#P@%(.<)U]$''`'P!``!(BP9)C4A\28E`#$B+1@A(B4((2(M& -M$$B)0A!(BT882(E"&$B+1B!(B4(@2(M&*$B)0BA(BT8P2(E",$B+1CA(B4(X -M2(M&0$B)0D!(BT9(2(E"2$B+1E!(B4)02(M&6$B)0EA(BT9@2(E"8$G'0'0` -M````2(U6:$B+1F@Q]DF)0'Q(BT((2(E!"$B+0A!(B4$02(M"&$R)PDB)01A( -MBUTPZ&CO__^#^/^)`W4#B4502(M]$$B-=5A(QT58`````$B);6!(QT5H```` -M`.@`````2('$J````%M=PV9FD%5(B?TQ]E-(@^P(2(M?,$B+5RA(BW\0Z!3O -M__^#^/^)`W4#B4502,=%6`````!(B6U@2(UU6$C'16@`````2(M]$$B#Q`A; -M7>D`````9F:0055!5%532(/L"$R+)TB+7U!,BV]828NL).`!``#H`````(M# -M,$F-3"0X08E%,$F+1"0X2#G(=1#K)&9FD&9FD$B+`$@YR'062(U0Z$@Y6E!U -M[DB+`$R):E!(.<AUZC'22(G?,?;H-NO__T&+=3!)BWPD".@`````3(GOZ``` -M``!(BU4P08N%Z`,``$B-=5A(QT58`````$B);6!(QT5H`````$B+?1")`DB# -MQ`A;74%<05WI`````&9F9I!F9F:0056X_____T%428G\54B)]5-(@>S(```` -M@'\0`4B+7WAT#DB!Q,@```!;74%<05W#2(M':$R-K"2`````2(N_@````$R) -M[O]0>$B+0PA(B>9(BWL0_U`X2(V,)+0```!(C90DN````$B-M"2\````2(G? -MZ%ER__\/MH0DC0```(A%`O:$)(H````"#X5Z`0``#[:$)+@````"A"2,```` -MB$4!BX0DO````(A%`$&`?"1D``^)7P$``$$/MD0D8XA%`P^VA"23````B$4% -M#[:4)(@````/MD4&#[:T)(D```#`Z@:)T8/@_-#J@^$!`=()R`^VC"2)```` -M"="-%+4`````@^#S@^((@^$!P>$""<B)\0G0@^$0B?*#X,^#XB`)R(GQ"="# -MX4")\H/@/X/B@`G("="(108/MD4'#[:4)(\```"#X/R#X@,)T$#VQ@2(10</ -MA,\```#&100"3(GN3(GGZ)ET__](B[0DF````(E%"$B%]G0C2(U]#$B-74*Z -ME@```.@`````OB@```!(B=_H`````,9#)P!!]D0D9$%U&$F+1"1(2(F%H@`` -M`$F+1"1`2(F%J@```$F+3"0X2(7)=#8Q]NL(2(L)2(7)="I(BT$82(7`=!Q( -MBT`82(7`=!.+@.@#``!(8]:#Q@&)A)6Z````@_X'?LY(@<3(````,<!;74%< -M05W##[:$)+0```#I@?[__P^VA"22````B$4#Z9K^__^#Y@A`@/X!&<"#X/Z# -MP`.(103I'O___V:02(/L.$R)9"083(EL)"!)B?U(B5PD"$B);"003(ET)"A, -MB7PD,$B+1RA(BU\PBRB)[^@`````28G$BP.#Z`5T$XG"2(G8QD`%`$B#P`%( -M@^H!=?*%[71J387D=&5)BT0D*+K_____2(E#$$F+1"082(7`=`:+D.@#``") -M4QA!BU0D,+C_____A=(/2<*(0P])BP0D2(MX".@`````B$,.00^VA"2!`P`` -MB$,-00^V1"00/`1V5\9##`%!@'PD1$!V94''15#_____28M]$$F-=5A)QT58 -M`````$V);6!)QT5H`````$B+7"0(2(ML)!!,BV0D&$R+;"0@3(MT)"A,BWPD -M,$B#Q#CI`````"P!=;%(C7,LQD,,`DR)Y^B@_/__A<!UG>NC28M$)%!,B>=( -MB8.\````Z!9U__^)@[````!)BX0D<`(``$B)0RQ)BX0D>`(``$B)0S1!#[9\ -M)!#H_7'__XB#D````$$/MD0D14R)YXB#D0```$$/MD0D2(B#M````$F+A"1H -M`@``2(F#G````.BHWO__3(GGB8.4````Z`````#&@Y(`````B8.8````08!\ -M)$0`#X1*`0``13'V13'_2XML]&!(A>T/A/4```"`NY,`````#X3Y````@'T0 -M!`^$"`$``(N%Z`,``$*)A+/$````#[:3D@```$&#QP%)@\8!@\(!B).2```` -M00^V1"1$1#GX#X^1````#[;2@_H_?Q9(8\*#P@&#^C_'A(/$````_____W[J -M28N$)(`"``!(A<`/A'O^__](BU`(N?____](A=)T!HN*Z`,``(F+I````$B+ -M4!"Y_____TB%TG0&BXKH`P``B8NH````2(-X"``/A#S^__](@W@0``^$,?[_ -M_TR)Y^@`````B8.L````Z1[^__]F9I!FD$&#_S\/CV7___]+BVST8$B%[0^% -M"____T+'A+/$`````````.D?____#[9]$.A^</__B(.3````@'T0!`^%^/[_ -M_TB+13B+@.@#``!"B82SQ````.GO_O__,=+I%____TB![.@```"X_____TB) -MG"3(````3(FD)-@```!(B?-(B:PDT````$R)K"3@````28G\@'\0`4B+;WAT -M*$B+G"3(````2(NL)-````!,BZ0DV````$R+K"3@````2('$Z````,-(BT=H -M3(VL)(````!(B[^`````3(GN_U!X2(M%"$B)YDB+?1#_4#A(C8PDM````$B- -ME"2X````2(VT)+P```!(B>_HU6S__P^VA"2-````B$,"]H0DB@````(/A1(! -M```/MH0DN`````*$)(P```"(0P&+A"2\````B`-!@'PD9``/B0P!``!!#[9$ -M)&.(0P,/MI0DB`````^V0P8/MK0DB0```,#J!H/@_(G1T.J#X0$!T@G(#[:, -M)(D````)T(T4M0````"#X/.#X@B#X0'!X0()R(GQ"="#X1")\H/@SX/B(`G( -MB?$)T(/A0(GR@^`_@^*`"<@)T(A#!@^V0P</MI0DCP```(/@_(/B`PG00/;& -M!(A#!P^VA"23````B$,%=%S&0P0"3(GN3(GGZ!IO__](B[0DF````(E#"#'` -M2(7V#X20_O__2(U[#+J6````2(/#0N@`````OB@```!(B=_H`````#'`QD,G -M`.EF_O__#[:$)+0```#IZ?[__X/F"$"`_@$9P(/@_H/``XA#!.N4#[:$))(` -M``"(0P/I[?[__V9FD&9FD&9FD$%528G]05154TB#[`A,BV<H08L\)(7_=$@Q -M[>L19F:02(G?Z`````!!.2PD=C.#Q0&)Z$&+/(3H`````(!X$`%(B<-U1_9` -M9`)TU4B)Q^@`````2(G?Z`````!!.2PD=\U)QT58`````$V);6!)C7582<=% -M:`````!)BWT02(/$"%M=05Q!7>D`````0<=%4/[____KRV9F9I!F9I!F9I!( -M@^P82(GX2(E<)`A,B60D$$B)QDB+7Q!,BV<(2(L[2(''T````.@`````3(GG -M,=(Q]NBIXO__@(M@`@``!$B)WTR+9"002(M<)`A(@\08Z0````!F9F:09F9F -MD&9F9I!32(M'"$B)^4B+.`^W@9@```"+EU@"!`!(QX>(`@0``````$B-MV@" -M!`#!X`E(QX=P`@0``````$B)CW@"!`!(QX>``@0``````(U$`O^)TS'2]_.) -MAV@"!`!;Z0````!32(M'*(LXZ`````!(BYB``@``@'LH`'1.2(M["$R+BZ`` -M``!(BU<H23G1#X1O`0``23G1#X?V````#X3&`0``#[>+J`````^W\4PYS@^& -MC0$``$0/MH.J````1(G)00^W\4DI\>M#2(M["$R+BZ````!(BW<H23GQ#X3X -M````1`^V@ZH```!%A,`/A=`````/MXNH````B?)F1"G*#[?!28T$`4@YQ@]" -MRD6$P&;'@YH``````$R)BY````!FB8N8````=`]!@/@#=`E(B=];Z<O^__\/ -MMX.8````2(US2$C'0U@`````2`.#D````$R)2TA(QT-P`````$B)6WA(QX.` -M`````````,>#B`````$```!(B4-02(U#8$B)0V!(B4-HZ`````"%P'2?6\.0 -M#[>+J`````^W\4B-!#),.<@/@ID```!$#[:#J@```$2)R68IT0^W\>D%____ -M9F:008#X`P^$)O___TB+0Q!(BW`HZ1G___]$#[:#J@```$&`^`-T:$6$P'7@ -M0;@!````QH.J`````>O19F9FD&9FD$0/MH.J````08#X`G0_08#X`71"#[>+ -MJ````#'23(G(#[?Q2/?V9H72#X23_O__#[?RB='IB?[__V9F9I!F9I!$#[:# -MJ@```.EU_O__2(G?6^EJR/__QH.J`````$B+5RCI*_[__T0/MH.J````ZZ1( -M@^Q8#[?!3(ED)#A)B<1(B5PD*$B);"0P3(ET)$A)`=1,B6PD0$R)?"10B?U( -MB70D$&:)3"0.28G62(E$)!A,.V903(G#38MX$'9*0<=`4/[___](C7-82,=# -M6`````!(B5M@2,=#:`````!,B?](BUPD*$B+;"0P3(MD)#A,BVPD0$R+="1( -M3(M\)%!(@\18Z0````!(BU0D$$R)_XMR-.@`````2(7`28G%#X2C`0``QH"R -M`````&:#?"0.`4B)6%A(QX#(`````````$C'@,``````````#X2P`0``@?T9 -M_P``=#MW)8']"_\``)`/A-@```#'0U#^____3(GOZ`````!,BWL0Z4;___^! -M_2/_```/A+0```"!_23_``!UU$B+5"00]D)F`@^%-`$``$'&A;`````#0<:% -MFP```"1!#[:%L0```(/@^X/(`D&(A;$```!!@+VP`````P^$3@$``$$/MH60 -M````/!`/A-0!```\"@^$C0(``$B+1"0028E%4$F#?T@`#X3R`@``28M/0$F- -M51A)C4<X28E70$F)11A)B4T@2(D12(M<)"A(BVPD,$R+9"0X3(ML)$!,BW0D -M2$R+?"102(/$6,-F@WPD#@$/AQS___](BT0D$$B+:#A(A>UT'TB+10A).<9R -M#4@#11!).<0/AL,"``!(BVT`2(7M=>%(BT0D$/9`9@(/A)8"``!)P>P@0<:% -ML`````)-A>0/A+@#``!!QH68````BD'&A9`````000^VA;$```"#R`2#X/U! -MB(6Q````Z0'___],BWL0QT-0_?___^GO_?__2<'L($'&A;`````"387D#X2Y -M````0<:%F````(A!QH60````$.FR_O__2(M4)!!!N`$```!,B?&)[DC'QP`` -M```QP.@`````Z2W^__],B?%!#[;63(GS2,'I$$G![AA)QX6@`````````(G( -M9H'A_P!!QH6:````0##`9D''A9````````G01(GR2<'N"&9!B864````,-(/ -MML<)T&9!B866````1(GP,,`)P69!B8V8````#[=$)`YF08F%D@```&9!B86< -M````Z4G^__]!QH68````*$'&A9`````*Z?G]__]!QH61``````^W1"0.18BU -MH0```$'&A:(`````0<:%HP````#!X`E!B864````3(GP2,'H.$&(A9H```!, -MB?!(P>@P08B%FP```$R)\$C!Z"A!B(6<````3(GP2,'H($&(A9T```!,B?!( -MP>@808B%G@```$R)\$C!Z!!!B(6?````3(GP2,'H"$&(A:`````/MT0D#F;! -MZ`A!B(6D````#[94)`Y!QH6F`````$'&A:<`````08B5I0```.ES_?__0<:% -MD0`````/MT0D#D6(M9T```!!QH6>`````,'@"4&)A90```!,B?!(P>@808B% -MF@```$R)\$C!Z!!!B(6;````3(GP2,'H"$&(A9P````/MT0D#F;!Z`A!B(6? -M````#[9<)`Y!QH6A`````$&(G:````#I^OS__TR)[TB+7"0H2(ML)#!,BV0D -M.$R+;"1`3(MT)$A,BWPD4$B#Q%CI`````$'&A;`````#0<:%FP```#3I>OW_ -M_TB+51A(A=)(B50D(`^$-/W__TR+0AA-A<`/A"?]__])BWA83(D$).@````` -M3(L$)$F+4`@X0@H/A@G]__])C;_P````2(MM"$'&A;`````!3(D$).@````` -M2(7`2(G!3(L$)`^$KP$``$R)\DC'0!``````2,=!,`````!(*>I(QT$H```` -M`$C'03@`````2(D02(M$)!C'04`!````28E->$V)15!(`=!(B4$(2(U!&$B) -M01A(B4$@28M`"(!X"0!T=$'&A9H````!00^V2$5(T^I)B960````00^V2$2$ -MR0^$W?O__TB+7"0@23M88+@!````=!\QTH/"`3C*#X3`^___#[;"2(M<)"!) -M.US`8'7FC4(!08B%FP```.FB^___0<:%F````"I!QH60````"NE#_/__28V' -M4`($`$&+MU@"!`!!QH6:`````4F)E9````!)B86@````#[=$)`YF08F%F``` -M`$$/MGA$0(3_=#9(BU0D($D[4&"X`0````^$I0```#'2ZQ8/MLI(BUPD($AC -MP4D[7,!@#X2$````@\(!0#CZ=>(/MT0D#C'22<>'B`($``````!)QX=P`@0` -M`````$V)KW@"!`!,B?])QX>``@0``````,'@"8U$!O_W]DF-MV@"!`!!B8=H -M`@0`2(M<)"A(BVPD,$R+9"0X3(ML)$!,BW0D2$R+?"102(/$6.D`````QT-0 -M_?___^D8^O__N`$```#3X$&(A9L```#I<?___V9F9I!F9F:02(/L6$B%]DB) -M7"0H2(EL)#!,B<-,B7PD4$R)9"0X2(GU3(EL)$!,B70D2$&)STV+8!")?"04 -M2(E4)`A%B[0D6`($`'0)]H9A`@``!'1)2(US6,=#4/[___](QT-8`````$B) -M6V!(QT-H`````$R)YTB+7"0H2(ML)#!,BV0D.$R+;"1`3(MT)$A,BWPD4$B# -MQ%CI`````$B+1@@/MD@*A,ETJT$/M\=(`T0D"$B)1"08#[961`^VP2G"2(M& -M*$ACTDB)T3'22/?Q2#E$)!@/AWK___])C80D\````$B)QTB)1"0@Z`````!( -MA<!)B<4/A&P"``"+=31,B>?H`````$B%P$F)P`^$2`(``$B+1"082(M,)`A) -MQT40`````$G'13``````2<=%*`````!)QT4X`````$F)10A)C44828E-`$'' -M14`!````38EH>$F)11A)B44@0<:`L`````&+!0````!)B5A8A<!^##N%W`(` -M``^?P`^VP$&)0&A(BT4(@'@)``^$R````(M,)!2!Z0O_``"#^1H/A^P!``"X -M`0```$C3X*D`@``$#X4H`@``J0!```(/A1`"``"I`0```0^$PP$``$'&@)H` -M```!#[9-14G'@,``````````2--L)`A)B6A02(M,)`A!QH"R`````$G'@,@` -M````````28F(D````$F#?"1(``^$U`$``$F+3"1`28U0&$F-1"0X28E4)$!) -MB4`828E(($B)$4B+7"0H2(ML)#!,BV0D.$R+;"1`3(MT)$A,BWPD4$B#Q%C# -M00^WQS'2BTPD%,'@"4&-1`;_@>D+_P``0??V@_D:B<8/AQ$!``"X`0```$C3 -MX*D`@``$#X4S`0``J0!```(/A1D!``"I`0```0^$Z````$'&@)H````!28V$ -M)%`"!`!)B6A02<>`P`````````!)QX#(`````````$R)YTF)@*````!(BT0D -M"&9%B;B8````0<:`L@````!)B8"0````08FT)&@"!`!)C;0D:`($`$G'A"2( -M`@0``````$G'A"1P`@0``````$V)A"1X`@0`2<>$)(`"!```````2(M<)"A( -MBVPD,$R+9"0X3(ML)$!,BW0D2$R+?"102(/$6.D`````2(M\)"!,B>[H```` -M`$B+>Q!(C7-8QT-0_?___TC'0U@`````2(E;8$C'0V@`````Z>?\__](BWPD -M($R)[DR)!"3H`````$R+!"1,B<?H`````$R+8Q#IG_S__P'V0<:`F@````+I -MZ_[__T'&@)H````#Z=[^__]!QH":`````NGV_?__0<:`F@````/IZ?W__TB+ -M7"0H2(ML)#!,B<=,BV0D.$R+;"1`3(MT)$A,BWPD4$B#Q%CI`````)!(@^P8 -M2(D<)$R)9"0(2(G[3(EL)!!(BT<HBSA$#[=@#$R+:`3H`````(M[&$F)V$2) -MX4R)ZDB+'"1,BV0D"$R+;"002(G&2(/$&.FA^___D$B#[!A(B1PD2(EL)`A( -MB?M,B60D$$B+1RB+.$R+8`0/MV@,Z`````"`>!`!2(G&=".+>Q@/M\U)B=A, -MB>)(BQPD2(ML)`A,BV0D$$B#Q!CI3/O__XM[&`^WS4F)V$R)XDB+'"1(BVPD -M"$R+9"002(/$&.DI]/__9F:09F:09F:02(/L&$B)'"1(B6PD"$B)^TR)9"00 -M2(M'*(LX3(M@!`^W:`SH`````(!X$`%(B<9T(XM[&`^WS4F)V$R)XDB+'"1( -MBVPD"$R+9"002(/$&.G,^O__BWL8#[?-28G83(GB2(L<)$B+;"0(3(MD)!!( -M@\08Z:GS__]F9I!F9I!F9I!(@^P82(D<)$R)9"0(2(G[3(EL)!!(BT<HBSA$ -M#[9@"$2+:`3H`````(M[&$F)V$2)X4R)ZDB+'"1,BV0D"$R+;"002(G&2(/$ -M&.E1^O__D$B#[!A(B1PD2(EL)`A(B?M,B60D$$B+1RB+.$2+8`0/MF@(Z``` -M``"`>!`!2(G&="2+>QA`#[;-1(GB28G82(ML)`A(BQPD3(MD)!!(@\08Z?OY -M__^+>QA`#[;-1(GB28G82(ML)`A(BQPD3(MD)!!(@\08Z=?R__]F9F:09F:0 -M2(/L&$B)'"1(B6PD"$B)^TR)9"002(M'*(LX1(M@!`^V:`CH`````(!X$`%( -MB<9T)(M[&$`/MLU$B>))B=A(BVPD"$B+'"1,BV0D$$B#Q!CI>_G__XM[&$`/ -MMLU$B>))B=A(BVPD"$B+'"1,BV0D$$B#Q!CI5_+__V9F9I!F9I!!54&)]4%4 -M54B)_5-(@^P(A?:)M5P"!`!T,4B)^T4QY$2)X$B)[T&#Q`%(P>`$2(VT!5@" -M``#H`````$B)@U`"``!(@\,013GL==5(BP4`````QX5@`@0`$@```$B%P'0: -MBU`0.95@`@0`=@:)E6`"!`!(BT`(2(7`=>9(@\0(6UU!7$%=PV9F9I!F9I!F -M9I!54TB)^TB#[`A$BX=<`@0`187`="PQ[8GH2(G?@\4!2,'@!$@!V$B+D%@" -M``!(B[!0`@``Z``````YJUP"!`!WUL>#7`($``````!(B=](@\0(6UWI```` -M`&9F9I!F9I!54TB)^TB#[`B`O[`````#2(MO6`^$C`````^V@[(````\$`^$ -MD0```#P%="-W$RP!#X21````QT50_____V:0ZQ4\"P^%AP```&9FD&9FD,=% -M4/W___](BW-X2(7V=`](BSM(@<?P````Z`````!(BSOH*?___TB)W^@````` -M2,=%6`````!(B6U@2(UU6$C'16@`````2(M]$$B#Q`A;7>D`````]H>;```` -M`0^$9____\:'L@```!!(BT4PQ@`!QH.R`````<=%4`````#KACP-#X1W____ -MQT50_____^ER____9F9FD&9F9I!F9I!52(G]4TB#[`A(BU]8BT,8/23_``!T -M:3T9_P``=&*`O;(````0=G+'0U#_____9I!(BWT`2(MU>$B!Q_````#H```` -M`$B+?0#H8_[__TB)[^@`````2,=#6`````!(B5M@2(US6$C'0V@`````2(M[ -M$$B#Q`A;7>D`````9F9FD("]L@````QT3$B+0S#&``"`O;(````0=XY(#[Z- -ML@```+@!````2-/@J2`I`0!U%*@"#X1O____QT-0`````.EL____QT-0_?__ -M_V9FD&:0Z5O___](BT,POQ$```#&``%(BW50Z`````#&A;(````!Z\5F9F:0 -M9F:09F:09F:02(/L&$B)7"0(2(EL)!!(B?N#?QP'2(M'*(LH=@:#?R`#=QW' -M0U#^____2(M<)`A(BVPD$$B#Q!C#9F9FD&9FD(GOZ`````!(A<!TUXGOZ``` -M``!(BQ!(.U,0=`G'0U#\____Z\5(@W@8`'6W@'@0!':QBW`P@_[_=+!(BWH( -MZ`````"%P'2CQT-0_____V:0ZYAF9F:09F9FD&9FD&9FD$B#[!A(B1PD3(ED -M)!!(B?M(B6PD"$2+CX0#``!)B?1%A<EU"DB#O^`#````=!4QP$B+'"1(BVPD -M"$R+9"002(/$&,.+=S"#_O]T$$B+!TB+>`CH`````(7`==.`>Q`$=C]F]X-@ -M`@``<`AUPH![1`!T)S'M2(M\ZV!(A?]T#$R)YNAZ____A,!TI`^V0T2-50%( -M@\4!.=!_V[@!````ZY!T$TR)YDB)W^B#9/__#[;`Z7O___](BWLX3(GFZ&]D -M__\/ML#I9____V9F9I!F9I!(@^P(@'\0!'86,<!(@[^``@```'0*2(/$",-F -M9I!FD.@+____2(/$"`^VP,-F9I!!5D%505154TB+3RA(B?M(BU<PBP''`@`` -M``!!B<9!B<5!@>8``0``08'E_P```'1_13'DO00```#K,V9FD&:02(-X&`!U -M7C'V@'@0!4B)QT@/0_#H=____X3`=$A!@\0!2(/%!$4Y['1&2(M+*(L\*>@` -M````187V=<5(@W@8`'4C9O>`8`(``'`(=1B+<#"#_O]TR$B+`$B+>`CH```` -M`(7`=+A(BU,P08U$)`&)`DC'0U@`````2(E;8$B-<UA(QT-H`````$B+>Q!; -M74%<05U!7ND`````9F9FD&9FD$%7,=)!5D%5051)B?Q54TB#[`A(BT\HBP'V -MQ/]!B<4/E,)!@>7_````B50D!$B+5S!!#Y7'183_1`^V="0$QP(`````=&LQ -M[46$]G0V9F:0B>B)ZXM\@03H`````#'V@'@0!4B)QT@/0_#H@?[__X3`#X2Z -M````C4,!2(/%`4$YQ7=U183_="DQVV9FD&9FD$F+1"0HB=I(@\,!BWR0!.@` -M````2(G'Z`````!!.=UWWT2+5"0$1872=4Q!QT0D4`````!)QT0D6`````!- -MB60D8$F-="182<=$)&@`````28M\)!!(@\0(6UU!7$%=05Y!7^D`````183V -M=(9)BTPD*.E)____183_=+A)BT0D*(MX!.@`````2(/$"$B)QS'V6UU!7$%= -M05Y!7^F_?/__28M4)#"-0P%!QT0D4/____^)`NE[____9F9FD&9FD$B#[$A( -MB5PD,$B);"0X2(G[3(ED)$!(BV]83(MG4(%]&$+_```/A*4````/MH>;```` -M2(M5,(A""@^WAY0```"(0@8/MX>6````B$('#[>'F````(A""`^VAYH```"( -M0@D/MX>0````B$($#[>'D@```(A"!0^WAYP```"(0@N`N[(````!#X2K```` -MQT50_____TB)W^@`````2(M]$$B-=5A(QT58`````$B);6!(QT5H`````.@` -M````2(M<)#!(BVPD.$R+9"1`2(/$2,,/MH>;````2(M5,(A"#P^WAY0```!F -MB4((#[>'E@```&:)0@H/MX>8````9HE"#`^VAYH```"(0@X/MX>0````9HE" -M!`^WAY(```!FB4(&#[>'G````&:)0A"`N[(````!#X55____BT48QT50```` -M`#U"_P``=%4]&/\```^%0/___TB+12B`>`KR#X4R____28M$)&A(B>9)B[PD -M@````/]0>$B+5"082('"``$```^V`J@$#X0(____@^#[3(GGB`+H`````.GV -M_O__2(M%*(!X#_(/A>C^__]F9I!FD.NO9F9FD&9F9I!F9I!F9I!!5C'`055! -M5%532(G[9F:0Q@08`$B#P`%(@_@L=?+'`RP```#HQU+__XA#!$B+!0````!( -M@S@`#Y1#!4B+/0````#H`````,'@##W___\!#X:/````QD,&!<9#!PL/MD,+ -M0;P%````13'M13'VQD,(`,9#"0'&0PH/@^#^@\@(B$,+ZR%$B>C&1"L<0(/( -M($&#_`5$#T3H08/&`4&#Q`%!@_P-="Y$B>?H`````$B%P'3I1(GG00^V[NCR -M4___08/\!HA$*PQUO$&#S4#&1"L<`NO$08#]8'086UU!7$%=05XQP,/&0P8' -MQD,'!^EL____2(L%`````(.XI`($``-VV$$/ML;&1`,,$L9$`QQ`,<!;74%< -M05U!7L-F9I!F9I!32(G[2(M_,.C3_O__A<!T!\=#4/____](QT-8`````$B) -M6V!(C7-82,=#:`````!(BWL06^D`````9F:09F:0059!54F)_4%455-(@\2` -M3(MG$$R)Y^BE7/__18N<)*`"!`!%A=L/A9$```!)BVPD$$''A"2@`@0``0`` -M`$B%[0^$K0```$B+10A(BWT02(GF_U`X#[9$)!!!`80DH`($`(!\)!``=#4Q -MVV9FD&9FD$B)Z4C'P@````")WDB)[^@`````A,!U"4&#K"2@`@0``0^V1"00 -M@\,!.=A_TTB+;0!(A>UUH$&+A"2@`@0`@^@!A<!!B80DH`($`'1"28M]$$F- -M=5A!QT50_/___TG'15@`````38EM8$G'16@`````Z`````!(@^R`6UU!7$%= -M05[#0<>$)*`"!```````28VT)#@"``!)C7PD2$G'A"0X`@```````$V)I"1` -M`@``2<>$)$@"````````Z`````#KBF9F9I!F9I!F9I!F9I#I`````&9F9I!F -M9F:09F:02(/L*$R)9"083(EL)"!)B?Q(B5PD"$B);"0028GU2(MO&(.MH`($ -M``&%T@^(M````.@`````2(7`2(G##X2Q````@#T``````'4U2(G>OP(```#H -M`````(N=H`($`(7;=#Y(BUPD"$B+;"003(MD)!A,BVPD($B#Q"C#9F:09I`/ -MMD!DJ`)UPZ@!#X6#````]D-D!'6U@$MD).NO9F9FD$B-M3@"``!(C7U(2,>% -M.`(```````!(B:U``@``2,>%2`(```````!(BUPD"$B+;"003(MD)!A,BVPD -M($B#Q"CI`````$B-?R#H`````.EE____28M$)`A,B>__D(````!)C7PD($R) -M[N@`````Z47___](B=_H`````&9FD&:0Z6O___]F9F:09F9FD&9FD$B#[!A( -MB1PD3(EL)!!(B?M,B60D"$B+1RA$BV`$BSCH`````$2)YTF)Q>@`````3(GO -M2(G&Z`````"#^`%(BWL02(US6!G`2,=#6`````!(B5M@]]!(QT-H`````(E# -M4$B+'"1,BV0D"$R+;"002(/$&.D`````9F:09F:09F:0052`/0``````54B) -M_5-T<4B+7QA,C6<83#GC=0OK,Y!(BQM,.>-T*H"[@/S__P%(C;MP_/__=>CV -M0_`!=.(/MC4`````Z`````!(BQM,.>-UUL>%.`$```"'DP-(QX5(`0`````` -M`$B-M3@!``!(B:U0`0``2(GO6UU!7.D`````6UU!7,-F9F:09F:09F:0055! -M5%5(B?U32('LR````$R+;Q!(BW<H2(U$)`Q)B>1(B>?&!P!(@\<!2#G'=?2Z -ML````$''!"1\`0``Z`````!(BUTP,?9,B>),B>_H[L?__X/X_XD#=0.)15!( -MBWT02(UU6$C'15@`````2(EM8$C'16@`````Z`````!(@<3(````6UU!7$%= -MPV9FD&:053'`2(G]4TB#[`A(BU\PD,8$&`!(@\`!2#V`````=?!(B=_H6/K_ -M_X7`="['15#_____2,=%6`````!(B6U@2(UU6$C'16@`````2(M]$$B#Q`A; -M7>D`````QP.`````QT,\`"```#'2#[9$&@R#X`^#Z`,\`G<%QD0:+`9(@\(! -M2(/Z$'7BZZIF9F:09F:005=!5D%528G]05154TB#[`A(BT<H2(M?,(LH,<!F -M9I#&!!@`2(/``4@]^@```'7PB>_H`````$F)Q#'`9F9FD,8$&`!(@\`!2#WZ -M````=?"%[71F387D=&%)BT0D*+K_____2(E#!$F+1"082(7`=`:+D.@#``") -M4PQ!BU0D,+C_____A=(/2<*(0P-)BP0D2(MX".@`````B$,"00^VA"2!`P`` -MB$,!00^V1"00/`1W/RP!#X2S`0``0<=%4/____])QT58`````$V);6!)C758 -M2<=%:`````!)BWT02(/$"%M=05Q!74%>05_I`````,8#`4F+1"103(GG9HF# -MZ````.B(4/__B8/D````28N$)'`"``!(B4,@28N$)'@"``!(B4,H00^V?"00 -MZ&]-__^(@X0```!!#[9$)$5,B>>(@X4```!)BX0D:`(``$B)@]````#H)KK_ -M_TR)YXF#B````.@`````QH.&`````(F#S````$&`?"1$``^$:`$``$4Q]D4Q -M_TN+;/1@2(7M#X03`0``@+N'``````^$%P$``(!]$`0/A"8!``"+A>@#``!" -MB82SC`````^VDX8```!!@\<!28/&`8/"`8B3A@```$$/MD0D1$0Y^`^/KP`` -M``^VTH/Z#W\62&/"@\(!@_H/QX2#C````/____]^ZDF+A"2``@``2(7`#X2R -M_O__2(M0"+G_____2(72=`:+BN@#``")B]@```!(BU`0N?____](A=)T!HN* -MZ`,``(F+W````$B#>`@`#X1S_O__2(-X$``/A&C^__],B>?H`````(F#X``` -M`.E5_O__2(US(,8#`DR)Y^B$UO__A<`/A3;^___I.?[__V9F9I!F9I!!@_\/ -M#X]'____2XML]&!(A>T/A>W^__]"QX2SC`````````#I`?___P^V?1#HWDO_ -M_XB#AP```(!]$`0/A=K^__](BT4XBX#H`P``0HF$LXP```#IT?[__S'2Z?G^ -M__]!5D%528G]05154TB+1RA(BU\PBR@QP,8$&`!(@\`!2#W8````=?")[^@` -M````28G$,<#&!!@`2(/``4@]V````'7PA>UT.$V%Y'0S28M$)"BZ_____TB) -M0P1)BT0D&$B%P'0&BY#H`P``B5,,00^V1"00/`1W.2P!#X0*`0``0<=%4/__ -M__])QT58`````$V);6!)C7582<=%:`````!)BWT06UU!7$%=05[I`````,8# -M`4F+A"1P`@``2(E#$$F+A"1X`@``2(E#&$$/MGPD$.C:2O__B$-T00^V1"1% -M3(GGB$-U28N$)&@"``!(B8/`````Z)>W__],B>>)0WCH`````,9#=@")@[P` -M``!!@'PD1``/A+0```!%,?;K-(!]$`1T4`^V4W:+A>@#``")1)-\#[9#=H/` -M`3P/B$-V=V1!#[9$)$1!C58!28/&`3G0?E)+BVST8$B%[73D@'MW`'6\#[9] -M$.A$2O__B$-W@'T0!'6P2(M5.`^V0W:+DN@#``")5(-\ZZI(C7,0Q@,"3(GG -MZ,C9__^%P`^%W_[__^GB_O__#[93=H/Z#V9F9I`/C]'^__](8\*#P@&#^@_' -M1(-\_____W[MZ;G^__\QTNOD9F9FD&9F9I!F9I!F9I!!5D%528G]05154TB+ -M1RA(BU\PBR@QP,8$&`!(@\`!2#VN````=?")[^@`````28G$,<#&!!@`2(/` -M`4@]K@```'7PA>UT-TV%Y'0R28M$)"BZ_____XE#!$F+1"082(7`=`:+D.@# -M``")4PA!#[9$)!`\!'<Y+`$/A`D!``!!QT50_____TG'15@`````38EM8$F- -M=5A)QT5H`````$F+?1!;74%<05U!7ND`````Q@,!28N$)'`"``!(B4,,28N$ -M)'@"``!(B4,400^V?"00Z/M(__^(0W!!#[9$)$5,B>>(0W%)BX0D:`(``(F# -MG````.BYM?__3(GGB4-TZ`````#&0W(`B8.8````08!\)$0`#X2P````13'V -MZS2`?1`$=%`/ME-RBX7H`P``B423>`^V0W*#P`$\!XA#<G=D00^V1"1$08U6 -M`4F#Q@$YT'Y22XML]&!(A>UTY(![<P!UO`^V?1#H9DC__XA#<X!]$`1UL$B+ -M53@/MD-RBY+H`P``B52#>.NJ2(US#,8#`DR)Y^CJU___A<`/A>#^___IX_[_ -M_P^V4W*#^@</C];^__](8\*#P@&#^@?'1(-X_____W[MZ;[^__\QTNOD9F9F -MD$%528G]05154TB#[$A(BU\HBSN%_W5T2(LM`````,9$)#`&2(7M=#=,C60D -M,$B+71!(A=MT($B+0Q`Q_TR)YDB)1"0X2(M#"/^0P````$B+&TB%VW7@2(MM -M`$B%[77.28M]$$F-=5A)QT58`````$V);6!)QT5H`````.@`````2(/$2%M= -M05Q!7</H`````$B)Q0^V0P1,C6,$A,!U.X!]$`$/A"(!``!!QT50_O____9% -M9!!TJ$B+16A(B[V`````2(GF_U!X#[9$)`Y(B>^(16+H`````.N%+`%T#4'' -M15#^____Z73___^`?1`$D':W00^V1"0!/`%T1V9F9I`/@\H!``!!@WT<&&9F -MD&:0=9=(C95P`@``,<#&!!``2(/``4B#^!!U\DF+1"0$2(D"28M$)`Q(B4(( -M@(U@`@``!.MN08-]'$@/A5O___](C8V,`@``,<#&!`@`2(/``4B#^`1U\DF+ -M1"0$28U4)`1(B0%(BT((2(E!"$B+0A!(B4$02(M"&$B)01A(BT(@2(E!($B+ -M0BA(B4$H2(M",$B)03!(BT(X2(E!.("-8`(```3VA6`"```$#X2A_O__2(GO -MZ`````#IE/[__T&`?"0!!0^'TO[__T$/MD0D`69FD/\DQ0````!!@WT<"69F -M9I`/A;/^___&1"0P"4$/MD0D!$B-="0PB$0D.$B+16A(B[V`````_Y#````` -M08E%4.F-_O__08-]'`D/A7K^___&1"0P!4$/MD0D!,9$)#D`B$0D.$B+16A( -MC70D,$B+O8````#_D,````!!B450@$UD$.E+_O__08-]'`D/A3C^___&1"0P -M!$$/MD0D!,9$)#D`B$0D..N\08-]'`D/A1?^___&1"0P`T$/MD0D!(A$)#CK -MH$&#?1P)#X7[_?__QD0D,`+KXD&#?1P)#X7I_?__@$UD@,9$)#``Z\QF9I!F -MD#P"=`U!QT50_O___^G0_O__08-]'`D/MK6!`P``#X6V_?__#[9#"$B->PA` -M.,9T0(!]$`2(A8$#``!V-(!]1`!T+C')2(M4S6!(A=)T$X!Z$`1V#0^VA8$# -M``"(@H$#```/MD5$C5$!2(/!`3G0?]1`@/X"=`R`C6`"```$Z5_^__^`/P)T -M[TC'P@````!,B>Y(B>_H-VO__^D2_?__9I!!5%5(B?U32(M?*(L[3(UC!.@` -M````2(G&BT,$J`%T.DB-EG`"```QP&9F9I!F9I#&!!``2(/``4B#^!!U\DF+ -M1"0$2(D"28M$)`Q(B4((@(Y@`@``!$&+!"2H`G1C2(V.C`(``#'`Q@0(`$B# -MP`%(@_A`=?))BT0D%$F-5"042(D!2(M""$B)00A(BT(02(E!$$B+0AA(B4$8 -M2(M"($B)02!(BT(H2(E!*$B+0C!(B4$P2(M".$B)03B`CF`"```$]H9@`@`` -M!'0(2(GWZ`````!(QT58`````$B);6!(C7582,=%:`````!(BWT06UU!7.D` -M````9F:09F:09F:0055!5%532(G[2('LR````$R+9RA(B>5!BSPDZ`````!) -MB<5(C40D#$B)YV9FD&:0Q@<`2(/'`4@YQW7T28UT)`2ZL````,=%`'P!``#H -M`````$B+>Q!(B>I,B>[HK[O__X7`B<)T+(/X_W0U2(M#,$B+>Q!(C7-82,=# -M6`````!(B5M@2,=#:`````")$.@`````2('$R````%M=05Q!7<.)0U#KQF9F -M9I!F9I!F9I!!5%5(B?U32(M'"$B+&(NS:`($`$B)WTR+H^`!``#HG>7__TB+ -M50A(BT40BW`T.7(T#T-R-$B+.N@`````2(7`28G`#X2D`0``BQ4`````A=)^ -M$$B+10@[D-P"```/G\`/MM!!B5!H0<:`L@`````/MH6J````A,`/A>@```!( -MC45(28E`<$B+10A!@(BQ`````HN+6`($`$F)0%`/MX6:````#[>5F````"G" -MB<B+BV`"!`#!Z`F#Z0$/K\$YP@]'T+@``0``9H'Z``$/1L)F08F`F````(!] -M*``/A/(```!!]H"Q````!`^$Y`````^WA9@```!!#[>0F````$@#A9````!( -M*=`/MY6:````2"G028F`D````$&`B+$````(38E@6$B#>T@`2<>`R``````` -M``!)QX#```````````^$!`$``$B+2T!)C5`82(U#.$B)4T!)B4`828E(($B) -M$5M=05S#/`,/A!#___](BT4008"(L0````1)B4!0BX-<`@0`A<`/A,H```"+ -MBU@"!``Q]DB+DU`"!`")\$C!X`2%R4B+%!!T&HG(9F:09I#&`@!(@\(!2(/H -M`77SBXM8`@0`@\8!.;-<`@0`=\;IR?[__P^WA9H```!(`X60````28F`D``` -M`.DL____#[:%J@```(3`=4Q(BWT(2(UU2.@`````2(M%"$B+..@_Y/__0<=$ -M)%#_____2<=$)%@`````28UT)%A-B60D8$G'1"1H`````%M=28M\)!!!7.D` -M````/`-UO>NN6UU!7$R)Q^D`````BXM8`@0`Z3O^__]F9F:09F9FD&9F9I!F -M9I!(@^PH2(EL)!!(B?U(B5PD"$R)9"083(EL)"`/MH6R````2(M74$R+9UA( -MBS](BYJ``@``/`%T2#P"#X17`0``2(US,,:%L@````!(@\=(2,=#,`````!( -MB6LX2,=#0`````!(BUPD"$B+;"003(MD)!A,BVPD($B#Q"CI``````^W@YH` -M``!F`X68````2#M3"&:)@YH````/A.<"```/MX.:````9CN#F`````^#C0$` -M``^VA;$```!(QT5X`````$C'17``````@^#]@\@$B(6Q````2(M3$$B)55#& -MA;(`````#[>#F@````^WDY@```"+CV`"!`"#Z0$IPHN'6`($`,'H"0^OP3G" -M#T?0N``!``!F@?H``0]&PF:)A9@```"`>R@`=`WVA;$````$#X5N`@``#[># -MF@```$@#@Y````!(B860````]H6Q`````@^$_0$``$B#?T@`#X3R`0``2(M/ -M0$B-51A(C4<X2(E70$B)11A(B4T@2(D12(M<)`A(BVPD$$R+9"083(ML)"!( -M@\0HPTB+0PC&@ZL````!@*"``P``_DB+0Q"`H(`#``#^2(M#"("@80(``/=( -MBT,0@*!A`@``]TB+0PA(BSCH"N+__P^V@ZH```"$P`^$^P```#P##X3S```` -M2(GOZ`````!!QT0D4/____])BWPD$$F-="182<=$)%@`````38ED)&!)QT0D -M:`````!(BUPD"$B+;"003(MD)!A,BVPD($B#Q"CI`````&9F9I!(BYJ``@`` -M@'LH`$B+2PA(BU,01`^VJZH````/A)$````/MX.8````2(N3H````$@IPD&` -M_0%(B9.@````#X1S`0``08#]`@^$?P$``$B#NZ``````#X6/````2(LYZ#WA -M__]%A.T/A#@!``!!@/T##X0N`0``2(GOZ`````!(B=](BVPD$$B+7"0(3(MD -M)!A,BVPD($B#Q"CI$IO__V:02(M["$B-<TCH`````.G[_O__#[>#F````$@# -M@Z````!%A.U(B8.@````=6E(.T$H=0?&@ZH````!2(M"*$@Y@Z`````/A''_ -M__](BSGHKN#__T6$[0^$EP```$&`_0.0#X2,````2(GOZ`````!FD.FI_O__ -M2(GO2(M<)`A(BVPD$$R+9"083(ML)"!(@\0HZ0````!!@/T#=9Y(.T$H=9CI -M%?___V8[@Y@```!F9I`/@DC]__]FQX.:``````#I^_S__P^W@Y@````/MY.: -M````2`.#D````$@IT`^WE9@```!(*=!(B860````Z7G]__](BWL(2(US2.@` -M````Z6+___](BWL(2(US2.@`````Z<#^__](.U$H#X6-_O__QH.J`````.F! -M_O__2#M1*`^%=_[__^F`_O__9F:09I#VA[$````"2(L'QH>R`````'0C2(-X -M2`!T'$B+2$!(C5<82(E00$B#P#A(B4<82(E/($B)$</I`````&9FD&:04TB) -M^TB+/XNW:`($`.C>WO__2(L#2(-X2`!T'4B+2$!(C5,82(E00$B#P#A(B4,8 -M2(E+($B)$5O#2(G?6^D`````9F9FD&9F9I!F9I!F9I!(@^PX2(E<)`A(B6PD -M$$R)9"083(EL)"!,B70D*$R)?"0P2(M?6$R+=V!,BRM-BZ7@`0``28M$)"A$ -MBSCH`````(![$`0/AIT```!(BZN``@``2(7M#X3M````2(M]"$B%_W0,N@(` -M```Q]NB0L/__2(M]$$B%_W0,N@(````Q]NA[L/__2(M%&$B+52!)C;W0```` -M2(GN2(E0"$B)`N@`````08U>`40Y^W1428M$)"B)VHM\D`3H`````(G>2(ML -M)!!(BUPD"$R+9"083(ML)"!(B<=,BW0D*$R+?"0P2(/$..D(8?__2(G?08U> -M`>@`````1#G[=;-F9F:09F:028M\)!!)C70D6$G'1"18`````$V)9"1@2<=$ -M)&@`````2(M<)`A(BVPD$$R+9"083(ML)"!,BW0D*$R+?"0P2(/$..D````` -MN@(````Q]DB)W^BIK___Z4?___]F9F:02(/L*$R)9"002(E<)`A)B?Q,B6PD -M&$R)="0@3(MW"$B+7Q!)BP9(B=Y,B?=,BZC@`0``Z$A%__](QX.``@`````` -M`$G'AH`"````````00^VEH`#```/MH.``P``28UU6(/B!(/@^PG0B(.``P`` -M00^VEH`#``"#X/V#X@()T(B#@`,``$$/MD9(B$-(28M]$$G'15@`````38EM -M8$G'16@`````Z`````!(B=Z_%0```.@`````28M4)!A)BT0D($F-="0P28L^ -M2<=$)#``````38ED)#A)QT0D0`````!(B4((2(D02(M<)`A,BV0D$$R+;"08 -M3(MT)"!(@\0HZ0````"0D)"0D)"0D)"0D)!(BX?8`P``2(7`=!](BU8(2#D0 -M<PU(BPY(.4@(#X>K````2(M`$$B%P'7E2(N7H`,``$R-AZ`#``!,.<)T.F:0 -M2(U"Z("XL`````!U(TB+B)`````/MX"8````2`'(2#D&<PU(.TX(<F1F9F:0 -M9F:02(L223G0=<A(BX^P`P``2(''L`,``$@Y^747ZT9F9I"`^H!T'$B+"4@Y -M^69FD&:0=#%(C4'H#[:0L````(32==](BY"0````#[>`F````$@!T$@Y!G/. -M2#M6"'/(N`$```##,<##9F9FD&9FD&9FD$B#[!!(B1PD2(EL)`A(B?M(B?7H -M"/___X7`=2)(BX/8`P``2(E%$$B)J]@#```QP$B+'"1(BVPD"$B#Q!##2(-] -M*`"X_____W3F2(N#X`,``$B-D^`#``!(A<!T#4B-4!!(BT`02(7`=?.X____ -M_TB)*NN\9F9FD&9F9I!F9F:02(N'V`,``$B-E]@#``!(.?!T#4B-4!!(BT`0 -M2#GP=?-(BTX82(M&$$R-3AA,BX?0`P``23G)2(D"2,=&$`````!T'4B+5B!) -MBP!,B4$(28D(2(E0"$B)`DR)3B!,B4X82(L'QT!H`0```,-F9I!FD$B#/P!T -M#4B+1PA(B7`02(EW",-(B7<(2(DWPV9FD&:02(/'6.D`````9F9FD&9FD%-( -MBX>`````2(G[2(7`=!1(QX>``````````$B+MX@```#_T$B+@\@```!(BSM( -MC7,H2(E;,$C'0S@`````2(E#*$B#QUA;Z0````!F9F:02(/L&$B)7"0(2(G[ -M2(EL)!!(BV]0Z`````!(BW-X2(M3&$B-2QA(BT,@@ZV(`P```8.MA`,```%( -MA?9(B4((2(D02(E+($B)2QAT%DB)[TB+7"0(2(ML)!!(@\08Z0````!(BUPD -M"$B+;"002(/$&,-F9F:09F9FD&9F9I!F9I!!54%455-(B?.)UDB#[`A,BT=8 -M3(NGD````$0/MZ^8````28N(N````$F+J)````!(A<D/A*@```!!#[:`L0`` -M``^WTH/@`0^VP#G0#X2/````1(L!1(GG*>_!YPE$.<=$B<!S#>FF````9F:0 -M9F:0B=!(@\$0B<(#$3G7<_)$BP$IQT$/M_6)^D@#40A!*?C!Y@E$B0-$.<9( -MB5,(2(U3$'8E2(M!&"LSQT,$`````$B)TTB)0@B+01!(@\$0B0)(@\(0.?!R -MVXDSQT,$`0```$B#Q`A;74%<05VX`0```,-)BX#`````2(7`=!:)\DR)QTB) -MWO_0A<!T"$B)V>E/____2(/$"#'`6UU!7$%=PS'`Z6K___]F9I!F9I!F9I!! -M54%455-(B?M(@^P(@+^P`````$B+;U`/A1("```/MX>8````3(NGD````$J- -M#"!(BX78`P``2(7`=#8/MI>Q````@^)`A-)T!XMP0(7V=!5(.4-P=`](.PAV -M"DP[8`@/@O("``!(BT`02(7`9F:0==1(@WMP``^$H0(``(!]$`0/AJD!``!, -MBZV``@``387M#X0]`@``08"]JP`````/A2\"``#V@[$````(#X4B`@``2(&[ -MR``````````/A!$"``!).VT(#X4'`@``08!]*``/A.@"``!)BX6@````23G$ -M#X,C`0``2#G!#X;C`0``2(M["(-'"`'H`````$B)QTB+`TB)!TB+0PA(B4<( -MBT-HB4=H28M%"$R)IY````!(B4=0OH#___])BX6@````2(E?6,:'L@````!( -MQX?``````````$C'A\@`````````2,>'N`````````!F1"G@9HF'F`````^V -MA[$````/MI.Q````@^`_(=:)T8/A0`GPOC`````)R"'6B=&#X,>#X0@)\`G( -MB=&#X@*#X02#X/D)R`G0#[:3L0```(/@_H/B`0G0B(>Q````2(M3<+@!```` -M2(722`]%PDB-4QA(B4=P28M%"$B+B+@#``!(B9"X`P``2`6P`P``2(E#&$B) -M2R!(B1'&@[````"`2(/$"%M=05Q!7>D`````28M%$(.MA`,```%(B4-02(G% -M@X"$`P```8!X$`0/AZ8```!FD$B+E:`#``!(C8V@`P``2#G*=2Q(BP-(B4L8 -MQT!H`0```$B-0QA(B4$(2(F%H`,``$B)2R!(@\0(6UU!7$%=PX-[:`!U-TB+ -MM:@#``!(C7[HBT=HA<`/B!4!``!(C4,82(E+&$B)A:@#``!(B09(B7,@2(/$ -M"%M=05Q!7<,/CLP```!(C4,82(E3&$B)0@A(B86@`P``2(E+($B#Q`A;74%< -M05W#]H.Q````!`^$3_____:%80(``"`/A$+___^`I6$"``#?Z`````"`C6`" -M```$B44\2(L#QX"4`@0``0```$B+15A("450Z1+____V@[$```!`#X52_?__ -M2(N%X`,``$B%P'46Z4']__]F9F:02(M`$$B%P`^$,/W__T@["';N3#M@"'/H -M2(M(($B-4QA(B5`@2(/`&$B)0QA(B4L@2(D12(/$"%M=05Q!7<-(BY6H`P`` -M2(U#&$B)2QA(B86H`P``2(D"2(E3(.G$_O__@T=H`4B+5@A(C4,82(ES&$B) -M1@A(B0)(B5,@Z:3^__])BX6@````2#G!#X8[_O__23G$#X/[_O__2(M["(-' -M"`'H`````$B)QTB+`TB)!TB+0PA(B4<(BT-HB4=H28M%$.D3_?__9F9FD&9F -MD&9FD%-(BT=02(G[2(MW>(.`A`,```%(A?9T*4B)?C!(BW]02,=&*`````!( -MQT8X`````.@`````A<!U%TB+0WA(B4-P2(G?6^D`````9F:09F:06\-F9F:0 -M9F9FD&9FD&9FD%5(B?E32(/L"("YL@````%(BU]82(M_4$0/MXF8````#[>S -MF````$B+KX`"``!T00^V@;(```!(BWL(2(G.QH.P`````(B#L@```.@````` -M2(M#"$B)WX-H"`%(BT4(@X"(`P```4B#Q`A;7>D`````2(N#D````$@Y@9`` -M``!UKXM!0$R+04B%P'02B<),B<#&``!(@\`!2(/J`77S2(M%"$@Y^'0R2(E! -M4$B+A:````!F1"G.9HFQF````,:!L@````!(B<](B8&0````2(/$"%M=Z0`` -M``!(BT40Z\B005=(C4<83(U_6$%6055)B?U!5%532(/L&$B)1"0(2(U'.$B) -M!"1!QT5H`````.L;2(M"$$B%TDF)15AT+4C'0A``````2(MZ"/\228M56$D[ -M56!UVTB%TDG'16``````2<=%6`````!UTTV+=1A,.W0D"`^$90(``,=$)!0` -M````2+@@````_____TF%1O!)C:YP_/__28U>$'0(QT0D%`$```!,C:6P`P`` -M9F:09I!(BXV@`P``2#G9#X22````2(L12(M!"$B)STB#[QA(B4((2(D02(E) -M"$B)"71T#[:5@`,``/;"`0^$8@$``$2+E8@#``!%A=)T#XN%Q`,``#M':`^/ -MJP$``(/B&`^%H@$``(M':$R)9QB#A8@#```!B87$`P``2(N%N`,``$B)C;@# -M``!(B0A(B4<@2(M%"/]0*$B+C:`#``!(.=D/A6[___],C:7(`P``9F9FD&9F -MD$B+C<@#``!,.>%T9$B+$4B+00A(B<M(@^L82(E""$B)$$B)20A(B0ET1DB+ -M<WA(A?9T*4B)7C!(BWM02,=&*`````!(QT8X`````.@`````A<!UK$B+0WA( -MB4-P2(G?Z`````!(BXW(`P``3#GA=9Q(@[W@`P```$R-I>`#``!T*4F+'"1( -MA=MT($B)WDB)[^C+]/__A<`/A(0```!,C6,028L<)$B%VW7@38LV3#MT)`@/ -MA6G^__]$BTPD%$6%R0^$N````$F#?5@`#X7U_?__08M]:(7_#X7I_?__2(/$ -M&%M=05Q!74%>05_#9F9FD,:'L@````)(BX6X`P``@X6(`P```4B)C;@#``!, -MB6<82(E'($B)".@`````Z2_^__](BT,02(US*$R)_TF)!"1(BX78`P``2(E# -M$$B)G=@#``#H`````$''16@!````Z2W___](BX6@`P``2(U7&$R-I<@#``!( -MB5`(2(E'&$B)7R!(B96@`P``Z8+^__]%BX64`@0`187`=!WK;4B+0A!)B45( -M2(72=%%(QT(0`````$B+>@C_$DF+54A).U50==M)QT50`````$G'14@````` -MZ]%(BQ%(BT$(2(G/2(/O&$B)0@A(B1!(B4D(2(D)#X3A_O__Z`````!)BTTX -M2#L,)'7/Z<W^__]!QX64`@0``````$R)[^@`````ZYEFD%-(BQ](@WM(`'0D -M2(M+0$B-5QA(C4,X2(E30$B)1QA(B4\@2(D12(G?6^D`````Z`````#K\)"0 -MD)"0D)"0D)`QTDB%_W0,2(U'_X/"`4@AQW7TB=##9F9FD&9FD&9FD$%52<?% -M_O___T%455-(B?M(BWM02(MK&$B%_W4-]H-@`@```@^%F@```$4QY$@+>UCH -M`````$B+4PA$`>`/ME(*.=!^1X"C@`,``/[V@X`#```!=#!(A>UT*P^V=41` -MA/9T(D@Y76!,B>AT3#'2ZPT/MLI(8\%(.5S%8'0Q@\(!0#CR=>M;74%<05W# -M2(M#4("+@`,```%(A<!TL$B)PD@S4UAU-X"C8`(``/WKGDC'P/[___](T\!( -M(4582(GKZ4S___](BT,(@'@+`0^%6/___T0/MF`*Z5'___](A="0#X1F____ -M@(M@`@```NE:____9F9FD&9F9I!F9I!F9I!(BW<81`^V1D1%A,!T)S'),=)( -M.7Y@=17K(&9FD&9FD`^VRDACP4@Y?,9@=`V#P@%$.,)UZ[G_````B<C#9F:0 -M3(M&.$V%P'1/28M`&$B%P'0^2(M`&$B%P'0U2#GX=$`/ME!$A=)^ZC'V2(M, -M\&!(A<ET"X!Y$`1V!4@Y^70A2(/&`3GR?^-(BT`82(7`=<M-BP!-A<!UL3'` -MPV9FD&:0N`$```##9F9FD&9FD&9FD$%428G454B)]5-(B?M(@^P0@'\0!`^& -MCP```,=$)`P`````QT0D"`$````/MD]$A<E^)TB+?V`QTDB)V$B%_W02Z84` -M``!(BWAH2(/`"$B%_W5X@\(!.<IU[$B+4PB`>@D`="0/MD-$#[92"BG0#Z]$ -M)`B)1"0(#[=#1CM$)`P/1D0D#(E$)`Q(A>UT!XM$)`R)10!-A>1T"(M$)`A! -MB00D2(/$$%M=05S#2(7V=`;'!@````!-A>1TYT''!"0!````2(/$$%M=05S# -M2(U4)`A(C70D#.@`````2(M3"(!Z"0!TI.E[____9F9FD&9FD%-(B?M(@^P0 -M2(M_"$B-5"0(2(UT)`SH`````$B+>Q!(C70D!$B)XN@`````BU0D"#L4)(M$ -M)`P/ET,H.40D!`]#1"0$#Z_"NH````!FA<`/1=!FB9.H````2(/$$%O#D$%4 -M28GT55,/MD<02(G[.D80=`VX`0```%M=05S#9F:0#[='1&8[1D1UZ8!_1``/ -MA)@```!(BW]@2(MV8$B%_W32,>U(A?9TRX!_$`1V.(!^$`1VO^@`````A,!U -MM@^V4T2-10$YPGYD2(M\ZVA)BW3L:$B#Q0%(A?]TF$B%]G23@'\0!'?(@'X0 -M!'>'2(M&.$@Y1S@/A7G___](BU=(2(M&2$B+2`A(.4H(#X5C____2(M($$@Y -M2A`/AU7____V@V`"```#=);I1____S'`9I#I0____V9F9I!F9F:09F:04TB+ -M7PA(BT<02(7;=#)(A<!T;O:#@`,```%U.8"@@`,``/['0S#_____@*.``P`` -M_L:'JP````%;PV9FD&9FD$B%P'3L@*"``P``_L:'JP````%;P_:`@`,```%T -MOL:'JP````"`BV$"```$@(AA`@``!.@`````2(G?6^D`````@*.``P``_L:' -MJP````%;PV9F9I!F9F:09F9FD&9FD$%728GW059!54%454B)_5-(@^P8#[97 -M1(72#XZ-`0``13'MZ88```!(A<!)B6PD&'0(2,=`&`````!.B63M8`^VE6`" -M``!(QX5H`@```````(G0@\@*J""(A6`"``!T"8/*BHB58`(```^V3"04N`$` -M``!(T^!("4502/?02"%%6$V%_P^$.P$``("-8`(```1-A?\/A1,!```/ME5$ -M08U%`4F#Q0$YP@^._P```$2);"042HM$[6!(A<!T"?:`@`,```%UU$V%_TV) -M_`^%5O___TB+10@/MD`**<)(BT4H2&/22(G1,=)(]_%(B00D2(M%`$B+6!A( -M@\`82#G#=)I%,>1(QT0D"/_____K$F:02(M%`$B+&TB#P!A(.=AT4/9#\`%, -MC;-P_/__=..`NX#\__\!==KV@]3\__\$=-%,B?9(B>_H=OO__X3`=<)(BX.P -M_/__2#D$)'>U2#M$)`ASKDV)]$B)1"0(ZZ1F9F:0387D#X0A____]H5A`@`` -M`G1K28M$)#A(A<!T%V9F9I!(@W@8``^%__[__TB+`$B%P'7M2HM$[6#I>_[_ -M__:%8`(```AU(4B#Q!A;74%<05U!7D%?PTR)YK\'````Z`````#IL_[__TB# -MQ!A(B>];74%<05U!7D%?Z0````!(BS0D,=),B>?H`````$B%P$F)Q`^$D_[_ -M_TJ+1.U@Z1?^__]F9F:09F9FD&9F9I!F9I!!5D%505152(G]4TB![``"``"` -M?Q`$=@>`IV`"``#[]H6``P```71:@'T0!'9D@'U$`'1.,=M(BTS=8$B%R70S -M#[:5@`,```^V@8`#``"#X@*#X/T)T(B!@`,``$B+?-U@@'\0!'8'#[9%2(A' -M2.@`````#[9%1(U3`4B#PP$YT'^T2('$``(``%M=05Q!74%>PTR+=3A!]H:` -M`P```0^$X0(``$R+;1A%,>1-A>UT#4V+91A-A>0/A`(#``!(B>-(B>!(C90D -M``(``,8``$B#P`%(.=!U[$V%Y,<#]!9X6@^$P@(``$&+1"0XB4,$08M$)$") -M@\8```#VA8`#```"=`2`2Q8!387D#X2G`@``28/]`1G`@\`"B$,828N,)(`" -M``!(A<ET.8L!#[93%HE#"$B+@:````"#XOU(B4,,#[9!*(/@`0'`"<*(4Q9, -M.6$0#X1V`@``#[:!J@```(A#%$$/MD0D2$V%[4R)[T@/1/V(@\4```!!#[:$ -M)($#``"(0Q=)BT0D*$B)0QE!#[9$)!"(0R%!#[9$)$2(0R+HO?C__XA#(T$/ -MMD0D10^V4R6(0R1!#[:$)&`"``"#XON#X`'!X`()PHA3)4'VA"1@`@```G0& -M@\H!B%,E28M$)%!)C90DC`(``$B-2UU(B8.M````28M$)%!FB4,G28N$)&@" -M``!(B4,I08M$)#R)@[T```!)BX0D<`(``$B)0TE)BX0D>`(``$B)0U%!BX0D -MB`(``(E#64F+A"3,`@``2(F#G0```$F+A"34`@``2(F#I0```$F+A"2,`@`` -M2(E#74B+0@A(B4$(2(M"$$B)01!(BT(82(E!&$B+0B!(B4$@2(M"*$B)02A( -MBT(P2(E!,$B+0CA(B4$X387M='U)BT4H2(GO2(E#,4$/MD40B$,Y00^V142( -M0SKHH_?__XA#.T$/MD5%#[93/8A#/$$/MH5@`@``@^+[@^`!P>`""<*(4SU! -M]H5@`@```G0&@\H!B%,]28M%4$B)@[4```!)BT509HE#/TF+A6@"``!(B4-! -M08M%/(F#P0```$B)W^@`````O@`"``!(B>?H`````/?813'`2(GAB$,52(MU -M0+H!````2(M]..@`````28M&4$B+?3A%,<!(B>&Z`0```$B)QD@#=4!(+0`` -M`@!()0``_O](@>X`"```2"G&Z`````!,BW4X0?9&9!`/A/+\__],B??H```` -M`$B!Q``"``!;74%<05U!7L,QP,=#!`````#I/?W__\9#&`#IV?[__TR)Z$4Q -M[4F)Q.GP_/__@\H$B%,6Z7_]__]F9F:09F9FD%5(C6\84TB#[`A(BU\82#GK -M=0KK1TB+&T@YZW0_@+N`_/__!$B-@W#\__]VZ/:#T/[__P1TWTB+>!A(A?]T -M#9!(B?A(BW@82(7_=?1(B<?H`````$B+&T@YZW7!2(/$"%M=PV9F9I!F9I!F -M9I!F9I!!5%532(G[2(M_&$B%_W7TZ`````!,BZ.``@``B4,X387D=#%)BVPD -M"$@YW71.Z`````!(A>U!B00D=!EF9F:0Z`````")13@[0SAT\TB)[^@````` -M2(G?Z`````!(BT,(2(M`8$B%P'0-2(G?28G#6UU!7$'_XUM=05S#28ML)!#K -MJV9F9I!F9I!F9I!F9I!!54%454B)_5-(@^P(#[9'$(/H!3P%#X?4````#[;` -M_R3%``````^W1T9(]]A((8=H`@``]H>``P```0^%M`$``$B+55A(A=)U!TB# -M?5``=$^`?1`*#X2Z`0``@*5@`@``_DB%TG0Y@(UA`@``($B#?5@`="OVA8`# -M```!=')(BU482(72=`GV@H`#```!=!TQ]DB)[^@`````9F:09F:0]H6``P`` -M`71'2(M5&/:%80(```1U/O:%8`(```-T-4B+35!(A<D/A6<!``!(A=)T"?:" -M@`,```%T(X"-8`(```A(B>_H`````&9F9I!F9I!(BU482(72#X39````2(/$ -M"%M=05Q!7<-%,>U%,>2`?T0`=1/KV@^V541!C40D`4F#Q`$YPGY.2HM<Y6!( -MA=MTY8![$`1VWTB)W^@`````]H-@`@``!'0'@(U@`@``!`^V@V`"```/ME5$ -M@^`#/`*X`0```$0/1.A!C40D`4F#Q`$YPG^R187M#X1R____@*5@`@``_C'; -MA=)_&.E@____#[9%1(U3`4B#PP$YT`^.3?___TB+?-U@2(7_=..`?Q`$=MWV -MAV`"```!=-0/MH=@`@``@^"^@\@"B(=@`@``Z`````#KNO:%8`(```0/A!K_ -M__](@\0(2(GO6UU!7$%=Z0````!(BU=82(G02/?02(5'4`^$//[__X"/8`(` -M``+I,/[__P^V342X`0```(/I`4C3X$@Y15`/A2W^___I+_[__TB+15A(]]!( -MA<$/A+'^___IA/[__V9F9I!F9F:02(/L&$B)7"0(2(EL)!!(B?M(B?7H5_/_ -M_X3`=4/V@V$"```"2(M#"$B+<R@/MDM$#[90"G0Q,<#V@V`"```$=0](BUPD -M"$B+;"002(/$&,-(B=_H`````#'`Z^5F9F:0N/_____KV@^VP0^VTBG02&/0 -M2(GP2(G7,=)(]_<QTDB)[TB)QN@`````2(7`=-%(B<9(B=_H`````.N:9F9F -MD$%408G42XT$9%5(C2S&4TB)\P^V=2'H`````$B%P$B)QP^$*`$``("@@`,` -M`/X/MD,7B(>!`P``BT,$B4<XBX/&````A<")1T!U!HM#!(E'0`^V@\4```!( -MC740B$=(#[96%0^VAV`"``#`Z@*#X@&#X/X)T(B'8`(``$B+12E(B8=H`@`` -M0HN$H[T```")1SP/MDTDN`$```#3X(A/16:)1T9(BT8)2(E'*`^V32)(Q\#_ -M____@/D_B$]$#X:5````2(E'6$B+0TE(C5-=2(V/C`(``$B)AW`"``!(BT-1 -M2(F'>`(``(M#68F'B`(``$B+@YT```!(B8?,`@``2(N#I0```$B)A]0"``!( -MBT-=2(F'C`(``$B+0@A(B4$(2(M"$$B)01!(BT(82(E!&$B+0B!(B4$@2(M" -M*$B)02A(BT(P2(E!,$B+0CA(B4$X6UU!7$B)^,.X`0```$C3X$B#Z`'I6O__ -M_V9F9I!F9F:02('L.`(``$&X`0```+H!````2(F<)`@"``!,B:0D&`(``$B) -MX4R)M"0H`@``2(FL)!`"``!)B?Q,B:PD(`(``$R)O"0P`@``28GF2(MO.$R+ -M/TB+15!(B<9(`W=`2"T```(`2"4``/[_2(GO2('N``@``$@IQN@`````A<") -MPP^$RP```$F+="1`28M\)#A!N`$```!(B>&Z`0```.@`````@_C_08G%=%9, -MB??H`````$&!/O06>%H/A,0```"X_____TB+G"0(`@``2(NL)!`"``!,BZ0D -M&`(``$R+K"0@`@``3(NT)"@"``!,B[PD,`(``$B!Q#@"``##9F9FD(7;=;M( -MBT5028M\)#A!N`$```!(B>&Z`0```$B)QDD#="1`2"T```(`2"4``/[_2('N -M``@``$@IQN@`````A<`/A&3____I=/___V9FD&:02(GGZ`````"!/"3T%GA: -MD'0*N_[____I&?___[X``@``2(GGZ`````"$P`^$!/___^O?O@`"``!(B>=F -M9I!FD.@`````A,`/A2+___]%A>T/A4`$``"%VP^%EP4``$&`?B$$#X8&____ -M08!^(D!FD`^'^?[__T&`?CI`9F:09I`/A^G^__])BU\828U7&$4/MVXG30NN -MK0```$@YTW0F@+N`_/__!$B-JW#\__]V#DB#NXC\__\`#X0(!```2(L;2#G3 -M==HQTDR)]DR)_^AN_/__2(7`2(G%#X21_O__#[:58`(```^V342)T(/B_=#H -M00I&)8/@`0'`"<*`^3](Q\#_____B)5@`@``2(M54'<,N`$```!(T^!(@^@! -M3"'H2`G0#[:58`(``$B)15!!#[9&)8/B`<#H`H/@`3C"=",/MI5@`@``2(M% -M"(/B_HB58`(``(!X"@!T"8/*`HB58`(``$&+5@B%TG1E2(N-@`(``("-80(` -M``1(A<D/A.D"``"`>2@`#X3)`@``28M&#$@Y@:````!V$DB)@:````!!#[9& -M%(B!J@```$'V1A8$#X20!```2(M1$$B%T@^$<P0``$B+00A(.<(/A%0$``"+ -M13Q!.X:]````#X18`@``@(U@`@```DC'A6@"````````#[:5@`,``(G0@^+] -MT.A!"D86@^`!`<`)PHB5@`,``$&`?A@!00^V1B,/AIL!``!$#[;H2HM<[6!( -MA=L/A-L!```/MI.``P``#[9+1$B+>U")T(/B_=#H00I&%H/@`0'`"<*(DX`# -M```/MI-@`@``B="#XOW0Z$$*1CV#X`$!P`G"@/D_B)-@`@``2,?"_____TV+ -MAK4```!!#[=V/W<,N`$```!(T^!(C100#[?&3`G`2"'"2`GZ2(E34$$/MD8] -M#[:38`(``,#H`H/B`8/@`3C"=",/MI-@`@``2(M#"(/B_HB38`(``(!X"@!T -M"8/*`HB38`(``$$/MDX[2&/!2(-\PV``#X5R_/__3(EDPV"+0SQ!.X;!```` -M28E<)!@/A(4```"`BV`"```"2,>#:`(```````!(Q\#^____2(G?2-/`2"%# -M6.@`````#[:#8`(``*@0=0VH('04@\B`B(-@`@``2,>#:`(```````#VA8`# -M```!=$I(BX6``@``2(7`=#Y(BU`(2(72=#5(BW@02(7_="Q(.=5(#T7ZZ``` -M```QP.G8^___28M&04@Y@V@"``!V@$B)@V@"``#I=/___S'`Z;C[__\/MLA) -MB6PD&$B)[TACP4R)9,5@2,?`_O___TC3P$@A15CH``````^VA6`"``"H$'41 -MJ"`/A&W___^#R("(A6`"``!(QX5H`@```````.E4____N@$```!,B?9,B?_H -M(OG__TB%P$B)PP^$1?O__TB):!A*B43M8.G[_?__28M&*4@YA6@"```/AJG] -M__](B85H`@``Z9W]__])BT8,2#F!H`````^#1?W__^DN_?__28M'*$F-7RA( -M.=@/A-,````[4.A(C4CH#X2V````2(L`2#G8=>OIN0```$R)]^@`````28MT -M)$!)BWPD.$4QP$B)X;H!````Z`````!,B??H`````.F9^___BX.H_/__03M& -M!`^%Z/O___9#\`$/A>\```!!@'X8`0^&]/O__T$/MD8C2(M<Q6!(A=L/A.'[ -M___V@X`#```!#X34^___2(M[4$$/MT8_20N^M0```$@)Q^@`````2(M3"`^V -M4@HYT`^.K/O__TB)[^@`````Z8;[__](A<E(B8V``@``#X4S_/__28V_T``` -M`.@`````2(7`2(G!2(F%@`(```^$`?K__S'`Q@0(`$B#P`%(/;````!U\$F+ -M1S!(C5$82(E9&$F)5S!(B1!(B4$@08M&"(D!28M&#$B)@:````!!#[9&%(B! -MJ@```$'V1A8"#X3$^___2(N%@`(``,9`*`'IM/O__TR)[T@+N\#\___H```` -M`$B+DWC\__\/ME(*.=`/CT+____IZO[__TR)]^@`````2(M%4$B)QDD#="1` -M2"T```(`2"4``/[_2('N``@``$@IQNE__O__N/____](QT$(`````.D^^?__ -M2(M!"$B)ZDB):1#I@?O__TB+00A(A<!T"4B+41#I;_O__TB+41!(B>A(B6D( -MZ5_[__]F9F:09F9FD%5(B?U32(/L"$B+7Q@/MD-$A,`/MM`/A!L"```QR4@Y -M>V!U$^D.`@``9F9FD&9FD$@Y;,M@=`M(@\$!2#G19I!U[K@!````2-/@2`E# -M6$B)W^@`````]H.``P```0^%O0```$B+0QA(A<`/A)8!``!(BT`(2(G?_U`P -M,?:`>T0`=%M(BU3S8$B%TG1$]H*``P```70[@'H0!'8U#[:*8`(``(G(@^"/ -M2#GJB()@`@``#X1?`0``]H)@`@```701@^&.@\D"B(I@`@``9F:09I`/MD-$ -M2(/&`4@Y\'>E2(N#@`(``$B%P`^$#@$``$B+4`A(A=(/A`$!``!(BW@02(7_ -M#X3T````2#G32`]%^H"G@`,``/Y(@\0(6UWI``````^V@V`"``"#X+^H((B# -M8`(``'04@\B`2,>#:`(```````"(@V`"```/MI-@`@``B="#X/Z(@V`"``!( -MBT-82/?02(5#4'4)@^+LB)-@`@``2(MS&$B%]@^$A0```("F8`(``/Z`?D0` -M='@Q[3')9I!(BU3.8$B%TG0V]H*``P```70M@'H0!'8G]H)@`@```70>#[:" -M8`(``+T!````@^"L@\@"B()@`@``9F:09F:0#[9&1$B#P0%(.<AWLTB#NX`" -M````=%[V@V`"```$=3.%[74Y@(MA`@``($B#Q`A;7<,Q[>O72(G?Z`````!F -MD.EE_O__@^&,B(I@`@``Z:W^__](B=_H`````.O'2(G?Z`````#KO;@!```` -M9F9FD.D%_O__2(M#&$B%P&9F9I!T"DB#N(`"````=8N+4S"%TG@/,?9(B=_H -M`````.EU____2(7`#X1L____BT`PA<!YX>E@____D)"0D)"0D)"02(L%```` -M`$B%P'0S,<EFD(!X#`%(BP"#V?](A<!U\87)=!R+%0````"-@O\/``"%T@]( -MT,'Z#(G0P?H?]_G#BP4`````C9#_#P``A<`/2,+!^`S#9F9FD&9F9I!F9F:0 -M\\-F9F:09F9FD&9FD&9FD$B+AX@!``!(B4882(FWB`$``,-F9F:09F:09F:0 -M9F:0,<##9F9FD&9FD&9FD&9FD$%428G\55.+AW`!``#'A[@!````````28NL -M))`!``!(A>UT0SE%`'=H23FL))@!```/A(X```!(BT4@28F$))`!``!(QT4@ -M`````$B+?1#_50A)BZPDD`$``$&+A"1P`0``2(7M=;T]?P$``'<>28N<)(@! -M``!(A=MT$3'V2(L[_U,(2(M;&$B%VW7O6UU!7,-)BYPDB`$``$B%VW3N9I!( -MBSN+=0#_4PA(BUL82(7;=>Y!BX0D<`$``#M%``^#5/___^O'2<>$))@!```` -M````2<>$))`!````````Z6'___]F9F:09F9FD&9FD&9FD%5(B?U32(/L"$B+ -MGX@!``!(A=MT%$B+.[[______U,(2(M;&$B%VW7L,<!(@WU8``^5P$B#Q`A; -M7<-F9I!F9I!3BX>X`0``2(G[A<!T`EO#2(F[J`$``$C'AZ`!````````2(VW -MH`$``$C'A[`!````````2(U_6.@`````QX.X`0```0```%O#9F9FD&9FD$B# -M[`A(@[^0`0```'0B2(N'F`$``$B)<"!(B;>8`0``Z`````"X`0```$B#Q`C# -MD(N'<`$``#L&<Q!(B;>8`0``2(FWD`$``.O62(M^$/]6"#'`Z]5F9F:09F9F -MD&9FD$B!QV@!``#I`````&9F9I!(@<=H`0``Z0````"0D)"0#[9'%(G""E<5 -M@^#[@^($"=`/ME<5B<&#X/Z#X0&#X@$)R@G0B$<4#[9')(G""E<E@^#[@^($ -M"=`/ME<EB<&#X/Z#X0&#X@$)R@G0B$<DPY`/MD<EB<(*5R:#X/N#X@0)T`^V -M5R:)P8/@_H/A`8/B`0G*"="(1R4/MD<]B<(*5SZ#X/N#X@0)T`^V5SZ)P8/@ -M_H/A`8/B`0G*"="(1SW#````````````````````````````EC`'=RQA#NZZ -M40F9&<1M!X_T:G`UI6/IHY5DGC*(VPZDN-QY'NG5X(C9TI<K3+8)O7RQ?@<M -MN.>1';^09!"W'?(@L&I(<;GSWD&^A'W4VAKKY-UM4;74],>%TX-6F&P3P*AK -M9'KY8OWLR66*3UP!%-EL!F-C/0_Z]0T(C<@@;CM>$&E,Y$%@U7)Q9Z+1Y`,\ -M1]0$2_V%#=)KM0JE^JBU-6R8LD+6R;O;0/F\K.-LV#)U7-]%SPW6W%D]T:NL -M,-DF.@#>48!1U\@68="_M?2T(2/$LU:9E;K/#Z6]N)ZX`B@(B`5?LMD,QB3I -M"[&'?&\O$4QH6*L=8<$]+6:VD$'<=@9QVP&\(-*8*A#5[XF%L7$?M;8&I>2_ -MGS/4N.BBR0=X-/D`#XZH"988F`[ANPUJ?RT];0B7;&21`5QCYO11:VMB86P< -MV#!EA4X`8O+ME09L>Z4!&\'T"()7Q`_UQMFP95#IMQ+JN+Z+?(BY_-\=W6)) -M+=H5\WS3C&5,U/M88;)-SE&U.G0`O*/B,+O40:7?2M>5V#UMQ-&D^_36TVKI -M:4/\V6XT1HAGK="X8-IS+01$Y1T#,U],"JK)?`W=/'$%4*I!`B<0$`N^AB`, -MR26U:%>SA6\@"=1FN9_D8<X.^=Y>F,G9*2*8T+"TJ-?'%SVS68$-M"X[7+VW -MK6RZP""#N.VVL[^:#.*V`YK2L70Y1]7JKW?2G14FVP2#%MQS$@MCXX0[9)0^ -M:FT-J%IJ>@O/#N2=_PF3)ZX`"K&>!WU$DP_PTJ,(AVCR`1[^P@9I75=B]\MG -M98!Q-FP9YP9K;G8;U/[@*].)6GK:$,Q*W6=OW[GY^>^^CD.^MQ?5CK!@Z*/6 -MUGZ3T:'$PM@X4O+?3_%GN]%G5[RFW0:U/TLVLDC:*PW83!L*K_9*`S9@>@1! -MP^]@WU7?9ZCOCFXQ>;YI1HRS8<L:@V:\H-)O)3;B:%*5=PS,`T<+N[D6`B(O -M)@55OCNZQ2@+O;*26K0K!&JS7*?_U\(QS]"UBY[9+!VNWENPPF2;)O)C[)RC -M:G4*DVT"J08)G#\V#NN%9P=R$U<`!8)*OY44>KCBKBNQ>S@;M@R;CM*2#;[5 -MY;?OW'PAW]L+U-+3AD+BU/'XL]UH;H/:'\T6OH%;)KGVX7>P;W='MQCF6@B( -M<&H/_\H[!F9<"P$1_YYECVFN8OC3_VMA1<]L%GCB"J#NT@W75(,$3L*S`SEA -M)F>G]Q9@T$U':4G;=VX^2FK1KMQ:UMEF"]]`\#O8-U.NO*G%GKO>?\^R1^G_ -MM3`<\KV]BL*ZRC"3LU.FH[0D!3;0NI,&U\TI5]Y4OV?9(RYZ9K.X2F'$`AMH -M790K;RHWO@NTH8X,PQO?!5J-[P(M```````````````````````````````` +M`````&9F9I!F9F:09F9FD&9FD$C'1R@`````2(E_,$B-=RA(QT<X`````$B+ +M/TB#QTCI`````&9F9I!F9F:09F9FD$B+1PA(QT<P`````$B-=S!(B7\X2,=' +M0`````!(BSA(@\=(Z0````!F9F:09F9FD%.`O[(````!2(G[=!0/MH>S```` +M@\`!/`*(A[,```!V/TB+.TB+<WA(@<?P````Z`````!(BSM(QT,H`````$B- +M<RA(B5LP2,=#.`````!;2(/'2.D`````9F9FD&9FD$B+1WC&A[(`````2,=` +M$`````!(BT=X2(U0&$C'0"@`````2,=`,`````!(QT`X`````,=`0`````!( +MB5`82(E0(%OI`````&9F9I!F9F:02(M'6(L0@^H!A=*)$'4D2,='*`````!( +MB7\P2(UW*$C'1S@`````2(L_2(/'6.D`````Z0````!F9F:09F9FD$B#[!A( +MB1PD2(EL)`A,B60D$$B+1U!(BY"``@``2(MJ"$@YQ0^$F````$B%[70)]H6` +M`P```7482(L<)$B+;"0(3(MD)!!(@\08Z7'___^03(MG6`^VG[$```#H```` +M`$B+?0"+=33`ZP3H`````$B)QP^V@+$```"#XP/!XP1(B6]0QH>P````!$R) +M9UC&A[(`````2,>'R`````````"#X,\)V(B'L0```$B+'"1(BVPD"$R+9"00 +M2(/$&.D`````2(MJ$.E?____9F:09I!(@^P83(ED)!!(B5PD"$F)_$B+7UA( +MBWL0_U,(28L\)$B)WDB!QQ`!``#H`````$R)YTB+7"0(3(MD)!!(@\08Z0`` +M``!F9F:09F9FD&9FD$%428G\55-(@>S`````2(MO4$B-M"2`````2(M=>$B+ +M16A(B[V`````_U!X2(M#"$B)YDB+>Q#_4#A(C8PDM````$B-E"2X````2(VT +M)+P```!(B=_H9LK___:$)(H````"=&R+E"2T````#[:$)(P````!PD&`O"2R +M`````71@B[0DO````$C'QP`````QP.@`````2(GNOQH```#H`````$B+?0!) +MBW0D6$B!QY````#H`````$R)Y^@`````2('$P````%M=05S#9F:09I"+E"2X +M````ZY)F9F:09F:0B[0DO````$C'QP`````QP.@`````2(GNOQL```#H```` +M`.N>9F9FD&9F9I!F9F:02(/L&$B)7"0(2(EL)!!(BU]82(M#"$B+*.@````` +M2(US,$C'0S``````2(E;.$B-?4A(QT-``````$B+7"0(2(ML)!!(@\08Z0`` +M``!F9I!(@^PX2(E<)`A(B6PD$$B)^TR)9"083(EL)"!,B70D*$R)?"0P@+^R +M`````4B+;UA,BR],BW4(3(ME$$V+O>`!``!T&`^VA[,```"#P`$\`HB'LP`` +M``^&UP```$B+<WA)C;WP````Z`````!(B=_H`````$V%Y$F+5S`/A)\```!! +MBX0DZ`,``(D"@\`!#X22````08".80(```1)B:PD@`(``$B-51A!@(PD80(` +M``1)C44H2(UU,$&`I"1@`@``_4F)KH`"``!)C7U(28M-,$B)11A)B54P2(D1 +M2(E-($C'13``````2(EM.$C'14``````2(M<)`A(BVPD$$R+9"083(ML)"!, +MBW0D*$R+?"0P2(/$..D`````9F:09I#'`O____]!QT=0_____^EA____2(M' +M>,:'L@````!(QT`0`````$B+1WA(C5`82,=`*`````!(QT`P`````$C'0#@` +M````QT!``````$B)4!A(B5`@2(M<)`A(BVPD$$R+9"083(ML)"!,BW0D*$R+ +M?"0P2(/$..D`````9F9FD$%7059)B?Y!54%455-(@^P(2(MO*$R+;S"+?0#H +M``````^V300/MG4%28G$0<=&4/____\/ME4&@/H+#X>O````@'T'"P^'I0`` +M``^VP8E$)`0/ML(#1"0$@_@+?@>Y"P```"C108A-!`^V30=`#[;6#[;!`="# +M^`M^"+X+````0"C.08!]!`!-C7T(08AU!0^$B0```#';ZP]F9I!F9I"#PP%! +M.%T$=G9)BW0D4`^V109(B=E(P>$)0;@!````N@$```"!X0#^`0!,B>=(@>X` +M``(`3`'Y2('F``#^_T@!Q@^VPT@!QN@`````A<!TL$G'1E@`````38EV8$F- +M=EA)QT9H`````$F+?A!(@\0(6UU!7$%=05Y!7^D`````08!]!0!T4S';ZP]F +M9I!F9I"#PP%!.%T%=D`/MG4'#[;+`TPD!$D#="10#[;#0;@!````N@$```!, +MB>?!X0E(8\E(C;0&`/C__TP!^>@`````A<!TO.EW____0<=&4`````#I:O__ +M_V9F9I!F9I!F9I!!5D%5051)B?Q54TB+7RB+.TR-<PSH`````$F)Q4F+1"0P +MQP``````0<=$)%``````@'L'`'0'28G&28/&!(![!@!T9S'MZPF#Q0%`.&L& +M=EI)BT50#[=S!$B)Z40/MD,'2,'A";H!````@>$`_@$`3(GO2"T```(`3`'Q +M2"4``/[_2(UT!@M`#[;%2`'&Z`````"%P'2Q28M$)##'`/____]!QT0D4/__ +M__])QT0D6`````!-B60D8$F-="182<=$)&@`````28M\)!!;74%<05U!7ND` +M````9F9FD&9FD%.`O[(````!2(M?6$B+2S!T/H"_D@````!U-<=#4/_____H +M`````$C'0U@`````2(E;8$B-<UA(QT-H`````$B+>Q!;Z0````!F9F:09F:0 +MQT-0``````^VAY(```"$P(@!=1R+AY0```")001(BU,X2(72=*R+002#P`B) +M`NNB#[:'D0```(E!!.OA9F9FD$B![,@```!(B:PDH````$B)G"28````2(G] +M3(FD)*@```!,B:PDL````$R)M"2X````3(F\),````!(BT<H#[90`@^V"(#Z +M`P^$*0$``(#Z!`^$20$``(!X`05V!H!X!?YT?P^V^3'VZ)/#__](B<-(BT40 +M2(M52$B)[DC'14@`````2(FH*`(``$B)D"`"``!(QX`P`@```````$B+0PA( +MBWL0_Y#X````2(N<))@```!(BZPDH````$R+I"2H````3(NL)+````!,B[0D +MN````$R+O"3`````2('$R````,-$BW<@,?8/MOE,C7@+1`^V8`OH!\/__TB% +MP$B)PW0_2(M#"$B+@`@!``!(A<!T$DB+>Q#_T$0XX`^'ZP```$$HQ$B+&TB% +MVW052(M#"$B+>Q!(B>;_4#B`?"03`'3!2(M%.,<``````$B+?1!(C758QT50 +M_____TC'15@`````2(EM8$C'16@`````Z`````#I,____P^V0`1(C;0DC``` +M``^V^8F$)(P```#H;L+__TB)P^G6_O__9F:09F:0,?8/MOE,C7`#1`^V8`/H +M3<+__TB%P$B)PW4MZXUF9I!!*,1(BQM(A=L/A'O___](BT,(2(M[$$B)YO]0 +M.(!\)!,`#X5B____2(M#"$B+@`@!``!(A<!TRTB+>Q#_T$0XX':]18@FZ67^ +M__]%B"=(BT4X1(DPZ5;^__]F9I!F9I!(BU<02(UW6$B)?V!(QT=H`````$B+ +M@B`"``!(QT=8`````$B)1TA(B=?I`````)!!5T4QP$%6055)B?U!5%532('L +MJ````$B+1RA(BRT`````BP!(A>V)1"0<2(M','1I3(UX!$R-="0@13'D2(M= +M$$B%VW4.ZT5!@\0!2(L;2(7;=#E(BT,(1(E$)`A,B?9(BWL0_U`X@'PD,P!$ +MBT0D"'3923EM$'7/08/``40Y1"0<18DG=@])@\<$Z[M(BVT`2(7M=:=)BT4P +M28M]$$F-=5A)QT58`````$V);6!)QT5H`````$2)`.@`````2('$J````%M= +M05Q!74%>05_#BS4`````.S4`````2(M/,`^$B@```$ACQDB-%(!(C1102(L$ +ME0````!(B0%(BP25`````$B)00A(BP25`````$B)01!(BP25`````$B)01A( +MBP25`````$B)02"+!)4`````B4$HC48!B<+!^A_!ZAP!T(/@#RG0B04````` +M2,='6`````!(B7]@2(UW6$C'1V@`````2(M_$.D`````D,='4/_____KU69F +M9I!F9I!(@^PH,?9(B5PD"$B);"002(G[3(ED)!A,B6PD($B+1RB+.$2+:`2+ +M:`A$BV`,Z/V___](A<!(B<%T?(7M=%A(BU,H2(M`"$4QP$B+>1!$B>Y$B>%( +M@\(0_Y`P`0``2(M[$$B-<UA(QT-8`````$B)6V!(QT-H`````$B+7"0(2(ML +M)!!,BV0D&$R+;"0@2(/$*.D`````2(MY$$B+4S!!N`$```!(BT`(1(GA1(GN +M_Y`P`0``ZZ?'0U#^____ZYY5,?932(G[2('LB````$B+1RB+..A7O___2(7` +M2(G"2(MK,'1+2(M`"$B)YDB+>A#_4#@/MT0D!&:)10`/MT0D!F:)10)(BWL0 +M2(US6$C'0U@`````2(E;8$C'0V@`````Z`````!(@<2(````6UW#QT-0_O__ +M_^O,9F9FD&9FD$B#["A(B6PD$$R)9"082(G]2(E<)`A,B6PD($B+1RA,BV\P +MBQA,C6`$B=^#ZP'H`````(/[_4B)Q[@`````2`]'^$$/MD0D"H3`=0E!#[9$ +M)`[`Z`1%#[9$)`Y!#[9T)`P/ML!!#[94)`U)C4PD?$&)P4&#X`_HQ<7__TB+ +M?1!(C75828E%`$C'15@`````2(EM8$C'16@`````2(M<)`A(BVPD$$R+9"08 +M3(ML)"!(@\0HZ0````!F9F:09F9FD$B#["A,B60D"$R)="0828G\2(D<)$R) +M;"003(E\)"!,BV\H3(M_,$&+70!-C74$B=^#ZP'H`````$4/MD8"00^V=02# +M^_U!#[96`4B)QTF-372X`````$@/1_A%,<E!@^`/Z!G%__])BWPD$$F-="18 +M28D'2<=$)%@`````38ED)&!)QT0D:`````!(BQPD3(MD)`A,BVPD$$R+="08 +M3(M\)"!(@\0HZ0````!F9F:04TB+1RA(BU\P1(L03(U;!$6%TGY]3(L-```` +M`$V%R71Q13'`28M)&$F-<1A(.?%U"NM52(L)2#GQ=$V`N8#\__\!2(V!</S_ +M_W7HBX#H`P``26/008/``44YPD&)!)-UTD2)P$C'1U@`````2(E_8$B-=UA( +MQT=H`````(D#6TB+?Q#I`````$V+"4V%R764Z\\QP.O.9F9FD&9FD&9FD%53 +M2(M'*$B+;S!$BQA(C5T$187;#X[(````3(L5`````$V%T@^$N````$4QR4F+ +M2AA-C4(83#G!=1+IDP```)!(BPE,.<$/A(8```!(@[F(_/__`$B-L7#\__]U +MXP^V@8#\__\\!'972(N!\/[__TB%P'0-2(-X"`!T!D@Y<!!TOXN&Z`,``$EC +MT4&#P0&)!)-%.=EUJD2)R$C'1U@`````2(E_8$B-=UA(QT=H`````(E%`%M= +M2(M_$.D`````+`%USO:!U/S__P)TQ69F9I#KKTV+$DV%T@^%3____V:0Z[0Q +MP.NS9F9FD&9FD&9FD$%7,?9!5D%5051)B?Q54TB![(@```!(BT<H3(MW,(LX +MBV@$1(MX".C$N___2(7`2(G#0<=$)%#_____=#QF9I!(BT,(2(N`"`$``$B% +MP'0,2(M[$/_0.<5\5RG%2(L;2(7;=!5(BT,(2(M[$$B)YO]0.(!\)!,`=,=) +MBWPD$$F-="182<=$)%@`````38ED)&!)QT0D:`````#H`````$B!Q(@```!; +M74%<05U!7D%?PTB+0P@QR4B+>Q!-B?!$B?J)[O^0*`$``(7`=:Q!QT0D4``` +M``#KH69F9I!F9F:005<Q]D%6055!5$F)_%532('LB````$B+1RA,BW\PBSB+ +M:`3HZ+K__TB%P$B)PT''1"10_____W1#13'M9F9FD$B+0PA(BX`(`0``2(7` +M=`](BWL0_]`YQ7Q:*<5!`<5(BQM(A=MT%4B+0PA(BWL02(GF_U`X@'PD$P!T +MQ$F+?"0028UT)%A)QT0D6`````!-B60D8$G'1"1H`````.@`````2('$B``` +M`%M=05Q!74%>05_#2(M#"$B+@"@!``!(A<!TN$4QP#'22(M[$$R)^8GN_]"% +MP'6D00^V1P(\_W0'1`'H08A'`D''1"10`````.N)9F9FD&9FD&9FD&9FD$%7 +M,?9!5D%5051)B?Q54TBYO]0.(!\)!,`=,1)BWPD$$F-="182<=$ +M)%@`````38ED)&!)QT0D:`````#H`````$B!Q(@```!;74%<05U!7D%?PTB+ +M0PA(BX`@`0``2(7`=+A(BWL03(GZB>[_T(7`=:E!#[9'`CS_=`=$`>A!B$<" +M0<=$)%``````ZXYFD$%7,?9!5D%5051)B?Q54TBYO]0.(!\)!,` +M=,1)BWPD$$F-="182<=$)%@`````38ED)&!)QT0D:`````#H`````$B!Q(@` +M``!;74%<05U!7D%?PTB+0PA(BX`8`0``2(7`=+A(BWL03(GZB>[_T(7`=:E! +M#[9'`CS_=`=$`>A!B$<"0<=$)%``````ZXYFD$%7,?9!5D%5051)B?Q54TB! +M[(@```!(BT<H3(M_,(LXBV@$Z`BX__](A<!(B<-!QT0D4/____]T0T4Q[69F +M9I!(BT,(2(N`"`$``$B%P'0/2(M[$/_0.<5\6BG%00'%2(L;2(7;=!5(BT,( +M2(M[$$B)YO]0.(!\)!,`=,1)BWPD$$F-="182<=$)%@`````38ED)&!)QT0D +M:`````#H`````$B!Q(@```!;74%<05U!7D%?PTB+0PA(BX`0`0``2(7`=+A( +MBWL03(GZB>[_T(7`=:E!#[9'`CS_=`=$`>A!B$<"0<=$)%``````ZXYFD$%5 +M,?9!5%5(B?U32('LB````$B+1RB+..@CM___,=)(A<!(B<-T0D4QY&9FD&9F +MD$B+0PA(BX`(`0``2(7`=`E(BWL0_]!!`<1(BQM(A=MT%4B+0PA(BWL02(GF +M_U`X@'PD$P!TRD2)XDB+13!(BWT02(UU6$C'15@`````2(EM8$C'16@````` +MB1#H`````$B!Q(@```!;74%<05W#9I!32(M'*$B)^TB+5S"+<`2+..BZN/__ +MA<!T!\=#4/____](QT-8`````$B)6V!(C7-82,=#:`````!(BWL06^D````` +M9F9FD&9FD&9FD&9FD%5(B?TQ]E-(@>R(````2(M'*$B+7S"+..@SMO__2(7` +M2(G"='\QP,8$&`!(@\`!2(/X1'7R2(G@2(V,)(````#&``!(@\`!2#G(=>Q( +MBT((2(MZ$$B)YO]0.`^V1"1QB`,/MD0D<HA#`0^V1"1SB$,"#[9$)'2(0P-( +MBWT02(UU6$C'15@`````2(EM8$C'16@`````Z`````!(@<2(````6UW#QT50 +M_____^O,9F:02(/L&$B)7"0(3(ED)!!(B?M,BV<PZ%:W__](BWL02(US6$C' +M0U@`````08D$)$B)6V!(QT-H`````$B+7"0(3(MD)!!(@\08Z0````!F9I!5 +M2,?&`````%-(B?M(@^P(2(MO*$B)[^CDM/__A<!U,0^V12"(!0````!(QT-8 +M`````$B)6V!(C7-82,=#:`````!(BWL02(/$"%M=Z0````!(Q\8`````2(GO +MZ*"T__^%P'43#[9%((T$Q7#^__^)!0````#KLTC'Q@````!(B>_H>K3__X7` +M=$I(Q\8`````2(GOZ&>T__^%P'5&2(M[$$C'AR`"````````2(F?*`(``$C' +MAS`"````````2(/$"%M=2(VW(`(``$B#QTCI``````^V12"(!0````#I1___ +M_TC'Q@````!(B>_H#K3__X7`=1%(BWL02,>'(`(```````#KI<=#4/_____I +M%____V9F9I!F9I!F9I!F9I!(BT<P2,='6`````!(C7=82(E_8$C'1V@````` +M2(M_$,<````!`ND`````9F:09I!!5D%505152(G]4TB#[$!(BT4H2(M_$,9$ +M)#`'@'@@`4R-9Q@9P(/``HA$)#A(BU\83#GC="5,C70D,&9FD&:0]D/P`70) +M@+N`_/__`70]2(L;3#GC=>E(BWT02(UU6,=%4`````!(QT58`````$B);6!( +MQT5H`````.@`````2(/$0%M=05Q!74%>PTB+@]C\__](B[OP_/__2(GF_U!X +M#[9$)`\Z1"0X=*1(BX/8_/__2(N[\/S__TR)]O^0P````.N+9F9FD&9F9I!F +M9F:02(/L*$B)'"1,B60D$$B)^TB);"0(3(EL)!A,B70D($B+;UA,BS=(BT4H +M1(LH1(GOZ`````"`N[(````!28G$=!@/MH.S````@\`!/`*(@[,````/AI<` +M``!(BW-X28V^\````.@`````2(G?Z`````"+11@]*?\``'1E/3G_``!T7DV% +MY'0/28L$)$PY\&:0#X3`````2(M]$$B-=5C'15#^____2,=%6`````!(B6U@ +M2,=%:`````!(BQPD2(ML)`A,BV0D$$R+;"083(MT)"!(@\0HZ0````!F9I!F +M9I!(BT4P1(DHZYEF9F:09F:02(M#>,:#L@````!(B=](QT`0`````$B+0WA( +MC5`82,=`*`````!(QT`P`````$C'0#@`````QT!``````$B)4!A(B5`@2(L< +M)$B+;"0(3(MD)!!,BVPD&$R+="0@2(/$*.D`````2(VP(`(``$B->$A(QX`@ +M`@```````$B)J"@"``!(QX`P`@```````$B+'"1(BVPD"$R+9"003(ML)!A, +MBW0D($B#Q"CI`````)!(BS=(@<;H`0``Z0````"02(/L"$B+1RB+..@````` +M2(/$"$B)Q^O89F9FD&9F9I!(@^P(2(M'*(LXZ`````!(@\0(2(G'Z[AF9F:0 +M9F9FD$B#[`A(BT<H@'@$`8LX=`5(@\0(P^@`````2(/$"$B)Q^N-9F9FD&9F +MD&9FD&9FD$%528G]05154TB#[`A(BT<HBQ!F]\(`_W5$08G408'D_P```'XX +M,>V[!````.L%D$F+12B+/!CH`````$B%P'01@'@0!'8+2(.X@`(```"0=!># +MQ0%(@\,$1#GE==)(@\0(6UU!7$%=PTB)Q^@/____Z]]F9F:09F:09F:09F:0 +M2(/L"$B+1RB+..@`````2(/$"$B)Q^GE_O__9F:09I!(@^P82(EL)!!(B5PD +M"$B+1RB+6`2+..@`````@_L-2(G%=#2#^P%T&8/[!'04@_L'=`](BUPD"$B+ +M;"002(/$&,-(B>](BUPD"$B+;"002(/$&.F(_O__2(7`=-9(BX"``@``2(7` +M=,I(BW@(2(7_=`SH:?[__TB+A8`"``!(BW@02(7_=;[KJF9F9I!F9I!(@^P8 +M3(ED)!!(B5PD"$B+1RB+6`2+..@`````B=])B<3H`````$R)YTB)P^@?_O__ +M2(G?3(MD)!!(BUPD"$B#Q!CI"?[__V9FD&9FD&9FD$B#[`A(BT<HBSCH```` +M`$B#Q`A(B<?IY?W__V9FD&:02(/L"$B+1RB+..@`````2(/$"$B)Q^G%_?__ +M9F:09I!32(M'*(LXZ`````!(A<!(B<-T,$B+@(`"``!(A<!T)$B+>`A(A?]T +M#.B2_?__2(N#@`(``$B+>!!(A?]T$EOI?/W__TB)WUOI<_W__V9FD%O#9F9F +MD&9F9I!F9I!F9I!54TB#[`A(BV\H2(/%!(!]#0!T(#';B=B#PP&+?(5\Z``` +M``!(B<?H-/W__P^V10TYV'?B2(/$"%M=PV9FD&:055-(@^P(2(MO*$B#Q02` +M?0$`="`QVXG8@\,!BWR%<.@`````2(G'Z/3\__\/MD4!.=AWXDB#Q`A;7<-F +M9I!FD%532(/L"$B+;RB`?0T`="`QVXG8@\,!BWR%?.@`````2(G'Z+C\__\/ +MMD4-.=AWXDB#Q`A;7<-F9I!F9I!F9I!54TB#[`A(BV\H@'T!`'0@,=N)V(/# +M`8M\A7#H`````$B)Q^AX_/__#[9%`3G8=^)(@\0(6UW#9F:09F:09F:055-( +M@^P(2(MO*(!]`0!T(#';B=B#PP&+?(5HZ`````!(B<?H./S__P^V10$YV'?B +M2(/$"%M=PV9FD&9FD&9FD%532(/L"$B+;RB+?0"%_W0=,=N#PP&)V(M\A0#H +M`````$B)Q^CW^___.5T`=^5(@\0(6UW#9F9FD&9F9I!F9I!52(G]2,?&```` +M`%-(@^P(2(M_*.@'K?__A<!U.4B+11!(BU@82(/`&$@YPW0H9I#V0_`!2(V[ +M</S__W0)@+N`_/__`7072(M%$$B+&TB#P!A(.=AUVDB#Q`A;7</H?OO__^OB +M9F9FD&9F9I!F9F:005=!5D%505152(G]4TB![)@```!,BV\03(MW*$F+71A- +MC6483#GC="I,C;PD@````/9#\`%(C;MP_/__=`V`NX#\__\!#X2V````2(L; +M3#GC==Y!#[9&((@%`````$F+71!(A=MU$>M>9F9FD&9FD$B+&TB%VW1/2(M# +M"$B+>Q!(B>;_4#CV1"01$'3C28V=.`$``$R)[TB)WN@`````0<>%.`$```"' +MDP-)QX5(`0```````$B)WDV)K5`!``!,B>_H`````$B+?1!(C758QT50```` +M`$C'15@`````2(EM8$C'16@`````Z`````!(@<28````6UU!7$%=05Y!7\/H +M`````,:$)(`````(00^V1B!,B?Z(A"2(````2(N#V/S__TB+N_#\____D,`` +M``#I%?___V9F9I!F9I!F9I!(@^PH2(E<)`A(B6PD$$B)_4R);"0@3(ED)!A) +MB?6+=S1(BS_H`````$B%P$B)PP^$:0(``$4QY,:`L`````-!@7T80O\``$B) +M:%!!#Y3$187D#X6X````28M5*#'`@'H*]`^4P(7`#X6X````187D#X1*`0`` +M#[9"$CP!#X0!`@``/`(/A,<!```/MD(/B(.;````#[=""&:)@Y0````/MT(* +M9HF#E@````^W0@QFB8.8````#[9"#HB#F@````^W0@1FB8.0````#[="!F:) +M@Y(````/MT(09HF#G````$R):UA(QX/(`````````$B)WTB+;"002(M<)`A, +MBV0D&$R+;"0@2(/$*.D`````D$F+52@QP(!Z#_0/E,"%P`^$2/___TB+?0!( +M@<>0````Z`````!(A<!(B<4/A)X!``!%A>0/A>8```!)BW4H2(/&$$B)[[H` +M`@``Z`````"`B[$````$2(FKH````$F-=5C&@YL```#T9L>#G`````$`28M] +M$$B):UA(QX/(`````````$''15``````2<=%6`````!-B6U@2<=%:`````#H +M`````.DU____9F:09F:0#[9"##P!#X2<````/`)FD'1K#[9""HB#FP````^V +M0@9FB8.4````#[9"!V:)@Y8````/MD((9HF#F`````^V0@F(@YH````/MD($ +M9HF#D`````^V0@5FB8.2````#[9""V:)@YP```#IL_[__V9FD$F+=2A(@\84 +MZ17___^`B[$````$2(U"$$B)@Z````#K@8"+L0````1(C4(42(F#H````.DB +M_O__@(NQ`````DF+13!(@\`02(F#H````.E/____@(NQ`````DF+13!(@\`4 +M2(F#H````.GL_?__28M]$$F-=5A!QT50_?___TG'15@`````38EM8$G'16@` +M````2(M<)`A(BVPD$$R+9"083(ML)"!(@\0HZ0````!)BWT028UU6$''15#_ +M____2<=%6`````!-B6U@2<=%:`````#H`````$B)WTB+;"002(M<)`A,BV0D +M&$R+;"0@2(/$*.D`````9F9FD&9F9I!32(M'*$B)^XLXZ`````!(B=Y(B<=; +MZ;7\__]F9I!FD%-(BT<H2(G[BSCH`````$B)WDB)QUOIE?S__V9FD&:02(/L +M*$B)7"0(2(EL)!!,B6PD($R)9"0828G]3(MG*$&+/"3H`````(MP-$B+.$B) +MQ>@`````2(7`2(G##X3*````3(EH6$B):%#&@+`````"00^V1"0$/`$/A)$` +M```\`@^$F0```$$/ME0D!TB-NY@```!)C70D".@`````00^V1"0'B(.0```` +M08M$)!B)@Y0```!!#[9%((/H"(3`B(.1````=`])BT4P2(/`"$B)@Z@```!( +MQX/``````````$C'@\@`````````2(G?2(ML)!!(BUPD"$R+9"083(ML)"!( +M@\0HZ0````!F9F:0@(NQ`````NEK____9F9FD("+L0````3I6____TF+?1!) +MC7580<=%4/W___])QT58`````$V);6!)QT5H`````$B+7"0(2(ML)!!,BV0D +M&$R+;"0@2(/$*.D`````9F:055-(B?M(@^Q82(M'*$B+;S!(B>*+<`2+..@2 +MJ?__A<!T+\=#4/____](BWL02(US6$C'0U@`````2(E;8$C'0V@`````Z``` +M``!(@\186UW#2(L$)$B)10!(BT0D"$B)10CKQ69F9I!F9F:09F9FD$%4@#T` +M`````4F)_%53QT=0`````$B+;RA(BU\P#X8.`0``2,?&`````$B)[^@.IO__ +MA<`/A(8```!(Q\8`````2(GOZ/>E__^%P`^%OP```$B+10!(B0-(BT4(2(E# +M"$B+11!(B4,02(M%&,9#1`#&0T$`QD-``DB)0Q@/MD5%B$-%#[8%`````(A# +M(&9FD$G'1"18`````$V)9"1@28UT)%A)QT0D:`````!)BWPD$%M=05SI```` +M`&9FD&9FD$B+10!(B0-(BT4(2(E#"$B+11!(B4,02(M%&,9#1`#&0T$`QD-` +M`4B)0Q@/MD5%B$-%BP4`````!9`!``"-4`>%P`](PL'X`XA#(.N#9F:02,?& +M`````$B)[^@AI?__A<!T9D''1"10_____^E?____2,?&`````$B)[^@`I?__ +MA<`/A=O^__](BT4`2(D#2(M%"$B)0PA(BT402(E#$$B+11C&0T0`QD-!`,9# +M0`)(B4,8#[9%18A#10^V!0````"(0R#I!____TB+10!(B0-(BT4(2(E#"$B+ +M11!(B4,02(M%&,9#1`#&0T$`QD-``4B)0Q@/MD5%B$-%#[8%`````(A#(.G& +M_O__9F:09F:005=)B?=!5D%505152(G]4TB!["@"``"(5"0'#[9&#\9$)!`! +MA,!X#\9$)!``@'\0!@^$;`(``$B-1"0@9F9FD$B-E"0@`@``Q@``2(/``4@Y +MT'7L00^V1PL/MI5@`@``B$5(00^V1PZ(145!#[9/#K@!````T^!FB45&B="# +MR`2(A6`"``!!]D</`P^$F@$``(G02,>%:`(```````"#R`6(A6`"``!(BT4( +M@'@+``^%E@$``$F+1Q`/ME5$2<?&_____TB)A7`"``!)BT<8A=)(B85X`@`` +M?EA%,>3K$0^V541!C40D`4F#Q`$YPGY"2HM<Y6!(BT,H2(EK&$DYQDP/1_"` +M>Q`$==6`?"0'`$B+0SA(B40D"'5D@'PD$`!U9`^V541!C40D`4F#Q`$YPG^^ +M@'T0!P^$.@$``$B+30B`>0D`#X7Q````#[9!"BG"2&/"3`^O\$R)=2A!#[9' +M#X/@','X`HB%@0,``$B!Q"@"``!;74%<05U!7D%?PX!\)!``='%(BT-(2(M\ +M)`A(C4PD($&X`0```+H!````2(MP".@`````A<`/A3#___^`O"0>`@``J@^$ +M#@$``#'`@'PD(%(/A.<```"%P`^$#?___TB+0TA(BWPD"$B-3"0@13'`N@$` +M``!(BW`(Z`````#IZ?[__T4Q[4B+0TA,B>Y(BWPD"$B-3"0@13'`N@$```!) +M@\4!2`-P".@`````28/]`@^$MO[__^O.2,>%:`(``/_____I>O[__P^W14;W +MV$B822'&Z?_^__^#R@>`?1`*B)5@`@``#X57_O__#[9-1+@!````@^D!2-/@ +M2(E%4.D__O__@'U$``^$V_[__S')2(M$S6"-40%(@\$!2(M`*$@!12@/MD5$ +M.=!_Y.FX_O__T>B#X`&(1"00Z8;]__^`?"0A10^%#O___\9$)"!%QD0D(5+I +M!____X"\)!\"``!5#X7D_O__L`'&A"0>`@``5<:$)!\"``"JZ<_^__]!53'V +M051)B?Q54TB#& +M!"@`2(/``4B#^%AU\DF)Y4B)X$B-E"2`````Q@``2(/``4@YT'7L2(M#"$B+ +M>Q!(B>;_4#@/MD0D%DF-53Q(C4T$B$4##[9$)!2(10`/MD0D%8A%`4B+1"0\ +M2(E%!$B+0@A(B4$(2(M"$$B)01!(BT(82(E!&(M"($F-51B)02!(BT0D&$B- +M32A(B44H2(M""$B)00A(BT(02(E!$$B+0AA(B4$8BT(@B4$@#[8$)(A%4`^V +M1"0!B$51#[9$)`*(15(/MD0D`XA%4TB+0QB)14R`>V@`=7$/MD0D%XA%`DB+ +M&TB%VW48ZRMF9I!F9I`/MD0D%P!%`DB+&TB%VW052(M#"$B+>Q!(B>;_4#B` +M?"03`'3;28M\)!!)C70D6$G'1"18`````$V)9"1@2<=$)&@`````Z`````!( +M@<2(````6UU!7$%=PX!-`P3KB4''1"10_____^N[9F:09F:0055)B?TQ]D%4 +M55-(@>R(````2(M'*$B+;S"+..@?H/__2(7`2(G##X07`0``,<"0Q@0H`$B# +MP`%(@_A,=?))B>1(B>!(C90D@````,8``$B#P`%(.=!U[$B+0PA(BWL02(GF +M_U`X#[9$)!9)C50D/$B-302(10,/MD0D%(A%``^V1"05B$4!28M$)#Q(B44$ +M2(M""$B)00A(BT(02(E!$$B+0AA(B4$8BT(@28U4)!B)02!)BT0D&$B-32A( +MB44H2(M""$B)00A(BT(02(E!$$B+0AA(B4$8BT(@B4$@#[9$)!>(10)(BQM( +MA=MU$NLE#[9$)!<`10)(BQM(A=MT%4B+0PA(BWL02(GF_U`X@'PD$P!TVTF+ +M?1!)C7582<=%6`````!-B6U@2<=%:`````#H`````$B!Q(@```!;74%<05W# +M0<=%4/_____KQV:02(/L&$R)9"0(2(D<)$F)_$R);"002(M?"$B+5Q"+0S!, +MBRN)0C"`HV$"``#SQT,P_____X"B80(``/.+<C!)BWT(Z`````"+<S1,B>_H +M`````$B)6%#&@+`````$2(G'3(E@6$C'@,@`````````2(L<)$R+9"0(3(ML +M)!!(@\08Z0````!F9F:09F:09F:04TB+1RA(B?N+..@`````2(G'Z`````!( +MQT-8`````$B)6V!(C7-82,=#:`````!(BWL06^D`````9F9FD&9FD%-(BW\( +M2(L?Z`````!(BX/@`0``2,=`6`````!(B4!@2(UP6$C'0&@`````2(MX$%OI +M`````&9F9I!F9I!F9I!3@W]0_4B+7T`/A/4```#V@V$"```(QH-[`P```'1I +MBT=0@_C]#X3;`0``A<`/A>`!``!(BX.``@``2(N0H`````^W@*@```"!XO__ +M#P!(.<(/@XD```!(QX/H`@```````$B)F_`"``!(QX/@`@```````$B+`TB- +ML^`"``!;2(MX".D`````#[:+8`(``/;!$`^$B````(M'4(/X_0^$0@$``(7` +M#X5#`0``2(M3"`^V0T0/ME(**=!(F$@/KX-H`@``2#M#*`^#T0$``/:#80(` +M``@/A5C___]F9I!FD/:#8`(``%`/A8D```!(QX/H`@```````$B)F_`"``#I +M</___P^V@WL#```\`@^/_/[__X/``8B#>P,``.O/9I#VP2!U;/;!0`^$M@`` +M`/;!`0^$CP$``$2+1U!%A<!FD`^%0@$``$B+4P@/MD-$#[92"BG02)A(#Z^# +M:`(``$@[0R@/@GC___](B=^^"0```%OIZL/__TB+@V@"```E__\_`$B#^'\/ +MAV'____IQO[__T2+3U"X"P```$6%R74IA,FP"G@C2(M3"`^V0T0/ME(**=!( +MF$@/KX-H`@``2#M#*')WN`P```"#X5](B=Z)QXB+8`(``.@`````]H-@`@`` +M"'5O6\.`/0``````=7*#X>](B=Z_"````(B+8`(``%OI`````(`]```````/ +MA9H```!(BX.``@``@*-A`@``]TB)WK\4````2(M`$("@80(``/=;Z0````!( +MBX,H`P``@#@`#X26_O__@^'?B(M@`@``2(G?O@$```!;Z?_"___'1U`````` +M2(G>OQP```#H``````^W@W0#``!(`8-H`@``Z23^__^#X;](B=Z_#P```(B+ +M8`(``%OI`````$B)W[X#````6^FSPO__QT=0`````$B)WK\<````Z`````#I +M"/[__X/AOTB)WK\.````B(M@`@``6^D`````9F:02(V&:`,``/:&80(```A( +MB;X(`P``QX88`P```````$C'AC`#````````2(F&(`,``$B-AGH#``!(B;8X +M`P``2,>&0`,```````!(B88H`P``BX;H`P``B89H`P``=#?'AA`#```J_P`` +MQX84`P``!````(N&W`(``#'2@\`!@_AE#TS0B9;<`@``2('&^`(``.D````` +M#[:.8`(``/;!<`^$J@```(G(@^"@/*`/A)\```!,BT8(#[9&1$$/ME`**=!( +MF$@/KX9H`@``2#M&*`^#?````/;!$+@C_P``=0^#X2"`^0$9P/?0!27_``") +MAA`#``!(BY8@`P``2(N&:`(``$B)0@1!@'@)`'1:#[=&1DB+EB`#``!FB4(, +M]H9@`@``(,>&%`,```X````/A#____](BX8H`P``Q@``QX88`P```0```.DF +M____9F:0\\-(C;[X`@``QX9(`P```````.FX^___2(M6*$@KEF@"``"Y@``` +M`$B+AB`#``!(@?J`````2`]'T6:)4`SKC4B+1T!(QX#H`@```````$B)@/`" +M``!(C;#@`@``2(L`2(MX".D`````9F9FD&9FD$B#[!A(B6PD$$B)7"0(2(G] +M2(M?&$B%VT@/1-\/MH-A`@``J`1T?J@(#X63````2(N3@`(``$B%T@^$@P`` +M`$B+0@A(A<`/A'8```!(@WH0`'1O@(AA`@``"$B-L^`"``!(BT(0@(AA`@`` +M"$B+`TC'@^@"````````2(F;\`(``$B+>`CH`````$B)WDB+;"002(M<)`B_ +M$@```$B#Q!CI``````^VEV`"``#VPA!U$4B%VW0$J`AU"/;"8&9FD'0/2(M< +M)`A(BVPD$$B#Q!C#2(M%`(/B]TC'A>@"````````@\H02(FM\`(``$B-M>`" +M``"(E6`"``!(BW@(Z`````!(B>Y(BUPD"$B+;"00OP0```!(@\08Z0````!F +MD$%5051)B?Q54TB#[`A(BT<HBU@$BSCH`````(/[#DB)Q78]0<=$)%#^____ +M2<=$)%@`````38ED)&!)C70D6$G'1"1H`````$F+?"002(/$"%M=05Q!7>D` +M````9F9FD(G8_R3%`````&9F9I!F9I!(B<5(BT482(7`=?2`?1`%#X3N!0`` +M@*5@`@``OTB)[K\.````Z`````!$BU4P1872#XA.!@``2(M-&+H!````Z=@# +M``!(BT482(7`=`WV@&$"```,#X58____9O>%8`(``'`,#X5)____]H6``P`` +M`0^$//___X!]$`4/A1H&``"`?40`#X1C!@``13'M9I#K%`^V141!C54!28/% +M`3G0#XY(!@``2HM<[6!(A=MTXH![$`1VW/:#8`(``!!UTTB+>UCH`````$B+ +M4P@/ME(*.=`/C=O^__\/MH-@`@``2,>#Z`(```````!(C;/@`@``2(F;\`(` +M`(/@]X/($(B#8`(``$B+`TB+>`CH`````$B)WK\$````Z`````#I</___X!] +M$`4/A(D$``"`I6`"``#G2(GNOP4```#H`````$B+31BZ`0```.G/`@``]H5@ +M`@``$`^$6/[___:%@`,```$/A$O^__^`I6`"``#E2(M%6$B)[DC'A6@"``#_ +M____OP8```!(B450Z`````!(BTT8@*5@`@``_DB%R714@'E$`'1.,?9(BT3Q +M8$B%P'0O]H"``P```70F@'@0!'8@#[:08`(```^V@6`"``"#X@&#X/X)T*@! +MB(%@`@``=0\/MD%$C58!2(/&`3G0?[A(BTT82(-]6`$9TH/"`ND;`@``2(M% +M&$B%P'0-]H!A`@``#`^%F_W__V;WA6`"``!P#`^%C/W___:%@`,```$/A'_] +M__^`?1`%#X78!```@'U$``^$=/W__T4Q[69FD&:0ZQ0/MD5$08U5`4F#Q0$Y +MP@^-5OW__TJ+7.U@2(7;=.*`>Q`$=MSV@V`"```@==-(BWU02`M]6.@````` +M2(M5"`^V4@HYT`^-%_W__TB+`X"+8`(``"!(C;/@`@``2,>#:`(```````!( +MQX/H`@```````$B)F_`"``!(BW@(Z`````!(B=Z_"0```.@`````Z6W___^` +MI6`"``#?2(GNOPH```#H`````.F^_/__@*5@`@``W^FR_/__]H6``P```0^$ +MG/S__TB#?5@`#X61_/__#[>%8`(``&8E<0QF@^@!#X5\_/__@'T0!0^%/`0` +M`(!]1`!T-44Q[4J+7.U@2(7;=!B`>Q`$=A(/MH-@`@``@^!!+`$/A%L$```/ +MMD5$08U5`4F#Q0$YT'_.@*5@`@``]^DT_/__@*5@`@``M$C'A6@"``#_____ +M2(GN2,=%4`````"_$````.@`````2(M=&$B%VP^$E0(```^V0T2%P`^.C`(` +M`(/H`3'V,=)(C4@!2(M$TV!(A<!T(_:`@`,```%T&H!X$`1V%/:`8`(```&X +M`0````]%\&9FD&:02(/"`4@YRG7*A?8/A$,"``!(BTL82(G=N@$```"#^@,/ +ME<"$P`^$/@$``&9FD&:02(7)#X0P`0``2(G-2(M)&.D<`0``@*5@`@``WTB) +M[K\+````Z`````#I7OO__V;WA6`"``!P"$B+A8`"```/A3_[__](A<`/A#;[ +M__^`N*L`````#X4I^___2(M0"$B+0!#V@H`#```!#X04^___]H"``P```0^$ +M!_O__X"B80(``.](C;7@`@``@*!A`@``[X"*80(```B`B&$"```(2(M%`$C' +MA>@"````````2(FM\`(``$B+>`CH`````$B)[K\2````Z`````#IO/K__P^W +MA6`"``!(BXV``@``9B5P"&8]``@/A9?Z__](A<D/A([Z__](BT$(2(M1$$B) +M[K\3````@*!A`@``]X"B80(``/?H`````$B+31BZ`0```.G'_O__2(M-&+H# +M````,<"$P`^%Q_[__X"-8`(```2#^@(/A.\```!(BX6``@``2(7`#X3L```` +M2(MX"$B+6!!(A?]T!>@`````2(7;#X08^O__2(G?Z`````!F9F:0Z0?Z__\Q +MVX!]1`!U&V9FD.ER^O__#[9%1(U3`4B#PP$YT`^.7_K__TB+=-U@2(7V=..` +M?A`$=MWVAF`"```0=-2`IF`"``#GOP4```#H`````.O!@'U$``^$'/K__S'; +MZQ,/MD5$C5,!2(/#`3G0#XX%^O__2(MTW6!(A?9TXX!^$`1VW?:&8`(``$!T +MU("F8`(``+^_#@```.@`````Z\%(B>N`HV`"``#^2(G?Z`````#IJ?W__TB) +M[^@`````Z4?Y__](B>_H`````&9FD.DW^?__2(GOZ`````!(BTT8N@$```#I +M@OW__TB+?5CH`````$B+50@/ME(*.=`/C?_X__](BT4`@(U@`@``$$B-M>`" +M``!(QX7H`@```````$B)K?`"``!(BW@(Z`````!(B>Z_!````.@`````@*5@ +M`@``]TB#?5@`#X0W^?__Z`````!(BTT8N@$```")13SI!_W__TB+?5!("WU8 +MZ`````!(BU4(#[92"CG0#XV`^/__2(M%`("-8`(``"!(C;7@`@``2,>%:`(` +M``````!(QX7H`@```````$B)K?`"``!(BW@(Z`````!(B>Z_"0```.@````` +MZ3_X__](BT4`@(U@`@``0$B-M>`"``!(QX5H`@```````$C'A>@"```````` +M2(FM\`(``$B+>`CH`````$B)[K\-````Z`````#IM?O__P^V@V`"``!(QX-H +M`@```````$B-L^`"``!(QX/H`@```````$B)F_`"``"#R$"#X/>(@V`"``!( +MBP-(BW@(Z`````!(B=Z_#0```.@`````Z5#[__]F9F:054B)_5-(@^P(]H>` +M`P```74C#[:'80(``(/@!#P!&=N!XP#X__^!PP$(``")V$B#Q`A;7<,/MI=@ +M`@``]L("#X0S`0``2(M_6+L"````B=B`S!#VP@$/1=B)V(/(!/;"$`]%V(G8 +M@,P!]L(@#T78B=B`S`*#XD`/1=A(A?\/A2("```/MI6``P``B=A$#[951(/( +M$/;"!$4/MLH/1=B)V(/(0(/B`@^VE6$"```/1=B)V`R`]H5@`@``"`]%V(G8 +M@,P(]L($#T78B=B`S`2#X@@/1=A%A<D/CK8```!!C4'_,?9,C4`!ZV!(BWI8 +M2(GX2/?02(5"4'0#@\L"B=B`S!#VP0$/1=B)V(/(!/;!$`]%V(G8@,P!]L$@ +M#T78B=B`S`+VP4`/1=B)V(/("$B%_P]%V(G8#("#X0@/1=AF9I!(@\8!3#G& +M=$I(BU3U8$B%TG3M]H*``P```73D@'H0!';>#[:*8`(``/;!`@^$=____TB+ +M>ECK@4B+?U@QVTB)^$CWT$B%15`/A,#^___IMO[___;#`G01]L<09F:09I`/ +MA.H```"#X_U%A<D/CA(!``!(BU5@2(72#X1M_O__]H*``P```0^$8/[__S'_ +M@'H0!$$/ML)$C4#_#X:>````#[9R1(7V?FA(BT)@2(7`#X0W_O__]H"``P`` +M`0^$*O[__TB+0$A(@W@(``^%&_[__S')ZRU(BT)H2(7`#X0*_O__]H"``P`` +M`0^$_?W__TB+0$A(@\((2(-X"``/A>K]__^#P0$YSG7,9F9FD&9FD$PYQW1O +M2(M4_6A(A=(/A,G]__](@\<!]H*``P```0^$N/W__X!Z$`0/AV+___](BT)( +M2(-X"`!TQ^F>_?__9I")V"4((```@_@(#X4)____Z0'____H`````$B+50B# +MRPB)V8#-(`^V4@HYT`],V>F__?__@<L```!`Z5W]__^0059!54%428G\55-( +MBT<H2(M?$$2+*$2)[^@`````2(MK&$B#PQA)B<9(.=UU"^M.2(MM`$@YW71% +M2(.]B/S__P!(C;UP_/__=>9%A>UU!O9%\`)U5TDY_G1F]H>``P```G3-@*>` +M`P``_8!_$`%T1N@`````2(MM`$@YW76[2<=$)%@`````38ED)&!)C70D6$G' +M1"1H`````$F+?"006UU!7$%=05[I`````(!E\/V`?Q`!=;KH`````.EP____ +M]H>``P```@^%8____X"/@`,```+KE&9F9I!F9I!F9I!(@^QH2(E<)$A(B6PD +M4$B)^TR)9"183(EL)&!(BV\HBWT`A?]U2DB+>Q#HL9C__\=#4/S___](BWL0 +M2(US6$C'0U@`````2(E;8$C'0V@`````Z`````!(BUPD2$B+;"103(MD)%A, +MBVPD8$B#Q&C#Z`````!)B<2+101,C6T$J`%U;:@"#X6]````J`0/A1T!``"H +M"`^%?`$``*@09F:0#X7:`0``J$`/A3,"``"H(`^%;P(``$'V1"1D$&9F9I`/ +MA'#___])BT0D:$F+O"2`````2(GF_U!X#[9$)`Y,B>=!B$0D8N@`````Z4;_ +M___&1"0P`$$/MD4$2(UT)#"(1"0X28M$)&A)B[PD@````/^0P````(7`B4-0 +M=2!!#[9$)&2#R(!!B$0D9$$/ME4$@\@008A$)&1!B%0D8XM%!*@"#X1#____ +MQD0D,`1!#[9%!4B-="0PQD0D.0"(1"0X28M$)&A)B[PD@````/^0P````(7` +MB4-0=2E!#[94)&6#RA!!B%0D94&`?04`#Y7`08!,)&00@^+?P>`%"<)!B%0D +M94&+10"H!`^$Y/[__Y#&1"0P!4$/MD4&2(UT)##&1"0Y`(A$)#A)BT0D:$F+ +MO"2`````_Y#`````A<")0U!U*4$/ME0D98/*0$&(5"1E08!]!@`/E<!!@$PD +M9!"#XG_!X`<)PD&(5"1E08M%`*@(#X2$_O__QD0D,`-!#[9%!TB-="0PB$0D +M.$F+1"1H28N\)(````#_D,````"%P(E#4'4I00^V5"1E@\H$08A4)&5!@'T' +M``^5P$&`3"1D$(/B]\'@`PG"08A4)&5!BT4`J!`/A"W^__]F9F:09F:0QD0D +M,`)!#[9%"$B-="0PB$0D.$F+1"1H28N\)(````#_D,````"%P(E#4'4H00^V +M5"1E@\H!08A4)&5!@'T(``^5P$&`3"1D$(/B_0'`"<)!B%0D94&+10"H0`^$ +MS?W__T$/MG4*,<!(Q\<`````Z`````#'0U``````08!]"@!!#[9$)&8/E<)! +M@$PD9!"#X/X)T$&(1"1F08M%`*@@#X21_?__QD0D,`=!#[9%"4B-="0PB$0D +M.$F+1"1H28N\)(````#_D,````")0U!!]D0D9!`/A-S\___I9_W__Y!(@^PX +M2(E<)!A(B6PD($B)^TR)9"0H3(EL)#!(BV\HBWT`A?]U2DB+>Q#H497__\=# +M4/S___](BWL02(US6$C'0U@`````2(E;8$C'0V@`````Z`````!(BUPD&$B+ +M;"0@3(MD)"A,BVPD,$B#Q#C#Z`````#V100!3(UM!$F)Q'420?9$)&00=*Q, +MB>?H`````.NBQ@0D`$$/MD4$2(GFB$0D"$F+1"1H28N\)(````#_D,````"% +MP(E#4'7$00^V1"1D@\B`08A$)&1!#[95!(/($$&(1"1D08A4)&/KHE-(BT<H +M2(G[BSCH``````^V2&2!>Q@,_P``2(G&B<A`#Y3'P.@"0`^VUX/@`3G0=!J- +M!+T`````@^'[2(GW"<&#R1"(3F3H`````$C'0U@`````2(E;8$B-<UA(QT-H +M`````$B+>Q!;Z0````!F9I!!5T%608G6055!5$F)_%532('L&`(``$"(="0/ +M@']$``^$F0```$6-?O]`#[;&13'MB40D".M808/_`0^&GP```(![4`!(BVLX +M=0>`?"0/`'0-]H6``P```0^%G````$B)W^@`````]D5D$'03]H6``P```0^% +MY@```&9FD&9FD$&-10%)@\4!03A$)$1V,$N+7.Q@2(7;=.</MD,0/`1VEHMT +M)`A$B?)(B=_H4/___T&-10%)@\4!03A$)$1WT$R)Y^@`````2('$&`(``%M= +M05Q!74%>05_#9F9FD&9FD#P$2(G=#X2@````08/^`G6/2(GOZ`````#KA4B+ +M0TA(C4PD$$&X`0```+H!````2(GO2(MP".@`````A<`/A3S___^`O"0.`@`` +M571`,<"`?"00171FA<`/A"'___](BT-(2(U,)!!%,<"Z`0```$B)[TB+<`CH +M`````.G__O__2(GOZ`````#I$____X"\)`\"``"J=;:P`<:$)`X"``"JQH0D +M#P(``%7KI$B+:SA(B=_H`````.E/____@'PD$5)UD\9$)!!2QD0D$47KCY!( +M@^PH2(E<)`A(B6PD$$B)^TR)9"083(EL)"!(BT<H3(MO$(LX1(M@!.@````` +M2(NH@`(``$B)QTB%[0^$CP```$B+10A(A<!T9HN0A`,``(72=$Q(BT,PQP#_ +M____QT-0_____TB+>Q!(C7-82,=#6`````!(B5M@2,=#:`````!(BUPD"$B+ +M;"003(MD)!A,BVPD($B#Q"CI`````&:02(.XX`,```!UJF9FD&9FD$B+11!( +MA<!T%T2+F(0#``!%A=MUCTB#N.`#````=860]H=@`@``<`^%=____P^V1T2% +MP'XQ@^@!,<E(@\`!9I!(BU3/8$B%TG03@'H0!'8-]H)@`@``<`^%1____TB# +MP0%(.<%UVD&#Y`-!#Y3$2(7M=%5(BWT(2(7_=`M!#[;T,=+H&?W__TB+?1!( +MA?]T"T$/MO0QTN@%_?__2(M%&$B+52!)C;W0````2(GN2(E0"$B)`N@````` +M2(M#,,<``````.GM_O__00^V]#'2Z,W\___KY&9F9I!F9F:09F:005=!5D%5 +M05152(G54TB![(@```!(B7PD&$B)="00Z`````")1"0L#[95#DR+=72)T,#H +M!(3`08G%=1%$#[9M"K@!````183M1`]$Z`^V30V#X@^(50Z`^4!W"X#Y`7<= +M@'T,!W07N/____](@<2(````6UU!7$%=05Y!7\.$R70Q,=OK&_:`@`,```%T +MV`^V30V-4P%(@\,!#[;!.=!^$HM\G7SH`````(!X$`%TUI#KM(!]#`AWK@^V +M10QF9F:0_R3%`````,9$)#`,QD0D0`!!OPP```!$B?_H`````$B%P$B)1"18 +M#X1Y____08#]`4C'1"1@`````'8N#[9%#3'200^VS6;W\6:%T@^%5/___P^V +M?"1`Z`````!(A<!(B40D8`^$//___TV%]@^%Q`(``(!\)#`'#X0K!```,=N` +M?0T`2<?&_____P^$7@D``(M\G7SH`````$B+0$"-4P%).<9,#T?P#[9%#4B# +MPP$YT'_=2(M4)%@/MDH)A,EU$TB#?"1@`'1L2(M$)&"`>`D`=&$/MDT.N/__ +M__](BU0D6-/@2)A)(<9,B75T@'H)`'0:#[9%#0^V4@I!]O4/ML`IT$B820^O +MQDB)171(@WPD8`!T($B+3"1@@'D)`'05#[91"D$/ML4IT$B82`^O171(B45T +M2(-\)!``='5(BUPD$(1"0@#X5$_O__ +M]H.``P```0^$-_[__TB#NX`"````#X4I_O__9O>#8`(``%`"#X4:_O__2(M- +M=$@Y2R@/APS^__^`90_\@'L0!P^$_0$``(!]#`</A`P"``#'1"1L`````$B+ +M?"081(G^Z`````!(A<!)B<</A-/]__^`?"0P!P^$!@,```^V30TQVX3)=1[I +MW@$``&9FD`^V30V-4P%(@\,!#[;!.=`/CL4!``"+?)U\B5PD:.@`````BTPD +M;#'228G$A<EU&$B#?"00`'002(M\)!!(B<;HRX?__TB)PDR)]DR)Y^@````` +M2(7`28E$WV!UHXMT)&B%]GX;3(G[,>U(BWM@@\4!2(/#".@`````.VPD:'7J +M3(G_Z`````"X_____^DI_?__0;\'````QD0D,`?&1"1``.F`_?__@'T.!P^% +M!?W__T&_"@```,9$)#`*QD0D0`#I8?W__T&_"0```,9$)#`)QD0D0`#I3/W_ +M_T&_"````,9$)#`(QD0D0`#I-_W__X#Y`[@"````&=OWTX/#!H#Y`T0/0^@9 +MP(A<)##WT(/@!H#Y`T49_XA$)$!!]]=!@\<&Z0#]__]!@/T#0;\%````QD0D +M,`49TH/B_H/""(A4)$#IX/S__TB+7"18#[9+"83)="$/MD4-#[93"D'V]0^V +MP"G02&/03(GP2(G3,=)(]_-)B<9(@WPD8``/A$S]__](BT0D8(!X"0`/A#W] +M__](BUPD8$$/ML4/ME,**=!(8]!,B?!(B=,QTDCW\TF)QND8_?__@'T,!P^$ +M3@8``$B+7"00@'M$`0^$]/W__\=$)&P!````Z>_]__]!B$]$BTPD+$&`_0%! +MB4\X08E/0`^&[P4``$4/MO4/MEPD0$2(;"1[08U&_T2(="1Z13'D2(/``8E< +M)'Q(B40D"(MT)'Q(BWPD&.@`````2(7`2(G##X0O!0``,=)%A?9^'F9FD$&- +M!!1(F$F+1,=@2(E$TV!(@\(!2#M4)`AUY4&+1SA$B&M$2(GN2(G?B4,X,<!( +M@WPD$``/E,")PHE$)"CH_MG__T2)XD2)X$4!],'Z'T'W_DB828E<QV!!#[9' +M1`^V5"1[`E0D>CI$)'L/AML```"(5"1[Z6/___\QVX!]#0!U'.G^^___2`%% +M=`^V10V-4P%(@\,!.=`/CCL"``"+?)U\Z`````!(BT!`2(7`==?IPOK__TR+ +M970/ME4-387D#Y7`A=)^!T4Q]H3`=23'1"1H`````(3`=`HY5"1H#X0Z_?__ +M#[94)&A!B%=$Z:[^__]"BWRU?$2)="1HZ`````!(B<=(BT!`23G$2(G#20]& +MW#'22(G>Z`````!(A<!+B43W8`^$]/S__T&-1@%)*=R)1"1H#[95#0^5P$F# +MQ@$[5"1H?I"$P'2:ZZ8/ML!!]O4\/T&(1T1W)@^VP#')C5`!B<:-!`Z#P@%( +M@\$!2)A)QT3'8`````"-0O\\/W;DBU0D*$B)[DR)_^BRV/__00^V5T2%TGXU +M,?9(BUPD6$F+3/=@#[9#"BG"28M'*$ACTDB)TS'22/?S00^V5T1(B4$HC48! +M2(/&`3G"?\U(@WPD$``/A"<%``!(BU0D$$R)_HM"0$B)UT&)1T#H`````(3` +M#X7O````2(M,)!!!#[:'@`,``$F+7R@/MI&``P``@^#[@^($"=!!B(>``P`` +M#[:1@`,``(/@_8/B`@G008B'@`,```^V04A(.5DH08A'2'<]28M'"(!X"@!U +M#DF+1V!(BT`(@'@*`'0E2(M\)!#H#.W__T&)Q$&!Y`(0``!U?$B+1"0028M7 +M*$@Y4"AR;4B+3"00@+F!`P```@^$``4``$B+7"002(M4)!B+0S!(B=%(@\$X +M08E',$B+0CA(.<AU$>E)`@``2(L`2#G(#X0]`@``2(U0Z$B+7"002#E:4'7E +M3(EZ4.O?2(M$)%@/MD@)Z:?Y__]!O`$```!(BWPD&$B!Q]````#H`````$B) +MPS'`Q@08`$B#P`%(/;````!U\.@`````2(M4)!")`TB)WTR)>Q!(B5,(Z``` +M``!)BT<(@'@*``^%3`(``$F+1V!(BT`(@'@*``^%.@(``,:#J@````.`>R@` +M#X2_`P``@+NJ`````P^$6@0``$F+1RB`NZH````"2(F#H`````^$LP,``$B+ +M3"00@+F!`P```@^$H0,``$B+1"00@(AA`@``!$F)GX`"``!!@(]A`@``!$&` +MIV`"``#]2(F8@`(``$B+5"082(M$)!A(BTHP2(U3&$B+?"002(E0,$B#P"A( +MB4,82(E+($B)$>@`````3(G_Z``````/MD4/J`$/A8````"H`G1P08#]`0^& +M00,``$B+3"1@@'D*``^$,@,``$&`?T0`=%`Q[4F+7.]@2(L#@(M@`@``$$B- +ML^`"``!(QX/H`@```````$B)F_`"``!(BW@(Z`````!(B=Z_!````.@````` +M00^V1T2-50%(@\4!.=!_LD&+A^@#``#I^/;__T&`_0$/AC,"``!(BU0D8(!Z +M"@`/A"0"``!!@']$`'10,>U)BUSO8$B+`X"+8`(``$!(C;/@`@``2,>#Z`(` +M``````!(B9OP`@``2(MX".@`````2(G>OPT```#H`````$$/MD=$C54!2(/% +M`3G0?[)!@*=@`@``O^EW____2(M\)!`Q]C'2Z,+R__](BT0D&$&+=S!(BW@( +MZ`````#IRO[__T2)XD2)X#'MP?H?3(G[0??^A<!!B<5^'$B+>V`Q]KH!```` +M@\4!2(/#".A\\O__1#GM=>1!#[9'1$$YQ`^-V?C__T2)XTACPX/#`4F+?,=@ +MZ`````!!#[9'1#G8?^?IN/C__T6%Y+@"````=`>`>R@`#Y7`B(.J````Z;'] +M__\QTDB#?"00`$B)[DR)_P^4PNB&U/__Z0W\__](BUPD6`^V2PGIP/;__TB+ +M7"00@'M$``^$H_G__X!]#0`/A)GY__](BT-@13'D2(7`=3[I?_7__TB+3"00 +M08U4)`$/MD%$.=`/CK,!```/MD4-.=`/CI$!``!(BU0D$$J+1.)H28/$`4B% +MP`^$1O7__TB+6#A"BWRE?.@`````2#G#=;1(BU0D$`^V0D0Z10T/AR'U__\/ +MMM"%T@^.=0$``$B+3"0013'D2(M!8$B%P'4RZ0#U__](BT0D$`^V4$1!C40D +M`3G"#XY)`0``2(M<)!!*BT3C:$F#Q`%(A<`/A-/T__](BU@X0HM\I7SH```` +M`$@YPW3`Z;OT__]F9I!FD$F+!T&`CV`"``!`28VWX`(``$G'A^@"```````` +M38F_\`(``$B+>`CH`````$R)_K\-````Z`````#I>/W__TR)_^@`````]D4/ +M`0^%<OW__TR)_^@`````Z=G\__\QP$6%Y`^%1_S__TB+5"002(M"*.DY_/__ +M2(M\)!!(Q\(`````2(G>Z.6A__\QP.DI]/__28L'08"/8`(``!!)C;?@`@`` +M2<>'Z`(```````!-B;_P`@``2(MX".@`````3(G^OP0```#H`````.GF_/__ +M2,?"`````$R)_DB)S^B-H?__,<#IT?/__TB+7"00#[9#$#P'#X3$]___Z<[W +M__\/MD$0Z^U(BTPD$$B+02B0Z9O[__](BT5T2(M,)!!)B<5,*VDH='U(8\)( +MBWS!6$R+?SA)BW<X2(7V=1'I!`$``$B+-DB%]@^$^````$B#?A@`=>U(BU=( +M2(M*$$B)R$@#0@A(.48(==A(BT802(M?*$DYQ4B)7"1P#X.4````2HT$*4B) +M0A!(B4<H3(G_3`%N"$PI;A!!@$]D$.@`````2(M%=$B+5"002(E"*$B+11!( +MB==(B8)P`@``2(M%&$B)@G@"``#H`````$B+3"002(L!BW$P2(MX".@````` +M#[9%#TB+7"00@^`<P?@"@+N!`P```HG"#X1K`0``2(M,)!"+@>@#``"(D8$# +M``#IJ/+__TDIQ4B-!`%(B4(02(E'*$R)_^@`````08!/9!!,B?_H`````$V% +M[7422(M%=.E?____2,=$)'``````2(M$)!`/ME4-387M1`^V<$0/E<!!.=9\ +M-X3`=`5!.=9T:$B+7"001(AS1$B+173I(O___TB+3"0008/&`4TIY4B)2!@/ +MME4-#Y7`1#GR?LF$P'3.26/>BWR=?.@`````2(G'2(M`0$DYQ4F)Q$T/1N4Q +MTDR)YN@`````2(M4)!!(A<!(B43:8'6J2(-\)'``=#M(BTPD$`^V041(BWS! +M6.@`````2(M$)!!(BW0D<#'23(G_#[981.@`````2(M4)!"#ZP%(8]M(B43: +M8$B+3"00#[9!1$0Y\`^-B?'__S'M08G$2(M$)!!!C1PL2(/%`4ACVTB+?-A@ +MZ`````!(BU0D$$&-!"Q$.?!(QT3:8`````!\S^E.\?__/`(/A(W^__^(@X$# +M``!(BT0D($C'P@````!(B=](B[#@`0``Z-^>__\QP.DC\?__9F9FD&9F9I!5 +M4TB)^TB#[`A(BV\HBWT`Z`````!(BWL02(U5!$B)QNB+\/__A<")PG0U@_C_ +M=#=(BT,P2,=#6`````!(C7-82(E;8$C'0V@`````2(M[$(D02(/$"%M=Z0`` +M``!F9I!(@\0(6UW#B4-0Z\1F9F:054B)_5-(@>RH````2(M_$$B+=2A(C40D +M#$F)X$B)XI#&`@!(@\(!2#G"=?1!QP!\`0``2(L&28U(?$F)0`Q(BT8(2(E" +M"$B+1A!(B4(02(M&&$B)0AA(BT8@2(E"($B+1BA(B4(H2(M&,$B)0C!(BT8X +M2(E".$B+1D!(B4)`2(M&2$B)0DA(BT902(E"4$B+1EA(B4)82(M&8$B)0F!) +MQT!T`````$B-5FA(BT9H,?9)B4!\2(M""$B)00A(BT(02(E!$$B+0AA,B<)( +MB4$82(M=,.AH[___@_C_B0-U`XE%4$B+?1!(C7582,=%6`````!(B6U@2,=% +M:`````#H`````$B!Q*@```!;7<-F9I!52(G],?932(/L"$B+7S!(BU<H2(M_ +M$.@4[___@_C_B0-U`XE%4$C'15@`````2(EM8$B-=5A(QT5H`````$B+?1!( +M@\0(6UWI`````&9FD$%505154TB#[`A,BR=(BU]03(MO6$F+K"3@`0``Z``` +M``"+0S!)C4PD.$&)13!)BT0D.$@YR'40ZR1F9I!F9I!(BP!(.<AT%DB-4.A( +M.5I0=>Y(BP!,B6I02#G(=>HQTDB)WS'VZ#;K__]!BW4P28M\)`CH`````$R) +M[^@`````2(M5,$&+A>@#``!(C7582,=%6`````!(B6U@2,=%:`````!(BWT0 +MB0)(@\0(6UU!7$%=Z0````!F9F:09F9FD$%5N/____]!5$F)_%5(B?532('L +MR````(!_$`%(BU]X=`Y(@<3(````6UU!7$%=PTB+1VA,C:PD@````$B+OX`` +M``!,B>[_4'A(BT,(2(GF2(M[$/]0.$B-C"2T````2(V4)+@```!(C;0DO``` +M`$B)W^A9<O__#[:$)(T```"(10+VA"2*`````@^%>@$```^VA"2X`````H0D +MC````(A%`8N$)+P```"(10!!@'PD9``/B5\!``!!#[9$)&.(10,/MH0DDP`` +M`(A%!0^VE"2(````#[9%!@^VM"2)````P.H&B=&#X/S0ZH/A`0'2"<@/MHPD +MB0````G0C12U`````(/@\X/B"(/A`<'A`@G(B?$)T(/A$(GR@^#/@^(@"<B) +M\0G0@^%`B?*#X#^#XH`)R`G0B$4&#[9%!P^VE"2/````@^#\@^(#"=!`]L8$ +MB$4'#X3/````QD4$`DR)[DR)Y^B9=/__2(NT))@```")10A(A?9T(TB-?0Q( +MC5U"NI8```#H`````+XH````2(G?Z`````#&0R<`0?9$)&1!=1A)BT0D2$B) +MA:(```!)BT0D0$B)A:H```!)BTPD.$B%R70V,?;K"$B+"4B%R70J2(M!&$B% +MP'0<2(M`&$B%P'03BX#H`P``2&/6@\8!B825N@```(/^!W[.2('$R````#'` +M6UU!7$%=PP^VA"2T````Z8'^__\/MH0DD@```(A%`^F:_O__@^8(0(#^`1G` +M@^#^@\`#B$4$Z1[___]FD$B#[#A,B60D&$R);"0@28G]2(E<)`A(B6PD$$R) +M="0H3(E\)#!(BT<H2(M?,(LHB>_H`````$F)Q(L#@^@%=!.)PDB)V,9`!0!( +M@\`!2(/J`77RA>UT:DV%Y'1E28M$)"BZ_____TB)0Q!)BT0D&$B%P'0&BY#H +M`P``B5,808M4)#"X_____X72#TG"B$,/28L$)$B+>`CH`````(A##D$/MH0D +M@0,``(A##4$/MD0D$#P$=E?&0PP!08!\)$1`=F5!QT50_____TF+?1!)C758 +M2<=%6`````!-B6U@2<=%:`````!(BUPD"$B+;"003(MD)!A,BVPD($R+="0H +M3(M\)#!(@\0XZ0`````L`76Q2(US+,9##`),B>?HH/S__X7`=9WKHTF+1"10 +M3(GG2(F#O````.@6=?__B8.P````28N$)'`"``!(B4,L28N$)'@"``!(B4,T +M00^V?"00Z/UQ__^(@Y````!!#[9$)$5,B>>(@Y$```!!#[9$)$B(@[0```!) +MBX0D:`(``$B)@YP```#HJ-[__TR)YXF#E````.@`````QH.2`````(F#F``` +M`$&`?"1$``^$2@$``$4Q]D4Q_TN+;/1@2(7M#X3U````@+N3``````^$^0`` +M`(!]$`0/A`@!``"+A>@#``!"B82SQ`````^VDY(```!!@\<!28/&`8/"`8B3 +MD@```$$/MD0D1$0Y^`^/D0````^VTH/Z/W\62&/"@\(!@_H_QX2#Q````/__ +M__]^ZDF+A"2``@``2(7`#X1[_O__2(M0"+G_____2(72=`:+BN@#``")BZ0` +M``!(BU`0N?____](A=)T!HN*Z`,``(F+J````$B#>`@`#X0\_O__2(-X$``/ +MA#'^__],B>?H`````(F#K````.D>_O__9F:09I!!@_\_#X]E____2XML]&!( +MA>T/A0O___]"QX2SQ`````````#I'____P^V?1#H?G#__XB#DP```(!]$`0/ +MA?C^__](BT4XBX#H`P``0HF$L\0```#I[_[__S'2Z1?___](@>SH````N/__ +M__](B9PDR````$R)I"38````2(GS2(FL)-````!,B:PDX````$F)_(!_$`%( +MBV]X="A(BYPDR````$B+K"30````3(ND)-@```!,BZPDX````$B!Q.@```## +M2(M':$R-K"2`````2(N_@````$R)[O]0>$B+10A(B>9(BWT0_U`X2(V,)+0` +M``!(C90DN````$B-M"2\````2(GOZ-5L__\/MH0DC0```(A#`O:$)(H````" +M#X42`0``#[:$)+@````"A"2,````B$,!BX0DO````(@#08!\)&0`#XD,`0`` +M00^V1"1CB$,##[:4)(@````/MD,&#[:T)(D```#`Z@:#X/R)T=#J@^$!`=() +MR`^VC"2)````"="-%+4`````@^#S@^((@^$!P>$""<B)\0G0@^$0B?*#X,^# +MXB`)R(GQ"="#X4")\H/@/X/B@`G("="(0P8/MD,'#[:4)(\```"#X/R#X@,) +MT$#VQ@2(0P</MH0DDP```(A#!71<QD,$`DR)[DR)Y^@:;___2(NT))@```") +M0P@QP$B%]@^$D/[__TB->PRZE@```$B#PT+H`````+XH````2(G?Z``````Q +MP,9#)P#I9O[__P^VA"2T````Z>G^__^#Y@A`@/X!&<"#X/Z#P`.(0P3KE`^V +MA"22````B$,#Z>W^__]F9I!F9I!F9I!!54F)_4%455-(@^P(3(MG*$&+/"2% +M_W1(,>WK$69FD$B)W^@`````03DL)'8S@\4!B>A!BSR$Z`````"`>!`!2(G# +M=4?V0&0"=-5(B<?H`````$B)W^@`````03DL)'?-2<=%6`````!-B6U@28UU +M6$G'16@`````28M]$$B#Q`A;74%<05WI`````$''15#^____Z\MF9F:09F:0 +M9F:02(/L&$B)^$B)7"0(3(ED)!!(B<9(BU\03(MG"$B+.TB!Q]````#H```` +M`$R)YS'2,?;HJ>+__X"+8`(```1(B=],BV0D$$B+7"0(2(/$&.D`````9F9F +MD&9F9I!F9F:04TB+1PA(B?E(BS@/MX&8````BY=8`@0`2,>'B`($``````!( +MC;=H`@0`P>`)2,>'<`($``````!(B8]X`@0`2,>'@`($``````"-1`+_B=,Q +MTO?SB8=H`@0`6^D`````4TB+1RB+..@`````2(N8@`(``(![*`!T3DB+>PA, +MBXN@````2(M7*$DYT0^$;P$``$DYT0^']@````^$Q@$```^WBZ@````/M_%, +M.<X/AHT!``!$#[:#J@```$2)R4$/M_%)*?'K0TB+>PA,BXN@````2(MW*$DY +M\0^$^````$0/MH.J````183`#X70````#[>+J````(GR9D0IR@^WP4F-!`%( +M.<8/0LI%A,!FQX.:``````!,B8N0````9HF+F````'0/08#X`W0)2(G?6^G+ +M_O__#[>#F````$B-<TA(QT-8`````$@#@Y````!,B4M(2,=#<`````!(B5MX +M2,>#@`````````#'@X@````!````2(E#4$B-0V!(B4-@2(E#:.@`````A<!T +MGUO#D`^WBZ@````/M_%(C00R3#G(#X*9````1`^V@ZH```!$B<EF*=$/M_'I +M!?___V9FD$&`^`,/A";___](BT,02(MP*.D9____1`^V@ZH```!!@/@#=&A% +MA,!UX$&X`0```,:#J@````'KT69F9I!F9I!$#[:#J@```$&`^`)T/T&`^`%T +M0@^WBZ@````QTDR)R`^W\4CW]F:%T@^$D_[__P^W\HG1Z8G^__]F9F:09F:0 +M1`^V@ZH```#I=?[__TB)WUOI:LC__\:#J@````!(BU<HZ2O^__]$#[:#J@`` +M`.ND2(/L6`^WP4R)9"0X28G$2(E<)"A(B6PD,$R)="1(20'43(EL)$!,B7PD +M4(G]2(ET)!!FB4PD#DF)UDB)1"083#MF4$R)PTV+>!!V2D''0%#^____2(US +M6$C'0U@`````2(E;8$C'0V@`````3(G_2(M<)"A(BVPD,$R+9"0X3(ML)$!, +MBW0D2$R+?"102(/$6.D`````2(M4)!!,B?^+<C3H`````$B%P$F)Q0^$HP$` +M`,:`L@````!F@WPD#@%(B5A82,>`R`````````!(QX#```````````^$L`$` +M`(']&?\``'0[=R6!_0O_``"0#X38````QT-0_O___TR)[^@`````3(M[$.E& +M____@?TC_P``#X2T````@?TD_P``==1(BU0D$/9"9@(/A30!``!!QH6P```` +M`T'&A9L````D00^VA;$```"#X/N#R`)!B(6Q````08"]L`````,/A$X!``!! +M#[:%D````#P0#X34`0``/`H/A(T"``!(BT0D$$F)15!)@W](``^$\@(``$F+ +M3T!)C54828U'.$F)5T!)B44828E-($B)$4B+7"0H2(ML)#!,BV0D.$R+;"1` +M3(MT)$A,BWPD4$B#Q%C#9H-\)`X!#X<<____2(M$)!!(BV@X2(7M=!](BT4( +M23G&<@U(`T4023G$#X;#`@``2(MM`$B%[77A2(M$)!#V0&8"#X26`@``2<'L +M($'&A;`````"387D#X2X`P``0<:%F````(I!QH60````$$$/MH6Q````@\@$ +M@^#]08B%L0```.D!____3(M[$,=#4/W____I[_W__TG!["!!QH6P`````DV% +MY`^$N0```$'&A9@```"(0<:%D````!#ILO[__TB+5"000;@!````3(GQB>Y( +MQ\<`````,<#H`````.DM_O__3(GQ00^VUDR)\TC!Z1!)P>X82<>%H``````` +M``")R&:!X?\`0<:%F@```$`PP&9!QX60```````)T$2)\DG![@AF08F%E``` +M`##2#[;'"=!F08F%E@```$2)\##`"<%F08F-F`````^W1"0.9D&)A9(```!F +M08F%G````.E)_O__0<:%F````"A!QH60````"NGY_?__0<:%D0`````/MT0D +M#D6(M:$```!!QH6B`````$'&A:,`````P>`)08F%E````$R)\$C!Z#A!B(6: +M````3(GP2,'H,$&(A9L```!,B?!(P>@H08B%G````$R)\$C!Z"!!B(6=```` +M3(GP2,'H&$&(A9X```!,B?!(P>@008B%GP```$R)\$C!Z`A!B(6@````#[=$ +M)`YFP>@(08B%I`````^V5"0.0<:%I@````!!QH6G`````$&(E:4```#I<_W_ +M_T'&A9$`````#[=$)`Y%B+6=````0<:%G@````#!X`E!B864````3(GP2,'H +M&$&(A9H```!,B?!(P>@008B%FP```$R)\$C!Z`A!B(6<````#[=$)`YFP>@( +M08B%GP````^V7"0.0<:%H0````!!B)V@````Z?K\__],B>](BUPD*$B+;"0P +M3(MD)#A,BVPD0$R+="1(3(M\)%!(@\18Z0````!!QH6P`````T'&A9L````T +MZ7K]__](BU482(722(E4)"`/A#3]__],BT(8387`#X0G_?__28MX6$R)!"3H +M`````$R+!"1)BU`(.$(*#X8)_?__28V_\````$B+;0A!QH6P`````4R)!"3H +M`````$B%P$B)P4R+!"0/A*\!``!,B?)(QT`0`````$C'03``````2"GJ2,=! +M*`````!(QT$X`````$B)$$B+1"08QT%``0```$F)37A-B4502`'02(E!"$B- +M01A(B4$82(E!($F+0`B`>`D`='1!QH6:`````4$/MDA%2-/J28F5D````$$/ +MMDA$A,D/A-W[__](BUPD($D[6&"X`0```'0?,=*#P@$XR@^$P/O__P^VPDB+ +M7"0@23M<P&!UYHU"`4&(A9L```#IHOO__T'&A9@````J0<:%D`````KI0_S_ +M_TF-AU`"!`!!B[=8`@0`0<:%F@````%)B960````28F%H`````^W1"0.9D&) +MA9@```!!#[9X1$"$_W0V2(M4)"!).U!@N`$````/A*4````QTNL6#[;*2(M< +M)"!(8\%).US`8`^$A````(/"`4`X^G7B#[=$)`XQTDG'AX@"!```````2<>' +M<`($``````!-B:]X`@0`3(G_2<>'@`($``````#!X`F-1`;_]_9)C;=H`@0` +M08F':`($`$B+7"0H2(ML)#!,BV0D.$R+;"1`3(MT)$A,BWPD4$B#Q%CI```` +M`,=#4/W____I&/K__[@!````T^!!B(6;````Z7'___]F9F:09F9FD$B#[%A( +MA?9(B5PD*$B);"0P3(G#3(E\)%!,B60D.$B)]4R);"1`3(ET)$A!B<]-BV`0 +MB7PD%$B)5"0(18NT)%@"!`!T"?:&80(```1T24B-<UC'0U#^____2,=#6``` +M``!(B5M@2,=#:`````!,B>=(BUPD*$B+;"0P3(MD)#A,BVPD0$R+="1(3(M\ +M)%!(@\18Z0````!(BT8(#[9("H3)=*M!#[?'2`-$)`A(B40D&`^V5D0/ML$I +MPDB+1BA(8])(B=$QTDCW\4@Y1"08#X=Z____28V$)/````!(B<=(B40D(.@` +M````2(7`28G%#X1L`@``BW4T3(GGZ`````!(A<!)B<`/A$@"``!(BT0D&$B+ +M3"0(2<=%$`````!)QT4P`````$G'12@`````2<=%.`````!)B44(28U%&$F) +M30!!QT5``0```$V):'A)B44828E%($'&@+`````!BP4`````28E86(7`?@P[ +MA=P"```/G\`/ML!!B4!H2(M%"(!X"0`/A,@```"+3"04@>D+_P``@_D:#X?L +M`0``N`$```!(T^"I`(``!`^%*`(``*D`0``"#X40`@``J0$```$/A,,!``!! +MQH":`````0^V345)QX#``````````$C3;"0(28EH4$B+3"0(0<:`L@````!) +MQX#(`````````$F)B)````!)@WPD2``/A-0!``!)BTPD0$F-4!A)C40D.$F) +M5"1`28E`&$F)2"!(B1%(BUPD*$B+;"0P3(MD)#A,BVPD0$R+="1(3(M\)%!( +M@\18PT$/M\<QTHM,)!3!X`E!C40&_X'I"_\``$'W]H/Y&HG&#X<1`0``N`$` +M``!(T^"I`(``!`^%,P$``*D`0``"#X49`0``J0$```$/A.@```!!QH":```` +M`4F-A"10`@0`28EH4$G'@,``````````2<>`R`````````!,B>=)B8"@```` +M2(M$)`AF18FXF````$'&@+(`````28F`D````$&)M"1H`@0`28VT)&@"!`!) +MQX0DB`($``````!)QX0D<`($``````!-B80D>`($`$G'A"2``@0``````$B+ +M7"0H2(ML)#!,BV0D.$R+;"1`3(MT)$A,BWPD4$B#Q%CI`````$B+?"0@3(GN +MZ`````!(BWL02(US6,=#4/W___](QT-8`````$B)6V!(QT-H`````.GG_/__ +M2(M\)"!,B>Y,B00DZ`````!,BP0D3(G'Z`````!,BV,0Z9_\__\!]D'&@)H` +M```"Z>O^__]!QH":`````^G>_O__0<:`F@````+I]OW__T'&@)H````#Z>G] +M__](BUPD*$B+;"0P3(G'3(MD)#A,BVPD0$R+="1(3(M\)%!(@\18Z0````"0 +M2(/L&$B)'"1,B60D"$B)^TR);"002(M'*(LX1`^W8`Q,BV@$Z`````"+>QA) +MB=A$B>%,B>I(BQPD3(MD)`A,BVPD$$B)QDB#Q!CIH?O__Y!(@^P82(D<)$B) +M;"0(2(G[3(ED)!!(BT<HBSA,BV`$#[=H#.@`````@'@0`4B)QG0CBWL8#[?- +M28G83(GB2(L<)$B+;"0(3(MD)!!(@\08Z4S[__^+>Q@/M\U)B=A,B>)(BQPD +M2(ML)`A,BV0D$$B#Q!CI*?3__V9FD&9FD&9FD$B#[!A(B1PD2(EL)`A(B?M, +MB60D$$B+1RB+.$R+8`0/MV@,Z`````"`>!`!2(G&=".+>Q@/M\U)B=A,B>)( +MBQPD2(ML)`A,BV0D$$B#Q!CIS/K__XM[&`^WS4F)V$R)XDB+'"1(BVPD"$R+ +M9"002(/$&.FI\___9F:09F:09F:02(/L&$B)'"1,B60D"$B)^TR);"002(M' +M*(LX1`^V8`A$BV@$Z`````"+>QA)B=A$B>%,B>I(BQPD3(MD)`A,BVPD$$B) +MQDB#Q!CI4?K__Y!(@^P82(D<)$B);"0(2(G[3(ED)!!(BT<HBSA$BV`$#[9H +M".@`````@'@0`4B)QG0DBWL80`^VS42)XDF)V$B+;"0(2(L<)$R+9"002(/$ +M&.G[^?__BWL80`^VS42)XDF)V$B+;"0(2(L<)$R+9"002(/$&.G7\O__9F9F +MD&9FD$B#[!A(B1PD2(EL)`A(B?M,B60D$$B+1RB+.$2+8`0/MF@(Z`````"` +M>!`!2(G&="2+>QA`#[;-1(GB28G82(ML)`A(BQPD3(MD)!!(@\08Z7OY__^+ +M>QA`#[;-1(GB28G82(ML)`A(BQPD3(MD)!!(@\08Z5?R__]F9F:09F:0055! +MB?5!5%5(B?U32(/L"(7VB;5<`@0`=#%(B?M%,>1$B>!(B>]!@\0!2,'@!$B- +MM`58`@``Z`````!(B8-0`@``2(/#$$4Y['752(L%`````,>%8`($`!(```!( +MA<!T&HM0$#F58`($`'8&B95@`@0`2(M`"$B%P'7F2(/$"%M=05Q!7<-F9F:0 +M9F:09F:055-(B?M(@^P(1(N'7`($`$6%P'0L,>V)Z$B)WX/%`4C!X`1(`=A( +MBY!8`@``2(NP4`(``.@`````.:M<`@0`=];'@UP"!```````2(G?2(/$"%M= +MZ0````!F9F:09F:055-(B?M(@^P(@+^P`````TB+;U@/A(P````/MH.R```` +M/!`/A)$````\!70C=Q,L`0^$D0```,=%4/____]FD.L5/`L/A8<```!F9I!F +M9I#'15#]____2(MS>$B%]G0/2(L[2(''\````.@`````2(L[Z"G___](B=_H +M`````$C'15@`````2(EM8$B-=5A(QT5H`````$B+?1!(@\0(6UWI`````/:' +MFP````$/A&?____&A[(````02(M%,,8``<:#L@````''15``````ZX8\#0^$ +M=____\=%4/_____I<O___V9F9I!F9F:09F:054B)_5-(@^P(2(M?6(M#&#TD +M_P``=&D]&?\``'1B@+VR````$'9RQT-0_____V:02(M]`$B+=7A(@<?P```` +MZ`````!(BWT`Z&/^__](B>_H`````$C'0U@`````2(E;8$B-<UA(QT-H```` +M`$B+>Q!(@\0(6UWI`````&9F9I"`O;(````,=$Q(BT,PQ@``@+VR````$'>. +M2`^^C;(```"X`0```$C3X*D@*0$`=12H`@^$;____\=#4`````#I;/___\=# +M4/W___]F9I!FD.E;____2(M#,+\1````Q@`!2(MU4.@`````QH6R`````>O% +M9F9FD&9FD&9FD&9FD$B#[!A(B5PD"$B);"002(G[@W\<!TB+1RB+*'8&@W\@ +M`W<=QT-0_O___TB+7"0(2(ML)!!(@\08PV9F9I!F9I")[^@`````2(7`=->) +M[^@`````2(L02#M3$'0)QT-0_/___^O%2(-X&`!UMX!X$`1VL8MP,(/^_W2P +M2(MZ".@`````A<!TH\=#4/____]FD.N89F9FD&9F9I!F9I!F9I!(@^P82(D< +M)$R)9"002(G[2(EL)`A$BX^$`P``28GT187)=0I(@[_@`P```'05,<!(BQPD +M2(ML)`A,BV0D$$B#Q!C#BW<P@_[_=!!(BP=(BW@(Z`````"%P'73@'L0!'8_ +M9O>#8`(``'`(=<*`>T0`="<Q[4B+?.M@2(7_=`Q,B>;H>O___X3`=*0/MD-$ +MC54!2(/%`3G0?]NX`0```.N0=!-,B>9(B=_H@V3__P^VP.E[____2(M[.$R) +MYNAO9/__#[;`Z6?___]F9F:09F:02(/L"(!_$`1V%C'`2(._@`(```!T"DB# +MQ`C#9F:09I#H"____TB#Q`@/ML##9F:0059!54%455-(BT\H2(G[2(M7,(L! +MQP(`````08G&08G%08'F``$``$&!Y?\```!T?T4QY+T$````ZS-F9I!FD$B# +M>!@`=5XQ]H!X$`5(B<=(#T/PZ'?___^$P'1(08/$`4B#Q01%.>QT1DB+2RB+ +M/"GH`````$6%]G7%2(-X&`!U(V;W@&`"``!P"'48BW`P@_[_=,A(BP!(BW@( +MZ`````"%P'2X2(M3,$&-1"0!B0)(QT-8`````$B)6V!(C7-82,=#:`````!( +MBWL06UU!7$%=05[I`````&9F9I!F9I!!5S'2059!54%428G\55-(@^P(2(M/ +M*(L!]L3_08G%#Y3"08'E_P```(E4)`1(BU<P00^5QT6$_T0/MG0D!,<"```` +M`'1K,>U%A/9T-F9FD(GHB>N+?($$Z``````Q]H!X$`5(B<=(#T/PZ('^__^$ +MP`^$N@```(U#`4B#Q0%!.<5W=46$_W0I,=MF9I!F9I!)BT0D*(G:2(/#`8M\ +MD`3H`````$B)Q^@`````03G==]]$BU0D!$6%TG5,0<=$)%``````2<=$)%@` +M````38ED)&!)C70D6$G'1"1H`````$F+?"002(/$"%M=05Q!74%>05_I```` +M`$6$]G2&28M,)"CI2?___T6$_W2X28M$)"B+>`3H`````$B#Q`A(B<<Q]EM= +M05Q!74%>05_IOWS__TF+5"0PC4,!0<=$)%#_____B0+I>____V9F9I!F9I!( +M@^Q(2(E<)#!(B6PD.$B)^TR)9"1`2(MO6$R+9U"!?1A"_P``#X2E````#[:' +MFP```$B+53"(0@H/MX>4````B$(&#[>'E@```(A"!P^WAY@```"(0@@/MH>: +M````B$()#[>'D````(A"!`^WAY(```"(0@4/MX><````B$(+@+NR`````0^$ +MJP```,=%4/____](B=_H`````$B+?1!(C7582,=%6`````!(B6U@2,=%:``` +M``#H`````$B+7"0P2(ML)#A,BV0D0$B#Q$C##[:'FP```$B+53"(0@\/MX>4 +M````9HE""`^WAY8```!FB4(*#[>'F````&:)0@P/MH>:````B$(.#[>'D``` +M`&:)0@0/MX>2````9HE"!@^WAYP```!FB4(0@+NR`````0^%5?___XM%&,=% +M4``````]0O\``'15/1C_```/A4#___](BT4H@'@*\@^%,O___TF+1"1H2(GF +M28N\)(````#_4'A(BU0D&$B!P@`!```/M@*H!`^$"/___X/@^TR)YX@"Z``` +M``#I]O[__TB+12B`>`_R#X7H_O__9F:09I#KKV9F9I!F9F:09F:09F:0058Q +MP$%505154TB)^V9FD,8$&`!(@\`!2(/X+'7RQP,L````Z,=2__^(0P1(BP4` +M````2(,X``^40P5(BST`````Z`````#!X`P]____`0^&CP```,9#!@7&0P<+ +M#[9#"T&\!0```$4Q[44Q]L9#"`#&0PD!QD,*#X/@_H/("(A#"^LA1(GHQD0K +M'$"#R"!!@_P%1`]$Z$&#Q@%!@\0!08/\#70N1(GGZ`````!(A<!TZ42)YT$/ +MMN[H\E/__T&#_`:(1"L,=;Q!@\U`QD0K'`+KQ$&`_6!T&%M=05Q!74%>,<## +MQD,&!\9#!P?I;/___TB+!0````"#N*0"!``#=MA!#[;&QD0##!+&1`,<0#'` +M6UU!7$%=05[#9F:09F:04TB)^TB+?S#HT_[__X7`=`?'0U#_____2,=#6``` +M``!(B5M@2(US6$C'0V@`````2(M[$%OI`````&9FD&9FD$%6055)B?U!5%53 +M2(/$@$R+9Q!,B>?HI5S__T6+G"2@`@0`187;#X61````28ML)!!!QX0DH`($ +M``$```!(A>T/A*T```!(BT4(2(M]$$B)YO]0.`^V1"0000&$)*`"!`"`?"00 +M`'0U,=MF9I!F9I!(B>E(Q\(`````B=Y(B>_H`````(3`=0E!@ZPDH`($``$/ +MMD0D$(/#`3G8?]-(BVT`2(7M=:!!BX0DH`($`(/H`87`08F$)*`"!`!T0DF+ +M?1!)C7580<=%4/S___])QT58`````$V);6!)QT5H`````.@`````2(/L@%M= +M05Q!74%>PT''A"2@`@0``````$F-M"0X`@``28U\)$A)QX0D.`(```````!- +MB:0D0`(``$G'A"1(`@```````.@`````ZXIF9F:09F:09F:09F:0Z0````!F +M9F:09F9FD&9FD$B#["A,B60D&$R);"0@28G\2(E<)`A(B6PD$$F)]4B+;QB# +MK:`"!``!A=(/B+0```#H`````$B%P$B)PP^$L0```(`]``````!U-4B)WK\" +M````Z`````"+G:`"!`"%VW0^2(M<)`A(BVPD$$R+9"083(ML)"!(@\0HPV9F +MD&:0#[9`9*@"=<.H`0^%@P```/9#9`1UM8!+9"3KKV9F9I!(C;4X`@``2(U] +M2$C'A3@"````````2(FM0`(``$C'A4@"````````2(M<)`A(BVPD$$R+9"08 +M3(ML)"!(@\0HZ0````!(C7\@Z`````#I9?___TF+1"0(3(GO_Y"`````28U\ +M)"!,B>[H`````.E%____2(G?Z`````!F9I!FD.EK____9F9FD&9F9I!F9I!( +M@^P82(D<)$R);"002(G[3(ED)`A(BT<H1(M@!(LXZ`````!$B>=)B<7H```` +M`$R)[TB)QN@`````@_@!2(M[$$B-<U@9P$C'0U@`````2(E;8/?02,=#:``` +M``")0U!(BQPD3(MD)`A,BVPD$$B#Q!CI`````&9FD&9FD&9FD$%4@#T````` +M`%5(B?U3='%(BU\83(UG&$PYXW4+ZS.02(L;3#GC="J`NX#\__\!2(V[</S_ +M_W7H]D/P`73B#[8U`````.@`````2(L;3#GC==;'A3@!````AY,#2,>%2`$` +M``````!(C;4X`0``2(FM4`$``$B)[UM=05SI`````%M=05S#9F9FD&9FD&9F +MD$%505152(G]4TB![,@```!,BV\02(MW*$B-1"0,28GD2(GGQ@<`2(/'`4@Y +MQW7TNK````!!QP0D?`$``.@`````2(M=,#'V3(GB3(GOZ.['__^#^/^)`W4# +MB4502(M]$$B-=5A(QT58`````$B);6!(QT5H`````.@`````2('$R````%M= +M05Q!7<-F9I!FD%4QP$B)_5-(@^P(2(M?,)#&!!@`2(/``4@]@````'7P2(G? +MZ%CZ__^%P'0NQT50_____TC'15@`````2(EM8$B-=5A(QT5H`````$B+?1!( +M@\0(6UWI`````,<#@````,=#/``@```QT@^V1!H,@^`/@^@#/`)W!<9$&BP& +M2(/"`4B#^A!UXNNJ9F9FD&9FD$%7059!54F)_4%455-(@^P(2(M'*$B+7S"+ +M*#'`9F:0Q@08`$B#P`%(/?H```!U\(GOZ`````!)B<0QP&9F9I#&!!@`2(/` +M`4@]^@```'7PA>UT9DV%Y'1A28M$)"BZ_____TB)0P1)BT0D&$B%P'0&BY#H +M`P``B5,,08M4)#"X_____X72#TG"B$,#28L$)$B+>`CH`````(A#`D$/MH0D +M@0,``(A#`4$/MD0D$#P$=S\L`0^$LP$``$''15#_____2<=%6`````!-B6U@ +M28UU6$G'16@`````28M]$$B#Q`A;74%<05U!7D%?Z0````#&`P%)BT0D4$R) +MYV:)@^@```#HB%#__XF#Y````$F+A"1P`@``2(E#($F+A"1X`@``2(E#*$$/ +MMGPD$.AO3?__B(.$````00^V1"1%3(GGB(.%````28N$)&@"``!(B8/0```` +MZ":Z__],B>>)@X@```#H`````,:#A@````")@\P```!!@'PD1``/A&@!``!% +M,?9%,?]+BVST8$B%[0^$$P$``("[AP`````/A!<!``"`?1`$#X0F`0``BX7H +M`P``0HF$LXP````/MI.&````08/'`4F#Q@&#P@&(DX8```!!#[9$)$1$.?@/ +MCZ\````/MM*#^@]_%DACPH/"`8/Z#\>$@XP```#_____?NI)BX0D@`(``$B% +MP`^$LO[__TB+4`BY_____TB%TG0&BXKH`P``B8O8````2(M0$+G_____2(72 +M=`:+BN@#``")B]P```!(@W@(``^$<_[__TB#>!``#X1H_O__3(GGZ`````") +M@^````#I5?[__TB-<R#&`P),B>?HA-;__X7`#X4V_O__Z3G^__]F9F:09F:0 +M08/_#P^/1____TN+;/1@2(7M#X7M_O__0L>$LXP`````````Z0'___\/MGT0 +MZ-Y+__^(@X<```"`?1`$#X7:_O__2(M%.(N`Z`,``$*)A+.,````Z='^__\Q +MTNGY_O__059!54F)_4%455-(BT<H2(M?,(LH,<#&!!@`2(/``4@]V````'7P +MB>_H`````$F)Q#'`Q@08`$B#P`%(/=@```!U\(7M=#A-A>1T,TF+1"0HNO__ +M__](B4,$28M$)!A(A<!T!HN0Z`,``(E3#$$/MD0D$#P$=SDL`0^$"@$``$'' +M15#_____2<=%6`````!-B6U@28UU6$G'16@`````28M]$%M=05Q!74%>Z0`` +M``#&`P%)BX0D<`(``$B)0Q!)BX0D>`(``$B)0QA!#[9\)!#HVDK__XA#=$$/ +MMD0D14R)YXA#=4F+A"1H`@``2(F#P````.B7M___3(GGB4-XZ`````#&0W8` +MB8.\````08!\)$0`#X2T````13'VZS2`?1`$=%`/ME-VBX7H`P``B423?`^V +M0W:#P`$\#XA#=G=D00^V1"1$08U6`4F#Q@$YT'Y22XML]&!(A>UTY(![=P!U +MO`^V?1#H1$K__XA#=X!]$`1UL$B+53@/MD-VBY+H`P``B52#?.NJ2(US$,8# +M`DR)Y^C(V?__A<`/A=_^___IXO[__P^V4W:#^@]F9F:0#X_1_O__2&/"@\(! +M@_H/QT2#?/____]^[>FY_O__,=+KY&9F9I!F9F:09F:09F:0059!54F)_4%4 +M55-(BT<H2(M?,(LH,<#&!!@`2(/``4@]K@```'7PB>_H`````$F)Q#'`Q@08 +M`$B#P`%(/:X```!U\(7M=#=-A>1T,DF+1"0HNO____^)0P1)BT0D&$B%P'0& +MBY#H`P``B5,(00^V1"00/`1W.2P!#X0)`0``0<=%4/____])QT58`````$V) +M;6!)C7582<=%:`````!)BWT06UU!7$%=05[I`````,8#`4F+A"1P`@``2(E# +M#$F+A"1X`@``2(E#%$$/MGPD$.C[2/__B$-P00^V1"1%3(GGB$-Q28N$)&@" +M``")@YP```#HN;7__TR)YXE#=.@`````QD-R`(F#F````$&`?"1$``^$L``` +M`$4Q]NLT@'T0!'10#[93<HN%Z`,``(E$DW@/MD-R@\`!/`>(0W)W9$$/MD0D +M1$&-5@%)@\8!.=!^4DN+;/1@2(7M=.2`>W,`=;P/MGT0Z&9(__^(0W.`?1`$ +M=;!(BU4X#[9#<HN2Z`,``(E4@WCKJDB-<PS&`P),B>?HZM?__X7`#X7@_O__ +MZ>/^__\/ME-R@_H'#X_6_O__2&/"@\(!@_H'QT2#>/____]^[>F^_O__,=+K +MY&9F9I!!54F)_4%455-(@^Q(2(M?*(L[A?]U=$B++0````#&1"0P!DB%[70W +M3(UD)#!(BUT02(7;="!(BT,0,?],B>9(B40D.$B+0PC_D,````!(BQM(A=MU +MX$B+;0!(A>UUSDF+?1!)C7582<=%6`````!-B6U@2<=%:`````#H`````$B# +MQ$A;74%<05W#Z`````!(B<4/MD,$3(UC!(3`=3N`?1`!#X0B`0``0<=%4/[_ +M___V1600=*A(BT5H2(N]@````$B)YO]0>`^V1"0.2(GOB$5BZ`````#KA2P! +M=`U!QT50_O___^ET____@'T0!)!VMT$/MD0D`3P!=$=F9F:0#X/*`0``08-] +M'!AF9I!FD'672(V5<`(``#'`Q@00`$B#P`%(@_@0=?))BT0D!$B)`DF+1"0, +M2(E""("-8`(```3K;D&#?1Q(#X5;____2(V-C`(``#'`Q@0(`$B#P`%(@_@$ +M=?))BT0D!$F-5"0$2(D!2(M""$B)00A(BT(02(E!$$B+0AA(B4$82(M"($B) +M02!(BT(H2(E!*$B+0C!(B4$P2(M".$B)03B`C6`"```$]H5@`@``!`^$H?[_ +M_TB)[^@`````Z93^__]!@'PD`04/A]+^__]!#[9$)`%F9I#_),4`````08-] +M'`EF9F:0#X6S_O__QD0D,`E!#[9$)`1(C70D,(A$)#A(BT5H2(N]@````/^0 +MP````$&)15#IC?[__T&#?1P)#X5Z_O__QD0D,`5!#[9$)`3&1"0Y`(A$)#A( +MBT5H2(UT)#!(B[V`````_Y#`````08E%4(!-9!#I2_[__T&#?1P)#X4X_O__ +MQD0D,`1!#[9$)`3&1"0Y`(A$)#CKO$&#?1P)#X47_O__QD0D,`-!#[9$)`2( +M1"0XZZ!!@WT<"0^%^_W__\9$)#`"Z^)!@WT<"0^%Z?W__X!-9(#&1"0P`.O, +M9F:09I`\`G0-0<=%4/[____IT/[__T&#?1P)#[:U@0,```^%MOW__P^V0PA( +MC7L(0#C&=$"`?1`$B(6!`P``=C2`?40`="XQR4B+5,U@2(72=!.`>A`$=@T/ +MMH6!`P``B(*!`P``#[9%1(U1`4B#P0$YT'_40(#^`G0,@(U@`@``!.E?_O__ +M@#\"=.](Q\(`````3(GN2(GOZ#=K___I$OW__V:005152(G]4TB+7RB+.TR- +M8P3H`````$B)QHM#!*@!=#I(C99P`@``,<!F9F:09F:0Q@00`$B#P`%(@_@0 +M=?))BT0D!$B)`DF+1"0,2(E""(".8`(```1!BP0DJ`)T8TB-CHP"```QP,8$ +M"`!(@\`!2(/X0'7R28M$)!1)C50D%$B)`4B+0@A(B4$(2(M"$$B)01!(BT(8 +M2(E!&$B+0B!(B4$@2(M"*$B)02A(BT(P2(E!,$B+0CA(B4$X@(Y@`@``!/:& +M8`(```1T"$B)]^@`````2,=%6`````!(B6U@2(UU6$C'16@`````2(M]$%M= +M05SI`````&9FD&9FD&9FD$%505154TB)^TB![,@```!,BV<H2(GE08L\).@` +M````28G%2(U$)`Q(B>=F9I!FD,8'`$B#QP%(.<=U]$F-="0$NK````#'10!\ +M`0``Z`````!(BWL02(GJ3(GNZ*^[__^%P(G"="R#^/]T-4B+0S!(BWL02(US +M6$C'0U@`````2(E;8$C'0V@`````B1#H`````$B!Q,@```!;74%<05W#B4-0 +MZ\9F9F:09F:09F:005152(G]4TB+1PA(BQB+LV@"!`!(B=],BZ/@`0``Z)WE +M__](BU4(2(M%$(MP-#ER-`]#<C1(BSKH`````$B%P$F)P`^$I`$``(L5```` +M`(72?A!(BT4(.Y#<`@``#Y_`#[;008E0:$'&@+(`````#[:%J@```(3`#X7H +M````2(U%2$F)0'!(BT4(08"(L0````*+BU@"!`!)B4!0#[>%F@````^WE9@` +M```IPHG(BXM@`@0`P>@)@^D!#Z_!.<(/1]"X``$``&:!^@`!#T;"9D&)@)@` +M``"`?2@`#X3R````0?:`L0````0/A.0````/MX68````00^WD)@```!(`X60 +M````2"G0#[>5F@```$@IT$F)@)````!!@(BQ````"$V)8%A(@WM(`$G'@,@` +M````````2<>`P``````````/A`0!``!(BTM`28U0&$B-0SA(B5-`28E`&$F) +M2"!(B1%;74%<PSP##X00____2(M%$$&`B+$````$28E`4(N#7`($`(7`#X3* +M````BXM8`@0`,?9(BY-0`@0`B?!(P>`$A<E(BQ00=!J)R&9FD&:0Q@(`2(/" +M`4B#Z`%U\XN+6`($`(/&`3FS7`($`'?&Z<G^__\/MX6:````2`.%D````$F) +M@)````#I+/___P^VA:H```"$P'5,2(M]"$B-=4CH`````$B+10A(BSCH/^3_ +M_T''1"10_____TG'1"18`````$F-="1838ED)&!)QT0D:`````!;74F+?"00 +M05SI`````#P#=;WKKEM=05Q,B<?I`````(N+6`($`.D[_O__9F9FD&9F9I!F +M9F:09F:02(/L*$B);"002(G]2(E<)`A,B60D&$R);"0@#[:%L@```$B+5U!, +MBV=82(L_2(N:@`(``#P!=$@\`@^$5P$``$B-<S#&A;(`````2(/'2$C'0S`` +M````2(EK.$C'0T``````2(M<)`A(BVPD$$R+9"083(ML)"!(@\0HZ0`````/ +MMX.:````9@.%F````$@[4PAFB8.:````#X3G`@``#[>#F@```&8[@Y@````/ +M@XT!```/MH6Q````2,=%>`````!(QT5P`````(/@_8/(!(B%L0```$B+4Q!( +MB550QH6R``````^W@YH````/MY.8````BX]@`@0`@^D!*<*+AU@"!`#!Z`D/ +MK\$YP@]'T+@``0``9H'Z``$/1L)FB868````@'LH`'0-]H6Q````!`^%;@(` +M``^W@YH```!(`X.0````2(F%D````/:%L0````(/A/T!``!(@W](``^$\@$` +M`$B+3T!(C5482(U'.$B)5T!(B4482(E-($B)$4B+7"0(2(ML)!!,BV0D&$R+ +M;"0@2(/$*,-(BT,(QH.K`````8"@@`,``/Y(BT,0@*"``P``_DB+0PB`H&$" +M``#W2(M#$("@80(``/=(BT,(2(LXZ`KB__\/MH.J````A,`/A/L````\`P^$ +M\P```$B)[^@`````0<=$)%#_____28M\)!!)C70D6$G'1"18`````$V)9"1@ +M2<=$)&@`````2(M<)`A(BVPD$$R+9"083(ML)"!(@\0HZ0````!F9F:02(N: +M@`(``(![*`!(BTL(2(M3$$0/MJNJ````#X21````#[>#F````$B+DZ````!( +M*<)!@/T!2(F3H`````^$<P$``$&`_0(/A'\!``!(@[N@``````^%CP```$B+ +M.>@]X?__183M#X0X`0``08#]`P^$+@$``$B)[^@`````2(G?2(ML)!!(BUPD +M"$R+9"083(ML)"!(@\0HZ1*;__]FD$B+>PA(C7-(Z`````#I^_[__P^W@Y@` +M``!(`X.@````183M2(F#H````'5I2#M!*'4'QH.J`````4B+0BA(.8.@```` +M#X1Q____2(LYZ*[@__]%A.T/A)<```!!@/T#D`^$C````$B)[^@`````9I#I +MJ?[__TB)[TB+7"0(2(ML)!!,BV0D&$R+;"0@2(/$*.D`````08#]`W6>2#M! +M*'68Z17___]F.X.8````9F:0#X)(_?__9L>#F@``````Z?O\__\/MX.8```` +M#[>3F@```$@#@Y````!(*=`/MY68````2"G02(F%D````.EY_?__2(M["$B- +M<TCH`````.EB____2(M["$B-<TCH`````.G`_O__2#M1*`^%C?[__\:#J@`` +M``#I@?[__T@[42@/A7?^___I@/[__V9FD&:0]H>Q`````DB+!\:'L@````!T +M(TB#>$@`=!Q(BTA`2(U7&$B)4$!(@\`X2(E'&$B)3R!(B1'#Z0````!F9I!F +MD%-(B?M(BS^+MV@"!`#HWM[__TB+`TB#>$@`=!U(BTA`2(U3&$B)4$!(@\`X +M2(E#&$B)2R!(B1%;PTB)WUOI`````&9F9I!F9F:09F:09F:02(/L.$B)7"0( +M2(EL)!!,B60D&$R);"0@3(ET)"A,B7PD,$B+7UA,BW=@3(LK38NEX`$``$F+ +M1"0H1(LXZ`````"`>Q`$#X:=````2(NK@`(``$B%[0^$[0```$B+?0A(A?]T +M#+H"````,?;HD+#__TB+?1!(A?]T#+H"````,?;H>[#__TB+11A(BU4@28V] +MT````$B)[DB)4`A(B0+H`````$&-7@%$.?MT5$F+1"0HB=J+?)`$Z`````") +MWDB+;"002(M<)`A,BV0D&$R+;"0@2(G'3(MT)"A,BWPD,$B#Q#CI"&'__TB) +MWT&-7@'H`````$0Y^W6S9F9FD&9FD$F+?"0028UT)%A)QT0D6`````!-B60D +M8$G'1"1H`````$B+7"0(2(ML)!!,BV0D&$R+;"0@3(MT)"A,BWPD,$B#Q#CI +M`````+H"````,?9(B=_HJ:___^E'____9F9FD$B#["A,B60D$$B)7"0(28G\ +M3(EL)!A,B70D($R+=PA(BU\028L&2(G>3(GW3(NHX`$``.A(1?__2,>#@`(` +M``````!)QX:``@```````$$/MI:``P``#[:#@`,``$F-=5B#X@2#X/L)T(B# +M@`,``$$/MI:``P``@^#]@^(""="(@X`#``!!#[9&2(A#2$F+?1!)QT58```` +M`$V);6!)QT5H`````.@`````2(G>OQ4```#H`````$F+5"0828M$)"!)C70D +M,$F+/DG'1"0P`````$V)9"0X2<=$)$``````2(E""$B)$$B+7"0(3(MD)!!, +MBVPD&$R+="0@2(/$*.D`````D)"0D)"0D)"0D)"02(N'V`,``$B%P'0?2(M6 +M"$@Y$',-2(L.2#E("`^'JP```$B+0!!(A<!UY4B+EZ`#``!,C8>@`P``3#G" +M=#IFD$B-0NB`N+``````=2-(BXB0````#[>`F````$@!R$@Y!G,-2#M."')D +M9F9FD&9FD$B+$DDYT'7(2(N/L`,``$B!Q[`#``!(.?EU%^M&9F:0@/J`=!Q( +MBPE(.?EF9I!FD'0Q2(U!Z`^VD+````"$TG7?2(N0D`````^W@)@```!(`=!( +M.09SSD@[5@ASR+@!````PS'`PV9F9I!F9I!F9I!(@^P02(D<)$B);"0(2(G[ +M2(GUZ`C___^%P'4B2(N#V`,``$B)11!(B:O8`P``,<!(BQPD2(ML)`A(@\00 +MPTB#?2@`N/____]TYDB+@^`#``!(C9/@`P``2(7`=`U(C5`02(M`$$B%P'7S +MN/____](B2KKO&9F9I!F9F:09F9FD$B+A]@#``!(C9?8`P``2#GP=`U(C5`0 +M2(M`$$@Y\'7S2(M.&$B+1A!,C4X83(N'T`,``$DYR4B)`DC'1A``````=!U( +MBU8@28L`3(E!"$F)"$B)4`A(B0),B4X@3(E.&$B+!\=`:`$```##9F:09I!( +M@S\`=`U(BT<(2(EP$$B)=PC#2(EW"$B)-\-F9I!FD$B#QUCI`````&9F9I!F +M9I!32(N'@````$B)^TB%P'042,>'@`````````!(B[>(````_]!(BX/(```` +M2(L[2(US*$B)6S!(QT,X`````$B)0RA(@\=86^D`````9F9FD$B#[!A(B5PD +M"$B)^TB);"002(MO4.@`````2(MS>$B+4QA(C4L82(M#((.MB`,```&#K80# +M```!2(7V2(E""$B)$$B)2R!(B4L8=!9(B>](BUPD"$B+;"002(/$&.D````` +M2(M<)`A(BVPD$$B#Q!C#9F9FD&9F9I!F9F:09F:0055!5%532(GSB=9(@^P( +M3(M'6$R+IY````!$#[>OF````$F+B+@```!)BZB0````2(7)#X2H````00^V +M@+$````/M]*#X`$/ML`YT`^$CP```$2+`42)YRGOP><)1#G'1(G`<PWII@`` +M`&9FD&9FD(G02(/!$(G"`Q$YUW/R1(L!*<=!#[?UB?I(`U$(02GXP>8)1(D# +M1#G&2(E3"$B-4Q!V)4B+01@K,\=#!`````!(B=-(B4((BT$02(/!$(D"2(/" +M$#GP<MN),\=#!`$```!(@\0(6UU!7$%=N`$```##28N`P````$B%P'06B?), +MB<=(B=[_T(7`=`A(B=GI3____TB#Q`@QP%M=05Q!7<,QP.EJ____9F:09F:0 +M9F:0055!5%532(G[2(/L"("_L`````!(BV]0#X42`@``#[>'F````$R+IY`` +M``!*C0P@2(N%V`,``$B%P'0V#[:7L0```(/B0(32=`>+<$"%]G052#E#<'0/ +M2#L(=@I,.V`(#X+R`@``2(M`$$B%P&9FD'742(-[<``/A*$"``"`?1`$#X:I +M`0``3(NM@`(``$V%[0^$/0(``$&`O:L`````#X4O`@``]H.Q````"`^%(@(` +M`$B!N\@`````````#X01`@``23MM"`^%!P(``$&`?2@`#X3H`@``28N%H``` +M`$DYQ`^#(P$``$@YP0^&XP$``$B+>PB#1P@!Z`````!(B<=(BP-(B0=(BT,( +M2(E'"(M#:(E':$F+10A,B:>0````2(E'4+Z`____28N%H````$B)7UC&A[(` +M````2,>'P`````````!(QX?(`````````$C'A[@`````````9D0IX&:)AY@` +M```/MH>Q````#[:3L0```(/@/R'6B=`)\+XP````"<@AUHG1@^#'@^$( +M"?`)R(G1@^("@^$$@^#Y"<@)T`^VD[$```"#X/Z#X@$)T(B'L0```$B+4W"X +M`0```$B%TD@/1<)(C5,82(E'<$F+10A(BXBX`P``2(F0N`,``$@%L`,``$B) +M0QA(B4L@2(D1QH.P````@$B#Q`A;74%<05WI`````$F+11"#K80#```!2(E# +M4$B)Q8.`A`,```&`>!`$#X>F````9I!(BY6@`P``2(V-H`,``$@YRG4L2(L# +M2(E+&,=`:`$```!(C4,82(E!"$B)A:`#``!(B4L@2(/$"%M=05Q!7<.#>V@` +M=3=(B[6H`P``2(U^Z(M':(7`#X@5`0``2(U#&$B)2QA(B86H`P``2(D&2(ES +M($B#Q`A;74%<05W##X[,````2(U#&$B)4QA(B4((2(F%H`,``$B)2R!(@\0( +M6UU!7$%=P_:#L0````0/A$_____VA6$"```@#X1"____@*5A`@``W^@````` +M@(U@`@``!(E%/$B+`\>`E`($``$```!(BT582`E%4.D2____]H.Q````0`^% +M4OW__TB+A>`#``!(A<!U%NE!_?__9F9FD$B+0!!(A<`/A##]__](.PAV[DP[ +M8`ASZ$B+2"!(C5,82(E0($B#P!A(B4,82(E+($B)$4B#Q`A;74%<05W#2(N5 +MJ`,``$B-0QA(B4L82(F%J`,``$B)`DB)4R#IQ/[__X-':`%(BU8(2(U#&$B) +M<QA(B48(2(D"2(E3(.FD_O__28N%H````$@YP0^&._[__TDYQ`^#^_[__TB+ +M>PB#1P@!Z`````!(B<=(BP-(B0=(BT,(2(E'"(M#:(E':$F+11#I$_W__V9F +M9I!F9I!F9I!32(M'4$B)^TB+=WB#@(0#```!2(7V="E(B7XP2(M_4$C'1B@` +M````2,=&.`````#H`````(7`=1=(BT-X2(E#<$B)WUOI`````&9FD&9FD%O# +M9F9FD&9F9I!F9I!F9I!52(GY4TB#[`B`N;(````!2(M?6$B+?U!$#[>)F``` +M``^WLY@```!(BZ^``@``=$$/MH&R````2(M["$B)SL:#L`````"(@[(```#H +M`````$B+0PA(B=^#:`@!2(M%"(.`B`,```%(@\0(6UWI`````$B+@Y````!( +M.8&0````=:^+04!,BT%(A<!T$HG"3(G`Q@``2(/``4B#Z@%U\TB+10A(.?AT +M,DB)05!(BX6@````9D0ISF:)L9@```#&@;(`````2(G/2(F!D````$B#Q`A; +M7>D`````2(M%$.O(D$%72(U'&$R-?UA!5D%528G]05154TB#[!A(B40D"$B- +M1SA(B00D0<=%:`````#K&TB+0A!(A=))B458="U(QT(0`````$B+>@C_$DF+ +M55A).U5@==M(A=))QT5@`````$G'15@`````==--BW483#MT)`@/A&4"``#' +M1"04`````$BX(````/____])A4;P28VN</S__TF-7A!T",=$)!0!````3(VE +ML`,``&9FD&:02(N-H`,``$@YV0^$D@```$B+$4B+00A(B<](@^\82(E""$B) +M$$B)20A(B0ET=`^VE8`#``#VP@$/A&(!``!$BY6(`P``1872=`^+A<0#```[ +M1V@/CZL!``"#XA@/A:(!``"+1VA,B6<8@X6(`P```8F%Q`,``$B+A;@#``!( +MB8VX`P``2(D(2(E'($B+10C_4"A(BXV@`P``2#G9#X5N____3(VER`,``&9F +M9I!F9I!(BXW(`P``3#GA=&1(BQ%(BT$(2(G+2(/K&$B)0@A(B1!(B4D(2(D) +M=$9(BW-X2(7V="E(B5XP2(M[4$C'1B@`````2,=&.`````#H`````(7`=:Q( +MBT-X2(E#<$B)W^@`````2(N-R`,``$PYX76<2(.]X`,```!,C:7@`P``="E) +MBQPD2(7;="!(B=Y(B>_HR_3__X7`#X2$````3(UC$$F+'"1(A=MUX$V+-DP[ +M="0(#X5I_O__1(M,)!1%A<D/A+@```!)@WU8``^%]?W__T&+?6B%_P^%Z?W_ +M_TB#Q!A;74%<05U!7D%?PV9F9I#&A[(````"2(N%N`,``(.%B`,```%(B8VX +M`P``3(EG&$B)1R!(B0CH`````.DO_O__2(M#$$B-<RA,B?])B00D2(N%V`,` +M`$B)0Q!(B9W8`P``Z`````!!QT5H`0```.DM____2(N%H`,``$B-5QA,C:7( +M`P``2(E0"$B)1QA(B5\@2(F5H`,``.F"_O__18N%E`($`$6%P'0=ZVU(BT(0 +M28E%2$B%TG112,="$`````!(BWH(_Q))BU5(23M54'7;2<=%4`````!)QT5( +M`````.O12(L12(M!"$B)STB#[QA(B4((2(D02(E)"$B)"0^$X?[__^@````` +M28M-.$@[#"1US^G-_O__0<>%E`($``````!,B>_H`````.N99I!32(L?2(-[ +M2`!T)$B+2T!(C5<82(U#.$B)4T!(B4<82(E/($B)$4B)WUOI`````.@````` +MZ_"0D)"0D)"0D)"0,=)(A?]T#$B-1_^#P@%((<=U](G0PV9F9I!F9I!F9I!! +M54G'Q?[___]!5%532(G[2(M[4$B+:QA(A?]U#?:#8`(```(/A9H```!%,>1( +M"WM8Z`````!(BU,(1`'@#[92"CG0?D>`HX`#``#^]H.``P```70P2(7M="L/ +MMG5$0(3V=")(.5U@3(GH=$PQTNL-#[;*2&/!2#E<Q6!T,8/"`4`X\G7K6UU! +M7$%=PTB+0U"`BX`#```!2(7`=+!(B<)(,U-8=3>`HV`"``#]ZYY(Q\#^____ +M2-/`2"%%6$B)Z^E,____2(M#"(!X"P$/A5C___]$#[9@"NE1____2(70D`^$ +M9O___X"+8`(```+I6O___V9F9I!F9F:09F:09F:02(MW&$0/MD9$183`="<Q +MR3'22#E^8'45ZR!F9I!F9I`/MLI(8\%(.7S&8'0-@\(!1#C"=>NY_P```(G( +MPV9FD$R+1CA-A<!T3TF+0!A(A<!T/DB+0!A(A<!T-4@Y^'1`#[901(72?NHQ +M]DB+3/!@2(7)=`N`>1`$=@5(.?ET(4B#Q@$Y\G_C2(M`&$B%P'7+38L`387` +M=;$QP,-F9I!FD+@!````PV9F9I!F9I!F9I!!5$F)U%5(B?532(G[2(/L$(!_ +M$`0/AH\```#'1"0,`````,=$)`@!````#[9/1(7)?B=(BW]@,=)(B=A(A?]T +M$NF%````2(MX:$B#P`A(A?]U>(/"`3G*=>Q(BU,(@'H)`'0D#[9#1`^V4@HI +MT`^O1"0(B40D"`^W0T8[1"0,#T9$)`R)1"0,2(7M=`>+1"0,B44`387D=`B+ +M1"0(08D$)$B#Q!!;74%<PTB%]G0&QP8`````387D=.=!QP0D`0```$B#Q!!; +M74%<PTB-5"0(2(UT)`SH`````$B+4PB`>@D`=*3I>____V9F9I!F9I!32(G[ +M2(/L$$B+?PA(C50D"$B-="0,Z`````!(BWL02(UT)`1(B>+H`````(M4)`@[ +M%"2+1"0,#Y=#*#E$)`0/0T0D!`^OPKJ`````9H7`#T709HF3J````$B#Q!!; +MPY!!5$F)]%53#[9'$$B)^SI&$'0-N`$```!;74%<PV9FD`^W1T1F.T9$=>F` +M?T0`#X28````2(M_8$B+=F!(A?]TTC'M2(7V=,N`?Q`$=CB`?A`$=K_H```` +M`(3`=;8/ME-$C44!.<)^9$B+?.MH28MT[&A(@\4!2(7_=)A(A?9TDX!_$`1W +MR(!^$`1WATB+1CA(.4<X#X5Y____2(M72$B+1DA(BT@(2#E*"`^%8____TB+ +M2!!(.4H0#X=5____]H-@`@```W26Z4?___\QP&:0Z4/___]F9F:09F9FD&9F +MD%-(BU\(2(M'$$B%VW0R2(7`=&[V@X`#```!=3F`H(`#``#^QT,P_____X"C +M@`,``/[&AZL````!6\-F9I!F9I!(A<!T[("@@`,``/[&AZL````!6\/V@(`# +M```!=+[&AZL`````@(MA`@``!("(80(```3H`````$B)WUOI`````("C@`,` +M`/[&AZL````!6\-F9F:09F9FD&9F9I!F9I!!5TF)]T%6055!5%5(B?U32(/L +M&`^V5T2%T@^.C0$``$4Q[>F&````2(7`28EL)!AT"$C'0!@`````3HED[6`/ +MMI5@`@``2,>%:`(```````")T(/("J@@B(5@`@``=`F#RHJ(E6`"```/MDPD +M%+@!````2-/@2`E%4$CWT$@A15A-A?\/A#L!``"`C6`"```$387_#X43`0`` +M#[951$&-10%)@\4!.<(/CO\```!$B6PD%$J+1.U@2(7`=`GV@(`#```!==1- +MA?]-B?P/A5;___](BT4(#[9`"BG"2(M%*$ACTDB)T3'22/?Q2(D$)$B+10!( +MBU@82(/`&$@YPW2:13'D2,=$)`C_____ZQ)FD$B+10!(BQM(@\`82#G8=%#V +M0_`!3(VS</S__W3C@+N`_/__`77:]H/4_/__!'313(GV2(GOZ';[__^$P'7" +M2(N#L/S__T@Y!"1WM4@[1"0(<ZY-B?1(B40D".ND9F9FD$V%Y`^$(?____:% +M80(```)T:TF+1"0X2(7`=!=F9F:02(-X&``/A?_^__](BP!(A<!U[4J+1.U@ +MZ7O^___VA6`"```(=2%(@\086UU!7$%=05Y!7\-,B>:_!P```.@`````Z;/^ +M__](@\082(GO6UU!7$%=05Y!7^D`````2(LT)#'23(GGZ`````!(A<!)B<0/ +MA)/^__]*BT3M8.D7_O__9F9FD&9F9I!F9F:09F:0059!54%454B)_5-(@>P` +M`@``@'\0!'8'@*=@`@``^_:%@`,```%T6H!]$`1V9(!]1`!T3C';2(M,W6!( +MA<ET,P^VE8`#```/MH&``P``@^("@^#]"="(@8`#``!(BWS=8(!_$`1V!P^V +M14B(1TCH``````^V142-4P%(@\,!.=!_M$B!Q``"``!;74%<05U!7L-,BW4X +M0?:&@`,```$/A.$"``!,BVT813'D387M=`U-BV48387D#X0"`P``2(GC2(G@ +M2(V4)``"``#&``!(@\`!2#G0=>Q-A>3'`_06>%H/A,("``!!BT0D.(E#!$&+ +M1"1`B8/&````]H6``P```G0$@$L6`4V%Y`^$IP(``$F#_0$9P(/``HA#&$F+ +MC"2``@``2(7)=#F+`0^V4Q:)0PA(BX&@````@^+]2(E##`^V02B#X`$!P`G" +MB%,63#EA$`^$=@(```^V@:H```"(0Q1!#[9$)$A-A>U,B>](#T3]B(/%```` +M00^VA"2!`P``B$,728M$)"A(B4,900^V1"00B$,A00^V1"1$B$,BZ+WX__^( +M0R-!#[9$)$4/ME,EB$,D00^VA"1@`@``@^+[@^`!P>`""<*(4R5!]H0D8`(` +M``)T!H/*`8A3)4F+1"1028V4)(P"``!(C4M=2(F#K0```$F+1"109HE#)TF+ +MA"1H`@``2(E#*4&+1"0\B8.]````28N$)'`"``!(B4-)28N$)'@"``!(B4-1 +M08N$)(@"``")0UE)BX0DS`(``$B)@YT```!)BX0DU`(``$B)@Z4```!)BX0D +MC`(``$B)0UU(BT((2(E!"$B+0A!(B4$02(M"&$B)01A(BT(@2(E!($B+0BA( +MB4$H2(M",$B)03!(BT(X2(E!.$V%[71]28M%*$B)[TB)0S%!#[9%$(A#.4$/ +MMD5$B$,ZZ*/W__^(0SM!#[9%10^V4SV(0SQ!#[:%8`(``(/B^X/@`<'@`@G" +MB%,]0?:%8`(```)T!H/*`8A3/4F+15!(B8.U````28M%4&:)0S])BX5H`@`` +M2(E#04&+13R)@\$```!(B=_H`````+X``@``2(GGZ`````#WV$4QP$B)X8A# +M%4B+=4"Z`0```$B+?3CH`````$F+1E!(BWTX13'`2(GAN@$```!(B<9(`W5` +M2"T```(`2"4``/[_2('N``@``$@IQN@`````3(MU.$'V1F00#X3R_/__3(GW +MZ`````!(@<0``@``6UU!7$%=05[#,<#'0P0`````Z3W]___&0Q@`Z=G^__], +MB>A%,>U)B<3I\/S__X/*!(A3%NE__?__9F9FD&9F9I!52(UO&%-(@^P(2(M? +M&$@YZW4*ZT=(BQM(.>MT/X"[@/S__P1(C8-P_/__=NCV@]#^__\$=-](BW@8 +M2(7_=`V02(GX2(MX&$B%_W7T2(G'Z`````!(BQM(.>MUP4B#Q`A;7<-F9F:0 +M9F:09F:09F:005154TB)^TB+?QA(A?]U].@`````3(NC@`(``(E#.$V%Y'0Q +M28ML)`A(.=UT3N@`````2(7M08D$)'099F9FD.@`````B44X.T,X=/-(B>_H +M`````$B)W^@`````2(M#"$B+0&!(A<!T#4B)WTF)PUM=05Q!_^-;74%<PTF+ +M;"00ZZMF9F:09F:09F:09F:0055!5%5(B?U32(/L"`^V1Q"#Z`4\!0^'U``` +M``^VP/\DQ0`````/MT=&2/?82"&':`(``/:'@`,```$/A;0!``!(BU582(72 +M=0=(@WU0`'1/@'T0"@^$N@$``("E8`(``/Y(A=)T.8"-80(``"!(@WU8`'0K +M]H6``P```71R2(M5&$B%TG0)]H*``P```70=,?9(B>_H`````&9FD&9FD/:% +M@`,```%T1TB+51CVA6$"```$=3[VA6`"```#=#5(BTU02(7)#X5G`0``2(72 +M=`GV@H`#```!=".`C6`"```(2(GOZ`````!F9F:09F:02(M5&$B%T@^$V0`` +M`$B#Q`A;74%<05W#13'M13'D@']$`'43Z]H/ME5$08U$)`%)@\0!.<)^3DJ+ +M7.5@2(7;=.6`>Q`$=M](B=_H`````/:#8`(```1T!X"-8`(```0/MH-@`@`` +M#[951(/@`SP"N`$```!$#T3H08U$)`%)@\0!.<)_LD6%[0^$<O___X"E8`(` +M`/XQVX72?QCI8/___P^V142-4P%(@\,!.=`/CDW___](BWS=8$B%_W3C@'\0 +M!';=]H=@`@```734#[:'8`(``(/@OH/(`HB'8`(``.@`````Z[KVA6`"```$ +M#X0:____2(/$"$B)[UM=05Q!7>D`````2(M76$B)T$CWT$B%1U`/A#S^__^` +MCV`"```"Z3#^__\/MDU$N`$```"#Z0%(T^!(.450#X4M_O__Z2_^__](BT58 +M2/?02(7!#X2Q_O__Z83^__]F9F:09F9FD$B#[!A(B5PD"$B);"002(G[2(GU +MZ%?S__^$P'5#]H-A`@```DB+0PA(BW,H#[9+1`^V4`IT,3'`]H-@`@``!'4/ +M2(M<)`A(BVPD$$B#Q!C#2(G?Z``````QP.OE9F9FD+C_____Z]H/ML$/MM(I +MT$ACT$B)\$B)US'22/?W,=)(B>](B<;H`````$B%P'312(G&2(G?Z`````#K +MFF9F9I!!5$&)U$N-!&152(TLQE-(B?,/MG4AZ`````!(A<!(B<</A"@!``"` +MH(`#``#^#[9#%XB'@0,``(M#!(E'.(N#Q@```(7`B4=`=0:+0P2)1T`/MH/% +M````2(UU$(A'2`^V5A4/MH=@`@``P.H"@^(!@^#^"="(AV`"``!(BT4I2(F' +M:`(``$*+A*.]````B4<\#[9-)+@!````T^"(3T5FB4=&2(M&"4B)1R@/MDTB +M2,?`_____X#Y/XA/1`^&E0```$B)1UA(BT-)2(U374B-CXP"``!(B8=P`@`` +M2(M#44B)AW@"``"+0UF)AX@"``!(BX.=````2(F'S`(``$B+@Z4```!(B8?4 +M`@``2(M#74B)AXP"``!(BT((2(E!"$B+0A!(B4$02(M"&$B)01A(BT(@2(E! +M($B+0BA(B4$H2(M",$B)03!(BT(X2(E!.%M=05Q(B?C#N`$```!(T^!(@^@! +MZ5K___]F9F:09F9FD$B[TB!@"``!,BZPD(`(``$R+M"0H`@``3(N\)#`"``!(@<0X`@``PV9F9I"% +MVW6[2(M%4$F+?"0X0;@!````2(GAN@$```!(B<9)`W0D0$@M```"`$@E``#^ +M_TB![@`(``!(*<;H`````(7`#X1D____Z73___]F9I!FD$B)Y^@`````@3PD +M]!9X6I!T"KO^____Z1G___^^``(``$B)Y^@`````A,`/A`3____KW[X``@`` +M2(GG9F:09I#H`````(3`#X4B____187M#X5`!```A=L/A9<%``!!@'XA!`^& +M!O___T&`?B)`9I`/A_G^__]!@'XZ0&9FD&:0#X?I_O__28M?&$F-5QA%#[=N +M)TT+KJT```!(.=-T)H"[@/S__P1(C:MP_/__=@Y(@[N(_/__``^$"`0``$B+ +M&T@YTW7:,=),B?9,B?_H;OS__TB%P$B)Q0^$D?[__P^VE6`"```/MDU$B="# +MXOW0Z$$*1B6#X`$!P`G"@/D_2,?`_____XB58`(``$B+55!W#+@!````2-/@ +M2(/H`4PAZ$@)T`^VE6`"``!(B45000^V1B6#X@'`Z`*#X`$XPG0C#[:58`(` +M`$B+10B#XOZ(E6`"``"`>`H`=`F#R@*(E6`"``!!BU8(A=)T94B+C8`"``"` +MC6$"```$2(7)#X3I`@``@'DH``^$R0(``$F+1@Q(.8&@````=A)(B8&@```` +M00^V1A2(@:H```!!]D86!`^$D`0``$B+41!(A=(/A',$``!(BT$(2#G"#X14 +M!```BT4\03N&O0````^$6`(``("-8`(```)(QX5H`@````````^VE8`#``") +MT(/B_=#H00I&%H/@`0'`"<*(E8`#``!!@'X8`4$/MD8C#X:;`0``1`^VZ$J+ +M7.U@2(7;#X3;`0``#[:3@`,```^V2T1(BWM0B="#XOW0Z$$*1A:#X`$!P`G" +MB).``P``#[:38`(``(G0@^+]T.A!"D8]@^`!`<`)PH#Y/XB38`(``$C'PO__ +M__]-BX:U````00^W=C]W#+@!````2-/@2(T4$`^WQDP)P$@APD@)^DB)4U!! +M#[9&/0^VDV`"``#`Z`*#X@&#X`$XPG0C#[:38`(``$B+0PB#XOZ(DV`"``"` +M>`H`=`F#R@*(DV`"``!!#[9..TACP4B#?,-@``^%<OS__TR)9,-@BT,\03N& +MP0```$F)7"08#X2%````@(M@`@```DC'@V@"````````2,?`_O___TB)WTC3 +MP$@A0UCH``````^V@V`"``"H$'4-J"!T%(/(@(B#8`(``$C'@V@"```````` +M]H6``P```71*2(N%@`(``$B%P'0^2(M0"$B%TG0U2(MX$$B%_W0L2#G52`]% +M^N@`````,<#IV/O__TF+1D%(.8-H`@``=H!(B8-H`@``Z73___\QP.FX^___ +M#[;(28EL)!A(B>](8\%,B63%8$C'P/[___](T\!((458Z``````/MH5@`@`` +MJ!!U$:@@#X1M____@\B`B(5@`@``2,>%:`(```````#I5/___[H!````3(GV +M3(G_Z"+Y__](A<!(B<,/A$7[__](B6@82HE$[6#I^_W__TF+1BE(.85H`@`` +M#X:I_?__2(F%:`(``.F=_?__28M&#$@Y@:`````/@T7]___I+OW__TF+1RA) +MC5\H2#G8#X33````.U#H2(U(Z`^$M@```$B+`$@YV'7KZ;D```!,B??H```` +M`$F+="1`28M\)#A%,<!(B>&Z`0```.@`````3(GWZ`````#IF?O__XN#J/S_ +M_T$[1@0/A>C[___V0_`!#X7O````08!^&`$/AO3[__]!#[9&(TB+7,5@2(7; +M#X3A^___]H.``P```0^$U/O__TB+>U!!#[=&/TD+OK4```!("<?H`````$B+ +M4P@/ME(*.=`/CJS[__](B>_H`````.F&^___2(7)2(F-@`(```^%,_S__TF- +MO]````#H`````$B%P$B)P4B)A8`"```/A`'Z__\QP,8$"`!(@\`!2#VP```` +M=?!)BT<P2(U1&$B)61A)B5<P2(D02(E!($&+1@B)`4F+1@Q(B8&@````00^V +M1A2(@:H```!!]D86`@^$Q/O__TB+A8`"``#&0"@!Z;3[__],B>]("[O`_/__ +MZ`````!(BY-X_/__#[92"CG0#X]"____Z>K^__],B??H`````$B+15!(B<9) +M`W0D0$@M```"`$@E``#^_TB0UA(B=_H`````/:#@`,```$/A;T```!(BT,82(7`#X26`0``2(M`"$B) +MW_]0,#'V@'M$`'1;2(M4\V!(A=)T1/:"@`,```%T.X!Z$`1V-0^VBF`"``") +MR(/@CT@YZHB"8`(```^$7P$``/:"8`(```%T$8/ACH/)`HB*8`(``&9FD&:0 +M#[9#1$B#Q@%(.?!WI4B+@X`"``!(A<`/A`X!``!(BU`(2(72#X0!`0``2(MX +M$$B%_P^$]````$@YTT@/1?J`IX`#``#^2(/$"%M=Z0`````/MH-@`@``@^"_ +MJ""(@V`"``!T%(/(@$C'@V@"````````B(-@`@``#[:38`(``(G0@^#^B(-@ +M`@``2(M#6$CWT$B%0U!U"8/B[(B38`(``$B+<QA(A?8/A(4```"`IF`"``#^ +M@'Y$`'1X,>TQR6:02(M4SF!(A=)T-O:"@`,```%T+8!Z$`1V)_:"8`(```%T +M'@^V@F`"``"]`0```(/@K(/(`HB"8`(``&9FD&9FD`^V1D1(@\$!2#G(=[-( +M@[N``@```'1>]H-@`@``!'4SA>UU.8"+80(``"!(@\0(6UW#,>WKUTB)W^@` +M````9I#I9?[__X/AC(B*8`(``.FM_O__2(G?Z`````#KQTB)W^@`````Z[VX +M`0```&9F9I#I!?[__TB+0QA(A<!F9F:0=`I(@[B``@```'6+BU,PA=)X#S'V +M2(G?Z`````#I=?___TB%P`^$;/___XM`,(7`>>'I8/___Y"0D)"0D)"0D$B+ +M!0````!(A<!T,S')9I"`>`P!2(L`@]G_2(7`=?&%R70<BQ4`````C8+_#P`` +MA=(/2-#!^@R)T,'Z'_?YPXL%`````(V0_P\``(7`#TC"P?@,PV9F9I!F9F:0 +M9F9FD//#9F9FD&9F9I!F9I!F9I!(BX>(`0``2(E&&$B)MX@!``##9F9FD&9F +MD&9FD&9FD#'`PV9F9I!F9I!F9I!F9I!!5$F)_%53BX=P`0``QX>X`0`````` +M`$F+K"20`0``2(7M=$,Y10!W:$DYK"28`0``#X2.````2(M%($F)A"20`0`` +M2,=%(`````!(BWT0_U4(28NL))`!``!!BX0D<`$``$B%[76]/7\!``!W'DF+ +MG"2(`0``2(7;=!$Q]DB+._]3"$B+6QA(A=MU[UM=05S#28N<)(@!``!(A=MT +M[F:02(L[BW4`_U,(2(M;&$B%VW7N08N$)'`!```[10`/@U3____KQTG'A"28 +M`0```````$G'A"20`0```````.EA____9F9FD&9F9I!F9I!F9I!52(G]4TB# +M[`A(BY^(`0``2(7;=!1(BSN^______]3"$B+6QA(A=MU[#'`2(-]6``/E<!( +M@\0(6UW#9F:09F:04XN'N`$``$B)^X7`=`);PTB)NZ@!``!(QX>@`0`````` +M`$B-MZ`!``!(QX>P`0```````$B-?UCH`````,>#N`$```$```!;PV9F9I!F +M9I!(@^P(2(._D`$```!T(DB+AY@!``!(B7`@2(FWF`$``.@`````N`$```!( +M@\0(PY"+AW`!```[!G,02(FWF`$``$B)MY`!``#KUDB+?A#_5@@QP.O59F9F +MD&9F9I!F9I!(@<=H`0``Z0````!F9F:02('':`$``.D`````D)"0D`^V1Q2) +MP@I7%8/@^X/B!`G0#[97%8G!@^#^@^$!@^(!"<H)T(A'%`^V1R2)P@I7)8/@ +M^X/B!`G0#[97)8G!@^#^@^$!@^(!"<H)T(A'),.0#[9')8G""E<F@^#[@^($ +M"=`/ME<FB<&#X/Z#X0&#X@$)R@G0B$<E#[9'/8G""E<^@^#[@^($"=`/ME<^ +MB<&#X/Z#X0&#X@$)R@G0B$<]PP``````EC`'=RQA#NZZ40F9&<1M!X_T:G`U +MI6/IHY5DGC*(VPZDN-QY'NG5X(C9TI<K3+8)O7RQ?@<MN.>1';^09!"W'?(@ +ML&I(<;GSWD&^A'W4VAKKY-UM4;74],>%TX-6F&P3P*AK9'KY8OWLR66*3UP! +M%-EL!F-C/0_Z]0T(C<@@;CM>$&E,Y$%@U7)Q9Z+1Y`,\1]0$2_V%#=)KM0JE +M^JBU-6R8LD+6R;O;0/F\K.-LV#)U7-]%SPW6W%D]T:NL,-DF.@#>48!1U\@6 +M8="_M?2T(2/$LU:9E;K/#Z6]N)ZX`B@(B`5?LMD,QB3I"[&'?&\O$4QH6*L= +M8<$]+6:VD$'<=@9QVP&\(-*8*A#5[XF%L7$?M;8&I>2_GS/4N.BBR0=X-/D` +M#XZH"988F`[ANPUJ?RT];0B7;&21`5QCYO11:VMB86P<V#!EA4X`8O+ME09L +M>Z4!&\'T"()7Q`_UQMFP95#IMQ+JN+Z+?(BY_-\=W6))+=H5\WS3C&5,U/M8 +M8;)-SE&U.G0`O*/B,+O40:7?2M>5V#UMQ-&D^_36TVKI:4/\V6XT1HAGK="X +M8-IS+01$Y1T#,U],"JK)?`W=/'$%4*I!`B<0$`N^AB`,R26U:%>SA6\@"=1F +MN9_D8<X.^=Y>F,G9*2*8T+"TJ-?'%SVS68$-M"X[7+VWK6RZP""#N.VVL[^: +M#.*V`YK2L70Y1]7JKW?2G14FVP2#%MQS$@MCXX0[9)0^:FT-J%IJ>@O/#N2= +M_PF3)ZX`"K&>!WU$DP_PTJ,(AVCR`1[^P@9I75=B]\MG98!Q-FP9YP9K;G8; +MU/[@*].)6GK:$,Q*W6=OW[GY^>^^CD.^MQ?5CK!@Z*/6UGZ3T:'$PM@X4O+? +M3_%GN]%G5[RFW0:U/TLVLDC:*PW83!L*K_9*`S9@>@1!P^]@WU7?9ZCOCFXQ +M>;YI1HRS8<L:@V:\H-)O)3;B:%*5=PS,`T<+N[D6`B(O)@55OCNZQ2@+O;*2 +M6K0K!&JS7*?_U\(QS]"UBY[9+!VNWENPPF2;)O)C[)RC:G4*DVT"J08)G#\V +M#NN%9P=R$U<`!8)*OY44>KCBKBNQ>S@;M@R;CM*2#;[5Y;?OW'PAW]L+U-+3 +MAD+BU/'XL]UH;H/:'\T6OH%;)KGVX7>P;W='MQCF6@B(<&H/_\H[!F9<"P$1 +M_YYECVFN8OC3_VMA1<]L%GCB"J#NT@W75(,$3L*S`SEA)F>G]Q9@T$U':4G; +M=VX^2FK1KMQ:UMEF"]]`\#O8-U.NO*G%GKO>?\^R1^G_M3`<\KV]BL*ZRC"3 +MLU.FH[0D!3;0NI,&U\TI5]Y4OV?9(RYZ9K.X2F'$`AMH790K;RHWO@NTH8X, +MPQO?!5J-[P(M```````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` @@ -7422,10 +7482,9 @@ M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` -M```````````````````@```$1````"`!``1$```"`0```CH```(!`0`".@`` -M!`$```L````$`0$`"P````@!```&6@$`"`$!``9:`0`0`0```Q0!`!`!`0`# -M%`$`(`$```8H```@`0$`!B@``$`!```#$0``0`$!``<G``"``0``"T<#`(`! -M`0`+1P,````````````````````````````````````````````````````` +M```@```$1````"`!``1$```"`0```CH```(!`0`".@``!`$```L````$`0$` +M"P````@!```&6@$`"`$!``9:`0`0`0```Q0!`!`!`0`#%`$`(`$```8H```@ +M`0$`!B@``$`!```#$0``0`$!``<G``"``0``"T<#`(`!`0`+1P,````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` @@ -7467,30 +7526,31 @@ M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` -M`````%)O8VME="`W-3`@4T%402!#;VYT<F]L;&5R```!`````````)8P!W<L -M80[NNE$)F1G$;0>/]&IP-:5CZ:.59)XRB-L.I+C<>1[IU>"(V=*7*TRV";U\ -ML7X'+;CGD1V_D&00MQWR(+!J2'&Y\]Y!OH1]U-H:Z^3=;5&UU/3'A=.#5IAL -M$\"H:V1Z^6+][,EEBD]<`139;`9C8ST/^O4-"(W((&X[7A!I3.1!8-5R<6>B -MT>0#/$?4!$O]A0W2:[4*I?JHM35LF+)"ULF[VT#YO*SC;-@R=5S?1<\-UMQ9 -M/=&KK##9)CH`WE&`4=?(%F'0O[7TM"$CQ+-6F96ZSP^EO;B>N`(H"(@%7[+9 -M#,8DZ0NQAWQO+Q%,:%BK'6'!/2UFMI!!W'8&<=L!O"#2F"H0U>^)A;%Q'[6V -M!J7DOY\SU+CHHLD'>#3Y``^.J`F6&)@.X;L-:G\M/6T(EVQDD0%<8^;T46MK -M8F%L'-@P985.`&+R[94&;'NE`1O!]`B"5\0/]<;9L&50Z;<2ZKB^BWR(N?S? -M'=UB22W:%?-\TXQE3-3[6&&R3<Y1M3IT`+RCXC"[U$&EWTK7E=@];<31I/OT -MUM-JZ6E#_-EN-$:(9ZW0N&#:<RT$1.4=`S-?3`JJR7P-W3QQ!5"J00(G$!`+ -MOH8@#,DEM6A7LX5O(`G49KF?Y&'.#OG>7IC)V2DBF-"PM*C7QQ<]LUF!#;0N -M.UR]MZULNL`@@[CMMK._F@SBM@.:TK%T.4?5ZJ]WTIT5)ML$@Q;<<Q(+8^.$ -M.V24/FIM#:A::GH+SP[DG?\)DR>N``JQG@=]1),/\-*C"(=H\@$>_L(&:5U7 -M8O?+9V6`<39L&><&:VYV&]3^X"O3B5IZVA#,2MUG;]^Y^?GOOHY#OK<7U8ZP -M8.BCUM9^D]&AQ,+8.%+RWT_Q9[O19U>\IMT&M3]+-K)(VBL-V$P;"J_V2@,V -M8'H$0</O8-]5WV>H[XYN,7F^:4:,LV'+&H-FO*#2;R4VXFA2E7<,S`-'"[NY -M%@(B+R8%5;X[NL4H"[VRDEJT*P1JLURG_]?",<_0M8N>V2P=KMY;L,)DFR;R -M8^R<HVIU"I-M`JD&"9P_-@[KA6<'<A-7``6"2K^5%'JXXJXKL7LX&[8,FX[2 -MD@V^U>6W[]Q\(=_;"]32TX9"XM3Q^+/=:&Z#VA_-%KZ!6R:Y]N%WL&]W1[<8 -MYEH(B'!J#__*.P9F7`L!$?^>98]IKF+XT_]K847/;!9XX@J@[M(-UU2#!$[" -MLP,Y829GI_<68-!-1VE)VW=N/DIJT:[<6M;99@O?0/`[V#=3KKRIQ9Z[WG_/ -MLD?I_[4P'/*]O8K"NLHPD[-3IJ.T)`4VT+J3!M?-*5?>5+]GV2,N>F:SN$IA -MQ`(;:%V4*V\J-[X+M*&.#,,;WP5:C>\"+0`````````````````````````` +M`````````````````````````````````````````````````%)O8VME="`W +M-3`@4T%402!#;VYT<F]L;&5R```!`````````)8P!W<L80[NNE$)F1G$;0>/ +M]&IP-:5CZ:.59)XRB-L.I+C<>1[IU>"(V=*7*TRV";U\L7X'+;CGD1V_D&00 +MMQWR(+!J2'&Y\]Y!OH1]U-H:Z^3=;5&UU/3'A=.#5IAL$\"H:V1Z^6+][,EE +MBD]<`139;`9C8ST/^O4-"(W((&X[7A!I3.1!8-5R<6>BT>0#/$?4!$O]A0W2 +M:[4*I?JHM35LF+)"ULF[VT#YO*SC;-@R=5S?1<\-UMQ9/=&KK##9)CH`WE&` +M4=?(%F'0O[7TM"$CQ+-6F96ZSP^EO;B>N`(H"(@%7[+9#,8DZ0NQAWQO+Q%, +M:%BK'6'!/2UFMI!!W'8&<=L!O"#2F"H0U>^)A;%Q'[6V!J7DOY\SU+CHHLD' +M>#3Y``^.J`F6&)@.X;L-:G\M/6T(EVQDD0%<8^;T46MK8F%L'-@P985.`&+R +M[94&;'NE`1O!]`B"5\0/]<;9L&50Z;<2ZKB^BWR(N?S?'=UB22W:%?-\TXQE +M3-3[6&&R3<Y1M3IT`+RCXC"[U$&EWTK7E=@];<31I/OTUM-JZ6E#_-EN-$:( +M9ZW0N&#:<RT$1.4=`S-?3`JJR7P-W3QQ!5"J00(G$!`+OH8@#,DEM6A7LX5O +M(`G49KF?Y&'.#OG>7IC)V2DBF-"PM*C7QQ<]LUF!#;0N.UR]MZULNL`@@[CM +MMK._F@SBM@.:TK%T.4?5ZJ]WTIT5)ML$@Q;<<Q(+8^.$.V24/FIM#:A::GH+ +MSP[DG?\)DR>N``JQG@=]1),/\-*C"(=H\@$>_L(&:5U78O?+9V6`<39L&><& +M:VYV&]3^X"O3B5IZVA#,2MUG;]^Y^?GOOHY#OK<7U8ZP8.BCUM9^D]&AQ,+8 +M.%+RWT_Q9[O19U>\IMT&M3]+-K)(VBL-V$P;"J_V2@,V8'H$0</O8-]5WV>H +M[XYN,7F^:4:,LV'+&H-FO*#2;R4VXFA2E7<,S`-'"[NY%@(B+R8%5;X[NL4H +M"[VRDEJT*P1JLURG_]?",<_0M8N>V2P=KMY;L,)DFR;R8^R<HVIU"I-M`JD& +M"9P_-@[KA6<'<A-7``6"2K^5%'JXXJXKL7LX&[8,FX[2D@V^U>6W[]Q\(=_; +M"]32TX9"XM3Q^+/=:&Z#VA_-%KZ!6R:Y]N%WL&]W1[<8YEH(B'!J#__*.P9F +M7`L!$?^>98]IKF+XT_]K847/;!9XX@J@[M(-UU2#!$["LP,Y829GI_<68-!- +M1VE)VW=N/DIJT:[<6M;99@O?0/`[V#=3KKRIQ9Z[WG_/LD?I_[4P'/*]O8K" +MNLHPD[-3IJ.T)`4VT+J3!M?-*5?>5+]GV2,N>F:SN$IAQ`(;:%V4*V\J-[X+ +MM*&.#,,;WP5:C>\"+0`````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` @@ -7530,10 +7590,9 @@ M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` -M````````````````````````(```!$0````@`0`$1````@$```(Z```"`0$` -M`CH```0!```+````!`$!``L````(`0``!EH!``@!`0`&6@$`$`$```,4`0`0 -M`0$``Q0!`"`!```&*```(`$!``8H``!``0```Q$``$`!`0`')P``@`$```M' -M`P"``0$`"T<#```````````````````````````````````````````````` +M````````(```!$0````@`0`$1````@$```(Z```"`0$``CH```0!```+```` +M!`$!``L````(`0``!EH!``@!`0`&6@$`$`$```,4`0`0`0$``Q0!`"`!```& +M*```(`$!``8H``!``0```Q$``$`!`0`')P``@`$```M'`P"``0$`"T<#```` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` @@ -7576,9 +7635,9 @@ M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` -M````````````````````````````````````1&%T84-E;G1E<B`W,C@P(%-! -M5$$@0V]N=')O;&QE<@`!`````````!L````!```````````````````````` M```````````````````````````````````````````````````````````` +M````````````````````1&%T84-E;G1E<B`W,C@P(%-!5$$@0V]N=')O;&QE +M<@`!`````````!L````!```````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` @@ -7589,5674 +7648,5675 @@ M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` -M`````````````````````````````````````````````$U67U)E<75E<W0@ -M)7`Z($-D8ELE,G@L)3)X+"4R>"PE,G@L("4R>"PE,G@L)3)X+"4R>"P@)3)X -M+"4R>"PE,G@L)3)X+"`E,G@L)3)X+"4R>"PE,GA=+@!487-K(&9I;&4@97)R -M;W(L(%-T871U<U)E9STP>"5X+"!%<G)296<],'@E>"P@3$)!6S`M,UT],'@E -M>"Q,0D%;-"TW73TP>"5X+@```````$1E=FEC92!E<G)O<B!I;F9O<FUA=&EO -M;B`P>"5L;%@`;79?<&AY7W=O<FMA<F]U;F0@<F5V7VED("5X("5D```@8F5F -M;W)E('5P9&%T92!V86QU92`E,#1X.B`E,#AX`$%T=$1E=E-!4T%D9');)7A= -M("!;56YI=$ED("5X72!S87,@861D<B`E,#)X+24P,G@M)3`R>"TE,#)X+24P -M,G@M)3`R>"TE,#)X+24P,G@`<V%M92!S87,@861D<B`E,#)X+24P,G@M)3`R -M>"TE,#)X+24P,G@M)3`R>"TE,#)X+24P,G@```!$979I8V4@)7@@:6X@<W1A -M;F1B>2!M;V1E+"!S=&%R="!T;R!P;W=E<B!I="!U<"X``````````%-T87)T -M('1O('!O=V5R('5P(&1E=FEC92`E>"XN+@``<&]R="!R97-E="!N;W0@8V]M -M<&QE=&4@<W5C8V5S<RP@:6=N;W)E('1H92!P;W)T("@E>"D```!!='1A8VAE -M9"!D979I8V4@:6YD97@@)3`R>"`H4&%T:"`E,#)X('P@5&%R9V5T("4P,G@@ -M?"!%)7@O4R4P,G@I("`E>"5X)7@E>"5X)7@E>"5X````````359?4F5Q=65S -M="`E<#H@0V1B6R4R>"PE,G@L)3)X+"4R>"P@)3)X+"4R>"PE,G@L)3)X+"`E -M,G@L)3)X+"4R>"PE,G@L("4R>"PE,G@L)3)X+"4R>%TN`%1A<VL@9FEL92!E -M<G)O<BP@4W1A='5S4F5G/3!X)7@L($5R<E)E9STP>"5X+"!,0D%;,"TS73TP -M>"5X+$Q"05LT+3==/3!X)7@N````````1&5V:6-E(&5R<F]R(&EN9F]R;6%T -M:6]N(#!X)6QL6`!M=E]P:'E?=V]R:V%R;W5N9"!R979?:60@)7@@)60``"!B -M969O<F4@=7!D871E('9A;'5E("4P-'@Z("4P.'@`071T1&5V4T%3061D<ELE -M>%T@(%M5;FET260@)7A=('-A<R!A9&1R("4P,G@M)3`R>"TE,#)X+24P,G@M -M)3`R>"TE,#)X+24P,G@M)3`R>`!S86UE('-A<R!A9&1R("4P,G@M)3`R>"TE -M,#)X+24P,G@M)3`R>"TE,#)X+24P,G@M)3`R>````$1E=FEC92`E>"!I;B!S -M=&%N9&)Y(&UO9&4L('-T87)T('1O('!O=V5R(&ET('5P+@``````````4W1A -M<G0@=&\@<&]W97(@=7`@9&5V:6-E("5X+BXN``!P;W)T(')E<V5T(&YO="!C -M;VUP;&5T92!S=6-C97-S+"!I9VYO<F4@=&AE('!O<G0@*"5X*0```$%T=&%C -M:&5D(&1E=FEC92!I;F1E>"`E,#)X("A0871H("4P,G@@?"!487)G970@)3`R -M>"!\($4E>"]3)3`R>"D@("5X)7@E>"5X)7@E>"5X)7@```````!"86-K=7`@ -M<W1A;7`@)7@@<W5M("5X(&)A8VME9"`E9```````````36%S=&5R('-T86UP -M("5X('-U;2`E>"!B86-K960@)60``````````%=R:71E(&%R<F%Y(&UE=&$@ -M9&%T82!T;R!M87-T97(@,'@E;&Q8+3XP>"5L;%@``%=R:71E(&%R<F%Y(&UE -M=&$@9&%T82!T;R!B86-K=7`@,'@E;&Q8+3XP>"5L;%@``%LE9"`E9%T@9&5V -M:6-E(&5R87-E('5N:70@<W5C8V5S<V9U;&QY+@!;)60@)61=(&1E=FEC92!E -M<F%S92!U;FET(&9A:6QE9"!O<B!A8F]R=&5D+@````!S970@041)1E]3151? -M0D%$(&)A9%]S96-T;W(@)60``&1O7V1I<VM?8W1L7V-M9#H@8W1L(&-O9&4@ -M)7@@=F0])7`L($Q"02`P>"5L;%@@;E-E8W1O<B`P>"5X`$1E=FEC95])9#TE -M9`!$979I8V4@)7@O)7@@<F5M;W9E9"X`=V]R:W)O=6YD(&ER<5-T871U<R`] -M(#!X)7@`)3`R>"`E,#1X.B4P-'@Z)3`T>`!$979I8V4@)7@O)7@@<F5M;W9E -M9"X`('!H>2!T=6YI;F<@)60O)60`(&]R:6=I;F%L('9A;'5E("4P-'@Z("4P -M.'@`('9E<FEF>2!V86QU92`E,#1X.B`E,#AX`"!F9F4@='5N:6YG("5D`$1E -M=FEC92`E>"\E>"!R96UO=F5D+@!$979I8V4@)7@@<&]W97)E9"!U<"X`<W1A -M<G0@4T53(&1E=FEC92`E<`!&;W5N9"!315,@1&5V:6-E("5X`$9A:6QE9"!T -M;R!V97)I9GD@8V]N=')O;&QE<@!O9&EN(')E860@=W)I=&4@97AC965D<R`E -M>`!O9&EN`$1E=FEC95])9#TE9`!$979I8V4@)7@O)7@@<F5M;W9E9"X`=V]R -M:W)O=6YD(&ER<5-T871U<R`](#!X)7@`)3`R>"`E,#1X.B4P-'@Z)3`T>`!$ -M979I8V4@)7@O)7@@<F5M;W9E9"X`('!H>2!T=6YI;F<@)60O)60`(&]R:6=I -M;F%L('9A;'5E("4P-'@Z("4P.'@`('9E<FEF>2!V86QU92`E,#1X.B`E,#AX -M`"!F9F4@='5N:6YG("5D`$1E=FEC92`E>"\E>"!R96UO=F5D+@!$979I8V4@ -M)7@@<&]W97)E9"!U<"X`<W1A<G0@4T53(&1E=FEC92`E<`!&;W5N9"!315,@ -M1&5V:6-E("5X`$9A:6QE9"!T;R!V97)I9GD@8V]N=')O;&QE<@!O9&EN(')E -M860@=W)I=&4@97AC965D<R`E>`!O9&EN`')A=R`E<"!B861?<V5C=&]R("5X -M`%=R:71E(&)A8VMU<&5D(&UE=&$@9&%T80!&86EL960@=&\@<W!I;F1O=VX@ -M9&5V:6-E<P!&86EL960@=&\@9FQU<V@@=&%R9V5T<P!!=71O(%)E8G5I;&0` -M4F5B=6EL9"!0<FEO<FET>0!#;VYT:6YU92!296)U:6QD:6YG(&]N($5R<F]R -M`%-P:6YD;W=N($ED;&4@1&ES:R`H;6EN=71E<RD`4W1A9V=E<F5D('-P:6YU -M<``````````````````````````````````&!`4!`P)28A4`````````!@0% -M`0,"V&"?-CD\``````8$!0$#`B!@D%!2```````&!`4!`P+88)`````````` -M``$"`Q`$!08'$0@)"@L2#`T.#Q,4%187)!@9&ALE'!T>'R8@(2(C)P`````` -M```````````````````````````````````````````````A```````````` M```````````````````````````````````````````````````````````` -M```````````````````````````````````````````````````````````` -M```````````````````````````````````````````````````````````` -M```````````````````````````````````````````````````````````` -M```````````````````````````````````````````````````````````` -M```````````````````````````````````````````````````````````` -M`````````````````````````````````Q%0!P```````@`````````````! -M```````````````&!`4!`P)28A4`````````!@0%`0,"V&"?-CD\``````8$ -M!0$#`B!@D%!2```````&!`4!`P+88)`````````````````````````````` -M`"$````````````````````````````````````````````````````````` -M```````````````````````````````````````````````````````````` -M```````````````````````````````````````````````````````````` -M```````````````````````````````````````````````````````````` -M```````````````````````````````````````````````````````````` -M```````````````````````````````````````````````````````````` -M```````````````````````````````````````````````#$8!R```````" -M``````````````$```````````````$!_P(````````````````````````` -M```````````````````````!`````````"``````````4````"@````````` -M```````````````````````````````````````````````````````````` -M```````````````````````````````````````````````````````````` -M````_P````````````````````````````````````````$``````````?\` -M```````````````````````````````````````!``````````+_```````` -M`````````````````````````````````0`````````#_P`````````````` -M``````````````````````````$`````````-?\````````````````````` -M```````````````````!``````````3_```````````````````````````` -M`````````````0`````````%_P`````````````````````````````````` -M``````$`````````!O\````````````````````````````````````````` -M``````````?_```````````````````````````````````````````````` -M```*_P````````````````````````````````````````$`````````"_\` -M``````````````````````````````````````````````````S_```````` -M```````````````````````````````````````````-_P`````````````` -M````````````````````````````````````#O\````````````````````` -M``````````````````````````````__```````````````````````````` -M```````````````````````0_P`````````````````````````````````` -M````````````````$?\````````````````````````````````````````` -M`````````!+_```````````````````````````````````````````````` -M```3_P````````````````````````````````````````$`````````-/\` -M```````````````````````````````````````!`````````!C_```````` -M``````````````````````````````````````````!"_P`````````````` -M````````````````````````````````````&?\````````````````````` -M`````````````````````````````!K_```````````````````````````` -M```````````````````````=_P`````````````````````````````````` -M````````````````'O\````````````````````````````````````````! -M`````````!__```````````````````````````````````````````````` -M```@_P``````````````````````````````````````````````````(?\` -M```````````````````````````````````````!`````````"+_```````` -M```````````````````````````````````````````C_P`````````````` -M````````````````````````````````````)/\````````````````````` -M`````````````````````````````"7_```````````````````````````` -M```````````````````````I_P`````````````````````````````````` -M````````````````*O\````````````````````````````````````````` -M`````````"O_```````````````````````````````````````````````` -M```L_P````````````````````````````````````````$`````````+?\` -M`````````````````````````````````````````````````"[_```````` -M`````````````````````````````````0`````````O_P`````````````` -M``````````````````````````$`````````2?\````````````````````` -M```````````````````!`````````#?_```````````````````````````` -M`````````````0`````````X_P`````````````````````````````````` -M````````````````.?\````````````````````````````````````````` -M`````````#K_`````````````````````````````````````````0`````` -M```[_P````````````````````````````````````````$`````````//\` -M```````````````````````````````````````!`````````#W_```````` -M`````````````````````````````````0`````````^_P`````````````` -M``````````````````````````$`````````0_\````````````````````` -M```````````````````!`````````$3_```````````````````````````` -M`````````````0````````!&_P`````````````````````````````````` -M``````$`````````1_\````````````````````````````````````````! -M`````````#+_`````````````````````````````````````````0`````` -M```S_P``````````````````````````````````````````````````9/\` -M```````````````````````````````````````!`````````##_```````` -M`````````````````````````````````0````````!F_P`````````````` -M``````````````````````````$`````````9_\````````````````````` -M```````````````````!`````````$7_```````````````````````````` -M``````````````````````!(_P`````````````````````````````````` -M````````````````_____P`````````````````````````````````````` +M`````````````````````````````$U67U)E<75E<W0@)7`Z($-D8ELE,G@L +M)3)X+"4R>"PE,G@L("4R>"PE,G@L)3)X+"4R>"P@)3)X+"4R>"PE,G@L)3)X +M+"`E,G@L)3)X+"4R>"PE,GA=+@!;)3`R>#HE,#)X("4P,F1=(&1I<VL@<F5M +M;W9E9"X``$5R<F]R(&EN(&ES<W5I;F<@8V]M;6%N9"P@97)R(&EN9F\@,'@E +M;&Q8`````````%1A<VL@9FEL92!E<G)O<BP@4W1A='5S4F5G/3!X)7@L($5R +M<E)E9STP>"5X+"!,0D%;,"TS73TP>"5X+$Q"05LT+3==/3!X)7@N```````` +M4F5C96EV960@3E5,(%)E<2!S;&]T3F\H)7@O)7@I($5.5%)9("@E,#AX*2P@ +M97)R;W(@,'@E;&Q8`````````&`M($9)4RA3;&]T.B4P,G@I.B`E,#AX("4P +M.'@@)3`X>"`E,#AX``!#340@2&5A9&5R.B`E,#AX("4P.'@@)3`X>"`E,#AX +M("X@)3`X>"`E,#AX("4P.'@@)3`X>"`N("4P.'@@)3`X>"`E,#AX("4P.'@@ +M+B`E,#AX("4P.'@`6R4P,G@Z)3`R>"`E,#)D("4P,F1=(%!-(')E<75E<W0H +M)7@I('1I;65O=70N````5&EM96]U="!(,D0@1DE3*%-L;W0Z)3`R>"DZ("4P +M.'@@)3`X>"`E,#AX("4P.'@`6R4P,G@Z)3`R>"`E,#)D72!89F5R("5X($5R +M<F]R(&EN9F]R;6%T:6]N(#!X)6QL6`````````!;)3`R>#HE,#)X("4P,F0@ +M)3`R9"`E,#)D72!89F5R("5X($5R<F]R(&EN9F]R;6%T:6]N(#!X)6QL6``` +M````6R4P,G@Z)3`R>"`E,#)X("4P,GA=(%!-(%AF97(@)7@@17)R;W(@:6YF +M;W)M871I;VX@,'@E;&Q8`````````%)U;FYI;F<@2#)$($9)4RA3;&]T.B4P +M,G@I.B`E,#AX("4P.'@@)3`X>"`E,#AX`"!31R!I=&5M("4P,G@Z(&%D9'(@ +M)6QL>"!S:7IE("5X(%-'2"!A9&1R("5L;'@@<VEZ92`E>```1F%I;&5D('1O +M(&5N86)L92]D:7-A8FQE('-P:6X@=7`N`````````%LE,#)X.B4P,G@@)3`R +M9%T@1&5V:6-E(')E<75E<W0H)7@I('1I;65O=70N`````%LE,#)X.B4P,G@@ +M)3`R9"`E,#)D("4P,F1=($1E=FEC92!R97%U97-T*"5X*2!T:6UE;W5T+@`` +M6R4P,G@Z)3`R>"`E,#)D72!D:7-K(')E;6]V960@*"5X*2X``````$%T=$1E +M=E-!4T%D9');)7A=("!;56YI=$ED("5X72!S87,@861D<B`E,#)X+24P,G@M +M)3`R>"TE,#)X+24P,G@M)3`R>"TE,#)X+24P,G@`<V%M92!S87,@861D<B`E +M,#)X+24P,G@M)3`R>"TE,#)X+24P,G@M)3`R>"TE,#)X+24P,G@```!$979I +M8V4@)7@@:6X@<W1A;F1B>2!M;V1E+"!S=&%R="!T;R!P;W=E<B!I="!U<"X` +M`````````%-T87)T('1O('!O=V5R('5P(&1E=FEC92`E>"XN+@``4&]R="!R +M97-E="AP:&%S92`E>"!P;7`@)7@I(&YO="!C;VUP;&5T92!S=6-C97-S+"!I +M9VYO<F4@=&AE('!O<G0@*"5X(&1E=FEC92`E>"D``````````%LE,#)X.B4P +M,G@@)3`R9%T@9&ES:R!R96UO=F5D("@E>"DN``````!$979I8V4@*%!A=&@@ +M)3`R>"!\(%1A<F=E="`E,#)X('P@125X+U,E,#)X*2!S<&EN('5P(&UO9&4@ +M;F]T('-U<'!O<G0```!;)3`R>#HE,#)X("4P,F1=('-E="!D:7-K('-P:6X@ +M=7`@;6]D92`E>"X```````!;)3`R>#HE,#)X("4P,F1=(&1I<VL@<')O8F5D +M("AS<&EN=7`@;6]D93H@)60I+@!-5E]297%U97-T("5P.B!#9&);)3)X+"4R +M>"PE,G@L)3)X+"`E,G@L)3)X+"4R>"PE,G@L("4R>"PE,G@L)3)X+"4R>"P@ +M)3)X+"4R>"PE,G@L)3)X72X`17)R;W(@:6X@:7-S=6EN9R!C;VUM86YD+"!E +M<G(@:6YF;R`P>"5L;%@`````````5&%S:R!F:6QE(&5R<F]R+"!3=&%T=7-2 +M96<],'@E>"P@17)R4F5G/3!X)7@L($Q"05LP+3-=/3!X)7@L3$)!6S0M-UT] +M,'@E>"X```````!296-E:79E9"!.54P@4F5Q('-L;W1.;R@E>"\E>"D@14Y4 +M4ED@*"4P.'@I+"!E<G)O<B`P>"5L;%@`````````8"T@1DE3*%-L;W0Z)3`R +M>"DZ("4P.'@@)3`X>"`E,#AX("4P.'@``$--1"!(96%D97(Z("4P.'@@)3`X +M>"`E,#AX("4P.'@@+B`E,#AX("4P.'@@)3`X>"`E,#AX("X@)3`X>"`E,#AX +M("4P.'@@)3`X>"`N("4P.'@@)3`X>`!;)3`R>#HE,#)X("4P,F0@)3`R9%T@ +M4$T@<F5Q=65S="@E>"D@=&EM96]U="X```!4:6UE;W5T($@R1"!&25,H4VQO +M=#HE,#)X*3H@)3`X>"`E,#AX("4P.'@@)3`X>`!;)3`R>#HE,#)X("4P,F0@ +M)3`R9"`E,#)D72!89F5R("5X($5R<F]R(&EN9F]R;6%T:6]N(#!X)6QL6``` +M````6R4P,G@Z)3`R>"`E,#)X("4P,GA=(%!-(%AF97(@)7@@17)R;W(@:6YF +M;W)M871I;VX@,'@E;&Q8`````````%)U;FYI;F<@2#)$($9)4RA3;&]T.B4P +M,G@I.B`E,#AX("4P.'@@)3`X>"`E,#AX`"!31R!I=&5M("4P,G@Z(&%D9'(@ +M)6QL>"!S:7IE("5X(%-'2"!A9&1R("5L;'@@<VEZ92`E>```1F%I;&5D('1O +M(&5N86)L92]D:7-A8FQE('-P:6X@=7`N`````````%LE,#)X.B4P,G@@)3`R +M9"`E,#)D("4P,F1=($1E=FEC92!R97%U97-T*"5X*2!T:6UE;W5T+@``071T +M1&5V4T%3061D<ELE>%T@(%M5;FET260@)7A=('-A<R!A9&1R("4P,G@M)3`R +M>"TE,#)X+24P,G@M)3`R>"TE,#)X+24P,G@M)3`R>`!S86UE('-A<R!A9&1R +M("4P,G@M)3`R>"TE,#)X+24P,G@M)3`R>"TE,#)X+24P,G@M)3`R>````$1E +M=FEC92`E>"!I;B!S=&%N9&)Y(&UO9&4L('-T87)T('1O('!O=V5R(&ET('5P +M+@``````````4W1A<G0@=&\@<&]W97(@=7`@9&5V:6-E("5X+BXN``!0;W)T +M(')E<V5T*'!H87-E("5X('!M<"`E>"D@;F]T(&-O;7!L971E('-U8V-E<W,L +M(&EG;F]R92!T:&4@<&]R="`H)7@@9&5V:6-E("5X*0``````````1&5V:6-E +M("A0871H("4P,G@@?"!487)G970@)3`R>"!\($4E>"]3)3`R>"D@<W!I;B!U +M<"!M;V1E(&YO="!S=7!P;W)T````4V5T(&1E=FEC92`H4&%T:"`E,#)X('P@ +M5&%R9V5T("4P,G@@?"!%)7@O4R4P,G@I('-P:6X@=7`@;6]D92`E>``````` +M````071T86-H960@9&5V:6-E(&EN9&5X("4P,G@@*%!A=&@@)3`R>"!\(%1A +M<F=E="`E,#)X('P@125X+U,E,#)X*2`@)7@E>"5X)7@E>"5X)7@E>``````` +M`$)A8VMU<"!S=&%M<"`E>"!S=6T@)7@@8F%C:V5D("5D``````````!-87-T +M97(@<W1A;7`@)7@@<W5M("5X(&)A8VME9"`E9```````````5W)I=&4@87)R +M87D@;65T82!D871A('1O(&UA<W1E<B`P>"5L;%@M/C!X)6QL6```5W)I=&4@ +M87)R87D@;65T82!D871A('1O(&)A8VMU<"`P>"5L;%@M/C!X)6QL6```6R5D +M("5D72!D979I8V4@97)A<V4@=6YI="!S=6-C97-S9G5L;'DN`%LE9"`E9%T@ +M9&5V:6-E(&5R87-E('5N:70@9F%I;&5D(&]R(&%B;W)T960N`````'-E="!! +M1$E&7U-%5%]"040@8F%D7W-E8W1O<B`E9```9&]?9&ES:U]C=&Q?8VUD.B!C +M=&P@8V]D92`E>"!V9#TE<"P@3$)!(#!X)6QL6"!N4V5C=&]R(#!X)7@`4F5T +M<GEI;F<@9F%I;&5D+"!D:7-K(&1O=VX_/S\`=V]R:W)O=6YD(&ER<5-T871U +M<R`](#!X)7@`4F5Q("5P("5X("5X`$1E=FEC92`E>"\E>"!R96UO=F5D+@!/ +M=F5R<F%L;"!31R!I=&5M("5X('-I>F4@)7@`4VQO="!B=7-Y+"!S;&]T("5X +M*"5X*0!$=6UP('-L;W0@:6YF;SH@)7@@)7@@)7@@)7@`0VQE86X@=7`@<VQO +M="`E>`!$,D@@1DE3.B`E,#AX("4P.'@@)3`X>"`E,#AX`"4P,G@@)3`T>#HE +M,#1X.B4P-'@`4F5Q("@E>"D@=V%I="!F;W(@8V]M<&QE=&5D+@!$979I8V4@ +M)7@O)7@@<F5M;W9E9"X`1&5V:6-E("5X+R5X(')E;6]V960N`$1E=FEC92`E +M>"!P;W=E<F5D('5P+@!S=&%R="!315,@9&5V:6-E("5P`$9O=6YD(%-%4R!$ +M979I8V4@)7@`1F%I;&5D('1O('9E<FEF>2!C;VYT<F]L;&5R`&]D:6X@<F5A +M9"!W<FET92!E>&-E961S("5X`&]D:6X`1&5V:6-E("5X+R5X(')E;6]V960N +M`%)E=')Y:6YG(&9A:6QE9"P@9&ES:R!D;W=N/S\_`'=O<FMR;W5N9"!I<G%3 +M=&%T=7,@/2`P>"5X`%)E<2`E<"`E>"`E>`!/=F5R<F%L;"!31R!I=&5M("5X +M('-I>F4@)7@`4VQO="!B=7-Y+"!S;&]T("5X*"5X*0!$=6UP('-L;W0@:6YF +M;SH@)7@@)7@@)7@@)7@`0VQE86X@=7`@<VQO="`E>`!$,D@@1DE3.B`E,#AX +M("4P.'@@)3`X>"`E,#AX`"4P,G@@)3`T>#HE,#1X.B4P-'@`4F5Q("@E>"D@ +M=V%I="!F;W(@8V]M<&QE=&5D+@!$979I8V4@)7@O)7@@<F5M;W9E9"X`1&5V +M:6-E("5X+R5X(')E;6]V960N`$1E=FEC92`E>"!P;W=E<F5D('5P+@!S=&%R +M="!315,@9&5V:6-E("5P`$9O=6YD(%-%4R!$979I8V4@)7@`1F%I;&5D('1O +M('9E<FEF>2!C;VYT<F]L;&5R`&]D:6X@<F5A9"!W<FET92!E>&-E961S("5X +M`&]D:6X`<F%W("5P(&)A9%]S96-T;W(@)7@`5W)I=&4@8F%C:W5P960@;65T +M82!D871A`$9A:6QE9"!T;R!S<&EN9&]W;B!D979I8V5S`$9A:6QE9"!T;R!F +M;'5S:"!T87)G971S`$%U=&\@4F5B=6EL9`!296)U:6QD(%!R:6]R:71Y`$-O +M;G1I;G5E(%)E8G5I;&1I;F<@;VX@17)R;W(`4W!I;F1O=VX@261L92!$:7-K +M("AM:6YU=&5S*0!3=&%G9V5R960@<W!I;G5P```````````````&!`4!`P)2 +M8A4`````````!@0%`0,"V&"?-CD\``````8$!0$#`B!@D%!2```````&!`4! +M`P+88)````````````$"`Q`$!08'$0@)"@L2#`T.#Q,4%187)!@9&ALE'!T> +M'R8@(2(C)P`````````````````````````````````````````````````` +M```A```````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M`````````````````````````````````````````````````Q%0!P`````` +M`@`````````````!```````````````&!`4!`P)28A4`````````!@0%`0," +MV&"?-CD\``````8$!0$#`B!@D%!2```````&!`4!`P+88)`````````````` +M`````````````````"$````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M```#$8!R```````"``````````````$```````````````$!_P(````````` +M```````````````````````````````````````!`````````"`````````` +M4````"@````````````````````````````````````````````````````` +M```````````````````````````````````````````````````````````` +M````````````````````_P`````````````````````````````````````` +M``$``````````?\````````````````````````````````````````!```` +M``````+_`````````````````````````````````````````0`````````# +M_P````````````````````````````````````````$`````````-?\````` +M```````````````````````````````````!``````````3_```````````` +M`````````````````````````````0`````````%_P`````````````````` +M``````````````````````$`````````!O\````````````````````````` +M``````````````````````````?_```````````````````````````````` +M```````````````````*_P`````````````````````````````````````` +M``$`````````"_\````````````````````````````````````````````` +M``````S_```````````````````````````````````````````````````- +M_P``````````````````````````````````````````````````#O\````` +M``````````````````````````````````````````````__```````````` +M```````````````````````````````````````0_P`````````````````` +M````````````````````````````````$?\````````````````````````` +M`````````````````````````!+_```````````````````````````````` +M```````````````````3_P`````````````````````````````````````` +M``$`````````-/\````````````````````````````````````````!```` +M`````!C_``````````````````````````````````````````````````!" +M_P``````````````````````````````````````````````````&?\````` +M`````````````````````````````````````````````!K_```````````` +M```````````````````````````````````````=_P`````````````````` +M````````````````````````````````'O\````````````````````````` +M```````````````!`````````!__```````````````````````````````` +M```````````````````@_P`````````````````````````````````````` +M````````````(?\````````````````````````````````````````!```` +M`````"+_```````````````````````````````````````````````````C +M_P``````````````````````````````````````````````````)/\````` +M`````````````````````````````````````````````"7_```````````` +M```````````````````````````````````````I_P`````````````````` +M````````````````````````````````*O\````````````````````````` +M`````````````````````````"O_```````````````````````````````` +M```````````````````L_P`````````````````````````````````````` +M``$`````````+?\````````````````````````````````````````````` +M`````"[_`````````````````````````````````````````0`````````O +M_P````````````````````````````````````````$`````````2?\````` +M```````````````````````````````````!`````````#?_```````````` +M`````````````````````````````0`````````X_P`````````````````` +M````````````````````````````````.?\````````````````````````` +M`````````````````````````#K_```````````````````````````````` +M`````````0`````````[_P`````````````````````````````````````` +M``$`````````//\````````````````````````````````````````!```` +M`````#W_`````````````````````````````````````````0`````````^ +M_P````````````````````````````````````````$`````````0_\````` +M```````````````````````````````````!`````````$3_```````````` +M`````````````````````````````0````````!&_P`````````````````` +M``````````````````````$`````````1_\````````````````````````` +M```````````````!`````````#+_```````````````````````````````` +M`````````0`````````S_P`````````````````````````````````````` +M````````````9/\````````````````````````````````````````!```` +M`````##_`````````````````````````````````````````0````````!F +M_P````````````````````````````````````````$`````````9_\````` +M```````````````````````````````````!`````````$7_```````````` +M``````````````````````````````````````!(_P`````````````````` +M````````````````````````````````_____P`````````````````````` +M`````````````````````````!0``````````0`!>!`,!PB0`0```````!0` +M```<```````````````L`````````!0````T```````````````"```````` +M`#P```!,``````````````!N`@```````$(.$$(.&$(.($(.*$$.,$$..$0. +M4(,'A@:,!8T$C@./`@`````````4``````````$``7@0#`<(D`$````````4 +M````'```````````````-@`````````4````-```````````````-@`````` +M```4````3```````````````1@`````````4````9```````````````1@`` +M```````4````?```````````````#``````````4``````````$``7@0#`<( +MD`$````````4````'```````````````(@`````````4````-``````````` +M````1P`````````4````3```````````````$``````````4````9``````` +M````````7``````````4````?```````````````#0`````````4````E``` +M````````````)P`````````4````K```````````````,``````````4```` +MQ```````````````,0`````````4````W```````````````,P`````````4 +M````]```````````````W`$````````4````#`$`````````````/@`````` +M```<````)`$`````````````C@````````!$#G```````!P```!$`0`````` +M```````Y`````````$0.$```````%````&0!`````````````"@````````` +M%````'P!`````````````"$`````````%````)0!`````````````"`````` +M````%``````````!``%X$`P'")`!````````%````!P``````````````&,` +M````````%````#0``````````````%(`````````%````$P````````````` +M`%(`````````%````&0``````````````'D`````````)````'P````````` +M`````%`!````````1`XP5(T"C`.&!(,%`````!P```"D```````````````_ +M`````````$0.($J,`H,#/````,0``````````````&T"````````0@X00@X8 +M0@X@0@XH00XP00XX1`Z0`8,'A@:,!8T$C@./`@```````"0````$`0`````` +M``````!*`0```````$$.$$$.&$0.((,#A@(````4``````````$``7@0#`<( +MD`$````````4````'```````````````30`````````4````-``````````` +M````@@`````````4````3```````````````=0`````````4````9``````` +M````````<0`````````4````?```````````````&0`````````<````E``` +M````````````10````````!$#A```````!P```"T```````````````A```` +M`````$0.$```````'````-0``````````````%\`````````1`X0```````\ +M````]```````````````&`(```````!"#A!"#AA"#B!"#BA!#C!!#CA$#D"# +M!X8&C`6-!(X#CP(`````````'````#0!`````````````.T`````````1`X0 +M```````D````5`$`````````````$P$```````!$#C!4C0*,`X8$@P4````` +M)````'P!`````````````!@!````````0@X000X800X@@P2&`XP"`"0```"D +M`0`````````````#!@```````$0.0%Z/`HX#C02,!88&@P<<````S`$````` +M````````$0````````!$#A```````#P```#L`0````````````!5"P`````` +M`$(.$$(.&$(.($(.*$$.,$$..$0.D`&#!X8&C`6-!(X#CP(````````L```` +M+`(`````````````$`(```````!"#A!"#AA!#B!!#BA$#C"#!88$C`.-`@`D +M````7`(`````````````70,```````!$#E!>CP*.`XT$C`6&!H,'/````(0" +M`````````````.\#````````0@X00@X80@X@0@XH00XP00XX1`Y@@P>&!HP% +MC02.`X\"`````````"0```#$`@````````````##"0```````$0.8%Z/`HX# +MC02,!88&@P<\````[`(`````````````BPD```````!"#A!"#AA"#B!"#BA! +M#C!!#CA'#N`!@P>&!HP%C02.`X\"````````)````"P#`````````````.H` +M````````1`XP5(T"C`.&!(,%`````#P```!4`P````````````#`"0`````` +M`$(.$$(.&$(.($(.*$$.,$$..$0.8(,'A@:,!8T$C@./`@`````````\```` +ME`,`````````````T@D```````!"#A!"#AA"#B!"#BA!#C!!#CA$#J`!@P>& +M!HP%C02.`X\"````````)````-0#`````````````+L`````````0@X000X8 +M00X@@P2&`XP"`#0```#\`P````````````"^`````````$(.$$(.&$(.($$. +M*$$.,(,&A@6,!(T#C@(`````````-````#0$`````````````%\#```````` +M0@X00@X80@X@00XH00XP@P:&!8P$C0..`@`````````<````;`0````````` +M````R`````````!$#A```````#P```",!`````````````"?`P```````$(. +M$$(.&$(.($(.*$$.,$$..$0.0(,'A@:,!8T$C@./`@`````````D````S`0` +M````````````R0,```````!$#C!4C0*,`X8$@P4`````/````/0$```````` +M`````/@#````````0@X00@X80@X@0@XH00XP00XX1`Z@`8,'A@:,!8T$C@./ +M`@```````#P````T!0````````````!Q!@```````$(.$$(.&$(.($(.*$$. +M,$$..$0.8(,'A@:,!8T$C@./`@`````````<````=`4`````````````@0`` +M``````!$#A```````!P```"4!0`````````````.`````````$0.$``````` +M'````+0%``````````````L$````````00X01`YP@P(D````U`4````````` +M````!@$```````!$#D!>CP*.`XT$C`6&!H,'/````/P%`````````````$,! +M````````0@X00@X80@X@0@XH00XP00XX1`Y0@P>&!HP%C02.`X\"```````` +M`#P````\!@````````````","P```````$(.$$(.&$(.($(.*$$.,$$..$0. +ML`&#!X8&C`6-!(X#CP(````````L````?`8`````````````=P(```````!" +M#A!"#AA!#B!!#BA$#C"#!88$C`.-`@`\````K`8`````````````$04````` +M``!"#A!"#AA"#B!"#BA!#C!!#CA$#K`!@P>&!HP%C02.`X\"````````%``` +M```````!``%X$`P'")`!````````%````!P``````````````&\````````` +M%````#0``````````````$(`````````%````$P``````````````%P````` +M````%````&0``````````````%\`````````%````'P``````````````-X` +M````````-````)0``````````````#,!````````0@X00@X80@X@00XH00XP +M1`Y`@P:&!8P$C0..`@`````<````S```````````````1`````````!!#A"# +M`@```#P```#L``````````````"+`````````$(.$$(.&$(.($(.*$$.,$$. +M.$0.0(,'A@:,!8T$C@./`@`````````D````+`$`````````````9P$````` +M``!$#E!>CP*.`XT$C`6&!H,')````%0!`````````````%P!````````1`Y0 +M7H\"C@.-!(P%A@:#!R0```!\`0````````````!%`0```````$0.0%Z/`HX# +MC02,!88&@P<<````I`$`````````````<@````````!$#C!*A@*#`R0```#$ +M`0`````````````/`0```````$0.0%Z/`HX#C02,!88&@P<\````[`$````` +M````````GP$```````!"#A!"#AA"#B!"#BA!#C!!#CA$#E"#!X8&C`6-!(X# +MCP(`````````/````"P"`````````````$\!````````0@X00@X80@X@0@XH +M00XP00XX1`Y`@P>&!HP%C02.`X\"`````````"0```!L`@`````````````) +M`0```````$0.,%B.`HT#C`2&!8,&```D````E`(`````````````@P$````` +M``!$#B!.C`*&`X,$````````)````+P"`````````````/\`````````1`XP +M5(T"C`.&!(,%`````#P```#D`@````````````"@`````````$(.$$(.&$(. +M($(.*$$.,$$..$0.0(,'A@:,!8T$C@./`@`````````\````)`,````````` +M````+`$```````!"#A!"#AA"#B!"#BA!#C!!#CA$#E"#!X8&C`6-!(X#CP(` +M````````/````&0#`````````````&\$````````0@X00@X80@X@0@XH00XP +M00XX1`Y@@P>&!HP%C02.`X\"`````````!0``````````0`!>!`,!PB0`0`` +M`````!0````<``````````````!6`````````!0````T``````````````!* M`````````!0``````````0`!>!`,!PB0`0```````!0````<```````````` -M```L`````````!0````T```````````````"`````````#P```!,```````` -M``````!N`@```````$(.$$(.&$(.($(.*$$.,$$..$0.4(,'A@:,!8T$C@./ +M```<`0```````"0````T```````````````=`0```````$$.$$$.&(,#A@(` +M```````4````7```````````````AP`````````4````=``````````````` +M)0`````````4````C````````````````@`````````4````I``````````` +M````2P`````````4````O```````````````*@`````````4````U``````` +M````````-``````````4````[```````````````*@`````````4````!`$` +M````````````,0`````````4````'`$`````````````*@`````````4```` +M-`$`````````````*@`````````4````3`$`````````````(``````````4 +M````9`$`````````````*@`````````4````?`$`````````````*@`````` +M```4````E`$`````````````80`````````4````K`$`````````````]@`` +M```````4````Q`$`````````````T0`````````4````W`$````````````` +M20`````````L````]`$`````````````^@````````!"#A!"#AA!#B!!#BB# +M!88$C`.-`@`````<````)`(`````````````+@````````!$#A```````!P` +M``!$`@`````````````F`````````$0.$```````'````&0"```````````` +M`$8`````````1`X0```````<````A`(`````````````)@````````!$#A`` +M`````!P```"D`@`````````````J`````````$0.$```````/````,0"```` +M`````````(@!````````0@X00@X80@X@0@XH00XP00XX1`Y`@P>&!HP%C02. +M`X\"`````````!P````$`P`````````````L`````````$0.$```````%``` +M`"0#`````````````",`````````%````#P#`````````````"<````````` +M)````%0#`````````````.8`````````0@X000X800X@@P2&`XP"`!P```!\ +M`P`````````````^`````````$0.($J&`H,#'````)P#`````````````#X` +M````````1`X@2H8"@P,D````O`,`````````````20,```````!!#A!!#AA$ +M#B"#`X8"````)````.0#`````````````%D!````````00X000X81`X@@P.& +M`@```!P````,!`````````````!4`````````$0.($J&`H,#)````"P$```` +M`````````*\`````````1`X@3HP"A@.#!````````"0```!4!``````````` +M``"&`````````$0.($Z,`H8#@P0````````D````?`0`````````````\``` +M``````!$#D!>CP*.`XT$C`6&!H,')````*0$`````````````*@````````` +M1`XP5(T"C`.&!(,%`````"0```#,!`````````````!^`0```````$$.$$$. +M&$0.((,#A@(````D````]`0`````````````;0$```````!$#C!8C@*-`XP$ +MA@6#!@``)````!P%`````````````*D`````````1`X@3HP"A@.#!``````` +M`"0```!$!0`````````````-`0```````$0.,%2-`HP#A@2#!0`````D```` +M;`4`````````````*@$```````!$#D!>CP*.`XT$C`6&!H,')````)0%```` +M`````````!,!````````1`XP6(X"C0.,!(8%@P8``"0```"\!0`````````` +M```$`0```````$0.,%B.`HT#C`2&!8,&```D````Y`4`````````````5@$` +M``````!$#D!>CP*.`XT$C`6&!H,'/`````P&`````````````*,#```````` +M0@X00@X80@X@0@XH00XP00XX1`Y`@P>&!HP%C02.`X\"`````````"0```!, +M!@````````````#\`````````$0.0%Z/`HX#C02,!88&@P<D````=`8````` +M````````Z@````````!$#D!>CP*.`XT$C`6&!H,')````)P&```````````` +M`,D`````````1`XP6(X"C0.,!(8%@P8``"0```#$!@````````````"Z```` +M`````$0.,%2-`HP#A@2#!0`````D````[`8`````````````#`$```````!! +M#A!!#AA$#B"#`X8"````)````!0'`````````````'T!````````1`X@3HP" +MA@.#!````````!P````\!P`````````````7`````````$$.$(,"````)``` +M`%P'`````````````"H!````````1`X@3HP"A@.#!````````"0```"$!P`` +M``````````!G`````````$$.$$$.&$0.((,#A@(````<````K`<````````` +M````.@````````!!#A"#`@```!P```#,!P`````````````@`````````$$. +M$(,"````'````.P'`````````````"8`````````00X0@P(````D````#`@` +M````````````\@````````!$#C!4C0*,`X8$@P4`````)````#0(```````` +M`````.H!````````1`XP5(T"C`.&!(,%`````"0```!<"`````````````"& +M`````````$$.$$$.&$0.((,#A@(````D````A`@`````````````A0$````` +M``!!#A!!#AA$#B"#`X8"````/````*P(`````````````&<#````````0@X0 +M0@X80@X@0@XH00XP00XX1`Y@@P>&!HP%C02.`X\"`````````"P```#L"``` +M``````````#A`0```````$(.$$(.&$$.($$.*$0.,(,%A@2,`XT"`#P````< +M"0````````````")`@```````$(.$$(.&$(.($(.*$$.,$$..$0.0(,'A@:, +M!8T$C@./`@`````````D````7`D`````````````)`$```````!$#C!4C0*, +M`X8$@P4`````)````(0)`````````````#0!````````00X000X81`X@@P.& +M`@```"0```"L"0````````````!+`````````$(.$$$.&$0.((,#C`(````< +M````U`D`````````````)@````````!$#A```````!0``````````0`!>!`, +M!PB0`0```````!0````<```````````````5`````````!0````T```````` +M```````:`````````!0```!,```````````````C`````````!0```!D```` +M``````````!!`````````!0```!\``````````````!=`````````!0```"4 +M``````````````"0`0```````"P```"L``````````````#+`````````$(. +M$$(.&$$.($$.*(,%A@2,`XT"`````"P```#<``````````````!N```````` +M`$(.$$(.&$$.($$.*$0.,(,%A@2,`XT"`!P````,`0`````````````I```` +M`````$$.$(,"````'````"P!`````````````(4`````````1`X0```````L +M````3`$`````````````1P$```````!"#A!"#AA!#B!!#BA$#C"#!88$C`.- +M`@`<````?`$`````````````'P$```````!$#A```````!P```"<`0`````` +M``````"``````````$0.$```````'````+P!`````````````(`````````` +M1`X0```````\````W`$`````````````%0D```````!"#A!"#AA"#B!"#BA! +M#C!!#CA$#G"#!X8&C`6-!(X#CP(`````````)````!P"`````````````(,! +M````````1`X@3HP"A@.#!````````!0```!$`@````````````"=```````` +M`!0```!<`@````````````#X`````````"P```!T`@````````````#``0`` +M`````$(.$$(.&$$.($$.*$0.,(,%A@2,`XT"`!0``````````0`!>!`,!PB0 +M`0```````!0````<``````````````!_`````````!0````T```````````` +M``!B`````````!0```!,``````````````!B`````````!0```!D```````` +M``````!I`````````!0```!\```````````````'`````````!0```"4```` +M```````````S`````````!0```"L``````````````!1`````````!0```#$ +M```````````````?`````````!0```#<```````````````N`````````!P` +M``#T``````````````"3`````````$0.$```````)````!0!```````````` +M``$!````````1`XP5(T"C`.&!(,%`````#P````\`0````````````#1`0`` +M`````$(.$$(.&$(.($(.*$$.,$$..$0.4(,'A@:,!8T$C@./`@`````````L +M````?`$`````````````7P````````!"#A!"#AA!#B!!#BA$#C"#!88$C`.- +M`@`D````K`$`````````````[@````````!$#D!>CP*.`XT$C`6&!H,')``` +M`-0!`````````````,X`````````1`XP6(X"C0.,!(8%@P8``!P```#\`0`` +M```````````;`0```````$$.$(,"````)````!P"`````````````*<````` +M````1`XP5(T"C`.&!(,%`````"0```!$`@`````````````J`0```````$$. +M$$$.&$0.((,#A@(````D````;`(`````````````PP````````!$#C!8C@*- +M`XP$A@6#!@``)````)0"`````````````/$`````````1`XP5(T"C`.&!(,% +M`````#P```"\`@````````````#A`````````$(.$$(.&$(.($(.*$$.,$$. +M.$0.<(,'A@:,!8T$C@./`@`````````\````_`(`````````````X0`````` +M``!"#A!"#AA"#B!"#BA!#C!!#CA$#G"#!X8&C`6-!(X#CP(`````````/``` +M`#P#`````````````)\"````````0@X00@X80@X@0@XH00XP00XX1`YP@P>& +M!HP%C02.`X\"`````````#0```!\`P````````````#=`@```````$(.$$(. +M&$(.($$.*$$.,(,&A@6,!(T#C@(`````````)````+0#`````````````*<` +M````````1`XP6(X"C0.,!(8%@P8``#P```#<`P`````````````^`P`````` +M`$(.$$(.&$(.($(.*$$.,$$..$0.<(,'A@:,!8T$C@./`@`````````\```` +M'`0`````````````60<```````!"#A!"#AA"#B!"#BA!#C!!#CA$#J`!@P>& +M!HP%C02.`X\"````````/````%P$`````````````/4`````````0@X00@X8 +M0@X@0@XH00XP00XX1`Y`@P>&!HP%C02.`X\"`````````#0```"<!``````` +M``````#M`P```````$(.$$(.&$(.($$.*$$.,$0.8(,&A@6,!(T#C@(````` +M/````-0$`````````````"H(````````0@X00@X80@X@0@XH00XP00XX1`Y@ +M@P>&!HP%C02.`X\"`````````"0````4!0````````````"H`````````$$. +M$$$.&$0.((,#A@(````D````/`4`````````````:08```````!$#C!8C@*- +M`XP$A@6#!@``)````&0%`````````````$,"````````1`X@3HP"A@.#!``` +M`````!P```",!0`````````````4`````````$0.$```````)````*P%```` +M`````````*4)````````1`Y`7H\"C@.-!(P%A@:#!R0```#4!0`````````` +M``#X`P```````$0.,%2-`HP#A@2#!0`````D````_`4`````````````)P,` +M``````!$#C!8C@*-`XP$A@6#!@``/````"0&`````````````+P"```````` +M0@X00@X80@X@0@XH00XP00XX1`Y@@P>&!HP%C02.`X\"`````````#P```!D +M!@````````````#O`@```````$(.$$(.&$(.($(.*$$.,$$..$<.@`6#!X8& +MC`6-!(X#CP(````````\````I`8`````````````OP(```````!"#A!"#AA" +M#B!"#BA!#C!!#CA'#N`$@P>&!HP%C02.`X\"````````/````.0&```````` +M`````.H#````````0@X00@X80@X@0@XH00XP00XX1PZ`!8,'A@:,!8T$C@./ +M`@```````#P````D!P````````````#L`P```````$(.$$(.&$(.($(.*$$. +M,$$..$<.\`2#!X8&C`6-!(X#CP(````````\````9`<`````````````&`$` +M``````!"#A!"#AA"#B!"#BA!#C!!#CA$#E"#!X8&C`6-!(X#CP(````````` +M+````*0'``````````````$"````````0@X00@X800X@00XH1`XP@P6&!(P# +MC0(`)````-0'`````````````#L"````````1`XP5(T"C`.&!(,%`````#P` +M``#\!P````````````"O`````````$(.$$(.&$(.($(.*$$.,$$..$0.0(,' +MA@:,!8T$C@./`@`````````D````/`@`````````````@PP```````!$#D!> +MCP*.`XT$C`6&!H,')````&0(`````````````",)````````1`Y`7H\"C@.- +M!(P%A@:#!Q0``````````0`!>!`,!PB0`0```````!0````<```````````` +M```P`````````!0````T```````````````E`````````"0```!,```````` +M``````!V`````````$$.$$$.&(,#A@(````````<````=``````````````` +M2P````````!$#AA)C`*#`QP```"4```````````````:`````````$$.$(," +M````%````+0``````````````$(`````````)````,P``````````````)4` +M````````00X000X8@P.&`@```````"0```#T``````````````"%`0`````` +M`$(.$$$.&$$.((,$A@.,`@`<````'`$`````````````-P````````!$#A`` +M`````!P````\`0`````````````Y`````````$$.$(,"````'````%P!```` +M`````````#\`````````1`X0```````D````?`$`````````````AP`````` +M``!$#C!4C0*,`X8$@P4`````)````*0!`````````````$\`````````0@X0 +M00X800X@@P2&`XP"`"0```#,`0````````````!^`````````$0.,%2-`HP# +MA@2#!0`````D````]`$`````````````R0````````!$#C!4C0*,`X8$@P4` +M````/````!P"`````````````!`"````````0@X00@X80@X@0@XH00XP00XX +M1`Y`@P>&!HP%C02.`X\"`````````!P```!<`@````````````!2```````` +M`$0.($J,`H,#'````'P"`````````````%(`````````1`X@2HP"@P,T```` +MG`(`````````````J@````````!"#A!"#AA"#B!!#BA!#C"#!H8%C`2-`XX" +M`````````!P```#4`@````````````!2`````````$0.($J,`H,#'````/0" +M`````````````#<`````````1`X0```````<````%`,`````````````/P`` +M``````!$#A```````#P````T`P````````````#U!````````$(.$$(.&$(. +M($(.*$$.,$$..$0.@`&#!X8&C`6-!(X#CP(````````<````=`,````````` +M````4P````````!$#A```````!P```"4`P````````````!+`````````$0. +M$```````'````+0#`````````````%(`````````1`X@2HP"@P,4```````` +M``$``7@0#`<(D`$````````4````'```````````````&``````````4```` +M-```````````````$@`````````<````3```````````````3@(```````!! +M#A"#`@```!0```!L```````````````>`````````!0```"$```````````` +M```@`````````"0```"<``````````````#C`````````$$.$$$.&(,#A@(` +M```````\````Q```````````````+P$```````!"#A!"#AA"#B!"#BA!#C!! +M#CA$#D"#!X8&C`6-!(X#CP(`````````)`````0!`````````````.,````` +M````1`Y`7H\"C@.-!(P%A@:#!S0````L`0`````````````B`0```````$(. +M$$(.&$(.($$.*$$.,(,&A@6,!(T#C@(`````````)````&0!```````````` +M`*L`````````1`XP5(T"C`.&!(,%`````!0``````````0`!>!`,!PB0`0`` +M`````!0````<```````````````[`0```````!0````T```````````````% +M`````````!0```!,```````````````&`````````!0```!D```````````` +M```<`````````!0```!\```````````````=`````````!0```"4```````` +M```````K`````````!0```"L```````````````G`````````"0```#$```` +M```````````S`0```````$0.,%B.`HT#C`2&!8,&```4````[``````````` +M````0``````````D````!`$`````````````F@````````!$#BA3C0*,`X8$ +M@P4`````%````"P!`````````````%P`````````%````$0!```````````` +M`!<`````````'````%P!`````````````/$#````````1`X0```````<```` +M?`$`````````````50$```````!!#A!$#C"#`AP```"<`0````````````"G +M`0```````$$.$(,"````%``````````!``%X$`P'")`!````````%````!P` +M`````````````$0`````````%````#0``````````````!0`````````)``` +M`$P``````````````&4`````````0@X000X800X@@P2&`XP"`"0```!T```` +M```````````)`P```````$$.$$$.&$0.,(,#A@(````D````G``````````` +M````I@````````!$#C!/C`*&`X,$````````)````,0``````````````'<` +M````````00X000X81`XP@P.&`@```#P```#L``````````````#$```````` +M`$(.$$(.&$(.($(.*$$.,$$..$0.4(,'A@:,!8T$C@./`@`````````<```` +M+`$`````````````?0````````!!#A!$#B"#`AP```!,`0````````````"T +M`````````$0.,$J&`H,#)````&P!`````````````'D#````````1`Y@7H\" +MC@.-!(P%A@:#!Q0``````````0`!>!`,!PB0`0```````!0````<```````` +M```````&`````````!0````T``````````````!&`````````!0```!,```` +M```````````&`````````!0```!D```````````````&`````````!0```!\ +M```````````````&`````````!0```"4``````````````!T`````````!0` +M``"L``````````````"9`````````!0```#$```````````````"```````` +M`!0```#<```````````````(`````````!0```#T``````````````!0```` +M`````!0````,`0`````````````&`````````!0````D`0`````````````& +M`````````!0````\`0`````````````R`````````!P```!4`0`````````` +M```\`````````$0.&$F,`H,#%````'0!`````````````!,`````````%``` +M`(P!`````````````%P`````````%````*0!`````````````%P````````` +M'````+P!`````````````!H`````````1`X0```````D````W`$````````` +M````U`````````!!#A!!#AA$#E"#`X8"````/`````0"`````````````#D& +M````````0@X00@X80@X@0@XH00XP00XX1`Z@`8,'A@:,!8T$C@./`@`````` +M`!P```!$`@````````````!&`````````$0.($J,`H,#)````&0"```````` +M`````!$!````````00X000X81`X@@P.&`@```!P```",`@`````````````> +M`````````$$.$(,"````'````*P"`````````````!X`````````00X0@P(` +M```<````S`(`````````````$0````````!$#A```````"0```#L`@`````` +M``````"!`0```````$0.0%Z/`HX#C02,!88&@P<D````%`,````````````` +MW`0```````!$#E!>CP*.`XT$C`6&!H,')````#P#`````````````#4$```` +M````1`YP7H\"C@.-!(P%A@:#!R0```!D`P````````````#(`````````$0. +M($Z,`H8#@P0````````D````C`,`````````````DP$```````!$#C!8C@*- +M`XP$A@6#!@``'````+0#`````````````-(`````````00X0@P(````D```` +MU`,`````````````C`````````!!#A!!#AA$#B"#`X8"````)````/P#```` +M`````````-P`````````00X000X81`X@@P.&`@```!P````D!``````````` +M```?`````````$$.$(,"````/````$0$`````````````/$"````````0@X0 +M0@X80@X@0@XH00XP00XX1`Y0@P>&!HP%C02.`X\"`````````"0```"$!``` +M``````````"C`````````$0.($Z,`H8#@P0````````D````K`0````````` +M````H0,```````!$#E!>CP*.`XT$C`6&!H,')````-0$`````````````'D! +M````````1`XP5(T"C`.&!(,%`````"0```#\!`````````````#8```````` +M`$0.($Z,`H8#@P0````````\````)`4`````````````Z04```````!"#A!" +M#AA"#B!"#BA!#C!!#CA$#D"#!X8&C`6-!(X#CP(`````````'````&0%```` +M`````````)H`````````1`X@2H8"@P,L````A`4`````````````)@D````` +M``!"#A!!#AA!#B!$#E"#!(8#C`(````````\````M`4`````````````>00` +M``````!"#A!"#AA"#B!"#BA!#C!!#CA$#G"#!X8&C`6-!(X#CP(````````` +M)````/0%`````````````$\"````````0@X000X800X@@P2&`XP"`#0````< +M!@`````````````)!````````$(.$$(.&$(.($$.*$$.,(,&A@6,!(T#C@(` +M````````+````%0&`````````````"`$````````0@X00@X800X@00XH@P6& +M!(P#C0(`````)````(0&`````````````/4#````````0@X000X800X@@P2& +M`XP"`"0```"L!@````````````!@`@```````$(.$$$.&$$.((,$A@.,`@`D +M````U`8`````````````T@8```````!$#C!8C@*-`XP$A@6#!@``)````/P& +M`````````````'X"````````00X000X81`X@@P.&`@```#P````D!P`````` +M```````\`P```````$(.$$(.&$(.($(.*$$.,$$..$0.0(,'A@:,!8T$C@./ M`@`````````4``````````$``7@0#`<(D`$````````4````'``````````` -M````-@`````````4````-```````````````-@`````````4````3``````` -M````````1@`````````4````9```````````````1@`````````4````?``` -M````````````#``````````4``````````$``7@0#`<(D`$````````4```` -M'```````````````(@`````````4````-```````````````1P`````````4 -M````3```````````````$``````````4````9```````````````7``````` -M```4````?```````````````#0`````````4````E```````````````)P`` -M```````4````K```````````````,``````````4````Q``````````````` -M,0`````````4````W```````````````,P`````````4````]``````````` -M````W`$````````4````#`$`````````````/@`````````<````)`$````` -M````````J`````````!!#A!$#G"#`AP```!$`0`````````````Y```````` -M`$0.$```````%````&0!`````````````"@`````````%````'P!```````` -M`````"$`````````%````)0!`````````````"``````````%``````````! -M``%X$`P'")`!````````%````!P``````````````&,`````````%````#0` -M`````````````%(`````````%````$P``````````````%(`````````%``` -M`&0``````````````'D`````````)````'P``````````````%`!```````` -M1`XP5(T"C`.&!(,%`````!P```"D```````````````_`````````$0.($J, -M`H,#/````,0``````````````&T"````````0@X00@X80@X@0@XH00XP00XX -M1`Z0`8,'A@:,!8T$C@./`@```````"0````$`0````````````!*`0`````` -M`$$.$$$.&$0.((,#A@(````4``````````$``7@0#`<(D`$````````4```` -M'```````````````30`````````4````-```````````````@@`````````4 -M````3```````````````=0`````````4````9```````````````<0`````` -M```4````?```````````````&0`````````<````E```````````````10`` -M``````!$#A```````!P```"T```````````````A`````````$0.$``````` -M'````-0``````````````%\`````````1`X0```````\````]``````````` -M`````P(```````!"#A!"#AA"#B!"#BA!#C!!#CA$#D"#!X8&C`6-!(X#CP(` -M````````'````#0!`````````````.T`````````1`X0```````D````5`$` -M````````````"`$```````!$#C!4C0*,`X8$@P4`````)````'P!```````` -M`````!@!````````0@X000X800X@@P2&`XP"`"0```"D`0````````````#C -M!0```````$0.0%Z/`HX#C02,!88&@P<<````S`$`````````````$0`````` -M``!$#A```````#P```#L`0````````````!4"P```````$(.$$(.&$(.($(. -M*$$.,$$..$0.D`&#!X8&C`6-!(X#CP(````````L````+`(````````````` -M`P(```````!"#A!"#AA!#B!!#BA$#C"#!88$C`.-`@`D````7`(````````` -M````/`,```````!$#E!>CP*.`XT$C`6&!H,'/````(0"`````````````-\# -M````````0@X00@X80@X@0@XH00XP00XX1`Y@@P>&!HP%C02.`X\"```````` -M`"0```#$`@````````````"S"0```````$0.8%Z/`HX#C02,!88&@P<\```` -M[`(`````````````4P<```````!"#A!"#AA"#B!"#BA!#C!!#CA$#F"#!X8& -MC`6-!(X#CP(`````````)````"P#`````````````.H`````````1`XP5(T" -MC`.&!(,%`````#P```!4`P````````````#`"0```````$(.$$(.&$(.($(. -M*$$.,$$..$0.8(,'A@:,!8T$C@./`@`````````\````E`,````````````` -ML0D```````!"#A!"#AA"#B!"#BA!#C!!#CA$#J`!@P>&!HP%C02.`X\"```` -M````)````-0#`````````````+L`````````0@X000X800X@@P2&`XP"`#0` -M``#\`P````````````"^`````````$(.$$(.&$(.($$.*$$.,(,&A@6,!(T# -MC@(`````````-````#0$`````````````%\#````````0@X00@X80@X@00XH -M00XP@P:&!8P$C0..`@`````````<````;`0`````````````R`````````!$ -M#A```````#P```",!`````````````"?`P```````$(.$$(.&$(.($(.*$$. -M,$$..$0.0(,'A@:,!8T$C@./`@`````````D````S`0`````````````R0,` -M``````!$#C!4C0*,`X8$@P4`````/````/0$`````````````%P"```````` -M0@X00@X80@X@0@XH00XP00XX1`Y0@P>&!HP%C02.`X\"`````````"P````T -M!0````````````#R`P```````$(.$$(.&$$.($$.*$0.,(,%A@2,`XT"`!P` -M``!D!0````````````"!`````````$0.$```````'````(0%```````````` -M``X`````````1`X0```````<````I`4`````````````!@0```````!!#A!$ -M#G"#`B0```#$!0`````````````&`0```````$0.0%Z/`HX#C02,!88&@P<\ -M````[`4`````````````0P$```````!"#A!"#AA"#B!"#BA!#C!!#CA$#E"# -M!X8&C`6-!(X#CP(`````````/````"P&`````````````(@+````````0@X0 -M0@X80@X@0@XH00XP00XX1`ZP`8,'A@:,!8T$C@./`@```````"P```!L!@`` -M``````````!W`@```````$(.$$(.&$$.($$.*$0.,(,%A@2,`XT"`#P```"< -M!@````````````#/`@```````$(.$$(.&$(.($(.*$$.,$$..$0.8(,'A@:, +M````+``````````4````-````````````````@`````````\````3``````` +M````````;@(```````!"#A!"#AA"#B!"#BA!#C!!#CA$#E"#!X8&C`6-!(X# +MCP(`````````%``````````!``%X$`P'")`!````````%````!P````````` +M`````#8`````````%````#0``````````````#8`````````%````$P````` +M`````````$8`````````%````&0``````````````$8`````````%````'P` +M``````````````P`````````%``````````!``%X$`P'")`!````````%``` +M`!P``````````````"(`````````%````#0``````````````$<````````` +M%````$P``````````````!``````````%````&0``````````````%P````` +M````%````'P```````````````T`````````%````)0``````````````"<` +M````````%````*P``````````````#``````````%````,0````````````` +M`#$`````````%````-P``````````````#,`````````%````/0````````` +M`````-P!````````%`````P!`````````````#X`````````'````"0!```` +M`````````(X`````````1`YP```````<````1`$`````````````.0`````` +M``!$#A```````!0```!D`0`````````````H`````````!0```!\`0`````` +M```````A`````````!0```"4`0`````````````@`````````!0````````` +M`0`!>!`,!PB0`0```````!0````<``````````````!C`````````!0````T +M``````````````!2`````````!0```!,``````````````!2`````````!0` +M``!D``````````````!Y`````````"0```!\``````````````!0`0`````` +M`$0.,%2-`HP#A@2#!0`````<````I```````````````/P````````!$#B!* +MC`*#`SP```#$``````````````!M`@```````$(.$$(.&$(.($(.*$$.,$$. +M.$0.D`&#!X8&C`6-!(X#CP(````````D````!`$`````````````2@$````` +M``!!#A!!#AA$#B"#`X8"````%``````````!``%X$`P'")`!````````%``` +M`!P``````````````$T`````````%````#0``````````````((````````` +M%````$P``````````````'4`````````%````&0``````````````'$````` +M````%````'P``````````````!D`````````'````)0``````````````$4` +M````````1`X0```````<````M```````````````(0````````!$#A`````` +M`!P```#4``````````````!?`````````$0.$```````/````/0````````` +M``````,"````````0@X00@X80@X@0@XH00XP00XX1`Y`@P>&!HP%C02.`X\" +M`````````!P````T`0````````````#M`````````$0.$```````)````%0! +M`````````````!,!````````1`XP5(T"C`.&!(,%`````"0```!\`0`````` +M```````8`0```````$(.$$$.&$$.((,$A@.,`@`D````I`$````````````` +M`P8```````!$#D!>CP*.`XT$C`6&!H,''````,P!`````````````!$````` +M````1`X0```````\````[`$`````````````50L```````!"#A!"#AA"#B!" +M#BA!#C!!#CA$#I`!@P>&!HP%C02.`X\"````````+````"P"```````````` +M`!`"````````0@X00@X800X@00XH1`XP@P6&!(P#C0(`)````%P"```````` +M`````%T#````````1`Y07H\"C@.-!(P%A@:#!SP```"$`@````````````#O +M`P```````$(.$$(.&$(.($(.*$$.,$$..$0.8(,'A@:,!8T$C@./`@`````` +M```D````Q`(`````````````PPD```````!$#F!>CP*.`XT$C`6&!H,'/``` +M`.P"`````````````(L)````````0@X00@X80@X@0@XH00XP00XX1P[@`8,' +MA@:,!8T$C@./`@```````"0````L`P````````````#J`````````$0.,%2- +M`HP#A@2#!0`````\````5`,`````````````P`D```````!"#A!"#AA"#B!" +M#BA!#C!!#CA$#F"#!X8&C`6-!(X#CP(`````````/````)0#```````````` +M`+0)````````0@X00@X80@X@0@XH00XP00XX1`Z@`8,'A@:,!8T$C@./`@`` +M`````"0```#4`P````````````"[`````````$(.$$$.&$$.((,$A@.,`@`T +M````_`,`````````````O@````````!"#A!"#AA"#B!!#BA!#C"#!H8%C`2- +M`XX"`````````#0````T!`````````````!?`P```````$(.$$(.&$(.($$. +M*$$.,(,&A@6,!(T#C@(`````````'````&P$`````````````,@````````` +M1`X0```````\````C`0`````````````GP,```````!"#A!"#AA"#B!"#BA! +M#C!!#CA$#D"#!X8&C`6-!(X#CP(`````````)````,P$`````````````,D# +M````````1`XP5(T"C`.&!(,%`````#P```#T!`````````````#X`P`````` +M`$(.$$(.&$(.($(.*$$.,$$..$0.H`&#!X8&C`6-!(X#CP(````````\```` +M-`4`````````````,08```````!"#A!"#AA"#B!"#BA!#C!!#CA$#F"#!X8& +MC`6-!(X#CP(`````````'````'0%`````````````($`````````1`X0```` +M```<````E`4`````````````#@````````!$#A```````!P```"T!0`````` +M```````+!````````$$.$$0.<(,")````-0%``````````````8!```````` +M1`Y`7H\"C@.-!(P%A@:#!SP```#\!0````````````!#`0```````$(.$$(. +M&$(.($(.*$$.,$$..$0.4(,'A@:,!8T$C@./`@`````````\````/`8````` +M````````D`L```````!"#A!"#AA"#B!"#BA!#C!!#CA$#K`!@P>&!HP%C02. +M`X\"````````+````'P&`````````````'<"````````0@X00@X800X@00XH +M1`XP@P6&!(P#C0(`/````*P&`````````````,$$````````0@X00@X80@X@ +M0@XH00XP00XX1`ZP`8,'A@:,!8T$C@./`@```````!0``````````0`!>!`, +M!PB0`0```````!0````<``````````````!O`````````!0````T```````` +M``````!"`````````!0```!,``````````````!<`````````!0```!D```` +M``````````!?`````````!0```!\``````````````#>`````````#0```"4 +M```````````````S`0```````$(.$$(.&$(.($$.*$$.,$0.0(,&A@6,!(T# +MC@(`````'````,P``````````````$0`````````00X0@P(````\````[``` +M````````````BP````````!"#A!"#AA"#B!"#BA!#C!!#CA$#D"#!X8&C`6- +M!(X#CP(`````````)````"P!`````````````&<!````````1`Y07H\"C@.- +M!(P%A@:#!R0```!4`0````````````!<`0```````$0.4%Z/`HX#C02,!88& +M@P<D````?`$`````````````10$```````!$#D!>CP*.`XT$C`6&!H,''``` +M`*0!`````````````'(`````````1`XP2H8"@P,D````Q`$````````````` +M#P$```````!$#D!>CP*.`XT$C`6&!H,'/````.P!`````````````)\!```` +M````0@X00@X80@X@0@XH00XP00XX1`Y0@P>&!HP%C02.`X\"`````````#P` +M```L`@````````````!/`0```````$(.$$(.&$(.($(.*$$.,$$..$0.0(,' +MA@:,!8T$C@./`@`````````D````;`(`````````````"0$```````!$#C!8 +MC@*-`XP$A@6#!@``)````)0"`````````````(,!````````1`X@3HP"A@.# +M!````````"0```"\`@````````````#_`````````$0.,%2-`HP#A@2#!0`` +M```\````Y`(`````````````H`````````!"#A!"#AA"#B!"#BA!#C!!#CA$ +M#D"#!X8&C`6-!(X#CP(`````````/````"0#`````````````"P!```````` +M0@X00@X80@X@0@XH00XP00XX1`Y0@P>&!HP%C02.`X\"`````````#P```!D +M`P````````````!O!````````$(.$$(.&$(.($(.*$$.,$$..$0.8(,'A@:, M!8T$C@./`@`````````4``````````$``7@0#`<(D`$````````4````'``` -M````````````;P`````````4````-```````````````0@`````````4```` -M3```````````````7``````````4````9```````````````5@`````````4 -M````?```````````````T``````````T````E```````````````,P$````` -M``!"#A!"#AA"#B!!#BA!#C!$#D"#!H8%C`2-`XX"`````!P```#,```````` -M``````!$`````````$$.$(,"````/````.P``````````````(L````````` -M0@X00@X80@X@0@XH00XP00XX1`Y`@P>&!HP%C02.`X\"`````````"0````L -M`0````````````!G`0```````$0.4%Z/`HX#C02,!88&@P<D````5`$````` -M````````7`$```````!$#E!>CP*.`XT$C`6&!H,')````'P!```````````` -M`$4!````````1`Y`7H\"C@.-!(P%A@:#!QP```"D`0````````````!R```` -M`````$0.,$J&`H,#)````,0!``````````````\!````````1`Y`7H\"C@.- -M!(P%A@:#!SP```#L`0````````````"?`0```````$(.$$(.&$(.($(.*$$. -M,$$..$0.4(,'A@:,!8T$C@./`@`````````\````+`(`````````````3P$` -M``````!"#A!"#AA"#B!"#BA!#C!!#CA$#D"#!X8&C`6-!(X#CP(````````` -M)````&P"``````````````D!````````1`XP6(X"C0.,!(8%@P8``"0```"4 -M`@````````````!S`0```````$0.($Z,`H8#@P0````````D````O`(````` -M````````^@````````!$#C!4C0*,`X8$@P4`````/````.0"```````````` -M`)P`````````0@X00@X80@X@0@XH00XP00XX1`Y`@P>&!HP%C02.`X\"```` -M`````#P````D`P`````````````L`0```````$(.$$(.&$(.($(.*$$.,$$. -M.$0.4(,'A@:,!8T$C@./`@`````````\````9`,`````````````7P0````` -M``!"#A!"#AA"#B!"#BA!#C!!#CA$#F"#!X8&C`6-!(X#CP(`````````%``` -M```````!``%X$`P'")`!````````%````!P``````````````%8````````` -M%````#0``````````````$H`````````%``````````!``%X$`P'")`!```` -M````%````!P``````````````!P!````````'````#0```````````````H! -M````````00X0@P(````4````5```````````````AP`````````4````;``` -M````````````)0`````````4````A````````````````@`````````4```` -MG```````````````2P`````````4````M```````````````*@`````````4 -M````S```````````````-``````````4````Y```````````````*@`````` -M```4````_```````````````,0`````````4````%`$`````````````*@`` -M```````4````+`$`````````````*@`````````4````1`$````````````` -M(``````````4````7`$`````````````*@`````````4````=`$````````` -M````*@`````````4````C`$`````````````80`````````4````I`$````` -M````````]@`````````4````O`$`````````````T0`````````4````U`$` -M````````````20`````````L````[`$`````````````^@````````!"#A!" -M#AA!#B!!#BB#!88$C`.-`@`````<````'`(`````````````+@````````!$ -M#A```````!P````\`@`````````````F`````````$0.$```````'````%P" -M`````````````$8`````````1`X0```````<````?`(`````````````)@`` -M``````!$#A```````!P```"<`@`````````````J`````````$0.$``````` -M/````+P"`````````````(@!````````0@X00@X80@X@0@XH00XP00XX1`Y` -M@P>&!HP%C02.`X\"`````````!P```#\`@`````````````L`````````$0. -M$```````%````!P#`````````````",`````````%````#0#```````````` -M`"<`````````)````$P#`````````````.(`````````0@X000X800X@@P2& -M`XP"`!P```!T`P`````````````^`````````$0.($J&`H,#'````)0#```` -M`````````#X`````````1`X@2H8"@P,D````M`,`````````````-P,````` -M``!!#A!!#AA$#B"#`X8"````)````-P#`````````````$H!````````00X0 -M00X81`X@@P.&`@```!P````$!`````````````!4`````````$0.($J&`H,# -M)````"0$`````````````*\`````````1`X@3HP"A@.#!````````"0```!, -M!`````````````"&`````````$0.($Z,`H8#@P0````````D````=`0````` -M````````\`````````!$#D!>CP*.`XT$C`6&!H,')````)P$```````````` -M`*@`````````1`XP5(T"C`.&!(,%`````"0```#$!`````````````!G`0`` -M`````$$.$$$.&$0.((,#A@(````D````[`0`````````````70$```````!$ -M#C!8C@*-`XP$A@6#!@``)````!0%`````````````*D`````````1`X@3HP" -MA@.#!````````"0````\!0`````````````-`0```````$0.,%2-`HP#A@2# -M!0`````D````9`4`````````````*@$```````!$#D!>CP*.`XT$C`6&!H,' -M)````(P%`````````````!,!````````1`XP6(X"C0.,!(8%@P8``"0```"T -M!0`````````````$`0```````$0.,%B.`HT#C`2&!8,&```D````W`4````` -M````````40$```````!$#D!>CP*.`XT$C`6&!H,'/`````0&```````````` -M`'4#````````0@X00@X80@X@0@XH00XP00XX1`Y`@P>&!HP%C02.`X\"```` -M`````"0```!$!@````````````#\`````````$0.0%Z/`HX#C02,!88&@P<D -M````;`8`````````````Z@````````!$#D!>CP*.`XT$C`6&!H,')````)0& -M`````````````,D`````````1`XP6(X"C0.,!(8%@P8``"0```"\!@`````` -M``````"Z`````````$0.,%2-`HP#A@2#!0`````D````Y`8````````````` -M#`$```````!!#A!!#AA$#B"#`X8"````)`````P'`````````````'@!```` -M````1`X@3HP"A@.#!````````!P````T!P`````````````7`````````$$. -M$(,"````)````%0'`````````````"H!````````1`X@3HP"A@.#!``````` -M`"0```!\!P````````````!G`````````$$.$$$.&$0.((,#A@(````<```` -MI`<`````````````.@````````!!#A"#`@```!P```#$!P`````````````@ -M`````````$$.$(,"````'````.0'`````````````"8`````````00X0@P(` -M```D````!`@`````````````Y0````````!$#C!4C0*,`X8$@P4`````)``` -M`"P(`````````````.`!````````1`XP5(T"C`.&!(,%`````"0```!4"``` -M``````````"&`````````$$.$$$.&$0.((,#A@(````D````?`@````````` -M````?`$```````!!#A!!#AA$#B"#`X8"````/````*0(`````````````&8# -M````````0@X00@X80@X@0@XH00XP00XX1`Y@@P>&!HP%C02.`X\"```````` -M`"P```#D"`````````````#A`0```````$(.$$(.&$$.($$.*$0.,(,%A@2, -M`XT"`#P````4"0````````````"/`@```````$(.$$(.&$(.($(.*$$.,$$. -M.$0.0(,'A@:,!8T$C@./`@`````````D````5`D`````````````)`$````` -M``!$#C!4C0*,`X8$@P4`````)````'P)`````````````#0!````````00X0 -M00X81`X@@P.&`@```"0```"D"0````````````!+`````````$(.$$$.&$0. -M((,#C`(````<````S`D`````````````)@````````!$#A```````!0````` -M`````0`!>!`,!PB0`0```````!0````<```````````````5`````````!0` -M```T```````````````:`````````!0```!,```````````````C```````` -M`!0```!D``````````````!!`````````!0```!\``````````````!=```` -M`````!0```"4``````````````"0`0```````"P```"L``````````````#+ -M`````````$(.$$(.&$$.($$.*(,%A@2,`XT"`````"P```#<```````````` -M``!N`````````$(.$$(.&$$.($$.*$0.,(,%A@2,`XT"`!P````,`0`````` -M```````I`````````$$.$(,"````'````"P!`````````````(4````````` -M1`X0```````L````3`$`````````````1P$```````!"#A!"#AA!#B!!#BA$ -M#C"#!88$C`.-`@`<````?`$`````````````'P$```````!$#A```````!P` -M``"<`0````````````"``````````$0.$```````'````+P!```````````` -M`(``````````1`X0```````\````W`$`````````````%0D```````!"#A!" -M#AA"#B!"#BA!#C!!#CA$#G"#!X8&C`6-!(X#CP(`````````)````!P"```` -M`````````(,!````````1`X@3HP"A@.#!````````!0```!$`@`````````` -M``"=`````````!0```!<`@````````````#X`````````"P```!T`@`````` -M``````#``0```````$(.$$(.&$$.($$.*$0.,(,%A@2,`XT"`!0````````` -M`0`!>!`,!PB0`0```````!0````<``````````````!_`````````!0````T -M``````````````!B`````````!0```!,``````````````!B`````````!0` -M``!D``````````````!I`````````!0```!\```````````````'```````` -M`!0```"4```````````````S`````````!0```"L``````````````!1```` -M`````!0```#$```````````````?`````````!0```#<```````````````N -M`````````!P```#T``````````````"3`````````$0.$```````)````!0! -M``````````````$!````````1`XP5(T"C`.&!(,%`````#P````\`0`````` -M``````#1`0```````$(.$$(.&$(.($(.*$$.,$$..$0.4(,'A@:,!8T$C@./ -M`@`````````L````?`$`````````````7P````````!"#A!"#AA!#B!!#BA$ -M#C"#!88$C`.-`@`D````K`$`````````````[@````````!$#D!>CP*.`XT$ -MC`6&!H,')````-0!`````````````,X`````````1`XP6(X"C0.,!(8%@P8` -M`!P```#\`0`````````````;`0```````$$.$(,"````)````!P"```````` -M`````*<`````````1`XP5(T"C`.&!(,%`````"0```!$`@`````````````J -M`0```````$$.$$$.&$0.((,#A@(````D````;`(`````````````PP`````` -M``!$#C!8C@*-`XP$A@6#!@``)````)0"`````````````/$`````````1`XP -M5(T"C`.&!(,%`````#P```"\`@````````````#A`````````$(.$$(.&$(. -M($(.*$$.,$$..$0.<(,'A@:,!8T$C@./`@`````````\````_`(````````` -M````X0````````!"#A!"#AA"#B!"#BA!#C!!#CA$#G"#!X8&C`6-!(X#CP(` -M````````/````#P#`````````````)\"````````0@X00@X80@X@0@XH00XP -M00XX1`YP@P>&!HP%C02.`X\"`````````"P```!\`P````````````"S`@`` -M`````$(.$$(.&$$.($$.*$0.,(,%A@2,`XT"`#P```"L`P````````````#/ -M!P```````$(.$$(.&$(.($(.*$$.,$$..$0.<(,'A@:,!8T$C@./`@`````` -M```D````[`,`````````````IP````````!$#C!8C@*-`XP$A@6#!@``/``` -M`!0$`````````````%<#````````0@X00@X80@X@0@XH00XP00XX1`Z``8,' -MA@:,!8T$C@./`@```````#P```!4!`````````````!8!P```````$(.$$(. -M&$(.($(.*$$.,$$..$0.H`&#!X8&C`6-!(X#CP(````````\````E`0````` -M````````]0````````!"#A!"#AA"#B!"#BA!#C!!#CA$#D"#!X8&C`6-!(X# -MCP(`````````-````-0$`````````````.T#````````0@X00@X80@X@00XH -M00XP1`Y@@P:&!8P$C0..`@`````\````#`4`````````````"@@```````!" -M#A!"#AA"#B!"#BA!#C!!#CA$#F"#!X8&C`6-!(X#CP(`````````)````$P% -M`````````````*@`````````00X000X81`X@@P.&`@```"0```!T!0`````` -M``````"2!@```````$0.,%B.`HT#C`2&!8,&```D````G`4````````````` -M,P(```````!$#B!.C`*&`X,$````````)````,0%`````````````*4)```` -M````1`Y`7H\"C@.-!(P%A@:#!R0```#L!0````````````"H`P```````$0. -M,%2-`HP#A@2#!0`````D````%`8`````````````)P,```````!$#C!8C@*- -M`XP$A@6#!@``/````#P&`````````````)T"````````0@X00@X80@X@0@XH -M00XP00XX1`Y@@P>&!HP%C02.`X\"`````````#P```!\!@````````````#O -M`@```````$(.$$(.&$(.($(.*$$.,$$..$<.@`6#!X8&C`6-!(X#CP(````` -M```\````O`8`````````````OP(```````!"#A!"#AA"#B!"#BA!#C!!#CA' -M#N`$@P>&!HP%C02.`X\"````````/````/P&`````````````.H#```````` -M0@X00@X80@X@0@XH00XP00XX1PZ`!8,'A@:,!8T$C@./`@```````#P````\ -M!P````````````#L`P```````$(.$$(.&$(.($(.*$$.,$$..$<.\`2#!X8& -MC`6-!(X#CP(````````\````?`<`````````````&`$```````!"#A!"#AA" -M#B!"#BA!#C!!#CA$#E"#!X8&C`6-!(X#CP(`````````+````+P'```````` -M``````$"````````0@X00@X800X@00XH1`XP@P6&!(P#C0(`)````.P'```` -M`````````,T!````````1`XP6(X"C0.,!(8%@P8``#P````4"``````````` -M``"H`````````$(.$$(.&$(.($(.*$$.,$$..$0.0(,'A@:,!8T$C@./`@`` -M```````D````5`@`````````````TPL```````!$#D!>CP*.`XT$C`6&!H,' -M)````'P(`````````````!,)````````1`Y`7H\"C@.-!(P%A@:#!Q0````` -M`````0`!>!`,!PB0`0```````!0````<```````````````P`````````!0` -M```T```````````````E`````````"0```!,``````````````!V```````` -M`$$.$$$.&(,#A@(````````<````=```````````````2P````````!$#AA) -MC`*#`QP```"4```````````````:`````````$$.$(,"````%````+0````` -M`````````$(`````````)````,P``````````````)4`````````00X000X8 -M@P.&`@```````"0```#T``````````````"%`0```````$(.$$$.&$$.((,$ -MA@.,`@`<````'`$`````````````-P````````!$#A```````!P````\`0`` -M```````````Y`````````$$.$(,"````'````%P!`````````````#\````` -M````1`X0```````D````?`$`````````````AP````````!$#C!4C0*,`X8$ -M@P4`````)````*0!`````````````$\`````````0@X000X800X@@P2&`XP" -M`"0```#,`0````````````!^`````````$0.,%2-`HP#A@2#!0`````D```` -M]`$`````````````R0````````!$#C!4C0*,`X8$@P4`````/````!P"```` -M`````````!`"````````0@X00@X80@X@0@XH00XP00XX1`Y`@P>&!HP%C02. -M`X\"`````````!P```!<`@````````````!2`````````$0.($J,`H,#'``` -M`'P"`````````````%(`````````1`X@2HP"@P,T````G`(````````````` -MJ@````````!"#A!"#AA"#B!!#BA!#C"#!H8%C`2-`XX"`````````!P```#4 -M`@````````````!2`````````$0.($J,`H,#'````/0"`````````````#<` -M````````1`X0```````<````%`,`````````````/P````````!$#A`````` -M`#P````T`P````````````#U!````````$(.$$(.&$(.($(.*$$.,$$..$0. -M@`&#!X8&C`6-!(X#CP(````````<````=`,`````````````4P````````!$ -M#A```````!P```"4`P````````````!+`````````$0.$```````'````+0# -M`````````````%(`````````1`X@2HP"@P,4``````````$``7@0#`<(D`$` -M```````4````'```````````````&``````````4````-``````````````` -M$@`````````<````3```````````````3@(```````!!#A"#`@```!0```!L -M```````````````>`````````!0```"$```````````````@`````````"0` -M``"<``````````````#C`````````$$.$$$.&(,#A@(````````\````Q``` -M````````````+P$```````!"#A!"#AA"#B!"#BA!#C!!#CA$#D"#!X8&C`6- -M!(X#CP(`````````)`````0!`````````````.,`````````1`Y`7H\"C@.- -M!(P%A@:#!S0````L`0`````````````B`0```````$(.$$(.&$(.($$.*$$. -M,(,&A@6,!(T#C@(`````````)````&0!`````````````*L`````````1`XP -M5(T"C`.&!(,%`````!0``````````0`!>!`,!PB0`0```````!0````<```` -M```````````?`0```````!0````T```````````````%`````````!0```!, -M```````````````&`````````!0```!D```````````````<`````````!0` -M``!\```````````````=`````````!0```"4```````````````K```````` -M`!0```"L```````````````G`````````"0```#$```````````````S`0`` -M`````$0.,%B.`HT#C`2&!8,&```4````[```````````````0``````````D -M````!`$`````````````F@````````!$#BA3C0*,`X8$@P4`````%````"P! -M`````````````%P`````````%````$0!`````````````!<`````````'``` -M`%P!`````````````/$#````````1`X0```````<````?`$````````````` -M50$```````!!#A!$#C"#`AP```"<`0````````````"G`0```````$$.$(," -M````%``````````!``%X$`P'")`!````````%````!P``````````````$0` -M````````%````#0``````````````!0`````````)````$P````````````` -M`&4`````````0@X000X800X@@P2&`XP"`"0```!T```````````````)`P`` -M`````$$.$$$.&$0.,(,#A@(````D````G```````````````I@````````!$ -M#C!/C`*&`X,$````````)````,0``````````````'<`````````00X000X8 -M1`XP@P.&`@```#P```#L``````````````#$`````````$(.$$(.&$(.($(. -M*$$.,$$..$0.4(,'A@:,!8T$C@./`@`````````<````+`$````````````` -M?0````````!!#A!$#B"#`AP```!,`0````````````"T`````````$0.,$J& -M`H,#)````&P!`````````````'D#````````1`Y@7H\"C@.-!(P%A@:#!Q0` -M`````````0`!>!`,!PB0`0```````!0````<```````````````&```````` -M`!0````T``````````````!&`````````!0```!,```````````````&```` -M`````!0```!D```````````````&`````````!0```!\```````````````& -M`````````!0```"4``````````````!T`````````!0```"L```````````` -M``"9`````````!0```#$```````````````"`````````!0```#<```````` -M```````(`````````!0```#T``````````````!0`````````!0````,`0`` -M```````````&`````````!0````D`0`````````````&`````````!0````\ -M`0`````````````R`````````!P```!4`0`````````````\`````````$0. -M&$F,`H,#%````'0!`````````````!,`````````%````(P!```````````` -M`%P`````````%````*0!`````````````%P`````````'````+P!```````` -M`````!H`````````1`X0```````D````W`$`````````````U`````````!! -M#A!!#AA$#E"#`X8"````/`````0"`````````````#D&````````0@X00@X8 -M0@X@0@XH00XP00XX1`Z@`8,'A@:,!8T$C@./`@```````!P```!$`@`````` -M``````!&`````````$0.($J,`H,#)````&0"`````````````!$!```````` -M00X000X81`X@@P.&`@```!P```",`@`````````````>`````````$$.$(," -M````'````*P"`````````````!X`````````00X0@P(````<````S`(````` -M````````$0````````!$#A```````"0```#L`@````````````"!`0`````` -M`$0.0%Z/`HX#C02,!88&@P<D````%`,`````````````6@$```````!$#C!8 -MC@*-`XP$A@6#!@``)````#P#`````````````-P$````````1`Y07H\"C@.- -M!(P%A@:#!R0```!D`P`````````````U!````````$0.<%Z/`HX#C02,!88& -M@P<D````C`,`````````````R`````````!$#B!.C`*&`X,$````````)``` -M`+0#`````````````),!````````1`XP6(X"C0.,!(8%@P8``!P```#<`P`` -M``````````#2`````````$$.$(,"````)````/P#`````````````(0````` -M````00X000X81`X@@P.&`@```"0````D!`````````````#L`````````$$. -M$$$.&$0.((,#A@(````<````3`0`````````````'P````````!!#A"#`@`` -M`#P```!L!`````````````#Q`@```````$(.$$(.&$(.($(.*$$.,$$..$0. -M4(,'A@:,!8T$C@./`@`````````D````K`0`````````````HP````````!$ -M#B!.C`*&`X,$````````)````-0$`````````````'D!````````1`XP5(T" -MC`.&!(,%`````"0```#\!``````````````Q`0```````$0.8$^,`H8#@P0` -M```````\````)`4`````````````V@4```````!"#A!"#AA"#B!"#BA!#C!! -M#CA$#D"#!X8&C`6-!(X#CP(`````````'````&0%`````````````'8````` -M````1`X@2H8"@P,L````A`4`````````````)@D```````!"#A!!#AA!#B!$ -M#E"#!(8#C`(````````\````M`4`````````````:00```````!"#A!"#AA" -M#B!"#BA!#C!!#CA$#G"#!X8&C`6-!(X#CP(`````````)````/0%```````` -M`````$L"````````0@X000X800X@@P2&`XP"`#0````<!@`````````````) -M!````````$(.$$(.&$(.($$.*$$.,(,&A@6,!(T#C@(`````````+````%0& -M`````````````"`$````````0@X00@X800X@00XH@P6&!(P#C0(`````)``` -M`(0&`````````````/4#````````0@X000X800X@@P2&`XP"`"0```"L!@`` -M``````````!@`@```````$(.$$$.&$$.((,$A@.,`@`D````U`8````````` -M````T@8```````!$#C!8C@*-`XP$A@6#!@``)````/P&`````````````(8" -M````````00X000X81`X@@P.&`@```#P````D!P`````````````N`P`````` -M`$(.$$(.&$(.($(.*$$.,$$..$0.0(,'A@:,!8T$C@./`@`````````4```` -M``````$``7@0#`<(D`$````````4````'```````````````+``````````4 -M````-````````````````@`````````\````3```````````````;@(````` -M``!"#A!"#AA"#B!"#BA!#C!!#CA$#E"#!X8&C`6-!(X#CP(`````````%``` -M```````!``%X$`P'")`!````````%````!P``````````````#8````````` -M%````#0``````````````#8`````````%````$P``````````````$8````` -M````%````&0``````````````$8`````````%````'P```````````````P` -M````````%``````````!``%X$`P'")`!````````%````!P````````````` -M`"(`````````%````#0``````````````$<`````````%````$P````````` -M`````!``````````%````&0``````````````%P`````````%````'P````` -M``````````T`````````%````)0``````````````"<`````````%````*P` -M`````````````#``````````%````,0``````````````#$`````````%``` -M`-P``````````````#,`````````%````/0``````````````-P!```````` -M%`````P!`````````````#X`````````'````"0!`````````````*@````` -M````00X01`YP@P(<````1`$`````````````.0````````!$#A```````!0` -M``!D`0`````````````H`````````!0```!\`0`````````````A```````` -M`!0```"4`0`````````````@`````````!0``````````0`!>!`,!PB0`0`` -M`````!0````<``````````````!C`````````!0````T``````````````!2 -M`````````!0```!,``````````````!2`````````!0```!D```````````` -M``!Y`````````"0```!\``````````````!0`0```````$0.,%2-`HP#A@2# -M!0`````<````I```````````````/P````````!$#B!*C`*#`SP```#$```` -M``````````!M`@```````$(.$$(.&$(.($(.*$$.,$$..$0.D`&#!X8&C`6- -M!(X#CP(````````D````!`$`````````````2@$```````!!#A!!#AA$#B"# -M`X8"````%``````````!``%X$`P'")`!````````%````!P````````````` -M`$T`````````%````#0``````````````((`````````%````$P````````` -M`````'4`````````%````&0``````````````'$`````````%````'P````` -M`````````!D`````````'````)0``````````````$4`````````1`X0```` -M```<````M```````````````(0````````!$#A```````!P```#4```````` -M``````!?`````````$0.$```````/````/0```````````````,"```````` -M0@X00@X80@X@0@XH00XP00XX1`Y`@P>&!HP%C02.`X\"`````````!P````T -M`0````````````#M`````````$0.$```````)````%0!``````````````@! -M````````1`XP5(T"C`.&!(,%`````"0```!\`0`````````````8`0`````` -M`$(.$$$.&$$.((,$A@.,`@`D````I`$`````````````XP4```````!$#D!> -MCP*.`XT$C`6&!H,''````,P!`````````````!$`````````1`X0```````\ -M````[`$`````````````5`L```````!"#A!"#AA"#B!"#BA!#C!!#CA$#I`! -M@P>&!HP%C02.`X\"````````+````"P"``````````````,"````````0@X0 -M0@X800X@00XH1`XP@P6&!(P#C0(`)````%P"`````````````#P#```````` -M1`Y07H\"C@.-!(P%A@:#!SP```"$`@````````````#?`P```````$(.$$(. -M&$(.($(.*$$.,$$..$0.8(,'A@:,!8T$C@./`@`````````D````Q`(````` -M````````LPD```````!$#F!>CP*.`XT$C`6&!H,'/````.P"```````````` -M`%,'````````0@X00@X80@X@0@XH00XP00XX1`Y@@P>&!HP%C02.`X\"```` -M`````"0````L`P````````````#J`````````$0.,%2-`HP#A@2#!0`````\ -M````5`,`````````````P`D```````!"#A!"#AA"#B!"#BA!#C!!#CA$#F"# -M!X8&C`6-!(X#CP(`````````/````)0#`````````````+$)````````0@X0 -M0@X80@X@0@XH00XP00XX1`Z@`8,'A@:,!8T$C@./`@```````"0```#4`P`` -M``````````"[`````````$(.$$$.&$$.((,$A@.,`@`T````_`,````````` -M````O@````````!"#A!"#AA"#B!!#BA!#C"#!H8%C`2-`XX"`````````#0` -M```T!`````````````!?`P```````$(.$$(.&$(.($$.*$$.,(,&A@6,!(T# -MC@(`````````'````&P$`````````````,@`````````1`X0```````\```` -MC`0`````````````GP,```````!"#A!"#AA"#B!"#BA!#C!!#CA$#D"#!X8& -MC`6-!(X#CP(`````````)````,P$`````````````,D#````````1`XP5(T" -MC`.&!(,%`````#P```#T!`````````````!<`@```````$(.$$(.&$(.($(. -M*$$.,$$..$0.4(,'A@:,!8T$C@./`@`````````L````-`4````````````` -M\@,```````!"#A!"#AA!#B!!#BA$#C"#!88$C`.-`@`<````9`4````````` -M````@0````````!$#A```````!P```"$!0`````````````.`````````$0. -M$```````'````*0%``````````````8$````````00X01`YP@P(D````Q`4` -M````````````!@$```````!$#D!>CP*.`XT$C`6&!H,'/````.P%```````` -M`````$,!````````0@X00@X80@X@0@XH00XP00XX1`Y0@P>&!HP%C02.`X\" -M`````````#P````L!@````````````"("P```````$(.$$(.&$(.($(.*$$. -M,$$..$0.L`&#!X8&C`6-!(X#CP(````````L````;`8`````````````=P(` -M``````!"#A!"#AA!#B!!#BA$#C"#!88$C`.-`@`\````G`8````````````` -MSP(```````!"#A!"#AA"#B!"#BA!#C!!#CA$#F"#!X8&C`6-!(X#CP(````` -M````%``````````!``%X$`P'")`!````````%````!P``````````````&\` -M````````%````#0``````````````$(`````````%````$P````````````` -M`%P`````````%````&0``````````````%8`````````%````'P````````` -M`````-``````````-````)0``````````````#,!````````0@X00@X80@X@ -M00XH00XP1`Y`@P:&!8P$C0..`@`````<````S```````````````1``````` -M``!!#A"#`@```#P```#L``````````````"+`````````$(.$$(.&$(.($(. -M*$$.,$$..$0.0(,'A@:,!8T$C@./`@`````````D````+`$````````````` -M9P$```````!$#E!>CP*.`XT$C`6&!H,')````%0!`````````````%P!```` -M````1`Y07H\"C@.-!(P%A@:#!R0```!\`0````````````!%`0```````$0. -M0%Z/`HX#C02,!88&@P<<````I`$`````````````<@````````!$#C!*A@*# -M`R0```#$`0`````````````/`0```````$0.0%Z/`HX#C02,!88&@P<\```` -M[`$`````````````GP$```````!"#A!"#AA"#B!"#BA!#C!!#CA$#E"#!X8& -MC`6-!(X#CP(`````````/````"P"`````````````$\!````````0@X00@X8 -M0@X@0@XH00XP00XX1`Y`@P>&!HP%C02.`X\"`````````"0```!L`@`````` -M```````)`0```````$0.,%B.`HT#C`2&!8,&```D````E`(````````````` -M<P$```````!$#B!.C`*&`X,$````````)````+P"`````````````/H````` -M````1`XP5(T"C`.&!(,%`````#P```#D`@````````````"<`````````$(. -M$$(.&$(.($(.*$$.,$$..$0.0(,'A@:,!8T$C@./`@`````````\````)`,` -M````````````+`$```````!"#A!"#AA"#B!"#BA!#C!!#CA$#E"#!X8&C`6- -M!(X#CP(`````````/````&0#`````````````%\$````````0@X00@X80@X@ -M0@XH00XP00XX1`Y@@P>&!HP%C02.`X\"`````````!0``````````0`!>!`, -M!PB0`0```````!0````<``````````````!6`````````!0````T```````` -M``````!*`````````!0``````````0`!>!`,!PB0`0```````!0````<```` -M```````````<`0```````!P````T```````````````*`0```````$$.$(," -M````%````%0``````````````(<`````````%````&P``````````````"4` -M````````%````(0```````````````(`````````%````)P````````````` -M`$L`````````%````+0``````````````"H`````````%````,P````````` -M`````#0`````````%````.0``````````````"H`````````%````/P````` -M`````````#$`````````%````!0!`````````````"H`````````%````"P! -M`````````````"H`````````%````$0!`````````````"``````````%``` -M`%P!`````````````"H`````````%````'0!`````````````"H````````` -M%````(P!`````````````&$`````````%````*0!`````````````/8````` -M````%````+P!`````````````-$`````````%````-0!`````````````$D` -M````````+````.P!`````````````/H`````````0@X00@X800X@00XH@P6& -M!(P#C0(`````'````!P"`````````````"X`````````1`X0```````<```` -M/`(`````````````)@````````!$#A```````!P```!<`@````````````!& -M`````````$0.$```````'````'P"`````````````"8`````````1`X0```` -M```<````G`(`````````````*@````````!$#A```````#P```"\`@`````` -M``````"(`0```````$(.$$(.&$(.($(.*$$.,$$..$0.0(,'A@:,!8T$C@./ -M`@`````````<````_`(`````````````+`````````!$#A```````!0````< -M`P`````````````C`````````!0````T`P`````````````G`````````"0` -M``!,`P````````````#B`````````$(.$$$.&$$.((,$A@.,`@`<````=`,` -M````````````/@````````!$#B!*A@*#`QP```"4`P`````````````^```` -M`````$0.($J&`H,#)````+0#`````````````#<#````````00X000X81`X@ -M@P.&`@```"0```#<`P````````````!*`0```````$$.$$$.&$0.((,#A@(` -M```<````!`0`````````````5`````````!$#B!*A@*#`R0````D!``````` -M``````"O`````````$0.($Z,`H8#@P0````````D````3`0````````````` -MA@````````!$#B!.C`*&`X,$````````)````'0$`````````````/`````` -M````1`Y`7H\"C@.-!(P%A@:#!R0```"<!`````````````"H`````````$0. -M,%2-`HP#A@2#!0`````D````Q`0`````````````9P$```````!!#A!!#AA$ -M#B"#`X8"````)````.P$`````````````%T!````````1`XP6(X"C0.,!(8% -M@P8``"0````4!0````````````"I`````````$0.($Z,`H8#@P0````````D -M````/`4`````````````#0$```````!$#C!4C0*,`X8$@P4`````)````&0% -M`````````````"H!````````1`Y`7H\"C@.-!(P%A@:#!R0```",!0`````` -M```````3`0```````$0.,%B.`HT#C`2&!8,&```D````M`4````````````` -M!`$```````!$#C!8C@*-`XP$A@6#!@``)````-P%`````````````%$!```` -M````1`Y`7H\"C@.-!(P%A@:#!SP````$!@````````````!U`P```````$(. -M$$(.&$(.($(.*$$.,$$..$0.0(,'A@:,!8T$C@./`@`````````D````1`8` -M````````````_`````````!$#D!>CP*.`XT$C`6&!H,')````&P&```````` -M`````.H`````````1`Y`7H\"C@.-!(P%A@:#!R0```"4!@````````````#) -M`````````$0.,%B.`HT#C`2&!8,&```D````O`8`````````````N@`````` -M``!$#C!4C0*,`X8$@P4`````)````.0&``````````````P!````````00X0 -M00X81`X@@P.&`@```"0````,!P````````````!X`0```````$0.($Z,`H8# -M@P0````````<````-`<`````````````%P````````!!#A"#`@```"0```!4 -M!P`````````````J`0```````$0.($Z,`H8#@P0````````D````?`<````` -M````````9P````````!!#A!!#AA$#B"#`X8"````'````*0'```````````` -M`#H`````````00X0@P(````<````Q`<`````````````(`````````!!#A"# -M`@```!P```#D!P`````````````F`````````$$.$(,"````)`````0(```` -M`````````.4`````````1`XP5(T"C`.&!(,%`````"0````L"``````````` -M``#@`0```````$0.,%2-`HP#A@2#!0`````D````5`@`````````````A@`` -M``````!!#A!!#AA$#B"#`X8"````)````'P(`````````````'P!```````` -M00X000X81`X@@P.&`@```#P```"D"`````````````!F`P```````$(.$$(. -M&$(.($(.*$$.,$$..$0.8(,'A@:,!8T$C@./`@`````````L````Y`@````` -M````````X0$```````!"#A!"#AA!#B!!#BA$#C"#!88$C`.-`@`\````%`D` -M````````````CP(```````!"#A!"#AA"#B!"#BA!#C!!#CA$#D"#!X8&C`6- -M!(X#CP(`````````)````%0)`````````````"0!````````1`XP5(T"C`.& -M!(,%`````"0```!\"0`````````````T`0```````$$.$$$.&$0.((,#A@(` -M```D````I`D`````````````2P````````!"#A!!#AA$#B"#`XP"````'``` -M`,P)`````````````"8`````````1`X0```````4``````````$``7@0#`<( -MD`$````````4````'```````````````%0`````````4````-``````````` -M````&@`````````4````3```````````````(P`````````4````9``````` -M````````00`````````4````?```````````````70`````````4````E``` -M````````````D`$````````L````K```````````````RP````````!"#A!" -M#AA!#B!!#BB#!88$C`.-`@`````L````W```````````````;@````````!" -M#A!"#AA!#B!!#BA$#C"#!88$C`.-`@`<````#`$`````````````*0`````` -M``!!#A"#`@```!P````L`0````````````"%`````````$0.$```````+``` -M`$P!`````````````$<!````````0@X00@X800X@00XH1`XP@P6&!(P#C0(` -M'````'P!`````````````!\!````````1`X0```````<````G`$````````` -M````@`````````!$#A```````!P```"\`0````````````"``````````$0. -M$```````/````-P!`````````````!4)````````0@X00@X80@X@0@XH00XP -M00XX1`YP@P>&!HP%C02.`X\"`````````"0````<`@````````````"#`0`` -M`````$0.($Z,`H8#@P0````````4````1`(`````````````G0`````````4 -M````7`(`````````````^``````````L````=`(`````````````P`$````` -M``!"#A!"#AA!#B!!#BA$#C"#!88$C`.-`@`4``````````$``7@0#`<(D`$` -M```````4````'```````````````?P`````````4````-``````````````` -M8@`````````4````3```````````````8@`````````4````9``````````` -M````:0`````````4````?```````````````!P`````````4````E``````` -M````````,P`````````4````K```````````````40`````````4````Q``` -M````````````'P`````````4````W```````````````+@`````````<```` -M]```````````````DP````````!$#A```````"0````4`0`````````````! -M`0```````$0.,%2-`HP#A@2#!0`````\````/`$`````````````T0$````` -M``!"#A!"#AA"#B!"#BA!#C!!#CA$#E"#!X8&C`6-!(X#CP(`````````+``` -M`'P!`````````````%\`````````0@X00@X800X@00XH1`XP@P6&!(P#C0(` -M)````*P!`````````````.X`````````1`Y`7H\"C@.-!(P%A@:#!R0```#4 -M`0````````````#.`````````$0.,%B.`HT#C`2&!8,&```<````_`$````` -M````````&P$```````!!#A"#`@```"0````<`@````````````"G```````` -M`$0.,%2-`HP#A@2#!0`````D````1`(`````````````*@$```````!!#A!! -M#AA$#B"#`X8"````)````&P"`````````````,,`````````1`XP6(X"C0., -M!(8%@P8``"0```"4`@````````````#Q`````````$0.,%2-`HP#A@2#!0`` -M```\````O`(`````````````X0````````!"#A!"#AA"#B!"#BA!#C!!#CA$ -M#G"#!X8&C`6-!(X#CP(`````````/````/P"`````````````.$````````` -M0@X00@X80@X@0@XH00XP00XX1`YP@P>&!HP%C02.`X\"`````````#P````\ -M`P````````````"?`@```````$(.$$(.&$(.($(.*$$.,$$..$0.<(,'A@:, -M!8T$C@./`@`````````L````?`,`````````````LP(```````!"#A!"#AA! -M#B!!#BA$#C"#!88$C`.-`@`\````K`,`````````````SP<```````!"#A!" -M#AA"#B!"#BA!#C!!#CA$#G"#!X8&C`6-!(X#CP(`````````)````.P#```` -M`````````*<`````````1`XP6(X"C0.,!(8%@P8``#P````4!``````````` -M``!'`P```````$(.$$(.&$(.($(.*$$.,$$..$0.@`&#!X8&C`6-!(X#CP(` -M```````\````5`0`````````````6`<```````!"#A!"#AA"#B!"#BA!#C!! -M#CA$#J`!@P>&!HP%C02.`X\"````````/````)0$`````````````/4````` -M````0@X00@X80@X@0@XH00XP00XX1`Y`@P>&!HP%C02.`X\"`````````#0` -M``#4!`````````````#M`P```````$(.$$(.&$(.($$.*$$.,$0.8(,&A@6, -M!(T#C@(`````/`````P%`````````````"H(````````0@X00@X80@X@0@XH -M00XP00XX1`Y@@P>&!HP%C02.`X\"`````````"0```!,!0````````````"H -M`````````$$.$$$.&$0.((,#A@(````D````=`4`````````````D@8````` -M``!$#C!8C@*-`XP$A@6#!@``)````)P%`````````````#,"````````1`X@ -M3HP"A@.#!````````"0```#$!0````````````"E"0```````$0.0%Z/`HX# -MC02,!88&@P<D````[`4`````````````J`,```````!$#C!4C0*,`X8$@P4` -M````)````!0&`````````````"<#````````1`XP6(X"C0.,!(8%@P8``#P` -M```\!@````````````"<`@```````$(.$$(.&$(.($(.*$$.,$$..$0.8(,' -MA@:,!8T$C@./`@`````````\````?`8`````````````[P(```````!"#A!" -M#AA"#B!"#BA!#C!!#CA'#H`%@P>&!HP%C02.`X\"````````/````+P&```` -M`````````+\"````````0@X00@X80@X@0@XH00XP00XX1P[@!(,'A@:,!8T$ -MC@./`@```````#P```#\!@````````````#J`P```````$(.$$(.&$(.($(. -M*$$.,$$..$<.@`6#!X8&C`6-!(X#CP(````````\````/`<````````````` -M[`,```````!"#A!"#AA"#B!"#BA!#C!!#CA'#O`$@P>&!HP%C02.`X\"```` -M````/````'P'`````````````!@!````````0@X00@X80@X@0@XH00XP00XX -M1`Y0@P>&!HP%C02.`X\"`````````"P```"\!P`````````````!`@`````` -M`$(.$$(.&$$.($$.*$0.,(,%A@2,`XT"`"0```#L!P````````````#4`0`` -M`````$0.,%B.`HT#C`2&!8,&```\````%`@`````````````J`````````!" -M#A!"#AA"#B!"#BA!#C!!#CA$#D"#!X8&C`6-!(X#CP(`````````)````%0( -M`````````````-,+````````1`Y`7H\"C@.-!(P%A@:#!R0```!\"``````` -M```````3"0```````$0.0%Z/`HX#C02,!88&@P<4``````````$``7@0#`<( -MD`$````````4````'```````````````,``````````4````-``````````` -M````)0`````````D````3```````````````=@````````!!#A!!#AB#`X8" -M````````'````'0``````````````$L`````````1`X828P"@P,<````E``` -M````````````&@````````!!#A"#`@```!0```"T``````````````!"```` -M`````"0```#,``````````````"5`````````$$.$$$.&(,#A@(````````D -M````]```````````````A0$```````!"#A!!#AA!#B"#!(8#C`(`'````!P! -M`````````````#<`````````1`X0```````<````/`$`````````````)P`` -M``````!$#A```````!P```!<`0`````````````_`````````$0.$``````` -M)````'P!`````````````-4`````````1`XP6(X"C0.,!(8%@P8``"0```"D -M`0````````````!/`````````$(.$$$.&$$.((,$A@.,`@`D````S`$````` -M````````?@````````!$#C!4C0*,`X8$@P4`````)````/0!```````````` -M`,D`````````1`XP5(T"C`.&!(,%`````#P````<`@`````````````0`@`` +M````````````5@`````````4````-```````````````2@`````````4```` +M``````$``7@0#`<(D`$````````4````'```````````````'`$````````D +M````-```````````````'0$```````!!#A!!#AB#`X8"````````%````%P` +M`````````````(<`````````%````'0``````````````"4`````````%``` +M`(P```````````````(`````````%````*0``````````````$L````````` +M%````+P``````````````"H`````````%````-0``````````````#0````` +M````%````.P``````````````"H`````````%`````0!`````````````#$` +M````````%````!P!`````````````"H`````````%````#0!```````````` +M`"H`````````%````$P!`````````````"``````````%````&0!```````` +M`````"H`````````%````'P!`````````````"H`````````%````)0!```` +M`````````&$`````````%````*P!`````````````/8`````````%````,0! +M`````````````-$`````````%````-P!`````````````$D`````````+``` +M`/0!`````````````/H`````````0@X00@X800X@00XH@P6&!(P#C0(````` +M'````"0"`````````````"X`````````1`X0```````<````1`(````````` +M````)@````````!$#A```````!P```!D`@````````````!&`````````$0. +M$```````'````(0"`````````````"8`````````1`X0```````<````I`(` +M````````````*@````````!$#A```````#P```#$`@````````````"(`0`` M`````$(.$$(.&$(.($(.*$$.,$$..$0.0(,'A@:,!8T$C@./`@`````````< -M````7`(`````````````4@````````!$#B!*C`*#`QP```!\`@`````````` -M``!2`````````$0.($J,`H,#-````)P"`````````````*H`````````0@X0 -M0@X80@X@00XH00XP@P:&!8P$C0..`@`````````<````U`(````````````` -M4@````````!$#B!*C`*#`QP```#T`@`````````````W`````````$0.$``` -M````'````!0#`````````````#\`````````1`X0```````\````-`,````` -M````````904```````!"#A!"#AA"#B!"#BA!#C!!#CA$#I`!@P>&!HP%C02. -M`X\"````````'````'0#`````````````%,`````````1`X0```````<```` -ME`,`````````````2P````````!$#A```````!P```"T`P````````````!2 -M`````````$0.($J,`H,#%``````````!``%X$`P'")`!````````%````!P` -M`````````````!@`````````%````#0``````````````!(`````````'``` -M`$P``````````````.@`````````00X0@P(````4````;``````````````` -M(``````````4````A```````````````(@`````````<````G``````````` -M````@@````````!!#A"#`@```#P```"\```````````````O`0```````$(. -M$$(.&$(.($(.*$$.,$$..$0.0(,'A@:,!8T$C@./`@`````````D````_``` -M````````````XP````````!$#D!>CP*.`XT$C`6&!H,'-````"0!```````` -M`````"(!````````0@X00@X80@X@00XH00XP@P:&!8P$C0..`@`````````D -M````7`$`````````````JP````````!$#C!4C0*,`X8$@P4`````%``````` -M```!``%X$`P'")`!````````%````!P``````````````!\!````````%``` -M`#0```````````````4`````````%````$P```````````````8````````` -M%````&0``````````````!P`````````%````'P``````````````!T````` -M````%````)0``````````````"L`````````%````*P``````````````"<` -M````````)````,0``````````````#,!````````1`XP6(X"C0.,!(8%@P8` -M`!0```#L``````````````!``````````"0````$`0````````````":```` -M`````$0.*%.-`HP#A@2#!0`````4````+`$`````````````7``````````4 -M````1`$`````````````%P`````````<````7`$`````````````\0,````` -M``!$#A```````!P```!\`0````````````!5`0```````$$.$$0.,(,"'``` -M`)P!`````````````*<!````````00X0@P(````4``````````$``7@0#`<( -MD`$````````4````'```````````````1``````````4````-``````````` -M````%``````````D````3```````````````90````````!"#A!!#AA!#B"# -M!(8#C`(`)````'0```````````````D#````````00X000X81`XP@P.&`@`` -M`"0```"<``````````````"F`````````$0.,$^,`H8#@P0````````D```` -MQ```````````````=P````````!!#A!!#AA$#C"#`X8"````/````.P````` -M`````````,0`````````0@X00@X80@X@0@XH00XP00XX1`Y0@P>&!HP%C02. -M`X\"`````````!P````L`0````````````!]`````````$$.$$0.((,"'``` -M`$P!`````````````+0`````````1`XP2H8"@P,D````;`$````````````` -M>0,```````!$#F!>CP*.`XT$C`6&!H,'%``````````!``%X$`P'")`!```` -M````%````!P```````````````8`````````%````#0``````````````$8` -M````````%````$P```````````````8`````````%````&0````````````` -M``8`````````%````'P```````````````8`````````%````)0````````` -M`````'0`````````%````*P``````````````)D`````````%````,0````` -M``````````(`````````%````-P```````````````@`````````%````/0` -M`````````````%``````````%`````P!``````````````8`````````%``` -M`"0!`````````````/0`````````%````#P!`````````````#(````````` -M'````%0!`````````````#P`````````1`X828P"@P,4````=`$````````` -M````$P`````````4````C`$`````````````7``````````4````I`$````` -M````````7``````````<````O`$`````````````&@````````!$#A`````` -M`"0```#<`0````````````#4`````````$$.$$$.&$0.4(,#A@(````\```` -M!`(`````````````.08```````!"#A!"#AA"#B!"#BA!#C!!#CA$#J`!@P>& -M!HP%C02.`X\"````````'````$0"`````````````'``````````1`X@2HP" -M@P,<````9`(`````````````1@````````!$#B!*C`*#`QP```"$`@`````` -M```````>`````````$$.$(,"````'````*0"`````````````!X````````` -M00X0@P(````<````Q`(`````````````$0````````!$#A```````"0```#D -M`@````````````"!`0```````$0.0%Z/`HX#C02,!88&@P<D````#`,````` -M````````6@$```````!$#C!8C@*-`XP$A@6#!@``)````#0#```````````` -M`-P$````````1`Y07H\"C@.-!(P%A@:#!R0```!<`P`````````````U!``` -M`````$0.<%Z/`HX#C02,!88&@P<D````A`,`````````````R`````````!$ -M#B!.C`*&`X,$````````)````*P#`````````````),!````````1`XP6(X" -MC0.,!(8%@P8``!P```#4`P````````````#2`````````$$.$(,"````)``` -M`/0#`````````````(0`````````00X000X81`X@@P.&`@```"0````<!``` -M``````````#L`````````$$.$$$.&$0.((,#A@(````<````1`0````````` -M````'P````````!!#A"#`@```#P```!D!`````````````#Q`@```````$(. -M$$(.&$(.($(.*$$.,$$..$0.4(,'A@:,!8T$C@./`@`````````D````I`0` -M````````````HP````````!$#B!.C`*&`X,$````````)````,P$```````` -M`````'D!````````1`XP5(T"C`.&!(,%`````"0```#T!``````````````Q -M`0```````$0.8$^,`H8#@P0````````\````'`4`````````````V@4````` -M``!"#A!"#AA"#B!"#BA!#C!!#CA$#D"#!X8&C`6-!(X#CP(`````````'``` -M`%P%`````````````'8`````````1`X@2H8"@P,L````?`4````````````` -M-0D```````!"#A!!#AA!#B!$#E"#!(8#C`(````````\````K`4````````` -M````:00```````!"#A!"#AA"#B!"#BA!#C!!#CA$#G"#!X8&C`6-!(X#CP(` -M````````)````.P%`````````````#`"````````0@X000X800X@@P2&`XP" -M`#0````4!@`````````````)!````````$(.$$(.&$(.($$.*$$.,(,&A@6, -M!(T#C@(`````````+````$P&`````````````"`$````````0@X00@X800X@ -M00XH@P6&!(P#C0(`````)````'P&`````````````/4#````````0@X000X8 -M00X@@P2&`XP"`"0```"D!@````````````!@`@```````$(.$$$.&$$.((,$ -MA@.,`@`D````S`8`````````````T@8```````!$#C!8C@*-`XP$A@6#!@`` -M)````/0&`````````````(X"````````00X000X81`X@@P.&`@```#P````< -M!P`````````````N`P```````$(.$$(.&$(.($(.*$$.,$$..$0.0(,'A@:, -M!8T$C@./`@`````````4``````````$``7@0#`<(D`$````````4````'``` -M````````````$P`````````4````-```````````````#``````````4```` -M3```````````````*0`````````4````9```````````````#``````````D -M````?```````````````=P````````!!#A"#`DH.D`(`````````)````*0` -M`````````````,@`````````0@X000X8A@.,`D0.((,$`!0```#,```````` -M```````L`````````"0```#D``````````````!+`````````$(.$$$.&(8# -MC`)##B"#!``<````#`$`````````````>P````````!!#A"#`D<.0!0````L -M`0`````````````K`````````!0```!$`0`````````````]`````````!P` -M``!<`0`````````````H`````````$$.$(,"````%````'P!```````````` -M``L`````````%````)0!`````````````!``````````%````*P!```````` -M`````"4`````````%````,0!`````````````#X`````````%````-P!```` -M`````````%\`````````)````/0!`````````````(,`````````0@X0C`)$ -M#AB&`T8.((,$`"0````<`@````````````!5`````````$(.$(P"1@X800X@ -M@P2&`P`T````1`(`````````````V0````````!"#A!"#AA"#B!!#BB&!8P$ -MC0..`D0.,(,&`````````"0```!\`@````````````##`````````$$.$(8" -M1`X8@P-'#B`````D````I`(`````````````=P````````!!#A"&`D0.&$0. -M((,#````)````,P"`````````````%<`````````00X0A@)$#AA$#B"#`P`` -M`"0```#T`@````````````#9`````````$(.$(P"1`X800X@@P2&`P`L```` -M'`,`````````````^0````````!"#A"-`D4.&$$.((8$C`-$#BA$#C"#!0`< -M````3`,`````````````50````````!!#A"#`@```"0```!L`P`````````` -M``!7`````````$0.($F&`X,$1XP"```````4````E`,`````````````$``` -M```````4````K`,`````````````$0`````````4````Q`,````````````` -M%0`````````T````W`,`````````````;P(```````!"#A!"#AB-`XX"10X@ -MC`1%#BA!#C"#!H8%`````````#P````4!`````````````!6`0```````$(. -M$$(.&$(.($(.*$$.,$$..(,'A@:,!8T$C@./`DH.P`$````````L````5`0` -M````````````\P````````!"#A"-`D4.&(P#1`X@A@1$#BA$#C"#!0`D```` -MA`0`````````````E@````````!$#B!*C`*&`T>#!```````+````*P$```` -M`````````)@`````````0@X00@X800X@A@2,`XT"1`XH1`XP@P4`/````-P$ -M`````````````%H!````````0@X0CP)%#AB.`T4.((T$10XH00XPA@:,!40. -M.$0.0(,'`````````#0````<!0````````````#'`0```````$(.$$(.&(T# -MC@)%#B",!$0.*$$.,$0.L`&#!H8%````)````%0%`````````````+,````` -M````0@X0C`)$#AB&`T@.((,$`"0```!\!0````````````"``0```````$0. -M,%&,!(8%4XX"C0.#!@`D````I`4`````````````^@````````!"#A!(#AB& -M`XP"1PX@@P0`%``````````!``%X$`P'")`!````````%````!P````````` -M`````#X`````````%````#0``````````````!(`````````%````$P````` -M`````````"L`````````%````&0``````````````#@`````````%````'P` -M`````````````#P`````````%````)0``````````````"P`````````%``` -M`*P``````````````&4`````````%````,0``````````````+(````````` -M%````-P```````````````P`````````)````/0``````````````$@````` -M````00X0A@)$#AA$#B"#`P```!P````<`0````````````!W`````````$$. -M$(,"````'````#P!`````````````+L`````````00X0@P(````<````7`$` -M````````````6P````````!$#B!*A@*#`R0```!\`0````````````"N```` -M`````$(.$(P"1`X800X@@P2&`P`4````I`$`````````````!0`````````< -M````O`$`````````````3@````````!$#B!*A@*#`R0```#<`0`````````` -M``!J`````````$$.$$$.&$0.((,#A@(````<````!`(`````````````>``` -M``````!$#B!*A@*#`Q0````D`@`````````````W`````````!P````\`@`` -M``````````!+`````````$$.$(,"````)````%P"`````````````&`````` -M````00X0A@)$#AB#`TX.(````"P```"$`@`````````````Z`P```````$0. -M0$J&!H,'3(\"C@--C02,!0```````"0```"T`@````````````!D```````` -M`$(.$$@.&(8#C`)$#B"#!``D````W`(`````````````X0````````!!#A!! -M#AB#`X8"1PX@````'`````0#`````````````$``````````1`X@2HP"@P,D -M````)`,`````````````^0$```````!$#F!-C`2&!56.`H,&C0,`'````$P# -M`````````````$@`````````1`X@38P"@P,D````;`,`````````````CP$` -M``````!'#J`$5X8"@P,`````````)````)0#`````````````%H"```````` -M00X010X8@P.&`DH.H`0``!P```"\`P````````````!6`````````$$.$(," -M````+````-P#`````````````,<+````````1P[0!E>-!(8&9X\"C@.,!8,' -M````````/`````P$`````````````.\!````````0@X0CP)*#AA"#B"-!(X# -M10XH00XP00XX1`ZP`8,'A@:,!0```````!P```!,!`````````````!*```` -M`````$$.$(,"````)````&P$`````````````/(`````````1`X@3(P"A@-' -M@P0``````"P```"4!`````````````!E`0```````$(.$$(.&(P#C0)$#B!! -M#BA$#C"#!88$`"P```#$!`````````````"%`0```````$(.$(T"1PX8C`-$ -M#B!!#BA$#C"#!88$`!P```#T!`````````````"/`````````$$.$(,"```` -M)````!0%`````````````&8`````````00X0A@)$#AA$#B"#`P```#0````\ -M!0````````````!%`@```````$(.$$@.&$(.($$.*$$.,(,&A@6,!(T#C@(` -M````````)````'0%`````````````)8`````````0@X0C`)+#AA!#B"#!(8# -M`"0```"<!0`````````````^`0```````$0.($F#!(8#2(P"```````D```` -MQ`4`````````````]`````````!$#B!)A@.#!$B,`@``````)````.P%```` -M`````````(,!````````1`XP2HP$A@51@P:.`HT#`!0``````````0`!>!`, -M!PB0`0```````!0````<``````````````!5`````````!0````T```````` -M```````>`````````!0```!,``````````````!"`````````#P```!D```` -M``````````"T`````````$(.$(\"10X8C@-%#B!"#BA!#C!!#CA'#M`!@P>& -M!HP%C00````````\````I```````````````"`$```````!"#A!"#AB.`X\" -M10X@0@XHC`6-!$0.,(8&1`XX1P[@`8,'````````+````.0````````````` -M`%P`````````0@X00@X800X@A@2,`XT"0PXH1PZP`8,%/````!0!```````` -M`````%<!````````0@X00@X80@X@0@XH00XPA@:,!8T$C@./`D0..$<.D`*# -M!P```````!0```!4`0````````````!3`````````!0```!L`0`````````` -M``":`````````!0```"$`0````````````#:`````````!0```"<`0`````` -M```````#`0```````!0```"T`0````````````!)`````````!0```#,`0`` -M``````````!Y`````````#P```#D`0````````````"/!````````$(.$(\" -M10X8C@-%#B"-!$4.*$$.,$$..$0.0(,'A@:,!0`````````4````)`(````` -M`````````@`````````4````/`(`````````````A0`````````<````5`(` -M````````````<@````````!$#D```````"0```!T`@`````````````Z```` -M`````$$.$$$.&$0.,(,#A@(````4````G`(`````````````V``````````D -M````M`(`````````````@0````````!"#A",`D0.&(8#1`X@@P0`+````-P" -M`````````````&L`````````0@X0C0)%#AB,`T0.($$.*(,%A@0`````%``` -M``P#`````````````',`````````%````"0#`````````````!8````````` -M%````#P#`````````````!L`````````%````%0#`````````````!H````` -M````%````&P#`````````````!8`````````%````(0#`````````````!4` -M````````%````)P#`````````````!4`````````%````+0#```````````` -M`!4`````````%````,P#`````````````!4`````````%````.0#```````` -M`````!4`````````%````/P#`````````````!4`````````%````!0$```` -M`````````!@`````````%````"P$`````````````!@`````````%````$0$ -M`````````````!@`````````%````%P$`````````````!@`````````%``` -M`'0$`````````````!4`````````%````(P$`````````````"@````````` -M%````*0$`````````````"@`````````'````+P$`````````````#$````` -M````00X0@P(````<````W`0`````````````,0````````!!#A"#`@```!P` -M``#\!``````````````Q`````````$$.$(,"````'````!P%```````````` -M`&0`````````00X0@P(````<````/`4`````````````8@````````!$#AA) -M@P.&`B0```!<!0````````````"%`````````$0.($F#!(8#2(P"```````D -M````A`4`````````````S0````````!$#C!)@P:&!5*.`HT#C`0`)````*P% -M`````````````*(`````````1`XH288$@P5-C0*,`P```!0```#4!0`````` -M```````5`````````!0```#L!0`````````````[`````````"0````$!@`` -M``````````"B`````````$0.*$F&!(,%38T"C`,````D````+`8````````` -M````M0````````!$#BA)A@2#!4V-`HP#````)````%0&`````````````,<` -M````````1`XH288$@P5-C0*,`P```"0```!\!@````````````#;```````` -M`$0.*$F&!(,%38T"C`,````4````I`8`````````````&``````````<```` -MO`8`````````````90````````!$#AA)A@*#`QP```#<!@````````````!E -M`````````$0.&$F&`H,#'````/P&`````````````&4`````````1`X8288" -M@P,<````'`<`````````````70````````!$#AA)A@*#`QP````\!P`````` -M``````!=`````````$0.&$F&`H,#'````%P'`````````````%T````````` -M1`X8288"@P,<````?`<`````````````A@````````!$#AA)A@*#`QP```"< -M!P````````````!E`````````$0.&$F&`H,#'````+P'`````````````&4` -M````````1`X8288"@P,D````W`<`````````````N@````````!$#B!)A@.# -M!$B,`@``````'`````0(`````````````&4`````````1`X8288"@P,<```` -M)`@`````````````:@````````!$#AA)A@*#`QP```!$"`````````````!G -M`````````$0.&$F&`H,#'````&0(`````````````&D`````````1`X8288" -M@P,4````A`@`````````````'``````````4````G`@`````````````&``` -M```````4````M`@`````````````%@`````````<````S`@````````````` -ML@````````!$#AA)A@*#`QP```#L"`````````````"R`````````$0.&$F& -M`H,#'`````P)`````````````%T`````````1`X8288"@P,D````+`D````` -M````````L`````````!$#C!)@P:&!5*.`HT#C`0`)````%0)```````````` -M`+``````````1`XP28,&A@52C@*-`XP$`!P```!\"0````````````!6```` -M`````$0.&$F&`H,#%````)P)`````````````"@`````````'````+0)```` -M`````````%D`````````00X0@P(````<````U`D`````````````I@`````` -M``!$#AA.A@*#`Q0```#T"0`````````````^`````````!P````,"@`````` -M``````"S`````````$0.&$F&`H,#'````"P*`````````````)(````````` -M1`X8288"@P,D````3`H`````````````#@$```````!"#A",`DH.&(8#1PX@ -M@P0`%````'0*`````````````&X`````````'````(P*`````````````%H` -M````````00X0@P(````4````K`H`````````````!P`````````<````Q`H` -M````````````\P````````!$#D```````!0```#D"@`````````````(```` -M`````!0```#\"@````````````!!`````````!P````4"P````````````!P -M`````````$0.($J,`H,#)````#0+`````````````,H`````````1`XP28P$ -M@P9-C@*-`TB&!20```!<"P````````````"K`````````$0.($F&`X,$2(P" -M```````L````A`L`````````````&0$```````!$#D!%CP),C`5:@P>.`XT$ -MA@8````````L````M`L`````````````"`$```````!$#D!%CP),C`5:@P>. -M`XT$A@8````````<````Y`L`````````````)P````````!%#A"#`@```!0` -M```$#`````````````!]`````````!0````<#``````````````Q```````` -M`!0````T#``````````````Q`````````!0```!,#``````````````Q```` -M`````!0```!D#``````````````Q`````````!0```!\#``````````````Q -M`````````!0```"4#``````````````Q`````````!0```"L#``````````` -M```Q`````````!0```#$#``````````````Q`````````!0```#<#``````` -M```````Q`````````!0```#T#``````````````Q`````````!0````,#0`` -M```````````Q`````````!0````D#0`````````````Q`````````!0````\ -M#0`````````````Q`````````!0```!4#0`````````````Q`````````!0` -M``!L#0`````````````Q`````````!0```"$#0`````````````Q```````` -M`!0```"<#0`````````````Q`````````!0```"T#0`````````````Q```` -M`````!0```#,#0`````````````Q`````````!0```#D#0`````````````Q -M`````````!0```#\#0`````````````D`````````!0````4#@`````````` -M```H`````````!P````L#@````````````"H`````````$$.$(,"````%``` -M`$P.`````````````#@`````````)````&0.`````````````,L````````` -M1`X@3HP"A@.#!````````!P```",#@````````````!%`````````$0.($J# -M`XP"+````*P.``````````````0!````````0@X0C`)$#AA!#B!'#N`!@P2& -M`P``````'````-P.`````````````$T`````````1`X@2H8"@P,L````_`X` -M````````````G`$```````!$#D!*A@:#!U>/`HX#C02,!0`````````\```` -M+`\`````````````A@$```````!"#A!"#AB.`X\"10X@0@XH00XP00XX1`Y` -M@P>&!HP%C00`````````-````&P/`````````````-D`````````0@X00@X8 -M0@X@C`2-`XX"1`XH00XP@P:&!0`````````<````I`\`````````````C``` -M``````!!#A"#`@```"P```#$#P`````````````:`@```````$<.T`%0@P>& -M!F./`HX#C02,!0```````!0```#T#P`````````````O`````````#P````, -M$`````````````#0`````````$(.$$4.&$(.((T$C@./`D4.*$$.,$$..$<. -MX`&#!X8&C`4````````4````3!``````````````J0`````````D````9!`` -M````````````P`````````!$#C!,A@2#!4V-`HP#````)````(P0```````` -M`````'D`````````00X00PX8@P.&`DH.H`$``"0```"T$`````````````"X -M`````````$0.,$J,`X8$38T"@P4````D````W!``````````````K``````` -M``!$#C!*C@.,!5&/`HT$@P8`'`````01`````````````)8`````````00X0 -M@P(````D````)!$`````````````Y@````````!!#A!!#AB#`X8"```````` -M/````$P1`````````````-@`````````0@X01`X80@X@0@XHC`6-!(X#CP)$ -M#C!!#CA'#L`!@P>&!@```````#P```",$0````````````#S`````````$(. -M$$0.&$(.($(.*(P%C02.`X\"1`XP00XX1P[``8,'A@8````````\````S!$` -M````````````[@````````!"#A!$#AA"#B!"#BB,!8T$C@./`D0.,$$..$<. -MP`&#!X8&````````/`````P2`````````````.X`````````0@X01`X80@X@ -M0@XHC`6-!(X#CP)$#C!!#CA'#L`!@P>&!@```````#P```!,$@`````````` -M``#N`````````$(.$$0.&$(.($(.*(P%C02.`X\"1`XP00XX1P[``8,'A@8` -M```````L````C!(`````````````G@````````!"#A!$#AA!#B"&!(P#C0)$ -M#BA'#K`!@P4<````O!(`````````````0P````````!!#A"#`@```"0```#< -M$@````````````"M`````````$$.$(8"1@X81PZ@`8,#```<````!!,````` -M````````30````````!$#B!*C`*#`R0````D$P`````````````3`0`````` -M`$$.$$@.&(,#A@)'#B`````4````3!,`````````````*P`````````T```` -M9!,`````````````Q`````````!"#A!"#AA"#B!!#BB&!8P$C0..`D0.,$0. -M<(,&`````"0```"<$P````````````"?`0```````$0.,$F,!(,&4HX"C0.& -M!0`4````Q!,`````````````#P`````````<````W!,`````````````&``` -M``````!$#A```````!P```#\$P`````````````8`````````$0.$``````` -M'````!P4`````````````",`````````1`X0```````L````/!0````````` -M````<P````````!"#A"-`D4.&$$.($$.*$0.,(,%A@2,`P`<````;!0````` -M````````&P````````!$#A```````!P```",%`````````````")```````` -M`$0.($J#`X8"'````*P4`````````````$<`````````1`X@2H,#C`(<```` -MS!0`````````````&P````````!$#A```````!P```#L%``````````````; -M`````````$0.$```````'`````P5`````````````%(`````````00X0@P(` -M```D````+!4`````````````.P````````!!#A!!#AA$#B"#`X8"````)``` -M`%05`````````````#L`````````00X000X81`X@@P.&`@```"0```!\%0`` -M```````````W`````````$$.$$$.&$0.((,#A@(````D````I!4````````` -M````-P````````!!#A!!#AA$#B"#`X8"````)````,P5`````````````#<` -M````````00X000X81`X@@P.&`@```"0```#T%0`````````````U```````` -M`$$.$$$.&$0.((,#A@(````D````'!8`````````````9`````````!!#A"& -M`DL.&$0.((,#````/````$06`````````````#8!````````0@X00@X80@X@ -M0@XH00XPA@:,!8T$C@./`D0..$<.T`&#!P```````"0```"$%@`````````` -M```H`P```````$0.,$J&!(,%38P#C0(````<````K!8`````````````&P`` -M``````!!#A"#`@```!P```#,%@`````````````;`````````$$.$(,"```` -M)````.P6`````````````$T!````````1`XP5(P#C0*&!(,%`````"0````4 -M%P````````````!D`````````$$.$$$.&(,#A@)'#G`````D````/!<````` -M````````R@$```````!"#A",`DL.&$$.((,$A@,`/````&07```````````` -M`/`"````````0@X0CP)%#AA"#B!"#BA!#C"&!HP%C02.`T0..$<.X`2#!P`` -M`````"P```"D%P````````````"*`0```````$(.$$0.&(P#C0)$#B!!#BA' -M#K`!@P6&!"P```#4%P````````````!.`0```````$(.$(T"1PX800X@00XH -M1PZP`8,%A@2,`R0````$&`````````````"&`````````$0.($F#!(P#2(T" -M```````<````+!@`````````````.0````````!!#A"#`@```!P```!,&``` -M```````````V`````````$$.$(,"````'````&P8`````````````-T"```` -M````00X0@P(````4````C!@`````````````D`$````````4````I!@````` -M````````*0`````````<````O!@`````````````'@$```````!$#B!*@P.& -M`BP```#<&`````````````","````````$(.$$(.&(P#C0)$#B!!#BA$#C"# -M!88$`"0````,&0````````````#/`@```````$$.$(8"1`X81`X@@P,````T -M````-!D`````````````U@````````!"#A!"#AA"#B",!(T#C@)$#BA!#C"# -M!H8%`````````"0```!L&0````````````!?`P```````$0.<$J&!(,%38T" -MC`,````D````E!D`````````````X`````````!$#D!*A@2#!4V-`HP#```` -M'````+P9`````````````&T`````````00X0@P(````\````W!D````````` -M````KP$```````!"#A!"#AB.`X\"10X@0@XHC`6-!$0.,$$..$<.T`2#!X8& -M````````)````!P:`````````````(4!````````1`XP2H8$@P5-C0*,`P`` -M`#P```!$&@````````````!(#P```````$(.$$(.&$(.($(.*$$.,(8&C`6- -M!(X#CP)$#CA'#L`!@P<````````D````A!H`````````````;`````````!! -M#A!!#AB#`X8"1PX@````)````*P:``````````````T!````````00X0A@)$ -M#AA'#L`!@P,``"0```#4&@````````````!-`````````$$.$(8"1@X81`X@ -M@P,````L````_!H`````````````N`````````!"#A!"#AA!#B!!#BA$#C"# -M!88$C`.-`@`L````+!L`````````````/@(```````!"#A!'#AB,`XT"1`X@ -MA@1$#BA'#O`!@P4L````7!L`````````````$`,```````!$#D!*C02,!5>/ -M`HX#A@:#!P`````````D````C!L`````````````!P(```````!'#O`!58P# -M@P53C0*&!```+````+0;`````````````)8`````````0@X0C0)%#AA!#B!! -M#BA$#C"#!88$C`,`'````.0;`````````````%0`````````1`X@38P"@P,< -M````!!P`````````````8`````````!!#A"#`@```!P````D'``````````` -M```0`@```````$$.$(,"````+````$0<`````````````/@&````````1`Y@ -M2(P%7X\"C02.`X8&@P<`````````+````'0<``````````````\$```````` -M1`Y@388&@P=:C@.-!(P%CP(`````````)````*0<`````````````$\````` -M````1`X@28P#@P1(C0(``````"0```#,'`````````````!W`````````$0. -M($F&`X,$2(P"```````D````]!P`````````````=P````````!$#B!)A@.# -M!$B,`@``````)````!P=`````````````$\`````````1`X@28P#@P1(C0(` -M`````"0```!$'0````````````!Y`````````$0.($F&`X,$2(P"```````D -M````;!T`````````````>0````````!$#B!)A@.#!$B,`@``````+````)0= -M`````````````(8`````````0@X0C0)%#AA!#B"&!(P#1`XH1`XP@P4`)``` -M`,0=`````````````%D`````````00X000X8@P.&`D<.(````"0```#L'0`` -M``````````#E`````````$$.$$$.&(,#A@)'#B`````D````%!X````````` -M````\P````````!!#A"&`D0.&$0.((,#````'````#P>`````````````)(` -M````````1`X@2H8"@P,D````7!X`````````````R0````````!$#B!)C`*# -M!$B&`P``````'````(0>`````````````"T`````````1`X0```````T```` -MI!X`````````````V0````````!"#A!"#AA"#B!!#BA!#C"#!H8%C`2-`XX" -M`````````#P```#<'@````````````!)`0```````$(.$$0.&$(.($(.*(P% -MC02.`X\"1`XP00XX1`Y`@P>&!@`````````D````'!\`````````````L@$` -M``````!$#E!*A@.#!$B,`@``````-````$0?`````````````!H!```````` -M0@X01`X80@X@00XH00XP@P:&!8P$C0..`@`````````<````?!\````````` -M````.@````````!!#A"#`@```#0```"<'P`````````````S`0```````$(. -M$$(.&(T#C@)%#B!!#BA!#C!$#K`!@P:&!8P$````%````-0?```````````` -M``4`````````)````.P?`````````````"4!````````1`XP2HT"C`--A@2# -M!0```"0````4(`````````````!W`````````$0.($F-`H,$2(P#```````D -M````/"``````````````A@````````!"#A!(#AB&`XP"1`X@@P0`+````&0@ -M`````````````(L`````````0@X00@X800X@A@2,`XT"1`XH1P[P`8,%)``` -M`)0@`````````````(D`````````00X0A@)&#AA$#B"#`P```#P```"\(``` -M``````````#P`@```````$(.$$(.&$(.((T$C@./`D4.*$$.,$$..$0.0(,' -MA@:,!0`````````T````_"``````````````T@$```````!"#A!"#AB-`XX" -M10X@00XH00XP@P:&!8P$`````````#0````T(0````````````#,`0`````` -M`$(.$$(.&(T#C@)%#B!!#BA!#C"#!H8%C`0`````````+````&PA```````` -M`````&X#````````0@X0C0)%#AA!#B!!#BA$#G"#!88$C`,`)````)PA```` -M`````````/<`````````0@X000X8A@.,`D0.((,$`"P```#$(0`````````` -M``"F`````````$(.$$(.&$$.($$.*(,%A@2,`XT"2@[P`20```#T(0`````` -M``````!A`@```````$(.$$$.&(8#C`)$#B"#!``D````'"(````````````` -M&P0```````!$#C!%A@12C0*,`X,%````%````$0B`````````````#L````` -M````'````%PB`````````````$(`````````00X0@P(````D````?"(````` -M````````7`$```````!$#D!>CP*.`XT$C`6&!H,')````*0B```````````` -M``0!````````1`XP2H,%C`1-C@*-`P```!0``````````0`!>!`,!PB0`0`` -M`````!0````<``````````````#6`````````!P````T``````````````!T -M`````````$0.&$F&`H,#%````%0``````````````&L`````````%````&P` -M`````````````!L`````````%````(0```````````````D`````````'``` -M`)P``````````````$P`````````00X0@P(````D````O``````````````` -M<0````````!$#B!%@P-(A@(`````````+````.0``````````````!<!```` -M````0@X00@X800X@00XH@P6&!(P#C0))#C``+````!0!``````````````8$ -M````````0@X00@X800X@00XH@P6&!(P#C0)'#C``'````$0!```````````` -M`%(`````````00X0@P(````D````9`$`````````````WP````````!!#A!$ -M#AA$#B"#`X8"````/````(P!`````````````&X#````````0@X0CP)*#AA" -M#B"-!(X#10XH00XP00XX1`Y0@P>&!HP%`````````!P```#,`0`````````` -M```V`````````$$.$(,"````%``````````!``%X$`P'")`!````````%``` -M`!P``````````````!8`````````+````#0``````````````/(````````` -M0@X0C0))#AA!#B!!#BB#!88$C`,`````%````&0``````````````#T````` -M````%````'P``````````````&8`````````+````)0``````````````.D` -M````````0@X0C`)$#AB&`T0.((,$1PXP````````'````,0````````````` -M`%\`````````00X0@P)'#B`D````Y```````````````U0````````!"#A", -M`D0.&$$.((,$A@,`'`````P!`````````````)$`````````00X0@P(````\ -M````+`$`````````````$0(```````!"#A"/`D4.&$(.($(.*$$.,(8&C`6- -M!(X#1`XX1`Y0@P<`````````-````&P!`````````````-@#````````0@X0 -M0@X80@X@00XHA@6,!(T#C@)$#C!'#K`$@P8````D````I`$````````````` -M8P````````!!#A"&`D4.&$0.((,#````)````,P!`````````````(,````` -M````0@X000X800X@@P2&`XP"`"P```#T`0````````````!(`@```````$(. -M$$(.&$$.((8$C`.-`D0.*$0.,(,%`!P````D`@````````````"<```````` -M`$0.($J&`H,#)````$0"`````````````&@!````````0@X0C`)(#AB&`T4. -M((,$`"P```!L`@````````````"X!P```````$<.P`1NA@:.`XP%@P=3CP*- -M!````````"0```"<`@````````````"'`@```````$$.$(8"1`X81`X@@P,` -M```4``````````$``7@0#`<(D`$````````4````'```````````````5``` -M```````4````-````````````````@`````````4````3``````````````` -M$P`````````4````9````````````````P`````````D````?``````````` -M````X@````````!"#A",`D0.&$$.((,$A@,`)````*0``````````````#H` -M````````00X0A@)$#AA$#B"#`P```!P```#,``````````````!)```````` -M`$$.$(,"````'````.P``````````````%4`````````1`X0```````4```` -M#`$`````````````#``````````4````)`$`````````````#``````````4 -M``````````$``7@0#`<(D`$````````4````'```````````````3P`````` -M```4````-```````````````3P`````````````````````````````````` -M````````1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E(%M& -M<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E -M(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE -M87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R -M96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P -M<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S -M,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W -M,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R -M,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N -M,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T -M+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5 -M*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H -M1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-# -M.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70`` -M1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$ -M70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E -M0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E(%M& -M<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E -M(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE -M87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R -M96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P -M<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S -M,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W -M,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R -M,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N -M,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T -M+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5 -M*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H -M1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-# -M.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70`` -M1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$ -M70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E -M0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E(%M& -M<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E -M(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE -M87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R -M96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P -M<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S -M,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W -M,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R -M,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N -M,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``+G-Y;71A8@`N<W1R -M=&%B`"YS:'-T<G1A8@`N<F5L82YT97AT`"YR96QA+G)O9&%T80`N<F]D871A -M+G-T<C$N.``N<F]D871A+G-T<C$N,0`N<F5L82YD871A`"YR96QA+F5H7V9R -M86UE`"YB<W,`+F-O;6UE;G0````````````````````````````````````` -M```````````````````````````````````````````````````````````@ -M`````0````8```````````````````!``````````(\-!0`````````````` -M```0````````````````````&P````0`````````````````````````4'H& -M``````"HRP$```````X````!````"``````````8`````````"L````!```` -M`@```````````````````.`-!0``````<"@``````````````````"`````` -M```````````````F````!`````````````````````````#X10@```````!= -M````````#@````,````(`````````!@`````````,P````$````R```````` -M````````````4#8%``````!4!@``````````````````"``````````!```` -M`````$(````!````,@```````````````````*0\!0``````9`,````````` -M``````````$``````````0````````!6`````0````,````````````````` -M```@0`4``````-`-```````````````````@````````````````````40`` -M``0`````````````````````````^*((``````!8%`````````X````'```` -M"``````````8`````````&$````!`````@```````````````````/!-!0`` -M````6)P```````````````````@```````````````````!<````!``````` -M``````````````````!0MP@``````$AC````````#@````D````(```````` -M`!@`````````:P````@````#````````````````````8.H%``````!@!0`` -M````````````````(````````````````````'`````!```````````````` -M`````````&#J!0``````4`<```````````````````$````````````````` -M```1`````P````````````````````````"P\04``````'D````````````` -M```````!`````````````````````0````(````````````````````````` -M,/8%``````!`1`````````\```!W`@``"``````````8``````````D````# -M`````````````````````````'`Z!@``````WS\```````````````````$` -M`````````````````````````````````````````````````````````P`! -M`````````````````````````````P`"```````````````````````````` -M`P`#`````````````````````````````P`$```````````````````````` -M`````P`%`````````````````````````````P`&```````````````````` -M`````````P`'`````````````````````````````P`(```````````````` -M`````````````P`)`````````````````````````````P`*```````````` -M`````````````````P`+`````````````````````````````P`,```````` -M`````````````````````P`-`````````````````````````````P`.```` -M`````````````````````````P`/```````````````````````!`````@`! -M`&#U````````IP`````````5`````@`!`+`"````````-@`````````C```` -M`@`!`/#Z````````GP(````````V`````@`!`+`1````````<0````````!$ -M`````@`!`&`8````````XP4```````!D`````@`!`%`]`0``````[P(````` -M``![`````@`!`)#M````````!P````````"*`````@`!``#I````````^``` -M``````"C`````@`!`!!V`0``````2P````````"O`````@`!`#"``0`````` -M)P````````#+`````@`!`$#T````````&P$```````#;`````@`!`$`````` -M````;@(```````#V`````@`!`,!P````````!@$````````0`0```@`!`-`( -M````````*``````````F`0```@`!`&!V`0``````4@`````````W`0```@`! -M`'"6````````7P0```````!4`0```@`!`##=````````@`````````!M`0`` -M`@`!`.`'````````J`````````"!`0```@`!```)````````(0````````"A -M`0```@`!`.!I`0``````/P````````"Q`0```@`!`'`>````````5`L````` -M``#,`0```@`!`%```0``````SP<```````#>`0```@`!`+".`0``````=P`` -M``````#K`0```@`!`!`%````````,``````````)`@```@`!`.!_`0`````` -M'0`````````D`@```@`!`.!V`0``````$@`````````]`@```@`!`."?```` -M````*@````````!8`@```@`!`#`#````````1@````````!H`@```@`!`/"* -M`0``````"0,```````!Z`@```@`!`'"?````````,0````````"5`@```@`! -M`"#R````````7P````````"E`@```@`!`*#(````````A@````````#!`@`` -M`@`!`(";````````'`$```````#>`@```@`!`'"(````````9P$```````#_ -M`@```@`!`)#N````````DP`````````5`P```@`!`."'````````BP`````` -M```P`P```@`!`!"1````````"0$```````!8`P```@`!`."!`0``````F@`` -M``````!X`P```@`!`,#&````````X`$```````"+`P```@`!`!"-```````` -M#P$```````"M`P```@`!`.""`0``````%P````````#0`P```@`!`$"+```` -M````10$```````#P`P```@`!`(!Z`0``````+P$````````,!````@`!`-#% -M````````Y0`````````B!````@`!`/"Y````````=0,````````Z!````0`# -M`.`2````````&P````````!%!````@`!`!#V````````*@$```````!4!``` -M`@`!`*!L````````#@````````!P!````@`!``!#`0``````Z@,```````"' -M!````@`!`-"F````````+`````````";!````@`!`-!O`0``````4@`````` -M``"L!````@`!`"!$````````Z@````````#.!````@`!`,!V`0``````&``` -M``````#F!````@`!`(#9````````*0`````````&!0```@`!`+#5```````` -M&@`````````?!0```@`!`+!P`0``````]00````````O!0```@`!`'!P`0`` -M````/P````````!!!0```@`!`.!/`0``````J`````````!6!0```@`!`-#3 -M````````-`$```````!O!0```@`!`+!^````````=P(```````"/!0```@`! -M`'!Y`0``````(`````````"<!0```@`!`!!L````````@0````````"Z!0`` -M`@`!`-`#````````#`````````#+!0```@`!`.`$````````)P````````#? -M!0```@`!`##)````````?`$```````#P!0```@`!`'!F`0``````2P`````` -M``#_!0```@`!`%`)````````8P`````````3!@```@`!`#"!````````SP(` -M```````H!@```@`!`,"$````````7``````````]!@```@`!```+```````` -M4`$```````!1!@```@`!`'"^````````Z@````````!U!@```@`!```````` -M````+`````````"3!@```@`!`-`2````````7P````````"J!@```@`!`!#0 -M````````CP(```````"\!@```@`!`!#9````````;@````````#+!@```@`! -M`$#8````````RP````````#F!@```@`!`&!N`0``````4@````````#V!@`` -M`0`+`&``````````@`````````#\!@```@`!`-":````````5@`````````9 -M!P```@`!`"!S````````B`L````````T!P```@`!``"'`0``````50$````` -M``!B!P```@`!`,`%````````W`$```````!_!P```@`!`,"^`0``````=@`` -M``````"/!P```@`!`#!P`0``````-P````````"B!P```@`!`$"?```````` -M*@````````"]!P```@`!`"`O````````WP,```````#=!P```@`!``"C`0`` -M````6@$```````#X!P```@`!`$"5````````+`$````````="````@`!`,`) -M````````4@`````````P"````@`!`.`#````````(@````````!#"````@`! -M`#"@````````*@````````!8"````@`!`."B````````20````````!I"``` -M`@`!`'"S````````J0````````"+"````@`!`+#=````````%0D```````"< -M"````@`!`.`K````````/`,```````"T"````@`!`!!H````````\@,````` -M``#2"````@`!`!"E````````*@````````#N"````@`!```S````````LPD` -M```````."0```@`!`)"H````````/@`````````C"0```@`!``!,`0`````` -M`0(````````X"0```@`!`!!:````````7P,```````!/"0```@`!`""%```` -M````5@````````!L"0```@`!`!#X````````\0````````"'"0```@`!`(#% -M````````(`````````">"0```@`!`%"H````````/@````````"V"0```@`! -M`#"D````````+@````````#/"0```@`!`&!I`0``````-P````````#?"0`` -M`@`!`*`'````````/@````````#K"0```@`!`````````)@`````````% -M"@```@`!`/"O````````J``````````@"@```@`!``#"````````>`$````` -M```W"@```@`!`(""`0``````7`````````!:"@```@`!`%!Y`0``````'@`` -M``````!N"@```@`!`(`%````````,P````````"""@```@`!`!"@```````` -M(`````````"<"@```@`!`-#5````````(P````````"T"@```@`!`+"?```` -M````*@````````#-"@```@`!`$`7````````&`$```````#L"@```@`!```/ -M````````2@$```````#Y"@```@`!`#`3`````````P(````````6"P```@`! -M`(#R````````[@`````````L"P```@`!`,!_`0``````'`````````!)"P`` -M`@`!`$#W````````PP````````!>"P```@`!`&"M````````5`````````!Z -M"P```@`!`$#%````````.@````````"2"P```@`!`-!G`0``````A0$````` -M``"C"P```@`!``"O````````\`````````"_"P```@`!`*"!`0``````0``` -M``````#E"P```@`!`#`2````````&0``````````#````@`!`'"N```````` -MA@`````````E#````@`!`-"H````````-P,````````Z#````@`!`""T```` -M````#0$```````!;#````@`!`."D````````)@````````!W#````@`!`#`, -M`0``````6`<```````"-#````@`!`.!*`0``````&`$```````"D#````@`! -M`-"5`0``````F0````````"V#````@`!`&"D````````)@````````#,#``` -M`@`!`""2````````<P$```````#C#````@`!`+`Z`0``````G0(```````#U -M#````@`!`-`I`````````P(````````1#0```@`!`-">````````*@`````` -M```A#0```@`!`$#L````````8@`````````_#0```@`!`)!8````````NP`` -M``````!<#0```@`!`("%````````T`````````!\#0```@`!`(!^`0`````` -M'P$```````"-#0```@`!`#"G````````)P````````"F#0```@`!`)`@`0`` -M````J`````````"Z#0```@`!`!#5````````2P````````#1#0```@`!`)`, -M````````;0(```````#C#0```@`!`%`0````````30````````#Z#0```@`! -M`&"D`0``````W`0````````5#@```@`!`)",````````<@`````````I#@`` -M`@`!`*##````````*@$````````\#@```@`!`!`$````````1P````````!+ -M#@```@`!`,`\````````4P<```````!C#@```@`!`'"$````````0@`````` -M``"-#@```@`!`&"``0``````,P$```````"P#@```@`!`*!\`0``````(@$` -M``````#+#@```@`!`!"R````````70$```````#N#@```@`!`'`$```````` -M7``````````"#P```@`!``"$````````;P`````````H#P```@`!``"B```` -M````T0````````!"#P```@`!`.`G`0``````,P(```````!A#P```@`!`"!J -M`0``````AP````````!S#P```@`!`/!&`0``````[`,```````"(#P```@`! -M`'!<`0``````$PD```````"E#P```@`!`$!``0``````OP(```````"^#P`` -M`@`!`$"_`0``````)@D```````#-#P```@`!`"`J`0``````I0D```````#J -M#P```@`!`*#2````````)`$````````"$````@`!``"?````````-``````` -M```6$````@`!`%#6````````70`````````S$````@`!``#6````````00`` -M``````!'$````@`!`+"=````````AP````````!6$````@`!`#"C```````` -M^@````````!H$````@`!`+![`0``````XP````````"#$````@`!`*#%```` -M````)@````````"7$````@`!`)#5````````%0````````"M$````@`!`#`1 -M````````=0````````#/$````@`!``#J````````P`$```````#D$````@`! -M``!W`0``````3@(```````#Z$````@`!`%!9````````O@`````````7$0`` -M`@`!`)!Y`0``````XP`````````N$0```@`!`*!I`0``````.0`````````_ -M$0```@`!`)`(````````.0````````!3$0```@`!`("W````````!`$````` -M``![$0```@`!`/"O`0``````T@````````"0$0```@`!`#";````````2@`` -M``````"Q$0```0`+`$``````````'`````````#"$0```@`!`(`W`0`````` -M)P,```````#>$0```@`!`/`"````````-@````````#Q$0```@`!`$">```` -M````)0`````````)$@```@`!`,"/````````3P$````````N$@```@`!`%`2 -M````````10````````!.$@```@`!`+!_`0``````!@````````!F$@```@`! -M`"#M````````:0````````!R$@```@`!`$`A`0``````D@8```````"+$@`` -M`@`!`&#H````````G0````````"A$@```@`!`.")````````7`$```````#" -M$@```@`!`'#S````````S@````````#7$@```@`!`)!0`0``````TPL````` -M``#S$@```@`!`$"1`0``````>0,````````*$P```@`!`$#P````````T0$` -M```````D$P```@`!`(`#````````1@`````````X$P```@`!`.!A```````` -MR0,```````!/$P```@`!`*#M````````,P````````!=$P```@`!`&"@```` -M````*@````````!U$P```@`!`##O`````````0$```````")$P```@`!`*"< -M````````"@$```````"D$P```@`!`+#6````````D`$```````"[$P```@`! -M`,"M````````KP````````#7$P```@`!`)#]````````LP(```````#U$P`` -M`@`!`."X`0``````V@4````````,%````@`!`+!U`0``````4P`````````9 -M%````@`!`.!F`0``````0@`````````F%````@`!`%"&````````,P$````` -M``!*%````@`!`$#:````````1P$```````!E%````@`!`("0`0``````M``` -M``````!]%````@`!``"G````````(P````````"9%````@`!`$#N```````` -M'P````````"H%````@`!`&`$````````$`````````"Z%````@`!`$!>```` -M````GP,```````#5%````@`!`*`2````````(0````````#K%````@`!``"` -M`0``````*P`````````&%0```@`!`)#;````````'P$````````:%0```@`! -M`!#Y````````X0`````````N%0```@`!`*"3````````^@````````!+%0`` -M`@`!`%"5`0``````=`````````!9%0```@`!`&"(`0``````IP$```````!P -M%0```@`!`#`)````````(`````````""%0```@`!`-#$````````9P`````` -M``"4%0```@`!`)"6`0``````4`````````"E%0```@`!`&"V````````$P$` -M``````#/%0```@`!`(`*````````>0````````#L%0```@`!`,#K```````` -M?P`````````)%@```@`!`-!.````````L0D````````@%@```@`!``"#`0`` -M````\0,````````V%@```@`!`"#.````````X0$```````!&%@```@`!`$`% -M````````,0````````!=%@```@`!`'"U`0``````HP````````!Y%@```@`! -M`-`$````````#0````````"0%@```0`'`$``````````*`````````"=%@`` -M`@`!`%`>````````$0````````"[%@```@`!``#Z````````X0````````#/ -M%@```@`!`,!N`0``````4@````````#?%@```0`+````````````!``````` -M``#Q%@```@`!`+#<````````@``````````:%P```@`!`*`0````````@@`` -M```````Y%P```@`!`(##````````%P````````!)%P```@`!`(">```````` -M2P````````!B%P```@`!`-!Q````````0P$```````![%P```@`!`+!E```` -M````7`(```````"3%P```@`!`+#*````````9@,```````"Q%P```@`!`-`( -M`0``````5P,```````#+%P```@`!`$`5````````[0````````#A%P```@`! -M``"A````````]@````````#X%P```@`!`!!%````````P`D````````.&``` -M`@`!`"`*````````4@`````````B&````@`!`)"@````````80`````````U -M&````@`!`-"P`0``````A`````````!-&````@`!`+#9````````A0`````` -M``!H&````@`!`)"'````````1`````````"/&````@`!`##`````````N@`` -M``````"V&````@`!`)"D````````1@````````#1&````@`!`#"U```````` -M*@$```````#T&````@`!`+!L````````!@0````````5&0```@`!`*"4```` -M````G``````````T&0```@`!`"`(`0``````IP````````!(&0```@`!`-!] -M`0``````JP````````!C&0```@`!`!!.`0``````S0$```````!_&0```@`! -M`%`,````````/P````````"1&0```@`!`(`8`0``````"@@```````"L&0`` -M`@`!`&"G````````X@````````"^&0```@`!`)`4`0``````[0,```````#1 -M&0```@`!`"".````````GP$```````#Z&0```@`!`'"]````````_``````` -M```A&@```@`!`#!G`0``````E0`````````[&@```@`!``"8`0``````7``` -M``````!3&@```@`!`*!_`0``````!0````````!K&@```@`!`+#L```````` -M8@````````")&@```@`!`/#`````````#`$```````">&@```@`!`'">```` -M`````@````````"S&@```@`!`&"_````````R0````````#5&@```@`!`)"X -M````````40$````````!`````@`!`,#?`@``````IP`````````V`````@`! -M`!#\`0``````<0````````#X&@```@`!`-#N`0``````7`````````![```` -M`@`!`/#7`@``````!P`````````.&P```@`!`$"*`@``````*@`````````K -M&P```@`!`%"D`@``````=0,```````#+`````@`!`*#>`@``````&P$````` -M``!%&P```@`!`'!2`@``````\@,```````!E&P```@`!`/!V`@``````<@`` -M``````![&P```@`!`/!&`P``````$PD```````":&P```@`!`!#'`@`````` -M@`````````#%&P```@`!`,"1`@``````X@`````````F`0```@`!`)!A`P`` -M````4@````````#9&P```@`!`#"%`@``````5@````````#X&P```@`!``!H -M`P``````'P$````````+'````@`!`'""`P``````7``````````E'````@`! -M`!`[`P``````TPL```````!#'````@`!`!!0`@``````7`(```````!='``` -M`@`!`!#!`@``````D`$```````"A`0```@`!`%!4`P``````/P````````#, -M`0```@`!`+#J`@``````SP<```````#>`0```@`!`#!X`P``````=P`````` -M``!V'````@`!`,!Z`P``````>0,```````"/'````@`!`'"*`@``````(``` -M``````"K'````@`!`%`U`P``````&`$```````#$'````@`!`.#M`0`````` -M1@````````#:'````@`!``!7`@``````#@````````#X'````@`!`'#O`0`` -M````,``````````8'0```@`!`$"-`@``````20`````````K'0```@`!`&`Z -M`P``````J`````````!"'0```@`!`'"/`@``````*@````````!@'0```@`! -M`&#S`0``````(0````````""'0```@`!`&")`@``````-`````````"8'0`` -M`@`!`'!T`P``````"0,```````"5`@```@`!`(#<`@``````7P````````"L -M'0```@`!`(!L`P``````\0,```````#$'0```@`!`/"*`@``````80`````` -M``#9'0```@`!`/#V`0``````;0(```````#>`@```@`!`-!R`@``````9P$` -M``````#_`@```@`!`/#8`@``````DP````````#M'0```@`!`(#R`@`````` -MIP`````````5`P```@`!`$!R`@``````BP`````````#'@```@`!`!!B`P`` -M````$@`````````P`P```@`!`'![`@``````"0$````````>'@```@`!`(`N -M`@``````Z@````````!"'@```@`!`(#T`0``````4@````````!8'@```@`! -M`'`V`P```````0(````````Z!````0`#`"`F````````(`````````!%!``` -M`@`!`'#@`@``````*@$```````!O'@```@`!`#"P`@``````Y0````````"' -M'@```@`!`!"U`@``````9@,```````"G'@```@`!`'!W`@``````#P$````` -M``#+'@```@`!`(`X`P``````U`$```````#I'@```@`!`*#$`@``````1P$` -M``````";!````@`!`)!:`P``````4@`````````&'P```@`!``"'`@`````` -M"@$````````C'P```@`!`,`"`@``````XP4```````!%'P```@`!`-"8`@`` -M````A@````````"/!0```@`!`$!C`P``````(@````````!L'P```@`!`*"O -M`@``````.@````````"&'P```@`!`&"1`@``````(P````````"D'P```@`! -M`/!Q`@``````1`````````#-'P```@`!`)#\`0``````&0````````#J'P`` -M`@`!`##S`0``````*`````````#F!@```@`!`"!9`P``````4@````````#V -M!@```0`+`&`!````````@``````````"(````@`!`%"K`@``````#`$````` -M```9(````@`!`"!O`@``````7``````````P(````@`!`.#^`@``````[0,` -M``````!%(````@`!`.#O`0``````,P````````!_!P```@`!`("H`P`````` -M=@````````!;(````@`!`.!I`P``````,P$```````"`(````@`!`"!Z`@`` -M````3P$```````"G(````@`!`/"B`@``````40$```````#,(````@`!`+!# -M`@``````O@````````#K(````@`!`&",`@``````T0`````````'(0```@`! -M`##]`0``````7P`````````@(0```@`!`+#S`0``````8P`````````V(0`` -M`@`!`)"S`@``````?`$```````!)(0```@`!`&#J`0``````+`````````!I -M(0```@`!`"!;`@``````!@$```````#/"0```@`!`.!3`P``````-P`````` -M``"%(0```@`!`&!N`@``````;P````````"M(0```@`!`+#Z`0``````30`` -M``````#&(0```@`!`&!K`P``````F@````````#K"0```@`!`,"_`@`````` -M)@````````#H(0```@`!`(`9`@``````WP,````````*(@```@`!``!D`P`` -M````+P$````````H(@```@`!`&`=`@``````LPD```````!*(@```@`!`,"@ -M`@``````$P$```````!V(@```@`!`*!_`@``````+`$```````"=(@```@`! -M`+#\`0``````10````````"_(@```@`!`,",`P``````6@$```````!:"@`` -M`@`!`"!C`P``````(`````````#<(@```@`!`#`4`@```````P(```````#Z -M(@```@`!``#[`0``````@@````````"T"@```@`!`!"*`@``````*@`````` -M```;(P```@`!`#!E`P``````XP`````````X(P```@`!``@``````^``` -M``````!3(P```@`!`##S`@``````1P,```````#L"@```@`!`&#Y`0`````` -M2@$```````!O(P```@`!`"`G`@``````4P<```````")(P```@`!`/"_`@`` -M````%0````````"A(P```@`!`(!I`P``````*P````````"^(P```@`!`)"% -M`@``````2@````````#A(P```@`!`/!0`P``````2P````````#R(P```@`! -M`/"2`@``````/@`````````))````@`!`.!@`P``````4P````````"2"P`` -M`@`!`%!2`P``````A0$````````8)````@`!`+#``@``````70`````````W -M)````@`!`)"J`@``````N@````````!@)````@`!`+!1`P``````E0`````` -M``!\)````@`!`*"B`P``````V@4```````"5)````@`!`'"Z`@``````CP(` -M``````"I)````@`!`'"<`@``````70$```````#.)````@`!`'!C`P`````` -M@@````````#G)````@`!`!#7`@``````8@`````````')0```@`!`)"*`@`` -M````*@`````````>)0```@`!`)#S`0``````(``````````R)0```@`!`.#< -M`@``````[@````````!*)0```@`!`#!;`P``````/P````````!>)0```@`! -M`##N`0``````#`````````!Q)0```@`!`&`Q`P``````[`,```````"()0`` -M`@`!`!#M`0``````-@````````"D#````@`!`%!_`P``````F0````````#, -M#````@`!`(!\`@``````<P$```````"8)0```@`!`%`2`P``````,P(````` -M``#C#````@`!`"`E`P``````G`(```````"Y)0```@`!`(!X`@``````GP$` -M``````#D)0```@`!`#"1`@``````+`````````#Z)0```@`!`$#O`0`````` -M)P`````````0)@```@`!`*#A`@``````PP`````````G)@```@`!`#!<`@`` -M````0P$```````!")@```@`!`%#E`@``````GP(```````!7)@```@`!`""Q -M`@``````X`$```````!L)@```@`!`."A`@``````!`$```````"6)@```@`! -M`&"L`@``````>`$```````"O)@```@`!`,".`@``````)@````````#')@`` -M`@`!`(!O`@``````5@````````!C#@```@`!`-!N`@``````0@````````#F -M)@```@`!`#`Y`@``````L0D```````#_)@```@`!`(#V`@``````6`<````` -M```7)P```@`!`!#(`@``````%0D````````J)P```@`!`$!I`P``````'``` -M``````!))P```@`!`/#R`0``````.0````````!?)P```@`!`)`4`P`````` -MI0D```````!^)P```@`!`)"?`@``````*@$```````"C)P```@`!`/#G`@`` -M````LP(```````!A#P```@`!`)!4`P``````U0````````##)P```@`!`)"- -M`@``````^@````````#7)P```@`!`!"(`@``````AP````````"^#P```@`! -M``"I`P``````-0D```````#H)P```@`!`-`"`P``````*@@````````%*``` -M`@`!`*#"`@``````RP`````````B*````@`!`,#N`0``````$``````````V -M*````@`!`#"^`@``````-`$```````#J#P```@`!``"]`@``````)`$````` -M``!1*````@`!`*#_`0``````[0````````!I*````@`!`)"1`@``````)P`` -M``````"$*````@`!`$#R`0``````J`````````":*````@`!`$#N`0`````` -M(@````````"O*````@`!`+!I`P``````)P````````#-*````@`!``!L`P`` -M````7`````````#R*````@`!`#!B`P``````Z``````````N$0```@`!`"!4 -M`P``````)P`````````**0```@`!`&#``@``````00`````````@*0```@`! -M`.!O`@``````T`````````!"*0```@`!`(!=`@``````B`L```````!?*0`` -M`@`!`+`+`P``````D@8```````!Z*0```@`!`#"O`@``````9P````````". -M*0```@`!`+`(`@``````$0````````![$0```@`!`+"9`P``````T@`````` -M``"N*0```@`!`!!7`@``````!@0```````#1*0```@`!`,"*`@``````*@`` -M``````#K*0```@`!`%#M`0``````-@``````````*@```@`!`(!P`P`````` -M50$````````P*@```@`!`."O`@``````(`````````!)*@```@`!`-"(`@`` -M`````@````````!F$@```@`!`(#7`@``````:0````````!@*@```@`!`'`O -M`@``````P`D```````"A$@```@`!`$!T`@``````7`$```````!X*@```@`! -M`/#%`@``````'P$```````".*@```@`!``@``````P`$```````"E*@`` -M`@`!`)#]`0```````P(```````#"$@```@`!`-#=`@``````S@````````#$ -M*@```@`!`'!6`@``````@0````````#D*@```@`!`,#2`@``````G0`````` -M``#\*@```@`!`!!I`@``````=P(````````>*P```@`!`"#6`@``````?P`` -M```````]*P```@`!`+`J`P``````OP(```````!8*P```@`!`&!L`P`````` -M%P````````!/$P```@`!``#8`@``````,P````````!]*P```@`!`)#[`0`` -M````=0````````"A*P```@`!`.#T`0``````>0````````"[$P```@`!`""8 -M`@``````KP````````#`*P```@`!``!_`@``````G`````````#A*P```@`! -M`*#6`@``````8@`````````!+````@`!`&#U`0``````4`$````````7+``` -M`@`!`+"2`@``````/@`````````Q+````@`!`-"H`@``````Z@````````!7 -M+````@`!`'#N`0``````1P`````````9%````@`!`&!1`P``````0@`````` -M``!H+````@`!`)".`@``````+@````````"#+````@`!`"!I`P``````!0`` -M``````"=+````@`!`,`G`P``````[P(```````"V+````@`!`$!,`@`````` -MR0,```````!E%````@`!``!Z`P``````M`````````#/+````@`!`$!A`P`` -M````2P````````#=+````@`!`%!G`P``````JP````````"9%````@`!`*#8 -M`@``````'P````````#Z+````@`!`##O`0``````#0`````````3+0```@`! -M`"!F`P``````(@$````````P+0```@`!`*"(`@``````)0````````!*+0`` -M`@`!`/".`@``````1@````````!G+0```@`!`*#:`@``````T0$```````"# -M+0```@`!`"#T`0``````4@````````"8+0```@`!`&"+`@``````]@`````` -M``#5%````@`!``#]`0``````(0````````"Q+0```@`!`'!;`P``````904` -M``````##+0```@`!`!#$`@``````A0````````#@+0```@`!`,"7`@`````` -M5`````````#^+0```@`!`'`M`P``````Z@,````````7+@```@`!`*!U`@`` -M````10$````````:%0```@`!`'#C`@``````X0`````````N%0```@`!``!^ -M`@``````^@````````!+%0```@`!`-!^`P``````=``````````Y+@```@`! -M`#"3`@``````-P,```````!0+@```@`!`%":`@``````J`````````!M+@`` -M`@`!`'#B`@``````\0````````"*+@```@`!`/!"`@``````NP````````"I -M+@```@`!`-`(`@``````5`L```````"4%0```@`!`!"``P``````4``````` -M``#&+@```@`!`#")`@``````*@````````#8+@```@`!`*#J`0``````;@(` -M``````#U+@```@`!``"S`@``````A@`````````3+P```@`!`.##`@`````` -M*0`````````U+P```@`!`."(`@``````2P````````!0+P```@`!`/!:`P`` -M````-P````````!E+P```@`!`##``@``````(P`````````V%@```@`!`("X -M`@``````X0$```````!_+P```@`!`/`A`P``````)P,```````!=%@```@`! -M`#"?`P``````HP````````"=+P```@`!`'##`@``````;@````````"N+P`` -M`@`!`)#'`@``````@`````````#)+P```@`!`!#``@``````&@````````#D -M+P```@`!`+#V`0``````/P````````"[%@```@`!`&#D`@``````X0`````` -M``#X+P```@`!``#R`0``````/@`````````&,````@`!`"!K`P``````0``` -M``````#/%@```@`!`(!9`P``````4@````````#?%@```0`+```!```````` -M!``````````Y%P```@`!`."M`@``````%P`````````N,````@`!`*#O`0`` -M````,0````````!',````@`!`*!(`@``````GP,```````!D,````@`!`+!P -M`@``````,P$```````"*,````@`!`."%`@``````'`$```````"I,````@`! -M`"#P`0``````W`$```````#(,````@`!`-"=`@``````J0````````#L,``` -M`@`!`'"_`@``````2P`````````%,0```@`!`/!A`P``````&``````````? -M,0```@`!`-"G`@``````_`````````!(,0```@`!`'!$`@``````7P,````` -M``!A,0```@`!`)!K`@``````SP(```````!X,0```0`+`$`!````````'``` -M``````"+,0```@`!`&"9`@``````\`````````"I,0```@`!`#!I`P`````` -M!@`````````U&````@`!`)":`P``````A`````````##,0```@`!`*")`@`` -M````*@````````#@,0```@`!`-"``@``````7P0```````#_,0```@`!`$`6 -M`@``````/`,````````9,@```@`!``"N`@``````*@$````````N,@```@`! -M`)#9`@```````0$```````!$,@```@`!`(">`@``````#0$```````!G,@`` -M`@`!`&!I`P``````'0````````"$,@```@`!``"P`@``````)@````````": -M,@```@`!```+`P``````J`````````"P,@```@`!`"".`P``````W`0````` -M``#-,@```@`!`,"I`@``````R0````````#Q,@```@`!`)#M`0``````1@`` -M```````#,P```@`!`*`!`@``````&`$````````D,P```@`!`.!Q`P`````` -MIP$````````],P```@`!`-")`@``````,0````````!:,P```@`!`$"/`@`` -M````)@````````!X,P```@`!`/`,!0``````3P````````"&,P```@`!`,#O -M`P``````K@````````"6,P```@`!`##^`P``````QPL```````"P,P```@`! -M````!0``````N`<```````#`,P```@`!`)`3!```````E@````````#0,P`` -M`0`+`!`"````````"`````````#@,P```@`!`,#M`P``````#`````````#U -M,P```@`!`$`-!```````90$````````*-````@`!`*#Z!```````8P`````` -M```B-````0`'`($#`````````0`````````R-````@`!`,`D!```````A0`` -M``````!"-````@`!`"#S!```````U0````````!3-````@`!``#T!``````` -MD0````````!G-````@`!`*#[!```````2`(```````!]-````@`!`&`=!``` -M````V@````````"3-````0`+`!@"````````!`````````"A-````@`!`,#R -M!```````7P````````"Y-````@`!`!#,!```````A@````````#(-````@`! -M`$!"!```````00````````#:-````@`!`.#D`P``````6@$```````#M-``` -M`@`!`$`>!````````P$````````%-0```@`!``#6`P``````2P`````````9 -M-0```@`!`+`.!```````A0$````````M-0```@`!`/`+!```````2@`````` -M```[-0```@`!`)#L`P``````90````````!0-0```@`!`%#R`P``````8``` -M``````!A-0```@`!`&#L`P``````+`````````!X-0```0`+`"`"```````` -M`0````````",-0```@`!`-`0!```````9@````````"G-0```@`!```*!``` -M````[P$```````"[-0```@`!`$`0!```````CP````````#+-0```@`!`)#7 -M`P``````)0````````#4-0```@`!`(#4`P``````=P````````#P-0```@`! -M`/#]!```````G``````````&-@```@`!`'#[`P``````6@(````````9-@`` -M`@`!``#P!```````%@`````````B-@```@`!`$`-!0``````3P`````````P -M-@```@`!`.#Y`P``````CP$```````!,-@```@`!`#!!!```````\P`````` -M``!7-@```@`!`*!%!```````"`$```````!M-@```@`!`)!_!```````'@$` -M``````!_-@```@`!`(!$!```````&0$```````"8-@```@`!`!#E!``````` -M3`````````"I-@```@`!```8!```````50````````"T-@```@`!``#G!``` -M````!@0```````#%-@```@`!`"#N`P``````=P````````#:-@```@`!`-#Q -M!```````Z0````````#I-@```@`!`,#<`P``````^0````````#\-@``$@`! -M`!#4`P``````$P`````````C-P``$0`+`"0"`````````0`````````X-P`` -M$`````````````````````````!/-P``$@`!`.`,!0``````#`````````!F -M-P``$`````````````````````````!Y-P``$@`!`$#7`P``````*``````` -M``"+-P``$@`!`.`+!0``````.@````````":-P``$@`!`$#F`P``````QP$` -M``````"Q-P``$@`!``#;`P``````=P````````#(-P``$``````````````` -M``````````#@-P``$@`!`'`,!0``````50````````#Y-P``$@`!`'#4`P`` -M````#``````````0.```$@`!`$#D`P``````F``````````G.```$``````` -M``````````````````!".```$@`!`/#8`P``````50````````!1.```$``` -M``````````````````````!8.```$@`!`%#9`P``````V0````````!K.``` -M$@`!`-#6`P``````*P````````"".```$@`!`+#>`P``````%0````````"6 -M.```$@`!`-#H`P``````@`$```````"L.```$@`!`*#T!```````$0(````` -M``#).```$0`+`!P"````````!`````````#@.```$@`!`,#V!```````V`,` -M``````#Z.```$``````````````````````````/.0``$@`!`,#=`P`````` -M50`````````E.0``$@`!`-#P`P``````:@````````!`.0``$@`!`#!"!``` -M````"`````````!:.0``$`````````````````````````!L.0``$@`!`"`, -M!0``````20````````"!.0``$0`+```"````````"`````````"1.0``$@`! -M``#E!```````"0````````"J.0``$@`!``P``````@P````````"_.0`` -M$0`+`"4"`````````0````````#7.0``$@`!`&"8`0``````&@````````#R -M.0``$@`!`'#D!```````:P`````````).@``$``````````````````````` -M```@.@``$@`!`(#;`P``````5P`````````S.@``$0`+``@"````````"``` -M``````!".@``$@`!`##:`P``````PP````````!:.@``$@`!`.#;`P`````` -MV0````````!K.@``$@`!`"!!!```````!P````````"#.@``$``````````` -M``````````````":.@``$@`!`+!&!```````)P````````"J.@``$0`+`"," -M`````````0````````#&.@``$`````````````````````````#9.@``$``` -M``````````````````````#L.@``$0`'`(,#`````````0``````````.P`` -M$@`!`(#>`P``````$``````````E.P``$@`!`%#L!```````;@,````````S -M.P``$@`!`-""`P``````&@````````!0.P``$@`!`)#>`P``````$0`````` -M``!L.P``$`````````````````````````"$.P``$@`!`!#K!```````4@`` -M``````"9.P``$`````````````````````````"O.P``$@`!`!#[!``````` -M@P````````#*.P``$@`!`,#O!```````-@````````#>.P``$``````````` -M``````````````#N.P``$``````````````````````````%/```$@`!`-`, -M!0``````#``````````</```$``````````````````````````O/```$@`! -M`(#7`P``````$`````````!+/```$@`!``#5`P``````R`````````!F/``` -M$0`'`(`#`````````0````````!Y/```$@`!`##4`P``````#`````````"1 -M/```$0`+`"$"`````````0````````"L/```$@`!`,`'!0``````AP(````` -M``#,/```$@`!`.`*!0```````P````````#F/```$@`!`)#W`P``````^0$` -M``````#]/```$@`!`!#H`P``````LP`````````3/0``$@`!`,#7`P`````` -M/@`````````L/0``$`````````````````````````!#/0``$@`!`$#4`P`` -M````*0````````!;/0``$`````````````````````````!O/0``$@`!``#7 -M`P``````/0````````"%/0``$@`!`,`*!0``````$P````````"C/0``$@`! -M`*#B`P``````\P````````##/0``$`````````````````````````#7/0`` -M$`````````````````````````#T/0``$@`!`'#7`P``````"P`````````. -M/@``$``````````````````````````A/@``$@`!`/#C!```````=``````` -M```X/@``$`````````````````````````!3/@``$@`!`+`*!0```````@`` -M``````!F/@``$@`!`&#E!```````<0````````![/@``$@`!``#M`P`````` -ML@````````"3/@``$@`!`%`*!0``````5`````````"Q/@``$@`!`-#5`P`` -M````+`````````#?/@``$0`'`((#`````````0````````#[/@``$@`!`%#J -M`P``````^@`````````2/P``$@`!`.#D!```````&P`````````G/P``$@`! -M`"#>`P``````5P````````!&/P``$`````````````````````````!=/P`` -M$@`!`$#A`P``````5@$```````!Z/P``$@`!``#8`P``````7P````````"/ -M/P``$@`!`"#P!```````\@````````"L/P``$0`+`"("`````````0`````` -M``#'/P``$@`!`%`E!```````<@``````````4$U?27-S=65296%D1F%I;$QE -M9`!R-S4P7U1A9U]);FET`'(W-3!?57!D871E4&AY26YF;P!S87-?:&%S:%]A -M9&1R`'(W-3!?5F5R:69Y0V]M;6%N9$)E9F]R95-E;F1I;F<`<C<U,%]#:&5C -M:T1E=FEC94-H86YG90!-86ME071T1&5V26YF;P!R-S4P7T1)4T-?0V%N8V5L -M1&ES8V]V97(`<C<U,%]"965P3VX`<C<U,%]30U-)7T%405]&:6QL1&%T849I -M96QD`%!-7U=R:71E4F5G4WEN8P!R-S4P7U-#4TE?36%K94-A8VAE0V]M;6%N -M9`!R-S4P7T-/4D5?27-S=65335!297%U97-T`'(W-3!?359?6F5R;TUV4F5Q -M=65S=`!I,F-!7W=R:71E7V)Y=&5S`'(W-3!?4T537TEN=&5R;F%L4F5Q0V%L -M;&)A8VL`<C<U,%])<W-U95]297!O<G1'96YE<F%L`'(W-3!?359?1'5M<%)E -M<75E<W0`<C<U,%]-5E]);FET:6%L:7IE5&%R9V5T241486)L90!S971?<&U? -M9F%I;%]L960`<C<U,%]0<F5P87)E06YD4V5N9$-O;6UA;F0`;79?<&AY7W=O -M<FMA<F]U;F0`3V1I;E-025]29'!T`'(W-3!?359?36%P5&]3<&5C:69I8U1A -M<F=E=$E$`'(W-3!?4T-325]!5$%?1FEL;$Q"04-D8C$P`'(W-3!?4T=024]? -M5W)I=&5296=I<W1E<@!R-S4P7T9R9653051!4V-R871C:%1O4&]O;`!R-S4P -M7U1A9U]'971/;F4`<C<U,%]/9&EN4U!)7TEN:70`<C<U,%]&<F5E26YT97)N -M86Q297%4;U!O;VP`=V%T:6YG7V-A;&QB86-K`'(W-3!?0V]M<&QE=&5297%U -M97-T06YD4VQO=`!R-S4P7T-O<F5?1V5T4W5P<&]R=&5D0V]U;G1S`$1E=FEC -M95]-86ME4')I=F%T95-E;F1397-297%U97-T`%!-7U-E=$9A:6Q,961#86QL -M8F%C:P!!<W-I9VY%;&5M96Y$97-C<FEP=&]R3F%M90!$979I8V5?36%K95-E -M<T5L96UE;G13=&%T=7-297%U97-T5&EM97(`<C<U,%]30U-)7T%405]697)I -M9GE4<F%N<VQA=&EO;@!R-S4P7U]?<F5N97=?=&EM97(`<C<U,%]$979I8V5? -M36%K95-E<U)C=D1I86=297%U97-T`'(W-3!?4T-325]!5$%?4W1A<G13=&]P -M5')A;G-L871I;VX`<C<U,%]$979I8V5?5W)I=&5397-#;VYT<F]L1&EA9P!R -M-S4P7U-'4$E/7U--4%)E<75E<W1?5W)I=&4`<C<U,%]&<F5E1&5V:6-E5&]0 -M;V]L`'(W-3!?4&]R=%]!8F]R=%)E<75E<W1S`'!R;V1U8W1?:60`4$U?4F5A -M9%)E9U-Y;F,`<C<U,%]#;W)E7TUO9'5L95-E;F1297%U97-T`'(W-3!?0VAE -M8VM487)G971#:&%N9V4`<C<U,%]&<F5E4&]R=%1O4&]O;`!I,F-"7W=R:71E -M7V)Y=&5S`'(W-3!?0V]R95]);G1E<G)U<'1397)V:6-E4F]U=&EN90!R-S4P -M7U-'4$E/7U)E861296=I<W1E<@!R-S4P7T1)4T-?1V5T3F5G;W1I871E9$QI -M;FM2871E`'(W-3!?0V%L8W5L871E4F]U=&5);F1E>`!R-S4P7V]D:6Y?:6]C -M=&P`<C<U,%]S971?9F%I;%]L960`<C<U,%]35%!?1&5V:6-E4F5S970`<C<U -M,%]'971%>'!A;F1E<D9R;VU0;V]L`'(W-3!?4T%405]035](86YD;&5$979I -M8V55;G!L=6<`5&5S=%]0:6Y?4V5T`'(W-3!?0V]R95]);G1E<FYA;%-E;F12 -M97%U97-T`'(W-3!?5&%G7TES16UP='D`<C<U,%]-5E]-87!487)G971)1`!R -M-S4P7U]?861D7W1I;65R`'(W-3!?:3)C7W)E<V5T`'(W-3!?;79?9&ES86)L -M95]H8F$`<C<U,%]#;W)E7U)E<51I;65O=70`<C<U,%]&:6YD07-C:6E.=6UB -M97(`<C<U,%]M=E]S971?4T%3061D<@!R-S4P7T5X<&%N9&5R7U--4%)E<75E -M<W1?4&AY0V]N=')O;`!R-S4P7U-#4TE?36%K94UO9&5086=E0V%C:&EN9P!R -M-S4P7T-O<F5?4F5S971#;613;&]T`'(W-3!?4F5M;W9E1&5V:6-E`'(W-3!? -M1FEN9%1G=$YO`'(W-3!?4W1O<F5?0V]N9FEG4F]U=&5);F9O`&DR8T%?<F5A -M9%]B>71E<P!A:6YF;P!R-S4P7T-O<F5?36%K941E=FEC95)E<V5T4F5Q`'(W -M-3!?0V]R95]-;V1U;&5);FET:6%L:7IE`'(W-3!?4T-325]!5$%?4F5A9$-A -M<&%C:71Y5')A;G-L871I;VY#86QL8F%C:P!R-S4P7TU67U-E=$Q"06%N9%-E -M8W1O<D-O=6YT`&]D:6Y?8V]R95]T:6UE<@!R-S4P7W-E=%]F86EL7VQE9',` -M<C<U,%]&<F5E0V]R94-O;G1E>'14;U!O;VP`<C<U,%]C;W)E7VAA;F1L95]T -M87-K9FEL95]E<G)O<@!R-S4P7V]D:6Y?<V5T7W-P:6Y?=7!?;6]D90!R-S4P -M7U!O<W1-86ME4V5S16QE;65N=%-T871U<U)E<75E<W0`<C<U,%]M=E]E;F%B -M;&5?>&UT`'(W-3!?3&ES=%]'971&:7)S=`!R-S4P7T9R965315-30E1O4&]O -M;`!R-S4P7T=E=%!-1&5V:6-E`'(W-3!?1&5V:6-E7TUA:V5-;V1E4V5L96-T -M4F5Q=65S=`!R-S4P7T1I<V-O=F5R>5--`'(W-3!?4T%405]%<G)O<DAA;F1L -M:6YG`'(W-3!?4T%405]0;W)T2&%N9&QE26YT97)R=7!T`'(W-3!?1V5T0V]R -M94-O;G1E>'1&<F]M4&]O;`!R-S4P7U-!4U](86YD;&5#;VUP;&5T961#;VUM -M86YD`'(W-3!?1G)E95)E9VES=&5R4V5T`'(W-3!?4T%405]0;W)T1&5T96-T -M`'(W-3!?4&]R=%](86YD;&50;'5G:6X`<C<U,%]!<W-I9VY%;&5M96YT4VQO -M=$YU;6)E<@!R-S4P7T1E=FEC95])<W-U95-O9G1297-E=`!R-S4P7U]?4$U? -M8V%N8V5L7W1I;65R`'(W-3!?4$U?1G)E95)E9VES=&5R4V5T`'(W-3!?1V5T -M4T="=69F97)&<F]M4&]O;`!S971?96U?9F%I;%]L960`<C<U,%]-5E]#4D,` -M1V5T4T%4038T2U-C<F%T8VA&<F]M4&]O;`!R-S4P7U)U;G1I;65)<W-U95-O -M9G1297-E=`!R-S4P7T=E=$1E=FEC949R;VU0;V]L`'(W-3!?4T-325]!5$%? -M4WEN8T-A8VAE5')A;G-L871I;VX`5&5S=%]0:6Y?26YI=&EA;&EZ90!R-S4P -M7TU67T=E=$UA<'!E9$E$`'(W-3!?1G)E95--4%-C<F%T8VA4;U!O;VP`<C<U -M,%]&:6YD1G)E95--4$-O;G1E>'0`1G)E95-!5$$V-$M38W)A=&-H5&]0;V]L -M`'(W-3!?4T%405]0<F5P87)E0V]M;6%N9$AE861E<@!M=E]P:'E?<F5S970` -M<C<U,%]3051!7TAA;F1L941E=FEC955N<&QU9P!R-S4P7U!-7TES<W5E5W)I -M=&5296<`<C<U,%]30U-)7T%405]#:&5C:T-O;F1I=&EO;@!R-S4P7U!-7TES -M<W5E4F5A9%)E9P!R-S4P7T=E=$EN=&5R;F%L4F5Q1G)O;5!O;VP`<C<U,%]& -M<F5E17AP86YD97)4;U!O;VP`<V5T7V5M7V9A:6Q?;&5D<P!R-S4P7U)U;G1I -M;65)<W-U95)E861,;V=%>'0`<C<U,%]30U-)7T%405]296%D0V%P86-I='E4 -M<F%N<VQA=&EO;@!R-S4P7V1U;7!?=6YA<W-O8VEA=&5D7V9I<P!R-S4P7T1E -M=FEC95]-86ME4W1A<G13=&]P56YI=%)E<75E<W0`<C<U,%]#;VUP;&5T95)E -M<75E<W0`<C<U,%]$979I8V5?36%K94UO9&5396YS95)E<75E<W0`<C<U,%]' -M9713051!4V-R871C:$9R;VU0;V]L`'(W-3!?0V]R95]-;V1U;&53=&%R=`!R -M-S4P7T1I<V-O=F5R>4-A;&Q"86-K`&=E=%]I9%]F<F]M7V5N8TED`'(W-3!? -M1V5T4T534T)&<F]M4&]O;`!315-?4')I=F%T95)E<4-A;&QB86-K`%-!4U]2 -M97!O<G1,=6Y38V%N`'(W-3!?0V]R95](86YD;&5786ET:6YG3&ES=`!R-S4P -M7U!R945M<'1Y4$T`<C<U,%]'971-:6Y.96=O=&EA=&5D3&EN:U)A=&4`<C<U -M,%]3051!7TAA;F1L941E=FEC95!L=6=I;@!R-S4P7T9I;&Q%;F-L;W-U<F5% -M;&5M96YT4W1A='5S`'(W-3!?4T-325]4;U]&25,`<C<U,%]#;W)E4V%V94]R -M:6=I;F%L0T1"`'(W-3!?4T%405]0;W)T4F5S970`<C<U,%]'971/;F5#;VUM -M86YD4VQO=`!R-S4P7VUV7W)E<V5T7W!H>0!R-S4P7U=R:71E1$5,5E]17T5N -M=')Y`'(W-3!?;V1I;E]S971?:61L95]S=&%N9&)Y`'(W-3!?4T537U-E=$9A -M:6Q,960`<C<U,%]'9710349R;VU0;V]L`'(W-3!?359?17%U86QS`'(W-3!? -M2&%N9&QE0V]M;6%N9%%U975E`$%S<VEG;E-E<T]T:&5R16QE;65N=$]V97)A -M;&Q%;&5M96YT3G5M8F5R`'(W-3!?4T-325]!5$%?4F5A9%=R:71E5')A;G-L -M871I;VX`<C<U,%]335!?4T=024]?4V5T7T9A:6QL960`<C<U,%]2=6YT:6UE -M27-S=653;V9T4F5S971#86QL8F%C:P!R-S4P7U-'5&%B;&5?07!P96YD`'(W -M-3!?07-S:6=N1&5V:6-E3W9E<F%L;$5L96UE;G1.=6UB97(`<C<U,%]035]! -M<W-I9VY296=I<W1E<E-E=`!R-S4P7U-!5$%?4$U(;W1P;'5G4F5Q0V%L;&)A -M8VL`<&]R=%]S971?9F%I;%]L960`<C<U,%]5<&1A=&549W1$979-87``<C<U -M,%]305-?26YT97)N86Q297%#86QL8F%C:P!R-S4P7U5P9&%T951A<F=E=$1E -M=FEC97,`;V1I;E]E;5]A8V-E<W,`<C<U,%]3051!7T1E=FEC95-T871E36%C -M:&EN90!$979I8V5?4F5P;W)T3'5N4F5Q=65S=`!R-S4P7U!R945M<'1Y1&5V -M:6-E`'(W-3!?1$E30U]#:&5C:T1I<V-O=F5R4W1A=&4`<C<U,%]&<F5E4TU0 -M0V]N=&5X=`!R-S4P7T=E=$Y#451A9P!R-S4P7U-!5%-E;G-E1&%T80!R-S4P -M7U-'4$E/7U--4%)E<75E<W1?4F5A9`!R-S4P7U]?8V%N8V5L7W1I;65R`'(W -M-3!?1$E30U]'971297-O=7)C90!R-S4P7T-O<F5?<&%S<U]T:')U7V9I;&Q? -M=&%S:V9I;&4`<C<U,%]$25-#7T1O1&ES8V]V97(`<C<U,%]31U!)3U]);FET -M:6%L:7IE`'(W-3!?4&]R=%](86YD;&5$979I8V50;'5G:6X`<C<U,%]31U!) -M3U]3971?1F%I;&QE9`!S971?<&U?9F%I;%]L961S`'(W-3!?359?0V]P>5-' -M5&%B;&4`<C<U,%]$979I8V5?36%K95)E861#87!A8VET>51A<VM297%U97-T -M`'5P9&%T95]D979I8V5?8V]N9FEG`'(W-3!?0V]R95]-;V1U;&5%;F%B;&5$ -M:7-A8FQE25)1`'(W-3!?;6]D95!A9V5"=68`<C<U,%]305-?1&5V:6-E4W1A -M=&5-86-H:6YE`'(W-3!?5&%G7TEN:71?1DE&3P!R-S4P7T-O<F5?1FEL;%-E -M;G-E1&%T80!R-S4P7U!O<W1-86ME4V5S0V]N9FEG=7)A=&EO;E)E<75E<W0` -M<C<U,%]3051!7U!-7TAA;F1L941E=FEC95!L=6=I;@!R-S4P7U-#4TE?051! -M7U5P<&5R5V]R9`!-86ME1&5V26YF;P!R-S4P7U-!5$%?4$U3=&%T94UA8VAI -M;F4`<C<U,%]$25-#7U-E=%)E<V]U<F-E`$1E=FEC95]-86ME4')I=F%T95)E -M8W9397-297%U97-T`%!-7TES<W5E5W)I=&5&86EL3&5D`'(W-3!?4T%405]0 -M34EN:71297%#86QL8F%C:P!R-S4P7V]D:6Y?9FQA<VA?86-C97-S`'(W-3!? -M4T%405]0;W)T1&5V:6-E4F5A9'D`<C<U,%]486=?4F5L96%S94]N90!R-S4P -M7U-!4U]%<G)O<DAA;F1L:6YG`&-H96-K7U-A<T%D9'(`<C<U,%]&<F5E4T=" -M=69F97)4;U!O;VP`<C<U,%]$971E8W10;W)T5'EP90!R-S4P7U!O<G1?27-2 -M97%U97-T4G5N;FEN9P!R-S4P7T1)4T-?1V5T5&=T1&5V36%P`$1E=FEC95]4 -M97-T56YI=%)E861Y4F5Q=65S=`!R-S4P7T1E=FEC95]087)S94ED96YT:69Y -M1&%T80!R-S4P7V1E=FEC95]P<F]B95]D;VYE`'(W-3!?0F5E<$]F9@!G971? -M9FER<W1?<&T`<C<U,%]5<&1A=&53=&%T=7-6<U-E<T-O;G1R;VQ"=69F97(` -M<C<U,%])<W-U95]#;VYF:6=2;W5T94EN9F\`3V1I;E-025]396-T;W)5;G!R -M;W1E8W0`<C<U,%]#;W)E4F5S=&]R94]R:6=I;F%L0T1"`'-C<VEL=6Y?=&]? -M:6YT`'(W-3!?4T=486)L95]);FET`'(W-3!?4T%405]035]%<G)O<DAA;F1L -M:6YG`%-!5$%?2&%N9&QE4$U?2&]T4&QU9P!R-S4P7U-#4TE?051!7T9I;&Q, -M0D%#9&(Q-@!R-S4P7TES<W5E7T1I<V-O=F5R`$=E=$%T=$ED96YT:69Y1G)A -M;64`4T535&EM97)?26YT97)N86Q297%#86QL8F%C:P!G971?96YC7V-O=6YT -M`'(W-3!?0V%T96=O<GE?0T1"7U1Y<&4`<C<U,%],:7-T7T=E=$QA<W0`<C<U -M,%]&<F5E4$U4;U!O;VP`9V5T7VUI;E]P;5!A=&A)9`!R-S4P7T1E=FEC95]- -M86ME4F5A9$-A<&%C:71Y,39487-K4F5Q=65S=`!R-S4P7VUV7V1I<V%B;&5? -M<F5G:7-T97)?<V5T`'(W-3!?4T%405]0;W)T1&5V:6-E1&5T96-T960`<C<U -M,%]0;W)T7TAA;F1L955N<&QU9P!R-S4P7T%405]#1$(R5&%S:T9I;&4`4F5M -M;W9E4T%31&5V:6-E`'(W-3!?359?4F5M;W9E5&%R9V5T240`;V1I;E]S971? -M:&%R9%]D:7-K7VED96YT:69Y`'(W-3!?4T=486)L95]!=F%I;&%B;&4`4&]R -M=$UA<%]2-S4P`'(W-3!?4T%405]0<F5P87)E0V]M;6%N9%1A8FQE`$=E=$1E -M=DED96YT:69Y1G)A;64`:3)C0E]R96%D7V)Y=&5S`'-A<U]A9&1R97-S7V-O -M=6YT`'(W-3!?27-S=65?4F5P;W)T36%N=69A8W1U<F5R26YF;W)M871I;VX` -M<C<U,%]0<F5P87)E1&5L:79E<GE1=65U945N=')Y`%5P9&%T94AI;5!A=&A) -M9`!R-S4P7T9I;F12=6YN:6YG4F5Q0GE486<`<C<U,%]#;W)E7TUO9'5L95-H -M=71D;W=N`'(W-3!?4$U?0V]R95]297%4:6UE;W5T`'(W-3!?17AP86YD97)? -M4TU04F5Q7T-A;&QB86-K`'(W-3!?57!D871E5VED95!O<G10:'E-87``<C<U -M,%]305-?2&%N9&QE0E)$0U-4`'(W-3!?07-S:6=N4F5G:7-T97)3970`<C<U -M,%]397)V:6-E26YT97)R=7!T`'(W-3!?;79?9&ES86)L95]X;70`<C<U,%]3 -M35!297-P3&5N9W1H`'5P9&%T95]D979I8V5?8V]N9FEG7W8R`'(W-3!?27-S -M=65?4F5P;W)T4F]U=&5);F9O`'(W-3!?4&]S=$UA:V5397-%;F-L;W-U<F53 -M=&%T=7-297%U97-T`'(W-3!?17AP86YD97)?4TU04F5Q=65S=%]297!O<G1' -M96YE<F%L`'(W-3!?1V5T4TU04V-R871C:$9R;VU0;V]L`'(W-3!?1&5V:6-E -M7TUA:V5);G%U:7)Y5&%S:U)E<75E<W0`<C<U,%]#;W)E7TUO9'5L94=E=%)E -M<V]U<F-E475O=&$`<C<U,%]!<W-I9VY$979I8V5%;&5M96YT3G5M8F5R`'(W -M-3!?4&]R=%]&:6YD5&=T3F\`<C<U,%]31U!)3U]335!297%?0V%L;&)A8VL` -M<C<U,%]0;W)T7U-O9G1297-E=$-A;&QB86-K`'(W-3!?;79?<F5S971?>&UT -M`'(W-3!?;79#:&%N;F5L4W1A=&5-86-H:6YE`'(W-3!?4&]R=%]-;VYI=&]R -M`'(W-3!?4T%37U!O<G1297-E=`!R-S4P7U!O<W1-86ME4V5S16QE;65N=$1E -M<V-R:7!T;W)297%U97-T`'(W-3!?17AP86YD97)?4TU04F5Q=65S=%]297!O -M<G102%E3051!`'(W-3!?23)#7TUO9'5L94EN:71I86QI>F4`<C<U,%]O9&EN -M7W)E;6]V95]D979I8V4`<C<U,%]30U-)7T%405],;W=E<E=O<F0`<C<U,%]' -M971-87A.96=O=&EA=&5D3&EN:U)A=&4`<C<U,%]'9710;W)T1G)O;5!O;VP` -M<C<U,%]-5E]$=6UP4F5G:7-T97(`<C<U,%]%>'!A;F1E<E]335!297%U97-T -M7T1I<V-O=F5R`'(W-3!?1&5V:6-E7TUA:V5297%U97-T5&%S:U)E<75E<W0` -M9&,W,C@P7U-'5&%B;&5?07!P96YD`&1C-S(X,%]&<F5E4T%405-C<F%T8VA4 -M;U!O;VP`9&,W,C@P7U!O<G1?06)O<G1297%U97-T<P!D8S<R.#!?4T%405]0 -M;W)T2&%N9&QE26YT97)R=7!T`&1C-S(X,%]315-?4V5T1F%I;$QE9`!D8S<R -M.#!?4T%37TEN=&5R;F%L4F5Q0V%L;&)A8VL`9&,W,C@P7TES<W5E7U)E<&]R -M=$UA;G5F86-T=7)E<DEN9F]R;6%T:6]N`&1C-S(X,%]0;W)T7TUO;FET;W(` -M9&,W,C@P7T-O<F5?36%K941E=FEC95)E<V5T4F5Q`&1C-S(X,%]30U-)7U1O -M7T9)4P!D8S<R.#!?;V1I;E]R96UO=F5?9&5V:6-E`&1C-S(X,%]3051!7U!- -M26YI=%)E<4-A;&QB86-K`&1C-S(X,%]035]#;W)E7U)E<51I;65O=70`9&,W -M,C@P7T1)4T-?1V5T5&=T1&5V36%P`&1C-S(X,%]O9&EN7V9L87-H7V%C8V5S -M<P!D8S<R.#!?1G)E95--4%-C<F%T8VA4;U!O;VP`9&,W,C@P7T1I<V-O=F5R -M>4-A;&Q"86-K`&1C-S(X,%]486=?4F5L96%S94]N90!D8S<R.#!?0V]R95]- -M;V1U;&5396YD4F5Q=65S=`!D8S<R.#!?359?36%P5&]3<&5C:69I8U1A<F=E -M=$E$`&1C-S(X,%]'9710341E=FEC90!D8S<R.#!?4U107T1E=FEC95)E<V5T -M`&1C-S(X,%]'971#;W)E0V]N=&5X=$9R;VU0;V]L`&1C-S(X,%]-5E]);FET -M:6%L:7IE5&%R9V5T241486)L90!D8S<R.#!?4')E16UP='E$979I8V4`9&,W -M,C@P7T]D:6Y34$E?26YI=`!D8S<R.#!?051!7T-$0C)487-K1FEL90!D8S<R -M.#!?4TU04F5S<$QE;F=T:`!D8S<R.#!?;79?<F5S971?<&AY`&1C-S(X,%]0 -M;W)T7T9I;F149W1.;P!D8S<R.#!?4T=024]?5W)I=&5296=I<W1E<@!D8S<R -M.#!?0V]R95]);G1E<G)U<'1397)V:6-E4F]U=&EN90!D8S<R.#!?;79?9&ES -M86)L95]X;70`9&,W,C@P7U-!5$%?4&]R=$1E=&5C=`!D8S<R.#!?1G)E941E -M=FEC951O4&]O;`!D8S<R.#!?17AP86YD97)?4TU04F5Q7T-A;&QB86-K`&1C -M-S(X,%]$979I8V5?36%K95-E<U)C=D1I86=297%U97-T`&1C-S(X,%]0;W)T -M7U-O9G1297-E=$-A;&QB86-K`&1C-S(X,%])<W-U95]#;VYF:6=2;W5T94EN -M9F\`9&,W,C@P7U!O<G1?27-297%U97-T4G5N;FEN9P!D8S<R.#!?5F5R:69Y -M0V]M;6%N9$)E9F]R95-E;F1I;F<`9&,W,C@P7T1E=FEC95]-86ME4W1A<G13 -M=&]P56YI=%)E<75E<W0`9&,W,C@P7T9R965%>'!A;F1E<E1O4&]O;`!D8S<R -M.#!?0V]R95)E<W1O<F5/<FEG:6YA;$-$0@!D8S<R.#!?4&]S=$UA:V5397-% -M;F-L;W-U<F53=&%T=7-297%U97-T`&1C-S(X,%]D=6UP7W5N87-S;V-I871E -M9%]F:7,`9&,W,C@P7TU67UIE<F]-=E)E<75E<W0`9&,W,C@P7T=E=%!O<G1& -M<F]M4&]O;`!D8S<R.#!?1FEN9$%S8VEI3G5M8F5R`&1C-S(X,%]305-?4&]R -M=%)E<V5T`&1C-S(X,%]-5E]'971-87!P961)1`!D8S<R.#!?4T-325]!5$%? -M4F5A9%=R:71E5')A;G-L871I;VX`9&,W,C@P7U!O<W1-86ME4V5S0V]N9FEG -M=7)A=&EO;E)E<75E<W0`9&,W,C@P7T1E=FEC95]-86ME4F5Q=65S=%1A<VM2 -M97%U97-T`&1C-S(X,%]0;W)T7TAA;F1L941E=FEC95!L=6=I;@!D8S<R.#!? -M4$U?07-S:6=N4F5G:7-T97)3970`9&,W,C@P7T-O<F5?4F5S971#;613;&]T -M`&1C-S(X,%]M=E]D:7-A8FQE7VAB80!D8S<R.#!?7U]A9&1?=&EM97(`9&,W -M,C@P7U-#4TE?36%K94UO9&5086=E0V%C:&EN9P!D8S<R.#!?0T]215])<W-U -M95--4%)E<75E<W0`9&,W,C@P7T%S<VEG;D1E=FEC94]V97)A;&Q%;&5M96YT -M3G5M8F5R`&1C-S(X,%]7<FET941%3%9?45]%;G1R>0!D8S<R.#!?4T-325]! -M5$%?5F5R:69Y5')A;G-L871I;VX`9&,W,C@P7V-O<F5?:&%N9&QE7W1A<VMF -M:6QE7V5R<F]R`&1C-S(X,%]31U!)3U]335!297%U97-T7U=R:71E`&1C-S(X -M,%]305-?2&%N9&QE0V]M<&QE=&5D0V]M;6%N9`!D8S<R.#!?1&5V:6-E7TUA -M:V5296%D0V%P86-I='DQ-E1A<VM297%U97-T`&1C-S(X,%]0;W-T36%K95-E -M<T5L96UE;G13=&%T=7-297%U97-T`&1C-S(X,%]3051!7U!-7TAA;F1L941E -M=FEC95!L=6=I;@!D8S<R.#!?;V1I;E]S971?<W!I;E]U<%]M;V1E`&1C-S(X -M,%]#;W)E7TAA;F1L95=A:71I;F=,:7-T`&1C-S(X,%]0<F5P87)E1&5L:79E -M<GE1=65U945N=')Y`&1C-S(X,%]31U!)3U]335!297%U97-T7U)E860`9&,W -M,C@P7T1)4T-?0V%N8V5L1&ES8V]V97(`9&,W,C@P7U5P9&%T95=I9&50;W)T -M4&AY36%P`&1C-S(X,%](86YD;&5#;VUM86YD475E=64`9&,W,C@P7T1)4T-? -M1V5T4F5S;W5R8V4`9&,W,C@P7U-#4TE?051!7T9I;&Q,0D%#9&(Q-@!D8S<R -M.#!?0V]R95]-;V1U;&5%;F%B;&5$:7-A8FQE25)1`&1C-S(X,%]I,F-?<F5S -M970`9&,W,C@P7T9R965296=I<W1E<E-E=`!D8S<R.#!?0F5E<$]F9@!D8S<R -M.#!?1$E30U]#:&5C:T1I<V-O=F5R4W1A=&4`9&,W,C@P7T5X<&%N9&5R7U-- -M4%)E<75E<W1?4F5P;W)T1V5N97)A;`!D8S<R.#!?23)#7TUO9'5L94EN:71I -M86QI>F4`9&,W,C@P7V1E=FEC95]P<F]B95]D;VYE`&1C-S(X,%]296UO=F5$ -M979I8V4`9&,W,C@P7U)U;G1I;65)<W-U95-O9G1297-E=$-A;&QB86-K`&1C -M-S(X,%]31U!)3U]3971?1F%I;&QE9`!D8S<R.#!?1V5T36%X3F5G;W1I871E -M9$QI;FM2871E`&1C-S(X,%]&<F5E4T534T)4;U!O;VP`9&,W,C@P7TQI<W1? -M1V5T3&%S=`!D8S<R.#!?4$U?27-S=657<FET95)E9P!D8S<R.#!?<V5T7V9A -M:6Q?;&5D`&1C-S(X,%]486=?27-%;7!T>0!D8S<R.#!?57!D871E5&=T1&5V -M36%P`&1C-S(X,%]486=?26YI=`!D8S<R.#!?4T%405]034AO='!L=6=297%# -M86QL8F%C:P!D8S<R.#!?4&]S=$UA:V5397-%;&5M96YT1&5S8W)I<'1O<E)E -M<75E<W0`9&,W,C@P7T9R9650;W)T5&]0;V]L`&1C-S(X,%]-5E]-87!487)G -M971)1`!D8S<R.#!?4$U?27-S=65296%D4F5G`&1C-S(X,%]#;W)E7TUO9'5L -M95-H=71D;W=N`&1C-S(X,%]5<&1A=&50:'E);F9O`&1C-S(X,%]?7W)E;F5W -M7W1I;65R`&1C-S(X,%]$979I8V5?36%K95)E861#87!A8VET>51A<VM297%U -M97-T`&1C-S(X,%]'971$979I8V5&<F]M4&]O;`!D8S<R.#!?1V5T4T534T)& -M<F]M4&]O;`!D8S<R.#!?07-S:6=N16QE;65N=%-L;W1.=6UB97(`9&,W,C@P -M7U!O<G1?2&%N9&QE56YP;'5G`&1C-S(X,%]#;W)E7TUO9'5L95-T87)T`&1C -M-S(X,%]$:7-C;W9E<GE330!D8S<R.#!?4T-325]!5$%?0VAE8VM#;VYD:71I -M;VX`9&,W,C@P7TU67T-O<'E31U1A8FQE`&1C-S(X,%]3051!7T1E=FEC95-T -M871E36%C:&EN90!D8S<R.#!?1&5V:6-E7TUA:V5);G%U:7)Y5&%S:U)E<75E -M<W0`9&,W,C@P7T1E=FEC95]087)S94ED96YT:69Y1&%T80!D8S<R.#!?4T%4 -M4V5N<V5$871A`&1C-S(X,%]'971.0U%486<`9&,W,C@P7VUV0VAA;FYE;%-T -M871E36%C:&EN90!D8S<R.#!?4W1O<F5?0V]N9FEG4F]U=&5);F9O`&1C-S(X -M,%]31U1A8FQE7TEN:70`9&,W,C@P7T=E=$5X<&%N9&5R1G)O;5!O;VP`9&,W -M,C@P7U-!4U](86YD;&5"4D1#4U0`9&,W,C@P7T-O<F53879E3W)I9VEN86Q# -M1$(`9&,W,C@P7TU67T1U;7!297%U97-T`&1C-S(X,%],:7-T7T=E=$9I<G-T -M`&1C-S(X,%]30U-)7T%405]&:6QL1&%T849I96QD`&1C-S(X,%]30U-)7T%4 -M05]3>6YC0V%C:&54<F%N<VQA=&EO;@!D8S<R.#!?4T=024]?26YI=&EA;&EZ -M90!D8S<R.#!?1G)E95--4$-O;G1E>'0`9&,W,C@P7T9I;&Q%;F-L;W-U<F5% -M;&5M96YT4W1A='5S`&1C-S(X,%]#;W)E7TUO9'5L94EN:71I86QI>F4`9&,W -M,C@P7U-!5$%?4$U3=&%T94UA8VAI;F4`9&,W,C@P7T9R9650351O4&]O;`!D -M8S<R.#!?4T%405]0<F5P87)E0V]M;6%N9%1A8FQE`&1C-S(X,%]#;W)E7TUO -M9'5L94=E=%)E<V]U<F-E475O=&$`9&,W,C@P7T9R96531T)U9F9E<E1O4&]O -M;`!D8S<R.#!?5&%G7TEN:71?1DE&3P!D8S<R.#!?4T-325]!5$%?4F5A9$-A -M<&%C:71Y5')A;G-L871I;VY#86QL8F%C:P!D8S<R.#!?7U]035]C86YC96Q? -M=&EM97(`9&,W,C@P7TU67T1U;7!296=I<W1E<@!D8S<R.#!?4V5R=FEC94EN -M=&5R<G5P=`!D8S<R.#!?27-S=65?1&ES8V]V97(`9&,W,C@P7T1)4T-?1&]$ -M:7-C;W9E<@!D8S<R.#!?4T%405](86YD;&5$979I8V55;G!L=6<`9&,W,C@P -M7T-O<F5?26YT97)N86Q396YD4F5Q=65S=`!D8S<R.#!?1$E30U]3971297-O -M=7)C90!D8S<R.#!?4T%405]035](86YD;&5$979I8V55;G!L=6<`9&,W,C@P -M7U-!5$%?4&]R=$1E=FEC941E=&5C=&5D`&1C-S(X,%]5<&1A=&5487)G971$ -M979I8V5S`&1C-S(X,%]30U-)7T%405]3=&%R=%-T;W!4<F%N<VQA=&EO;@!D -M8S<R.#!?0V]R95]P87-S7W1H<G5?9FEL;%]T87-K9FEL90!D8S<R.#!?;79? -M9&ES86)L95]R96=I<W1E<E]S970`9&,W,C@P7T%S<VEG;D1E=FEC945L96UE -M;G1.=6UB97(`9&,W,C@P7T=E=$UI;DYE9V]T:6%T961,:6YK4F%T90!D8S<R -M.#!?;79?<V5T7U-!4T%D9'(`9&,W,C@P7U!-7T9R965296=I<W1E<E-E=`!D -M8S<R.#!?17AP86YD97)?4TU04F5Q=65S=%]0:'E#;VYT<F]L`&1C-S(X,%]- -M5E]%<75A;',`9&,W,C@P7T=E=%-'0G5F9F5R1G)O;5!O;VP`9&,W,C@P7U-# -M4TE?051!7TQO=V5R5V]R9`!D8S<R.#!?0VAE8VM$979I8V5#:&%N9V4`9&,W -M,C@P7U-!4U]%<G)O<DAA;F1L:6YG`&1C-S(X,%]"965P3VX`9&,W,C@P7U-' -M4$E/7U--4%)E<5]#86QL8F%C:P!D8S<R.#!?4T=486)L95]!=F%I;&%B;&4` -M9&,W,C@P7U--4%]31U!)3U]3971?1F%I;&QE9`!D8S<R.#!?0V]R95]&:6QL -M4V5N<V5$871A`&1C-S(X,%]'971335!38W)A=&-H1G)O;5!O;VP`9&,W,C@P -M7U-!5$%?4&]R=$1E=FEC95)E861Y`&1C-S(X,%]M=E]E;F%B;&5?>&UT`&1C -M-S(X,%]!<W-I9VY296=I<W1E<E-E=`!D8S<R.#!?;V1I;E]I;V-T;`!D8S<R -M.#!?27-S=65?4F5P;W)T4F]U=&5);F9O`&1C-S(X,%]'971);G1E<FYA;%)E -M<49R;VU0;V]L`&1C-S(X,%]#:&5C:U1A<F=E=$-H86YG90!D8S<R.#!?1&5V -M:6-E7U=R:71E4V5S0V]N=')O;$1I86<`9&,W,C@P7T-O;7!L971E4F5Q=65S -M=`!D8S<R.#!?4G5N=&EM94ES<W5E4V]F=%)E<V5T`&1C-S(X,%]$979I8V5? -M27-S=653;V9T4F5S970`9&,W,C@P7U-!5$%?2&%N9&QE1&5V:6-E4&QU9VEN -M`&1C-S(X,%]0<F5P87)E06YD4V5N9$-O;6UA;F0`9&,W,C@P7U!R945M<'1Y -M4$T`9&,W,C@P7U-#4TE?36%K94-A8VAE0V]M;6%N9`!D8S<R.#!?0V]M<&QE -M=&5297%U97-T06YD4VQO=`!D8S<R.#!?1$E30U]'971.96=O=&EA=&5D3&EN -M:U)A=&4`9&,W,C@P7T9I;F12=6YN:6YG4F5Q0GE486<`9&,W,C@P7W-E=%]F -M86EL7VQE9',`9&,W,C@P7T9I;F1&<F5E4TU00V]N=&5X=`!D8S<R.#!?4T%3 -M7T1E=FEC95-T871E36%C:&EN90!D8S<R.#!?1FEN9%1G=$YO`&1C-S(X,%]) -M<W-U95]297!O<G1'96YE<F%L`&1C-S(X,%]#86QC=6QA=&52;W5T94EN9&5X -M`&1C-S(X,%]M=E]R97-E=%]X;70`9&,W,C@P7TU67T-20P!D8S<R.#!?4T-3 -M25]!5$%?4F5A9$-A<&%C:71Y5')A;G-L871I;VX`9&,W,C@P7TU67U)E;6]V -M951A<F=E=$E$`&1C-S(X,%]3051!7U!-7T5R<F]R2&%N9&QI;F<`9&,W,C@P -M7U5P9&%T95-T871U<U9S4V5S0V]N=')O;$)U9F9E<@!D8S<R.#!?0V]R95]' -M9713=7!P;W)T961#;W5N=',`9&,W,C@P7TU67U-E=$Q"06%N9%-E8W1O<D-O -M=6YT`&1C-S(X,%]$979I8V5?36%K94UO9&5396QE8W1297%U97-T`&1C-S(X -M,%]'971/;F5#;VUM86YD4VQO=`!D8S<R.#!?4T=024]?4F5A9%)E9VES=&5R -M`&1C-S(X,%]%>'!A;F1E<E]335!297%U97-T7U)E<&]R=%!(65-!5$$`9&,W -M,C@P7U!O<G1?2&%N9&QE4&QU9VEN`&1C-S(X,%]#;W)E7U)E<51I;65O=70` -M9&,W,C@P7VUO9&5086=E0G5F`&1C-S(X,%]2=6YT:6UE27-S=65296%D3&]G -M17AT`&1C-S(X,%]30U-)7T%405]5<'!E<E=O<F0`9&,W,C@P7T9R965#;W)E -M0V]N=&5X=%1O4&]O;`!D8S<R.#!?4T537TEN=&5R;F%L4F5Q0V%L;&)A8VL` -M9&,W,C@P7U-!5$%?17)R;W)(86YD;&EN9P!D8S<R.#!?1V5T4$U&<F]M4&]O -M;`!D8S<R.#!?1&5T96-T4&]R=%1Y<&4`9&,W,C@P7T1E=FEC95]-86ME36]D -M95-E;G-E4F5Q=65S=`!D8S<R.#!?4T-325]!5$%?1FEL;$Q"04-D8C$P`&1C -M-S(X,%]?7V-A;F-E;%]T:6UE<@!D8S<R.#!?4T%405]0;W)T4F5S970`9&,W -M,C@P7V]D:6Y?<V5T7VED;&5?<W1A;F1B>0!D8S<R.#!?17AP86YD97)?4TU0 -M4F5Q=65S=%]$:7-C;W9E<@!D8S<R.#!?5&%G7T=E=$]N90!D8S<R.#!?4T%4 -M05]0<F5P87)E0V]M;6%N9$AE861E<@!D8S<R.#!?0V%T96=O<GE?0T1"7U1Y -M<&4`9&,W,C@P7T9R965);G1E<FYA;%)E<51O4&]O;`!D8S<R.#!?1V5T4T%4 -M05-C<F%T8VA&<F]M4&]O;`!3=V%P2'!T365T858S`&QD;5]S<&EN=7!?=F1E -M=@!R87=?8VAE8VM?9&ES:U]D97-C<FEP=&]R`&QD;5]C:&5C:U]A<G)A>0!L -M9&U?<F5C:&5C:U]A;&P`=F1E=E]C;&%S<U]L:7-T`')A=U]I9&QE7W1I;65R -M7W)E<V5T`&QD;5]D96QE=&5?<&%R=&ET:6]N`&QD;5]S>6YC7V-H86YG961? -M87)R87ES`&=R96)U:6QD;VYE<G)O<@!L9&U?<75E=65?979E;G0`=')A;G-F -M;W)M7VYE961E9`!L9&U?8VAE8VM?=')A;G-F;W)M`&QD;5]F:7AU<%]A<G)A -M>5]S=&%T90!C86QC7W)E8G5I;&1?<')O9W)E<W,`=F)U<U]E>'1?<VEZ90!S -M971?=')A;G-F;W)M7W-T97!?:6YF;P!L9&U?:61L95]T:6UE<@!L9&U?9FEN -M9%]V9&5V7W)A=P!L9&U?<F5P<F]B95]D979I8V4`8V%L8U]T<F%N<V9O<FU? -M<')O9W)E<W,`;&1M7V9I;F1?=F1E=E]C;&%S<P!L9&U?86QL;V-?<&%R=&ET -M:6]N`&QD;5]I;FET7V1I<VL`<F5F<F5S:%]R87=?9&5V7VEN9F\`7V1E;&5T -M95]R87=?<&%R=`!R87=?<F5A9%]W<FET95]S96-T;W)S`&=I9&QE<W1A;F1B -M>71I;65O=70`<F%W7V-H96-K7V%R<F%Y7V1E<V-R:7!T;W(`;&1M7V-R96%T -M95]V9&5V7W)A=P!U;G!L=6=?<F%W7W9D978`0VAE8VM3=6T`8V]M<&%R95]S -M;&]T7W-E<5]B>5]P8VEA9&1R`&QD;5]A9&1?9&ES:U]T;U]A<G)A>0!L9&U? -M<WEN8U]D:7-K7VEN9F\`9V5T7V)I=',`4W=A<$AP=$UE=&%6-`!R87=?8V]N -M=F5R=%]S<&%R95]T;U]L96=A8WD`9DYO=&EF>4=520!L9&U?9FQU<VA?86QL -M7W1A<F=E=',`;&1M7W-T87)T7W)E8G5I;&0`;&1M7W-P:6YD;W=N7V%L;%]R -M87=D979S`%]?;&1M7V9I;FES:%]C;60`241?5$]?5D1%5@!?7W9D979?<75E -M=65?8VUD`')A=U]I9&QE7W1I;65R7V-H96-K`&=E=%]S=')I<%]I;F9O`&QD -M;5]R97-U;65?861A<'1E<@!H<'1N<E]L9&U?<F5G:7-T97)?:&EM7U)?-E\U -M-5\W-5\T-E\V-`!H<'1N<E]G1VQO8F%L3F-Q1FQA9P!H<'1N<E]O<U]R97%U -M97-T7W1I;65R`&AP=&YR7V1M87!O;VQ?9V5T7W!A9V4`:'!T;G)?;W-?9V5T -M7W-T86UP`&AP=&YR7VQD;5]S=7-P96YD`&AP=&YR7VQD;5]I9&QE`&AP=&YR -M7VQD;5]G971?;65M7VEN9F\`:'!T;G)?;&1M7W)E;6]V95]T:6UE<@!H<'1N -M<E]P8VEC9F=?<F5A9%]D=V]R9`!H<'1N<E]D;6%P;V]L7VUA:V5?;W)D97(` -M:'!T;G)?;&1M7V=E=%]V8G5S7V5X=`!H<'1N<E]L9&U?<F5L96%S95]V9&5V -M`&AP=&YR7V9R965L:7-T7W)E<V5R=F5?9&UA`&AP=&YR7VQD;5]I;G1R`&UE -M;6-P>0!H<'1N<E]L9&U?;VY?=&EM97(`:'!T;G)?;&1M7V=E=%]C;61?<VEZ -M90!H<'1N<E]L9&U?9G)E95]C;61S`&AP=&YR7VQD;5]C<F5A=&5?=F1E=@!H -M<'1N<E]L9&U?861D7W-P87)E7W1O7V%R<F%Y`&AP=&YR7V=R96)U:6QD<')I -M;W)I='D`:'!T;G)?;&1M7W-Y;F-?87)R87E?:6YF;P!H<'1N<E]O<U]M87!? -M<&-I7V)A<@!H<'1N<E]?7VQD;5]A;&QO8U]C;60`:'!T;G)?:6YI=%]M;V1U -M;&5?=F1E=E]R87<`:'!T;G)?;&1M7W-E=%]A=71O<F5B=6EL9`!H<'1N<E]? -M7V1U;6UY7W)E9P!H<'1N<E]D;6%P;V]L7V%C=&EV90!H<'1N<E]V8G5S7VQI -M<W0`:'!T;G)?;&1M7W%U975E7W9B=7-?9'!C`&AP=&YR7VQD;5]R97-E=%]V -M8G5S`&AP=&YR7V=31U!)3U!A<G13=7!P;W)T`&AP=&YR7VEN:71?;6]D=6QE -M7VAI;5]R-S4P`&AP=&YR7VQD;5]R96QE87-E7VQO8VL`:'!T;G)?;W-?=6YM -M87!?<&-I7V)A<@!H<'1N<E]L9&U?<VAU=&1O=VX`:'!T;G)?:&EM7VQI<W0` -M:'!T;G)?;&1M7W)E<75E<W1?=&EM97(`:'!T;G)?;&1M7W)E<W5M90!H<'1N -M<E]L9&U?9V5T7V1E=FEC95]I9`!H<'1N<E]O<U]S8VAE9'5L95]T87-K`&AP -M=&YR7VQD;5]I;V-T;`!H<'1N<E]G4W!I;G5P3VYE1&5V16%C:%1I;64`:'!T -M;G)?9G)E96QI<W1?<'5T`&AP=&YR7V]S7W-T86QL97AE8P!H<'1N<E]G7VQE -M9V%C>5]M;V1E`&AP=&YR7VQD;5]A;&QO8U]C;61S7U)?-E\U-5\W-5\T-E\V -M-`!H<'1N<E]L9&U?<G5N`&AP=&YR7VEN:71?;6]D=6QE7VAI;5]D8S<R.#`` -M:'!T;G)?;&1M7V9R965?8VUD<U]T;U]L:7-T`&AP=&YR7V]S7VUA>%]C86-H -M95]S:7IE`&AP=&YR7W9D979?<75E=65?8VUD`&AP=&YR7V]S7V=E=%]V8G5S -M7W-E<0!H<'1N<E]L9&U?<WEN8U]A<G)A>5]S=&%M<`!H<'1N<E]L9&U?<75E -M=65?8VUD`&AP=&YR7V]S7W!R:6YT:P!H<'1N<E]F<F5E;&ES=%]R97-E<G9E -M`&AP=&YR7V1M87!O;VQ?<'5T7W!A9V4`:'!T;G)?9G)E96QI<W1?9V5T`&AP -M=&YR7VQD;5]U;G)E9VES=&5R7V1E=FEC90!H<'1N<E]L9&U?<F5G:7-T97)? -M861A<'1E<@!H<'1N<E]G875T;W)E8G5I;&0`:'!T;G)?;&1M7V=E=%]V8G5S -M7W-I>F4`:'!T;G)?9&5L87E?8F5T=V5E;E]S<&EN=7``:'!T;G)?;&1M7V=E -M;F5R:6-?;65M8F5R7V9A:6QE9`!H<'1N<E]D;6%P;V]L7V=E=%]P86=E7V%T -M`&AP=&YR7VQD;5]E=F5N=%]N;W1I9GD`:'!T;G)?;&1M7V-R96%T95]V8G5S -M`&AP=&YR7VAI;5]H86YD;&5?=&]?=F)U<P!H<'1N<E]F<F5E;&ES=%]G971? -M9&UA`&AP=&YR7VQD;5]G971?;F5X=%]V8G5S`&AP=&YR7V]S7W!C:5]W<FET -M96P`:'!T;G)?;&1M7V9I;F1?=&%R9V5T`&AP=&YR7V1M87!O;VQ?<F5G:7-T -M97)?8VQI96YT`&AP=&YR7VQD;5]I;FET:6%L:7IE7W9B=7-?87-Y;F,`:'!T -M;G)?;W-?<75E<GE?=&EM90!H<'1N<E]O<U]Q=65R>5]R96UO=F5?9&5V:6-E -M`&AP=&YR7VQD;5]R96=I<W1E<E]D979I8V4`:'!T;G)?;W-?<&-I7W)E861L -M`&AP=&YR7VQD;5]A8W%U:7)E7VQO8VL`:'!T;G)?;W-?<F5V86QI9&%T95]D -M979I8V4`:'!T;G)?9&UA<&]O;%]I;FET`&AP=&YR7VQD;5]F:6YI<VA?8VUD -M`&AP=&YR7VQD;5]I9&5?9FEX<W1R:6YG`&AP=&YR7V1M87!O;VQ?;6%X7V-L -M87-S7W!A9V5S`&AP=&YR7VQD;5]R96=I<W1E<E]V9&5V7V-L87-S7U)?-E\U -M-5\W-5\T-E\V-`!H<'1N<E]N=6U?9')I=F5S7W!E<E]S<&EN=7``:'!T;G)? -M;&1M7W)E;&5A<V5?=F)U<P!H<'1N<E]L9&U?<75E=65?=&%S:P!H<'1N<E]L -M9&U?86QL;V-?8VUD<U]F<F]M7VQI<W0`:'!T;G)?9G)E96QI<W1?<'5T7V1M -M80!H<'1N<E]L9&U?=&EM97)?<')O8F5?9&5V:6-E`&AP=&YR7VQD;5]F:6YD -M7W-T86UP`&AP=&YR7VQD;5]C:&5C:U]A<G)A>5]O;FQI;F4`:'!T;G)?9U!R -M;V)E26Y);FET:6%L:7II;F<`:'!T;G)?;&]G7W-E8W1O<E]R97!A:7(``'D` -M`````````@```(L```#\_________Y(``````````@```)0```#\________ -M_Z<``````````@```"T```#\_________S4!````````"P````$````P```` -M`````$T!`````````@```.P```#\_________V,!`````````@```*\```#\ -M_________VX!`````````@```#\```#\_________X8!`````````@```*0" -M``#\_________Y$!`````````@```$,```#\_________[`!`````````@`` -M`"H```#\_________[\!`````````@```%@```#\_________\H!```````` -M`@```"T```#\_________^@!`````````@```"T```#\_________P,"```` -M`````@```%<```#\_________R`"`````````@```*$```#\_________X(" -M`````````@```.P```#\_________Y8"`````````@```*\```#\________ -M_S@%`````````@```$\```#\_________[H'````````"P````,````````` -M`````%\(````````"P````4``````````````&D(`````````@```*\"``#\ -M_________W0(````````"P````8``````````````'X(`````````@```*\" -M``#\_________\`(`````````@```(8"``#\_________Z`)`````````@`` -M`)("``#\_________\T)`````````@```)("``#\_________RT*```````` -M`@```)("``#\_________Z\*`````````@```)("``#\_________^D*```` -M`````@```)("``#\_________TX+`````````@```*0"``#\_________XD+ -M`````````@```*0"``#\_________]<+`````````@```*0"``#\________ -M_Q(,`````````@```*0"``#\_________V@,`````````@```!$!``#\____ -M_____W(,`````````@```*0"``#\_________WP,`````````@```&@```#\ -M_________U<-`````````@```)("``#\_________W0-`````````@```)(" -M``#\_________X,-`````````@```*0"``#\_________Y\-`````````@`` -M`)("``#\_________[P-`````````@```)("``#\_________^H-```````` -M`@```)("``#\__________0-`````````@```)("``#\_________QP.```` -M`````@```*0"``#\_________RD.`````````@```)("``#\_________U$. -M`````````@```*0"``#\_________UX.`````````@```)("``#\________ -M_X\.`````````@```)("``#\_________\`.`````````@```)("``#\____ -M_____R4/`````````@```)("``#\_________T4/`````````@```)("``#\ -M_________VP/`````````@```)("``#\_________XP/`````````@```)(" -M``#\_________[P/`````````@```)("``#\_________\8/`````````@`` -M`)("``#\__________(/`````````@```*0"``#\_________P(0```````` -M`@```)("``#\_________RH0`````````@```*0"``#\_________SH0```` -M`````@```)("``#\_________T02`````````@```)("``#\_________XP2 -M`````````@```-0```#\_________[@2`````````@```-0```#\________ -M_R83`````````@```"\```#\_________X03`````````@```'\"``#\____ -M_____Y`3`````````@```/8```#\_________ZD3`````````@```&D```#\ -M_________U$4`````````@```"\```#\_________X`4`````````@```!@` -M``#\_________Y$4`````````@```+,```#\_________Z04````````"P`` -M``8````-`````````*X4`````````@```*\"``#\_________\,4```````` -M`@```+H"``#\_________]@4`````````@```+H"``#\__________`4```` -M`````@```#L```#\_________Q(5`````````@```)("``#\_________PP6 -M````````"P```)8``````````````!$6`````````@```,,```#\________ -M__(6`````````@```((```#\__________T6`````````@```"T```#\____ -M_____^X7`````````@```+T```#\_________T8;`````````@```/0```#\ -M_________[X;`````````@```.````#\_________P$<`````````@```+T` -M``#\_________YP<````````"P````,`````!````````+4<`````````@`` -M`!L```#\_________^<<`````````@```!L```#\_________Q<=```````` -M`@```!L```#\_________T,=`````````@```!L```#\_________WH=```` -M`````@```$X```#\_________\8=`````````@````D!``#\_________U@> -M`````````@```*````#\_________Y<>`````````@```!0```#\________ -M_\$>`````````@```*0"``#\_________P<A`````````@```*,```#\____ -M_____Q8A`````````@```'D```#\_________\TA`````````@```/P```#\ -M_________T@B`````````@```,(```#\_________V4B`````````@```/P` -M``#\_________[HC`````````@```(4```#\_________\TC`````````@`` -M``(!``#\_________STD`````````@```(4```#\_________VDD```````` -M`@````(!``#\_________P(F`````````@```$4```#\_________^HF```` -M`````@```(8"``#\_________P0G````````"P````,```!0!````````)<G -M`````````@```!,```#\_________Z8G`````````@```!,```#\________ -M_R,H`````````@```(4```#\_________T\H`````````@````(!``#\____ -M_____[PH`````````@````<!``#\__________`H`````````@```+$```#\ -M_________P@I`````````@````<!``#\_________QDI`````````@````\! -M``#\_________S$I`````````@````<!``#\_________X$I`````````@`` -M`*4```#\__________0I`````````@```&D```#\_________P8J```````` -M`@```'````#\_________Z(J`````````@```)(```#\_________QLK```` -M`````@```)(```#\_________R@K`````````@```"0```#\_________U$K -M`````````@```)(```#\_________VPK`````````@```-X```#\________ -M_YDK`````````@```%````#\_________V,L`````````@```'(```#\____ -M_____X8L`````````@```-X```#\_________Z\L`````````@```)L```#\ -M_________]8L`````````@```)(```#\_________]XL`````````@```)L` -M``#\_________P,M`````````@```-X```#\_________VDM`````````@`` -M`#P```#\_________[<M`````````@```%8```#\_________]LM```````` -M`@```&D```#\_________Q(N`````````@```+H"``#\_________R8N```` -M`````@```#P```#\_________T0N`````````@```$,```#\_________TXN -M`````````@```*0"``#\_________Y,N`````````@```+@```#\________ -M_YHN`````````@```.X```#\_________]HN`````````@```#P```#\____ -M_____^TN`````````@```%D```#\__________4N`````````@```)L```#\ -M_________W\O`````````@```)("``#\_________ZLO`````````@```)(" -M``#\_________^0O`````````@```)("``#\_________R(P````````"P`` -M``4```!8`````````"PP`````````@```*\"``#\_________V4P```````` -M`@```+X```#\_________[LP`````````@```+X```#\_________]`P```` -M`````@```,````#\_________]LP`````````@```'(```#\_________XTQ -M`````````@```-L```#\_________[0Q`````````@```-X```#\________ -M_^0Q`````````@```&D```#\_________X(R`````````@```-L```#\____ -M_____Z0R`````````@```-X```#\_________^<R`````````@```&X```#\ -M_________Q,T`````````@```)("``#\_________S$T`````````@```)(" -M``#\_________TXT`````````@```)("``#\_________[,T`````````@`` -M`)("``#\_________]LT`````````@```)("``#\_________T<U```````` -M`@```-P```#\_________Z0U`````````@```)("``#\_________\<U```` -M`````@```)("``#\_________^HU`````````@```)("``#\__________(U -M`````````@```&4```#\_________^<V`````````@```!(!``#\________ -M_PHW`````````@```(8"``#\_________^TW`````````@```(8"``#\____ -M_____ULX`````````@```(8"``#\_________X\X`````````@```)("``#\ -M_________\HX`````````@```)("``#\_________QXY`````````@```)(" -M``#\__________PY`````````@```(8"``#\_________TL[`````````@`` -M`(8"``#\_________],[`````````@```(8"``#\_________^8[```````` -M"P````,```"P"0```````'D\`````````@```*0"``#\_________^D\```` -M`````@```)("``#\_________PD]`````````@```)("``#\_________RH] -M````````"P````8````C`````````#0]`````````@```*\"``#\________ -M_SX]`````````@```!`!``#\_________ZH]`````````@```)("``#\____ -M_____S(^`````````@```!`!``#\_________T$^`````````@```!`!``#\ -M_________P`_`````````@```-L```#\_________QD_`````````@```-X` -M``#\_________\<_`````````@```#8```#\_________R]!`````````@`` -M`"$```#\_________S]!`````````@```"\```#\_________X-!```````` -M`@```'$```#\_________^Y!`````````@```-L```#\__________E!```` -M`````@```#8```#\_________Q)"`````````@```-X```#\_________V=" -M`````````@```&D```#\_________]5"`````````@```&\```#\________ -M_P9#`````````@```&D```#\_________[5#`````````@```&D```#\____ -M_____^I#`````````@```"\```#\__________M#`````````@```)L```#\ -M_________TE$`````````@```)("``#\_________W)$`````````@```)(" -M``#\_________Z-$`````````@```)("``#\_________[A$`````````@`` -M`*H```#\_________RQ%`````````@```)("``#\_________[%%```````` -M`@```)("``#\_________]Q%`````````@```)("``#\_________^Y%```` -M`````@```)````#\_________S%&`````````@```)("``#\_________U9& -M`````````@```)("``#\_________]-&`````````@```)("``#\________ -M__Q&`````````@```)("``#\_________RA'`````````@```'\"``#\____ -M_____TE'`````````@```/H```#\_________XE'`````````@```&D```#\ -M_________[]'`````````@```+H"``#\_________]-'`````````@```#P` -M``#\__________%'`````````@```(8```#\__________M'`````````@`` -M`*0"``#\_________RM(````````"P````$```!P70```````%E(```````` -M`@```)T"``#\_________X-(`````````@```)("``#\_________YA(```` -M`````@```)("``#\_________\!(`````````@```)("``#\_________]5( -M`````````@```)("``#\_________P9)`````````@```)("``#\________ -M_SU)`````````@```)("``#\_________WM)`````````@```)("``#\____ -M_____Z-)`````````@```)("``#\_________]A)`````````@```)("``#\ -M_________P]*`````````@```)("``#\_________W9*`````````@```)(" -M``#\_________YM*`````````@```)("``#\_________\!*`````````@`` -M`)("``#\_________^5*`````````@```)("``#\_________R1+```````` -M`@```'\"``#\_________UY+`````````@```+H"``#\_________W)+```` -M`````@```#P```#\_________X1+`````````@```$,```#\_________XY+ -M`````````@```*0"``#\_________[M+````````"P```.X````````````` -M`--+`````````@```)T"``#\__________Y+`````````@```)("``#\____ -M_____S!,`````````@```)("``#\_________VE,`````````@```)("``#\ -M_________Y5,`````````@```)("``#\_________]I,`````````@```'\" -M``#\__________1,`````````@```&D```#\_________R1-`````````@`` -M`+H"``#\_________T)-````````"P````X!`````````````%1-```````` -M`@```)T"``#\_________X--`````````@```)("``#\_________ZE-```` -M`````@```)("``#\_________\=-`````````@```*0"``#\_________]Q- -M`````````@```)("``#\_________P).`````````@```)("``#\________ -M_RA.`````````@```)("``#\_________T9.`````````@```*0"``#\____ -M_____UM.`````````@```)("``#\_________X!.`````````@```)("``#\ -M_________T9/`````````@```)("``#\_________VM/`````````@```*0" -M``#\_________YM/`````````@```)("``#\_________\)/`````````@`` -M`*0"``#\__________5/`````````@```)("``#\_________QQ0```````` -M`@```*0"``#\_________V)0`````````@```,8```#\_________WU0```` -M`````@```(<```#\_________XE0`````````@```!(```#\_________[M0 -M`````````@```$$```#\_________^]0`````````@```!<```#\________ -M_QQ1`````````@```!(```#\_________P)2`````````@```*0"``#\____ -M_____RE2`````````@```)("``#\_________TA2`````````@```*0"``#\ -M_________VM2`````````@```)("``#\_________Y=2`````````@```*0" -M``#\_________[Y2`````````@```)("``#\_________^)2`````````@`` -M`*0"``#\_________P93`````````@```)("``#\_________R=3```````` -M`@```&D```#\_________Z13`````````@```#P```#\_________]]3```` -M`````@```#P```#\_________^M3`````````@```!(```#\_________RU4 -M`````````@```&D```#\_________U)4`````````@```&D```#\________ -M_W-4`````````@```'\"``#\_________Y14`````````@```$,```#\____ -M_____YY4`````````@```*0"``#\_________U95`````````@```"\```#\ -M_________WY5`````````@```!@```#\_________X]5`````````@```+,` -M``#\_________Z)5````````"P````8````-`````````*Q5`````````@`` -M`*\"``#\_________\%5`````````@```+H"``#\_________]95```````` -M`@```+H"``#\__________-5`````````@```#L```#\_________Q)6```` -M`````@```(P```#\_________SY6`````````@```&D```#\_________V96 -M`````````@```$,```#\_________W!6`````````@```*0"``#\________ -M_Z-6`````````@```!@```#\_________[16`````````@```+,```#\____ -M_____\=6````````"P````8````-`````````-%6`````````@```*\"``#\ -M_________^96`````````@```+H"``#\__________M6`````````@```+H" -M``#\_________Q-7`````````@```#L```#\_________RA7`````````@`` -M`$$```#\_________ZE7`````````@```)("``#\_________\M7```````` -M`@```*0"``#\_________^Y7`````````@```)("``#\_________Q%8```` -M`````@```)("``#\_________S-8`````````@```*0"``#\_________U=8 -M`````````@```)("``#\_________^)8`````````@```/H```#\________ -M_^Y8`````````@```'X```#\_________S59`````````@```'8```#\____ -M_____T)9`````````@```/L```#\_________WA9`````````@```*0"``#\ -M_________Y-9`````````@```)("``#\_________[)9`````````@```)(" -M``#\_________]%9`````````@```!(```#\_________]E9`````````@`` -M``T!``#\_________P%:`````````@```)X```#\_________XA:```````` -M`@````X!``#\_________Y5:`````````@```&D```#\_________R!;```` -M`````@```",!``#\_________U1;`````````@```+@```#\_________XU; -M`````````@```,T```#\_________Z5;`````````@```+H"``#\________ -M_[U;`````````@```+H"``#\_________^I;`````````@```*0"``#\____ -M_____P5<`````````@```)("``#\_________R)<`````````@```)("``#\ -M_________T%<`````````@```!(```#\_________TE<`````````@````T! -M``#\_________X]<`````````@```,8```#\_________]1<`````````@`` -M`&D```#\_________U-=`````````@```)X```#\_________V)=```````` -M`@```"$!``#\_________]M=`````````@```)("``#\_________PI>```` -M`````@```)("``#\_________R)>`````````@```'0```#\_________R]> -M`````````@```/L```#\_________YE>`````````@```'@```#\________ -M_[Q>`````````@```-X```#\_________^1>`````````@```)L```#\____ -M_____PA?`````````@```)(```#\_________Q!?`````````@```)L```#\ -M_________UE?`````````@```-X```#\_________ZI?`````````@```#P` -M``#\_________[E?`````````@```&D```#\_________^A?`````````@`` -M`+H"``#\__________Q?`````````@```#P```#\_________Q1@```````` -M`@```$,```#\_________QY@`````````@```*0"``#\_________SY@```` -M`````@```.X```#\_________VU@`````````@```-X```#\_________Y]@ -M`````````@```#P```#\_________[9@`````````@```&D```#\________ -M_])@`````````@```!@```#\_________^-@`````````@```+,```#\____ -M______A@`````````@```+H"``#\_________PUA`````````@```+H"``#\ -M_________R!A`````````@```#L```#\_________S)A`````````@```/8` -M``#\_________TMA`````````@```)("``#\_________Z5A`````````@`` -M`!(```#\_________[!A`````````@```$$```#\_________T9B```````` -M`@```)("``#\_________V9B`````````@```"$```#\_________W9B```` -M`````@```"\```#\_________YEB`````````@```"$```#\_________Z%B -M`````````@```"D!``#\_________[IB````````"P````,````0"@`````` -M`-%B`````````@```"L!``#\_________^UB`````````@```"L!``#\____ -M_____PEC`````````@```#P```#\_________RQC`````````@```%8```#\ -M_________T-C`````````@```*0```#\_________V9C`````````@```#P` -M``#\_________X1C`````````@```%8```#\_________YMC`````````@`` -M`#P```#\_________ZUC`````````@```*0```#\_________\AC```````` -M`@```#P```#\_________]UC`````````@```#P```#\_________Q1D```` -M`````@```$,```#\_________QYD`````````@```*0"``#\_________Y%D -M`````````@```*<```#\_________ZMD`````````@```*T```#\________ -M_\1D`````````@```!@```#\_________]5D`````````@```+,```#\____ -M_____^AD````````"P````8````-`````````/)D`````````@```*\"``#\ -M_________PAE`````````@```+H"``#\_________QYE`````````@```+H" -M``#\_________S%E`````````@```#L```#\_________U5E`````````@`` -M`&D```#\_________XQE`````````@```!\!``#\_________]QE```````` -M`@```'<```#\_________P)F`````````@```&D```#\_________[UF```` -M`````@```*H```#\_________\9G`````````@```-L```#\__________EG -M`````````@```.T```#\__________]H`````````@```(8"``#\________ -M_R-I`````````@```)("``#\_________UQI`````````@```)("``#\____ -M_____ZQI`````````@```)("``#\_________]=I````````"P````4```"H -M`````````.%I`````````@```*\"``#\__________QI`````````@````L! -M``#\_________TEJ`````````@```)("``#\_________V]J`````````@`` -M`)("``#\_________Y-J`````````@```)("``#\_________REK```````` -M`@```)("``#\_________U1K````````"P````8````^`````````%YK```` -M`````@```*\"``#\_________XUK`````````@```&4```#\_________Z-K -M`````````@```)("``#\_________XAL`````````@```)L```#\________ -M_Z5L`````````@```$T```#\_________R5M`````````@```#````#\____ -M_____SEM`````````@```,$```#\_________UIM`````````@```+`"``#\ -M_________WQM`````````@```+`"``#\_________YUM`````````@```+`" -M``#\_________[MM`````````@```+`"``#\_________^%M`````````@`` -M`+`"``#\_________PQN`````````@```+`"``#\_________R9N```````` -M`@```+`"``#\_________T!N`````````@```+`"``#\_________UYN```` -M`````@```+`"``#\_________WAN`````````@```+`"``#\_________YIN -M`````````@```+`"``#\_________[QN`````````@```+`"``#\________ -M_]EN`````````@```+`"``#\__________9N`````````@```+`"``#\____ -M_____Q-O`````````@```+`"``#\_________S!O`````````@```+`"``#\ -M_________TQO`````````@```+`"``#\_________VYO`````````@```+`" -M``#\_________X=O`````````@```+`"``#\_________ZMO`````````@`` -M`(0"``#\_________\MO`````````@```(0"``#\__________)O```````` -M`@```(0"``#\_________Q9P`````````@```(0"``#\_________SIP```` -M`````@```(0"``#\_________UUP`````````@```(0"``#\_________WUP -M`````````@```(0"``#\_________Z=P`````````@```(0"``#\________ -M__=P`````````@```&D```#\_________P=Q`````````@```(L```#\____ -M_____X!Q````````"P````$````P%@```````(YQ`````````@```.P```#\ -M_________YIQ`````````@```#\```#\_________VER`````````@```&D` -M``#\_________YYR`````````@```+H"``#\_________[1R`````````@`` -M`#P```#\_________\5R`````````@```$,```#\_________\]R```````` -M`@```*0"``#\_________P!S`````````@```%(```#\_________YET```` -M`````@```#````#\_________QQU`````````@```+("``#\_________U-U -M`````````@```+("``#\_________XYU`````````@```+("``#\________ -M_\5U`````````@```+("``#\__________UU`````````@```+("``#\____ -M_____Q!V`````````@```+("``#\_________R9V`````````@```+("``#\ -M_________XQV`````````@```+("``#\_________]EV`````````@```+(" -M``#\_________REW`````````@```+("``#\_________VQW`````````@`` -M`+("``#\_________[IW`````````@```+("``#\_________Q)X```````` -M`@```+("``#\_________U-X`````````@```+("``#\_________WQX```` -M`````@```,X```#\_________XAX`````````@```+("``#\_________[%X -M`````````@```!$```#\_________[UX`````````@```+("``#\________ -M_^9X`````````@```!$```#\__________)X`````````@```+("``#\____ -M_____QMY`````````@```!$```#\_________R=Y`````````@```+("``#\ -M_________U!Y`````````@```!$```#\_________UQY`````````@```+(" -M``#\_________[AY`````````@```-4```#\_________\9\`````````@`` -M`+T"``#\_________^!\`````````@```+T"``#\__________I\```````` -M`@```+T"``#\_________Q1]`````````@```+T"``#\_________RY]```` -M`````@```+T"``#\_________TA]`````````@```+T"``#\_________W!] -M`````````@```&D```#\_________\5]`````````@```+T"``#\________ -M_^9]`````````@```&D```#\_________S=^`````````@```+T"``#\____ -M_____UM^`````````@```&D```#\_________])^`````````@```&L```#\ -M_________S%_`````````@```)("``#\_________V1_`````````@```)(" -M``#\_________WQ_`````````@```/L```#\_________\=_`````````@`` -M`#P```#\_________]A_`````````@```$,```#\_________^)_```````` -M`@```*0"``#\_________PJ``````````@```!@```#\_________Q^````` -M`````@```+H"``#\_________S2``````````@```+H"``#\_________TN` -M`````````@```#L```#\_________UN``````````@```)("``#\________ -M_\J``````````@```-0```#\__________:``````````@```+H"``#\____ -M_____V.!`````````@```,````#\_________X^!`````````@```&D```#\ -M_________TZ"`````````@```*H```#\_________V"#`````````@```-X` -M``#\_________XV#`````````@```-L```#\_________ZZ#`````````@`` -M`-P```#\_________^R#`````````@```&X```#\_________UR'```````` -M`@```)\```#\_________\&'`````````@```(8"``#\_________\Z'```` -M`````@```.<```#\_________T:(`````````@```(8"``#\_________ZZ( -M`````````@```(L```#\_________\*(`````````@```)0```#\________ -M_]6(`````````@```"T```#\__________B(`````````@```(8"``#\____ -M_____TJ)````````"P```)D``````````````)2)`````````@```.P```#\ -M_________Z6)`````````@```*\```#\_________[")`````````@```#\` -M``#\_________Q^*`````````@```(L```#\_________S.*`````````@`` -M`)0```#\_________T:*`````````@```"T```#\_________ZJ*```````` -M"P```)D``````````````/F*`````````@```.P```#\_________PJ+```` -M`````@```*\```#\_________Q6+`````````@```#\```#\_________YB+ -M`````````@```(L```#\_________ZR+`````````@```)0```#\________ -M_[^+`````````@```"T```#\_________]R+`````````@```(8"``#\____ -M_____R",````````"P```!\``````````````$2,`````````@```.P```#\ -M_________U.,`````````@```*\```#\_________UZ,`````````@```#\` -M``#\_________\&,`````````@```)\```#\_________^^,`````````@`` -M`#D```#\_________T.-`````````@```(L```#\_________U>-```````` -M`@```)0```#\_________VJ-`````````@```"T```#\_________[R-```` -M````"P```!\``````````````-V-`````````@```.P```#\_________^V- -M`````````@```*\```#\__________B-`````````@```#\```#\________ -M_ZB.`````````@```%0```#\_________^:.`````````@```%0```#\____ -M_____R2/`````````@```'4```#\_________S*/`````````@```#,```#\ -M_________V&/`````````@```#<```#\_________WJ/`````````@```#,` -M``#\_________ZB/`````````@```#,```#\_________WZ0`````````@`` -M`+````#\_________\&0`````````@```*L```#\__________R0```````` -M`@```#<```#\_________T.1`````````@```(L```#\_________U>1```` -M`````@```)0```#\_________VJ1`````````@```"T```#\_________[V1 -M````````"P```/(``````````````-Z1`````````@```.P```#\________ -M_^V1`````````@```*\```#\__________B1`````````@```#\```#\____ -M______"2`````````@```"H```#\__________N2`````````@```"T```#\ -M_________RF3`````````@```(8"``#\_________V^3`````````@```"H` -M``#\_________WJ3`````````@```"T```#\_________QF4`````````@`` -M`!4!``#\_________R^4`````````@```"H```#\_________SJ4```````` -M`@```"T```#\_________U24`````````@```'\"``#\_________VF4```` -M````"P```#0``````````````'V4`````````@```)T"``#\__________:4 -M`````````@```*D```#\_________^V5`````````@```!H!``#\________ -M_R&6`````````@```!H!``#\_________UF6`````````@```#<```#\____ -M_____[.7`````````@```&<```#\_________\67`````````@```-````#\ -M_________]>7`````````@```"(!``#\_________^F7`````````@```!4! -M``#\_________P.8`````````@```'\"``#\_________QB8````````"P`` -M`#0``````````````#*8`````````@```)T"``#\_________X28```````` -M`@```&D```#\__________&8`````````@```",!``#\_________QB9```` -M`````@```+@```#\_________SR9`````````@```,T```#\_________Z29 -M`````````@```&D```#\_________]^9`````````@```#<```#\________ -M_PV:`````````@```!\!``#\_________SF:`````````@```"H```#\____ -M_____TB:`````````@```"T```#\_________X&:`````````@```#<```#\ -M_________SF;`````````@```)("``#\_________YN?`````````@```&0` -M``#\_________YV@````````"P````,```!`"@```````#>A`````````@`` -M`)("``#\_________VVA`````````@```)("``#\_________YBA```````` -M`@```)("``#\_________]*A`````````@```)("``#\_________Q>B```` -M`````@```)("``#\_________TVB`````````@```)("``#\_________WBB -M`````````@```)("``#\_________ZVB`````````@```)("``#\________ -M_VVC````````"P````,`````"P```````(FC````````"P````,````%"P`` -M`````)FC````````"P````,````$"P```````*JC````````"P````,````` -M"P```````+NC`````````@```,\```#\_________TVD`````````@```&D` -M``#\_________WVD`````````@```&D```#\_________ZVD`````````@`` -M`&D```#\__________VD`````````@```&D```#\_________RVE```````` -M`@```&D```#\_________ZJE`````````@```&D```#\__________.F```` -M`````@```-L```#\_________RNH`````````@```"$```#\_________W.H -M`````````@```/D```#\_________[.H`````````@```/D```#\________ -M_Z^I`````````@```"H```#\_________[VI`````````@```(0```#\____ -M_____]>J`````````@```#\```#\_________P"K`````````@```.H```#\ -M_________PRK`````````@```&0```#\_________R6K`````````@```-X` -M``#\_________Y*K`````````@```'@```#\__________FK`````````@`` -M`'(```#\_________\FL`````````@```"T```#\_________T2M```````` -M`@```%@```#\_________T^M`````````@```"T```#\_________X>M```` -M`````@```&D```#\_________Y*M`````````@```!T```#\_________YJM -M`````````@```'````#\_________^"M`````````@```(L```#\________ -M__"M`````````@```)0```#\_________PJN`````````@```"T```#\____ -M_____TVN````````"P```+4``````````````%BN`````````@```#\```#\ -M_________Y.N`````````@```(L```#\_________]2N````````"P```+4` -M`````````````-^N`````````@```#\```#\_________R^O`````````@`` -M`(L```#\_________T.O`````````@```)0```#\_________U:O```````` -M`@```"T```#\_________Z&O````````"P````$```"@L````````*ZO```` -M`````@```.P```#\_________[ZO`````````@```*\```#\_________\FO -M`````````@```#\```#\_________Q2P`````````@```(L```#\________ -M_U2P````````"P```*X``````````````%^P`````````@```#\```#\____ -M_____V^P`````````@```*0"``#\_________WNP`````````@```*0"``#\ -M_________VNQ`````````@```"H```#\_________WJQ`````````@```(0` -M``#\_________X6Q`````````@```"T```#\_________\*Q`````````@`` -M`'T```#\_________]ZQ`````````@```"H```#\_________^RQ```````` -M`@```(0```#\__________>Q`````````@```"T```#\__________>R```` -M`````@```*0"``#\_________P*S`````````@```"T```#\_________R^S -M`````````@```'T```#\_________SNS`````````@```*0"``#\________ -M_T:S`````````@```"T```#\_________Y"S`````````@```(L```#\____ -M_____]*S`````````@```!L```#\_________^&S`````````@```"T```#\ -M__________>S````````"P```+4```````````````*T`````````@```#\` -M``#\_________T:T`````````@```(L```#\_________V2T`````````@`` -M`)0```#\_________WZT`````````@```"T```#\_________^*T```````` -M"P```+4``````````````/.T`````````@```.P```#\_________P6U```` -M`````@```*\```#\_________Q"U`````````@```#\```#\_________V.U -M`````````@```(L```#\_________X2U`````````@```)0```#\________ -M_Z"U`````````@```"T```#\_________PJV````````"P```+4````````` -M`````!>V`````````@```.P```#\_________RBV`````````@```*\```#\ -M_________S.V`````````@```#\```#\_________XJV`````````@```(L` -M``#\_________ZBV`````````@```)0```#\_________\2V`````````@`` -M`"T```#\_________R*W````````"P```+4``````````````#:W```````` -M`@```.P```#\_________T>W`````````@```*\```#\_________U*W```` -M`````@```#\```#\_________ZJW`````````@```(L```#\_________\BW -M`````````@```)0```#\_________^2W`````````@```"T```#\________ -M_SJX````````"P```+4``````````````$>X`````````@```.P```#\____ -M_____UBX`````````@```*\```#\_________V.X`````````@```#\```#\ -M_________]>X`````````@```(L```#\_________X"Y````````"P````$` -M```0K````````(ZY`````````@```.P```#\_________YFY`````````@`` -M`#\```#\_________]^[`````````@```"L!``#\__________"[```````` -M`@```%@```#\_________T2\`````````@```&D```#\_________QR]```` -M`````@```)(```#\_________Z6]`````````@```(L```#\_________\2] -M`````````@```!<!``#\_________]>]`````````@```"T```#\________ -M_RR^````````"P````P!`````````````#J^`````````@```.P```#\____ -M_____T6^`````````@```#\```#\_________Z6^`````````@```(L```#\ -M_________[F^`````````@```!<!``#\_________Q"_````````"P````P! -M`````````````!Z_`````````@```.P```#\_________RF_`````````@`` -M`#\```#\_________S._`````````@```*0"``#\_________XR_```````` -M`@```(L```#\_________YR_`````````@```!<!``#\_________^^_```` -M````"P````P!`````````````/V_`````````@```.P```#\_________PC` -M`````````@```#\```#\_________U7``````````@```(L```#\________ -M_V7``````````@```!<!``#\_________[3`````````"P````P!```````` -M`````,+``````````@```.P```#\_________\W``````````@```#\```#\ -M_________P3!`````````@```$X```#\_________Q3!`````````@```"L` -M``#\_________R#"`````````@```$X```#\_________S#"`````````@`` -M`"L```#\_________YC"`````````@```+H```#\_________RO#```````` -M`@```)@```#\_________Y'#`````````@```!,!``#\_________\##```` -M`````@```$X```#\_________]##`````````@```"L```#\_________S[$ -M`````````@```)P```#\_________Z+$`````````@````@!``#\________ -M__C$`````````@```-L```#\_________QO%`````````@```'@```#\____ -M_____RS%`````````@````@!``#\_________V/%`````````@```-L```#\ -M_________W3%`````````@````@!``#\_________Y;%`````````@```'\" -M``#\_________[G%`````````@```'\"``#\_________QC&`````````@`` -M`&H```#\_________UO&`````````@```-L```#\_________W/&```````` -M`@```'(```#\_________W[&`````````@```,````#\_________SS'```` -M`````@```&D```#\_________T_'`````````@```'<```#\_________V[' -M````````"P````L!`````````````(7'`````````@```)T"``#\________ -M_Q3(`````````@```&D```#\_________R?(`````````@```,````#\____ -M_____T+(````````"P```%,``````````````%G(`````````@```)T"``#\ -M_________P7)`````````@```-L```#\_________Q#)`````````@```#8` -M``#\_________QO)`````````@```)(```#\_________[+)````````"P`` -M``L!`````````````,G)`````````@```)T"``#\_________V7*```````` -M"P```%,``````````````'S*`````````@```)T"``#\_________R3,```` -M`````@```&D```#\_________W[,`````````@```((```#\_________XW, -M`````````@```"T```#\_________\K,`````````@```%8```#\________ -M__K,`````````@```+@```#\_________Q;-`````````@```$D```#\____ -M_____T?-`````````@```&D```#\_________['-`````````@```",!``#\ -M_________\?-`````````@```((```#\_________]3-`````````@```"T` -M``#\_________T3.`````````@```#P```#\_________W3.`````````@`` -M`$,```#\_________W[.`````````@```*0"``#\_________Z3.```````` -M`@```*<```#\_________[[.`````````@```*T```#\_________^W.```` -M`````@```!@```#\__________[.`````````@```+,```#\_________Q'/ -M````````"P````8```!2`````````!O/`````````@```*\"``#\________ -M_S#/`````````@```+H"``#\_________T7/`````````@```+H"``#\____ -M_____XW/`````````@```#L```#\_________[3/`````````@```&D```#\ -M__________+/`````````@```!\!``#\_________SC0`````````@```#P` -M``#\_________V?0`````````@```$,```#\_________W'0`````````@`` -M`*0"``#\_________Y?0`````````@```*<```#\_________['0```````` -M`@```*T```#\_________\S0`````````@```!@```#\_________]W0```` -M`````@```+,```#\__________#0````````"P````8```!2`````````/K0 -M`````````@```*\"``#\_________P_1`````````@```+H"``#\________ -M_R#1````````"P````8```!2`````````"K1`````````@```*\"``#\____ -M_____S_1`````````@```+H"``#\_________[_1`````````@```+H"``#\ -M_________RG2`````````@```&D```#\_________U[2`````````@```+H" -M``#\_________W?2`````````@```#L```#\_________\;2`````````@`` -M`(L```#\_________]K2`````````@```)0```#\__________32```````` -M`@```"T```#\_________WG3````````"P```+4``````````````(K3```` -M`````@```.P```#\_________YS3`````````@```*\```#\_________Z?3 -M`````````@```#\```#\_________^33`````````@```$X```#\________ -M__33`````````@```"L```#\_________^C4`````````@````@!``#\____ -M_____RG5`````````@```"L```#\_________WW5`````````@```&D```#\ -M_________UK9`````````@```*D```#\_________X79`````````@```%H` -M``#\_________PO:````````"P````$```#0Y@```````"S:`````````@`` -M`!P```#\_________RO;````````"P````$```#0Y@```````%_;```````` -M`@```!P```#\_________US<````````"P````$```#0Y@```````(_<```` -M`````@```!P```#\__________?<````````"P````$```#0Y@```````"?= -M`````````@```!P```#\_________W?=````````"P````$```#0Y@`````` -M`*?=`````````@```!P```#\_________W7>`````````@```"````#\____ -M_____^W>`````````@````8!``#\_________\7?`````````@```/````#\ -M_________V/@`````````@```&T```#\_________]?@`````````@```*D` -M``#\_________P?A`````````@```$8```#\_________R3A`````````@`` -M`%L```#\_________T7B`````````@```%H```#\_________POD```````` -M`@```+P```#\_________TWD`````````@```/````#\__________3D```` -M`````@```&T```#\_________W7E`````````@```.@```#\_________PKF -M`````````@```&T```#\_________[+F`````````@```&T```#\________ -M_P3G`````````@```%H```#\_________V[G`````````@```&T```#\____ -M_____ZKG`````````@```&T```#\__________OG`````````@```&T```#\ -M_________SOH`````````@```&T```#\_________ZWK`````````@```&T` -M``#\_________Q#L`````````@```)("``#\_________S3L`````````@`` -M`)("``#\_________Y'M`````````@```-,```#\_________]_N```````` -M`@```)("``#\__________[N`````````@```)("``#\_________QKO```` -M`````@```"T```#\_________WGO`````````@```*0"``#\_________XGO -M`````````@```)("``#\_________[+O`````````@```*0"``#\________ -M_\+O`````````@```)("``#\_________\_P`````````@```*0"``#\____ -M_____][P`````````@```)("``#\__________#P`````````@```*0"``#\ -M__________CP`````````@```)("``#\_________Q?Q`````````@```*0" -M``#\_________Q_Q`````````@```)("``#\_________TGQ`````````@`` -M`*0"``#\_________UCQ`````````@```)("``#\_________VKQ```````` -M`@```*0"``#\_________W+Q`````````@```)("``#\_________Y'Q```` -M`````@```*0"``#\_________YGQ`````````@```)("``#\_________][Q -M`````````@```*0"``#\_________TSR`````````@```*0"``#\________ -M_V'R`````````@```$,```#\_________[[R`````````@```(L```#\____ -M_____RWS````````"P```+(``````````````#3S````````"P```-@````` -M`````````$?S`````````@```#\```#\_________Z7S`````````@```(L` -M``#\_________Q7T````````"P```#(``````````````!WT`````````@`` -M`#\```#\_________[#T`````````@```)("``#\_________][T```````` -M`@```)("``#\_________R_U`````````@```-<```#\_________SSU```` -M`````@```"X```#\_________X_U`````````@```(L```#\_________^+U -M````````"P```#(``````````````.KU`````````@```#\```#\________ -M_X3V`````````@```)("``#\_________[+V`````````@```)("``#\____ -M_______V`````````@```!````#\_________PSW`````````@```"X```#\ -M_________W;W`````````@```(L```#\_________\CW````````"P```+(` -M`````````````,_W````````"P```-@``````````````.+W`````````@`` -M`#\```#\_________SCX`````````@```(L```#\_________Z/X```````` -M"P````$```#0,P$``````+7X`````````@```#\```#\_________^+X```` -M````"P```!T!`````````````'[Y`````````@```*0"``#\_________XOY -M`````````@```)("``#\_________Z#Y`````````@```*0"``#\________ -M_ZKY`````````@```)("``#\_________V[Z`````````@```*0"``#\____ -M_____WOZ`````````@```)("``#\_________Y#Z`````````@```*0"``#\ -M_________YKZ`````````@```)("``#\_________R[[`````````@```-\` -M``#\_________V/[`````````@````,!``#\_________VO[`````````@`` -M`-,```#\_________['[`````````@```)("``#\_________]'[```````` -M`@```)("``#\_________^W[`````````@```)("``#\_________QK\```` -M`````@```)("``#\_________VW\`````````@```/$```#\_________W7\ -M`````````@```!8```#\_________]O\`````````@```*0"``#\________ -M_^O\`````````@```)("``#\_________Q#]`````````@```*0"``#\____ -M_____R#]`````````@```)("``#\_________RD``0```````@```'L```#\ -M_________W\``0``````"P````4```#(`````````(D``0```````@```*\" -M``#\_________SH!`0``````"P````8```!H`````````$0!`0```````@`` -M`*\"``#\_________V$!`0```````@```*0"``#\_________VL!`0`````` -M`@```)("``#\_________W<!`0``````"P````8```!Z`````````($!`0`` -M`````@```*\"``#\_________YD!`0``````"P````4```#H`````````*,! -M`0```````@```*\"``#\_________[$!`0```````@```)("``#\________ -M_[L!`0``````"P````8```"5`````````,4!`0```````@```*\"``#\____ -M_____]<!`0```````@```*0"``#\_________^$!`0```````@```)("``#\ -M_________^T!`0``````"P````8```!Z`````````/<!`0```````@```*\" -M``#\_________PD"`0``````"P````4```#H`````````!,"`0```````@`` -M`*\"``#\_________R$"`0```````@```)("``#\_________SX"`0`````` -M`@```*0"``#\_________T<"`0```````@```)("``#\_________U,"`0`` -M````"P````8```!Z`````````%T"`0```````@```*\"``#\_________W4" -M`0``````"P````4```#H`````````'\"`0```````@```*\"``#\________ -M_XL"`0```````@```)("``#\_________Y4"`0``````"P````8```"5```` -M`````)\"`0```````@```*\"``#\_________[$"`0```````@```*0"``#\ -M_________[H"`0```````@```)("``#\_________\8"`0``````"P````8` -M``!Z`````````-`"`0```````@```*\"``#\_________^("`0``````"P`` -M``4```#H`````````.P"`0```````@```*\"``#\__________@"`0`````` -M`@```)("``#\_________P(#`0``````"P````8```"5``````````P#`0`` -M`````@```*\"``#\_________S0#`0``````"P````8```"N`````````#X# -M`0```````@```*\"``#\_________UH#`0```````@```*0"``#\________ -M_V0#`0```````@```)("``#\_________WL#`0```````@```*0"``#\____ -M_____X0#`0```````@```)("``#\_________Y(#`0``````"P````8```!Z -M`````````)P#`0```````@```*\"``#\_________\,#`0``````"P````4` -M``#H`````````,T#`0```````@```*\"``#\_________^8#`0```````@`` -M`)("``#\__________(#`0``````"P````8```"5`````````/P#`0`````` -M`@```*\"``#\_________Q$$`0```````@```*0"``#\_________QL$`0`` -M`````@```)("``#\_________RD$`0``````"P````8```!Z`````````#,$ -M`0```````@```*\"``#\_________T<$`0``````"P````4```#H```````` -M`%$$`0```````@```*\"``#\_________U\$`0```````@```)("``#\____ -M_____VL$`0``````"P````8```"5`````````'4$`0```````@```*\"``#\ -M_________XH$`0```````@```*0"``#\_________Y0$`0```````@```)(" -M``#\_________Z($`0``````"P````8```!Z`````````*P$`0```````@`` -M`*\"``#\_________\8$`0``````"P````4```#H`````````-`$`0`````` -M`@```*\"``#\_________]X$`0```````@```)("``#\_________^H$`0`` -M````"P````8```"5`````````/0$`0```````@```*\"``#\_________PD% -M`0```````@```*0"``#\_________Q,%`0```````@```)("``#\________ -M_R$%`0``````"P````8```!Z`````````"L%`0```````@```*\"``#\____ -M_____SP%`0``````"P````4```#H`````````$8%`0```````@```*\"``#\ -M_________U0%`0```````@```)("``#\_________V4%`0```````@```)(" -M``#\_________W$%`0``````"P````8```"5`````````'L%`0```````@`` -M`*\"``#\_________Y`%`0```````@```*0"``#\_________YD%`0`````` -M`@```)("``#\_________Z<%`0``````"P````8```!Z`````````+$%`0`` -M`````@```*\"``#\_________\4%`0``````"P````4```#H`````````,\% -M`0```````@```*\"``#\_________]L%`0```````@```)("``#\________ -M_^<%`0``````"P````8```"5`````````/$%`0```````@```*\"``#\____ -M_____P8&`0```````@```*0"``#\_________P\&`0```````@```)("``#\ -M_________QT&`0``````"P````8```!Z`````````"<&`0```````@```*\" -M``#\_________T$&`0``````"P````4```#H`````````$L&`0```````@`` -M`*\"``#\_________U<&`0```````@```)("``#\_________V,&`0`````` -M"P````8```"5`````````&T&`0```````@```*\"``#\_________X(&`0`` -M`````@```*0"``#\_________XL&`0```````@```)("``#\_________YD& -M`0``````"P````8```!Z`````````*,&`0```````@```*\"``#\________ -M_[0&`0``````"P````4```#H`````````+X&`0```````@```*\"``#\____ -M_____\H&`0```````@```)("``#\_________]8&`0``````"P````8```"5 -M`````````.`&`0```````@```*\"``#\_________Q('`0```````@```*0" -M``#\_________RD'`0```````@```)("``#\_________S@'`0``````"P`` -M``8```!Z`````````$('`0```````@```*\"``#\_________UD'`0`````` -M"P````4```#H`````````&,'`0```````@```*\"``#\_________VX'`0`` -M`````@```)("``#\_________YH'`0```````@```*0"``#\_________[$' -M`0```````@```)("``#\_________\`'`0``````"P````8```!Z```````` -M`,H'`0```````@```*\"``#\_________^$'`0``````"P````4```#H```` -M`````.L'`0```````@```*\"``#\__________8'`0```````@```)("``#\ -M_________P((`0``````"P````8```"5``````````P(`0```````@```*\" -M``#\_________XP(`0```````@```*D```#\__________T)`0```````@`` -M`*D```#\_________R`*`0```````@```*D```#\_________Y4*`0`````` -M`@```"@!``#\_________\0+`0```````@```*0"``#\_________^\+`0`` -M`````@```*0"``#\_________[X,`0```````@```-D```#\_________]\, -M`0```````@```-T```#\__________4,`0```````@````4!``#\________ -M_P0-`0```````@````4!``#\_________XT-`0```````@```)("``#\____ -M_____[L-`0```````@```)("``#\_________^\-`0```````@```*0"``#\ -M_________P<.`0```````@```)("``#\_________U4.`0```````@```)(" -M``#\_________[P.`0```````@```)("``#\_________R\/`0```````@`` -M`)("``#\_________^</`0```````@```*0"``#\__________H/`0`````` -M`@```)("``#\_________Q<0`0```````@```%4```#\_________R(0`0`` -M`````@```&@```#\_________S00`0```````@```*0"``#\_________TX0 -M`0```````@```*0"``#\_________V@0`0```````@```*0"``#\________ -M_X@0`0```````@```(8```#\_________YD0`0```````@```)("``#\____ -M_____^<0`0```````@```*0"``#\__________H0`0```````@```)("``#\ -M_________Q<1`0```````@```%4```#\_________R(1`0```````@```&@` -M``#\_________S01`0```````@```*0"``#\_________TX1`0```````@`` -M`*0"``#\_________V@1`0```````@```*0"``#\_________X@1`0`````` -M`@```(8```#\_________YD1`0```````@```)("``#\_________[T1`0`` -M`````@```*0"``#\_________\@1`0```````@```!(```#\_________^81 -M`0```````@````T!``#\__________,1`0```````@```)("``#\________ -M_PX2`0```````@```)("``#\_________R(2`0```````@```)("``#\____ -M_____PP3`0```````@```)("``#\_________ZL3`0```````@```(L```#\ -M_________\D3`0```````@```)0```#\_________^43`0```````@```"T` -M``#\_________TL4`0``````"P````$```#0,P$``````%@4`0```````@`` -M`.P```#\_________V<4`0```````@```*\```#\_________W(4`0`````` -M`@```#\```#\_________XP5`0``````"P````4````(`0```````)85`0`` -M`````@```*\"``#\_________R46`0``````"P````4```!8`0```````"\6 -M`0```````@```*\"``#\_________S\6`0```````@```!\!``#\________ -M_UH6`0```````@```$H```#\_________RL7`0```````@```)T```#\____ -M_____Z87`0``````"P```)8``````````````+$7`0```````@```,,```#\ -M_________\D7`0```````@```'X```#\_________R,8`0```````@```)T` -M``#\_________S88`0```````@```"<!``#\_________V88`0```````@`` -M`,T```#\_________QD9`0```````@```"$!``#\_________R,9`0`````` -M`@```*(```#\_________^L9`0```````@```!\!``#\_________V(:`0`` -M`````@```&D```#\_________[<:`0```````@```",!``#\_________]T: -M`0```````@```+@```#\_________^T:`0```````@```,T```#\________ -M_XD;`0```````@```.0```#\_________S4<`0```````@```&D```#\____ -M_____[,<`0```````@```.0```#\_________TD=`0```````@```+H"``#\ -M_________U\=`0```````@```+H"``#\_________Y(=`0```````@```.0` -M``#\__________P=`0```````@```+H"``#\_________TH>`0```````@`` -M`+H"``#\_________X@>`0```````@```#P```#\_________[<>`0`````` -M`@```$,```#\_________\$>`0```````@```*0"``#\_________^<>`0`` -M`````@```*<```#\_________P$?`0```````@```*T```#\_________QP? -M`0```````@```!@```#\_________RT?`0```````@```+,```#\________ -M_T`?`0``````"P````8```"]`````````$H?`0```````@```*\"``#\____ -M_____U\?`0```````@```+H"``#\_________W0?`0``````"P````8```"] -M`````````'X?`0```````@```*\"``#\_________Y,?`0```````@```+H" -M``#\_________^$?`0```````@```+H"``#\_________RT@`0```````@`` -M`#L```#\_________T@@`0```````@```+H"``#\_________YT@`0`````` -M`@```/H```#\_________\D@`0```````@```!\!``#\_________^8@`0`` -M`````@```'X```#\_________RTA`0```````@```'8```#\_________WXA -M`0``````"P````,```"`"P```````.4A`0```````@```-0```#\________ -M__8A`0```````@```)("``#\_________Q8B`0```````@```(H```#\____ -M_____S(B`0```````@```(H```#\_________TXB`0```````@```(H```#\ -M_________VHB`0```````@```(H```#\_________XLB`0```````@```(@` -M``#\_________ZTB`0```````@```(@```#\_________]HB`0```````@`` -M`(@```#\__________PB`0```````@```(@```#\_________P8C`0`````` -M`@```*0"``#\_________S,C`0```````@```(@```#\_________U4C`0`` -M`````@```(@```#\_________U\C`0```````@```*0"``#\_________WLC -M`0```````@```(H```#\_________Y<C`0```````@```(H```#\________ -M_[,C`0```````@```(H```#\_________]4C`0```````@```(@```#\____ -M______$C`0```````@```(H```#\_________T8D`0```````@```*0"``#\ -M_________\8D`0```````@```)("``#\_________^0D`0```````@```)(" -M``#\__________@D`0```````@```*0"``#\_________P@E`0```````@`` -M`+@```#\_________Q<E`0```````@```*0"``#\_________RXE`0`````` -M`@```(H```#\_________S@E`0```````@```*0"``#\_________U0E`0`` -M`````@```(H```#\_________UXE`0```````@```*0"``#\_________XLE -M`0```````@```(@```#\_________Y4E`0```````@```*0"``#\________ -M_[$E`0```````@```(H```#\_________[LE`0```````@```*0"``#\____ -M_____\4E`0```````@```-$```#\_________]8E`0```````@```$L```#\ -M__________XE`0```````@```(@```#\_________R`F`0```````@```(@` -M``#\_________T(F`0```````@```(@```#\_________V0F`0```````@`` -M`(@```#\_________X`F`0```````@```(H```#\_________X\F`0`````` -M`@```*0"``#\_________Z8F`0```````@```(H```#\_________[`F`0`` -M`````@```*0"``#\_________](F`0```````@```(@```#\_________^XF -M`0```````@```(H```#\_________P\G`0```````@```(@```#\________ -M_RLG`0```````@```*(```#\_________T0G`0```````@```(H```#\____ -M_____TXG`0```````@```*0"``#\_________W@G`0```````@```(@```#\ -M_________X(G`0```````@```*0"``#\_________YLG`0```````@```(H` -M``#\_________Z4G`0```````@```*0"``#\_________^,H`0```````@`` -M`"H```#\_________^XH`0```````@```"T```#\_________U4I`0`````` -M`@```)("``#\_________WPI`0```````@```)("``#\_________[TI`0`` -M`````@```)("``#\_________^8I`0```````@```"H```#\__________$I -M`0```````@```"T```#\__________PI`0```````@```-0```#\________ -M_U0K`0```````@```'8```#\_________UXK`0```````@```*0"``#\____ -M_____WTK`0```````@```'8```#\_________X<K`0```````@```*0"``#\ -M_________Q4L`0```````@```)("``#\_________RPL`0```````@```)(" -M``#\_________VLL`0```````@```*0"``#\_________X0L`0```````@`` -M`+@```#\_________Y\L`0```````@```-H```#\_________[0L`0`````` -M`@```-H```#\_________\(L`0```````@```*0"``#\__________`L`0`` -M`````@```)("``#\_________Q8M`0```````@```)("``#\_________RXM -M`0```````@```*0"``#\_________S\M`0``````"P````4```"0`0`````` -M`$DM`0```````@```*\"``#\_________UDM`0```````@```(L```#\____ -M_____Z@M`0``````"P````$```#0,P$``````+,M`0```````@```#\```#\ -M_________\0M`0``````"P````8```#3`````````,XM`0```````@```*\" -M``#\_________]XM`0```````@```(L```#\_________RTN`0``````"P`` -M``$```#0,P$``````#@N`0```````@```#\```#\_________V,N`0`````` -M`@```(L```#\_________[8N`0``````"P````$```#0,P$``````,0N`0`` -M`````@```#\```#\_________]HN`0```````@```(L```#\_________RTO -M`0``````"P````$```#0,P$``````#LO`0```````@```#\```#\________ -M_U$O`0```````@```(L```#\_________Z`O`0``````"P````$```#0,P$` -M`````*LO`0```````@```#\```#\_________\@O`0```````@```(L```#\ -M_________Q<P`0``````"P````$```#0,P$``````"(P`0```````@```#\` -M``#\_________S@P`0```````@```(L```#\_________Y(P`0``````"P`` -M``$```#0,P$``````)TP`0```````@```#\```#\_________]$P`0`````` -M`@```)T```#\__________$P`0```````@```%D```#\_________TLQ`0`` -M`````@```-0```#\_________X<Q`0```````@```-0```#\_________YDQ -M`0```````@```&D```#\_________^DQ`0```````@```",!``#\________ -M_Q$R`0```````@```+@```#\_________R8R`0```````@```,T```#\____ -M_____U0R`0```````@```&D```#\_________[(R`0```````@```",!``#\ -M_________]TR`0```````@```+@```#\__________(R`0```````@```,T` -M``#\_________RLS`0```````@```&D```#\_________UDS`0```````@`` -M`#<```#\_________W<S`0```````@```!\!``#\_________^$T`0`````` -M`@```"H```#\_________^PT`0```````@```"T```#\_________V8U`0`` -M`````@```*0"``#\_________ZPU`0```````@```%8```#\_________\$U -M`0```````@```+@```#\_________QHV`0``````"P````4```#(`0`````` -M`"0V`0```````@```*\"``#\_________S8V`0```````@```.,```#\____ -M_____R,W`0```````@```"H```#\_________RXW`0```````@```"T```#\ -M_________T4W`0```````@```"H```#\_________U`W`0```````@```"T` -M``#\_________ULW`0```````@```+@```#\_________T$X`0```````@`` -M`!@!``#\_________U@X`0```````@```!@!``#\_________V\X`0`````` -M`@```)$```#\_________X$X`0```````@```+D```#\_________Y0X`0`` -M`````@```.(```#\_________[$X`0```````@```/@```#\_________\,X -M`0```````@```,D```#\_________]4X`0```````@```),```#\________ -M_^DX`0```````@```&P```#\_________Q0Y`0```````@```&D```#\____ -M_____W(Y`0```````@```",!``#\_________YTY`0```````@```+@```#\ -M_________[(Y`0```````@```,T```#\_________P<Z`0```````@```#<` -M``#\_________Q8Z`0```````@```&D```#\_________T$Z`0``````"P`` -M``8```#I`````````$LZ`0```````@```*\"``#\_________U@Z`0`````` -M`@```#<```#\_________W@Z`0```````@```!\!``#\__________8[`0`` -M`````@```.L```#\_________PH\`0``````"P````,```"H#````````&,\ -M`0```````@```'X```#\_________]X\`0```````@```)T```#\________ -M__,\`0```````@```"<!``#\_________RT]`0```````@```,T```#\____ -M_____[0]`0```````@```&D```#\_________]4]`0```````@```.$```#\ -M_________Q,^`0```````@```*D```#\_________\0^`0```````@```+H" -M``#\__________P^`0```````@```#P```#\_________Q8_`0```````@`` -M`$,```#\_________R`_`0```````@```*0"``#\_________TL_`0`````` -M`@```*<```#\_________V@_`0```````@```*T```#\_________XP_`0`` -M`````@```!@```#\_________Z`_`0```````@```+,```#\_________[L_ -M`0```````@```+H"``#\_________]8_`0```````@```+H"``#\________ -M_PY``0```````@```#L```#\_________WU``0```````@```.$```#\____ -M_____XM``0```````@```!4```#\_________T%!`0```````@```*D```#\ -M_________Y!"`0```````@```",!``#\_________Z1"`0```````@```,T` -M``#\_________]%"`0```````@```#<```#\_________]U"`0```````@`` -M`'X```#\_________XI#`0```````@```&D```#\_________ZM#`0`````` -M`@```.$```#\_________]]#`0```````@```.$```#\_________P]$`0`` -M`````@```.$```#\_________R%$`0```````@```*D```#\_________U]$ -M`0```````@```!L!``#\_________ZI%`0```````@```+8```#\________ -M_\Q%`0```````@```&D```#\_________^!%`0```````@```#P```#\____ -M______1%`0```````@```$,```#\__________Y%`0```````@```*0"``#\ -M_________R9&`0```````@```!@```#\_________S=&`0```````@```+,` -M``#\_________TQ&`0```````@```+H"``#\_________V%&`0```````@`` -M`+H"``#\_________XU&`0```````@```#L```#\_________ZA&`0`````` -M`@```(P```#\_________QA'`0```````@```$````#\_________S5'`0`` -M`````@```.$```#\_________WE'`0```````@```.$```#\_________ZI' -M`0```````@```.$```#\_________[Q'`0```````@```!L!``#\________ -M_\Y'`0```````@```$H```#\__________='`0```````@```!L!``#\____ -M_____TM)`0```````@```'X```#\_________W-*`0```````@```",!``#\ -M_________X)*`0```````@```,T```#\_________\9*`0```````@```!\! -M``#\_________P5+`0```````@```.$```#\_________RQ+`0```````@`` -M`+L```#\_________Y9+`0```````@```!<```#\_________ZM+`0`````` -M"P```)8``````````````+9+`0```````@```,,```#\_________]I+`0`` -M`````@```+0```#\_________^5+`0```````@```!<```#\_________Q], -M`0```````@```-H```#\_________RU,`0```````@```*0"``#\________ -M_WU,`0```````@```#L```#\_________Y1,`0```````@```*@```#\____ -M_____\=,`0```````@```-0```#\_________^E,`0```````@```'\"``#\ -M__________5,`0```````@```/8```#\_________PM-`0```````@```&D` -M``#\_________RU-`0```````@```!@```#\_________SY-`0```````@`` -M`+,```#\_________U--`0```````@```+H"``#\_________VA-`0`````` -M`@```+H"``#\_________W]-`0```````@```#L```#\_________Z!-`0`` -M`````@```&D```#\_________[%-`0```````@```'X```#\__________)- -M`0```````@```+@```#\_________]%.`0```````@```"H```#\________ -M_]Q.`0```````@```"T```#\_________RA/`0``````"P````4```#H`0`` -M`````#)/`0```````@```*\"``#\_________U)/`0```````@```#L```#\ -M_________V)/`0```````@```!\!``#\_________W1/`0```````@```*0" -M``#\_________W]/`0```````@```"T```#\_________Y1/`0```````@`` -M`'8```#\_________Z9/`0```````@```*0"``#\_________[%/`0`````` -M`@```"T```#\_________[Q/`0```````@```',```#\_________Q10`0`` -M`````@```&D```#\_________W50`0```````@```+@```#\_________^M1 -M`0```````@```(@```#\_________T12`0```````@```"H```#\________ -M_T]2`0```````@```"T```#\_________V-2`0```````@```-0```#\____ -M_____XY2`0``````"P````,```"P#````````,12`0```````@```)("``#\ -M_________Q93`0```````@```)("``#\_________T%3`0```````@```)(" -M``#\_________Z13`0```````@```)("``#\_________\M3`0```````@`` -M`)("``#\_________S!4`0```````@```)("``#\_________VQ4`0`````` -M`@```"H```#\_________W=4`0```````@```"T```#\_________X=4`0`` -M`````@```!\!``#\_________\94`0```````@```*0"``#\__________54 -M`0```````@```,,"``#\_________RE5`0```````@```)("``#\________ -M_T]5`0```````@```)("``#\_________U15`0```````@```,,"``#\____ -M_____\M5`0```````@```&D```#\_________R56`0```````@```!@```#\ -M_________T%6`0```````@```+,```#\_________V%6`0```````@```+H" -M``#\__________I6`0```````@```+H"``#\_________QM7`0```````@`` -M`#L```#\_________TA7`0```````@```)("``#\_________VY7`0`````` -M`@```)("``#\_________[Y7`0```````@```&D```#\__________I7`0`` -M`````@```'X```#\_________RA8`0```````@```$,```#\_________S)8 -M`0```````@```*0"``#\_________W%8`0```````@```)("``#\________ -M_Y=8`0```````@```)("``#\_________XA9`0```````@```)("``#\____ -M_____ZM9`0```````@```)("``#\_________SM:`0```````@```(T```#\ -M_________UA:`0```````@````@!``#\_________Y=:`0```````@```)(" -M``#\_________[I:`0```````@```)("``#\__________%:`0```````@`` -M`)("``#\_________Q1;`0```````@```)("``#\_________VE;`0`````` -M`@```)("``#\_________X];`0```````@```)("``#\_________\Q;`0`` -M`````@```)("``#\__________1;`0```````@```"H```#\__________]; -M`0```````@```"T```#\_________PI<`0```````@```-0```#\________ -M_R%<`0```````@```$,```#\_________RM<`0```````@```*0"``#\____ -M_____X)=`0```````@```"H```#\_________XU=`0```````@```"T```#\ -M_________\]=`0```````@```"H```#\_________]I=`0```````@```"T` -M``#\__________%=`0```````@```,T```#\_________P5?`0```````@`` -M`(8"``#\_________V%?`0``````"P````8```#]`````````&M?`0`````` -M`@```*\"``#\_________WY?`0```````@```"H```#\_________XE?`0`` -M`````@```"T```#\_________]!?`0```````@```&D```#\_________UU@ -M`0```````@```&D```#\_________\5@`0```````@```,T```#\________ -M_XYA`0```````@```*0"``#\_________Q%B`0```````@```*0"``#\____ -M_____VIB`0```````@```*0"``#\_________X]B`0```````@```"H```#\ -M_________YIB`0```````@```"T```#\_________ZAB`0```````@```/T` -M``#\_________VEC`0```````@```*0"``#\_________[1C`0```````@`` -M`*0"``#\_________])C`0```````@```"H```#\_________]UC`0`````` -M`@```"T```#\_________^MC`0```````@```/T```#\_________R1D`0`` -M`````@```*0"``#\_________WAD`0```````@```*0"``#\_________]1D -M`0```````@```*0"``#\_________P]E`0```````@```)H```#\________ -M_S]E`0```````@```"H```#\_________TIE`0```````@```"T```#\____ -M_____U5E`0```````@```,T```#\_________[AE`0```````@```)("``#\ -M_________U]H`0```````@```!H```#\_________W-H`0```````@```!H` -M``#\_________X]H`0```````@```!H```#\_________Q=I`0```````@`` -M`!H```#\_________RMI`0```````@```!H```#\_________TEI`0`````` -M`@```!H```#\_________XYI`0```````@```(T```#\_________\9I`0`` -M`````@```-<```#\_________]-I`0```````@```"X```#\_________Q9J -M`0```````@```,<```#\_________UEJ`0```````@```",```#\________ -M_XIJ`0```````@```,8```#\_________^9J`0```````@```*0"``#\____ -M_____T5P`0```````@````L````<`````````%%P`0``````"P````L````@ -M`````````%YP`0```````@```$(```#\_________Z9P`0```````@```&,` -M``#\_________X)Q`0```````@```)<```#\_________Z]Q`0```````@`` -M`/,```#\_________[YQ`0```````@```)<```#\_________Z)R`0`````` -M`@```&D```#\_________^ER`0```````@```-8```#\_________P9S`0`` -M`````@```(8"``#\_________QUS`0```````@```#$```#\_________Y5S -M`0```````@```$@```#\_________\QS`0```````@```,8```#\________ -M_Q)T`0```````@```+<```#\__________%T`0```````@```*0"``#\____ -M_____^-U`0```````@````L````>`````````/!U`0``````"P````L````@ -M`````````/IU`0```````@```$(```#\_________SMV`0```````@````L` -M```>`````````$AV`0``````"P````L````@`````````%)V`0```````@`` -M`$(```#\_________]-V`0```````@```)("``#\_________R%W`0`````` -M`@```)("``#\_________SEW`0```````@```"D```#\_________TMW`0`` -M`````@```"D```#\_________UUW`0```````@```"D```#\_________V]W -M`0```````@```"D```#\_________X%W`0```````@```"D```#\________ -M_Y-W`0```````@```"D```#\_________Z5W`0```````@```"D```#\____ -M_____[=W`0```````@```"D```#\_________\EW`0```````@```"D```#\ -M_________]MW`0```````@```"D```#\_________^UW`0```````@```"D` -M``#\__________]W`0```````@```"D```#\_________Q%X`0```````@`` -M`"D```#\_________R-X`0```````@```"D```#\_________S5X`0`````` -M`@```"D```#\_________T=X`0```````@```"D```#\_________UEX`0`` -M`````@```"D```#\_________VMX`0```````@```"D```#\_________WUX -M`0```````@```"D```#\_________X]X`0```````@```"D```#\________ -M_Z%X`0```````@```"D```#\_________[-X`0```````@```"D```#\____ -M_____\5X`0```````@```"D```#\_________]=X`0```````@```"D```#\ -M_________^EX`0```````@```"D```#\__________MX`0```````@```"D` -M``#\_________V-Y`0```````@```)("``#\_________X-Y`0```````@`` -M`)("``#\_________P5Z`0```````@```"D```#\_________QIZ`0`````` -M`@```"D```#\_________R]Z`0```````@```"D```#\_________T1Z`0`` -M`````@```"D```#\_________UEZ`0```````@```"D```#\_________Z5Z -M`0```````@```(L```#\_________[EZ`0```````@```!<!``#\________ -M_TM[`0```````@```(8"``#\_________WA[`0```````@```(8"``#\____ -M_____X-[`0``````"P```!P!`````````````)%[`0```````@```.P```#\ -M_________YQ[`0```````@```#\```#\_________^E[`0```````@```(L` -M``#\__________E[`0```````@```!<!``#\_________U-\`0``````"P`` -M`!P!`````````````&%\`0```````@```.P```#\_________VQ\`0`````` -M`@```#\```#\_________\A\`0```````@```+\```#\_________]9\`0`` -M`````@```$,```#\_________^!\`0```````@```*0"``#\_________Q1] -M`0```````@```#H```#\_________R1]`0```````@```$,```#\________ -M_RY]`0```````@```*0"``#\_________U-]`0```````@```+\```#\____ -M_____V1]`0```````@```$,```#\_________VY]`0```````@```*0"``#\ -M_________[5]`0```````@```#H```#\_________TU^`0```````@```((` -M``#\_________UA^`0```````@```"T```#\_________\.``0```````@`` -M`"@```#\_________^&``0```````@```.\```#\_________\:!`0`````` -M`@```(D```#\_________]N!`0``````"P```&```````````````!N"`0`` -M`````@```"@```#\_________RV"`0```````@```.\```#\_________\2" -M`0```````@```(D```#\__________&"`0```````@```(D```#\________ -M_Y^#`0```````@```*P```#\_________[>#`0```````@```#4```#\____ -M_____\^#`0```````@```'\```#\_________S>$`0``````"P````,```#8 -M#0```````*2'`0```````@```!D```#\_________S*(`0```````@```!D` -M``#\_________TN(`0```````@```(8"``#\_________QV)`0```````@`` -M`.````#\_________Z2*`0```````@```)("``#\_________[B*`0`````` -M`@```)("``#\_________\:*`0```````@```*0"``#\_________P^+`0`` -M`````@````<````$`````````%J+`0```````@```)("``#\_________XZ+ -M`0``````"P````<``````````````+:+`0```````@````<````4```````` -M``2,`0```````@```)("``#\_________WF,`0```````@````<````D```` -M`````,>,`0```````@```)("``#\__________N,`0``````"P````<````@ -M`````````!Z-`0```````@````<````T`````````&R-`0```````@```)(" -M``#\_________]>-`0``````"P````<````0`````````.F-`0``````"P`` -M``<````P`````````'^.`0```````@```)("``#\_________Q*/`0`````` -M`@```)("``#\_________[&/`0```````@```)("``#\_________]"/`0`` -M`````@```*0"``#\_________YZ0`0```````@```"8```#\_________U"3 -M`0```````@```.D```#\_________]>4`0```````@````,```#X$@`````` -M`..4`0``````"P````<```#``0```````&>8`0``````"P````<```"````` -M`````&R8`0```````@```'<"``#\_________^J8`0```````@```$(```#\ -M__________B8`0```````@```*0"``#\_________PV9`0```````@````0! -M``#\_________S>9`0``````"P````8````1`0```````$&9`0```````@`` -M`*\"``#\_________Y:9`0```````@```)H"``#\_________ZJ9`0`````` -M`@```)H"``#\_________[Z9`0```````@```)H"``#\_________S&:`0`` -M`````@```#````#\_________TN:`0```````@```*,"``#\_________UZ: -M`0```````@```*,"``#\_________WB:`0```````@```*,"``#\________ -M_XN:`0```````@```*,"``#\_________Z6:`0```````@```*,"``#\____ -M_____[B:`0```````@```*,"``#\_________]*:`0```````@```*,"``#\ -M_________^6:`0```````@```*,"``#\_________Q.;`0```````@```*," -M``#\_________R.;`0```````@```*,"``#\_________TJ;`0```````@`` -M`*,"``#\_________UV;`0```````@```*,"``#\_________W>;`0`````` -M`@```*,"``#\_________XJ;`0```````@```*,"``#\_________Z2;`0`` -M`````@```*,"``#\_________[>;`0```````@```*,"``#\_________]&; -M`0```````@```*,"``#\_________^2;`0```````@```*,"``#\________ -M__Z;`0```````@```*,"``#\_________Q&<`0```````@```*,"``#\____ -M_____RN<`0```````@```*,"``#\_________SZ<`0```````@```*,"``#\ -M_________UB<`0```````@```*,"``#\_________VN<`0```````@```*," -M``#\_________X6<`0```````@```*,"``#\_________YB<`0```````@`` -M`*,"``#\_________[*<`0```````@```*,"``#\_________\6<`0`````` -M`@```*,"``#\_________]^<`0```````@```*,"``#\__________*<`0`` -M`````@```*,"``#\_________PR=`0```````@```*,"``#\_________Q^= -M`0```````@```*,"``#\_________SF=`0```````@```*,"``#\________ -M_TR=`0```````@```*,"``#\_________V:=`0```````@```*,"``#\____ -M_____WF=`0```````@```*,"``#\_________Y.=`0```````@```*,"``#\ -M_________Z:=`0```````@```*,"``#\_________\B=`0```````@```-(" -M``#\_________^*=`0```````@```-("``#\_________P2>`0```````@`` -M`-("``#\_________QZ>`0```````@```-("``#\_________T">`0`````` -M`@```-("``#\_________UJ>`0```````@```-("``#\_________WR>`0`` -M`````@```-("``#\_________Y:>`0```````@```-("``#\_________[B> -M`0```````@```-("``#\_________]*>`0```````@```-("``#\________ -M__2>`0```````@```-("``#\_________PZ?`0```````@```-("``#\____ -M_____S"?`0```````@```-("``#\_________TJ?`0```````@```-("``#\ -M_________VR?`0```````@```-("``#\_________X:?`0```````@```-(" -M``#\_________[V?`0```````@```,L```#\_________\Z?`0```````@`` -M`,L```#\__________J?`0```````@```"P```#\_________P*@`0`````` -M`@```)4```#\_________Q&@`0```````@```)4```#\_________QF@`0`` -M`````@```"0!``#\_________R.@`0```````@```*0"``#\_________RN@ -M`0```````@```,0```#\_________SB@`0```````@```,L```#\________ -M_T6@`0```````@```,L```#\_________X^@`0```````@```-0```#\____ -M_____^:@`0```````@```-0```#\_________Q6A`0```````@````H!``#\ -M_________RBA`0```````@````H!``#\_________S6A`0```````@````H! -M``#\_________TBA`0```````@````H!``#\_________U6A`0```````@`` -M`$,```#\_________[VA`0```````@```(L```#\_________Q^B`0`````` -M"P````$```"`E@$``````"JB`0```````@```#\```#\_________V&B`0`` -M`````@```#P```#\_________W.B`0```````@```*0"``#\_________WNB -M`0```````@```$,```#\_________\&B`0```````@```"T```#\________ -M_TVC`0```````@```(L```#\_________YRC`0``````"P````$```"`E@$` -M`````*>C`0```````@```#\```#\_________]ZC`0```````@```#P```#\ -M__________"C`0```````@```*0"``#\__________BC`0```````@```$,` -M``#\_________S"D`0```````@```"T```#\_________ZJD`0```````@`` -M`(L```#\_________RNE`0``````"P````$```"`E@$``````#:E`0`````` -M`@```#\```#\_________VVE`0```````@```#P```#\_________W^E`0`` -M`````@```*0"``#\_________X>E`0```````@```$,```#\_________\2E -M`0```````@```)0```#\_________TRF`0``````"P````$```"`E@$````` -M`%FF`0```````@```.P```#\_________VZF`0```````@```*\```#\____ -M_____WFF`0```````@```#\```#\_________["F`0```````@```#P```#\ -M_________\*F`0```````@```*0"``#\_________\JF`0```````@```$,` -M``#\__________JF`0```````@```"H```#\_________P^G`0```````@`` -M`"T```#\_________Q>G`0```````@```(L```#\_________RRG`0`````` -M`@```"H```#\_________SVH`0``````"P````$```"`E@$``````$JH`0`` -M`````@```.P```#\_________U^H`0```````@```*\```#\_________VJH -M`0```````@```#\```#\_________Z&H`0```````@```#P```#\________ -M_[.H`0```````@```*0"``#\_________[NH`0```````@```$,```#\____ -M______6H`0```````@```"H```#\_________PRI`0```````@```"T```#\ -M_________ZNI`0```````@```(L```#\_________]&I`0``````"P````8` -M```M`0```````-NI`0```````@```*\"``#\_________^>I`0```````@`` -M`)0```#\_________P"J`0```````@```"T```#\_________S*J`0`````` -M`@```+H"``#\_________TNJ`0```````@```#P```#\_________YNJ`0`` -M`````@```(8"``#\_________X.K`0```````@```&$```#\_________]NK -M`0``````"P````$```"`E@$``````.JK`0```````@```.P```#\________ -M_P6L`0```````@```*\```#\_________QNL`0```````@```#\```#\____ -M_____U>L`0```````@```#P```#\_________VFL`0```````@```*0"``#\ -M_________W.L`0```````@```$,```#\_________[6L`0```````@```(8" -M``#\_________^>L`0```````@```"H```#\__________RL`0```````@`` -M`(0```#\_________PNM`0```````@```"T```#\_________RBM`0`````` -M`@```+H"``#\_________PBN`0```````@```"H```#\_________QBN`0`` -M`````@```(0```#\_________R.N`0```````@```"T```#\__________RN -M`0```````@```#P```#\_________SZO`0```````@```",!``#\________ -M_X2O`0```````@```-0```#\_________YFO`0```````@```+@```#\____ -M_____[BO`0```````@```,T```#\_________P*P`0```````@```.8```#\ -M_________R2Q`0```````@```,H```#\_________TFQ`0```````@```!,! -M``#\_________W&Q`0```````@```+P"``#\_________ZFQ`0```````@`` -M`"P```#\_________[&Q`0```````@```%\```#\_________[FQ`0`````` -M`@```%\```#\_________\&Q`0```````@```)4```#\_________\VQ`0`` -M`````@```)4```#\_________]FQ`0```````@```"0!``#\_________^.Q -M`0```````@```*0"``#\_________^NQ`0```````@```,0```#\________ -M_P"R`0``````"P```&(``````````````!>R`0```````@```)T"``#\____ -M_____R2R`0```````@```!\!``#\_________S&R`0```````@```!\!``#\ -M_________U6R`0```````@```!D!``#\_________V2R`0```````@```!D! -M``#\_________XFR`0```````@````L```#?`````````):R`0```````@`` -M``L```#<`````````*&R`0```````@````,```#X$@```````+"R`0`````` -M"P````<```#``0```````+>R`0``````"P```%T``````````````+ZR`0`` -M````"P````<```#4`0```````,JR`0``````"P````<```#"`0```````!6S -M`0``````"P```%T````<`````````"VS`0``````"P```%T````<```````` -M`$&S`0``````"P```%T````<`````````$^S`0``````"P```%T````<```` -M`````%FS`0``````"P```%T````<`````````(^S`0``````"P```%T````< -M`````````*.S`0``````"P```%T````<`````````+&S`0``````"P```%T` -M```<`````````,RS`0``````"P````<```#,`0```````!6T`0```````@`` -M``,```#X$@```````#.T`0``````"P````<```#,`0```````$&T`0`````` -M"P````<```#0`0```````'&T`0``````"P```%T``````````````(6T`0`` -M````"P```%T````<`````````+"T`0``````"P```%T````,`````````-:T -M`0``````"P```%T````=`````````.6T`0``````"P```%T````<```````` -M`!ZU`0```````@```(`"``#\_________Z:U`0```````@```*T```#\____ -M_____\*U`0```````@```*<```#\_________\JU`0```````@```.8```#\ -M_________^BU`0```````@```+,```#\__________RU`0```````@```+,` -M``#\_________T:V`0``````"P````,```#`#@```````'NV`0```````@`` -M`.4```#\_________[2V`0```````@```&8```#\_________^JV`0`````` -M`@```+H"``#\__________^V`0```````@```#P```#\_________Q:W`0`` -M`````@```*0"``#\_________QZW`0```````@```$,```#\_________U>W -M`0```````@```+H"``#\_________VNW`0```````@```*8```#\________ -M_W>W`0```````@```/\```#\_________U*X`0``````"P````4````@`@`` -M`````%RX`0```````@```*\"``#\_________Y"X`0```````@```'\"``#\ -M_________Z6X`0``````"P````$```"@MP$``````+FX`0```````@```)T" -M``#\_________UZ[`0```````@```*T```#\_________X"[`0```````@`` -M`*<```#\_________ZV[`0```````@```&D```#\_________QB\`0`````` -M`@```&D```#\_________W2\`0```````@```+H"``#\_________[2\`0`` -M`````@```&D```#\_________R"]`0```````@```+H"``#\_________S>^ -M`0```````@```.4```#\_________XV^`0```````@```,H```#\________ -M_Y^^`0```````@```+,```#\_________]F^`0```````@```$,```#\____ -M______N^`0```````@```'\"``#\_________Q"_`0``````"P```&(````` -M`````````"._`0```````@```)T"``#\_________XG``0```````@```.8` -M``#\_________]W``0``````"P````,````0#P````````7!`0```````@`` -M`#X```#\_________V#!`0```````@```#X```#\_________[O!`0`````` -M`@```#X```#\_________Q;"`0```````@```#X```#\_________V?#`0`` -M````"P````,````P$````````)C#`0```````@```#X```#\__________C# -M`0```````@```#X```#\_________U#$`0```````@```#X```#\________ -M_ZC$`0```````@```#X```#\_________P'%`0```````@```#X```#\____ -M_____UC%`0```````@```#X```#\_________[3%`0```````@```#X```#\ -M_________Q#&`0```````@```#X```#\_________VC&`0```````@```#X` -M``#\_________\#&`0```````@```#X```#\_________Q#'`0```````@`` -M`(T```#\_________TK'`0```````@```(T```#\_________X3'`0`````` -M`@```(T```#\_________[['`0```````@```(T```#\__________7'`0`` -M`````@```(T```#\_________RS(`0```````@```(T```#\_________\;( -M`0```````@````L```#<`````````-+(`0```````@````L```#<```````` -M`*_*`0```````@```(X"``#\_________\G*`0```````@```(X"``#\____ -M_____Q/+`0```````@````,```#X$@```````"G+`0``````"P````<```#` -M`0```````#O+`0``````"P````<```#"`0```````$G+`0``````"P````<` -M``#0`0```````%++`0``````"P````<```#0`0```````%G+`0``````"P`` -M``<```#,`0```````'/+`0``````"P````<```#0`0```````*W+`0`````` -M`@```,8"``#\_________\S+`0```````@```+\"``#\__________K+`0`` -M````"P```%T``````````````!+,`0``````"P```%T````<`````````#G, -M`0``````"P```%T````,`````````%;,`0``````"P```%T````=```````` -M`&#,`0``````"P```%T````=`````````&C,`0``````"P```%T````<```` -M`````(7,`0``````"P```%T````=`````````)S,`0``````"P```%T````< -M``````````K.`0``````"P````$!`````````````!K.`0```````@```.8` -M``#\_________XW/`0```````@```)<```#\_________[[/`0```````@`` -M`/,```#\_________\W/`0```````@```)<```#\_________W#3`0`````` -M`@```)<```#\_________Y[3`0```````@```/,```#\_________ZW3`0`` -M`````@```)<```#\_________X_7`0```````@```)<```#\_________[W7 -M`0```````@```/,```#\_________\[7`0```````@```)<```#\________ -M_X_;`0```````@```)<```#\_________[W;`0```````@```/,```#\____ -M_____\[;`0```````@```)<```#\_________S3>`0```````@```(L```#\ -M_________S#@`0```````@```(8"``#\__________SA`0``````"P````$` -M``"`K0$``````'OB`0```````@```&$```#\_________XCB`0```````@`` -M`.P```#\_________YOB`0```````@```*\```#\_________[GB`0`````` -M`@```.P```#\_________\OB`0```````@```)0```#\__________SB`0`` -M`````@```*\```#\_________Q'C`0```````@```'P```#\_________T+C -M`0```````@```*\```#\_________X?C`0```````@```(8"``#\________ -M__KC`0```````@```(8"``#\_________S[D`0```````@```#\```#\____ -M_____TOD`0```````@```"T```#\_________^#F`0```````@```,8"``#\ -M_________P+G`0```````@```,8"``#\_________UWH`0```````@```",! -M``#\_________Z_H`0```````@```&D```#\_________P?I`0```````@`` -M`+@```#\_________SCI`0```````@```-0```#\_________W;I`0`````` -M`@```(8```#\_________Z'I`0```````@```,T```#\_________\OI`0`` -M`````@```&D```#\_________R?J`0```````@```.0```#\_________]GJ -M`0```````@````@"``#\__________+J`0```````@```$8"``#\________ -M_P?K`0```````@```$4"``#\_________Y7K`0``````"P````$```"0Z@$` -M`````*WK`0```````@```,8!``#\_________\/K`0```````@```"X!``#\ -M_________\[K`0```````@```$8!``#\_________^;K`0```````@```*0" -M``#\__________'K`0```````@```%@!``#\_________Q#L`0```````@`` -M`#`!``#\_________Q_L`0```````@```'@!``#\_________RKL`0`````` -M`@```$4"``#\_________TCL`0```````@```$4"``#\_________V/L`0`` -M`````@```'L!``#\_________X#L`0```````@```,H!``#\_________^+L -M`0```````@```,8!``#\__________;L`0```````@```"X!``#\________ -M_YCO`0```````@```*X!``#\_________QKR`0``````"P````,`````$P`` -M`````+_R`0``````"P````4```!X`@```````,GR`0```````@```*\"``#\ -M_________]3R`0``````"P````8```!-`0```````-[R`0```````@```*\" -M``#\_________R#S`0```````@```(8"``#\_________P#T`0```````@`` -M`)("``#\_________RWT`0```````@```)("``#\_________XWT`0`````` -M`@```)("``#\_________P_U`0```````@```)("``#\_________TGU`0`` -M`````@```)("``#\_________Z[U`0```````@```*0"``#\_________^GU -M`0```````@```*0"``#\_________S?V`0```````@```*0"``#\________ -M_W+V`0```````@```*0"``#\_________\CV`0```````@```%D!``#\____ -M_____]+V`0```````@```*0"``#\_________]SV`0```````@````,"``#\ -M_________[?W`0```````@```)("``#\_________]3W`0```````@```)(" -M``#\_________^/W`0```````@```*0"``#\___________W`0```````@`` -M`)("``#\_________QSX`0```````@```)("``#\_________TKX`0`````` -M`@```)("``#\_________U3X`0```````@```)("``#\_________WSX`0`` -M`````@```*0"``#\_________XGX`0```````@```)("``#\_________['X -M`0```````@```*0"``#\_________[[X`0```````@```)("``#\________ -M_^_X`0```````@```)("``#\_________R#Y`0```````@```)("``#\____ -M_____X7Y`0```````@```)("``#\_________Z7Y`0```````@```)("``#\ -M_________\SY`0```````@```)("``#\_________^SY`0```````@```)(" -M``#\_________QSZ`0```````@```)("``#\_________R;Z`0```````@`` -M`)("``#\_________U+Z`0```````@```*0"``#\_________V+Z`0`````` -M`@```)("``#\_________XKZ`0```````@```*0"``#\_________YKZ`0`` -M`````@```)("``#\_________Z3\`0```````@```)("``#\_________^S\ -M`0```````@```-0!``#\_________QC]`0```````@```-0!``#\________ -M_X;]`0```````@```!8"``#\_________^3]`0```````@```'\"``#\____ -M______#]`0```````@```-4!``#\_________PG^`0```````@```,P!``#\ -M_________['^`0```````@```!8"``#\_________^#^`0```````@```/L! -M``#\__________'^`0```````@```,`!``#\_________P3_`0``````"P`` -M``8```!:`0````````[_`0```````@```*\"``#\_________R/_`0`````` -M`@```+H"``#\_________SC_`0```````@```+H"``#\_________U#_`0`` -M`````@```%T!``#\_________W+_`0```````@```)("``#\_________VP` -M`@``````"P```$0!`````````````'$``@```````@```.(!``#\________ -M_U(!`@```````@```$,!``#\_________UT!`@```````@```$4"``#\____ -M_____TX"`@```````@```,(!``#\_________Z8%`@```````@```$0"``#\ -M_________QX&`@```````@```&,!``#\_________V$&`@```````@```,(! -M``#\__________P&`@``````"P````,`````%P```````!4'`@```````@`` -M`!4"``#\_________T<'`@```````@```!4"``#\_________W<'`@`````` -M`@```!4"``#\_________Z,'`@```````@```!4"``#\_________]H'`@`` -M`````@```*4!``#\_________R8(`@```````@```!@"``#\_________[@( -M`@```````@```#H!``#\__________<(`@```````@```&0!``#\________ -M_R$)`@```````@```*0"``#\_________V<+`@```````@```"X"``#\____ -M_____W8+`@```````@```/8!``#\_________RT,`@```````@```$\!``#\ -M_________Z@,`@```````@```.P!``#\_________\4,`@```````@```$\! -M``#\_________QH.`@```````@```$,"``#\_________RT.`@```````@`` -M`-8!``#\_________YT.`@```````@```$,"``#\_________\D.`@`````` -M`@```-8!``#\_________V(0`@```````@```!<"``#\_________TH1`@`` -M`````@```(8"``#\_________V01`@``````"P````,```!0%P```````/<1 -M`@```````@```"T!``#\_________P82`@```````@```"T!``#\________ -M_X,2`@```````@```$,"``#\_________Z\2`@```````@```-8!``#\____ -M_____QP3`@```````@```(L!``#\_________U`3`@```````@```'<!``#\ -M_________V@3`@```````@```(L!``#\_________WD3`@```````@````0" -M``#\_________Y$3`@```````@```(L!``#\_________^$3`@```````@`` -M`'\!``#\_________U04`@```````@```,P!``#\_________V84`@`````` -M`@```$H!``#\_________P(5`@```````@````X"``#\_________WL5`@`` -M`````@````X"``#\_________X@5`@```````@```!("``#\_________[$5 -M`@```````@````X"``#\_________\P5`@```````@```-D!``#\________ -M__D5`@```````@```'H!``#\_________\,6`@```````@```)8!``#\____ -M_____^86`@```````@```-D!``#\_________P\7`@```````@```(H!``#\ -M_________S87`@```````@````X"``#\_________SX7`@```````@```(H! -M``#\_________V,7`@```````@```-D!``#\_________\D7`@```````@`` -M`#$!``#\_________Q<8`@```````@```/,!``#\_________SL8`@`````` -M`@```,P!``#\_________W(8`@```````@```+H"``#\_________X88`@`` -M`````@```#$!``#\_________Z08`@```````@```%@!``#\_________ZX8 -M`@```````@```*0"``#\__________,8`@```````@```+T!``#\________ -M__H8`@```````@````4"``#\_________SH9`@```````@```#$!``#\____ -M_____TT9`@```````@```)T!``#\_________U49`@```````@```(H!``#\ -M_________]\9`@```````@```)("``#\_________PL:`@```````@```)(" -M``#\_________T0:`@```````@```)("``#\_________X(:`@``````"P`` -M``4```#0`@```````(P:`@```````@```*\"``#\_________\4:`@`````` -M`@```,$!``#\_________QL;`@```````@```,$!``#\_________S`;`@`` -M`````@```#X"``#\_________SL;`@```````@```)8!``#\_________^T; -M`@```````@```$4!``#\_________Q0<`@```````@```-D!``#\________ -M_T0<`@```````@```,P!``#\_________^(<`@```````@```$4!``#\____ -M_____P0=`@```````@```-D!``#\_________T<=`@```````@```#D"``#\ -M_________W,>`@```````@```)("``#\_________Y$>`@```````@```)(" -M``#\_________ZX>`@```````@```)("``#\_________Q,?`@```````@`` -M`)("``#\_________SL?`@```````@```)("``#\_________Z<?`@`````` -M`@```/D!``#\_________P0@`@```````@```)("``#\_________R<@`@`` -M`````@```)("``#\_________TH@`@```````@```)("``#\_________U(@ -M`@```````@```((!``#\_________T<A`@```````@```%`!``#\________ -M_VHA`@```````@```(8"``#\_________TTB`@```````@```(8"``#\____ -M_____[LB`@```````@```(8"``#\_________^\B`@```````@```)("``#\ -M_________RHC`@```````@```)("``#\_________WXC`@```````@```)(" -M``#\_________UPD`@```````@```(8"``#\_________ZLE`@```````@`` -M`(8"``#\_________S,F`@```````@```(8"``#\_________T8F`@`````` -M"P````,```"P'````````-DF`@```````@```*0"``#\_________TDG`@`` -M`````@```)("``#\_________VDG`@```````@```)("``#\_________XHG -M`@``````"P````8```!P`0```````)0G`@```````@```*\"``#\________ -M_YXG`@```````@```-\!``#\_________PHH`@```````@```)("``#\____ -M_____Y(H`@```````@```-\!``#\_________Z$H`@```````@```-\!``#\ -M_________V`I`@```````@```$4!``#\_________WDI`@```````@```-D! -M``#\_________R<J`@```````@```+(!``#\_________X\K`@```````@`` -M`,L!``#\_________Y\K`@```````@```!8"``#\_________^,K`@`````` -M`@```(0!``#\_________TXL`@```````@```$4!``#\_________UDL`@`` -M`````@```+(!``#\_________W(L`@```````@```-D!``#\_________\<L -M`@```````@```,P!``#\_________S4M`@```````@```#,!``#\________ -M_V8M`@```````@```,P!``#\_________Q4N`@```````@```,P!``#\____ -M_____THN`@```````@```!8"``#\_________ULN`@```````@```(H!``#\ -M_________ZDN`@```````@```)("``#\_________](N`@```````@```)(" -M``#\_________P,O`@```````@```)("``#\_________Q@O`@```````@`` -M`)$!``#\_________XPO`@```````@```)("``#\_________Q$P`@`````` -M`@```)("``#\_________SPP`@```````@```)("``#\_________TXP`@`` -M`````@```&H!``#\_________Y$P`@```````@```)("``#\_________[8P -M`@```````@```)("``#\_________S,Q`@```````@```)("``#\________ -M_UPQ`@```````@```)("``#\_________X@Q`@```````@```'\"``#\____ -M_____ZDQ`@```````@```.@!``#\_________^DQ`@```````@```,P!``#\ -M_________Q\R`@```````@```+H"``#\_________S,R`@```````@```#$! -M``#\_________U$R`@```````@```)`!``#\_________ULR`@```````@`` -M`*0"``#\_________XLR`@``````"P````$```#01P(``````+DR`@`````` -M`@```)T"``#\_________^,R`@```````@```)("``#\__________@R`@`` -M`````@```)("``#\_________R`S`@```````@```)("``#\_________S4S -M`@```````@```)("``#\_________V8S`@```````@```)("``#\________ -M_YTS`@```````@```)("``#\_________]LS`@```````@```)("``#\____ -M_____P,T`@```````@```)("``#\_________S@T`@```````@```)("``#\ -M_________V\T`@```````@```)("``#\_________]8T`@```````@```)(" -M``#\__________LT`@```````@```)("``#\_________R`U`@```````@`` -M`)("``#\_________T4U`@```````@```)("``#\_________X0U`@`````` -M`@```'\"``#\_________[XU`@```````@```+H"``#\_________](U`@`` -M`````@```#$!``#\_________^0U`@```````@```%@!``#\_________^XU -M`@```````@```*0"``#\_________QLV`@``````"P````4"```````````` -M`#,V`@```````@```)T"``#\_________UXV`@```````@```)("``#\____ -M_____Y`V`@```````@```)("``#\_________\DV`@```````@```)("``#\ -M__________4V`@```````@```)("``#\_________S8W`@```````@```'\" -M``#\_________U0W`@```````@```,P!``#\_________X0W`@```````@`` -M`+H"``#\_________Z(W`@``````"P```,D!`````````````+0W`@`````` -M`@```)T"``#\_________^,W`@```````@```)("``#\_________PDX`@`` -M`````@```)("``#\_________R<X`@```````@```*0"``#\_________SPX -M`@```````@```)("``#\_________V(X`@```````@```)("``#\________ -M_X@X`@```````@```)("``#\_________Z8X`@```````@```*0"``#\____ -M_____[LX`@```````@```)("``#\_________^`X`@```````@```)("``#\ -M_________Z8Y`@```````@```)("``#\_________\LY`@```````@```*0" -M``#\__________LY`@```````@```)("``#\_________R(Z`@```````@`` -M`*0"``#\_________U4Z`@```````@```)("``#\_________WPZ`@`````` -M`@```*0"``#\_________\(Z`@```````@```)\!``#\_________]TZ`@`` -M`````@```.,!``#\_________^DZ`@```````@```+$!``#\_________QL[ -M`@```````@```*T!``#\_________T\[`@```````@```(X!``#\________ -M_WP[`@```````@```+$!``#\_________V(\`@```````@```*0"``#\____ -M_____XD\`@```````@```)("``#\_________Z@\`@```````@```*0"``#\ -M_________\L\`@```````@```)("``#\__________<\`@```````@```*0" -M``#\_________QX]`@```````@```)("``#\_________T(]`@```````@`` -M`*0"``#\_________V8]`@```````@```)("``#\_________X<]`@`````` -M`@```,P!``#\_________P0^`@```````@```#$!``#\_________S\^`@`` -M`````@```#$!``#\_________TL^`@```````@```+$!``#\_________XT^ -M`@```````@```,P!``#\_________[(^`@```````@```,P!``#\________ -M_],^`@```````@```'\"``#\__________0^`@```````@```%@!``#\____ -M______X^`@```````@```*0"``#\_________[8_`@```````@```!8"``#\ -M_________]X_`@```````@```/L!``#\_________^\_`@```````@```,`! -M``#\_________P)``@``````"P````8```!:`0````````Q``@```````@`` -M`*\"``#\_________R%``@```````@```+H"``#\_________S9``@`````` -M`@```+H"``#\_________U-``@```````@```%T!``#\_________W)``@`` -M`````@```&<!``#\_________YY``@```````@```,P!``#\_________\9` -M`@```````@```%@!``#\_________]!``@```````@```*0"``#\________ -M_P-!`@```````@```/L!``#\_________Q1!`@```````@```,`!``#\____ -M_____R=!`@``````"P````8```!:`0```````#%!`@```````@```*\"``#\ -M_________T9!`@```````@```+H"``#\_________UM!`@```````@```+H" -M``#\_________W-!`@```````@```%T!``#\_________XA!`@```````@`` -M`*T!``#\_________PE"`@```````@```)("``#\_________RM"`@`````` -M`@```*0"``#\_________TY"`@```````@```)("``#\_________W%"`@`` -M`````@```)("``#\_________Y-"`@```````@```*0"``#\_________[=" -M`@```````@```)("``#\_________T)#`@```````@```.@!``#\________ -M_TY#`@```````@```+0!``#\_________Y5#`@```````@```!`"``#\____ -M_____Z)#`@```````@```+@!``#\_________]A#`@```````@```*0"``#\ -M__________-#`@```````@```)("``#\_________Q)$`@```````@```)(" -M``#\_________S%$`@```````@```+$!``#\_________SE$`@```````@`` -M`(\!``#\_________V%$`@```````@```!$"``#\_________^A$`@`````` -M`@```,D!``#\__________5$`@```````@```,P!``#\_________X!%`@`` -M`````@```#`"``#\_________[1%`@```````@```+T!``#\_________^U% -M`@```````@```!P"``#\_________P5&`@```````@```+H"``#\________ -M_QU&`@```````@```+H"``#\_________TI&`@```````@```*0"``#\____ -M_____V5&`@```````@```)("``#\_________X)&`@```````@```)("``#\ -M_________Z%&`@```````@```+$!``#\_________ZE&`@```````@```(\! -M``#\_________^]&`@```````@```)\!``#\_________S1'`@```````@`` -M`,P!``#\_________[-'`@```````@```!$"``#\_________\)'`@`````` -M`@```'`!``#\_________SM(`@```````@```)("``#\_________VI(`@`` -M`````@```)("``#\_________X)(`@```````@```#$"``#\_________X]( -M`@```````@```+@!``#\__________E(`@```````@```/(!``#\________ -M_QQ)`@```````@```-D!``#\_________T1)`@```````@```(H!``#\____ -M_____VA)`@```````@````X"``#\_________W!)`@```````@```(H!``#\ -M_________[E)`@```````@```-D!``#\_________PI*`@```````@```#$! -M``#\_________QE*`@```````@```,P!``#\_________TA*`@```````@`` -M`+H"``#\_________UQ*`@```````@```#$!``#\_________W1*`@`````` -M`@```%@!``#\_________WY*`@```````@```*0"``#\_________YY*`@`` -M`````@````4"``#\_________\U*`@```````@```-D!``#\__________]* -M`@```````@```#$!``#\_________Q9+`@```````@```,P!``#\________ -M_S)+`@```````@```/L!``#\_________T-+`@```````@```,`!``#\____ -M_____UA+`@```````@```+H"``#\_________VU+`@```````@```+H"``#\ -M_________X!+`@```````@```%T!``#\_________Y)+`@```````@```-4! -M``#\_________ZM+`@```````@```)("``#\_________P5,`@```````@`` -M`+$!``#\_________Q!,`@```````@```*T!``#\_________Z9,`@`````` -M`@```)("``#\_________\9,`@```````@```,L!``#\_________]9,`@`` -M`````@```!8"``#\__________E,`@```````@```,L!``#\_________P%- -M`@```````@```-T!``#\_________QI-`@``````"P````,````0'0`````` -M`#%-`@```````@```'4!``#\_________TU-`@```````@```'4!``#\____ -M_____VE-`@```````@```#$!``#\_________XQ-`@```````@```/,!``#\ -M_________Z--`@```````@```%$!``#\_________\9-`@```````@```#$! -M``#\_________^1-`@```````@```/,!``#\__________M-`@```````@`` -M`#$!``#\_________PU.`@```````@```%$!``#\_________RA.`@`````` -M`@```#$!``#\_________SU.`@```````@```#$!``#\_________W1.`@`` -M`````@```%@!``#\_________WY.`@```````@```*0"``#\__________%. -M`@```````@```#0!``#\_________PM/`@```````@```/\!``#\________ -M_R1/`@```````@```/L!``#\_________S5/`@```````@```,`!``#\____ -M_____TA/`@``````"P````8```!:`0```````%)/`@```````@```*\"``#\ -M_________VA/`@```````@```+H"``#\_________WY/`@```````@```+H" -M``#\_________Y%/`@```````@```%T!``#\_________[5/`@```````@`` -M`,P!``#\_________^Q/`@```````@```,0!``#\_________SQ0`@`````` -M`@```-P!``#\_________V)0`@```````@```,P!``#\_________QU1`@`` -M`````@```)$!``#\_________R92`@```````@```$4!``#\_________UE2 -M`@```````@```"D"``#\_________U]3`@```````@```(8"``#\________ -M_X-3`@```````@```)("``#\_________[Q3`@```````@```)("``#\____ -M_____PQ4`@```````@```)("``#\_________S=4`@``````"P````4````@ -M`P```````$%4`@```````@```*\"``#\_________UQ4`@```````@```#T! -M``#\_________ZE4`@```````@```)("``#\_________\]4`@```````@`` -M`)("``#\__________-4`@```````@```)("``#\_________XE5`@`````` -M`@```)("``#\_________[15`@``````"P````8```"+`0```````+Y5`@`` -M`````@```*\"``#\_________^U5`@```````@```((!``#\_________P-6 -M`@```````@```)("``#\_________^A6`@```````@```(H!``#\________ -M_P57`@```````@```.4!``#\_________X57`@```````@```"L"``#\____ -M_____YE7`@```````@```)(!``#\_________[I7`@```````@```+`"``#\ -M_________]Q7`@```````@```+`"``#\__________U7`@```````@```+`" -M``#\_________QM8`@```````@```+`"``#\_________T%8`@```````@`` -M`+`"``#\_________VQ8`@```````@```+`"``#\_________X98`@`````` -M`@```+`"``#\_________Z!8`@```````@```+`"``#\_________[Y8`@`` -M`````@```+`"``#\_________]A8`@```````@```+`"``#\__________I8 -M`@```````@```+`"``#\_________QQ9`@```````@```+`"``#\________ -M_SE9`@```````@```+`"``#\_________U99`@```````@```+`"``#\____ -M_____W-9`@```````@```+`"``#\_________Y!9`@```````@```+`"``#\ -M_________ZQ9`@```````@```+`"``#\_________\Y9`@```````@```+`" -M``#\_________^=9`@```````@```+`"``#\_________PM:`@```````@`` -M`(0"``#\_________RM:`@```````@```(0"``#\_________U):`@`````` -M`@```(0"``#\_________W9:`@```````@```(0"``#\_________YI:`@`` -M`````@```(0"``#\_________[U:`@```````@```(0"``#\_________]U: -M`@```````@```(0"``#\_________P=;`@```````@```(0"``#\________ -M_U=;`@```````@```,P!``#\_________V=;`@```````@````@"``#\____ -M_____^!;`@``````"P````$```"0``(``````.Y;`@```````@```,8!``#\ -M__________I;`@```````@```$8!``#\_________\E<`@```````@```,P! -M``#\__________Y<`@```````@```+H"``#\_________Q1=`@```````@`` -M`#$!``#\_________R5=`@```````@```%@!``#\_________R]=`@`````` -M`@```*0"``#\_________V!=`@```````@```'D!``#\__________E>`@`` -M`````@```"L"``#\_________WQ?`@```````@```+("``#\_________[-? -M`@```````@```+("``#\_________^Y?`@```````@```+("``#\________ -M_R5@`@```````@```+("``#\_________UU@`@```````@```+("``#\____ -M_____W!@`@```````@```+("``#\_________X9@`@```````@```+("``#\ -M_________^Q@`@```````@```+("``#\_________SEA`@```````@```+(" -M``#\_________XEA`@```````@```+("``#\_________\QA`@```````@`` -M`+("``#\_________QIB`@```````@```+("``#\_________W)B`@`````` -M`@```+("``#\_________[-B`@```````@```+("``#\_________]QB`@`` -M`````@```-H!``#\_________^AB`@```````@```+("``#\_________Q%C -M`@```````@```*<!``#\_________QUC`@```````@```+("``#\________ -M_T9C`@```````@```*<!``#\_________U)C`@```````@```+("``#\____ -M_____WMC`@```````@```*<!``#\_________X=C`@```````@```+("``#\ -M_________[!C`@```````@```*<!``#\_________[QC`@```````@```+(" -M``#\_________QAD`@```````@```.8!``#\_________R9G`@```````@`` -M`+T"``#\_________T!G`@```````@```+T"``#\_________UIG`@`````` -M`@```+T"``#\_________W1G`@```````@```+T"``#\_________XYG`@`` -M`````@```+T"``#\_________ZAG`@```````@```+T"``#\_________]!G -M`@```````@```,P!``#\_________R5H`@```````@```+T"``#\________ -M_T9H`@```````@```,P!``#\_________Y=H`@```````@```+T"``#\____ -M_____[MH`@```````@```,P!``#\_________S)I`@```````@```$@!``#\ -M_________Y%I`@```````@```)("``#\_________\1I`@```````@```)(" -M``#\_________]QI`@```````@```+@!``#\_________R=J`@```````@`` -M`#$!``#\_________SAJ`@```````@```%@!``#\_________T)J`@`````` -M`@```*0"``#\_________VIJ`@```````@```/L!``#\_________W]J`@`` -M`````@```+H"``#\_________Y1J`@```````@```+H"``#\_________ZMJ -M`@```````@```%T!``#\_________[MJ`@```````@```)("``#\________ -M_RIK`@```````@```-0!``#\_________U9K`@```````@```+H"``#\____ -M_____\-K`@```````@```#X"``#\_________^]K`@```````@```,P!``#\ -M_________ZYL`@```````@```)$!``#\_________\!M`@```````@```-D! -M``#\_________^UM`@```````@```$4!``#\_________PYN`@```````@`` -M`/D!``#\_________TQN`@```````@```#D"``#\_________[QQ`@`````` -M`@```-(!``#\_________R%R`@```````@```(8"``#\_________RYR`@`` -M`````@```"H"``#\_________Z9R`@```````@```(8"``#\_________PYS -M`@```````@````@"``#\_________R)S`@```````@```$8"``#\________ -M_S5S`@```````@```$4"``#\_________UAS`@```````@```(8"``#\____ -M_____ZIS`@``````"P```*D!`````````````/1S`@```````@```,8!``#\ -M_________P5T`@```````@```"X!``#\_________Q!T`@```````@```$8! -M``#\_________W]T`@```````@````@"``#\_________Y-T`@```````@`` -M`$8"``#\_________Z9T`@```````@```$4"``#\_________PIU`@`````` -M"P```*D!`````````````%EU`@```````@```,8!``#\_________VIU`@`` -M`````@```"X!``#\_________W5U`@```````@```$8!``#\__________AU -M`@```````@````@"``#\_________PQV`@```````@```$8"``#\________ -M_Q]V`@```````@```$4"``#\_________SQV`@```````@```(8"``#\____ -M_____X!V`@``````"P```#@"`````````````*1V`@```````@```,8!``#\ -M_________[-V`@```````@```"X!``#\_________[YV`@```````@```$8! -M``#\_________R%W`@```````@```-(!``#\_________T]W`@```````@`` -M``H"``#\_________Z-W`@```````@````@"``#\_________[=W`@`````` -M`@```$8"``#\_________\IW`@```````@```$4"``#\_________QQX`@`` -M````"P```#@"`````````````#UX`@```````@```,8!``#\_________TUX -M`@```````@```"X!``#\_________UAX`@```````@```$8!``#\________ -M_PAY`@```````@```&\!``#\_________T9Y`@```````@```&\!``#\____ -M_____X1Y`@```````@```+8!``#\_________Y)Y`@```````@```%4!``#\ -M_________\%Y`@```````@```%\!``#\_________]IY`@```````@```%4! -M``#\_________PAZ`@```````@```%4!``#\_________]YZ`@```````@`` -M`'X!``#\_________R%[`@```````@```+<!``#\_________UQ[`@`````` -M`@```%\!``#\_________Z-[`@```````@````@"``#\_________[=[`@`` -M`````@```$8"``#\_________\I[`@```````@```$4"``#\_________QU\ -M`@``````"P````P"`````````````#Y\`@```````@```,8!``#\________ -M_TU\`@```````@```"X!``#\_________UA\`@```````@```$8!``#\____ -M_____U!]`@```````@```#`!``#\_________UM]`@```````@```$4"``#\ -M_________XE]`@```````@```(8"``#\_________\]]`@```````@```#`! -M``#\_________]I]`@```````@```$4"``#\_________WE^`@```````@`` -M`&D!``#\_________X]^`@```````@```#`!``#\_________YI^`@`````` -M`@```$4"``#\_________[1^`@```````@```'\"``#\_________\E^`@`` -M````"P```%<!`````````````-U^`@```````@```)T"``#\_________U9_ -M`@```````@```/0!``#\_________TV``@```````@```.\!``#\________ -M_X&``@```````@```.\!``#\_________[F``@```````@```%\!``#\____ -M_____Q."`@```````@```(8!``#\_________R6"`@```````@```'0!``#\ -M_________S>"`@```````@```*P!``#\_________TF"`@```````@```&D! -M``#\_________V."`@```````@```'\"``#\_________WB"`@``````"P`` -M`%<!`````````````)*"`@```````@```)T"``#\_________^2"`@`````` -M`@```,P!``#\_________U&#`@```````@```#`"``#\_________WB#`@`` -M`````@```+T!``#\_________YR#`@```````@```!P"``#\_________P2$ -M`@```````@```,P!``#\_________S^$`@```````@```%\!``#\________ -M_VV$`@```````@```,0!``#\_________YF$`@```````@```#`!``#\____ -M_____ZB$`@```````@```$4"``#\_________^&$`@```````@```%\!``#\ -M_________YF%`@```````@```)("``#\__________N)`@```````@```#<" -M``#\__________V*`@``````"P````,```!`'0```````)>+`@```````@`` -M`)("``#\_________\V+`@```````@```)("``#\__________B+`@`````` -M`@```)("``#\_________S*,`@```````@```)("``#\_________W>,`@`` -M`````@```)("``#\_________ZV,`@```````@```)("``#\_________]B, -M`@```````@```)("``#\_________PV-`@```````@```)("``#\________ -M_\V-`@``````"P````,`````'@```````.F-`@``````"P````,````%'@`` -M`````/F-`@``````"P````,````$'@````````J.`@``````"P````,````` -M'@```````!N.`@```````@`````"``#\_________ZV.`@```````@```,P! -M``#\_________]V.`@```````@```,P!``#\_________PV/`@```````@`` -M`,P!``#\_________UV/`@```````@```,P!``#\_________XV/`@`````` -M`@```,P!``#\_________PJ0`@```````@```,P!``#\_________U.1`@`` -M`````@```$4!``#\_________XN2`@```````@```,L!``#\_________].2 -M`@```````@```.T!``#\_________Q.3`@```````@```.T!``#\________ -M_P^4`@```````@```#`!``#\_________QV4`@```````@```(P!``#\____ -M_____S>5`@```````@```$8!``#\_________V"5`@```````@```&@!``#\ -M_________VR5`@```````@```#<"``#\_________X65`@```````@```-D! -M``#\__________*5`@```````@```/(!``#\_________UF6`@```````@`` -M`)8!``#\_________RF7`@```````@```$4"``#\_________Z27`@`````` -M`@```'@!``#\_________Z^7`@```````@```$4"``#\_________^>7`@`` -M`````@```,P!``#\__________*7`@```````@```&L!``#\__________J7 -M`@```````@```$H!``#\_________T"8`@```````@````@"``#\________ -M_U"8`@```````@```$8"``#\_________VJ8`@```````@```$4"``#\____ -M_____ZV8`@``````"P```#4!`````````````+B8`@```````@```$8!``#\ -M__________.8`@```````@````@"``#\_________S29`@``````"P```#4! -M`````````````#^9`@```````@```$8!``#\_________X^9`@```````@`` -M``@"``#\_________Z.9`@```````@```$8"``#\_________[:9`@`````` -M`@```$4"``#\_________P&:`@``````"P````$`````FP(```````Z:`@`` -M`````@```,8!``#\_________QZ:`@```````@```"X!``#\_________RF: -M`@```````@```$8!``#\_________W2:`@```````@````@"``#\________ -M_[2:`@``````"P```)X!`````````````+^:`@```````@```$8!``#\____ -M_____\^:`@```````@```*0"``#\_________]N:`@```````@```*0"``#\ -M_________\N;`@```````@```#`!``#\_________]J;`@```````@```(P! -M``#\_________^6;`@```````@```$4"``#\_________R*<`@```````@`` -M``\"``#\_________SZ<`@```````@```#`!``#\_________TR<`@`````` -M`@```(P!``#\_________U><`@```````@```$4"``#\_________U>=`@`` -M`````@```*0"``#\_________V*=`@```````@```$4"``#\_________X^= -M`@```````@````\"``#\_________YN=`@```````@```*0"``#\________ -M_Z:=`@```````@```$4"``#\__________"=`@```````@````@"``#\____ -M_____S*>`@```````@```!4"``#\_________T&>`@```````@```$4"``#\ -M_________U>>`@``````"P```#4!`````````````&*>`@```````@```$8! -M``#\_________Z:>`@```````@````@"``#\_________\2>`@```````@`` -M`$8"``#\_________]Z>`@```````@```$4"``#\_________T*?`@`````` -M"P```#4!`````````````%.?`@```````@```,8!``#\_________V6?`@`` -M`````@```"X!``#\_________W"?`@```````@```$8!``#\_________\.? -M`@```````@````@"``#\_________^2?`@```````@```$8"``#\________ -M_P"@`@```````@```$4"``#\_________VJ@`@``````"P```#4!```````` -M`````'>@`@```````@```,8!``#\_________XB@`@```````@```"X!``#\ -M_________Y.@`@```````@```$8!``#\_________^J@`@```````@````@" -M``#\_________PBA`@```````@```$8"``#\_________R2A`@```````@`` -M`$4"``#\_________X*A`@``````"P```#4!`````````````):A`@`````` -M`@```,8!``#\_________Z>A`@```````@```"X!``#\_________[*A`@`` -M`````@```$8!``#\_________PJB`@```````@````@"``#\_________RBB -M`@```````@```$8"``#\_________T2B`@```````@```$4"``#\________ -M_YJB`@``````"P```#4!`````````````*>B`@```````@```,8!``#\____ -M_____[BB`@```````@```"X!``#\_________\.B`@```````@```$8!``#\ -M_________S>C`@```````@````@"``#\_________^"C`@``````"P````$` -M``!PE@(``````.ZC`@```````@```,8!``#\__________FC`@```````@`` -M`$8!``#\_________S^F`@```````@```'4!``#\_________U"F`@`````` -M`@```'@!``#\_________Z2F`@```````@```,P!``#\_________WRG`@`` -M`````@````X"``#\_________P6H`@```````@````@"``#\_________R2H -M`@```````@````$"``#\_________S>H`@```````@```$4"``#\________ -M_XRH`@``````"P```%X!`````````````)JH`@```````@```,8!``#\____ -M_____Z6H`@```````@```$8!``#\_________P6I`@```````@````@"``#\ -M_________QFI`@```````@````$"``#\_________W"I`@``````"P```%X! -M`````````````'ZI`@```````@```,8!``#\_________XFI`@```````@`` -M`$8!``#\_________Y.I`@```````@```*0"``#\_________^RI`@`````` -M`@````@"``#\__________RI`@```````@````$"``#\_________T^J`@`` -M````"P```%X!`````````````%VJ`@```````@```,8!``#\_________VBJ -M`@```````@```$8!``#\_________[6J`@```````@````@"``#\________ -M_\6J`@```````@````$"``#\_________Q2K`@``````"P```%X!```````` -M`````"*K`@```````@```,8!``#\_________RVK`@```````@```$8!``#\ -M_________V2K`@```````@```*4!``#\_________W2K`@```````@```$(" -M``#\_________X"L`@```````@```*4!``#\_________Y"L`@```````@`` -M`$("``#\__________BL`@```````@```$P!``#\_________XNM`@`````` -M`@```+4!``#\__________&M`@```````@```#8"``#\_________R"N`@`` -M`````@```*4!``#\_________S"N`@```````@```$("``#\_________YZN -M`@```````@```!0"``#\_________P*O`@```````@```"<"``#\________ -M_UBO`@```````@```$4!``#\_________WNO`@```````@```/(!``#\____ -M_____XRO`@```````@```"<"``#\_________\.O`@```````@```$4!``#\ -M_________]2O`@```````@```"<"``#\__________:O`@```````@```'\" -M``#\_________QFP`@```````@```'\"``#\_________WBP`@```````@`` -M`*$!``#\_________[NP`@```````@```$4!``#\_________].P`@`````` -M`@```)8!``#\_________]ZP`@```````@```#X"``#\_________YRQ`@`` -M`````@```,P!``#\_________Z^Q`@```````@```-P!``#\_________\ZQ -M`@``````"P```#T!`````````````.6Q`@```````@```)T"``#\________ -M_W2R`@```````@```,P!``#\_________X>R`@```````@```#X"``#\____ -M_____Z*R`@``````"P```#("`````````````+FR`@```````@```)T"``#\ -M_________V6S`@```````@```$4!``#\_________W"S`@```````@```+(! -M``#\_________WNS`@```````@````X"``#\_________Q*T`@``````"P`` -M`#T!`````````````"FT`@```````@```)T"``#\_________\6T`@`````` -M"P```#("`````````````-RT`@```````@```)T"``#\_________X2V`@`` -M`````@```,P!``#\_________]ZV`@```````@```$,!``#\_________^VV -M`@```````@```$4"``#\_________RJW`@```````@```/,!``#\________ -M_UJW`@```````@```+T!``#\_________W:W`@```````@```$D!``#\____ -M_____Z>W`@```````@```,P!``#\_________Q&X`@```````@```#`"``#\ -M_________R>X`@```````@```$,!``#\_________S2X`@```````@```$4" -M``#\_________Z2X`@```````@```#$!``#\_________]2X`@```````@`` -M`%@!``#\_________]ZX`@```````@```*0"``#\_________P2Y`@`````` -M`@```#0!``#\_________QZY`@```````@```/\!``#\_________TVY`@`` -M`````@```/L!``#\_________UZY`@```````@```,`!``#\_________W&Y -M`@``````"P````8```"?`0```````'NY`@```````@```*\"``#\________ -M_Y"Y`@```````@```+H"``#\_________Z6Y`@```````@```+H"``#\____ -M_____^VY`@```````@```%T!``#\_________Q2Z`@```````@```,P!``#\ -M_________U*Z`@```````@```,0!``#\_________YBZ`@```````@```#$! -M``#\_________\>Z`@```````@```%@!``#\_________]&Z`@```````@`` -M`*0"``#\__________>Z`@```````@```#0!``#\_________Q&[`@`````` -M`@```/\!``#\_________RR[`@```````@```/L!``#\_________SV[`@`` -M`````@```,`!``#\_________U"[`@``````"P````8```"?`0```````%J[ -M`@```````@```*\"``#\_________V^[`@```````@```+H"``#\________ -M_X"[`@``````"P````8```"?`0```````(J[`@```````@```*\"``#\____ -M_____Y^[`@```````@```+H"``#\_________Q^\`@```````@```+H"``#\ -M_________XF\`@```````@```,P!``#\_________[Z\`@```````@```+H" -M``#\_________]>\`@```````@```%T!``#\_________R:]`@```````@`` -M``@"``#\_________SJ]`@```````@```$8"``#\_________U2]`@`````` -M`@```$4"``#\_________]F]`@``````"P```#4!`````````````.J]`@`` -M`````@```,8!``#\__________R]`@```````@```"X!``#\_________P>^ -M`@```````@```$8!``#\_________T2^`@```````@```*4!``#\________ -M_U2^`@```````@```$("``#\_________TB_`@```````@```"<"``#\____ -M_____XF_`@```````@```$("``#\_________]V_`@```````@```,P!``#\ -M_________[K#`@```````@```/0!``#\_________^7#`@```````@```!X" -M``#\_________VO$`@``````"P````$````PT0(``````(S$`@```````@`` -M`'P!``#\_________XO%`@``````"P````$````PT0(``````+_%`@`````` -M`@```'P!``#\_________[S&`@``````"P````$````PT0(``````._&`@`` -M`````@```'P!``#\_________U?'`@``````"P````$````PT0(``````(?' -M`@```````@```'P!``#\_________]?'`@``````"P````$````PT0(````` -M``?(`@```````@```'P!``#\_________]7(`@```````@```!\"``#\____ -M_____TW)`@```````@```#8!``#\_________R7*`@```````@```.$!``#\ -M_________\/*`@```````@```+H!``#\_________S?+`@```````@```/0! -M``#\_________V?+`@```````@```"`"``#\_________X3+`@```````@`` -M`,4!``#\_________Z7,`@```````@```!X"``#\_________VO.`@`````` -M`@```-$!``#\_________ZW.`@```````@```.$!``#\_________U3/`@`` -M`````@```+H!``#\_________]7/`@```````@```&$!``#\_________VK0 -M`@```````@```+H!``#\_________Q+1`@```````@```+H!``#\________ -M_V31`@```````@```!X"``#\_________\[1`@```````@```+H!``#\____ -M_____PK2`@```````@```+H!``#\_________UO2`@```````@```+H!``#\ -M_________YO2`@```````@```+H!``#\_________PW6`@```````@```+H! -M``#\_________W#6`@```````@```)("``#\_________Y36`@```````@`` -M`)("``#\__________'7`@```````@```-X!``#\_________S_9`@`````` -M`@```)("``#\_________U[9`@```````@```)("``#\_________WK9`@`` -M`````@```$4"``#\_________]G9`@```````@```*0"``#\_________^G9 -M`@```````@```)("``#\_________Q+:`@```````@```*0"``#\________ -M_R+:`@```````@```)("``#\_________R_;`@```````@```*0"``#\____ -M_____S[;`@```````@```)("``#\_________U#;`@```````@```*0"``#\ -M_________UC;`@```````@```)("``#\_________W?;`@```````@```*0" -M``#\_________W_;`@```````@```)("``#\_________ZG;`@```````@`` -M`*0"``#\_________[C;`@```````@```)("``#\_________\K;`@`````` -M`@```*0"``#\_________]+;`@```````@```)("``#\__________';`@`` -M`````@```*0"``#\__________G;`@```````@```)("``#\_________S[< -M`@```````@```*0"``#\_________ZS<`@```````@```*0"``#\________ -M_\'<`@```````@```%@!``#\_________Q[=`@```````@````@"``#\____ -M_____XW=`@``````"P```*H!`````````````)3=`@``````"P```#P!```` -M`````````*?=`@```````@```$8!``#\_________P7>`@```````@````@" -M``#\_________W7>`@``````"P```%,!`````````````'W>`@```````@`` -M`$8!``#\_________Q#?`@```````@```)("``#\_________S[?`@`````` -M`@```)("``#\_________X_?`@```````@```.0!``#\_________YS?`@`` -M`````@```$X!``#\_________^_?`@```````@````@"``#\_________T+@ -M`@``````"P```%,!`````````````$K@`@```````@```$8!``#\________ -M_^3@`@```````@```)("``#\_________Q+A`@```````@```)("``#\____ -M_____U_A`@```````@```"P!``#\_________VSA`@```````@```$X!``#\ -M_________];A`@```````@````@"``#\_________RCB`@``````"P```*H! -M`````````````"_B`@``````"P```#P!`````````````$+B`@```````@`` -M`$8!``#\_________YCB`@```````@````@"``#\_________P/C`@`````` -M"P````$```!`'@,``````!7C`@```````@```$8!``#\_________T+C`@`` -M````"P```&`!`````````````-[C`@```````@```*0"``#\_________^OC -M`@```````@```)("``#\_________P#D`@```````@```*0"``#\________ -M_PKD`@```````@```)("``#\_________\[D`@```````@```*0"``#\____ -M_____]OD`@```````@```)("``#\__________#D`@```````@```*0"``#\ -M__________KD`@```````@```)("``#\_________X[E`@```````@```#L" -M``#\_________\/E`@```````@```"("``#\_________\OE`@```````@`` -M`-X!``#\_________Q'F`@```````@```)("``#\_________S'F`@`````` -M`@```)("``#\_________TWF`@```````@```)("``#\_________WKF`@`` -M`````@```)("``#\_________\WF`@```````@````L"``#\_________]7F -M`@```````@```"\!``#\_________SOG`@```````@```*0"``#\________ -M_TOG`@```````@```)("``#\_________W#G`@```````@```*0"``#\____ -M_____X#G`@```````@```)("``#\_________XGJ`@```````@```","``#\ -M_________]_J`@``````"P````4```!``P```````.GJ`@```````@```*\" -M``#\_________YKK`@``````"P````8```"U`0```````*3K`@```````@`` -M`*\"``#\_________\'K`@```````@```*0"``#\_________\OK`@`````` -M`@```)("``#\_________]?K`@``````"P````8```#'`0```````.'K`@`` -M`````@```*\"``#\__________GK`@``````"P````4```!@`P````````/L -M`@```````@```*\"``#\_________Q'L`@```````@```)("``#\________ -M_QOL`@``````"P````8```#B`0```````"7L`@```````@```*\"``#\____ -M_____S?L`@```````@```*0"``#\_________T'L`@```````@```)("``#\ -M_________TWL`@``````"P````8```#'`0```````%?L`@```````@```*\" -M``#\_________VGL`@``````"P````4```!@`P```````'/L`@```````@`` -M`*\"``#\_________X'L`@```````@```)("``#\_________Y[L`@`````` -M`@```*0"``#\_________Z?L`@```````@```)("``#\_________[/L`@`` -M````"P````8```#'`0```````+WL`@```````@```*\"``#\_________]7L -M`@``````"P````4```!@`P```````-_L`@```````@```*\"``#\________ -M_^OL`@```````@```)("``#\__________7L`@``````"P````8```#B`0`` -M`````/_L`@```````@```*\"``#\_________Q'M`@```````@```*0"``#\ -M_________QKM`@```````@```)("``#\_________R;M`@``````"P````8` -M``#'`0```````##M`@```````@```*\"``#\_________T+M`@``````"P`` -M``4```!@`P```````$SM`@```````@```*\"``#\_________UCM`@`````` -M`@```)("``#\_________V+M`@``````"P````8```#B`0```````&SM`@`` -M`````@```*\"``#\_________Y3M`@``````"P````8```#[`0```````)[M -M`@```````@```*\"``#\_________[KM`@```````@```*0"``#\________ -M_\3M`@```````@```)("``#\_________]OM`@```````@```*0"``#\____ -M_____^3M`@```````@```)("``#\__________+M`@``````"P````8```#' -M`0```````/SM`@```````@```*\"``#\_________R/N`@``````"P````4` -M``!@`P```````"WN`@```````@```*\"``#\_________T;N`@```````@`` -M`)("``#\_________U+N`@``````"P````8```#B`0```````%SN`@`````` -M`@```*\"``#\_________W'N`@```````@```*0"``#\_________WON`@`` -M`````@```)("``#\_________XGN`@``````"P````8```#'`0```````)/N -M`@```````@```*\"``#\_________Z?N`@``````"P````4```!@`P`````` -M`+'N`@```````@```*\"``#\_________[_N`@```````@```)("``#\____ -M_____\ON`@``````"P````8```#B`0```````-7N`@```````@```*\"``#\ -M_________^KN`@```````@```*0"``#\__________3N`@```````@```)(" -M``#\_________P+O`@``````"P````8```#'`0````````SO`@```````@`` -M`*\"``#\_________R;O`@``````"P````4```!@`P```````##O`@`````` -M`@```*\"``#\_________S[O`@```````@```)("``#\_________TKO`@`` -M````"P````8```#B`0```````%3O`@```````@```*\"``#\_________VGO -M`@```````@```*0"``#\_________W/O`@```````@```)("``#\________ -M_X'O`@``````"P````8```#'`0```````(OO`@```````@```*\"``#\____ -M_____YSO`@``````"P````4```!@`P```````*;O`@```````@```*\"``#\ -M_________[3O`@```````@```)("``#\_________\7O`@```````@```)(" -M``#\_________]'O`@``````"P````8```#B`0```````-OO`@```````@`` -M`*\"``#\__________#O`@```````@```*0"``#\__________GO`@`````` -M`@```)("``#\_________P?P`@``````"P````8```#'`0```````!'P`@`` -M`````@```*\"``#\_________R7P`@``````"P````4```!@`P```````"_P -M`@```````@```*\"``#\_________SOP`@```````@```)("``#\________ -M_T?P`@``````"P````8```#B`0```````%'P`@```````@```*\"``#\____ -M_____V;P`@```````@```*0"``#\_________V_P`@```````@```)("``#\ -M_________WWP`@``````"P````8```#'`0```````(?P`@```````@```*\" -M``#\_________Z'P`@``````"P````4```!@`P```````*OP`@```````@`` -M`*\"``#\_________[?P`@```````@```)("``#\_________\/P`@`````` -M"P````8```#B`0```````,WP`@```````@```*\"``#\_________^+P`@`` -M`````@```*0"``#\_________^OP`@```````@```)("``#\__________GP -M`@``````"P````8```#'`0````````/Q`@```````@```*\"``#\________ -M_Q3Q`@``````"P````4```!@`P```````![Q`@```````@```*\"``#\____ -M_____RKQ`@```````@```)("``#\_________S;Q`@``````"P````8```#B -M`0```````$#Q`@```````@```*\"``#\_________W+Q`@```````@```*0" -M``#\_________XGQ`@```````@```)("``#\_________YCQ`@``````"P`` -M``8```#'`0```````*+Q`@```````@```*\"``#\_________[GQ`@`````` -M"P````4```!@`P```````,/Q`@```````@```*\"``#\_________\[Q`@`` -M`````@```)("``#\__________KQ`@```````@```*0"``#\_________Q'R -M`@```````@```)("``#\_________R#R`@``````"P````8```#'`0`````` -M`"KR`@```````@```*\"``#\_________T'R`@``````"P````4```!@`P`` -M`````$OR`@```````@```*\"``#\_________U;R`@```````@```)("``#\ -M_________V+R`@``````"P````8```#B`0```````&SR`@```````@```*\" -M``#\_________^SR`@```````@```/0!``#\_________V#T`@```````@`` -M`/0!``#\_________WOT`@```````@```/0!``#\__________#T`@`````` -M`@```&X!``#\_________QKV`@```````@```*0"``#\_________T7V`@`` -M`````@```*0"``#\_________P[W`@```````@```$(!``#\_________R_W -M`@```````@```.L!``#\_________T7W`@```````@```"8"``#\________ -M_U3W`@```````@```"8"``#\_________]WW`@```````@```)("``#\____ -M_____POX`@```````@```)("``#\_________S_X`@```````@```*0"``#\ -M_________U?X`@```````@```)("``#\_________Z7X`@```````@```)(" -M``#\_________PSY`@```````@```)("``#\_________W_Y`@```````@`` -M`)("``#\_________S?Z`@```````@```*0"``#\_________TKZ`@`````` -M`@```)("``#\_________V?Z`@```````@```/$!``#\_________W+Z`@`` -M`````@````,"``#\_________X3Z`@```````@```*0"``#\_________Y[Z -M`@```````@```*0"``#\_________[CZ`@```````@```*0"``#\________ -M_]CZ`@```````@```)`!``#\_________^GZ`@```````@```)("``#\____ -M_____S?[`@```````@```*0"``#\_________TK[`@```````@```)("``#\ -M_________V?[`@```````@```/$!``#\_________W+[`@```````@````," -M``#\_________X3[`@```````@```*0"``#\_________Y[[`@```````@`` -M`*0"``#\_________[C[`@```````@```*0"``#\_________]C[`@`````` -M`@```)`!``#\_________^G[`@```````@```)("``#\_________PW\`@`` -M`````@```*0"``#\_________QC\`@```````@```+$!``#\_________S;\ -M`@```````@```(\!``#\_________T/\`@```````@```)("``#\________ -M_U[\`@```````@```)("``#\_________W+\`@```````@```)("``#\____ -M_____US]`@```````@```)("``#\__________O]`@```````@````@"``#\ -M_________QG^`@```````@```$8"``#\_________S7^`@```````@```$4" -M``#\_________YO^`@``````"P````$```!`'@,``````*C^`@```````@`` -M`,8!``#\_________[?^`@```````@```"X!``#\_________\+^`@`````` -M`@```$8!``#\_________]S_`@``````"P````4```"``P```````.;_`@`` -M`````@```*\"``#\_________W4``P``````"P````4```#0`P```````'\` -M`P```````@```*\"``#\_________X\``P```````@```,0!``#\________ -M_ZH``P```````@```,<!``#\_________WL!`P```````@```/`!``#\____ -M______8!`P``````"P```$0!``````````````$"`P```````@```.(!``#\ -M_________QD"`P```````@```+0!``#\_________W,"`P```````@```/`! -M``#\_________X8"`P```````@```*`!``#\_________[8"`P```````@`` -M`!P"``#\_________VD#`P```````@```'`!``#\_________W,#`P`````` -M`@```#\"``#\_________SL$`P```````@```,0!``#\_________[P$`P`` -M`````@```,P!``#\_________Q$%`P```````@```#`"``#\_________S,% -M`P```````@```+T!``#\_________T,%`P```````@```!P"``#\________ -M_^,%`P```````@```)P!``#\_________Y@&`P```````@```,P!``#\____ -M_____Q@'`P```````@```)P!``#\_________[,'`P```````@```+H"``#\ -M_________\D'`P```````@```+H"``#\__________P'`P```````@```)P! -M``#\_________V((`P```````@```+H"``#\_________[`(`P```````@`` -M`+H"``#\_________^X(`P```````@```#$!``#\_________R0)`P`````` -M`@```%@!``#\_________RX)`P```````@```*0"``#\_________U0)`P`` -M`````@```#0!``#\_________VX)`P```````@```/\!``#\_________XD) -M`P```````@```/L!``#\_________YH)`P```````@```,`!``#\________ -M_ZT)`P``````"P````8````*`@```````+<)`P```````@```*\"``#\____ -M_____\P)`P```````@```+H"``#\_________^$)`P``````"P````8````* -M`@```````.L)`P```````@```*\"``#\_________P`*`P```````@```+H" -M``#\_________TX*`P```````@```+H"``#\_________YH*`P```````@`` -M`%T!``#\_________[4*`P```````@```+H"``#\_________PT+`P`````` -M`@```.@!``#\_________SD+`P```````@```,0!``#\_________U8+`P`` -M`````@```+0!``#\_________YT+`P```````@```!`"``#\_________^X+ -M`P``````"P````,```"`'@```````%4,`P```````@```-0!``#\________ -M_V8,`P```````@```)("``#\_________X8,`P```````@```*\!``#\____ -M_____Z(,`P```````@```*\!``#\_________[X,`P```````@```*\!``#\ -M_________]H,`P```````@```*\!``#\__________L,`P```````@```*,! -M``#\_________QT-`P```````@```*,!``#\_________TH-`P```````@`` -M`*,!``#\_________VP-`P```````@```*,!``#\_________W8-`P`````` -M`@```*0"``#\_________Z,-`P```````@```*,!``#\_________\4-`P`` -M`````@```*,!``#\_________\\-`P```````@```*0"``#\_________^L- -M`P```````@```*\!``#\_________P<.`P```````@```*\!``#\________ -M_R,.`P```````@```*\!``#\_________T4.`P```````@```*,!``#\____ -M_____V$.`P```````@```*\!``#\_________[8.`P```````@```*0"``#\ -M_________S8/`P```````@```)("``#\_________U0/`P```````@```)(" -M``#\_________V@/`P```````@```*0"``#\_________W@/`P```````@`` -M`+T!``#\_________X</`P```````@```*0"``#\_________YX/`P`````` -M`@```*\!``#\_________Z@/`P```````@```*0"``#\_________\0/`P`` -M`````@```*\!``#\_________\X/`P```````@```*0"``#\__________L/ -M`P```````@```*,!``#\_________P40`P```````@```*0"``#\________ -M_R$0`P```````@```*\!``#\_________RL0`P```````@```*0"``#\____ -M_____S40`P```````@```(<!``#\_________T80`P```````@```.<!``#\ -M_________VX0`P```````@```*,!``#\_________Y`0`P```````@```*,! -M``#\_________[(0`P```````@```*,!``#\_________]00`P```````@`` -M`*,!``#\__________`0`P```````@```*\!``#\__________\0`P`````` -M`@```*0"``#\_________Q81`P```````@```*\!``#\_________R`1`P`` -M`````@```*0"``#\_________T(1`P```````@```*,!``#\_________UX1 -M`P```````@```*\!``#\_________W\1`P```````@```*,!``#\________ -M_YL1`P```````@```#\"``#\_________[01`P```````@```*\!``#\____ -M_____[X1`P```````@```*0"``#\_________^@1`P```````@```*,!``#\ -M__________(1`P```````@```*0"``#\_________PL2`P```````@```*\! -M``#\_________Q42`P```````@```*0"``#\_________U,3`P```````@`` -M`#`!``#\_________UX3`P```````@```$4"``#\_________\43`P`````` -M`@```)("``#\_________^P3`P```````@```)("``#\_________RT4`P`` -M`````@```)("``#\_________U84`P```````@```#`!``#\_________V$4 -M`P```````@```$4"``#\_________VP4`P```````@```-0!``#\________ -M_\05`P```````@```!`"``#\_________\X5`P```````@```*0"``#\____ -M_____^T5`P```````@```!`"``#\__________<5`P```````@```*0"``#\ -M_________X46`P```````@```)("``#\_________YP6`P```````@```)(" -M``#\_________]L6`P```````@```*0"``#\__________06`P```````@`` -M`+T!``#\_________P\7`P```````@````("``#\_________R07`P`````` -M`@````("``#\_________S(7`P```````@```*0"``#\_________V`7`P`` -M`````@```)("``#\_________X87`P```````@```)("``#\_________YX7 -M`P```````@```*0"``#\_________Z\7`P``````"P````4````(!``````` -M`+D7`P```````@```*\"``#\_________\D7`P```````@````@"``#\____ -M_____Q@8`P``````"P````$```!`'@,``````",8`P```````@```$8!``#\ -M_________S08`P``````"P````8````@`@```````#X8`P```````@```*\" -M``#\_________TX8`P```````@````@"``#\_________YT8`P``````"P`` -M``$```!`'@,``````*@8`P```````@```$8!``#\_________],8`P`````` -M`@````@"``#\_________R89`P``````"P````$```!`'@,``````#09`P`` -M`````@```$8!``#\_________TH9`P```````@````@"``#\_________YT9 -M`P``````"P````$```!`'@,``````*L9`P```````@```$8!``#\________ -M_\$9`P```````@````@"``#\_________Q`:`P``````"P````$```!`'@,` -M`````!L:`P```````@```$8!``#\_________S@:`P```````@````@"``#\ -M_________X<:`P``````"P````$```!`'@,``````)(:`P```````@```$8! -M``#\_________Z@:`P```````@````@"``#\_________P(;`P``````"P`` -M``$```!`'@,```````T;`P```````@```$8!``#\_________T$;`P`````` -M`@```/`!``#\_________V$;`P```````@```)T!``#\_________[L;`P`` -M`````@```-0!``#\__________<;`P```````@```-0!``#\_________PD< -M`P```````@```,P!``#\_________UD<`P```````@```#`"``#\________ -M_X$<`P```````@```+T!``#\_________Y8<`P```````@```!P"``#\____ -M_____\0<`P```````@```,P!``#\_________R(=`P```````@```#`"``#\ -M_________TT=`P```````@```+T!``#\_________V(=`P```````@```!P" -M``#\_________YL=`P```````@```,P!``#\_________\D=`P```````@`` -M`%\!``#\_________^<=`P```````@```,0!``#\_________U$?`P`````` -M`@```#`!``#\_________UP?`P```````@```$4"``#\_________]8?`P`` -M`````@```*0"``#\_________QP@`P```````@```/,!``#\_________S$@ -M`P```````@```+T!``#\_________XH@`P``````"P````4```!`!``````` -M`)0@`P```````@```*\"``#\_________Z8@`P```````@```+\!``#\____ -M_____Y,A`P```````@```#`!``#\_________YXA`P```````@```$4"``#\ -M_________[4A`P```````@```#`!``#\_________\`A`P```````@```$4" -M``#\_________\LA`P```````@```+T!``#\_________[$B`P```````@`` -M`+X!``#\_________\@B`P```````@```+X!``#\_________]\B`P`````` -M`@```&4!``#\__________$B`P```````@```,@!``#\_________P0C`P`` -M`````@```.X!``#\_________R$C`P```````@```(4!``#\_________S,C -M`P```````@```+,!``#\_________T4C`P```````@```#P"``#\________ -M_UDC`P```````@```"T"``#\_________X0C`P```````@```,P!``#\____ -M_____^(C`P```````@```#`"``#\_________PTD`P```````@```+T!``#\ -M_________R(D`P```````@```!P"``#\_________W<D`P```````@```%\! -M``#\_________X8D`P```````@```,P!``#\_________[$D`P``````"P`` -M``8````V`@```````+LD`P```````@```*\"``#\_________\@D`P`````` -M`@```%\!``#\_________^@D`P```````@```,0!``#\_________VDF`P`` -M`````@```/T!``#\_________W<F`P``````"P````,```"H'P```````,TF -M`P```````@```+0!``#\_________T,G`P```````@```/`!``#\________ -M_U@G`P```````@```*`!``#\_________Y<G`P```````@```!P"``#\____ -M_____R0H`P```````@```,P!``#\_________T4H`P```````@```#X!``#\ -M_________X,H`P```````@```/0!``#\_________S0I`P```````@```+H" -M``#\_________VPI`P```````@```#$!``#\_________X8I`P```````@`` -M`%@!``#\_________Y`I`P```````@```*0"``#\_________[LI`P`````` -M`@```#0!``#\_________]@I`P```````@```/\!``#\__________PI`P`` -M`````@```/L!``#\_________Q`J`P```````@```,`!``#\_________RLJ -M`P```````@```+H"``#\_________T8J`P```````@```+H"``#\________ -M_WXJ`P```````@```%T!``#\_________^TJ`P```````@```#X!``#\____ -M______LJ`P```````@```/@!``#\_________[$K`P```````@```/0!``#\ -M_________P`M`P```````@```#`"``#\_________Q0M`P```````@```!P" -M``#\_________T$M`P```````@```%\!``#\_________TTM`P```````@`` -M`+0!``#\__________HM`P```````@```,P!``#\_________QLN`P`````` -M`@```#X!``#\_________T\N`P```````@```#X!``#\_________W\N`P`` -M`````@```#X!``#\_________Y$N`P```````@```/0!``#\_________\\N -M`P```````@```%0!``#\_________QHP`P```````@```.D!``#\________ -M_SPP`P```````@```,P!``#\_________U`P`P```````@```#$!``#\____ -M_____V0P`P```````@```%@!``#\_________VXP`P```````@```*0"``#\ -M_________Y8P`P```````@```/L!``#\_________Z<P`P```````@```,`! -M``#\_________[PP`P```````@```+H"``#\_________]$P`P```````@`` -M`+H"``#\__________TP`P```````@```%T!``#\_________Q@Q`P`````` -M`@```&<!``#\_________X@Q`P```````@````D"``#\_________Z4Q`P`` -M`````@```#X!``#\_________^DQ`P```````@```#X!``#\_________QHR -M`P```````@```#X!``#\_________RPR`P```````@```%0!``#\________ -M_SXR`P```````@```,<!``#\_________V<R`P```````@```%0!``#\____ -M_____[LS`P```````@```+0!``#\_________^,T`P```````@```#`"``#\ -M__________(T`P```````@```!P"``#\_________S8U`P```````@```,0! -M``#\_________W4U`P```````@```#X!``#\_________YPU`P```````@`` -M`)D!``#\_________P8V`P```````@```(X!``#\_________QLV`P`````` -M"P```$0!`````````````"8V`P```````@```.(!``#\_________THV`P`` -M`````@```*8!``#\_________U4V`P```````@```(X!``#\_________X\V -M`P```````@````("``#\_________YTV`P```````@```*0"``#\________ -M_^TV`P```````@```%T!``#\_________P0W`P```````@```#H"``#\____ -M_____S<W`P```````@```-0!``#\_________UDW`P```````@```'\"``#\ -M_________V4W`P```````@```-4!``#\_________WLW`P```````@```,P! -M``#\_________YTW`P```````@```/L!``#\_________ZXW`P```````@`` -M`,`!``#\_________\,W`P```````@```+H"``#\_________]@W`P`````` -M`@```+H"``#\_________^\W`P```````@```%T!``#\_________Q`X`P`` -M`````@```,P!``#\_________R$X`P```````@```+0!``#\_________V(X -M`P```````@```+T!``#\_________T$Y`P```````@```#`!``#\________ -M_TPY`P```````@```$4"``#\_________Y@Y`P``````"P````4```!@!``` -M`````*(Y`P```````@```*\"``#\_________\DY`P```````@```%T!``#\ -M_________]@Y`P```````@```,0!``#\__________$Y`P```````@```*0" -M``#\__________PY`P```````@```$4"``#\_________Q$Z`P```````@`` -M`!`"``#\_________QTZ`P```````@```*0"``#\_________R@Z`P`````` -M`@```$4"``#\_________S,Z`P```````@```%H!``#\_________Y0Z`P`` -M`````@```,P!``#\__________4Z`P```````@```+T!``#\_________VL\ -M`P```````@```*,!``#\_________\0\`P```````@```#`!``#\________ -M_\\\`P```````@```$4"``#\_________^,\`P```````@```-0!``#\____ -M_____PX]`P``````"P````,```"P'P```````$0]`P```````@```)("``#\ -M_________Y8]`P```````@```)("``#\_________\$]`P```````@```)(" -M``#\_________R0^`P```````@```)("``#\_________TL^`P```````@`` -M`)("``#\_________[`^`P```````@```)("``#\_________^P^`P`````` -M`@```#`!``#\__________<^`P```````@```$4"``#\_________P<_`P`` -M`````@```,0!``#\_________T8_`P```````@```*0"``#\_________W4_ -M`P```````@```,,"``#\_________ZD_`P```````@```)("``#\________ -M_\\_`P```````@```)("``#\_________]0_`P```````@```,,"``#\____ -M_____TM``P```````@```,P!``#\_________Z5``P```````@```/L!``#\ -M_________\%``P```````@```,`!``#\_________^%``P```````@```+H" -M``#\_________WI!`P```````@```+H"``#\_________YM!`P```````@`` -M`%T!``#\_________\A!`P```````@```)("``#\_________^Y!`P`````` -M`@```)("``#\_________SY"`P```````@```,P!``#\_________WI"`P`` -M`````@```+0!``#\_________ZA"`P```````@```%@!``#\_________[)" -M`P```````@```*0"``#\__________%"`P```````@```)("``#\________ -M_Q=#`P```````@```)("``#\_________PA$`P```````@```)("``#\____ -M_____RM$`P```````@```)("``#\_________[M$`P```````@```)@!``#\ -M_________]A$`P```````@```"<"``#\_________Q=%`P```````@```)(" -M``#\_________SI%`P```````@```)("``#\_________W%%`P```````@`` -M`)("``#\_________Y1%`P```````@```)("``#\_________^E%`P`````` -M`@```)("``#\_________P]&`P```````@```)("``#\_________TQ&`P`` -M`````@```)("``#\_________W1&`P```````@```#`!``#\_________W]& -M`P```````@```$4"``#\_________XI&`P```````@```-0!``#\________ -M_Z%&`P```````@```%@!``#\_________ZM&`P```````@```*0"``#\____ -M_____P)(`P```````@```#`!``#\_________PU(`P```````@```$4"``#\ -M_________T](`P```````@```#`!``#\_________UI(`P```````@```$4" -M``#\_________W%(`P```````@```!P"``#\_________X5)`P```````@`` -M`(8"``#\_________^%)`P``````"P````8```!*`@```````.M)`P`````` -M`@```*\"``#\__________Y)`P```````@```#`!``#\_________PE*`P`` -M`````@```$4"``#\_________U!*`P```````@```,P!``#\_________]U* -M`P```````@```,P!``#\_________T5+`P```````@```!P"``#\________ -M_PY,`P```````@```*0"``#\_________Y%,`P```````@```*0"``#\____ -M_____^I,`P```````@```*0"``#\_________P]-`P```````@```#`!``#\ -M_________QI-`P```````@```$4"``#\_________RA-`P```````@```!L" -M``#\_________^E-`P```````@```*0"``#\_________S1.`P```````@`` -M`*0"``#\_________U).`P```````@```#`!``#\_________UU.`P`````` -M`@```$4"``#\_________VM.`P```````@```!L"``#\_________Z1.`P`` -M`````@```*0"``#\__________A.`P```````@```*0"``#\_________U1/ -M`P```````@```*0"``#\_________X]/`P```````@```*L!``#\________ -M_[]/`P```````@```#`!``#\_________\I/`P```````@```$4"``#\____ -M_____]5/`P```````@```!P"``#\_________SA0`P```````@```)("``#\ -M_________]]2`P```````@```#(!``#\__________-2`P```````@```#(! -M``#\_________P]3`P```````@```#(!``#\_________Y=3`P```````@`` -M`#(!``#\_________ZM3`P```````@```#(!``#\_________\E3`P`````` -M`@```#(!``#\_________PY4`P```````@```)@!``#\_________SY4`P`` -M`````@```.0!``#\_________X94`P```````@```-`!``#\_________\]4 -M`P```````@```#\!``#\_________]=4`P```````@```(D!``#\________ -M_^94`P``````"P````,```#8(````````"]5`P```````@```&8!``#\____ -M_____T15`P```````@```)\!``#\_________Z95`P```````@```*0"``#\ -M_________P5;`P```````@````L````<`0```````!%;`P``````"P````L` -M```@`0```````!Y;`P```````@```&(!``#\_________V9;`P```````@`` -M`!D"``#\_________SY<`P```````@```*@!``#\_________VM<`P`````` -M`@````T"``#\_________WI<`P```````@```*@!``#\_________UI=`P`` -M`````@```,P!``#\_________Z%=`P```````@```.`!``#\_________[Y= -M`P```````@```(8"``#\_________]5=`P```````@```%(!``#\________ -M_U->`P```````@```*0!``#\_________XI>`P```````@```)\!``#\____ -M_____])>`P```````@```,,!``#\_________P%@`P```````@```*0"``#\ -M_________Q-A`P```````@````L````>`0```````"!A`P``````"P````L` -M```@`0```````"IA`P```````@```&(!``#\_________VMA`P```````@`` -M``L````>`0```````'AA`P``````"P````L````@`0```````()A`P`````` -M`@```&(!``#\_________P-B`P```````@```)("``#\_________U%B`P`` -M`````@```)("``#\_________VEB`P```````@```%8!``#\_________WMB -M`P```````@```%8!``#\_________XUB`P```````@```%8!``#\________ -M_Y]B`P```````@```%8!``#\_________[%B`P```````@```%8!``#\____ -M_____\-B`P```````@```%8!``#\_________^9B`P```````@```)("``#\ -M_________S-C`P```````@```)("``#\_________U-C`P```````@```)(" -M``#\_________]QC`P```````@```%8!``#\_________R5D`P```````@`` -M``@"``#\_________SED`P```````@````$"``#\_________\MD`P`````` -M`@```(8"``#\__________AD`P```````@```(8"``#\_________P-E`P`` -M````"P```/P!`````````````!%E`P```````@```,8!``#\_________QQE -M`P```````@```$8!``#\_________VEE`P```````@````@"``#\________ -M_WEE`P```````@````$"``#\_________]-E`P``````"P```/P!```````` -M`````.%E`P```````@```,8!``#\_________^QE`P```````@```$8!``#\ -M_________TAF`P```````@```(T!``#\_________U9F`P```````@```%@! -M``#\_________V!F`P```````@```*0"``#\_________Y1F`P```````@`` -M`(,!``#\_________Z1F`P```````@```%@!``#\_________ZYF`P`````` -M`@```*0"``#\_________]-F`P```````@```(T!``#\_________^1F`P`` -M`````@```%@!``#\_________^YF`P```````@```*0"``#\_________S5G -M`P```````@```(,!``#\_________\UG`P```````@```$,!``#\________ -M_]AG`P```````@```$4"``#\_________T-J`P```````@```#T"``#\____ -M_____V%J`P```````@```),!``#\_________T9K`P```````@```+L!``#\ -M_________UMK`P``````"P```-L!`````````````)MK`P```````@```#T" -M``#\_________ZUK`P```````@```),!``#\_________T1L`P```````@`` -M`+L!``#\_________W%L`P```````@```+L!``#\_________Q]M`P`````` -M`@```',!``#\_________S=M`P```````@```(`!``#\_________T]M`P`` -M`````@```,X!``#\_________[=M`P``````"P````,````8(0```````"1Q -M`P```````@```,T!``#\_________[)Q`P```````@```,T!``#\________ -M_\MQ`P```````@```(8"``#\_________YUR`P```````@```&,!``#\____ -M_____R1T`P```````@```)("``#\_________SAT`P```````@```)("``#\ -M_________T9T`P```````@```*0"``#\_________X]T`P```````@````<` -M``#D`0```````-IT`P```````@```)("``#\_________PYU`P``````"P`` -M``<```#@`0```````#9U`P```````@````<```#T`0```````(1U`P`````` -M`@```)("``#\__________EU`P```````@````<````$`@```````$=V`P`` -M`````@```)("``#\_________WMV`P``````"P````<``````@```````)YV -M`P```````@````<````4`@```````.QV`P```````@```)("``#\________ -M_U=W`P``````"P````<```#P`0```````&EW`P``````"P````<````0`@`` -M`````/]W`P```````@```)("``#\_________Y)X`P```````@```)("``#\ -M_________S%Y`P```````@```)("``#\_________U!Y`P```````@```*0" -M``#\_________QYZ`P```````@```$$!``#\_________]!\`P```````@`` -M`/H!``#\_________U=^`P```````@````,````\)@```````&-^`P`````` -M"P````<```!@`P```````->"`P``````"P````<````@`@```````-R"`P`` -M`````@```'<"``#\_________UJ#`P```````@```&(!``#\_________VB# -M`P```````@```*0"``#\_________WV#`P```````@```"4"``#\________ -M_Z>#`P``````"P````8```!>`@```````+&#`P```````@```*\"``#\____ -M_____P:$`P```````@```)H"``#\_________QJ$`P```````@```)H"``#\ -M_________RZ$`P```````@```)H"``#\_________Z&$`P```````@```"L" -M``#\_________[N$`P```````@```*,"``#\_________\Z$`P```````@`` -M`*,"``#\_________^B$`P```````@```*,"``#\__________N$`P`````` -M`@```*,"``#\_________Q6%`P```````@```*,"``#\_________RB%`P`` -M`````@```*,"``#\_________T*%`P```````@```*,"``#\_________U6% -M`P```````@```*,"``#\_________X.%`P```````@```*,"``#\________ -M_Y.%`P```````@```*,"``#\_________[J%`P```````@```*,"``#\____ -M_____\V%`P```````@```*,"``#\_________^>%`P```````@```*,"``#\ -M__________J%`P```````@```*,"``#\_________Q2&`P```````@```*," -M``#\_________R>&`P```````@```*,"``#\_________T&&`P```````@`` -M`*,"``#\_________U2&`P```````@```*,"``#\_________VZ&`P`````` -M`@```*,"``#\_________X&&`P```````@```*,"``#\_________YN&`P`` -M`````@```*,"``#\_________ZZ&`P```````@```*,"``#\_________\B& -M`P```````@```*,"``#\_________]N&`P```````@```*,"``#\________ -M__6&`P```````@```*,"``#\_________PB'`P```````@```*,"``#\____ -M_____R*'`P```````@```*,"``#\_________S6'`P```````@```*,"``#\ -M_________T^'`P```````@```*,"``#\_________V*'`P```````@```*," -M``#\_________WR'`P```````@```*,"``#\_________X^'`P```````@`` -M`*,"``#\_________ZF'`P```````@```*,"``#\_________[R'`P`````` -M`@```*,"``#\_________]:'`P```````@```*,"``#\_________^F'`P`` -M`````@```*,"``#\_________P.(`P```````@```*,"``#\_________Q:( -M`P```````@```*,"``#\_________SB(`P```````@```-("``#\________ -M_U*(`P```````@```-("``#\_________W2(`P```````@```-("``#\____ -M_____XZ(`P```````@```-("``#\_________["(`P```````@```-("``#\ -M_________\J(`P```````@```-("``#\_________^R(`P```````@```-(" -M``#\_________P:)`P```````@```-("``#\_________RB)`P```````@`` -M`-("``#\_________T*)`P```````@```-("``#\_________V2)`P`````` -M`@```-("``#\_________WZ)`P```````@```-("``#\_________Z")`P`` -M`````@```-("``#\_________[J)`P```````@```-("``#\_________]R) -M`P```````@```-("``#\__________:)`P```````@```-("``#\________ -M_R**`P```````@```$T!``#\_________RJ*`P```````@```+D!``#\____ -M_____SF*`P```````@```+D!``#\_________T&*`P```````@```)L!``#\ -M_________TN*`P```````@```*0"``#\_________U.*`P```````@```,\! -M``#\_________V"*`P```````@```)0!``#\_________VV*`P```````@`` -M`)0!``#\_________YV*`P```````@```)0!``#\_________ZZ*`P`````` -M`@```)0!``#\_________]6*`P```````@```+`!``#\_________^B*`P`` -M`````@```+`!``#\__________6*`P```````@```+`!``#\_________PB+ -M`P```````@```+`!``#\_________Q6+`P```````@```%@!``#\________ -M_WV+`P```````@````@"``#\_________]^+`P``````"P````$`````@`,` -M`````.J+`P```````@```$8!``#\_________R&,`P```````@```#$!``#\ -M_________S.,`P```````@```*0"``#\_________SN,`P```````@```%@! -M``#\_________X&,`P```````@```$4"``#\_________PV-`P```````@`` -M``@"``#\_________UR-`P``````"P````$`````@`,``````&>-`P`````` -M`@```$8!``#\_________YZ-`P```````@```#$!``#\_________["-`P`` -M`````@```*0"``#\_________[B-`P```````@```%@!``#\__________"- -M`P```````@```$4"``#\_________VJ.`P```````@````@"``#\________ -M_^N.`P``````"P````$`````@`,``````/:.`P```````@```$8!``#\____ -M_____RV/`P```````@```#$!``#\_________S^/`P```````@```*0"``#\ -M_________T>/`P```````@```%@!``#\_________X2/`P```````@```$8" -M``#\_________PR0`P``````"P````$`````@`,``````!F0`P```````@`` -M`,8!``#\_________RZ0`P```````@```"X!``#\_________SF0`P`````` -M`@```$8!``#\_________W"0`P```````@```#$!``#\_________X*0`P`` -M`````@```*0"``#\_________XJ0`P```````@```%@!``#\_________[J0 -M`P```````@```#`!``#\_________\^0`P```````@```$4"``#\________ -M_]>0`P```````@````@"``#\_________^R0`P```````@```#`!``#\____ -M______V1`P``````"P````$`````@`,```````J2`P```````@```,8!``#\ -M_________Q^2`P```````@```"X!``#\_________RJ2`P```````@```$8! -M``#\_________V&2`P```````@```#$!``#\_________W.2`P```````@`` -M`*0"``#\_________WN2`P```````@```%@!``#\_________[62`P`````` -M`@```#`!``#\_________\R2`P```````@```$4"``#\_________VN3`P`` -M`````@````@"``#\_________Y&3`P``````"P````8```!Z`@```````)N3 -M`P```````@```*\"``#\_________Z>3`P```````@```$8"``#\________ -M_\"3`P```````@```$4"``#\__________*3`P```````@```+H"``#\____ -M_____PN4`P```````@```#$!``#\_________UN4`P```````@```(8"``#\ -M_________T.5`P```````@```"P"``#\_________YN5`P``````"P````$` -M````@`,``````*J5`P```````@```,8!``#\_________\65`P```````@`` -M`"X!``#\_________]N5`P```````@```$8!``#\_________Q>6`P`````` -M`@```#$!``#\_________RF6`P```````@```*0"``#\_________S.6`P`` -M`````@```%@!``#\_________W66`P```````@```(8"``#\_________Z>6 -M`P```````@```#`!``#\_________[R6`P```````@```(P!``#\________ -M_\N6`P```````@```$4"``#\_________^B6`P```````@```+H"``#\____ -M_____\B7`P```````@```#`!``#\_________]B7`P```````@```(P!``#\ -M_________^.7`P```````@```$4"``#\_________[R8`P```````@```#$! -M``#\__________Z8`P```````@```#`"``#\_________T29`P```````@`` -M`-0!``#\_________UF9`P```````@```+T!``#\_________WB9`P`````` -M`@```!P"``#\_________\*9`P```````@```/4!``#\_________^2:`P`` -M`````@```-<!``#\_________PF;`P```````@```#8"``#\_________S&; -M`P```````@```+P"``#\_________VF;`P```````@```$T!``#\________ -M_W&;`P```````@```-,!``#\_________WF;`P```````@```-,!``#\____ -M_____X&;`P```````@```+D!``#\_________XV;`P```````@```+D!``#\ -M_________YF;`P```````@```)L!``#\_________Z.;`P```````@```*0" -M``#\_________ZN;`P```````@```,\!``#\_________\";`P``````"P`` -M`'(!`````````````->;`P```````@```)T"``#\_________^2;`P`````` -M`@```,0!``#\__________&;`P```````@```,0!``#\_________Q6<`P`` -M`````@```-@!``#\_________R2<`P```````@```-@!``#\_________TF< -M`P```````@````L```#?`0```````%:<`P```````@````L```#<`0`````` -M`&&<`P```````@````,````\)@```````'"<`P``````"P````<```!@`P`` -M`````'><`P``````"P```&T!`````````````'Z<`P``````"P````<```!T -M`P```````(J<`P``````"P````<```!B`P```````-6<`P``````"P```&T! -M```<`````````.V<`P``````"P```&T!```<``````````&=`P``````"P`` -M`&T!```<``````````^=`P``````"P```&T!```<`````````!F=`P`````` -M"P```&T!```<`````````$^=`P``````"P```&T!```<`````````&.=`P`` -M````"P```&T!```<`````````'&=`P``````"P```&T!```<`````````(R= -M`P``````"P````<```!L`P```````-6=`P```````@````,````\)@`````` -M`/.=`P``````"P````<```!L`P````````&>`P``````"P````<```!P`P`` -M`````#&>`P``````"P```&T!`````````````$6>`P``````"P```&T!```< -M`````````'">`P``````"P```&T!```,`````````):>`P``````"P```&T! -M```=`````````*6>`P``````"P```&T!```<`````````-Z>`P```````@`` -M`(`"``#\_________V:?`P```````@```/\!``#\_________X*?`P`````` -M`@```#0!``#\_________XJ?`P```````@```/4!``#\_________ZB?`P`` -M`````@```,`!``#\_________[R?`P```````@```,`!``#\_________P:@ -M`P``````"P````,`````(@```````#N@`P```````@```)<!``#\________ -M_W2@`P```````@```(@!``#\_________ZJ@`P```````@```+H"``#\____ -M_____[^@`P```````@```#$!``#\_________]:@`P```````@```*0"``#\ -M_________]Z@`P```````@```%@!``#\_________Q>A`P```````@```+H" -M``#\_________RNA`P```````@```$`"``#\_________S>A`P```````@`` -M`!T"``#\_________Q*B`P``````"P````4```"8!````````!RB`P`````` -M`@```*\"``#\_________U"B`P```````@```'\"``#\_________V6B`P`` -M````"P````$```!@H0,``````'FB`P```````@```)T"``#\_________QZE -M`P```````@```/\!``#\_________T"E`P```````@```#0!``#\________ -M_VVE`P```````@```,P!``#\_________]BE`P```````@```,P!``#\____ -M_____S2F`P```````@```+H"``#\_________W2F`P```````@```,P!``#\ -M_________^"F`P```````@```+H"``#\__________>G`P```````@```)<! -M``#\_________TVH`P```````@```-<!``#\_________U^H`P```````@`` -M`,`!``#\_________YFH`P```````@```%@!``#\_________[NH`P`````` -M`@```'\"``#\_________]"H`P``````"P```'(!`````````````..H`P`` -M`````@```)T"``#\_________U6J`P```````@```/4!``#\_________ZFJ -M`P``````"P````,```!0(@```````,^J`P```````@```%P!``#\________ -M_RJK`P```````@```%P!``#\_________X6K`P```````@```%P!``#\____ -M_____^"K`P```````@```%P!``#\_________S&M`P``````"P````,```!P -M(P```````&*M`P```````@```%P!``#\_________\*M`P```````@```%P! -M``#\_________QJN`P```````@```%P!``#\_________W*N`P```````@`` -M`%P!``#\_________\NN`P```````@```%P!``#\_________R*O`P`````` -M`@```%P!``#\_________WZO`P```````@```%P!``#\_________]JO`P`` -M`````@```%P!``#\_________S*P`P```````@```%P!``#\_________XJP -M`P```````@```%P!``#\_________]JP`P```````@```)@!``#\________ -M_Q2Q`P```````@```)@!``#\_________TZQ`P```````@```)@!``#\____ -M_____XBQ`P```````@```)@!``#\_________[^Q`P```````@```)@!``#\ -M__________:Q`P```````@```)@!``#\_________Y:R`P```````@````L` -M``#<`0```````**R`P```````@````L```#<`0```````'^T`P```````@`` -M`(X"``#\_________YFT`P```````@```(X"``#\_________^.T`P`````` -M`@````,````\)@```````/FT`P``````"P````<```!@`P````````NU`P`` -M````"P````<```!B`P```````!FU`P``````"P````<```!P`P```````"*U -M`P``````"P````<```!P`P```````"FU`P``````"P````<```!L`P`````` -M`$.U`P``````"P````<```!P`P```````'VU`P```````@```,8"``#\____ -M_____YRU`P```````@```+\"``#\_________\JU`P``````"P```&T!```` -M`````````.*U`P``````"P```&T!```<``````````FV`P``````"P```&T! -M```,`````````":V`P``````"P```&T!```=`````````#"V`P``````"P`` -M`&T!```=`````````#BV`P``````"P```&T!```<`````````%6V`P`````` -M"P```&T!```=`````````&RV`P``````"P```&T!```<`````````,^W`P`` -M`````@```/4!``#\_________SVY`P```````@```*@!``#\_________VZY -M`P```````@````T"``#\_________WVY`P```````@```*@!``#\________ -M_R"]`P```````@```*@!``#\_________TZ]`P```````@````T"``#\____ -M_____UV]`P```````@```*@!``#\_________S_!`P```````@```*@!``#\ -M_________VW!`P```````@````T"``#\_________W[!`P```````@```*@! -M``#\_________S_%`P```````@```*@!``#\_________VW%`P```````@`` -M``T"``#\_________W[%`P```````@```*@!``#\_________^3'`P`````` -M`@````@"``#\_________^#)`P```````@```(8"``#\_________ZS+`P`` -M````"P````$```!`EP,``````"O,`P```````@```"P"``#\_________SC, -M`P```````@```,8!``#\_________TO,`P```````@```"X!``#\________ -M_VG,`P```````@```,8!``#\_________WO,`P```````@```$8"``#\____ -M_____ZS,`P```````@```"X!``#\_________\',`P```````@```($!``#\ -M__________+,`P```````@```"X!``#\_________S?-`P```````@```(8" -M``#\_________ZK-`P```````@```(8"``#\_________^[-`P```````@`` -M`$8!``#\__________O-`P```````@```$4"``#\_________YC0`P`````` -M`@```,8"``#\_________[K0`P```````@```,8"``#\_________PW2`P`` -M`````@```#`"``#\_________U_2`P```````@```,P!``#\_________[?2 -M`P```````@```+T!``#\_________^C2`P```````@```-0!``#\________ -M_R;3`P```````@```)`!``#\_________U'3`P```````@```!P"``#\____ -M_____WO3`P```````@```,P!``#\_________]?3`P```````@```)P!``#\ -M_________Q/4`P```````@```)P"``#\_________Q[4`P```````@```)P" -M``#\_________S+4`P```````@```%8"``#\_________V/4`P```````@`` -M`)0"``#\_________PK5`P```````@```)0"``#\_________U35`P`````` -M`@```&<"``#\_________]/5`P```````@```$P"``#\_________^#5`P`` -M`````@```$P"``#\_________^K5`P```````@```%8"``#\__________;5 -M`P```````@```%8"``#\_________PG6`P```````@```$P"``#\________ -M_UK6`P```````@```*4"``#[_________]/6`P```````@```$P"``#\____ -M_____\/7`P```````@```)0"``#\_________VW8`P```````@```*<"``#\ -M_________['8`P```````@```*<"``#\_________SC9`P```````@```*<" -M``#\_________US9`P```````@```,,"``#\_________]G9`P```````@`` -M`*<"``#\_________R/:`P```````@```*<"``#\_________SW:`P`````` -M`@```,,"``#\_________U+;`P```````@```,,"``#\_________VO<`P`` -M`````@```&("``#[_________X;<`P```````@```'\"``#\_________Y[< -M`P``````"P```%@"`````````````&'=`P```````@```&("``#[________ -M_W;=`P```````@```'\"``#\_________XS=`P``````"P```%@"```````` -M`````)[=`P```````@```)T"``#\_________\7=`P```````@```+("``#\ -M_________T7>`P```````@```(\"``#\_________QG?`P```````@```+4" -M``#[_________U;?`P```````@```%,"``#\_________Z?@`P```````@`` -M`,`"``#\_________]+@`P```````@```&,"``#\_________^C@`P`````` -M`@```*4"``#[__________?@`P```````@```&P"``#\_________P'A`P`` -M`````@```%0"``#\_________Q3A`P```````@```%X"``#\_________WGA -M`P```````@````L```!L`@```````)KA`P```````@````L```!L`@`````` -M`*KA`P```````@````L```!L`@```````+KA`P```````@```,X"``#\____ -M_____]CA`P```````@```+("``#\_________^7A`P```````@````L```!L -M`@```````//A`P``````"P````$```"@XP,```````CB`P```````@```*," -M``#\_________QSB`P```````@````L```!H`@```````%/B`P```````@`` -M`+<"``#\_________UKB`P``````"P````L```!``@```````&3B`P`````` -M`@````L```!(`@```````&CB`P``````"P```-,"`````````````&_B`P`` -M`````@````L```!4`@```````'OB`P```````@````L````\`@```````(#B -M`P```````@```)T"``#\__________3B`P```````@```$P"``#\________ -M_T+C`P```````@```-,"``#\_________W;C`P```````@```*0"``#\____ -M_____W[C`P```````@```(<"``#\_________\CC`P```````@```&0"``#\ -M_________Q7D`P```````@```*,"``#\_________S#D`P```````@```*," -M``#\_________]+D`P```````@```'$"``#\_________]+E`P```````@`` -M`(,"``#\_________][E`P```````@```+("``#\_________R+F`P`````` -M`@```*,"``#\_________S'F`P```````@```$X"``#\_________Z+F`P`` -M`````@```+`"``#\_________[CF`P```````@```+`"``#\_________\CF -M`P```````@```$P"``#\_________PKG`P```````@```+`"``#\________ -M_R?G`P```````@```+`"``#\_________T'G`P```````@```+`"``#\____ -M_____U[G`P```````@```+`"``#\_________W[G`P```````@```+`"``#\ -M_________Z?G`P```````@```(@"``#\_________[[G`P```````@```+`" -M``#\_________\7G`P```````@```$P"``#\_________QGH`P```````@`` -M`)0"``#\_________R+H`P```````@```+8"``#\_________T#H`P`````` -M`@```)0"``#[_________[WH`P```````@```)0"``#\_________];H`P`` -M`````@```*4"``#[_________P/I`P```````@```%P"``#\_________QSI -M`P```````@```+("``#\_________S?I`P```````@````L```!P`@`````` -M`$?I`P```````@````L```!P`@```````$KJ`P```````@```*,"``#\____ -M_____U7J`P```````@```)0"``#\_________YCJ`P```````@```(,"``#\ -M_________]?J`P```````@```*,"``#\__________#J`P```````@```$P" -M``#\_________T'K`P```````@```)0"``#\_________PO:`P```````@`` -M`'D"``#\_________QO:`P```````@```*<"``#\_________^_:`P`````` -M`@```'D"``#\_________V7;`P```````@```'D"``#\_________]/;`P`` -M`````@```'\"``#\_________[7<`P```````@```)T"``#\_________XS> -M`P```````@```-$"``#\_________YW>`P```````@```*,"``#\________ -M_\'>`P```````@```*D"``#\_________V7C`P```````@```*<"``#\____ -M_____ZOD`P```````@```*,"``#\_________W/K`P``````"P````$````P -M%`0``````);K`P```````@````<```"X`P```````$#L`P``````"P````$` -M``#`\0,``````!+N`P```````@```+,"``#\_________T[N`P```````@`` -M`*8"``#\_________X'N`P``````"P````$```!P\`,``````*WN`P`````` -M`@```*8"``#\_________RGO`P```````@````,```!$)@```````#;O`P`` -M`````@````,```!()@```````([O`P``````"P````$```!`\0,```````;P -M`P```````@```$@"``#\_________U+P`P``````"P````$```"`\`,````` -M`);P`P```````@```(D"``#\_________]GP`P```````@```)P"``#\____ -M_____]_P`P```````@````<```"T`P```````/OP`P```````@````<```"X -M`P```````!7Q`P```````@````<```"X`P```````"'Q`P``````"P````<` -M``"@`P```````"?Q`P```````@````<```"W`P```````"WQ`P```````@`` -M`,T"``#\_________VSQ`P```````@```(D"``#\_________Q;R`P`````` -M`@```*,"``#\_________R3R`P``````"P````$```#0[0,``````%OR`P`` -M````"P````<```"@`P```````&?R`P```````@```(("``#\_________X'S -M`P``````"P````<```"@`P```````(;S`P```````@```(("``#\________ -M_X[S`P```````@```+("``#\_________WKT`P``````"P````<```"@`P`` -M`````'_T`P```````@```(("``#\_________X?T`P```````@```+("``#\ -M_________]OT`P``````"P````<```"@`P```````.#T`P```````@```((" -M``#\_________^CT`P```````@```+("``#\_________QGU`P``````"P`` -M``<```"@`P```````![U`P```````@```(("``#\_________R;U`P`````` -M`@```+("``#\_________U[U`P``````"P````<```"@`P```````&/U`P`` -M`````@```(("``#\_________VOU`P```````@```+("``#\_________\'U -M`P``````"P````<```"@`P```````-;U`P```````@```(("``#\________ -M_^'U`P```````@```*,"``#\__________7U`P``````"P````<```"@`P`` -M``````+V`P```````@```(("``#\_________Q_V`P```````@```*,"``#\ -M_________Z'V`P```````@```&T"``#\_________[KV`P```````@```+(" -M``#\_________]#V`P``````"P````$`````\@,``````!/W`P```````@`` -M`$@"``#\_________V;W`P``````"P````<```"@`P```````&OW`P`````` -M`@```(("``#\_________\+W`P``````"P````,```!0)@````````?X`P`` -M`````@```-`"``#\_________T#X`P```````@```&T"``#\_________T[X -M`P```````@```+P"``#\_________W?X`P```````@```+("``#\________ -M_Y+X`P``````"P````$```"0^0,``````*;X`P```````@```-`"``#\____ -M_____[/X`P```````@```+P"``#\_________P3Y`P``````"P````,```"0 -M)@```````&7Y`P```````@```-`"``#\_________['Y`P```````@```*," -M``#\_________\OY`P``````"P````$```!`#`0``````.GY`P```````@`` -M`*4"``#[_________T'Z`P```````@```&$"``#\_________VCZ`P`````` -M"P````<```"@`P```````&WZ`P```````@```(("``#\_________WCZ`P`` -M`````@```*,"``#\_________Z'Z`P```````@```&T"``#\_________[?Z -M`P```````@```&8"``#\__________?\`P```````@```&8"``#\________ -M_R3]`P```````@```&$"``#\_________X7]`P```````@```&8"``#\____ -M_____ZO]`P```````@```&$"``#\_________]K]`P``````"P````<```"@ -M`P```````-_]`P```````@```(("``#\_________^?]`P```````@```+(" -M``#\_________SG^`P```````@```*4"``#[_________YK^`P```````@`` -M`&$"``#\_________\W^`P```````@```&$"``#\_________QG_`P`````` -M`@```&$"``#\_________S3_`P```````@```&T"``#\_________TK_`P`` -M`````@```&8"``#\_________YK_`P```````@```*4"``#\_________^C_ -M`P```````@```&$"``#\_________U(`!```````"P````<```"@`P`````` -M`%<`!````````@```(("``#\_________V(`!````````@```*,"``#\____ -M_____SP!!````````@```&$"``#\_________U\!!````````@```&8"``#\ -M_________S$"!````````@```&8"``#\_________S\"!```````"P````4` -M``#P!````````$@"!````````@```*\"``#\_________W8"!````````@`` -M`&8"``#\_________X,"!```````"P````4````8!0```````(P"!``````` -M`@```*\"``#\_________\T"!````````@```&$"``#\_________^\"!``` -M`````@```&8"``#\_________Q$#!````````@```&8"``#\_________RP# -M!```````"P````8```":`@```````%L#!````````@```*\"``#\________ -M_XD$!````````@```&8"``#\_________[D$!````````@```&$"``#\____ -M_____]X$!````````@```&$"``#\_________P@%!````````@```%\"``#\ -M__________T%!````````@```&$"``#\_________R(&!````````@```+4" -M``#[_________SX&!````````@```&8"``#\_________UD&!````````@`` -M`(H"``#\_________]X&!````````@```&$"``#\_________^D&!``````` -M"P````4```!`!0````````H'!````````@```*\"``#\_________ZL'!``` -M`````@```&8"``#\_________]0'!````````@```&$"``#\__________\' -M!````````@```&$"``#\_________QD(!```````"P````8```"O`@`````` -M`"`(!````````@```*\"``#\_________ST(!````````@```&8"``#\____ -M_____VL(!````````@```&$"``#\_________Z((!````````@```&$"``#\ -M_________ZT(!```````"P````4```!P!0```````,T(!````````@```*\" -M``#\_________^\(!````````@```(8"``#\_________RP)!````````@`` -M`&$"``#\_________SP)!````````@```&L"``#\_________V`)!``````` -M`@```&$"``#\_________Y,)!````````@```&$"``#\_________\`)!``` -M`````@```&$"``#\_________]<)!````````@```(,"``#\_________^X) -M!````````@```&8"``#\_________R(*!````````@```(H"``#\________ -M_ZT*!````````@```&<"``#\_________XH+!````````@```,L"``#\____ -M_____[H+!````````@```$D"``#\_________P,,!````````@```*4"``#[ -M_________S(,!````````@```&D"``#\_________UT,!````````@```&0" -M``#\_________W<,!````````@```+4"``#[_________^8,!````````@`` -M`,4"``#\__________`,!````````@```%X"``#\_________Q(-!``````` -M"P```$L"`````````````"D-!````````@```-`"``#\_________],-!``` -M`````@```&`"``#\__________D-!````````@```(,"``#\_________VL. -M!````````@```&`"``#\_________X<.!````````@```&`"``#\________ -M_WD/!````````@```(H"``#\_________^L/!````````@```(,"``#\____ -M_____RP0!````````@```%\"``#\_________Z00!````````@```$X"``#\ -M_________[$0!````````@```+,"``#\__________`0!````````@```$H" -M``#\_________QL1!````````@```$X"``#\_________UX1!````````@`` -M`*,"``#\_________Z`1!````````@```&,"``#\_________\41!``````` -M`@```%,"``#\_________[(2!````````@```+,"``#\_________SP3!``` -M`````@```,4"``#\_________U$3!````````@```&P"``#\_________WD3 -M!````````@```%0"``#\_________Y\3!````````@```+("``#\________ -M_\(3!```````"P````$```!`$00``````/P3!````````@```$@"``#\____ -M_____UH5!````````@```,H"``#\_________\85!```````"P````$```!P -M%@0``````-46!````````@```,H"``#\_________[,7!````````@```&T" -M``#\_________Y/N`P```````@```*L"``#\_________UOP`P```````@`` -M`*L"``#\_________W'P`P```````@```(D"``#\_________\KP`P`````` -M`@```)4"``#\_________ZCQ`P```````@```-`"``#\__________/Q`P`` -M`````@```-`"``#\_________T?R`P```````@```-`"``#\_________ZSR -M`P```````@```*,"``#\_________U#V`P```````@```*,"``#\________ -M_XSW`P```````@```+`"``#\_________]3Y`P```````@```%H"``#\____ -M_____R+^`P```````@```(,"``#\_________[,,!````````@```&T"``#\ -M_________]X,!````````@```*,"``#\_________PL.!````````@```%\" -M``#\_________\L0!````````@```(,"``#\_________S(1!````````@`` -M`%\"``#\_________R@6!````````@```-`"``#\_________V`6!``````` -M`@```,H"``#\_________X(7!````````@```-`"``#\_________P,8!``` -M`````@```)0"``#\_________^H8!````````@```)0"``#\_________ZT9 -M!````````@```)0"``#\_________[(:!````````@```)0"``#\________ -M_V\<!```````"P````,```#0)@```````)0@!````````@```'("``#\____ -M_____Z0A!````````@```'("``#\_________V`B!```````"P````,````0 -M)P```````)(C!````````@```'("``#\__________TC!````````@```'(" -M``#\_________Z$D!````````@```'("``#\_________\(D!````````@`` -M``L```"``@```````-\D!````````@````L```!\`@```````/`D!``````` -M"P````L```"@`@````````LE!```````"P````L```"@`@```````#DE!``` -M`````@````L```"``@```````'PE!````````@```%$"``#\_________],J -M!````````@```'("``#\_________Q,K!````````@```'("``#\________ -M_U,K!````````@```'("``#\_________[DK!````````@```'("``#\____ -M_____R`L!````````@```'("``#\_________YXL!````````@```'("``#\ -M_________R,M!````````@```*4"``#[_________T,M!````````@```'(" -M``#\_________W`M!````````@```'("``#\_________Q8N!````````@`` -M`'("``#\_________SHN!````````@```'("``#\_________R8O!``````` -M`@```'("``#\_________THO!````````@```'("``#\_________^0O!``` -M`````@```'("``#\_________PDP!````````@```'("``#\_________X0P -M!````````@```'("``#\_________Y$P!````````@```'("``#\________ -M_\,P!````````@```'("``#\_________^DP!````````@```'("``#\____ -M_____U0Q!````````@```'("``#\_________V$Q!````````@```'("``#\ -M_________Z,Q!````````@```'("``#\_________\TQ!````````@```'(" -M``#\_________R@R!````````@```'("``#\_________S0R!````````@`` -M`'("``#\_________Y@R!````````@```'("``#\_________Z0R!``````` -M`@```'("``#\_________P@S!````````@```'("``#\_________Q0S!``` -M`````@```'("``#\_________W8S!````````@```'("``#\_________X(S -M!````````@```'("``#\_________]8S!````````@```'("``#\________ -M_^(S!````````@```'("``#\_________S8T!````````@```'("``#\____ -M_____T(T!````````@```'("``#\_________Y8T!````````@```'("``#\ -M_________Z(T!````````@```'("``#\_________R8U!````````@```'(" -M``#\_________S(U!````````@```'("``#\_________Y8U!````````@`` -M`'("``#\_________Z(U!````````@```'("``#\_________P\V!``````` -M`@```'("``#\_________QPV!````````@```'("``#\_________R@V!``` -M`````@```'("``#\_________S,V!````````@```'("``#\_________\8V -M!````````@```'("``#\_________](V!````````@```'("``#\________ -M_S8W!````````@```'("``#\_________T(W!````````@```'("``#\____ -M_____ZHW!````````@```'("``#\_________[8W!````````@```'("``#\ -M_________QPX!````````@```'("``#\_________R@X!````````@```'(" -M``#\_________S0Y!````````@```'("``#\_________T$Y!````````@`` -M`'("``#\__________0Y!````````@```'("``#\_________P$Z!``````` -M`@```'("``#\_________V8Z!````````@```'("``#\_________W(Z!``` -M`````@```'("``#\__________4Z!````````@```'("``#\_________QH[ -M!````````@```'("``#\_________Z4[!````````@```'("``#\________ -M_\H[!````````@```'("``#\_________S0\!````````@```'("``#\____ -M_____T`\!````````@```'("``#\_________U0]!````````@```'("``#\ -M_________V$]!````````@```'("``#\_________S(^!````````@```'(" -M``#\_________S\^!````````@```'("``#\_________P`_!````````@`` -M`'("``#\_________PT_!````````@```'("``#\_________T0_!``````` -M`@````<````<!````````%L_!```````"P````<````@!````````*%`!``` -M````"P````$```"P)`0``````*-!!````````@```%$"``#\_________S-" -M!````````@```+4"``#\_________ZY"!````````@```*8"``#\________ -M_]U"!```````"P````$```!@3`0``````"]#!````````@```*8"``#\____ -M_____SY#!````````@```+("``#\__________5#!````````@```*8"``#\ -M_________TI$!```````"P````$```"P300``````%=$!```````"P````$` -M``!P300``````%Q$!````````@```*L"``#\_________[9$!````````@`` -M`+("``#\_________UI%!````````@```*,"``#\_________XQ%!``````` -M"P````8```#(`@```````)-%!````````@```*\"``#\_________]9%!``` -M`````@```+("``#\_________VE&!````````@```*,"``#\_________YM& -M!```````"P````8```#C`@```````*)&!````````@```*\"``#\________ -M_TU'!```````"P````$```!@?P0``````'U'!```````"P````$```#0400` -M`````+U'!```````"P````$```!@4P0``````/U'!```````"P````$```!@ -MU`0``````#U(!```````"P````$```"@Q`0``````'U(!```````"P````$` -M```0C`0``````+U(!```````"P````$````0R00``````/U(!```````"P`` -M``$```!0D`0``````#U)!```````"P````$```#PC`0``````'U)!``````` -M"P````$```#0UP0``````+U)!```````"P````$```"P@`0``````/U)!``` -M````"P````$```"0RP0``````#U*!```````"P````$````PD00``````'U* -M!```````"P````$````PD00``````+U*!```````"P````$```!0DP0````` -M`/U*!```````"P````$````PI`0``````#U+!```````"P````$```#0V`0` -M`````'U+!```````"P````$```"PI00``````+U+!```````"P````$```"@ -MS`0``````/U+!```````"P````$```"@I`0``````#U,!```````"P````$` -M```@K@0``````&1,!```````"P````$```"@X`0``````)A,!```````"P`` -M``$```#`K@0``````/!,!````````@```*,"``#\__________M,!``````` -M"P````$`````I@0``````(--!```````"P````$```"`3@0```````Q.!``` -M`````@```(D"``#\_________QM.!````````@```*8"``#\_________TQ. -M!```````"P````$```!P300``````*M.!````````@```*,"``#\________ -M_UI/!```````"P````4```#(!0```````&%/!````````@```*\"``#\____ -M_____VY/!````````@```&T"``#\_________X-/!````````@```*,"``#\ -M_________XM/!````````@```(D"``#\_________[I/!```````"P````4` -M``"@!0```````,%/!````````@```*\"``#\_________\Y/!````````@`` -M`&T"``#\__________I/!````````@```(D"``#\_________P90!``````` -M"P````$`````X@0``````)A0!````````@```*,"``#\_________Z!0!``` -M`````@```(D"``#\_________Q11!```````"P````$```"P>@0``````.U1 -M!````````@```'("``#\_________[A2!````````@```&$"``#\________ -M_\12!```````"P````$```#`0`0``````#Q3!````````@```&$"``#\____ -M_____W93!````````@```'("``#\_________^]3!````````@```&$"``#\ -M_________Q!4!```````"P````$```#`0`0``````&-4!````````@```(D" -M``#\_________VM4!```````"P````$```#`0`0``````$]5!```````"P`` -M``$```#P5@0``````"U6!```````"P````$```#`0`0``````#Y6!``````` -M`@```)4"``#\_________P]7!```````"P````$```#`0`0``````#Y7!``` -M`````@```)0"``#\_________\97!```````"P````$```#`0`0``````-I7 -M!````````@```)4"``#\__________)7!````````@````L```!\`@`````` -M`/A7!````````@````L```"``@```````!58!```````"P````L```"@`@`` -M`````"!8!```````"P````L```"H`@```````"Q8!```````"P````L```"P -M`@```````#A8!```````"P````L```"X`@```````$18!```````"P````L` -M``#``@```````$]8!```````"P````L```#(`@```````&I8!````````@`` -M``L```!\`@```````')8!```````"P````$```#`0`0```````I9!``````` -M"P````$```#`0`0``````+%9!```````"P````$```#`0`0``````,)9!``` -M`````@```)4"``#\_________P]:!````````@```'("``#\_________VM: -M!```````"P````$```#`0`0``````-5:!````````@```'("``#\________ -M_QE;!```````"P````$```#`0`0``````&A;!````````@```)0"``#\____ -M_____[A;!```````"P````$```#`0`0```````U<!````````@```)0"``#\ -M_________XU<!```````"P````$```#`0`0``````&A=!```````"P````$` -M``#`0`0``````'M=!````````@```)4"``#\_________TM>!```````"P`` -M``$```#`0`0``````%Y>!````````@```)4"``#\_________TM?!``````` -M"P````$```#`0`0``````%Y?!````````@```)4"``#\_________SM@!``` -M````"P````$```#`0`0``````$Y@!````````@```)4"``#\_________RMA -M!```````"P````$```#`0`0``````#YA!````````@```)4"``#\________ -M_PEB!```````"P````$```#`0`0``````!QB!````````@```)4"``#\____ -M_____U5B!```````"P````$```#`0`0```````5C!```````"P````$```#` -M0`0``````!9C!````````@```)4"``#\_________U9C!```````"P````$` -M``#`0`0``````(1C!```````"P````8```#[`@```````*9C!````````@`` -M`+4"``#\_________ZYC!```````"P````$```#`0`0``````-1C!``````` -M"P````8````(`P```````/%C!````````@```(P"``#\__________IC!``` -M````"P````8````9`P````````UD!```````"P````8````V`P```````"AD -M!```````"P````$```#0:P0``````%ID!````````@```%`"``#\________ -M_V9D!```````"P````8```!3`P```````(%D!```````"P````$```#09`0` -M`````*AD!```````"P````$```#`0`0``````#IE!```````"P````$```#` -M0`0``````$ME!````````@```)4"``#\_________]%E!````````@```'(" -M``#\_________P5F!````````@```*,"``#\_________PUF!````````@`` -M`(D"``#\_________TEF!```````"P````$```#`0`0```````AG!``````` -M"P````$```!P>@0``````%MG!````````@```'("``#\_________WMG!``` -M`````@```'("``#\_________Z9G!````````@```'("``#\__________AG -M!````````@```'("``#\_________TMH!````````@```'("``#\________ -M_WAH!````````@```'("``#\_________PAI!````````@```'("``#\____ -M_____Q)I!````````@```'("``#\_________TMI!````````@```'("``#\ -M_________VMI!````````@```'("``#\_________XAI!````````@```'(" -M``#\_________P!J!````````@```'("``#\_________T!J!````````@`` -M`'("``#\_________WQJ!````````@```'("``#\_________[QJ!``````` -M`@```'("``#\__________QJ!````````@```'("``#\_________SUK!``` -M`````@```'("``#\_________V=K!```````"P````8````V`P```````"IL -M!````````@```&("``#\_________VML!````````@```'\"``#\________ -M_X%L!```````"P```%@"`````````````)-L!````````@```)T"``#\____ -M_____ZIL!```````"P````$```#`0`0``````+ML!````````@```)4"``#\ -M_________])L!````````@```$T"``#\_________S5M!````````@```*8" -M``#\__________MM!```````"P````$```#PQ00``````$%N!````````@`` -M`+("``#\_________VMN!````````@```(8"``#\_________Z!N!``````` -M"P````$```#03@0``````+!N!```````"P````$```#`0`0``````,%N!``` -M`````@```)4"``#\_________\)O!```````"P````$```#`0`0```````-P -M!```````"P````$```#`0`0``````!1P!````````@```)4"``#\________ -M_TMP!````````@```'("``#\_________VMP!````````@```'("``#\____ -M_____Z1P!````````@```'("``#\_________[)P!````````@```*8"``#\ -M__________IP!````````@```(8"``#\_________SUQ!```````"P````$` -M``"@/00``````$AQ!```````"P````$```!`5`0``````*!Q!```````"P`` -M``$```#`0`0```````5R!```````"P````$```#`0`0``````!9R!``````` -M`@```)4"``#\_________T1R!````````@```*4"``#[_________V9R!``` -M````"P````8````(`P```````'UR!```````"P````8````9`P```````,9R -M!````````@```%`"``#\_________]5R!```````"P````$```#`0`0````` -M`#1S!````````@```(P"``#\_________U-S!```````"P````8````V`P`` -M`````'1S!```````"P````8```#[`@```````+US!````````@```+4"``#\ -M__________YS!````````@```&("``#\_________[-U!````````@```&$" -M``#\__________UU!````````@```&$"``#\_________RMV!````````@`` -M`&$"``#\_________U1X!```````"P````$```#`0`0``````&=X!``````` -M`@```)4"``#\_________[%Y!```````"P````$```#`0`0``````,)Y!``` -M`````@```)4"``#\_________R-Z!````````@```,@"``#\_________RYZ -M!````````@```*8"``#\_________TMZ!```````"P````$```#@3P0````` -M`'MZ!````````@```'("``#\_________X-Z!````````@```*T"``#\____ -M_____XMZ!```````"P````$```#`0`0``````+EZ!````````@```*T"``#\ -M_________\AZ!```````"P````$```#`0`0``````$Y[!```````"P````$` -M``#@1@0``````.1[!```````"P````$```#0?00``````,=\!````````@`` -M`&T"``#\_________]A\!````````@```%`"``#[__________A\!``````` -M`@```%`"``#[_________V%]!````````@```&T"``#\_________ZU]!``` -M`````@```&T"``#\_________Q9^!```````"P````$```#P>@0``````&M_ -M!```````"P````$```#0?00```````:`!```````"P````$```#0?00````` -M`!:`!````````@```*`"``#\_________V^`!```````"P````$```#0?00` -M`````(^`!````````@```*`"``#\_________\>`!````````@```'("``#\ -M_________^&`!```````"P````$```#`0`0``````!6!!```````"P````,` -M``!0)P```````$:!!````````@```&T"``#\_________^2!!````````@`` -M`&H"``#\_________P:"!```````"P````$```#0?00``````"R"!``````` -M`@```*`"``#\_________SF"!````````@```&T"``#\_________UR"!``` -M`````@```&T"``#\_________ZN"!````````@```&T"``#\_________ZB# -M!````````@```&H"``#\_________]^#!```````"P````$```#0?00````` -M`.^#!````````@```*`"``#\__________R#!````````@```&T"``#\____ -M_____Q6$!````````@```&T"``#\_________\N$!````````@```&T"``#\ -M_________W6%!````````@```&T"``#\__________J%!```````"P````$` -M``#0?00```````J&!````````@```*`"``#\_________Q>&!````````@`` -M`&T"``#\_________V2&!````````@```&T"``#\_________[>&!``````` -M`@```(T"``#\_________\B&!````````@```(T"``#\_________QZ'!``` -M`````@```&T"``#\_________VN'!````````@```&T"``#\_________W^' -M!````````@```,4"``#\_________XR'!````````@```*T"``#\________ -M_YF'!````````@```(T"``#\_________ZF'!````````@```,4"``#\____ -M_____\"'!````````@```&H"``#\_________^V'!```````"P````$```#0 -M?00``````/V'!````````@```*`"``#\_________PJ(!````````@```&T" -M``#\_________R&(!````````@```'L"``#\_________S^(!````````@`` -M`&H"``#\_________W>(!```````"P````$```#0?00``````(>(!``````` -M`@```*`"``#\_________Y2(!````````@```&T"``#\_________\&(!``` -M````"P````$```#0?00``````-&(!````````@```*`"``#\_________]Z( -M!````````@```&T"``#\_________P>)!```````"P````$```#0?00````` -M`":)!````````@```*`"``#\_________S.)!````````@```&T"``#\____ -M_____^:+!````````@```&H"``#\_________RJ,!````````@```'("``#\ -M_________X&,!````````@```*T"``#\_________Y.,!```````"P````$` -M``#`0`0``````,>,!````````@```&D"``#\_________S*-!```````"P`` -M``$```#`0`0``````$.-!````````@```)4"``#\_________V&-!``````` -M`@```'("``#\_________]>-!````````@```&D"``#\_________]N/!``` -M````"P````4```#X!0```````."/!````````@```*\"``#\_________Y*0 -M!```````"P````$```#`0`0``````*.0!````````@```)4"``#\________ -M_\&0!````````@```'("``#\_________]Z0!````````@```&D"``#\____ -M_____SN1!````````@```'("``#\_________W>1!````````@```&D"``#\ -M_________W^1!```````"P````$```#`0`0```````.2!````````@```$X" -M``#\_________V.2!````````@```(,"``#\_________Y62!````````@`` -M`&4"``#\_________[>2!````````@```&$"``#\__________>2!``````` -M`@```&$"``#\_________P23!````````@```&D"``#\_________S.3!``` -M`````@```$X"``#\_________WJ3!````````@```'("``#\_________\&3 -M!```````"P````$```#`0`0``````+64!````````@```*,"``#\________ -M__^4!````````@```'L"``#\_________X65!````````@```'("``#\____ -M_____Z.5!```````"P````,```#()P```````+N5!````````@```%P"``#\ -M__________B5!````````@```%P"``#\_________S:6!````````@```'(" -M``#\_________V.7!````````@```(H"``#\_________Z^7!````````@`` -M`'("``#\_________]^7!````````@```%T"``#\_________P:8!``````` -M`@```$X"``#\_________Q28!````````@```(,"``#\_________[:9!``` -M`````@```(H"``#\_________W*:!````````@```'("``#\_________\R: -M!````````@```'("``#\_________^>:!````````@```%T"``#\________ -M_[N;!````````@```%("``#\_________\F<!````````@```+("``#\____ -M_____^.<!````````@```'L"``#\__________J<!````````@```%<"``#\ -M_________[N=!````````@```*T"``#\_________\.=!````````@```(T" -M``#\_________Q:>!```````"P````$```#0?00``````":>!````````@`` -M`*`"``#\_________S.>!````````@```&T"``#\_________Y*>!``````` -M"P````$```#0?00``````**>!````````@```*`"``#\_________Z^>!``` -M`````@```&T"``#\_________^R>!````````@```,@"``#\_________T:? -M!````````@```$X"``#\_________PJ@!````````@```'("``#\________ -M_WV@!````````@```'("``#\_________ZF@!```````"P````$```#0?00` -M`````+F@!````````@```*`"``#\_________\:@!````````@```&T"``#\ -M_________].@!````````@```(T"``#\_________^6@!````````@```,4" -M``#\_________P^A!```````"P````$````P4`0``````#NA!```````"P`` -M``$```#0?00``````$NA!````````@```*`"``#\_________UBA!``````` -M`@```&T"``#\_________V2A!```````"P````$```#`3`0``````"RB!``` -M`````@```%\"``#\_________U>B!````````@```(T"``#\_________VNB -M!````````@```,@"``#\_________[:B!````````@```&`"``#\________ -M_\.B!````````@```%\"``#\_________SJC!````````@```'("``#\____ -M_____U6C!````````@```%T"``#\_________W^C!````````@```$X"``#\ -M_________Y>C!````````@```%T"``#\_________]BC!````````@```$X" -M``#\_________PZD!```````"P````$```"@900``````$&D!````````@`` -M`'("``#\_________VBD!```````"P````$```#`0`0``````(ZE!``````` -M"P````$```#`0`0``````)^E!````````@```)4"``#\_________]JE!``` -M````"P````$```#`0`0``````!ZF!````````@```(D"``#\_________W2F -M!````````@```,@"``#\_________WRF!````````@```(T"``#\________ -M_Y.F!```````"P````$```#`0`0``````$6H!````````@```(8"``#\____ -M_____U*H!````````@```,L"``#\_________S*I!````````@```'("``#\ -M_________YBI!````````@```*P"``#\_________]6I!```````"P````$` -M``#`0`0``````**J!````````@```%4"``#\_________YRK!````````@`` -M`%L"``#\_________\JM!````````@```(8"``#\_________]>M!``````` -M`@```,L"``#\_________T2N!````````@```%X"``#\_________UBN!``` -M`````@```'("``#\_________V^N!````````@```+,"``#\_________W>N -M!````````@```%X"``#\_________X6N!```````"P````$```#`0`0````` -M`.>N!````````@```*,"``#\_________U2O!```````"P````$```"`V00` -M`````(BO!````````@```'("``#\_________W>P!```````"P````$````@ -MKP0``````*6P!````````@```,<"``#\_________^RQ!```````"P````$` -M``#`0`0``````#*R!````````@```*8"``#\_________UJR!```````"P`` -M``$````PP`0``````)&R!````````@```(D"``#\_________S*T!``````` -M"P````4````8!@```````#FT!````````@```*\"``#\_________WFV!``` -M`````@```&H"``#\_________Z:V!````````@```+("``#\_________Q*X -M!```````"P````$```!0X`0``````.VX!```````"P````$```#`0`0````` -M`'6Y!````````@```+("``#\_________XRY!````````@```*8"``#\____ -M______"Y!````````@```(P"``#\_________XJZ!```````"P````$````@ -MP00``````%>[!```````"P````$````@P00``````*6[!```````"P````$` -M``!0X`0``````.V[!````````@```*,"``#\_________P2\!```````"P`` -M``$```#`0`0``````":\!````````@```*,"``#\_________S*\!``````` -M`@```(D"``#\_________\6\!````````@```'("``#\_________Q2]!``` -M`````@```'("``#\_________Y2]!````````@```'("``#\_________Q6^ -M!````````@```'("``#\_________V2^!````````@```'("``#\________ -M_^2^!````````@```'("``#\_________W>_!````````@```'H"``#\____ -M_____XZ_!````````@```)P"``#\_________P7`!````````@```+$"``#\ -M_________YO`!````````@```*,"``#\_________ZO`!````````@```(D" -M``#\_________[/`!```````"P````$```#`0`0``````&#!!````````@`` -M`*,"``#\_________W'!!````````@```(D"``#\_________WG!!``````` -M"P````$```#`0`0```````;"!````````@```&T"``#\_________V/"!``` -M`````@```'("``#\_________V_"!````````@```'("``#\_________Y_" -M!````````@```,0"``#\_________Q/#!````````@```,0"``#\________ -M_S+$!````````@```'("``#\_________UW$!````````@```,0"``#\____ -M_____W3$!```````"P````$```#`0`0``````/G$!````````@```'("``#\ -M_________T#%!````````@```'("``#\_________TC%!````````@```+," -M``#\_________VG%!```````"P````$```#`0`0``````+7%!````````@`` -M`'("``#\_________X?&!````````@```(D"``#\_________Y?&!``````` -M"P````$```#`0`0``````*C&!````````@```)4"``#\_________X3'!``` -M`````@```$D"``#\_________]_'!````````@```)0"``#\_________^[' -M!````````@```)0"``#\__________/'!````````@```,P"``#\________ -M_UG(!````````@```%P"``#\_________Z3(!````````@```)0"``#\____ -M_____^S(!```````"P````$```#`0`0``````(;)!```````"P````$```!@ -MR@0``````)#)!````````@```%H"``#\_________^')!```````"P````$` -M``#`0`0``````/+)!````````@```)4"``#\_________R3*!```````"P`` -M``$```!0R@0``````#W*!````````@```-`"``#\_________Y+*!``````` -M`@```&0"``#\_________Z3*!````````@```+4"``#[_________[3*!``` -M`````@```&T"``#\_________Q++!```````"P````$```!0R@0``````$K+ -M!````````@```*,"``#\_________VK+!````````@```*,"``#\________ -M_W?+!````````@```%X"``#\_________[#+!````````@```'("``#\____ -M_____[O+!````````@```'("``#\_________\;+!````````@```&@"``#\ -M_________]O+!```````"P````$```#`0`0``````!3,!````````@```&(" -M``#[_________U',!````````@```&("``#\_________U;,!````````@`` -M`'0"``#\_________W/,!```````"P```%@"`````````````-W,!``````` -M`@```(8"``#\_________PC-!```````"P````$```#`0`0``````!G-!``` -M`````@```)4"``#\_________V?-!```````"P````$```#`0`0``````//- -M!````````@```'("``#\_________U7.!````````@```*P"``#\________ -M_X;.!```````"P````$```#`0`0``````"3/!````````@```%4"``#\____ -M_____Q[0!````````@```%L"``#\_________]K0!````````@```'("``#\ -M_________SO1!```````"P````$```#`0`0``````+#1!````````@```%4" -M``#\_________[K2!````````@```'("``#\_________QK3!```````"P`` -M``$```#`0`0``````([3!````````@```%4"``#\_________WK4!``````` -M`@```)0"``#\_________\O4!```````"P````$```#`0`0``````-S4!``` -M`````@```)4"``#\_________^S4!````````@```'("``#\_________S35 -M!````````@```&D"``#\_________R+6!````````@```(T"``#\________ -M_T/6!```````"P````,````0*````````+K7!```````"P````$```"@900` -M`````.+7!````````@```'("``#\_________Y[8!````````@```(T"``#\ -M_________Z;8!```````"P````$```#`0`0``````.S8!````````@```'(" -M``#\_________Q[9!````````@```(8"``#\_________TS9!```````"P`` -M``$```#`0`0``````%_9!````````@```)4"``#\_________[G9!``````` -M`@```*8"``#\_________\O9!````````@```(P"``#\_________[':!``` -M````"P````$```#PVP0``````+S:!```````"P````$````0)@0``````('; -M!````````@```)D"``#\_________Y_;!```````"P````$```#`0`0````` -M`$/<!```````"P````$````0X`0``````.'=!````````@```(D"``#\____ -M______W=!```````"P````$```#`0`0``````*K>!````````@```(D"``#\ -M_________]G>!````````@```)D"``#\_________SK?!````````@```(D" -M``#\_________\O?!````````@```)D"``#\_________]W?!````````@`` -M`)D"``#\_________]W@!````````@```(D"``#\_________S_A!``````` -M`@```*,"``#\_________UCA!````````@```'("``#\_________Y#A!``` -M`````@```&4"``#\_________Z_A!```````"P````$```#`0`0``````)7B -M!```````"P````$```#`0`0``````*;B!````````@```)4"``#\________ -M_[/B!````````@```&T"``#\_________\[B!```````"P````$```"03`0` -M`````/Q"!````````@```*L"``#\_________\9#!````````@```*L"``#\ -M_________W=$!````````@```*<"``#\_________]-&!````````@```*<" -M``#\_________UE'!````````@```*$"``#\_________XU'!````````@`` -M`-`"``#\_________\U'!````````@```-`"``#\_________PU(!``````` -M`@```-`"``#\_________TU(!````````@```-`"``#\_________XU(!``` -M`````@```-`"``#\_________\U(!````````@```-`"``#\_________PU) -M!````````@```-`"``#\_________TU)!````````@```-`"``#\________ -M_XU)!````````@```-`"``#\_________\U)!````````@```-`"``#\____ -M_____PU*!````````@```-`"``#\_________TU*!````````@```-`"``#\ -M_________XU*!````````@```-`"``#\_________\U*!````````@```-`" -M``#\_________PU+!````````@```-`"``#\_________TU+!````````@`` -M`-`"``#\_________XU+!````````@```-`"``#\_________\U+!``````` -M`@```-`"``#\_________PU,!````````@```-`"``#\_________TU,!``` -M`````@```-`"``#\_________X!,!````````@```-`"``#\_________[1, -M!````````@```-`"``#\_________Q5-!````````@```-`"``#\________ -M_V1-!````````@```*L"``#\_________Y]-!````````@```-`"``#\____ -M_____Z1-!````````@```(D"``#\_________VY.!````````@```*L"``#\ -M_________\%.!````````@```(D"``#\_________RE0!````````@```-`" -M``#\_________T=1!````````@```-`"``#\_________\A1!````````@`` -M`*L"``#\_________^M2!````````@```)4"``#\_________S54!``````` -M`@```)4"``#\_________X54!````````@```)4"``#\_________QM7!``` -M`````@```)4"``#\_________XM8!````````@```)4"``#\_________S-9 -M!````````@```)4"``#\_________Y1:!````````@```)4"``#\________ -M_TA;!````````@```)4"``#\_________]1;!````````@```)4"``#\____ -M_____ZM<!````````@```)4"``#\_________V]B!````````@```)4"``#\ -M_________WEC!````````@```)4"``#\_________\UC!````````@```)4" -M``#\_________U!D!````````@```-`"``#\_________\=D!````````@`` -M`)4"``#\_________W9F!````````@```)4"``#\__________)F!``````` -M`@```*L"``#\_________SMG!````````@```-`"``#\_________TMG!``` -M`````@```$@"``#\_________QMN!````````@```*L"``#\_________^MO -M!````````@```)4"``#\_________S1P!````````@```(D"``#\________ -M_VAQ!````````@```*L"``#\_________\EQ!````````@```)4"``#\____ -M______9R!````````@```)4"``#\_________V)Z!````````@```*L"``#\ -M_________Z5Z!````````@```)4"``#\_________^)Z!````````@```)4" -M``#\_________W1[!````````@```*`"``#\__________)\!````````@`` -M`&T"``#\_________R9]!````````@```&T"``#\_________XM]!``````` -M`@```&T"``#\_________\E]!````````@```&T"``#\_________V)^!``` -M`````@```*$"``#\_________X5_!````````@```*`"``#\_________S&` -M!````````@```&T"``#\_________ZJ`!````````@```&T"``#\________ -M_PB!!````````@```)4"``#\_________[B,!````````@```)4"``#\____ -M_____YF1!````````@```)4"``#\_________^J3!````````@```)4"``#\ -M_________XFD!````````@```)4"``#\__________FE!````````@```)4" -M``#\_________[2F!````````@```)4"``#\_________PBJ!````````@`` -M`)4"``#\_________ZBN!````````@```)4"``#\_________Q"O!``````` -M`@```%0"``#\_________WRO!````````@```($"``#\_________R*R!``` -M`````@```)4"``#\_________SBV!````````@```*L"``#\_________V6X -M!````````@```($"``#\_________R.Y!````````@```)4"``#\________ -M_^"[!````````@```($"``#\_________YN\!````````@```*L"``#\____ -M_____R7`!````````@```),"``#\_________]+`!````````@```)4"``#\ -M_________YC!!````````@```)4"``#\_________Y7$!````````@```)4" -M``#\_________Y3%!````````@```)4"``#\_________P;)!````````@`` -M`)4"``#\_________U'*!````````@```$L"``#\_________T'+!``````` -M`@```-`"``#\_________P/,!````````@```)4"``#\_________XW,!``` -M`````@```)T"``#\_________X;-!````````@```)4"``#\_________ZW. -M!````````@```)4"``#\_________US1!````````@```)4"``#\________ -M_SO3!````````@```)4"``#\_________\/8!````````@```)4"``#\____ -M_____\#;!````````@```)4"``#\_________]+;!````````@```*L"``#\ -M_________VS<!````````@```-`"``#\_________RC>!````````@```)4" -M``#\_________V'?!````````@```*L"``#\_________T?@!````````@`` -M`*L"``#\_________X[@!````````@```*L"``#\_________^3A!``````` -M`@```)4"``#\_________P#C!````````@```)4"``#\_________W;E!``` -M`````@```'$"``#\_________[GG!```````"P````$```!PZP0``````/KG -M!````````@```(\"``#\_________T+H!```````"P````$```#@Y00````` -M`$WH!```````"P````$```!PZP0``````/;I!````````@```'L"``#\____ -M_____^+J!````````@```(\"``#\_________S3K!```````"P```',"```` -M`````````$'K!````````@```,<"``#\_________[SK!````````@```*," -M``#\_________^_M!```````"P```',"`````````````/SM!````````@`` -M`,<"``#\_________Q#N!````````@```',"``#\_________\CN!``````` -M`@```,H"``#\__________/N!````````@```-`"``#\_________Y;O!``` -M`````@```*L"``#\_________[CO!````````@```$\"``#\__________#O -M!````````@```*L"``#\_________P7E!````````@```-`"``#\________ -M_UCE!````````@```-`"``#\_________[[E!````````@```)D"``#\____ -M_____P?I!````````@```*L"``#\_________U;K!````````@```',"``#\ -M_________]WK!````````@```,H"``#\_________T7L!````````@```*L" -M``#\_________^OO!````````@```*<"``#\_________U+P!````````@`` -M`&H"``#\_________Z;R!````````@```'4"``#\_________]?R!``````` -M`@```'4"``#\_________^CR!````````@```'4"``#\_________W7S!``` -M`````@```%("``#\_________W3T!````````@```%<"``#\_________V[V -M!````````@```&T"``#\_________Y?V!````````@```%T"``#\________ -M_R_W!````````@```(T"``#\_________][Y!````````@```&L"``#\____ -M_____^OY!````````@```&8"``#\_________PCZ!````````@```&$"``#\ -M_________SWZ!````````@```&$"``#\_________U3Z!````````@```&D" -M``#\__________#Z!````````@```(T"``#\_________R'[!````````@`` -M`'L"``#\_________S_[!````````@```'L"``#\_________U'[!``````` -M`@```'L"``#\_________V'[!````````@```(T"``#\_________VG[!``` -M`````@```(T"``#\_________\+[!```````"P````,```!`*````````#;\ -M!````````@```(L"``#\_________X7\!````````@```&\"``#\________ -M_]O\!````````@```%0"``#\_________W#]!````````@```(T"``#\____ -M_____T3^!````````@```*T"``#\_________W;^!````````@```%T"``#\ -M_________X;^!````````@```(L"``#\_________Z?^!````````@```(H" -M``#\_________W<`!0```````@```&$"``#\_________YX`!0```````@`` -M`&$"``#\_________ZX`!0```````@```&L"``#\_________SH!!0`````` -M`@```&$"``#\_________U0!!0```````@```&L"``#\_________W4!!0`` -M`````@```&8"``#\_________Y$!!0```````@```&8"``#\_________XL$ -M!0```````@```-4"``#\_________^$$!0```````@```-4"``#\________ -M_RX%!0```````@```-4"``#\_________^H%!0```````@```&L"``#\____ -M_____P0&!0```````@```&$"``#\_________PP&!0```````@```&L"``#\ -M_________VX&!0```````@```&H"``#\_________X8&!0```````@```*T" -M``#\_________Z<&!0```````@```+("``#\_________RD'!0```````@`` -M`&H"``#\_________TD'!0```````@```&L"``#\_________Q((!0`````` -M`@```-4"``#\_________\H)!0```````@```+,"``#\_________^<)!0`` -M`````@```*T"``#\__________$)!0```````@```(T"``#\_________RD* -M!0```````@```(L"``#\_________WWT!````````@```&\"``#\________ -M_XGV!````````@```&\"``#\_________Y']!````````@```*T"``#\____ -M_____]P(!0```````@```+,"``#\_________U,*!0```````@```$P"``#\ -M_________W4*!0```````@```*H"``#\_________Y$*!0```````@```*H" -M``#\_________SX,!0``````"P````$```#P"@4``````%D,!0```````@`` -M`-`"``#\_________Y$,!0```````@```),"``#\_________]@,!0`````` -M`@```-("``#\_________^@,!0```````@```+T"``#\_________P`$```` -M`````0````$```"@'`````````@$`````````0````$```#2'````````!`$ -M`````````0````$```!<'0```````!@$`````````0````$```!<'0`````` -M`"`$`````````0````$```!<'0```````"@$`````````0````$```!<'0`` -M`````#`$`````````0````$````$'0```````#@$`````````0````$````P -M'0```````$`$`````````0````$```!<'0```````$@$`````````0````$` -M``!Q'0```````%`$`````````0````$````S)P```````%@$`````````0`` -M``$````^)P```````&`$`````````0````$````^)P```````&@$```````` -M`0````$````^)P```````'`$`````````0````$````^)P```````'@$```` -M`````0````$````^)P```````(`$`````````0````$````^)P```````(@$ -M`````````0````$````^)P```````)`$`````````0````$````^)P`````` -M`)@$`````````0````$````^)P```````*`$`````````0````$````^)P`` -M`````*@$`````````0````$````^)P```````+`$`````````0````$````^ -M)P```````+@$`````````0````$````^)P```````,`$`````````0````$` -M```^)P```````,@$`````````0````$````^)P```````-`$`````````0`` -M``$````^)P```````-@$`````````0````$````^)P```````.`$```````` -M`0````$````^)P```````.@$`````````0````$````^)P```````/`$```` -M`````0````$````^)P```````/@$`````````0````$````^)P`````````% -M`````````0````$````^)P````````@%`````````0````$````^)P`````` -M`!`%`````````0````$````^)P```````!@%`````````0````$````^)P`` -M`````"`%`````````0````$````^)P```````"@%`````````0````$````^ -M)P```````#`%`````````0````$````^)P```````#@%`````````0````$` -M```^)P```````$`%`````````0````$````^)P```````$@%`````````0`` -M``$````^)P```````%`%`````````0````$````^)P```````%@%```````` -M`0````$````^)P```````&`%`````````0````$````^)P```````&@%```` -M`````0````$````^)P```````'`%`````````0````$````()P```````'@% -M`````````0````$````^)P```````(`%`````````0````$````()P`````` -M`(@%`````````0````$````^)P```````)`%`````````0````$````^)P`` -M`````)@%`````````0````$````^)P```````*`%`````````0````$````( -M)P```````*@%`````````0````$````()P```````+`%`````````0````$` -M```^)P```````+@%`````````0````$````^)P```````,`%`````````0`` -M``$````^)P```````,@%`````````0````$````^)P```````-`%```````` -M`0````$````^)P```````-@%`````````0````$````^)P```````.`%```` -M`````0````$````^)P```````.@%`````````0````$````^)P```````/`% -M`````````0````$````^)P```````/@%`````````0````$````^)P`````` -M```&`````````0````$````^)P````````@&`````````0````$````^)P`` -M`````!`&`````````0````$````^)P```````!@&`````````0````$````^ -M)P```````"`&`````````0````$````^)P```````"@&`````````0````$` -M```^)P```````#`&`````````0````$````^)P```````#@&`````````0`` -M``$````()P```````$`&`````````0````$````^)P```````$@&```````` -M`0````$````^)P```````%`&`````````0````$````^)P```````%@&```` -M`````0````$````^)P```````&`&`````````0````$````^)P```````&@& -M`````````0````$````^)P```````'`&`````````0````$````^)P`````` -M`'@&`````````0````$````^)P```````(`&`````````0````$````^)P`` -M`````(@&`````````0````$````^)P```````)`&`````````0````$````^ -M)P```````)@&`````````0````$````^)P```````*`&`````````0````$` -M```^)P```````*@&`````````0````$````^)P```````+`&`````````0`` -M``$````()P```````+@&`````````0````$````()P```````,`&```````` -M`0````$````()P```````,@&`````````0````$````()P```````-`&```` -M`````0````$````^)P```````-@&`````````0````$````^)P```````.`& -M`````````0````$````^)P```````.@&`````````0````$````^)P`````` -M`/`&`````````0````$````^)P```````/@&`````````0````$````^)P`` -M```````'`````````0````$````^)P````````@'`````````0````$````^ -M)P```````!`'`````````0````$````^)P```````!@'`````````0````$` -M```^)P```````"`'`````````0````$````^)P```````"@'`````````0`` -M``$````^)P```````#`'`````````0````$````^)P```````#@'```````` -M`0````$````^)P```````$`'`````````0````$````^)P```````$@'```` -M`````0````$````^)P```````%`'`````````0````$````^)P```````%@' -M`````````0````$````^)P```````&`'`````````0````$````^)P`````` -M`&@'`````````0````$````^)P```````'`'`````````0````$````^)P`` -M`````'@'`````````0````$````^)P```````(`'`````````0````$````^ -M)P```````(@'`````````0````$````^)P```````)`'`````````0````$` -M```^)P```````)@'`````````0````$````^)P```````*`'`````````0`` -M``$````^)P```````*@'`````````0````$````^)P```````+`'```````` -M`0````$````^)P```````+@'`````````0````$````^)P```````,`'```` -M`````0````$````^)P```````,@'`````````0````$````^)P```````-`' -M`````````0````$````^)P```````-@'`````````0````$````^)P`````` -M`.`'`````````0````$````^)P```````.@'`````````0````$````^)P`` -M`````/`'`````````0````$````^)P```````/@'`````````0````$````^ -M)P`````````(`````````0````$````^)P````````@(`````````0````$` -M```^)P```````!`(`````````0````$````^)P```````!@(`````````0`` -M``$````^)P```````"`(`````````0````$````^)P```````"@(```````` -M`0````$````()P```````#`(`````````0````$````^)P```````#@(```` -M`````0````$````^)P```````$`(`````````0````$````^)P```````$@( -M`````````0````$````^)P```````%`(`````````0````$````^)P`````` -M`%@(`````````0````$````^)P```````&`(`````````0````$````^)P`` -M`````&@(`````````0````$````^)P```````'`(`````````0````$````( -M)P```````'@(`````````0````$````^)P```````(`(`````````0````$` -M```()P```````(@(`````````0````$````^)P```````)`(`````````0`` -M``$````^)P```````)@(`````````0````$````^)P```````*`(```````` -M`0````$````()P```````*@(`````````0````$````()P```````+`(```` -M`````0````$````^)P```````+@(`````````0````$````^)P```````,`( -M`````````0````$````^)P```````,@(`````````0````$````()P`````` -M`-`(`````````0````$````^)P```````-@(`````````0````$````^)P`` -M`````.`(`````````0````$````^)P```````.@(`````````0````$````^ -M)P```````/`(`````````0````$````^)P```````/@(`````````0````$` -M```^)P`````````)`````````0````$````^)P````````@)`````````0`` -M``$````^)P```````!`)`````````0````$````^)P```````!@)```````` -M`0````$````^)P```````"`)`````````0````$````^)P```````"@)```` -M`````0````$````^)P```````#`)`````````0````$````^)P```````#@) -M`````````0````$````^)P```````$`)`````````0````$````^)P`````` -M`$@)`````````0````$````^)P```````%`)`````````0````$````^)P`` -M`````%@)`````````0````$````^)P```````&`)`````````0````$````^ -M)P```````&@)`````````0````$````^)P```````'`)`````````0````$` -M```()P```````'@)`````````0````$````^)P```````(`)`````````0`` -M``$````()P```````(@)`````````0````$````^)P```````)`)```````` -M`0````$````^)P```````)@)`````````0````$````^)P```````*`)```` -M`````0````$````()P```````*@)`````````0````$````()P```````+`) -M`````````0````$````Z/````````+@)`````````0````$```#J.P`````` -M`,`)`````````0````$```#W.P```````,@)`````````0````$````</``` -M`````-`)`````````0````$````Z/````````-@)`````````0````$````P -M/````````.`)`````````0````$````F/````````.@)`````````0````$` -M```Z/````````/`)`````````0````$````Z/````````/@)`````````0`` -M``$````Z/``````````*`````````0````$````Z/`````````@*```````` -M`0````$````F/````````!`*`````````0````$```"^8@```````!@*```` -M`````0````$```#:8@```````"`*`````````0````$```#V8@```````"@* -M`````````0````$```!,8P```````#`*`````````0````$```"V8P`````` -M`$`*`````````0````$```#7H````````$@*`````````0````$```"QH``` -M`````%`*`````````0````$```"WH````````%@*`````````0````$```#A -MH````````&`*`````````0````$```"GH````````&@*`````````0````$` -M``"GH````````'`*`````````0````$```"GH````````'@*`````````0`` -M``$```"GH````````(`*`````````0````$```"GH````````(@*```````` -M`0````$```"GH````````)`*`````````0````$```"GH````````)@*```` -M`````0````$```"GH````````*`*`````````0````$```"GH````````*@* -M`````````0````$```"GH````````+`*`````````0````$```"GH``````` -M`+@*`````````0````$```"GH````````,`*`````````0````$```#GH``` -M`````,@*`````````0````$```#AH````````-`*`````````0````$```#! -MH````````-@*`````````0````$```#7H````````.`*`````````0````$` -M``#'H````````.@*`````````0````$```#1H````````/`*`````````0`` -M``$```#GH````````/@*`````````0````$```"AH````````(`+```````` -M`0````$```""(0$``````(@+`````````0````$```#N(0$``````)`+```` -M`````0````$````?(@$``````)@+`````````0````$````[(@$``````*`+ -M`````````0````$```!7(@$``````*@+`````````0````$```!S(@$````` -M`+`+`````````0````$```"4(@$``````+@+`````````0````$````/(P$` -M`````,`+`````````0````$````\(P$``````,@+`````````0````$```#> -M(P$``````-`+`````````0````$```"@(P$``````-@+`````````0````$` -M``"\(P$``````.`+`````````0````$```#Z(P$``````.@+`````````0`` -M``$````1)0$``````/`+`````````0````$```!!)0$``````/@+```````` -M`0````$```!G)0$````````,`````````0````$```">)0$```````@,```` -M`````0````$```"))@$``````!`,`````````0````$```#$)0$``````!@, -M`````````0````$```#5)0$``````"`,`````````0````$```!H(P$````` -M`"@,`````````0````$```"$(P$``````#`,`````````0````$```"V(@$` -M`````#@,`````````0````$```#C(@$``````$`,`````````0````$```"@ -M(P$``````$@,`````````0````$```#E)0$``````%`,`````````0````$` -M``"Y)@$``````%@,`````````0````$```#;)@$``````&`,`````````0`` -M``$```#W)@$``````&@,`````````0````$````8)P$``````'`,```````` -M`0````$````Q)P$``````'@,`````````0````$```!4)P$``````(`,```` -M`````0````$```"()P$``````(@,`````````0````$````')@$``````)`, -M`````````0````$````I)@$``````)@,`````````0````$```!+)@$````` -M`*`,`````````0````$```!M)@$``````+`,`````````0````$```#C6P$` -M`````+@,`````````0````$```"E4@$``````,`,`````````0````$```#W -M4@$``````,@,`````````0````$```"%4P$``````-`,`````````0````$` -M```15`$``````-@,`````````0````$```!%5`$``````.`,`````````0`` -M``$```"05`$``````.@,`````````0````$```#95`$``````/`,```````` -M`0````$```#E5`$``````/@,`````````0````$```!26`$````````-```` -M`````0````$````I5P$```````@-`````````0````$```"24@$``````!`- -M`````````0````$```#C6P$``````!@-`````````0````$```#C6P$````` -M`"`-`````````0````$```#C6P$``````"@-`````````0````$```#C6P$` -M`````#`-`````````0````$```#C6P$``````#@-`````````0````$```!* -M6P$``````$`-`````````0````$```#C6P$``````$@-`````````0````$` -M``#C6P$``````%`-`````````0````$```#O5`$``````%@-`````````0`` -M``$````*50$``````&`-`````````0````$```":5`$``````&@-```````` -M`0````$```#/5`$``````'`-`````````0````$````I5P$``````'@-```` -M`````0````$````^60$``````(`-`````````0````$```"F6P$``````(@- -M`````````0````$```"M6P$``````)`-`````````0````$```#>6P$````` -M`)@-`````````0````$```#C6P$``````*`-`````````0````$```!X6@$` -M`````*@-`````````0````$```#(6@$``````+`-`````````0````$```#2 -M6@$``````+@-`````````0````$```!(60$``````,`-`````````0````$` -M``!560$``````,@-`````````0````$```!?60$``````-`-`````````0`` -M``$```!I60$``````-@-`````````0````$```#@A@$``````.`-```````` -M`0````$````[A`$``````.@-`````````0````$```!,A`$``````/`-```` -M`````0````$```!=A`$``````/@-`````````0````$```!NA`$````````. -M`````````0````$```"ZA`$```````@.`````````0````$```#9A`$````` -M`!`.`````````0````$```#MA`$``````!@.`````````0````$```!"A0$` -M`````"`.`````````0````$```!>A0$``````"@.`````````0````$```!Z -MA0$``````#`.`````````0````$```"6A0$``````#@.`````````0````$` -M``"^A0$``````$`.`````````0````$```#2A0$``````$@.`````````0`` -M``$```#FA0$``````%`.`````````0````$```#@A@$``````%@.```````` -M`0````$```#@A@$``````&`.`````````0````$```#_A0$``````&@.```` -M`````0````$```!KA@$``````'`.`````````0````$```#@A@$``````'@. -M`````````0````$```#@A@$``````(`.`````````0````$````GA@$````` -M`(@.`````````0````$```"PA@$``````)`.`````````0````$```"-A`$` -M`````)@.`````````0````$```"AA`$``````*`.`````````0````$```#@ -MA@$``````*@.`````````0````$````!A0$``````+`.`````````0````$` -M```5A0$``````+@.`````````0````$````IA0$``````,`.`````````0`` -M``$```!0M@$``````,@.`````````0````$```!0M@$``````-`.```````` -M`0````$```")M@$``````-@.`````````0````$```"<M@$``````.`.```` -M`````0````$```!0M@$``````.@.`````````0````$```"]M@$``````/`. -M`````````0````$```!:M@$``````/@.`````````0````$```"OM@$````` -M```/`````````0````$```!FMP$```````@/`````````0````$```!RMP$` -M`````!`/`````````0````$```#AP`$``````!@/`````````0````$```!6 -MP@$``````"`/`````````0````$```!6P@$``````"@/`````````0````$` -M``!6P@$``````#`/`````````0````$```!6P@$``````#@/`````````0`` -M``$```!6P@$``````$`/`````````0````$```!6P@$``````$@/```````` -M`0````$```!6P@$``````%`/`````````0````$```!6P@$``````%@/```` -M`````0````$```!6P@$``````&`/`````````0````$```!6P@$``````&@/ -M`````````0````$```!6P@$``````'`/`````````0````$```!6P@$````` -M`'@/`````````0````$```!6P@$``````(`/`````````0````$```!6P@$` -M`````(@/`````````0````$```!6P@$``````)`/`````````0````$```!6 -MP@$``````)@/`````````0````$```!6P@$``````*`/`````````0````$` -M``!6P@$``````*@/`````````0````$```!6P@$``````+`/`````````0`` -M``$```!6P@$``````+@/`````````0````$```!6P@$``````,`/```````` -M`0````$```!6P@$``````,@/`````````0````$```!6P@$``````-`/```` -M`````0````$```!6P@$``````-@/`````````0````$```!6P@$``````.`/ -M`````````0````$```!6P@$``````.@/`````````0````$```!6P@$````` -M`/`/`````````0````$```!6P@$``````/@/`````````0````$```!6P@$` -M```````0`````````0````$```!6P@$```````@0`````````0````$```!6 -MP@$``````!`0`````````0````$```#UP`$``````!@0`````````0````$` -M``!0P0$``````"`0`````````0````$```"KP0$``````"@0`````````0`` -M``$````&P@$``````#`0`````````0````$```!KPP$``````#@0```````` -M`0````$````WR`$``````$`0`````````0````$````WR`$``````$@0```` -M`````0````$````WR`$``````%`0`````````0````$````WR`$``````%@0 -M`````````0````$````WR`$``````&`0`````````0````$````WR`$````` -M`&@0`````````0````$````WR`$``````'`0`````````0````$````WR`$` -M`````'@0`````````0````$````WR`$``````(`0`````````0````$````W -MR`$``````(@0`````````0````$````WR`$``````)`0`````````0````$` -M```WR`$``````)@0`````````0````$````WR`$``````*`0`````````0`` -M``$````WR`$``````*@0`````````0````$````WR`$``````+`0```````` -M`0````$```!]PP$``````+@0`````````0````$```!]PP$``````,`0```` -M`````0````$```!]PP$``````,@0`````````0````$````WR`$``````-`0 -M`````````0````$````WR`$``````-@0`````````0````$````WR`$````` -M`.`0`````````0````$````WR`$``````.@0`````````0````$````WR`$` -M`````/`0`````````0````$````WR`$``````/@0`````````0````$````W -MR`$````````1`````````0````$````WR`$```````@1`````````0````$` -M```WR`$``````!`1`````````0````$````WR`$``````!@1`````````0`` -M``$````WR`$``````"`1`````````0````$````WR`$``````"@1```````` -M`0````$````WR`$``````#`1`````````0````$```#CPP$``````#@1```` -M`````0````$````[Q`$``````$`1`````````0````$```"3Q`$``````$@1 -M`````````0````$```#LQ`$``````%`1`````````0````$````WR`$````` -M`%@1`````````0````$````WR`$``````&`1`````````0````$````WR`$` -M`````&@1`````````0````$````WR`$``````'`1`````````0````$````W -MR`$``````'@1`````````0````$````WR`$``````(`1`````````0````$` -M```WR`$``````(@1`````````0````$````WR`$``````)`1`````````0`` -M``$````WR`$``````)@1`````````0````$````WR`$``````*`1```````` -M`0````$````WR`$``````*@1`````````0````$````WR`$``````+`1```` -M`````0````$```!$Q0$``````+@1`````````0````$```"?Q0$``````,`1 -M`````````0````$```#[Q0$``````,@1`````````0````$```!3Q@$````` -M`-`1`````````0````$````WR`$``````-@1`````````0````$````WR`$` -M`````.`1`````````0````$````WR`$``````.@1`````````0````$````W -MR`$``````/`1`````````0````$````WR`$``````/@1`````````0````$` -M```WR`$````````2`````````0````$````WR`$```````@2`````````0`` -M``$````WR`$``````!`2`````````0````$````WR`$``````!@2```````` -M`0````$````WR`$``````"`2`````````0````$````WR`$``````"@2```` -M`````0````$````WR`$``````#`2`````````0````$```"KQ@$``````#@2 -M`````````0````$````WR`$``````$`2`````````0````$````WR`$````` -M`$@2`````````0````$````WR`$``````%`2`````````0````$````WR`$` -M`````%@2`````````0````$````WR`$``````&`2`````````0````$````W -MR`$``````&@2`````````0````$````WR`$``````'`2`````````0````$` -M```WR`$``````'@2`````````0````$````WR`$``````(`2`````````0`` -M``$````WR`$``````(@2`````````0````$````WR`$``````)`2```````` -M`0````$````WR`$``````)@2`````````0````$````WR`$``````*`2```` -M`````0````$````WR`$``````*@2`````````0````$````WR`$``````+`2 -M`````````0````$```#DQ@$``````+@2`````````0````$````>QP$````` -M`,`2`````````0````$```!8QP$``````,@2`````````0````$```"2QP$` -M`````-`2`````````0````$```#)QP$``````-@2`````````0````$````` -MR`$````````7`````````0````$`````!P(```````@7`````````0````$` -M```R!P(``````!`7`````````0````$```"\!P(``````!@7`````````0`` -M``$```"\!P(``````"`7`````````0````$```"\!P(``````"@7```````` -M`0````$```"\!P(``````#`7`````````0````$```!D!P(``````#@7```` -M`````0````$```"0!P(``````$`7`````````0````$```"\!P(``````$@7 -M`````````0````$```#1!P(``````%`7`````````0````$```"3$0(````` -M`%@7`````````0````$```">$0(``````&`7`````````0````$```">$0(` -M`````&@7`````````0````$```">$0(``````'`7`````````0````$```"> -M$0(``````'@7`````````0````$```">$0(``````(`7`````````0````$` -M``">$0(``````(@7`````````0````$```">$0(``````)`7`````````0`` -M``$```">$0(``````)@7`````````0````$```">$0(``````*`7```````` -M`0````$```">$0(``````*@7`````````0````$```">$0(``````+`7```` -M`````0````$```">$0(``````+@7`````````0````$```">$0(``````,`7 -M`````````0````$```">$0(``````,@7`````````0````$```">$0(````` -M`-`7`````````0````$```">$0(``````-@7`````````0````$```">$0(` -M`````.`7`````````0````$```">$0(``````.@7`````````0````$```"> -M$0(``````/`7`````````0````$```">$0(``````/@7`````````0````$` -M``">$0(````````8`````````0````$```">$0(```````@8`````````0`` -M``$```">$0(``````!`8`````````0````$```">$0(``````!@8```````` -M`0````$```">$0(``````"`8`````````0````$```">$0(``````"@8```` -M`````0````$```">$0(``````#`8`````````0````$```">$0(``````#@8 -M`````````0````$```">$0(``````$`8`````````0````$```">$0(````` -M`$@8`````````0````$```">$0(``````%`8`````````0````$```">$0(` -M`````%@8`````````0````$```">$0(``````&`8`````````0````$```"> -M$0(``````&@8`````````0````$```">$0(``````'`8`````````0````$` -M``!H$0(``````'@8`````````0````$```">$0(``````(`8`````````0`` -M``$```!H$0(``````(@8`````````0````$```">$0(``````)`8```````` -M`0````$```">$0(``````)@8`````````0````$```">$0(``````*`8```` -M`````0````$```!H$0(``````*@8`````````0````$```!H$0(``````+`8 -M`````````0````$```">$0(``````+@8`````````0````$```">$0(````` -M`,`8`````````0````$```">$0(``````,@8`````````0````$```">$0(` -M`````-`8`````````0````$```">$0(``````-@8`````````0````$```"> -M$0(``````.`8`````````0````$```">$0(``````.@8`````````0````$` -M``">$0(``````/`8`````````0````$```">$0(``````/@8`````````0`` -M``$```">$0(````````9`````````0````$```">$0(```````@9```````` -M`0````$```">$0(``````!`9`````````0````$```">$0(``````!@9```` -M`````0````$```">$0(``````"`9`````````0````$```">$0(``````"@9 -M`````````0````$```">$0(``````#`9`````````0````$```">$0(````` -M`#@9`````````0````$```!H$0(``````$`9`````````0````$```">$0(` -M`````$@9`````````0````$```">$0(``````%`9`````````0````$```"> -M$0(``````%@9`````````0````$```">$0(``````&`9`````````0````$` -M``">$0(``````&@9`````````0````$```">$0(``````'`9`````````0`` -M``$```">$0(``````'@9`````````0````$```">$0(``````(`9```````` -M`0````$```">$0(``````(@9`````````0````$```">$0(``````)`9```` -M`````0````$```">$0(``````)@9`````````0````$```">$0(``````*`9 -M`````````0````$```">$0(``````*@9`````````0````$```">$0(````` -M`+`9`````````0````$```!H$0(``````+@9`````````0````$```!H$0(` -M`````,`9`````````0````$```!H$0(``````,@9`````````0````$```!H -M$0(``````-`9`````````0````$```">$0(``````-@9`````````0````$` -M``">$0(``````.`9`````````0````$```">$0(``````.@9`````````0`` -M``$```">$0(``````/`9`````````0````$```">$0(``````/@9```````` -M`0````$```">$0(````````:`````````0````$```">$0(```````@:```` -M`````0````$```">$0(``````!`:`````````0````$```">$0(``````!@: -M`````````0````$```">$0(``````"`:`````````0````$```">$0(````` -M`"@:`````````0````$```">$0(``````#`:`````````0````$```">$0(` -M`````#@:`````````0````$```">$0(``````$`:`````````0````$```"> -M$0(``````$@:`````````0````$```">$0(``````%`:`````````0````$` -M``">$0(``````%@:`````````0````$```">$0(``````&`:`````````0`` -M``$```">$0(``````&@:`````````0````$```">$0(``````'`:```````` -M`0````$```">$0(``````'@:`````````0````$```">$0(``````(`:```` -M`````0````$```">$0(``````(@:`````````0````$```">$0(``````)`: -M`````````0````$```">$0(``````)@:`````````0````$```">$0(````` -M`*`:`````````0````$```">$0(``````*@:`````````0````$```">$0(` -M`````+`:`````````0````$```">$0(``````+@:`````````0````$```"> -M$0(``````,`:`````````0````$```">$0(``````,@:`````````0````$` -M``">$0(``````-`:`````````0````$```">$0(``````-@:`````````0`` -M``$```">$0(``````.`:`````````0````$```">$0(``````.@:```````` -M`0````$```">$0(``````/`:`````````0````$```">$0(``````/@:```` -M`````0````$```">$0(````````;`````````0````$```">$0(```````@; -M`````````0````$```">$0(``````!`;`````````0````$```">$0(````` -M`!@;`````````0````$```">$0(``````"`;`````````0````$```">$0(` -M`````"@;`````````0````$```!H$0(``````#`;`````````0````$```"> -M$0(``````#@;`````````0````$```">$0(``````$`;`````````0````$` -M``">$0(``````$@;`````````0````$```">$0(``````%`;`````````0`` -M``$```">$0(``````%@;`````````0````$```">$0(``````&`;```````` -M`0````$```">$0(``````&@;`````````0````$```">$0(``````'`;```` -M`````0````$```!H$0(``````'@;`````````0````$```">$0(``````(`; -M`````````0````$```!H$0(``````(@;`````````0````$```">$0(````` -M`)`;`````````0````$```">$0(``````)@;`````````0````$```">$0(` -M`````*`;`````````0````$```!H$0(``````*@;`````````0````$```!H -M$0(``````+`;`````````0````$```">$0(``````+@;`````````0````$` -M``">$0(``````,`;`````````0````$```">$0(``````,@;`````````0`` -M``$```!H$0(``````-`;`````````0````$```">$0(``````-@;```````` -M`0````$```">$0(``````.`;`````````0````$```">$0(``````.@;```` -M`````0````$```">$0(``````/`;`````````0````$```">$0(``````/@; -M`````````0````$```">$0(````````<`````````0````$```">$0(````` -M``@<`````````0````$```">$0(``````!`<`````````0````$```">$0(` -M`````!@<`````````0````$```">$0(``````"`<`````````0````$```"> -M$0(``````"@<`````````0````$```">$0(``````#`<`````````0````$` -M``">$0(``````#@<`````````0````$```">$0(``````$`<`````````0`` -M``$```">$0(``````$@<`````````0````$```">$0(``````%`<```````` -M`0````$```">$0(``````%@<`````````0````$```">$0(``````&`<```` -M`````0````$```">$0(``````&@<`````````0````$```">$0(``````'`< -M`````````0````$```!H$0(``````'@<`````````0````$```">$0(````` -M`(`<`````````0````$```!H$0(``````(@<`````````0````$```">$0(` -M`````)`<`````````0````$```">$0(``````)@<`````````0````$```"> -M$0(``````*`<`````````0````$```!H$0(``````*@<`````````0````$` -M``!H$0(``````+`<`````````0````$```":)@(``````+@<`````````0`` -M``$```!*)@(``````,`<`````````0````$```!7)@(``````,@<```````` -M`0````$```!\)@(``````-`<`````````0````$```":)@(``````-@<```` -M`````0````$```"0)@(``````.`<`````````0````$```"&)@(``````.@< -M`````````0````$```":)@(``````/`<`````````0````$```":)@(````` -M`/@<`````````0````$```":)@(````````=`````````0````$```":)@(` -M``````@=`````````0````$```"&)@(``````!`=`````````0````$````> -M30(``````!@=`````````0````$````Z30(``````"`=`````````0````$` -M``!630(``````"@=`````````0````$```"L30(``````#`=`````````0`` -M``$````63@(``````$`=`````````0````$````WBP(``````$@=```````` -M`0````$````1BP(``````%`=`````````0````$````7BP(``````%@=```` -M`````0````$```!!BP(``````&`=`````````0````$````'BP(``````&@= -M`````````0````$````'BP(``````'`=`````````0````$````'BP(````` -M`'@=`````````0````$````'BP(``````(`=`````````0````$````'BP(` -M`````(@=`````````0````$````'BP(``````)`=`````````0````$````' -MBP(``````)@=`````````0````$````'BP(``````*`=`````````0````$` -M```'BP(``````*@=`````````0````$````'BP(``````+`=`````````0`` -M``$````'BP(``````+@=`````````0````$````'BP(``````,`=```````` -M`0````$```!'BP(``````,@=`````````0````$```!!BP(``````-`=```` -M`````0````$````ABP(``````-@=`````````0````$````WBP(``````.`= -M`````````0````$````GBP(``````.@=`````````0````$````QBP(````` -M`/`=`````````0````$```!'BP(``````/@=`````````0````$````!BP(` -M`````(`>`````````0````$```#R"P,``````(@>`````````0````$```!> -M#`,``````)`>`````````0````$```"/#`,``````)@>`````````0````$` -M``"K#`,``````*`>`````````0````$```#'#`,``````*@>`````````0`` -M``$```#C#`,``````+`>`````````0````$````$#0,``````+@>```````` -M`0````$```!_#0,``````,`>`````````0````$```"L#0,``````,@>```` -M`````0````$```!.#@,``````-`>`````````0````$````0#@,``````-@> -M`````````0````$````L#@,``````.`>`````````0````$```!J#@,````` -M`.@>`````````0````$```"!#P,``````/`>`````````0````$```"Q#P,` -M`````/@>`````````0````$```#7#P,````````?`````````0````$````. -M$`,```````@?`````````0````$```#Y$`,``````!`?`````````0````$` -M```T$`,``````!@?`````````0````$```!%$`,``````"`?`````````0`` -M``$```#8#0,``````"@?`````````0````$```#T#0,``````#`?```````` -M`0````$````F#0,``````#@?`````````0````$```!3#0,``````$`?```` -M`````0````$````0#@,``````$@?`````````0````$```!5$`,``````%`? -M`````````0````$````I$0,``````%@?`````````0````$```!+$0,````` -M`&`?`````````0````$```!G$0,``````&@?`````````0````$```"($0,` -M`````'`?`````````0````$```"A$0,``````'@?`````````0````$```#$ -M$0,``````(`?`````````0````$```#X$0,``````(@?`````````0````$` -M``!W$`,``````)`?`````````0````$```"9$`,``````)@?`````````0`` -M``$```"[$`,``````*`?`````````0````$```#=$`,``````+`?```````` -M`0````$```!C1@,``````+@?`````````0````$````E/0,``````,`?```` -M`````0````$```!W/0,``````,@?`````````0````$````%/@,``````-`? -M`````````0````$```"1/@,``````-@?`````````0````$```#%/@,````` -M`.`?`````````0````$````0/P,``````.@?`````````0````$```!9/P,` -M`````/`?`````````0````$```!E/P,``````/@?`````````0````$```#2 -M0@,````````@`````````0````$```"I00,```````@@`````````0````$` -M```2/0,``````!`@`````````0````$```!C1@,``````!@@`````````0`` -M``$```!C1@,``````"`@`````````0````$```!C1@,``````"@@```````` -M`0````$```!C1@,``````#`@`````````0````$```!C1@,``````#@@```` -M`````0````$```#*10,``````$`@`````````0````$```!C1@,``````$@@ -M`````````0````$```!C1@,``````%`@`````````0````$```!O/P,````` -M`%@@`````````0````$```"*/P,``````&`@`````````0````$````:/P,` -M`````&@@`````````0````$```!//P,``````'`@`````````0````$```"I -M00,``````'@@`````````0````$```"^0P,``````(`@`````````0````$` -M```F1@,``````(@@`````````0````$````M1@,``````)`@`````````0`` -M``$```!>1@,``````)@@`````````0````$```!C1@,``````*`@```````` -M`0````$```#X1`,``````*@@`````````0````$```!(10,``````+`@```` -M`````0````$```!210,``````+@@`````````0````$```#(0P,``````,`@ -M`````````0````$```#50P,``````,@@`````````0````$```#?0P,````` -M`-`@`````````0````$```#I0P,``````-@@`````````0````$```#R5`,` -M`````.`@`````````0````$```#Z5`,``````.@@`````````0````$````" -M50,``````/`@`````````0````$````*50,``````/@@`````````0````$` -M```250,````````A`````````0````$````:50,```````@A`````````0`` -M``$````B50,``````!`A`````````0````$```#J5`,``````!@A```````` -M`0````$```!@<`,``````"`A`````````0````$```"[;0,``````"@A```` -M`````0````$```#,;0,``````#`A`````````0````$```#=;0,``````#@A -M`````````0````$```#N;0,``````$`A`````````0````$````Z;@,````` -M`$@A`````````0````$```!9;@,``````%`A`````````0````$```!M;@,` -M`````%@A`````````0````$```#";@,``````&`A`````````0````$```#> -M;@,``````&@A`````````0````$```#Z;@,``````'`A`````````0````$` -M```6;P,``````'@A`````````0````$````^;P,``````(`A`````````0`` -M``$```!2;P,``````(@A`````````0````$```!F;P,``````)`A```````` -M`0````$```!@<`,``````)@A`````````0````$```!@<`,``````*`A```` -M`````0````$```!_;P,``````*@A`````````0````$```#K;P,``````+`A -M`````````0````$```!@<`,``````+@A`````````0````$```!@<`,````` -M`,`A`````````0````$```"G;P,``````,@A`````````0````$````P<`,` -M`````-`A`````````0````$````-;@,``````-@A`````````0````$````A -M;@,``````.`A`````````0````$```!@<`,``````.@A`````````0````$` -M``"!;@,``````/`A`````````0````$```"5;@,``````/@A`````````0`` -M``$```"I;@,````````B`````````0````$````0H`,```````@B```````` -M`0````$````0H`,``````!`B`````````0````$```!)H`,``````!@B```` -M`````0````$```!<H`,``````"`B`````````0````$````0H`,``````"@B -M`````````0````$```!]H`,``````#`B`````````0````$````:H`,````` -M`#@B`````````0````$```!OH`,``````$`B`````````0````$````FH0,` -M`````$@B`````````0````$````RH0,``````%`B`````````0````$```"M -MJ@,``````%@B`````````0````$````@K`,``````&`B`````````0````$` -M```@K`,``````&@B`````````0````$````@K`,``````'`B`````````0`` -M``$````@K`,``````'@B`````````0````$````@K`,``````(`B```````` -M`0````$````@K`,``````(@B`````````0````$````@K`,``````)`B```` -M`````0````$````@K`,``````)@B`````````0````$````@K`,``````*`B -M`````````0````$````@K`,``````*@B`````````0````$````@K`,````` -M`+`B`````````0````$````@K`,``````+@B`````````0````$````@K`,` -M`````,`B`````````0````$````@K`,``````,@B`````````0````$````@ -MK`,``````-`B`````````0````$````@K`,``````-@B`````````0````$` -M```@K`,``````.`B`````````0````$````@K`,``````.@B`````````0`` -M``$````@K`,``````/`B`````````0````$````@K`,``````/@B```````` -M`0````$````@K`,````````C`````````0````$````@K`,```````@C```` -M`````0````$````@K`,``````!`C`````````0````$````@K`,``````!@C -M`````````0````$````@K`,``````"`C`````````0````$````@K`,````` -M`"@C`````````0````$````@K`,``````#`C`````````0````$````@K`,` -M`````#@C`````````0````$````@K`,``````$`C`````````0````$````@ -MK`,``````$@C`````````0````$````@K`,``````%`C`````````0````$` -M``"_J@,``````%@C`````````0````$````:JP,``````&`C`````````0`` -M``$```!UJP,``````&@C`````````0````$```#0JP,``````'`C```````` -M`0````$````UK0,``````'@C`````````0````$````!L@,``````(`C```` -M`````0````$````!L@,``````(@C`````````0````$````!L@,``````)`C -M`````````0````$````!L@,``````)@C`````````0````$````!L@,````` -M`*`C`````````0````$````!L@,``````*@C`````````0````$````!L@,` -M`````+`C`````````0````$````!L@,``````+@C`````````0````$````! -ML@,``````,`C`````````0````$````!L@,``````,@C`````````0````$` -M```!L@,``````-`C`````````0````$````!L@,``````-@C`````````0`` -M``$````!L@,``````.`C`````````0````$````!L@,``````.@C```````` -M`0````$````!L@,``````/`C`````````0````$```!'K0,``````/@C```` -M`````0````$```!'K0,````````D`````````0````$```!'K0,```````@D -M`````````0````$````!L@,``````!`D`````````0````$````!L@,````` -M`!@D`````````0````$````!L@,``````"`D`````````0````$````!L@,` -M`````"@D`````````0````$````!L@,``````#`D`````````0````$````! -ML@,``````#@D`````````0````$````!L@,``````$`D`````````0````$` -M```!L@,``````$@D`````````0````$````!L@,``````%`D`````````0`` -M``$````!L@,``````%@D`````````0````$````!L@,``````&`D```````` -M`0````$````!L@,``````&@D`````````0````$````!L@,``````'`D```` -M`````0````$```"MK0,``````'@D`````````0````$````%K@,``````(`D -M`````````0````$```!=K@,``````(@D`````````0````$```"VK@,````` -M`)`D`````````0````$````!L@,``````)@D`````````0````$````!L@,` -M`````*`D`````````0````$````!L@,``````*@D`````````0````$````! -ML@,``````+`D`````````0````$````!L@,``````+@D`````````0````$` -M```!L@,``````,`D`````````0````$````!L@,``````,@D`````````0`` -M``$````!L@,``````-`D`````````0````$````!L@,``````-@D```````` -M`0````$````!L@,``````.`D`````````0````$````!L@,``````.@D```` -M`````0````$````!L@,``````/`D`````````0````$````.KP,``````/@D -M`````````0````$```!IKP,````````E`````````0````$```#%KP,````` -M``@E`````````0````$````=L`,``````!`E`````````0````$````!L@,` -M`````!@E`````````0````$````!L@,``````"`E`````````0````$````! -ML@,``````"@E`````````0````$````!L@,``````#`E`````````0````$` -M```!L@,``````#@E`````````0````$````!L@,``````$`E`````````0`` -M``$````!L@,``````$@E`````````0````$````!L@,``````%`E```````` -M`0````$````!L@,``````%@E`````````0````$````!L@,``````&`E```` -M`````0````$````!L@,``````&@E`````````0````$````!L@,``````'`E -M`````````0````$```!UL`,``````'@E`````````0````$````!L@,````` -M`(`E`````````0````$````!L@,``````(@E`````````0````$````!L@,` -M`````)`E`````````0````$````!L@,``````)@E`````````0````$````! -ML@,``````*`E`````````0````$````!L@,``````*@E`````````0````$` -M```!L@,``````+`E`````````0````$````!L@,``````+@E`````````0`` -M``$````!L@,``````,`E`````````0````$````!L@,``````,@E```````` -M`0````$````!L@,``````-`E`````````0````$````!L@,``````-@E```` -M`````0````$````!L@,``````.`E`````````0````$````!L@,``````.@E -M`````````0````$````!L@,``````/`E`````````0````$```"NL`,````` -M`/@E`````````0````$```#HL`,````````F`````````0````$````BL0,` -M``````@F`````````0````$```!<L0,``````!`F`````````0````$```"3 -ML0,``````!@F`````````0````$```#*L0,``````%`F`````````0````$` -M```0^`,``````%@F`````````0````$```"O^`,``````&`F`````````0`` -M``$```!*^`,``````&@F`````````0````$````N^`,``````'`F```````` -M`0````$```"O^`,``````'@F`````````0````$```"O^`,``````(`F```` -M`````0````$```"O^`,``````(@F`````````0````$```"O^`,``````)`F -M`````````0````$````0^`,``````)@F`````````0````$```!Z^0,````` -M`*`F`````````0````$````0^`,``````*@F`````````0````$````0^`,` -M`````+`F`````````0````$```#&]P,``````+@F`````````0````$```!N -M^0,``````,`F`````````0````$````\^0,``````,@F`````````0````$` -M```(^0,``````-`F`````````0````$```!S'`0``````-@F`````````0`` -M``$```"#'`0``````.`F`````````0````$```"+'`0``````.@F```````` -M`0````$```"3'`0``````/`F`````````0````$```";'`0``````/@F```` -M`````0````$```"C'`0````````G`````````0````$```"K'`0```````@G -M`````````0````$```!['`0``````!`G`````````0````$````K(00````` -M`!@G`````````0````$````#(P0``````"`G`````````0````$```!D(@0` -M`````"@G`````````0````$```#:(@0``````#`G`````````0````$```"Q -M(@0``````#@G`````````0````$```#:(@0``````$`G`````````0````$` -M```K(00``````$@G`````````0````$````N(00``````%`G`````````0`` -M``$```#3@`0``````%@G`````````0````$```!E@00``````&`G```````` -M`0````$```!"@@0``````&@G`````````0````$```!N@@0``````'`G```` -M`````0````$````B@P0``````'@G`````````0````$````%A`0``````(`G -M`````````0````$````>A`0``````(@G`````````0````$````JA`0````` -M`)`G`````````0````$````C@00``````)@G`````````0````$```"HA`0` -M`````*`G`````````0````$```!EA00``````*@G`````````0````$```#3 -M@`0``````+`G`````````0````$```!VA@0``````+@G`````````0````$` -M``!^A00``````,`G`````````0````$````@A@0``````,@G`````````0`` -M``$```!&E00``````-`G`````````0````$```"WF`0``````-@G```````` -M`0````$```"`F`0``````.`G`````````0````$```!KF`0``````.@G```` -M`````0````$```!6F`0``````/`G`````````0````$````WF`0``````/@G -M`````````0````$```!&E00````````H`````````0````$````BF`0````` -M``@H`````````0````$```"GE00``````!`H`````````0````$````5UP0` -M`````!@H`````````0````$````#UP0``````"`H`````````0````$```#G -MU@0``````"@H`````````0````$```#&U@0``````#`H`````````0````$` -M``"$U@0``````#@H`````````0````$```!'U@0``````$`H`````````0`` -M``$```"H_`0``````$@H`````````0````$```#A^P0``````%`H```````` -M`0````$```"H_`0``````%@H`````````0````$```#&^P0``````&`H```` -M`````0````$```#&^P0``````&@H`````````0````$```#&^P0``````(`` -M`````````0````8```!(`0```````)@``````````0````$```#0E`$````` -M`*```````````0````$```!PL@$``````*@``````````0````$````@E0$` -M`````+```````````0````$```!PR`$``````+@``````````0````$```"@ -MY`$``````,```````````0````$```!0L@$``````,@``````````0````$` -M``#`E`$``````-```````````0````$```!PE@$``````-@``````````0`` -M``$```!@L0$``````.```````````0````$````PE0$``````.@````````` -M`0````$````PYP$``````/```````````0````$```#@E@$``````/@````` -M`````0````$```#@S`$````````!`````````0```"4!``````````````@! -M`````````0````$```!0K@$``````!`!`````````0````$```!`E0$````` -M`!@!`````````0````$```#`W0$``````"`!`````````0````$```!`J0$` -M`````"@!`````````0````$```!0H0$``````#`!`````````0````$```"@ -MGP$``````#@!`````````0````$```"`EP$``````$`!`````````0````$` -M```@M@$``````$@!`````````0````$```"@EP$``````%`!`````````0`` -M``$````PH0$``````%@!`````````0````$````0H0$``````&`!```````` -M`0````$```#PGP$``````&@!`````````0````$```!@F0$``````'`!```` -M`````0````$```"`F`$``````'@!`````````0```$<``````````````(@! -M`````````0````$```#PE@$``````)`!`````````0````$```!@VP$````` -M`)@!`````````0````$```!@UP$``````*`!`````````0````$```!`TP$` -M`````*@!`````````0````$````PSP$``````+`!`````````0```-D````` -M`````````"`"`````````0````8```"5`@```````#@"`````````0````$` -M``!0?@,``````$`"`````````0````$````PG`,``````$@"`````````0`` -M``$```"@?@,``````%`"`````````0````$```!`L@,``````%@"```````` -M`0````$```!0S@,``````&`"`````````0````$````0G`,``````&@"```` -M`````0````$```!`?@,``````'`"`````````0````$```#P?P,``````'@" -M`````````0````$````@FP,``````(`"`````````0````$```"P?@,````` -M`(@"`````````0````$```#@T`,``````)`"`````````0````$```!@@`,` -M`````)@"`````````0````$```"PM@,``````*`"`````````0```#L!```` -M`````````*@"`````````0````$````0F`,``````+`"`````````0````$` -M``#`?@,``````+@"`````````0````$```!PQP,``````,`"`````````0`` -M``$`````DP,``````,@"`````````0````$````0BP,``````-`"```````` -M`0````$```"`B@,``````-@"`````````0````$```#P@0,``````.`"```` -M`````0````$```#@GP,``````.@"`````````0````$````0@@,``````/`" -M`````````0````$```#PB@,``````/@"`````````0````$```#0B@,````` -M```#`````````0````$````0B@,```````@#`````````0````$```#0@P,` -M`````!`#`````````0````$```#P@@,``````!@#`````````0````8"```` -M`````````"@#`````````0````$```!P@`,``````#`#`````````0````$` -M```0Q0,``````#@#`````````0````$````0P0,``````$`#`````````0`` -M``$```#PO`,``````$@#`````````0````$```#@N`,``````%`#```````` -M`0```$(!`````````````,`#`````````0````$```!0]P,``````,@#```` -M`````0````$```!P%00``````-`#`````````0````$```!@]@,``````.@# -M`````````0````$```!0ZP,``````/`#`````````0````$```#P]0,````` -M`/@#`````````0````$````@[`,``````"@$`````````0````$```!P*`0` -M`````#@$`````````0````$```"@9`0``````%`$`````````0````$```#0 -M*`0``````&`$`````````0````$````P8P0``````'@$`````````0````$` -M``#P*`0``````(@$`````````0````$```"0>`0``````*`$`````````0`` -M``$```!0*00``````+`$`````````0````$```#0<00``````,@$```````` -M`0````$```!P*00``````-@$`````````0````$````P8@0``````/`$```` -M`````0````$```!0*@0````````%`````````0````$```#P6P0``````!@% -M`````````0````$```"P*@0``````"@%`````````0````$```"0T@0````` -M`$`%`````````0````$```"P+00``````$@%`````````0````$```#@:@0` -M`````%`%`````````0````$```#@2P0``````&@%`````````0````$````@ -MP@0``````'`%`````````0````$```"`:00``````'@%`````````0````$` -M``"@2@0``````)`%`````````0````$```#@,00``````*`%`````````0`` -M``$```#P5P0``````+@%`````````0````$`````,@0``````,@%```````` -M`0````$```#`O@0``````.`%`````````0````$`````-00``````.@%```` -M`````0````$```!@:00``````/`%`````````0````$```!@2@0```````@& -M`````````0````$```!P-00``````!`&`````````0````$```!`:00````` -M`!@&`````````0````$````@2@0``````#`&`````````0````$```#@-00` -M`````#@&`````````0````$```#P:`0``````$`&`````````0````$```#@ -M200``````%@&`````````0````$```"@-@0``````&`&`````````0````$` -M``!@:`0``````&@&`````````0````$```"@200``````(`&`````````0`` -M``$````0-P0``````(@&`````````0````$```!`:`0``````)`&```````` -M`0````$```!@200``````*@&`````````0````$```#P-P0``````+@&```` -M`````0````$```#@2`0``````-`&`````````0````$```!@.`0``````.`& -M`````````0````$```"@2`0``````/@&`````````0````$```"`.`0````` -M``@'`````````0````$```#0R`0``````"`'`````````0````$```"@.`0` -M`````#`'`````````0````$````PS00``````$@'`````````0````$```#` -M.`0``````%@'`````````0````$```!@<`0``````'`'`````````0````$` -M``"`.00``````(`'`````````0````$```!`<`0``````)@'`````````0`` -M``$```!P,@0``````*@'`````````0````$```!`O@0``````,`'```````` -M`0````$```#@,@0``````-`'`````````0````$```#PO00``````.@'```` -M`````0````$```!`.@0``````/@'`````````0````$```!@2`0``````!`( -M`````````0````$```"@.@0``````"`(`````````0````$```#`PP0````` -M`#@(`````````0````$```!0.P0``````$`(`````````0````$```#`9P0` -M`````$@(`````````0````$````@2`0``````&`(`````````0````$```#` -M+@0``````&@(`````````0````$```"@:@0``````'`(`````````0````$` -M``"@2P0``````(@(`````````0````$```#P*@0``````)@(`````````0`` -M``$```"PT`0``````+`(`````````0````$```"`-P0``````,`(```````` -M`0````$````@200``````-@(`````````0````$```!0,P0``````.@(```` -M`````0````$```!PO00````````)`````````0````$```"P,P0``````!`) -M`````````0````$```#PO`0``````"@)`````````0````$````0-`0````` -M`#@)`````````0````$```"@O`0``````%`)`````````0````$````P,`0` -M`````%@)`````````0````$````@:@0``````&`)`````````0````$````@ -M2P0``````'@)`````````0````$```!P-`0``````(@)`````````0````$` -M``"`KP0``````*`)`````````0````$`````/`0``````*@)`````````0`` -M``$```"09P0``````+`)`````````0````$```#@1P0``````,@)```````` -M`0````$```#@*P0``````-@)`````````0````$```"@6@0``````/`)```` -M`````0````$```#@+`0``````/@)`````````0````$````@:P0````````* -M`````````0````$````@3`0``````!@*`````````0````$````P*P0````` -M`"@*`````````0````$```#`S00``````$`*`````````0````$````0*00` -M`````%`*`````````0````$`````=P0``````&@*`````````0````$````P -M*00``````'@*`````````0````$```"`8@0``````)`*`````````0````$` -M``!P*P0``````*`*`````````0````$`````J00``````+@*`````````0`` -M``$```!P+P0``````,`*`````````0````$```!@:@0``````,@*```````` -M`0````$```!@2P0``````.`*`````````0````$`````,00``````.@*```` -M`````0````$```#@:00``````/`*`````````0````$```#@2@0```````@+ -M`````````0````$```!0+`0``````!@+`````````0````$```#@600````` -M`#`+`````````0````$```#P/`0``````$`+`````````0````$```"`<`0` -M`````%@+`````````0````$```"`*@0``````&@+`````````0````$```!0 -M6P0``````(`+`````````0````$```"0*00``````)`+`````````0````$` -M``"0800``````*@+`````````0````$```"P*00``````+@+`````````0`` -M``$```"@8`0``````-`+`````````0````$```#0*00``````.`+```````` -M`0````$```"P7P0``````/@+`````````0````$```#P*00```````@,```` -M`````0````$```#`7@0``````"`,`````````0````$````0*@0``````#`, -M`````````0````$```#`700``````$@,`````````0````$````P*@0````` -M`%@,`````````0````$```#@7`0``````'`,`````````0````$```"0*`0` -M`````(`,`````````0````$```!`<@0``````)@,`````````0````$```"P -M*`0``````*`,`````````0````$```!@:P0``````*@,`````````0````$` -M``"`8P0``````,`,`````````0````$```!@/`0``````-`,`````````0`` -M``$````@5P0``````.@,`````````0````$```"0/`0``````/@,```````` -M`0````$```#05`0``````!`-`````````0````$```"`+@0``````"`-```` -M`````0````$```"@6`0``````#@-`````````0````$```!@+@0``````$@- -M`````````0````$```!@600``````&`-`````````0````$```#@/00````` -M`&@-`````````0````$```!P9P0``````'`-`````````0````$```"@1P0` -M`````(@-`````````0````$```"@/@0``````)`-`````````0````$```!0 -M9P0``````)@-`````````0````$```!@1P0``````"```````````0````$` -M`````````````#@``````````0````$````P`````````%```````````0`` -M``$```!``````````*@``````````0````$```"P`@```````,`````````` -M`0````$```#P`@```````-@``````````0````$````P`P```````/`````` -M`````0````$```"``P````````@!`````````0````$```#0`P```````#@! -M`````````0````$```#@`P```````%`!`````````0````$````0!``````` -M`&@!`````````0````$```!@!````````(`!`````````0````$```!P!``` -M`````)@!`````````0````$```#0!````````+`!`````````0````$```#@ -M!````````,@!`````````0````$````0!0```````.`!`````````0````$` -M``!`!0```````/@!`````````0````$```"`!0```````!`"`````````0`` -M``$```#`!0```````"@"`````````0````$```"@!P```````$`"```````` -M`0````$```#@!P```````&`"`````````0````$```"0"````````(`"```` -M`````0````$```#0"````````)@"`````````0````$`````"0```````+`" -M`````````0````$````P"0```````.`"`````````0````$```!0"0`````` -M`/@"`````````0````$```#`"0```````!`#`````````0````$````@"@`` -M`````"@#`````````0````$```"`"@```````$`#`````````0````$````` -M"P```````&@#`````````0````$```!0#````````(@#`````````0````$` -M``"0#````````,@#`````````0````$`````#P````````@$`````````0`` -M``$```!0$````````"`$`````````0````$```"@$````````#@$```````` -M`0````$````P$0```````%`$`````````0````$```"P$0```````&@$```` -M`````0````$````P$@```````(`$`````````0````$```!0$@```````*`$ -M`````````0````$```"@$@```````,`$`````````0````$```#0$@`````` -M`.`$`````````0````$````P$P```````"`%`````````0````$```!`%0`` -M`````$`%`````````0````$````P%@```````&@%`````````0````$```!` -M%P```````)`%`````````0````$```!@&````````+@%`````````0````$` -M``!0'@```````-@%`````````0````$```!P'@```````!@&`````````0`` -M``$```#0*0```````$@&`````````0````$```#@*P```````'`&```````` -M`0````$````@+P```````+`&`````````0````$`````,P```````-@&```` -M`````0````$```#`/````````!@'`````````0````$````@1````````$`' -M`````````0````$````010```````(`'`````````0````$```#03@`````` -M`,`'`````````0````$```"06````````.@'`````````0````$```!060`` -M`````"`(`````````0````$````06@```````%@(`````````0````$```!P -M70```````'@(`````````0````$```!`7@```````+@(`````````0````$` -M``#@80```````.`(`````````0````$```"P90```````"`)`````````0`` -M``$````0:````````%`)`````````0````$````0;````````'`)```````` -M`0````$```"@;````````)`)`````````0````$```"P;````````+`)```` -M`````0````$```#`<````````-@)`````````0````$```#0<0```````!@* -M`````````0````$````@<P```````%@*`````````0````$```"P?@`````` -M`(@*`````````0````$````P@0```````.`*`````````0````$`````A``` -M`````/@*`````````0````$```!PA````````!`+`````````0````$```#` -MA````````"@+`````````0````$````@A0```````$`+`````````0````$` -M``"`A0```````%@+`````````0````$```!0A@```````)`+`````````0`` -M``$```"0AP```````+`+`````````0````$```#@AP```````/`+```````` -M`0````$```!PB````````!@,`````````0````$```#@B0```````$`,```` -M`````0````$```!`BP```````&@,`````````0````$```"0C````````(@, -M`````````0````$````0C0```````+`,`````````0````$````@C@`````` -M`/`,`````````0````$```#`CP```````#`-`````````0````$````0D0`` -M`````%@-`````````0````$````@D@```````(`-`````````0````$```"@ -MDP```````*@-`````````0````$```"@E````````.@-`````````0````$` -M``!`E0```````"@.`````````0````$```!PE@```````(`.`````````0`` -M``$```#0F@```````)@.`````````0````$````PFP```````,@.```````` -M`0````$```"`FP```````.`.`````````0````$```"@G``````````/```` -M`````0````$```"PG0```````!@/`````````0````$```!`G@```````#`/ -M`````````0````$```!PG@```````$@/`````````0````$```"`G@`````` -M`&`/`````````0````$```#0G@```````'@/`````````0````$`````GP`` -M`````)`/`````````0````$```!`GP```````*@/`````````0````$```!P -MGP```````,`/`````````0````$```"PGP```````-@/`````````0````$` -M``#@GP```````/`/`````````0````$````0H`````````@0`````````0`` -M``$````PH````````"`0`````````0````$```!@H````````#@0```````` -M`0````$```"0H````````%`0`````````0````$`````H0```````&@0```` -M`````0````$`````H@```````(`0`````````0````$```#@H@```````)@0 -M`````````0````$````PHP```````,@0`````````0````$````PI``````` -M`.@0`````````0````$```!@I`````````@1`````````0````$```"0I``` -M`````"@1`````````0````$```#@I````````$@1`````````0````$````0 -MI0```````&@1`````````0````$```!`I0```````*@1`````````0````$` -M``#0I@```````,@1`````````0````$`````IP```````.`1`````````0`` -M``$````PIP```````/@1`````````0````$```!@IP```````"`2```````` -M`0````$```!0J````````$`2`````````0````$```"0J````````&`2```` -M`````0````$```#0J````````(@2`````````0````$````0K````````+`2 -M`````````0````$```!@K0```````-`2`````````0````$```#`K0`````` -M`/@2`````````0````$```!PK@```````"`3`````````0````$`````KP`` -M`````$@3`````````0````$```#PKP```````'`3`````````0````$```"@ -ML````````)@3`````````0````$````0L@```````,`3`````````0````$` -M``!PLP```````.@3`````````0````$````@M````````!`4`````````0`` -M``$````PM0```````#@4`````````0````$```!@M@```````&`4```````` -M`0````$```"`MP```````(@4`````````0````$```"0N````````+`4```` -M`````0````$```#PN0```````/`4`````````0````$```!PO0```````!@5 -M`````````0````$```!PO@```````$`5`````````0````$```!@OP`````` -M`&@5`````````0````$````PP````````)`5`````````0````$```#PP``` -M`````+@5`````````0````$`````P@```````.`5`````````0````$```"` -MPP`````````6`````````0````$```"@PP```````"@6`````````0````$` -M``#0Q````````%`6`````````0````$```!`Q0```````'`6`````````0`` -M``$```"`Q0```````)`6`````````0````$```"@Q0```````+`6```````` -M`0````$```#0Q0```````-@6`````````0````$```#`Q@`````````7```` -M`````0````$```"@R````````"@7`````````0````$````PR0```````%`7 -M`````````0````$```"PR@```````)`7`````````0````$````@S@`````` -M`,`7`````````0````$````0T``````````8`````````0````$```"@T@`` -M`````"@8`````````0````$```#0TP```````%`8`````````0````$````0 -MU0```````'@8`````````0````$```!@U0```````+`8`````````0````$` -M``"0U0```````,@8`````````0````$```"PU0```````.`8`````````0`` -M``$```#0U0```````/@8`````````0````$`````U@```````!`9```````` -M`0````$```!0U@```````"@9`````````0````$```"PU@```````$`9```` -M`````0````$```!`V````````'`9`````````0````$````0V0```````*`9 -M`````````0````$```"`V0```````,`9`````````0````$```"PV0`````` -M`.`9`````````0````$```!`V@```````!`:`````````0````$```"0VP`` -M`````#`:`````````0````$```"PW````````%`:`````````0````$````P -MW0```````'`:`````````0````$```"PW0```````+`:`````````0````$` -M``#0Y@```````-@:`````````0````$```!@Z````````/`:`````````0`` -M``$`````Z0````````@;`````````0````$`````Z@```````%`;```````` -M`0````$```#`ZP```````&@;`````````0````$```!`[````````(`;```` -M`````0````$```"P[````````)@;`````````0````$````@[0```````+`; -M`````````0````$```"0[0```````,@;`````````0````$```"@[0`````` -M`.`;`````````0````$```#@[0```````/@;`````````0````$```!`[@`` -M`````!`<`````````0````$```!@[@```````"@<`````````0````$```"0 -M[@```````$@<`````````0````$````P[P```````'`<`````````0````$` -M``!`\````````+`<`````````0````$````@\@```````.`<`````````0`` -M``$```"`\@````````@=`````````0````$```!P\P```````#`=```````` -M`0````$```!`]````````%`=`````````0````$```!@]0```````'@=```` -M`````0````$````0]@```````*`=`````````0````$```!`]P```````,@= -M`````````0````$````0^````````/`=`````````0````$````0^0`````` -M`#`>`````````0````$`````^@```````'`>`````````0````$```#P^@`` -M`````+`>`````````0````$```"0_0```````.`>`````````0````$```!0 -M``$``````"`?`````````0````$````@"`$``````$@?`````````0````$` -M``#0"`$``````(@?`````````0````$````P#`$``````,@?`````````0`` -M``$```"0$P$```````@@`````````0````$```"0%`$``````$`@```````` -M`0````$```"`&`$``````(`@`````````0````$```"0(`$``````*@@```` -M`````0````$```!`(0$``````-`@`````````0````$```#@)P$``````/@@ -M`````````0````$````@*@$``````"`A`````````0````$```#0,P$````` -M`$@A`````````0````$```"`-P$``````'`A`````````0````$```"P.@$` -M`````+`A`````````0````$```!0/0$``````/`A`````````0````$```!` -M0`$``````#`B`````````0````$`````0P$``````'`B`````````0````$` -M``#P1@$``````+`B`````````0````$```#@2@$``````/`B`````````0`` -M``$`````3`$``````"`C`````````0````$````03@$``````$@C```````` -M`0````$```#@3P$``````(@C`````````0````$```"04`$``````+`C```` -M`````0````$```!P7`$``````/`C`````````0````$```"090$```````@D -M`````````0````$```#`90$``````"`D`````````0````$```#P90$````` -M`$@D`````````0````$```!P9@$``````&@D`````````0````$```#`9@$` -M`````(@D`````````0````$```#@9@$``````*`D`````````0````$````P -M9P$``````,@D`````````0````$```#09P$``````/`D`````````0````$` -M``!@:0$``````!`E`````````0````$```"@:0$``````#`E`````````0`` -M``$```#@:0$``````%`E`````````0````$````@:@$``````'@E```````` -M`0````$```"P:@$``````*`E`````````0````$`````:P$``````,@E```` -M`````0````$```"`:P$``````/`E`````````0````$```!0;`$``````#`F -M`````````0````$```!@;@$``````%`F`````````0````$```#`;@$````` -M`'`F`````````0````$````@;P$``````*@F`````````0````$```#0;P$` -M`````,@F`````````0````$````P<`$``````.@F`````````0````$```!P -M<`$```````@G`````````0````$```"P<`$``````$@G`````````0````$` -M``"P=0$``````&@G`````````0````$````0=@$``````(@G`````````0`` -M``$```!@=@$``````,`G`````````0````$```#`=@$``````-@G```````` -M`0````$```#@=@$``````/`G`````````0````$`````=P$``````!`H```` -M`````0````$```!0>0$``````"@H`````````0````$```!P>0$``````$`H -M`````````0````$```"0>0$``````&@H`````````0````$```"`>@$````` -M`*@H`````````0````$```"P>P$``````-`H`````````0````$```"@?`$` -M``````@I`````````0````$```#0?0$``````$@I`````````0````$```"` -M?@$``````&`I`````````0````$```"@?P$``````'@I`````````0````$` -M``"P?P$``````)`I`````````0````$```#`?P$``````*@I`````````0`` -M``$```#@?P$``````,`I`````````0````$`````@`$``````-@I```````` -M`0````$````P@`$``````/`I`````````0````$```!@@`$``````!@J```` -M`````0````$```"@@0$``````#`J`````````0````$```#@@0$``````%@J -M`````````0````$```"`@@$``````'`J`````````0````$```#@@@$````` -M`(@J`````````0````$`````@P$``````*@J`````````0````$`````AP$` -M`````,@J`````````0````$```!@B`$````````K`````````0````$````0 -MB@$``````!@K`````````0````$```!@B@$``````#`K`````````0````$` -M``"`B@$``````%@K`````````0````$```#PB@$``````(`K`````````0`` -M``$`````C@$``````*@K`````````0````$```"PC@$``````-`K```````` -M`0````$````PCP$``````!`L`````````0````$`````D`$``````#`L```` -M`````0````$```"`D`$``````%`L`````````0````$```!`D0$``````)`L -M`````````0````$```#`E`$``````*@L`````````0````$```#0E`$````` -M`,`L`````````0````$````@E0$``````-@L`````````0````$````PE0$` -M`````/`L`````````0````$```!`E0$```````@M`````````0````$```!0 -ME0$``````"`M`````````0````$```#0E0$``````#@M`````````0````$` -M``!PE@$``````%`M`````````0````$```"`E@$``````&@M`````````0`` -M``$```"0E@$``````(`M`````````0````$```#@E@$``````)@M```````` -M`0````$```#PE@$``````+`M`````````0````$`````EP$``````,@M```` -M`````0````$```!`EP$``````.@M`````````0````$```"`EP$````````N -M`````````0````$```"@EP$``````!@N`````````0````$`````F`$````` -M`#`N`````````0````$```!@F`$``````%`N`````````0````$```"`F`$` -M`````'@N`````````0````$```!@F0$``````+@N`````````0````$```"@ -MGP$``````-@N`````````0````$```#PGP$````````O`````````0````$` -M```0H0$``````"`O`````````0````$````PH0$``````$`O`````````0`` -M``$```!0H0$``````&`O`````````0````$```!PH0$``````(@O```````` -M`0````$`````HP$``````+`O`````````0````$```!@I`$``````-@O```` -M`````0````$```!`J0$````````P`````````0````$```"`K0$``````"@P -M`````````0````$```!0K@$``````%`P`````````0````$```#PKP$````` -M`'`P`````````0````$```#0L`$``````)@P`````````0````$```!@L0$` -M`````,`P`````````0````$```!0L@$``````.`P`````````0````$```!P -ML@$``````"`Q`````````0````$```!PM0$``````$@Q`````````0````$` -M```@M@$``````'`Q`````````0````$```"@MP$``````)@Q`````````0`` -M``$```#@N`$``````-@Q`````````0````$```#`O@$``````/@Q```````` -M`0````$```!`OP$``````"@R`````````0````$```!PR`$``````&@R```` -M`````0````$```#@S`$``````)`R`````````0````$````PSP$``````,@R -M`````````0````$```!`TP$``````/@R`````````0````$```!@UP$````` -M`"`S`````````0````$```!@VP$``````$@S`````````0````$```#`W0$` -M`````'`S`````````0````$```"@Y`$``````)@S`````````0````$````P -MYP$``````/`S`````````0````$```!@Z@$```````@T`````````0````$` -M``"0Z@$``````"`T`````````0````$```"@Z@$``````'@T`````````0`` -M``$````0[0$``````)`T`````````0````$```!0[0$``````*@T```````` -M`0````$```"0[0$``````,`T`````````0````$```#@[0$``````-@T```` -M`````0````$````P[@$```````@U`````````0````$```!`[@$``````"`U -M`````````0````$```!P[@$``````#@U`````````0````$```#`[@$````` -M`%`U`````````0````$```#0[@$``````&@U`````````0````$````P[P$` -M`````(`U`````````0````$```!`[P$``````)@U`````````0````$```!P -M[P$``````+`U`````````0````$```"@[P$``````,@U`````````0````$` -M``#@[P$``````.`U`````````0````$````@\`$``````/@U`````````0`` -M``$`````\@$``````!`V`````````0````$```!`\@$``````#`V```````` -M`0````$```#P\@$``````%`V`````````0````$````P\P$``````&@V```` -M`````0````$```!@\P$``````(`V`````````0````$```"0\P$``````+`V -M`````````0````$```"P\P$``````,@V`````````0````$````@]`$````` -M`.`V`````````0````$```"`]`$``````/@V`````````0````$```#@]`$` -M`````!`W`````````0````$```!@]0$``````#@W`````````0````$```"P -M]@$``````%@W`````````0````$```#P]@$``````)@W`````````0````$` -M``!@^0$``````-@W`````````0````$```"P^@$``````/`W`````````0`` -M``$`````^P$```````@X`````````0````$```"0^P$``````"`X```````` -M`0````$````0_`$``````#@X`````````0````$```"0_`$``````%`X```` -M`````0````$```"P_`$``````'`X`````````0````$`````_0$``````)`X -M`````````0````$````P_0$``````+`X`````````0````$```"0_0$````` -M`/`X`````````0````$```"@_P$``````!`Y`````````0````$```"0``(` -M`````#@Y`````````0````$```"@`0(``````&`Y`````````0````$```#` -M`@(``````(@Y`````````0````$```"P"`(``````*@Y`````````0````$` -M``#0"`(``````.@Y`````````0````$````P%`(``````!@Z`````````0`` -M``$```!`%@(``````$`Z`````````0````$```"`&0(``````(`Z```````` -M`0````$```!@'0(``````*@Z`````````0````$````@)P(``````.@Z```` -M`````0````$```"`+@(``````!`[`````````0````$```!P+P(``````%`[ -M`````````0````$````P.0(``````)`[`````````0````$```#P0@(````` -M`+@[`````````0````$```"P0P(``````/`[`````````0````$```!P1`(` -M`````"@\`````````0````$```#01P(``````$@\`````````0````$```"@ -M2`(``````(@\`````````0````$```!`3`(``````+`\`````````0````$` -M```04`(``````/`\`````````0````$```!P4@(``````"`]`````````0`` -M``$```!P5@(``````$`]`````````0````$`````5P(``````&`]```````` -M`0````$````05P(``````(`]`````````0````$````@6P(``````*@]```` -M`````0````$````P7`(``````.@]`````````0````$```"`70(``````"@^ -M`````````0````$````0:0(``````%@^`````````0````$```"0:P(````` -M`+`^`````````0````$```!@;@(``````,@^`````````0````$```#0;@(` -M`````.`^`````````0````$````@;P(``````/@^`````````0````$```"` -M;P(``````!`_`````````0````$```#@;P(``````"@_`````````0````$` -M``"P<`(``````&`_`````````0````$```#P<0(``````(`_`````````0`` -M``$```!`<@(``````,`_`````````0````$```#0<@(``````.@_```````` -M`0````$```!`=`(``````!!``````````0````$```"@=0(``````#A````` -M`````0````$```#P=@(``````%A``````````0````$```!P=P(``````(!` -M`````````0````$```"`>`(``````,!``````````0````$````@>@(````` -M``!!`````````0````$```!P>P(``````"A!`````````0````$```"`?`(` -M`````%!!`````````0````$`````?@(``````'A!`````````0````$````` -M?P(``````+A!`````````0````$```"@?P(``````/A!`````````0````$` -M``#0@`(``````%!"`````````0````$````PA0(``````&A"`````````0`` -M``$```"0A0(``````)A"`````````0````$```#@A0(``````+!"```````` -M`0````$`````AP(``````-!"`````````0````$````0B`(``````.A"```` -M`````0````$```"@B`(```````!#`````````0````$```#0B`(``````!A# -M`````````0````$```#@B`(``````#!#`````````0````$````PB0(````` -M`$A#`````````0````$```!@B0(``````&!#`````````0````$```"@B0(` -M`````'A#`````````0````$```#0B0(``````)!#`````````0````$````0 -MB@(``````*A#`````````0````$```!`B@(``````,!#`````````0````$` -M``!PB@(``````-A#`````````0````$```"0B@(``````/!#`````````0`` -M``$```#`B@(```````A$`````````0````$```#PB@(``````"!$```````` -M`0````$```!@BP(``````#A$`````````0````$```!@C`(``````%!$```` -M`````0````$```!`C0(``````&A$`````````0````$```"0C0(``````)A$ -M`````````0````$```"0C@(``````+A$`````````0````$```#`C@(````` -M`-A$`````````0````$```#PC@(``````/A$`````````0````$```!`CP(` -M`````!A%`````````0````$```!PCP(``````#A%`````````0````$```"@ -MCP(``````'A%`````````0````$````PD0(``````)A%`````````0````$` -M``!@D0(``````+!%`````````0````$```"0D0(``````,A%`````````0`` -M``$```#`D0(``````/!%`````````0````$```"PD@(``````!!&```````` -M`0````$```#PD@(``````#!&`````````0````$````PDP(``````%A&```` -M`````0````$```!PE@(``````(!&`````````0````$```#`EP(``````*!& -M`````````0````$````@F`(``````,A&`````````0````$```#0F`(````` -M`/!&`````````0````$```!@F0(``````!A'`````````0````$```!0F@(` -M`````$!'`````````0````$`````FP(``````&A'`````````0````$```!P -MG`(``````)!'`````````0````$```#0G0(``````+A'`````````0````$` -M``"`G@(``````.!'`````````0````$```"0GP(```````A(`````````0`` -M``$```#`H`(``````#!(`````````0````$```#@H0(``````%A(```````` -M`0````$```#PH@(``````(!(`````````0````$```!0I`(``````,!(```` -M`````0````$```#0IP(``````.A(`````````0````$```#0J`(``````!!) -M`````````0````$```#`J0(``````#A)`````````0````$```"0J@(````` -M`&!)`````````0````$```!0JP(``````(A)`````````0````$```!@K`(` -M`````+!)`````````0````$```#@K0(``````-!)`````````0````$````` -MK@(``````/A)`````````0````$````PKP(``````"!*`````````0````$` -M``"@KP(``````$!*`````````0````$```#@KP(``````&!*`````````0`` -M``$`````L`(``````(!*`````````0````$````PL`(``````*A*```````` -M`0````$````@L0(``````-!*`````````0````$`````LP(``````/A*```` -M`````0````$```"0LP(``````"!+`````````0````$````0M0(``````&!+ -M`````````0````$```"`N`(``````)!+`````````0````$```!PN@(````` -M`-!+`````````0````$`````O0(``````/A+`````````0````$````PO@(` -M`````"!,`````````0````$```!POP(``````$A,`````````0````$```#` -MOP(``````(!,`````````0````$```#POP(``````)A,`````````0````$` -M```0P`(``````+!,`````````0````$````PP`(``````,A,`````````0`` -M``$```!@P`(``````.!,`````````0````$```"PP`(``````/A,```````` -M`0````$````0P0(``````!!-`````````0````$```"@P@(``````$!-```` -M`````0````$```!PPP(``````'!-`````````0````$```#@PP(``````)!- -M`````````0````$````0Q`(``````+!-`````````0````$```"@Q`(````` -M`.!-`````````0````$```#PQ0(```````!.`````````0````$````0QP(` -M`````"!.`````````0````$```"0QP(``````$!.`````````0````$````0 -MR`(``````(!.`````````0````$````PT0(``````*A.`````````0````$` -M``#`T@(``````,!.`````````0````$```!@TP(``````-A.`````````0`` -M``$```!@U`(``````"!/`````````0````$````@U@(``````#A/```````` -M`0````$```"@U@(``````%!/`````````0````$````0UP(``````&A/```` -M`````0````$```"`UP(``````(!/`````````0````$```#PUP(``````)A/ -M`````````0````$`````V`(``````+!/`````````0````$```!`V`(````` -M`,A/`````````0````$```"@V`(``````.!/`````````0````$```#`V`(` -M`````/A/`````````0````$```#PV`(``````!A0`````````0````$```"0 -MV0(``````$!0`````````0````$```"@V@(``````(!0`````````0````$` -M``"`W`(``````+!0`````````0````$```#@W`(``````-A0`````````0`` -M``$```#0W0(```````!1`````````0````$```"@W@(``````"!1```````` -M`0````$```#`WP(``````$A1`````````0````$```!PX`(``````'!1```` -M`````0````$```"@X0(``````)A1`````````0````$```!PX@(``````,!1 -M`````````0````$```!PXP(```````!2`````````0````$```!@Y`(````` -M`$!2`````````0````$```!0Y0(``````(!2`````````0````$```#PYP(` -M`````+!2`````````0````$```"PZ@(``````/!2`````````0````$```"` -M\@(``````!A3`````````0````$````P\P(``````%A3`````````0````$` -M``"`]@(``````)A3`````````0````$```#@_0(``````-A3`````````0`` -M``$```#@_@(``````!!4`````````0````$```#0`@,``````%!4```````` -M`0````$`````"P,``````'A4`````````0````$```"P"P,``````*!4```` -M`````0````$```!0$@,``````,A4`````````0````$```"0%`,``````/!4 -M`````````0````$```!`'@,``````!A5`````````0````$```#P(0,````` -M`$!5`````````0````$````@)0,``````(!5`````````0````$```#`)P,` -M`````,!5`````````0````$```"P*@,```````!6`````````0````$```!P -M+0,``````$!6`````````0````$```!@,0,``````(!6`````````0````$` -M``!0-0,``````,!6`````````0````$```!P-@,``````/!6`````````0`` -M``$```"`.`,``````!A7`````````0````$```!@.@,``````%A7```````` -M`0````$````0.P,``````(!7`````````0````$```#P1@,``````,!7```` -M`````0````$````04`,``````-A7`````````0````$```!`4`,``````/!7 -M`````````0````$```!P4`,``````!A8`````````0````$```#P4`,````` -M`#A8`````````0````$```!`40,``````%A8`````````0````$```!@40,` -M`````'!8`````````0````$```"P40,``````)A8`````````0````$```!0 -M4@,``````,!8`````````0````$```#@4P,``````.!8`````````0````$` -M```@5`,```````!9`````````0````$```!05`,``````"!9`````````0`` -M``$```"05`,``````$A9`````````0````$```!P50,``````'!9```````` -M`0````$```#`50,``````)A9`````````0````$```!`5@,``````,!9```` -M`````0````$````05P,```````!:`````````0````$````@60,``````"!: -M`````````0````$```"`60,``````$!:`````````0````$```#@60,````` -M`'A:`````````0````$```"06@,``````)A:`````````0````$```#P6@,` -M`````+A:`````````0````$````P6P,``````-A:`````````0````$```!P -M6P,``````!A;`````````0````$```#@8`,``````#A;`````````0````$` -M``!`80,``````%A;`````````0````$```"080,``````)!;`````````0`` -M``$```#P80,``````*A;`````````0````$````08@,``````,!;```````` -M`0````$````P8@,``````.!;`````````0````$````@8P,``````/A;```` -M`````0````$```!`8P,``````!!<`````````0````$```!P8P,``````#!< -M`````````0````$`````9`,``````'!<`````````0````$````P90,````` -M`)A<`````````0````$````@9@,``````-!<`````````0````$```!09P,` -M`````!!=`````````0````$`````:`,``````"A=`````````0````$````@ -M:0,``````$!=`````````0````$````P:0,``````%A=`````````0````$` -M``!`:0,``````'!=`````````0````$```!@:0,``````(A=`````````0`` -M``$```"`:0,``````*!=`````````0````$```"P:0,``````+A=```````` -M`0````$```#@:0,``````.!=`````````0````$````@:P,``````/A=```` -M`````0````$```!@:P,``````"!>`````````0````$`````;`,``````#A> -M`````````0````$```!@;`,``````%!>`````````0````$```"`;`,````` -M`'!>`````````0````$```"`<`,``````)!>`````````0````$```#@<0,` -M`````,A>`````````0````$```"0<P,``````.!>`````````0````$```#@ -M<P,``````/A>`````````0````$`````=`,``````"!?`````````0````$` -M``!P=`,``````$A?`````````0````$```"`=P,``````'!?`````````0`` -M``$````P>`,``````)A?`````````0````$```"P>`,``````-A?```````` -M`0````$```"`>0,``````/A?`````````0````$`````>@,``````!A@```` -M`````0````$```#`>@,``````%A@`````````0````$```!`?@,``````'!@ -M`````````0````$```!0?@,``````(A@`````````0````$```"@?@,````` -M`*!@`````````0````$```"P?@,``````+A@`````````0````$```#`?@,` -M`````-!@`````````0````$```#0?@,``````.A@`````````0````$```!0 -M?P,```````!A`````````0````$```#P?P,``````!AA`````````0````$` -M````@`,``````#!A`````````0````$````0@`,``````$AA`````````0`` -M``$```!@@`,``````&!A`````````0````$```!P@`,``````'AA```````` -M`0````$```!P@0,``````)!A`````````0````$```"P@0,``````+!A```` -M`````0````$```#P@0,``````,AA`````````0````$````0@@,``````.!A -M`````````0````$```!P@@,``````/AA`````````0````$```#0@@,````` -M`!AB`````````0````$```#P@@,``````$!B`````````0````$```#0@P,` -M`````(!B`````````0````$````0B@,``````*!B`````````0````$```"` -MB@,``````,!B`````````0````$```#0B@,``````.!B`````````0````$` -M``#PB@,```````!C`````````0````$````0BP,``````"!C`````````0`` -M``$````PBP,``````$AC`````````0````$```#`C`,``````'!C```````` -M`0````$````@C@,``````)AC`````````0````$`````DP,``````,!C```` -M`````0````$```!`EP,``````.AC`````````0````$````0F`,``````!!D -M`````````0````$```"PF0,``````#!D`````````0````$```"0F@,````` -M`%AD`````````0````$````@FP,``````(!D`````````0````$````0G`,` -M`````*!D`````````0````$````PG`,``````.!D`````````0````$````P -MGP,```````AE`````````0````$```#@GP,``````#!E`````````0````$` -M``!@H0,``````%AE`````````0````$```"@H@,``````)AE`````````0`` -M``$```"`J`,``````+AE`````````0````$`````J0,``````.AE```````` -M`0````$```!`L@,``````"AF`````````0````$```"PM@,``````%!F```` -M`````0````$```#@N`,``````(AF`````````0````$```#PO`,``````+AF -M`````````0````$````0P0,``````.!F`````````0````$````0Q0,````` -M``AG`````````0````$```!PQP,``````#!G`````````0````$```!0S@,` -M`````%AG`````````0````$```#@T`,``````+!G`````````0````$````0 -MU`,``````,AG`````````0````$````PU`,``````.!G`````````0````$` -M``!`U`,``````/AG`````````0````$```!PU`,``````!!H`````````0`` -M``$```"`U`,``````#AH`````````0````$`````U0,``````&!H```````` -M`0````$```#0U0,``````'AH`````````0````$`````U@,``````*!H```` -M`````0````$```!0U@,``````,!H`````````0````$```#0U@,``````-AH -M`````````0````$`````UP,``````/!H`````````0````$```!`UP,````` -M`!!I`````````0````$```!PUP,``````"AI`````````0````$```"`UP,` -M`````$!I`````````0````$```"0UP,``````%AI`````````0````$```#` -MUP,``````'!I`````````0````$`````V`,``````(AI`````````0````$` -M``!@V`,``````+!I`````````0````$```#PV`,``````-AI`````````0`` -M``$```!0V0,``````!!J`````````0````$````PV@,``````#AJ```````` -M`0````$`````VP,``````&!J`````````0````$```"`VP,``````(AJ```` -M`````0````$```#@VP,``````+!J`````````0````$```#`W`,``````.!J -M`````````0````$```#`W0,```````!K`````````0````$````@W@,````` -M`"AK`````````0````$```"`W@,``````$!K`````````0````$```"0W@,` -M`````%AK`````````0````$```"PW@,``````'!K`````````0````$```#0 -MW@,``````*AK`````````0````$```!`X0,``````.AK`````````0````$` -M``"@X@,``````!AL`````````0````$```"@XP,``````$!L`````````0`` -M``$```!`Y`,``````'!L`````````0````$```#@Y`,``````+!L```````` -M`0````$```!`Y@,``````.AL`````````0````$````0Z`,``````!!M```` -M`````0````$```#0Z`,``````#AM`````````0````$```!0Z@,``````'AM -M`````````0````$```!0ZP,``````)!M`````````0````$```"0ZP,````` -M`*AM`````````0````$```"PZP,``````,!M`````````0````$```#@ZP,` -M`````-AM`````````0````$````@[`,``````/!M`````````0````$```!@ -M[`,```````AN`````````0````$```"0[`,``````"!N`````````0````$` -M````[0,``````#AN`````````0````$```#`[0,``````%!N`````````0`` -M``$```#0[0,``````'AN`````````0````$````@[@,``````)AN```````` -M`0````$```"@[@,``````+AN`````````0````$```!@[P,``````-AN```` -M`````0````$```#`[P,```````!O`````````0````$```!P\`,``````!AO -M`````````0````$```"`\`,``````#AO`````````0````$```#0\`,````` -M`&!O`````````0````$```!`\0,``````(!O`````````0````$```#`\0,` -M`````)AO`````````0````$`````\@,``````+AO`````````0````$```!0 -M\@,``````.!O`````````0````$```"P\@,``````!!P`````````0````$` -M``#P]0,``````#AP`````````0````$```!@]@,``````&!P`````````0`` -M``$```!0]P,``````(!P`````````0````$```"0]P,``````*AP```````` -M`0````$```"0^0,``````,AP`````````0````$```#@^0,``````/!P```` -M`````0````$```!P^P,``````!AQ`````````0````$```#0_0,``````#AQ -M`````````0````$````P_@,``````&AQ`````````0````$`````"@0````` -M`*AQ`````````0````$```#P"P0``````,AQ`````````0````$```!`#`0` -M`````/!Q`````````0````$```!`#00``````"!R`````````0````$```"P -M#@0``````%!R`````````0````$```!`$`0``````'!R`````````0````$` -M``#0$`0``````)AR`````````0````$```!`$00``````-!R`````````0`` -M``$```"0$P0``````/AR`````````0````$````P%`0``````"!S```````` -M`0````$```!P%00``````$AS`````````0````$```!P%@0``````(AS```` -M`````0````$`````&`0``````*!S`````````0````$```!@&`0``````+AS -M`````````0````$```"`&`0``````-!S`````````0````$```#0&`0````` -M`!!T`````````0````$```"0&00``````%!T`````````0````$```"@&@0` -M`````(!T`````````0````$`````&P0``````,!T`````````0````$```!@ -M'`0``````-AT`````````0````$```#`'`0``````/!T`````````0````$` -M``!@'00```````AU`````````0````$```!`'@0``````"!U`````````0`` -M``$```!0'P0``````#AU`````````0````$```"@'P0``````%!U```````` -M`0````$````@(`0``````)!U`````````0````$```"P)`0``````*AU```` -M`````0````$```#`)`0``````,!U`````````0````$```!0)00``````.!U -M`````````0````$```#0)00```````AV`````````0````$````0)@0````` -M`"!V`````````0````$```#P)@0``````$AV`````````0````$```"`)P0` -M`````'AV`````````0````$```#P)P0``````)!V`````````0````$```!P -M*`0``````*AV`````````0````$```"0*`0``````,!V`````````0````$` -M``"P*`0``````-AV`````````0````$```#0*`0``````/!V`````````0`` -M``$```#P*`0```````AW`````````0````$````0*00``````"!W```````` -M`0````$````P*00``````#AW`````````0````$```!0*00``````%!W```` -M`````0````$```!P*00``````&AW`````````0````$```"0*00``````(!W -M`````````0````$```"P*00``````)AW`````````0````$```#0*00````` -M`+!W`````````0````$```#P*00``````,AW`````````0````$````0*@0` -M`````.!W`````````0````$````P*@0``````/AW`````````0````$```!0 -M*@0``````!!X`````````0````$```"`*@0``````"AX`````````0````$` -M``"P*@0``````$AX`````````0````$```#P*@0``````&AX`````````0`` -M``$````P*P0``````(AX`````````0````$```!P*P0``````*AX```````` -M`0````$```#@*P0``````,AX`````````0````$```!0+`0``````/!X```` -M`````0````$```#@+`0``````!AY`````````0````$```"P+00``````$!Y -M`````````0````$```!@+@0``````%AY`````````0````$```"`+@0````` -M`'!Y`````````0````$```#`+@0``````)AY`````````0````$```!P+P0` -M`````,!Y`````````0````$````P,`0``````.AY`````````0````$````` -M,00``````!!Z`````````0````$```#@,00``````"AZ`````````0````$` -M````,@0``````$AZ`````````0````$```!P,@0``````&AZ`````````0`` -M``$```#@,@0``````(AZ`````````0````$```!0,P0``````*AZ```````` -M`0````$```"P,P0``````,AZ`````````0````$````0-`0``````.AZ```` -M`````0````$```!P-`0```````A[`````````0````$`````-00``````"A[ -M`````````0````$```!P-00``````$A[`````````0````$```#@-00````` -M`'![`````````0````$```"@-@0``````)![`````````0````$````0-P0` -M`````+![`````````0````$```"`-P0``````-![`````````0````$```#P -M-P0``````/![`````````0````$```!@.`0```````A\`````````0````$` -M``"`.`0``````"!\`````````0````$```"@.`0``````#A\`````````0`` -M``$```#`.`0``````%A\`````````0````$```"`.00``````'A\```````` -M`0````$```!`.@0``````)A\`````````0````$```"@.@0``````,!\```` -M`````0````$```!0.P0``````.A\`````````0````$`````/`0```````A] -M`````````0````$```!@/`0``````"!]`````````0````$```"0/`0````` -M`$!]`````````0````$```#P/`0``````&!]`````````0````$```"@/00` -M`````'A]`````````0````$```#@/00``````)A]`````````0````$```"@ -M/@0``````+A]`````````0````$```!`/P0``````.!]`````````0````$` -M``!00`0``````/A]`````````0````$```#`0`0``````!A^`````````0`` -M``$````@000``````#!^`````````0````$````P000``````%!^```````` -M`0````$````P0@0``````&A^`````````0````$```!`0@0``````(!^```` -M`````0````$```"00@0``````*!^`````````0````$`````0P0``````,A^ -M`````````0````$```#00P0``````/!^`````````0````$```"`1`0````` -M`"!_`````````0````$```"@100``````%!_`````````0````$```"P1@0` -M`````'!_`````````0````$```#@1@0``````(A_`````````0````$```!@ -M1P0``````*!_`````````0````$```"@1P0``````+A_`````````0````$` -M``#@1P0``````-!_`````````0````$````@2`0``````.A_`````````0`` -M``$```!@2`0```````"``````````0````$```"@2`0``````!B````````` -M`0````$```#@2`0``````#"``````````0````$````@200``````$B````` -M`````0````$```!@200``````&"``````````0````$```"@200``````'B` -M`````````0````$```#@200``````)"``````````0````$````@2@0````` -M`*B``````````0````$```!@2@0``````,"``````````0````$```"@2@0` -M`````-B``````````0````$```#@2@0``````/"``````````0````$````@ -M2P0```````B!`````````0````$```!@2P0``````""!`````````0````$` -M``"@2P0``````#B!`````````0````$```#@2P0``````%"!`````````0`` -M``$````@3`0``````&B!`````````0````$```!@3`0``````("!```````` -M`0````$```"03`0``````)B!`````````0````$```#`3`0``````+B!```` -M`````0````$```!P300``````-"!`````````0````$```"P300``````/B! -M`````````0````$```"`3@0``````!B"`````````0````$```#03@0````` -M`$B"`````````0````$```#@3P0``````&B"`````````0````$````P4`0` -M`````)B"`````````0````$```#0400``````-B"`````````0````$```!@ -M4P0``````!"#`````````0````$```!`5`0``````#"#`````````0````$` -M``#05`0``````&"#`````````0````$```#P5@0``````'B#`````````0`` -M``$````@5P0``````+B#`````````0````$```#P5P0``````-"#```````` -M`0````$```"@6`0``````/B#`````````0````$```!@600``````""$```` -M`````0````$```#@600``````$B$`````````0````$```"@6@0``````'"$ -M`````````0````$```!06P0``````)"$`````````0````$```#P6P0````` -M`+B$`````````0````$```#@7`0``````/B$`````````0````$```#`700` -M`````#B%`````````0````$```#`7@0``````'B%`````````0````$```"P -M7P0``````+B%`````````0````$```"@8`0``````/B%`````````0````$` -M``"0800``````"B&`````````0````$````P8@0``````$B&`````````0`` -M``$```"`8@0``````'"&`````````0````$````P8P0``````)"&```````` -M`0````$```"`8P0``````+B&`````````0````$```"@9`0``````-"&```` -M`````0````$```#09`0```````B'`````````0````$```"@900``````#"' -M`````````0````$```!`9P0``````$B'`````````0````$```!09P0````` -M`&B'`````````0````$```!P9P0``````(B'`````````0````$```"09P0` -M`````*B'`````````0````$```#`9P0``````-B'`````````0````$```!` -M:`0``````/B'`````````0````$```!@:`0``````!B(`````````0````$` -M``#P:`0``````#B(`````````0````$```!`:00``````%B(`````````0`` -M``$```!@:00``````'B(`````````0````$```"`:00``````)B(```````` -M`0````$```#@:00``````,"(`````````0````$````@:@0``````.B(```` -M`````0````$```!@:@0``````!")`````````0````$```"@:@0``````#B) -M`````````0````$```#@:@0``````&")`````````0````$````@:P0````` -M`(B)`````````0````$```!@:P0``````+")`````````0````$```#0:P0` -M`````/")`````````0````$````0;00``````!B*`````````0````$```!` -M<`0``````#B*`````````0````$```!@<`0``````%B*`````````0````$` -M``"`<`0``````("*`````````0````$```#0<00``````*B*`````````0`` -M``$```!`<@0``````-"*`````````0````$````0=`0``````!"+```````` -M`0````$`````=P0``````$"+`````````0````$```"0>`0``````'"+```` -M`````0````$```#@>00``````)B+`````````0````$```!P>@0``````+B+ -M`````````0````$```"P>@0``````-B+`````````0````$```#P>@0````` -M`/B+`````````0````$```#0?00``````!",`````````0````$```!@?P0` -M`````"B,`````````0````$```"0?P0``````$B,`````````0````$```"P -M@`0``````'B,`````````0````$```!`B00``````*",`````````0````$` -M```0C`0``````-B,`````````0````$```#PC`0```````"-`````````0`` -M``$```!0D`0``````"B-`````````0````$````PD00``````$B-```````` -M`0````$```"@D00``````(B-`````````0````$```!0DP0``````+"-```` -M`````0````$```#@E`0``````/"-`````````0````$````PI`0``````!B. -M`````````0````$```"@I`0``````$".`````````0````$```"PI00````` -M`&B.`````````0````$`````I@0``````)B.`````````0````$```#`I@0` -M`````,B.`````````0````$`````J00``````/B.`````````0````$````0 -MK`0``````""/`````````0````$````@K@0``````%"/`````````0````$` -M``#`K@0``````'"/`````````0````$````@KP0``````)"/`````````0`` -M``$```"`KP0``````+"/`````````0````$```"0L00``````."/```````` -M`0````$```"0N`0``````!"0`````````0````$```"@O`0``````#B0```` -M`````0````$```#PO`0``````&"0`````````0````$```!PO00``````(B0 -M`````````0````$```#PO00``````+"0`````````0````$```!`O@0````` -M`-B0`````````0````$```#`O@0```````"1`````````0````$```!`OP0` -M`````#"1`````````0````$```#0OP0``````%B1`````````0````$````P -MP`0``````("1`````````0````$````@P00``````*B1`````````0````$` -M```@P@0``````,B1`````````0````$```#`P@0``````/"1`````````0`` -M``$```"0PP0``````!"2`````````0````$```#`PP0``````$B2```````` -M`0````$```"@Q`0``````(B2`````````0````$```#PQ00``````+"2```` -M`````0````$```"PQP0``````.B2`````````0````$```#0R`0```````B3 -M`````````0````$````0R00``````$"3`````````0````$```!0R@0````` -M`%B3`````````0````$```!@R@0``````("3`````````0````$```"0RP0` -M`````*B3`````````0````$````0S`0``````-"3`````````0````$```"@ -MS`0```````"4`````````0````$````PS00``````"B4`````````0````$` -M``#`S00``````&B4`````````0````$```"PT`0``````*"4`````````0`` -M``$```"0T@0``````-B4`````````0````$```!@U`0```````B5```````` -M`0````$```#0UP0``````#"5`````````0````$```#0V`0``````&"5```` -M`````0````$```"`V00``````(B5`````````0````$```#PVP0``````+"5 -M`````````0````$````0X`0``````,B5`````````0````$```!0X`0````` -M`.B5`````````0````$```"@X`0``````!"6`````````0````$`````X@0` -M`````%"6`````````0````$````0XP0``````&B6`````````0````$```#P -MXP0``````(B6`````````0````$```!PY`0``````*"6`````````0````$` -M``#@Y`0``````+B6`````````0````$`````Y00``````-"6`````````0`` -M``$````0Y00``````/"6`````````0````$```!@Y00``````!B7```````` -M`0````$```#@Y00``````$B7`````````0````$`````YP0``````'B7```` -M`````0````$````0ZP0``````)B7`````````0````$```!PZP0``````,"7 -M`````````0````$```!0[`0```````"8`````````0````$```#`[P0````` -M`#B8`````````0````$`````\`0``````%"8`````````0````$````@\`0` -M`````("8`````````0````$````@\00``````)B8`````````0````$```!@ -M\00``````+"8`````````0````$```#0\00``````."8`````````0````$` -M``#`\@0```````"9`````````0````$````@\P0``````"B9`````````0`` -M``$`````]`0``````$B9`````````0````$```"@]`0``````(B9```````` -M`0````$```#`]@0``````,"9`````````0````$```"@^@0``````.B9```` -M`````0````$````0^P0``````!":`````````0````$```"@^P0``````$": -M`````````0````$```#P_00``````&":`````````0````$```"0_@0````` -M`(B:`````````0````$```````4``````+B:`````````0````$```#`!P4` -M`````/B:`````````0````$```!0"@4``````!";`````````0````$```"P -M"@4``````"B;`````````0````$```#`"@4``````$";`````````0````$` -M``#@"@4``````%B;`````````0````$```#P"@4``````(";`````````0`` -M``$```#@"P4``````*B;`````````0````$````@#`4``````,B;```````` -M`0````$```!P#`4``````.B;`````````0````$```#0#`4```````"<```` -M`````0````$```#@#`4``````#"<`````````0````$```#P#`4``````$B< -6`````````0````$```!`#04````````` +M````!`,`````````````+`````````!$#A```````!0````D`P`````````` +M```C`````````!0````\`P`````````````G`````````"0```!4`P`````` +M``````#F`````````$(.$$$.&$$.((,$A@.,`@`<````?`,````````````` +M/@````````!$#B!*A@*#`QP```"<`P`````````````^`````````$0.($J& +M`H,#)````+P#`````````````$D#````````00X000X81`X@@P.&`@```"0` +M``#D`P````````````!9`0```````$$.$$$.&$0.((,#A@(````<````#`0` +M````````````5`````````!$#B!*A@*#`R0````L!`````````````"O```` +M`````$0.($Z,`H8#@P0````````D````5`0`````````````A@````````!$ +M#B!.C`*&`X,$````````)````'P$`````````````/``````````1`Y`7H\" +MC@.-!(P%A@:#!R0```"D!`````````````"H`````````$0.,%2-`HP#A@2# +M!0`````D````S`0`````````````?@$```````!!#A!!#AA$#B"#`X8"```` +M)````/0$`````````````&T!````````1`XP6(X"C0.,!(8%@P8``"0````< +M!0````````````"I`````````$0.($Z,`H8#@P0````````D````1`4````` +M````````#0$```````!$#C!4C0*,`X8$@P4`````)````&P%```````````` +M`"H!````````1`Y`7H\"C@.-!(P%A@:#!R0```"4!0`````````````3`0`` +M`````$0.,%B.`HT#C`2&!8,&```D````O`4`````````````!`$```````!$ +M#C!8C@*-`XP$A@6#!@``)````.0%`````````````%8!````````1`Y`7H\" +MC@.-!(P%A@:#!SP````,!@````````````"C`P```````$(.$$(.&$(.($(. +M*$$.,$$..$0.0(,'A@:,!8T$C@./`@`````````D````3`8````````````` +M_`````````!$#D!>CP*.`XT$C`6&!H,')````'0&`````````````.H````` +M````1`Y`7H\"C@.-!(P%A@:#!R0```"<!@````````````#)`````````$0. +M,%B.`HT#C`2&!8,&```D````Q`8`````````````N@````````!$#C!4C0*, +M`X8$@P4`````)````.P&``````````````P!````````00X000X81`X@@P.& +M`@```"0````4!P````````````!]`0```````$0.($Z,`H8#@P0````````< +M````/`<`````````````%P````````!!#A"#`@```"0```!<!P`````````` +M```J`0```````$0.($Z,`H8#@P0````````D````A`<`````````````9P`` +M``````!!#A!!#AA$#B"#`X8"````'````*P'`````````````#H````````` +M00X0@P(````<````S`<`````````````(`````````!!#A"#`@```!P```#L +M!P`````````````F`````````$$.$(,"````)`````P(`````````````/(` +M````````1`XP5(T"C`.&!(,%`````"0````T"`````````````#J`0`````` +M`$0.,%2-`HP#A@2#!0`````D````7`@`````````````A@````````!!#A!! +M#AA$#B"#`X8"````)````(0(`````````````(4!````````00X000X81`X@ +M@P.&`@```#P```"L"`````````````!G`P```````$(.$$(.&$(.($(.*$$. +M,$$..$0.8(,'A@:,!8T$C@./`@`````````L````[`@`````````````X0$` +M``````!"#A!"#AA!#B!!#BA$#C"#!88$C`.-`@`\````'`D````````````` +MCP(```````!"#A!"#AA"#B!"#BA!#C!!#CA$#D"#!X8&C`6-!(X#CP(````` +M````)````%P)`````````````"0!````````1`XP5(T"C`.&!(,%`````"0` +M``"$"0`````````````T`0```````$$.$$$.&$0.((,#A@(````D````K`D` +M````````````2P````````!"#A!!#AA$#B"#`XP"````'````-0)```````` +M`````"8`````````1`X0```````4``````````$``7@0#`<(D`$````````4 +M````'```````````````%0`````````4````-```````````````&@`````` +M```4````3```````````````(P`````````4````9```````````````00`` +M```````4````?```````````````70`````````4````E``````````````` +MD`$````````L````K```````````````RP````````!"#A!"#AA!#B!!#BB# +M!88$C`.-`@`````L````W```````````````;@````````!"#A!"#AA!#B!! +M#BA$#C"#!88$C`.-`@`<````#`$`````````````*0````````!!#A"#`@`` +M`!P````L`0````````````"%`````````$0.$```````+````$P!```````` +M`````$<!````````0@X00@X800X@00XH1`XP@P6&!(P#C0(`'````'P!```` +M`````````!\!````````1`X0```````<````G`$`````````````@``````` +M``!$#A```````!P```"\`0````````````"``````````$0.$```````/``` +M`-P!`````````````!4)````````0@X00@X80@X@0@XH00XP00XX1`YP@P>& +M!HP%C02.`X\"`````````"0````<`@````````````"#`0```````$0.($Z, +M`H8#@P0````````4````1`(`````````````G0`````````4````7`(````` +M````````^``````````L````=`(`````````````P`$```````!"#A!"#AA! +M#B!!#BA$#C"#!88$C`.-`@`4``````````$``7@0#`<(D`$````````4```` +M'```````````````?P`````````4````-```````````````8@`````````4 +M````3```````````````8@`````````4````9```````````````:0`````` +M```4````?```````````````!P`````````4````E```````````````,P`` +M```````4````K```````````````40`````````4````Q``````````````` +M'P`````````4````W```````````````+@`````````<````]``````````` +M````DP````````!$#A```````"0````4`0`````````````!`0```````$0. +M,%2-`HP#A@2#!0`````\````/`$`````````````T0$```````!"#A!"#AA" +M#B!"#BA!#C!!#CA$#E"#!X8&C`6-!(X#CP(`````````+````'P!```````` +M`````%\`````````0@X00@X800X@00XH1`XP@P6&!(P#C0(`)````*P!```` +M`````````.X`````````1`Y`7H\"C@.-!(P%A@:#!R0```#4`0`````````` +M``#.`````````$0.,%B.`HT#C`2&!8,&```<````_`$`````````````&P$` +M``````!!#A"#`@```"0````<`@````````````"G`````````$0.,%2-`HP# +MA@2#!0`````D````1`(`````````````*@$```````!!#A!!#AA$#B"#`X8" +M````)````&P"`````````````,,`````````1`XP6(X"C0.,!(8%@P8``"0` +M``"4`@````````````#Q`````````$0.,%2-`HP#A@2#!0`````\````O`(` +M````````````X0````````!"#A!"#AA"#B!"#BA!#C!!#CA$#G"#!X8&C`6- +M!(X#CP(`````````/````/P"`````````````.$`````````0@X00@X80@X@ +M0@XH00XP00XX1`YP@P>&!HP%C02.`X\"`````````#P````\`P`````````` +M``"?`@```````$(.$$(.&$(.($(.*$$.,$$..$0.<(,'A@:,!8T$C@./`@`` +M```````T````?`,`````````````W0(```````!"#A!"#AA"#B!!#BA!#C"# +M!H8%C`2-`XX"`````````"0```"T`P````````````"G`````````$0.,%B. +M`HT#C`2&!8,&```\````W`,`````````````/@,```````!"#A!"#AA"#B!" +M#BA!#C!!#CA$#G"#!X8&C`6-!(X#CP(`````````/````!P$```````````` +M`%D'````````0@X00@X80@X@0@XH00XP00XX1`Z@`8,'A@:,!8T$C@./`@`` +M`````#P```!<!`````````````#U`````````$(.$$(.&$(.($(.*$$.,$$. +M.$0.0(,'A@:,!8T$C@./`@`````````T````G`0`````````````[0,````` +M``!"#A!"#AA"#B!!#BA!#C!$#F"#!H8%C`2-`XX"`````#P```#4!``````` +M```````J"````````$(.$$(.&$(.($(.*$$.,$$..$0.8(,'A@:,!8T$C@./ +M`@`````````D````%`4`````````````J`````````!!#A!!#AA$#B"#`X8" +M````)````#P%`````````````&D&````````1`XP6(X"C0.,!(8%@P8``"0` +M``!D!0````````````!#`@```````$0.($Z,`H8#@P0````````<````C`4` +M````````````%`````````!$#A```````"0```"L!0````````````"E"0`` +M`````$0.0%Z/`HX#C02,!88&@P<D````U`4`````````````^`,```````!$ +M#C!4C0*,`X8$@P4`````)````/P%`````````````"<#````````1`XP6(X" +MC0.,!(8%@P8``#P````D!@````````````"R`@```````$(.$$(.&$(.($(. +M*$$.,$$..$0.8(,'A@:,!8T$C@./`@`````````\````9`8````````````` +M[P(```````!"#A!"#AA"#B!"#BA!#C!!#CA'#H`%@P>&!HP%C02.`X\"```` +M````/````*0&`````````````+\"````````0@X00@X80@X@0@XH00XP00XX +M1P[@!(,'A@:,!8T$C@./`@```````#P```#D!@````````````#J`P`````` +M`$(.$$(.&$(.($(.*$$.,$$..$<.@`6#!X8&C`6-!(X#CP(````````\```` +M)`<`````````````[`,```````!"#A!"#AA"#B!"#BA!#C!!#CA'#O`$@P>& +M!HP%C02.`X\"````````/````&0'`````````````!@!````````0@X00@X8 +M0@X@0@XH00XP00XX1`Y0@P>&!HP%C02.`X\"`````````"P```"D!P`````` +M```````!`@```````$(.$$(.&$$.($$.*$0.,(,%A@2,`XT"`"0```#4!P`` +M```````````[`@```````$0.,%2-`HP#A@2#!0`````\````_`<````````` +M````KP````````!"#A!"#AA"#B!"#BA!#C!!#CA$#D"#!X8&C`6-!(X#CP(` +M````````)````#P(`````````````',,````````1`Y`7H\"C@.-!(P%A@:# +M!R0```!D"``````````````C"0```````$0.0%Z/`HX#C02,!88&@P<4```` +M``````$``7@0#`<(D`$````````4````'```````````````,``````````4 +M````-```````````````)0`````````D````3```````````````=@`````` +M``!!#A!!#AB#`X8"````````'````'0``````````````$L`````````1`X8 +M28P"@P,<````E```````````````&@````````!!#A"#`@```!0```"T```` +M``````````!"`````````"0```#,``````````````"5`````````$$.$$$. +M&(,#A@(````````D````]```````````````A0$```````!"#A!!#AA!#B"# +M!(8#C`(`'````!P!`````````````#<`````````1`X0```````<````/`$` +M````````````)P````````!$#A```````!P```!<`0`````````````_```` +M`````$0.$```````)````'P!`````````````-4`````````1`XP6(X"C0., +M!(8%@P8``"0```"D`0````````````!/`````````$(.$$$.&$$.((,$A@., +M`@`D````S`$`````````````?@````````!$#C!4C0*,`X8$@P4`````)``` +M`/0!`````````````,D`````````1`XP5(T"C`.&!(,%`````#P````<`@`` +M```````````0`@```````$(.$$(.&$(.($(.*$$.,$$..$0.0(,'A@:,!8T$ +MC@./`@`````````<````7`(`````````````4@````````!$#B!*C`*#`QP` +M``!\`@````````````!2`````````$0.($J,`H,#-````)P"```````````` +M`*H`````````0@X00@X80@X@00XH00XP@P:&!8P$C0..`@`````````<```` +MU`(`````````````4@````````!$#B!*C`*#`QP```#T`@`````````````W +M`````````$0.$```````'````!0#`````````````#\`````````1`X0```` +M```\````-`,`````````````904```````!"#A!"#AA"#B!"#BA!#C!!#CA$ +M#I`!@P>&!HP%C02.`X\"````````'````'0#`````````````%,````````` +M1`X0```````<````E`,`````````````2P````````!$#A```````!P```"T +M`P````````````!2`````````$0.($J,`H,#%``````````!``%X$`P'")`! +M````````%````!P``````````````!@`````````%````#0````````````` +M`!(`````````'````$P``````````````.@`````````00X0@P(````4```` +M;```````````````(``````````4````A```````````````(@`````````< +M````G```````````````@@````````!!#A"#`@```#P```"\```````````` +M```O`0```````$(.$$(.&$(.($(.*$$.,$$..$0.0(,'A@:,!8T$C@./`@`` +M```````D````_```````````````XP````````!$#D!>CP*.`XT$C`6&!H,' +M-````"0!`````````````"(!````````0@X00@X80@X@00XH00XP@P:&!8P$ +MC0..`@`````````D````7`$`````````````JP````````!$#C!4C0*,`X8$ +M@P4`````%``````````!``%X$`P'")`!````````%````!P````````````` +M`#L!````````%````#0```````````````4`````````%````$P````````` +M``````8`````````%````&0``````````````!P`````````%````'P````` +M`````````!T`````````%````)0``````````````"L`````````%````*P` +M`````````````"<`````````)````,0``````````````#,!````````1`XP +M6(X"C0.,!(8%@P8``!0```#L``````````````!``````````"0````$`0`` +M``````````":`````````$0.*%.-`HP#A@2#!0`````4````+`$````````` +M````7``````````4````1`$`````````````%P`````````<````7`$````` +M````````\0,```````!$#A```````!P```!\`0````````````!5`0`````` +M`$$.$$0.,(,"'````)P!`````````````*<!````````00X0@P(````4```` +M``````$``7@0#`<(D`$````````4````'```````````````1``````````4 +M````-```````````````%``````````D````3```````````````90`````` +M``!"#A!!#AA!#B"#!(8#C`(`)````'0```````````````D#````````00X0 +M00X81`XP@P.&`@```"0```"<``````````````"F`````````$0.,$^,`H8# +M@P0````````D````Q```````````````=P````````!!#A!!#AA$#C"#`X8" +M````/````.P``````````````,0`````````0@X00@X80@X@0@XH00XP00XX +M1`Y0@P>&!HP%C02.`X\"`````````!P````L`0````````````!]```````` +M`$$.$$0.((,"'````$P!`````````````+0`````````1`XP2H8"@P,D```` +M;`$`````````````>0,```````!$#F!>CP*.`XT$C`6&!H,'%``````````! +M``%X$`P'")`!````````%````!P```````````````8`````````%````#0` +M`````````````$8`````````%````$P```````````````8`````````%``` +M`&0```````````````8`````````%````'P```````````````8````````` +M%````)0``````````````'0`````````%````*P``````````````)D````` +M````%````,0```````````````(`````````%````-P```````````````@` +M````````%````/0``````````````%``````````%`````P!```````````` +M``8`````````%````"0!`````````````/0`````````%````#P!```````` +M`````#(`````````'````%0!`````````````#P`````````1`X828P"@P,4 +M````=`$`````````````$P`````````4````C`$`````````````7``````` +M```4````I`$`````````````7``````````<````O`$`````````````&@`` +M``````!$#A```````"0```#<`0````````````#4`````````$$.$$$.&$0. +M4(,#A@(````\````!`(`````````````.08```````!"#A!"#AA"#B!"#BA! +M#C!!#CA$#J`!@P>&!HP%C02.`X\"````````'````$0"`````````````'`` +M````````1`X@2HP"@P,<````9`(`````````````1@````````!$#B!*C`*# +M`QP```"$`@`````````````>`````````$$.$(,"````'````*0"```````` +M`````!X`````````00X0@P(````<````Q`(`````````````$0````````!$ +M#A```````"0```#D`@````````````"!`0```````$0.0%Z/`HX#C02,!88& +M@P<D````#`,`````````````W`0```````!$#E!>CP*.`XT$C`6&!H,')``` +M`#0#`````````````#4$````````1`YP7H\"C@.-!(P%A@:#!R0```!<`P`` +M``````````#(`````````$0.($Z,`H8#@P0````````D````A`,````````` +M````DP$```````!$#C!8C@*-`XP$A@6#!@``'````*P#`````````````-(` +M````````00X0@P(````D````S`,`````````````C`````````!!#A!!#AA$ +M#B"#`X8"````)````/0#`````````````-P`````````00X000X81`X@@P.& +M`@```!P````<!``````````````?`````````$$.$(,"````/````#P$```` +M`````````/$"````````0@X00@X80@X@0@XH00XP00XX1`Y0@P>&!HP%C02. +M`X\"`````````"0```!\!`````````````"C`````````$0.($Z,`H8#@P0` +M```````D````I`0`````````````F@,```````!$#E!>CP*.`XT$C`6&!H,' +M)````,P$`````````````'D!````````1`XP5(T"C`.&!(,%`````"0```#T +M!``````````````Q`0```````$0.8$^,`H8#@P0````````\````'`4````` +M````````Z04```````!"#A!"#AA"#B!"#BA!#C!!#CA$#D"#!X8&C`6-!(X# +MCP(`````````'````%P%`````````````)H`````````1`X@2H8"@P,L```` +M?`4`````````````)@D```````!"#A!!#AA!#B!$#E"#!(8#C`(````````\ +M````K`4`````````````>00```````!"#A!"#AA"#B!"#BA!#C!!#CA$#G"# +M!X8&C`6-!(X#CP(`````````)````.P%`````````````$4"````````0@X0 +M00X800X@@P2&`XP"`#0````4!@`````````````)!````````$(.$$(.&$(. +M($$.*$$.,(,&A@6,!(T#C@(`````````+````$P&`````````````"`$```` +M````0@X00@X800X@00XH@P6&!(P#C0(`````)````'P&`````````````/4# +M````````0@X000X800X@@P2&`XP"`"0```"D!@````````````!@`@`````` +M`$(.$$$.&$$.((,$A@.,`@`D````S`8`````````````T@8```````!$#C!8 +MC@*-`XP$A@6#!@``)````/0&`````````````(X"````````00X000X81`X@ +M@P.&`@```#P````<!P`````````````\`P```````$(.$$(.&$(.($(.*$$. +M,$$..$0.0(,'A@:,!8T$C@./`@`````````4``````````$``7@0#`<(D`$` +M```````4````'```````````````$P`````````4````-``````````````` +M#``````````4````3```````````````*0`````````4````9``````````` +M````#``````````D````?```````````````=P````````!!#A"#`DH.D`(` +M````````)````*0``````````````,@`````````0@X000X8A@.,`D0.((,$ +M`!0```#,```````````````L`````````"0```#D``````````````!+```` +M`````$(.$$$.&(8#C`)##B"#!``4````#`$`````````````.P`````````4 +M````)`$`````````````*P`````````4````/`$`````````````/0`````` +M```<````5`$`````````````*`````````!!#A"#`@```!0```!T`0`````` +M```````+`````````!0```",`0`````````````0`````````!0```"D`0`` +M```````````E`````````!0```"\`0`````````````^`````````!0```#4 +M`0````````````!?`````````"0```#L`0````````````"#`````````$(. +M$(P"1`X8A@-&#B"#!``D````%`(`````````````50````````!"#A",`D8. +M&$$.((,$A@,`-````#P"`````````````-D`````````0@X00@X80@X@00XH +MA@6,!(T#C@)$#C"#!@`````````D````=`(`````````````PP````````!! +M#A"&`D0.&(,#1PX@````)````)P"`````````````'<`````````00X0A@)$ +M#AA$#B"#`P```"0```#$`@````````````!7`````````$$.$(8"1`X81`X@ +M@P,````D````[`(`````````````V0````````!"#A",`D0.&$$.((,$A@,` +M+````!0#`````````````/D`````````0@X0C0)%#AA!#B"&!(P#1`XH1`XP +M@P4`'````$0#`````````````%4`````````00X0@P(````D````9`,````` +M````````5P````````!$#B!)A@.#!$>,`@``````%````(P#```````````` +M`!``````````%````*0#`````````````!$`````````%````+P#```````` +M`````!4`````````-````-0#`````````````&\"````````0@X00@X8C0.. +M`D4.((P$10XH00XP@P:&!0`````````\````#`0`````````````5@$````` +M``!"#A!"#AA"#B!"#BA!#C!!#CB#!X8&C`6-!(X#CP)*#L`!````````+``` +M`$P$`````````````/,`````````0@X0C0)%#AB,`T0.((8$1`XH1`XP@P4` +M)````'P$`````````````)8`````````1`X@2HP"A@-'@P0``````"P```"D +M!`````````````"8`````````$(.$$(.&$$.((8$C`.-`D0.*$0.,(,%`#P` +M``#4!`````````````!:`0```````$(.$(\"10X8C@-%#B"-!$4.*$$.,(8& +MC`5$#CA$#D"#!P`````````T````%`4`````````````QP$```````!"#A!" +M#AB-`XX"10X@C`1$#BA!#C!$#K`!@P:&!0```"0```!,!0````````````"S +M`````````$(.$(P"1`X8A@-(#B"#!``D````=`4`````````````@`$````` +M``!$#C!1C`2&!5..`HT#@P8`)````)P%`````````````/H`````````0@X0 +M2`X8A@.,`D<.((,$`!0``````````0`!>!`,!PB0`0```````!0````<```` +M```````````^`````````!0````T```````````````2`````````!0```!, +M```````````````K`````````!0```!D```````````````X`````````!0` +M``!\```````````````\`````````!0```"4```````````````Q```````` +M`!0```"L``````````````!E`````````!0```#$``````````````"R```` +M`````!0```#<```````````````,`````````"0```#T``````````````!( +M`````````$$.$(8"1`X81`X@@P,````<````'`$`````````````=P`````` +M``!!#A"#`@```!P````\`0````````````"[`````````$$.$(,"````'``` +M`%P!`````````````%L`````````1`X@2H8"@P,D````?`$````````````` +MK@````````!"#A",`D0.&$$.((,$A@,`%````*0!``````````````4````` +M````'````+P!`````````````$X`````````1`X@2H8"@P,D````W`$````` +M````````:@````````!!#A!!#AA$#B"#`X8"````'`````0"```````````` +M`'@`````````1`X@2H8"@P,4````)`(`````````````-P`````````<```` +M/`(`````````````2P````````!!#A"#`@```"0```!<`@````````````!@ +M`````````$$.$(8"1`X8@P-.#B`````L````A`(`````````````.@,````` +M``!$#D!*A@:#!TR/`HX#38T$C`4````````D````M`(`````````````9``` +M``````!"#A!(#AB&`XP"1`X@@P0`)````-P"`````````````.$````````` +M00X000X8@P.&`D<.(````!P````$`P````````````!``````````$0.($J, +M`H,#)````"0#`````````````/D!````````1`Y@38P$A@55C@*#!HT#`!P` +M``!,`P````````````!(`````````$0.($V,`H,#)````&P#```````````` +M`(\!````````1PZ@!%>&`H,#`````````"0```"4`P````````````!:`@`` +M`````$$.$$4.&(,#A@)*#J`$```<````O`,`````````````5@````````!! +M#A"#`@```"P```#<`P````````````"W"@```````$<.T`97C`6&!F>/`HX# +MC02#!P```````#P````,!`````````````#O`0```````$(.$(\"2@X80@X@ +MC02.`T4.*$$.,$$..$0.L`&#!X8&C`4````````<````3`0````````````` +M2@````````!!#A"#`@```"0```!L!`````````````#R`````````$0.($R, +M`H8#1X,$```````L````E`0`````````````90$```````!"#A!"#AB,`XT" +M1`X@00XH1`XP@P6&!``L````Q`0`````````````A0$```````!"#A"-`D<. +M&(P#1`X@00XH1`XP@P6&!``<````]`0`````````````CP````````!!#A"# +M`@```"0````4!0````````````!F`````````$$.$(8"1`X81`X@@P,````T +M````/`4`````````````10(```````!"#A!(#AA"#B!!#BA!#C"#!H8%C`2- +M`XX"`````````"0```!T!0````````````"6`````````$(.$(P"2PX800X@ +M@P2&`P`D````G`4`````````````/@$```````!$#B!)@P2&`TB,`@`````` +M)````,0%`````````````/0`````````1`X@288#@P1(C`(``````"0```#L +M!0````````````!X`0```````$0.,$J,!(8%48,&C@*-`P`4``````````$` +M`7@0#`<(D`$````````4````'```````````````50`````````4````-``` +M````````````'@`````````4````3```````````````0@`````````\```` +M9```````````````M`````````!"#A"/`D4.&(X#10X@0@XH00XP00XX1P[0 +M`8,'A@:,!8T$````````/````*0```````````````@!````````0@X00@X8 +MC@./`D4.($(.*(P%C01$#C"&!D0..$<.X`&#!P```````"P```#D```````` +M``````!<`````````$(.$$(.&$$.((8$C`.-`D,.*$<.L`&#!3P````4`0`` +M``````````!7`0```````$(.$$(.&$(.($(.*$$.,(8&C`6-!(X#CP)$#CA' +M#I`"@P<````````4````5`$`````````````4P`````````4````;`$````` +M````````F@`````````4````A`$`````````````V@`````````4````G`$` +M`````````````P$````````4````M`$`````````````20`````````4```` +MS`$`````````````>0`````````\````Y`$`````````````CP0```````!" +M#A"/`D4.&(X#10X@C01%#BA!#C!!#CA$#D"#!X8&C`4`````````%````"0" +M``````````````(`````````%````#P"`````````````(4`````````'``` +M`%0"`````````````'(`````````1`Y````````D````=`(````````````` +M.@````````!!#A!!#AA$#C"#`X8"````%````)P"`````````````-@````` +M````)````+0"`````````````($`````````0@X0C`)$#AB&`T0.((,$`"P` +M``#<`@````````````!K`````````$(.$(T"10X8C`-$#B!!#BB#!88$```` +M`!0````,`P````````````!S`````````!0````D`P`````````````6```` +M`````!0````\`P`````````````;`````````!0```!4`P`````````````: +M`````````!0```!L`P`````````````6`````````!0```"$`P`````````` +M```5`````````!0```"<`P`````````````5`````````!0```"T`P`````` +M```````5`````````!0```#,`P`````````````5`````````!0```#D`P`` +M```````````5`````````!0```#\`P`````````````5`````````!0````4 +M!``````````````8`````````!0````L!``````````````8`````````!0` +M``!$!``````````````8`````````!0```!<!``````````````8```````` +M`!0```!T!``````````````5`````````!0```",!``````````````H```` +M`````!0```"D!``````````````H`````````!P```"\!``````````````Q +M`````````$$.$(,"````'````-P$`````````````#$`````````00X0@P(` +M```<````_`0`````````````,0````````!!#A"#`@```!P````<!0`````` +M``````!D`````````$$.$(,"````'````#P%`````````````&(````````` +M1`X828,#A@(D````7`4`````````````A0````````!$#B!)@P2&`TB,`@`` +M````)````(0%`````````````,T`````````1`XP28,&A@52C@*-`XP$`"0` +M``"L!0````````````"B`````````$0.*$F&!(,%38T"C`,````4````U`4` +M````````````%0`````````4````[`4`````````````.P`````````D```` +M!`8`````````````H@````````!$#BA)A@2#!4V-`HP#````)````"P&```` +M`````````+4`````````1`XH288$@P5-C0*,`P```"0```!4!@`````````` +M``#'`````````$0.*$F&!(,%38T"C`,````D````?`8`````````````VP`` +M``````!$#BA)A@2#!4V-`HP#````%````*0&`````````````!@````````` +M'````+P&`````````````&4`````````1`X8288"@P,<````W`8````````` +M````90````````!$#AA)A@*#`QP```#\!@````````````!E`````````$0. +M&$F&`H,#'````!P'`````````````%T`````````1`X8288"@P,<````/`<` +M````````````70````````!$#AA)A@*#`QP```!<!P````````````!=```` +M`````$0.&$F&`H,#'````'P'`````````````(8`````````1`X8288"@P,< +M````G`<`````````````90````````!$#AA)A@*#`QP```"\!P`````````` +M``!E`````````$0.&$F&`H,#)````-P'`````````````+H`````````1`X@ +M288#@P1(C`(``````!P````$"`````````````!E`````````$0.&$F&`H,# +M'````"0(`````````````&H`````````1`X8288"@P,<````1`@````````` +M````9P````````!$#AA)A@*#`QP```!D"`````````````!I`````````$0. +M&$F&`H,#%````(0(`````````````!P`````````%````)P(```````````` +M`!@`````````%````+0(`````````````!8`````````'````,P(```````` +M`````+(`````````1`X8288"@P,<````[`@`````````````L@````````!$ +M#AA)A@*#`QP````,"0````````````!=`````````$0.&$F&`H,#)````"P) +M`````````````+``````````1`XP28,&A@52C@*-`XP$`"0```!4"0`````` +M``````"P`````````$0.,$F#!H8%4HX"C0.,!``<````?`D````````````` +M5@````````!$#AA)A@*#`Q0```"<"0`````````````H`````````!P```"T +M"0````````````!9`````````$$.$(,"````'````-0)`````````````*8` +M````````1`X83H8"@P,4````]`D`````````````/@`````````<````#`H` +M````````````LP````````!$#AA)A@*#`QP````L"@````````````"2```` +M`````$0.&$F&`H,#)````$P*``````````````X!````````0@X0C`)*#AB& +M`T<.((,$`!0```!T"@````````````!N`````````!P```","@`````````` +M``!:`````````$$.$(,"````%````*P*``````````````<`````````'``` +M`,0*`````````````/,`````````1`Y````````4````Y`H````````````` +M"``````````4````_`H`````````````00`````````<````%`L````````` +M````<`````````!$#B!*C`*#`R0````T"P````````````#*`````````$0. +M,$F,!(,&38X"C0-(A@4D````7`L`````````````JP````````!$#B!)A@.# +M!$B,`@``````+````(0+`````````````!D!````````1`Y`18\"3(P%6H,' +MC@.-!(8&````````+````+0+``````````````@!````````1`Y`18\"3(P% +M6H,'C@.-!(8&````````'````.0+`````````````"<`````````10X0@P(` +M```4````!`P`````````````?0`````````4````'`P`````````````,0`` +M```````4````-`P`````````````,0`````````4````3`P````````````` +M,0`````````4````9`P`````````````,0`````````4````?`P````````` +M````,0`````````4````E`P`````````````,0`````````4````K`P````` +M````````,0`````````4````Q`P`````````````,0`````````4````W`P` +M````````````,0`````````4````]`P`````````````,0`````````4```` +M#`T`````````````,0`````````4````)`T`````````````,0`````````4 +M````/`T`````````````,0`````````4````5`T`````````````,0`````` +M```4````;`T`````````````,0`````````4````A`T`````````````,0`` +M```````4````G`T`````````````,0`````````4````M`T````````````` +M,0`````````4````S`T`````````````,0`````````4````Y`T````````` +M````,0`````````4````_`T`````````````)``````````4````%`X````` +M````````*``````````<````+`X`````````````J`````````!!#A"#`@`` +M`!0```!,#@`````````````X`````````"0```!D#@````````````#+```` +M`````$0.($Z,`H8#@P0````````<````C`X`````````````10````````!$ +M#B!*@P.,`BP```"L#@`````````````$`0```````$(.$(P"1`X800X@1P[@ +M`8,$A@,``````!P```#<#@````````````!-`````````$0.($J&`H,#+``` +M`/P.`````````````)P!````````1`Y`2H8&@P=7CP*.`XT$C`4````````` +M/````"P/`````````````(8!````````0@X00@X8C@./`D4.($(.*$$.,$$. +M.$0.0(,'A@:,!8T$`````````#0```!L#P````````````#9`````````$(. +M$$(.&$(.((P$C0..`D0.*$$.,(,&A@4`````````'````*0/```````````` +M`(P`````````00X0@P(````L````Q`\`````````````&@(```````!'#M`! +M4(,'A@9CCP*.`XT$C`4````````4````]`\`````````````+P`````````\ +M````#!``````````````T`````````!"#A!%#AA"#B"-!(X#CP)%#BA!#C!! +M#CA'#N`!@P>&!HP%````````%````$P0`````````````*D`````````)``` +M`&00`````````````,``````````1`XP3(8$@P5-C0*,`P```"0```",$``` +M``````````!Y`````````$$.$$,.&(,#A@)*#J`!```D````M!`````````` +M````N`````````!$#C!*C`.&!$V-`H,%````)````-P0`````````````*P` +M````````1`XP2HX#C`51CP*-!(,&`!P````$$0````````````"6```````` +M`$$.$(,"````)````"01`````````````.8`````````00X000X8@P.&`@`` +M`````#P```!,$0````````````#8`````````$(.$$0.&$(.($(.*(P%C02. +M`X\"1`XP00XX1P[``8,'A@8````````\````C!$`````````````\P`````` +M``!"#A!$#AA"#B!"#BB,!8T$C@./`D0.,$$..$<.P`&#!X8&````````/``` +M`,P1`````````````.X`````````0@X01`X80@X@0@XHC`6-!(X#CP)$#C!! +M#CA'#L`!@P>&!@```````#P````,$@````````````#N`````````$(.$$0. +M&$(.($(.*(P%C02.`X\"1`XP00XX1P[``8,'A@8````````\````3!(````` +M````````[@````````!"#A!$#AA"#B!"#BB,!8T$C@./`D0.,$$..$<.P`&# +M!X8&````````+````(P2`````````````)X`````````0@X01`X800X@A@2, +M`XT"1`XH1PZP`8,%'````+P2`````````````$,`````````00X0@P(````D +M````W!(`````````````K0````````!!#A"&`D8.&$<.H`&#`P``'`````03 +M`````````````$T`````````1`X@2HP"@P,D````)!,`````````````$P$` +M``````!!#A!(#AB#`X8"1PX@````%````$P3`````````````"L````````` +M-````&03`````````````,0`````````0@X00@X80@X@00XHA@6,!(T#C@)$ +M#C!$#G"#!@`````D````G!,`````````````GP$```````!$#C!)C`2#!E*. +M`HT#A@4`%````,03``````````````\`````````'````-P3```````````` +M`!@`````````1`X0```````<````_!,`````````````&`````````!$#A`` +M`````!P````<%``````````````C`````````$0.$```````+````#P4```` +M`````````',`````````0@X0C0)%#AA!#B!!#BA$#C"#!88$C`,`'````&P4 +M`````````````!L`````````1`X0```````<````C!0`````````````B0`` +M``````!$#B!*@P.&`AP```"L%`````````````!'`````````$0.($J#`XP" +M'````,P4`````````````!L`````````1`X0```````<````[!0````````` +M````&P````````!$#A```````!P````,%0````````````!2`````````$$. +M$(,"````)````"P5`````````````#L`````````00X000X81`X@@P.&`@`` +M`"0```!4%0`````````````[`````````$$.$$$.&$0.((,#A@(````D```` +M?!4`````````````-P````````!!#A!!#AA$#B"#`X8"````)````*05```` +M`````````#<`````````00X000X81`X@@P.&`@```"0```#,%0`````````` +M```W`````````$$.$$$.&$0.((,#A@(````D````]!4`````````````-0`` +M``````!!#A!!#AA$#B"#`X8"````)````!P6`````````````&0````````` +M00X0A@)+#AA$#B"#`P```#P```!$%@`````````````V`0```````$(.$$(. +M&$(.($(.*$$.,(8&C`6-!(X#CP)$#CA'#M`!@P<````````D````A!8````` +M````````*`,```````!$#C!*A@2#!4V,`XT"````'````*P6```````````` +M`!L`````````00X0@P(````<````S!8`````````````&P````````!!#A"# +M`@```"0```#L%@````````````!-`0```````$0.,%2,`XT"A@2#!0`````D +M````%!<`````````````9`````````!!#A!!#AB#`X8"1PYP````)````#P7 +M`````````````,H!````````0@X0C`)+#AA!#B"#!(8#`#P```!D%P`````` +M``````#P`@```````$(.$(\"10X80@X@0@XH00XPA@:,!8T$C@-$#CA'#N`$ +M@P<````````L````I!<`````````````B@$```````!"#A!$#AB,`XT"1`X@ +M00XH1PZP`8,%A@0L````U!<`````````````3@$```````!"#A"-`D<.&$$. +M($$.*$<.L`&#!88$C`,D````!!@`````````````A@````````!$#B!)@P2, +M`TB-`@``````'````"P8`````````````#D`````````00X0@P(````<```` +M3!@`````````````-@````````!!#A"#`@```!P```!L&`````````````#= +M`@```````$$.$(,"````%````(P8`````````````)`!````````%````*08 +M`````````````"D`````````'````+P8`````````````!X!````````1`X@ +M2H,#A@(L````W!@`````````````C`@```````!"#A!"#AB,`XT"1`X@00XH +M1`XP@P6&!``D````#!D`````````````SP(```````!!#A"&`D0.&$0.((,# +M````-````#09`````````````-8`````````0@X00@X80@X@C`2-`XX"1`XH +M00XP@P:&!0`````````D````;!D`````````````7P,```````!$#G!*A@2# +M!4V-`HP#````)````)09`````````````.``````````1`Y`2H8$@P5-C0*, +M`P```!P```"\&0````````````!M`````````$$.$(,"````/````-P9```` +M`````````*\!````````0@X00@X8C@./`D4.($(.*(P%C01$#C!!#CA'#M`$ +M@P>&!@```````"0````<&@````````````"%`0```````$0.,$J&!(,%38T" +MC`,````\````1!H`````````````2`\```````!"#A!"#AA"#B!"#BA!#C"& +M!HP%C02.`X\"1`XX1P[``8,'````````)````(0:`````````````&P````` +M````00X000X8@P.&`D<.(````"0```"L&@`````````````-`0```````$$. +M$(8"1`X81P[``8,#```D````U!H`````````````30````````!!#A"&`D8. +M&$0.((,#````+````/P:`````````````+@`````````0@X00@X800X@00XH +M1`XP@P6&!(P#C0(`+````"P;`````````````#X"````````0@X01PX8C`.- +M`D0.((8$1`XH1P[P`8,%+````%P;`````````````!`#````````1`Y`2HT$ +MC`57CP*.`X8&@P<`````````)````(P;``````````````<"````````1P[P +M`56,`X,%4XT"A@0``"P```"T&P````````````"6`````````$(.$(T"10X8 +M00X@00XH1`XP@P6&!(P#`!P```#D&P````````````!4`````````$0.($V, +M`H,#'`````0<`````````````&``````````00X0@P(````<````)!P````` +M````````$`(```````!!#A"#`@```"P```!$'`````````````#X!@`````` +M`$0.8$B,!5^/`HT$C@.&!H,'`````````"P```!T'``````````````/!``` +M`````$0.8$V&!H,'6HX#C02,!8\"`````````"0```"D'`````````````!/ +M`````````$0.($F,`X,$2(T"```````D````S!P`````````````=P`````` +M``!$#B!)A@.#!$B,`@``````)````/0<`````````````'<`````````1`X@ +M288#@P1(C`(``````"0````<'0````````````!/`````````$0.($F,`X,$ +M2(T"```````D````1!T`````````````>0````````!$#B!)A@.#!$B,`@`` +M````)````&P=`````````````'D`````````1`X@288#@P1(C`(``````"P` +M``"4'0````````````"&`````````$(.$(T"10X800X@A@2,`T0.*$0.,(,% +M`"0```#$'0````````````!9`````````$$.$$$.&(,#A@)'#B`````D```` +M[!T`````````````Y0````````!!#A!!#AB#`X8"1PX@````)````!0>```` +M`````````/,`````````00X0A@)$#AA$#B"#`P```!P````\'@`````````` +M``"2`````````$0.($J&`H,#)````%P>`````````````,D`````````1`X@ +M28P"@P1(A@,``````!P```"$'@`````````````M`````````$0.$``````` +M-````*0>`````````````-D`````````0@X00@X80@X@00XH00XP@P:&!8P$ +MC0..`@`````````\````W!X`````````````20$```````!"#A!$#AA"#B!" +M#BB,!8T$C@./`D0.,$$..$0.0(,'A@8`````````)````!P?```````````` +M`+(!````````1`Y02H8#@P1(C`(``````#0```!$'P`````````````:`0`` +M`````$(.$$0.&$(.($$.*$$.,(,&A@6,!(T#C@(`````````'````'P?```` +M`````````#H`````````00X0@P(````T````G!\`````````````,P$````` +M``!"#A!"#AB-`XX"10X@00XH00XP1`ZP`8,&A@6,!````!0```#4'P`````` +M```````%`````````"0```#L'P`````````````E`0```````$0.,$J-`HP# +M388$@P4````D````%"``````````````=P````````!$#B!)C0*#!$B,`P`` +M````)````#P@`````````````(8`````````0@X02`X8A@.,`D0.((,$`"P` +M``!D(`````````````"+`````````$(.$$(.&$$.((8$C`.-`D0.*$<.\`&# +M!20```"4(`````````````")`````````$$.$(8"1@X81`X@@P,````\```` +MO"``````````````\`(```````!"#A!"#AA"#B"-!(X#CP)%#BA!#C!!#CA$ +M#D"#!X8&C`4`````````-````/P@`````````````-(!````````0@X00@X8 +MC0..`D4.($$.*$$.,(,&A@6,!``````````T````-"$`````````````S`$` +M``````!"#A!"#AB-`XX"10X@00XH00XP@P:&!8P$`````````"P```!L(0`` +M``````````!N`P```````$(.$(T"10X800X@00XH1`YP@P6&!(P#`"0```"< +M(0````````````#W`````````$(.$$$.&(8#C`)$#B"#!``L````Q"$````` +M````````I@````````!"#A!"#AA!#B!!#BB#!88$C`.-`DH.\`$D````]"$` +M````````````80(```````!"#A!!#AB&`XP"1`X@@P0`)````!PB```````` +M`````!L$````````1`XP188$4HT"C`.#!0```!0```!$(@`````````````[ +M`````````!P```!<(@````````````!"`````````$$.$(,"````)````'PB +M`````````````%P!````````1`Y`7H\"C@.-!(P%A@:#!R0```"D(@`````` +M```````$`0```````$0.,$J#!8P$38X"C0,````4``````````$``7@0#`<( +MD`$````````4````'```````````````U@`````````<````-``````````` +M````=`````````!$#AA)A@*#`Q0```!4``````````````!K`````````!0` +M``!L```````````````;`````````!0```"$```````````````)```````` +M`!P```"<``````````````!,`````````$$.$(,"````)````+P````````` +M`````'$`````````1`X@18,#2(8"`````````"P```#D```````````````7 +M`0```````$(.$$(.&$$.($$.*(,%A@2,`XT"20XP`"P````4`0`````````` +M```&!````````$(.$$(.&$$.($$.*(,%A@2,`XT"1PXP`!P```!$`0`````` +M``````!2`````````$$.$(,"````)````&0!`````````````-\````````` +M00X01`X81`X@@P.&`@```#P```",`0````````````!N`P```````$(.$(\" +M2@X80@X@C02.`T4.*$$.,$$..$0.4(,'A@:,!0`````````<````S`$````` +M````````-@````````!!#A"#`@```!0``````````0`!>!`,!PB0`0`````` +M`!0````<```````````````6`````````"P````T``````````````#R```` +M`````$(.$(T"20X800X@00XH@P6&!(P#`````!0```!D```````````````] +M`````````!0```!\``````````````!F`````````"P```"4```````````` +M``#I`````````$(.$(P"1`X8A@-$#B"#!$<.,````````!P```#$```````` +M``````!?`````````$$.$(,"1PX@)````.0``````````````-4````````` +M0@X0C`)$#AA!#B"#!(8#`!P````,`0````````````"1`````````$$.$(," +M````/````"P!`````````````!$"````````0@X0CP)%#AA"#B!"#BA!#C"& +M!HP%C02.`T0..$0.4(,'`````````#0```!L`0````````````#8`P`````` +M`$(.$$(.&$(.($$.*(8%C`2-`XX"1`XP1PZP!(,&````)````*0!```````` +M`````&,`````````00X0A@)%#AA$#B"#`P```"0```#,`0````````````"# +M`````````$(.$$$.&$$.((,$A@.,`@`L````]`$`````````````2`(````` +M``!"#A!"#AA!#B"&!(P#C0)$#BA$#C"#!0`<````)`(`````````````G``` +M``````!$#B!*A@*#`R0```!$`@````````````!H`0```````$(.$(P"2`X8 +MA@-%#B"#!``L````;`(`````````````N`<```````!'#L`$;H8&C@.,!8,' +M4X\"C00````````D````G`(`````````````AP(```````!!#A"&`D0.&$0. +M((,#````%``````````!``%X$`P'")`!````````%````!P````````````` +M`%0`````````%````#0```````````````(`````````%````$P````````` +M`````!,`````````%````&0```````````````,`````````)````'P````` +M`````````.(`````````0@X0C`)$#AA!#B"#!(8#`"0```"D```````````` +M```Z`````````$$.$(8"1`X81`X@@P,````<````S```````````````20`` +M``````!!#A"#`@```!P```#L``````````````!5`````````$0.$``````` +M%`````P!``````````````P`````````%````"0!``````````````P````` +M````%``````````!``%X$`P'")`!````````%````!P``````````````$\` +M````````%````#0``````````````$\``````````$=#0SH@*$=.52D@-"XR +M+C(@,C`P-S`X,S$@<')E<F5L96%S92!;1G)E94)31%T``$=#0SH@*$=.52D@ +M-"XR+C(@,C`P-S`X,S$@<')E<F5L96%S92!;1G)E94)31%T``$=#0SH@*$=. +M52D@-"XR+C(@,C`P-S`X,S$@<')E<F5L96%S92!;1G)E94)31%T``$=#0SH@ +M*$=.52D@-"XR+C(@,C`P-S`X,S$@<')E<F5L96%S92!;1G)E94)31%T``$=# +M0SH@*$=.52D@-"XR+C(@,C`P-S`X,S$@<')E<F5L96%S92!;1G)E94)31%T` +M`$=#0SH@*$=.52D@-"XR+C(@,C`P-S`X,S$@<')E<F5L96%S92!;1G)E94)3 +M1%T``$=#0SH@*$=.52D@-"XR+C(@,C`P-S`X,S$@<')E<F5L96%S92!;1G)E +M94)31%T``$=#0SH@*$=.52D@-"XR+C(@,C`P-S`X,S$@<')E<F5L96%S92!; +M1G)E94)31%T``$=#0SH@*$=.52D@-"XR+C(@,C`P-S`X,S$@<')E<F5L96%S +M92!;1G)E94)31%T``$=#0SH@*$=.52D@-"XR+C(@,C`P-S`X,S$@<')E<F5L +M96%S92!;1G)E94)31%T``$=#0SH@*$=.52D@-"XR+C(@,C`P-S`X,S$@<')E +M<F5L96%S92!;1G)E94)31%T``$=#0SH@*$=.52D@-"XR+C(@,C`P-S`X,S$@ +M<')E<F5L96%S92!;1G)E94)31%T``$=#0SH@*$=.52D@-"XR+C(@,C`P-S`X +M,S$@<')E<F5L96%S92!;1G)E94)31%T``$=#0SH@*$=.52D@-"XR+C(@,C`P +M-S`X,S$@<')E<F5L96%S92!;1G)E94)31%T``$=#0SH@*$=.52D@-"XR+C(@ +M,C`P-S`X,S$@<')E<F5L96%S92!;1G)E94)31%T``$=#0SH@*$=.52D@-"XR +M+C(@,C`P-S`X,S$@<')E<F5L96%S92!;1G)E94)31%T``$=#0SH@*$=.52D@ +M-"XR+C(@,C`P-S`X,S$@<')E<F5L96%S92!;1G)E94)31%T``$=#0SH@*$=. +M52D@-"XR+C(@,C`P-S`X,S$@<')E<F5L96%S92!;1G)E94)31%T``$=#0SH@ +M*$=.52D@-"XR+C(@,C`P-S`X,S$@<')E<F5L96%S92!;1G)E94)31%T``$=# +M0SH@*$=.52D@-"XR+C(@,C`P-S`X,S$@<')E<F5L96%S92!;1G)E94)31%T` +M`$=#0SH@*$=.52D@-"XR+C(@,C`P-S`X,S$@<')E<F5L96%S92!;1G)E94)3 +M1%T``$=#0SH@*$=.52D@-"XR+C(@,C`P-S`X,S$@<')E<F5L96%S92!;1G)E +M94)31%T``$=#0SH@*$=.52D@-"XR+C(@,C`P-S`X,S$@<')E<F5L96%S92!; +M1G)E94)31%T``$=#0SH@*$=.52D@-"XR+C(@,C`P-S`X,S$@<')E<F5L96%S +M92!;1G)E94)31%T``$=#0SH@*$=.52D@-"XR+C(@,C`P-S`X,S$@<')E<F5L +M96%S92!;1G)E94)31%T``$=#0SH@*$=.52D@-"XR+C(@,C`P-S`X,S$@<')E +M<F5L96%S92!;1G)E94)31%T``$=#0SH@*$=.52D@-"XR+C(@,C`P-S`X,S$@ +M<')E<F5L96%S92!;1G)E94)31%T``$=#0SH@*$=.52D@-"XR+C(@,C`P-S`X +M,S$@<')E<F5L96%S92!;1G)E94)31%T``$=#0SH@*$=.52D@-"XR+C(@,C`P +M-S`X,S$@<')E<F5L96%S92!;1G)E94)31%T``$=#0SH@*$=.52D@-"XR+C(@ +M,C`P-S`X,S$@<')E<F5L96%S92!;1G)E94)31%T``$=#0SH@*$=.52D@-"XR +M+C(@,C`P-S`X,S$@<')E<F5L96%S92!;1G)E94)31%T``$=#0SH@*$=.52D@ +M-"XR+C(@,C`P-S`X,S$@<')E<F5L96%S92!;1G)E94)31%T``$=#0SH@*$=. +M52D@-"XR+C(@,C`P-S`X,S$@<')E<F5L96%S92!;1G)E94)31%T``$=#0SH@ +M*$=.52D@-"XR+C(@,C`P-S`X,S$@<')E<F5L96%S92!;1G)E94)31%T``$=# +M0SH@*$=.52D@-"XR+C(@,C`P-S`X,S$@<')E<F5L96%S92!;1G)E94)31%T` +M`$=#0SH@*$=.52D@-"XR+C(@,C`P-S`X,S$@<')E<F5L96%S92!;1G)E94)3 +M1%T``$=#0SH@*$=.52D@-"XR+C(@,C`P-S`X,S$@<')E<F5L96%S92!;1G)E +M94)31%T``$=#0SH@*$=.52D@-"XR+C(@,C`P-S`X,S$@<')E<F5L96%S92!; +M1G)E94)31%T``$=#0SH@*$=.52D@-"XR+C(@,C`P-S`X,S$@<')E<F5L96%S +M92!;1G)E94)31%T``"YS>6UT86(`+G-T<G1A8@`N<VAS=')T86(`+G)E;&$N +M=&5X=``N<F5L82YR;V1A=&$`+G)O9&%T82YS='(Q+C@`+G)O9&%T82YS='(Q +M+C$`+G)E;&$N9&%T80`N<F5L82YE:%]F<F%M90`N8G-S`"YC;VUM96YT```` +M```````````````````````````````````````````````````````````` +M````````````````````````````````(`````$````&```````````````` +M````0``````````?&`4`````````````````$````````````````````!L` +M```$`````````````````````````-B+!@``````N,0!```````.`````0`` +M``@`````````&``````````K`````0````(```````````````````!@&`4` +M`````'`H```````````````````@````````````````````)@````0````` +M````````````````````D%`(````````70````````X````#````"``````` +M```8`````````#,````!````,@```````````````````-!`!0``````O`P` +M``````````````````@``````````0````````!"`````0```#(````````` +M``````````",304``````"H$```````````````````!``````````$````` +M````5@````$````#````````````````````P%$%``````#0#0`````````` +M````````(````````````````````%$````$```````````````````````` +M`)"M"```````6!0````````.````!P````@`````````&`````````!A```` +M`0````(```````````````````"07P4``````%"<```````````````````( +M````````````````````7`````0`````````````````````````Z,$(```` +M``!(8P````````X````)````"``````````8`````````&L````(`````P`` +M`````````````````.#[!0``````8`4``````````````````"`````````` +M``````````!P`````0````````````````````````#@^P4``````%`'```` +M```````````````!````````````````````$0````,````````````````` +M````````,`,&``````!Y`````````````````````0`````````````````` +M``$````"`````````````````````````+`'!@``````0$0````````/```` +M=P(```@`````````&``````````)`````P````````````````````````#P +M2P8``````.<_```````````````````!```````````````````````````` +M``````````````````````````````,``0`````````````````````````` +M``,``@````````````````````````````,``P`````````````````````` +M``````,`!`````````````````````````````,`!0`````````````````` +M``````````,`!@````````````````````````````,`!P`````````````` +M``````````````,`"`````````````````````````````,`"0`````````` +M``````````````````,`"@````````````````````````````,`"P`````` +M``````````````````````,`#`````````````````````````````,`#0`` +M``````````````````````````,`#@````````````````````````````,` +M#P```````````````````````0````(``0!@_P```````*<`````````%0`` +M``(``0"P`@```````#8`````````(P````(``0#P!`$``````)\"```````` +M-@````(``0"0$0```````'$`````````1`````(``0!@&`````````,&```` +M````9`````(``0`00`$``````.\"````````>P````(``0"0]P````````<` +M````````B@````(``0``\P```````/@`````````HP````(``0``>@$````` +M`$L`````````KP````(``0!`A`$``````"<`````````RP````(``0!`_@`` +M`````!L!````````VP````(``0!``````````&X"````````]@````(``0"0 +M=P````````8!````````$`$```(``0"P"````````"@`````````)@$```(` +M`0!0>@$``````%(`````````-P$```(``0"PGP```````&\$````````5`$` +M``(``0`PYP```````(``````````;0$```(``0#@!P```````(X````````` +M@0$```(``0#@"````````"$`````````H0$```(``0#0;0$``````#\````` +M````L0$```(``0"0'@```````%4+````````S`$```(``0#`D@$``````'<` +M````````V0$```(``0`0!0```````#``````````]P$```(``0#P@P$````` +M`!T`````````$@(```(``0#0>@$``````!(`````````*P(```(``0!`J0`` +M`````"H`````````1@(```(``0`P`P```````$8`````````5@(```(``0`` +MCP$```````D#````````:`(```(``0#0J````````#$`````````@P(```(` +M`0`@_````````%\`````````DP(```(``0"0T@```````(8`````````KP(` +M``(``0#0I````````!P!````````S`(```(``0"@D0```````&<!```````` +M[0(```(``0"0^````````),``````````P,```(``0`0D0```````(L````` +M````'@,```(``0!`F@````````D!````````1@,```(``0#PA0$``````)H` +M````````9@,```(``0"@T````````.H!````````>0,```(``0!`E@`````` +M``\!````````FP,```(``0#PA@$``````!<`````````O@,```(``0!PE``` +M`````$4!````````W@,```(``0!P?@$``````"\!````````^@,```(``0"@ +MSP```````/(`````````$`0```(``0"0PP```````*,#````````*`0```$` +M`P#@$@```````!L`````````,P0```(``0`0``$``````"H!````````0@0` +M``(``0!P<P````````X`````````7@0```(``0#`10$``````.H#```````` +M=00```(``0`PL````````"P`````````B00```(``0#`<P$``````%(````` +M````F@0```(``0"P1@```````.H`````````O`0```(``0"P>@$``````!@` +M````````U`0```(``0"`XP```````"D`````````]`0```(``0"PWP`````` +M`!H`````````#04```(``0"@=`$``````/4$````````'04```(``0!@=`$` +M`````#\`````````+P4```(``0`04P$``````*\`````````1`4```(``0#0 +MW0```````#0!````````704```(``0"`A0```````'<"````````?04```(` +M`0!@?0$``````"``````````B@4```(``0#@<@```````($`````````J`4` +M``(``0#0`P````````P`````````N04```(``0#@!````````"<````````` +MS04```(``0`@TP```````(4!````````W@4```(``0!@:@$``````$L````` +M````[04```(``0`P"0```````&,``````````08```(``0``B````````!$% +M````````%@8```(``0#@C0```````%P`````````*P8```(``0#@"@`````` +M`%`!````````/P8```(``0!`R````````.H`````````8P8```(``0`````` +M`````"P`````````@08```(``0"P$@```````%\`````````F`8```(``0`0 +MV@```````(D"````````J@8```(``0`0XP```````&X`````````N08```(` +M`0!`X@```````,L`````````U`8```(``0!0<@$``````%(`````````Y`8` +M``$`"P!@`````````(``````````Z@8```(``0`@I````````%8````````` +M!P<```(``0#P>0```````(P+````````(@<```(``0`0BP$``````%4!```` +M````4`<```(``0#`!0```````-P!````````;0<```(``0#`Q`$``````)H` +M````````?0<```(``0`@=`$``````#<`````````D`<```(``0"@J``````` +M`"H`````````JP<```(``0!@+P```````.\#````````RP<```(``0#`N`$` +M`````*$#````````Y@<```(``0"`G@```````"P!````````"P@```(``0"@ +M"0```````%(`````````'@@```(``0#@`P```````"(`````````,0@```(` +M`0"0J0```````"H`````````1@@```(``0!`K````````$D`````````5P@` +M``(``0`0O0```````*D`````````>0@```(``0"PYP```````!4)```````` +MB@@```(``0``+````````%T#````````H@@```(``0!@;````````'$&```` +M````P`@```(``0!PK@```````"H`````````W`@```(``0!0,P```````,,) +M````````_`@```(``0#PL0```````#X`````````$0D```(``0#`3@$````` +M``$"````````)@D```(``0#`7````````%\#````````/0D```(``0!`C@`` +M`````%\`````````6@D```(``0`0`@$``````/$`````````=0D```(``0!0 +MSP```````"``````````C`D```(``0"PL0```````#X`````````I`D```(` +M`0"0K0```````"X`````````O0D```(``0!0;0$``````#<`````````S0D` +M``(``0"@!P```````#X`````````V0D```(``0!@WP```````"8````````` +M\PD```(``0!PN0```````*@`````````#@H```(``0#0RP```````'T!```` +M````)0H```(``0"0A@$``````%P`````````2`H```(``0!`?0$``````!X` +M````````7`H```(``0"`!0```````#,`````````<`H```(``0!PJ0`````` +M`"``````````B@H```(``0#0WP```````",`````````H@H```(``0`0J0`` +M`````"H`````````NPH```(``0!`%P```````!@!````````V@H```(``0#@ +M#@```````$H!````````YPH```(``0`0$P```````!@"````````!`L```(` +M`0"`_````````.X`````````&@L```(``0#0@P$``````!P`````````-PL` +M``(``0!``0$``````,,`````````3`L```(``0#@M@```````%0````````` +M:`L```(``0`0SP```````#H`````````@`L```(``0#`:P$``````(4!```` +M````D0L```(``0"`N````````/``````````K0L```(``0"PA0$``````$`` +M````````TPL```(``0`0$@```````!D`````````[@L```(``0#PMP`````` +M`(8`````````$PP```(``0`PL@```````$D#````````*`P```(``0#`O0`` +M``````T!````````20P```(``0!`K@```````"8`````````90P```(``0!@ +M#@$``````%D'````````>PP```(``0"@30$``````!@!````````D@P```(` +M`0#@F0$``````)D`````````I`P```(``0#`K0```````"8`````````N@P` +M``(``0!0FP```````(,!````````T0P```(``0!0/0$``````+P"```````` +MXPP```(``0#P*0```````!`"````````_PP```(``0`PJ````````"H````` +M````#PT```(``0!`]@```````&(`````````+0T```(``0!`6P```````+L` +M````````2@T```(``0"@C@```````-X`````````:@T```(``0!P@@$````` +M`#L!````````>PT```(``0"0L````````"<`````````E`T```(``0#@(@$` +M`````*@`````````J`T```(``0`0WP```````$L`````````OPT```(``0!P +M#````````&T"````````T0T```(``0`P$````````$T`````````Z`T```(` +M`0`0IP$``````-P$`````````PX```(``0#`E0```````'(`````````%PX` +M``(``0!PS0```````"H!````````*@X```(``0`0!````````$<````````` +M.0X```(``0`@/0```````(L)````````40X```(``0"0C0```````$(````` +M````>PX```(``0!PA`$``````#,!````````G@X```(``0"0@`$``````"(! +M````````N0X```(``0"@NP```````&T!````````W`X```(``0!P!``````` +M`%P`````````\`X```(``0`@C0```````&\`````````%@\```(``0!@JP`` +M`````-$`````````,`\```(``0``*@$``````$,"````````3P\```(``0`0 +M;@$``````(<`````````80\```(``0"P20$``````.P#````````=@\```(` +M`0!08`$``````",)````````DP\```(``0``0P$``````+\"````````K`\` +M``(``0!@Q0$``````"8)````````NP\```(``0!P+`$``````*4)```````` +MV`\```(``0"@W````````"0!````````\`\```(``0!@J````````#0````` +M````!!````(``0!0X````````%T`````````(1````(``0``X````````$$` +M````````-1````(``0`0IP```````(<`````````1!````(``0"0K``````` +M`/H`````````5A````(``0"@?P$``````.,`````````<1````(``0!PSP`` +M`````"8`````````A1````(``0"0WP```````!4`````````FQ````(``0`0 +M$0```````'4`````````O1````(``0``]````````,`!````````TA````(` +M`0#P>@$``````$X"````````Z!````(``0``7````````+X`````````!1$` +M``(``0"`?0$``````.,`````````'!$```(``0"0;0$``````#D````````` +M+1$```(``0!P"````````#D`````````01$```(``0`@P0````````0!```` +M````:1$```(``0"@L@$``````-(`````````?A$```(``0"`I````````$H` +M````````GQ$```$`"P!``````````!P`````````L!$```(``0`@.@$````` +M`"<#````````S!$```(``0#P`@```````#8`````````WQ$```(``0"@IP`` +M`````"4`````````]Q$```(``0#PF````````$\!````````'!(```(``0`P +M$@```````$4`````````/!(```(``0#`@P$```````8`````````5!(```(` +M`0`@]P```````&D`````````8!(```(``0"0(P$``````&D&````````>1(` +M``(``0!@\@```````)T`````````CQ(```(``0`0DP```````%P!```````` +ML!(```(``0!P_0```````,X`````````Q1(```(``0#`4P$``````(,,```` +M````X1(```(``0!0E0$``````'D#````````^!(```(``0!0+`$``````!0` +M````````$A,```(``0!`^@```````-$!````````+!,```(``0"``P`````` +M`$8`````````0!,```(``0"09````````,D#````````5Q,```(``0"@]P`` +M`````#,`````````91,```(``0#`J0```````"H`````````?1,```(``0`P +M^0````````$!````````D1,```(``0#PI0```````!T!````````K!,```(` +M`0"PX````````)`!````````PQ,```(``0!`MP```````*\`````````WQ,` +M``(``0"0!P$``````-T"````````_1,```(``0#0O@$``````.D%```````` +M%!0```(``0"@>0$``````%,`````````(10```(``0#0:@$``````$(````` +M````+A0```(``0"`CP```````#,!````````4A0```(``0!`Y````````$<! +M````````;10```(``0"0E`$``````+0`````````A10```(``0!@L``````` +M`",`````````H10```(``0!`^````````!\`````````L!0```(``0!@!``` +M`````!``````````PA0```(``0#P8````````)\#````````W10```(``0"` +M$@```````"$`````````\Q0```(``0`0A`$``````"L`````````#A4```(` +M`0"0Y0```````!\!````````(A4```(``0`0`P$``````.$`````````-A4` +M``(``0#@G````````/\`````````4Q4```(``0!@F0$``````'0````````` +M814```(``0!PC`$``````*<!````````>!4```(``0`0"0```````"`````` +M````BA4```(``0"@S@```````&<`````````G!4```(``0"@F@$``````%`` +M````````K14```(``0``P````````!,!````````UQ4```(``0!@"@`````` +M`'D`````````]!4```(``0#`]0```````'\`````````$18```(``0!@40`` +M`````-()````````*!8```(``0`0AP$``````/$#````````/A8```(``0`@ +MV````````.$!````````3A8```(``0!`!0```````#$`````````918```(` +M`0`0N`$``````*,`````````@18```(``0#0!`````````T`````````F!8` +M``$`!P!``````````"@`````````I18```(``0!P'@```````!$````````` +MPQ8```(``0``!`$``````.$`````````UQ8```(``0"P<@$``````%(````` +M````YQ8```$`"P````````````0`````````^18```(``0"PY@```````(`` +M````````(A<```(``0"`$````````((`````````01<```(``0!0S0`````` +M`!<`````````41<```(``0#@IP```````$L`````````:A<```(``0"@>``` +M`````$,!````````@Q<```(``0!@:````````/@#````````FQ<```(``0"P +MU````````&<#````````N1<```(``0`@"P$``````#X#````````TQ<```(` +M`0`P%0```````.T`````````Z1<```(``0!@J@```````/8``````````!@` +M``(``0"@1P```````,`)````````%A@```(``0``"@```````%(````````` +M*A@```(``0#PJ0```````&$`````````/1@```(``0"`LP$``````(P````` +M````51@```(``0"PXP```````(4`````````<!@```(``0#`D````````$0` +M````````EQ@```(``0``R@```````+H`````````OA@```(``0#PK0`````` +M`$8`````````V1@```(``0#0O@```````"H!````````_!@```(``0"`<P`` +M``````L$````````'1D```(``0#@G0```````*``````````/!D```(``0!P +M"@$``````*<`````````4!D```(``0#`@0$``````*L`````````:QD```(` +M`0#04`$``````#L"````````AQD```(``0`P#````````#\`````````F1D` +M``(``0"P&@$``````"H(````````M!D```(``0#`L````````.8````````` +MQAD```(``0#`%@$``````.T#````````V1D```(``0!0EP```````)\!```` +M`````AH```(``0!`QP```````/P`````````*1H```(``0`@:P$``````)4` +M````````0QH```(``0`0G`$``````%P`````````6QH```(``0"P@P$````` +M``4`````````<QH```(``0"P]@```````&(`````````D1H```(``0#`R@`` +M``````P!````````IAH```(``0#0IP````````(`````````NQH```(``0`P +MR0```````,D`````````W1H```(``0`PP@```````%8!`````````0````(` +M`0`P[P(``````*<`````````-@````(``0`@`@(``````'$``````````!L` +M``(``0``]0$``````%P`````````>P````(``0!@YP(```````<````````` +M%AL```(``0`0F0(``````"H`````````,QL```(``0!@LP(``````*,#```` +M````RP````(``0`0[@(``````!L!````````31L```(``0#`7`(``````#$& +M````````;1L```(``0"0A0(``````'(`````````@QL```(``0`04`,````` +M`",)````````HAL```(``0"`U@(``````(``````````S1L```(``0"0H`(` +M`````.8`````````)@$```(``0#`:@,``````%(`````````X1L```(``0#P +MDP(``````%8``````````!P```(``0`P<0,``````#L!````````$QP```(` +M`0#`BP,``````%P`````````+1P```(``0"00P,``````',,````````2QP` +M``(``0#`6`(``````/@#````````91P```(``0"`T`(``````)`!```````` +MH0$```(``0"`70,``````#\`````````S`$```(``0"`@0,``````'<````` +M````?AP```(``0`0A`,``````'D#````````EQP```(``0!`F0(``````"`` +M````````LQP```(``0!P/0,``````!@!````````S!P```(``0`0]`$````` +M`$8`````````XAP```(``0"08P(```````X``````````!T```(``0"@]0$` +M`````#``````````(!T```(``0`0G`(``````$D`````````,QT```(``0#@ +M0@,``````*\`````````2AT```(``0!`G@(``````"H`````````:!T```(` +M`0!P^0$``````"$`````````BAT```(``0`PF`(``````#0`````````H!T` +M``(``0#`?0,```````D#````````@P(```(``0#PZP(``````%\````````` +MM!T```(``0#0=0,``````/$#````````S!T```(``0#`F0(``````&$````` +M````X1T```(``0``_0$``````&T"````````S`(```(``0!P@0(``````&<! +M````````[0(```(``0!@Z`(``````),`````````]1T```(``0!`^@(````` +M`*<``````````P,```(``0#@@`(``````(L`````````"QX```(``0!`:P,` +M`````!(`````````'@,```(``0`0B@(```````D!````````)AX```(``0`P +M-P(``````.H`````````2AX```(``0"0^@$``````%(`````````8!X```(` +M`0"0/@,```````$"````````*`0```$``P`@)@```````"``````````,P0` +M``(``0#@[P(``````"H!````````=QX```(``0!POP(``````/(````````` +MCQX```(``0"`Q`(``````&<#````````KQX```(``0`0A@(```````\!```` +M````TQX```(``0"@0`,``````#L"````````\1X```(``0`0U`(``````$<! +M````````B00```(``0#`8P,``````%(`````````#A\```(``0#`E0(````` +M`!T!````````*Q\```(``0#@"`(```````,&````````31\```(``0#`IP(` +M`````(8`````````?04```(``0!P;`,``````"(`````````=!\```(``0#@ +MO@(``````#H`````````CA\```(``0`PH`(``````",`````````K!\```(` +M`0"0@`(``````$0`````````U1\```(``0"@`@(``````!D`````````\A\` +M``(``0!`^0$``````"@`````````U`8```(``0!08@,``````%(````````` +MY`8```$`"P!@`0```````(``````````"B````(``0"0N@(```````P!```` +M````(2````(``0"P?0(``````%P`````````."````(``0"0!@,``````.T# +M````````32````(``0`0]@$``````#,`````````;0<```(``0`0M`,````` +M`)H`````````8R````(``0`P<P,``````#,!````````B"````(``0#`B`(` +M`````$\!````````KR````(``0``L@(``````%8!````````U"````(``0!@ +M3`(``````+X`````````\R````(``0`PFP(``````-$`````````#R$```(` +M`0!``P(``````%\`````````*"$```(``0#`^0$``````&,`````````/B$` +M``(``0#PP@(``````(4!````````42$```(``0"0\`$``````"P````````` +M<2$```(``0"P9P(```````8!````````O0D```(``0`070,``````#<````` +M````C2$```(``0#P?`(``````&\`````````M2$```(``0#```(``````$T` +M````````SB$```(``0"P=`,``````)H`````````V0D```(``0`PSP(````` +M`"8`````````\"$```(``0#@'P(``````.\#````````$B(```(``0`P;0,` +M`````"\!````````,"(```(``0#0(P(``````,,)````````4B(```(``0#0 +MKP(``````!,!````````?B(```(``0!0C@(``````"P!````````I2(```(` +M`0#``@(``````$4`````````QR(```(``0#`IP,``````)H#````````2`H` +M``(``0!0;`,``````"``````````Y"(```(``0!P&@(``````!`"```````` +M`B,```(``0`0`0(``````((`````````H@H```(``0#@F`(``````"H````` +M````(R,```(``0!@;@,``````.,`````````0",```(``0#0X@(``````/@` +M````````6R,```(``0#P^@(``````#X#````````V@H```(``0!P_P$````` +M`$H!````````=R,```(``0"@+0(``````(L)````````D2,```(``0!@SP(` +M`````!4`````````J2,```(``0#0<@,``````"L`````````QB,```(``0!0 +ME`(``````$H`````````Z2,```(``0`@6@,``````$L`````````^B,```(` +M`0#`H0(``````#X`````````$20```(``0`0:@,``````%,`````````@`L` +M``(``0"`6P,``````(4!````````("0```(``0`@T`(``````%T````````` +M/R0```(``0#0N0(``````+H`````````:"0```(``0#@6@,``````)4````` +M````A"0```(``0`@K@,``````.D%````````G20```(``0#@R0(``````(\" +M````````L20```(``0!PJP(``````&T!````````UB0```(``0"@;`,````` +M`((`````````[R0```(``0"`Y@(``````&(`````````#R4```(``0!@F0(` +M`````"H`````````)B4```(``0"@^0$``````"``````````.B4```(``0!0 +M[`(``````.X`````````4B4```(``0!@9`,``````#\`````````9B4```(` +M`0!@]`$```````P`````````>24```(``0"`.0,``````.P#````````D"4` +M``(``0!`\P$``````#8`````````D@P```(``0"@B`,``````)D````````` +MN@P```(``0`@BP(``````(,!````````H"4```(``0#0&0,``````$,"```` +M````T0P```(``0`@+0,``````+("````````P24```(``0`@AP(``````)\! +M````````["4```(``0``H`(``````"P``````````B8```(``0!P]0$````` +M`"<`````````&"8```(``0`0\0(``````,,`````````+R8```(``0#`:`(` +M`````$,!````````2B8```(``0#`]`(``````)\"````````7R8```(``0!P +MP`(``````.H!````````="8```(``0#PL`(```````0!````````GB8```(` +M`0"@NP(``````'T!````````MR8```(``0"0G0(``````"8`````````SR8` +M``(``0`0?@(``````%\`````````40X```(``0!@?0(``````$(````````` +M[B8```(``0#@00(``````+0)````````!R<```(``0`P_@(``````%D'```` +M````'R<```(``0"`UP(``````!4)````````,B<```(``0"0<@,``````!P` +M````````42<```(``0``^0$``````#D`````````9R<```(``0!`'`,````` +M`*4)````````AB<```(``0"@K@(``````"H!````````JR<```(``0!@]P(` +M`````-T"````````3P\```(``0#`70,``````-4`````````RR<```(``0!@ +MG`(``````/H`````````WR<```(``0#@E@(``````(<`````````K`\```(` +M`0"PM`,``````"8)````````\"<```(``0"`"@,``````"H(````````#2@` +M``(``0`0T@(``````,L`````````*B@```(``0#P]`$``````!`````````` +M/B@```(``0"@S0(``````#0!````````V`\```(``0!PS`(``````"0!```` +M````62@```(``0"P!0(``````.T`````````<2@```(``0!@H`(``````"<` +M````````C"@```(``0!P^`$``````(X`````````HB@```(``0!P]`$````` +M`"(`````````MR@```(``0``<P,``````"<`````````U2@```(``0!0=0,` +M`````%P`````````^B@```(``0!@:P,``````.@`````````'!$```(``0!0 +M70,``````"<`````````$BD```(``0#0SP(``````$$`````````*"D```(` +M`0!P?@(``````-X`````````2BD```(``0`0:@(``````)`+````````9RD` +M``(``0!@$P,``````&D&````````@BD```(``0!PO@(``````&<````````` +MEBD```(``0#P#@(``````!$`````````:1$```(``0"@H0,``````-(````` +M````MBD```(``0"@8P(```````L$````````V2D```(``0"0F0(``````"H` +M````````\RD```(``0"`\P$``````#8`````````""H```(``0#0>0,````` +M`%4!````````."H```(``0`@OP(``````"``````````42H```(``0"@EP(` +M``````(`````````5!(```(``0#PY@(``````&D`````````:"H```(``0`@ +M.`(``````,`)````````CQ(```(``0#@@@(``````%P!````````@"H```(` +M`0!@U0(``````!\!````````EBH```(``0#0XP(``````,`!````````K2H` +M``(``0"@`P(```````,"````````L!(```(``0!`[0(``````,X````````` +MS"H```(``0``8P(``````($`````````^!(```(``0`@'`,``````!0````` +M````["H```(``0`PX@(``````)T`````````!"L```(``0"@=0(``````'<" +M````````)BL```(``0"0Y0(``````'\`````````12L```(``0#0,@,````` +M`+\"````````8"L```(``0"P=0,``````!<`````````5Q,```(``0!PYP(` +M`````#,`````````A2L```(``0"@`0(``````'4`````````J2L```(``0#P +M^@$``````'D`````````PQ,```(``0`0IP(``````*\`````````R"L```(` +M`0"PC0(``````*``````````Z2L```(``0`0Y@(``````&(`````````"2P` +M``(``0!P^P$``````%`!````````'RP```(``0"`H0(``````#X````````` +M.2P```(``0`0N`(``````.H`````````7RP```(``0"@]`$``````$<````` +M````(10```(``0"06@,``````$(`````````<"P```(``0!@G0(``````"X` +M````````BRP```(``0!P<@,```````4`````````I2P```(``0#@+P,````` +M`.\"````````OBP```(``0#P5`(``````,D#````````;10```(``0!0@P,` +M`````+0`````````URP```(``0!P:@,``````$L`````````Y2P```(``0"` +M<`,``````*L`````````H10```(``0`0Z`(``````!\``````````BT```(` +M`0!@]0$```````T`````````&RT```(``0!0;P,``````"(!````````."T` +M``(``0!PEP(``````"4`````````4BT```(``0#`G0(``````$8````````` +M;RT```(``0`0Z@(``````-$!````````BRT```(``0`P^@$``````%(````` +M````H"T```(``0`PF@(``````/8`````````W10```(``0`0`P(``````"$` +M````````N2T```(``0"@9`,``````&4%````````RRT```(``0"`TP(````` +M`(4`````````Z"T```(``0"PI@(``````%0`````````!BX```(``0"0-0,` +M`````.H#````````'RX```(``0!`A`(``````$4!````````(A4```(``0#@ +M\@(``````.$`````````-A4```(``0"PC`(``````/\`````````4Q4```(` +M`0`@B`,``````'0`````````02X```(``0``H@(``````$D#````````6"X` +M``(``0!`J0(``````*@`````````=2X```(``0#@\0(``````/$````````` +MDBX```(``0"@2P(``````+L`````````L2X```(``0`0#P(``````%4+```` +M````G!4```(``0!@B0,``````%``````````SBX```(``0``F`(``````"H` +M````````X"X```(``0#0\`$``````&X"````````_2X```(``0!@P@(````` +M`(8`````````&R\```(``0!0TP(``````"D`````````/2\```(``0"PEP(` +M`````$L`````````6"\```(``0`@9`,``````#<`````````;2\```(``0"@ +MSP(``````",`````````/A8```(``0#PQP(``````.$!````````AR\```(` +M`0#P*0,``````"<#````````918```(``0`0IP,``````*,`````````I2\` +M``(``0#@T@(``````&X`````````MB\```(``0``UP(``````(`````````` +MT2\```(``0"`SP(``````!H`````````["\```(``0#`_`$``````#\````` +M````PQ8```(``0#0\P(``````.$``````````#````(``0`P^`$``````#X` +M````````#C````(``0!P=`,``````$``````````UQ8```(``0"P8@,````` +M`%(`````````YQ8```$`"P```0````````0`````````01<```(``0`@O0(` +M`````!<`````````-C````(``0#0]0$``````#$`````````3S````(``0!0 +M40(``````)\#````````;#````(``0!0?P(``````#,!````````DC````(` +M`0"@E`(``````!P!````````L3````(``0!0]@$``````-P!````````T#`` +M``(``0#@K`(``````*D`````````]#````(``0#@S@(``````$L````````` +M#3$```(``0`@:P,``````!@`````````)S$```(``0`0MP(``````/P````` +M````4#$```(``0`@30(``````%\#````````:3$```(``0`@>`(``````,$$ +M````````@#$```$`"P!``0```````!P`````````DS$```(``0!0J`(````` +M`/``````````L3$```(``0"`<@,```````8`````````/1@```(``0"`H@,` +M`````(P`````````RS$```(``0!PF`(``````"H`````````Z#$```(``0"` +MCP(``````&\$````````!S(```(``0"`'`(``````%T#````````(3(```(` +M`0!`O0(``````"H!````````-C(```(``0``Z0(```````$!````````3#(` +M``(``0"0K0(```````T!````````;S(```(``0"P<@,``````!T````````` +MC#(```(``0!`OP(``````"8`````````HC(```(``0"P$@,``````*@````` +M````N#(```(``0`0E@,``````-P$````````U3(```(``0``N0(``````,D` +M````````^3(```(``0#`\P$``````$8`````````"S,```(``0#`!P(````` +M`!@!````````+#,```(``0`P>P,``````*<!````````13,```(``0"@F`(` +M`````#$`````````8C,```(``0`0G@(``````"8`````````@#,```(``0"` +M%P4``````$\`````````CC,```(``0!P^P,``````*X`````````GC,```(` +M`0#@"00``````+<*````````N#,```(``0"0"@4``````+@'````````R#,` +M``(``0`P'@0``````)8`````````V#,```$`"P`0`@````````@````````` +MZ#,```(``0!P^0,```````P`````````_3,```(``0#@%P0``````&4!```` +M````$C0```(``0`P!04``````&,`````````*C0```$`!P"!`P````````$` +M````````.C0```(``0!0+P0``````(4`````````2C0```(``0"P_00````` +M`-4`````````6S0```(``0"0_@0``````)$`````````;S0```(``0`P!@4` +M`````$@"````````A30```(``0#P)P0``````-H`````````FS0```$`"P`8 +M`@````````0`````````J30```(``0!0_00``````%\`````````P30```(` +M`0"@U@0``````(8`````````T#0```(``0#03`0``````$$`````````XC0` +M``(``0"`\`,``````%H!````````]30```(``0#0*`0```````,!```````` +M#34```(``0#@X0,``````$L`````````(34```(``0!0&00``````(4!```` +M````-34```(``0"0%@0``````$H`````````0S4```(``0!`^`,``````&4` +M````````6#4```(``0``_@,``````&``````````:34```(``0``^`,````` +M`#$`````````@#4```$`"P`@`@````````$`````````E#4```(``0!P&P0` +M`````&8`````````KS4```(``0"@%`0``````.\!````````PS4```(``0#@ +M&@0``````(\`````````TS4```(``0`PXP,``````"4`````````W#4```(` +M`0!@X`,``````'<`````````^#4```(``0"`"`4``````)P`````````#C8` +M``(``0`@!P0``````%H"````````(38```(``0"0^@0``````!8````````` +M*C8```(``0#0%P4``````$\`````````.#8```(``0"0!00``````(\!```` +M````5#8```(``0#`2P0``````/,`````````7S8```(``0`P4`0```````@! +M````````=38```(``0`@B@0``````!X!````````AS8```(``0`03P0````` +M`!D!````````H#8```(``0"@[P0``````$P`````````L38```(``0"0(@0` +M`````%4`````````O#8```(``0"0\00```````8$````````S38```(``0#0 +M^0,``````'<`````````XC8```(``0!@_`0``````.D`````````\38```(` +M`0!@Z`,``````/D`````````!#<``!(``0#PWP,``````!,`````````*S<` +M`!$`"P`D`@````````$`````````0#<``!`````````````````````````` +M5S<``!(``0!P%P4```````P`````````;C<``!`````````````````````` +M````@3<``!(``0#@X@,``````"@`````````DS<``!(``0!P%@4``````#H` +M````````HC<``!(``0#@\0,``````,<!````````N3<``!(``0"@Y@,````` +M`'<`````````T#<``!``````````````````````````Z#<``!(``0``%P4` +M`````%4``````````3@``!(``0!0X`,```````P`````````&#@``!(``0#@ +M[P,``````)@`````````+S@``!``````````````````````````2C@``!(` +M`0"0Y`,``````%4`````````63@``!``````````````````````````8#@` +M`!(``0#PY`,``````-D`````````<S@``!(``0!PX@,``````"L````````` +MBC@``!(``0!0Z@,``````!4`````````GC@``!(``0!P]`,``````(`!```` +M````M#@``!(``0`P_P0``````!$"````````T3@``!$`"P`<`@````````0` +M````````Z#@``!(``0!0`04``````-@#`````````CD``!`````````````` +M````````````%SD``!(``0!@Z0,``````%4`````````+3D``!(``0"`_`,` +M`````&H`````````2#D``!(``0#`3`0```````@`````````8CD``!`````` +M````````````````````=#D``!(``0"P%@4``````$D`````````B3D``!$` +M"P```@````````@`````````F3D``!(``0"0[P0```````D`````````LCD` +M`!(``0``Y`,``````(,`````````QSD``!$`"P`E`@````````$````````` +MWSD``!(``0!PG`$``````!H`````````^CD``!(``0``[P0``````&L````` +M````$3H``!``````````````````````````*#H``!(``0`@YP,``````%<` +M````````.SH``!$`"P`(`@````````@`````````2CH``!(``0#0Y0,````` +M`,,`````````8CH``!(``0"`YP,``````-D`````````<SH``!(``0"P2P0` +M``````<`````````BSH``!``````````````````````````HCH``!(``0!` +M400``````"<`````````LCH``!$`"P`C`@````````$`````````SCH``!`` +M````````````````````````X3H``!``````````````````````````]#H` +M`!$`!P"#`P````````$`````````"#L``!(``0`@Z@,``````!`````````` +M+3L``!(``0#@]@0``````&X#````````.SL``!(``0`@C`,``````!H````` +M````6#L``!(``0`PZ@,``````!$`````````=#L``!`````````````````` +M````````C#L``!(``0"@]00``````%(`````````H3L``!`````````````` +M````````````MSL``!(``0"@!04``````(,`````````TCL``!(``0!0^@0` +M`````#8`````````YCL``!``````````````````````````]CL``!`````` +M````````````````````#3P``!(``0!@%P4```````P`````````)#P``!`` +M````````````````````````-SP``!(``0`@XP,``````!``````````4SP` +M`!(``0#@X`,``````,@`````````;CP``!$`!P"``P````````$````````` +M@3P``!(``0`0X`,```````P`````````F3P``!$`"P`A`@````````$````` +M````M#P``!(``0!0$@4``````(<"````````U#P``!(``0!P%04```````,` +M````````[CP``!(``0!``P0``````/D!````````!3T``!(``0"P\P,````` +M`+,`````````&ST``!(``0!@XP,``````#X`````````-#T``!`````````` +M````````````````2ST``!(``0`@X`,``````"D`````````8ST``!`````` +M````````````````````=ST``!(``0"@X@,``````#T`````````C3T``!(` +M`0!0%04``````!,`````````JST``!(``0!`[@,``````/,`````````RST` +M`!``````````````````````````WST``!`````````````````````````` +M_#T``!(``0`0XP,```````L`````````%CX``!`````````````````````` +M````*3X``!(``0"`[@0``````'0`````````0#X``!`````````````````` +M````````6SX``!(``0!`%04```````(`````````;CX``!(``0#P[P0````` +M`'$`````````@SX``!(``0"P^`,``````+(`````````FSX``!(``0#@%`4` +M`````%0`````````N3X``!(``0"PX0,``````"P`````````YSX``!$`!P"" +M`P````````$``````````S\``!(``0#P]0,``````/H`````````&C\``!(` +M`0!P[P0``````!L`````````+S\``!(``0#`Z0,``````%<`````````3C\` +M`!``````````````````````````93\``!(``0#@[`,``````%8!```````` +M@C\``!(``0"@XP,``````%\`````````ES\``!(``0"P^@0``````/(````` +M````M#\``!$`"P`B`@````````$`````````SS\``!(``0#@+P0``````'(` +M`````````%!-7TES<W5E4F5A9$9A:6Q,960`<C<U,%]486=?26YI=`!R-S4P +M7U5P9&%T95!H>4EN9F\`<V%S7VAA<VA?861D<@!R-S4P7U9E<FEF>4-O;6UA +M;F1"969O<F5396YD:6YG`'(W-3!?0VAE8VM$979I8V5#:&%N9V4`36%K94%T +M=$1E=DEN9F\`<C<U,%]$25-#7T-A;F-E;$1I<V-O=F5R`'(W-3!?0F5E<$]N +M`'(W-3!?4T-325]!5$%?1FEL;$1A=&%&:65L9`!035]7<FET95)E9U-Y;F,` +M<C<U,%]30U-)7TUA:V5#86-H94-O;6UA;F0`<C<U,%]#3U)%7TES<W5E4TU0 +M4F5Q=65S=`!R-S4P7TU67UIE<F]-=E)E<75E<W0`:3)C05]W<FET95]B>71E +M<P!R-S4P7U-%4U]);G1E<FYA;%)E<4-A;&QB86-K`'(W-3!?27-S=65?4F5P +M;W)T1V5N97)A;`!R-S4P7TU67T1U;7!297%U97-T`'(W-3!?359?26YI=&EA +M;&EZ951A<F=E=$E$5&%B;&4`<V5T7W!M7V9A:6Q?;&5D`'(W-3!?4')E<&%R +M94%N9%-E;F1#;VUM86YD`$]D:6Y34$E?4F1P=`!R-S4P7TU67TUA<%1O4W!E +M8VEF:6-487)G971)1`!R-S4P7U-#4TE?051!7T9I;&Q,0D%#9&(Q,`!R-S4P +M7U-'4$E/7U=R:71E4F5G:7-T97(`<C<U,%]&<F5E4T%405-C<F%T8VA4;U!O +M;VP`<C<U,%]486=?1V5T3VYE`'(W-3!?3V1I;E-025]);FET`'(W-3!?1G)E +M94EN=&5R;F%L4F5Q5&]0;V]L`'=A=&EN9U]C86QL8F%C:P!R-S4P7T-O;7!L +M971E4F5Q=65S=$%N9%-L;W0`<C<U,%]#;W)E7T=E=%-U<'!O<G1E9$-O=6YT +M<P!$979I8V5?36%K95!R:79A=&5396YD4V5S4F5Q=65S=`!035]3971&86EL +M3&5D0V%L;&)A8VL`07-S:6=N16QE;65N1&5S8W)I<'1O<DYA;64`1&5V:6-E +M7TUA:V5397-%;&5M96YT4W1A='5S4F5Q=65S=%1I;65R`'(W-3!?4T-325]! +M5$%?5F5R:69Y5')A;G-L871I;VX`<C<U,%]?7W)E;F5W7W1I;65R`'(W-3!? +M1&5V:6-E7TUA:V5397-28W9$:6%G4F5Q=65S=`!R-S4P7U-#4TE?051!7U-T +M87)T4W1O<%1R86YS;&%T:6]N`'(W-3!?1&5V:6-E7U=R:71E4V5S0V]N=')O +M;$1I86<`<C<U,%]31U!)3U]335!297%U97-T7U=R:71E`'(W-3!?1G)E941E +M=FEC951O4&]O;`!R-S4P7U!O<G1?06)O<G1297%U97-T<P!P<F]D=6-T7VED +M`%!-7U)E861296=3>6YC`'(W-3!?0V]R95]-;V1U;&5396YD4F5Q=65S=`!R +M-S4P7T-H96-K5&%R9V5T0VAA;F=E`'(W-3!?1G)E95!O<G14;U!O;VP`:3)C +M0E]W<FET95]B>71E<P!R-S4P7T-O<F5?26YT97)R=7!T4V5R=FEC95)O=71I +M;F4`<C<U,%]31U!)3U]296%D4F5G:7-T97(`<C<U,%]$25-#7T=E=$YE9V]T +M:6%T961,:6YK4F%T90!R-S4P7T-A;&-U;&%T95)O=71E26YD97@`<C<U,%]O +M9&EN7VEO8W1L`'(W-3!?<V5T7V9A:6Q?;&5D`'(W-3!?4U107T1E=FEC95)E +M<V5T`'(W-3!?1V5T17AP86YD97)&<F]M4&]O;`!R-S4P7U-!5$%?4$U?2&%N +M9&QE1&5V:6-E56YP;'5G`%1E<W1?4&EN7U-E=`!R-S4P7T-O<F5?26YT97)N +M86Q396YD4F5Q=65S=`!R-S4P7U1A9U])<T5M<'1Y`'(W-3!?359?36%P5&%R +M9V5T240`<C<U,%]?7V%D9%]T:6UE<@!R-S4P7VDR8U]R97-E=`!R-S4P7VUV +M7V1I<V%B;&5?:&)A`'(W-3!?0V]R95]297%4:6UE;W5T`'(W-3!?1FEN9$%S +M8VEI3G5M8F5R`'(W-3!?;79?<V5T7U-!4T%D9'(`<C<U,%]%>'!A;F1E<E]3 +M35!297%U97-T7U!H>4-O;G1R;VP`<C<U,%]30U-)7TUA:V5-;V1E4&%G94-A +M8VAI;F<`<C<U,%]#;W)E7U)E<V5T0VUD4VQO=`!R-S4P7U)E;6]V941E=FEC +M90!R-S4P7T9I;F149W1.;P!R-S4P7U-T;W)E7T-O;F9I9U)O=71E26YF;P!I +M,F-!7W)E861?8GET97,`86EN9F\`<C<U,%]#;W)E7TUA:V5$979I8V5297-E +M=%)E<0!R-S4P7T-O<F5?36]D=6QE26YI=&EA;&EZ90!R-S4P7U-#4TE?051! +M7U)E861#87!A8VET>51R86YS;&%T:6]N0V%L;&)A8VL`<C<U,%]-5E]3971, +M0D%A;F1396-T;W)#;W5N=`!O9&EN7V-O<F5?=&EM97(`<C<U,%]S971?9F%I +M;%]L961S`'(W-3!?1G)E94-O<F5#;VYT97AT5&]0;V]L`'(W-3!?8V]R95]H +M86YD;&5?=&%S:V9I;&5?97)R;W(`<C<U,%]O9&EN7W-E=%]S<&EN7W5P7VUO +M9&4`<C<U,%]0;W-T36%K95-E<T5L96UE;G13=&%T=7-297%U97-T`'(W-3!? +M;79?96YA8FQE7WAM=`!R-S4P7TQI<W1?1V5T1FER<W0`<C<U,%]&<F5E4T53 +M4T)4;U!O;VP`<C<U,%]'9710341E=FEC90!R-S4P7T1E=FEC95]-86ME36]D +M95-E;&5C=%)E<75E<W0`<C<U,%]$:7-C;W9E<GE330!R-S4P7U-!5$%?17)R +M;W)(86YD;&EN9P!R-S4P7U-!5$%?4&]R=$AA;F1L94EN=&5R<G5P=`!R-S4P +M7T=E=$-O<F5#;VYT97AT1G)O;5!O;VP`<C<U,%]305-?2&%N9&QE0V]M<&QE +M=&5D0V]M;6%N9`!R-S4P7T9R965296=I<W1E<E-E=`!R-S4P7U-!5$%?4&]R +M=$1E=&5C=`!R-S4P7U!O<G1?2&%N9&QE4&QU9VEN`'(W-3!?07-S:6=N16QE +M;65N=%-L;W1.=6UB97(`<C<U,%]$979I8V5?27-S=653;V9T4F5S970`<C<U +M,%]?7U!-7V-A;F-E;%]T:6UE<@!R-S4P7U!-7T9R965296=I<W1E<E-E=`!R +M-S4P7T=E=%-'0G5F9F5R1G)O;5!O;VP`<V5T7V5M7V9A:6Q?;&5D`'(W-3!? +M359?0U)#`$=E=%-!5$$V-$M38W)A=&-H1G)O;5!O;VP`<C<U,%]2=6YT:6UE +M27-S=653;V9T4F5S970`<C<U,%]'971$979I8V5&<F]M4&]O;`!R-S4P7U-# +M4TE?051!7U-Y;F-#86-H951R86YS;&%T:6]N`%1E<W1?4&EN7TEN:71I86QI +M>F4`<C<U,%]-5E]'971-87!P961)1`!R-S4P7T9R965335!38W)A=&-H5&]0 +M;V]L`'(W-3!?1FEN9$9R965335!#;VYT97AT`$9R9653051!-C1+4V-R871C +M:%1O4&]O;`!R-S4P7U-!5$%?4')E<&%R94-O;6UA;F1(96%D97(`;79?<&AY +M7W)E<V5T`'(W-3!?4T%405](86YD;&5$979I8V55;G!L=6<`<C<U,%]035]) +M<W-U95=R:71E4F5G`'(W-3!?4T-325]!5$%?0VAE8VM#;VYD:71I;VX`<C<U +M,%]035])<W-U95)E861296<`<C<U,%]'971);G1E<FYA;%)E<49R;VU0;V]L +M`'(W-3!?1G)E945X<&%N9&5R5&]0;V]L`'-E=%]E;5]F86EL7VQE9',`<C<U +M,%]2=6YT:6UE27-S=65296%D3&]G17AT`'(W-3!?4T-325]!5$%?4F5A9$-A +M<&%C:71Y5')A;G-L871I;VX`<C<U,%]D=6UP7W5N87-S;V-I871E9%]F:7,` +M<C<U,%]$979I8V5?36%K95-T87)T4W1O<%5N:71297%U97-T`'(W-3!?0V]M +M<&QE=&5297%U97-T`'(W-3!?1&5V:6-E7TUA:V5-;V1E4V5N<V5297%U97-T +M`'(W-3!?1V5T4T%405-C<F%T8VA&<F]M4&]O;`!R-S4P7T-O<F5?36]D=6QE +M4W1A<G0`<C<U,%]$:7-C;W9E<GE#86QL0F%C:P!G971?:61?9G)O;5]E;F-) +M9`!R-S4P7T=E=%-%4U-"1G)O;5!O;VP`4T537U!R:79A=&5297%#86QL8F%C +M:P!305-?4F5P;W)T3'5N4V-A;@!R-S4P7T-O<F5?2&%N9&QE5V%I=&EN9TQI +M<W0`<C<U,%]0<F5%;7!T>5!-`'(W-3!?1V5T36EN3F5G;W1I871E9$QI;FM2 +M871E`'(W-3!?4T%405](86YD;&5$979I8V50;'5G:6X`<C<U,%]&:6QL16YC +M;&]S=7)E16QE;65N=%-T871U<P!R-S4P7U-#4TE?5&]?1DE3`'(W-3!?0V]R +M95-A=F5/<FEG:6YA;$-$0@!R-S4P7U-!5$%?4&]R=%)E<V5T`'(W-3!?1V5T +M3VYE0V]M;6%N9%-L;W0`<C<U,%]M=E]R97-E=%]P:'D`<C<U,%]7<FET941% +M3%9?45]%;G1R>0!R-S4P7V]D:6Y?<V5T7VED;&5?<W1A;F1B>0!R-S4P7U-% +M4U]3971&86EL3&5D`'(W-3!?1V5T4$U&<F]M4&]O;`!R-S4P7TU67T5Q=6%L +M<P!R-S4P7TAA;F1L94-O;6UA;F11=65U90!!<W-I9VY397-/=&AE<D5L96UE +M;G1/=F5R86QL16QE;65N=$YU;6)E<@!R-S4P7U-#4TE?051!7U)E8617<FET +M951R86YS;&%T:6]N`'(W-3!?4TU07U-'4$E/7U-E=%]&86EL;&5D`'(W-3!? +M4G5N=&EM94ES<W5E4V]F=%)E<V5T0V%L;&)A8VL`<C<U,%]31U1A8FQE7T%P +M<&5N9`!R-S4P7T%S<VEG;D1E=FEC94]V97)A;&Q%;&5M96YT3G5M8F5R`'(W +M-3!?4$U?07-S:6=N4F5G:7-T97)3970`<C<U,%]3051!7U!-2&]T<&QU9U)E +M<4-A;&QB86-K`'!O<G1?<V5T7V9A:6Q?;&5D`'(W-3!?57!D871E5&=T1&5V +M36%P`'(W-3!?4T%37TEN=&5R;F%L4F5Q0V%L;&)A8VL`<C<U,%]5<&1A=&54 +M87)G971$979I8V5S`&]D:6Y?96U?86-C97-S`'(W-3!?4T%405]$979I8V53 +M=&%T94UA8VAI;F4`1&5V:6-E7U)E<&]R=$QU;E)E<75E<W0`<C<U,%]0<F5% +M;7!T>41E=FEC90!R-S4P7T1)4T-?0VAE8VM$:7-C;W9E<E-T871E`'(W-3!? +M1G)E95--4$-O;G1E>'0`<C<U,%]'971.0U%486<`<C<U,%]3051396YS941A +M=&$`<C<U,%]31U!)3U]335!297%U97-T7U)E860`<C<U,%]?7V-A;F-E;%]T +M:6UE<@!R-S4P7T1)4T-?1V5T4F5S;W5R8V4`<C<U,%]#;W)E7W!A<W-?=&AR +M=5]F:6QL7W1A<VMF:6QE`'(W-3!?1$E30U]$;T1I<V-O=F5R`'(W-3!?4T=0 +M24]?26YI=&EA;&EZ90!R-S4P7U!O<G1?2&%N9&QE1&5V:6-E4&QU9VEN`'(W +M-3!?4T=024]?4V5T7T9A:6QL960`<V5T7W!M7V9A:6Q?;&5D<P!R-S4P7TU6 +M7T-O<'E31U1A8FQE`'(W-3!?1&5V:6-E7TUA:V5296%D0V%P86-I='E487-K +M4F5Q=65S=`!U<&1A=&5?9&5V:6-E7V-O;F9I9P!R-S4P7T-O<F5?36]D=6QE +M16YA8FQE1&ES86)L94E240!R-S4P7VUO9&5086=E0G5F`'(W-3!?4T%37T1E +M=FEC95-T871E36%C:&EN90!R-S4P7U1A9U]);FET7T9)1D\`<C<U,%]#;W)E +M7T9I;&Q396YS941A=&$`<C<U,%]0;W-T36%K95-E<T-O;F9I9W5R871I;VY2 +M97%U97-T`'(W-3!?4T%405]035](86YD;&5$979I8V50;'5G:6X`<C<U,%]3 +M0U-)7T%405]5<'!E<E=O<F0`36%K941E=DEN9F\`<C<U,%]3051!7U!-4W1A +M=&5-86-H:6YE`'(W-3!?1$E30U]3971297-O=7)C90!$979I8V5?36%K95!R +M:79A=&5296-V4V5S4F5Q=65S=`!035])<W-U95=R:71E1F%I;$QE9`!R-S4P +M7U-!5$%?4$U);FET4F5Q0V%L;&)A8VL`<C<U,%]O9&EN7V9L87-H7V%C8V5S +M<P!3051!7U!-4W1A=&5-86-H:6YE4W!I;E5P`'(W-3!?4T%405]0;W)T1&5V +M:6-E4F5A9'D`<C<U,%]486=?4F5L96%S94]N90!R-S4P7U-!4U]%<G)O<DAA +M;F1L:6YG`&-H96-K7U-A<T%D9'(`<C<U,%]&<F5E4T="=69F97)4;U!O;VP` +M<C<U,%]$971E8W10;W)T5'EP90!R-S4P7U!O<G1?27-297%U97-T4G5N;FEN +M9P!R-S4P7T1)4T-?1V5T5&=T1&5V36%P`$1E=FEC95]497-T56YI=%)E861Y +M4F5Q=65S=`!R-S4P7T1E=FEC95]087)S94ED96YT:69Y1&%T80!R-S4P7V1E +M=FEC95]P<F]B95]D;VYE`'(W-3!?0F5E<$]F9@!G971?9FER<W1?<&T`<C<U +M,%]5<&1A=&53=&%T=7-6<U-E<T-O;G1R;VQ"=69F97(`<C<U,%])<W-U95]# +M;VYF:6=2;W5T94EN9F\`3V1I;E-025]396-T;W)5;G!R;W1E8W0`<C<U,%]# +M;W)E4F5S=&]R94]R:6=I;F%L0T1"`'-C<VEL=6Y?=&]?:6YT`'(W-3!?4T=4 +M86)L95]);FET`'(W-3!?4T%405]035]%<G)O<DAA;F1L:6YG`%-!5$%?2&%N +M9&QE4$U?2&]T4&QU9P!R-S4P7U-#4TE?051!7T9I;&Q,0D%#9&(Q-@!R-S4P +M7TES<W5E7T1I<V-O=F5R`$=E=$%T=$ED96YT:69Y1G)A;64`4T535&EM97)? +M26YT97)N86Q297%#86QL8F%C:P!G971?96YC7V-O=6YT`'(W-3!?0V%T96=O +M<GE?0T1"7U1Y<&4`<C<U,%],:7-T7T=E=$QA<W0`<C<U,%]&<F5E4$U4;U!O +M;VP`9V5T7VUI;E]P;5!A=&A)9`!R-S4P7T1E=FEC95]-86ME4F5A9$-A<&%C +M:71Y,39487-K4F5Q=65S=`!R-S4P7VUV7V1I<V%B;&5?<F5G:7-T97)?<V5T +M`'(W-3!?4T%405]0;W)T1&5V:6-E1&5T96-T960`<C<U,%]0;W)T7TAA;F1L +M955N<&QU9P!R-S4P7T%405]#1$(R5&%S:T9I;&4`4F5M;W9E4T%31&5V:6-E +M`'(W-3!?359?4F5M;W9E5&%R9V5T240`;V1I;E]S971?:&%R9%]D:7-K7VED +M96YT:69Y`'(W-3!?4T=486)L95]!=F%I;&%B;&4`4&]R=$UA<%]2-S4P`'(W +M-3!?4T%405]0<F5P87)E0V]M;6%N9%1A8FQE`$=E=$1E=DED96YT:69Y1G)A +M;64`:3)C0E]R96%D7V)Y=&5S`'-A<U]A9&1R97-S7V-O=6YT`'(W-3!?27-S +M=65?4F5P;W)T36%N=69A8W1U<F5R26YF;W)M871I;VX`<C<U,%]0<F5P87)E +M1&5L:79E<GE1=65U945N=')Y`%5P9&%T94AI;5!A=&A)9`!R-S4P7T9I;F12 +M=6YN:6YG4F5Q0GE486<`<C<U,%]#;W)E7TUO9'5L95-H=71D;W=N`'(W-3!? +M4$U?0V]R95]297%4:6UE;W5T`'(W-3!?17AP86YD97)?4TU04F5Q7T-A;&QB +M86-K`'(W-3!?57!D871E5VED95!O<G10:'E-87``<C<U,%]305-?2&%N9&QE +M0E)$0U-4`'(W-3!?07-S:6=N4F5G:7-T97)3970`<C<U,%]397)V:6-E26YT +M97)R=7!T`'(W-3!?;79?9&ES86)L95]X;70`<C<U,%]335!297-P3&5N9W1H +M`'5P9&%T95]D979I8V5?8V]N9FEG7W8R`'(W-3!?27-S=65?4F5P;W)T4F]U +M=&5);F9O`'(W-3!?4&]S=$UA:V5397-%;F-L;W-U<F53=&%T=7-297%U97-T +M`'(W-3!?17AP86YD97)?4TU04F5Q=65S=%]297!O<G1'96YE<F%L`'(W-3!? +M1V5T4TU04V-R871C:$9R;VU0;V]L`'(W-3!?1&5V:6-E7TUA:V5);G%U:7)Y +M5&%S:U)E<75E<W0`<C<U,%]#;W)E7TUO9'5L94=E=%)E<V]U<F-E475O=&$` +M<C<U,%]!<W-I9VY$979I8V5%;&5M96YT3G5M8F5R`'(W-3!?4&]R=%]&:6YD +M5&=T3F\`<C<U,%]31U!)3U]335!297%?0V%L;&)A8VL`<C<U,%]0;W)T7U-O +M9G1297-E=$-A;&QB86-K`'(W-3!?;79?<F5S971?>&UT`'(W-3!?;79#:&%N +M;F5L4W1A=&5-86-H:6YE`'(W-3!?4&]R=%]-;VYI=&]R`'(W-3!?4T%37U!O +M<G1297-E=`!R-S4P7U!O<W1-86ME4V5S16QE;65N=$1E<V-R:7!T;W)297%U +M97-T`'(W-3!?17AP86YD97)?4TU04F5Q=65S=%]297!O<G102%E3051!`'(W +M-3!?23)#7TUO9'5L94EN:71I86QI>F4`<C<U,%]O9&EN7W)E;6]V95]D979I +M8V4`<C<U,%]30U-)7T%405],;W=E<E=O<F0`<C<U,%]'971-87A.96=O=&EA +M=&5D3&EN:U)A=&4`<C<U,%]'9710;W)T1G)O;5!O;VP`<C<U,%]-5E]$=6UP +M4F5G:7-T97(`<C<U,%]%>'!A;F1E<E]335!297%U97-T7T1I<V-O=F5R`'(W +M-3!?1&5V:6-E7TUA:V5297%U97-T5&%S:U)E<75E<W0`9&,W,C@P7U-'5&%B +M;&5?07!P96YD`&1C-S(X,%]&<F5E4T%405-C<F%T8VA4;U!O;VP`9&,W,C@P +M7U!O<G1?06)O<G1297%U97-T<P!D8S<R.#!?4T%405]0;W)T2&%N9&QE26YT +M97)R=7!T`&1C-S(X,%]315-?4V5T1F%I;$QE9`!D8S<R.#!?4T%37TEN=&5R +M;F%L4F5Q0V%L;&)A8VL`9&,W,C@P7TES<W5E7U)E<&]R=$UA;G5F86-T=7)E +M<DEN9F]R;6%T:6]N`&1C-S(X,%]0;W)T7TUO;FET;W(`9&,W,C@P7T-O<F5? +M36%K941E=FEC95)E<V5T4F5Q`&1C-S(X,%]30U-)7U1O7T9)4P!D8S<R.#!? +M;V1I;E]R96UO=F5?9&5V:6-E`&1C-S(X,%]3051!7U!-26YI=%)E<4-A;&QB +M86-K`&1C-S(X,%]035]#;W)E7U)E<51I;65O=70`9&,W,C@P7T1)4T-?1V5T +M5&=T1&5V36%P`&1C-S(X,%]O9&EN7V9L87-H7V%C8V5S<P!D8S<R.#!?1G)E +M95--4%-C<F%T8VA4;U!O;VP`9&,W,C@P7T1I<V-O=F5R>4-A;&Q"86-K`&1C +M-S(X,%]486=?4F5L96%S94]N90!D8S<R.#!?0V]R95]-;V1U;&5396YD4F5Q +M=65S=`!D8S<R.#!?359?36%P5&]3<&5C:69I8U1A<F=E=$E$`&1C-S(X,%]' +M9710341E=FEC90!D8S<R.#!?4U107T1E=FEC95)E<V5T`&1C-S(X,%]'971# +M;W)E0V]N=&5X=$9R;VU0;V]L`&1C-S(X,%]-5E]);FET:6%L:7IE5&%R9V5T +M241486)L90!D8S<R.#!?4')E16UP='E$979I8V4`9&,W,C@P7T]D:6Y34$E? +M26YI=`!D8S<R.#!?051!7T-$0C)487-K1FEL90!D8S<R.#!?4TU04F5S<$QE +M;F=T:`!D8S<R.#!?;79?<F5S971?<&AY`&1C-S(X,%]0;W)T7T9I;F149W1. +M;P!D8S<R.#!?4T=024]?5W)I=&5296=I<W1E<@!D8S<R.#!?0V]R95]);G1E +M<G)U<'1397)V:6-E4F]U=&EN90!D8S<R.#!?;79?9&ES86)L95]X;70`9&,W +M,C@P7U-!5$%?4&]R=$1E=&5C=`!D8S<R.#!?1G)E941E=FEC951O4&]O;`!D +M8S<R.#!?17AP86YD97)?4TU04F5Q7T-A;&QB86-K`&1C-S(X,%]$979I8V5? +M36%K95-E<U)C=D1I86=297%U97-T`&1C-S(X,%]0;W)T7U-O9G1297-E=$-A +M;&QB86-K`&1C-S(X,%])<W-U95]#;VYF:6=2;W5T94EN9F\`9&,W,C@P7U!O +M<G1?27-297%U97-T4G5N;FEN9P!D8S<R.#!?5F5R:69Y0V]M;6%N9$)E9F]R +M95-E;F1I;F<`9&,W,C@P7T1E=FEC95]-86ME4W1A<G13=&]P56YI=%)E<75E +M<W0`9&,W,C@P7T9R965%>'!A;F1E<E1O4&]O;`!D8S<R.#!?0V]R95)E<W1O +M<F5/<FEG:6YA;$-$0@!D8S<R.#!?4&]S=$UA:V5397-%;F-L;W-U<F53=&%T +M=7-297%U97-T`&1C-S(X,%]D=6UP7W5N87-S;V-I871E9%]F:7,`9&,W,C@P +M7TU67UIE<F]-=E)E<75E<W0`9&,W,C@P7T=E=%!O<G1&<F]M4&]O;`!D8S<R +M.#!?1FEN9$%S8VEI3G5M8F5R`&1C-S(X,%]305-?4&]R=%)E<V5T`&1C-S(X +M,%]-5E]'971-87!P961)1`!D8S<R.#!?4T-325]!5$%?4F5A9%=R:71E5')A +M;G-L871I;VX`9&,W,C@P7U!O<W1-86ME4V5S0V]N9FEG=7)A=&EO;E)E<75E +M<W0`9&,W,C@P7T1E=FEC95]-86ME4F5Q=65S=%1A<VM297%U97-T`&1C-S(X +M,%]0;W)T7TAA;F1L941E=FEC95!L=6=I;@!D8S<R.#!?4$U?07-S:6=N4F5G +M:7-T97)3970`9&,W,C@P7T-O<F5?4F5S971#;613;&]T`&1C-S(X,%]M=E]D +M:7-A8FQE7VAB80!D8S<R.#!?7U]A9&1?=&EM97(`9&,W,C@P7U-#4TE?36%K +M94UO9&5086=E0V%C:&EN9P!D8S<R.#!?0T]215])<W-U95--4%)E<75E<W0` +M9&,W,C@P7T%S<VEG;D1E=FEC94]V97)A;&Q%;&5M96YT3G5M8F5R`&1C-S(X +M,%]7<FET941%3%9?45]%;G1R>0!D8S<R.#!?4T-325]!5$%?5F5R:69Y5')A +M;G-L871I;VX`9&,W,C@P7V-O<F5?:&%N9&QE7W1A<VMF:6QE7V5R<F]R`&1C +M-S(X,%]31U!)3U]335!297%U97-T7U=R:71E`&1C-S(X,%]305-?2&%N9&QE +M0V]M<&QE=&5D0V]M;6%N9`!D8S<R.#!?1&5V:6-E7TUA:V5296%D0V%P86-I +M='DQ-E1A<VM297%U97-T`&1C-S(X,%]0;W-T36%K95-E<T5L96UE;G13=&%T +M=7-297%U97-T`&1C-S(X,%]3051!7U!-7TAA;F1L941E=FEC95!L=6=I;@!D +M8S<R.#!?;V1I;E]S971?<W!I;E]U<%]M;V1E`&1C-S(X,%]#;W)E7TAA;F1L +M95=A:71I;F=,:7-T`&1C-S(X,%]0<F5P87)E1&5L:79E<GE1=65U945N=')Y +M`&1C-S(X,%]31U!)3U]335!297%U97-T7U)E860`9&,W,C@P7T1)4T-?0V%N +M8V5L1&ES8V]V97(`9&,W,C@P7U5P9&%T95=I9&50;W)T4&AY36%P`&1C-S(X +M,%](86YD;&5#;VUM86YD475E=64`9&,W,C@P7T1)4T-?1V5T4F5S;W5R8V4` +M9&,W,C@P7U-#4TE?051!7T9I;&Q,0D%#9&(Q-@!D8S<R.#!?0V]R95]-;V1U +M;&5%;F%B;&5$:7-A8FQE25)1`&1C-S(X,%]I,F-?<F5S970`9&,W,C@P7T9R +M965296=I<W1E<E-E=`!D8S<R.#!?0F5E<$]F9@!D8S<R.#!?1$E30U]#:&5C +M:T1I<V-O=F5R4W1A=&4`9&,W,C@P7T5X<&%N9&5R7U--4%)E<75E<W1?4F5P +M;W)T1V5N97)A;`!D8S<R.#!?23)#7TUO9'5L94EN:71I86QI>F4`9&,W,C@P +M7V1E=FEC95]P<F]B95]D;VYE`&1C-S(X,%]296UO=F5$979I8V4`9&,W,C@P +M7U)U;G1I;65)<W-U95-O9G1297-E=$-A;&QB86-K`&1C-S(X,%]31U!)3U]3 +M971?1F%I;&QE9`!D8S<R.#!?1V5T36%X3F5G;W1I871E9$QI;FM2871E`&1C +M-S(X,%]&<F5E4T534T)4;U!O;VP`9&,W,C@P7TQI<W1?1V5T3&%S=`!D8S<R +M.#!?4$U?27-S=657<FET95)E9P!D8S<R.#!?<V5T7V9A:6Q?;&5D`&1C-S(X +M,%]486=?27-%;7!T>0!D8S<R.#!?57!D871E5&=T1&5V36%P`&1C-S(X,%]4 +M86=?26YI=`!D8S<R.#!?4T%405]034AO='!L=6=297%#86QL8F%C:P!D8S<R +M.#!?4&]S=$UA:V5397-%;&5M96YT1&5S8W)I<'1O<E)E<75E<W0`9&,W,C@P +M7T9R9650;W)T5&]0;V]L`&1C-S(X,%]-5E]-87!487)G971)1`!D8S<R.#!? +M4$U?27-S=65296%D4F5G`&1C-S(X,%]#;W)E7TUO9'5L95-H=71D;W=N`&1C +M-S(X,%]5<&1A=&50:'E);F9O`&1C-S(X,%]?7W)E;F5W7W1I;65R`&1C-S(X +M,%]$979I8V5?36%K95)E861#87!A8VET>51A<VM297%U97-T`&1C-S(X,%]' +M971$979I8V5&<F]M4&]O;`!D8S<R.#!?1V5T4T534T)&<F]M4&]O;`!D8S<R +M.#!?07-S:6=N16QE;65N=%-L;W1.=6UB97(`9&,W,C@P7U!O<G1?2&%N9&QE +M56YP;'5G`&1C-S(X,%]#;W)E7TUO9'5L95-T87)T`&1C-S(X,%]$:7-C;W9E +M<GE330!D8S<R.#!?4T-325]!5$%?0VAE8VM#;VYD:71I;VX`9&,W,C@P7TU6 +M7T-O<'E31U1A8FQE`&1C-S(X,%]3051!7T1E=FEC95-T871E36%C:&EN90!D +M8S<R.#!?1&5V:6-E7TUA:V5);G%U:7)Y5&%S:U)E<75E<W0`9&,W,C@P7T1E +M=FEC95]087)S94ED96YT:69Y1&%T80!D8S<R.#!?4T%44V5N<V5$871A`&1C +M-S(X,%]'971.0U%486<`9&,W,C@P7VUV0VAA;FYE;%-T871E36%C:&EN90!D +M8S<R.#!?4W1O<F5?0V]N9FEG4F]U=&5);F9O`&1C-S(X,%]31U1A8FQE7TEN +M:70`9&,W,C@P7T=E=$5X<&%N9&5R1G)O;5!O;VP`9&,W,C@P7U-!4U](86YD +M;&5"4D1#4U0`9&,W,C@P7T-O<F53879E3W)I9VEN86Q#1$(`9&,W,C@P7TU6 +M7T1U;7!297%U97-T`&1C-S(X,%],:7-T7T=E=$9I<G-T`&1C-S(X,%]30U-) +M7T%405]&:6QL1&%T849I96QD`&1C-S(X,%]30U-)7T%405]3>6YC0V%C:&54 +M<F%N<VQA=&EO;@!D8S<R.#!?4T=024]?26YI=&EA;&EZ90!D8S<R.#!?1G)E +M95--4$-O;G1E>'0`9&,W,C@P7T9I;&Q%;F-L;W-U<F5%;&5M96YT4W1A='5S +M`&1C-S(X,%]#;W)E7TUO9'5L94EN:71I86QI>F4`9&,W,C@P7U-!5$%?4$U3 +M=&%T94UA8VAI;F4`9&,W,C@P7T9R9650351O4&]O;`!D8S<R.#!?4T%405]0 +M<F5P87)E0V]M;6%N9%1A8FQE`&1C-S(X,%]#;W)E7TUO9'5L94=E=%)E<V]U +M<F-E475O=&$`9&,W,C@P7T9R96531T)U9F9E<E1O4&]O;`!D8S<R.#!?5&%G +M7TEN:71?1DE&3P!D8S<R.#!?4T-325]!5$%?4F5A9$-A<&%C:71Y5')A;G-L +M871I;VY#86QL8F%C:P!D8S<R.#!?7U]035]C86YC96Q?=&EM97(`9&,W,C@P +M7TU67T1U;7!296=I<W1E<@!D8S<R.#!?4V5R=FEC94EN=&5R<G5P=`!D8S<R +M.#!?27-S=65?1&ES8V]V97(`9&,W,C@P7T1)4T-?1&]$:7-C;W9E<@!D8S<R +M.#!?4T%405](86YD;&5$979I8V55;G!L=6<`9&,W,C@P7T-O<F5?26YT97)N +M86Q396YD4F5Q=65S=`!D8S<R.#!?1$E30U]3971297-O=7)C90!D8S<R.#!? +M4T%405]035](86YD;&5$979I8V55;G!L=6<`9&,W,C@P7U-!5$%?4&]R=$1E +M=FEC941E=&5C=&5D`&1C-S(X,%]5<&1A=&5487)G971$979I8V5S`&1C-S(X +M,%]30U-)7T%405]3=&%R=%-T;W!4<F%N<VQA=&EO;@!D8S<R.#!?0V]R95]P +M87-S7W1H<G5?9FEL;%]T87-K9FEL90!D8S<R.#!?;79?9&ES86)L95]R96=I +M<W1E<E]S970`9&,W,C@P7T%S<VEG;D1E=FEC945L96UE;G1.=6UB97(`9&,W +M,C@P7T=E=$UI;DYE9V]T:6%T961,:6YK4F%T90!D8S<R.#!?;79?<V5T7U-! +M4T%D9'(`9&,W,C@P7U!-7T9R965296=I<W1E<E-E=`!D8S<R.#!?17AP86YD +M97)?4TU04F5Q=65S=%]0:'E#;VYT<F]L`&1C-S(X,%]-5E]%<75A;',`9&,W +M,C@P7T=E=%-'0G5F9F5R1G)O;5!O;VP`9&,W,C@P7U-#4TE?051!7TQO=V5R +M5V]R9`!D8S<R.#!?0VAE8VM$979I8V5#:&%N9V4`9&,W,C@P7U-!4U]%<G)O +M<DAA;F1L:6YG`&1C-S(X,%]"965P3VX`9&,W,C@P7U-'4$E/7U--4%)E<5]# +M86QL8F%C:P!D8S<R.#!?4T=486)L95]!=F%I;&%B;&4`9&,W,C@P7U--4%]3 +M1U!)3U]3971?1F%I;&QE9`!D8S<R.#!?0V]R95]&:6QL4V5N<V5$871A`&1C +M-S(X,%]'971335!38W)A=&-H1G)O;5!O;VP`9&,W,C@P7U-!5$%?4&]R=$1E +M=FEC95)E861Y`&1C-S(X,%]M=E]E;F%B;&5?>&UT`&1C-S(X,%]!<W-I9VY2 +M96=I<W1E<E-E=`!D8S<R.#!?;V1I;E]I;V-T;`!D8S<R.#!?27-S=65?4F5P +M;W)T4F]U=&5);F9O`&1C-S(X,%]'971);G1E<FYA;%)E<49R;VU0;V]L`&1C +M-S(X,%]#:&5C:U1A<F=E=$-H86YG90!D8S<R.#!?1&5V:6-E7U=R:71E4V5S +M0V]N=')O;$1I86<`9&,W,C@P7T-O;7!L971E4F5Q=65S=`!D8S<R.#!?4G5N +M=&EM94ES<W5E4V]F=%)E<V5T`&1C-S(X,%]$979I8V5?27-S=653;V9T4F5S +M970`9&,W,C@P7U-!5$%?2&%N9&QE1&5V:6-E4&QU9VEN`&1C-S(X,%]0<F5P +M87)E06YD4V5N9$-O;6UA;F0`9&,W,C@P7U!R945M<'1Y4$T`9&,W,C@P7U-# +M4TE?36%K94-A8VAE0V]M;6%N9`!D8S<R.#!?0V]M<&QE=&5297%U97-T06YD +M4VQO=`!D8S<R.#!?1$E30U]'971.96=O=&EA=&5D3&EN:U)A=&4`9&,W,C@P +M7T9I;F12=6YN:6YG4F5Q0GE486<`9&,W,C@P7W-E=%]F86EL7VQE9',`9&,W +M,C@P7T9I;F1&<F5E4TU00V]N=&5X=`!D8S<R.#!?4T%37T1E=FEC95-T871E +M36%C:&EN90!D8S<R.#!?1FEN9%1G=$YO`&1C-S(X,%])<W-U95]297!O<G1' +M96YE<F%L`&1C-S(X,%]#86QC=6QA=&52;W5T94EN9&5X`&1C-S(X,%]M=E]R +M97-E=%]X;70`9&,W,C@P7TU67T-20P!D8S<R.#!?4T-325]!5$%?4F5A9$-A +M<&%C:71Y5')A;G-L871I;VX`9&,W,C@P7TU67U)E;6]V951A<F=E=$E$`&1C +M-S(X,%]3051!7U!-7T5R<F]R2&%N9&QI;F<`9&,W,C@P7U5P9&%T95-T871U +M<U9S4V5S0V]N=')O;$)U9F9E<@!D8S<R.#!?0V]R95]'9713=7!P;W)T961# +M;W5N=',`9&,W,C@P7TU67U-E=$Q"06%N9%-E8W1O<D-O=6YT`&1C-S(X,%]$ +M979I8V5?36%K94UO9&5396QE8W1297%U97-T`&1C-S(X,%]'971/;F5#;VUM +M86YD4VQO=`!D8S<R.#!?4T=024]?4F5A9%)E9VES=&5R`&1C-S(X,%]%>'!A +M;F1E<E]335!297%U97-T7U)E<&]R=%!(65-!5$$`9&,W,C@P7U!O<G1?2&%N +M9&QE4&QU9VEN`&1C-S(X,%]#;W)E7U)E<51I;65O=70`9&,W,C@P7VUO9&50 +M86=E0G5F`&1C-S(X,%]2=6YT:6UE27-S=65296%D3&]G17AT`&1C-S(X,%]3 +M0U-)7T%405]5<'!E<E=O<F0`9&,W,C@P7T9R965#;W)E0V]N=&5X=%1O4&]O +M;`!D8S<R.#!?4T537TEN=&5R;F%L4F5Q0V%L;&)A8VL`9&,W,C@P7U-!5$%? +M17)R;W)(86YD;&EN9P!D8S<R.#!?1V5T4$U&<F]M4&]O;`!D8S<R.#!?1&5T +M96-T4&]R=%1Y<&4`9&,W,C@P7T1E=FEC95]-86ME36]D95-E;G-E4F5Q=65S +M=`!D8S<R.#!?4T-325]!5$%?1FEL;$Q"04-D8C$P`&1C-S(X,%]?7V-A;F-E +M;%]T:6UE<@!D8S<R.#!?4T%405]0;W)T4F5S970`9&,W,C@P7V]D:6Y?<V5T +M7VED;&5?<W1A;F1B>0!D8S<R.#!?17AP86YD97)?4TU04F5Q=65S=%]$:7-C +M;W9E<@!D8S<R.#!?5&%G7T=E=$]N90!D8S<R.#!?4T%405]0<F5P87)E0V]M +M;6%N9$AE861E<@!D8S<R.#!?0V%T96=O<GE?0T1"7U1Y<&4`9&,W,C@P7T9R +M965);G1E<FYA;%)E<51O4&]O;`!D8S<R.#!?1V5T4T%405-C<F%T8VA&<F]M +M4&]O;`!3=V%P2'!T365T858S`&QD;5]S<&EN=7!?=F1E=@!R87=?8VAE8VM? +M9&ES:U]D97-C<FEP=&]R`&QD;5]C:&5C:U]A<G)A>0!L9&U?<F5C:&5C:U]A +M;&P`=F1E=E]C;&%S<U]L:7-T`')A=U]I9&QE7W1I;65R7W)E<V5T`&QD;5]D +M96QE=&5?<&%R=&ET:6]N`&QD;5]S>6YC7V-H86YG961?87)R87ES`&=R96)U +M:6QD;VYE<G)O<@!L9&U?<75E=65?979E;G0`=')A;G-F;W)M7VYE961E9`!L +M9&U?8VAE8VM?=')A;G-F;W)M`&QD;5]F:7AU<%]A<G)A>5]S=&%T90!C86QC +M7W)E8G5I;&1?<')O9W)E<W,`=F)U<U]E>'1?<VEZ90!S971?=')A;G-F;W)M +M7W-T97!?:6YF;P!L9&U?:61L95]T:6UE<@!L9&U?9FEN9%]V9&5V7W)A=P!L +M9&U?<F5P<F]B95]D979I8V4`8V%L8U]T<F%N<V9O<FU?<')O9W)E<W,`;&1M +M7V9I;F1?=F1E=E]C;&%S<P!L9&U?86QL;V-?<&%R=&ET:6]N`&QD;5]I;FET +M7V1I<VL`<F5F<F5S:%]R87=?9&5V7VEN9F\`7V1E;&5T95]R87=?<&%R=`!R +M87=?<F5A9%]W<FET95]S96-T;W)S`&=I9&QE<W1A;F1B>71I;65O=70`<F%W +M7V-H96-K7V%R<F%Y7V1E<V-R:7!T;W(`;&1M7V-R96%T95]V9&5V7W)A=P!U +M;G!L=6=?<F%W7W9D978`0VAE8VM3=6T`8V]M<&%R95]S;&]T7W-E<5]B>5]P +M8VEA9&1R`&QD;5]A9&1?9&ES:U]T;U]A<G)A>0!L9&U?<WEN8U]D:7-K7VEN +M9F\`9V5T7V)I=',`4W=A<$AP=$UE=&%6-`!R87=?8V]N=F5R=%]S<&%R95]T +M;U]L96=A8WD`9DYO=&EF>4=520!L9&U?9FQU<VA?86QL7W1A<F=E=',`;&1M +M7W-T87)T7W)E8G5I;&0`;&1M7W-P:6YD;W=N7V%L;%]R87=D979S`%]?;&1M +M7V9I;FES:%]C;60`241?5$]?5D1%5@!?7W9D979?<75E=65?8VUD`')A=U]I +M9&QE7W1I;65R7V-H96-K`&=E=%]S=')I<%]I;F9O`&QD;5]R97-U;65?861A +M<'1E<@!H<'1N<E]L9&U?<F5G:7-T97)?:&EM7U)?-E\U-5\W-5\T-E\V-`!H +M<'1N<E]G1VQO8F%L3F-Q1FQA9P!H<'1N<E]O<U]R97%U97-T7W1I;65R`&AP +M=&YR7V1M87!O;VQ?9V5T7W!A9V4`:'!T;G)?;W-?9V5T7W-T86UP`&AP=&YR +M7VQD;5]S=7-P96YD`&AP=&YR7VQD;5]I9&QE`&AP=&YR7VQD;5]G971?;65M +M7VEN9F\`:'!T;G)?;&1M7W)E;6]V95]T:6UE<@!H<'1N<E]P8VEC9F=?<F5A +M9%]D=V]R9`!H<'1N<E]D;6%P;V]L7VUA:V5?;W)D97(`:'!T;G)?;&1M7V=E +M=%]V8G5S7V5X=`!H<'1N<E]L9&U?<F5L96%S95]V9&5V`&AP=&YR7V9R965L +M:7-T7W)E<V5R=F5?9&UA`&AP=&YR7VQD;5]I;G1R`&UE;6-P>0!H<'1N<E]L +M9&U?;VY?=&EM97(`:'!T;G)?;&1M7V=E=%]C;61?<VEZ90!H<'1N<E]L9&U? +M9G)E95]C;61S`&AP=&YR7VQD;5]C<F5A=&5?=F1E=@!H<'1N<E]L9&U?861D +M7W-P87)E7W1O7V%R<F%Y`&AP=&YR7V=R96)U:6QD<')I;W)I='D`:'!T;G)? +M;&1M7W-Y;F-?87)R87E?:6YF;P!H<'1N<E]O<U]M87!?<&-I7V)A<@!H<'1N +M<E]?7VQD;5]A;&QO8U]C;60`:'!T;G)?:6YI=%]M;V1U;&5?=F1E=E]R87<` +M:'!T;G)?;&1M7W-E=%]A=71O<F5B=6EL9`!H<'1N<E]?7V1U;6UY7W)E9P!H +M<'1N<E]D;6%P;V]L7V%C=&EV90!H<'1N<E]V8G5S7VQI<W0`:'!T;G)?;&1M +M7W%U975E7W9B=7-?9'!C`&AP=&YR7VQD;5]R97-E=%]V8G5S`&AP=&YR7V=3 +M1U!)3U!A<G13=7!P;W)T`&AP=&YR7VEN:71?;6]D=6QE7VAI;5]R-S4P`&AP +M=&YR7VQD;5]R96QE87-E7VQO8VL`:'!T;G)?;W-?=6YM87!?<&-I7V)A<@!H +M<'1N<E]L9&U?<VAU=&1O=VX`:'!T;G)?:&EM7VQI<W0`:'!T;G)?;&1M7W)E +M<75E<W1?=&EM97(`:'!T;G)?;&1M7W)E<W5M90!H<'1N<E]L9&U?9V5T7V1E +M=FEC95]I9`!H<'1N<E]O<U]S8VAE9'5L95]T87-K`&AP=&YR7VQD;5]I;V-T +M;`!H<'1N<E]G4W!I;G5P3VYE1&5V16%C:%1I;64`:'!T;G)?9G)E96QI<W1? +M<'5T`&AP=&YR7V]S7W-T86QL97AE8P!H<'1N<E]G7VQE9V%C>5]M;V1E`&AP +M=&YR7VQD;5]A;&QO8U]C;61S7U)?-E\U-5\W-5\T-E\V-`!H<'1N<E]L9&U? +M<G5N`&AP=&YR7VEN:71?;6]D=6QE7VAI;5]D8S<R.#``:'!T;G)?;&1M7V9R +M965?8VUD<U]T;U]L:7-T`&AP=&YR7V]S7VUA>%]C86-H95]S:7IE`&AP=&YR +M7W9D979?<75E=65?8VUD`&AP=&YR7V]S7V=E=%]V8G5S7W-E<0!H<'1N<E]L +M9&U?<WEN8U]A<G)A>5]S=&%M<`!H<'1N<E]L9&U?<75E=65?8VUD`&AP=&YR +M7V]S7W!R:6YT:P!H<'1N<E]F<F5E;&ES=%]R97-E<G9E`&AP=&YR7V1M87!O +M;VQ?<'5T7W!A9V4`:'!T;G)?9G)E96QI<W1?9V5T`&AP=&YR7VQD;5]U;G)E +M9VES=&5R7V1E=FEC90!H<'1N<E]L9&U?<F5G:7-T97)?861A<'1E<@!H<'1N +M<E]G875T;W)E8G5I;&0`:'!T;G)?;&1M7V=E=%]V8G5S7W-I>F4`:'!T;G)? +M9&5L87E?8F5T=V5E;E]S<&EN=7``:'!T;G)?;&1M7V=E;F5R:6-?;65M8F5R +M7V9A:6QE9`!H<'1N<E]D;6%P;V]L7V=E=%]P86=E7V%T`&AP=&YR7VQD;5]E +M=F5N=%]N;W1I9GD`:'!T;G)?;&1M7V-R96%T95]V8G5S`&AP=&YR7VAI;5]H +M86YD;&5?=&]?=F)U<P!H<'1N<E]F<F5E;&ES=%]G971?9&UA`&AP=&YR7VQD +M;5]G971?;F5X=%]V8G5S`&AP=&YR7V]S7W!C:5]W<FET96P`:'!T;G)?;&1M +M7V9I;F1?=&%R9V5T`&AP=&YR7V1M87!O;VQ?<F5G:7-T97)?8VQI96YT`&AP +M=&YR7VQD;5]I;FET:6%L:7IE7W9B=7-?87-Y;F,`:'!T;G)?;W-?<75E<GE? +M=&EM90!H<'1N<E]O<U]Q=65R>5]R96UO=F5?9&5V:6-E`&AP=&YR7VQD;5]R +M96=I<W1E<E]D979I8V4`:'!T;G)?;W-?<&-I7W)E861L`&AP=&YR7VQD;5]A +M8W%U:7)E7VQO8VL`:'!T;G)?;W-?<F5V86QI9&%T95]D979I8V4`:'!T;G)? +M9&UA<&]O;%]I;FET`&AP=&YR7VQD;5]F:6YI<VA?8VUD`&AP=&YR7VQD;5]I +M9&5?9FEX<W1R:6YG`&AP=&YR7V1M87!O;VQ?;6%X7V-L87-S7W!A9V5S`&AP +M=&YR7VQD;5]R96=I<W1E<E]V9&5V7V-L87-S7U)?-E\U-5\W-5\T-E\V-`!H +M<'1N<E]N=6U?9')I=F5S7W!E<E]S<&EN=7``:'!T;G)?;&1M7W)E;&5A<V5? +M=F)U<P!H<'1N<E]L9&U?<75E=65?=&%S:P!H<'1N<E]L9&U?86QL;V-?8VUD +M<U]F<F]M7VQI<W0`:'!T;G)?9G)E96QI<W1?<'5T7V1M80!H<'1N<E]L9&U? +M=&EM97)?<')O8F5?9&5V:6-E`&AP=&YR7VQD;5]F:6YD7W-T86UP`&AP=&YR +M7VQD;5]C:&5C:U]A<G)A>5]O;FQI;F4`:'!T;G)?9U!R;V)E26Y);FET:6%L +M:7II;F<`:'!T;G)?;&]G7W-E8W1O<E]R97!A:7(``'D``````````@```(H` +M``#\_________Y(``````````@```),```#\_________Z<``````````@`` +M`"P```#\_________S4!````````"P````$````P`````````$T!```````` +M`@```.P```#\_________V,!`````````@```*X```#\_________VX!```` +M`````@```#X```#\_________X8!`````````@```*0"``#\_________Y$! +M`````````@```$(```#\_________[`!`````````@```"D```#\________ +M_[\!`````````@```%<```#\_________\H!`````````@```"P```#\____ +M_____^@!`````````@```"P```#\_________P,"`````````@```%8```#\ +M_________R`"`````````@```*````#\_________X("`````````@```.P` +M``#\_________Y8"`````````@```*X```#\_________S@%`````````@`` +M`$X```#\_________[H'````````"P````,``````````````%L(```````` +M"P````4``````````````&4(`````````@```*\"``#\_________Z`(```` +M`````@```(8"``#\_________X`)`````````@```)("``#\_________ZT) +M`````````@```)("``#\_________PT*`````````@```)("``#\________ +M_X\*`````````@```)("``#\_________\D*`````````@```)("``#\____ +M_____RX+`````````@```*0"``#\_________VD+`````````@```*0"``#\ +M_________[<+`````````@```*0"``#\__________(+`````````@```*0" +M``#\_________T@,`````````@```!$!``#\_________U(,`````````@`` +M`*0"``#\_________UP,`````````@```&<```#\_________S<-```````` +M`@```)("``#\_________U0-`````````@```)("``#\_________V,-```` +M`````@```*0"``#\_________W\-`````````@```)("``#\_________YP- +M`````````@```)("``#\_________\H-`````````@```)("``#\________ +M_]0-`````````@```)("``#\__________P-`````````@```*0"``#\____ +M_____PD.`````````@```)("``#\_________S$.`````````@```*0"``#\ +M_________SX.`````````@```)("``#\_________V\.`````````@```)(" +M``#\_________Z`.`````````@```)("``#\_________P4/`````````@`` +M`)("``#\_________R4/`````````@```)("``#\_________TP/```````` +M`@```)("``#\_________VP/`````````@```)("``#\_________YP/```` +M`````@```)("``#\_________Z8/`````````@```)("``#\_________](/ +M`````````@```*0"``#\_________^(/`````````@```)("``#\________ +M_PH0`````````@```*0"``#\_________QH0`````````@```)("``#\____ +M_____R02`````````@```)("``#\_________VP2`````````@```-,```#\ +M_________Y@2`````````@```-,```#\_________P83`````````@```"X` +M``#\_________V03`````````@```'\"``#\_________W`3`````````@`` +M`/8```#\_________XD3`````````@```&@```#\_________R\4```````` +M`@```"X```#\_________UX4`````````@```!@```#\_________V\4```` +M`````@```+(```#\_________XP4````````"P````$!`````````````)L4 +M````````"P````4```!8`````````*44`````````@```*\"``#\________ +M_[H4`````````@```+H"``#\_________\\4`````````@```+H"``#\____ +M_____^<4`````````@```#H```#\_________P@5`````````@```)("``#\ +M__________P5````````"P```)4```````````````$6`````````@```,(` +M``#\_________^T6`````````@```($```#\__________@6`````````@`` +M`"P```#\_________^X7`````````@```+P```#\_________V$;```````` +M`@```/0```#\_________]D;`````````@```.````#\_________QP<```` +M`````@```+P```#\_________[P<````````"P````,`````!````````-4< +M`````````@```!L```#\_________P<=`````````@```!L```#\________ +M_S<=`````````@```!L```#\_________V,=`````````@```!L```#\____ +M_____YH=`````````@```$T```#\_________^8=`````````@````D!``#\ +M_________W@>`````````@```)\```#\_________[<>`````````@```!0` +M``#\_________^$>`````````@```*0"``#\_________SLA`````````@`` +M`*(```#\_________THA`````````@```'@```#\_________P$B```````` +M`@```/P```#\_________WLB`````````@```,$```#\_________Y@B```` +M`````@```/P```#\_________[PC`````````@```(0```#\_________\\C +M`````````@````(!``#\_________STD`````````@```(0```#\________ +M_VDD`````````@````(!``#\_________P(F`````````@```$0```#\____ +M_____^HF`````````@```(8"``#\_________P0G````````"P````,```!0 +M!````````)<G`````````@```!,```#\_________Z8G`````````@```!,` +M``#\_________R,H`````````@```(0```#\_________T\H`````````@`` +M``(!``#\_________[XH`````````@````<!``#\__________(H```````` +M`@```+````#\_________PLI`````````@````<!``#\_________QHI```` +M`````@````\!``#\_________S,I`````````@````<!``#\_________X,I +M`````````@```*0```#\_________Y@I````````"P````4```!X```````` +M`*(I`````````@```*\"``#\_________Q0J`````````@```&@```#\____ +M_____R8J`````````@```&\```#\_________\(J`````````@```)$```#\ +M_________S\K`````````@```)$```#\_________T\K`````````@```"0` +M``#\_________WDK`````````@```)$```#\_________Y<K`````````@`` +M`-X```#\_________\0K`````````@```$\```#\_________X,L```````` +M`@```'$```#\_________Z8L`````````@```-X```#\_________\\L```` +M`````@```)H```#\__________8L`````````@```)$```#\__________XL +M`````````@```)H```#\_________R,M`````````@```-X```#\________ +M_XDM`````````@```#L```#\_________]<M`````````@```%4```#\____ +M______LM`````````@```&@```#\_________S(N`````````@```+H"``#\ +M_________T8N`````````@```#L```#\_________V0N`````````@```$(` +M``#\_________VXN`````````@```*0"``#\_________[TN`````````@`` +M`+<```#\_________\0N`````````@```.X```#\_________]HN```````` +M"P````8``````````````.0N`````````@```*\"``#\_________QLO```` +M`````@```#L```#\_________RXO`````````@```%@```#\_________S8O +M`````````@```)H```#\_________\<O`````````@```)("``#\________ +M__,O`````````@```)("``#\_________RPP`````````@```)("``#\____ +M_____VHP````````"P````4```"H`````````'0P`````````@```*\"``#\ +M_________[`P`````````@```+T```#\_________P8Q`````````@```+T` +M``#\_________QLQ`````````@```+\```#\_________R8Q`````````@`` +M`'$```#\_________]@Q`````````@```-L```#\__________\Q```````` +M`@```-X```#\_________S0R`````````@```&@```#\_________](R```` +M`````@```-L```#\__________0R`````````@```-X```#\_________S<S +M`````````@```&T```#\_________V@T`````````@```)("``#\________ +M_X8T`````````@```)("``#\_________Z,T`````````@```)("``#\____ +M_____P@U`````````@```)("``#\_________R\U`````````@```)("``#\ +M_________YLU`````````@```-P```#\__________@U`````````@```)(" +M``#\_________QLV`````````@```)("``#\_________SXV`````````@`` +M`)("``#\_________T8V`````````@```&0```#\_________S<W```````` +M`@```!(!``#\_________UHW`````````@```(8"``#\_________T(X```` +M`````@```(8"``#\_________[`X`````````@```(8"``#\_________^0X +M`````````@```)("``#\_________Q\Y`````````@```)("``#\________ +M_W,Y`````````@```)("``#\_________U$Z`````````@```(8"``#\____ +M_____Z4[`````````@```(8"``#\_________RT\`````````@```(8"``#\ +M_________T`\````````"P````,```"P"0```````-4\`````````@```*0" +M``#\_________U,]`````````@```)("``#\_________W<]`````````@`` +M`)("``#\_________Y@]````````"P````8````>`````````*(]```````` +M`@```*\"``#\_________ZP]`````````@```!`!``#\_________\P]```` +M`````@```)("``#\_________PP^`````````@```)("``#\_________YT^ +M`````````@```)("``#\_________R(_`````````@```!`!``#\________ +M_S$_`````````@```!`!``#\_________WP_````````"P````4```#X```` +M`````(8_`````````@```*\"``#\_________^\_````````"P````8````Y +M`````````/D_`````````@```*\"``#\_________PM``````````@```"$` +M``#\_________S5`````````"P````4````X`0```````#]``````````@`` +M`*\"``#\_________[)`````````"P````4```!@`0```````+Q````````` +M`@```*\"``#\_________UY!`````````@```-L```#\_________W=!```` +M`````@```-X```#\_________RI"`````````@```#4```#\_________XY# +M`````````@```"$```#\_________YY#`````````@```"X```#\________ +M_^)#`````````@```'````#\_________TE$`````````@```-L```#\____ +M_____U1$`````````@```#4```#\_________VU$`````````@```-X```#\ +M_________\=$`````````@```&@```#\_________T!%`````````@```&X` +M``#\_________W=%`````````@```&@```#\_________QM&`````````@`` +M`)("``#\_________TI&`````````@```&@```#\_________W]&```````` +M`@```"X```#\_________Y!&`````````@```)H```#\_________]E&```` +M`````@```)("``#\_________P)'`````````@```)("``#\_________S-' +M`````````@```)("``#\_________TA'`````````@```*D```#\________ +M_[Q'`````````@```)("``#\_________T%(`````````@```)("``#\____ +M_____VQ(`````````@```)("``#\_________WY(`````````@```(\```#\ +M_________\%(`````````@```)("``#\_________^9(`````````@```)(" +M``#\_________V-)`````````@```)("``#\_________XQ)`````````@`` +M`)("``#\_________[A)`````````@```'\"``#\_________]E)```````` +M`@```/H```#\_________QE*`````````@```&@```#\_________T]*```` +M`````@```+H"``#\_________V-*`````````@```#L```#\_________X%* +M`````````@```(4```#\_________XM*`````````@```*0"``#\________ +M_[M*````````"P````$````@8````````.E*`````````@```)T"``#\____ +M_____Q-+`````````@```)("``#\_________RA+`````````@```)("``#\ +M_________U!+`````````@```)("``#\_________V5+`````````@```)(" +M``#\_________Y9+`````````@```)("``#\_________\U+`````````@`` +M`)("``#\_________PM,`````````@```)("``#\_________S-,```````` +M`@```)("``#\_________VA,`````````@```)("``#\_________Y],```` +M`````@```)("``#\_________P9-`````````@```)("``#\_________RM- +M`````````@```)("``#\_________U!-`````````@```)("``#\________ +M_W5-`````````@```)("``#\_________[1-`````````@```'\"``#\____ +M_____^Y-`````````@```+H"``#\_________P).`````````@```#L```#\ +M_________Q1.`````````@```$(```#\_________QY.`````````@```*0" +M``#\_________TM.````````"P```.X``````````````&-.`````````@`` +M`)T"``#\_________XY.`````````@```)("``#\_________\!.```````` +M`@```)("``#\__________E.`````````@```)("``#\_________R5/```` +M`````@```)("``#\_________VI/`````````@```'\"``#\_________X1/ +M`````````@```&@```#\_________[1/`````````@```+H"``#\________ +M_])/````````"P````X!`````````````.1/`````````@```)T"``#\____ +M_____Q-0`````````@```)("``#\_________SE0`````````@```)("``#\ +M_________U=0`````````@```*0"``#\_________VQ0`````````@```)(" +M``#\_________Y)0`````````@```)("``#\_________[A0`````````@`` +M`)("``#\_________]90`````````@```*0"``#\_________^M0```````` +M`@```)("``#\_________Q!1`````````@```)("``#\_________]91```` +M`````@```)("``#\__________M1`````````@```*0"``#\_________RM2 +M`````````@```)("``#\_________U)2`````````@```*0"``#\________ +M_X52`````````@```)("``#\_________ZQ2`````````@```*0"``#\____ +M______)2`````````@```,4```#\_________PU3`````````@```(8```#\ +M_________QE3`````````@```!(```#\_________TM3`````````@```$`` +M``#\_________W]3`````````@```!<```#\_________ZQ3`````````@`` +M`!(```#\_________Y)4`````````@```*0"``#\_________[E4```````` +M`@```)("``#\_________]A4`````````@```*0"``#\__________M4```` +M`````@```)("``#\_________R=5`````````@```*0"``#\_________TY5 +M`````````@```)("``#\_________W)5`````````@```*0"``#\________ +M_Y95`````````@```)("``#\_________[=5`````````@```&@```#\____ +M_____S16`````````@```#L```#\_________V]6`````````@```#L```#\ +M_________WM6`````````@```!(```#\_________[U6`````````@```&@` +M``#\_________^)6`````````@```&@```#\_________P-7`````````@`` +M`'\"``#\_________R17`````````@```$(```#\_________RY7```````` +M`@```*0"``#\_________^97`````````@```"X```#\_________PY8```` +M`````@```!@```#\_________Q]8`````````@```+(```#\_________S)8 +M````````"P````8```!&`````````#Q8`````````@```*\"``#\________ +M_U%8`````````@```+H"``#\_________V98`````````@```+H"``#\____ +M_____X-8`````````@```#H```#\_________Z)8`````````@```(L```#\ +M_________\U8````````"P````$!`````````````-58`````````@```&@` +M``#\__________I8`````````@```$(```#\_________P19`````````@`` +M`*0"``#\_________SM9`````````@```!@```#\_________TQ9```````` +M`@```+(```#\_________WA9````````"P````4```!8`````````()9```` +M`````@```*\"``#\_________Y=9`````````@```+H"``#\_________ZQ9 +M`````````@```+H"``#\_________\19`````````@```#H```#\________ +M_]E9`````````@```$````#\_________UI:`````````@```)("``#\____ +M_____WQ:`````````@```*0"``#\_________Y]:`````````@```)("``#\ +M_________\):`````````@```)("``#\_________^1:`````````@```*0" +M``#\_________PA;`````````@```)("``#\_________Y);`````````@`` +M`/H```#\_________YY;`````````@```'T```#\_________^5;```````` +M`@```'4```#\__________);`````````@```/L```#\_________RA<```` +M`````@```*0"``#\_________T-<`````````@```)("``#\_________V)< +M`````````@```)("``#\_________X%<`````````@```!(```#\________ +M_XE<`````````@````T!``#\_________[%<`````````@```)T```#\____ +M_____SA=`````````@````X!``#\_________T5=`````````@```&@```#\ +M_________]!=`````````@```",!``#\_________P1>`````````@```+<` +M``#\_________SU>`````````@```,P```#\_________U5>`````````@`` +M`+H"``#\_________VU>`````````@```+H"``#\_________YI>```````` +M`@```*0"``#\_________[5>`````````@```)("``#\_________])>```` +M`````@```)("``#\__________%>`````````@```!(```#\__________E> +M`````````@````T!``#\_________S]?`````````@```,4```#\________ +M_X1?`````````@```&@```#\_________P-@`````````@```)T```#\____ +M_____Q)@`````````@```"$!``#\_________XM@`````````@```)("``#\ +M_________[I@`````````@```)("``#\_________])@`````````@```',` +M``#\_________]]@`````````@```/L```#\_________TEA`````````@`` +M`'<```#\_________VQA`````````@```-X```#\_________Y1A```````` +M`@```)H```#\_________[AA`````````@```)$```#\_________\!A```` +M`````@```)H```#\_________PEB`````````@```-X```#\_________UIB +M`````````@```#L```#\_________VEB`````````@```&@```#\________ +M_YAB`````````@```+H"``#\_________ZQB`````````@```#L```#\____ +M_____\1B`````````@```$(```#\_________\YB`````````@```*0"``#\ +M_________^YB`````````@```.X```#\_________QUC`````````@```-X` +M``#\_________T]C`````````@```#L```#\_________V9C`````````@`` +M`&@```#\_________X)C`````````@```!@```#\_________Y-C```````` +M`@```+(```#\_________ZAC`````````@```+H"``#\_________[UC```` +M`````@```+H"``#\_________]!C`````````@```#H```#\_________^)C +M`````````@```/8```#\__________MC`````````@```)("``#\________ +M_U5D`````````@```!(```#\_________V!D`````````@```$````#\____ +M______9D`````````@```)("``#\_________Q%E`````````@```"$```#\ +M_________R%E`````````@```"X```#\_________T1E`````````@```"$` +M``#\_________TQE`````````@```"D!``#\_________V5E````````"P`` +M``,````0"@```````'QE`````````@```"L!``#\_________YAE```````` +M`@```"L!``#\_________[1E`````````@```#L```#\_________]=E```` +M`````@```%4```#\_________^YE`````````@```*,```#\_________Q%F +M`````````@```#L```#\_________R]F`````````@```%4```#\________ +M_T9F`````````@```#L```#\_________UAF`````````@```*,```#\____ +M_____W-F`````````@```#L```#\_________XAF`````````@```#L```#\ +M_________[QF`````````@```$(```#\_________\9F`````````@```*0" +M``#\_________SEG`````````@```*8```#\_________U-G`````````@`` +M`*P```#\_________VQG`````````@```!@```#\_________WUG```````` +M`@```+(```#\_________Y!G````````"P````8```!&`````````)IG```` +M`````@```*\"``#\_________[!G`````````@```+H"``#\_________\9G +M`````````@```+H"``#\_________]EG`````````@```#H```#\________ +M_P1H`````````@```&@```#\_________SMH`````````@```!\!``#\____ +M_____Y%H`````````@```'8```#\_________[-H`````````@```&@```#\ +M_________P1I````````"P````4```"X`0````````YI`````````@```*\" +M``#\_________S)I`````````@```"$```#\_________V)I````````"P`` +M``4```#H`0```````&QI`````````@```*\"``#\_________^AI```````` +M"P````4```!@`0```````/)I`````````@```*\"``#\_________R5J```` +M````"P````4```"X`0```````"]J`````````@```*\"``#\_________\1J +M`````````@```*D```#\_________]-K`````````@```-L```#\________ +M_Q)L`````````@```.T```#\_________SML````````"P````4```"X`0`` +M`````$5L`````````@```*\"``#\_________W)M`````````@```(8"``#\ +M_________YEM`````````@```)("``#\_________]!M`````````@```)(" +M``#\_________QYN`````````@```)("``#\_________X=N````````"P`` +M``$!`````````````*%N````````"P````4````8`@```````*MN```````` +M`@```*\"``#\_________^QN````````"P````4```!0`@```````/9N```` +M`````@```*\"``#\_________REO````````"P````4```"0`@```````#-O +M`````````@```*\"``#\_________TMO````````"P````4```#0`@`````` +M`%5O`````````@```*\"``#\_________WIO````````"P````8```!<```` +M`````(1O`````````@```*\"``#\_________\%O````````"P````4````` +M`P```````,MO`````````@```*\"``#\__________]O````````"P````8` +M``!X``````````EP`````````@```*\"``#\_________RQP````````"P`` +M``8```"/`````````#9P`````````@```*\"``#\_________T%P```````` +M"P````8```"K`````````$MP`````````@```*\"``#\_________YMP```` +M`````@````L!``#\_________^IP`````````@```)("``#\_________PYQ +M`````````@```)("``#\_________S!Q`````````@```)("``#\________ +M_U1Q`````````@```)("``#\_________V-Q````````"P````8```"\```` +M`````&UQ`````````@```*\"``#\_________PAR`````````@```)("``#\ +M_________S-R````````"P````8```#9`````````#UR`````````@```*\" +M``#\_________WYR````````"P````4````X`P```````(AR`````````@`` +M`*\"``#\_________YER`````````@```&0```#\_________[!R```````` +M`@```)("``#\_________UAS`````````@```)H```#\_________W5S```` +M`````@```$P```#\__________5S`````````@```"\```#\_________PET +M`````````@```,````#\_________R]T`````````@```+`"``#\________ +M_U%T`````````@```+`"``#\_________W)T`````````@```+`"``#\____ +M_____Y!T`````````@```+`"``#\_________[9T`````````@```+`"``#\ +M_________^%T`````````@```+`"``#\__________MT`````````@```+`" +M``#\_________Q5U`````````@```+`"``#\_________S-U`````````@`` +M`+`"``#\_________TUU`````````@```+`"``#\_________V]U```````` +M`@```+`"``#\_________Y%U`````````@```+`"``#\_________ZYU```` +M`````@```+`"``#\_________\MU`````````@```+`"``#\_________^AU +M`````````@```+`"``#\_________P5V`````````@```+`"``#\________ +M_R%V`````````@```+`"``#\_________T-V`````````@```+`"``#\____ +M_____UQV`````````@```+`"``#\_________X!V`````````@```(0"``#\ +M_________Z!V`````````@```(0"``#\_________\=V`````````@```(0" +M``#\_________^MV`````````@```(0"``#\_________P]W`````````@`` +M`(0"``#\_________S)W`````````@```(0"``#\_________U)W```````` +M`@```(0"``#\_________WQW`````````@```(0"``#\_________\=W```` +M`````@```&@```#\_________]=W`````````@```(H```#\_________U!X +M````````"P````$````@%@```````%YX`````````@```.P```#\________ +M_VIX`````````@```#X```#\_________SEY`````````@```&@```#\____ +M_____VYY`````````@```+H"``#\_________X1Y`````````@```#L```#\ +M_________Y5Y`````````@```$(```#\_________Y]Y`````````@```*0" +M``#\_________]!Y`````````@```%$```#\_________VE[`````````@`` +M`"\```#\_________^Q[`````````@```+("``#\_________RA\```````` +M`@```+("``#\_________V-\`````````@```+("``#\_________YI\```` +M`````@```+("``#\_________])\`````````@```+("``#\_________^5\ +M`````````@```+("``#\__________M\`````````@```+("``#\________ +M_V%]`````````@```+("``#\_________ZY]`````````@```+("``#\____ +M______Y]`````````@```+("``#\_________T%^`````````@```+("``#\ +M_________X]^`````````@```+("``#\_________^=^`````````@```+(" +M``#\_________RA_`````````@```+("``#\_________U%_`````````@`` +M`,T```#\_________UU_`````````@```+("``#\_________X9_```````` +M`@```!$```#\_________Y)_`````````@```+("``#\_________[M_```` +M`````@```!$```#\_________\=_`````````@```+("``#\__________!_ +M`````````@```!$```#\__________Q_`````````@```+("``#\________ +M_R6``````````@```!$```#\_________S&``````````@```+("``#\____ +M_____XV``````````@```-0```#\_________YJ#`````````@```+T"``#\ +M_________[2#`````````@```+T"``#\_________\Z#`````````@```+T" +M``#\_________^B#`````````@```+T"``#\_________P*$`````````@`` +M`+T"``#\_________QR$`````````@```+T"``#\_________T2$```````` +M`@```&@```#\_________YF$`````````@```+T"``#\_________[J$```` +M`````@```&@```#\_________PN%`````````@```+T"``#\_________R^% +M`````````@```&@```#\_________Z*%`````````@```&H```#\________ +M_P&&`````````@```)("``#\_________S2&`````````@```)("``#\____ +M_____TR&`````````@```/L```#\_________Y>&`````````@```#L```#\ +M_________ZB&`````````@```$(```#\_________[*&`````````@```*0" +M``#\_________]J&`````````@```!@```#\_________^^&`````````@`` +M`+H"``#\_________P2'`````````@```+H"``#\_________QN'```````` +M`@```#H```#\_________RN'`````````@```)("``#\_________YJ'```` +M`````@```-,```#\_________\:'`````````@```+H"``#\_________S.( +M`````````@```+\```#\_________V2(`````````@```&@```#\________ +M_[V(````````"P````$!`````````````,R(````````"P````4```!@`P`` +M`````-:(`````````@```*\"``#\_________QJ)````````"P````4```"0 +M`P```````"2)`````````@```*\"``#\_________U>)`````````@```"$` +M``#\_________X>)````````"P````4```#H`0```````)&)`````````@`` +M`*\"``#\_________PV*````````"P````4```!@`0```````!>*```````` +M`@```*\"``#\_________SZ*````````"P````8```!<`````````$B*```` +M`````@```*\"``#\_________XJ*````````"P````4``````P```````)2* +M`````````@```*\"``#\_________TB+````````"P````8```#M```````` +M`%*+`````````@```*\"``#\_________UJ+`````````@```*D```#\____ +M_____VZ,`````````@```-X```#\_________YB,`````````@```-L```#\ +M_________[B,`````````@```-P```#\__________Z,`````````@```&T` +M``#\_________XR0`````````@```)X```#\__________&0`````````@`` +M`(8"``#\__________Z0`````````@```.<```#\_________W:1```````` +M`@```(8"``#\_________]Z1`````````@```(H```#\__________*1```` +M`````@```),```#\_________P62`````````@```"P```#\_________RB2 +M`````````@```(8"``#\_________WJ2````````"P```)@````````````` +M`,22`````````@```.P```#\_________]62`````````@```*X```#\____ +M_____^"2`````````@```#X```#\_________T^3`````````@```(H```#\ +M_________V.3`````````@```),```#\_________W:3`````````@```"P` +M``#\_________]J3````````"P```)@``````````````"F4`````````@`` +M`.P```#\_________SJ4`````````@```*X```#\_________T64```````` +M`@```#X```#\_________\B4`````````@```(H```#\_________]R4```` +M`````@```),```#\_________^^4`````````@```"P```#\_________PR5 +M`````````@```(8"``#\_________U"5````````"P```!\````````````` +M`'25`````````@```.P```#\_________X.5`````````@```*X```#\____ +M_____XZ5`````````@```#X```#\__________&5`````````@```)X```#\ +M_________Q^6`````````@```#@```#\_________W.6`````````@```(H` +M``#\_________X>6`````````@```),```#\_________YJ6`````````@`` +M`"P```#\_________^R6````````"P```!\```````````````V7```````` +M`@```.P```#\_________QV7`````````@```*X```#\_________RB7```` +M`````@```#X```#\_________]B7`````````@```%,```#\_________Q:8 +M`````````@```%,```#\_________U28`````````@```'0```#\________ +M_V*8`````````@```#(```#\_________Y&8`````````@```#8```#\____ +M_____ZJ8`````````@```#(```#\_________]B8`````````@```#(```#\ +M_________ZZ9`````````@```*\```#\__________&9`````````@```*H` +M``#\_________RR:`````````@```#8```#\_________W.:`````````@`` +M`(H```#\_________X>:`````````@```),```#\_________YJ:```````` +M`@```"P```#\_________^V:````````"P```/(```````````````Z;```` +M`````@```.P```#\_________QV;`````````@```*X```#\_________RB; +M`````````@```#X```#\_________R^<`````````@```"D```#\________ +M_SJ<`````````@```"P```#\_________VF<`````````@```(8"``#\____ +M_____Z^<`````````@```"D```#\_________[J<`````````@```"P```#\ +M_________V&=`````````@```!4!``#\_________W2=`````````@```"D` +M``#\_________W^=`````````@```"P```#\_________YF=`````````@`` +M`'\"``#\_________ZZ=````````"P```#,``````````````,*=```````` +M`@```)T"``#\_________SZ>`````````@```*@```#\_________RV?```` +M`````@```!H!``#\_________V&?`````````@```!H!``#\_________YF? +M`````````@```#8```#\_________P>A`````````@```&8```#\________ +M_QFA`````````@```,\```#\_________RZA`````````@```"(!``#\____ +M_____T"A`````````@```!4!``#\_________UJA`````````@```'\"``#\ +M_________V^A````````"P```#,``````````````(FA`````````@```)T" +M``#\_________]6A`````````@```&@```#\_________T*B`````````@`` +M`",!``#\_________VBB`````````@```+<```#\_________XRB```````` +M`@```,P```#\__________2B`````````@```&@```#\_________R^C```` +M`````@```#8```#\_________UVC`````````@```!\!``#\_________XFC +M`````````@```"D```#\_________YBC`````````@```"P```#\________ +M_]&C`````````@```#8```#\_________XFD`````````@```)("``#\____ +M______NH`````````@```&,```#\__________VI````````"P````,```!` +M"@```````)>J`````````@```)("``#\_________\VJ`````````@```)(" +M``#\__________BJ`````````@```)("``#\_________S*K`````````@`` +M`)("``#\_________W>K`````````@```)("``#\_________ZVK```````` +M`@```)("``#\_________]BK`````````@```)("``#\_________PVL```` +M`````@```)("``#\_________\VL````````"P````,`````"P```````.FL +M````````"P````,````%"P```````/FL````````"P````,````$"P`````` +M``JM````````"P````,`````"P```````!NM`````````@```,X```#\____ +M_____ZVM`````````@```&@```#\_________]VM`````````@```&@```#\ +M_________PVN`````````@```&@```#\_________UVN`````````@```&@` +M``#\_________XVN`````````@```&@```#\_________PJO`````````@`` +M`&@```#\_________U.P`````````@```-L```#\_________Y"Q```````` +M`@```"$```#\_________].Q`````````@```/D```#\_________Q.R```` +M`````@```/D```#\_________P^S`````````@```"D```#\_________QVS +M`````````@```(,```#\_________T>T`````````@```#X```#\________ +M_W"T`````````@```.H```#\_________WRT`````````@```&,```#\____ +M_____Y6T`````````@```-X```#\_________P*U`````````@```'<```#\ +M_________VZU`````````@```'$```#\_________TBV`````````@```"P` +M``#\_________\.V`````````@```%<```#\_________\ZV`````````@`` +M`"P```#\_________P>W`````````@```&@```#\_________Q*W```````` +M`@```!T```#\_________QJW`````````@```&\```#\_________V"W```` +M`````@```(H```#\_________W"W`````````@```),```#\_________XJW +M`````````@```"P```#\_________\VW````````"P```+0````````````` +M`-BW`````````@```#X```#\_________Q.X`````````@```(H```#\____ +M_____U2X````````"P```+0``````````````%^X`````````@```#X```#\ +M_________Z^X`````````@```(H```#\_________\.X`````````@```),` +M``#\_________]:X`````````@```"P```#\_________R&Y````````"P`` +M``$````@N@```````"ZY`````````@```.P```#\_________SZY```````` +M`@```*X```#\_________TFY`````````@```#X```#\_________Y2Y```` +M`````@```(H```#\_________]2Y````````"P```*T``````````````-^Y +M`````````@```#X```#\_________^^Y`````````@```*0"``#\________ +M__NY`````````@```*0"``#\__________JZ`````````@```"D```#\____ +M_____PJ[`````````@```(,```#\_________Q6[`````````@```"P```#\ +M_________UB[`````````@```'P```#\_________WB[`````````@```"D` +M``#\_________XB[`````````@```(,```#\_________Y.[`````````@`` +M`"P```#\_________Y*\`````````@```*0"``#\_________YV\```````` +M`@```"P```#\_________\^\`````````@```'P```#\_________]N\```` +M`````@```*0"``#\_________^:\`````````@```"P```#\_________S"] +M`````````@```(H```#\_________W*]`````````@```!L```#\________ +M_X&]`````````@```"P```#\_________Y>]````````"P```+0````````` +M`````**]`````````@```#X```#\_________^:]`````````@```(H```#\ +M_________P2^`````````@```),```#\_________QZ^`````````@```"P` +M``#\_________X*^````````"P```+0``````````````).^`````````@`` +M`.P```#\_________Z6^`````````@```*X```#\_________["^```````` +M`@```#X```#\_________P._`````````@```(H```#\_________R2_```` +M`````@```),```#\_________T"_`````````@```"P```#\_________ZJ_ +M````````"P```+0``````````````+>_`````````@```.P```#\________ +M_\B_`````````@```*X```#\_________]._`````````@```#X```#\____ +M_____RK``````````@```(H```#\_________TC``````````@```),```#\ +M_________V3``````````@```"P```#\_________\+`````````"P```+0` +M`````````````-;``````````@```.P```#\_________^?``````````@`` +M`*X```#\__________+``````````@```#X```#\_________TK!```````` +M`@```(H```#\_________VC!`````````@```),```#\_________X3!```` +M`````@```"P```#\_________]K!````````"P```+0``````````````.?! +M`````````@```.P```#\__________C!`````````@```*X```#\________ +M_P/"`````````@```#X```#\_________W?"`````````@```(H```#\____ +M_____R7#````````"P````$```"`M0```````#/#`````````@```.P```#\ +M_________S[#`````````@```#X```#\_________Z'%`````````@```"L! +M``#\_________[+%`````````@```%<```#\_________PS&`````````@`` +M`&@```#\_________^;&`````````@```)$```#\_________W7'```````` +M`@```(H```#\_________Y3'`````````@```!<!``#\_________Z?'```` +M`````@```"P```#\__________S'````````"P````P!``````````````K( +M`````````@```.P```#\_________Q7(`````````@```#X```#\________ +M_W7(`````````@```(H```#\_________XG(`````````@```!<!``#\____ +M_____^#(````````"P````P!`````````````.[(`````````@```.P```#\ +M__________G(`````````@```#X```#\_________P/)`````````@```*0" +M``#\_________US)`````````@```(H```#\_________VS)`````````@`` +M`!<!``#\_________[_)````````"P````P!`````````````,W)```````` +M`@```.P```#\_________]C)`````````@```#X```#\_________R7*```` +M`````@```(H```#\_________S7*`````````@```!<!``#\_________X3* +M````````"P````P!`````````````)+*`````````@```.P```#\________ +M_YW*`````````@```#X```#\_________]3*`````````@```$T```#\____ +M_____^3*`````````@```"H```#\__________#+`````````@```$T```#\ +M_________P#,`````````@```"H```#\_________W#,`````````@```+D` +M``#\_________P/-`````````@```)<```#\_________V'-`````````@`` +M`!,!``#\_________Y#-`````````@```$T```#\_________Z#-```````` +M`@```"H```#\_________P[.`````````@```)L```#\_________W+.```` +M`````@````@!``#\_________\C.`````````@```-L```#\_________^O. +M`````````@```'<```#\__________S.`````````@````@!``#\________ +M_S//`````````@```-L```#\_________T3/`````````@````@!``#\____ +M_____V;/`````````@```'\"``#\_________XG/`````````@```'\"``#\ +M__________#/`````````@```&D```#\_________SK0`````````@```-L` +M``#\_________U+0`````````@```'$```#\_________UW0`````````@`` +M`+\```#\_________QS1`````````@```&@```#\_________R_1```````` +M`@```'8```#\_________T[1````````"P````L!`````````````&71```` +M`````@```)T"``#\__________G1`````````@```&@```#\_________PS2 +M`````````@```+\```#\_________R?2````````"P```%(````````````` +M`#[2`````````@```)T"``#\__________72`````````@```-L```#\____ +M_____P#3`````````@```#4```#\_________PO3`````````@```)$```#\ +M_________Z+3````````"P````L!`````````````+G3`````````@```)T" +M``#\_________UK4````````"P```%(``````````````''4`````````@`` +M`)T"``#\_________R36`````````@```&@```#\_________W[6```````` +M`@```($```#\_________XW6`````````@```"P```#\_________\K6```` +M`````@```%4```#\__________K6`````````@```+<```#\_________Q;7 +M`````````@```$@```#\_________T?7`````````@```&@```#\________ +M_['7`````````@```",!``#\_________\?7`````````@```($```#\____ +M_____]37`````````@```"P```#\_________T38`````````@```#L```#\ +M_________W38`````````@```$(```#\_________W[8`````````@```*0" +M``#\_________Z38`````````@```*8```#\_________[[8`````````@`` +M`*P```#\_________^W8`````````@```!@```#\__________[8```````` +M`@```+(```#\_________Q'9````````"P````8````*`0```````!O9```` +M`````@```*\"``#\_________S#9`````````@```+H"``#\_________T79 +M`````````@```+H"``#\_________XW9`````````@```#H```#\________ +M_[39`````````@```&@```#\__________+9`````````@```!\!``#\____ +M_____SC:`````````@```#L```#\_________V?:`````````@```$(```#\ +M_________W':`````````@```*0"``#\_________Y?:`````````@```*8` +M``#\_________[':`````````@```*P```#\_________\S:`````````@`` +M`!@```#\_________]W:`````````@```+(```#\__________K:```````` +M"P````$!`````````````!/;````````"P````4```#(`P```````!W;```` +M`````@```*\"``#\_________S+;`````````@```+H"``#\_________[+; +M`````````@```+H"``#\_________QS<`````````@```&@```#\________ +M_U'<`````````@```+H"``#\_________W'<`````````@```#H```#\____ +M_____\;<`````````@```(H```#\_________]K<`````````@```),```#\ +M__________3<`````````@```"P```#\_________WG=````````"P```+0` +M`````````````(K=`````````@```.P```#\_________YS=`````````@`` +M`*X```#\_________Z?=`````````@```#X```#\_________^3=```````` +M`@```$T```#\__________3=`````````@```"H```#\_________^C>```` +M`````@````@!``#\_________RG?`````````@```"H```#\_________WW? +M`````````@```&@```#\_________UKC`````````@```*@```#\________ +M_X7C`````````@```%D```#\_________POD````````"P````$```#0\``` +M`````"SD`````````@```!P```#\_________ROE````````"P````$```#0 +M\````````%_E`````````@```!P```#\_________USF````````"P````$` +M``#0\````````(_F`````````@```!P```#\__________?F````````"P`` +M``$```#0\````````"?G`````````@```!P```#\_________W?G```````` +M"P````$```#0\````````*?G`````````@```!P```#\_________W7H```` +M`````@```"````#\_________^WH`````````@````8!``#\_________\7I +M`````````@```/````#\_________V/J`````````@```&P```#\________ +M_]?J`````````@```*@```#\_________P?K`````````@```$4```#\____ +M_____R3K`````````@```%H```#\_________T7L`````````@```%D```#\ +M_________PON`````````@```+L```#\_________TWN`````````@```/`` +M``#\__________3N`````````@```&P```#\_________W7O`````````@`` +M`.@```#\_________PKP`````````@```&P```#\_________[+P```````` +M`@```&P```#\_________P3Q`````````@```%D```#\_________V[Q```` +M`````@```&P```#\_________ZKQ`````````@```&P```#\__________OQ +M`````````@```&P```#\_________SOR`````````@```&P```#\________ +M_ZWU`````````@```&P```#\_________Q#V`````````@```)("``#\____ +M_____S3V`````````@```)("``#\_________Y'W`````````@```-(```#\ +M_________]_X`````````@```)("``#\__________[X`````````@```)(" +M``#\_________QKY`````````@```"P```#\_________WGY`````````@`` +M`*0"``#\_________XGY`````````@```)("``#\_________[+Y```````` +M`@```*0"``#\_________\+Y`````````@```)("``#\_________\_Z```` +M`````@```*0"``#\_________][Z`````````@```)("``#\__________#Z +M`````````@```*0"``#\__________CZ`````````@```)("``#\________ +M_Q?[`````````@```*0"``#\_________Q_[`````````@```)("``#\____ +M_____TG[`````````@```*0"``#\_________UC[`````````@```)("``#\ +M_________VK[`````````@```*0"``#\_________W+[`````````@```)(" +M``#\_________Y'[`````````@```*0"``#\_________YG[`````````@`` +M`)("``#\_________][[`````````@```*0"``#\_________TS\```````` +M`@```*0"``#\_________V'\`````````@```$(```#\_________[[\```` +M`````@```(H```#\_________RW]````````"P```+$``````````````#3] +M````````"P```-<``````````````$?]`````````@```#X```#\________ +M_Z7]`````````@```(H```#\_________Q7^````````"P```#$````````` +M`````!W^`````````@```#X```#\_________[#^`````````@```)("``#\ +M_________][^`````````@```)("``#\_________R__`````````@```-8` +M``#\_________SS_`````````@```"T```#\_________X__`````````@`` +M`(H```#\_________^+_````````"P```#$``````````````.K_```````` +M`@```#X```#\_________X0``0```````@```)("``#\_________[(``0`` +M`````@```)("``#\__________\``0```````@```!````#\_________PP! +M`0```````@```"T```#\_________W8!`0```````@```(H```#\________ +M_\@!`0``````"P```+$``````````````,\!`0``````"P```-<````````` +M`````.(!`0```````@```#X```#\_________S@"`0```````@```(H```#\ +M_________Z,"`0``````"P````$````@-@$``````+4"`0```````@```#X` +M``#\_________^("`0``````"P```!T!`````````````'X#`0```````@`` +M`*0"``#\_________XL#`0```````@```)("``#\_________Z`#`0`````` +M`@```*0"``#\_________ZH#`0```````@```)("``#\_________VX$`0`` +M`````@```*0"``#\_________WL$`0```````@```)("``#\_________Y`$ +M`0```````@```*0"``#\_________YH$`0```````@```)("``#\________ +M_S8%`0```````@```-\```#\_________V@%`0```````@````,!``#\____ +M_____W`%`0```````@```-(```#\_________[8%`0```````@```)("``#\ +M_________]8%`0```````@```)("``#\__________(%`0```````@```)(" +M``#\_________Q\&`0```````@```)("``#\_________VT&`0```````@`` +M`/$```#\_________W4&`0```````@```!8```#\_________]L&`0`````` +M`@```*0"``#\_________^L&`0```````@```)("``#\_________Q`'`0`` +M`````@```*0"``#\_________R`'`0```````@```)("``#\_________RD* +M`0```````@```'H```#\_________]P*`0```````@```*@```#\________ +M_T8,`0```````@```*@```#\_________VD,`0```````@```*@```#\____ +M_____^(,`0```````@```"@!``#\_________P,.`0```````@```*0"``#\ +M_________RX.`0```````@```*0"``#\_________^X.`0```````@```-@` +M``#\_________P\/`0```````@```-T```#\_________R4/`0```````@`` +M``4!``#\_________S0/`0```````@````4!``#\_________[T/`0`````` +M`@```)("``#\_________^L/`0```````@```)("``#\_________Q\0`0`` +M`````@```*0"``#\_________S<0`0```````@```)("``#\_________X40 +M`0```````@```)("``#\_________^P0`0```````@```)("``#\________ +M_U\1`0```````@```)("``#\_________Q<2`0```````@```*0"``#\____ +M_____RH2`0```````@```)("``#\_________T<2`0```````@```%0```#\ +M_________U(2`0```````@```&<```#\_________V02`0```````@```*0" +M``#\_________WX2`0```````@```*0"``#\_________Y@2`0```````@`` +M`*0"``#\_________[@2`0```````@```(4```#\_________\D2`0`````` +M`@```)("``#\_________Q<3`0```````@```*0"``#\_________RH3`0`` +M`````@```)("``#\_________T<3`0```````@```%0```#\_________U(3 +M`0```````@```&<```#\_________V03`0```````@```*0"``#\________ +M_WX3`0```````@```*0"``#\_________Y@3`0```````@```*0"``#\____ +M_____[@3`0```````@```(4```#\_________\D3`0```````@```)("``#\ +M_________^T3`0```````@```*0"``#\__________@3`0```````@```!(` +M``#\_________Q84`0```````@````T!``#\_________R,4`0```````@`` +M`)("``#\_________SX4`0```````@```)("``#\_________U84`0`````` +M`@```)("``#\_________T`5`0```````@```)("``#\_________]L5`0`` +M`````@```(H```#\__________D5`0```````@```),```#\_________Q46 +M`0```````@```"P```#\_________WL6`0``````"P````$````@-@$````` +M`(@6`0```````@```.P```#\_________Y<6`0```````@```*X```#\____ +M_____Z(6`0```````@```#X```#\_________[P7`0``````"P````4```#P +M`P```````,87`0```````@```*\"``#\_________U48`0``````"P````4` +M``!`!````````%\8`0```````@```*\"``#\_________V\8`0```````@`` +M`!\!``#\_________XH8`0```````@```$D```#\_________UL9`0`````` +M`@```)P```#\_________]89`0``````"P```)4``````````````.$9`0`` +M`````@```,(```#\__________D9`0```````@```'T```#\_________U,: +M`0```````@```)P```#\_________V8:`0```````@```"<!``#\________ +M_Y8:`0```````@```,P```#\_________TP;`0```````@```"$!``#\____ +M_____U8;`0```````@```*$```#\_________QL<`0```````@```!\!``#\ +M_________Y(<`0```````@```&@```#\_________^@<`0```````@```",! +M``#\_________PT=`0```````@```+<```#\_________QT=`0```````@`` +M`,P```#\_________[T=`0```````@```.0```#\_________VL>`0`````` +M`@```&@```#\_________^@>`0```````@```.0```#\_________X`?`0`` +M`````@```+H"``#\_________Y<?`0```````@```+H"``#\_________\H? +M`0```````@```.0```#\_________S,@`0```````@```+H"``#\________ +M_XP@`0```````@```+H"``#\_________]$@`0```````@```#L```#\____ +M_____P0A`0```````@```$(```#\_________PXA`0```````@```*0"``#\ +M_________S0A`0```````@```*8```#\_________TXA`0```````@```*P` +M``#\_________VDA`0```````@```!@```#\_________WHA`0```````@`` +M`+(```#\_________XTA`0``````"P````8````@`0```````)<A`0`````` +M`@```*\"``#\_________ZTA`0```````@```+H"``#\_________[XA`0`` +M````"P````8````@`0```````,@A`0```````@```*\"``#\_________]XA +M`0```````@```+H"``#\_________RHB`0```````@```+H"``#\________ +M_W4B`0```````@```#H```#\_________Y$B`0```````@```+H"``#\____ +M_____^TB`0```````@```/H```#\_________QDC`0```````@```!\!``#\ +M_________S8C`0```````@```'T```#\_________WTC`0```````@```'4` +M``#\_________\LC`0``````"P````,```"`"P```````#$D`0```````@`` +M`-,```#\_________TTD`0```````@```(D```#\_________VDD`0`````` +M`@```(D```#\_________X4D`0```````@```(D```#\_________Z$D`0`` +M`````@```(D```#\_________\(D`0```````@```(<```#\_________^0D +M`0```````@```(<```#\_________Q$E`0```````@```(<```#\________ +M_S,E`0```````@```(<```#\_________STE`0```````@```*0"``#\____ +M_____VHE`0```````@```(<```#\_________XPE`0```````@```(<```#\ +M_________Y8E`0```````@```*0"``#\_________[(E`0```````@```(D` +M``#\_________\XE`0```````@```(D```#\_________^HE`0```````@`` +M`(D```#\_________PPF`0```````@```(<```#\_________R@F`0`````` +M`@```(D```#\_________WTF`0```````@```*0"``#\__________HF`0`` +M`````@```)("``#\_________Q@G`0```````@```)("``#\_________RPG +M`0```````@```*0"``#\_________T8G`0```````@```+<```#\________ +M_U4G`0```````@```*0"``#\_________VPG`0```````@```(D```#\____ +M_____W8G`0```````@```*0"``#\_________Y(G`0```````@```(D```#\ +M_________YPG`0```````@```*0"``#\_________\DG`0```````@```(<` +M``#\_________],G`0```````@```*0"``#\_________^\G`0```````@`` +M`(D```#\__________DG`0```````@```*0"``#\_________P,H`0`````` +M`@```-````#\_________Q$H`0```````@```$H```#\_________S,H`0`` +M`````@```(<```#\_________U4H`0```````@```(<```#\_________W<H +M`0```````@```(<```#\_________YDH`0```````@```(<```#\________ +M_[4H`0```````@```(D```#\_________\0H`0```````@```*0"``#\____ +M_____]LH`0```````@```(D```#\_________^4H`0```````@```*0"``#\ +M_________P<I`0```````@```(<```#\_________R,I`0```````@```(D` +M``#\_________T0I`0```````@```(<```#\_________UDI`0```````@`` +M`*$```#\_________W(I`0```````@```(D```#\_________WPI`0`````` +M`@```*0"``#\_________Z8I`0```````@```(<```#\_________[`I`0`` +M`````@```*0"``#\_________\DI`0```````@```(D```#\_________],I +M`0```````@```*0"``#\_________P\K`0```````@```"D```#\________ +M_QHK`0```````@```"P```#\_________X4K`0```````@```)("``#\____ +M_____ZPK`0```````@```)("``#\_________^TK`0```````@```)("``#\ +M_________Q8L`0```````@```"D```#\_________R$L`0```````@```"P` +M``#\_________RPL`0```````@```-,```#\_________ULL`0```````@`` +M`-,```#\_________Z0M`0```````@```'4```#\_________ZXM`0`````` +M`@```*0"``#\_________\TM`0```````@```'4```#\_________]<M`0`` +M`````@```*0"``#\_________V4N`0```````@```)("``#\_________WPN +M`0```````@```)("``#\_________[LN`0```````@```*0"``#\________ +M_]0N`0```````@```+<```#\_________^\N`0```````@```-H```#\____ +M_____P0O`0```````@```-H```#\_________Q(O`0```````@```*0"``#\ +M_________T`O`0```````@```)("``#\_________V8O`0```````@```)(" +M``#\_________WXO`0```````@```*0"``#\_________X\O`0``````"P`` +M``4```!X!````````)DO`0```````@```*\"``#\_________ZDO`0`````` +M`@```(H```#\__________@O`0``````"P````$````@-@$```````,P`0`` +M`````@```#X```#\_________Q0P`0``````"P````8````V`0```````!XP +M`0```````@```*\"``#\_________RXP`0```````@```(H```#\________ +M_WTP`0``````"P````$````@-@$``````(@P`0```````@```#X```#\____ +M_____[,P`0```````@```(H```#\_________P8Q`0``````"P````$````@ +M-@$``````!0Q`0```````@```#X```#\_________RHQ`0```````@```(H` +M``#\_________WTQ`0``````"P````$````@-@$``````(LQ`0```````@`` +M`#X```#\_________Z$Q`0```````@```(H```#\__________`Q`0`````` +M"P````$````@-@$``````/LQ`0```````@```#X```#\_________Q@R`0`` +M`````@```(H```#\_________V<R`0``````"P````$````@-@$``````'(R +M`0```````@```#X```#\_________X@R`0```````@```(H```#\________ +M_^(R`0``````"P````$````@-@$``````.TR`0```````@```#X```#\____ +M_____R@S`0```````@```)P```#\_________T,S`0```````@```%@```#\ +M_________YLS`0```````@```-,```#\_________]<S`0```````@```-,` +M``#\_________^DS`0```````@```&@```#\_________SDT`0```````@`` +M`",!``#\_________V$T`0```````@```+<```#\_________W8T`0`````` +M`@```,P```#\_________Z0T`0```````@```&@```#\_________P(U`0`` +M`````@```",!``#\_________RTU`0```````@```+<```#\_________T(U +M`0```````@```,P```#\_________WLU`0```````@```&@```#\________ +M_ZDU`0```````@```#8```#\_________\<U`0```````@```!\!``#\____ +M_____T8W`0```````@```"D```#\_________U$W`0```````@```"P```#\ +M_________]<W`0```````@```*0"``#\_________QTX`0```````@```%4` +M``#\_________S(X`0```````@```+<```#\_________XHX`0``````"P`` +M``4```"P!````````)0X`0```````@```*\"``#\_________Z8X`0`````` +M`@```.,```#\_________R4Y`0```````@```*0"``#\_________\,Y`0`` +M`````@```"D```#\_________\XY`0```````@```"P```#\_________^4Y +M`0```````@```"D```#\__________`Y`0```````@```"P```#\________ +M__LY`0```````@```+<```#\_________^$Z`0```````@```!@!``#\____ +M______@Z`0```````@```!@!``#\_________P\[`0```````@```)````#\ +M_________R$[`0```````@```+@```#\_________S0[`0```````@```.(` +M``#\_________U$[`0```````@```/@```#\_________V,[`0```````@`` +M`,@```#\_________W4[`0```````@```)(```#\_________XD[`0`````` +M`@```&L```#\_________[0[`0```````@```&@```#\_________Q(\`0`` +M`````@```",!``#\_________ST\`0```````@```+<```#\_________U(\ +M`0```````@```,P```#\_________Z<\`0```````@```#8```#\________ +M_[8\`0```````@```&@```#\_________^$\`0``````"P````8```!,`0`` +M`````.L\`0```````@```*\"``#\__________@\`0```````@```#8```#\ +M_________Q@]`0```````@```!\!``#\_________[0^`0```````@```.L` +M``#\_________\@^`0``````"P````,```"H#````````"$_`0```````@`` +M`'T```#\_________YP_`0```````@```)P```#\_________[$_`0`````` +M`@```"<!``#\_________^L_`0```````@```,P```#\_________W1``0`` +M`````@```&@```#\_________Y5``0```````@```.$```#\_________]-` +M`0```````@```*@```#\_________X1!`0```````@```+H"``#\________ +M_[Q!`0```````@```#L```#\_________]9!`0```````@```$(```#\____ +M_____^!!`0```````@```*0"``#\_________PM"`0```````@```*8```#\ +M_________RA"`0```````@```*P```#\_________TQ"`0```````@```!@` +M``#\_________V!"`0```````@```+(```#\_________WM"`0```````@`` +M`+H"``#\_________Y9"`0```````@```+H"``#\_________\Y"`0`````` +M`@```#H```#\_________SU#`0```````@```.$```#\_________TM#`0`` +M`````@```!4```#\_________P%$`0```````@```*@```#\_________U!% +M`0```````@```",!``#\_________V1%`0```````@```,P```#\________ +M_Y%%`0```````@```#8```#\_________YU%`0```````@```'T```#\____ +M_____TI&`0```````@```&@```#\_________VM&`0```````@```.$```#\ +M_________Y]&`0```````@```.$```#\_________\]&`0```````@```.$` +M``#\_________^%&`0```````@```*@```#\_________Q]'`0```````@`` +M`!L!``#\_________VI(`0```````@```+4```#\_________XQ(`0`````` +M`@```&@```#\_________Z!(`0```````@```#L```#\_________[1(`0`` +M`````@```$(```#\_________[Y(`0```````@```*0"``#\_________^9( +M`0```````@```!@```#\__________=(`0```````@```+(```#\________ +M_PQ)`0```````@```+H"``#\_________R%)`0```````@```+H"``#\____ +M_____TU)`0```````@```#H```#\_________VA)`0```````@```(L```#\ +M_________]A)`0```````@```#\```#\__________5)`0```````@```.$` +M``#\_________SE*`0```````@```.$```#\_________VI*`0```````@`` +M`.$```#\_________WQ*`0```````@```!L!``#\_________XY*`0`````` +M`@```$D```#\_________[=*`0```````@```!L!``#\_________PM,`0`` +M`````@```'T```#\_________S--`0```````@```",!``#\_________T)- +M`0```````@```,P```#\_________X9-`0```````@```!\!``#\________ +M_\5-`0```````@```.$```#\_________^Q-`0```````@```+H```#\____ +M_____U9.`0```````@```!<```#\_________VM.`0``````"P```)4````` +M`````````'9.`0```````@```,(```#\_________YI.`0```````@```+,` +M``#\_________Z5.`0```````@```!<```#\_________]].`0```````@`` +M`-H```#\_________^U.`0```````@```*0"``#\_________SU/`0`````` +M`@```#H```#\_________U1/`0```````@```*<```#\_________X=/`0`` +M`````@```-,```#\_________ZE/`0```````@```'\"``#\_________[5/ +M`0```````@```/8```#\_________\M/`0```````@```&@```#\________ +M_^U/`0```````@```!@```#\__________Y/`0```````@```+(```#\____ +M_____Q-0`0```````@```+H"``#\_________RA0`0```````@```+H"``#\ +M_________S]0`0```````@```#H```#\_________V!0`0```````@```&@` +M``#\_________W%0`0```````@```'T```#\_________[)0`0```````@`` +M`+<```#\_________Z%1`0```````@```"D```#\_________ZQ1`0`````` +M`@```"P```#\_________PI2`0``````"P````4```#0!````````!12`0`` +M`````@```*\"``#\_________S12`0```````@```#H```#\_________S]2 +M`0```````@```"P```#\_________W92`0```````@```/L```#\________ +M_ZQ2`0```````@```*0"``#\_________[=2`0```````@```"P```#\____ +M_____\Q2`0```````@```'4```#\_________]A2`0```````@```*0"``#\ +M_________^-2`0```````@```"P```#\_________^Y2`0```````@```'(` +M``#\_________T13`0```````@```&@```#\_________ZQ3`0```````@`` +M`+<```#\_________R15`0```````@```(<```#\_________X!5`0`````` +M`@```"D```#\_________XM5`0```````@```"P```#\_________Y]5`0`` +M`````@```-,```#\_________\95`0``````"P````,```"P#````````/]5 +M`0```````@```)("``#\_________U%6`0```````@```)("``#\________ +M_WQ6`0```````@```)("``#\_________\Q6`0```````@```)("``#\____ +M______-6`0```````@```)("``#\_________UM7`0```````@```)("``#\ +M_________Y=7`0```````@```"D```#\_________Z)7`0```````@```"P` +M``#\_________[)7`0```````@```!\!``#\_________^U7`0```````@`` +M`"D```#\__________A7`0```````@```"P```#\_________PY8`0`````` +M"P```-D``````````````"58`0```````@```)T"``#\_________SY8`0`` +M`````@```*0"``#\_________VM8`0```````@```,,"``#\_________Y]8 +M`0```````@```)("``#\_________\58`0```````@```)("``#\________ +M_\I8`0```````@```,,"``#\_________T19`0```````@```&@```#\____ +M_____Z!9`0```````@```!@```#\_________\!9`0```````@```+(```#\ +M_________^A9`0```````@```+H"``#\_________Y-:`0``````"P````$! +M`````````````*Y:`0``````"P````4````H!0```````+A:`0```````@`` +M`*\"``#\_________]%:`0```````@```+H"``#\__________=:`0`````` +M`@```#H```#\_________R1;`0```````@```)("``#\_________TI;`0`` +M`````@```)("``#\_________YI;`0```````@```&@```#\_________]9; +M`0```````@```'T```#\_________P1<`0```````@```$(```#\________ +M_PY<`0```````@```*0"``#\_________TU<`0```````@```)("``#\____ +M_____W-<`0```````@```)("``#\_________VA=`0```````@```)("``#\ +M_________XM=`0```````@```)("``#\_________QM>`0```````@```(P` +M``#\_________SA>`0```````@````@!``#\_________W=>`0```````@`` +M`)("``#\_________YI>`0```````@```)("``#\_________]%>`0`````` +M`@```)("``#\__________1>`0```````@```)("``#\_________TE?`0`` +M`````@```)("``#\_________V]?`0```````@```)("``#\_________ZQ? +M`0```````@```)("``#\_________]1?`0```````@```"D```#\________ +M_]]?`0```````@```"P```#\_________^I?`0```````@```-,```#\____ +M_____P%@`0```````@```$(```#\_________PM@`0```````@```*0"``#\ +M_________W5A`0```````@```"D```#\_________X!A`0```````@```"P` +M``#\_________\]A`0```````@```"D```#\_________]IA`0```````@`` +M`"P```#\__________%A`0```````@```,P```#\__________YB`0`````` +M`@```(8"``#\_________U=C`0``````"P````8```!@`0```````&%C`0`` +M`````@```*\"``#\_________W1C`0```````@```"D```#\_________W]C +M`0```````@```"P```#\_________\9C`0```````@```&@```#\________ +M_U-D`0```````@```&@```#\_________[MD`0```````@```,P```#\____ +M_____X5E`0```````@```*0"``#\_________PAF`0```````@```*0"``#\ +M_________UYF`0```````@```*0"``#\_________W]F`0```````@```"D` +M``#\_________XIF`0```````@```"P```#\_________YAF`0```````@`` +M`/T```#\_________UEG`0```````@```*0"``#\_________YYG`0`````` +M`@```*0"``#\_________[]G`0```````@```"D```#\_________\IG`0`` +M`````@```"P```#\_________]AG`0```````@```/T```#\_________PYH +M`0```````@```*0"``#\_________V=H`0```````@```*0"``#\________ +M_\1H`0```````@```*0"``#\__________]H`0```````@```)D```#\____ +M_____R]I`0```````@```"D```#\_________SII`0```````@```"P```#\ +M_________T5I`0```````@```,P```#\_________ZAI`0```````@```)(" +M``#\_________T]L`0```````@```!H```#\_________V-L`0```````@`` +M`!H```#\_________W]L`0```````@```!H```#\_________P=M`0`````` +M`@```!H```#\_________QMM`0```````@```!H```#\_________SEM`0`` +M`````@```!H```#\_________WYM`0```````@```(P```#\_________[9M +M`0```````@```-8```#\_________\-M`0```````@```"T```#\________ +M_P9N`0```````@```,8```#\_________TEN`0```````@```",```#\____ +M_____WIN`0```````@```,4```#\_________]9N`0```````@```*0"``#\ +M_________S5T`0```````@````L````<`````````$%T`0``````"P````L` +M```@`````````$YT`0```````@```$$```#\_________Y9T`0```````@`` +M`&(```#\_________W)U`0```````@```)8```#\_________Y]U`0`````` +M`@```/,```#\_________ZYU`0```````@```)8```#\_________Y)V`0`` +M`````@```&@```#\_________]EV`0```````@```-4```#\__________9V +M`0```````@```(8"``#\_________PUW`0```````@```#````#\________ +M_X5W`0```````@```$<```#\_________[QW`0```````@```,4```#\____ +M_____P)X`0```````@```+8```#\_________^%X`0```````@```*0"``#\ +M_________]-Y`0```````@````L````>`````````.!Y`0``````"P````L` +M```@`````````.IY`0```````@```$$```#\_________RMZ`0```````@`` +M``L````>`````````#AZ`0``````"P````L````@`````````$)Z`0`````` +M`@```$$```#\_________\-Z`0```````@```)("``#\_________Q%[`0`` +M`````@```)("``#\_________RE[`0```````@```"@```#\_________SM[ +M`0```````@```"@```#\_________TU[`0```````@```"@```#\________ +M_U][`0```````@```"@```#\_________W%[`0```````@```"@```#\____ +M_____X-[`0```````@```"@```#\_________Y5[`0```````@```"@```#\ +M_________Z=[`0```````@```"@```#\_________[E[`0```````@```"@` +M``#\_________\M[`0```````@```"@```#\_________]U[`0```````@`` +M`"@```#\_________^][`0```````@```"@```#\_________P%\`0`````` +M`@```"@```#\_________Q-\`0```````@```"@```#\_________R5\`0`` +M`````@```"@```#\_________S=\`0```````@```"@```#\_________TE\ +M`0```````@```"@```#\_________UM\`0```````@```"@```#\________ +M_VU\`0```````@```"@```#\_________W]\`0```````@```"@```#\____ +M_____Y%\`0```````@```"@```#\_________Z-\`0```````@```"@```#\ +M_________[5\`0```````@```"@```#\_________\=\`0```````@```"@` +M``#\_________]E\`0```````@```"@```#\_________^M\`0```````@`` +M`"@```#\_________U-]`0```````@```)("``#\_________W-]`0`````` +M`@```)("``#\__________5]`0```````@```"@```#\_________PI^`0`` +M`````@```"@```#\_________Q]^`0```````@```"@```#\_________S1^ +M`0```````@```"@```#\_________TE^`0```````@```"@```#\________ +M_Y5^`0```````@```(H```#\_________ZE^`0```````@```!<!``#\____ +M_____SM_`0```````@```(8"``#\_________VA_`0```````@```(8"``#\ +M_________W-_`0``````"P```!P!`````````````(%_`0```````@```.P` +M``#\_________XQ_`0```````@```#X```#\_________]E_`0```````@`` +M`(H```#\_________^E_`0```````@```!<!``#\_________T.``0`````` +M"P```!P!`````````````%&``0```````@```.P```#\_________UR``0`` +M`````@```#X```#\_________[B``0```````@```+X```#\_________\:` +M`0```````@```$(```#\_________]"``0```````@```*0"``#\________ +M_P2!`0```````@```#D```#\_________Q2!`0```````@```$(```#\____ +M_____QZ!`0```````@```*0"``#\_________T.!`0```````@```+X```#\ +M_________U2!`0```````@```$(```#\_________UZ!`0```````@```*0" +M``#\_________Z6!`0```````@```#D```#\_________SV"`0```````@`` +M`($```#\_________TB"`0```````@```"P```#\_________].$`0`````` +M`@```"<```#\__________&$`0```````@```.\```#\_________]:%`0`` +M`````@```(@```#\_________^N%`0``````"P```%\``````````````"N& +M`0```````@```"<```#\_________SV&`0```````@```.\```#\________ +M_]2&`0```````@```(@```#\_________P&'`0```````@```(@```#\____ +M_____Z^'`0```````@```*L```#\_________\>'`0```````@```#0```#\ +M_________]^'`0```````@```'X```#\_________T>(`0``````"P````,` +M``#8#0```````+2+`0```````@```!D```#\_________T*,`0```````@`` +M`!D```#\_________UN,`0```````@```(8"``#\_________RV-`0`````` +M`@```.````#\_________[2.`0```````@```)("``#\_________\B.`0`` +M`````@```)("``#\_________]:.`0```````@```*0"``#\_________Q^/ +M`0```````@````<````$`````````&J/`0```````@```)("``#\________ +M_YZ/`0``````"P````<``````````````,:/`0```````@````<````4```` +M`````!20`0```````@```)("``#\_________XF0`0```````@````<````D +M`````````->0`0```````@```)("``#\_________PN1`0``````"P````<` +M```@`````````"Z1`0```````@````<````T`````````'R1`0```````@`` +M`)("``#\_________^>1`0``````"P````<````0`````````/F1`0`````` +M"P````<````P`````````(^2`0```````@```)("``#\_________R*3`0`` +M`````@```)("``#\_________\&3`0```````@```)("``#\_________^"3 +M`0```````@```*0"``#\_________ZZ4`0```````@```"4```#\________ +M_V"7`0```````@```.D```#\_________^>8`0```````@````,```#X$@`` +M`````/.8`0``````"P````<```#``0```````'><`0``````"P````<```"` +M`````````'R<`0```````@```'<"``#\__________J<`0```````@```$$` +M``#\_________PB=`0```````@```*0"``#\_________QV=`0```````@`` +M``0!``#\_________T>=`0``````"P````8```!T`0```````%&=`0`````` +M`@```*\"``#\_________Z:=`0```````@```)H"``#\_________[J=`0`` +M`````@```)H"``#\_________\Z=`0```````@```)H"``#\_________T&> +M`0```````@```"\```#\_________UN>`0```````@```*,"``#\________ +M_VZ>`0```````@```*,"``#\_________XB>`0```````@```*,"``#\____ +M_____YN>`0```````@```*,"``#\_________[6>`0```````@```*,"``#\ +M_________\B>`0```````@```*,"``#\_________^*>`0```````@```*," +M``#\__________6>`0```````@```*,"``#\_________R.?`0```````@`` +M`*,"``#\_________S.?`0```````@```*,"``#\_________UJ?`0`````` +M`@```*,"``#\_________VV?`0```````@```*,"``#\_________X>?`0`` +M`````@```*,"``#\_________YJ?`0```````@```*,"``#\_________[2? +M`0```````@```*,"``#\_________\>?`0```````@```*,"``#\________ +M_^&?`0```````@```*,"``#\__________2?`0```````@```*,"``#\____ +M_____PZ@`0```````@```*,"``#\_________R&@`0```````@```*,"``#\ +M_________SN@`0```````@```*,"``#\_________TZ@`0```````@```*," +M``#\_________VB@`0```````@```*,"``#\_________WN@`0```````@`` +M`*,"``#\_________Y6@`0```````@```*,"``#\_________ZB@`0`````` +M`@```*,"``#\_________\*@`0```````@```*,"``#\_________]6@`0`` +M`````@```*,"``#\_________^^@`0```````@```*,"``#\_________P*A +M`0```````@```*,"``#\_________QRA`0```````@```*,"``#\________ +M_R^A`0```````@```*,"``#\_________TFA`0```````@```*,"``#\____ +M_____URA`0```````@```*,"``#\_________W:A`0```````@```*,"``#\ +M_________XFA`0```````@```*,"``#\_________Z.A`0```````@```*," +M``#\_________[:A`0```````@```*,"``#\_________]BA`0```````@`` +M`-("``#\__________*A`0```````@```-("``#\_________Q2B`0`````` +M`@```-("``#\_________RZB`0```````@```-("``#\_________U"B`0`` +M`````@```-("``#\_________VJB`0```````@```-("``#\_________XRB +M`0```````@```-("``#\_________Z:B`0```````@```-("``#\________ +M_\BB`0```````@```-("``#\_________^*B`0```````@```-("``#\____ +M_____P2C`0```````@```-("``#\_________QZC`0```````@```-("``#\ +M_________T"C`0```````@```-("``#\_________UJC`0```````@```-(" +M``#\_________WRC`0```````@```-("``#\_________Y:C`0```````@`` +M`-("``#\_________\VC`0```````@```,H```#\_________]ZC`0`````` +M`@```,H```#\_________PJD`0```````@```"L```#\_________Q*D`0`` +M`````@```)0```#\_________R&D`0```````@```)0```#\_________RFD +M`0```````@```"0!``#\_________S.D`0```````@```*0"``#\________ +M_SND`0```````@```,,```#\_________TBD`0```````@```,H```#\____ +M_____U6D`0```````@```,H```#\_________Y^D`0```````@```-,```#\ +M__________:D`0```````@```-,```#\_________R6E`0```````@````H! +M``#\_________SBE`0```````@````H!``#\_________T6E`0```````@`` +M``H!``#\_________UBE`0```````@````H!``#\_________V6E`0`````` +M`@```$(```#\_________\VE`0```````@```(H```#\_________R^F`0`` +M````"P````$```"0F@$``````#JF`0```````@```#X```#\_________W&F +M`0```````@```#L```#\_________X.F`0```````@```*0"``#\________ +M_XNF`0```````@```$(```#\_________]&F`0```````@```"P```#\____ +M_____UJG`0```````@```(H```#\_________]NG`0``````"P````$```"0 +MF@$``````.:G`0```````@```#X```#\_________QVH`0```````@```#L` +M``#\_________R^H`0```````@```*0"``#\_________S>H`0```````@`` +M`$(```#\_________W2H`0```````@```),```#\__________RH`0`````` +M"P````$```"0F@$```````FI`0```````@```.P```#\_________QZI`0`` +M`````@```*X```#\_________RFI`0```````@```#X```#\_________V"I +M`0```````@```#L```#\_________W*I`0```````@```*0"``#\________ +M_WJI`0```````@```$(```#\_________ZJI`0```````@```"D```#\____ +M_____[^I`0```````@```"P```#\_________\>I`0```````@```(H```#\ +M_________]RI`0```````@```"D```#\_________^VJ`0``````"P````$` +M``"0F@$``````/JJ`0```````@```.P```#\_________P^K`0```````@`` +M`*X```#\_________QJK`0```````@```#X```#\_________U&K`0`````` +M`@```#L```#\_________V.K`0```````@```*0"``#\_________VNK`0`` +M`````@```$(```#\_________Z6K`0```````@```"D```#\_________[RK +M`0```````@```"P```#\_________UNL`0```````@```(H```#\________ +M_X&L`0``````"P````8```"0`0```````(NL`0```````@```*\"``#\____ +M_____Y>L`0```````@```),```#\_________["L`0```````@```"P```#\ +M_________^*L`0```````@```+H"``#\__________NL`0```````@```#L` +M``#\_________TNM`0```````@```(8"``#\_________S.N`0```````@`` +M`&````#\_________XNN`0``````"P````$```"0F@$``````)JN`0`````` +M`@```.P```#\_________[6N`0```````@```*X```#\_________\NN`0`` +M`````@```#X```#\_________P>O`0```````@```#L```#\_________QFO +M`0```````@```*0"``#\_________R.O`0```````@```$(```#\________ +M_V6O`0```````@```(8"``#\_________Y>O`0```````@```"D```#\____ +M_____ZRO`0```````@```(,```#\_________[NO`0```````@```"P```#\ +M_________]BO`0```````@```+H"``#\_________[BP`0```````@```"D` +M``#\_________\BP`0```````@```(,```#\_________].P`0```````@`` +M`"P```#\_________ZRQ`0```````@```#L```#\_________^ZQ`0`````` +M`@```",!``#\_________S2R`0```````@```-,```#\_________TFR`0`` +M`````@```+<```#\_________VBR`0```````@```,P```#\_________[*R +M`0```````@```.8```#\_________]FS`0```````@```,D```#\________ +M_P&T`0```````@```!,!``#\_________R&T`0```````@```+P"``#\____ +M_____UFT`0```````@```"L```#\_________V&T`0```````@```%X```#\ +M_________VFT`0```````@```%X```#\_________W&T`0```````@```)0` +M``#\_________WVT`0```````@```)0```#\_________XFT`0```````@`` +M`"0!``#\_________Y.T`0```````@```*0"``#\_________YNT`0`````` +M`@```,,```#\_________["T`0``````"P```&$``````````````,>T`0`` +M`````@```)T"``#\_________]2T`0```````@```!\!``#\__________6T +M`0```````@```!D!``#\_________P2U`0```````@```!D!``#\________ +M_RFU`0```````@````L```#?`````````#:U`0```````@````L```#<```` +M`````$&U`0```````@````,```#X$@```````%"U`0``````"P````<```#` +M`0```````%>U`0``````"P```%P``````````````%ZU`0``````"P````<` +M``#4`0```````&JU`0``````"P````<```#"`0```````+6U`0``````"P`` +M`%P````<`````````,VU`0``````"P```%P````<`````````.&U`0`````` +M"P```%P````<`````````.^U`0``````"P```%P````<`````````/FU`0`` +M````"P```%P````<`````````"^V`0``````"P```%P````<`````````$.V +M`0``````"P```%P````<`````````%&V`0``````"P```%P````<```````` +M`&RV`0``````"P````<```#,`0```````+6V`0```````@````,```#X$@`` +M`````-.V`0``````"P````<```#,`0```````.&V`0``````"P````<```#0 +M`0```````!&W`0``````"P```%P``````````````"6W`0``````"P```%P` +M```<`````````%"W`0``````"P```%P````,`````````':W`0``````"P`` +M`%P````=`````````(6W`0``````"P```%P````<`````````+ZW`0`````` +M`@```(`"``#\_________T:X`0```````@```*P```#\_________V*X`0`` +M`````@```*8```#\_________VJX`0```````@```.8```#\_________XBX +M`0```````@```+(```#\_________YRX`0```````@```+(```#\________ +M_T&Y`0``````"P````4```!0!0```````$NY`0```````@```*\"``#\____ +M_____UVY`0```````@```(H```#\_________X:Y`0``````"P````$!```` +M`````````)NY`0``````"P````4```"8!0```````*6Y`0```````@```*\" +M``#\_________^JY`0``````"P````$```"0F@$``````/6Y`0```````@`` +M`#X```#\_________RRZ`0```````@```#L```#\_________SZZ`0`````` +M`@```*0"``#\_________T:Z`0```````@```$(```#\_________XFZ`0`` +M`````@```(H```#\_________Z^Z`0```````@```),```#\_________\ZZ +M`0```````@```"P```#\_________SV[`0``````"P````$```"0F@$````` +M`$R[`0```````@```.P```#\_________UZ[`0```````@```*X```#\____ +M_____VF[`0```````@```#X```#\_________Z"[`0```````@```#L```#\ +M_________[*[`0```````@```*0"``#\_________[J[`0```````@```$(` +M``#\_________^J[`0```````@```.,```#\_________P^\`0```````@`` +M`"D```#\_________QJ\`0```````@```"P```#\_________S&\`0`````` +M`@```"P```#\_________Y:\`0``````"P````,```#`#@```````,N\`0`` +M`````@```.4```#\_________P2]`0```````@```&4```#\_________SJ] +M`0```````@```+H"``#\_________T^]`0```````@```#L```#\________ +M_V:]`0```````@```*0"``#\_________VZ]`0```````@```$(```#\____ +M_____Z>]`0```````@```+H"``#\_________[N]`0```````@```*4```#\ +M_________\>]`0```````@```/\```#\_________S.^`0``````"P````$! +M`````````````$Z^`0``````"P````4```#(!0```````%B^`0```````@`` +M`*\"``#\_________XB^`0```````@```'\"``#\_________YV^`0`````` +M"P````$```#PO0$``````+&^`0```````@```)T"``#\_________T[!`0`` +M`````@```*P```#\_________W#!`0```````@```*8```#\_________YW! +M`0```````@```&@```#\_________PC"`0```````@```&@```#\________ +M_V3"`0```````@```+H"``#\_________Z3"`0```````@```&@```#\____ +M_____Q##`0```````@```+H"``#\_________S;$`0```````@```.4```#\ +M_________XS$`0```````@```,D```#\_________Y[$`0```````@```+(` +M``#\_________]G$`0```````@```$(```#\___________$`0```````@`` +M`!\!``#\_________Q_%`0```````@```'\"``#\_________S3%`0`````` +M"P```&$``````````````$?%`0```````@```)T"``#\_________ZG&`0`` +M`````@```.8```#\__________W&`0``````"P````,````0#P```````"7' +M`0```````@```#T```#\_________X#'`0```````@```#T```#\________ +M_]O'`0```````@```#T```#\_________S;(`0```````@```#T```#\____ +M_____X?)`0``````"P````,````P$````````+C)`0```````@```#T```#\ +M_________QC*`0```````@```#T```#\_________W#*`0```````@```#T` +M``#\_________\C*`0```````@```#T```#\_________R'+`0```````@`` +M`#T```#\_________WC+`0```````@```#T```#\_________]3+`0`````` +M`@```#T```#\_________S#,`0```````@```#T```#\_________XC,`0`` +M`````@```#T```#\_________^#,`0```````@```#T```#\_________S#- +M`0```````@```(P```#\_________VK-`0```````@```(P```#\________ +M_Z3-`0```````@```(P```#\_________][-`0```````@```(P```#\____ +M_____Q7.`0```````@```(P```#\_________TS.`0```````@```(P```#\ +M_________^;.`0```````@````L```#<`````````/+.`0```````@````L` +M``#<`````````-_0`0```````@```(X"``#\__________G0`0```````@`` +M`(X"``#\_________T/1`0```````@````,```#X$@```````%G1`0`````` +M"P````<```#``0```````&O1`0``````"P````<```#"`0```````'G1`0`` +M````"P````<```#0`0```````(+1`0``````"P````<```#0`0```````(G1 +M`0``````"P````<```#,`0```````*/1`0``````"P````<```#0`0`````` +M`-W1`0```````@```,8"``#\___________1`0```````@```+\"``#\____ +M_____RW2`0``````"P```%P``````````````$72`0``````"P```%P````< +M`````````&S2`0``````"P```%P````,`````````(G2`0``````"P```%P` +M```=`````````)/2`0``````"P```%P````=`````````)O2`0``````"P`` +M`%P````<`````````+C2`0``````"P```%P````=`````````,S2`0`````` +M"P```%P````<`````````#K4`0``````"P````$!`````````````$K4`0`` +M`````@```.8```#\_________[W5`0```````@```)8```#\_________^[5 +M`0```````@```/,```#\__________W5`0```````@```)8```#\________ +M_Z#9`0```````@```)8```#\_________\[9`0```````@```/,```#\____ +M_____]W9`0```````@```)8```#\_________[_=`0```````@```)8```#\ +M_________^W=`0```````@```/,```#\__________[=`0```````@```)8` +M``#\_________[_A`0```````@```)8```#\_________^WA`0```````@`` +M`/,```#\__________[A`0```````@```)8```#\_________V3D`0`````` +M`@```(H```#\_________V#F`0```````@```(8"``#\_________RSH`0`` +M````"P````$````PL`$``````*OH`0```````@```&````#\_________[CH +M`0```````@```.P```#\_________\OH`0```````@```*X```#\________ +M_^GH`0```````@```.P```#\__________OH`0```````@```),```#\____ +M_____RSI`0```````@```*X```#\_________T'I`0```````@```'L```#\ +M_________W+I`0```````@```*X```#\_________[?I`0```````@```(8" +M``#\_________RKJ`0```````@```(8"``#\_________V[J`0```````@`` +M`#X```#\_________WOJ`0```````@```"P```#\_________PCM`0`````` +M`@```,8"``#\_________RKM`0```````@```,8"``#\_________X+N`0`` +M`````@```",!``#\_________]CN`0```````@```&@```#\_________S#O +M`0```````@```+<```#\_________V'O`0```````@```-,```#\________ +M_Y_O`0```````@```(4```#\_________\KO`0```````@```,P```#\____ +M______3O`0```````@```&@```#\_________T[P`0```````@```.0```#\ +M_________PGQ`0```````@````@"``#\_________R+Q`0```````@```$8" +M``#\_________S?Q`0```````@```$4"``#\_________\7Q`0``````"P`` +M``$```#`\`$``````-WQ`0```````@```,4!``#\__________/Q`0`````` +M`@```"X!``#\__________[Q`0```````@```$4!``#\_________Q;R`0`` +M`````@```*0"``#\_________R'R`0```````@```%<!``#\_________T#R +M`0```````@```#`!``#\_________T_R`0```````@```'<!``#\________ +M_UKR`0```````@```$4"``#\_________WCR`0```````@```$4"``#\____ +M_____Y/R`0```````@```'H!``#\_________[#R`0```````@```,D!``#\ +M_________Q+S`0```````@```,4!``#\_________R;S`0```````@```"X! +M``#\_________\CU`0```````@```*T!``#\_________TKX`0``````"P`` +M``,`````$P```````.OX`0``````"P````4```#X!0```````/7X`0`````` +M`@```*\"``#\_________S#Y`0```````@```(8"``#\_________Q#Z`0`` +M`````@```)("``#\_________SWZ`0```````@```)("``#\_________YWZ +M`0```````@```)("``#\_________Q_[`0```````@```)("``#\________ +M_UG[`0```````@```)("``#\_________[[[`0```````@```*0"``#\____ +M______G[`0```````@```*0"``#\_________T?\`0```````@```*0"``#\ +M_________X+\`0```````@```*0"``#\_________]C\`0```````@```%@! +M``#\_________^+\`0```````@```*0"``#\_________^S\`0```````@`` +M``,"``#\_________\?]`0```````@```)("``#\_________^3]`0`````` +M`@```)("``#\__________/]`0```````@```*0"``#\_________P_^`0`` +M`````@```)("``#\_________RS^`0```````@```)("``#\_________UK^ +M`0```````@```)("``#\_________V3^`0```````@```)("``#\________ +M_XS^`0```````@```*0"``#\_________YG^`0```````@```)("``#\____ +M_____\'^`0```````@```*0"``#\_________\[^`0```````@```)("``#\ +M___________^`0```````@```)("``#\_________S#_`0```````@```)(" +M``#\_________Y7_`0```````@```)("``#\_________[7_`0```````@`` +M`)("``#\_________]S_`0```````@```)("``#\__________S_`0`````` +M`@```)("``#\_________RP``@```````@```)("``#\_________S8``@`` +M`````@```)("``#\_________V(``@```````@```*0"``#\_________W(` +M`@```````@```)("``#\_________YH``@```````@```*0"``#\________ +M_ZH``@```````@```)("``#\_________[0"`@```````@```)("``#\____ +M______P"`@```````@```-,!``#\_________R@#`@```````@```-,!``#\ +M_________Y8#`@```````@```!8"``#\__________0#`@```````@```'\" +M``#\_________P`$`@```````@```-0!``#\_________QD$`@```````@`` +M`,L!``#\_________\$$`@```````@```!8"``#\__________`$`@`````` +M`@```/L!``#\_________P$%`@```````@```+\!``#\_________Q0%`@`` +M````"P````8```"P`0```````!X%`@```````@```*\"``#\_________S,% +M`@```````@```+H"``#\_________T@%`@```````@```+H"``#\________ +M_V`%`@```````@```%P!``#\_________X(%`@```````@```)("``#\____ +M_____WP&`@``````"P```$,!`````````````($&`@```````@```.$!``#\ +M_________VT'`@```````@```$(!``#\_________W@'`@```````@```$4" +M``#\_________VX(`@```````@```,$!``#\_________^$+`@```````@`` +M`$0"``#\_________UD,`@```````@```&(!``#\_________YP,`@`````` +M`@```,$!``#\_________SP-`@``````"P````,`````%P```````%4-`@`` +M`````@```!4"``#\_________X<-`@```````@```!4"``#\_________[<- +M`@```````@```!4"``#\_________^,-`@```````@```!4"``#\________ +M_QH.`@```````@```*0!``#\_________V8.`@```````@```!@"``#\____ +M______@.`@```````@```#H!``#\_________S</`@```````@```&,!``#\ +M_________V$/`@```````@```*0"``#\_________[L1`@```````@```"X" +M``#\_________\H1`@```````@```/8!``#\_________X$2`@```````@`` +M`$X!``#\__________L2`@```````@```.P!``#\_________Q@3`@`````` +M`@```$X!``#\_________SP4`@```````@```$,"``#\_________T\4`@`` +M`````@```-4!``#\_________[T4`@```````@```$,"``#\_________^D4 +M`@```````@```-4!``#\_________X(6`@```````@```!<"``#\________ +M_VH7`@```````@```(8"``#\_________X07`@``````"P````,```!0%P`` +M`````!<8`@```````@```"T!``#\_________R88`@```````@```"T!``#\ +M_________Z,8`@```````@```$,"``#\_________\\8`@```````@```-4! +M``#\_________SX9`@```````@```(H!``#\_________W(9`@```````@`` +M`'8!``#\_________XL9`@```````@```(H!``#\_________YH9`@`````` +M`@````0"``#\_________[,9`@```````@```(H!``#\_________P,:`@`` +M`````@```'X!``#\_________Q@:`@``````"P````4```!0!@```````"(: +M`@```````@```*\"``#\_________Y0:`@```````@```,L!``#\________ +M_Z8:`@```````@```$D!``#\_________T(;`@```````@````X"``#\____ +M_____[\;`@```````@````X"``#\_________\\;`@```````@```!("``#\ +M__________D;`@```````@````X"``#\_________Q<<`@```````@```-@! +M``#\_________T0<`@```````@```'D!``#\_________P,=`@```````@`` +M`)4!``#\_________R8=`@```````@```-@!``#\_________T\=`@`````` +M`@```(D!``#\_________W8=`@```````@````X"``#\_________WX=`@`` +M`````@```(D!``#\_________Z,=`@```````@```-@!``#\_________PD> +M`@```````@```#$!``#\_________U<>`@```````@```/,!``#\________ +M_WL>`@```````@```,L!``#\_________[(>`@```````@```+H"``#\____ +M_____\8>`@```````@```#$!``#\_________^0>`@```````@```%<!``#\ +M_________^X>`@```````@```*0"``#\_________ST?`@```````@```+P! +M``#\_________T0?`@```````@````4"``#\_________UH?`@``````"P`` +M``8```#&`0```````&0?`@```````@```*\"``#\_________YL?`@`````` +M`@```#$!``#\_________ZX?`@```````@```)P!``#\_________[8?`@`` +M`````@```(D!``#\_________T<@`@```````@```)("``#\_________W,@ +M`@```````@```)("``#\_________ZP@`@```````@```)("``#\________ +M_^H@`@``````"P````4```"`!@```````/0@`@```````@```*\"``#\____ +M_____S`A`@```````@```,`!``#\_________X8A`@```````@```,`!``#\ +M_________YLA`@```````@```#X"``#\_________Z8A`@```````@```)4! +M``#\_________U@B`@```````@```$0!``#\_________W\B`@```````@`` +M`-@!``#\_________[0B`@```````@```,L!``#\_________U(C`@`````` +M`@```$0!``#\_________W0C`@```````@```-@!``#\_________[<C`@`` +M`````@```#D"``#\_________^@D`@```````@```)("``#\_________P8E +M`@```````@```)("``#\_________R,E`@```````@```)("``#\________ +M_X@E`@```````@```)("``#\_________Z\E`@```````@```)("``#\____ +M_____QLF`@```````@```/D!``#\_________W@F`@```````@```)("``#\ +M_________YLF`@```````@```)("``#\_________[XF`@```````@```)(" +M``#\_________\8F`@```````@```($!``#\_________[<G`@```````@`` +M`$\!``#\_________]HG`@```````@```(8"``#\_________\(H`@`````` +M`@```(8"``#\_________S`I`@```````@```(8"``#\_________V0I`@`` +M`````@```)("``#\_________Y\I`@```````@```)("``#\__________,I +M`@```````@```)("``#\_________]$J`@```````@```(8"``#\________ +M_R4L`@```````@```(8"``#\_________ZTL`@```````@```(8"``#\____ +M_____\`L`@``````"P````,```"P'````````%4M`@```````@```*0"``#\ +M_________],M`@```````@```)("``#\__________<M`@```````@```)(" +M``#\_________Q@N`@``````"P````8```#D`0```````"(N`@```````@`` +M`*\"``#\_________RPN`@```````@```-X!``#\_________TPN`@`````` +M`@```)("``#\_________XPN`@```````@```)("``#\_________QTO`@`` +M`````@```)("``#\_________Z(O`@```````@```-X!``#\_________[$O +M`@```````@```-X!``#\__________PO`@``````"P````4```#0!@`````` +M``8P`@```````@```*\"``#\_________V\P`@``````"P````8```#_`0`` +M`````'DP`@```````@```*\"``#\_________XLP`@```````@```,H!``#\ +M_________[4P`@``````"P````4````0!P```````+\P`@```````@```*\" +M``#\_________S(Q`@``````"P````4````X!P```````#PQ`@```````@`` +M`*\"``#\_________]XQ`@```````@```$0!``#\__________<Q`@`````` +M`@```-@!``#\_________ZHR`@```````@```+$!``#\_________PXT`@`` +M`````@```,H!``#\_________QXT`@```````@```!8"``#\_________V(T +M`@```````@```(,!``#\_________\DT`@```````@```$0!``#\________ +M_]0T`@```````@```+$!``#\_________^TT`@```````@```-@!``#\____ +M_____T<U`@```````@```,L!``#\_________\`U`@```````@```#,!``#\ +M__________<U`@```````@```,L!``#\_________YLV`@```````@```)(" +M``#\_________\HV`@```````@```,L!``#\__________\V`@```````@`` +M`!8"``#\_________Q`W`@```````@```(D!``#\_________UDW`@`````` +M`@```)("``#\_________X(W`@```````@```)("``#\_________[,W`@`` +M`````@```)("``#\_________\@W`@```````@```)`!``#\_________SPX +M`@```````@```)("``#\_________\$X`@```````@```)("``#\________ +M_^PX`@```````@```)("``#\__________XX`@```````@```&D!``#\____ +M_____T$Y`@```````@```)("``#\_________V8Y`@```````@```)("``#\ +M_________^,Y`@```````@```)("``#\_________PPZ`@```````@```)(" +M``#\_________S@Z`@```````@```'\"``#\_________UDZ`@```````@`` +M`.@!``#\_________YDZ`@```````@```,L!``#\_________\\Z`@`````` +M`@```+H"``#\_________^,Z`@```````@```#$!``#\_________P$[`@`` +M`````@```(\!``#\_________PL[`@```````@```*0"``#\_________SL[ +M`@``````"P````$```"`4`(``````&D[`@```````@```)T"``#\________ +M_Y,[`@```````@```)("``#\_________Z@[`@```````@```)("``#\____ +M_____]`[`@```````@```)("``#\_________^4[`@```````@```)("``#\ +M_________Q8\`@```````@```)("``#\_________TT\`@```````@```)(" +M``#\_________XL\`@```````@```)("``#\_________[,\`@```````@`` +M`)("``#\_________^@\`@```````@```)("``#\_________Q\]`@`````` +M`@```)("``#\_________X8]`@```````@```)("``#\_________ZL]`@`` +M`````@```)("``#\_________]`]`@```````@```)("``#\__________4] +M`@```````@```)("``#\_________S0^`@```````@```'\"``#\________ +M_VX^`@```````@```+H"``#\_________X(^`@```````@```#$!``#\____ +M_____Y0^`@```````@```%<!``#\_________YX^`@```````@```*0"``#\ +M_________\L^`@``````"P````4"`````````````.,^`@```````@```)T" +M``#\_________PX_`@```````@```)("``#\_________T`_`@```````@`` +M`)("``#\_________WD_`@```````@```)("``#\_________Z4_`@`````` +M`@```)("``#\_________^8_`@```````@```'\"``#\_________P1``@`` +M`````@```,L!``#\_________S1``@```````@```+H"``#\_________U)` +M`@``````"P```,@!`````````````&1``@```````@```)T"``#\________ +M_Y-``@```````@```)("``#\_________[E``@```````@```)("``#\____ +M_____]=``@```````@```*0"``#\_________^Q``@```````@```)("``#\ +M_________Q)!`@```````@```)("``#\_________SA!`@```````@```)(" +M``#\_________U9!`@```````@```*0"``#\_________VM!`@```````@`` +M`)("``#\_________Y!!`@```````@```)("``#\_________U9"`@`````` +M`@```)("``#\_________WM"`@```````@```*0"``#\_________ZM"`@`` +M`````@```)("``#\_________])"`@```````@```*0"``#\_________P5# +M`@```````@```)("``#\_________RQ#`@```````@```*0"``#\________ +M_W)#`@```````@```)X!``#\_________XU#`@```````@```.(!``#\____ +M_____YE#`@```````@```+`!``#\_________\Y#`@```````@```*P!``#\ +M_________P)$`@```````@```(T!``#\_________R]$`@```````@```+`! +M``#\_________QA%`@```````@```*0"``#\_________S]%`@```````@`` +M`)("``#\_________UY%`@```````@```*0"``#\_________X%%`@`````` +M`@```)("``#\_________ZU%`@```````@```*0"``#\_________]1%`@`` +M`````@```)("``#\__________A%`@```````@```*0"``#\_________QQ& +M`@```````@```)("``#\_________SU&`@```````@```,L!``#\________ +M_[I&`@```````@```#$!``#\__________5&`@```````@```#$!``#\____ +M_____P%'`@```````@```+`!``#\_________T9'`@```````@```,L!``#\ +M_________VM'`@```````@```,L!``#\_________XQ'`@```````@```'\" +M``#\_________ZM'`@```````@```%<!``#\_________[5'`@```````@`` +M`*0"``#\_________W)(`@```````@```!8"``#\_________Y1(`@`````` +M`@```/L!``#\_________Z5(`@```````@```+\!``#\_________[A(`@`` +M````"P````8```"P`0```````,)(`@```````@```*\"``#\_________]=( +M`@```````@```+H"``#\_________^Q(`@```````@```+H"``#\________ +M_PE)`@```````@```%P!``#\_________RA)`@```````@```&8!``#\____ +M_____U1)`@```````@```,L!``#\_________WE)`@```````@```%<!``#\ +M_________X-)`@```````@```*0"``#\_________[9)`@```````@```/L! +M``#\_________\=)`@```````@```+\!``#\_________]I)`@``````"P`` +M``8```"P`0```````.1)`@```````@```*\"``#\__________E)`@`````` +M`@```+H"``#\_________PY*`@```````@```+H"``#\_________R9*`@`` +M`````@```%P!``#\_________SM*`@```````@```*P!``#\_________[Q* +M`@```````@```)("``#\_________]Y*`@```````@```*0"``#\________ +M_P%+`@```````@```)("``#\_________R1+`@```````@```)("``#\____ +M_____T9+`@```````@```*0"``#\_________VI+`@```````@```)("``#\ +M__________)+`@```````@```.@!``#\__________Y+`@```````@```+,! +M``#\_________T5,`@```````@```!`"``#\_________U),`@```````@`` +M`+<!``#\_________XA,`@```````@```*0"``#\_________Z-,`@`````` +M`@```)("``#\_________\),`@```````@```)("``#\_________^%,`@`` +M`````@```+`!``#\_________^E,`@```````@```(X!``#\_________Q%- +M`@```````@```!$"``#\_________YA-`@```````@```,@!``#\________ +M_Z5-`@```````@```,L!``#\_________S!.`@```````@```#`"``#\____ +M_____V1.`@```````@```+P!``#\_________YU.`@```````@```!P"``#\ +M_________[5.`@```````@```+H"``#\_________\U.`@```````@```+H" +M``#\__________I.`@```````@```*0"``#\_________Q5/`@```````@`` +M`)("``#\_________S)/`@```````@```)("``#\_________U%/`@`````` +M`@```+`!``#\_________UE/`@```````@```(X!``#\_________Y]/`@`` +M`````@```)X!``#\_________^1/`@```````@```,L!``#\_________V-0 +M`@```````@```!$"``#\_________W)0`@```````@```&\!``#\________ +M_^M0`@```````@```)("``#\_________QI1`@```````@```)("``#\____ +M_____S)1`@```````@```#$"``#\_________S]1`@```````@```+<!``#\ +M_________ZE1`@```````@```/(!``#\_________\Q1`@```````@```-@! +M``#\__________11`@```````@```(D!``#\_________QA2`@```````@`` +M``X"``#\_________R!2`@```````@```(D!``#\_________VE2`@`````` +M`@```-@!``#\_________[I2`@```````@```#$!``#\_________\E2`@`` +M`````@```,L!``#\__________A2`@```````@```+H"``#\_________PQ3 +M`@```````@```#$!``#\_________R13`@```````@```%<!``#\________ +M_RY3`@```````@```*0"``#\_________TY3`@```````@````4"``#\____ +M_____WU3`@```````@```-@!``#\_________Z]3`@```````@```#$!``#\ +M_________\93`@```````@```,L!``#\_________^)3`@```````@```/L! +M``#\__________-3`@```````@```+\!``#\_________PA4`@```````@`` +M`+H"``#\_________QU4`@```````@```+H"``#\_________S!4`@`````` +M`@```%P!``#\_________T)4`@```````@```-0!``#\_________UM4`@`` +M`````@```)("``#\_________[54`@```````@```+`!``#\_________\!4 +M`@```````@```*P!``#\_________U95`@```````@```)("``#\________ +M_W%5`@```````@```,H!``#\_________X%5`@```````@```!8"``#\____ +M_____Z15`@```````@```,H!``#\_________ZQ5`@```````@```-P!``#\ +M_________\55`@``````"P````,````0'0```````-Q5`@```````@```'0! +M``#\__________A5`@```````@```'0!``#\_________Q16`@```````@`` +M`#$!``#\_________S=6`@```````@```/,!``#\_________TY6`@`````` +M`@```%`!``#\_________W%6`@```````@```#$!``#\_________X]6`@`` +M`````@```/,!``#\_________Z96`@```````@```#$!``#\_________[A6 +M`@```````@```%`!``#\_________]-6`@```````@```#$!``#\________ +M_^A6`@```````@```#$!``#\_________QQ7`@```````@```%<!``#\____ +M_____R97`@```````@```*0"``#\_________YE7`@```````@```#0!``#\ +M_________[-7`@```````@```/\!``#\_________\Q7`@```````@```/L! +M``#\_________]U7`@```````@```+\!``#\__________!7`@``````"P`` +M``8```"P`0```````/I7`@```````@```*\"``#\_________Q!8`@`````` +M`@```+H"``#\_________R98`@```````@```+H"``#\_________SE8`@`` +M`````@```%P!``#\_________V18`@```````@```,L!``#\_________YM8 +M`@```````@```,,!``#\__________%8`@```````@```-L!``#\________ +M_Q-9`@```````@```,L!``#\_________V19`@``````"P````4```"0!P`` +M`````&Y9`@```````@```*\"``#\_________Y)9`@```````@```,H!``#\ +M_________\)9`@``````"P````4```#`!P```````,Q9`@```````@```*\" +M``#\_________TA:`@``````"P````4````X!P```````%):`@```````@`` +M`*\"``#\_________X5:`@``````"P````4```"0!P```````(]:`@`````` +M`@```*\"``#\_________R1;`@```````@```)`!``#\_________S-<`@`` +M`````@```$0!``#\_________W)<`@```````@```"D"``#\_________YM< +M`@``````"P````4```"0!P```````*5<`@```````@```*\"``#\________ +M_])=`@```````@```(8"``#\__________E=`@```````@```)("``#\____ +M_____S!>`@```````@```)("``#\_________WY>`@```````@```)("``#\ +M_________P-?`@``````"P````4```#P!P````````U?`@```````@```*\" +M``#\_________T!?`@``````"P````4````P"````````$I?`@```````@`` +M`*\"``#\_________V1?`@``````"P````4```!P"````````&Y?`@`````` +M`@```*\"``#\_________Y-?`@``````"P````8````,`@```````)U?`@`` +M`````@```*\"``#\_________]I?`@``````"P````4```"@"````````.1? +M`@```````@```*\"``#\_________QE@`@``````"P````8````H`@`````` +M`"-@`@```````@```*\"``#\_________T9@`@``````"P````8````_`@`` +M`````%!@`@```````@```*\"``#\_________UM@`@``````"P````8```!; +M`@```````&5@`@```````@```*\"``#\_________[=@`@```````@```#T! +M``#\_________P9A`@```````@```)("``#\_________RIA`@```````@`` +M`)("``#\_________TQA`@```````@```)("``#\_________W!A`@`````` +M`@```)("``#\_________W]A`@``````"P````8```!L`@```````(EA`@`` +M`````@```*\"``#\_________R1B`@```````@```)("``#\_________T]B +M`@``````"P````8```")`@```````%EB`@```````@```*\"``#\________ +M_YIB`@``````"P````4```#8"````````*1B`@```````@```*\"``#\____ +M_____[=B`@```````@```($!``#\_________]!B`@```````@```)("``#\ +M_________WAC`@```````@```(D!``#\_________Y5C`@```````@```.0! +M``#\_________Q5D`@```````@```"L"``#\_________RED`@```````@`` +M`)$!``#\_________T]D`@```````@```+`"``#\_________W%D`@`````` +M`@```+`"``#\_________Y)D`@```````@```+`"``#\_________[!D`@`` +M`````@```+`"``#\_________]9D`@```````@```+`"``#\_________P%E +M`@```````@```+`"``#\_________QME`@```````@```+`"``#\________ +M_S5E`@```````@```+`"``#\_________U-E`@```````@```+`"``#\____ +M_____VUE`@```````@```+`"``#\_________X]E`@```````@```+`"``#\ +M_________[%E`@```````@```+`"``#\_________\YE`@```````@```+`" +M``#\_________^ME`@```````@```+`"``#\_________PAF`@```````@`` +M`+`"``#\_________R5F`@```````@```+`"``#\_________T%F`@`````` +M`@```+`"``#\_________V-F`@```````@```+`"``#\_________WQF`@`` +M`````@```+`"``#\_________Z!F`@```````@```(0"``#\_________\!F +M`@```````@```(0"``#\_________^=F`@```````@```(0"``#\________ +M_PMG`@```````@```(0"``#\_________R]G`@```````@```(0"``#\____ +M_____U)G`@```````@```(0"``#\_________W)G`@```````@```(0"``#\ +M_________YQG`@```````@```(0"``#\_________^=G`@```````@```,L! +M``#\__________=G`@```````@````@"``#\_________W!H`@``````"P`` +M``$```"@!@(``````'YH`@```````@```,4!``#\_________XIH`@`````` +M`@```$4!``#\_________UEI`@```````@```,L!``#\_________XYI`@`` +M`````@```+H"``#\_________Z1I`@```````@```#$!``#\_________[5I +M`@```````@```%<!``#\_________[]I`@```````@```*0"``#\________ +M__!I`@```````@```'@!``#\_________XEK`@```````@```"L"``#\____ +M_____PQL`@```````@```+("``#\_________TAL`@```````@```+("``#\ +M_________X-L`@```````@```+("``#\_________[IL`@```````@```+(" +M``#\__________)L`@```````@```+("``#\_________P5M`@```````@`` +M`+("``#\_________QMM`@```````@```+("``#\_________X%M`@`````` +M`@```+("``#\_________\YM`@```````@```+("``#\_________QYN`@`` +M`````@```+("``#\_________V%N`@```````@```+("``#\_________Z]N +M`@```````@```+("``#\_________P=O`@```````@```+("``#\________ +M_TAO`@```````@```+("``#\_________W%O`@```````@```-D!``#\____ +M_____WUO`@```````@```+("``#\_________Z9O`@```````@```*8!``#\ +M_________[)O`@```````@```+("``#\_________]MO`@```````@```*8! +M``#\_________^=O`@```````@```+("``#\_________Q!P`@```````@`` +M`*8!``#\_________QQP`@```````@```+("``#\_________T5P`@`````` +M`@```*8!``#\_________U%P`@```````@```+("``#\_________ZUP`@`` +M`````@```.8!``#\_________[YS`@```````@```+T"``#\_________]AS +M`@```````@```+T"``#\__________)S`@```````@```+T"``#\________ +M_PQT`@```````@```+T"``#\_________R9T`@```````@```+T"``#\____ +M_____T!T`@```````@```+T"``#\_________VAT`@```````@```,L!``#\ +M_________[UT`@```````@```+T"``#\_________]YT`@```````@```,L! +M``#\_________R]U`@```````@```+T"``#\_________U-U`@```````@`` +M`,L!``#\_________\)U`@```````@```$<!``#\_________R%V`@`````` +M`@```)("``#\_________U1V`@```````@```)("``#\_________VQV`@`` +M`````@```+<!``#\_________[=V`@```````@```#$!``#\_________\AV +M`@```````@```%<!``#\_________])V`@```````@```*0"``#\________ +M__IV`@```````@```/L!``#\_________P]W`@```````@```+H"``#\____ +M_____R1W`@```````@```+H"``#\_________SMW`@```````@```%P!``#\ +M_________TMW`@```````@```)("``#\_________[IW`@```````@```-,! +M``#\_________^9W`@```````@```+H"``#\_________U-X`@```````@`` +M`#X"``#\_________X1X`@```````@```,L!``#\_________^IX`@`````` +M"P````4`````"0```````/1X`@```````@```*\"``#\_________R=Y`@`` +M`````@```,H!``#\_________U=Y`@``````"P````4```#`!P```````&%Y +M`@```````@```*\"``#\_________]UY`@``````"P````4````X!P`````` +M`.=Y`@```````@```*\"``#\_________PYZ`@``````"P````8````,`@`` +M`````!AZ`@```````@```*\"``#\_________UIZ`@``````"P````4```"@ +M"````````&1Z`@```````@```*\"``#\_________QA[`@``````"P````8` +M``"=`@```````")[`@```````@```*\"``#\_________RI[`@```````@`` +M`)`!``#\_________SY\`@```````@```-@!``#\_________VA\`@`````` +M`@```$0!``#\_________XA\`@```````@```/D!``#\_________\Y\`@`` +M`````@```#D"``#\_________UR``@```````@```-$!``#\_________\&` +M`@```````@```(8"``#\_________\Z``@```````@```"H"``#\________ +M_T:!`@```````@```(8"``#\_________ZZ!`@```````@````@"``#\____ +M_____\*!`@```````@```$8"``#\_________]6!`@```````@```$4"``#\ +M__________B!`@```````@```(8"``#\_________TJ"`@``````"P```*@! +M`````````````)2"`@```````@```,4!``#\_________Z6"`@```````@`` +M`"X!``#\_________[""`@```````@```$4!``#\_________Q^#`@`````` +M`@````@"``#\_________S.#`@```````@```$8"``#\_________T:#`@`` +M`````@```$4"``#\_________ZJ#`@``````"P```*@!`````````````/F# +M`@```````@```,4!``#\_________PJ$`@```````@```"X!``#\________ +M_Q6$`@```````@```$4!``#\_________YB$`@```````@````@"``#\____ +M_____ZR$`@```````@```$8"``#\_________[^$`@```````@```$4"``#\ +M_________]R$`@```````@```(8"``#\_________R"%`@``````"P```#@" +M`````````````$2%`@```````@```,4!``#\_________U.%`@```````@`` +M`"X!``#\_________UZ%`@```````@```$4!``#\_________\&%`@`````` +M`@```-$!``#\_________^^%`@```````@````H"``#\_________T.&`@`` +M`````@````@"``#\_________U>&`@```````@```$8"``#\_________VJ& +M`@```````@```$4"``#\_________[R&`@``````"P```#@"```````````` +M`-V&`@```````@```,4!``#\_________^V&`@```````@```"X!``#\____ +M______B&`@```````@```$4!``#\_________ZB'`@```````@```&X!``#\ +M_________^:'`@```````@```&X!``#\_________R2(`@```````@```+4! +M``#\_________S*(`@```````@```%0!``#\_________V&(`@```````@`` +M`%X!``#\_________WJ(`@```````@```%0!``#\_________ZB(`@`````` +M`@```%0!``#\_________WZ)`@```````@```'T!``#\_________\&)`@`` +M`````@```+8!``#\__________R)`@```````@```%X!``#\_________T.* +M`@```````@````@"``#\_________U>*`@```````@```$8"``#\________ +M_VJ*`@```````@```$4"``#\_________[V*`@``````"P````P"```````` +M`````-Z*`@```````@```,4!``#\_________^V*`@```````@```"X!``#\ +M__________B*`@```````@```$4!``#\__________^+`@```````@```#`! +M``#\_________PJ,`@```````@```$4"``#\_________SF,`@```````@`` +M`(8"``#\_________W^,`@```````@```#`!``#\_________XJ,`@`````` +M`@```$4"``#\_________S&-`@```````@```&@!``#\_________T2-`@`` +M`````@```#`!``#\_________T^-`@```````@```$4"``#\_________VF- +M`@```````@```'\"``#\_________WZ-`@``````"P```%8!```````````` +M`)*-`@```````@```)T"``#\_________PZ.`@```````@```/0!``#\____ +M______V.`@```````@```.\!``#\_________S&/`@```````@```.\!``#\ +M_________VF/`@```````@```%X!``#\_________]>0`@```````@```(4! +M``#\_________^F0`@```````@```',!``#\__________Z0`@```````@`` +M`*L!``#\_________Q"1`@```````@```&@!``#\_________RJ1`@`````` +M`@```'\"``#\_________S^1`@``````"P```%8!`````````````%F1`@`` +M`````@```)T"``#\_________Z61`@```````@```,L!``#\_________Q*2 +M`@```````@```#`"``#\_________SB2`@```````@```+P!``#\________ +M_UR2`@```````@```!P"``#\_________\22`@```````@```,L!``#\____ +M______^2`@```````@```%X!``#\_________RV3`@```````@```,,!``#\ +M_________UF3`@```````@```#`!``#\_________VB3`@```````@```$4" +M``#\_________Z&3`@```````@```%X!``#\_________UF4`@```````@`` +M`)("``#\_________\N8`@```````@```#<"``#\_________\V9`@`````` +M"P````,```!`'0```````&>:`@```````@```)("``#\_________YV:`@`` +M`````@```)("``#\_________\B:`@```````@```)("``#\_________P*; +M`@```````@```)("``#\_________T>;`@```````@```)("``#\________ +M_WV;`@```````@```)("``#\_________ZB;`@```````@```)("``#\____ +M_____]V;`@```````@```)("``#\_________YV<`@``````"P````,````` +M'@```````+F<`@``````"P````,````%'@```````,F<`@``````"P````,` +M```$'@```````-J<`@``````"P````,`````'@```````.N<`@```````@`` +M```"``#\_________WV=`@```````@```,L!``#\_________ZV=`@`````` +M`@```,L!``#\_________]V=`@```````@```,L!``#\_________RV>`@`` +M`````@```,L!``#\_________UV>`@```````@```,L!``#\_________]J> +M`@```````@```,L!``#\_________R.@`@```````@```$0!``#\________ +M_V"A`@```````@```,H!``#\_________Z.A`@```````@```.T!``#\____ +M_____^.A`@```````@```.T!``#\_________]^B`@```````@```#`!``#\ +M_________^VB`@```````@```(L!``#\_________Q>D`@```````@```$4! +M``#\_________T"D`@```````@```&<!``#\_________TRD`@```````@`` +M`#<"``#\_________V6D`@```````@```-@!``#\_________]*D`@`````` +M`@```/(!``#\_________SZE`@```````@```)4!``#\_________QBF`@`` +M`````@```$4"``#\_________Y.F`@```````@```'<!``#\_________YZF +M`@```````@```$4"``#\_________]>F`@```````@```,L!``#\________ +M_^*F`@```````@```&H!``#\_________^JF`@```````@```$D!``#\____ +M_____S"G`@```````@````@"``#\_________T"G`@```````@```$8"``#\ +M_________UJG`@```````@```$4"``#\_________YVG`@``````"P```#4! +M`````````````*BG`@```````@```$4!``#\_________^.G`@```````@`` +M``@"``#\_________R2H`@``````"P```#4!`````````````"^H`@`````` +M`@```$4!``#\_________W^H`@```````@````@"``#\_________Y.H`@`` +M`````@```$8"``#\_________Z:H`@```````@```$4"``#\__________&H +M`@``````"P````$```#PJ0(``````/ZH`@```````@```,4!``#\________ +M_PZI`@```````@```"X!``#\_________QFI`@```````@```$4!``#\____ +M_____V2I`@```````@````@"``#\_________Z2I`@``````"P```)T!```` +M`````````*^I`@```````@```$4!``#\_________[^I`@```````@```*0" +M``#\_________\NI`@```````@```*0"``#\_________\JJ`@```````@`` +M`#`!``#\_________]JJ`@```````@```(L!``#\_________^6J`@`````` +M`@```$4"``#\_________RBK`@```````@````\"``#\_________TBK`@`` +M`````@```#`!``#\_________UBK`@```````@```(L!``#\_________V.K +M`@```````@```$4"``#\_________V*L`@```````@```*0"``#\________ +M_VVL`@```````@```$4"``#\_________Y^L`@```````@````\"``#\____ +M_____ZNL`@```````@```*0"``#\_________[:L`@```````@```$4"``#\ +M_________P"M`@```````@````@"``#\_________T*M`@```````@```!4" +M``#\_________U&M`@```````@```$4"``#\_________V>M`@``````"P`` +M`#4!`````````````'*M`@```````@```$4!``#\_________[:M`@`````` +M`@````@"``#\_________]2M`@```````@```$8"``#\_________^ZM`@`` +M`````@```$4"``#\_________U*N`@``````"P```#4!`````````````&.N +M`@```````@```,4!``#\_________W6N`@```````@```"X!``#\________ +M_X"N`@```````@```$4!``#\_________].N`@```````@````@"``#\____ +M______2N`@```````@```$8"``#\_________Q"O`@```````@```$4"``#\ +M_________WJO`@``````"P```#4!`````````````(>O`@```````@```,4! +M``#\_________YBO`@```````@```"X!``#\_________Z.O`@```````@`` +M`$4!``#\__________JO`@```````@````@"``#\_________QBP`@`````` +M`@```$8"``#\_________S2P`@```````@```$4"``#\_________Y*P`@`` +M````"P```#4!`````````````*:P`@```````@```,4!``#\_________[>P +M`@```````@```"X!``#\_________\*P`@```````@```$4!``#\________ +M_QJQ`@```````@````@"``#\_________SBQ`@```````@```$8"``#\____ +M_____U2Q`@```````@```$4"``#\_________ZJQ`@``````"P```#4!```` +M`````````+>Q`@```````@```,4!``#\_________\BQ`@```````@```"X! +M``#\_________].Q`@```````@```$4!``#\_________T>R`@```````@`` +M``@"``#\__________6R`@``````"P````$```!0I0(```````.S`@`````` +M`@```,4!``#\_________PZS`@```````@```$4!``#\_________W&U`@`` +M`````@```'0!``#\_________X*U`@```````@```'<!``#\_________]RU +M`@```````@```,L!``#\_________[:V`@```````@````X"``#\________ +M_T6W`@```````@````@"``#\_________V2W`@```````@````$"``#\____ +M_____W>W`@```````@```$4"``#\_________\RW`@``````"P```%T!```` +M`````````-JW`@```````@```,4!``#\_________^6W`@```````@```$4! +M``#\_________T6X`@```````@````@"``#\_________UFX`@```````@`` +M``$"``#\_________["X`@``````"P```%T!`````````````+ZX`@`````` +M`@```,4!``#\_________\FX`@```````@```$4!``#\_________].X`@`` +M`````@```*0"``#\_________RRY`@```````@````@"``#\_________SRY +M`@```````@````$"``#\_________X^Y`@``````"P```%T!```````````` +M`)VY`@```````@```,4!``#\_________ZBY`@```````@```$4!``#\____ +M______6Y`@```````@````@"``#\_________P6Z`@```````@````$"``#\ +M_________U2Z`@``````"P```%T!`````````````&*Z`@```````@```,4! +M``#\_________VVZ`@```````@```$4!``#\_________Z2Z`@```````@`` +M`*0!``#\_________[2Z`@```````@```$("``#\_________\"[`@`````` +M`@```*0!``#\_________]"[`@```````@```$("``#\_________T"\`@`` +M`````@```$L!``#\_________].\`@```````@```+0!``#\_________S&] +M`@```````@```#8"``#\_________V"]`@```````@```*0!``#\________ +M_W"]`@```````@```$("``#\_________]Z]`@```````@```!0"``#\____ +M_____T*^`@```````@```"<"``#\_________YB^`@```````@```$0!``#\ +M_________[N^`@```````@```/(!``#\_________\R^`@```````@```"<" +M``#\_________P._`@```````@```$0!``#\_________Q2_`@```````@`` +M`"<"``#\_________S:_`@```````@```'\"``#\_________UF_`@`````` +M`@```'\"``#\_________\"_`@```````@```*`!``#\_________PK``@`` +M`````@```$0!``#\_________R+``@```````@```)4!``#\_________RW` +M`@```````@```#X"``#\_________^S``@```````@```,L!``#\________ +M___``@```````@```-L!``#\_________Q[!`@``````"P```#T!```````` +M`````#7!`@```````@```)T"``#\_________\G!`@```````@```,L!``#\ +M_________]S!`@```````@```#X"``#\__________?!`@``````"P```#(" +M``````````````["`@```````@```)T"``#\_________\7"`@```````@`` +M`$0!``#\_________]#"`@```````@```+$!``#\_________]O"`@`````` +M`@````X"``#\_________W+#`@``````"P```#T!`````````````(G#`@`` +M`````@```)T"``#\_________RK$`@``````"P```#("`````````````$'$ +M`@```````@```)T"``#\__________3%`@```````@```,L!``#\________ +M_T[&`@```````@```$(!``#\_________UW&`@```````@```$4"``#\____ +M_____YK&`@```````@```/,!``#\_________\K&`@```````@```+P!``#\ +M_________^;&`@```````@```$@!``#\_________Q?'`@```````@```,L! +M``#\_________X''`@```````@```#`"``#\_________Y?'`@```````@`` +M`$(!``#\_________Z3'`@```````@```$4"``#\_________Q3(`@`````` +M`@```#$!``#\_________T3(`@```````@```%<!``#\_________T[(`@`` +M`````@```*0"``#\_________W3(`@```````@```#0!``#\_________X[( +M`@```````@```/\!``#\_________[W(`@```````@```/L!``#\________ +M_\[(`@```````@```+\!``#\_________^'(`@``````"P````8```"Z`@`` +M`````.O(`@```````@```*\"``#\_________P#)`@```````@```+H"``#\ +M_________Q7)`@```````@```+H"``#\_________UW)`@```````@```%P! +M``#\_________X3)`@```````@```,L!``#\_________\+)`@```````@`` +M`,,!``#\_________PC*`@```````@```#$!``#\_________S?*`@`````` +M`@```%<!``#\_________T'*`@```````@```*0"``#\_________V?*`@`` +M`````@```#0!``#\_________X'*`@```````@```/\!``#\_________YS* +M`@```````@```/L!``#\_________ZW*`@```````@```+\!``#\________ +M_\#*`@``````"P````8```"Z`@```````,K*`@```````@```*\"``#\____ +M_____]_*`@```````@```+H"``#\__________#*`@``````"P````8```"Z +M`@```````/K*`@```````@```*\"``#\_________P_+`@```````@```+H" +M``#\_________X_+`@```````@```+H"``#\__________G+`@```````@`` +M`,L!``#\_________R[,`@```````@```+H"``#\_________T?,`@`````` +M`@```%P!``#\_________Y;,`@```````@````@"``#\_________ZK,`@`` +M`````@```$8"``#\_________\3,`@```````@```$4"``#\_________TG- +M`@``````"P```#4!`````````````%K-`@```````@```,4!``#\________ +M_VS-`@```````@```"X!``#\_________W?-`@```````@```$4!``#\____ +M_____[3-`@```````@```*0!``#\_________\3-`@```````@```$("``#\ +M_________[C.`@```````@```"<"``#\__________G.`@```````@```$(" +M``#\_________TW/`@```````@```,L!``#\_________RK3`@```````@`` +M`/0!``#\_________U73`@```````@```!X"``#\_________]O3`@`````` +M"P````$```"@X`(``````/S3`@```````@```'L!``#\__________O4`@`` +M````"P````$```"@X`(``````"_5`@```````@```'L!``#\_________RS6 +M`@``````"P````$```"@X`(``````%_6`@```````@```'L!``#\________ +M_\?6`@``````"P````$```"@X`(``````/?6`@```````@```'L!``#\____ +M_____T?7`@``````"P````$```"@X`(``````'?7`@```````@```'L!``#\ +M_________T78`@```````@```!\"``#\_________[W8`@```````@```#8! +M``#\_________Y79`@```````@```.`!``#\_________S/:`@```````@`` +M`+D!``#\_________Z?:`@```````@```/0!``#\_________]?:`@`````` +M`@```"`"``#\__________3:`@```````@```,0!``#\_________Q7<`@`` +M`````@```!X"``#\_________]O=`@```````@```-`!``#\_________QW> +M`@```````@```.`!``#\_________\3>`@```````@```+D!``#\________ +M_T7?`@```````@```&`!``#\_________]K?`@```````@```+D!``#\____ +M_____X+@`@```````@```+D!``#\_________]3@`@```````@```!X"``#\ +M_________S[A`@```````@```+D!``#\_________WKA`@```````@```+D! +M``#\_________\OA`@```````@```+D!``#\_________POB`@```````@`` +M`+D!``#\_________WWE`@```````@```+D!``#\_________^#E`@`````` +M`@```)("``#\_________P3F`@```````@```)("``#\_________V'G`@`` +M`````@```-T!``#\_________Z_H`@```````@```)("``#\_________\[H +M`@```````@```)("``#\_________^KH`@```````@```$4"``#\________ +M_TGI`@```````@```*0"``#\_________UGI`@```````@```)("``#\____ +M_____X+I`@```````@```*0"``#\_________Y+I`@```````@```)("``#\ +M_________Y_J`@```````@```*0"``#\_________Z[J`@```````@```)(" +M``#\_________\#J`@```````@```*0"``#\_________\CJ`@```````@`` +M`)("``#\_________^?J`@```````@```*0"``#\_________^_J`@`````` +M`@```)("``#\_________QGK`@```````@```*0"``#\_________RCK`@`` +M`````@```)("``#\_________SKK`@```````@```*0"``#\_________T+K +M`@```````@```)("``#\_________V'K`@```````@```*0"``#\________ +M_VGK`@```````@```)("``#\_________Z[K`@```````@```*0"``#\____ +M_____QSL`@```````@```*0"``#\_________S'L`@```````@```%<!``#\ +M_________X[L`@```````@````@"``#\__________WL`@``````"P```*D! +M``````````````3M`@``````"P```#P!`````````````!?M`@```````@`` +M`$4!``#\_________W7M`@```````@````@"``#\_________^7M`@`````` +M"P```%(!`````````````.WM`@```````@```$4!``#\_________X#N`@`` +M`````@```)("``#\_________Z[N`@```````@```)("``#\___________N +M`@```````@```.,!``#\_________PSO`@```````@```$T!``#\________ +M_U_O`@```````@````@"``#\_________[+O`@``````"P```%(!```````` +M`````+KO`@```````@```$4!``#\_________U3P`@```````@```)("``#\ +M_________X+P`@```````@```)("``#\_________\_P`@```````@```"P! +M``#\_________]SP`@```````@```$T!``#\_________T;Q`@```````@`` +M``@"``#\_________YCQ`@``````"P```*D!`````````````)_Q`@`````` +M"P```#P!`````````````++Q`@```````@```$4!``#\_________PCR`@`` +M`````@````@"``#\_________W/R`@``````"P````$```#P)0,``````(7R +M`@```````@```$4!``#\_________[+R`@``````"P```%\!```````````` +M`$[S`@```````@```*0"``#\_________UOS`@```````@```)("``#\____ +M_____W#S`@```````@```*0"``#\_________WKS`@```````@```)("``#\ +M_________S[T`@```````@```*0"``#\_________TOT`@```````@```)(" +M``#\_________V#T`@```````@```*0"``#\_________VKT`@```````@`` +M`)("``#\_________P;U`@```````@```#L"``#\_________SCU`@`````` +M`@```"("``#\_________T#U`@```````@```-T!``#\_________X;U`@`` +M`````@```)("``#\_________Z;U`@```````@```)("``#\_________\+U +M`@```````@```)("``#\_________^_U`@```````@```)("``#\________ +M_SWV`@```````@````L"``#\_________T7V`@```````@```"\!``#\____ +M_____ZOV`@```````@```*0"``#\_________[OV`@```````@```)("``#\ +M_________^#V`@```````@```*0"``#\__________#V`@```````@```)(" +M``#\__________GY`@```````@```","``#\_________ZSZ`@```````@`` +M`/0!``#\_________Q;\`@```````@```/0!``#\_________SG\`@`````` +M`@```/0!``#\_________[+\`@```````@```&T!``#\_________]/]`@`` +M`````@```*0"``#\__________[]`@```````@```*0"``#\_________[[^ +M`@```````@```$$!``#\_________]_^`@```````@```.L!``#\________ +M__7^`@```````@```"8"``#\_________P3_`@```````@```"8"``#\____ +M_____XW_`@```````@```)("``#\_________[O_`@```````@```)("``#\ +M_________^__`@```````@```*0"``#\_________P<``P```````@```)(" +M``#\_________U4``P```````@```)("``#\_________[P``P```````@`` +M`)("``#\_________R\!`P```````@```)("``#\_________^<!`P`````` +M`@```*0"``#\__________H!`P```````@```)("``#\_________Q<"`P`` +M`````@```/$!``#\_________R("`P```````@````,"``#\_________S0" +M`P```````@```*0"``#\_________TX"`P```````@```*0"``#\________ +M_V@"`P```````@```*0"``#\_________X@"`P```````@```(\!``#\____ +M_____YD"`P```````@```)("``#\_________^<"`P```````@```*0"``#\ +M__________H"`P```````@```)("``#\_________Q<#`P```````@```/$! +M``#\_________R(#`P```````@````,"``#\_________S0#`P```````@`` +M`*0"``#\_________TX#`P```````@```*0"``#\_________V@#`P`````` +M`@```*0"``#\_________X@#`P```````@```(\!``#\_________YD#`P`` +M`````@```)("``#\_________[T#`P```````@```*0"``#\_________\@# +M`P```````@```+`!``#\_________^8#`P```````@```(X!``#\________ +M__,#`P```````@```)("``#\_________PX$`P```````@```)("``#\____ +M_____R8$`P```````@```)("``#\_________Q`%`P```````@```)("``#\ +M_________ZL%`P```````@````@"``#\_________\D%`P```````@```$8" +M``#\_________^4%`P```````@```$4"``#\_________TL&`P``````"P`` +M``$```#P)0,``````%@&`P```````@```,4!``#\_________V<&`P`````` +M`@```"X!``#\_________W(&`P```````@```$4!``#\_________XP'`P`` +M````"P````4````X"0```````)8'`P```````@```*\"``#\_________R4( +M`P``````"P````4```"("0```````"\(`P```````@```*\"``#\________ +M_S\(`P```````@```,,!``#\_________UH(`P```````@```,8!``#\____ +M_____RL)`P```````@```/`!``#\_________Z8)`P``````"P```$,!```` +M`````````+$)`P```````@```.$!``#\_________\D)`P```````@```+,! +M``#\_________R,*`P```````@```/`!``#\_________S8*`P```````@`` +M`)\!``#\_________V8*`P```````@```!P"``#\_________QD+`P`````` +M`@```&\!``#\_________R,+`P```````@```#\"``#\_________^L+`P`` +M`````@```,,!``#\_________VP,`P```````@```,L!``#\_________\$, +M`P```````@```#`"``#\_________^,,`P```````@```+P!``#\________ +M__,,`P```````@```!P"``#\_________YL-`P```````@```)L!``#\____ +M_____TH.`P```````@```,L!``#\_________\@.`P```````@```)L!``#\ +M_________V,/`P```````@```+H"``#\_________WD/`P```````@```+H" +M``#\_________ZP/`P```````@```)L!``#\_________Q(0`P```````@`` +M`+H"``#\_________V`0`P```````@```+H"``#\_________YX0`P`````` +M`@```#$!``#\_________]00`P```````@```%<!``#\_________]X0`P`` +M`````@```*0"``#\_________P01`P```````@```#0!``#\_________QX1 +M`P```````@```/\!``#\_________SD1`P```````@```/L!``#\________ +M_TH1`P```````@```+\!``#\_________UT1`P``````"P````8```#0`@`` +M`````&<1`P```````@```*\"``#\_________WP1`P```````@```+H"``#\ +M_________Y$1`P``````"P````8```#0`@```````)L1`P```````@```*\" +M``#\_________[`1`P```````@```+H"``#\__________X1`P```````@`` +M`+H"``#\_________TH2`P```````@```%P!``#\_________V42`P`````` +M`@```+H"``#\_________[T2`P```````@```.@!``#\_________^D2`P`` +M`````@```,,!``#\_________P83`P```````@```+,!``#\_________TT3 +M`P```````@```!`"``#\_________YL3`P``````"P````,```"`'@`````` +M``$4`P```````@```-,!``#\_________QT4`P```````@```*X!``#\____ +M_____SD4`P```````@```*X!``#\_________U44`P```````@```*X!``#\ +M_________W$4`P```````@```*X!``#\_________Y(4`P```````@```*(! +M``#\_________[04`P```````@```*(!``#\_________^$4`P```````@`` +M`*(!``#\_________P,5`P```````@```*(!``#\_________PT5`P`````` +M`@```*0"``#\_________SH5`P```````@```*(!``#\_________UP5`P`` +M`````@```*(!``#\_________V85`P```````@```*0"``#\_________X(5 +M`P```````@```*X!``#\_________YX5`P```````@```*X!``#\________ +M_[H5`P```````@```*X!``#\_________]P5`P```````@```*(!``#\____ +M______@5`P```````@```*X!``#\_________TT6`P```````@```*0"``#\ +M_________\H6`P```````@```)("``#\_________^@6`P```````@```)(" +M``#\__________P6`P```````@```*0"``#\_________Q87`P```````@`` +M`+P!``#\_________R47`P```````@```*0"``#\_________SP7`P`````` +M`@```*X!``#\_________T87`P```````@```*0"``#\_________V(7`P`` +M`````@```*X!``#\_________VP7`P```````@```*0"``#\_________YD7 +M`P```````@```*(!``#\_________Z,7`P```````@```*0"``#\________ +M_[\7`P```````@```*X!``#\_________\D7`P```````@```*0"``#\____ +M_____],7`P```````@```(8!``#\_________^$7`P```````@```.<!``#\ +M_________P,8`P```````@```*(!``#\_________R48`P```````@```*(! +M``#\_________T<8`P```````@```*(!``#\_________VD8`P```````@`` +M`*(!``#\_________X48`P```````@```*X!``#\_________Y08`P`````` +M`@```*0"``#\_________ZL8`P```````@```*X!``#\_________[48`P`` +M`````@```*0"``#\_________]<8`P```````@```*(!``#\__________,8 +M`P```````@```*X!``#\_________Q09`P```````@```*(!``#\________ +M_RD9`P```````@```#\"``#\_________T(9`P```````@```*X!``#\____ +M_____TP9`P```````@```*0"``#\_________W89`P```````@```*(!``#\ +M_________X`9`P```````@```*0"``#\_________YD9`P```````@```*X! +M``#\_________Z,9`P```````@```*0"``#\_________]\:`P```````@`` +M`#`!``#\_________^H:`P```````@```$4"``#\_________U4;`P`````` +M`@```)("``#\_________WP;`P```````@```)("``#\_________[T;`P`` +M`````@```)("``#\_________^8;`P```````@```#`!``#\__________$; +M`P```````@```$4"``#\__________P;`P```````@```-,!``#\________ +M_RL<`P```````@```-,!``#\_________W0=`P```````@```!`"``#\____ +M_____WX=`P```````@```*0"``#\_________YT=`P```````@```!`"``#\ +M_________Z<=`P```````@```*0"``#\_________S4>`P```````@```)(" +M``#\_________TP>`P```````@```)("``#\_________XL>`P```````@`` +M`*0"``#\_________Z0>`P```````@```+P!``#\_________[\>`P`````` +M`@````("``#\_________]0>`P```````@````("``#\_________^(>`P`` +M`````@```*0"``#\_________Q`?`P```````@```)("``#\_________S8? +M`P```````@```)("``#\_________TX?`P```````@```*0"``#\________ +M_U\?`P``````"P````4```#`"0```````&D?`P```````@```*\"``#\____ +M_____WD?`P```````@````@"``#\_________\@?`P``````"P````$```#P +M)0,``````-,?`P```````@```$4!``#\_________^0?`P``````"P````8` +M``#F`@```````.X?`P```````@```*\"``#\__________X?`P```````@`` +M``@"``#\_________TT@`P``````"P````$```#P)0,``````%@@`P`````` +M`@```$4!``#\_________X,@`P```````@````@"``#\_________]8@`P`` +M````"P````$```#P)0,``````.0@`P```````@```$4!``#\__________H@ +M`P```````@````@"``#\_________TTA`P``````"P````$```#P)0,````` +M`%LA`P```````@```$4!``#\_________W$A`P```````@````@"``#\____ +M_____\`A`P``````"P````$```#P)0,``````,LA`P```````@```$4!``#\ +M_________^@A`P```````@````@"``#\_________S<B`P``````"P````$` +M``#P)0,``````$(B`P```````@```$4!``#\_________U@B`P```````@`` +M``@"``#\_________[(B`P``````"P````$```#P)0,``````+TB`P`````` +M`@```$4!``#\__________@B`P```````@```/`!``#\_________Q,C`P`` +M`````@```)P!``#\_________VLC`P```````@```-,!``#\_________Z<C +M`P```````@```-,!``#\_________[DC`P```````@```,L!``#\________ +M_PDD`P```````@```#`"``#\_________S$D`P```````@```+P!``#\____ +M_____T8D`P```````@```!P"``#\_________W0D`P```````@```,L!``#\ +M_________](D`P```````@```#`"``#\__________TD`P```````@```+P! +M``#\_________Q(E`P```````@```!P"``#\_________TLE`P```````@`` +M`,L!``#\_________WDE`P```````@```%X!``#\_________Y<E`P`````` +M`@```,,!``#\_________Q8G`P```````@```#`!``#\_________R$G`P`` +M`````@```$4"``#\_________Z<G`P```````@```*0"``#\_________^TG +M`P```````@```/,!``#\_________P(H`P```````@```+P!``#\________ +M_UHH`P``````"P````4```#X"0```````&0H`P```````@```*\"``#\____ +M_____W8H`P```````@```+X!``#\__________4H`P```````@```*0"``#\ +M_________Y,I`P```````@```#`!``#\_________YXI`P```````@```$4" +M``#\_________[4I`P```````@```#`!``#\_________\`I`P```````@`` +M`$4"``#\_________\LI`P```````@```+P!``#\_________[$J`P`````` +M`@```+T!``#\_________\@J`P```````@```+T!``#\_________]\J`P`` +M`````@```&0!``#\__________$J`P```````@```,<!``#\_________P0K +M`P```````@```.X!``#\_________R$K`P```````@```(0!``#\________ +M_S,K`P```````@```+(!``#\_________T4K`P```````@```#P"``#\____ +M_____UDK`P```````@```"T"``#\_________X0K`P```````@```,L!``#\ +M_________^(K`P```````@```#`"``#\_________PTL`P```````@```+P! +M``#\_________R(L`P```````@```!P"``#\_________W<L`P```````@`` +M`%X!``#\_________X8L`P```````@```,L!``#\_________[$L`P`````` +M"P````8```#\`@```````+LL`P```````@```*\"``#\_________\@L`P`` +M`````@```%X!``#\_________^@L`P```````@```,,!``#\_________X0N +M`P```````@```/T!``#\_________Y(N`P``````"P````,```"H'P`````` +M`.@N`P```````@```+,!``#\_________UXO`P```````@```/`!``#\____ +M_____W,O`P```````@```)\!``#\_________[(O`P```````@```!P"``#\ +M_________T0P`P```````@```,L!``#\_________V4P`P```````@```#X! +M``#\_________Z,P`P```````@```/0!``#\_________U0Q`P```````@`` +M`+H"``#\_________XPQ`P```````@```#$!``#\_________Z8Q`P`````` +M`@```%<!``#\_________[`Q`P```````@```*0"``#\_________]LQ`P`` +M`````@```#0!``#\__________@Q`P```````@```/\!``#\_________QPR +M`P```````@```/L!``#\_________S`R`P```````@```+\!``#\________ +M_TLR`P```````@```+H"``#\_________V8R`P```````@```+H"``#\____ +M_____YXR`P```````@```%P!``#\_________PTS`P```````@```#X!``#\ +M_________QLS`P```````@```/@!``#\_________]$S`P```````@```/0! +M``#\_________R`U`P```````@```#`"``#\_________S0U`P```````@`` +M`!P"``#\_________V$U`P```````@```%X!``#\_________VTU`P`````` +M`@```+,!``#\_________QHV`P```````@```,L!``#\_________SLV`P`` +M`````@```#X!``#\_________V\V`P```````@```#X!``#\_________Y\V +M`P```````@```#X!``#\_________[$V`P```````@```/0!``#\________ +M_^\V`P```````@```%,!``#\_________SHX`P```````@```.D!``#\____ +M_____UPX`P```````@```,L!``#\_________W`X`P```````@```#$!``#\ +M_________X0X`P```````@```%<!``#\_________XXX`P```````@```*0" +M``#\_________[8X`P```````@```/L!``#\_________\<X`P```````@`` +M`+\!``#\_________]PX`P```````@```+H"``#\__________$X`P`````` +M`@```+H"``#\_________QTY`P```````@```%P!``#\_________S@Y`P`` +M`````@```&8!``#\_________Z@Y`P```````@````D"``#\_________\4Y +M`P```````@```#X!``#\_________PDZ`P```````@```#X!``#\________ +M_SHZ`P```````@```#X!``#\_________TPZ`P```````@```%,!``#\____ +M_____UXZ`P```````@```,8!``#\_________X<Z`P```````@```%,!``#\ +M_________]L[`P```````@```+,!``#\_________P,]`P```````@```#`" +M``#\_________Q(]`P```````@```!P"``#\_________U8]`P```````@`` +M`,,!``#\_________Y4]`P```````@```#X!``#\_________[P]`P`````` +M`@```)@!``#\_________R8^`P```````@```(T!``#\_________SL^`P`` +M````"P```$,!`````````````$8^`P```````@```.$!``#\_________VH^ +M`P```````@```*4!``#\_________W4^`P```````@```(T!``#\________ +M_Z\^`P```````@````("``#\_________[T^`P```````@```*0"``#\____ +M_____PT_`P```````@```%P!``#\_________R0_`P```````@```#H"``#\ +M_________U<_`P```````@```-,!``#\_________WD_`P```````@```'\" +M``#\_________X4_`P```````@```-0!``#\_________YL_`P```````@`` +M`,L!``#\_________[T_`P```````@```/L!``#\_________\X_`P`````` +M`@```+\!``#\_________^,_`P```````@```+H"``#\__________@_`P`` +M`````@```+H"``#\_________P]``P```````@```%P!``#\_________S!` +M`P```````@```,L!``#\_________T%``P```````@```+,!``#\________ +M_X)``P```````@```+P!``#\_________W%!`P```````@```#`!``#\____ +M_____WQ!`P```````@```$4"``#\_________]I!`P``````"P````4````8 +M"@```````.1!`P```````@```*\"``#\_________P1"`P```````@```%P! +M``#\_________P]"`P```````@```$4"``#\_________T9"`P```````@`` +M`+<!``#\_________WQ"`P```````@```*0"``#\_________X="`P`````` +M`@```$4"``#\_________YQ"`P```````@```!`"``#\_________ZA"`P`` +M`````@```*0"``#\_________[-"`P```````@```$4"``#\_________[Y" +M`P```````@```%D!``#\_________Q1#`P```````@```,L!``#\________ +M_WQ#`P```````@```+P!``#\__________1$`P```````@```*(!``#\____ +M_____U!%`P```````@```#`!``#\_________UM%`P```````@```$4"``#\ +M_________V]%`P```````@```-,!``#\_________Y9%`P``````"P````,` +M``"P'P```````,]%`P```````@```)("``#\_________R%&`P```````@`` +M`)("``#\_________TQ&`P```````@```)("``#\_________Z]&`P`````` +M`@```)("``#\_________]9&`P```````@```)("``#\_________SM'`P`` +M`````@```)("``#\_________W='`P```````@```#`!``#\_________X)' +M`P```````@```$4"``#\_________Y)'`P```````@```,,!``#\________ +M_\U'`P```````@```#`!``#\_________]A'`P```````@```$4"``#\____ +M_____^Y'`P``````"P```.4!``````````````5(`P```````@```)T"``#\ +M_________QY(`P```````@```*0"``#\_________TM(`P```````@```,," +M``#\_________W](`P```````@```)("``#\_________Z5(`P```````@`` +M`)("``#\_________ZI(`P```````@```,,"``#\_________R1)`P`````` +M`@```,L!``#\_________X!)`P```````@```/L!``#\_________Z!)`P`` +M`````@```+\!``#\_________\A)`P```````@```+H"``#\_________VE* +M`P``````"P````8```#0`@```````'-*`P```````@```*\"``#\________ +M_XQ*`P```````@```+H"``#\_________[)*`P```````@```%P!``#\____ +M_____]]*`P```````@```)("``#\_________P5+`P```````@```)("``#\ +M_________U5+`P```````@```,L!``#\_________Y)+`P```````@```+,! +M``#\_________\1+`P```````@```%<!``#\_________\Y+`P```````@`` +M`*0"``#\_________PU,`P```````@```)("``#\_________S-,`P`````` +M`@```)("``#\_________RA-`P```````@```)("``#\_________TM-`P`` +M`````@```)("``#\_________]M-`P```````@```)<!``#\__________A- +M`P```````@```"<"``#\_________S=.`P```````@```)("``#\________ +M_UI.`P```````@```)("``#\_________Y%.`P```````@```)("``#\____ +M_____[1.`P```````@```)("``#\_________PE/`P```````@```)("``#\ +M_________R]/`P```````@```)("``#\_________VQ/`P```````@```)(" +M``#\_________Y1/`P```````@```#`!``#\_________Y]/`P```````@`` +M`$4"``#\_________ZI/`P```````@```-,!``#\_________\%/`P`````` +M`@```%<!``#\_________\M/`P```````@```*0"``#\_________S51`P`` +M`````@```#`!``#\_________T!1`P```````@```$4"``#\_________X]1 +M`P```````@```#`!``#\_________YI1`P```````@```$4"``#\________ +M_[%1`P```````@```!P"``#\_________[Y2`P```````@```(8"``#\____ +M_____Q=3`P``````"P````8````0`P```````"%3`P```````@```*\"``#\ +M_________S13`P```````@```#`!``#\_________S]3`P```````@```$4" +M``#\_________X93`P```````@```,L!``#\_________Q-4`P```````@`` +M`,L!``#\_________WM4`P```````@```!P"``#\_________T55`P`````` +M`@```*0"``#\_________\A5`P```````@```*0"``#\_________QY6`P`` +M`````@```*0"``#\_________S]6`P```````@```#`!``#\_________TI6 +M`P```````@```$4"``#\_________UA6`P```````@```!L"``#\________ +M_QE7`P```````@```*0"``#\_________UY7`P```````@```*0"``#\____ +M_____W]7`P```````@```#`!``#\_________XI7`P```````@```$4"``#\ +M_________YA7`P```````@```!L"``#\_________\Y7`P```````@```*0" +M``#\_________R=8`P```````@```*0"``#\_________X18`P```````@`` +M`*0"``#\_________[]8`P```````@```*H!``#\_________^]8`P`````` +M`@```#`!``#\__________I8`P```````@```$4"``#\_________P59`P`` +M`````@```!P"``#\_________VA9`P```````@```)("``#\_________P]< +M`P```````@```#(!``#\_________R-<`P```````@```#(!``#\________ +M_S]<`P```````@```#(!``#\_________\=<`P```````@```#(!``#\____ +M_____]M<`P```````@```#(!``#\__________E<`P```````@```#(!``#\ +M_________SY=`P```````@```)<!``#\_________VY=`P```````@```.,! +M``#\_________[9=`P```````@```,\!``#\__________]=`P```````@`` +M`#\!``#\_________P=>`P```````@```(@!``#\_________Q9>`P`````` +M"P````,```#8(````````%]>`P```````@```&4!``#\_________W1>`P`` +M`````@```)X!``#\_________]9>`P```````@```*0"``#\_________S5D +M`P```````@````L````<`0```````$%D`P``````"P````L````@`0`````` +M`$YD`P```````@```&$!``#\_________Y9D`P```````@```!D"``#\____ +M_____VYE`P```````@```*<!``#\_________YME`P```````@````T"``#\ +M_________ZIE`P```````@```*<!``#\_________XIF`P```````@```,L! +M``#\_________]%F`P```````@```-\!``#\_________^YF`P```````@`` +M`(8"``#\_________P5G`P```````@```%$!``#\_________X-G`P`````` +M`@```*,!``#\_________[IG`P```````@```)X!``#\_________P)H`P`` +M`````@```,(!``#\_________S%I`P```````@```*0"``#\_________T-J +M`P```````@````L````>`0```````%!J`P``````"P````L````@`0`````` +M`%IJ`P```````@```&$!``#\_________YMJ`P```````@````L````>`0`` +M`````*AJ`P``````"P````L````@`0```````+)J`P```````@```&$!``#\ +M_________S-K`P```````@```)("``#\_________X%K`P```````@```)(" +M``#\_________YEK`P```````@```%4!``#\_________ZMK`P```````@`` +M`%4!``#\_________[UK`P```````@```%4!``#\_________\]K`P`````` +M`@```%4!``#\_________^%K`P```````@```%4!``#\__________-K`P`` +M`````@```%4!``#\_________Q9L`P```````@```)("``#\_________V-L +M`P```````@```)("``#\_________X-L`P```````@```)("``#\________ +M_PQM`P```````@```%4!``#\_________U5M`P```````@````@"``#\____ +M_____VEM`P```````@````$"``#\__________MM`P```````@```(8"``#\ +M_________RAN`P```````@```(8"``#\_________S-N`P``````"P```/P! +M`````````````$%N`P```````@```,4!``#\_________TQN`P```````@`` +M`$4!``#\_________YEN`P```````@````@"``#\_________ZEN`P`````` +M`@````$"``#\_________P-O`P``````"P```/P!`````````````!%O`P`` +M`````@```,4!``#\_________QQO`P```````@```$4!``#\_________WAO +M`P```````@```(P!``#\_________X9O`P```````@```%<!``#\________ +M_Y!O`P```````@```*0"``#\_________\1O`P```````@```((!``#\____ +M_____]1O`P```````@```%<!``#\_________]YO`P```````@```*0"``#\ +M_________P-P`P```````@```(P!``#\_________Q1P`P```````@```%<! +M``#\_________QYP`P```````@```*0"``#\_________V5P`P```````@`` +M`((!``#\__________UP`P```````@```$(!``#\_________PAQ`P`````` +M`@```$4"``#\_________Y-S`P```````@```#T"``#\_________[%S`P`` +M`````@```)(!``#\_________Y9T`P```````@```+H!``#\_________ZMT +M`P``````"P```-H!`````````````.MT`P```````@```#T"``#\________ +M__UT`P```````@```)(!``#\_________Y1U`P```````@```+H!``#\____ +M_____\%U`P```````@```+H!``#\_________V]V`P```````@```'(!``#\ +M_________X=V`P```````@```'\!``#\_________Y]V`P```````@```,T! +M``#\_________P=W`P``````"P````,````8(0```````'1Z`P```````@`` +M`,P!``#\_________P)[`P```````@```,P!``#\_________QM[`P`````` +M`@```(8"``#\_________^U[`P```````@```&(!``#\_________W1]`P`` +M`````@```)("``#\_________XA]`P```````@```)("``#\_________Y9] +M`P```````@```*0"``#\_________]]]`P```````@````<```#D`0`````` +M`"I^`P```````@```)("``#\_________UY^`P``````"P````<```#@`0`` +M`````(9^`P```````@````<```#T`0```````-1^`P```````@```)("``#\ +M_________TE_`P```````@````<````$`@```````)=_`P```````@```)(" +M``#\_________\M_`P``````"P````<``````@```````.Y_`P```````@`` +M``<````4`@```````#R``P```````@```)("``#\_________Z>``P`````` +M"P````<```#P`0```````+F``P``````"P````<````0`@```````$^!`P`` +M`````@```)("``#\_________^*!`P```````@```)("``#\_________X&" +M`P```````@```)("``#\_________Z""`P```````@```*0"``#\________ +M_VZ#`P```````@```$`!``#\_________R"&`P```````@```/H!``#\____ +M_____Z>'`P```````@````,````\)@```````+.'`P``````"P````<```!@ +M`P```````">,`P``````"P````<````@`@```````"R,`P```````@```'<" +M``#\_________ZJ,`P```````@```&$!``#\_________[B,`P```````@`` +M`*0"``#\_________\V,`P```````@```"4"``#\__________>,`P`````` +M"P````8````D`P````````&-`P```````@```*\"``#\_________U:-`P`` +M`````@```)H"``#\_________VJ-`P```````@```)H"``#\_________WZ- +M`P```````@```)H"``#\__________&-`P```````@```"L"``#\________ +M_PN.`P```````@```*,"``#\_________QZ.`P```````@```*,"``#\____ +M_____SB.`P```````@```*,"``#\_________TN.`P```````@```*,"``#\ +M_________V6.`P```````@```*,"``#\_________WB.`P```````@```*," +M``#\_________Y*.`P```````@```*,"``#\_________Z6.`P```````@`` +M`*,"``#\_________]..`P```````@```*,"``#\_________^..`P`````` +M`@```*,"``#\_________PJ/`P```````@```*,"``#\_________QV/`P`` +M`````@```*,"``#\_________S>/`P```````@```*,"``#\_________TJ/ +M`P```````@```*,"``#\_________V2/`P```````@```*,"``#\________ +M_W>/`P```````@```*,"``#\_________Y&/`P```````@```*,"``#\____ +M_____Z2/`P```````@```*,"``#\_________[Z/`P```````@```*,"``#\ +M_________]&/`P```````@```*,"``#\_________^N/`P```````@```*," +M``#\__________Z/`P```````@```*,"``#\_________QB0`P```````@`` +M`*,"``#\_________RN0`P```````@```*,"``#\_________T60`P`````` +M`@```*,"``#\_________UB0`P```````@```*,"``#\_________W*0`P`` +M`````@```*,"``#\_________X60`P```````@```*,"``#\_________Y^0 +M`P```````@```*,"``#\_________[*0`P```````@```*,"``#\________ +M_\R0`P```````@```*,"``#\_________]^0`P```````@```*,"``#\____ +M______F0`P```````@```*,"``#\_________PR1`P```````@```*,"``#\ +M_________R:1`P```````@```*,"``#\_________SF1`P```````@```*," +M``#\_________U.1`P```````@```*,"``#\_________V:1`P```````@`` +M`*,"``#\_________XB1`P```````@```-("``#\_________Z*1`P`````` +M`@```-("``#\_________\21`P```````@```-("``#\_________]Z1`P`` +M`````@```-("``#\_________P"2`P```````@```-("``#\_________QJ2 +M`P```````@```-("``#\_________SR2`P```````@```-("``#\________ +M_U:2`P```````@```-("``#\_________WB2`P```````@```-("``#\____ +M_____Y*2`P```````@```-("``#\_________[22`P```````@```-("``#\ +M_________\Z2`P```````@```-("``#\__________"2`P```````@```-(" +M``#\_________PJ3`P```````@```-("``#\_________RR3`P```````@`` +M`-("``#\_________T:3`P```````@```-("``#\_________W*3`P`````` +M`@```$P!``#\_________WJ3`P```````@```+@!``#\_________XF3`P`` +M`````@```+@!``#\_________Y&3`P```````@```)H!``#\_________YN3 +M`P```````@```*0"``#\_________Z.3`P```````@```,X!``#\________ +M_["3`P```````@```),!``#\_________[V3`P```````@```),!``#\____ +M_____^V3`P```````@```),!``#\__________Z3`P```````@```),!``#\ +M_________R64`P```````@```*\!``#\_________SB4`P```````@```*\! +M``#\_________T64`P```````@```*\!``#\_________UB4`P```````@`` +M`*\!``#\_________V64`P```````@```%<!``#\_________\V4`P`````` +M`@````@"``#\_________R^5`P``````"P````$```!0B0,``````#J5`P`` +M`````@```$4!``#\_________W&5`P```````@```#$!``#\_________X.5 +M`P```````@```*0"``#\_________XN5`P```````@```%<!``#\________ +M_]&5`P```````@```$4"``#\_________UJ6`P```````@````@"``#\____ +M_____]N6`P``````"P````$```!0B0,``````.:6`P```````@```$4!``#\ +M_________QV7`P```````@```#$!``#\_________R^7`P```````@```*0" +M``#\_________S>7`P```````@```%<!``#\_________W27`P```````@`` +M`$8"``#\__________R7`P``````"P````$```!0B0,```````F8`P`````` +M`@```,4!``#\_________QZ8`P```````@```"X!``#\_________RF8`P`` +M`````@```$4!``#\_________V"8`P```````@```#$!``#\_________W*8 +M`P```````@```*0"``#\_________WJ8`P```````@```%<!``#\________ +M_ZJ8`P```````@```#`!``#\_________[^8`P```````@```$4"``#\____ +M_____\>8`P```````@````@"``#\_________]R8`P```````@```#`!``#\ +M_________^V9`P``````"P````$```!0B0,``````/J9`P```````@```,4! +M``#\_________P^:`P```````@```"X!``#\_________QJ:`P```````@`` +M`$4!``#\_________U&:`P```````@```#$!``#\_________V.:`P`````` +M`@```*0"``#\_________VN:`P```````@```%<!``#\_________Z6:`P`` +M`````@```#`!``#\_________[R:`P```````@```$4"``#\_________UN; +M`P```````@````@"``#\_________X&;`P``````"P````8```!``P`````` +M`(N;`P```````@```*\"``#\_________Y>;`P```````@```$8"``#\____ +M_____[";`P```````@```$4"``#\_________^*;`P```````@```+H"``#\ +M__________N;`P```````@```#$!``#\_________TN<`P```````@```(8" +M``#\_________S.=`P```````@```"P"``#\_________XN=`P``````"P`` +M``$```!0B0,``````)J=`P```````@```,4!``#\_________[6=`P`````` +M`@```"X!``#\_________\N=`P```````@```$4!``#\_________P>>`P`` +M`````@```#$!``#\_________QF>`P```````@```*0"``#\_________R.> +M`P```````@```%<!``#\_________V6>`P```````@```(8"``#\________ +M_Y>>`P```````@```#`!``#\_________ZR>`P```````@```(L!``#\____ +M_____[N>`P```````@```$4"``#\_________]B>`P```````@```+H"``#\ +M_________[B?`P```````@```#`!``#\_________\B?`P```````@```(L! +M``#\_________].?`P```````@```$4"``#\_________ZR@`P```````@`` +M`#$!``#\_________^Z@`P```````@```#`"``#\_________S2A`P`````` +M`@```-,!``#\_________TFA`P```````@```+P!``#\_________VBA`P`` +M`````@```!P"``#\_________[*A`P```````@```/4!``#\_________]FB +M`P```````@```-8!``#\_________P&C`P```````@```#8"``#\________ +M_R&C`P```````@```+P"``#\_________UFC`P```````@```$P!``#\____ +M_____V&C`P```````@```-(!``#\_________VFC`P```````@```-(!``#\ +M_________W&C`P```````@```+@!``#\_________WVC`P```````@```+@! +M``#\_________XFC`P```````@```)H!``#\_________Y.C`P```````@`` +M`*0"``#\_________YNC`P```````@```,X!``#\_________["C`P`````` +M"P```'$!`````````````,>C`P```````@```)T"``#\_________]2C`P`` +M`````@```,,!``#\__________6C`P```````@```-<!``#\_________P2D +M`P```````@```-<!``#\_________RFD`P```````@````L```#?`0`````` +M`#:D`P```````@````L```#<`0```````$&D`P```````@````,````\)@`` +M`````%"D`P``````"P````<```!@`P```````%>D`P``````"P```&P!```` +M`````````%ZD`P``````"P````<```!T`P```````&JD`P``````"P````<` +M``!B`P```````+6D`P``````"P```&P!```<`````````,VD`P``````"P`` +M`&P!```<`````````.&D`P``````"P```&P!```<`````````.^D`P`````` +M"P```&P!```<`````````/FD`P``````"P```&P!```<`````````"^E`P`` +M````"P```&P!```<`````````$.E`P``````"P```&P!```<`````````%&E +M`P``````"P```&P!```<`````````&RE`P``````"P````<```!L`P`````` +M`+6E`P```````@````,````\)@```````-.E`P``````"P````<```!L`P`` +M`````.&E`P``````"P````<```!P`P```````!&F`P``````"P```&P!```` +M`````````"6F`P``````"P```&P!```<`````````%"F`P``````"P```&P! +M```,`````````':F`P``````"P```&P!```=`````````(6F`P``````"P`` +M`&P!```<`````````+ZF`P```````@```(`"``#\_________T:G`P`````` +M`@```/\!``#\_________V*G`P```````@```#0!``#\_________VJG`P`` +M`````@```/4!``#\_________XBG`P```````@```+\!``#\_________YRG +M`P```````@```+\!``#\_________T&H`P``````"P````4```!P"@`````` +M`$NH`P```````@```*\"``#\_________UVH`P```````@````@"``#\____ +M_____Y&H`P``````"P````4```"X"@```````)NH`P```````@```*\"``#\ +M_________^"H`P``````"P````$```!0B0,``````.NH`P```````@```$4! +M``#\_________R*I`P```````@```#$!``#\_________S2I`P```````@`` +M`*0"``#\_________SRI`P```````@```%<!``#\_________W^I`P`````` +M`@````@"``#\_________Z6I`P```````@```$8"``#\_________\2I`P`` +M`````@```$4"``#\_________R^J`P``````"P````$```!0B0,``````#ZJ +M`P```````@```,4!``#\_________U"J`P```````@```"X!``#\________ +M_UNJ`P```````@```$4!``#\_________Y*J`P```````@```#$!``#\____ +M_____Z2J`P```````@```*0"``#\_________ZRJ`P```````@```%<!``#\ +M_________]RJ`P```````@```+X!``#\_________P&K`P```````@```#`! +M``#\_________PRK`P```````@```$4"``#\_________R.K`P```````@`` +M`$4"``#\_________X:K`P``````"P````,`````(@```````+NK`P`````` +M`@```)8!``#\__________2K`P```````@```(<!``#\_________RJL`P`` +M`````@```+H"``#\_________S^L`P```````@```#$!``#\_________U:L +M`P```````@```*0"``#\_________UZL`P```````@```%<!``#\________ +M_Y>L`P```````@```+H"``#\_________ZNL`P```````@```$`"``#\____ +M_____[>L`P```````@```!T"``#\_________Y*M`P``````"P````4````` +M"P```````)RM`P```````@```*\"``#\_________]"M`P```````@```'\" +M``#\_________^6M`P``````"P````$```#@K`,``````/FM`P```````@`` +M`)T"``#\_________YZP`P```````@```/\!``#\_________\"P`P`````` +M`@```#0!``#\_________^VP`P```````@```,L!``#\_________UBQ`P`` +M`````@```,L!``#\_________[2Q`P```````@```+H"``#\__________2Q +M`P```````@```,L!``#\_________V"R`P```````@```+H"``#\________ +M_X:S`P```````@```)8!``#\_________]RS`P```````@```-8!``#\____ +M_____^ZS`P```````@```+\!``#\_________RFT`P```````@```%<!``#\ +M_________T^T`P```````@```,,!``#\_________V^T`P```````@```'\" +M``#\_________X2T`P``````"P```'$!`````````````)>T`P```````@`` +M`)T"``#\__________FU`P```````@```/4!``#\_________TVV`P`````` +M"P````,```!0(@```````'6V`P```````@```%L!``#\_________]"V`P`` +M`````@```%L!``#\_________RNW`P```````@```%L!``#\_________X:W +M`P```````@```%L!``#\_________]>X`P``````"P````,```!P(P`````` +M``BY`P```````@```%L!``#\_________VBY`P```````@```%L!``#\____ +M_____\"Y`P```````@```%L!``#\_________QBZ`P```````@```%L!``#\ +M_________W&Z`P```````@```%L!``#\_________\BZ`P```````@```%L! +M``#\_________R2[`P```````@```%L!``#\_________X"[`P```````@`` +M`%L!``#\_________]B[`P```````@```%L!``#\_________S"\`P`````` +M`@```%L!``#\_________X"\`P```````@```)<!``#\_________[J\`P`` +M`````@```)<!``#\__________2\`P```````@```)<!``#\_________RZ] +M`P```````@```)<!``#\_________V6]`P```````@```)<!``#\________ +M_YR]`P```````@```)<!``#\_________S:^`P```````@````L```#<`0`` +M`````$*^`P```````@````L```#<`0```````"_``P```````@```(X"``#\ +M_________TG``P```````@```(X"``#\_________Y/``P```````@````,` +M```\)@```````*G``P``````"P````<```!@`P```````+O``P``````"P`` +M``<```!B`P```````,G``P``````"P````<```!P`P```````-+``P`````` +M"P````<```!P`P```````-G``P``````"P````<```!L`P```````//``P`` +M````"P````<```!P`P```````"W!`P```````@```,8"``#\_________T_! +M`P```````@```+\"``#\_________WW!`P``````"P```&P!```````````` +M`)7!`P``````"P```&P!```<`````````+S!`P``````"P```&P!```,```` +M`````-G!`P``````"P```&P!```=`````````./!`P``````"P```&P!```= +M`````````.O!`P``````"P```&P!```<``````````C"`P``````"P```&P! +M```=`````````!S"`P``````"P```&P!```<`````````'_#`P```````@`` +M`/4!``#\_________PW%`P```````@```*<!``#\_________S[%`P`````` +M`@````T"``#\_________TW%`P```````@```*<!``#\__________#(`P`` +M`````@```*<!``#\_________Q[)`P```````@````T"``#\_________RW) +M`P```````@```*<!``#\_________P_-`P```````@```*<!``#\________ +M_SW-`P```````@````T"``#\_________T[-`P```````@```*<!``#\____ +M_____P_1`P```````@```*<!``#\_________SW1`P```````@````T"``#\ +M_________T[1`P```````@```*<!``#\_________[33`P```````@````@" +M``#\_________[#5`P```````@```(8"``#\_________WS7`P``````"P`` +M``$````PGP,``````/O7`P```````@```"P"``#\_________PC8`P`````` +M`@```,4!``#\_________QO8`P```````@```"X!``#\_________SG8`P`` +M`````@```,4!``#\_________TO8`P```````@```$8"``#\_________WS8 +M`P```````@```"X!``#\_________Y'8`P```````@```(`!``#\________ +M_\+8`P```````@```"X!``#\_________P?9`P```````@```(8"``#\____ +M_____WK9`P```````@```(8"``#\_________[[9`P```````@```$4!``#\ +M_________\O9`P```````@```$4"``#\_________VC<`P```````@```,8" +M``#\_________XK<`P```````@```,8"``#\_________^+=`P```````@`` +M`#`"``#\_________SC>`P```````@```,L!``#\_________Y#>`P`````` +M`@```+P!``#\_________\'>`P```````@```-,!``#\___________>`P`` +M`````@```(\!``#\_________RK?`P```````@```!P"``#\_________U3? +M`P```````@```,L!``#\_________Z[?`P```````@```)L!``#\________ +M__/?`P```````@```)P"``#\__________[?`P```````@```)P"``#\____ +M_____Q+@`P```````@```%8"``#\_________T/@`P```````@```)0"``#\ +M_________^K@`P```````@```)0"``#\_________S3A`P```````@```&<" +M``#\_________[/A`P```````@```$P"``#\_________\#A`P```````@`` +M`$P"``#\_________\KA`P```````@```%8"``#\_________];A`P`````` +M`@```%8"``#\_________^GA`P```````@```$P"``#\_________W/B`P`` +M`````@```$P"``#\_________V/C`P```````@```)0"``#\_________PWD +M`P```````@```*<"``#\_________U'D`P```````@```*<"``#\________ +M_]CD`P```````@```*<"``#\__________SD`P```````@```,,"``#\____ +M_____WGE`P```````@```*<"``#\_________\/E`P```````@```*<"``#\ +M_________]WE`P```````@```,,"``#\__________+F`P```````@```,," +M``#\_________POH`P```````@```&("``#[_________R;H`P```````@`` +M`'\"``#\_________S[H`P``````"P```%@"``````````````'I`P`````` +M`@```&("``#[_________Q;I`P```````@```'\"``#\_________RSI`P`` +M````"P```%@"`````````````#[I`P```````@```)T"``#\_________V7I +M`P```````@```+("``#\_________^7I`P```````@```(\"``#\________ +M_[GJ`P```````@```+4"``#[__________;J`P```````@```%,"``#\____ +M_____T?L`P```````@```,`"``#\_________W+L`P```````@```&,"``#\ +M_________XCL`P```````@```*4"``#[_________Y?L`P```````@```&P" +M``#\_________Z'L`P```````@```%0"``#\_________[3L`P```````@`` +M`%X"``#\_________QGM`P```````@````L```!L`@```````#KM`P`````` +M`@````L```!L`@```````$KM`P```````@````L```!L`@```````%KM`P`` +M`````@```,X"``#\_________WCM`P```````@```+("``#\_________X7M +M`P```````@````L```!L`@```````)/M`P``````"P````$```!`[P,````` +M`*CM`P```````@```*,"``#\_________[SM`P```````@````L```!H`@`` +M`````//M`P```````@```+<"``#\__________KM`P``````"P````L```!` +M`@````````3N`P```````@````L```!(`@````````CN`P``````"P```-," +M``````````````_N`P```````@````L```!4`@```````!ON`P```````@`` +M``L````\`@```````"#N`P```````@```)T"``#\_________Y3N`P`````` +M`@```$P"``#\_________^+N`P```````@```-,"``#\_________Q;O`P`` +M`````@```*0"``#\_________Q[O`P```````@```(<"``#\_________VCO +M`P```````@```&0"``#\_________[7O`P```````@```*,"``#\________ +M_]#O`P```````@```*,"``#\_________W+P`P```````@```'$"``#\____ +M_____W+Q`P```````@```(,"``#\_________W[Q`P```````@```+("``#\ +M_________\+Q`P```````@```*,"``#\_________]'Q`P```````@```$X" +M``#\_________T+R`P```````@```+`"``#\_________UCR`P```````@`` +M`+`"``#\_________VCR`P```````@```$P"``#\_________ZKR`P`````` +M`@```+`"``#\_________\?R`P```````@```+`"``#\_________^'R`P`` +M`````@```+`"``#\__________[R`P```````@```+`"``#\_________Q[S +M`P```````@```+`"``#\_________T?S`P```````@```(@"``#\________ +M_U[S`P```````@```+`"``#\_________V7S`P```````@```$P"``#\____ +M_____[GS`P```````@```)0"``#\_________\+S`P```````@```+8"``#\ +M_________^#S`P```````@```)0"``#[_________UWT`P```````@```)0" +M``#\_________W;T`P```````@```*4"``#[_________Z/T`P```````@`` +M`%P"``#\_________[ST`P```````@```+("``#\_________]?T`P`````` +M`@````L```!P`@```````.?T`P```````@````L```!P`@```````.KU`P`` +M`````@```*,"``#\__________7U`P```````@```)0"``#\_________SCV +M`P```````@```(,"``#\_________W?V`P```````@```*,"``#\________ +M_Y#V`P```````@```$P"``#\_________^'V`P```````@```)0"``#\____ +M_____ZOE`P```````@```'D"``#\_________[OE`P```````@```*<"``#\ +M_________X_F`P```````@```'D"``#\_________P7G`P```````@```'D" +M``#\_________W/G`P```````@```'\"``#\_________U7H`P```````@`` +M`)T"``#\_________RSJ`P```````@```-$"``#\_________SWJ`P`````` +M`@```*,"``#\_________V'J`P```````@```*D"``#\_________P7O`P`` +M`````@```*<"``#\_________TOP`P```````@```*,"``#\_________Q/W +M`P``````"P````$```#0'@0``````#;W`P```````@````<```"X`P`````` +M`.#W`P``````"P````$```!P_0,``````,+Y`P```````@```+,"``#\____ +M______[Y`P```````@```*8"``#\_________S'Z`P``````"P````$````@ +M_`,``````%WZ`P```````@```*8"``#\_________]GZ`P```````@````,` +M``!$)@```````.;Z`P```````@````,```!()@```````#[[`P``````"P`` +M``$```#P_`,``````+;[`P```````@```$@"``#\_________P+\`P`````` +M"P````$````P_`,``````$;\`P```````@```(D"``#\_________XG\`P`` +M`````@```)P"``#\_________X_\`P```````@````<```"T`P```````*O\ +M`P```````@````<```"X`P```````,7\`P```````@````<```"X`P`````` +M`-'\`P``````"P````<```"@`P```````-?\`P```````@````<```"W`P`` +M`````-W\`P```````@```,T"``#\_________QS]`P```````@```(D"``#\ +M_________\;]`P```````@```*,"``#\_________]3]`P``````"P````$` +M``"`^0,```````O^`P``````"P````<```"@`P```````!?^`P```````@`` +M`(("``#\_________S'_`P``````"P````<```"@`P```````#;_`P`````` +M`@```(("``#\_________S[_`P```````@```+("``#\_________RH`!``` +M````"P````<```"@`P```````"\`!````````@```(("``#\_________S<` +M!````````@```+("``#\_________XL`!```````"P````<```"@`P`````` +M`)``!````````@```(("``#\_________Y@`!````````@```+("``#\____ +M_____\D`!```````"P````<```"@`P```````,X`!````````@```(("``#\ +M_________]8`!````````@```+("``#\_________PX!!```````"P````<` +M``"@`P```````!,!!````````@```(("``#\_________QL!!````````@`` +M`+("``#\_________W$!!```````"P````<```"@`P```````(8!!``````` +M`@```(("``#\_________Y$!!````````@```*,"``#\_________Z4!!``` +M````"P````<```"@`P```````+(!!````````@```(("``#\_________\\! +M!````````@```*,"``#\_________U$"!````````@```&T"``#\________ +M_VH"!````````@```+("``#\_________X`"!```````"P````$```"P_0,` +M`````,,"!````````@```$@"``#\_________Q8#!```````"P````<```"@ +M`P```````!L#!````````@```(("``#\_________W(#!```````"P````,` +M``!0)@```````+<#!````````@```-`"``#\__________`#!````````@`` +M`&T"``#\__________X#!````````@```+P"``#\_________R<$!``````` +M`@```+("``#\_________T($!```````"P````$```!`!00``````%8$!``` +M`````@```-`"``#\_________V,$!````````@```+P"``#\_________[0$ +M!```````"P````,```"0)@```````!4%!````````@```-`"``#\________ +M_V$%!````````@```*,"``#\_________WL%!```````"P````$```#@%@0` +M`````)D%!````````@```*4"``#[__________$%!````````@```&$"``#\ +M_________Q@&!```````"P````<```"@`P```````!T&!````````@```((" +M``#\_________R@&!````````@```*,"``#\_________U$&!````````@`` +M`&T"``#\_________V<&!````````@```&8"``#\_________Z<(!``````` +M`@```&8"``#\_________]0(!````````@```&$"``#\_________S4)!``` +M`````@```&8"``#\_________UL)!````````@```&$"``#\_________XH) +M!```````"P````<```"@`P```````(\)!````````@```(("``#\________ +M_Y<)!````````@```+("``#\_________^D)!````````@```*4"``#[____ +M_____TH*!````````@```&$"``#\_________WT*!````````@```&$"``#\ +M_________\D*!````````@```&$"``#\_________^0*!````````@```&T" +M``#\__________H*!````````@```&8"``#\_________TH+!````````@`` +M`*4"``#\_________Y@+!````````@```&$"``#\_________PH,!``````` +M"P````<```"@`P````````\,!````````@```(("``#\_________QH,!``` +M`````@```*,"``#\_________X<-!````````@```&8"``#\_________Y4- +M!```````"P````4```!8"P```````)X-!````````@```*\"``#\________ +M_\P-!````````@```&8"``#\_________]D-!```````"P````4```"`"P`` +M`````.(-!````````@```*\"``#\_________Q\.!````````@```&$"``#\ +M_________T$.!````````@```&8"``#\_________V,.!````````@```&8" +M``#\_________WX.!```````"P````8```!@`P```````*T.!````````@`` +M`*\"``#\_________]L/!````````@```&8"``#\_________PL0!``````` +M`@```&$"``#\_________R\0!````````@```&$"``#\_________UD0!``` +M`````@```%\"``#\_________YT0!````````@```&$"``#\_________\(0 +M!````````@```+4"``#[_________]X0!````````@```&8"``#\________ +M__D0!````````@```(H"``#\_________WX1!````````@```&$"``#\____ +M_____XD1!```````"P````4```"H"P```````*H1!````````@```*\"``#\ +M_________TL2!````````@```&8"``#\_________W02!````````@```&$" +M``#\_________Y\2!````````@```&$"``#\_________[D2!```````"P`` +M``8```!U`P```````,`2!````````@```*\"``#\_________]T2!``````` +M`@```&8"``#\_________PL3!````````@```&$"``#\_________T(3!``` +M`````@```&$"``#\_________TT3!```````"P````4```#8"P```````&T3 +M!````````@```*\"``#\_________X\3!````````@```(8"``#\________ +M_\P3!````````@```&$"``#\_________]P3!````````@```&L"``#\____ +M_____P`4!````````@```&$"``#\_________S,4!````````@```&$"``#\ +M_________V`4!````````@```&$"``#\_________W<4!````````@```(," +M``#\_________XX4!````````@```&8"``#\_________\(4!````````@`` +M`(H"``#\_________TT5!````````@```&<"``#\_________RH6!``````` +M`@```,L"``#\_________UH6!````````@```$D"``#\_________Z,6!``` +M`````@```*4"``#[_________](6!````````@```&D"``#\__________T6 +M!````````@```&0"``#\_________Q<7!````````@```+4"``#[________ +M_X87!````````@```,4"``#\_________Y`7!````````@```%X"``#\____ +M_____[(7!```````"P```$L"`````````````,D7!````````@```-`"``#\ +M_________W,8!````````@```&`"``#\_________YD8!````````@```(," +M``#\_________PL9!````````@```&`"``#\_________R<9!````````@`` +M`&`"``#\_________QD:!````````@```(H"``#\_________XL:!``````` +M`@```(,"``#\_________\P:!````````@```%\"``#\_________T0;!``` +M`````@```$X"``#\_________U$;!````````@```+,"``#\_________Y`; +M!````````@```$H"``#\_________[L;!````````@```$X"``#\________ +M__X;!````````@```*,"``#\_________T`<!````````@```&,"``#\____ +M_____V4<!````````@```%,"``#\_________U(=!````````@```+,"``#\ +M_________]P=!````````@```,4"``#\__________$=!````````@```&P" +M``#\_________QD>!````````@```%0"``#\_________S\>!````````@`` +M`+("``#\_________V(>!```````"P````$```#@&P0``````)P>!``````` +M`@```$@"``#\__________H?!````````@```,H"``#\_________V8@!``` +M````"P````$````0(00``````'4A!````````@```,H"``#\_________V0B +M!````````@```&T"``#\_________T/Z`P```````@```*L"``#\________ +M_PO\`P```````@```*L"``#\_________R'\`P```````@```(D"``#\____ +M_____WK\`P```````@```)4"``#\_________UC]`P```````@```-`"``#\ +M_________Z/]`P```````@```-`"``#\__________?]`P```````@```-`" +M``#\_________US^`P```````@```*,"``#\_________P`"!````````@`` +M`*,"``#\_________SP#!````````@```+`"``#\_________X0%!``````` +M`@```%H"``#\_________]()!````````@```(,"``#\_________U,7!``` +M`````@```&T"``#\_________WX7!````````@```*,"``#\_________ZL8 +M!````````@```%\"``#\_________VL;!````````@```(,"``#\________ +M_](;!````````@```%\"``#\_________\@@!````````@```-`"``#\____ +M_____P`A!````````@```,H"``#\_________QPB!````````@```-`"``#\ +M_________Y,B!````````@```)0"``#\_________WHC!````````@```)0" +M``#\_________STD!````````@```)0"``#\_________T(E!````````@`` +M`)0"``#\__________\F!```````"P````,```#0)@```````"0K!``````` +M`@```'("``#\_________S0L!````````@```'("``#\__________`L!``` +M````"P````,````0)P```````"(N!````````@```'("``#\_________XTN +M!````````@```'("``#\_________S$O!````````@```'("``#\________ +M_U(O!````````@````L```"``@```````&\O!````````@````L```!\`@`` +M`````(`O!```````"P````L```"@`@```````)LO!```````"P````L```"@ +M`@```````,DO!````````@````L```"``@````````PP!````````@```%$" +M``#\_________V,U!````````@```'("``#\_________Z,U!````````@`` +M`'("``#\_________^,U!````````@```'("``#\_________TDV!``````` +M`@```'("``#\_________[`V!````````@```'("``#\_________RXW!``` +M`````@```'("``#\_________[,W!````````@```*4"``#[_________],W +M!````````@```'("``#\_________P`X!````````@```'("``#\________ +M_Z8X!````````@```'("``#\_________\HX!````````@```'("``#\____ +M_____[8Y!````````@```'("``#\_________]HY!````````@```'("``#\ +M_________W0Z!````````@```'("``#\_________YDZ!````````@```'(" +M``#\_________Q0[!````````@```'("``#\_________R$[!````````@`` +M`'("``#\_________U,[!````````@```'("``#\_________WD[!``````` +M`@```'("``#\_________^0[!````````@```'("``#\__________$[!``` +M`````@```'("``#\_________S,\!````````@```'("``#\_________UT\ +M!````````@```'("``#\_________[@\!````````@```'("``#\________ +M_\0\!````````@```'("``#\_________R@]!````````@```'("``#\____ +M_____S0]!````````@```'("``#\_________Y@]!````````@```'("``#\ +M_________Z0]!````````@```'("``#\_________P8^!````````@```'(" +M``#\_________Q(^!````````@```'("``#\_________V8^!````````@`` +M`'("``#\_________W(^!````````@```'("``#\_________\8^!``````` +M`@```'("``#\_________](^!````````@```'("``#\_________R8_!``` +M`````@```'("``#\_________S(_!````````@```'("``#\_________[8_ +M!````````@```'("``#\_________\(_!````````@```'("``#\________ +M_R9`!````````@```'("``#\_________S)`!````````@```'("``#\____ +M_____Y]`!````````@```'("``#\_________ZQ`!````````@```'("``#\ +M_________[A`!````````@```'("``#\_________\-`!````````@```'(" +M``#\_________U9!!````````@```'("``#\_________V)!!````````@`` +M`'("``#\_________\9!!````````@```'("``#\_________])!!``````` +M`@```'("``#\_________SI"!````````@```'("``#\_________T9"!``` +M`````@```'("``#\_________ZQ"!````````@```'("``#\_________[A" +M!````````@```'("``#\_________\1#!````````@```'("``#\________ +M_]%#!````````@```'("``#\_________X1$!````````@```'("``#\____ +M_____Y%$!````````@```'("``#\__________9$!````````@```'("``#\ +M_________P)%!````````@```'("``#\_________X5%!````````@```'(" +M``#\_________ZI%!````````@```'("``#\_________S5&!````````@`` +M`'("``#\_________UI&!````````@```'("``#\_________\1&!``````` +M`@```'("``#\_________]!&!````````@```'("``#\_________^1'!``` +M`````@```'("``#\__________%'!````````@```'("``#\_________\)( +M!````````@```'("``#\_________\](!````````@```'("``#\________ +M_Y!)!````````@```'("``#\_________YU)!````````@```'("``#\____ +M_____]1)!````````@````<````<!````````.M)!```````"P````<````@ +M!````````#%+!```````"P````$```!`+P0``````#-,!````````@```%$" +M``#\_________\-,!````````@```+4"``#\_________SY-!````````@`` +M`*8"``#\_________VU-!```````"P````$```#P5@0``````+]-!``````` +M`@```*8"``#\_________\Y-!````````@```+("``#\_________X5.!``` +M`````@```*8"``#\_________]I.!```````"P````$```!`6`0``````.=. +M!```````"P````$`````6`0``````.Q.!````````@```*L"``#\________ +M_T9/!````````@```+("``#\_________^I/!````````@```*,"``#\____ +M_____QQ0!```````"P````8```".`P```````"-0!````````@```*\"``#\ +M_________V90!````````@```+("``#\__________E0!````````@```*," +M``#\_________RM1!```````"P````8```"I`P```````#)1!````````@`` +M`*\"``#\_________]U1!```````"P````$```#PB00```````U2!``````` +M"P````$```!@7`0``````$U2!```````"P````$```#P700``````(U2!``` +M````"P````$```#PW@0``````,U2!```````"P````$````PSP0```````U3 +M!```````"P````$```"@E@0``````$U3!```````"P````$```"@TP0````` +M`(U3!```````"P````$```#@F@0``````,U3!```````"P````$```"`EP0` +M``````U4!```````"P````$```!@X@0``````$U4!```````"P````$```!` +MBP0``````(U4!```````"P````$````@U@0``````,U4!```````"P````$` +M``#`FP0```````U5!```````"P````$```#`FP0``````$U5!```````"P`` +M``$```#@G00``````(U5!```````"P````$```#`K@0``````,U5!``````` +M"P````$```!@XP0```````U6!```````"P````$```!`L`0``````$U6!``` +M````"P````$````PUP0``````(U6!```````"P````$````PKP0``````,U6 +M!```````"P````$```"PN`0``````/16!```````"P````$````PZP0````` +M`"A7!```````"P````$```!0N00``````(!7!````````@```*,"``#\____ +M_____XM7!```````"P````$```"0L`0``````!-8!```````"P````$````0 +M600``````)Q8!````````@```(D"``#\_________ZM8!````````@```*8" +M``#\_________]Q8!```````"P````$`````6`0``````#M9!````````@`` +M`*,"``#\_________^I9!```````"P````4````P#````````/%9!``````` +M`@```*\"``#\__________Y9!````````@```&T"``#\_________Q-:!``` +M`````@```*,"``#\_________QM:!````````@```(D"``#\_________TI: +M!```````"P````4````(#````````%%:!````````@```*\"``#\________ +M_UY:!````````@```&T"``#\_________XI:!````````@```(D"``#\____ +M_____Y9:!```````"P````$```"0[`0``````"A;!````````@```*,"``#\ +M_________S!;!````````@```(D"``#\_________Z1;!```````"P````$` +M``!`A00``````'U<!````````@```'("``#\_________TA=!````````@`` +M`&$"``#\_________U1=!```````"P````$```!02P0``````,Q=!``````` +M`@```&$"``#\_________P9>!````````@```'("``#\_________W]>!``` +M`````@```&$"``#\_________Z!>!```````"P````$```!02P0``````/-> +M!````````@```(D"``#\__________M>!```````"P````$```!02P0````` +M`-]?!```````"P````$```"`800``````+U@!```````"P````$```!02P0` +M`````,Y@!````````@```)4"``#\_________Y]A!```````"P````$```!0 +M2P0``````,YA!````````@```)0"``#\_________U9B!```````"P````$` +M``!02P0``````&IB!````````@```)4"``#\_________X)B!````````@`` +M``L```!\`@```````(AB!````````@````L```"``@```````*5B!``````` +M"P````L```"@`@```````+!B!```````"P````L```"H`@```````+QB!``` +M````"P````L```"P`@```````,AB!```````"P````L```"X`@```````-1B +M!```````"P````L```#``@```````-]B!```````"P````L```#(`@`````` +M`/IB!````````@````L```!\`@````````)C!```````"P````$```!02P0` +M`````)IC!```````"P````$```!02P0``````$%D!```````"P````$```!0 +M2P0``````%)D!````````@```)4"``#\_________Y]D!````````@```'(" +M``#\__________MD!```````"P````$```!02P0``````&5E!````````@`` +M`'("``#\_________ZEE!```````"P````$```!02P0``````/AE!``````` +M`@```)0"``#\_________TAF!```````"P````$```!02P0``````)UF!``` +M`````@```)0"``#\_________QUG!```````"P````$```!02P0``````/AG +M!```````"P````$```!02P0```````MH!````````@```)4"``#\________ +M_]MH!```````"P````$```!02P0``````.YH!````````@```)4"``#\____ +M_____]MI!```````"P````$```!02P0``````.YI!````````@```)4"``#\ +M_________\MJ!```````"P````$```!02P0``````-YJ!````````@```)4" +M``#\_________[MK!```````"P````$```!02P0``````,YK!````````@`` +M`)4"``#\_________YEL!```````"P````$```!02P0``````*QL!``````` +M`@```)4"``#\_________^5L!```````"P````$```!02P0``````)5M!``` +M````"P````$```!02P0``````*9M!````````@```)4"``#\_________^9M +M!```````"P````$```!02P0``````!1N!```````"P````8```#!`P`````` +M`#9N!````````@```+4"``#\_________SYN!```````"P````$```!02P0` +M`````&1N!```````"P````8```#.`P```````(%N!````````@```(P"``#\ +M_________XIN!```````"P````8```#?`P```````)UN!```````"P````8` +M``#\`P```````+AN!```````"P````$```!@=@0``````.IN!````````@`` +M`%`"``#\__________9N!```````"P````8````9!````````!%O!``````` +M"P````$```!@;P0``````#AO!```````"P````$```!02P0``````,IO!``` +M````"P````$```!02P0``````-MO!````````@```)4"``#\_________V%P +M!````````@```'("``#\_________Y5P!````````@```*,"``#\________ +M_YUP!````````@```(D"``#\_________]EP!```````"P````$```!02P0` +M`````)AQ!```````"P````$`````A00``````.MQ!````````@```'("``#\ +M_________PMR!````````@```'("``#\_________S9R!````````@```'(" +M``#\_________XAR!````````@```'("``#\_________]MR!````````@`` +M`'("``#\_________PAS!````````@```'("``#\_________YAS!``````` +M`@```'("``#\_________Z)S!````````@```'("``#\_________]MS!``` +M`````@```'("``#\__________MS!````````@```'("``#\_________QAT +M!````````@```'("``#\_________Y!T!````````@```'("``#\________ +M_]!T!````````@```'("``#\_________PQU!````````@```'("``#\____ +M_____TQU!````````@```'("``#\_________XQU!````````@```'("``#\ +M_________\UU!````````@```'("``#\__________=U!```````"P````8` +M``#\`P```````+IV!````````@```&("``#\__________MV!````````@`` +M`'\"``#\_________Q%W!```````"P```%@"`````````````"-W!``````` +M`@```)T"``#\_________SIW!```````"P````$```!02P0``````$MW!``` +M`````@```)4"``#\_________V)W!````````@```$T"``#\_________\5W +M!````````@```*8"``#\_________XMX!```````"P````$```"`T`0````` +M`-%X!````````@```+("``#\__________MX!````````@```(8"``#\____ +M_____S!Y!```````"P````$```!@600``````$!Y!```````"P````$```!0 +M2P0``````%%Y!````````@```)4"``#\_________U)Z!```````"P````$` +M``!02P0``````)-Z!```````"P````$```!02P0``````*1Z!````````@`` +M`)4"``#\_________]MZ!````````@```'("``#\__________MZ!``````` +M`@```'("``#\_________S1[!````````@```'("``#\_________T)[!``` +M`````@```*8"``#\_________XI[!````````@```(8"``#\_________\U[ +M!```````"P````$````P2`0``````-A[!```````"P````$```#07@0````` +M`#!\!```````"P````$```!02P0``````)5\!```````"P````$```!02P0` +M`````*9\!````````@```)4"``#\_________]1\!````````@```*4"``#[ +M__________9\!```````"P````8```#.`P````````U]!```````"P````8` +M``#?`P```````%9]!````````@```%`"``#\_________V5]!```````"P`` +M``$```!02P0``````,1]!````````@```(P"``#\_________^-]!``````` +M"P````8```#\`P````````1^!```````"P````8```#!`P```````$U^!``` +M`````@```+4"``#\_________XY^!````````@```&("``#\_________T.` +M!````````@```&$"``#\_________XV`!````````@```&$"``#\________ +M_[N`!````````@```&$"``#\_________^2"!```````"P````$```!02P0` +M`````/>"!````````@```)4"``#\_________T&$!```````"P````$```!0 +M2P0``````%*$!````````@```)4"``#\_________[.$!````````@```,@" +M``#\_________[Z$!````````@```*8"``#\_________]N$!```````"P`` +M``$```!P6@0```````N%!````````@```'("``#\_________Q.%!``````` +M`@```*T"``#\_________QN%!```````"P````$```!02P0``````$F%!``` +M`````@```*T"``#\_________UB%!```````"P````$```!02P0``````-Z% +M!```````"P````$```!P400``````'2&!```````"P````$```!@B`0````` +M`%>'!````````@```&T"``#\_________VB'!````````@```%`"``#[____ +M_____XB'!````````@```%`"``#[__________&'!````````@```&T"``#\ +M_________SV(!````````@```&T"``#\_________Z:(!```````"P````$` +M``"`A00``````/N)!```````"P````$```!@B`0``````):*!```````"P`` +M``$```!@B`0``````*:*!````````@```*`"``#\__________^*!``````` +M"P````$```!@B`0``````!^+!````````@```*`"``#\_________U>+!``` +M`````@```'("``#\_________W&+!```````"P````$```!02P0``````*6+ +M!```````"P````,```!0)P```````-:+!````````@```&T"``#\________ +M_W2,!````````@```&H"``#\_________Y:,!```````"P````$```!@B`0` +M`````+R,!````````@```*`"``#\_________\F,!````````@```&T"``#\ +M_________^R,!````````@```&T"``#\_________SN-!````````@```&T" +M``#\_________SB.!````````@```&H"``#\_________V^.!```````"P`` +M``$```!@B`0``````'^.!````````@```*`"``#\_________XR.!``````` +M`@```&T"``#\_________Z6.!````````@```&T"``#\_________UN/!``` +M`````@```&T"``#\_________P60!````````@```&T"``#\_________XJ0 +M!```````"P````$```!@B`0``````)J0!````````@```*`"``#\________ +M_Z>0!````````@```&T"``#\__________20!````````@```&T"``#\____ +M_____T>1!````````@```(T"``#\_________UB1!````````@```(T"``#\ +M_________ZZ1!````````@```&T"``#\__________N1!````````@```&T" +M``#\_________P^2!````````@```,4"``#\_________QR2!````````@`` +M`*T"``#\_________RF2!````````@```(T"``#\_________SF2!``````` +M`@```,4"``#\_________U"2!````````@```&H"``#\_________WV2!``` +M````"P````$```!@B`0``````(V2!````````@```*`"``#\_________YJ2 +M!````````@```&T"``#\_________[&2!````````@```'L"``#\________ +M_\^2!````````@```&H"``#\_________P>3!```````"P````$```!@B`0` +M`````!>3!````````@```*`"``#\_________R23!````````@```&T"``#\ +M_________U&3!```````"P````$```!@B`0``````&&3!````````@```*`" +M``#\_________VZ3!````````@```&T"``#\_________Y>3!```````"P`` +M``$```!@B`0``````+:3!````````@```*`"``#\_________\.3!``````` +M`@```&T"``#\_________W:6!````````@```&H"``#\_________[J6!``` +M`````@```'("``#\_________Q&7!````````@```*T"``#\_________R.7 +M!```````"P````$```!02P0``````%>7!````````@```&D"``#\________ +M_\*7!```````"P````$```!02P0``````-.7!````````@```)4"``#\____ +M______&7!````````@```'("``#\_________V>8!````````@```&D"``#\ +M_________VN:!```````"P````4```!@#````````'":!````````@```*\" +M``#\_________R*;!```````"P````$```!02P0``````#.;!````````@`` +M`)4"``#\_________U&;!````````@```'("``#\_________VZ;!``````` +M`@```&D"``#\_________\N;!````````@```'("``#\_________P><!``` +M`````@```&D"``#\_________P^<!```````"P````$```!02P0``````).< +M!````````@```$X"``#\__________.<!````````@```(,"``#\________ +M_R6=!````````@```&4"``#\_________T>=!````````@```&$"``#\____ +M_____X>=!````````@```&$"``#\_________Y2=!````````@```&D"``#\ +M_________\.=!````````@```$X"``#\_________PJ>!````````@```'(" +M``#\_________U&>!```````"P````$```!02P0``````$6?!````````@`` +M`*,"``#\_________X^?!````````@```'L"``#\_________Q6@!``````` +M`@```'("``#\_________S.@!```````"P````,```#()P```````$N@!``` +M`````@```%P"``#\_________XB@!````````@```%P"``#\_________\:@ +M!````````@```'("``#\__________.A!````````@```(H"``#\________ +M_S^B!````````@```'("``#\_________V^B!````````@```%T"``#\____ +M_____Y:B!````````@```$X"``#\_________Z2B!````````@```(,"``#\ +M_________T:D!````````@```(H"``#\_________P*E!````````@```'(" +M``#\_________URE!````````@```'("``#\_________W>E!````````@`` +M`%T"``#\_________TNF!````````@```%("``#\_________UFG!``````` +M`@```+("``#\_________W.G!````````@```'L"``#\_________XJG!``` +M`````@```%<"``#\_________TNH!````````@```*T"``#\_________U.H +M!````````@```(T"``#\_________Z:H!```````"P````$```!@B`0````` +M`+:H!````````@```*`"``#\_________\.H!````````@```&T"``#\____ +M_____R*I!```````"P````$```!@B`0``````#*I!````````@```*`"``#\ +M_________S^I!````````@```&T"``#\_________WRI!````````@```,@" +M``#\_________]:I!````````@```$X"``#\_________YJJ!````````@`` +M`'("``#\_________PVK!````````@```'("``#\_________SFK!``````` +M"P````$```!@B`0``````$FK!````````@```*`"``#\_________U:K!``` +M`````@```&T"``#\_________V.K!````````@```(T"``#\_________W6K +M!````````@```,4"``#\_________Y^K!```````"P````$```#`6@0````` +M`,NK!```````"P````$```!@B`0``````-NK!````````@```*`"``#\____ +M_____^BK!````````@```&T"``#\__________2K!```````"P````$```!0 +M5P0``````+RL!````````@```%\"``#\_________^>L!````````@```(T" +M``#\__________NL!````````@```,@"``#\_________T:M!````````@`` +M`&`"``#\_________U.M!````````@```%\"``#\_________\JM!``````` +M`@```'("``#\_________^6M!````````@```%T"``#\_________P^N!``` +M`````@```$X"``#\_________R>N!````````@```%T"``#\_________VBN +M!````````@```$X"``#\_________YZN!```````"P````$````P<`0````` +M`-&N!````````@```'("``#\__________BN!```````"P````$```!02P0` +M`````!ZP!```````"P````$```!02P0``````"^P!````````@```)4"``#\ +M_________VJP!```````"P````$```!02P0``````*ZP!````````@```(D" +M``#\_________P2Q!````````@```,@"``#\_________PRQ!````````@`` +M`(T"``#\_________R.Q!```````"P````$```!02P0``````-6R!``````` +M`@```(8"``#\_________^*R!````````@```,L"``#\_________\*S!``` +M`````@```'("``#\_________RBT!````````@```*P"``#\_________V6T +M!```````"P````$```!02P0``````#*U!````````@```%4"``#\________ +M_RRV!````````@```%L"``#\_________UJX!````````@```(8"``#\____ +M_____V>X!````````@```,L"``#\_________]2X!````````@```%X"``#\ +M_________^BX!````````@```'("``#\__________^X!````````@```+," +M``#\_________P>Y!````````@```%X"``#\_________Q6Y!```````"P`` +M``$```!02P0``````'>Y!````````@```*,"``#\_________^2Y!``````` +M"P````$````0Y`0``````!BZ!````````@```'("``#\_________P>[!``` +M````"P````$```"PN00``````#6[!````````@```,<"``#\_________WR\ +M!```````"P````$```!02P0``````,*\!````````@```*8"``#\________ +M_^J\!```````"P````$```#`R@0``````"&]!````````@```(D"``#\____ +M_____\*^!```````"P````4```"`#````````,F^!````````@```*\"``#\ +M_________PG!!````````@```&H"``#\_________S;!!````````@```+(" +M``#\_________Z+"!```````"P````$```#@Z@0``````'W#!```````"P`` +M``$```!02P0```````7$!````````@```+("``#\_________QS$!``````` +M`@```*8"``#\_________X#$!````````@```(P"``#\_________QK%!``` +M````"P````$```"PRP0``````.?%!```````"P````$```"PRP0``````#7& +M!```````"P````$```#@Z@0``````'W&!````````@```*,"``#\________ +M_Y3&!```````"P````$```!02P0``````+;&!````````@```*,"``#\____ +M_____\+&!````````@```(D"``#\_________U7'!````````@```'("``#\ +M_________Z3'!````````@```'("``#\_________R3(!````````@```'(" +M``#\_________Z7(!````````@```'("``#\__________3(!````````@`` +M`'("``#\_________W3)!````````@```'("``#\_________P?*!``````` +M`@```'H"``#\_________Q[*!````````@```)P"``#\_________Y7*!``` +M`````@```+$"``#\_________RO+!````````@```*,"``#\_________SO+ +M!````````@```(D"``#\_________T/+!```````"P````$```!02P0````` +M`/#+!````````@```*,"``#\_________P',!````````@```(D"``#\____ +M_____PG,!```````"P````$```!02P0``````);,!````````@```&T"``#\ +M__________/,!````````@```'("``#\___________,!````````@```'(" +M``#\_________R_-!````````@```,0"``#\_________Z/-!````````@`` +M`,0"``#\_________\+.!````````@```'("``#\_________^W.!``````` +M`@```,0"``#\_________P3/!```````"P````$```!02P0``````(G/!``` +M`````@```'("``#\_________]#/!````````@```'("``#\_________]C/ +M!````````@```+,"``#\__________G/!```````"P````$```!02P0````` +M`$70!````````@```'("``#\_________Q?1!````````@```(D"``#\____ +M_____R?1!```````"P````$```!02P0``````#C1!````````@```)4"``#\ +M_________Q32!````````@```$D"``#\_________V_2!````````@```)0" +M``#\_________W[2!````````@```)0"``#\_________X/2!````````@`` +M`,P"``#\_________^G2!````````@```%P"``#\_________S33!``````` +M`@```)0"``#\_________WS3!```````"P````$```!02P0``````!;4!``` +M````"P````$```#PU`0``````"#4!````````@```%H"``#\_________W'4 +M!```````"P````$```!02P0``````(+4!````````@```)4"``#\________ +M_[34!```````"P````$```#@U`0``````,W4!````````@```-`"``#\____ +M_____R+5!````````@```&0"``#\_________S35!````````@```+4"``#[ +M_________T35!````````@```&T"``#\_________Z+5!```````"P````$` +M``#@U`0``````-K5!````````@```*,"``#\__________K5!````````@`` +M`*,"``#\_________P?6!````````@```%X"``#\_________T#6!``````` +M`@```'("``#\_________TO6!````````@```'("``#\_________U;6!``` +M`````@```&@"``#\_________VO6!```````"P````$```!02P0``````*36 +M!````````@```&("``#[_________^'6!````````@```&("``#\________ +M_^;6!````````@```'0"``#\_________P/7!```````"P```%@"```````` +M`````&W7!````````@```(8"``#\_________YC7!```````"P````$```!0 +M2P0``````*G7!````````@```)4"``#\__________?7!```````"P````$` +M``!02P0``````(/8!````````@```'("``#\_________^78!````````@`` +M`*P"``#\_________Q;9!```````"P````$```!02P0``````+39!``````` +M`@```%4"``#\_________Z[:!````````@```%L"``#\_________VK;!``` +M`````@```'("``#\_________\O;!```````"P````$```!02P0``````$#< +M!````````@```%4"``#\_________TK=!````````@```'("``#\________ +M_ZK=!```````"P````$```!02P0``````![>!````````@```%4"``#\____ +M_____PK?!````````@```)0"``#\_________UO?!```````"P````$```!0 +M2P0``````&S?!````````@```)4"``#\_________WS?!````````@```'(" +M``#\_________\3?!````````@```&D"``#\_________[+@!````````@`` +M`(T"``#\_________]/@!```````"P````,````0*````````$KB!``````` +M"P````$````P<`0``````'+B!````````@```'("``#\_________R[C!``` +M`````@```(T"``#\_________S;C!```````"P````$```!02P0``````'SC +M!````````@```'("``#\_________Z[C!````````@```(8"``#\________ +M_]SC!```````"P````$```!02P0``````._C!````````@```)4"``#\____ +M_____TGD!````````@```*8"``#\_________UOD!````````@```(P"``#\ +M_________T'E!```````"P````$```"`Y@0``````$SE!```````"P````$` +M``"@,`0``````!'F!````````@```)D"``#\_________R_F!```````"P`` +M``$```!02P0``````-/F!```````"P````$```"@Z@0``````''H!``````` +M`@```(D"``#\_________XWH!```````"P````$```!02P0``````#KI!``` +M`````@```(D"``#\_________VGI!````````@```)D"``#\_________\KI +M!````````@```(D"``#\_________UOJ!````````@```)D"``#\________ +M_VWJ!````````@```)D"``#\_________VWK!````````@```(D"``#\____ +M_____\_K!````````@```*,"``#\_________^CK!````````@```'("``#\ +M_________R#L!````````@```&4"``#\_________S_L!```````"P````$` +M``!02P0``````"7M!```````"P````$```!02P0``````#;M!````````@`` +M`)4"``#\_________T/M!````````@```&T"``#\_________U[M!``````` +M"P````$````@5P0``````(Q-!````````@```*L"``#\_________U9.!``` +M`````@```*L"``#\_________P=/!````````@```*<"``#\_________V-1 +M!````````@```*<"``#\_________^E1!````````@```*$"``#\________ +M_QU2!````````@```-`"``#\_________UU2!````````@```-`"``#\____ +M_____YU2!````````@```-`"``#\_________]U2!````````@```-`"``#\ +M_________QU3!````````@```-`"``#\_________UU3!````````@```-`" +M``#\_________YU3!````````@```-`"``#\_________]U3!````````@`` +M`-`"``#\_________QU4!````````@```-`"``#\_________UU4!``````` +M`@```-`"``#\_________YU4!````````@```-`"``#\_________]U4!``` +M`````@```-`"``#\_________QU5!````````@```-`"``#\_________UU5 +M!````````@```-`"``#\_________YU5!````````@```-`"``#\________ +M_]U5!````````@```-`"``#\_________QU6!````````@```-`"``#\____ +M_____UU6!````````@```-`"``#\_________YU6!````````@```-`"``#\ +M_________]U6!````````@```-`"``#\_________Q!7!````````@```-`" +M``#\_________T17!````````@```-`"``#\_________Z57!````````@`` +M`-`"``#\__________17!````````@```*L"``#\_________R]8!``````` +M`@```-`"``#\_________S18!````````@```(D"``#\__________Y8!``` +M`````@```*L"``#\_________U%9!````````@```(D"``#\_________[E: +M!````````@```-`"``#\_________]=;!````````@```-`"``#\________ +M_UA<!````````@```*L"``#\_________WM=!````````@```)4"``#\____ +M_____\5>!````````@```)4"``#\_________Q5?!````````@```)4"``#\ +M_________ZMA!````````@```)4"``#\_________QMC!````````@```)4" +M``#\_________\-C!````````@```)4"``#\_________R1E!````````@`` +M`)4"``#\_________]AE!````````@```)4"``#\_________V1F!``````` +M`@```)4"``#\_________SMG!````````@```)4"``#\__________]L!``` +M`````@```)4"``#\_________PEN!````````@```)4"``#\_________UUN +M!````````@```)4"``#\_________^!N!````````@```-`"``#\________ +M_U=O!````````@```)4"``#\_________P9Q!````````@```)4"``#\____ +M_____X)Q!````````@```*L"``#\_________\MQ!````````@```-`"``#\ +M_________]MQ!````````@```$@"``#\_________ZMX!````````@```*L" +M``#\_________WMZ!````````@```)4"``#\_________\1Z!````````@`` +M`(D"``#\__________A[!````````@```*L"``#\_________UE\!``````` +M`@```)4"``#\_________X9]!````````@```)4"``#\__________*$!``` +M`````@```*L"``#\_________S6%!````````@```)4"``#\_________W*% +M!````````@```)4"``#\_________P2&!````````@```*`"``#\________ +M_X*'!````````@```&T"``#\_________[:'!````````@```&T"``#\____ +M_____QN(!````````@```&T"``#\_________UF(!````````@```&T"``#\ +M__________*(!````````@```*$"``#\_________Q6*!````````@```*`" +M``#\_________\&*!````````@```&T"``#\_________SJ+!````````@`` +M`&T"``#\_________YB+!````````@```)4"``#\_________TB7!``````` +M`@```)4"``#\_________RF<!````````@```)4"``#\_________WJ>!``` +M`````@```)4"``#\_________QFO!````````@```)4"``#\_________XFP +M!````````@```)4"``#\_________T2Q!````````@```)4"``#\________ +M_YBT!````````@```)4"``#\_________SBY!````````@```)4"``#\____ +M_____Z"Y!````````@```%0"``#\_________PRZ!````````@```($"``#\ +M_________[*\!````````@```)4"``#\_________\C`!````````@```*L" +M``#\__________7"!````````@```($"``#\_________[/#!````````@`` +M`)4"``#\_________W#&!````````@```($"``#\_________RO'!``````` +M`@```*L"``#\_________[7*!````````@```),"``#\_________V++!``` +M`````@```)4"``#\_________RC,!````````@```)4"``#\_________R7/ +M!````````@```)4"``#\_________R30!````````@```)4"``#\________ +M_Y;3!````````@```)4"``#\_________^'4!````````@```$L"``#\____ +M_____]'5!````````@```-`"``#\_________Y/6!````````@```)4"``#\ +M_________QW7!````````@```)T"``#\_________Q;8!````````@```)4" +M``#\_________SW9!````````@```)4"``#\_________^S;!````````@`` +M`)4"``#\_________\O=!````````@```)4"``#\_________U/C!``````` +M`@```)4"``#\_________U#F!````````@```)4"``#\_________V+F!``` +M`````@```*L"``#\__________SF!````````@```-`"``#\_________[CH +M!````````@```)4"``#\__________'I!````````@```*L"``#\________ +M_]?J!````````@```*L"``#\_________Q[K!````````@```*L"``#\____ +M_____W3L!````````@```)4"``#\_________Y#M!````````@```)4"``#\ +M_________P;P!````````@```'$"``#\_________TGR!```````"P````$` +M````]@0``````(KR!````````@```(\"``#\_________]+R!```````"P`` +M``$```!P\`0``````-WR!```````"P````$`````]@0``````(;T!``````` +M`@```'L"``#\_________W+U!````````@```(\"``#\_________\3U!``` +M````"P```',"`````````````-'U!````````@```,<"``#\_________TSV +M!````````@```*,"``#\_________W_X!```````"P```',"```````````` +M`(SX!````````@```,<"``#\_________Z#X!````````@```',"``#\____ +M_____UCY!````````@```,H"``#\_________X/Y!````````@```-`"``#\ +M_________R;Z!````````@```*L"``#\_________TCZ!````````@```$\" +M``#\_________X#Z!````````@```*L"``#\_________Y7O!````````@`` +M`-`"``#\_________^CO!````````@```-`"``#\_________T[P!``````` +M`@```)D"``#\_________Y?S!````````@```*L"``#\_________^;U!``` +M`````@```',"``#\_________VWV!````````@```,H"``#\_________]7V +M!````````@```*L"``#\_________WOZ!````````@```*<"``#\________ +M_^+Z!````````@```&H"``#\_________S;]!````````@```'4"``#\____ +M_____V?]!````````@```'4"``#\_________WC]!````````@```'4"``#\ +M_________P7^!````````@```%("``#\_________P3_!````````@```%<" +M``#\__________X`!0```````@```&T"``#\_________R<!!0```````@`` +M`%T"``#\_________[\!!0```````@```(T"``#\_________VX$!0`````` +M`@```&L"``#\_________WL$!0```````@```&8"``#\_________Y@$!0`` +M`````@```&$"``#\_________\T$!0```````@```&$"``#\_________^0$ +M!0```````@```&D"``#\_________X`%!0```````@```(T"``#\________ +M_[$%!0```````@```'L"``#\_________\\%!0```````@```'L"``#\____ +M_____^$%!0```````@```'L"``#\__________$%!0```````@```(T"``#\ +M__________D%!0```````@```(T"``#\_________U(&!0``````"P````,` +M``!`*````````,8&!0```````@```(L"``#\_________Q4'!0```````@`` +M`&\"``#\_________VL'!0```````@```%0"``#\_________P`(!0`````` +M`@```(T"``#\_________]0(!0```````@```*T"``#\_________P8)!0`` +M`````@```%T"``#\_________Q8)!0```````@```(L"``#\_________S<) +M!0```````@```(H"``#\_________P<+!0```````@```&$"``#\________ +M_RX+!0```````@```&$"``#\_________SX+!0```````@```&L"``#\____ +M_____\H+!0```````@```&$"``#\_________^0+!0```````@```&L"``#\ +M_________P4,!0```````@```&8"``#\_________R$,!0```````@```&8" +M``#\_________QL/!0```````@```-4"``#\_________W$/!0```````@`` +M`-4"``#\_________[X/!0```````@```-4"``#\_________WH0!0`````` +M`@```&L"``#\_________Y00!0```````@```&$"``#\_________YP0!0`` +M`````@```&L"``#\__________X0!0```````@```&H"``#\_________Q81 +M!0```````@```*T"``#\_________S<1!0```````@```+("``#\________ +M_[D1!0```````@```&H"``#\_________]D1!0```````@```&L"``#\____ +M_____Z(2!0```````@```-4"``#\_________UH4!0```````@```+,"``#\ +M_________W<4!0```````@```*T"``#\_________X$4!0```````@```(T" +M``#\_________[D4!0```````@```(L"``#\_________PW_!````````@`` +M`&\"``#\_________QD!!0```````@```&\"``#\_________R$(!0`````` +M`@```*T"``#\_________VP3!0```````@```+,"``#\_________^,4!0`` +M`````@```$P"``#\_________P45!0```````@```*H"``#\_________R$5 +M!0```````@```*H"``#\_________\X6!0``````"P````$```"`%04````` +M`.D6!0```````@```-`"``#\_________R$7!0```````@```),"``#\____ +M_____V@7!0```````@```-("``#\_________W@7!0```````@```+T"``#\ +M_________P`$`````````0````$```#`'`````````@$`````````0````$` +M``#R'````````!`$`````````0````$```!\'0```````!@$`````````0`` +M``$```!\'0```````"`$`````````0````$```!\'0```````"@$```````` +M`0````$```!\'0```````#`$`````````0````$````D'0```````#@$```` +M`````0````$```!0'0```````$`$`````````0````$```!\'0```````$@$ +M`````````0````$```"1'0```````%`$`````````0````$````S)P`````` +M`%@$`````````0````$````^)P```````&`$`````````0````$````^)P`` +M`````&@$`````````0````$````^)P```````'`$`````````0````$````^ +M)P```````'@$`````````0````$````^)P```````(`$`````````0````$` +M```^)P```````(@$`````````0````$````^)P```````)`$`````````0`` +M``$````^)P```````)@$`````````0````$````^)P```````*`$```````` +M`0````$````^)P```````*@$`````````0````$````^)P```````+`$```` +M`````0````$````^)P```````+@$`````````0````$````^)P```````,`$ +M`````````0````$````^)P```````,@$`````````0````$````^)P`````` +M`-`$`````````0````$````^)P```````-@$`````````0````$````^)P`` +M`````.`$`````````0````$````^)P```````.@$`````````0````$````^ +M)P```````/`$`````````0````$````^)P```````/@$`````````0````$` +M```^)P`````````%`````````0````$````^)P````````@%`````````0`` +M``$````^)P```````!`%`````````0````$````^)P```````!@%```````` +M`0````$````^)P```````"`%`````````0````$````^)P```````"@%```` +M`````0````$````^)P```````#`%`````````0````$````^)P```````#@% +M`````````0````$````^)P```````$`%`````````0````$````^)P`````` +M`$@%`````````0````$````^)P```````%`%`````````0````$````^)P`` +M`````%@%`````````0````$````^)P```````&`%`````````0````$````^ +M)P```````&@%`````````0````$````^)P```````'`%`````````0````$` +M```()P```````'@%`````````0````$````^)P```````(`%`````````0`` +M``$````()P```````(@%`````````0````$````^)P```````)`%```````` +M`0````$````^)P```````)@%`````````0````$````^)P```````*`%```` +M`````0````$````()P```````*@%`````````0````$````()P```````+`% +M`````````0````$````^)P```````+@%`````````0````$````^)P`````` +M`,`%`````````0````$````^)P```````,@%`````````0````$````^)P`` +M`````-`%`````````0````$````^)P```````-@%`````````0````$````^ +M)P```````.`%`````````0````$````^)P```````.@%`````````0````$` +M```^)P```````/`%`````````0````$````^)P```````/@%`````````0`` +M``$````^)P`````````&`````````0````$````^)P````````@&```````` +M`0````$````^)P```````!`&`````````0````$````^)P```````!@&```` +M`````0````$````^)P```````"`&`````````0````$````^)P```````"@& +M`````````0````$````^)P```````#`&`````````0````$````^)P`````` +M`#@&`````````0````$````()P```````$`&`````````0````$````^)P`` +M`````$@&`````````0````$````^)P```````%`&`````````0````$````^ +M)P```````%@&`````````0````$````^)P```````&`&`````````0````$` +M```^)P```````&@&`````````0````$````^)P```````'`&`````````0`` +M``$````^)P```````'@&`````````0````$````^)P```````(`&```````` +M`0````$````^)P```````(@&`````````0````$````^)P```````)`&```` +M`````0````$````^)P```````)@&`````````0````$````^)P```````*`& +M`````````0````$````^)P```````*@&`````````0````$````^)P`````` +M`+`&`````````0````$````()P```````+@&`````````0````$````()P`` +M`````,`&`````````0````$````()P```````,@&`````````0````$````( +M)P```````-`&`````````0````$````^)P```````-@&`````````0````$` +M```^)P```````.`&`````````0````$````^)P```````.@&`````````0`` +M``$````^)P```````/`&`````````0````$````^)P```````/@&```````` +M`0````$````^)P`````````'`````````0````$````^)P````````@'```` +M`````0````$````^)P```````!`'`````````0````$````^)P```````!@' +M`````````0````$````^)P```````"`'`````````0````$````^)P`````` +M`"@'`````````0````$````^)P```````#`'`````````0````$````^)P`` +M`````#@'`````````0````$````^)P```````$`'`````````0````$````^ +M)P```````$@'`````````0````$````^)P```````%`'`````````0````$` +M```^)P```````%@'`````````0````$````^)P```````&`'`````````0`` +M``$````^)P```````&@'`````````0````$````^)P```````'`'```````` +M`0````$````^)P```````'@'`````````0````$````^)P```````(`'```` +M`````0````$````^)P```````(@'`````````0````$````^)P```````)`' +M`````````0````$````^)P```````)@'`````````0````$````^)P`````` +M`*`'`````````0````$````^)P```````*@'`````````0````$````^)P`` +M`````+`'`````````0````$````^)P```````+@'`````````0````$````^ +M)P```````,`'`````````0````$````^)P```````,@'`````````0````$` +M```^)P```````-`'`````````0````$````^)P```````-@'`````````0`` +M``$````^)P```````.`'`````````0````$````^)P```````.@'```````` +M`0````$````^)P```````/`'`````````0````$````^)P```````/@'```` +M`````0````$````^)P`````````(`````````0````$````^)P````````@( +M`````````0````$````^)P```````!`(`````````0````$````^)P`````` +M`!@(`````````0````$````^)P```````"`(`````````0````$````^)P`` +M`````"@(`````````0````$````()P```````#`(`````````0````$````^ +M)P```````#@(`````````0````$````^)P```````$`(`````````0````$` +M```^)P```````$@(`````````0````$````^)P```````%`(`````````0`` +M``$````^)P```````%@(`````````0````$````^)P```````&`(```````` +M`0````$````^)P```````&@(`````````0````$````^)P```````'`(```` +M`````0````$````()P```````'@(`````````0````$````^)P```````(`( +M`````````0````$````()P```````(@(`````````0````$````^)P`````` +M`)`(`````````0````$````^)P```````)@(`````````0````$````^)P`` +M`````*`(`````````0````$````()P```````*@(`````````0````$````( +M)P```````+`(`````````0````$````^)P```````+@(`````````0````$` +M```^)P```````,`(`````````0````$````^)P```````,@(`````````0`` +M``$````()P```````-`(`````````0````$````^)P```````-@(```````` +M`0````$````^)P```````.`(`````````0````$````^)P```````.@(```` +M`````0````$````^)P```````/`(`````````0````$````^)P```````/@( +M`````````0````$````^)P`````````)`````````0````$````^)P`````` +M``@)`````````0````$````^)P```````!`)`````````0````$````^)P`` +M`````!@)`````````0````$````^)P```````"`)`````````0````$````^ +M)P```````"@)`````````0````$````^)P```````#`)`````````0````$` +M```^)P```````#@)`````````0````$````^)P```````$`)`````````0`` +M``$````^)P```````$@)`````````0````$````^)P```````%`)```````` +M`0````$````^)P```````%@)`````````0````$````^)P```````&`)```` +M`````0````$````^)P```````&@)`````````0````$````^)P```````'`) +M`````````0````$````()P```````'@)`````````0````$````^)P`````` +M`(`)`````````0````$````()P```````(@)`````````0````$````^)P`` +M`````)`)`````````0````$````^)P```````)@)`````````0````$````^ +M)P```````*`)`````````0````$````()P```````*@)`````````0````$` +M```()P```````+`)`````````0````$```"4/````````+@)`````````0`` +M``$```!$/````````,`)`````````0````$```!1/````````,@)```````` +M`0````$```!V/````````-`)`````````0````$```"4/````````-@)```` +M`````0````$```"*/````````.`)`````````0````$```"`/````````.@) +M`````````0````$```"4/````````/`)`````````0````$```"4/``````` +M`/@)`````````0````$```"4/``````````*`````````0````$```"4/``` +M``````@*`````````0````$```"`/````````!`*`````````0````$```!I +M90```````!@*`````````0````$```"%90```````"`*`````````0````$` +M``"A90```````"@*`````````0````$```#W90```````#`*`````````0`` +M``$```!A9@```````$`*`````````0````$````WJ@```````$@*```````` +M`0````$````1J@```````%`*`````````0````$````7J@```````%@*```` +M`````0````$```!!J@```````&`*`````````0````$````'J@```````&@* +M`````````0````$````'J@```````'`*`````````0````$````'J@`````` +M`'@*`````````0````$````'J@```````(`*`````````0````$````'J@`` +M`````(@*`````````0````$````'J@```````)`*`````````0````$````' +MJ@```````)@*`````````0````$````'J@```````*`*`````````0````$` +M```'J@```````*@*`````````0````$````'J@```````+`*`````````0`` +M``$````'J@```````+@*`````````0````$````'J@```````,`*```````` +M`0````$```!'J@```````,@*`````````0````$```!!J@```````-`*```` +M`````0````$````AJ@```````-@*`````````0````$````WJ@```````.`* +M`````````0````$````GJ@```````.@*`````````0````$````QJ@`````` +M`/`*`````````0````$```!'J@```````/@*`````````0````$````!J@`` +M`````(`+`````````0````$```#/(P$``````(@+`````````0````$````Z +M)`$``````)`+`````````0````$```!6)`$``````)@+`````````0````$` +M``!R)`$``````*`+`````````0````$```".)`$``````*@+`````````0`` +M``$```"J)`$``````+`+`````````0````$```#+)`$``````+@+```````` +M`0````$```!&)0$``````,`+`````````0````$```!S)0$``````,@+```` +M`````0````$````5)@$``````-`+`````````0````$```#7)0$``````-@+ +M`````````0````$```#S)0$``````.`+`````````0````$````Q)@$````` +M`.@+`````````0````$```!/)P$``````/`+`````````0````$```!_)P$` +M`````/@+`````````0````$```"E)P$````````,`````````0````$```#< +M)P$```````@,`````````0````$```"^*`$``````!`,`````````0````$` +M```"*`$``````!@,`````````0````$````,*`$``````"`,`````````0`` +M``$```"?)0$``````"@,`````````0````$```"[)0$``````#`,```````` +M`0````$```#M)`$``````#@,`````````0````$````:)0$``````$`,```` +M`````0````$```#7)0$``````$@,`````````0````$````:*`$``````%`, +M`````````0````$```#N*`$``````%@,`````````0````$````0*0$````` +M`&`,`````````0````$````L*0$``````&@,`````````0````$```!-*0$` +M`````'`,`````````0````$```!?*0$``````'@,`````````0````$```"" +M*0$``````(`,`````````0````$```"V*0$``````(@,`````````0````$` +M```\*`$``````)`,`````````0````$```!>*`$``````)@,`````````0`` +M``$```"`*`$``````*`,`````````0````$```"B*`$``````+`,```````` +M`0````$```##7P$``````+@,`````````0````$```#@50$``````,`,```` +M`````0````$````R5@$``````,@,`````````0````$```"M5@$``````-`, +M`````````0````$````\5P$``````-@,`````````0````$```!P5P$````` +M`.`,`````````0````$```"[5P$``````.@,`````````0````$```!16`$` +M`````/`,`````````0````$```!;6`$``````/@,`````````0````$````N +M7`$````````-`````````0````$````%6P$```````@-`````````0````$` +M``#*50$``````!`-`````````0````$```##7P$``````!@-`````````0`` +M``$```##7P$``````"`-`````````0````$```##7P$``````"@-```````` +M`0````$```##7P$``````#`-`````````0````$```##7P$``````#@-```` +M`````0````$````J7P$``````$`-`````````0````$```##7P$``````$@- +M`````````0````$```##7P$``````%`-`````````0````$```!E6`$````` +M`%@-`````````0````$```"`6`$``````&`-`````````0````$```#%5P$` +M`````&@-`````````0````$```!'6`$``````'`-`````````0````$````% +M6P$``````'@-`````````0````$````>70$``````(`-`````````0````$` +M``"&7P$``````(@-`````````0````$```"-7P$``````)`-`````````0`` +M``$```"^7P$``````)@-`````````0````$```##7P$``````*`-```````` +M`0````$```!87@$``````*@-`````````0````$```"H7@$``````+`-```` +M`````0````$```"R7@$``````+@-`````````0````$````H70$``````,`- +M`````````0````$````U70$``````,@-`````````0````$````_70$````` +M`-`-`````````0````$```!)70$``````-@-`````````0````$```#PB@$` +M`````.`-`````````0````$```!+B`$``````.@-`````````0````$```!< +MB`$``````/`-`````````0````$```!MB`$``````/@-`````````0````$` +M``!^B`$````````.`````````0````$```#*B`$```````@.`````````0`` +M``$```#IB`$``````!`.`````````0````$```#]B`$``````!@.```````` +M`0````$```!2B0$``````"`.`````````0````$```!NB0$``````"@.```` +M`````0````$```"*B0$``````#`.`````````0````$```"FB0$``````#@. +M`````````0````$```#.B0$``````$`.`````````0````$```#BB0$````` +M`$@.`````````0````$```#VB0$``````%`.`````````0````$```#PB@$` +M`````%@.`````````0````$```#PB@$``````&`.`````````0````$````/ +MB@$``````&@.`````````0````$```![B@$``````'`.`````````0````$` +M``#PB@$``````'@.`````````0````$```#PB@$``````(`.`````````0`` +M``$````WB@$``````(@.`````````0````$```#`B@$``````)`.```````` +M`0````$```"=B`$``````)@.`````````0````$```"QB`$``````*`.```` +M`````0````$```#PB@$``````*@.`````````0````$````1B0$``````+`. +M`````````0````$````EB0$``````+@.`````````0````$````YB0$````` +M`,`.`````````0````$```"@O`$``````,@.`````````0````$```"@O`$` +M`````-`.`````````0````$```#9O`$``````-@.`````````0````$```#L +MO`$``````.`.`````````0````$```"@O`$``````.@.`````````0````$` +M```-O0$``````/`.`````````0````$```"JO`$``````/@.`````````0`` +M``$```#_O`$````````/`````````0````$```"VO0$```````@/```````` +M`0````$```#"O0$``````!`/`````````0````$````!QP$``````!@/```` +M`````0````$```!VR`$``````"`/`````````0````$```!VR`$``````"@/ +M`````````0````$```!VR`$``````#`/`````````0````$```!VR`$````` +M`#@/`````````0````$```!VR`$``````$`/`````````0````$```!VR`$` +M`````$@/`````````0````$```!VR`$``````%`/`````````0````$```!V +MR`$``````%@/`````````0````$```!VR`$``````&`/`````````0````$` +M``!VR`$``````&@/`````````0````$```!VR`$``````'`/`````````0`` +M``$```!VR`$``````'@/`````````0````$```!VR`$``````(`/```````` +M`0````$```!VR`$``````(@/`````````0````$```!VR`$``````)`/```` +M`````0````$```!VR`$``````)@/`````````0````$```!VR`$``````*`/ +M`````````0````$```!VR`$``````*@/`````````0````$```!VR`$````` +M`+`/`````````0````$```!VR`$``````+@/`````````0````$```!VR`$` +M`````,`/`````````0````$```!VR`$``````,@/`````````0````$```!V +MR`$``````-`/`````````0````$```!VR`$``````-@/`````````0````$` +M``!VR`$``````.`/`````````0````$```!VR`$``````.@/`````````0`` +M``$```!VR`$``````/`/`````````0````$```!VR`$``````/@/```````` +M`0````$```!VR`$````````0`````````0````$```!VR`$```````@0```` +M`````0````$```!VR`$``````!`0`````````0````$````5QP$``````!@0 +M`````````0````$```!PQP$``````"`0`````````0````$```#+QP$````` +M`"@0`````````0````$````FR`$``````#`0`````````0````$```"+R0$` +M`````#@0`````````0````$```!7S@$``````$`0`````````0````$```!7 +MS@$``````$@0`````````0````$```!7S@$``````%`0`````````0````$` +M``!7S@$``````%@0`````````0````$```!7S@$``````&`0`````````0`` +M``$```!7S@$``````&@0`````````0````$```!7S@$``````'`0```````` +M`0````$```!7S@$``````'@0`````````0````$```!7S@$``````(`0```` +M`````0````$```!7S@$``````(@0`````````0````$```!7S@$``````)`0 +M`````````0````$```!7S@$``````)@0`````````0````$```!7S@$````` +M`*`0`````````0````$```!7S@$``````*@0`````````0````$```!7S@$` +M`````+`0`````````0````$```"=R0$``````+@0`````````0````$```"= +MR0$``````,`0`````````0````$```"=R0$``````,@0`````````0````$` +M``!7S@$``````-`0`````````0````$```!7S@$``````-@0`````````0`` +M``$```!7S@$``````.`0`````````0````$```!7S@$``````.@0```````` +M`0````$```!7S@$``````/`0`````````0````$```!7S@$``````/@0```` +M`````0````$```!7S@$````````1`````````0````$```!7S@$```````@1 +M`````````0````$```!7S@$``````!`1`````````0````$```!7S@$````` +M`!@1`````````0````$```!7S@$``````"`1`````````0````$```!7S@$` +M`````"@1`````````0````$```!7S@$``````#`1`````````0````$````# +MR@$``````#@1`````````0````$```!;R@$``````$`1`````````0````$` +M``"SR@$``````$@1`````````0````$````,RP$``````%`1`````````0`` +M``$```!7S@$``````%@1`````````0````$```!7S@$``````&`1```````` +M`0````$```!7S@$``````&@1`````````0````$```!7S@$``````'`1```` +M`````0````$```!7S@$``````'@1`````````0````$```!7S@$``````(`1 +M`````````0````$```!7S@$``````(@1`````````0````$```!7S@$````` +M`)`1`````````0````$```!7S@$``````)@1`````````0````$```!7S@$` +M`````*`1`````````0````$```!7S@$``````*@1`````````0````$```!7 +MS@$``````+`1`````````0````$```!DRP$``````+@1`````````0````$` +M``"_RP$``````,`1`````````0````$````;S`$``````,@1`````````0`` +M``$```!SS`$``````-`1`````````0````$```!7S@$``````-@1```````` +M`0````$```!7S@$``````.`1`````````0````$```!7S@$``````.@1```` +M`````0````$```!7S@$``````/`1`````````0````$```!7S@$``````/@1 +M`````````0````$```!7S@$````````2`````````0````$```!7S@$````` +M``@2`````````0````$```!7S@$``````!`2`````````0````$```!7S@$` +M`````!@2`````````0````$```!7S@$``````"`2`````````0````$```!7 +MS@$``````"@2`````````0````$```!7S@$``````#`2`````````0````$` +M``#+S`$``````#@2`````````0````$```!7S@$``````$`2`````````0`` +M``$```!7S@$``````$@2`````````0````$```!7S@$``````%`2```````` +M`0````$```!7S@$``````%@2`````````0````$```!7S@$``````&`2```` +M`````0````$```!7S@$``````&@2`````````0````$```!7S@$``````'`2 +M`````````0````$```!7S@$``````'@2`````````0````$```!7S@$````` +M`(`2`````````0````$```!7S@$``````(@2`````````0````$```!7S@$` +M`````)`2`````````0````$```!7S@$``````)@2`````````0````$```!7 +MS@$``````*`2`````````0````$```!7S@$``````*@2`````````0````$` +M``!7S@$``````+`2`````````0````$````$S0$``````+@2`````````0`` +M``$````^S0$``````,`2`````````0````$```!XS0$``````,@2```````` +M`0````$```"RS0$``````-`2`````````0````$```#IS0$``````-@2```` +M`````0````$````@S@$````````7`````````0````$```!`#0(```````@7 +M`````````0````$```!R#0(``````!`7`````````0````$```#\#0(````` +M`!@7`````````0````$```#\#0(``````"`7`````````0````$```#\#0(` +M`````"@7`````````0````$```#\#0(``````#`7`````````0````$```"D +M#0(``````#@7`````````0````$```#0#0(``````$`7`````````0````$` +M``#\#0(``````$@7`````````0````$````1#@(``````%`7`````````0`` +M``$```"S%P(``````%@7`````````0````$```"^%P(``````&`7```````` +M`0````$```"^%P(``````&@7`````````0````$```"^%P(``````'`7```` +M`````0````$```"^%P(``````'@7`````````0````$```"^%P(``````(`7 +M`````````0````$```"^%P(``````(@7`````````0````$```"^%P(````` +M`)`7`````````0````$```"^%P(``````)@7`````````0````$```"^%P(` +M`````*`7`````````0````$```"^%P(``````*@7`````````0````$```"^ +M%P(``````+`7`````````0````$```"^%P(``````+@7`````````0````$` +M``"^%P(``````,`7`````````0````$```"^%P(``````,@7`````````0`` +M``$```"^%P(``````-`7`````````0````$```"^%P(``````-@7```````` +M`0````$```"^%P(``````.`7`````````0````$```"^%P(``````.@7```` +M`````0````$```"^%P(``````/`7`````````0````$```"^%P(``````/@7 +M`````````0````$```"^%P(````````8`````````0````$```"^%P(````` +M``@8`````````0````$```"^%P(``````!`8`````````0````$```"^%P(` +M`````!@8`````````0````$```"^%P(``````"`8`````````0````$```"^ +M%P(``````"@8`````````0````$```"^%P(``````#`8`````````0````$` +M``"^%P(``````#@8`````````0````$```"^%P(``````$`8`````````0`` +M``$```"^%P(``````$@8`````````0````$```"^%P(``````%`8```````` +M`0````$```"^%P(``````%@8`````````0````$```"^%P(``````&`8```` +M`````0````$```"^%P(``````&@8`````````0````$```"^%P(``````'`8 +M`````````0````$```"(%P(``````'@8`````````0````$```"^%P(````` +M`(`8`````````0````$```"(%P(``````(@8`````````0````$```"^%P(` +M`````)`8`````````0````$```"^%P(``````)@8`````````0````$```"^ +M%P(``````*`8`````````0````$```"(%P(``````*@8`````````0````$` +M``"(%P(``````+`8`````````0````$```"^%P(``````+@8`````````0`` +M``$```"^%P(``````,`8`````````0````$```"^%P(``````,@8```````` +M`0````$```"^%P(``````-`8`````````0````$```"^%P(``````-@8```` +M`````0````$```"^%P(``````.`8`````````0````$```"^%P(``````.@8 +M`````````0````$```"^%P(``````/`8`````````0````$```"^%P(````` +M`/@8`````````0````$```"^%P(````````9`````````0````$```"^%P(` +M``````@9`````````0````$```"^%P(``````!`9`````````0````$```"^ +M%P(``````!@9`````````0````$```"^%P(``````"`9`````````0````$` +M``"^%P(``````"@9`````````0````$```"^%P(``````#`9`````````0`` +M``$```"^%P(``````#@9`````````0````$```"(%P(``````$`9```````` +M`0````$```"^%P(``````$@9`````````0````$```"^%P(``````%`9```` +M`````0````$```"^%P(``````%@9`````````0````$```"^%P(``````&`9 +M`````````0````$```"^%P(``````&@9`````````0````$```"^%P(````` +M`'`9`````````0````$```"^%P(``````'@9`````````0````$```"^%P(` +M`````(`9`````````0````$```"^%P(``````(@9`````````0````$```"^ +M%P(``````)`9`````````0````$```"^%P(``````)@9`````````0````$` +M``"^%P(``````*`9`````````0````$```"^%P(``````*@9`````````0`` +M``$```"^%P(``````+`9`````````0````$```"(%P(``````+@9```````` +M`0````$```"(%P(``````,`9`````````0````$```"(%P(``````,@9```` +M`````0````$```"(%P(``````-`9`````````0````$```"^%P(``````-@9 +M`````````0````$```"^%P(``````.`9`````````0````$```"^%P(````` +M`.@9`````````0````$```"^%P(``````/`9`````````0````$```"^%P(` +M`````/@9`````````0````$```"^%P(````````:`````````0````$```"^ +M%P(```````@:`````````0````$```"^%P(``````!`:`````````0````$` +M``"^%P(``````!@:`````````0````$```"^%P(``````"`:`````````0`` +M``$```"^%P(``````"@:`````````0````$```"^%P(``````#`:```````` +M`0````$```"^%P(``````#@:`````````0````$```"^%P(``````$`:```` +M`````0````$```"^%P(``````$@:`````````0````$```"^%P(``````%`: +M`````````0````$```"^%P(``````%@:`````````0````$```"^%P(````` +M`&`:`````````0````$```"^%P(``````&@:`````````0````$```"^%P(` +M`````'`:`````````0````$```"^%P(``````'@:`````````0````$```"^ +M%P(``````(`:`````````0````$```"^%P(``````(@:`````````0````$` +M``"^%P(``````)`:`````````0````$```"^%P(``````)@:`````````0`` +M``$```"^%P(``````*`:`````````0````$```"^%P(``````*@:```````` +M`0````$```"^%P(``````+`:`````````0````$```"^%P(``````+@:```` +M`````0````$```"^%P(``````,`:`````````0````$```"^%P(``````,@: +M`````````0````$```"^%P(``````-`:`````````0````$```"^%P(````` +M`-@:`````````0````$```"^%P(``````.`:`````````0````$```"^%P(` +M`````.@:`````````0````$```"^%P(``````/`:`````````0````$```"^ +M%P(``````/@:`````````0````$```"^%P(````````;`````````0````$` +M``"^%P(```````@;`````````0````$```"^%P(``````!`;`````````0`` +M``$```"^%P(``````!@;`````````0````$```"^%P(``````"`;```````` +M`0````$```"^%P(``````"@;`````````0````$```"(%P(``````#`;```` +M`````0````$```"^%P(``````#@;`````````0````$```"^%P(``````$`; +M`````````0````$```"^%P(``````$@;`````````0````$```"^%P(````` +M`%`;`````````0````$```"^%P(``````%@;`````````0````$```"^%P(` +M`````&`;`````````0````$```"^%P(``````&@;`````````0````$```"^ +M%P(``````'`;`````````0````$```"(%P(``````'@;`````````0````$` +M``"^%P(``````(`;`````````0````$```"(%P(``````(@;`````````0`` +M``$```"^%P(``````)`;`````````0````$```"^%P(``````)@;```````` +M`0````$```"^%P(``````*`;`````````0````$```"(%P(``````*@;```` +M`````0````$```"(%P(``````+`;`````````0````$```"^%P(``````+@; +M`````````0````$```"^%P(``````,`;`````````0````$```"^%P(````` +M`,@;`````````0````$```"(%P(``````-`;`````````0````$```"^%P(` +M`````-@;`````````0````$```"^%P(``````.`;`````````0````$```"^ +M%P(``````.@;`````````0````$```"^%P(``````/`;`````````0````$` +M``"^%P(``````/@;`````````0````$```"^%P(````````<`````````0`` +M``$```"^%P(```````@<`````````0````$```"^%P(``````!`<```````` +M`0````$```"^%P(``````!@<`````````0````$```"^%P(``````"`<```` +M`````0````$```"^%P(``````"@<`````````0````$```"^%P(``````#`< +M`````````0````$```"^%P(``````#@<`````````0````$```"^%P(````` +M`$`<`````````0````$```"^%P(``````$@<`````````0````$```"^%P(` +M`````%`<`````````0````$```"^%P(``````%@<`````````0````$```"^ +M%P(``````&`<`````````0````$```"^%P(``````&@<`````````0````$` +M``"^%P(``````'`<`````````0````$```"(%P(``````'@<`````````0`` +M``$```"^%P(``````(`<`````````0````$```"(%P(``````(@<```````` +M`0````$```"^%P(``````)`<`````````0````$```"^%P(``````)@<```` +M`````0````$```"^%P(``````*`<`````````0````$```"(%P(``````*@< +M`````````0````$```"(%P(``````+`<`````````0````$````4+0(````` +M`+@<`````````0````$```#$+`(``````,`<`````````0````$```#1+`(` +M`````,@<`````````0````$```#V+`(``````-`<`````````0````$````4 +M+0(``````-@<`````````0````$````*+0(``````.`<`````````0````$` +M````+0(``````.@<`````````0````$````4+0(``````/`<`````````0`` +M``$````4+0(``````/@<`````````0````$````4+0(````````=```````` +M`0````$````4+0(```````@=`````````0````$`````+0(``````!`=```` +M`````0````$```#)50(``````!@=`````````0````$```#E50(``````"`= +M`````````0````$````!5@(``````"@=`````````0````$```!75@(````` +M`#`=`````````0````$```#!5@(``````$`=`````````0````$````'F@(` +M`````$@=`````````0````$```#AF0(``````%`=`````````0````$```#G +MF0(``````%@=`````````0````$````1F@(``````&`=`````````0````$` +M``#7F0(``````&@=`````````0````$```#7F0(``````'`=`````````0`` +M``$```#7F0(``````'@=`````````0````$```#7F0(``````(`=```````` +M`0````$```#7F0(``````(@=`````````0````$```#7F0(``````)`=```` +M`````0````$```#7F0(``````)@=`````````0````$```#7F0(``````*`= +M`````````0````$```#7F0(``````*@=`````````0````$```#7F0(````` +M`+`=`````````0````$```#7F0(``````+@=`````````0````$```#7F0(` +M`````,`=`````````0````$````7F@(``````,@=`````````0````$````1 +MF@(``````-`=`````````0````$```#QF0(``````-@=`````````0````$` +M```'F@(``````.`=`````````0````$```#WF0(``````.@=`````````0`` +M``$````!F@(``````/`=`````````0````$````7F@(``````/@=```````` +M`0````$```#1F0(``````(`>`````````0````$```"?$P,``````(@>```` +M`````0````$````*%`,``````)`>`````````0````$````F%`,``````)@> +M`````````0````$```!"%`,``````*`>`````````0````$```!>%`,````` +M`*@>`````````0````$```!Z%`,``````+`>`````````0````$```";%`,` +M`````+@>`````````0````$````6%0,``````,`>`````````0````$```!# +M%0,``````,@>`````````0````$```#E%0,``````-`>`````````0````$` +M``"G%0,``````-@>`````````0````$```##%0,``````.`>`````````0`` +M``$````!%@,``````.@>`````````0````$````?%P,``````/`>```````` +M`0````$```!/%P,``````/@>`````````0````$```!U%P,````````?```` +M`````0````$```"L%P,```````@?`````````0````$```".&`,``````!`? +M`````````0````$```#2%P,``````!@?`````````0````$```#<%P,````` +M`"`?`````````0````$```!O%0,``````"@?`````````0````$```"+%0,` +M`````#`?`````````0````$```"]%`,``````#@?`````````0````$```#J +M%`,``````$`?`````````0````$```"G%0,``````$@?`````````0````$` +M``#J%P,``````%`?`````````0````$```"^&`,``````%@?`````````0`` +M``$```#@&`,``````&`?`````````0````$```#\&`,``````&@?```````` +M`0````$````=&0,``````'`?`````````0````$````O&0,``````'@?```` +M`````0````$```!2&0,``````(`?`````````0````$```"&&0,``````(@? +M`````````0````$````,&`,``````)`?`````````0````$````N&`,````` +M`)@?`````````0````$```!0&`,``````*`?`````````0````$```!R&`,` +M`````+`?`````````0````$```"#3P,``````+@?`````````0````$```"P +M10,``````,`?`````````0````$````"1@,``````,@?`````````0````$` +M``"01@,``````-`?`````````0````$````<1P,``````-@?`````````0`` +M``$```!01P,``````.`?`````````0````$```";1P,``````.@?```````` +M`0````$````Q2`,``````/`?`````````0````$````[2`,``````/@?```` +M`````0````$```#N2P,````````@`````````0````$```#`2@,```````@@ +M`````````0````$```":10,``````!`@`````````0````$```"#3P,````` +M`!@@`````````0````$```"#3P,``````"`@`````````0````$```"#3P,` +M`````"@@`````````0````$```"#3P,``````#`@`````````0````$```"# +M3P,``````#@@`````````0````$```#J3@,``````$`@`````````0````$` +M``"#3P,``````$@@`````````0````$```"#3P,``````%`@`````````0`` +M``$```!%2`,``````%@@`````````0````$```!@2`,``````&`@```````` +M`0````$```"E1P,``````&@@`````````0````$````G2`,``````'`@```` +M`````0````$```#`2@,``````'@@`````````0````$```#>3`,``````(`@ +M`````````0````$```!&3P,``````(@@`````````0````$```!-3P,````` +M`)`@`````````0````$```!^3P,``````)@@`````````0````$```"#3P,` +M`````*`@`````````0````$````83@,``````*@@`````````0````$```!H +M3@,``````+`@`````````0````$```!R3@,``````+@@`````````0````$` +M``#H3`,``````,`@`````````0````$```#U3`,``````,@@`````````0`` +M``$```#_3`,``````-`@`````````0````$````)30,``````-@@```````` +M`0````$````B7@,``````.`@`````````0````$````J7@,``````.@@```` +M`````0````$````R7@,``````/`@`````````0````$````Z7@,``````/@@ +M`````````0````$```!"7@,````````A`````````0````$```!*7@,````` +M``@A`````````0````$```!27@,``````!`A`````````0````$````:7@,` +M`````!@A`````````0````$```"P>0,``````"`A`````````0````$````+ +M=P,``````"@A`````````0````$````<=P,``````#`A`````````0````$` +M```M=P,``````#@A`````````0````$````^=P,``````$`A`````````0`` +M``$```"*=P,``````$@A`````````0````$```"I=P,``````%`A```````` +M`0````$```"]=P,``````%@A`````````0````$````2>`,``````&`A```` +M`````0````$````N>`,``````&@A`````````0````$```!*>`,``````'`A +M`````````0````$```!F>`,``````'@A`````````0````$```".>`,````` +M`(`A`````````0````$```"B>`,``````(@A`````````0````$```"V>`,` +M`````)`A`````````0````$```"P>0,``````)@A`````````0````$```"P +M>0,``````*`A`````````0````$```#/>`,``````*@A`````````0````$` +M```[>0,``````+`A`````````0````$```"P>0,``````+@A`````````0`` +M``$```"P>0,``````,`A`````````0````$```#W>`,``````,@A```````` +M`0````$```"`>0,``````-`A`````````0````$```!==P,``````-@A```` +M`````0````$```!Q=P,``````.`A`````````0````$```"P>0,``````.@A +M`````````0````$```#1=P,``````/`A`````````0````$```#E=P,````` +M`/@A`````````0````$```#Y=P,````````B`````````0````$```"0JP,` +M``````@B`````````0````$```"0JP,``````!`B`````````0````$```#) +MJP,``````!@B`````````0````$```#<JP,``````"`B`````````0````$` +M``"0JP,``````"@B`````````0````$```#]JP,``````#`B`````````0`` +M``$```":JP,``````#@B`````````0````$```#OJP,``````$`B```````` +M`0````$```"FK`,``````$@B`````````0````$```"RK`,``````%`B```` +M`````0````$```!1M@,``````%@B`````````0````$```#&MP,``````&`B +M`````````0````$```#&MP,``````&@B`````````0````$```#&MP,````` +M`'`B`````````0````$```#&MP,``````'@B`````````0````$```#&MP,` +M`````(`B`````````0````$```#&MP,``````(@B`````````0````$```#& +MMP,``````)`B`````````0````$```#&MP,``````)@B`````````0````$` +M``#&MP,``````*`B`````````0````$```#&MP,``````*@B`````````0`` +M``$```#&MP,``````+`B`````````0````$```#&MP,``````+@B```````` +M`0````$```#&MP,``````,`B`````````0````$```#&MP,``````,@B```` +M`````0````$```#&MP,``````-`B`````````0````$```#&MP,``````-@B +M`````````0````$```#&MP,``````.`B`````````0````$```#&MP,````` +M`.@B`````````0````$```#&MP,``````/`B`````````0````$```#&MP,` +M`````/@B`````````0````$```#&MP,````````C`````````0````$```#& +MMP,```````@C`````````0````$```#&MP,``````!`C`````````0````$` +M``#&MP,``````!@C`````````0````$```#&MP,``````"`C`````````0`` +M``$```#&MP,``````"@C`````````0````$```#&MP,``````#`C```````` +M`0````$```#&MP,``````#@C`````````0````$```#&MP,``````$`C```` +M`````0````$```#&MP,``````$@C`````````0````$```#&MP,``````%`C +M`````````0````$```!EM@,``````%@C`````````0````$```#`M@,````` +M`&`C`````````0````$````;MP,``````&@C`````````0````$```!VMP,` +M`````'`C`````````0````$```#;N`,``````'@C`````````0````$```"G +MO0,``````(`C`````````0````$```"GO0,``````(@C`````````0````$` +M``"GO0,``````)`C`````````0````$```"GO0,``````)@C`````````0`` +M``$```"GO0,``````*`C`````````0````$```"GO0,``````*@C```````` +M`0````$```"GO0,``````+`C`````````0````$```"GO0,``````+@C```` +M`````0````$```"GO0,``````,`C`````````0````$```"GO0,``````,@C +M`````````0````$```"GO0,``````-`C`````````0````$```"GO0,````` +M`-@C`````````0````$```"GO0,``````.`C`````````0````$```"GO0,` +M`````.@C`````````0````$```"GO0,``````/`C`````````0````$```#M +MN`,``````/@C`````````0````$```#MN`,````````D`````````0````$` +M``#MN`,```````@D`````````0````$```"GO0,``````!`D`````````0`` +M``$```"GO0,``````!@D`````````0````$```"GO0,``````"`D```````` +M`0````$```"GO0,``````"@D`````````0````$```"GO0,``````#`D```` +M`````0````$```"GO0,``````#@D`````````0````$```"GO0,``````$`D +M`````````0````$```"GO0,``````$@D`````````0````$```"GO0,````` +M`%`D`````````0````$```"GO0,``````%@D`````````0````$```"GO0,` +M`````&`D`````````0````$```"GO0,``````&@D`````````0````$```"G +MO0,``````'`D`````````0````$```!3N0,``````'@D`````````0````$` +M``"KN0,``````(`D`````````0````$````#N@,``````(@D`````````0`` +M``$```!<N@,``````)`D`````````0````$```"GO0,``````)@D```````` +M`0````$```"GO0,``````*`D`````````0````$```"GO0,``````*@D```` +M`````0````$```"GO0,``````+`D`````````0````$```"GO0,``````+@D +M`````````0````$```"GO0,``````,`D`````````0````$```"GO0,````` +M`,@D`````````0````$```"GO0,``````-`D`````````0````$```"GO0,` +M`````-@D`````````0````$```"GO0,``````.`D`````````0````$```"G +MO0,``````.@D`````````0````$```"GO0,``````/`D`````````0````$` +M``"TN@,``````/@D`````````0````$````/NP,````````E`````````0`` +M``$```!KNP,```````@E`````````0````$```##NP,``````!`E```````` +M`0````$```"GO0,``````!@E`````````0````$```"GO0,``````"`E```` +M`````0````$```"GO0,``````"@E`````````0````$```"GO0,``````#`E +M`````````0````$```"GO0,``````#@E`````````0````$```"GO0,````` +M`$`E`````````0````$```"GO0,``````$@E`````````0````$```"GO0,` +M`````%`E`````````0````$```"GO0,``````%@E`````````0````$```"G +MO0,``````&`E`````````0````$```"GO0,``````&@E`````````0````$` +M``"GO0,``````'`E`````````0````$````;O`,``````'@E`````````0`` +M``$```"GO0,``````(`E`````````0````$```"GO0,``````(@E```````` +M`0````$```"GO0,``````)`E`````````0````$```"GO0,``````)@E```` +M`````0````$```"GO0,``````*`E`````````0````$```"GO0,``````*@E +M`````````0````$```"GO0,``````+`E`````````0````$```"GO0,````` +M`+@E`````````0````$```"GO0,``````,`E`````````0````$```"GO0,` +M`````,@E`````````0````$```"GO0,``````-`E`````````0````$```"G +MO0,``````-@E`````````0````$```"GO0,``````.`E`````````0````$` +M``"GO0,``````.@E`````````0````$```"GO0,``````/`E`````````0`` +M``$```!4O`,``````/@E`````````0````$```".O`,````````F```````` +M`0````$```#(O`,```````@F`````````0````$````"O0,``````!`F```` +M`````0````$````YO0,``````!@F`````````0````$```!PO0,``````%`F +M`````````0````$```#``P0``````%@F`````````0````$```!?!`0````` +M`&`F`````````0````$```#Z`P0``````&@F`````````0````$```#>`P0` +M`````'`F`````````0````$```!?!`0``````'@F`````````0````$```!? +M!`0``````(`F`````````0````$```!?!`0``````(@F`````````0````$` +M``!?!`0``````)`F`````````0````$```#``P0``````)@F`````````0`` +M``$````J!00``````*`F`````````0````$```#``P0``````*@F```````` +M`0````$```#``P0``````+`F`````````0````$```!V`P0``````+@F```` +M`````0````$````>!00``````,`F`````````0````$```#L!`0``````,@F +M`````````0````$```"X!`0``````-`F`````````0````$````#)P0````` +M`-@F`````````0````$````3)P0``````.`F`````````0````$````;)P0` +M`````.@F`````````0````$````C)P0``````/`F`````````0````$````K +M)P0``````/@F`````````0````$````S)P0````````G`````````0````$` +M```[)P0```````@G`````````0````$````+)P0``````!`G`````````0`` +M``$```"[*P0``````!@G`````````0````$```"3+00``````"`G```````` +M`0````$```#T+`0``````"@G`````````0````$```!J+00``````#`G```` +M`````0````$```!!+00``````#@G`````````0````$```!J+00``````$`G +M`````````0````$```"[*P0``````$@G`````````0````$```"^*P0````` +M`%`G`````````0````$```!CBP0``````%@G`````````0````$```#UBP0` +M`````&`G`````````0````$```#2C`0``````&@G`````````0````$```#^ +MC`0``````'`G`````````0````$```"RC00``````'@G`````````0````$` +M``"5C@0``````(`G`````````0````$```"NC@0``````(@G`````````0`` +M``$```"ZC@0``````)`G`````````0````$```"SBP0``````)@G```````` +M`0````$````XCP0``````*`G`````````0````$```#UCP0``````*@G```` +M`````0````$```!CBP0``````+`G`````````0````$````&D00``````+@G +M`````````0````$````.D`0``````,`G`````````0````$```"PD`0````` +M`,@G`````````0````$```#6GP0``````-`G`````````0````$```!'HP0` +M`````-@G`````````0````$````0HP0``````.`G`````````0````$```#[ +MH@0``````.@G`````````0````$```#FH@0``````/`G`````````0````$` +M``#'H@0``````/@G`````````0````$```#6GP0````````H`````````0`` +M``$```"RH@0```````@H`````````0````$````WH`0``````!`H```````` +M`0````$```"EX00``````!@H`````````0````$```"3X00``````"`H```` +M`````0````$```!WX00``````"@H`````````0````$```!6X00``````#`H +M`````````0````$````4X00``````#@H`````````0````$```#7X`0````` +M`$`H`````````0````$````X!P4``````$@H`````````0````$```!Q!@4` +M`````%`H`````````0````$````X!P4``````%@H`````````0````$```!6 +M!@4``````&`H`````````0````$```!6!@4``````&@H`````````0````$` +M``!6!@4``````(```````````0````8```"K`0```````)@``````````0`` +M``$```#@F`$``````*```````````0````$````0M0$``````*@````````` +M`0````$````PF0$``````+```````````0````$```"0S@$``````+@````` +M`````0````$```#0Z@$``````,```````````0````$```#PM`$``````,@` +M`````````0````$```#0F`$``````-```````````0````$```"`F@$````` +M`-@``````````0````$````0M`$``````.```````````0````$```!`F0$` +M`````.@``````````0````$```!0[0$``````/```````````0````$```#P +MF@$``````/@``````````0````$````0TP$````````!`````````0```"4! +M``````````````@!`````````0````$`````L0$``````!`!`````````0`` +M``$```!0F0$``````!@!`````````0````$```#PXP$``````"`!```````` +M`0````$```#PJP$``````"@!`````````0````$```!@I0$``````#`!```` +M`````0````$```"PHP$``````#@!`````````0````$```"0FP$``````$`! +M`````````0````$```!PO`$``````$@!`````````0````$```"PFP$````` +M`%`!`````````0````$```!`I0$``````%@!`````````0````$````@I0$` +M`````&`!`````````0````$`````I`$``````&@!`````````0````$```!P +MG0$``````'`!`````````0````$```"0G`$``````'@!`````````0```$8` +M`````````````(@!`````````0````$`````FP$``````)`!`````````0`` +M``$```"0X0$``````)@!`````````0````$```"0W0$``````*`!```````` +M`0````$```!PV0$``````*@!`````````0````$```!@U0$``````+`!```` +M`````0```-@``````````````"`"`````````0````8```!;`P```````#@" +M`````````0````$```"@AP,``````$`"`````````0````$````0I`,````` +M`$@"`````````0````$```#PAP,``````%`"`````````0````$```#@O0,` +M`````%@"`````````0````$````@V@,``````&`"`````````0````$```#P +MHP,``````&@"`````````0````$```"0AP,``````'`"`````````0````$` +M``!`B0,``````'@"`````````0````$````0HP,``````(`"`````````0`` +M``$`````B`,``````(@"`````````0````$```"PW`,``````)`"```````` +M`0````$```"PB0,``````)@"`````````0````$```!@P@,``````*`"```` +M`````0```#L!`````````````*@"`````````0````$`````H`,``````+`" +M`````````0````$````0B`,``````+@"`````````0````$```!`TP,````` +M`,`"`````````0````$```#PF@,``````,@"`````````0````$```!@E`,` +M`````-`"`````````0````$```#0DP,``````-@"`````````0````$```!` +MBP,``````.`"`````````0````$```!@JP,``````.@"`````````0````$` +M``!@BP,``````/`"`````````0````$```!`E`,``````/@"`````````0`` +M``$````@E`,````````#`````````0````$```!@DP,```````@#```````` +M`0````$````@C0,``````!`#`````````0````$```!`C`,``````!@#```` +M`````0````8"`````````````"@#`````````0````$```#`B0,``````#`# +M`````````0````$```#@T`,``````#@#`````````0````$```#@S`,````` +M`$`#`````````0````$```#`R`,``````$@#`````````0````$```"PQ`,` +M`````%`#`````````0```$$!`````````````,`#`````````0````$````` +M`P0``````,@#`````````0````$````0(`0``````-`#`````````0````$` +M```0`@0``````.@#`````````0````$```#P]@,``````/`#`````````0`` +M``$```"@`00``````/@#`````````0````$```#`]P,``````"@$```````` +M`0````$`````,P0``````#@$`````````0````$````P;P0``````%`$```` +M`````0````$```!@,P0``````&`$`````````0````$```#`;00``````'@$ +M`````````0````$```"`,P0``````(@$`````````0````$````@@P0````` +M`*`$`````````0````$```#@,P0``````+`$`````````0````$```!@?`0` +M`````,@$`````````0````$`````-`0``````-@$`````````0````$```#` +M;`0``````/`$`````````0````$```#@-`0````````%`````````0````$` +M``"`9@0``````!@%`````````0````$```!`-00``````"@%`````````0`` +M``$````@W00``````$`%`````````0````$```!`.`0``````$@%```````` +M`0````$```!P=00``````%`%`````````0````$```!P5@0``````&@%```` +M`````0````$```"PS`0``````'`%`````````0````$````0=`0``````'@% +M`````````0````$````P500``````)`%`````````0````$```!P/`0````` +M`*`%`````````0````$```"`8@0``````+@%`````````0````$```"0/`0` +M`````,@%`````````0````$```!0R00``````.`%`````````0````$```"0 +M/P0``````.@%`````````0````$```#P<P0``````/`%`````````0````$` +M``#P5`0```````@&`````````0````$`````0`0``````!`&`````````0`` +M``$```#0<P0``````!@&`````````0````$```"P5`0``````#`&```````` +M`0````$```!P0`0``````#@&`````````0````$```"`<P0``````$`&```` +M`````0````$```!P5`0``````%@&`````````0````$````P000``````&`& +M`````````0````$```#P<@0``````&@&`````````0````$````P5`0````` +M`(`&`````````0````$```"@000``````(@&`````````0````$```#0<@0` +M`````)`&`````````0````$```#P4P0``````*@&`````````0````$```"` +M0@0``````+@&`````````0````$```!P4P0``````-`&`````````0````$` +M``#P0@0``````.`&`````````0````$````P4P0``````/@&`````````0`` +M``$````00P0```````@'`````````0````$```!@TP0``````"`'```````` +M`0````$````P0P0``````#`'`````````0````$```#`UP0``````$@'```` +M`````0````$```!00P0``````%@'`````````0````$```#P>@0``````'`' +M`````````0````$````01`0``````(`'`````````0````$```#0>@0````` +M`)@'`````````0````$`````/00``````*@'`````````0````$```#0R`0` +M`````,`'`````````0````$```!P/00``````-`'`````````0````$```"` +MR`0``````.@'`````````0````$```#01`0``````/@'`````````0````$` +M``#P4@0``````!`(`````````0````$````P100``````"`(`````````0`` +M``$```!0S@0``````#@(`````````0````$```#@100``````$`(```````` +M`0````$```!0<@0``````$@(`````````0````$```"P4@0``````&`(```` +M`````0````$```!0.00``````&@(`````````0````$````P=00``````'`( +M`````````0````$````P5@0``````(@(`````````0````$```"`-00````` +M`)@(`````````0````$```!`VP0``````+`(`````````0````$````00@0` +M`````,`(`````````0````$```"P4P0``````-@(`````````0````$```#@ +M/00``````.@(`````````0````$`````R`0````````)`````````0````$` +M``!`/@0``````!`)`````````0````$```"`QP0``````"@)`````````0`` +M``$```"@/@0``````#@)`````````0````$````PQP0``````%`)```````` +M`0````$```#`.@0``````%@)`````````0````$```"P=`0``````&`)```` +M`````0````$```"P500``````'@)`````````0````$`````/P0``````(@) +M`````````0````$````0N@0``````*`)`````````0````$```"01@0````` +M`*@)`````````0````$````@<@0``````+`)`````````0````$```!P4@0` +M`````,@)`````````0````$```!P-@0``````-@)`````````0````$````P +M900``````/`)`````````0````$```!P-P0``````/@)`````````0````$` +M``"P=00````````*`````````0````$```"P5@0``````!@*`````````0`` +M``$```#`-00``````"@*`````````0````$```!0V`0``````$`*```````` +M`0````$```"@,P0``````%`*`````````0````$```"0@00``````&@*```` +M`````0````$```#`,P0``````'@*`````````0````$````0;00``````)`* +M`````````0````$`````-@0``````*`*`````````0````$```"0LP0````` +M`+@*`````````0````$`````.@0``````,`*`````````0````$```#P=`0` +M`````,@*`````````0````$```#P500``````.`*`````````0````$```"0 +M.P0``````.@*`````````0````$```!P=`0``````/`*`````````0````$` +M``!P500```````@+`````````0````$```#@-@0``````!@+`````````0`` +M``$```!P9`0``````#`+`````````0````$```"`1P0``````$`+```````` +M`0````$````0>P0``````%@+`````````0````$````0-00``````&@+```` +M`````0````$```#@900``````(`+`````````0````$````@-`0``````)`+ +M`````````0````$````@;`0``````*@+`````````0````$```!`-`0````` +M`+@+`````````0````$````P:P0``````-`+`````````0````$```!@-`0` +M`````.`+`````````0````$```!`:@0``````/@+`````````0````$```"` +M-`0```````@,`````````0````$```!0:00``````"`,`````````0````$` +M``"@-`0``````#`,`````````0````$```!0:`0``````$@,`````````0`` +M``$```#`-`0``````%@,`````````0````$```!P9P0``````'`,```````` +M`0````$````@,P0``````(`,`````````0````$```#0?`0``````)@,```` +M`````0````$```!`,P0``````*`,`````````0````$```#P=00``````*@, +M`````````0````$````0;@0``````,`,`````````0````$```#P1@0````` +M`-`,`````````0````$```"P800``````.@,`````````0````$````@1P0` +M`````/@,`````````0````$```!@7P0``````!`-`````````0````$````0 +M.00``````"`-`````````0````$````P8P0``````#@-`````````0````$` +M``#P.`0``````$@-`````````0````$```#P8P0``````&`-`````````0`` +M``$```!P2`0``````&@-`````````0````$`````<@0``````'`-```````` +M`0````$````P4@0``````(@-`````````0````$````P200``````)`-```` +M`````0````$```#@<00``````)@-`````````0````$```#P400``````"`` +M`````````0````$``````````````#@``````````0````$````P```````` +M`%```````````0````$```!``````````*@``````````0````$```"P`@`` +M`````,```````````0````$```#P`@```````-@``````````0````$````P +M`P```````/```````````0````$```"``P````````@!`````````0````$` +M``#0`P```````#@!`````````0````$```#@`P```````%`!`````````0`` +M``$````0!````````&@!`````````0````$```!@!````````(`!```````` +M`0````$```!P!````````)@!`````````0````$```#0!````````+`!```` +M`````0````$```#@!````````,@!`````````0````$````0!0```````.`! +M`````````0````$```!`!0```````/@!`````````0````$```"`!0`````` +M`!`"`````````0````$```#`!0```````"@"`````````0````$```"@!P`` +M`````$`"`````````0````$```#@!P```````&`"`````````0````$```!P +M"````````(`"`````````0````$```"P"````````)@"`````````0````$` +M``#@"````````+`"`````````0````$````0"0```````.`"`````````0`` +M``$````P"0```````/@"`````````0````$```"@"0```````!`#```````` +M`0````$`````"@```````"@#`````````0````$```!@"@```````$`#```` +M`````0````$```#@"@```````&@#`````````0````$````P#````````(@# +M`````````0````$```!P#````````,@#`````````0````$```#@#@`````` +M``@$`````````0````$````P$````````"`$`````````0````$```"`$``` +M`````#@$`````````0````$````0$0```````%`$`````````0````$```"0 +M$0```````&@$`````````0````$````0$@```````(`$`````````0````$` +M```P$@```````*`$`````````0````$```"`$@```````,`$`````````0`` +M``$```"P$@```````.`$`````````0````$````0$P```````"`%```````` +M`0````$````P%0```````$`%`````````0````$````@%@```````&@%```` +M`````0````$```!`%P```````)`%`````````0````$```!@&````````+@% +M`````````0````$```!P'@```````-@%`````````0````$```"0'@`````` +M`!@&`````````0````$```#P*0```````$@&`````````0````$`````+``` +M`````'`&`````````0````$```!@+P```````+`&`````````0````$```!0 +M,P```````-@&`````````0````$````@/0```````!@'`````````0````$` +M``"P1@```````$`'`````````0````$```"@1P```````(`'`````````0`` +M``$```!@40```````,`'`````````0````$```!`6P```````.@'```````` +M`0````$`````7````````"`(`````````0````$```#`7````````%@(```` +M`````0````$````@8````````'@(`````````0````$```#P8````````+@( +M`````````0````$```"09````````.`(`````````0````$```!@:``````` +M`"`)`````````0````$```!@;````````&`)`````````0````$```#@<@`` +M`````(`)`````````0````$```!P<P```````*`)`````````0````$```"` +M<P```````,`)`````````0````$```"0=P```````.@)`````````0````$` +M``"@>````````"@*`````````0````$```#P>0```````&@*`````````0`` +M``$```"`A0```````)@*`````````0````$`````B````````/`*```````` +M`0````$````@C0````````@+`````````0````$```"0C0```````"`+```` +M`````0````$```#@C0```````#@+`````````0````$```!`C@```````%`+ +M`````````0````$```"@C@```````&@+`````````0````$```"`CP`````` +M`*`+`````````0````$```#`D````````,`+`````````0````$````0D0`` +M```````,`````````0````$```"@D0```````"@,`````````0````$````0 +MDP```````%`,`````````0````$```!PE````````'@,`````````0````$` +M``#`E0```````)@,`````````0````$```!`E@```````,`,`````````0`` +M``$```!0EP`````````-`````````0````$```#PF````````$`-```````` +M`0````$```!`F@```````&@-`````````0````$```!0FP```````)`-```` +M`````0````$```#@G````````+@-`````````0````$```#@G0```````/@- +M`````````0````$```"`G@```````#@.`````````0````$```"PGP`````` +M`)`.`````````0````$````@I````````*@.`````````0````$```"`I``` +M`````-@.`````````0````$```#0I````````/`.`````````0````$```#P +MI0```````!@/`````````0````$````0IP```````#`/`````````0````$` +M``"@IP```````$@/`````````0````$```#0IP```````&`/`````````0`` +M``$```#@IP```````'@/`````````0````$````PJ````````)`/```````` +M`0````$```!@J````````*@/`````````0````$```"@J````````,`/```` +M`````0````$```#0J````````-@/`````````0````$````0J0```````/`/ +M`````````0````$```!`J0````````@0`````````0````$```!PJ0`````` +M`"`0`````````0````$```"0J0```````#@0`````````0````$```#`J0`` +M`````%`0`````````0````$```#PJ0```````&@0`````````0````$```!@ +MJ@```````(`0`````````0````$```!@JP```````)@0`````````0````$` +M``!`K````````+`0`````````0````$```"0K````````.`0`````````0`` +M``$```"0K0`````````1`````````0````$```#`K0```````"`1```````` +M`0````$```#PK0```````$`1`````````0````$```!`K@```````&`1```` +M`````0````$```!PK@```````(`1`````````0````$```"@K@```````,`1 +M`````````0````$````PL````````.`1`````````0````$```!@L``````` +M`/@1`````````0````$```"0L````````!`2`````````0````$```#`L``` +M`````#@2`````````0````$```"PL0```````%@2`````````0````$```#P +ML0```````'@2`````````0````$````PL@```````*`2`````````0````$` +M``"`M0```````,@2`````````0````$```#@M@```````.@2`````````0`` +M``$```!`MP```````!`3`````````0````$```#PMP```````#@3```````` +M`0````$```"`N````````&`3`````````0````$```!PN0```````(@3```` +M`````0````$````@N@```````+`3`````````0````$```"@NP```````-@3 +M`````````0````$````0O0`````````4`````````0````$```#`O0`````` +M`"@4`````````0````$```#0O@```````%`4`````````0````$`````P``` +M`````'@4`````````0````$````@P0```````*`4`````````0````$````P +MP@```````,@4`````````0````$```"0PP````````@5`````````0````$` +M``!`QP```````#`5`````````0````$```!`R````````%@5`````````0`` +M``$````PR0```````(`5`````````0````$`````R@```````*@5```````` +M`0````$```#`R@```````-`5`````````0````$```#0RP```````/@5```` +M`````0````$```!0S0```````!@6`````````0````$```!PS0```````$`6 +M`````````0````$```"@S@```````&@6`````````0````$````0SP`````` +M`(@6`````````0````$```!0SP```````*@6`````````0````$```!PSP`` +M`````,@6`````````0````$```"@SP```````/`6`````````0````$```"@ +MT````````!@7`````````0````$```"0T@```````$`7`````````0````$` +M```@TP```````&@7`````````0````$```"PU````````*@7`````````0`` +M``$````@V````````-@7`````````0````$````0V@```````!@8```````` +M`0````$```"@W````````$`8`````````0````$```#0W0```````&@8```` +M`````0````$````0WP```````)`8`````````0````$```!@WP```````,@8 +M`````````0````$```"0WP```````.`8`````````0````$```"PWP`````` +M`/@8`````````0````$```#0WP```````!`9`````````0````$`````X``` +M`````"@9`````````0````$```!0X````````$`9`````````0````$```"P +MX````````%@9`````````0````$```!`X@```````(@9`````````0````$` +M```0XP```````+@9`````````0````$```"`XP```````-@9`````````0`` +M``$```"PXP```````/@9`````````0````$```!`Y````````"@:```````` +M`0````$```"0Y0```````$@:`````````0````$```"PY@```````&@:```` +M`````0````$````PYP```````(@:`````````0````$```"PYP```````,@: +M`````````0````$```#0\````````/`:`````````0````$```!@\@`````` +M``@;`````````0````$`````\P```````"`;`````````0````$`````]``` +M`````&@;`````````0````$```#`]0```````(`;`````````0````$```!` +M]@```````)@;`````````0````$```"P]@```````+`;`````````0````$` +M```@]P```````,@;`````````0````$```"0]P```````.`;`````````0`` +M``$```"@]P```````/@;`````````0````$```#@]P```````!`<```````` +M`0````$```!`^````````"@<`````````0````$```!@^````````$`<```` +M`````0````$```"0^````````&`<`````````0````$````P^0```````(@< +M`````````0````$```!`^@```````,@<`````````0````$````@_``````` +M`/@<`````````0````$```"`_````````"`=`````````0````$```!P_0`` +M`````$@=`````````0````$```!`_@```````&@=`````````0````$```!@ +M_P```````)`=`````````0````$````0``$``````+@=`````````0````$` +M``!``0$``````.`=`````````0````$````0`@$```````@>`````````0`` +M``$````0`P$``````$@>`````````0````$`````!`$``````(@>```````` +M`0````$```#P!`$``````,@>`````````0````$```"0!P$````````?```` +M`````0````$```!P"@$``````"@?`````````0````$````@"P$``````&@? +M`````````0````$```!@#@$``````*@?`````````0````$```#`%0$````` +M`.@?`````````0````$```#`%@$``````"`@`````````0````$```"P&@$` +M`````&`@`````````0````$```#@(@$``````(@@`````````0````$```"0 +M(P$``````+`@`````````0````$`````*@$``````-@@`````````0````$` +M``!0+`$``````/@@`````````0````$```!P+`$``````"`A`````````0`` +M``$````@-@$``````$@A`````````0````$````@.@$``````'`A```````` +M`0````$```!0/0$``````+`A`````````0````$````00`$``````/`A```` +M`````0````$`````0P$``````#`B`````````0````$```#`10$``````'`B +M`````````0````$```"P20$``````+`B`````````0````$```"@30$````` +M`/`B`````````0````$```#`3@$``````"`C`````````0````$```#04`$` +M`````$@C`````````0````$````04P$``````(@C`````````0````$```#` +M4P$``````+`C`````````0````$```!08`$``````/`C`````````0````$` +M``"`:0$```````@D`````````0````$```"P:0$``````"`D`````````0`` +M``$```#@:0$``````$@D`````````0````$```!@:@$``````&@D```````` +M`0````$```"P:@$``````(@D`````````0````$```#0:@$``````*`D```` +M`````0````$````@:P$``````,@D`````````0````$```#`:P$``````/`D +M`````````0````$```!0;0$``````!`E`````````0````$```"0;0$````` +M`#`E`````````0````$```#0;0$``````%`E`````````0````$````0;@$` +M`````'@E`````````0````$```"@;@$``````*`E`````````0````$```#P +M;@$``````,@E`````````0````$```!P;P$``````/`E`````````0````$` +M``!`<`$``````#`F`````````0````$```!0<@$``````%`F`````````0`` +M``$```"P<@$``````'`F`````````0````$````0<P$``````*@F```````` +M`0````$```#`<P$``````,@F`````````0````$````@=`$``````.@F```` +M`````0````$```!@=`$```````@G`````````0````$```"@=`$``````$@G +M`````````0````$```"@>0$``````&@G`````````0````$`````>@$````` +M`(@G`````````0````$```!0>@$``````,`G`````````0````$```"P>@$` +M`````-@G`````````0````$```#0>@$``````/`G`````````0````$```#P +M>@$``````!`H`````````0````$```!`?0$``````"@H`````````0````$` +M``!@?0$``````$`H`````````0````$```"`?0$``````&@H`````````0`` +M``$```!P?@$``````*@H`````````0````$```"@?P$``````-`H```````` +M`0````$```"0@`$```````@I`````````0````$```#`@0$``````$@I```` +M`````0````$```!P@@$``````&`I`````````0````$```"P@P$``````'@I +M`````````0````$```#`@P$``````)`I`````````0````$```#0@P$````` +M`*@I`````````0````$```#P@P$``````,`I`````````0````$````0A`$` +M`````-@I`````````0````$```!`A`$``````/`I`````````0````$```!P +MA`$``````!@J`````````0````$```"PA0$``````#`J`````````0````$` +M``#PA0$``````%@J`````````0````$```"0A@$``````'`J`````````0`` +M``$```#PA@$``````(@J`````````0````$````0AP$``````*@J```````` +M`0````$````0BP$``````,@J`````````0````$```!PC`$````````K```` +M`````0````$````@C@$``````!@K`````````0````$```!PC@$``````#`K +M`````````0````$```"0C@$``````%@K`````````0````$`````CP$````` +M`(`K`````````0````$````0D@$``````*@K`````````0````$```#`D@$` +M`````-`K`````````0````$```!`DP$``````!`L`````````0````$````0 +ME`$``````#`L`````````0````$```"0E`$``````%`L`````````0````$` +M``!0E0$``````)`L`````````0````$```#0F`$``````*@L`````````0`` +M``$```#@F`$``````,`L`````````0````$````PF0$``````-@L```````` +M`0````$```!`F0$``````/`L`````````0````$```!0F0$```````@M```` +M`````0````$```!@F0$``````"`M`````````0````$```#@F0$``````#@M +M`````````0````$```"`F@$``````%`M`````````0````$```"0F@$````` +M`&@M`````````0````$```"@F@$``````(`M`````````0````$```#PF@$` +M`````)@M`````````0````$`````FP$``````+`M`````````0````$````0 +MFP$``````,@M`````````0````$```!0FP$``````.@M`````````0````$` +M``"0FP$````````N`````````0````$```"PFP$``````!@N`````````0`` +M``$````0G`$``````#`N`````````0````$```!PG`$``````%`N```````` +M`0````$```"0G`$``````'@N`````````0````$```!PG0$``````+@N```` +M`````0````$```"PHP$``````-@N`````````0````$`````I`$````````O +M`````````0````$````@I0$``````"`O`````````0````$```!`I0$````` +M`$`O`````````0````$```!@I0$``````&`O`````````0````$```"`I0$` +M`````(@O`````````0````$````0IP$``````+`O`````````0````$```#P +MJP$``````-@O`````````0````$````PL`$````````P`````````0````$` +M````L0$``````"@P`````````0````$```"@L@$``````$@P`````````0`` +M``$```"`LP$``````'`P`````````0````$````0M`$``````)@P```````` +M`0````$```#PM`$``````+@P`````````0````$````0M0$``````/@P```` +M`````0````$````0N`$``````"`Q`````````0````$```#`N`$``````$@Q +M`````````0````$```!PO`$``````'`Q`````````0````$```#PO0$````` +M`)@Q`````````0````$```#0O@$``````-@Q`````````0````$```#`Q`$` +M`````/@Q`````````0````$```!@Q0$``````"@R`````````0````$```"0 +MS@$``````&@R`````````0````$````0TP$``````)`R`````````0````$` +M``!@U0$``````,@R`````````0````$```!PV0$``````/@R`````````0`` +M``$```"0W0$``````"`S`````````0````$```"0X0$``````$@S```````` +M`0````$```#PXP$``````'`S`````````0````$```#0Z@$``````)@S```` +M`````0````$```!0[0$``````/`S`````````0````$```"0\`$```````@T +M`````````0````$```#`\`$``````"`T`````````0````$```#0\`$````` +M`'@T`````````0````$```!`\P$``````)`T`````````0````$```"`\P$` +M`````*@T`````````0````$```#`\P$``````,`T`````````0````$````0 +M]`$``````-@T`````````0````$```!@]`$```````@U`````````0````$` +M``!P]`$``````"`U`````````0````$```"@]`$``````#@U`````````0`` +M``$```#P]`$``````%`U`````````0````$`````]0$``````&@U```````` +M`0````$```!@]0$``````(`U`````````0````$```!P]0$``````)@U```` +M`````0````$```"@]0$``````+`U`````````0````$```#0]0$``````,@U +M`````````0````$````0]@$``````.`U`````````0````$```!0]@$````` +M`/@U`````````0````$````P^`$``````!`V`````````0````$```!P^`$` +M`````#`V`````````0````$`````^0$``````%`V`````````0````$```!` +M^0$``````&@V`````````0````$```!P^0$``````(`V`````````0````$` +M``"@^0$``````+`V`````````0````$```#`^0$``````,@V`````````0`` +M``$````P^@$``````.`V`````````0````$```"0^@$``````/@V```````` +M`0````$```#P^@$``````!`W`````````0````$```!P^P$``````#@W```` +M`````0````$```#`_`$``````%@W`````````0````$`````_0$``````)@W +M`````````0````$```!P_P$``````-@W`````````0````$```#```(````` +M`/`W`````````0````$````0`0(```````@X`````````0````$```"@`0(` +M`````"`X`````````0````$````@`@(``````#@X`````````0````$```"@ +M`@(``````%`X`````````0````$```#``@(``````'`X`````````0````$` +M```0`P(``````)`X`````````0````$```!``P(``````+`X`````````0`` +M``$```"@`P(``````/`X`````````0````$```"P!0(``````!`Y```````` +M`0````$```"@!@(``````#@Y`````````0````$```#`!P(``````&`Y```` +M`````0````$```#@"`(``````(@Y`````````0````$```#P#@(``````*@Y +M`````````0````$````0#P(``````.@Y`````````0````$```!P&@(````` +M`!@Z`````````0````$```"`'`(``````$`Z`````````0````$```#@'P(` +M`````(`Z`````````0````$```#0(P(``````*@Z`````````0````$```"@ +M+0(``````.@Z`````````0````$````P-P(``````!`[`````````0````$` +M```@.`(``````%`[`````````0````$```#@00(``````)`[`````````0`` +M``$```"@2P(``````+@[`````````0````$```!@3`(``````/`[```````` +M`0````$````@30(``````"@\`````````0````$```"`4`(``````$@\```` +M`````0````$```!040(``````(@\`````````0````$```#P5`(``````+`\ +M`````````0````$```#`6`(``````/`\`````````0````$```#`7`(````` +M`#`]`````````0````$`````8P(``````%`]`````````0````$```"08P(` +M`````'`]`````````0````$```"@8P(``````)`]`````````0````$```"P +M9P(``````+@]`````````0````$```#`:`(``````/@]`````````0````$` +M```0:@(``````#@^`````````0````$```"@=0(``````&@^`````````0`` +M``$````@>`(``````,`^`````````0````$```#P?`(``````-@^```````` +M`0````$```!@?0(``````/`^`````````0````$```"P?0(```````@_```` +M`````0````$````0?@(``````"`_`````````0````$```!P?@(``````#@_ +M`````````0````$```!0?P(``````'`_`````````0````$```"0@`(````` +M`)`_`````````0````$```#@@`(``````-`_`````````0````$```!P@0(` +M`````/@_`````````0````$```#@@@(``````"!``````````0````$```!` +MA`(``````$A``````````0````$```"0A0(``````&A``````````0````$` +M```0A@(``````)!``````````0````$````@AP(``````-!``````````0`` +M``$```#`B`(``````!!!`````````0````$````0B@(``````#A!```````` +M`0````$````@BP(``````&!!`````````0````$```"PC`(``````(A!```` +M`````0````$```"PC0(``````,A!`````````0````$```!0C@(```````A" +M`````````0````$```"`CP(``````&!"`````````0````$```#PDP(````` +M`'A"`````````0````$```!0E`(``````*A"`````````0````$```"@E`(` +M`````,!"`````````0````$```#`E0(``````.A"`````````0````$```#@ +ME@(```````!#`````````0````$```!PEP(``````!A#`````````0````$` +M``"@EP(``````#!#`````````0````$```"PEP(``````$A#`````````0`` +M``$`````F`(``````&!#`````````0````$````PF`(``````'A#```````` +M`0````$```!PF`(``````)!#`````````0````$```"@F`(``````*A#```` +M`````0````$```#@F`(``````,!#`````````0````$````0F0(``````-A# +M`````````0````$```!`F0(``````/!#`````````0````$```!@F0(````` +M``A$`````````0````$```"0F0(``````"!$`````````0````$```#`F0(` +M`````#A$`````````0````$````PF@(``````%!$`````````0````$````P +MFP(``````&A$`````````0````$````0G`(``````(!$`````````0````$` +M``!@G`(``````+!$`````````0````$```!@G0(``````-!$`````````0`` +M``$```"0G0(``````/!$`````````0````$```#`G0(``````!!%```````` +M`0````$````0G@(``````#!%`````````0````$```!`G@(``````%!%```` +M`````0````$```!PG@(``````)!%`````````0````$`````H`(``````+!% +M`````````0````$````PH`(``````,A%`````````0````$```!@H`(````` +M`.!%`````````0````$```"0H`(```````A&`````````0````$```"`H0(` +M`````"A&`````````0````$```#`H0(``````$A&`````````0````$````` +MH@(``````'!&`````````0````$```!0I0(``````)A&`````````0````$` +M``"PI@(``````+A&`````````0````$````0IP(``````.!&`````````0`` +M``$```#`IP(```````A'`````````0````$```!0J`(``````#!'```````` +M`0````$```!`J0(``````%A'`````````0````$```#PJ0(``````(!'```` +M`````0````$```!PJP(``````*A'`````````0````$```#@K`(``````-!' +M`````````0````$```"0K0(``````/A'`````````0````$```"@K@(````` +M`"!(`````````0````$```#0KP(``````$A(`````````0````$```#PL`(` +M`````'!(`````````0````$`````L@(``````)A(`````````0````$```!@ +MLP(``````-A(`````````0````$````0MP(```````!)`````````0````$` +M```0N`(``````"A)`````````0````$`````N0(``````%!)`````````0`` +M``$```#0N0(``````'A)`````````0````$```"0N@(``````*!)```````` +M`0````$```"@NP(``````,A)`````````0````$````@O0(``````.A)```` +M`````0````$```!`O0(``````!!*`````````0````$```!PO@(``````#A* +M`````````0````$```#@O@(``````%A*`````````0````$````@OP(````` +M`'A*`````````0````$```!`OP(``````)A*`````````0````$```!POP(` +M`````,!*`````````0````$```!PP`(``````.A*`````````0````$```!@ +MP@(``````!!+`````````0````$```#PP@(``````#A+`````````0````$` +M``"`Q`(``````'A+`````````0````$```#PQP(``````*A+`````````0`` +M``$```#@R0(``````.A+`````````0````$```!PS`(``````!!,```````` +M`0````$```"@S0(``````#A,`````````0````$```#@S@(``````&!,```` +M`````0````$````PSP(``````)A,`````````0````$```!@SP(``````+!, +M`````````0````$```"`SP(``````,A,`````````0````$```"@SP(````` +M`.!,`````````0````$```#0SP(``````/A,`````````0````$````@T`(` +M`````!!-`````````0````$```"`T`(``````"A-`````````0````$````0 +MT@(``````%A-`````````0````$```#@T@(``````(A-`````````0````$` +M``!0TP(``````*A-`````````0````$```"`TP(``````,A-`````````0`` +M``$````0U`(``````/A-`````````0````$```!@U0(``````!A.```````` +M`0````$```"`U@(``````#A.`````````0````$`````UP(``````%A.```` +M`````0````$```"`UP(``````)A.`````````0````$```"@X`(``````,!. +M`````````0````$````PX@(``````-A.`````````0````$```#0X@(````` +M`/!.`````````0````$```#0XP(``````#A/`````````0````$```"0Y0(` +M`````%!/`````````0````$````0Y@(``````&A/`````````0````$```"` +MY@(``````(!/`````````0````$```#PY@(``````)A/`````````0````$` +M``!@YP(``````+!/`````````0````$```!PYP(``````,A/`````````0`` +M``$```"PYP(``````.!/`````````0````$````0Z`(``````/A/```````` +M`0````$````PZ`(``````!!0`````````0````$```!@Z`(``````#!0```` +M`````0````$`````Z0(``````%A0`````````0````$````0Z@(``````)A0 +M`````````0````$```#PZP(``````,A0`````````0````$```!0[`(````` +M`/!0`````````0````$```!`[0(``````!A1`````````0````$````0[@(` +M`````#A1`````````0````$````P[P(``````&!1`````````0````$```#@ +M[P(``````(A1`````````0````$````0\0(``````+!1`````````0````$` +M``#@\0(``````-A1`````````0````$```#@\@(``````!A2`````````0`` +M``$```#0\P(``````%A2`````````0````$```#`]`(``````)A2```````` +M`0````$```!@]P(``````-!2`````````0````$```!`^@(``````/A2```` +M`````0````$```#P^@(``````#A3`````````0````$````P_@(``````'A3 +M`````````0````$```"0!0,``````+A3`````````0````$```"0!@,````` +M`/!3`````````0````$```"`"@,``````#!4`````````0````$```"P$@,` +M`````%A4`````````0````$```!@$P,``````(!4`````````0````$```#0 +M&0,``````*A4`````````0````$````@'`,``````,A4`````````0````$` +M``!`'`,``````/!4`````````0````$```#P)0,``````!A5`````````0`` +M``$```#P*0,``````$!5`````````0````$````@+0,``````(!5```````` +M`0````$```#@+P,``````,!5`````````0````$```#0,@,```````!6```` +M`````0````$```"0-0,``````$!6`````````0````$```"`.0,``````(!6 +M`````````0````$```!P/0,``````,!6`````````0````$```"0/@,````` +M`/!6`````````0````$```"@0`,``````!A7`````````0````$```#@0@,` +M`````%A7`````````0````$```"00P,``````(!7`````````0````$````0 +M4`,``````,!7`````````0````$```!`60,``````-A7`````````0````$` +M``!P60,``````/!7`````````0````$```"@60,``````!A8`````````0`` +M``$````@6@,``````#A8`````````0````$```!P6@,``````%A8```````` +M`0````$```"06@,``````'!8`````````0````$```#@6@,``````)A8```` +M`````0````$```"`6P,``````,!8`````````0````$````070,``````.!8 +M`````````0````$```!070,```````!9`````````0````$```"`70,````` +M`"!9`````````0````$```#`70,``````$A9`````````0````$```"@7@,` +M`````'!9`````````0````$```#P7@,``````)A9`````````0````$```!P +M7P,``````,!9`````````0````$```!`8`,```````!:`````````0````$` +M``!08@,``````"!:`````````0````$```"P8@,``````$!:`````````0`` +M``$````08P,``````'A:`````````0````$```#`8P,``````)A:```````` +M`0````$````@9`,``````+A:`````````0````$```!@9`,``````-A:```` +M`````0````$```"@9`,``````!A;`````````0````$````0:@,``````#A; +M`````````0````$```!P:@,``````%A;`````````0````$```#`:@,````` +M`)!;`````````0````$````@:P,``````*A;`````````0````$```!`:P,` +M`````,!;`````````0````$```!@:P,``````.!;`````````0````$```!0 +M;`,``````/A;`````````0````$```!P;`,``````!!<`````````0````$` +M``"@;`,``````#!<`````````0````$````P;0,``````'!<`````````0`` +M``$```!@;@,``````)A<`````````0````$```!0;P,``````-!<```````` +M`0````$```"`<`,``````!!=`````````0````$````P<0,``````"A=```` +M`````0````$```!P<@,``````$!=`````````0````$```"`<@,``````%A= +M`````````0````$```"0<@,``````'!=`````````0````$```"P<@,````` +M`(A=`````````0````$```#0<@,``````*!=`````````0````$`````<P,` +M`````+A=`````````0````$````P<P,``````.!=`````````0````$```!P +M=`,``````/A=`````````0````$```"P=`,``````"!>`````````0````$` +M``!0=0,``````#A>`````````0````$```"P=0,``````%!>`````````0`` +M``$```#0=0,``````'!>`````````0````$```#0>0,``````)!>```````` +M`0````$````P>P,``````,A>`````````0````$```#@?`,``````.!>```` +M`````0````$````P?0,``````/A>`````````0````$```!0?0,``````"!? +M`````````0````$```#`?0,``````$A?`````````0````$```#0@`,````` +M`'!?`````````0````$```"`@0,``````)A?`````````0````$`````@@,` +M`````-A?`````````0````$```#0@@,``````/A?`````````0````$```!0 +M@P,``````!A@`````````0````$````0A`,``````%A@`````````0````$` +M``"0AP,``````'!@`````````0````$```"@AP,``````(A@`````````0`` +M``$```#PAP,``````*!@`````````0````$`````B`,``````+A@```````` +M`0````$````0B`,``````-!@`````````0````$````@B`,``````.A@```` +M`````0````$```"@B`,```````!A`````````0````$```!`B0,``````!AA +M`````````0````$```!0B0,``````#!A`````````0````$```!@B0,````` +M`$AA`````````0````$```"PB0,``````&!A`````````0````$```#`B0,` +M`````'AA`````````0````$```#`B@,``````)!A`````````0````$````` +MBP,``````+!A`````````0````$```!`BP,``````,AA`````````0````$` +M``!@BP,``````.!A`````````0````$```#`BP,``````/AA`````````0`` +M``$````@C`,``````!AB`````````0````$```!`C`,``````$!B```````` +M`0````$````@C0,``````(!B`````````0````$```!@DP,``````*!B```` +M`````0````$```#0DP,``````,!B`````````0````$````@E`,``````.!B +M`````````0````$```!`E`,```````!C`````````0````$```!@E`,````` +M`"!C`````````0````$```"`E`,``````$AC`````````0````$````0E@,` +M`````'!C`````````0````$```#PF@,``````)AC`````````0````$````P +MGP,``````,!C`````````0````$`````H`,``````.AC`````````0````$` +M``"@H0,```````AD`````````0````$```"`H@,``````#!D`````````0`` +M``$````0HP,``````%AD`````````0````$```#PHP,``````'AD```````` +M`0````$````0I`,``````+AD`````````0````$````0IP,``````.!D```` +M`````0````$```#`IP,```````AE`````````0````$```!@JP,``````#!E +M`````````0````$```#@K`,``````%AE`````````0````$````@K@,````` +M`)AE`````````0````$````0M`,``````+AE`````````0````$```"PM`,` +M`````.AE`````````0````$```#@O0,``````"AF`````````0````$```!@ +MP@,``````%!F`````````0````$```"PQ`,``````(AF`````````0````$` +M``#`R`,``````+AF`````````0````$```#@S`,``````.!F`````````0`` +M``$```#@T`,```````AG`````````0````$```!`TP,``````#!G```````` +M`0````$````@V@,``````%AG`````````0````$```"PW`,``````+!G```` +M`````0````$```#PWP,``````,AG`````````0````$````0X`,``````.!G +M`````````0````$````@X`,``````/AG`````````0````$```!0X`,````` +M`!!H`````````0````$```!@X`,``````#AH`````````0````$```#@X`,` +M`````&!H`````````0````$```"PX0,``````'AH`````````0````$```#@ +MX0,``````*!H`````````0````$````PX@,``````+AH`````````0````$` +M``!PX@,``````-!H`````````0````$```"@X@,``````.AH`````````0`` +M``$```#@X@,```````AI`````````0````$````0XP,``````"!I```````` +M`0````$````@XP,``````#AI`````````0````$````PXP,``````%!I```` +M`````0````$```!@XP,``````&AI`````````0````$```"@XP,``````(!I +M`````````0````$`````Y`,``````*AI`````````0````$```"0Y`,````` +M`-!I`````````0````$```#PY`,```````AJ`````````0````$```#0Y0,` +M`````#!J`````````0````$```"@Y@,``````%AJ`````````0````$````@ +MYP,``````(!J`````````0````$```"`YP,``````*AJ`````````0````$` +M``!@Z`,``````-AJ`````````0````$```!@Z0,``````/AJ`````````0`` +M``$```#`Z0,``````"!K`````````0````$````@Z@,``````#AK```````` +M`0````$````PZ@,``````%!K`````````0````$```!0Z@,``````&AK```` +M`````0````$```!PZ@,``````*!K`````````0````$```#@[`,``````.!K +M`````````0````$```!`[@,``````!!L`````````0````$```!`[P,````` +M`#AL`````````0````$```#@[P,``````&AL`````````0````$```"`\`,` +M`````*AL`````````0````$```#@\0,``````.!L`````````0````$```"P +M\P,```````AM`````````0````$```!P]`,``````#!M`````````0````$` +M``#P]0,``````'!M`````````0````$```#P]@,``````(AM`````````0`` +M``$````P]P,``````*!M`````````0````$```!0]P,``````+AM```````` +M`0````$```"`]P,``````-!M`````````0````$```#`]P,``````.AM```` +M`````0````$`````^`,```````!N`````````0````$```!`^`,``````!AN +M`````````0````$```"P^`,``````#!N`````````0````$```!P^0,````` +M`$AN`````````0````$```"`^0,``````'!N`````````0````$```#0^0,` +M`````)!N`````````0````$```!0^@,``````+!N`````````0````$````0 +M^P,``````-!N`````````0````$```!P^P,``````/AN`````````0````$` +M```@_`,``````!!O`````````0````$````P_`,``````#!O`````````0`` +M``$```"`_`,``````%AO`````````0````$```#P_`,``````'AO```````` +M`0````$```!P_0,``````)!O`````````0````$```"P_0,``````+!O```` +M`````0````$`````_@,``````-AO`````````0````$```!@_@,```````AP +M`````````0````$```"@`00``````#!P`````````0````$````0`@0````` +M`%AP`````````0````$``````P0``````'AP`````````0````$```!``P0` +M`````*!P`````````0````$```!`!00``````,!P`````````0````$```"0 +M!00``````.AP`````````0````$````@!P0``````!!Q`````````0````$` +M``"`"00``````#!Q`````````0````$```#@"00``````&!Q`````````0`` +M``$```"@%`0``````*!Q`````````0````$```"0%@0``````,!Q```````` +M`0````$```#@%@0``````.AQ`````````0````$```#@%P0``````!AR```` +M`````0````$```!0&00``````$AR`````````0````$```#@&@0``````&AR +M`````````0````$```!P&P0``````)!R`````````0````$```#@&P0````` +M`,AR`````````0````$````P'@0``````/!R`````````0````$```#0'@0` +M`````!AS`````````0````$````0(`0``````$!S`````````0````$````0 +M(00``````(!S`````````0````$```"0(@0``````)AS`````````0````$` +M``#P(@0``````+!S`````````0````$````0(P0``````,AS`````````0`` +M``$```!@(P0```````AT`````````0````$````@)`0``````$AT```````` +M`0````$````P)00``````'AT`````````0````$```"0)00``````+AT```` +M`````0````$```#P)@0``````-!T`````````0````$```!0)P0``````.AT +M`````````0````$```#P)P0```````!U`````````0````$```#0*`0````` +M`!AU`````````0````$```#@*00``````#!U`````````0````$````P*@0` +M`````$AU`````````0````$```"P*@0``````(AU`````````0````$```!` +M+P0``````*!U`````````0````$```!0+P0``````+AU`````````0````$` +M``#@+P0``````-AU`````````0````$```!@,`0```````!V`````````0`` +M``$```"@,`0``````!AV`````````0````$```"`,00``````$!V```````` +M`0````$````0,@0``````'!V`````````0````$```"`,@0``````(AV```` +M`````0````$`````,P0``````*!V`````````0````$````@,P0``````+AV +M`````````0````$```!`,P0``````-!V`````````0````$```!@,P0````` +M`.AV`````````0````$```"`,P0```````!W`````````0````$```"@,P0` +M`````!AW`````````0````$```#`,P0``````#!W`````````0````$```#@ +M,P0``````$AW`````````0````$`````-`0``````&!W`````````0````$` +M```@-`0``````'AW`````````0````$```!`-`0``````)!W`````````0`` +M``$```!@-`0``````*AW`````````0````$```"`-`0``````,!W```````` +M`0````$```"@-`0``````-AW`````````0````$```#`-`0``````/!W```` +M`````0````$```#@-`0```````AX`````````0````$````0-00``````"!X +M`````````0````$```!`-00``````$!X`````````0````$```"`-00````` +M`&!X`````````0````$```#`-00``````(!X`````````0````$`````-@0` +M`````*!X`````````0````$```!P-@0``````,!X`````````0````$```#@ +M-@0``````.AX`````````0````$```!P-P0``````!!Y`````````0````$` +M``!`.`0``````#AY`````````0````$```#P.`0``````%!Y`````````0`` +M``$````0.00``````&AY`````````0````$```!0.00``````)!Y```````` +M`0````$`````.@0``````+AY`````````0````$```#`.@0``````.!Y```` +M`````0````$```"0.P0```````AZ`````````0````$```!P/`0``````"!Z +M`````````0````$```"0/`0``````$!Z`````````0````$`````/00````` +M`&!Z`````````0````$```!P/00``````(!Z`````````0````$```#@/00` +M`````*!Z`````````0````$```!`/@0``````,!Z`````````0````$```"@ +M/@0``````.!Z`````````0````$`````/P0```````![`````````0````$` +M``"0/P0``````"![`````````0````$`````0`0``````$![`````````0`` +M``$```!P0`0``````&A[`````````0````$````P000``````(A[```````` +M`0````$```"@000``````*A[`````````0````$````00@0``````,A[```` +M`````0````$```"`0@0``````.A[`````````0````$```#P0@0```````!\ +M`````````0````$````00P0``````!A\`````````0````$````P0P0````` +M`#!\`````````0````$```!00P0``````%!\`````````0````$````01`0` +M`````'!\`````````0````$```#01`0``````)!\`````````0````$````P +M100``````+A\`````````0````$```#@100``````.!\`````````0````$` +M``"01@0```````!]`````````0````$```#P1@0``````!A]`````````0`` +M``$````@1P0``````#A]`````````0````$```"`1P0``````%A]```````` +M`0````$````P2`0``````'!]`````````0````$```!P2`0``````)!]```` +M`````0````$````P200``````+!]`````````0````$```#0200``````-A] +M`````````0````$```#@2@0``````/!]`````````0````$```!02P0````` +M`!!^`````````0````$```"P2P0``````"A^`````````0````$```#`2P0` +M`````$A^`````````0````$```#`3`0``````&!^`````````0````$```#0 +M3`0``````'A^`````````0````$````@300``````)A^`````````0````$` +M``"0300``````,!^`````````0````$```!@3@0``````.A^`````````0`` +M``$````03P0``````!A_`````````0````$````P4`0``````$A_```````` +M`0````$```!`400``````&A_`````````0````$```!P400``````(!_```` +M`````0````$```#P400``````)A_`````````0````$````P4@0``````+!_ +M`````````0````$```!P4@0``````,A_`````````0````$```"P4@0````` +M`.!_`````````0````$```#P4@0``````/A_`````````0````$````P4P0` +M`````!"``````````0````$```!P4P0``````"B``````````0````$```"P +M4P0``````$"``````````0````$```#P4P0``````%B``````````0````$` +M```P5`0``````'"``````````0````$```!P5`0``````(B``````````0`` +M``$```"P5`0``````*"``````````0````$```#P5`0``````+B````````` +M`0````$````P500``````-"``````````0````$```!P500``````.B````` +M`````0````$```"P500```````"!`````````0````$```#P500``````!B! +M`````````0````$````P5@0``````#"!`````````0````$```!P5@0````` +M`$B!`````````0````$```"P5@0``````&"!`````````0````$```#P5@0` +M`````'B!`````````0````$````@5P0``````)"!`````````0````$```!0 +M5P0``````+"!`````````0````$`````6`0``````,B!`````````0````$` +M``!`6`0``````/"!`````````0````$````0600``````!""`````````0`` +M``$```!@600``````$""`````````0````$```!P6@0``````&""```````` +M`0````$```#`6@0``````)""`````````0````$```!@7`0``````-""```` +M`````0````$```#P700```````B#`````````0````$```#07@0``````"B# +M`````````0````$```!@7P0``````%B#`````````0````$```"`800````` +M`'"#`````````0````$```"P800``````+"#`````````0````$```"`8@0` +M`````,B#`````````0````$````P8P0``````/"#`````````0````$```#P +M8P0``````!B$`````````0````$```!P9`0``````$"$`````````0````$` +M```P900``````&B$`````````0````$```#@900``````(B$`````````0`` +M``$```"`9@0``````+"$`````````0````$```!P9P0``````/"$```````` +M`0````$```!0:`0``````#"%`````````0````$```!0:00``````'"%```` +M`````0````$```!`:@0``````+"%`````````0````$````P:P0``````/"% +M`````````0````$````@;`0``````""&`````````0````$```#`;`0````` +M`$"&`````````0````$````0;00``````&B&`````````0````$```#`;00` +M`````(B&`````````0````$````0;@0``````+"&`````````0````$````P +M;P0``````,B&`````````0````$```!@;P0```````"'`````````0````$` +M```P<`0``````"B'`````````0````$```#0<00``````$"'`````````0`` +M``$```#@<00``````&"'`````````0````$`````<@0``````("'```````` +M`0````$````@<@0``````*"'`````````0````$```!0<@0``````-"'```` +M`````0````$```#0<@0``````/"'`````````0````$```#P<@0``````!"( +M`````````0````$```"`<P0``````#"(`````````0````$```#0<P0````` +M`%"(`````````0````$```#P<P0``````'"(`````````0````$````0=`0` +M`````)"(`````````0````$```!P=`0``````+B(`````````0````$```"P +M=`0``````."(`````````0````$```#P=`0```````B)`````````0````$` +M```P=00``````#")`````````0````$```!P=00``````%B)`````````0`` +M``$```"P=00``````(")`````````0````$```#P=00``````*B)```````` +M`0````$```!@=@0``````.B)`````````0````$```"@=P0``````!"*```` +M`````0````$```#0>@0``````#"*`````````0````$```#P>@0``````%"* +M`````````0````$````0>P0``````'B*`````````0````$```!@?`0````` +M`*"*`````````0````$```#0?`0``````,B*`````````0````$```"@?@0` +M``````B+`````````0````$```"0@00``````#B+`````````0````$````@ +M@P0``````&B+`````````0````$```!PA`0``````)"+`````````0````$` +M````A00``````+"+`````````0````$```!`A00``````-"+`````````0`` +M``$```"`A00``````/"+`````````0````$```!@B`0```````B,```````` +M`0````$```#PB00``````"",`````````0````$````@B@0``````$",```` +M`````0````$```!`BP0``````'",`````````0````$```#0DP0``````)B, +M`````````0````$```"@E@0``````-",`````````0````$```"`EP0````` +M`/B,`````````0````$```#@F@0``````""-`````````0````$```#`FP0` +M`````$"-`````````0````$````PG`0``````("-`````````0````$```#@ +MG00``````*B-`````````0````$```!PGP0``````.B-`````````0````$` +M``#`K@0``````!".`````````0````$````PKP0``````#B.`````````0`` +M``$```!`L`0``````&".`````````0````$```"0L`0``````)".```````` +M`0````$```!0L00``````,".`````````0````$```"0LP0``````/".```` +M`````0````$```"@M@0``````!B/`````````0````$```"PN`0``````$B/ +M`````````0````$```!0N00``````&B/`````````0````$```"PN00````` +M`(B/`````````0````$````0N@0``````*B/`````````0````$````@O`0` +M`````-B/`````````0````$````@PP0```````B0`````````0````$````P +MQP0``````#"0`````````0````$```"`QP0``````%B0`````````0````$` +M````R`0``````("0`````````0````$```"`R`0``````*B0`````````0`` +M``$```#0R`0``````-"0`````````0````$```!0R00``````/B0```````` +M`0````$```#0R00``````"B1`````````0````$```!@R@0``````%"1```` +M`````0````$```#`R@0``````'B1`````````0````$```"PRP0``````*"1 +M`````````0````$```"PS`0``````,"1`````````0````$```!0S00````` +M`.B1`````````0````$````@S@0```````B2`````````0````$```!0S@0` +M`````$"2`````````0````$````PSP0``````("2`````````0````$```"` +MT`0``````*B2`````````0````$```!`T@0``````."2`````````0````$` +M``!@TP0```````"3`````````0````$```"@TP0``````#B3`````````0`` +M``$```#@U`0``````%"3`````````0````$```#PU`0``````'B3```````` +M`0````$````@U@0``````*"3`````````0````$```"@U@0``````,B3```` +M`````0````$````PUP0``````/B3`````````0````$```#`UP0``````""4 +M`````````0````$```!0V`0``````&"4`````````0````$```!`VP0````` +M`)B4`````````0````$````@W00``````-"4`````````0````$```#PW@0` +M``````"5`````````0````$```!@X@0``````"B5`````````0````$```!@ +MXP0``````%B5`````````0````$````0Y`0``````("5`````````0````$` +M``"`Y@0``````*B5`````````0````$```"@Z@0``````,"5`````````0`` +M``$```#@Z@0``````."5`````````0````$````PZP0```````B6```````` +M`0````$```"0[`0``````$B6`````````0````$```"@[00``````&"6```` +M`````0````$```"`[@0``````("6`````````0````$`````[P0``````)B6 +M`````````0````$```!P[P0``````+"6`````````0````$```"0[P0````` +M`,B6`````````0````$```"@[P0``````.B6`````````0````$```#P[P0` +M`````!"7`````````0````$```!P\`0``````$"7`````````0````$```"0 +M\00``````'"7`````````0````$```"@]00``````)"7`````````0````$` +M````]@0``````+B7`````````0````$```#@]@0``````/B7`````````0`` +M``$```!0^@0``````#"8`````````0````$```"0^@0``````$B8```````` +M`0````$```"P^@0``````'B8`````````0````$```"P^P0``````)"8```` +M`````0````$```#P^P0``````*B8`````````0````$```!@_`0``````-B8 +M`````````0````$```!0_00``````/B8`````````0````$```"P_00````` +M`""9`````````0````$```"0_@0``````$"9`````````0````$````P_P0` +M`````("9`````````0````$```!0`04``````+B9`````````0````$````P +M!04``````."9`````````0````$```"@!04```````B:`````````0````$` +M```P!@4``````#B:`````````0````$```"`"`4``````%B:`````````0`` +M``$````@"04``````(":`````````0````$```"0"@4``````+":```````` +M`0````$```!0$@4``````/":`````````0````$```#@%`4```````B;```` +M`````0````$```!`%04``````"";`````````0````$```!0%04``````#B; +M`````````0````$```!P%04``````%";`````````0````$```"`%04````` +M`'B;`````````0````$```!P%@4``````*";`````````0````$```"P%@4` +M`````,";`````````0````$`````%P4``````.";`````````0````$```!@ +M%P4``````/B;`````````0````$```!P%P4``````"B<`````````0````$` +B``"`%P4``````$"<`````````0````$```#0%P4````````` ` end diff --git a/sys/dev/hptnr/hptnr_config.c b/sys/dev/hptnr/hptnr_config.c index 5aec3fc..fe70f93 100644 --- a/sys/dev/hptnr/hptnr_config.c +++ b/sys/dev/hptnr/hptnr_config.c @@ -46,7 +46,7 @@ int init_config(void) const char driver_name[] = "hptnr"; const char driver_name_long[] = "R750/DC7280 controller driver"; -const char driver_ver[] = "v1.0"; +const char driver_ver[] = "v1.0.1"; int osm_max_targets = 0xff; diff --git a/sys/dev/hptnr/hptnr_os_bsd.c b/sys/dev/hptnr/hptnr_os_bsd.c index da3977c..b11106c 100644 --- a/sys/dev/hptnr/hptnr_os_bsd.c +++ b/sys/dev/hptnr/hptnr_os_bsd.c @@ -270,21 +270,7 @@ int os_revalidate_device(void *osext, int id) int os_query_remove_device(void *osext, int id) { - PVBUS_EXT vbus_ext = (PVBUS_EXT)osext; - struct cam_periph *periph = NULL; - struct cam_path *path; - int status,retval = 0; - - status = xpt_create_path(&path, NULL, vbus_ext->sim->path_id, id, 0); - if (status == CAM_REQ_CMP) { - if((periph = cam_periph_find(path, "da")) != NULL){ - if(periph->refcount >= 1) - retval = -1; - } - xpt_free_path(path); - } - - return retval; + return 0; } HPT_U8 os_get_vbus_seq(void *osext) diff --git a/sys/dev/hptnr/hptnr_osm_bsd.c b/sys/dev/hptnr/hptnr_osm_bsd.c index 82f4877..fe352d1 100644 --- a/sys/dev/hptnr/hptnr_osm_bsd.c +++ b/sys/dev/hptnr/hptnr_osm_bsd.c @@ -549,7 +549,7 @@ static void hpt_scsi_io(PVBUS_EXT vbus_ext, union ccb *ccb) vd = ldm_find_target(vbus, ccb->ccb_h.target_id); if (!vd) { - ccb->ccb_h.status = CAM_TID_INVALID; + ccb->ccb_h.status = CAM_SEL_TIMEOUT; xpt_done(ccb); return; } diff --git a/sys/dev/hptnr/i386-elf.hptnr_lib.o.uu b/sys/dev/hptnr/i386-elf.hptnr_lib.o.uu index 4830fca..30acda8 100644 --- a/sys/dev/hptnr/i386-elf.hptnr_lib.o.uu +++ b/sys/dev/hptnr/i386-elf.hptnr_lib.o.uu @@ -1,5 +1,5 @@ begin 644 hptnr_lib.o -M?T5,1@$!`0D```````````$``P`!``````````````"86@4``````#0````` +M?T5,1@$!`0D```````````$``P`!```````````````X;@4``````#0````` M`"@`#@`+`````````````````(M$)`0/ME0D#,8`",9``1*`?"0(`'0)@$@" M!.L'C78`@&`"^X32=`B`8`S?ZP:)]H!(#""X%````,.-M@````#SPXVT)@`` M``"-O"<`````55=64X/L+(ML)$"+?"1(#[9$)$R(1"0;#[94)%"(5"0:BU0D @@ -53,2636 +53,5532 @@ MNP`````/I,L(P>$(B<8)SHG7"=\/ME4NP>(8#[9%+\'@$`G"#[9%,0G"#[9% M,,'@"`G0C78`B758B7U<B45@9H--$@&+'"2+="0$BWPD"(ML)`R#Q!##ZPV0 MD)"0D)"0D)"0D)"05E.+="0,#[=$)!"Z_____V:%P'0MNO____^Y`````(/H M`0^WP(U8`0^V!#$QT`^VP,'J"#,4A0````"#P0$YV77FB=!;7L.)]HV\)P`` -M``!3@^Q(BUPD4`^V0S.)1"1$#[9#,HE$)$`/MD,QB40D/`^V0S")1"0X#[9# -M+XE$)#0/MD,NB40D,`^V0RV)1"0L#[9#+(E$)"@/MD,KB40D)`^V0RJ)1"0@ -M#[9#*8E$)!P/MD,HB40D&`^V0R>)1"04#[9#)HE$)!`/MD,EB40D#`^V0R2) -M1"0(B5PD!,<$)`````#H_/___P^W0Q")1"0$QP0D`````.C\____@\1(6\/K -M#9"0D)"0D)"0D)"0D)!3@^P8BU0D((M,)"0/MD$!B$(!#[9!`HA"`HM!!(E" -M!(M:"`^V0@&-!$#!X`*+40B)1"0(B50D!(D<).C\____@\086\.-="8`C;PG -M`````%.+5"0(BUI$#[9*/+@`````Q@00`(/``8/X<'7TB5I$B$H\6\.-="8` -MC;PG`````(M4)`2X`````(VT)@````#&!!#_@\`!/0`"``!U\O/#BT0D!+D` -M````.P!T#8M(!(L1BT$$B4($B1")R,.0D)!3BTPD"(L9BX,$`0``B<*!XG[_ -M_O^)DP0!```E?O_R_XM1!(D"BU$$B4(,BU$$B4(0BU$$B4(4BU$$B4(8BU$$ -MB4($BP&+@%0!``"C`````"7^`/__BQ&)@E0!``!;PY!3BUPD"`^V3"0,BP.+ -MD`0!``")%0`````/MT,D9CV`9'0.9CV`D70(9CV`E'43B?8/MLF#P0BX`0`` -M`-/@"<+K#P^VR8/!#+@!````T^`)PHL#B9`$`0``6\.-M@````!3BUPD"`^V -M3"0,BP.+D`0!``")%0`````/MT,D9CV`9'0.9CV`D70(9CV`E'43B?8/MLF# -MP0BX_O___]/`(<+K#P^VR8/!#+C^____T\`APHL#B9`$`0``6\.-M@````"# -M[`B)'"2)="0$BW0D#`^V3"00@/G_=&Z`^1]W,XN>&`$``+H!````T^*)T/?0 -M(=B)AA@!``"+AE@!``"C`````"'0=$&)AE@!``#K.8UV`(N>'`$```^VP8/H -M(+H!````B<'3XHG0]]`AV(F&'`$``(N&8`$``*,`````(=!T!HF&8`$``(L< -M)(MT)`2#Q`C#ZPV0D)"0D)"0D)"0D)"0@^P<B5PD#(ET)!")?"04B6PD&(ML -M)"@/ME0D)(M$)""+.(#Z`W9\#[;:P>,#C;0?``(``,<&#`$``,<$)!`G``#H -M_/___XV<'P0"```/ME4#P>(8#[9%`L'@$`G"#[9%``G"#[9%`<'@"`G"B1/' -M!A`!``#'!"00)P``Z/S___\/ME4'P>(8#[9%!L'@$`G"#[9%!`G"#[9%!<'@ -M"`G"B1/K>@^VVL'C`XVT.P`"``#'!@P!``#'!"00)P``Z/S___^-G#L$`@`` -M#[95`\'B&`^V10+!X!`)P@^V10`)P@^V10'!X`@)PHD3QP80`0``QP0D$"<` -M`.C\____#[95!\'B&`^V10;!X!`)P@^V100)P@^V107!X`@)PHD3BUPD#(MT -M)!"+?"04BVPD&(/$',/K#9"0D)"0D)"0D)"0D)"#[!R)7"04B70D&(MT)"`/ -MMEPD)(E<)`2)-"3H_/___\<$)!`G``#H_/___XE<)`2)-"3H_/___XM<)!2+ -M="08@\0<PXVV`````(V_`````%575E.#[`R+;"0@#[94)"0/MD0D*(A$)`N+ -M10"`?28`#X1"`0``C9B$`0``C;C0`0``O@`````/MM*)5"0$B?:+1"0$B?'3 -M^*@!#X0#`0``@_X#=@Z+`Z,`````@^#^B0/K#(L#HP````"#X/Z)`\<$)!`G -M``#H_/___X!\)`L`=#Z#_@-V#HL'HP````"#R`*)!^L,BP>C`````(/(`HD' -MB?J#_@-V"8L"HP````#K!XL"HP````"H`G1DZ^6)]H/^`W8LQX.L```````` -M`,<$)!`G``#H_/___XN#L````*,`````@\@!B8.P````ZS3'@\P````````` -MQP0D$"<``.C\____BX/0````HP````"#R`&)@]````#K(XUV`(/^`W8;QT/\ -M`0```(L#HP````"#R`&)`^L9C;8`````QT/\`0```(L#HP````"#R`&)`X/& -M`8/#"(/'!`^V128Y\`^'V/[__X/$#%M>7UW#5E.#[`2+3"04#[9<)!B+1"00 -MBS"#^0-V%XV4SH`!``"+`J,`````@^#^B0+K%8GVC93.@`$``(L"HP````"# -MX/Z)`H3;=%F#^0-V%8V4CM`!``"+`J,`````@\@"B0+K$XV4CM`!``"+`J,` -M````@\@"B0*-A([0`0``D(UT)@"#^0-V"XL0B14`````ZPF0BQ")%0````#V -MP@)T<^OAD(/Y`W8UC1S-`````(V$,S`"``#'``````#'!"00)P``Z/S___^- -MG#,T`@``BP.C`````(/(`8D#ZS:-',T`````C80S4`(``,<``````,<$)!`G -M``#H_/___XV<,U0"``"+`Z,`````@\@!B0.-=@"#Q`1;7L.0D)"0D)"0D)"0 -M4XM,)`B+&0^W@8@+``"#P`%FB8&("P``9CN!C`L``'()9L>!B`L`````#[>! -MB`L``,'@`@.!@`H``(M4)`R+$HD0#[>!B`L``(F#+`$``%O#ZPV0D)"0D)"0 -MD)"0D)"05E.+3"08#[=4)!`/MG0D%(M<)`RX`````(VT)@````#&!`@`@\`! -M@_@$=?1F@>+_#P^W`68E`/`)T&:)`0^V4PG!X@R+`27_#_#_"=")`0^V0P:# -MX`*#^`$9TH/B`H/"`<'B!0^V00.#X!\)T(/($(/@]XA!`_9#!@%T%HGR@^)_ -MP>($#[=!`F8E#_@)T&:)00);7L.-="8`C;PG`````(M,)`2+5"0(N`````"- -M=@#&!!``@\`!@_@-=?0/MD$EB`(/MD$FB$(!#[9!)XA"`@^V02B(0@,/MD$I -MB$($#[9!*HA"!0^V02N(0@;V068$=",/MD$LB$((#[9!+8A""0^V02Z(0@H/ -MMD$OB$(+#[9!,(A"#+@!````PY"-="8`55=64XML)!2+?"08N@````"^`0`` -M`.M0`=*)V-/XJ`%T$/?"`````746@?)W)]L`ZP[WP@````%T!H'R=R?;`(/I -M`8/Y_W70@\8!@_X)=1B)T,'H$(A%`(G0P>@(B$4!B%4"6UY?7<,/MEP^_[D' -M````ZZ2-M@````"-OP````"+1"0$BX`X"@``BQ"+4`2+4`B+0`RC`````,.0 -MC70F`%=64X/L$(M\)""+="0DBT94#[9?*X3;="8/ME`)N0````#VP@%T$>L6 -MC;0F`````(G0T_BH`74'@\$!.-EU\<9&)@R)="0$B3PDZ/S___^#Q!!;7E_# -MC78`C;PG`````(/L#(M$)!"+$&;'0#(!`,9`)AV)1"0$B10DZ/S___^#Q`S# -MC;8`````C;PG`````%93@^P4BT0D((LP#[=$)"3!X`(#AL0%``"+&(7;=$2+ -M%@^W0QYFP>@%#[?`C02%``,``(F"<`$``(L6#[=+'H/A'[@!````T^")@G0! -M``#'1"0(`````(E<)`2)-"3H_/___X/$%%M>PXVT)@````!55U93@^P<BVPD -M,(!]*P!T*[D`````BT0D-/9`"0%T$.L:BU0D-`^V0@G3^*@!=0R#P0$/MD4K -M9CG(=^:+5"0TBT(HA<!T)8/`6(M5%(E$)`2)%"3H_/___XM4)#2+0BB)1"0$ -MB2PDZ/S___^+1"0T@\`XBU0D-#E".`^$=0$``(E$)!B+1"08B00DZ/S___^) -MQH-X(``/A#0!``"`>$\`#X29````9H-]4``/A(X```"_`````(T$O0`````# -MA<0%``"+&(7;=&</MT,09CM&''5=9CV%`'=7#[?`@+PHL`0``/]T2HM5``^W -M0QYFP>@%#[?`C02%``,``(F"<`$``(M5``^W2QZ#X1^X`0```-/@B8)T`0`` -MQD,4(<=$)`@`````B5PD!(DL).C\____@\<!#[=%4#GX#X]W____BT8@QT!@ -M`````/9&*`1U(8DL).C\____BT8@QT0D"`$```")1"0$B2PDZ/S___^)]HM& -M(`^V4`(/MD`!B50D"(E$)`3'!"0-````Z/S___^+1B"+E3P%``")1"0(B50D -M!,<$)`$```#H_/___XM&((N5/`4``(E$)`B)5"0$QP0D!@```.C\____QT8@ -M`````(M4)#2`:@H!B70D!(DL).C\____BU0D&(M$)#0Y4#@/A8_^__^+1"0T -MQT`H`````(M%`(N(6`$``(D-`````(7)=`F+10")B%@!``"#Q!Q;7E]=PXVV -M`````(V_`````%=64X/L((MT)#"+/@^V7RN$VW0PC8>0"P``N0`````Y\'48 -MZQ\/ML&)PL'B!HV$@I`+``"-!`<Y\'0.@\$!.-EUX^L%N0`````/MM&)T,'@ -M!HT$D(N,!Y0+``"%R0^$?P```/9!!@)T>8V$!Y`+```Y01AU;0^V032$P'0( -M@\`!B$$TZUV+42R#ZB"-62R-0B`YV'1-@WH,`'4ZZPF-=@"#>@P`=2_&030! -MQT0D$``````/MH*+````B40D#(E4)`B)3"0$BX?X"0``B00DZ/S____K#8M2 -M((/J((U"(#G8=;Z#Q"!;7E_#C;0F`````(/L'(E<)`R)="00B7PD%(EL)!B+ -M7"0@BWPD)(M'3(MH'`^W5Q!F@?J%`'=T#[?"#[:$`[`$```\_W1E9H/Z?W<? -M#[;`BY-P!0``:<`D`0``BT00+`^V0`3K2XVV`````&:!^H$`=QD/ML"+DZ@% -M``!IP!0-``"+1!`(#[9`!.LE#[;`BY.,!0``:<"P````BT005`^V0`3K#(VT -M)@````"X_P````^VM!@V!0``BT=0A<!T#(E$)`2)'"3H_/___XE\)`2)'"3H -M_/___XEL)`2)\@^VPFO`7(V$`T`!``")!"3_E9P```"+7"0,BW0D$(M\)!2+ -M;"08@\0<PXUT)@"#[!R)7"0,B70D$(E\)!2);"08BW0D)(M<)"@/MVPD+&:! -M?B3A`740#[9&)H/H$;\`````/`%V+HM$)""+$(NZ<`4```^W1A"YW"(!`&8] -MA0!W$0^WP`^VA`*P!```:<@D`0```<_&0P0%@&,%_H`CW[@`````9H%^).$! -M=1(/MD8F@^@!/`$/EL`/ML"-=@#!X`</MA.#XG\)PH@3#[9&9H/@`<'@!H/B -MOPG"B!/V1F8!=`Z)/"3H_/___V:)0PCK!&:):P@/MT,(B$859H%^).$!=2L/ -MME8FC4+_/`%W$`^V5B>#X@_K*8VT)@````"-0N^Z#P```#P!=A:-="8`N@`` -M``"#?S0`=`</ME=-@^(/#[8#@^#P"="(`XM<)`R+="00BWPD%(ML)!B#Q!S# -M@^P\B5PD+(ET)#")?"0TB6PD.(M<)$0/MD,D/`AT$3PH=`T\J'0)/(AU"Y"- -M="8`@TMD"NL>/`IT%CPJC70F`'0./*IT"CR*=0J-M@````"#2V0"#[=[)&:! -M_^$!=1D/MD,F@^@1/`%W#H-+9`BX`````.E]!0``BT,D)?___P")1"0@/>$! -M$``/A>0````/MU,09H'ZA0`/AS(%```/M\*+="1`#[:,!K`$``"X_____X#Y -M_W1I9H/Z?W<=#[;!BW0D0(N6<`4``&G`)`$``(M$$"P/MD`$ZT9F@?J!`'<= -M#[;!BW0D0(N6J`4``&G`%`T``(M$$`@/MD`$ZR(/ML&+="1`BY:,!0``:<"P -M````BT005`^V0`2-M"8`````#[;`BU0D0`^VA`(V!0``:\!<C;0"0`$``(N2 -MJ`4```^VP6G`%`T``,=$)"0`````]D0"-1`/A4H"``#&0Q0$BU0D2,<"```` -M`+@!````Z8($```/MU,0N?\```"X_____V:!^H4`=WX/M\*+="1`#[:,!K`$ -M``"X_____X#Y_W1B9H/Z?W<=#[;!BW0D0(N6<`4``&G`)`$``(M$$"P/MD`$ -MZS]F@?J!`'<=#[;!BW0D0(N6J`4``&G`%`T``(M$$`@/MD`$ZQL/ML&+="1` -MBY:,!0``:<"P````BT005`^V0`0/MLD/ML")1"0HBU0D0`^VK!`V!0``:\5< -MC;0"0`$```^WP6G`)`$```."<`4``(E$)"1F@?_A`74+#[9#)H/H`3P!=BEF -M@?G_`'0*BTPD)/9!)P1U&,9#%`:+="1(QP8`````N`$```#IA`,``(M4)"0/ -MMD(DB<*#X@6#^@5U(8M,)$`/MD$L.D$V<A2+="1(QP8!````N`$```#I40,` -M`(-\)"0`#X3V````@_H%#X7M````B5PD!(M$)"2)!"3H_/___X3`=1C&0Q0$ -MBU0D2,<"`````+@!````Z1$#``"+3"0D@'E/'W84BW0D2,<&`0```+@!```` -MZ?,"``#V0V8!=!-KQ5R+5"1`]H0"2`$```%T%^M@:\5<BTPD0/:$`4@!```! -M#X08`@``BW0D*(ET)`2+1"1`B00DZ/S___^$P'04BU0D2,<"`0```+@!```` -MZ9D"``#V0V8!#X3B`0``:\5<BTPD0/:$`4@!```!#X3-`0``BW0D)(DT).C\ -M____9H/X'P^&MP$``(M$)$C'``$```"X`0```.E0`@``]D8&`G0U@7PD(.$! -M$``/A(\!``"+5"0D#[9"3SI"3G(HBTPD2,<!`0```+@!````Z1L"``"-M@`` -M``"!?"0@X0$0``^$6@$``(MT)"0/MT8Z@'LDX0^%2`$``(![)0$/A3X!``#1 -MZ(G"@^(!#[9#)H/H!CP)#X<0`0``#[;`_R2%``0``,=$)!`!````QT0D#`$` -M``")7"0(BT0D)(E$)`2+5"1`B10DZ/S___^$P`^%[@```(M,)$C'`0(```"X -M`0```.F'`0``QT0D$`$```#'1"0,`````(E<)`B+="0DB70D!(M$)$")!"3H -M_/___X3`#X6J````BU0D2,<"`@```+@!````Z4,!``#'1"00`0````^VPHE$ -M)`R)7"0(BTPD)(E,)`2+="1`B30DZ/S___^$P'5KBT0D2,<``@```+@!```` -MZ00!``#'1"00``````^VPHE$)`R)7"0(BU0D)(E4)`2+3"1`B0PDZ/S___^$ -MP'4LBW0D2,<&`@```+@!````Z<4```#&0Q0$BT0D2,<``````+@!````Z:T` -M``"+1"1`!30)``")!"3H_/___X3`=!2+5"1(QP(!````N`$```#IA````(![ -M).%U4(![)0%U2H![)@]U1(![*0%U/@^V0RC!X`@/ME,G`=`/M\")1"0$BTPD -M0(D,).C\____.T-(=02%P'45QD,4!(MT)$C'!@````"X`0```.LNN`````#K -M)XGVBU0D0`^V@C4&``!KP%R-M`)``0``BY*H!0``N.P�#I4_O__XM<)"R+ -M="0PBWPD-(ML)#B#Q#S#C;0F`````(/L'(M$)"R)1"0,BT0D*(E$)`B+1"0D -MB40D!(M$)""+`(D$).C\____@\0<PXUV`%575E.#[$R+;"1DBT0D8(N87`H` -M`&;'11[_#XU$)#")1"0(B6PD!(M4)&")%"3H_/___X3`=`F+1"0PZ>,+``"+ -M120E____`#WA`1``#X7=````QP0DB!,``.C\____#[=5$&:!^H4`#X>,"P`` -M#[?"BW0D8`^VC`:P!```N/____^`^?]T8F:#^G]W'0^VP8M\)&"+EW`%``!I -MP"0!``"+1!`L#[9`!.L_9H'Z@0!W'0^VP8MT)&"+EJ@%``!IP!0-``"+1!`( -M#[9`!.L;#[;!BWPD8(N7C`4``&G`L````(M$$%0/MD`$#[;`BU0D8`^VA`(V -M!0``:\!<C80"0`$``(E$)!B+DJ@%```/ML%IP!0-```!PHE4)"#'1"0<```` -M`,=$)"0`````Z6(!```/MU40N?\```!F@?J%`'</#[?"BWPD8`^VC`>P!``` -M#[=U)&:!_N$!=0\/MD4F@^@1/`$/AK@```!F@?J%`'=S#[?"BWPD8`^VA`>P -M!```//]T8&:#^G]W&0^VP(N7<`4``&G`)`$``(M$$"P/MD`$ZT9F@?J!`'<= -M#[;`BWPD8(N7J`4``&G`%`T``(M$$`@/MD`$ZR(/ML"+?"1@BY>,!0``:<"P -M````BT005`^V0`3K!;C_____#[;`BU0D8`^VA`(V!0``:\!<C80"0`$``(E$ -M)!@/M\%IP"0!```#@G`%``")1"0<9H'^X0%U1.LP#[?!:<"P````BTPD8`.! -MC`4``(E$)"2+<%2)="08QT0D'`````#'1"0@`````.M!#[95)HU"[SP!=B:- -M0O\\`78?9H'Y_P!T"HM\)!SV1R<$=0[&110&N`````#IH0D``,=$)"`````` -MQT0D)`````"-1"1(B40D!(M$)&")!"3H_/___V:)1"069HE%'HM4)&")%"3H -M_/___XE$)"BX`@```(-\)"@`#X14"0``BTPD*(E-5`^W="06B70D$&G&L`0` -M`(T\&(U'((M4)&`K@EP*``")PL'Z'XM,)&`#@6`*```3D60*``"+3"1(B4$@ -MBTPD2(E1)(M<)"B+0PR+4Q"+3"1(B4$HBTPD2(E1+(M$)$@/MW0D%F:)<`BX -M`````,8$.`"#P`$]L`0``'7R9H%]).$!=6@/MD4F@^@1/`%W78U$)#>)1"0, -MBT0D2`^V0`B)1"0(B6PD!(M$)!R)!"3H_/___XV'(`0``(M4)&`K@EP*``") -MPL'Z'XM,)&`#@6`*```3D60*``"+3"1(B4$0BTPD2(E1%.EF`0``D(M<)!@/ -MME,&]L(!=2>+120E____`#WA`1``#X3F````BW0D'`^V1B2#X`6#^`4/A=(` -M``#V168@=!*-1"0WB40D!(DL).C\____ZR2-1"0WB40D#(M$)$@/MD`(B40D -M"(EL)`2+1"0<B00DZ/S___^-AR`$``"+5"1@*X)<"@``B<+!^A^+3"1@`X%@ -M"@``$Y%D"@``BTPD2(E!$(M,)$B)411F@7TDX0%U#P^V12:#Z!$\`0^&JP`` -M`(M<)!P/ME,DB="#X`:#^`8/A94```#VP@$/A(P```")^(MT)&`KAEP*``") -MPL'Z'P.&8`H``!.69`H``(M,)$B)01B+3"1(B5$<ZU_VP@)T6HGXBUPD8"N# -M7`H``(G"P?H?`X-@"@``$Y-D"@``BTPD2(E!&(M,)$B)41R-AR`$```K@UP* -M``")PL'Z'XM,)&`#@6`*```3D60*``"+3"1(B4$0BTPD2(E1%(M$)$B`2`$" -M#[95/8M$)$AFB5`"@'T]`'0XO@````"[`````(M$)"B+2`B+542+!!J)!!F+ -M1!H$B409!(M$&@B)1!D(@\8!@\,,#[9%/3GP=]*+52"+1"1(B5`,9H%]).$! -M=5</MD4F@^@1/`%W3`^W1"06B40D#(M$)$B)1"0(B6PD!(M4)!B)%"3H_/__ -M_XU$)#>)1"0,B7PD"(EL)`2+3"08B0PDZ/S___^+7"08@&,(_NG$!```B?:+ -M="08#[9&!J@"#X1$!```BT0D2,9`!OZ+1"1(@&`'_H-\)!P`#X3%````BT0D -M'`^V4"2)T(/@!H/X!@^%KP```/;"`0^$I@````^W1"06B40D#(M$)$B)1"0( -MB6PD!(DT).C\____]D5F`70/BT0D2`^W0`C!X`.(1"0XC40D-XE$)`R)?"0( -MB6PD!(M4)!B)%"3H_/____9%9@%T"HM,)!B`20@!ZPB+7"08@&,(_L8'H8MT -M)!P/MH:V````@^`/#[97`8/B\`G"B%<!#[=&'(/``6;!P`AFB4<"B?.!PZ`` -M``#I6@,``(VT)@````!F@7TDX0$/A2D"```/MD4F/`]T$KL`````/!`/A3(# -M``#IL`````^V52C!X@@/MD4G`<*+1"1(QD`$#8M$)$B`8`7^@$PD1PB+7"1( -M#[9%%8MT)&`/MH[6````T^!F"4,(BTPD2`^V00&#X!^#R""(00&+12J)AS@$ -M``"+12Z)ASP$``!FP<((9HF71`0```^V12F(AT($``#&!Y&+5"0<#[="'(/` -M`6;!P`AFB4<"BTPD'`^VD;8```"#X@\/MD<!@^#P"="(1P&)RX'#H````.E] -M`@``BU0D2`^V116+7"1@#[:+U@```-/@9@E"",8'@6;'1P+__XMT)"`/MI:+ -M````@^(/#[9'`8/@\`G0B$<!@WTT`'4.QD44(;@`````Z2T$``#V12<!="Z+ -M73B%VW0GB5PD!(M4)&"+@O@)``")!"3H_/___X/@#P^V5P&#XO`)PHA7`>L$ -MBUPD((M5-`^V0@&^$````#R`#X2"````/(!W'CP5=Q$\$(UT)@!S9H/H`CP! -M=T3K5CP7C78`=SOK6SR%="X\A8VV`````'<0/(%T0CR"=2.-M@````#K(CR0 -M<A>^*````#R2C78`=C(\DW4'OHP```#K)[X$````ZR`/MD($C32%"````.L3 +M``"#[$R+1"10#[90,XE4)$0/ME`RB50D0`^V4#&)5"0\#[90,(E4)#@/ME`O +MB50D-`^V4"Z)5"0P#[90+8E4)"P/ME`LB50D*`^V4"N)5"0D#[90*HE4)"`/ +MME`IB50D'`^V4"B)5"08#[90)XE4)!0/ME`FB50D$`^V4"6)5"0,#[90)(E4 +M)`B)1"0$QP0D`````.C\____@\1,PY"-="8`4X/L&(M4)""+3"0D#[9!`8A" +M`0^V00*(0@*+002)0@2+6@@/MD(!C01`P>`"BU$(B40D"(E4)`2)'"3H_/__ +M_X/$&%O#C70F`(V\)P````!3BU0D"(M:1`^V2CRX`````,8$$`"#P`&#^'!U +M](E:1(A*/%O#C70F`(V\)P````"+5"0$N`````"-M"8`````Q@00_X/``3T` +M`@``=?+SPXM$)`2Y`````#L`=`V+2`2+$8M!!(E"!(D0B<C#D)"04XM,)`B+ +M&8N#!`$``(G"@>)^__[_B9,$`0``)7[_\O^+402)`HM1!(E"#(M1!(E"$(M1 +M!(E"%(M1!(E"&(M1!(E"!(L!BX!4`0``HP`````E_@#__XL1B8)4`0``6\.0 +M4XM<)`@/MDPD#(L#BY`$`0``B14`````#[=#)&8]@&1T#F8]@)%T"&8]@)1U +M$XGV#[;)@\$(N`$```#3X`G"ZP\/MLF#P0RX`0```-/@"<*+`XF0!`$``%O# +MC;8`````4XM<)`@/MDPD#(L#BY`$`0``B14`````#[=#)&8]@&1T#F8]@)%T +M"&8]@)1U$XGV#[;)@\$(N/[____3P"'"ZP\/MLF#P0RX_O___]/`(<*+`XF0 +M!`$``%O#C;8`````@^P(B1PDB70D!(MT)`P/MDPD$(#Y_W1N@/D?=S.+GA@! +M``"Z`0```-/BB=#WT"'8B888`0``BX98`0``HP`````AT'1!B898`0``ZSF- +M=@"+GAP!```/ML&#Z""Z`0```(G!T^*)T/?0(=B)AAP!``"+AF`!``"C```` +M`"'0=`:)AF`!``"+'"2+="0$@\0(P^L-D)"0D)"0D)"0D)"0D(/L'(E<)`R) +M="00B7PD%(EL)!B+;"0H#[94)"2+1"0@BSB`^@-V?`^VVL'C`XVT'P`"``#' +M!@P!``#'!"00)P``Z/S___^-G!\$`@``#[95`\'B&`^V10+!X!`)P@^V10`) +MP@^V10'!X`@)PHD3QP80`0``QP0D$"<``.C\____#[95!\'B&`^V10;!X!`) +MP@^V100)P@^V107!X`@)PHD3ZWH/MMK!XP.-M#L``@``QP8,`0``QP0D$"<` +M`.C\____C9P[!`(```^V50/!XA@/MD4"P>`0"<(/MD4`"<(/MD4!P>`("<*) +M$\<&$`$``,<$)!`G``#H_/___P^V50?!XA@/MD4&P>`0"<(/MD4$"<(/MD4% +MP>`("<*)$XM<)`R+="00BWPD%(ML)!B#Q!S#ZPV0D)"0D)"0D)"0D)"0@^P< +MB5PD%(ET)!B+="0@#[9<)"2)7"0$B30DZ/S____'!"00)P``Z/S___^)7"0$ +MB30DZ/S___^+7"04BW0D&(/$',.-M@````"-OP````!55U93@^P,BVPD(`^V +M5"0D#[9$)"B(1"0+BT4`@'TF``^$0@$``(V8A`$``(VXT`$``+X`````#[;2 +MB50D!(GVBT0D!(GQT_BH`0^$`P$``(/^`W8.BP.C`````(/@_HD#ZPR+`Z,` +M````@^#^B0/'!"00)P``Z/S___^`?"0+`'0^@_X#=@Z+!Z,`````@\@"B0?K +M#(L'HP````"#R`*)!XGZ@_X#=@F+`J,`````ZP>+`J,`````J`)T9.OEB?:# +M_@-V+,>#K`````````#'!"00)P``Z/S___^+@[````"C`````(/(`8F#L``` +M`.LTQX/,`````````,<$)!`G``#H_/___XN#T````*,`````@\@!B8/0```` +MZR.-=@"#_@-V&\=#_`$```"+`Z,`````@\@!B0/K&8VV`````,=#_`$```"+ +M`Z,`````@\@!B0.#Q@&#PPB#QP0/MD4F.?`/A]C^__^#Q`Q;7E]=PU93@^P$ +MBTPD%`^V7"08BT0D$(LP@_D#=A>-E,Z``0``BP*C`````(/@_HD"ZQ6)]HV4 +MSH`!``"+`J,`````@^#^B0*$VW19@_D#=A6-E([0`0``BP*C`````(/(`HD" +MZQ.-E([0`0``BP*C`````(/(`HD"C82.T`$``)"-="8`@_D#=@N+$(D5```` +M`.L)D(L0B14`````]L("='/KX9"#^0-V-8T<S0````"-A#,P`@``QP`````` +MQP0D$"<``.C\____C9PS-`(``(L#HP````"#R`&)`^LVC1S-`````(V$,U`" +M``#'``````#'!"00)P``Z/S___^-G#-4`@``BP.C`````(/(`8D#C78`@\0$ +M6U[#D)"0D)"0D)"0D%.+3"0(BQD/MX&("P``@\`!9HF!B`L``&8[@8P+``!R +M"6;'@8@+``````^W@8@+``#!X`(#@8`*``"+5"0,BQ*)$`^W@8@+``")@RP! +M``!;P^L-D)"0D)"0D)"0D)"0D%93BTPD&`^W5"00#[9T)!2+7"0,N`````"- +MM"8`````Q@0(`(/``8/X!'7T9H'B_P\/MP%F)0#P"=!FB0$/ME,)P>(,BP$E +M_P_P_PG0B0$/MD,&@^`"@_@!&=*#X@*#P@'!X@4/MD$#@^`?"="#R!"#X/>( +M00/V0P8!=!:)\H/B?\'B!`^W00)F)0_X"=!FB4$"6U[#C70F`(V\)P````"+ +M3"0$BU0D"+@`````C78`Q@00`(/``8/X#77T#[9!)8@"#[9!)HA"`0^V02>( +M0@(/MD$HB$(##[9!*8A"!`^V02J(0@4/MD$KB$(&]D%F!'0C#[9!+(A""`^V +M02V(0@D/MD$NB$(*#[9!+XA""P^V03"(0@RX`0```,.0C70F`%575E.+;"04 +MBWPD&+H`````O@$```#K4`'2B=C3^*@!=!#WP@````%U%H'R=R?;`.L.]\(` +M```!=`:!\G<GVP"#Z0&#^?]UT(/&`8/^"748B=#!Z!"(10")T,'H"(A%`8A5 +M`EM>7UW##[9</O^Y!P```.NDC;8`````C;\`````BT0D!(N`.`H``(L0BU`$ +MBU`(BT`,HP````##D(UT)@!75E.#[!"+?"0@BW0D)(M&5`^V7RN$VW0F#[90 +M";D`````]L(!=!'K%HVT)@````")T-/XJ`%U!X/!`3C9=?'&1B8,B70D!(D\ +M).C\____@\006UY?PXUV`(V\)P````"#[`R+1"00BQ!FQT`R`0#&0"8=B40D +M!(D4).C\____@\0,PXVV`````(V\)P````!64X/L%(M$)""+,`^W1"0DP>`" +M`X;$!0``BQB%VW1$BQ8/MT,>9L'H!0^WP(T$A0`#``")@G`!``"+%@^W2QZ# +MX1^X`0```-/@B8)T`0``QT0D"`````")7"0$B30DZ/S___^#Q!1;7L.-M"8` +M````55=64X/L'(ML)#"`?2L`="NY`````(M$)#3V0`D!=!#K&HM4)#0/MD() +MT_BH`74,@\$!#[9%*V8YR'?FBU0D-(M"*(7`="6#P%B+512)1"0$B10DZ/S_ +M__^+5"0TBT(HB40D!(DL).C\____BT0D-(/`.(M4)#0Y0C@/A(\!``")1"08 +MBT0D&(D$).C\____B<:#>"``#X1.`0``@'A/``^$F0```&:#?5``#X2.```` +MOP````"-!+T``````X7$!0``BQB%VW1G#[=#$&8[1AQU768]A0!W5P^WP("\ +M*+`$``#_=$J+50`/MT,>9L'H!0^WP(T$A0`#``")@G`!``"+50`/MTL>@^$? +MN`$```#3X(F"=`$``,9#%"''1"0(`````(E<)`2)+"3H_/___X/'`0^W15`Y +M^`^/=____XM&(,=`8`````#V1B@$=2&)+"3H_/___XM&(,=$)`@!````B40D +M!(DL).C\____B?:+5B`/MH*8````#[92`HT$@`^VA`(`````#[95(@^V32&) +M1"0,B50D"(E,)`3'!"18````Z/S___^+1B"+E3P%``")1"0(B50D!,<$)`$` +M``#H_/___XM&((N5/`4``(E$)`B)5"0$QP0D!@```.C\____QT8@`````(M4 +M)#2`:@H!B70D!(DL).C\____BU0D&(M$)#0Y4#@/A77^__^+1"0TQT`H```` +M`(M%`(N(6`$``(D-`````(7)=`F+10")B%@!``"#Q!Q;7E]=PXGV5U93@^P@ +MBW0D,(L^#[9?*X3;=#"-AY`+``"Y`````#GP=1CK'P^VP8G"P>(&C82"D`L` +M`(T$!SGP=`Z#P0$XV77CZP6Y``````^VT8G0P>`&C020BXP'F`L``(7)#X1_ +M````]D$&`G1YC80'D`L``#E!&'5M#[9!-(3`=`B#P`&(033K78M1+(/J((U9 +M+(U"(#G8=$V#>@P`=3KK"8UV`(-Z#`!U+\9!-`''1"00``````^V@HL```") +M1"0,B50D"(E,)`2+A_@)``")!"3H_/___^L-BU(@@^H@C4(@.=AUOH/$(%M> +M7\.-M"8`````@^P<B5PD#(ET)!")?"04B6PD&(M<)""+?"0DBT=,BV@<#[=7 +M$&:!^H4`=W0/M\(/MH0#L`0``#S_=&5F@_I_=Q\/ML"+DW`%``!IP"@!``"+ +M1!`L#[9`!.M+C;8`````9H'Z@0!W&0^VP(N3J`4``&G`%`T``(M$$`@/MD`$ +MZR4/ML"+DXP%``!IP+````"+1!!4#[9`!.L,C;0F`````+C_````#[:T% +M``"+1U"%P'0,B40D!(D<).C\____B7PD!(D<).C\____B6PD!(GR#[;":\!< +MC80#0`$``(D$)/^5G````(M<)`R+="00BWPD%(ML)!B#Q!S#C70F`(/L'(E< +M)`R)="00B7PD%(EL)!B+="0DBUPD*`^W;"0L9H%^).$!=1`/MD8F@^@1OP`` +M```\`78NBT0D((L0B[IP!0``#[=&$+G8)@$`9CV%`'<1#[?`#[:$`K`$``!I +MR"@!```!S\9#!`6`8P7^@"/?N`````!F@7XDX0%U$@^V1B:#Z`$\`0^6P`^V +MP(UV`,'@!P^V$X/B?PG"B!,/MD9F@^`!P>`&@^*_"<*($_9&9@%T#HD\).C\ +M____9HE#".L$9HEK"`^W0PB(1A5F@7XDX0%U*P^V5B:-0O\\`7<0#[96)X/B +M#^LIC;0F`````(U"[[H/````/`%V%HUT)@"Z`````(-_-`!T!P^V5TV#X@\/ +MM@.#X/`)T(@#BUPD#(MT)!"+?"04BVPD&(/$',.#[#R)7"0LB70D,(E\)#2) +M;"0XBUPD1`^V0R0\"'01/"AT#3RH=`D\B'4+D(UT)@"#2V0*ZQX\"G06/"J- +M="8`=`X\JG0*/(IU"HVV`````(-+9`(/MWLD9H'_X0%U&0^V0R:#Z!$\`7<. +M@TMD"+@`````Z7T%``"+0R0E____`(E$)"`]X0$0``^%Y`````^W4Q!F@?J% +M``^',@4```^WPHMT)$`/MHP&L`0``+C_____@/G_=&EF@_I_=QT/ML&+="1` +MBY9P!0``:<`H`0``BT00+`^V0`3K1F:!^H$`=QT/ML&+="1`BY:H!0``:<`4 +M#0``BT00"`^V0`3K(@^VP8MT)$"+EHP%``!IP+````"+1!!4#[9`!(VT)@`` +M```/ML"+5"1`#[:$`C8%``!KP%R-M`)``0``BY*H!0``#[;!:<`4#0``QT0D +M)`````#V1`(U$`^%2@(``,9#%`2+5"1(QP(`````N`$```#I@@0```^W4Q"Y +M_P```+C_____9H'ZA0!W?@^WPHMT)$`/MHP&L`0``+C_____@/G_=&)F@_I_ +M=QT/ML&+="1`BY9P!0``:<`H`0``BT00+`^V0`3K/V:!^H$`=QT/ML&+="1` +MBY:H!0``:<`4#0``BT00"`^V0`3K&P^VP8MT)$"+EHP%``!IP+````"+1!!4 +M#[9`!`^VR0^VP(E$)"B+5"1`#[:L$#8%``!KQ5R-M`)``0``#[?!:<`H`0`` +M`X)P!0``B40D)&:!_^$!=0L/MD,F@^@!/`%V*6:!^?\`=`J+3"0D]D$G!'48 +MQD,4!HMT)$C'!@````"X`0```.F$`P``BU0D)`^V0B2)PH/B!8/Z!74ABTPD +M0`^V02PZ039R%(MT)$C'!@$```"X`0```.E1`P``@WPD)``/A/8```"#^@4/ +MA>T```")7"0$BT0D)(D$).C\____A,!U&,9#%`2+5"1(QP(`````N`$```#I +M$0,``(M,)"2`>4\?=A2+="1(QP8!````N`$```#I\P(``/9#9@%T$VO%7(M4 +M)$#VA`)(`0```707ZV!KQ5R+3"1`]H0!2`$```$/A!@"``"+="0HB70D!(M$ +M)$")!"3H_/___X3`=!2+5"1(QP(!````N`$```#IF0(``/9#9@$/A.(!``!K +MQ5R+3"1`]H0!2`$```$/A,T!``"+="0DB30DZ/S___]F@_@?#X:W`0``BT0D +M2,<``0```+@!````Z5`"``#V1@8"=#6!?"0@X0$0``^$CP$``(M4)"0/MD)/ +M.D).<BB+3"1(QP$!````N`$```#I&P(``(VV`````(%\)"#A`1``#X1:`0`` +MBW0D)`^W1CJ`>R3A#X5(`0``@'LE`0^%/@$``-'HB<*#X@$/MD,F@^@&/`D/ +MAQ`!```/ML#_)(4`!```QT0D$`$```#'1"0,`0```(E<)`B+1"0DB40D!(M4 +M)$")%"3H_/___X3`#X7N````BTPD2,<!`@```+@!````Z8<!``#'1"00`0`` +M`,=$)`P`````B5PD"(MT)"2)="0$BT0D0(D$).C\____A,`/A:H```"+5"1( +MQP("````N`$```#I0P$``,=$)!`!````#[;"B40D#(E<)`B+3"0DB4PD!(MT +M)$")-"3H_/___X3`=6N+1"1(QP`"````N`$```#I!`$``,=$)!``````#[;" +MB40D#(E<)`B+5"0DB50D!(M,)$")#"3H_/___X3`=2R+="1(QP8"````N`$` +M``#IQ0```,9#%`2+1"1(QP``````N`$```#IK0```(M$)$`%-`D``(D$).C\ +M____A,!T%(M4)$C'`@$```"X`0```.F$````@'LDX750@'LE`75*@'LF#W5$ +M@'LI`74^#[9#*,'@"`^V4R<!T`^WP(E$)`2+3"1`B0PDZ/S___\[0TAU!(7` +M=17&0Q0$BW0D2,<&`````+@!````ZRZX`````.LGB?:+5"1`#[:"-08``&O` +M7(VT`D`!``"+DJ@%``"X[`8-`.E3^___BUPD+(MT)#"+?"0TBVPD.(/$/,.- +MM"8`````@^P<BT0D+(E$)`R+1"0HB40D"(M$)"2)1"0$BT0D((L`B00DZ/S_ +M__^#Q!S#C78`55=64X/L3(M$)&"+F%P*``"+5"1D9L="'O\/C40D,(E$)`B) +M5"0$BTPD8(D,).C\____A,!T"8M,)##I3`P``(MT)&2+1B0E____`#WA`1`` +M#X7=````QP0DB!,``.C\____#[=6$&:!^H4`#X?Q"P``#[?"BWPD8`^VC`>P +M!```N/____^`^?]T8F:#^G]W'0^VP8MT)&"+EG`%``!IP"@!``"+1!`L#[9` +M!.L_9H'Z@0!W'0^VP8M\)&"+EZ@%``!IP!0-``"+1!`(#[9`!.L;#[;!BW0D +M8(N6C`4``&G`L````(M$$%0/MD`$#[;`BWPD8`^VA`<V!0``:\!<C80'0`$` +M`(E$)!R+EZ@%```/ML%IP!0-```!PHE4)"3'1"0@`````,=$)"@`````Z7(! +M``"+1"1D#[=0$+G_````9H'ZA0!W#P^WPHMT)&`/MHP&L`0``(M\)&0/MW<D +M9H'^X0%U#P^V1R:#Z!$\`0^&N````&:!^H4`=W,/M\*+?"1@#[:$![`$```\ +M_W1@9H/Z?W<9#[;`BY=P!0``:<`H`0``BT00+`^V0`3K1F:!^H$`=QT/ML"+ +M?"1@BY>H!0``:<`4#0``BT00"`^V0`3K(@^VP(M\)&"+EXP%``!IP+````"+ +M1!!4#[9`!.L%N/____\/ML"+5"1@#[:$`C8%``!KP%R-A`)``0``B40D'`^W +MP6G`*`$```."<`4``(E$)"!F@?[A`75(ZS`/M\%IP+````"+3"1@`X&,!0`` +MB40D*(MP5(ET)!S'1"0@`````,=$)"0`````ZTF+?"1D#[97)HU"[SP!=BJ- +M0O\\`78C9H'Y_P!T"HM$)"#V0"<$=1*+5"1DQD(4!KD`````Z?8)``#'1"0D +M`````,=$)"@`````C40D2(E$)`2+3"1@B0PDZ/S___]FB40D&HMT)&1FB48> +MBWPD8(D\).C\____B<6Y`@```(7`#X2J"0``BT0D9(EH5`^W5"0:B50D%&G" +ML`0``(T\&(U'((M,)&`K@5P*``")PL'Z'P.!8`H``!.19`H``(M,)$B)02"+ +M3"1(B5$DBT4,BU40BTPD2(E!*(M,)$B)42R+1"1(#[=T)!IFB7`(N`````"- +M=@#&!#@`@\`!/;`$``!U\HM$)&1F@7@DX0%U9HG"#[9`)H/H$3P!=UF-1"0W +MB40D#(M$)$@/MD`(B40D"(E4)`2+3"0@B0PDZ/S___^-AR`$``"+7"1@*X-< +M"@``B<+!^A\#@V`*```3DV0*``"+3"1(B4$0BTPD2(E1%.E&`0``D(M$)!P/ +MME`&]L(!=2N+3"1DBT$D)?___P`]X0$0``^$M@```(M<)"`/MD,D@^`%@_@% +M#X6B````BW0D9/9&9B!T$HU$)#>)1"0$B30DZ/S____K*(U$)#>)1"0,BT0D +M2`^V0`B)1"0(BT0D9(E$)`2+5"0@B10DZ/S___^-AR`$``"+3"1@*X%<"@`` +MB<+!^A^)RP.!8`H``!.19`H``(M,)$B)01"+3"1(B5$4B?@K@UP*``")PL'Z +M'XMT)&`#AF`*```3EF0*``"+3"1(B4$8BTPD2(E1'.MK]L("=&:)^(M4)&`K +M@EP*``")PL'Z'XM,)&`#@6`*```3D60*``"+3"1(B4$8BTPD2(E1'(V'(`0` +M`(M<)&`K@UP*``")PL'Z'P.#8`H``!.39`H``(M,)$B)01"+3"1(B5$4BT0D +M2(!(`0*+1"1D#[90/8M$)$AFB5`"BU0D9(!Z/0!T/+X`````NP````"+30B+ +M1"1DBU!$BP0:B009BT0:!(E$&02+1!H(B409"(/&`8/##(M4)&0/MD(].?!W +MSHM,)&2+42"+1"1(B5`,9H%Y).$!=5$/MD$F@^@1/`%W1@^W1"0:B40D#(M$ +M)$B)1"0(B4PD!(M<)!R)'"3H_/___XU$)#>)1"0,B7PD"(MT)&2)="0$B1PD +MZ/S___^`8PC^Z0P%``"+5"0<#[9"!J@"#X2"!```BT0D2,9`!OZ+1"1(@&`' +M_H-\)"``#X33````BTPD(`^V422)T(/@!H/X!@^%O0```/;"`0^$M`````^W +M1"0:B40D#(M$)$B)1"0(BUPD9(E<)`2+="0<B30DZ/S____V0V8!=`^+1"1( +M#[=`",'@`XA$)#B-1"0WB40D#(E\)`B+1"1DB40D!(M4)!R)%"3H_/___XM, +M)&3V068!=`J+7"0<@$L(`>L(BW0D'(!F"/[&!Z&+5"0@#[:"M@```(/@#P^V +M5P&#XO`)PHA7`8M,)"`/MT$<@\`!9L'`"&:)1P*)RX'#H````.F``P``D(M< +M)&1F@7LDX0$/A3D"```/MD,F/`]T$KL`````/!`/A5H#``#IM@```(MT)&0/ +MME8HP>((#[9&)P'"BT0D2,9`!`V+1"1(@&`%_H!,)$<(BUPD2`^V1A6+="1@ +M#[:.U@```-/@9@E#"(M,)$@/MD$!@^`?@\@@B$$!BTPD9(M!*HF'.`0``(M! +M+HF'/`0``&;!P@AFB9=$!```#[9!*8B'0@0``,8'D8M<)"`/MT,<@\`!9L'` +M"&:)1P(/MI.V````@^(/#[9'`8/@\`G0B$<!BUPD(('#H````.F?`@``BU0D +M2(MT)&0/MD85BUPD8`^VB]8```#3X&8)0@C&!X%FQT<"__^+="0D#[:6BP`` +M`(/B#P^V1P&#X/`)T(A'`8M$)&2#>#0`=0[&0!0AN0````#IA`0``(M4)&3V +M0B<!="Z+6CB%VW0GB5PD!(M,)&"+@?@)``")!"3H_/___X/@#P^V5P&#XO`) +MPHA7`>L$BUPD)(MT)&2+5C0/MD(!OA`````\@'1\/(!W'#P5=Q(\$'-D@^@" +M/`%W0I"-="8`ZT\\%W<WZU<\A8VV`````'0D/(5W#CR!=#X\@HUT)@!U&^L@ +M/)!R%;XH````/)*0=C(\DW4'OHP```#K)[X$````ZR`/MD($C32%"````.L3 MO@@```#K#+X,````ZP6^'````(GRP>H"BT0D2(A0!(M,)$AFP>H(@^(!#[9! -M!8/@_@G0B$$%C9<@!```BT4TB70D"(E$)`2)%"3H_/___^D>`0``#[9%)(/H -M!#RK=ST/ML#_)(4H!```#[9%+,'@"`^V52V-#!"#^0UW%K@!````T^"IV#X` -M`'0(BT0D2(!(`02+1"1(@$@!`>L(BT0D2(!@`?N+1"1(QD`$#8M$)$B`8`7^ -MBU0D2`^V116+7"1@#[:+U@```-/@9@E""(M$)$B`8`$?QH<@!```!HM<)!R! -MPZ````")7"0$C8<A!```B00DZ/S___^)7"0$C8<E!```B00DZ/S___^-CT0$ -M``"-522+122)AT0$``"+0@2)002+0@B)00B+0@R)00R+="0<BX:H````B8<X -M!```BX:L````B8<\!```Q@>1#[:6M@```(/B#P^V1P&#X/`)T(A'`0^W1AR# -MP`%FP<`(9HE'`H7;='N+`XE'!(M#!(E'".MNJ`%T:@^W1"06B40D#(M$)$B) -M1"0(B6PD!(M$)!B)!"3H_/____9%9@%T#XM$)$@/MT`(P>`#B$0D.(U$)#>) -M1"0,B7PD"(EL)`2+5"08B10DZ/S____V168!=`J+3"08@$D(`>L(BUPD&(!C -M"/Z+="1@BX;$!0``BWPD$(DLN`^W5"069L'J!0^WT@^W7"06B=F#X1^X`0`` -M`-/@"826R`4``(M%)"7___\`/>$!$`!U-(U$)$2)1"0,QT0D"`````")7"0$ -MBT0D&(D$).C\____#[9$)$>#X!^#R$"(1"1'Z<4```!F@7TDX0%U10^V12:# -MZ!$\`7<ZBU0D)(E4)`2+3"1@B0PDZ/S___^-1"1$B40D#(MT)"0/MD8TB40D -M"(E<)`2+?"08B3PDZ/S____K>(M$)!R)1"0$BU0D8(D4).C\____C40D1(E$ -M)`R+3"0<#[9!0HE$)`B)7"0$BUPD&(D<).C\____BW0D'`^V5B2)T(/@!H/X -M!G4N]L(!="D/MD0D1X/@'X/(8(A$)$</ME9"@^)_P>($#[=$)$9F)0_X"=!F -MB40D1HU$)$2)1"0$BWPD8(D\).C\____N`,```#K*8M4)&`/MH(U!@``:\!< -MC80"0`$``(E$)!B+DJ@%``"X[`8-`.GR]/__@\1,6UY?7<.0C70F`%575E.# -M[!R+="0PQT0D%`````"-OMP```#IH@$``(GVB3PDZ/S___^)PX-X3`!U,(DT -M).C\____B4-,A<!U(8V6W````(N&W````(E8!(D#B5,$B9[<````Z8@!``") -M]HM#)"7___\`/>$!$``/A-,````/MT,09CV```^$Q0````^VT&:)4Q!F@_I_ -M=A-F@7LDX0%U(@^V0R:#Z!$\`7<79H'ZA0!W$`^WP@^VC`:P!```@/G_=1C& -M0Q0&B5PD!(DT).C\____Z?,```"-=@`/MVLD9H']X0%U%0^V0R:(1"0;@^@1 -M/`$/A^````#K%0^VP6G`)`$```.&<`4``(E$)!3K#`^V1"0;@^@!/`%V-6:! -M^H``="YF@?WA`74+#[9#)H/H$3P!=AR+1"04]D`G!'42QD,4!HE<)`2)-"3H -M_/___^MZB5PD!(DT).C\____@_@"=PN#^`%S)HUT)@#K$(/X`W59B?:-O"<` -M````ZT&)7"0$B30DZ/S___^)]NL^@WM4`'0/C4-4B40D!(DT).C\____C9;< -M````BX;<````B5@$B0.)4P2)GMP```#K,XE<)`2)-"3H_/___Y`YOMP````/ -MA53^___K&`^VP6G`)`$```.&<`4``(E$)!3I'____X/$'%M>7UW#B?:#[#R) -M7"0LB70D,(E\)#2);"0XBWPD0(MW+(LN#[9&"*@0=`S&A[0````&Z9,"```/ -MMI>T````@/H!#X2#````@/H!<AN`^@0/A*H```"`^@8/A<,"``#I9P(``(UT -M)@#&A[0````!B7PD!(DL).C\____BT0D1,9`%(&`3@@(@WA4`'03BT0D1(/` -M5(E$)`2)+"3H_/___XN%W````(M4)$2)4`2)`HV%W````(E"!(F5W````(DL -M).C\____Z5<"``"#X/>(1@B`A[<````!QH>T`````(M,)$3&010"B4PD!(DL -M).C\____B2PDZ/S____I(@(``,:'MP````"+1"1$@WA4`'0/@\!4B40D!(DL -M).C\____BT\@A<D/A*`!``"+402-0@&)002#^@4/AXX!``"+A=P```"+5"1$ -MB5`$B0*-A=P```")0@2)E=P```"`?R;_=":+1S2%P'0&@'@F`'09B7PD",=$ -M)`0"````B30DZ/S____IFP$```^V1@B#X/>#R!"(1@B+5S"%TG4-@'X*`'4P -MZ0(!``")]L=$)!``````QT0D#`(````/MD=-B40D"(E4)`2)-"3H_/___^E1 -M`0``QT0D(`````#&1"0G`(U..(E,)!R+1"0<B00DZ/S___^)1"0HBT8\BU0D -M*(E6/(M,)!R)"HE"!(D0BT(@A<!T(HE$)`B+A3P%``")1"0$QP0D!0```.C\ -M____BT0D*(!(*`*+5"0HB50D",=$)`0&````B30DZ/S___^+3"0H@'E/`'1` -MBUPD((/#`8%\)"!_EI@`=RN)]HDL).C\____QP0D`0```.C\____BT0D*(!X -M3P!T"X/#`8'[@9:8`'77B5PD((!$)"<!#[94)"<X5@H/ASW___^+1S2%P'42 -MQD<F`XE\)`2)+"3H_/___^MAB00DZ/S____K5P^V7R:`9@COBX7<````BTPD -M1(E(!(D!C87<````B4$$B8W<````B7PD",=$)`0&````B30DZ/S___^`^_]U -M$(E\)`B)="0$B2PDZ/S___^)+"3H_/___XM<)"R+="0PBWPD-(ML)#B#Q#S# -MB?955U93@^QLB[0D@````(N6<`4``+C<(@$`BXPDA````&:!>1"%`'<9BYPD -MA`````^W0Q`/MH0PL`0``&G`)`$``(T\`HN6.`H``('"0`@```^V1T+!X`@! -MPHL*B0T`````B<C!Z!"(1"1`BY8X"@``@<)`"```#[9'0L'@"`'"BT($HP`` -M``"(1"18B<+!Z@B(5"19P>@0B$0D6HN6.`H``('"0`@```^V1T+!X`@!PHM" -M"*,`````B$0D6XG"P>H(B%0D7,'H$(A$)%W&1"1>`,9$)%\`B<W![1@/MEPD -M0(M$)%R)1"00BT0D6(E$)`R);"0(B5PD!,<$)%@```#H_/___XG8@_`!B<*# -MX@%T((!\)$``=!F+E"2$````QD(4`+@`````Z;0"``"-="8`BXPDA````(!Y -M%(%U,XU$)%B)1"0,B6PD"(E<)`2)#"3H_/___XN<)(0```#&0Q0"N`````#I -M=@(``(VV`````(N,)(0```"+020E____`#WA`0X`=0[&010AN`````#I3`(` -M`(N$)(0```#V0&8!=3.$TG4O@'\F_W0IC40D6(E$)`R);"0(B5PD!(N4)(0` -M``")%"3H_/___[@`````Z0P"``")?"0$B30DZ/S___^)?"0$B30DZ/S___^+ -M%HN,)(0````/MT$>9L'H!0^WP(T$A0`#``")@G`!``"+!HN<)(0````/MTL> -M@^$?N@$```")U=/EB:AT`0``#[=#'L'@`@.&Q`4``,<```````^W2QZ)R&;! -MZ`4/M\"#X1^)T]/CB=GWT2&,AL@%``"+K"2$````#[=-'HG(9L'H!0^WP(/A -M']/B]](A5(94BU4`BT4$B4($B1`/MT4>C98T"0``B40D!(D4).C\____@&]/ -M`<9%%(&#?50`=!&)Z(/`5(E$)`2)-"3H_/___XU'$#E'$`^$[````(E$)"R- -MEC0)``")5"0\BTPD+(D,).C\____B<.+%@^W0!YFP>@%#[?`C02%``,``(F" -M<`$```^W2QZ#X1^Z`0```(G5T^6+!HFH=`$```^W0Q[!X`(#AL0%``#'```` -M```/MTL>B<AFP>@%#[?`@^$?B=73Y8GI]]$AC(;(!0``#[=+'HG(9L'H!0^W -MP(/A']/B]](A5(94#[=#'HE$)`2+1"0\B00DZ/S___^`;T\!@WM4`'0/C4-4 -MB40D!(DT).C\____C9;<````BX;<````B5@$B0.)4P2)GMP```"+5"0L.5<0 -M#X4B____BXPDA````(%A9/___O_&A[0````$B4PD!(D\).C\____N`$```"0 -MC70F`(/$;%M>7UW#D(VT)@````!55U93@^Q,#[=L)&2+5"1HB50D,(M$)&R) -M1"0TBWPD8(LWBX9<"@``B40D%`M4)#0/A(L"```/M]5IPK`$``"+7"04C0P8 -M]D$A`G05C025``````.&Q`4``(L`QD`4`NL3C025``````.&Q`4``(L`QD`4 -M(<'B`HE4)"R)T`.&Q`4``(L0BT(D)?___P`]X0$0``^$B@$```^W0A!F/84` -M=P\/M\`/MH0&L`0``#S_=16+1"0L`X;$!0``BP#&0!0&Z2X(```/ML!IP"0! -M```#AG`%``")1"08@'PD,P!Y70^V4"2)T(/@!H/X!G4?]L(!=!J+!HN06`$` -M`(D5`````(72=`B+!HF06`$``(L&BX!0`0``HP````"#R`*+%HF"4`$``(L& -MBX`$`0``HP````"`S/^+%HF"!`$``&;W02`""`^$X0```(!^*P`/A-<```#& -M1"0?`+L`````C78`B=H/MLL/MD<)T_BH`71'@/L#=AR+!@70`0``C02(BP"C -M`````,'H%(/@`>L:C78`BP8%T`$``(T$B(L`HP````#!Z!2#X`&$P'0+N`$` -M``#3X`A$)!^#PP&-0@$X1BMWGX!\)!\`=&(/MD0D'SA'"758B>AFP>@%#[?` -MB>F#X1^Z`0```-/BA52&5'4]BU0D&("ZM`````)W!\:"M`````.+1"0L`X;$ -M!0``BP")1"0$BTPD&(D,).C\____Z=(&``#'1"08`````/9$)#,!#X2_!@`` -MBT0D+`.&Q`4``(L(QD$4(8M!)"7___\`/>$!#@`/A)P&``"+EC@*``"!PD`( -M``"+7"08#[9#0L'@"`'"BP*C`````(N6.`H``('"1`@```^V0T+!X`@!PHL" -MHP````"+EC@*``"!PD@(```/MD-"P>`(`<*+`J,`````B4PD!(DT).C\____ -MZ3,&```/M_V-++T`````BX;$!0```>B+$&:!>B3A`0^%!P$```^V6B:`^Q`/ -MAP8&``"X`0```(G9T^"IP#````^%TP```*D```$`=5'VQ(`/A.(%``!IQ[`$ -M``"+7"04C0P8#[9!,XA"%(GH`X;$!0``BP#V0!,$#X2Z!0``@'@4``^$L`4` -M`(M0.(72#X2E!0``#[9!,X@"Z9H%``!IQ[`$``"+5"04C3P0B>@#AL0%``"+ -M$`^V1RJ(0A2)Z`.&Q`4``(L`@W@T``^$:`4```^VAR$$``")!"3H_/___XGJ -M`Y;$!0``BQ*+4B")PSG0=@*)TXU7*(GH`X;$!0``BP"+0#2)7"0(B50D!(D$ -M).C\____Z1\%``")Z`.&Q`4``(L`QD`4`.D,!0``B>@#AL0%``"+`(E$)""+ -M2$B)3"0DN/____^+7"0@9H%[$(4`=Q:)Z`.&Q`4``(L`#[=`$`^VA#"P!``` -M#[;`:<`D`0``BYYP!0```</&@[0`````#[93)(G0@^`&@_@T`0``]L(! -M#X1K`0``BWPD(,9'%`#V1V8@#X2+!```@WPD)``/A(`$``"+1"0D]D!E`@^$ -MK````(M7((72#X2A````BTA8A<ET&(M'-(E4)`B)1"0$B0PDZ/S____I@@`` -M`(M4)""#>C0`='B+3"0D@WEH`'4&@WEL`'1HBWPD((MO-(M4)"2+0FB%P'0( -MB<?V0F4!="V+3"0DBT%LBY8\!@``QT0D"`$```")5"0$B0PD_]"_`````(7` -M=`:+OCP&``"+1PB+%XE4)`B);"0$B00DZ/S___\#+XM'!(/'$(7`=-^+EC@* -M``"!PD`(```/MD-"P>`(`<*+`J,`````B<+!ZA"+?"0DB%=3P>@89HE'2(N6 -M.`H``('"1`@```^V0T+!X`@!PHL2B14`````#[;"9HE'3`^VQF:)1TZ)T,'H -M$`^VP&:)1U#!ZAB(5U*+EC@*``"!PDP(```/MD-"P>`(`<*+`J,`````#[;` -M9HE'2NDR`P``:<>P!```BU0D%(T\$`^V1S.$P`^%S````(GH`X;$!0``BP#& -M0!0`BTPD(/9!9A`/A/T"``"#?"0D``^$\@(```^V1S.+7"0DB$-*]D-E`@^$ -MW0(``(-Y(``/A-,"``"#>V@`=0^#>VP`D(UT)@`/A+X"``"+1"0@BW@TBU0D -M)(M":(7`=`B)P_9"90%T,(M,)"2+06R+ECP&``#'1"0(`0```(E4)`2)#"3_ -MT+L`````A<!T"8N>/`8``(UV`(M#"(L3B50D"(E\)`2)!"3H_/___P,[BT,$ -M@\,0A<`/A4\"``#KV3P"#X4)`@``#[9/0(M'.(E$)$0/ME0D1P^V1"1$P>`8 -M"<(/MD0D1<'@$`G"#[9$)$;!X`B)TPG#@^%_@/EQ=C;&1"0I`(/[`78+#[9' -M08/@#XA$)"G&1"0J`(/[`G8(#[970HA4)"J#^P-V7`^V3T.(3"0KZU?&1"0I -M`(/[`G8+#[9'0H/@#XA$)"G&1"0J`,9$)"L`@_L'=C,/MD='@\`(.<-V`HG# -MQD0D*@"#^PQV"`^V5TR(5"0J@_L-=@H/MD]-B$PD*^L%QD0D*P")Z`.&Q`4` -M`(L`@'@<`'1#A=MT/\9`%"")Z`.&Q`4``(L`#[9`'#C8<P,/MMB)Z`.&Q`4` -M`(L`BU`XA=)T(XU'0(E<)`B)1"0$B10DZ/S____K#HGH`X;$!0``BP#&0!0B -M@'PD*01U#HGH`X;$!0``BP#&0!0"BT0D(#EP&`^$_0```(-\)"0`#X3R```` -M]D!F$'1&#[9',XM4)"2(0DKV0F4"=#6+3"0@#[91'(G8.--V`HG0A,!T(8M< -M)"2+2V"%R706#[;`C5=`B40D"(E4)`2)#"3H_/___X!\)"D+=UD/MD0D*?\D -MA=@&``"+?"0DQD=F`>F&````@'PD*@1U$8!\)"L"=0J+1"0DQD!F$>MNBU0D -M),9"9@+K9(M,)"3&0680ZUJ+7"0DQD-F"^M0BWPD),9'9@;K1HM$)"3&0&8- -MZSP\*'4:#[9#3X/H`8A#3HGH`X;$!0``BP#&0!2!ZQX\"'4,QP0D$"<``.C\ -M____B>@#AL0%``"+`,9`%"&#Q$Q;7E]=PXUT)@!55U93@^Q,BWPD8`^WAXH+ -M``!FB40D'(L'BX!``0``HP````!F)?\/9HF'B@L``&8[1"0<=4V+!XN(4`$` -M`(D-`````(L'B8A0`0``N`````#WP0#__P`/A+T&``")3"0$QP0D(P```.C\ -M____BU0D8(D4).C\____N`$```#IEP8``&:!OXH+``#_#P^%``8``.DA!@`` -MBY]<"@``9H-$)!P!#[=,)!QF.X^."P``&<`AP6:)3"0<BY>D"@``@\($#[?! -MBP2"B<;![A#WQ@@````/A*@```"+!XN04`$``(D5`````(L'B9!0`0``]\(` -M__\`=%Z`?RL`=%CVQ@%U+[X`````]\(```$`=#J)]NL>#[?&C4@(NP$```") -MW=/EA>IU$(U($-/CA=IU!^L8O@`````/M\9KP%R-G`=``0``A=MU'^L,@\8! -M#[9'*V8Y\'>^BT0D8(D$).C\____Z4$%``"+5"1@B10DZ/S___^(0POI+04` -M`(VT)@````!F)?\/9HE$)!X/M\!IR+`$``"+5`L@BTP+)(E4)#B)3"0\C12% -M`````(N'Q`4```'0BQB%VP^$ZP0``/?&(`````^$9P$``(![%($/A3\!``#& -M0Q0A#[=#'L'@`@.'Q`4``,<```````^W2QZ)R&;!Z`4/M\"#X1^Z`0```(G6 -MT^:)\??1(8R'R`4```^W2QZ)R&;!Z`4/M\"#X1_3XO?2(52'5`^W0QZ)1"0$ -MBVPD((DL).C\____@WM4`'0/C4-4B40D!(D\).C\____#[=3$&:!^H4`#X>T -M````#[?"#[:$![`$```\_P^$H0```&:#^G]W&P^VP&G`)`$```.'<`4``(M` -M+(!X!/\/E<#K3P^W0Q!F/8$`=R,/M\`/MH0XL`0``&G`%`T```.'J`4``(M` -M"(!X!/\/E<#K(@^W0Q`/MH0XL`0``&G`L`````.'C`4``(M`5(!X!/\/E<"$ -MP'0MB5PD!(D\).C\____C9?<````BX?<````B5@$B0.)4P2)G]P```#IF`,` -M`(GVBT0D)(M0!(U#"(M,)"2)002)2PB)4`2)`NEX`P``#[=$)!YFP>@%#[?` -MB40D*`^W;"0>B6PD+(GI@^$?N`$```#3X(E$)#"+3"0HA42/5`^%00,``(G0 -M`X?$!0``BP`/MT@09H'YA0`/AY\````/M\$/MH0'L`0``#S_#X2,````9H/Y -M?W<8#[;`:<`D`0```X=P!0``BT`L#[9`!.M=B=`#A\0%``"+``^W0!!F/8$` -M=R`/M\`/MH0XL`0``&G`%`T```.'J`4``(M`"`^V0`3K*8G0`X?$!0``BP`/ -MMT`0#[:$.+`$``!IP+`````#AXP%``"+0%0/MD`$//]T#0^VP("\!S8%``#_ -M=3^+;"0PBW0D*(5LMU0/A7<"``#&0Q0&QT0D!`````")'"3H_/___\=$)`@` -M````B5PD!(D\).C\____Z4H"```/MH0'-@4``&O`7(V$!T`!``"+5"0\"U0D -M.'08]\8"````=1#'1"0X`````,=$)#P`````]D`&`@^$30$``(M4)#B+3"0\ -MB50D"(E,)`R+3"0LB4PD!(D$).C\____BVPD,(MT)"B%;+=4#X7:`0``@'L4 -M@0^%A0````^W0Q[!X`(#A\0%``#'```````/MTL>B<IFP>H%#[?2@^$?N/[_ -M___3P"&$E\@%```/MT,>B40D!(M$)"")!"3H_/___XE<)`2)/"3H_/___X-[ -M5`!T#XU#5(E$)`2)/"3H_/___XV7W````(N'W````(E8!(D#B5,$B9_<```` -MZ4L!``"+A^0````[1"0D=%>^`````(/&`8L`.40D)'7UB?*$TG1!QD0D-P"+ -M3"0DB0PDZ/S___^-2/B+;"0DBU4$B44$B2B)4`2)`CG9=07&1"0W`8GP+`&) -MQG7/@'PD-P`/A>@```"+3"0DBU$$C4,(B4$$B4L(B5`$B0*+;"0PBW0D*`FL -MMY0```#IOP```(M4)#B+3"0\B50D"(E,)`R+3"0LB4PD!(D$).C\____BX?D -M````.T0D)'13O@````"#Q@&+`#E$)"1U]8GPA,!T/<9$)$<`BU0D)(D4).C\ -M____C4CXBVPD)(M5!(E%!(DHB5`$B0(YV74%QD0D1P&)\"P!B<9USX!\)$<` -M=4"`>Q2!=#J+3"0DBU$$C4,(B4$$B4L(B5`$B0*+;"0PBW0D*`FLMY0```#K -M%(V'Y````(E$)"2-ES0)``")5"0@#[=,)!QF.8^*"P``#X7?^?__C8?D```` -M.8?D````=$>)QHDT).C\____@^@(#[=('HG+9L'K!0^WVX/A'[K^____T\(A -ME)^4````QT0D"`````")1"0$B3PDZ/S___\YM^0```!UNXD\).C\____N`$` -M``"#Q$Q;7E]=PXVT)@````"-O"<`````@^P<B5PD#(ET)!")?"04B6PD&(M$ -M)""+F#P%``"+0P2+*(DM`````/?%````D'1HBT,$B2CK88'#N`P``(L#BY!0 -M`0``B14`````BP.)D%`!``"%TG0W]\(````0=!F+`\>`4`$``````!"+`XN` -M4`$``*,`````BP/'@%`!```!````B1PDZ/S___\!QX/&`8/^`G6AZPR_```` -M`+X`````ZYF)^(3`#Y7`A>T/E<()T`^VP(M<)`R+="00BWPD%(ML)!B#Q!S# -MC;0F`````%575E.#["R+="1`BP:+@%`!``")1"04HP````"+!HM4)!2)D%`! -M``#W1"04`/__``^$L`<``(!^*P`/A*8'``#&1"0K``^V;"0KC4T(N`$```") -MPM/BA50D%'4/C4T0T^"%1"04#X1H!P``@'PD*P-V'HL&!8`!``"-!.B+`*,` -M````P>@3@^`!ZQR0C70F`(L&!8`!``"-!.B+`*,`````P>@3@^`!A,!T&XDT -M).C\____B>C!X`:-!*B!C`:X"P`````(`(L6@'PD*P-V%8V$ZH`!``"+`*,` -M````)0```0#K$XV$ZH`!``"+`*,`````)0```0"%P'0K@'PD*P-V$HV$ZH`! -M``#'`````0#I_`8``(V$ZH`!``#'`````0#IZ@8``(!^.0$/A=8%``"`?"0K -M`W89BP8%@`$``(T$Z(L`HP````"#X`'K%XUV`(L&!8`!``"-!.B+`*,````` -M@^`!A,`/A&0!``")Z,'@!HT<J(V$'KP+``"+5A2)1"0$B10DZ/S___^+A!Z4 -M"P``A<!T'8M0*(72=!;V0C("=1")!"3H_/___X3`#X4>`0``B>C!X`:-!*B+ -MA`:4"P``A<`/A(<```")1"0D@'@*``^$I0```,9$)",`B<>#QSB)/"3H_/__ -M_XG#BT<$B5\$B3N)0P2)&/9#*`)U/8M3((72=!Z+ACP%``")5"0(B40D!,<$ -M)`4```#H_/___X!+*`*)7"0(QT0D!`8```"+1"0DB00DZ/S___^`1"0C`0^V -M5"0CBT0D)#A0"G8NZY$/MD0D*\=$)`@!````B40D!(DT).C\____QP0DH(8! -M`.C\____N@`M,0'K!;I`2TP`B>C!X`:-'*B-##.)D;P+``#'@<0+``"@7``` -M#[9$)"N)PL'B!HV$@I`+``"-!`:)@<@+``"-A!Z\"P``BU84B40D!(D4).C\ -M____C70F`(!\)"L#=B^-%.T`````BP8%@`$```'0BP"C`````(L&!8`!```! -MPHL"HP````#!Z`>#X`'K+8T4[0````"+!@6``0```="+`*,`````BP8%@`$` -M``'"BP*C`````,'H!X/@`83`=%N`?"0K`W8JC0SM`````(L&!80!```!R(L` -MHP````"+%H'"A`$```'1#0```0")`>LQC0SM`````(L&!80!```!R(L`HP`` -M``"+%H'"A`$```'1#0```0")`>L@@'PD*P-V&8L&!8`!``"-!.B+`*,````` -MP>@2@^`!ZQ>+!@6``0``C03HBP"C`````,'H$H/@`83`#X3?`0``@'PD*P-V -M*HT,[0````"+!@6``0```<B+`*,`````#0``!`"+%H'"@`$```'1B0'K*(T, -M[0````"+!@6``0```<B+`*,`````#0``!`"+%H'"@`$```'1B0&)Z,'@!HT$ -MJ(N$!I0+``"%P'0-B<6#>"@`=7_I9@$``(!\)"L#D'8YC13M`````(L&!8`! -M```!T(L(B0T`````BP8%@`$``(T$`HD(BP8%@`$```'"BP*C`````.E;`P`` -MC13M`````(L&!8`!```!T(L(B0T`````BP8%@`$``(T$`HD(BP8%@`$```'" -MBP*C`````.DB`P``BT`H#[=(,@^WT?;&`0^%V0```(G']L("#X3.````B<B# -MX/UFB4<RC4=PBU84B40D!(D4).C\____QD0D*P"`?Q\`#X1]````QD0D*P`/ -MMD0D*XM<ASR%VW1<BU,@A=)T'HN&/`4``(E4)`B)1"0$QP0D!0```.C\____ -M@$LH`HE<)`C'1"0$!@```(DL).C\____@'M/`'0=C78`B30DZ/S____'!"0! -M````Z/S___^`>T\`=>:`1"0K`0^V5"0K.%<?=XC'1W!`2TP`QT=X`````(E_ -M?(U'<(M6%(E$)`2)%"3H_/___XUT)@"`?"0K`W8>BP8%@`$```^V5"0KC130 -MBP*C`````,'H"(/@`>L<BP8%@`$```^V5"0KC130BP*C`````,'H"(/@`83` -M#X0-`0``@'PD*P-V'HL&!8`!```/ME0D*XT4T(L"HP````"#\`&#X`'K'(L& -M!8`!```/ME0D*XT4T(L"HP````"#\`&#X`&$P`^$Q`````^V1"0KB<+!X@:- -MA(*0"P``C00&B40D'(G"BT`$A<`/A)\```")1"08B="#P"R+5A2)1"0$B10D -MZ/S___^+1"08@'@*`'14O0````")QX/'.(D\).C\____B<.+1P2)7P2).XE# -M!(D8BU,@A=)T'HN&/`4``(E4)`B)1"0$QP0D!0```.C\____@$LH`H/%`8GJ -MBT0D&#A0"G>VBU0D',="+("$'@#'0C0`````B5(XB="#P"R+5A2)1"0$B10D -MZ/S___^`?"0K`W9D#[9<)"O!XP.+!@6``0```=B+$(D5`````(L&!8`!``"- -M!`.)$(L&!8`!``"-!`.+`*,`````BP8%,`(``(T$`\<``````,<$)!`G``#H -M_/___XL&!30"```!PXL#HP````#K8@^V7"0KP>,#BP8%@`$```'8BQ")%0`` -M``"+!@6``0``C00#B1"+!@6``0``C00#BP"C`````(L&!5`"``"-!`/'```` -M``#'!"00)P``Z/S___^+!@54`@```<.+`Z,`````@$0D*P$/MD0D*SA&*P^' -M7_C__XL&BX!0`0``B40D%*,`````BP:+5"04B9!0`0``]\(`__\`=!WI&/C_ -M_XGHP>`&C02H@8P&N`L``````0#I_OC__[@`````@\0L6UY?7<.-="8`C;PG -M`````%575E.#[%R+;"1P#[9$)'2(1"0S#[;0B50D-(G0P>`&C020`>B+B)0+ -M``")3"0\#[:XL0L``(M%`(!\)#,#=@S'@'`!``#$`0``ZPK'@'`!``"H`0`` -MB40D6`5T`0``B40D.(M<)%B+@W0!``"C`````(M,)#2#X0.[!P```-/CB=X) -MQHM$)%B)L'0!``#'!"3H`P``Z/S____WTR'SBU0D6(F:=`$``(!\)#,#=E"+ -M3"0TBUPD6(V4B]`!``"+`J,`````@\@(B0*)R\'C`XM4)%B-A!H``@``QP`X -M````QP0D$"<``.C\____BTPD6(V$&00"``#'``````#K4(M<)#2+1"18C928 -MT`$``(L"HP````"#R`B)`HM<)#3!XP.+5"18C80:``(``,<`.````,<$)!`G -M``#H_/___XM,)%B-A!D$`@``QP``````@WPD/``/A&8(``"`?2L`=#*[```` -M``^VRXM4)#P/MD()T_BH`704QT0D"`$```")3"0$B2PDZ/S___^#PP$X72MW -MTXM,)#SV008!=&V)3"0$B2PDZ/S___^+7"0TB5PD!(DL).C\____B=C!X`:- -M!)B-%"B+@K0+``"I```0`'0+)?__[_^)@K0+``"+1"0\B40D!(DL).C\____ -MBT0D-,'@!HM4)#2-!)#'A`64"P```````.FW!P``BTPD/(!Y-`!T&HN%^`D` -M`(E,)`2)!"3H_/___XM<)#R`:S0!N/[___\/MDPD--/`B?L@PXA<)$,/A)(" -M``"+1"0TB40D!(DL).C\____BT0D-,'@!HM4)#2-!)"-%"B+@K0+``"I```0 -M`'0+)?__[_^)@K0+```/MDPD0XM<)#R(2PF`?2L`#X2N`0``QT0D3``````/ -MML&)1"0@BU0D6('"``(``(E4)!P/MDPD3(A,)%,/MOF+1"0@B?G3^*@!#X0^ -M`0``C1R]`````(E<)"R)^,'@!@'8#[94)$.(E`6Q"P``@'PD4P,/AHT```"- -M'/T`````BT0D'`'8QP`X````QP0D$"<``.C\____BTPD6(V$&00"``"+7"0@ -MB1C'@7`!``#$`0``BU0D.(L"HP````")^8/A`[L'````T^.)W@G&B3+'!"3H -M`P``Z/S____WTR'SBTPD.(D9BUPD6(M$)"R-E`/0`0``BP*C`````(/("(D" -MZ8@```"-'/T`````BT0D'`'8QP`X````QP0D$"<``.C\____BU0D6(V$&@0" -M``"+3"0@B0C'@G`!``"H`0``BUPD.(L#HP````")^8/A`[L'````T^.)W@G& -MBT0D.(DPQP0DZ`,``.C\____]],AWHM4)#B),HM,)%B-E+G0`0``BP*C```` -M`(/("(D"@T0D3`$/MD0D4X/``3A%*W8EZ8_^__^)'"3H_/___XUPX(M3!(E# -M!(D8B5`$B0*#?@P`=!?K#+X`````BUPD/(/#+(M$)#PY6"QURX7V=#C&1C(` -M@'TK`'0NN0````"Z`````(M<)#P/MD,)T_BH`70.#[;"B$P&0(!&,@&#P@&# -MP0$X32MWW,=$)`@`````QT0D!($```"+1"0\B00DZ/S___^+1"0TP>`&BU0D -M-(T$D,>$!90+````````@'TK``^%S0,``.GG!```QT0D"`````#'1"0$!@`` -M`(M,)#R)#"3H_/___XM<)#2)7"0$B2PDZ/S___^)V,'@!HT$F(T4*(N"M`L` -M`*D``!``=`LE___O_XF"M`L``(M$)#R#P"R+5"0\.4(L#X0>`@``B40D%(M, -M)!2)#"3H_/___XU8X(E<)$2-4`@Y4`@/A-(!``"#PRB)7"08BT0D&(D$).C\ -M____C5CX@'LE#74:C9#\````BT,LBP"+0!2)5"0$B00DZ/S___^+$XM#!(E" -M!(D0@'M/`'0:B2PDZ/S____'!"0!````Z/S___^`>T\`=>:+0R"%P`^$.@$` -M`,=`8`````"`>T\`#X2D````9H-]4``/A)D```"_`````)"-="8`C02]```` -M``.%Q`4``(LPA?9T;0^W1A!F.T,<=6-F/84`=UT/M\"`O"BP!```_W10BU4` -M#[=&'F;!Z`4/M\"-!(4``P``B8)P`0``BU4`#[=.'H/A'[@!````T^")@G0! -M``#&1A0AQT0D"`````")="0$B2PDZ/S___^-M@````"#QP$/MT50.?@/CW'_ -M___V0R@$=1^)+"3H_/___XM#(,=$)`@!````B40D!(DL).C\____BT,@#[90 -M`@^V0`&)5"0(B40D!,<$)`T```#H_/___XM#((N5/`4``(E$)`B)5"0$QP0D -M`0```.C\____BT,@BY4\!0``B40D"(E4)`3'!"0&````Z/S____'0R`````` -MBU0D/(!J"@&+3"1$@&DP`8E<)`2)+"3H_/___XM$)!B+7"1$.4,H#X4U_O__ -MBU0D/(!J'`&+3"1$B4PD!(DL).C\____BT0D%(M<)#PY0RP/A>;]__^+1"0\ -M@\`XBU0D/#E".`^$!0$``+X`````B<>)/"3H_/___XG#@'A/`'0VC48!@?Y_ -MEI@`=@2)QNLGB<:)+"3H_/___\<$)`$```#H_/___X![3P!T"X/&`8'^@9:8 -M`'7;BT,@A<`/A(P```#'0&``````]D,H!'4?B2PDZ/S___^+0R#'1"0(`0`` -M`(E$)`2)+"3H_/___XM#(`^V4`(/MD`!B50D"(E$)`3'!"0-````Z/S___^+ -M0R"+E3P%``")1"0(B50D!,<$)`$```#H_/___XM#((N5/`4``(E$)`B)5"0$ -MQP0D!@```.C\____QT,@`````(M,)#R`:0H!B5PD!(DL).C\____BUPD/#E[ -M.`^%`O___XM$)#R)1"0$B2PDZ/S___^+1"0TP>`&BU0D-(T$D,>$!90+```` -M````Z2G\___'1"1(``````^V3"1#B4PD*(M<)%B!P]`!``")7"0D#[9\)$B) -M^`^VP(E$)%2+1"0H#[9,)%33^*@!=0R)^SA<)#,/A<8```")^#P#=F.+5"18 -MQX)P`0``Q`$``(M,)#B+`:,`````BTPD5(/A`XT,2;L'````T^.)W@G&BT0D -M.(DPQP0DZ`,``.C\____]],A\XM4)#B)&HM,)%2+7"0DC12+BP*C`````(/( -M"(D"ZUV+1"18QX!P`0``J`$``(M4)#B+`J,`````BTPD5(/A`XT,2;L'```` -MT^.)W@G&B3+'!"3H`P``Z/S____WTR'>BTPD.(DQBUPD5(M$)"2-%)B+`J,` -M````@\@(B0*#1"1(`8U'`3A%*P^'`/___X/$7%M>7UW#D(VT)@````!55U93 -M@^P<BWPD,(MT)#0/MF\KB>B$P'0L#[96";L`````]L(!=!/K'(VT)@````") -MT(G9T_BH`740@\,!B>@XPW7MZP6[`````/9&"`)U"(U&.#E&.'5JB30DZ/S_ -M__^$P'1/B3PDZ/S___^)P87`=%"+5CR)1CR-1CB)`8E1!(D*@$8*`8EQ+,9! -M)`7&024`QD%-#\=$)`P!````QT0D"`$```")3"0$B30DZ/S____K#P^VPXE$ -M)`2)/"3H_/___X/$'%M>7UW#C;8`````55=64X/L#(ML)"`/MGPD)(GX#[;` -MB40D"(G&P>8"NP````#'!"00)P``Z/S___^)^H#Z`W8:BT4`!=`!```!\(L` -MHP````#!Z!2#X`'K&9"+10`%T`$``(T$!HL`HP````#!Z!2#X`&$P'4*@\,! -M9H'[+`%UK8M$)`B)1"0$B2PDZ/S___^)+"3H_/___XM$)`C!X`:+5"0(C020 -M`>CV@+`+```!=!*+@)0+``")1"0$B2PDZ/S___^#Q`Q;7E]=P^L-D)"0D)"0 -MD)"0D)"0D%575E.#[!P/MD0D-(A$)!J+?"0P#[;PB?#!X`:-!+"+K`>4"P`` -MA>T/A*H!``"X_O___XGQT\"$10D/A9@!``"-12PY12QU#8!]"@!U*(GVZ0,# -M```/MD0D&HG"P>(&C82"D`L``(T$!XD$).C\____Z>("``#&1"0;`(UU.(GV -MB30DZ/S___^)PXM&!(E>!(DSB4,$B1B`>R4`#X4?`0``#[=#'(.\A[`"```` -M=1&#>R``#X3H````C;0F``````^W0QR+A(>P`@``@WAP``^$K0```,:#M``` -M```/ME,DB="#X`:#^`9U-O;"`70QQD,F!<9#)P0/MD--BU,PBTLLB5PD#(E$ -M)`B)5"0$B0PDZ/S____II@```(VV``````^V4R2)T(/@!H/X!'4B]L(!=!W& -M0R8#QD,G!(E<)`2)/"3H_/___^MWC;0F``````^V4R2)T(/@!H/X!G5B]L(! -M=5W&0R<&QD,F!6;'@Y0``````(E<)`2)/"3H_/___^L^BT,@BY<\!0``B40D -M"(E4)`3'!"0$````Z/S____K'P^W0QR+ESP%``")1"0(B50D!,<$)`(```#H -M_/___Y"`1"0;`0^V1"0;.$4*#X:%`0``Z:C^__^-++4`````NP````#'!"00 -M)P``Z/S___^`?"0:`W89BP<%T`$```'HBP"C`````,'H%(/@`>L7D(L'!=`! -M```!Z(L`HP````#!Z!2#X`&$P'4*@\,!9H'[+`%UL(ET)`2)/"3H_/___XD\ -M).C\____B?#!X`:-!+"+M`>4"P``A?8/A/D```"`?RL`=#2[`````(VV```` -M``^VRP^V1@G3^*@!=!3'1"0(`````(E,)`2)/"3H_/___X/#`3A?*W?7#[9$ -M)!J)PL'B!HV$@I`+``"-!`>)1AB-1BPY1BQU*HU&.#E&.'4BZW*)'"3H_/__ -M_XUHX(M3!(E#!(D8B5`$B0*#?0P`=!7K#KT`````C5XLC;8`````.5XL=<V% -M[71?QD4R`(!_*P!T5;H`````NP````"-=@`/MD8)B='3^*@!=`X/ML.(5`5` -M@$4R`8/#`8/"`3A7*W8FZ]SV1@8!=`Z)="0$B3PDZ/S____K$,=$)`0````` -MB30DZ/S___^#Q!Q;7E]=PU575E.#[`R+?"0@BQ^+;R@/MG,KB?"$P'16C8.0 -M"P``N0`````Y^'4=ZT60C70F``^VP8G"P>(&C82"D`L``(T$`SGX=`F#P0&) -M\#C!=>&`^0-V(8L#!=`!```/MM&-%)"+`J,`````P>@4@^`!ZQ^Y`````(L# -M!=`!```/MM&-%)"+`J,`````P>@4@^`!A,!T%0^VP8EL)`B)1"0$B1PDZ/S_ -M___K#P^VP8E$)`2)'"3H_/___X/$#%M>7UW#D%575E.#[!R+7"0TBT0D,(E$ -M)!2+>%2+-_9'"!!T!,9`-0:+5"04#[9"-3P!='4\`7(9/`0/A)8````\!HUT -M)@`/A3H#``#IIP$``(M,)!3&034!B4PD!(DT).C\____QD,4@8!/"`B#>U0` -M=`^-0U2)1"0$B30DZ/S___^-EMP```"+AMP```")6`2)`XE3!(F>W````(DT -M).C\____Z=T"``"`9PCWBT0D%(!`-@'&0#4`QD,4`HE<)`2)-"3H_/___XDT -M).C\____Z;`"```/MD<(@^#W@\@0B$<(BTPD%(N1F````(U"`8F!F````(/Z -M`@^'^0```(-[5`!T#XU#5(E$)`2)-"3H_/___XV6W````(N&W````(E8!(D# -MB5,$B9[<````BT0D%(!X)@!U"X!_"@!U(NFD````QT0D"`````#'1"0$`@`` -M`(D\).C\____Z28"``#&1"0;`(UO.(DL).C\____B<.+102)702)*XE#!(D8 -MBU,@A=)T'HN&/`4``(E4)`B)1"0$QP0D!0```.C\____@$LH`HE<)`C'1"0$ -M!@```(D\).C\____@'M/`'0:B30DZ/S____'!"0!````Z/S___^`>T\`=>:` -M1"0;`0^V5"0;.%<*=X&+3"04B0PDZ/S____IC@$``(!G"/>+1"04QX"8```` -M`````(-[5`!T#XU#5(E$)`2)-"3H_/___XV6W````(N&W````(E8!(D#B5,$ -MB9[<````QT0D"`````#'1"0$!@```(D\).C\____C4<X.4<X#X26````B<6- -MM"8`````B2PDZ/S___^)PXM`((7`=&?'0&``````B30DZ/S___^+0R#'1"0( -M`0```(E$)`2)-"3H_/___XM#((N6/`4``(E$)`B)5"0$QP0D`0```.C\____ -MBT,@BY8\!0``B40D"(E4)`3'!"0&````Z/S____'0R``````B5PD!(DT).C\ -M____.6\X#X5S____BU0D%(E4)`2)-"3H_/___\='*`````"+!HN06`$``(D5 -M`````(72=`B+!HF06`$``/9'!@%T7(!^*P!T(;D`````]D<)`70,ZQ0/MD<) -MT_BH`74/@\$!.$XK=^[K!;D`````#[;9B5PD!(DT).C\____B7PD!(DT).C\ -M____B=C!X`:-')C'A!Z4"P```````(GV@\0<6UY?7<.0C;0F`````(/L+(E< -M)!R)="0@B7PD)(EL)"B+?"0TBW0D,(M&+(E$)!B+*`^W3QZ)R&;!Z`4/M]B# -MX1^X`0```-/@A42=5`^%_P,``(M5`(T$G0`#``")@G`!``"+10"+D'0!``") -M%0````#&1Q0ABT<D)?___P`]X0$/`'4IQT0D!`````")/"3H_/___\=$)`@` -M````B7PD!(DL).C\____Z:0#```/MT\>@^$?N`$```#3X(7"=!['1"0$`0`` -M`(D\).C\____B2PDZ/S___^-M@`````/MH:T````/`0/AV4#```/ML#_)(4( -M!P``QH:T`````<=$)`@!````B7PD!(M4)!B)%"3H_/___^DW`P``QH:T```` -M`L=$)`@(````B7PD!(M$)!B)!"3H_/___^D3`P``QH:T`````XET)`C'1"0$ -M(0```(M4)!B)%"3H_/___XM6,(72="T/MD9-QT0D$`````#'1"0,`0```(E$ -M)`B)5"0$BT0D&(D$).C\____Z<`"``"+5"08#[9""<=$)`@`````B40D!(DL -M).C\____Z9\"``#&AK0````$@WXP`'1(B70D",=$)`0A````BT0D&(D$).C\ -M____#[9&38M6,,=$)!``````QT0D#`(```")1"0(B50D!(M4)!B)%"3H_/__ -M_^E*`@``QT0D"`````#'1"0$(0```(M$)!B)!"3H_/___XM4)!@/MD()QT0D -M"`$```")1"0$B2PDZ/S____I#0(``(!^)O]T'8ET)`C'1"0$!@```(M$)!B) -M!"3H_/___^GJ`0``B70D",=$)`0&````BU0D&(D4).C\____BTX@A<ET$HM1 -M!(U"`8E!!(/Z!0^&N0$``,9&)P'&1B8`@'Y/`'0AC;0F`````(DL).C\____ -MQP0D`0```.C\____@'Y/`'7F@WXP`(GV=!2+5@B+1@R)0@2)$(M&,(!H,`'K -M$XM6-(72=`P/MD9-QT2"/`````"+%HM&!(E"!(D0BT0D&(!H"@&+EN0```"% -MTG0;#[:&V0```,=$)`@!````B40D!(D4).C\____BU8PA=)T&`^V1DW'1"0( -M`0```(E$)`2)%"3H_/___XM&((7`#X2&````QT!@`````(DL).C\____BT8@ -MQT0D"`$```")1"0$B2PDZ/S___^+1B`/ME`"#[9``8E4)`B)1"0$QP0D#0`` -M`.C\____BT8@BY4\!0``B40D"(E4)`3'!"0!````Z/S___^+1B"+E3P%``") -M1"0(B50D!,<$)`8```#H_/___\=&(`````")="0$B2PDZ/S___^+5"08@'H% -M_W1>O@````"`>@H`=#B^`````(M<)!B#PSB-=@")'"3H_/___XM3!(E#!(D8 -MB5`$B0*`>";_=0Z#Q@&)\(M4)!@X0@IWUXGPBU0D&#A""G<0QD(%_XE4)`2) -M+"3H_/___XM<)!R+="0@BWPD)(ML)"B#Q"S#D(VT)@````!55U93@^PLBVPD -M0(M%5(E$)"2+&(N#I`H``(L`B40D*(EL)`2)'"3H_/___X!]-@%V!,9%-02- -M=10Y=10/A.<!``")-"3H_/___XE$)""+112+5"0@B5`$B0*)<@2)511F@WM0 -M``^$F@$``+\`````C8LT"0``B4PD'(V#W````(E$)!@/M\?!X`(#@\0%``"+ -M,(7V#X1>`0``#[=&$&8Y120/A5`!```/MY.*"P``.50D*'1&@\(!#[>#C@L` -M`#G"&<`APHN#I`H``(/`!(L$D*D```@`=1UF)?\/9CGX=10Y="0@=12)'"3H -M_/___Y#I-`$``#M4)"AUN@^W1A!F/84`#X?O````#[?`@+P#L`0``/\/A-X` -M``"+5"0D@'HT``^%T````/9"!@$/A,8```"+$P^W1AYFP>@%#[?`C02%``,` -M`(F"<`$```^W3AZ#X1^Z`0```(G0T^")P8L#B8AT`0``#[=&'L'@`@.#Q`4` -M`,<```````^W3AZ)R&;!Z`4/M\")1"04@^$?B=#3X(G!]]&+1"04(8R#R`4` -M``^W3AZ)R&;!Z`4/M\"#X1_3XO?2(52#5#MT)"!T(HL&BU8$B5`$B0*+@]P` -M``")<`2)!HM4)!B)5@2)L]P````/MT8>B40D!(M,)!R)#"3H_/___X!M*0&# -MQP%F.7M0#X=__O__BT0D)/9`!@%T&HM,)""+$8M!!(E"!(D0B4PD!(DL).C\ -M____@\0L6UY?7</K#9"0D)"0D)"0D)"0D)!55U93@^PLBTPD0(M4)$B)5"0@ -MBT0D3(E$)"2+.0^W1"1$P>`"`X?$!0``BQAF@7LDX0%U*P^V0R:#Z!$\`7<@ -MBW$HQT0D'``````+5"0D=5G&1C4`QT0D'`````#K2Y"+EW`%``"XW"(!`&:! -M>Q"%`'<2#[=#$`^VA`>P!```:<`D`0```<*)5"0<O@````"+1"0@"T0D)'40 -MBT0D',:`M`````"^`````(![%(%U!(!A"/>+1"0@"T0D)`^%U@```,9#%`#V -M0V8@#X30`@``BT-(A<`/A,4"``")QO9`90)T(8M(6(7)=!J+4S2%TG03BT,@ -MB40D"(E4)`2)#"3H_/___XN7.`H``('"0`@``(M,)!P/MD%"P>`(`<*+`J,` -M````B<+!ZA"(5E/!Z!AFB49(BY<X"@``@<)$"```#[9!0L'@"`'"BQ*)%0`` -M```/ML)FB49,#[;&9HE&3HG0P>@0#[;`9HE&4,'J&(A64HN7.`H``('"3`@` -M``^V04+!X`@!PHL"HP`````/ML!FB49*Z0@"``"`>Q2`=03&0Q0ABT0D((M4 -M)"2)1"0$B50D",<$)*0```#H_/___V:!>R3A`74:#[9#)H/H$3P!=P^)-"3H -M_/___^G"`0``B?:-3"0@#[94)"/VP@$/A%`!``"+0R0E____`#WA`0X`#X0] -M`0``BY<X"@``@<)`"```BTPD'`^V04+!X`@!PHLJB2T`````BY<X"@``@<)$ -M"```#[9!0L'@"`'"BQ*)5"08B14`````BY<X"@``@<)("```#[9!0L'@"`'" -MBS*)-0````#V0V8@#X3&````BTM(QD%F$,9#%"")Z,'H$(A!4XGHP>@89HE! -M2(GPP>`(#[94)!@!T&:)04R)\+``BUPD&`^VUP'09HE!3HGRP>H0P>((B=C! -MZ!`/ML`!PF:)45"+ES@*``"!PDP(``"+7"0<#[9#0L'@"`'"BP*C``````^V -MP&:)04H/MU%,#[=93@^W25`/M\")5"00B5PD#(E,)`B)1"0$QP0D/@```.C\ -M____BY<X"@``@<)`"```BTPD'`^V04+!X`@!PL<"`````.MLB5PD!(D\).C\ -M____ZUZ$TGD<BP>+B%@!``")#0````"%R71(BP>)B%@!``#K/H`Y`'@Y@'D' -M`'DSBQ</MT,>9L'H!0^WP(T$A0`#``")@G`!``"+%P^W2QZ#X1^X`0```-/@ -MB8)T`0``C78`@\0L6UY?7<.0C;0F`````%.#[`B+7"04BTPD$`^V0R0Y2QAU -M03P(=%8\*'12/*B0=$T\B'1)/`IT13PJC70F`'0]/*IT.3R*=#6+@=P```") -M6`2)`XV!W````(E#!(F9W````.L9BY'@````B9G@````C8'<````B0.)4P2) -M&HD,).C\____@\0(6\.-="8`@^P,BT0D%(E$)`2+1"00B00DZ/S___^#Q`S# -MD(UT)@!3@^Q8BUPD8(U$)$J)1"0TC40D3(E$)#"-1"1$B40D+(U$)$:)1"0H -MC40D4(E$)"2-1"12B40D((U$)%.)1"0<C40D3HE$)!B-1"14B40D%(U$)$B) -M1"00C40D58E$)`R-1"16B40D"(U$)%>)1"0$#[=#)(D$).C\____#[9$)%>) -M1"0(#[9$)%:)1"0$C40D0(D$).C\____QT0D#`$````/MD0D5VG`)`$``(E$ -M)`B+0Q")1"0$C8-8!0``B00DZ/S____'1"0,`0````^V1"15:<"P````B40D -M"(M#$(E$)`2-@W0%``")!"3H_/___\=$)`P!````#[9$)%9IP!0-``")1"0( -MBT,0B40D!(V#D`4``(D$).C\____QT0D#`$````/MT0D4,'@`HE$)`B+0Q") -M1"0$C8.L!0``B00DZ/S____'1"0,`0````^W1"1(:\!PB40D"(M#$(E$)`2- -M@U@&``")!"3H_/___\=$)`P!````#[9$)%0/MU0D2`^OPHT$0,'@`HE$)`B+ -M0Q")1"0$C8,(!@``B00DZ/S____'1"0,`0```,=$)`@``@``BT,0B40D!(V# -M)`8``(D$).C\____#[9$)%>)1"0,QT0D"``(``"+0Q")1"0$C8,`!P``B00D -MZ/S____'1"0,`0````^V1"13C02`P>`"B40D"(M#$(E$)`2-@Y`&``")!"3H -M_/___\=$)`P!````QT0D"*````"+0Q")1"0$C8.L!@``B00DZ/S____'1"0, -M`0````^V1"12:<"8````B40D"(M#$(E$)`2-@\@&``")!"3H_/___\=$)`P! -M````#[=$)$Z-!$#!X`.)1"0(BT,0B40D!(V#Y`8``(D$).C\____QT0D#`$` -M```/MT0D4`'`B40D"(M#$(E$)`2-@Q@)``")!"3H_/___\=$)`P!````#[9$ -M)%<!P(E$)`B+0Q")1"0$C8-`"0``B00DZ/S____'1"0,`0````^V1"15`<") -M1"0(BT,0B40D!(V#:`D``(D$).C\____QT0D#`$````/MD0D5@'`B40D"(M# -M$(E$)`2-@Y`)``")!"3H_/___\=$)`P!````#[9#)@'`B40D"(M#$(E$)`2- -M@[@)``")!"3H_/___\=$)`P!````#[=$)$;!X`6)1"0(BT,0B40D!(V#=`8` -M`(D$).C\____QT0D#`$```"+1"1`B40D"(M#$(E$)`2-@^`)``")!"3H_/__ -M_\=$)!`!````QT0D#$`````/MT0D4,'@!HE$)`B+0Q")1"0$C8/\"0``B00D -MZ/S____'1"00`0```,=$)`P``0``QT0D"``9``"+0Q")1"0$C8,@"@``B00D -MZ/S____'1"00`0```,=$)`R`````#[=$)%!IP+`$``")1"0(BT,0B40D!(V# -M1`H``(D$).C\____QT0D$`$```#'1"0,!`````^W1"1,P>`"B40D"(M#$(E$ -M)`2-@V@*``")!"3H_/___\=$)!`!````QT0D#`0````/MT0D2L'@`HE$)`B+ -M0Q")1"0$C8.,"@``B00DZ/S____'1"00`0```,=$)`P(````#[9$)%/!X`N) -M1"0(BT,0B40D!(V#L`H``(D$).C\____QT0D$`$```#'1"0,"````,=$)`@` -M``@`BT,0B40D!(V#U`H``(D$).C\____QT0D$`$```#'1"0,"`````^W1"1. -M:<",`0``B40D"(M#$(E$)`2!P_@*``")'"3H_/___[@`````@\186\.-=@"# -M["R)7"0<B70D((E\)"2);"0HBVPD,(M%`(E$)!2-72R)'"3H_/___XG&C5#@ -MB50D&(M$)!2)!"3H_/___XG'BT4PB74PBU0D&(E:((E")(DPN`$```"%_P^$ -M@````,9').'&1R4!QD<F$(!/)P&+5"0TBX*<````B4=(BT=,B5`<B=`%D``` -M`(E'.,9'%<R+5"08#[9",V:)1Q"+10")1QC'1R"0````BT0D-(E'-,=';.`6 -M``#'1"0$`````(U'/(D$).C\____B7PD!(M4)!2)%"3H_/___[@`````BUPD -M'(MT)""+?"0DBVPD*(/$+,.-M@````"-O"<`````55=64X/L'(MT)##'1"08 -M`````(M4)!@/MH0R-@4``#S_#X3,````#[;0:\)<C8P&0`$``(E,)!2`O`9* -M`0````^$K0```+\`````B40D$(VL!G@!``"-A`9``0``B40D#(DL).C\____ -MB<.+1"00`?"+D'P!``")F'P!``")*XE3!(D:BT,@A<!T'HE$)`B+ACP%``") -M1"0$QP0D!0```.C\____@$LH`HE<)`C'1"0$`@```(M$)!2)!"3H_/___X![ -M3P!T&HDT).C\____QP0D`0```.C\____@'M/`'7F@\<!B?J+3"0,.%$*#X=N -M____@T0D&`&#?"08!`^%$/___XDT).C\____@\0<6UY?7<.-M@````"-O"<` -M````55=64X/L?(N$))````#&0#D`QD`X`,9`-P#&@+$,````B<*!PI`+``"X -M`````(GVQ@00`(/``3T0`0``=?*+A"20````!=P```"+E"20````B8+<```` -MB8+@````B=`%Y````(F"Y````(F"Z````('"[````(E4)$2+C"20````B9'L -M````B9'P````B<^!Q_0```")N?0```")N?@```"!P?P```")3"1,BYPDD``` -M`(F+_````(F+``$``('#!`$``(E<)%"+M"20````B9X$`0``B9X(`0``B?6! -MQ10!``")KA0!``")KA@!``"!QAP!``")="1(BX0DD````(FP'`$``(FP(`$` -M``4,`0``B40D5(N4))````")@@P!``")@A`!``"-1"1VB40D-(U$)'B)1"0P -MC40D:(E$)"R-1"1NB40D*(U$)'J)1"0DC40D<(E$)""-1"1QB40D'(U$)&R) -M1"08C40D<XE$)!2-1"1JB40D$(U$)'*)1"0,C40D=(E$)`B-1"1UB40D!`^W -M0B2)!"3H_/___P^V1"1UBXPDD````(A!+@^V1"1TB$$O#[9$)'*(@=D````/ -MMT0D>F:)05`/MT0D>&:)@8P+```/MT0D=H/H`6:)@8X+```/MT0D:F:)03H/ -MMT$D9CV`D70*9CV`E`^%K0H``(N<))````#&0S4$QD,K!,9#-D#&0S0`QH/6 -M````"<9#+`")V`58!0``B00DZ/S___^)PHF#<`4```^V1"1U:<`D`0``A<!T -M"\8"`(/"`8/H`77UBX0DD`````5T!0``B00DZ/S___^)PHNT))````")AHP% -M```/MD0D<FG`L````(7`=`O&`@"#P@&#Z`%U]8N$))`````%D`4``(D$).C\ -M____B<*+A"20````B9"H!0``#[9$)'1IP!0-``"%P'0+Q@(`@\(!@^@!=?6+ -MA"20````!:P%``")!"3H_/___XG"BXPDD````(F!Q`4```^W1"1ZP>`"A<!T -M"\8"`(/"`8/H`77UBX0DD`````4D!@``B00DZ/S___^+G"20````B8,\!@`` -MB=@%"`8``(D$).C\____B<.+M"20````B88@!@``B?`%6`8``(D$).C\____ -MB<*)AG`&``!F@WPD:@!T1KD`````B5I$#[9$)'.(0CR+M"20````BX;P```` -MB9;P````BW0D1(DRB4($B1`/MD0D<XT$0(T<@X/"<(/!`68Y3"1J=[^+A"20 -M````!70&``")!"3H_/___XG"BX0DD````(F0C`8``&:#?"1N`'0PN0````#& -M0@@`BYPDD````(N#^````(F3^````(DZB4($B1"#PB"#P0%F.4PD;G?5BX0D -MD`````60!@``B00DZ/S___^)PHNT))````")AJ@&``"`?"1Q`'0SN0````"+ -MG"20````BX,``0``B9,``0``BW0D3(DRB4($B1"#PA2#P0$/MD0D<68YR'?2 -MBX0DD`````6L!@``B00DZ/S___^)PHN$))````")D,0&``"-BJ````"+G"20 -M````BX,(`0``B9,(`0``BW0D4(DRB4($B1"#PA0YRG7;B=@%R`8``(D$).C\ -M____B<*)@^`&``"`?"1P`'0RN0````"+G"20````BX,8`0``B9,8`0``B2J) -M0@2)$('"F````(/!`0^V1"1P9CG(=].+A"20````!>0&``")!"3H_/___XG" -MB[0DD````(F&_`8``&:#?"1L`'0PN0````"+K"20````BX40`0``B940`0`` -MBUPD5(D:B4($B1"#PAB#P0%F.4PD;'?5@'PD=0!T3[L`````B[0DD````('& -M``<``(DT).C\____#[?3BZPDD````(F$E1@'``"+E2`!``")A2`!``"+3"1( -MB0B)4`2)`H/#`0^V1"1U9CG8=\.+A"20````!1@)``")!"3H_/___XN<))`` -M``")@S`)``")@S0)```/MT0D>F:)@SH)```/M\")1"0$B=@%-`D``(D$).C\ -M____B=@%0`D``(D$).C\____B8-8"0``B8-<"0``#[9$)'5FB8-B"0``#[?` -MB40D!(G8!5P)``")!"3H_/___XG8!6@)``")!"3H_/___XF#@`D``(F#A`D` -M``^V1"1R9HF#B@D```^WP(E$)`2)V`6$"0``B00DZ/S___^)V`60"0``B00D -MZ/S___^)@Z@)``")@ZP)```/MD0D=&:)@[()```/M\")1"0$B=@%K`D``(D$ -M).C\____B=@%N`D``(D$).C\____B8/0"0``B8/4"0``#[9#)F:)@]H)```/ -MMD,FB40D!(G8!=0)``")!"3H_/___XG8!>`)``")!"3H_/___XG"B8/X"0`` -M#[9$)'1IP'0$``")P8'!=$4``'0/B=")RL8``(/``8/J`77UB[0DD````(N& -M^`D``(D(BY;X"0``#[9$)'2(0@0/MD0D=(E$)`B)3"0$BX;X"0``B00DZ/S_ -M__^_`````(!^)@`/A)````"^``````^WSFO)7(NL))````"-O`U``0``C10I -MB?"(1P3&1P4`B:I``0``QD<*`,:"=`$```#&@EP!````QX*8`0```````(V$ -M#6`!``")@F`!``")@F0!``"#P`R)@FP!``")@G`!``"-A`UX`0``B8)X`0`` -MB8)\`0``QD<&`H/&`0^V129F.?`/AW7___^+E"20````QD(T`,:"-@4``/_& -M@C<%``#_QH(X!0``_\:".04``/^`?"1U``^$@P```+L`````#[?+:=$D`0`` -MB[0DD````(N&<`4``,9$$"<!BX9P!0``QD0")@"+AG`%``#&1`),_XN&<`4` -M`,9$`D+_BX9P!0``9L>$`I0``````,>$CK`"````````B=$#CG`%``"-01") -M01`#EG`%``"-0A")0A2#PP$/MD0D=68YV'>"BZPDD````&;'A=0``````+@` -M````C;8`````BY0DD````,:$$+`$``#_@\`!/88```!UYX!\)'0`#X2M```` -MNP`````/M\-IP!0-``"+C"20````BY&H!0``QD0",`"+D:@%``#&1!`Q`(N1 -MJ`4``,=$$`P`````B<&+M"20`````XZH!0``C5$0B5$0B<$#CJ@%``"-41") -M412)P0..J`4``(U1&(E1&(G!`XZH!0``C5$8B5$<BY:H!0``B7P0"(G!`XZH -M!0``C5$HB5$H`X:H!0``C5`HB5`L@\,!#[9$)'1F.=@/AUC___^+K"20```` -MQH77````@(!\)'(`='V[``````^WTVG2L````(N,))````"+@8P%``!FQT00 -M,@0`BX&,!0``QD0")@"+@8P%``#&1`(H_XN!C`4``,9$`C3_B=&+M"20```` -M`XZ,!0``C4$4B4$4B=$#CHP%``"-012)01B+AHP%``")?`)4@\,!#[9$)')F -M.=AWB(NL))````#&A=@```""B>@%&`H``(E$)`2-0.2)!"3H_/___XF%%`H` -M`(GH!3P*``")1"0$C4#DB00DZ/S___^)A3@*``")Z`5@"@``B40D!(U`Y(D$ -M).C\____B85<"@``B>@%A`H``(E$)`2-0.2)!"3H_/___XF%@`H``(GH!:@* -M``")1"0$C4#DB00DZ/S___^)A:0*``")Z`7,"@``B40D!(U`Y(D$).C\____ -MB<&)A<@*``"+G"20````BX/,"@``BY/0"@``@'PD<0!T6HG#B=:_`````(G- -M*<6+1"1,B00DZ/S___^-5!T`B5`(B5@,B7`0BXPDD````(N1``$``(F!``$` -M`(M,)$R)"(E0!(D"@<,`"```@]8`@\<!#[9$)'%F.?AWLXN$))`````%\`H` -M`(E$)`2+A"20````!=0*``")!"3H_/___XE$)%B+G"20````B8/L"@``BZPD -MD````(N=\`H``(NU]`H``+\`````O0````"+1"10B00DZ/S___^+5"18`?J) -M4`B)6`R)<!"+C"20````BY$(`0``B8$(`0``BTPD4(D(B5`$B0*!PP```0"# -MU@"!QP```0"#U0")^#4```@`">AUJHN$))`````%%`L``(E$)`2+A"20```` -M!?@*``")!"3H_/___XG!BYPDD````(F#$`L``(NT))````"+AA0+``"+EA@+ -M``!F@WPD;`!T5XG#B=:_`````(G-*<6+1"14B00DZ/S___^-5!T`B5`(B5@, -MB7`0BXPDD````(N1$`$``(F!$`$``(M,)%2)"(E0!(D"@<.,`0``@]8`@\<! -M9CE\)&QWMH/$?%M>7UW#C;8`````C;\`````55=64X/L#(ML)""+?"0DBU]4 -M#[9'*XE$)`B);"0$B1PDZ/S___^)QF:#3S(0@'TK`'1)N0````#V0PD!=`SK -M/`^V0PG3^*@!=0R#P0$/MD4K9CG(=^IF@_D#=B6+10`%T`$```^WT8T4D(L" -MHP````#!Z!2#\`&#X`'K([D`````BT4`!=`!```/M]&-%)"+`J,`````P>@4 -M@_`!@^`!A,!T%`^VP8E$)`2)+"3H_/___^F&`0``C4,X.4,X#X01`0``A?8/ -MA`D!```/MD9-QT2'/`````"+%HM&!(E"!(D0B70D",=$)`0&````B1PDZ/S_ -M__^`?D\`=!^0C70F`(DL).C\____QP0D`0```.C\____@'Y/`'7FBT8@A<!T -M5L=`8`````#V1B@$=0B)+"3H_/___XM&((N5/`4``(E$)`B)5"0$QP0D`0`` -M`.C\____BT8@BY4\!0``B40D"(E4)`3'!"0&````Z/S____'1B``````@&L* -M`8ET)`2)+"3H_/___XM%`(N06`$``(D5`````(72=`F+10")D%@!``#&1R8` -M9H-G,N^`?Q\`="*Z``````^WPHM$ASR%P'0&@'@F_W5U@\(!#[9''V8YT'?C -M@'\R`'@-O@````"`?Q\`=1#K3(E\)`2)+"3H_/___^M(#[?&BUR'/(7;="?V -M0R@"="&+0R"+E3P%``")1"0(B50D!,<$)`8```#H_/___X!C*/V#Q@$/MD<? -M9CGP=\)FQT<R`@"`9RW]@\0,6UY?7<.-="8`C;PG`````%575E.#["R+?"1` -MBT<LB40D)(L8BX.D"@``BP")1"0HB7PD!(D<).C\____@+^W`````78'QH>T -M````!(UW$#EW$`^$-0(``(DT).C\____B40D((M'$(M4)"")4`2)`HER!(E7 -M$&:#>U``#X3?`0``O0````"-BS0)``")3"0<C8/<````B40D&(VV``````^W -MQ<'@`@.#Q`4``(LPA?8/A)T!```/MT809CE''`^%CP$```^WDXH+```Y5"0H -M=$6#P@$/MX.."P``.<(9P"'"BX.D"@``@\`$BP20J0``"`!U'&8E_P]F.>AU -M$SET)"!U$XD<).C\____Z7T!```[5"0H=;N+5"0D@'HT`(GV#X4M`0``#[=& -M$&8]A0`/AQ\!```/M\"`O`.P!```_P^$#@$``(-\)$``#X3M````#[9')(/@ -M!8/X!0^%W0```(L3#[=&'F;!Z`4/M\"-!(4``P``B8)P`0``#[=.'H/A'[H! -M````B=#3X(G!BP.)B'0!```/MT8>P>`"`X/$!0``QP``````#[=.'HG(9L'H -M!0^WP(E$)!2#X1^)T-/@B<'WT8M$)!0AC(/(!0``#[=.'HG(9L'H!0^WP(/A -M']/B]](A5(-4.W0D('0WBQ:+1@2)0@2)$(-^5`!T#XU&5(E$)`2)'"3H_/__ -M_XN#W````(EP!(D&BU0D&(E6!(FSW`````^W1AZ)1"0$BTPD'(D,).C\____ -M@&]/`>L6BT0D)/9`!@)T#(ET)`2)/"3H_/___X/%`68Y:U`/AT#^__^#?"1` -M`'0F#[9')(/@!8/X!74:BTPD((L1BT$$B4($B1")3"0$B3PDZ/S___^#Q"Q; -M7E]=PY"0D)"0D)"0D)"055=64X/L#(M\)"`/MG0D)`^V1"0LB$0D"XM'+(L( -MN@`````/MEPD*`'SB%PD`XGV#[:$"K`$```\_W1&#[;`:<`D`0``B40D!`.! -M<`4``(GS.)C:````=2DYN.0```!U(0^V7"0#B)C9````BX%P!0``#[9<)`N+ -M;"0$B)P%V````(/"`8'Z@````'6C@\0,6UY?7<.-="8`C;PG`````(/L"(D< -M)(ET)`2+="08#[9<)!`/ME0D%(M$)`R+2#`/MH&0````/$]W*0^VP(T$@`': -MB)3!E0````^V@9````"-!(")\HB4P90```"`@9`````!BQPDBW0D!(/$",.) -M]E=64XM\)!`/MT0D%+O_____9H7`=$&[_____[D`````@^@!#[?P#[84.8U" -MT#P)=Q>`^_\/E,"#Z`$APP^VPXT$@(U<0M#K!8#[_W4*@\$!C48!.<%USP^V -MPUM>7\.)]E575E.+;"04#[9T)!@/MGPD'(M%+(L(N@````"-="8`#[:$"K`$ -M```\_W0K#[;`:<`D`0```X%P!0``.:CD````=12)\SB8V0```'4*B?J(D-L` -M``#K"X/"`8'Z@````'6^6UY?7<.)]HV\)P````!55U93@^P$BW0D&`^V?"0< -M#[9$)"2(1"0#BT8LBQB+;C"Y``````^VA!FP!```//]T1@^VP&G`)`$``(G" -M`Y-P!0``.;+D````=2V)^#B"V0```'4C@'PD`P!T#HN"X````(M4)"")`NL9 -MBTPD((L!B8+@````ZPN#P0&!^8````!UHXGJN0````"-M@`````/MH*4```` -M/`%V.3P7=#6)^#B"E0```'4K@'PD`P!T$HT$B8N$Q9@```"+5"0@B0+K'8T4 -MB8M,)""+`8F$U9@```#K"X/!`8/"*(/Y4'6Q@\0$6UY?7<.)]HV\)P````!5 -M5U93@^P@#[9L)#B+1"0TB[#H````#[9&`L'@"`^V5@.-/!`/M\>#P`0]``@` -M``^/[0```(GJA-)T3HM,)#0/MI'<````B=.#X^`/MD8!@^`/B=`)V`G( -MB=.#XPB#X/.)T8/A!`G8"<B#X@*#X/R+7"0T#[:+W````(/A`0G0"<B(1@'K -M3`^V5@&)TX/CX(M,)#0/MH'<````@^`/B=`)V`G(B=.#XPB#X/.)T8/A -M!`G8"<B#X@*#X/P/MDX!@^$!"=`)R(M<)#2(@]P```"-5@@/M\>-?`8$.==V -M/XE4)!R[`````(GH#[;PC6PD'(ET)`R);"0(#[;#B40D!(M4)#2)%"3H_/__ -M_XM$)!R#P`2)1"0<@\,!.?ARTX/$(%M>7UW#C;8`````4X/L&(M,)"2+630/ -MMD,"P>`(#[93`P'0#[?`C5`$#[=!(#G"?RZ+3"0@BX'H````B50D"(E<)`2) -M!"3H_/___\=$)`0`````BT0D((D$).C\____@\086\.-M"8`````55=64X/L -M'`^V?"0XBT0D,(M8,(E<)!B^`````(ML)#2#Q00/MH.4````/`%V0CP7=#Z) -M^#B#E0```'4TC02VBTPD&(V4P9P```"+3"0T#[9!`SP@=@6X(`````^VP(E$ -M)`B);"0$B10DZ/S___^)]H/&`8/#*(/^4'6H@\0<6UY?7<.-M@````"-O"<` -M````@^PLB5PD'(ET)"")?"0DB6PD*(M<)#`/MD0D-(A$)!>+0RR+*(DL).C\ -M____B<:%P`^$!P$``(DL).C\____B<>%P'41B70D!(DL).C\____Z>@```"- -M5CR)5"08BU`(BX/H````BTPD/(E,)`B)1"0$B10DZ/S____&1F@*QD85K`^W -M0QQFB480BT0D0(E&2(EN&(M4)#R)5B"#3F02BT<(B48TB7Y0C8.X````B48X -MQD8<(,=&;`````#&1B0[QD8E`@^V3"07B$XFBT0D.,'H$(A&)XM4)#@/ML:( -M1BB(5BD/MD8BB$8J#[9&(8A&*P^V3"0\B$XLQD8M`,=$)`0`````BT0D&(D$ -M).C\____BT8@B40D#(M'#(M7$(E$)`2)5"0(BU0D&(D4).C\____B70D!(DL -M).C\____BUPD'(MT)""+?"0DBVPD*(/$+,.-M"8`````C;PG`````(/L+(E< -M)!R)="0@B7PD)(EL)"B+7"0P#[9$)#2(1"07BT,LBRB)+"3H_/___XG&A<`/ -MA.T```")+"3H_/___XG'A<!U$8ET)`2)+"3H_/___^G.````C58\B50D&,9& -M:`K&1A6L#[=#'&:)1A"+1"1`B49(B6X8QT9D"````(E^4(M'"(E&-(M4)#R) -M5B"-@[@```")1CC&1AP@QT9L`````,9&)#S&1B4"#[9$)!>(1B:+1"0XP>@0 -MB$8GBU0D.`^VQHA&*(A6*0^V1B*(1BH/MD8AB$8K#[9$)#R(1BS&1BT`QT0D -M!`````"+5"08B10DZ/S___^+1B")1"0,BT<,BU<0B40D!(E4)`B+1"08B00D -MZ/S___^)="0$B2PDZ/S___^+7"0<BW0D((M\)"2+;"0H@\0LPY"-M"8````` -M@^PLB5PD'(ET)"")?"0DB6PD*(ML)#"+12R+`(E$)!2+E>@````/MD("P>`( -M#[92`P'0#[?`C5@$@?L`"```#X_O````BT0D%(D$).C\____B<:%P`^$V0`` -M`(M$)!2)!"3H_/___XG'A<!U%8ET)`2+1"04B00DZ/S____IL@```(U&/(E$ -M)!B+5PB+A>@```")7"0(B40D!(D4).C\____QD85K`^W11QFB480BT0D%(E& -M&(E>((-.9!*+1PB)1C2)?E"-A;@```")1CC&1AP@QT9L`````,9&)!W&1B40 -MQD8F`@^V1B&(1B>(7BC'1"0$`````(M$)!B)!"3H_/___XM&((E$)`R+1PR+ -M5Q")1"0$B50D"(M$)!B)!"3H_/___XET)`2+1"04B00DZ/S___^+7"0<BW0D -M((M\)"2+;"0H@\0LPY"-M"8`````@^PLB5PD)(ET)"B+7"0P#[94)#0/MG0D -M.,=$)"``````@'LG`71*QT0D#`$```"-1"0@B40D"`^VPHE$)`2)'"3H_/__ -M_XM$)""%P'0C@`B`B?"$P'0*BT0D((!(`R#K"(M$)""`8`/?B1PDZ/S___^+ -M7"0DBW0D*(/$+,.-=@"#["R)7"0<B70D((E\)"2);"0HBUPD,`^V1"0TB$0D -M%XM#+(LHB2PDZ/S___^)QH7`#X2Y````B2PDZ/S___^)QX7`=1&)="0$B2PD -MZ/S____IF@```(U&/(E$)!C&1A6L#[=#'&:)1A");AC'1F0(````B7Y0BT<( -MB48TQT8@``@``(V#N````(E&.,9&'"#'1FP`````QD8D',9&)0$/MD0D%XA& -M)L9&)PC&1B@`QT0D!`````"+1"08B00DZ/S___^+1B")1"0,BT<,BU<0B40D -M!(E4)`B+1"08B00DZ/S___^)="0$B2PDZ/S___^+7"0<BW0D((M\)"2+;"0H -M@\0LPXVV`````(V_`````%575E.#[!R+3"0TBUDT#[9#`L'@"`^V4P,!T`^W -M\(U6!`^W02`YP@^/@P$``(U["(UL,P2)?"00QD0D%P#'1"08`````#GO#X/U -M````C78`#[9$)!B(1"06#[9'`L'@"`^V5P,!T&:)1"04#[?PB70D!(M$)!"# -MP`2)!"3H_/___SS_=6N+1"00C50P!(G3.=4/AOH```#&1"07_XUT)@`/MD(" -MP>`(#[92`XTT$`^WQHE$)`2-0P2)!"3H_/___SS_=1&`?"07_P^%C@```)#I -M@P```#A$)!=V!(A$)!</M\:-5`,$B=,YU79QZ[*)]BI$)!</ML")1"0(#[9< -M)!:)7"0$BU0D,(D4).C\____B5PD"(E\)`2+1"0PB00DZ/S___\/MT0D%(M4 -M)!"-?`($B7PD$(-$)!@!.?T/AP[____'1"0$`@```(M$)#")!"3H_/___^M8 -MQD0D%P`/MD0D%HE$)`B)?"0$BU0D,(D4).C\____#[=$)!2+5"00C7P"!(E\ -M)!"#1"08`>F__O__#[9$)!:)1"0(B7PD!(M$)#")!"3H_/___^N6C70F`(/$ -M'%M>7UW#D(VT)@````!55U93@^P<BTPD-(M9-`^V0P+!X`@/ME,#`=`/M\"# -MP`0/MU$@.=`/CQX!``"-<P@/MEL!N0````"Z`````(GV`DX"#[9&`XUT!@2# -MP@$XTW/NA,D/A-,```#&1"0;`+\`````C4'_#[;`@\`!B40D%`^V5+X!`%0D -M&P^V!+X\`70$/!=U2@^V7"0;*-,X7"0;#X:)````C4<!#[;HC78`#[8$OHE$ -M)`R);"0(#[;#B40D!(M$)#")!"3H_/___X/#`3I<)!MT6.O6C;8`````BTPD -M,(M!,("XD0````%T0`^V7"0;*-,X7"0;=C.-1P$/MN@/M@2^B40D#(EL)`@/ -MML.)1"0$BT0D,(D$).C\____@\,!.EPD&W78D(UT)@"#QP$[?"04#X5$____ -MBU0D,(M",,:`D0````''1"0$!P```(D4).C\____@\0<6UY?7<.-M@````"- -MO"<`````@^PLB5PD'(ET)"")?"0DB6PD*(M<)#"%VP^$S````(M#+(LHB2PD -MZ/S___^)QH7`#X2U````B2PDZ/S___^)QX7`=1&)="0$B2PDZ/S____IE@`` -M`(U&/(E$)!C&1A6L#[=#'&:)1A");AC'1F0(````B7Y0BT<(B48TQT8@``@` -M`(V#N````(E&.,9&'"#'1FP`````QD8D',9&)0'&1B8"QD8G",9&*`#'1"0$ -M`````(M$)!B)!"3H_/___XM&((E$)`R+1PR+5Q")1"0$B50D"(M$)!B)!"3H -M_/___XET)`2)+"3H_/___XM<)!R+="0@BWPD)(ML)"B#Q"S#D(/L'(E<)!") -M="04B7PD&(M\)"2+="0@BU](#[=7$&:!^H4`#X>'````#[?"#[:,!K`$``"` -M^?]T=V:#^G]W&0^VP8N6<`4``&G`)`$``(M$$"P/MD`$ZSAF@?J!`'<9#[;! -MBY:H!0``:<`4#0``BT00"`^V0`3K&`^VP8N6C`4``&G`L````(M$$%0/MD`$ -MD#S_=!P/ML"`O`8V!0``_W0/@/G_=`H/MD<4/`9U,HGV@W]0`'0/C4=0B40D -M!(DT).C\____B7PD!(DT).C\____QT,L_____XD<)/]3*.MQA,!U.O9'9`AT -M&8M+'(M7-(M'((E$)`B)5"0$B0PDZ/S____'0RP`````BU,@A=)T!8M#%(D" -MB1PD_U,HZQ+'0RS_____B1PD_U,HD(UT)@"#?U``=`^-1U")1"0$B30DZ/S_ -M__^)?"0$B30DZ/S___^+7"00BW0D%(M\)!B#Q!S#ZPV0D)"0D)"0D)"0D)"0 -M@^P<B5PD#(ET)!")?"04B6PD&(M<)"2+?"0@#[9K%`^W0Q!F/84`=QF+EW`% -M```/M\`/MH0'L`0``&G`)`$``.L+BY=P!0``N-PB`0"--`*)Z(3`=2%FQX:4 -M``````"`>R0<=1*`>R8"=0R)7"0$B30DZ/S___^#>U``=`^-0U")1"0$B3PD -MZ/S___^)7"0$B3PDZ/S___^)Z#P&=#Z-G@0!``")7"0$BT<4B00DZ/S____' -MA@0!``"`A!X`QX8,`0```````(FV$`$``(E<)`2+1Q2)!"3H_/___XM<)`R+ -M="00BWPD%(ML)!B#Q!S#55=64X/L'`^V1"0XB$0D&XM4)#"+0BR+,+\````` -MBVPD-(/%#`^VA#>P!```//]T40^VP&G8)`$``,=$)`@(````B6PD!(G8`X9P -M!0``!:````")!"3H_/___X3`=".+AG`%```/ME0D&XB4`]H```"+AG`%``"+ -M5"0PB90#Y````(/'`8'_@````'68@\0<6UY?7<.-="8`C;PG`````%575E.# -M[!R+3"0TBW$T#[9&`L'@"`^V5@,!T`^W^(U7!`^W02`YP@^/]0```(U>"(UT -M/@2)="04B=TYW@^&S````,=$)!@`````C;8`````#[9,)!@/MA.$T@^(E0`` -M`(G0@^`//`8/A8@```#V0P/`=`KV0P7`#X5X````]L(0=#6`>P0`=&V-=0B_ -M``````^V0P.)1"0(B70D!(M$)#")!"3H_/___X/&'(/'`8GX.$,$=D#KV8![ -M`@!T.(UU!+\`````#[;)B4PD$(UT)@"+1"00B40D"(ET)`2+1"0PB00DZ/S_ -M__^#QAR#QP&)^#A#`G?;#[9#`8U<!0*)W8-$)!@!.UPD%`^"0O___\=$)`0! -M````BT0D,(D$).C\____@\0<6UY?7<.-M@````!55U93@^PLBT0D0(E$)""+ -M5"1$#[92%(A4)"N+3"1$#[=1$&:!^H4`#X>Y`P``#[?"BUPD(`^VC`.P!``` -MN/\```"`^?]T8F:#^G]W'0^VP8M<)""+DW`%``!IP"0!``"+1!`L#[9`!.L_ -M9H'Z@0!W'0^VP8M<)""+DZ@%``!IP!0-``"+1!`(#[9`!.L;#[;!BUPD((N3 -MC`4``&G`L````(M$$%0/MD`$BU0D(`^VA`(V!0``B40D'&O`7(V$`D`!``") -M1"0DBY)P!0``#[;!:<`D`0``C30"@'PD*P`/A9("``!FQX:4``````"+1"1$ -M@'@D'`^%>P(```^V0"8\`G1:/`)W"SP!#X5G`@``D.LA/`=T,CP*#X58`@`` -MBTPD1(E,)`2)-"3H_/___^E#`@``BUPD1(E<)`2)-"3H_/___^DN`@``BT0D -M1(E$)`2)-"3H_/___^D9`@``BU0D1(E4)`2)-"3H_/___XV>!`$``(E<)`2+ -M1BR+`(M`%(D$).C\____QX8$`0``@(0>`,>&#`$```````")MA`!``")7"0$ -MBT8LBP"+0!2)!"3H_/___\9&)O]K1"0<7(M,)""`O`%*`0````^$>@$``+\` -M````B<.-K`%X`0``B?:)+"3H_/___XG&BU0D((T$$XN0?`$``(FP?`$``(DN -MB58$B3*`?B;_#X2B````@'XE``^%GP```(GS@+ZU``````^$3P$```^V3B0/ -MMM&)T(/@!H/X!G4I]L(!="2)="0,#[9&38E$)`B+1C")1"0$BTPD)(D,).C\ -M____Z14!``"#^`1U(?;!`8VT)@````!T%8E<)`2+7"0@B1PDZ/S____I[P`` -M`(/X!@^%Y@```/;!`0^%W0```(E<)`2+1"0@B00DZ/S____IR````(GVQH:U -M`````(/'`8M,)""-E!E``0``#[9""HGY.,@/APW___\XP75SA,!T;[\````` -M:UPD'%R+1"0@C:P8>`$``(DL).C\____B<:+5"0@C003BY!\`0``B;!\`0`` -MB2Z)5@2),H!^)O]T'@^V1B4\(G0$/`UU$L=$)`0*````B30DZ/S____K/H/' -M`8GYBT0D(#B,&$H!``!WIFM$)!Q<BU0D(,:$`D4!``#_BTPD)(E,)`2)%"3H -M_/___X!\)"L`#X6B````BUPD1(-[4`!T%8G8@\!0B40D!(M$)"")!"3H_/__ -M_XM4)$2)5"0$BTPD((D,).C\____@'PD*P!T:`^WAI0```"#P`%FB8:4```` -M9H/X"G8.9L>&E```````Z>#]___'1"0$"@```(DT).C\____ZS&+7"0@#[:; -M-08``(E<)!QKPUR+5"0@C80"0`$``(E$)"2+DG`%``"XW"(!`.F^_/__@\0L -M6UY?7<.#[`B)'"2)="0$BUPD#(MT)!"+5"04BTPD'(7;=$2%]G1`A=)T/(-\ -M)!@`=#5F@?F%`'<N#[?!@+P#L`0``/]T(<9").'&0B4!QD(F$V:)2A")<AB+ -M1"08B4)LN`$```#K!;@`````BQPDBW0D!(/$",.-M"8`````C;PG`````(M, -M)`2+002+0`2C`````(!\)`@`=`J)PH'*```,`.L(B<*!XO__\_^+002)$(M! -M!(E0#(M!!(E0$(M!!(E0%(M!!(E0&(M!!(E0!,.0D)"05E.+7"00BTPD,(MT -M)#@/MT0D#&8](B=W268]("=S>68]0"%T<V8]0"%W&68]("&0=&9F/2(A=&!F -M/5`'C70F`'5@ZU1F/40A=$YF/40AB?9R4&8M$"=F@_@!=T:-="8`ZS9F/8(G -M=#!F/8(GC70F`'<29CTD)W0@9CV`)XUT)@!U(.L49CV`D70.9CV`E(GV=`9F -M/8!R=0K&`T"+1"04Q@`"BT0D&,8`!`^V$XM$)"R($&;'`8``9L<&``"+1"0@ -MQ@`@BT0D)&;'```!#[83BT0D*(@0#[8#9@,!9@,&BU0D-&:)`HM4)!QFB0(/ -MMQ&+1"0\9HD0#[<1@\(+BT0D0&:)$%M>PXUV`(V\)P````!55U93@^P$BWPD -M&`^V1"0<B$0D`P^W;U!FA>T/A-X```"+C\0%``"^`````(UT)@"+`87`#X2V -M````#[=0$+O_````N/____]F@?J%`'=T#[?"#[:<![`$``"X_____X#[_W1< -M9H/Z?W<9#[;#BY=P!0``:<`D`0``BT00+`^V0`3K/6:!^H$`=QD/ML.+EZ@% -M``!IP!0-``"+1!`(#[9`!.L=#[;#BY>,!0``:<"P````BT005`^V0`2-M@`` -M```/MMN+EW`%```Z1"0#=2$/M\-IP"0!```/MD00)(/@!8/X!74+L`'K&XVT -M)@````"#Q@&#P01F.>X/A3'___^X`````(/$!%M>7UW#C70F`%575E.#[`B+ -M5"0<BT(LBRB+A10*``")1"0$#[=]4+D`````O@````#K28VV``````^WV8N% -MQ`4``(L4F(72=#"+0B0E____`#WA`1``="&+1"0<#[=`'&8[0A!U$XG8P>`& -MBU0D!&8Y=!`(=`N-=@"#P0%F.?ERN&8Y^700@\8!9H/^'W<'N0````#KY@^W -MQH/$"%M>7UW#D(VT)@````!3BU0D"(M,)`R+7"00BT(XA<!T%L8`<(M".(A( -M`HM".,9`!P"+0CB(6`Q;PXUT)@#SPXVT)@````"-O"<`````@^P0B1PDB70D -M!(E\)`B);"0,BTPD%`^W?"08B?J!XO\!``"+@<0%``"+-)"%]G0P#[:9U@`` -M``^V1A6)V=/@#[?H#[?7N/__``#3X"'".=4/E<`/ML"#Z`$AQI"-="8`B?"+ -M'"2+="0$BWPD"(ML)`R#Q!##C70F`(V\)P````"+5"0$N`````"-M"8````` -MQ@00`(/``3VP````=?+&0BC_QD(T_XU"%(E"%(E"&,.+5"0$N`````"-M"8` -M````Q@00`(/``3TD`0``=?+&0DS_QD)"_\9"3A^-0A")0A")0A3#C;8````` -MC;\`````4XM$)`B+7"0,BQ.+B/@```")D/@````%]````(D"B4H$B1''`P`` -M``!;PY"-="8`4X/L"(M<)!"+3"04BY/P````B8OP````C8/L````B0&)402) -M"H-Y3`!T#XU!3(E$)`2)'"3H_/___X/$"%O#D%.+1"0(BUPD#(L3BX@(`0`` -MB9`(`0``!00!``")`HE*!(D1QP,`````6\.0C70F`%.+1"0(BUPD#(L3BX@` -M`0``B9```0``!?P```")`HE*!(D1QP,`````6\.0C70F`(M$)`2+5"0(BX@8 -M`0``B9`8`0``!10!``")`HE*!(D1P^L-D)"0D)"0D)"0D)"0D%.+1"0(BUPD -M#(L3BX@@`0``B9`@`0``!1P!``")`HE*!(D1QP,`````6\.0C70F`%.+1"0( -MBUPD#(L3BX@0`0``B9`0`0``!0P!``")`HE*!(D1QP,`````6\.0C70F``^V -M1"0$/!=W%P^VP/\DA2`'``"X-````,.-M"8`````N`0```##N#P```"0C70F -M`,.X%````,.X0````(UT)@##N!P```##N!@```"-="8`P[@H````P[@@```` -MC70F`,.X3````,.)]HV\)P````!55U93BVPD%(M\)!@/ME<DB="#X`:#^`9U -M"?;"`0^$R@```(!_0O\/A<````"+10"+L!@!``")-0````"Y`````+@!```` -MB</3XX7>=3*(3T*+50")V`GPB8(8`0``BT4`BX!8`0``HP````")VB'"='>+ -M10")D%@!``#K;(UV`(/!`8/Y('6YBT4`B[`<`0``B34`````L0"-M"8````` -MB<JX`0```(G#T^.%WG4RC4(@B$="BU4`B=@)\(F"'`$``(M%`(N`8`$``*,` -M````B=HAPG03BT4`B9!@`0``ZPB#P0&#^2!UMX!%+`%;7E]=PXVT)@````"- -MO"<`````5U93BWPD$(M4)!2`>C3_#X6W````BP>+L!@!``")-0````"Y```` -M`+@!````B</3XX7>=2R(2C2+%XG8"?")@A@!``"+!XN`6`$``*,`````B=HA -MPG1QBP>)D%@!``#K9X/!`8/Y('6_BP>+L!P!``")-0````"Q`(VT)@````"X -M`0```(G#T^.%WG4SB$HTBQ>)V`GPB8(<`0``BP>+@&`!``"C`````(G:(<)T -M&8L'B9!@`0``ZP^-M"8`````@\$!@_D@=;B`1RP!6UY?PU,/MEPD$(M$)`B+ -M2"B%R70QN@````"+1)$\A<!T!3A8370/@\(!@_H%=!>0C70F`.OD9H%Y)(4` -M=PB%P(UT)@!U!;@`````6\.-M"8`````55=64X/L#(ML)"`/MD0D),'@"`^V -M5"0HC300@'T<``^$R0```(-].``/A+\```#V160)#Y3`B<>Y`````(UV`(G+ -M#[<4S8`'``")\"'09CG"#X6+````#[84S84'``"`^@-T!8#Z!W4+B?@X!,V$ -M!P``=6[&110@#[8$W88'``")1"0(#[;"B40D!(DL).C\____BU4X#[8$W8<' -M``"(0@V#?"0L`'0KBT0D+(L8BW`$BTTXB7$#BT4X@`B`]D5F!'00A?9T#(M% -M.(E8"(M%.(`@?XM5.`^V11R#Z`>(0@?K#(/!`8/Y$`^%4O___X/$#%M>7UW# -MC78`C;PG`````(/L#(M$)!"-D`P!``"Y`````#F0#`$``'01B10DZ/S___^) -MP<=`%`````")R(/$#,/K#9"0D)"0D)"0D)"0D)"#[`R+1"00C9`<`0``N0`` -M```YD!P!``!T"HD4).C\____B<&)R(/$#,.-M@````"#[`R+1"00C9`4`0`` -MN0`````YD!0!``!T)(D4).C\____B<&)PK@`````D(UT)@#&!!``@\`!/9@` -M``!U\HG(@\0,PXVV`````(V_`````(/L#(M$)!"-D/P```"Y`````#F0_``` -M`'0*B10DZ/S___^)P8G(@\0,PXVV`````(/L#(M$)!"-D/0```"Y`````#F0 -M]````'0.B10DZ/S___^)P<9`"`")R(/$#,.)]E575E.#[!R)1"00B=7'1"04 -M`````,=$)!@`````C78`BU0D&(M,)!`/MH0*,`4``#S_#X0H`0``#[;0#[=$ -M)!AF@^B`9CV!``^'?`````^WPFG`%`T``(G#`YFH!0``@'LP`'15O@````"- -M>RB-=@")/"3H_/___XU(^(M3+(E#+(EY"(E1#(D"BT$D)0#__P`]``#_`'48 -M]D$G!'02BT$@A<!T"XGJB%`!C;8`````@\8!B?$X2S!WMHGHB(.2````@\4! -MZ98````/M\)IP+````")PXM4)!`#FHP%``"`>Q\`=$.Y`````(VV``````^V -MP8M4@SR%TG0EBT(D)0#__P`]``#_`'46]D(G!'00BT(@A<!T"8GJB%`!C70F -M`(/!`3A+'W?(B>F(BZ0```"`NZ4````#=1Z#1"04`8M$)!2#P`.#^`9V%H/% -M`<=$)!0`````ZPF#Q0&-M@````"#1"08`8-\)!@P_O__BU0D$(N"/`4` -M`#G0=0P%N`P``(GJZ';^__^#Q!Q;7E]=PXVT)@````"-O"<`````@^P,BU0D -M$(M$)!0/MD@$#[:$$38%``#&A!$V!0``_P^WP(E$)`2!PM0)``")%"3H_/__ -M_X/$#,.0C;0F`````(/L"(D<)(ET)`2+="00BUY,A=MT)(U.)(U3#(M##(E& -M)(M"!(E!!(M""(E!"(M"#(E!#(M#'(E&-(L<)(MT)`2#Q`C#C;8`````C;\` -M````@^P(B1PDB70D!(MT)!"+7DR%VW0HC4L,C58DBT8DB4,,BT($B4$$BT(( -MB4$(BT(,B4$,BT8TB4,<QD,(`8L<)(MT)`2#Q`C#D(VT)@````!75E.#[!"+ -M?"0@BQ]F@WM0``^$Q@```+X`````C70F``^WUHN#Q`4``(L,D(7)#X2<```` -M#[=1$&:!^H4`=W$/M\(/MH0#L`0``#S_=&)F@_I_=QP/ML"+DW`%``!IP"0! -M``"+1!`L#[90!.M(C78`9H'Z@0!W&0^VP(N3J`4``&G`%`T``(M$$`@/ME`$ -MZR4/ML"+DXP%``!IP+````"+1!!4#[90!.L,C;0F`````+K_````#[9'!#G" -M=1/'1"0$`````(D,).C\____C78`@\8!9CES4`^'0____X/$$%M>7\.-M@`` -M``"-OP````"#[!R)7"04B70D&(M<)""+="0D#[9&-#S_=!D/ML")1"0$BP.) -M!"3H_/___\9&-/^`:RP!BUPD%(MT)!B#Q!S#@^P<B5PD%(ET)!B+7"0@BW0D -M)`^V1D(\_W09#[;`B40D!(L#B00DZ/S____&1D+_@&LL`8M<)!2+="08@\0< -MPU=64X/L$(MT)""+7"0D.7,8#X3/````@'L4``^%E@````^V0R0\%70(/%4/ -MA88```"+0TR%P'1_B<*`>`@!=7=F@7@,X0%U;XN^<`4```^W0Q"YW"(!`&8] -MA0!W$0^WP`^VA`:P!```:<@D`0``C00/#[92#H#Z!W0?@/H'=P>`^@9U,^L< -M@/H,C;0F`````'0@@/H-=2#K$&:#8#K]B?;K%6:#2#H"ZPYF@V`Z]XGVZP5F -M@T@Z"(-[4`!T*8%[(``(``!W$8U#4(E$)`2)-"3H_/___^L/C4-0B40D!(DT -M).C\____9H%[).$!#X4&`0``#[=#$&8]A0!W>@^WP`^VA`:P!```//]T:XN6 -M<`4``(![%`!U7P^VP&G`)`$``(T$`@^V4R:`^@=T'8#Z!W<'@/H&=3'K&H#Z -M#)"-="8`=""`^@UU(.L09H-@.OV)]NL59H-(.@+K#F:#8#KWB?;K!6:#2#H( -M9H%[).$!C78`#X6"````@'LF"W5\#[=+$`^V1BZ->/^)RNL<D(UT)@"#P@%F -M@?J%`'<-#[?"@+PPL`0``/]U"0^WPCGX?.+K1&8]_P!U&>L\@\$!9H'YA0!W -M#0^WP8"\,+`$``#_=0P/M\$YQW_BN/\```!FB4,0QD,4@(E<)`2)-"3H_/__ -M_^D<`0``QD,4`#ES&'0HBT-,A<!T(8!X"`%U#(E<)`2)-"3H_/___XU#3(E$ -M)`2)-"3H_/___X-[5`!T#XU#5(E$)`2)-"3H_/___XE<)`2+0QB)!"3_4VP/ -MMU,D9H'ZX0%U50^V0R:#Z!$\`7=*#[=#$&8]A0`/AZ4````/M\`/MH0&L`0` -M`#S_#X22````#[;`:<"P`````X:,!0``@'@I`'5]@'@T_W1WB40D!(DT).C\ -M____ZVD/MT,09CV%`'=?#[?`#[:,!K`$``"+OG`%``"+0R0E____`#WA`1`` -M=#^!^?\```!T-V:!^N$!=1`/MD,F@^@1/`%V)9"-="8`:<$D`0``C00'@'A/ -M`'41B40D!(DT).C\____D(UT)@"#Q!!;7E_#B?:-O"<`````@^P<B5PD$(ET -M)!2)?"08BW0D((M<)"0/MU,09H'ZA0`/AXH````/M\(/MHP&L`0``(#Y_W1Z -M9H/Z?W<9#[;!BY9P!0``:<`D`0``BT00+`^V0`3K.V:!^H$`=QD/ML&+EJ@% -M``!IP!0-``"+1!`(#[9`!.L;#[;!BY:,!0``:<"P````BT005`^V0`2-="8` -M9CW_`'0:#[?`#[:\!C8%``")^#S_=`D/ML%F/?\`=1")7"0$B30DZ/S____K -M?HGV#[93)P^V0R@/MDLI@/D!=`6`^0AU6HM+2,'@"`^VT@'0)?\!``"+EL0% -M```Y#()U/P^W21Z)RF;!Z@4/M]*#X1^X_O___]/`(4265(M#2`^W0!Z)1"0$ -MB?H/ML)KP%R-A`9``0``B00DZ/S___^)]HE<)`2)-"3H_/___XM<)!"+="04 -MBWPD&(/$',.-="8`@^P,B5PD!(ET)`B+7"00C8/L````O@`````Y@^P```!T -M'8D$).C\____B<:)!"3H_/___XD<).C\____B49,B?"+7"0$BW0D"(/$#,.- -M=@"#[!R)7"00B70D%(E\)!B+?"0@BT<LBS")-"3H_/___XG#A<!T:XDT).C\ -M____B<*%P'4<QH>U`````8E<)`2)-"3H_/___^M(C;0F`````,9#)``/MT<< -M9HE#$,9#:`^)<QC'0R``````QT,T`````(M""(E#.,9#'"2)4U#'0VP````` -MB5PD!(DT).C\____BUPD$(MT)!2+?"08@\0<P^L-D)"0D)"0D)"0D)"0D(/L -M'(E<)!")="04B7PD&(M\)""+="0DBT<LBQB)'"3H_/___XG"A<!T/<9`)!O& -M0"4!B?"(0B@/MT<<9HE"$,9":`^)6AC'0B``````QT(T`````,=";`````") -M5"0$B1PDZ/S___^+7"00BW0D%(M\)!B#Q!S#B?:-O"<`````@^PLB5PD'(ET -M)"")?"0DB6PD*(M<)#2+1"0PBRB)+"3H_/___XG&A<`/A*(```")+"3H_/__ -M_XG'A<!U$XET)`2)+"3H_/___^F#````B?:-5CR)5"08QD8DX<9&)0'&1B8. -M#[=#'&:)1A!F@V,X]XM4)#"+`HE&&,=&(``(``"+1PB)1C2)?E#'1FSPL0`` -MQT0D!`````"+1"08B00DZ/S___^+1B")1"0,BT<,BU<0B40D!(E4)`B+5"08 -MB10DZ/S___^)="0$B2PDZ/S___^+7"0<BW0D((M\)"2+;"0H@\0LPXUT)@"- -MO"<`````@^P<B5PD$(ET)!2)?"08BW0D*(M$)""+&(D<).C\____B<*%P'1E -MQD`DX<9`)0&)\(A")L9")P^+3"0D#[=!'&:)0A")6AC'0B``````QT(T```` -M`,=";`````")5"0$B1PDZ/S___^)\#P!=1+'!"0%````Z/S____K$(UT)@#' -M!"10PP``Z/S___^+7"00BW0D%(M\)!B#Q!S#C70F`(/L'(E<)!")="04B7PD -M&(MT)""+7"0D#[=3$&:!^H4`#X>+````#[?"#[:,!K`$``"`^?]T>V:#^G]W -M&0^VP8N6<`4``&G`)`$``(M$$"P/MD`$ZSMF@?J!`'<9#[;!BY:H!0``:<`4 -M#0``BT00"`^V0`3K&P^VP8N6C`4``&G`L````(M$$%0/MD`$C70F`#S_=!T/ -MML`/MI0&-@4``(#Z_W0-@/G_=`@/MD,4/`9U/X-[4`!T*X%[(``(``")]G<1 -MC4-0B40D!(DT).C\____ZP^-0U")1"0$B30DZ/S___^)7"0$B30DZ/S____K -M<HN^<`4``(3`="W'1"0(`0````^VP6G`)`$``(T$!XE$)`0/ML)KP%R-A`9` -M`0``B00DZ/S___^#>U``="F!>R``"```=Q&-0U")1"0$B30DZ/S____K#XU# -M4(E$)`2)-"3H_/___XE<)`2)-"3H_/___XM<)!"+="04BWPD&(/$',.-M"8` -M````C;PG`````(/L+(E<)!R)="0@B7PD)(EL)"B+7"0PBVPD-`^W51!F@?J% -M``^'#@$```^WP@^VC`.P!```@/G_#X3Z````9H/Z?W<<#[;!BY-P!0``:<`D -M`0``BT00+`^V0`3K.HUV`&:!^H$`=QD/ML&+DZ@%``!IP!0-``"+1!`(#[9` -M!.L7#[;!BY.,!0``:<"P````BT005`^V0`0\_P^$F0````^V^0^VP`^VM`,V -M!0``B?`\_P^$@0```&:!__\`='J`?10&='2+DW`%``")5"08@'TF`75,QP0D -M"@```.C\____B6PD!(D<).C\____QT0D"`(````/M\=IP"0!```#1"08B40D -M!(GR#[;":\!<C80#0`$``(D$).C\____ZQJ)]L<$)/0!``#H_/___XEL)`2) -M'"3H_/___XM<)!R+="0@BWPD)(ML)"B#Q"S#C70F`(/L+(E<)"")="0DB7PD -M*(M\)#"+1RR+,(DT).C\____B<.%P'4*QH>U`````>MDD,9`)!7&0!6K#[=' -M'&:)0Q")<QC'1"00`0```,=$)`P!````B5PD"(E\)`2)-"3H_/___X3`=1F) -M7"0$B30DZ/S____&A[4````!ZQ>-="8`QT-L`````(E<)`2)-"3H_/___XM< -M)""+="0DBWPD*(/$+,.-M@````"-O"<`````@^PLB5PD'(ET)"")?"0DB6PD -M*(M<)#"+0RR+*(DL).C\____B<:%P'4,QH.U`````>FX````B2PDZ/S___^) -MQX7`=1S&@[4````!B70D!(DL).C\____Z9(```"-="8`QD8D&L9&)0C&1B8( -MQD8G`,9&*/_&1BD`QD85JP^W0QQFB480B6X8QT8@_P```,=&9`@```"+1PB) -M1C0%_P```(E&.,9&'"2)?E#'1FP`````C5X\QT0D!`````")'"3H_/___\=$ -M)`S_````BT<,BU<0B40D!(E4)`B)'"3H_/___XET)`2)+"3H_/___XM<)!R+ -M="0@BWPD)(ML)"B#Q"S#C;0F`````(V\)P````"#["R)7"0<B70D((E\)"2) -M;"0HBVPD,`^V1"0TB$0D%XM%+(LXB3PDZ/S___^)PX7`=0W&A;4````!Z;H` -M``"0B3PDZ/S___^)QH7`=1C&A;4````!B5PD!(D\).C\____Z9,```"-0SR) -M1"08QD,D$H!\)!<`=`[&0R4!QD,F@,9#*$#K!,9#*"3&0Q6K#[=%'&:)0Q") -M>QC'0R!@````QT-D"````(M&"(E#-(ES4,=#;`````#'1"0$`````(M$)!B) -M!"3H_/___\=$)`Q@````BT8,BU80B40D!(E4)`B+1"08B00DZ/S___^)7"0$ -MB3PDZ/S___^+7"0<BW0D((M\)"2+;"0H@\0LPXUV`(/L+(E<)!R)="0@B7PD -M)(EL)"B+7"0PBT,LBRB)+"3H_/___XG&A<!U#,:#M0````'IN@```(DL).C\ -M____B<>%P'4<QH.U`````8ET)`2)+"3H_/___^F4````C70F`(U&/(E$)!C& -M1B2>QD8E$,9&,2#&1A6K#[=#'&:)1A");AC'1B`@````QT9D"````(M'"(E& -M-(E^4(/`((E&.,9&'"3'1FP`````QD9H#\=$)`0`````BT0D&(D$).C\____ -MQT0D#"````"+1PR+5Q")1"0$B50D"(M$)!B)!"3H_/___XET)`2)+"3H_/__ -M_XM<)!R+="0@BWPD)(ML)"B#Q"S#C;8`````C;\`````@^PLB5PD'(ET)"") -M?"0DB6PD*(M<)#"+0RR+*(DL).C\____B<:%P'4,QH.U`````>FN````B2PD -MZ/S___^)QX7`=1S&@[4````!B70D!(DL).C\____Z8@```"-="8`C48\B40D -M&,9&)"7&1A6K#[=#'&:)1A");AC'1B`(````QT9D"````(M'"(E&-(/`"(E& -M.,9&'"2)?E#'1FP`````QT0D!`````"+1"08B00DZ/S____'1"0,"````(M' +M!8/@_@G0B$$%C9<@!```BTPD9(M!-(ET)`B)1"0$B10DZ/S____I-@$``(M< +M)&0/MD,D@^@$/*MW00^VP/\DA2@$``"+="1D#[9&+,'@"`^V5BV-#!"#^0UW +M%K@!````T^"IV#X``'0(BT0D2(!(`02+1"1(@$@!`>L(BT0D2(!@`?N+1"1( +MQD`$#8M$)$B`8`7^BU0D2(M,)&0/MD$5BUPD8`^VB]8```#3X&8)0@B+1"1( +M@&`!'\:'(`0```:+7"0@@<.@````B5PD!(V'(00``(D$).C\____B5PD!(V' +M)00``(D$).C\____C8]$!```BU0D9(/")(MT)&2+1B2)AT0$``"+0@2)002+ +M0@B)00B+0@R)00R+5"0@BX*H````B8<X!```BX*L````B8<\!```Q@>1BTPD +M(`^VD;8```"#X@\/MD<!@^#P"="(1P$/MT$<@\`!9L'`"&:)1P*%VP^$AP`` +M`(L#B4<$BT,$B4<(ZWJH`71V#[=$)!J)1"0,BT0D2(E$)`B+7"1DB5PD!(MT +M)!R)-"3H_/____9#9@%T#XM$)$@/MT`(P>`#B$0D.(U$)#>)1"0,B7PD"(M$ +M)&2)1"0$BU0D'(D4).C\____BTPD9/9!9@%T"HM<)!R`2P@!ZPB+="0<@&8( +M_HM4)&"+@L0%``"+7"1DBTPD%(D<B`^W5"0:9L'J!0^WT@^W7"0:B=F#X1^X +M`0```-/@BW0D8`F$EL@%``"+5"1DBT(D)?___P`]X0$0`'4TC40D1(E$)`S' +M1"0(`````(E<)`2+3"0<B0PDZ/S___\/MD0D1X/@'X/(0(A$)$?IP0```(MT +M)&1F@7XDX0%U10^V1B:#Z!$\`7<ZBT0D*(E$)`2+5"1@B10DZ/S___^-1"1$ +MB40D#(M,)"@/MD$TB40D"(E<)`2+7"0<B1PDZ/S____K<(MT)"")="0$BT0D +M8(D$).C\____C40D1(E$)`P/MD9"B40D"(E<)`2+5"0<B10DZ/S___\/ME8D +MB="#X`:#^`9U+O;"`70I#[9$)$>#X!^#R&"(1"1'#[960H/B?\'B!`^W1"1& +M9B4/^`G09HE$)$:-1"1$B40D!(M,)&")#"3H_/___XM'((M7)+D#````B=,) +MPW1$B40D!(E4)`C'!"1X````Z/S___^Y`P```.LIBW0D8`^VAC4&``!KP%R- +MA`9``0``B40D'(N6J`4``+CL!@T`Z8WT__^)R(/$3%M>7UW#C78`C;PG```` +M`%575E.#[!R+="0PQT0D%`````"-OMP```#IH@$``(GVB3PDZ/S___^)PX-X +M3`!U,(DT).C\____B4-,A<!U(8V6W````(N&W````(E8!(D#B5,$B9[<```` +MZ8@!``")]HM#)"7___\`/>$!$``/A-,````/MT,09CV```^$Q0````^VT&:) +M4Q!F@_I_=A-F@7LDX0%U(@^V0R:#Z!$\`7<79H'ZA0!W$`^WP@^VC`:P!``` +M@/G_=1C&0Q0&B5PD!(DT).C\____Z?,```"-=@`/MVLD9H']X0%U%0^V0R:( +M1"0;@^@1/`$/A^````#K%0^VP6G`*`$```.&<`4``(E$)!3K#`^V1"0;@^@! +M/`%V-6:!^H``="YF@?WA`74+#[9#)H/H$3P!=AR+1"04]D`G!'42QD,4!HE< +M)`2)-"3H_/___^MZB5PD!(DT).C\____@_@"=PN#^`%S)HUT)@#K$(/X`W59 +MB?:-O"<`````ZT&)7"0$B30DZ/S___^)]NL^@WM4`'0/C4-4B40D!(DT).C\ +M____C9;<````BX;<````B5@$B0.)4P2)GMP```#K,XE<)`2)-"3H_/___Y`Y +MOMP````/A53^___K&`^VP6G`*`$```.&<`4``(E$)!3I'____X/$'%M>7UW# +MB?:#[#R)7"0LB70D,(E\)#2);"0XBWPD0(MW+(LN#[9&"*@0=`S&A[0````& +MZ:("```/MI>T````@/H!#X2#````@/H!<AN`^@0/A*H```"`^@8/A>$"``#I +M=@(``(UT)@#&A[0````!B7PD!(DL).C\____BT0D1,9`%(&`3@@(@WA4`'03 +MBT0D1(/`5(E$)`2)+"3H_/___XN%W````(M4)$2)4`2)`HV%W````(E"!(F5 +MW````(DL).C\____Z74"``"#X/>(1@B`A[<````!QH>T`````(M,)$3&010" +MB4PD!(DL).C\____B2PDZ/S____I0`(``,:'MP````"+1"1$@WA4`'0/@\!4 +MB40D!(DL).C\____BT\@A<D/A*\!``"+402-0@&)002#^B@/AYT!``"+A=P` +M``"+5"1$B5`$B0*-A=P```")0@2)E=P```"`?R;_=":+1S2%P'0&@'@F`'09 +MB7PD",=$)`0"````B30DZ/S____IN0$```^V1@B#X/>#R!"(1@B+5S"%TG4- +M@'X*`'4PZ0(!``")]L=$)!``````QT0D#`(````/MD=-B40D"(E4)`2)-"3H +M_/___^EO`0``QT0D(`````#&1"0G`(U..(E,)!R+1"0<B00DZ/S___^)1"0H +MBT8\BU0D*(E6/(M,)!R)"HE"!(D0BT(@A<!T(HE$)`B+A3P%``")1"0$QP0D +M!0```.C\____BT0D*(!(*`*+5"0HB50D",=$)`0&````B30DZ/S___^+3"0H +M@'E/`'1`BUPD((/#`8%\)"!_EI@`=RN)]HDL).C\____QP0D`0```.C\____ +MBT0D*(!X3P!T"X/#`8'[@9:8`'77B5PD((!$)"<!#[94)"<X5@H/ASW___^+ +M1S2%P'4;QD<F`V;'AY0``````(E\)`2)+"3H_/___^MVB00DZ/S___^-M@`` +M``#K9@^V7R;'!"0`````Z/S___^`9@COBX7<````BTPD1(E(!(D!C87<```` +MB4$$B8W<````B7PD",=$)`0&````B30DZ/S___^`^_]U$XE\)`B)="0$B2PD +MZ/S___^-=@")+"3H_/___XM<)"R+="0PBWPD-(ML)#B#Q#S#C70F`%575E.# +M[&R+M"2`````BY9P!0``N-@F`0"+C"2$````9H%Y$(4`=QF+G"2$````#[=# +M$`^VA#"P!```:<`H`0``C3P"BY8X"@``@<)`"```#[9'0L'@"`'"BPJ)#0`` +M``")R,'H$(A$)$"+EC@*``"!PD`(```/MD="P>`(`<*+0@2C`````(A$)%B) +MPL'J"(A4)%G!Z!"(1"1:BY8X"@``@<)`"```#[9'0L'@"`'"BT((HP````"( +M1"1;B<+!Z@B(5"1<P>@0B$0D7<9$)%X`QD0D7P")S<'M&`^V7"1`BT0D7(E$ +M)!"+1"18B40D#(EL)`B)7"0$QP0DI````.C\____B=B#\`&)PH/B`70@@'PD +M0`!T&8N4)(0```#&0A0`N`````#IM`(``(UT)@"+C"2$````@'D4@74SC40D +M6(E$)`R);"0(B5PD!(D,).C\____BYPDA````,9#%`*X`````.EV`@``C;8` +M````BXPDA````(M!)"7___\`/>$!#@!U#L9!%"&X`````.E,`@``BX0DA``` +M`/9`9@%U,X32=2^`?R;_="F-1"18B40D#(EL)`B)7"0$BY0DA````(D4).C\ +M____N`````#I#`(``(E\)`2)-"3H_/___XE\)`2)-"3H_/___XL6BXPDA``` +M``^W01YFP>@%#[?`C02%``,``(F"<`$``(L&BYPDA`````^W2QZ#X1^Z`0`` +M`(G5T^6)J'0!```/MT,>P>`"`X;$!0``QP``````#[=+'HG(9L'H!0^WP(/A +M'XG3T^.)V??1(8R&R`4``(NL)(0````/MTT>B<AFP>@%#[?`@^$?T^+WTB%4 +MAE2+50"+102)0@2)$`^W11Z-EC0)``")1"0$B10DZ/S___^`;T\!QD44@8-] +M5`!T$8GH@\!4B40D!(DT).C\____C4<0.4<0#X3L````B40D+(V6-`D``(E4 +M)#R+3"0LB0PDZ/S___^)PXL6#[=`'F;!Z`4/M\"-!(4``P``B8)P`0``#[=+ +M'H/A'[H!````B=73Y8L&B:AT`0``#[=#'L'@`@.&Q`4``,<```````^W2QZ) +MR&;!Z`4/M\"#X1^)U=/EB>GWT2&,AL@%```/MTL>B<AFP>@%#[?`@^$?T^+W +MTB%4AE0/MT,>B40D!(M$)#R)!"3H_/___X!O3P&#>U0`=`^-0U2)1"0$B30D +MZ/S___^-EMP```"+AMP```")6`2)`XE3!(F>W````(M4)"PY5Q`/A2+___^+ +MC"2$````@6%D___^_\:'M`````2)3"0$B3PDZ/S___^X`0```)"-="8`@\1L +M6UY?7<.0C;0F`````%575E.#[$P/MVPD9(M4)&B)5"0PBT0D;(E$)#2+?"1@ +MBS>+AEP*``")1"04"U0D-`^$BP(```^WU6G"L`0``(M<)!2-#!CV02$"=!6- +M!)4``````X;$!0``BP#&0!0"ZQ.-!)4``````X;$!0``BP#&0!0AP>("B50D +M+(G0`X;$!0``BQ"+0B0E____`#WA`1``#X2*`0``#[="$&8]A0!W#P^WP`^V +MA`:P!```//]U%8M$)"P#AL0%``"+`,9`%`;I+@@```^VP&G`*`$```.&<`4` +M`(E$)!B`?"0S`'E=#[90)(G0@^`&@_@&=1_VP@%T&HL&BY!8`0``B14````` +MA=)T"(L&B9!8`0``BP:+@%`!``"C`````(/(`HL6B8)0`0``BP:+@`0!``"C +M`````(#,_XL6B8($`0``9O=!(`((#X3A````@'XK``^$UP```,9$)!\`NP`` +M``"-=@")V@^VRP^V1PG3^*@!=$>`^P-V'(L&!=`!``"-!(B+`*,`````P>@4 +M@^`!ZQJ-=@"+!@70`0``C02(BP"C`````,'H%(/@`83`=`NX`0```-/@"$0D +M'X/#`8U"`3A&*W>?@'PD'P!T8@^V1"0?.$<)=5B)Z&;!Z`4/M\")Z8/A'[H! +M````T^*%5(94=3V+5"08@+JT`````G<'QH*T`````XM$)"P#AL0%``"+`(E$ +M)`2+3"08B0PDZ/S____IT@8``,=$)!@`````]D0D,P$/A+\&``"+1"0L`X;$ +M!0``BPC&010ABT$D)?___P`]X0$.``^$G`8``(N6.`H``('"0`@``(M<)!@/ +MMD-"P>`(`<*+`J,`````BY8X"@``@<)$"```#[9#0L'@"`'"BP*C`````(N6 +M.`H``('"2`@```^V0T+!X`@!PHL"HP````")3"0$B30DZ/S____I,P8```^W +M_8TLO0````"+AL0%```!Z(L09H%Z).$!#X4'`0``#[9:)H#[$`^'!@8``+@! +M````B=G3X*G`,```#X73````J0```0!U4?;$@`^$X@4``&G'L`0``(M<)!2- +M#!@/MD$SB$(4B>@#AL0%``"+`/9`$P0/A+H%``"`>!0`#X2P!0``BU`XA=(/ +MA*4%```/MD$SB`+IF@4``&G'L`0``(M4)!2-/!")Z`.&Q`4``(L0#[9'*HA" +M%(GH`X;$!0``BP"#>#0`#X1H!0``#[:'(00``(D$).C\____B>H#EL0%``"+ +M$HM2((G#.=!V`HG3C5<HB>@#AL0%``"+`(M`-(E<)`B)5"0$B00DZ/S____I +M'P4``(GH`X;$!0``BP#&0!0`Z0P%``")Z`.&Q`4``(L`B40D((M(2(E,)"2X +M_____XM<)"!F@7L0A0!W%HGH`X;$!0``BP`/MT`0#[:$,+`$```/ML!IP"@! +M``"+GG`%```!P\:#M``````/ME,DB="#X`:#^`8/A70!``#VP@$/A&L!``"+ +M?"0@QD<4`/9'9B`/A(L$``"#?"0D``^$@`0``(M$)"3V0&4"#X2L````BU<@ +MA=(/A*$```"+2%B%R708BT<TB50D"(E$)`2)#"3H_/___^F"````BU0D((-Z +M-`!T>(M,)"2#>6@`=0:#>6P`=&B+?"0@BV\TBU0D)(M":(7`=`B)Q_9"90%T +M+8M,)"2+06R+ECP&``#'1"0(`0```(E4)`2)#"3_T+\`````A<!T!HN^/`8` +M`(M'"(L7B50D"(EL)`2)!"3H_/___P,OBT<$@\<0A<!TWXN6.`H``('"0`@` +M``^V0T+!X`@!PHL"HP````")PL'J$(M\)"2(5U/!Z!AFB4=(BY8X"@``@<)$ +M"```#[9#0L'@"`'"BQ*)%0`````/ML)FB4=,#[;&9HE'3HG0P>@0#[;`9HE' +M4,'J&(A74HN6.`H``('"3`@```^V0T+!X`@!PHL"HP`````/ML!FB4=*Z3(# +M``!IQ[`$``"+5"04C3P0#[9',X3`#X7,````B>@#AL0%``"+`,9`%`"+3"0@ +M]D%F$`^$_0(``(-\)"0`#X3R`@``#[9',XM<)"2(0TKV0V4"#X3=`@``@WD@ +M``^$TP(``(-[:`!U#X-[;`"0C70F``^$O@(``(M$)""+>#2+5"0DBT)HA<!T +M"(G#]D)E`70PBTPD)(M!;(N6/`8``,=$)`@!````B50D!(D,)/_0NP````"% +MP'0)BYX\!@``C78`BT,(BQ.)5"0(B7PD!(D$).C\____`SN+0P2#PQ"%P`^% +M3P(``.O9/`(/A0D"```/MD]`BT<XB40D1`^V5"1'#[9$)$3!X!@)P@^V1"1% +MP>`0"<(/MD0D1L'@"(G3"<.#X7^`^7%V-L9$)"D`@_L!=@L/MD=!@^`/B$0D +M*<9$)"H`@_L"=@@/ME="B%0D*H/[`W9<#[9/0XA,)"OK5\9$)"D`@_L"=@L/ +MMD="@^`/B$0D*<9$)"H`QD0D*P"#^P=V,P^V1T>#P`@YPW8"B</&1"0J`(/[ +M#'8(#[973(A4)"J#^PUV"@^V3TV(3"0KZP7&1"0K`(GH`X;$!0``BP"`>!P` +M=$.%VW0_QD`4((GH`X;$!0``BP`/MD`<.-AS`P^VV(GH`X;$!0``BP"+4#B% +MTG0CC4=`B5PD"(E$)`2)%"3H_/___^L.B>@#AL0%``"+`,9`%"*`?"0I!'4. +MB>@#AL0%``"+`,9`%`*+1"0@.7`8#X3]````@WPD)``/A/(```#V0&80=$8/ +MMD<SBU0D)(A"2O9"90)T-8M,)"`/ME$<B=@XTW8"B="$P'0ABUPD)(M+8(7) +M=!8/ML"-5T")1"0(B50D!(D,).C\____@'PD*0MW60^V1"0I_R2%V`8``(M\ +M)"3&1V8!Z88```"`?"0J!'41@'PD*P)U"HM$)"3&0&81ZVZ+5"0DQD)F`NMD +MBTPD),9!9A#K6HM<)"3&0V8+ZU"+?"0DQD=F!NM&BT0D),9`9@WK/#PH=1H/ +MMD-/@^@!B$-.B>@#AL0%``"+`,9`%('K'CP(=0S'!"00)P``Z/S___^)Z`.& +MQ`4``(L`QD`4(8/$3%M>7UW#C70F`%575E.![)P```"+K"2P````#[>%B@L` +M`&:)1"1^BT4`BX!``0``HP````!F)?\/9HF%B@L``&8[1"1^=6Z+10"+B%`! +M``")#0````"+10")B%`!``"X`````/?!`/__``^$.@D``(E,)`3'!"0>```` +MZ/S___^+E"2P````B10DZ/S___^X`0```.D1"0``D(M%`(N`0`$``*,````` +M9B7_#V:)A8H+``#K%8V-Y````(E,)%2-G30)``")7"10D(N%I`H``(L`HP`` +M```/MXV*"P``)?\/```/M]$YT'6P9H'Y_P\/A14(``#I(@@``(NU7`H``&:# +M1"1^`0^W?"1^9CN]C@L``!G`(<=FB7PD?HN5I`H``(/"!`^WQXL4@HG7P>\0 +M]\<(````#X2O````BT4`BY!0`0``B14`````BT4`B9!0`0``]\(`__\`=&&` +M?2L`=%OVQ@%U,KX`````]\(```$`=#WK(Y"-="8`#[?&C4@(NP$```")W]/G +MA?IU$(U($-/CA=IU!^L8O@`````/M\9KP%R-G`5``0``A=MU(NL,@\8!#[9% +M*V8Y\'>^BX0DL````(D$).C\____Z3H'``"+E"2P````B10DZ/S___^(0POI +M(P<``(UV`(G19H'A_P]FB4PD3@^WV8E<)$1IP[`$``"+3`8@BUP&)(F,)(`` +M``")G"2$````BW0D1,'F`HN%Q`4```'PBP")1"1XA<`/A<0!``")3"00B5PD +M%(E4)`R+7"1$B5PD"(E<)`3'!"3P````Z/S___]F@WU0``^$I08``,:$)(L` +M````#[:\)(L```"-!+T`````B40D6`.%Q`4``(L0A=(/A$@!``!I][`$```# +MM5P*``"+G10*```/MD(5B40D#(E\)`B)5"0$QP0D.0```.C\____BT0D6`.% +MQ`4``(L`B00DZ/S___^+ABP$``"+EB@$``"+CB0$``"+MB`$``")1"04B50D +M$(E,)`R)="0(B7PD!,<$)"P!``#H_/___XGXP>`&`<.+4S2)5"1(BU,PBTLL +MBW,HBWLDBT,@B40D7(M#'(E$)&"+0QB)1"1DBT,4B40D:(M#$(E$)&R+0PR) +MA"24````BT,(B80DD````(M#!(F$)(P```"+&XM$)$B)1"0XB50D-(E,)#") +M="0LB7PD*(M4)%R)5"0DBTPD8(E,)""+?"1DB7PD'(M$)&B)1"08BU0D;(E4 +M)!2+C"24````B4PD$(N\))````")?"0,BX0DC````(E$)`B)7"0$QP0D5`$` +M`.C\____@(0DBP````$/MH0DBP```&8[15`/@Q@%``#I=O[__XUV`/?'(``` +M``^$AP$``(M4)'B`>A2!#X57`0``QD(4(0^W0A[!X`(#A<0%``#'```````/ +MMTH>B<AFP>@%#[?`@^$?N@$```")T]/CB=GWT2&,A<@%``"+?"1X#[=/'HG( +M9L'H!0^WP(/A']/B]](A5(54#[=''HE$)`2+1"10B00DZ/S___^#?U0`=!&) +M^(/`5(E$)`2)+"3H_/___XM,)'@/MU$09H'ZA0`/A\(````/M\(/MH0%L`0` +M`#S_#X2O````9H/Z?W<;#[;`:<`H`0```X5P!0``BT`L@'@$_P^5P.M7BUPD +M>`^W0Q!F/8$`=R,/M\`/MH0HL`0``&G`%`T```.%J`4``(M`"(!X!/\/E<#K +M)HM\)'@/MT<0#[:$*+`$``!IP+`````#A8P%``"+0%2`>`3_#Y7`A,!T,XM$ +M)'B)1"0$B2PDZ/S___^-E=P```"+A=P```"+3"1XB4@$B0&)402)C=P```#I +MGP,``(M<)%2+4P2+1"1X@\`(B4,$BWPD>(E?"(E0!(D"Z7T#```/MT0D3F;! +MZ`4/M\")1"1P#[=<)$Z)V8/A'[@!````T^")1"1TBU0D<(5$E50/A4H#``") +M\`.%Q`4``(L`#[=0$&:!^H4`#X>?````#[?"#[:$!;`$```\_P^$C````&:# +M^G]W&`^VP&G`*`$```.%<`4``(M`+`^V0`3K78GP`X7$!0``BP`/MT`09CV! +M`'<@#[?`#[:$*+`$``!IP!0-```#A:@%``"+0`@/MD`$ZRF)\`.%Q`4``(L` +M#[=`$`^VA"BP!```:<"P`````X6,!0``BT!4#[9`!#S_=`T/ML"`O`4V!0`` +M_W4[BUPD=(M,)'"%7(U4#X6``@``BWPD>,9'%`:)/"3H_/___\=$)`@````` +MB7PD!(DL).C\____Z5<"```/MH0%-@4``&O`7(V$!4`!``"+E"2$````"Y0D +M@````'0>]\<"````=1;'A"2``````````,>$)(0`````````]D`&`@^$60$` +M`(N4)(````"+C"2$````B50D"(E,)`R)7"0$B00DZ/S___^+7"1TBTPD<(5< +MC50/A=D!``"+?"1X@'\4@0^%BP````^W1Q[!X`(#A<0%``#'```````/MT\> +MB<IFP>H%#[?2@^$?N/[____3P"&$E<@%```/MT<>B40D!(M$)%")!"3H_/__ +M_XE\)`2)+"3H_/___X-_5`!T$8GX@\!4B40D!(DL).C\____C97<````BX7< +M````BTPD>(E(!(D!B5$$B8W<````Z4`!``"+A>0````[1"14=$^[`````(/# +M`8L`.40D5'7UA-MT.[X`````BWPD5(D\).C\____C4CXBU<$B4<$B3B)4`2) +M`CM,)'AU!;X!````@.L!==2)\(3`#X7E````BTPD5(M1!(M$)'B#P`B)002+ +M7"1XB4L(B5`$B0*+1"1TBWPD<`F$O90```#IM````(N4)(````"+C"2$```` +MB50D"(E,)`R)7"0$B00DZ/S___^+A>0````[1"14=$^[`````(/#`8L`.40D +M5'7UA-MT.[X`````BTPD5(D,).C\____C4CXBWPD5(M7!(E'!(DXB5`$B0([ +M3"1X=06^`0```(#K`770B?"$P'4WBU0D>(!Z%(%T+8M,)%2+402+1"1X@\`( +MB4$$BUPD>(E+"(E0!(D"BT0D=(M\)'`)A+V4````D`^W5"1^9CF5B@L```^% +MWO?__V:!O8H+``#_#W0ABX6D"@``BP"C`````"7_#P``#[>5B@L``#G0#X6" +M]___C87D````.87D````=$>)QHDT).C\____@^@(#[=('HG+9L'K!0^WVX/A +M'[K^____T\(AE)V4````QT0D"`````")1"0$B2PDZ/S___\YM>0```!UNXDL +M).C\____N`$```"!Q)P```!;7E]=PY"-="8`@^P<B5PD#(ET)!")?"04B6PD +M&(M$)""+F#P%``"+0P2+*(DM`````/?%````D'1HBT,$B2CK88'#P`P``(L# +MBY!0`0``B14`````BP.)D%`!``"%TG0W]\(````0=!F+`\>`4`$``````!"+ +M`XN`4`$``*,`````BP/'@%`!```!````B1PDZ/S___\!QX/&`8/^`G6AZPR^ +M`````+\`````ZYF)^(3`#Y7`A>T/E<()T`^VP(M<)`R+="00BWPD%(ML)!B# +MQ!S#C;0F`````%575E.#["R+="1`BP:+@%`!``")1"04HP````"+!HM4)!2) +MD%`!``#W1"04`/__``^$L`<``(!^*P`/A*8'``#&1"0K``^V;"0KC4T(N`$` +M``")PM/BA50D%'4/C4T0T^"%1"04#X1H!P``@'PD*P-V'HL&!8`!``"-!.B+ +M`*,`````P>@3@^`!ZQR0C70F`(L&!8`!``"-!.B+`*,`````P>@3@^`!A,!T +M&XDT).C\____B>C!X`:-!*B!C`:X"P`````(`(L6@'PD*P-V%8V$ZH`!``"+ +M`*,`````)0```0#K$XV$ZH`!``"+`*,`````)0```0"%P'0K@'PD*P-V$HV$ +MZH`!``#'`````0#I_`8``(V$ZH`!``#'`````0#IZ@8``(!^.0$/A=8%``"` +M?"0K`W89BP8%@`$``(T$Z(L`HP````"#X`'K%XUV`(L&!8`!``"-!.B+`*,` +M````@^`!A,`/A&0!``")Z,'@!HT<J(V$'KP+``"+5A2)1"0$B10DZ/S___^+ +MA!Z8"P``A<!T'8M0*(72=!;V0C("=1")!"3H_/___X3`#X4>`0``B>C!X`:- +M!*B+A`:8"P``A<`/A(<```")1"0D@'@*``^$I0```,9$)",`B<>#QSB)/"3H +M_/___XG#BT<$B5\$B3N)0P2)&/9#*`)U/8M3((72=!Z+ACP%``")5"0(B40D +M!,<$)`4```#H_/___X!+*`*)7"0(QT0D!`8```"+1"0DB00DZ/S___^`1"0C +M`0^V5"0CBT0D)#A0"G8NZY$/MD0D*\=$)`@!````B40D!(DT).C\____QP0D +MH(8!`.C\____N@`M,0'K!;I`2TP`B>C!X`:-'*B-##.)D;P+``#'@<0+``#` +M7P``#[9$)"N)PL'B!HV$@I`+``"-!`:)@<@+``"-A!Z\"P``BU84B40D!(D4 +M).C\____C70F`(!\)"L#=B^-%.T`````BP8%@`$```'0BP"C`````(L&!8`! +M```!PHL"HP````#!Z`>#X`'K+8T4[0````"+!@6``0```="+`*,`````BP8% +M@`$```'"BP*C`````,'H!X/@`83`=%N`?"0K`W8JC0SM`````(L&!80!```! +MR(L`HP````"+%H'"A`$```'1#0```0")`>LQC0SM`````(L&!80!```!R(L` +MHP````"+%H'"A`$```'1#0```0")`>L@@'PD*P-V&8L&!8`!``"-!.B+`*,` +M````P>@2@^`!ZQ>+!@6``0``C03HBP"C`````,'H$H/@`83`#X3?`0``@'PD +M*P-V*HT,[0````"+!@6``0```<B+`*,`````#0``!`"+%H'"@`$```'1B0'K +M*(T,[0````"+!@6``0```<B+`*,`````#0``!`"+%H'"@`$```'1B0&)Z,'@ +M!HT$J(N$!I@+``"%P'0-B<6#>"@`=7_I9@$``(!\)"L#D'8YC13M`````(L& +M!8`!```!T(L(B0T`````BP8%@`$``(T$`HD(BP8%@`$```'"BP*C`````.E; +M`P``C13M`````(L&!8`!```!T(L(B0T`````BP8%@`$``(T$`HD(BP8%@`$` +M``'"BP*C`````.DB`P``BT`H#[=(,@^WT?;&`0^%V0```(G']L("#X3.```` +MB<B#X/UFB4<RC4=PBU84B40D!(D4).C\____QD0D*P"`?Q\`#X1]````QD0D +M*P`/MD0D*XM<ASR%VW1<BU,@A=)T'HN&/`4``(E4)`B)1"0$QP0D!0```.C\ +M____@$LH`HE<)`C'1"0$!@```(DL).C\____@'M/`'0=C78`B30DZ/S____' +M!"0!````Z/S___^`>T\`=>:`1"0K`0^V5"0K.%<?=XC'1W!`2TP`QT=X```` +M`(E_?(U'<(M6%(E$)`2)%"3H_/___XUT)@"`?"0K`W8>BP8%@`$```^V5"0K +MC130BP*C`````,'H"(/@`>L<BP8%@`$```^V5"0KC130BP*C`````,'H"(/@ +M`83`#X0-`0``@'PD*P-V'HL&!8`!```/ME0D*XT4T(L"HP````"#\`&#X`'K +M'(L&!8`!```/ME0D*XT4T(L"HP````"#\`&#X`&$P`^$Q`````^V1"0KB<+! +MX@:-A(*0"P``C00&B40D'(G"BT`(A<`/A)\```")1"08B="#P"R+5A2)1"0$ +MB10DZ/S___^+1"08@'@*`'14O0````")QX/'.(D\).C\____B<.+1P2)7P2) +M.XE#!(D8BU,@A=)T'HN&/`4``(E4)`B)1"0$QP0D!0```.C\____@$LH`H/% +M`8GJBT0D&#A0"G>VBU0D',="+("$'@#'0C0`````B5(XB="#P"R+5A2)1"0$ +MB10DZ/S___^`?"0K`W9D#[9<)"O!XP.+!@6``0```=B+$(D5`````(L&!8`! +M``"-!`.)$(L&!8`!``"-!`.+`*,`````BP8%,`(``(T$`\<``````,<$)!`G +M``#H_/___XL&!30"```!PXL#HP````#K8@^V7"0KP>,#BP8%@`$```'8BQ") +M%0````"+!@6``0``C00#B1"+!@6``0``C00#BP"C`````(L&!5`"``"-!`/' +M``````#'!"00)P``Z/S___^+!@54`@```<.+`Z,`````@$0D*P$/MD0D*SA& +M*P^'7_C__XL&BX!0`0``B40D%*,`````BP:+5"04B9!0`0``]\(`__\`=!WI +M&/C__XGHP>`&C02H@8P&N`L``````0#I_OC__[@`````@\0L6UY?7<.-="8` +MC;PG`````%575E.#[%R+;"1P#[9$)'2(1"0S#[;0B50D-(G0P>`&C020`>B+ +MB)@+``")3"0\#[:XE@L``(M%`(!\)#,#=@S'@'`!``#$`0``ZPK'@'`!``"H +M`0``B40D6`5T`0``B40D.(M<)%B+@W0!``"C`````(M,)#2#X0.[!P```-/C +MB=X)QHM$)%B)L'0!``#'!"3H`P``Z/S____WTR'SBU0D6(F:=`$``(!\)#,# +M=E"+3"0TBUPD6(V4B]`!``"+`J,`````@\@(B0*)R\'C`XM4)%B-A!H``@`` +MQP`X````QP0D$"<``.C\____BTPD6(V$&00"``#'``````#K4(M<)#2+1"18 +MC928T`$``(L"HP````"#R`B)`HM<)#3!XP.+5"18C80:``(``,<`.````,<$ +M)!`G``#H_/___XM,)%B-A!D$`@``QP``````@WPD/``/A(`(``"`?2L`=#*[ +M``````^VRXM4)#P/MD()T_BH`704QT0D"`$```")3"0$B2PDZ/S___^#PP$X +M72MWTXM,)#SV008!=&V)3"0$B2PDZ/S___^+7"0TB5PD!(DL).C\____B=C! +MX`:-!)B-%"B+@K0+``"I```0`'0+)?__[_^)@K0+``"+1"0\B40D!(DL).C\ +M____BT0D-,'@!HM4)#2-!)#'A`68"P```````.G1!P``BTPD/(!Y-`!T&HN% +M^`D``(E,)`2)!"3H_/___XM<)#R`:S0!N/[___\/MDPD--/`B?L@PXA<)$,/ +MA)("``"+1"0TB40D!(DL).C\____BT0D-,'@!HM4)#2-!)"-%"B+@K0+``"I +M```0`'0+)?__[_^)@K0+```/MDPD0XM<)#R(2PF`?2L`#X2N`0``QT0D3``` +M```/ML&)1"0@BU0D6('"``(``(E4)!P/MDPD3(A,)%,/MOF+1"0@B?G3^*@! +M#X0^`0``C1R]`````(E<)"R)^,'@!@'8#[94)$.(E`66"P``@'PD4P,/AHT` +M``"-'/T`````BT0D'`'8QP`X````QP0D$"<``.C\____BTPD6(V$&00"``"+ +M7"0@B1C'@7`!``#$`0``BU0D.(L"HP````")^8/A`[L'````T^.)W@G&B3+' +M!"3H`P``Z/S____WTR'SBTPD.(D9BUPD6(M$)"R-E`/0`0``BP*C`````(/( +M"(D"Z8@```"-'/T`````BT0D'`'8QP`X````QP0D$"<``.C\____BU0D6(V$ +M&@0"``"+3"0@B0C'@G`!``"H`0``BUPD.(L#HP````")^8/A`[L'````T^.) +MW@G&BT0D.(DPQP0DZ`,``.C\____]],AWHM4)#B),HM,)%B-E+G0`0``BP*C +M`````(/("(D"@T0D3`$/MD0D4X/``3A%*W8EZ8_^__^)'"3H_/___XUPX(M3 +M!(E#!(D8B5`$B0*#?@P`=!?K#+X`````BUPD/(/#+(M$)#PY6"QURX7V=#C& +M1C(`@'TK`'0NN0````"Z`````(M<)#P/MD,)T_BH`70.#[;"B$P&0(!&,@&# +MP@&#P0$X32MWW,=$)`@`````QT0D!($```"+1"0\B00DZ/S___^+1"0TP>`& +MBU0D-(T$D,>$!9@+````````@'TK``^%YP,``.D!!0``QT0D"`````#'1"0$ +M!@```(M,)#R)#"3H_/___XM<)#2)7"0$B2PDZ/S___^)V,'@!HT$F(T4*(N" +MM`L``*D``!``=`LE___O_XF"M`L``(M$)#R#P"R+5"0\.4(L#X0>`@``B40D +M%(M,)!2)#"3H_/___XU8X(E<)$2-4`@Y4`@/A-(!``"#PRB)7"08BT0D&(D$ +M).C\____C5CX@'LE#74:C9#\````BT,LBP"+0!2)5"0$B00DZ/S___^+$XM# +M!(E"!(D0@'M/`'0:B2PDZ/S____'!"0!````Z/S___^`>T\`=>:+0R"%P`^$ +M.@$``,=`8`````"`>T\`#X2D````9H-]4``/A)D```"_`````)"-="8`C02] +M``````.%Q`4``(LPA?9T;0^W1A!F.T,<=6-F/84`=UT/M\"`O"BP!```_W10 +MBU4`#[=&'F;!Z`4/M\"-!(4``P``B8)P`0``BU4`#[=.'H/A'[@!````T^") +M@G0!``#&1A0AQT0D"`````")="0$B2PDZ/S___^-M@````"#QP$/MT50.?@/ +MCW'____V0R@$=1^)+"3H_/___XM#(,=$)`@!````B40D!(DL).C\____BT,@ +M#[90`@^V0`&)5"0(B40D!,<$)$8```#H_/___XM#((N5/`4``(E$)`B)5"0$ +MQP0D`0```.C\____BT,@BY4\!0``B40D"(E4)`3'!"0&````Z/S____'0R`` +M````BU0D/(!J"@&+3"1$@&DP`8E<)`2)+"3H_/___XM$)!B+7"1$.4,H#X4U +M_O__BU0D/(!J'`&+3"1$B4PD!(DL).C\____BT0D%(M<)#PY0RP/A>;]__^+ +M1"0\@\`XBU0D/#E".`^$'P$``+X`````B<>)/"3H_/___XG#@'A/`'0VC48! +M@?Y_EI@`=@2)QNLGB<:)+"3H_/___\<$)`$```#H_/___X![3P!T"X/&`8'^ +M@9:8`'7;BT,@A<`/A*8```#'0&``````]D,H!'4?B2PDZ/S___^+0R#'1"0( +M`0```(E$)`2)+"3H_/___XM3(`^V@I@````/ME("C02`#[:$`@`````/ME4B +M#[9-(8E$)`R)5"0(B4PD!,<$)%@```#H_/___XM#((N5/`4``(E$)`B)5"0$ +MQP0D`0```.C\____BT,@BY4\!0``B40D"(E4)`3'!"0&````Z/S____'0R`` +M````BTPD/(!I"@&)7"0$B2PDZ/S___^+7"0\.7LX#X7H_O__BT0D/(E$)`2) +M+"3H_/___XM$)#3!X`:+5"0TC020QX0%F`L```````#I#_S__\=$)$@````` +M#[9,)$.)3"0HBUPD6('#T`$``(E<)"0/MGPD2(GX#[;`B40D5(M$)"@/MDPD +M5-/XJ`%U#(G[.%PD,P^%Q@```(GX/`-V8XM4)%C'@G`!``#$`0``BTPD.(L! +MHP````"+3"14@^$#C0Q)NP<```#3XXG>"<:+1"0XB3#'!"3H`P``Z/S____W +MTR'SBU0D.(D:BTPD5(M<)"2-%(N+`J,`````@\@(B0+K78M$)%C'@'`!``"H +M`0``BU0D.(L"HP````"+3"14@^$#C0Q)NP<```#3XXG>"<:),L<$).@#``#H +M_/____?3(=Z+3"0XB3&+7"14BT0D)(T4F(L"HP````"#R`B)`H-$)$@!C4<! +M.$4K#X<`____@\1<6UY?7<.-M"8`````C;PG`````%575E.#[!R+?"0PBW0D +M-`^V;RN)Z(3`="P/ME8)NP````#VP@%T$^L<C;0F`````(G0B=G3^*@!=1"# +MPP&)Z#C#=>WK!;L`````]D8(`G4(C48X.48X=6J)-"3H_/___X3`=$^)/"3H +M_/___XG!A<!T4(M6/(E&/(U&.(D!B5$$B0J`1@H!B7$LQD$D!<9!)0#&04T/ +MQT0D#`$```#'1"0(`0```(E,)`2)-"3H_/___^L/#[;#B40D!(D\).C\____ +M@\0<6UY?7<.-M@````!55U93@^P,BVPD(`^V?"0DB?@/ML")1"0(B<;!Y@*[ +M`````,<$)!`G``#H_/___XGZ@/H#=AJ+10`%T`$```'PBP"C`````,'H%(/@ +M`>L9D(M%``70`0``C00&BP"C`````,'H%(/@`83`=0J#PP%F@?LL`76MBT0D +M"(E$)`2)+"3H_/___XDL).C\____BT0D",'@!HM4)`B-!)`!Z/:`E0L```%T +M$HN`F`L``(E$)`2)+"3H_/___X/$#%M>7UW#ZPV0D)"0D)"0D)"0D)"055=6 +M4X/L'`^V1"0TB$0D&HM\)#`/MO")\,'@!HT$L(NL!Y@+``"%[0^$J@$``+C^ +M____B?'3P(1%"0^%F`$``(U%+#E%+'4-@'T*`'4HB?;I`P,```^V1"0:B<+! +MX@:-A(*0"P``C00'B00DZ/S____IX@(``,9$)!L`C74XB?:)-"3H_/___XG# +MBT8$B5X$B3.)0P2)&(![)0`/A1\!```/MT,<@[R'L`(```!U$8-[(``/A.@` +M``"-M"8`````#[=#'(N$A[`"``"#>'``#X2M````QH.T``````^V4R2)T(/@ +M!H/X!G4V]L(!=#'&0R8%QD,G!`^V0TV+4S"+2RR)7"0,B40D"(E4)`2)#"3H +M_/___^FF````C;8`````#[93)(G0@^`&@_@$=2+VP@%T'<9#)@/&0R<$B5PD +M!(D\).C\____ZW>-M"8`````#[93)(G0@^`&@_@&=6+VP@%U7<9#)P;&0R8% +M9L>#E```````B5PD!(D\).C\____ZSZ+0R"+ESP%``")1"0(B50D!,<$)`0` +M``#H_/___^L?#[=#'(N7/`4``(E$)`B)5"0$QP0D`@```.C\____D(!$)!L! +M#[9$)!LX10H/AH4!``#IJ/[__XTLM0````"[`````,<$)!`G``#H_/___X!\ +M)!H#=AF+!P70`0```>B+`*,`````P>@4@^`!ZQ>0BP<%T`$```'HBP"C```` +M`,'H%(/@`83`=0J#PP%F@?LL`76PB70D!(D\).C\____B3PDZ/S___^)\,'@ +M!HT$L(NT!Y@+``"%]@^$^0```(!_*P!T-+L`````C;8`````#[;+#[9&"=/X +MJ`%T%,=$)`@`````B4PD!(D\).C\____@\,!.%\K=]</MD0D&HG"P>(&C82" +MD`L``(T$!XE&&(U&+#E&+'4JC48X.48X=2+K<HD<).C\____C6C@BU,$B4,$ +MB1B)4`2)`H-]#`!T%>L.O0````"-7BR-M@`````Y7BQUS87M=%_&13(`@'\K +M`'15N@````"[`````(UV``^V1@F)T=/XJ`%T#@^VPXA4!4"`13(!@\,!@\(! +M.%<K=B;KW/9&!@%T#HET)`2)/"3H_/___^L0QT0D!`````")-"3H_/___X/$ +M'%M>7UW#55=64X/L#(M\)""+'XMO*`^V<RN)\(3`=%:-@Y`+``"Y`````#GX +M=1WK19"-="8`#[;!B<+!X@:-A(*0"P``C00#.?AT"8/!`8GP.,%UX8#Y`W8A +MBP,%T`$```^VT8T4D(L"HP````#!Z!2#X`'K'[D`````BP,%T`$```^VT8T4 +MD(L"HP````#!Z!2#X`&$P'05#[;!B6PD"(E$)`2)'"3H_/___^L/#[;!B40D +M!(D<).C\____@\0,6UY?7<.055=64X/L'(M<)#2+1"0PB40D%(MX5(LW]D<( +M$'0$QD`U!HM4)!0/MD(U/`%T=3P!<AD\!`^$E@```#P&C70F``^%.@,``.FG +M`0``BTPD%,9!-0&)3"0$B30DZ/S____&0Q2!@$\("(-[5`!T#XU#5(E$)`2) +M-"3H_/___XV6W````(N&W````(E8!(D#B5,$B9[<````B30DZ/S____IW0(` +M`(!G"/>+1"04@$`V`<9`-0#&0Q0"B5PD!(DT).C\____B30DZ/S____IL`(` +M``^V1PB#X/>#R!"(1PB+3"04BY&8````C4(!B8&8````@_H"#X?Y````@WM4 +M`'0/C4-4B40D!(DT).C\____C9;<````BX;<````B5@$B0.)4P2)GMP```"+ +M1"04@'@F`'4+@'\*`'4BZ:0```#'1"0(`````,=$)`0"````B3PDZ/S____I +M)@(``,9$)!L`C6\XB2PDZ/S___^)PXM%!(E=!(DKB4,$B1B+4R"%TG0>BX8\ +M!0``B50D"(E$)`3'!"0%````Z/S___^`2R@"B5PD",=$)`0&````B3PDZ/S_ +M__^`>T\`=!J)-"3H_/___\<$)`$```#H_/___X![3P!UYH!$)!L!#[94)!LX +M5PIW@8M,)!2)#"3H_/___^F.`0``@&<(]XM$)!3'@)@`````````@WM4`'0/ +MC4-4B40D!(DT).C\____C9;<````BX;<````B5@$B0.)4P2)GMP```#'1"0( +M`````,=$)`0&````B3PDZ/S___^-1S@Y1S@/A)8```")Q8VT)@````")+"3H +M_/___XG#BT`@A<!T9\=`8`````")-"3H_/___XM#(,=$)`@!````B40D!(DT +M).C\____BT,@BY8\!0``B40D"(E4)`3'!"0!````Z/S___^+0R"+ECP%``") +M1"0(B50D!,<$)`8```#H_/___\=#(`````")7"0$B30DZ/S___\Y;S@/A7/_ +M__^+5"04B50D!(DT).C\____QT<H`````(L&BY!8`0``B14`````A=)T"(L& +MB9!8`0``]D<&`71<@'XK`'0AN0````#V1PD!=`SK%`^V1PG3^*@!=0^#P0$X +M3BMW[NL%N0`````/MMF)7"0$B30DZ/S___^)?"0$B30DZ/S___^)V,'@!HT< +MF,>$'I@+````````B?:#Q!Q;7E]=PY"-M"8`````@^PLB5PD'(ET)"")?"0D +MB6PD*(M\)#2+="0PBT8LB40D&(LH#[=/'HG(9L'H!0^WV(/A'[@!````T^"% +M1)U4#X7O`P``BU4`C02=``,``(F"<`$``(M%`(N0=`$``(D5`````,9'%"&+ +M1R0E____`#WA`0\`=2&)/"3H_/___\=$)`@`````B7PD!(DL).C\____Z9P# +M```/MT\>@^$?N`$```#3X(7"=!:)/"3H_/___XDL).C\____C;8`````#[:& +MM````#P$#X=E`P``#[;`_R2%"`<``,:&M`````''1"0(`0```(E\)`2+5"08 +MB10DZ/S____I-P,``,:&M`````+'1"0("````(E\)`2+1"08B00DZ/S____I +M$P,``,:&M`````.)="0(QT0D!"$```"+5"08B10DZ/S___^+5C"%TG0M#[9& +M3<=$)!``````QT0D#`$```")1"0(B50D!(M$)!B)!"3H_/___^G``@``BU0D +M&`^V0@G'1"0(`````(E$)`2)+"3H_/___^F?`@``QH:T````!(-^,`!T2(ET +M)`C'1"0$(0```(M$)!B)!"3H_/___P^V1DV+5C#'1"00`````,=$)`P"```` +MB40D"(E4)`2+5"08B10DZ/S____I2@(``,=$)`@`````QT0D!"$```"+1"08 +MB00DZ/S___^+5"08#[9""<=$)`@!````B40D!(DL).C\____Z0T"``"`?B;_ +M=!V)="0(QT0D!`8```"+1"08B00DZ/S____IZ@$``(ET)`C'1"0$!@```(M4 +M)!B)%"3H_/___XM.((7)=!*+402-0@&)002#^@4/AKD!``#&1B<!QD8F`(!^ +M3P!T(8VT)@````")+"3H_/___\<$)`$```#H_/___X!^3P!UYH-^,`")]G04 +MBU8(BT8,B4($B1"+1C"`:#`!ZQ.+5C2%TG0,#[9&3<=$@CP`````BQ:+1@2) +M0@2)$(M$)!B`:`H!BY;D````A=)T&P^VAMD```#'1"0(`0```(E$)`2)%"3H +M_/___XM6,(72=!@/MD9-QT0D"`$```")1"0$B10DZ/S___^+1B"%P`^$A@`` +M`,=`8`````")+"3H_/___XM&(,=$)`@!````B40D!(DL).C\____BT8@#[90 +M`@^V0`&)5"0(B40D!,<$)$8```#H_/___XM&((N5/`4``(E$)`B)5"0$QP0D +M`0```.C\____BT8@BY4\!0``B40D"(E4)`3'!"0&````Z/S____'1B`````` +MB70D!(DL).C\____BU0D&(!Z!?]T7KX`````@'H*`'0XO@````"+7"08@\,X +MC78`B1PDZ/S___^+4P2)0P2)&(E0!(D"@'@F_W4.@\8!B?"+5"08.$(*=]>) +M\(M4)!@X0@IW$,9"!?^)5"0$B2PDZ/S___^+7"0<BW0D((M\)"2+;"0H@\0L +MPY"-M"8`````55=64X'LC````(N\)*````"+1U2)1"1XBRB+A:0*``"+`(E$ +M)'R)?"0$B2PDZ/S___^`?S8!=@3&1S4$C5\4.5\4#X2X`0``B1PDZ/S___^) +M1"1TBT<4BU0D=(E0!(D"B5H$B5<4A=(/A)P#```/MW(>BTPD>(M!&`^V0`0/ +MME4I#[9-(@^V72&)="04B40D$(E4)`R)3"0(B5PD!,<$)*P!``#H_/___XM$ +M)'0/MT`>B40D6&GPL`0```.U7`H``(N=%`H``(M4)'2)%"3H_/___XN.+`0` +M`(E,)$B+EB@$``"+CB0$``"+MB`$``"+1"1T#[=`'HE$)`2+1"1(B40D%(E4 +M)!")3"0,B70D",<$)-P!``#H_/___XM4)%C!X@8!TXM+-(E,)$B+4S"+2RR+ +M<RB+0R2)1"1<BT,@B40D8(M#'(E$)&2+0QB)1"1HBT,4B40D;(M#$(E$)'"+ +M0PR)A"2(````BT,(B80DA````(M#!(F$)(````"+&XM$)$B)1"0XB50D-(E, +M)#")="0LBU0D7(E4)"B+3"1@B4PD)(M$)&2)1"0@BU0D:(E4)!R+3"1LB4PD +M&(M$)'")1"04BY0DB````(E4)!"+C"2$````B4PD#(N$)(````")1"0(B5PD +M!,<$)%0!``#H_/___V:#?5``=4;IY0$``)"+5"1XBT(8#[9`!`^V52D/MDTB +M#[9=(<=$)!3___\`B40D$(E4)`R)3"0(B5PD!,<$)*P!``#H_/___^D%`@`` +MO@````"-C30)``")3"10C87<````B40D3(VT)@`````/M\;!X`(#A<0%``"+ +M&(7;#X1A`0``#[=#$&8Y1R0/A5,!```/MY6*"P``.50D?'1%@\(!#[>%C@L` +M`#G"&<`APHN%I`H``(/`!(L$D*D```@`=1QF)?\/9CGP=1,Y7"1T=1.)+"3H +M_/___^EU`0``.U0D?'6[#[=#$&8]A0")]@^'\0````^WP("\!;`$``#_#X3@ +M````BU0D>(!Z-``/A=(```#V0@8!#X3(````BU4`#[=#'F;!Z`4/M\"-!(4` +M`P``B8)P`0``#[=+'H/A'[H!````B=#3X(G!BT4`B8AT`0``#[=#'L'@`@.% +MQ`4``,<```````^W2QZ)R&;!Z`4/M\")1"1(@^$?B=#3X(G!]]&+1"1((8R% +MR`4```^W2QZ)R&;!Z`4/M\"#X1_3XO?2(52%5#E<)'1T(HL#BU,$B5`$B0*+ +MA=P```")6`2)`XM4)$R)4P2)G=P````/MT,>B40D!(M,)%")#"3H_/___X!O +M*0&#Q@%F.750#X=\_O__BT0D>/9`!@%T5XM,)'2+$8M!!(E"!(D0B4PD!(D\ +M).C\____ZSN+5"1XBT(8#[9`!`^V52D/MDTB#[9=(<=$)!3___\`B40D$(E4 +M)`R)3"0(B5PD!,<$)*P!``#H_/___X'$C````%M>7UW#55=64X/L;(N,)(`` +M``"+E"2(````B50D8(N$)(P```")1"1DBP&)1"0X#[>$)(0```#!X`*+7"0X +M`X/$!0``BSAF@7\DX0%U-P^V1R:#Z!$\`7<LBW$HB70D0,=$)#P`````"U0D +M9'5OBT0D0,9`-0#'1"0\`````.M=D(UT)@"+7"0XBY-P!0``N-@F`0!F@7\0 +MA0!W%@^W1Q"+="0X#[:$!K`$``!IP"@!```!PHE4)#S'1"1``````(M$)&`+ +M1"1D=1.+1"0\QH"T`````,=$)$``````@'\4@74$@&$(]XM$)&`+1"1D#X7@ +M````QD<4`/9'9B`/A`H&``"+1TB%P`^$_P4``(G#]D!E`G0ABTA8A<ET&HM7 +M-(72=!.+1R")1"0(B50D!(D,).C\____BTPD.(N1.`H``('"0`@``(MT)#P/ +MMD9"P>`(`<*+`J,`````B<+!ZA"(4U/!Z!AFB4-(BY$X"@``@<)$"```#[9& +M0L'@"`'"BQ*)%0`````/ML)FB4-,#[;&9HE#3HG0P>@0#[;`9HE#4,'J&(A3 +M4HN1.`H``('"3`@```^V1D+!X`@!PHL"HP`````/ML!FB4-*Z3X%``"-M@`` +M```/MT<>:<"P!```BU0D.`."7`H``(E$)$2)Q8'%(`0``(!_%(!U"L9'%"&- +MM@````"#?"0\``^$T0```(M<)#R+4R"%TG1>BW<@B70D5`^V@I@````/ME(" +MC02`#[:,`@````"+1"0X#[98(@^V<"&+1"1@BU0D9(E$)!2)5"08BU0D5(E4 +M)!")3"0,B5PD"(ET)`3'!"0,`@``Z/S____IS````(M?((E<)%B+="0\#[9V +M38ET)#"+01@/MD@$BT0D.`^V6"D/MG`B#[90(8E4)`2+1"1@BU0D9(E$)!R) +M5"0@BT0D6(E$)!B+5"0PB50D%(E,)!")7"0,B70D",<$)$`"``#H_/___^MD +M@WPD0`!T78M?((E<)%R+01@/MD@$BW0D.`^V7BD/MG8BBT0D.`^V0"&)1"0$ +MBT0D8(M4)&2)1"08B50D'(M4)%R)5"04B4PD$(E<)`R)="0(QP0D?`(``.C\ +M____C;0F`````(M%#(M5"(M-!(M=``^W=QZ)1"04B50D$(E,)`R)7"0(B70D +M!,<$)+@"``#H_/___XM,)$3V02(!#X3"````C5\\B5PD2(MW5(ET)%"+0P0/ +MME,!B40D"(E4)`3'!"1<````Z/S___^`?SP`#X0_`0``QD0D3P`/MG0D3XT$ +M=L'@`HM4)$B+2@@!P8G#BU0D4`-:"(M#"(E$)#2+`XM3!(E$)"B)5"0LBVD( +MBUD$BPF+5"0TB50D'(M$)"B+5"0LB40D%(E4)!B);"00B4PD"(E<)`R)="0$ +MQP0DZ`(``.C\____@$0D3P$/ME0D3XM,)$@X$0^&MP```.EX____B?:+7"1$ +M@'LG``^)H@````^W5QZ)T&;!Z`4/M\`/M]*)1"0(B50D!,<$)'@```#H_/__ +M_XMT)#B+AM0%``"+EM`%``"+CLP%``"+GL@%``")1"00B50D#(E,)`B)7"0$ +MQP0DCP```.C\____#[=''HE$)`3'!"2K````Z/S___^+%@^W1QYFP>@%#[?` +MC02%``,``(F"<`$``(L6#[=/'H/A'[@!````T^")@G0!``")]F:!?R3A`74< +M#[9')H/H$3P!=Q&+1"1`B00DZ/S____I]`$```^V5"1C]L(!#X3``0``BT<D +M)?___P`]X0$.``^$K0$``(M,)#B+D3@*``"!PD`(``"+7"0\#[9#0L'@"`'" +MBS*)-0````"+D3@*``"!PD0(```/MD-"P>`(`<*+*HDM`````(N1.`H``('" +M2`@```^V0T+!X`@!PHL:B1T`````BY$X"@``@<),"```BTPD/`^V04+!X`@! +MPHL"HP````")1"00B5PD#(EL)`B)="0$QP0DO````.C\____]D=F(`^$S0`` +M`(M/2,9!9A#&1Q0@B?#!Z!"(05.)\,'H&&:)04B)WL'F"(GH#[;0C0069HE! +M3(G>9H'F`/^)Z`^VU(T$%F:)04Z)VL'J$,'B"(GHP>@0#[;``<)FB5%0BUPD +M.(N3.`H``('"3`@``(MT)#P/MD9"P>`(`<*+`J,`````#[;`9HE!2@^W44P/ +MMUE.#[=)4`^WP(E4)!")7"0,B4PD"(E$)`3'!"39````Z/S___^+1"0XBY`X +M"@``@<)`"```#[9&0L'@"`'"QP(`````ZV%F@7\DX0%U(0^V1R:#Z!H\`7<6 +MQP0D(`,``.C\____QD<4(>L\C70F`(E\)`2+5"0XB10DZ/S____K)H32>2*+ +M3"0XBP&+B%@!``")#0````"%R70,BUPD.(L#B8A8`0``@\1L6UY?7<-3@^P( +MBUPD%(M,)!`/MD,D.4L8=4$\"'16/"AT4CRHD'1-/(AT23P*=$4\*HUT)@!T +M/3RJ=#D\BG0UBX'<````B5@$B0.-@=P```")0P2)F=P```#K&8N1X````(F9 +MX````(V!W````(D#B5,$B1J)#"3H_/___X/$"%O#C70F`(/L#(M$)!2)1"0$ +MBT0D$(D$).C\____@\0,PY"-="8`4X/L6(M<)&"-1"1*B40D-(U$)$R)1"0P +MC40D1(E$)"R-1"1&B40D*(U$)%")1"0DC40D4HE$)""-1"13B40D'(U$)$Z) +M1"08C40D5(E$)!2-1"1(B40D$(U$)%6)1"0,C40D5HE$)`B-1"17B40D!`^W +M0R2)!"3H_/___P^V1"17B40D"`^V1"16B40D!(U$)$")!"3H_/___\=$)`P! +M````#[9$)%=IP"@!``")1"0(BT,0B40D!(V#6`4``(D$).C\____QT0D#`$` +M```/MD0D56G`L````(E$)`B+0Q")1"0$C8-T!0``B00DZ/S____'1"0,`0`` +M``^V1"16:<`4#0``B40D"(M#$(E$)`2-@Y`%``")!"3H_/___\=$)`P!```` +M#[=$)%#!X`*)1"0(BT,0B40D!(V#K`4``(D$).C\____QT0D#`$````/MT0D +M2&O`<(E$)`B+0Q")1"0$C8-8!@``B00DZ/S____'1"0,`0````^V1"14#[=4 +M)$@/K\*-!$#!X`*)1"0(BT,0B40D!(V#"`8``(D$).C\____QT0D#`$```#' +M1"0(``(``(M#$(E$)`2-@R0&``")!"3H_/___P^V1"17B40D#,=$)`@`"``` +MBT,0B40D!(V#``<``(D$).C\____QT0D#`$````/MD0D4XT$@,'@`HE$)`B+ +M0Q")1"0$C8.0!@``B00DZ/S____'1"0,`0```,=$)`B@````BT,0B40D!(V# +MK`8``(D$).C\____QT0D#`$````/MD0D4FG`F````(E$)`B+0Q")1"0$C8/( +M!@``B00DZ/S____'1"0,`0````^W1"1.C01`P>`#B40D"(M#$(E$)`2-@^0& +M``")!"3H_/___\=$)`P!````#[=$)%`!P(E$)`B+0Q")1"0$C8,8"0``B00D +MZ/S____'1"0,`0````^V1"17`<")1"0(BT,0B40D!(V#0`D``(D$).C\____ +MQT0D#`$````/MD0D50'`B40D"(M#$(E$)`2-@V@)``")!"3H_/___\=$)`P! +M````#[9$)%8!P(E$)`B+0Q")1"0$C8.0"0``B00DZ/S____'1"0,`0````^V +M0R8!P(E$)`B+0Q")1"0$C8.X"0``B00DZ/S____'1"0,`0````^W1"1&P>`% +MB40D"(M#$(E$)`2-@W0&``")!"3H_/___\=$)`P!````BT0D0(E$)`B+0Q") +M1"0$C8/@"0``B00DZ/S____'1"00`0```,=$)`Q`````#[=$)%#!X`:)1"0( +MBT,0B40D!(V#_`D``(D$).C\____QT0D$`$```#'1"0,``$``,=$)`@`&0`` +MBT,0B40D!(V#(`H``(D$).C\____QT0D$`$```#'1"0,@`````^W1"10:<"P +M!```B40D"(M#$(E$)`2-@T0*``")!"3H_/___\=$)!`!````QT0D#`0````/ +MMT0D3,'@`HE$)`B+0Q")1"0$C8-H"@``B00DZ/S____'1"00`0```,=$)`P$ +M````#[=$)$K!X`*)1"0(BT,0B40D!(V#C`H``(D$).C\____QT0D$`$```#' +M1"0,"`````^V1"13P>`+B40D"(M#$(E$)`2-@[`*``")!"3H_/___\=$)!`! +M````QT0D#`@```#'1"0(```(`(M#$(E$)`2-@]0*``")!"3H_/___\=$)!`! +M````QT0D#`@````/MT0D3FG`C`$``(E$)`B+0Q")1"0$@</X"@``B1PDZ/S_ +M__^X`````(/$6%O#C78`@^PLB5PD'(ET)"")?"0DB6PD*(ML)#"+10")1"04 +MC5TLB1PDZ/S___^)QHU0X(E4)!B+1"04B00DZ/S___^)QXM%,(EU,(M4)!B) +M6B")0B2),+@!````A?\/A(````#&1R3AQD<E`<9')A"`3R<!BU0D-(N"G``` +M`(E'2(M'3(E0'(G0!9````")1SC&1Q7,BU0D&`^V0C-FB4<0BT4`B4<8QT<@ +MD````(M$)#2)1S3'1VS0%@``QT0D!`````"-1SR)!"3H_/___XE\)`2+5"04 +MB10DZ/S___^X`````(M<)!R+="0@BWPD)(ML)"B#Q"S#C;8`````C;PG```` +M`%575E.#[!R+="0PQT0D&`````"+5"08#[:$,C8%```\_P^$S`````^VT&O" +M7(V,!D`!``")3"04@+P&2@$````/A*T```"_`````(E$)!"-K`9X`0``C80& +M0`$``(E$)`R)+"3H_/___XG#BT0D$`'PBY!\`0``B9A\`0``B2N)4P2)&HM# +M((7`=!Z)1"0(BX8\!0``B40D!,<$)`4```#H_/___X!+*`*)7"0(QT0D!`(` +M``"+1"04B00DZ/S___^`>T\`=!J)-"3H_/___\<$)`$```#H_/___X![3P!U +MYH/'`8GZBTPD##A1"@^';O___X-$)!@!@WPD&`0/A1#___^)-"3H_/___X/$ +M'%M>7UW#C;8`````C;PG`````%575E.#['R+A"20````QD`Y`,9`.`#&0#<` +MQH"Q#````(G"@<*0"P``N`````")]L8$$`"#P`$]$`$``'7RBX0DD`````7< +M````BY0DD````(F"W````(F"X````(G0!>0```")@N0```")@N@```"!PNP` +M``")5"1$BXPDD````(F1[````(F1\````(G/@<?T````B;GT````B;GX```` +M@<'\````B4PD3(N<))````")B_P```")BP`!``"!PP0!``")7"10B[0DD``` +M`(F>!`$``(F>"`$``(GU@<44`0``B:X4`0``B:X8`0``@<8<`0``B70D2(N$ +M))````")L!P!``")L"`!```%#`$``(E$)%2+E"20````B8(,`0``B8(0`0`` +MC40D=HE$)#2-1"1XB40D,(U$)&B)1"0LC40D;HE$)"B-1"1ZB40D)(U$)'") +M1"0@C40D<8E$)!R-1"1LB40D&(U$)'.)1"04C40D:HE$)!"-1"1RB40D#(U$ +M)'2)1"0(C40D=8E$)`0/MT(DB00DZ/S___\/MD0D=8N,))````"(02X/MD0D +M=(A!+P^V1"1RB('9````#[=$)'IFB4%0#[=$)'AFB8&,"P``#[=$)':#Z`%F +MB8&."P``#[=$)&IFB4$Z#[=!)&8]@)%T"F8]@)0/A:T*``"+G"20````QD,U +M!,9#*P3&0S9`QD,T`,:#U@````G&0RP`B=@%6`4``(D$).C\____B<*)@W`% +M```/MD0D=6G`*`$``(7`=`O&`@"#P@&#Z`%U]8N$))`````%=`4``(D$).C\ +M____B<*+M"20````B8:,!0``#[9$)')IP+````"%P'0+Q@(`@\(!@^@!=?6+ +MA"20````!9`%``")!"3H_/___XG"BX0DD````(F0J`4```^V1"1T:<`4#0`` +MA<!T"\8"`(/"`8/H`77UBX0DD`````6L!0``B00DZ/S___^)PHN,))````") +M@<0%```/MT0D>L'@`H7`=`O&`@"#P@&#Z`%U]8N$))`````%)`8``(D$).C\ +M____BYPDD````(F#/`8``(G8!0@&``")!"3H_/___XG#B[0DD````(F&(`8` +M`(GP!5@&``")!"3H_/___XG"B89P!@``9H-\)&H`=$:Y`````(E:1`^V1"1S +MB$(\B[0DD````(N&\````(F6\````(MT)$2),HE"!(D0#[9$)'.-!$"-'(.# +MPG"#P0%F.4PD:G>_BX0DD`````5T!@``B00DZ/S___^)PHN$))````")D(P& +M``!F@WPD;@!T,+D`````QD((`(N<))````"+@_@```")D_@```").HE"!(D0 +M@\(@@\$!9CE,)&YWU8N$))`````%D`8``(D$).C\____B<*+M"20````B8:H +M!@``@'PD<0!T,[D`````BYPDD````(N#``$``(F3``$``(MT)$R),HE"!(D0 +M@\(4@\$!#[9$)'%F.<AWTHN$))`````%K`8``(D$).C\____B<*+A"20```` +MB9#$!@``C8J@````BYPDD````(N#"`$``(F3"`$``(MT)%"),HE"!(D0@\(4 +M.<IUVXG8!<@&``")!"3H_/___XG"B8/@!@``@'PD<`!T,KD`````BYPDD``` +M`(N#&`$``(F3&`$``(DJB4($B1"!PI@```"#P0$/MD0D<&8YR'?3BX0DD``` +M``7D!@``B00DZ/S___^)PHNT))````")AOP&``!F@WPD;`!T,+D`````BZPD +MD````(N%$`$``(F5$`$``(M<)%2)&HE"!(D0@\(8@\$!9CE,)&QWU8!\)'4` +M=$^[`````(NT))````"!Q@`'``")-"3H_/___P^WTXNL))````")A)48!P`` +MBY4@`0``B84@`0``BTPD2(D(B5`$B0*#PP$/MD0D=68YV'?#BX0DD`````48 +M"0``B00DZ/S___^+G"20````B8,P"0``B8,T"0``#[=$)'IFB8,Z"0``#[?` +MB40D!(G8!30)``")!"3H_/___XG8!4`)``")!"3H_/___XF#6`D``(F#7`D` +M``^V1"1U9HF#8@D```^WP(E$)`2)V`5<"0``B00DZ/S___^)V`5H"0``B00D +MZ/S___^)@X`)``")@X0)```/MD0D<F:)@XH)```/M\")1"0$B=@%A`D``(D$ +M).C\____B=@%D`D``(D$).C\____B8.H"0``B8.L"0``#[9$)'1FB8.R"0`` +M#[?`B40D!(G8!:P)``")!"3H_/___XG8!;@)``")!"3H_/___XF#T`D``(F# +MU`D```^V0R9FB8/:"0``#[9#)HE$)`2)V`74"0``B00DZ/S___^)V`7@"0`` +MB00DZ/S___^)PHF#^`D```^V1"1T:<!T!```B<&!P71%``!T#XG0B<K&``"# +MP`&#Z@%U]8NT))````"+AO@)``")"(N6^`D```^V1"1TB$($#[9$)'2)1"0( +MB4PD!(N&^`D``(D$).C\____OP````"`?B8`#X20````O@`````/M\YKR5R+ +MK"20````C;P-0`$``(T4*8GPB$<$QD<%`(FJ0`$``,9'"@#&@G0!````QH)< +M`0```,>"F`$```````"-A`U@`0``B8)@`0``B8)D`0``@\`,B8)L`0``B8)P +M`0``C80->`$``(F">`$``(F"?`$``,9'!@*#Q@$/MD4F9CGP#X=U____BY0D +MD````,9"-`#&@C8%``#_QH(W!0``_\:".`4``/_&@CD%``#_@'PD=0`/A(,` +M``"[``````^WRVG1*`$``(NT))````"+AG`%``#&1!`G`8N&<`4``,9$`B8` +MBX9P!0``QD0"3/^+AG`%``#&1`)"_XN&<`4``&;'A`*4``````#'A(ZP`@`` +M`````(G1`XYP!0``C4$0B4$0`Y9P!0``C4(0B4(4@\,!#[9$)'5F.=AW@HNL +M))````!FQX74``````"X`````(VV`````(N4))````#&A!"P!```_X/``3V& +M````=>>`?"1T``^$K0```+L`````#[?#:<`4#0``BXPDD````(N1J`4``,9$ +M`C``BY&H!0``QD00,0"+D:@%``#'1!`,`````(G!B[0DD`````..J`4``(U1 +M$(E1$(G!`XZH!0``C5$0B5$4B<$#CJ@%``"-41B)41B)P0..J`4``(U1&(E1 +M'(N6J`4``(E\$`B)P0..J`4``(U1*(E1*`.&J`4``(U0*(E0+(/#`0^V1"1T +M9CG8#X=8____BZPDD````,:%UP```("`?"1R`'1]NP`````/M]-ITK````"+ +MC"20````BX&,!0``9L=$$#($`(N!C`4``,9$`B8`BX&,!0``QD0"*/^+@8P% +M``#&1`(T_XG1B[0DD`````..C`4``(U!%(E!%(G1`XZ,!0``C4$4B4$8BX:, +M!0``B7P"5(/#`0^V1"1R9CG8=XB+K"20````QH78````@HGH!1@*``")1"0$ +MC4#DB00DZ/S___^)A10*``")Z`4\"@``B40D!(U`Y(D$).C\____B84X"@`` +MB>@%8`H``(E$)`2-0.2)!"3H_/___XF%7`H``(GH!80*``")1"0$C4#DB00D +MZ/S___^)A8`*``")Z`6H"@``B40D!(U`Y(D$).C\____B86D"@``B>@%S`H` +M`(E$)`2-0.2)!"3H_/___XG!B87("@``BYPDD````(N#S`H``(N3T`H``(!\ +M)'$`=%J)PXG6OP````")S2G%BT0D3(D$).C\____C50=`(E0"(E8#(EP$(N, +M))````"+D0`!``")@0`!``"+3"1,B0B)4`2)`H'#``@``(/6`(/'`0^V1"1Q +M9CGX=[.+A"20````!?`*``")1"0$BX0DD`````74"@``B00DZ/S___^)1"18 +MBYPDD````(F#[`H``(NL))````"+G?`*``"+M?0*``"_`````+T`````BT0D +M4(D$).C\____BU0D6`'ZB5`(B5@,B7`0BXPDD````(N1"`$``(F!"`$``(M, +M)%")"(E0!(D"@<,```$`@]8`@<<```$`@]4`B?@U```(``GH=:J+A"20```` +M!10+``")1"0$BX0DD`````7X"@``B00DZ/S___^)P8N<))````")@Q`+``"+ +MM"20````BX84"P``BY88"P``9H-\)&P`=%>)PXG6OP````")S2G%BT0D5(D$ +M).C\____C50=`(E0"(E8#(EP$(N,))````"+D1`!``")@1`!``"+3"14B0B) +M4`2)`H'#C`$``(/6`(/'`68Y?"1L=[:#Q'Q;7E]=PXVV`````(V_`````%57 +M5E.#[`R+;"0@BWPD)(M?5`^V1RN)1"0(B6PD!(D<).C\____B<9F@T\R$(!] +M*P!T2;D`````]D,)`70,ZSP/MD,)T_BH`74,@\$!#[9%*V8YR'?J9H/Y`W8E +MBT4`!=`!```/M]&-%)"+`J,`````P>@4@_`!@^`!ZR.Y`````(M%``70`0`` +M#[?1C120BP*C`````,'H%(/P`8/@`83`=!0/ML&)1"0$B2PDZ/S____IA@$` +M`(U#.#E#.`^$$0$``(7V#X0)`0``#[9&3<=$ASP`````BQ:+1@2)0@2)$(ET +M)`C'1"0$!@```(D<).C\____@'Y/`'0?D(UT)@")+"3H_/___\<$)`$```#H +M_/___X!^3P!UYHM&((7`=%;'0&``````]D8H!'4(B2PDZ/S___^+1B"+E3P% +M``")1"0(B50D!,<$)`$```#H_/___XM&((N5/`4``(E$)`B)5"0$QP0D!@`` +M`.C\____QT8@`````(!K"@&)="0$B2PDZ/S___^+10"+D%@!``")%0````"% +MTG0)BT4`B9!8`0``QD<F`&:#9S+O@'\?`'0BN@`````/M\*+1(<\A<!T!H!X +M)O]U=8/"`0^V1Q]F.=!WXX!_,@!X#;X`````@'\?`'40ZTR)?"0$B2PDZ/S_ +M___K2`^WQHM<ASR%VW0G]D,H`G0ABT,@BY4\!0``B40D"(E4)`3'!"0&```` +MZ/S___^`8RC]@\8!#[9''V8Y\'?"9L=',@(`@&<M_8/$#%M>7UW#C70F`(V\ +M)P````!55U93@>R<````BX0DL````(E$)'2+4"R)5"1\BSJ+AZ0*``"+`(F$ +M)(````"+3"1TB4PD!(D\).C\____BVPD=("]MP````%V!\:%M`````2+1"1T +M@\`0QT0D>`````"+5"1T.4(0="J+7"1T@\,0B1PDZ/S___^)1"1XBTPD=(M! +M$(ML)'B):`2)10")702):1"+1"1T@W@@`'17N____P"#?"1X`'0(BU0D>`^W +M6AZ+3"1TBU$@#[:"F`````^V4@*-!(`/MH0"``````^V5R(/MD\AB5PD$(E$ +M)`R)5"0(B4PD!,<$)$0#``#H_/___^M7O?___P"#?"1X`'0(BT0D>`^W:!Z+ +M5"1T#[9R38M,)'R+01@/MD`$#[97*0^V3R(/ME\AB6PD&(ET)!2)1"00B50D +M#(E,)`B)7"0$QP0D=`,``.C\____@WPD>``/A&($``"+;"1X#[=M'HEL)%1I +M];`$```#MUP*``"+GQ0*``"+1"1XB00DZ/S___^+EBP$``")5"1`BY8H!``` +MBXXD!```B[8@!```BT0D>`^W:!Z+1"1`B40D%(E4)!")3"0,B70D"(EL)`3' +M!"3<`0``Z/S___^+1"14P>`&`<.+4S2)5"1`BU,PBTLLBW,HBVLDB6PD6(M# +M((E$)%R+:QR);"1@BT,8B40D9(MK%(EL)&B+0Q")1"1LBVL,BT,(B80DE``` +M`(M#!(F$))````"+&XM$)$")1"0XB50D-(E,)#")="0LBU0D6(E4)"B+3"1< +MB4PD)(M$)&")1"0@BU0D9(E4)!R+3"1HB4PD&(M$)&R)1"04B6PD$(N4))0` +M``")5"0,BXPDD````(E,)`B)7"0$QP0D5`$``.C\____BVPD>(/%/(FL)(0` +M``"+1"1XBT!4B80DC````(M%!`^V50&)1"0(B50D!,<$)%P```#H_/___X!] +M`0`/A*,```#&A"2+`````)"-="8`#[:T)(L```"-!';!X`*+E"2$````BTH( +M`<&)PXNL)(P````#70B+0PB)1"1PBP.+4P2)1"1`B50D1(MI"(M9!(L)BU0D +M<(E4)!R+1"1`BU0D1(E$)!2)5"08B6PD$(E,)`B)7"0,B70D!,<$).@"``#H +M_/___X"$)(L````!#[:4)(L```"+C"2$````.%$!#X=J____9H-_4``/A`(" +M``"^`````(VO-`D``(V'W````(E$)%`/M\;!X`(#A\0%``"+&(7;#X3*`0`` +M#[=#$(M4)'1F.4(<#X6X`0``#[>7B@L``#F4)(````!T8HGV@\(!#[>'C@L` +M`#G"&<`APHN'I`H``(/`!(L$D*D```@`=31F)?\/9CGP=2LY7"1X=2Z+3"1X +M#[=!'HE$)`3'!"3M````Z/S___^)/"3H_/___^F1`0``.Y0D@````'6@BT0D +M?(!X-``/A3@!```/MT,09CV%``^'*@$```^WP("\![`$``#_#X09`0``@[PD +ML``````/A/$```"+5"1T#[9")(/@!8/X!0^%W0```(L7#[=#'F;!Z`4/M\"- +M!(4``P``B8)P`0``#[=+'H/A'[H!````B=#3X(G!BP>)B'0!```/MT,>P>`" +M`X?$!0``QP``````#[=+'HG(9L'H!0^WP(E$)$R#X1^)T-/@B<'WT8M$)$PA +MC(?(!0``#[=+'HG(9L'H!0^WP(/A']/B]](A5(=4.UPD>'0WBQ.+0P2)0@2) +M$(-[5`!T#XU#5(E$)`2)/"3H_/___XN'W````(E8!(D#BU0D4(E3!(F?W``` +M``^W0QZ)1"0$B2PDZ/S___^+3"1T@&E/`>L:BT0D?/9`!@)T$(E<)`2+5"1T +MB10DZ/S___^#Q@%F.7=0#X<3_O__@[PDL`````!T*XM,)'0/MD$D@^`%@_@% +M=1N+;"1XBU4`BT4$B4($B1");"0$B0PDZ/S___^!Q)P```!;7E]=PY"0D)"0 +MD)"0D)"0D)!55U93@^P,BWPD(`^V="0D#[9$)"R(1"0+BT<LBPBZ``````^V +M7"0H`?.(7"0#B?8/MH0*L`0``#S_=$8/ML!IP"@!``")1"0$`X%P!0``B?,X +MF-H```!U*3FXY````'4A#[9<)`.(F-D```"+@7`%```/MEPD"XML)`2(G`78 +M````@\(!@?J`````=:.#Q`Q;7E]=PXUT)@"-O"<`````@^P(B1PDB70D!(MT +M)!@/MEPD$`^V5"04BT0D#(M(,`^V@9`````\3W<I#[;`C02``=J(E,&5```` +M#[:!D````(T$@(GRB)3!E````("!D`````&+'"2+="0$@\0(PXGV5U93BWPD +M$`^W1"04N_____]FA<!T0;O_____N0````"#Z`$/M_`/MA0YC4+0/`EW%X#[ +M_P^4P(/H`2'##[;#C02`C5Q"T.L%@/O_=0J#P0&-1@$YP77/#[;#6UY?PXGV +M55=64XML)!0/MG0D&`^V?"0<BT4LBPBZ`````(UT)@`/MH0*L`0``#S_="L/ +MML!IP"@!```#@7`%```YJ.0```!U%(GS.)C9````=0J)^HB0VP```.L+@\(! +M@?J`````=;Y;7E]=PXGVC;PG`````%575E.#[`2+="08#[9\)!P/MD0D)(A$ +M)`.+1BR+&(MN,+D`````#[:$&;`$```\_W1&#[;`:<`H`0``B<(#DW`%```Y +MLN0```!U+8GX.(+9````=2.`?"0#`'0.BX+@````BU0D((D"ZQF+3"0@BP&) +M@N````#K"X/!`8'Y@````'6CB>JY`````(VV``````^V@I0````\`78Y/!=T +M-8GX.(*5````=2N`?"0#`'02C02)BX3%F````(M4)"")`NL=C12)BTPD((L! +MB835F````.L+@\$!@\(H@_E0=;&#Q`1;7E]=PXGVC;PG`````%575E.#["`/ +MMFPD.(M$)#2+L.@````/MD8"P>`(#[96`XT\$`^WQX/`!#T`"```#X_M```` +MB>J$TG1.BTPD-`^VD=P```")TX/CX`^V1@&#X`^)T8/A$`G8"<B)TX/C"(/@ +M\XG1@^$$"=@)R(/B`H/@_(M<)#0/MHO<````@^$!"=`)R(A&`>M,#[96`8G3 +M@^/@BTPD-`^V@=P```"#X`^)T8/A$`G8"<B)TX/C"(/@\XG1@^$$"=@)R(/B +M`H/@_`^V3@�$)T`G(BUPD-(B#W````(U6"`^WQXU\!@0YUW8_B50D'+L` +M````B>@/MO"-;"0<B70D#(EL)`@/ML.)1"0$BU0D-(D4).C\____BT0D'(/` +M!(E$)!R#PP$Y^'+3@\0@6UY?7<.-M@````!3@^P8BTPD)(M9-`^V0P+!X`@/ +MME,#`=`/M\"-4`0/MT$@.<)_+HM,)""+@>@```")5"0(B5PD!(D$).C\____ +MQT0D!`````"+1"0@B00DZ/S___^#Q!A;PXVT)@````!55U93@^P<#[9\)#B+ +M1"0PBU@PB5PD&+X`````BVPD-(/%!`^V@Y0````\`79"/!=T/HGX.(.5```` +M=32-!+:+3"08C93!G````(M,)#0/MD$#/"!V!;@@````#[;`B40D"(EL)`2) +M%"3H_/___XGV@\8!@\,H@_Y0=:B#Q!Q;7E]=PXVV`````(V\)P````"#["R) +M7"0<B70D((E\)"2);"0HBUPD,`^V1"0TB$0D%XM#+(LHB2PDZ/S___^)QH7` +M#X0'`0``B2PDZ/S___^)QX7`=1&)="0$B2PDZ/S____IZ````(U6/(E4)!B+ +M4`B+@^@```"+3"0\B4PD"(E$)`2)%"3H_/___\9&:`K&1A6L#[=#'&:)1A"+ +M1"1`B49(B6X8BU0D/(E6((-.9!*+1PB)1C2)?E"-@[@```")1CC&1AP@QT9L +M`````,9&)#O&1B4"#[9,)!>(3B:+1"0XP>@0B$8GBU0D.`^VQHA&*(A6*0^V +M1B*(1BH/MD8AB$8K#[9,)#R(3BS&1BT`QT0D!`````"+1"08B00DZ/S___^+ +M1B")1"0,BT<,BU<0B40D!(E4)`B+5"08B10DZ/S___^)="0$B2PDZ/S___^+ +M7"0<BW0D((M\)"2+;"0H@\0LPXVT)@````"-O"<`````@^PLB5PD'(ET)"") +M?"0DB6PD*(M<)#`/MD0D-(A$)!>+0RR+*(DL).C\____B<:%P`^$[0```(DL +M).C\____B<>%P'41B70D!(DL).C\____Z<X```"-5CR)5"08QD9H"L9&%:P/ +MMT,<9HE&$(M$)$")1DB);AC'1F0(````B7Y0BT<(B48TBU0D/(E6((V#N``` +M`(E&.,9&'"#'1FP`````QD8D/,9&)0(/MD0D%XA&)HM$)#C!Z!"(1B>+5"0X +M#[;&B$8HB%8I#[9&(HA&*@^V1B&(1BL/MD0D/(A&+,9&+0#'1"0$`````(M4 +M)!B)%"3H_/___XM&((E$)`R+1PR+5Q")1"0$B50D"(M$)!B)!"3H_/___XET +M)`2)+"3H_/___XM<)!R+="0@BWPD)(ML)"B#Q"S#D(VT)@````"#["R)7"0< +MB70D((E\)"2);"0HBVPD,(M%+(L`B40D%(N5Z`````^V0@+!X`@/ME(#`=`/ +MM\"-6`2!^P`(```/C^\```"+1"04B00DZ/S___^)QH7`#X39````BT0D%(D$ +M).C\____B<>%P'45B70D!(M$)!2)!"3H_/___^FR````C48\B40D&(M7"(N% +MZ````(E<)`B)1"0$B10DZ/S____&1A6L#[=%'&:)1A"+1"04B488B5X@@TYD +M$HM'"(E&-(E^4(V%N````(E&.,9&'"#'1FP`````QD8D'<9&)1#&1B8"#[9& +M(8A&)XA>*,=$)`0`````BT0D&(D$).C\____BT8@B40D#(M'#(M7$(E$)`2) +M5"0(BT0D&(D$).C\____B70D!(M$)!2)!"3H_/___XM<)!R+="0@BWPD)(ML +M)"B#Q"S#D(VT)@````"#["R)7"0DB70D*(M<)#`/ME0D-`^V="0XQT0D(``` +M``"`>R<!=$K'1"0,`0```(U$)"")1"0(#[;"B40D!(D<).C\____BT0D((7` +M=".`"(")\(3`=`J+1"0@@$@#(.L(BT0D((!@`]^)'"3H_/___XM<)"2+="0H +M@\0LPXUV`(/L+(E<)!R)="0@B7PD)(EL)"B+7"0P#[9$)#2(1"07BT,LBRB) +M+"3H_/___XG&A<`/A+D```")+"3H_/___XG'A<!U$8ET)`2)+"3H_/___^F: +M````C48\B40D&,9&%:P/MT,<9HE&$(EN&,=&9`@```")?E"+1PB)1C3'1B`` +M"```C8.X````B48XQD8<(,=&;`````#&1B0<QD8E`0^V1"07B$8FQD8G",9& +M*`#'1"0$`````(M$)!B)!"3H_/___XM&((E$)`R+1PR+5Q")1"0$B50D"(M$ +M)!B)!"3H_/___XET)`2)+"3H_/___XM<)!R+="0@BWPD)(ML)"B#Q"S#C;8` +M````C;\`````55=64X/L'(M,)#2+630/MD,"P>`(#[93`P'0#[?PC58$#[=! +M(#G"#X^#`0``C7L(C6PS!(E\)!#&1"07`,=$)!@`````.>\/@_4```"-=@`/ +MMD0D&(A$)!8/MD<"P>`(#[97`P'09HE$)!0/M_")="0$BT0D$(/`!(D$).C\ +M____//]U:XM$)!"-5#`$B=,YU0^&^@```,9$)!?_C70F``^V0@+!X`@/ME(# +MC300#[?&B40D!(U#!(D$).C\____//]U$8!\)!?_#X6.````D.F#````.$0D +M%W8$B$0D%P^WQHU4`P2)TSG5=G'KLHGV*D0D%P^VP(E$)`@/MEPD%HE<)`2+ +M5"0PB10DZ/S___^)7"0(B7PD!(M$)#")!"3H_/___P^W1"04BU0D$(U\`@2) +M?"00@T0D&`$Y_0^'#O___\=$)`0"````BT0D,(D$).C\____ZUC&1"07``^V +M1"06B40D"(E\)`2+5"0PB10DZ/S___\/MT0D%(M4)!"-?`($B7PD$(-$)!@! +MZ;_^__\/MD0D%HE$)`B)?"0$BT0D,(D$).C\____ZY:-="8`@\0<6UY?7<.0 +MC;0F`````%575E.#[!R+3"0TBUDT#[9#`L'@"`^V4P,!T`^WP(/`!`^W42`Y +MT`^/'@$``(US"`^V6P&Y`````+H`````B?8"3@(/MD8#C70&!(/"`3C3<^Z$ +MR0^$TP```,9$)!L`OP````"-0?\/ML"#P`&)1"04#[94O@$`5"0;#[8$OCP! +M=`0\%W5*#[9<)!LHTSA<)!L/AHD```"-1P$/MNB-=@`/M@2^B40D#(EL)`@/ +MML.)1"0$BT0D,(D$).C\____@\,!.EPD&W18Z]:-M@````"+3"0PBT$P@+B1 +M`````71`#[9<)!LHTSA<)!MV,XU'`0^VZ`^V!+Z)1"0,B6PD"`^VPXE$)`2+ +M1"0PB00DZ/S___^#PP$Z7"0;==B0C70F`(/'`3M\)!0/A43___^+5"0PBT(P +MQH"1`````<=$)`0'````B10DZ/S___^#Q!Q;7E]=PXVV`````(V\)P````"# +M["R)7"0<B70D((E\)"2);"0HBUPD,(7;#X3,````BT,LBRB)+"3H_/___XG& +MA<`/A+4```")+"3H_/___XG'A<!U$8ET)`2)+"3H_/___^F6````C48\B40D +M&,9&%:P/MT,<9HE&$(EN&,=&9`@```")?E"+1PB)1C3'1B``"```C8.X```` +MB48XQD8<(,=&;`````#&1B0<QD8E`<9&)@+&1B<(QD8H`,=$)`0`````BT0D +M&(D$).C\____BT8@B40D#(M'#(M7$(E$)`2)5"0(BT0D&(D$).C\____B70D +M!(DL).C\____BUPD'(MT)""+?"0DBVPD*(/$+,.0@^P<B5PD$(ET)!2)?"08 +MBWPD)(MT)""+7T@/MU<09H'ZA0`/AX<````/M\(/MHP&L`0``(#Y_W1W9H/Z +M?W<9#[;!BY9P!0``:<`H`0``BT00+`^V0`3K.&:!^H$`=QD/ML&+EJ@%``!I +MP!0-``"+1!`(#[9`!.L8#[;!BY:,!0``:<"P````BT005`^V0`20//]T'`^V +MP("\!C8%``#_=`^`^?]T"@^V1Q0\!G4RB?:#?U``=`^-1U")1"0$B30DZ/S_ +M__^)?"0$B30DZ/S____'0RS_____B1PD_U,HZW&$P'4Z]D=D"'09BTL<BU<T +MBT<@B40D"(E4)`2)#"3H_/___\=#+`````"+4R"%TG0%BT,4B0*)'"3_4RCK +M$L=#+/____^)'"3_4RB0C70F`(-_4`!T#XU'4(E$)`2)-"3H_/___XE\)`2) +M-"3H_/___XM<)!"+="04BWPD&(/$',/K#9"0D)"0D)"0D)"0D)"#[!R)7"0, +MB70D$(E\)!2);"08BUPD)(M\)"`/MFL4#[=#$&8]A0!W&8N7<`4```^WP`^V +MA`>P!```:<`H`0``ZPN+EW`%``"XV"8!`(TT`HGHA,!U(6;'AI0``````(![ +M)!QU$H![)@)U#(E<)`2)-"3H_/___X-[4`!T#XU#4(E$)`2)/"3H_/___XE< +M)`2)/"3H_/___XGH/`9T/HV>!`$``(E<)`2+1Q2)!"3H_/___\>&!`$``("$ +M'@#'A@P!````````B;80`0``B5PD!(M'%(D$).C\____BUPD#(MT)!"+?"04 +MBVPD&(/$',-55U93@^P<#[9$)#B(1"0;BU0D,(M"+(LPOP````"+;"0T@\4, +M#[:$-[`$```\_W11#[;`:=@H`0``QT0D"`@```");"0$B=@#AG`%```%H``` +M`(D$).C\____A,!T(XN&<`4```^V5"0;B)0#V@```(N&<`4``(M4)#")E`/D +M````@\<!@?^`````=9B#Q!Q;7E]=PXUT)@"-O"<`````55=64X/L'(M,)#2+ +M<30/MD8"P>`(#[96`P'0#[?XC5<$#[=!(#G"#X_U````C5X(C70^!(ET)!2) +MW3G>#X;,````QT0D&`````"-M@`````/MDPD&`^V$X32#XB5````B="#X`\\ +M!@^%B````/9#`\!T"O9#!<`/A7@```#VPA!T-8![!`!T;8UU"+\`````#[9# +M`XE$)`B)="0$BT0D,(D$).C\____@\8<@\<!B?@X0P1V0.O9@'L"`'0XC74$ +MOP`````/MLF)3"00C70F`(M$)!")1"0(B70D!(M$)#")!"3H_/___X/&'(/' +M`8GX.$,"=]L/MD,!C5P%`HG=@T0D&`$[7"04#X)"____QT0D!`$```"+1"0P +MB00DZ/S___^#Q!Q;7E]=PXVV`````%575E.#["R+1"1`B40D((M4)$0/ME(4 +MB%0D*XM,)$0/MU$09H'ZA0`/A[D#```/M\*+7"0@#[:,`[`$``"X_P```(#Y +M_W1B9H/Z?W<=#[;!BUPD((N3<`4``&G`*`$``(M$$"P/MD`$ZS]F@?J!`'<= +M#[;!BUPD((N3J`4``&G`%`T``(M$$`@/MD`$ZQL/ML&+7"0@BY.,!0``:<"P +M````BT005`^V0`2+5"0@#[:$`C8%``")1"0<:\!<C80"0`$``(E$)"2+DG`% +M```/ML%IP"@!``"--`*`?"0K``^%D@(``&;'AI0``````(M$)$2`>"0<#X5[ +M`@``#[9`)CP"=%H\`G<+/`$/A6<"``"0ZR$\!W0R/`H/A5@"``"+3"1$B4PD +M!(DT).C\____Z4,"``"+7"1$B5PD!(DT).C\____Z2X"``"+1"1$B40D!(DT +M).C\____Z1D"``"+5"1$B50D!(DT).C\____C9X$`0``B5PD!(M&+(L`BT`4 +MB00DZ/S____'A@0!``"`A!X`QX8,`0```````(FV$`$``(E<)`2+1BR+`(M` +M%(D$).C\____QD8F_VM$)!Q<BTPD(("\`4H!````#X1Z`0``OP````")PXVL +M`7@!``")]HDL).C\____B<:+5"0@C003BY!\`0``B;!\`0``B2Z)5@2),H!^ +M)O\/A*(```"`?B4`#X6?````B?.`OK4`````#X1/`0``#[9.)`^VT8G0@^`& +M@_@&=2GVP@%T)(ET)`P/MD9-B40D"(M&,(E$)`2+3"0DB0PDZ/S____I%0$` +M`(/X!'4A]L$!C;0F`````'05B5PD!(M<)"")'"3H_/___^GO````@_@ +M````]L$!#X7=````B5PD!(M$)"")!"3H_/___^G(````B?;&AK4`````@\<! +MBTPD((V4&4`!```/MD(*B?DXR`^'#?___SC!=7.$P'1OOP````!K7"0<7(M$ +M)""-K!AX`0``B2PDZ/S___^)QHM4)""-!!.+D'P!``")L'P!``")+HE6!(DR +M@'XF_W0>#[9&)3PB=`0\#742QT0D!`H```")-"3H_/___^L^@\<!B?F+1"0@ +M.(P82@$``'>F:T0D'%R+5"0@QH0"10$``/^+3"0DB4PD!(D4).C\____@'PD +M*P`/A:(```"+7"1$@WM0`'05B=B#P%")1"0$BT0D((D$).C\____BU0D1(E4 +M)`2+3"0@B0PDZ/S___^`?"0K`'1H#[>&E````(/``6:)AI0```!F@_@*=@YF +MQX:4``````#IX/W__\=$)`0*````B30DZ/S____K,8M<)"`/MILU!@``B5PD +M'&O#7(M4)""-A`)``0``B40D)(N2<`4``+C8)@$`Z;[\__^#Q"Q;7E]=PX/L +M"(D<)(ET)`2+7"0,BW0D$(M4)!2+3"0<A=MT1(7V=$"%TG0\@WPD&`!T-6:! +M^84`=RX/M\&`O`.P!```_W0AQD(DX<9")0'&0B839HE*$(ER&(M$)!B)0FRX +M`0```.L%N`````"+'"2+="0$@\0(PXVT)@````"-O"<`````BTPD!(M!!(M` +M!*,`````@'PD"`!T"HG"@<H```P`ZPB)PH'B___S_XM!!(D0BT$$B5`,BT$$ +MB5`0BT$$B5`4BT$$B5`8BT$$B5`$PY"0D)!64XM<)!"+3"0PBW0D.`^W1"0, +M9CTB)W=)9CT@)W-Y9CU`(71S9CU`(7<99CT@(9!T9F8](B%T8&8]4`>-="8` +M=6#K5&8]1"%T3F8]1"&)]G)09BT0)V:#^`%W1HUT)@#K-F8]@B=T,&8]@B>- +M="8`=Q)F/20G="!F/8`GC70F`'4@ZQ1F/8"1=`YF/8"4B?9T!F8]@')U"L8# +M%(M$)!3&``*+1"08Q@`$#[83BT0D+(@09L<!@`!FQP8``(M$)"#&`""+1"0D +M9L<```$/MA.+1"0HB!`/M@-F`P%F`P:+5"0T9HD"BU0D'&:)`@^W$8M$)#QF +MB1`/MQ&#P@N+1"1`9HD06U[#C78`C;PG`````%575E.#[`2+?"08#[9$)!R( +M1"0##[=O4&:%[0^$W@```(N/Q`4``+X`````C70F`(L!A<`/A+8````/MU`0 +MN_\```"X_____V:!^H4`=W0/M\(/MIP'L`0``+C_____@/O_=%QF@_I_=QD/ +MML.+EW`%``!IP"@!``"+1!`L#[9`!.L]9H'Z@0!W&0^VPXN7J`4``&G`%`T` +M`(M$$`@/MD`$ZQT/ML.+EXP%``!IP+````"+1!!4#[9`!(VV``````^VVXN7 +M<`4``#I$)`-U(0^WPVG`*`$```^V1!`D@^`%@_@%=0NP`>L;C;0F`````(/& +M`8/!!&8Y[@^%,?___[@`````@\0$6UY?7<.-="8`55=64X/L"(M4)!R+0BR+ +M*(N%%`H``(E$)`0/MWU0N0````"^`````.M)C;8`````#[?9BX7$!0``BQ28 +MA=)T,(M")"7___\`/>$!$`!T(8M$)!P/MT`<9CM"$'43B=C!X`:+5"0$9CET +M$`AT"XUV`(/!`68Y^7*X9CGY=!"#Q@%F@_X?=P>Y`````.OF#[?&@\0(6UY? +M7<.0C;0F`````%.+5"0(BTPD#(M<)!"+0CB%P'06Q@!PBT(XB$@"BT(XQD`' +M`(M".(A8#%O#C70F`//#C;0F`````(V\)P````"#[!")'"2)="0$B7PD"(EL +M)`R+3"04#[=\)!B)^H'B_P$``(N!Q`4``(LTD(7V=#`/MIG6````#[9&%8G9 +MT^`/M^@/M]>X__\``-/@(<(YU0^5P`^VP(/H`2'&D(UT)@")\(L<)(MT)`2+ +M?"0(BVPD#(/$$,.-="8`C;PG`````(M4)`2X`````(VT)@````#&!!``@\`! +M/;````!U\L9"*/_&0C3_C4(4B4(4B4(8PXM4)`2X`````(VT)@````#&!!`` +M@\`!/2@!``!U\L9"3/_&0D+_QD).'XU"$(E"$(E"%,.-M@````"-OP````!3 +MBT0D"(M<)`R+$XN(^````(F0^`````7T````B0*)2@2)$<<#`````%O#D(UT +M)@!3@^P(BUPD$(M,)!2+D_````")B_````"-@^P```")`8E1!(D*@WE,`'0/ +MC4%,B40D!(D<).C\____@\0(6\.04XM$)`B+7"0,BQ.+B`@!``")D`@!```% +M!`$``(D"B4H$B1''`P````!;PY"-="8`4XM$)`B+7"0,BQ.+B``!``")D``! +M```%_````(D"B4H$B1''`P````!;PY"-="8`BT0D!(M4)`B+B!@!``")D!@! +M```%%`$``(D"B4H$B1'#ZPV0D)"0D)"0D)"0D)"04XM$)`B+7"0,BQ.+B"`! +M``")D"`!```%'`$``(D"B4H$B1''`P````!;PY"-="8`4XM$)`B+7"0,BQ.+ +MB!`!``")D!`!```%#`$``(D"B4H$B1''`P````!;PY"-="8`#[9$)`0\%W<7 +M#[;`_R2%(`<``+@T````PXVT)@````"X!````,.X/````)"-="8`P[@4```` +MP[A`````C70F`,.X'````,.X&````(UT)@##N"@```##N"````"-="8`P[A, +M````PXGVC;PG`````%575E.+;"04BWPD&`^V5R2)T(/@!H/X!G4)]L(!#X3* +M````@']"_P^%P````(M%`(NP&`$``(DU`````+D`````N`$```")P]/CA=YU +M,HA/0HM5`(G8"?")@A@!``"+10"+@%@!``"C`````(G:(<)T=XM%`(F06`$` +M`.MLC78`@\$!@_D@=;F+10"+L!P!``")-0````"Q`(VT)@````")RK@!```` +MB</3XX7>=3*-0B"(1T*+50")V`GPB8(<`0``BT4`BX!@`0``HP````")VB'" +M=!.+10")D&`!``#K"(/!`8/Y('6W@$4L`5M>7UW#C;0F`````(V\)P````!7 +M5E.+?"00BU0D%(!Z-/\/A;<```"+!XNP&`$``(DU`````+D`````N`$```") +MP]/CA=YU+(A*-(L7B=@)\(F"&`$``(L'BX!8`0``HP````")VB'"='&+!XF0 +M6`$``.MG@\$!@_D@=;^+!XNP'`$``(DU`````+$`C;0F`````+@!````B</3 +MXX7>=3.(2C2+%XG8"?")@AP!``"+!XN`8`$``*,`````B=HAPG09BP>)D&`! +M``#K#XVT)@````"#P0&#^2!UN(!'+`%;7E_#4P^V7"00BT0D"(M(*(7)=#&Z +M`````(M$D3R%P'0%.%A-=`^#P@&#^@5T%Y"-="8`Z^1F@7DDA0!W"(7`C70F +M`'4%N`````!;PXVT)@````!55U93@^P,BVPD(`^V1"0DP>`(#[94)"B--!"` +M?1P`#X3)````@WTX``^$OP```/9%9`D/E,")Q[D`````C78`B<L/MQ3-@`<` +M`(GP(=!F.<(/A8L````/MA3-A0<``(#Z`W0%@/H'=0N)^#@$S80'``!U;L9% +M%"`/M@3=A@<``(E$)`@/ML*)1"0$B2PDZ/S___^+53@/M@3=AP<``(A"#8-\ +M)"P`="N+1"0LBQB+<`2+33B)<0.+13B`"(#V168$=!"%]G0,BT4XB5@(BT4X +M@"!_BU4X#[9%'(/H!XA"!^L,@\$!@_D0#X52____@\0,6UY?7<.-=@"-O"<` +M````@^P,BT0D$(V0#`$``+D`````.9`,`0``=!&)%"3H_/___XG!QT`4```` +M`(G(@\0,P^L-D)"0D)"0D)"0D)"0D(/L#(M$)!"-D!P!``"Y`````#F0'`$` +M`'0*B10DZ/S___^)P8G(@\0,PXVV`````(/L#(M$)!"-D!0!``"Y`````#F0 +M%`$``'0DB10DZ/S___^)P8G"N`````"0C70F`,8$$`"#P`$]F````'7RB<B# +MQ`S#C;8`````C;\`````@^P,BT0D$(V0_````+D`````.9#\````=`J)%"3H +M_/___XG!B<B#Q`S#C;8`````@^P,BT0D$(V0]````+D`````.9#T````=`Z) +M%"3H_/___XG!QD`(`(G(@\0,PXGV55=64X/L'(E$)!")U<=$)!0`````QT0D +M&`````"-=@"+5"08BTPD$`^VA`HP!0``//\/A"@!```/MM`/MT0D&&:#Z(!F +M/8$`#X=\````#[?":<`4#0``B<,#F:@%``"`>S``=%6^`````(U[*(UV`(D\ +M).C\____C4CXBU,LB4,LB7D(B5$,B0*+020E`/__`#T``/\`=1CV02<$=!*+ +M02"%P'0+B>J(4`&-M@````"#Q@&)\3A+,'>VB>B(@Y(```"#Q0'IE@````^W +MPFG`L````(G#BU0D$`.:C`4``(!['P!T0[D`````C;8`````#[;!BU2#/(72 +M="6+0B0E`/__`#T``/\`=1;V0B<$=!"+0B"%P'0)B>J(4`&-="8`@\$!.$L? +M=\B)Z8B+I````("[I0````-U'H-$)!0!BT0D%(/``X/X!G86@\4!QT0D%``` +M``#K"8/%`8VV`````(-$)!@!@WPD&`8/A;#^__^+5"00BX(\!0``.=!U#`7` +M#```B>KH=O[__X/$'%M>7UW#C;0F`````(V\)P````"#[`R+5"00BT0D%`^V +M2`0/MH01-@4``,:$$38%``#_#[?`B40D!('"U`D``(D4).C\____@\0,PY"- +MM"8`````@^P(B1PDB70D!(MT)!"+7DR%VW0DC4XDC5,,BT,,B48DBT($B4$$ +MBT((B4$(BT(,B4$,BT,<B48TBQPDBW0D!(/$",.-M@````"-OP````"#[`B) +M'"2)="0$BW0D$(M>3(7;="B-2PR-5B2+1B2)0PR+0@2)002+0@B)00B+0@R) +M00R+1C2)0QS&0P@!BQPDBW0D!(/$",.0C;0F`````%=64X/L$(M\)""+'V:# +M>U``#X2[````O@````"-="8`#[?6BX/$!0``BPR0A<D/A)$````/MU$09H'Z +MA0!W<0^WP@^VA`.P!```//]T8F:#^G]W'`^VP(N3<`4``&G`*`$``(M$$"P/ +MME`$ZTB-=@!F@?J!`'<9#[;`BY.H!0``:<`4#0``BT00"`^V4`3K)0^VP(N3 +MC`4``&G`L````(M$$%0/ME`$ZPR-M"8`````NO\````/MD<$.<)U"(D,).C\ +M____@\8!9CES4`^'3O___X/$$%M>7\.-M"8`````@^P<B5PD%(ET)!B+7"0@ +MBW0D)`^V1C0\_W09#[;`B40D!(L#B00DZ/S____&1C3_@&LL`8M<)!2+="08 +M@\0<PX/L'(E<)!2)="08BUPD((MT)"0/MD9"//]T&0^VP(E$)`2+`XD$).C\ +M____QD9"_X!K+`&+7"04BW0D&(/$',-75E.#[!"+="0@BUPD)#ES&`^$SP`` +M`(![%``/A98````/MD,D/!5T"#Q5#X6&````BT-,A<!T?XG"@'@(`75W9H%X +M#.$!=6^+OG`%```/MT,0N=@F`0!F/84`=Q$/M\`/MH0&L`0``&G(*`$``(T$ +M#P^V4@Z`^@=T'X#Z!W<'@/H&=3/K'(#Z#(VT)@````!T((#Z#74@ZQ!F@V`Z +M_8GVZQ5F@T@Z`NL.9H-@.O>)]NL%9H-(.@B#>U``="F!>R``"```=Q&-0U") +M1"0$B30DZ/S____K#XU#4(E$)`2)-"3H_/___V:!>R3A`0^%!@$```^W0Q!F +M/84`=WH/M\`/MH0&L`0``#S_=&N+EG`%``"`>Q0`=5\/ML!IP"@!``"-!`(/ +MME,F@/H'=!V`^@=W!X#Z!G4QZQJ`^@R0C70F`'0@@/H-=2#K$&:#8#K]B?;K +M%6:#2#H"ZPYF@V`Z]XGVZP5F@T@Z"&:!>R3A`8UV``^%@@```(![)@MU?`^W +M2Q`/MD8NC7C_B<KK')"-="8`@\(!9H'ZA0!W#0^WPH"\,+`$``#_=0D/M\(Y +M^'SBZT1F/?\`=1GK/(/!`6:!^84`=PT/M\&`O#"P!```_W4,#[?!.<=_XKC_ +M````9HE#$,9#%(")7"0$B30DZ/S____I'`$``,9#%``Y<QAT*(M#3(7`="&` +M>`@!=0R)7"0$B30DZ/S___^-0TR)1"0$B30DZ/S___^#>U0`=`^-0U2)1"0$ +MB30DZ/S___^)7"0$BT,8B00D_U-L#[=3)&:!^N$!=54/MD,F@^@1/`%W2@^W +M0Q!F/84`#X>E````#[?`#[:$!K`$```\_P^$D@````^VP&G`L`````.&C`4` +M`(!X*0!U?8!X-/]T=XE$)`2)-"3H_/___^MI#[=#$&8]A0!W7P^WP`^VC`:P +M!```B[YP!0``BT,D)?___P`]X0$0`'0_@?G_````=#=F@?KA`740#[9#)H/H +M$3P!=B60C70F`&G!*`$``(T$!X!X3P!U$8E$)`2)-"3H_/___Y"-="8`@\00 +M6UY?PXGVC;PG`````(/L'(E<)!")="04B7PD&(MT)""+7"0D#[=3$&:!^H4` +M#X>*````#[?"#[:,!K`$``"`^?]T>F:#^G]W&0^VP8N6<`4``&G`*`$``(M$ +M$"P/MD`$ZSMF@?J!`'<9#[;!BY:H!0``:<`4#0``BT00"`^V0`3K&P^VP8N6 +MC`4``&G`L````(M$$%0/MD`$C70F`&8]_P!T&@^WP`^VO`8V!0``B?@\_W0) +M#[;!9CW_`'40B5PD!(DT).C\____ZWZ)]@^V4R</MD,H#[9+*8#Y`70%@/D( +M=5J+2TC!X`@/MM(!T"7_`0``BY;$!0``.0R"=3\/MTD>B<IFP>H%#[?2@^$? +MN/[____3P"%$EE2+0T@/MT`>B40D!(GZ#[;":\!<C80&0`$``(D$).C\____ +MB?:)7"0$B30DZ/S___^+7"00BW0D%(M\)!B#Q!S#C70F`(/L#(E<)`2)="0( +MBUPD$(V#[````+X`````.8/L````=!V)!"3H_/___XG&B00DZ/S___^)'"3H +M_/___XE&3(GPBUPD!(MT)`B#Q`S#C78`@^P<B5PD$(ET)!2)?"08BWPD((M' +M+(LPB30DZ/S___^)PX7`=&N)-"3H_/___XG"A<!U',:'M0````&)7"0$B30D +MZ/S____K2(VT)@````#&0R0`#[=''&:)0Q#&0V@/B7,8QT,@`````,=#-``` +M``"+0@B)0SC&0QPDB5-0QT-L`````(E<)`2)-"3H_/___XM<)!"+="04BWPD +M&(/$',/K#9"0D)"0D)"0D)"0D)"#[!R)7"00B70D%(E\)!B+?"0@BW0D)(M' +M+(L8B1PDZ/S___^)PH7`=#W&0"0;QD`E`8GPB$(H#[=''&:)0A#&0F@/B5H8 +MQT(@`````,="-`````#'0FP`````B50D!(D<).C\____BUPD$(MT)!2+?"08 +M@\0<PXGVC;PG`````(/L+(E<)!R)="0@B7PD)(EL)"B+7"0TBT0D,(LHB2PD +MZ/S___^)QH7`#X2B````B2PDZ/S___^)QX7`=1.)="0$B2PDZ/S____I@P`` +M`(GVC58\B50D&,9&).'&1B4!QD8F#@^W0QQFB4809H-C./>+5"0PBP*)1AC' +M1B``"```BT<(B48TB7Y0QT9LH+T``,=$)`0`````BT0D&(D$).C\____BT8@ +MB40D#(M'#(M7$(E$)`2)5"0(BU0D&(D4).C\____B70D!(DL).C\____BUPD +M'(MT)""+?"0DBVPD*(/$+,.-="8`C;PG`````(/L'(E<)!")="04B7PD&(MT +M)"B+1"0@BQB)'"3H_/___XG"A<!T9<9`).'&0"4!B?"(0B;&0B</BTPD)`^W +M01QFB4(0B5H8QT(@`````,="-`````#'0FP`````B50D!(D<).C\____B?`\ +M`742QP0D!0```.C\____ZQ"-="8`QP0D4,,``.C\____BUPD$(MT)!2+?"08 +M@\0<PXUT)@"#[!R)7"00B70D%(E\)!B+="0@BUPD)`^W4Q!F@?J%``^'BP`` +M``^WP@^VC`:P!```@/G_='MF@_I_=QD/ML&+EG`%``!IP"@!``"+1!`L#[9` +M!.L[9H'Z@0!W&0^VP8N6J`4``&G`%`T``(M$$`@/MD`$ZQL/ML&+EHP%``!I +MP+````"+1!!4#[9`!(UT)@`\_W0=#[;`#[:4!C8%``"`^O]T#8#Y_W0(#[9# +M%#P&=3^#>U``="N!>R``"```B?9W$8U#4(E$)`2)-"3H_/___^L/C4-0B40D +M!(DT).C\____B5PD!(DT).C\____ZW*+OG`%``"$P'0MQT0D"`$````/ML%I +MP"@!``"-!`>)1"0$#[;":\!<C80&0`$``(D$).C\____@WM0`'0I@7L@``@` +M`'<1C4-0B40D!(DT).C\____ZP^-0U")1"0$B30DZ/S___^)7"0$B30DZ/S_ +M__^+7"00BW0D%(M\)!B#Q!S#C;0F`````(V\)P````"#["R)7"0<B70D((E\ +M)"2);"0HBUPD,(ML)#0/MU409H'ZA0`/APX!```/M\(/MHP#L`0``(#Y_P^$ +M^@```&:#^G]W'`^VP8N3<`4``&G`*`$``(M$$"P/MD`$ZSJ-=@!F@?J!`'<9 +M#[;!BY.H!0``:<`4#0``BT00"`^V0`3K%P^VP8N3C`4``&G`L````(M$$%0/ +MMD`$//\/A)D````/MOD/ML`/MK0#-@4``(GP//\/A($```!F@?__`'1Z@'T4 +M!G1TBY-P!0``B50D&(!])@%U3,<$)`H```#H_/___XEL)`2)'"3H_/___\=$ +M)`@"````#[?':<`H`0```T0D&(E$)`2)\@^VPFO`7(V$`T`!``")!"3H_/__ +M_^L:B?;'!"3T`0``Z/S___^);"0$B1PDZ/S___^+7"0<BW0D((M\)"2+;"0H +M@\0LPXUT)@"#["R)7"0@B70D)(E\)"B+?"0PBT<LBS")-"3H_/___XG#A<!U +M"L:'M0````'K9)#&0"05QD`5JP^W1QQFB4,0B7,8QT0D$`$```#'1"0,`0`` +M`(E<)`B)?"0$B30DZ/S___^$P'49B5PD!(DT).C\____QH>U`````>L7C70F +M`,=#;`````")7"0$B30DZ/S___^+7"0@BW0D)(M\)"B#Q"S#C;8`````C;PG +M`````(/L+(E<)!R)="0@B7PD)(EL)"B+7"0PBT,LBRB)+"3H_/___XG&A<!U +M#,:#M0````'IN````(DL).C\____B<>%P'4<QH.U`````8ET)`2)+"3H_/__ +M_^F2````C70F`,9&)!K&1B4(QD8F",9&)P#&1BC_QD8I`,9&%:L/MT,<9HE& +M$(EN&,=&(/\```#'1F0(````BT<(B48T!?\```")1CC&1APDB7Y0QT9L```` +M`(U>/,=$)`0`````B1PDZ/S____'1"0,_P```(M'#(M7$(E$)`2)5"0(B1PD +MZ/S___^)="0$B2PDZ/S___^+7"0<BW0D((M\)"2+;"0H@\0LPXVT)@````"- +MO"<`````@^PLB5PD'(ET)"")?"0DB6PD*(ML)#`/MD0D-(A$)!>+12R+.(D\ +M).C\____B<.%P'4-QH6U`````>FZ````D(D\).C\____B<:%P'48QH6U```` +M`8E<)`2)/"3H_/___^F3````C4,\B40D&,9#)!*`?"07`'0.QD,E`<9#)H#& +M0RA`ZP3&0R@DQD,5JP^W11QFB4,0B7L8QT,@8````,=#9`@```"+1@B)0S2) +M<U#'0VP`````QT0D!`````"+1"08B00DZ/S____'1"0,8````(M&#(M6$(E$ +M)`2)5"0(BT0D&(D$).C\____B5PD!(D\).C\____BUPD'(MT)""+?"0DBVPD +M*(/$+,.-=@"#["R)7"0<B70D((E\)"2);"0HBUPD,(M#+(LHB2PDZ/S___^) +MQH7`=0S&@[4````!Z;H```")+"3H_/___XG'A<!U',:#M0````&)="0$B2PD +MZ/S____IE````(UT)@"-1CR)1"08QD8DGL9&)1#&1C$@QD85JP^W0QQFB480 +MB6X8QT8@(````,=&9`@```"+1PB)1C2)?E"#P"")1CC&1APDQT9L`````,9& +M:`_'1"0$`````(M$)!B)!"3H_/___\=$)`P@````BT<,BU<0B40D!(E4)`B+ +M1"08B00DZ/S___^)="0$B2PDZ/S___^+7"0<BW0D((M\)"2+;"0H@\0LPXVV +M`````(V_`````(/L+(E<)!R)="0@B7PD)(EL)"B+7"0PBT,LBRB)+"3H_/__ +M_XG&A<!U#,:#M0````'IK@```(DL).C\____B<>%P'4<QH.U`````8ET)`2) +M+"3H_/___^F(````C70F`(U&/(E$)!C&1B0EQD85JP^W0QQFB480B6X8QT8@ +M"````,=&9`@```"+1PB)1C2#P`B)1CC&1APDB7Y0QT9L`````,=$)`0````` +MBT0D&(D$).C\____QT0D#`@```"+1PR+5Q")1"0$B50D"(M$)!B)!"3H_/__ +M_XET)`2)+"3H_/___XM<)!R+="0@BWPD)(ML)"B#Q"S#D(VT)@````"#["R) +M7"0<B70D((E\)"2);"0HBT0D.(E$)!2+5"0PBSJ+CW`%``")3"08BU0D-`^W +M0A`/MJP'L`0``(D\).C\____B<.+3"0T#[=Q'HGQ@^$?N`$```#3X(G!B?!F +MP>@%#[?`A4R'5`^%R0```(7;#X3!````B>D/MM%ITB@!```#5"08BTPD-`^V +M014/MH_6````T^`)\,9#).'&0R4!QD,F#XA#)V;!Z`B(0R@/MD0D%(A#*8N" +MJ````(E#*HN"K````(E#+HM,)#2)2TC&0Q6J#[="'&:)0Q"+5"0PBP*)0QC' +M0R``````QT,T`````,=#;$"Y``#'1"0$`````(U#/(D$).C\____B5PD!(D\ +M).C\____BT0D-`^W2!Z)R&;!Z`4/M\"#X1^Z`0```-/B"52'5(M<)!R+="0@ +MBWPD)(ML)"B#Q"S#D(UT)@!55U93@^P<#[9$)#2(1"0;BU0D,(L:9H-[4``/ +MA/X!``"]``````^WU8N#Q`4``(L,D(7)#X38`0``BWDD@>?___\`@?_A`1`` +M#X61````@WPD.``/A;@!```/MU$09H'ZA0!W9P^WP@^VA`.P!```//]T6&:# +M^G]W&0^VP(N3<`4``&G`*`$``(M$$"P/ME`$ZSYF@?J!`'<9#[;`BY.H!0`` +M:<`4#0``BT00"`^V4`3K'@^VP(N3C`4``&G`L````(M$$%0/ME`$ZP6Z____ +M_[X`````Z:4```"0C70F``^W41!F@?J%``^'AP````^WP@^VM`.P!```B?`\ +M_W1V9H/Z?W<9#[;`BY-P!0``:<`H`0``BT00+`^V4`3K06:!^H$`=QN)\@^V +MPHN3J`4``&G`%`T``(M$$`@/ME`$ZQ^)\@^VPHN3C`4``&G`L````(M$$%0/ +MME`$C;8`````@>;_````:<8H`0``B<8#LW`%``#K"KK_____O@````"+1"0P +M.%`$#X6%````@WPD.`!T#HM4)#@/MT(<9CM!$'5P@'PD&P9T3H'_X0$0`'1& +M#[96)(G0@^`&@_@&=3CVP@%U,X"^M`````!U*H'_X0$/`'0]#[9$)!N(013' +M1"0(`0```(E,)`2+5"0PB10DZ/S____K&P^V1"0;B$$4#[?%B40D!(M4)#") +M%"3H_/___X/%`68Y:U`/AP?^__^`?"0;@0^$-0$``(N#W````(VSW````#G& +M#X0A`0``N@````"#P@&+`#G&=?=FA=(/A`H!``"->O^)-"3H_/___XG!@WPD +M.`!T)XM4)#@/MT(<9CM!$'09BX/@````B8O@````B3&)002)".FY````D`^W +M41!F@?J%`'=G#[?"#[:$`[`$```\_W189H/Z?W<9#[;`BY-P!0``:<`H`0`` +MBT00+`^V0`3K/F:!^H$`=QD/ML"+DZ@%``!IP!0-``"+1!`(#[9`!.L>#[;` +MBY.,!0``:<"P````BT005`^V0`3K!;C_____BU0D,#I"!'4EBT$D)?___P`] +MX0$/`'06#[9$)!N(012)3"0$B1PDZ/S____K$XN#X````(F+X````(DQB4$$ +MB0B-1_]FA?]T#SNSW````'0'B<?I^?[__X/$'%M>7UW#B?:-O"<`````@^P< +MB5PD#(ET)!")?"04B6PD&(ML)"`/MGPD*(MU`(DT).C\____B<.%P'43BT0D +M+,:`M0````'ID````(UV`(DT).C\____B<*%P'49B5PD!(DT).C\____BU0D +M+,:"M0````'K9L9#).'&0R4!QD,F$(GYB$L5BTPD)`^V03-FB4,0BT4`B4,8 +MQT,@D````(U""(E#-(E34,9``1+&0@A`B?J(4`G'0VP`````QT0D!`````"- +M0SR)!"3H_/___XE<)`2)-"3H_/___XM<)`R+="00BWPD%(ML)!B#Q!S#ZPV0 +MD)"0D)"0D)"0D)"0@^P<B5PD#(ET)!")?"04B6PD&(ML)""+?"0HBT0D+(E$ +M)`B+=0")-"3H_/___XG#A<`/A(@```")-"3H_/___XG"A<!T>L9#).'&0R4! +MQD,F$(GYB$L5BTPD)`^V03-FB4,0BT4`B4,8QT,@D````(U""(E#-(E34,9` +M`9'&0@A`B?J(4`D/MDPD"(A("L=#;`````#'1"0$`````(U#/(D$).C\____ +MB5PD!(DT).C\____QP0DH(8!`.C\____BUPD#(MT)!"+?"04BVPD&(/$',.- +MM@````"-OP````"#[!R)7"0,B70D$(E\)!2);"08BWPD((ML)"B+-XDT).C\ +M____B<.%P'1RB30DZ/S___^)PH7`=&3&0R3AQD,E`<9#)A#&0Q6[BTPD)`^V +M03-FB4,0BP>)0QC'0R"0````C4((B4,TB5-0QD`!$,9""$")ZHA0"<=#;``` +M``#'1"0$`````(U#/(D$).C\____B5PD!(DT).C\____BUPD#(MT)!"+?"04 +MBVPD&(/$',/K#9"0D)"0D)"0D)"0D)"#[!R)7"00B70D%(E\)!B+?"0@BS>) +M-"3H_/___XG#A<!T;8DT).C\____B<*%P'1?QD,DX<9#)0'&0R80QD,5NXM, +M)"0/MD$S9HE#$(L'B4,8QT,@D````(U""(E#-(E34,9``0#&0@A`QT-L```` +M`,=$)`0`````C4,\B00DZ/S___^)7"0$B30DZ/S___^+7"00BW0D%(M\)!B# +MQ!S#@^P<B5PD$(ET)!2)?"08BW0D((V>U`D``(D<).C\____A,`/A;<```") +M'"3H_/___XG!N`````")PX"\,#8%``#_=0PX1C1S$HA&-.L-B?:#PP&#P`&# +M^`1UW8#[!`^$?`````^VPXB,!C8%```/M_EKQUR-E`9``0``N`````#&!!`` +M@\`!@_A<=?0/M\EKR5R-E`Y@`0``C00QB9!@`0``B9!D`0``@\(,B9!L`0`` +MB9!P`0``C90.>`$``(F0>`$``(F0?`$``(B81`$``&O'7(V$!D`!``#K"8UT +M)@"X`````(M<)!"+="04BWPD&(/$',.-="8`C;PG`````(/L'(E<)!")="04 +MB7PD&(MT)""-GEP)``")'"3H_/___X3`#X47`0``B1PDZ/S___^)PK@````` +MB<.`O#"P!```_W4<#[;`9CF&U````',=9HF&U````.L4C;0F`````(/#`8/` +M`3V`````=<N`^X`/A,H````/ML.(E`:P!```#[?":?@H`0``B?@#AG`%``") +M!"3H_/___XN6<`4```^VPV:)1!<<BX9P!0``QD0')@"+AG`%``#&1`<]_XN& +M<`4``,9$!SS_BX9P!0``QD0'/O^+AG`%``#&1`=`_XN&<`4``,9$!S__BX9P +M!0``QD0'0?^+AG`%``#&A`>V`````(N&<`4``,:$!]L```#_B30DZ/S___^+ +MEG`%``")A!?H````@'XY`74+BX9P!0``@$P'*`&)^`.&<`4``.L%N`````"+ +M7"00BW0D%(M\)!B#Q!S#C70F`(V\)P````!3@^P(BUPD$(M4)!2)V.B-XO__ +MBX,\!0``B00DZ/S___^#Q`A;PXUV`(V\)P````"#[!R)7"00B70D%(E\)!B+ +M="0@C9Z$"0``B1PDZ/S___^$P`^%W0```(D<).C\____B<*)\+N"____C;8` +M````@+@R!0``_W47.)[8````<R"(GM@```#K&(VT)@````"#PP&#P`&`^X8/ +MA)<```#KSX#[A@^$C`````^VPXB4!K`$```/M\)I^+````")^`.&C`4``(D$ +M).C\____BY:,!0``#[;#9HE$%R2`?CD!=0V+AHP%``!FQT0',/__BX:,!0`` +MQD0')@"+AHP%``!FQT0',@``BX:,!0``9L>$!Y```````,=$)`0`````BX8\ +M!0``B00DZ/S___^)^`.&C`4``.L%N`````"+7"00BW0D%(M\)!B#Q!S#D(UT +M)@!64X/L%(MT)""+1"0D#[=`)`^VG#"P!```QH0PL`0``/\/M]N)7"0$C8:$ +M"0``B00DZ/S___]IV[````")V`.&C`4``(!X-/]T#(E$)`2)-"3H_/___\=$ +M)`0`````BX8\!0``B00DZ/S___^#Q!1;7L.-M"8`````C;PG`````%.#[`B+ +M7"00BT0D%`^V4#,/MH0:L`0``,:$&K`$``#_#[?`B40D!(V#K`D``(D$).C\ +M____QT0D!`````"+@SP%``")!"3H_/___X/$"%O#4X/L"(M<)!2`>RC_=!J- +M0UB)1"0$BU0D$(M"%(D$).C\____QD,H_X/$"%O#C78`4X/L"(M<)!2`>TS_ +M=!V-@^P```")1"0$BU0D$(M"%(D$).C\____QD-,_X/$"%O#@^P<B5PD#(ET +M)!")?"04B6PD&(M<)""+;"0D#[=%'`^VO`.P!```#[?':?`H`0``B?`#@W`% +M```%Z````(E$)`2)'"3H_/___P^W51R+A).P`@``A<!T&(-X<`!U$L>$D[`" +M````````C;0F``````^W11S&A`.P!```_P^WQXE$)`2-@UP)``")!"3H_/__ +M_XGP`X-P!0``@'A"_W0,B40D!(D<).C\____B6PD!(D<).C\____BX-P!0`` +MQD0&)@"+@W`%``#&1`8G`8M<)`R+="00BWPD%(ML)!B#Q!S#ZPV0D)"0D)"0 +MD)"0D)"0@^P<B5PD#(ET)!")?"04B6PD&(ML)""+="0D9H%^).$!#X6Y```` +M#[9&)H/H$3P!#X>J````#[=&$&8]A0`/AU0!```/M\`/MH0%L`0``(N5C`4` +M`#S_#X0[`0``#[;`:<"P````C1P"@&LI`8U[%(D\).C\____B<(Y\'5"B5PD +M!(DL).C\____.WL4#X0%`0``QT-8`!)Z`,=#8`````")6V2-0UB)1"0$BT44 +MB00DZ/S____&0R@`Z=D```"0BT,4B5`$B0*)>@2)4Q2+%HM&!(E"!(D0Z;L` +M``"-=@`/MT809CV%``^'J@````^WP`^VE`6P!```BXUP!0``BT8D)?___P`] +MX0$0``^$A@```('Z_P```'1^:<(H`0``C1P!@&M/`8U[$(D\).C\____B<(Y +M\'5(B5PD!(DL).C\____.WL0=$_'@^P`````$GH`QX/T`````````(F;^``` +M`(V#[````(E$)`2+112)!"3H_/___\9#3`#K&HGVBT,0B5`$B0*)>@2)4Q"+ +M%HM&!(E"!(D0BUPD#(MT)!"+?"04BVPD&(/$',.-="8`@^P<B5PD#(ET)!") +M?"04B6PD&(M\)""+;"0D#[=5'HG09L'H!0^WV`^W\HGQ@^$?N/[____3P(G! +M(42?5&:!^O\/=$F-!+4``````X?$!0``@S@`=#?'```````AC)_(!0``B70D +M!(V'-`D``(D$).C\____B6PD!(D\).C\____B6PD!(D\).C\____BUPD#(MT +M)!"+?"04BVPD&(/$',/K#9"0D)"0D)"0D)"0D)"#[!R)7"00B70D%(E\)!B+ +M?"0@BW0D)&:!?B3A`0^%D@````^V1B:#Z!$\`0^'@P````^W1A"Z_P```&8] +MA0!W"P^WP`^VE`>P!```:<*P````B<,#GXP%``"`>RC_=3P/ME9HN`@```"$ +MTG0#C002#[;`:<!`0@\`B4-8QT-@`````(E;9(U#6(E$)`2+1Q2)!"3H_/__ +M_\9#*`"+4QB)<QB-0Q2)!HE6!(DR@$,I`>F?````#[=&$+G_````9CV%`'<+ +M#[?`#[:,![`$``"+EW`%``"+1B0E____`#WA`1``='!IP2@!``"-'`*`>TS_ +M=4T/ME9HN`@```"$TG0#C002#[;`:<!`0@\`B8/L````QX/T`````````(F; +M^````(V#[````(E$)`2+1Q2)!"3H_/___\9#3`"0C70F`(M3%(ES%(U#$(D& +MB58$B3*`0T\!BUPD$(MT)!2+?"08@\0<PXVV`````(V_`````%575E.#["R+ +M1"1$#[=0$&:!^H4`#X<?`P``#[?"BUPD0`^VC`.P!```N/____^`^?]T8F:# +M^G]W'0^VP8M<)$"+DW`%``!IP"@!``"+1!`L#[9`!.L_9H'Z@0!W'0^VP8M< +M)$"+DZ@%``!IP!0-``"+1!`(#[9`!.L;#[;!BUPD0(N3C`4``&G`L````(M$ +M$%0/MD`$#[;`BU0D0`^VK`(V!0``:\5<C80"0`$``(E$)""+DJ@%```/ML%I +MP!0-```!PHE4)!R+1"1$BU`T#[9"`3P2="<\D0^%*@(``&O%7+D`````BU0D +M0("\`DH!````#X3:`0``Z7$!``!KQ5P#1"1`BXA``0``B4PD*`^V6@F(7"0F +M#[92&HA4)">[`````("X2@$```!T9K\`````:_5<BT0D0(VL,'@!``"0B2PD +MZ/S___^)PXM4)$"-!!:+D'P!``")F'P!``")*XE3!(D:BTPD'#E+,'43#[9# +M38M4)$0Z0A5T&(VV`````(/'`8GYBT0D0#B,,$H!``!WKHM4)$2+0E"%P'00 +MB40D!(M,)"B)#"3H_/___XM$)$2)1"0$BU0D*(D4).C\____#[:#E@```(U0 +M`8B3E@```#P#=SB`?"0G`'4QQT0D$`````#'1"0,`@```(M,)$0/MD$5B40D +M"(M#,(E$)`2+7"0@B1PDZ/S____K-HU"`8B#E@```(#Z`G8H@'PD)P!U(<9# +M)P+&0R;_@&,H_HE<)`2+1"0HB00DZ/S____I'P$```^V1"0GB40D#`^V1"0F +MB40D"(M4)!R)5"0$BTPD((D,).C\____Z?0```"^`````&O=7(M$)$"-O!AX +M`0``B3PDZ/S___^)P8M4)$"-!!.+D'P!``")B'P!``").8E1!(D*BT0D'#E! +M,'42#[9!38M4)$0Z0A5T%Y"-="8`@\8!B?"+5"1`.(0:2@$``'>O#[91)(G0 +M@^`&@_@&=2CVP@%T(XE,)`R+7"1$#[9#%8E$)`B+03")1"0$BT0D((D$).C\ +M____BU0D1(M"4(7`=!")1"0$BTPD0(D,).C\____BUPD1(E<)`2+1"1`B00D +MZ/S____K*8M4)$`/MJHU!@``:\5<C80"0`$``(E$)""+DJ@%``"X[`8-`.E? +M_?__@\0L6UY?7<.-M@````!55U93@^P,BVPD((M\)"2+7"0HQD,G`<9#)@") +M7"0(QT0D!`8```")/"3H_/___X-[,`!T$HM3"(M##(E"!(D0BT,P@&@P`8![ +M3P!T'8UV`(DL).C\____QP0D`0```.C\____@'M/`'7FBY/D````A=)T&\=$ +M)`@!````#[:#V0```(E$)`2)%"3H_/___XM3,(72=!C'1"0(`0````^V0TV) +M1"0$B10DZ/S___^+<R"%]@^$H````(-^<``/A8@```"#?G0`#X5^````]D,H +M!'4?B2PDZ/S____'1"0(`0```(M#((E$)`2)+"3H_/___XM3(`^V0@*)1"0( +M#[9"`8E$)`3'!"0*`0``Z/S___^+0R")1"0(BX4\!0``B40D!,<$)`$```#H +M_/___XM#((E$)`B+A3P%``")1"0$QP0D!@```.C\____QT,@`````,=&8``` +M``"+4S2%TG0,#[9#3<=$@CP`````BQ.+0P2)0@2)$(!O"@&)7"0$B2PDZ/S_ +M__^`?P7_=$Z`?PH`=#B[`````(UW.(VV`````(DT).C\____BU<\B4<\B3") +M4`2)`H!X)O]U"H/#`3A?"G8'Z]LX7PIW$,9'!?^)?"0$B2PDZ/S___^#Q`Q; +M7E]=PXVT)@````"-O"<`````55=64X/L'(M\)#C&1R<!QD<F`(E\)`C'1"0$ +M!@```(M$)#2)!"3H_/___X-_,`!T$HM7"(M'#(E"!(D0BT<P@&@P`8!_3P!T +M)8VT)@````"+5"0PB10DZ/S____'!"0!````Z/S___^`?T\`=>*+E^0```"% +MTG0;QT0D"`$````/MH?9````B40D!(D4).C\____BU<PA=)T&,=$)`@!```` +M#[9'38E$)`2)%"3H_/___XM?((7;#X0H`0``]D<H!'4GBTPD,(D,).C\____ +MQT0D"`$```"+1R")1"0$BT0D,(D$).C\____BU<@#[9'3XE$)!`/MH*8```` +M#[92`HT$@`^VA`(`````B40D#(M4)#`/MD(BB40D"`^V0B&)1"0$QP0DK`,` +M`.C\____BT<@B40D"(M,)#"+@3P%``")1"0$QP0D`0```.C\____BU-PA=(/ +MA$L!```/MT<<BTPD,,>$@;`"````````QT-P`````,=$)`C_____B5PD!(M# +M>(D$)/_2Z1@!```/MT<<BTPD,,>$@;`"````````QT-T`````(M#>(D$)/_2 +M]D<H`G0ABT<@B40D"(M4)#"+@CP%``")1"0$QP0D!@```.C\____QT<@```` +M`,=#8`````"+5S2%TG0,#[9'3<=$@CP`````BQ>+1P2)0@2)$(M,)#0/ME$* +M@^H!B%$*BT<TA<!T!V:#>#("=7"$TG1LO@````"+;"0T@\4XB?:)+"3H_/__ +M_XG#BU0D-(M"/(E:/(DKB4,$B1B%VW0Q]D,H`G0KBT,@B40D"(M,)#"+@3P% +M``")1"0$QP0D!@```.C\____@&,H_8VV`````(/&`8GPBU0D-#A""G>BB7PD +M!(M,)#")#"3H_/___X/$'%M>7UW#BU-TA=(/A=W^___I^O[__XUV`(V\)P`` +M``"#["R)7"0<B70D((E\)"2);"0HBUPD,(M#+(LHB2PDZ/S___^)QH7`#X3, +M````B2PDZ/S___^)QX7`=1C&@[4````!B70D!(DL).C\____Z:8```#&1B2@ +MC58EN`````#&!!``@\`!@_@%=?3&1BH`QD8K`,9&+`#&1BV(QD8N`,9&+P#& +M1A6K#[=#'&:)1A");AC'1F0(````QT8@B````(M'"(E&-`6(````B48XQD8< +M)(E^4,=&;`````"-7CS'1"0$`````(D<).C\____QT0D#(@```"+1PR+5Q") +M1"0$B50D"(D<).C\____B70D!(DL).C\____BUPD'(MT)""+?"0DBVPD*(/$ +M+,.)]E93@^P4BW0D((V>K`D``(D<).C\____A,`/A?$```")'"3H_/___XG" +MN8#___^`OC`%``#_=!*`OC$%``#_#X7,````N8'___\XCM<```!S!HB.UP`` +M`(#Y@@^$L`````^VP8B4!K`$```/M\)IV!0-``")V@.6J`4``+@`````Q@00 +M`(/``3T4#0``=?*)V@.6J`4``(U"$(E"$(G:`Y:H!0``C4(0B4(4B=H#EJ@% +M``"-0AB)0AB)V@.6J`4``(U"&(E"'(G:`Y:H!0``C4(HB4(HB=H#EJ@%``"- +M0BB)0BR+AJ@%``"(3`,SQT0D!`````"+ACP%``")!"3H_/___XG8`X:H!0`` +MZPF-="8`N`````"#Q!1;7L.0C70F`%.#[`B+1"00BY@4"@``!30)``")!"3H +M_/___XG!#[?`P>`&C108BT0D%(D0N`````#&!!``@\`!@_A`=?0/M\&#Q`A; +MPXUT)@"-O"<`````@^P,BT0D$(V0!`$``+D`````.9`$`0``=`J)%"3H_/__ +M_XG!B<B#Q`S#D)"0D)"0#[9$)`AIP'0$```%=$4``(M4)`2)`L.)]HV\)P`` +M``"+5"0(#[9,)`P/MT1*<(/``6:)1$IP#[92`@'0#[?`PXM4)`2X`0```(VT +M)@````"`NCLR```!=!*#P`&!PJ0```"#^"!UZ6:X___SPXUV`%93BW0D#`^V +M3"00#[9<)!2)\K@!````.(HX,@``=1@XFCDR``!U$&G`I````,:$!I<Q```! +MZPZ#P`&!PJ0```"#^"!UTEM>PY"-M"8`````55=64X/L"(M\)"`/MD0D)(A$ +M)`>+;"0<BU0D*,8"_@^V702(7"0#A-MT5XGJN0````"^`````+@`````C70F +M`#FZY$<``'4HB?,Z7"0'=19IP'0$```/MH0%V$4``(M4)"B(`NL<@\8!C;0F +M`````(/!`8/``8'"=`0``#I,)`-UOH/$"%M>7UW#C;8`````55=64X/L'(ML +M)#0/MEPD/(M\)#"`?"0X`708#[9W!+L`````B?"$P`^$(P$``.GX````QD0D +M&P"#?"1```^$TP```(M4)$")5"04#[97!,9$)!L`A-)T*XGXQD0D&P"Y```` +M`#FHY$<``'4'.-ET$X/!`8!$)!L!!70$```X5"0;=>$/MFPD&VG==`0``(V$ +M'W1%``#'1"0(9````(E$)`2+1"04B00DZ/S___^`O!]T10```'1?O@````") +MW8V4'W!%``")5"00C;0F`````(GR#[;"P>`$BU0D%(U<`F"-2P2-A"C@1P`` +MC00'C5`(BT`(B4,$BT($B4$$BT((B4$(BT(,B4$,@\8!B?"+5"00.$($=[H/ +MMD0D&VG`=`0```^VA`=T10``ZRF)^KD`````NP`````YJN1'```/E,`!PX/! +M`8'"=`0``(GP.,%UY@^VPX/$'%M>7UW#C70F`%575E.#[`0/MD0D)(A$)`,/ +MMUPD*&:)'"2+?"08O@````")]6G6.`P``(M$)!PY1#H4=7"-3!<4N`````"- +M=@")PP^V41R$TG0&@/KP=4B0:<4X#```C11;C130C0PZBUPD'(E9'(M$)"") +M02"-01`/MQPD9HE8%@^V7"0#B%@4B<*+7"0LBP.)0AB+0P2)0AS&03#_ZPV# +MP`&#P1@]@@```'6<@\8!@_X$#X5R____@\0$6UY?7<.0C;0F`````%575E.# +M[`R+;"0DBW0D((!^!`!T2;\`````C;8`````B?@/MMAIPW0$``"`O`;810`` +M_70?QT0D"`@```");"0$C80&T$4``(D$).C\____A,!U#X/'`8GX.$8$=\*[ +M_P```(G8@\0,6UY?7<.-=@!3@^P(BUPD$(M$)!2)1"0$B1PDZ/S___^Z"0`` +M`#S_=!$/ML!IP'0$```/MI0#>D4``(G0@\0(6\.-M"8`````55=64X/L#(M\ +M)""+;"0H#[9T)"P/MUPD,(GYC9?T,```N`````#&!!``@\`!/9````!U\L:! +M]3```!/&@?0P``!`#[;'B('Z,```B)G[,```B?"(@?TP``#'@9`Q``!0\P`` +MB;F,,0``BT5<B8&$,0``BT5@B8&(,0``C8'T,```B40D!(M$)"2)!"3H_/__ +M_X/$#%M>7UW#C;0F`````%575E.#[$P/MD0D;(A$)#\/MU0D<&:)5"0@BU0D +M8(G7N`$```")Q8G&@+H[,@```0^%W````&G`I`````'XC9"0,0``QD('`(FX +MC#$```^V2@9IP:0```"-E`?T,```N`````#&!!``@\`!/9````!U\FG9I``` +M`(T,.XV1\#```,9"!9#&0@1`#[=$)"`/ML2)1"0<B$(*#[9$)""(@?LP```/ +MMDPD/XA*#8M,)'2+`8E"%(M!!(E"&&G6I````(T$.L>`D#$``%#S``"+3"1@ +MB8B,,0``C907@#$``(M,)&B+05R)0@2+06")0@B)Z@^VPFG`I````(V$!_0P +M``")1"0$BTPD9(D,).C\____ZQ2#P`&!PJ0```"#^"`/A0'___^P`8/$3%M> +M7UW#B?955U93@^P,#[9L)"@/MGPD+(M,)"")SK@!````C70F`(G"@+D[,@`` +M`0^%P@```&G`I````(V$!I`Q``")Z8A(!(G[B%@%QD`'``^V6`9IPZ0```"- +MC`;T,```N`````#&!`@`@\`!/9````!U\FG#I````(V$!O`P``#&0`40QD`$ +M0(GYB$@-:=*D````#[:,%I8Q``!IR:0```"-!#''@)`Q``!0\P``BUPD((F8 +MC#$``(V<%H`Q``")Z@^VPFG`=`0``(V4!L!%``"+0A")0P2+0A2)0PB-A`[T +M,```B40D!(M,)"2)#"3H_/___^L4@\`!@<&D````@_@@#X4=____L`&#Q`Q; +M7E]=PXUV`%93@^P4BW0D(`^V1"0HB?/&AI<Q````C8[T,```N@````#&!`H` +M@\(!@?J0````=?'&@_4P```!QH/T,```0,>#D#$``%#S``")LXPQ```/ML!I +MP'0$``"-E`/`10``BT(0B8.$,0``BT(4B8.(,0``C8/T,```B40D!(M$)"2) +M!"3H_/___X/$%%M>PXUV`%93@^P4BW0D(`^V1"0HB?/&AI<Q````C8[T,``` +MN@````#&!`H`@\(!@?J0````=?'&@_4P````QH/T,```0,>#D#$``%#S``") +MLXPQ```/ML!IP'0$``"-E`/`10``BT(0B8.$,0``BT(4B8.(,0``C8/T,``` +MB40D!(M$)"2)!"3H_/___X/$%%M>PXUV`%575E.#[$P/MGPD:`^V5"1L#[9$ +M)'"(1"0GBVPD8(GY#[;)B4PD*&G!=`0``("\!=A%``#]#X0Y"0``@/H0#X2Y +M`@``@/H0=QR$TI"-="8`#X2A````@/H!#X45"0``D.D+`0``@/KB=!N`^O^- +M=@!T*8#ZD`^%^0@``)"-="8`Z38'``"Y`````(!]!`")]@^%.@@``.E="``` +M:40D*'0$``#&A`7810``_X"]ES$```%U+8M<)"B)7"0(BW0D9(ET)`2+?"1@ +MB3PDZ/S___^%P`^%G`@``(!%!@'IDP@``(M$)"C&1`4'`8M4)&2)5(4,Z7T( +M``"`O9<Q```!=5J-C?0P``!I1"0H=`0```'H#[91"8B0=D4```7010``#[91 +M"H/B`8A0"<9`"`"+3"0HB4PD"(M<)&2)7"0$BW0D8(DT).C\____A<`/A2,( +M``"`108!Z1H(``"+?"0HQD0]!P&+1"1DB42]#.D$"```:70D*'0$``"-/"X/ +MMH4F,0``B(?&10``#[>%)#$``&:)A#7$10``C90UL$4``(N%'#$``(E"!(N% +M(#$``(E""(V4-8!%``"+A0`Q``")0@2+A00Q``")0@B-G#6010``C4L$C94( +M,0``BX4(,0``B4,$BT($B4$$BT((B4$(BT(,B4$,BX48,0``B80UK$4``,:' +MV$4```&`?08?#X1B!P``NP````!I1"0H=`0```'HC;!P10``C;C`10``ZU20 +M#[;#B40D#(M4)"B)5"0(BTPD9(E,)`2+1"1@B00DZ/S___^%P'01:40D*'0$ +M``"(G`7'10``ZR"#PP&`108!.%X&#Y3`@^@!(=B(1P>`?08?=`4Z7@9RJ,:% +MES$```$/MDT$A,D/A-D&``"Z`````(!]!P%T#.M$#[;0@'P5!P%U/\9$%0?_ +MQT0D%`````#'1"00`````,=$)`S_````B50D"(M$E0R)1"0$BU0D8(D4).C\ +M____Z8@&``"X`````(/``3C(=;#I=P8``(M,)'2)3"0P@\$8B4PD+(U,)$"+ +M7"0PBT,8B40D0(MT)"R+1@2)1"1$:40D*'0$``"--"B-EM!%``#&0@@0]D,, +M<`^$90,``(N&W$4``(7`#X2(````#[9:"L=$)`@(````B4PD!(/`7(D$).C\ +M____A,!U:8M$)##V0`\/=%^+AMQ%``"%P'15B<:`?F4`=$T/MMN)7"0(B70D +M!(DL).C\____BU0D+(E4)!0/M\")1"00B5PD#(ET)`B+3"1DB4PD!(M<)&") +M'"3H_/___P^V7F:+1FB%P'0$B<;KK8MT)#`/MD8/J`T/A/T```!I5"0H=`0` +M``^VC!5T10``@/D?#X?D````J`AT$@^VP<'@!`'0QH0%Z$<```;K&`^VP<'@ +M!&E4)"AT!````=#&A`7H1P``!P^V\8GRP>($:5PD*'0$```!VHV,%>!'``#& +M00D`BWPD,`^V1P^(00N+1"1`B4$0BT0D1(E!%`^V1PF(00H/MD<-@^`/#[:4 +M'7I%```XT'8"B=")PH/B#P^V00R#X/`)T(A!#(GPP>`$:50D*'0$```!T(V, +M!>!'``"+7"0P#[9#*8/@#P^VE!5Z10``.-!V`HG0P>`$#[91#(/B#PG"B%$, +M:40D*'0$``"`A`5T10```>G"`0``J`(/A+H!``"-1"1`B40D!(DL).C\____ +MB<(\_P^%7P$```^V302$R70X#[:%V$4``#S_="VZ`````#S]=1OK(@^VPFG` +M=`0```^VA`7810``//]T$CS]=`Z#P@$XRG7@ZP6Z``````^VPFG`=`0``(V, +M!71%``"X`````,8$"`"#P`&#^&1U]`^VTHE4)#1ITG0$``"-'"J)^0^VP6G` +M=`0``(V$!71%``")@]Q%``"-C!7`10``:70D*'0$``"-E#7`10``BT(0B4$( +MBT(4B4$,BWPD9(F[Y$<```'NBX;@10``B8/@10``QH/810``_XV#<$4```^V +M2`N+?"0P#[97"8B4"WQ%``"`0`L!#[:.>D4```^V5PV#X@\XRG8"B<J(4`II +M5"0T=`0``(V,%<!%``"+1"1`B4$0BT0D1(E!%`'JBTPD,`^V00^(@G=%```/ +MMEPD)XB:VD4```^V104Z101U!,9%!0"`104!BW0D-,9$-0<!BWPD9(E\M0SK +M06E$)"AT!```#[;2:<IT!```C90-=$4``#F4!=Q%``!T((T<*8V#<$4```^V +M2`N+="0P#[96"8B4"WQ%``"`0`L!BWPD,`^V1PF)1"0(BT0D*(E$)`2)+"3H +M_/___VE$)"AT!```@+P%QT4````/A)P```"`?08?=7#IC0(``,:&V$4``!`/ +MMD,'B40D#(M4)"B)5"0(BTPD9(E,)`2+1"1@B00DZ/S___^%P`^%6@(``(!% +M!@$/MDL'#[;!@\`!#[:6=D4``#G0=0W&0P<`Z3@"``"-="8`C4$!B$,'@'T& +M'P^$)`(``.L1:40D*'0$``"--"B-GL!%```/MD,'.H9V10``#X)T____Z?P! +M``"`?08`#X7R`0``QT0D%`````#'1"00`````,=$)`R0````BU0D*(E4)`B+ +M3"1DB4PD!(M<)&")'"3H_/___^FY`0``OP````!IQS@,``"+="1D.70H%'5V +MC5P%,+X`````B40D((UV`(`[_W53@'T&'P^$A0$``(T$=HM4)""-1,(0C40% +M&(E$)!0/MT/VB40D$`^V0_2)1"0,BT/PB40D"(M,)&2)3"0$BT0D8(D$).C\ +M____A<!U!X!%!@'&`_"#Q@&#PQB!_H(```!UFH/'`8/_!`^%;O___X!]!@`/ +MA1@!```/MDT$A,D/A-@```"Z`````(!]!P%T#.M$#[;0@'P5!P%U0<9$%0?_ +MQT0D%`````#'1"00`````,=$)`S_````B50D"(M$E0R)1"0$BU0D8(D4).C\ +M____Z;L```"X`````(GV@\`!.,AUKNMWC;0F``````^VP6G`=`0``(V4!=!% +M```/MD((//UT"#S_=`3&0@C^@\$!.$T$=]AI1"0H=`0``(N<!>!%``"_```` +M`(UT)@"`?"\8`749QD0O&`"+1"\4B40D!(M,)&")#"3_TXUV`(''.`P``('_ +MX#```'0VZ]#'1"04`````,=$)!``````QT0D#.(```"+7"0HB5PD"(MT)&2) +M="0$BWPD8(D\).C\____@\1,6UY?7<.-="8`@^PLB5PD((ET)"2)?"0HBW0D +M-(N>F````(![!@`/A(0!``"-AI````")1"0$B1PDZ/S___^)P3S_#X1H`0`` +MB?</MD8!/`%T;#P!<A@\$`^$K````#R0#X5*`0``C78`Z?H```"`NY<Q```` +MC70F``^%,0$``,:#ES$```&`:P8!QT0D%`````#'1"00`````,=$)`P````` +M#[;!B40D"(M$)#")1"0$B1PDZ/S____I\@```("[ES$````/A>4```#&@Y<Q +M```!@&L&`<=$)!0`````QT0D$`````#'1"0,`0````^VP8E$)`B+1"0PB40D +M!(D<).C\____Z:8```"Z`````#J,&C@R``!U$0^VA!HY,@``.D<)=!*-="8` +M@<*D````@?K<$P``==B`:P8!B7PD%`^V1PF)1"00QT0D#!`````/ML&)1"0( +MBT0D,(E$)`2)'"3H_/___^M(#[:&H@```&G`I````,:$`Y<Q```!@&L&`<=$ +M)!0`````QT0D$`````#'1"0,D`````^VP8E$)`B+1"0PB40D!(D<).C\____ +MBUPD((MT)"2+?"0H@\0LPXGVC;PG`````%93BU0D$`^V="04BUPD#(72=`^) +MV8G0Q@$`@\$!@^@!=?6)$X'J=$4``,'J`KA9MOER]^+!Z@>(4P2)\#C0<P.( +M0P2`>P0`="6Z`````(GV#[;"QD0#!_]IP'0$``#&A`/810``_8/"`3A3!'?B +MQD,&`,9#!0")V+H`````C78`QH"7,0```8B0EC$``(/"`06D````@_H@=>9; +M7L.-=@!75E.+?"04BTPD$(!Y!``/A($```"[``````^V\VG&=`0``#F\`>1' +M``!U8K@`````.)P(.#(``'4(QH0(.S(```$%I````#W<$P``=>-IQG0$``#' +MA`'D1P```````(V4`71%``"X`````)"-="8`Q@00`(/``8/X9'7T:<9T!``` +MQH0!V$4``/V`:04!@\,!.%D$=X2)R[X`````.7L4=2W'0Q0`````QD,8`&G& +M.`P``(U$`12Z`````(UT)@#&0!P`@\(!@\`8@/J"=?&#Q@&!PS@,``"#_@1U +MP%M>7\/K#9"0D)"0D)"0D)"0D)!55U93@^P<#[9$)#R(1"0:BUPD,`^V0P4Z +M0P1U!,9#!0`/ME,%B%0D&XG=B=BY`````(G.B<^+4!0[5"0T=4IIP3@,``#& +M1`,8`0^V4P3&1"0;`(32=%O&1"0;`(M\)#0YO>1'``!U#@^VA=A%``"#P`,\ +M`78\@$0D&P&!Q70$```X5"0;="OKTX72=15IQS@,```!V(M4)#2)4!3&0!@! +MZQ"#Q@&#P0$%.`P``(/Y!'6`B?(/ML)IP#@,``"-1`,<N@````#&!`(`@\(! +M@?H"#```=?$/MG0D&XM\)#2)?+,,:<9T!```C90#=$4``+@`````Q@00`(/` +M`8/X9'7T:<9T!```C90#Y$4``+@`````Q@00`(/``3T``@``=?)ISG0$``"- +M%!F+1"0TB8+D1P``BT0D0(F"X$4``,:"V$4``/_'@MQ%````````C8P+P$4` +M`(M\)#B+!XE!$(M'!(E!%`^V1"0:B()Z10``QT0D%`````#'1"00`````,=$ +M)`S_````B70D"(M4)#2)5"0$BWPD,(D\).C\____@$,%`8/$'%M>7UW#D)"0 +MD)!64XM4)`R+`HLP#[98*X3;=#</ME()N0````#VP@%T"NLGB=#3^*@!=0># +MP0$XV77Q@/D#=A@/ML&-A(;0`0``BP"C`````.L6N0`````/ML&-A(;0`0`` +MBP"C`````,'H%(/@`5M>PY"-M"8`````55=64X/L!(M$)!B+$`^V>BN]"@`` +M`(GYA,ET20^V<`F[`````+T*````N0````"0B?#3^*@!=!X/MH*V"P``@^`# +M@\`(B$0D`XGH.D0D`W8%#[9L)`.#PP&#P0&#PD2)^#C#=<N)Z@^VPH/$!%M> +M7UW#C;0F`````(V\)P````!55U93@^P$BT0D&(L0#[9Z*[T(````B?F$R71) +M#[9P";L`````O0@```"Y`````)")\-/XJ`%T'@^V@K8+``"#X`.#P`B(1"0# +MB>@Z1"0#<P4/MFPD`X/#`8/!`8/"1(GX.,-URXGJ#[;"@\0$6UY?7<.-M"8` +M````C;PG`````%.+7"0(#[8#P.@$B<*#X@</MDL"]L$$=`.`S@(/MD,#J`1T +M!H'*```"`/;!"'0#@,X(J`AT!H'*```(`/;!`G0#@,X$J`)T!H'*```$``^V +M0Q3!X!@)T%O#C;0F`````(/L!(M$)`B)!"3H_/___X/$!,.-M@````"-O"<` +M````BTPD!(N!4`4``"7___\`N@`````]4`&3`'45#[:!4P4``,#H!#P,#Y3` +M#[;0C78`B=##C;8`````C;PG`````%.)PX72?D`/M@B$R70%@/D@=2VX```` +M`.L6C;8`````#[8,&(3)=`B`^2!U$XUV`(/``3G0=>GK#HVT)@````"X```` +M`.L%N`$```!;C78`P^L-D)"0D)"0D)"0D)"0D%.+7"0(#[9#`P^V4P+!X@@) +MT,'@$`^V2P$/MA/!X@@)T0G(6\.-="8`C;PG`````%=64XG&B=.)SX7)=!ZY +M``````^V%@^V1@&(`XA3`8/#`H/&`H/!`3GY=>=;7E_#D(/L'(E<)!")="04 +MB7PD&(MT)""+?"0D#[='$+K_````9CV%`'<+#[?`#[:4!K`$```/M])ITK`` +M```#EHP%``"+GC@*```/MD(TP>`(C80#3`@``(L(B0T`````@>'_````#[9" +M-,'@"(V<`T0(``"+`Z,`````P>`("<B)@J````!FQX*<``````")?"0$B30D +MZ/S___^+7"00BW0D%(M\)!B#Q!S#B?:-O"<`````@^P<B5PD#(ET)!")?"04 +MB6PD&(ML)"`/MGPD)(MU`(GX/`-V,`^VV,'C`XV$'C`"``#'``P```#'!"00 +M)P``Z/S___^-A!XT`@``BS")-0````#K,(GX#[;8P>,#C80S4`(``,<`#``` +M`,<$)!`G``#H_/___XV<,U0"``"+,XDU`````(GX#[;(B<C!X`:-!(B-E`60 +M"P``#[9:!8/C_(A:!8GP)0``/P`]```0`'4/B=B#R`*(0@7K&9"-="8`B<C! +MX`:-%(B)V(/(`8B$%94+``"+7"0,BW0D$(M\)!2+;"08@\0<PY"-M"8````` +M55=64X/L'(M$)#2+5"0PBQ*)5"08BQ+&0"4`QD`D!<9`)P:+3"0PB4@LN0`` +M``"]`````(V"``(``(E$)!2!P@0"``")5"00ZQ>-M@````"+5"0P#[9""=/X +MJ`%U#(/!`8M$)!@Z2"MRYH#Y`W9Q#[;9P>,#BWPD%`'?QP<L````QP0D$"<` +M`.C\____`UPD$(LSB34`````QP<D````QP0D$"<``.C\____BP.C`````,'@ +M"('F_P````G&QP<@````QP0D$"<``.C\____BQN)'0````#K;XVT)@`````/ +MMMG!XP.+?"04`=_'!RP```#'!"00)P``Z/S___\#7"00BS.)-0````#'!R0` +M``#'!"00)P``Z/S___^+`Z,`````P>`(@>;_````"<;'!R````#'!"00)P`` +MZ/S___^+&XD=`````('^`0%IEG47BU0D,(!*"`:)V,'H$#Q0#Y3`#[;`ZT:! +M_@$!``!U$8G8P>@0/%`/E,`/ML#K+XGVQP0DB!,``.C\____@\4!B>F`^01W +M"KD`````Z<'^__^)V,'H$#Q0#Y3`#[;`@\0<6UY?7<.-="8`C;PG`````%57 +M5E.#[`R+="0@BVPD)(M&5(LX9H.^G`````!T,HGKQP0DZ`,``.C\____A>UT +M!8/[`78;B3PDZ/S___]F@[Z<`````'0)@^L"Z]2-="8`@\0,6UY?7<.0C;0F +M`````(/L'(E<)`R)="00B7PD%(EL)!B+7"0L#[9L)"0/MWPD*`^V1"0PB$0D +M"XM4)""+0E2+,(DT).C\____B<+&0"3AQD`E`<9`)A*X#P```(GIA,EU"(M, +M)"`/MD$KB$(GB?B(0BB)^0^VQ8A"*0^VQXA"*HG8P>@0B$(KB=C!Z!B(0BR( +M6BV+3"0@#[=!)&:)0A")<AC'0B``````QT(T`````+@`````@'PD"P!U!;@` +M````B4)LB50D!(DT).C\____BUPD#(MT)!"+?"04BVPD&(/$',.-=@"-O"<` +M````@^P<B5PD#(ET)!")?"04B6PD&(M<)"P/MFPD)`^W?"0HBU0D((M"5(LP +MB30DZ/S___^)PL9`).'&0"4!QD`F$K@/````B>F$R74(BTPD(`^V02N(0B>) +M^(A"*(GY#[;%B$(I#[;'B$(JB=C!Z!"(0BN)V,'H&(A"+(A:+8M,)"`/MT$D +M9HE"$(ER&,="(`````#'0C0`````QT)L`````(E4)`2)-"3H_/___XM<)`R+ +M="00BWPD%(ML)!B#Q!S#55=64X/L'(M\)#`/MD0D-(A$)!L/MVPD.(7_#X3N +M````BS>%]@^$Y`````^V7BN%VWY#BT=4#[90";D`````]L(!=`KK,(G0T_BH +M`74'@\$!.=EU\8/Y`WXABP8%T`$``(T$B(L`HP````#!Z!2#\`&#X`'K'[D` +M````BP8%T`$``(T$B(L`HP````#!Z!2#\`&#X`&$P'5V@+^L`````'4&@'\F +M`'5G#[=')("\!K`$``#_=%G&1R8E9L>'G`````$`#[?%#[94)!O'1"00`0`` +M`(M,)#R)3"0,B40D"(E4)`2)/"3H_/___\=$)`0%````B3PDZ/S____&1R8` +M9H._G``````/E,`/ML#K!;@`````@\0<6UY?7<.-="8`@^P<B5PD#(ET)!") +M?"04B6PD&(M\)"`/MFPD)`^W7"0HBT=4BS")-"3H_/___XG"QD`DX<9`)0'& +M0"81N`\```")Z83)=00/MD<KB$(GB%HH#[;'B$(I#[=')&:)0A")<AC'0B`` +M````QT(T`````,=";`````")5"0$B30DZ/S___^+7"0,BW0D$(M\)!2+;"08 +M@\0<PXGVC;PG`````%575E.#[!R+?"0P#[9$)#2(1"0;#[=L)#B%_P^$\P`` +M`(LWA?8/A.D````/MEXKA=M^0XM'5`^V4`FY`````/;"`70*ZS")T-/XJ`%U +M!X/!`3G+=?&#^0-^(8L&!=`!``"-!(B+`*,`````P>@4@_`!@^`!ZQ^Y```` +M`(L&!=`!``"-!(B+`*,`````P>@4@_`!@^`!A,!U>X"_K`````!U!H!_)@!U +M;`^W1R2`O`:P!```_W1>QD<F)6;'AYP````!``^WQ0^V5"0;QT0D#`$```") +M1"0(B50D!(D\).C\____QT0D!`4```")/"3H_/___\9')@!F@[^<`````'43 +MBX>@````BU0D/(D"N`$```#K!;@`````@\0<6UY?7</K#9"0D)"0D)"0D)"0 +MD)"#[!R)7"0,B70D$(E\)!2);"08BWPD(`^V;"0D#[=<)"@/MD0D+(A$)`N+ +M1U2+,(DT).C\____B<+&0"3AQD`E`<9`)A&X#P```(GIA,EU!`^V1RN(0B>( +M6B@/ML>(0BD/MT<D9HE"$(ER&,="(`````#'0C0`````N`````"`?"0+`'4% +MN`````")0FR)5"0$B30DZ/S___^+7"0,BW0D$(M\)!2+;"08@\0<PXUV`(/L +M'(E<)`R)="00B7PD%(EL)!B+;"0D#[9T)"@/MGPD+(M$)""+&(D<).C\____ +MB<*%P'40QH6U`````<9%)@/I?P```,9`).'&0"4!B?`\`1G`]]"#P`*(0B:) +M^(3`=3^#?30`=`0/MD5-B$(G#[=%'&:)0A")6AC'0B``````QT(T`````+@@ +M.`$`B4)LB50D!(D<).C\____ZR>-=@#&0B</#[=%'&:)0A")6AC'0B`````` +MQT(T`````+@`````Z\B+7"0,BW0D$(M\)!2+;"08@\0<PY"-M"8`````55=6 +M4X/L+(ML)$B+1"1`BQ"+1"1$P>`#C;P0``(``(VT$`0"``"['`$``)"-="8` +M@WPD1`-V&8D?QP0D$"<``.C\____BP:C`````.L7B?:)'\<$)!`G``#H_/__ +M_XL&HP````")A!ST_O__@\,$@?LX`0``=;F+1"00B44`BT0D%(E%!(M$)!B) +M10B+1"0<B44,BT0D((E%$(M$)"2)112+1"0HB448@\0L6UY?7<-55U93@^PL +MBVPD2(M$)$"+$(M$)$3!X`.-O!```@``C;00!`(``+L``0``D(UT)@"#?"1$ +M`W89B1_'!"00)P``Z/S___^+!J,`````ZQ>)]HD?QP0D$"<``.C\____BP:C +M`````(F$'!#___^#PP2!^QP!``!UN8M$)!")10"+1"04B44$BT0D&(E%"(M$ +M)!R)10R+1"0@B440BT0D)(E%%(M$)"B)11B#Q"Q;7E]=PU575E.#[#R+3"14 +MB$PD$XM$)%"+`(E$)!@/MOF)^,'@!HT$N`-$)%"-D)`+``"(2@2+3"10B8B0 +M"P``QD(&`(E\)`2)#"3H_/___XUT)!R)\(GRQ@``@\`!B=.-;"0\.>AU\`^V +M1"03B40D%(E4)`B)1"0$BU0D4(D4).C\____B1PDZ/S___^)1"0,C0R]```` +M`(GZP>(&C101BT0D4(T<`HM$)`R)@YP+``"+1"10C900H`L``(M$)"B)`HM$ +M)"R)0@2`?"03`W8IBU0D&(V$"M`!``"+`*,`````B8.T"P``C83Z@`$``(L0 +MB14`````ZS^-%+T`````BTPD&(V$$=`!``"+"(D-`````(GXP>`&`<*+1"10 +MB8P0M`L``(M4)!B-A/J``0``BQ")%0````")^,'@!HT$N`-$)%")D+@+``#V +M@+8+```0#X0^`0``]H"5"P```G1=D(UT)@#&!@"#Q@$Y[G7VC5PD'(E<)`B+ +M3"04B4PD!(M$)%")!"3H_/___XD<).C\____B?K!X@:-%+J+3"10B801J`L` +M`(V4$:`+``"+1"0HB4(,BT0D+(E"$.L7B?C!X`:-!+B+5"10QX0"J`L```$` +M`@"`?"03`W8YC1S]`````(M,)!B-A`LP`@``QP`8````QP0D$"<``.C\____ +MBT0D&(V<`S0"``"+$XD5`````.LWC1S]`````(M4)!B-A!-0`@``QP`8```` +MQP0D$"<``.C\____BTPD&(V<"U0"``"+$XD5`````(GXP>`&C02XBTPD4/>$ +M`;0+``````,`=0B!XO___]_K!H'*````((!\)!,#=@^+3"08C83Y-`(``(D0 +MZPV+3"08C83Y5`(``(D0@\0\6UY?7<.0C;0F`````%575E.#[`R+?"0@BVPD +M)(EL)`@/MT4`9H7`>0LE`!\``,'X"(A')8U'4(U-%(M5%(E74(M1!(E0!(M1 +M"(E0"(M1#(E0#(M1$(E0$(VWC````(M5+HF7C````(M5,HE6!(U?9(U--HM5 +M-HE79(M1!(E3!(M1"(E3"(M1#(E3#(M1$(E3$(M1%(E3%(M1&(E3&(M1'(E3 +M'(M1((E3((M1)(E3)+D*````B<+H0O'__[D$````B?*)\.@T\?__N10```") +MVHG8Z";Q__]FQT<X``!FQT<Z``"+1"0(9H.XL@$```$/E,+!X@,/MD<H@^#W +M"="(1RCVA:<````$=`9FQT<X`0#VA:0````!="1F@T\X`O:%J@````%T!6:# +M3SH!]H6H`````70(9H%/.``!B?;VA:0````@=!=F@T\X!/:%J@```"!T"6:# +M3SH"C70F`/:%I````$!T%V:!3SB``/:%J@```$!T"&:#3SH(C78`QD=.`O:% +MF0````%T,P^W1SBH`70,@\@(9HE'.&:#3SH0#[:%E@```(/@'X/``8A'3CP@ +M=0O&1TX?C;0F`````/:%F`````AT!F:!3S@``O:%F`````1T!6:#3S@@]H68 +M`````G0%9H-/.!#VA:@````@=`[VA:X````@=`5F@T\X0/9'.`%T&(N%R``` +M`(N5S````(E'1(E72.L1C70F`(M5>(E71,='2`````"#1T3_@U=(__9%:@)T +M&0^WA8````"H#W0.9H/X`AG`@\`$B$<\ZP3&1SP"QD<]_P^W57X/M\*H!'0) +MQD<]`NL9C78`J`)T!L9'/0'K#/;"`8UV`'0$QD<]`,9'/O_V16H$=!VY```` +M``^WA;````#3^*@!=`.(3SZ#P0&#^0=UZ,=$)`0``@``B2PDZ/S___^)AY@` +M``"+1"0(]H"F````('0@#[>`K````(/@((/X`1G`@\`"B(<D`0``ZPV-M@`` +M``#&AR0!````N`$```"#Q`Q;7E]=PXVV`````(V_`````(/L'(E<)`R)="00 +MB7PD%(EL)!B+;"0@BWT`NX#____K!8#[A7=*#[;##[:T![`$``")\#S_=#D/ +MML!IP!0-```#AZ@%```Y:`AU)<=$)`@(````BU0D)(E4)`2)!"3H_/___X3` +M=`F)\.L2D(UT)@"#PP&`^X%VJ;C_____#[;`BUPD#(MT)!"+?"04BVPD&(/$ +M',.-M@````"-OP````!55U93@^P\BU0D4(L"@'HK``^$\P(``,=$)#@````` +MC8@``@``B4PD&`4$`@``B40D%`^V1"0XB$0D-P^VZ(GHP>`&C02HBU0D4(T< +M$/:#M@L``!`/A)8"``"-DY`+``"X`0```(GIT^`(0@:+FY@+``")7"0P]D(% +M`@^$(`$```^V7"0W@\,!BW0D4#A>*P^&"P$``(T$K0````")1"0@B>K!X@:) +M5"0<C;0F``````^V\XGPP>`&C12PBTPD4(T\"O:'M@L``!`/A,$```"+1"0@ +M`T0D'`'!B4PD+/>!J`L`````#@`/A*,```"+3"10C901H`L``(E4)"B#P@R- +MA`&@"P``B40D)(/`#,=$)`@(````B50D!(D$).C\____A,!T:\=$)`@(```` +MBT0D*(E$)`2+5"0DB10DZ/S___^$P'1+N`$```")\=/@BU0D+('"D`L```I" +M!HA"!HB'E@L``(-\)#``=0R+OY@+``")?"0PZQF)\,'@!HT$L(M4)#"+="10 +MB90&F`L``(GV@\,!BTPD4#A9*P^'$/___X-\)#``#X6W````BW0D4(DT).C\ +M____B40D,(7`#X1'`0``B>C!X`:-#*@!\8M$)#")@9@+```/MD0D-XG"P>(& +MC82"D`L```'PBU0D,(E"&`^V@94+``"(0@;&0@4`B3+&0@H`QD(T`,9"'``/ +MME0D-X/"`3A6*W9?B>C!X`:-!*B-G`:0"P``C;0F``````^VR@^V0P;3^*@! +M=!>)R,'@!HT$B(MT)#"+3"10B;0!F`L``(/"`8M$)%`X4"MV&>O.B>C!X`:- +M!*B+3"0PBU0D4(F,`I@+``")Z,'@!HT$J(MT)%"-E`:0"P``#[9"!HM,)#"( +M00D/MG(&@'PD-P-V)XT<[0````"+1"08`=C'`#@```#'!"00)P``Z/S___\# +M7"04B3/K)XT<[0````"+1"08`=C'`#@```#'!"00)P``Z/S___\#7"04B3.) +M]H-$)#@!#[9$)#>#P`&+="10.$8K#X<H_?__@\0\6UY?7<.-M"8`````C;PG +M`````%575E.#[$R+="1@BQ[&1"1`4,9$)$$%QD0D0@3&1"1#,,9$)$01QD0D +M1:O&1"1&`,9$)$<`QX,`0`$`$R```(L&QX`$0`$`__\``(L&QX`$0`$````` +M`#NV/`4```^%Y````(V^P`P``(VN4`4``,=$)!`!````QT0D#`@```");"0( +MQT0D!````@")-"3H_/___XN&2`4```^VEE,%``"#Z@2-!(*(AE,%``")-"3H +M_/___X3`=1&+1"1`B890!0``BT0D1(E%!*$``````(93!0``@\`!HP`````/ +MMH90!0``B(=0!0``#[:&404``(B'404```^VAE(%``"(AU(%```/MH93!0`` +M@\`"B(=3!0``#[:&5`4``(B'5`4```^VAE4%``"(AU4%```/MH96!0``B(=6 +M!0``#[:&5P4``(B'5P4``(G?C8,``0``B40D*(N#``$``*,`````#[?0B50D +M2*@@=`LEW_\``(E$)$CK%HG0@\@@B40D2(M4)"B)`HL"HP````"+!L>`!`$` +M``````"+!L>`&`$```````"+!L>`'`$```````#'!"20T`,`Z/S____'AW`! +M```8`0``BX=T`0``HP````"`Y/V`S`2)1"1(QX=P`0``&`$``(M$)$B)AW0! +M``#'AW`!```H`0``QX=T`0``?W\``,>'<`$``"0!``"+AW0!``"C`````&:X +M```-_S\``(E$)$C'AW`!```D`0``BT0D2(F'=`$``,>'<`$``#P!``#'AW0! +M`````'H`QX=P`0``I`$``,>'=`$``'V_[__'AW`!``"X`0``BX=T`0``HP`` +M```E__\```T``/H`B40D2,>'<`$``+@!``"+1"1(B8=T`0``QX><````_P`` +M`,>'D`(``$0!``#'AY0"```&$``(QX>0`@``M`$``,>'E`(``%]P``#'AY`" +M```P````BX>4`@``HP`````PY(#,,XE$)$B)AY0"``"`?BL`#X1Z`@``QT0D +M+`````"-AU`"``")1"08C9=4`@``B50D%`^V1"0LB$0D,SP##X81`0``#[;H +MC13M`````(E4)"2-A!<P`@``B40D(,<`"````,<$)!`G``#H_/___XM4)"2- +MG!<T`@``BP.C`````(E$)$@-``"``(D#C890!0``B40D"(EL)`2)-"3H_/__ +M_XEL)`2)-"3H_/___XM$)"#'`$0!``#'!"00)P``Z/S____'`P80``B+5"0@ +MQP*T`0``QP0D$"<``.C\____QP-?<```BT0D(,<`"````,<$)!`G``#H_/__ +M_\=$)$C_5(``QP/_5```QT0D"`$```");"0$B30DZ/S___^+1"0DC90'@`$` +M`(L"HP`````E___^_XD"QT0D2`4!R`"+5"0DC807A`$``,<`!0'(`.D.`0`` +M#[9L)#.-!.T`````B40D.(M4)!@!PHE4)!S'`@@```#'!"00)P``Z/S___^+ +M7"0X`UPD%(L#HP````")1"1(#0``@`")`XV&4`4``(E$)`B);"0$B30DZ/S_ +M__^);"0$B30DZ/S___^+1"0<QP!$`0``QP0D$"<``.C\____QP,&$``(BU0D +M',<"M`$``,<$)!`G``#H_/___\<#7W```(M$)!S'``@```#'!"00)P``Z/S_ +M___'1"1(_U2``,<#_U0``,=$)`@!````B6PD!(DT).C\____BT0D.(V4.(`! +M``"+`J,`````)?___O^)`L=$)$@%`<@`BU0D.(V4.H0!``")5"0TQP(%`<@` +MQP0DH(8!`.C\____B6PD!(DT).C\____@T0D+`$/MD0D,X/``3A&*P^'HOW_ +M_XDT).C\____BX<$`0``HP````"#R`*)1"1(B8<$`0``BU0D*(L"HP`````E +M\/___0T-```"B40D2(D"BP*C`````(N&&`H``(F'"`$``(N&'`H``(F'#`$` +M`(N&/`H``(F'$`$``(N&0`H``(F'%`$``,>'(`$````````/MX:,"P``)?\/ +M```-```!`(F'(`$``(N&A`H``(F')`$``(N&B`H``(F'*`$``(N&I`H``,<` +M_P\``,>'-`$````````/MX:."P``)?\/```-```!`(F'-`$``(N&J`H``(F' +M.`$``(N&K`H``(F'/`$``,>'2`$```````#'1"1(``$``,>'3`$````!``"+ +MAP0!``"C`````(/(68F'!`$``,=$)$C[_P`,QX=4`0``^_\`#,>'7`$``/__ +M``"X`````,>$AL@%````````QT2&5`````"#P`&#^!!UY6;'AH@+``#_#V;' +MAHH+``#_#\9&.`&P`8/$3%M>7UW#C70F`%575E.#[!R)1"04B=>+*(DL).C\ +M____B<.%P'4,QH>U`````>G`````B2PDZ/S___^)QH7`=1C&A[4````!B5PD +M!(DL).C\____Z9H```"-0SR)1"08QD,DX<9#)0'&0R8##[=''&:)0Q#&0V@/ +MBU0D%(L"B4,8QT,@``(``(M6"(E3-+@`````C;0F`````,8$$`"#P`$]``(` +M`'7RB7-0QT-L(#@!`,=$)`0`````BT0D&(D$).C\____BT,@B40D#(M&#(M6 +M$(E$)`2)5"0(BU0D&(D4).C\____B5PD!(DL).C\____@\0<6UY?7</K#9"0 +MD)"0D)"0D)"0D)!55U93@^Q,BT0D8(LH#[9`"83`#X17!```#[;8QT0D.``` +M``#VPP%U&;H`````B?:#P@$/MLJ)3"0XB=C3^*@!=.Z+1"0XP>`&BW0D.(T$ +ML(T4*(N"J`L``*D```(`=!`-```$`"7___W_B8*H"P``BT0D.,'@!HM\)#B- +M!+B+A`6H"P``J0``!``/A`8#``"+A3P%``")1"1(.>AU"HV5P`P``(E4)$B+ +M1"0XP>`&BTPD.(T$B`'H#[:0LPL``(E4)"@/MI"R"P``B50D)`^VD+$+``") +M5"0@#[:0L`L``(E4)!P/MI"O"P``B50D&`^VD*X+``")5"04#[:0K0L``(E4 +M)!`/MH"L"P``B40D#`^V12F)1"0(B4PD!,<$)-`#``#H_/___\=$)#P````` +MBW0D.,'F`HET)$2+?"0XP><&B7PD0(M4)#R+3"1(#[:$"C`%```\_P^$H@`` +M``^VP&G`%`T``(G#`YFH!0``BW0D1(M\)$"-A#Z@"P``C7P%#+@(````_(G> +MB<'SI@^7P@^2P#C"=6@/MD,'B40D(`^V0P:)1"0<#[9#!8E$)!@/MD,$B40D +M%`^V0P.)1"00#[9#`HE$)`P/MD,!B40D"`^V`XE$)`3'!"0@!```Z/S___^+ +M?"1@QD<%_XE\)`2)+"3H_/___^ET`@``C70F`(-$)#P!@WPD/`(/A3;___^) +M+"3H_/___XG#A<`/A$X"``"+1"0XP>`&BU0D.(T$D/:$!:D+```$=`2`2S4" +MBT0D.,'@!HM,)#B-!(CVA`6J"P``!'0$@$LU$(M$)#C!X`:+="0XC02P]H0% +MJ0L```AT!(!+-02+1"0XP>`&BWPD.(T$N/:$!:H+```(=`2`2S4@BT0D.,'@ +M!HM4)#B-!)#VA`6I"P```G0$@$LU`8M$)#C!X`:+3"0XC02(]H0%J@L```)T +M!(!+-0C&0S``B=^+1"0XP>`&BW0D.(V$L*`+``"-1`4`BU`,B1.+0!")0P2+ +M1"1@B4,(B00DZ/S___^(@XL```"+5"1@@$(<`8!]*P!T,+D`````N@````") +M]HMT)&`/MD8)T_BH`70.#[;"B$P#0(!#,@&#P@&#P0$X32MWW(M$)&"+2#"- +M4R")4#"+1"1@@\`LB4,@B4LDB1&+5"1@@$(T`<=$)!``````#[:#BP```(E$ +M)`R)?"0(B50D!(N%^`D``(D$).C\____Z=H```"I```(``^$SP```(DL).C\ +M____B<.%P`^$O0```,9`)P;&0"8%9L>`E```````QD`D!L9`)0#'0$0```4` +MQT!(`````(V(H````(M$)#C!X`:+="0XC82PH`L``(U$!0"+4`R)DZ````"+ +M0!")002+@Z````")@Y@```"+002)@YP```"+?"1@B7LLB3PDZ/S___^(@[8` +M``!F@TLX$(D\).C\____/`EV!F:!2S@``HM$)&#&0`H!BU`\B5@\BT0D8(/` +M.(D#B5,$B1J)7"0$B2PDZ/S___^)]H/$3%M>7UW#D(VT)@````!55U93@^PL +MBWPD0(M<)$2%VW05#[9#!83`=`T\_P^%A`<``.D;`0``N@````"-=@`/MH0Z +M-@4``#S_=`T/ML!KP%R-G`=``0``@\(!@_H$==^^``````^VA#XV!0``//]T +M-@^VP&O`7(V<!T`!``#VA`=&`0```G07QT0D!`````")'"3H_/___^L-D(UT +M)@")'"3H_/___X/&`8/^!(GV=;0/MD<F9CF'V`D```^%]`8``(7;=7>`?SD` +M#X7F!@``QD<Y`8N$G[`"``"%P'10BU!PA=)T*,=`<`````#'A)^P`@`````` +M`,=$)`C_____B40D!(M`>(D$)/_2ZR&+4'2%TG0:QT!T`````,>$G[`"```` +M````BT!XB00D_]*#PP&#^Q0/A'L&``#KE\9#!?^)7"0$B3PDZ/S____I9`8` +M`+H`````#[:$.C8%```\_P^$[P````^VR&O!7(V<!T`!``")7"0D@'L%_P^$ +MU````(!["@`/A"H&``"^`````&O97(VL'W@!``")+"3H_/___XG!C00[BY!\ +M`0``B8A\`0``B2F)402)"H!Y)O]T?H"YM0`````/A.@%```/MEDD#[;3B="# +MX`:#^`9U*?;"`71'B4PD#`^V04V)1"0(BT$PB40D!(M$)"2)!"3H_/___^FN +M!0``@_@$#X6E!0``]L,!#X2<!0``B4PD!(D\).C\____Z8L%``")3"0$B3PD +MZ/S____I>@4``(UV`(/&`8GR.)0?2@$```^&904``.E%____@\(!@_H$#X7U +M_O__QT0D'`````"`?SD`D`^%D@```+L`````D(UT)@"+E)^P`@``#[:$.[`$ +M``"%TG1DBTIPA<ET78-Z8`!U5SS_="T/MO!IQB@!```#AW`%``#V0"<$=!B` +M>"4`=1*)="0(B50D!(D\).C\____ZR;'A)^P`@```````,="<`````#'1"0( +M_____XE4)`2+0GB)!"3_T8/#`8/[%'6!QD<Y`>FO!```BTPD'`^VA#DV!0`` +M//\/A(L$```/MM!KPER-G`=``0``B5PD*("\!TH!````#X1L!```QD0D(P") +MQ8V$!W@!``")1"00C78`BU0D$(D4).C\____B<.-1#T`BY!\`0``B9A\`0`` +MBTPD$(D+B5,$B1J`>R;_#X4-!```#[=#'(E$)!0/MI0XL`0``&:)5"0:B[2' +ML`(``/9#*`1T:X7V=&>#?G``=&&#?F``=5N`8RC[]D,G!(UV`'05#[?"B40D +M"(ET)`2)/"3H_/___^LYBU9PBTPD%,>$C[`"````````QT9P`````,=#(``` +M``#'1"0(_____XET)`2+1GB)!"3_TI"-="8`]D,G!`^$:@$``,:#M`````"` +MI"](`0``Y_9#*`$/A/X```"`8RC^BT,@A<!T6(![)0!U,_9#)P1T+0^V1RF- +M!("+5"04C02"B40D"(N'/`4``(E$)`3'!"0'````Z/S____IW0```(E$)`B+ +MASP%``")1"0$QP0D`0```.C\____Z;X```"%]G1ABU9PA=*0=%F`>R4`=2#V +M0R<$=!H/MT0D&HE$)`B)="0$B3PDZ/S____IC````(M,)!3'A(^P`@`````` +M`,=&<`````#'0R``````QT0D"/____^)="0$BT9XB00D_]+K68![)0!U4_9# +M)P1T30^V1RF-!("+5"04C02"B40D"(N'/`4``(E$)`3'!"0"````Z/S____K +M(XM#((7`=!R+4'2%THUV`'02QT!T`````(M#((M`>(D$)/_2]D,H`@^$,@(` +M`(M#((E$)`B+ASP%``")1"0$QP0D!@```.C\____@&,H_>GC`0``BT,@A<`/ +MA-@!``"#>'0`#X3.`0``QD,G`<9#)@")7"0(QT0D!`8```"+3"0HB0PDZ/S_ +M__^#>S``=!*+4PB+0PR)0@2)$(M#,(!H,`&`>T\`=!J)/"3H_/___\<$)`$` +M``#H_/___X![3P!UYHN3Y````(72=!O'1"0(`0````^V@]D```")1"0$B10D +MZ/S___^+4S"%TG08QT0D"`$````/MD--B40D!(D4).C\____BW,@A?8/A/8` +M``#V0R@$=5V)/"3H_/___\=$)`@!````BT,@B40D!(D\).C\____BU,@#[9" +M`HE$)`@/MD(!B40D!,<$)"`!``#H_/___XM#((E$)`B+ASP%``")1"0$QP0D +M`0```.C\____ZSD/MD8"B40D"`^V1@&)1"0$QP0D(`$``.C\____BT,@B40D +M"(N'/`4``(E$)`3'!"0!````Z/S___^+5G2%TG0>#[=#',>$A[`"```````` +MQT9T`````(M&>(D$)/_2]D,H`G0ABT,@B40D"(N'/`4``(E$)`3'!"0&```` +MZ/S___^`8RC]QT,@`````,=&8`````"+4S2%TG0,#[9#3<=$@CP`````BQ.+ +M0P2)0@2)$("L+TH!```!B5PD!(D\).C\____]D,H`G0CBT,@B40D"(N'/`4` +M`(E$)`3'!"0&````Z/S___^`8RC]B?:`1"0C`0^V7"0C.)PO2@$```^'J?O_ +M_X-$)!P!@WPD'`0/A5'[__^X`0```(/$+%M>7UW#C;8`````C;\`````5U93 +M@^P0BW0D((L^B30DZ/S___^$P'08#[9?*X3;=#$/ME8)N0````#VP@%T'.LA +MQD8%_XET)`2)/"3H_/___^M<B=#3^*@!=0>#P0$XV77QB3PDZ/S___^)P87` +M=#^+5CR)1CR-1CB)`8E1!(D*@$8*`8EQ+,9!)`7&024`QD%-#\=$)`P!```` +MQT0D"`$```")3"0$B30DZ/S___^#Q!!;7E_#C70F`(V\)P````"#["R)7"0< +MB70D((E\)"2);"0HBW0D-(M>5`^V1B8\)`^':@<```^VP/\DA0`(```/MT8R +M#[?0]L($=`QFQT8R`0#&1B8!ZT-F@_@@=0QFQT8R"`#&1B81ZS&$TGD5]D8M +M`W0/)'^#R`AFB48RQD8F#>L8]L((=`;&1B8'ZPWVQ@)T",9&*P#&1B8>B70D +M!(M$)#")!"3H_/___^GP!@``QT0D#`$```#'1"0(`@```,=$)`0!````B30D +MZ/S____IRP8``,=$)`P!````QT0D"`````#'1"0$`0```(DT).C\____Z:8& +M``#'1"0,`0```,=$)`@!````QT0D!`$```")-"3H_/___^F!!@``QT0D#`$` +M``#'1"0(8````,=$)`0!````B30DZ/S____I7`8```^V1BS'1"00`0```(E$ +M)`S'1"0(8````,=$)`0!````B30DZ/S____I+P8``,=$)!`!````QT0D#``` +M`03'1"0((0```,=$)`0!````B30DZ/S____I`@8``(M#&(%@*/__]__'1"00 +M`0```,=$)`P!````QT0D"`(```#'1"0$`````(DT).C\____Z<L%``#'1"00 +M`0```,=$)`P`````QT0D"`(```#'1"0$`````(DT).C\____QP0D$"<``.C\ +M____Z9(%``"+0QB!8"C___?_QT0D$`$```#'1"0,`0```,=$)`@"````QT0D +M!`````")-"3H_/___^E;!0``QT0D$`$```#'1"0,`````,=$)`@"````QT0D +M!`````")-"3H_/___\<$)!`G``#H_/___^DB!0``QT0D#`$```#'1"0(`@`` +M`,=$)`0`````B30DZ/S____I_00``,=$)`P!````QT0D"`````#'1"0$```` +M`(DT).C\____Z=@$``#'1"0,`0```,=$)`@!````QT0D!`````")-"3H_/__ +M_^FS!```QT0D$`$```#'1"0,_____\=$)`@!````QT0D!`````")-"3H_/__ +M_^F&!```QT0D#`$```#'1"0(`````,=$)`0`````B30DZ/S____I800```^V +M1BN+?(8\B5\LB7<T#[9&*XA'3<9')@/&1R4`@$\D!8!#"@&+4SR-0SB)>SR) +M!XE7!(DZQP0D@!H&`.C\____BU0D,(!Z*P!T*;X`````]D,)`70.ZQP/MD,) +MB?'3^*@!=16#Q@&)\(M4)#`X0BMWYNL%O@````"+4QB+0BBI```(`'0*)?__ +M]_^)0BCK9(GQ#[;!C2S%`````+NX"P``B?`\`W8<BU0D,(L"!8`!```!Z(L` +MHP````#!Z!.#X`'K'(M,)#"+`06``0``C40%`(L`HP````#!Z!.#X`&$P'41 +MQP0DZ`,``.C\____@^L!=:UFQX>4``````")?"0$BT0D,(D$).C\____Z4\# +M``#'!"1`#0,`Z/S____'1"0,`````,=$)`@@````QT0D!`$```")-"3H_/__ +M_\<$)!`G``#H_/___^D2`P``QT0D#`````#'1"0(`0```,=$)`0`````B30D +MZ/S____'!"00)P``Z/S____IX0(``(M#&(%@*/__]__'1"00`````,=$)`S_ +M____QT0D"`$```#'1"0$`````(DT).C\____QP0D$"<``.C\____Z9X"``#' +M1"0,`````,=$)`@`````QT0D!`````")-"3H_/___\<$)!`G``#H_/___^EM +M`@``B70D!(M4)#")%"3H_/___^E8`@``B70D!(M,)#")#"3H_/___^E#`@`` +MQT0D$`$```#'1"0,\````,=$)`B;````QT0D!`$```")-"3H_/___^D6`@`` +MQT0D$`$```#'1"0,H-9:*\=$)`C@`P``QT0D!`$```")-"3H_/___^GI`0`` +MQT0D$`$```#'1"0,`.`#`,=$)`BD`P``QT0D!`$```")-"3H_/___^F\`0`` +MQT0D$`$```#'1"0,Y*@&`<=$)`C$`P``QT0D!`$```")-"3H_/___^F/`0`` +MQT0D#`$```#'1"0(2`,``,=$)`0!````B30DZ/S____I:@$``,<$)$`-`P#H +M_/___\=$)`P!````QT0D""````#'1"0$`0```(DT).C\____QP0D$"<``.C\ +M____Z2T!``#'1"00`0```,=$)`P`````QT0D""$```#'1"0$`0```(DT).C\ +M____Z0`!``#'1"0,`0```,=$)`A@````QT0D!`$```")-"3H_/___^G;```` +M#[9&+,=$)!`!````B40D#,=$)`A@````QT0D!`$```")-"3H_/___^FN```` +MQD,%`(M&5(D$).C\____Z9H```#'1"0,`0```,=$)`@!````QT0D!`````") +M-"3H_/___\<$)!`G``#H_/___^MLBT,8@6`H___W_\=$)!`!````QT0D#/__ +M___'1"0(`0```,=$)`0`````B30DZ/S____'!"00)P``Z/S____K+,=$)`P! +M````QT0D"`$```#'1"0$`````(DT).C\____QP0D$"<``.C\____N`$```"+ +M7"0<BW0D((M\)"2+;"0H@\0LPXVT)@````"#[!R)7"00B70D%(E\)!B+7"0@ +MBWPD)`^W5Q!F@?J%`'=^#[?"#[:$&+`$```\_W1O9H/Z?W<9#[;`:<`H`0`` +M`X-P!0``BT`L#[9(!.M6D`^W1Q!F/8$`=R`/M\`/MH08L`0``&G`%`T```.# +MJ`4``(M`"`^V2`3K*P^W1Q`/MH08L`0``&G`L`````.#C`4``(M`5`^V2`3K +M"I"-="8`N?____^X_____V:!?Q"%`'<,#[='$`^VA!BP!```B[.,!0``#[;1 +M@/G_=!2`O!HV!0``_W0*//]T!H!_%`9U)H-_4`!T#XU'4(E$)`2)'"3H_/__ +M_XE\)`2)'"3H_/___^GJ````#[;`:<"P`````<8/MD8F/!IT=CP:=PH\$0^% +MFP```.L;/!N-M"8`````=&,\'`^%A@```(VV`````.MZBY,X"@``@<),"``` +M#[9&-,'@"`'"BPJ)#0`````/MLF+DS@*``"!PD0(```/MD8TP>`(`<*+`J,` +M````P>`("<&)CI0```#&1B8:ZS'&1B8;ZRN+@S@*```%3`@```^V5C3!X@@! +MT(L`HP````"#X/>(1BS&1B8<ZP3&1B8=@W]0`'0/C4=0B40D!(D<).C\____ +MB7PD!(D<).C\____B70D!(D<).C\____C78`BUPD$(MT)!2+?"08@\0<PX/L +M#(M$)!")1"0$BP")!"3H_/___X/$#,.-M"8`````@^PLB5PD'(ET)"")?"0D +MB6PD*(M<)#2+<RP/MU,<N`````"+3"0P@+P*L`0``/\/A#L)```/MD,F/`D/ +MA"\%```\"7=+/`4/A)@````\!9!W'CP##X2V````/`2-="8`#X7N"```Z>0` +M``"0C70F`#P'#X2-!```/`>-M@`````/AQ`$``#IF0(``)"-="8`/!8/A'P# +M```\%HVV`````'<C/!0/A)@%```\%(UT)@`/A^8"```\"@^%E@@``(GVZ1`% +M```\&@^$-P(``#S_D`^$<`4``#P7#X5V"```B?;I0@,``(M$)#`/MF@KB>J$ +MT@^$H0````^V5@F_`````/;"`0^$@@```.F*````B?:+1AB!8"C___[_BT,L +MQT0D#`````#'1"0(`0```(E<)`2)!"3H_/___\<$)`4```#H_/___[@!```` +MZ2$(``#'1"0,`````,=$)`@`````B5PD!(DT).C\____QP0D4,,``.C\____ +MN`$```#I[P<``(G0B?G3^*@!=1*#QP&)^(GI.,AUZ^L%OP`````/ME,DB="# +MX`:#^`9U"?;"`0^%U0```(M6&(M"**D```$`=`TE___^_XE"*.F[````B?H/ +MML+!X`.)1"08O1`G``"0BTPD,(L1B?@\`W89BTPD&(V$$8`!``"+`*,````` +M)0```0#K%XM,)!B-A!&``0``BP"C`````"4```$`A<!T,HGX/`-V%HM,)!B- +MA!&``0``QP````$`Z1\'``"+3"08C801@`$``,<````!`.D)!P``QP0DZ`,` +M`.C\____@^T!#X5Y____QD,G`L9#)O^)7"0$BT0D,(D$).C\____N`$```#I +MYP8``/9&!@%T-HE<)`2)-"3H_/___X3`=2:]^@```(E<)`2)-"3H_/___X3` +M=1''!"3H`P``Z/S___^#[0%UWXGZ@/H#=AR+3"0PBP$%@`$```^VTHT4T(L" +MHP````")`NL<BU0D,(L"!8`!``")^0^VT8T4T(L"HP````")`HM#+(G:Z#+E +M___'!"0@3@``Z/S___^X`0```.E,!@``B50D!,<$)%@$``#H_/___XMS+(L^ +MB3PDZ/S___^)P87`=1'&@[4````!N`$```#I&`8``,9`).'&0"4!QD`F%P^W +M0QQFB4$0BP:)01C'02``````QT$T`````,=!;"`X`0")3"0$B3PDZ/S___^X +M`0```.G4!0``B50D!,<$)#8!``#H_/___XMS+(L^B3PDZ/S___^)P87`=1'& +M@[4````!N`$```#IH`4``,9`).'&0"4!QD`F&`^W0QQFB4$0BP:)01C'02`` +M````QT$T`````,=!;"`X`0")3"0$B3PDZ/S___^X`0```.E<!0``B=J)\.@C +MY/__N`$```#I204``(L^B3PDZ/S___^)P@^V2SR%P'41QH.U`````;@!```` +MZ20%``#&0"3AQD`E`<9`)@6(2"</MT,<9HE"$(L&B4(8QT(@`````,="-``` +M``#'0FP@.`$`B$L_B50D!(D\).C\____N`$```#IV@0``(L^B3PDZ/S___^) +MP@^V2SZ%P'41QH.U`````;@!````Z;4$``#&0"3AQD`E`<9`)@2(2"</MT,< +M9HE"$(L&B4(8QT(@`````,="-`````#'0FP@.`$`B$M!B50D!(D\).C\____ +MN`$```#I:P0``(L^B3PDZ/S___^)P87`=1'&@[4````!N`$```#I2@0``,9` +M).'&0"4!QD`F!@^W0QQFB4$0BP:)01C'02``````QT$T`````,=!;"`X`0") +M3"0$B3PDZ/S___^X`0```.D&!```C;8`````BSZ)/"3H_/___XG!A<!U$<:# +MM0````&X`0```.G?`P``QD`DX<9`)0'&0"8,#[=#'&:)01"+!HE!&,=!(``` +M``#'030`````QT%L(#@!`(E,)`2)/"3H_/___[@!````Z9L#``"+/HD\).C\ +M____B<&%P'41QH.U`````;@!````Z7H#``#&0"3AQD`E`<9`)A;&0"@!#[=# +M'&:)01#&06@/BP:)01C'02``````QT$T`````,=!;"`X`0")3"0$B3PDZ/S_ +M__^X`0```.DN`P``QD,F_V;'@Y0```````^V4R2)T(/@!H/X!G4%]L(!=1Z# +M>S0`=1B)-"20C70F`.C\____B(.V````D(UT)@"`>R<"=1J+0RR)7"0(B40D +M!(M$)#")!"3H_/___XUV`/9&"`)U&KL`````C7XX@'X*``^%8`$``.E\`@`` +MC78`BU8H#[9:*@^VRP^V0A^#Z`$YP7TVC4,!B$(J@$(K`<9")@`/MT(R@^#^ +M@\@(9HE",HE4)`2+5"0PB10DZ/S___^X`0```.EE`@``.<%T%KL`````C7XX +M@'X*`'4TC78`Z2\"``#&0B8`#[=",H/@]H#,`F:)0C*)5"0$BTPD,(D,).C\ +M____N`$```#I'P(``(D\).C\____B<&+1CR)3CR).8E!!(D(@'DF_P^$C@`` +M`("YM0`````/A-4!```/MEDD#[;3B="#X`:#^`9U*O;"`711#[9!38M1,(E, +M)`R)1"0(B50D!(DT).C\____N`$```#IM@$``(/X!`^%D0$``/;#`0^$B`$` +M`(E,)`2+1"0PB00DZ/S___^X`0```.F*`0``B4PD!(M4)#")%"3H_/___[@! +M````Z7`!``#&@;4`````@\,!.%X*#X9!`0``Z3G___^)/"3H_/___XG!BT8\ +MB4X\B3F)002)"(!Y)O\/A)\```"`>24`#X6.````@+FU``````^$!`$```^V +M620/MM.)T(/@!H/X!G4J]L(!=%$/MD%-BU$PB4PD#(E$)`B)5"0$B30DZ/S_ +M__^X`0```.GE````@_@$#X7`````]L,!#X2W````B4PD!(M,)#")#"3H_/__ +M_[@!````Z;D```")3"0$BT0D,(D$).C\____N`$```#IGP```,:!M0````"# +MPP$/MD8*.-@/AS'___\XPW5.A,!T2KL`````C7XXB3PDZ/S___^)PHM&/(E6 +M/(DZB4($B1`/MD(E/")T!#P-=1?'1"0$"@```(D4).C\____N`$```#K/X/# +M`3A>"G>^QD8%_XET)`2+5"0PB10DZ/S___^X`0```.L<N`$```#K%87MC78` +M#X0!^?__Z1[Y__^0C70F`(M<)!R+="0@BWPD)(ML)"B#Q"S#C;8`````C;\` +M````@^PLB5PD'(ET)"")?"0DB6PD*(M\)#"+;"0T#[=5$&:!^H4`#X>^```` +M#[?"#[:,![`$``"`^?\/A*H```!F@_I_=QP/ML&+EW`%``!IP"@!``"+1!`L +M#[9`!.LZC78`9H'Z@0!W&0^VP8N7J`4``&G`%`T``(M$$`@/MD`$ZQ</ML&+ +MEXP%``!IP+````"+1!!4#[9`!#S_=$T/ML`/MIP'-@4``(#[_W05@/G_=!`/ +MME44@/H&=5>-M"8`````@/O_=".`^?]T'@^VP6G`*`$``(G&`[=P!0``QD8G +M`L9&)O_I6`(``(-]4`!T#XU%4(E$)`2)/"3H_/___XEL)`2)/"3H_/___^E? +M`@``B?8/ML%IP"@!``")Q@.W<`4``(M--(32#X2T````#[9%)CP-```` +M/`P/A,4````/MY:4````C4(!9HF&E````&:#^@EV%X!^)@9T$<9&)P+&1B;_ +M@&8H_NG2`0``QP0DZ`,``.C\____#[96)(G0@^`&@_@&=3[VP@%T.<=$)!`` +M````QT0D#`(````/MD9-B40D"(M&,(E$)`0/ML-KP%R-A`=``0``B00DZ/S_ +M___IIP$``,9&)@.)="0$B3PDZ/S____ID@$``)"-="8`#[9%)CP!=0W&1B8$ +MC70F`.E+`0``/`)U#,9&)@6-=@#I.P$``#P##X6]````B<B`?B8%=2MF@7D$ +MR#=U(P^W1AR)1"0$QP0DC`0``.C\____QD8F!ND&`0``C;8`````B40D!(DT +M).C\____C49DNB@```#H!\#__X3`=3B-1E"Z%````.CVO___A,!U)XV&C``` +M`+H(````Z.*___^$P'43BT9$"T9(=`O&1B87B?;IJP```&:#OI0````==A'& +M1B<"QD8F_X!F*/[ID````,<$).@#``#H_/___\9&)AIF@X:4`````>MV/!=U +M!L9&)A7K;#P8=0K&1B86C70F`.M>/`1U!L9&)@?K5#P%B?9U!L9&)@CK2#P& +M=0;&1B8)ZSX\#'4&QD8F"NLT/!:)]G4&QD8F%.LH/`YU)(-]4`!T#XU%4(E$ +M)`2)/"3H_/___XEL)`2)/"3H_/___^LND(-]4`!T#XU%4(E$)`2)/"3H_/__ +M_XEL)`2)/"3H_/___XET)`2)/"3H_/___XM<)!R+="0@BWPD)(ML)"B#Q"S# +MZPV0D)"0D)"0D)"0D)"0@^PLB5PD'(ET)"")?"0DB6PD*(ML)#2+=2P/MT4< +MN@````"+3"0P@+P!L`0``/\/A.L"```/MD4F/!0/A-0````\%'<[/`T/A`0! +M```\#9!W$#P%#X6[`@``C;8`````ZU,\#@^$^P```#P/C70F``^%GP(``.G\ +M````D(UT)@`\&P^$GP```#P;C;8`````=Q`\&'0Y/!D/A7<"``")]NM'/!QT +M73S_#X5G`@``B?;IQ@```,=$)`0`````B2PDZ/S___^Z`0```.E1`@``QT0D +M!`$```")+"3H_/___[H!````Z3<"``#'1"0$`0```(DL).C\____N@$```#I +M'0(``(DL).C\____N@$```#I"P(``(DL).C\____N@$```#I^0$``/9%.01T +M$HDL).C\____N@$```#IX0$``(DL).C\____N@$```#ISP$``(DL).C\____ +MN@$```")]NF[`0``B2PDZ/S___^Z`0```.FI`0``QD4F_X!^"@`/A.D```"[ +M`````(U^.(UV`(D\).C\____B<*+1CR)5CR).HE"!(D0@'HF_P^$GP```(!Z +M)0`/A9P```"`NK4`````#X1-`0``#[9:)`^VRXG(@^`&@_@&=2KVP0%T4HE4 +M)`P/MD)-B40D"(M",(E$)`2)-"3H_/___[H!````Z1T!``"#^`0/A0D!``#V +MPP&0#X3_````B50D!(M$)#")!"3H_/___[H!````Z?````")5"0$BTPD,(D, +M).C\____N@$```#IU@```(VV`````,:"M0````"#PP$/MD8*.-@/ARK___\X +MPP^%C`````^V124\(G04/`UT$+\`````C6XX@'X*`'4<ZW#'1"0$"@```(DL +M).C\____N@$```#I?````(DL).C\____B<.+1CR)7CR)*XE#!(D8#[9#)3PB +M=`0\#74IB5PD!,<$)$P!``#H_/___\=$)`0*````B1PDZ/S___^Z`0```.LR +MB?:#QP&)^#A&"G>JQD8%_XET)`2+3"0PB0PDZ/S___^Z`0```.L+N@$```"- +MM@````")T(M<)!R+="0@BWPD)(ML)"B#Q"S#C78`C;PG`````%575E.#["R+ +M7"1$#[=3$+G_____N/____]F@?J%`'=[#[?"BW0D0`^VC`:P!```N/____^` +M^?]T8F:#^G]W'0^VP8M\)$"+EW`%``!IP"@!``"+1!`L#[9`!.L_9H'Z@0!W +M'0^VP8MT)$"+EJ@%``!IP!0-``"+1!`(#[9`!.L;#[;!BWPD0(N7C`4``&G` +ML````(M$$%0/MD`$#[;`BU0D0`^VM`(V!0``:\9<C80"0`$``(E$)"0/ML%I +MP"@!```#@G`%``")1"0HBTLT#[81P>(8#[9!`<'@$`G"#[9!`PG"#[9!`L'@ +M"`G"C5D(B=#!Z`.#^!!V!;@0````C03!B40D'#G##X>0`0``QT0D(`````!K +M]ER)="08`W0D0(ET)!2)'"3H_/___XG%C7,$OY0(``"Y!````/SSI@^7P@^2 +MP#C"#X5$`0``@_T0#X<[`0``@T0D(`&#?"0@`74JBTPD*,>!'`$```$```") +MJ2`!``"+`XF!J````(M#!(F!K````.D%`0``BW0D0(DT).C\____B<:%P`^$ +M_````,9`)P;&0"8%9L>`E```````QD`D!L9`)0#'0$0```4`QT!(`````,>` +M'`$```$```")J"`!``"+5"0H@<*@````BWPD*(N'H````(F&H````(M"!(F& +MI````(N'H````(F&F````(M"!(F&G````(L#B8:H````BT,$B8:L````BT0D +M)(E&+(D$).C\____B(:V````9H-..!"+5"0DB10DZ/S___\\"78&9H%..``" +MBTPD%("!2@$```&+D7P!``")L7P!``"+?"1`BTPD&(V$#W@!``")!HE6!(DR +MB70D!(D\).C\____C;8`````@\,(.UPD'`^&A_[__X/$+%M>7UW#C70F`(V\ +M)P````!55U93@>PL`@``#[:$)$@"``"+E"1``@``BU((B50D'(L*B4PD((N4 +M)$`"```/ME(PB%0D)XN,)$`"``"#P2B)3"0HBY0D0`(``#E**`^$JP(``(!\ +M)"<`#X2@`@``#[;`B40D%(M,)"B)#"3H_/___XUX^(U$)"R)1"00BU0D%(E4 +M)`S'1"0(`0```(M,)!R)3"0$BX0D1`(``(D$).C\____@'PD+``/A/X```"] +M`````(V7H````(E4)!B-=@")Z0^V\<=$)`@(````BT0D&(E$)`2)\\'C!(V$ +M')@```")!"3H_/___X3`#X2?````C90<C`````^V0@B#X`^(A[8````/MT\X +M9H'AW_V)R(/($&:)1S@/MD((P.@$/`EU"8G(@\@P9HE'.(GPP>`$#[:$!)0` +M``#`Z`0\"G4&9H%/.``"BTPD*(M1!(U'"(E!!(E/"(E7#(D"]D<H`G1`@&<H +M_8M'((7`=#6)1"0(BU0D((N"/`4``(E$)`3'!"0&````Z/S____K%9"-="8` +M@\4!B>DX3"0L=A'I(/___XGH.$0D+`^'-P$``(E\)`C'1"0$!@```(M4)!R) +M%"3H_/___X!_3P!T)(VV`````(M,)"")#"3H_/___\<$)`$```#H_/___X!_ +M3P!UXHN7Y````(72=!O'1"0(`0````^VA]D```")1"0$B10DZ/S___^+5S"% +MTG08QT0D"`$````/MD=-B40D!(D4).C\____BT<@A<!T?<=`8`````#V1R@$ +M=2>+1"0@B00DZ/S____'1"0(`0```(M'((E$)`2+5"0@B10DZ/S___^+1R") +M1"0(BTPD((N!/`4``(E$)`3'!"0&````Z/S___^+1R")1"0(BU0D((N"/`4` +M`(E$)`3'!"0!````Z/S____'1R``````BQ>+1P2)0@2)$(M,)!R`:0H!BX0D +M0`(``(!H,`&)?"0$BU0D((D4).C\____BT0D*(N,)$`"```Y02AT"X!L)"<! +M#X5G_?__@<0L`@``6UY?7<.-M"8`````55=64X'L+`(``(N\)$0"``"+A"1` +M`@``BP")1"0D#[:T)$P"``"-7"0LB5PD$(ET)`S'1"0(`0```(N4)$`"``") +M5"0$B3PDZ/S___^)="0(B7PD!(NT)$@"``")-"3H_/___XMN*(/M"(GS@\,H +MC44(.=AT*P^V124\#704/")U,.L.#[9%)3P-=`8\(HGV=2#&128%QD4G!,9$ +M)"H!ZP7&1"0J`(!\)"P`=17I(`(``(MM"(/M"(U%"#G8=<60Z]_&1"0K`(N$ +M)$`"``"#P#B)1"0@BY0D2`(``(MR*(/N"(U&"#G##X0#`@``#[9$)"O!X`2- +MO`28````C70F`,=$)`@(````B7PD!(V&H````(D$).C\____A,`/A9P!``"+ +M=@B#[@B-1@@YV`^$O0$``.O+B[0D0`(``(!&"@'&028%QH&T`````,9!)P1F +MQX&4``````#&@98`````QT%$```%`,=!2``````/MG0D*XGPP>`$C90$C``` +M``^V0@2(020/MD(%B$$EBX0D0`(``(E!+`^V0@B#X`^(@;8````/MWDX9H'G +MW_V)^(/($&:)03@/MD((P.@$/`EU"8GX@\@P9HE!.(GPP>`$#[:$!)0```#` +MZ`0\"G4&9H%).``"BY0D2`(``(E1,(GRP>($#[:$%)(```"(04V-E!2,```` +MBT(,B8&@````BU(0B9&D````B8&8````B9&<````B[0D2`(``(!&,`&+E"1` +M`@``BT(\B4H\BW0D((DQB4$$B0B+A"1(`@``BU`LC4$(B[0D2`(``(E&+(E9 +M"(E1#(D"#[91)(G0@^`&QD0D*@"#^`9U1_;"`70MB4PD#`^V04V)1"0(BX0D +M2`(``(E$)`2+E"1``@``B10DZ/S____&1"0J`.L5B4PD!(MT)"2)-"3H_/__ +M_\9$)"H`@$0D*P$/MD0D*SA$)"P/AP/^__^`?"0J`'0MQT0D!`H```")+"3H +M_/___^L;D(UT)@"+5"0DB10DZ/S___^)P87`#X4O_O__@<0L`@``6UY?7</K +M#9"0D)"0D)"0D)"0D)!55U93@>PL`@``BX0D0`(``(LP#[90'(A4)":#P"R) +M1"0HBXPD0`(``#E!+`^$T`,``(32#X3(`P``BT0D*(D$).C\____C6C@QT0D +M$`````#'1"0,`````,=$)`@`````BY0D0`(``(E4)`2+C"1$`@``B0PDZ/S_ +M__^(1"0GA,`/A&L#``"_`````+L`````B5PD(,=$)!``````B5PD#,=$)`@! +M````BX0D0`(``(E$)`2+E"1$`@``B10DZ/S___\/ML#!X`2#P&0]``(```^' +MZ0$``(U,)"R)3"00B5PD#,=$)`@!````BX0D0`(``(E$)`2+E"1$`@``B10D +MZ/S____'1"0("````(EL)`2-C"2(````B0PDZ/S___^$P`^$F`$``(M$)"B+ +M4`2-12"+3"0HB4$$B4T@B54DB0(/MD0D+HA%,8V$)(````")1"0$BX0D0`(` +M`(D$).C\____//]T$@^VP&G`%`T```.&J`4``(E%#(GZA-)T50^V1"0OT>B# +MX`'!X`0/ME4U@^+O"<*(534/MD0D+\'H`X/@`<'@!8/BWPG"B%4U#[9$)"_! +MZ`*#X`'!X`.#XO<)PHA5-0^V1"0RB(6+````Z;\````/MD0D+HA%,8N,)$`" +M``")30@/MD0D,HB%BP````^W1"0PB44X#[=$)'QFB86(````#[9$)'Z(A8H` +M``"-37B-5"0L@\)`BT0D;(E%>(M"!(E!!(M""(E!"(M"#(E!#(U-2(U4)"R# +MPA"+1"0\B45(BT($B4$$BT((B4$(BT(,B4$,C4U8C50D+(/"((M$)$R)15B+ +M0@2)002+0@B)00B+0@R)00R+0A")01"+0A2)012+1"1DB45PBT0D:(E%=(M$ +M)"")1"0,B6PD"(N4)$0"``")5"0$BXPD0`(``(D,).C\____Z1@!``")]H/' +M`8/#`8GX.D0D)P^$(`$``.FZ_?__B3PDZ/S___^-6/B)7"0(QT0D!`8```"+ +ME"1``@``B10DZ/S___^`>T\`=!J)-"3H_/___\<$)`$```#H_/___X![3P!U +MYHM#((7`=&W'0&``````]D,H!'4?B30DZ/S____'1"0(`0```(M#((E$)`2) +M-"3H_/___XM#((E$)`B+ACP%``")1"0$QP0D`0```.C\____BT,@B40D"(N& +M/`4``(E$)`3'!"0&````Z/S____'0R``````BQ.+0P2)0@2)$(N,)$`"``"` +M:0H!@&TP`8E<)`2)-"3H_/___SE]*`^%&/___XN$)$`"``"`:!P!B6PD!(DT +M).C\____BTPD*(N4)$`"```Y2BQT'(!L)"8!=!7I2/S__XU]*#E]*`^%V?[_ +M_XGVZ[V!Q"P"``!;7E]=PXUV`%575E.!["P"``"+K"1$`@``BT4`B40D'(N4 +M)$`"``")5"0$B2PDZ/S____'1"00`````,=$)`P`````QT0D"`````");"0$ +MBYPD0`(``(D<).C\____B$0D(X3`#X2^`P``QD0D(@#'1"0D`````)#'1"00 +M`````(M$)"2)1"0,QT0D"`$```");"0$BY0D0`(``(D4).C\____#[;`P>`$ +M@\!D/0`"```/AU@#``"-7"0LB5PD$(M$)"2)1"0,QT0D"`$```");"0$BY0D +M0`(``(D4).C\____C9PDB````(E<)`2)+"3H_/___SS_#X42`P``BT0D'(D$ +M).C\____B<>%P`^$+P,``(!%'`'&0#``BX0DB````(D'BX0DC````(E'!(V$ +M)(````")1"0$B2PDZ/S___\\_W06#[;`:<`4#0``BU0D'`."J`4``(E'#`^V +M1"0NB$<Q#[9$)"_1Z(/@`<'@!`^V5S6#XN\)PHA7-0^V1"0OP>@#@^`!P>`% +M@^+?"<*(5S4/MD0D+\'H`H/@`<'@`X/B]PG"B%<UB6\(#[9$)#*(AXL```"+ +M1"0TB4=`BT0D.(E'1`^V1"0SB$<R#[=$)#")1S@/MT0D?&:)AX@````/MD0D +M?HB'B@```(U/>(U4)"R#PD"+1"1LB4=XBT($B4$$BT((B4$(BT(,B4$,C4]( +MC50D+(/"$(M$)#R)1TB+0@2)002+0@B)00B+0@R)00R-3UB-5"0L@\(@BT0D +M3(E'6(M"!(E!!(M""(E!"(M"#(E!#(M"$(E!$(M"%(E!%(M$)&2)1W"+1"1H +MB4=TBTTPC5<@B54PC44LB4<@B4\DB1&`?"0L``^$@@$``&;'1"0J``"-73B) +M7"08C4<HB40D%(VV`````(M4)!R)%"3H_/___XG!A<`/A(0!``"`10H!QD`F +M!<:`M`````#&0"<$QT!$```%`,=`2`````!FQX"4```````/MW0D*HGPP>`$ +MC90$C`````^V0@2(020/MD(%B$$EB6DLB7DP#[9"!HA!30^V0@B#X`^(@;8` +M```/MUDX9H'CW_V)V(/($&:)03@/MD((P.@$/`EU"HG8@\@P9HE!.)")\,'@ +M!`^VA`24````P.@$/`IU#&:!23@``HVV`````(GPP>`$C90$C````(M"#(F! +MH````(M2$(F1I````(F!F````(F1G````(!',`&+13R)33R+7"08B1F)002) +M"(M7+(U!"(E'+(M<)!2)60B)40R)`@^V422)T(/@!H/X!G4O]L(!=!J)3"0, +M#[9!38E$)`B)?"0$B2PDZ/S____K$(E,)`2+1"0<B00DZ/S___]F@T0D*@$/ +MMD0D+&8[1"0J#X>9_O__@$0D(@"0D`0^V5"0C.%0D(@^%4/S__X!]"@!U +M%,9%!?^);"0$BUPD'(D<).C\____@<0L`@``6UY?7<.-="8`C;PG`````%57 +M5E.#["R+;"1`BWPD1,=$)!``````QT0D#`````#'1"0(`````(E\)`2)+"3H +M_/___X3`=#B[`````(/H`0^V\(U$)"N)1"0,B5PD"(E\)`2)+"3H_/___X!\ +M)"O^#X6E````@\,!C48!.<-UTP^V1S2#Z`&(1S2$P'1UBS?&1S0`BU\L@^L@ +MC5<LC4,@.=!T=X-[#`!U2.L+D(UT)@"#>PP`=3O&1S0!B7PD!(DL).C\____ +MQT0D$``````/MH.+````B40D#(E<)`B)?"0$BX;X"0``B00DZ/S____K*8M; +M((/K((U#(#G0=;*)]NL8B7PD!(DL).C\____B7PD!(DL).C\____@\0L6UY? +M7<.-M"8`````C;PG`````%575E.#[`R+="0@BWPD)(LNNPH```")?"0$B30D +MZ/S___^$P'41QP0DZ`,``.C\____@^L!==\/METKA-MT(`^V5@FY`````/;" +M`70+ZQ"0B=#3^*@!=0>#P0$XV77QBQ>+1P2)0@2)$(!N"@&)?"0$B2PDZ/S_ +M___V1@@"=$&+1BB%P'43B2PDZ/S___^%P`^$6@$``(E&*(DHB7!4QD`J`,9` +M*P#&0"8`9H-(,@2)1"0$B2PDZ/S____I,`$``(M&*(7`#X3+````@\!8B40D +M!(M%%(D$).C\____BT8HB40D!(DL).C\____C7XX.7XX#X27````B3PDZ/S_ +M__^)PXM`((7`=&W'0&``````]D,H!'4?B2PDZ/S____'1"0(`0```(M#((E$ +M)`2)+"3H_/___XM#((E$)`B+A3P%``")1"0$QP0D`0```.C\____BT,@B40D +M"(N%/`4``(E$)`3'!"0&````Z/S____'0R``````@&X*`8E<)`2)+"3H_/__ +M_SE^.`^%:?___\=&*`````"`?@H`=!.-1CB)!"3H_/___XG!@&X*`>L*B2PD +MZ/S___^)P87)=#.+5CR)3CR-1CB)`8E1!(D*@$8*`8EQ+,9!)`7&024`QD$G +M!L9!)@.)3"0$B2PDZ/S___^#Q`Q;7E]=PY"-M"8`````@^PLB5PD'(ET)"") +M?"0DB6PD*(M\)#"+7"0T#[=3$&:!^H4`=WH/M\(/MHP'L`0``(#Y_W1J9H/Z +M?W<9#[;!BY=P!0``:<`H`0``BT00+`^V0`3K.V:!^H$`=QD/ML&+EZ@%``!I +MP!0-``"+1!`(#[9`!.L;#[;!BY>,!0``:<"P````BT005`^V0`2-="8`#[;1 +M//]T"6:!^O\`=2B)]H-[4`!T#XU#4(E$)`2)/"3H_/___XE<)`2)/"3H_/__ +M_^DZ`0``#[;`#[:,!S8%```/M\)IP"@!``")Q@.W<`4``(![%``/A*8```!K +MP5R-K`=``0``#[9%"HE$)!`/MD4)B40D#`^V0R>)1"0(#[9#)HE$)`3'!"2L +M!```Z/S___^+%HM&!(E"!(D0@&T*`8ET)`2)/"3H_/___XE<)`2)/"3H_/__ +M_P^V=RN)\(3`#X2J````#[9=";D`````]L,!=0WK'`^VRHG8T_BH`706B4PD +M!(D\).C\____Z7X```"Z`````(/"`8GP.,)UUNMN:\%<C:P'0`$``(![)@%U +M-L<$)!`G``#H_/___XE<)`2)/"3H_/___\=$)`P!````QT0D"`````")="0$ +MB2PDZ/S____K*,<$)%##``#H_/___XE<)`2)/"3H_/___XET)`2)+"3H_/__ +M_XUT)@"+7"0<BW0D((M\)"2+;"0H@\0LPXVV`````(V_`````%575E.#[!R+ +M="0PBVPD-`^V1"0XB$0D%P^V1"0\B$0D%HL&B40D&(!^"@!T=+L`````C7XX +MB3PDZ/S___^)PHM&/(E6/(DZB4($B1`Y:C!U#P^V1"07.$)-=`V0C70F`(/# +M`3A>"G?-.%X*=#2`?"064'4MQD(G!L9")@7&0B0'QD(E`(EJ,(ER+,:"E@`` +M``")5"0$BT0D&(D$).C\____@\0<6UY?7<.-M"8`````@^PLB5PD'(ET)"") +M?"0DB6PD*(ML)#"+1"0T#[=0$&:!^H4`#X>&````#[?"#[:$*+`$```\_W1W +M9H/Z?W<8#[;`:<`H`0```X5P!0``BT`L#[90!.M>BU0D-`^W0A!F/8$`=R`/ +MM\`/MH0HL`0``&G`%`T```.%J`4``(M`"`^V4`3K,(M,)#0/MT$0#[:$*+`$ +M``!IP+`````#A8P%``"+0%0/ME`$ZPN-M@````"Z_____[G_____BT0D-&:! +M>!"%`'<0BTPD-`^W01`/MHPHL`0```^VP@^VA"@V!0``:\!<C;P%0`$```^V +MP6G`L````(NUC`4```'&BT0D-(!X*`(/A8@````/MD`L)?````"#^"!T!8/X +M$'5UBTPD-`^V42R)T(/@#X/X`74QB=`E\````,=$)!`!````B40D#,=$)`@" +M````QT0D!`````")-"3H_/___^D!"@``D`^V1BN+5(8\BTPD-`^V02PE\``` +M`(/X(`^4P(/`"(B"M@```(M"-&:!8#+__NG."0``BU0D-`^V0A2$P'1#B<.# +M>E``=!&)T(/`4(E$)`2)+"3H_/___XM,)#2)3"0$B2PDZ/S___^`^P(/A9`) +M``")="0$B2PDZ/S____I?PD``,>&F``````````/MD8F/"0/APD)```/ML#_ +M)(6<"```BT<8]D`J"`^$,@D``(GVZ<`%``"+E3@*``"!PDP(```/MD8TP>`( +M`<*+`J,`````@_@%=P6(1A_K!,9&'P6`?PL`=`W&1B8`QD<+`.FN"```QD8F +M`NFE"```BY4X"@``@<),"```#[9&-,'@"`'"BP*C``````^VP&:)1B"+E3@* +M``"!PD0(```/MD8TP>`(`<*+`J,`````B<+!Z@AFB58BP>`(9@E&(&:!^D!! +M#Y3`@^@!@^#J@\`9B$8FZ3T(``"+E3@*``"!PD0(```/MD8TP>`(`<*+`J,` +M````B$8=BY4X"@``@<),"```#[9&-,'@"`'"BP*C`````*@(=`;&1AX,ZQJH +M!'0&QD8>"^L0@^`"@_@!&<#WT(/@"HA&'@^V1BL\`1G`@^`"@\`4B$8FZ<@' +M``"+A3@*```%3`@```^V5C3!X@@!T(L`HP````"#R`B(1BS&1B8%Z9X'``#& +M1B8`#[=&,F8E]_V#R`)FB48RBT0D-(-X4`!T#X/`4(E$)`2)+"3H_/___XM4 +M)#2)5"0$B2PDZ/S____&1P7_B7PD!(DL).C\____Z:T'``#&1B8$Z40'```/ +MMD8K@\`!B$8K.D8?<U?&1B86BTPD-(-Y4`!T$8G(@\!0B40D!(DL).C\____ +MBT0D-(E$)`2)+"3H_/___\=&6("$'@#'1F``````B79DC498BU44B40D!(D4 +M).C\____Z3X'``#&1BL`QD8F%\<$)""A!P#H_/___^G%!@``QD8F%.F\!@`` +MQD8F".FS!@``QD8F%.FJ!@``QD8N`.C\____B8:(````QD8F%>F2!@``BY4X +M"@``@<),"```#[9&-,'@"`'"BQJ)'0`````/MMN+E3@*``"!PD0(```/MD8T +MP>`(`<*+`J,`````Z/S___^)AHP```"#XP^#^P-U"<9&)@KI.@8``(N&B``` +M``5`#0,`.8:,````>1</MD8N/`IW#\9&)A6#P`&(1B[I$`8```^V1BN#?(8\ +M``^$R0$``,=$)!0`````@'\*`'0^QD0D&@"-7SB)'"3H_/___XE$)!0/MD8K +MBU0D%#E4ACQT'(M#!(E3!(D:B4($B1"`1"0:`0^V3"0:.$\*=\J`;PH!BU0D +M%(M"((7`#X1.`0``QT!@`````/9"*`1U.XDL).C\____BTPD%(M!-,:`K``` +M``&+02#'1"0(`0```(E$)`2)+"3H_/___XM4)!2+0C3&@*P`````BTPD%(M! +M((N5/`4``(E$)`B)5"0$QP0D`0```.C\____BU0D%(M"((M(<(7)=#`/MT(< +MQX2%L`(```````"+0B#'0'``````BT(@BU!XQT0D"/____^)1"0$B10D_]&+ +M3"04BT$@A<!T*XM0=(72="0/MT$<QX2%L`(```````"+02#'0'0`````BT$@ +MBT!XB00D_]*+1"04#[983XM0(`^V@I@````/ME("C02`#[:$`@`````/ME4B +M#[9-(8E<)!")1"0,B50D"(E,)`3'!"0`!0``Z/S___^+5"04BT(@BY4\!0`` +MB40D"(E4)`3'!"0&````Z/S___^+3"04QT$@``````^V1BO'1(8\`````(M$ +M)!2)1"0$B2PDZ/S____&1B8)Z2\$``"+E3@*``"!PDP(```/MD8TP>`(`<*+ +M"HD-``````^VR8N5.`H``('"1`@```^V1C3!X`@!PHL"HP````#!X`@)R(E& +M.(!^)@IT!ZD```$`=`G&1B8+Z=4#``#&1B8,#[9&*X-\ACP`=$J`?PH`#X0< +M!```QD0D&P"-7SB)'"3H_/___XG"#[9&*SE4ACQU!H!O"@'K*(M#!(E3!(D: +MB4($B1"`1"0;`0^V3"0;.$\*=@SKR(DL).C\____B<*%T@^$R@,```^V1BN) +M5(8\#[9&+XB"M@```.E3`P``C78`B2PDZ/S____'!"0!````Z/S___^#ZP&# +M^_]T"8M'&/9`*@ATV\9&)@GI(@,``(N5.`H``('"3`@```^V1C3!X`@!PHL* +MB0T`````#[;)BY4X"@``@<)$"```#[9&-,'@"`'"BP*C``````^VP,'@"`G( +M)?\/```]$P$```^4PCTC`0``#Y3!A-)U$(3)=0P],P$``'4YZ>P"``#&1B88 +MA-)T"<9&+PCII`(``(3)B?9T"<9&+PGIE0(``#TS`0``#X6*`@``QD8O"NF! +M`@``#[9.*@^VT0^V1A^#Z`$YPGT3C4$!B$8J@$8K`<9&)@?I7`(``,9&*P#& +M1B8>Z4\"``#&1B8#Z48"``#&1B8BB?;I.P(``,9&)B/I,@(``,9&)@/I*0(` +M`(N5.`H``('"3`@```^V1C3!X`@!PHL*B0T`````BY4X"@``@<)$"```#[9& +M-,'@"`'"BQ*)%0````")T,'@"`^VR0G(9CT#$0^%F@```(G0P>@(9CU%4W0* +M9CU``P^%A0```&;'1B`#$6:)1B)F/453=1R`OJ4````"=!/&AJ4````"QX:H +M````'P```.LB9H%^(D`#=1J`OJ4````#=!'&AJ4````#QX:H````#_@#`,:& +MK`````&)-"3H_/___\:&K`````"+!HN`/`4``,=$)`0`````B00DZ/S____& +M1B8#Z4$!``#&1B8AQH:E`````.DQ`0``BY4X"@``@<),"```#[9&-,'@"`'" +MBP*C`````(N5.`H``('"1`@```^V1C3!X`@!PHL"HP````#&1B8?Z?````#& +M1B8@Z><```"+E3@*``"!PDP(```/MD8TP>`(`<*+`J,`````BY4X"@``@<)$ +M"```#[9&-,'@"`'"BP*C``````^V3BL/MD8?C5$!B%8K#[;)#[;`@^@!.<$/ +MG,"#Z`&#X.>#P!^(1B;I@@```(N5.`H``('"3`@```^V1C3!X`@!PHL*B0T` +M````#[;)BY4X"@``@<)$"```#[9&-,'@"`'"BP*C`````,'@"`G!B8Z4```` +MQD8F&NLUQD8F&^LOBX4X"@``!4P(```/ME8TP>((`="+`*,`````@^#WB$8L +MQD8F'.L(QD8F'8UT)@"+1"0T@WA0`'0/@\!0B40D!(DL).C\____BU0D-(E4 +M)`2)+"3H_/___XET)`2)+"3H_/___^LIQD8F&.D<_?__B2PDZ/S____'!"0! +M````Z/S___^[/D(/`.EN_/__B?:+7"0<BW0D((M\)"2+;"0H@\0LPXVV```` +M`(V_`````(/L7(E<)$R)="10B7PD5(EL)%B+;"1@BWPD9`^W5Q!F@?J%``^' +MO@````^WP@^VC`6P!```@/G_#X2J````9H/Z?W<<#[;!BY5P!0``:<`H`0`` +MBT00+`^V0`3K.HUV`&:!^H$`=QD/ML&+E:@%``!IP!0-``"+1!`(#[9`!.L7 +M#[;!BY6,!0``:<"P````BT005`^V0`0\_W1-#[;`#[:4!38%``"`^O]T%8#Y +M_W00#[9?%(#[!G57C;0F`````(#Z_W0C@/G_=!X/ML%IP"@!``")Q@.U<`4` +M`,9&)P+&1B;_Z;@'``"#?U``=`^-1U")1"0$B2PDZ/S___^)?"0$B2PDZ/S_ +M___IP@<``(GV#[;!:<`H`0``B<8#M7`%```/MX:4````9HE$)#9F/:L-=P6` +M^P)U.H-_4`!T#XU'4(E$)`2)+"3H_/___XE\)`2)+"3H_/___\9&)O_&1B<" +MB70D!(DL).C\____Z5X'``#&1"0]`(#[('4EBT\X#[8!@^!_/'%V#0^V20&# +MX0^(3"0]ZPL/MDD"@^$/B$PD/0^VTHE4)#!KPER-A`5``0``B40D.`^V1R0\ +M&@^$!P8``#P:=Q\\$G11/!6-="8`#X28!@``A,`/A*4%``")]NF[!@``/"4/ +MA.`"```\)9!W$SP;#X6F!@``C;8`````Z74%```\G@^$S0,``#R@D`^%B@8` +M`.EB!@``A-N-=@`/A8,"``"+3S2`?R4`C78`=&&%R71+@'D!@'5%@'D"`'4_ +M#[9!`SP\=S</MMB-5E"X`````,8$$""#P`&#^!1U](/[$W8%NQ0```"-5E"- +M002)7"0(B40D!(D4).C\____9L>&E```````QD8F&>D-!@``QD8F&/9!!D!U +M$0^V`8/@'X/X#0^%8P$``.L+#[8!@^`?@_@-=0G&1B4-C78`ZP3&1B4B#[9& +M)8E$)`3'!"1@`0``Z/S___^#?U``=`^-1U")1"0$B2PDZ/S___^)?"0$B2PD +MZ/S___]K1"0P7("\!4H!````#X3"!0``O@````")PXV\!7@!``")/"3H_/__ +M_XT4*XN*?`$``(F"?`$``(DXB4@$B0$/MD`E/")T!#P-=0Z#Q@&)\CB4'4H! +M``!WR&M$)#!<#[:$!4H!``")\3C(#X5E!0``A,`/A%T%``"^`````&;'1"0^ +M``#'1"1``````&M<)#!<C;P=>`$``(D\).C\____B<&-!"N+D'P!``")B'P! +M``").8E1!(D*#[9!)3PB=`0\#744#[=!'&8[1"0^<@EFB40D/HE,)$"#Q@&) +M\#B$'4H!``!WLH-\)$``#X3D!```BU0D0(!Z)O\/A-8$``#&0B;_B50D!(DL +M).C\____Z<$$``"#^`%U$<9&)0'&1B;_C70F`.E[!```]D$%`70&9H%..``$ +MBU\TA=MT6XU69+@`````Q@00`(/``8/X*'7TC9:,````L`#&!!``@\`!@_@( +M=?2-3F2-4PB+0PB)1F2+0@2)002+0@B)00B+0@R)00R+0A")01"+0A2)012+ +M0R")AHP```"#OAP!````#X4`!```QD8F'.GW`P``#[=$)#:#P`%FB8:4```` +MQP0D$"<``.C\____QD8F!>G3`P``BT\TA-L/A9`````/ME$&P>((#[9!!<'@ +M$`G"#[9!!PG"#[9!!,'@&`G"B9:P````#[81P>(8#[9!`PG"#[9!`L'@"`G" +M#[9!`<'@$`G0B49$QT9(`````(.^L`````!U'6:#AI0````!QP0D$"<``.C\ +M____QD8F&^E5`P``@_C_=0]F@4XX``3&1B8;Z4$#``#&1B8-Z3@#``"`^R!U +M,X!\)#T&=`>`?"0]`G4E#[=$)#:#P`%FB8:4````QP0D$"<``.C\____QD8F +M!>D!`P``D(-_4`!T#XU'4(E$)`2)+"3H_/___XE\)`2)+"3H_/___XET)`B+ +M3"0XB4PD!(DL).C\____Z?8"``"+1S2)1"1$A-L/A1\!```/ME`*P>((#[9` +M"<'@$`G"BTPD1`^V00L)P@^V00C!X!@)PHF6L`````^V00.)PK@`````B40D +M*(E4)"P/MD$"B<*X`````,'B"(M,)"@)P8M<)"P)TXM$)$0/M@")1"0@QT0D +M)`````"+1"0@B<*X`````,'B&`G!"=.+1"1$#[9``8E$)!C'1"0<`````(M$ +M)!B)PK@`````P>(0"<$)TXM$)$0/ME`&P>((#[9`!8E$)!C!X!`)PHM$)$0/ +MMD`'"<*+1"1$#[9`!(E$)!C!X!@)P@G*B59$B5Y(BU0D1/9"#`%T!6:#3CH$ +M@[ZP`````'4=9H.&E`````''!"00)P``Z/S____&1B8;Z:8!``!F@TXX`<9& +M)@WIF`$``(#[('4S@'PD/09T!X!\)#T"=24/MT0D-H/``6:)AI0```#'!"00 +M)P``Z/S____&1B8;Z6$!``"0@W]0`'0/C4=0B40D!(DL).C\____B7PD!(DL +M).C\____B70D"(M,)#B)3"0$B2PDZ/S____I5@$``,9&)A3I'0$``(#[('4X +M@'PD/0:-=@!T!X!\)#T"=2</MT0D-H/``6:)AI0```#'!"00)P``Z/S____& +M1B84Z>,```"-=@#&1B8;Z=<```"$VY"-="8`=5R+1S1F@TXX`F:#3CH!9H%. +M.(0`@'@#`'4%@#@6=QUF@X:4`````<<$)!`G``#H_/___\9&)@WIDP```/9` +M!@1T!V:#3CH"ZP5F@V8Z_8M'4(E&&,='4`````#K.H#[('4P@'PD/09T"(!\ +M)#T"D'4F#[=$)#:#P`%FB8:4````QP0D$"<``.C\____QD8F!>L]9H-F./G& +M1B8.ZS*$VW4%9H-..@/&1B8/ZR.$VY!U#(E\)`2)+"3H_/___X.^'`$```$9 +MP(/@$X/`!8A&)H-_4`!T#XU'4(E$)`2)+"3H_/___XE\)`2)+"3H_/___XET +M)`2)+"3H_/___XUV`(M<)$R+="10BWPD5(ML)%B#Q%S#D)"0D)"0D)"0D)"0 +M@^$'P>$(@,T@BT`$+>0\```/MM+!X@@!T(D(#[<`9J,`````#[;`PY"-M"8` +M````@^$'P>$(BDPD!(#-$(M`!"WD/```#[;2P>((`=")",-55U93@^P(B<?& +M1"0"`,9$)`,`O?_____'1"0$``````^V1"0$B$0D`8-$)`0!N`$```")Q@^V +M3"0$T^:)\;L`````N,#AY`"Z`````/?Q.?AW'8GZ*<*)T#GJ<Q,/ME0D`8A4 +M)`*(7"0#B<6-="8`@\,!`?&#^Q!UR8-\)`0(=9\/MD0D`\'@`PI$)`(/ML"# +MQ`A;7E]=PY"-M"8`````@^P,B5PD!(ET)`B+7"00#[9T)!3'!"0`````N0<` +M``")\HG8Z!?___\/MH,="P``B00DN0,```")\HG8Z/_^__^+7"0$BW0D"(/$ +M#,.-=@!3B=,/MM&Y`P```.BP_O__.-@/E,`/ML!;PXVV`````%.+7"0(A=MT +M+[H`````B?8/MH0:,@4```^VR#S_=!$/M\%IP+`````#@XP%``#K#8/"`8/Z +M!'78N`````!;PY!64X/L!(M$)!"+F$`%``"%VW4"B<.^`````,<$)`````"Y +M!P```(GRB=CH8?[__\<$)$0```"Y`@```(GRB=CH3/[__\<$)-````"Y```` +M`(GRB=CH-_[__\<$)`````"Y!````(GRB=CH(O[__X/&`8/^`G6DN*"&`0#H +M,/[__XB#'0L```^VP(D$)+D#````N@````")V.CS_?__@\0$6U[#C;8````` +MC;PG`````(/L/(E<)"R)="0PB7PD-(EL)#B+5"1`#[:"I0```#P"#X7J```` +MBXJH````B4PD%&;'1"0:``"]````*L=$)!P`````NP````"^`````+\$```` +MN@$```")T(G9T^"%1"04=1R-2P;3XF8)5"0:"50D'+@5````B?'3X`G%ZPF0 +MB?B)\=/@"<6#PP&#Q@6#QP.#^P5UO8M$)!R)1"0,QT0D"*@#``#'1"0$`0`` +M`(M4)$")%"3H_/___XEL)`S'1"0(Q`,``,=$)`0!````BTPD0(D,).C\____ +M#[=$)!J+5"1`"X*H````B40D#,=$)`B@`P``QT0D!`$```")%"3H_/___^G] +M````C;8`````/`,/A>\```"+3"1`BXFH````B4PD*&;'1"0B``"]````*L=$ +M)"0`````NP````"^`````+\$````C;0F`````+H!````B=")V=/@A40D*'4? +MC4L&T^)F"50D(@E4)"2X%0```(GQT^`)Q>L,C70F`(GXB?'3X`G%@\,!@\8% +M@\<#@_L$=;J+1"0DB40D#,=$)`BH`P``QT0D!`$```"+5"1`B10DZ/S___^) +M;"0,QT0D",0#``#'1"0$`0```(M,)$")#"3H_/___P^W1"0BBU0D0`N"J``` +M`/?0B40D#,=$)`B@`P``QT0D!`$```")%"3H_/___XM<)"R+="0PBWPD-(ML +M)#B#Q#S#D(UT)@"#[`R+5"00#[9,)!2`?"08`'0/N/[____3P"&"J````.L- +MN`$```#3X`F"J````(D4).C\____@\0,PY"-="8`4X/L&(M<)"!FQX.<```` +M`0#'1"00`0````^W1"0DP>`-B40D#,=$)`B@`P``QT0D!`$```")'"3H_/__ +M_\=$)`04````B1PDZ/S___^#Q!A;PXVT)@````"-O"<`````@^P,BU0D$`^V +M3"04@'PD&`!U$+C^____T\!F(8*0````ZPZX`0```-/@9@F"D`````^W@I`` +M``")1"0$B10DZ/S___^#Q`S#D(VT)@````"#[!R)7"00B70D%(E\)!B+1"0D +M#[9\)"@/MK"8````#[98`HM0:(72=!B)^0^VP8E$)`@/ML.)1"0$B10DZ/S_ +M__^`^P-W#XT4LXGP/`-V$XU4LP3K#8GQC580@/D#=@.-5B")^0^VP8E$)`@/ +MML*)1"0$BT0D((D$).C\____BUPD$(MT)!2+?"08@\0<PY!75E.#[!")Q[L` +M````#[;RN0(```")\HGXZ/+Y__^H"'0.N`````#K(XVT)@````#'!"0!```` +MZ/S___^#PP&!^Q`G``!UR;C_````@\006UY?PXVV`````(V\)P````"#[`R) +M'"2)="0$B7PD"(G&B<\/MMJ)VNB$____A<!U,(GX#[;0B=F)\.C"^O__A<!T +M'KD!````B=J)\.AP^?__BU0D$(@"N`````#K"(UV`+C_____BQPDBW0D!(M\ +M)`B#Q`S#C;8`````C;\`````@^P<B5PD$(ET)!2)?"08B<8/MOD/MMJ)/"2Y +M`0```(G:Z$KY___'!"1`````N0(```")VHGPZ#7Y__^)VHGPZ.S^__^%P'5. +M@WPD(`!T-??'`0```'09B=FZ0````(GPZ!OZ__^%P'0MZS*0C70F`(G9NA@` +M``")\.@"^O__A<!T%.L9B=FZ*````(GPZ.[Y__^%P'4'N/\```#K!;@````` +MBUPD$(MT)!2+?"08@\0<PXVT)@````"-O"<`````55=64X/L#(G'BVPD)(G3 +MB<Z$R0^$Z@````^VVL<$)&0```"Y`@```(G:B?CH?_C__XG:B?CH-O[__X7` +M=0ZY`P```(G:B?CH-/C__XGP#[;(QP0D`0```(G:B?CHW_[__[[_____A,`/ +MA7<!``"^`````(7M#XYJ`0``O@````"-1?^)1"0(.70D"'4UQP0D0````+D" +M````B=J)^.@.^/__BT0D(`'PB00DN5@```")VHGXZ!?^__^%P'0YZ2,!``#' +M!"1$````N0(```")VHGXZ-GW__^+1"0@`?")!"2Y4````(G:B?CHXOW__X7` +M#X7O````@\8!.>X/A.0```#KA+B@A@$`Z,/W__\/MML/ML")!"2Y`P```(G: +MB?CHC/?__XG:B?CH0_W__X7`="(/MH<="P``B00DN0,```")VHGXZ&?W__^^ +M_____^F2````B=FZ8````(GXZ%_X__^%P'0-O@````"%[7Y?B?;K'P^VAQT+ +M``")!"2Y`P```(G:B?CH)O?__[[_____ZU2^`````,<$)$0```"Y`@```(G: +MB?CH!??__XM$)"`!\(D$)+F`````B=J)^.@._?__A<!U!X/&`3GN=<D/MH<= +M"P``B00DN0,```")VHGXZ,OV__^)\(/$#%M>7UW#D(/L'(E<)!2)="08BW0D +M(`^V3"0DBT0D+(E$)`2+1"0HB00DN@$```")\.CA_?__B</'!"14````N0(` +M``"Z`0```(GPZ'?V__^)V(M<)!2+="08@\0<PXGVC;PG`````(/L'(E<)!2) +M="08BW0D(`^V3"0DBT0D+(E$)`2+1"0HB00DN@````")\.B!_?__B</'!"14 +M````N0(```"Z`````(GPZ!?V__^)V(M<)!2+="08@\0<PXGVC;PG`````%57 +M5E.#[`R)QXML)"2)RP^V\L<$)&0```"Y`@```(GRZ-OU__^)\HGXZ)+[__^% +MP'4.N0,```")\HGXZ)#U__\/MLO'!"0!````B?*)^.@]_/__A,!U+H7M?C&[ +M`````(M$)"`/M@P#QP0D`````(GRB?CH&/S__X3`=0F#PP$YZW0)Z]NX____ +M_^L%N`````"#Q`Q;7E]=PXVT)@````"#[!R)7"04B70D&(MT)"`/MDPD)(M$ +M)"R)1"0$BT0D*(D$)+H`````B?#H,?___XG#QP0D5````+D"````N@````") +M\.@7]?__B=B+7"04BW0D&(/$',.)]HV\)P````"#[!R+3"0@#[94)"2+@4`% +M``"%P'4"B<B(%2````#'1"0,(````,=$)`@@````QT0D!`X```")!"3H_/__ +M_X/$',.-M"8`````C;PG`````(/L#(M4)!`/MDPD%(!\)!@`=!"X`0```-/@ +M9@F"K`P``.L.N/[____3P&8A@JP,```/MH*L#```B40D!(D4).C\____@\0, +MPY"-M"8`````55=64X/L3(M$)&2+2!B#P0&+4!"#Z@&)5"0DQT0D2`````"+ +M6!R)7"0H#[91`8#Z`74-QT`L`````.GE!```D(#Z`G50@'D"`74ZBW0D8(N& +M0`4``(7`=0*)\(N`/`4```^V40.(D*X,```/ME$#B)!N&0``BT0D9,=`+``` +M``#IGP0``(M4)&3'0BS^____Z8\$``"`^@0/A3("```/MD$#@^@[/`$/AR," +M``"+3"1DBUD8@\,!B5PD.`^V<P*+1"1@BY@\!0``B?(/ML*)1"0$B1PDZ/S_ +M__^)PH3`=`T/ML"`O`.P!```_W56BYL\!0``@</`#```BX,\!0``B00DZ/S_ +M__^)\2C!#[;!B40D!(D<).C\____B<*$P'0-#[;`@+P#L`0``/]U%HM<)&3' +M0RS_____B1PD_U,HZ?P#```/ML(/MH0#L`0``(#Z@7=F#[;(:<D4#0``BT0D +M.`^V0`2(1"0WBW0D.`^V5@7!XA`/MD8&P>`("<(/MD8'"<*)5"0L#[96",'B +M$`^V1@G!X`@)P@^V1@H)PHE4)#")S@.SJ`4```^$!P$``(!^,`!U&^G\```` +MBT0D9,=`+/____^)!"3_4"CI<`,``+\`````QD0D-@"-;BB+5"0X@\(+B50D +M'(DL).C\____C5CXBU8LB48LB6L(B5,,B0(/MD,E/`UT"#PB#X6,````BTPD +M.`^V00,\.W0T/#QU?(M$)&2)1"00BU0D+(E4)`R+3"0PB4PD"`^V1"0WB40D +M!(D<).C\____QD0D-@'K3(N#Z````(M4)"R)5"0(BTPD'(E,)`2)!"3H_/__ +M_XM$)&2)1"00BU0D+(E4)`R+3"0PB4PD"`^V1"0WB40D!(D<).C\____QD0D +M-@&#QP&)^SA>,`^'/?___X!\)#8`#X6*`@``BW0D9,=&+/____^)-"3_5BCI +M=`(``)"-="8`@/H##X6X````@'D"`8UV``^%FP```(M4)&`/MD(FC30`#[99 +M`XG:B=C!^A_W_HG3.=9^;8UY!`^V\@^V002)1"0(B70D!(M,)&")#"3H_/__ +M_XU#_(/X`W88C4/T@_@#=A"-0^R#^`-V"(U#Y(/X`W<(@40D8,`,```/M@>) +M1"0(B70D!(M<)&")'"3H_/___XMT)&3'1BP`````Z;,!``"+1"1DQT`L_O__ +M_^FC`0``BU0D9,="+/[____IDP$``(`Y!79*@'D$_G5$C40D2(E$)`B+3"1D +MB4PD!(M<)&"+@SP%``")!"3H_/___X3`#X5>`0``QT0D2`````"+="1DQT8L +M_____^E&`0``B?:+1"1@BZA`!0``A>UU`HG%B<NX`@```"G(B40D(.F3```` +M#[8SC7H!#[;(]L$!=$"+5"1(C006BUPD9#M#%`^'W0```(ET)`2+1"0H`=") +M!"2Z`````(GHZ'/W__\Y\`^%O`````%T)$B)^^M(C78`C1PWBT0D(`'8.T0D +M)`^/G@```(ET)`2)/"2Z`````(GHZ.KY__^%P`^%@P```(`[`'4&@'L!`'0, +MQP0D$"<``.C\____C5,!#[9#`83`#X5>____#[8#A,!T80^VV,<$)%0```"Y +M`@```+H`````B>CHFN___XM4)$B+="1DBT84*=`YPW8"B<.)7"0$BT0D*`'0 +MB00DN0````"Z`````(GHZ+GV__^%P'@&`40D2.L+BT0D9,=`+/_____'!"14 +M````N0(```"Z`````(GHZ#SO__^+3"1DBU$@A=)T!HM$)$B)`HM<)&2)'"3_ +M4RB#Q$Q;7E]=PXGVC;PG`````(/L'(M4)""+@D`%``"%P'4"B="+D#P%```/ +MMH*O#```A,!T#8/H`8B"KPP``(3`=2?&!2,`````QT0D#"````#'1"0((``` +M`,=$)`0.````B10DZ/S___^#Q!S#C70F`(/L'(M4)""+@D`%``"%P'4"B="+ +M@#P%``"`N*X,````=2Z`@*\,```!Q@4C`````<=$)`P@````QT0D""````#' +M1"0$#@```(D$).C\____@\0<PXVV`````(V_`````(/L'(E<)!2)="08BW0D +M(`^V3"0DBT0D+(E$)`2+1"0HB00DN@````")\.@A^/__B</'!"14````N0(` +M``"Z`````(GPZ`?N__^)V(M<)!2+="08@\0<PY"0D)"0D)"0D(M$)`2+0`0M +M``(!``-$)`B+`*,`````PY"-M"8`````BT0D!(M`!"T``@$``T0D"(M4)`R) +M$,.)]HV\)P````!3@^P,BUPD%(M3!('J``(!`,>"@``!``````"+@@0!`0"C +M`````(#,`8F"!`$!`,=$)`@(````QT0D!`S"``")'"3H_/___\=$)`BX"P`` +MQT0D!`C"``")'"3H_/___\=$)`@!```\QT0D!`#"``")'"3H_/___\=$)`@( +M````QT0D!`S#``")'"3H_/___\=$)`BX"P``QT0D!`C#``")'"3H_/___\=$ +M)`@!```\QT0D!`##``")'"3H_/___\=$)`B`@("`QT0D!#C"``")'"3H_/__ +M_\=$)`@(&"@XQT0D!"#"``")'"3H_/___\=$)`B`@("`QT0D!#S"``")'"3H +M_/___\=$)`@)&2DYQT0D!"3"``")'"3H_/___\=$)`B`@("`QT0D!$#"``") +M'"3H_/___\=$)`@*&BHZQT0D!"C"``")'"3H_/___\=$)`B`@("`QT0D!$3" +M``")'"3H_/___\=$)`@+&RL[QT0D!"S"``")'"3H_/___\=$)`B`@("`QT0D +M!$C"``")'"3H_/___\=$)`A(24I+QT0D!##"``")'"3H_/___\=$)`B`@("` +MQT0D!#C#``")'"3H_/___\=$)`@,'"P\QT0D!"##``")'"3H_/___\=$)`B` +M@("`QT0D!#S#``")'"3H_/___\=$)`@-'2T]QT0D!"3#``")'"3H_/___\=$ +M)`B`@("`QT0D!$##``")'"3H_/___\=$)`@.'BX^QT0D!"C#``")'"3H_/__ +M_\=$)`B`@("`QT0D!$3#``")'"3H_/___\=$)`@/'R\_QT0D!"S#``")'"3H +M_/___\=$)`B`@("`QT0D!$C#``")'"3H_/___\=$)`A,34Y/QT0D!###``") +M'"3H_/___\=#/("`@(#'0T"`@("`QT-$@("`@,=#2("`@(#'0TR`@("`@</` +M#```QT,\@("`@,=#0("`@(#'0T2`@("`QT-(@("`@,=#3("`@("#Q`Q;PXM$ +M)`2+4`2!Z@`"`0"+@FP``0"C`````(F";``!`,.0BT0D!(M0!('J``(!`(N" +M:``!`*,`````"T0D"(F":``!`,.-M@````"-O"<`````@^P@B5PD$(ET)!2) +M?"08B6PD'(MT)"0/ME0D*`^V?"0L.;8\!0``#X4(`0``B=#`Z`*]``````^V +MP(E$)`R)T/?0@^`#C1S%`````+@'````B=G3X/?0BTPD#(M4CCPAPHE4CCR) +M^(3`=!.X`0```(G9T^`)T(M4)`R)1)8\B>D/MMG!XPB+1CR)1"0(C8,XP@`` +MB40D!(N&/`4``(D$).C\____BT9`B40D"(V#/,(``(E$)`2+ACP%``")!"3H +M_/___XM&1(E$)`B-@T#"``")1"0$BX8\!0``B00DZ/S___^+1DB)1"0(C8-$ +MP@``B40D!(N&/`4``(D$).C\____BT9,B40D"('#2,(``(E<)`2+ACP%``") +M!"3H_/___XM<)!"+="04BWPD&(ML)!R#Q"##B=#`Z`*#Z`6]`0```.GP_O__ +MB?:-O"<`````55=64X/L'(M\)#`/MD0D-(A$)!L/ME0D.(A4)!H/MFPD/(M' +M"(LPB30DZ/S___^)PX7`#X3X````B30DZ/S___^)PH7`#X3F````QD<T`<9# +M).'&0R4!QD,F$,9#%;L/MD<S9HE#$(ES&,=#()````"-0@B)0S2)4U")P8G" +MN`````#&!!``@\`!/9````!U\L9!`8+&`4`/MD0D&XA!`@^V5"0:B%$#B>B( +M000\`G<CC4$(B>D/MM'!X@*-CG@+``")5"0(B4PD!(D$).C\____ZS>+AG@+ +M``")00B+AGP+``")00R#P1")Z@^VPHT$A?C___^-EH`+``")1"0(B50D!(D, +M).C\____QT-L`````,=$)`0`````C4,\B00DZ/S___^)7"0$B30DZ/S___^# +MQ!Q;7E]=PXVT)@````"#["R)7"0<B70D((E\)"2);"0HBWPD,(ML)#2+1"0X +MB40D&(M4)#R)5"04BT<(BS")-"3H_/___XG#A<`/A(````")-"3H_/___XG" +MA<!T<L9'-`'&0R3AQD,E`<9#)A#&0Q6[#[9',V:)0Q")<QC'0R"0````C4(( +MB4,TB5-0QD`!`L9""$")ZHA0`@^V5"08B%`##[94)!2(4`3'0VP`````QT0D +M!`````"-0SR)!"3H_/___XE<)`2)-"3H_/___XM<)!R+="0@BWPD)(ML)"B# +MQ"S#C78`C;PG`````%575E.#[!R+="0P#[9L)#0/MD0D.(A$)!N+1@B+&,=$ +M)`P"````QT0D"`````#'1"0$`````(DT).C\____@'XT`'0:B1PDZ/S____' +M!"0!````Z/S___^`?C0`=>:+1@B+``5X"P``@'@"`'A$@$@"@,=$)`P!```` +MQT0D"`````#'1"0$`````(DT).C\____@'XT`'0:B1PDZ/S____'!"0!```` +MZ/S___^`?C0`=>:)Z,#H`@^V^,=$)`P!````B7PD",=$)`0#````B30DZ/S_ +M__^`?C0`=!Z-="8`B1PDZ/S____'!"0!````Z/S___^`?C0`=>:+1@B+&(GI +M]]�.`?"0;``^5PL'B`P^VA`MX"P``@^#G"="(A`MX"P``QT0D#`$```") +M?"0(QT0D!`,```")-"3H_/___X/$'%M>7UW#C;0F`````(/L'(E<)`R)="00 +MB7PD%(EL)!B+7"0@BW0D)`^W1A!F/84`=QN+JZ@%```/M\`/MH0#L`0``&GX +M%`T``.L-B?:+JZ@%``"_[`8-`(M&-(!X`0)U)(V+>`L``(U0!(M`!(F#>`L` +M`(M"!(E!!(M""(E!"(M"#(E!#(M&4(7`=`R)1"0$B1PDZ/S___^)="0$B1PD +MZ/S____&1#TT`(M<)`R+="00BWPD%(ML)!B#Q!S#@^P0B1PDB70D!(E\)`B) +M;"0,BTPD%(MT)!B+5"0<BUPD((NY<`4```^W1A"]V"8!`&8]A0!W$0^WP`^V +MA`&P!```:>@H`0``C8H@!```QH(@!```)V:!?B3A`74C#[96)HU"_SP!=PD/ +MME8G@^(/ZR2-0N^Z#P```#P!=AB-=@"-!"^Z`````(-X-`!T!P^V4$V#X@\/ +MMD$!@^#P"="(00&X`0```&:!?B3A`742#[9&)H/H`3P!#Y?`#[;`C78`B<+! +MX@</MD$!@^!_"="(00$/MD,&B$$"#[8#B$$##[9#!8A!!P^V0P>(00\/MD," +MB$$$#[9#`XA!!0^V0P2(008/MD,!B$$,#[9#"HA!"`^V0PN(00D/MD,,B$$* +M#[9#"(A!"P^V0PF(00V+'"2+="0$BWPD"(ML)`R#Q!##B?8/MD0D!,.-=@"- +MO"<`````#[9$)`7#C78`C;PG`````%.+5"0(BUPD$,9"%`*+2CB+1"0,B$$" +MBT(XQD`'`(M".(A8#%O#C78`C;PG`````(M4)`2+3"0(#[9"*8A!`@^V0BB( +M00,/MD(GB$$$#[9")HA!"L.-="8`C;PG`````(M4)`2+3"0(#[9"+8A!`@^V +M0BR(00,/MD(KB$$$#[9"*HA!"@^V0BF(00L/MD(HB$$,PXVV`````(V\)P`` +M``"+3"0,A<E^';H`````C78`B<@IT(/X`@^=P`^VP(U4`@$YT7_K\\.)]HV\ +M)P````"#[!R)7"0,B70D$(E\)!2);"08BUPD((MT)"@/MD0D)(A$)`L/MD,D +M/"IT)CPJ=Q`\*`^%V````.L8C;8`````/(AT)#R*#X7$````C70F`.L6#[9[ +M+`^V:RN)="0$B1PDZ/S____K%`^V>S$/MFLPB70D!(D<).C\____QD8%0(M# +M9*D```$`="R)^(@&B>B(1@@/MD0D"\'@`XA&`0^V0R0\*'0$/(AU!L9&!F#K +M8,9&!F'K6JD```0`D(UT)@!T(HGXB$8!B>B(1@D/MD,D/"AT!#R(=0;&1@8E +MZS+&1@8UZRR)^(A&`0^V0R:#X`\(1@4/MD,D/"AT!#R(=0;&1@;(ZPO&1@;* +MC;0F`````(M<)`R+="00BWPD%(ML)!B#Q!S#C;8`````C;\`````@^P,BTPD +M$`^V028*02<*02@*02D/ML`/ME$L@^(!"=!T'L=$)`@D````QT0D!`4```") +M#"3H_/___^L3C70F`(M$)!3&0`;LQT%L`````(/$#,.-M@````"-O"<````` +M@^P8B5PD"(ET)`R)?"00B6PD%(M<)!R+="0@#[9#)#PO=`T\CW5@ZQV-M"8` +M````#[9[+`^V:RN)="0$B1PDZ/S____K%`^V>S$/MFLPB70D!(D<).C\____ +MQD8%0/9#9@1T$(GXB$8!B>B(1@G&1@9"ZQ.)^(A&`0^V0R:#X`\(1@7&1@9` +MBUPD"(MT)`R+?"00BVPD%(/$&,.0C70F`%.#[`R+3"08BU0D',9"!4`/MD$D +M/#5T"#R1=2KK(HGVBUPD%`^W0SB#X`&#^`$9P(/@_8/H%HA"!NLED(UT)@#& +M0@;JZQK'1"0()````,=$)`0%````B0PDZ/S____K"O9!)0)T!,9!%`"#Q`Q; +MB?;#ZPV0D)"0D)"0D)"0D)"0@^P,BT0D$/9`*/!T&,=$)`@D````QT0D!`4` +M``")!"3H_/___X/$#,.-M"8`````4X/L$(M<)!R+3"0D#[9$)""Z`````,8$ +M"@"#P@&#^@UU]`^V4R2`^C4/A*\```"`^C5W-(#Z*'1L@/HHC70F`'<3@/H; +M#X6:`P``D(UT)@#IJ@```(#Z*G1+@/HOC78`#X5_`P``ZUV`^H^0C70F`'13 +M@/J/=Q&`^HAT*8#ZBI`/A5\#``#K'8#ZD9"-="8`=$R`^N$/A4H#``"0C70F +M`.F2````B4PD"`^VP(E$)`2)'"3H_/___\=$)`P!````Z2@#``")3"0$B1PD +MZ/S____'1"0,`0```.D/`P``B4PD"(E<)`2+1"08B00DZ/S____'1"0,`0`` +M`.GN`@``]D,H`70AQD$&<,9!!`#&00,`QD$"`,9!!4#'1"0,`0```.G'`@`` +MQD$&X,=$)`P!````Z;8"``"`>R4!#X6D`@``@'LF'`^'F@(```^V0R:0_R2% +M,`D``,9!!P3'1"0,`0```.F%`@``QD$'`,=$)`P!````Z70"``#&00;LQT0D +M#`$```#I8P(``,9!!N_&`0,/MD,G@\A`B$$!QT0D#`$```#I10(``,9!!N_& +M`0?'1"0,`0```.DQ`@``QD$&0,9!`0'&005`QT0D#`$```#I&`(``,9!!N_& +M`0,/MD,G@\@(B$$!QT0D#`$```#I^@$``,9!!N_&`0+'1"0,`0```.GF`0`` +MQD$&[\8!@L=$)`P!````Z=(!``#&00;OQ@$&QT0D#`$```#IO@$``,9!!N_& +M`8;'1"0,`0```.FJ`0``QD$&XP^V0R>(00''1"0,`0```.F2`0``QD$&L,8! +MV,9!`T_&003"QT0D#`$```#I=@$``,9!!K#&`=G&00-/QD$$PL=$)`P!```` +MZ5H!``#&00:PQ@':QD$#3\9!!,+'1"0,`0```.D^`0``BT0D&/9`.`%T$<9! +M!NK'1"0,`0```.DC`0``QD$&Y\=$)`P!````Z1(!``#&00;OQ@&JQT0D#`$` +M``#I_@```,9!!N_&`57'1"0,`0```.GJ````QD$&+\9!`0'&00(0QT0D#`$` +M``#IT0```,9!!N0/MD,HB`$/MD,IB$$(#[9#)XA!!<=$)`P!````Z:P````/ +MMD,GB$$&#[9#*(@!#[9#*8A!`@^V0RJ(00,/MD,KB$$$#[9#+8A!"@^V0RR( +M00''1"0,`0```.MRQD$&Z`^V0RB(`0^V0RF(00@/MD,GB$$%#[9#*HA!`@^V +M0RN(00,/MD,LB$$$#[9#+8A!`<=$)`P!````ZS3'1"0,`0```/9#*`%T)L9! +M!G#&000`QD$#`,9!`@#&005`QT0D#`$```#K",=$)`P`````BT0D#(/$$%O# +MC78`C;PG`````(/L/(E<)"R)="0PB7PD-(EL)#B+;"1$BW4TC7PD#/RY"``` +M`+@`````\ZOVAJ<````$=!2+CL@```"+GLP```"#P?^#T__K#8M&>(/H`8G! +MNP````"`?20E=6>)R`^LV!B(1"0,B<@/K-@0B$0D#8G(#ZS8"(A$)`Z(3"0/ +M]H;5````$'44QD0D$@+&1"03`+D(````Z:D```"-5"00QT0D"`0```"-ANH` +M``")1"0$B10DZ/S___^Y"````.F!````B=C!Z!B(1"0,B=C!Z!"(1"0-B=C! +MZ`B(1"0.B%PD#XG(#ZS8&(A$)!")R`^LV!"(1"01B<@/K-@(B$0D$HA,)!/V +MAM4````0=13&1"06`L9$)!<`N2````#K)HUV`(U4)!3'1"0(!````(V&Z@`` +M`(E$)`2)%"3H_/___[D@````BU4TC40D#(E,)`B)1"0$B10DZ/S___^+7"0L +MBW0D,(M\)#2+;"0X@\0\PXGV5E.#[!2+3"0@BUPD)(M1+(LR#[9#)#PO=&@\ +M+W<T/!L/A#(!```\&W<./!*-="8`#X4Z`0``ZTH\*(VV`````'1`/"H/A28! +M``"-M@````#K,#R*="P\BG<8/#6-="8`#X3R````/(@/A0(!``")]NL0/(]T +M##SA#X7R````B?;K=?9!.`%T!X%+9```!`#V03H0#X3^````@WDT`(UV``^% +M\0````^V0R0\*'00/"IT##R(=`@\B@^%V0```/9""`%U&`^V0@2)1"0$B30D +MZ/S___^$P`^$NP```(![%($/A+$```"!2V0```$`N`$```#IJ0```(![)0$/ +MA8\```"`>R8<#X>%````#[Y+)K@!````T^"I]C_`'74EJ0A`!@!U#JD``"`` +M=2*0C70F`.M>@TMD"+@!````D(UT)@#K7H-+9`&X`0```.M3@TMD(+@!```` +MZTCV03@!=`>!2V0```0`@TMD`;@!````ZS"+0V2I```@`'06]D$X`707#0`` +M!`")0V2X`0```.L1D+@`````ZPFX`0```(UT)@"#Q!1;7L.0D)"0D)"0D)"0 +M@^P(B1PDB70D!(G3BW0D%(M0!`^V1"00P>`$#[;)P>$("<&`?"0,`'0#@\D$ +M@_[_=!")\"7__P,`B8($QO__@\D"B0N+'"2+="0$@\0(PY"+0`0M``(!`(/* +M`8F0`,@``,.-M"8`````C;PG`````%=64X/L$(G7BT`$A=)T2HVP`,;__XN` +M`,;__Z,`````NP````"H`742ZR>0C70F`(L&HP````"H`707QP0D"@```.C\ +M____@\,!.?MUXHGVZP>X`````.L%N/____^#Q!!;7E_#C70F`(V\)P````!6 +M4X/L)(M<)##'1"0@`````(MS!,:#L`P````/M@T(````C50D(,=$)`@````` +MQT0D!`(```#'!"0!````B=CHW/[__XM4)"")V.@A____NJ"&`0")V.@U____ +MA<!U1XN&#,;__Z,`````B40D(#T?8P``=3''@Z`,```?8P``QX.D#``````$ +M`,>#J`P``````0#'@[0,````````9K@``.DZ`@``QT0D(`````"+<P3&@[`, +M```!#[8-&````(U4)"#'1"0(_____\=$)`0"````QP0D`0```(G8Z#_^__^+ +M5"0@B=CHA/[__[H0)P``B=CHF/[__X7`=6>+A@S&__^C`````(E$)"`]'T,` +M`'0N/1]$``!U2L>#H`P``!]$``#'@Z0,``````<`QX.H#``````!`.F$`0`` +MC70F`,>#H`P``!]#``#'@Z0,``````0`QX.H#``````!`.E=`0``QT0D(``` +M``"+<P3&@[`,````#[8-*````(U4)"#'1"0(`````,=$)`0"````QP0D`0`` +M`(G8Z(+]__^+5"0@B=CHQ_W__[H0)P``B=CHV_W__X7`=4>+A@S&__^C```` +M`(E$)"`]OT,``'4QQX.@#```OT,``,>#I`P`````(`#'@Z@,````$```QX.T +M#```(````&:X``#IX````,=$)"``````BW,$QH.P#`````^V#3@```"-5"0@ +MQT0D"`````#'1"0$`@```,<$)`$```")V.CE_/__BU0D((G8Z"K]__^Z$"<` +M`(G8Z#[]__^%P'5?BX8,QO__HP````")1"0@/>\1``!T"3WO$@``=4+K(,># +MH`P``.\1``#'@Z0,``````0`QX.H#``````!`.L\QX.@#```[Q(``,>#I`P` +M````"`#'@Z@,``````$`ZQRX_____^LDC70F`,>#M`P``!````"X`````.L/ +MQX.T#```,````+@`````@\0D6U[#C78`C;PG`````(/L/(E<)"R)="0PB7PD +M-(EL)#B)QHG7B4PD&(MH!`^V1"1`/`1V!;@$````#[;8BX:T#```#[9(!(U4 +M)"B)?"0(B5PD!,<$)`$```")\.C=^___BU0D*(GPZ"+\__^Z$"<``(GPZ#;\ +M__^Z_____X7`=1J+A0S&__^C`````(E$)"B+5"08B0*Z`````(G0BUPD+(MT +M)#"+?"0TBVPD.(/$/,.-M@````"-O"<`````4X/L*(M<)#"+@[0,```/MD@+ +MC50D)(M$)#2)1"0(QT0D!`$```#'!"0!````B=CH3/O__XM4)"2)V.B1^___ +MNA`G``")V.BE^___NO____^%P'4:BT,$+?0Y``"+`*,`````BU0D.(@"N@`` +M``")T(/$*%O#C70F`(V\)P````!55U93@^PLB<.(5"0;B<V#?"1```^$DP`` +M`+X`````D(M[!(N#M`P```^V2`+'1"0(_____\=$)`0!````QP0D`0```(U4 +M)"B)V.BQ^O__BU0D*(G8Z/;Z__^Z$"<``(G8Z`K[__^%P'4JBY<,QO__B14` +M````#[9$)!LAT(GI.,AU#;@`````ZRB-M@````")5"0HQP0D"@```.C\____ +M@\8!.W0D0`^%<____[C_____@\0L6UY?7<.-M@````!3@^PHB<.+@+0,```/ +MM@B-5"0DQT0D"/_____'1"0$`````,<$)`````")V.@/^O__BU0D)(G8Z%3Z +M__^Z$"<``(G8Z&CZ__^%P'4DQP0DX),$`+D"````N@,```")V.C<_O__N@`` +M``"%P'0(C78`NO____^)T(/$*%O#C70F`(/L+(E<)"2)="0HBUPD,(MT)#3& +M1"0C_XU$)".)1"0(B70D!(D<).C\____A<!U<H!\)",`='F)V.A"____@_C_ +M=%^+@[0,```/MD@*C50D'(ET)`C'1"0$`````,<$)`````")V.A5^?__BU0D +M'(G8Z)KY__^Z$"<``(G8Z*[Y__^%P'4<QP0DX),$`+D`````N@,```")V.@B +M_O__A<!T#KC_____ZPR-M"8`````N`````"+7"0DBW0D*(/$+,/K#9"0D)"0 +MD)"0D)"0D)!55U93@^P\BVPD4`^V1"1@@[VT#`````^$&@,``(M\)%B$P`^$ +M:P$``(-\)%3_=10/MX6@#```9HD'N`$```#I'`,``(-\)%3^=16+A:0,``") +M![@!````Z0,#``"-=@"#?"14_749BX6H#```B0>X`0```.GG`@``C;0F```` +M`(M$)%P#1"14B40D&#N%I`P```^'GP(``(M<)%2#X_R+5"14@^(#B50D('1N +MC70D.,<$)`0```")\8G:B>CH_OO__X/#!,=$)!P$````.5PD&',0BT0D("M$ +M)%0#1"08B40D'(M$)"`Y1"0<=BV-#`:)_HM$)!R-5`0XC;8`````#[8!B`:# +MQ@&#P0$YT77QBT0D'"M$)""-/`>+="08@^;\.?-S),<$)`0```"-3"0XB=J) +MZ.B'^___BT0D.(D'@\<$@\,$.=YWW#E<)!@/ANT!``"-="0XQP0D!````(GQ +MB=J)Z.A7^___BTPD&"G9#X3+`0``N@````"-M@`````/M@06B`0Z@\(!.<H/ +MA*X!``#K[(-\)%3_=2F`/P^)]G41QH6Q#````;@!````Z:T!``#&A;$,```` +MN`$```#IG`$``(M4)%R)5"0HB=`#1"14.X6D#```#X=9`0``@+VQ#`````^$ +M3`$``(M$)%2Z`````/>UJ`P``(72#X6<````@+VP#````'08BT0D5(E$)`2) +M+"3H_/___X7`#X44`0``B>CHAOS__X/X_P^$!`$``(N%M`P```^V2`:-5"0X +MBT0D5(E$)`C'1"0$`````,<$)`````")Z.B1]O__BU0D.(GHZ-;V__^Z$"<` +M`(GHZ.KV__^%P`^%N0```,<$)."3!`"Y`````+H#````B>CH6OO__X7`#X69 +M````@WPD7``/A)<```#'1"0D`````(M4)%B+1"0DBS0"B<<#?"14BUT$@>L` +M`@$`B>CHWOO__XFS",@``(N%M`P```^V2`6)?"0(QT0D!`0```#'!"0````` +MC50D.(GHZ/#U__^+5"0XB>CH-?;__[H0)P``B>CH2?;__X7`=1S'!"2($P`` +MN0````"Z`0```(GHZ+WZ__^%P'00N`````#K(HGVN`$```#K&8-$)"0$BU0D +M)#E4)"AVZNE6____D(UT)@"#Q#Q;7E]=PY"0D)"0D)"0N`````##C78`C;PG +M`````(M4)`2+3"0(N``````Y%=`+``!^-(T44L'B`P^W@AP!``!FB0$/MX(> +M`0``9HE!`@^V@B0!``"(00@/MH(E`0``B$$)N`$```#SPY"-="8`N(`;``## +MC78`C;PG`````+B<````PXUV`(V\)P````"X!````,.-=@"-O"<`````5U93 +MBW0D$+L`````OP````"Y``````^VE#$P!0``@/K_=$*-@8````!F/8$`=P6# +MPP'K,0^VPHN6C`4``&G`L````("\$*4````#=16#QP&-1P.#^`9V#8/#`;\` +M````ZP.#PP&#P0&#^09UJ8G86UY?PXVV`````(V\)P````!55U93@^P$BVPD +M&+X`````QP0D`````+N`````#[9$)!R->`&)V0^VA"NP!```//]T26:!^X$` +M=P>#Q@'K.8GV#[;`BY6,!0``:<"P````@+P0I0````-U&X,$)`&+!"2#P`.# +M^`9V#X/&`<<$)`````#K`X/&`3GW=!"#PP&!^X8```!UGKD`````B<B#Q`1; +M7E]=PXUT)@"-O"<`````\\.-M"8`````C;PG`````(M$)`3&@)<`````PXUT +M)@!64XM<)`RX_P```(7;=$R^_____[F"````C;0F``````^VA!FP!```//]T +M'P^VP(N3C`4``&G`L`````^VA!"D````B?(XPG8"B<:#P0&!^88```!URHGR +M#[;"6U[#B?:X`````,.-=@"-O"<`````N`````##C78`C;PG`````(G!B=#` +MZ`0\"78%@\!7ZP.#P#"(`8G0@^`/@_@)?A&)T(/@#X/`5^L/C;0F`````(G0 +M@^`/@\`PB$$!PXUT)@"#[`B)'"2)="0$B<:)TP^VUNBJ____#[;;@\8"B=J) +M\.B;____BQPDBW0D!(/$",.+1"0,QT`$`````,<``````+@`````PXGVC;PG +M`````(M,)`2+06"%P'1%QT`@`````(!(*`3'06``````QT%H`````,=!9``` +M``"+40B#^C]_#XM!;,>$D+`"````````PXM!;,>$D+`!````````\\.-M"8` +M````C;PG`````(M,)`2+06"%P'1%QT`@`````(!@*/O'06``````QT%H```` +M`,=!9`````"+40B#^C]_#XM!;,>$D+`"````````PXM!;,>$D+`!```````` +M\\.-M"8`````C;PG`````(/L#,<$)(````#H_/___[@`````@\0,PY"-M"8` +M````5U93@^Q`BT0D4,9$)!AMQD0D&?_&1"0:(\9$)!L4QD0D'#K&1"0=[\9$ +M)!X6QD0D'Y*+L$`%``"%]G4"B<:-1"0@B<+&``"#P`&)TXU,)$`YR'7PQD0D +M)`''1"0,(````(E4)`C'1"0$#@```(DT).C\____A<!U3,<$)(`:!@#H_/__ +M_\=$)`P@````B5PD",=$)`0/````B30DZ/S___^#^"!U'XUT)#"-?"08N0@` +M``#\\Z8/E\(/DL"Y`0```#C"=!''!"1T`0``Z/S___^Y``````^VP8/$0%M> +M7\-55U93@^Q<BT0D<(N0/`4``('"P`P``(E4)#B)P8L`A<!T%BT```(`B0&) +M1"0$BT$0B00DZ/S___^+7"1PBT,(A<!T#XE$)`2+0Q")!"3H_/___XM4)'"+ +M0@R%P'0/B40D!(M"$(D$).C\____C40D3HE$)#2-1"10B40D,(U$)$J)1"0L +MC40D3(E$)"B-1"14B40D)(U$)%:)1"0@C40D5XE$)!R-1"12B40D&(U$)%B) +M1"04C40D2(E$)!"-1"19B40D#(U$)%J)1"0(C40D6XE$)`2+3"1P#[=!)(D$ +M).C\____BUPD<(N#<`4``(7`=#")1"0$B=@%6`4``(D$).C\____BU0D.(N" +M<`4``(E$)`2)T`58!0``B00DZ/S___^+3"1PBX&,!0``A<!T,(E$)`2)R`5T +M!0``B00DZ/S___^+7"0XBX.,!0``B40D!(G8!70%``")!"3H_/___XM4)'"+ +M@J@%``"%P'0PB40D!(G0!9`%``")!"3H_/___XM,)#B+@:@%``")1"0$B<@% +MD`4``(D$).C\____BUPD<(N#X`8``(7`=#")1"0$B=@%R`8``(D$).C\____ +MBU0D.(N"X`8``(E$)`2)T`7(!@``B00DZ/S___^`?"1;`'1:O@````"+;"1P +M@<4`!P``BWPD.(''``<``(UV``^WWHM,)'"+A)D8!P``B40D!(DL).C\____ +MBU0D.(N$FA@'``")1"0$B3PDZ/S___^#Q@$/MD0D6V8Y\'?"BTPD<(N!@`D` +M`(7`=#")1"0$B<@%:`D``(D$).C\____BUPD.(N#@`D``(E$)`2)V`5H"0`` +MB00DZ/S___^+5"1PBX*H"0``A<!T,(E$)`2)T`60"0``B00DZ/S___^+3"0X +MBX&H"0``B40D!(G(!9`)``")!"3H_/___XM<)'"+@_@)``"%P'0PB40D!(G8 +M!>`)``")!"3H_/___XM4)#B+@O@)``")1"0$B=`%X`D``(D$).C\____BTPD +M<(N!Q`4``(7`=#")1"0$B<@%K`4``(D$).C\____BUPD.(N#Q`4``(E$)`2) +MV`6L!0``B00DZ/S___^+5"1PBX)P!@``A<!T,(E$)`2)T`58!@``B00DZ/S_ +M__^+3"0XBX%P!@``B40D!(G(!5@&``")!"3H_/___XM<)'"+@R`&``"%P'0P +MB40D!(G8!0@&``")!"3H_/___XM4)#B+@B`&``")1"0$B=`%"`8``(D$).C\ +M____BTPD<(N!/`8``(7`=#")1"0$B<@%)`8``(D$).C\____BUPD.(N#/`8` +M`(E$)`2)V`4D!@``B00DZ/S___^+5"1PBX*H!@``A<!T,(E$)`2)T`60!@`` +MB00DZ/S___^+3"0XBX&H!@``B40D!(G(!9`&``")!"3H_/___XM<)'"+@\0& +M``"%P'0PB40D!(G8!:P&``")!"3H_/___XM4)#B+@L0&``")1"0$B=`%K`8` +M`(D$).C\____BTPD<(N!_`8``(7`=#")1"0$B<@%Y`8``(D$).C\____BUPD +M.(N#_`8``(E$)`2)V`7D!@``B00DZ/S___^+5"1PBX(P"0``A<!T,(E$)`2) +MT`48"0``B00DZ/S___^+3"0XBX$P"0``B40D!(G(!1@)``")!"3H_/___XM< +M)'"+@U@)``"%P'0PB40D!(G8!4`)``")!"3H_/___XM4)#B+@E@)``")1"0$ +MB=`%0`D``(D$).C\____BTPD<(N!T`D``(7`=#")1"0$B<@%N`D``(D$).C\ +M____BUPD.(N#T`D``(E$)`2)V`6X"0``B00DZ/S___^+5"1PBX*,!@``A<!T +M,(E$)`2)T`5T!@``B00DZ/S___^+3"0XBX&,!@``B40D!(G(!70&``")!"3H +M_/___XM<)'"+BQ0*``"%R718BX,8"@``BY,<"@``B40D"(E4)`R)3"0$B=@% +M_`D``(D$).C\____BTPD.(N!&`H``(N1'`H``(E$)`B)5"0,BX$4"@``B40D +M!(G(!?P)``")!"3H_/___XM<)'"+BS@*``"%R718BX,\"@``BY-`"@``B40D +M"(E4)`R)3"0$B=@%(`H``(D$).C\____BTPD.(N!/`H``(N10`H``(E$)`B) +M5"0,BX$X"@``B40D!(G(!2`*``")!"3H_/___XM<)'"+BUP*``"%R718BX-@ +M"@``BY-D"@``B40D"(E4)`R)3"0$B=@%1`H``(D$).C\____BTPD.(N!8`H` +M`(N19`H``(E$)`B)5"0,BX%<"@``B40D!(G(!40*``")!"3H_/___XM<)'"+ +MBZ0*``"%R718BX.H"@``BY.L"@``B40D"(E4)`R)3"0$B=@%C`H``(D$).C\ +M____BTPD.(N!J`H``(N1K`H``(E$)`B)5"0,BX&D"@``B40D!(G(!8P*``") +M!"3H_/___XM<)'"+BX`*``"%R718BX.$"@``BY.("@``B40D"(E4)`R)3"0$ +MB=@%:`H``(D$).C\____BTPD.(N!A`H``(N1B`H``(E$)`B)5"0,BX&`"@`` +MB40D!(G(!6@*``")!"3H_/___XM<)'"+B\@*``"%R718BX/,"@``BY/0"@`` +MB40D"(E4)`R)3"0$B=@%L`H``(D$).C\____BTPD.(N!S`H``(N1T`H``(E$ +M)`B)5"0,BX'("@``B40D!(G(!;`*``")!"3H_/___XM<)'"+B^P*``"%R718 +MBX/P"@``BY/T"@``B40D"(E4)`R)3"0$B=@%U`H``(D$).C\____BTPD.(N! +M\`H``(N1]`H``(E$)`B)5"0,BX'L"@``B40D!(G(!=0*``")!"3H_/___XM< +M)'"+BQ`+``"%R718BX,4"P``BY,8"P``B40D"(E4)`R)3"0$B=@%^`H``(D$ +M).C\____BTPD.(N!%`L``(N1&`L``(E$)`B)5"0,BX$0"P``B40D!(G(!?@* +M``")!"3H_/___X/$7%M>7UW#C;8`````@^P<B5PD%(ET)!B+="0@BUPD)(A> +M-P^VVXE<)`2)-"3H_/___XE<)`2!QL`,``")-"3H_/___[@!````BUPD%(MT +M)!B#Q!S#D(VT)@````!64X/L%(MT)"")-"3H_/___XDT).C\____C9[`#``` +MB1PDZ/S___^)-"3H_/___\<$)-`'``#H_/___XDT).C\____QT0D!`$```") +M-"3H_/___\=$)`0!````B1PDZ/S___^[@````(N6/`4```^VA!.P!```//]T +M*P^VP&G`L`````."C`4``/9`,@)T%F;'0#(!`,9`)AV)1"0$B30DZ/S___^# +MPP&!^X8```!UN(N>/`4``('#P`P``+X`````#[:$'C`%```\_W0K#[;`:<"P +M`````X.,!0``]D`R`G069L=`,@$`QD`F'8E$)`2)'"3H_/___X/&`8/^!G7! +M@\046U[#C78`C;PG`````%.#[`B+7"00B1PDZ/S___^+@SP%```%P`P``(D$ +M).C\____@\0(6\.0C;0F`````%.#[`B+7"00B1PDZ/S___^+@SP%```%P`P` +M`(D$).C\____@\0(6\.0C;0F`````(/L#(M$)!")!"3H_/___P^VP(/$#,.- +M=@"-O"<`````@^PLB5PD'(ET)"")?"0DB6PD*(G#B=>)S8MP8(M`;(E$)!2% +M]@^$-0$``("[EP`````/A2@!``")!"3H_/___XE$)!B%P`^$%`$``,9`).'& +M0"4!B?J$TG0-B>@\`1G`]]"#P`?K#(GJ@/H!&<#WT(/`#8M4)!B(0B;&0A2` +M#[=&'&:)0A")6AC'0B``````QT(T`````,=";#">`0")5"0$BT0D%(D$).C\ +M____QH.7`````6;'@Y0```#T`87;=%F+0V"%P'1<9H&[E````)8`=1>)1"0( +MQT0D!"$```"+0"R)!"3H_/___V:#JY0````!QP0DT`<``.C\____BU0D%(D4 +M).C\____BT-@A<!T"8"[EP````!UKF:#NY0`````=!R+1"08@'@4`'42BT-@ +M#[=`.F:)0UJ[`````.L%N_____^+5"08B50D!(M$)!2)!"3H_/___^L)C70F +M`+O_____B=B+7"0<BW0D((M\)"2+;"0H@\0LPY"-="8`@^Q,B5PD/(ET)$") +M?"1$B6PD2(MT)%`/MFPD5(M^8(M&;(E$)""%_P^$\@0``("^EP`````/A>4$ +M``")!"3H_/___XE$)"2%P`^$T00``/8&`@^%!`$``(GJ@/H4=PL/ML*-!$#! +MX`+K&+B)____B>KVXF;!Z`C`Z`0/ML`%\````(M4)"3&0B3AQD(E`<9")AR( +M0B?&0A2`#[=''&:)0A")<AC'0B``````QT(T`````,=";#">`0")5"0$BT0D +M((D$).C\____QH:7`````6;'AI0```#$"87V=%F+1F"%P'1@9H&^E````)8` +M=1>)1"0(QT0D!"$```"+0"R)!"3H_/___V:#KI0````!QP0DT`<``.C\____ +MBU0D((D4).C\____BT9@A<!T"8"^EP````!UKF:#OI0`````#X2\`P``NP`` +M``"+1"0D@'@4``^$K@,``.FD`P``BU0D((D4).C\____B40D.(7`#X2,`P`` +MBUPD)(/#/(M`"(E$)!R+1"0DQD`D&L9`)0C&0"8:QD`G`,9`*!#&0"D`BT0D +M.(M4)"2)0E#&0A2`#[=''&:)0A")<AB+1"0XBT`(B4(TQT(@$````(M&8`6X +M````B4(XQD(<(,=";#">`0#'1"0$`````(D<).C\____BU0D)(M"((E$)`R+ +M1"0XBU`0BT`,B40D!(E4)`B)'"3H_/___XM$)"2)1"0$BU0D((D4).C\____ +MQH:7`````6;'AI0```#Z`(7V=%F+1F"%P'1<9H&^E````)8`=1>)1"0(QT0D +M!"$```"+0"R)!"3H_/___V:#KI0````!QP0DT`<``.C\____BT0D((D$).C\ +M____BT9@A<!T"8"^EP````!UKF:#OI0`````=`J+5"0D@'H4`'0>C40D.(E$ +M)`2+1"0@B00DZ/S___^[_____^D^`@``BU0D)(E4)`2+1"0@B00DZ/S___^+ +M5"0@B10DZ/S___^)1"0DA<!U(8U$)#B)1"0$BT0D((D$).C\____N______I +M&`(``(UV`(M4)"2#PCR)5"0HBTPD'(/!!(M4)!P/MD(##[8$`8A"!,9!`0K& +M00(`N`````"+5"0<Q@00`(/``8/X!'7PB>B$P'4&@&$#_.M-B>@/MM!ITF#J +M``"X'X7K4??JP?H%@$D#`XG5P>T8B>B(002)T\'K$(A9!8G0P>@(B40D&(A! +M!HA1!XGHB$$(B%D)#[9$)!B(00J(40N+1"0XBU0D)(E"4,9")!4/M@'`^`?W +MT(/`$8A")<9")@#&0B<`QD(H$,9"*0"`(3_&0A2`#[=''&:)0A")<AB+1"0X +MBT`(B4(TQT(@$````(M&8`6X````B4(XQD(<(,=";#">`0#'1"0$`````(M$ +M)"B)!"3H_/___XM4)"2+0B")1"0,BT0D.(M0$(M`#(E$)`2)5"0(BT0D*(D$ +M).C\____BU0D)(E4)`2+1"0@B00DZ/S____&AI<````!9L>&E````/H`A?9T +M68M&8(7`=%QF@;Z4````E@!U%XE$)`C'1"0$(0```(M`+(D$).C\____9H.N +ME`````''!"30!P``Z/S___^+5"0@B10DZ/S___^+1F"%P'0)@+Z7`````'6N +M9H.^E`````!T#[L`````BT0D)(!X%`!T!;O_____C40D.(E$)`2+5"0@B10D +MZ/S____K!I"[_____XM$)"2)1"0$BU0D((D4).C\____ZPJ0C70F`+O_____ +MB=B+7"0\BW0D0(M\)$2+;"1(@\1,PY"-="8`@^Q,B5PD/(ET)$")?"1$B6PD +M2(M\)%"+7"14BW0D6`^W1"1<9HE$)!X/ME0D9(A4)!V+;V"%[0^$Z0,``("_ +MEP`````/A=P#``"+32R)3"0XBT=LB40D)&;'AY0````0)XD$).C\____B40D +M-(7`#X2Q`P``#[=4)!Z)5"0@9H-\)!X$=A*)5"0$QP0DD`$``.C\____ZQ2+ +M3"0DB0PDZ/S___^)1"0HA<!U'HM$)#2)1"0$BU0D)(D4).C\____N______I +M=@,``(M,)"#!X0F)3"0PBU0D)(N"/`4``,9`)P&)?"0(BX(\!0``B40D!,<$ +M)`4```#H_/___X!-*`*+1V")1"0(QT0D!"$```"+3"0XB0PDZ/S___^+1"0T +M@\`\B40D+(!\)!T`=!&+5"0TQT)D"@```,9")"CK+HM,)#3'0602````QD$D +M*HM4)"B+0@B+3"0PB4PD"(M4)&")5"0$B00DZ/S___^+1V#V0#@!='F`?"0= +M`1G`@^`"@^AXBTPD-(A!),9!)0")\,'H&(A!)HGPP>@0B$$GB?#!Z`B(02B) +M\HA1*8G8#ZSP&(A!*HG8#ZSP$(A!*XG8#ZSP"(A!+(A9+<9!+@#&02\`#[=$ +M)!YFP>@(B$$P#[9$)!Z(03'&03(`QD$S`.M6@'PD'0$9P(/@`H/`*(M4)#2( +M0B3&0B4`B=@/K/`8BTPD-(A!)HG8#ZSP$(A!)XG8#ZSP"(A!*(A9*<9!*@`/ +MMT0D'F;!Z`B(02L/MD0D'HA!+,9!+0"+5"0TB10DZ/S___^+1V`/MT`<BTPD +M-&:)01#&012`B7D8BU0D*(M""(E!-(M$)#")02")45#&01P@BT=@!;@```") +M03C'06PPG@$`QT0D!`````"+5"0LB10DZ/S___^+3"0TBT$@B40D#(M,)"B+ +M00R+41")1"0$B50D"(M$)"R)!"3H_/___\:'EP````&+5"0TB50D!(M,)"2) +M#"3H_/___X7_#X2O````BT=@A<`/A*0```"`OY<`````#X0D`0``9H&_E``` +M`)8`=1>)1"0(QT0D!"$```"+0"R)!"3H_/___V:#KY0````!QP0DT`<``.C\ +M____BT0D)(D$).C\____BT=@A<!T3H"_EP`````/A,X```"0ZZ>+5"0T@'H4 +M`'4TNP````"`?"0=`'0MBTPD*(M!"(M4)#")5"0(B40D!(M,)&")#"3H_/__ +M_[L`````ZP>)]KO_____BT0D-(-X4`!T-8%X(``(``!W%8/`4(E$)`2+5"0D +MB10DZ/S____K%XM$)#2#P%")1"0$BTPD)(D,).C\____BT0D-(E$)`2+5"0D +MB10DZ/S___^+3"0DBX$\!0``QD`G`(E\)`B+@3P%``")1"0$QP0D!@```.C\ +M____@&4H_>L:N______K$V:#OY0`````#X4G____Z6#___^)V(M<)#R+="1` +MBWPD1(ML)$B#Q$S#C78`C;PG`````(/L'(E<)!")="04B7PD&(M4)""+7"0D +MBT(LBSB+<T@/MD,4/"!T/SP@=PJ$P'0C/`9W%NLM/")T+3PBD(UT)@!R((/` +M@#P!=AFX`````(GVZUJ+0B#'0`0`````QD9F`>L$QD9F#8-[4`!T*8%[(``( +M``!W$8U#4(E$)`2)/"3H_/___^L/C4-0B40D!(D\).C\____B5PD!(D\).C\ +M____B30D_U9PN`$```"+7"00BW0D%(M\)!B#Q!S#C70F`(/L'(E<)!")="04 +MB7PD&(MT)""+7F"%VW46BT0D*(D$)/]4)"3I5@$``(VV`````(-^=`!U#(-^ +M<`"-M@````!T$XM$)"B)!"3_5"0DC78`Z2L!``"`N[0`````#X41`0``@'LF +M_P^%!P$``(M#-(7`=`J`>#4`#X7V````BT,L]D`($`^%Z0```(LX@'M/`'04 +MB5PD",=$)`0&````B00DZ/S___^+1"0DB49TBT0D*(E&>`^V2R0/MM&)T(/@ +M!H/X!G4T]L(!#X2&````QD,F!<9#)P2)7"0,#[9#38E$)`B+0S")1"0$BT,L +MB00DZ/S____IAP```(/X!`^%?@```/;!`71YBU,TA=)T,`^W0C*H`G1J@^#] +M9HE",HM#-&;'0#(!`(M#-,9`)AV+0S2)1"0$B3PDZ/S____K0L9#)@/&0R<$ +MB5PD!(D\).C\____ZRS&0R8%QD,G!F;'@Y0``````(E<)`2)/"3H_/___^L- +MBT0D*(D$)/]4)"2)]HM<)!"+="04BWPD&(/$',-3@^P(BUPD$(7;#X2X```` +MBT-LB00DZ/S___^)PH7`#X1[````@+BE`````'1R@`L!#[:`I0```#P"=3B# +M>V@`=1D/MH.8````@^`#B$,"#[:"I````(A#`>MM#[:#F0```(A#`HM#:`^V +M@*0```"(0P'K5#P#=5`/MH.8````@^`#P>`"`H.9````B$,"BT-H#[:`I``` +M`(A#`>LKC78`BT-HA<!U"XM#9(7`=1")]NL6#[:`I````(A#`>L*#[:`D@`` +M`(A#`8/$"%O#C78`5E.#[`2+="00A?9T:KL`````#[:$,[`$```\_W0W#[;` +M:<`H`0``B<(#EG`%``!T)(M")"4`__\`/0``_P!U%?9")P1T#XM"((7`=`B) +M!"3H_/___X/#`8'[@````'6RBX8\!0``.?!U#07`#```B00DZ/S___^#Q`1; +M7L.-=@!64X/L%(M<)""-L\`,``")'"3H_/___XE#%(E&%(F;/`4``(F>/`4` +M`(N#2`4``(F&2`4``,:#K@P```'&AJX,```!B1PDZ/S___^)'"3H_/___XDT +M).C\____B1PDZ/S___^$P'1NB30DZ/S___^$P'1BB1PDZ/S____'!"30!P`` +MZ/S___^)'"3H_/___\>#*`$``.@#``#'@S`!````````B9LT`0``C8,H`0`` +MB40D!(M#%(D$).C\____QT0D!`````")'"3H_/___[@!````ZP6X`````(/$ +M%%M>PU.#[`B+7"00B1PDZ/S___^!P\`,``")'"3H_/___[@!````@\0(6\.0 +MC;0F`````%575E.#[#R#/>0`````#X6!`0``QP7D`````0```,=$)#@````` +MZ;P"``"0C70F``^WAAX!``#!X!`/MY8<`0``"=`Y1"0H#X43`0``OP````"Y +M`````(E\)#!F@[D``````'5[B?K!X@6+AAP!``")@@````"+AB`!``")@@0` +M``"+AB0!``")@@@````/MH(<````C0S]`````(T$`0^V7"0OB!R%#0````^V +M@AP```"-!`$/MEPD+H@<A0X````/MH(<`````<'&!(T/`````(""'`````'K +M>9"-="8`#[:9'````(G8N@````#WMC`!``"%TG1-BTPD,,'A`XT$&0^V5"0O +MB!2%#0```(M4)##!X@4/MH(<````C00!#[9<)"Z('(4.````#[:"'`````'! +MQ@2-#P````"`@AP````!ZP^#QP&#P2"#_P0/A0/___^#AB@!```!D(UT)@"# +MQ0&#QA@[+=`+```/A;[^__^#1"0T`8-\)#0@#X48`0``@T0D.`&!?"0X_P`` +M``^%4@$``(-\)%0`=`>+="14Q@8`BQW0"P``QT0D)`````"%VWXYN0````#' +M1"0D`````+H`````BX(H`0```40D)(-\)%0`=`R+@BP!``"+="14``:#P0&# +MPA@YV779@WPD6``/A`$!``"]`````+L`````9H.[```````/A.D````/MH,< +M````B40D((7`?FK'1"08`````(T4[0````")5"0<BT0D'`-$)!B--(4,```` +MBWPD6+@$````_(G!\Z8/E\(/DL`XPG4A@WPD5`!T#0^V@QT```"+="14B`8/ +MMH,<````B40D).L/@T0D&`&+5"0@.50D&'6I@\4!@\,@@_T$=&7I:?___P^V +M3"0TB$PD+L=$)`P`````QT0D"`````"+7"0TB5PD!(MT)#B)-"3H_/___XE$ +M)"B]`````+X`````@SW0"P````^/3OW__^F+_O__#[9$)#B(1"0OQT0D-``` +M``#KH`^V1"0D@\0\6UY?7<.)]HV\)P````"#[!R)7"00B70D%(E\)!B+1"0@ +M#[9T)"2+>&R+6&#V``%T=8M3,(72=!F)\0^VP8E$)`@/MD--B40D!(D4).C\ +M____BY/D````A=)T'(GQ#[;!B40D"`^V@]D```")1"0$B10DZ/S___^)/"3H +M_/___X7`=#N`N*4`````=#*)\@^VPHE$)`B+0R")1"0$B3PDZ/S____K&(GQ +M#[;!B40D"(M#((E$)`2)/"3H_/___XM<)!"+="04BWPD&(/$',.#[#R)7"0L +MB70D,(E\)#2);"0XBWPD0`^V="1$BU]@BV]LA=L/A'8#``"`OY<`````#X5I +M`P``]@<"#X5@`P``#[:#)`$``(3`=`N)\CC0=4/I2@,```^V@]L```")1"00 +M#[8'@^`!#[;`B40D#`^V1P*)1"0(#[9'`8E$)`3'!"0D!0``Z/S___^[____ +M_^D1`P``B2PDZ/S___^)1"0<A<`/A/@"``"+4R")\0^VP8E$)!`/MH*8```` +M#[92`HT$@`^VA`(`````B40D#`^V12*)1"0(#[9%(8E$)`3'!"1L!0``Z/S_ +M__^+1"0<QD`DX<9`)0&)\H#Z`@^5P(/`&HM,)!R(02;&012`#[=#'&:)01") +M>1C'02``````QT$T`````,=!;#">`0")3"0$B2PDZ/S____&AY<````!9L>' +ME````/0!A?]T58M'8(7`=%QF@;^4````E@!U%XE$)`C'1"0$(0```(M`+(D$ +M).C\____9H.OE`````''!"30!P``Z/S___^)+"3H_/___XM'8(7`=`F`OY<` +M````=;)F@[^4``````^$V0$``(M$)!R`>!0`#X7+`0``BU=@B50D*(M"+(L` +MB40D)(D$).C\____B<.%P'40BTPD*,:!M0````'IH@$``(M$)"2)!"3H_/__ +M_XG&A<!U)8M4)"C&@K4````!B5PD!(M,)"2)#"3H_/___[L`````Z6L!``"- +M0SR)1"0@QD,DX<9#)0'&0R8#BU0D*`^W0AQFB4,0QD-H#XE[&,=#(``"``"+ +M5@B)4S2X`````,8$$`"#P`$]``(``'7RB7-0QT-L,)X!`,=$)`0`````BTPD +M((D,).C\____BT,@B40D#(M&#(M6$(E$)`2)5"0(BT0D((D$).C\____B5PD +M!(M4)"2)%"3H_/___\:'EP````%FQX>4````^@"%_W19BT=@A<!T7&:!OY0` +M``"6`'47B40D",=$)`0A````BT`LB00DZ/S___]F@Z^4`````<<$)-`'``#H +M_/___XM,)"2)#"3H_/___XM'8(7`=`F`OY<`````=:YF@[^4`````'0J@'L4 +M`'4DBT,TB40D!(M$)"B)!"3H_/___XM4)"@/MH(D`0``B(>;````@WM0`'03 +MC4-0B40D!(M,)"2)#"3H_/___XE<)`2+1"0DB00DZ/S___^[`````.L%N___ +M__^+5"0<B50D!(DL).C\____ZP:0N_____^)V(M<)"R+="0PBWPD-(ML)#B# +MQ#S#D(UT)@"#[!R)7"0,B70D$(E\)!2);"08BW0D((M4)"2`.@EW$`^V`O\D +MA:0)``"-M@````"X_____^E*`0``BU($BX)`!0``A<!U"8G0C;0F`````(N` +M/`4``,:`KPP```&)!"3H_/___[@`````Z14!```/MDH$N@````")\.@AZ/__ +MZ0`!```/MDH$N@$```")\.@,Z/__Z>L````/MD($B40D!(DT).C\____Z=8` +M```/MFH$BWYLBUY@N/_____V1E@(#X2]````B70D"(N'/`4``(E$)`3'!"0% +M````Z/S___^`2R@"B5PD",=$)`0A````BT,LB00DZ/S___^`>T\`=!K'!"30 +M!P``Z/S___^)/"3H_/___X![3P!UYHGHA,!T#&:#3EH09H-+.A#K"F:#9EKO +M9H-C.N^)="0(BX<\!0``B40D!,<$)`8```#H_/___X!C*/VX`````.LG#[9" +M!(E$)`2)-"3H_/___^L5#[9"!(E$)`2)-"3H_/___[@`````BUPD#(MT)!"+ +M?"04BVPD&(/$',.0C;0F`````(/L+(E<)"")="0DB7PD*(MT)#"+?FR+ASP% +M``"`>"<`=6"+7G`/MH:;````B40D$`^VAI@````/ME8"C02`#[:$`@````") +M1"0,#[9'(HE$)`@/MD<AB40D!,<$))@%``#H_/___\=&<`````"+1@B)1"0( +MB70D!(M&>(D$)/_3ZSB-7GR)7"0$BT<4B00DZ/S____'1GST`0``QX:$```` +MT,0!`(FVB````(E<)`2+1Q2)!"3H_/___XM<)""+="0DBWPD*(/$+,.-M@`` +M``!55U93@^P<#[=$)#AIP"@!``")Q8M4)#`#JG`%``"+NCP%``"!Q\`,``"+ +M3"0TB6E@B4T@@WTP`'4M@WTT`'4G#[9R*XGSA-L/A"`$``"+72RY`````#N: +MF`L```^$W0,``.GY`P``BT0D-(`(`8M%-(M4)#2)0FB+13")0F2+3"0P#[9Q +M*XGSA-MT4XM=++D`````BT0D,#N8F`L``'0:ZR\/ML&)PL'B!HT$@HM4)#`Y +MG`*8"P``=1R+7"0P#[9#*8T$@8M4)#2(@I@```#K#KD`````@\$!B?`XP77# +MBU0D,(N*/`4```^V@3`%``"[`````#S_="2+53"%TG08#[;`:<`4#0```X&H +M!0``NP`````YPG0JNP$````/MH$Q!0``//]T*XM5,(72="$/ML!IP!0-```# +M@:@%```YPG4.BTPD-(A9`>G>````B?:#PP&Z``````^VA`HR!0``//]T(P^V +MP&G`L`````.!C`4``#M%-'4,BWPD-(A?`>FH````@\,!@\(!@_H$=<F)V0^V +MAS`%```\_W0DBU4PA=)U!8U9`>L8#[;`:<`4#0```X>H!0``.<)UZ.LHC78` +M#[:',04``#S_="B+53"%TG0>#[;`:<`4#0```X>H!0``.<)U"XM$)#2(6`'K +M/HGV@\,!N@`````/MH0Z,@4``#S_="`/ML!IP+`````#AXP%```[131U"8M4 +M)#2(6@'K"X/#`8/"`8/Z!'7,BTPD,(!Y.0%U2(M5,(72=!C'1"0(``````^V +M14V)1"0$B10DZ/S___^+E>0```"%T@^$MP$``,=$)`@`````#[:%V0```(E$ +M)`2)%"3H_/___X.]Y``````/A(\!``"+=3"`?C``=%:_`````(U>*(UT)@") +M7"08B1PDZ/S___^-2/B+5BR)1BR)60B)40R)`H"YVP```/]U#X!Y)0!U"8.Y +MY`````!U"H/'`8GX.$8P=\&)^CA6,`^%E`````^VA=L```"+3"0TB$$"@'XP +M``^$C@$``+L`````C7XHC;8`````B3PDZ/S___^-2/B+5BR)1BR)>0B)40R) +M`HM!((7`=$`/MI';````.%`"=#2#>'``=2Z#>'0`=2B(4`(/MT$<B40D"(M4 +M)#"+@CP%``")1"0$QP0D!P```.C\____C78`@\,!.%XP#X84`0``ZY(/MD5- +MBTPD-(A!`L:%VP```/^`?C``#X3V````NP````"0BWPD&(D\).C\____C4CX +MBU8LB48LB7D(B5$,B0*`N=L```#_=$K&@=L```#_BT$@A<!T/`^V44TX4`)T +M,X-X<`!U+8-X=`!U)XA0`@^W01R)1"0(BU0D,(N"/`4``(E$)`3'!"0'```` +MZ/S___^)]H/#`3A>,'9XZX8/MD5-BTPD-(A!`NMI#[;!B<+!X@:-!(*+?"0P +M.9P'F`L``'4FBU0D,`^V0BF-!(&+7"0TB$,!B(.8````.$HK=1KK$(GVN0`` +M``"#P0&)\#C!=;F+5"0TQD(!_XM,)#3&00(`@[T<`0```'0)BX4@`0``B$$" +MBTPD-(/!((U59(M%9(M<)#2)0R"+0@2)002+0@B)00B+0@R)00R+0A")01"+ +M0A2)012+0AB)01B+0AR)01R+0B")02"+0B2)022)V8/!#(U54(M%4(E##(M" +M!(E!!(M""(E!"(M"#(E!#(M"$(E!$(N%C````(E#2(N%D````(E#3`^W13AF +MB4-8#[=%.F:)0UJ+142+54B)0U")4U0/MD5.B$-<#[:%)`$``(B#FP```/9% +M*`1U#(M\)#")/"3H_/___P^V522)T(/@!H/X!G4.]L(!=0F+1"0T@`@"ZP>+ +M5"0T@"+]#[95*-#J@^($BTPD-`^V`8/@^PG0B`$/MD$!B(&:````#[9!`HB! +MF0```(D,).C\____QT0D"`````"+12")1"0$BUPD,(D<).C\____BWPD-(D\ +M).A?^?__@\0<6UY?7<.-M"8`````@^P<B5PD%(ET)!B+="0@BYX\!0``B30D +MZ/S___^`?CD!=2V-@\`,``"`>#D!=%^`OK@,````=1C'1"0$`````(D$).C\ +M____@(:X#````9"-GB@!``")7"0$BT84B00DZ/S____'AB@!``#H`P``QX8P +M`0```````(FV-`$``(E<)`2+1A2)!"3H_/___XM<)!2+="08@\0<PXVV```` +M`%575E.#[$R+1"1DBU`8B50D((M`'(E$)!@/MDH+B4PD'(M4)&"+@CP%``"+ +MF#P%``"^`````+\`````N0`````/MI09,`4``(#Z_W1&C8&`````9CV!`'<' +M@\8!ZS6)]@^VPHN3C`4``&G`L````("\$*4````#=1>#QP&-1P.#^`9V#X/& +M`;\`````ZP6)]H/&`8/!`8/Y!G6EB?6+FSP%``"!P\`,``"Q`)"-="8`#[:4 +M&3`%``"`^O]T1HV!@````&8]@0!W!X/&`>LUB?8/ML*+DXP%``!IP+````"` +MO!"E`````W47@\<!C4<#@_@&=@^#Q@&_`````.L%B?:#Q@&#P0&#^09UI3ET +M)!P/C3P)```[;"0<#Y[`BTPD:,<!`````#S_#X0<"0``#[;`:<#`#```BU0D +M8`."/`4``(D$).C\____B<&%P`^$]P@``(M$)!B)1"0D#[:!I0```#P"#X4$ +M`@``BU0D:,<"!````(M$)"`/MG`'BQ$/MT$DNP````"`O`*P!```_P^$T0$` +M`(GR@/HC#X>W`0``#[;"_R2%S`D``(M,)"3'`453`Q&X`0```.FE`0``C40D +M2(E$)`S'1"0($`,``,=$)`0!````B0PDZ/S___^$P`^$<0$``(M$)$B%P`^$ +M;`$``"7_`P``:<`0)P``C8@0EJ__NG.(JTR)R/?BB<@IT-'H`<+!Z@>+3"0D +MB1&X`0```.D\`0``C40D2(E$)`S'1"0("`,``,=$)`0!````B0PDZ/S___^$ +MP`^$"`$``(M$)$B%P`^$`P$``"7_`P``:<#H`P``C8C(Y??_NLMK**^)R/?B +MB<@IT-'H`<+!Z@2+3"0DB1&X`0```.G3````C40D2(E$)`S'1"0("`,``,=$ +M)`0!````B0PDZ/S___^$P`^$GP```(M$)$B%P`^$F@```,'H$"7_`P``:<#H +M`P``C8C(Y??_NLMK**^)R/?BB<@IT-'H`<+!Z@2+3"0DB1&X`0```.MJC40D +M2(E$)`S'1"0(#`,``,=$)`0!````B0PDZ/S___^$P'0ZBT0D2(7`=#DE_P,` +M`&G`Z`,``(V(R.7W_[K+:RBOB<CWXHG(*=#1Z`'"P>H$BTPD)(D1N`$```#K +M#+@`````ZP6X`0````^VV`^VP^GR!@``/`,/A=0&``"+1"1HQP`$````BU0D +M(`^V4@>(5"0KQT0D.`````#'1"0\`````,=$)$``````QT0D1`````"+$0^V +MJMD```"%[0^.CP```+\`````QT0D%`````"X`0```(G&B?G3YHM,)!0/MH01 +M,@4``#S_=!\/ML!IP+````")PP.:C`4``(M#5(M`&`^V0`8Y\'02@T0D%`&# +M?"04!`^$+`8``.N_A=L/A"(&```/MT,D@+P"L`0``/\/A!`&``"`NZ4````# +M#X4#!@``B5R\.(/'`3G]#X5V____@'PD*U4/A]L%```/MD0D*_\DA5P*``"+ +M1"0DQP!``P,1N`$```#IP`4``(U$)$B)1"0,QT0D"#0#``#'1"0$`0````^V +M1"0K@\`!@^`#BT2$.(D$).C\____A,`/A(0%```/MU0D2(E4)$B!^O__``!U +M%(M4)"3'`O____^X`0```.ED!0``N,#AY`")T;H`````]_&+5"0DB0*X`0`` +M`.E&!0``C40D2(E$)`S'1"0($`,``,=$)`0!````BT0D/(D$).C\____A,`/ +MA!4%``"+1"1()?\#``!IP!`G``"-B!"6K_^Z<XBK3(G(]^*)R"G0T>@!PL'J +M!XM,)"2)$;@!````Z>$$``"-1"1(B40D#,=$)`@(`P``QT0D!`$```"+1"0\ +MB00DZ/S___^$P`^$L`0``(M$)$@E_P,``&G`Z`,``(V(R.7W_[K+:RBOB<CW +MXHG(*=#1Z`'"P>H$BTPD)(D1N`$```#I?`0``(U$)$B)1"0,QT0D"`@#``#' +M1"0$`0```(M$)#R)!"3H_/___X3`#X1+!```#[=$)$HE_P,``&G`Z`,``(V( +MR.7W_[K+:RBOB<CWXHG(*=#1Z`'"P>H$BTPD)(D1N`$```#I%@0``(U$)$B) +M1"0,QT0D"`P#``#'1"0$`0```(M$)#R)!"3H_/___X3`#X3E`P``BT0D2"7_ +M`P``:<#H`P``C8C(Y??_NLMK**^)R/?BB<@IT-'H`<+!Z@2+3"0DB1&X`0`` +M`.FQ`P``C40D2(E$)`S'1"0(%`,``,=$)`0!````BT0D.(D$).C\____A,`/ +MA(`#``"+1"1()?\#``"Z`````&G:.K@!`+DZN`$`]^&-%!,%XTH#`(/2`,=$ +M)`B@A@$`QT0D#`````")!"2)5"0$Z/S___^+3"0DB0&X`0```.DS`P``C40D +M2(E$)`S'1"0(%`,``,=$)`0!````BT0D/(D$).C\____A,`/A`(#``"+1"1( +M)?\#``"Z`````&G:.K@!`+DZN`$`]^&-%!,%XTH#`(/2`,=$)`A0PP``QT0D +M#`````")!"2)5"0$Z/S___^+3"0DB0&X`0```.FU`@``C40D2(E$)`S'1"0( +M%`,``,=$)`0!````BT0D0(D$).C\____A,`/A(0"``"+1"1()?\#``"Z```` +M`&G:YA-``KGF$T`"]^&-%!,%#?].!(/2`,=$)`B`EI@`QT0D#`````")!"2) +M5"0$Z/S___^+3"0DB0&X`0```.DW`@``C40D2(E$)`S'1"0(%`,``,=$)`0! +M````BT0D1(D$).C\____A,`/A`8"``"+1"1()?\#``"Z`````&G:KD7A`+FN +M1>$`]^&-%!,%*5*O`8/2`,=$)`A`0@\`QT0D#`````")!"2)5"0$Z/S___^+ +M3"0DB0&X`0```.FY`0``C40D2(E$)`S'1"0(L`,``,=$)`0!````BT0D/(D$ +M).C\____A,`/A(@!``"+1"1(P>@/@^`!BU0D)(D"N`$```#I<P$``(M,)""` +M>0@`=!"+1"0\@:"H````__?__^L.BT0D/(&(J``````(``"+1"0\B00DZ/S_ +M__^X`0```.DU`0``BT0D((!X"`!T$(M$)#R!H*@```#_[___ZPZ+1"0\@8BH +M`````!```(M$)#R)!"3H_/___[@!````Z?<```"+5"0@@'H(`'00BT0D/(&@ +MJ````/_?___K#HM$)#R!B*@`````(```BT0D/(D$).C\____N`$```#IN0`` +M`(M,)""`>0@`=!"+1"0\@:"H````_[___^L.BT0D/(&(J`````!```"+1"0\ +MB00DZ/S___^X`0```.E[````BT0D((!X"`!T$(M$)#R!H*@```#___[_ZPZ+ +M1"0\@8BH```````!`(M$)#R)!"3H_/___[@!````ZT"+5"0@@'H(`'00BT0D +M/(&@J````/___?_K#HM$)#R!B*@```````(`BT0D/(D$).C\____N`$```#K +M!;@`````#[;`ZPF-="8`N``````/ML#K%K@`````ZP^+3"1HQP$`````N``` +M``"#Q$Q;7E]=PY"-M"8`````55=64X/L;(N\)(````"+A"2$````B[0DC``` +M`(G%P>T8B<+!ZA"(5"1`#[;,B$PD,(A$)"^+G"2(````@</`#```N`````"+ +ME"2(````Q@00`(/``3V`&P``=>N)<A"AX````(A"*(/``:/@````B>F(2B,/ +MMD0D0(A"(@^V3"0PB$HA#[9$)"^(0B#&0BD`#[<'9HE"&`^W1P)FB4(:BT<$ +MB4(<BY0DB````('"@!D``(N,)(@```")D;P,``")<Q`/MD$HB$,HB>B(0R,/ +MMDPD0(A+(@^V1"0PB$,A#[9,)"^(2R#&0RD!#[<'9HE#&`^W1P)FB4,:BT<$ +MB4,<B9.\#```BY0DB`````^W0AIF/20G#X0C`0``9CTD)P^'C````&8]1"$/ +MA`\!``!F/40A=TQF/2`A#X3_````9CT@(7<19CU0!P^%"@$``(GVZ>@```!F +M/2(AC;0F``````^$UP```&8]0"&-M@`````/A>(```#IP@```)"-="8`9CT0 +M)P^"S@```&8]$2>)]@^&IP```&8M("=F@_@"B?8/A[(```#ID@```)"-="8` +M9CV`)P^$@P```&8]@">)]G<R9CU`)W1U9CU`)XUT)@!W$&8],"</A7P```"- +M="8`ZUMF/40G=%5F/6`GC70F`'5FZTEF/8!R=$-F/8!RB?9W"&8]@B=U4.LS +M9CV`D8GV=`YF/8"4=4#K(XVV`````(N,)(@```!FQT$D@)'&028$9L=#)("1 +MQD,F!.L;BX0DB````&;'0"2`E,9`)@1FQT,D@)3&0R8$#[9'"(N4)(@```"( +M0BH/MD<(B$,JQT0D#```!`#'1"0(`````,=$)`0"````B30DZ/S___^+C"2( +M````B0''1"0,`"```,=$)`@`````QT0D!`````")-"3H_/___XG!B[0DB``` +M`(E&"(L&A<`/A.T!``"%R0^$Y0$``(V0``(!`(E6!(V````"`(D&!0!```") +M`XE3!(E+"(LUT`L``(7V?E^[`````+D`````#[>!'`$``&8[!W4_#[>!'@$` +M`&8[1P)U,HN1+`$``(/"`8F1+`$``(N!*`$``(E$)!B%P'05.<)V$8G0N@`` +M``#W="08B9$L`0``@\,!@\$8.?-UJXN4)(@```"+0@0MX'T``,<``?`#`(M" +M!"W8?0``QP`!``#HBT(0QT0D!'@```")!"3H_/___XG")0!P```]`"```'8F +MB="`Y(^`S""+C"2(````BU$0B40D",=$)`1X````B10DZ/S___^)Z(A$)%\/ +MME0D0(A4)%X/MDPD,(A,)%T/MD0D+XA$)%S'1"0H`````+T`````9H.]```` +M```/A*````"`O1P`````#X2`````NP````"+5"0HP>(#B50D)(U,)%R)3"0< +MBT0D)`'8C32%#````+D$````_(M\)!SSI@^7P@^2P#C"=3</MH4=````@\`! +MB(4=````#[:5'````(32=!PXT'88#[;`#[;*N@````!F]_&(E1T```"-="8` +M@\,!#[:%'````#G8?YB#1"0H`8/%((-\)"@$#X52____B[0DB````,>&2`4` +M``$```"X`0```.L%N`````"#Q&Q;7E]=PXUV`(V\)P````!55U93@^P,BW0D +M((M\)"2+;FP/M@:#X`$/ML")1"0(N`````#&!#@`@\`!@_@@=?2+G;P,``") +MVK``C;8`````Q@00`(/``3T``@``=?*-2S:Z``````^V1#(AB`0*#[9$,B"( +M1`H!@\("@_HH=>>-2Q2R`@^V1#(+B$0*_@^V1#(*B$0*_X/"`H/Z%G7FC4LN +ML@`/MD0R28@$"@^V1#)(B$0*`8/"`H/Z"'7GB5\8BT90BU94@\`!@](`B0>) +M5P2#?F``=3SV!@%T-XM&9(7M#Y7"A<!T$H32=`X/MD`S@+P%L`0``/]U&8M& +M:(32=#6%P'0Q#[=`)("\!;`$``#_=",/MH:8````#[96`HT$@`^VA`(````` +MB$<,QT0D"`````#K(HDL).C\____A<!T$H"XI0````)U"0^V1@&(1PSK!,9' +M#/_&1PT`QD<.`<9'$A#&1Q$0#[9$)`B-%``/ME\*@^/]"=.(7PK!X`4/MD\( +M@^'?"<&(3P@/MT98P>@'@^`!P>`&@^&_"<&(3P@/MT98P>@"@^`!#[97"8/B +M_@G"B%<)#[=&6L'H`\'@!X/A?PG!B$\(#[=&6M'H@^`!`<"#XOT)PHA7"0^W +M1EC!Z`.#X`'!X`:#XK\)PHA7"0^W1EK!Z`3!X`>#XG\)PHA7"8/)$(A/"`^V +M!M#H@^`!@^/^"<.(7PH/M@:#X`2#X_L)PXA?"F;'1Q0`$`^VAIL```"(1P\/ +MMH:8````B$<<@\0,6UY?7<.)]HV\)P````!55U93@^P(BUPD*(MT)"R%VW03 +MN`````#&!!@`@\`!/:P```!U\H7V=!*X`````)#&!#``@\`!@_@H=?2+1"0< +MB[@\!0``#[9$)"")1"0$B3PDZ/S___^)P6:%P'0-#[?`@+P'L`0``/]U2XN_ +M/`4``(''P`P``(N'/`4``(D$).C\____*40D(`^V1"0@B40D!(D\).C\____ +MB<%FA<`/A"D#```/M\"`O`>P!```_P^$&`,```^WP0^VA`>P!```9H'Y@0`/ +MAS<"``"+CZ@%```/M\!IP!0-``"-+`&%VP^$U@```(M5#(72=&P/MH<P!0`` +M//]T%0^VP&G`%`T``(T$`;Z`````.<)T(`^VAS$%```\_W0:#[;`:<`4#0`` +MC00!.<)U"KZ!````B?"(0P*`?3(`="^Z``````^VP@^V3`5`N`$```#3X`E# +M((/"`3A5,G80Z^3&0P+_BT4(#[9`"8E#(,8#`0^V13&(0P&+14B)0P2+14R) +M0PB-2PR-55B+15B)0PR+0@2)002+0@B)00B+0@R)00R+17")0QR+5"0@B5,D +M#[:%D````(E#*+@`````Z1<"``"%]@^$"@(``(-\)"0`#XC_`0``#[:%D``` +M`#E$)"0/C>X!``"+1"0DC12`C535`(V"D`````^V2`2(#@^V0`6(1@&+@I@` +M```/M@"#X`^(1@*`^0-T(H#Y`W<.@/D"#X6.````Z9````"`^01T-8#Y$HUV +M`'5\ZU6+5"0DC022BY3%F`````^V0@&#X`</ML#!X`@/ME("`="-!(`!P(E& +M!.M6BU0D)(T$DHN$Q9@````/MD`"A,!U"<=&!`````#K-P^VP(/H%(E&!.LL +MBU0D)(T$DHN4Q9@````/MD("P>`(#[92`P'0C02``<")1@3K!\=&!`````"- +M3@B+5"0DC022C83%D````(U0#(M`#(E&"(M"!(E!!(M""(E!"(M"#(E!#(M" +M$(E!$(M"%(E!%(M"&(E!&(M"'(E!'+@`````Z=`````/M]!ITK````")U@.W +MC`4``,9#`O_&`P*+AXP%```/MD0"'XA#`8M&5`^V0`F)0R`/MH:E````/`)U +M+<=#!$A05`"-0PS'0PQ2;V-KQT`$9713=,=`"&]R(``/MU8BC4,7Z/>]___K +M13P#=2'&0P$0QT,@`0```,=#!$A05`#'0PQ%2C,T9L=#$#``ZR#&0P1V#[=6 +M((U#!>C`O?__QD,,9`^W5B*-0PWHL+W__\9#''(/ME8=C4,=Z&"]__^+1"0@ +MB4,DN`````#K!;C_____@\0(6UY?7<.0C70F`%575E.#[`R+="0HN`````#& +M!#``@\`!/2@-``!U\HM$)""+F#P%```/MD0D)(E$)`2)'"3H_/___XG!9H7` +M=`T/M\"`O`.P!```_W5+BYL\!0``@</`#```BX,\!0``B00DZ/S___\I1"0D +M#[9$)"2)1"0$B1PDZ/S___^)P6:%P`^$1P,```^WP("\`[`$``#_#X0V`P`` +M#[?!#[:$`[`$``!F@?F!``^'50(``(N+J`4```^WP&G`%`T``(TL`8M5#(72 +M=&P/MH,P!0``//]T%0^VP&G`%`T``(T$`;^`````.<)T(`^V@S$%```\_W0: +M#[;`:<`4#0``C00!.<)U"K^!````B?B(1@*`?3(`="^Z``````^VP@^V3`5` +MN`$```#3X`E&((/"`3A5,G80Z^3&1@+_BT4(#[9`"8E&(,8&`0^V13&(1@&+ +M14B)1@2+14R)1@B-3@R-55B+15B)1@R+0@2)002+0@B)00B+0@R)00R+17") +M1AR+1"0DB48D@+V0``````^$1@(``,9$)`L`#[9\)`N-!+_!X`.-##`!Z(V0 +MD`````^V6@2(F:@````/ME(%B)&I````BX"8````#[8`@^`/B(&J````@/L# +M="V`^P-W#H#[`@^%K0```.FV````@/L$D(UT)@!T/H#[$@^%E0```)"-="8` +MZV:-#+_!X0.+E`V8````#[9"`8/@!P^VP,'@"`^V4@(!T(T$@`'`B80.K``` +M`.MNC02_C13%`````(N$%9@````/MD`"A,!U#<>$%JP`````````ZTB-%+\/ +MML"#Z!2)A-:L````ZS:-#+_!X0.+E`V8````#[9"`L'@"`^V4@,!T(T$@`'` +MB80.K````.L.C02_QX3&K`````````"-!+_!X`.-G`:@````C4L0C80%D``` +M`(U0#(M`#(E#$(M"!(E!!(M""(E!"(M"#(E!#(M"$(E!$(M"%(E!%(M"&(E! +M&(M"'(E!'(!$)`L!#[9$)`LXA9`````/AM<```#ID?[__P^WT&G2L````(G7 +M`[N,!0``QD8"_\8&`HN#C`4```^V1`(?B$8!BT=4#[9`"8E&(`^VAZ4````\ +M`G4MQT8$2%!4`(U&#,=&#%)O8VO'0`1E=%-TQT`(;W(@``^W5R*-1A?H%[K_ +M_^M%/`-U(<9&`1#'1B`!````QT8$2%!4`,=&#$5*,S1FQT80,`#K(,9&!'8/ +MMU<@C48%Z."Y___&1@QD#[=7(HU&#>C0N?__QD8<<@^V5QV-1AWH@+G__XM$ +M)"2)1B2X`````.L,N/_____K!;@`````@\0,6UY?7<.-M"8`````C;PG```` +M`%575E.#[`R+="0HN`````#&!#``@\`!/:0,``!U\HM$)""+F#P%```/MD0D +M)(E$)`2)'"3H_/___XG!9H7`=`T/M\"`O`.P!```_W5+BYL\!0``@</`#``` +MBX,\!0``B00DZ/S___^+5"0D*<(/ML*)1"0$B1PDZ/S___^)P6:%P`^$'@,` +M``^WP("\`[`$``#_#X0-`P``#[?!#[:$`[`$``!F@?F!``^',P(``(N+J`4` +M``^WP&G`%`T``(TL`8M5#(72=&P/MH,P!0``//]T%0^VP&G`%`T``(T$`;^` +M````.<)T(`^V@S$%```\_W0:#[;`:<`4#0``C00!.<)U"K^!````B?B(1@*` +M?3(`="^Z``````^VP@^V3`5`N`$```#3X`E&((/"`3A5,G80Z^3&1@+_BT4( +M#[9`"8E&(,8&`0^V13&(1@&+14B)1@2+14R)1@B-3@R-55B+15B)1@R+0@2) +M002+0@B)00B+0@R)00R+17")1AR`O9``````#X0D`@``QD0D"P`/MGPD"XT$ +MO\'@`XT,,`'HC9"0````#[9:!(A9)`^V4@6(426+@)@````/M@"#X`^(02:` +M^P-T+8#[`W<.@/L"#X6A````Z:<```"`^P20C70F`'0[@/L2#X6)````D(UT +M)@#K78T,O\'A`XN4#9@````/MD(!@^`'#[;`P>`(#[92`@'0C02``<")1`XH +MZV*-!+^-%,4`````BX05F`````^V0`*$P'4*QT06*`````#K/XT4OP^VP(/H +M%(E$UBCK,(T,O\'A`XN4#9@````/MD("P>`(#[92`P'0C02``<")1`XHZPN- +M!+_'1,8H`````(T$O\'@`XU<!B"-2PR-A`60````C5`,BT`,B4,,BT($B4$$ +MBT((B4$(BT(,B4$,BT(0B4$0BT(4B4$4BT(8B4$8BT(<B4$<@$0D"P$/ME0D +M"SB5D`````^&T````.FL_O__#[?0:=*P````B=<#NXP%``#&1@+_Q@8"BX., +M!0``#[9$`A^(1@&+1U0/MD`)B48@#[:'I0```#P"=2W'1@1(4%0`C48,QT8, +M4F]C:\=`!&5T4W3'0`AO<B``#[=7(HU&%^A)MO__ZT4\`W4AQD8!$,=&(`$` +M``#'1@1(4%0`QT8,14HS-&;'1A`P`.L@QD8$=@^W5R"-1@7H$K;__\9&#&0/ +MMU<BC48-Z`*V___&1AQR#[97'8U&'>BRM?__N`````#K#+C_____ZP6X```` +M`(/$#%M>7UW#C;0F`````%575E.#[`B+7"0DN`````#&!!@`@\`!/0`!``!U +M\HM$)!R+N#P%```/MD0D((E$)`2)/"3H_/___XG!9H7`=`T/M\"`O`>P!``` +M_W5+B[\\!0``@<?`#```BX<\!0``B00DZ/S___^+5"0@*<(/ML*)1"0$B3PD +MZ/S___^)P6:%P`^$P@$```^WP("\![`$``#_#X2Q`0``#[?!#[:$![`$``!F +M@?F!``^'UP```(N/J`4```^WP&G`%`T``(TT`8M6#(72=&P/MH<P!0``//]T +M%0^VP&G`%`T``(T$`;V`````.<)T(`^VAS$%```\_W0:#[;`:<`4#0``C00! +M.<)U"KV!````B>B(0P*`?C(`="^Z``````^VP@^V3`9`N`$```#3X`E#((/" +M`3A6,G80Z^3&0P+_BT8(#[9`"8E#(,8#`0^V1C&(0P&+1DB)0P2+1DR)0PB- +M2PR-5EB+1EB)0PR+0@2)002+0@B)00B+0@R)00R+1G")0QRX`````.G)```` +M#[?0:=*P````B=8#MXP%``#&0P+_Q@,"BX>,!0``#[9$`A^(0P&+1E0/MD`) +MB4,@#[:&I0```#P"=2W'0P1(4%0`C4,,QT,,4F]C:\=`!&5T4W3'0`AO<B`` +M#[=6(HU#%^CEL___ZT4\`W4AQD,!$,=#(`$```#'0P1(4%0`QT,,14HS-&;' +M0Q`P`.L@QD,$=@^W5B"-0P7HKK/__\9##&0/MU8BC4,-Z)ZS___&0QQR#[96 +M'8U#'>A.L___N`````#K!;C_____@\0(6UY?7<.-=@"-O"<`````@^PLB5PD +M'(ET)"")?"0DB6PD*(M\)#"+;"0TBT=LB40D%(M%)(DXBT=@A<!U$L9%9@*) +M+"3_57#IN`4``(UV`/9`*`)T$L9%9@*)+"2-=@#_57#IG04``(M,)!2)#"3H +M_/___XG&A<!U%L9%9@*)+"3_57#I?`4``(VT)@````#'0&0`````B6A(BT=@ +MB488BT=@#[=`'&:)1A#&1A2`#[9%9#P"#X19`0``/`)W"83`="+INP(``#P# +MC;8`````#X3!`0``/`0/A:4"``")]NF-`0``BT=@]D`X`8UT)@`/A)`````/ +MMD5EJ`)T!L9&)(CK$(/@!#P!&<"#X`6#Z':(1B2+34B+74P/MT509HE$)!K& +M1B4`B=C!Z!B(1B:)V,'H$(A&)XG8P>@(B$8HB%XIB<@/K-@8B$8JB<@/K-@0 +MB$8KB<@/K-@(B$8LB$XMQD8N`,9&+P`/MT0D&F;!Z`B(1C`/MDPD&HA.,<9& +M,@#&1C,`ZVL/MD5EJ`)T!L9&)"CK$(/@!#P!&<"#X`6#P"J(1B2+34B+74P/ +MMT509HE$)!K&1B4`B<@/K-@8B$8FB<@/K-@0B$8GB<@/K-@(B$8HB$XIQD8J +M``^W1"0:9L'H"(A&*P^V3"0:B$XLQD8M`(M'8`6X````B48XQD8<(`^W1"0: +MP>`)B48@@TYD`NE\`0``#[9%2#P0=P7V!P)U"<9%9@;IK0,``(U.)`^VP(U5 +M4(E$)`B)5"0$B0PDZ/S___^+1V`%N````(E&.,9&'""!3F0``!``QD85J_9% +M908/A"D!``"+14R)1B#I'@$```^V166#X#`\('41QD8D&\9&)0'&1B@`Z0(! +M``#&1B0UZ?D```"+1V`/MD`D@^`%@_@%=1.!3F0``"``#[=55&8[54IU#NM< +MQD5F!HUV`.D2`P``#[9%4SSCD(UT)@!T0SSC=Q(\0G0[/+"-="8`="`\0'4B +MZRT\[(VV`````'00/.]T'SSE=0Z-M@````#K$V:)54KK#<9%9@:-="8`Z<(" +M``#&1B2P#[=%2(A&)0^W14J(1B8/MT5,B$8G#[=%3HA&*`^W15"(1BD/MD52 +MB$8J#[9%4XA&*P^V14F(1BP/MD5+B$8M#[9%38A&+@^V14^(1B\/MD51B$8P +M]D5E!G0=#[=%5,'@"8E&((-.9`3K#<9%9@;I2P(``(UT)@#'1FSPM@$`#[9% +M9:@�>`@``J`)T!H-.9`CK!(-.9!"-?CR+76B%VW0&]D5E`74\BU5LA=(/ +MA","``#'1"0(`````(M,)!2+@3P&``")1"0$B2PD_]*%P`^$``(``(M$)!2+ +MF#P&``"%VW1(B30DZ/S____'1"0$`````(D\).C\____@\,0BT/PB40D#(M# +M^(M3_(E$)`2)5"0(B3PDZ/S___^+0_2#PQ"%P`^%@@$``.O3QT0D!`````") +M/"3H_/___XM&(#T`"```=T.+3"04B0PDZ/S___^)PH7`=0G&168+Z5T!``"+ +M0`B)1C2)5E"+1B")1"0,BT(,BU(0B40D!(E4)`B)/"3H_/___^M3/0```0!W +M0XM$)!2)!"3H_/___XG"A<!U"<9%9@OI$P$``(M`"(E&-(E64(M&((E$)`R+ +M0@R+4A")1"0$B50D"(D\).C\____ZPG&168&Z>(````/MD5EJ`20C70F``^$ +MOP```(!]9`-U(HM-6(7)=!N+5C2+1B")1"0(B4PD!(D4).C\____Z9<```"+ +M56B%TG4-BU5LA=(/A;D```#K:(M^-*@!=0F)TY"-="8`ZS"+56R%TG0IQT0D +M"`$```"+3"04BX$\!@``B40D!(DL)/_2A<!T"HM$)!2+F#P&``"#PQ"+0_B+ +M4_")5"0(B40D!(D\).C\____`WOPBT/T@\,0A<!U'>O;BT8@BU8TA<!T$<8" +M`(/"`8/H`70&Z_.#3F0!B70D!(M,)!2)#"3H_/___^LNB70D!(M$)!2)!"3H +M_/___XDL)/]5<.L6NP````#I3/[__XM^-(UT)@#I5/___XM<)!R+="0@BWPD +M)(ML)"B#Q"S#C;0F`````%=64X/L$(M\)""+="0DN`````#&!#``@\`!@_AX +M=?2#OT@%```!#Y1&$P^V5R(/MD\A#[9?(`^V1R.(1@.(5@*(3@&('H!.$1`/ +MMT<89HE&!`^W1QIFB48&BX=(!0``B$9LQD82(`^W5QIF@?H@(70'9H'Z(B%U +M1\9&%P*-1CS'1CQ2;V-KQT`$97120<=`"$E$(%/'0`Q31"`RQT`0,3)X(,=` +M%$-O;G3'0!AR;VQL9L=`'&5RQD`>`.G^````C8+PV/__9H/X`7829H'Z0"%T +M"V:!^D0A#X6E````QD87!`^W5QJ-@O#8__]F@_@!=T.-1CS'1CQ2;V-KQT`$ +M97120<=`"$E$(#+'0`PW,7@@QT`04T%3(,=`%$-O;G3'0!AR;VQL9L=`'&5R +MQD`>`.F)````9H'Z0"%T!V:!^D0A=7N-1CS'1CQ2;V-KQT`$97120<=`"$E$ +M(%/'0`Q31"`RQT`0,31X(,=`%$-O;G3'0!AR;VQL9L=`'&5RQD`>`.L[QD87 +M"(U&/,=&/%)O8VO'0`1E="`WQT`(-3`@4\=`#$%402#'0!!#;VYTQT`4<F]L +M;&;'0!AE<L9`&@#&1A<HQD82`<9&$"B-1AC'1AA(:6=HQT`$4&]I;L=`"'0@ +M5&7'0`QC:&YOQT`0;&]G:<=`%&5S+"#'0!A);F,NQD`<`(N'1`4``(7`=!"+ +M0`B)1F2)PL'Z'XE6:.L.BT<(B49DB<+!^A^)5FC'1F``(```QT0D!'P```"+ +M1Q")!"3H_/___XG"@>+P`P``P>H$B%9M@^`/B$9OQT0D!(````"+1Q")!"3H +M_/___XG"@>(``/`#P>H4B%9N)0``#P#!Z!"(1G"#Q!!;7E_#C;8`````55=6 +M4X/L'(M\)#"+="0TBUPD.+@`````Q@08`(/``3V<````=?*)<PB#_A-^"8'' +MP`P``(/N%+@`````@[RWL`(````/A9\"``")G+>P`@``B7MLBT0D/(E#<(M, +M)$")2WB`?SD!#X5X`@``@?Z%````#X]:`@``#[:$-[`$```\_P^$2@(```^V +MP&:)1"08#[?`:<`H`0``B<4#KW`%``#V12<$#X0G`@``BT4D)0#__P`]``#_ +M``^%%`(``/9%*`0/A(<!``#&A;0`````#[9-)`^VT8G0@^`&@_@&=3GVP@$/ +MA`,!``#&128%QD4G!(EL)`P/MD5-B40D"(M%,(E$)`2+12R)!"3H_/___[@! +M````Z=`!``"#^`0/A<(!``#VP0$/A+D!``"+72R+132%P`^%@@```,9%)@/& +M12<$@'L*`'11O@````"-0SB)1"04BTPD%(D,).C\____B<*+0SR)4SR+3"04 +MB0J)0@2)$(!Z)O]T%3G5=!'&A;4````!N`$```#I7`$``(/&`0^V0PHY\'^[ +M@+VU`````0^$/P$``(EL)`2)/"3H_/___[@!````Z2X!``"`>"8`#X4?`0`` +M9H-@,OV+131FQT`R(`"+132)1"0$B3PDZ/S___^X`0```.G]````BT4L#[9` +M"8!_)@!T+[L`````#[;P#[;+B?#3^*@!=!3'1"0(`````(E,)`2)/"3H_/__ +M_X/#`3A?)G?9QD4G!L9%)@5FQX64``````");"0$B3PDZ/S___^X`0```.F: +M````BVTL@'T*`'1>QD0D&P"-13B)1"00BTPD$(D,).C\____B<*+13R)53R+ +M3"00B0J)0@2)$(!Z)O]T'@^V0B4\(G0$/`UU$L>$M[`"````````N`````#K +M0H!$)!L!#[9$)!LX10IWK@^W1"08B40D"(E<)`2)/"3H_/___[@!````ZQ?' +MA+>P`@```````+@`````ZP6X`0```(/$'%M>7UW#D)"0D)"0D)"0D)"0D)"0 +MBT0D!`^V5"0,Q@`(QD`!$H!\)`@`=`F`2`($ZP>-=@"`8`+[A-)T"(!@#-_K +M!HGV@$@,(+@4````PXVV`````//#C;0F`````(V\)P````!55U93@^PLBVPD +M0(M\)$@/MD0D3(A$)!L/ME0D4(A4)!J+5"1$BT(8B40D*,="&`````"#?"0H +M``^%70$``(DL).C\____B<:X`````(7V#X3]`0``B2PDZ/S___^)1"0HA<!U +M%HET)`2)+"3H_/___[@`````Z=<!``#&1B0:QD8E",9&)@C&1B<`QD8H_\9& +M*0#&1A6KBU0D1`^W0AQFB480B6X8QT8@_P```,=&9`@```"+1"0HBT`(B48T +M!?\```")1CC&1APDBT0D*(E&4,=&;'#W`0#&1A2`C5X\QT0D!`````")'"3H +M_/___\=$)`S_````BT0D*(M0$(M`#(E$)`2)5"0(B1PDZ/S___^)="0$B2PD +MZ/S___^[R/___^L;QP0DZ`,``.C\____@^L!B2PDZ/S___^$VW0,#[9&%#R` +M=-V$P'0]C40D*(E$)`2)+"3H_/___P^W1AZ)1"0$BU0D1(M"+(D$).C\____ +MB70D!(DL).C\____N`````#IR@```,=&4`````")="0$B2PDZ/S___^+1"0H +MBU@(#[9$)!J)1"0(#[9$)!N)1"0$C4,$B00DZ/S___^)QL8#`,9#`0#&0P(` +MQD,#`(E\)`2)+"3H_/___XU7)+@`````Q@00`(/``8/X$'7TC5X$QD<D%<9' +M)1&(7RC&1RD`C7<\#[;;B5\@QT=D`````(M4)"B+0@B)1S2)5U#'1"0$```` +M`(DT).C\____B5PD#(M$)"B+4!"+0`R)1"0$B50D"(DT).C\____N`$```"# +MQ"Q;7E]=PY"0D)"0D%.+7"0(BT0D#(G"9HE#!,9#"@!FQT,(``!FA<!T&H/J +M`;D`````BP-FB10(@\$"@^H!9H/Z_W7N6\.-M@````!64XM<)`R+1"00B<9F +MB4,$QD,*`6;'0P@``&:%P'0BN@````"Y`````(VT)@````"+`V:)%`B#P@&# +MP0)F.?)U[UM>PXVV`````(V_`````%.+7"0(@'L*`74J#[=#"`^WR(L3#[<4 +M2H/``6:)0PAF.T,&<@9FQT,(``!F@VL$`0^WPNL4BQ,/MT,$@^@!9HE#!`^W +MP`^W!$);PY"-="8`@^P(B1PDB70D!(M<)`R+3"00B<Z`>PH!=28/MU,$#[=# +M"`'"#[=#!HG&B=#!^A_W_HL#9HD,4&:#0P0!ZQ:)]@^W0P0/M\B+$V:)-$J# +MP`%FB4,$BQPDBW0D!(/$",.0BT0D!&:#>`0`#Y3`#[;`PXM$)`2+"#G(=0>Y +M`````.L*BQ&+002)0@2)$(G(PXGV5U93BU0D$(M,)!0/MGPD&(GXA,!T-@^V +M`HG3O@`````Z`704ZQ\/ME,!#[9!`8/#`8/!`3C"=0V#Q@&)\HGX.,)UX^L' +MN`````#K!;@!````6UY?PXUT)@"-O"<`````BT0D!,9``0"+5"0(B%`"QT`$ +M`````,.)]HV\)P````!55U93BTPD%(M\)!B+;"0<BW0D(`^V40$/ML*-!$#! +MX`*)PP-9"(/"`8A1`0%Q!+@`````Q@08`(/``8/X#'7TB3N):P2)\(A#"(GR +M#[;&B$,)P>H0@^(_#[9#"H/@P`G0B$,*6UY?7<.-M"8`````BU0D!`^V0@$Z +M`@^2P`^VP,/K#9"0D)"0D)"0D)"0D)!3#[=,)`P/MEPD$(M4)`BX`````(!Z +M`O]U"&:)"HA:`NL,@\`!@\($9CV``'7F#[?`6\.-M@````"-O"<`````@^P< +MB5PD#(ET)!")?"04B6PD&(ML)""+3"0HBUPD+`^W1"0DC52%`(!Z`O]U"&:) +M"HA:`NL9#[;#B40D"`^WP8E$)`2)+"3H_/___P^WP(M<)`R+="00BWPD%(ML +M)!B#Q!S#C;8`````C;PG`````%,/MUPD#`^V3"00BU0D"+@`````.$H"=1=F +M.1IU$L9"`O]FQP+__^L3C;0F`````(/``8/"!&8]@`!UV`^WP%O#ZPV0D)"0 +MD)"0D)"0D)"05E.+7"0,#[=T)!`/MDPD%+H`````B=`X3),"=09F.323=`Z# +MP`&#P@&!^H````!UY&8]@`!U!;B``0``#[?`6U[#C;0F`````(V\)P````"# +M[!")'"2)="0$B7PD"(EL)`R+;"04#[9%)#P(=$@\*'1$/*@/A!8!```\B(UT +M)@`/A%H!```\"G0L/"J-="8`="0\J@^$]@```#R*C70F``^$.@$``#PO=`P\ +MCXUT)@`/A>@!```\+P^$E0```#PO=R(\"G1D/`IW"CP(C70F`'5$ZU8\*'1[ +M/"J-M@````!U-.MO/(\/A/0````\CXGV=Q4\B`^$Y@```#R*C70F`'44Z=D` +M```\J(VT)@````!T?CRJ='J^`````+\`````N`````#I9@$```^V12;!X`@/ +MME4G"=`/ME4E@^(?P>(0"=")QK\`````#[9%*.D]`0``#[95)L'B&`^V12?! +MX!`)P@^V12D)P@^V12C!X`@)PHG6OP`````/MD4KP>`(#[95+`G0Z04!``"0 +MC70F``^V52;!XA@/MD4GP>`0"<(/MD4I"<(/MD4HP>`("<*)UK\`````#[95 +M*L'B&`^V12O!X!`)P@^V12T)P@^V12S!X`@)T.FV````C;8`````#[9%)HG" +MN`````#!XA@/MDTGB<NY`````,'C$`G("=H/MDTMNP`````)R`G:#[9-*(G+ +MN0````#!XP@)R`G:#[9-*8G+N0`````)R`G:#[9-*KL`````#Z3+&,'A&`G( +M"=H/MDTKNP`````/I,L0P>$0"<@)V@^V32R[``````^DRPC!X0B)Q@G.B=<) +MWP^V52[!XA@/MD4OP>`0"<(/MD4Q"<(/MD4PP>`("="-=@")=5B)?5R)16!F +M@TT2`8L<)(MT)`2+?"0(BVPD#(/$$,/K#9"0D)"0D)"0D)"0D)!64XMT)`P/ +MMT0D$+K_____9H7`="VZ_____[D`````@^@!#[?`C5@!#[8$,3'0#[;`P>H( +M,Q2%X`L``(/!`3G9=>:)T%M>PXGVC;PG`````(/L3(M$)%`/ME`SB50D1`^V +M4#*)5"1`#[90,8E4)#P/ME`PB50D.`^V4"^)5"0T#[90+HE4)#`/ME`MB50D +M+`^V4"R)5"0H#[90*XE4)"0/ME`JB50D(`^V4"F)5"0<#[90*(E4)!@/ME`G +MB50D%`^V4":)5"00#[90)8E4)`P/ME`DB50D"(E$)`3'!"3(!0``Z/S___^# +MQ$S#D(UT)@!3@^P8BU0D((M,)"0/MD$!B$(!#[9!`HA"`HM!!(E"!(M:"`^V +M0@&-!$#!X`*+40B)1"0(B50D!(D<).C\____@\086\.-="8`C;PG`````%.+ +M5"0(BUI$#[9*/+@`````Q@00`(/``8/X<'7TB5I$B$H\6\.-="8`C;PG```` +M`(M4)`2X`````(VT)@````#&!!#_@\`!/0`"``!U\O/#BT0D!+D`````.P!T +M#8M(!(L1BT$$B4($B1")R,.0D)!3BTPD"(L9BX,$`0``B<*!XG[__O^)DP0! +M```E?O_R_XM1!(D"BU$$B4(,BU$$B4(0BU$$B4(4BU$$B4(8BU$$B4($BP&+ +M@%0!``"C`````"7^`/__BQ&)@E0!``!;PY!3BUPD"`^V3"0,BP.+D`0!``") +M%0`````/MT,D9CV`9'0.9CV`D70(9CV`E'43B?8/MLF#P0BX`0```-/@"<+K +M#P^VR8/!#+@!````T^`)PHL#B9`$`0``6\.-M@````!3BUPD"`^V3"0,BP.+ +MD`0!``")%0`````/MT,D9CV`9'0.9CV`D70(9CV`E'43B?8/MLF#P0BX_O__ +M_]/`(<+K#P^VR8/!#+C^____T\`APHL#B9`$`0``6\.-M@````"#[`B)'"2) +M="0$BW0D#`^V3"00@/G_=&Z`^1]W,XN>&`$``+H!````T^*)T/?0(=B)AA@! +M``"+AE@!``"C`````"'0=$&)AE@!``#K.8UV`(N>'`$```^VP8/H(+H!```` +MB<'3XHG0]]`AV(F&'`$``(N&8`$``*,`````(=!T!HF&8`$``(L<)(MT)`2# +MQ`C#ZPV0D)"0D)"0D)"0D)"0@^P<B5PD#(ET)!")?"04B6PD&(ML)"@/ME0D +M)(M$)""+.(#Z`W9\#[;:P>,#C;0?``(``,<&#`$``,<$)!`G``#H_/___XV< +M'P0"```/ME4#P>(8#[9%`L'@$`G"#[9%``G"#[9%`<'@"`G"B1/'!A`!``#' +M!"00)P``Z/S___\/ME4'P>(8#[9%!L'@$`G"#[9%!`G"#[9%!<'@"`G"B1/K +M>@^VVL'C`XVT.P`"``#'!@P!``#'!"00)P``Z/S___^-G#L$`@``#[95`\'B +M&`^V10+!X!`)P@^V10`)P@^V10'!X`@)PHD3QP80`0``QP0D$"<``.C\____ +M#[95!\'B&`^V10;!X!`)P@^V100)P@^V107!X`@)PHD3BUPD#(MT)!"+?"04 +MBVPD&(/$',/K#9"0D)"0D)"0D)"0D)"#[!R)7"04B70D&(MT)"`/MEPD)(E< +M)`2)-"3H_/___\<$)!`G``#H_/___XE<)`2)-"3H_/___XM<)!2+="08@\0< +MPXVV`````(V_`````%575E.#[`R+;"0@#[94)"0/MD0D*(A$)`N+10"`?28` +M#X1"`0``C9B$`0``C;C0`0``O@`````/MM*)5"0$B?:+1"0$B?'3^*@!#X0# +M`0``@_X#=@Z+`Z,`````@^#^B0/K#(L#HP````"#X/Z)`\<$)!`G``#H_/__ +M_X!\)`L`=#Z#_@-V#HL'HP````"#R`*)!^L,BP>C`````(/(`HD'B?J#_@-V +M"8L"HP````#K!XL"HP````"H`G1DZ^6)]H/^`W8LQX.L`````````,<$)!`G +M``#H_/___XN#L````*,`````@\@!B8.P````ZS3'@\P`````````QP0D$"<` +M`.C\____BX/0````HP````"#R`&)@]````#K(XUV`(/^`W8;QT/\`0```(L# +MHP````"#R`&)`^L9C;8`````QT/\`0```(L#HP````"#R`&)`X/&`8/#"(/' +M!`^V128Y\`^'V/[__X/$#%M>7UW#5E.#[`2+3"04#[9<)!B+1"00BS"#^0-V +M%XV4SH`!``"+`J,`````@^#^B0+K%8GVC93.@`$``(L"HP````"#X/Z)`H3; +M=%F#^0-V%8V4CM`!``"+`J,`````@\@"B0+K$XV4CM`!``"+`J,`````@\@" +MB0*-A([0`0``D(UT)@"#^0-V"XL0B14`````ZPF0BQ")%0````#VP@)T<^OA +MD(/Y`W8UC1S-`````(V$,S`"``#'``````#'!"00)P``Z/S___^-G#,T`@`` +MBP.C`````(/(`8D#ZS:-',T`````C80S4`(``,<``````,<$)!`G``#H_/__ +M_XV<,U0"``"+`Z,`````@\@!B0.-=@"#Q`1;7L.0D)"0D)"0D)"04XM,)`B+ +M&0^W@90+``"#P`%FB8&4"P``9CN!F`L``'()9L>!E`L`````#[>!E`L``,'@ +M`@.!C`H``(M4)`R+$HD0#[>!E`L``(F#+`$``%O#ZPV0D)"0D)"0D)"0D)"0 +M5E.+3"08#[=4)!`/MG0D%(M<)`RX`````(VT)@````#&!`@`@\`!@_@$=?1F +M@>+_#P^W`68E`/`)T&:)`0^V4PG!X@R+`27_#_#_"=")`0^V0P:#X`*#^`$9 +MTH/B`H/"`<'B!0^V00.#X!\)T(/($(/@]XA!`_9#!@%T%HGR@^)_P>($#[=! +M`F8E#_@)T&:)00);7L.-="8`C;PG`````(M,)`2+5"0(N`````"-=@#&!!`` +M@\`!@_@-=?0/MD$EB`(/MD$FB$(!#[9!)XA"`@^V02B(0@,/MD$IB$($#[9! +M*HA"!0^V02N(0@;V068$=",/MD$LB$((#[9!+8A""0^V02Z(0@H/MD$OB$(+ +M#[9!,(A"#+@!````PY"-="8`55=64XML)!2+?"08N@````"^`0```.M0`=*) +MV-/XJ`%T$/?"`````746@?)W)]L`ZP[WP@````%T!H'R=R?;`(/I`8/Y_W70 +M@\8!@_X)=1B)T,'H$(A%`(G0P>@(B$4!B%4"6UY?7<,/MEP^_[D'````ZZ2- +MM@````"-OP````"+1"0$BX!$"@``BQ"+4`2+4`B+0`RC`````,.0C70F`%=6 +M4X/L$(M\)""+="0DBT94#[9?*X3;="8/ME`)N0````#VP@%T$>L6C;0F```` +M`(G0T_BH`74'@\$!.-EU\<9&)@R)="0$B3PDZ/S___^#Q!!;7E_#C78`C;PG +M`````(/L#(M$)!"+$&;'0#(!`,9`)AV)1"0$B10DZ/S___^#Q`S#C;8````` +MC;PG`````%93@^P4BT0D((LP#[=$)"3!X`(#AM`%``"+&(7;=$2+%@^W0QYF +MP>@%#[?`C02%``,``(F"<`$``(L6#[=+'H/A'[@!````T^")@G0!``#'1"0( +M`````(E<)`2)-"3H_/___X/$%%M>PXVT)@````!55U93@^P<BVPD,(!]*P!T +M*[D`````BT0D-/9`"0%T$.L:BU0D-`^V0@G3^*@!=0R#P0$/MD4K9CG(=^:+ +M5"0TBT(HA<!T)8/`6(M5%(E$)`2)%"3H_/___XM4)#2+0BB)1"0$B2PDZ/S_ +M__^+1"0T@\`XBU0D-#E".`^$=0$``(E$)!B+1"08B00DZ/S___^)QH-X(``/ +MA#0!``"`>$\`#X29````9H-]7``/A(X```"_`````(T$O0`````#A=`%``"+ +M&(7;=&</MT,09CM&''5=9CV%`'=7#[?`@+PHO`0``/]T2HM5``^W0QYFP>@% +M#[?`C02%``,``(F"<`$``(M5``^W2QZ#X1^X`0```-/@B8)T`0``QD,4(<=$ +M)`@`````B5PD!(DL).C\____@\<!#[=%7#GX#X]W____BT8@QT!@`````/9& +M*`1U(8DL).C\____BT8@QT0D"`$```")1"0$B2PDZ/S___^)]HM&(`^V4`(/ +MMD`!B50D"(E$)`3'!"2P`0``Z/S___^+1B"+E4@%``")1"0(B50D!,<$)`$` +M``#H_/___XM&((N52`4``(E$)`B)5"0$QP0D!@```.C\____QT8@`````(M4 +M)#2`:@H!B70D!(DL).C\____BU0D&(M$)#0Y4#@/A8_^__^+1"0TQT`H```` +M`(M%`(N(6`$``(D-`````(7)=`F+10")B%@!``"#Q!Q;7E]=PXVV`````(V_ +M`````%=64X/L((MT)#"+/@^V7RN$VW0QC8><"P``N0`````Y\'49ZR`/ML&) +MPL'B!HV$@I`+``"-1`<,.?!T#H/!`3C9=>+K!;D`````#[;1B=#!X`:-!)"+ +MC`>D"P``A<D/A'X```#V008"='B-A`><"P``.4$8=6P/MD$TA,!T"(/``8A! +M-.M<BU$L@^H@C5DLC4(@.=AT3(-Z#`!U.>L(B?:#>@P`=2_&030!QT0D$``` +M```/MH*+````B40D#(E4)`B)3"0$BX<$"@``B00DZ/S____K#8M2((/J((U" +M(#G8=;Z#Q"!;7E_#C;0F`````(/L'(E<)`R)="00B7PD%(EL)!B+7"0@BWPD +M)(M'3(MH'`^W5Q!F@?J%`'=T#[?"#[:$`[P$```\_W1E9H/Z?W<?#[;`BY-\ +M!0``:<`H`0``BT00+`^V0`3K2XVV`````&:!^H$`=QD/ML"+D[0%``!IP!0- +M``"+1!`(#[9`!.LE#[;`BY.8!0``:<"P````BT005`^V0`3K#(VT)@````"X +M_P````^VM!A"!0``BT=0A<!T#(E$)`2)'"3H_/___XE\)`2)'"3H_/___XEL +M)`2)\@^VPFO`7(V$`TP!``")!"3_E9P```"+7"0,BW0D$(M\)!2+;"08@\0< +MPXUT)@"#[!R)7"0,B70D$(E\)!2);"08BW0D)(M<)"@/MVPD+&:!?B3A`740 +M#[9&)H/H$;\`````/`%V+HM$)""+$(NZ?`4```^W1A"YV"8!`&8]A0!W$0^W +MP`^VA`*\!```:<@H`0```<_&0P0%@&,%_H`CW[@`````9H%^).$!=1(/MD8F +M@^@!/`$/EL`/ML"-=@#!X`</MA.#XG\)PH@3#[9&9H/@`<'@!H/BOPG"B!/V +M1F8!=`Z)/"3H_/___V:)0PCK!&:):P@/MT,(B$859H%^).$!=2L/ME8FC4+_ +M/`%W$`^V5B>#X@_K*8VT)@````"-0N^Z#P```#P!=A:-="8`N@````"#?S0` +M=`</ME=-@^(/#[8#@^#P"="(`XM<)`R+="00BWPD%(ML)!B#Q!S#@^P\B5PD +M+(ET)#")?"0TB6PD.(M<)$0/MD,D/`AT$3PH=`T\J'0)/(AU"Y"-="8`@TMD +M"NL>/`IT%CPJC70F`'0./*IT"CR*=0J-M@````"#2V0"#[=[)&:!_^$!=1D/ +MMD,F@^@1/`%W#H-+9`BX`````.E]!0``BT,D)?___P")1"0@/>$!$``/A>0` +M```/MU,09H'ZA0`/AS(%```/M\*+="1`#[:,!KP$``"X_____X#Y_W1I9H/Z +M?W<=#[;!BW0D0(N6?`4``&G`*`$``(M$$"P/MD`$ZT9F@?J!`'<=#[;!BW0D +M0(N6M`4``&G`%`T``(M$$`@/MD`$ZR(/ML&+="1`BY:8!0``:<"P````BT00 +M5`^V0`2-M"8`````#[;`BU0D0`^VA`)"!0``:\!<C;0"3`$``(N2M`4```^V +MP6G`%`T``,=$)"0`````]D0"-1`/A4H"``#&0Q0$BU0D2,<"`````+@!```` +MZ8($```/MU,0N?\```"X_____V:!^H4`=WX/M\*+="1`#[:,!KP$``"X____ +M_X#Y_W1B9H/Z?W<=#[;!BW0D0(N6?`4``&G`*`$``(M$$"P/MD`$ZS]F@?J! +M`'<=#[;!BW0D0(N6M`4``&G`%`T``(M$$`@/MD`$ZQL/ML&+="1`BY:8!0`` +M:<"P````BT005`^V0`0/MLD/ML")1"0HBU0D0`^VK!!"!0``:\5<C;0"3`$` +M``^WP6G`*`$```."?`4``(E$)"1F@?_A`74+#[9#)H/H`3P!=BEF@?G_`'0* +MBTPD)/9!)P1U&,9#%`:+="1(QP8`````N`$```#IA`,``(M4)"0/MD(DB<*# +MX@6#^@5U(8M,)$`/MD$L.D$V<A2+="1(QP8!````N`$```#I40,``(-\)"0` +M#X3V````@_H%#X7M````B5PD!(M$)"2)!"3H_/___X3`=1C&0Q0$BU0D2,<" +M`````+@!````Z1$#``"+3"0D@'E/'W84BW0D2,<&`0```+@!````Z?,"``#V +M0V8!=!-KQ5R+5"1`]H0"5`$```%T%^M@:\5<BTPD0/:$`50!```!#X08`@`` +MBW0D*(ET)`2+1"1`B00DZ/S___^$P'04BU0D2,<"`0```+@!````Z9D"``#V +M0V8!#X3B`0``:\5<BTPD0/:$`50!```!#X3-`0``BW0D)(DT).C\____9H/X +M'P^&MP$``(M$)$C'``$```"X`0```.E0`@``]D8&`G0U@7PD(.$!$``/A(\! +M``"+5"0D#[9"3SI"3G(HBTPD2,<!`0```+@!````Z1L"``"-M@````"!?"0@ +MX0$0``^$6@$``(MT)"0/MT8Z@'LDX0^%2`$``(![)0$/A3X!``#1Z(G"@^(! +M#[9#)H/H!CP)#X<0`0``#[;`_R2%X`\``,=$)!`!````QT0D#`$```")7"0( +MBT0D)(E$)`2+5"1`B10DZ/S___^$P`^%[@```(M,)$C'`0(```"X`0```.F' +M`0``QT0D$`$```#'1"0,`````(E<)`B+="0DB70D!(M$)$")!"3H_/___X3` +M#X6J````BU0D2,<"`@```+@!````Z4,!``#'1"00`0````^VPHE$)`R)7"0( +MBTPD)(E,)`2+="1`B30DZ/S___^$P'5KBT0D2,<``@```+@!````Z00!``#' +M1"00``````^VPHE$)`R)7"0(BU0D)(E4)`2+3"1`B0PDZ/S___^$P'4LBW0D +M2,<&`@```+@!````Z<4```#&0Q0$BT0D2,<``````+@!````Z:T```"+1"1` +M!4`)``")!"3H_/___X3`=!2+5"1(QP(!````N`$```#IA````(![).%U4(![ +M)0%U2H![)@]U1(![*0%U/@^V0RC!X`@/ME,G`=`/M\")1"0$BTPD0(D,).C\ +M____.T-(=02%P'45QD,4!(MT)$C'!@````"X`0```.LNN`````#K)XGVBU0D +M0`^V@D$&``!KP%R-M`),`0``BY*T!0``N.P�#I4_O__XM<)"R+="0PBWPD +M-(ML)#B#Q#S#C;0F`````(/L'(M$)"R)1"0,BT0D*(E$)`B+1"0DB40D!(M$ +M)""+`(D$).C\____@\0<PXUV`%575E.#[$R+1"1@BYAH"@``BU0D9&;'0A[_ +M#XU$)#")1"0(B50D!(M,)&")#"3H_/___X3`=`F+3"0PZ4P,``"+="1DBT8D +M)?___P`]X0$0``^%W0```,<$)(@3``#H_/___P^W5A!F@?J%``^'\0L```^W +MPHM\)&`/MHP'O`0``+C_____@/G_=&)F@_I_=QT/ML&+="1@BY9\!0``:<`H +M`0``BT00+`^V0`3K/V:!^H$`=QT/ML&+?"1@BY>T!0``:<`4#0``BT00"`^V +M0`3K&P^VP8MT)&"+EI@%``!IP+````"+1!!4#[9`!`^VP(M\)&`/MH0'0@4` +M`&O`7(V$!TP!``")1"0<BY>T!0``#[;!:<`4#0```<*)5"0DQT0D(`````#' +M1"0H`````.ER`0``BT0D9`^W4!"Y_P```&:!^H4`=P\/M\*+="1@#[:,!KP$ +M``"+?"1D#[=W)&:!_N$!=0\/MD<F@^@1/`$/AK@```!F@?J%`'=S#[?"BWPD +M8`^VA`>\!```//]T8&:#^G]W&0^VP(N7?`4``&G`*`$``(M$$"P/MD`$ZT9F +M@?J!`'<=#[;`BWPD8(N7M`4``&G`%`T``(M$$`@/MD`$ZR(/ML"+?"1@BY>8 +M!0``:<"P````BT005`^V0`3K!;C_____#[;`BU0D8`^VA`)"!0``:\!<C80" +M3`$``(E$)!P/M\%IP"@!```#@GP%``")1"0@9H'^X0%U2.LP#[?!:<"P```` +MBTPD8`.!F`4``(E$)"B+<%2)="0<QT0D(`````#'1"0D`````.M)BWPD9`^V +M5R:-0N\\`78JC4+_/`%V(V:!^?\`=`J+1"0@]D`G!'42BU0D9,9"%`:Y```` +M`.GV"0``QT0D)`````#'1"0H`````(U$)$B)1"0$BTPD8(D,).C\____9HE$ +M)!J+="1D9HE&'HM\)&")/"3H_/___XG%N0(```"%P`^$J@D``(M$)&2):%0/ +MMU0D&HE4)!1IPK`$``"-/!B-1R"+3"1@*X%H"@``B<+!^A\#@6P*```3D7`* +M``"+3"1(B4$@BTPD2(E1)(M%#(M5$(M,)$B)02B+3"1(B5$LBT0D2`^W="0: +M9HEP"+@`````C78`Q@0X`(/``3VP!```=?*+1"1D9H%X).$!=6:)P@^V0":# +MZ!$\`7=9C40D-XE$)`R+1"1(#[9`"(E$)`B)5"0$BTPD((D,).C\____C8<@ +M!```BUPD8"N#:`H``(G"P?H?`X-L"@``$Y-P"@``BTPD2(E!$(M,)$B)413I +M1@$``)"+1"0<#[90!O;"`74KBTPD9(M!)"7___\`/>$!$``/A+8```"+7"0@ +M#[9#)(/@!8/X!0^%H@```(MT)&3V1F8@=!*-1"0WB40D!(DT).C\____ZRB- +M1"0WB40D#(M$)$@/MD`(B40D"(M$)&2)1"0$BU0D((D4).C\____C8<@!``` +MBTPD8"N!:`H``(G"P?H?B<L#@6P*```3D7`*``"+3"1(B4$0BTPD2(E1%(GX +M*X-H"@``B<+!^A^+="1@`X9L"@``$Y9P"@``BTPD2(E!&(M,)$B)41SK:_;" +M`G1FB?B+5"1@*X)H"@``B<+!^A^+3"1@`X%L"@``$Y%P"@``BTPD2(E!&(M, +M)$B)41R-AR`$``"+7"1@*X-H"@``B<+!^A\#@VP*```3DW`*``"+3"1(B4$0 +MBTPD2(E1%(M$)$B`2`$"BT0D9`^V4#V+1"1(9HE0`HM4)&2`>CT`=#R^```` +M`+L`````BTT(BT0D9(M01(L$&HD$&8M$&@2)1!D$BT0:"(E$&0B#Q@&#PPR+ +M5"1D#[9"/3GP=\Z+3"1DBU$@BT0D2(E0#&:!>23A`751#[9!)H/H$3P!=T8/ +MMT0D&HE$)`R+1"1(B40D"(E,)`2+7"0<B1PDZ/S___^-1"0WB40D#(E\)`B+ +M="1DB70D!(D<).C\____@&,(_ND,!0``BU0D'`^V0@:H`@^$@@0``(M$)$C& +M0`;^BT0D2(!@!_Z#?"0@``^$TP```(M,)"`/ME$DB="#X`:#^`8/A;T```#V +MP@$/A+0````/MT0D&HE$)`R+1"1(B40D"(M<)&2)7"0$BW0D'(DT).C\____ +M]D-F`70/BT0D2`^W0`C!X`.(1"0XC40D-XE$)`R)?"0(BT0D9(E$)`2+5"0< +MB10DZ/S___^+3"1D]D%F`70*BUPD'(!+"`'K"(MT)!R`9@C^Q@>ABU0D(`^V +M@K8```"#X`\/ME<!@^+P"<*(5P&+3"0@#[=!'(/``6;!P`AFB4<"B<N!PZ`` +M``#I@`,``)"+7"1D9H%[).$!#X4Y`@``#[9#)CP/=!*[`````#P0#X5:`P`` +MZ;8```"+="1D#[96*,'B"`^V1B<!PHM$)$C&0`0-BT0D2(!@!?Z`3"1'"(M< +M)$@/MD85BW0D8`^VCN(```#3X&8)0PB+3"1(#[9!`8/@'X/(((A!`8M,)&2+ +M02J)AS@$``"+02Z)ASP$``!FP<((9HF71`0```^V02F(AT($``#&!Y&+7"0@ +M#[=#'(/``6;!P`AFB4<"#[:3M@```(/B#P^V1P&#X/`)T(A'`8M<)""!PZ`` +M``#IGP(``(M4)$B+="1D#[9&%8M<)&`/MHOB````T^!F"4((Q@>!9L='`O__ +MBW0D)`^VEHL```"#X@\/MD<!@^#P"="(1P&+1"1D@W@T`'4.QD`4(;D````` +MZ80$``"+5"1D]D(G`70NBUHXA=MT)XE<)`2+3"1@BX$$"@``B00DZ/S___^# +MX`\/ME<!@^+P"<*(5P'K!(M<)"2+="1DBU8T#[9"`;X0````/(!T?#R`=QP\ +M%7<2/!!S9(/H`CP!=T*0C70F`.M//!=W-^M7/(6-M@````!T)#R%=PX\@70^ +M/(*-="8`=1OK(#R0<A6^*````#R2D'8R/)-U&`)A);4!0``BU0D9(M")"7___\`/>$!$`!U +M-(U$)$2)1"0,QT0D"`````")7"0$BTPD'(D,).C\____#[9$)$>#X!^#R$"( +M1"1'Z<$```"+="1D9H%^).$!=44/MD8F@^@1/`%W.HM$)"B)1"0$BU0D8(D4 +M).C\____C40D1(E$)`R+3"0H#[9!-(E$)`B)7"0$BUPD'(D<).C\____ZW"+ +M="0@B70D!(M$)&")!"3H_/___XU$)$2)1"0,#[9&0HE$)`B)7"0$BU0D'(D4 +M).C\____#[96)(G0@^`&@_@&=2[VP@%T*0^V1"1'@^`?@\A@B$0D1P^V5D*# +MXG_!X@0/MT0D1F8E#_@)T&:)1"1&C40D1(E$)`2+3"1@B0PDZ/S___^+1R"+ +M5R2Y`P```(G3"<-T1(E$)`2)5"0(QP0D(`8``.C\____N0,```#K*8MT)&`/ +MMH9!!@``:\!<C80&3`$``(E$)!R+EK0%``"X[`8-`.F-]/__B<B#Q$Q;7E]= +MPXUV`(V\)P````!55U93@^P<BW0D,,=$)!0`````C;[H````Z:(!``")]HD\ +M).C\____B<.#>$P`=3")-"3H_/___XE#3(7`=2&-EN@```"+AN@```")6`2) +M`XE3!(F>Z````.F(`0``B?:+0R0E____`#WA`1``#X33````#[=#$&8]@``/ +MA,4````/MM!FB5,09H/Z?W839H%[).$!=2(/MD,F@^@1/`%W%V:!^H4`=Q`/ +MM\(/MHP&O`0``(#Y_W48QD,4!HE<)`2)-"3H_/___^GS````C78`#[=K)&:! +M_>$!=14/MD,FB$0D&X/H$3P!#X?@````ZQ4/ML%IP"@!```#AGP%``")1"04 +MZPP/MD0D&X/H`3P!=C5F@?J``'0N9H']X0%U"P^V0R:#Z!$\`78<BT0D%/9` +M)P1U$L9#%`:)7"0$B30DZ/S____K>HE<)`2)-"3H_/___X/X`G<+@_@!<R:- +M="8`ZQ"#^`-U68GVC;PG`````.M!B5PD!(DT).C\____B?;K/H-[5`!T#XU# +M5(E$)`2)-"3H_/___XV6Z````(N&Z````(E8!(D#B5,$B9[H````ZS.)7"0$ +MB30DZ/S___^0.;[H````#X54_O__ZQ@/ML%IP"@!```#AGP%``")1"04Z1__ +M__^#Q!Q;7E]=PXGV@^P\B5PD+(ET)#")?"0TB6PD.(M\)$"+=RR++@^V1@BH +M$'0,QH>T````!NFB`@``#[:7M````(#Z`0^$@P```(#Z`7(;@/H$#X2J```` +M@/Hz`@``Z78"``"-="8`QH>T`````8E\)`2)+"3H_/___XM$)$3&0!2! +M@$X("(-X5`!T$XM$)$2#P%2)1"0$B2PDZ/S___^+A>@```"+5"1$B5`$B0*- +MA>@```")0@2)E>@```")+"3H_/___^EU`@``@^#WB$8(@(>W`````<:'M``` +M``"+3"1$QD$4`HE,)`2)+"3H_/___XDL).C\____Z4`"``#&A[<`````BT0D +M1(-X5`!T#X/`5(E$)`2)+"3H_/___XM/((7)#X2O`0``BU$$C4(!B4$$@_HH +M#X>=`0``BX7H````BU0D1(E0!(D"C87H````B4($B97H````@'\F_W0FBT<T +MA<!T!H!X)@!T&8E\)`C'1"0$`@```(DT).C\____Z;D!```/MD8(@^#W@\@0 +MB$8(BU<PA=)U#8!^"@!U,.D"`0``B?;'1"00`````,=$)`P"````#[9'38E$ +M)`B)5"0$B30DZ/S____I;P$``,=$)"``````QD0D)P"-3CB)3"0<BT0D'(D$ +M).C\____B40D*(M&/(M4)"B)5CR+3"0<B0J)0@2)$(M"((7`="*)1"0(BX5( +M!0``B40D!,<$)`4```#H_/___XM$)"B`2"@"BU0D*(E4)`C'1"0$!@```(DT +M).C\____BTPD*(!Y3P!T0(M<)""#PP&!?"0@?Y:8`'<KB?:)+"3H_/___\<$ +M)`$```#H_/___XM$)"B`>$\`=`N#PP&!^X&6F`!UUXE<)""`1"0G`0^V5"0G +M.%8*#X<]____BT<TA<!U&\9')@-FQX>4``````")?"0$B2PDZ/S____K=HD$ +M).C\____C;8`````ZV8/ME\FQP0DQ@$``.C\____@&8([XN%Z````(M,)$2) +M2`2)`8V%Z````(E!!(F-Z````(E\)`C'1"0$!@```(DT).C\____@/O_=1.) +M?"0(B70D!(DL).C\____C78`B2PDZ/S___^+7"0LBW0D,(M\)#2+;"0X@\0\ +MPXUT)@!55U93@^QLB[0D@````(N6?`4``+C8)@$`BXPDA````&:!>1"%`'<9 +MBYPDA`````^W0Q`/MH0PO`0``&G`*`$``(T\`HN61`H``('"0`@```^V1T+! +MX`@!PHL*B0T`````B<C!Z!"(1"1`BY9$"@``@<)`"```#[9'0L'@"`'"BT($ +MHP````"(1"18B<+!Z@B(5"19P>@0B$0D6HN61`H``('"0`@```^V1T+!X`@! +MPHM""*,`````B$0D6XG"P>H(B%0D7,'H$(A$)%W&1"1>`,9$)%\`B<W![1@/ +MMEPD0(M$)%R)1"00BT0D6(E$)`R);"0(B5PD!,<$)$P&``#H_/___XG8@_`! +MB<*#X@%T((!\)$``=!F+E"2$````QD(4`+@`````Z;0"``"-="8`BXPDA``` +M`(!Y%(%U,XU$)%B)1"0,B6PD"(E<)`2)#"3H_/___XN<)(0```#&0Q0"N``` +M``#I=@(``(VV`````(N,)(0```"+020E____`#WA`0X`=0[&010AN`````#I +M3`(``(N$)(0```#V0&8!=3.$TG4O@'\F_W0IC40D6(E$)`R);"0(B5PD!(N4 +M)(0```")%"3H_/___[@`````Z0P"``")?"0$B30DZ/S___^)?"0$B30DZ/S_ +M__^+%HN,)(0````/MT$>9L'H!0^WP(T$A0`#``")@G`!``"+!HN<)(0````/ +MMTL>@^$?N@$```")U=/EB:AT`0``#[=#'L'@`@.&T`4``,<```````^W2QZ) +MR&;!Z`4/M\"#X1^)T]/CB=GWT2&,AM0%``"+K"2$````#[=-'HG(9L'H!0^W +MP(/A']/B]](A5(9@BU4`BT4$B4($B1`/MT4>C99`"0``B40D!(D4).C\____ +M@&]/`<9%%(&#?50`=!&)Z(/`5(E$)`2)-"3H_/___XU'$#E'$`^$[````(E$ +M)"R-ED`)``")5"0\BTPD+(D,).C\____B<.+%@^W0!YFP>@%#[?`C02%``,` +M`(F"<`$```^W2QZ#X1^Z`0```(G5T^6+!HFH=`$```^W0Q[!X`(#AM`%``#' +M```````/MTL>B<AFP>@%#[?`@^$?B=73Y8GI]]$AC(;4!0``#[=+'HG(9L'H +M!0^WP(/A']/B]](A5(9@#[=#'HE$)`2+1"0\B00DZ/S___^`;T\!@WM4`'0/ +MC4-4B40D!(DT).C\____C9;H````BX;H````B5@$B0.)4P2)GN@```"+5"0L +M.5<0#X4B____BXPDA````(%A9/___O_&A[0````$B4PD!(D\).C\____N`$` +M``"0C70F`(/$;%M>7UW#D(VT)@````!55U93@^Q,#[=L)&2+5"1HB50D,(M$ +M)&R)1"0TBWPD8(LWBX9H"@``B40D%`M4)#0/A(L"```/M]5IPK`$``"+7"04 +MC0P8]D$A`G05C025``````.&T`4``(L`QD`4`NL3C025``````.&T`4``(L` +MQD`4(<'B`HE4)"R)T`.&T`4``(L0BT(D)?___P`]X0$0``^$B@$```^W0A!F +M/84`=P\/M\`/MH0&O`0``#S_=16+1"0L`X;0!0``BP#&0!0&Z2X(```/ML!I +MP"@!```#AGP%``")1"08@'PD,P!Y70^V4"2)T(/@!H/X!G4?]L(!=!J+!HN0 +M6`$``(D5`````(72=`B+!HF06`$``(L&BX!0`0``HP````"#R`*+%HF"4`$` +M`(L&BX`$`0``HP````"`S/^+%HF"!`$``&;W02`""`^$X0```(!^*P`/A-<` +M``#&1"0?`+L`````C78`B=H/MLL/MD<)T_BH`71'@/L#=AR+!@70`0``C02( +MBP"C`````,'H%(/@`>L:C78`BP8%T`$``(T$B(L`HP````#!Z!2#X`&$P'0+ +MN`$```#3X`A$)!^#PP&-0@$X1BMWGX!\)!\`=&(/MD0D'SA'"758B>AFP>@% +M#[?`B>F#X1^Z`0```-/BA52&8'4]BU0D&("ZM`````)W!\:"M`````.+1"0L +M`X;0!0``BP")1"0$BTPD&(D,).C\____Z=(&``#'1"08`````/9$)#,!#X2_ +M!@``BT0D+`.&T`4``(L(QD$4(8M!)"7___\`/>$!#@`/A)P&``"+ED0*``"! +MPD`(``"+7"08#[9#0L'@"`'"BP*C`````(N61`H``('"1`@```^V0T+!X`@! +MPHL"HP````"+ED0*``"!PD@(```/MD-"P>`(`<*+`J,`````B4PD!(DT).C\ +M____Z3,&```/M_V-++T`````BX;0!0```>B+$&:!>B3A`0^%!P$```^V6B:` +M^Q`/AP8&``"X`0```(G9T^"IP#````^%TP```*D```$`=5'VQ(`/A.(%``!I +MQ[`$``"+7"04C0P8#[9!,XA"%(GH`X;0!0``BP#V0!,$#X2Z!0``@'@4``^$ +ML`4``(M0.(72#X2E!0``#[9!,X@"Z9H%``!IQ[`$``"+5"04C3P0B>@#AM`% +M``"+$`^V1RJ(0A2)Z`.&T`4``(L`@W@T``^$:`4```^VAR$$``")!"3H_/__ +M_XGJ`Y;0!0``BQ*+4B")PSG0=@*)TXU7*(GH`X;0!0``BP"+0#2)7"0(B50D +M!(D$).C\____Z1\%``")Z`.&T`4``(L`QD`4`.D,!0``B>@#AM`%``"+`(E$ +M)""+2$B)3"0DN/____^+7"0@9H%[$(4`=Q:)Z`.&T`4``(L`#[=`$`^VA#"\ +M!```#[;`:<`H`0``BYY\!0```</&@[0`````#[93)(G0@^`&@_@T`0`` +M]L(!#X1K`0``BWPD(,9'%`#V1V8@#X2+!```@WPD)``/A(`$``"+1"0D]D!E +M`@^$K````(M7((72#X2A````BTA8A<ET&(M'-(E4)`B)1"0$B0PDZ/S____I +M@@```(M4)""#>C0`='B+3"0D@WEH`'4&@WEL`'1HBWPD((MO-(M4)"2+0FB% +MP'0(B<?V0F4!="V+3"0DBT%LBY9(!@``QT0D"`$```")5"0$B0PD_]"_```` +M`(7`=`:+OD@&``"+1PB+%XE4)`B);"0$B00DZ/S___\#+XM'!(/'$(7`=-^+ +MED0*``"!PD`(```/MD-"P>`(`<*+`J,`````B<+!ZA"+?"0DB%=3P>@89HE' +M2(N61`H``('"1`@```^V0T+!X`@!PHL2B14`````#[;"9HE'3`^VQF:)1TZ) +MT,'H$`^VP&:)1U#!ZAB(5U*+ED0*``"!PDP(```/MD-"P>`(`<*+`J,````` +M#[;`9HE'2NDR`P``:<>P!```BU0D%(T\$`^V1S.$P`^%S````(GH`X;0!0`` +MBP#&0!0`BTPD(/9!9A`/A/T"``"#?"0D``^$\@(```^V1S.+7"0DB$-*]D-E +M`@^$W0(``(-Y(``/A-,"``"#>V@`=0^#>VP`D(UT)@`/A+X"``"+1"0@BW@T +MBU0D)(M":(7`=`B)P_9"90%T,(M,)"2+06R+ED@&``#'1"0(`0```(E4)`2) +M#"3_T+L`````A<!T"8N>2`8``(UV`(M#"(L3B50D"(E\)`2)!"3H_/___P,[ +MBT,$@\,0A<`/A4\"``#KV3P"#X4)`@``#[9/0(M'.(E$)$0/ME0D1P^V1"1$ +MP>`8"<(/MD0D1<'@$`G"#[9$)$;!X`B)TPG#@^%_@/EQ=C;&1"0I`(/[`78+ +M#[9'08/@#XA$)"G&1"0J`(/[`G8(#[970HA4)"J#^P-V7`^V3T.(3"0KZU?& +M1"0I`(/[`G8+#[9'0H/@#XA$)"G&1"0J`,9$)"L`@_L'=C,/MD='@\`(.<-V +M`HG#QD0D*@"#^PQV"`^V5TR(5"0J@_L-=@H/MD]-B$PD*^L%QD0D*P")Z`.& +MT`4``(L`@'@<`'1#A=MT/\9`%"")Z`.&T`4``(L`#[9`'#C8<P,/MMB)Z`.& +MT`4``(L`BU`XA=)T(XU'0(E<)`B)1"0$B10DZ/S____K#HGH`X;0!0``BP#& +M0!0B@'PD*01U#HGH`X;0!0``BP#&0!0"BT0D(#EP&`^$_0```(-\)"0`#X3R +M````]D!F$'1&#[9',XM4)"2(0DKV0F4"=#6+3"0@#[91'(G8.--V`HG0A,!T +M(8M<)"2+2V"%R706#[;`C5=`B40D"(E4)`2)#"3H_/___X!\)"D+=UD/MD0D +M*?\DA;@2``"+?"0DQD=F`>F&````@'PD*@1U$8!\)"L"=0J+1"0DQD!F$>MN +MBU0D),9"9@+K9(M,)"3&0680ZUJ+7"0DQD-F"^M0BWPD),9'9@;K1HM$)"3& +M0&8-ZSP\*'4:#[9#3X/H`8A#3HGH`X;0!0``BP#&0!2!ZQX\"'4,QP0D$"<` +M`.C\____B>@#AM`%``"+`,9`%"&#Q$Q;7E]=PXUT)@!55U93@>R<````BZPD +ML`````^WA98+``!FB40D?HM%`(N`0`$``*,`````9B7_#V:)A98+``!F.T0D +M?G5NBT4`BXA0`0``B0T`````BT4`B8A0`0``N`````#WP0#__P`/A#H)``") +M3"0$QP0DY`$``.C\____BY0DL````(D4).C\____N`$```#I$0D``)"+10"+ +M@$`!``"C`````&8E_P]FB866"P``ZQ6-C?````")3"14C9U`"0``B5PD4)"+ +MA;`*``"+`*,`````#[>-E@L``"7_#P``#[?1.=!UL&:!^?\/#X45"```Z2(( +M``"+M6@*``!F@T0D?@$/MWPD?F8[O9H+```9P"''9HE\)'Z+E;`*``"#P@0/ +MM\>+%(*)U\'O$/?'"`````^$KP```(M%`(N04`$``(D5`````(M%`(F04`$` +M`/?"`/__`'1A@'TK`'1;]L8!=3*^`````/?"```!`'0]ZR.0C70F``^WQHU( +M"+L!````B=_3YX7Z=1"-2!#3XX7:=0?K&+X`````#[?&:\!<C9P%3`$``(7; +M=2+K#(/&`0^V12MF.?!WOHN$)+````")!"3H_/___^DZ!P``BY0DL````(D4 +M).C\____B$,+Z2,'``"-=@")T6:!X?\/9HE,)$X/M]F)7"1$:<.P!```BTP& +M((M<!B2)C"2`````B9PDA````(MT)$3!Y@*+A=`%```!\(L`B40D>(7`#X7$ +M`0``B4PD$(E<)!2)5"0,BUPD1(E<)`B)7"0$QP0DF`8``.C\____9H-]7``/ +MA*4&``#&A"2+``````^VO"2+````C02]`````(E$)%@#A=`%``"+$(72#X1( +M`0``:?>P!````[5H"@``BYT@"@``#[9"%8E$)`R)?"0(B50D!,<$)/\!``#H +M_/___XM$)%@#A=`%``"+`(D$).C\____BX8L!```BY8H!```BXXD!```B[8@ +M!```B40D%(E4)!")3"0,B70D"(E\)`3'!"34!@``Z/S___^)^,'@!@'#BU,T +MB50D2(M3,(M++(MS*(M[)(M#((E$)%R+0QR)1"1@BT,8B40D9(M#%(E$)&B+ +M0Q")1"1LBT,,B80DE````(M#"(F$))````"+0P2)A"2,````BQN+1"1(B40D +M.(E4)#2)3"0PB70D+(E\)"B+5"1<B50D)(M,)&")3"0@BWPD9(E\)!R+1"1H +MB40D&(M4)&R)5"04BXPDE````(E,)!"+O"20````B7PD#(N$)(P```")1"0( +MB5PD!,<$)/P&``#H_/___X"$)(L````!#[:$)(L```!F.T5<#X,8!0``Z7;^ +M__^-=@#WQR`````/A(<!``"+5"1X@'H4@0^%5P$``,9"%"$/MT(>P>`"`X70 +M!0``QP``````#[=*'HG(9L'H!0^WP(/A'[H!````B=/3XXG9]]$AC(74!0`` +MBWPD>`^W3QZ)R&;!Z`4/M\"#X1_3XO?2(52%8`^W1QZ)1"0$BT0D4(D$).C\ +M____@W]4`'01B?B#P%2)1"0$B2PDZ/S___^+3"1X#[=1$&:!^H4`#X?"```` +M#[?"#[:$!;P$```\_P^$KP```&:#^G]W&P^VP&G`*`$```.%?`4``(M`+(!X +M!/\/E<#K5XM<)'@/MT,09CV!`'<C#[?`#[:$*+P$``!IP!0-```#A;0%``"+ +M0`B`>`3_#Y7`ZR:+?"1X#[='$`^VA"B\!```:<"P`````X68!0``BT!4@'@$ +M_P^5P(3`=#.+1"1XB40D!(DL).C\____C97H````BX7H````BTPD>(E(!(D! +MB5$$B8WH````Z9\#``"+7"14BU,$BT0D>(/`"(E#!(M\)'B)7PB)4`2)`NE] +M`P``#[=$)$YFP>@%#[?`B40D<`^W7"1.B=F#X1^X`0```-/@B40D=(M4)'"% +M1)5@#X5*`P``B?`#A=`%``"+``^W4!!F@?J%``^'GP````^WP@^VA`6\!``` +M//\/A(P```!F@_I_=Q@/ML!IP"@!```#A7P%``"+0"P/MD`$ZUV)\`.%T`4` +M`(L`#[=`$&8]@0!W(`^WP`^VA"B\!```:<`4#0```X6T!0``BT`(#[9`!.LI +MB?`#A=`%``"+``^W0!`/MH0HO`0``&G`L`````.%F`4``(M`5`^V0`0\_W0- +M#[;`@+P%0@4``/]U.XM<)'2+3"1PA5R-8`^%@`(``(M\)'C&1Q0&B3PDZ/S_ +M___'1"0(`````(E\)`2)+"3H_/___^E7`@``#[:$!4(%``!KP%R-A`5,`0`` +MBY0DA`````N4)(````!T'O?'`@```'46QX0D@`````````#'A"2$```````` +M`/9`!@(/A%D!``"+E"2`````BXPDA````(E4)`B)3"0,B5PD!(D$).C\____ +MBUPD=(M,)'"%7(U@#X79`0``BWPD>(!_%($/A8L````/MT<>P>`"`X70!0`` +MQP``````#[=/'HG*9L'J!0^WTH/A'[C^____T\`AA)74!0``#[=''HE$)`2+ +M1"10B00DZ/S___^)?"0$B2PDZ/S___^#?U0`=!&)^(/`5(E$)`2)+"3H_/__ +M_XV5Z````(N%Z````(M,)'B)2`2)`8E1!(F-Z````.E``0``BX7P````.T0D +M5'1/NP````"#PP&+`#E$)%1U]83;=#N^`````(M\)%2)/"3H_/___XU(^(M7 +M!(E'!(DXB5`$B0([3"1X=06^`0```(#K`774B?"$P`^%Y0```(M,)%2+402+ +M1"1X@\`(B4$$BUPD>(E+"(E0!(D"BT0D=(M\)'`)A+V@````Z;0```"+E"2` +M````BXPDA````(E4)`B)3"0,B5PD!(D$).C\____BX7P````.T0D5'1/NP`` +M``"#PP&+`#E$)%1U]83;=#N^`````(M,)%2)#"3H_/___XU(^(M\)%2+5P2) +M1P2).(E0!(D".TPD>'4%O@$```"`ZP%UT(GPA,!U-XM4)'B`>A2!="V+3"14 +MBU$$BT0D>(/`"(E!!(M<)'B)2PB)4`2)`HM$)'2+?"1P"82]H````)`/MU0D +M?F8YE98+```/A=[W__]F@;V6"P``_P]T(8N%L`H``(L`HP`````E_P\```^W +ME98+```YT`^%@O?__XV%\````#F%\````'1'B<:)-"3H_/___X/H"`^W2!Z) +MRV;!ZP4/M]N#X1^Z_O___]/"(92=H````,=$)`@`````B40D!(DL).C\____ +M.;7P````=;N)+"3H_/___[@!````@<2<````6UY?7<.0C70F`(/L'(E<)`R) +M="00B7PD%(EL)!B+1"0@BYA(!0``BT,$BRB)+0````#WQ0```)!T:(M#!(DH +MZV&!P\P,``"+`XN04`$``(D5`````(L#B9!0`0``A=)T-_?"````$'09BP/' +M@%`!```````0BP.+@%`!``"C`````(L#QX!0`0```0```(D<).C\____`<># +MQ@&#_@)UH>L,OP````"^`````.N9B?B$P`^5P(7M#Y7""=`/ML"+7"0,BW0D +M$(M\)!2+;"08@\0<PXVT)@````!55U93@^PLBW0D0(L&BX!0`0``B40D%*,` +M````BP:+5"04B9!0`0``]T0D%`#__P`/A+$'``"`?BL`#X2G!P``QD0D*P`/ +MMFPD*XU-"+@!````B<+3XH54)!1U#XU-$-/@A40D%`^$:0<``(!\)"L#=AZ+ +M!@6``0``C03HBP"C`````,'H$X/@`>L<D(UT)@"+!@6``0``C03HBP"C```` +M`,'H$X/@`83`=!N)-"3H_/___XGHP>`&C02H@8P&Q`L`````"`"+%H!\)"L# +M=A6-A.J``0``BP"C`````"4```$`ZQ.-A.J``0``BP"C`````"4```$`A<!T +M*X!\)"L#=A*-A.J``0``QP````$`Z?T&``"-A.J``0``QP````$`Z>L&``"` +M?CD!#X77!0``@'PD*P-V&8L&!8`!``"-!.B+`*,`````@^`!ZQ>-=@"+!@6` +M`0``C03HBP"C`````(/@`83`#X1D`0``B>C!X`:-'*B-A![("P``BU84B40D +M!(D4).C\____BX0>I`L``(7`=!V+4"B%TG06]D(R`G40B00DZ/S___^$P`^% +M'@$``(GHP>`&C02HBX0&I`L``(7`#X2'````B40D)(!X"@`/A*4```#&1"0C +M`(G'@\<XB3PDZ/S___^)PXM'!(E?!(D[B4,$B1CV0R@"=3V+4R"%TG0>BX9( +M!0``B50D"(E$)`3'!"0%````Z/S___^`2R@"B5PD",=$)`0&````BTPD)(D, +M).C\____@$0D(P$/MD0D(XM4)"0X0@IV+NN1#[9$)"O'1"0(`0```(E$)`2) +M-"3H_/___\<$)*"&`0#H_/___[H`+3$!ZP6Z0$M,`(GHP>`&C1RHC0PSB9'( +M"P``QX'0"P``P%8"``^V1"0KB<+!X@:-A(*0"P``C40&#(F!U`L``(V$'L@+ +M``"+5A2)1"0$B10DZ/S___^-=@"`?"0K`W8OC13M`````(L&!8`!```!T(L` +MHP````"+!@6``0```<*+`J,`````P>@'@^`!ZRV-%.T`````BP8%@`$```'0 +MBP"C`````(L&!8`!```!PHL"HP````#!Z`>#X`&$P'1;@'PD*P-V*HT,[0`` +M``"+!@6$`0```<B+`*,`````BQ:!PH0!```!T0T```$`B0'K,8T,[0````"+ +M!@6$`0```<B+`*,`````BQ:!PH0!```!T0T```$`B0'K((!\)"L#=AF+!@6` +M`0``C03HBP"C`````,'H$H/@`>L7BP8%@`$``(T$Z(L`HP````#!Z!*#X`&$ +MP`^$WP$``(!\)"L#=BJ-#.T`````BP8%@`$```'(BP"C``````T```0`BQ:! +MPH`!```!T8D!ZRB-#.T`````BP8%@`$```'(BP"C``````T```0`BQ:!PH`! +M```!T8D!B>C!X`:-!*B+A`:D"P``A<!T#8G%@W@H`'5_Z68!``"`?"0K`Y!V +M.8T4[0````"+!@6``0```="+"(D-`````(L&!8`!``"-!`*)"(L&!8`!```! +MPHL"HP````#I7`,``(T4[0````"+!@6``0```="+"(D-`````(L&!8`!``"- +M!`*)"(L&!8`!```!PHL"HP````#I(P,``(M`*`^W2#(/M]'VQ@$/A=D```") +MQ_;"`@^$S@```(G(@^#]9HE',HU'<(M6%(E$)`2)%"3H_/___\9$)"L`@'\? +M``^$?0```,9$)"L`#[9$)"N+7(<\A=MT7(M3((72=!Z+AD@%``")5"0(B40D +M!,<$)`4```#H_/___X!+*`*)7"0(QT0D!`8```")+"3H_/___X![3P!T'8UV +M`(DT).C\____QP0D`0```.C\____@'M/`'7F@$0D*P$/MDPD*SA/'W>(QT=P +M0$M,`,='>`````")?WR-1W"+5A2)1"0$B10DZ/S___^-="8`@'PD*P-V'HL& +M!8`!```/ME0D*XT4T(L"HP````#!Z`B#X`'K'(L&!8`!```/ME0D*XT4T(L" +MHP````#!Z`B#X`&$P`^$#@$``(!\)"L#=AZ+!@6``0``#[94)"N-%-"+`J,` +M````@_`!@^`!ZQR+!@6``0``#[94)"N-%-"+`J,`````@_`!@^`!A,`/A,4` +M```/MD0D*XG"P>(&C82"D`L``(T$!HU0#(E4)!R+4@B%T@^$GP```(E4)!B# +MP#B+5A2)1"0$B10DZ/S___^+1"08@'@*`'14O0````")QX/'.(D\).C\____ +MB<.+1P2)7P2).XE#!(D8BU,@A=)T'HN&2`4``(E4)`B)1"0$QP0D!0```.C\ +M____@$LH`H/%`8GJBTPD&#A1"G>VBT0D',=`+("$'@#'0#0`````B4`XBT0D +M'(/`+(M6%(E$)`2)%"3H_/___X!\)"L#=F0/MEPD*\'C`XL&!8`!```!V(L0 +MB14`````BP8%@`$``(T$`XD0BP8%@`$``(T$`XL`HP````"+!@4P`@``C00# +MQP``````QP0D$"<``.C\____BP8%-`(```'#BP.C`````.MB#[9<)"O!XP.+ +M!@6``0```=B+$(D5`````(L&!8`!``"-!`.)$(L&!8`!``"-!`.+`*,````` +MBP8%4`(``(T$`\<``````,<$)!`G``#H_/___XL&!50"```!PXL#HP````"` +M1"0K`0^V5"0K.%8K#X=>^/__BP:+@%`!``")1"04HP````"+!HM,)!2)B%`! +M``#WP0#__P!T'>D7^/__B>C!X`:-!*B!C`;$"P`````!`.G]^/__N`````"# +MQ"Q;7E]=PXUV`(V\)P````!55U93@^Q<BVPD<`^V1"1TB$0D,P^VT(E4)#2) +MT,'@!HT$D`'HBXBD"P``B4PD/`^VN*(+``"+10"`?"0S`W8,QX!P`0``Q`$` +M`.L*QX!P`0``J`$``(E$)%@%=`$``(E$)#B+7"18BX-T`0``HP````"+3"0T +M@^$#NP<```#3XXG>"<:+1"18B;!T`0``QP0DZ`,``.C\____]],A\XM4)%B) +MFG0!``"`?"0S`W90BTPD-(M<)%B-E(O0`0``BP*C`````(/("(D"B<O!XP.+ +M5"18C80:``(``,<`.````,<$)!`G``#H_/___XM,)%B-A!D$`@``QP`````` +MZU"+7"0TBT0D6(V4F-`!``"+`J,`````@\@(B0*+7"0TP>,#BU0D6(V$&@`" +M``#'`#@```#'!"00)P``Z/S___^+3"18C809!`(``,<``````(-\)#P`#X1F +M"```@'TK`'0RNP`````/MLN+5"0\#[9""=/XJ`%T%,=$)`@!````B4PD!(DL +M).C\____@\,!.%TK=].+3"0\]D$&`71MB4PD!(DL).C\____BUPD-(E<)`2) +M+"3H_/___XG8P>`&C028C10HBX+`"P``J0``$`!T"R7__^__B8+`"P``BT0D +M/(E$)`2)+"3H_/___XM$)#3!X`:+5"0TC020QX0%I`L```````#IMP<``(M, +M)#R`>30`=!J+A00*``")3"0$B00DZ/S___^+7"0\@<`;C^____#[9,)#33 +MP(G[(,.(7"1##X22`@``BT0D-(E$)`2)+"3H_/___XM$)#3!X`:+5"0TC020 +MC10HBX+`"P``J0``$`!T"R7__^__B8+`"P``#[9,)$.+7"0\B$L)@'TK``^$ +MK@$``,=$)$P`````#[;!B40D((M4)%B!P@`"``")5"0<#[9,)$R(3"13#[;Y +MBT0D((GYT_BH`0^$/@$``(T<O0````")7"0LB?C!X`8!V`^V5"1#B)0%H@L` +M`(!\)%,##X:-````C1S]`````(M$)!P!V,<`.````,<$)!`G``#H_/___XM, +M)%B-A!D$`@``BUPD((D8QX%P`0``Q`$``(M4)#B+`J,`````B?F#X0.[!P`` +M`-/CB=X)QHDRQP0DZ`,``.C\____]],A\XM,)#B)&8M<)%B+1"0LC90#T`$` +M`(L"HP````"#R`B)`NF(````C1S]`````(M$)!P!V,<`.````,<$)!`G``#H +M_/___XM4)%B-A!H$`@``BTPD((D(QX)P`0``J`$``(M<)#B+`Z,`````B?F# +MX0.[!P```-/CB=X)QHM$)#B),,<$).@#``#H_/____?3(=Z+5"0XB3*+3"18 +MC92YT`$``(L"HP````"#R`B)`H-$)$P!#[9$)%.#P`$X12MV)>F/_O__B1PD +MZ/S___^-<."+4P2)0P2)&(E0!(D"@WX,`'07ZPR^`````(M<)#R#PRR+1"0\ +M.5@L=<N%]G0XQD8R`(!]*P!T+KD`````N@````"+7"0\#[9#"=/XJ`%T#@^V +MPHA,!D"`1C(!@\(!@\$!.$TK=]S'1"0(`````,=$)`2!````BT0D/(D$).C\ +M____BT0D-,'@!HM4)#2-!)#'A`6D"P```````(!]*P`/A<T#``#IYP0``,=$ +M)`@`````QT0D!`8```"+3"0\B0PDZ/S___^+7"0TB5PD!(DL).C\____B=C! +MX`:-!)B-%"B+@L`+``"I```0`'0+)?__[_^)@L`+``"+1"0\@\`LBU0D/#E" +M+`^$'@(``(E$)!2+3"04B0PDZ/S___^-6.")7"1$C5`(.5`(#X32`0``@\,H +MB5PD&(M$)!B)!"3H_/___XU8^(![)0UU&HV0_````(M#+(L`BT`4B50D!(D$ +M).C\____BQ.+0P2)0@2)$(![3P!T&HDL).C\____QP0D`0```.C\____@'M/ +M`'7FBT,@A<`/A#H!``#'0&``````@'M/``^$I````&:#?5P`#X29````OP`` +M``"0C70F`(T$O0`````#A=`%``"+,(7V=&T/MT809CM#''5C9CV%`'==#[?` +M@+PHO`0``/]T4(M5``^W1AYFP>@%#[?`C02%``,``(F"<`$``(M5``^W3AZ# +MX1^X`0```-/@B8)T`0``QD84(<=$)`@`````B70D!(DL).C\____C;8````` +M@\<!#[=%7#GX#X]Q____]D,H!'4?B2PDZ/S___^+0R#'1"0(`0```(E$)`2) +M+"3H_/___XM#(`^V4`(/MD`!B50D"(E$)`3'!"2P`0``Z/S___^+0R"+E4@% +M``")1"0(B50D!,<$)`$```#H_/___XM#((N52`4``(E$)`B)5"0$QP0D!@`` +M`.C\____QT,@`````(M4)#R`:@H!BTPD1(!I,`&)7"0$B2PDZ/S___^+1"08 +MBUPD1#E#*`^%-?[__XM4)#R`:AP!BTPD1(E,)`2)+"3H_/___XM$)!2+7"0\ +M.4,L#X7F_?__BT0D/(/`.(M4)#PY0C@/A`4!``"^`````(G'B3PDZ/S___^) +MPX!X3P!T-HU&`8'^?Y:8`'8$B<;K)XG&B2PDZ/S____'!"0!````Z/S___^` +M>T\`=`N#Q@&!_H&6F`!UVXM#((7`#X2,````QT!@`````/9#*`1U'XDL).C\ +M____BT,@QT0D"`$```")1"0$B2PDZ/S___^+0R`/ME`"#[9``8E4)`B)1"0$ +MQP0DL`$``.C\____BT,@BY5(!0``B40D"(E4)`3'!"0!````Z/S___^+0R"+ +ME4@%``")1"0(B50D!,<$)`8```#H_/___\=#(`````"+3"0\@&D*`8E<)`2) +M+"3H_/___XM<)#PY>S@/A0+___^+1"0\B40D!(DL).C\____BT0D-,'@!HM4 +M)#2-!)#'A`6D"P```````.DI_/__QT0D2``````/MDPD0XE,)"B+7"18@</0 +M`0``B5PD)`^V?"1(B?@/ML")1"14BT0D*`^V3"14T_BH`74,B?LX7"0S#X7& +M````B?@\`W9CBU0D6,>"<`$``,0!``"+3"0XBP&C`````(M,)%2#X0.-#$F[ +M!P```-/CB=X)QHM$)#B),,<$).@#``#H_/____?3(?.+5"0XB1J+3"14BUPD +M)(T4BXL"HP````"#R`B)`NM=BT0D6,>`<`$``*@!``"+5"0XBP*C`````(M, +M)%2#X0.-#$F[!P```-/CB=X)QHDRQP0DZ`,``.C\____]],AWHM,)#B),8M< +M)%2+1"0DC128BP*C`````(/("(D"@T0D2`&-1P$X12L/AP#___^#Q%Q;7E]= +MPY"-M"8`````55=64X/L'(M\)#"+="0T#[9O*XGHA,!T+`^V5@F[`````/;" +M`703ZQR-M"8`````B=")V=/XJ`%U$(/#`8GH.,-U[>L%NP````#V1@@"=0B- +M1C@Y1CAU:HDT).C\____A,!T3XD\).C\____B<&%P'10BU8\B48\C48XB0&) +M402)"H!&"@&)<2S&020%QD$E`,9!30_'1"0,`0```,=$)`@!````B4PD!(DT +M).C\____ZP\/ML.)1"0$B3PDZ/S___^#Q!Q;7E]=PXVV`````%575E.#[`R+ +M;"0@#[9\)"2)^`^VP(E$)`B)QL'F`KL`````QP0D$"<``.C\____B?J`^@-V +M&HM%``70`0```?"+`*,`````P>@4@^`!ZQF0BT4`!=`!``"-!`:+`*,````` +MP>@4@^`!A,!U"H/#`6:!^RP!=:V+1"0(B40D!(DL).C\____B2PDZ/S___^+ +M1"0(P>`&BU0D"(T$D`'H]H"A"P```702BX"D"P``B40D!(DL).C\____@\0, +M6UY?7</K#9"0D)"0D)"0D)"0D)!55U93@^P<#[9$)#2(1"0:BWPD,`^V\(GP +MP>`&C02PBZP'I`L``(7M#X2J`0``N/[___^)\=/`A$4)#X68`0``C44L.44L +M=0V`?0H`=2F)]ND#`P``#[9$)!J)PL'B!HV$@I`+``"-1`<,B00DZ/S____I +MX0(``,9$)!L`C74XD(DT).C\____B<.+1@2)7@2),XE#!(D8@'LE``^%'P$` +M``^W0QR#O(>\`@```'41@WL@``^$Z````(VT)@`````/MT,<BX2'O`(``(-X +M<``/A*T```#&@[0`````#[93)(G0@^`&@_@&=3;VP@%T,<9#)@7&0R<$#[9# +M38M3,(M++(E<)`R)1"0(B50D!(D,).C\____Z:8```"-M@`````/ME,DB="# +MX`:#^`1U(O;"`70=QD,F`\9#)P2)7"0$B3PDZ/S____K=XVT)@`````/ME,D +MB="#X`:#^`9U8O;"`75=QD,G!L9#)@5FQX.4``````")7"0$B3PDZ/S____K +M/HM#((N72`4``(E$)`B)5"0$QP0D!````.C\____ZQ\/MT,<BY=(!0``B40D +M"(E4)`3'!"0"````Z/S___^0@$0D&P$/MD0D&SA%"@^&A0$``.FH_O__C2RU +M`````+L`````QP0D$"<``.C\____@'PD&@-V&8L'!=`!```!Z(L`HP````#! +MZ!2#X`'K%Y"+!P70`0```>B+`*,`````P>@4@^`!A,!U"H/#`6:!^RP!=;") +M="0$B3PDZ/S___^)/"3H_/___XGPP>`&C02PB[0'I`L``(7V#X3Y````@'\K +M`'0TNP````"-M@`````/MLL/MD8)T_BH`704QT0D"`````")3"0$B3PDZ/S_ +M__^#PP$X7RMWUP^V1"0:B<+!X@:-A(*0"P``C40'#(E&&(U&+#E&+'4JC48X +M.48X=2+K<8D<).C\____C6C@BU,$B4,$B1B)4`2)`H-]#`!T%.L-O0````"- +M7BR0C70F`#E>+'7.A>UT7\9%,@"`?RL`=%6Z`````+L`````C78`#[9&"8G1 +MT_BH`70.#[;#B%0%0(!%,@&#PP&#P@$X5RMV)NO<]D8&`70.B70D!(D\).C\ +M____ZQ#'1"0$`````(DT).C\____@\0<6UY?7<-55U93@^P,BWPD((L?BV\H +M#[9S*XGPA,!T5XV#G`L``+D`````.?AU'NM&D(UT)@`/ML&)PL'B!HV$@I`+ +M``"-1`,,.?AT"8/!`8GP.,%UX(#Y`W8ABP,%T`$```^VT8T4D(L"HP````#! +MZ!2#X`'K'[D`````BP,%T`$```^VT8T4D(L"HP````#!Z!2#X`&$P'05#[;! +MB6PD"(E$)`2)'"3H_/___^L/#[;!B40D!(D<).C\____@\0,6UY?7<-55U93 +M@^P<BUPD-(M$)#")1"04BWA4BS?V1P@0=`3&0#4&BU0D%`^V0C4\`71U/`%R +M&3P$#X26````/`:-="8`#X4Z`P``Z:<!``"+3"04QD$U`8E,)`2)-"3H_/__ +M_\9#%(&`3P@(@WM4`'0/C4-4B40D!(DT).C\____C9;H````BX;H````B5@$ +MB0.)4P2)GN@```")-"3H_/___^G=`@``@&<(]XM$)!2`0#8!QD`U`,9#%`*) +M7"0$B30DZ/S___^)-"3H_/___^FP`@``#[9'"(/@]X/($(A'"(M,)!2+D9@` +M``"-0@&)@9@```"#^@(/A_D```"#>U0`=`^-0U2)1"0$B30DZ/S___^-EN@` +M``"+AN@```")6`2)`XE3!(F>Z````(M$)!2`>"8`=0N`?PH`=2+II````,=$ +M)`@`````QT0D!`(```")/"3H_/___^DF`@``QD0D&P"-;SB)+"3H_/___XG# +MBT4$B5T$B2N)0P2)&(M3((72=!Z+AD@%``")5"0(B40D!,<$)`4```#H_/__ +M_X!+*`*)7"0(QT0D!`8```")/"3H_/___X![3P!T&HDT).C\____QP0D`0`` +M`.C\____@'M/`'7F@$0D&P$/ME0D&SA7"G>!BTPD%(D,).C\____Z8X!``"` +M9PCWBT0D%,>`F`````````"#>U0`=`^-0U2)1"0$B30DZ/S___^-EN@```"+ +MAN@```")6`2)`XE3!(F>Z````,=$)`@`````QT0D!`8```")/"3H_/___XU' +M.#E'.`^$E@```(G%C;0F`````(DL).C\____B<.+0""%P'1GQT!@`````(DT +M).C\____BT,@QT0D"`$```")1"0$B30DZ/S___^+0R"+ED@%``")1"0(B50D +M!,<$)`$```#H_/___XM#((N62`4``(E$)`B)5"0$QP0D!@```.C\____QT,@ +M`````(E<)`2)-"3H_/___SEO.`^%<____XM4)!2)5"0$B30DZ/S____'1R@` +M````BP:+D%@!``")%0````"%TG0(BP:)D%@!``#V1P8!=%R`?BL`="&Y```` +M`/9'"0%T#.L4#[9'"=/XJ`%U#X/!`3A.*W?NZP6Y``````^VV8E<)`2)-"3H +M_/___XE\)`2)-"3H_/___XG8P>`&C1R8QX0>I`L```````")]H/$'%M>7UW# +MD(VT)@````"#["R)7"0<B70D((E\)"2);"0HBWPD-(MT)#"+1BR)1"08BR@/ +MMT\>B<AFP>@%#[?8@^$?N`$```#3X(5$G6`/A>\#``"+50"-!)T``P``B8)P +M`0``BT4`BY!T`0``B14`````QD<4(8M')"7___\`/>$!#P!U(8D\).C\____ +MQT0D"`````")?"0$B2PDZ/S____IG`,```^W3QZ#X1^X`0```-/@A<)T%HD\ +M).C\____B2PDZ/S___^-M@`````/MH:T````/`0/AV4#```/ML#_)(7H$@`` +MQH:T`````<=$)`@!````B7PD!(M4)!B)%"3H_/___^DW`P``QH:T`````L=$ +M)`@(````B7PD!(M$)!B)!"3H_/___^D3`P``QH:T`````XET)`C'1"0$(0`` +M`(M4)!B)%"3H_/___XM6,(72="T/MD9-QT0D$`````#'1"0,`0```(E$)`B) +M5"0$BT0D&(D$).C\____Z<`"``"+5"08#[9""<=$)`@`````B40D!(DL).C\ +M____Z9\"``#&AK0````$@WXP`'1(B70D",=$)`0A````BT0D&(D$).C\____ +M#[9&38M6,,=$)!``````QT0D#`(```")1"0(B50D!(M4)!B)%"3H_/___^E* +M`@``QT0D"`````#'1"0$(0```(M$)!B)!"3H_/___XM4)!@/MD()QT0D"`$` +M``")1"0$B2PDZ/S____I#0(``(!^)O]T'8ET)`C'1"0$!@```(M$)!B)!"3H +M_/___^GJ`0``B70D",=$)`0&````BU0D&(D4).C\____BTX@A<ET$HM1!(U" +M`8E!!(/Z!0^&N0$``,9&)P'&1B8`@'Y/`'0AC;0F`````(DL).C\____QP0D +M`0```.C\____@'Y/`'7F@WXP`(GV=!2+5@B+1@R)0@2)$(M&,(!H,`'K$XM6 +M-(72=`P/MD9-QT2"/`````"+%HM&!(E"!(D0BT0D&(!H"@&+EN0```"%TG0; +M#[:&V0```,=$)`@!````B40D!(D4).C\____BU8PA=)T&`^V1DW'1"0(`0`` +M`(E$)`2)%"3H_/___XM&((7`#X2&````QT!@`````(DL).C\____BT8@QT0D +M"`$```")1"0$B2PDZ/S___^+1B`/ME`"#[9``8E4)`B)1"0$QP0DL`$``.C\ +M____BT8@BY5(!0``B40D"(E4)`3'!"0!````Z/S___^+1B"+E4@%``")1"0( +MB50D!,<$)`8```#H_/___\=&(`````")="0$B2PDZ/S___^+5"08@'H%_W1> +MO@````"`>@H`=#B^`````(M<)!B#PSB-=@")'"3H_/___XM3!(E#!(D8B5`$ +MB0*`>";_=0Z#Q@&)\(M4)!@X0@IWUXGPBU0D&#A""G<0QD(%_XE4)`2)+"3H +M_/___XM<)!R+="0@BWPD)(ML)"B#Q"S#D(VT)@````!55U93@>R,````B[PD +MH````(M'5(E$)'B+*(N%L`H``(L`B40D?(E\)`2)+"3H_/___X!_-@%V!,9' +M-02-7Q0Y7Q0/A+@!``")'"3H_/___XE$)'2+1Q2+5"1TB5`$B0*)6@2)5Q2% +MT@^$G`,```^W<AZ+3"1XBT$8#[9`!`^V52D/MDTB#[9=(8ET)!2)1"00B50D +M#(E,)`B)7"0$QP0D5`<``.C\____BT0D=`^W0!Z)1"18:?"P!````[5H"@`` +MBYT@"@``BU0D=(D4).C\____BXXL!```B4PD2(N6*`0``(N.)`0``(NV(`0` +M`(M$)'0/MT`>B40D!(M$)$B)1"04B50D$(E,)`R)="0(QP0DA`<``.C\____ +MBU0D6,'B!@'3BTLTB4PD2(M3,(M++(MS*(M#)(E$)%R+0R")1"1@BT,<B40D +M9(M#&(E$)&B+0Q2)1"1LBT,0B40D<(M##(F$)(@```"+0PB)A"2$````BT,$ +MB80D@````(L;BT0D2(E$)#B)5"0TB4PD,(ET)"R+5"1<B50D*(M,)&")3"0D +MBT0D9(E$)""+5"1HB50D'(M,)&R)3"08BT0D<(E$)!2+E"2(````B50D$(N, +M)(0```")3"0,BX0D@````(E$)`B)7"0$QP0D_`8``.C\____9H-]7`!U1NGE +M`0``D(M4)'B+0A@/MD`$#[95*0^V32(/METAQT0D%/___P")1"00B50D#(E, +M)`B)7"0$QP0D5`<``.C\____Z04"``"^`````(V-0`D``(E,)%"-A>@```") +M1"1,C;0F``````^WQL'@`@.%T`4``(L8A=L/A&$!```/MT,09CE')`^%4P$` +M``^WE98+```Y5"1\=$6#P@$/MX6:"P``.<(9P"'"BX6P"@``@\`$BP20J0`` +M"`!U'&8E_P]F.?!U$SE<)'1U$XDL).C\____Z74!```[5"1\=;L/MT,09CV% +M`(GV#X?Q````#[?`@+P%O`0``/\/A.````"+5"1X@'HT``^%T@```/9"!@$/ +MA,@```"+50`/MT,>9L'H!0^WP(T$A0`#``")@G`!```/MTL>@^$?N@$```") +MT-/@B<&+10")B'0!```/MT,>P>`"`X70!0``QP``````#[=+'HG(9L'H!0^W +MP(E$)$B#X1^)T-/@B<'WT8M$)$@AC(74!0``#[=+'HG(9L'H!0^WP(/A']/B +M]](A5(5@.5PD='0BBP.+4P2)4`2)`HN%Z````(E8!(D#BU0D3(E3!(F=Z``` +M``^W0QZ)1"0$BTPD4(D,).C\____@&\I`8/&`68Y=5P/AWS^__^+1"1X]D`& +M`717BTPD=(L1BT$$B4($B1")3"0$B3PDZ/S____K.XM4)'B+0A@/MD`$#[95 +M*0^V32(/METAQT0D%/___P")1"00B50D#(E,)`B)7"0$QP0D5`<``.C\____ +M@<2,````6UY?7<-55U93@^QLBXPD@````(N4)(@```")5"1@BX0DC````(E$ +M)&2+`8E$)#P/MX0DA````,'@`HM<)#P#@]`%``"+.&:!?R3A`74W#[9')H/H +M$3P!=RR+<2B)="1$QT0D0``````+5"1D=6^+1"1$QD`U`,=$)$``````ZUV0 +MC70F`(M<)#R+DWP%``"XV"8!`&:!?Q"%`'<6#[='$(MT)#P/MH0&O`0``&G` +M*`$```'"B50D0,=$)$0`````BT0D8`M$)&1U$XM$)$#&@+0`````QT0D1``` +M``"`?Q2!=02`80CWBT0D8`M$)&0/A>````#&1Q0`]D=F(`^$J`4``(M'2(7` +M#X2=!0``B</V0&4"="&+2%B%R70:BU<TA=)T$XM'((E$)`B)5"0$B0PDZ/S_ +M__^+3"0\BY%$"@``@<)`"```BW0D0`^V1D+!X`@!PHL"HP````")PL'J$(A3 +M4\'H&&:)0TB+D40*``"!PD0(```/MD9"P>`(`<*+$HD5``````^VPF:)0TP/ +MML9FB4-.B=#!Z!`/ML!FB4-0P>H8B%-2BY%$"@``@<),"```#[9&0L'@"`'" +MBP*C``````^VP&:)0TKIW`0``(VV``````^W1QYIP+`$``"+5"0\`X)H"@`` +MB40D2(G%@<4@!```@'\4@'4*QD<4(8VV`````(-\)$``='*+7"1`@WL@``^% +MP0```(MW((ET)%@/MD--B40D-(M!&`^V2`2+5"0\#[9:*0^V<B(/MD(AB40D +M!(M$)&"+5"1DB40D'(E4)""+5"18B50D&(M$)#2)1"04B4PD$(E<)`R)="0( +MQP0DM`<``.C\____ZUV#?"1$`'16BU<@B50D7(M!&`^V2`2+="0\#[9>*0^V +M=B*+1"0\#[9`(8E$)`2+1"1@BU0D9(E$)!B)5"0<BU0D7(E4)!2)3"00B5PD +M#(ET)`C'!"3P!P``Z/S___^+10R+50B+302+70`/MW<>B40D%(E4)!")3"0, +MB5PD"(ET)`3'!"0L"```Z/S___^+3"1(]D$B`0^$Q````(U?/(E<)$R+=U2) +M="14BT,$#[93`8E$)`B)5"0$QP0D#`(``.C\____@'\\``^$/P$``,9$)%,` +MC70F``^V="13C01VP>`"BU0D3(M*"`'!B<.+5"14`UH(BT,(B40D.(L#BU,$ +MB40D*(E4)"R+:0B+602+"8M4)#B)5"0<BT0D*(M4)"R)1"04B50D&(EL)!") +M3"0(B5PD#(ET)`3'!"1<"```Z/S___^`1"13`0^V5"13BTPD3#@1#X:S```` +MZ7C___^+7"1(@'LG``^)H`````^W5QZ)T&;!Z`4/M\`/M]*)1"0(B50D!,<$ +M)"@"``#H_/___XMT)#R+AN`%``"+EMP%``"+CM@%``"+GM0%``")1"00B50D +M#(E,)`B)7"0$QP0D/P(``.C\____#[=''HE$)`3'!"1;`@``Z/S___^+%@^W +M1QYFP>@%#[?`C02%``,``(F"<`$``(L6#[=/'H/A'[@!````T^")@G0!``!F +M@7\DX0%U(@^V1R:#Z!$\`7<7BT0D1(D$).C\____Z?P!``"-M@`````/ME0D +M8_;"`0^$P@$``(M')"7___\`/>$!#@`/A*\!``"+3"0\BY%$"@``@<)`"``` +MBUPD0`^V0T+!X`@!PHLRB34`````BY%$"@``@<)$"```#[9#0L'@"`'"BRJ) +M+0````"+D40*``"!PD@(```/MD-"P>`(`<*+&HD=`````(N11`H``('"3`@` +M`(M,)$`/MD%"P>`(`<*+`J,`````B40D$(E<)`R);"0(B70D!,<$)&P"``#H +M_/____9'9B`/A,T```"+3TC&0680QD<4((GPP>@0B$%3B?#!Z!AFB4%(B=[! +MY@B)Z`^VT(T$%F:)04R)WF:!Y@#_B>@/MM2-!!9FB4%.B=K!ZA#!X@B)Z,'H +M$`^VP`'"9HE14(M<)#R+DT0*``"!PDP(``"+="1`#[9&0L'@"`'"BP*C```` +M``^VP&:)04H/MU%,#[=93@^W25`/M\")5"00B5PD#(E,)`B)1"0$QP0DB0(` +M`.C\____BT0D/(N01`H``('"0`@```^V1D+!X`@!PL<"`````.MC9H%_).$! +M=1T/MD<F@^@:/`%W$L<$))0(``#H_/___\9'%"'K/HE\)`2+5"0\B10DZ/S_ +M___K+(VV`````(32>2*+3"0\BP&+B%@!``")#0````"%R70,BUPD/(L#B8A8 +M`0``@\1L6UY?7<.)]E.#[`B+7"04BTPD$`^V0R0Y2QAU03P(=%8\*'12/*B0 +M=$T\B'1)/`IT13PJC70F`'0]/*IT.3R*=#6+@>@```")6`2)`XV!Z````(E# +M!(F9Z````.L9BY'L````B9GL````C8'H````B0.)4P2)&HD,).C\____@\0( +M6\.-="8`@^P,BT0D%(E$)`2+1"00B00DZ/S___^#Q`S#D(UT)@!3@^Q8BUPD +M8(U$)$J)1"0TC40D3(E$)#"-1"1$B40D+(U$)$:)1"0HC40D4(E$)"2-1"12 +MB40D((U$)%.)1"0<C40D3HE$)!B-1"14B40D%(U$)$B)1"00C40D58E$)`R- +M1"16B40D"(U$)%>)1"0$#[=#)(D$).C\____#[9$)%>)1"0(#[9$)%:)1"0$ +MC40D0(D$).C\____QT0D#`$````/MD0D5VG`*`$``(E$)`B+0Q")1"0$C8-D +M!0``B00DZ/S____'1"0,`0````^V1"15:<"P````B40D"(M#$(E$)`2-@X`% +M``")!"3H_/___\=$)`P!````#[9$)%9IP!0-``")1"0(BT,0B40D!(V#G`4` +M`(D$).C\____QT0D#`$````/MT0D4,'@`HE$)`B+0Q")1"0$C8.X!0``B00D +MZ/S____'1"0,`0````^W1"1(:\!PB40D"(M#$(E$)`2-@V0&``")!"3H_/__ +M_\=$)`P!````#[9$)%0/MU0D2`^OPHT$0,'@`HE$)`B+0Q")1"0$C8,4!@`` +MB00DZ/S____'1"0,`0```,=$)`@``@``BT,0B40D!(V#,`8``(D$).C\____ +M#[9$)%>)1"0,QT0D"``(``"+0Q")1"0$C8,,!P``B00DZ/S____'1"0,`0`` +M``^V1"13C02`P>`"B40D"(M#$(E$)`2-@YP&``")!"3H_/___\=$)`P!```` +MQT0D"*````"+0Q")1"0$C8.X!@``B00DZ/S____'1"0,`0````^V1"12:<"8 +M````B40D"(M#$(E$)`2-@]0&``")!"3H_/___\=$)`P!````#[=$)$Z-!$#! +MX`.)1"0(BT,0B40D!(V#\`8``(D$).C\____QT0D#`$````/MT0D4`'`B40D +M"(M#$(E$)`2-@R0)``")!"3H_/___\=$)`P!````#[9$)%<!P(E$)`B+0Q") +M1"0$C8-,"0``B00DZ/S____'1"0,`0````^V1"15`<")1"0(BT,0B40D!(V# +M=`D``(D$).C\____QT0D#`$````/MD0D5@'`B40D"(M#$(E$)`2-@YP)``") +M!"3H_/___\=$)`P!````#[9#)@'`B40D"(M#$(E$)`2-@\0)``")!"3H_/__ +M_\=$)`P!````#[=$)$;!X`6)1"0(BT,0B40D!(V#@`8``(D$).C\____QT0D +M#`$```"+1"1`B40D"(M#$(E$)`2-@^P)``")!"3H_/___\=$)!`!````QT0D +M#$`````/MT0D4,'@!HE$)`B+0Q")1"0$C8,("@``B00DZ/S____'1"00`0`` +M`,=$)`P``0``QT0D"``9``"+0Q")1"0$C8,L"@``B00DZ/S____'1"00`0`` +M`,=$)`R`````#[=$)%!IP+`$``")1"0(BT,0B40D!(V#4`H``(D$).C\____ +MQT0D$`$```#'1"0,!`````^W1"1,P>`"B40D"(M#$(E$)`2-@W0*``")!"3H +M_/___\=$)!`!````QT0D#`0````/MT0D2L'@`HE$)`B+0Q")1"0$C8.8"@`` +MB00DZ/S____'1"00`0```,=$)`P(````#[9$)%/!X`N)1"0(BT,0B40D!(V# +MO`H``(D$).C\____QT0D$`$```#'1"0,"````,=$)`@```@`BT,0B40D!(V# +MX`H``(D$).C\____QT0D$`$```#'1"0,"`````^W1"1.:<",`0``B40D"(M# +M$(E$)`2!PP0+``")'"3H_/___[@`````@\186\.-=@"#["R)7"0<B70D((E\ +M)"2);"0HBVPD,(M%`(E$)!2-72R)'"3H_/___XG&C5#@B50D&(M$)!2)!"3H +M_/___XG'BT4PB74PBU0D&(E:((E")(DPN`$```"%_P^$@````,9').'&1R4! +MQD<F$(!/)P&+5"0TBX*<````B4=(BT=,B5`<B=`%D````(E'.,9'%<R+5"08 +M#[9",V:)1Q"+10")1QC'1R"0````BT0D-(E'-,=';/`-`@#'1"0$`````(U' +M/(D$).C\____B7PD!(M4)!2)%"3H_/___[@`````BUPD'(MT)""+?"0DBVPD +M*(/$+,.-M@````"-O"<`````55=64X/L'(MT)##'1"08`````(M4)!@/MH0R +M0@4``#S_#X3,````#[;0:\)<C8P&3`$``(E,)!2`O`96`0````^$K0```+\` +M````B40D$(VL!H0!``"-A`9``0``B40D#(DL).C\____B<.+1"00`?"+D(@! +M``")F(@!``")*XE3!(D:BT,@A<!T'HE$)`B+AD@%``")1"0$QP0D!0```.C\ +M____@$LH`HE<)`C'1"0$`@```(M$)!2)!"3H_/___X![3P!T&HDT).C\____ +MQP0D`0```.C\____@'M/`'7F@\<!B?J+3"0,.%$6#X=N____@T0D&`&#?"08 +M!`^%$/___XDT).C\____@\0<6UY?7<.-M@````"-O"<`````55=64X/L?(N$ +M))````#&0#D`QD`X`,9`-P#&@+T,````B<*!PIP+``"X`````(GVQ@00`(/` +M`3T0`0``=?*+A"20````!>@```"+E"20````B8+H````B8+L````B=`%\``` +M`(F"\````(F"]````('"^````(E4)$2+C"20````B9'X````B9'\````B<^! +MQP`!``")N0`!``")N00!``"!P0@!``")3"1,BYPDD````(F+"`$``(F+#`$` +M`('#$`$``(E<)%"+M"20````B9X0`0``B9X4`0``B?6!Q2`!``")KB`!``") +MKB0!``"!QB@!``")="1(BX0DD````(FP*`$``(FP+`$```48`0``B40D5(N4 +M))````")@A@!``")@AP!``"-1"1VB40D-(U$)'B)1"0PC40D:(E$)"R-1"1N +MB40D*(U$)'J)1"0DC40D<(E$)""-1"1QB40D'(U$)&R)1"08C40D<XE$)!2- +M1"1JB40D$(U$)'*)1"0,C40D=(E$)`B-1"1UB40D!`^W0B2)!"3H_/___P^V +M1"1UBXPDD````(A!+@^V1"1TB$$O#[9$)'*(@>4````/MT0D>F:)05P/MT0D +M>&:)@9@+```/MT0D=H/H`6:)@9H+```/MT0D:F:)03H/MT$D9CV`D70*9CV` +ME`^%X0H``(N<))````#&0S4$QD,K!,9#-D#&0S0`QH/B````"<9#+`")V`5D +M!0``B00DZ/S___^)PHF#?`4```^V1"1U:<`H`0``A<!T"\8"`(/"`8/H`77U +MBX0DD`````6`!0``B00DZ/S___^)PHNT))````")AI@%```/MD0D<FG`L``` +M`(7`=`O&`@"#P@&#Z`%U]8N$))`````%G`4``(D$).C\____B<*+A"20```` +MB9"T!0``#[9$)'1IP!0-``"%P'0+Q@(`@\(!@^@!=?6+A"20````!;@%``") +M!"3H_/___XG"BXPDD````(F!T`4```^W1"1ZP>`"A<!T"\8"`(/"`8/H`77U +MBX0DD`````4P!@``B00DZ/S___^+G"20````B8-(!@``B=@%%`8``(D$).C\ +M____B<.+M"20````B88L!@``B?`%9`8``(D$).C\____B<*)AGP&``!F@WPD +M:@!T1KD`````B5I$#[9$)'.(0CR+M"20````BX;\````B9;\````BW0D1(DR +MB4($B1`/MD0D<XT$0(T<@X/"<(/!`68Y3"1J=[^+A"20````!8`&``")!"3H +M_/___XG"BX0DD````(F0F`8``&:#?"1N`'0PN0````#&0@@`BYPDD````(N# +M!`$``(F3!`$``(DZB4($B1"#PB"#P0%F.4PD;G?5BX0DD`````6<!@``B00D +MZ/S___^)PHNT))````")AK0&``"`?"1Q`'0SN0````"+G"20````BX,,`0`` +MB9,,`0``BW0D3(DRB4($B1"#PA2#P0$/MD0D<68YR'?2BX0DD`````6X!@`` +MB00DZ/S___^)PHN$))````")D-`&``"-BJ````"+G"20````BX,4`0``B9,4 +M`0``BW0D4(DRB4($B1"#PA0YRG7;B=@%U`8``(D$).C\____B<*)@^P&``"` +M?"1P`'0RN0````"+G"20````BX,D`0``B9,D`0``B2J)0@2)$('"F````(/! +M`0^V1"1P9CG(=].+A"20````!?`&``")!"3H_/___XG"B[0DD````(F&"`<` +M`&:#?"1L`'0PN0````"+G"20````BX,<`0``B9,<`0``BW0D5(DRB4($B1"# +MPAB#P0%F.4PD;'?5@'PD=0!T3[L`````B[0DD````('&#`<``(DT).C\____ +M#[?3BXPDD````(F$D20'``"+D2P!``")@2P!``"+3"1(B0B)4`2)`H/#`0^V +M1"1U9CG8=\.+A"20````!20)``")!"3H_/___XN<))````")@SP)``")@T`) +M```/MT0D>F:)@T8)```/M\")1"0$B=@%0`D``(D$).C\____B=@%3`D``(D$ +M).C\____B8-D"0``B8-H"0``#[9$)'5FB8-N"0``#[?`B40D!(G8!6@)``") +M!"3H_/___XG8!70)``")!"3H_/___XF#C`D``(F#D`D```^V1"1R9HF#E@D` +M``^WP(E$)`2)V`60"0``B00DZ/S___^)V`6<"0``B00DZ/S___^)@[0)``") +M@[@)```/MD0D=&:)@[X)```/M\")1"0$B=@%N`D``(D$).C\____B=@%Q`D` +M`(D$).C\____B8/<"0``B8/@"0``#[9#)F:)@^8)```/MD,FB40D!(G8!>`) +M``")!"3H_/___XG8!>P)``")!"3H_/___XG"B8,$"@``#[9$)'1IP'0$``") +MP8'!=$4``'0/B=")RL8``(/``8/J`77UB[0DD````(N&!`H``(D(BY8$"@`` +M#[9$)'2(0@0/MD0D=(E$)`B)3"0$BX8$"@``B00DZ/S___^]`````(!^)@`/ +MA*<```"_``````^WWVO;7(N$))````"-K!A,`0``C00#C;!``0``B?J(5A#& +M1A$`BXPDD````(F(3`$``,9&%@#&@(`!````QH!H`0```,>`I`$```````"- +ME!E@`0``C4H,B8AL`0``B8AP`0``@\(8B9!X`0``B9!\`0``BXPDD````(V4 +M&80!``")D(0!``")D(@!``#&1A("@\<!#[9!)F8Y^`^'7O___XN<))````#& +M0S0`QH-"!0``_\:#0P4``/_&@T0%``#_QH-%!0``_X!\)'4`#X2#````NP`` +M```/M\MIT2@!``"+M"20````BX9\!0``QD00)P&+AGP%``#&1`(F`(N&?`4` +M`,9$`DS_BX9\!0``QD0"0O^+AGP%``!FQX0"E```````QX2.O`(```````") +MT0..?`4``(U!$(E!$`.6?`4``(U"$(E"%(/#`0^V1"1U9CG8=X*+A"20```` +M9L>`X```````N`````"+E"20````QH00O`0``/^#P`$]A@```'7G@'PD=``/ +MA*T```"[``````^WPVG`%`T``(N,))````"+D;0%``#&1`(P`(N1M`4``,9$ +M$#$`BY&T!0``QT00#`````")P8NT))`````#CK0%``"-41")41")P0..M`4` +M`(U1$(E1%(G!`XZT!0``C5$8B5$8B<$#CK0%``"-41B)41R+EK0%``");!`( +MB<$#CK0%``"-42B)42@#AK0%``"-4"B)4"R#PP$/MD0D=&8YV`^'6/___XN$ +M))````#&@.,```"`@'PD<@!T?;L`````#[?3:=*P````BXPDD````(N!F`4` +M`&;'1!`R!`"+@9@%``#&1`(F`(N!F`4``,9$`BC_BX&8!0``QD0"-/^)T8NT +M))`````#CI@%``"-012)012)T0..F`4``(U!%(E!&(N&F`4``(EL`E2#PP$/ +MMD0D<F8YV'>(BX0DD````,:`Y````(*+A"20````!20*``")1"0$BX0DD``` +M``4("@``B00DZ/S___^+E"20````B8(@"@``B=`%2`H``(E$)`2-0.2)!"3H +M_/___XN,))````")@40*``")R`5L"@``B40D!(U`Y(D$).C\____BYPDD``` +M`(F#:`H``(G8!9`*``")1"0$C4#DB00DZ/S___^)@XP*``")V`6T"@``B40D +M!(U`Y(D$).C\____B8.P"@``B=@%V`H``(E$)`2-0.2)!"3H_/___XG!B8/4 +M"@``B[0DD````(N&V`H``(N6W`H``(!\)'$`=%J)PXG6OP````")S2G%BT0D +M3(D$).C\____C50=`(E0"(E8#(EP$(N,))````"+D0P!``")@0P!``"+3"1, +MB0B)4`2)`H'#``@``(/6`(/'`0^V1"1Q9CGX=[.+A"20````!?P*``")1"0$ +MBX0DD`````7@"@``B00DZ/S___^)1"18BYPDD````(F#^`H``(N$))````"+ +MF/P*``"+L``+``"_`````+T`````BU0D4(D4).C\____BU0D6`'ZB5`(B5@, +MB7`0BXPDD````(N1%`$``(F!%`$``(M,)%")"(E0!(D"@<,```$`@]8`@<<` +M``$`@]4`B?@U```(``GH=:J+A"20````!2`+``")1"0$BX0DD`````4$"P`` +MB00DZ/S___^)P8N<))````")@QP+``"+M"20````BX8@"P``BY8D"P``9H-\ +M)&P`=%>)PXG6OP````")S2G%BT0D5(D$).C\____C50=`(E0"(E8#(EP$(N, +M))````"+D1P!``")@1P!``"+3"14B0B)4`2)`H'#C`$``(/6`(/'`68Y?"1L +M=[:#Q'Q;7E]=PY"-M"8`````55=64X/L#(ML)""+?"0DBU]4#[9'*XE$)`B) +M;"0$B1PDZ/S___^)QF:#3S(0@'TK`'1)N0````#V0PD!=`SK/`^V0PG3^*@! +M=0R#P0$/MD4K9CG(=^IF@_D#=B6+10`%T`$```^WT8T4D(L"HP````#!Z!2# +M\`&#X`'K([D`````BT4`!=`!```/M]&-%)"+`J,`````P>@4@_`!@^`!A,!T +M%`^VP8E$)`2)+"3H_/___^F&`0``C4,X.4,X#X01`0``A?8/A`D!```/MD9- +MQT2'/`````"+%HM&!(E"!(D0B70D",=$)`0&````B1PDZ/S___^`?D\`=!^0 +MC70F`(DL).C\____QP0D`0```.C\____@'Y/`'7FBT8@A<!T5L=`8`````#V +M1B@$=0B)+"3H_/___XM&((N52`4``(E$)`B)5"0$QP0D`0```.C\____BT8@ +MBY5(!0``B40D"(E4)`3'!"0&````Z/S____'1B``````@&L*`8ET)`2)+"3H +M_/___XM%`(N06`$``(D5`````(72=`F+10")D%@!``#&1R8`9H-G,N^`?Q\` +M="*Z``````^WPHM$ASR%P'0&@'@F_W5U@\(!#[9''V8YT'?C@'\R`'@-O@`` +M``"`?Q\`=1#K3(E\)`2)+"3H_/___^M(#[?&BUR'/(7;="?V0R@"="&+0R"+ +ME4@%``")1"0(B50D!,<$)`8```#H_/___X!C*/V#Q@$/MD<?9CGP=\)FQT<R +M`@"`9RW]@\0,6UY?7<.-="8`C;PG`````%575E.![)P```"+A"2P````B40D +M=(M0+(E4)'R+.HN'L`H``(L`B80D@````(M,)'2)3"0$B3PDZ/S___^+;"1T +M@+VW`````78'QH6T````!(M$)'2#P!#'1"1X`````(M4)'0Y0A!T*HM<)'2# +MPQ")'"3H_/___XE$)'B+3"1TBT$0BVPD>(EH!(E%`(E=!(EI$(M$)'2#>"`` +M=5>]____`(-\)'@`=`B+5"1X#[=J'HM,)'0/MG%-BU0D?(M"&`^V0`0/ME<I +M#[9/(@^V7R&);"08B70D%(E$)!")5"0,B4PD"(E<)`3'!"2X"```Z/S___^# +M?"1X``^$8P0``(M,)'@/MTD>B4PD5&GQL`0```.W:`H``(N?(`H``(ML)'B) +M+"3H_/___XN&+`0``(E$)$"+EB@$``"+CB0$``"+MB`$``"+1"1X#[=H'HM$ +M)$")1"04B50D$(E,)`R)="0(B6PD!,<$)(0'``#H_/___XM$)%3!X`8!PXM3 +M-(E4)$"+4S"+2RR+<RB+:R2);"18BT,@B40D7(MK'(EL)&"+0QB)1"1DBVL4 +MB6PD:(M#$(E$)&R+:PR+0PB)A"24````BT,$B80DD````(L;BT0D0(E$)#B) +M5"0TB4PD,(ET)"R+5"18B50D*(M,)%R)3"0DBT0D8(E$)""+5"1DB50D'(M, +M)&B)3"08BT0D;(E$)!2);"00BY0DE````(E4)`R+C"20````B4PD"(E<)`3' +M!"3\!@``Z/S___^+;"1X@\4\B:PDA````(M$)'B+0%2)A"2,````BT4$#[95 +M`8E$)`B)5"0$QP0D#`(``.C\____@'T!``^$G@```,:$)(L`````#[:T)(L` +M``"-!';!X`*+E"2$````BTH(`<&)PXNL)(P````#70B+0PB)1"1PBP.+4P2) +M1"1`B50D1(MI"(M9!(L)BU0D<(E4)!R+1"1`BU0D1(E$)!2)5"08B6PD$(E, +M)`B)7"0,B70D!,<$)%P(``#H_/___X"$)(L````!#[:4)(L```"+C"2$```` +M.%$!#X=J____9H-_7``/A`@"``"^`````(VO0`D``(V'Z````(E$)%"-M@`` +M```/M\;!X`(#A]`%``"+&(7;#X3*`0``#[=#$(M4)'1F.4(<#X6X`0``#[>7 +ME@L``#F4)(````!T88/"`0^WAYH+```YPAG`(<*+A[`*``"#P`2+!)"I```( +M`'4U9B7_#V8Y\'4L.5PD>'4OBTPD>`^W01Z)1"0$QP0DG0(``.C\____B3PD +MZ/S____IDP$``)`[E"2`````=9^+1"1\@'@T``^%.0$```^W0Q!F/84`#X<K +M`0``#[?`@+P'O`0``/\/A!H!``"#O"2P``````^$\0```(M4)'0/MD(D@^`% +M@_@%#X7=````BQ</MT,>9L'H!0^WP(T$A0`#``")@G`!```/MTL>@^$?N@$` +M``")T-/@B<&+!XF(=`$```^W0Q[!X`(#A]`%``#'```````/MTL>B<AFP>@% +M#[?`B40D3(/A'XG0T^")P??1BT0D3"&,A]0%```/MTL>B<AFP>@%#[?`@^$? +MT^+WTB%4AV`[7"1X=#>+$XM#!(E"!(D0@WM4`'0/C4-4B40D!(D\).C\____ +MBX?H````B5@$B0.+5"10B5,$B9_H````#[=#'HE$)`2)+"3H_/___XM,)'2` +M:4\!ZQN+1"1\]D`&`G01B5PD!(M4)'2)%"3H_/___Y"#Q@%F.7=<#X<3_O__ +M@[PDL`````!T*XM,)'0/MD$D@^`%@_@%=1N+;"1XBU4`BT4$B4($B1");"0$ +MB0PDZ/S___^!Q)P```!;7E]=PY"0D%575E.#[`R+?"0@#[9T)"0/MD0D+(A$ +M)`N+1RR+"+H`````#[9<)"@!\XA<)`.)]@^VA`J\!```//]T1@^VP&G`*`$` +M`(E$)`0#@7P%``")\SB8V@```'4I.;CD````=2$/MEPD`XB8V0```(N!?`4` +M``^V7"0+BVPD!(B<!=@```"#P@&!^H````!UHX/$#%M>7UW#C70F`(V\)P`` +M``"#[`B)'"2)="0$BW0D&`^V7"00#[94)!2+1"0,BT@P#[:!D````#Q/=RD/ +MML"-!(`!VHB4P94````/MH&0````C02`B?*(E,&4````@(&0`````8L<)(MT +M)`2#Q`C#B?975E.+?"00#[=$)!2[_____V:%P'1!N_____^Y`````(/H`0^W +M\`^V%#F-0M`\"7<7@/O_#Y3`@^@!(<,/ML.-!("-7$+0ZP6`^_]U"H/!`8U& +M`3G!=<\/ML-;7E_#B?955U93BVPD%`^V="08#[9\)!R+12R+"+H`````C70F +M``^VA`J\!```//]T*P^VP&G`*`$```.!?`4``#FHY````'44B?,XF-D```!U +M"HGZB)#;````ZPN#P@&!^H````!UOEM>7UW#B?:-O"<`````55=64X/L!(MT +M)!@/MGPD'`^V1"0DB$0D`XM&+(L8BVXPN0`````/MH09O`0``#S_=$8/ML!I +MP"@!``")P@.3?`4``#FRY````'4MB?@X@MD```!U(X!\)`,`=`Z+@N````"+ +M5"0@B0+K&8M,)""+`8F"X````.L+@\$!@?F`````=:.)ZKD`````C;8````` +M#[:"E````#P!=CD\%W0UB?@X@I4```!U*X!\)`,`=!*-!(F+A,68````BU0D +M((D"ZQV-%(F+3"0@BP&)A-68````ZPN#P0&#PBB#^5!UL8/$!%M>7UW#B?:- +MO"<`````55=64X/L(`^V;"0XBT0D-(NPZ`````^V1@+!X`@/ME8#C3P0#[?' +M@\`$/0`(```/C^T```")ZH32=$Z+3"0T#[:1W````(G3@^/@#[9&`8/@#XG1 +M@^$0"=@)R(G3@^,(@^#SB=�)V`G(@^("@^#\BUPD-`^VB]P```"#X0$) +MT`G(B$8!ZTP/ME8!B=.#X^"+3"0T#[:!W````(/@#XG1@^$0"=@)R(G3@^,( +M@^#SB=�)V`G(@^("@^#\#[9.`8/A`0G0"<B+7"0TB(/<````C58(#[?' +MC7P&!#G7=C^)5"0<NP````")Z`^V\(UL)!R)="0,B6PD"`^VPXE$)`2+5"0T +MB10DZ/S___^+1"0<@\`$B40D'(/#`3GX<M.#Q"!;7E]=PXVV`````%.#[!B+ +M3"0DBUDT#[9#`L'@"`^V4P,!T`^WP(U0!`^W02`YPG\NBTPD((N!Z````(E4 +M)`B)7"0$B00DZ/S____'1"0$`````(M$)"")!"3H_/___X/$&%O#C;0F```` +M`%575E.#[!P/MGPD.(M$)#"+6#")7"08O@````"+;"0T@\4$#[:#E````#P! +M=D(\%W0^B?@X@Y4```!U-(T$MHM,)!B-E,&<````BTPD-`^V00,\('8%N"`` +M```/ML")1"0(B6PD!(D4).C\____B?:#Q@&#PRB#_E!UJ(/$'%M>7UW#C;8` +M````C;PG`````(/L+(E<)!R)="0@B7PD)(EL)"B+7"0P#[9$)#2(1"07BT,L +MBRB)+"3H_/___XG&A<`/A`<!``")+"3H_/___XG'A<!U$8ET)`2)+"3H_/__ +M_^GH````C58\B50D&(M0"(N#Z````(M,)#R)3"0(B40D!(D4).C\____QD9H +M"L9&%:P/MT,<9HE&$(M$)$")1DB);AB+5"0\B58@@TYD$HM'"(E&-(E^4(V# +MN````(E&.,9&'"#'1FP`````QD8D.\9&)0(/MDPD%XA.)HM$)#C!Z!"(1B>+ +M5"0X#[;&B$8HB%8I#[9&(HA&*@^V1B&(1BL/MDPD/(A.+,9&+0#'1"0$```` +M`(M$)!B)!"3H_/___XM&((E$)`R+1PR+5Q")1"0$B50D"(M4)!B)%"3H_/__ +M_XET)`2)+"3H_/___XM<)!R+="0@BWPD)(ML)"B#Q"S#C;0F`````(V\)P`` +M``"#["R)7"0<B70D((E\)"2);"0HBUPD,`^V1"0TB$0D%XM#+(LHB2PDZ/S_ +M__^)QH7`#X3M````B2PDZ/S___^)QX7`=1&)="0$B2PDZ/S____IS@```(U6 +M/(E4)!C&1F@*QD85K`^W0QQFB480BT0D0(E&2(EN&,=&9`@```")?E"+1PB) +M1C2+5"0\B58@C8.X````B48XQD8<(,=&;`````#&1B0\QD8E`@^V1"07B$8F +MBT0D.,'H$(A&)XM4)#@/ML:(1BB(5BD/MD8BB$8J#[9&(8A&*P^V1"0\B$8L +MQD8M`,=$)`0`````BU0D&(D4).C\____BT8@B40D#(M'#(M7$(E$)`2)5"0( +MBT0D&(D$).C\____B70D!(DL).C\____BUPD'(MT)""+?"0DBVPD*(/$+,.0 +MC;0F`````(/L+(E<)!R)="0@B7PD)(EL)"B+;"0PBT4LBP")1"04BY7H```` +M#[9"`L'@"`^V4@,!T`^WP(U8!('[``@```^/[P```(M$)!2)!"3H_/___XG& +MA<`/A-D```"+1"04B00DZ/S___^)QX7`=16)="0$BT0D%(D$).C\____Z;(` +M``"-1CR)1"08BU<(BX7H````B5PD"(E$)`2)%"3H_/___\9&%:P/MT4<9HE& +M$(M$)!2)1AB)7B"#3F02BT<(B48TB7Y0C86X````B48XQD8<(,=&;`````#& +M1B0=QD8E$,9&)@(/MD8AB$8GB%XHQT0D!`````"+1"08B00DZ/S___^+1B") +M1"0,BT<,BU<0B40D!(E4)`B+1"08B00DZ/S___^)="0$BT0D%(D$).C\____ +MBUPD'(MT)""+?"0DBVPD*(/$+,.0C;0F`````(/L+(E<)"2)="0HBUPD,`^V +M5"0T#[9T)#C'1"0@`````(![)P%T2L=$)`P!````C40D((E$)`@/ML*)1"0$ +MB1PDZ/S___^+1"0@A<!T(X`(@(GPA,!T"HM$)""`2`,@ZPB+1"0@@&`#WXD< +M).C\____BUPD)(MT)"B#Q"S#C78`@^PLB5PD'(ET)"")?"0DB6PD*(M<)#`/ +MMD0D-(A$)!>+0RR+*(DL).C\____B<:%P`^$N0```(DL).C\____B<>%P'41 +MB70D!(DL).C\____Z9H```"-1CR)1"08QD85K`^W0QQFB480B6X8QT9D"``` +M`(E^4(M'"(E&-,=&(``(``"-@[@```")1CC&1AP@QT9L`````,9&)!S&1B4! +M#[9$)!>(1B;&1B<(QD8H`,=$)`0`````BT0D&(D$).C\____BT8@B40D#(M' M#(M7$(E$)`2)5"0(BT0D&(D$).C\____B70D!(DL).C\____BUPD'(MT)""+ -M?"0DBVPD*(/$+,.0C;0F`````(/L+(E<)!R)="0@B7PD)(EL)"B+1"0XB40D -M%(M4)#"+.HN/<`4``(E,)!B+5"0T#[="$`^VK`>P!```B3PDZ/S___^)PXM, -M)#0/MW$>B?^X`0```-/@B<&)\&;!Z`4/M\"%3(=4#X7)````A=L/A,$` -M``")Z0^VT6G2)`$```-4)!B+3"0T#[9!%0^VC]8```#3X`GPQD,DX<9#)0'& -M0R8/B$,G9L'H"(A#*`^V1"04B$,IBX*H````B4,JBX*L````B4,NBTPD-(E+ -M2,9#%:H/MT(<9HE#$(M4)#"+`HE#&,=#(`````#'0S0`````QT-LD*T``,=$ -M)`0`````C4,\B00DZ/S___^)7"0$B3PDZ/S___^+1"0T#[=('HG(9L'H!0^W -MP(/A'[H!````T^()5(=4BUPD'(MT)""+?"0DBVPD*(/$+,.0C70F`%575E.# -M[!P/MD0D-(A$)!N+5"0PBQIF@WM0``^$_@$``+T`````#[?5BX/$!0``BPR0 -MA<D/A-@!``"+>22!Y____P"!_^$!$``/A9$```"#?"0X``^%N`$```^W41!F -M@?J%`'=G#[?"#[:$`[`$```\_W189H/Z?W<9#[;`BY-P!0``:<`D`0``BT00 -M+`^V4`3K/F:!^H$`=QD/ML"+DZ@%``!IP!0-``"+1!`(#[90!.L>#[;`BY., -M!0``:<"P````BT005`^V4`3K!;K_____O@````#II0```)"-="8`#[=1$&:! -M^H4`#X>'````#[?"#[:T`[`$``")\#S_='9F@_I_=QD/ML"+DW`%``!IP"0! -M``"+1!`L#[90!.M!9H'Z@0!W&XGR#[;"BY.H!0``:<`4#0``BT00"`^V4`3K -M'XGR#[;"BY.,!0``:<"P````BT005`^V4`2-M@````"!YO\```!IQB0!``") -MQ@.S<`4``.L*NO____^^`````(M$)#`X4`0/A84```"#?"0X`'0.BU0D.`^W -M0AQF.T$0=7"`?"0;!G1.@?_A`1``=$8/ME8DB="#X`:#^`9U./;"`74S@+ZT -M`````'4J@?_A`0\`=#T/MD0D&XA!%,=$)`@!````B4PD!(M4)#")%"3H_/__ -M_^L;#[9$)!N(010/M\6)1"0$BU0D,(D4).C\____@\4!9CEK4`^'!_[__X!\ -M)!N!#X0U`0``BX/<````C;/<````.<8/A"$!``"Z`````(/"`8L`.<9U]V:% -MT@^$"@$``(UZ_XDT).C\____B<&#?"0X`'0GBU0D.`^W0AQF.T$0=!F+@^`` -M``")B^````"),8E!!(D(Z;D```"0#[=1$&:!^H4`=V</M\(/MH0#L`0``#S_ -M=%AF@_I_=QD/ML"+DW`%``!IP"0!``"+1!`L#[9`!.L^9H'Z@0!W&0^VP(N3 -MJ`4``&G`%`T``(M$$`@/MD`$ZQX/ML"+DXP%``!IP+````"+1!!4#[9`!.L% -MN/____^+5"0P.D($=26+020E____`#WA`0\`=!8/MD0D&XA!%(E,)`2)'"3H -M_/___^L3BX/@````B8O@````B3&)002)"(U'_V:%_W0/.[/<````=`>)Q^GY -M_O__@\0<6UY?7<.)]HV\)P````"#[!R)7"0,B70D$(E\)!2);"08BVPD(`^V -M?"0HBW4`B30DZ/S___^)PX7`=1.+1"0LQH"U`````>F0````C78`B30DZ/S_ -M__^)PH7`=1F)7"0$B30DZ/S___^+5"0LQH*U`````>MFQD,DX<9#)0'&0R80 -MB?F(2Q6+3"0D#[9!,V:)0Q"+10")0QC'0R"0````C4((B4,TB5-0QD`!$L9" -M"$")^HA0"<=#;`````#'1"0$`````(U#/(D$).C\____B5PD!(DT).C\____ -MBUPD#(MT)!"+?"04BVPD&(/$',/K#9"0D)"0D)"0D)"0D)"#[!R)7"0,B70D -M$(E\)!2);"08BVPD((M\)"B+1"0LB40D"(MU`(DT).C\____B<.%P`^$B``` -M`(DT).C\____B<*%P'1ZQD,DX<9#)0'&0R80B?F(2Q6+3"0D#[9!,V:)0Q"+ -M10")0QC'0R"0````C4((B4,TB5-0QD`!D<9""$")^HA0"0^V3"0(B$@*QT-L -M`````,=$)`0`````C4,\B00DZ/S___^)7"0$B30DZ/S____'!"2@A@$`Z/S_ -M__^+7"0,BW0D$(M\)!2+;"08@\0<PXVV`````(V_`````(/L'(E<)`R)="00 -MB7PD%(EL)!B+?"0@BVPD*(LWB30DZ/S___^)PX7`='*)-"3H_/___XG"A<!T -M9,9#).'&0R4!QD,F$,9#%;N+3"0D#[9!,V:)0Q"+!XE#&,=#()````"-0@B) -M0S2)4U#&0`$0QD((0(GJB%`)QT-L`````,=$)`0`````C4,\B00DZ/S___^) -M7"0$B30DZ/S___^+7"0,BW0D$(M\)!2+;"08@\0<P^L-D)"0D)"0D)"0D)"0 -MD(/L'(E<)!")="04B7PD&(M\)""+-XDT).C\____B<.%P'1MB30DZ/S___^) -MPH7`=%_&0R3AQD,E`<9#)A#&0Q6[BTPD)`^V03-FB4,0BP>)0QC'0R"0```` -MC4((B4,TB5-0QD`!`,9""$#'0VP`````QT0D!`````"-0SR)!"3H_/___XE< -M)`2)-"3H_/___XM<)!"+="04BWPD&(/$',.#[!R)7"00B70D%(E\)!B+="0@ -MC9[4"0``B1PDZ/S___^$P`^%MP```(D<).C\____B<&X`````(G#@+PP-@4` -M`/]U##A&-',2B$8TZPV)]H/#`8/``8/X!'7=@/L$#X1\````#[;#B(P&-@4` -M``^W^6O'7(V4!D`!``"X`````,8$$`"#P`&#^%QU]`^WR6O)7(V4#F`!``"- -M!#&)D&`!``")D&0!``"#P@R)D&P!``")D'`!``"-E`YX`0``B9!X`0``B9!\ -M`0``B)A$`0``:\=<C80&0`$``.L)C70F`+@`````BUPD$(MT)!2+?"08@\0< -MPXUT)@"-O"<`````@^P<B5PD$(ET)!2)?"08BW0D((V>7`D``(D<).C\____ -MA,`/A1<!``")'"3H_/___XG"N`````")PX"\,+`$``#_=1P/ML!F.8;4```` -M<QUFB8;4````ZQ2-M"8`````@\,!@\`!/8````!URX#[@`^$R@````^VPXB4 -M!K`$```/M\)I^"0!``")^`.&<`4``(D$).C\____BY9P!0``#[;#9HE$%QR+ -MAG`%``#&1`<F`(N&<`4``,9$!SW_BX9P!0``QD0'//^+AG`%``#&1`<^_XN& -M<`4``,9$!T#_BX9P!0``QD0'/_^+AG`%``#&1`=!_XN&<`4``,:$![8````` -MBX9P!0``QH0'VP```/^)-"3H_/___XN6<`4``(F$%^@```"`?CD!=0N+AG`% -M``"`3`<H`8GX`X9P!0``ZP6X`````(M<)!"+="04BWPD&(/$',.-="8`C;PG -M`````%.#[`B+7"00BU0D%(G8Z'WB__^+@SP%``")!"3H_/___X/$"%O#C78` -MC;PG`````(/L'(E<)!")="04B7PD&(MT)""-GH0)``")'"3H_/___X3`#X7= -M````B1PDZ/S___^)PHGPNX+___^-M@````"`N#(%``#_=1<XGM@```!S((B> -MV````.L8C;0F`````(/#`8/``8#[A@^$EP```.O/@/N,````#[;#B)0& -ML`0```^WPFGXL````(GX`X:,!0``B00DZ/S___^+EHP%```/ML-FB407)(!^ -M.0%U#8N&C`4``&;'1`<P__^+AHP%``#&1`<F`(N&C`4``&;'1`<R``"+AHP% -M``!FQX0'D```````QT0D!`````"+ACP%``")!"3H_/___XGX`X:,!0``ZP6X -M`````(M<)!"+="04BWPD&(/$',.0C70F`%93@^P4BW0D((M$)"0/MT`D#[:< -M,+`$``#&A#"P!```_P^WVXE<)`2-AH0)``")!"3H_/___VG;L````(G8`X:, -M!0``@'@T_W0,B40D!(DT).C\____QT0D!`````"+ACP%``")!"3H_/___X/$ -M%%M>PXVT)@````"-O"<`````4X/L"(M<)!"+1"04#[90,P^VA!JP!```QH0: -ML`0``/\/M\")1"0$C8.L"0``B00DZ/S____'1"0$`````(N#/`4``(D$).C\ -M____@\0(6\-3@^P(BUPD%(![*/]T&HU#6(E$)`2+5"00BT(4B00DZ/S____& -M0RC_@\0(6\.-=@!3@^P(BUPD%(![3/]T'8V#[````(E$)`2+5"00BT(4B00D -MZ/S____&0TS_@\0(6\.#[!R)7"0,B70D$(E\)!2);"08BUPD((ML)"0/MT4< -M#[:\`[`$```/M\=I\"0!``")\`.#<`4```7H````B40D!(D<).C\____#[=5 -M'(N$D[`"``"%P'08@WAP`'42QX23L`(```````"-M"8`````#[=%',:$`[`$ -M``#_#[?'B40D!(V#7`D``(D$).C\____B?`#@W`%``"`>$+_=`R)1"0$B1PD -MZ/S___^);"0$B1PDZ/S___^+@W`%``#&1`8F`(N#<`4``,9$!B<!BUPD#(MT -M)!"+?"04BVPD&(/$',/K#9"0D)"0D)"0D)"0D)"#[!R)7"0,B70D$(E\)!2) -M;"08BVPD((MT)"1F@7XDX0$/A;D````/MD8F@^@1/`$/AZH````/MT809CV% -M``^'5`$```^WP`^VA`6P!```BY6,!0``//\/A#L!```/ML!IP+````"-'`*` -M:RD!C7L4B3PDZ/S___^)PCGP=4*)7"0$B2PDZ/S___\[>Q0/A`4!``#'0U@` -M$GH`QT-@`````(E;9(U#6(E$)`2+112)!"3H_/___\9#*`#IV0```)"+0Q2) -M4`2)`HEZ!(E3%(L6BT8$B4($B1#INP```(UV``^W1A!F/84`#X>J````#[?` -M#[:4!;`$``"+C7`%``"+1B0E____`#WA`1``#X2&````@?K_````='YIPB0! -M``"-'`&`:T\!C7L0B3PDZ/S___^)PCGP=4B)7"0$B2PDZ/S___\[>Q!T3\># -M[``````2>@#'@_0`````````B9OX````C8/L````B40D!(M%%(D$).C\____ -MQD-,`.L:B?:+0Q")4`2)`HEZ!(E3$(L6BT8$B4($B1"+7"0,BW0D$(M\)!2+ -M;"08@\0<PXUT)@"#[!R)7"0,B70D$(E\)!2);"08BWPD((ML)"0/MU4>B=!F -MP>@%#[?8#[?RB?^X_O___]/`B<$A1)]49H'Z_P]T28T$M0`````#A\0% -M``"#.`!T-\<``````"&,G\@%``")="0$C8<T"0``B00DZ/S___^);"0$B3PD -MZ/S___^);"0$B3PDZ/S___^+7"0,BW0D$(M\)!2+;"08@\0<P^L-D)"0D)"0 -MD)"0D)"0D(/L'(E<)!")="04B7PD&(M\)""+="0D9H%^).$!#X62````#[9& -M)H/H$3P!#X>#````#[=&$+K_````9CV%`'<+#[?`#[:4![`$``!IPK````") -MPP.?C`4``(![*/]U/`^V5FBX"````(32=`.-!!(/ML!IP$!"#P")0UC'0V`` -M````B5MDC4-8B40D!(M'%(D$).C\____QD,H`(M3&(ES&(U#%(D&B58$B3*` -M0RD!Z9\````/MT80N?\```!F/84`=PL/M\`/MHP'L`0``(N7<`4``(M&)"7_ -M__\`/>$!$`!T<&G!)`$``(T<`H![3/]U30^V5FBX"````(32=`.-!!(/ML!I -MP$!"#P")@^P```#'@_0`````````B9OX````C8/L````B40D!(M'%(D$).C\ -M____QD-,`)"-="8`BU,4B7,4C4,0B0:)5@2),H!#3P&+7"00BW0D%(M\)!B# -MQ!S#C;8`````C;\`````55=64X/L+(M$)$0/MU`09H'ZA0`/AQ\#```/M\*+ -M7"1`#[:,`[`$``"X_____X#Y_W1B9H/Z?W<=#[;!BUPD0(N3<`4``&G`)`$` -M`(M$$"P/MD`$ZS]F@?J!`'<=#[;!BUPD0(N3J`4``&G`%`T``(M$$`@/MD`$ -MZQL/ML&+7"1`BY.,!0``:<"P````BT005`^V0`0/ML"+5"1`#[:L`C8%``!K -MQ5R-A`)``0``B40D((N2J`4```^VP6G`%`T```'"B50D'(M$)$2+4#0/MD(! -M/!)T)SR1#X4J`@``:\5<N0````"+5"1`@+P"2@$````/A-H!``#I<0$``&O% -M7`-$)$"+B$`!``")3"0H#[9:"8A<)"8/ME(:B%0D)[L`````@+A*`0```'1F -MOP````!K]5R+1"1`C:PP>`$``)")+"3H_/___XG#BU0D0(T$%HN0?`$``(F8 -M?`$``(DKB5,$B1J+3"0<.4LP=1,/MD--BU0D1#I"%708C;8`````@\<!B?F+ -M1"1`.(PP2@$``'>NBU0D1(M"4(7`=!")1"0$BTPD*(D,).C\____BT0D1(E$ -M)`2+5"0HB10DZ/S___\/MH.6````C5`!B).6````/`-W.(!\)"<`=3''1"00 -M`````,=$)`P"````BTPD1`^V016)1"0(BT,PB40D!(M<)"")'"3H_/___^LV -MC4(!B(.6````@/H"=BB`?"0G`'4AQD,G`L9#)O^`8RC^B5PD!(M$)"B)!"3H -M_/___^D?`0``#[9$)">)1"0,#[9$)":)1"0(BU0D'(E4)`2+3"0@B0PDZ/S_ -M___I]````+X`````:]U<BT0D0(V\&'@!``")/"3H_/___XG!BU0D0(T$$XN0 -M?`$``(F(?`$``(DYB5$$B0J+1"0<.4$P=1(/MD%-BU0D1#I"%707D(UT)@"# -MQ@&)\(M4)$`XA!I*`0``=Z\/ME$DB="#X`:#^`9U*/;"`70CB4PD#(M<)$0/ -MMD,5B40D"(M!,(E$)`2+1"0@B00DZ/S___^+5"1$BT)0A<!T$(E$)`2+3"1` -MB0PDZ/S___^+7"1$B5PD!(M$)$")!"3H_/___^LIBU0D0`^VJC4&``!KQ5R- -MA`)``0``B40D((N2J`4``+CL!@T`Z5_]__^#Q"Q;7E]=PXVV`````%575E.# -M[`R+;"0@BWPD)(M<)"C&0R<!QD,F`(E<)`C'1"0$!@```(D\).C\____@WLP -M`'02BU,(BT,,B4($B1"+0S"`:#`!@'M/`'0=C78`B2PDZ/S____'!"0!```` -MZ/S___^`>T\`=>:+D^0```"%TG0;QT0D"`$````/MH/9````B40D!(D4).C\ -M____BU,PA=)T&,=$)`@!````#[9#38E$)`2)%"3H_/___XMS((7V#X2@```` -M@WYP``^%B````(-^=``/A7X```#V0R@$=1^)+"3H_/___\=$)`@!````BT,@ -MB40D!(DL).C\____BU,@#[9"`HE$)`@/MD(!B40D!,<$)%(```#H_/___XM# -M((E$)`B+A3P%``")1"0$QP0D`0```.C\____BT,@B40D"(N%/`4``(E$)`3' -M!"0&````Z/S____'0R``````QT9@`````(M3-(72=`P/MD--QT2"/`````"+ -M$XM#!(E"!(D0@&\*`8E<)`2)+"3H_/___X!_!?]T3H!_"@!T.+L`````C7<X -MC;8`````B30DZ/S___^+5SR)1SR),(E0!(D"@'@F_W4*@\,!.%\*=@?KVSA? -M"G<0QD<%_XE\)`2)+"3H_/___X/$#%M>7UW#C;0F`````(V\)P````!55U93 -M@^P,BVPD*,9%)P'&128`B6PD",=$)`0&````BT0D)(D$).C\____@WTP`'02 -MBU4(BT4,B4($B1"+13"`:#`!@'U/`'0EC;0F`````(M4)"")%"3H_/___\<$ -M)`$```#H_/___X!]3P!UXHN5Y````(72=!O'1"0(`0````^VA=D```")1"0$ -MB10DZ/S___^+53"%TG08QT0D"`$````/MD5-B40D!(D4).C\____BUT@A=L/ -MA$$!``#V12@$=6F+3"0@B0PDZ/S____'1"0(`0```(M%((E$)`2+1"0@B00D -MZ/S___^+52`/MD("B40D"`^V0@&)1"0$QP0D4@```.C\____BT4@B40D"(M4 -M)""+@CP%``")1"0$QP0D`0```.C\____ZST/MD,"B40D"`^V0P&)1"0$QP0D -M4@```.C\____BT4@B40D"(M,)""+@3P%``")1"0$QP0D`0```.C\____BU-P -MA=(/A$0!```/MT4<BTPD(,>$@;`"````````QT-P`````,=$)`C_____B5PD -M!(M#>(D$)/_2Z1$!```/MT4<BTPD(,>$@;`"````````QT-T`````(M#>(D$ -M)/_2]D4H`G0ABT4@B40D"(M4)""+@CP%``")1"0$QP0D!@```.C\____QT4@ -M`````,=#8`````"+532%TG0,#[9%3<=$@CP`````BU4`BT4$B4($B1"+3"0D -M#[91"H/J`8A1"HM%-(7`=`=F@W@R`G5HA-)T9+X`````BWPD)(/'.(D\).C\ -M____B<.+5"0DBT(\B5H\B3N)0P2)&(7;="OV0R@"="6+0R")1"0(BTPD((N! -M/`4``(E$)`3'!"0&````Z/S___^`8RC]@\8!B?"+5"0D.$(*=ZB);"0$BTPD -M((D,).C\____@\0,6UY?7<.+4W2%T@^%Y/[__^D!____D(VT)@````"#["R) -M7"0<B70D((E\)"2);"0HBUPD,(M#+(LHB2PDZ/S___^)QH7`#X3,````B2PD -MZ/S___^)QX7`=1C&@[4````!B70D!(DL).C\____Z:8```#&1B2@C58EN``` -M``#&!!``@\`!@_@%=?3&1BH`QD8K`,9&+`#&1BV(QD8N`,9&+P#&1A6K#[=# -M'&:)1A");AC'1F0(````QT8@B````(M'"(E&-`6(````B48XQD8<)(E^4,=& -M;`````"-7CS'1"0$`````(D<).C\____QT0D#(@```"+1PR+5Q")1"0$B50D -M"(D<).C\____B70D!(DL).C\____BUPD'(MT)""+?"0DBVPD*(/$+,.)]E93 -M@^P4BW0D((V>K`D``(D<).C\____A,`/A?$```")'"3H_/___XG"N8#___^` -MOC`%``#_=!*`OC$%``#_#X7,````N8'___\XCM<```!S!HB.UP```(#Y@@^$ -ML`````^VP8B4!K`$```/M\)IV!0-``")V@.6J`4``+@`````Q@00`(/``3T4 -M#0``=?*)V@.6J`4``(U"$(E"$(G:`Y:H!0``C4(0B4(4B=H#EJ@%``"-0AB) -M0AB)V@.6J`4``(U"&(E"'(G:`Y:H!0``C4(HB4(HB=H#EJ@%``"-0BB)0BR+ -MAJ@%``"(3`,SQT0D!`````"+ACP%``")!"3H_/___XG8`X:H!0``ZPF-="8` -MN`````"#Q!1;7L.0C70F`%.#[`B+1"00BY@4"@``!30)``")!"3H_/___XG! -M#[?`P>`&C108BT0D%(D0N`````#&!!``@\`!@_A`=?0/M\&#Q`A;PXUT)@"- -MO"<`````@^P,BT0D$(V0!`$``+D`````.9`$`0``=`J)%"3H_/___XG!B<B# -MQ`S#D)"0D)"0#[9$)`AIP'0$```%=$4``(M4)`2)`L.)]HV\)P````"+5"0( -M#[9,)`P/MT1*<(/``6:)1$IP#[92`@'0#[?`PXM4)`2X`0```(VT)@````"` -MNCLR```!=!*#P`&!PJ0```"#^"!UZ6:X___SPXUV`%93BW0D#`^V3"00#[9< -M)!2)\K@!````.(HX,@``=1@XFCDR``!U$&G`I````,:$!I<Q```!ZPZ#P`&! -MPJ0```"#^"!UTEM>PY"-M"8`````55=64X/L"(M\)"`/MD0D)(A$)`>+;"0< -MBU0D*,8"_@^V702(7"0#A-MT5XGJN0````"^`````+@`````C70F`#FZY$<` -M`'4HB?,Z7"0'=19IP'0$```/MH0%V$4``(M4)"B(`NL<@\8!C;0F`````(/! -M`8/``8'"=`0``#I,)`-UOH/$"%M>7UW#C;8`````55=64X/L'(ML)#0/MEPD -M/(M\)#"`?"0X`708#[9W!+L`````B?"$P`^$(P$``.GX````QD0D&P"#?"1` -M``^$TP```(M4)$")5"04#[97!,9$)!L`A-)T*XGXQD0D&P"Y`````#FHY$<` -M`'4'.-ET$X/!`8!$)!L!!70$```X5"0;=>$/MFPD&VG==`0``(V$'W1%``#' -M1"0(9````(E$)`2+1"04B00DZ/S___^`O!]T10```'1?O@````")W8V4'W!% -M``")5"00C;0F`````(GR#[;"P>`$BU0D%(U<`F"-2P2-A"C@1P``C00'C5`( -MBT`(B4,$BT($B4$$BT((B4$(BT(,B4$,@\8!B?"+5"00.$($=[H/MD0D&VG` -M=`0```^VA`=T10``ZRF)^KD`````NP`````YJN1'```/E,`!PX/!`8'"=`0` -M`(GP.,%UY@^VPX/$'%M>7UW#C70F`%575E.#[`0/MD0D)(A$)`,/MUPD*&:) -M'"2+?"08O@````")]6G6.`P``(M$)!PY1#H4=7"-3!<4N`````"-=@")PP^V -M41R$TG0&@/KP=4B0:<4X#```C11;C130C0PZBUPD'(E9'(M$)"")02"-01`/ -MMQPD9HE8%@^V7"0#B%@4B<*+7"0LBP.)0AB+0P2)0AS&03#_ZPV#P`&#P1@] -M@@```'6<@\8!@_X$#X5R____@\0$6UY?7<.0C;0F`````%575E.#[`R+;"0D -MBW0D((!^!`!T2;\`````C;8`````B?@/MMAIPW0$``"`O`;810``_70?QT0D -M"`@```");"0$C80&T$4``(D$).C\____A,!U#X/'`8GX.$8$=\*[_P```(G8 -M@\0,6UY?7<.-=@!3@^P(BUPD$(M$)!2)1"0$B1PDZ/S___^Z"0```#S_=!$/ -MML!IP'0$```/MI0#>D4``(G0@\0(6\.-M"8`````55=64X/L#(M\)""+;"0H -M#[9T)"P/MUPD,(GYC9?T,```N`````#&!!``@\`!/9````!U\L:!]3```!/& -M@?0P``!`#[;'B('Z,```B)G[,```B?"(@?TP``#'@9`Q``"PYP``B;F,,0`` -MBT5<B8&$,0``BT5@B8&(,0``C8'T,```B40D!(M$)"2)!"3H_/___X/$#%M> -M7UW#C;0F`````%575E.#[$P/MD0D;(A$)#\/MU0D<&:)5"0@BU0D8(G7N`$` -M``")Q8G&@+H[,@```0^%W````&G`I`````'XC9"0,0``QD('`(FXC#$```^V -M2@9IP:0```"-E`?T,```N`````#&!!``@\`!/9````!U\FG9I````(T,.XV1 -M\#```,9"!9#&0@1`#[=$)"`/ML2)1"0<B$(*#[9$)""(@?LP```/MDPD/XA* -M#8M,)'2+`8E"%(M!!(E"&&G6I````(T$.L>`D#$``+#G``"+3"1@B8B,,0`` -MC907@#$``(M,)&B+05R)0@2+06")0@B)Z@^VPFG`I````(V$!_0P``")1"0$ -MBTPD9(D,).C\____ZQ2#P`&!PJ0```"#^"`/A0'___^P`8/$3%M>7UW#B?95 -M5U93@^P,#[9L)"@/MGPD+(M,)"")SK@!````C70F`(G"@+D[,@```0^%P@`` -M`&G`I````(V$!I`Q``")Z8A(!(G[B%@%QD`'``^V6`9IPZ0```"-C`;T,``` -MN`````#&!`@`@\`!/9````!U\FG#I````(V$!O`P``#&0`40QD`$0(GYB$@- -M:=*D````#[:,%I8Q``!IR:0```"-!#''@)`Q``"PYP``BUPD((F8C#$``(V< -M%H`Q``")Z@^VPFG`=`0``(V4!L!%``"+0A")0P2+0A2)0PB-A`[T,```B40D -M!(M,)"2)#"3H_/___^L4@\`!@<&D````@_@@#X4=____L`&#Q`Q;7E]=PXUV +M?"0DBVPD*(/$+,.-M@````"-OP````!55U93@^P<BTPD-(M9-`^V0P+!X`@/ +MME,#`=`/M_"-5@0/MT$@.<(/CX,!``"->PB-;#,$B7PD$,9$)!<`QT0D&``` +M```Y[P^#]0```(UV``^V1"08B$0D%@^V1P+!X`@/ME<#`=!FB40D%`^W\(ET +M)`2+1"00@\`$B00DZ/S___\\_W5KBT0D$(U4,`2)TSG5#X;Z````QD0D%_^- +M="8`#[9"`L'@"`^V4@.--!`/M\:)1"0$C4,$B00DZ/S___\\_W41@'PD%_\/ +MA8X```"0Z8,````X1"07=@2(1"07#[?&C50#!(G3.=5V<>NRB?8J1"07#[;` +MB40D"`^V7"06B5PD!(M4)#")%"3H_/___XE<)`B)?"0$BT0D,(D$).C\____ +M#[=$)!2+5"00C7P"!(E\)!"#1"08`3G]#X<.____QT0D!`(```"+1"0PB00D +MZ/S____K6,9$)!<`#[9$)!:)1"0(B7PD!(M4)#")%"3H_/___P^W1"04BU0D +M$(U\`@2)?"00@T0D&`'IO_[__P^V1"06B40D"(E\)`2+1"0PB00DZ/S____K +MEHUT)@"#Q!Q;7E]=PY"-M"8`````55=64X/L'(M,)#2+630/MD,"P>`(#[93 +M`P'0#[?`@\`$#[=1(#G0#X\>`0``C7,(#[9;`;D`````N@````")]@).`@^V +M1@.-=`8$@\(!.--S[H3)#X33````QD0D&P"_`````(U!_P^VP(/``8E$)!0/ +MME2^`0!4)!L/M@2^/`%T!#P7=4H/MEPD&RC3.%PD&P^&B0```(U'`0^VZ(UV +M``^V!+Z)1"0,B6PD"`^VPXE$)`2+1"0PB00DZ/S___^#PP$Z7"0;=%CKUHVV +M`````(M,)#"+03"`N)$````!=$`/MEPD&RC3.%PD&W8SC4<!#[;H#[8$OHE$ +M)`R);"0(#[;#B40D!(M$)#")!"3H_/___X/#`3I<)!MUV)"-="8`@\<!.WPD +M%`^%1/___XM4)#"+0C#&@)$````!QT0D!`<```")%"3H_/___X/$'%M>7UW# +MC;8`````C;PG`````(/L+(E<)!R)="0@B7PD)(EL)"B+7"0PA=L/A,P```"+ +M0RR+*(DL).C\____B<:%P`^$M0```(DL).C\____B<>%P'41B70D!(DL).C\ +M____Z98```"-1CR)1"08QD85K`^W0QQFB480B6X8QT9D"````(E^4(M'"(E& +M-,=&(``(``"-@[@```")1CC&1AP@QT9L`````,9&)!S&1B4!QD8F`L9&)PC& +M1B@`QT0D!`````"+1"08B00DZ/S___^+1B")1"0,BT<,BU<0B40D!(E4)`B+ +M1"08B00DZ/S___^)="0$B2PDZ/S___^+7"0<BW0D((M\)"2+;"0H@\0LPY"# +M[!R)7"00B70D%(E\)!B+?"0DBW0D((M?2`^W5Q!F@?J%``^'AP````^WP@^V +MC`:\!```@/G_='=F@_I_=QD/ML&+EGP%``!IP"@!``"+1!`L#[9`!.LX9H'Z +M@0!W&0^VP8N6M`4``&G`%`T``(M$$`@/MD`$ZQ@/ML&+EI@%``!IP+````"+ +M1!!4#[9`!)`\_W0<#[;`@+P&0@4``/]T#X#Y_W0*#[9'%#P&=3*)]H-_4`!T +M#XU'4(E$)`2)-"3H_/___XE\)`2)-"3H_/___\=#+/____^)'"3_4RCK<83` +M=3KV1V0(=!F+2QR+5S2+1R")1"0(B50D!(D,).C\____QT,L`````(M3((72 +M=`6+0Q2)`HD<)/]3*.L2QT,L_____XD<)/]3*)"-="8`@W]0`'0/C4=0B40D +M!(DT).C\____B7PD!(DT).C\____BUPD$(MT)!2+?"08@\0<P^L-D)"0D)"0 +MD)"0D)"0D(/L'(E<)`R)="00B7PD%(EL)!B+7"0DBWPD(`^V:Q0/MT,09CV% +M`'<9BY=\!0``#[?`#[:$![P$``!IP"@!``#K"XN7?`4``+C8)@$`C30"B>B$ +MP'4A9L>&E```````@'LD''42@'LF`G4,B5PD!(DT).C\____@WM0`'0/C4-0 +MB40D!(D\).C\____B5PD!(D\).C\____B>@\!G0^C9X$`0``B5PD!(M'%(D$ +M).C\____QX8$`0``@(0>`,>&#`$```````")MA`!``")7"0$BT<4B00DZ/S_ +M__^+7"0,BW0D$(M\)!2+;"08@\0<PU575E.#[!P/MD0D.(A$)!N+5"0PBT(L +MBS"_`````(ML)#2#Q0P/MH0WO`0``#S_=%$/ML!IV"@!``#'1"0("````(EL +M)`2)V`.&?`4```6@````B00DZ/S___^$P'0CBX9\!0``#[94)!N(E`/:```` +MBX9\!0``BU0D,(F4`^0```"#QP&!_X````!UF(/$'%M>7UW#C70F`(V\)P`` +M``!55U93@^P<BTPD-(MQ-`^V1@+!X`@/ME8#`=`/M_B-5P0/MT$@.<(/C_4` +M``"-7@B-=#X$B70D%(G=.=X/ALP```#'1"08`````(VV``````^V3"08#[83 +MA-(/B)4```")T(/@#SP(````]D,#P'0*]D,%P`^%>````/;"$'0U@'L$ +M`'1MC74(OP`````/MD,#B40D"(ET)`2+1"0PB00DZ/S___^#QAR#QP&)^#A# +M!'9`Z]F`>P(`=#B-=02_``````^VR8E,)!"-="8`BT0D$(E$)`B)="0$BT0D +M,(D$).C\____@\8<@\<!B?@X0P)WVP^V0P&-7`4"B=V#1"08`3M<)!0/@D+_ +M___'1"0$`0```(M$)#")!"3H_/___X/$'%M>7UW#C;8`````55=64X/L+(M$ +M)$")1"0@BU0D1`^V4A2(5"0KBTPD1`^W41!F@?J%``^'N0,```^WPHM<)"`/ +MMHP#O`0``+C_````@/G_=&)F@_I_=QT/ML&+7"0@BY-\!0``:<`H`0``BT00 +M+`^V0`3K/V:!^H$`=QT/ML&+7"0@BY.T!0``:<`4#0``BT00"`^V0`3K&P^V +MP8M<)""+DY@%``!IP+````"+1!!4#[9`!(M4)"`/MH0"0@4``(E$)!QKP%R- +MA`),`0``B40D)(N2?`4```^VP6G`*`$``(TT`H!\)"L`#X62`@``9L>&E``` +M````BT0D1(!X)!P/A7L"```/MD`F/`)T6CP"=PL\`0^%9P(``)#K(3P'=#(\ +M"@^%6`(``(M,)$2)3"0$B30DZ/S____I0P(``(M<)$2)7"0$B30DZ/S____I +M+@(``(M$)$2)1"0$B30DZ/S____I&0(``(M4)$2)5"0$B30DZ/S___^-G@0! +M``")7"0$BT8LBP"+0!2)!"3H_/___\>&!`$``("$'@#'A@P!````````B;80 +M`0``B5PD!(M&+(L`BT`4B00DZ/S____&1B;_:T0D'%R+3"0@@+P!5@$````/ +MA'H!``"_`````(G#C:P!A`$``(GVB2PDZ/S___^)QHM4)""-!!.+D(@!``") +ML(@!``")+HE6!(DR@'XF_P^$H@```(!^)0`/A9\```")\X"^M0`````/A$\! +M```/MDXD#[;1B="#X`:#^`9U*?;"`70DB70D#`^V1DV)1"0(BT8PB40D!(M, +M)"2)#"3H_/___^D5`0``@_@$=2'VP0&-M"8`````=!6)7"0$BUPD((D<).C\ +M____Z>\```"#^`8/A>8```#VP0$/A=T```")7"0$BT0D((D$).C\____Z<@` +M``")]L:&M0````"#QP&+3"0@C9090`$```^V0A:)^3C(#X<-____.,%U<X3` +M=&^_`````&M<)!Q<BT0D((VL&(0!``")+"3H_/___XG&BU0D((T$$XN0B`$` +M`(FPB`$``(DNB58$B3*`?B;_=!X/MD8E/")T!#P-=1+'1"0$"@```(DT).C\ +M____ZSZ#QP&)^8M$)"`XC!A6`0``=Z9K1"0<7(M4)"#&A`)1`0``_XM,)"2) +M3"0$B10DZ/S___^`?"0K``^%H@```(M<)$2#>U``=!6)V(/`4(E$)`2+1"0@ +MB00DZ/S___^+5"1$B50D!(M,)"")#"3H_/___X!\)"L`=&@/MX:4````@\`! +M9HF&E````&:#^`IV#F;'AI0``````.G@_?__QT0D!`H```")-"3H_/___^LQ +MBUPD(`^VFT$&``")7"0<:\-<BU0D((V$`DP!``")1"0DBY)\!0``N-@F`0#I +MOOS__X/$+%M>7UW#@^P(B1PDB70D!(M<)`R+="00BU0D%(M,)!R%VW1$A?9T +M0(72=#R#?"08`'0U9H'YA0!W+@^WP8"\`[P$``#_="'&0B3AQD(E`<9")A-F +MB4H0B7(8BT0D&(E";+@!````ZP6X`````(L<)(MT)`2#Q`C#C;0F`````(V\ +M)P````"+3"0$BT$$BT`$HP````"`?"0(`'0*B<*!R@``#`#K"(G"@>+___/_ +MBT$$B1"+002)4`R+002)4!"+002)4!2+002)4!B+002)4`3#D)"0D%93BUPD +M$(M,)#"+="0X#[=$)`QF/2(G=TEF/2`G<WEF/4`A='-F/4`A=QEF/2`AD'1F +M9CTB(71@9CU0!XUT)@!U8.M49CU$(71.9CU$(8GV<E!F+1`G9H/X`7=&C70F +M`.LV9CV")W0P9CV")XUT)@!W$F8])"=T(&8]@">-="8`=2#K%&8]@)%T#F8] +M@)2)]G0&9CV`<G4*Q@-`BT0D%,8``HM$)!C&``0/MA.+1"0LB!!FQP&``&;' +M!@``BT0D(,8`((M$)"1FQP```0^V$XM$)"B($`^V`V8#`68#!HM4)#1FB0*+ +M5"0<9HD"#[<1BT0D/&:)$`^W$8/""XM$)$!FB1!;7L.-=@"-O"<`````55=6 +M4X/L!(M\)!@/MD0D'(A$)`,/MV]<9H7M#X3>````BX_0!0``O@````"-="8` +MBP&%P`^$M@````^W4!"[_P```+C_____9H'ZA0!W=`^WP@^VG`>\!```N/__ +M__^`^_]T7&:#^G]W&0^VPXN7?`4``&G`*`$``(M$$"P/MD`$ZSUF@?J!`'<9 +M#[;#BY>T!0``:<`4#0``BT00"`^V0`3K'0^VPXN7F`4``&G`L````(M$$%0/ +MMD`$C;8`````#[;;BY=\!0``.D0D`W4A#[?#:<`H`0``#[9$$"2#X`6#^`5U +M"[`!ZQN-M"8`````@\8!@\$$9CGN#X4Q____N`````"#Q`1;7E]=PXUT)@!5 +M5U93@^P(BU0D'(M"+(LHBX4@"@``B40D!`^W?5RY`````+X`````ZTF-M@`` +M```/M]F+A=`%``"+%)B%TG0PBT(D)?___P`]X0$0`'0ABT0D'`^W0!QF.T(0 +M=1.)V,'@!HM4)`1F.700"'0+C78`@\$!9CGY<KAF.?ET$(/&`6:#_A]W![D` +M````Z^8/M\:#Q`A;7E]=PY"-M"8`````4XM4)`B+3"0,BUPD$(M".(7`=!;& +M`'"+0CB(2`*+0CC&0`<`BT(XB%@,6\.-="8`\\.-M"8`````C;PG`````(/L +M$(D<)(ET)`2)?"0(B6PD#(M,)!0/MWPD&(GZ@>+_`0``BX'0!0``BS20A?9T +M,`^VF>(````/MD85B=G3X`^WZ`^WU[C__P``T^`APCG5#Y7`#[;`@^@!(<:0 +MC70F`(GPBQPDBW0D!(M\)`B+;"0,@\00PXUT)@"-O"<`````BU0D!+@````` +MC;0F`````,8$$`"#P`$]L````'7RQD(H_\9"-/^-0A2)0A2)0AC#BU0D!+@` +M````C;0F`````,8$$`"#P`$]*`$``'7RQD),_\9"0O_&0DX?C4(0B4(0B4(4 +MPXVV`````(V_`````%.+1"0(BUPD#(L3BX@$`0``B9`$`0``!0`!``")`HE* +M!(D1QP,`````6\.0C70F`%.#[`B+7"00BTPD%(N3_````(F+_````(V#^``` +M`(D!B5$$B0J#>4P`=`^-04R)1"0$B1PDZ/S___^#Q`A;PY!3BT0D"(M<)`R+ +M$XN(%`$``(F0%`$```40`0``B0*)2@2)$<<#`````%O#D(UT)@!3BT0D"(M< +M)`R+$XN(#`$``(F0#`$```4(`0``B0*)2@2)$<<#`````%O#D(UT)@"+1"0$ +MBU0D"(N()`$``(F0)`$```4@`0``B0*)2@2)$</K#9"0D)"0D)"0D)"0D)!3 +MBT0D"(M<)`R+$XN(+`$``(F0+`$```4H`0``B0*)2@2)$<<#`````%O#D(UT +M)@!3BT0D"(M<)`R+$XN('`$``(F0'`$```48`0``B0*)2@2)$<<#`````%O# +MD(UT)@`/MD0D!#P7=Q</ML#_)(4`$P``N#0```##C;0F`````+@$````P[@\ +M````D(UT)@##N!0```##N$````"-="8`P[@<````P[@8````C70F`,.X*``` +M`,.X(````(UT)@##N$P```##B?:-O"<`````55=64XML)!2+?"08#[97)(G0 +M@^`&@_@&=0GVP@$/A,H```"`?T+_#X7`````BT4`B[`8`0``B34`````N0`` +M``"X`0```(G#T^.%WG4RB$]"BU4`B=@)\(F"&`$``(M%`(N`6`$``*,````` +MB=HAPG1WBT4`B9!8`0``ZVR-=@"#P0&#^2!UN8M%`(NP'`$``(DU`````+$` +MC;0F`````(G*N`$```")P]/CA=YU,HU"((A'0HM5`(G8"?")@AP!``"+10"+ +M@&`!``"C`````(G:(<)T$XM%`(F08`$``.L(@\$!@_D@=;>`12P!6UY?7<.- +MM"8`````C;PG`````%=64XM\)!"+5"04@'HT_P^%MP```(L'B[`8`0``B34` +M````N0````"X`0```(G#T^.%WG4LB$HTBQ>)V`GPB8(8`0``BP>+@%@!``"C +M`````(G:(<)T<8L'B9!8`0``ZV>#P0&#^2!UOXL'B[`<`0``B34`````L0"- +MM"8`````N`$```")P]/CA=YU,XA*-(L7B=@)\(F"'`$``(L'BX!@`0``HP`` +M``")VB'"=!F+!XF08`$``.L/C;0F`````(/!`8/Y('6X@$<L`5M>7\-3#[9< +M)!"+1"0(BT@HA<ET,;H`````BT21/(7`=`4X6$UT#X/"`8/Z!707D(UT)@#K +MY&:!>22%`'<(A<"-="8`=06X`````%O#C;0F`````%575E.#[`R+;"0@#[9$ +M)"3!X`@/ME0D*(TT$(!]'``/A,D```"#?3@`#X2_````]D5D"0^4P(G'N0`` +M``"-=@")RP^W%,U@$P``B?`AT&8YP@^%BP````^V%,UE$P``@/H#=`6`^@=U +M"XGX.`3-9!,``'5NQD44(`^V!-UF$P``B40D"`^VPHE$)`2)+"3H_/___XM5 +M.`^V!-UG$P``B$(-@WPD+`!T*XM$)"R+&(MP!(M-.(EQ`XM%.(`(@/9%9@1T +M$(7V=`R+13B)6`B+13B`('^+53@/MD4<@^@'B$('ZPR#P0&#^1`/A5+___^# +MQ`Q;7E]=PXUV`(V\)P````"#[`R+1"00C9`8`0``N0`````YD!@!``!T$8D4 +M).C\____B<''0!0`````B<B#Q`S#ZPV0D)"0D)"0D)"0D)"0@^P,BT0D$(V0 +M*`$``+D`````.9`H`0``=`J)%"3H_/___XG!B<B#Q`S#C;8`````@^P,BT0D +M$(V0(`$``+D`````.9`@`0``="2)%"3H_/___XG!B<*X`````)"-="8`Q@00 +M`(/``3V8````=?*)R(/$#,.-M@````"-OP````"#[`R+1"00C9`(`0``N0`` +M```YD`@!``!T"HD4).C\____B<&)R(/$#,.-M@````"#[`R+1"00C9```0`` +MN0`````YD``!``!T#HD4).C\____B<'&0`@`B<B#Q`S#B?955U93@^P<B40D +M$(G5QT0D%`````#'1"08`````(UV`(M4)!B+3"00#[:$"CP%```\_P^$*`$` +M``^VT`^W1"089H/H@&8]@0`/AWP````/M\)IP!0-``")PP.9M`4``(![,`!T +M5;X`````C7LHC78`B3PDZ/S___^-2/B+4RR)0RR)>0B)40R)`HM!)"4`__\` +M/0``_P!U&/9!)P1T$HM!((7`=`N)ZHA0`8VV`````(/&`8GQ.$LP=[:)Z(B# +MD@```(/%`>F6````#[?":<"P````B<.+5"00`YJ8!0``@'L?`'1#N0````"- +MM@`````/ML&+5(,\A=)T)8M")"4`__\`/0``_P!U%O9")P1T$(M"((7`=`F) +MZHA0`8UT)@"#P0$X2Q]WR(GIB(ND````@+NE`````W4>@T0D%`&+1"04@\`# +M@_@&=A:#Q0''1"04`````.L)@\4!C;8`````@T0D&`&#?"08!@^%L/[__XM4 +M)!"+@D@%```YT'4,!<P,``")ZNAV_O__@\0<6UY?7<.-M"8`````C;PG```` +M`(/L#(M4)!"+1"04#[9(!`^VA!%"!0``QH010@4``/\/M\")1"0$@<+@"0`` +MB10DZ/S___^#Q`S#D(VT)@````"#[`B)'"2)="0$BW0D$(M>3(7;="2-3B2- +M4PR+0PR)1B2+0@2)002+0@B)00B+0@R)00R+0QR)1C2+'"2+="0$@\0(PXVV +M`````(V_`````(/L"(D<)(ET)`2+="00BUY,A=MT*(U+#(U6)(M&)(E##(M" +M!(E!!(M""(E!"(M"#(E!#(M&-(E#',9#"`&+'"2+="0$@\0(PY"-M"8````` +M5U93@^P0BWPD((L?9H-[7``/A+L```"^`````(UT)@`/M]:+@]`%``"+#)"% +MR0^$D0````^W41!F@?J%`'=Q#[?"#[:$`[P$```\_W1B9H/Z?W<<#[;`BY-\ +M!0``:<`H`0``BT00+`^V4`3K2(UV`&:!^H$`=QD/ML"+D[0%``!IP!0-``"+ +M1!`(#[90!.LE#[;`BY.8!0``:<"P````BT005`^V4`3K#(VT)@````"Z_P`` +M``^V1P0YPG4(B0PDZ/S___^#Q@%F.7-<#X=.____@\006UY?PXVT)@````"# +M[!R)7"04B70D&(M<)""+="0D#[9&-#S_=!D/ML")1"0$BP.)!"3H_/___\9& +M-/^`:RP!BUPD%(MT)!B#Q!S#@^P<B5PD%(ET)!B+7"0@BW0D)`^V1D(\_W09 +M#[;`B40D!(L#B00DZ/S____&1D+_@&LL`8M<)!2+="08@\0<PU=64X/L$(MT +M)""+7"0D.7,8#X3/````@'L4``^%E@````^V0R0\%70(/%4/A88```"+0TR% +MP'1_B<*`>`@!=7=F@7@,X0%U;XN^?`4```^W0Q"YV"8!`&8]A0!W$0^WP`^V +MA`:\!```:<@H`0``C00/#[92#H#Z!W0?@/H'=P>`^@9U,^L<@/H,C;0F```` +M`'0@@/H-=2#K$&:#8#K]B?;K%6:#2#H"ZPYF@V`Z]XGVZP5F@T@Z"(-[4`!T +M*8%[(``(``!W$8U#4(E$)`2)-"3H_/___^L/C4-0B40D!(DT).C\____9H%[ +M).$!#X4&`0``#[=#$&8]A0!W>@^WP`^VA`:\!```//]T:XN6?`4``(![%`!U +M7P^VP&G`*`$``(T$`@^V4R:`^@=T'8#Z!W<'@/H&=3'K&H#Z#)"-="8`=""` +M^@UU(.L09H-@.OV)]NL59H-(.@+K#F:#8#KWB?;K!6:#2#H(9H%[).$!C78` +M#X6"````@'LF"W5\#[=+$`^V1BZ->/^)RNL<D(UT)@"#P@%F@?J%`'<-#[?" +M@+PPO`0``/]U"0^WPCGX?.+K1&8]_P!U&>L\@\$!9H'YA0!W#0^WP8"\,+P$ +M``#_=0P/M\$YQW_BN/\```!FB4,0QD,4@(E<)`2)-"3H_/___^D<`0``QD,4 +M`#ES&'0HBT-,A<!T(8!X"`%U#(E<)`2)-"3H_/___XU#3(E$)`2)-"3H_/__ +M_X-[5`!T#XU#5(E$)`2)-"3H_/___XE<)`2+0QB)!"3_4VP/MU,D9H'ZX0%U +M50^V0R:#Z!$\`7=*#[=#$&8]A0`/AZ4````/M\`/MH0&O`0``#S_#X22```` +M#[;`:<"P`````X:8!0``@'@I`'5]@'@T_W1WB40D!(DT).C\____ZVD/MT,0 +M9CV%`'=?#[?`#[:,!KP$``"+OGP%``"+0R0E____`#WA`1``=#^!^?\```!T +M-V:!^N$!=1`/MD,F@^@1/`%V)9"-="8`:<$H`0``C00'@'A/`'41B40D!(DT +M).C\____D(UT)@"#Q!!;7E_#B?:-O"<`````@^P<B5PD$(ET)!2)?"08BW0D +M((M<)"0/MU,09H'ZA0`/AXH````/M\(/MHP&O`0``(#Y_W1Z9H/Z?W<9#[;! +MBY9\!0``:<`H`0``BT00+`^V0`3K.V:!^H$`=QD/ML&+EK0%``!IP!0-``"+ +M1!`(#[9`!.L;#[;!BY:8!0``:<"P````BT005`^V0`2-="8`9CW_`'0:#[?` +M#[:\!D(%``")^#S_=`D/ML%F/?\`=1")7"0$B30DZ/S____K?HGV#[93)P^V +M0R@/MDLI@/D!=`6`^0AU6HM+2,'@"`^VT@'0)?\!``"+EM`%```Y#()U/P^W +M21Z)RF;!Z@4/M]*#X1^X_O___]/`(4268(M#2`^W0!Z)1"0$B?H/ML)KP%R- +MA`9,`0``B00DZ/S___^)]HE<)`2)-"3H_/___XM<)!"+="04BWPD&(/$',.- +M="8`@^P,B5PD!(ET)`B+7"00C8/X````O@`````Y@_@```!T'8D$).C\____ +MB<:)!"3H_/___XD<).C\____B49,B?"+7"0$BW0D"(/$#,.-=@"#[!R)7"00 +MB70D%(E\)!B+?"0@BT<LBS")-"3H_/___XG#A<!T:XDT).C\____B<*%P'4< +MQH>U`````8E<)`2)-"3H_/___^M(C;0F`````,9#)``/MT<<9HE#$,9#:`^) +M<QC'0R``````QT,T`````(M""(E#.,9#'"2)4U#'0VP`````B5PD!(DT).C\ +M____BUPD$(MT)!2+?"08@\0<P^L-D)"0D)"0D)"0D)"0D(/L'(E<)!")="04 +MB7PD&(M\)""+="0DBT<LBQB)'"3H_/___XG"A<!T/<9`)!O&0"4!B?"(0B@/ +MMT<<9HE"$,9":`^)6AC'0B``````QT(T`````,=";`````")5"0$B1PDZ/S_ +M__^+7"00BW0D%(M\)!B#Q!S#B?:-O"<`````@^PLB5PD'(ET)"")?"0DB6PD +M*(M<)#2+1"0PBRB)+"3H_/___XG&A<`/A*(```")+"3H_/___XG'A<!U$XET +M)`2)+"3H_/___^F#````B?:-5CR)5"08QD8DX<9&)0'&1B8.#[=#'&:)1A!F +M@V,X]XM4)#"+`HE&&,=&(``(``"+1PB)1C2)?E#'1FP0M`(`QT0D!`````"+ +M1"08B00DZ/S___^+1B")1"0,BT<,BU<0B40D!(E4)`B+5"08B10DZ/S___^) +M="0$B2PDZ/S___^+7"0<BW0D((M\)"2+;"0H@\0LPXUT)@"-O"<`````@^P< +MB5PD$(ET)!2)?"08BW0D*(M$)""+&(D<).C\____B<*%P'1EQD`DX<9`)0&) +M\(A")L9")P^+3"0D#[=!'&:)0A")6AC'0B``````QT(T`````,=";`````") +M5"0$B1PDZ/S___^)\#P!=1+'!"0%````Z/S____K$(UT)@#'!"10PP``Z/S_ +M__^+7"00BW0D%(M\)!B#Q!S#C70F`(/L'(E<)!")="04B7PD&(MT)""+7"0D +M#[=3$&:!^H4`#X>+````#[?"#[:,!KP$``"`^?]T>V:#^G]W&0^VP8N6?`4` +M`&G`*`$``(M$$"P/MD`$ZSMF@?J!`'<9#[;!BY:T!0``:<`4#0``BT00"`^V +M0`3K&P^VP8N6F`4``&G`L````(M$$%0/MD`$C70F`#S_=!T/ML`/MI0&0@4` +M`(#Z_W0-@/G_=`@/MD,4/`9U/X-[4`!T*X%[(``(``")]G<1C4-0B40D!(DT +M).C\____ZP^-0U")1"0$B30DZ/S___^)7"0$B30DZ/S____K<HN^?`4``(3` +M="W'1"0(`0````^VP6G`*`$``(T$!XE$)`0/ML)KP%R-A`9,`0``B00DZ/S_ +M__^#>U``="F!>R``"```=Q&-0U")1"0$B30DZ/S____K#XU#4(E$)`2)-"3H +M_/___XE<)`2)-"3H_/___XM<)!"+="04BWPD&(/$',.-M"8`````C;PG```` +M`(/L+(E<)!R)="0@B7PD)(EL)"B+7"0PBVPD-`^W51!F@?J%``^'#@$```^W +MP@^VC`.\!```@/G_#X3Z````9H/Z?W<<#[;!BY-\!0``:<`H`0``BT00+`^V +M0`3K.HUV`&:!^H$`=QD/ML&+D[0%``!IP!0-``"+1!`(#[9`!.L7#[;!BY.8 +M!0``:<"P````BT005`^V0`0\_P^$F0````^V^0^VP`^VM`-"!0``B?`\_P^$ +M@0```&:!__\`='J`?10&='2+DWP%``")5"08@'TF`75,QP0D"@```.C\____ +MB6PD!(D<).C\____QT0D"`(````/M\=IP"@!```#1"08B40D!(GR#[;":\!< +MC80#3`$``(D$).C\____ZQJ)]L<$)/0!``#H_/___XEL)`2)'"3H_/___XM< +M)!R+="0@BWPD)(ML)"B#Q"S#C70F`(/L+(E<)"")="0DB7PD*(M\)#"+1RR+ +M,(DT).C\____B<.%P'4*QH>U`````>MDD,9`)!7&0!6K#[=''&:)0Q")<QC' +M1"00`0```,=$)`P!````B5PD"(E\)`2)-"3H_/___X3`=1F)7"0$B30DZ/S_ +M___&A[4````!ZQ>-="8`QT-L`````(E<)`2)-"3H_/___XM<)""+="0DBWPD +M*(/$+,.-M@````"-O"<`````@^PLB5PD'(ET)"")?"0DB6PD*(M<)#"+0RR+ +M*(DL).C\____B<:%P'4,QH.U`````>FX````B2PDZ/S___^)QX7`=1S&@[4` +M```!B70D!(DL).C\____Z9(```"-="8`QD8D&L9&)0C&1B8(QD8G`,9&*/_& +M1BD`QD85JP^W0QQFB480B6X8QT8@_P```,=&9`@```"+1PB)1C0%_P```(E& +M.,9&'"2)?E#'1FP`````C5X\QT0D!`````")'"3H_/___\=$)`S_````BT<, +MBU<0B40D!(E4)`B)'"3H_/___XET)`2)+"3H_/___XM<)!R+="0@BWPD)(ML +M)"B#Q"S#C;0F`````(V\)P````"#["R)7"0<B70D((E\)"2);"0HBVPD,`^V +M1"0TB$0D%XM%+(LXB3PDZ/S___^)PX7`=0W&A;4````!Z;H```"0B3PDZ/S_ +M__^)QH7`=1C&A;4````!B5PD!(D\).C\____Z9,```"-0SR)1"08QD,D$H!\ +M)!<`=`[&0R4!QD,F@,9#*$#K!,9#*"3&0Q6K#[=%'&:)0Q")>QC'0R!@```` +MQT-D"````(M&"(E#-(ES4,=#;`````#'1"0$`````(M$)!B)!"3H_/___\=$ +M)`Q@````BT8,BU80B40D!(E4)`B+1"08B00DZ/S___^)7"0$B3PDZ/S___^+ +M7"0<BW0D((M\)"2+;"0H@\0LPXUV`(/L+(E<)!R)="0@B7PD)(EL)"B+7"0P +MBT,LBRB)+"3H_/___XG&A<!U#,:#M0````'IN@```(DL).C\____B<>%P'4< +MQH.U`````8ET)`2)+"3H_/___^F4````C70F`(U&/(E$)!C&1B2>QD8E$,9& +M,2#&1A6K#[=#'&:)1A");AC'1B`@````QT9D"````(M'"(E&-(E^4(/`((E& +M.,9&'"3'1FP`````QD9H#\=$)`0`````BT0D&(D$).C\____QT0D#"````"+ +M1PR+5Q")1"0$B50D"(M$)!B)!"3H_/___XET)`2)+"3H_/___XM<)!R+="0@ +MBWPD)(ML)"B#Q"S#C;8`````C;\`````@^PLB5PD'(ET)"")?"0DB6PD*(M< +M)#"+0RR+*(DL).C\____B<:%P'4,QH.U`````>FN````B2PDZ/S___^)QX7` +M=1S&@[4````!B70D!(DL).C\____Z8@```"-="8`C48\B40D&,9&)"7&1A6K +M#[=#'&:)1A");AC'1B`(````QT9D"````(M'"(E&-(/`"(E&.,9&'"2)?E#' +M1FP`````QT0D!`````"+1"08B00DZ/S____'1"0,"````(M'#(M7$(E$)`2) +M5"0(BT0D&(D$).C\____B70D!(DL).C\____BUPD'(MT)""+?"0DBVPD*(/$ +M+,.0C;0F`````(/L+(E<)!R)="0@B7PD)(EL)"B+1"0XB40D%(M4)#"+.HN/ +M?`4``(E,)!B+5"0T#[="$`^VK`>\!```B3PDZ/S___^)PXM,)#0/MW$>B?&# +MX1^X`0```-/@B<&)\&;!Z`4/M\"%3(=@#X7)````A=L/A,$```")Z0^VT6G2 +M*`$```-4)!B+3"0T#[9!%0^VC^(```#3X`GPQD,DX<9#)0'&0R8/B$,G9L'H +M"(A#*`^V1"04B$,IBX*H````B4,JBX*L````B4,NBTPD-(E+2,9#%:H/MT(< +M9HE#$(M4)#"+`HE#&,=#(`````#'0S0`````QT-LL*\"`,=$)`0`````C4,\ +MB00DZ/S___^)7"0$B3PDZ/S___^+1"0T#[=('HG(9L'H!0^WP(/A'[H!```` +MT^()5(=@BUPD'(MT)""+?"0DBVPD*(/$+,.0C70F`%575E.#[!P/MD0D-(A$ +M)!N+5"0PBQIF@WM<``^$_@$``+T`````#[?5BX/0!0``BPR0A<D/A-@!``"+ +M>22!Y____P"!_^$!$``/A9$```"#?"0X``^%N`$```^W41!F@?J%`'=G#[?" +M#[:$`[P$```\_W189H/Z?W<9#[;`BY-\!0``:<`H`0``BT00+`^V4`3K/F:! +M^H$`=QD/ML"+D[0%``!IP!0-``"+1!`(#[90!.L>#[;`BY.8!0``:<"P```` +MBT005`^V4`3K!;K_____O@````#II0```)"-="8`#[=1$&:!^H4`#X>'```` +M#[?"#[:T`[P$``")\#S_='9F@_I_=QD/ML"+DWP%``!IP"@!``"+1!`L#[90 +M!.M!9H'Z@0!W&XGR#[;"BY.T!0``:<`4#0``BT00"`^V4`3K'XGR#[;"BY.8 +M!0``:<"P````BT005`^V4`2-M@````"!YO\```!IQB@!``")Q@.S?`4``.L* +MNO____^^`````(M$)#`X4`0/A84```"#?"0X`'0.BU0D.`^W0AQF.T$0=7"` +M?"0;!G1.@?_A`1``=$8/ME8DB="#X`:#^`9U./;"`74S@+ZT`````'4J@?_A +M`0\`=#T/MD0D&XA!%,=$)`@!````B4PD!(M4)#")%"3H_/___^L;#[9$)!N( +M010/M\6)1"0$BU0D,(D4).C\____@\4!9CEK7`^'!_[__X!\)!N!#X0U`0`` +MBX/H````C;/H````.<8/A"$!``"Z`````(/"`8L`.<9U]V:%T@^$"@$``(UZ +M_XDT).C\____B<&#?"0X`'0GBU0D.`^W0AQF.T$0=!F+@^P```")B^P```") +M,8E!!(D(Z;D```"0#[=1$&:!^H4`=V</M\(/MH0#O`0``#S_=%AF@_I_=QD/ +MML"+DWP%``!IP"@!``"+1!`L#[9`!.L^9H'Z@0!W&0^VP(N3M`4``&G`%`T` +M`(M$$`@/MD`$ZQX/ML"+DY@%``!IP+````"+1!!4#[9`!.L%N/____^+5"0P +M.D($=26+020E____`#WA`0\`=!8/MD0D&XA!%(E,)`2)'"3H_/___^L3BX/L +M````B8OL````B3&)002)"(U'_V:%_W0/.[/H````=`>)Q^GY_O__@\0<6UY? +M7<.)]HV\)P````"#[!R)7"0,B70D$(E\)!2);"08BVPD(`^V?"0HBW4`B30D +MZ/S___^)PX7`=1.+1"0LQH"U`````>F0````C78`B30DZ/S___^)PH7`=1F) +M7"0$B30DZ/S___^+5"0LQH*U`````>MFQD,DX<9#)0'&0R80B?F(2Q6+3"0D +M#[9!,V:)0Q"+10")0QC'0R"0````C4((B4,TB5-0QD`!$L9""$")^HA0"<=# +M;`````#'1"0$`````(U#/(D$).C\____B5PD!(DT).C\____BUPD#(MT)!"+ +M?"04BVPD&(/$',/K#9"0D)"0D)"0D)"0D)"#[!R)7"0,B70D$(E\)!2);"08 +MBVPD((M\)"B+1"0LB40D"(MU`(DT).C\____B<.%P`^$B````(DT).C\____ +MB<*%P'1ZQD,DX<9#)0'&0R80B?F(2Q6+3"0D#[9!,V:)0Q"+10")0QC'0R"0 +M````C4((B4,TB5-0QD`!D<9""$")^HA0"0^V3"0(B$@*QT-L`````,=$)`0` +M````C4,\B00DZ/S___^)7"0$B30DZ/S____'!"2@A@$`Z/S___^+7"0,BW0D +M$(M\)!2+;"08@\0<PXVV`````(V_`````(/L'(E<)`R)="00B7PD%(EL)!B+ +M?"0@BVPD*(LWB30DZ/S___^)PX7`='*)-"3H_/___XG"A<!T9,9#).'&0R4! +MQD,F$,9#%;N+3"0D#[9!,V:)0Q"+!XE#&,=#()````"-0@B)0S2)4U#&0`$0 +MQD((0(GJB%`)QT-L`````,=$)`0`````C4,\B00DZ/S___^)7"0$B30DZ/S_ +M__^+7"0,BW0D$(M\)!2+;"08@\0<P^L-D)"0D)"0D)"0D)"0D(/L'(E<)!") +M="04B7PD&(M\)""+-XDT).C\____B<.%P'1MB30DZ/S___^)PH7`=%_&0R3A +MQD,E`<9#)A#&0Q6[BTPD)`^V03-FB4,0BP>)0QC'0R"0````C4((B4,TB5-0 +MQD`!`,9""$#'0VP`````QT0D!`````"-0SR)!"3H_/___XE<)`2)-"3H_/__ +M_XM<)!"+="04BWPD&(/$',.#[!R)7"0,B70D$(E\)!2);"08BW0D((V>X`D` +M`(D<).C\____A,`/A;@```")'"3H_/___XG#N`````")P8"\,$(%``#_=0HX +M1C1S$(A&-.L+@\$!@\`!@_@$==^`^00/A'\````/ML&(G`9"!0``#[?K:\5< +MC90&3`$``+@`````Q@00`(/``8/X7'7T#[?;B5PD"&O[7(V4/F`!``"-6@R- +M!#>)F&P!``")F'`!``"#PAB)D'@!``")D'P!``"-E#Z$`0``B9"$`0``B9"( +M`0``B(A0`0``:\5<C80&3`$``.L%N`````"+7"0,BW0D$(M\)!2+;"08@\0< +MPXGV@^P<B5PD$(ET)!2)?"08BW0D((V>:`D``(D<).C\____A,`/A1<!``") +M'"3H_/___XG"N`````")PX"\,+P$``#_=1P/ML!F.8;@````<QUFB8;@```` +MZQ2-M"8`````@\,!@\`!/8````!URX#[@`^$R@````^VPXB4!KP$```/M\)I +M^"@!``")^`.&?`4``(D$).C\____BY9\!0``#[;#9HE$%QR+AGP%``#&1`<F +M`(N&?`4``,9$!SW_BX9\!0``QD0'//^+AGP%``#&1`<^_XN&?`4``,9$!T#_ +MBX9\!0``QD0'/_^+AGP%``#&1`=!_XN&?`4``,:$![8`````BX9\!0``QH0' +MVP```/^)-"3H_/___XN6?`4``(F$%^@```"`?CD!=0N+AGP%``"`3`<H`8GX +M`X9\!0``ZP6X`````(M<)!"+="04BWPD&(/$',.-="8`C;PG`````%.#[`B+ +M7"00BU0D%(G8Z(WB__^+@T@%``")!"3H_/___X/$"%O#C78`C;PG`````(/L +M'(E<)!")="04B7PD&(MT)""-GI`)``")'"3H_/___X3`#X7=````B1PDZ/S_ +M__^)PHGPNX+___^-M@````"`N#X%``#_=1<XGN0```!S((B>Y````.L8C;0F +M`````(/#`8/``8#[A@^$EP```.O/@/N,````#[;#B)0&O`0```^WPFGX +ML````(GX`X:8!0``B00DZ/S___^+EI@%```/ML-FB407)(!^.0%U#8N&F`4` +M`&;'1`<P__^+AI@%``#&1`<F`(N&F`4``&;'1`<R``"+AI@%``!FQX0'D``` +M`/__QT0D!`````"+AD@%``")!"3H_/___XGX`X:8!0``ZP6X`````(M<)!"+ +M="04BWPD&(/$',.0C70F`%93@^P4BW0D((M$)"0/MT`D#[:<,+P$``#&A#"\ +M!```_P^WVXE<)`2-AI`)``")!"3H_/___VG;L````(G8`X:8!0``@'@T_W0, +MB40D!(DT).C\____QT0D!`````"+AD@%``")!"3H_/___X/$%%M>PXVT)@`` +M``"-O"<`````4X/L"(M<)!"+1"04#[90,P^VA!J\!```QH0:O`0``/\/M\") +M1"0$C8.X"0``B00DZ/S____'1"0$`````(N#2`4``(D$).C\____@\0(6\-3 +M@^P(BUPD%(![*/]T&HU#6(E$)`2+5"00BT(4B00DZ/S____&0RC_@\0(6\.- +M=@!3@^P(BUPD%(![3/]T'8V#[````(E$)`2+5"00BT(4B00DZ/S____&0TS_ +M@\0(6\.#[!R)7"0,B70D$(E\)!2);"08BUPD((ML)"0/MT4<#[:\`[P$```/ +MM\=I\"@!``")\`.#?`4```7H````B40D!(D<).C\____#[=5'(N$D[P"``"% +MP'08@WAP`'42QX23O`(```````"-M"8`````#[=%',:$`[P$``#_#[?'B40D +M!(V#:`D``(D$).C\____B?`#@WP%``"`>$+_=`R)1"0$B1PDZ/S___^);"0$ +MB1PDZ/S___^+@WP%``#&1`8F`(N#?`4``,9$!B<!BUPD#(MT)!"+?"04BVPD +M&(/$',/K#9"0D)"0D)"0D)"0D)"#[!R)7"0,B70D$(E\)!2);"08BVPD((MT +M)"1F@7XDX0$/A;D````/MD8F@^@1/`$/AZH````/MT809CV%``^'5`$```^W +MP`^VA`6\!```BY68!0``//\/A#L!```/ML!IP+````"-'`*`:RD!C7L4B3PD +MZ/S___^)PCGP=4*)7"0$B2PDZ/S___\[>Q0/A`4!``#'0U@`$GH`QT-@```` +M`(E;9(U#6(E$)`2+112)!"3H_/___\9#*`#IV0```)"+0Q2)4`2)`HEZ!(E3 +M%(L6BT8$B4($B1#INP```(UV``^W1A!F/84`#X>J````#[?`#[:4!;P$``"+ +MC7P%``"+1B0E____`#WA`1``#X2&````@?K_````='YIPB@!``"-'`&`:T\! +MC7L0B3PDZ/S___^)PCGP=4B)7"0$B2PDZ/S___\[>Q!T3\>#[``````2>@#' +M@_0`````````B9OX````C8/L````B40D!(M%%(D$).C\____QD-,`.L:B?:+ +M0Q")4`2)`HEZ!(E3$(L6BT8$B4($B1"+7"0,BW0D$(M\)!2+;"08@\0<PXUT +M)@"#[!R)7"0,B70D$(E\)!2);"08BWPD((ML)"0/MU4>B=!FP>@%#[?8#[?R +MB?^X_O___]/`B<$A1)]@9H'Z_P]T28T$M0`````#A]`%``"#.`!T-\<` +M`````"&,G]0%``")="0$C8=`"0``B00DZ/S___^);"0$B3PDZ/S___^);"0$ +MB3PDZ/S___^+7"0,BW0D$(M\)!2+;"08@\0<P^L-D)"0D)"0D)"0D)"0D(/L +M'(E<)!")="04B7PD&(M\)""+="0D9H%^).$!#X62````#[9&)H/H$3P!#X># +M````#[=&$+K_````9CV%`'<+#[?`#[:4![P$``!IPK````")PP.?F`4``(![ +M*/]U/`^V5FBX"````(32=`.-!!(/ML!IP$!"#P")0UC'0V``````B5MDC4-8 +MB40D!(M'%(D$).C\____QD,H`(M3&(ES&(U#%(D&B58$B3*`0RD!Z9\````/ +MMT80N?\```!F/84`=PL/M\`/MHP'O`0``(N7?`4``(M&)"7___\`/>$!$`!T +M<&G!*`$``(T<`H![3/]U30^V5FBX"````(32=`.-!!(/ML!IP$!"#P")@^P` +M``#'@_0`````````B9OX````C8/L````B40D!(M'%(D$).C\____QD-,`)"- +M="8`BU,4B7,4C4,0B0:)5@2),H!#3P&+7"00BW0D%(M\)!B#Q!S#C;8````` +MC;\`````55=64X/L+(M$)$0/MU`09H'ZA0`/AQ\#```/M\*+7"1`#[:,`[P$ +M``"X_____X#Y_W1B9H/Z?W<=#[;!BUPD0(N3?`4``&G`*`$``(M$$"P/MD`$ +MZS]F@?J!`'<=#[;!BUPD0(N3M`4``&G`%`T``(M$$`@/MD`$ZQL/ML&+7"1` +MBY.8!0``:<"P````BT005`^V0`0/ML"+5"1`#[:L`D(%``!KQ5R-A`),`0`` +MB40D((N2M`4```^VP6G`%`T```'"B50D'(M$)$2+4#0/MD(!/!)T)SR1#X4J +M`@``:\5<N0````"+5"1`@+P"5@$````/A-H!``#I<0$``&O%7`-$)$"+B$P! +M``")3"0H#[9:"8A<)"8/ME(:B%0D)[L`````@+A6`0```'1FOP````!K]5R+ +M1"1`C:PPA`$``)")+"3H_/___XG#BU0D0(T$%HN0B`$``(F8B`$``(DKB5,$ +MB1J+3"0<.4LP=1,/MD--BU0D1#I"%708C;8`````@\<!B?F+1"1`.(PP5@$` +M`'>NBU0D1(M"4(7`=!")1"0$BTPD*(D,).C\____BT0D1(E$)`2+5"0HB10D +MZ/S___\/MH.6````C5`!B).6````/`-W.(!\)"<`=3''1"00`````,=$)`P" +M````BTPD1`^V016)1"0(BT,PB40D!(M<)"")'"3H_/___^LVC4(!B(.6```` +M@/H"=BB`?"0G`'4AQD,G`L9#)O^`8RC^B5PD!(M$)"B)!"3H_/___^D?`0`` +M#[9$)">)1"0,#[9$)":)1"0(BU0D'(E4)`2+3"0@B0PDZ/S____I]````+X` +M````:]U<BT0D0(V\&(0!``")/"3H_/___XG!BU0D0(T$$XN0B`$``(F(B`$` +M`(DYB5$$B0J+1"0<.4$P=1(/MD%-BU0D1#I"%707D(UT)@"#Q@&)\(M4)$`X +MA!I6`0``=Z\/ME$DB="#X`:#^`9U*/;"`70CB4PD#(M<)$0/MD,5B40D"(M! +M,(E$)`2+1"0@B00DZ/S___^+5"1$BT)0A<!T$(E$)`2+3"1`B0PDZ/S___^+ +M7"1$B5PD!(M$)$")!"3H_/___^LIBU0D0`^VJD$&``!KQ5R-A`),`0``B40D +M((N2M`4``+CL!@T`Z5_]__^#Q"Q;7E]=PXVV`````%575E.#[`R+;"0@BWPD +M)(M<)"C&0R<!QD,F`(E<)`C'1"0$!@```(D\).C\____@WLP`'02BU,(BT,, +MB4($B1"+0S"`:#`!@'M/`'0=C78`B2PDZ/S____'!"0!````Z/S___^`>T\` +M=>:+D^0```"%TG0;QT0D"`$````/MH/9````B40D!(D4).C\____BU,PA=)T +M&,=$)`@!````#[9#38E$)`2)%"3H_/___XMS((7V#X2@````@WYP``^%B``` +M`(-^=``/A7X```#V0R@$=1^)+"3H_/___\=$)`@!````BT,@B40D!(DL).C\ +M____BU,@#[9"`HE$)`@/MD(!B40D!,<$)+H"``#H_/___XM#((E$)`B+A4@% +M``")1"0$QP0D`0```.C\____BT,@B40D"(N%2`4``(E$)`3'!"0&````Z/S_ +M___'0R``````QT9@`````(M3-(72=`P/MD--QT2"/`````"+$XM#!(E"!(D0 +M@&\*`8E<)`2)+"3H_/___X!_!?]T3H!_"@!T.+L`````C7<XC;8`````B30D +MZ/S___^+5SR)1SR),(E0!(D"@'@F_W4*@\,!.%\*=@?KVSA?"G<0QD<%_XE\ +M)`2)+"3H_/___X/$#%M>7UW#C;0F`````(V\)P````!55U93@^P,BVPD*,9% +M)P'&128`B6PD",=$)`0&````BT0D)(D$).C\____@WTP`'02BU4(BT4,B4($ +MB1"+13"`:#`!@'U/`'0EC;0F`````(M4)"")%"3H_/___\<$)`$```#H_/__ +M_X!]3P!UXHN5Y````(72=!O'1"0(`0````^VA=D```")1"0$B10DZ/S___^+ +M53"%TG08QT0D"`$````/MD5-B40D!(D4).C\____BUT@A=L/A$$!``#V12@$ +M=6F+3"0@B0PDZ/S____'1"0(`0```(M%((E$)`2+1"0@B00DZ/S___^+52`/ +MMD("B40D"`^V0@&)1"0$QP0DN@(``.C\____BT4@B40D"(M4)""+@D@%``") +M1"0$QP0D`0```.C\____ZST/MD,"B40D"`^V0P&)1"0$QP0DN@(``.C\____ +MBT4@B40D"(M,)""+@4@%``")1"0$QP0D`0```.C\____BU-PA=(/A$0!```/ +MMT4<BTPD(,>$@;P"````````QT-P`````,=$)`C_____B5PD!(M#>(D$)/_2 +MZ1$!```/MT4<BTPD(,>$@;P"````````QT-T`````(M#>(D$)/_2]D4H`G0A +MBT4@B40D"(M4)""+@D@%``")1"0$QP0D!@```.C\____QT4@`````,=#8``` +M``"+532%TG0,#[9%3<=$@CP`````BU4`BT4$B4($B1"+3"0D#[91"H/J`8A1 +M"HM%-(7`=`=F@W@R`G5HA-)T9+X`````BWPD)(/'.(D\).C\____B<.+5"0D +MBT(\B5H\B3N)0P2)&(7;="OV0R@"="6+0R")1"0(BTPD((N!2`4``(E$)`3' +M!"0&````Z/S___^`8RC]@\8!B?"+5"0D.$(*=ZB);"0$BTPD((D,).C\____ +M@\0,6UY?7<.+4W2%T@^%Y/[__^D!____D(VT)@````"#["R)7"0<B70D((E\ +M)"2);"0HBUPD,(M#+(LHB2PDZ/S___^)QH7`#X3,````B2PDZ/S___^)QX7` +M=1C&@[4````!B70D!(DL).C\____Z:8```#&1B2@C58EN`````#&!!``@\`! +M@_@%=?3&1BH`QD8K`,9&+`#&1BV(QD8N`,9&+P#&1A6K#[=#'&:)1A");AC' +M1F0(````QT8@B````(M'"(E&-`6(````B48XQD8<)(E^4,=&;`````"-7CS' +M1"0$`````(D<).C\____QT0D#(@```"+1PR+5Q")1"0$B50D"(D<).C\____ +MB70D!(DL).C\____BUPD'(MT)""+?"0DBVPD*(/$+,.)]E93@^P4BW0D((V> +MN`D``(D<).C\____A,`/A?$```")'"3H_/___XG"N8#___^`OCP%``#_=!*` +MOCT%``#_#X7,````N8'___\XCN,```!S!HB.XP```(#Y@@^$L`````^VP8B4 +M!KP$```/M\)IV!0-``")V@.6M`4``+@`````Q@00`(/``3T4#0``=?*)V@.6 +MM`4``(U"$(E"$(G:`Y:T!0``C4(0B4(4B=H#EK0%``"-0AB)0AB)V@.6M`4` +M`(U"&(E"'(G:`Y:T!0``C4(HB4(HB=H#EK0%``"-0BB)0BR+AK0%``"(3`,S +MQT0D!`````"+AD@%``")!"3H_/___XG8`X:T!0``ZPF-="8`N`````"#Q!1; +M7L.0C70F`%.#[`B+1"00BY@@"@``!4`)``")!"3H_/___XG!#[?`P>`&C108 +MBT0D%(D0N`````#&!!``@\`!@_A`=?0/M\&#Q`A;PXUT)@"-O"<`````@^P, +MBT0D$(V0$`$``+D`````.9`0`0``=`J)%"3H_/___XG!B<B#Q`S#D)"0D)"0 +M#[9$)`AIP'0$```%=$4``(M4)`2)`L.)]HV\)P````"+5"0(#[9,)`P/MT1* +M<(/``6:)1$IP#[92`@'0#[?`PXM4)`2X`0```(VT)@````"`NCLR```!=!*# +MP`&!PJ0```"#^"!UZ6:X___SPXUV`%93BW0D#`^V3"00#[9<)!2)\K@!```` +M.(HX,@``=1@XFCDR``!U$&G`I````,:$!I<Q```!ZPZ#P`&!PJ0```"#^"!U +MTEM>PY"-M"8`````55=64X/L"(M\)"`/MD0D)(A$)`>+;"0<BU0D*,8"_@^V +M702(7"0#A-MT5XGJN0````"^`````+@`````C70F`#FZY$<``'4HB?,Z7"0' +M=19IP'0$```/MH0%V$4``(M4)"B(`NL<@\8!C;0F`````(/!`8/``8'"=`0` +M`#I,)`-UOH/$"%M>7UW#C;8`````55=64X/L'(ML)#0/MEPD/(M\)#"`?"0X +M`708#[9W!+L`````B?"$P`^$(P$``.GX````QD0D&P"#?"1```^$TP```(M4 +M)$")5"04#[97!,9$)!L`A-)T*XGXQD0D&P"Y`````#FHY$<``'4'.-ET$X/! +M`8!$)!L!!70$```X5"0;=>$/MFPD&VG==`0``(V$'W1%``#'1"0(9````(E$ +M)`2+1"04B00DZ/S___^`O!]T10```'1?O@````")W8V4'W!%``")5"00C;0F +M`````(GR#[;"P>`$BU0D%(U<`F"-2P2-A"C@1P``C00'C5`(BT`(B4,$BT($ +MB4$$BT((B4$(BT(,B4$,@\8!B?"+5"00.$($=[H/MD0D&VG`=`0```^VA`=T +M10``ZRF)^KD`````NP`````YJN1'```/E,`!PX/!`8'"=`0``(GP.,%UY@^V +MPX/$'%M>7UW#C70F`%575E.#[`0/MD0D)(A$)`,/MUPD*&:)'"2+?"08O@`` +M``")]6G6.`P``(M$)!PY1#H4=7"-3!<4N`````"-=@")PP^V41R$TG0&@/KP +M=4B0:<4X#```C11;C130C0PZBUPD'(E9'(M$)"")02"-01`/MQPD9HE8%@^V +M7"0#B%@4B<*+7"0LBP.)0AB+0P2)0AS&03#_ZPV#P`&#P1@]@@```'6<@\8! +M@_X$#X5R____@\0$6UY?7<.0C;0F`````%575E.#[`R+;"0DBW0D((!^!`!T +M2;\`````C;8`````B?@/MMAIPW0$``"`O`;810``_70?QT0D"`@```");"0$ +MC80&T$4``(D$).C\____A,!U#X/'`8GX.$8$=\*[_P```(G8@\0,6UY?7<.- +M=@!3@^P(BUPD$(M$)!2)1"0$B1PDZ/S___^Z"0```#S_=!$/ML!IP'0$```/ +MMI0#>D4``(G0@\0(6\.-M"8`````55=64X/L#(M\)""+;"0H#[9T)"P/MUPD +M,(GYC9?T,```N`````#&!!``@\`!/9````!U\L:!]3```!/&@?0P``!`#[;' +MB('Z,```B)G[,```B?"(@?TP``#'@9`Q``#0Z0(`B;F,,0``BT5<B8&$,0`` +MBT5@B8&(,0``C8'T,```B40D!(M$)"2)!"3H_/___X/$#%M>7UW#C;0F```` +M`%575E.#[$P/MD0D;(A$)#\/MU0D<&:)5"0@BU0D8(G7N`$```")Q8G&@+H[ +M,@```0^%W````&G`I`````'XC9"0,0``QD('`(FXC#$```^V2@9IP:0```"- +ME`?T,```N`````#&!!``@\`!/9````!U\FG9I````(T,.XV1\#```,9"!9#& +M0@1`#[=$)"`/ML2)1"0<B$(*#[9$)""(@?LP```/MDPD/XA*#8M,)'2+`8E" +M%(M!!(E"&&G6I````(T$.L>`D#$``-#I`@"+3"1@B8B,,0``C907@#$``(M, +M)&B+05R)0@2+06")0@B)Z@^VPFG`I````(V$!_0P``")1"0$BTPD9(D,).C\ +M____ZQ2#P`&!PJ0```"#^"`/A0'___^P`8/$3%M>7UW#B?955U93@^P,#[9L +M)"@/MGPD+(M,)"")SK@!````C70F`(G"@+D[,@```0^%P@```&G`I````(V$ +M!I`Q``")Z8A(!(G[B%@%QD`'``^V6`9IPZ0```"-C`;T,```N`````#&!`@` +M@\`!/9````!U\FG#I````(V$!O`P``#&0`40QD`$0(GYB$@-:=*D````#[:, +M%I8Q``!IR:0```"-!#''@)`Q``#0Z0(`BUPD((F8C#$``(V<%H`Q``")Z@^V +MPFG`=`0``(V4!L!%``"+0A")0P2+0A2)0PB-A`[T,```B40D!(M,)"2)#"3H +M_/___^L4@\`!@<&D````@_@@#X4=____L`&#Q`Q;7E]=PXUV`%93@^P4BW0D +M(`^V1"0HB?/&AI<Q````C8[T,```N@````#&!`H`@\(!@?J0````=?'&@_4P +M```!QH/T,```0,>#D#$``-#I`@")LXPQ```/ML!IP'0$``"-E`/`10``BT(0 +MB8.$,0``BT(4B8.(,0``C8/T,```B40D!(M$)"2)!"3H_/___X/$%%M>PXUV M`%93@^P4BW0D(`^V1"0HB?/&AI<Q````C8[T,```N@````#&!`H`@\(!@?J0 -M````=?'&@_4P```!QH/T,```0,>#D#$``+#G``")LXPQ```/ML!IP'0$``"- +M````=?'&@_4P````QH/T,```0,>#D#$``-#I`@")LXPQ```/ML!IP'0$``"- ME`/`10``BT(0B8.$,0``BT(4B8.(,0``C8/T,```B40D!(M$)"2)!"3H_/__ -M_X/$%%M>PXUV`%93@^P4BW0D(`^V1"0HB?/&AI<Q````C8[T,```N@````#& -M!`H`@\(!@?J0````=?'&@_4P````QH/T,```0,>#D#$``+#G``")LXPQ```/ -MML!IP'0$``"-E`/`10``BT(0B8.$,0``BT(4B8.(,0``C8/T,```B40D!(M$ -M)"2)!"3H_/___X/$%%M>PXUV`%575E.#[$P/MGPD:`^V5"1L#[9$)'"(1"0G -MBVPD8(GY#[;)B4PD*&G!=`0``("\!=A%``#]#X0Y"0``@/H0#X2Y`@``@/H0 -M=QR$TI"-="8`#X2A````@/H!#X45"0``D.D+`0``@/KB=!N`^O^-=@!T*8#Z -MD`^%^0@``)"-="8`Z38'``"Y`````(!]!`")]@^%.@@``.E="```:40D*'0$ -M``#&A`7810``_X"]ES$```%U+8M<)"B)7"0(BW0D9(ET)`2+?"1@B3PDZ/S_ -M__^%P`^%G`@``(!%!@'IDP@``(M$)"C&1`4'`8M4)&2)5(4,Z7T(``"`O9<Q -M```!=5J-C?0P``!I1"0H=`0```'H#[91"8B0=D4```7010``#[91"H/B`8A0 -M"<9`"`"+3"0HB4PD"(M<)&2)7"0$BW0D8(DT).C\____A<`/A2,(``"`108! -MZ1H(``"+?"0HQD0]!P&+1"1DB42]#.D$"```:70D*'0$``"-/"X/MH4F,0`` -MB(?&10``#[>%)#$``&:)A#7$10``C90UL$4``(N%'#$``(E"!(N%(#$``(E" -M"(V4-8!%``"+A0`Q``")0@2+A00Q``")0@B-G#6010``C4L$C94(,0``BX4( -M,0``B4,$BT($B4$$BT((B4$(BT(,B4$,BX48,0``B80UK$4``,:'V$4```&` -M?08?#X1B!P``NP````!I1"0H=`0```'HC;!P10``C;C`10``ZU20#[;#B40D -M#(M4)"B)5"0(BTPD9(E,)`2+1"1@B00DZ/S___^%P'01:40D*'0$``"(G`7' -M10``ZR"#PP&`108!.%X&#Y3`@^@!(=B(1P>`?08?=`4Z7@9RJ,:%ES$```$/ -MMDT$A,D/A-D&``"Z`````(!]!P%T#.M$#[;0@'P5!P%U/\9$%0?_QT0D%``` -M``#'1"00`````,=$)`S_````B50D"(M$E0R)1"0$BU0D8(D4).C\____Z8@& -M``"X`````(/``3C(=;#I=P8``(M,)'2)3"0P@\$8B4PD+(U,)$"+7"0PBT,8 -MB40D0(MT)"R+1@2)1"1$:40D*'0$``"--"B-EM!%``#&0@@0]D,,<`^$90,` -M`(N&W$4``(7`#X2(````#[9:"L=$)`@(````B4PD!(/`7(D$).C\____A,!U -M:8M$)##V0`\/=%^+AMQ%``"%P'15B<:`?F4`=$T/MMN)7"0(B70D!(DL).C\ -M____BU0D+(E4)!0/M\")1"00B5PD#(ET)`B+3"1DB4PD!(M<)&")'"3H_/__ -M_P^V7F:+1FB%P'0$B<;KK8MT)#`/MD8/J`T/A/T```!I5"0H=`0```^VC!5T -M10``@/D?#X?D````J`AT$@^VP<'@!`'0QH0%Z$<```;K&`^VP<'@!&E4)"AT -M!````=#&A`7H1P``!P^V\8GRP>($:5PD*'0$```!VHV,%>!'``#&00D`BWPD -M,`^V1P^(00N+1"1`B4$0BT0D1(E!%`^V1PF(00H/MD<-@^`/#[:4'7I%```X -MT'8"B=")PH/B#P^V00R#X/`)T(A!#(GPP>`$:50D*'0$```!T(V,!>!'``"+ -M7"0P#[9#*8/@#P^VE!5Z10``.-!V`HG0P>`$#[91#(/B#PG"B%$,:40D*'0$ -M``"`A`5T10```>G"`0``J`(/A+H!``"-1"1`B40D!(DL).C\____B<(\_P^% -M7P$```^V302$R70X#[:%V$4``#S_="VZ`````#S]=1OK(@^VPFG`=`0```^V -MA`7810``//]T$CS]=`Z#P@$XRG7@ZP6Z``````^VPFG`=`0``(V,!71%``"X -M`````,8$"`"#P`&#^&1U]`^VTHE4)#1ITG0$``"-'"J)^0^VP6G`=`0``(V$ -M!71%``")@]Q%``"-C!7`10``:70D*'0$``"-E#7`10``BT(0B4$(BT(4B4$, -MBWPD9(F[Y$<```'NBX;@10``B8/@10``QH/810``_XV#<$4```^V2`N+?"0P -M#[97"8B4"WQ%``"`0`L!#[:.>D4```^V5PV#X@\XRG8"B<J(4`II5"0T=`0` -M`(V,%<!%``"+1"1`B4$0BT0D1(E!%`'JBTPD,`^V00^(@G=%```/MEPD)XB: -MVD4```^V104Z101U!,9%!0"`104!BW0D-,9$-0<!BWPD9(E\M0SK06E$)"AT -M!```#[;2:<IT!```C90-=$4``#F4!=Q%``!T((T<*8V#<$4```^V2`N+="0P -M#[96"8B4"WQ%``"`0`L!BWPD,`^V1PF)1"0(BT0D*(E$)`2)+"3H_/___VE$ -M)"AT!```@+P%QT4````/A)P```"`?08?=7#IC0(``,:&V$4``!`/MD,'B40D -M#(M4)"B)5"0(BTPD9(E,)`2+1"1@B00DZ/S___^%P`^%6@(``(!%!@$/MDL' -M#[;!@\`!#[:6=D4``#G0=0W&0P<`Z3@"``"-="8`C4$!B$,'@'T&'P^$)`(` -M`.L1:40D*'0$``"--"B-GL!%```/MD,'.H9V10``#X)T____Z?P!``"`?08` -M#X7R`0``QT0D%`````#'1"00`````,=$)`R0````BU0D*(E4)`B+3"1DB4PD -M!(M<)&")'"3H_/___^FY`0``OP````!IQS@,``"+="1D.70H%'5VC5P%,+X` -M````B40D((UV`(`[_W53@'T&'P^$A0$``(T$=HM4)""-1,(0C40%&(E$)!0/ -MMT/VB40D$`^V0_2)1"0,BT/PB40D"(M,)&2)3"0$BT0D8(D$).C\____A<!U -M!X!%!@'&`_"#Q@&#PQB!_H(```!UFH/'`8/_!`^%;O___X!]!@`/A1@!```/ -MMDT$A,D/A-@```"Z`````(!]!P%T#.M$#[;0@'P5!P%U0<9$%0?_QT0D%``` -M``#'1"00`````,=$)`S_````B50D"(M$E0R)1"0$BU0D8(D4).C\____Z;L` -M``"X`````(GV@\`!.,AUKNMWC;0F``````^VP6G`=`0``(V4!=!%```/MD(( -M//UT"#S_=`3&0@C^@\$!.$T$=]AI1"0H=`0``(N<!>!%``"_`````(UT)@"` -M?"\8`749QD0O&`"+1"\4B40D!(M,)&")#"3_TXUV`(''.`P``('_X#```'0V -MZ]#'1"04`````,=$)!``````QT0D#.(```"+7"0HB5PD"(MT)&2)="0$BWPD -M8(D\).C\____@\1,6UY?7<.-="8`@^PLB5PD((ET)"2)?"0HBW0D-(N>F``` -M`(![!@`/A(0!``"-AI````")1"0$B1PDZ/S___^)P3S_#X1H`0``B?</MD8! -M/`%T;#P!<A@\$`^$K````#R0#X5*`0``C78`Z?H```"`NY<Q````C70F``^% -M,0$``,:#ES$```&`:P8!QT0D%`````#'1"00`````,=$)`P`````#[;!B40D -M"(M$)#")1"0$B1PDZ/S____I\@```("[ES$````/A>4```#&@Y<Q```!@&L& -M`<=$)!0`````QT0D$`````#'1"0,`0````^VP8E$)`B+1"0PB40D!(D<).C\ -M____Z:8```"Z`````#J,&C@R``!U$0^VA!HY,@``.D<)=!*-="8`@<*D```` -M@?K<$P``==B`:P8!B7PD%`^V1PF)1"00QT0D#!`````/ML&)1"0(BT0D,(E$ -M)`2)'"3H_/___^M(#[:&H@```&G`I````,:$`Y<Q```!@&L&`<=$)!0````` -MQT0D$`````#'1"0,D`````^VP8E$)`B+1"0PB40D!(D<).C\____BUPD((MT -M)"2+?"0H@\0LPXGVC;PG`````%93BU0D$`^V="04BUPD#(72=`^)V8G0Q@$` -M@\$!@^@!=?6)$X'J=$4``,'J`KA9MOER]^+!Z@>(4P2)\#C0<P.(0P2`>P0` -M="6Z`````(GV#[;"QD0#!_]IP'0$``#&A`/810``_8/"`3A3!'?BQD,&`,9# -M!0")V+H`````C78`QH"7,0```8B0EC$``(/"`06D````@_H@=>9;7L.-=@!7 -M5E.+?"04BTPD$(!Y!``/A($```"[``````^V\VG&=`0``#F\`>1'``!U8K@` -M````.)P(.#(``'4(QH0(.S(```$%I````#W<$P``=>-IQG0$``#'A`'D1P`` -M`````(V4`71%``"X`````)"-="8`Q@00`(/``8/X9'7T:<9T!```QH0!V$4` -M`/V`:04!@\,!.%D$=X2)R[X`````.7L4=2W'0Q0`````QD,8`&G&.`P``(U$ -M`12Z`````(UT)@#&0!P`@\(!@\`8@/J"=?&#Q@&!PS@,``"#_@1UP%M>7\/K -M#9"0D)"0D)"0D)"0D)!55U93@^P<#[9$)#R(1"0:BUPD,`^V0P4Z0P1U!,9# -M!0`/ME,%B%0D&XG=B=BY`````(G.B<^+4!0[5"0T=4IIP3@,``#&1`,8`0^V -M4P3&1"0;`(32=%O&1"0;`(M\)#0YO>1'``!U#@^VA=A%``"#P`,\`78\@$0D -M&P&!Q70$```X5"0;="OKTX72=15IQS@,```!V(M4)#2)4!3&0!@!ZQ"#Q@&# -MP0$%.`P``(/Y!'6`B?(/ML)IP#@,``"-1`,<N@````#&!`(`@\(!@?H"#``` -M=?$/MG0D&XM\)#2)?+,,:<9T!```C90#=$4``+@`````Q@00`(/``8/X9'7T -M:<9T!```C90#Y$4``+@`````Q@00`(/``3T``@``=?)ISG0$``"-%!F+1"0T -MB8+D1P``BT0D0(F"X$4``,:"V$4``/_'@MQ%````````C8P+P$4``(M\)#B+ -M!XE!$(M'!(E!%`^V1"0:B()Z10``QT0D%`````#'1"00`````,=$)`S_```` -MB70D"(M4)#2)5"0$BWPD,(D\).C\____@$,%`8/$'%M>7UW#D)"0D)!64XM4 -M)`R+`HLP#[98*X3;=#</ME()N0````#VP@%T"NLGB=#3^*@!=0>#P0$XV77Q -M@/D#=A@/ML&-A(;0`0``BP"C`````.L6N0`````/ML&-A(;0`0``BP"C```` -M`,'H%(/@`5M>PY"-M"8`````55=64X/L!(M$)!B+$`^V>BN]"@```(GYA,ET -M20^V<`F[`````+T*````N0````"0B?#3^*@!=!X/MH*V"P``@^`#@\`(B$0D -M`XGH.D0D`W8%#[9L)`.#PP&#P0&#PD2)^#C#=<N)Z@^VPH/$!%M>7UW#C;0F -M`````(V\)P````!55U93@^P$BT0D&(L0#[9Z*[T(````B?F$R71)#[9P";L` -M````O0@```"Y`````)")\-/XJ`%T'@^V@K8+``"#X`.#P`B(1"0#B>@Z1"0# -M<P4/MFPD`X/#`8/!`8/"1(GX.,-URXGJ#[;"@\0$6UY?7<.-M"8`````C;PG -M`````%.+7"0(#[8#P.@$B<*#X@</MDL"]L$$=`.`S@(/MD,#J`1T!H'*```" -M`/;!"'0#@,X(J`AT!H'*```(`/;!`G0#@,X$J`)T!H'*```$``^V0Q3!X!@) -MT%O#C;0F`````(/L!(M$)`B)!"3H_/___X/$!,.-M@````"-O"<`````BTPD -M!(N!4`4``"7___\`N@`````]4`&3`'45#[:!4P4``,#H!#P,#Y3`#[;0C78` -MB=##C;8`````C;PG`````%.)PX72?D`/M@B$R70%@/D@=2VX`````.L6C;8` -M````#[8,&(3)=`B`^2!U$XUV`(/``3G0=>GK#HVT)@````"X`````.L%N`$` -M``!;C78`P^L-D)"0D)"0D)"0D)"0D%.+7"0(#[9#`P^V4P+!X@@)T,'@$`^V -M2P$/MA/!X@@)T0G(6\.-="8`C;PG`````%=64XG&B=.)SX7)=!ZY``````^V -M%@^V1@&(`XA3`8/#`H/&`H/!`3GY=>=;7E_#D(/L'(E<)!")="04B7PD&(MT -M)""+?"0D#[='$+K_````9CV%`'<+#[?`#[:4!K`$```/M])ITK`````#EHP% -M``"+GC@*```/MD(TP>`(C80#3`@``(L(B0T`````@>'_````#[9"-,'@"(V< -M`T0(``"+`Z,`````P>`("<B)@J````!FQX*<``````")?"0$B30DZ/S___^+ -M7"00BW0D%(M\)!B#Q!S#B?:-O"<`````@^P<B5PD#(ET)!")?"04B6PD&(ML -M)"`/MGPD)(MU`(GX/`-V,`^VV,'C`XV$'C`"``#'``P```#'!"00)P``Z/S_ -M__^-A!XT`@``BS")-0````#K,(GX#[;8P>,#C80S4`(``,<`#````,<$)!`G -M``#H_/___XV<,U0"``"+,XDU`````(GX#[;(B<C!X`:-!(B-%"@/MIJP"P`` -M@^/\B)JP"P``B?`E```_`#T``!``=0V)V(/(`HB"L`L``.L4B<C!X`:-%(B) -MV(/(`8B$%;`+``"+7"0,BW0D$(M\)!2+;"08@\0<PY"-M"8`````55=64X/L -M'(M$)#2+5"0PBQ*)5"08BQ+&0"4`QD`D!<9`)P:+3"0PB4@LN0````"]```` -M`(V"``(``(E$)!2!P@0"``")5"00ZQ>-M@````"+5"0P#[9""=/XJ`%U#(/! -M`8M$)!@Z2"MRYH#Y`W9Q#[;9P>,#BWPD%`'?QP<L````QP0D$"<``.C\____ -M`UPD$(LSB34`````QP<D````QP0D$"<``.C\____BP.C`````,'@"('F_P`` -M``G&QP<@````QP0D$"<``.C\____BQN)'0````#K;XVT)@`````/MMG!XP.+ -M?"04`=_'!RP```#'!"00)P``Z/S___\#7"00BS.)-0````#'!R0```#'!"00 -M)P``Z/S___^+`Z,`````P>`(@>;_````"<;'!R````#'!"00)P``Z/S___^+ -M&XD=`````('^`0%IEG47BU0D,(!*"`:)V,'H$#Q0#Y3`#[;`ZT:!_@$!``!U -M$8G8P>@0/%`/E,`/ML#K+XGVQP0DB!,``.C\____@\4!B>F`^01W"KD````` -MZ<'^__^)V,'H$#Q0#Y3`#[;`@\0<6UY?7<.-="8`C;PG`````%575E.#[`R+ -M="0@BVPD)(M&5(LX9H.^G`````!T,HGKQP0DZ`,``.C\____A>UT!8/[`78; -MB3PDZ/S___]F@[Z<`````'0)@^L"Z]2-="8`@\0,6UY?7<.0C;0F`````(/L -M'(E<)`R)="00B7PD%(EL)!B+7"0L#[9L)"0/MWPD*`^V1"0PB$0D"XM4)""+ -M0E2+,(DT).C\____B<+&0"3AQD`E`<9`)A*X#P```(GIA,EU"(M,)"`/MD$K -MB$(GB?B(0BB)^0^VQ8A"*0^VQXA"*HG8P>@0B$(KB=C!Z!B(0BR(6BV+3"0@ -M#[=!)&:)0A")<AC'0B``````QT(T`````+@`````@'PD"P!U!;@`````B4)L -MB50D!(DT).C\____BUPD#(MT)!"+?"04BVPD&(/$',.-=@"-O"<`````@^P< -MB5PD#(ET)!")?"04B6PD&(M<)"P/MFPD)`^W?"0HBU0D((M"5(LPB30DZ/S_ -M__^)PL9`).'&0"4!QD`F$K@/````B>F$R74(BTPD(`^V02N(0B>)^(A"*(GY -M#[;%B$(I#[;'B$(JB=C!Z!"(0BN)V,'H&(A"+(A:+8M,)"`/MT$D9HE"$(ER -M&,="(`````#'0C0`````QT)L`````(E4)`2)-"3H_/___XM<)`R+="00BWPD -M%(ML)!B#Q!S#55=64X/L'(M\)#`/MD0D-(A$)!L/MVPD.(7_#X3N````BS>% -M]@^$Y`````^V7BN%VWY#BT=4#[90";D`````]L(!=`KK,(G0T_BH`74'@\$! -M.=EU\8/Y`WXABP8%T`$``(T$B(L`HP````#!Z!2#\`&#X`'K'[D`````BP8% -MT`$``(T$B(L`HP````#!Z!2#\`&#X`&$P'5V@+^L`````'4&@'\F`'5G#[=' -M)("\!K`$``#_=%G&1R8E9L>'G`````$`#[?%#[94)!O'1"00`0```(M,)#R) -M3"0,B40D"(E4)`2)/"3H_/___\=$)`0%````B3PDZ/S____&1R8`9H._G``` -M```/E,`/ML#K!;@`````@\0<6UY?7<.-="8`@^P<B5PD#(ET)!")?"04B6PD -M&(M\)"`/MFPD)`^W7"0HBT=4BS")-"3H_/___XG"QD`DX<9`)0'&0"81N`\` -M``")Z83)=00/MD<KB$(GB%HH#[;'B$(I#[=')&:)0A")<AC'0B``````QT(T -M`````,=";`````")5"0$B30DZ/S___^+7"0,BW0D$(M\)!2+;"08@\0<PXGV -MC;PG`````%575E.#[!R+?"0P#[9$)#2(1"0;#[=L)#B%_P^$\P```(LWA?8/ -MA.D````/MEXKA=M^0XM'5`^V4`FY`````/;"`70*ZS")T-/XJ`%U!X/!`3G+ -M=?&#^0-^(8L&!=`!``"-!(B+`*,`````P>@4@_`!@^`!ZQ^Y`````(L&!=`! -M``"-!(B+`*,`````P>@4@_`!@^`!A,!U>X"_K`````!U!H!_)@!U;`^W1R2` -MO`:P!```_W1>QD<F)6;'AYP````!``^WQ0^V5"0;QT0D#`$```")1"0(B50D -M!(D\).C\____QT0D!`4```")/"3H_/___\9')@!F@[^<`````'43BX>@```` -MBU0D/(D"N`$```#K!;@`````@\0<6UY?7</K#9"0D)"0D)"0D)"0D)"#[!R) -M7"0,B70D$(E\)!2);"08BWPD(`^V;"0D#[=<)"@/MD0D+(A$)`N+1U2+,(DT -M).C\____B<+&0"3AQD`E`<9`)A&X#P```(GIA,EU!`^V1RN(0B>(6B@/ML>( -M0BD/MT<D9HE"$(ER&,="(`````#'0C0`````N`````"`?"0+`'4%N`````") -M0FR)5"0$B30DZ/S___^+7"0,BW0D$(M\)!2+;"08@\0<PXUV`(/L'(E<)`R) -M="00B7PD%(EL)!B+;"0D#[9T)"@/MGPD+(M$)""+&(D<).C\____B<*%P'40 -MQH6U`````<9%)@/I?P```,9`).'&0"4!B?`\`1G`]]"#P`*(0B:)^(3`=3^# -M?30`=`0/MD5-B$(G#[=%'&:)0A")6AC'0B``````QT(T`````+@0-`$`B4)L -MB50D!(D<).C\____ZR>-=@#&0B</#[=%'&:)0A")6AC'0B``````QT(T```` -M`+@`````Z\B+7"0,BW0D$(M\)!2+;"08@\0<PY"-M"8`````55=64X/L+(ML -M)$B+1"1`BQ"+1"1$P>`#C;P0``(``(VT$`0"``"['`$``)"-="8`@WPD1`-V -M&8D?QP0D$"<``.C\____BP:C`````.L7B?:)'\<$)!`G``#H_/___XL&HP`` -M``")A!ST_O__@\,$@?LX`0``=;F+1"00B44`BT0D%(E%!(M$)!B)10B+1"0< -MB44,BT0D((E%$(M$)"2)112+1"0HB448@\0L6UY?7<-55U93@^PLBVPD2(M$ -M)$"+$(M$)$3!X`.-O!```@``C;00!`(``+L``0``D(UT)@"#?"1$`W89B1_' -M!"00)P``Z/S___^+!J,`````ZQ>)]HD?QP0D$"<``.C\____BP:C`````(F$ -M'!#___^#PP2!^QP!``!UN8M$)!")10"+1"04B44$BT0D&(E%"(M$)!R)10R+ -M1"0@B440BT0D)(E%%(M$)"B)11B#Q"Q;7E]=PU575E.#[#P/MD0D5(A$)!.+ -M5"10BQ*)5"08#[;XB?C!X`:-!+@#1"10BTPD4(F(D`L``,:`L0L```")?"0$ -MB0PDZ/S___^-="0<B?")\HGVQ@``@\`!B=.-;"0\.>AU\`^V1"03B40D%(E4 -M)`B)1"0$BU0D4(D4).C\____B1PDZ/S___^)1"0,C0R]`````(GZP>(&C101 -MBT0D4(T<`HM$)`R)@Y@+``"+1"10C900D`L``(M$)"B)0@R+1"0LB4(0@'PD -M$P-V*8M4)!B-A`K0`0``BP"C`````(F#M`L``(V$^H`!``"+$(D5`````.L_ -MC12]`````(M,)!B-A!'0`0``BPB)#0````")^,'@!@'"BT0D4(F,$+0+``"+ -M5"08C83Z@`$``(L0B14`````B?C!X`:-!+@#1"10B9"X"P``]H"V"P``$`^$ -M0`$``/:`L`L```)T7XVT)@````#&!@"#Q@$Y[G7VC5PD'(E<)`B+3"04B4PD -M!(M$)%")!"3H_/___XD<).C\____B?K!X@:-%+J+3"10B801I`L``(V4$:`+ -M``"+1"0HB4((BT0D+(E"#.L7B?C!X`:-!+B+5"10QX0"I`L```$``@"`?"03 -M`W8YC1S]`````(M,)!B-A`LP`@``QP`8````QP0D$"<``.C\____BT0D&(V< -M`S0"``"+$XD5`````.LWC1S]`````(M4)!B-A!-0`@``QP`8````QP0D$"<` -M`.C\____BTPD&(V<"U0"``"+$XD5`````(GXP>`&C02XBTPD4/>$`;0+```` -M``,`=0B!XO___]_K!H'*````((!\)!,#=@^+3"08C83Y-`(``(D0ZPV+3"08 -MC83Y5`(``(D0@\0\6UY?7<.0C;0F`````%575E.#[`R+?"0@BVPD)`^W10!F -MA<!Y"R4`'P``P?@(B$<EC4=0C4T4BU44B5=0BU$$B5`$BU$(B5`(BU$,B5`, -MBU$0B5`0C;>,````BU4NB9>,````BU4RB58$C5]DC4TVBU4VB5=DBU$$B5,$ -MBU$(B5,(BU$,B5,,BU$0B5,0BU$4B5,4BU$8B5,8BU$<B5,<BU$@B5,@BU$D -MB5,DN0H```")PNA&\?__N00```")\HGPZ#CQ__^Y%````(G:B=CH*O'__V;' -M1S@``&;'1SH``&:#O;(!```!#Y3"P>(##[9'*(/@]PG0B$<H]H6G````!'0& -M9L='.`$`]H6D`````70B9H-/.`+VA:H````!=`5F@T\Z`?:%J`````%T!F:! -M3S@``?:%I````"!T$V:#3S@$]H6J````('0%9H-/.@+VA:0```!`=!5F@4\X -M@`#VA:H```!`=`9F@T\Z")#&1TX"]H69`````70S#[='.*@!=`R#R`AFB4<X -M9H-/.A`/MH66````@^`?@\`!B$=./"!U"\9'3A^-M"8`````]H68````"'0& -M9H%/.``"]H68````!'0%9H-/."#VA9@````"=`5F@T\X$/:%J````"!T#O:% -MK@```"!T!6:#3SA`]D<X`708BX7(````BY7,````B4=$B5=(ZQ&-="8`BT5X -MB4=$QT=(`````(-'1/^#5TC_]D5J`G09#[>%@````*@/=`YF@_@"&<"#P`2( -M1SSK!,9'/`+&1SW_#[=5?@^WPJ@$=`G&1ST"ZQF-=@"H`G0&QD<]`>L,]L(! -MC78`=`3&1ST`QD<^__9%:@1T';D`````#[>%L````-/XJ`%T`XA//H/!`8/Y -M!W7HQT0D!``"``")+"3H_/___XF'F````+@!````@\0,6UY?7<-55U93@^PL -M#[9$)$2(1"03BU0D0(L2B50D(`^VP(E$)!2+5"1`#[9"*HM4)!2)5"0(B40D -M!,<$),0```#H_/___XM$)$"`>"J@#X17!@``BT0D%,'@`XM4)""-E`(P`@`` -MB50D&(M4)""-K`(T`@``C90"4`(``(E4)!R+5"0@C;P"5`(``,=$)"0````` -MQT0D*`````"^`````)"-="8`B?`\`70L/`%R%CP"=33'1"0D(`$``,=$)"@D -M`0``ZR+'1"0D&`$``,=$)"@<`0``ZQ#'1"0D'`$``,=$)"@@`0``B70D"(M4 -M)!2)5"0$QP0D:````.C\____@'PD$P,/AN,```"+5"0DBT0D&(D0QP0D$"<` -M`.C\____BUT`B1T`````B5PD"(M$)"2)1"0$QP0D>@```.C\____@>/__T'P -M@<L``#0+B5PD"(M4)"2)5"0$QP0DY````.C\____B5T`BT4`HP````")1"0( -MBT0D)(E$)`3'!"25````Z/S___^+1"0HBU0D&(D"QP0D$"<``.C\____BUT` -MB1T`````B5PD"(M4)"B)5"0$QP0D>@```.C\____@.<_@,_`B5PD"(M$)"B) -M1"0$QP0DY````.C\____B5T`BT4`HP````#IV````(M$)"2+5"0<B0+'!"00 -M)P``Z/S___^+'XD=`````(E<)`B+5"0DB50D!,<$)'H```#H_/___X'C__]! -M\('+```T"XE<)`B+1"0DB40D!,<$).0```#H_/___XD?BP>C`````(E$)`B+ -M5"0DB50D!,<$))4```#H_/___XM4)"B+1"0<B1#'!"00)P``Z/S___^+'XD= -M`````(E<)`B+1"0HB40D!,<$)'H```#H_/___X#G/X#/P(E<)`B+5"0HB50D -M!,<$).0```#H_/___XD?BP>C`````(E$)`B+1"0HB40D!,<$))4```#H_/__ -M_X/&`8/^`P^%O/W__XM4)$"`>BJ@#X2T`P``BT0D%(E$)`3'!"2N````Z/S_ -M__^`?"03`W8ABU0D&,<"#`$``,<$)!`G``#H_/___XM=`(D=`````.L>BT0D -M',<`#`$``,<$)!`G``#H_/___XL?B1T`````B5PD",=$)`0,`0``QP0D>@`` -M`.C\____B=BP`(M4)$"`>BH!=0Z)PX#+]^L,C;0F`````(G#@,O\B5PD",=$ -M)`0,`0``QP0DY````.C\____@'PD$P,/AGL!``")70"+10"C`````(E$)`C' -M1"0$#`$``,<$))4```#H_/___XM$)!C'`*`!``#'!"00)P``Z/S___^+70") -M'0````")7"0(QT0D!*`!``#'!"1Z````Z/S___^!X_[_^_^)7"0(QT0D!*`! -M``#'!"3D````Z/S___^)70"+10"C`````(E$)`C'1"0$H`$``,<$))4```#H -M_/___XM4)!C'`A`!``#'!"00)P``Z/S___^+70")'0````")7"0(QT0D!!`! -M``#'!"1Z````Z/S___^!XP#P__^!R\`/``")7"0(QT0D!!`!``#'!"3D```` -MZ/S___^)70"+10"C`````(E$)`C'1"0$$`$``,<$))4```#H_/___XM$)!C' -M`*`!``#'!"00)P``Z/S___^+70")'0````")7"0(QT0D!*`!``#'!"1Z```` -MZ/S___^#X_>)7"0(QT0D!*`!``#'!"3D````Z/S___^)70"+10"C`````.EK -M`0``B1^+!Z,`````B40D",=$)`0,`0``QP0DE0```.C\____BU0D',<"H`$` -M`,<$)!`G``#H_/___XL?B1T`````B5PD",=$)`2@`0``QP0D>@```.C\____ -M@>/^__O_B5PD",=$)`2@`0``QP0DY````.C\____B1^+!Z,`````B40D",=$ -M)`2@`0``QP0DE0```.C\____BT0D',<`$`$``,<$)!`G``#H_/___XL?B1T` -M````B5PD",=$)`00`0``QP0D>@```.C\____@>,`\/__@<O`#P``B5PD",=$ -M)`00`0``QP0DY````.C\____B1^+!Z,`````B40D",=$)`00`0``QP0DE0`` -M`.C\____BU0D',<"H`$``,<$)!`G``#H_/___XL?B1T`````B5PD",=$)`2@ -M`0``QP0D>@```.C\____@^/WB5PD",=$)`2@`0``QP0DY````.C\____B1^+ -M!Z,`````B40D",=$)`2@`0``QP0DE0```.C\____@'PD$P-V>(MT)!3!Y@.+ -M5"0@C806,`(``,<`"````,<$)!`G``#H_/___XM$)""-M`8T`@``BQZ)'0`` -M``")7"0(QT0D!`@```#'!"1Z````Z/S___^#XX^#RW")7"0(QT0D!`@```#' -M!"3D````Z/S___^)'HL&HP````#K=HMT)!3!Y@.+5"0@C8064`(``,<`"``` -M`,<$)!`G``#H_/___XM$)""-M`94`@``BQZ)'0````")7"0(QT0D!`@```#' -M!"1Z````Z/S___^#XX^#RW")7"0(QT0D!`@```#'!"3D````Z/S___^)'HL& -MHP````")1"0(QT0D!`@```#'!"25````Z/S___^#Q"Q;7E]=PY"-="8`@^P< -MB5PD#(ET)!")?"04B6PD&(ML)""+?0"[@/___^L%@/N%=TH/ML,/MK0'L`0` -M`(GP//]T.0^VP&G`%`T```.'J`4``#EH"'4EQT0D"`@```"+5"0DB50D!(D$ -M).C\____A,!T"8GPZQ*0C70F`(/#`8#[@7:IN/____\/ML"+7"0,BW0D$(M\ -M)!2+;"08@\0<PXVV`````(V_`````%575E.#[#R+5"10BP*`>BL`#X0C`P`` -MQT0D.`````"-B``"``")3"08!00"``")1"04#[9$)#B(1"0W#[;0B50D+(G0 -MP>`&C020BTPD4(T4"/:"M@L``!`/A,("``"X`0````^V3"0LT^`(@K$+``"+ -MLI0+``")="0P]H*P"P```@^$*P$```^V1"0WC7`!B?*+3"10.%$K#X84`0`` -MBT0D+,'@`HE$)""+5"0LP>(&B50D'(GQ#[;YB?C!X`:-'+B+1"10`=B)1"0H -M]H"V"P``$`^$R````(ML)"`#;"0<BU0D4`'JB50D)/>"I`L`````#@`/A*8` -M``"+3"10C809J`L``(V4*:@+``#'1"0("````(E$)`2)%"3H_/___X3`='R+ -M5"10C80:G`L``(V4*IP+``#'1"0("````(E$)`2)%"3H_/___X3`=%*X`0`` -M`(GYT^"+5"0D@<*P"P``"D(!B$(!BU0D*(B"L0L``(-\)#``=0R+BI0+``") -M3"0PZQR)^,'@!HT$N(M,)#"+5"10B8P"E`L``)"-="8`@\8!B?"+5"10.$(K -M#X<"____@WPD,``/A<4```"+3"10B0PDZ/S___^)1"0PA<`/A&4!``"+1"0L -MP>`&BW0D+(T,L`-,)%"+1"0PB8&4"P``#[9$)#>)PL'B!HV$@I`+```#1"10 -MBU0D,(E"&`^V@;`+``"(0@;&0@4`BTPD4(D*QD(*`,9"-`#&0AP`#[94)#># -MP@$X42MV98GPP>`&C02PC9P!L`L``(VT)@`````/MLH/MD,!T_BH`707B<C! -MX`:-!(B+3"0PBW0D4(F,!I0+``"#P@&+="10.%8K=A_KSHM$)"S!X`:+5"0L -MC020BW0D,(M,)%")M`&4"P``BT0D+,'@!HM4)"R-!)"+3"10C90!L`L```^V -M0@&+="0PB$8)#[9R`8!\)#<#=B>+7"0LP>,#BT0D&`'8QP`X````QP0D$"<` -M`.C\____`UPD%(DSZRN+7"0LP>,#BT0D&`'8QP`X````QP0D$"<``.C\____ -M`UPD%(DSC;8`````@T0D.`$/MD0D-X/``8M4)%`X0BL/A_C\__^#Q#Q;7E]= -MPXVT)@````"-O"<`````55=64X/L3(MT)&"+'L9$)$!0QD0D007&1"1"!,9$ -M)$,PQD0D1!'&1"1%J\9$)$8`QD0D1P#'@P!``0`3(```BP;'@`1``0#__P`` -MBP;'@`1``0``````.[8\!0``#X7D````C;ZX#```C:Y0!0``QT0D$`$```#' -M1"0,"````(EL)`C'1"0$```"`(DT).C\____BX9(!0``#[:64P4``(/J!(T$ -M@HB&4P4``(DT).C\____A,!U$8M$)$")AE`%``"+1"1$B44$H0``````AE,% -M``"#P`&C``````^VAE`%``"(AU`%```/MH91!0``B(=1!0``#[:&4@4``(B' -M4@4```^VAE,%``"#P`*(AU,%```/MH94!0``B(=4!0``#[:&504``(B'504` -M``^VAE8%``"(AU8%```/MH97!0``B(=7!0``B=^-@P`!``")1"0HBX,``0`` -MHP`````/M]")5"1(J"!T"R7?_P``B40D2.L6B="#R"")1"1(BU0D*(D"BP*C -M`````(L&QX`$`0```````(L&QX`8`0```````(L&QX`<`0```````,<$))#0 -M`P#H_/___\>'<`$``!@!``"+AW0!``"C`````(#D_8#,!(E$)$C'AW`!```8 -M`0``BT0D2(F'=`$``,>'<`$``"@!``#'AW0!``!_?P``QX=P`0``)`$``(N' -M=`$``*,`````9K@```W_/P``B40D2,>'<`$``"0!``"+1"1(B8=T`0``QX=P -M`0``/`$``,>'=`$`````>@#'AW`!``"D`0``QX=T`0``?;_O_\>'<`$``+@! -M``"+AW0!``"C`````"7__P``#0``^@")1"1(QX=P`0``N`$``(M$)$B)AW0! -M``#'AYP```#_````QX>0`@``1`$``,>'E`(```80``C'AY`"``"T`0``QX>4 -M`@``7W```,>'D`(``#````"+AY0"``"C`````##D@,PSB40D2(F'E`(``(!^ -M*P`/A'H"``#'1"0L`````(V'4`(``(E$)!B-EU0"``")5"04#[9$)"R(1"0S -M/`,/AA$!```/MNB-%.T`````B50D)(V$%S`"``")1"0@QP`(````QP0D$"<` -M`.C\____BU0D)(V<%S0"``"+`Z,`````B40D2`T``(``B0.-AE`%``")1"0( -MB6PD!(DT).C\____B6PD!(DT).C\____BT0D(,<`1`$``,<$)!`G``#H_/__ -M_\<#!A``"(M4)"#'`K0!``#'!"00)P``Z/S____'`U]P``"+1"0@QP`(```` -MQP0D$"<``.C\____QT0D2/]4@`#'`_]4``#'1"0(`0```(EL)`2)-"3H_/__ -M_XM$)"2-E`>``0``BP*C`````"7___[_B0+'1"1(!0'(`(M4)"2-A!>$`0`` -MQP`%`<@`Z0X!```/MFPD,XT$[0````")1"0XBU0D&`'"B50D',<""````,<$ -M)!`G``#H_/___XM<)#@#7"04BP.C`````(E$)$@-``"``(D#C890!0``B40D -M"(EL)`2)-"3H_/___XEL)`2)-"3H_/___XM$)!S'`$0!``#'!"00)P``Z/S_ -M___'`P80``B+5"0<QP*T`0``QP0D$"<``.C\____QP-?<```BT0D',<`"``` -M`,<$)!`G``#H_/___\=$)$C_5(``QP/_5```QT0D"`$```");"0$B30DZ/S_ -M__^+1"0XC90X@`$``(L"HP`````E___^_XD"QT0D2`4!R`"+5"0XC90ZA`$` -M`(E4)#3'`@4!R`#'!"2@A@$`Z/S___^);"0$B30DZ/S___^#1"0L`0^V1"0S -M@\`!.$8K#X>B_?__B30DZ/S___^+AP0!``"C`````(/(`HE$)$B)AP0!``"+ -M5"0HBP*C`````(/@\(/(#8E$)$B)`HL"HP````"+AA@*``")AP@!``"+AAP* -M``")APP!``"+ACP*``")AQ`!``"+AD`*``")AQ0!``#'AR`!````````#[>& -MC`L``"7_#P``#0```0")AR`!``"+AH0*``")AR0!``"+AH@*``")AR@!``"+ -MAJ0*``#'`/\/``#'AS0!````````#[>&C@L``"7_#P``#0```0")AS0!``"+ -MAJ@*``")AS@!``"+AJP*``")ASP!``#'AT@!````````QT0D2``!``#'ATP! -M`````0``BX<$`0``HP````"#R%F)AP0!``#'1"1(^_\`#,>'5`$``/O_``S' -MAUP!``#__P``N`````"-=@#'A(;(!0```````,=$AE0`````@\`!@_@0=>5F -MQX:("P``_P]FQX:*"P``_P_&1C@!L`&#Q$Q;7E]=PY"-="8`55=64X/L'(E$ -M)!2)UXLHB2PDZ/S___^)PX7`=0S&A[4````!Z<````")+"3H_/___XG&A<!U -M&,:'M0````&)7"0$B2PDZ/S____IF@```(U#/(E$)!C&0R3AQD,E`<9#)@,/ -MMT<<9HE#$,9#:`J+5"04BP*)0QC'0R```@``BU8(B5,TN`````"-M"8````` -MQ@00`(/``3T``@``=?*)<U#'0VP0-`$`QT0D!`````"+1"08B00DZ/S___^+ -M0R")1"0,BT8,BU80B40D!(E4)`B+5"08B10DZ/S___^)7"0$B2PDZ/S___^# -MQ!Q;7E]=P^L-D)"0D)"0D)"0D)"0D%575E.#[$R+1"1@BR@/MD`)A,`/A%<$ -M```/MMC'1"0X`````/;#`749N@````")]H/"`0^VRHE,)#B)V-/XJ`%T[HM$ -M)#C!X`:+="0XC02PC10HBX*D"P``J0```@!T$`T```0`)?___?^)@J0+``"+ -M1"0XP>`&BWPD.(T$N(N$!:0+``"I```$``^$!@,``(N%/`4``(E$)$@YZ'4* -MC96X#```B50D2(M$)#C!X`:+3"0XC02(`>@/MI"O"P``B50D*`^VD*X+``") -M5"0D#[:0K0L``(E4)"`/MI"L"P``B50D'`^VD*L+``")5"08#[:0J@L``(E4 -M)!0/MI"I"P``B50D$`^V@*@+``")1"0,#[9%*8E$)`B)3"0$QP0D!`$``.C\ -M____QT0D/`````"+="0XP>8"B70D1(M\)#C!YP:)?"1`BU0D/(M,)$@/MH0* -M,`4``#S_#X2B````#[;`:<`4#0``B<,#F:@%``"+="1$BWPD0(V$/J`+``"- -M?`4(N`@```#\B=Z)P?.F#Y?"#Y+`.,)U:`^V0P>)1"0@#[9#!HE$)!P/MD,% -MB40D&`^V0P2)1"04#[9#`XE$)!`/MD,"B40D#`^V0P&)1"0(#[8#B40D!,<$ -M)%0!``#H_/___XM\)&#&1P7_B7PD!(DL).C\____Z70"``"-="8`@T0D/`&# -M?"0\`@^%-O___XDL).C\____B<.%P`^$3@(``(M$)#C!X`:+5"0XC020]H0% -MI0L```1T!(!+-0*+1"0XP>`&BTPD.(T$B/:$!:8+```$=`2`2S40BT0D.,'@ -M!HMT)#B-!+#VA`6E"P``"'0$@$LU!(M$)#C!X`:+?"0XC02X]H0%I@L```AT -M!(!+-2"+1"0XP>`&BU0D.(T$D/:$!:4+```"=`2`2S4!BT0D.,'@!HM,)#B- -M!(CVA`6F"P```G0$@$LU",9#,`")WXM$)#C!X`:+="0XC82PH`L``(U$!0"+ -M4`B)$XM`#(E#!(M$)&")0PB)!"3H_/___XB#BP```(M4)&"`0AP!@'TK`'0P -MN0````"Z`````(GVBW0D8`^V1@G3^*@!=`X/ML*(3`-`@$,R`8/"`8/!`3A- -M*W?<BT0D8(M(,(U3((E0,(M$)&"#P"R)0R")2R2)$8M4)&"`0C0!QT0D$``` -M```/MH.+````B40D#(E\)`B)5"0$BX7X"0``B00DZ/S____IV@```*D```@` -M#X3/````B2PDZ/S___^)PX7`#X2]````QD`G!L9`)@5FQX"4``````#&0"0& -MQD`E`,=`1```!0#'0$@`````C8B@````BT0D.,'@!HMT)#B-A+"@"P``C40% -M`(M0"(F3H````(M`#(E!!(N#H````(F#F````(M!!(F#G````(M\)&")>RR) -M/"3H_/___XB#M@```&:#2S@0B3PDZ/S___\\"78&9H%+.``"BT0D8,9`"@&+ -M4#R)6#R+1"1@@\`XB0.)4P2)&HE<)`2)+"3H_/___XGV@\1,6UY?7<.0C;0F -M`````%575E.#["R+?"1`BUPD1(7;=!4/MD,%A,!T#3S_#X64!P``Z1P!``"Z -M`````(UV``^VA#HV!0``//]T#0^VP&O`7(V<!T`!``"#P@&#^@1UW[X````` -M#[:$/C8%```\_W0Q#[;`:\!<C9P'0`$``/:$!T8!```"=!+'1"0$`````(D< -M).C\____ZPB)'"3H_/___X/&`8/^!'6[#[9')F8YA]@)```/A0L'``"%VW5_ -M@'\Y``^%_08``,9'.0&)]HN$G[`"``"%P'16BU!PA=)T+L=`<`````#'A)^P -M`@```````,=$)`C_____B40D!(M`>(D$)/_2ZR>-M@````"+4'2%TG0:QT!T -M`````,>$G[`"````````BT!XB00D_]*#PP&#^T`/A(H&``#KD<9#!?^)7"0$ -MB3PDZ/S____I<P8``+H`````C;0F``````^VA#HV!0``//\/A/`````/MLAK -MP5R-G`=``0``B5PD)(![!?\/A-4```"`>PH`#X0R!@``O@````!KV5R-K!]X -M`0``B2PDZ/S___^)P8T$.XN0?`$``(F(?`$``(DIB5$$B0J`>2;_='Z`N;4` -M````#X3P!0``#[99)`^VTXG0@^`&@_@&=2GVP@%T2HE,)`P/MD%-B40D"(M! -M,(E$)`2+1"0DB00DZ/S____IM@4``(/X!`^%K04``/;#`8UV``^$H04``(E, -M)`2)/"3H_/___^F0!0``B4PD!(D\).C\____Z7\%``"#Q@&)\CB4'TH!```/ -MAFT%``#I1?___Y"#P@&#^@0/A?3^___'1"0<`````(!_.0`/A9<```"[```` -M`(N4G[`"```/MH0[L`0``(72=&J+2G"%R71C@WI@`'5=//]T+0^V\&G&)`$` -M``.'<`4``/9`)P1T&(!X)0!U$HET)`B)5"0$B3PDZ/S____K+,>$G[`"```` -M````QT)P`````,=$)`C_____B50D!(M">(D$)/_1C;8`````@\,!@_M`#X5W -M____QD<Y`>FR!```BTPD'`^VA#DV!0``//\/A(X$```/MM!KPER-G`=``0`` -MB5PD*("\!TH!````#X1O!```QD0D(P")Q8V$!W@!``")1"00C;8`````BU0D -M$(D4).C\____B<.-1#T`BY!\`0``B9A\`0``BTPD$(D+B5,$B1J`>R;_#X4- -M!```#[=#'(E$)!0/MI0XL`0``&:)5"0:B[2'L`(``/9#*`1T:X7V=&>#?G`` -M=&&#?F``=5N`8RC[]D,G!(UV`'05#[?"B40D"(ET)`2)/"3H_/___^LYBU9P -MBTPD%,>$C[`"````````QT9P`````,=#(`````#'1"0(_____XET)`2+1GB) -M!"3_TI"-="8`]D,G!`^$9@$``,:#M`````"`I"](`0``Y_9#*`$/A/T```"` -M8RC^BT,@A<!T58![)0!U,/9#)P1T*@^V1RG!X`8#1"04B40D"(N'/`4``(E$ -M)`3'!"0'````Z/S____IW````(E$)`B+ASP%``")1"0$QP0D`0```.C\____ -MZ;T```"%]G1DBU9PA=*-="8`=%F`>R4`=2#V0R<$=!H/MT0D&HE$)`B)="0$ -MB3PDZ/S____IB````(M$)!3'A(>P`@```````,=&<`````#'0R``````QT0D -M"/____^)="0$BT9XB00D_]+K58![)0!U3_9#)P1T20^V1RG!X`8#1"04B40D -M"(N'/`4``(E$)`3'!"0"````Z/S____K(HGVBT,@A<!T&8M0=(72=!+'0'0` -M````BT,@BT!XB00D_]+V0R@"#X0V`@``BT,@B40D"(N'/`4``(E$)`3'!"0& -M````Z/S___^`8RC]Z>0!``"+0R"%P`^$V0$``(-X=`"0#X3.`0``QD,G`<9# -M)@")7"0(QT0D!`8```"+5"0HB10DZ/S___^#>S``=!*+4PB+0PR)0@2)$(M# -M,(!H,`&`>T\`=!J)/"3H_/___\<$)`$```#H_/___X![3P!UYHN3Y````(72 -M=!O'1"0(`0````^V@]D```")1"0$B10DZ/S___^+4S"%TG08QT0D"`$````/ -MMD--B40D!(D4).C\____BW,@A?8/A/8```#V0R@$=5V)/"3H_/___\=$)`@! -M````BT,@B40D!(D\).C\____BU,@#[9"`HE$)`@/MD(!B40D!,<$)+T```#H -M_/___XM#((E$)`B+ASP%``")1"0$QP0D`0```.C\____ZSD/MD8"B40D"`^V -M1@&)1"0$QP0DO0```.C\____BT,@B40D"(N'/`4``(E$)`3'!"0!````Z/S_ -M__^+5G2%TG0>#[=#',>$A[`"````````QT9T`````(M&>(D$)/_2]D,H`G0A -MBT,@B40D"(N'/`4``(E$)`3'!"0&````Z/S___^`8RC]QT,@`````,=&8``` -M``"+4S2%TG0,#[9#3<=$@CP`````BQ.+0P2)0@2)$("L+TH!```!B5PD!(D\ -M).C\____]D,H`G0FBT,@B40D"(N'/`4``(E$)`3'!"0&````Z/S___^`8RC] -MD(UT)@"`1"0C`0^V3"0C.(PO2@$```^'J?O__X-$)!P!@WPD'`0/A4[[__^X -M`0```(/$+%M>7UW#C;8`````C;\`````5U93@^P0BW0D((L^B30DZ/S___^$ -MP'08#[9?*X3;=#$/ME8)N0````#VP@%T'.LAQD8%_XET)`2)/"3H_/___^M< -MB=#3^*@!=0>#P0$XV77QB3PDZ/S___^)P87`=#^+5CR)1CR-1CB)`8E1!(D* -M@$8*`8EQ+,9!)`7&024`QD%-#\=$)`P!````QT0D"`$```")3"0$B30DZ/S_ -M__^#Q!!;7E_#C70F`(V\)P````"#["R)7"0<B70D((E\)"2);"0HBWPD,(MT -M)#2+%XM>5`^V1B8\)`^'=`<```^VP/\DA0`(``#V1C($=`QFQT8R`0#&1B8! -MZU)F@WXR((UV`'4,9L=&,@@`QD8F$>L\#[=&,H3`>17V1BT#=`\D?X/("&:) -M1C+&1B8-ZQ_V1C((=`;&1B8'ZQ/V1C,"D(UT)@!T",9&*P#&1B8>B70D!(D\ -M).C\____Z?4&``"+@@0!``"C`````(/(4(F"!`$``,=$)`P!````QT0D"`(` -M``#'1"0$`0```(DT).C\____Z;P&``#'1"0,`0```,=$)`@`````QT0D!`$` -M``")-"3H_/___^F7!@``QT0D#`$```#'1"0(`0```,=$)`0!````B30DZ/S_ -M___I<@8``,=$)`P!````QT0D"&````#'1"0$`0```(DT).C\____Z4T&```/ -MMD8LQT0D$`$```")1"0,QT0D"&````#'1"0$`0```(DT).C\____Z2`&``#' -M1"00`0```,=$)`P```$$QT0D""$```#'1"0$`0```(DT).C\____Z?,%``"+ -M0QB!8"C___?_QT0D$`$```#'1"0,`0```,=$)`@"````QT0D!`````")-"3H -M_/___^F\!0``QT0D$`$```#'1"0,`````,=$)`@"````QT0D!`````")-"3H -M_/___\<$)!`G``#H_/___^F#!0``BT,8@6`H___W_\=$)!`!````QT0D#`$` -M``#'1"0(`@```,=$)`0`````B30DZ/S____I3`4``,=$)!`!````QT0D#``` -M``#'1"0(`@```,=$)`0`````B30DZ/S____'!"00)P``Z/S____I$P4``,=$ -M)`P!````QT0D"`(```#'1"0$`````(DT).C\____Z>X$``#'1"0,`0```,=$ -M)`@`````QT0D!`````")-"3H_/___^G)!```QT0D#`$```#'1"0(`0```,=$ -M)`0`````B30DZ/S____II`0``,=$)!`!````QT0D#/_____'1"0(`0```,=$ -M)`0`````B30DZ/S____I=P0``,=$)`P!````QT0D"`````#'1"0$`````(DT -M).C\____Z5($```/MD8KBVR&/(E=+(EU-`^V1BN(14W&128#QD4E`(!-)`6` -M0PH!C4,XBU`$B6@$B44`B54$B2K'!"2`&@8`Z/S___^`?RL`="6^`````/9# -M"0%T#NL8#[9#"8GQT_BH`741@\8!B?`X1RMWZNL%O@````"+4QB+0BBI```( -M`'0*)?__]_^)0BCK9HGR#[;"P>`#B40D&+NX"P``B?&`^0-V(8L'!8`!```# -M1"08BP"C`````,'H$X/@`>L?C;0F`````(L'!8`!```#1"08BP"C`````,'H -M$X/@`83`=1''!"3H`P``Z/S___^#ZP%UJXEL)`2)/"3H_/___^E2`P``QP0D -M0`T#`.C\____QT0D#`````#'1"0((````,=$)`0!````B30DZ/S____'!"00 -M)P``Z/S____I%0,``,=$)`P`````QT0D"`$```#'1"0$`````(DT).C\____ -MQP0D$"<``.C\____Z>0"``"+0QB!8"C___?_QT0D$`````#'1"0,_____\=$ -M)`@!````QT0D!`````")-"3H_/___\<$)!`G``#H_/___^FA`@``QT0D#``` -M``#'1"0(`````,=$)`0`````B30DZ/S____'!"00)P``Z/S____I<`(``(ET -M)`2)/"3H_/___^E?`@``B70D!(D\).C\____C78`Z4L"``#'1"00`0```,=$ -M)`SP````QT0D")L```#'1"0$`0```(DT).C\____Z1X"``#'1"00`0```,=$ -M)`R@UEHKQT0D".`#``#'1"0$`0```(DT).C\____Z?$!``#'1"00`0```,=$ -M)`P`X`,`QT0D"*0#``#'1"0$`0```(DT).C\____Z<0!``#'1"00`0```,=$ -M)`SDJ`8!QT0D",0#``#'1"0$`0```(DT).C\____Z9<!``#'1"0,`0```,=$ -M)`A(`P``QT0D!`$```")-"3H_/___^ER`0``QP0D0`T#`.C\____QT0D#`$` -M``#'1"0((````,=$)`0!````B30DZ/S____'!"00)P``Z/S____I-0$``,=$ -M)!`!````QT0D#`````#'1"0((0```,=$)`0!````B30DZ/S____I"`$``,=$ -M)`P!````QT0D"&````#'1"0$`0```(DT).C\____Z>,````/MD8LQT0D$`$` -M``")1"0,QT0D"&````#'1"0$`0```(DT).C\____Z;8```"+1E3&0`4`BT94 -MB00DZ/S____IGP```,=$)`P!````QT0D"`$```#'1"0$`````(DT).C\____ -MQP0D$"<``.C\____ZW&+0QB!8"C___?_QT0D$`$```#'1"0,_____\=$)`@! -M````QT0D!`````")-"3H_/___\<$)!`G``#H_/___^LQQT0D#`$```#'1"0( -M`0```,=$)`0`````B30DZ/S____'!"00)P``Z/S___^0C70F`+@!````BUPD -M'(MT)""+?"0DBVPD*(/$+,.-M"8`````@^P<B5PD$(ET)!2)?"08BUPD((M\ -M)"0/MU<09H'ZA0!W?@^WP@^VA!BP!```//]T;V:#^G]W&0^VP&G`)`$```.# -M<`4``(M`+`^V2`3K5I`/MT<09CV!`'<@#[?`#[:$&+`$``!IP!0-```#@Z@% -M``"+0`@/MD@$ZRL/MT<0#[:$&+`$``!IP+`````#@XP%``"+0%0/MD@$ZPJ0 -MC70F`+G_____N/____]F@7\0A0!W#`^W1Q`/MH08L`0``(NSC`4```^VT8#Y -M_W04@+P:-@4``/]T"CS_=`:`?Q0&=2:#?U``=`^-1U")1"0$B1PDZ/S___^) -M?"0$B1PDZ/S____IZ@````^VP&G`L`````'&#[9&)CP:='8\&G<*/!$/A9L` -M``#K&SP;C;0F`````'1C/!P/A88```"-M@````#K>HN3.`H``('"3`@```^V -M1C3!X`@!PHL*B0T`````#[;)BY,X"@``@<)$"```#[9&-,'@"`'"BP*C```` -M`,'@"`G!B8Z4````QD8F&NLQQD8F&^LKBX,X"@``!4P(```/ME8TP>((`="+ -M`*,`````@^#WB$8LQD8F'.L$QD8F'8-_4`!T#XU'4(E$)`2)'"3H_/___XE\ -M)`2)'"3H_/___XET)`2)'"3H_/___XUV`(M<)!"+="04BWPD&(/$',.#["R) -M7"0<B70D((E\)"2);"0HBUPD-(MS+`^W4QRX`````(M,)#"`O`JP!```_P^$ -M*PD```^V0R8\"0^$+P4``#P)=TL\!0^$F````#P%D'<>/`,/A+8````\!(UT -M)@`/A=X(``#IY````)"-="8`/`</A(T$```\!XVV``````^'$`0``.F9`@`` -MD(UT)@`\%@^$?`,``#P6C;8`````=R,\%`^$F`4``#P4C70F``^'Y@(``#P* -M#X6&"```B?;I$`4``#P:#X0W`@``//^0#X1P!0``/!</A68(``")]NE"`P`` -MBT0D,`^V:"N)ZH32#X2A````#[96";\`````]L(!#X2"````Z8H```")]HM& -M&(%@*/___O^+0RS'1"0,`````,=$)`@!````B5PD!(D$).C\____QP0D!0`` -M`.C\____N`$```#I$0@``,=$)`P`````QT0D"`````")7"0$B30DZ/S____' -M!"10PP``Z/S___^X`0```.G?!P``B=")^=/XJ`%U$H/'`8GXB>DXR'7KZP6_ -M``````^V4R2)T(/@!H/X!G4)]L(!#X75````BU88BT(HJ0```0!T#27___[_ -MB4(HZ;L```")^@^VPL'@`XE$)!B]N`L``)"+3"0PBQ&)^#P#=AF+3"08C801 -M@`$``(L`HP`````E```!`.L7BTPD&(V$$8`!``"+`*,`````)0```0"%P'0R -MB?@\`W86BTPD&(V$$8`!``#'`````0#I#P<``(M,)!B-A!&``0``QP````$` -MZ?D&``#'!"3H`P``Z/S___^#[0$/A7G____&0R<"QD,F_XE<)`2+1"0PB00D -MZ/S___^X`0```.G7!@``]D8&`70VB5PD!(DT).C\____A,!U)KWZ````B5PD -M!(DT).C\____A,!U$<<$).@#``#H_/___X/M`77?B?J`^@-V'(M,)#"+`06` -M`0``#[;2C130BP*C`````(D"ZQR+5"0PBP(%@`$``(GY#[;1C130BP*C```` -M`(D"BT,LB=KH,N7__\<$)"!.``#H_/___[@!````Z3P&``")5"0$QP0DC`$` -M`.C\____BW,LBSZ)/"3H_/___XG!A<!U$<:#M0````&X`0```.D(!@``QD`D -MX<9`)0'&0"87#[=#'&:)01"+!HE!&,=!(`````#'030`````QT%L$#0!`(E, -M)`2)/"3H_/___[@!````Z<0%``")5"0$QP0DTP```.C\____BW,LBSZ)/"3H -M_/___XG!A<!U$<:#M0````&X`0```.F0!0``QD`DX<9`)0'&0"88#[=#'&:) -M01"+!HE!&,=!(`````#'030`````QT%L$#0!`(E,)`2)/"3H_/___[@!```` -MZ4P%``")VHGPZ"/D__^X`0```.DY!0``BSZ)/"3H_/___XG"#[9+/(7`=1'& -M@[4````!N`$```#I%`4``,9`).'&0"4!QD`F!8A()P^W0QQFB4(0BP:)0AC' -M0B``````QT(T`````,=";!`T`0"(2S^)5"0$B3PDZ/S___^X`0```.G*!``` -MBSZ)/"3H_/___XG"#[9+/H7`=1'&@[4````!N`$```#II00``,9`).'&0"4! -MQD`F!(A()P^W0QQFB4(0BP:)0AC'0B``````QT(T`````,=";!`T`0"(2T&) -M5"0$B3PDZ/S___^X`0```.E;!```BSZ)/"3H_/___XG!A<!U$<:#M0````&X -M`0```.DZ!```QD`DX<9`)0'&0"8&#[=#'&:)01"+!HE!&,=!(`````#'030` -M````QT%L$#0!`(E,)`2)/"3H_/___[@!````Z?8#``"-M@````"+/HD\).C\ -M____B<&%P'41QH.U`````;@!````Z<\#``#&0"3AQD`E`<9`)@P/MT,<9HE! -M$(L&B4$8QT$@`````,=!-`````#'06P0-`$`B4PD!(D\).C\____N`$```#I -MBP,``(L^B3PDZ/S___^)P87`=1'&@[4````!N`$```#I:@,``,9`).'&0"4! -MQD`F%L9`*`$/MT,<9HE!$,9!:`^+!HE!&,=!(`````#'030`````QT%L$#0! -M`(E,)`2)/"3H_/___[@!````Z1X#``#&0R;_#[93)(G0@^`&@_@&=07VP@%U -M%X-[-`!U$8DT).C\____B(.V````C78`@'LG`G4:BT,LB5PD"(E$)`2+1"0P -MB00DZ/S___^-=@#V1@@"=1J[`````(U^.(!^"@`/A6`!``#I?`(``(UV`(M6 -M*`^V6BH/MLL/MD(?@^@!.<%]-HU#`8A"*H!"*P'&0B8`#[=",H/@_H/("&:) -M0C*)5"0$BU0D,(D4).C\____N`$```#I90(``#G!=!:[`````(U^.(!^"@!U -M-(UV`.DO`@``QD(F``^W0C*#X/:`S`)FB4(RB50D!(M,)#")#"3H_/___[@! -M````Z1\"``")/"3H_/___XG!BT8\B4X\B3F)002)"(!Y)O\/A(X```"`N;4` -M````#X35`0``#[99)`^VTXG0@^`&@_@&=2KVP@%T40^V04V+43")3"0,B40D -M"(E4)`2)-"3H_/___[@!````Z;8!``"#^`0/A9$!``#VPP$/A(@!``")3"0$ -MBT0D,(D$).C\____N`$```#IB@$``(E,)`2+5"0PB10DZ/S___^X`0```.EP -M`0``QH&U`````(/#`3A>"@^&00$``.DY____B3PDZ/S___^)P8M&/(E./(DY -MB4$$B0B`>2;_#X2?````@'DE``^%C@```("YM0`````/A`0!```/MEDD#[;3 -MB="#X`:#^`9U*O;"`711#[9!38M1,(E,)`R)1"0(B50D!(DT).C\____N`$` -M``#IY0```(/X!`^%P````/;#`0^$MP```(E,)`2+3"0PB0PDZ/S___^X`0`` -M`.FY````B4PD!(M$)#")!"3H_/___[@!````Z9\```#&@;4`````@\,!#[9& -M"CC8#X<Q____.,-U3H3`=$J[`````(U^.(D\).C\____B<*+1CR)5CR).HE" -M!(D0#[9")3PB=`0\#747QT0D!`H```")%"3H_/___[@!````ZS^#PP$X7@IW -MOL9&!?^)="0$BU0D,(D4).C\____N`$```#K'+@!````ZQ6%[8UV``^$$?G_ -M_^DN^?__D(UT)@"+7"0<BW0D((M\)"2+;"0H@\0LPXVV`````(V_`````(/L -M+(E<)!R)="0@B7PD)(EL)"B+?"0PBVPD-`^W51!F@?J%``^'O@````^WP@^V -MC`>P!```@/G_#X2J````9H/Z?W<<#[;!BY=P!0``:<`D`0``BT00+`^V0`3K -M.HUV`&:!^H$`=QD/ML&+EZ@%``!IP!0-``"+1!`(#[9`!.L7#[;!BY>,!0`` -M:<"P````BT005`^V0`0\_W1-#[;`#[:<!S8%``"`^_]T%8#Y_W00#[95%(#Z -M!G57C;0F`````(#[_W0C@/G_=!X/ML%IP"0!``")Q@.W<`4``,9&)P+&1B;_ -MZ2T"``"#?5``=`^-15")1"0$B3PDZ/S___^);"0$B3PDZ/S____I-`(``(GV -M#[;!:<`D`0``B<8#MW`%``"+332$T@^$M`````^V128\!@^$S0```#P,#X3% -M````#[>6E````(U"`6:)AI0```!F@_H)=A>`?B8&=!'&1B<"QD8F_X!F*/[I -MIP$``,<$).@#``#H_/___P^V5B2)T(/@!H/X!G4^]L(!=#G'1"00`````,=$ -M)`P"````#[9&38E$)`B+1C")1"0$#[;#:\!<C80'0`$``(D$).C\____Z7P! -M``#&1B8#B70D!(D\).C\____Z6<!``"0C70F``^V128\`74-QD8F!(UT)@#I -M(`$``#P"=0S&1B8%C78`Z1`!```\`P^%E@```(G(@'XF!74K9H%Y!,@W=2,/ -MMT8<B40D!,<$),`!``#H_/___\9&)@;IVP```(VV`````(E$)`2)-"3H_/__ -M_XU&9+HH````Z'>X__^$P'4XC490NA0```#H9KC__X3`=2>-AHP```"Z"``` -M`.A2N/__A,!U$XM&1`M&2'0+QD8F%XGVZ8````#&1B8:9H.&E`````'K<CP7 -M=0;&1B85ZV@\&)!U!L9&)A;K73P$=0;&1B8'ZU,\!74&QD8F".M)/`:)]G4& -MQD8F">L]/`QU!L9&)@KK,SP6=0;&1B84ZRD\#HGV=2.#?5``=`^-15")1"0$ -MB3PDZ/S___^);"0$B3PDZ/S____K+8-]4`!T#XU%4(E$)`2)/"3H_/___XEL -M)`2)/"3H_/___XET)`2)/"3H_/___XM<)!R+="0@BWPD)(ML)"B#Q"S#C78` -MC;PG`````(/L+(E<)!R)="0@B7PD)(EL)"B+;"0TBW4L#[=%'+H`````BTPD -M,("\`;`$``#_#X3K`@``#[9%)CP4#X34````/!1W.SP-#X0$`0``/`V0=Q`\ -M!0^%NP(``(VV`````.M3/`X/A/L````\#XUT)@`/A9\"``#I_````)"-="8` -M/!L/A)\````\&XVV`````'<0/!AT.3P9#X5W`@``B?;K1SP<=%T\_P^%9P(` -M`(GVZ<8```#'1"0$`````(DL).C\____N@$```#I40(``,=$)`0!````B2PD -MZ/S___^Z`0```.DW`@``QT0D!`$```")+"3H_/___[H!````Z1T"``")+"3H -M_/___[H!````Z0L"``")+"3H_/___[H!````Z?D!``#V13D$=!*)+"3H_/__ -M_[H!````Z>$!``")+"3H_/___[H!````Z<\!``")+"3H_/___[H!````B?;I -MNP$``(DL).C\____N@$```#IJ0$``,9%)O^`?@H`#X3I````NP````"-?CB- -M=@")/"3H_/___XG"BT8\B58\B3J)0@2)$(!Z)O\/A)\```"`>B4`#X6<```` -M@+JU``````^$30$```^V6B0/MLN)R(/@!H/X!G4J]L$!=%*)5"0,#[9"38E$ -M)`B+0C")1"0$B30DZ/S___^Z`0```.D=`0``@_@$#X4)`0``]L,!D`^$_P`` -M`(E4)`2+1"0PB00DZ/S___^Z`0```.GP````B50D!(M,)#")#"3H_/___[H! -M````Z=8```"-M@````#&@K4`````@\,!#[9&"CC8#X<J____.,,/A8P````/ -MMD4E/")T%#P-=!"_`````(UN.(!^"@!U'.MPQT0D!`H```")+"3H_/___[H! -M````Z7P```")+"3H_/___XG#BT8\B5X\B2N)0P2)&`^V0R4\(G0$/`UU*8E< -M)`3'!"3I````Z/S____'1"0$"@```(D<).C\____N@$```#K,HGV@\<!B?@X -M1@IWJL9&!?^)="0$BTPD,(D,).C\____N@$```#K"[H!````C;8`````B="+ -M7"0<BW0D((M\)"2+;"0H@\0LPXUV`(V\)P````!55U93@^PLBUPD1`^W4Q"Y -M_____[C_____9H'ZA0!W>P^WPHMT)$`/MHP&L`0``+C_____@/G_=&)F@_I_ -M=QT/ML&+?"1`BY=P!0``:<`D`0``BT00+`^V0`3K/V:!^H$`=QT/ML&+="1` -MBY:H!0``:<`4#0``BT00"`^V0`3K&P^VP8M\)$"+EXP%``!IP+````"+1!!4 -M#[9`!`^VP(M4)$`/MK0"-@4``&O&7(V$`D`!``")1"0D#[;!:<`D`0```X)P -M!0``B40D*(M+-`^V$<'B&`^V00'!X!`)P@^V00,)P@^V00+!X`@)PHU9"(G0 -MP>@#@_@0=@6X$````(T$P8E$)!PYPP^'D`$``,=$)"``````:_9<B70D&`-T -M)$")="04B1PDZ/S___^)Q8US!+^4"```N00```#\\Z8/E\(/DL`XP@^%1`$` -M`(/]$`^'.P$``(-$)"`!@WPD(`%U*HM,)"C'@1P!```!````B:D@`0``BP.) -M@:@```"+0P2)@:P```#I!0$``(MT)$")-"3H_/___XG&A<`/A/P```#&0"<& -MQD`F!6;'@)0``````,9`)`;&0"4`QT!$```%`,=`2`````#'@!P!```!```` -MB:@@`0``BU0D*('"H````(M\)"B+AZ````")AJ````"+0@2)AJ0```"+AZ`` -M``")AI@```"+0@2)AIP```"+`XF&J````(M#!(F&K````(M$)"2)1BR)!"3H -M_/___XB&M@```&:#3C@0BU0D)(D4).C\____/`EV!F:!3C@``HM,)!2`@4H! -M```!BY%\`0``B;%\`0``BWPD0(M,)!B-A`]X`0``B0:)5@2),HET)`2)/"3H -M_/___XVV`````(/#"#M<)!P/AH?^__^#Q"Q;7E]=PXUT)@"-O"<`````55=6 -M4X'L+`(```^VA"1(`@``BY0D0`(``(M2"(E4)!R+"HE,)""+E"1``@``#[92 -M,(A4)">+C"1``@``@\$HB4PD*(N4)$`"```Y2B@/A*L"``"`?"0G``^$H`(` -M``^VP(E$)!2+3"0HB0PDZ/S___^->/B-1"0LB40D$(M4)!2)5"0,QT0D"`$` -M``"+3"0<B4PD!(N$)$0"``")!"3H_/___X!\)"P`#X3^````O0````"-EZ`` -M``")5"08C78`B>D/MO''1"0("````(M$)!B)1"0$B?/!XP2-A!R8````B00D -MZ/S___^$P`^$GP```(V4'(P````/MD((@^`/B(>V````#[=/.&:!X=_]B<B# -MR!!FB4<X#[9"",#H!#P)=0F)R(/(,&:)1SB)\,'@!`^VA`24````P.@$/`IU -M!F:!3S@``HM,)"B+402-1PB)002)3PB)5PR)`O9'*`)T0(!G*/V+1R"%P'0U -MB40D"(M4)""+@CP%``")1"0$QP0D!@```.C\____ZQ60C70F`(/%`8GI.$PD -M+'81Z2#___^)Z#A$)"P/AS<!``")?"0(QT0D!`8```"+5"0<B10DZ/S___^` -M?T\`="2-M@````"+3"0@B0PDZ/S____'!"0!````Z/S___^`?T\`=>*+E^0` -M``"%TG0;QT0D"`$````/MH?9````B40D!(D4).C\____BU<PA=)T&,=$)`@! -M````#[9'38E$)`2)%"3H_/___XM'((7`='W'0&``````]D<H!'4GBT0D((D$ -M).C\____QT0D"`$```"+1R")1"0$BU0D((D4).C\____BT<@B40D"(M,)""+ -M@3P%``")1"0$QP0D!@```.C\____BT<@B40D"(M4)""+@CP%``")1"0$QP0D -M`0```.C\____QT<@`````(L7BT<$B4($B1"+3"0<@&D*`8N$)$`"``"`:#`! -MB7PD!(M4)"")%"3H_/___XM$)"B+C"1``@``.4$H=`N`;"0G`0^%9_W__X'$ -M+`(``%M>7UW#C;0F`````%575E.!["P"``"+O"1$`@``BX0D0`(``(L`B40D -M)`^VM"1,`@``C5PD+(E<)!")="0,QT0D"`$```"+E"1``@``B50D!(D\).C\ -M____B70D"(E\)`2+M"1(`@``B30DZ/S___^+;BB#[0B)\X/#*(U%"#G8="L/ -MMD4E/`UT%#PB=3#K#@^V124\#70&/"*)]G4@QD4F!<9%)P3&1"0J`>L%QD0D -M*@"`?"0L`'45Z2`"``"+;0B#[0B-10@YV'7%D.O?QD0D*P"+A"1``@``@\`X -MB40D((N4)$@"``"+<BB#[@B-1@@YPP^$`P(```^V1"0KP>`$C;P$F````(UT -M)@#'1"0("````(E\)`2-AJ````")!"3H_/___X3`#X6<`0``BW8(@^X(C48( -M.=@/A+T!``#KRXNT)$`"``"`1@H!QD$F!<:!M`````#&02<$9L>!E``````` -MQH&6`````,=!1```!0#'04@`````#[9T)"N)\,'@!(V4!(P````/MD($B$$D -M#[9"!8A!)8N$)$`"``")02P/MD((@^`/B(&V````#[=Y.&:!Y]_]B?B#R!!F -MB4$X#[9"",#H!#P)=0F)^(/(,&:)03B)\,'@!`^VA`24````P.@$/`IU!F:! -M23@``HN4)$@"``")43")\L'B!`^VA!22````B$%-C904C````(M"#(F!H``` -M`(M2$(F1I````(F!F````(F1G````(NT)$@"``"`1C`!BY0D0`(``(M"/(E* -M/(MT)""),8E!!(D(BX0D2`(``(M0+(U!"(NT)$@"``")1BR)60B)40R)`@^V -M422)T(/@!L9$)"H`@_@&=4?VP@%T+8E,)`P/MD%-B40D"(N$)$@"``")1"0$ -MBY0D0`(``(D4).C\____QD0D*@#K%8E,)`2+="0DB30DZ/S____&1"0J`(!$ -M)"L!#[9$)"LX1"0L#X<#_O__@'PD*@!T+<=$)`0*````B2PDZ/S____K&Y"- -M="8`BU0D)(D4).C\____B<&%P`^%+_[__X'$+`(``%M>7UW#ZPV0D)"0D)"0 -MD)"0D)"055=64X'L+`(``(N$)$`"``"+,`^V4!R(5"0F@\`LB40D*(N,)$`" -M```Y02P/A-`#``"$T@^$R`,``(M$)"B)!"3H_/___XUHX,=$)!``````QT0D -M#`````#'1"0(`````(N4)$`"``")5"0$BXPD1`(``(D,).C\____B$0D)X3` -M#X1K`P``OP````"[`````(E<)"#'1"00`````(E<)`S'1"0(`0```(N$)$`" -M``")1"0$BY0D1`(``(D4).C\____#[;`P>`$@\!D/0`"```/A^D!``"-3"0L -MB4PD$(E<)`S'1"0(`0```(N$)$`"``")1"0$BY0D1`(``(D4).C\____QT0D -M"`@```");"0$C8PDB````(D,).C\____A,`/A)@!``"+1"0HBU`$C44@BTPD -M*(E!!(E-((E5)(D"#[9$)"Z(13&-A"2`````B40D!(N$)$`"``")!"3H_/__ -M_SS_=!(/ML!IP!0-```#AJ@%``")10R)^H32=%4/MD0D+]'H@^`!P>`$#[95 -M-8/B[PG"B%4U#[9$)"_!Z`.#X`'!X`6#XM\)PHA5-0^V1"0OP>@"@^`!P>`# -M@^+W"<*(534/MD0D,HB%BP```.F_````#[9$)"Z(13&+C"1``@``B4T(#[9$ -M)#*(A8L````/MT0D,(E%.`^W1"1\9HF%B`````^V1"1^B(6*````C4UXC50D -M+(/"0(M$)&R)17B+0@2)002+0@B)00B+0@R)00R-34B-5"0L@\(0BT0D/(E% -M2(M"!(E!!(M""(E!"(M"#(E!#(U-6(U4)"R#PB"+1"1,B458BT($B4$$BT(( -MB4$(BT(,B4$,BT(0B4$0BT(4B4$4BT0D9(E%<(M$)&B)172+1"0@B40D#(EL -M)`B+E"1$`@``B50D!(N,)$`"``")#"3H_/___^D8`0``B?:#QP&#PP&)^#I$ -M)"</A"`!``#INOW__XD\).C\____C5CXB5PD",=$)`0&````BY0D0`(``(D4 -M).C\____@'M/`'0:B30DZ/S____'!"0!````Z/S___^`>T\`=>:+0R"%P'1M -MQT!@`````/9#*`1U'XDT).C\____QT0D"`$```"+0R")1"0$B30DZ/S___^+ -M0R")1"0(BX8\!0``B40D!,<$)`$```#H_/___XM#((E$)`B+ACP%``")1"0$ -MQP0D!@```.C\____QT,@`````(L3BT,$B4($B1"+C"1``@``@&D*`8!M,`&) -M7"0$B30DZ/S___\Y?2@/A1C___^+A"1``@``@&@<`8EL)`2)-"3H_/___XM, -M)"B+E"1``@``.4HL=!R`;"0F`705Z4C\__^-?2@Y?2@/A=G^__^)]NN]@<0L -M`@``6UY?7<.-=@!55U93@>PL`@``BZPD1`(``(M%`(E$)!R+E"1``@``B50D -M!(DL).C\____QT0D$`````#'1"0,`````,=$)`@`````B6PD!(N<)$`"``") -M'"3H_/___XA$)".$P`^$O@,``,9$)"(`QT0D)`````"0QT0D$`````"+1"0D -MB40D#,=$)`@!````B6PD!(N4)$`"``")%"3H_/___P^VP,'@!(/`9#T``@`` -M#X=8`P``C5PD+(E<)!"+1"0DB40D#,=$)`@!````B6PD!(N4)$`"``")%"3H -M_/___XV<)(@```")7"0$B2PDZ/S___\\_P^%$@,``(M$)!R)!"3H_/___XG' -MA<`/A"\#``"`11P!QD`P`(N$)(@```")!XN$)(P```")1P2-A"2`````B40D -M!(DL).C\____//]T%@^VP&G`%`T``(M4)!P#@J@%``")1PP/MD0D+HA',0^V -M1"0OT>B#X`'!X`0/ME<U@^+O"<*(5S4/MD0D+\'H`X/@`<'@!8/BWPG"B%<U -M#[9$)"_!Z`*#X`'!X`.#XO<)PHA7-8EO"`^V1"0RB(>+````BT0D-(E'0(M$ -M)#B)1T0/MD0D,XA',@^W1"0PB4<X#[=$)'QFB8>(````#[9$)'Z(AXH```"- -M3WB-5"0L@\)`BT0D;(E'>(M"!(E!!(M""(E!"(M"#(E!#(U/2(U4)"R#PA"+ -M1"0\B4=(BT($B4$$BT((B4$(BT(,B4$,C4]8C50D+(/"((M$)$R)1UB+0@2) -M002+0@B)00B+0@R)00R+0A")01"+0A2)012+1"1DB4=PBT0D:(E'=(M-,(U7 -M((E5,(U%+(E'((E/)(D1@'PD+``/A((!``!FQT0D*@``C5TXB5PD&(U'*(E$ -M)!2-M@````"+5"0<B10DZ/S___^)P87`#X2$`0``@$4*`<9`)@7&@+0````` -MQD`G!,=`1```!0#'0$@`````9L>`E```````#[=T)"J)\,'@!(V4!(P````/ -MMD($B$$D#[9"!8A!)8EI+(EY,`^V0@:(04T/MD((@^`/B(&V````#[=9.&:! -MX]_]B=B#R!!FB4$X#[9"",#H!#P)=0J)V(/(,&:)03B0B?#!X`0/MH0$E``` -M`,#H!#P*=0QF@4DX``*-M@````")\,'@!(V4!(P```"+0@R)@:````"+4A") -MD:0```")@9@```")D9P```"`1S`!BT4\B4T\BUPD&(D9B4$$B0B+5RR-00B) -M1RR+7"04B5D(B5$,B0(/ME$DB="#X`:#^`9U+_;"`70:B4PD#`^V04V)1"0( -MB7PD!(DL).C\____ZQ")3"0$BT0D'(D$).C\____9H-$)"H!#[9$)"QF.T0D -M*@^'F?[__X!$)"(!@T0D)`$/ME0D(SA4)"(/A5#\__^`?0H`=13&107_B6PD -M!(M<)!R)'"3H_/___X'$+`(``%M>7UW#C70F`(V\)P````!55U93@^PLBVPD -M0(M\)$3'1"00`````,=$)`P`````QT0D"`````")?"0$B2PDZ/S___^$P'0X -MNP````"#Z`$/MO"-1"0KB40D#(E<)`B)?"0$B2PDZ/S___^`?"0K_@^%I0`` -M`(/#`8U&`3G#==,/MD<T@^@!B$<TA,!T=8LWQD<T`(M?+(/K((U7+(U#(#G0 -M='>#>PP`=4CK"Y"-="8`@WL,`'4[QD<T`8E\)`2)+"3H_/___\=$)!`````` -M#[:#BP```(E$)`R)7"0(B7PD!(N&^`D``(D$).C\____ZRF+6R"#ZR"-0R`Y -MT'6RB?;K&(E\)`2)+"3H_/___XE\)`2)+"3H_/___X/$+%M>7UW#C;0F```` -M`(V\)P````!55U93@^P,BW0D((M\)"2++KL*````B7PD!(DT).C\____A,!U -M$<<$).@#``#H_/___X/K`77?#[9=*X3;="`/ME8)N0````#VP@%T"^L0D(G0 -MT_BH`74'@\$!.-EU\8L7BT<$B4($B1"`;@H!B7PD!(DL).C\____]D8(`G1! -MBT8HA<!U$XDL).C\____A<`/A%H!``")1BB)*(EP5,9`*@#&0"L`QD`F`&:# -M2#($B40D!(DL).C\____Z3`!``"+1BB%P`^$RP```(/`6(E$)`2+112)!"3H -M_/___XM&*(E$)`2)+"3H_/___XU^.#E^.`^$EP```(D\).C\____B<.+0""% -MP'1MQT!@`````/9#*`1U'XDL).C\____QT0D"`$```"+0R")1"0$B2PDZ/S_ -M__^+0R")1"0(BX4\!0``B40D!,<$)`$```#H_/___XM#((E$)`B+A3P%``") -M1"0$QP0D!@```.C\____QT,@`````(!N"@&)7"0$B2PDZ/S___\Y?C@/A6G_ -M___'1B@`````@'X*`'03C48XB00DZ/S___^)P8!N"@'K"HDL).C\____B<&% -MR70SBU8\B4X\C48XB0&)402)"H!&"@&)<2S&020%QD$E`,9!)P;&028#B4PD -M!(DL).C\____@\0,6UY?7<.0C;0F`````(/L+(E<)!R)="0@B7PD)(EL)"B+ -M="0PBUPD-`^W4Q!F@?J%`'=Z#[?"#[:,!K`$``"`^?]T:F:#^G]W&0^VP8N6 -M<`4``&G`)`$``(M$$"P/MD`$ZSMF@?J!`'<9#[;!BY:H!0``:<`4#0``BT00 -M"`^V0`3K&P^VP8N6C`4``&G`L````(M$$%0/MD`$C70F``^VR3S_=`EF@?G_ -M`'4HB?:#>U``=`^-0U")1"0$B30DZ/S___^)7"0$B30DZ/S____IZ@````^V -MT`^VA#(V!0``:^A<C80N0`$``(E$)!@/M\%IP"0!``")QP.^<`4``(![%`!T -M2HE4)`3'!"3@`0``Z/S___^+%XM'!(E"!(D0C9PN0`$``(!K"@&)?"0$B30D -MZ/S____&0P7_BT0D&(E$)`2)-"3H_/___^MSC78`@'LF`74]QP0D$"<``(UV -M`.C\____B5PD!(DT).C\____QT0D#`$```#'1"0(`````(E\)`2+1"08B00D -MZ/S____K+<<$)%##``#H_/___XE<)`2)-"3H_/___XE\)`2+1"08B00DZ/S_ -M__^0C70F`(M<)!R+="0@BWPD)(ML)"B#Q"S#C;8`````C;\`````55=64X/L -M'(MT)#"+;"0T#[9$)#B(1"07#[9$)#R(1"06BP:)1"08@'X*`'1MNP````"- -M?CB)/"3H_/___XG"BT8\B58\B3J)0@2)$#EJ,'4/#[9$)!<X0DUT#9"-="8` -M@\,!.%X*=\TX7@IT+8!\)!90=2;&0B<&QD(F!<9")`?&0B4`B6HPB7(LB50D -M!(M$)!B)!"3H_/___X/$'%M>7UW#C;0F`````(V\)P````"#["R)7"0<B70D -M((E\)"2);"0HBVPD,(M$)#0/MU`09H'ZA0`/AX8````/M\(/MH0HL`0``#S_ -M='=F@_I_=Q@/ML!IP"0!```#A7`%``"+0"P/ME`$ZUZ+5"0T#[="$&8]@0!W -M(`^WP`^VA"BP!```:<`4#0```X6H!0``BT`(#[90!.LPBTPD-`^W01`/MH0H -ML`0``&G`L`````.%C`4``(M`5`^V4`3K"XVV`````+K_____N?____^+1"0T -M9H%X$(4`=Q"+3"0T#[=!$`^VC"BP!```#[;"#[:$*#8%``!KP%R-O`5``0`` -M#[;!:<"P````B[6,!0```<:+1"0T@'@H`@^%B`````^V0"PE\````(/X('0% -M@_@0=76+3"0T#[91+(G0@^`/@_@!=3&)T"7P````QT0D$`$```")1"0,QT0D -M"`(```#'1"0$`````(DT).C\____Z9$)``"0#[9&*XM4ACR+3"0T#[9!+"7P -M````@_@@#Y3`@\`(B(*V````BT(T9H%@,O_^Z5X)``"+5"0T#[9"%(3`=$.) -MPX-Z4`!T$8G0@\!0B40D!(DL).C\____BTPD-(E,)`2)+"3H_/___X#[`@^% -M(`D``(ET)`2)+"3H_/___^D/"0``QX:8``````````^V1B8\)`^'F0@```^V -MP/\DA9P(``"+1QCV0"H(#X3""```B?;I1P4``(N5.`H``('"3`@```^V1C3! -MX`@!PHL"HP````"#^`5W!8A&'^L$QD8?!8!_"P!T#<9&)@#&1PL`Z3X(``#& -M1B8"Z34(``"+E3@*``"!PDP(```/MD8TP>`(`<*+`J,`````#[;`9HE&((N5 -M.`H``('"1`@```^V1C3!X`@!PHL"HP````")PL'J"&:)5B+!X`AF"48@9H'Z -M0$%U"<9&)AGIU@<``&:!?B(5EP^4P(/H`8/@WX/`)(A&)NF\!P``BY4X"@`` -M@<)$"```#[9&-,'@"`'"BP*C`````(A&'8N5.`H``('"3`@```^V1C3!X`@! -MPHL"HP````"H"'0&QD8>#.L:J`1T!L9&'@OK$(/@`H/X`1G`]]"#X`J(1AX/ -MMD8K/`$9P(/@`H/`%(A&)NE'!P``BX4X"@``!4P(```/ME8TP>((`="+`*,` -M````@\@(B$8LQD8F!>D=!P``QD8F``^W1C)F)??]@\@"9HE&,HM$)#2#>%`` -M=`^#P%")1"0$B2PDZ/S___^+5"0TB50D!(DL).C\____QD<%_XE\)`2)+"3H -M_/___^DL!P``QD8F!.G#!@``#[9&*X/``8A&*SI&'W,)QD8F%NFK!@``QD8K -M`,9&)A?'!"0@H0<`Z/S____ID@8``,9&)A3IB08``,9&)@B0C70F`.E[!@`` -MQD8F%.ER!@``QD8N`.C\____B8:(````QD8F%>E:!@``BY4X"@``@<),"``` -M#[9&-,'@"`'"BQJ)'0`````/MMN+E3@*``"!PD0(```/MD8TP>`(`<*+`J,` -M````Z/S___^)AHP```"#XP^#^P-U"<9&)@KI`@8``(N&B`````5`#0,`.8:, -M````>1</MD8N/`IW#\9&)A6#P`&(1B[IV`4```^V1BN#?(8\``^$A`$``,=$ -M)!0`````@'\*`'0^QD0D&@"-7SB)'"3H_/___XE$)!0/MD8KBTPD%#E,ACQT -M'(M#!(E+!(D9B4$$B0B`1"0:`0^V1"0:.$<*=\J`;PH!BU0D%(M"((7`#X0) -M`0``QT!@`````/9"*`1U.XDL).C\____BTPD%(M!-,:`K`````&+02#'1"0( -M`0```(E$)`2)+"3H_/___XM4)!2+0C3&@*P`````BTPD%(M!((N5/`4``(E$ -M)`B)5"0$QP0D`0```.C\____BU0D%(M"((M(<(7)=#`/MT(<QX2%L`(````` -M``"+0B#'0'``````BT(@BU!XQT0D"/____^)1"0$B10D_]&+3"04BT$@A<!T -M*XM0=(72="0/MT$<QX2%L`(```````"+02#'0'0`````BT$@BT!XB00D_]*+ -M5"04BT(@BY4\!0``B40D"(E4)`3'!"0&````Z/S___^+3"04QT$@``````^V -M1BO'1(8\`````(M$)!2)1"0$B2PDZ/S____&1B8)Z3P$``"+E3@*``"!PDP( -M```/MD8TP>`(`<*+"HD-``````^VR8N5.`H``('"1`@```^V1C3!X`@!PHL" -MHP````#!X`@)R(E&.(!^)@IT!ZD```$`=`G&1B8+Z>(#``#&1B8,#[9&*X-\ -MACP`=%&`?PH`#X0I!```QD0D&P"-7SB)'"3H_/___XG"#[9&*SE4ACQU#8!O -M"@'K+XVT)@````"+0P2)4P2)&HE"!(D0@$0D&P$/MDPD&SA/"G8,Z\&)+"3H -M_/___XG"A=(/A-`#```/MD8KB52&/`^V1B^(@K8```#I60,``(DL).C\____ -MQP0D`0```.C\____@^L!@_O_=`F+1QCV0"H(=-O&1B8)Z2L#``"+E3@*``"! -MPDP(```/MD8TP>`(`<*+"HD-``````^VR8N5.`H``('"1`@```^V1C3!X`@! -MPHL"HP`````/ML#!X`@)R"7_#P``/1,!```/E,(](P$```^4P832=1.$R74/ -M/3,!``!U0HUV`.GR`@``QD8F&(32D(UT)@!T"<9&+PCII0(``(3)C78`=`G& -M1B\)Z94"```],P$```^%B@(``,9&+PKI@0(```^V3BH/MM$/MD8?@^@!.<)] -M$XU!`8A&*H!&*P'&1B8'Z5P"``#&1BL`QD8F'NE/`@``QD8F`^E&`@``QD8F -M(HGVZ3L"``#&1B8CZ3("``#&1B8#Z2D"``"+E3@*``"!PDP(```/MD8TP>`( -M`<*+"HD-`````(N5.`H``('"1`@```^V1C3!X`@!PHL2B14`````B=#!X`@/ -MMLD)R&8]`Q$/A9H```")T,'H"&8]15-T"F8]0`,/A84```!FQT8@`Q%FB48B -M9CU%4W4<@+ZE`````G03QH:E`````L>&J````!\```#K(F:!?B)``W4:@+ZE -M`````W01QH:E`````\>&J`````_X`P#&AJP````!B30DZ/S____&AJP````` -MBP:+@#P%``#'1"0$`````(D$).C\____QD8F`^E!`0``QD8F(<:&I0````#I -M,0$``(N5.`H``('"3`@```^V1C3!X`@!PHL"HP````"+E3@*``"!PD0(```/ -MMD8TP>`(`<*+`J,`````QD8F'^GP````QD8F(.GG````BY4X"@``@<),"``` -M#[9&-,'@"`'"BP*C`````(N5.`H``('"1`@```^V1C3!X`@!PHL"HP`````/ -MMDXK#[9&'XU1`8A6*P^VR0^VP(/H`3G!#YS`@^@!@^#G@\`?B$8FZ8(```"+ -ME3@*``"!PDP(```/MD8TP>`(`<*+"HD-``````^VR8N5.`H``('"1`@```^V -M1C3!X`@!PHL"HP````#!X`@)P8F.E````,9&)AKK-<9&)AOK+XN%.`H```5, -M"```#[96-,'B"`'0BP"C`````(/@]XA&+,9&)ASK",9&)AV-="8`BT0D-(-X -M4`!T#X/`4(E$)`2)+"3H_/___XM4)#2)5"0$B2PDZ/S___^)="0$B2PDZ/S_ -M___K*<9&)ACI&_W__XDL).C\____QP0D`0```.C\____NSY"#P#I9?S__XGV -MBUPD'(MT)""+?"0DBVPD*(/$+,.-M@````"-OP````"#[%R)7"1,B70D4(E\ -M)%2);"18BVPD8(M\)&0/MU<09H'ZA0`/A[X````/M\(/MHP%L`0``(#Y_P^$ -MJ@```&:#^G]W'`^VP8N5<`4``&G`)`$``(M$$"P/MD`$ZSJ-=@!F@?J!`'<9 -M#[;!BY6H!0``:<`4#0``BT00"`^V0`3K%P^VP8N5C`4``&G`L````(M$$%0/ -MMD`$//]T30^VP`^VE`4V!0``@/K_=!6`^?]T$`^V7Q2`^P9U5XVT)@````"` -M^O]T(X#Y_W0>#[;!:<`D`0``B<8#M7`%``#&1B<"QD8F_^FX!P``@W]0`'0/ -MC4=0B40D!(DL).C\____B7PD!(DL).C\____Z<('``")]@^VP6G`)`$``(G& -M`[5P!0``#[>&E````&:)1"0V9CVK#7<%@/L"=3J#?U``=`^-1U")1"0$B2PD -MZ/S___^)?"0$B2PDZ/S____&1B;_QD8G`HET)`2)+"3H_/___^E>!P``QD0D -M/0"`^R!U)8M/.`^V`8/@?SQQ=@T/MDD!@^$/B$PD/>L+#[9)`H/A#XA,)#T/ -MMM*)5"0P:\)<C80%0`$``(E$)#@/MD<D/!H/A`<&```\&G<?/!)T43P5C70F -M``^$F`8``(3`#X2E!0``B?;INP8``#PE#X3@`@``/"60=Q,\&P^%I@8``(VV -M`````.EU!0``/)X/A,T#```\H)`/A8H&``#I8@8``(3;C78`#X6#`@``BT\T -M@'\E`(UV`'1AA<ET2X!Y`8!U18!Y`@!U/P^V00,\/'<W#[;8C590N`````#& -M!!`@@\`!@_@4=?2#^Q-V!;L4````C590C4$$B5PD"(E$)`2)%"3H_/___V;' -MAI0``````,9&)AGI#08``,9&)ACV009`=1$/M@&#X!^#^`T/A6,!``#K"P^V -M`8/@'X/X#74)QD8E#8UV`.L$QD8E(@^V1B6)1"0$QP0D_0```.C\____@W]0 -M`'0/C4=0B40D!(DL).C\____B7PD!(DL).C\____:T0D,%R`O`5*`0````^$ -MP@4``+X`````B<.-O`5X`0``B3PDZ/S___^-%"N+BGP!``")@GP!``").(E( -M!(D!#[9`)3PB=`0\#74.@\8!B?(XE!U*`0``=\AK1"0P7`^VA`5*`0``B?$X -MR`^%904``(3`#X1=!0``O@````!FQT0D/@``QT0D0`````!K7"0P7(V\'7@! -M``")/"3H_/___XG!C00KBY!\`0``B8A\`0``B3F)402)"@^V024\(G0$/`UU -M%`^W01QF.T0D/G()9HE$)#Z)3"1`@\8!B?`XA!U*`0``=[*#?"1```^$Y`0` -M`(M4)$"`>B;_#X36!```QD(F_XE4)`2)+"3H_/___^G!!```@_@!=1'&1B4! -MQD8F_XUT)@#I>P0``/9!!0%T!F:!3C@`!(M?-(7;=%N-5F2X`````,8$$`"# -MP`&#^"AU](V6C````+``Q@00`(/``8/X"'7TC4YDC5,(BT,(B49DBT($B4$$ -MBT((B4$(BT(,B4$,BT(0B4$0BT(4B4$4BT,@B8:,````@[X<`0````^%``0` -M`,9&)ASI]P,```^W1"0V@\`!9HF&E````,<$)!`G``#H_/___\9&)@7ITP,` -M`(M/-(3;#X60````#[91!L'B"`^V007!X!`)P@^V00<)P@^V003!X!@)PHF6 -ML`````^V$<'B&`^V00,)P@^V00+!X`@)P@^V00'!X!`)T(E&1,=&2`````"# -MOK``````=1UF@X:4`````<<$)!`G``#H_/___\9&)AOI50,``(/X_W4/9H%. -M.``$QD8F&^E!`P``QD8F#>DX`P``@/L@=3.`?"0]!G0'@'PD/0)U)0^W1"0V -M@\`!9HF&E````,<$)!`G``#H_/___\9&)@7I`0,``)"#?U``=`^-1U")1"0$ -MB2PDZ/S___^)?"0$B2PDZ/S___^)="0(BTPD.(E,)`2)+"3H_/___^GV`@`` -MBT<TB40D1(3;#X4?`0``#[90"L'B"`^V0`G!X!`)PHM,)$0/MD$+"<(/MD$( -MP>`8"<*)EK`````/MD$#B<*X`````(E$)"B)5"0L#[9!`HG"N`````#!X@B+ -M3"0H"<&+7"0L"=.+1"1$#[8`B40D(,=$)"0`````BT0D((G"N`````#!XA@) -MP0G3BT0D1`^V0`&)1"08QT0D'`````"+1"08B<*X`````,'B$`G!"=.+1"1$ -M#[90!L'B"`^V0`6)1"08P>`0"<*+1"1$#[9`!PG"BT0D1`^V0`2)1"08P>`8 -M"<()RHE61(E>2(M4)$3V0@P!=`5F@TXZ!(.^L`````!U'6:#AI0````!QP0D -M$"<``.C\____QD8F&^FF`0``9H-..`'&1B8-Z9@!``"`^R!U,X!\)#T&=`>` -M?"0]`G4E#[=$)#:#P`%FB8:4````QP0D$"<``.C\____QD8F&^EA`0``D(-_ -M4`!T#XU'4(E$)`2)+"3H_/___XE\)`2)+"3H_/___XET)`B+3"0XB4PD!(DL -M).C\____Z58!``#&1B84Z1T!``"`^R!U.(!\)#T&C78`=`>`?"0]`G4G#[=$ -M)#:#P`%FB8:4````QP0D$"<``.C\____QD8F%.GC````C78`QD8F&^G7```` -MA-N0C70F`'5<BT<T9H-..`)F@TXZ`6:!3CB$`(!X`P!U!8`X%G<=9H.&E``` -M``''!"00)P``Z/S____&1B8-Z9,```#V0`8$=`=F@TXZ`NL%9H-F.OV+1U") -M1AC'1U``````ZSJ`^R!U,(!\)#T&=`B`?"0]`I!U)@^W1"0V@\`!9HF&E``` -M`,<$)!`G``#H_/___\9&)@7K/6:#9CCYQD8F#NLRA-MU!6:#3CH#QD8F#^LC -MA-N0=0R)?"0$B2PDZ/S___^#OAP!```!&<"#X!.#P`6(1B:#?U``=`^-1U") -M1"0$B2PDZ/S___^)?"0$B2PDZ/S___^)="0$B2PDZ/S___^-=@"+7"1,BW0D -M4(M\)%2+;"18@\1<PY"0D)"0D)"0D)"0D(/A!\'A"(#-((M`!"WD/```#[;2 -MP>((`=")"`^W`&:C``````^VP,.0C;0F`````(/A!\'A"(I,)`2`S1"+0`0M -MY#P```^VTL'B"`'0B0C#55=64X/L"(G'QD0D`@#&1"0#`+W_____QT0D!``` -M```/MD0D!(A$)`"0$`;@!````B<8/MDPD!-/FB?&[`````+C`X>0`N@`` -M``#W\3GX=QV)^BG"B=`YZG,3#[94)`&(5"0"B%PD`XG%C70F`(/#`0'Q@_L0 -M=<F#?"0$"'6?#[9$)`/!X`,*1"0"#[;`@\0(6UY?7<.0C;0F`````(/L#(E< -M)`2)="0(BUPD$`^V="04QP0D`````+D'````B?*)V.@7____#[:#'0L``(D$ -M)+D#````B?*)V.C__O__BUPD!(MT)`B#Q`S#C78`4XG3#[;1N0,```#HL/[_ -M_SC8#Y3`#[;`6\.-M@````!3BUPD"(7;="^Z`````(GV#[:$&C(%```/ML@\ -M_W01#[?!:<"P`````X.,!0``ZPV#P@&#^@1UV+@`````6\.05E.#[`2+1"00 -MBYA`!0``A=MU`HG#O@````#'!"0`````N0<```")\HG8Z&'^___'!"1$```` -MN0(```")\HG8Z$S^___'!"30````N0````")\HG8Z#?^___'!"0`````N00` -M``")\HG8Z"+^__^#Q@&#_@)UI+B@A@$`Z##^__^(@QT+```/ML")!"2Y`P`` -M`+H`````B=CH\_W__X/$!%M>PXVV`````(V\)P````"#[#R)7"0LB70D,(E\ -M)#2);"0XBU0D0`^V@J4````\`@^%Z@```(N*J````(E,)!1FQT0D&@``O0`` -M`"K'1"0<`````+L`````O@````"_!````+H!````B=")V=/@A40D%'4<C4L& -MT^)F"50D&@E4)!RX%0```(GQT^`)Q>L)D(GXB?'3X`G%@\,!@\8%@\<#@_L% -M=;V+1"0<B40D#,=$)`BH`P``QT0D!`$```"+5"1`B10DZ/S___^);"0,QT0D -M",0#``#'1"0$`0```(M,)$")#"3H_/___P^W1"0:BU0D0`N"J````(E$)`S' -M1"0(H`,``,=$)`0!````B10DZ/S____I_0```(VV`````#P##X7O````BTPD -M0(N)J````(E,)"AFQT0D(@``O0```"K'1"0D`````+L`````O@````"_!``` -M`(VT)@````"Z`0```(G0B=G3X(5$)"AU'XU+!M/B9@E4)"()5"0DN!4```") -M\=/@"<7K#(UT)@")^(GQT^`)Q8/#`8/&!8/'`X/[!'6ZBT0D)(E$)`S'1"0( -MJ`,``,=$)`0!````BU0D0(D4).C\____B6PD#,=$)`C$`P``QT0D!`$```"+ -M3"1`B0PDZ/S___\/MT0D(HM4)$`+@J@```#WT(E$)`S'1"0(H`,``,=$)`0! -M````B10DZ/S___^+7"0LBW0D,(M\)#2+;"0X@\0\PY"-="8`@^P,BU0D$`^V -M3"04@'PD&`!T#[C^____T\`A@J@```#K#;@!````T^`)@J@```")%"3H_/__ -M_X/$#,.0C70F`%.#[!B+7"0@9L>#G`````$`QT0D$`$````/MT0D),'@#8E$ -M)`S'1"0(H`,``,=$)`0!````B1PDZ/S____'1"0$%````(D<).C\____@\08 -M6\.-M"8`````C;PG`````(/L#(M4)!`/MDPD%(!\)!@`=1"X_O___]/`9B&" -MD````.L.N`$```#3X&8)@I`````/MX*0````B40D!(D4).C\____@\0,PY"- -MM"8`````@^P<B5PD$(ET)!2)?"08BT0D)`^V?"0H#[:PF`````^V6`*+4&B% -MTG08B?D/ML&)1"0(#[;#B40D!(D4).C\____@/L#=P^-%+.)\#P#=A.-5+,$ -MZPV)\8U6$(#Y`W8#C58@B?D/ML&)1"0(#[;"B40D!(M$)"")!"3H_/___XM< -M)!"+="04BWPD&(/$',.05U93@^P0B<>[``````^V\KD"````B?*)^.CR^?__ -MJ`AT#K@`````ZR.-M"8`````QP0D`0```.C\____@\,!@?L0)P``=<FX_P`` -M`(/$$%M>7\.-M@````"-O"<`````@^P,B1PDB70D!(E\)`B)QHG/#[;:B=KH -MA/___X7`=3")^`^VT(G9B?#HPOK__X7`=!ZY`0```(G:B?#H</G__XM4)!"( -M`K@`````ZPB-=@"X_____XL<)(MT)`2+?"0(@\0,PXVV`````(V_`````(/L -M'(E<)!")="04B7PD&(G&#[;Y#[;:B3PDN0$```")VNA*^?__QP0D0````+D" -M````B=J)\.@U^?__B=J)\.CL_O__A<!U3H-\)"``=#7WQP$```!T&8G9ND`` -M``")\.@;^O__A<!T+>LRD(UT)@")V;H8````B?#H`OK__X7`=!3K&8G9NB@` -M``")\.CN^?__A<!U![C_````ZP6X`````(M<)!"+="04BWPD&(/$',.-M"8` -M````C;PG`````%575E.#[`R)QXML)"2)TXG.A,D/A.H````/MMK'!"1D```` -MN0(```")VHGXZ'_X__^)VHGXZ#;^__^%P'4.N0,```")VHGXZ#3X__^)\`^V -MR,<$)`$```")VHGXZ-_^__^^_____X3`#X5W`0``O@````"%[0^.:@$``+X` -M````C47_B40D"#ET)`AU-<<$)$````"Y`@```(G:B?CH#OC__XM$)"`!\(D$ -M)+E8````B=J)^.@7_O__A<!T.>DC`0``QP0D1````+D"````B=J)^.C9]___ -MBT0D(`'PB00DN5````")VHGXZ.+]__^%P`^%[P```(/&`3GN#X3D````ZX2X -MH(8!`.C#]___#[;;#[;`B00DN0,```")VHGXZ(SW__^)VHGXZ$/]__^%P'0B -M#[:''0L``(D$)+D#````B=J)^.AG]___OO_____ID@```(G9NF````")^.A? -M^/__A<!T#;X`````A>U^7XGVZQ\/MH<="P``B00DN0,```")VHGXZ";W__^^ -M_____^M4O@````#'!"1$````N0(```")VHGXZ`7W__^+1"0@`?")!"2Y@``` -M`(G:B?CH#OW__X7`=0>#Q@$Y[G7)#[:''0L``(D$)+D#````B=J)^.C+]O__ -MB?"#Q`Q;7E]=PY"#[!R)7"04B70D&(MT)"`/MDPD)(M$)"R)1"0$BT0D*(D$ -M)+H!````B?#HX?W__XG#QP0D5````+D"````N@$```")\.AW]O__B=B+7"04 -MBW0D&(/$',.)]HV\)P````"#[!R)7"04B70D&(MT)"`/MDPD)(M$)"R)1"0$ -MBT0D*(D$)+H`````B?#H@?W__XG#QP0D5````+D"````N@````")\.@7]O__ -MB=B+7"04BW0D&(/$',.)]HV\)P````!55U93@^P,B<>+;"0DB<L/MO+'!"1D -M````N0(```")\NC;]?__B?*)^.B2^___A<!U#KD#````B?*)^.B0]?__#[;+ -MQP0D`0```(GRB?CH/?S__X3`=2Z%[7XQNP````"+1"0@#[8,`\<$)`````") -M\HGXZ!C\__^$P'4)@\,!.>MT">O;N/_____K!;@`````@\0,6UY?7<.-M"8` -M````@^P<B5PD%(ET)!B+="0@#[9,)"2+1"0LB40D!(M$)"B)!"2Z`````(GP -MZ#'___^)P\<$)%0```"Y`@```+H`````B?#H%_7__XG8BUPD%(MT)!B#Q!S# -MB?:-O"<`````@^P<BTPD(`^V5"0DBX%`!0``A<!U`HG(B!4@````QT0D#"`` -M``#'1"0((````,=$)`0.````B00DZ/S___^#Q!S#C;0F`````(V\)P````"# -M[`R+5"00#[9,)!2`?"08`'00N`$```#3X&8)@JP,``#K#KC^____T\!F(8*L -M#```#[:"K`P``(E$)`2)%"3H_/___X/$#,.0C;0F`````%575E.#[$R+1"1D -MBT@8@\$!BU`0@^H!B50D),=$)$@`````BU@<B5PD*`^V40&`^@%U#<=`+``` -M``#IY00``)"`^@)U4(!Y`@%U.HMT)&"+AD`%``"%P'4"B?"+@#P%```/ME$# -MB)"N#```#[91`XB09AD``(M$)&3'0"P`````Z9\$``"+5"1DQT(L_O___^F/ -M!```@/H$#X4R`@``#[9!`X/H.SP!#X<C`@``BTPD9(M9&(/#`8E<)#@/MG," -MBT0D8(N8/`4``(GR#[;"B40D!(D<).C\____B<*$P'0-#[;`@+P#L`0``/]U -M5HN;/`4``('#N`P``(N#/`4``(D$).C\____B?$HP0^VP8E$)`2)'"3H_/__ -M_XG"A,!T#0^VP("\`[`$``#_=1:+7"1DQT,L_____XD<)/]3*.G\`P``#[;" -M#[:$`[`$``"`^H%W9@^VR&G)%`T``(M$)#@/MD`$B$0D-XMT)#@/ME8%P>(0 -M#[9&!L'@"`G"#[9&!PG"B50D+`^V5@C!XA`/MD8)P>`("<(/MD8*"<*)5"0P -MB<X#LZ@%```/A`<!``"`?C``=1OI_````(M$)&3'0"S_____B00D_U`HZ7`# -M``"_`````,9$)#8`C6XHBU0D.(/""XE4)!R)+"3H_/___XU8^(M6+(E&+(EK -M"(E3#(D"#[9#)3P-=`@\(@^%C````(M,)#@/MD$#/#MT-#P\=7R+1"1DB40D -M$(M4)"R)5"0,BTPD,(E,)`@/MD0D-XE$)`2)'"3H_/___\9$)#8!ZTR+@^@` -M``"+5"0LB50D"(M,)!R)3"0$B00DZ/S___^+1"1DB40D$(M4)"R)5"0,BTPD -M,(E,)`@/MD0D-XE$)`2)'"3H_/___\9$)#8!@\<!B?LX7C`/ASW___^`?"0V -M``^%B@(``(MT)&3'1BS_____B30D_U8HZ70"``"0C70F`(#Z`P^%N````(!Y -M`@&-=@`/A9L```"+5"1@#[9")HTT``^V60.)VHG8P?H?]_Z)TSG6?FV->00/ -MMO(/MD$$B40D"(ET)`2+3"1@B0PDZ/S___^-0_R#^`-V&(U#](/X`W80C4/L -M@_@#=@B-0^2#^`-W"(%$)&"X#```#[8'B40D"(ET)`2+7"1@B1PDZ/S___^+ -M="1DQT8L`````.FS`0``BT0D9,=`+/[____IHP$``(M4)&3'0BS^____Z9,! -M``"`.05V2H!Y!/YU1(U$)$B)1"0(BTPD9(E,)`2+7"1@BX,\!0``B00DZ/S_ -M__^$P`^%7@$``,=$)$@`````BW0D9,=&+/_____I1@$``(GVBT0D8(NH0`4` -M`(7M=0*)Q8G+N`(````IR(E$)"#IDP````^V,XUZ`0^VR/;!`71`BU0D2(T$ -M%HM<)&0[0Q0/A]T```")="0$BT0D*`'0B00DN@````")Z.AS]___.?`/A;P` -M```!="1(B?OK2(UV`(T<-XM$)"`!V#M$)"0/CYX```")="0$B3PDN@````") -MZ.CJ^?__A<`/A8,```"`.P!U!H![`0!T#,<$)!`G``#H_/___XU3`0^V0P&$ -MP`^%7O___P^V`X3`=&$/MMC'!"14````N0(```"Z`````(GHZ)KO__^+5"1( -MBW0D9(M&%"G0.<-V`HG#B5PD!(M$)"@!T(D$)+D`````N@````")Z.BY]O__ -MA<!X!@%$)$CK"XM$)&3'0"S_____QP0D5````+D"````N@````")Z.@\[___ -MBTPD9(M1((72=`:+1"1(B0*+7"1DB1PD_U,H@\1,6UY?7<.)]HV\)P````"# -M[!R+5"0@BX)`!0``A<!U`HG0BY`\!0``#[:"KPP``(3`=`V#Z`&(@J\,``"$ -MP'4GQ@4C`````,=$)`P@````QT0D""````#'1"0$#@```(D4).C\____@\0< -MPXUT)@"#[!R+5"0@BX)`!0``A<!U`HG0BX`\!0``@+BN#````'4N@("O#``` -M`<8%(P````''1"0,(````,=$)`@@````QT0D!`X```")!"3H_/___X/$',.- -MM@````"-OP````"#[!R)7"04B70D&(MT)"`/MDPD)(M$)"R)1"0$BT0D*(D$ -M)+H`````B?#H(?C__XG#QP0D5````+D"````N@````")\.@'[O__B=B+7"04 -MBW0D&(/$',.0D)"0D)"0D)"+1"0$BT`$+0`"`0`#1"0(BP"C`````,.0C;0F -M`````(M$)`2+0`0M``(!``-$)`B+5"0,B1##B?:-O"<`````4X/L#(M<)!2+ -M4P2!Z@`"`0#'@H```0``````BX($`0$`HP````"`S`&)@@0!`0#'1"0("``` -M`,=$)`0,P@``B1PDZ/S____'1"0(N`L``,=$)`0(P@``B1PDZ/S____'1"0( -M`0``/,=$)`0`P@``B1PDZ/S____'1"0("````,=$)`0,PP``B1PDZ/S____' -M1"0(N`L``,=$)`0(PP``B1PDZ/S____'1"0(`0``/,=$)`0`PP``B1PDZ/S_ -M___'1"0(@("`@,=$)`0XP@``B1PDZ/S____'1"0("!@H.,=$)`0@P@``B1PD -MZ/S____'1"0(@("`@,=$)`0\P@``B1PDZ/S____'1"0("1DI.<=$)`0DP@`` -MB1PDZ/S____'1"0(@("`@,=$)`1`P@``B1PDZ/S____'1"0("AHJ.L=$)`0H -MP@``B1PDZ/S____'1"0(@("`@,=$)`1$P@``B1PDZ/S____'1"0("QLK.\=$ -M)`0LP@``B1PDZ/S____'1"0(@("`@,=$)`1(P@``B1PDZ/S____'1"0(2$E* -M2\=$)`0PP@``B1PDZ/S____'1"0(@("`@,=$)`0XPP``B1PDZ/S____'1"0( -M#!PL/,=$)`0@PP``B1PDZ/S____'1"0(@("`@,=$)`0\PP``B1PDZ/S____' -M1"0(#1TM/<=$)`0DPP``B1PDZ/S____'1"0(@("`@,=$)`1`PP``B1PDZ/S_ -M___'1"0(#AXN/L=$)`0HPP``B1PDZ/S____'1"0(@("`@,=$)`1$PP``B1PD -MZ/S____'1"0(#Q\O/\=$)`0LPP``B1PDZ/S____'1"0(@("`@,=$)`1(PP`` -MB1PDZ/S____'1"0(3$U.3\=$)`0PPP``B1PDZ/S____'0SR`@("`QT-`@("` -M@,=#1("`@(#'0TB`@("`QT-,@("`@('#N`P``,=#/("`@(#'0T"`@("`QT-$ -M@("`@,=#2("`@(#'0TR`@("`@\0,6\.+1"0$BU`$@>H``@$`BX)L``$`HP`` -M``")@FP``0##D(M$)`2+4`2!Z@`"`0"+@F@``0"C``````M$)`B)@F@``0## -MC;8`````C;PG`````(/L((E<)!")="04B7PD&(EL)!R+="0D#[94)"@/MGPD -M+#FV/`4```^%"`$``(G0P.@"O0`````/ML")1"0,B=#WT(/@`XT<Q0````"X -M!P```(G9T^#WT(M,)`R+5(X\(<*)5(X\B?B$P'03N`$```")V=/@"="+5"0, -MB426/(GI#[;9P>,(BT8\B40D"(V#.,(``(E$)`2+ACP%``")!"3H_/___XM& -M0(E$)`B-@SS"``")1"0$BX8\!0``B00DZ/S___^+1D2)1"0(C8-`P@``B40D -M!(N&/`4``(D$).C\____BT9(B40D"(V#1,(``(E$)`2+ACP%``")!"3H_/__ -M_XM&3(E$)`B!PTC"``")7"0$BX8\!0``B00DZ/S___^+7"00BW0D%(M\)!B+ -M;"0<@\0@PXG0P.@"@^@%O0$```#I\/[__XGVC;PG`````%575E.#[!R+?"0P -M#[9$)#2(1"0;#[94)#B(5"0:#[9L)#R+1PB+,(DT).C\____B<.%P`^$^``` -M`(DT).C\____B<*%P`^$Y@```,9'-`'&0R3AQD,E`<9#)A#&0Q6[#[9',V:) -M0Q")<QC'0R"0````C4((B4,TB5-0B<&)PK@`````Q@00`(/``3V0````=?+& -M00&"Q@%`#[9$)!N(00(/ME0D&HA1`XGHB$$$/`)W(XU!"(GI#[;1P>("C8YX -M"P``B50D"(E,)`2)!"3H_/___^LWBX9X"P``B4$(BX9\"P``B4$,@\$0B>H/ -MML*-!(7X____C9:`"P``B40D"(E4)`2)#"3H_/___\=#;`````#'1"0$```` -M`(U#/(D$).C\____B5PD!(DT).C\____@\0<6UY?7<.-M"8`````@^PLB5PD -M'(ET)"")?"0DB6PD*(M\)#"+;"0TBT0D.(E$)!B+5"0\B50D%(M'"(LPB30D -MZ/S___^)PX7`#X2`````B30DZ/S___^)PH7`='+&1S0!QD,DX<9#)0'&0R80 -MQD,5NP^V1S-FB4,0B7,8QT,@D````(U""(E#-(E34,9``0+&0@A`B>J(4`(/ -MME0D&(A0`P^V5"04B%`$QT-L`````,=$)`0`````C4,\B00DZ/S___^)7"0$ -MB30DZ/S___^+7"0<BW0D((M\)"2+;"0H@\0LPXUV`(V\)P````!55U93@^P< -MBW0D,`^V;"0T#[9$)#B(1"0;BT8(BQC'1"0,`@```,=$)`@`````QT0D!``` -M``")-"3H_/___X!^-`!T&HD<).C\____QP0D`0```.C\____@'XT`'7FBT8( -MBP`%>`L``(!X`@!X1(!(`H#'1"0,`0```,=$)`@`````QT0D!`````")-"3H -M_/___X!^-`!T&HD<).C\____QP0D`0```.C\____@'XT`'7FB>C`Z`(/MOC' -M1"0,`0```(E\)`C'1"0$`P```(DT).C\____@'XT`'0>C70F`(D<).C\____ -MQP0D`0```.C\____@'XT`'7FBT8(BQB)Z??1@^$#@'PD&P`/E<+!X@,/MH0+ -M>`L``(/@YPG0B(0+>`L``,=$)`P!````B7PD",=$)`0#````B30DZ/S___^# -MQ!Q;7E]=PXVT)@````"#[!R)7"0,B70D$(E\)!2);"08BUPD((MT)"0/MT80 -M9CV%`'<;BZNH!0``#[?`#[:$`[`$``!I^!0-``#K#8GVBZNH!0``O^P�"+ -M1C2`>`$"=22-BW@+``"-4`2+0`2)@W@+``"+0@2)002+0@B)00B+0@R)00R+ -M1E"%P'0,B40D!(D<).C\____B70D!(D<).C\____QD0]-`"+7"0,BW0D$(M\ -M)!2+;"08@\0<PX/L$(D<)(ET)`2)?"0(B6PD#(M,)!2+="08BU0D'(M<)""+ -MN7`%```/MT80O=PB`0!F/84`=Q$/M\`/MH0!L`0``&GH)`$``(V*(`0``,:" -M(`0``"=F@7XDX0%U(P^V5B:-0O\\`7<)#[96)X/B#^LDC4+ON@\````\`788 -MC78`C00ON@````"#>#0`=`</ME!-@^(/#[9!`8/@\`G0B$$!N`$```!F@7XD -MX0%U$@^V1B:#Z`$\`0^7P`^VP(UV`(G"P>('#[9!`8/@?PG0B$$!#[9#!HA! -M`@^V`XA!`P^V0P6(00</MD,'B$$/#[9#`HA!!`^V0P.(004/MD,$B$$&#[9# -M`8A!#`^V0PJ(00@/MD,+B$$)#[9##(A!"@^V0PB(00L/MD,)B$$-BQPDBW0D -M!(M\)`B+;"0,@\00PXGV#[9$)`3#C78`C;PG``````^V1"0%PXUV`(V\)P`` -M``!3BU0D"(M<)!#&0A0"BTHXBT0D#(A!`HM".,9`!P"+0CB(6`Q;PXUV`(V\ -M)P````"+5"0$BTPD"`^V0BF(00(/MD(HB$$##[9")XA!!`^V0B:(00K#C70F -M`(V\)P````"+5"0$BTPD"`^V0BV(00(/MD(LB$$##[9"*XA!!`^V0BJ(00H/ -MMD(IB$$+#[9"*(A!#,.-M@````"-O"<`````BTPD#(7)?AVZ`````(UV`(G( -M*="#^`(/G<`/ML"-5`(!.=%_Z_/#B?:-O"<`````@^P<B5PD#(ET)!")?"04 -MB6PD&(M<)""+="0H#[9$)"2(1"0+#[9#)#PJ="8\*G<0/"@/A=@```#K&(VV -M`````#R(="0\B@^%Q````(UT)@#K%@^V>RP/MFLKB70D!(D<).C\____ZQ0/ -MMGLQ#[9K,(ET)`2)'"3H_/___\9&!4"+0V2I```!`'0LB?B(!HGHB$8(#[9$ -M)`O!X`.(1@$/MD,D/"AT!#R(=0;&1@9@ZV#&1@9AZUJI```$`)"-="8`="*) -M^(A&`8GHB$8)#[9#)#PH=`0\B'4&QD8&)>LRQD8&->LLB?B(1@$/MD,F@^`/ -M"$8%#[9#)#PH=`0\B'4&QD8&R.L+QD8&RHVT)@````"+7"0,BW0D$(M\)!2+ -M;"08@\0<PXVV`````(V_`````(/L#(M,)!`/MD$F"D$G"D$H"D$I#[;`#[91 -M+(/B`0G0=!['1"0()````,=$)`0%````B0PDZ/S____K$XUT)@"+1"04QD`& -M[,=!;`````"#Q`S#C;8`````C;PG`````(/L&(E<)`B)="0,B7PD$(EL)!2+ -M7"0<BW0D(`^V0R0\+W0-/(]U8.L=C;0F``````^V>RP/MFLKB70D!(D<).C\ -M____ZQ0/MGLQ#[9K,(ET)`2)'"3H_/___\9&!4#V0V8$=!")^(A&`8GHB$8) -MQD8&0NL3B?B(1@$/MD,F@^`/"$8%QD8&0(M<)`B+="0,BWPD$(ML)!2#Q!C# -MD(UT)@!3@^P,BTPD&(M4)!S&0@5`#[9!)#PU=`@\D74JZR*)]HM<)!0/MT,X -M@^`!@_@!&<"#X/V#Z!:(0@;K)9"-="8`QD(&ZNL:QT0D""0```#'1"0$!0`` -M`(D,).C\____ZPKV024"=`3&010`@\0,6XGVP^L-D)"0D)"0D)"0D)"0D(/L -M#(M$)!#V0"CP=!C'1"0()````,=$)`0%````B00DZ/S___^#Q`S#C;0F```` -M`%.#[!"+7"0<BTPD)`^V1"0@N@````#&!`H`@\(!@_H-=?0/ME,D@/HU#X2O -M````@/HU=S2`^BAT;(#Z*(UT)@!W$X#Z&P^%F@,``)"-="8`Z:H```"`^BIT -M2X#Z+XUV``^%?P,``.M=@/J/D(UT)@!T4X#ZCW<1@/J(="F`^HJ0#X5?`P`` -MZQV`^I&0C70F`'1,@/KA#X5*`P``D(UT)@#ID@```(E,)`@/ML")1"0$B1PD -MZ/S____'1"0,`0```.DH`P``B4PD!(D<).C\____QT0D#`$```#I#P,``(E, -M)`B)7"0$BT0D&(D$).C\____QT0D#`$```#I[@(``/9#*`%T(<9!!G#&000` -MQD$#`,9!`@#&005`QT0D#`$```#IQP(``,9!!N#'1"0,`0```.FV`@``@'LE -M`0^%I`(``(![)AP/AYH"```/MD,FD/\DA3`)``#&00<$QT0D#`$```#IA0(` -M`,9!!P#'1"0,`0```.ET`@``QD$&[,=$)`P!````Z6,"``#&00;OQ@$##[9# -M)X/(0(A!`<=$)`P!````Z44"``#&00;OQ@$'QT0D#`$```#I,0(``,9!!D#& -M00$!QD$%0,=$)`P!````Z1@"``#&00;OQ@$##[9#)X/("(A!`<=$)`P!```` -MZ?H!``#&00;OQ@$"QT0D#`$```#IY@$``,9!!N_&`8+'1"0,`0```.G2`0`` -MQD$&[\8!!L=$)`P!````Z;X!``#&00;OQ@&&QT0D#`$```#IJ@$``,9!!N,/ -MMD,GB$$!QT0D#`$```#ID@$``,9!!K#&`=C&00-/QD$$PL=$)`P!````Z78! -M``#&00:PQ@'9QD$#3\9!!,+'1"0,`0```.E:`0``QD$&L,8!VL9!`T_&003" -MQT0D#`$```#I/@$``(M$)!CV0#@!=!'&00;JQT0D#`$```#I(P$``,9!!N?' -M1"0,`0```.D2`0``QD$&[\8!JL=$)`P!````Z?X```#&00;OQ@%5QT0D#`$` -M``#IZ@```,9!!B_&00$!QD$"$,=$)`P!````Z=$```#&00;D#[9#*(@!#[9# -M*8A!"`^V0R>(007'1"0,`0```.FL````#[9#)XA!!@^V0RB(`0^V0RF(00(/ -MMD,JB$$##[9#*XA!!`^V0RV(00H/MD,LB$$!QT0D#`$```#K<L9!!N@/MD,H -MB`$/MD,IB$$(#[9#)XA!!0^V0RJ(00(/MD,KB$$##[9#+(A!!`^V0RV(00'' -M1"0,`0```.LTQT0D#`$```#V0R@!=";&009PQD$$`,9!`P#&00(`QD$%0,=$ -M)`P!````ZPC'1"0,`````(M$)`R#Q!!;PXUV`(V\)P````"#[#R)7"0LB70D -M,(E\)#2);"0XBVPD1(MU-(U\)`S\N0@```"X`````/.K]H:G````!'04BX[( -M````BY[,````@\'_@]/_ZPV+1GB#Z`&)P;L`````@'TD)75GB<@/K-@8B$0D -M#(G(#ZS8$(A$)`V)R`^LV`B(1"0.B$PD#_:&U0```!!U%,9$)!("QD0D$P"Y -M"````.FI````C50D$,=$)`@$````C8;J````B40D!(D4).C\____N0@```#I -M@0```(G8P>@8B$0D#(G8P>@0B$0D#8G8P>@(B$0D#HA<)`^)R`^LV!B(1"00 -MB<@/K-@0B$0D$8G(#ZS8"(A$)!*(3"03]H;5````$'44QD0D%@+&1"07`+D@ -M````ZR:-=@"-5"04QT0D"`0```"-ANH```")1"0$B10DZ/S___^Y(````(M5 -M-(U$)`R)3"0(B40D!(D4).C\____BUPD+(MT)#"+?"0TBVPD.(/$/,.)]E93 -M@^P4BTPD((M<)"2+42R+,@^V0R0\+W1H/"]W-#P;#X0R`0``/!MW#CP2C70F -M``^%.@$``.M*/"B-M@````!T0#PJ#X4F`0``C;8`````ZS`\BG0L/(IW&#PU -MC70F``^$\@```#R(#X4"`0``B?;K$#R/=`P\X0^%\@```(GVZW7V03@!=`>! -M2V0```0`]D$Z$`^$_@```(-Y-`"-=@`/A?$````/MD,D/"AT$#PJ=`P\B'0( -M/(H/A=D```#V0@@!=1@/MD($B40D!(DT).C\____A,`/A+L```"`>Q2!#X2Q -M````@4MD```!`+@!````Z:D```"`>R4!#X6/````@'LF'`^'A0````^^2R:X -M`0```-/@J?8_P!UU):D(0`8`=0ZI```@`'4BD(UT)@#K7H-+9`BX`0```)"- -M="8`ZUZ#2V0!N`$```#K4X-+9""X`0```.M(]D$X`70'@4MD```$`(-+9`&X -M`0```.LPBT-DJ0``(`!T%O9!.`%T%PT```0`B4-DN`$```#K$9"X`````.L) -MN`$```"-="8`@\046U[#D)"0D)"0D)"0D(/L"(D<)(ET)`2)TXMT)!2+4`0/ -MMD0D$,'@!`^VR<'A"`G!@'PD#`!T`X/)!(/^_W00B?`E__\#`(F"!,;__X/) -M`HD+BQPDBW0D!(/$",.0BT`$+0`"`0"#R@&)D`#(``##C;0F`````(V\)P`` -M``!75E.#[!")UXM`!(72=$J-L`#&__^+@`#&__^C`````+L`````J`%U$NLG -MD(UT)@"+!J,`````J`%T%\<$)`H```#H_/___X/#`3G[=>*)]NL'N`````#K -M!;C_____@\006UY?PXUT)@"-O"<`````5E.#["2+7"0PQT0D(`````"+<P3& -M@[`,````#[8-"````(U4)"#'1"0(`````,=$)`0"````QP0D`0```(G8Z-S^ -M__^+5"0@B=CH(?___[J@A@$`B=CH-?___X7`=4>+A@S&__^C`````(E$)"`] -M'V,``'4QQX.@#```'V,``,>#I`P`````!`#'@Z@,``````$`QX.T#``````` -M`&:X``#I.@(``,=$)"``````BW,$QH.P#````0^V#1@```"-5"0@QT0D"/__ -M___'1"0$`@```,<$)`$```")V.@__O__BU0D((G8Z(3^__^Z$"<``(G8Z)C^ -M__^%P'5GBX8,QO__HP````")1"0@/1]#``!T+CT?1```=4K'@Z`,```?1``` -MQX.D#``````'`,>#J`P``````0#IA`$``(UT)@#'@Z`,```?0P``QX.D#``` -M```$`,>#J`P``````0#I70$``,=$)"``````BW,$QH.P#`````^V#2@```"- -M5"0@QT0D"`````#'1"0$`@```,<$)`$```")V.B"_?__BU0D((G8Z,?]__^Z -M$"<``(G8Z-O]__^%P'5'BX8,QO__HP````")1"0@/;]#``!U,<>#H`P``+]# -M``#'@Z0,`````"``QX.H#````!```,>#M`P``"````!FN```Z>````#'1"0@ -M`````(MS!,:#L`P````/M@TX````C50D(,=$)`@`````QT0D!`(```#'!"0! -M````B=CHY?S__XM4)"")V.@J_?__NA`G``")V.@^_?__A<!U7XN&#,;__Z,` -M````B40D(#WO$0``=`D][Q(``'5"ZR#'@Z`,``#O$0``QX.D#``````$`,># -MJ`P``````0#K/,>#H`P``.\2``#'@Z0,``````@`QX.H#``````!`.L<N/__ -M___K)(UT)@#'@[0,```0````N`````#K#\>#M`P``#````"X`````(/$)%M> -MPXUV`(V\)P````"#[#R)7"0LB70D,(E\)#2);"0XB<:)UXE,)!B+:`0/MD0D -M0#P$=@6X!`````^VV(N&M`P```^V2`2-5"0HB7PD"(E<)`3'!"0!````B?#H -MW?O__XM4)"B)\.@B_/__NA`G``")\.@V_/__NO____^%P'4:BX4,QO__HP`` -M``")1"0HBU0D&(D"N@````")T(M<)"R+="0PBWPD-(ML)#B#Q#S#C;8````` -MC;PG`````%.#["B+7"0PBX.T#```#[9("XU4)"2+1"0TB40D",=$)`0!```` -MQP0D`0```(G8Z$S[__^+5"0DB=CHD?O__[H0)P``B=CHI?O__[K_____A<!U -M&HM#!"WT.0``BP"C`````(M4)#B(`KH`````B="#Q"A;PXUT)@"-O"<````` -M55=64X/L+(G#B%0D&XG-@WPD0``/A),```"^`````)"+>P2+@[0,```/MD@" -MQT0D"/_____'1"0$`0```,<$)`$```"-5"0HB=CHL?K__XM4)"B)V.CV^O__ -MNA`G``")V.@*^___A<!U*HN7#,;__XD5``````^V1"0;(=")Z3C(=0VX```` -M`.LHC;8`````B50D*,<$)`H```#H_/___X/&`3MT)$`/A7/___^X_____X/$ -M+%M>7UW#C;8`````4X/L*(G#BX"T#```#[8(C50D),=$)`C_____QT0D!``` -M``#'!"0`````B=CH#_K__XM4)"2)V.A4^O__NA`G``")V.AH^O__A<!U),<$ -M)."3!`"Y`@```+H#````B=CHW/[__[H`````A<!T"(UV`+K_____B="#Q"A; -MPXUT)@"#["R)7"0DB70D*(M<)#"+="0TQD0D(_^-1"0CB40D"(ET)`2)'"3H -M_/___X7`=7*`?"0C`'1YB=CH0O___X/X_W1?BX.T#```#[9("HU4)!R)="0( -MQT0D!`````#'!"0`````B=CH5?G__XM4)!R)V.B:^?__NA`G``")V.BN^?__ -MA<!U',<$)."3!`"Y`````+H#````B=CH(O[__X7`=`ZX_____^L,C;0F```` -M`+@`````BUPD)(MT)"B#Q"S#ZPV0D)"0D)"0D)"0D)"055=64X/L/(ML)%`/ -MMD0D8(.]M`P````/A!H#``"+?"18A,`/A&L!``"#?"14_W44#[>%H`P``&:) -M![@!````Z1P#``"#?"14_G45BX6D#```B0>X`0```.D#`P``C78`@WPD5/UU -M&8N%J`P``(D'N`$```#IYP(``(VT)@````"+1"1<`T0D5(E$)!@[A:0,```/ -MAY\"``"+7"14@^/\BU0D5(/B`XE4)"!T;HUT)#C'!"0$````B?&)VHGHZ/[[ -M__^#PP3'1"0<!````#E<)!AS$(M$)"`K1"14`T0D&(E$)!R+1"0@.40D''8M -MC0P&B?Z+1"0<C50$.(VV``````^V`8@&@\8!@\$!.=%U\8M$)!PK1"0@C3P' -MBW0D&(/F_#GS<R3'!"0$````C4PD.(G:B>CHA_O__XM$)#B)!X/'!(/#!#G> -M=]PY7"08#X;M`0``C70D.,<$)`0```")\8G:B>CH5_O__XM,)!@IV0^$RP$` -M`+H`````C;8`````#[8$%H@$.H/"`3G*#X2N`0``Z^R#?"14_W4I@#\/B?9U -M$<:%L0P```&X`0```.FM`0``QH6Q#````+@!````Z9P!``"+5"1<B50D*(G0 -M`T0D5#N%I`P```^'60$``("]L0P````/A$P!``"+1"14N@````#WM:@,``"% -MT@^%G````("]L`P```!T&(M$)%2)1"0$B2PDZ/S___^%P`^%%`$``(GHZ(;\ -M__^#^/\/A`0!``"+A;0,```/MD@&C50D.(M$)%2)1"0(QT0D!`````#'!"0` -M````B>CHD?;__XM4)#B)Z.C6]O__NA`G``")Z.CJ]O__A<`/A;D```#'!"3@ -MDP0`N0````"Z`P```(GHZ%K[__^%P`^%F0```(-\)%P`#X27````QT0D)``` -M``"+5"18BT0D)(LT`HG'`WPD5(M=!('K``(!`(GHZ-[[__^)LPC(``"+A;0, -M```/MD@%B7PD",=$)`0$````QP0D`````(U4)#B)Z.CP]?__BU0D.(GHZ#7V -M__^Z$"<``(GHZ$GV__^%P'4<QP0DB!,``+D`````N@$```")Z.B]^O__A<!T -M$+@`````ZR*)]K@!````ZQF#1"0D!(M4)"0Y5"0H=NKI5O___Y"-="8`@\0\ -M6UY?7<.0D)"0D)"0D+@`````PXUV`(V\)P````"+5"0$BTPD"+@`````.170 -M"P``?C2-%%+!X@,/MX(<`0``9HD!#[>"'@$``&:)00(/MH(D`0``B$$(#[:" -M)0$``(A!";@!````\\.0C70F`+AP&0``PXUV`(V\)P````"XG````,.-=@"- -MO"<`````N`0```##C78`C;PG`````%=64XMT)!"[`````+\`````N0`````/ -MMI0Q,`4``(#Z_W1"C8&`````9CV!`'<%@\,!ZS$/ML*+EHP%``!IP+````"` -MO!"E`````W45@\<!C4<#@_@&=@V#PP&_`````.L#@\,!@\$!@_D&=:F)V%M> -M7\.-M@````"-O"<`````55=64X/L!(ML)!B^`````,<$)`````"[@`````^V -M1"0<C7@!B=D/MH0KL`0``#S_=$EF@?N!`'<'@\8!ZSF)]@^VP(N5C`4``&G` -ML````("\$*4````#=1N#!"0!BP0D@\`#@_@&=@^#Q@''!"0`````ZP.#Q@$Y -M]W00@\,!@?N&````=9ZY`````(G(@\0$6UY?7<.-="8`C;PG`````//#C;0F -M`````(V\)P````"+1"0$QH"7`````,.-="8`5E.+7"0,N/\```"%VW1,N8(` -M``"^_____XVT)@`````/MH09L`0``#S_=!\/ML"+DXP%``!IP+`````/MH00 -MI````(GR.,)V`HG&@\$!@?F&````=<J)\@^VPEM>PXGVN`````##C78`C;PG -M`````+@`````PXUV`(V\)P````")P8G0P.@$/`EV!8/`5^L#@\`PB`&)T(/@ -M#X/X"7X1B="#X`^#P%?K#XVT)@````")T(/@#X/`,(A!`<.-="8`@^P(B1PD -MB70D!(G&B=,/MM;HJO___P^VVX/&`HG:B?#HF____XL<)(MT)`2#Q`C#BT0D -M#,=`!`````#'``````"X`````,.)]HV\)P````"+3"0$BT%@A<!T1<=`(``` -M``"`2"@$QT%@`````,=!:`````#'060`````BU$(@_H_?P^+06S'A)"P`@`` -M`````,.+06S'A)"P`0```````//#C;0F`````(V\)P````"+3"0$BT%@A<!T -M1<=`(`````"`8"C[QT%@`````,=!:`````#'060`````BU$(@_H_?P^+06S' -MA)"P`@```````,.+06S'A)"P`0```````//#C;0F`````(V\)P````"#[`S' -M!"2`````Z/S___^X`````(/$#,.0C;0F`````%=64X/L0(M$)%#&1"08;<9$ -M)!G_QD0D&B/&1"0;%,9$)!PZQD0D'>_&1"0>%L9$)!^2B[!`!0``A?9U`HG& -MC40D((G"Q@``@\`!B=.-3"1`.<AU\,9$)"0!QT0D#"````")5"0(QT0D!`X` -M``")-"3H_/___X7`=4S'!"2`&@8`Z/S____'1"0,(````(E<)`C'1"0$#P`` -M`(DT).C\____@_@@=1^-="0PC7PD&+D(````_/.F#Y?"#Y+`N0$````XPG01 -MQP0D$0$``.C\____N0`````/ML&#Q$!;7E_#55=64X/L7(M$)'"+D#P%``"! -MPK@,``")5"0XB<&+`(7`=!8M```"`(D!B40D!(M!$(D$).C\____BUPD<(M# -M"(7`=`^)1"0$BT,0B00DZ/S___^+5"1PBT(,A<!T#XE$)`2+0A")!"3H_/__ -M_XU$)$Z)1"0TC40D4(E$)#"-1"1*B40D+(U$)$R)1"0HC40D5(E$)"2-1"16 -MB40D((U$)%>)1"0<C40D4HE$)!B-1"18B40D%(U$)$B)1"00C40D68E$)`R- -M1"1:B40D"(U$)%N)1"0$BTPD<`^W022)!"3H_/___XM<)'"+@W`%``"%P'0P -MB40D!(G8!5@%``")!"3H_/___XM4)#B+@G`%``")1"0$B=`%6`4``(D$).C\ -M____BTPD<(N!C`4``(7`=#")1"0$B<@%=`4``(D$).C\____BUPD.(N#C`4` -M`(E$)`2)V`5T!0``B00DZ/S___^+5"1PBX*H!0``A<!T,(E$)`2)T`60!0`` -MB00DZ/S___^+3"0XBX&H!0``B40D!(G(!9`%``")!"3H_/___XM<)'"+@^`& -M``"%P'0PB40D!(G8!<@&``")!"3H_/___XM4)#B+@N`&``")1"0$B=`%R`8` -M`(D$).C\____@'PD6P!T6KX`````BVPD<('%``<``(M\)#B!QP`'``"-=@`/ -MM]Z+3"1PBX29&`<``(E$)`2)+"3H_/___XM4)#B+A)H8!P``B40D!(D\).C\ -M____@\8!#[9$)%MF.?!WPHM,)'"+@8`)``"%P'0PB40D!(G(!6@)``")!"3H -M_/___XM<)#B+@X`)``")1"0$B=@%:`D``(D$).C\____BU0D<(N"J`D``(7` -M=#")1"0$B=`%D`D``(D$).C\____BTPD.(N!J`D``(E$)`2)R`60"0``B00D -MZ/S___^+7"1PBX/X"0``A<!T,(E$)`2)V`7@"0``B00DZ/S___^+5"0XBX+X -M"0``B40D!(G0!>`)``")!"3H_/___XM,)'"+@<0%``"%P'0PB40D!(G(!:P% -M``")!"3H_/___XM<)#B+@\0%``")1"0$B=@%K`4``(D$).C\____BU0D<(N" -M<`8``(7`=#")1"0$B=`%6`8``(D$).C\____BTPD.(N!<`8``(E$)`2)R`58 -M!@``B00DZ/S___^+7"1PBX,@!@``A<!T,(E$)`2)V`4(!@``B00DZ/S___^+ -M5"0XBX(@!@``B40D!(G0!0@&``")!"3H_/___XM,)'"+@3P&``"%P'0PB40D -M!(G(!20&``")!"3H_/___XM<)#B+@SP&``")1"0$B=@%)`8``(D$).C\____ -MBU0D<(N"J`8``(7`=#")1"0$B=`%D`8``(D$).C\____BTPD.(N!J`8``(E$ -M)`2)R`60!@``B00DZ/S___^+7"1PBX/$!@``A<!T,(E$)`2)V`6L!@``B00D -MZ/S___^+5"0XBX+$!@``B40D!(G0!:P&``")!"3H_/___XM,)'"+@?P&``"% -MP'0PB40D!(G(!>0&``")!"3H_/___XM<)#B+@_P&``")1"0$B=@%Y`8``(D$ -M).C\____BU0D<(N",`D``(7`=#")1"0$B=`%&`D``(D$).C\____BTPD.(N! -M,`D``(E$)`2)R`48"0``B00DZ/S___^+7"1PBX-8"0``A<!T,(E$)`2)V`5` -M"0``B00DZ/S___^+5"0XBX)8"0``B40D!(G0!4`)``")!"3H_/___XM,)'"+ -M@=`)``"%P'0PB40D!(G(!;@)``")!"3H_/___XM<)#B+@]`)``")1"0$B=@% -MN`D``(D$).C\____BU0D<(N"C`8``(7`=#")1"0$B=`%=`8``(D$).C\____ -MBTPD.(N!C`8``(E$)`2)R`5T!@``B00DZ/S___^+7"1PBXL4"@``A<ET6(N# -M&`H``(N3'`H``(E$)`B)5"0,B4PD!(G8!?P)``")!"3H_/___XM,)#B+@1@* -M``"+D1P*``")1"0(B50D#(N!%`H``(E$)`2)R`7\"0``B00DZ/S___^+7"1P -MBXLX"@``A<ET6(N#/`H``(N30`H``(E$)`B)5"0,B4PD!(G8!2`*``")!"3H -M_/___XM,)#B+@3P*``"+D4`*``")1"0(B50D#(N!.`H``(E$)`2)R`4@"@`` -MB00DZ/S___^+7"1PBXM<"@``A<ET6(N#8`H``(N39`H``(E$)`B)5"0,B4PD -M!(G8!40*``")!"3H_/___XM,)#B+@6`*``"+D60*``")1"0(B50D#(N!7`H` -M`(E$)`2)R`5$"@``B00DZ/S___^+7"1PBXND"@``A<ET6(N#J`H``(N3K`H` -M`(E$)`B)5"0,B4PD!(G8!8P*``")!"3H_/___XM,)#B+@:@*``"+D:P*``") -M1"0(B50D#(N!I`H``(E$)`2)R`6,"@``B00DZ/S___^+7"1PBXN`"@``A<ET -M6(N#A`H``(N3B`H``(E$)`B)5"0,B4PD!(G8!6@*``")!"3H_/___XM,)#B+ -M@80*``"+D8@*``")1"0(B50D#(N!@`H``(E$)`2)R`5H"@``B00DZ/S___^+ -M7"1PBXO("@``A<ET6(N#S`H``(N3T`H``(E$)`B)5"0,B4PD!(G8!;`*``") -M!"3H_/___XM,)#B+@<P*``"+D=`*``")1"0(B50D#(N!R`H``(E$)`2)R`6P -M"@``B00DZ/S___^+7"1PBXOL"@``A<ET6(N#\`H``(N3]`H``(E$)`B)5"0, -MB4PD!(G8!=0*``")!"3H_/___XM,)#B+@?`*``"+D?0*``")1"0(B50D#(N! -M[`H``(E$)`2)R`74"@``B00DZ/S___^+7"1PBXL0"P``A<ET6(N#%`L``(N3 -M&`L``(E$)`B)5"0,B4PD!(G8!?@*``")!"3H_/___XM,)#B+@10+``"+D1@+ -M``")1"0(B50D#(N!$`L``(E$)`2)R`7X"@``B00DZ/S___^#Q%Q;7E]=PXVV -M`````(/L'(E<)!2)="08BW0D((M<)"2(7C</MMN)7"0$B30DZ/S___^)7"0$ -M@<:X#```B30DZ/S___^X`0```(M<)!2+="08@\0<PY"-M"8`````5E.#[!2+ -M="0@B30DZ/S___^)-"3H_/___XV>N`P``(D<).C\____B30DZ/S____'!"30 -M!P``Z/S___^)-"3H_/___\=$)`0!````B30DZ/S____'1"0$`0```(D<).C\ -M____NX````"+ECP%```/MH03L`0``#S_="L/ML!IP+`````#@HP%``#V0#(" -M=!9FQT`R`0#&0"8=B40D!(DT).C\____@\,!@?N&````=;B+GCP%``"!P[@, -M``"^``````^VA!XP!0``//]T*P^VP&G`L`````.#C`4``/9`,@)T%F;'0#(! -M`,9`)AV)1"0$B1PDZ/S___^#Q@&#_@9UP8/$%%M>PXUV`(V\)P````!3@^P( -MBUPD$(D<).C\____BX,\!0``!;@,``")!"3H_/___X/$"%O#D(VT)@````!3 -M@^P(BUPD$(D<).C\____BX,\!0``!;@,``")!"3H_/___X/$"%O#D(VT)@`` -M``"#[`R+1"00B00DZ/S___\/ML"#Q`S#C78`C;PG`````(/L+(E<)!R)="0@ -MB7PD)(EL)"B)PXG7B<V+<&"+0&R)1"04A?8/A#4!``"`NY<`````#X4H`0`` -MB00DZ/S___^)1"08A<`/A!0!``#&0"3AQD`E`8GZA-)T#8GH/`$9P/?0@\`' -MZPR)ZH#Z`1G`]]"#P`V+5"08B$(FQD(4@`^W1AQFB4(0B5H8QT(@`````,=" -M-`````#'0FPPF0$`B50D!(M$)!2)!"3H_/___\:#EP````%FQX.4````]`&% -MVW19BT-@A<!T7&:!NY0```"6`'47B40D",=$)`0A````BT`LB00DZ/S___]F -M@ZN4`````<<$)-`'``#H_/___XM4)!2)%"3H_/___XM#8(7`=`F`NY<````` -M=:YF@[N4`````'0<BT0D&(!X%`!U$HM#8`^W0#IFB4-:NP````#K!;O_____ -MBU0D&(E4)`2+1"04B00DZ/S____K"8UT)@"[_____XG8BUPD'(MT)""+?"0D -MBVPD*(/$+,.0C70F`(/L+(E<)!R)="0@B7PD)(EL)"B+7"0P#[9\)#2+<V"+ -M:VR%]@^$#`$``("[EP`````/A?\```#V`P(/A?8```")+"3H_/___XE$)!B% -MP`^$X@```,9`).'&0"4!B?@\`@^5P(/`&HM4)!B(0B;&0A2`#[=&'&:)0A") -M6AC'0B``````QT(T`````,=";#"9`0")5"0$B2PDZ/S____&@Y<````!9L># -ME````/H`A=MT58M#8(7`=%AF@;N4````E@!U%XE$)`C'1"0$(0```(M`+(D$ -M).C\____9H.KE`````''!"30!P``Z/S___^)+"3H_/___XM#8(7`=`F`NY<` -M````=;)F@[N4`````'0/NP````"+1"08@'@4`'0%N_____^+5"08B50D!(DL -M).C\____ZP6[_____XG8BUPD'(MT)""+?"0DBVPD*(/$+,/K#9"0D)"0D)"0 -MD)"0D)"#[$R)7"0\B70D0(E\)$2);"1(BW0D4`^V;"14BWY@BT9LB40D((7_ -M#X3R!```@+Z7``````^%Y00``(D$).C\____B40D)(7`#X31!```]@8"#X4$ -M`0``B>J`^A1W"P^VPHT$0,'@`NL8N(G___^)ZO;B9L'H",#H!`^VP`7P```` -MBU0D),9").'&0B4!QD(F'(A")\9"%(`/MT<<9HE"$(ER&,="(`````#'0C0` -M````QT)L,)D!`(E4)`2+1"0@B00DZ/S____&AI<````!9L>&E````,0)A?9T -M68M&8(7`=&!F@;Z4````E@!U%XE$)`C'1"0$(0```(M`+(D$).C\____9H.N -ME`````''!"30!P``Z/S___^+5"0@B10DZ/S___^+1F"%P'0)@+Z7`````'6N -M9H.^E``````/A+P#``"[`````(M$)"2`>!0`#X2N`P``Z:0#``"+5"0@B10D -MZ/S___^)1"0XA<`/A(P#``"+7"0D@\,\BT`(B40D'(M$)"3&0"0:QD`E",9` -M)AK&0"<`QD`H$,9`*0"+1"0XBU0D)(E"4,9"%(`/MT<<9HE"$(ER&(M$)#B+ -M0`B)0C3'0B`0````BT9@!;@```")0CC&0AP@QT)L,)D!`,=$)`0`````B1PD -MZ/S___^+5"0DBT(@B40D#(M$)#B+4!"+0`R)1"0$B50D"(D<).C\____BT0D -M)(E$)`2+5"0@B10DZ/S____&AI<````!9L>&E````/H`A?9T68M&8(7`=%QF -M@;Z4````E@!U%XE$)`C'1"0$(0```(M`+(D$).C\____9H.NE`````''!"30 -M!P``Z/S___^+1"0@B00DZ/S___^+1F"%P'0)@+Z7`````'6N9H.^E`````!T -M"HM4)"2`>A0`=!Z-1"0XB40D!(M$)"")!"3H_/___[O_____Z3X"``"+5"0D -MB50D!(M$)"")!"3H_/___XM4)"")%"3H_/___XE$)"2%P'4AC40D.(E$)`2+ -M1"0@B00DZ/S___^[_____^D8`@``C78`BU0D)(/"/(E4)"B+3"0<@\$$BU0D -M'`^V0@,/M@0!B$($QD$!"L9!`@"X`````(M4)!S&!!``@\`!@_@$=?")Z(3` -M=0:`80/\ZTV)Z`^VT&G28.H``+@?A>M1]^K!^@6`20,#B=7![1B)Z(A!!(G3 -MP>L0B%D%B=#!Z`B)1"08B$$&B%$'B>B(00B(60D/MD0D&(A!"HA1"XM$)#B+ -M5"0DB4)0QD(D%0^V`<#X!_?0@\`1B$(EQD(F`,9")P#&0B@0QD(I`(`A/\9" -M%(`/MT<<9HE"$(ER&(M$)#B+0`B)0C3'0B`0````BT9@!;@```")0CC&0AP@ -MQT)L,)D!`,=$)`0`````BT0D*(D$).C\____BU0D)(M"((E$)`R+1"0XBU`0 -MBT`,B40D!(E4)`B+1"0HB00DZ/S___^+5"0DB50D!(M$)"")!"3H_/___\:& -MEP````%FQX:4````^@"%]G19BT9@A<!T7&:!OI0```"6`'47B40D",=$)`0A -M````BT`LB00DZ/S___]F@ZZ4`````<<$)-`'``#H_/___XM4)"")%"3H_/__ -M_XM&8(7`=`F`OI<`````=:YF@[Z4`````'0/NP````"+1"0D@'@4`'0%N___ -M__^-1"0XB40D!(M4)"")%"3H_/___^L&D+O_____BT0D)(E$)`2+5"0@B10D -MZ/S____K"I"-="8`N_____^)V(M<)#R+="1`BWPD1(ML)$B#Q$S#D(UT)@"# -M[$R)7"0\B70D0(E\)$2);"1(BWPD4(M<)%2+="18#[=$)%QFB40D'@^V5"1D -MB%0D'8MO8(7M#X3I`P``@+^7``````^%W`,``(M-+(E,)#B+1VR)1"0D9L>' -ME````!`GB00DZ/S___^)1"0TA<`/A+$#```/MU0D'HE4)"!F@WPD'@1V$HE4 -M)`3'!"0M`0``Z/S____K%(M,)"2)#"3H_/___XE$)"B%P'4>BT0D-(E$)`2+ -M5"0DB10DZ/S___^[_____^EV`P``BTPD(,'A"8E,)#"+5"0DBX(\!0``QD`G -M`8E\)`B+@CP%``")1"0$QP0D!0```.C\____@$TH`HM'8(E$)`C'1"0$(0`` -M`(M,)#B)#"3H_/___XM$)#2#P#R)1"0L@'PD'0!T$8M4)#3'0F0*````QD(D -M*.LNBTPD-,=!9!(```#&020JBU0D*(M""(M,)#")3"0(BU0D8(E4)`2)!"3H -M_/___XM'8/9`.`%T>8!\)!T!&<"#X`*#Z'B+3"0TB$$DQD$E`(GPP>@8B$$F -MB?#!Z!"(02>)\,'H"(A!*(GRB%$IB=@/K/`8B$$JB=@/K/`0B$$KB=@/K/`( -MB$$LB%DMQD$N`,9!+P`/MT0D'F;!Z`B(03`/MD0D'HA!,<9!,@#&03,`ZU:` -M?"0=`1G`@^`"@\`HBU0D-(A"),9")0")V`^L\!B+3"0TB$$FB=@/K/`0B$$G -MB=@/K/`(B$$HB%DIQD$J``^W1"0>9L'H"(A!*P^V1"0>B$$LQD$M`(M4)#2) -M%"3H_/___XM'8`^W0!R+3"0T9HE!$,9!%(")>1B+5"0HBT((B4$TBT0D,(E! -M((E14,9!'""+1V`%N````(E!.,=!;#"9`0#'1"0$`````(M4)"R)%"3H_/__ -M_XM,)#2+02")1"0,BTPD*(M!#(M1$(E$)`2)5"0(BT0D+(D$).C\____QH>7 -M`````8M4)#2)5"0$BTPD)(D,).C\____A?\/A*\```"+1V"%P`^$I````("_ -MEP`````/A"0!``!F@;^4````E@!U%XE$)`C'1"0$(0```(M`+(D$).C\____ -M9H.OE`````''!"30!P``Z/S___^+1"0DB00DZ/S___^+1V"%P'1.@+^7```` -M``^$S@```)#KIXM4)#2`>A0`=32[`````(!\)!T`="V+3"0HBT$(BU0D,(E4 -M)`B)1"0$BTPD8(D,).C\____NP````#K!XGVN_____^+1"0T@WA0`'0U@7@@ -M``@``'<5@\!0B40D!(M4)"2)%"3H_/___^L7BT0D-(/`4(E$)`2+3"0DB0PD -MZ/S___^+1"0TB40D!(M4)"2)%"3H_/___XM,)"2+@3P%``#&0"<`B7PD"(N! -M/`4``(E$)`3'!"0&````Z/S___^`92C]ZQJ[_____^L39H._E``````/A2?_ -M___I8/___XG8BUPD/(MT)$"+?"1$BVPD2(/$3,.-=@"-O"<`````@^P<B5PD -M$(ET)!2)?"08BU0D((M<)"2+0BR+.(MS2`^V0Q0\('0_/"!W"H3`=",\!G<6 -MZRT\(G0M/"*0C70F`'(@@\"`/`%V&;@`````B?;K6HM"(,=`!`````#&1F8! -MZP3&1F8-@WM0`'0I@7L@``@``'<1C4-0B40D!(D\).C\____ZP^-0U")1"0$ -MB3PDZ/S___^)7"0$B3PDZ/S___^)-"3_5G"X`0```(M<)!"+="04BWPD&(/$ -M',.-="8`@^P<B5PD$(ET)!2)?"08BW0D((M>8(7;=1:+1"0HB00D_U0D).E6 -M`0``C;8`````@WYT`'4,@WYP`(VV`````'03BT0D*(D$)/]4)"2-=@#I*P$` -M`("[M``````/A1$!``"`>R;_#X4'`0``BT,TA<!T"H!X-0`/A?8```"+0RSV -M0`@0#X7I````BSB`>T\`=!2)7"0(QT0D!`8```")!"3H_/___XM$)"2)1G2+ -M1"0HB49X#[9+)`^VT8G0@^`&@_@&=33VP@$/A(8```#&0R8%QD,G!(E<)`P/ -MMD--B40D"(M#,(E$)`2+0RR)!"3H_/___^F'````@_@$#X5^````]L$!='F+ -M4S2%TG0P#[=",J@"=&J#X/UFB4(RBT,T9L=`,@$`BT,TQD`F'8M#-(E$)`2) -M/"3H_/___^M"QD,F`\9#)P2)7"0$B3PDZ/S____K+,9#)@7&0R<&9L>#E``` -M````B5PD!(D\).C\____ZPV+1"0HB00D_U0D)(GVBUPD$(MT)!2+?"08@\0< -MPU.#[`B+7"00A=L/A+@```"+0VR)!"3H_/___XG"A<`/A'L```"`N*4````` -M='*`"P$/MH"E````/`)U.(-[:`!U&0^V@Y@```"#X`.(0P(/MH*D````B$,! -MZVT/MH.9````B$,"BT-H#[:`I````(A#`>M4/`-U4`^V@Y@```"#X`/!X`(" -M@YD```"(0P*+0V@/MH"D````B$,!ZRN-=@"+0VB%P'4+BT-DA<!U$(GVZQ8/ -MMH"D````B$,!ZPH/MH"2````B$,!@\0(6\.-=@!64X/L!(MT)!"%]G1JNP`` -M```/MH0SL`0``#S_=#</ML!IP"0!``")P@.6<`4``'0DBT(D)0#__P`]``#_ -M`'45]D(G!'0/BT(@A<!T"(D$).C\____@\,!@?N`````=;*+ACP%```Y\'4- -M!;@,``")!"3H_/___X/$!%M>PXUV`%93@^P4BUPD((VSN`P``(D<).C\____ -MB4,4B484B9L\!0``B9X\!0``BX-(!0``B89(!0``QH.N#````<:&K@P```&) -M'"3H_/___XD<).C\____B30DZ/S___^)'"3H_/___X3`='Z)-"3H_/___X3` -M='*)'"3H_/___\<$)-`'``#H_/___XD<).C\____QX,H`0``Z`,``,>#,`$` -M``````")FS0!``"-@R@!``")1"0$BT,4B00DZ/S____'1"0$`````(D<).C\ -M____QT0D!`````")-"3H_/___[@!````ZP6X`````(/$%%M>PU.#[`B+7"00 -MB1PDZ/S___^!P[@,``")'"3H_/___[@!````@\0(6\.0C;0F`````%575E.# -M[#R#/>0`````#X6!`0``QP7D`````0```,=$)#@`````Z;P"``"0C70F``^W -MAAX!``#!X!`/MY8<`0``"=`Y1"0H#X43`0``OP````"Y`````(E\)#!F@[D` -M`````'5[B?K!X@6+AAP!``")@@````"+AB`!``")@@0```"+AB0!``")@@@` -M```/MH(<````C0S]`````(T$`0^V7"0OB!R%#0````^V@AP```"-!`$/MEPD -M+H@<A0X````/MH(<`````<'&!(T/`````(""'`````'K>9"-="8`#[:9'``` -M`(G8N@````#WMC`!``"%TG1-BTPD,,'A`XT$&0^V5"0OB!2%#0```(M4)##! -MX@4/MH(<````C00!#[9<)"Z('(4.````#[:"'`````'!Q@2-#P````"`@AP` -M```!ZP^#QP&#P2"#_P0/A0/___^#AB@!```!D(UT)@"#Q0&#QA@[+=`+```/ -MA;[^__^#1"0T`8-\)#0@#X48`0``@T0D.`&!?"0X_P````^%4@$``(-\)%0` -M=`>+="14Q@8`BQW0"P``QT0D)`````"%VWXYN0````#'1"0D`````+H````` -MBX(H`0```40D)(-\)%0`=`R+@BP!``"+="14``:#P0&#PA@YV779@WPD6``/ -MA`$!``"]`````+L`````9H.[```````/A.D````/MH,<````B40D((7`?FK' -M1"08`````(T4[0````")5"0<BT0D'`-$)!B--(4,````BWPD6+@$````_(G! -M\Z8/E\(/DL`XPG4A@WPD5`!T#0^V@QT```"+="14B`8/MH,<````B40D).L/ -M@T0D&`&+5"0@.50D&'6I@\4!@\,@@_T$=&7I:?___P^V3"0TB$PD+L=$)`P` -M````QT0D"`````"+7"0TB5PD!(MT)#B)-"3H_/___XE$)"B]`````+X````` -M@SW0"P````^/3OW__^F+_O__#[9$)#B(1"0OQT0D-`````#KH`^V1"0D@\0\ -M6UY?7<.)]HV\)P````"#[!R)7"00B70D%(E\)!B+1"0@#[9T)"2+>&R+6&#V -M``%T=8M3,(72=!F)\0^VP8E$)`@/MD--B40D!(D4).C\____BY/D````A=)T -M'(GQ#[;!B40D"`^V@]D```")1"0$B10DZ/S___^)/"3H_/___X7`=#N`N*4` -M````=#*)\@^VPHE$)`B+0R")1"0$B3PDZ/S____K&(GQ#[;!B40D"(M#((E$ -M)`2)/"3H_/___XM<)!"+="04BWPD&(/$',.#[!R)7"0,B70D$(E\)!2);"08 -MBW0D((M4)"2`.@EW$`^V`O\DA:0)``"-M@````"X_____^E*`0``BU($BX)` -M!0``A<!U"8G0C;0F`````(N`/`4``,:`KPP```&)!"3H_/___[@`````Z14! -M```/MDH$N@````")\.AQZO__Z0`!```/MDH$N@$```")\.A<ZO__Z>L````/ -MMD($B40D!(DT).C\____Z=8````/MFH$BWYLBUY@N/_____V1E@(#X2]```` -MB70D"(N'/`4``(E$)`3'!"0%````Z/S___^`2R@"B5PD",=$)`0A````BT,L -MB00DZ/S___^`>T\`=!K'!"30!P``Z/S___^)/"3H_/___X![3P!UYHGHA,!T -M#&:#3EH09H-+.A#K"F:#9EKO9H-C.N^)="0(BX<\!0``B40D!,<$)`8```#H -M_/___X!C*/VX`````.LG#[9"!(E$)`2)-"3H_/___^L5#[9"!(E$)`2)-"3H -M_/___[@`````BUPD#(MT)!"+?"04BVPD&(/$',.0C;0F`````(/L3(E<)$") -M="1$B7PD2(M\)%"+=VR+ACP%``"`>"<`#X6Z````BU]PBU=@#[:"IP```(E$ -M)#0/MH*F````B40D,`^V@J4```")1"0L#[:"I````(E$)"@/MH*C````B40D -M)`^V@J(```")1"0@#[:"H0```(E$)!P/MH*@````B40D&`^V@ML```")1"04 -M#[8'@^`!#[;`B40D$`^V1P*)1"0,#[9'`8E$)`B+1PB)1"0$QP0D&`(``.C\ -M____QT=P`````(M'"(E$)`B)?"0$BT=XB00D_]/K/9"-="8`C5]\B5PD!(M& -M%(D$).C\____QT=\]`$``,>'A````("]`0")OX@```")7"0$BT84B00DZ/S_ -M__^+7"1`BW0D1(M\)$B#Q$S#D(VT)@````!55U93@^P<#[=$)#AIP"0!``") -MQ8M4)#`#JG`%``"+NCP%``"!Q[@,``"+3"0TB6E@B4T@@WTP`'4M@WTT`'4G -M#[9R*XGSA-L/A"`$``"+72RY`````#N:E`L```^$W0,``.GY`P``BT0D-(`( -M`8M%-(M4)#2)0FB+13")0F2+3"0P#[9Q*XGSA-MT4XM=++D`````BT0D,#N8 -ME`L``'0:ZR\/ML&)PL'B!HT$@HM4)#`YG`*4"P``=1R+7"0P#[9#*8T$@8M4 -M)#2(@I@```#K#KD`````@\$!B?`XP77#BU0D,(N*/`4```^V@3`%``"[```` -M`#S_="2+53"%TG08#[;`:<`4#0```X&H!0``NP`````YPG0JNP$````/MH$Q -M!0``//]T*XM5,(72="$/ML!IP!0-```#@:@%```YPG4.BTPD-(A9`>G>```` -MB?:#PP&Z``````^VA`HR!0``//]T(P^VP&G`L`````.!C`4``#M%-'4,BWPD -M-(A?`>FH````@\,!@\(!@_H$=<F)V0^VAS`%```\_W0DBU4PA=)U!8U9`>L8 -M#[;`:<`4#0```X>H!0``.<)UZ.LHC78`#[:',04``#S_="B+53"%TG0>#[;` -M:<`4#0```X>H!0``.<)U"XM$)#2(6`'K/HGV@\,!N@`````/MH0Z,@4``#S_ -M="`/ML!IP+`````#AXP%```[131U"8M4)#2(6@'K"X/#`8/"`8/Z!'7,BTPD -M,(!Y.0%U2(M5,(72=!C'1"0(``````^V14V)1"0$B10DZ/S___^+E>0```"% -MT@^$MP$``,=$)`@`````#[:%V0```(E$)`2)%"3H_/___X.]Y``````/A(\! -M``"+=3"`?C``=%:_`````(U>*(UT)@")7"08B1PDZ/S___^-2/B+5BR)1BR) -M60B)40R)`H"YVP```/]U#X!Y)0!U"8.YY`````!U"H/'`8GX.$8P=\&)^CA6 -M,`^%E`````^VA=L```"+3"0TB$$"@'XP``^$C@$``+L`````C7XHC;8````` -MB3PDZ/S___^-2/B+5BR)1BR)>0B)40R)`HM!((7`=$`/MI';````.%`"=#2# -M>'``=2Z#>'0`=2B(4`(/MT$<B40D"(M4)#"+@CP%``")1"0$QP0D!P```.C\ -M____C78`@\,!.%XP#X84`0``ZY(/MD5-BTPD-(A!`L:%VP```/^`?C``#X3V -M````NP````"0BWPD&(D\).C\____C4CXBU8LB48LB7D(B5$,B0*`N=L```#_ -M=$K&@=L```#_BT$@A<!T/`^V44TX4`)T,X-X<`!U+8-X=`!U)XA0`@^W01R) -M1"0(BU0D,(N"/`4``(E$)`3'!"0'````Z/S___^)]H/#`3A>,'9XZX8/MD5- -MBTPD-(A!`NMI#[;!B<+!X@:-!(*+?"0P.9P'E`L``'4FBU0D,`^V0BF-!(&+ -M7"0TB$,!B(.8````.$HK=1KK$(GVN0````"#P0&)\#C!=;F+5"0TQD(!_XM, -M)#3&00(`@[T<`0```'0)BX4@`0``B$$"BTPD-(/!((U59(M%9(M<)#2)0R"+ -M0@2)002+0@B)00B+0@R)00R+0A")01"+0A2)012+0AB)01B+0AR)01R+0B") -M02"+0B2)022)V8/!#(U54(M%4(E##(M"!(E!!(M""(E!"(M"#(E!#(M"$(E! -M$(N%C````(E#2(N%D````(E#3`^W13AFB4-8#[=%.F:)0UJ+142+54B)0U") -M4U0/MD5.B$-<]D4H!'4,BWPD,(D\).C\____#[95)(G0@^`&@_@&=0[VP@%U -M"8M$)#2`"`+K!XM4)#2`(OT/ME4HT.J#X@2+3"0T#[8!@^#["="(`0^V00&( -M@9H````/MD$"B(&9````B0PDZ/S____'1"0(`````(M%((E$)`2+7"0PB1PD -MZ/S___^+?"0TB3PDZ`SY__^#Q!Q;7E]=PXUT)@"#[!R)7"04B70D&(MT)""+ -MGCP%``")-"3H_/___X!^.0%U"8"[\0P```%T/HV>*`$``(E<)`2+1A2)!"3H -M_/___\>&*`$``.@#``#'AC`!````````B;8T`0``B5PD!(M&%(D$).C\____ -MBUPD%(MT)!B#Q!S#C78`C;PG`````%575E.#[$R+1"1DBU`8B50D((M`'(E$ -M)!@/MDH+B4PD'(M4)&"+@CP%``"+F#P%``"^`````+\`````N0`````/MI09 -M,`4``(#Z_W1&C8&`````9CV!`'<'@\8!ZS6)]@^VPHN3C`4``&G`L````("\ -M$*4````#=1>#QP&-1P.#^`9V#X/&`;\`````ZP6)]H/&`8/!`8/Y!G6EB?6+ -MFSP%``"!P[@,``"Q`)"-="8`#[:4&3`%``"`^O]T1HV!@````&8]@0!W!X/& -M`>LUB?8/ML*+DXP%``!IP+````"`O!"E`````W47@\<!C4<#@_@&=@^#Q@&_ -M`````.L%B?:#Q@&#P0&#^09UI3ET)!P/C3P)```[;"0<#Y[`BTPD:,<!```` -M`#S_#X0<"0``#[;`:<"X#```BU0D8`."/`4``(D$).C\____B<&%P`^$]P@` -M`(M$)!B)1"0D#[:!I0```#P"#X4$`@``BU0D:,<"!````(M$)"`/MG`'BQ$/ -MMT$DNP````"`O`*P!```_P^$T0$``(GR@/HC#X>W`0``#[;"_R2%S`D``(M, -M)"3'`453`Q&X`0```.FE`0``C40D2(E$)`S'1"0($`,``,=$)`0!````B0PD -MZ/S___^$P`^$<0$``(M$)$B%P`^$;`$``"7_`P``:<`0)P``C8@0EJ__NG.( -MJTR)R/?BB<@IT-'H`<+!Z@>+3"0DB1&X`0```.D\`0``C40D2(E$)`S'1"0( -M"`,``,=$)`0!````B0PDZ/S___^$P`^$"`$``(M$)$B%P`^$`P$``"7_`P`` -M:<#H`P``C8C(Y??_NLMK**^)R/?BB<@IT-'H`<+!Z@2+3"0DB1&X`0```.G3 -M````C40D2(E$)`S'1"0("`,``,=$)`0!````B0PDZ/S___^$P`^$GP```(M$ -M)$B%P`^$F@```,'H$"7_`P``:<#H`P``C8C(Y??_NLMK**^)R/?BB<@IT-'H -M`<+!Z@2+3"0DB1&X`0```.MJC40D2(E$)`S'1"0(#`,``,=$)`0!````B0PD -MZ/S___^$P'0ZBT0D2(7`=#DE_P,``&G`Z`,``(V(R.7W_[K+:RBOB<CWXHG( -M*=#1Z`'"P>H$BTPD)(D1N`$```#K#+@`````ZP6X`0````^VV`^VP^GR!@`` -M/`,/A=0&``"+1"1HQP`$````BU0D(`^V4@>(5"0KQT0D.`````#'1"0\```` -M`,=$)$``````QT0D1`````"+$0^VJMD```"%[0^.CP```+\`````QT0D%``` -M``"X`0```(G&B?G3YHM,)!0/MH01,@4``#S_=!\/ML!IP+````")PP.:C`4` -M`(M#5(M`&`^V0"$Y\'02@T0D%`&#?"04!`^$+`8``.N_A=L/A"(&```/MT,D -M@+P"L`0``/\/A!`&``"`NZ4````##X4#!@``B5R\.(/'`3G]#X5V____@'PD -M*U4/A]L%```/MD0D*_\DA5P*``"+1"0DQP!``P,1N`$```#IP`4``(U$)$B) -M1"0,QT0D"#0#``#'1"0$`0````^V1"0K@\`!@^`#BT2$.(D$).C\____A,`/ -MA(0%```/MU0D2(E4)$B!^O__``!U%(M4)"3'`O____^X`0```.ED!0``N,#A -MY`")T;H`````]_&+5"0DB0*X`0```.E&!0``C40D2(E$)`S'1"0($`,``,=$ -M)`0!````BT0D/(D$).C\____A,`/A!4%``"+1"1()?\#``!IP!`G``"-B!"6 -MK_^Z<XBK3(G(]^*)R"G0T>@!PL'J!XM,)"2)$;@!````Z>$$``"-1"1(B40D -M#,=$)`@(`P``QT0D!`$```"+1"0\B00DZ/S___^$P`^$L`0``(M$)$@E_P,` -M`&G`Z`,``(V(R.7W_[K+:RBOB<CWXHG(*=#1Z`'"P>H$BTPD)(D1N`$```#I -M?`0``(U$)$B)1"0,QT0D"`@#``#'1"0$`0```(M$)#R)!"3H_/___X3`#X1+ -M!```#[=$)$HE_P,``&G`Z`,``(V(R.7W_[K+:RBOB<CWXHG(*=#1Z`'"P>H$ -MBTPD)(D1N`$```#I%@0``(U$)$B)1"0,QT0D"`P#``#'1"0$`0```(M$)#R) -M!"3H_/___X3`#X3E`P``BT0D2"7_`P``:<#H`P``C8C(Y??_NLMK**^)R/?B -MB<@IT-'H`<+!Z@2+3"0DB1&X`0```.FQ`P``C40D2(E$)`S'1"0(%`,``,=$ -M)`0!````BT0D.(D$).C\____A,`/A(`#``"+1"1()?\#``"Z`````&G:.K@! -M`+DZN`$`]^&-%!,%XTH#`(/2`,=$)`B@A@$`QT0D#`````")!"2)5"0$Z/S_ -M__^+3"0DB0&X`0```.DS`P``C40D2(E$)`S'1"0(%`,``,=$)`0!````BT0D -M/(D$).C\____A,`/A`(#``"+1"1()?\#``"Z`````&G:.K@!`+DZN`$`]^&- -M%!,%XTH#`(/2`,=$)`A0PP``QT0D#`````")!"2)5"0$Z/S___^+3"0DB0&X -M`0```.FU`@``C40D2(E$)`S'1"0(%`,``,=$)`0!````BT0D0(D$).C\____ -MA,`/A(0"``"+1"1()?\#``"Z`````&G:YA-``KGF$T`"]^&-%!,%#?].!(/2 -M`,=$)`B`EI@`QT0D#`````")!"2)5"0$Z/S___^+3"0DB0&X`0```.DW`@`` -MC40D2(E$)`S'1"0(%`,``,=$)`0!````BT0D1(D$).C\____A,`/A`8"``"+ -M1"1()?\#``"Z`````&G:KD7A`+FN1>$`]^&-%!,%*5*O`8/2`,=$)`A`0@\` -MQT0D#`````")!"2)5"0$Z/S___^+3"0DB0&X`0```.FY`0``C40D2(E$)`S' -M1"0(L`,``,=$)`0!````BT0D/(D$).C\____A,`/A(@!``"+1"1(P>@/@^`! -MBU0D)(D"N`$```#I<P$``(M,)""`>0@`=!"+1"0\@:"H````__?__^L.BT0D -M/(&(J``````(``"+1"0\B00DZ/S___^X`0```.DU`0``BT0D((!X"`!T$(M$ -M)#R!H*@```#_[___ZPZ+1"0\@8BH`````!```(M$)#R)!"3H_/___[@!```` -MZ?<```"+5"0@@'H(`'00BT0D/(&@J````/_?___K#HM$)#R!B*@`````(``` -MBT0D/(D$).C\____N`$```#IN0```(M,)""`>0@`=!"+1"0\@:"H````_[__ -M_^L.BT0D/(&(J`````!```"+1"0\B00DZ/S___^X`0```.E[````BT0D((!X -M"`!T$(M$)#R!H*@```#___[_ZPZ+1"0\@8BH```````!`(M$)#R)!"3H_/__ -M_[@!````ZT"+5"0@@'H(`'00BT0D/(&@J````/___?_K#HM$)#R!B*@````` -M``(`BT0D/(D$).C\____N`$```#K!;@`````#[;`ZPF-="8`N``````/ML#K -M%K@`````ZP^+3"1HQP$`````N`````"#Q$Q;7E]=PY"-M"8`````55=64X/L -M;(N\)(````"+A"2$````B[0DC````(G%P>T8B<+!ZA"(5"1`#[;,B$PD,(A$ -M)"^+G"2(````@<.X#```N`````"+E"2(````Q@00`(/``3UP&0``=>N)<A"A -MX````(A"*(/``:/@````B>F(2B,/MD0D0(A"(@^V3"0PB$HA#[9$)"^(0B#& -M0BD`#[<'9HE"&`^W1P)FB4(:BT<$B4(<B7,0#[9"*(A#*(GJB%,C#[9,)$"( -M2R(/MD0D,(A#(0^V5"0OB%,@QD,I`0^W!V:)0Q@/MT<"9HE#&HM'!(E#'(N, -M)(@````/MT$:9CTD)P^$(P$``&8])"</AXP```!F/40A#X0/`0``9CU$(7=, +M_X/$%%M>PXUV`%575E.#[$P/MGPD:`^V5"1L#[9$)'"(1"0GBVPD8(GY#[;) +MB4PD*&G!=`0``("\!=A%``#]#X0Y"0``@/H0#X2Y`@``@/H0=QR$TI"-="8` +M#X2A````@/H!#X45"0``D.D+`0``@/KB=!N`^O^-=@!T*8#ZD`^%^0@``)"- +M="8`Z38'``"Y`````(!]!`")]@^%.@@``.E="```:40D*'0$``#&A`7810`` +M_X"]ES$```%U+8M<)"B)7"0(BW0D9(ET)`2+?"1@B3PDZ/S___^%P`^%G`@` +M`(!%!@'IDP@``(M$)"C&1`4'`8M4)&2)5(4,Z7T(``"`O9<Q```!=5J-C?0P +M``!I1"0H=`0```'H#[91"8B0=D4```7010``#[91"H/B`8A0"<9`"`"+3"0H +MB4PD"(M<)&2)7"0$BW0D8(DT).C\____A<`/A2,(``"`108!Z1H(``"+?"0H +MQD0]!P&+1"1DB42]#.D$"```:70D*'0$``"-/"X/MH4F,0``B(?&10``#[>% +M)#$``&:)A#7$10``C90UL$4``(N%'#$``(E"!(N%(#$``(E""(V4-8!%``"+ +MA0`Q``")0@2+A00Q``")0@B-G#6010``C4L$C94(,0``BX4(,0``B4,$BT($ +MB4$$BT((B4$(BT(,B4$,BX48,0``B80UK$4``,:'V$4```&`?08?#X1B!P`` +MNP````!I1"0H=`0```'HC;!P10``C;C`10``ZU20#[;#B40D#(M4)"B)5"0( +MBTPD9(E,)`2+1"1@B00DZ/S___^%P'01:40D*'0$``"(G`7'10``ZR"#PP&` +M108!.%X&#Y3`@^@!(=B(1P>`?08?=`4Z7@9RJ,:%ES$```$/MDT$A,D/A-D& +M``"Z`````(!]!P%T#.M$#[;0@'P5!P%U/\9$%0?_QT0D%`````#'1"00```` +M`,=$)`S_````B50D"(M$E0R)1"0$BU0D8(D4).C\____Z8@&``"X`````(/` +M`3C(=;#I=P8``(M,)'2)3"0P@\$8B4PD+(U,)$"+7"0PBT,8B40D0(MT)"R+ +M1@2)1"1$:40D*'0$``"--"B-EM!%``#&0@@0]D,,<`^$90,``(N&W$4``(7` +M#X2(````#[9:"L=$)`@(````B4PD!(/`7(D$).C\____A,!U:8M$)##V0`\/ +M=%^+AMQ%``"%P'15B<:`?F4`=$T/MMN)7"0(B70D!(DL).C\____BU0D+(E4 +M)!0/M\")1"00B5PD#(ET)`B+3"1DB4PD!(M<)&")'"3H_/___P^V7F:+1FB% +MP'0$B<;KK8MT)#`/MD8/J`T/A/T```!I5"0H=`0```^VC!5T10``@/D?#X?D +M````J`AT$@^VP<'@!`'0QH0%Z$<```;K&`^VP<'@!&E4)"AT!````=#&A`7H +M1P``!P^V\8GRP>($:5PD*'0$```!VHV,%>!'``#&00D`BWPD,`^V1P^(00N+ +M1"1`B4$0BT0D1(E!%`^V1PF(00H/MD<-@^`/#[:4'7I%```XT'8"B=")PH/B +M#P^V00R#X/`)T(A!#(GPP>`$:50D*'0$```!T(V,!>!'``"+7"0P#[9#*8/@ +M#P^VE!5Z10``.-!V`HG0P>`$#[91#(/B#PG"B%$,:40D*'0$``"`A`5T10`` +M`>G"`0``J`(/A+H!``"-1"1`B40D!(DL).C\____B<(\_P^%7P$```^V302$ +MR70X#[:%V$4``#S_="VZ`````#S]=1OK(@^VPFG`=`0```^VA`7810``//]T +M$CS]=`Z#P@$XRG7@ZP6Z``````^VPFG`=`0``(V,!71%``"X`````,8$"`"# +MP`&#^&1U]`^VTHE4)#1ITG0$``"-'"J)^0^VP6G`=`0``(V$!71%``")@]Q% +M``"-C!7`10``:70D*'0$``"-E#7`10``BT(0B4$(BT(4B4$,BWPD9(F[Y$<` +M``'NBX;@10``B8/@10``QH/810``_XV#<$4```^V2`N+?"0P#[97"8B4"WQ% +M``"`0`L!#[:.>D4```^V5PV#X@\XRG8"B<J(4`II5"0T=`0``(V,%<!%``"+ +M1"1`B4$0BT0D1(E!%`'JBTPD,`^V00^(@G=%```/MEPD)XB:VD4```^V104Z +M101U!,9%!0"`104!BW0D-,9$-0<!BWPD9(E\M0SK06E$)"AT!```#[;2:<IT +M!```C90-=$4``#F4!=Q%``!T((T<*8V#<$4```^V2`N+="0P#[96"8B4"WQ% +M``"`0`L!BWPD,`^V1PF)1"0(BT0D*(E$)`2)+"3H_/___VE$)"AT!```@+P% +MQT4````/A)P```"`?08?=7#IC0(``,:&V$4``!`/MD,'B40D#(M4)"B)5"0( +MBTPD9(E,)`2+1"1@B00DZ/S___^%P`^%6@(``(!%!@$/MDL'#[;!@\`!#[:6 +M=D4``#G0=0W&0P<`Z3@"``"-="8`C4$!B$,'@'T&'P^$)`(``.L1:40D*'0$ +M``"--"B-GL!%```/MD,'.H9V10``#X)T____Z?P!``"`?08`#X7R`0``QT0D +M%`````#'1"00`````,=$)`R0````BU0D*(E4)`B+3"1DB4PD!(M<)&")'"3H +M_/___^FY`0``OP````!IQS@,``"+="1D.70H%'5VC5P%,+X`````B40D((UV +M`(`[_W53@'T&'P^$A0$``(T$=HM4)""-1,(0C40%&(E$)!0/MT/VB40D$`^V +M0_2)1"0,BT/PB40D"(M,)&2)3"0$BT0D8(D$).C\____A<!U!X!%!@'&`_"# +MQ@&#PQB!_H(```!UFH/'`8/_!`^%;O___X!]!@`/A1@!```/MDT$A,D/A-@` +M``"Z`````(!]!P%T#.M$#[;0@'P5!P%U0<9$%0?_QT0D%`````#'1"00```` +M`,=$)`S_````B50D"(M$E0R)1"0$BU0D8(D4).C\____Z;L```"X`````(GV +M@\`!.,AUKNMWC;0F``````^VP6G`=`0``(V4!=!%```/MD((//UT"#S_=`3& +M0@C^@\$!.$T$=]AI1"0H=`0``(N<!>!%``"_`````(UT)@"`?"\8`749QD0O +M&`"+1"\4B40D!(M,)&")#"3_TXUV`(''.`P``('_X#```'0VZ]#'1"04```` +M`,=$)!``````QT0D#.(```"+7"0HB5PD"(MT)&2)="0$BWPD8(D\).C\____ +M@\1,6UY?7<.-="8`@^PLB5PD((ET)"2)?"0HBW0D-(N>F````(![!@`/A(0! +M``"-AI````")1"0$B1PDZ/S___^)P3S_#X1H`0``B?</MD8!/`%T;#P!<A@\ +M$`^$K````#R0#X5*`0``C78`Z?H```"`NY<Q````C70F``^%,0$``,:#ES$` +M``&`:P8!QT0D%`````#'1"00`````,=$)`P`````#[;!B40D"(M$)#")1"0$ +MB1PDZ/S____I\@```("[ES$````/A>4```#&@Y<Q```!@&L&`<=$)!0````` +MQT0D$`````#'1"0,`0````^VP8E$)`B+1"0PB40D!(D<).C\____Z:8```"Z +M`````#J,&C@R``!U$0^VA!HY,@``.D<)=!*-="8`@<*D````@?K<$P``==B` +M:P8!B7PD%`^V1PF)1"00QT0D#!`````/ML&)1"0(BT0D,(E$)`2)'"3H_/__ +M_^M(#[:&H@```&G`I````,:$`Y<Q```!@&L&`<=$)!0`````QT0D$`````#' +M1"0,D`````^VP8E$)`B+1"0PB40D!(D<).C\____BUPD((MT)"2+?"0H@\0L +MPXGVC;PG`````%93BU0D$`^V="04BUPD#(72=`^)V8G0Q@$`@\$!@^@!=?6) +M$X'J=$4``,'J`KA9MOER]^+!Z@>(4P2)\#C0<P.(0P2`>P0`="6Z`````(GV +M#[;"QD0#!_]IP'0$``#&A`/810``_8/"`3A3!'?BQD,&`,9#!0")V+H````` +MC78`QH"7,0```8B0EC$``(/"`06D````@_H@=>9;7L.-=@!75E.+?"04BTPD +M$(!Y!``/A($```"[``````^V\VG&=`0``#F\`>1'``!U8K@`````.)P(.#(` +M`'4(QH0(.S(```$%I````#W<$P``=>-IQG0$``#'A`'D1P```````(V4`71% +M``"X`````)"-="8`Q@00`(/``8/X9'7T:<9T!```QH0!V$4``/V`:04!@\,! +M.%D$=X2)R[X`````.7L4=2W'0Q0`````QD,8`&G&.`P``(U$`12Z`````(UT +M)@#&0!P`@\(!@\`8@/J"=?&#Q@&!PS@,``"#_@1UP%M>7\/K#9"0D)"0D)"0 +MD)"0D)!55U93@^P<#[9$)#R(1"0:BUPD,`^V0P4Z0P1U!,9#!0`/ME,%B%0D +M&XG=B=BY`````(G.B<^+4!0[5"0T=4IIP3@,``#&1`,8`0^V4P3&1"0;`(32 +M=%O&1"0;`(M\)#0YO>1'``!U#@^VA=A%``"#P`,\`78\@$0D&P&!Q70$```X +M5"0;="OKTX72=15IQS@,```!V(M4)#2)4!3&0!@!ZQ"#Q@&#P0$%.`P``(/Y +M!'6`B?(/ML)IP#@,``"-1`,<N@````#&!`(`@\(!@?H"#```=?$/MG0D&XM\ +M)#2)?+,,:<9T!```C90#=$4``+@`````Q@00`(/``8/X9'7T:<9T!```C90# +MY$4``+@`````Q@00`(/``3T``@``=?)ISG0$``"-%!F+1"0TB8+D1P``BT0D +M0(F"X$4``,:"V$4``/_'@MQ%````````C8P+P$4``(M\)#B+!XE!$(M'!(E! +M%`^V1"0:B()Z10``QT0D%`````#'1"00`````,=$)`S_````B70D"(M4)#2) +M5"0$BWPD,(D\).C\____@$,%`8/$'%M>7UW#D)"0D)!64XM4)`R+`HLP#[98 +M*X3;=#</ME()N0````#VP@%T"NLGB=#3^*@!=0>#P0$XV77Q@/D#=A@/ML&- +MA(;0`0``BP"C`````.L6N0`````/ML&-A(;0`0``BP"C`````,'H%(/@`5M> +MPY"-M"8`````55=64X/L!(M$)!B+$`^V>BN]"@```(GYA,ET20^V<`F[```` +M`+T*````N0````"0B?#3^*@!=!X/MH+""P``@^`#@\`(B$0D`XGH.D0D`W8% +M#[9L)`.#PP&#P0&#PD2)^#C#=<N)Z@^VPH/$!%M>7UW#C;0F`````(V\)P`` +M``!55U93@^P$BT0D&(L0#[9Z*[T(````B?F$R71)#[9P";L`````O0@```"Y +M`````)")\-/XJ`%T'@^V@L(+``"#X`.#P`B(1"0#B>@Z1"0#<P4/MFPD`X/# +M`8/!`8/"1(GX.,-URXGJ#[;"@\0$6UY?7<.-M"8`````C;PG`````%.+7"0( +M#[8#P.@$B<*#X@</MDL"]L$$=`.`S@(/MD,#J`1T!H'*```"`/;!"'0#@,X( +MJ`AT!H'*```(`/;!`G0#@,X$J`)T!H'*```$``^V0Q3!X!@)T%O#C;0F```` +M`(/L!(M$)`B)!"3H_/___X/$!,.-M@````"-O"<`````BTPD!(N!7`4``"7_ +M__\`N@`````]4`&3`'45#[:!7P4``,#H!#P,#Y3`#[;0C78`B=##C;8````` +MC;PG`````%.)PX72?D`/M@B$R70%@/D@=2VX`````.L6C;8`````#[8,&(3) +M=`B`^2!U$XUV`(/``3G0=>GK#HVT)@````"X`````.L%N`$```!;C78`P^L- +MD)"0D)"0D)"0D)"0D%.+7"0(#[9#`P^V4P+!X@@)T,'@$`^V2P$/MA/!X@@) +MT0G(6\.-="8`C;PG`````%=64XG&B=.)SX7)=!ZY``````^V%@^V1@&(`XA3 +M`8/#`H/&`H/!`3GY=>=;7E_#D(/L'(E<)!")="04B7PD&(MT)""+?"0D#[=' +M$+K_````9CV%`'<+#[?`#[:4!KP$```/M])ITK`````#EI@%``"+GD0*```/ +MMD(TP>`(C80#3`@``(L(B0T`````@>'_````#[9"-,'@"(V<`T0(``"+`Z,` +M````P>`("<B)@J````!FQX*<``````")?"0$B30DZ/S___^+7"00BW0D%(M\ +M)!B#Q!S#B?:-O"<`````@^P<B5PD#(ET)!")?"04B6PD&(ML)"`/MGPD)(MU +M`(GX/`-V,`^VV,'C`XV$'C`"``#'``P```#'!"00)P``Z/S___^-A!XT`@`` +MBS")-0````#K,(GX#[;8P>,#C80S4`(``,<`#````,<$)!`G``#H_/___XV< +M,U0"``"+,XDU`````(GX#[;(B<C!X`:-!(B-E`60"P``#[9:$8/C_(A:$8GP +M)0``/P`]```0`'4/B=B#R`*(0A'K&9"-="8`B<C!X`:-%(B)V(/(`8B$%:$+ +M``"+7"0,BW0D$(M\)!2+;"08@\0<PY"-M"8`````55=64X/L'(M$)#2+5"0P +MBQ*)5"08BQ+&0"4`QD`D!<9`)P:+3"0PB4@LN0````"]`````(V"``(``(E$ +M)!2!P@0"``")5"00ZQ>-M@````"+5"0P#[9""=/XJ`%U#(/!`8M$)!@Z2"MR +MYH#Y`W9Q#[;9P>,#BWPD%`'?QP<L````QP0D$"<``.C\____`UPD$(LSB34` +M````QP<D````QP0D$"<``.C\____BP.C`````,'@"('F_P````G&QP<@```` +MQP0D$"<``.C\____BQN)'0````#K;XVT)@`````/MMG!XP.+?"04`=_'!RP` +M``#'!"00)P``Z/S___\#7"00BS.)-0````#'!R0```#'!"00)P``Z/S___^+ +M`Z,`````P>`(@>;_````"<;'!R````#'!"00)P``Z/S___^+&XD=`````('^ +M`0%IEG47BU0D,(!*"`:)V,'H$#Q0#Y3`#[;`ZT:!_@$!``!U$8G8P>@0/%`/ +ME,`/ML#K+XGVQP0DB!,``.C\____@\4!B>F`^01W"KD`````Z<'^__^)V,'H +M$#Q0#Y3`#[;`@\0<6UY?7<.-="8`C;PG`````%575E.#[`R+="0@BVPD)(M& +M5(LX9H.^G`````!T,HGKQP0DZ`,``.C\____A>UT!8/[`78;B3PDZ/S___]F +M@[Z<`````'0)@^L"Z]2-="8`@\0,6UY?7<.0C;0F`````(/L'(E<)`R)="00 +MB7PD%(EL)!B+7"0L#[9L)"0/MWPD*`^V1"0PB$0D"XM4)""+0E2+,(DT).C\ +M____B<+&0"3AQD`E`<9`)A*X#P```(GIA,EU"(M,)"`/MD$KB$(GB?B(0BB) +M^0^VQ8A"*0^VQXA"*HG8P>@0B$(KB=C!Z!B(0BR(6BV+3"0@#[=!)&:)0A") +M<AC'0B``````QT(T`````+@`````@'PD"P!U!;@`````B4)LB50D!(DT).C\ +M____BUPD#(MT)!"+?"04BVPD&(/$',.-=@"-O"<`````@^P<B5PD#(ET)!") +M?"04B6PD&(M<)"P/MFPD)`^W?"0HBU0D((M"5(LPB30DZ/S___^)PL9`).'& +M0"4!QD`F$K@/````B>F$R74(BTPD(`^V02N(0B>)^(A"*(GY#[;%B$(I#[;' +MB$(JB=C!Z!"(0BN)V,'H&(A"+(A:+8M,)"`/MT$D9HE"$(ER&,="(`````#' +M0C0`````QT)L`````(E4)`2)-"3H_/___XM<)`R+="00BWPD%(ML)!B#Q!S# +M55=64X/L'(M\)#`/MD0D-(A$)!L/MVPD.(7_#X3N````BS>%]@^$Y`````^V +M7BN%VWY#BT=4#[90";D`````]L(!=`KK,(G0T_BH`74'@\$!.=EU\8/Y`WXA +MBP8%T`$``(T$B(L`HP````#!Z!2#\`&#X`'K'[D`````BP8%T`$``(T$B(L` +MHP````#!Z!2#\`&#X`&$P'5V@+^L`````'4&@'\F`'5G#[=')("\!KP$``#_ +M=%G&1R8E9L>'G`````$`#[?%#[94)!O'1"00`0```(M,)#R)3"0,B40D"(E4 +M)`2)/"3H_/___\=$)`0%````B3PDZ/S____&1R8`9H._G``````/E,`/ML#K +M!;@`````@\0<6UY?7<.-="8`@^P<B5PD#(ET)!")?"04B6PD&(M\)"`/MFPD +M)`^W7"0HBT=4BS")-"3H_/___XG"QD`DX<9`)0'&0"81N`\```")Z83)=00/ +MMD<KB$(GB%HH#[;'B$(I#[=')&:)0A")<AC'0B``````QT(T`````,=";``` +M``")5"0$B30DZ/S___^+7"0,BW0D$(M\)!2+;"08@\0<PXGVC;PG`````%57 +M5E.#[!R+?"0P#[9$)#2(1"0;#[=L)#B%_P^$\P```(LWA?8/A.D````/MEXK +MA=M^0XM'5`^V4`FY`````/;"`70*ZS")T-/XJ`%U!X/!`3G+=?&#^0-^(8L& +M!=`!``"-!(B+`*,`````P>@4@_`!@^`!ZQ^Y`````(L&!=`!``"-!(B+`*,` +M````P>@4@_`!@^`!A,!U>X"_K`````!U!H!_)@!U;`^W1R2`O`:\!```_W1> +MQD<F)6;'AYP````!``^WQ0^V5"0;QT0D#`$```")1"0(B50D!(D\).C\____ +MQT0D!`4```")/"3H_/___\9')@!F@[^<`````'43BX>@````BU0D/(D"N`$` +M``#K!;@`````@\0<6UY?7</K#9"0D)"0D)"0D)"0D)"#[!R)7"0,B70D$(E\ +M)!2);"08BWPD(`^V;"0D#[=<)"@/MD0D+(A$)`N+1U2+,(DT).C\____B<+& +M0"3AQD`E`<9`)A&X#P```(GIA,EU!`^V1RN(0B>(6B@/ML>(0BD/MT<D9HE" +M$(ER&,="(`````#'0C0`````N`````"`?"0+`'4%N`````")0FR)5"0$B30D +MZ/S___^+7"0,BW0D$(M\)!2+;"08@\0<PXUV`(/L'(E<)`R)="00B7PD%(EL +M)!B+;"0D#[9T)"@/MGPD+(M$)""+&(D<).C\____B<*%P'40QH6U`````<9% +M)@/I?P```,9`).'&0"4!B?`\`1G`]]"#P`*(0B:)^(3`=3^#?30`=`0/MD5- +MB$(G#[=%'&:)0A")6AC'0B``````QT(T`````+C`+@,`B4)LB50D!(D<).C\ +M____ZR>-=@#&0B</#[=%'&:)0A")6AC'0B``````QT(T`````+@`````Z\B+ +M7"0,BW0D$(M\)!2+;"08@\0<PY"-M"8`````55=64X/L+(ML)$B+1"1`BQ"+ +M1"1$P>`#C;P0``(``(VT$`0"``"['`$``)"-="8`@WPD1`-V&8D?QP0D$"<` +M`.C\____BP:C`````.L7B?:)'\<$)!`G``#H_/___XL&HP````")A!ST_O__ +M@\,$@?LX`0``=;F+1"00B44`BT0D%(E%!(M$)!B)10B+1"0<B44,BT0D((E% +M$(M$)"2)112+1"0HB448@\0L6UY?7<-55U93@^PLBVPD2(M$)$"+$(M$)$3! +MX`.-O!```@``C;00!`(``+L``0``D(UT)@"#?"1$`W89B1_'!"00)P``Z/S_ +M__^+!J,`````ZQ>)]HD?QP0D$"<``.C\____BP:C`````(F$'!#___^#PP2! +M^QP!``!UN8M$)!")10"+1"04B44$BT0D&(E%"(M$)!R)10R+1"0@B440BT0D +M)(E%%(M$)"B)11B#Q"Q;7E]=PU575E.#[#R+3"14B$PD$XM$)%"+`(E$)!@/ +MMOF)^,'@!HT$N`-$)%"-D)`+``"(2A"+3"10B8B<"P``QD(2`(E\)`2)#"3H +M_/___XUT)!R)\(GRQ@``@\`!B=.-;"0\.>AU\`^V1"03B40D%(E4)`B)1"0$ +MBU0D4(D4).C\____B1PDZ/S___^)1"0,C0R]`````(GZP>(&C101BT0D4(T< +M`HM$)`R)@Z@+``"+1"10C900H`L``(M$)"B)0@R+1"0LB4(0@'PD$P-V*8M4 +M)!B-A`K0`0``BP"C`````(F#P`L``(V$^H`!``"+$(D5`````.L_C12]```` +M`(M,)!B-A!'0`0``BPB)#0````")^,'@!@'"BT0D4(F,$,`+``"+5"08C83Z +M@`$``(L0B14`````B?C!X`:-!+@#1"10B9#$"P``]H#""P``$`^$/0$``/:` +MH0L```)T7(UT)@#&!@"#Q@$Y[G7VC5PD'(E<)`B+3"04B4PD!(M$)%")!"3H +M_/___XD<).C\____B?K!X@:-%+J+3"10B801M`L``(V4$:`+``"+1"0HB4(8 +MBT0D+(E"'.L7B?C!X`:-!+B+5"10QX0"M`L```$``@"`?"03`W8YC1S]```` +M`(M,)!B-A`LP`@``QP`8````QP0D$"<``.C\____BT0D&(V<`S0"``"+$XD5 +M`````.LWC1S]`````(M4)!B-A!-0`@``QP`8````QP0D$"<``.C\____BTPD +M&(V<"U0"``"+$XD5`````(GXP>`&C02XBTPD4/>$`<`+``````,`=0B!XO__ +M_]_K!H'*````((!\)!,#=@^+3"08C83Y-`(``(D0ZPV+3"08C83Y5`(``(D0 +M@\0\6UY?7<.0C;0F`````%575E.#[`R+?"0@BVPD)(EL)`@/MT4`9H7`>0LE +M`!\``,'X"(A')8U'4(U-%(M5%(E74(M1!(E0!(M1"(E0"(M1#(E0#(M1$(E0 +M$(VWC````(M5+HF7C````(M5,HE6!(U?9(U--HM5-HE79(M1!(E3!(M1"(E3 +M"(M1#(E3#(M1$(E3$(M1%(E3%(M1&(E3&(M1'(E3'(M1((E3((M1)(E3)+D* +M````B<+H0O'__[D$````B?*)\.@T\?__N10```")VHG8Z";Q__]FQT<X``!F +MQT<Z``"+1"0(9H.XL@$```$/E,+!X@,/MD<H@^#W"="(1RCVA:<````$=`9F +MQT<X`0#VA:0````!="1F@T\X`O:%J@````%T!6:#3SH!]H6H`````70(9H%/ +M.``!B?;VA:0````@=!=F@T\X!/:%J@```"!T"6:#3SH"C70F`/:%I````$!T +M%V:!3SB``/:%J@```$!T"&:#3SH(C78`QD=.`O:%F0````%T,P^W1SBH`70, +M@\@(9HE'.&:#3SH0#[:%E@```(/@'X/``8A'3CP@=0O&1TX?C;0F`````/:% +MF`````AT!F:!3S@``O:%F`````1T!6:#3S@@]H68`````G0%9H-/.!#VA:@` +M```@=`[VA:X````@=`5F@T\X0/9'.`%T&(N%R````(N5S````(E'1(E72.L1 +MC70F`(M5>(E71,='2`````"#1T3_@U=(__9%:@)T&0^WA8````"H#W0.9H/X +M`AG`@\`$B$<\ZP3&1SP"QD<]_P^W57X/M\*H!'0)QD<]`NL9C78`J`)T!L9' +M/0'K#/;"`8UV`'0$QD<]`,9'/O_V16H$=!VY``````^WA;````#3^*@!=`.( +M3SZ#P0&#^0=UZ,=$)`0``@``B2PDZ/S___^)AY@```"+1"0(]H"F````('0@ +M#[>`K````(/@((/X`1G`@\`"B(<D`0``ZPV-M@````#&AR0!````N`$```"# +MQ`Q;7E]=PXVV`````(V_`````(/L'(E<)`R)="00B7PD%(EL)!B+;"0@BWT` +MNX#____K!8#[A7=*#[;##[:T![P$``")\#S_=#D/ML!IP!0-```#A[0%```Y +M:`AU)<=$)`@(````BU0D)(E4)`2)!"3H_/___X3`=`F)\.L2D(UT)@"#PP&` +M^X%VJ;C_____#[;`BUPD#(MT)!"+?"04BVPD&(/$',.-M@````"-OP````!5 +M5U93@^P\BU0D4(L"@'HK``^$`P,``,=$)#@`````C8@``@``B4PD&`4$`@`` +MB40D%`^V1"0XB$0D-P^VZ(GHP>`&C02HBU0D4(T<$/:#P@L``!`/A*8"``"- +MDY`+``"X`0```(GIT^`(0A*+FZ0+``")7"0P]D(1`@^$,`$```^V7"0W@\,! +MBW0D4#A>*P^&&P$``(T$K0````")1"0@B>K!X@:)5"0<C;0F``````^V\XGP +MP>`&C02PBTPD4(T\"/:'P@L``!`/A-$```"+3"0@`TPD'(M4)%`!RHE4)"SW +M@K0+``````X`#X2O````BU0D4(V$`J`+``")1"0HB<*#PAB+1"10C8P(H`L` +M`(E,)"2)R(/`&,=$)`@(````B50D!(D$).C\____A,!T;XM$)"B#P`R+5"0D +M@\(,QT0D"`@```")1"0$B10DZ/S___^$P'1)N`$```")\=/@BU0D+('"D`L` +M``I"$HA"$HB'H@L``(-\)#``=0R+OZ0+``")?"0PZQ>)\,'@!HT$L(M4)#"+ +M="10B90&I`L``(/#`8M,)%`X62L/AP#___^#?"0P``^%MP```(MT)%")-"3H +M_/___XE$)#"%P`^$1P$``(GHP>`&C0RH`?&+1"0PB8&D"P``#[9$)#>)PL'B +M!HV$@I`+``"-1`8,BU0D,(E"&`^V@:$+``"(0@;&0@4`B3+&0@H`QD(T`,9" +M'``/ME0D-X/"`3A6*W9=B>C!X`:-!*B-G`:0"P``D(UT)@`/MLH/MD,2T_BH +M`707B<C!X`:-!(B+="0PBTPD4(FT`:0+``"#P@&+1"10.%`K=AGKSHGHP>`& +MC02HBTPD,(M4)%")C`*D"P``B>C!X`:-!*B+="10C90&D`L```^V0A*+3"0P +MB$$)#[9R$H!\)#<#=B>-'.T`````BT0D&`'8QP`X````QP0D$"<``.C\____ +M`UPD%(DSZR>-'.T`````BT0D&`'8QP`X````QP0D$"<``.C\____`UPD%(DS +MB?:#1"0X`0^V1"0W@\`!BW0D4#A&*P^'&/W__X/$/%M>7UW#C;0F`````(V\ +M)P````!55U93@^Q,BW0D8(L>QD0D0%#&1"1!!<9$)$($QD0D0S#&1"1$$<9$ +M)$6KQD0D1@#&1"1'`,>#`$`!`!,@``"+!L>`!$`!`/__``"+!L>`!$`!```` +M```[MD@%```/A>0```"-OLP,``"-KEP%``#'1"00`0```,=$)`P(````B6PD +M",=$)`0```(`B30DZ/S___^+AE0%```/MI9?!0``@^H$C02"B(9?!0``B30D +MZ/S___^$P'41BT0D0(F&7`4``(M$)$2)102A``````"&7P4``(/``:,````` +M#[:&7`4``(B'7`4```^VAET%``"(AUT%```/MH9>!0``B(=>!0``#[:&7P4` +M`(/``HB'7P4```^VAF`%``"(AV`%```/MH9A!0``B(=A!0``#[:&8@4``(B' +M8@4```^VAF,%``"(AV,%``")WXV#``$``(E$)"B+@P`!``"C``````^WT(E4 +M)$BH('0+)=__``")1"1(ZQ:)T(/(((E$)$B+5"0HB0*+`J,`````BP;'@`0! +M````````BP;'@!@!````````BP;'@!P!````````QP0DD-`#`.C\____QX=P +M`0``&`$``(N'=`$``*,`````@.3]@,P$B40D2,>'<`$``!@!``"+1"1(B8=T +M`0``QX=P`0``*`$``,>'=`$``']_``#'AW`!```D`0``BX=T`0``HP````!F +MN```#?\_``")1"1(QX=P`0``)`$``(M$)$B)AW0!``#'AW`!```\`0``QX=T +M`0````!Z`,>'<`$``*0!``#'AW0!``!]O^__QX=P`0``N`$``(N'=`$``*,` +M````)?__```-``#Z`(E$)$C'AW`!``"X`0``BT0D2(F'=`$``,>'G````/\` +M``#'AY`"``!$`0``QX>4`@``!A``",>'D`(``+0!``#'AY0"``!?<```QX>0 +M`@``,````(N'E`(``*,`````,.2`S#.)1"1(B8>4`@``@'XK``^$>@(``,=$ +M)"P`````C8=0`@``B40D&(V75`(``(E4)!0/MD0D+(A$)#,\`P^&$0$```^V +MZ(T4[0````")5"0DC807,`(``(E$)"#'``@```#'!"00)P``Z/S___^+5"0D +MC9P7-`(``(L#HP````")1"1(#0``@`")`XV&7`4``(E$)`B);"0$B30DZ/S_ +M__^);"0$B30DZ/S___^+1"0@QP!$`0``QP0D$"<``.C\____QP,&$``(BU0D +M(,<"M`$``,<$)!`G``#H_/___\<#7W```(M$)"#'``@```#'!"00)P``Z/S_ +M___'1"1(_U2``,<#_U0``,=$)`@!````B6PD!(DT).C\____BT0D)(V4!X`! +M``"+`J,`````)?___O^)`L=$)$@%`<@`BU0D)(V$%X0!``#'``4!R`#I#@$` +M``^V;"0SC03M`````(E$)#B+5"08`<*)5"0<QP((````QP0D$"<``.C\____ +MBUPD.`-<)!2+`Z,`````B40D2`T``(``B0.-AEP%``")1"0(B6PD!(DT).C\ +M____B6PD!(DT).C\____BT0D',<`1`$``,<$)!`G``#H_/___\<#!A``"(M4 +M)!S'`K0!``#'!"00)P``Z/S____'`U]P``"+1"0<QP`(````QP0D$"<``.C\ +M____QT0D2/]4@`#'`_]4``#'1"0(`0```(EL)`2)-"3H_/___XM$)#B-E#B` +M`0``BP*C`````"7___[_B0+'1"1(!0'(`(M4)#B-E#J$`0``B50D-,<"!0'( +M`,<$)*"&`0#H_/___XEL)`2)-"3H_/___X-$)"P!#[9$)#.#P`$X1BL/AZ+] +M__^)-"3H_/___XN'!`$``*,`````@\@"B40D2(F'!`$``(M4)"B+`J,````` +M)?#___T-#0```HE$)$B)`HL"HP````"+AB0*``")AP@!``"+AB@*``")APP! +M``"+AD@*``")AQ`!``"+ADP*``")AQ0!``#'AR`!````````#[>&F`L``"7_ +M#P``#0```0")AR`!``"+AI`*``")AR0!``"+AI0*``")AR@!``"+AK`*``#' +M`/\/``#'AS0!````````#[>&F@L``"7_#P``#0```0")AS0!``"+AK0*``") +MAS@!``"+AK@*``")ASP!``#'AT@!````````QT0D2``!``#'ATP!`````0`` +MBX<$`0``HP````"#R%F)AP0!``#'1"1(^_\`#,>'5`$``/O_``S'AUP!``#_ +M_P``N`````#'A(;4!0```````,=$AF``````@\`!@_@0=>5FQX:4"P``_P]F +MQX:6"P``_P_&1C@!L`&#Q$Q;7E]=PXUT)@!55U93@^P<B40D%(G7BRB)+"3H +M_/___XG#A<!U#,:'M0````'IP````(DL).C\____B<:%P'48QH>U`````8E< +M)`2)+"3H_/___^F:````C4,\B40D&,9#).'&0R4!QD,F`P^W1QQFB4,0QD-H +M#XM4)!2+`HE#&,=#(``"``"+5@B)4S2X`````(VT)@````#&!!``@\`!/0`" +M``!U\HES4,=#;,`N`P#'1"0$`````(M$)!B)!"3H_/___XM#((E$)`R+1@R+ +M5A")1"0$B50D"(M4)!B)%"3H_/___XE<)`2)+"3H_/___X/$'%M>7UW#ZPV0 +MD)"0D)"0D)"0D)"055=64X/L3(M$)&"+*`^V0`F$P`^$5P0```^VV,=$)#@` +M````]L,!=1FZ`````(GV@\(!#[;*B4PD.(G8T_BH`73NBT0D.,'@!HMT)#B- +M!+"-%"B+@K0+``"I```"`'00#0``!``E___]_XF"M`L``(M$)#C!X`:+?"0X +MC02XBX0%M`L``*D```0`#X0&`P``BX5(!0``B40D2#GH=0J-E<P,``")5"1( +MBT0D.,'@!HM,)#B-!(@!Z`^VD+\+``")5"0H#[:0O@L``(E4)"0/MI"]"P`` +MB50D(`^VD+P+``")5"0<#[:0NPL``(E4)!@/MI"Z"P``B50D%`^VD+D+``") +M5"00#[:`N`L``(E$)`P/MD4IB40D"(E,)`3'!"3P"```Z/S____'1"0\```` +M`(MT)#C!Y@*)="1$BWPD.,'G!HE\)$"+5"0\BTPD2`^VA`H\!0``//\/A*(` +M```/ML!IP!0-``")PP.9M`4``(MT)$2+?"1`C80^H`L``(U\!1BX"````/R) +MWHG!\Z8/E\(/DL`XPG5H#[9#!XE$)"`/MD,&B40D'`^V0P6)1"08#[9#!(E$ +M)!0/MD,#B40D$`^V0P*)1"0,#[9#`8E$)`@/M@.)1"0$QP0D0`D``.C\____ +MBWPD8,9'!?^)?"0$B2PDZ/S____I=`(``(UT)@"#1"0\`8-\)#P"#X4V____ +MB2PDZ/S___^)PX7`#X1.`@``BT0D.,'@!HM4)#B-!)#VA`6U"P``!'0$@$LU +M`HM$)#C!X`:+3"0XC02(]H0%M@L```1T!(!+-1"+1"0XP>`&BW0D.(T$L/:$ +M!;4+```(=`2`2S4$BT0D.,'@!HM\)#B-!+CVA`6V"P``"'0$@$LU((M$)#C! +MX`:+5"0XC020]H0%M0L```)T!(!+-0&+1"0XP>`&BTPD.(T$B/:$!;8+```" +M=`2`2S4(QD,P`(G?BT0D.,'@!HMT)#B-A+"@"P``C40%`(M0&(D3BT`<B4,$ +MBT0D8(E#"(D$).C\____B(.+````BU0D8(!"'`&`?2L`=#"Y`````+H````` +MB?:+="1@#[9&"=/XJ`%T#@^VPHA,`T"`0S(!@\(!@\$!.$TK=]R+1"1@BT@P +MC5,@B5`PBT0D8(/`+(E#((E+)(D1BU0D8(!"-`''1"00``````^V@XL```") +M1"0,B7PD"(E4)`2+A00*``")!"3H_/___^G:````J0``"``/A,\```")+"3H +M_/___XG#A<`/A+T```#&0"<&QD`F!6;'@)0``````,9`)`;&0"4`QT!$```% +M`,=`2`````"-B*````"+1"0XP>`&BW0D.(V$L*`+``"-1`4`BU`8B9.@```` +MBT`<B4$$BX.@````B8.8````BT$$B8.<````BWPD8(E[+(D\).C\____B(.V +M````9H-+.!")/"3H_/___SP)=@9F@4LX``*+1"1@QD`*`8M0/(E8/(M$)&"# +MP#B)`XE3!(D:B5PD!(DL).C\____B?:#Q$Q;7E]=PY"-M"8`````55=64X/L +M+(M\)$"+7"1$A=MT%0^V0P6$P'0-//\/A90'``#I'`$``+H`````C78`#[:$ +M.D(%```\_W0-#[;`:\!<C9P'3`$``(/"`8/Z!'7?O@`````/MH0^0@4``#S_ +M=#$/ML!KP%R-G`=,`0``]H0'4@$```)T$L=$)`0`````B1PDZ/S____K"(D< +M).C\____@\8!@_X$=;L/MD<F9CF'Y`D```^%"P<``(7;=7^`?SD`#X7]!@`` +MQD<Y`8GVBX2?O`(``(7`=%:+4'"%TG0NQT!P`````,>$G[P"````````QT0D +M"/____^)1"0$BT!XB00D_]+K)XVV`````(M0=(72=!K'0'0`````QX2?O`(` +M``````"+0'B)!"3_TH/#`8/[0`^$B@8``.N1QD,%_XE<)`2)/"3H_/___^ES +M!@``N@````"-M"8`````#[:$.D(%```\_P^$]P````^VR&O!7(V<!TP!``") +M7"0DC80'0`$``(!X$?\/A-4```"`>!8`#X0K!@``O@````!KV5R-K!^$`0`` +MB2PDZ/S___^)P8T$.XN0B`$``(F(B`$``(DIB5$$B0J`>2;_='^`N;4````` +M#X3I!0``#[99)`^VTXG0@^`&@_@&=2GVP@%T1XE,)`P/MD%-B40D"(M!,(E$ +M)`2+1"0DB00DZ/S____IKP4``(/X!`^%I@4``/;#`0^$G04``(E,)`2)/"3H +M_/___^F,!0``B4PD!(D\).C\____Z7L%``"-="8`@\8!B?(XE!]6`0``#X9E +M!0``Z43___^#P@&#^@0/A>W^___'1"0<`````(!_.0"0#X62````NP````"0 +MC70F`(N4G[P"```/MH0[O`0``(72=&2+2G"%R71=@WI@`'57//]T+0^V\&G& +M*`$```.'?`4``/9`)P1T&(!X)0!U$HET)`B)5"0$B3PDZ/S____K)L>$G[P" +M````````QT)P`````,=$)`C_____B50D!(M">(D$)/_1@\,!@_M`=8'&1SD! +MZ:\$``"+3"0<#[:$.4(%```\_P^$BP0```^VT&O"7(V<!TP!``")7"0H@+P' +M5@$````/A&P$``#&1"0C`(G%C80'A`$``(E$)!"-=@"+5"00B10DZ/S___^) +MPXU$/0"+D(@!``")F(@!``"+3"00B0N)4P2)&H![)O\/A0T$```/MT,<B40D +M%`^VE#B\!```9HE4)!J+M(>\`@``]D,H!'1KA?9T9X-^<`!T88-^8`!U6X!C +M*/OV0R<$C78`=!4/M\*)1"0(B70D!(D\).C\____ZSF+5G"+3"04QX2/O`(` +M``````#'1G``````QT,@`````,=$)`C_____B70D!(M&>(D$)/_2D(UT)@#V +M0R<$#X1F`0``QH.T`````("D+U0!``#G]D,H`0^$_0```(!C*/Z+0R"%P'15 +M@'LE`'4P]D,G!'0J#[9'*<'@!@-$)!2)1"0(BX=(!0``B40D!,<$)`<```#H +M_/___^G<````B40D"(N'2`4``(E$)`3'!"0!````Z/S____IO0```(7V=&2+ +M5G"%THUT)@!T68![)0!U(/9#)P1T&@^W1"0:B40D"(ET)`2)/"3H_/___^F( +M````BT0D%,>$A[P"````````QT9P`````,=#(`````#'1"0(_____XET)`2+ +M1GB)!"3_TNM5@'LE`'5/]D,G!'1)#[9'*<'@!@-$)!2)1"0(BX=(!0``B40D +M!,<$)`(```#H_/___^LBB?:+0R"%P'09BU!TA=)T$L=`=`````"+0R"+0'B) +M!"3_TO9#*`(/A#8"``"+0R")1"0(BX=(!0``B40D!,<$)`8```#H_/___X!C +M*/WIY`$``(M#((7`#X39`0``@WAT`)`/A,X!``#&0R<!QD,F`(E<)`C'1"0$ +M!@```(M4)"B)%"3H_/___X-[,`!T$HM3"(M##(E"!(D0BT,P@&@P`8![3P!T +M&HD\).C\____QP0D`0```.C\____@'M/`'7FBY/D````A=)T&\=$)`@!```` +M#[:#V0```(E$)`2)%"3H_/___XM3,(72=!C'1"0(`0````^V0TV)1"0$B10D +MZ/S___^+<R"%]@^$]@```/9#*`1U78D\).C\____QT0D"`$```"+0R")1"0$ +MB3PDZ/S___^+4R`/MD("B40D"`^V0@&)1"0$QP0DT`(``.C\____BT,@B40D +M"(N'2`4``(E$)`3'!"0!````Z/S____K.0^V1@*)1"0(#[9&`8E$)`3'!"30 +M`@``Z/S___^+0R")1"0(BX=(!0``B40D!,<$)`$```#H_/___XM6=(72=!X/ +MMT,<QX2'O`(```````#'1G0`````BT9XB00D_]+V0R@"="&+0R")1"0(BX=( +M!0``B40D!,<$)`8```#H_/___X!C*/W'0R``````QT9@`````(M3-(72=`P/ +MMD--QT2"/`````"+$XM#!(E"!(D0@*PO5@$```&)7"0$B3PDZ/S____V0R@" +M=":+0R")1"0(BX=(!0``B40D!,<$)`8```#H_/___X!C*/V0C70F`(!$)",! +M#[9,)",XC"]6`0``#X>I^___@T0D'`&#?"0<!`^%4?O__[@!````@\0L6UY? +M7<.-M@````"-OP````!75E.#[!"+="0@BSZ)-"3H_/___X3`=!@/ME\KA-MT +M,0^V5@FY`````/;"`70<ZR'&1@7_B70D!(D\).C\____ZUR)T-/XJ`%U!X/! +M`3C9=?&)/"3H_/___XG!A<!T/XM6/(E&/(U&.(D!B5$$B0J`1@H!B7$LQD$D +M!<9!)0#&04T/QT0D#`$```#'1"0(`0```(E,)`2)-"3H_/___X/$$%M>7\.- +M="8`C;PG`````(/L+(E<)!R)="0@B7PD)(EL)"B+="0TBUY4#[9&)CPD#X=J +M!P``#[;`_R2%X!,```^W1C(/M]#VP@1T#&;'1C(!`,9&)@'K0V:#^"!U#&;' +M1C((`,9&)A'K,832>17V1BT#=`\D?X/("&:)1C+&1B8-ZQCVP@AT!L9&)@?K +M#?;&`G0(QD8K`,9&)AZ)="0$BT0D,(D$).C\____Z?`&``#'1"0,`0```,=$ +M)`@"````QT0D!`$```")-"3H_/___^G+!@``QT0D#`$```#'1"0(`````,=$ +M)`0!````B30DZ/S____II@8``,=$)`P!````QT0D"`$```#'1"0$`0```(DT +M).C\____Z8$&``#'1"0,`0```,=$)`A@````QT0D!`$```")-"3H_/___^E< +M!@``#[9&+,=$)!`!````B40D#,=$)`A@````QT0D!`$```")-"3H_/___^DO +M!@``QT0D$`$```#'1"0,```!!,=$)`@A````QT0D!`$```")-"3H_/___^D" +M!@``BT,8@6`H___W_\=$)!`!````QT0D#`$```#'1"0(`@```,=$)`0````` +MB30DZ/S____IRP4``,=$)!`!````QT0D#`````#'1"0(`@```,=$)`0````` +MB30DZ/S____'!"00)P``Z/S____ID@4``(M#&(%@*/__]__'1"00`0```,=$ +M)`P!````QT0D"`(```#'1"0$`````(DT).C\____Z5L%``#'1"00`0```,=$ +M)`P`````QT0D"`(```#'1"0$`````(DT).C\____QP0D$"<``.C\____Z2(% +M``#'1"0,`0```,=$)`@"````QT0D!`````")-"3H_/___^G]!```QT0D#`$` +M``#'1"0(`````,=$)`0`````B30DZ/S____IV`0``,=$)`P!````QT0D"`$` +M``#'1"0$`````(DT).C\____Z;,$``#'1"00`0```,=$)`S_____QT0D"`$` +M``#'1"0$`````(DT).C\____Z88$``#'1"0,`0```,=$)`@`````QT0D!``` +M``")-"3H_/___^EA!```#[9&*XM\ACR)7RR)=S0/MD8KB$=-QD<F`\9')0"` +M3R0%@$,*`8M3/(U#.(E[/(D'B5<$B3K'!"2`&@8`Z/S___^+5"0P@'HK`'0I +MO@````#V0PD!=`[K'`^V0PF)\=/XJ`%U%8/&`8GPBU0D,#A"*W?FZP6^```` +M`(M3&(M"**D```@`=`HE___W_XE"*.MDB?$/ML&-+,4`````N[@+``")\#P# +M=AR+5"0PBP(%@`$```'HBP"C`````,'H$X/@`>L<BTPD,(L!!8`!``"-1`4` +MBP"C`````,'H$X/@`83`=1''!"3H`P``Z/S___^#ZP%UK6;'AY0``````(E\ +M)`2+1"0PB00DZ/S____I3P,``,<$)$`-`P#H_/___\=$)`P`````QT0D""`` +M``#'1"0$`0```(DT).C\____QP0D$"<``.C\____Z1(#``#'1"0,`````,=$ +M)`@!````QT0D!`````")-"3H_/___\<$)!`G``#H_/___^GA`@``BT,8@6`H +M___W_\=$)!``````QT0D#/_____'1"0(`0```,=$)`0`````B30DZ/S____' +M!"00)P``Z/S____IG@(``,=$)`P`````QT0D"`````#'1"0$`````(DT).C\ +M____QP0D$"<``.C\____Z6T"``")="0$BU0D,(D4).C\____Z5@"``")="0$ +MBTPD,(D,).C\____Z4,"``#'1"00`0```,=$)`SP````QT0D")L```#'1"0$ +M`0```(DT).C\____Z18"``#'1"00`0```,=$)`R@UEHKQT0D".`#``#'1"0$ +M`0```(DT).C\____Z>D!``#'1"00`0```,=$)`P`X`,`QT0D"*0#``#'1"0$ +M`0```(DT).C\____Z;P!``#'1"00`0```,=$)`SDJ`8!QT0D",0#``#'1"0$ +M`0```(DT).C\____Z8\!``#'1"0,`0```,=$)`A(`P``QT0D!`$```")-"3H +M_/___^EJ`0``QP0D0`T#`.C\____QT0D#`$```#'1"0((````,=$)`0!```` +MB30DZ/S____'!"00)P``Z/S____I+0$``,=$)!`!````QT0D#`````#'1"0( +M(0```,=$)`0!````B30DZ/S____I``$``,=$)`P!````QT0D"&````#'1"0$ +M`0```(DT).C\____Z=L````/MD8LQT0D$`$```")1"0,QT0D"&````#'1"0$ +M`0```(DT).C\____Z:X```#&0P4`BT94B00DZ/S____IF@```,=$)`P!```` +MQT0D"`$```#'1"0$`````(DT).C\____QP0D$"<``.C\____ZVR+0QB!8"C_ +M__?_QT0D$`$```#'1"0,_____\=$)`@!````QT0D!`````")-"3H_/___\<$ +M)!`G``#H_/___^LLQT0D#`$```#'1"0(`0```,=$)`0`````B30DZ/S____' +M!"00)P``Z/S___^X`0```(M<)!R+="0@BWPD)(ML)"B#Q"S#C;0F`````(/L +M'(E<)!")="04B7PD&(M<)""+?"0D#[=7$&:!^H4`=WX/M\(/MH08O`0``#S_ +M=&]F@_I_=QD/ML!IP"@!```#@WP%``"+0"P/MD@$ZU:0#[='$&8]@0!W(`^W +MP`^VA!B\!```:<`4#0```X.T!0``BT`(#[9(!.LK#[='$`^VA!B\!```:<"P +M`````X.8!0``BT!4#[9(!.L*D(UT)@"Y_____[C_____9H%_$(4`=PP/MT<0 +M#[:$&+P$``"+LY@%```/MM&`^?]T%("\&D(%``#_=`H\_W0&@'\4!G4F@W]0 +M`'0/C4=0B40D!(D<).C\____B7PD!(D<).C\____Z>H````/ML!IP+`````! +MQ@^V1B8\&G1V/!IW"CP1#X6;````ZQL\&XVT)@````!T8SP<#X6&````C;8` +M````ZWJ+DT0*``"!PDP(```/MD8TP>`(`<*+"HD-``````^VR8N31`H``('" +M1`@```^V1C3!X`@!PHL"HP````#!X`@)P8F.E````,9&)AKK,<9&)AOK*XN# +M1`H```5,"```#[96-,'B"`'0BP"C`````(/@]XA&+,9&)ASK!,9&)AV#?U`` +M=`^-1U")1"0$B1PDZ/S___^)?"0$B1PDZ/S___^)="0$B1PDZ/S___^-=@"+ +M7"00BW0D%(M\)!B#Q!S#@^P,BT0D$(E$)`2+`(D$).C\____@\0,PXVT)@`` +M``"#["R)7"0<B70D((E\)"2);"0HBUPD-(MS+`^W4QRX`````(M,)#"`O`J\ +M!```_P^$.PD```^V0R8\"0^$+P4``#P)=TL\!0^$F````#P%D'<>/`,/A+8` +M```\!(UT)@`/A>X(``#IY````)"-="8`/`</A(T$```\!XVV``````^'$`0` +M`.F9`@``D(UT)@`\%@^$?`,``#P6C;8`````=R,\%`^$F`4``#P4C70F``^' +MY@(``#P*#X66"```B?;I$`4``#P:#X0W`@``//^0#X1P!0``/!</A78(``") +M]NE"`P``BT0D,`^V:"N)ZH32#X2A````#[96";\`````]L(!#X2"````Z8H` +M``")]HM&&(%@*/___O^+0RS'1"0,`````,=$)`@!````B5PD!(D$).C\____ +MQP0D!0```.C\____N`$```#I(0@``,=$)`P`````QT0D"`````")7"0$B30D +MZ/S____'!"10PP``Z/S___^X`0```.GO!P``B=")^=/XJ`%U$H/'`8GXB>DX +MR'7KZP6_``````^V4R2)T(/@!H/X!G4)]L(!#X75````BU88BT(HJ0```0!T +M#27___[_B4(HZ;L```")^@^VPL'@`XE$)!B]$"<``)"+3"0PBQ&)^#P#=AF+ +M3"08C801@`$``(L`HP`````E```!`.L7BTPD&(V$$8`!``"+`*,`````)0`` +M`0"%P'0RB?@\`W86BTPD&(V$$8`!``#'`````0#I'P<``(M,)!B-A!&``0`` +MQP````$`Z0D'``#'!"3H`P``Z/S___^#[0$/A7G____&0R<"QD,F_XE<)`2+ +M1"0PB00DZ/S___^X`0```.GG!@``]D8&`70VB5PD!(DT).C\____A,!U)KWZ +M````B5PD!(DT).C\____A,!U$<<$).@#``#H_/___X/M`77?B?J`^@-V'(M, +M)#"+`06``0``#[;2C130BP*C`````(D"ZQR+5"0PBP(%@`$``(GY#[;1C130 +MBP*C`````(D"BT,LB=KH(N7__\<$)"!.``#H_/___[@!````Z4P&``")5"0$ +MQP0D>`D``.C\____BW,LBSZ)/"3H_/___XG!A<!U$<:#M0````&X`0```.D8 +M!@``QD`DX<9`)0'&0"87#[=#'&:)01"+!HE!&,=!(`````#'030`````QT%L +MP"X#`(E,)`2)/"3H_/___[@!````Z=0%``")5"0$QP0DY@(``.C\____BW,L +MBSZ)/"3H_/___XG!A<!U$<:#M0````&X`0```.F@!0``QD`DX<9`)0'&0"88 +M#[=#'&:)01"+!HE!&,=!(`````#'030`````QT%LP"X#`(E,)`2)/"3H_/__ +M_[@!````Z5P%``")VHGPZ!/D__^X`0```.E)!0``BSZ)/"3H_/___XG"#[9+ +M/(7`=1'&@[4````!N`$```#I)`4``,9`).'&0"4!QD`F!8A()P^W0QQFB4(0 +MBP:)0AC'0B``````QT(T`````,=";,`N`P"(2S^)5"0$B3PDZ/S___^X`0`` +M`.G:!```BSZ)/"3H_/___XG"#[9+/H7`=1'&@[4````!N`$```#IM00``,9` +M).'&0"4!QD`F!(A()P^W0QQFB4(0BP:)0AC'0B``````QT(T`````,=";,`N +M`P"(2T&)5"0$B3PDZ/S___^X`0```.EK!```BSZ)/"3H_/___XG!A<!U$<:# +MM0````&X`0```.E*!```QD`DX<9`)0'&0"8&#[=#'&:)01"+!HE!&,=!(``` +M``#'030`````QT%LP"X#`(E,)`2)/"3H_/___[@!````Z08$``"-M@````"+ +M/HD\).C\____B<&%P'41QH.U`````;@!````Z=\#``#&0"3AQD`E`<9`)@P/ +MMT,<9HE!$(L&B4$8QT$@`````,=!-`````#'06S`+@,`B4PD!(D\).C\____ +MN`$```#IFP,``(L^B3PDZ/S___^)P87`=1'&@[4````!N`$```#I>@,``,9` +M).'&0"4!QD`F%L9`*`$/MT,<9HE!$,9!:`^+!HE!&,=!(`````#'030````` +MQT%LP"X#`(E,)`2)/"3H_/___[@!````Z2X#``#&0R;_9L>#E```````#[93 +M)(G0@^`&@_@&=07VP@%U'H-[-`!U&(DT))"-="8`Z/S___^(@[8```"0C70F +M`(![)P)U&HM#+(E<)`B)1"0$BT0D,(D$).C\____C78`]D8(`G4:NP````"- +M?CB`?@H`#X5@`0``Z7P"``"-=@"+5B@/MEHJ#[;+#[9"'X/H`3G!?3:-0P&( +M0BJ`0BL!QD(F``^W0C*#X/Z#R`AFB4(RB50D!(M4)#")%"3H_/___[@!```` +MZ64"```YP706NP````"-?CB`?@H`=32-=@#I+P(``,9")@`/MT(R@^#V@,P" +M9HE",HE4)`2+3"0PB0PDZ/S___^X`0```.D?`@``B3PDZ/S___^)P8M&/(E. +M/(DYB4$$B0B`>2;_#X2.````@+FU``````^$U0$```^V620/MM.)T(/@!H/X +M!G4J]L(!=%$/MD%-BU$PB4PD#(E$)`B)5"0$B30DZ/S___^X`0```.FV`0`` +M@_@$#X61`0``]L,!#X2(`0``B4PD!(M$)#")!"3H_/___[@!````Z8H!``") +M3"0$BU0D,(D4).C\____N`$```#I<`$``,:!M0````"#PP$X7@H/AD$!``#I +M.?___XD\).C\____B<&+1CR)3CR).8E!!(D(@'DF_P^$GP```(!Y)0`/A8X` +M``"`N;4`````#X0$`0``#[99)`^VTXG0@^`&@_@&=2KVP@%T40^V04V+43") +M3"0,B40D"(E4)`2)-"3H_/___[@!````Z>4```"#^`0/A<````#VPP$/A+<` +M``")3"0$BTPD,(D,).C\____N`$```#IN0```(E,)`2+1"0PB00DZ/S___^X +M`0```.F?````QH&U`````(/#`0^V1@HXV`^',?___SC#=4Z$P'1*NP````"- +M?CB)/"3H_/___XG"BT8\B58\B3J)0@2)$`^V0B4\(G0$/`UU%\=$)`0*```` +MB10DZ/S___^X`0```.L_@\,!.%X*=[[&1@7_B70D!(M4)#")%"3H_/___[@! +M````ZQRX`0```.L5A>V-=@`/A`'Y___I'OG__Y"-="8`BUPD'(MT)""+?"0D +MBVPD*(/$+,.-M@````"-OP````"#["R)7"0<B70D((E\)"2);"0HBWPD,(ML +M)#0/MU409H'ZA0`/A[X````/M\(/MHP'O`0``(#Y_P^$J@```&:#^G]W'`^V +MP8N7?`4``&G`*`$``(M$$"P/MD`$ZSJ-=@!F@?J!`'<9#[;!BY>T!0``:<`4 +M#0``BT00"`^V0`3K%P^VP8N7F`4``&G`L````(M$$%0/MD`$//]T30^VP`^V +MG`="!0``@/O_=!6`^?]T$`^V512`^@9U5XVT)@````"`^_]T(X#Y_W0>#[;! +M:<`H`0``B<8#MWP%``#&1B<"QD8F_^E8`@``@WU0`'0/C450B40D!(D\).C\ +M____B6PD!(D\).C\____Z5\"``")]@^VP6G`*`$``(G&`[=\!0``BTTTA-(/ +MA+0````/MD4F/`8/A,T````\#`^$Q0````^WEI0```"-0@%FB8:4````9H/Z +M"787@'XF!G01QD8G`L9&)O^`9BC^Z=(!``#'!"3H`P``Z/S___\/ME8DB="# +MX`:#^`9U/O;"`70YQT0D$`````#'1"0,`@````^V1DV)1"0(BT8PB40D!`^V +MPVO`7(V$!TP!``")!"3H_/___^FG`0``QD8F`XET)`2)/"3H_/___^F2`0`` +MD(UT)@`/MD4F/`%U#<9&)@2-="8`Z4L!```\`G4,QD8F!8UV`.D[`0``/`,/ +MA;T```")R(!^)@5U*V:!>03(-W4C#[=&'(E$)`3'!"2L"0``Z/S____&1B8& +MZ08!``"-M@````")1"0$B30DZ/S___^-1F2Z*````.CGO___A,!U.(U&4+H4 +M````Z-:___^$P'4GC8:,````N@@```#HPK___X3`=1.+1D0+1DAT"\9&)A>) +M]NFK````9H.^E````!UV$<9&)P+&1B;_@&8H_NF0````QP0DZ`,``.C\____ +MQD8F&F:#AI0````!ZW8\%W4&QD8F%>ML/!AU"L9&)A:-="8`ZUX\!'4&QD8F +M!^M4/`6)]G4&QD8F".M(/`9U!L9&)@GK/CP,=0;&1B8*ZS0\%HGV=0;&1B84 +MZR@\#G4D@WU0`'0/C450B40D!(D\).C\____B6PD!(D\).C\____ZRZ0@WU0 +M`'0/C450B40D!(D\).C\____B6PD!(D\).C\____B70D!(D\).C\____BUPD +M'(MT)""+?"0DBVPD*(/$+,/K#9"0D)"0D)"0D)"0D)"#["R)7"0<B70D((E\ +M)"2);"0HBVPD-(MU+`^W11RZ`````(M,)#"`O`&\!```_P^$ZP(```^V128\ +M%`^$U````#P4=SL\#0^$!`$``#P-D'<0/`4/A;L"``"-M@````#K4SP.#X3[ +M````/`^-="8`#X6?`@``Z?P```"0C70F`#P;#X2?````/!N-M@````!W$#P8 +M=#D\&0^%=P(``(GVZT<\''1=//\/A6<"``")]NG&````QT0D!`````")+"3H +M_/___[H!````Z5$"``#'1"0$`0```(DL).C\____N@$```#I-P(``,=$)`0! +M````B2PDZ/S___^Z`0```.D=`@``B2PDZ/S___^Z`0```.D+`@``B2PDZ/S_ +M__^Z`0```.GY`0``]D4Y!'02B2PDZ/S___^Z`0```.GA`0``B2PDZ/S___^Z +M`0```.G/`0``B2PDZ/S___^Z`0```(GVZ;L!``")+"3H_/___[H!````Z:D! +M``#&12;_@'X*``^$Z0```+L`````C7XXC78`B3PDZ/S___^)PHM&/(E6/(DZ +MB4($B1"`>B;_#X2?````@'HE``^%G````("ZM0`````/A$T!```/MEHD#[;+ +MB<B#X`:#^`9U*O;!`712B50D#`^V0DV)1"0(BT(PB40D!(DT).C\____N@$` +M``#I'0$``(/X!`^%"0$``/;#`9`/A/\```")5"0$BT0D,(D$).C\____N@$` +M``#I\````(E4)`2+3"0PB0PDZ/S___^Z`0```.G6````C;8`````QH*U```` +M`(/#`0^V1@HXV`^'*O___SC##X6,````#[9%)3PB=!0\#700OP````"-;CB` +M?@H`=1SK<,=$)`0*````B2PDZ/S___^Z`0```.E\````B2PDZ/S___^)PXM& +M/(E>/(DKB4,$B1@/MD,E/")T!#P-=2F)7"0$QP0D_`(``.C\____QT0D!`H` +M``")'"3H_/___[H!````ZS*)]H/'`8GX.$8*=ZK&1@7_B70D!(M,)#")#"3H +M_/___[H!````ZPNZ`0```(VV`````(G0BUPD'(MT)""+?"0DBVPD*(/$+,.- +M=@"-O"<`````55=64X/L+(M<)$0/MU,0N?____^X_____V:!^H4`=WL/M\*+ +M="1`#[:,!KP$``"X_____X#Y_W1B9H/Z?W<=#[;!BWPD0(N7?`4``&G`*`$` +M`(M$$"P/MD`$ZS]F@?J!`'<=#[;!BW0D0(N6M`4``&G`%`T``(M$$`@/MD`$ +MZQL/ML&+?"1`BY>8!0``:<"P````BT005`^V0`0/ML"+5"1`#[:T`D(%``!K +MQER-A`),`0``B40D)`^VP6G`*`$```."?`4``(E$)"B+2S0/MA'!XA@/MD$! +MP>`0"<(/MD$#"<(/MD$"P>`("<*-60B)T,'H`X/X$'8%N!````"-!,&)1"0< +M.<,/AY`!``#'1"0@`````&OV7(ET)!@#="1`B70D%(D<).C\____B<6-<P2_ +M=!0``+D$````_/.F#Y?"#Y+`.,(/A40!``"#_1`/ASL!``"#1"0@`8-\)"`! +M=2J+3"0HQX$<`0```0```(FI(`$``(L#B8&H````BT,$B8&L````Z04!``"+ +M="1`B30DZ/S___^)QH7`#X3\````QD`G!L9`)@5FQX"4``````#&0"0&QD`E +M`,=`1```!0#'0$@`````QX`<`0```0```(FH(`$``(M4)"B!PJ````"+?"0H +MBX>@````B8:@````BT($B8:D````BX>@````B8:8````BT($B8:<````BP.) +MAJ@```"+0P2)AJP```"+1"0DB48LB00DZ/S___^(AK8```!F@TXX$(M4)"2) +M%"3H_/___SP)=@9F@4XX``*+3"04@(%6`0```8N1B`$``(FQB`$``(M\)$"+ +M3"08C80/A`$``(D&B58$B3*)="0$B3PDZ/S___^-M@````"#PP@[7"0<#X:' +M_O__@\0L6UY?7<.-="8`C;PG`````%575E.!["P"```/MH0D2`(``(N4)$`" +M``"+4@B)5"0<BPJ)3"0@BY0D0`(```^V4C"(5"0GBXPD0`(``(/!*(E,)"B+ +ME"1``@``.4HH#X2K`@``@'PD)P`/A*`"```/ML")1"04BTPD*(D,).C\____ +MC7CXC40D+(E$)!"+5"04B50D#,=$)`@!````BTPD'(E,)`2+A"1$`@``B00D +MZ/S___^`?"0L``^$_@```+T`````C9>@````B50D&(UV`(GI#[;QQT0D"`@` +M``"+1"08B40D!(GSP>,$C80<F````(D$).C\____A,`/A)\```"-E!R,```` +M#[9""(/@#XB'M@````^W3SAF@>'?_8G(@\@09HE'.`^V0@C`Z`0\"74)B<B# +MR#!FB4<XB?#!X`0/MH0$E````,#H!#P*=09F@4\X``*+3"0HBU$$C4<(B4$$ +MB4\(B5<,B0+V1R@"=$"`9RC]BT<@A<!T-8E$)`B+5"0@BX)(!0``B40D!,<$ +M)`8```#H_/___^L5D(UT)@"#Q0&)Z3A,)"QV$>D@____B>@X1"0L#X<W`0`` +MB7PD",=$)`0&````BU0D'(D4).C\____@']/`'0DC;8`````BTPD((D,).C\ +M____QP0D`0```.C\____@']/`'7BBY?D````A=)T&\=$)`@!````#[:'V0`` +M`(E$)`2)%"3H_/___XM7,(72=!C'1"0(`0````^V1TV)1"0$B10DZ/S___^+ +M1R"%P'1]QT!@`````/9'*`1U)XM$)"")!"3H_/___\=$)`@!````BT<@B40D +M!(M4)"")%"3H_/___XM'((E$)`B+3"0@BX%(!0``B40D!,<$)`8```#H_/__ +M_XM'((E$)`B+5"0@BX)(!0``B40D!,<$)`$```#H_/___\='(`````"+%XM' +M!(E"!(D0BTPD'(!I"@&+A"1``@``@&@P`8E\)`2+5"0@B10DZ/S___^+1"0H +MBXPD0`(``#E!*'0+@&PD)P$/A6?]__^!Q"P"``!;7E]=PXVT)@````!55U93 +M@>PL`@``B[PD1`(``(N$)$`"``"+`(E$)"0/MK0D3`(``(U<)"R)7"00B70D +M#,=$)`@!````BY0D0`(``(E4)`2)/"3H_/___XET)`B)?"0$B[0D2`(``(DT +M).C\____BVXH@^T(B?.#PRB-10@YV'0K#[9%)3P-=!0\(G4PZPX/MD4E/`UT +M!CPBB?9U(,9%)@7&12<$QD0D*@'K!<9$)"H`@'PD+`!U%>D@`@``BVT(@^T( +MC44(.=AUQ9#KW\9$)"L`BX0D0`(``(/`.(E$)""+E"1(`@``BW(H@^X(C48( +M.<,/A`,"```/MD0D*\'@!(V\!)@```"-="8`QT0D"`@```")?"0$C8:@```` +MB00DZ/S___^$P`^%G`$``(MV"(/N"(U&"#G8#X2]`0``Z\N+M"1``@``@$8* +M`<9!)@7&@;0`````QD$G!&;'@90``````,:!E@````#'040```4`QT%(```` +M``^V="0KB?#!X`2-E`2,````#[9"!(A!)`^V0@6(026+A"1``@``B4$L#[9" +M"(/@#XB!M@````^W>3AF@>??_8GX@\@09HE!.`^V0@C`Z`0\"74)B?B#R#!F +MB4$XB?#!X`0/MH0$E````,#H!#P*=09F@4DX``*+E"1(`@``B5$PB?+!X@0/ +MMH04D@```(A!38V4%(P```"+0@R)@:````"+4A")D:0```")@9@```")D9P` +M``"+M"1(`@``@$8P`8N4)$`"``"+0CR)2CR+="0@B3&)002)"(N$)$@"``"+ +M4"R-00B+M"1(`@``B48LB5D(B5$,B0(/ME$DB="#X`;&1"0J`(/X!G5']L(! +M="V)3"0,#[9!38E$)`B+A"1(`@``B40D!(N4)$`"``")%"3H_/___\9$)"H` +MZQ6)3"0$BW0D)(DT).C\____QD0D*@"`1"0K`0^V1"0K.$0D+`^'`_[__X!\ +M)"H`="W'1"0$"@```(DL).C\____ZQN0C70F`(M4)"2)%"3H_/___XG!A<`/ +MA2_^__^!Q"P"``!;7E]=P^L-D)"0D)"0D)"0D)"0D%575E.!["P"``"+A"1` +M`@``BS`/ME`<B%0D)H/`+(E$)"B+C"1``@``.4$L#X30`P``A-(/A,@#``"+ +M1"0HB00DZ/S___^-:.#'1"00`````,=$)`P`````QT0D"`````"+E"1``@`` +MB50D!(N,)$0"``")#"3H_/___XA$)">$P`^$:P,``+\`````NP````")7"0@ +MQT0D$`````")7"0,QT0D"`$```"+A"1``@``B40D!(N4)$0"``")%"3H_/__ +M_P^VP,'@!(/`9#T``@``#X?I`0``C4PD+(E,)!")7"0,QT0D"`$```"+A"1` +M`@``B40D!(N4)$0"``")%"3H_/___\=$)`@(````B6PD!(V,)(@```")#"3H +M_/___X3`#X28`0``BT0D*(M0!(U%((M,)"B)002)32")522)`@^V1"0NB$4Q +MC80D@````(E$)`2+A"1``@``B00DZ/S___\\_W02#[;`:<`4#0```X:T!0`` +MB44,B?J$TG15#[9$)"_1Z(/@`<'@!`^V536#XN\)PHA5-0^V1"0OP>@#@^`! +MP>`%@^+?"<*(534/MD0D+\'H`H/@`<'@`X/B]PG"B%4U#[9$)#*(A8L```#I +MOP````^V1"0NB$4QBXPD0`(``(E-"`^V1"0RB(6+````#[=$)#")13@/MT0D +M?&:)A8@````/MD0D?HB%B@```(U->(U4)"R#PD"+1"1LB45XBT($B4$$BT(( +MB4$(BT(,B4$,C4U(C50D+(/"$(M$)#R)14B+0@2)002+0@B)00B+0@R)00R- +M35B-5"0L@\(@BT0D3(E%6(M"!(E!!(M""(E!"(M"#(E!#(M"$(E!$(M"%(E! +M%(M$)&2)17"+1"1HB45TBT0D((E$)`R);"0(BY0D1`(``(E4)`2+C"1``@`` +MB0PDZ/S____I&`$``(GV@\<!@\,!B?@Z1"0G#X0@`0``Z;K]__^)/"3H_/__ +M_XU8^(E<)`C'1"0$!@```(N4)$`"``")%"3H_/___X![3P!T&HDT).C\____ +MQP0D`0```.C\____@'M/`'7FBT,@A<!T;<=`8`````#V0R@$=1^)-"3H_/__ +M_\=$)`@!````BT,@B40D!(DT).C\____BT,@B40D"(N&2`4``(E$)`3'!"0! +M````Z/S___^+0R")1"0(BX9(!0``B40D!,<$)`8```#H_/___\=#(`````"+ +M$XM#!(E"!(D0BXPD0`(``(!I"@&`;3`!B5PD!(DT).C\____.7TH#X48____ +MBX0D0`(``(!H'`&);"0$B30DZ/S___^+3"0HBY0D0`(``#E*+'0<@&PD)@%T +M%>E(_/__C7TH.7TH#X79_O__B?;KO8'$+`(``%M>7UW#C78`55=64X'L+`(` +M`(NL)$0"``"+10")1"0<BY0D0`(``(E4)`2)+"3H_/___\=$)!``````QT0D +M#`````#'1"0(`````(EL)`2+G"1``@``B1PDZ/S___^(1"0CA,`/A+X#``#& +M1"0B`,=$)"0`````D,=$)!``````BT0D)(E$)`S'1"0(`0```(EL)`2+E"1` +M`@``B10DZ/S___\/ML#!X`2#P&0]``(```^'6`,``(U<)"R)7"00BT0D)(E$ +M)`S'1"0(`0```(EL)`2+E"1``@``B10DZ/S___^-G"2(````B5PD!(DL).C\ +M____//\/A1(#``"+1"0<B00DZ/S___^)QX7`#X0O`P``@$4<`<9`,`"+A"2( +M````B0>+A"2,````B4<$C80D@````(E$)`2)+"3H_/___SS_=!8/ML!IP!0- +M``"+5"0<`X*T!0``B4<,#[9$)"Z(1S$/MD0D+]'H@^`!P>`$#[97-8/B[PG" +MB%<U#[9$)"_!Z`.#X`'!X`6#XM\)PHA7-0^V1"0OP>@"@^`!P>`#@^+W"<*( +M5S6);P@/MD0D,HB'BP```(M$)#2)1T"+1"0XB4=$#[9$)#.(1S(/MT0D,(E' +M.`^W1"1\9HF'B`````^V1"1^B(>*````C4]XC50D+(/"0(M$)&R)1WB+0@2) +M002+0@B)00B+0@R)00R-3TB-5"0L@\(0BT0D/(E'2(M"!(E!!(M""(E!"(M" +M#(E!#(U/6(U4)"R#PB"+1"1,B4=8BT($B4$$BT((B4$(BT(,B4$,BT(0B4$0 +MBT(4B4$4BT0D9(E'<(M$)&B)1W2+33"-5R")53"-12R)1R")3R2)$8!\)"P` +M#X2"`0``9L=$)"H``(U=.(E<)!B-1RB)1"04C;8`````BU0D'(D4).C\____ +MB<&%P`^$A`$``(!%"@'&0"8%QH"T`````,9`)P3'0$0```4`QT!(`````&;' +M@)0```````^W="0JB?#!X`2-E`2,````#[9"!(A!)`^V0@6(026):2R)>3`/ +MMD(&B$%-#[9""(/@#XB!M@````^W63AF@>/?_8G8@\@09HE!.`^V0@C`Z`0\ +M"74*B=B#R#!FB4$XD(GPP>`$#[:$!)0```#`Z`0\"G4,9H%).``"C;8````` +MB?#!X`2-E`2,````BT(,B8&@````BU(0B9&D````B8&8````B9&<````@$<P +M`8M%/(E-/(M<)!B)&8E!!(D(BU<LC4$(B4<LBUPD%(E9"(E1#(D"#[91)(G0 +M@^`&@_@&=2_VP@%T&HE,)`P/MD%-B40D"(E\)`2)+"3H_/___^L0B4PD!(M$ +M)!R)!"3H_/___V:#1"0J`0^V1"0L9CM$)"H/AYG^__^`1"0B`8-$)"0!#[94 +M)",X5"0B#X50_/__@'T*`'44QD4%_XEL)`2+7"0<B1PDZ/S___^!Q"P"``!; +M7E]=PXUT)@"-O"<`````55=64X/L+(ML)$"+?"1$QT0D$`````#'1"0,```` +M`,=$)`@`````B7PD!(DL).C\____A,!T.+L`````@^@!#[;PC40D*XE$)`R) +M7"0(B7PD!(DL).C\____@'PD*_X/A:4```"#PP&-1@$YPW73#[9'-(/H`8A' +M-(3`='6+-\9'-`"+7RR#ZR"-5RR-0R`YT'1W@WL,`'5(ZPN0C70F`(-[#`!U +M.\9'-`&)?"0$B2PDZ/S____'1"00``````^V@XL```")1"0,B5PD"(E\)`2+ +MA@0*``")!"3H_/___^LIBUL@@^L@C4,@.=!ULHGVZQB)?"0$B2PDZ/S___^) +M?"0$B2PDZ/S___^#Q"Q;7E]=PXVT)@````"-O"<`````55=64X/L#(MT)""+ +M?"0DBRZ["@```(E\)`2)-"3H_/___X3`=1''!"3H`P``Z/S___^#ZP%UWP^V +M72N$VW0@#[96";D`````]L(!=`OK$)")T-/XJ`%U!X/!`3C9=?&+%XM'!(E" +M!(D0@&X*`8E\)`2)+"3H_/____9&"`)T08M&*(7`=1.)+"3H_/___X7`#X1: +M`0``B48HB2B)<%3&0"H`QD`K`,9`)@!F@T@R!(E$)`2)+"3H_/___^DP`0`` +MBT8HA<`/A,L```"#P%B)1"0$BT44B00DZ/S___^+1BB)1"0$B2PDZ/S___^- +M?C@Y?C@/A)<```")/"3H_/___XG#BT`@A<!T;<=`8`````#V0R@$=1^)+"3H +M_/___\=$)`@!````BT,@B40D!(DL).C\____BT,@B40D"(N%2`4``(E$)`3' +M!"0!````Z/S___^+0R")1"0(BX5(!0``B40D!,<$)`8```#H_/___\=#(``` +M``"`;@H!B5PD!(DL).C\____.7XX#X5I____QT8H`````(!^"@!T$XU&.(D$ +M).C\____B<&`;@H!ZPJ)+"3H_/___XG!A<ET,XM6/(E./(U&.(D!B5$$B0J` +M1@H!B7$LQD$D!<9!)0#&02<&QD$F`XE,)`2)+"3H_/___X/$#%M>7UW#D(VT +M)@````"#["R)7"0<B70D((E\)"2);"0HBWPD,(M<)#0/MU,09H'ZA0!W>@^W +MP@^VC`>\!```@/G_=&IF@_I_=QD/ML&+EWP%``!IP"@!``"+1!`L#[9`!.L[ +M9H'Z@0!W&0^VP8N7M`4``&G`%`T``(M$$`@/MD`$ZQL/ML&+EY@%``!IP+`` +M``"+1!!4#[9`!(UT)@`/MM$\_W0)9H'Z_P!U*(GV@WM0`'0/C4-0B40D!(D\ +M).C\____B5PD!(D\).C\____Z3H!```/ML`/MHP'0@4```^WPFG`*`$``(G& +M`[=\!0``@'L4``^$I@```&O!7(VL!T`!```/MD46B40D$`^V116)1"0,#[9# +M)XE$)`@/MD,FB40D!,<$),P)``#H_/___XL6BT8$B4($B1"`;18!B70D!(D\ +M).C\____B5PD!(D\).C\____#[9W*XGPA,`/A*H````/MET5N0````#VPP%U +M#>L<#[;*B=C3^*@!=!:)3"0$B3PDZ/S____I?@```+H`````@\(!B?`XPG76 +MZVYKP5R-K`=,`0``@'LF`74VQP0D$"<``.C\____B5PD!(D\).C\____QT0D +M#`$```#'1"0(`````(ET)`2)+"3H_/___^LHQP0D4,,``.C\____B5PD!(D\ +M).C\____B70D!(DL).C\____C70F`(M<)!R+="0@BWPD)(ML)"B#Q"S#C;8` +M````C;\`````55=64X/L'(MT)#"+;"0T#[9$)#B(1"07#[9$)#R(1"06BP:) +M1"08@'X*`'1TNP````"-?CB)/"3H_/___XG"BT8\B58\B3J)0@2)$#EJ,'4/ +M#[9$)!<X0DUT#9"-="8`@\,!.%X*=\TX7@IT-(!\)!90=2W&0B<&QD(F!<9" +M)`?&0B4`B6HPB7(LQH*6`````(E4)`2+1"08B00DZ/S___^#Q!Q;7E]=PXVT +M)@````"#["R)7"0<B70D((E\)"2);"0HBVPD,(M$)#0/MU`09H'ZA0`/AX8` +M```/M\(/MH0HO`0``#S_='=F@_I_=Q@/ML!IP"@!```#A7P%``"+0"P/ME`$ +MZUZ+5"0T#[="$&8]@0!W(`^WP`^VA"B\!```:<`4#0```X6T!0``BT`(#[90 +M!.LPBTPD-`^W01`/MH0HO`0``&G`L`````.%F`4``(M`5`^V4`3K"XVV```` +M`+K_____N?____^+1"0T9H%X$(4`=Q"+3"0T#[=!$`^VC"B\!```#[;"#[:$ +M*$(%``!KP%R-O`5,`0``#[;!:<"P````B[68!0```<:+1"0T@'@H`@^%B``` +M``^V0"PE\````(/X('0%@_@0=76+3"0T#[91+(G0@^`/@_@!=3&)T"7P```` +MQT0D$`$```")1"0,QT0D"`(```#'1"0$`````(DT).C\____Z0$*``"0#[9& +M*XM4ACR+3"0T#[9!+"7P````@_@@#Y3`@\`(B(*V````BT(T9H%@,O_^Z<X) +M``"+5"0T#[9"%(3`=$.)PX-Z4`!T$8G0@\!0B40D!(DL).C\____BTPD-(E, +M)`2)+"3H_/___X#[`@^%D`D``(ET)`2)+"3H_/___^E_"0``QX:8```````` +M``^V1B8\)`^'"0D```^VP/\DA7P4``"+1QCV0"H(#X0R"0``B?;IMP4``(N5 +M1`H``('"3`@```^V1C3!X`@!PHL"HP````"#^`5W!8A&'^L$QD8?!8!_"P!T +M#<9&)@#&1PL`Z:X(``#&1B8"Z:4(``"+E40*``"!PDP(```/MD8TP>`(`<*+ +M`J,`````#[;`9HE&((N51`H``('"1`@```^V1C3!X`@!PHL"HP````")PL'J +M"&:)5B+!X`AF"48@9H'Z0$%U"<9&)AGI1@@``&:!?B(5EP^4P(/H`8/@WX/` +M)(A&)NDL"```BY5$"@``@<)$"```#[9&-,'@"`'"BP*C`````(A&'8N51`H` +M`('"3`@```^V1C3!X`@!PHL"HP````"H"'0&QD8>#.L:J`1T!L9&'@OK$(/@ +M`H/X`1G`]]"#X`J(1AX/MD8K/`$9P(/@`H/`%(A&)NFW!P``BX5$"@``!4P( +M```/ME8TP>((`="+`*,`````@\@(B$8LQD8F!>F-!P``QD8F``^W1C)F)??] +M@\@"9HE&,HM$)#2#>%``=`^#P%")1"0$B2PDZ/S___^+5"0TB50D!(DL).C\ +M____QD<%_XE\)`2)+"3H_/___^F<!P``QD8F!.DS!P``#[9&*X/``8A&*SI& +M'W-7QD8F%HM,)#2#>5``=!&)R(/`4(E$)`2)+"3H_/___XM$)#2)1"0$B2PD +MZ/S____'1EB`A!X`QT9@`````(EV9(U&6(M5%(E$)`2)%"3H_/___^DM!P`` +MQD8K`,9&)A?'!"0@H0<`Z/S____IM`8``,9&)A3IJP8``,9&)@B-M"8````` +MZ9L&``#&1B84Z9(&``#&1BX`Z/S___^)AH@```#&1B85Z7H&``"+E40*``"! +MPDP(```/MD8TP>`(`<*+&HD=``````^VVXN51`H``('"1`@```^V1C3!X`@! +MPHL"HP````#H_/___XF&C````(/C#X/[`W4)QD8F"NDB!@``BX:(````!4`- +M`P`YAHP```!Y%P^V1BX\"G</QD8F%8/``8A&+NGX!0``#[9&*X-\ACP`#X2G +M`0``QT0D%`````"`?PH`=#[&1"0:`(U?.(D<).C\____B40D%`^V1BN+5"04 +M.52&/'0<BT,$B5,$B1J)0@2)$(!$)!H!#[9,)!HX3PIWRH!O"@&+5"04BT(@ +MA<`/A"P!``#'0&``````]D(H!'4[B2PDZ/S___^+3"04BT$TQH"L`````8M! +M(,=$)`@!````B40D!(DL).C\____BU0D%(M"-,:`K`````"+3"04BT$@BY5( +M!0``B40D"(E4)`3'!"0!````Z/S___^+5"04BT(@BTAPA<ET,`^W0AS'A(6\ +M`@```````(M"(,=`<`````"+0B"+4'C'1"0(_____XE$)`2)%"3_T8M,)!2+ +M02"%P'0KBU!TA=)T)`^W01S'A(6\`@```````(M!(,=`=`````"+02"+0'B) +M!"3_THM4)!2+0B`/ME`"#[9``8E4)`B)1"0$QP0DT`(``.C\____BTPD%(M! +M((N52`4``(E$)`B)5"0$QP0D!@```.C\____BT0D%,=`(``````/MD8KQT2& +M/`````"+5"04B50D!(DL).C\____QD8F">DY!```BY5$"@``@<),"```#[9& +M-,'@"`'"BPJ)#0`````/MLF+E40*``"!PD0(```/MD8TP>`(`<*+`J,````` +MP>`("<B)1CB`?B8*=`>I```!`'0)QD8F"^G?`P``QD8F#`^V1BN#?(8\`'1. +M@'\*``^$)@0``,9$)!L`C5\XB1PDZ/S___^)P@^V1BLY5(8\=0J`;PH!ZRR- +M="8`BT,$B5,$B1J)0@2)$(!$)!L!#[9,)!LX3PIV#.O$B2PDZ/S___^)PH72 +M#X30`P``#[9&*XE4ACP/MD8OB(*V````Z5D#``")+"3H_/___\<$)`$```#H +M_/___X/K`8/[_W0)BT<8]D`J"'3;QD8F">DK`P``BY5$"@``@<),"```#[9& +M-,'@"`'"BPJ)#0`````/MLF+E40*``"!PD0(```/MD8TP>`(`<*+`J,````` +M#[;`P>`("<@E_P\``#T3`0``#Y3"/2,!```/E,&$TG43A,EU#STS`0``=4*- +M=@#I\@(``,9&)AB$TI"-="8`=`G&1B\(Z:4"``"$R8UV`'0)QD8O">F5`@`` +M/3,!```/A8H"``#&1B\*Z8$"```/MDXJ#[;1#[9&'X/H`3G"?1.-00&(1BJ` +M1BL!QD8F!^E<`@``QD8K`,9&)A[I3P(``,9&)@/I1@(``,9&)B*)]ND[`@`` +MQD8F(^DR`@``QD8F`^DI`@``BY5$"@``@<),"```#[9&-,'@"`'"BPJ)#0`` +M``"+E40*``"!PD0(```/MD8TP>`(`<*+$HD5`````(G0P>`(#[;)"<AF/0,1 +M#X6:````B=#!Z`AF/453=`IF/4`##X6%````9L=&(`,19HE&(F8]15-U'("^ +MI0````)T$\:&I0````+'AJ@````?````ZR)F@7XB0`-U&H"^I0````-T$<:& +MI0````/'AJ@````/^`,`QH:L`````8DT).C\____QH:L`````(L&BX!(!0`` +MQT0D!`````")!"3H_/___\9&)@/I00$``,9&)B'&AJ4`````Z3$!``"+E40* +M``"!PDP(```/MD8TP>`(`<*+`J,`````BY5$"@``@<)$"```#[9&-,'@"`'" +MBP*C`````,9&)A_I\````,9&)B#IYP```(N51`H``('"3`@```^V1C3!X`@! +MPHL"HP````"+E40*``"!PD0(```/MD8TP>`(`<*+`J,`````#[9.*P^V1A^- +M40&(5BL/MLD/ML"#Z`$YP0^<P(/H`8/@YX/`'XA&)NF"````BY5$"@``@<), +M"```#[9&-,'@"`'"BPJ)#0`````/MLF+E40*``"!PD0(```/MD8TP>`(`<*+ +M`J,`````P>`("<&)CI0```#&1B8:ZS7&1B8;ZR^+A40*```%3`@```^V5C3! +MX@@!T(L`HP````"#X/>(1BS&1B8<ZPC&1B8=C70F`(M$)#2#>%``=`^#P%") +M1"0$B2PDZ/S___^+5"0TB50D!(DL).C\____B70D!(DL).C\____ZRG&1B88 +MZ1O]__^)+"3H_/___\<$)`$```#H_/___[L^0@\`Z67\__^)]HM<)!R+="0@ +MBWPD)(ML)"B#Q"S#C;8`````C;\`````@^Q<B5PD3(ET)%")?"14B6PD6(ML +M)&"+?"1D#[=7$&:!^H4`#X>^````#[?"#[:,!;P$``"`^?\/A*H```!F@_I_ +M=QP/ML&+E7P%``!IP"@!``"+1!`L#[9`!.LZC78`9H'Z@0!W&0^VP8N5M`4` +M`&G`%`T``(M$$`@/MD`$ZQ</ML&+E9@%``!IP+````"+1!!4#[9`!#S_=$T/ +MML`/MI0%0@4``(#Z_W05@/G_=!`/ME\4@/L&=5>-M"8`````@/K_=".`^?]T +M'@^VP6G`*`$``(G&`[5\!0``QD8G`L9&)O_IN`<``(-_4`!T#XU'4(E$)`2) +M+"3H_/___XE\)`2)+"3H_/___^G"!P``B?8/ML%IP"@!``")Q@.U?`4```^W +MAI0```!FB40D-F8]JPUW!8#[`G4Z@W]0`'0/C4=0B40D!(DL).C\____B7PD +M!(DL).C\____QD8F_\9&)P*)="0$B2PDZ/S____I7@<``,9$)#T`@/L@=26+ +M3S@/M@&#X'\\<78-#[9)`8/A#XA,)#WK"P^V20*#X0^(3"0]#[;2B50D,&O" +M7(V$!4P!``")1"0X#[9')#P:#X0'!@``/!IW'SP2=%$\%8UT)@`/A)@&``"$ +MP`^$I04``(GVZ;L&```\)0^$X`(``#PED'<3/!L/A:8&``"-M@````#I=04` +M`#R>#X3-`P``/*"0#X6*!@``Z6(&``"$VXUV``^%@P(``(M/-(!_)0"-=@!T +M887)=$N`>0&`=46`>0(`=3\/MD$#/#QW-P^VV(U64+@`````Q@00((/``8/X +M%'7T@_L3=@6[%````(U64(U!!(E<)`B)1"0$B10DZ/S___]FQX:4``````#& +M1B89Z0T&``#&1B88]D$&0'41#[8!@^`?@_@-#X5C`0``ZPL/M@&#X!^#^`UU +M"<9&)0V-=@#K!,9&)2(/MD8EB40D!,<$)!`#``#H_/___X-_4`!T#XU'4(E$ +M)`2)+"3H_/___XE\)`2)+"3H_/___VM$)#!<@+P%5@$````/A,(%``"^```` +M`(G#C;P%A`$``(D\).C\____C10KBXJ(`0``B8*(`0``B3B)2`2)`0^V0"4\ +M(G0$/`UU#H/&`8GR.)0=5@$``'?(:T0D,%P/MH0%5@$``(GQ.,@/A64%``"$ +MP`^$704``+X`````9L=$)#X``,=$)$``````:UPD,%R-O!V$`0``B3PDZ/S_ +M__^)P8T$*XN0B`$``(F(B`$``(DYB5$$B0H/MD$E/")T!#P-=10/MT$<9CM$ +M)#YR"6:)1"0^B4PD0(/&`8GP.(0=5@$``'>R@WPD0``/A.0$``"+5"1`@'HF +M_P^$U@0``,9")O^)5"0$B2PDZ/S____IP00``(/X`741QD8E`<9&)O^-="8` +MZ7L$``#V004!=`9F@4XX``2+7S2%VW1;C59DN`````#&!!``@\`!@_@H=?2- +MEHP```"P`,8$$`"#P`&#^`AU](U.9(U3"(M#"(E&9(M"!(E!!(M""(E!"(M" +M#(E!#(M"$(E!$(M"%(E!%(M#((F&C````(.^'`$````/A0`$``#&1B8<Z?<# +M```/MT0D-H/``6:)AI0```#'!"00)P``Z/S____&1B8%Z=,#``"+3S2$VP^% +MD`````^V40;!X@@/MD$%P>`0"<(/MD$'"<(/MD$$P>`8"<*)EK`````/MA'! +MXA@/MD$#"<(/MD$"P>`("<(/MD$!P>`0"=")1D3'1D@`````@[ZP`````'4= +M9H.&E`````''!"00)P``Z/S____&1B8;Z54#``"#^/]U#V:!3C@`!,9&)AOI +M00,``,9&)@WI.`,``(#[('4S@'PD/09T!X!\)#T"=24/MT0D-H/``6:)AI0` +M``#'!"00)P``Z/S____&1B8%Z0$#``"0@W]0`'0/C4=0B40D!(DL).C\____ +MB7PD!(DL).C\____B70D"(M,)#B)3"0$B2PDZ/S____I]@(``(M'-(E$)$2$ +MVP^%'P$```^V4`K!X@@/MD`)P>`0"<*+3"1$#[9!"PG"#[9!",'@&`G"B9:P +M````#[9!`XG"N`````")1"0HB50D+`^V00*)PK@`````P>((BTPD*`G!BUPD +M+`G3BT0D1`^V`(E$)"#'1"0D`````(M$)"")PK@`````P>(8"<$)TXM$)$0/ +MMD`!B40D&,=$)!P`````BT0D&(G"N`````#!XA`)P0G3BT0D1`^V4`;!X@@/ +MMD`%B40D&,'@$`G"BT0D1`^V0`<)PHM$)$0/MD`$B40D&,'@&`G""<J)5D2) +M7DB+5"1$]D(,`70%9H-..@2#OK``````=1UF@X:4`````<<$)!`G``#H_/__ +M_\9&)AOII@$``&:#3C@!QD8F#>F8`0``@/L@=3.`?"0]!G0'@'PD/0)U)0^W +M1"0V@\`!9HF&E````,<$)!`G``#H_/___\9&)AOI80$``)"#?U``=`^-1U") +M1"0$B2PDZ/S___^)?"0$B2PDZ/S___^)="0(BTPD.(E,)`2)+"3H_/___^E6 +M`0``QD8F%.D=`0``@/L@=3B`?"0]!HUV`'0'@'PD/0)U)P^W1"0V@\`!9HF& +ME````,<$)!`G``#H_/___\9&)A3IXP```(UV`,9&)AOIUP```(3;D(UT)@!U +M7(M'-&:#3C@"9H-..@%F@4XXA`"`>`,`=06`.!9W'6:#AI0````!QP0D$"<` +M`.C\____QD8F#>F3````]D`&!'0'9H-..@+K!6:#9CK]BT=0B488QT=0```` +M`.LZ@/L@=3"`?"0]!G0(@'PD/0*0=28/MT0D-H/``6:)AI0```#'!"00)P`` +MZ/S____&1B8%ZSUF@V8X^<9&)@[K,H3;=05F@TXZ`\9&)@_K(X3;D'4,B7PD +M!(DL).C\____@[X<`0```1G`@^`3@\`%B$8F@W]0`'0/C4=0B40D!(DL).C\ +M____B7PD!(DL).C\____B70D!(DL).C\____C78`BUPD3(MT)%"+?"14BVPD +M6(/$7,.0D)"0D)"0D)"0D)"#X0?!X0B`S2"+0`0MY#P```^VTL'B"`'0B0@/ +MMP!FHP`````/ML##D(VT)@````"#X0?!X0B*3"0$@,T0BT`$+>0\```/MM+! +MX@@!T(D(PU575E.#[`B)Q\9$)`(`QD0D`P"]_____\=$)`0`````#[9$)`2( +M1"0!@T0D!`&X`0```(G&#[9,)`33YHGQNP````"XP.'D`+H`````]_$Y^'<= +MB?HIPHG0.>IS$P^V5"0!B%0D`HA<)`.)Q8UT)@"#PP$!\8/[$'7)@WPD!`AU +MGP^V1"0#P>`#"D0D`@^VP(/$"%M>7UW#D(VT)@````"#[`R)7"0$B70D"(M< +M)!`/MG0D%,<$)`````"Y!P```(GRB=CH%____P^V@RD+``")!"2Y`P```(GR +MB=CH__[__XM<)`2+="0(@\0,PXUV`%.)TP^VT;D#````Z+#^__\XV`^4P`^V +MP%O#C;8`````4XM<)`B%VW0ON@````")]@^VA!H^!0``#[;(//]T$0^WP6G` +ML`````.#F`4``.L-@\(!@_H$==BX`````%O#D%93@^P$BT0D$(N83`4``(7; +M=0*)P[X`````QP0D`````+D'````B?*)V.AA_O__QP0D1````+D"````B?*) +MV.A,_O__QP0DT````+D`````B?*)V.@W_O__QP0D`````+D$````B?*)V.@B +M_O__@\8!@_X"=:2XH(8!`.@P_O__B(,I"P``#[;`B00DN0,```"Z`````(G8 +MZ//]__^#Q`1;7L.-M@````"-O"<`````@^P\B5PD+(ET)#")?"0TB6PD.(M4 +M)$`/MH*E````/`(/A>H```"+BJ@```")3"049L=$)!H``+T````JQT0D'``` +M``"[`````+X`````OP0```"Z`0```(G0B=G3X(5$)!1U'(U+!M/B9@E4)!H) +M5"0<N!4```")\=/@"<7K"9")^(GQT^`)Q8/#`8/&!8/'`X/[!76]BT0D'(E$ +M)`S'1"0(J`,``,=$)`0!````BU0D0(D4).C\____B6PD#,=$)`C$`P``QT0D +M!`$```"+3"1`B0PDZ/S___\/MT0D&HM4)$`+@J@```")1"0,QT0D"*`#``#' +M1"0$`0```(D4).C\____Z?T```"-M@`````\`P^%[P```(M,)$"+B:@```") +M3"0H9L=$)"(``+T````JQT0D)`````"[`````+X`````OP0```"-M"8````` +MN@$```")T(G9T^"%1"0H=1^-2P;3XF8)5"0B"50D)+@5````B?'3X`G%ZPR- +M="8`B?B)\=/@"<6#PP&#Q@6#QP.#^P1UNHM$)"2)1"0,QT0D"*@#``#'1"0$ +M`0```(M4)$")%"3H_/___XEL)`S'1"0(Q`,``,=$)`0!````BTPD0(D,).C\ +M____#[=$)"*+5"1`"X*H````]]")1"0,QT0D"*`#``#'1"0$`0```(D4).C\ +M____BUPD+(MT)#"+?"0TBVPD.(/$/,.0C70F`(/L#(M4)!`/MDPD%(!\)!@` +M=`^X_O___]/`(8*H````ZPVX`0```-/@"8*H````B10DZ/S___^#Q`S#D(UT +M)@"#[!S'1"00`0````^W1"0DP>`(@\`/B40D#,=$)`B:````QT0D!`$```"+ +M1"0@B00DZ/S___^#Q!S#C;8`````@^P,BU0D$`^V3"04@'PD&`!T$+C^____ +MT\!F(8*0````ZPZX`0```-/@9@F"D`````^W@I````")1"0$B10DZ/S___^# +MQ`S#D(VT)@````"#["R)7"0<B70D((E\)"2);"0HBW0D,(M$)#0/ME0D.(A4 +M)!L/MIB8````#[9H`HM0:(72=!H/MD0D&XE$)`B)Z0^VP8E$)`2)%"3H_/__ +M_XDT).C\____@/L'=TH/ML/_)(40%0``O_L```"-="8`ZS6_,P```.LNOSL` +M``")]NLEOW,```#K'K][````B?;K%;^S````ZPZ_NP```(GVZP6_\P```(E\ +M)`2)-"3H_/___P^V1"0;B40D"(U$G0`/ML")1"0$B30DZ/S___^+7"0<BW0D +M((M\)"2+;"0H@\0LPXVV`````(V\)P````!75E.#[!")Q[L`````#[;RN0(` +M``")\HGXZ++Y__^H"'0.N`````#K(XVT)@````#'!"0!````Z/S___^#PP&! +M^Q`G``!UR;C_````@\006UY?PXVV`````(V\)P````"#[`R)'"2)="0$B7PD +M"(G&B<\/MMJ)VNB$____A<!U,(GX#[;0B=F)\.B"^O__A<!T'KD!````B=J) +M\.@P^?__BU0D$(@"N`````#K"(UV`+C_____BQPDBW0D!(M\)`B#Q`S#C;8` +M````C;\`````@^P<B5PD$(ET)!2)?"08B<8/MOD/MMJ)/"2Y`0```(G:Z`KY +M___'!"1`````N0(```")VHGPZ/7X__^)VHGPZ.S^__^%P'5.@WPD(`!T-??' +M`0```'09B=FZ0````(GPZ-OY__^%P'0MZS*0C70F`(G9NA@```")\.C"^?__ +MA<!T%.L9B=FZ*````(GPZ*[Y__^%P'4'N/\```#K!;@`````BUPD$(MT)!2+ +M?"08@\0<PXVT)@````"-O"<`````55=64X/L#(G'BVPD)(G3B<Z$R0^$Z@`` +M``^VVL<$)&0```"Y`@```(G:B?CH/_C__XG:B?CH-O[__X7`=0ZY`P```(G: +MB?CH]/?__XGP#[;(QP0D`0```(G:B?CHW_[__[[_____A,`/A7<!``"^```` +M`(7M#XYJ`0``O@````"-1?^)1"0(.70D"'4UQP0D0````+D"````B=J)^.C. +M]___BT0D(`'PB00DN5@```")VHGXZ!?^__^%P'0YZ2,!``#'!"1$````N0(` +M``")VHGXZ)GW__^+1"0@`?")!"2Y4````(G:B?CHXOW__X7`#X7O````@\8! +M.>X/A.0```#KA+B@A@$`Z(/W__\/MML/ML")!"2Y`P```(G:B?CH3/?__XG: +MB?CH0_W__X7`="(/MH<I"P``B00DN0,```")VHGXZ"?W__^^_____^F2```` +MB=FZ8````(GXZ!_X__^%P'0-O@````"%[7Y?B?;K'P^VARD+``")!"2Y`P`` +M`(G:B?CHYO;__[[_____ZU2^`````,<$)$0```"Y`@```(G:B?CHQ?;__XM$ +M)"`!\(D$)+F`````B=J)^.@._?__A<!U!X/&`3GN=<D/MH<I"P``B00DN0,` +M``")VHGXZ(OV__^)\(/$#%M>7UW#D(/L'(E<)!2)="08BW0D(`^V3"0DBT0D +M+(E$)`2+1"0HB00DN@````")\.CA_?__B</'!"14````N0(```"Z`````(GP +MZ#?V__^)V(M<)!2+="08@\0<PXGVC;PG`````(/L'(E<)!2)="08BW0D(`^V +M3"0DBT0D+(E$)`2+1"0HB00DN@$```")\.B!_?__B</'!"14````N0(```"Z +M`0```(GPZ-?U__^)V(M<)!2+="08@\0<PXGVC;PG`````%575E.#[`R)QXML +M)"2)RP^V\L<$)&0```"Y`@```(GRZ)OU__^)\HGXZ)+[__^%P'4.N0,```") +M\HGXZ%#U__\/MLO'!"0!````B?*)^.@]_/__A,!U+H7M?C&[`````(M$)"`/ +MM@P#QP0D`````(GRB?CH&/S__X3`=0F#PP$YZW0)Z]NX_____^L%N`````"# +MQ`Q;7E]=PXVT)@````"#[!R)7"04B70D&(MT)"`/MDPD)(M$)"R)1"0$BT0D +M*(D$)+H!````B?#H,?___XG#QP0D5````+D"````N@$```")\.C7]/__B=B+ +M7"04BW0D&(/$',.)]HV\)P````"#[!R+3"0@#[94)"2+@4P%``"%P'4"B<B( +M%2`!``#'1"0,(````,=$)`@@`0``QT0D!`X```")!"3H_/___X/$',.-M"8` +M````C;PG`````(/L#(M4)!`/MDPD%(!\)!@`=!"X`0```-/@9@F"N`P``.L. +MN/[____3P&8A@K@,```/MH*X#```B40D!(D4).C\____@\0,PY"-M"8````` +M55=64X/L3(M$)&2+2!B#P0*+4!"#Z@&)5"0DQT0D2`````"+6!R)7"0HB<:+ +M0!@/ME$!@/H!=0S'1BP`````Z6P%``"`^@)U4X!Y`@&-=@!U.HM4)&"+@DP% +M``"%P'4"B="+@$@%```/ME$#B)"Z#```#[91`XB0AAD``(M,)&3'02P````` +MZ20%``"+7"1DQT,L_O___^D4!0``@\`!B40D+(#Z!`^%)0(```^V00.#Z#L\ +M`0^'%@(``(M$)"P/MG`"BU0D8(N:2`4``(GQ#[;!B40D!(D<).C\____B<*$ +MP'0-#[;`@+P#O`0``/]U5HN;2`4``('#S`P``(N#2`4``(D$).C\____B?(H +MP@^VPHE$)`2)'"3H_/___XG"A,!T#0^VP("\`[P$``#_=1:+3"1DQT$L____ +M_XD,)/]1*.F$!```#[;"#[:$`[P$``"`^H%W9@^VR&G)%`T``(M$)"P/MD`$ +MB$0D.XMT)"P/ME8%P>(0#[9&!L'@"`G"#[9&!PG"B50D,`^V5@C!XA`/MD8) +MP>`("<(/MD8*"<*)5"0TB<X#L[0%```/A`D!``"`?C``=1WI_@```(M$)&3' +M0"S_____B00D_U`HB?;I]@,``+\`````QD0D.@"-;BB+5"0L@\(+B50D'(DL +M).C\____C5CXBU8LB48LB6L(B5,,B0(/MD,E/`UT"#PB#X6,````BTPD+`^V +M00,\.W0T/#QU?(M$)&2)1"00BU0D,(E4)`R+3"0TB4PD"`^V1"0[B40D!(D< +M).C\____QD0D.@'K3(N#Z````(M4)#")5"0(BTPD'(E,)`2)!"3H_/___XM$ +M)&2)1"00BU0D,(E4)`R+3"0TB4PD"`^V1"0[B40D!(D<).C\____QD0D.@&# +MQP&)^SA>,`^'/?___X!\)#H`#X40`P``BW0D9,=&+/____^)-"3_5BCI^@(` +M`(#Z`P^%MP```(!Y`@&)]@^%FP```(M4)&`/MD(FC30`#[99`XG:B=C!^A_W +M_HG3.=9^;8UY!`^V\@^V002)1"0(B70D!(M,)&")#"3H_/___XU#_(/X`W88 +MC4/T@_@#=A"-0^R#^`-V"(U#Y(/X`W<(@40D8,P,```/M@>)1"0(B70D!(M< +M)&")'"3H_/___XMT)&3'1BP`````Z3\"``"+1"1DQT`L_O___^DO`@``BU0D +M9,="+/[____I'P(``(`Y!79*@'D$_G5$C40D2(E$)`B+3"1DB4PD!(M<)&"+ +M@T@%``")!"3H_/___X3`#X7J`0``QT0D2`````"+="1DQT8L_____^G2`0`` +MB?:+1"1@BZA,!0``A>UU`HG%B<NX`@```"G(B40D(.GN````#[8SC7H!#[;( +M]L$!='"+5"1(B70D&(T$%HM<)&0[0Q0/AV$!``"+1"0L@#@!=2*)="0$BT0D +M*`'0B00DN@$```")Z.AF]___.?!T)NDV`0``B70D!(M$)"@!T(D$)+H````` +MB>CH1/?__SGP#X45`0``BU0D&`%4)$B)^^MPC1PWBT0D(`'8.T0D)`^/]@`` +M`(M$)"R`.`%U'(ET)`2)/"2Z`0```(GHZ+'Y__^%P'0@Z=$```")="0$B3PD +MN@````")Z.B5^?__A<`/A;8```"`.P!U"H![`0"-="8`=`['!"00)P``Z/S_ +M__^)]HU3`0^V0P&$P`^%`____P^V`X3`#X2*````#[;8QP0D5````+D"```` +MN@````")Z.C[[O__BU0D2(M,)&2+010IT#G#=@*)PXMT)"R`/@%U((E<)`2+ +M1"0H`=")!"2Y`````+H!````B>CH4?;__^L>B5PD!(M$)"@!T(D$)+D````` +MN@````")Z.@Q]O__A<!X!@%$)$CK"XM$)&3'0"S_____QP0D5````+D"```` +MN@````")Z.AT[O__C70F`(M,)&2+42"%TG0&BT0D2(D"BUPD9(D<)/]3*(/$ +M3%M>7UW#C;8`````C;PG`````(/L'(M4)""+@DP%``"%P'4"B="+D$@%```/ +MMH*[#```A,!T#8/H`8B"NPP``(3`=2?&!2,!````QT0D#"````#'1"0((`$` +M`,=$)`0.````B10DZ/S___^#Q!S#C70F`(/L'(M4)""+@DP%``"%P'4"B="+ +M@$@%``"`N+H,````=2Z`@+L,```!Q@4C`0```<=$)`P@````QT0D""`!``#' +M1"0$#@```(D$).C\____@\0<PXVV`````(V_`````(/L'(E<)!2)="08BW0D +M(`^V3"0DBT0D+(E$)`2+1"0HB00DN@````")\.B1]___B</'!"14````N0(` +M``"Z`````(GPZ#?M__^)V(M<)!2+="08@\0<PY"0D)"0D)"0D(M$)`2+0`0M +M``(!``-$)`B+`*,`````PY"-M"8`````BT0D!(M`!"T``@$``T0D"(M4)`R) +M$,.)]HV\)P````!3@^P,BUPD%(M3!('J``(!`,>"@``!``````"+@@0!`0"C +M`````(#,`8F"!`$!`,=$)`@$````QT0D!`S"``")'"3H_/___\=$)`BX"P`` +MQT0D!`C"``")'"3H_/___\=$)`@!``P`QT0D!`#"``")'"3H_/___\=$)`@$ +M````QT0D!`S#``")'"3H_/___\=$)`BX"P``QT0D!`C#``")'"3H_/___\=$ +M)`@!``P`QT0D!`##``")'"3H_/___XM#!"VT`0``9L<```"+0P0ME`$```^W +M`&:C``````^WP(M3!('JE`$``(/(!&:)`HM#!"V8`0``9L<`!`!FQX.X#``` +M__^#Q`Q;PXVV`````(M$)`2+4`2!Z@`"`0"+@FP``0"C``````S(B8)L``$` +MP^L-D)"0D)"0D)"0D)"0D(M$)`2+4`2!Z@`"`0"+@F@``0"C`````"0W"T0D +M"(F":``!`,.-="8`C;PG`````(/L((E<)!")="04B7PD&(EL)!R+7"0D#[9, +M)"@/MGPD+#F;2`4``'5\B<C`Z`*]``````^VT(G(@^`#C31`N`<```")\=/@ +M]]`C1),\B40D#(E$DSR)^(3`=`^X!````-/@"T0D#(E$DSR+1),\B40D"(GJ +M#[;"P>`(!5#"``")1"0$BX-(!0``B00DZ/S___^+7"00BW0D%(M\)!B+;"0< +M@\0@PXG(P.@"@^@$O0$```#I?/___XGVC;PG`````%575E.#[!R+?"0P#[9$ +M)#2(1"0;#[94)#B(5"0:#[9L)#R+1PB+,(DT).C\____B<.%P`^$^````(DT +M).C\____B<*%P`^$Y@```,9'-`'&0R3AQD,E`<9#)A#&0Q6[#[9',V:)0Q") +M<QC'0R"0````C4((B4,TB5-0B<&)PK@`````Q@00`(/``3V0````=?+&00&" +MQ@%`#[9$)!N(00(/ME0D&HA1`XGHB$$$/`)W(XU!"(GI#[;1P>("C8Z$"P`` +MB50D"(E,)`2)!"3H_/___^LWBX:$"P``B4$(BX:("P``B4$,@\$0B>H/ML*- +M!(7X____C9:,"P``B40D"(E4)`2)#"3H_/___\=#;`````#'1"0$`````(U# +M/(D$).C\____B5PD!(DT).C\____@\0<6UY?7<.-M"8`````@^PLB5PD'(ET +M)"")?"0DB6PD*(M\)#"+;"0TBT0D.(E$)!B+5"0\B50D%(M'"(LPB30DZ/S_ +M__^)PX7`#X2`````B30DZ/S___^)PH7`='+&1S0!QD,DX<9#)0'&0R80QD,5 +MNP^V1S-FB4,0B7,8QT,@D````(U""(E#-(E34,9``0+&0@A`B>J(4`(/ME0D +M&(A0`P^V5"04B%`$QT-L`````,=$)`0`````C4,\B00DZ/S___^)7"0$B30D +MZ/S___^+7"0<BW0D((M\)"2+;"0H@\0LPXUV`(V\)P````!55U93@^P<BW0D +M,`^V;"0T#[9$)#B(1"0;BT8(BQC'1"0,`@```,=$)`@`````QT0D!`````") +M-"3H_/___X!^-`!T&HD<).C\____QP0D`0```.C\____@'XT`'7FBT8(BP`% +MA`L``(!X`@!X1(!(`H#'1"0,`0```,=$)`@`````QT0D!`````")-"3H_/__ +M_X!^-`!T&HD<).C\____QP0D`0```.C\____@'XT`'7FB>C`Z`(/MOC'1"0, +M`0```(E\)`C'1"0$`P```(DT).C\____@'XT`'0>C70F`(D<).C\____QP0D +M`0```.C\____@'XT`'7FBT8(BQB)Z??1@^$#@'PD&P`/E<+!X@,/MH0+A`L` +M`(/@YPG0B(0+A`L``,=$)`P!````B7PD",=$)`0#````B30DZ/S___^#Q!Q; +M7E]=PXVT)@````"#[!R)7"0,B70D$(E\)!2);"08BUPD((MT)"0/MT809CV% +M`'<;BZNT!0``#[?`#[:$`[P$``!I^!0-``#K#8GVBZNT!0``O^P�"+1C2` +M>`$"=22-BX0+``"-4`2+0`2)@X0+``"+0@2)002+0@B)00B+0@R)00R+1E"% +MP'0,B40D!(D<).C\____B70D!(D<).C\____QD0]-`"+7"0,BW0D$(M\)!2+ +M;"08@\0<PX/L$(D<)(ET)`2)?"0(B6PD#(M,)!2+="08BU0D'(M<)""+N7P% +M```/MT80O=@F`0!F/84`=Q$/M\`/MH0!O`0``&GH*`$``(V*(`0``,:"(`0` +M`"=F@7XDX0%U(P^V5B:-0O\\`7<)#[96)X/B#^LDC4+ON@\````\`788C78` +MC00ON@````"#>#0`=`</ME!-@^(/#[9!`8/@\`G0B$$!N`$```!F@7XDX0%U +M$@^V1B:#Z`$\`0^7P`^VP(UV`(G"P>('#[9!`8/@?PG0B$$!#[9#!HA!`@^V +M`XA!`P^V0P6(00</MD,'B$$/#[9#`HA!!`^V0P.(004/MD,$B$$&#[9#`8A! +M#`^V0PJ(00@/MD,+B$$)#[9##(A!"@^V0PB(00L/MD,)B$$-BQPDBW0D!(M\ +M)`B+;"0,@\00PXGV#[9$)`3#C78`C;PG``````^V1"0%PXUV`(V\)P````!3 +MBU0D"(M<)!#&0A0"BTHXBT0D#(A!`HM".,9`!P"+0CB(6`Q;PXUV`(V\)P`` +M``"+5"0$BTPD"`^V0BF(00(/MD(HB$$##[9")XA!!`^V0B:(00K#C70F`(V\ +M)P````"+5"0$BTPD"`^V0BV(00(/MD(LB$$##[9"*XA!!`^V0BJ(00H/MD(I +MB$$+#[9"*(A!#,.-M@````"-O"<`````BTPD#(7)?AVZ`````(UV`(G(*="# +M^`(/G<`/ML"-5`(!.=%_Z_/#B?:-O"<`````@^P<B5PD#(ET)!")?"04B6PD +M&(M<)""+="0H#[9$)"2(1"0+#[9#)#PJ="8\*G<0/"@/A=@```#K&(VV```` +M`#R(="0\B@^%Q````(UT)@#K%@^V>RP/MFLKB70D!(D<).C\____ZQ0/MGLQ +M#[9K,(ET)`2)'"3H_/___\9&!4"+0V2I```!`'0LB?B(!HGHB$8(#[9$)`O! +MX`.(1@$/MD,D/"AT!#R(=0;&1@9@ZV#&1@9AZUJI```$`)"-="8`="*)^(A& +M`8GHB$8)#[9#)#PH=`0\B'4&QD8&)>LRQD8&->LLB?B(1@$/MD,F@^`/"$8% +M#[9#)#PH=`0\B'4&QD8&R.L+QD8&RHVT)@````"+7"0,BW0D$(M\)!2+;"08 +M@\0<PXVV`````(V_`````(/L#(M,)!`/MD$F"D$G"D$H"D$I#[;`#[91+(/B +M`0G0=!['1"0()````,=$)`0%````B0PDZ/S____K$XUT)@"+1"04QD`&[,=! +M;`````"#Q`S#C;8`````C;PG`````(/L&(E<)`B)="0,B7PD$(EL)!2+7"0< +MBW0D(`^V0R0\+W0-/(]U8.L=C;0F``````^V>RP/MFLKB70D!(D<).C\____ +MZQ0/MGLQ#[9K,(ET)`2)'"3H_/___\9&!4#V0V8$=!")^(A&`8GHB$8)QD8& +M0NL3B?B(1@$/MD,F@^`/"$8%QD8&0(M<)`B+="0,BWPD$(ML)!2#Q!C#D(UT +M)@!3@^P,BTPD&(M4)!S&0@5`#[9!)#PU=`@\D74JZR*)]HM<)!0/MT,X@^`! +M@_@!&<"#X/V#Z!:(0@;K)9"-="8`QD(&ZNL:QT0D""0```#'1"0$!0```(D, +M).C\____ZPKV024"=`3&010`@\0,6XGVP^L-D)"0D)"0D)"0D)"0D(/L#(M$ +M)!#V0"CP=!C'1"0()````,=$)`0%````B00DZ/S___^#Q`S#C;0F`````%.# +M[!"+7"0<BTPD)`^V1"0@N@````#&!`H`@\(!@_H-=?0/ME,D@/HU#X2O```` +M@/HU=S2`^BAT;(#Z*(UT)@!W$X#Z&P^%F@,``)"-="8`Z:H```"`^BIT2X#Z +M+XUV``^%?P,``.M=@/J/D(UT)@!T4X#ZCW<1@/J(="F`^HJ0#X5?`P``ZQV` +M^I&0C70F`'1,@/KA#X5*`P``D(UT)@#ID@```(E,)`@/ML")1"0$B1PDZ/S_ +M___'1"0,`0```.DH`P``B4PD!(D<).C\____QT0D#`$```#I#P,``(E,)`B) +M7"0$BT0D&(D$).C\____QT0D#`$```#I[@(``/9#*`%T(<9!!G#&000`QD$# +M`,9!`@#&005`QT0D#`$```#IQP(``,9!!N#'1"0,`0```.FV`@``@'LE`0^% +MI`(``(![)AP/AYH"```/MD,FD/\DA3`5``#&00<$QT0D#`$```#IA0(``,9! +M!P#'1"0,`0```.ET`@``QD$&[,=$)`P!````Z6,"``#&00;OQ@$##[9#)X/( +M0(A!`<=$)`P!````Z44"``#&00;OQ@$'QT0D#`$```#I,0(``,9!!D#&00$! +MQD$%0,=$)`P!````Z1@"``#&00;OQ@$##[9#)X/("(A!`<=$)`P!````Z?H! +M``#&00;OQ@$"QT0D#`$```#IY@$``,9!!N_&`8+'1"0,`0```.G2`0``QD$& +M[\8!!L=$)`P!````Z;X!``#&00;OQ@&&QT0D#`$```#IJ@$``,9!!N,/MD,G +MB$$!QT0D#`$```#ID@$``,9!!K#&`=C&00-/QD$$PL=$)`P!````Z78!``#& +M00:PQ@'9QD$#3\9!!,+'1"0,`0```.E:`0``QD$&L,8!VL9!`T_&003"QT0D +M#`$```#I/@$``(M$)!CV0#@!=!'&00;JQT0D#`$```#I(P$``,9!!N?'1"0, +M`0```.D2`0``QD$&[\8!JL=$)`P!````Z?X```#&00;OQ@%5QT0D#`$```#I +MZ@```,9!!B_&00$!QD$"$,=$)`P!````Z=$```#&00;D#[9#*(@!#[9#*8A! +M"`^V0R>(007'1"0,`0```.FL````#[9#)XA!!@^V0RB(`0^V0RF(00(/MD,J +MB$$##[9#*XA!!`^V0RV(00H/MD,LB$$!QT0D#`$```#K<L9!!N@/MD,HB`$/ +MMD,IB$$(#[9#)XA!!0^V0RJ(00(/MD,KB$$##[9#+(A!!`^V0RV(00''1"0, +M`0```.LTQT0D#`$```#V0R@!=";&009PQD$$`,9!`P#&00(`QD$%0,=$)`P! +M````ZPC'1"0,`````(M$)`R#Q!!;PXUV`(V\)P````"#[#R)7"0LB70D,(E\ +M)#2);"0XBVPD1(MU-(U\)`S\N0@```"X`````/.K]H:G````!'04BX[(```` +MBY[,````@\'_@]/_ZPV+1GB#Z`&)P;L`````@'TD)75GB<@/K-@8B$0D#(G( +M#ZS8$(A$)`V)R`^LV`B(1"0.B$PD#_:&U0```!!U%,9$)!("QD0D$P"Y"``` +M`.FI````C50D$,=$)`@$````C8;J````B40D!(D4).C\____N0@```#I@0`` +M`(G8P>@8B$0D#(G8P>@0B$0D#8G8P>@(B$0D#HA<)`^)R`^LV!B(1"00B<@/ +MK-@0B$0D$8G(#ZS8"(A$)!*(3"03]H;5````$'44QD0D%@+&1"07`+D@```` +MZR:-=@"-5"04QT0D"`0```"-ANH```")1"0$B10DZ/S___^Y(````(M5-(U$ +M)`R)3"0(B40D!(D4).C\____BUPD+(MT)#"+?"0TBVPD.(/$/,.)]E93@^P4 +MBTPD((M<)"2+42R+,@^V0R0\+W1H/"]W-#P;#X0R`0``/!MW#CP2C70F``^% +M.@$``.M*/"B-M@````!T0#PJ#X4F`0``C;8`````ZS`\BG0L/(IW&#PUC70F +M``^$\@```#R(#X4"`0``B?;K$#R/=`P\X0^%\@```(GVZW7V03@!=`>!2V0` +M``0`]D$Z$`^$_@```(-Y-`"-=@`/A?$````/MD,D/"AT$#PJ=`P\B'0(/(H/ +MA=D```#V0@@!=1@/MD($B40D!(DT).C\____A,`/A+L```"`>Q2!#X2Q```` +M@4MD```!`+@!````Z:D```"`>R4!#X6/````@'LF'`^'A0````^^2R:X`0`` +M`-/@J?8_P!UU):D(0`8`=0ZI```@`'4BD(UT)@#K7H-+9`BX`0```)"-="8` +MZUZ#2V0!N`$```#K4X-+9""X`0```.M(]D$X`70'@4MD```$`(-+9`&X`0`` +M`.LPBT-DJ0``(`!T%O9!.`%T%PT```0`B4-DN`$```#K$9"X`````.L)N`$` +M``"-="8`@\046U[#D)"0D)"0D)"0D(/L"(D<)(ET)`2)TXMT)!2+4`0/MD0D +M$,'@!`^VR<'A"`G!@'PD#`!T`X/)!(/^_W00B?`E__\#`(F"!,;__X/)`HD+ +MBQPDBW0D!(/$",.0BT`$+0`"`0"#R@&)D`#(``##C;0F`````(V\)P````!7 +M5E.#[!")UXM`!(72=$J-L`#&__^+@`#&__^C`````+L`````J`%U$NLGD(UT +M)@"+!J,`````J`%T%\<$)`H```#H_/___X/#`3G[=>*)]NL'N`````#K!;C_ +M____@\006UY?PXUT)@"-O"<`````5E.#["2+7"0PQT0D(`````"+<P3&@[P, +M````#[8-2`$``(U4)"#'1"0(`````,=$)`0"````QP0D`0```(G8Z-S^__^+ +M5"0@B=CH(?___[J@A@$`B=CH-?___X7`=4>+A@S&__^C`````(E$)"`]'V,` +M`'4QQX.L#```'V,``,>#L`P`````!`#'@[0,``````$`QX/`#```0`$``&:X +M``#I.@(``,=$)"``````BW,$QH.\#````0^V#5@!``"-5"0@QT0D"/_____' +M1"0$`@```,<$)`$```")V.@__O__BU0D((G8Z(3^__^Z$"<``(G8Z)C^__^% +MP'5GBX8,QO__HP````")1"0@/1]#``!T+CT?1```=4K'@ZP,```?1```QX.P +M#``````'`,>#M`P``````0#IA`$``(UT)@#'@ZP,```?0P``QX.P#``````$ +M`,>#M`P``````0#I70$``,=$)"``````BW,$QH.\#`````^V#6@!``"-5"0@ +MQT0D"`````#'1"0$`@```,<$)`$```")V.B"_?__BU0D((G8Z,?]__^Z$"<` +M`(G8Z-O]__^%P'5'BX8,QO__HP````")1"0@/;]#``!U,<>#K`P``+]#``#' +M@[`,`````"``QX.T#````!```,>#P`P``&`!``!FN```Z>````#'1"0@```` +M`(MS!,:#O`P````/M@UX`0``C50D(,=$)`@`````QT0D!`(```#'!"0!```` +MB=CHY?S__XM4)"")V.@J_?__NA`G``")V.@^_?__A<!U7XN&#,;__Z,````` +MB40D(#WO$0``=`D][Q(``'5"ZR#'@ZP,``#O$0``QX.P#``````$`,>#M`P` +M`````0#K/,>#K`P``.\2``#'@[`,``````@`QX.T#``````!`.L<N/_____K +M)(UT)@#'@\`,``!0`0``N`````#K#\>#P`P``'`!``"X`````(/$)%M>PXUV +M`(V\)P````"#[#R)7"0LB70D,(E\)#2);"0XB<:)UXE,)!B+:`0/MD0D0#P$ +M=@6X!`````^VV(N&P`P```^V2`2-5"0HB7PD"(E<)`3'!"0!````B?#HW?O_ +M_XM4)"B)\.@B_/__NA`G``")\.@V_/__NO____^%P'4:BX4,QO__HP````") +M1"0HBU0D&(D"N@````")T(M<)"R+="0PBWPD-(ML)#B#Q#S#C;8`````C;PG +M`````%.#["B+7"0PBX/`#```#[9("XU4)"2+1"0TB40D",=$)`0!````QP0D +M`0```(G8Z$S[__^+5"0DB=CHD?O__[H0)P``B=CHI?O__[K_____A<!U&HM# +M!"WT.0``BP"C`````(M4)#B(`KH`````B="#Q"A;PXUT)@"-O"<`````55=6 +M4X/L+(G#B%0D&XG-@WPD0``/A),```"^`````)"+>P2+@\`,```/MD@"QT0D +M"/_____'1"0$`0```,<$)`$```"-5"0HB=CHL?K__XM4)"B)V.CV^O__NA`G +M``")V.@*^___A<!U*HN7#,;__XD5``````^V1"0;(=")Z3C(=0VX`````.LH +MC;8`````B50D*,<$)`H```#H_/___X/&`3MT)$`/A7/___^X_____X/$+%M> +M7UW#C;8`````4X/L*(G#BX#`#```#[8(C50D),=$)`C_____QT0D!`````#' +M!"0`````B=CH#_K__XM4)"2)V.A4^O__NA`G``")V.AH^O__A<!U),<$)."3 +M!`"Y`@```+H#````B=CHW/[__[H`````A<!T"(UV`+K_____B="#Q"A;PXUT +M)@"#["R)7"0DB70D*(M<)#"+="0TQD0D(_^-1"0CB40D"(ET)`2)'"3H_/__ +M_X7`=7*`?"0C`'1YB=CH0O___X/X_W1?BX/`#```#[9("HU4)!R)="0(QT0D +M!`````#'!"0`````B=CH5?G__XM4)!R)V.B:^?__NA`G``")V.BN^?__A<!U +M',<$)."3!`"Y`````+H#````B=CH(O[__X7`=`ZX_____^L,C;0F`````+@` +M````BUPD)(MT)"B#Q"S#ZPV0D)"0D)"0D)"0D)"055=64X/L/(ML)%`/MD0D +M8(.]P`P````/A!H#``"+?"18A,`/A&L!``"#?"14_W44#[>%K`P``&:)![@! +M````Z1P#``"#?"14_G45BX6P#```B0>X`0```.D#`P``C78`@WPD5/UU&8N% +MM`P``(D'N`$```#IYP(``(VT)@````"+1"1<`T0D5(E$)!@[A;`,```/AY\" +M``"+7"14@^/\BU0D5(/B`XE4)"!T;HUT)#C'!"0$````B?&)VHGHZ/[[__^# +MPP3'1"0<!````#E<)!AS$(M$)"`K1"14`T0D&(E$)!R+1"0@.40D''8MC0P& +MB?Z+1"0<C50$.(VV``````^V`8@&@\8!@\$!.=%U\8M$)!PK1"0@C3P'BW0D +M&(/F_#GS<R3'!"0$````C4PD.(G:B>CHA_O__XM$)#B)!X/'!(/#!#G>=]PY +M7"08#X;M`0``C70D.,<$)`0```")\8G:B>CH5_O__XM,)!@IV0^$RP$``+H` +M````C;8`````#[8$%H@$.H/"`3G*#X2N`0``Z^R#?"14_W4I@#\/B?9U$<:% +MO0P```&X`0```.FM`0``QH6]#````+@!````Z9P!``"+5"1<B50D*(G0`T0D +M5#N%L`P```^'60$``("]O0P````/A$P!``"+1"14N@````#WM;0,``"%T@^% +MG````("]O`P```!T&(M$)%2)1"0$B2PDZ/S___^%P`^%%`$``(GHZ(;\__^# +M^/\/A`0!``"+A<`,```/MD@&C50D.(M$)%2)1"0(QT0D!`````#'!"0````` +MB>CHD?;__XM4)#B)Z.C6]O__NA`G``")Z.CJ]O__A<`/A;D```#'!"3@DP0` +MN0````"Z`P```(GHZ%K[__^%P`^%F0```(-\)%P`#X27````QT0D)`````"+ +M5"18BT0D)(LT`HG'`WPD5(M=!('K``(!`(GHZ-[[__^)LPC(``"+A<`,```/ +MMD@%B7PD",=$)`0$````QP0D`````(U4)#B)Z.CP]?__BU0D.(GHZ#7V__^Z +M$"<``(GHZ$GV__^%P'4<QP0DB!,``+D`````N@$```")Z.B]^O__A<!T$+@` +M````ZR*)]K@!````ZQF#1"0D!(M4)"0Y5"0H=NKI5O___Y"-="8`@\0\6UY? +M7<.0D)"0D)"0D+@`````PXUV`(V\)P````"+5"0$BTPD"+@`````.14`&``` +M?C2-%%+!X@,/MX(<`@``9HD!#[>"'@(``&:)00(/MH(D`@``B$$(#[:")0(` +M`(A!";@!````\\.0C70F`+B8&P``PXUV`(V\)P````"XG````,.-=@"-O"<` +M````N`0```##C78`C;PG`````%=64XMT)!"[`````+\`````N0`````/MI0Q +M/`4``(#Z_W1"C8&`````9CV!`'<%@\,!ZS$/ML*+EI@%``!IP+````"`O!"E +M`````W45@\<!C4<#@_@&=@V#PP&_`````.L#@\,!@\$!@_D&=:F)V%M>7\.- +MM@````"-O"<`````55=64X/L!(ML)!B^`````,<$)`````"[@`````^V1"0< +MC7@!B=D/MH0KO`0``#S_=$EF@?N!`'<'@\8!ZSF)]@^VP(N5F`4``&G`L``` +M`("\$*4````#=1N#!"0!BP0D@\`#@_@&=@^#Q@''!"0`````ZP.#Q@$Y]W00 +M@\,!@?N&````=9ZY`````(G(@\0$6UY?7<.-="8`C;PG`````//#C;0F```` +M`(V\)P````"+1"0$QH"7`````,.-="8`5E.+7"0,N/\```"%VW1,N8(```"^ +M_____XVT)@`````/MH09O`0``#S_=!\/ML"+DY@%``!IP+`````/MH00I``` +M`(GR.,)V`HG&@\$!@?F&````=<J)\@^VPEM>PXGVN`````##C78`C;PG```` +M`%=64XM$)!"+F$@%``"^`````+\`````N0````"-="8`#[:4&3P%``"`^O]T +M1HV!@````&8]@0!W!X/&`>LUB?8/ML*+DY@%``!IP+````"`O!"E`````W47 +M@\<!C4<#@_@&=@^#Q@&_`````.L%B?:#Q@&#P0&#^09UI8N;2`4``('#S`P` +M`+$`C;0F``````^VE!D\!0``@/K_=$:-@8````!F/8$`=P>#Q@'K-8GV#[;" +MBY.8!0``:<"P````@+P0I0````-U%X/'`8U'`X/X!G8/@\8!OP````#K!8GV +M@\8!@\$!@_D&=:6)\%M>7\/K#9"0D)"0D)"0D)"0D)")P8G0P.@$/`EV!8/` +M5^L#@\`PB`&)T(/@#X/X"7X1B="#X`^#P%?K#XVT)@````")T(/@#X/`,(A! +M`<.-="8`@^P(B1PDB70D!(G&B=,/MM;HJO___P^VVX/&`HG:B?#HF____XL< +M)(MT)`2#Q`C#BT0D#,=`!`````#'``````"X`````,.)]HV\)P````"+3"0$ +MBT%@A<!T1<=`(`````"`2"@$QT%@`````,=!:`````#'060`````BU$(@_H_ +M?P^+06S'A)"\`@```````,.+06S'A)"\`0```````//#C;0F`````(V\)P`` +M``"+3"0$BT%@A<!T1<=`(`````"`8"C[QT%@`````,=!:`````#'060````` +MBU$(@_H_?P^+06S'A)"\`@```````,.+06S'A)"\`0```````//#C;0F```` +M`(V\)P````"#[`S'!"2``0``Z/S___^X`````(/$#,.0C;0F`````%=64X/L +M0(M$)%#&1"08;<9$)!G_QD0D&B/&1"0;%,9$)!PZQD0D'>_&1"0>%L9$)!^2 +MB[!,!0``A?9U`HG&C40D((G"Q@``@\`!B=.-3"1`.<AU\,9$)"0!QT0D#"`` +M``")5"0(QT0D!`X```")-"3H_/___X7`=4S'!"2`&@8`Z/S____'1"0,(``` +M`(E<)`C'1"0$#P```(DT).C\____@_@@=1^-="0PC7PD&+D(````_/.F#Y?" +M#Y+`N0$````XPG01QP0D)`,``.C\____N0`````/ML&#Q$!;7E_#55=64X/L +M7(M$)'"+D$@%``"!PLP,``")5"0XB<&+`(7`=!8M```"`(D!B40D!(M!$(D$ +M).C\____BUPD<(M#"(7`=`^)1"0$BT,0B00DZ/S___^+5"1PBT(,A<!T#XE$ +M)`2+0A")!"3H_/___XU$)$Z)1"0TC40D4(E$)#"-1"1*B40D+(U$)$R)1"0H +MC40D5(E$)"2-1"16B40D((U$)%>)1"0<C40D4HE$)!B-1"18B40D%(U$)$B) +M1"00C40D68E$)`R-1"1:B40D"(U$)%N)1"0$BTPD<`^W022)!"3H_/___XM< +M)'"+@WP%``"%P'0PB40D!(G8!60%``")!"3H_/___XM4)#B+@GP%``")1"0$ +MB=`%9`4``(D$).C\____BTPD<(N!F`4``(7`=#")1"0$B<@%@`4``(D$).C\ +M____BUPD.(N#F`4``(E$)`2)V`6`!0``B00DZ/S___^+5"1PBX*T!0``A<!T +M,(E$)`2)T`6<!0``B00DZ/S___^+3"0XBX&T!0``B40D!(G(!9P%``")!"3H +M_/___XM<)'"+@^P&``"%P'0PB40D!(G8!=0&``")!"3H_/___XM4)#B+@NP& +M``")1"0$B=`%U`8``(D$).C\____@'PD6P!T6KX`````BVPD<('%#`<``(M\ +M)#B!QPP'``"-=@`/M]Z+3"1PBX29)`<``(E$)`2)+"3H_/___XM4)#B+A)HD +M!P``B40D!(D\).C\____@\8!#[9$)%MF.?!WPHM,)'"+@8P)``"%P'0PB40D +M!(G(!70)``")!"3H_/___XM<)#B+@XP)``")1"0$B=@%=`D``(D$).C\____ +MBU0D<(N"M`D``(7`=#")1"0$B=`%G`D``(D$).C\____BTPD.(N!M`D``(E$ +M)`2)R`6<"0``B00DZ/S___^+7"1PBX,$"@``A<!T,(E$)`2)V`7L"0``B00D +MZ/S___^+5"0XBX($"@``B40D!(G0!>P)``")!"3H_/___XM,)'"+@=`%``"% +MP'0PB40D!(G(!;@%``")!"3H_/___XM<)#B+@]`%``")1"0$B=@%N`4``(D$ +M).C\____BU0D<(N"?`8``(7`=#")1"0$B=`%9`8``(D$).C\____BTPD.(N! +M?`8``(E$)`2)R`5D!@``B00DZ/S___^+7"1PBX,L!@``A<!T,(E$)`2)V`44 +M!@``B00DZ/S___^+5"0XBX(L!@``B40D!(G0!10&``")!"3H_/___XM,)'"+ +M@4@&``"%P'0PB40D!(G(!3`&``")!"3H_/___XM<)#B+@T@&``")1"0$B=@% +M,`8``(D$).C\____BU0D<(N"M`8``(7`=#")1"0$B=`%G`8``(D$).C\____ +MBTPD.(N!M`8``(E$)`2)R`6<!@``B00DZ/S___^+7"1PBX/0!@``A<!T,(E$ +M)`2)V`6X!@``B00DZ/S___^+5"0XBX+0!@``B40D!(G0!;@&``")!"3H_/__ +M_XM,)'"+@0@'``"%P'0PB40D!(G(!?`&``")!"3H_/___XM<)#B+@P@'``") +M1"0$B=@%\`8``(D$).C\____BU0D<(N"/`D``(7`=#")1"0$B=`%)`D``(D$ +M).C\____BTPD.(N!/`D``(E$)`2)R`4D"0``B00DZ/S___^+7"1PBX-D"0`` +MA<!T,(E$)`2)V`5,"0``B00DZ/S___^+5"0XBX)D"0``B40D!(G0!4P)``") +M!"3H_/___XM,)'"+@=P)``"%P'0PB40D!(G(!<0)``")!"3H_/___XM<)#B+ +M@]P)``")1"0$B=@%Q`D``(D$).C\____BU0D<(N"F`8``(7`=#")1"0$B=`% +M@`8``(D$).C\____BTPD.(N!F`8``(E$)`2)R`6`!@``B00DZ/S___^+7"1P +MBXL@"@``A<ET6(N#)`H``(N3*`H``(E$)`B)5"0,B4PD!(G8!0@*``")!"3H +M_/___XM,)#B+@20*``"+D2@*``")1"0(B50D#(N!(`H``(E$)`2)R`4("@`` +MB00DZ/S___^+7"1PBXM$"@``A<ET6(N#2`H``(N33`H``(E$)`B)5"0,B4PD +M!(G8!2P*``")!"3H_/___XM,)#B+@4@*``"+D4P*``")1"0(B50D#(N!1`H` +M`(E$)`2)R`4L"@``B00DZ/S___^+7"1PBXMH"@``A<ET6(N#;`H``(N3<`H` +M`(E$)`B)5"0,B4PD!(G8!5`*``")!"3H_/___XM,)#B+@6P*``"+D7`*``") +M1"0(B50D#(N!:`H``(E$)`2)R`50"@``B00DZ/S___^+7"1PBXNP"@``A<ET +M6(N#M`H``(N3N`H``(E$)`B)5"0,B4PD!(G8!9@*``")!"3H_/___XM,)#B+ +M@;0*``"+D;@*``")1"0(B50D#(N!L`H``(E$)`2)R`68"@``B00DZ/S___^+ +M7"1PBXN,"@``A<ET6(N#D`H``(N3E`H``(E$)`B)5"0,B4PD!(G8!70*``") +M!"3H_/___XM,)#B+@9`*``"+D90*``")1"0(B50D#(N!C`H``(E$)`2)R`5T +M"@``B00DZ/S___^+7"1PBXO4"@``A<ET6(N#V`H``(N3W`H``(E$)`B)5"0, +MB4PD!(G8!;P*``")!"3H_/___XM,)#B+@=@*``"+D=P*``")1"0(B50D#(N! +MU`H``(E$)`2)R`6\"@``B00DZ/S___^+7"1PBXOX"@``A<ET6(N#_`H``(N3 +M``L``(E$)`B)5"0,B4PD!(G8!>`*``")!"3H_/___XM,)#B+@?P*``"+D0`+ +M``")1"0(B50D#(N!^`H``(E$)`2)R`7@"@``B00DZ/S___^+7"1PBXL<"P`` +MA<ET6(N#(`L``(N3)`L``(E$)`B)5"0,B4PD!(G8!00+``")!"3H_/___XM, +M)#B+@2`+``"+D20+``")1"0(B50D#(N!'`L``(E$)`2)R`4$"P``B00DZ/S_ +M__^#Q%Q;7E]=PXVV`````(/L'(E<)!2)="08BUPD((D<).C\____B1PDZ/S_ +M__^-L\P,``")-"3H_/___XD<).C\____QP0DT`<``.C\____B1PDZ/S____' +M1"0$`0```(D<).C\____QT0D!`$```")-"3H_/___XM<)!2+="08@\0<PXUT +M)@"-O"<`````@^P<B5PD%(ET)!B+="0@BUPD)(A>-P^VVXE<)`2)-"3H_/__ +M_XE<)`2!QLP,``")-"3H_/___[@!````BUPD%(MT)!B#Q!S#D(VT)@````!3 +M@^P(BUPD$(D<).C\____BX-(!0``!<P,``")!"3H_/___X/$"%O#D(VT)@`` +M``!3@^P(BUPD$(D<).C\____BX-(!0``!<P,``")!"3H_/___X/$"%O#D(VT +M)@````"#[`R+1"00B00DZ/S___\/ML"#Q`S#C78`C;PG`````(/L+(E<)!R) +M="0@B7PD)(EL)"B)PXG7B<V+<&"+0&R)1"04A?8/A#4!``"`NY<`````#X4H +M`0``B00DZ/S___^)1"08A<`/A!0!``#&0"3AQD`E`8GZA-)T#8GH/`$9P/?0 +M@\`'ZPR)ZH#Z`1G`]]"#P`V+5"08B$(FQD(4@`^W1AQFB4(0B5H8QT(@```` +M`,="-`````#'0FQ`DP,`B50D!(M$)!2)!"3H_/___\:#EP````%FQX.4```` +M]`&%VW19BT-@A<!T7&:!NY0```"6`'47B40D",=$)`0A````BT`LB00DZ/S_ +M__]F@ZN4`````<<$)-`'``#H_/___XM4)!2)%"3H_/___XM#8(7`=`F`NY<` +M````=:YF@[N4`````'0<BT0D&(!X%`!U$HM#8`^W0#IFB4-:NP````#K!;O_ +M____BU0D&(E4)`2+1"04B00DZ/S____K"8UT)@"[_____XG8BUPD'(MT)""+ +M?"0DBVPD*(/$+,.0C70F`(/L3(E<)#R)="1`B7PD1(EL)$B+="10#[9L)%2+ +M?F"+1FR)1"0@A?\/A/($``"`OI<`````#X7E!```B00DZ/S___^)1"0DA<`/ +MA-$$``#V!@(/A00!``")ZH#Z%'<+#[;"C01`P>`"ZQBXB?___XGJ]N)FP>@( +MP.@$#[;`!?````"+5"0DQD(DX<9")0'&0B8<B$(GQD(4@`^W1QQFB4(0B7(8 +MQT(@`````,="-`````#'0FQ`DP,`B50D!(M$)"")!"3H_/___\:&EP````%F +MQX:4````Q`F%]G19BT9@A<!T8&:!OI0```"6`'47B40D",=$)`0A````BT`L +MB00DZ/S___]F@ZZ4`````<<$)-`'``#H_/___XM4)"")%"3H_/___XM&8(7` +M=`F`OI<`````=:YF@[Z4``````^$O`,``+L`````BT0D)(!X%``/A*X#``#I +MI`,``(M4)"")%"3H_/___XE$)#B%P`^$C`,``(M<)"2#PSR+0`B)1"0<BT0D +M),9`)!K&0"4(QD`F&L9`)P#&0"@0QD`I`(M$)#B+5"0DB4)0QD(4@`^W1QQF +MB4(0B7(8BT0D.(M`"(E"-,="(!````"+1F`%N````(E".,9"'"#'0FQ`DP,` +MQT0D!`````")'"3H_/___XM4)"2+0B")1"0,BT0D.(M0$(M`#(E$)`2)5"0( +MB1PDZ/S___^+1"0DB40D!(M4)"")%"3H_/___\:&EP````%FQX:4````^@"% +M]G19BT9@A<!T7&:!OI0```"6`'47B40D",=$)`0A````BT`LB00DZ/S___]F +M@ZZ4`````<<$)-`'``#H_/___XM$)"")!"3H_/___XM&8(7`=`F`OI<````` +M=:YF@[Z4`````'0*BU0D)(!Z%`!T'HU$)#B)1"0$BT0D((D$).C\____N___ +M___I/@(``(M4)"2)5"0$BT0D((D$).C\____BU0D((D4).C\____B40D)(7` +M=2&-1"0XB40D!(M$)"")!"3H_/___[O_____Z1@"``"-=@"+5"0D@\(\B50D +M*(M,)!R#P02+5"0<#[9"`P^V!`&(0@3&00$*QD$"`+@`````BU0D',8$$`"# +MP`&#^`1U\(GHA,!U!H!A`_SK38GH#[;0:=)@Z@``N!^%ZU'WZL'Z!8!)`P.) +MU<'M&(GHB$$$B=/!ZQ"(606)T,'H"(E$)!B(00:(40>)Z(A!"(A9"0^V1"08 +MB$$*B%$+BT0D.(M4)"2)0E#&0B05#[8!P/@']]"#P!&(0B7&0B8`QD(G`,9" +M*!#&0BD`@"$_QD(4@`^W1QQFB4(0B7(8BT0D.(M`"(E"-,="(!````"+1F`% +MN````(E".,9"'"#'0FQ`DP,`QT0D!`````"+1"0HB00DZ/S___^+5"0DBT(@ +MB40D#(M$)#B+4!"+0`R)1"0$B50D"(M$)"B)!"3H_/___XM4)"2)5"0$BT0D +M((D$).C\____QH:7`````6;'AI0```#Z`(7V=%F+1F"%P'1<9H&^E````)8` +M=1>)1"0(QT0D!"$```"+0"R)!"3H_/___V:#KI0````!QP0DT`<``.C\____ +MBU0D((D4).C\____BT9@A<!T"8"^EP````!UKF:#OI0`````=`^[`````(M$ +M)"2`>!0`=`6[_____XU$)#B)1"0$BU0D((D4).C\____ZP:0N_____^+1"0D +MB40D!(M4)"")%"3H_/___^L*D(UT)@"[_____XG8BUPD/(MT)$"+?"1$BVPD +M2(/$3,.0C70F`(/L3(E<)#R)="1`B7PD1(EL)$B+?"10BUPD5(MT)%@/MT0D +M7&:)1"0>#[94)&2(5"0=BV]@A>T/A.D#``"`OY<`````#X7<`P``BTTLB4PD +M.(M';(E$)"1FQX>4````$">)!"3H_/___XE$)#2%P`^$L0,```^W5"0>B50D +M(&:#?"0>!'82B50D!,<$)$`#``#H_/___^L4BTPD)(D,).C\____B40D*(7` +M=1Z+1"0TB40D!(M4)"2)%"3H_/___[O_____Z78#``"+3"0@P>$)B4PD,(M4 +M)"2+@D@%``#&0"<!B7PD"(N"2`4``(E$)`3'!"0%````Z/S___^`32@"BT=@ +MB40D",=$)`0A````BTPD.(D,).C\____BT0D-(/`/(E$)"R`?"0=`'01BU0D +M-,="9`H```#&0B0HZRZ+3"0TQT%D$@```,9!)"J+5"0HBT((BTPD,(E,)`B+ +M5"1@B50D!(D$).C\____BT=@]D`X`71Y@'PD'0$9P(/@`H/H>(M,)#2(023& +M024`B?#!Z!B(02:)\,'H$(A!)XGPP>@(B$$HB?*(42F)V`^L\!B(02J)V`^L +M\!"(02N)V`^L\`B(02R(62W&02X`QD$O``^W1"0>9L'H"(A!,`^V1"0>B$$Q +MQD$R`,9!,P#K5H!\)!T!&<"#X`*#P"B+5"0TB$(DQD(E`(G8#ZSP&(M,)#2( +M02:)V`^L\!"(02>)V`^L\`B(02B(62G&02H`#[=$)!YFP>@(B$$K#[9$)!Z( +M02S&02T`BU0D-(D4).C\____BT=@#[=`'(M,)#1FB4$0QD$4@(EY&(M4)"B+ +M0@B)032+1"0PB4$@B5%0QD$<((M'8`6X````B4$XQT%L0),#`,=$)`0````` +MBU0D+(D4).C\____BTPD-(M!((E$)`R+3"0HBT$,BU$0B40D!(E4)`B+1"0L +MB00DZ/S____&AY<````!BU0D-(E4)`2+3"0DB0PDZ/S___^%_P^$KP```(M' +M8(7`#X2D````@+^7``````^$)`$``&:!OY0```"6`'47B40D",=$)`0A```` +MBT`LB00DZ/S___]F@Z^4`````<<$)-`'``#H_/___XM$)"2)!"3H_/___XM' +M8(7`=$Z`OY<`````#X3.````D.NGBU0D-(!Z%`!U-+L`````@'PD'0!T+8M, +M)"B+00B+5"0PB50D"(E$)`2+3"1@B0PDZ/S___^[`````.L'B?:[_____XM$ +M)#2#>%``=#6!>"``"```=Q6#P%")1"0$BU0D)(D4).C\____ZQ>+1"0T@\!0 +MB40D!(M,)"2)#"3H_/___XM$)#2)1"0$BU0D)(D4).C\____BTPD)(N!2`4` +M`,9`)P")?"0(BX%(!0``B40D!,<$)`8```#H_/___X!E*/WK&KO_____ZQ-F +M@[^4``````^%)____^E@____B=B+7"0\BW0D0(M\)$2+;"1(@\1,PXUV`(V\ +M)P````"#[!R)7"00B70D%(E\)!B+5"0@BUPD)(M"+(LXBW-(#[9#%#P@=#\\ +M('<*A,!T(SP&=Q;K+3PB="T\(I"-="8`<B"#P(`\`789N`````")]NM:BT(@ +MQT`$`````,9&9@'K!,9&9@V#>U``="F!>R``"```=Q&-0U")1"0$B3PDZ/S_ +M___K#XU#4(E$)`2)/"3H_/___XE<)`2)/"3H_/___XDT)/]6<+@!````BUPD +M$(MT)!2+?"08@\0<PXUT)@"#[!R)7"00B70D%(E\)!B+="0@BUY@A=MU%HM$ +M)"B)!"3_5"0DZ58!``"-M@````"#?G0`=0R#?G``C;8`````=!.+1"0HB00D +M_U0D)(UV`.DK`0``@+NT``````^%$0$``(![)O\/A0<!``"+0S2%P'0*@'@U +M``^%]@```(M#+/9`"!`/A>D```"+.(![3P!T%(E<)`C'1"0$!@```(D$).C\ +M____BT0D)(E&=(M$)"B)1G@/MDLD#[;1B="#X`:#^`9U-/;"`0^$A@```,9# +M)@7&0R<$B5PD#`^V0TV)1"0(BT,PB40D!(M#+(D$).C\____Z8<```"#^`0/ +MA7X```#VP0%T>8M3-(72=#`/MT(RJ`)T:H/@_6:)0C*+0S1FQT`R`0"+0S3& +M0"8=BT,TB40D!(D\).C\____ZT+&0R8#QD,G!(E<)`2)/"3H_/___^LLQD,F +M!<9#)P9FQX.4``````")7"0$B3PDZ/S____K#8M$)"B)!"3_5"0DB?:+7"00 +MBW0D%(M\)!B#Q!S#4X/L"(M<)!"%VP^$N````(M#;(D$).C\____B<*%P`^$ +M>P```("XI0````!T<H`+`0^V@*4````\`G4X@WMH`'49#[:#F````(/@`XA# +M`@^V@J0```"(0P'K;0^V@YD```"(0P*+0V@/MH"D````B$,!ZU0\`W50#[:# +MF````(/@`\'@`@*#F0```(A#`HM#:`^V@*0```"(0P'K*XUV`(M#:(7`=0N+ +M0V2%P'40B?;K%@^V@*0```"(0P'K"@^V@)(```"(0P&#Q`A;PXUV`%93@^P$ +MBW0D$(7V=&J[``````^VA#.\!```//]T-P^VP&G`*`$``(G"`Y9\!0``="2+ +M0B0E`/__`#T``/\`=17V0B<$=`^+0B"%P'0(B00DZ/S___^#PP&!^X````!U +MLHN&2`4``#GP=0T%S`P``(D$).C\____@\0$6U[#C78`5E.#[!2+7"0@C;/, +M#```B1PDZ/S___^)0Q2)1A2)FT@%``")GD@%``"+@U0%``")AE0%``#&@[H, +M```!QH:Z#````8D<).C\____B1PDZ/S___^)-"3H_/___XD<).C\____A,!T +M;HDT).C\____A,!T8HD<).C\____QP0DT`<``.C\____B1PDZ/S____'@S0! +M``#H`P``QX,\`0```````(F;0`$``(V#-`$``(E$)`2+0Q2)!"3H_/___\=$ +M)`0`````B1PDZ/S___^X`0```.L%N`````"#Q!1;7L-3@^P(BUPD$(D<).C\ +M____@</,#```B1PDZ/S___^X`0```(/$"%O#D(VT)@````!55U93@^P\@SWD +M`0````^%@0$``,<%Y`$```$```#'1"0X`````.F\`@``D(UT)@`/MX8>`@`` +MP>`0#[>6'`(```G0.40D*`^%$P$``+\`````N0````")?"0P9H.Y``````!U +M>XGZP>(%BX8<`@``B8(`````BX8@`@``B8($````BX8D`@``B8((````#[:" +M'````(T,_0````"-!`$/MEPD+X@<A0T````/MH(<````C00!#[9<)"Z('(4. +M````#[:"'`````'!Q@2-#P````"`@AP````!ZWF0C70F``^VF1P```")V+H` +M````][8P`@``A=)T38M,)##!X0.-!!D/ME0D+X@4A0T```"+5"0PP>(%#[:" +M'````(T$`0^V7"0NB!R%#@````^V@AP````!P<8$C0\`````@((<`````>L/ +M@\<!@\$@@_\$#X4#____@X8H`@```9"-="8`@\4!@\88.RT`&```#X6^_O__ +M@T0D-`&#?"0T(`^%&`$``(-$)#@!@7PD./\````/A5(!``"#?"14`'0'BW0D +M5,8&`(L=`!@``,=$)"0`````A=M^.;D`````QT0D)`````"Z`````(N"*`(` +M``%$)"2#?"14`'0,BX(L`@``BW0D5``&@\$!@\(8.=EUV8-\)%@`#X0!`0`` +MO0````"[`````&:#NP``````#X3I````#[:#'````(E$)""%P'YJQT0D&``` +M``"-%.T`````B50D'(M$)!P#1"08C32%#````(M\)%BX!````/R)P?.F#Y?" +M#Y+`.,)U(8-\)%0`=`T/MH,=````BW0D5(@&#[:#'````(E$)"3K#X-$)!@! +MBU0D(#E4)!AUJ8/%`8/#((/]!'1EZ6G___\/MDPD-(A,)"['1"0,`````,=$ +M)`@`````BUPD-(E<)`2+="0XB30DZ/S___^)1"0HO0````"^`````(,]`!@` +M```/CT[]___IB_[__P^V1"0XB$0D+\=$)#0`````ZZ`/MD0D)(/$/%M>7UW# +MB?:-O"<`````@^P<B5PD$(ET)!2)?"08BT0D(`^V="0DBWALBUA@]@`!='6+ +M4S"%TG09B?$/ML&)1"0(#[9#38E$)`2)%"3H_/___XN3Y````(72=!R)\0^V +MP8E$)`@/MH/9````B40D!(D4).C\____B3PDZ/S___^%P'0[@+BE`````'0R +MB?(/ML*)1"0(BT,@B40D!(D\).C\____ZQB)\0^VP8E$)`B+0R")1"0$B3PD +MZ/S___^+7"00BW0D%(M\)!B#Q!S#@^P\B5PD+(ET)#")?"0TB6PD.(M\)$`/ +MMG0D1(M?8(MO;(7;#X1V`P``@+^7``````^%:0,``/8'`@^%8`,```^V@R0! +M``"$P'0+B?(XT'5#Z4H#```/MH/;````B40D$`^V!X/@`0^VP(E$)`P/MD<" +MB40D"`^V1P&)1"0$QP0D(`H``.C\____N______I$0,``(DL).C\____B40D +M'(7`#X3X`@``B?(/ML*)1"04BT=@#[:`VP```(E$)!`/M@>#X`$/ML")1"0, +M#[9'`HE$)`@/MD<!B40D!,<$)&@*``#H_/___XM$)!S&0"3AQD`E`8GR@/H" +M#Y7`@\`:BU0D'(A")L9"%(`/MT,<9HE"$(EZ&,="(`````#'0C0`````QT)L +M0),#`(E4)`2)+"3H_/___\:'EP````%FQX>4````]`&%_W15BT=@A<!T7&:! +MOY0```"6`'47B40D",=$)`0A````BT`LB00DZ/S___]F@Z^4`````<<$)-`' +M``#H_/___XDL).C\____BT=@A<!T"8"_EP````!ULF:#OY0`````#X39`0`` +MBT0D'(!X%``/A<L!``"+5V")5"0HBT(LBP")1"0DB00DZ/S___^)PX7`=1"+ +M1"0HQH"U`````>FB`0``BU0D)(D4).C\____B<:%P'4EBT0D*,:`M0````&) +M7"0$BU0D)(D4).C\____NP````#I:P$``(U#/(E$)"#&0R3AQD,E`<9#)@.+ +M5"0H#[="'&:)0Q#&0V@/B7L8QT,@``(``(M6"(E3-+@`````Q@00`(/``3T` +M`@``=?*)<U#'0VQ`DP,`QT0D!`````"+1"0@B00DZ/S___^+0R")1"0,BT8, +MBU80B40D!(E4)`B+5"0@B10DZ/S___^)7"0$BT0D)(D$).C\____QH>7```` +M`6;'AY0```#Z`(7_=%F+1V"%P'1<9H&_E````)8`=1>)1"0(QT0D!"$```"+ +M0"R)!"3H_/___V:#KY0````!QP0DT`<``.C\____BU0D)(D4).C\____BT=@ +MA<!T"8"_EP````!UKF:#OY0`````="J`>Q0`=22+0S2)1"0$BT0D*(D$).C\ +M____BU0D*`^V@B0!``"(AYL```"#>U``=!.-0U")1"0$BT0D)(D$).C\____ +MB5PD!(M4)"2)%"3H_/___[L`````ZP6[_____XM$)!R)1"0$B2PDZ/S____K +M"(UV`+O_____B=B+7"0LBW0D,(M\)#2+;"0X@\0\PY"-="8`@^P<B5PD#(ET +M)!")?"04B6PD&(MT)""+5"0D@#H)=Q`/M@+_)(7`%0``C;8`````N/_____I +M2@$``(M2!(N"3`4``(7`=0F)T(VT)@````"+@$@%``#&@+L,```!B00DZ/S_ +M__^X`````.D5`0``#[9*!+H`````B?#H(>C__^D``0``#[9*!+H!````B?#H +M#.C__^GK````#[9"!(E$)`2)-"3H_/___^G6````#[9J!(M^;(M>8+C_____ +M]D98"`^$O0```(ET)`B+AT@%``")1"0$QP0D!0```.C\____@$LH`HE<)`C' +M1"0$(0```(M#+(D$).C\____@'M/`'0:QP0DT`<``.C\____B3PDZ/S___^` +M>T\`=>:)Z(3`=`QF@TY:$&:#2SH0ZPIF@V9:[V:#8SKOB70D"(N'2`4``(E$ +M)`3'!"0&````Z/S___^`8RC]N`````#K)P^V0@2)1"0$B30DZ/S____K%0^V +M0@2)1"0$B30DZ/S___^X`````(M<)`R+="00BWPD%(ML)!B#Q!S#D(VT)@`` +M``"#[$R)7"1`B70D1(E\)$B+?"10BW=LBX9(!0``@'@G``^%N@```(M?<(M7 +M8`^V@J<```")1"0T#[:"I@```(E$)#`/MH*E````B40D+`^V@J0```")1"0H +M#[:"HP```(E$)"0/MH*B````B40D(`^V@J$```")1"0<#[:"H````(E$)!@/ +MMH+;````B40D%`^V!X/@`0^VP(E$)!`/MD<"B40D#`^V1P&)1"0(BT<(B40D +M!,<$)*P*``#H_/___\='<`````"+1PB)1"0(B7PD!(M'>(D$)/_3ZSV0C70F +M`(U??(E<)`2+1A2)!"3H_/___\='?/0!``#'AX0```!`N@,`B;^(````B5PD +M!(M&%(D$).C\____BUPD0(MT)$2+?"1(@\1,PY"-M"8`````55=64X/L'`^W +M1"0X:<`H`0``B<6+5"0P`ZI\!0``B[I(!0``@<?,#```BTPD-(EI8(E-((-] +M,`!U+8-]-`!U)P^V<BN)\X3;#X0@!```BUTLN0`````[FJ0+```/A-T#``#I +M^0,``(M$)#2`"`&+132+5"0TB4)HBT4PB4)DBTPD,`^V<2N)\X3;=%.+72RY +M`````(M$)#`[F*0+``!T&NLO#[;!B<+!X@:-!(*+5"0P.9P"I`L``'4<BUPD +M,`^V0RF-!(&+5"0TB(*8````ZPZY`````(/!`8GP.,%UPXM4)#"+BD@%```/ +MMH$\!0``NP`````\_W0DBU4PA=)T&`^VP&G`%`T```.!M`4``+L`````.<)T +M*KL!````#[:!/04``#S_="N+53"%TG0A#[;`:<`4#0```X&T!0``.<)U#HM, +M)#2(60'IW@```(GV@\,!N@`````/MH0*/@4``#S_=",/ML!IP+`````#@9@% +M```[131U#(M\)#2(7P'IJ````(/#`8/"`8/Z!'7)B=D/MH<\!0``//]T)(M5 +M,(72=06-60'K&`^VP&G`%`T```.'M`4``#G"=>CK*(UV``^VAST%```\_W0H +MBU4PA=)T'@^VP&G`%`T```.'M`4``#G"=0N+1"0TB%@!ZSZ)]H/#`;H````` +M#[:$.CX%```\_W0@#[;`:<"P`````X>8!0``.T4T=0F+5"0TB%H!ZPN#PP&# +MP@&#^@1US(M,)#"`>3D!=4B+53"%TG08QT0D"``````/MD5-B40D!(D4).C\ +M____BY7D````A=(/A+<!``#'1"0(``````^VA=D```")1"0$B10DZ/S___^# +MO>0`````#X2/`0``BW4P@'XP`'16OP````"-7BB-="8`B5PD&(D<).C\____ +MC4CXBU8LB48LB5D(B5$,B0*`N=L```#_=0^`>24`=0F#N>0`````=0J#QP&) +M^#A&,'?!B?HX5C`/A90````/MH7;````BTPD-(A!`H!^,``/A(X!``"[```` +M`(U^*(VV`````(D\).C\____C4CXBU8LB48LB7D(B5$,B0*+02"%P'1`#[:1 +MVP```#A0`G0T@WAP`'4N@WAT`'4HB%`"#[=!'(E$)`B+5"0PBX)(!0``B40D +M!,<$)`<```#H_/___XUV`(/#`3A>,`^&%`$``.N2#[9%38M,)#2(00+&A=L` +M``#_@'XP``^$]@```+L`````D(M\)!B)/"3H_/___XU(^(M6+(E&+(EY"(E1 +M#(D"@+G;````_W1*QH';````_XM!((7`=#P/ME%-.%`"=#.#>'``=2V#>'0` +M=2>(4`(/MT$<B40D"(M4)#"+@D@%``")1"0$QP0D!P```.C\____B?:#PP$X +M7C!V>.N&#[9%38M,)#2(00+K:0^VP8G"P>(&C02"BWPD,#F<!Z0+``!U)HM4 +M)#`/MD(IC02!BUPD-(A#`8B#F````#A**W4:ZQ")]KD`````@\$!B?`XP76Y +MBU0D-,9"`?^+3"0TQD$"`(.]'`$```!T"8N%(`$``(A!`HM,)#2#P2"-562+ +M162+7"0TB4,@BT($B4$$BT((B4$(BT(,B4$,BT(0B4$0BT(4B4$4BT(8B4$8 +MBT(<B4$<BT(@B4$@BT(DB4$DB=F#P0R-55"+15")0PR+0@2)002+0@B)00B+ +M0@R)00R+0A")01"+A8P```")0TB+A9````")0TP/MT4X9HE#6`^W13IFB4-: +MBT5$BU5(B4-0B5-4#[9%3HA#7`^VA20!``"(@YL```#V12@$=0R+?"0PB3PD +MZ/S___\/ME4DB="#X`:#^`9U#O;"`74)BT0D-(`(`NL'BU0D-(`B_0^V52C0 +MZH/B!(M,)#0/M@&#X/L)T(@!#[9!`8B!F@````^V00*(@9D```")#"3H_/__ +M_\=$)`@`````BT4@B40D!(M<)#")'"3H_/___XM\)#2)/"3H__C__X/$'%M> +M7UW#C;0F`````(/L'(E<)!2)="08BW0D((N>2`4``(DT).C\____@'XY`74M +MC8/,#```@'@Y`71?@+[$#````'48QT0D!`````")!"3H_/___X"&Q`P```&0 +MC9XT`0``B5PD!(M&%(D$).C\____QX8T`0``Z`,``,>&/`$```````")MD`! +M``")7"0$BT84B00DZ/S___^+7"04BW0D&(/$',.-M@````!55U93@^Q,BT0D +M9(M0&(E4)""+0!R)1"08#[9*"XE,)!R+5"1@BX)(!0``BYA(!0``O@````"_ +M`````+D`````#[:4&3P%``"`^O]T1HV!@````&8]@0!W!X/&`>LUB?8/ML*+ +MDY@%``!IP+````"`O!"E`````W47@\<!C4<#@_@&=@^#Q@&_`````.L%B?:# +MQ@&#P0&#^09UI8GUBYM(!0``@</,#```L0"0C70F``^VE!D\!0``@/K_=$:- +M@8````!F/8$`=P>#Q@'K-8GV#[;"BY.8!0``:<"P````@+P0I0````-U%X/' +M`8U'`X/X!G8/@\8!OP````#K!8GV@\8!@\$!@_D&=:4Y="0<#XT\"0``.VPD +M'`^>P(M,)&C'`0`````\_P^$'`D```^VP&G`S`P``(M4)&`#@D@%``")!"3H +M_/___XG!A<`/A/<(``"+1"08B40D)`^V@:4````\`@^%!`(``(M4)&C'`@0` +M``"+1"0@#[9P!XL1#[=!)+L`````@+P"O`0``/\/A-$!``")\H#Z(P^'MP$` +M``^VPO\DA>@5``"+3"0DQP%%4P,1N`$```#II0$``(U$)$B)1"0,QT0D"!`# +M``#'1"0$`0```(D,).C\____A,`/A'$!``"+1"1(A<`/A&P!```E_P,``&G` +M$"<``(V($):O_[ISB*M,B<CWXHG(*=#1Z`'"P>H'BTPD)(D1N`$```#I/`$` +M`(U$)$B)1"0,QT0D"`@#``#'1"0$`0```(D,).C\____A,`/A`@!``"+1"1( +MA<`/A`,!```E_P,``&G`Z`,``(V(R.7W_[K+:RBOB<CWXHG(*=#1Z`'"P>H$ +MBTPD)(D1N`$```#ITP```(U$)$B)1"0,QT0D"`@#``#'1"0$`0```(D,).C\ +M____A,`/A)\```"+1"1(A<`/A)H```#!Z!`E_P,``&G`Z`,``(V(R.7W_[K+ +M:RBOB<CWXHG(*=#1Z`'"P>H$BTPD)(D1N`$```#K:HU$)$B)1"0,QT0D"`P# +M``#'1"0$`0```(D,).C\____A,!T.HM$)$B%P'0Y)?\#``!IP.@#``"-B,CE +M]_^ZRVLHKXG(]^*)R"G0T>@!PL'J!(M,)"2)$;@!````ZPRX`````.L%N`$` +M```/MM@/ML/I\@8``#P##X74!@``BT0D:,<`!````(M4)"`/ME('B%0D*\=$ +M)#@`````QT0D/`````#'1"1``````,=$)$0`````BQ$/MJKE````A>T/CH\` +M``"_`````,=$)!0`````N`$```")QHGYT^:+3"04#[:$$3X%```\_W0?#[;` +M:<"P````B<,#FI@%``"+0U2+0!@/MD`&.?!T$H-$)!0!@WPD%`0/A"P&``#K +MOX7;#X0B!@``#[=#)("\`KP$``#_#X00!@``@+NE`````P^%`P8``(E<O#B# +MQP$Y_0^%=O___X!\)"M5#X?;!0``#[9$)"O_)(5X%@``BT0D),<`0`,#$;@! +M````Z<`%``"-1"1(B40D#,=$)`@T`P``QT0D!`$````/MD0D*X/``8/@`XM$ +MA#B)!"3H_/___X3`#X2$!0``#[=4)$B)5"1(@?K__P``=12+5"0DQP+_____ +MN`$```#I9`4``+C`X>0`B=&Z`````/?QBU0D)(D"N`$```#I1@4``(U$)$B) +M1"0,QT0D"!`#``#'1"0$`0```(M$)#R)!"3H_/___X3`#X05!0``BT0D2"7_ +M`P``:<`0)P``C8@0EJ__NG.(JTR)R/?BB<@IT-'H`<+!Z@>+3"0DB1&X`0`` +M`.GA!```C40D2(E$)`S'1"0("`,``,=$)`0!````BT0D/(D$).C\____A,`/ +MA+`$``"+1"1()?\#``!IP.@#``"-B,CE]_^ZRVLHKXG(]^*)R"G0T>@!PL'J +M!(M,)"2)$;@!````Z7P$``"-1"1(B40D#,=$)`@(`P``QT0D!`$```"+1"0\ +MB00DZ/S___^$P`^$2P0```^W1"1*)?\#``!IP.@#``"-B,CE]_^ZRVLHKXG( +M]^*)R"G0T>@!PL'J!(M,)"2)$;@!````Z18$``"-1"1(B40D#,=$)`@,`P`` +MQT0D!`$```"+1"0\B00DZ/S___^$P`^$Y0,``(M$)$@E_P,``&G`Z`,``(V( +MR.7W_[K+:RBOB<CWXHG(*=#1Z`'"P>H$BTPD)(D1N`$```#IL0,``(U$)$B) +M1"0,QT0D"!0#``#'1"0$`0```(M$)#B)!"3H_/___X3`#X2``P``BT0D2"7_ +M`P``N@````!IVCJX`0"Y.K@!`/?AC103!>-*`P"#T@#'1"0(H(8!`,=$)`P` +M````B00DB50D!.C\____BTPD)(D!N`$```#I,P,``(U$)$B)1"0,QT0D"!0# +M``#'1"0$`0```(M$)#R)!"3H_/___X3`#X0"`P``BT0D2"7_`P``N@````!I +MVCJX`0"Y.K@!`/?AC103!>-*`P"#T@#'1"0(4,,``,=$)`P`````B00DB50D +M!.C\____BTPD)(D!N`$```#IM0(``(U$)$B)1"0,QT0D"!0#``#'1"0$`0`` +M`(M$)$")!"3H_/___X3`#X2$`@``BT0D2"7_`P``N@````!IVN830`*YYA-` +M`O?AC103!0W_3@2#T@#'1"0(@):8`,=$)`P`````B00DB50D!.C\____BTPD +M)(D!N`$```#I-P(``(U$)$B)1"0,QT0D"!0#``#'1"0$`0```(M$)$2)!"3H +M_/___X3`#X0&`@``BT0D2"7_`P``N@````!IVJY%X0"YKD7A`/?AC103!2E2 +MKP&#T@#'1"0(0$(/`,=$)`P`````B00DB50D!.C\____BTPD)(D!N`$```#I +MN0$``(U$)$B)1"0,QT0D"+`#``#'1"0$`0```(M$)#R)!"3H_/___X3`#X2( +M`0``BT0D2,'H#X/@`8M4)"2)`K@!````Z7,!``"+3"0@@'D(`'00BT0D/(&@ +MJ````/_W___K#HM$)#R!B*@`````"```BT0D/(D$).C\____N`$```#I-0$` +M`(M$)""`>`@`=!"+1"0\@:"H````_^___^L.BT0D/(&(J``````0``"+1"0\ +MB00DZ/S___^X`0```.GW````BU0D((!Z"`!T$(M$)#R!H*@```#_W___ZPZ+ +M1"0\@8BH`````"```(M$)#R)!"3H_/___[@!````Z;D```"+3"0@@'D(`'00 +MBT0D/(&@J````/^____K#HM$)#R!B*@`````0```BT0D/(D$).C\____N`$` +M``#I>P```(M$)""`>`@`=!"+1"0\@:"H````___^_^L.BT0D/(&(J``````` +M`0"+1"0\B00DZ/S___^X`0```.M`BU0D((!Z"`!T$(M$)#R!H*@```#___W_ +MZPZ+1"0\@8BH```````"`(M$)#R)!"3H_/___[@!````ZP6X``````^VP.L) +MC70F`+@`````#[;`ZQ:X`````.L/BTPD:,<!`````+@`````@\1,6UY?7<.0 +MC;0F`````%575E.#[&R+O"2`````BX0DA````(NT)(P```")Q<'M&(G"P>H0 +MB%0D0`^VS(A,)#"(1"0OBYPDB````('#S`P``+@`````BY0DB````,8$$`"# +MP`$]F!L``'7KB7(0H>`!``"(0BB#P`&CX`$``(GIB$HC#[9$)$"(0B(/MDPD +M,(A*(0^V1"0OB$(@QD(I``^W!V:)0A@/MT<"9HE"&HM'!(E"'(N4)(@```"! +MPI@9``"+C"2(````B9'(#```B7,0#[9!*(A#*(GHB$,C#[9,)$"(2R(/MD0D +M,(A#(0^V3"0OB$L@QD,I`0^W!V:)0Q@/MT<"9HE#&HM'!(E#'(F3R`P``(N4 +M)(@````/MT(:9CTD)P^$(P$``&8])"</AXP```!F/40A#X0/`0``9CU$(7=, M9CT@(0^$_P```&8]("%W$68]4`</A0H!``")]NGH````9CTB(8VT)@`````/ MA-<```!F/4`AC;8`````#X7B````Z<(```"0C70F`&8]$"</@LX```!F/1$G MB?8/AJ<```!F+2`G9H/X`HGV#X>R````Z9(```"0C70F`&8]@"</A(,```!F M/8`GB?9W,F8]0"=T=68]0">-="8`=Q!F/3`G#X5\````C70F`.M;9CU$)W15 M9CU@)XUT)@!U9NM)9CV`<G1#9CV`<HGV=PAF/8(G=5#K,V8]@)&)]G0.9CV` -ME'5`ZR.-M@````"+A"2(````9L=`)("1QD`F!&;'0R2`D<9#)@3K&XN4)(@` -M``!FQT(D@)3&0B8$9L=#)("4QD,F!`^V1PB+C"2(````B$$J#[9'"(A#*L=$ -M)`P```0`QT0D"`````#'1"0$`@```(DT).C\____BY0DB````(D"QT0D#``@ -M``#'1"0(`````,=$)`0`````B30DZ/S___^)P8NT)(@```")1@B+!H7`#X3C -M`0``A<D/A-L!``"-D``"`0")5@2-@````@")!@4`0```B0.)4P2)2PB+-=`+ -M``"%]GY?NP````"Y``````^W@1P!``!F.P=U/P^W@1X!``!F.T<"=3*+D2P! -M``"#P@&)D2P!``"+@2@!``")1"08A<!T%3G"=A&)T+H`````]W0D&(F1+`$` +ME'5`ZR.-M@````"+C"2(````9L=!)("1QD$F!&;'0R2`D<9#)@3K&XN$)(@` +M``!FQT`D@)3&0"8$9L=#)("4QD,F!`^V1PB+E"2(````B$(J#[9'"(A#*L=$ +M)`P```0`QT0D"`````#'1"0$`@```(DT).C\____BXPDB````(D!QT0D#``@ +M``#'1"0(`````,=$)`0`````B30DZ/S___^)P8NT)(@```")1@B+!H7`#X3M +M`0``A<D/A.4!``"-D``"`0")5@2-@````@")!@4`0```B0.)4P2)2PB+-0`8 +M``"%]GY?NP````"Y``````^W@1P"``!F.P=U/P^W@1X"``!F.T<"=3*+D2P" +M``"#P@&)D2P"``"+@2@"``")1"08A<!T%3G"=A&)T+H`````]W0D&(F1+`(` M`(/#`8/!&#GS=:N+E"2(````BT($+>!]``#'``'P`P"+0@0MV'T``,<``0`` -MZ(M"$,=$)`1X````B00DZ/S___^)PB4`<```/0`@``!V(0^VPHN,)(@```"+ -M41#'1"0(>````(E$)`2)%"3H_/___XGHB$0D7P^V5"1`B%0D7@^V3"0PB$PD -M70^V1"0OB$0D7,=$)"@`````O0````!F@[T```````^$FP```("]'`````!T -M?[L`````BU0D*,'B`XE4)"2-3"1<B4PD'(UV`(M$)"0!V(TTA0P```"Y!``` -M`/R+?"0<\Z8/E\(/DL`XPG4S#[:%'0```(/``8B%'0````^VE1P```"$TG08 -M.-!V%`^VP`^VRKH`````9O?QB)4=````@\,!#[:%'````#G8?YR#1"0H`8/% -M((-\)"@$#X57____B[0DB````,>&2`4```$```"X`0```.L%N`````"#Q&Q; -M7E]=PXUT)@!55U93@^P,BW0D((M\)"2+;FP/M@:#X`$/ML")1"0(N`````#& -M!#@`@\`!@_@@=?2+G3P&``")VK``C;8`````Q@00`(/``3T``@``=?*-2S:Z -M``````^V1#(AB`0*#[9$,B"(1`H!@\("@_HH=>>-2Q2R`@^V1#(+B$0*_@^V -M1#(*B$0*_X/"`H/Z%G7FC4LNL@`/MD0R28@$"@^V1#)(B$0*`8/"`H/Z"'7G -MB5\8BT90BU94@\`!@](`B0>)5P2#?F``=3SV!@%T-XM&9(7M#Y7"A<!T$H32 -M=`X/MD`S@+P%L`0``/]U&8M&:(32=#6%P'0Q#[=`)("\!;`$``#_=",/MH:8 -M````#[96`HT$@`^VA`(`````B$<,QT0D"`````#K(HDL).C\____A<!T$H"X -MI0````)U"0^V1@&(1PSK!,9'#/\/MD8"B$<-#[9&7(A'#L9'$A#&1Q$0#[9$ -M)`B-%``/ME\*@^/]"=.(7PK!X`4/MD\(@^'?"<&(3P@/MT98P>@'@^`!P>`& -M@^&_"<&(3P@/MT98P>@"@^`!#[97"8/B_@G"B%<)#[=&6L'H`\'@!X/A?PG! -MB$\(#[=&6M'H@^`!`<"#XOT)PHA7"0^W1EC!Z`.#X`'!X`:#XK\)PHA7"0^W -M1EK!Z`3!X`>#XG\)PHA7"8/)$(A/"`^V!M#H@^`!@^/^"<.(7PH/M@:#X`2# -MX_L)PXA?"F;'1Q0`$`^VAI@```"(1QR#Q`Q;7E]=PXVV`````(V\)P````!5 +MZ(M"$,=$)`1X````B00DZ/S___^)PB4`<```/0`@``!V)HG0@.2/@,P@BXPD +MB````(M1$(E$)`C'1"0$>````(D4).C\____B>B(1"1?#[94)$"(5"1>#[9, +M)#"(3"1=#[9$)"^(1"1<QT0D*`````"]`````&:#O0``````#X2@````@+T< +M``````^$@````+L`````BU0D*,'B`XE4)"2-3"1<B4PD'(M$)"0!V(TTA0P` +M``"Y!````/R+?"0<\Z8/E\(/DL`XPG4W#[:%'0```(/``8B%'0````^VE1P` +M``"$TG0<.-!V&`^VP`^VRKH`````9O?QB)4=````C70F`(/#`0^VA1P````Y +MV'^8@T0D*`&#Q2"#?"0H!`^%4O___XNT)(@```#'AE0%```!````N`$```#K +M!;@`````@\1L6UY?7<.-=@"-O"<`````55=64X/L#(MT)""+?"0DBVYL#[8& +M@^`!B$0D"[@`````Q@0X`(/``8/X('7TBYW(#```B=JP`,8$$`"#P`$]``(` +M`'7RC4LVN@````"-=@`/MD0R(8@$"@^V1#(@B$0*`8/"`H/Z*'7GC4L4L@(/ +MMD0R"XA$"OX/MD0R"HA$"O^#P@*#^A9UYHU++K(`#[9$,DF(!`H/MD0R2(A$ +M"@&#P@*#^@AUYXE?&(M&4(M65(/``8/2`(D'B5<$@WY@`'4\]@8!=#>+1F2% +M[0^5PH7`=!*$TG0.#[9`,X"\!;P$``#_=1F+1FB$TG0;A<!T%P^W0"2`O`6\ +M!```_W0)#[9&`8A'#.LBB2PDZ/S___^%P'02@+BE`````G4)#[9&`8A'#.L$ +MQD<,_P^V1@*(1PVX`0```/9&6A!T!`^V1ER(1P[&1Q(0QD<1$`^V1"0+C10` +M#[9?"H/C_0G3B%\*P>`%#[9/"(/AWPG!B$\(#[=&6,'H!X/@`<'@!H/AOPG! +MB$\(#[=&6,'H`H/@`0^V5PF#XOX)PHA7"0^W1EK!Z`/!X`>#X7\)P8A/"`^W +M1EK1Z(/@`0'`@^+]"<*(5PD/MT98P>@#@^`!P>`&@^*_"<*(5PD/MT9:P>@$ +MP>`'@^)_"<*(5PF#R1"(3P@/M@;0Z(/@`8/C_@G#B%\*#[8&@^`$@^/["<.( +M7PIFQT<4`!`/MH:;````B$</#[:&F````(A''(/$#%M>7UW#D(VT)@````!5 M5U93@^P(BUPD*(MT)"R%VW03N`````#&!!@`@\`!/:P```!U\H7V=!*X```` -M`)#&!#``@\`!@_@H=?2+1"0<B[@\!0``#[9$)"")1"0$B3PDZ/S___^)P6:% -MP'0-#[?`@+P'L`0``/]U2XN_/`4``(''N`P``(N'/`4``(D$).C\____*40D -M(`^V1"0@B40D!(D\).C\____B<%FA<`/A"D#```/M\"`O`>P!```_P^$&`,` -M``^WP0^VA`>P!```9H'Y@0`/AS<"``"+CZ@%```/M\!IP!0-``"-+`&%VP^$ -MU@```(M5#(72=&P/MH<P!0``//]T%0^VP&G`%`T``(T$`;Z`````.<)T(`^V -MAS$%```\_W0:#[;`:<`4#0``C00!.<)U"KZ!````B?"(0P*`?3(`="^Z```` +M`)#&!#``@\`!@_@H=?2+1"0<B[A(!0``#[9$)"")1"0$B3PDZ/S___^)P6:% +MP'0-#[?`@+P'O`0``/]U2XN_2`4``(''S`P``(N'2`4``(D$).C\____*40D +M(`^V1"0@B40D!(D\).C\____B<%FA<`/A"D#```/M\"`O`>\!```_P^$&`,` +M``^WP0^VA`>\!```9H'Y@0`/AS<"``"+C[0%```/M\!IP!0-``"-+`&%VP^$ +MU@```(M5#(72=&P/MH<\!0``//]T%0^VP&G`%`T``(T$`;Z`````.<)T(`^V +MAST%```\_W0:#[;`:<`4#0``C00!.<)U"KZ!````B?"(0P*`?3(`="^Z```` M``^VP@^V3`5`N`$```#3X`E#((/"`3A5,G80Z^3&0P+_BT4(#[9`"8E#(,8# M`0^V13&(0P&+14B)0P2+14R)0PB-2PR-55B+15B)0PR+0@2)002+0@B)00B+ M0@R)00R+17")0QR+5"0@B5,D#[:%D````(E#*+@`````Z1<"``"%]@^$"@(` @@ -2693,17 +5589,17 @@ MML#!X`@/ME("`="-!(`!P(E&!.M6BU0D)(T$DHN$Q9@````/MD`"A,!U"<=& M!`````#K-P^VP(/H%(E&!.LLBU0D)(T$DHN4Q9@````/MD("P>`(#[92`P'0 MC02``<")1@3K!\=&!`````"-3@B+5"0DC022C83%D````(U0#(M`#(E&"(M" M!(E!!(M""(E!"(M"#(E!#(M"$(E!$(M"%(E!%(M"&(E!&(M"'(E!'+@````` -MZ=`````/M]!ITK````")U@.WC`4``,9#`O_&`P*+AXP%```/MD0"'XA#`8M& +MZ=`````/M]!ITK````")U@.WF`4``,9#`O_&`P*+AY@%```/MD0"'XA#`8M& M5`^V0`F)0R`/MH:E````/`)U+<=#!$A05`"-0PS'0PQ2;V-KQT`$9713=,=` -M"&]R(``/MU8BC4,7Z$?`___K13P#=2'&0P$0QT,@`0```,=#!$A05`#'0PQ% -M2C,T9L=#$#``ZR#&0P1V#[=6((U#!>@0P/__QD,,9`^W5B*-0PWH`,#__\9# -M''(/ME8=C4,=Z+"___^+1"0@B4,DN`````#K!;C_____@\0(6UY?7<.0C70F -M`%575E.#[`R+="0HN`````#&!#``@\`!/2@-``!U\HM$)""+F#P%```/MD0D -M)(E$)`2)'"3H_/___XG!9H7`=`T/M\"`O`.P!```_W5+BYL\!0``@<.X#``` -MBX,\!0``B00DZ/S___\I1"0D#[9$)"2)1"0$B1PDZ/S___^)P6:%P`^$1P,` -M``^WP("\`[`$``#_#X0V`P``#[?!#[:$`[`$``!F@?F!``^'50(``(N+J`4` -M``^WP&G`%`T``(TL`8M5#(72=&P/MH,P!0``//]T%0^VP&G`%`T``(T$`;^` -M````.<)T(`^V@S$%```\_W0:#[;`:<`4#0``C00!.<)U"K^!````B?B(1@*` +M"&]R(``/MU8BC4,7Z#>^___K13P#=2'&0P$0QT,@`0```,=#!$A05`#'0PQ% +M2C,T9L=#$#``ZR#&0P1V#[=6((U#!>@`OO__QD,,9`^W5B*-0PWH\+W__\9# +M''(/ME8=C4,=Z*"]__^+1"0@B4,DN`````#K!;C_____@\0(6UY?7<.0C70F +M`%575E.#[`R+="0HN`````#&!#``@\`!/2@-``!U\HM$)""+F$@%```/MD0D +M)(E$)`2)'"3H_/___XG!9H7`=`T/M\"`O`.\!```_W5+BYM(!0``@</,#``` +MBX-(!0``B00DZ/S___\I1"0D#[9$)"2)1"0$B1PDZ/S___^)P6:%P`^$1P,` +M``^WP("\`[P$``#_#X0V`P``#[?!#[:$`[P$``!F@?F!``^'50(``(N+M`4` +M``^WP&G`%`T``(TL`8M5#(72=&P/MH,\!0``//]T%0^VP&G`%`T``(T$`;^` +M````.<)T(`^V@ST%```\_W0:#[;`:<`4#0``C00!.<)U"K^!````B?B(1@*` M?3(`="^Z``````^VP@^V3`5`N`$```#3X`E&((/"`3A5,G80Z^3&1@+_BT4( M#[9`"8E&(,8&`0^V13&(1@&+14B)1@2+14R)1@B-3@R-55B+15B)1@R+0@2) M002+0@B)00B+0@R)00R+17")1AR+1"0DB48D@+V0``````^$1@(``,9$)`L` @@ -2715,17 +5611,17 @@ M#<>$%JP`````````ZTB-%+\/ML"#Z!2)A-:L````ZS:-#+_!X0.+E`V8```` M#[9"`L'@"`^V4@,!T(T$@`'`B80.K````.L.C02_QX3&K`````````"-!+_! MX`.-G`:@````C4L0C80%D````(U0#(M`#(E#$(M"!(E!!(M""(E!"(M"#(E! M#(M"$(E!$(M"%(E!%(M"&(E!&(M"'(E!'(!$)`L!#[9$)`LXA9`````/AM<` -M``#ID?[__P^WT&G2L````(G7`[N,!0``QD8"_\8&`HN#C`4```^V1`(?B$8! +M``#ID?[__P^WT&G2L````(G7`[N8!0``QD8"_\8&`HN#F`4```^V1`(?B$8! MBT=4#[9`"8E&(`^VAZ4````\`G4MQT8$2%!4`(U&#,=&#%)O8VO'0`1E=%-T -MQT`(;W(@``^W5R*-1A?H9[S__^M%/`-U(<9&`1#'1B`!````QT8$2%!4`,=& -M#$5*,S1FQT80,`#K(,9&!'8/MU<@C48%Z#"\___&1@QD#[=7(HU&#>@@O/__ -MQD8<<@^V5QV-1AWHT+O__XM$)"2)1B2X`````.L,N/_____K!;@`````@\0, +MQT`(;W(@``^W5R*-1A?H5[K__^M%/`-U(<9&`1#'1B`!````QT8$2%!4`,=& +M#$5*,S1FQT80,`#K(,9&!'8/MU<@C48%Z""Z___&1@QD#[=7(HU&#>@0NO__ +MQD8<<@^V5QV-1AWHP+G__XM$)"2)1B2X`````.L,N/_____K!;@`````@\0, M6UY?7<.-M"8`````C;PG`````%575E.#[`R+="0HN`````#&!#``@\`!/:0, -M``!U\HM$)""+F#P%```/MD0D)(E$)`2)'"3H_/___XG!9H7`=`T/M\"`O`.P -M!```_W5+BYL\!0``@<.X#```BX,\!0``B00DZ/S___^+5"0D*<(/ML*)1"0$ -MB1PDZ/S___^)P6:%P`^$'@,```^WP("\`[`$``#_#X0-`P``#[?!#[:$`[`$ -M``!F@?F!``^',P(``(N+J`4```^WP&G`%`T``(TL`8M5#(72=&P/MH,P!0`` -M//]T%0^VP&G`%`T``(T$`;^`````.<)T(`^V@S$%```\_W0:#[;`:<`4#0`` +M``!U\HM$)""+F$@%```/MD0D)(E$)`2)'"3H_/___XG!9H7`=`T/M\"`O`.\ +M!```_W5+BYM(!0``@</,#```BX-(!0``B00DZ/S___^+5"0D*<(/ML*)1"0$ +MB1PDZ/S___^)P6:%P`^$'@,```^WP("\`[P$``#_#X0-`P``#[?!#[:$`[P$ +M``!F@?F!``^',P(``(N+M`4```^WP&G`%`T``(TL`8M5#(72=&P/MH,\!0`` +M//]T%0^VP&G`%`T``(T$`;^`````.<)T(`^V@ST%```\_W0:#[;`:<`4#0`` MC00!.<)U"K^!````B?B(1@*`?3(`="^Z``````^VP@^V3`5`N`$```#3X`E& M((/"`3A5,G80Z^3&1@+_BT4(#[9`"8E&(,8&`0^V13&(1@&+14B)1@2+14R) M1@B-3@R-55B+15B)1@R+0@2)002+0@B)00B+0@R)00R+17")1AR`O9`````` @@ -2737,24 +5633,24 @@ MQT06*`````#K/XT4OP^VP(/H%(E$UBCK,(T,O\'A`XN4#9@````/MD("P>`( M#[92`P'0C02``<")1`XHZPN-!+_'1,8H`````(T$O\'@`XU<!B"-2PR-A`60 M````C5`,BT`,B4,,BT($B4$$BT((B4$(BT(,B4$,BT(0B4$0BT(4B4$4BT(8 MB4$8BT(<B4$<@$0D"P$/ME0D"SB5D`````^&T````.FL_O__#[?0:=*P```` -MB=<#NXP%``#&1@+_Q@8"BX.,!0``#[9$`A^(1@&+1U0/MD`)B48@#[:'I0`` -M`#P"=2W'1@1(4%0`C48,QT8,4F]C:\=`!&5T4W3'0`AO<B``#[=7(HU&%^B9 -MN/__ZT4\`W4AQD8!$,=&(`$```#'1@1(4%0`QT8,14HS-&;'1A`P`.L@QD8$ -M=@^W5R"-1@7H8KC__\9&#&0/MU<BC48-Z%*X___&1AQR#[97'8U&'>@"N/__ +MB=<#NY@%``#&1@+_Q@8"BX.8!0``#[9$`A^(1@&+1U0/MD`)B48@#[:'I0`` +M`#P"=2W'1@1(4%0`C48,QT8,4F]C:\=`!&5T4W3'0`AO<B``#[=7(HU&%^B) +MMO__ZT4\`W4AQD8!$,=&(`$```#'1@1(4%0`QT8,14HS-&;'1A`P`.L@QD8$ +M=@^W5R"-1@7H4K;__\9&#&0/MU<BC48-Z$*V___&1AQR#[97'8U&'>CRM?__ MN`````#K#+C_____ZP6X`````(/$#%M>7UW#C;0F`````%575E.#[`B+7"0D -MN`````#&!!@`@\`!/0`!``!U\HM$)!R+N#P%```/MD0D((E$)`2)/"3H_/__ -M_XG!9H7`=`T/M\"`O`>P!```_W5+B[\\!0``@<>X#```BX<\!0``B00DZ/S_ -M__^+5"0@*<(/ML*)1"0$B3PDZ/S___^)P6:%P`^$P@$```^WP("\![`$``#_ -M#X2Q`0``#[?!#[:$![`$``!F@?F!``^'UP```(N/J`4```^WP&G`%`T``(TT -M`8M6#(72=&P/MH<P!0``//]T%0^VP&G`%`T``(T$`;V`````.<)T(`^VAS$% +MN`````#&!!@`@\`!/0`!``!U\HM$)!R+N$@%```/MD0D((E$)`2)/"3H_/__ +M_XG!9H7`=`T/M\"`O`>\!```_W5+B[](!0``@<?,#```BX=(!0``B00DZ/S_ +M__^+5"0@*<(/ML*)1"0$B3PDZ/S___^)P6:%P`^$P@$```^WP("\![P$``#_ +M#X2Q`0``#[?!#[:$![P$``!F@?F!``^'UP```(N/M`4```^WP&G`%`T``(TT +M`8M6#(72=&P/MH<\!0``//]T%0^VP&G`%`T``(T$`;V`````.<)T(`^VAST% M```\_W0:#[;`:<`4#0``C00!.<)U"KV!````B>B(0P*`?C(`="^Z``````^V MP@^V3`9`N`$```#3X`E#((/"`3A6,G80Z^3&0P+_BT8(#[9`"8E#(,8#`0^V M1C&(0P&+1DB)0P2+1DR)0PB-2PR-5EB+1EB)0PR+0@2)002+0@B)00B+0@R) -M00R+1G")0QRX`````.G)````#[?0:=*P````B=8#MXP%``#&0P+_Q@,"BX>, +M00R+1G")0QRX`````.G)````#[?0:=*P````B=8#MY@%``#&0P+_Q@,"BX>8 M!0``#[9$`A^(0P&+1E0/MD`)B4,@#[:&I0```#P"=2W'0P1(4%0`C4,,QT,, -M4F]C:\=`!&5T4W3'0`AO<B``#[=6(HU#%^@UMO__ZT4\`W4AQD,!$,=#(`$` -M``#'0P1(4%0`QT,,14HS-&;'0Q`P`.L@QD,$=@^W5B"-0P7H_K7__\9##&0/ -MMU8BC4,-Z.ZU___&0QQR#[96'8U#'>B>M?__N`````#K!;C_____@\0(6UY? +M4F]C:\=`!&5T4W3'0`AO<B``#[=6(HU#%^@EM/__ZT4\`W4AQD,!$,=#(`$` +M``#'0P1(4%0`QT,,14HS-&;'0Q`P`.L@QD,$=@^W5B"-0P7H[K/__\9##&0/ +MMU8BC4,-Z-ZS___&0QQR#[96'8U#'>B.L___N`````#K!;C_____@\0(6UY? M7<.-=@"-O"<`````@^PLB5PD'(ET)"")?"0DB6PD*(M\)#"+;"0TBT=LB40D M%(M%)(DXBT=@A<!U$L9%9@*)+"3_57#IN`4``(UV`/9`*`)T$L9%9@*)+"2- M=@#_57#IG04``(M,)!2)#"3H_/___XG&A<!U%L9%9@*)+"3_57#I?`4``(VT @@ -2775,9 +5671,9 @@ M=Q(\0G0[/+"-="8`="`\0'4BZRT\[(VV`````'00/.]T'SSE=0Z-M@````#K M$V:)54KK#<9%9@:-="8`Z<("``#&1B2P#[=%2(A&)0^W14J(1B8/MT5,B$8G M#[=%3HA&*`^W15"(1BD/MD52B$8J#[9%4XA&*P^V14F(1BP/MD5+B$8M#[9% M38A&+@^V14^(1B\/MD51B$8P]D5E!G0=#[=%5,'@"8E&((-.9`3K#<9%9@;I -M2P(``(UT)@#'1FQ0LP$`#[9%9:@�>`@``J`)T!H-.9`CK!(-.9!"-?CR+ -M76B%VW0&]D5E`74\BU5LA=(/A","``#'1"0(`````(M,)!2+@3P&``")1"0$ -MB2PD_]*%P`^$``(``(M$)!2+F#P&``"%VW1(B30DZ/S____'1"0$`````(D\ +M2P(``(UT)@#'1FQ@K`,`#[9%9:@�>`@``J`)T!H-.9`CK!(-.9!"-?CR+ +M76B%VW0&]D5E`74\BU5LA=(/A","``#'1"0(`````(M,)!2+@4@&``")1"0$ +MB2PD_]*%P`^$``(``(M$)!2+F$@&``"%VW1(B30DZ/S____'1"0$`````(D\ M).C\____@\,0BT/PB40D#(M#^(M3_(E$)`2)5"0(B3PDZ/S___^+0_2#PQ"% MP`^%@@$``.O3QT0D!`````")/"3H_/___XM&(#T`"```=T.+3"04B0PDZ/S_ M__^)PH7`=0G&168+Z5T!``"+0`B)1C2)5E"+1B")1"0,BT(,BU(0B40D!(E4 @@ -2785,2878 +5681,62 @@ M)`B)/"3H_/___^M3/0```0!W0XM$)!2)!"3H_/___XG"A<!U"<9%9@OI$P$` M`(M`"(E&-(E64(M&((E$)`R+0@R+4A")1"0$B50D"(D\).C\____ZPG&168& MZ>(````/MD5EJ`20C70F``^$OP```(!]9`-U(HM-6(7)=!N+5C2+1B")1"0( MB4PD!(D4).C\____Z9<```"+56B%TG4-BU5LA=(/A;D```#K:(M^-*@!=0F) -MTY"-="8`ZS"+56R%TG0IQT0D"`$```"+3"04BX$\!@``B40D!(DL)/_2A<!T -M"HM$)!2+F#P&``"#PQ"+0_B+4_")5"0(B40D!(D\).C\____`WOPBT/T@\,0 +MTY"-="8`ZS"+56R%TG0IQT0D"`$```"+3"04BX%(!@``B40D!(DL)/_2A<!T +M"HM$)!2+F$@&``"#PQ"+0_B+4_")5"0(B40D!(D\).C\____`WOPBT/T@\,0 MA<!U'>O;BT8@BU8TA<!T$<8"`(/"`8/H`70&Z_.#3F0!B70D!(M,)!2)#"3H M_/___^LNB70D!(M$)!2)!"3H_/___XDL)/]5<.L6NP````#I3/[__XM^-(UT M)@#I5/___XM<)!R+="0@BWPD)(ML)"B#Q"S#C;0F`````%=64X/L$(M\)""+ -M="0DN`````#&!#``@\`!@_AX=?2#OT@%```!#Y1&$P^V5R(/MD\A#[9?(`^V -M1R.(1@.(5@*(3@&('H!.$1`/MT<89HE&!`^W1QIFB48&BX=(!0``B$9LQD82 +M="0DN`````#&!#``@\`!@_AX=?2#OU0%```!#Y1&$P^V5R(/MD\A#[9?(`^V +M1R.(1@.(5@*(3@&('H!.$1`/MT<89HE&!`^W1QIFB48&BX=4!0``B$9LQD82 M(`^W5QIF@?H@(70'9H'Z(B%U1\9&%P*-1CS'1CQ2;V-KQT`$97120<=`"$E$ -M(%/'0`Q31"`RQT`0,3)X(,=`%$-O;G3'0!AR;VQL9L=`'&5RQD`>`.G^```` +M(%/'0`Q31"`RQT`0,3)X(,=`%$-O;G3'0!AR;VQL9L=`'&5RQD`>`.D"`0`` MC8+PV/__9H/X`7829H'Z0"%T"V:!^D0A#X6E````QD87!`^W5QJ-@O#8__]F M@_@!=T.-1CS'1CQ2;V-KQT`$97120<=`"$E$(#+'0`PW,7@@QT`04T%3(,=` -M%$-O;G3'0!AR;VQL9L=`'&5RQD`>`.F)````9H'Z0"%T!V:!^D0A=7N-1CS' +M%$-O;G3'0!AR;VQL9L=`'&5RQD`>`.F-````9H'Z0"%T!V:!^D0A=7^-1CS' M1CQ2;V-KQT`$97120<=`"$E$(%/'0`Q31"`RQT`0,31X(,=`%$-O;G3'0!AR -M;VQL9L=`'&5RQD`>`.L[QD87"(U&/,=&/%)O8VO'0`1E="`WQT`(-3`@4\=` -M#$%402#'0!!#;VYTQT`4<F]L;&;'0!AE<L9`&@`/MD82]F87B$80A,!U!,9& -M$("-1AC'1AA(:6=HQT`$4&]I;L=`"'0@5&7'0`QC:&YOQT`0;&]G:<=`%&5S -M+"#'0!A);F,NQD`<`(N'1`4``(7`=!"+0`B)1F2)PL'Z'XE6:.L.BT<(B49D -MB<+!^A^)5FC'1F``(```QT0D!'P```"+1Q")!"3H_/___XG"@>+P`P``P>H$ -MB%9M@^`/B$9OQT0D!(````"+1Q")!"3H_/___XG"@>(``/`#P>H4B%9N)0`` -M#P#!Z!"(1G"#Q!!;7E_#55=64X/L'(M\)#"+="0TBUPD.+@`````Q@08`(/` -M`3V<````=?*)<PB#_C]^"8''N`P``(/N0+@`````@[RWL`(````/A9\"``") -MG+>P`@``B7MLBT0D/(E#<(M,)$")2WB`?SD!#X5X`@``@?Z%````#X]:`@`` -M#[:$-[`$```\_P^$2@(```^VP&:)1"08#[?`:<`D`0``B<4#KW`%``#V12<$ -M#X0G`@``BT4D)0#__P`]``#_``^%%`(``/9%*`0/A(<!``#&A;0`````#[9- -M)`^VT8G0@^`&@_@&=3GVP@$/A`,!``#&128%QD4G!(EL)`P/MD5-B40D"(M% -M,(E$)`2+12R)!"3H_/___[@!````Z=`!``"#^`0/A<(!``#VP0$/A+D!``"+ -M72R+132%P`^%@@```,9%)@/&12<$@'L*`'11O@````"-0SB)1"04BTPD%(D, -M).C\____B<*+0SR)4SR+3"04B0J)0@2)$(!Z)O]T%3G5=!'&A;4````!N`$` -M``#I7`$``(/&`0^V0PHY\'^[@+VU`````0^$/P$``(EL)`2)/"3H_/___[@! -M````Z2X!``"`>"8`#X4?`0``9H-@,OV+131FQT`R(`"+132)1"0$B3PDZ/S_ -M__^X`0```.G]````BT4L#[9`"8!_)@!T+[L`````#[;P#[;+B?#3^*@!=!3' -M1"0(`````(E,)`2)/"3H_/___X/#`3A?)G?9QD4G!L9%)@5FQX64``````") -M;"0$B3PDZ/S___^X`0```.F:````BVTL@'T*`'1>QD0D&P"-13B)1"00BTPD -M$(D,).C\____B<*+13R)53R+3"00B0J)0@2)$(!Z)O]T'@^V0B4\(G0$/`UU -M$L>$M[`"````````N`````#K0H!$)!L!#[9$)!LX10IWK@^W1"08B40D"(E< -M)`2)/"3H_/___[@!````ZQ?'A+>P`@```````+@`````ZP6X`0```(/$'%M> -M7UW#D)"0D)"0D)"0D)"0D)"0BT0D!`^V5"0,Q@`(QD`!$H!\)`@`=`F`2`($ -MZP>-=@"`8`+[A-)T"(!@#-_K!HGV@$@,(+@4````PXVV`````//#C;0F```` -M`(V\)P````!55U93@^PLBVPD0(M\)$@/MD0D3(A$)!L/ME0D4(A4)!J+5"1$ -MBT(8B40D*,="&`````"#?"0H``^%70$``(DL).C\____B<:X`````(7V#X3] -M`0``B2PDZ/S___^)1"0HA<!U%HET)`2)+"3H_/___[@`````Z=<!``#&1B0: -MQD8E",9&)@C&1B<`QD8H_\9&*0#&1A6KBU0D1`^W0AQFB480B6X8QT8@_P`` -M`,=&9`@```"+1"0HBT`(B48T!?\```")1CC&1APDBT0D*(E&4,=&;"#P`0#& -M1A2`C5X\QT0D!`````")'"3H_/___\=$)`S_````BT0D*(M0$(M`#(E$)`2) -M5"0(B1PDZ/S___^)="0$B2PDZ/S___^[R/___^L;QP0DZ`,``.C\____@^L! -MB2PDZ/S___^$VW0,#[9&%#R`=-V$P'0]C40D*(E$)`2)+"3H_/___P^W1AZ) -M1"0$BU0D1(M"+(D$).C\____B70D!(DL).C\____N`````#IR@```,=&4``` -M``")="0$B2PDZ/S___^+1"0HBU@(#[9$)!J)1"0(#[9$)!N)1"0$C4,$B00D -MZ/S___^)QL8#`,9#`0#&0P(`QD,#`(E\)`2)+"3H_/___XU7)+@`````Q@00 -M`(/``8/X$'7TC5X$QD<D%<9')1&(7RC&1RD`C7<\#[;;B5\@QT=D`````(M4 -M)"B+0@B)1S2)5U#'1"0$`````(DT).C\____B5PD#(M$)"B+4!"+0`R)1"0$ -MB50D"(DT).C\____N`$```"#Q"Q;7E]=PY"0D)"0D%.+7"0(BT0D#(G"9HE# -M!,9#"@!FQT,(``!FA<!T&H/J`;D`````BP-FB10(@\$"@^H!9H/Z_W7N6\.- -MM@````!64XM<)`R+1"00B<9FB4,$QD,*`6;'0P@``&:%P'0BN@````"Y```` -M`(VT)@````"+`V:)%`B#P@&#P0)F.?)U[UM>PXVV`````(V_`````%.+7"0( -M@'L*`74J#[=#"`^WR(L3#[<42H/``6:)0PAF.T,&<@9FQT,(``!F@VL$`0^W -MPNL4BQ,/MT,$@^@!9HE#!`^WP`^W!$);PY"-="8`@^P(B1PDB70D!(M<)`R+ -M3"00B<Z`>PH!=28/MU,$#[=#"`'"#[=#!HG&B=#!^A_W_HL#9HD,4&:#0P0! -MZQ:)]@^W0P0/M\B+$V:)-$J#P`%FB4,$BQPDBW0D!(/$",.0BT0D!&:#>`0` -M#Y3`#[;`PXM$)`2+"#G(=0>Y`````.L*BQ&+002)0@2)$(G(PXGV5U93BU0D -M$(M,)!0/MGPD&(GXA,!T-@^V`HG3O@`````Z`704ZQ\/ME,!#[9!`8/#`8/! -M`3C"=0V#Q@&)\HGX.,)UX^L'N`````#K!;@!````6UY?PXUT)@"-O"<````` -MBT0D!,9``0"+5"0(B%`"QT`$`````,.)]HV\)P````!55U93BTPD%(M\)!B+ -M;"0<BW0D(`^V40$/ML*-!$#!X`*)PP-9"(/"`8A1`0%Q!+@`````Q@08`(/` -M`8/X#'7TB3N):P2)\(A#"(GR#[;&B$,)P>H0@^(_#[9#"H/@P`G0B$,*6UY? -M7<.-M"8`````BU0D!`^V0@$Z`@^2P`^VP,/K#9"0D)"0D)"0D)"0D)!3#[=, -M)`P/MEPD$(M4)`BX`````(!Z`O]U"&:)"HA:`NL,@\`!@\($9CV``'7F#[?` -M6\.-M@````"-O"<`````@^P<B5PD#(ET)!")?"04B6PD&(ML)""+3"0HBUPD -M+`^W1"0DC52%`(!Z`O]U"&:)"HA:`NL9#[;#B40D"`^WP8E$)`2)+"3H_/__ -M_P^WP(M<)`R+="00BWPD%(ML)!B#Q!S#C;8`````C;PG`````%,/MUPD#`^V -M3"00BU0D"+@`````.$H"=1=F.1IU$L9"`O]FQP+__^L3C;0F`````(/``8/" -M!&8]@`!UV`^WP%O#ZPV0D)"0D)"0D)"0D)"05E.+7"0,#[=T)!`/MDPD%+H` -M````B=`X3),"=09F.323=`Z#P`&#P@&!^H````!UY&8]@`!U!;B``0``#[?` -M6U[#C;0F`````(V\)P````"#[!")'"2)="0$B7PD"(EL)`R+;"04#[9%)#P( -M=$@\*'1$/*@/A!8!```\B(UT)@`/A%H!```\"G0L/"J-="8`="0\J@^$]@`` -M`#R*C70F``^$.@$``#PO=`P\CXUT)@`/A>@!```\+P^$E0```#PO=R(\"G1D -M/`IW"CP(C70F`'5$ZU8\*'1[/"J-M@````!U-.MO/(\/A/0````\CXGV=Q4\ -MB`^$Y@```#R*C70F`'44Z=D````\J(VT)@````!T?CRJ='J^`````+\````` -MN`````#I9@$```^V12;!X`@/ME4G"=`/ME4E@^(?P>(0"=")QK\`````#[9% -M*.D]`0``#[95)L'B&`^V12?!X!`)P@^V12D)P@^V12C!X`@)PHG6OP`````/ -MMD4KP>`(#[95+`G0Z04!``"0C70F``^V52;!XA@/MD4GP>`0"<(/MD4I"<(/ -MMD4HP>`("<*)UK\`````#[95*L'B&`^V12O!X!`)P@^V12T)P@^V12S!X`@) -MT.FV````C;8`````#[9%)HG"N`````#!XA@/MDTGB<NY`````,'C$`G("=H/ -MMDTMNP`````)R`G:#[9-*(G+N0````#!XP@)R`G:#[9-*8G+N0`````)R`G: -M#[9-*KL`````#Z3+&,'A&`G("=H/MDTKNP`````/I,L0P>$0"<@)V@^V32R[ -M``````^DRPC!X0B)Q@G.B=<)WP^V52[!XA@/MD4OP>`0"<(/MD4Q"<(/MD4P -MP>`("="-=@")=5B)?5R)16!F@TT2`8L<)(MT)`2+?"0(BVPD#(/$$,/K#9"0 -MD)"0D)"0D)"0D)!64XMT)`P/MT0D$+K_____9H7`="VZ_____[D`````@^@! -M#[?`C5@!#[8$,3'0#[;`P>H(,Q2%X`L``(/!`3G9=>:)T%M>PXGVC;PG```` -M`%.#[$B+7"10#[9#,XE$)$0/MD,RB40D0`^V0S&)1"0\#[9#,(E$)#@/MD,O -MB40D-`^V0RZ)1"0P#[9#+8E$)"P/MD,LB40D*`^V0RN)1"0D#[9#*HE$)"`/ -MMD,IB40D'`^V0RB)1"08#[9#)XE$)!0/MD,FB40D$`^V0R6)1"0,#[9#)(E$ -M)`B)7"0$QP0D;`(``.C\____#[=#$(E$)`3'!"1-`0``Z/S___^#Q$A;P^L- -MD)"0D)"0D)"0D)"0D%.#[!B+5"0@BTPD)`^V00&(0@$/MD$"B$("BT$$B4($ -MBUH(#[9"`8T$0,'@`HM1"(E$)`B)5"0$B1PDZ/S___^#Q!A;PXUT)@"-O"<` -M````4XM4)`B+6D0/MDH\N`````#&!!``@\`!@_AP=?2)6D2(2CQ;PXUT)@"- -MO"<`````BU0D!+@`````C;0F`````,8$$/^#P`$]``(``'7R\\.+1"0$N0`` -M```[`'0-BT@$BQ&+002)0@2)$(G(PY"0D%.+3"0(BQF+@P0!``")PH'B?O_^ -M_XF3!`$``"5^__+_BU$$B0*+402)0@R+402)0A"+402)0A2+402)0AB+402) -M0@2+`8N`5`$``*,`````)?X`__^+$8F"5`$``%O#D%.+7"0(#[9,)`R+`XN0 -M!`$``(D5``````^W0R1F/8!D=`YF/8"1=`AF/8"4=1.)]@^VR8/!"+@!```` -MT^`)PNL/#[;)@\$,N`$```#3X`G"BP.)D`0!``!;PXVV`````%.+7"0(#[9, -M)`R+`XN0!`$``(D5``````^W0R1F/8!D=`YF/8"1=`AF/8"4=1.)]@^VR8/! -M"+C^____T\`APNL/#[;)@\$,N/[____3P"'"BP.)D`0!``!;PXVV`````(/L -M"(D<)(ET)`2+="0,#[9,)!"`^?]T;H#Y'W<SBYX8`0``N@$```#3XHG0]]`A -MV(F&&`$``(N&6`$``*,`````(=!T08F&6`$``.LYC78`BYX<`0``#[;!@^@@ -MN@$```")P=/BB=#WT"'8B88<`0``BX9@`0``HP`````AT'0&B89@`0``BQPD -MBW0D!(/$",/K#9"0D)"0D)"0D)"0D)"#[!R)7"0,B70D$(E\)!2);"08BVPD -M*`^V5"0DBT0D((LX@/H#=GP/MMK!XP.-M!\``@``QP8,`0``QP0D$"<``.C\ -M____C9P?!`(```^V50/!XA@/MD4"P>`0"<(/MD4`"<(/MD4!P>`("<*)$\<& -M$`$``,<$)!`G``#H_/___P^V50?!XA@/MD4&P>`0"<(/MD4$"<(/MD4%P>`( -M"<*)$^MZ#[;:P>,#C;0[``(``,<&#`$``,<$)!`G``#H_/___XV<.P0"```/ -MME4#P>(8#[9%`L'@$`G"#[9%``G"#[9%`<'@"`G"B1/'!A`!``#'!"00)P`` -MZ/S___\/ME4'P>(8#[9%!L'@$`G"#[9%!`G"#[9%!<'@"`G"B1.+7"0,BW0D -M$(M\)!2+;"08@\0<P^L-D)"0D)"0D)"0D)"0D(/L'(E<)!2)="08BW0D(`^V -M7"0DB5PD!(DT).C\____QP0D$"<``.C\____B5PD!(DT).C\____BUPD%(MT -M)!B#Q!S#C;8`````C;\`````55=64X/L#(ML)"`/ME0D)`^V1"0HB$0D"XM% -M`(!])@`/A$(!``"-F(0!``"-N-`!``"^``````^VTHE4)`2)]HM$)`2)\=/X -MJ`$/A`,!``"#_@-V#HL#HP````"#X/Z)`^L,BP.C`````(/@_HD#QP0D$"<` -M`.C\____@'PD"P!T/H/^`W8.BP>C`````(/(`HD'ZPR+!Z,`````@\@"B0>) -M^H/^`W8)BP*C`````.L'BP*C`````*@"=&3KY8GV@_X#=BS'@ZP````````` -MQP0D$"<``.C\____BX.P````HP````"#R`&)@[````#K-,>#S`````````#' -M!"00)P``Z/S___^+@]````"C`````(/(`8F#T````.LCC78`@_X#=AO'0_P! -M````BP.C`````(/(`8D#ZQF-M@````#'0_P!````BP.C`````(/(`8D#@\8! -M@\,(@\<$#[9%)CGP#X?8_O__@\0,6UY?7<-64X/L!(M,)!0/MEPD&(M$)!"+ -M,(/Y`W87C93.@`$``(L"HP````"#X/Z)`NL5B?:-E,Z``0``BP*C`````(/@ -M_HD"A-MT68/Y`W85C92.T`$``(L"HP````"#R`*)`NL3C92.T`$``(L"HP`` -M``"#R`*)`HV$CM`!``"0C70F`(/Y`W8+BQ")%0````#K"9"+$(D5`````/;" -M`G1SZ^&0@_D#=C6-',T`````C80S,`(``,<``````,<$)!`G``#H_/___XV< -M,S0"``"+`Z,`````@\@!B0/K-HT<S0````"-A#-0`@``QP``````QP0D$"<` -M`.C\____C9PS5`(``(L#HP````"#R`&)`XUV`(/$!%M>PY"0D)"0D)"0D)!3 -MBTPD"(L9#[>!E`L``(/``6:)@90+``!F.X&8"P``<@EFQX&4"P`````/MX&4 -M"P``P>`"`X&,"@``BU0D#(L2B1`/MX&4"P``B8,L`0``6\/K#9"0D)"0D)"0 -MD)"0D)!64XM,)!@/MU0D$`^V="04BUPD#+@`````C;0F`````,8$"`"#P`&# -M^`1U]&:!XO\/#[<!9B4`\`G09HD!#[93"<'B#(L!)?\/\/\)T(D!#[9#!H/@ -M`H/X`1G2@^("@\(!P>(%#[9!`X/@'PG0@\@0@^#WB$$#]D,&`706B?*#XG_! -MX@0/MT$"9B4/^`G09HE!`EM>PXUT)@"-O"<`````BTPD!(M4)`BX`````(UV -M`,8$$`"#P`&#^`UU]`^V026(`@^V02:(0@$/MD$GB$("#[9!*(A"`P^V02F( -M0@0/MD$JB$(%#[9!*XA"!O9!9@1T(P^V02R(0@@/MD$MB$()#[9!+HA""@^V -M02^(0@L/MD$PB$(,N`$```##D(UT)@!55U93BVPD%(M\)!BZ`````+X!```` -MZU`!THG8T_BH`700]\(````!=1:!\G<GVP#K#O?"`````70&@?)W)]L`@^D! -M@_G_=="#Q@&#_@EU&(G0P>@0B$4`B=#!Z`B(10&(50);7E]=PP^V7#[_N0<` -M``#KI(VV`````(V_`````(M$)`2+@$0*``"+$(M0!(M0"(M`#*,`````PY"- -M="8`5U93@^P0BWPD((MT)"2+1E0/ME\KA-MT)@^V4`FY`````/;"`701ZQ:- -MM"8`````B=#3^*@!=0>#P0$XV77QQD8F#(ET)`2)/"3H_/___X/$$%M>7\.- -M=@"-O"<`````@^P,BT0D$(L09L=`,@$`QD`F'8E$)`2)%"3H_/___X/$#,.- -MM@````"-O"<`````5E.#[!2+1"0@BS`/MT0D),'@`@.&T`4``(L8A=MT1(L6 -M#[=#'F;!Z`4/M\"-!(4``P``B8)P`0``BQ8/MTL>@^$?N`$```#3X(F"=`$` -M`,=$)`@`````B5PD!(DT).C\____@\046U[#C;0F`````%575E.#[!R+;"0P -M@'TK`'0KN0````"+1"0T]D`)`700ZQJ+5"0T#[9""=/XJ`%U#(/!`0^V12MF -M.<AWYHM4)#2+0BB%P'0E@\!8BU44B40D!(D4).C\____BU0D-(M"*(E$)`2) -M+"3H_/___XM$)#2#P#B+5"0T.4(X#X1U`0``B40D&(M$)!B)!"3H_/___XG& -M@W@@``^$-`$``(!X3P`/A)D```!F@WU<``^$C@```+\`````C02]``````.% -MT`4``(L8A=MT9P^W0Q!F.T8<=5UF/84`=U</M\"`O"B\!```_W1*BU4`#[=# -M'F;!Z`4/M\"-!(4``P``B8)P`0``BU4`#[=+'H/A'[@!````T^")@G0!``#& -M0Q0AQT0D"`````")7"0$B2PDZ/S___^#QP$/MT5<.?@/CW?___^+1B#'0&`` -M````]D8H!'4AB2PDZ/S___^+1B#'1"0(`0```(E$)`2)+"3H_/___XGVBT8@ -M#[90`@^V0`&)5"0(B40D!,<$)%H!``#H_/___XM&((N52`4``(E$)`B)5"0$ -MQP0D`0```.C\____BT8@BY5(!0``B40D"(E4)`3'!"0&````Z/S____'1B`` -M````BU0D-(!J"@&)="0$B2PDZ/S___^+5"08BT0D-#E0.`^%C_[__XM$)#3' -M0"@`````BT4`BXA8`0``B0T`````A<ET"8M%`(F(6`$``(/$'%M>7UW#C;8` -M````C;\`````5U93@^P@BW0D,(L^#[9?*X3;=#&-AYP+``"Y`````#GP=1GK -M(`^VP8G"P>(&C82"D`L``(U$!PPY\'0.@\$!.-EUXNL%N0`````/MM&)T,'@ -M!HT$D(N,!Z`+``"%R0^$?@```/9!!@)T>(V$!YP+```Y01AU;`^V032$P'0( -M@\`!B$$TZUR+42R#ZB"-62R-0B`YV'1,@WH,`'4YZPB)]H-Z#`!U+\9!-`'' -M1"00``````^V@HL```")1"0,B50D"(E,)`2+AP0*``")!"3H_/___^L-BU(@ -M@^H@C4(@.=AUOH/$(%M>7\.-M"8`````@^P<B5PD#(ET)!")?"04B6PD&(M< -M)""+?"0DBT=,BV@<#[=7$&:!^H4`=W0/M\(/MH0#O`0``#S_=&5F@_I_=Q\/ -MML"+DWP%``!IP"0!``"+1!`L#[9`!.M+C;8`````9H'Z@0!W&0^VP(N3M`4` -M`&G`%`T``(M$$`@/MD`$ZR4/ML"+DY@%``!IP+````"+1!!4#[9`!.L,C;0F -M`````+C_````#[:T&$(%``"+1U"%P'0,B40D!(D<).C\____B7PD!(D<).C\ -M____B6PD!(GR#[;":\!<C80#3`$``(D$)/^5G````(M<)`R+="00BWPD%(ML -M)!B#Q!S#C70F`(/L'(E<)`R)="00B7PD%(EL)!B+="0DBUPD*`^W;"0L9H%^ -M).$!=1`/MD8F@^@1OP`````\`78NBT0D((L0B[I\!0``#[=&$+G<(@$`9CV% -M`'<1#[?`#[:$`KP$``!IR"0!```!S\9#!`6`8P7^@"/?N`````!F@7XDX0%U -M$@^V1B:#Z`$\`0^6P`^VP(UV`,'@!P^V$X/B?PG"B!,/MD9F@^`!P>`&@^*_ -M"<*($_9&9@%T#HD\).C\____9HE#".L$9HEK"`^W0PB(1A5F@7XDX0%U*P^V -M5B:-0O\\`7<0#[96)X/B#^LIC;0F`````(U"[[H/````/`%V%HUT)@"Z```` -M`(-_-`!T!P^V5TV#X@\/M@.#X/`)T(@#BUPD#(MT)!"+?"04BVPD&(/$',.# -M[#R)7"0LB70D,(E\)#2);"0XBUPD1`^V0R0\"'01/"AT#3RH=`D\B'4+D(UT -M)@"#2V0*ZQX\"G06/"J-="8`=`X\JG0*/(IU"HVV`````(-+9`(/MWLD9H'_ -MX0%U&0^V0R:#Z!$\`7<.@TMD"+@`````Z7T%``"+0R0E____`(E$)"`]X0$0 -M``^%Y`````^W4Q!F@?J%``^',@4```^WPHMT)$`/MHP&O`0``+C_____@/G_ -M=&EF@_I_=QT/ML&+="1`BY9\!0``:<`D`0``BT00+`^V0`3K1F:!^H$`=QT/ -MML&+="1`BY:T!0``:<`4#0``BT00"`^V0`3K(@^VP8MT)$"+EI@%``!IP+`` -M``"+1!!4#[9`!(VT)@`````/ML"+5"1`#[:$`D(%``!KP%R-M`),`0``BY*T -M!0``#[;!:<`4#0``QT0D)`````#V1`(U$`^%2@(``,9#%`2+5"1(QP(````` -MN`$```#I@@0```^W4Q"Y_P```+C_____9H'ZA0!W?@^WPHMT)$`/MHP&O`0` -M`+C_____@/G_=&)F@_I_=QT/ML&+="1`BY9\!0``:<`D`0``BT00+`^V0`3K -M/V:!^H$`=QT/ML&+="1`BY:T!0``:<`4#0``BT00"`^V0`3K&P^VP8MT)$"+ -MEI@%``!IP+````"+1!!4#[9`!`^VR0^VP(E$)"B+5"1`#[:L$$(%``!KQ5R- -MM`),`0``#[?!:<`D`0```X)\!0``B40D)&:!_^$!=0L/MD,F@^@!/`%V*6:! -M^?\`=`J+3"0D]D$G!'48QD,4!HMT)$C'!@````"X`0```.F$`P``BU0D)`^V -M0B2)PH/B!8/Z!74ABTPD0`^V02PZ039R%(MT)$C'!@$```"X`0```.E1`P`` -M@WPD)``/A/8```"#^@4/A>T```")7"0$BT0D)(D$).C\____A,!U&,9#%`2+ -M5"1(QP(`````N`$```#I$0,``(M,)"2`>4\?=A2+="1(QP8!````N`$```#I -M\P(``/9#9@%T$VO%7(M4)$#VA`)4`0```707ZV!KQ5R+3"1`]H0!5`$```$/ -MA!@"``"+="0HB70D!(M$)$")!"3H_/___X3`=!2+5"1(QP(!````N`$```#I -MF0(``/9#9@$/A.(!``!KQ5R+3"1`]H0!5`$```$/A,T!``"+="0DB30DZ/S_ -M__]F@_@?#X:W`0``BT0D2,<``0```+@!````Z5`"``#V1@8"=#6!?"0@X0$0 -M``^$CP$``(M4)"0/MD)/.D).<BB+3"1(QP$!````N`$```#I&P(``(VV```` -M`(%\)"#A`1``#X1:`0``BW0D)`^W1CJ`>R3A#X5(`0``@'LE`0^%/@$``-'H -MB<*#X@$/MD,F@^@&/`D/AQ`!```/ML#_)(7@#P``QT0D$`$```#'1"0,`0`` -M`(E<)`B+1"0DB40D!(M4)$")%"3H_/___X3`#X7N````BTPD2,<!`@```+@! -M````Z8<!``#'1"00`0```,=$)`P`````B5PD"(MT)"2)="0$BT0D0(D$).C\ -M____A,`/A:H```"+5"1(QP("````N`$```#I0P$``,=$)!`!````#[;"B40D -M#(E<)`B+3"0DB4PD!(MT)$")-"3H_/___X3`=6N+1"1(QP`"````N`$```#I -M!`$``,=$)!``````#[;"B40D#(E<)`B+5"0DB50D!(M,)$")#"3H_/___X3` -M=2R+="1(QP8"````N`$```#IQ0```,9#%`2+1"1(QP``````N`$```#IK0`` -M`(M$)$`%0`D``(D$).C\____A,!T%(M4)$C'`@$```"X`0```.F$````@'LD -MX750@'LE`75*@'LF#W5$@'LI`74^#[9#*,'@"`^V4R<!T`^WP(E$)`2+3"1` -MB0PDZ/S___\[0TAU!(7`=17&0Q0$BW0D2,<&`````+@!````ZRZX`````.LG -MB?:+5"1`#[:"008``&O`7(VT`DP!``"+DK0%``"X[`8-`.E3^___BUPD+(MT -M)#"+?"0TBVPD.(/$/,.-M"8`````@^P<BT0D+(E$)`R+1"0HB40D"(M$)"2) -M1"0$BT0D((L`B00DZ/S___^#Q!S#C78`55=64X/L3(ML)&2+1"1@BYAH"@`` -M9L=%'O\/C40D,(E$)`B);"0$BU0D8(D4).C\____A,!T"8M$)##IXPL``(M% -M)"7___\`/>$!$``/A=T```#'!"2($P``Z/S___\/MU409H'ZA0`/AXP+```/ -MM\*+="1@#[:,!KP$``"X_____X#Y_W1B9H/Z?W<=#[;!BWPD8(N7?`4``&G` -M)`$``(M$$"P/MD`$ZS]F@?J!`'<=#[;!BW0D8(N6M`4``&G`%`T``(M$$`@/ -MMD`$ZQL/ML&+?"1@BY>8!0``:<"P````BT005`^V0`0/ML"+5"1@#[:$`D(% -M``!KP%R-A`),`0``B40D&(N2M`4```^VP6G`%`T```'"B50D(,=$)!P````` -MQT0D)`````#I8@$```^W51"Y_P```&:!^H4`=P\/M\*+?"1@#[:,![P$```/ -MMW4D9H'^X0%U#P^V12:#Z!$\`0^&N````&:!^H4`=W,/M\*+?"1@#[:$![P$ -M```\_W1@9H/Z?W<9#[;`BY=\!0``:<`D`0``BT00+`^V0`3K1F:!^H$`=QT/ -MML"+?"1@BY>T!0``:<`4#0``BT00"`^V0`3K(@^VP(M\)&"+EY@%``!IP+`` -M``"+1!!4#[9`!.L%N/____\/ML"+5"1@#[:$`D(%``!KP%R-A`),`0``B40D -M&`^WP6G`)`$```."?`4``(E$)!QF@?[A`75$ZS`/M\%IP+````"+3"1@`X&8 -M!0``B40D)(MP5(ET)!C'1"0<`````,=$)"``````ZT$/ME4FC4+O/`%V)HU" -M_SP!=A]F@?G_`'0*BWPD'/9')P1U#L9%%`:X`````.FA"0``QT0D(`````#' -M1"0D`````(U$)$B)1"0$BT0D8(D$).C\____9HE$)!9FB44>BU0D8(D4).C\ -M____B40D*+@"````@WPD*``/A%0)``"+3"0HB4U4#[=T)!:)="00:<:P!``` -MC3P8C4<@BU0D8"N":`H``(G"P?H?BTPD8`.!;`H``!.1<`H``(M,)$B)02"+ -M3"1(B5$DBUPD*(M##(M3$(M,)$B)02B+3"1(B5$LBT0D2`^W="069HEP"+@` -M````Q@0X`(/``3VP!```=?)F@7TDX0%U:`^V12:#Z!$\`7==C40D-XE$)`R+ -M1"1(#[9`"(E$)`B);"0$BT0D'(D$).C\____C8<@!```BU0D8"N":`H``(G" -MP?H?BTPD8`.!;`H``!.1<`H``(M,)$B)01"+3"1(B5$4Z68!``"0BUPD&`^V -M4P;VP@%U)XM%)"7___\`/>$!$``/A.8```"+="0<#[9&)(/@!8/X!0^%T@`` -M`/9%9B!T$HU$)#>)1"0$B2PDZ/S____K)(U$)#>)1"0,BT0D2`^V0`B)1"0( -MB6PD!(M$)!R)!"3H_/___XV'(`0``(M4)&`K@F@*``")PL'Z'XM,)&`#@6P* -M```3D7`*``"+3"1(B4$0BTPD2(E1%&:!?23A`74/#[9%)H/H$3P!#X:K```` -MBUPD'`^V4R2)T(/@!H/X!@^%E0```/;"`0^$C````(GXBW0D8"N&:`H``(G" -MP?H?`X9L"@``$Y9P"@``BTPD2(E!&(M,)$B)41SK7_;"`G1:B?B+7"1@*X-H -M"@``B<+!^A\#@VP*```3DW`*``"+3"1(B4$8BTPD2(E1'(V'(`0``"N#:`H` -M`(G"P?H?BTPD8`.!;`H``!.1<`H``(M,)$B)01"+3"1(B5$4BT0D2(!(`0(/ -MME4]BT0D2&:)4`*`?3T`=#B^`````+L`````BT0D*(M("(M51(L$&HD$&8M$ -M&@2)1!D$BT0:"(E$&0B#Q@&#PPP/MD4].?!WTHM5((M$)$B)4`QF@7TDX0%U -M5P^V12:#Z!$\`7=,#[=$)!:)1"0,BT0D2(E$)`B);"0$BU0D&(D4).C\____ -MC40D-XE$)`R)?"0(B6PD!(M,)!B)#"3H_/___XM<)!B`8PC^Z<0$``")]HMT -M)!@/MD8&J`(/A$0$``"+1"1(QD`&_HM$)$B`8`?^@WPD'``/A,4```"+1"0< -M#[90)(G0@^`&@_@O````]L(!#X2F````#[=$)!:)1"0,BT0D2(E$)`B) -M;"0$B30DZ/S____V168!=`^+1"1(#[=`",'@`XA$)#B-1"0WB40D#(E\)`B) -M;"0$BU0D&(D4).C\____]D5F`70*BTPD&(!)"`'K"(M<)!B`8PC^Q@>ABW0D -M'`^VAK8```"#X`\/ME<!@^+P"<*(5P$/MT8<@\`!9L'`"&:)1P*)\X'#H``` -M`.E:`P``C;0F`````&:!?23A`0^%*0(```^V128\#W02NP`````\$`^%,@,` -M`.FP````#[95*,'B"`^V12<!PHM$)$C&0`0-BT0D2(!@!?Z`3"1'"(M<)$@/ -MMD45BW0D8`^VCN(```#3X&8)0PB+3"1(#[9!`8/@'X/(((A!`8M%*HF'.`0` -M`(M%+HF'/`0``&;!P@AFB9=$!```#[9%*8B'0@0``,8'D8M4)!P/MT(<@\`! -M9L'`"&:)1P*+3"0<#[:1M@```(/B#P^V1P&#X/`)T(A'`8G+@<.@````Z7T" -M``"+5"1(#[9%%8M<)&`/MHOB````T^!F"4((Q@>!9L='`O__BW0D(`^VEHL` -M``"#X@\/MD<!@^#P"="(1P&#?30`=0[&110AN`````#I+00``/9%)P%T+HM= -M.(7;=">)7"0$BU0D8(N"!`H``(D$).C\____@^`/#[97`8/B\`G"B%<!ZP2+ -M7"0@BU4T#[9"`;X0````/(`/A((````\@'<>/!5W$3P0C70F`'-F@^@"/`%W -M1.M6/!>-=@!W.^M;/(5T+CR%C;8`````=Q`\@71"/()U(XVV`````.LB/)!R -M%[XH````/)*-=@!V,CR3=0>^C````.LGO@0```#K(`^V0@2--(4(````ZQ.^ -M"````.L,O@P```#K!;X<````B?+!Z@*+1"1(B%`$BTPD2&;!Z@B#X@$/MD$% -M@^#^"="(006-ER`$``"+132)="0(B40D!(D4).C\____Z1X!```/MD4D@^@$ -M/*MW/0^VP/\DA0@0```/MD4LP>`(#[95+8T,$(/Y#7<6N`$```#3X*G8/@`` -M=`B+1"1(@$@!!(M$)$B`2`$!ZPB+1"1(@&`!^XM$)$C&0`0-BT0D2(!@!?Z+ -M5"1(#[9%%8M<)&`/MHOB````T^!F"4((BT0D2(!@`1_&AR`$```&BUPD'('# -MH````(E<)`2-AR$$``")!"3H_/___XE<)`2-AR4$``")!"3H_/___XV/1`0` -M`(U5)(M%)(F'1`0``(M"!(E!!(M""(E!"(M"#(E!#(MT)!R+AJ@```")AS@$ -M``"+AJP```")ASP$``#&!Y$/MI:V````@^(/#[9'`8/@\`G0B$<!#[=&'(/` -M`6;!P`AFB4<"A=MT>XL#B4<$BT,$B4<(ZVZH`71J#[=$)!:)1"0,BT0D2(E$ -M)`B);"0$BT0D&(D$).C\____]D5F`70/BT0D2`^W0`C!X`.(1"0XC40D-XE$ -M)`R)?"0(B6PD!(M4)!B)%"3H_/____9%9@%T"HM,)!B`20@!ZPB+7"08@&,( -M_HMT)&"+AM`%``"+?"00B2RX#[=4)!9FP>H%#[?2#[=<)!:)V8/A'[@!```` -MT^`)A);4!0``BT4D)?___P`]X0$0`'4TC40D1(E$)`S'1"0(`````(E<)`2+ -M1"08B00DZ/S___\/MD0D1X/@'X/(0(A$)$?IQ0```&:!?23A`75%#[9%)H/H -M$3P!=SJ+5"0DB50D!(M,)&")#"3H_/___XU$)$2)1"0,BW0D)`^V1C2)1"0( -MB5PD!(M\)!B)/"3H_/___^MXBT0D'(E$)`2+5"1@B10DZ/S___^-1"1$B40D -M#(M,)!P/MD%"B40D"(E<)`2+7"08B1PDZ/S___^+="0<#[96)(G0@^`&@_@& -M=2[VP@%T*0^V1"1'@^`?@\A@B$0D1P^V5D*#XG_!X@0/MT0D1F8E#_@)T&:) -M1"1&C40D1(E$)`2+?"1@B3PDZ/S___^X`P```.LIBU0D8`^V@D$&``!KP%R- -MA`),`0``B40D&(N2M`4``+CL!@T`Z?+T__^#Q$Q;7E]=PY"-="8`55=64X/L -M'(MT)##'1"04`````(V^Z````.FB`0``B?:)/"3H_/___XG#@WA,`'4PB30D -MZ/S___^)0TR%P'4AC9;H````BX;H````B5@$B0.)4P2)GN@```#IB`$``(GV -MBT,D)?___P`]X0$0``^$TP````^W0Q!F/8``#X3%````#[;09HE3$&:#^G]V -M$V:!>R3A`74B#[9#)H/H$3P!=Q=F@?J%`'<0#[?"#[:,!KP$``"`^?]U&,9# -M%`:)7"0$B30DZ/S____I\P```(UV``^W:R1F@?WA`745#[9#)HA$)!N#Z!$\ -M`0^'X````.L5#[;!:<`D`0```X9\!0``B40D%.L,#[9$)!N#Z`$\`78U9H'Z -M@`!T+F:!_>$!=0L/MD,F@^@1/`%V'(M$)!3V0"<$=1+&0Q0&B5PD!(DT).C\ -M____ZWJ)7"0$B30DZ/S___^#^`)W"X/X`7,FC70F`.L0@_@#=5F)]HV\)P`` -M``#K08E<)`2)-"3H_/___XGVZSZ#>U0`=`^-0U2)1"0$B30DZ/S___^-EN@` -M``"+AN@```")6`2)`XE3!(F>Z````.LSB5PD!(DT).C\____D#F^Z`````^% -M5/[__^L8#[;!:<`D`0```X9\!0``B40D%.D?____@\0<6UY?7<.)]H/L/(E< -M)"R)="0PB7PD-(EL)#B+?"1`BW<LBRX/MD8(J!!T#,:'M`````;IDP(```^V -ME[0```"`^@$/A(,```"`^@%R&X#Z!`^$J@```(#Z!@^%PP(``.EG`@``C70F -M`,:'M`````&)?"0$B2PDZ/S___^+1"1$QD`4@8!."`B#>%0`=!.+1"1$@\!4 -MB40D!(DL).C\____BX7H````BU0D1(E0!(D"C87H````B4($B97H````B2PD -MZ/S____I5P(``(/@]XA&"("'MP````'&A[0`````BTPD1,9!%`*)3"0$B2PD -MZ/S___^)+"3H_/___^DB`@``QH>W`````(M$)$2#>%0`=`^#P%2)1"0$B2PD -MZ/S___^+3R"%R0^$H`$``(M1!(U"`8E!!(/Z!0^'C@$``(N%Z````(M4)$2) -M4`2)`HV%Z````(E"!(F5Z````(!_)O]T)HM'-(7`=`:`>"8`=!F)?"0(QT0D -M!`(```")-"3H_/___^F;`0``#[9&"(/@]X/($(A&"(M7,(72=0V`?@H`=3#I -M`@$``(GVQT0D$`````#'1"0,`@````^V1TV)1"0(B50D!(DT).C\____Z5$! -M``#'1"0@`````,9$)"<`C4XXB4PD'(M$)!R)!"3H_/___XE$)"B+1CR+5"0H -MB58\BTPD'(D*B4($B1"+0B"%P'0BB40D"(N%2`4``(E$)`3'!"0%````Z/S_ -M__^+1"0H@$@H`HM4)"B)5"0(QT0D!`8```")-"3H_/___XM,)"B`>4\`=$"+ -M7"0@@\,!@7PD('^6F`!W*XGVB2PDZ/S____'!"0!````Z/S___^+1"0H@'A/ -M`'0+@\,!@?N!EI@`==>)7"0@@$0D)P$/ME0D)SA6"@^'/?___XM'-(7`=1+& -M1R8#B7PD!(DL).C\____ZV&)!"3H_/___^M7#[9?)H!F".^+A>@```"+3"1$ -MB4@$B0&-A>@```")002)C>@```")?"0(QT0D!`8```")-"3H_/___X#[_W40 -MB7PD"(ET)`2)+"3H_/___XDL).C\____BUPD+(MT)#"+?"0TBVPD.(/$/,.) -M]E575E.#[&R+M"2`````BY9\!0``N-PB`0"+C"2$````9H%Y$(4`=QF+G"2$ -M````#[=#$`^VA#"\!```:<`D`0``C3P"BY9$"@``@<)`"```#[9'0L'@"`'" -MBPJ)#0````")R,'H$(A$)$"+ED0*``"!PD`(```/MD="P>`(`<*+0@2C```` -M`(A$)%B)PL'J"(A4)%G!Z!"(1"1:BY9$"@``@<)`"```#[9'0L'@"`'"BT(( -MHP````"(1"1;B<+!Z@B(5"1<P>@0B$0D7<9$)%X`QD0D7P")S<'M&`^V7"1` -MBT0D7(E$)!"+1"18B40D#(EL)`B)7"0$QP0DQ`(``.C\____B=B#\`&)PH/B -M`70@@'PD0`!T&8N4)(0```#&0A0`N`````#IM`(``(UT)@"+C"2$````@'D4 -M@74SC40D6(E$)`R);"0(B5PD!(D,).C\____BYPDA````,9#%`*X`````.EV -M`@``C;8`````BXPDA````(M!)"7___\`/>$!#@!U#L9!%"&X`````.E,`@`` -MBX0DA````/9`9@%U,X32=2^`?R;_="F-1"18B40D#(EL)`B)7"0$BY0DA``` -M`(D4).C\____N`````#I#`(``(E\)`2)-"3H_/___XE\)`2)-"3H_/___XL6 -MBXPDA`````^W01YFP>@%#[?`C02%``,``(F"<`$``(L&BYPDA`````^W2QZ# -MX1^Z`0```(G5T^6)J'0!```/MT,>P>`"`X;0!0``QP``````#[=+'HG(9L'H -M!0^WP(/A'XG3T^.)V??1(8R&U`4``(NL)(0````/MTT>B<AFP>@%#[?`@^$? -MT^+WTB%4AF"+50"+102)0@2)$`^W11Z-ED`)``")1"0$B10DZ/S___^`;T\! -MQD44@8-]5`!T$8GH@\!4B40D!(DT).C\____C4<0.4<0#X3L````B40D+(V6 -M0`D``(E4)#R+3"0LB0PDZ/S___^)PXL6#[=`'F;!Z`4/M\"-!(4``P``B8)P -M`0``#[=+'H/A'[H!````B=73Y8L&B:AT`0``#[=#'L'@`@.&T`4``,<````` -M``^W2QZ)R&;!Z`4/M\"#X1^)U=/EB>GWT2&,AM0%```/MTL>B<AFP>@%#[?` -M@^$?T^+WTB%4AF`/MT,>B40D!(M$)#R)!"3H_/___X!O3P&#>U0`=`^-0U2) -M1"0$B30DZ/S___^-EN@```"+AN@```")6`2)`XE3!(F>Z````(M4)"PY5Q`/ -MA2+___^+C"2$````@6%D___^_\:'M`````2)3"0$B3PDZ/S___^X`0```)"- -M="8`@\1L6UY?7<.0C;0F`````%575E.#[$P/MVPD9(M4)&B)5"0PBT0D;(E$ -M)#2+?"1@BS>+AF@*``")1"04"U0D-`^$BP(```^WU6G"L`0``(M<)!2-#!CV -M02$"=!6-!)4``````X;0!0``BP#&0!0"ZQ.-!)4``````X;0!0``BP#&0!0A -MP>("B50D+(G0`X;0!0``BQ"+0B0E____`#WA`1``#X2*`0``#[="$&8]A0!W -M#P^WP`^VA`:\!```//]U%8M$)"P#AM`%``"+`,9`%`;I+@@```^VP&G`)`$` -M``.&?`4``(E$)!B`?"0S`'E=#[90)(G0@^`&@_@&=1_VP@%T&HL&BY!8`0`` -MB14`````A=)T"(L&B9!8`0``BP:+@%`!``"C`````(/(`HL6B8)0`0``BP:+ -M@`0!``"C`````(#,_XL6B8($`0``9O=!(`((#X3A````@'XK``^$UP```,9$ -M)!\`NP````"-=@")V@^VRP^V1PG3^*@!=$>`^P-V'(L&!=`!``"-!(B+`*,` -M````P>@4@^`!ZQJ-=@"+!@70`0``C02(BP"C`````,'H%(/@`83`=`NX`0`` -M`-/@"$0D'X/#`8U"`3A&*W>?@'PD'P!T8@^V1"0?.$<)=5B)Z&;!Z`4/M\") -MZ8/A'[H!````T^*%5(9@=3V+5"08@+JT`````G<'QH*T`````XM$)"P#AM`% -M``"+`(E$)`2+3"08B0PDZ/S____IT@8``,=$)!@`````]D0D,P$/A+\&``"+ -M1"0L`X;0!0``BPC&010ABT$D)?___P`]X0$.``^$G`8``(N61`H``('"0`@` -M`(M<)!@/MD-"P>`(`<*+`J,`````BY9$"@``@<)$"```#[9#0L'@"`'"BP*C -M`````(N61`H``('"2`@```^V0T+!X`@!PHL"HP````")3"0$B30DZ/S____I -M,P8```^W_8TLO0````"+AM`%```!Z(L09H%Z).$!#X4'`0``#[9:)H#[$`^' -M!@8``+@!````B=G3X*G`,```#X73````J0```0!U4?;$@`^$X@4``&G'L`0` -M`(M<)!2-#!@/MD$SB$(4B>@#AM`%``"+`/9`$P0/A+H%``"`>!0`#X2P!0`` -MBU`XA=(/A*4%```/MD$SB`+IF@4``&G'L`0``(M4)!2-/!")Z`.&T`4``(L0 -M#[9'*HA"%(GH`X;0!0``BP"#>#0`#X1H!0``#[:'(00``(D$).C\____B>H# -MEM`%``"+$HM2((G#.=!V`HG3C5<HB>@#AM`%``"+`(M`-(E<)`B)5"0$B00D -MZ/S____I'P4``(GH`X;0!0``BP#&0!0`Z0P%``")Z`.&T`4``(L`B40D((M( -M2(E,)"2X_____XM<)"!F@7L0A0!W%HGH`X;0!0``BP`/MT`0#[:$,+P$```/ -MML!IP"0!``"+GGP%```!P\:#M``````/ME,DB="#X`:#^`8/A70!``#VP@$/ -MA&L!``"+?"0@QD<4`/9'9B`/A(L$``"#?"0D``^$@`0``(M$)"3V0&4"#X2L -M````BU<@A=(/A*$```"+2%B%R708BT<TB50D"(E$)`2)#"3H_/___^F"```` -MBU0D((-Z-`!T>(M,)"2#>6@`=0:#>6P`=&B+?"0@BV\TBU0D)(M":(7`=`B) -MQ_9"90%T+8M,)"2+06R+ED@&``#'1"0(`0```(E4)`2)#"3_T+\`````A<!T -M!HN^2`8``(M'"(L7B50D"(EL)`2)!"3H_/___P,OBT<$@\<0A<!TWXN61`H` -M`('"0`@```^V0T+!X`@!PHL"HP````")PL'J$(M\)"2(5U/!Z!AFB4=(BY9$ -M"@``@<)$"```#[9#0L'@"`'"BQ*)%0`````/ML)FB4=,#[;&9HE'3HG0P>@0 -M#[;`9HE'4,'J&(A74HN61`H``('"3`@```^V0T+!X`@!PHL"HP`````/ML!F -MB4=*Z3(#``!IQ[`$``"+5"04C3P0#[9',X3`#X7,````B>@#AM`%``"+`,9` -M%`"+3"0@]D%F$`^$_0(``(-\)"0`#X3R`@``#[9',XM<)"2(0TKV0V4"#X3= -M`@``@WD@``^$TP(``(-[:`!U#X-[;`"0C70F``^$O@(``(M$)""+>#2+5"0D -MBT)HA<!T"(G#]D)E`70PBTPD)(M!;(N62`8``,=$)`@!````B50D!(D,)/_0 -MNP````"%P'0)BYY(!@``C78`BT,(BQ.)5"0(B7PD!(D$).C\____`SN+0P2# -MPQ"%P`^%3P(``.O9/`(/A0D"```/MD]`BT<XB40D1`^V5"1'#[9$)$3!X!@) -MP@^V1"1%P>`0"<(/MD0D1L'@"(G3"<.#X7^`^7%V-L9$)"D`@_L!=@L/MD=! -M@^`/B$0D*<9$)"H`@_L"=@@/ME="B%0D*H/[`W9<#[9/0XA,)"OK5\9$)"D` -M@_L"=@L/MD="@^`/B$0D*<9$)"H`QD0D*P"#^P=V,P^V1T>#P`@YPW8"B</& -M1"0J`(/[#'8(#[973(A4)"J#^PUV"@^V3TV(3"0KZP7&1"0K`(GH`X;0!0`` -MBP"`>!P`=$.%VW0_QD`4((GH`X;0!0``BP`/MD`<.-AS`P^VV(GH`X;0!0`` -MBP"+4#B%TG0CC4=`B5PD"(E$)`2)%"3H_/___^L.B>@#AM`%``"+`,9`%"*` -M?"0I!'4.B>@#AM`%``"+`,9`%`*+1"0@.7`8#X3]````@WPD)``/A/(```#V -M0&80=$8/MD<SBU0D)(A"2O9"90)T-8M,)"`/ME$<B=@XTW8"B="$P'0ABUPD -M)(M+8(7)=!8/ML"-5T")1"0(B50D!(D,).C\____@'PD*0MW60^V1"0I_R2% -MN!(``(M\)"3&1V8!Z88```"`?"0J!'41@'PD*P)U"HM$)"3&0&81ZVZ+5"0D -MQD)F`NMDBTPD),9!9A#K6HM<)"3&0V8+ZU"+?"0DQD=F!NM&BT0D),9`9@WK -M/#PH=1H/MD-/@^@!B$-.B>@#AM`%``"+`,9`%('K'CP(=0S'!"00)P``Z/S_ -M__^)Z`.&T`4``(L`QD`4(8/$3%M>7UW#C70F`%575E.#[$R+?"1@#[>'E@L` -M`&:)1"0<BP>+@$`!``"C`````&8E_P]FB8>6"P``9CM$)!QU38L'BXA0`0`` -MB0T`````BP>)B%`!``"X`````/?!`/__``^$O08``(E,)`3'!"1P`0``Z/S_ -M__^+5"1@B10DZ/S___^X`0```.F7!@``9H&_E@L``/\/#X4`!@``Z2$&``"+ -MGV@*``!F@T0D'`$/MTPD'&8[CYH+```9P"'!9HE,)!R+E[`*``"#P@0/M\&+ -M!(*)QL'N$/?&"`````^$J````(L'BY!0`0``B14`````BP>)D%`!``#WP@#_ -M_P!T7H!_*P!T6/;&`74OO@````#WP@```0!T.HGVZQX/M\:-2`B[`0```(G= -MT^6%ZG40C4@0T^.%VG4'ZQB^``````^WQFO`7(V<!TP!``"%VW4?ZPR#Q@$/ -MMD<K9CGP=[Z+1"1@B00DZ/S____I004``(M4)&")%"3H_/___XA#"^DM!0`` -MC;0F`````&8E_P]FB40D'@^WP&G(L`0``(M4"R"+3`LDB50D.(E,)#R-%(4` -M````BX?0!0```="+&(7;#X3K!```]\8@````#X1G`0``@'L4@0^%/P$``,9# -M%"$/MT,>P>`"`X?0!0``QP``````#[=+'HG(9L'H!0^WP(/A'[H!````B=;3 -MYHGQ]]$AC(?4!0``#[=+'HG(9L'H!0^WP(/A']/B]](A5(=@#[=#'HE$)`2+ -M;"0@B2PDZ/S___^#>U0`=`^-0U2)1"0$B3PDZ/S___\/MU,09H'ZA0`/A[0` -M```/M\(/MH0'O`0``#S_#X2A````9H/Z?W<;#[;`:<`D`0```X=\!0``BT`L -M@'@$_P^5P.M/#[=#$&8]@0!W(P^WP`^VA#B\!```:<`4#0```X>T!0``BT`( -M@'@$_P^5P.LB#[=#$`^VA#B\!```:<"P`````X>8!0``BT!4@'@$_P^5P(3` -M="V)7"0$B3PDZ/S___^-E^@```"+A^@```")6`2)`XE3!(F?Z````.F8`P`` -MB?:+1"0DBU`$C4,(BTPD)(E!!(E+"(E0!(D"Z7@#```/MT0D'F;!Z`4/M\") -M1"0H#[=L)!Z);"0LB>F#X1^X`0```-/@B40D,(M,)"B%1(]@#X5!`P``B=`# -MA]`%``"+``^W2!!F@?F%``^'GP````^WP0^VA`>\!```//\/A(P```!F@_E_ -M=Q@/ML!IP"0!```#AWP%``"+0"P/MD`$ZUV)T`.'T`4``(L`#[=`$&8]@0!W -M(`^WP`^VA#B\!```:<`4#0```X>T!0``BT`(#[9`!.LIB=`#A]`%``"+``^W -M0!`/MH0XO`0``&G`L`````.'F`4``(M`5`^V0`0\_W0-#[;`@+P'0@4``/]U -M/XML)#"+="0HA6RW8`^%=P(``,9#%`;'1"0$`````(D<).C\____QT0D"``` -M``")7"0$B3PDZ/S____I2@(```^VA`="!0``:\!<C80'3`$``(M4)#P+5"0X -M=!CWQ@(```!U$,=$)#@`````QT0D/`````#V0`8"#X1-`0``BU0D.(M,)#R) -M5"0(B4PD#(M,)"R)3"0$B00DZ/S___^+;"0PBW0D*(5LMV`/A=H!``"`>Q2! -M#X6%````#[=#'L'@`@.'T`4``,<```````^W2QZ)RF;!Z@4/M]*#X1^X_O__ -M_]/`(827U`4```^W0QZ)1"0$BT0D((D$).C\____B5PD!(D\).C\____@WM4 -M`'0/C4-4B40D!(D\).C\____C9?H````BX?H````B5@$B0.)4P2)G^@```#I -M2P$``(N'\````#M$)"1T5[X`````@\8!BP`Y1"0D=?6)\H32=$'&1"0W`(M, -M)"2)#"3H_/___XU(^(ML)"2+502)102)*(E0!(D".=EU!<9$)#<!B?`L`8G& -M=<^`?"0W``^%Z````(M,)"2+402-0PB)002)2PB)4`2)`HML)#"+="0H":RW -MH````.F_````BU0D.(M,)#R)5"0(B4PD#(M,)"R)3"0$B00DZ/S___^+A_`` -M```[1"0D=%.^`````(/&`8L`.40D)'7UB?"$P'0]QD0D1P"+5"0DB10DZ/S_ -M__^-2/B+;"0DBU4$B44$B2B)4`2)`CG9=07&1"1'`8GP+`&)QG7/@'PD1P!U -M0(![%(%T.HM,)"2+402-0PB)002)2PB)4`2)`HML)#"+="0H":RWH````.L4 -MC8?P````B40D)(V70`D``(E4)"`/MTPD'&8YCY8+```/A=_Y__^-A_`````Y -MA_````!T1XG&B30DZ/S___^#Z`@/MT@>B<MFP>L%#[?;@^$?NO[____3PB&4 -MGZ````#'1"0(`````(E$)`2)/"3H_/___SFW\````'6[B3PDZ/S___^X`0`` -M`(/$3%M>7UW#C;0F`````(V\)P````"#[!R)7"0,B70D$(E\)!2);"08BT0D -M((N82`4``(M#!(LHB2T`````]\4```"0=&B+0P2)*.MA@</$#```BP.+D%`! -M``")%0````"+`XF04`$``(72=#?WP@```!!T&8L#QX!0`0``````$(L#BX!0 -M`0``HP````"+`\>`4`$```$```")'"3H_/___P''@\8!@_X"=:'K#+\````` -MO@````#KF8GXA,`/E<"%[0^5P@G0#[;`BUPD#(MT)!"+?"04BVPD&(/$',.- -MM"8`````55=64X/L+(MT)$"+!HN`4`$``(E$)!2C`````(L&BU0D%(F04`$` -M`/=$)!0`__\`#X2Q!P``@'XK``^$IP<``,9$)"L`#[9L)"N-30BX`0```(G" -MT^*%5"04=0^-31#3X(5$)!0/A&D'``"`?"0K`W8>BP8%@`$``(T$Z(L`HP`` -M``#!Z!.#X`'K')"-="8`BP8%@`$``(T$Z(L`HP````#!Z!.#X`&$P'0;B30D -MZ/S___^)Z,'@!HT$J(&,!L0+``````@`BQ:`?"0K`W85C83J@`$``(L`HP`` -M```E```!`.L3C83J@`$``(L`HP`````E```!`(7`="N`?"0K`W82C83J@`$` -M`,<````!`.G]!@``C83J@`$``,<````!`.GK!@``@'XY`0^%UP4``(!\)"L# -M=AF+!@6``0``C03HBP"C`````(/@`>L7C78`BP8%@`$``(T$Z(L`HP````"# -MX`&$P`^$9`$``(GHP>`&C1RHC80>R`L``(M6%(E$)`2)%"3H_/___XN$'J`+ -M``"%P'0=BU`HA=)T%O9",@)U$(D$).C\____A,`/A1X!``")Z,'@!HT$J(N$ -M!J`+``"%P`^$AP```(E$)"2`>`H`#X2E````QD0D(P")QX/'.(D\).C\____ -MB<.+1P2)7P2).XE#!(D8]D,H`G4]BU,@A=)T'HN&2`4``(E4)`B)1"0$QP0D -M!0```.C\____@$LH`HE<)`C'1"0$!@```(M,)"2)#"3H_/___X!$)",!#[9$ -M)".+5"0D.$(*=B[KD0^V1"0KQT0D"`$```")1"0$B30DZ/S____'!"2@A@$` -MZ/S___^Z`"TQ`>L%ND!+3`")Z,'@!HT<J(T,,XF1R`L``,>!T`L``(!,`@`/ -MMD0D*XG"P>(&C82"D`L``(U$!@R)@=0+``"-A![("P``BU84B40D!(D4).C\ -M____C78`@'PD*P-V+XT4[0````"+!@6``0```="+`*,`````BP8%@`$```'" -MBP*C`````,'H!X/@`>LMC13M`````(L&!8`!```!T(L`HP````"+!@6``0`` -M`<*+`J,`````P>@'@^`!A,!T6X!\)"L#=BJ-#.T`````BP8%A`$```'(BP"C -M`````(L6@<*$`0```=$-```!`(D!ZS&-#.T`````BP8%A`$```'(BP"C```` -M`(L6@<*$`0```=$-```!`(D!ZR"`?"0K`W89BP8%@`$``(T$Z(L`HP````#! -MZ!*#X`'K%XL&!8`!``"-!.B+`*,`````P>@2@^`!A,`/A-\!``"`?"0K`W8J -MC0SM`````(L&!8`!```!R(L`HP`````-```$`(L6@<*``0```=&)`>LHC0SM -M`````(L&!8`!```!R(L`HP`````-```$`(L6@<*``0```=&)`8GHP>`&C02H -MBX0&H`L``(7`=`V)Q8-X*`!U?^EF`0``@'PD*P.0=CF-%.T`````BP8%@`$` -M``'0BPB)#0````"+!@6``0``C00"B0B+!@6``0```<*+`J,`````Z5P#``"- -M%.T`````BP8%@`$```'0BPB)#0````"+!@6``0``C00"B0B+!@6``0```<*+ -M`J,`````Z2,#``"+0"@/MT@R#[?1]L8!#X79````B<?VP@(/A,X```")R(/@ -M_6:)1S*-1W"+5A2)1"0$B10DZ/S____&1"0K`(!_'P`/A'T```#&1"0K``^V -M1"0KBUR'/(7;=%R+4R"%TG0>BX9(!0``B50D"(E$)`3'!"0%````Z/S___^` -M2R@"B5PD",=$)`0&````B2PDZ/S___^`>T\`=!V-=@")-"3H_/___\<$)`$` -M``#H_/___X![3P!UYH!$)"L!#[9,)"LX3Q]WB,='<$!+3`#'1W@`````B7]\ -MC4=PBU84B40D!(D4).C\____C70F`(!\)"L#=AZ+!@6``0``#[94)"N-%-"+ -M`J,`````P>@(@^`!ZQR+!@6``0``#[94)"N-%-"+`J,`````P>@(@^`!A,`/ -MA`X!``"`?"0K`W8>BP8%@`$```^V5"0KC130BP*C`````(/P`8/@`>L<BP8% -M@`$```^V5"0KC130BP*C`````(/P`8/@`83`#X3%````#[9$)"N)PL'B!HV$ -M@I`+``"-!`:-4`R)5"0<BU($A=(/A)\```")5"08@\`XBU84B40D!(D4).C\ -M____BT0D&(!X"@!T5+T`````B<>#QSB)/"3H_/___XG#BT<$B5\$B3N)0P2) -M&(M3((72=!Z+AD@%``")5"0(B40D!,<$)`4```#H_/___X!+*`*#Q0&)ZHM, -M)!@X40IWMHM$)!S'0"R`A!X`QT`T`````(E`.(M$)!R#P"R+5A2)1"0$B10D -MZ/S___^`?"0K`W9D#[9<)"O!XP.+!@6``0```=B+$(D5`````(L&!8`!``"- -M!`.)$(L&!8`!``"-!`.+`*,`````BP8%,`(``(T$`\<``````,<$)!`G``#H -M_/___XL&!30"```!PXL#HP````#K8@^V7"0KP>,#BP8%@`$```'8BQ")%0`` -M``"+!@6``0``C00#B1"+!@6``0``C00#BP"C`````(L&!5`"``"-!`/'```` -M``#'!"00)P``Z/S___^+!@54`@```<.+`Z,`````@$0D*P$/ME0D*SA6*P^' -M7OC__XL&BX!0`0``B40D%*,`````BP:+3"04B8A0`0``]\$`__\`=!WI%_C_ -M_XGHP>`&C02H@8P&Q`L``````0#I_?C__[@`````@\0L6UY?7<.-=@"-O"<` -M````55=64X/L7(ML)'`/MD0D=(A$)#,/MM")5"0TB=#!X`:-!)`!Z(N(H`L` -M`(E,)#P/MKB]"P``BT4`@'PD,P-V#,>`<`$``,0!``#K"L>`<`$``*@!``") -M1"18!70!``")1"0XBUPD6(N#=`$``*,`````BTPD-(/A`[L'````T^.)W@G& -MBT0D6(FP=`$``,<$).@#``#H_/____?3(?.+5"18B9IT`0``@'PD,P-V4(M, -M)#2+7"18C92+T`$``(L"HP````"#R`B)`HG+P>,#BU0D6(V$&@`"``#'`#@` -M``#'!"00)P``Z/S___^+3"18C809!`(``,<``````.M0BUPD-(M$)%B-E)C0 -M`0``BP*C`````(/("(D"BUPD-,'C`XM4)%B-A!H``@``QP`X````QP0D$"<` -M`.C\____BTPD6(V$&00"``#'``````"#?"0\``^$9@@``(!]*P!T,KL````` -M#[;+BU0D/`^V0@G3^*@!=!3'1"0(`0```(E,)`2)+"3H_/___X/#`3A=*W?3 -MBTPD//9!!@%T;8E,)`2)+"3H_/___XM<)#2)7"0$B2PDZ/S___^)V,'@!HT$ -MF(T4*(N"P`L``*D``!``=`LE___O_XF"P`L``(M$)#R)1"0$B2PDZ/S___^+ -M1"0TP>`&BU0D-(T$D,>$!:`+````````Z;<'``"+3"0\@'DT`'0:BX4$"@`` -MB4PD!(D$).C\____BUPD/(!K-`&X_O___P^V3"0TT\")^R##B%PD0P^$D@(` -M`(M$)#2)1"0$B2PDZ/S___^+1"0TP>`&BU0D-(T$D(T4*(N"P`L``*D``!`` -M=`LE___O_XF"P`L```^V3"1#BUPD/(A+"8!]*P`/A*X!``#'1"1,``````^V -MP8E$)""+5"18@<(``@``B50D'`^V3"1,B$PD4P^V^8M$)"")^=/XJ`$/A#X! -M``"-'+T`````B5PD+(GXP>`&`=@/ME0D0XB4!;T+``"`?"13`P^&C0```(T< -M_0````"+1"0<`=C'`#@```#'!"00)P``Z/S___^+3"18C809!`(``(M<)"") -M&,>!<`$``,0!``"+5"0XBP*C`````(GY@^$#NP<```#3XXG>"<:),L<$).@# -M``#H_/____?3(?.+3"0XB1F+7"18BT0D+(V4`]`!``"+`J,`````@\@(B0+I -MB````(T<_0````"+1"0<`=C'`#@```#'!"00)P``Z/S___^+5"18C80:!`(` -M`(M,)"")",>"<`$``*@!``"+7"0XBP.C`````(GY@^$#NP<```#3XXG>"<:+ -M1"0XB3#'!"3H`P``Z/S____WTR'>BU0D.(DRBTPD6(V4N=`!``"+`J,````` -M@\@(B0*#1"1,`0^V1"13@\`!.$4K=B7IC_[__XD<).C\____C7#@BU,$B4,$ -MB1B)4`2)`H-^#`!T%^L,O@````"+7"0\@\,LBT0D/#E8+'7+A?9T.,9&,@"` -M?2L`="ZY`````+H`````BUPD/`^V0PG3^*@!=`X/ML*(3`9`@$8R`8/"`8/! -M`3A-*W?<QT0D"`````#'1"0$@0```(M$)#R)!"3H_/___XM$)#3!X`:+5"0T -MC020QX0%H`L```````"`?2L`#X7-`P``Z><$``#'1"0(`````,=$)`0&```` -MBTPD/(D,).C\____BUPD-(E<)`2)+"3H_/___XG8P>`&C028C10HBX+`"P`` -MJ0``$`!T"R7__^__B8+`"P``BT0D/(/`+(M4)#PY0BP/A!X"``")1"04BTPD -M%(D,).C\____C5C@B5PD1(U0"#E0"`^$T@$``(/#*(E<)!B+1"08B00DZ/S_ -M__^-6/B`>R4-=1J-D/P```"+0RR+`(M`%(E4)`2)!"3H_/___XL3BT,$B4($ -MB1"`>T\`=!J)+"3H_/___\<$)`$```#H_/___X![3P!UYHM#((7`#X0Z`0`` -MQT!@`````(![3P`/A*0```!F@WU<``^$F0```+\`````D(UT)@"-!+T````` -M`X70!0``BS"%]G1M#[=&$&8[0QQU8V8]A0!W70^WP("\*+P$``#_=%"+50`/ -MMT8>9L'H!0^WP(T$A0`#``")@G`!``"+50`/MTX>@^$?N`$```#3X(F"=`$` -M`,9&%"''1"0(`````(ET)`2)+"3H_/___XVV`````(/'`0^W15PY^`^/<?__ -M__9#*`1U'XDL).C\____BT,@QT0D"`$```")1"0$B2PDZ/S___^+0R`/ME`" -M#[9``8E4)`B)1"0$QP0D6@$``.C\____BT,@BY5(!0``B40D"(E4)`3'!"0! -M````Z/S___^+0R"+E4@%``")1"0(B50D!,<$)`8```#H_/___\=#(`````"+ -M5"0\@&H*`8M,)$2`:3`!B5PD!(DL).C\____BT0D&(M<)$0Y0R@/A37^__^+ -M5"0\@&H<`8M,)$2)3"0$B2PDZ/S___^+1"04BUPD/#E#+`^%YOW__XM$)#R# -MP#B+5"0\.4(X#X0%`0``O@````")QXD\).C\____B<.`>$\`=#:-1@&!_G^6 -MF`!V!(G&ZR>)QHDL).C\____QP0D`0```.C\____@'M/`'0+@\8!@?Z!EI@` -M==N+0R"%P`^$C````,=`8`````#V0R@$=1^)+"3H_/___XM#(,=$)`@!```` -MB40D!(DL).C\____BT,@#[90`@^V0`&)5"0(B40D!,<$)%H!``#H_/___XM# -M((N52`4``(E$)`B)5"0$QP0D`0```.C\____BT,@BY5(!0``B40D"(E4)`3' -M!"0&````Z/S____'0R``````BTPD/(!I"@&)7"0$B2PDZ/S___^+7"0\.7LX -M#X4"____BT0D/(E$)`2)+"3H_/___XM$)#3!X`:+5"0TC020QX0%H`L````` -M``#I*?S__\=$)$@`````#[9,)$.)3"0HBUPD6('#T`$``(E<)"0/MGPD2(GX -M#[;`B40D5(M$)"@/MDPD5-/XJ`%U#(G[.%PD,P^%Q@```(GX/`-V8XM4)%C' -M@G`!``#$`0``BTPD.(L!HP````"+3"14@^$#C0Q)NP<```#3XXG>"<:+1"0X -MB3#'!"3H`P``Z/S____WTR'SBU0D.(D:BTPD5(M<)"2-%(N+`J,`````@\@( -MB0+K78M$)%C'@'`!``"H`0``BU0D.(L"HP````"+3"14@^$#C0Q)NP<```#3 -MXXG>"<:),L<$).@#``#H_/____?3(=Z+3"0XB3&+7"14BT0D)(T4F(L"HP`` -M``"#R`B)`H-$)$@!C4<!.$4K#X<`____@\1<6UY?7<.0C;0F`````%575E.# -M[!R+?"0PBW0D-`^V;RN)Z(3`="P/ME8)NP````#VP@%T$^L<C;0F`````(G0 -MB=G3^*@!=1"#PP&)Z#C#=>WK!;L`````]D8(`G4(C48X.48X=6J)-"3H_/__ -M_X3`=$^)/"3H_/___XG!A<!T4(M6/(E&/(U&.(D!B5$$B0J`1@H!B7$LQD$D -M!<9!)0#&04T/QT0D#`$```#'1"0(`0```(E,)`2)-"3H_/___^L/#[;#B40D -M!(D\).C\____@\0<6UY?7<.-M@````!55U93@^P,BVPD(`^V?"0DB?@/ML") -M1"0(B<;!Y@*[`````,<$)!`G``#H_/___XGZ@/H#=AJ+10`%T`$```'PBP"C -M`````,'H%(/@`>L9D(M%``70`0``C00&BP"C`````,'H%(/@`83`=0J#PP%F -M@?LL`76MBT0D"(E$)`2)+"3H_/___XDL).C\____BT0D",'@!HM4)`B-!)`! -MZ/:`O`L```%T$HN`H`L``(E$)`2)+"3H_/___X/$#%M>7UW#ZPV0D)"0D)"0 -MD)"0D)"055=64X/L'`^V1"0TB$0D&HM\)#`/MO")\,'@!HT$L(NL!Z`+``"% -M[0^$J@$``+C^____B?'3P(1%"0^%F`$``(U%+#E%+'4-@'T*`'4IB?;I`P,` -M``^V1"0:B<+!X@:-A(*0"P``C40'#(D$).C\____Z>$"``#&1"0;`(UU.)") -M-"3H_/___XG#BT8$B5X$B3.)0P2)&(![)0`/A1\!```/MT,<@[R'O`(```!U -M$8-[(``/A.@```"-M"8`````#[=#'(N$A[P"``"#>'``#X2M````QH.T```` -M``^V4R2)T(/@!H/X!G4V]L(!=#'&0R8%QD,G!`^V0TV+4S"+2RR)7"0,B40D -M"(E4)`2)#"3H_/___^FF````C;8`````#[93)(G0@^`&@_@$=2+VP@%T'<9# -M)@/&0R<$B5PD!(D\).C\____ZW>-M"8`````#[93)(G0@^`&@_@&=6+VP@%U -M7<9#)P;&0R8%9L>#E```````B5PD!(D\).C\____ZSZ+0R"+ET@%``")1"0( -MB50D!,<$)`0```#H_/___^L?#[=#'(N72`4``(E$)`B)5"0$QP0D`@```.C\ -M____D(!$)!L!#[9$)!LX10H/AH4!``#IJ/[__XTLM0````"[`````,<$)!`G -M``#H_/___X!\)!H#=AF+!P70`0```>B+`*,`````P>@4@^`!ZQ>0BP<%T`$` -M``'HBP"C`````,'H%(/@`83`=0J#PP%F@?LL`76PB70D!(D\).C\____B3PD -MZ/S___^)\,'@!HT$L(NT!Z`+``"%]@^$^0```(!_*P!T-+L`````C;8````` -M#[;+#[9&"=/XJ`%T%,=$)`@`````B4PD!(D\).C\____@\,!.%\K=]</MD0D -M&HG"P>(&C82"D`L``(U$!PR)1AB-1BPY1BQU*HU&.#E&.'4BZW&)'"3H_/__ -M_XUHX(M3!(E#!(D8B5`$B0*#?0P`=!3K#;T`````C5XLD(UT)@`Y7BQUSH7M -M=%_&13(`@'\K`'15N@````"[`````(UV``^V1@F)T=/XJ`%T#@^VPXA4!4"` -M13(!@\,!@\(!.%<K=B;KW/9&!@%T#HET)`2)/"3H_/___^L0QT0D!`````") -M-"3H_/___X/$'%M>7UW#55=64X/L#(M\)""+'XMO*`^V<RN)\(3`=%>-@YP+ -M``"Y`````#GX=1[K1I"-="8`#[;!B<+!X@:-A(*0"P``C40###GX=`F#P0&) -M\#C!=>"`^0-V(8L#!=`!```/MM&-%)"+`J,`````P>@4@^`!ZQ^Y`````(L# -M!=`!```/MM&-%)"+`J,`````P>@4@^`!A,!T%0^VP8EL)`B)1"0$B1PDZ/S_ -M___K#P^VP8E$)`2)'"3H_/___X/$#%M>7UW#55=64X/L'(M<)#2+1"0PB40D -M%(MX5(LW]D<($'0$QD`U!HM4)!0/MD(U/`%T=3P!<AD\!`^$E@```#P&C70F -M``^%.@,``.FG`0``BTPD%,9!-0&)3"0$B30DZ/S____&0Q2!@$\("(-[5`!T -M#XU#5(E$)`2)-"3H_/___XV6Z````(N&Z````(E8!(D#B5,$B9[H````B30D -MZ/S____IW0(``(!G"/>+1"04@$`V`<9`-0#&0Q0"B5PD!(DT).C\____B30D -MZ/S____IL`(```^V1PB#X/>#R!"(1PB+3"04BY&8````C4(!B8&8````@_H" -M#X?Y````@WM4`'0/C4-4B40D!(DT).C\____C9;H````BX;H````B5@$B0.) -M4P2)GN@```"+1"04@'@F`'4+@'\*`'4BZ:0```#'1"0(`````,=$)`0"```` -MB3PDZ/S____I)@(``,9$)!L`C6\XB2PDZ/S___^)PXM%!(E=!(DKB4,$B1B+ -M4R"%TG0>BX9(!0``B50D"(E$)`3'!"0%````Z/S___^`2R@"B5PD",=$)`0& -M````B3PDZ/S___^`>T\`=!J)-"3H_/___\<$)`$```#H_/___X![3P!UYH!$ -M)!L!#[94)!LX5PIW@8M,)!2)#"3H_/___^F.`0``@&<(]XM$)!3'@)@````` -M````@WM4`'0/C4-4B40D!(DT).C\____C9;H````BX;H````B5@$B0.)4P2) -MGN@```#'1"0(`````,=$)`0&````B3PDZ/S___^-1S@Y1S@/A)8```")Q8VT -M)@````")+"3H_/___XG#BT`@A<!T9\=`8`````")-"3H_/___XM#(,=$)`@! -M````B40D!(DT).C\____BT,@BY9(!0``B40D"(E4)`3'!"0!````Z/S___^+ -M0R"+ED@%``")1"0(B50D!,<$)`8```#H_/___\=#(`````")7"0$B30DZ/S_ -M__\Y;S@/A7/___^+5"04B50D!(DT).C\____QT<H`````(L&BY!8`0``B14` -M````A=)T"(L&B9!8`0``]D<&`71<@'XK`'0AN0````#V1PD!=`SK%`^V1PG3 -M^*@!=0^#P0$X3BMW[NL%N0`````/MMF)7"0$B30DZ/S___^)?"0$B30DZ/S_ -M__^)V,'@!HT<F,>$'J`+````````B?:#Q!Q;7E]=PY"-M"8`````@^PLB5PD -M'(ET)"")?"0DB6PD*(M\)#2+="0PBT8LB40D&(LH#[=/'HG(9L'H!0^WV(/A -M'[@!````T^"%1)U@#X7_`P``BU4`C02=``,``(F"<`$``(M%`(N0=`$``(D5 -M`````,9'%"&+1R0E____`#WA`0\`=2G'1"0$`````(D\).C\____QT0D"``` -M``")?"0$B2PDZ/S____II`,```^W3QZ#X1^X`0```-/@A<)T'L=$)`0!```` -MB3PDZ/S___^)+"3H_/___XVV``````^VAK0````\!`^'90,```^VP/\DA>@2 -M``#&AK0````!QT0D"`$```")?"0$BU0D&(D4).C\____Z3<#``#&AK0````" -MQT0D"`@```")?"0$BT0D&(D$).C\____Z1,#``#&AK0````#B70D",=$)`0A -M````BU0D&(D4).C\____BU8PA=)T+0^V1DW'1"00`````,=$)`P!````B40D -M"(E4)`2+1"08B00DZ/S____IP`(``(M4)!@/MD()QT0D"`````")1"0$B2PD -MZ/S____IGP(``,:&M`````2#?C``=$B)="0(QT0D!"$```"+1"08B00DZ/S_ -M__\/MD9-BU8PQT0D$`````#'1"0,`@```(E$)`B)5"0$BU0D&(D4).C\____ -MZ4H"``#'1"0(`````,=$)`0A````BT0D&(D$).C\____BU0D&`^V0@G'1"0( -M`0```(E$)`2)+"3H_/___^D-`@``@'XF_W0=B70D",=$)`0&````BT0D&(D$ -M).C\____Z>H!``")="0(QT0D!`8```"+5"08B10DZ/S___^+3B"%R702BU$$ -MC4(!B4$$@_H%#X:Y`0``QD8G`<9&)@"`?D\`="&-M"8`````B2PDZ/S____' -M!"0!````Z/S___^`?D\`=>:#?C``B?9T%(M6"(M&#(E"!(D0BT8P@&@P`>L3 -MBU8TA=)T#`^V1DW'1((\`````(L6BT8$B4($B1"+1"08@&@*`8N6Y````(72 -M=!L/MH;9````QT0D"`$```")1"0$B10DZ/S___^+5C"%TG08#[9&3<=$)`@! -M````B40D!(D4).C\____BT8@A<`/A(8```#'0&``````B2PDZ/S___^+1B#' -M1"0(`0```(E$)`2)+"3H_/___XM&(`^V4`(/MD`!B50D"(E$)`3'!"1:`0`` -MZ/S___^+1B"+E4@%``")1"0(B50D!,<$)`$```#H_/___XM&((N52`4``(E$ -M)`B)5"0$QP0D!@```.C\____QT8@`````(ET)`2)+"3H_/___XM4)!B`>@7_ -M=%Z^`````(!Z"@!T.+X`````BUPD&(/#.(UV`(D<).C\____BU,$B4,$B1B) -M4`2)`H!X)O]U#H/&`8GPBU0D&#A""G?7B?"+5"08.$(*=Q#&0@7_B50D!(DL -M).C\____BUPD'(MT)""+?"0DBVPD*(/$+,.0C;0F`````%575E.#["R+;"1` -MBT54B40D)(L8BX.P"@``BP")1"0HB6PD!(D<).C\____@'TV`78$QD4U!(UU -M%#EU%`^$YP$``(DT).C\____B40D((M%%(M4)"")4`2)`HER!(E5%&:#>UP` -M#X2:`0``OP````"-BT`)``")3"0<C8/H````B40D&`^WQ\'@`@.#T`4``(LP -MA?8/A%X!```/MT809CE%)`^%4`$```^WDY8+```Y5"0H=$:#P@$/MX.:"P`` -M.<(9P"'"BX.P"@``@\`$BP20J0``"`!U'68E_P]F.?AU%#ET)"!U%(D<).C\ -M____D.DT`0``.U0D*'6Z#[=&$&8]A0`/A^\````/M\"`O`.\!```_P^$W@`` -M`(M4)"2`>C0`#X70````]D(&`0^$Q@```(L3#[=&'F;!Z`4/M\"-!(4``P`` -MB8)P`0``#[=.'H/A'[H!````B=#3X(G!BP.)B'0!```/MT8>P>`"`X/0!0`` -MQP``````#[=.'HG(9L'H!0^WP(E$)!2#X1^)T-/@B<'WT8M$)!0AC(/4!0`` -M#[=.'HG(9L'H!0^WP(/A']/B]](A5(-@.W0D('0BBP:+5@2)4`2)`HN#Z``` -M`(EP!(D&BU0D&(E6!(FSZ`````^W1AZ)1"0$BTPD'(D,).C\____@&TI`8/' -M`68Y>UP/AW_^__^+1"0D]D`&`70:BTPD((L1BT$$B4($B1")3"0$B2PDZ/S_ -M__^#Q"Q;7E]=P^L-D)"0D)"0D)"0D)"0D%575E.#["R+3"1`BU0D2(E4)""+ -M1"1,B40D)(LY#[=$)$3!X`(#A]`%``"+&&:!>R3A`74K#[9#)H/H$3P!=R"+ -M<2C'1"0<``````M4)"1U6<9&-0#'1"0<`````.M+D(N7?`4``+C<(@$`9H%[ -M$(4`=Q(/MT,0#[:$![P$``!IP"0!```!PHE4)!R^`````(M$)"`+1"0D=1"+ -M1"0<QH"T`````+X`````@'L4@74$@&$(]XM$)"`+1"0D#X76````QD,4`/9# -M9B`/A-`"``"+0TB%P`^$Q0(``(G&]D!E`G0ABTA8A<ET&HM3-(72=!.+0R") -M1"0(B50D!(D,).C\____BY=$"@``@<)`"```BTPD'`^V04+!X`@!PHL"HP`` -M``")PL'J$(A64\'H&&:)1DB+ET0*``"!PD0(```/MD%"P>`(`<*+$HD5```` -M``^VPF:)1DP/ML9FB49.B=#!Z!`/ML!FB490P>H8B%92BY=$"@``@<),"``` -M#[9!0L'@"`'"BP*C``````^VP&:)1DKI"`(``(![%(!U!,9#%"&+1"0@BU0D -M)(E$)`2)5"0(QP0D$`,``.C\____9H%[).$!=1H/MD,F@^@1/`%W#XDT).C\ -M____Z<(!``")]HU,)"`/ME0D(_;"`0^$4`$``(M#)"7___\`/>$!#@`/A#T! -M``"+ET0*``"!PD`(``"+3"0<#[9!0L'@"`'"BRJ)+0````"+ET0*``"!PD0( -M```/MD%"P>`(`<*+$HE4)!B)%0````"+ET0*``"!PD@(```/MD%"P>`(`<*+ -M,HDU`````/9#9B`/A,8```"+2TC&0680QD,4((GHP>@0B$%3B>C!Z!AFB4%( -MB?#!X`@/ME0D&`'09HE!3(GPL`"+7"08#[;7`=!FB4%.B?+!ZA#!X@B)V,'H -M$`^VP`'"9HE14(N71`H``('"3`@``(M<)!P/MD-"P>`(`<*+`J,`````#[;` -M9HE!2@^W44P/MUE.#[=)4`^WP(E4)!")7"0,B4PD"(E$)`3'!"2+`0``Z/S_ -M__^+ET0*``"!PD`(``"+3"0<#[9!0L'@"`'"QP(`````ZVR)7"0$B3PDZ/S_ -M___K7H32>1R+!XN(6`$``(D-`````(7)=$B+!XF(6`$``.L^@#D`>#F`>0<` -M>3.+%P^W0QYFP>@%#[?`C02%``,``(F"<`$``(L7#[=+'H/A'[@!````T^") -M@G0!``"-=@"#Q"Q;7E]=PY"-M"8`````4X/L"(M<)!2+3"00#[9#)#E+&'5! -M/`AT5CPH=%(\J)!T33R(=$D\"G1%/"J-="8`=#T\JG0Y/(IT-8N!Z````(E8 -M!(D#C8'H````B4,$B9GH````ZQF+D>P```")F>P```"-@>@```")`XE3!(D: -MB0PDZ/S___^#Q`A;PXUT)@"#[`R+1"04B40D!(M$)!")!"3H_/___X/$#,.0 -MC70F`%.#[%B+7"1@C40D2HE$)#2-1"1,B40D,(U$)$2)1"0LC40D1HE$)"B- -M1"10B40D)(U$)%*)1"0@C40D4XE$)!R-1"1.B40D&(U$)%2)1"04C40D2(E$ -M)!"-1"15B40D#(U$)%:)1"0(C40D5XE$)`0/MT,DB00DZ/S___\/MD0D5XE$ -M)`@/MD0D5HE$)`2-1"1`B00DZ/S____'1"0,`0````^V1"17:<`D`0``B40D -M"(M#$(E$)`2-@V0%``")!"3H_/___\=$)`P!````#[9$)%5IP+````")1"0( -MBT,0B40D!(V#@`4``(D$).C\____QT0D#`$````/MD0D5FG`%`T``(E$)`B+ -M0Q")1"0$C8.<!0``B00DZ/S____'1"0,`0````^W1"10P>`"B40D"(M#$(E$ -M)`2-@[@%``")!"3H_/___\=$)`P!````#[=$)$AKP'")1"0(BT,0B40D!(V# -M9`8``(D$).C\____QT0D#`$````/MD0D5`^W5"1(#Z_"C01`P>`"B40D"(M# -M$(E$)`2-@Q0&``")!"3H_/___\=$)`P!````QT0D"``"``"+0Q")1"0$C8,P -M!@``B00DZ/S___\/MD0D5XE$)`S'1"0(``@``(M#$(E$)`2-@PP'``")!"3H -M_/___\=$)`P!````#[9$)%.-!(#!X`*)1"0(BT,0B40D!(V#G`8``(D$).C\ -M____QT0D#`$```#'1"0(H````(M#$(E$)`2-@[@&``")!"3H_/___\=$)`P! -M````#[9$)%)IP)@```")1"0(BT,0B40D!(V#U`8``(D$).C\____QT0D#`$` -M```/MT0D3HT$0,'@`XE$)`B+0Q")1"0$C8/P!@``B00DZ/S____'1"0,`0`` -M``^W1"10`<")1"0(BT,0B40D!(V#)`D``(D$).C\____QT0D#`$````/MD0D -M5P'`B40D"(M#$(E$)`2-@TP)``")!"3H_/___\=$)`P!````#[9$)%4!P(E$ -M)`B+0Q")1"0$C8-T"0``B00DZ/S____'1"0,`0````^V1"16`<")1"0(BT,0 -MB40D!(V#G`D``(D$).C\____QT0D#`$````/MD,F`<")1"0(BT,0B40D!(V# -MQ`D``(D$).C\____QT0D#`$````/MT0D1L'@!8E$)`B+0Q")1"0$C8.`!@`` -MB00DZ/S____'1"0,`0```(M$)$")1"0(BT,0B40D!(V#[`D``(D$).C\____ -MQT0D$`$```#'1"0,0`````^W1"10P>`&B40D"(M#$(E$)`2-@P@*``")!"3H -M_/___\=$)!`!````QT0D#``!``#'1"0(`!D``(M#$(E$)`2-@RP*``")!"3H -M_/___\=$)!`!````QT0D#(`````/MT0D4&G`L`0``(E$)`B+0Q")1"0$C8-0 -M"@``B00DZ/S____'1"00`0```,=$)`P$````#[=$)$S!X`*)1"0(BT,0B40D -M!(V#=`H``(D$).C\____QT0D$`$```#'1"0,!`````^W1"1*P>`"B40D"(M# -M$(E$)`2-@Y@*``")!"3H_/___\=$)!`!````QT0D#`@````/MD0D4\'@"XE$ -M)`B+0Q")1"0$C8.\"@``B00DZ/S____'1"00`0```,=$)`P(````QT0D"``` -M"`"+0Q")1"0$C8/@"@``B00DZ/S____'1"00`0```,=$)`P(````#[=$)$YI -MP(P!``")1"0(BT,0B40D!('#!`L``(D<).C\____N`````"#Q%A;PXUV`(/L -M+(E<)!R)="0@B7PD)(EL)"B+;"0PBT4`B40D%(U=+(D<).C\____B<:-4.") -M5"08BT0D%(D$).C\____B<>+13")=3"+5"08B5H@B4(DB3"X`0```(7_#X2` -M````QD<DX<9')0'&1R80@$\G`8M4)#2+@IP```")1TB+1TR)4!R)T`60```` -MB4<XQD<5S(M4)!@/MD(S9HE'$(M%`(E'&,='()````"+1"0TB4<TQT=LP`8" -M`,=$)`0`````C4<\B00DZ/S___^)?"0$BU0D%(D4).C\____N`````"+7"0< -MBW0D((M\)"2+;"0H@\0LPXVV`````(V\)P````!55U93@^P<BW0D,,=$)!@` -M````BU0D&`^VA#)"!0``//\/A,P````/MM!KPER-C`9,`0``B4PD%("\!E8! -M````#X2M````OP````")1"00C:P&A`$``(V$!D`!``")1"0,B2PDZ/S___^) -MPXM$)!`!\(N0B`$``(F8B`$``(DKB5,$B1J+0R"%P'0>B40D"(N&2`4``(E$ -M)`3'!"0%````Z/S___^`2R@"B5PD",=$)`0"````BT0D%(D$).C\____@'M/ -M`'0:B30DZ/S____'!"0!````Z/S___^`>T\`=>:#QP&)^HM,)`PX418/AV[_ -M__^#1"08`8-\)!@$#X40____B30DZ/S___^#Q!Q;7E]=PXVV`````(V\)P`` -M``!55U93@^Q\BX0DD````,9`.0#&0#@`QD`W`,:`O0P```")PH'"G`L``+@` -M````B?;&!!``@\`!/1`!``!U\HN$))`````%Z````(N4))````")@N@```") -M@NP```")T`7P````B8+P````B8+T````@<+X````B50D1(N,))````")D?@` -M``")D?P```")SX''``$``(FY``$``(FY!`$``('!"`$``(E,)$R+G"20```` -MB8L(`0``B8L,`0``@<,0`0``B5PD4(NT))````")GA`!``")GA0!``")]8'% -M(`$``(FN(`$``(FN)`$``('&*`$``(ET)$B+A"20````B;`H`0``B;`L`0`` -M!1@!``")1"14BY0DD````(F"&`$``(F"'`$``(U$)':)1"0TC40D>(E$)#"- -M1"1HB40D+(U$)&Z)1"0HC40D>HE$)"2-1"1PB40D((U$)'&)1"0<C40D;(E$ -M)!B-1"1SB40D%(U$)&J)1"00C40D<HE$)`R-1"1TB40D"(U$)'6)1"0$#[=" -M)(D$).C\____#[9$)'6+C"20````B$$N#[9$)'2(02\/MD0D<HB!Y0````^W -M1"1Z9HE!7`^W1"1X9HF!F`L```^W1"1V@^@!9HF!F@L```^W1"1J9HE!.@^W -M021F/8"1=`IF/8"4#X7A"@``BYPDD````,9#-03&0RL$QD,V0,9#-`#&@^(` -M```)QD,L`(G8!60%``")!"3H_/___XG"B8-\!0``#[9$)'5IP"0!``"%P'0+ -MQ@(`@\(!@^@!=?6+A"20````!8`%``")!"3H_/___XG"B[0DD````(F&F`4` -M``^V1"1R:<"P````A<!T"\8"`(/"`8/H`77UBX0DD`````6<!0``B00DZ/S_ -M__^)PHN$))````")D+0%```/MD0D=&G`%`T``(7`=`O&`@"#P@&#Z`%U]8N$ -M))`````%N`4``(D$).C\____B<*+C"20````B8'0!0``#[=$)'K!X`*%P'0+ -MQ@(`@\(!@^@!=?6+A"20````!3`&``")!"3H_/___XN<))````")@T@&``") -MV`44!@``B00DZ/S___^)PXNT))````")ABP&``")\`5D!@``B00DZ/S___^) -MPHF&?`8``&:#?"1J`'1&N0````")6D0/MD0D<XA"/(NT))````"+AOP```") -MEOP```"+="1$B3*)0@2)$`^V1"1SC01`C1R#@\)P@\$!9CE,)&IWOXN$))`` -M```%@`8``(D$).C\____B<*+A"20````B9"8!@``9H-\)&X`=#"Y`````,9" -M"`"+G"20````BX,$`0``B9,$`0``B3J)0@2)$(/"((/!`68Y3"1N=]6+A"20 -M````!9P&``")!"3H_/___XG"B[0DD````(F&M`8``(!\)'$`=#.Y`````(N< -M))````"+@PP!``")DPP!``"+="1,B3*)0@2)$(/"%(/!`0^V1"1Q9CG(=]*+ -MA"20````!;@&``")!"3H_/___XG"BX0DD````(F0T`8``(V*H````(N<))`` -M``"+@Q0!``")DQ0!``"+="10B3*)0@2)$(/"%#G*==N)V`74!@``B00DZ/S_ -M__^)PHF#[`8``(!\)'``=#*Y`````(N<))````"+@R0!``")DR0!``")*HE" -M!(D0@<*8````@\$!#[9$)'!F.<AWTXN$))`````%\`8``(D$).C\____B<*+ -MM"20````B88(!P``9H-\)&P`=#"Y`````(N<))````"+@QP!``")DQP!``"+ -M="14B3*)0@2)$(/"&(/!`68Y3"1L=]6`?"1U`'1/NP````"+M"20````@<8, -M!P``B30DZ/S___\/M].+C"20````B821)`<``(N1+`$``(F!+`$``(M,)$B) -M"(E0!(D"@\,!#[9$)'5F.=AWPXN$))`````%)`D``(D$).C\____BYPDD``` -M`(F#/`D``(F#0`D```^W1"1Z9HF#1@D```^WP(E$)`2)V`5`"0``B00DZ/S_ -M__^)V`5,"0``B00DZ/S___^)@V0)``")@V@)```/MD0D=6:)@VX)```/M\") -M1"0$B=@%:`D``(D$).C\____B=@%=`D``(D$).C\____B8.,"0``B8.0"0`` -M#[9$)')FB8.6"0``#[?`B40D!(G8!9`)``")!"3H_/___XG8!9P)``")!"3H -M_/___XF#M`D``(F#N`D```^V1"1T9HF#O@D```^WP(E$)`2)V`6X"0``B00D -MZ/S___^)V`7$"0``B00DZ/S___^)@]P)``")@^`)```/MD,F9HF#Y@D```^V -M0R:)1"0$B=@%X`D``(D$).C\____B=@%[`D``(D$).C\____B<*)@P0*```/ -MMD0D=&G`=`0``(G!@<%T10``=`^)T(G*Q@``@\`!@^H!=?6+M"20````BX8$ -M"@``B0B+E@0*```/MD0D=(A"!`^V1"1TB40D"(E,)`2+A@0*``")!"3H_/__ -M_[T`````@'XF``^$IP```+\`````#[??:]M<BX0DD````(VL&$P!``"-!`.- -ML$`!``")^HA6$,9&$0"+C"20````B8A,`0``QD86`,:`@`$```#&@&@!```` -MQX"D`0```````(V4&6`!``"-2@R)B&P!``")B'`!``"#PAB)D'@!``")D'P! -M``"+C"20````C909A`$``(F0A`$``(F0B`$``,9&$@*#QP$/MD$F9CGX#X=> -M____BYPDD````,9#-`#&@T(%``#_QH-#!0``_\:#1`4``/_&@T4%``#_@'PD -M=0`/A(,```"[``````^WRVG1)`$``(NT))````"+AGP%``#&1!`G`8N&?`4` -M`,9$`B8`BX9\!0``QD0"3/^+AGP%``#&1`)"_XN&?`4``&;'A`*4``````#' -MA(Z\`@```````(G1`XY\!0``C4$0B4$0`Y9\!0``C4(0B4(4@\,!#[9$)'5F -M.=AW@HN$))````!FQX#@``````"X`````(N4))````#&A!"\!```_X/``3V& -M````=>>`?"1T``^$K0```+L`````#[?#:<`4#0``BXPDD````(N1M`4``,9$ -M`C``BY&T!0``QD00,0"+D;0%``#'1!`,`````(G!B[0DD`````..M`4``(U1 -M$(E1$(G!`XZT!0``C5$0B5$4B<$#CK0%``"-41B)41B)P0..M`4``(U1&(E1 -M'(N6M`4``(EL$`B)P0..M`4``(U1*(E1*`.&M`4``(U0*(E0+(/#`0^V1"1T -M9CG8#X=8____BX0DD````,:`XP```("`?"1R`'1]NP`````/M]-ITK````"+ -MC"20````BX&8!0``9L=$$#($`(N!F`4``,9$`B8`BX&8!0``QD0"*/^+@9@% -M``#&1`(T_XG1B[0DD`````..F`4``(U!%(E!%(G1`XZ8!0``C4$4B4$8BX:8 -M!0``B6P"5(/#`0^V1"1R9CG8=XB+A"20````QH#D````@HN$))`````%)`H` -M`(E$)`2+A"20````!0@*``")!"3H_/___XN4))````")@B`*``")T`5("@`` -MB40D!(U`Y(D$).C\____BXPDD````(F!1`H``(G(!6P*``")1"0$C4#DB00D -MZ/S___^+G"20````B8-H"@``B=@%D`H``(E$)`2-0.2)!"3H_/___XF#C`H` -M`(G8!;0*``")1"0$C4#DB00DZ/S___^)@[`*``")V`78"@``B40D!(U`Y(D$ -M).C\____B<&)@]0*``"+M"20````BX;8"@``BY;<"@``@'PD<0!T6HG#B=:_ -M`````(G-*<6+1"1,B00DZ/S___^-5!T`B5`(B5@,B7`0BXPDD````(N1#`$` -M`(F!#`$``(M,)$R)"(E0!(D"@<,`"```@]8`@\<!#[9$)'%F.?AWLXN$))`` -M```%_`H``(E$)`2+A"20````!>`*``")!"3H_/___XE$)%B+G"20````B8/X -M"@``BX0DD````(N8_`H``(NP``L``+\`````O0````"+5"10B10DZ/S___^+ -M5"18`?J)4`B)6`R)<!"+C"20````BY$4`0``B8$4`0``BTPD4(D(B5`$B0*! -MPP```0"#U@"!QP```0"#U0")^#4```@`">AUJHN$))`````%(`L``(E$)`2+ -MA"20````!00+``")!"3H_/___XG!BYPDD````(F#'`L``(NT))````"+AB`+ -M``"+EB0+``!F@WPD;`!T5XG#B=:_`````(G-*<6+1"14B00DZ/S___^-5!T` -MB5`(B5@,B7`0BXPDD````(N1'`$``(F!'`$``(M,)%2)"(E0!(D"@<.,`0`` -M@]8`@\<!9CE\)&QWMH/$?%M>7UW#D(VT)@````!55U93@^P,BVPD((M\)"2+ -M7U0/MD<KB40D"(EL)`2)'"3H_/___XG&9H-/,A"`?2L`=$FY`````/9#"0%T -M#.L\#[9#"=/XJ`%U#(/!`0^V12MF.<AWZF:#^0-V)8M%``70`0``#[?1C120 -MBP*C`````,'H%(/P`8/@`>LCN0````"+10`%T`$```^WT8T4D(L"HP````#! -MZ!2#\`&#X`&$P'04#[;!B40D!(DL).C\____Z88!``"-0S@Y0S@/A!$!``"% -M]@^$"0$```^V1DW'1(<\`````(L6BT8$B4($B1")="0(QT0D!`8```")'"3H -M_/___X!^3P!T'Y"-="8`B2PDZ/S____'!"0!````Z/S___^`?D\`=>:+1B"% -MP'16QT!@`````/9&*`1U"(DL).C\____BT8@BY5(!0``B40D"(E4)`3'!"0! -M````Z/S___^+1B"+E4@%``")1"0(B50D!,<$)`8```#H_/___\=&(`````"` -M:PH!B70D!(DL).C\____BT4`BY!8`0``B14`````A=)T"8M%`(F06`$``,9' -M)@!F@V<R[X!_'P!T(KH`````#[?"BT2'/(7`=`:`>";_=76#P@$/MD<?9CG0 -M=^.`?S(`>`V^`````(!_'P!U$.M,B7PD!(DL).C\____ZT@/M\:+7(<\A=MT -M)_9#*`)T(8M#((N52`4``(E$)`B)5"0$QP0D!@```.C\____@&,H_8/&`0^V -M1Q]F.?!WPF;'1S("`(!G+?V#Q`Q;7E]=PXUT)@"-O"<`````55=64X/L+(M\ -M)$"+1RR)1"0DBQB+@[`*``"+`(E$)"B)?"0$B1PDZ/S___^`O[<````!=@?& -MA[0````$C7<0.7<0#X0U`@``B30DZ/S___^)1"0@BT<0BU0D((E0!(D"B7($ -MB5<09H-[7``/A-\!``"]`````(V+0`D``(E,)!R-@^@```")1"08C;8````` -M#[?%P>`"`X/0!0``BS"%]@^$G0$```^W1A!F.4<<#X6/`0``#[>3E@L``#E4 -M)"AT18/"`0^W@YH+```YPAG`(<*+@[`*``"#P`2+!)"I```(`'4<9B7_#V8Y -MZ'43.70D('43B1PDZ/S____I?0$``#M4)"AUNXM4)"2`>C0`B?8/A2T!```/ -MMT809CV%``^''P$```^WP("\`[P$``#_#X0.`0``@WPD0``/A.T````/MD<D -M@^`%@_@%#X7=````BQ,/MT8>9L'H!0^WP(T$A0`#``")@G`!```/MTX>@^$? -MN@$```")T-/@B<&+`XF(=`$```^W1A[!X`(#@]`%``#'```````/MTX>B<AF -MP>@%#[?`B40D%(/A'XG0T^")P??1BT0D%"&,@]0%```/MTX>B<AFP>@%#[?` -M@^$?T^+WTB%4@V`[="0@=#>+%HM&!(E"!(D0@WY4`'0/C494B40D!(D<).C\ -M____BX/H````B7`$B0:+5"08B58$B;/H````#[=&'HE$)`2+3"0<B0PDZ/S_ -M__^`;T\!ZQ:+1"0D]D`&`G0,B70D!(D\).C\____@\4!9CEK7`^'0/[__X-\ -M)$``="8/MD<D@^`%@_@%=1J+3"0@BQ&+002)0@2)$(E,)`2)/"3H_/___X/$ -M+%M>7UW#D)"0D)"0D)"0D)!55U93@^P,BWPD(`^V="0D#[9$)"R(1"0+BT<L -MBPBZ``````^V7"0H`?.(7"0#B?8/MH0*O`0``#S_=$8/ML!IP"0!``")1"0$ -M`X%\!0``B?,XF-H```!U*3FXY````'4A#[9<)`.(F-D```"+@7P%```/MEPD -M"XML)`2(G`78````@\(!@?J`````=:.#Q`Q;7E]=PXUT)@"-O"<`````@^P( -MB1PDB70D!(MT)!@/MEPD$`^V5"04BT0D#(M(,`^V@9`````\3W<I#[;`C02` -M`=J(E,&5````#[:!D````(T$@(GRB)3!E````("!D`````&+'"2+="0$@\0( -MPXGV5U93BWPD$`^W1"04N_____]FA<!T0;O_____N0````"#Z`$/M_`/MA0Y -MC4+0/`EW%X#[_P^4P(/H`2'##[;#C02`C5Q"T.L%@/O_=0J#P0&-1@$YP77/ -M#[;#6UY?PXGV55=64XML)!0/MG0D&`^V?"0<BT4LBPBZ`````(UT)@`/MH0* -MO`0``#S_="L/ML!IP"0!```#@7P%```YJ.0```!U%(GS.)C9````=0J)^HB0 -MVP```.L+@\(!@?J`````=;Y;7E]=PXGVC;PG`````%575E.#[`2+="08#[9\ -M)!P/MD0D)(A$)`.+1BR+&(MN,+D`````#[:$&;P$```\_W1&#[;`:<`D`0`` -MB<(#DWP%```YLN0```!U+8GX.(+9````=2.`?"0#`'0.BX+@````BU0D((D" -MZQF+3"0@BP&)@N````#K"X/!`8'Y@````'6CB>JY`````(VV``````^V@I0` -M```\`78Y/!=T-8GX.(*5````=2N`?"0#`'02C02)BX3%F````(M4)"")`NL= -MC12)BTPD((L!B835F````.L+@\$!@\(H@_E0=;&#Q`1;7E]=PXGVC;PG```` -M`%575E.#["`/MFPD.(M$)#2+L.@````/MD8"P>`(#[96`XT\$`^WQX/`!#T` -M"```#X_M````B>J$TG1.BTPD-`^VD=P```")TX/CX`^V1@&#X`^)T8/A$`G8 -M"<B)TX/C"(/@\XG1@^$$"=@)R(/B`H/@_(M<)#0/MHO<````@^$!"=`)R(A& -M`>M,#[96`8G3@^/@BTPD-`^V@=P```"#X`^)T8/A$`G8"<B)TX/C"(/@\XG1 -M@^$$"=@)R(/B`H/@_`^V3@�$)T`G(BUPD-(B#W````(U6"`^WQXU\!@0Y -MUW8_B50D'+L`````B>@/MO"-;"0<B70D#(EL)`@/ML.)1"0$BU0D-(D4).C\ -M____BT0D'(/`!(E$)!R#PP$Y^'+3@\0@6UY?7<.-M@````!3@^P8BTPD)(M9 -M-`^V0P+!X`@/ME,#`=`/M\"-4`0/MT$@.<)_+HM,)""+@>@```")5"0(B5PD -M!(D$).C\____QT0D!`````"+1"0@B00DZ/S___^#Q!A;PXVT)@````!55U93 -M@^P<#[9\)#B+1"0PBU@PB5PD&+X`````BVPD-(/%!`^V@Y0````\`79"/!=T -M/HGX.(.5````=32-!+:+3"08C93!G````(M,)#0/MD$#/"!V!;@@````#[;` -MB40D"(EL)`2)%"3H_/___XGV@\8!@\,H@_Y0=:B#Q!Q;7E]=PXVV`````(V\ -M)P````"#["R)7"0<B70D((E\)"2);"0HBUPD,`^V1"0TB$0D%XM#+(LHB2PD -MZ/S___^)QH7`#X0'`0``B2PDZ/S___^)QX7`=1&)="0$B2PDZ/S____IZ``` -M`(U6/(E4)!B+4`B+@^@```"+3"0\B4PD"(E$)`2)%"3H_/___\9&:`K&1A6L -M#[=#'&:)1A"+1"1`B49(B6X8BU0D/(E6((-.9!*+1PB)1C2)?E"-@[@```") -M1CC&1AP@QT9L`````,9&)#O&1B4"#[9,)!>(3B:+1"0XP>@0B$8GBU0D.`^V -MQHA&*(A6*0^V1B*(1BH/MD8AB$8K#[9,)#R(3BS&1BT`QT0D!`````"+1"08 -MB00DZ/S___^+1B")1"0,BT<,BU<0B40D!(E4)`B+5"08B10DZ/S___^)="0$ -MB2PDZ/S___^+7"0<BW0D((M\)"2+;"0H@\0LPXVT)@````"-O"<`````@^PL -MB5PD'(ET)"")?"0DB6PD*(M<)#`/MD0D-(A$)!>+0RR+*(DL).C\____B<:% -MP`^$[0```(DL).C\____B<>%P'41B70D!(DL).C\____Z<X```"-5CR)5"08 -MQD9H"L9&%:P/MT,<9HE&$(M$)$")1DB);AC'1F0(````B7Y0BT<(B48TBU0D -M/(E6((V#N````(E&.,9&'"#'1FP`````QD8D/,9&)0(/MD0D%XA&)HM$)#C! -MZ!"(1B>+5"0X#[;&B$8HB%8I#[9&(HA&*@^V1B&(1BL/MD0D/(A&+,9&+0#' -M1"0$`````(M4)!B)%"3H_/___XM&((E$)`R+1PR+5Q")1"0$B50D"(M$)!B) -M!"3H_/___XET)`2)+"3H_/___XM<)!R+="0@BWPD)(ML)"B#Q"S#D(VT)@`` -M``"#["R)7"0<B70D((E\)"2);"0HBVPD,(M%+(L`B40D%(N5Z`````^V0@+! -MX`@/ME(#`=`/M\"-6`2!^P`(```/C^\```"+1"04B00DZ/S___^)QH7`#X39 -M````BT0D%(D$).C\____B<>%P'45B70D!(M$)!2)!"3H_/___^FR````C48\ -MB40D&(M7"(N%Z````(E<)`B)1"0$B10DZ/S____&1A6L#[=%'&:)1A"+1"04 -MB488B5X@@TYD$HM'"(E&-(E^4(V%N````(E&.,9&'"#'1FP`````QD8D'<9& -M)1#&1B8"#[9&(8A&)XA>*,=$)`0`````BT0D&(D$).C\____BT8@B40D#(M' -M#(M7$(E$)`2)5"0(BT0D&(D$).C\____B70D!(M$)!2)!"3H_/___XM<)!R+ -M="0@BWPD)(ML)"B#Q"S#D(VT)@````"#["R)7"0DB70D*(M<)#`/ME0D-`^V -M="0XQT0D(`````"`>R<!=$K'1"0,`0```(U$)"")1"0(#[;"B40D!(D<).C\ -M____BT0D((7`=".`"(")\(3`=`J+1"0@@$@#(.L(BT0D((!@`]^)'"3H_/__ -M_XM<)"2+="0H@\0LPXUV`(/L+(E<)!R)="0@B7PD)(EL)"B+7"0P#[9$)#2( -M1"07BT,LBRB)+"3H_/___XG&A<`/A+D```")+"3H_/___XG'A<!U$8ET)`2) -M+"3H_/___^F:````C48\B40D&,9&%:P/MT,<9HE&$(EN&,=&9`@```")?E"+ -M1PB)1C3'1B``"```C8.X````B48XQD8<(,=&;`````#&1B0<QD8E`0^V1"07 -MB$8FQD8G",9&*`#'1"0$`````(M$)!B)!"3H_/___XM&((E$)`R+1PR+5Q") -M1"0$B50D"(M$)!B)!"3H_/___XET)`2)+"3H_/___XM<)!R+="0@BWPD)(ML -M)"B#Q"S#C;8`````C;\`````55=64X/L'(M,)#2+630/MD,"P>`(#[93`P'0 -M#[?PC58$#[=!(#G"#X^#`0``C7L(C6PS!(E\)!#&1"07`,=$)!@`````.>\/ -M@_4```"-=@`/MD0D&(A$)!8/MD<"P>`(#[97`P'09HE$)!0/M_")="0$BT0D -M$(/`!(D$).C\____//]U:XM$)!"-5#`$B=,YU0^&^@```,9$)!?_C70F``^V -M0@+!X`@/ME(#C300#[?&B40D!(U#!(D$).C\____//]U$8!\)!?_#X6.```` -MD.F#````.$0D%W8$B$0D%P^WQHU4`P2)TSG5=G'KLHGV*D0D%P^VP(E$)`@/ -MMEPD%HE<)`2+5"0PB10DZ/S___^)7"0(B7PD!(M$)#")!"3H_/___P^W1"04 -MBU0D$(U\`@2)?"00@T0D&`$Y_0^'#O___\=$)`0"````BT0D,(D$).C\____ -MZUC&1"07``^V1"06B40D"(E\)`2+5"0PB10DZ/S___\/MT0D%(M4)!"-?`($ -MB7PD$(-$)!@!Z;_^__\/MD0D%HE$)`B)?"0$BT0D,(D$).C\____ZY:-="8` -M@\0<6UY?7<.0C;0F`````%575E.#[!R+3"0TBUDT#[9#`L'@"`^V4P,!T`^W -MP(/`!`^W42`YT`^/'@$``(US"`^V6P&Y`````+H`````B?8"3@(/MD8#C70& -M!(/"`3C3<^Z$R0^$TP```,9$)!L`OP````"-0?\/ML"#P`&)1"04#[94O@$` -M5"0;#[8$OCP!=`0\%W5*#[9<)!LHTSA<)!L/AHD```"-1P$/MNB-=@`/M@2^ -MB40D#(EL)`@/ML.)1"0$BT0D,(D$).C\____@\,!.EPD&W18Z]:-M@````"+ -M3"0PBT$P@+B1`````71`#[9<)!LHTSA<)!MV,XU'`0^VZ`^V!+Z)1"0,B6PD -M"`^VPXE$)`2+1"0PB00DZ/S___^#PP$Z7"0;==B0C70F`(/'`3M\)!0/A43_ -M__^+5"0PBT(PQH"1`````<=$)`0'````B10DZ/S___^#Q!Q;7E]=PXVV```` -M`(V\)P````"#["R)7"0<B70D((E\)"2);"0HBUPD,(7;#X3,````BT,LBRB) -M+"3H_/___XG&A<`/A+4```")+"3H_/___XG'A<!U$8ET)`2)+"3H_/___^F6 -M````C48\B40D&,9&%:P/MT,<9HE&$(EN&,=&9`@```")?E"+1PB)1C3'1B`` -M"```C8.X````B48XQD8<(,=&;`````#&1B0<QD8E`<9&)@+&1B<(QD8H`,=$ -M)`0`````BT0D&(D$).C\____BT8@B40D#(M'#(M7$(E$)`2)5"0(BT0D&(D$ -M).C\____B70D!(DL).C\____BUPD'(MT)""+?"0DBVPD*(/$+,.0@^P<B5PD -M$(ET)!2)?"08BWPD)(MT)""+7T@/MU<09H'ZA0`/AX<````/M\(/MHP&O`0` -M`(#Y_W1W9H/Z?W<9#[;!BY9\!0``:<`D`0``BT00+`^V0`3K.&:!^H$`=QD/ -MML&+EK0%``!IP!0-``"+1!`(#[9`!.L8#[;!BY:8!0``:<"P````BT005`^V -M0`20//]T'`^VP("\!D(%``#_=`^`^?]T"@^V1Q0\!G4RB?:#?U``=`^-1U") -M1"0$B30DZ/S___^)?"0$B30DZ/S____'0RS_____B1PD_U,HZW&$P'4Z]D=D -M"'09BTL<BU<TBT<@B40D"(E4)`2)#"3H_/___\=#+`````"+4R"%TG0%BT,4 -MB0*)'"3_4RCK$L=#+/____^)'"3_4RB0C70F`(-_4`!T#XU'4(E$)`2)-"3H -M_/___XE\)`2)-"3H_/___XM<)!"+="04BWPD&(/$',/K#9"0D)"0D)"0D)"0 -MD)"#[!R)7"0,B70D$(E\)!2);"08BUPD)(M\)"`/MFL4#[=#$&8]A0!W&8N7 -M?`4```^WP`^VA`>\!```:<`D`0``ZPN+EWP%``"XW"(!`(TT`HGHA,!U(6;' -MAI0``````(![)!QU$H![)@)U#(E<)`2)-"3H_/___X-[4`!T#XU#4(E$)`2) -M/"3H_/___XE<)`2)/"3H_/___XGH/`9T/HV>!`$``(E<)`2+1Q2)!"3H_/__ -M_\>&!`$``("$'@#'A@P!````````B;80`0``B5PD!(M'%(D$).C\____BUPD -M#(MT)!"+?"04BVPD&(/$',-55U93@^P<#[9$)#B(1"0;BU0D,(M"+(LPOP`` -M``"+;"0T@\4,#[:$-[P$```\_W11#[;`:=@D`0``QT0D"`@```");"0$B=@# -MAGP%```%H````(D$).C\____A,!T(XN&?`4```^V5"0;B)0#V@```(N&?`4` -M`(M4)#")E`/D````@\<!@?^`````=9B#Q!Q;7E]=PXUT)@"-O"<`````55=6 -M4X/L'(M,)#2+<30/MD8"P>`(#[96`P'0#[?XC5<$#[=!(#G"#X_U````C5X( -MC70^!(ET)!2)W3G>#X;,````QT0D&`````"-M@`````/MDPD&`^V$X32#XB5 -M````B="#X`\\!@^%B````/9#`\!T"O9#!<`/A7@```#VPA!T-8![!`!T;8UU -M"+\`````#[9#`XE$)`B)="0$BT0D,(D$).C\____@\8<@\<!B?@X0P1V0.O9 -M@'L"`'0XC74$OP`````/MLF)3"00C70F`(M$)!")1"0(B70D!(M$)#")!"3H -M_/___X/&'(/'`8GX.$,"=]L/MD,!C5P%`HG=@T0D&`$[7"04#X)"____QT0D -M!`$```"+1"0PB00DZ/S___^#Q!Q;7E]=PXVV`````%575E.#["R+1"1`B40D -M((M4)$0/ME(4B%0D*XM,)$0/MU$09H'ZA0`/A[D#```/M\*+7"0@#[:,`[P$ -M``"X_P```(#Y_W1B9H/Z?W<=#[;!BUPD((N3?`4``&G`)`$``(M$$"P/MD`$ -MZS]F@?J!`'<=#[;!BUPD((N3M`4``&G`%`T``(M$$`@/MD`$ZQL/ML&+7"0@ -MBY.8!0``:<"P````BT005`^V0`2+5"0@#[:$`D(%``")1"0<:\!<C80"3`$` -M`(E$)"2+DGP%```/ML%IP"0!``"--`*`?"0K``^%D@(``&;'AI0``````(M$ -M)$2`>"0<#X5[`@``#[9`)CP"=%H\`G<+/`$/A6<"``"0ZR$\!W0R/`H/A5@" -M``"+3"1$B4PD!(DT).C\____Z4,"``"+7"1$B5PD!(DT).C\____Z2X"``"+ -M1"1$B40D!(DT).C\____Z1D"``"+5"1$B50D!(DT).C\____C9X$`0``B5PD -M!(M&+(L`BT`4B00DZ/S____'A@0!``"`A!X`QX8,`0```````(FV$`$``(E< -M)`2+1BR+`(M`%(D$).C\____QD8F_VM$)!Q<BTPD(("\`58!````#X1Z`0`` -MOP````")PXVL`80!``")]HDL).C\____B<:+5"0@C003BY"(`0``B;"(`0`` -MB2Z)5@2),H!^)O\/A*(```"`?B4`#X6?````B?.`OK4`````#X1/`0``#[9. -M)`^VT8G0@^`&@_@&=2GVP@%T)(ET)`P/MD9-B40D"(M&,(E$)`2+3"0DB0PD -MZ/S____I%0$``(/X!'4A]L$!C;0F`````'05B5PD!(M<)"")'"3H_/___^GO -M````@_@````]L$!#X7=````B5PD!(M$)"")!"3H_/___^G(````B?;& -MAK4`````@\<!BTPD((V4&4`!```/MD(6B?DXR`^'#?___SC!=7.$P'1OOP`` -M``!K7"0<7(M$)""-K!B$`0``B2PDZ/S___^)QHM4)""-!!.+D(@!``")L(@! -M``")+HE6!(DR@'XF_W0>#[9&)3PB=`0\#742QT0D!`H```")-"3H_/___^L^ -M@\<!B?F+1"0@.(P85@$``'>F:T0D'%R+5"0@QH0"40$``/^+3"0DB4PD!(D4 -M).C\____@'PD*P`/A:(```"+7"1$@WM0`'05B=B#P%")1"0$BT0D((D$).C\ -M____BU0D1(E4)`2+3"0@B0PDZ/S___^`?"0K`'1H#[>&E````(/``6:)AI0` -M``!F@_@*=@YFQX:4``````#IX/W__\=$)`0*````B30DZ/S____K,8M<)"`/ -MMIM!!@``B5PD'&O#7(M4)""-A`),`0``B40D)(N2?`4``+C<(@$`Z;[\__^# -MQ"Q;7E]=PX/L"(D<)(ET)`2+7"0,BW0D$(M4)!2+3"0<A=MT1(7V=$"%TG0\ -M@WPD&`!T-6:!^84`=RX/M\&`O`.\!```_W0AQD(DX<9")0'&0B839HE*$(ER -M&(M$)!B)0FRX`0```.L%N`````"+'"2+="0$@\0(PXVT)@````"-O"<````` -MBTPD!(M!!(M`!*,`````@'PD"`!T"HG"@<H```P`ZPB)PH'B___S_XM!!(D0 -MBT$$B5`,BT$$B5`0BT$$B5`4BT$$B5`8BT$$B5`$PY"0D)!64XM<)!"+3"0P -MBW0D.`^W1"0,9CTB)W=)9CT@)W-Y9CU`(71S9CU`(7<99CT@(9!T9F8](B%T -M8&8]4`>-="8`=6#K5&8]1"%T3F8]1"&)]G)09BT0)V:#^`%W1HUT)@#K-F8] -M@B=T,&8]@B>-="8`=Q)F/20G="!F/8`GC70F`'4@ZQ1F/8"1=`YF/8"4B?9T -M!F8]@')U"L8#0(M$)!3&``*+1"08Q@`$#[83BT0D+(@09L<!@`!FQP8``(M$ -M)"#&`""+1"0D9L<```$/MA.+1"0HB!`/M@-F`P%F`P:+5"0T9HD"BU0D'&:) -M`@^W$8M$)#QFB1`/MQ&#P@N+1"1`9HD06U[#C78`C;PG`````%575E.#[`2+ -M?"08#[9$)!R(1"0##[=O7&:%[0^$W@```(N/T`4``+X`````C70F`(L!A<`/ -MA+8````/MU`0N_\```"X_____V:!^H4`=W0/M\(/MIP'O`0``+C_____@/O_ -M=%QF@_I_=QD/ML.+EWP%``!IP"0!``"+1!`L#[9`!.L]9H'Z@0!W&0^VPXN7 -MM`4``&G`%`T``(M$$`@/MD`$ZQT/ML.+EY@%``!IP+````"+1!!4#[9`!(VV -M``````^VVXN7?`4``#I$)`-U(0^WPVG`)`$```^V1!`D@^`%@_@%=0NP`>L; -MC;0F`````(/&`8/!!&8Y[@^%,?___[@`````@\0$6UY?7<.-="8`55=64X/L -M"(M4)!R+0BR+*(N%(`H``(E$)`0/MWU<N0````"^`````.M)C;8`````#[?9 -MBX70!0``BQ28A=)T,(M")"7___\`/>$!$`!T(8M$)!P/MT`<9CM"$'43B=C! -MX`:+5"0$9CET$`AT"XUV`(/!`68Y^7*X9CGY=!"#Q@%F@_X?=P>Y`````.OF -M#[?&@\0(6UY?7<.0C;0F`````%.+5"0(BTPD#(M<)!"+0CB%P'06Q@!PBT(X -MB$@"BT(XQD`'`(M".(A8#%O#C70F`//#C;0F`````(V\)P````"#[!")'"2) -M="0$B7PD"(EL)`R+3"04#[=\)!B)^H'B_P$``(N!T`4``(LTD(7V=#`/MIGB -M````#[9&%8G9T^`/M^@/M]>X__\``-/@(<(YU0^5P`^VP(/H`2'&D(UT)@") -M\(L<)(MT)`2+?"0(BVPD#(/$$,.-="8`C;PG`````(M4)`2X`````(VT)@`` -M``#&!!``@\`!/;````!U\L9"*/_&0C3_C4(4B4(4B4(8PXM4)`2X`````(VT -M)@````#&!!``@\`!/20!``!U\L9"3/_&0D+_QD).'XU"$(E"$(E"%,.-M@`` -M``"-OP````!3BT0D"(M<)`R+$XN(!`$``(F0!`$```4``0``B0*)2@2)$<<# -M`````%O#D(UT)@!3@^P(BUPD$(M,)!2+D_P```")B_P```"-@_@```")`8E1 -M!(D*@WE,`'0/C4%,B40D!(D<).C\____@\0(6\.04XM$)`B+7"0,BQ.+B!0! -M``")D!0!```%$`$``(D"B4H$B1''`P````!;PY"-="8`4XM$)`B+7"0,BQ.+ -MB`P!``")D`P!```%"`$``(D"B4H$B1''`P````!;PY"-="8`BT0D!(M4)`B+ -MB"0!``")D"0!```%(`$``(D"B4H$B1'#ZPV0D)"0D)"0D)"0D)"04XM$)`B+ -M7"0,BQ.+B"P!``")D"P!```%*`$``(D"B4H$B1''`P````!;PY"-="8`4XM$ -M)`B+7"0,BQ.+B!P!``")D!P!```%&`$``(D"B4H$B1''`P````!;PY"-="8` -M#[9$)`0\%W<7#[;`_R2%`!,``+@T````PXVT)@````"X!````,.X/````)"- -M="8`P[@4````P[A`````C70F`,.X'````,.X&````(UT)@##N"@```##N"`` -M``"-="8`P[A,````PXGVC;PG`````%575E.+;"04BWPD&`^V5R2)T(/@!H/X -M!G4)]L(!#X3*````@']"_P^%P````(M%`(NP&`$``(DU`````+D`````N`$` -M``")P]/CA=YU,HA/0HM5`(G8"?")@A@!``"+10"+@%@!``"C`````(G:(<)T -M=XM%`(F06`$``.MLC78`@\$!@_D@=;F+10"+L!P!``")-0````"Q`(VT)@`` -M``")RK@!````B</3XX7>=3*-0B"(1T*+50")V`GPB8(<`0``BT4`BX!@`0`` -MHP````")VB'"=!.+10")D&`!``#K"(/!`8/Y('6W@$4L`5M>7UW#C;0F```` -M`(V\)P````!75E.+?"00BU0D%(!Z-/\/A;<```"+!XNP&`$``(DU`````+D` -M````N`$```")P]/CA=YU+(A*-(L7B=@)\(F"&`$``(L'BX!8`0``HP````") -MVB'"='&+!XF06`$``.MG@\$!@_D@=;^+!XNP'`$``(DU`````+$`C;0F```` -M`+@!````B</3XX7>=3.(2C2+%XG8"?")@AP!``"+!XN`8`$``*,`````B=HA -MPG09BP>)D&`!``#K#XVT)@````"#P0&#^2!UN(!'+`%;7E_#4P^V7"00BT0D -M"(M(*(7)=#&Z`````(M$D3R%P'0%.%A-=`^#P@&#^@5T%Y"-="8`Z^1F@7DD -MA0!W"(7`C70F`'4%N`````!;PXVT)@````!55U93@^P,BVPD(`^V1"0DP>`( -M#[94)"B--!"`?1P`#X3)````@WTX``^$OP```/9%9`D/E,")Q[D`````C78` -MB<L/MQ3-8!,``(GP(=!F.<(/A8L````/MA3-91,``(#Z`W0%@/H'=0N)^#@$ -MS603``!U;L9%%"`/M@3=9A,``(E$)`@/ML*)1"0$B2PDZ/S___^+53@/M@3= -M9Q,``(A"#8-\)"P`="N+1"0LBQB+<`2+33B)<0.+13B`"(#V168$=!"%]G0, -MBT4XB5@(BT4X@"!_BU4X#[9%'(/H!XA"!^L,@\$!@_D0#X52____@\0,6UY? -M7<.-=@"-O"<`````@^P,BT0D$(V0&`$``+D`````.9`8`0``=!&)%"3H_/__ -M_XG!QT`4`````(G(@\0,P^L-D)"0D)"0D)"0D)"0D(/L#(M$)!"-D"@!``"Y -M`````#F0*`$``'0*B10DZ/S___^)P8G(@\0,PXVV`````(/L#(M$)!"-D"`! -M``"Y`````#F0(`$``'0DB10DZ/S___^)P8G"N`````"0C70F`,8$$`"#P`$] -MF````'7RB<B#Q`S#C;8`````C;\`````@^P,BT0D$(V0"`$``+D`````.9`( -M`0``=`J)%"3H_/___XG!B<B#Q`S#C;8`````@^P,BT0D$(V0``$``+D````` -M.9```0``=`Z)%"3H_/___XG!QD`(`(G(@\0,PXGV55=64X/L'(E$)!")U<=$ -M)!0`````QT0D&`````"-=@"+5"08BTPD$`^VA`H\!0``//\/A"@!```/MM`/ -MMT0D&&:#Z(!F/8$`#X=\````#[?":<`4#0``B<,#F;0%``"`>S``=%6^```` -M`(U[*(UV`(D\).C\____C4CXBU,LB4,LB7D(B5$,B0*+020E`/__`#T``/\` -M=1CV02<$=!*+02"%P'0+B>J(4`&-M@````"#Q@&)\3A+,'>VB>B(@Y(```"# -MQ0'IE@````^WPFG`L````(G#BU0D$`.:F`4``(!['P!T0[D`````C;8````` -M#[;!BU2#/(72="6+0B0E`/__`#T``/\`=1;V0B<$=!"+0B"%P'0)B>J(4`&- -M="8`@\$!.$L?=\B)Z8B+I````("[I0````-U'H-$)!0!BT0D%(/``X/X!G86 -M@\4!QT0D%`````#K"8/%`8VV`````(-$)!@!@WPD&`8/A;#^__^+5"00BX)( -M!0``.=!U#`7$#```B>KH=O[__X/$'%M>7UW#C;0F`````(V\)P````"#[`R+ -M5"00BT0D%`^V2`0/MH010@4``,:$$4(%``#_#[?`B40D!('"X`D``(D4).C\ -M____@\0,PY"-M"8`````@^P(B1PDB70D!(MT)!"+7DR%VW0DC4XDC5,,BT,, -MB48DBT($B4$$BT((B4$(BT(,B4$,BT,<B48TBQPDBW0D!(/$",.-M@````"- -MOP````"#[`B)'"2)="0$BW0D$(M>3(7;="B-2PR-5B2+1B2)0PR+0@2)002+ -M0@B)00B+0@R)00R+1C2)0QS&0P@!BQPDBW0D!(/$",.0C;0F`````%=64X/L -M$(M\)""+'V:#>UP`#X3&````O@````"-="8`#[?6BX/0!0``BPR0A<D/A)P` -M```/MU$09H'ZA0!W<0^WP@^VA`.\!```//]T8F:#^G]W'`^VP(N3?`4``&G` -M)`$``(M$$"P/ME`$ZTB-=@!F@?J!`'<9#[;`BY.T!0``:<`4#0``BT00"`^V -M4`3K)0^VP(N3F`4``&G`L````(M$$%0/ME`$ZPR-M"8`````NO\````/MD<$ -M.<)U$\=$)`0`````B0PDZ/S___^-=@"#Q@%F.7-<#X=#____@\006UY?PXVV -M`````(V_`````(/L'(E<)!2)="08BUPD((MT)"0/MD8T//]T&0^VP(E$)`2+ -M`XD$).C\____QD8T_X!K+`&+7"04BW0D&(/$',.#[!R)7"04B70D&(M<)""+ -M="0D#[9&0CS_=!D/ML")1"0$BP.)!"3H_/___\9&0O^`:RP!BUPD%(MT)!B# -MQ!S#5U93@^P0BW0D((M<)"0Y<Q@/A,\```"`>Q0`#X66````#[9#)#P5=`@\ -M50^%A@```(M#3(7`='^)PH!X"`%U=V:!>`SA`75OB[Y\!0``#[=#$+G<(@$` -M9CV%`'<1#[?`#[:$!KP$``!IR"0!``"-!`\/ME(.@/H'=!^`^@=W!X#Z!G4S -MZQR`^@R-M"8`````=""`^@UU(.L09H-@.OV)]NL59H-(.@+K#F:#8#KWB?;K -M!6:#2#H(@WM0`'0I@7L@``@``'<1C4-0B40D!(DT).C\____ZP^-0U")1"0$ -MB30DZ/S___]F@7LDX0$/A08!```/MT,09CV%`'=Z#[?`#[:$!KP$```\_W1K -MBY9\!0``@'L4`'5?#[;`:<`D`0``C00"#[93)H#Z!W0=@/H'=P>`^@9U,>L: -M@/H,D(UT)@!T((#Z#74@ZQ!F@V`Z_8GVZQ5F@T@Z`NL.9H-@.O>)]NL%9H-( -M.@AF@7LDX0&-=@`/A8(```"`>R8+=7P/MTL0#[9&+HUX_XG*ZQR0C70F`(/" -M`6:!^H4`=PT/M\*`O#"\!```_W4)#[?".?A\XNM$9CW_`'49ZSR#P0%F@?F% -M`'<-#[?!@+PPO`0``/]U#`^WP3G'?^*X_P```&:)0Q#&0Q2`B5PD!(DT).C\ -M____Z1P!``#&0Q0`.7,8="B+0TR%P'0A@'@(`74,B5PD!(DT).C\____C4-, -MB40D!(DT).C\____@WM4`'0/C4-4B40D!(DT).C\____B5PD!(M#&(D$)/]3 -M;`^W4R1F@?KA`755#[9#)H/H$3P!=TH/MT,09CV%``^'I0````^WP`^VA`:\ -M!```//\/A)(````/ML!IP+`````#AI@%``"`>"D`=7V`>#3_='>)1"0$B30D -MZ/S____K:0^W0Q!F/84`=U\/M\`/MHP&O`0``(N^?`4``(M#)"7___\`/>$! -M$`!T/X'Y_P```'0W9H'ZX0%U$`^V0R:#Z!$\`78ED(UT)@!IP20!``"-!`>` -M>$\`=1&)1"0$B30DZ/S___^0C70F`(/$$%M>7\.)]HV\)P````"#[!R)7"00 -MB70D%(E\)!B+="0@BUPD)`^W4Q!F@?J%``^'B@````^WP@^VC`:\!```@/G_ -M='IF@_I_=QD/ML&+EGP%``!IP"0!``"+1!`L#[9`!.L[9H'Z@0!W&0^VP8N6 -MM`4``&G`%`T``(M$$`@/MD`$ZQL/ML&+EI@%``!IP+````"+1!!4#[9`!(UT -M)@!F/?\`=!H/M\`/MKP&0@4``(GX//]T"0^VP68]_P!U$(E<)`2)-"3H_/__ -M_^M^B?8/ME,G#[9#*`^V2RF`^0%T!8#Y"'5:BTM(P>`(#[;2`=`E_P$``(N6 -MT`4``#D,@G4_#[=)'HG*9L'J!0^WTH/A'[C^____T\`A1)9@BT-(#[=`'HE$ -M)`2)^@^VPFO`7(V$!DP!``")!"3H_/___XGVB5PD!(DT).C\____BUPD$(MT -M)!2+?"08@\0<PXUT)@"#[`R)7"0$B70D"(M<)!"-@_@```"^`````#F#^``` -M`'0=B00DZ/S___^)QHD$).C\____B1PDZ/S___^)1DR)\(M<)`2+="0(@\0, -MPXUV`(/L'(E<)!")="04B7PD&(M\)""+1RR+,(DT).C\____B<.%P'1KB30D -MZ/S___^)PH7`=1S&A[4````!B5PD!(DT).C\____ZTB-M"8`````QD,D``^W -M1QQFB4,0QD-H#XES&,=#(`````#'0S0`````BT((B4,XQD,<)(E34,=#;``` -M``")7"0$B30DZ/S___^+7"00BW0D%(M\)!B#Q!S#ZPV0D)"0D)"0D)"0D)"0 -M@^P<B5PD$(ET)!2)?"08BWPD((MT)"2+1RR+&(D<).C\____B<*%P'0]QD`D -M&\9`)0&)\(A"*`^W1QQFB4(0QD)H#XE:&,="(`````#'0C0`````QT)L```` -M`(E4)`2)'"3H_/___XM<)!"+="04BWPD&(/$',.)]HV\)P````"#["R)7"0< -MB70D((E\)"2);"0HBUPD-(M$)#"+*(DL).C\____B<:%P`^$H@```(DL).C\ -M____B<>%P'43B70D!(DL).C\____Z8,```")]HU6/(E4)!C&1B3AQD8E`<9& -M)@X/MT,<9HE&$&:#8SCWBU0D,(L"B488QT8@``@``(M'"(E&-(E^4,=&;`"B -M`@#'1"0$`````(M$)!B)!"3H_/___XM&((E$)`R+1PR+5Q")1"0$B50D"(M4 -M)!B)%"3H_/___XET)`2)+"3H_/___XM<)!R+="0@BWPD)(ML)"B#Q"S#C70F -M`(V\)P````"#[!R)7"00B70D%(E\)!B+="0HBT0D((L8B1PDZ/S___^)PH7` -M=&7&0"3AQD`E`8GPB$(FQD(G#XM,)"0/MT$<9HE"$(E:&,="(`````#'0C0` -M````QT)L`````(E4)`2)'"3H_/___XGP/`%U$L<$)`4```#H_/___^L0C70F -M`,<$)%##``#H_/___XM<)!"+="04BWPD&(/$',.-="8`@^P<B5PD$(ET)!2) -M?"08BW0D((M<)"0/MU,09H'ZA0`/AXL````/M\(/MHP&O`0``(#Y_W1[9H/Z -M?W<9#[;!BY9\!0``:<`D`0``BT00+`^V0`3K.V:!^H$`=QD/ML&+EK0%``!I -MP!0-``"+1!`(#[9`!.L;#[;!BY:8!0``:<"P````BT005`^V0`2-="8`//]T -M'0^VP`^VE`9"!0``@/K_=`V`^?]T"`^V0Q0\!G4_@WM0`'0K@7L@``@``(GV -M=Q&-0U")1"0$B30DZ/S____K#XU#4(E$)`2)-"3H_/___XE<)`2)-"3H_/__ -M_^MRB[Y\!0``A,!T+<=$)`@!````#[;!:<`D`0``C00'B40D!`^VPFO`7(V$ -M!DP!``")!"3H_/___X-[4`!T*8%[(``(``!W$8U#4(E$)`2)-"3H_/___^L/ -MC4-0B40D!(DT).C\____B5PD!(DT).C\____BUPD$(MT)!2+?"08@\0<PXVT -M)@````"-O"<`````@^PLB5PD'(ET)"")?"0DB6PD*(M<)#"+;"0T#[=5$&:! -M^H4`#X<.`0``#[?"#[:,`[P$``"`^?\/A/H```!F@_I_=QP/ML&+DWP%``!I -MP"0!``"+1!`L#[9`!.LZC78`9H'Z@0!W&0^VP8N3M`4``&G`%`T``(M$$`@/ -MMD`$ZQ</ML&+DY@%``!IP+````"+1!!4#[9`!#S_#X29````#[;Y#[;`#[:T -M`T(%``")\#S_#X2!````9H'__P!T>H!]%`9T=(N3?`4``(E4)!B`?28!=4S' -M!"0*````Z/S___^);"0$B1PDZ/S____'1"0(`@````^WQVG`)`$```-$)!B) -M1"0$B?(/ML)KP%R-A`-,`0``B00DZ/S____K&HGVQP0D]`$``.C\____B6PD -M!(D<).C\____BUPD'(MT)""+?"0DBVPD*(/$+,.-="8`@^PLB5PD((ET)"2) -M?"0HBWPD,(M'+(LPB30DZ/S___^)PX7`=0K&A[4````!ZV20QD`D%<9`%:L/ -MMT<<9HE#$(ES&,=$)!`!````QT0D#`$```")7"0(B7PD!(DT).C\____A,!U -M&8E<)`2)-"3H_/___\:'M0````'K%XUT)@#'0VP`````B5PD!(DT).C\____ -MBUPD((MT)"2+?"0H@\0LPXVV`````(V\)P````"#["R)7"0<B70D((E\)"2) -M;"0HBUPD,(M#+(LHB2PDZ/S___^)QH7`=0S&@[4````!Z;@```")+"3H_/__ -M_XG'A<!U',:#M0````&)="0$B2PDZ/S____ID@```(UT)@#&1B0:QD8E",9& -M)@C&1B<`QD8H_\9&*0#&1A6K#[=#'&:)1A");AC'1B#_````QT9D"````(M' -M"(E&-`7_````B48XQD8<)(E^4,=&;`````"-7CS'1"0$`````(D<).C\____ -MQT0D#/\```"+1PR+5Q")1"0$B50D"(D<).C\____B70D!(DL).C\____BUPD -M'(MT)""+?"0DBVPD*(/$+,.-M"8`````C;PG`````(/L+(E<)!R)="0@B7PD -M)(EL)"B+;"0P#[9$)#2(1"07BT4LBSB)/"3H_/___XG#A<!U#<:%M0````'I -MN@```)")/"3H_/___XG&A<!U&,:%M0````&)7"0$B3PDZ/S____IDP```(U# -M/(E$)!C&0R02@'PD%P!T#L9#)0'&0R:`QD,H0.L$QD,H),9#%:L/MT4<9HE# -M$(E[&,=#(&````#'0V0(````BT8(B4,TB7-0QT-L`````,=$)`0`````BT0D -M&(D$).C\____QT0D#&````"+1@R+5A")1"0$B50D"(M$)!B)!"3H_/___XE< -M)`2)/"3H_/___XM<)!R+="0@BWPD)(ML)"B#Q"S#C78`@^PLB5PD'(ET)"") -M?"0DB6PD*(M<)#"+0RR+*(DL).C\____B<:%P'4,QH.U`````>FZ````B2PD -MZ/S___^)QX7`=1S&@[4````!B70D!(DL).C\____Z90```"-="8`C48\B40D -M&,9&))[&1B40QD8Q(,9&%:L/MT,<9HE&$(EN&,=&("````#'1F0(````BT<( -MB48TB7Y0@\`@B48XQD8<),=&;`````#&1F@/QT0D!`````"+1"08B00DZ/S_ -M___'1"0,(````(M'#(M7$(E$)`2)5"0(BT0D&(D$).C\____B70D!(DL).C\ -M____BUPD'(MT)""+?"0DBVPD*(/$+,.-M@````"-OP````"#["R)7"0<B70D -M((E\)"2);"0HBUPD,(M#+(LHB2PDZ/S___^)QH7`=0S&@[4````!Z:X```") -M+"3H_/___XG'A<!U',:#M0````&)="0$B2PDZ/S____IB````(UT)@"-1CR) -M1"08QD8D)<9&%:L/MT,<9HE&$(EN&,=&(`@```#'1F0(````BT<(B48T@\`( -MB48XQD8<)(E^4,=&;`````#'1"0$`````(M$)!B)!"3H_/___\=$)`P(```` -MBT<,BU<0B40D!(E4)`B+1"08B00DZ/S___^)="0$B2PDZ/S___^+7"0<BW0D -M((M\)"2+;"0H@\0LPY"-M"8`````@^PLB5PD'(ET)"")?"0DB6PD*(M$)#B) -M1"04BU0D,(LZBX]\!0``B4PD&(M4)#0/MT(0#[:L![P$``")/"3H_/___XG# -MBTPD-`^W<1Z)\8/A'[@!````T^")P8GP9L'H!0^WP(5,AV`/A<D```"%VP^$ -MP0```(GI#[;1:=(D`0```U0D&(M,)#0/MD$5#[:/X@```-/@"?#&0R3AQD,E -M`<9#)@^(0R=FP>@(B$,H#[9$)!2(0RF+@J@```")0RJ+@JP```")0RZ+3"0T -MB4M(QD,5J@^W0AQFB4,0BU0D,(L"B4,8QT,@`````,=#-`````#'0VR@G0(` -MQT0D!`````"-0SR)!"3H_/___XE<)`2)/"3H_/___XM$)#0/MT@>B<AFP>@% -M#[?`@^$?N@$```#3X@E4AV"+7"0<BW0D((M\)"2+;"0H@\0LPY"-="8`55=6 -M4X/L'`^V1"0TB$0D&XM4)#"+&F:#>UP`#X3^`0``O0`````/M]6+@]`%``"+ -M#)"%R0^$V`$``(MY)('G____`('_X0$0``^%D0```(-\)#@`#X6X`0``#[=1 -M$&:!^H4`=V</M\(/MH0#O`0``#S_=%AF@_I_=QD/ML"+DWP%``!IP"0!``"+ -M1!`L#[90!.L^9H'Z@0!W&0^VP(N3M`4``&G`%`T``(M$$`@/ME`$ZQX/ML"+ -MDY@%``!IP+````"+1!!4#[90!.L%NO____^^`````.FE````D(UT)@`/MU$0 -M9H'ZA0`/AX<````/M\(/MK0#O`0``(GP//]T=F:#^G]W&0^VP(N3?`4``&G` -M)`$``(M$$"P/ME`$ZT%F@?J!`'<;B?(/ML*+D[0%``!IP!0-``"+1!`(#[90 -M!.L?B?(/ML*+DY@%``!IP+````"+1!!4#[90!(VV`````('F_P```&G&)`$` -M`(G&`[-\!0``ZPJZ_____[X`````BT0D,#A0!`^%A0```(-\)#@`=`Z+5"0X -M#[="'&8[01!U<(!\)!L&=$Z!_^$!$`!T1@^V5B2)T(/@!H/X!G4X]L(!=3.` -MOK0`````=2J!_^$!#P!T/0^V1"0;B$$4QT0D"`$```")3"0$BU0D,(D4).C\ -M____ZQL/MD0D&XA!%`^WQ8E$)`2+5"0PB10DZ/S___^#Q0%F.6M<#X<'_O__ -M@'PD&X$/A#4!``"+@^@```"-L^@````YQ@^$(0$``+H`````@\(!BP`YQG7W -M9H72#X0*`0``C7K_B30DZ/S___^)P8-\)#@`=">+5"0X#[="'&8[01!T&8N# -M[````(F+[````(DQB4$$B0CIN0```)`/MU$09H'ZA0!W9P^WP@^VA`.\!``` -M//]T6&:#^G]W&0^VP(N3?`4``&G`)`$``(M$$"P/MD`$ZSYF@?J!`'<9#[;` -MBY.T!0``:<`4#0``BT00"`^V0`3K'@^VP(N3F`4``&G`L````(M$$%0/MD`$ -MZP6X_____XM4)#`Z0@1U)8M!)"7___\`/>$!#P!T%@^V1"0;B$$4B4PD!(D< -M).C\____ZQ.+@^P```")B^P```"),8E!!(D(C4?_9H7_=`\[L^@```!T!XG' -MZ?G^__^#Q!Q;7E]=PXGVC;PG`````(/L'(E<)`R)="00B7PD%(EL)!B+;"0@ -M#[9\)"B+=0")-"3H_/___XG#A<!U$XM$)"S&@+4````!Z9````"-=@")-"3H -M_/___XG"A<!U&8E<)`2)-"3H_/___XM4)"S&@K4````!ZV;&0R3AQD,E`<9# -M)A")^8A+%8M,)"0/MD$S9HE#$(M%`(E#&,=#()````"-0@B)0S2)4U#&0`$2 -MQD((0(GZB%`)QT-L`````,=$)`0`````C4,\B00DZ/S___^)7"0$B30DZ/S_ -M__^+7"0,BW0D$(M\)!2+;"08@\0<P^L-D)"0D)"0D)"0D)"0D(/L'(E<)`R) -M="00B7PD%(EL)!B+;"0@BWPD*(M$)"R)1"0(BW4`B30DZ/S___^)PX7`#X2( -M````B30DZ/S___^)PH7`='K&0R3AQD,E`<9#)A")^8A+%8M,)"0/MD$S9HE# -M$(M%`(E#&,=#()````"-0@B)0S2)4U#&0`&1QD((0(GZB%`)#[9,)`B(2`K' -M0VP`````QT0D!`````"-0SR)!"3H_/___XE<)`2)-"3H_/___\<$)*"&`0#H -M_/___XM<)`R+="00BWPD%(ML)!B#Q!S#C;8`````C;\`````@^P<B5PD#(ET -M)!")?"04B6PD&(M\)""+;"0HBS>)-"3H_/___XG#A<!T<HDT).C\____B<*% -MP'1DQD,DX<9#)0'&0R80QD,5NXM,)"0/MD$S9HE#$(L'B4,8QT,@D````(U" -M"(E#-(E34,9``1#&0@A`B>J(4`G'0VP`````QT0D!`````"-0SR)!"3H_/__ -M_XE<)`2)-"3H_/___XM<)`R+="00BWPD%(ML)!B#Q!S#ZPV0D)"0D)"0D)"0 -MD)"0@^P<B5PD$(ET)!2)?"08BWPD((LWB30DZ/S___^)PX7`=&V)-"3H_/__ -M_XG"A<!T7\9#).'&0R4!QD,F$,9#%;N+3"0D#[9!,V:)0Q"+!XE#&,=#()`` -M``"-0@B)0S2)4U#&0`$`QD((0,=#;`````#'1"0$`````(U#/(D$).C\____ -MB5PD!(DT).C\____BUPD$(MT)!2+?"08@\0<PX/L'(E<)`R)="00B7PD%(EL -M)!B+="0@C9[@"0``B1PDZ/S___^$P`^%N````(D<).C\____B<.X`````(G! -M@+PP0@4``/]U"CA&-',0B$8TZPN#P0&#P`&#^`1UWX#Y!`^$?P````^VP8B< -M!D(%```/M^MKQ5R-E`9,`0``N`````#&!!``@\`!@_A<=?0/M]N)7"0(:_M< -MC90^8`$``(U:#(T$-XF8;`$``(F8<`$``(/"&(F0>`$``(F0?`$``(V4/H0! -M``")D(0!``")D(@!``"(B%`!``!KQ5R-A`9,`0``ZP6X`````(M<)`R+="00 -MBWPD%(ML)!B#Q!S#B?:#[!R)7"00B70D%(E\)!B+="0@C9YH"0``B1PDZ/S_ -M__^$P`^%%P$``(D<).C\____B<*X`````(G#@+PPO`0``/]U'`^VP&8YAN`` -M``!S'6:)AN````#K%(VT)@````"#PP&#P`$]@````'7+@/N`#X3*````#[;# -MB)0&O`0```^WPFGX)`$``(GX`X9\!0``B00DZ/S___^+EGP%```/ML-FB407 -M'(N&?`4``,9$!R8`BX9\!0``QD0'/?^+AGP%``#&1`<\_XN&?`4``,9$!S[_ -MBX9\!0``QD0'0/^+AGP%``#&1`<__XN&?`4``,9$!T'_BX9\!0``QH0'M@`` -M``"+AGP%``#&A`?;````_XDT).C\____BY9\!0``B807Z````(!^.0%U"XN& -M?`4``(!,!R@!B?@#AGP%``#K!;@`````BUPD$(MT)!2+?"08@\0<PXUT)@"- -MO"<`````4X/L"(M<)!"+5"04B=CH?>+__XN#2`4``(D$).C\____@\0(6\.- -M=@"-O"<`````@^P<B5PD$(ET)!2)?"08BW0D((V>D`D``(D<).C\____A,`/ -MA=T```")'"3H_/___XG"B?"[@O___XVV`````("X/@4``/]U%SB>Y````',@ -MB)[D````ZQB-M"8`````@\,!@\`!@/N'````Z\^`^X8/A(P````/ML.( -ME`:\!```#[?":?BP````B?@#AI@%``")!"3H_/___XN6F`4```^VPV:)1!<D -M@'XY`74-BX:8!0``9L=$!S#__XN&F`4``,9$!R8`BX:8!0``9L=$!S(``(N& -MF`4``&;'A`>0````___'1"0$`````(N&2`4``(D$).C\____B?@#AI@%``#K -M!;@`````BUPD$(MT)!2+?"08@\0<PY"-="8`5E.#[!2+="0@BT0D)`^W0"0/ -MMIPPO`0``,:$,+P$``#_#[?;B5PD!(V&D`D``(D$).C\____:=NP````B=@# -MAI@%``"`>#3_=`R)1"0$B30DZ/S____'1"0$`````(N&2`4``(D$).C\____ -M@\046U[#C;0F`````(V\)P````!3@^P(BUPD$(M$)!0/ME`S#[:$&KP$``#& -MA!J\!```_P^WP(E$)`2-@[@)``")!"3H_/___\=$)`0`````BX-(!0``B00D -MZ/S___^#Q`A;PU.#[`B+7"04@'LH_W0:C4-8B40D!(M4)!"+0A2)!"3H_/__ -M_\9#*/^#Q`A;PXUV`%.#[`B+7"04@'M,_W0=C8/L````B40D!(M4)!"+0A2) -M!"3H_/___\9#3/^#Q`A;PX/L'(E<)`R)="00B7PD%(EL)!B+7"0@BVPD)`^W -M11P/MKP#O`0```^WQVGP)`$``(GP`X-\!0``!>@```")1"0$B1PDZ/S___\/ -MMU4<BX23O`(``(7`=!B#>'``=1+'A).\`@```````(VT)@`````/MT4<QH0# -MO`0``/\/M\>)1"0$C8-H"0``B00DZ/S___^)\`.#?`4``(!X0O]T#(E$)`2) -M'"3H_/___XEL)`2)'"3H_/___XN#?`4``,9$!B8`BX-\!0``QD0&)P&+7"0, -MBW0D$(M\)!2+;"08@\0<P^L-D)"0D)"0D)"0D)"0D(/L'(E<)`R)="00B7PD -M%(EL)!B+;"0@BW0D)&:!?B3A`0^%N0````^V1B:#Z!$\`0^'J@````^W1A!F -M/84`#X=4`0``#[?`#[:$!;P$``"+E9@%```\_P^$.P$```^VP&G`L````(T< -M`H!K*0&->Q2)/"3H_/___XG".?!U0HE<)`2)+"3H_/___SM[%`^$!0$``,=# -M6``2>@#'0V``````B5MDC4-8B40D!(M%%(D$).C\____QD,H`.G9````D(M# -M%(E0!(D"B7H$B5,4BQ:+1@2)0@2)$.F[````C78`#[=&$&8]A0`/AZH````/ -MM\`/MI0%O`0``(N-?`4``(M&)"7___\`/>$!$``/A(8```"!^O\```!T?FG" -M)`$``(T<`8!K3P&->Q")/"3H_/___XG".?!U2(E<)`2)+"3H_/___SM[$'1/ -MQX/L`````!)Z`,>#]`````````")F_@```"-@^P```")1"0$BT44B00DZ/S_ -M___&0TP`ZQJ)]HM#$(E0!(D"B7H$B5,0BQ:+1@2)0@2)$(M<)`R+="00BWPD -M%(ML)!B#Q!S#C70F`(/L'(E<)`R)="00B7PD%(EL)!B+?"0@BVPD)`^W51Z) -MT&;!Z`4/M]@/M_*)\8/A'[C^____T\")P2%$GV!F@?K_#W1)C02U``````.' -MT`4``(,X`'0WQP``````(8R?U`4``(ET)`2-AT`)``")!"3H_/___XEL)`2) -M/"3H_/___XEL)`2)/"3H_/___XM<)`R+="00BWPD%(ML)!B#Q!S#ZPV0D)"0 -MD)"0D)"0D)"0@^P<B5PD$(ET)!2)?"08BWPD((MT)"1F@7XDX0$/A9(````/ -MMD8F@^@1/`$/AX,````/MT80NO\```!F/84`=PL/M\`/MI0'O`0``&G"L``` -M`(G#`Y^8!0``@'LH_W4\#[96:+@(````A-)T`XT$$@^VP&G`0$(/`(E#6,=# -M8`````")6V2-0UB)1"0$BT<4B00DZ/S____&0R@`BU,8B7,8C4,4B0:)5@2) -M,H!#*0'IGP````^W1A"Y_P```&8]A0!W"P^WP`^VC`>\!```BY=\!0``BT8D -M)?___P`]X0$0`'1P:<$D`0``C1P"@'M,_W5-#[96:+@(````A-)T`XT$$@^V -MP&G`0$(/`(F#[````,>#]`````````")F_@```"-@^P```")1"0$BT<4B00D -MZ/S____&0TP`D(UT)@"+4Q2)<Q2-0Q")!HE6!(DR@$-/`8M<)!"+="04BWPD -M&(/$',.-M@````"-OP````!55U93@^PLBT0D1`^W4!!F@?J%``^''P,```^W -MPHM<)$`/MHP#O`0``+C_____@/G_=&)F@_I_=QT/ML&+7"1`BY-\!0``:<`D -M`0``BT00+`^V0`3K/V:!^H$`=QT/ML&+7"1`BY.T!0``:<`4#0``BT00"`^V -M0`3K&P^VP8M<)$"+DY@%``!IP+````"+1!!4#[9`!`^VP(M4)$`/MJP"0@4` -M`&O%7(V$`DP!``")1"0@BY*T!0``#[;!:<`4#0```<*)5"0<BT0D1(M0-`^V -M0@$\$G0G/)$/A2H"``!KQ5RY`````(M4)$"`O`)6`0````^$V@$``.EQ`0`` -M:\5<`T0D0(N(3`$``(E,)"@/MEH)B%PD)@^V4AJ(5"0GNP````"`N%8!```` -M=&:_`````&OU7(M$)$"-K#"$`0``D(DL).C\____B<.+5"1`C006BY"(`0`` -MB9B(`0``B2N)4P2)&HM,)!PY2S!U$P^V0TV+5"1$.D(5=!B-M@````"#QP&) -M^8M$)$`XC#!6`0``=ZZ+5"1$BT)0A<!T$(E$)`2+3"0HB0PDZ/S___^+1"1$ -MB40D!(M4)"B)%"3H_/___P^V@Y8```"-4`&(DY8````\`W<X@'PD)P!U,<=$ -M)!``````QT0D#`(```"+3"1$#[9!%8E$)`B+0S")1"0$BUPD((D<).C\____ -MZS:-0@&(@Y8```"`^@)V*(!\)"<`=2'&0R<"QD,F_X!C*/Z)7"0$BT0D*(D$ -M).C\____Z1\!```/MD0D)XE$)`P/MD0D)HE$)`B+5"0<B50D!(M,)"")#"3H -M_/___^GT````O@````!KW5R+1"1`C;P8A`$``(D\).C\____B<&+5"1`C003 -MBY"(`0``B8B(`0``B3F)402)"HM$)!PY03!U$@^V04V+5"1$.D(5=!>0C70F -M`(/&`8GPBU0D0#B$&E8!``!WKP^V422)T(/@!H/X!G4H]L(!=".)3"0,BUPD -M1`^V0Q6)1"0(BT$PB40D!(M$)"")!"3H_/___XM4)$2+0E"%P'00B40D!(M, -M)$")#"3H_/___XM<)$2)7"0$BT0D0(D$).C\____ZRF+5"1`#[:J008``&O% -M7(V$`DP!``")1"0@BY*T!0``N.P�#I7_W__X/$+%M>7UW#C;8`````55=6 -M4X/L#(ML)""+?"0DBUPD*,9#)P'&0R8`B5PD",=$)`0&````B3PDZ/S___^# -M>S``=!*+4PB+0PR)0@2)$(M#,(!H,`&`>T\`=!V-=@")+"3H_/___\<$)`$` -M``#H_/___X![3P!UYHN3Y````(72=!O'1"0(`0````^V@]D```")1"0$B10D -MZ/S___^+4S"%TG08QT0D"`$````/MD--B40D!(D4).C\____BW,@A?8/A*`` -M``"#?G``#X6(````@WYT``^%?@```/9#*`1U'XDL).C\____QT0D"`$```"+ -M0R")1"0$B2PDZ/S___^+4R`/MD("B40D"`^V0@&)1"0$QP0DGP$``.C\____ -MBT,@B40D"(N%2`4``(E$)`3'!"0!````Z/S___^+0R")1"0(BX5(!0``B40D -M!,<$)`8```#H_/___\=#(`````#'1F``````BU,TA=)T#`^V0TW'1((\```` -M`(L3BT,$B4($B1"`;PH!B5PD!(DL).C\____@'\%_W1.@'\*`'0XNP````"- -M=SB-M@````")-"3H_/___XM7/(E'/(DPB5`$B0*`>";_=0J#PP$X7PIV!^O; -M.%\*=Q#&1P7_B7PD!(DL).C\____@\0,6UY?7<.-M"8`````C;PG`````%57 -M5E.#[`R+;"0HQD4G`<9%)@");"0(QT0D!`8```"+1"0DB00DZ/S___^#?3`` -M=!*+50B+10R)0@2)$(M%,(!H,`&`?4\`="6-M"8`````BU0D((D4).C\____ -MQP0D`0```.C\____@'U/`'7BBY7D````A=)T&\=$)`@!````#[:%V0```(E$ -M)`2)%"3H_/___XM5,(72=!C'1"0(`0````^V14V)1"0$B10DZ/S___^+72"% -MVP^$00$``/9%*`1U:8M,)"")#"3H_/___\=$)`@!````BT4@B40D!(M$)"") -M!"3H_/___XM5(`^V0@*)1"0(#[9"`8E$)`3'!"2?`0``Z/S___^+12")1"0( -MBU0D((N"2`4``(E$)`3'!"0!````Z/S____K/0^V0P*)1"0(#[9#`8E$)`3' -M!"2?`0``Z/S___^+12")1"0(BTPD((N!2`4``(E$)`3'!"0!````Z/S___^+ -M4W"%T@^$1`$```^W11R+3"0@QX2!O`(```````#'0W``````QT0D"/____^) -M7"0$BT-XB00D_]+I$0$```^W11R+3"0@QX2!O`(```````#'0W0`````BT-X -MB00D_]+V12@"="&+12")1"0(BU0D((N"2`4``(E$)`3'!"0&````Z/S____' -M12``````QT-@`````(M5-(72=`P/MD5-QT2"/`````"+50"+102)0@2)$(M, -M)"0/ME$*@^H!B%$*BT4TA<!T!V:#>#("=6B$TG1DO@````"+?"0D@\<XB3PD -MZ/S___^)PXM4)"2+0CR)6CR).XE#!(D8A=MT*_9#*`)T)8M#((E$)`B+3"0@ -MBX%(!0``B40D!,<$)`8```#H_/___X!C*/V#Q@&)\(M4)"0X0@IWJ(EL)`2+ -M3"0@B0PDZ/S___^#Q`Q;7E]=PXM3=(72#X7D_O__Z0'___^0C;0F`````(/L -M+(E<)!R)="0@B7PD)(EL)"B+7"0PBT,LBRB)+"3H_/___XG&A<`/A,P```") -M+"3H_/___XG'A<!U&,:#M0````&)="0$B2PDZ/S____II@```,9&)*"-5B6X -M`````,8$$`"#P`&#^`5U],9&*@#&1BL`QD8L`,9&+8C&1BX`QD8O`,9&%:L/ -MMT,<9HE&$(EN&,=&9`@```#'1B"(````BT<(B48T!8@```")1CC&1APDB7Y0 -MQT9L`````(U>/,=$)`0`````B1PDZ/S____'1"0,B````(M'#(M7$(E$)`2) -M5"0(B1PDZ/S___^)="0$B2PDZ/S___^+7"0<BW0D((M\)"2+;"0H@\0LPXGV -M5E.#[!2+="0@C9ZX"0``B1PDZ/S___^$P`^%\0```(D<).C\____B<*Y@/__ -M_X"^/`4``/]T$H"^/04``/\/A<P```"Y@?___SB.XP```',&B([C````@/F" -M#X2P````#[;!B)0&O`0```^WPFG8%`T``(G:`Y:T!0``N`````#&!!``@\`! -M/10-``!U\HG:`Y:T!0``C4(0B4(0B=H#EK0%``"-0A")0A2)V@.6M`4``(U" -M&(E"&(G:`Y:T!0``C4(8B4(<B=H#EK0%``"-0BB)0BB)V@.6M`4``(U"*(E" -M+(N&M`4``(A,`S/'1"0$`````(N&2`4``(D$).C\____B=@#AK0%``#K"8UT -M)@"X`````(/$%%M>PY"-="8`4X/L"(M$)!"+F"`*```%0`D``(D$).C\____ -MB<$/M\#!X`:-%!B+1"04B1"X`````,8$$`"#P`&#^$!U]`^WP8/$"%O#C70F -M`(V\)P````"#[`R+1"00C9`0`0``N0`````YD!`!``!T"HD4).C\____B<&) -MR(/$#,.0D)"0D)`/MD0D"&G`=`0```5T10``BU0D!(D"PXGVC;PG`````(M4 -M)`@/MDPD#`^W1$IP@\`!9HE$2G`/ME("`=`/M\##BU0D!+@!````C;0F```` -M`("Z.S(```%T$H/``8'"I````(/X('7I9KC___/#C78`5E.+="0,#[9,)!`/ -MMEPD%(GRN`$````XBC@R``!U&#B:.3(``'40:<"D````QH0&ES$```'K#H/` -M`8'"I````(/X('726U[#D(VT)@````!55U93@^P(BWPD(`^V1"0DB$0D!XML -M)!R+5"0HQ@+^#[9=!(A<)`.$VW17B>JY`````+X`````N`````"-="8`.;KD -M1P``=2B)\SI<)`=U%FG`=`0```^VA`7810``BU0D*(@"ZQR#Q@&-M"8````` -M@\$!@\`!@<)T!```.DPD`W6^@\0(6UY?7<.-M@````!55U93@^P<BVPD-`^V -M7"0\BWPD,(!\)#@!=!@/MG<$NP````")\(3`#X0C`0``Z?@```#&1"0;`(-\ -M)$``#X33````BU0D0(E4)!0/ME<$QD0D&P"$TG0KB?C&1"0;`+D`````.:CD -M1P``=0<XV703@\$!@$0D&P$%=`0``#A4)!MUX0^V;"0;:=UT!```C80?=$4` -M`,=$)`AD````B40D!(M$)!2)!"3H_/___X"\'W1%````=%^^`````(G=C90? -M<$4``(E4)!"-M"8`````B?(/ML+!X`2+5"04C5P"8(U+!(V$*.!'``"-!`>- -M4`B+0`B)0P2+0@2)002+0@B)00B+0@R)00R#Q@&)\(M4)!`X0@1WN@^V1"0; -M:<!T!```#[:$!W1%``#K*8GZN0````"[`````#FJY$<```^4P`'#@\$!@<)T -M!```B?`XP77F#[;#@\0<6UY?7<.-="8`55=64X/L!`^V1"0DB$0D`P^W7"0H -M9HD<)(M\)!B^`````(GU:=8X#```BT0D'#E$.A1U<(U,%Q2X`````(UV`(G# -M#[91'(32=`:`^O!U2)!IQ3@,``"-%%N-%-"-##J+7"0<B5D<BT0D((E!((U! -M$`^W'"1FB5@6#[9<)`.(6!2)PHM<)"R+`XE"&(M#!(E"',9!,/_K#8/``8/! -M&#V"````=9R#Q@&#_@0/A7+___^#Q`1;7E]=PY"-M"8`````55=64X/L#(ML -M)"2+="0@@'X$`'1)OP````"-M@````")^`^VV&G#=`0``("\!MA%``#]=!_' -M1"0("````(EL)`2-A`;010``B00DZ/S___^$P'4/@\<!B?@X1@1WPKO_```` -MB=B#Q`Q;7E]=PXUV`%.#[`B+7"00BT0D%(E$)`2)'"3H_/___[H)````//]T -M$0^VP&G`=`0```^VE`-Z10``B="#Q`A;PXVT)@````!55U93@^P,BWPD((ML -M)"@/MG0D+`^W7"0PB?F-E_0P``"X`````,8$$`"#P`$]D````'7RQH'U,``` -M$\:!]#```$`/ML>(@?HP``"(F?LP``")\(B!_3```,>!D#$``,#7`@")N8PQ -M``"+15R)@80Q``"+16")@8@Q``"-@?0P``")1"0$BT0D)(D$).C\____@\0, -M6UY?7<.-M"8`````55=64X/L3`^V1"1LB$0D/P^W5"1P9HE4)""+5"1@B=>X -M`0```(G%B<:`NCLR```!#X7<````:<"D`````?B-D)`Q``#&0@<`B;B,,0`` -M#[9*!FG!I````(V4!_0P``"X`````,8$$`"#P`$]D````'7R:=FD````C0P[ -MC9'P,```QD(%D,9"!$`/MT0D(`^VQ(E$)!R(0@H/MD0D((B!^S````^V3"0_ -MB$H-BTPD=(L!B4(4BT$$B4(8:=:D````C00ZQX"0,0``P-<"`(M,)&")B(PQ -M``"-E!>`,0``BTPD:(M!7(E"!(M!8(E""(GJ#[;":<"D````C80']#```(E$ -M)`2+3"1DB0PDZ/S____K%(/``8'"I````(/X(`^%`?___[`!@\1,6UY?7<.) -M]E575E.#[`P/MFPD*`^V?"0LBTPD((G.N`$```"-="8`B<*`N3LR```!#X7" -M````:<"D````C80&D#$``(GIB$@$B?N(6`7&0`<`#[98!FG#I````(V,!O0P -M``"X`````,8$"`"#P`$]D````'7R:<.D````C80&\#```,9`!1#&0`1`B?F( -M2`UITJ0````/MHP6EC$``&G)I````(T$,<>`D#$``,#7`@"+7"0@B9B,,0`` -MC9P6@#$``(GJ#[;":<!T!```C90&P$4``(M"$(E#!(M"%(E#"(V$#O0P``") -M1"0$BTPD)(D,).C\____ZQ2#P`&!P:0```"#^"`/A1W___^P`8/$#%M>7UW# -MC78`5E.#[!2+="0@#[9$)"B)\\:&ES$```"-CO0P``"Z`````,8$"@"#P@&! -M^I````!U\<:#]3````'&@_0P``!`QX.0,0``P-<"`(FSC#$```^VP&G`=`0` -M`(V4`\!%``"+0A")@X0Q``"+0A2)@X@Q``"-@_0P``")1"0$BT0D)(D$).C\ -M____@\046U[#C78`5E.#[!2+="0@#[9$)"B)\\:&ES$```"-CO0P``"Z```` -M`,8$"@"#P@&!^I````!U\<:#]3````#&@_0P``!`QX.0,0``P-<"`(FSC#$` -M``^VP&G`=`0``(V4`\!%``"+0A")@X0Q``"+0A2)@X@Q``"-@_0P``")1"0$ -MBT0D)(D$).C\____@\046U[#C78`55=64X/L3`^V?"1H#[94)&P/MD0D<(A$ -M)">+;"1@B?D/MLF)3"0H:<%T!```@+P%V$4``/T/A#D)``"`^A`/A+D"``"` -M^A!W'(32D(UT)@`/A*$```"`^@$/A14)``"0Z0L!``"`^N)T&X#Z_XUV`'0I -M@/J0#X7Y"```D(UT)@#I-@<``+D`````@'T$`(GV#X4Z"```Z5T(``!I1"0H -M=`0``,:$!=A%``#_@+V7,0```74MBUPD*(E<)`B+="1DB70D!(M\)&")/"3H -M_/___X7`#X6<"```@$4&`>F3"```BT0D*,9$!0<!BU0D9(E4A0SI?0@``("] -MES$```%U6HV-]#```&E$)"AT!````>@/ME$)B)!V10``!=!%```/ME$*@^(! -MB%`)QD`(`(M,)"B)3"0(BUPD9(E<)`2+="1@B30DZ/S___^%P`^%(P@``(!% -M!@'I&@@``(M\)"C&1#T'`8M$)&2)1+T,Z00(``!I="0H=`0``(T\+@^VA28Q -M``"(A\9%```/MX4D,0``9HF$-<1%``"-E#6P10``BX4<,0``B4($BX4@,0`` -MB4((C90U@$4``(N%`#$``(E"!(N%!#$``(E""(V<-9!%``"-2P2-E0@Q``"+ -MA0@Q``")0P2+0@2)002+0@B)00B+0@R)00R+A1@Q``")A#6L10``QH?810`` -M`8!]!A\/A&('``"[`````&E$)"AT!````>B-L'!%``"-N,!%``#K5)`/ML.) -M1"0,BU0D*(E4)`B+3"1DB4PD!(M$)&")!"3H_/___X7`=!%I1"0H=`0``(B< -M!<=%``#K((/#`8!%!@$X7@8/E,"#Z`$AV(A'!X!]!A]T!3I>!G*HQH67,0`` -M`0^V302$R0^$V08``+H`````@'T'`70,ZT0/MM"`?!4'`74_QD05!__'1"04 -M`````,=$)!``````QT0D#/\```")5"0(BT25#(E$)`2+5"1@B10DZ/S____I -MB`8``+@`````@\`!.,AUL.EW!@``BTPD=(E,)#"#P1B)3"0LC4PD0(M<)#"+ -M0QB)1"1`BW0D+(M&!(E$)$1I1"0H=`0``(TT*(V6T$4``,9""!#V0PQP#X1E -M`P``BX;<10``A<`/A(@````/MEH*QT0D"`@```")3"0$@\!<B00DZ/S___^$ -MP'5IBT0D,/9`#P]T7XN&W$4``(7`=%6)QH!^90!T30^VVXE<)`B)="0$B2PD -MZ/S___^+5"0LB50D%`^WP(E$)!")7"0,B70D"(M,)&2)3"0$BUPD8(D<).C\ -M____#[9>9HM&:(7`=`2)QNNMBW0D,`^V1@^H#0^$_0```&E4)"AT!```#[:, -M%71%``"`^1\/A^0```"H"'02#[;!P>`$`=#&A`7H1P``!NL8#[;!P>`$:50D -M*'0$```!T,:$!>A'```'#[;QB?+!X@1I7"0H=`0```':C8P5X$<``,9!"0"+ -M?"0P#[9'#XA!"XM$)$")01"+1"1$B4$4#[9'"8A!"@^V1PV#X`\/MI0=>D4` -M`#C0=@*)T(G"@^(/#[9!#(/@\`G0B$$,B?#!X`1I5"0H=`0```'0C8P%X$<` -M`(M<)#`/MD,I@^`/#[:4%7I%```XT'8"B=#!X`0/ME$,@^(/"<*(40QI1"0H -M=`0``("$!71%```!Z<(!``"H`@^$N@$``(U$)$")1"0$B2PDZ/S___^)PCS_ -M#X5?`0``#[9-!(3)=#@/MH7810``//]T+;H`````//UU&^LB#[;":<!T!``` -M#[:$!=A%```\_W02//UT#H/"`3C*=>#K!;H`````#[;":<!T!```C8P%=$4` -M`+@`````Q@0(`(/``8/X9'7T#[;2B50D-&G2=`0``(T<*HGY#[;!:<!T!``` -MC80%=$4``(F#W$4``(V,%<!%``!I="0H=`0``(V4-<!%``"+0A")00B+0A2) -M00R+?"1DB;OD1P```>Z+AN!%``")@^!%``#&@]A%``#_C8-P10``#[9("XM\ -M)#`/ME<)B)0+?$4``(!`"P$/MHYZ10``#[97#8/B#SC*=@*)RHA0"FE4)#1T -M!```C8P5P$4``(M$)$")01"+1"1$B4$4`>J+3"0P#[9!#XB"=T4```^V7"0G -MB)K:10``#[9%!3I%!'4$QD4%`(!%!0&+="0TQD0U!P&+?"1DB7RU#.M!:40D -M*'0$```/MM)IRG0$``"-E`UT10``.90%W$4``'0@C1PIC8-P10``#[9("XMT -M)#`/ME8)B)0+?$4``(!`"P&+?"0P#[9'"8E$)`B+1"0HB40D!(DL).C\____ -M:40D*'0$``"`O`7'10````^$G````(!]!A]U<.F-`@``QH;810``$`^V0P>) -M1"0,BU0D*(E4)`B+3"1DB4PD!(M$)&")!"3H_/___X7`#X5:`@``@$4&`0^V -M2P</ML&#P`$/MI9V10``.=!U#<9#!P#I.`(``(UT)@"-00&(0P>`?08?#X0D -M`@``ZQ%I1"0H=`0``(TT*(V>P$4```^V0P<ZAG9%```/@G3____I_`$``(!] -M!@`/A?(!``#'1"04`````,=$)!``````QT0D#)````"+5"0HB50D"(M,)&2) -M3"0$BUPD8(D<).C\____Z;D!``"_`````&G'.`P``(MT)&0Y="@4=7:-7`4P -MO@````")1"0@C78`@#O_=5.`?08?#X2%`0``C01VBU0D((U$PA"-1`48B40D -M%`^W0_:)1"00#[9#](E$)`R+0_")1"0(BTPD9(E,)`2+1"1@B00DZ/S___^% -MP'4'@$4&`<8#\(/&`8/#&('^@@```'6:@\<!@_\$#X5N____@'T&``^%&`$` -M``^V302$R0^$V````+H`````@'T'`70,ZT0/MM"`?!4'`75!QD05!__'1"04 -M`````,=$)!``````QT0D#/\```")5"0(BT25#(E$)`2+5"1@B10DZ/S____I -MNP```+@`````B?:#P`$XR'6NZW>-M"8`````#[;!:<!T!```C90%T$4```^V -M0@@\_70(//]T!,9""/Z#P0$X301WV&E$)"AT!```BYP%X$4``+\`````C70F -M`(!\+Q@!=1G&1"\8`(M$+Q2)1"0$BTPD8(D,)/_3C78`@<<X#```@?_@,``` -M=#;KT,=$)!0`````QT0D$`````#'1"0,X@```(M<)"B)7"0(BW0D9(ET)`2+ -M?"1@B3PDZ/S___^#Q$Q;7E]=PXUT)@"#["R)7"0@B70D)(E\)"B+="0TBYZ8 -M````@'L&``^$A`$``(V&D````(E$)`2)'"3H_/___XG!//\/A&@!``")]P^V -M1@$\`71L/`%R&#P0#X2L````/)`/A4H!``"-=@#I^@```("[ES$```"-="8` -M#X4Q`0``QH.7,0```8!K!@''1"04`````,=$)!``````QT0D#``````/ML&) -M1"0(BT0D,(E$)`2)'"3H_/___^GR````@+N7,0````^%Y0```,:#ES$```&` -M:P8!QT0D%`````#'1"00`````,=$)`P!````#[;!B40D"(M$)#")1"0$B1PD -MZ/S____II@```+H`````.HP:.#(``'41#[:$&CDR```Z1PET$HUT)@"!PJ0` -M``"!^MP3``!UV(!K!@&)?"04#[9'"8E$)!#'1"0,$`````^VP8E$)`B+1"0P -MB40D!(D<).C\____ZT@/MH:B````:<"D````QH0#ES$```&`:P8!QT0D%``` -M``#'1"00`````,=$)`R0````#[;!B40D"(M$)#")1"0$B1PDZ/S___^+7"0@ -MBW0D)(M\)"B#Q"S#B?:-O"<`````5E.+5"00#[9T)!2+7"0,A=)T#XG9B=#& -M`0"#P0&#Z`%U]8D3@>IT10``P>H"N%FV^7+WXL'J!XA3!(GP.-!S`XA#!(![ -M!`!T);H`````B?8/ML+&1`,'_VG`=`0``,:$`]A%``#]@\(!.%,$=^+&0P8` -MQD,%`(G8N@````"-=@#&@)<Q```!B)"6,0``@\(!!:0```"#^B!UYEM>PXUV -M`%=64XM\)!2+3"00@'D$``^$@0```+L`````#[;S:<9T!```.;P!Y$<``'5B -MN``````XG`@X,@``=0C&A`@[,@```06D````/=P3``!UXVG&=`0``,>$`>1' -M````````C90!=$4``+@`````D(UT)@#&!!``@\`!@_AD=?1IQG0$``#&A`'8 -M10``_8!I!0&#PP$X601WA(G+O@`````Y>Q1U+<=#%`````#&0Q@`:<8X#``` -MC40!%+H`````C70F`,9`'`"#P@&#P!B`^H)U\8/&`8'#.`P``(/^!'7`6UY? -MP^L-D)"0D)"0D)"0D)"0D%575E.#[!P/MD0D/(A$)!J+7"0P#[9#!3I#!'4$ -MQD,%``^V4P6(5"0;B=V)V+D`````B<Z)SXM0%#M4)#1U2FG!.`P``,9$`Q@! -M#[93!,9$)!L`A-)T6\9$)!L`BWPD-#F]Y$<``'4.#[:%V$4``(/``SP!=CR` -M1"0;`8'%=`0``#A4)!MT*^O3A=)U%6G'.`P```'8BU0D-(E0%,9`&`'K$(/& -M`8/!`04X#```@_D$=8")\@^VPFG`.`P``(U$`QRZ`````,8$`@"#P@&!^@(, -M``!U\0^V="0;BWPD-(E\LPQIQG0$``"-E`-T10``N`````#&!!``@\`!@_AD -M=?1IQG0$``"-E`/D10``N`````#&!!``@\`!/0`"``!U\FG.=`0``(T4&8M$ -M)#2)@N1'``"+1"1`B8+@10``QH+810``_\>"W$4```````"-C`O`10``BWPD -M.(L'B4$0BT<$B4$4#[9$)!J(@GI%``#'1"04`````,=$)!``````QT0D#/\` -M``")="0(BU0D-(E4)`2+?"0PB3PDZ/S___^`0P4!@\0<6UY?7<.0D)"0D%93 -MBU0D#(L"BS`/ME@KA-MT-P^V4@FY`````/;"`70*ZR>)T-/XJ`%U!X/!`3C9 -M=?&`^0-V&`^VP8V$AM`!``"+`*,`````ZQ:Y``````^VP8V$AM`!``"+`*,` -M````P>@4@^`!6U[#D(VT)@````!55U93@^P$BT0D&(L0#[9Z*[T*````B?F$ -MR71)#[9P";L`````O0H```"Y`````)")\-/XJ`%T'@^V@L(+``"#X`.#P`B( -M1"0#B>@Z1"0#=@4/MFPD`X/#`8/!`8/"1(GX.,-URXGJ#[;"@\0$6UY?7<.- -MM"8`````C;PG`````%575E.#[`2+1"08BQ`/MGHKO0@```")^83)=$D/MG`) -MNP````"]"````+D`````D(GPT_BH`70>#[:"P@L``(/@`X/`"(A$)`.)Z#I$ -M)`-S!0^V;"0#@\,!@\$!@\)$B?@XPW7+B>H/ML*#Q`1;7E]=PXVT)@````"- -MO"<`````4XM<)`@/M@/`Z`2)PH/B!P^V2P+VP01T`X#.`@^V0P.H!'0&@<H` -M``(`]L$(=`.`S@BH"'0&@<H```@`]L$"=`.`S@2H`G0&@<H```0`#[9#%,'@ -M&`G06\.-M"8`````@^P$BT0D"(D$).C\____@\0$PXVV`````(V\)P````"+ -M3"0$BX%<!0``)?___P"Z`````#U0`9,`=14/MH%?!0``P.@$/`P/E,`/MM"- -M=@")T,.-M@````"-O"<`````4XG#A=)^0`^V"(3)=`6`^2!U+;@`````ZQ:- -MM@`````/M@P8A,ET"(#Y('43C78`@\`!.=!UZ>L.C;0F`````+@`````ZP6X -M`0```%N-=@##ZPV0D)"0D)"0D)"0D)"04XM<)`@/MD,##[93`L'B"`G0P>`0 -M#[9+`0^V$\'B"`G1"<A;PXUT)@"-O"<`````5U93B<:)TXG/A<ET'KD````` -M#[86#[9&`8@#B%,!@\,"@\8"@\$!.?EUYUM>7\.0@^P<B5PD$(ET)!2)?"08 -MBW0D((M\)"0/MT<0NO\```!F/84`=PL/M\`/MI0&O`0```^WTFG2L`````.6 -MF`4``(N>1`H```^V0C3!X`B-A`-,"```BPB)#0````"!X?\````/MD(TP>`( -MC9P#1`@``(L#HP````#!X`@)R(F"H````&;'@IP``````(E\)`2)-"3H_/__ -M_XM<)!"+="04BWPD&(/$',.)]HV\)P````"#[!R)7"0,B70D$(E\)!2);"08 -MBVPD(`^V?"0DBW4`B?@\`W8P#[;8P>,#C80>,`(``,<`#````,<$)!`G``#H -M_/___XV$'C0"``"+,(DU`````.LPB?@/MMC!XP.-A#-0`@``QP`,````QP0D -M$"<``.C\____C9PS5`(``(LSB34`````B?@/MLB)R,'@!HT$B(V4!;`+```/ -MMEH,@^/\B%H,B?`E```_`#T``!``=0^)V(/(`HA"#.L9D(UT)@")R,'@!HT4 -MB(G8@\@!B(05O`L``(M<)`R+="00BWPD%(ML)!B#Q!S#D(VT)@````!55U93 -M@^P<BT0D-(M4)#"+$HE4)!B+$L9`)0#&0"0%QD`G!HM,)#")2"RY`````+T` -M````C8(``@``B40D%('"!`(``(E4)!#K%XVV`````(M4)#`/MD()T_BH`74, -M@\$!BT0D&#I(*W+F@/D#=G$/MMG!XP.+?"04`=_'!RP```#'!"00)P``Z/S_ -M__\#7"00BS.)-0````#'!R0```#'!"00)P``Z/S___^+`Z,`````P>`(@>;_ -M````"<;'!R````#'!"00)P``Z/S___^+&XD=`````.MOC;0F``````^VV<'C -M`XM\)!0!W\<'+````,<$)!`G``#H_/___P-<)!"+,XDU`````,<')````,<$ -M)!`G``#H_/___XL#HP````#!X`B!YO\````)QL<'(````,<$)!`G``#H_/__ -M_XL;B1T`````@?X!`6F6=1>+5"0P@$H(!HG8P>@0/%`/E,`/ML#K1H'^`0$` -M`'41B=C!Z!`\4`^4P`^VP.LOB?;'!"2($P``Z/S___^#Q0&)Z8#Y!'<*N0`` -M``#IP?[__XG8P>@0/%`/E,`/ML"#Q!Q;7E]=PXUT)@"-O"<`````55=64X/L -M#(MT)""+;"0DBT94BSAF@[Z<`````'0RB>O'!"3H`P``Z/S___^%[70%@_L! -M=AN)/"3H_/___V:#OIP`````=`F#ZP+KU(UT)@"#Q`Q;7E]=PY"-M"8````` -M@^P<B5PD#(ET)!")?"04B6PD&(M<)"P/MFPD)`^W?"0H#[9$)#"(1"0+BU0D -M((M"5(LPB30DZ/S___^)PL9`).'&0"4!QD`F$K@/````B>F$R74(BTPD(`^V -M02N(0B>)^(A"*(GY#[;%B$(I#[;'B$(JB=C!Z!"(0BN)V,'H&(A"+(A:+8M, -M)"`/MT$D9HE"$(ER&,="(`````#'0C0`````N`````"`?"0+`'4%N`````") -M0FR)5"0$B30DZ/S___^+7"0,BW0D$(M\)!2+;"08@\0<PXUV`(V\)P````"# -M[!R)7"0,B70D$(E\)!2);"08BUPD+`^V;"0D#[=\)"B+5"0@BT)4BS")-"3H -M_/___XG"QD`DX<9`)0'&0"82N`\```")Z83)=0B+3"0@#[9!*XA")XGXB$(H -MB?D/ML6(0BD/ML>(0BJ)V,'H$(A"*XG8P>@8B$(LB%HMBTPD(`^W021FB4(0 -MB7(8QT(@`````,="-`````#'0FP`````B50D!(DT).C\____BUPD#(MT)!"+ -M?"04BVPD&(/$',-55U93@^P<BWPD,`^V1"0TB$0D&P^W;"0XA?\/A.X```"+ -M-X7V#X3D````#[9>*X7;?D.+1U0/ME`)N0````#VP@%T"NLPB=#3^*@!=0># -MP0$YV77Q@_D#?B&+!@70`0``C02(BP"C`````,'H%(/P`8/@`>L?N0````"+ -M!@70`0``C02(BP"C`````,'H%(/P`8/@`83`=7:`OZP`````=0:`?R8`=6</ -MMT<D@+P&O`0``/]T6<9')B5FQX><`````0`/M\4/ME0D&\=$)!`!````BTPD -M/(E,)`R)1"0(B50D!(D\).C\____QT0D!`4```")/"3H_/___\9')@!F@[^< -M``````^4P`^VP.L%N`````"#Q!Q;7E]=PXUT)@"#[!R)7"0,B70D$(E\)!2) -M;"08BWPD(`^V;"0D#[=<)"B+1U2+,(DT).C\____B<+&0"3AQD`E`<9`)A&X -M#P```(GIA,EU!`^V1RN(0B>(6B@/ML>(0BD/MT<D9HE"$(ER&,="(`````#' -M0C0`````QT)L`````(E4)`2)-"3H_/___XM<)`R+="00BWPD%(ML)!B#Q!S# -MB?:-O"<`````55=64X/L'(M\)#`/MD0D-(A$)!L/MVPD.(7_#X3S````BS>% -M]@^$Z0````^V7BN%VWY#BT=4#[90";D`````]L(!=`KK,(G0T_BH`74'@\$! -M.<MU\8/Y`WXABP8%T`$``(T$B(L`HP````#!Z!2#\`&#X`'K'[D`````BP8% -MT`$``(T$B(L`HP````#!Z!2#\`&#X`&$P'5[@+^L`````'4&@'\F`'5L#[=' -M)("\!KP$``#_=%[&1R8E9L>'G`````$`#[?%#[94)!O'1"0,`0```(E$)`B) -M5"0$B3PDZ/S____'1"0$!0```(D\).C\____QD<F`&:#OYP`````=1.+AZ`` -M``"+5"0\B0*X`0```.L%N`````"#Q!Q;7E]=P^L-D)"0D)"0D)"0D)"0D(/L -M'(E<)`R)="00B7PD%(EL)!B+?"0@#[9L)"0/MUPD*`^V1"0LB$0D"XM'5(LP -MB30DZ/S___^)PL9`).'&0"4!QD`F$;@/````B>F$R74$#[9'*XA")XA:*`^V -MQXA"*0^W1R1FB4(0B7(8QT(@`````,="-`````"X`````(!\)`L`=06X```` -M`(E";(E4)`2)-"3H_/___XM<)`R+="00BWPD%(ML)!B#Q!S#C78`@^P<B5PD -M#(ET)!")?"04B6PD&(ML)"0/MG0D*`^V?"0LBT0D((L8B1PDZ/S___^)PH7` -M=1#&A;4````!QD4F`^E_````QD`DX<9`)0&)\#P!&<#WT(/``HA")HGXA,!U -M/X-]-`!T!`^V14V(0B</MT4<9HE"$(E:&,="(`````#'0C0`````N"`D`P") -M0FR)5"0$B1PDZ/S____K)XUV`,9")P\/MT4<9HE"$(E:&,="(`````#'0C0` -M````N`````#KR(M<)`R+="00BWPD%(ML)!B#Q!S#D(VT)@````!55U93@^PL -MBVPD2(M$)$"+$(M$)$3!X`.-O!```@``C;00!`(``+L<`0``D(UT)@"#?"1$ -M`W89B1_'!"00)P``Z/S___^+!J,`````ZQ>)]HD?QP0D$"<``.C\____BP:C -M`````(F$'/3^__^#PP2!^S@!``!UN8M$)!")10"+1"04B44$BT0D&(E%"(M$ -M)!R)10R+1"0@B440BT0D)(E%%(M$)"B)11B#Q"Q;7E]=PU575E.#["R+;"1( -MBT0D0(L0BT0D1,'@`XV\$``"``"-M!`$`@``NP`!``"0C70F`(-\)$0#=AF) -M'\<$)!`G``#H_/___XL&HP````#K%XGVB1_'!"00)P``Z/S___^+!J,````` -MB80<$/___X/#!('['`$``'6YBT0D$(E%`(M$)!2)102+1"08B44(BT0D'(E% -M#(M$)"")11"+1"0DB444BT0D*(E%&(/$+%M>7UW#55=64X/L/`^V1"14B$0D -M$XM4)%"+$HE4)!@/MOB)^,'@!HT$N`-$)%"+3"10B8B<"P``QH"]"P```(E\ -M)`2)#"3H_/___XUT)!R)\(GRB?;&``"#P`&)TXUL)#PYZ'7P#[9$)!.)1"04 -MB50D"(E$)`2+5"10B10DZ/S___^)'"3H_/___XE$)`R-#+T`````B?K!X@:- -M%!&+1"10C1P"BT0D#(F#I`L``(M$)%"-E!"0"P``BT0D*(E"&(M$)"R)0AR` -M?"03`W8IBU0D&(V$"M`!``"+`*,`````B8/`"P``C83Z@`$``(L0B14````` -MZS^-%+T`````BTPD&(V$$=`!``"+"(D-`````(GXP>`&`<*+1"10B8P0P`L` -M`(M4)!B-A/J``0``BQ")%0````")^,'@!HT$N`-$)%")D,0+``#V@,(+```0 -M#X1``0``]H"\"P```G1?C;0F`````,8&`(/&`3GN=?:-7"0<B5PD"(M,)!2) -M3"0$BT0D4(D$).C\____B1PDZ/S___^)^L'B!HT4NHM,)%")A!&P"P``C901 -MH`L``(M$)"B)0A2+1"0LB4(8ZQ>)^,'@!HT$N(M4)%#'A`*P"P```0`"`(!\ -M)!,#=CF-'/T`````BTPD&(V$"S`"``#'`!@```#'!"00)P``Z/S___^+1"08 -MC9P#-`(``(L3B14`````ZS>-'/T`````BU0D&(V$$U`"``#'`!@```#'!"00 -M)P``Z/S___^+3"08C9P+5`(``(L3B14`````B?C!X`:-!+B+3"10]X0!P`L` -M`````P!U"('B____W^L&@<H````@@'PD$P-V#XM,)!B-A/DT`@``B1#K#8M, -M)!B-A/E4`@``B1"#Q#Q;7E]=PY"-M"8`````55=64X/L#(M\)""+;"0D#[=% -M`&:%P'D+)0`?``#!^`B(1R6-1U"-312+512)5U"+402)4`2+40B)4`B+40R) -M4`R+41")4!"-MXP```"+52Z)EXP```"+53*)5@2-7V2-33:+53:)5V2+402) -M4P2+40B)4PB+40R)4PR+41")4Q"+412)4Q2+41B)4QB+41R)4QR+42")4R"+ -M422)4R2Y"@```(G"Z$;Q__^Y!````(GRB?#H./'__[D4````B=J)V.@J\?__ -M9L='.```9L='.@``9H.]L@$```$/E,+!X@,/MD<H@^#W"="(1RCVA:<````$ -M=`9FQT<X`0#VA:0````!=")F@T\X`O:%J@````%T!6:#3SH!]H6H`````70& -M9H%/.``!]H6D````('039H-/.`3VA:H````@=`5F@T\Z`O:%I````$!T%6:! -M3SB``/:%J@```$!T!F:#3SH(D,9'3@+VA9D````!=#,/MT<XJ`%T#(/("&:) -M1SAF@T\Z$`^VA98```"#X!^#P`&(1TX\('4+QD=.'XVT)@````#VA9@````( -M=`9F@4\X``+VA9@````$=`5F@T\X(/:%F`````)T!6:#3S@0]H6H````('0. -M]H6N````('0%9H-/.$#V1S@!=!B+A<@```"+E<P```")1T2)5TCK$8UT)@"+ -M17B)1T3'1T@`````@T=$_X-72/_V16H"=!D/MX6`````J`]T#F:#^`(9P(/` -M!(A'/.L$QD<\`L9'/?\/MU5^#[?"J`1T"<9'/0+K&8UV`*@"=`;&1ST!ZPSV -MP@&-=@!T!,9'/0#&1S[_]D5J!'0=N0`````/MX6P````T_BH`70#B$\^@\$! -M@_D'=>C'1"0$``(``(DL).C\____B8>8````N`$```"#Q`Q;7E]=PU575E.# -M["P/MD0D1(A$)!.+5"1`BQ*)5"0@#[;`B40D%(M4)$`/MD(JBU0D%(E4)`B) -M1"0$QP0D,`,``.C\____BT0D0(!X*J`/A%<&``"+1"04P>`#BU0D((V4`C`" -M``")5"08BU0D((VL`C0"``"-E`)0`@``B50D'(M4)""-O`)4`@``QT0D)``` -M``#'1"0H`````+X`````D(UT)@")\#P!="P\`7(6/`)U-,=$)"0@`0``QT0D -M*"0!``#K(L=$)"08`0``QT0D*!P!``#K$,=$)"0<`0``QT0D*"`!``")="0( -MBU0D%(E4)`3'!"2U`0``Z/S___^`?"03`P^&XP```(M4)"2+1"08B1#'!"00 -M)P``Z/S___^+70")'0````")7"0(BT0D)(E$)`3'!"3'`0``Z/S___^!X___ -M0?"!RP``-`N)7"0(BU0D)(E4)`3'!"10`P``Z/S___^)70"+10"C`````(E$ -M)`B+1"0DB40D!,<$).(!``#H_/___XM$)"B+5"08B0+'!"00)P``Z/S___^+ -M70")'0````")7"0(BU0D*(E4)`3'!"3'`0``Z/S___^`YS^`S\")7"0(BT0D -M*(E$)`3'!"10`P``Z/S___^)70"+10"C`````.G8````BT0D)(M4)!R)`L<$ -M)!`G``#H_/___XL?B1T`````B5PD"(M4)"2)5"0$QP0DQP$``.C\____@>/_ -M_T'P@<L``#0+B5PD"(M$)"2)1"0$QP0D4`,``.C\____B1^+!Z,`````B40D -M"(M4)"2)5"0$QP0DX@$``.C\____BU0D*(M$)!R)$,<$)!`G``#H_/___XL? -MB1T`````B5PD"(M$)"B)1"0$QP0DQP$``.C\____@.<_@,_`B5PD"(M4)"B) -M5"0$QP0D4`,``.C\____B1^+!Z,`````B40D"(M$)"B)1"0$QP0DX@$``.C\ -M____@\8!@_X##X6\_?__BU0D0(!Z*J`/A+0#``"+1"04B40D!,<$)/L!``#H -M_/___X!\)!,#=B&+5"08QP(,`0``QP0D$"<``.C\____BUT`B1T`````ZQZ+ -M1"0<QP`,`0``QP0D$"<``.C\____BQ^)'0````")7"0(QT0D!`P!``#'!"3' -M`0``Z/S___^)V+``BU0D0(!Z*@%U#HG#@,OWZPR-M"8`````B<.`R_R)7"0( -MQT0D!`P!``#'!"10`P``Z/S___^`?"03`P^&>P$``(E=`(M%`*,`````B40D -M",=$)`0,`0``QP0DX@$``.C\____BT0D&,<`H`$``,<$)!`G``#H_/___XM= -M`(D=`````(E<)`C'1"0$H`$``,<$),<!``#H_/___X'C_O_[_XE<)`C'1"0$ -MH`$``,<$)%`#``#H_/___XE=`(M%`*,`````B40D",=$)`2@`0``QP0DX@$` -M`.C\____BU0D&,<"$`$``,<$)!`G``#H_/___XM=`(D=`````(E<)`C'1"0$ -M$`$``,<$),<!``#H_/___X'C`/#__X'+P`\``(E<)`C'1"0$$`$``,<$)%`# -M``#H_/___XE=`(M%`*,`````B40D",=$)`00`0``QP0DX@$``.C\____BT0D -M&,<`H`$``,<$)!`G``#H_/___XM=`(D=`````(E<)`C'1"0$H`$``,<$),<! -M``#H_/___X/C]XE<)`C'1"0$H`$``,<$)%`#``#H_/___XE=`(M%`*,````` -MZ6L!``")'XL'HP````")1"0(QT0D!`P!``#'!"3B`0``Z/S___^+5"0<QP*@ -M`0``QP0D$"<``.C\____BQ^)'0````")7"0(QT0D!*`!``#'!"3'`0``Z/S_ -M__^!X_[_^_^)7"0(QT0D!*`!``#'!"10`P``Z/S___^)'XL'HP````")1"0( -MQT0D!*`!``#'!"3B`0``Z/S___^+1"0<QP`0`0``QP0D$"<``.C\____BQ^) -M'0````")7"0(QT0D!!`!``#'!"3'`0``Z/S___^!XP#P__^!R\`/``")7"0( -MQT0D!!`!``#'!"10`P``Z/S___^)'XL'HP````")1"0(QT0D!!`!``#'!"3B -M`0``Z/S___^+5"0<QP*@`0``QP0D$"<``.C\____BQ^)'0````")7"0(QT0D -M!*`!``#'!"3'`0``Z/S___^#X_>)7"0(QT0D!*`!``#'!"10`P``Z/S___^) -M'XL'HP````")1"0(QT0D!*`!``#'!"3B`0``Z/S___^`?"03`W9XBW0D%,'F -M`XM4)""-A!8P`@``QP`(````QP0D$"<``.C\____BT0D((VT!C0"``"+'HD= -M`````(E<)`C'1"0$"````,<$),<!``#H_/___X/CCX/+<(E<)`C'1"0$"``` -M`,<$)%`#``#H_/___XD>BP:C`````.MVBW0D%,'F`XM4)""-A!90`@``QP`( -M````QP0D$"<``.C\____BT0D((VT!E0"``"+'HD=`````(E<)`C'1"0$"``` -M`,<$),<!``#H_/___X/CCX/+<(E<)`C'1"0$"````,<$)%`#``#H_/___XD> -MBP:C`````(E$)`C'1"0$"````,<$).(!``#H_/___X/$+%M>7UW#D(UT)@"# -M[!R)7"0,B70D$(E\)!2);"08BVPD((M]`+N`____ZP6`^X5W2@^VPP^VM`>\ -M!```B?`\_W0Y#[;`:<`4#0```X>T!0``.6@(=27'1"0("````(M4)"2)5"0$ -MB00DZ/S___^$P'0)B?#K$I"-="8`@\,!@/N!=JFX_____P^VP(M<)`R+="00 -MBWPD%(ML)!B#Q!S#C;8`````C;\`````55=64X/L/(M4)%"+`H!Z*P`/A"L# -M``#'1"0X`````(V(``(``(E,)!@%!`(``(E$)!0/MD0D.(A$)#</MM")5"0L -MB=#!X`:-!)"+3"10C1P(]H/""P``$`^$R@(``(V3L`L``+@!````#[9,)"S3 -MX`A"#8N;H`L``(E<)##V0@P"#X0K`0``#[9$)#>-<`&)\HM,)%`X42L/AA0! -M``"+1"0LP>`"B40D((M4)"S!X@:)5"0<B?$/MOF)^,'@!HT<N(M$)%`!V(E$ -M)"CV@,(+```0#X3(````BVPD(`-L)!R+5"10C405`(V(L`L``(E,)"3W@+`+ -M``````X`#X2>````C80:M`L``(V4*K0+``#'1"0("````(E$)`2)%"3H_/__ -M_X3`='B+5"10C80:J`L``(V4*J@+``#'1"0("````(E$)`2)%"3H_/___X3` -M=$ZX`0```(GYT^"+5"0D"D(-B$(-BTPD*(B!O0L``(-\)#``=0R+@:`+``") -M1"0PZQZ)^,'@!HT$N(M,)#"+5"10B8P"H`L``(VT)@````"#Q@&)\(M4)%`X -M0BL/AP+___^#?"0P``^%TP```(M,)%")#"3H_/___XE$)#"%P`^$;0$``(M$ -M)"S!X`:+="0LC0RP`TPD4(M$)#")@:`+```/MD0D-XG"P>(&C82"D`L``(M4 -M)%"-1`(,BW0D,(E&&`^V@;P+``"(1@;&1@4`B1;&1@H`QD8T`,9&'``/ME0D -M-X/"`8M$)%`X4"MV;XM$)"S!X`:+3"0LC02(BW0D4(V<!K`+```/MLH/MD,- -MT_BH`707B<C!X`:-!(B+="0PBTPD4(FT`:`+``"#P@&+1"10.%`K=B;KSHVT -M)@````"+1"0LP>`&BU0D+(T$D(MT)#"+3"10B;0!H`L``(M$)"S!X`:+5"0L -MC020BTPD4(V4`;`+```/MD(-BW0D,(A&"0^V<@V`?"0W`W8GBUPD+,'C`XM$ -M)!@!V,<`.````,<$)!`G``#H_/___P-<)!2),^LEBUPD+,'C`XM$)!@!V,<` -M.````,<$)!`G``#H_/___P-<)!2),X-$)#@!#[9$)#>#P`&+5"10.$(K#X?P -M_/__@\0\6UY?7<.-M@````!55U93@^Q,BW0D8(L>QD0D0%#&1"1!!<9$)$($ -MQD0D0S#&1"1$$<9$)$6KQD0D1@#&1"1'`,>#`$`!`!,@``"+!L>`!$`!`/__ -M``"+!L>`!$`!```````[MD@%```/A>0```"-OL0,``"-KEP%``#'1"00`0`` -M`,=$)`P(````B6PD",=$)`0```(`B30DZ/S___^+AE0%```/MI9?!0``@^H$ -MC02"B(9?!0``B30DZ/S___^$P'41BT0D0(F&7`4``(M$)$2)102A``````"& -M7P4``(/``:,`````#[:&7`4``(B'7`4```^VAET%``"(AUT%```/MH9>!0`` -MB(=>!0``#[:&7P4``(/``HB'7P4```^VAF`%``"(AV`%```/MH9A!0``B(=A -M!0``#[:&8@4``(B'8@4```^VAF,%``"(AV,%``")WXV#``$``(E$)"B+@P`! -M``"C``````^WT(E4)$BH('0+)=__``")1"1(ZQ:)T(/(((E$)$B+5"0HB0*+ -M`J,`````BP;'@`0!````````BP;'@!@!````````BP;'@!P!````````QP0D -MD-`#`.C\____QX=P`0``&`$``(N'=`$``*,`````@.3]@,P$B40D2,>'<`$` -M`!@!``"+1"1(B8=T`0``QX=P`0``*`$``,>'=`$``']_``#'AW`!```D`0`` -MBX=T`0``HP````!FN```#?\_``")1"1(QX=P`0``)`$``(M$)$B)AW0!``#' -MAW`!```\`0``QX=T`0````!Z`,>'<`$``*0!``#'AW0!``!]O^__QX=P`0`` -MN`$``(N'=`$``*,`````)?__```-``#Z`(E$)$C'AW`!``"X`0``BT0D2(F' -M=`$``,>'G````/\```#'AY`"``!$`0``QX>4`@``!A``",>'D`(``+0!``#' -MAY0"``!?<```QX>0`@``,````(N'E`(``*,`````,.2`S#.)1"1(B8>4`@`` -M@'XK``^$>@(``,=$)"P`````C8=0`@``B40D&(V75`(``(E4)!0/MD0D+(A$ -M)#,\`P^&$0$```^VZ(T4[0````")5"0DC807,`(``(E$)"#'``@```#'!"00 -M)P``Z/S___^+5"0DC9P7-`(``(L#HP````")1"1(#0``@`")`XV&7`4``(E$ -M)`B);"0$B30DZ/S___^);"0$B30DZ/S___^+1"0@QP!$`0``QP0D$"<``.C\ -M____QP,&$``(BU0D(,<"M`$``,<$)!`G``#H_/___\<#7W```(M$)"#'``@` -M``#'!"00)P``Z/S____'1"1(_U2``,<#_U0``,=$)`@!````B6PD!(DT).C\ -M____BT0D)(V4!X`!``"+`J,`````)?___O^)`L=$)$@%`<@`BU0D)(V$%X0! -M``#'``4!R`#I#@$```^V;"0SC03M`````(E$)#B+5"08`<*)5"0<QP((```` -MQP0D$"<``.C\____BUPD.`-<)!2+`Z,`````B40D2`T``(``B0.-AEP%``") -M1"0(B6PD!(DT).C\____B6PD!(DT).C\____BT0D',<`1`$``,<$)!`G``#H -M_/___\<#!A``"(M4)!S'`K0!``#'!"00)P``Z/S____'`U]P``"+1"0<QP`( -M````QP0D$"<``.C\____QT0D2/]4@`#'`_]4``#'1"0(`0```(EL)`2)-"3H -M_/___XM$)#B-E#B``0``BP*C`````"7___[_B0+'1"1(!0'(`(M4)#B-E#J$ -M`0``B50D-,<"!0'(`,<$)*"&`0#H_/___XEL)`2)-"3H_/___X-$)"P!#[9$ -M)#.#P`$X1BL/AZ+]__^)-"3H_/___XN'!`$``*,`````@\@"B40D2(F'!`$` -M`(M4)"B+`J,`````@^#P@\@-B40D2(D"BP*C`````(N&)`H``(F'"`$``(N& -M*`H``(F'#`$``(N&2`H``(F'$`$``(N&3`H``(F'%`$``,>'(`$````````/ -MMX:8"P``)?\/```-```!`(F'(`$``(N&D`H``(F')`$``(N&E`H``(F'*`$` -M`(N&L`H``,<`_P\``,>'-`$````````/MX::"P``)?\/```-```!`(F'-`$` -M`(N&M`H``(F'.`$``(N&N`H``(F'/`$``,>'2`$```````#'1"1(``$``,>' -M3`$````!``"+AP0!``"C`````(/(68F'!`$``,=$)$C[_P`,QX=4`0``^_\` -M#,>'7`$``/__``"X`````(UV`,>$AM0%````````QT2&8`````"#P`&#^!!U -MY6;'AI0+``#_#V;'AI8+``#_#\9&.`&P`8/$3%M>7UW#D(UT)@!55U93@^P< -MB40D%(G7BRB)+"3H_/___XG#A<!U#,:'M0````'IP````(DL).C\____B<:% -MP'48QH>U`````8E<)`2)+"3H_/___^F:````C4,\B40D&,9#).'&0R4!QD,F -M`P^W1QQFB4,0QD-H"HM4)!2+`HE#&,=#(``"``"+5@B)4S2X`````(VT)@`` -M``#&!!``@\`!/0`"``!U\HES4,=#;"`D`P#'1"0$`````(M$)!B)!"3H_/__ -M_XM#((E$)`R+1@R+5A")1"0$B50D"(M4)!B)%"3H_/___XE<)`2)+"3H_/__ -M_X/$'%M>7UW#ZPV0D)"0D)"0D)"0D)"055=64X/L3(M$)&"+*`^V0`F$P`^$ -M5P0```^VV,=$)#@`````]L,!=1FZ`````(GV@\(!#[;*B4PD.(G8T_BH`73N -MBT0D.,'@!HMT)#B-!+"-%"B+@K`+``"I```"`'00#0``!``E___]_XF"L`L` -M`(M$)#C!X`:+?"0XC02XBX0%L`L``*D```0`#X0&`P``BX5(!0``B40D2#GH -M=0J-E<0,``")5"1(BT0D.,'@!HM,)#B-!(@!Z`^VD+L+``")5"0H#[:0N@L` -M`(E4)"0/MI"Y"P``B50D(`^VD+@+``")5"0<#[:0MPL``(E4)!@/MI"V"P`` -MB50D%`^VD+4+``")5"00#[:`M`L``(E$)`P/MD4IB40D"(E,)`3'!"1P`P`` -MZ/S____'1"0\`````(MT)#C!Y@*)="1$BWPD.,'G!HE\)$"+5"0\BTPD2`^V -MA`H\!0``//\/A*(````/ML!IP!0-``")PP.9M`4``(MT)$2+?"1`C80^H`L` -M`(U\!12X"````/R)WHG!\Z8/E\(/DL`XPG5H#[9#!XE$)"`/MD,&B40D'`^V -M0P6)1"08#[9#!(E$)!0/MD,#B40D$`^V0P*)1"0,#[9#`8E$)`@/M@.)1"0$ -MQP0DP`,``.C\____BWPD8,9'!?^)?"0$B2PDZ/S____I=`(``(UT)@"#1"0\ -M`8-\)#P"#X4V____B2PDZ/S___^)PX7`#X1.`@``BT0D.,'@!HM4)#B-!)#V -MA`6Q"P``!'0$@$LU`HM$)#C!X`:+3"0XC02(]H0%L@L```1T!(!+-1"+1"0X -MP>`&BW0D.(T$L/:$!;$+```(=`2`2S4$BT0D.,'@!HM\)#B-!+CVA`6R"P`` -M"'0$@$LU((M$)#C!X`:+5"0XC020]H0%L0L```)T!(!+-0&+1"0XP>`&BTPD -M.(T$B/:$!;(+```"=`2`2S4(QD,P`(G?BT0D.,'@!HMT)#B-A+"@"P``C40% -M`(M0%(D3BT`8B4,$BT0D8(E#"(D$).C\____B(.+````BU0D8(!"'`&`?2L` -M=#"Y`````+H`````B?:+="1@#[9&"=/XJ`%T#@^VPHA,`T"`0S(!@\(!@\$! -M.$TK=]R+1"1@BT@PC5,@B5`PBT0D8(/`+(E#((E+)(D1BU0D8(!"-`''1"00 -M``````^V@XL```")1"0,B7PD"(E4)`2+A00*``")!"3H_/___^G:````J0`` -M"``/A,\```")+"3H_/___XG#A<`/A+T```#&0"<&QD`F!6;'@)0``````,9` -M)`;&0"4`QT!$```%`,=`2`````"-B*````"+1"0XP>`&BW0D.(V$L*`+``"- -M1`4`BU`4B9.@````BT`8B4$$BX.@````B8.8````BT$$B8.<````BWPD8(E[ -M+(D\).C\____B(.V````9H-+.!")/"3H_/___SP)=@9F@4LX``*+1"1@QD`* -M`8M0/(E8/(M$)&"#P#B)`XE3!(D:B5PD!(DL).C\____B?:#Q$Q;7E]=PY"- -MM"8`````55=64X/L+(M\)$"+7"1$A=MT%0^V0P6$P'0-//\/A90'``#I'`$` -M`+H`````C78`#[:$.D(%```\_W0-#[;`:\!<C9P'3`$``(/"`8/Z!'7?O@`` -M```/MH0^0@4``#S_=#$/ML!KP%R-G`=,`0``]H0'4@$```)T$L=$)`0````` -MB1PDZ/S____K"(D<).C\____@\8!@_X$=;L/MD<F9CF'Y`D```^%"P<``(7; -M=7^`?SD`#X7]!@``QD<Y`8GVBX2?O`(``(7`=%:+4'"%TG0NQT!P`````,>$ -MG[P"````````QT0D"/____^)1"0$BT!XB00D_]+K)XVV`````(M0=(72=!K' -M0'0`````QX2?O`(```````"+0'B)!"3_TH/#`8/[0`^$B@8``.N1QD,%_XE< -M)`2)/"3H_/___^ES!@``N@````"-M"8`````#[:$.D(%```\_P^$]P````^V -MR&O!7(V<!TP!``")7"0DC80'0`$``(!X$?\/A-4```"`>!8`#X0K!@``O@`` -M``!KV5R-K!^$`0``B2PDZ/S___^)P8T$.XN0B`$``(F(B`$``(DIB5$$B0J` -M>2;_='^`N;4`````#X3I!0``#[99)`^VTXG0@^`&@_@&=2GVP@%T1XE,)`P/ -MMD%-B40D"(M!,(E$)`2+1"0DB00DZ/S____IKP4``(/X!`^%I@4``/;#`0^$ -MG04``(E,)`2)/"3H_/___^F,!0``B4PD!(D\).C\____Z7L%``"-="8`@\8! -MB?(XE!]6`0``#X9E!0``Z43___^#P@&#^@0/A>W^___'1"0<`````(!_.0"0 -M#X62````NP````"0C70F`(N4G[P"```/MH0[O`0``(72=&2+2G"%R71=@WI@ -M`'57//]T+0^V\&G&)`$```.'?`4``/9`)P1T&(!X)0!U$HET)`B)5"0$B3PD -MZ/S____K)L>$G[P"````````QT)P`````,=$)`C_____B50D!(M">(D$)/_1 -M@\,!@_M`=8'&1SD!Z:\$``"+3"0<#[:$.4(%```\_P^$BP0```^VT&O"7(V< -M!TP!``")7"0H@+P'5@$````/A&P$``#&1"0C`(G%C80'A`$``(E$)!"-=@"+ -M5"00B10DZ/S___^)PXU$/0"+D(@!``")F(@!``"+3"00B0N)4P2)&H![)O\/ -MA0T$```/MT,<B40D%`^VE#B\!```9HE4)!J+M(>\`@``]D,H!'1KA?9T9X-^ -M<`!T88-^8`!U6X!C*/OV0R<$C78`=!4/M\*)1"0(B70D!(D\).C\____ZSF+ -M5G"+3"04QX2/O`(```````#'1G``````QT,@`````,=$)`C_____B70D!(M& -M>(D$)/_2D(UT)@#V0R<$#X1F`0``QH.T`````("D+U0!``#G]D,H`0^$_0`` -M`(!C*/Z+0R"%P'15@'LE`'4P]D,G!'0J#[9'*<'@!@-$)!2)1"0(BX=(!0`` -MB40D!,<$)`<```#H_/___^G<````B40D"(N'2`4``(E$)`3'!"0!````Z/S_ -M___IO0```(7V=&2+5G"%THUT)@!T68![)0!U(/9#)P1T&@^W1"0:B40D"(ET -M)`2)/"3H_/___^F(````BT0D%,>$A[P"````````QT9P`````,=#(`````#' -M1"0(_____XET)`2+1GB)!"3_TNM5@'LE`'5/]D,G!'1)#[9'*<'@!@-$)!2) -M1"0(BX=(!0``B40D!,<$)`(```#H_/___^LBB?:+0R"%P'09BU!TA=)T$L=` -M=`````"+0R"+0'B)!"3_TO9#*`(/A#8"``"+0R")1"0(BX=(!0``B40D!,<$ -M)`8```#H_/___X!C*/WIY`$``(M#((7`#X39`0``@WAT`)`/A,X!``#&0R<! -MQD,F`(E<)`C'1"0$!@```(M4)"B)%"3H_/___X-[,`!T$HM3"(M##(E"!(D0 -MBT,P@&@P`8![3P!T&HD\).C\____QP0D`0```.C\____@'M/`'7FBY/D```` -MA=)T&\=$)`@!````#[:#V0```(E$)`2)%"3H_/___XM3,(72=!C'1"0(`0`` -M``^V0TV)1"0$B10DZ/S___^+<R"%]@^$]@```/9#*`1U78D\).C\____QT0D -M"`$```"+0R")1"0$B3PDZ/S___^+4R`/MD("B40D"`^V0@&)1"0$QP0D"@(` -M`.C\____BT,@B40D"(N'2`4``(E$)`3'!"0!````Z/S____K.0^V1@*)1"0( -M#[9&`8E$)`3'!"0*`@``Z/S___^+0R")1"0(BX=(!0``B40D!,<$)`$```#H -M_/___XM6=(72=!X/MT,<QX2'O`(```````#'1G0`````BT9XB00D_]+V0R@" -M="&+0R")1"0(BX=(!0``B40D!,<$)`8```#H_/___X!C*/W'0R``````QT9@ -M`````(M3-(72=`P/MD--QT2"/`````"+$XM#!(E"!(D0@*PO5@$```&)7"0$ -MB3PDZ/S____V0R@"=":+0R")1"0(BX=(!0``B40D!,<$)`8```#H_/___X!C -M*/V0C70F`(!$)",!#[9,)",XC"]6`0``#X>I^___@T0D'`&#?"0<!`^%4?O_ -M_[@!````@\0L6UY?7<.-M@````"-OP````!75E.#[!"+="0@BSZ)-"3H_/__ -M_X3`=!@/ME\KA-MT,0^V5@FY`````/;"`70<ZR'&1@7_B70D!(D\).C\____ -MZUR)T-/XJ`%U!X/!`3C9=?&)/"3H_/___XG!A<!T/XM6/(E&/(U&.(D!B5$$ -MB0J`1@H!B7$LQD$D!<9!)0#&04T/QT0D#`$```#'1"0(`0```(E,)`2)-"3H -M_/___X/$$%M>7\.-="8`C;PG`````(/L+(E<)!R)="0@B7PD)(EL)"B+?"0P -MBW0D-(L7BUY4#[9&)CPD#X=T!P``#[;`_R2%X!,``/9&,@1T#&;'1C(!`,9& -M)@'K4F:#?C(@C78`=0QFQT8R"`#&1B81ZSP/MT8RA,!Y%?9&+0-T#R1_@\@( -M9HE&,L9&)@WK'_9&,@AT!L9&)@?K$_9&,P*0C70F`'0(QD8K`,9&)AZ)="0$ -MB3PDZ/S____I]08``(N"!`$``*,`````@\A0B8($`0``QT0D#`$```#'1"0( -M`@```,=$)`0!````B30DZ/S____IO`8``,=$)`P!````QT0D"`````#'1"0$ -M`0```(DT).C\____Z9<&``#'1"0,`0```,=$)`@!````QT0D!`$```")-"3H -M_/___^ER!@``QT0D#`$```#'1"0(8````,=$)`0!````B30DZ/S____I308` -M``^V1BS'1"00`0```(E$)`S'1"0(8````,=$)`0!````B30DZ/S____I(`8` -M`,=$)!`!````QT0D#````03'1"0((0```,=$)`0!````B30DZ/S____I\P4` -M`(M#&(%@*/__]__'1"00`0```,=$)`P!````QT0D"`(```#'1"0$`````(DT -M).C\____Z;P%``#'1"00`0```,=$)`P`````QT0D"`(```#'1"0$`````(DT -M).C\____QP0D$"<``.C\____Z8,%``"+0QB!8"C___?_QT0D$`$```#'1"0, -M`0```,=$)`@"````QT0D!`````")-"3H_/___^E,!0``QT0D$`$```#'1"0, -M`````,=$)`@"````QT0D!`````")-"3H_/___\<$)!`G``#H_/___^D3!0`` -MQT0D#`$```#'1"0(`@```,=$)`0`````B30DZ/S____I[@0``,=$)`P!```` -MQT0D"`````#'1"0$`````(DT).C\____Z<D$``#'1"0,`0```,=$)`@!```` -MQT0D!`````")-"3H_/___^FD!```QT0D$`$```#'1"0,_____\=$)`@!```` -MQT0D!`````")-"3H_/___^EW!```QT0D#`$```#'1"0(`````,=$)`0````` -MB30DZ/S____I4@0```^V1BN+;(8\B5TLB74T#[9&*XA%3<9%)@/&124`@$TD -M!8!#"@&-0SB+4`2):`2)10")502)*L<$)(`:!@#H_/___X!_*P!T);X````` -M]D,)`70.ZQ@/MD,)B?'3^*@!=1&#Q@&)\#A'*W?JZP6^`````(M3&(M"**D` -M``@`=`HE___W_XE"*.MFB?(/ML+!X`.)1"08N[@+``")\8#Y`W8ABP<%@`$` -M``-$)!B+`*,`````P>@3@^`!ZQ^-M"8`````BP<%@`$```-$)!B+`*,````` -MP>@3@^`!A,!U$<<$).@#``#H_/___X/K`76KB6PD!(D\).C\____Z5(#``#' -M!"1`#0,`Z/S____'1"0,`````,=$)`@@````QT0D!`$```")-"3H_/___\<$ -M)!`G``#H_/___^D5`P``QT0D#`````#'1"0(`0```,=$)`0`````B30DZ/S_ -M___'!"00)P``Z/S____IY`(``(M#&(%@*/__]__'1"00`````,=$)`S_____ -MQT0D"`$```#'1"0$`````(DT).C\____QP0D$"<``.C\____Z:$"``#'1"0, -M`````,=$)`@`````QT0D!`````")-"3H_/___\<$)!`G``#H_/___^EP`@`` -MB70D!(D\).C\____Z5\"``")="0$B3PDZ/S___^-=@#I2P(``,=$)!`!```` -MQT0D#/````#'1"0(FP```,=$)`0!````B30DZ/S____I'@(``,=$)!`!```` -MQT0D#*#66BO'1"0(X`,``,=$)`0!````B30DZ/S____I\0$``,=$)!`!```` -MQT0D#`#@`P#'1"0(I`,``,=$)`0!````B30DZ/S____IQ`$``,=$)!`!```` -MQT0D#.2H!@''1"0(Q`,``,=$)`0!````B30DZ/S____IEP$``,=$)`P!```` -MQT0D"$@#``#'1"0$`0```(DT).C\____Z7(!``#'!"1`#0,`Z/S____'1"0, -M`0```,=$)`@@````QT0D!`$```")-"3H_/___\<$)!`G``#H_/___^DU`0`` -MQT0D$`$```#'1"0,`````,=$)`@A````QT0D!`$```")-"3H_/___^D(`0`` -MQT0D#`$```#'1"0(8````,=$)`0!````B30DZ/S____IXP````^V1BS'1"00 -M`0```(E$)`S'1"0(8````,=$)`0!````B30DZ/S____IM@```(M&5,9`!0"+ -M1E2)!"3H_/___^F?````QT0D#`$```#'1"0(`0```,=$)`0`````B30DZ/S_ -M___'!"00)P``Z/S____K<8M#&(%@*/__]__'1"00`0```,=$)`S_____QT0D -M"`$```#'1"0$`````(DT).C\____QP0D$"<``.C\____ZS''1"0,`0```,=$ -M)`@!````QT0D!`````")-"3H_/___\<$)!`G``#H_/___Y"-="8`N`$```"+ -M7"0<BW0D((M\)"2+;"0H@\0LPXVT)@````"#[!R)7"00B70D%(E\)!B+7"0@ -MBWPD)`^W5Q!F@?J%`'=^#[?"#[:$&+P$```\_W1O9H/Z?W<9#[;`:<`D`0`` -M`X-\!0``BT`L#[9(!.M6D`^W1Q!F/8$`=R`/M\`/MH08O`0``&G`%`T```.# -MM`4``(M`"`^V2`3K*P^W1Q`/MH08O`0``&G`L`````.#F`4``(M`5`^V2`3K -M"I"-="8`N?____^X_____V:!?Q"%`'<,#[='$`^VA!B\!```B[.8!0``#[;1 -M@/G_=!2`O!I"!0``_W0*//]T!H!_%`9U)H-_4`!T#XU'4(E$)`2)'"3H_/__ -M_XE\)`2)'"3H_/___^GJ````#[;`:<"P`````<8/MD8F/!IT=CP:=PH\$0^% -MFP```.L;/!N-M"8`````=&,\'`^%A@```(VV`````.MZBY-$"@``@<),"``` -M#[9&-,'@"`'"BPJ)#0`````/MLF+DT0*``"!PD0(```/MD8TP>`(`<*+`J,` -M````P>`("<&)CI0```#&1B8:ZS'&1B8;ZRN+@T0*```%3`@```^V5C3!X@@! -MT(L`HP````"#X/>(1BS&1B8<ZP3&1B8=@W]0`'0/C4=0B40D!(D<).C\____ -MB7PD!(D<).C\____B70D!(D<).C\____C78`BUPD$(MT)!2+?"08@\0<PX/L -M+(E<)!R)="0@B7PD)(EL)"B+7"0TBW,L#[=3'+@`````BTPD,("\"KP$``#_ -M#X0K"0``#[9#)CP)#X0O!0``/`EW2SP%#X28````/`60=QX\`P^$M@```#P$ -MC70F``^%W@@``.GD````D(UT)@`\!P^$C00``#P'C;8`````#X<0!```Z9D" -M``"0C70F`#P6#X1\`P``/!:-M@````!W(SP4#X28!0``/!2-="8`#X?F`@`` -M/`H/A88(``")]ND0!0``/!H/A#<"```\_Y`/A'`%```\%P^%9@@``(GVZ4(# -M``"+1"0P#[9H*XGJA-(/A*$````/ME8)OP````#VP@$/A((```#IB@```(GV -MBT88@6`H___^_XM#+,=$)`P`````QT0D"`$```")7"0$B00DZ/S____'!"0% -M````Z/S___^X`0```.D1"```QT0D#`````#'1"0(`````(E<)`2)-"3H_/__ -M_\<$)%##``#H_/___[@!````Z=\'``")T(GYT_BH`742@\<!B?B)Z3C(=>OK -M!;\`````#[93)(G0@^`&@_@&=0GVP@$/A=4```"+5AB+0BBI```!`'0-)?__ -M_O^)0BCINP```(GZ#[;"P>`#B40D&+VX"P``D(M,)#"+$8GX/`-V&8M,)!B- -MA!&``0``BP"C`````"4```$`ZQ>+3"08C801@`$``(L`HP`````E```!`(7` -M=#*)^#P#=A:+3"08C801@`$``,<````!`.D/!P``BTPD&(V$$8`!``#'```` -M`0#I^08``,<$).@#``#H_/___X/M`0^%>?___\9#)P+&0R;_B5PD!(M$)#") -M!"3H_/___[@!````Z=<&``#V1@8!=#:)7"0$B30DZ/S___^$P'4FO?H```") -M7"0$B30DZ/S___^$P'41QP0DZ`,``.C\____@^T!==^)^H#Z`W8<BTPD,(L! -M!8`!```/MM*-%-"+`J,`````B0+K'(M4)#"+`@6``0``B?D/MM&-%-"+`J,` -M````B0*+0RR)VN@RY?__QP0D($X``.C\____N`$```#I/`8``(E4)`3'!"3X -M`P``Z/S___^+<RR+/HD\).C\____B<&%P'41QH.U`````;@!````Z0@&``#& -M0"3AQD`E`<9`)A</MT,<9HE!$(L&B4$8QT$@`````,=!-`````#'06P@)`,` -MB4PD!(D\).C\____N`$```#IQ`4``(E4)`3'!"0@`@``Z/S___^+<RR+/HD\ -M).C\____B<&%P'41QH.U`````;@!````Z9`%``#&0"3AQD`E`<9`)A@/MT,< -M9HE!$(L&B4$8QT$@`````,=!-`````#'06P@)`,`B4PD!(D\).C\____N`$` -M``#I3`4``(G:B?#H(^3__[@!````Z3D%``"+/HD\).C\____B<(/MDL\A<!U -M$<:#M0````&X`0```.D4!0``QD`DX<9`)0'&0"8%B$@G#[=#'&:)0A"+!HE" -M&,="(`````#'0C0`````QT)L("0#`(A+/XE4)`2)/"3H_/___[@!````Z<H$ -M``"+/HD\).C\____B<(/MDL^A<!U$<:#M0````&X`0```.FE!```QD`DX<9` -M)0'&0"8$B$@G#[=#'&:)0A"+!HE"&,="(`````#'0C0`````QT)L("0#`(A+ -M08E4)`2)/"3H_/___[@!````Z5L$``"+/HD\).C\____B<&%P'41QH.U```` -M`;@!````Z3H$``#&0"3AQD`E`<9`)@8/MT,<9HE!$(L&B4$8QT$@`````,=! -M-`````#'06P@)`,`B4PD!(D\).C\____N`$```#I]@,``(VV`````(L^B3PD -MZ/S___^)P87`=1'&@[4````!N`$```#ISP,``,9`).'&0"4!QD`F#`^W0QQF -MB4$0BP:)01C'02``````QT$T`````,=!;"`D`P")3"0$B3PDZ/S___^X`0`` -M`.F+`P``BSZ)/"3H_/___XG!A<!U$<:#M0````&X`0```.EJ`P``QD`DX<9` -M)0'&0"86QD`H`0^W0QQFB4$0QD%H#XL&B4$8QT$@`````,=!-`````#'06P@ -M)`,`B4PD!(D\).C\____N`$```#I'@,``,9#)O\/ME,DB="#X`:#^`9U!?;" -M`747@WLT`'41B30DZ/S___^(@[8```"-=@"`>R<"=1J+0RR)7"0(B40D!(M$ -M)#")!"3H_/___XUV`/9&"`)U&KL`````C7XX@'X*``^%8`$``.E\`@``C78` -MBU8H#[9:*@^VRP^V0A^#Z`$YP7TVC4,!B$(J@$(K`<9")@`/MT(R@^#^@\@( -M9HE",HE4)`2+5"0PB10DZ/S___^X`0```.EE`@``.<%T%KL`````C7XX@'X* -M`'4TC78`Z2\"``#&0B8`#[=",H/@]H#,`F:)0C*)5"0$BTPD,(D,).C\____ -MN`$```#I'P(``(D\).C\____B<&+1CR)3CR).8E!!(D(@'DF_P^$C@```("Y -MM0`````/A-4!```/MEDD#[;3B="#X`:#^`9U*O;"`711#[9!38M1,(E,)`R) -M1"0(B50D!(DT).C\____N`$```#IM@$``(/X!`^%D0$``/;#`0^$B`$``(E, -M)`2+1"0PB00DZ/S___^X`0```.F*`0``B4PD!(M4)#")%"3H_/___[@!```` -MZ7`!``#&@;4`````@\,!.%X*#X9!`0``Z3G___^)/"3H_/___XG!BT8\B4X\ -MB3F)002)"(!Y)O\/A)\```"`>24`#X6.````@+FU``````^$!`$```^V620/ -MMM.)T(/@!H/X!G4J]L(!=%$/MD%-BU$PB4PD#(E$)`B)5"0$B30DZ/S___^X -M`0```.GE````@_@$#X7`````]L,!#X2W````B4PD!(M,)#")#"3H_/___[@! -M````Z;D```")3"0$BT0D,(D$).C\____N`$```#IGP```,:!M0````"#PP$/ -MMD8*.-@/AS'___\XPW5.A,!T2KL`````C7XXB3PDZ/S___^)PHM&/(E6/(DZ -MB4($B1`/MD(E/")T!#P-=1?'1"0$"@```(D4).C\____N`$```#K/X/#`3A> -M"G>^QD8%_XET)`2+5"0PB10DZ/S___^X`0```.L<N`$```#K%87MC78`#X01 -M^?__Z2[Y__^0C70F`(M<)!R+="0@BWPD)(ML)"B#Q"S#C;8`````C;\````` -M@^PLB5PD'(ET)"")?"0DB6PD*(M\)#"+;"0T#[=5$&:!^H4`#X>^````#[?" -M#[:,![P$``"`^?\/A*H```!F@_I_=QP/ML&+EWP%``!IP"0!``"+1!`L#[9` -M!.LZC78`9H'Z@0!W&0^VP8N7M`4``&G`%`T``(M$$`@/MD`$ZQ</ML&+EY@% -M``!IP+````"+1!!4#[9`!#S_=$T/ML`/MIP'0@4``(#[_W05@/G_=!`/ME44 -M@/H&=5>-M"8`````@/O_=".`^?]T'@^VP6G`)`$``(G&`[=\!0``QD8G`L9& -M)O_I+0(``(-]4`!T#XU%4(E$)`2)/"3H_/___XEL)`2)/"3H_/___^DT`@`` -MB?8/ML%IP"0!``")Q@.W?`4``(M--(32#X2T````#[9%)CP-````/`P/ -MA,4````/MY:4````C4(!9HF&E````&:#^@EV%X!^)@9T$<9&)P+&1B;_@&8H -M_NFG`0``QP0DZ`,``.C\____#[96)(G0@^`&@_@&=3[VP@%T.<=$)!`````` -MQT0D#`(````/MD9-B40D"(M&,(E$)`0/ML-KP%R-A`=,`0``B00DZ/S____I -M?`$``,9&)@.)="0$B3PDZ/S____I9P$``)"-="8`#[9%)CP!=0W&1B8$C70F -M`.D@`0``/`)U#,9&)@6-=@#I$`$``#P##X66````B<B`?B8%=2MF@7D$R#=U -M(P^W1AR)1"0$QP0D+`0``.C\____QD8F!NG;````C;8`````B40D!(DT).C\ -M____C49DNB@```#H=[C__X3`=3B-1E"Z%````.AFN/__A,!U)XV&C````+H( -M````Z%*X__^$P'43BT9$"T9(=`O&1B87B?;I@````,9&)AIF@X:4`````>MR -M/!=U!L9&)A7K:#P8D'4&QD8F%NM=/`1U!L9&)@?K4SP%=0;&1B8(ZTD\!HGV -M=0;&1B8)ZST\#'4&QD8F"NLS/!9U!L9&)A3K*3P.B?9U(X-]4`!T#XU%4(E$ -M)`2)/"3H_/___XEL)`2)/"3H_/___^LM@WU0`'0/C450B40D!(D\).C\____ -MB6PD!(D\).C\____B70D!(D\).C\____BUPD'(MT)""+?"0DBVPD*(/$+,.- -M=@"-O"<`````@^PLB5PD'(ET)"")?"0DB6PD*(ML)#2+=2P/MT4<N@````"+ -M3"0P@+P!O`0``/\/A.L"```/MD4F/!0/A-0````\%'<[/`T/A`0!```\#9!W -M$#P%#X6[`@``C;8`````ZU,\#@^$^P```#P/C70F``^%GP(``.G\````D(UT -M)@`\&P^$GP```#P;C;8`````=Q`\&'0Y/!D/A7<"``")]NM'/!QT73S_#X5G -M`@``B?;IQ@```,=$)`0`````B2PDZ/S___^Z`0```.E1`@``QT0D!`$```") -M+"3H_/___[H!````Z3<"``#'1"0$`0```(DL).C\____N@$```#I'0(``(DL -M).C\____N@$```#I"P(``(DL).C\____N@$```#I^0$``/9%.01T$HDL).C\ -M____N@$```#IX0$``(DL).C\____N@$```#ISP$``(DL).C\____N@$```") -M]NF[`0``B2PDZ/S___^Z`0```.FI`0``QD4F_X!^"@`/A.D```"[`````(U^ -M.(UV`(D\).C\____B<*+1CR)5CR).HE"!(D0@'HF_P^$GP```(!Z)0`/A9P` -M``"`NK4`````#X1-`0``#[9:)`^VRXG(@^`&@_@&=2KVP0%T4HE4)`P/MD)- -MB40D"(M",(E$)`2)-"3H_/___[H!````Z1T!``"#^`0/A0D!``#VPP&0#X3_ -M````B50D!(M$)#")!"3H_/___[H!````Z?````")5"0$BTPD,(D,).C\____ -MN@$```#IU@```(VV`````,:"M0````"#PP$/MD8*.-@/ARK___\XPP^%C``` -M``^V124\(G04/`UT$+\`````C6XX@'X*`'4<ZW#'1"0$"@```(DL).C\____ -MN@$```#I?````(DL).C\____B<.+1CR)7CR)*XE#!(D8#[9#)3PB=`0\#74I -MB5PD!,<$)#8"``#H_/___\=$)`0*````B1PDZ/S___^Z`0```.LRB?:#QP&) -M^#A&"G>JQD8%_XET)`2+3"0PB0PDZ/S___^Z`0```.L+N@$```"-M@````") -MT(M<)!R+="0@BWPD)(ML)"B#Q"S#C78`C;PG`````%575E.#["R+7"1$#[=3 -M$+G_____N/____]F@?J%`'=[#[?"BW0D0`^VC`:\!```N/____^`^?]T8F:# -M^G]W'0^VP8M\)$"+EWP%``!IP"0!``"+1!`L#[9`!.L_9H'Z@0!W'0^VP8MT -M)$"+EK0%``!IP!0-``"+1!`(#[9`!.L;#[;!BWPD0(N7F`4``&G`L````(M$ -M$%0/MD`$#[;`BU0D0`^VM`)"!0``:\9<C80"3`$``(E$)"0/ML%IP"0!```# -M@GP%``")1"0HBTLT#[81P>(8#[9!`<'@$`G"#[9!`PG"#[9!`L'@"`G"C5D( -MB=#!Z`.#^!!V!;@0````C03!B40D'#G##X>0`0``QT0D(`````!K]ER)="08 -M`W0D0(ET)!2)'"3H_/___XG%C7,$OW04``"Y!````/SSI@^7P@^2P#C"#X5$ -M`0``@_T0#X<[`0``@T0D(`&#?"0@`74JBTPD*,>!'`$```$```")J2`!``"+ -M`XF!J````(M#!(F!K````.D%`0``BW0D0(DT).C\____B<:%P`^$_````,9` -M)P;&0"8%9L>`E```````QD`D!L9`)0#'0$0```4`QT!(`````,>`'`$```$` -M``")J"`!``"+5"0H@<*@````BWPD*(N'H````(F&H````(M"!(F&I````(N' -MH````(F&F````(M"!(F&G````(L#B8:H````BT,$B8:L````BT0D)(E&+(D$ -M).C\____B(:V````9H-..!"+5"0DB10DZ/S___\\"78&9H%..``"BTPD%("! -M5@$```&+D8@!``")L8@!``"+?"1`BTPD&(V$#X0!``")!HE6!(DRB70D!(D\ -M).C\____C;8`````@\,(.UPD'`^&A_[__X/$+%M>7UW#C70F`(V\)P````!5 -M5U93@>PL`@``#[:$)$@"``"+E"1``@``BU((B50D'(L*B4PD((N4)$`"```/ -MME(PB%0D)XN,)$`"``"#P2B)3"0HBY0D0`(``#E**`^$JP(``(!\)"<`#X2@ -M`@``#[;`B40D%(M,)"B)#"3H_/___XUX^(U$)"R)1"00BU0D%(E4)`S'1"0( -M`0```(M,)!R)3"0$BX0D1`(``(D$).C\____@'PD+``/A/X```"]`````(V7 -MH````(E4)!B-=@")Z0^V\<=$)`@(````BT0D&(E$)`2)\\'C!(V$')@```") -M!"3H_/___X3`#X2?````C90<C`````^V0@B#X`^(A[8````/MT\X9H'AW_V) -MR(/($&:)1S@/MD((P.@$/`EU"8G(@\@P9HE'.(GPP>`$#[:$!)0```#`Z`0\ -M"G4&9H%/.``"BTPD*(M1!(U'"(E!!(E/"(E7#(D"]D<H`G1`@&<H_8M'((7` -M=#6)1"0(BU0D((N"2`4``(E$)`3'!"0&````Z/S____K%9"-="8`@\4!B>DX -M3"0L=A'I(/___XGH.$0D+`^'-P$``(E\)`C'1"0$!@```(M4)!R)%"3H_/__ -M_X!_3P!T)(VV`````(M,)"")#"3H_/___\<$)`$```#H_/___X!_3P!UXHN7 -MY````(72=!O'1"0(`0````^VA]D```")1"0$B10DZ/S___^+5S"%TG08QT0D -M"`$````/MD=-B40D!(D4).C\____BT<@A<!T?<=`8`````#V1R@$=2>+1"0@ -MB00DZ/S____'1"0(`0```(M'((E$)`2+5"0@B10DZ/S___^+1R")1"0(BTPD -M((N!2`4``(E$)`3'!"0&````Z/S___^+1R")1"0(BU0D((N"2`4``(E$)`3' -M!"0!````Z/S____'1R``````BQ>+1P2)0@2)$(M,)!R`:0H!BX0D0`(``(!H -M,`&)?"0$BU0D((D4).C\____BT0D*(N,)$`"```Y02AT"X!L)"<!#X5G_?__ -M@<0L`@``6UY?7<.-M"8`````55=64X'L+`(``(N\)$0"``"+A"1``@``BP") -M1"0D#[:T)$P"``"-7"0LB5PD$(ET)`S'1"0(`0```(N4)$`"``")5"0$B3PD -MZ/S___^)="0(B7PD!(NT)$@"``")-"3H_/___XMN*(/M"(GS@\,HC44(.=AT -M*P^V124\#704/")U,.L.#[9%)3P-=`8\(HGV=2#&128%QD4G!,9$)"H!ZP7& -M1"0J`(!\)"P`=17I(`(``(MM"(/M"(U%"#G8=<60Z]_&1"0K`(N$)$`"``"# -MP#B)1"0@BY0D2`(``(MR*(/N"(U&"#G##X0#`@``#[9$)"O!X`2-O`28```` -MC70F`,=$)`@(````B7PD!(V&H````(D$).C\____A,`/A9P!``"+=@B#[@B- -M1@@YV`^$O0$``.O+B[0D0`(``(!&"@'&028%QH&T`````,9!)P1FQX&4```` -M``#&@98`````QT%$```%`,=!2``````/MG0D*XGPP>`$C90$C`````^V0@2( -M020/MD(%B$$EBX0D0`(``(E!+`^V0@B#X`^(@;8````/MWDX9H'GW_V)^(/( -M$&:)03@/MD((P.@$/`EU"8GX@\@P9HE!.(GPP>`$#[:$!)0```#`Z`0\"G4& -M9H%).``"BY0D2`(``(E1,(GRP>($#[:$%)(```"(04V-E!2,````BT(,B8&@ -M````BU(0B9&D````B8&8````B9&<````B[0D2`(``(!&,`&+E"1``@``BT(\ -MB4H\BW0D((DQB4$$B0B+A"1(`@``BU`LC4$(B[0D2`(``(E&+(E9"(E1#(D" -M#[91)(G0@^`&QD0D*@"#^`9U1_;"`70MB4PD#`^V04V)1"0(BX0D2`(``(E$ -M)`2+E"1``@``B10DZ/S____&1"0J`.L5B4PD!(MT)"2)-"3H_/___\9$)"H` -M@$0D*P$/MD0D*SA$)"P/AP/^__^`?"0J`'0MQT0D!`H```")+"3H_/___^L; -MD(UT)@"+5"0DB10DZ/S___^)P87`#X4O_O__@<0L`@``6UY?7</K#9"0D)"0 -MD)"0D)"0D)!55U93@>PL`@``BX0D0`(``(LP#[90'(A4)":#P"R)1"0HBXPD -M0`(``#E!+`^$T`,``(32#X3(`P``BT0D*(D$).C\____C6C@QT0D$`````#' -M1"0,`````,=$)`@`````BY0D0`(``(E4)`2+C"1$`@``B0PDZ/S___^(1"0G -MA,`/A&L#``"_`````+L`````B5PD(,=$)!``````B5PD#,=$)`@!````BX0D -M0`(``(E$)`2+E"1$`@``B10DZ/S___\/ML#!X`2#P&0]``(```^'Z0$``(U, -M)"R)3"00B5PD#,=$)`@!````BX0D0`(``(E$)`2+E"1$`@``B10DZ/S____' -M1"0("````(EL)`2-C"2(````B0PDZ/S___^$P`^$F`$``(M$)"B+4`2-12"+ -M3"0HB4$$B4T@B54DB0(/MD0D+HA%,8V$)(````")1"0$BX0D0`(``(D$).C\ -M____//]T$@^VP&G`%`T```.&M`4``(E%#(GZA-)T50^V1"0OT>B#X`'!X`0/ -MME4U@^+O"<*(534/MD0D+\'H`X/@`<'@!8/BWPG"B%4U#[9$)"_!Z`*#X`'! -MX`.#XO<)PHA5-0^V1"0RB(6+````Z;\````/MD0D+HA%,8N,)$`"``")30@/ -MMD0D,HB%BP````^W1"0PB44X#[=$)'QFB86(````#[9$)'Z(A8H```"-37B- -M5"0L@\)`BT0D;(E%>(M"!(E!!(M""(E!"(M"#(E!#(U-2(U4)"R#PA"+1"0\ -MB45(BT($B4$$BT((B4$(BT(,B4$,C4U8C50D+(/"((M$)$R)15B+0@2)002+ -M0@B)00B+0@R)00R+0A")01"+0A2)012+1"1DB45PBT0D:(E%=(M$)"")1"0, -MB6PD"(N4)$0"``")5"0$BXPD0`(``(D,).C\____Z1@!``")]H/'`8/#`8GX -M.D0D)P^$(`$``.FZ_?__B3PDZ/S___^-6/B)7"0(QT0D!`8```"+E"1``@`` -MB10DZ/S___^`>T\`=!J)-"3H_/___\<$)`$```#H_/___X![3P!UYHM#((7` -M=&W'0&``````]D,H!'4?B30DZ/S____'1"0(`0```(M#((E$)`2)-"3H_/__ -M_XM#((E$)`B+AD@%``")1"0$QP0D`0```.C\____BT,@B40D"(N&2`4``(E$ -M)`3'!"0&````Z/S____'0R``````BQ.+0P2)0@2)$(N,)$`"``"`:0H!@&TP -M`8E<)`2)-"3H_/___SE]*`^%&/___XN$)$`"``"`:!P!B6PD!(DT).C\____ -MBTPD*(N4)$`"```Y2BQT'(!L)"8!=!7I2/S__XU]*#E]*`^%V?[__XGVZ[V! -MQ"P"``!;7E]=PXUV`%575E.!["P"``"+K"1$`@``BT4`B40D'(N4)$`"``") -M5"0$B2PDZ/S____'1"00`````,=$)`P`````QT0D"`````");"0$BYPD0`(` -M`(D<).C\____B$0D(X3`#X2^`P``QD0D(@#'1"0D`````)#'1"00`````(M$ -M)"2)1"0,QT0D"`$```");"0$BY0D0`(``(D4).C\____#[;`P>`$@\!D/0`" -M```/AU@#``"-7"0LB5PD$(M$)"2)1"0,QT0D"`$```");"0$BY0D0`(``(D4 -M).C\____C9PDB````(E<)`2)+"3H_/___SS_#X42`P``BT0D'(D$).C\____ -MB<>%P`^$+P,``(!%'`'&0#``BX0DB````(D'BX0DC````(E'!(V$)(````") -M1"0$B2PDZ/S___\\_W06#[;`:<`4#0``BU0D'`."M`4``(E'#`^V1"0NB$<Q -M#[9$)"_1Z(/@`<'@!`^V5S6#XN\)PHA7-0^V1"0OP>@#@^`!P>`%@^+?"<*( -M5S4/MD0D+\'H`H/@`<'@`X/B]PG"B%<UB6\(#[9$)#*(AXL```"+1"0TB4=` -MBT0D.(E'1`^V1"0SB$<R#[=$)#")1S@/MT0D?&:)AX@````/MD0D?HB'B@`` -M`(U/>(U4)"R#PD"+1"1LB4=XBT($B4$$BT((B4$(BT(,B4$,C4](C50D+(/" -M$(M$)#R)1TB+0@2)002+0@B)00B+0@R)00R-3UB-5"0L@\(@BT0D3(E'6(M" -M!(E!!(M""(E!"(M"#(E!#(M"$(E!$(M"%(E!%(M$)&2)1W"+1"1HB4=TBTTP -MC5<@B54PC44LB4<@B4\DB1&`?"0L``^$@@$``&;'1"0J``"-73B)7"08C4<H -MB40D%(VV`````(M4)!R)%"3H_/___XG!A<`/A(0!``"`10H!QD`F!<:`M``` -M``#&0"<$QT!$```%`,=`2`````!FQX"4```````/MW0D*HGPP>`$C90$C``` -M``^V0@2(020/MD(%B$$EB6DLB7DP#[9"!HA!30^V0@B#X`^(@;8````/MUDX -M9H'CW_V)V(/($&:)03@/MD((P.@$/`EU"HG8@\@P9HE!.)")\,'@!`^VA`24 -M````P.@$/`IU#&:!23@``HVV`````(GPP>`$C90$C````(M"#(F!H````(M2 -M$(F1I````(F!F````(F1G````(!',`&+13R)33R+7"08B1F)002)"(M7+(U! -M"(E'+(M<)!2)60B)40R)`@^V422)T(/@!H/X!G4O]L(!=!J)3"0,#[9!38E$ -M)`B)?"0$B2PDZ/S____K$(E,)`2+1"0<B00DZ/S___]F@T0D*@$/MD0D+&8[ -M1"0J#X>9_O__@$0D(@"0D`0^V5"0C.%0D(@^%4/S__X!]"@!U%,9%!?^) -M;"0$BUPD'(D<).C\____@<0L`@``6UY?7<.-="8`C;PG`````%575E.#["R+ -M;"1`BWPD1,=$)!``````QT0D#`````#'1"0(`````(E\)`2)+"3H_/___X3` -M=#B[`````(/H`0^V\(U$)"N)1"0,B5PD"(E\)`2)+"3H_/___X!\)"O^#X6E -M````@\,!C48!.<-UTP^V1S2#Z`&(1S2$P'1UBS?&1S0`BU\L@^L@C5<LC4,@ -M.=!T=X-[#`!U2.L+D(UT)@"#>PP`=3O&1S0!B7PD!(DL).C\____QT0D$``` -M```/MH.+````B40D#(E<)`B)?"0$BX8$"@``B00DZ/S____K*8M;((/K((U# -M(#G0=;*)]NL8B7PD!(DL).C\____B7PD!(DL).C\____@\0L6UY?7<.-M"8` -M````C;PG`````%575E.#[`R+="0@BWPD)(LNNPH```")?"0$B30DZ/S___^$ -MP'41QP0DZ`,``.C\____@^L!==\/METKA-MT(`^V5@FY`````/;"`70+ZQ"0 -MB=#3^*@!=0>#P0$XV77QBQ>+1P2)0@2)$(!N"@&)?"0$B2PDZ/S____V1@@" -M=$&+1BB%P'43B2PDZ/S___^%P`^$6@$``(E&*(DHB7!4QD`J`,9`*P#&0"8` -M9H-(,@2)1"0$B2PDZ/S____I,`$``(M&*(7`#X3+````@\!8B40D!(M%%(D$ -M).C\____BT8HB40D!(DL).C\____C7XX.7XX#X27````B3PDZ/S___^)PXM` -M((7`=&W'0&``````]D,H!'4?B2PDZ/S____'1"0(`0```(M#((E$)`2)+"3H -M_/___XM#((E$)`B+A4@%``")1"0$QP0D`0```.C\____BT,@B40D"(N%2`4` -M`(E$)`3'!"0&````Z/S____'0R``````@&X*`8E<)`2)+"3H_/___SE^.`^% -M:?___\=&*`````"`?@H`=!.-1CB)!"3H_/___XG!@&X*`>L*B2PDZ/S___^) -MP87)=#.+5CR)3CR-1CB)`8E1!(D*@$8*`8EQ+,9!)`7&024`QD$G!L9!)@.) -M3"0$B2PDZ/S___^#Q`Q;7E]=PY"-M"8`````@^PLB5PD'(ET)"")?"0DB6PD -M*(MT)#"+7"0T#[=3$&:!^H4`=WH/M\(/MHP&O`0``(#Y_W1J9H/Z?W<9#[;! -MBY9\!0``:<`D`0``BT00+`^V0`3K.V:!^H$`=QD/ML&+EK0%``!IP!0-``"+ -M1!`(#[9`!.L;#[;!BY:8!0``:<"P````BT005`^V0`2-="8`#[;)//]T"6:! -M^?\`=2B)]H-[4`!T#XU#4(E$)`2)-"3H_/___XE<)`2)-"3H_/___^GJ```` -M#[;0#[:$,D(%``!KZ%R-A"Y,`0``B40D&`^WP6G`)`$``(G'`[Y\!0``@'L4 -M`'1*B50D!,<$)$P$``#H_/___XL7BT<$B4($B1"-G"Y``0``@&L6`8E\)`2) -M-"3H_/___\9#$?^+1"08B40D!(DT).C\____ZW.-=@"`>R8!=3W'!"00)P`` -MC78`Z/S___^)7"0$B30DZ/S____'1"0,`0```,=$)`@`````B7PD!(M$)!B) -M!"3H_/___^LMQP0D4,,``.C\____B5PD!(DT).C\____B7PD!(M$)!B)!"3H -M_/___Y"-="8`BUPD'(MT)""+?"0DBVPD*(/$+,.-M@````"-OP````!55U93 -M@^P<BW0D,(ML)#0/MD0D.(A$)!</MD0D/(A$)!:+!HE$)!B`?@H`=&V[```` -M`(U^.(D\).C\____B<*+1CR)5CR).HE"!(D0.6HP=0\/MD0D%SA"370-D(UT -M)@"#PP$X7@IWS3A>"G0M@'PD%E!U)L9")P;&0B8%QD(D!\9")0"):C")<BR) -M5"0$BT0D&(D$).C\____@\0<6UY?7<.-M"8`````C;PG`````(/L+(E<)!R) -M="0@B7PD)(EL)"B+;"0PBT0D-`^W4!!F@?J%``^'A@````^WP@^VA"B\!``` -M//]T=V:#^G]W&`^VP&G`)`$```.%?`4``(M`+`^V4`3K7HM4)#0/MT(09CV! -M`'<@#[?`#[:$*+P$``!IP!0-```#A;0%``"+0`@/ME`$ZS"+3"0T#[=!$`^V -MA"B\!```:<"P`````X68!0``BT!4#[90!.L+C;8`````NO____^Y_____XM$ -M)#1F@7@0A0!W$(M,)#0/MT$0#[:,*+P$```/ML(/MH0H0@4``&O`7(V\!4P! -M```/ML%IP+````"+M9@%```!QHM$)#2`>"@"#X6(````#[9`+"7P````@_@@ -M=`6#^!!U=8M,)#0/ME$LB="#X`^#^`%U,8G0)?````#'1"00`0```(E$)`S' -M1"0(`@```,=$)`0`````B30DZ/S____ID0D``)`/MD8KBU2&/(M,)#0/MD$L -M)?````"#^"`/E,"#P`B(@K8```"+0C1F@6`R__[I7@D``(M4)#0/MD(4A,!T -M0XG#@WI0`'01B="#P%")1"0$B2PDZ/S___^+3"0TB4PD!(DL).C\____@/L" -M#X4@"0``B70D!(DL).C\____Z0\)``#'AI@`````````#[9&)CPD#X>9"``` -M#[;`_R2%?!0``(M'&/9`*@@/A,((``")]NE'!0``BY5$"@``@<),"```#[9& -M-,'@"`'"BP*C`````(/X!7<%B$8?ZP3&1A\%@'\+`'0-QD8F`,9'"P#I/@@` -M`,9&)@+I-0@``(N51`H``('"3`@```^V1C3!X`@!PHL"HP`````/ML!FB48@ -MBY5$"@``@<)$"```#[9&-,'@"`'"BP*C`````(G"P>H(9HE6(L'@"&8)1B!F -M@?I`074)QD8F&>G6!P``9H%^(A67#Y3`@^@!@^#?@\`DB$8FZ;P'``"+E40* -M``"!PD0(```/MD8TP>`(`<*+`J,`````B$8=BY5$"@``@<),"```#[9&-,'@ -M"`'"BP*C`````*@(=`;&1AX,ZQJH!'0&QD8>"^L0@^`"@_@!&<#WT(/@"HA& -M'@^V1BL\`1G`@^`"@\`4B$8FZ4<'``"+A40*```%3`@```^V5C3!X@@!T(L` -MHP````"#R`B(1BS&1B8%Z1T'``#&1B8`#[=&,F8E]_V#R`)FB48RBT0D-(-X -M4`!T#X/`4(E$)`2)+"3H_/___XM4)#2)5"0$B2PDZ/S____&1P7_B7PD!(DL -M).C\____Z2P'``#&1B8$Z<,&```/MD8K@\`!B$8K.D8?<PG&1B86Z:L&``#& -M1BL`QD8F%\<$)""A!P#H_/___^F2!@``QD8F%.F)!@``QD8F")"-="8`Z7L& -M``#&1B84Z7(&``#&1BX`Z/S___^)AH@```#&1B85Z5H&``"+E40*``"!PDP( -M```/MD8TP>`(`<*+&HD=``````^VVXN51`H``('"1`@```^V1C3!X`@!PHL" -MHP````#H_/___XF&C````(/C#X/[`W4)QD8F"ND"!@``BX:(````!4`-`P`Y -MAHP```!Y%P^V1BX\"G</QD8F%8/``8A&+NG8!0``#[9&*X-\ACP`#X2$`0`` -MQT0D%`````"`?PH`=#[&1"0:`(U?.(D<).C\____B40D%`^V1BN+3"04.4R& -M/'0<BT,$B4L$B1F)002)"(!$)!H!#[9$)!HX1PIWRH!O"@&+5"04BT(@A<`/ -MA`D!``#'0&``````]D(H!'4[B2PDZ/S___^+3"04BT$TQH"L`````8M!(,=$ -M)`@!````B40D!(DL).C\____BU0D%(M"-,:`K`````"+3"04BT$@BY5(!0`` -MB40D"(E4)`3'!"0!````Z/S___^+5"04BT(@BTAPA<ET,`^W0AS'A(6\`@`` -M`````(M"(,=`<`````"+0B"+4'C'1"0(_____XE$)`2)%"3_T8M,)!2+02"% -MP'0KBU!TA=)T)`^W01S'A(6\`@```````(M!(,=`=`````"+02"+0'B)!"3_ -MTHM4)!2+0B"+E4@%``")1"0(B50D!,<$)`8```#H_/___XM,)!3'02`````` -M#[9&*\=$ACP`````BT0D%(E$)`2)+"3H_/___\9&)@GI/`0``(N51`H``('" -M3`@```^V1C3!X`@!PHL*B0T`````#[;)BY5$"@``@<)$"```#[9&-,'@"`'" -MBP*C`````,'@"`G(B48X@'XF"G0'J0```0!T"<9&)@OIX@,``,9&)@P/MD8K -M@WR&/`!T48!_"@`/A"D$``#&1"0;`(U?.(D<).C\____B<(/MD8K.52&/'4- -M@&\*`>LOC;0F`````(M#!(E3!(D:B4($B1"`1"0;`0^V3"0;.$\*=@SKP8DL -M).C\____B<*%T@^$T`,```^V1BN)5(8\#[9&+XB"M@```.E9`P``B2PDZ/S_ -M___'!"0!````Z/S___^#ZP&#^_]T"8M'&/9`*@ATV\9&)@GI*P,``(N51`H` -M`('"3`@```^V1C3!X`@!PHL*B0T`````#[;)BY5$"@``@<)$"```#[9&-,'@ -M"`'"BP*C``````^VP,'@"`G()?\/```]$P$```^4PCTC`0``#Y3!A-)U$X3) -M=0\],P$``'5"C78`Z?("``#&1B88A-*0C70F`'0)QD8O".FE`@``A,F-=@!T -M"<9&+PGIE0(``#TS`0``#X6*`@``QD8O"NF!`@``#[9.*@^VT0^V1A^#Z`$Y -MPGT3C4$!B$8J@$8K`<9&)@?I7`(``,9&*P#&1B8>Z4\"``#&1B8#Z48"``#& -M1B8BB?;I.P(``,9&)B/I,@(``,9&)@/I*0(``(N51`H``('"3`@```^V1C3! -MX`@!PHL*B0T`````BY5$"@``@<)$"```#[9&-,'@"`'"BQ*)%0````")T,'@ -M"`^VR0G(9CT#$0^%F@```(G0P>@(9CU%4W0*9CU``P^%A0```&;'1B`#$6:) -M1B)F/453=1R`OJ4````"=!/&AJ4````"QX:H````'P```.LB9H%^(D`#=1J` -MOJ4````#=!'&AJ4````#QX:H````#_@#`,:&K`````&)-"3H_/___\:&K``` -M``"+!HN`2`4``,=$)`0`````B00DZ/S____&1B8#Z4$!``#&1B8AQH:E```` -M`.DQ`0``BY5$"@``@<),"```#[9&-,'@"`'"BP*C`````(N51`H``('"1`@` -M``^V1C3!X`@!PHL"HP````#&1B8?Z?````#&1B8@Z><```"+E40*``"!PDP( -M```/MD8TP>`(`<*+`J,`````BY5$"@``@<)$"```#[9&-,'@"`'"BP*C```` -M``^V3BL/MD8?C5$!B%8K#[;)#[;`@^@!.<$/G,"#Z`&#X.>#P!^(1B;I@@`` -M`(N51`H``('"3`@```^V1C3!X`@!PHL*B0T`````#[;)BY5$"@``@<)$"``` -M#[9&-,'@"`'"BP*C`````,'@"`G!B8Z4````QD8F&NLUQD8F&^LOBX5$"@`` -M!4P(```/ME8TP>((`="+`*,`````@^#WB$8LQD8F'.L(QD8F'8UT)@"+1"0T -M@WA0`'0/@\!0B40D!(DL).C\____BU0D-(E4)`2)+"3H_/___XET)`2)+"3H -M_/___^LIQD8F&.D;_?__B2PDZ/S____'!"0!````Z/S___^[/D(/`.EE_/__ -MB?:+7"0<BW0D((M\)"2+;"0H@\0LPXVV`````(V_`````(/L7(E<)$R)="10 -MB7PD5(EL)%B+;"1@BWPD9`^W5Q!F@?J%``^'O@````^WP@^VC`6\!```@/G_ -M#X2J````9H/Z?W<<#[;!BY5\!0``:<`D`0``BT00+`^V0`3K.HUV`&:!^H$` -M=QD/ML&+E;0%``!IP!0-``"+1!`(#[9`!.L7#[;!BY68!0``:<"P````BT00 -M5`^V0`0\_W1-#[;`#[:4!4(%``"`^O]T%8#Y_W00#[9?%(#[!G57C;0F```` -M`(#Z_W0C@/G_=!X/ML%IP"0!``")Q@.U?`4``,9&)P+&1B;_Z;@'``"#?U`` -M=`^-1U")1"0$B2PDZ/S___^)?"0$B2PDZ/S____IP@<``(GV#[;!:<`D`0`` -MB<8#M7P%```/MX:4````9HE$)#9F/:L-=P6`^P)U.H-_4`!T#XU'4(E$)`2) -M+"3H_/___XE\)`2)+"3H_/___\9&)O_&1B<"B70D!(DL).C\____Z5X'``#& -M1"0]`(#[('4EBT\X#[8!@^!_/'%V#0^V20�^(3"0]ZPL/MDD"@^$/B$PD -M/0^VTHE4)#!KPER-A`5,`0``B40D.`^V1R0\&@^$!P8``#P:=Q\\$G11/!6- -M="8`#X28!@``A,`/A*4%``")]NF[!@``/"4/A.`"```\)9!W$SP;#X6F!@`` -MC;8`````Z74%```\G@^$S0,``#R@D`^%B@8``.EB!@``A-N-=@`/A8,"``"+ -M3S2`?R4`C78`=&&%R71+@'D!@'5%@'D"`'4_#[9!`SP\=S</MMB-5E"X```` -M`,8$$""#P`&#^!1U](/[$W8%NQ0```"-5E"-002)7"0(B40D!(D4).C\____ -M9L>&E```````QD8F&>D-!@``QD8F&/9!!D!U$0^V`8/@'X/X#0^%8P$``.L+ -M#[8!@^`?@_@-=0G&1B4-C78`ZP3&1B4B#[9&)8E$)`3'!"1*`@``Z/S___^# -M?U``=`^-1U")1"0$B2PDZ/S___^)?"0$B2PDZ/S___]K1"0P7("\!58!```` -M#X3"!0``O@````")PXV\!80!``")/"3H_/___XT4*XN*B`$``(F"B`$``(DX -MB4@$B0$/MD`E/")T!#P-=0Z#Q@&)\CB4'58!``!WR&M$)#!<#[:$!58!``") -M\3C(#X5E!0``A,`/A%T%``"^`````&;'1"0^``#'1"1``````&M<)#!<C;P= -MA`$``(D\).C\____B<&-!"N+D(@!``")B(@!``").8E1!(D*#[9!)3PB=`0\ -M#744#[=!'&8[1"0^<@EFB40D/HE,)$"#Q@&)\#B$'58!``!WLH-\)$``#X3D -M!```BU0D0(!Z)O\/A-8$``#&0B;_B50D!(DL).C\____Z<$$``"#^`%U$<9& -M)0'&1B;_C70F`.E[!```]D$%`70&9H%..``$BU\TA=MT6XU69+@`````Q@00 -M`(/``8/X*'7TC9:,````L`#&!!``@\`!@_@(=?2-3F2-4PB+0PB)1F2+0@2) -M002+0@B)00B+0@R)00R+0A")01"+0A2)012+0R")AHP```"#OAP!````#X4` -M!```QD8F'.GW`P``#[=$)#:#P`%FB8:4````QP0D$"<``.C\____QD8F!>G3 -M`P``BT\TA-L/A9`````/ME$&P>((#[9!!<'@$`G"#[9!!PG"#[9!!,'@&`G" -MB9:P````#[81P>(8#[9!`PG"#[9!`L'@"`G"#[9!`<'@$`G0B49$QT9(```` -M`(.^L`````!U'6:#AI0````!QP0D$"<``.C\____QD8F&^E5`P``@_C_=0]F -M@4XX``3&1B8;Z4$#``#&1B8-Z3@#``"`^R!U,X!\)#T&=`>`?"0]`G4E#[=$ -M)#:#P`%FB8:4````QP0D$"<``.C\____QD8F!>D!`P``D(-_4`!T#XU'4(E$ -M)`2)+"3H_/___XE\)`2)+"3H_/___XET)`B+3"0XB4PD!(DL).C\____Z?8" -M``"+1S2)1"1$A-L/A1\!```/ME`*P>((#[9`"<'@$`G"BTPD1`^V00L)P@^V -M00C!X!@)PHF6L`````^V00.)PK@`````B40D*(E4)"P/MD$"B<*X`````,'B -M"(M,)"@)P8M<)"P)TXM$)$0/M@")1"0@QT0D)`````"+1"0@B<*X`````,'B -M&`G!"=.+1"1$#[9``8E$)!C'1"0<`````(M$)!B)PK@`````P>(0"<$)TXM$ -M)$0/ME`&P>((#[9`!8E$)!C!X!`)PHM$)$0/MD`'"<*+1"1$#[9`!(E$)!C! -MX!@)P@G*B59$B5Y(BU0D1/9"#`%T!6:#3CH$@[ZP`````'4=9H.&E`````'' -M!"00)P``Z/S____&1B8;Z:8!``!F@TXX`<9&)@WIF`$``(#[('4S@'PD/09T -M!X!\)#T"=24/MT0D-H/``6:)AI0```#'!"00)P``Z/S____&1B8;Z6$!``"0 -M@W]0`'0/C4=0B40D!(DL).C\____B7PD!(DL).C\____B70D"(M,)#B)3"0$ -MB2PDZ/S____I5@$``,9&)A3I'0$``(#[('4X@'PD/0:-=@!T!X!\)#T"=2</ -MMT0D-H/``6:)AI0```#'!"00)P``Z/S____&1B84Z>,```"-=@#&1B8;Z=<` -M``"$VY"-="8`=5R+1S1F@TXX`F:#3CH!9H%..(0`@'@#`'4%@#@6=QUF@X:4 -M`````<<$)!`G``#H_/___\9&)@WIDP```/9`!@1T!V:#3CH"ZP5F@V8Z_8M' -M4(E&&,='4`````#K.H#[('4P@'PD/09T"(!\)#T"D'4F#[=$)#:#P`%FB8:4 -M````QP0D$"<``.C\____QD8F!>L]9H-F./G&1B8.ZS*$VW4%9H-..@/&1B8/ -MZR.$VY!U#(E\)`2)+"3H_/___X.^'`$```$9P(/@$X/`!8A&)H-_4`!T#XU' -M4(E$)`2)+"3H_/___XE\)`2)+"3H_/___XET)`2)+"3H_/___XUV`(M<)$R+ -M="10BWPD5(ML)%B#Q%S#D)"0D)"0D)"0D)"0@^$'P>$(@,T@BT`$+>0\```/ -MMM+!X@@!T(D(#[<`9J,`````#[;`PY"-M"8`````@^$'P>$(BDPD!(#-$(M` -M!"WD/```#[;2P>((`=")",-55U93@^P(B<?&1"0"`,9$)`,`O?_____'1"0$ -M``````^V1"0$B$0D`8-$)`0!N`$```")Q@^V3"0$T^:)\;L`````N,#AY`"Z -M`````/?Q.?AW'8GZ*<*)T#GJ<Q,/ME0D`8A4)`*(7"0#B<6-="8`@\,!`?&# -M^Q!UR8-\)`0(=9\/MD0D`\'@`PI$)`(/ML"#Q`A;7E]=PY"-M"8`````@^P, -MB5PD!(ET)`B+7"00#[9T)!3'!"0`````N0<```")\HG8Z!?___\/MH,I"P`` -MB00DN0,```")\HG8Z/_^__^+7"0$BW0D"(/$#,.-=@!3B=,/MM&Y`P```.BP -M_O__.-@/E,`/ML!;PXVV`````%.+7"0(A=MT+[H`````B?8/MH0:/@4```^V -MR#S_=!$/M\%IP+`````#@Y@%``#K#8/"`8/Z!'78N`````!;PY!64X/L!(M$ -M)!"+F$P%``"%VW4"B<.^`````,<$)`````"Y!P```(GRB=CH8?[__\<$)$0` -M``"Y`@```(GRB=CH3/[__\<$)-````"Y`````(GRB=CH-_[__\<$)`````"Y -M!````(GRB=CH(O[__X/&`8/^`G6DN*"&`0#H,/[__XB#*0L```^VP(D$)+D# -M````N@````")V.CS_?__@\0$6U[#C;8`````C;PG`````(/L/(E<)"R)="0P -MB7PD-(EL)#B+5"1`#[:"I0```#P"#X7J````BXJH````B4PD%&;'1"0:``"] -M````*L=$)!P`````NP````"^`````+\$````N@$```")T(G9T^"%1"04=1R- -M2P;3XF8)5"0:"50D'+@5````B?'3X`G%ZPF0B?B)\=/@"<6#PP&#Q@6#QP.# -M^P5UO8M$)!R)1"0,QT0D"*@#``#'1"0$`0```(M4)$")%"3H_/___XEL)`S' -M1"0(Q`,``,=$)`0!````BTPD0(D,).C\____#[=$)!J+5"1`"X*H````B40D -M#,=$)`B@`P``QT0D!`$```")%"3H_/___^G]````C;8`````/`,/A>\```"+ -M3"1`BXFH````B4PD*&;'1"0B``"]````*L=$)"0`````NP````"^`````+\$ -M````C;0F`````+H!````B=")V=/@A40D*'4?C4L&T^)F"50D(@E4)"2X%0`` -M`(GQT^`)Q>L,C70F`(GXB?'3X`G%@\,!@\8%@\<#@_L$=;J+1"0DB40D#,=$ -M)`BH`P``QT0D!`$```"+5"1`B10DZ/S___^);"0,QT0D",0#``#'1"0$`0`` -M`(M,)$")#"3H_/___P^W1"0BBU0D0`N"J````/?0B40D#,=$)`B@`P``QT0D -M!`$```")%"3H_/___XM<)"R+="0PBWPD-(ML)#B#Q#S#D(UT)@"#[`R+5"00 -M#[9,)!2`?"08`'0/N/[____3P"&"J````.L-N`$```#3X`F"J````(D4).C\ -M____@\0,PY"-="8`@^P<QT0D$`$````/MT0D),'@"(/`#XE$)`S'1"0(F@`` -M`,=$)`0!````BT0D((D$).C\____@\0<PXVV`````(/L#(M4)!`/MDPD%(!\ -M)!@`=!"X_O___]/`9B&"D````.L.N`$```#3X&8)@I`````/MX*0````B40D -M!(D4).C\____@\0,PY"-M"8`````@^PLB5PD'(ET)"")?"0DB6PD*(MT)#"+ -M1"0T#[94)#B(5"0;#[:8F`````^V:`*+4&B%TG0:#[9$)!N)1"0(B>D/ML&) -M1"0$B10DZ/S___^)-"3H_/___X#[!W=*#[;#_R2%$!4``+_[````C70F`.LU -MOS,```#K+K\[````B?;K);]S````ZQZ_>P```(GVZQ6_LP```.L.O[L```") -M]NL%O_,```")?"0$B30DZ/S___\/MD0D&XE$)`B-1)T`#[;`B40D!(DT).C\ -M____BUPD'(MT)""+?"0DBVPD*(/$+,.-M@````"-O"<`````5U93@^P0B<>[ -M``````^V\KD"````B?*)^.BR^?__J`AT#K@`````ZR.-M"8`````QP0D`0`` -M`.C\____@\,!@?L0)P``=<FX_P```(/$$%M>7\.-M@````"-O"<`````@^P, -MB1PDB70D!(E\)`B)QHG/#[;:B=KHA/___X7`=3")^`^VT(G9B?#H@OK__X7` -M=!ZY`0```(G:B?#H,/G__XM4)!"(`K@`````ZPB-=@"X_____XL<)(MT)`2+ -M?"0(@\0,PXVV`````(V_`````(/L'(E<)!")="04B7PD&(G&#[;Y#[;:B3PD -MN0$```")VN@*^?__QP0D0````+D"````B=J)\.CU^/__B=J)\.CL_O__A<!U -M3H-\)"``=#7WQP$```!T&8G9ND````")\.C;^?__A<!T+>LRD(UT)@")V;H8 -M````B?#HPOG__X7`=!3K&8G9NB@```")\.BN^?__A<!U![C_````ZP6X```` -M`(M<)!"+="04BWPD&(/$',.-M"8`````C;PG`````%575E.#[`R)QXML)"2) -MTXG.A,D/A.H````/MMK'!"1D````N0(```")VHGXZ#_X__^)VHGXZ#;^__^% -MP'4.N0,```")VHGXZ/3W__^)\`^VR,<$)`$```")VHGXZ-_^__^^_____X3` -M#X5W`0``O@````"%[0^.:@$``+X`````C47_B40D"#ET)`AU-<<$)$````"Y -M`@```(G:B?CHSO?__XM$)"`!\(D$)+E8````B=J)^.@7_O__A<!T.>DC`0`` -MQP0D1````+D"````B=J)^.B9]___BT0D(`'PB00DN5````")VHGXZ.+]__^% -MP`^%[P```(/&`3GN#X3D````ZX2XH(8!`.B#]___#[;;#[;`B00DN0,```") -MVHGXZ$SW__^)VHGXZ$/]__^%P'0B#[:'*0L``(D$)+D#````B=J)^.@G]___ -MOO_____ID@```(G9NF````")^.@?^/__A<!T#;X`````A>U^7XGVZQ\/MH<I -M"P``B00DN0,```")VHGXZ.;V__^^_____^M4O@````#'!"1$````N0(```") -MVHGXZ,7V__^+1"0@`?")!"2Y@````(G:B?CH#OW__X7`=0>#Q@$Y[G7)#[:' -M*0L``(D$)+D#````B=J)^.B+]O__B?"#Q`Q;7E]=PY"#[!R)7"04B70D&(MT -M)"`/MDPD)(M$)"R)1"0$BT0D*(D$)+H`````B?#HX?W__XG#QP0D5````+D" -M````N@````")\.@W]O__B=B+7"04BW0D&(/$',.)]HV\)P````"#[!R)7"04 -MB70D&(MT)"`/MDPD)(M$)"R)1"0$BT0D*(D$)+H!````B?#H@?W__XG#QP0D -M5````+D"````N@$```")\.C7]?__B=B+7"04BW0D&(/$',.)]HV\)P````!5 -M5U93@^P,B<>+;"0DB<L/MO+'!"1D````N0(```")\NB;]?__B?*)^.B2^___ -MA<!U#KD#````B?*)^.A0]?__#[;+QP0D`0```(GRB?CH/?S__X3`=2Z%[7XQ -MNP````"+1"0@#[8,`\<$)`````")\HGXZ!C\__^$P'4)@\,!.>MT">O;N/__ -M___K!;@`````@\0,6UY?7<.-M"8`````@^P<B5PD%(ET)!B+="0@#[9,)"2+ -M1"0LB40D!(M$)"B)!"2Z`0```(GPZ#'___^)P\<$)%0```"Y`@```+H!```` -MB?#HU_3__XG8BUPD%(MT)!B#Q!S#B?:-O"<`````@^P<BTPD(`^V5"0DBX%, -M!0``A<!U`HG(B!4@`0``QT0D#"````#'1"0((`$``,=$)`0.````B00DZ/S_ -M__^#Q!S#C;0F`````(V\)P````"#[`R+5"00#[9,)!2`?"08`'00N`$```#3 -MX&8)@K@,``#K#KC^____T\!F(8*X#```#[:"N`P``(E$)`2)%"3H_/___X/$ -M#,.0C;0F`````%575E.#[$R+1"1DBT@8@\$"BU`0@^H!B50D),=$)$@````` -MBU@<B5PD*(G&BT`8#[91`8#Z`74,QT8L`````.EL!0``@/H"=5.`>0(!C78` -M=3J+5"1@BX),!0``A<!U`HG0BX!(!0``#[91`XB0N@P```^V40.(D'X9``"+ -M3"1DQT$L`````.DD!0``BUPD9,=#+/[____I%`4``(/``8E$)"R`^@0/A24" -M```/MD$#@^@[/`$/AQ8"``"+1"0L#[9P`HM4)&"+FD@%``")\0^VP8E$)`2) -M'"3H_/___XG"A,!T#0^VP("\`[P$``#_=5:+FT@%``"!P\0,``"+@T@%``") -M!"3H_/___XGR*,(/ML*)1"0$B1PDZ/S___^)PH3`=`T/ML"`O`.\!```_W46 -MBTPD9,=!+/____^)#"3_42CIA`0```^VP@^VA`.\!```@/J!=V8/MLAIR10- -M``"+1"0L#[9`!(A$)#N+="0L#[96!<'B$`^V1@;!X`@)P@^V1@<)PHE4)#`/ -MME8(P>(0#[9&"<'@"`G"#[9&"@G"B50D-(G.`[.T!0``#X0)`0``@'XP`'4= -MZ?X```"+1"1DQT`L_____XD$)/]0*(GVZ?8#``"_`````,9$)#H`C6XHBU0D -M+(/""XE4)!R)+"3H_/___XU8^(M6+(E&+(EK"(E3#(D"#[9#)3P-=`@\(@^% -MC````(M,)"P/MD$#/#MT-#P\=7R+1"1DB40D$(M4)#")5"0,BTPD-(E,)`@/ -MMD0D.XE$)`2)'"3H_/___\9$)#H!ZTR+@^@```"+5"0PB50D"(M,)!R)3"0$ -MB00DZ/S___^+1"1DB40D$(M4)#")5"0,BTPD-(E,)`@/MD0D.XE$)`2)'"3H -M_/___\9$)#H!@\<!B?LX7C`/ASW___^`?"0Z``^%$`,``(MT)&3'1BS_____ -MB30D_U8HZ?H"``"`^@,/A;<```"`>0(!B?8/A9L```"+5"1@#[9")HTT``^V -M60.)VHG8P?H?]_Z)TSG6?FV->00/MO(/MD$$B40D"(ET)`2+3"1@B0PDZ/S_ -M__^-0_R#^`-V&(U#](/X`W80C4/L@_@#=@B-0^2#^`-W"(%$)&#$#```#[8' -MB40D"(ET)`2+7"1@B1PDZ/S___^+="1DQT8L`````.D_`@``BT0D9,=`+/[_ -M___I+P(``(M4)&3'0BS^____Z1\"``"`.05V2H!Y!/YU1(U$)$B)1"0(BTPD -M9(E,)`2+7"1@BX-(!0``B00DZ/S___^$P`^%Z@$``,=$)$@`````BW0D9,=& -M+/_____IT@$``(GVBT0D8(NH3`4``(7M=0*)Q8G+N`(````IR(E$)"#I[@`` -M``^V,XUZ`0^VR/;!`71PBU0D2(ET)!B-!!:+7"1D.T,4#X=A`0``BT0D+(`X -M`74BB70D!(M$)"@!T(D$)+H!````B>CH9O?__SGP=";I-@$``(ET)`2+1"0H -M`=")!"2Z`````(GHZ$3W__\Y\`^%%0$``(M4)!@!5"1(B?OK<(T<-XM$)"`! -MV#M$)"0/C_8```"+1"0L@#@!=1R)="0$B3PDN@$```")Z.BQ^?__A<!T(.G1 -M````B70D!(D\)+H`````B>CHE?G__X7`#X6V````@#L`=0J`>P$`C70F`'0. -MQP0D$"<``.C\____B?:-4P$/MD,!A,`/A0/___\/M@.$P`^$B@````^VV,<$ -M)%0```"Y`@```+H`````B>CH^^[__XM4)$B+3"1DBT$4*=`YPW8"B<.+="0L -M@#X!=2")7"0$BT0D*`'0B00DN0````"Z`0```(GHZ%'V___K'HE<)`2+1"0H -M`=")!"2Y`````+H`````B>CH,?;__X7`>`8!1"1(ZPN+1"1DQT`L_____\<$ -M)%0```"Y`@```+H`````B>CH=.[__XUT)@"+3"1DBU$@A=)T!HM$)$B)`HM< -M)&2)'"3_4RB#Q$Q;7E]=PXVV`````(V\)P````"#[!R+5"0@BX),!0``A<!U -M`HG0BY!(!0``#[:"NPP``(3`=`V#Z`&(@KL,``"$P'4GQ@4C`0```,=$)`P@ -M````QT0D""`!``#'1"0$#@```(D4).C\____@\0<PXUT)@"#[!R+5"0@BX), -M!0``A<!U`HG0BX!(!0``@+BZ#````'4N@("[#````<8%(P$```''1"0,(``` -M`,=$)`@@`0``QT0D!`X```")!"3H_/___X/$',.-M@````"-OP````"#[!R) -M7"04B70D&(MT)"`/MDPD)(M$)"R)1"0$BT0D*(D$)+H`````B?#HD??__XG# -MQP0D5````+D"````N@````")\.@W[?__B=B+7"04BW0D&(/$',.0D)"0D)"0 -MD)"+1"0$BT`$+0`"`0`#1"0(BP"C`````,.0C;0F`````(M$)`2+0`0M``(! -M``-$)`B+5"0,B1##B?:-O"<`````4X/L#(M<)!2+4P2!Z@`"`0#'@H```0`` -M````BX($`0$`HP````"`S`&)@@0!`0#'1"0(!````,=$)`0,P@``B1PDZ/S_ -M___'1"0(N`L``,=$)`0(P@``B1PDZ/S____'1"0(`0`,`,=$)`0`P@``B1PD -MZ/S____'1"0(!````,=$)`0,PP``B1PDZ/S____'1"0(N`L``,=$)`0(PP`` -MB1PDZ/S____'1"0(`0`,`,=$)`0`PP``B1PDZ/S___^+0P0MM`$``&;'```` -MBT,$+90!```/MP!FHP`````/M\"+4P2!ZI0!``"#R`1FB0*+0P0MF`$``&;' -M``0`9L>#N`P``/__@\0,6\.-M@````"+1"0$BU`$@>H``@$`BX)L``$`HP`` -M```,R(F";``!`,/K#9"0D)"0D)"0D)"0D)"+1"0$BU`$@>H``@$`BX)H``$` -MHP`````D-PM$)`B)@F@``0##C70F`(V\)P````"#["")7"00B70D%(E\)!B) -M;"0<BUPD)`^V3"0H#[9\)"PYFT@%``!U?(G(P.@"O0`````/MM")R(/@`XTT -M0+@'````B?'3X/?0(T23/(E$)`R)1),\B?B$P'0/N`0```#3X`M$)`R)1),\ -MBT23/(E$)`B)Z@^VPL'@"`50P@``B40D!(N#2`4``(D$).C\____BUPD$(MT -M)!2+?"08BVPD'(/$(,.)R,#H`H/H!+T!````Z7S___^)]HV\)P````!55U93 -M@^P<BWPD,`^V1"0TB$0D&P^V5"0XB%0D&@^V;"0\BT<(BS")-"3H_/___XG# -MA<`/A/@```")-"3H_/___XG"A<`/A.8```#&1S0!QD,DX<9#)0'&0R80QD,5 -MNP^V1S-FB4,0B7,8QT,@D````(U""(E#-(E34(G!B<*X`````,8$$`"#P`$] -MD````'7RQD$!@L8!0`^V1"0;B$$"#[94)!J(40.)Z(A!!#P"=R.-00B)Z0^V -MT<'B`HV.A`L``(E4)`B)3"0$B00DZ/S____K-XN&A`L``(E!"(N&B`L``(E! -M#(/!$(GJ#[;"C02%^/___XV6C`L``(E$)`B)5"0$B0PDZ/S____'0VP````` -MQT0D!`````"-0SR)!"3H_/___XE<)`2)-"3H_/___X/$'%M>7UW#C;0F```` -M`(/L+(E<)!R)="0@B7PD)(EL)"B+?"0PBVPD-(M$)#B)1"08BU0D/(E4)!2+ -M1PB+,(DT).C\____B<.%P`^$@````(DT).C\____B<*%P'1RQD<T`<9#).'& -M0R4!QD,F$,9#%;L/MD<S9HE#$(ES&,=#()````"-0@B)0S2)4U#&0`$"QD(( -M0(GJB%`"#[94)!B(4`,/ME0D%(A0!,=#;`````#'1"0$`````(U#/(D$).C\ -M____B5PD!(DT).C\____BUPD'(MT)""+?"0DBVPD*(/$+,.-=@"-O"<````` -M55=64X/L'(MT)#`/MFPD-`^V1"0XB$0D&XM&"(L8QT0D#`(```#'1"0(```` -M`,=$)`0`````B30DZ/S___^`?C0`=!J)'"3H_/___\<$)`$```#H_/___X!^ -M-`!UYHM&"(L`!80+``"`>`(`>$2`2`*`QT0D#`$```#'1"0(`````,=$)`0` -M````B30DZ/S___^`?C0`=!J)'"3H_/___\<$)`$```#H_/___X!^-`!UYHGH -MP.@"#[;XQT0D#`$```")?"0(QT0D!`,```")-"3H_/___X!^-`!T'HUT)@") -M'"3H_/___\<$)`$```#H_/___X!^-`!UYHM&"(L8B>GWT8/A`X!\)!L`#Y7" -MP>(##[:$"X0+``"#X.<)T(B$"X0+``#'1"0,`0```(E\)`C'1"0$`P```(DT -M).C\____@\0<6UY?7<.-M"8`````@^P<B5PD#(ET)!")?"04B6PD&(M<)""+ -M="0D#[=&$&8]A0!W&XNKM`4```^WP`^VA`.\!```:?@4#0``ZPV)]HNKM`4` -M`+_L!@T`BT8T@'@!`G4DC8N$"P``C5`$BT`$B8.$"P``BT($B4$$BT((B4$( -MBT(,B4$,BT90A<!T#(E$)`2)'"3H_/___XET)`2)'"3H_/___\9$/30`BUPD -M#(MT)!"+?"04BVPD&(/$',.#[!")'"2)="0$B7PD"(EL)`R+3"04BW0D&(M4 -M)!R+7"0@B[E\!0``#[=&$+W<(@$`9CV%`'<1#[?`#[:$`;P$``!IZ"0!``"- -MBB`$``#&@B`$```G9H%^).$!=2,/ME8FC4+_/`%W"0^V5B>#X@_K)(U"[[H/ -M````/`%V&(UV`(T$+[H`````@W@T`'0'#[9038/B#P^V00&#X/`)T(A!`;@! -M````9H%^).$!=1(/MD8F@^@!/`$/E\`/ML"-=@")PL'B!P^V00&#X'\)T(A! -M`0^V0P:(00(/M@.(00,/MD,%B$$'#[9#!XA!#P^V0P*(000/MD,#B$$%#[9# -M!(A!!@^V0P&(00P/MD,*B$$(#[9#"XA!"0^V0PR(00H/MD,(B$$+#[9#"8A! -M#8L<)(MT)`2+?"0(BVPD#(/$$,.)]@^V1"0$PXUV`(V\)P`````/MD0D!<.- -M=@"-O"<`````4XM4)`B+7"00QD(4`HM*.(M$)`R(00*+0CC&0`<`BT(XB%@, -M6\.-=@"-O"<`````BU0D!(M,)`@/MD(IB$$"#[9"*(A!`P^V0B>(000/MD(F -MB$$*PXUT)@"-O"<`````BU0D!(M,)`@/MD(MB$$"#[9"+(A!`P^V0BN(000/ -MMD(JB$$*#[9"*8A!"P^V0BB(00S#C;8`````C;PG`````(M,)`R%R7X=N@`` -M``"-=@")R"G0@_@"#YW`#[;`C50"`3G1?^OSPXGVC;PG`````(/L'(E<)`R) -M="00B7PD%(EL)!B+7"0@BW0D*`^V1"0DB$0D"P^V0R0\*G0F/"IW$#PH#X78 -M````ZQB-M@`````\B'0D/(H/A<0```"-="8`ZQ8/MGLL#[9K*XET)`2)'"3H -M_/___^L4#[9[,0^V:S")="0$B1PDZ/S____&1@5`BT-DJ0```0!T+(GXB`:) -MZ(A&"`^V1"0+P>`#B$8!#[9#)#PH=`0\B'4&QD8&8.M@QD8&8>M:J0``!`"0 -MC70F`'0BB?B(1@&)Z(A&"0^V0R0\*'0$/(AU!L9&!B7K,L9&!C7K+(GXB$8! -M#[9#)H/@#PA&!0^V0R0\*'0$/(AU!L9&!LCK"\9&!LJ-M"8`````BUPD#(MT -M)!"+?"04BVPD&(/$',.-M@````"-OP````"#[`R+3"00#[9!)@I!)PI!*`I! -M*0^VP`^V42R#X@$)T'0>QT0D""0```#'1"0$!0```(D,).C\____ZQ.-="8` -MBT0D%,9`!NS'06P`````@\0,PXVV`````(V\)P````"#[!B)7"0(B70D#(E\ -M)!");"04BUPD'(MT)"`/MD,D/"]T#3R/=6#K'8VT)@`````/MGLL#[9K*XET -M)`2)'"3H_/___^L4#[9[,0^V:S")="0$B1PDZ/S____&1@5`]D-F!'00B?B( -M1@&)Z(A&"<9&!D+K$XGXB$8!#[9#)H/@#PA&!<9&!D"+7"0(BW0D#(M\)!"+ -M;"04@\08PY"-="8`4X/L#(M,)!B+5"0<QD(%0`^V020\-70(/)%U*NLBB?:+ -M7"04#[=#.(/@`8/X`1G`@^#]@^@6B$(&ZR60C70F`,9"!NKK&L=$)`@D```` -MQT0D!`4```")#"3H_/___^L*]D$E`G0$QD$4`(/$#%N)]L/K#9"0D)"0D)"0 -MD)"0D)"#[`R+1"00]D`H\'08QT0D""0```#'1"0$!0```(D$).C\____@\0, -MPXVT)@````!3@^P0BUPD'(M,)"0/MD0D(+H`````Q@0*`(/"`8/Z#77T#[93 -M)(#Z-0^$KP```(#Z-7<T@/HH=&R`^BB-="8`=Q.`^AL/A9H#``"0C70F`.FJ -M````@/HJ=$N`^B^-=@`/A7\#``#K78#ZCY"-="8`=%.`^H]W$8#ZB'0I@/J* -MD`^%7P,``.L=@/J1D(UT)@!T3(#ZX0^%2@,``)"-="8`Z9(```")3"0(#[;` -MB40D!(D<).C\____QT0D#`$```#I*`,``(E,)`2)'"3H_/___\=$)`P!```` -MZ0\#``")3"0(B5PD!(M$)!B)!"3H_/___\=$)`P!````Z>X"``#V0R@!="'& -M009PQD$$`,9!`P#&00(`QD$%0,=$)`P!````Z<<"``#&00;@QT0D#`$```#I -MM@(``(![)0$/A:0"``"`>R8<#X>:`@``#[9#)I#_)(4P%0``QD$'!,=$)`P! -M````Z84"``#&00<`QT0D#`$```#I=`(``,9!!NS'1"0,`0```.EC`@``QD$& -M[\8!`P^V0R>#R$"(00''1"0,`0```.E%`@``QD$&[\8!!\=$)`P!````Z3$" -M``#&009`QD$!`<9!!4#'1"0,`0```.D8`@``QD$&[\8!`P^V0R>#R`B(00'' -M1"0,`0```.GZ`0``QD$&[\8!`L=$)`P!````Z>8!``#&00;OQ@&"QT0D#`$` -M``#IT@$``,9!!N_&`0;'1"0,`0```.F^`0``QD$&[\8!AL=$)`P!````Z:H! -M``#&00;C#[9#)XA!`<=$)`P!````Z9(!``#&00:PQ@'8QD$#3\9!!,+'1"0, -M`0```.EV`0``QD$&L,8!V<9!`T_&003"QT0D#`$```#I6@$``,9!!K#&`=K& -M00-/QD$$PL=$)`P!````Z3X!``"+1"08]D`X`701QD$&ZL=$)`P!````Z2,! -M``#&00;GQT0D#`$```#I$@$``,9!!N_&`:K'1"0,`0```.G^````QD$&[\8! -M5<=$)`P!````Z>H```#&008OQD$!`<9!`A#'1"0,`0```.G1````QD$&Y`^V -M0RB(`0^V0RF(00@/MD,GB$$%QT0D#`$```#IK`````^V0R>(008/MD,HB`$/ -MMD,IB$$"#[9#*HA!`P^V0RN(000/MD,MB$$*#[9#+(A!`<=$)`P!````ZW+& -M00;H#[9#*(@!#[9#*8A!"`^V0R>(004/MD,JB$$"#[9#*XA!`P^V0RR(000/ -MMD,MB$$!QT0D#`$```#K-,=$)`P!````]D,H`70FQD$&<,9!!`#&00,`QD$" -M`,9!!4#'1"0,`0```.L(QT0D#`````"+1"0,@\006\.-=@"-O"<`````@^P\ -MB5PD+(ET)#")?"0TB6PD.(ML)$2+=32-?"0,_+D(````N`````#SJ_:&IP`` -M``1T%(N.R````(N>S````(/!_X/3_^L-BT9X@^@!B<&[`````(!])"5U9XG( -M#ZS8&(A$)`R)R`^LV!"(1"0-B<@/K-@(B$0D#HA,)`_VAM4````0=13&1"02 -M`L9$)!,`N0@```#IJ0```(U4)!#'1"0(!````(V&Z@```(E$)`2)%"3H_/__ -M_[D(````Z8$```")V,'H&(A$)`R)V,'H$(A$)`V)V,'H"(A$)`Z(7"0/B<@/ -MK-@8B$0D$(G(#ZS8$(A$)!&)R`^LV`B(1"02B$PD$_:&U0```!!U%,9$)!8" -MQD0D%P"Y(````.LFC78`C50D%,=$)`@$````C8;J````B40D!(D4).C\____ -MN2````"+532-1"0,B4PD"(E$)`2)%"3H_/___XM<)"R+="0PBWPD-(ML)#B# -MQ#S#B?964X/L%(M,)""+7"0DBU$LBS(/MD,D/"]T:#PO=S0\&P^$,@$``#P; -M=PX\$HUT)@`/A3H!``#K2CPHC;8`````=$`\*@^%)@$``(VV`````.LP/(IT -M+#R*=Q@\-8UT)@`/A/(````\B`^%`@$``(GVZQ`\CW0,/.$/A?(```")]NMU -M]D$X`70'@4MD```$`/9!.A`/A/X```"#>30`C78`#X7Q````#[9#)#PH=!`\ -M*G0,/(AT"#R*#X79````]D((`748#[9"!(E$)`2)-"3H_/___X3`#X2[```` -M@'L4@0^$L0```(%+9````0"X`0```.FI````@'LE`0^%CP```(![)AP/AX4` -M```/ODLFN`$```#3X*GV/\`==26I"$`&`'4.J0``(`!U(I"-="8`ZUZ#2V0( -MN`$```"0C70F`.M>@TMD`;@!````ZU.#2V0@N`$```#K2/9!.`%T!X%+9``` -M!`"#2V0!N`$```#K,(M#9*D``"``=!;V03@!=!<-```$`(E#9+@!````ZQ&0 -MN`````#K";@!````C70F`(/$%%M>PY"0D)"0D)"0D)"#[`B)'"2)="0$B=.+ -M="04BU`$#[9$)!#!X`0/MLG!X0@)P8!\)`P`=`.#R02#_O]T$(GP)?__`P") -M@@3&__^#R0*)"XL<)(MT)`2#Q`C#D(M`!"T``@$`@\H!B9``R```PXVT)@`` -M``"-O"<`````5U93@^P0B=>+0`2%TG1*C;``QO__BX``QO__HP````"[```` -M`*@!=1+K)Y"-="8`BP:C`````*@!=!?'!"0*````Z/S___^#PP$Y^W7BB?;K -M![@`````ZP6X_____X/$$%M>7\.-="8`C;PG`````%93@^PDBUPD,,=$)"`` -M````BW,$QH.\#`````^V#4@!``"-5"0@QT0D"`````#'1"0$`@```,<$)`$` -M``")V.C<_O__BU0D((G8Z"'___^ZH(8!`(G8Z#7___^%P'5'BX8,QO__HP`` -M``")1"0@/1]C``!U,<>#K`P``!]C``#'@[`,``````0`QX.T#``````!`,># -MP`P``$`!``!FN```Z3H"``#'1"0@`````(MS!,:#O`P```$/M@U8`0``C50D -M(,=$)`C_____QT0D!`(```#'!"0!````B=CH/_[__XM4)"")V.B$_O__NA`G -M``")V.B8_O__A<!U9XN&#,;__Z,`````B40D(#T?0P``="X]'T0``'5*QX.L -M#```'T0``,>#L`P`````!P#'@[0,``````$`Z80!``"-="8`QX.L#```'T,` -M`,>#L`P`````!`#'@[0,``````$`Z5T!``#'1"0@`````(MS!,:#O`P````/ -MM@UH`0``C50D(,=$)`@`````QT0D!`(```#'!"0!````B=CH@OW__XM4)"") -MV.C'_?__NA`G``")V.C;_?__A<!U1XN&#,;__Z,`````B40D(#V_0P``=3'' -M@ZP,``"_0P``QX.P#``````@`,>#M`P````0``#'@\`,``!@`0``9K@``.G@ -M````QT0D(`````"+<P3&@[P,````#[8->`$``(U4)"#'1"0(`````,=$)`0" -M````QP0D`0```(G8Z.7\__^+5"0@B=CH*OW__[H0)P``B=CH/OW__X7`=5^+ -MA@S&__^C`````(E$)"`][Q$``'0)/>\2``!U0NL@QX.L#```[Q$``,>#L`P` -M````!`#'@[0,``````$`ZSS'@ZP,``#O$@``QX.P#``````(`,>#M`P````` -M`0#K'+C_____ZR2-="8`QX/`#```4`$``+@`````ZP_'@\`,``!P`0``N``` -M``"#Q"1;7L.-=@"-O"<`````@^P\B5PD+(ET)#")?"0TB6PD.(G&B=>)3"08 -MBV@$#[9$)$`\!'8%N`0````/MMB+AL`,```/MD@$C50D*(E\)`B)7"0$QP0D -M`0```(GPZ-W[__^+5"0HB?#H(OS__[H0)P``B?#H-OS__[K_____A<!U&HN% -M#,;__Z,`````B40D*(M4)!B)`KH`````B="+7"0LBW0D,(M\)#2+;"0X@\0\ -MPXVV`````(V\)P````!3@^PHBUPD,(N#P`P```^V2`N-5"0DBT0D-(E$)`C' -M1"0$`0```,<$)`$```")V.A,^___BU0D)(G8Z)'[__^Z$"<``(G8Z*7[__^Z -M_____X7`=1J+0P0M]#D``(L`HP````"+5"0XB`*Z`````(G0@\0H6\.-="8` -MC;PG`````%575E.#["R)PXA4)!N)S8-\)$``#X23````O@````"0BWL$BX/` -M#```#[9(`L=$)`C_____QT0D!`$```#'!"0!````C50D*(G8Z+'Z__^+5"0H -MB=CH]OK__[H0)P``B=CH"OO__X7`=2J+EPS&__^)%0`````/MD0D&R'0B>DX -MR'4-N`````#K*(VV`````(E4)"C'!"0*````Z/S___^#Q@$[="1`#X5S____ -MN/____^#Q"Q;7E]=PXVV`````%.#["B)PXN`P`P```^V"(U4)"3'1"0(____ -M_\=$)`0`````QP0D`````(G8Z`_Z__^+5"0DB=CH5/K__[H0)P``B=CH:/K_ -M_X7`=23'!"3@DP0`N0(```"Z`P```(G8Z-S^__^Z`````(7`=`B-=@"Z____ -M_XG0@\0H6\.-="8`@^PLB5PD)(ET)"B+7"0PBW0D-,9$)"/_C40D(XE$)`B) -M="0$B1PDZ/S___^%P'5R@'PD(P!T>8G8Z$+___^#^/]T7XN#P`P```^V2`J- -M5"0<B70D",=$)`0`````QP0D`````(G8Z%7Y__^+5"0<B=CHFOG__[H0)P`` -MB=CHKOG__X7`=1S'!"3@DP0`N0````"Z`P```(G8Z"+^__^%P'0.N/_____K -M#(VT)@````"X`````(M<)"2+="0H@\0LP^L-D)"0D)"0D)"0D)"0D%575E.# -M[#R+;"10#[9$)&"#O<`,````#X0:`P``BWPD6(3`#X1K`0``@WPD5/]U%`^W -MA:P,``!FB0>X`0```.D<`P``@WPD5/YU%8N%L`P``(D'N`$```#I`P,``(UV -M`(-\)%3]=1F+A;0,``")![@!````Z><"``"-M"8`````BT0D7`-$)%2)1"08 -M.X6P#```#X>?`@``BUPD5(/C_(M4)%2#X@.)5"0@=&Z-="0XQP0D!````(GQ -MB=J)Z.C^^___@\,$QT0D'`0````Y7"08<Q"+1"0@*T0D5`-$)!B)1"0<BT0D -M(#E$)!QV+8T,!HG^BT0D'(U4!#B-M@`````/M@&(!H/&`8/!`3G1=?&+1"0< -M*T0D((T\!XMT)!B#YOPY\W,DQP0D!````(U,)#B)VHGHZ(?[__^+1"0XB0># -MQP2#PP0YWG?<.5PD&`^&[0$``(UT)#C'!"0$````B?&)VHGHZ%?[__^+3"08 -M*=D/A,L!``"Z`````(VV``````^V!!:(!#J#P@$YR@^$K@$``.OL@WPD5/]U -M*8`_#XGV=1'&A;T,```!N`$```#IK0$``,:%O0P```"X`0```.F<`0``BU0D -M7(E4)"B)T`-$)%0[A;`,```/AUD!``"`O;T,````#X1,`0``BT0D5+H````` -M][6T#```A=(/A9P```"`O;P,````=!B+1"14B40D!(DL).C\____A<`/A10! -M``")Z.B&_/__@_C_#X0$`0``BX7`#```#[9(!HU4)#B+1"14B40D",=$)`0` -M````QP0D`````(GHZ)'V__^+5"0XB>CHUO;__[H0)P``B>CHZO;__X7`#X6Y -M````QP0DX),$`+D`````N@,```")Z.A:^___A<`/A9D```"#?"1<``^$EP`` -M`,=$)"0`````BU0D6(M$)"2+-`*)QP-\)%2+702!ZP`"`0")Z.C>^___B;,( -MR```BX7`#```#[9(!8E\)`C'1"0$!````,<$)`````"-5"0XB>CH\/7__XM4 -M)#B)Z.@U]O__NA`G``")Z.A)]O__A<!U',<$)(@3``"Y`````+H!````B>CH -MO?K__X7`=!"X`````.LBB?:X`0```.L9@T0D)`2+5"0D.50D*';JZ5;___^0 -MC70F`(/$/%M>7UW#D)"0D)"0D)"X`````,.-=@"-O"<`````BU0D!(M,)`BX -M`````#D5`!@``'XTC112P>(##[>"'`(``&:)`0^W@AX"``!FB4$"#[:")`(` -M`(A!"`^V@B4"``"(00FX`0```//#D(UT)@"XB!D``,.-=@"-O"<`````N)P` -M``##C78`C;PG`````+@$````PXUV`(V\)P````!75E.+="00NP````"_```` -M`+D`````#[:4,3P%``"`^O]T0HV!@````&8]@0!W!8/#`>LQ#[;"BY:8!0`` -M:<"P````@+P0I0````-U%8/'`8U'`X/X!G8-@\,!OP````#K`X/#`8/!`8/Y -M!G6IB=A;7E_#C;8`````C;PG`````%575E.#[`2+;"08O@````#'!"0````` -MNX`````/MD0D'(UX`8G9#[:$*[P$```\_W1)9H'[@0!W!X/&`>LYB?8/ML"+ -ME9@%``!IP+````"`O!"E`````W4;@P0D`8L$)(/``X/X!G8/@\8!QP0D```` -M`.L#@\8!.?=T$(/#`8'[A@```'6>N0````")R(/$!%M>7UW#C70F`(V\)P`` -M``#SPXVT)@````"-O"<`````BT0D!,:`EP````##C70F`%93BUPD#+C_```` -MA=MT3+F"````OO____^-M"8`````#[:$&;P$```\_W0?#[;`BY.8!0``:<"P -M````#[:$$*0```")\CC"=@*)QH/!`8'YA@```'7*B?(/ML);7L.)]K@````` -MPXUV`(V\)P````!75E.+1"00BYA(!0``O@````"_`````+D`````C70F``^V -ME!D\!0``@/K_=$:-@8````!F/8$`=P>#Q@'K-8GV#[;"BY.8!0``:<"P```` -M@+P0I0````-U%X/'`8U'`X/X!G8/@\8!OP````#K!8GV@\8!@\$!@_D&=:6+ -MFT@%``"!P\0,``"Q`(VT)@`````/MI09/`4``(#Z_W1&C8&`````9CV!`'<' -M@\8!ZS6)]@^VPHN3F`4``&G`L````("\$*4````#=1>#QP&-1P.#^`9V#X/& -M`;\`````ZP6)]H/&`8/!`8/Y!G6EB?!;7E_#ZPV0D)"0D)"0D)"0D)"0B<&) -MT,#H!#P)=@6#P%?K`X/`,(@!B="#X`^#^`E^$8G0@^`/@\!7ZP^-M"8````` -MB="#X`^#P#"(00'#C70F`(/L"(D<)(ET)`2)QHG3#[;6Z*K___\/MMN#Q@*) -MVHGPZ)O___^+'"2+="0$@\0(PXM$)`S'0`0`````QP``````N`````##B?:- -MO"<`````BTPD!(M!8(7`=$7'0"``````@$@H!,=!8`````#'06@`````QT%D -M`````(M1"(/Z/W\/BT%LQX20O`(```````##BT%LQX20O`$```````#SPXVT -M)@````"-O"<`````BTPD!(M!8(7`=$7'0"``````@&`H^\=!8`````#'06@` -M````QT%D`````(M1"(/Z/W\/BT%LQX20O`(```````##BT%LQX20O`$````` -M``#SPXVT)@````"-O"<`````@^P,QP0D@`$``.C\____N`````"#Q`S#D(VT -M)@````!75E.#[$"+1"10QD0D&&W&1"09_\9$)!HCQD0D&Q3&1"0<.L9$)!WO -MQD0D'A;&1"0?DHNP3`4``(7V=0*)QHU$)"")PL8``(/``8G3C4PD0#G(=?#& -M1"0D`<=$)`P@````B50D",=$)`0.````B30DZ/S___^%P'5,QP0D@!H&`.C\ -M____QT0D#"````")7"0(QT0D!`\```")-"3H_/___X/X('4?C70D,(U\)!BY -M"````/SSI@^7P@^2P+D!````.,)T$<<$)%X"``#H_/___[D`````#[;!@\1` -M6UY?PU575E.#[%R+1"1PBY!(!0``@<+$#```B50D.(G!BP"%P'06+0```@") -M`8E$)`2+01")!"3H_/___XM<)'"+0PB%P'0/B40D!(M#$(D$).C\____BU0D -M<(M"#(7`=`^)1"0$BT(0B00DZ/S___^-1"1.B40D-(U$)%")1"0PC40D2HE$ -M)"R-1"1,B40D*(U$)%2)1"0DC40D5HE$)""-1"17B40D'(U$)%*)1"08C40D -M6(E$)!2-1"1(B40D$(U$)%F)1"0,C40D6HE$)`B-1"1;B40D!(M,)'`/MT$D -MB00DZ/S___^+7"1PBX-\!0``A<!T,(E$)`2)V`5D!0``B00DZ/S___^+5"0X -MBX)\!0``B40D!(G0!60%``")!"3H_/___XM,)'"+@9@%``"%P'0PB40D!(G( -M!8`%``")!"3H_/___XM<)#B+@Y@%``")1"0$B=@%@`4``(D$).C\____BU0D -M<(N"M`4``(7`=#")1"0$B=`%G`4``(D$).C\____BTPD.(N!M`4``(E$)`2) -MR`6<!0``B00DZ/S___^+7"1PBX/L!@``A<!T,(E$)`2)V`74!@``B00DZ/S_ -M__^+5"0XBX+L!@``B40D!(G0!=0&``")!"3H_/___X!\)%L`=%J^`````(ML -M)'"!Q0P'``"+?"0X@<<,!P``C78`#[?>BTPD<(N$F20'``")1"0$B2PDZ/S_ -M__^+5"0XBX2:)`<``(E$)`2)/"3H_/___X/&`0^V1"1;9CGP=\*+3"1PBX&, -M"0``A<!T,(E$)`2)R`5T"0``B00DZ/S___^+7"0XBX.,"0``B40D!(G8!70) -M``")!"3H_/___XM4)'"+@K0)``"%P'0PB40D!(G0!9P)``")!"3H_/___XM, -M)#B+@;0)``")1"0$B<@%G`D``(D$).C\____BUPD<(N#!`H``(7`=#")1"0$ -MB=@%[`D``(D$).C\____BU0D.(N"!`H``(E$)`2)T`7L"0``B00DZ/S___^+ -M3"1PBX'0!0``A<!T,(E$)`2)R`6X!0``B00DZ/S___^+7"0XBX/0!0``B40D -M!(G8!;@%``")!"3H_/___XM4)'"+@GP&``"%P'0PB40D!(G0!60&``")!"3H -M_/___XM,)#B+@7P&``")1"0$B<@%9`8``(D$).C\____BUPD<(N#+`8``(7` -M=#")1"0$B=@%%`8``(D$).C\____BU0D.(N"+`8``(E$)`2)T`44!@``B00D -MZ/S___^+3"1PBX%(!@``A<!T,(E$)`2)R`4P!@``B00DZ/S___^+7"0XBX-( -M!@``B40D!(G8!3`&``")!"3H_/___XM4)'"+@K0&``"%P'0PB40D!(G0!9P& -M``")!"3H_/___XM,)#B+@;0&``")1"0$B<@%G`8``(D$).C\____BUPD<(N# -MT`8``(7`=#")1"0$B=@%N`8``(D$).C\____BU0D.(N"T`8``(E$)`2)T`6X -M!@``B00DZ/S___^+3"1PBX$(!P``A<!T,(E$)`2)R`7P!@``B00DZ/S___^+ -M7"0XBX,(!P``B40D!(G8!?`&``")!"3H_/___XM4)'"+@CP)``"%P'0PB40D -M!(G0!20)``")!"3H_/___XM,)#B+@3P)``")1"0$B<@%)`D``(D$).C\____ -MBUPD<(N#9`D``(7`=#")1"0$B=@%3`D``(D$).C\____BU0D.(N"9`D``(E$ -M)`2)T`5,"0``B00DZ/S___^+3"1PBX'<"0``A<!T,(E$)`2)R`7$"0``B00D -MZ/S___^+7"0XBX/<"0``B40D!(G8!<0)``")!"3H_/___XM4)'"+@I@&``"% -MP'0PB40D!(G0!8`&``")!"3H_/___XM,)#B+@9@&``")1"0$B<@%@`8``(D$ -M).C\____BUPD<(N+(`H``(7)=%B+@R0*``"+DR@*``")1"0(B50D#(E,)`2) -MV`4("@``B00DZ/S___^+3"0XBX$D"@``BY$H"@``B40D"(E4)`R+@2`*``") -M1"0$B<@%"`H``(D$).C\____BUPD<(N+1`H``(7)=%B+@T@*``"+DTP*``") -M1"0(B50D#(E,)`2)V`4L"@``B00DZ/S___^+3"0XBX%("@``BY%,"@``B40D -M"(E4)`R+@40*``")1"0$B<@%+`H``(D$).C\____BUPD<(N+:`H``(7)=%B+ -M@VP*``"+DW`*``")1"0(B50D#(E,)`2)V`50"@``B00DZ/S___^+3"0XBX%L -M"@``BY%P"@``B40D"(E4)`R+@6@*``")1"0$B<@%4`H``(D$).C\____BUPD -M<(N+L`H``(7)=%B+@[0*``"+D[@*``")1"0(B50D#(E,)`2)V`68"@``B00D -MZ/S___^+3"0XBX&T"@``BY&X"@``B40D"(E4)`R+@;`*``")1"0$B<@%F`H` -M`(D$).C\____BUPD<(N+C`H``(7)=%B+@Y`*``"+DY0*``")1"0(B50D#(E, -M)`2)V`5T"@``B00DZ/S___^+3"0XBX&0"@``BY&4"@``B40D"(E4)`R+@8P* -M``")1"0$B<@%=`H``(D$).C\____BUPD<(N+U`H``(7)=%B+@]@*``"+D]P* -M``")1"0(B50D#(E,)`2)V`6\"@``B00DZ/S___^+3"0XBX'8"@``BY'<"@`` -MB40D"(E4)`R+@=0*``")1"0$B<@%O`H``(D$).C\____BUPD<(N+^`H``(7) -M=%B+@_P*``"+DP`+``")1"0(B50D#(E,)`2)V`7@"@``B00DZ/S___^+3"0X -MBX'\"@``BY$`"P``B40D"(E4)`R+@?@*``")1"0$B<@%X`H``(D$).C\____ -MBUPD<(N+'`L``(7)=%B+@R`+``"+DR0+``")1"0(B50D#(E,)`2)V`4$"P`` -MB00DZ/S___^+3"0XBX$@"P``BY$D"P``B40D"(E4)`R+@1P+``")1"0$B<@% -M!`L``(D$).C\____@\1<6UY?7<.-M@````"#[!R)7"04B70D&(M<)"")'"3H -M_/___XD<).C\____C;/$#```B30DZ/S___^)'"3H_/___\<$)-`'``#H_/__ -M_XD<).C\____QT0D!`$```")'"3H_/___\=$)`0!````B30DZ/S___^+7"04 -MBW0D&(/$',.-="8`C;PG`````(/L'(E<)!2)="08BW0D((M<)"2(7C</MMN) -M7"0$B30DZ/S___^)7"0$@<;$#```B30DZ/S___^X`0```(M<)!2+="08@\0< -MPY"-M"8`````4X/L"(M<)!")'"3H_/___XN#2`4```7$#```B00DZ/S___^# -MQ`A;PY"-M"8`````4X/L"(M<)!")'"3H_/___XN#2`4```7$#```B00DZ/S_ -M__^#Q`A;PY"-M"8`````@^P,BT0D$(D$).C\____#[;`@\0,PXUV`(V\)P`` -M``"#["R)7"0<B70D((E\)"2);"0HB<.)UXG-BW!@BT!LB40D%(7V#X0U`0`` -M@+N7``````^%*`$``(D$).C\____B40D&(7`#X04`0``QD`DX<9`)0&)^H32 -M=`V)Z#P!&<#WT(/`!^L,B>J`^@$9P/?0@\`-BU0D&(A")L9"%(`/MT8<9HE" -M$(E:&,="(`````#'0C0`````QT)LL(<#`(E4)`2+1"04B00DZ/S____&@Y<` -M```!9L>#E````/0!A=MT68M#8(7`=%QF@;N4````E@!U%XE$)`C'1"0$(0`` -M`(M`+(D$).C\____9H.KE`````''!"30!P``Z/S___^+5"04B10DZ/S___^+ -M0V"%P'0)@+N7`````'6N9H.[E`````!T'(M$)!B`>!0`=1*+0V`/MT`Z9HE# -M6KL`````ZP6[_____XM4)!B)5"0$BT0D%(D$).C\____ZPF-="8`N_____^) -MV(M<)!R+="0@BWPD)(ML)"B#Q"S#D(UT)@"#["R)7"0<B70D((E\)"2);"0H -MBUPD,`^V?"0TBW-@BVMLA?8/A`P!``"`NY<`````#X7_````]@,"#X7V```` -MB2PDZ/S___^)1"08A<`/A.(```#&0"3AQD`E`8GX/`(/E<"#P!J+5"08B$(F -MQD(4@`^W1AQFB4(0B5H8QT(@`````,="-`````#'0FRPAP,`B50D!(DL).C\ -M____QH.7`````6;'@Y0```#Z`(7;=%6+0V"%P'189H&[E````)8`=1>)1"0( -MQT0D!"$```"+0"R)!"3H_/___V:#JY0````!QP0DT`<``.C\____B2PDZ/S_ -M__^+0V"%P'0)@+N7`````'6R9H.[E`````!T#[L`````BT0D&(!X%`!T!;O_ -M____BU0D&(E4)`2)+"3H_/___^L%N_____^)V(M<)!R+="0@BWPD)(ML)"B# -MQ"S#ZPV0D)"0D)"0D)"0D)"0@^Q,B5PD/(ET)$")?"1$B6PD2(MT)%`/MFPD -M5(M^8(M&;(E$)""%_P^$\@0``("^EP`````/A>4$``")!"3H_/___XE$)"2% -MP`^$T00``/8&`@^%!`$``(GJ@/H4=PL/ML*-!$#!X`+K&+B)____B>KVXF;! -MZ`C`Z`0/ML`%\````(M4)"3&0B3AQD(E`<9")AR(0B?&0A2`#[=''&:)0A") -M<AC'0B``````QT(T`````,=";+"'`P")5"0$BT0D((D$).C\____QH:7```` -M`6;'AI0```#$"87V=%F+1F"%P'1@9H&^E````)8`=1>)1"0(QT0D!"$```"+ -M0"R)!"3H_/___V:#KI0````!QP0DT`<``.C\____BU0D((D4).C\____BT9@ -MA<!T"8"^EP````!UKF:#OI0`````#X2\`P``NP````"+1"0D@'@4``^$K@,` -M`.FD`P``BU0D((D4).C\____B40D.(7`#X2,`P``BUPD)(/#/(M`"(E$)!R+ -M1"0DQD`D&L9`)0C&0"8:QD`G`,9`*!#&0"D`BT0D.(M4)"2)0E#&0A2`#[=' -M'&:)0A")<AB+1"0XBT`(B4(TQT(@$````(M&8`6X````B4(XQD(<(,=";+"' -M`P#'1"0$`````(D<).C\____BU0D)(M"((E$)`R+1"0XBU`0BT`,B40D!(E4 -M)`B)'"3H_/___XM$)"2)1"0$BU0D((D4).C\____QH:7`````6;'AI0```#Z -M`(7V=%F+1F"%P'1<9H&^E````)8`=1>)1"0(QT0D!"$```"+0"R)!"3H_/__ -M_V:#KI0````!QP0DT`<``.C\____BT0D((D$).C\____BT9@A<!T"8"^EP`` -M``!UKF:#OI0`````=`J+5"0D@'H4`'0>C40D.(E$)`2+1"0@B00DZ/S___^[ -M_____^D^`@``BU0D)(E4)`2+1"0@B00DZ/S___^+5"0@B10DZ/S___^)1"0D -MA<!U(8U$)#B)1"0$BT0D((D$).C\____N______I&`(``(UV`(M4)"2#PCR) -M5"0HBTPD'(/!!(M4)!P/MD(##[8$`8A"!,9!`0K&00(`N`````"+5"0<Q@00 -M`(/``8/X!'7PB>B$P'4&@&$#_.M-B>@/MM!ITF#J``"X'X7K4??JP?H%@$D# -M`XG5P>T8B>B(002)T\'K$(A9!8G0P>@(B40D&(A!!HA1!XGHB$$(B%D)#[9$ -M)!B(00J(40N+1"0XBU0D)(E"4,9")!4/M@'`^`?WT(/`$8A")<9")@#&0B<` -MQD(H$,9"*0"`(3_&0A2`#[=''&:)0A")<AB+1"0XBT`(B4(TQT(@$````(M& -M8`6X````B4(XQD(<(,=";+"'`P#'1"0$`````(M$)"B)!"3H_/___XM4)"2+ -M0B")1"0,BT0D.(M0$(M`#(E$)`2)5"0(BT0D*(D$).C\____BU0D)(E4)`2+ -M1"0@B00DZ/S____&AI<````!9L>&E````/H`A?9T68M&8(7`=%QF@;Z4```` -ME@!U%XE$)`C'1"0$(0```(M`+(D$).C\____9H.NE`````''!"30!P``Z/S_ -M__^+5"0@B10DZ/S___^+1F"%P'0)@+Z7`````'6N9H.^E`````!T#[L````` -MBT0D)(!X%`!T!;O_____C40D.(E$)`2+5"0@B10DZ/S____K!I"[_____XM$ -M)"2)1"0$BU0D((D4).C\____ZPJ0C70F`+O_____B=B+7"0\BW0D0(M\)$2+ -M;"1(@\1,PY"-="8`@^Q,B5PD/(ET)$")?"1$B6PD2(M\)%"+7"14BW0D6`^W -M1"1<9HE$)!X/ME0D9(A4)!V+;V"%[0^$Z0,``("_EP`````/A=P#``"+32R) -M3"0XBT=LB40D)&;'AY0````0)XD$).C\____B40D-(7`#X2Q`P``#[=4)!Z) -M5"0@9H-\)!X$=A*)5"0$QP0D>@(``.C\____ZQ2+3"0DB0PDZ/S___^)1"0H -MA<!U'HM$)#2)1"0$BU0D)(D4).C\____N______I=@,``(M,)"#!X0F)3"0P -MBU0D)(N"2`4``,9`)P&)?"0(BX)(!0``B40D!,<$)`4```#H_/___X!-*`*+ -M1V")1"0(QT0D!"$```"+3"0XB0PDZ/S___^+1"0T@\`\B40D+(!\)!T`=!&+ -M5"0TQT)D"@```,9")"CK+HM,)#3'0602````QD$D*HM4)"B+0@B+3"0PB4PD -M"(M4)&")5"0$B00DZ/S___^+1V#V0#@!='F`?"0=`1G`@^`"@^AXBTPD-(A! -M),9!)0")\,'H&(A!)HGPP>@0B$$GB?#!Z`B(02B)\HA1*8G8#ZSP&(A!*HG8 -M#ZSP$(A!*XG8#ZSP"(A!+(A9+<9!+@#&02\`#[=$)!YFP>@(B$$P#[9$)!Z( -M03'&03(`QD$S`.M6@'PD'0$9P(/@`H/`*(M4)#2(0B3&0B4`B=@/K/`8BTPD -M-(A!)HG8#ZSP$(A!)XG8#ZSP"(A!*(A9*<9!*@`/MT0D'F;!Z`B(02L/MD0D -M'HA!+,9!+0"+5"0TB10DZ/S___^+1V`/MT`<BTPD-&:)01#&012`B7D8BU0D -M*(M""(E!-(M$)#")02")45#&01P@BT=@!;@```")03C'06RPAP,`QT0D!``` -M``"+5"0LB10DZ/S___^+3"0TBT$@B40D#(M,)"B+00R+41")1"0$B50D"(M$ -M)"R)!"3H_/___\:'EP````&+5"0TB50D!(M,)"2)#"3H_/___X7_#X2O```` -MBT=@A<`/A*0```"`OY<`````#X0D`0``9H&_E````)8`=1>)1"0(QT0D!"$` -M``"+0"R)!"3H_/___V:#KY0````!QP0DT`<``.C\____BT0D)(D$).C\____ -MBT=@A<!T3H"_EP`````/A,X```"0ZZ>+5"0T@'H4`'4TNP````"`?"0=`'0M -MBTPD*(M!"(M4)#")5"0(B40D!(M,)&")#"3H_/___[L`````ZP>)]KO_____ -MBT0D-(-X4`!T-8%X(``(``!W%8/`4(E$)`2+5"0DB10DZ/S____K%XM$)#2# -MP%")1"0$BTPD)(D,).C\____BT0D-(E$)`2+5"0DB10DZ/S___^+3"0DBX%( -M!0``QD`G`(E\)`B+@4@%``")1"0$QP0D!@```.C\____@&4H_>L:N______K -M$V:#OY0`````#X4G____Z6#___^)V(M<)#R+="1`BWPD1(ML)$B#Q$S#C78` -MC;PG`````(/L'(E<)!")="04B7PD&(M4)""+7"0DBT(LBSB+<T@/MD,4/"!T -M/SP@=PJ$P'0C/`9W%NLM/")T+3PBD(UT)@!R((/`@#P!=AFX`````(GVZUJ+ -M0B#'0`0`````QD9F`>L$QD9F#8-[4`!T*8%[(``(``!W$8U#4(E$)`2)/"3H -M_/___^L/C4-0B40D!(D\).C\____B5PD!(D\).C\____B30D_U9PN`$```"+ -M7"00BW0D%(M\)!B#Q!S#C70F`(/L'(E<)!")="04B7PD&(MT)""+7F"%VW46 -MBT0D*(D$)/]4)"3I5@$``(VV`````(-^=`!U#(-^<`"-M@````!T$XM$)"B) -M!"3_5"0DC78`Z2L!``"`N[0`````#X41`0``@'LF_P^%!P$``(M#-(7`=`J` -M>#4`#X7V````BT,L]D`($`^%Z0```(LX@'M/`'04B5PD",=$)`0&````B00D -MZ/S___^+1"0DB49TBT0D*(E&>`^V2R0/MM&)T(/@!H/X!G4T]L(!#X2&```` -MQD,F!<9#)P2)7"0,#[9#38E$)`B+0S")1"0$BT,LB00DZ/S____IAP```(/X -M!`^%?@```/;!`71YBU,TA=)T,`^W0C*H`G1J@^#]9HE",HM#-&;'0#(!`(M# -M-,9`)AV+0S2)1"0$B3PDZ/S____K0L9#)@/&0R<$B5PD!(D\).C\____ZRS& -M0R8%QD,G!F;'@Y0``````(E<)`2)/"3H_/___^L-BT0D*(D$)/]4)"2)]HM< -M)!"+="04BWPD&(/$',-3@^P(BUPD$(7;#X2X````BT-LB00DZ/S___^)PH7` -M#X1[````@+BE`````'1R@`L!#[:`I0```#P"=3B#>V@`=1D/MH.8````@^`# -MB$,"#[:"I````(A#`>MM#[:#F0```(A#`HM#:`^V@*0```"(0P'K5#P#=5`/ -MMH.8````@^`#P>`"`H.9````B$,"BT-H#[:`I````(A#`>LKC78`BT-HA<!U -M"XM#9(7`=1")]NL6#[:`I````(A#`>L*#[:`D@```(A#`8/$"%O#C78`5E.# -M[`2+="00A?9T:KL`````#[:$,[P$```\_W0W#[;`:<`D`0``B<(#EGP%``!T -M)(M")"4`__\`/0``_P!U%?9")P1T#XM"((7`=`B)!"3H_/___X/#`8'[@``` -M`'6RBX9(!0``.?!U#07$#```B00DZ/S___^#Q`1;7L.-=@!64X/L%(M<)""- -ML\0,``")'"3H_/___XE#%(E&%(F;2`4``(F>2`4``(N#5`4``(F&5`4``,:# -MN@P```'&AKH,```!B1PDZ/S___^)'"3H_/___XDT).C\____B1PDZ/S___^$ -MP'1^B30DZ/S___^$P'1RB1PDZ/S____'!"30!P``Z/S___^)'"3H_/___\># -M-`$``.@#``#'@SP!````````B9M``0``C8,T`0``B40D!(M#%(D$).C\____ -MQT0D!`````")'"3H_/___\=$)`0`````B30DZ/S___^X`0```.L%N`````"# -MQ!1;7L-3@^P(BUPD$(D<).C\____@</$#```B1PDZ/S___^X`0```(/$"%O# -MD(VT)@````!55U93@^P\@SWD`0````^%@0$``,<%Y`$```$```#'1"0X```` -M`.F\`@``D(UT)@`/MX8>`@``P>`0#[>6'`(```G0.40D*`^%$P$``+\````` -MN0````")?"0P9H.Y``````!U>XGZP>(%BX8<`@``B8(`````BX8@`@``B8($ -M````BX8D`@``B8((````#[:"'````(T,_0````"-!`$/MEPD+X@<A0T````/ -MMH(<````C00!#[9<)"Z('(4.````#[:"'`````'!Q@2-#P````"`@AP````! -MZWF0C70F``^VF1P```")V+H`````][8P`@``A=)T38M,)##!X0.-!!D/ME0D -M+X@4A0T```"+5"0PP>(%#[:"'````(T$`0^V7"0NB!R%#@````^V@AP````! -MP<8$C0\`````@((<`````>L/@\<!@\$@@_\$#X4#____@X8H`@```9"-="8` -M@\4!@\88.RT`&```#X6^_O__@T0D-`&#?"0T(`^%&`$``(-$)#@!@7PD./\` -M```/A5(!``"#?"14`'0'BW0D5,8&`(L=`!@``,=$)"0`````A=M^.;D````` -MQT0D)`````"Z`````(N"*`(```%$)"2#?"14`'0,BX(L`@``BW0D5``&@\$! -M@\(8.=EUV8-\)%@`#X0!`0``O0````"[`````&:#NP``````#X3I````#[:# -M'````(E$)""%P'YJQT0D&`````"-%.T`````B50D'(M$)!P#1"08C32%#``` -M`(M\)%BX!````/R)P?.F#Y?"#Y+`.,)U(8-\)%0`=`T/MH,=````BW0D5(@& -M#[:#'````(E$)"3K#X-$)!@!BU0D(#E4)!AUJ8/%`8/#((/]!'1EZ6G___\/ -MMDPD-(A,)"['1"0,`````,=$)`@`````BUPD-(E<)`2+="0XB30DZ/S___^) -M1"0HO0````"^`````(,]`!@````/CT[]___IB_[__P^V1"0XB$0D+\=$)#0` -M````ZZ`/MD0D)(/$/%M>7UW#B?:-O"<`````@^P<B5PD$(ET)!2)?"08BT0D -M(`^V="0DBWALBUA@]@`!='6+4S"%TG09B?$/ML&)1"0(#[9#38E$)`2)%"3H -M_/___XN3Y````(72=!R)\0^VP8E$)`@/MH/9````B40D!(D4).C\____B3PD -MZ/S___^%P'0[@+BE`````'0RB?(/ML*)1"0(BT,@B40D!(D\).C\____ZQB) -M\0^VP8E$)`B+0R")1"0$B3PDZ/S___^+7"00BW0D%(M\)!B#Q!S#@^P<B5PD -M#(ET)!")?"04B6PD&(MT)""+5"0D@#H)=Q`/M@+_)(7`%0``C;8`````N/__ -M___I2@$``(M2!(N"3`4``(7`=0F)T(VT)@````"+@$@%``#&@+L,```!B00D -MZ/S___^X`````.D5`0``#[9*!+H`````B?#H<>K__^D``0``#[9*!+H!```` -MB?#H7.K__^GK````#[9"!(E$)`2)-"3H_/___^G6````#[9J!(M^;(M>8+C_ -M____]D98"`^$O0```(ET)`B+AT@%``")1"0$QP0D!0```.C\____@$LH`HE< -M)`C'1"0$(0```(M#+(D$).C\____@'M/`'0:QP0DT`<``.C\____B3PDZ/S_ -M__^`>T\`=>:)Z(3`=`QF@TY:$&:#2SH0ZPIF@V9:[V:#8SKOB70D"(N'2`4` -M`(E$)`3'!"0&````Z/S___^`8RC]N`````#K)P^V0@2)1"0$B30DZ/S____K -M%0^V0@2)1"0$B30DZ/S___^X`````(M<)`R+="00BWPD%(ML)!B#Q!S#D(VT -M)@````"#[$R)7"1`B70D1(E\)$B+?"10BW=LBX9(!0``@'@G``^%N@```(M? -M<(M78`^V@J<```")1"0T#[:"I@```(E$)#`/MH*E````B40D+`^V@J0```") -M1"0H#[:"HP```(E$)"0/MH*B````B40D(`^V@J$```")1"0<#[:"H````(E$ -M)!@/MH+;````B40D%`^V!X/@`0^VP(E$)!`/MD<"B40D#`^V1P&)1"0(BT<( -MB40D!,<$)(0$``#H_/___\='<`````"+1PB)1"0(B7PD!(M'>(D$)/_3ZSV0 -MC70F`(U??(E<)`2+1A2)!"3H_/___\='?/0!``#'AX0```!@K`,`B;^(```` -MB5PD!(M&%(D$).C\____BUPD0(MT)$2+?"1(@\1,PY"-M"8`````55=64X/L -M'`^W1"0X:<`D`0``B<6+5"0P`ZI\!0``B[I(!0``@<?$#```BTPD-(EI8(E- -M((-],`!U+8-]-`!U)P^V<BN)\X3;#X0@!```BUTLN0`````[FJ`+```/A-T# -M``#I^0,``(M$)#2`"`&+132+5"0TB4)HBT4PB4)DBTPD,`^V<2N)\X3;=%.+ -M72RY`````(M$)#`[F*`+``!T&NLO#[;!B<+!X@:-!(*+5"0P.9P"H`L``'4< -MBUPD,`^V0RF-!(&+5"0TB(*8````ZPZY`````(/!`8GP.,%UPXM4)#"+BD@% -M```/MH$\!0``NP`````\_W0DBU4PA=)T&`^VP&G`%`T```.!M`4``+L````` -M.<)T*KL!````#[:!/04``#S_="N+53"%TG0A#[;`:<`4#0```X&T!0``.<)U -M#HM,)#2(60'IW@```(GV@\,!N@`````/MH0*/@4``#S_=",/ML!IP+`````# -M@9@%```[131U#(M\)#2(7P'IJ````(/#`8/"`8/Z!'7)B=D/MH<\!0``//]T -M)(M5,(72=06-60'K&`^VP&G`%`T```.'M`4``#G"=>CK*(UV``^VAST%```\ -M_W0HBU4PA=)T'@^VP&G`%`T```.'M`4``#G"=0N+1"0TB%@!ZSZ)]H/#`;H` -M````#[:$.CX%```\_W0@#[;`:<"P`````X>8!0``.T4T=0F+5"0TB%H!ZPN# -MPP&#P@&#^@1US(M,)#"`>3D!=4B+53"%TG08QT0D"``````/MD5-B40D!(D4 -M).C\____BY7D````A=(/A+<!``#'1"0(``````^VA=D```")1"0$B10DZ/S_ -M__^#O>0`````#X2/`0``BW4P@'XP`'16OP````"-7BB-="8`B5PD&(D<).C\ -M____C4CXBU8LB48LB5D(B5$,B0*`N=L```#_=0^`>24`=0F#N>0`````=0J# -MQP&)^#A&,'?!B?HX5C`/A90````/MH7;````BTPD-(A!`H!^,``/A(X!``"[ -M`````(U^*(VV`````(D\).C\____C4CXBU8LB48LB7D(B5$,B0*+02"%P'1` -M#[:1VP```#A0`G0T@WAP`'4N@WAT`'4HB%`"#[=!'(E$)`B+5"0PBX)(!0`` -MB40D!,<$)`<```#H_/___XUV`(/#`3A>,`^&%`$``.N2#[9%38M,)#2(00+& -MA=L```#_@'XP``^$]@```+L`````D(M\)!B)/"3H_/___XU(^(M6+(E&+(EY -M"(E1#(D"@+G;````_W1*QH';````_XM!((7`=#P/ME%-.%`"=#.#>'``=2V# -M>'0`=2>(4`(/MT$<B40D"(M4)#"+@D@%``")1"0$QP0D!P```.C\____B?:# -MPP$X7C!V>.N&#[9%38M,)#2(00+K:0^VP8G"P>(&C02"BWPD,#F<!Z`+``!U -M)HM4)#`/MD(IC02!BUPD-(A#`8B#F````#A**W4:ZQ")]KD`````@\$!B?`X -MP76YBU0D-,9"`?^+3"0TQD$"`(.]'`$```!T"8N%(`$``(A!`HM,)#2#P2"- -M562+162+7"0TB4,@BT($B4$$BT((B4$(BT(,B4$,BT(0B4$0BT(4B4$4BT(8 -MB4$8BT(<B4$<BT(@B4$@BT(DB4$DB=F#P0R-55"+15")0PR+0@2)002+0@B) -M00B+0@R)00R+0A")01"+A8P```")0TB+A9````")0TP/MT4X9HE#6`^W13IF -MB4-:BT5$BU5(B4-0B5-4#[9%3HA#7/9%*`1U#(M\)#")/"3H_/___P^V522) -MT(/@!H/X!G4.]L(!=0F+1"0T@`@"ZP>+5"0T@"+]#[95*-#J@^($BTPD-`^V -M`8/@^PG0B`$/MD$!B(&:````#[9!`HB!F0```(D,).C\____QT0D"`````"+ -M12")1"0$BUPD,(D<).C\____BWPD-(D\).@,^?__@\0<6UY?7<.-="8`@^P< -MB5PD%(ET)!B+="0@BYY(!0``B30DZ/S___^`?CD!=0F`N_T,```!=#Z-GC0! -M``")7"0$BT84B00DZ/S____'AC0!``#H`P``QX8\`0```````(FV0`$``(E< -M)`2+1A2)!"3H_/___XM<)!2+="08@\0<PXUV`(V\)P````!55U93@^Q,BT0D -M9(M0&(E4)""+0!R)1"08#[9*"XE,)!R+5"1@BX)(!0``BYA(!0``O@````"_ -M`````+D`````#[:4&3P%``"`^O]T1HV!@````&8]@0!W!X/&`>LUB?8/ML*+ -MDY@%``!IP+````"`O!"E`````W47@\<!C4<#@_@&=@^#Q@&_`````.L%B?:# -MQ@&#P0&#^09UI8GUBYM(!0``@</$#```L0"0C70F``^VE!D\!0``@/K_=$:- -M@8````!F/8$`=P>#Q@'K-8GV#[;"BY.8!0``:<"P````@+P0I0````-U%X/' -M`8U'`X/X!G8/@\8!OP````#K!8GV@\8!@\$!@_D&=:4Y="0<#XT\"0``.VPD -M'`^>P(M,)&C'`0`````\_P^$'`D```^VP&G`Q`P``(M4)&`#@D@%``")!"3H -M_/___XG!A<`/A/<(``"+1"08B40D)`^V@:4````\`@^%!`(``(M4)&C'`@0` -M``"+1"0@#[9P!XL1#[=!)+L`````@+P"O`0``/\/A-$!``")\H#Z(P^'MP$` -M``^VPO\DA>@5``"+3"0DQP%%4P,1N`$```#II0$``(U$)$B)1"0,QT0D"!`# -M``#'1"0$`0```(D,).C\____A,`/A'$!``"+1"1(A<`/A&P!```E_P,``&G` -M$"<``(V($):O_[ISB*M,B<CWXHG(*=#1Z`'"P>H'BTPD)(D1N`$```#I/`$` -M`(U$)$B)1"0,QT0D"`@#``#'1"0$`0```(D,).C\____A,`/A`@!``"+1"1( -MA<`/A`,!```E_P,``&G`Z`,``(V(R.7W_[K+:RBOB<CWXHG(*=#1Z`'"P>H$ -MBTPD)(D1N`$```#ITP```(U$)$B)1"0,QT0D"`@#``#'1"0$`0```(D,).C\ -M____A,`/A)\```"+1"1(A<`/A)H```#!Z!`E_P,``&G`Z`,``(V(R.7W_[K+ -M:RBOB<CWXHG(*=#1Z`'"P>H$BTPD)(D1N`$```#K:HU$)$B)1"0,QT0D"`P# -M``#'1"0$`0```(D,).C\____A,!T.HM$)$B%P'0Y)?\#``!IP.@#``"-B,CE -M]_^ZRVLHKXG(]^*)R"G0T>@!PL'J!(M,)"2)$;@!````ZPRX`````.L%N`$` -M```/MM@/ML/I\@8``#P##X74!@``BT0D:,<`!````(M4)"`/ME('B%0D*\=$ -M)#@`````QT0D/`````#'1"1``````,=$)$0`````BQ$/MJKE````A>T/CH\` -M``"_`````,=$)!0`````N`$```")QHGYT^:+3"04#[:$$3X%```\_W0?#[;` -M:<"P````B<,#FI@%``"+0U2+0!@/MD`A.?!T$H-$)!0!@WPD%`0/A"P&``#K -MOX7;#X0B!@``#[=#)("\`KP$``#_#X00!@``@+NE`````P^%`P8``(E<O#B# -MQP$Y_0^%=O___X!\)"M5#X?;!0``#[9$)"O_)(5X%@``BT0D),<`0`,#$;@! -M````Z<`%``"-1"1(B40D#,=$)`@T`P``QT0D!`$````/MD0D*X/``8/@`XM$ -MA#B)!"3H_/___X3`#X2$!0``#[=4)$B)5"1(@?K__P``=12+5"0DQP+_____ -MN`$```#I9`4``+C`X>0`B=&Z`````/?QBU0D)(D"N`$```#I1@4``(U$)$B) -M1"0,QT0D"!`#``#'1"0$`0```(M$)#R)!"3H_/___X3`#X05!0``BT0D2"7_ -M`P``:<`0)P``C8@0EJ__NG.(JTR)R/?BB<@IT-'H`<+!Z@>+3"0DB1&X`0`` -M`.GA!```C40D2(E$)`S'1"0("`,``,=$)`0!````BT0D/(D$).C\____A,`/ -MA+`$``"+1"1()?\#``!IP.@#``"-B,CE]_^ZRVLHKXG(]^*)R"G0T>@!PL'J -M!(M,)"2)$;@!````Z7P$``"-1"1(B40D#,=$)`@(`P``QT0D!`$```"+1"0\ -MB00DZ/S___^$P`^$2P0```^W1"1*)?\#``!IP.@#``"-B,CE]_^ZRVLHKXG( -M]^*)R"G0T>@!PL'J!(M,)"2)$;@!````Z18$``"-1"1(B40D#,=$)`@,`P`` -MQT0D!`$```"+1"0\B00DZ/S___^$P`^$Y0,``(M$)$@E_P,``&G`Z`,``(V( -MR.7W_[K+:RBOB<CWXHG(*=#1Z`'"P>H$BTPD)(D1N`$```#IL0,``(U$)$B) -M1"0,QT0D"!0#``#'1"0$`0```(M$)#B)!"3H_/___X3`#X2``P``BT0D2"7_ -M`P``N@````!IVCJX`0"Y.K@!`/?AC103!>-*`P"#T@#'1"0(H(8!`,=$)`P` -M````B00DB50D!.C\____BTPD)(D!N`$```#I,P,``(U$)$B)1"0,QT0D"!0# -M``#'1"0$`0```(M$)#R)!"3H_/___X3`#X0"`P``BT0D2"7_`P``N@````!I -MVCJX`0"Y.K@!`/?AC103!>-*`P"#T@#'1"0(4,,``,=$)`P`````B00DB50D -M!.C\____BTPD)(D!N`$```#IM0(``(U$)$B)1"0,QT0D"!0#``#'1"0$`0`` -M`(M$)$")!"3H_/___X3`#X2$`@``BT0D2"7_`P``N@````!IVN830`*YYA-` -M`O?AC103!0W_3@2#T@#'1"0(@):8`,=$)`P`````B00DB50D!.C\____BTPD -M)(D!N`$```#I-P(``(U$)$B)1"0,QT0D"!0#``#'1"0$`0```(M$)$2)!"3H -M_/___X3`#X0&`@``BT0D2"7_`P``N@````!IVJY%X0"YKD7A`/?AC103!2E2 -MKP&#T@#'1"0(0$(/`,=$)`P`````B00DB50D!.C\____BTPD)(D!N`$```#I -MN0$``(U$)$B)1"0,QT0D"+`#``#'1"0$`0```(M$)#R)!"3H_/___X3`#X2( -M`0``BT0D2,'H#X/@`8M4)"2)`K@!````Z7,!``"+3"0@@'D(`'00BT0D/(&@ -MJ````/_W___K#HM$)#R!B*@`````"```BT0D/(D$).C\____N`$```#I-0$` -M`(M$)""`>`@`=!"+1"0\@:"H````_^___^L.BT0D/(&(J``````0``"+1"0\ -MB00DZ/S___^X`0```.GW````BU0D((!Z"`!T$(M$)#R!H*@```#_W___ZPZ+ -M1"0\@8BH`````"```(M$)#R)!"3H_/___[@!````Z;D```"+3"0@@'D(`'00 -MBT0D/(&@J````/^____K#HM$)#R!B*@`````0```BT0D/(D$).C\____N`$` -M``#I>P```(M$)""`>`@`=!"+1"0\@:"H````___^_^L.BT0D/(&(J``````` -M`0"+1"0\B00DZ/S___^X`0```.M`BU0D((!Z"`!T$(M$)#R!H*@```#___W_ -MZPZ+1"0\@8BH```````"`(M$)#R)!"3H_/___[@!````ZP6X``````^VP.L) -MC70F`+@`````#[;`ZQ:X`````.L/BTPD:,<!`````+@`````@\1,6UY?7<.0 -MC;0F`````%575E.#[&R+O"2`````BX0DA````(NT)(P```")Q<'M&(G"P>H0 -MB%0D0`^VS(A,)#"(1"0OBYPDB````('#Q`P``+@`````BY0DB````,8$$`"# -MP`$]B!D``'7KB7(0H>`!``"(0BB#P`&CX`$``(GIB$HC#[9$)$"(0B(/MDPD -M,(A*(0^V1"0OB$(@QD(I``^W!V:)0A@/MT<"9HE"&HM'!(E"'(ES$`^V0BB( -M0RB)ZHA3(P^V3"1`B$LB#[9$)#"(0R$/ME0D+XA3(,9#*0$/MP=FB4,8#[=' -M`F:)0QJ+1P2)0QR+C"2(````#[=!&F8])"</A",!``!F/20G#X>,````9CU$ -M(0^$#P$``&8]1"%W3&8]("$/A/\```!F/2`A=Q%F/5`'#X4*`0``B?;IZ``` -M`&8](B&-M"8`````#X37````9CU`(8VV``````^%X@```.G"````D(UT)@!F -M/1`G#X+.````9CT1)XGV#X:G````9BT@)V:#^`*)]@^'L@```.F2````D(UT -M)@!F/8`G#X2#````9CV`)XGV=S)F/4`G='5F/4`GC70F`'<09CTP)P^%?``` -M`(UT)@#K6V8]1"=T568]8">-="8`=6;K268]@')T0V8]@'*)]G<(9CV")W50 -MZS-F/8"1B?9T#F8]@)1U0.LCC;8`````BX0DB````&;'0"2`D<9`)@1FQT,D -M@)'&0R8$ZQN+E"2(````9L=")("4QD(F!&;'0R2`E,9#)@0/MD<(BXPDB``` -M`(A!*@^V1PB(0RK'1"0,```$`,=$)`@`````QT0D!`(```")-"3H_/___XN4 -M)(@```")`L=$)`P`(```QT0D"`````#'1"0$`````(DT).C\____B<&+M"2( -M````B48(BP:%P`^$XP$``(7)#X3;`0``C9```@$`B58$C8````(`B08%`$`` -M`(D#B5,$B4L(BS4`&```A?9^7[L`````N0`````/MX$<`@``9CL'=3\/MX$> -M`@``9CM'`G4RBY$L`@``@\(!B9$L`@``BX$H`@``B40D&(7`=!4YPG81B="Z -M`````/=T)!B)D2P"``"#PP&#P1@Y\W6KBY0DB````(M"!"W@?0``QP`!\`,` -MBT($+=A]``#'``$``.B+0A#'1"0$>````(D$).C\____B<(E`'```#T`(``` -M=B$/ML*+C"2(````BU$0QT0D"'@```")1"0$B10DZ/S___^)Z(A$)%\/ME0D -M0(A4)%X/MDPD,(A,)%T/MD0D+XA$)%S'1"0H`````+T`````9H.]```````/ -MA)L```"`O1P`````='^[`````(M4)"C!X@.)5"0DC4PD7(E,)!R-=@"+1"0D -M`=B--(4,````N00```#\BWPD'/.F#Y?"#Y+`.,)U,P^VA1T```"#P`&(A1T` -M```/MI4<````A-)T&#C0=A0/ML`/MLJZ`````&;W\8B5'0```(/#`0^VA1P` -M```YV'^<@T0D*`&#Q2"#?"0H!`^%5____XNT)(@```#'AE0%```!````N`$` -M``#K!;@`````@\1L6UY?7<.-="8`55=64X/L#(MT)""+?"0DBVYL#[8&@^`! -MB$0D"[@`````Q@0X`(/``8/X('7TBYU(!@``B=JP`,8$$`"#P`$]``(``'7R -MC4LVN@````"-=@`/MD0R(8@$"@^V1#(@B$0*`8/"`H/Z*'7GC4L4L@(/MD0R -M"XA$"OX/MD0R"HA$"O^#P@*#^A9UYHU++K(`#[9$,DF(!`H/MD0R2(A$"@&# -MP@*#^@AUYXE?&(M&4(M65(/``8/2`(D'B5<$@WY@`'4\]@8!=#>+1F2%[0^5 -MPH7`=!*$TG0.#[9`,X"\!;P$``#_=1F+1FB$TG0;A<!T%P^W0"2`O`6\!``` -M_W0)#[9&`8A'#.LBB2PDZ/S___^%P'02@+BE`````G4)#[9&`8A'#.L$QD<, -M_P^V1@*(1PT/MD9<B$<.QD<2$,9'$1`/MD0D"XT4``^V7PJ#X_T)TXA?"L'@ -M!0^V3PB#X=\)P8A/"`^W1EC!Z`>#X`'!X`:#X;\)P8A/"`^W1EC!Z`*#X`$/ -MME<)@^+^"<*(5PD/MT9:P>@#P>`'@^%_"<&(3P@/MT9:T>B#X`$!P(/B_0G" -MB%<)#[=&6,'H`X/@`<'@!H/BOPG"B%<)#[=&6L'H!,'@!X/B?PG"B%<)@\D0 -MB$\(#[8&T.B#X`&#X_X)PXA?"@^V!H/@!(/C^PG#B%\*9L='%``0#[:&F``` -M`(A''(/$#%M>7UW#C;8`````C;PG`````%575E.#[`B+7"0HBW0D+(7;=!.X -M`````,8$&`"#P`$]K````'7RA?9T$K@`````D,8$,`"#P`&#^"AU](M$)!R+ -MN$@%```/MD0D((E$)`2)/"3H_/___XG!9H7`=`T/M\"`O`>\!```_W5+B[]( -M!0``@<?$#```BX=(!0``B00DZ/S___\I1"0@#[9$)"")1"0$B3PDZ/S___^) -MP6:%P`^$*0,```^WP("\![P$``#_#X08`P``#[?!#[:$![P$``!F@?F!``^' -M-P(``(N/M`4```^WP&G`%`T``(TL`87;#X36````BU4,A=)T;`^VASP%```\ -M_W05#[;`:<`4#0``C00!OH`````YPG0@#[:'/04``#S_=!H/ML!IP!0-``"- -M!`$YPG4*OH$```")\(A#`H!],@!T+[H`````#[;"#[9,!4"X`0```-/@"4,@ -M@\(!.%4R=A#KY,9#`O^+10@/MD`)B4,@Q@,!#[9%,8A#`8M%2(E#!(M%3(E# -M"(U+#(U56(M%6(E##(M"!(E!!(M""(E!"(M"#(E!#(M%<(E#'(M4)"")4R0/ -MMH60````B4,HN`````#I%P(``(7V#X0*`@``@WPD)``/B/\!```/MH60```` -M.40D)`^-[@$``(M$)"2-%("-5-4`C8*0````#[9(!(@.#[9`!8A&`8N"F``` -M``^V`(/@#XA&`H#Y`W0B@/D#=PZ`^0(/A8X```#ID````(#Y!'0U@/D2C78` -M=7SK58M4)"2-!)*+E,68````#[9"`8/@!P^VP,'@"`^V4@(!T(T$@`'`B48$ -MZU:+5"0DC022BX3%F`````^V0`*$P'4)QT8$`````.LW#[;`@^@4B48$ZRR+ -M5"0DC022BY3%F`````^V0@+!X`@/ME(#`="-!(`!P(E&!.L'QT8$`````(U. -M"(M4)"2-!)*-A,60````C5`,BT`,B48(BT($B4$$BT((B4$(BT(,B4$,BT(0 -MB4$0BT(4B4$4BT(8B4$8BT(<B4$<N`````#IT`````^WT&G2L````(G6`[>8 -M!0``QD,"_\8#`HN'F`4```^V1`(?B$,!BT94#[9`"8E#(`^VAJ4````\`G4M -MQT,$2%!4`(U##,=##%)O8VO'0`1E=%-TQT`(;W(@``^W5B*-0Q?H]\#__^M% -M/`-U(<9#`1#'0R`!````QT,$2%!4`,=##$5*,S1FQT,0,`#K(,9#!'8/MU8@ -MC4,%Z,#`___&0PQD#[=6(HU##>BPP/__QD,<<@^V5AV-0QWH8,#__XM$)"") -M0R2X`````.L%N/____^#Q`A;7E]=PY"-="8`55=64X/L#(MT)"BX`````,8$ -M,`"#P`$]*`T``'7RBT0D((N82`4```^V1"0DB40D!(D<).C\____B<%FA<!T -M#0^WP("\`[P$``#_=4N+FT@%``"!P\0,``"+@T@%``")!"3H_/___RE$)"0/ -MMD0D)(E$)`2)'"3H_/___XG!9H7`#X1'`P``#[?`@+P#O`0``/\/A#8#```/ -MM\$/MH0#O`0``&:!^8$`#X=5`@``BXNT!0``#[?`:<`4#0``C2P!BU4,A=)T -M;`^V@SP%```\_W05#[;`:<`4#0``C00!OX`````YPG0@#[:#/04``#S_=!H/ -MML!IP!0-``"-!`$YPG4*OX$```")^(A&`H!],@!T+[H`````#[;"#[9,!4"X -M`0```-/@"48@@\(!.%4R=A#KY,9&`O^+10@/MD`)B48@Q@8!#[9%,8A&`8M% -M2(E&!(M%3(E&"(U.#(U56(M%6(E&#(M"!(E!!(M""(E!"(M"#(E!#(M%<(E& -M'(M$)"2)1B2`O9``````#X1&`@``QD0D"P`/MGPD"XT$O\'@`XT,,`'HC9"0 -M````#[9:!(B9J`````^V4@6(D:D```"+@)@````/M@"#X`^(@:H```"`^P-T -M+8#[`W<.@/L"#X6M````Z;8```"`^P20C70F`'0^@/L2#X65````D(UT)@#K -M9HT,O\'A`XN4#9@````/MD(!@^`'#[;`P>`(#[92`@'0C02``<")A`ZL```` -MZVZ-!+^-%,4`````BX05F`````^V0`*$P'4-QX06K`````````#K2(T4OP^V -MP(/H%(F$UJP```#K-HT,O\'A`XN4#9@````/MD("P>`(#[92`P'0C02``<") -MA`ZL````ZPZ-!+_'A,:L`````````(T$O\'@`XV<!J````"-2Q"-A`60```` -MC5`,BT`,B4,0BT($B4$$BT((B4$(BT(,B4$,BT(0B4$0BT(4B4$4BT(8B4$8 -MBT(<B4$<@$0D"P$/MD0D"SB%D`````^&UP```.F1_O__#[?0:=*P````B=<# -MNY@%``#&1@+_Q@8"BX.8!0``#[9$`A^(1@&+1U0/MD`)B48@#[:'I0```#P" -M=2W'1@1(4%0`C48,QT8,4F]C:\=`!&5T4W3'0`AO<B``#[=7(HU&%^@7O?__ -MZT4\`W4AQD8!$,=&(`$```#'1@1(4%0`QT8,14HS-&;'1A`P`.L@QD8$=@^W -M5R"-1@7HX+S__\9&#&0/MU<BC48-Z-"\___&1AQR#[97'8U&'>B`O/__BT0D -M)(E&)+@`````ZPRX_____^L%N`````"#Q`Q;7E]=PXVT)@````"-O"<````` -M55=64X/L#(MT)"BX`````,8$,`"#P`$]I`P``'7RBT0D((N82`4```^V1"0D -MB40D!(D<).C\____B<%FA<!T#0^WP("\`[P$``#_=4N+FT@%``"!P\0,``"+ -M@T@%``")!"3H_/___XM4)"0IP@^VPHE$)`2)'"3H_/___XG!9H7`#X0>`P`` -M#[?`@+P#O`0``/\/A`T#```/M\$/MH0#O`0``&:!^8$`#X<S`@``BXNT!0`` -M#[?`:<`4#0``C2P!BU4,A=)T;`^V@SP%```\_W05#[;`:<`4#0``C00!OX`` -M```YPG0@#[:#/04``#S_=!H/ML!IP!0-``"-!`$YPG4*OX$```")^(A&`H!] -M,@!T+[H`````#[;"#[9,!4"X`0```-/@"48@@\(!.%4R=A#KY,9&`O^+10@/ -MMD`)B48@Q@8!#[9%,8A&`8M%2(E&!(M%3(E&"(U.#(U56(M%6(E&#(M"!(E! -M!(M""(E!"(M"#(E!#(M%<(E&'("]D``````/A"0"``#&1"0+``^V?"0+C02_ -MP>`#C0PP`>B-D)`````/MEH$B%DD#[92!8A1)8N`F`````^V`(/@#XA!)H#[ -M`W0M@/L#=PZ`^P(/A:$```#IIP```(#[!)"-="8`=#N`^Q(/A8D```"0C70F -M`.M=C0R_P>$#BY0-F`````^V0@&#X`</ML#!X`@/ME("`="-!(`!P(E$#BCK -M8HT$OXT4Q0````"+A!68````#[9``H3`=0K'1!8H`````.L_C12_#[;`@^@4 -MB436*.LPC0R_P>$#BY0-F`````^V0@+!X`@/ME(#`="-!(`!P(E$#BCK"XT$ -MO\=$QB@`````C02_P>`#C5P&((U+#(V$!9````"-4`R+0`R)0PR+0@2)002+ -M0@B)00B+0@R)00R+0A")01"+0A2)012+0AB)01B+0AR)01R`1"0+`0^V5"0+ -M.)60````#X;0````Z:S^__\/M]!ITK````")UP.[F`4``,9&`O_&!@*+@Y@% -M```/MD0"'XA&`8M'5`^V0`F)1B`/MH>E````/`)U+<=&!$A05`"-1@S'1@Q2 -M;V-KQT`$9713=,=`"&]R(``/MU<BC487Z$FY___K13P#=2'&1@$0QT8@`0`` -M`,=&!$A05`#'1@Q%2C,T9L=&$#``ZR#&1@1V#[=7((U&!>@2N?__QD8,9`^W -M5R*-1@WH`KG__\9&''(/ME<=C48=Z+*X__^X`````.L,N/_____K!;@````` -M@\0,6UY?7<.-M"8`````55=64X/L"(M<)"2X`````,8$&`"#P`$]``$``'7R -MBT0D'(NX2`4```^V1"0@B40D!(D\).C\____B<%FA<!T#0^WP("\![P$``#_ -M=4N+OT@%``"!Q\0,``"+AT@%``")!"3H_/___XM4)"`IP@^VPHE$)`2)/"3H -M_/___XG!9H7`#X3"`0``#[?`@+P'O`0``/\/A+$!```/M\$/MH0'O`0``&:! -M^8$`#X?7````BX^T!0``#[?`:<`4#0``C30!BU8,A=)T;`^VASP%```\_W05 -M#[;`:<`4#0``C00!O8`````YPG0@#[:'/04``#S_=!H/ML!IP!0-``"-!`$Y -MPG4*O8$```")Z(A#`H!^,@!T+[H`````#[;"#[9,!D"X`0```-/@"4,@@\(! -M.%8R=A#KY,9#`O^+1@@/MD`)B4,@Q@,!#[9&,8A#`8M&2(E#!(M&3(E#"(U+ -M#(U66(M&6(E##(M"!(E!!(M""(E!"(M"#(E!#(M&<(E#'+@`````Z<D````/ -MM]!ITK````")U@.WF`4``,9#`O_&`P*+AY@%```/MD0"'XA#`8M&5`^V0`F) -M0R`/MH:E````/`)U+<=#!$A05`"-0PS'0PQ2;V-KQT`$9713=,=`"&]R(``/ -MMU8BC4,7Z.6V___K13P#=2'&0P$0QT,@`0```,=#!$A05`#'0PQ%2C,T9L=# -M$#``ZR#&0P1V#[=6((U#!>BNMO__QD,,9`^W5B*-0PWHGK;__\9#''(/ME8= -MC4,=Z$ZV__^X`````.L%N/____^#Q`A;7E]=PXUV`(V\)P````"#["R)7"0< -MB70D((E\)"2);"0HBWPD,(ML)#2+1VR)1"04BT4DB3B+1V"%P'42QD5F`HDL -M)/]5<.FX!0``C78`]D`H`G02QD5F`HDL)(UV`/]5<.F=!0``BTPD%(D,).C\ -M____B<:%P'46QD5F`HDL)/]5<.E\!0``C;0F`````,=`9`````"):$B+1V") -M1AB+1V`/MT`<9HE&$,9&%(`/MD5D/`(/A%D!```\`G<)A,!T(NF[`@``/`.- -MM@`````/A,$!```\!`^%I0(``(GVZ8T!``"+1V#V0#@!C70F``^$D`````^V -M166H`G0&QD8DB.L0@^`$/`$9P(/@!8/H=HA&)(M-2(M=3`^W15!FB40D&L9& -M)0")V,'H&(A&)HG8P>@0B$8GB=C!Z`B(1BB(7BF)R`^LV!B(1BJ)R`^LV!"( -M1BN)R`^LV`B(1BR(3BW&1BX`QD8O``^W1"0:9L'H"(A&,`^V3"0:B$XQQD8R -M`,9&,P#K:P^V166H`G0&QD8D*.L0@^`$/`$9P(/@!8/`*HA&)(M-2(M=3`^W -M15!FB40D&L9&)0")R`^LV!B(1B:)R`^LV!"(1B>)R`^LV`B(1BB(3BG&1BH` -M#[=$)!IFP>@(B$8K#[9,)!J(3BS&1BT`BT=@!;@```")1CC&1AP@#[=$)!K! -MX`F)1B"#3F0"Z7P!```/MD5(/!!W!?8'`G4)QD5F!NFM`P``C4XD#[;`C550 -MB40D"(E4)`2)#"3H_/___XM'8`6X````B48XQD8<((%.9```$`#&1A6K]D5E -M!@^$*0$``(M%3(E&(.D>`0``#[9%98/@,#P@=1'&1B0;QD8E`<9&*`#I`@$` -M`,9&)#7I^0```(M'8`^V0"2#X`6#^`5U$X%.9```(``/MU549CM52G4.ZUS& -M168&C78`Z1(#```/MD53/..0C70F`'1#/.-W$CQ"=#L\L(UT)@!T(#Q`=2+K -M+3SLC;8`````=!`\[W0?/.5U#HVV`````.L39HE52NL-QD5F!HUT)@#IP@(` -M`,9&)+`/MT5(B$8E#[=%2HA&)@^W14R(1B</MT5.B$8H#[=%4(A&*0^V15*( -M1BH/MD53B$8K#[9%28A&+`^V14N(1BT/MD5-B$8N#[9%3XA&+P^V15&(1C#V -M164&=!T/MT54P>`)B48@@TYD!.L-QD5F!NE+`@``C70F`,=&;#"B`P`/MD5E -MJ`8/A!X"``"H`G0&@TYD".L$@TYD$(U^/(M=:(7;=`;V164!=3R+56R%T@^$ -M(P(``,=$)`@`````BTPD%(N!2`8``(E$)`2)+"3_TH7`#X0``@``BT0D%(N8 -M2`8``(7;=$B)-"3H_/___\=$)`0`````B3PDZ/S___^#PQ"+0_")1"0,BT/X -MBU/\B40D!(E4)`B)/"3H_/___XM#](/#$(7`#X6"`0``Z]/'1"0$`````(D\ -M).C\____BT8@/0`(``!W0XM,)!2)#"3H_/___XG"A<!U"<9%9@OI70$``(M` -M"(E&-(E64(M&((E$)`R+0@R+4A")1"0$B50D"(D\).C\____ZU,]```!`'=# -MBT0D%(D$).C\____B<*%P'4)QD5F"^D3`0``BT`(B48TB590BT8@B40D#(M" -M#(M2$(E$)`2)5"0(B3PDZ/S____K"<9%9@;IX@````^V166H!)"-="8`#X2_ -M````@'UD`W4BBTU8A<ET&XM6-(M&((E$)`B)3"0$B10DZ/S____IEP```(M5 -M:(72=0V+56R%T@^%N0```.MHBWXTJ`%U"8G3D(UT)@#K,(M5;(72="G'1"0( -M`0```(M,)!2+@4@&``")1"0$B2PD_]*%P'0*BT0D%(N82`8``(/#$(M#^(M3 -M\(E4)`B)1"0$B3PDZ/S___\#>_"+0_2#PQ"%P'4=Z]N+1B"+5C2%P'01Q@(` -M@\(!@^@!=`;K\X-.9`&)="0$BTPD%(D,).C\____ZRZ)="0$BT0D%(D$).C\ -M____B2PD_U5PZQ:[`````.E,_O__BWXTC70F`.E4____BUPD'(MT)""+?"0D -MBVPD*(/$+,.-M"8`````5U93@^P0BWPD((MT)"2X`````,8$,`"#P`&#^'AU -M](._5`4```$/E$83#[97(@^V3R$/ME\@#[9'(XA&`XA6`HA.`8@>@$X1$`^W -M1QAFB48$#[='&F:)1@:+AU0%``"(1FS&1A(@#[=7&F:!^B`A=`=F@?HB(75' -MQD87`HU&/,=&/%)O8VO'0`1E=%)!QT`(240@4\=`#%-$(#+'0!`Q,G@@QT`4 -M0V]N=,=`&')O;&QFQT`<97+&0!X`Z0(!``"-@O#8__]F@_@!=A)F@?I`(70+ -M9H'Z1"$/A:4```#&1A<$#[=7&HV"\-C__V:#^`%W0XU&/,=&/%)O8VO'0`1E -M=%)!QT`(240@,L=`##<Q>"#'0!!305,@QT`40V]N=,=`&')O;&QFQT`<97+& -M0!X`Z8T```!F@?I`(70'9H'Z1"%U?XU&/,=&/%)O8VO'0`1E=%)!QT`(240@ -M4\=`#%-$(#+'0!`Q-'@@QT`40V]N=,=`&')O;&QFQT`<97+&0!X`ZS_&1A<( -MC48\QT8\1&%T8<=`!$-E;G3'0`AE<B`WQT`,,C@P(,=`$%-!5$''0!0@0V]N -MQT`8=')O;,=`'&QE<@`/MD82]F87B$80A,!U!,9&$("-1AC'1AA(:6=HQT`$ -M4&]I;L=`"'0@5&7'0`QC:&YOQT`0;&]G:<=`%&5S+"#'0!A);F,NQD`<`(N' -M4`4``(7`=!"+0`B)1F2)PL'Z'XE6:.L.BT<(B49DB<+!^A^)5FC'1F``(``` -MQT0D!'P```"+1Q")!"3H_/___XG"@>+P`P``P>H$B%9M@^`/B$9OQT0D!(`` -M``"+1Q")!"3H_/___XG"@>(``/`#P>H4B%9N)0``#P#!Z!"(1G"#Q!!;7E_# -MC;8`````C;\`````55=64X/L'(M\)#"+="0TBUPD.+@`````Q@08`(/``3V< -M````=?*)<PB#_C]^"8''Q`P``(/N0+@`````@[RWO`(````/A9\"``")G+>\ -M`@``B7MLBT0D/(E#<(M,)$")2WB`?SD!#X5X`@``@?Z%````#X]:`@``#[:$ -M-[P$```\_P^$2@(```^VP&:)1"08#[?`:<`D`0``B<4#KWP%``#V12<$#X0G -M`@``BT4D)0#__P`]``#_``^%%`(``/9%*`0/A(<!``#&A;0`````#[9-)`^V -MT8G0@^`&@_@&=3GVP@$/A`,!``#&128%QD4G!(EL)`P/MD5-B40D"(M%,(E$ -M)`2+12R)!"3H_/___[@!````Z=`!``"#^`0/A<(!``#VP0$/A+D!``"+72R+ -M132%P`^%@@```,9%)@/&12<$@'L*`'11O@````"-0SB)1"04BTPD%(D,).C\ -M____B<*+0SR)4SR+3"04B0J)0@2)$(!Z)O]T%3G5=!'&A;4````!N`$```#I -M7`$``(/&`0^V0PHY\'^[@+VU`````0^$/P$``(EL)`2)/"3H_/___[@!```` -MZ2X!``"`>"8`#X4?`0``9H-@,OV+131FQT`R(`"+132)1"0$B3PDZ/S___^X -M`0```.G]````BT4L#[9`"8!_)@!T+[L`````#[;P#[;+B?#3^*@!=!3'1"0( -M`````(E,)`2)/"3H_/___X/#`3A?)G?9QD4G!L9%)@5FQX64``````");"0$ -MB3PDZ/S___^X`0```.F:````BVTL@'T*`'1>QD0D&P"-13B)1"00BTPD$(D, -M).C\____B<*+13R)53R+3"00B0J)0@2)$(!Z)O]T'@^V0B4\(G0$/`UU$L>$ -MM[P"````````N`````#K0H!$)!L!#[9$)!LX10IWK@^W1"08B40D"(E<)`2) -M/"3H_/___[@!````ZQ?'A+>\`@```````+@`````ZP6X`0```(/$'%M>7UW# -MD)"0D)"0D)"0D)"0D)"0BU0D!*$`````B4($B14`````PXVV`````(V\)P`` -M``"A``````68`0,`PY"-="8`BT0D!(M,)`B%P'04BQ"%TG0)A<ET!8M"!(D! -MB=##B?:+%0````#KYI"-M"8`````BT0D!(M4)`@%F`$#``-"$,/K#9"0D)"0 -MD)"0D)"0D)!3@>SX````BY0D``$``(V$)(````"+G"0$`0``BTH$B40D!(M" -M"(D$)/]1'(U$)`B+4P2)1"0$BT,(B00D_U(<#[9$)`DXA"2!````=@VX`0`` -M`('$^````%O#<B0/MD0D"CB$)((```!WXW(4#[9$)`LXA"2#````=]-R!#'` -MZ]*X_____^O+D(VT)@````!75E.#[!"+'0````"+="0@A=MU".MZBQN%VW1T -MBT,(A<!T=HM6!#M0!'7KBT`(B40D!(M&"(D$)/]2)(3`=->+4PB->PB%TG4? -MZV:0C70F`(E4)`2)-"3H_/___X7`>%&+/XL7A=)T28M&!(N(@````(7)=-L[ -M0@1UUHM""(E$)`2+1@B)!"3_T>O1D(UT)@`QP(/$$%M>7\/'!@````"X`0`` -M`(E>#(ES"(/$$%M>7\.+!XE>#(D&N`$```")-^O1ZPV0D)"0D)"0D)"0D)"0 -MBU0D!*$`````B0*+0@R)%0````"%P'00H0````")0A`#0@RC`````//#C;8` -M````5U93@^P0BQT`````#[9T)""%VW0MB?`X0P1T)HGP#[;XZP>)\#A#!'08 -MBT-`A<!T"8D\)/_0A<!U"(L;A=N)]G7A@\00B=A;7E_#D(UT)@!6B=93@^PT -M@#T``````G0TBU@,,<F#P`PYV'0:.8OT_?__B=IU"NL7.8KT_?__=`^+$CG" -M=?*)3AR#Q#1;7L.#P0'KU(.XE`$#`"!WPXU$)!2+4E")1"0$BT9<B00D_U(\ -MBU98#[9$)"`#0BB)1ASKR.L-D)"0D)"0D)"0D)"0D(L5`````+AT````A=)T +M;VQL9L=`'&5RQD`>`.L_QD87"(U&/,=&/$1A=&''0`1#96YTQT`(97(@-\=` +M##(X,"#'0!!3051!QT`4($-O;L=`&'1R;VS'0!QL97(`#[9&$O9F%XA&$(3` +M=03&1A"`C488QT882&EG:,=`!%!O:6['0`AT(%1EQT`,8VAN;\=`$&QO9VG' +M0!1E<RP@QT`826YC+L9`'`"+AU`%``"%P'00BT`(B49DB<+!^A^)5FCK#HM' +M"(E&9(G"P?H?B59HQT9@`"```,=$)`1\````BT<0B00DZ/S___^)PH'B\`,` +M`,'J!(A6;8/@#XA&;\=$)`2`````BT<0B00DZ/S___^)PH'B``#P`\'J%(A6 +M;B4```\`P>@0B$9P@\006UY?PXVV`````(V_`````%575E.#[!R+?"0PBW0D +M-(M<)#BX`````,8$&`"#P`$]G````'7RB7,(@_X_?@F!Q\P,``"#[D"X```` +M`(.\M[P"````#X6?`@``B9RWO`(``(E[;(M$)#R)0W"+3"1`B4MX@'\Y`0^% +M>`(``('^A0````^/6@(```^VA#>\!```//\/A$H"```/ML!FB40D&`^WP&G` +M*`$``(G%`Z]\!0``]D4G!`^$)P(``(M%)"4`__\`/0``_P`/A10"``#V12@$ +M#X2'`0``QH6T``````^V320/MM&)T(/@!H/X!G4Y]L(!#X0#`0``QD4F!<9% +M)P2);"0,#[9%38E$)`B+13")1"0$BT4LB00DZ/S___^X`0```.G0`0``@_@$ +M#X7"`0``]L$!#X2Y`0``BUTLBT4TA<`/A8(```#&128#QD4G!(!["@!T4;X` +M````C4,XB40D%(M,)!2)#"3H_/___XG"BT,\B5,\BTPD%(D*B4($B1"`>B;_ +M=!4YU701QH6U`````;@!````Z5P!``"#Q@$/MD,*.?!_NX"]M0````$/A#\! +M``");"0$B3PDZ/S___^X`0```.DN`0``@'@F``^%'P$``&:#8#+]BT4T9L=` +M,B``BT4TB40D!(D\).C\____N`$```#I_0```(M%+`^V0`F`?R8`="^[```` +M``^V\`^VRXGPT_BH`704QT0D"`````")3"0$B3PDZ/S___^#PP$X7R9WV<9% +M)P;&128%9L>%E```````B6PD!(D\).C\____N`$```#IF@```(MM+(!]"@!T +M7L9$)!L`C44XB40D$(M,)!")#"3H_/___XG"BT4\B54\BTPD$(D*B4($B1"` +M>B;_=!X/MD(E/")T!#P-=1+'A+>\`@```````+@`````ZT*`1"0;`0^V1"0; +M.$4*=ZX/MT0D&(E$)`B)7"0$B3PDZ/S___^X`0```.L7QX2WO`(```````"X +M`````.L%N`$```"#Q!Q;7E]=PY"0D)"0D)"0D)"0D)"0D(M4)`2A`````(E" +M!(D5`````,.-M@````"-O"<`````H0`````%F`$#`,.0C70F`(M$)`2+3"0( +MA<!T%(L0A=)T"87)=`6+0@2)`8G0PXGVBQ4`````Z^:0C;0F`````(M$)`2+ +M5"0(!9@!`P`#0A##ZPV0D)"0D)"0D)"0D)"04X'L^````(N4)``!``"-A"2` +M````BYPD!`$``(M*!(E$)`2+0@B)!"3_41R-1"0(BU,$B40D!(M#"(D$)/]2 +M'`^V1"0).(0D@0```'8-N`$```"!Q/@```!;PW(D#[9$)`HXA"2"````=^-R +M%`^V1"0+.(0D@P```'?3<@0QP.O2N/_____KRY"-M"8`````5U93@^P0BQT` +M````BW0D((7;=0CK>HL;A=MT=(M#"(7`=':+5@0[4`1UZXM`"(E$)`2+1@B) +M!"3_4B2$P'37BU,(C7L(A=)U'^MFD(UT)@")5"0$B30DZ/S___^%P'A1BS^+ +M%X72=$F+1@2+B(````"%R73;.T($==:+0@B)1"0$BT8(B00D_]'KT9"-="8` +M,<"#Q!!;7E_#QP8`````N`$```")7@R)<PB#Q!!;7E_#BP>)7@R)!K@!```` +MB3?KT>L-D)"0D)"0D)"0D)"0D(M4)`2A`````(D"BT(,B14`````A<!T$*$` +M````B4(0`T(,HP````#SPXVV`````%=64X/L$(L=``````^V="0@A=MT+8GP +M.$,$=":)\`^V^.L'B?`X0P1T&(M#0(7`=`F)/"3_T(7`=0B+&X7;B?9UX8/$ +M$(G86UY?PY"-="8`5HG64S'2BU@,@\`,.=AT'CF3]/W__XG9=0[K&(UT)@`Y +MD?3]__]T#(L).<AU\HE6'%M>PX/"`>O3C;0F`````(L5`````+AT````A=)T M%##`BTH8.<AS`HG(BQ*%TG7Q@\!T\\.-="8`C;PG`````%.+1"0(BUPD#(M0 M#(U(##G*=0CK$XL2.<IT#8V"V/W__SE8''7O6\-;,<##C70F`%.#[`B+1"00 MBU@(A=MT$Y"+4P2+0PB)!"3_4FR+&X7;=>Z#Q`A;PXGVC;PG`````(M$)`2) -MPHL`Z>/^__^-=@"+1"0$BU`<A=)X!\=`'/_____SPXVV`````(V_`````%.+ +MPHL`Z2/___^-=@"+1"0$BU`<A=)X!\=`'/_____SPXVV`````(V_`````%.+ M7"0,,<"%VW07BU0D"#')`=,/M@*#P@$!P3G:=?0/ML%;PXVV`````(V_```` M`*$`````BTPD!(7`="2+4`B%TG07.4H(=0SK&)"-="8`.4H(=`R+$H72=?6+ M`(7`==SSP_/#C70F`(V\)P````!75E.+1"00BW0D%(M\)!B+4`R-6`PYVG4- @@ -5705,12 +5785,12 @@ MC`$#`(72=`B+102)!"3_TH/$#%M>7UW##[93"(#Z!'8/BX-D`0``A<!T$#E8 M!'0+@.H!=</V0TP"=+V+0QR%P(GV#XB/````]H,<`@```G2GQT0D!`````") M+"3H_/___X7`B<)TD3G#=(WV@!P"```"='.`HQP"``#]Z7C___^)]HD<).C\ M____Z6C^__^`?"0+``^%^/[__X`]``````&0#X7J_O__B10DZ/S____IW?[_ -M_XD$).C\____D(UT)@#IM/[__XD<).C\____C78`Z5/^__^)VHGHZ"+V__^) +M_XD$).C\____D(UT)@#IM/[__XD<).C\____C78`Z5/^__^)VHGHZ&+V__^) M]NEA____BT,<B4(<QT,<`````.G__O__B?:-O"<`````55=64X'LG````(N< M)+````"%VXM[#`^$WP```,=$)!@`````C50D)(M#!(E4)`2+4PB)%"3_4!P/ MMD0D-#L%-`(```^.G@```(U#$(E$)!3K(#EK&(-4)!@`BQ4T`@``#[9$)#2# MP@$YT(D5-`(``'YU]D0D-0%U$0^V!0`````[1"08#X2-````BVL8BU0D%(.' -MD`$#``&)%"3H_/___XM3!(E<)!#'1"0,4.T#`(E$)`B)QJ$T`@``B40D!(M# +MD`$#``&)%"3H_/___XM3!(E<)!#'1"0,8/L#`(E$)`B)QJ$T`@``B40D!(M# M"(D$)/]2-(3`=8>+1"04B70D!(D$).C\____@Z^0`0,``>ES____BQO'!30" M````````A=L/A2G___^+AY`!`P"#Z`&%P(F'D`$#`'4[B?CHR_S__^LR#[8% M`````,<%)`(```````")'2@"``#'1"0$'`(``&G`0$(/`(D\)*,<`@``Z/S_ @@ -5761,3775 +5841,3794 @@ M!"3H_/___XM&##G8=>R+1A2-?A0Y^'0GC9Z`````@^@,BT@,BU`0B5$$B0J) M1"0$B1PDZ/S___^+1A0Y^'7?@+Z$`0,``'4<BQT`````A=MT$HM#+(7`=`6) M-"3_T(L;A=MU[HM>"(7;=!*+4P2+0PB)!"3_4G2+&X7;=>Z#Q!!;7E_#BP:C M`````.E:____D)"0D)"0D)"0D(M,)`0QP(M1$(VT)@````#&!!``@\`!@_@L -M=?2-0@B)0@B)0@PQP(D2B5($QT(4P",$`(E*&,="'`````##B?:+0"2#Z!0# +M=?2-0@B)0@B)0@PQP(D2B5($QT(4<#`$`(E*&,="'`````##B?:+0"2#Z!0# M!7@"``##C78`BT`0,=*+"#G!=!*+$8M!!(E"!(D0BU$,B0F)202)T,.#[!R) MT8E<)!2)PXET)!B+<!"`>F0`=1(/MT)0,=(#04@344R)0T")4T2#1A`!BT-< MBU-0B4PD!(D$)/]23(M<)!2+="08@\0<PXVV`````(/L#(M$)!#V@!P"```( -MBU`0=2;'0B0`````BU!0@(@<`@``"(E$)`C'1"0$\/H#`(M`7(D$)/]21(/$ -M#,.-=@"#[!"+3"04B7PD"`^V1"0HB1PD#[=\)"")="0$B6PD#/:!'`(```%U -M&(L<)+C_____BW0D!(M\)`B+;"0,@\00PP^VP(M14(E$)"@/M\>+'"2)1"0@ -MBT%<BW0D!(M\)`B+;"0,B40D%(M*4(/$$/_A@^P0B70D!(MT)!2)'"2)?"0( -MB6PD#/9&3$#'1C``````QT8T`````'59BTXDA<ET<S'_,>TQV^L0C;0F```` -M`(/#`8L)A<ET+8M!%(7`=?"+00R+41`!1C`15C2+41"+00PYZG+==P0Y^';7 -MBPF)QXG5A<EUTX/[`W\(B7XHB6XLZP['1B@`````QT8L`````(L<)(MT)`2+ -M?"0(BVPD#(/$$,,Q_S'MZ]&-M@````!64XMT)`R)\P-<)!`YWG,7B=D/ME'^ -M#[9!_XA1_XA!_H/I`CG.<NLYWG0E#[8&/"!U(8GRZP</M@(\('48@\(!.=IU -M\HGQQ@$`@\$!.=EU]EM>PXGRB?&$P'0@D(UT)@"#P@$\('0;#[9"_X@!@\$! -M.=-T!P^V`H3`=>4YRW7'D.O..=IT]0^V`H3`D(UT)@!TQ3P@=,$/MD+_B`&# -MP0'KT^L-D)"0D)"0D)"0D)"0D(M$)`2+0!#'0"0!````PY!64X/L!(MT)!#V -M1DP"=2V+7B2%VW06BU,4A=)T"8M"!(D4)/]0)(L;A=MUZL>&I`````````"# -MQ`1;7L.)-"3H_/___\>&I`````````"#Q`1;7L.-M@````"-OP````!3@^P( -MBUPD$(M4)!3V0TX"BT,0=`OV0"@"=!60C70F`(-`)`&#Q`A;PXVT)@`````Y -M4"1RZ\=$)`0!````BP.)!"3H_/___X7`B<)TUP^V0&6)6BB)6BS&0F0$@^#/ -M@\@@B$)EQD)F`,="<,#Y`P")5"00@\0(6^G\____C70F`%.)PX/L",=$)`0! -M````BP")!"3H_/___X7`B<)T0/9#3@)U0<9`9`/'0%@`````QD!30&;'0$P` -M`&;'0$X``&;'0%```,9`4D!FQT!(``!FQT!*`0!FQT!4``")6BB#Q`B)T%O# -MQD!D`J$$&```B4)0#[<%"!@``,9"2`;'0DP`````QD))`&:)0E3KSHUV`(/L -M'(E<)!2)PXET)!B+<!#H6____[K_____A<!T'<=`<(#Z`P"`3B@!BU-0B40D -M!(M#7(D$)/]23#'2BUPD%(G0BW0D&(/$',.-M"8`````5U93@^P0BUPD((M\ -M)"2`>P@$=D:`>S``=#DQ]NL-B?8/MD,P@\8!.?!^*(M$LTB%P'3M]H`<`@`` -M`73DB00D@\8!B7PD!.C\____#[9#,#GP?]B#Q!!;7E_#=##V@QP"```!=.Z) -MV.BT_O__A<!TXX,'`8EX+,=`<-#Y`P")1"0@@\006UY?Z?S___^+6R3V@QP" -M```!=+OKRXVV`````.G\____C70F`(V\)P````"#[!R+1"0@B5PD%(ET)!B+ -M6"R+,(D$).C\____BP.#Z`&%P(D#=0^-0P2)1"0$B30DZ/S___^+7"04BW0D -M&(/$',.-M"8`````C;PG`````%93@^P$BS4`````QP5X`@```````(7V=0[K -M*)"-="8`BW8$A?9T'(L=>`(``/]62#G#<^S_5DB+=@2%]J-X`@``=>3'!"1@ -M`@``@P5X`@``%.C\____@\0$,<!;7L.)]H/L'(M,)"")7"04B70D&(MQ*(M> -M$`^V4RB)T(/@_HA#*(!Y9@%T.8D,).C\____BU,@A=)U&XU#%,=#(`$```") -M1"0$BP:#P"R)!"3H_/___XM<)!2+="08@\0<PXUV`(/B_(A3*.N_D(VT)@`` -M``"#[`R+5"00BT(0@*(<`@``]\>"E`````````"+2""%R74;QT`@`0```(/` -M%(E$)`2+`H/`+(D$).C\____@\0,P^L-D)"0D)"0D)"0D)"0D%.#[`B+1"00 -MBU@0B40D!(L#!;````")!"3H_/___XV#F````,>#F````&#W`P")FYP```#' -M@Z``````````B40D!(L#@\`DB00DZ/S___^#Q`A;PXVV`````(V_`````%93 -M@^P4BW0D(,=$)`1@`@``BUPD)(L&B00DZ/S___^)P8M&)(7`=!4YV(U6)'4& -MZQ(YV'0.B<*+`(7`=?2#Q!1;7L.+`XD"B5PD)(E,)""#Q!1;7NG\____C;0F -M`````%6)S5>)UU8Q]E.#[$R+5"1DB40D)(M$)&")5"0<BU0D)(E$)!B+4B2% -MTHE4)#QT%HG6,<"#?A0!BS:#V/^%]G7S@_@#?@J#Q$R)\%M>7UW#BT0D&(M4 -M)!R+3"0\`?@1ZHE,)#B)1"00B50D%.LJB?:+7"0XBU,(BT,$,>HQ^`G"#X0" -M`0``BU0D.(L2A=*)5"0X#X3G````BU0D.(M"%(7`=<V+6@B+2@0YZW?9<@0Y -M^7?3BU0D%(M$)!")5"0LBU0D.(E$)"B+0@R+4A")1"0P`<B)5"0T$=HY5"0L -M=Z=R!CE$)"AWGXG:B<@QZC'X"<(/A$\"```YZW>+#X->`0``BU0D),=$)`1@ -M`@``BP*)!"3H_/___XD$).C\____A<")P0^$'?___S'`Q@0(`(/``8/X&'7T -MBUPD.(M#!(M3"(E!!(GXB5$(B>HK0P0;4PB)>P2)00R+`XE1$(M3$(EK"(D! -MBT,,*T$,&U$0.50D'(D+B4,,B5,0#X96`@``BW0D..F^_O__BPN%R716NP$` -M``#K!HL)A<ET0(M!%(7`=/.+40B+000QZC'X"<)UY8M!#(M1$(E$)`B+1"0X -MB50D##M0$'(/=PF+5"0(.U`,=@2)3"0X@\,!Z[J#ZP$/CV+^__^+7"0XBTL, -MBUL0.5PD'(E,)$")7"1$=W!R!CE,)!AW:(M4)"3'1"0$8`(``(L"B00DZ/S_ -M__^)!"3H_/___X7`B<(/A!K^__\QP,8$$`"#P`&#^!AU](M<)!R)UHM,)!B) -M>@2):@B)6A"+7"0XB4H,BP.)`HD3Z>?]__\Y^0^#'_[__^F5_O__BUPD/.L* -MBQN%VP^$ROW__XM#%(7`=>^+3"0XBT0D0(M4)$0#000340B+2P@S0P0QT0G! -M==&+1"1`BU0D1`-##!-3$#E4)!P/AXW]__]R"CE$)!@/AX']__^+="0DQT0D -M!&`"``"+!HD$).C\____B00DZ/S___^)P3'`Q@0(`(/``8/X&'7TBW0D.(M$ -M)!B+5"0<`T8$$U8(B4,$BT,,B5,(BU,0`T8,$U80*T0D&!M4)!R)>02)0PR+ -M1"08B5,0BU0D'(EI"(E!#(L&B5$0B0&)#HG.Z0#]__^+5"0<BT0D&#-4)#0S -M1"0P"<(/A"'^__^+3"0DQT0D!&`"``"+`8D$).C\____B00DZ/S___^%P(G! -M#X3`_/__,<#&!`@`@\`!@_@8=?2+7"0XBT,,B=XK1"08BU,0&U0D'(E!#(M$ -M)"B)41"+5"0LB4$$BP.)40B+5"08B0&)"XM,)!R)4PR)2Q#I<?S__W(*.40D -M&`^#GOW__XM4)"3'1"0$8`(``(L"B00DZ/S___^)!"3H_/___XG!,<"%R713 -MQ@0(`(/``8/X&'7TBUPD.(M$)!B+5"0<`T,$B=X34PB)002+0PPK1"08B5$( -MBU,0&U0D'(E!#(L#B5$0BU0D'(D!BT0D&(D+B5,0B4,,Z>S[__^+3"0XBQF+ -M0P2+4PB)002+`XE1"(M4)"2)`<=$)`1@`@``BP*)!"3H_/___XE<)`2)!"3H -M_/___^FO^___B?:-O"<`````5U93@^P0BWPD(,=$)`1@`@``BP>)!"3H_/__ -M__9'3`B)QG4@BT<DA<!T&9"-="8`BQB)1"0$B30DZ/S___^%VXG8=>R+5U"+ -M1UR)!"3_4D"+1UR)1"0$BT=8@\`0B00DZ/S___^#Q!!;7E_#C70F`%93@^P4 -MBUPD((M3)("C'`(``/Z%TG04BT(4A<!T!X"@'`(``/Z+$H72=>R)7"0$QP0D -M`0```.C\____BP/'@Z0````!````!;````")!"3H_/___X7`B<9T7,<``0`` -M`,=`!$#[`P")1@C'0`P`````B5@0BULDA=MT,)"-="8`BU,4A=)U"^L<C;0F -M`````(G"BT(,A<!U]XET)`2)%"3H_/___XL;A=MUU8L&@^@!A<")!G0&@\04 -M6U[#B70D((/$%%M>Z6;Y__^-M@````!3@^P8BT0D((M<)"C'1"0$8`(``(D$ -M).C\____BU0D)(T<VXE<)`S'1"0(&````(E4)`2)!"3H_/___X/$&%O#@^P\ -MB7PD-(M\)$")="0PBW0D1(EL)#B+;"1(B5PD+(/_!W=,_R2]#!@``(NSE``` -M`(7V=3N+0P3'@Y0````!````BT`XB9N,````QX.0`````````(F#B````(V# -MB````(E$)`2-02R)!"3H_/___XM<)"R+="0PBWPD-(ML)#B#Q#S#BUX0QT80 -M`````(ET)`3'!"0#````Z/S___^)7A#KS8DT).C\____BU@(B<>%VW4(ZPR+ -M&X7;=`8Y<PB0=?2-0RR)!"3H_/___X7`=)^)6`R):!#'`/`#!`")0`3'0`@` -M````B40D!(U')(D$).C\____Z77___^)-"3H_/___XG!BT`,C5$,.=!U#^E< -M____BP`YT`^$4O___XV8V/W__X!["`%UZCEK7'7E@_\'#X<X_____R2]+!@` -M`(M#6(M0!(U$)`R)1"0$B2PD_U(\#[9$)!J(0TH/ME0D%@^V0TZ#X@$!TH/@ -M_0G0B$-.Z?K^__^+0Q"`HQP"``#OBU`@A=(/A>7^___'0"`!````@\`4B40D -M!(U!+(D$).C\____Z<?^__^`BQP"```0Z;O^__^+0P2)'"3_4"2)]NFK_O__ -MC70F`(V\)P````"#[!R+1"0@B5PD%(ET)!B+6`R+<!")1"0$C4,LB00DZ/S_ -M__^)7"0,B70D!(D<),=$)`B`&@0`Z/S___^+7"04BW0D&(/$',.0C;0F```` -M`('L+`(``(`]``````")G"0D`@``BYPD,`(``(FT)"@"``!U'(N<)"0"``"+ -MM"0H`@``@<0L`@``PXVT)@`````/MD-,C70D)(/(`X/@^XA#3,=$)!0!```` -MB70D$,=$)`P!````QT0D!`D```#'1"0(`````(D<).C\____A<!U3X%\)"1Y -M8V=L=&7V0TP!D'22BW,DA?9T)<=$)`1@`@``BP.)!"3H_/___XET)`2)!"3H -M_/___\=#)`````"+0SB+4SR)0Q2)4QCI5?___Y"`HQP"``#^B5PD!,<$)`$` -M``#H_/___X!+3`'I-/___\=$)`0``@``B30DZ/S___^$P'6'#[9,)"@/MH,< -M`@``B<K`Z@2#X/V#X@()T(B#'`(``/9$)"@0=`R`2TR`#[9$)"F(0TOV1"0K -M`707#[9338G(P.@"@^`"@\H!@^+]"<*(4TWV1"0K`G05#[9338T$"8/@"(/* -M!(/B]PG"B%--]D0D*PAT%0^V0TW!X02#X2"#R!"#X-\)R(A#3?9$)"L$#X3T -M_O__#[9330^V1"0H@\I`@^`!@^)_P>`'"<*(4TWIU?[__XUV`(V\)P````!5 -M5U93@>P<`@``BXPD,`(``(/!)`^V02B#X`,L`0^$OP(``(N4)#`"```/MD), -M@^#OB<:(0DR-1"0<C;8`````Q@``C9PD'`(``(/``3G8=>_V02@"#X6'`@`` -MB[PD,`(``(GS@^/WB%],B[PD,`(``,=$)!Q?=V%2BT<4BU<8B40D((E4)"2` -M>2@`>0V`3"0H$`^V1TN(1"0I]D$I`70DBX0D,`(``(!,)"L!#[9030^V1"0H -MP>("@^((@^#W"="(1"0H]D$I!'0CB[PD,`(``(!,)"L"#[9$)"@/ME=-@^#[ -MT.J#X@0)T(A$)"CV02D0="2+A"0P`@``@$PD*P@/ME!-#[9$)"C`Z@2#X@*# -MX/T)T(A$)"CV02E`="&+O"0P`@``@$PD*P0/MD0D*`^V5TV#X/[`Z@<)T(A$ -M)"B+A"0P`@``@W@L``^&G@$``/9!*"`/A+,!``"+E"0P`@``BW(DA?9T0#'_ -MBVX4A>UT,8M&!(T,?X/'`8M6"(U,S!R)01")412+1@R+5A")01B+1A2)41R+ -M4"R+0"B)422)02"+-H7V=<*+C"0P`@``C5PD'(U\)!P/MD%.B1PDQH0D&P(` -M``''1"0$``(``(/@`8B$)!H"``#H_/___XN,)#`"``")?"00QT0D%`````#' -M1"0,`0```/?8B(0D'`$``(M!.(M1/(D,)`4``/[_@]+_)0``_O^)1"0$B50D -M".C\____BYPD,`(``(M[)(7_=$\Q[8M/%(7)=$"+G"0P`@``C71M`(M#.(M3 -M/(M9+(M)*`'!$=.!P0#X__^#T_\%``#^_X/2_R4``/[_*<$9TX/%`8E,]#R) -M7/1`BS^%_W6SC7PD',:$)!P!````QT0D!``"``")/"3H_/___XN,)#`"``#' -M1"04`````,=$)`P!````]]B(A"0<`0``C40D'(E$)!"+03B+43R)#"0%`/C_ -M_X/2_XE$)`2)5"0(Z/S___^!Q!P"``!;7E]=PX%X*/__'P`/AU7^__^)\X/C -M\XA83/9!*"`/A4W^___`ZP*#XP&(7"0JZ3[^__^0C70F`%.)PX/L",=$)`1@ -M`@``BP")!"3H_/___XD$).C\____B<$QP(7)=#+&!`@`@\`!@_@8=?2+0Q2+ -M4QB)00R)41"+0Q2+4QB)2R2)0S")4S2)0RB)4RR#Q`A;PXD<).C\____Z_&- -MM@````"-OP````!55U93@>P\`P``B[PD4`,``(`]``````*-1R2)1"0H#X0K -M`0``C50D2,=$)!0!````B50D$,=$)`P!````BT<XBU<\B3PD!0#X__^#TO^) -M1"0$B50D".C\____A<")Q@^$-`4``(U$)$C'1"04`0```(E$)!#'1"0,`0`` -M`(M'.(M7/(D\)`4``/[_@]+_)0``_O^)1"0$B50D".C\____A<")1"0L#X22 -M!```@_[_#Y3`@WPD+/\/A!L(``"+;"0LA>T/E40D)P^$G0(``(7V#X65`@`` -MC6PD2,=$)!0!````B6PD$,=$)`P!````BT<XBU<\B3PD!0#X__^#TO^)1"0$ -MB50D".C\____A<")Q@^$50(``("G'`(``/Z)?"0$QP0D`0```.C\____@$], -M`8'$/`,``%M>7UW#@#T```````^%<0(``(VT)@````"`3TP"]D=,`@^%O``` -M`(M$)"CV0"@!=#B+7R2%VW0EQT0D!&`"``"+!XD$).C\____B5PD!(D$).C\ -M____QT<D`````(M'.(M7/(E'%(E7&(M4)"B`>B@`#XBR`@``BVPD*/9%*0$/ -MA4D#``"+5"0H]D(I!`^%QP(``(ML)"CV12D0#X7N`@``BU0D*/9"*4`/A$O_ -M___&1"1(!0^V1TV-3"1(QD0D30#`Z`>(1"1,BU=0B4PD!(M'7(D$)/]28('$ -M/`,``%M>7UW##[9'3(U,)$B#R`&#X/N(1TS'1"04`0```(E,)!#'1"0,`0`` -M`,=$)`0)````QT0D"`````")/"3H_/___X7`#X6W_O__@7PD2'EC9VP/A?'^ -M__^-;"1(QT0D!``"``")+"3H_/___X3`#X75_O__#[9,)$P/MH<<`@``B<K` -MZ@2#X/V#X@()T(B''`(``/9$)$P0=`R`3TR`#[9$)$V(1TOV1"1/`707#[97 -M38G(P.@"@^`"@\H!@^+]"<*(5TWV1"1/`G05#[9738T$"8/@"(/*!(/B]PG" -MB%=-]D0D3PAT%0^V1TW!X02#X2"#R!"#X-\)R(A'3?9$)$\$#X1"_O__#[97 -M30^V1"1,@\I`@^`!@^)_P>`'"<*(5TWI(_[__XU,)$C'1"0$``(``(D,).C\ -M____A,`/A3`"``"`O"1'`@```'4%OO[____&1"0G`(%\)$A?=V%2#X3D`@`` -MBT\XBU\\@<$``/[_@]/_B<B)VB4``/[_B=`QTHG5"<4/A4T"``"`3TP!#[8% -M`````#P"#X2>_?__+`$/A(+]___VAQP"```!#X2-_?__@*<<`@``^XU$)$B- -ME"1(`@``C;0F`````,8``(/``3G0=?:-1"1(QT0D%`$```")1"00QT0D#`$` -M``#'1"0$`````,=$)`@`````B3PDZ/S___^`?"1(10^$P`0``("\)$8"``!5 -M#X4A_?__@+PD1P(``*H/A1/]__\QP(N4!!("``"%T@^%_OS__X/`$(/X0'7I -MZ?7\__^0QD0D2``/MD=+C4PD2(A$)$R+5U")3"0$BT=<B00D_U)@BVPD*/9% -M*0$/A"W]___K=,9$)$@##[9'38U,)$C`Z`.#X`&(1"1,BU=0B4PD!(M'7(D$ -M)/]28(ML)"CV12D0#X02_?__QD0D2`0/MD=-QD0D30#`Z`6#X`&(1"1,C40D -M2(M74(E$)`2+1UR)!"3_4F"+5"0H]D(I0`^$,?S__^GA_/__QD0D2`(/MD=- -MT.B#X`&(1"1,C40D2(M74(E$)`2+1UR)!"3_4F"+5"0H]D(I!`^$D?S__^E3 -M____C50D2`^VG"1'`@``B10DQT0D!``"``#H_/___XE<)`S'!"3\!```#[;` -MB40D"(M$)$B)1"0$Z/S___^!?"1(7W=A4@^$M/W__X7V#X4N^___OO_____I -M)/O__XU,)$@/MIPD1P(``(D,),=$)`0``@``Z/S___^)7"0,QP0DV`0```^V -MP(E$)`B+1"1(B40D!.C\____@7PD2%]W85(/A&,#``"^_O___^EY^O__C40D -M2#'2B40D$(G()0``_O_'1"04`0```,=$)`P!````B40D!(E4)`B)/"3H_/__ -M_X7`#X7Q^O__@7PD2%]W85(/A6S]__^-5"1(QT0D!``"``")%"3H_/___X3` -M#X3J!@``@7PD2%]W85(/A4+]__^-5"1(QT0D!``"``")%"3H_/___X3`#X4F -M_?__@'PD5@`/MD=,#Y7"P>("@^#["="(1TP/MD=.@+PD1@(````/E<*#X/X) -MT`^VTHA'3HM,)"B)5"0(QP0DF@(``(E,)`3H_/___XM'.(M7/`4``/[_B<&# -MTO^!X0``_O^)^(E/%(E7&.BK^/__]D0D5!!T#(!/3(`/MD0D58A'2_9$)%<! +MBU`0=2;'0B0`````BU!0@(@<`@``"(E$)`C'1"0$X`@$`(M`7(D$)/]21(/$ +M#,.-=@!6N?____]3BT0D#(MT)!P/MUPD&`^V5"0@]H`<`@```70=A-)T%P^W +MT\'B"872=`TQP,8$,`"#P`$YT'7U,<E;B<A>PXVV`````(V_`````(/L$(ET +M)`2+="04B1PDB7PD"(EL)`SV1DQ`QT8P`````,=&-`````!U68M.)(7)=',Q +M_S'M,=OK$(VT)@````"#PP&+"87)="V+012%P'7PBT$,BU$0`48P$58TBU$0 +MBT$,.>IRW7<$.?AVUXL)B<>)U87)==.#^P-_"(E^*(EN+.L.QT8H`````,=& +M+`````"+'"2+="0$BWPD"(ML)`R#Q!##,?\Q[>O1C;8`````5E.+="0,B?,# +M7"00.=YS%XG9#[91_@^V0?^(4?^(0?Z#Z0(YSG+K.=YT)0^V!CP@=2&)\NL' +M#[8"/"!U&(/"`3G:=?*)\<8!`(/!`3G9=?9;7L.)\HGQA,!T()"-="8`@\(! +M/"!T&P^V0O^(`8/!`3G3=`</M@*$P'7E.<MUQY#KSCG:=/4/M@*$P)"-="8` +M=,4\('3!#[9"_X@!@\$!Z]/K#9"0D)"0D)"0D)"0D)"+1"0$BT`0QT`D`0`` +M`,.05E.#[`2+="00]D9,`G4MBUXDA=MT%HM3%(72=`F+0@2)%"3_4"2+&X7; +M=>K'AJ0`````````@\0$6U[#B30DZ/S____'AJ0`````````@\0$6U[#C;8` +M````C;\`````4X/L"(M<)!"+5"04]D-.`HM#$'0+]D`H`G05D(UT)@"#0"0! +M@\0(6\.-M"8`````.5`D<NO'1"0$`0```(L#B00DZ/S___^%P(G"=-</MD!E +MB5HHB5HLQD)D!(/@SX/(((A"9<9"9@#'0G"P!P0`B50D$(/$"%OI_/___XUT +M)@!3B<.#[`C'1"0$`0```(L`B00DZ/S___^%P(G"=$#V0TX"=4'&0&0#QT!8 +M`````,9`4T!FQT!,``!FQT!.``!FQT!0``#&0%)`9L=`2```9L=`2@$`9L=` +M5```B5HH@\0(B=!;P\9`9`*A!!@``(E"4`^W!0@8``#&0D@&QT),`````,9" +M20!FB4)4Z\Z-=@"#[!R)7"04B<.)="08BW`0Z%O___^Z_____X7`=!W'0'!P +M"`0`@$XH`8M34(E$)`2+0UR)!"3_4DPQTHM<)!2)T(MT)!B#Q!S#C;0F```` +M`%=64X/L$(M<)""+?"0D@'L(!'9&@'LP`'0Y,?;K#8GV#[9#,(/&`3GP?BB+ +M1+-(A<!T[?:`'`(```%TY(D$)(/&`8E\)`3H_/___P^V0S`Y\'_8@\006UY? +MPW0P]H,<`@```73NB=CHM/[__X7`=..#!P&)>"S'0'#`!P0`B40D((/$$%M> +M7^G\____BULD]H,<`@```72[Z\N-M@````#I_/___XUT)@"-O"<`````@^P< +MBT0D((E<)!2)="08BU@LBS")!"3H_/___XL#@^@!A<")`W4/C4,$B40D!(DT +M).C\____BUPD%(MT)!B#Q!S#C;0F`````(V\)P````!64X/L!(LU`````,<% +M>`(```````"%]G4.ZRB0C70F`(MV!(7V=!R+'7@"``#_5D@YPW/L_U9(BW8$ +MA?:C>`(``'7DQP0D8`(``(,%>`(``!3H_/___X/$!#'`6U[#B?:#[!R+3"0@ +MB5PD%(ET)!B+<2B+7A`/ME,HB="#X/Z(0RB`>68!=#F)#"3H_/___XM3((72 +M=1N-0Q3'0R`!````B40D!(L&@\`LB00DZ/S___^+7"04BW0D&(/$',.-=@"# +MXOR(4RCKOY"-M"8`````@^P,BU0D$(M"$("B'`(``/?'@I0`````````BT@@ +MA<EU&\=`(`$```"#P!2)1"0$BP*#P"R)!"3H_/___X/$#,/K#9"0D)"0D)"0 +MD)"0D)!3@^P(BT0D$(M8$(E$)`2+`P6P````B00DZ/S___^-@Y@```#'@Y@` +M``!0!00`B9N<````QX.@`````````(E$)`2+`X/`)(D$).C\____@\0(6\.- +MM@````"-OP````!64X/L%(MT)"#'1"0$8`(``(M<)"2+!HD$).C\____B<&+ +M1B2%P'05.=B-5B1U!NL2.=AT#HG"BP"%P'7T@\046U[#BP.)`HE<)"2)3"0@ +M@\046U[I_/___XVT)@````!5B<U7B==6,?93@^Q,BU0D9(E$)"2+1"1@B50D +M'(M4)"2)1"08BU(DA=*)5"0X=!:)UC'`@WX4`8LV@]C_A?9U\X/X`WX*@\1, +MB?!;7E]=PXM$)!B+5"0<BTPD.`'X$>J)3"0\B40D$(E4)!3K*HGVBUPD/(M3 +M"(M#!#'J,?@)P@^$`@$``(M4)#R+$H72B50D/`^$YP```(M4)#R+0A2%P'7- +MBUH(BTH$.>MWV7($.?EWTXM4)!2+1"00B50D+(M4)#R)1"0HBT(,BU(0B40D +M,`'(B50D-!':.50D+'>G<@8Y1"0H=Y^)VHG(,>HQ^`G"#X1/`@``.>MWBP^# +M7@$``(M4)"3'1"0$8`(``(L"B00DZ/S___^)!"3H_/___X7`B<$/A!W___\Q +MP,8$"`"#P`&#^!AU](M<)#R+0P2+4PB)002)^(E1"(GJ*T,$&U,(B7L$B4$, +MBP.)41"+4Q"):PB)`8M##"M!#!M1$#E4)!R)"XE##(E3$`^&5@(``(MT)#SI +MOO[__XL+A<ET5KL!````ZP:+"87)=$"+012%P'3SBU$(BT$$,>HQ^`G"=>6+ +M00R+41")1"0(BT0D/(E4)`P[4!!R#W<)BU0D"#M0#'8$B4PD/(/#`>NZ@^L! +M#X]B_O__BUPD/(M+#(M;$#E<)!R)3"1`B5PD1'=P<@8Y3"08=VB+5"0DQT0D +M!&`"``"+`HD$).C\____B00DZ/S___^%P(G"#X0:_O__,<#&!!``@\`!@_@8 +M=?2+7"0<B=:+3"08B7H$B6H(B5H0BUPD/(E*#(L#B0*)$^GG_?__.?D/@Q_^ +M___IE?[__XM<)#CK"HL;A=L/A,K]__^+0Q2%P'7OBTPD/(M$)$"+5"1$`T$$ +M$U$(BTL(,T,$,=$)P771BT0D0(M4)$0#0PP34Q`Y5"0<#X>-_?__<@HY1"08 +M#X>!_?__BW0D),=$)`1@`@``BP:)!"3H_/___XD$).C\____B<$QP,8$"`"# +MP`&#^!AU](MT)#R+1"08BU0D'`-&!!-6"(E#!(M##(E3"(M3$`-&#!-6$"M$ +M)!@;5"0<B7D$B4,,BT0D&(E3$(M4)!R):0B)00R+!HE1$(D!B0Z)SND`_?__ +MBU0D'(M$)!@S5"0T,T0D,`G"#X0A_O__BTPD),=$)`1@`@``BP&)!"3H_/__ +M_XD$).C\____A<")P0^$P/S__S'`Q@0(`(/``8/X&'7TBUPD/(M##(G>*T0D +M&(M3$!M4)!R)00R+1"0HB5$0BU0D+(E!!(L#B5$(BU0D&(D!B0N+3"0<B5,, +MB4L0Z7'\__]R"CE$)!@/@Y[]__^+5"0DQT0D!&`"``"+`HD$).C\____B00D +MZ/S___^)P3'`A<ET4\8$"`"#P`&#^!AU](M<)#R+1"08BU0D'`-#!(G>$U,( +MB4$$BT,,*T0D&(E1"(M3$!M4)!R)00R+`XE1$(M4)!R)`8M$)!B)"XE3$(E# +M#.GL^___BTPD/(L9BT,$BU,(B4$$BP.)40B+5"0DB0''1"0$8`(``(L"B00D +MZ/S___^)7"0$B00DZ/S____IK_O__XGVC;PG`````%=64X/L$(M\)"#'1"0$ +M8`(``(L'B00DZ/S____V1TP(B<9U((M')(7`=!F0C70F`(L8B40D!(DT).C\ +M____A=N)V'7LBU=0BT=<B00D_U)`BT=<B40D!(M'6(/`$(D$).C\____@\00 +M6UY?PXUT)@!64X/L%(M<)""+4R2`HQP"``#^A=)T%(M"%(7`=`>`H!P"``#^ +MBQ*%TG7LB5PD!,<$)`$```#H_/___XL#QX.D`````0````6P````B00DZ/S_ +M__^%P(G&=%S'``$```#'0`0P"00`B48(QT`,`````(E8$(M;)(7;=#"0C70F +M`(M3%(72=0OK'(VT)@````")PHM"#(7`=?>)="0$B10DZ/S___^+&X7;==6+ +M!H/H`87`B09T!H/$%%M>PXET)""#Q!1;7NEF^?__C;8`````4X/L&(M$)""+ +M7"0HQT0D!&`"``")!"3H_/___XM4)"2-'-N)7"0,QT0D"!@```")5"0$B00D +MZ/S___^#Q!A;PX/L/(E\)#2+?"1`B70D,(MT)$2);"0XBVPD2(E<)"R#_P=W +M3/\DO0P8``"+LY0```"%]G4[BT,$QX.4`````0```(M`.(F;C````,>#D``` +M``````")@X@```"-@X@```")1"0$C4$LB00DZ/S___^+7"0LBW0D,(M\)#2+ +M;"0X@\0\PXM>$,=&$`````")="0$QP0D`P```.C\____B5X0Z\V)-"3H_/__ +M_XM8"(G'A=MU".L,BQN%VW0&.7,(D'7TC4,LB00DZ/S___^%P'2?B5@,B6@0 +MQP#@$00`B4`$QT`(`````(E$)`2-1R2)!"3H_/___^EU____B30DZ/S___^) +MP8M`#(U1##G0=0_I7/___XL`.=`/A%+___^-F-C]__^`>P@!=>HY:UQUY8/_ +M!P^'./____\DO2P8``"+0UB+4`2-1"0,B40D!(DL)/]2/`^V1"0:B$-*#[94 +M)!8/MD-.@^(!`=*#X/T)T(A#3NGZ_O__BT,0@*,<`@``[XM0((72#X7E_O__ +MQT`@`0```(/`%(E$)`2-02R)!"3H_/___^G'_O__@(L<`@``$.F[_O__BT,$ +MB1PD_U`DB?;IJ_[__XUT)@"-O"<`````@^P<BT0D((E<)!2)="08BU@,BW`0 +MB40D!(U#+(D$).C\____B5PD#(ET)`2)'"3'1"0(,"<$`.C\____BUPD%(MT +M)!B#Q!S#D(VT)@````"!["P"``"`/0``````B9PD)`(``(N<)#`"``")M"0H +M`@``=1R+G"0D`@``B[0D*`(``('$+`(``,.-M"8`````#[9#3(UT)"2#R`.# +MX/N(0TS'1"04`0```(ET)!#'1"0,`0```,=$)`0)````QT0D"`````")'"3H +M_/___X7`=4^!?"0D>6-G;'1E]D-,`9!TDHMS)(7V="7'1"0$8`(``(L#B00D +MZ/S___^)="0$B00DZ/S____'0R0`````BT,XBU,\B4,4B5,8Z57___^0@*,< +M`@``_HE<)`3'!"0!````Z/S___^`2TP!Z33____'1"0$``(``(DT).C\____ +MA,!UAP^V3"0H#[:#'`(``(G*P.H$@^#]@^(""="(@QP"``#V1"0H$'0,@$M, +M@`^V1"0IB$-+]D0D*P%T%P^V4TV)R,#H`H/@`H/*`8/B_0G"B%--]D0D*P)T +M%0^V4TV-!`F#X`B#R@2#XO<)PHA33?9$)"L(=!4/MD--P>$$@^$@@\@0@^#? +M"<B(0TWV1"0K!`^$]/[__P^V4TT/MD0D*(/*0(/@`8/B?\'@!PG"B%--Z=7^ +M__^-=@"-O"<`````55=64X'L'`(``(N,)#`"``"#P20/MD$H@^`#+`$/A+\" +M``"+E"0P`@``#[9"3(/@[XG&B$),C40D'(VV`````,8``(V<)!P"``"#P`$Y +MV'7O]D$H`@^%AP(``(N\)#`"``")\X/C]XA?3(N\)#`"``#'1"0<7W=A4HM' +M%(M7&(E$)"")5"0D@'DH`'D-@$PD*!`/MD=+B$0D*?9!*0%T)(N$)#`"``"` +M3"0K`0^V4$T/MD0D*,'B`H/B"(/@]PG0B$0D*/9!*01T(XN\)#`"``"`3"0K +M`@^V1"0H#[9738/@^]#J@^($"="(1"0H]D$I$'0DBX0D,`(``(!,)"L(#[90 +M30^V1"0HP.H$@^("@^#]"="(1"0H]D$I0'0AB[PD,`(``(!,)"L$#[9$)"@/ +MME=-@^#^P.H'"="(1"0HBX0D,`(``(-X+``/AIX!``#V02@@#X2S`0``BY0D +M,`(``(MR)(7V=$`Q_XMN%(7M=#&+1@2-#'^#QP&+5@B-3,P<B4$0B5$4BT8, +MBU80B4$8BT84B5$<BU`LBT`HB5$DB4$@BS:%]G7"BXPD,`(``(U<)!R-?"0< +M#[9!3HD<),:$)!L"```!QT0D!``"``"#X`&(A"0:`@``Z/S___^+C"0P`@`` +MB7PD$,=$)!0`````QT0D#`$```#WV(B$)!P!``"+03B+43R)#"0%``#^_X/2 +M_R4``/[_B40D!(E4)`CH_/___XN<)#`"``"+>R2%_W1/,>V+3Q2%R71`BYPD +M,`(``(UT;0"+0SB+4SR+62R+22@!P1'3@<$`^/__@]/_!0``_O^#TO\E``#^ +M_RG!&=.#Q0&)3/0\B5ST0(L_A?]ULXU\)!S&A"0<`0```,=$)`0``@``B3PD +MZ/S___^+C"0P`@``QT0D%`````#'1"0,`0```/?8B(0D'`$``(U$)!R)1"00 +MBT$XBU$\B0PD!0#X__^#TO^)1"0$B50D".C\____@<0<`@``6UY?7<.!>"C_ +M_Q\`#X=5_O__B?.#X_.(6$SV02@@#X5-_O__P.L"@^,!B%PD*ND^_O__D(UT +M)@!3B<.#[`C'1"0$8`(``(L`B00DZ/S___^)!"3H_/___XG!,<"%R70RQ@0( +M`(/``8/X&'7TBT,4BU,8B4$,B5$0BT,4BU,8B4LDB4,PB5,TB4,HB5,L@\0( +M6\.)'"3H_/___^OQC;8`````C;\`````55=64X'L/`,``(N\)%`#``"`/0`` +M```"C7<D#X0O`0``C40D2,=$)!0!````B40D$,=$)`P!````BT<XBU<\B3PD +M!0#X__^#TO^)1"0$B50D".C\____A<")1"0L#X3O`P``C6PD2,=$)!0!```` +MB6PD$,=$)`P!````BT<XBU<\B3PD!0``_O^#TO\E``#^_XE$)`2)5"0(Z/S_ +M__^%P(E$)"@/A$8#``"#?"0L_P^4P(-\)"C_#X34!@``BT0D*(7`#Y5$)"</ +MA#("``"+1"0LA<`/A28"``"-3"1(QT0D%`$```")3"00QT0D#`$```"+1SB+ +M5SR)/"0%`/C__X/2_XE$)`2)5"0(Z/S___^%P(E$)"P/A.0!``"`IQP"``#^ +MB7PD!,<$)`$```#H_/___X!/3`&!Q#P#``!;7E]=PX`]```````/A0`"``"0 +M@$],`O9'3`)T#0^V1TR#R`&#X/N(1TSV1B@!=#B+7R2%VW0EQT0D!&`"``"+ +M!XD$).C\____B5PD!(D$).C\____QT<D`````(M'.(M7/(E'%(E7&(!^*``/ +MB/$```#V1BD!#X6U````]D8I!'5\]D8I$'4^]D8I0`^$:/___\9$)$@%#[9' +M38UL)$C&1"1-`,#H!XA$)$R+5U");"0$BT=<B00D_U)@@<0\`P``6UY?7</& +M1"1(!`^V1TV-3"1(QD0D30#`Z`6#X`&(1"1,BU=0B4PD!(M'7(D$)/]28/9& +M*4`/A/[^___KE,9$)$@##[9'3<#H`X/@`8A$)$R-1"1(BU=0B40D!(M'7(D$ +M)/]28/9&*1`/A%G____KE<9$)$@"#[9'38UL)$C0Z(/@`8A$)$R+5U");"0$ +MBT=<B00D_U)@]D8I!`^$(?___^N;QD0D2``/MD=+C4PD2(A$)$R+5U")3"0$ +MBT=<B00D_U)@]D8I`0^$[O[__^NAC50D2,=$)`0``@``B10DZ/S___^$P`^% +M4`$``("\)$<"````=0C'1"0L_O___\9$)"<`@7PD2%]W85(/A`L"``"+3SB+ +M7SR!P0``_O^#T_^)R(G:)0``_O^)T#'2B=4)Q0^%=`$``(!/3`$/M@4````` +M/`(/A`G^__\L`0^$\_W___:''`(```$/A/C]__^`IQP"``#[C40D2(V4)$@" +M``")]L8``(/``3G0=?:-;"1(QT0D%`$```");"00QT0D#`$```#'1"0$```` +M`,=$)`@`````B3PDZ/S___^`?"1(10^$\`,``("\)$8"``!5#X61_?__@+PD +M1P(``*H/A8/]__\QP(N4!!("``"%T@^%;OW__X/`$(/X0'7IZ67]__^0C40D +M2`^VG"1'`@``QT0D!``"``")!"3H_/___XE<)`S'!"0D"P``#[;`B40D"(M$ +M)$B)1"0$Z/S___^!?"1(7W=A4@^$E/[__XM$)"R%P`^%>/S__\=$)"S_____ +MZ6O\__^-5"1(#[:<)$<"``")%"3'1"0$``(``.C\____B5PD#,<$)``+```/ +MML")1"0(BT0D2(E$)`3H_/___X%\)$A?=V%2#X1J`P``QT0D+/[____IN_O_ +M_XU$)$@QTHE$)!")R"4``/[_QT0D%`$```#'1"0,`0```(E$)`2)5"0(B3PD +MZ/S___^%P`^%._S__X%\)$A?=V%2#X5%_O__C50D2,=$)`0``@``B10DZ/S_ +M__^$P`^$[@8``(%\)$A?=V%2#X4;_O__C50D2,=$)`0``@``B10DZ/S___^$ +MP`^%__W__X!\)%8`#[9'3`^5PL'B`H/@^PG0B$=,#[9'3H"\)$8"````#Y7" +M@^#^"=`/MM*(1TZ)5"0(B70D!,<$)&`#``#H_/___XM'.(M7/`4``/[_B<&# +MTO^!X0``_O^)^(E/%(E7&.CS^?__]D0D5!!T#(!/3(`/MD0D58A'2_9$)%<! M=!H/ME=-#[9$)%2#R@'`Z`*#XOV#X`()PHA73?9$)%<"=!D/ME=-#[9$)%2# MR@0!P(/B]X/@"`G"B%=-]D0D5PAT&@^V5TT/MD0D5(/*$,'@!(/BWX/@(`G" MB%=-]D0D5P1T&@^V5TT/MD0D5(/*0(/@`8/B?\'@!PG"B%=-QT0D-``````Q -M[8M$+&`+1"QD#X73`0``@\48@_U@=>J`?"0G``^$-P,``#'VBT0T8`M$-&1T -M-(M,-&B+1SB+7#1LBU<\@<$`"```@],`*<$9TP4``/[_@]+_)0``_O\!P1'3 -MB4PT:(E<-&R#QAB#_F!UNHU4)$B)%"3&A"1(`0```,=$)`0``@``Z/S___^- -M3"1(QT0D%`````")3"00QT0D#`$```#WV(B$)$@!``"+1SB+5SR)/"0%``#^ -M_X/2_R4``/[_B40D!(E4)`CH_/___\=$)#@`````QT0D/`````"-;"1(QT0D -M%`$```");"00QT0D#`$```"+1SB+5SR)/"0%`?C__X/2_P-$)#@35"0\B40D -M!(E4)`CH_/___X7`#X16`0``@T0D.`&+1"0X@U0D/`"#\`0+1"0\=:.+3"0T -MA<D/A,4#``"`3TQ`B3PDZ/S____IR/C__X3`#X3=]___Z3'X__^`?"1)4HVV -M``````^%+_O__XU4)$C'1"04`0```(E4)!#'1"0,`0```,=$)`0!````QT0D -M"`````")/"3H_/___X!\)$A0#X7T^O__@'PD24T/A>GZ__^-="8`Z0OX__^- -M;"1(QT0D!``"``")+"3H_/___X3`#X0$]___Z7S\___'1"0$!````(L'B00D -MZ/S___^%P(E$)#0/A*WW__^+1"Q@BU0L9(D$)(GXB50D!(M4+%B+3"Q<Z,[H -M__^%P(E$)#`/A.($``"+3"0TB7DDBUPD+(7;#X79````BT0L:(M4+&R)02B) -M42R+3"0PBU0D-(E*,(M,)#"+00R+41"+3"0TB4$4BT0D,(E1&(E(%.F9_?__ -MC40D2,=$)!0`````B40D$,=$)`P!````BT<XBU<\B3PD!0``_O^#TO\E``#^ -M_X/``8/2``-$)#@35"0\B40D!(E4)`CH_/___XM/.(M?/,<$)"`%``")R`4` -M`/[_B=J#TO\E``#^_X/``8/2``-$)#@35"0\@<$!^/__@]/_`TPD.!-<)#R) -M1"0,B50D$(E,)`2)7"0(Z/S____I"O[__X7V#X4M____BTPL:(M'.(M<+&R+ -M5SR!P0`(``"#TP`IP1G3!0``_O^#TO\E``#^_P'!BT0D-!'3B4@HB5@LZ?+^ -M__^%]@^$UOW__X"\)$<"````#X0@`0``,?:+1#1@"T0T9'0TBT<XBU<\B<$# -M3#1HB=,37#1L@<$`^/__@]/_!0``_O^#TO\E``#^_RG!&=.)3#1HB5PT;(/& -M&(/^8'6ZC6PD2,:$)$@!````QT0D!``"``")+"3H_/___\=$)!0`````QT0D -M#`$```#WV(B$)$@!``"-1"1(B40D$(M'.(M7/(D\)`4`^/__@]+_B40D!(E4 -M)`CH_/___\=$)$``````QT0D1`````"-5"1(QT0D%`$```")5"00QT0D#`$` -M``"+1SB+5SR)/"0%``#^_X/2_R4``/[_@\`!@](``T0D0!-4)$2)1"0$B50D -M".C\____A<`/A*X```"#1"1``8M$)$"#5"1$`(/P!`M$)$1UF.FH_/__QP0D -MKP(``.C\____C50D2(D4),:$)$<"```!QH0D2`$```#'1"0$``(``.C\____ +M[8M$+&`+1"QD#X7;`0``@\48@_U@=>J`?"0G``^$0P,``&8Q[8M$+&`+1"QD +M=#2+3"QHBT<XBUPL;(M7/('!``@``(/3`"G!&=,%``#^_X/2_R4``/[_`<$1 +MTXE,+&B)7"QL@\48@_U@=;J-5"1(B10DQH0D2`$```#'1"0$``(``.C\____ MC4PD2,=$)!0`````B4PD$,=$)`P!````]]B(A"1(`0``BT<XBU<\B3PD!0`` -M_O^#TO\E``#^_XE$)`2)5"0(Z/S____I9_[__XML)"CV12@$#X0)]___C;8` -M````Z2+\__^-3"1(B4PD$,=$)!0`````QT0D#`$```"+1SB+5SR)/"0%`?C_ -M_X/2_P-$)$`35"1$B40D!(E4)`CH_/___XM'.(M7/(M,)$"+7"1$!0'X__^# -MTO\!P1'3!?\'_O^#TO\E``#^_X/``8/2``-$)$`35"1$B4PD#(E<)!")1"0$ -MB50D",<$)%`%``#H_/___^F^_O__C90D2`(``(U$)%C'1"0(\````(V<)%`" -M``")1"0$C:PD0`,``(D4).C\____ZPN#PQ@YZP^$D0```(L#"T,$=.Z-3"1( -M,=+'1"04`0```(E,)!#'1"0,`0```(M#"(E4)`B)/"2)1"0$Z/S___^%P`^% -M9_/__XU$)$B)!"3H_/___X%\)$CT%GA:#X38````C4PD2,=$)!0`````B4PD -M$,=$)`P!````BT,(BU,,B3PDB40D!(E4)`CH_/___X7`#X1I____Z1+S__^- -M;"1(QT0D%`$```");"00QT0D#`$```"+1SB)/"0%``#^_S'2)0``_O^)1"0$ -MB50D".C\____A<`/A=/R__^-1"1(QT0D%`````")1"00QT0D#`$```"+1SB+ -M5SR)/"0%``#^_X/2_R4``/[_B40D!(E4)`CH_/___X7`#X60\O__Z<3W__^0 -MC70F`(M4)#2)%"3H_/___^F0\O__C50D2,=$)`0``@``B10DZ/S____I#___ -M_XVV`````%575E.#[$R+;"1@QT0D!`$```"+10R)!"3H_/___XU4)"R)QXM% -M!(E4)`2+5"1DB10D_U`\BX<L`@``BY<H`@``B4($B1"+!XM8#(/`##G#=0WK -M?XL'BQN#P`PYV'1TC;/8_?__@'X(`77IBT98BU4$.U`$#X0F`0``B40D!(DL -M).C\____@_@`?$AUQXU$)`R+502)1"0$BT9<B00D_U(\#[94)#8/MD0D%M#J -MT.B#X@&#X`$YPG^;?!@/MD0D&#A$)#AWCG(+#[9$)#DZ1"09=X&+4P2-AR@" -M``")0P2)GR@"``#'1R`!````B0*`CQP"```!BT4$B9<L`@``B4=0BU0D9(EO -M6(E77(M$)&B)1U2+1"0LBU0D,(E'.(E7/(E'%(E7&`^V1"0ZB$=*#[=$)$!F -MB4=(#[94)#8/MD=.@^(!`=*#X/T)T(A'3HU'8(D$),=$)`0H````Z/S___^- -M1"0LBU=0B40D!(M'7(D$)/]2/(M$)$3V1"0V`74)]H```0``!'4(B3PDZ/S_ -M__^#Q$R)^%M>7UW#C;8`````BY*`````A=(/A,S^__^+0`B)1"0$BT4(B00D -M_]+IQ/[__XVT)@````"-O"<`````4X/L"(M<)!"`>P@!=`JX_____X/$"%O# -M@#T``````G3MBT,XBU,\!0``_O^)P8/2_X'A``#^_XG8B4L4B5,8Z+SN__^` -M8TSTQT,<_____XD<).C\____,<#KN)"-="8`@^P<BT0D*(ET)!2+="0@B7PD -M&(M\)"2)7"00A<!X<8E$)`B)?"0$B30DZ/S___^%P(G#=$P/MD!,BW8,J`)U -M<(`]``````!T&*@!=6WV0TQ$=02`2TPDBX8D`0``A<!T8XE<)"2+="04QT0D -M(`(```"+7"00BWPD&(/$'.G\____BT8$B3PD_U!`C;8`````C480BUPD$(E\ -M)"2+="04B40D((M\)!B#Q!SI_/___Y")'"3H_/___^NGB1PDZ/S____KB8V& -M&`$``,>&)`$```$```#'AA@!````````B;8<`0``QX8@`0```````(E$)`2- -M1B2)!"3H_/___^E?____C;0F`````(V\)P````!55U93@^P\BT0D4(E$)!B+ -M:"2+>#"+=22%]@^$`@(``(GSQT0D'`````#K"HUT)@"+&X7;="`Y^W3VBU,( -MBT\(BT,$,T<$,=$)P77DB5PD'(L;A=MUX(M$)!R%P`^$^0```(M,)!R+1PR+ -M40R+21")1"0@B50D$(M7$(E,)!0YT8E4)"1R6G<&.40D$')2B7PD!(DL).C\ -M____@$U,$(M$)!B)!"3H_/___XEL)%"#Q#Q;7E]=Z?S___^-M@````"+1"0@ -MBU0D)(M."`-'!!-7"#-&!#'1"<%T0(LVA?9T#8M&%(7`=-F+-H7V=?.+3"0< -MQT<4`````(M!!`-!#(M1"!-1$(E'!(M$)!`I1PR)5PB+5"04&5<0ZX"+3"0< -MBU$$`50D$(M)"!%,)!2+1"00BU0D%(M,)!R)1@2+1@R)5@B+5A`#1PP35Q`K -M00P;41")1@R)5A#I,____S';ZP>0BS:%]G19BT84A<!U\XM6!(M."(M'!(E4 -M)#"+5PB)3"0TBTPD-(E$)"@#1PR)5"0L$U<0,T0D,#'1"<%T?HM$)#"+5"0T -MBTPD+`-&#!-6$#-$)"@QT0G!=:>)="0<ZZ&+1"0<QT<4`````(7`="B+3"0< -MBT$$BU$(B4<$BT$,B5<(BU$0`4<,$5<0B4PD!(DL).C\____A=L/A)S^__^+ -M0PR+4Q`!1PP15Q")7"0$B2PDZ/S____I?_[__XGSZ3[____'1Q0`````C;0F -M`````.EE_O__C70F`(V\)P````!5,>U75E.#["R+?"1,BT0D1(M4)$B%_XE$ -M)!")5"04#X0``0``BU0D3(MJ,(7M#X3Q````BT0D0(M8)(7;#X21````QT0D -M&`````#'1"0<`````.L,.40D3'0-BQN%VW1)BT,4A<!U[8M+$#E,)!2+4PQW -M#')J.50D$'9DC70F`(7`==>%[733BT4$BU4(BTL(`T4,$U40,T,$,=$)P76[ -MB5PD'(L;A=MUMXM4)!R%TG06BTPD'(M!#(M1$`-%#!-5$#E4)!1V,8M$)!B% -MP`^%?@```#'M@\0LB>A;7E]=PXMT)!B%]G0+BW0D&#M.$'>/<Q^)7"08ZX>- -MM"8`````<T2);"08BT0D&(7`=,:)]NM`.U8,#X-E____B5PD&)#I6____XM, -M)$"+7"04.5DL<J(/A_S^__^+="00.7$H<I/I[O[__SE$)!`/AWC____KL(M< -M)$#'1"0$!````(L#B00DZ/S___^%P(G%#X1D____B5@DBW0D0(M..(M>/('! -M``#^_XG(@]/_)0``_O^)1"0@@T0D(`&)7"0D@U0D)``QVXM6)(72=".-M@`` -M``"+0A2%P'00BT@HN`$````K3"0@T^`)PXL2A=)UXS')N`$```#3X(7#="J# -MP0&#^01U[<=%*`````#'12P`````B2PD,>WH_/___X/$+(GH6UY?7<.)RHG( -MP?H?`T0D(!-4)"2)12B)T0G!B54L=-&+="04BUPD$(M$)$")=1B+="08B5T4 -MBUPD$(M6!(M."(MT)!2)'"2)="0$Z.';__^%P'2=B6@4B44PBW0D0(!.3!") -M-"3H_/___^EH_O__B?964X/L!(MT)!"+1B2%P'4(ZT^+`(7`=$F+4!2%THUV -M`'3PBUH,A=MT+H![,`!T*#')ZPL/MD,P@\$!.<A^&3E4BTAU[P^V0S#'1(M( -M`````(/!`3G(?^>)%"3H_/___^NHB30DZ/S___^+5E"+1ER)!"3_4F2)="00 -M@\0$6U[I_/___XVV`````(V\)P````!64X/L!(MT)!"+7B2`9DR_A=MT,(M# -M%(7`=`B)!"3H_/___XL;A=MUZXM6)(72=!2+0A2%P'0'BT@,A<ET%(L2A=)U -M[(ET)!"#Q`1;7NG\____B00DZ/S___^+5B3KS9!55U93@^P,BT0D((MH$(E$ -M)`2-A;````")!"2-?0SH_/___XM=#,>%)`$````````Y^W4(ZR^+&SG[="F- -M@]C]__^`>`@!=>[V0$Q`=.CV@!P"```!=-^)!"3H_/___XL;.?MUUXM=%(UU -M%#GS=!*0C4/TB00DZ/S___^+&SGS=>^+=0PY_@^$K@```(UT)@"-AMC]__^` -M>`@$=@N+6`R%VP^$00$``(LV.?YUXXM=##G[#X2"````QD0D"P#K!Y"+&SGS -M=#Z-D]C]__^`>@@!=>[V0DP@=.B+0B2`8DS;A<!U#^G(````BP"%P`^$O@`` -M`(M(%(7)=.^+&\9$)`L!.?-UPHM=##G[=0OK+8UV`(L;.?MT)(V#V/W__XMH -M'(7M>!_V@!P"```!=>2)!"3H_/___XL;.?MUW(/$#%M>7UW#]H`<`@```73% -M#[90"(#Z!'9VBW`,A?9UM?:`2`$``$!UK(N09`$``(72=`4Y0@1UG0^V<#"% -M]GXD,<F+5(A(A=)T$X!Z"`1V#?:"2`$``$`/A7C___^#P0$Y\77>B00DZ/S_ -M___I9/___XUT)@"`?"0+``^%!?___XD4)(GVZ/S____I]O[__X#J`8UV``^% -M.O____9`3`*-M@`````/A"K____KMXD$))"-="8`Z/S____IK?[__XVV```` -M`%=64X/L$(M\)""-A[````")!"3H_/___X7`B<9T58M?#(EX$(/'#,<``0`` -M`,=`!#`A!``Y^XE&",=`#`````!U".LDBQLY^W0>C8/8_?__@'@(`77NB70D -M!(D$).C\____BQLY^W7BBP:#Z`&%P(D&=`>#Q!!;7E_#B70D((/$$%M>7^EW -M_?__C;0F`````(/L'(ET)!2+="0@B5PD$(E\)!B+7A#'0R``````]H8<`@`` -M&'5\BX:4````A<!U<@^V0RBH`75JJ`*->PAT%CE["'4$.1MT%(GPZ,'4___V -M0R@!=4V+2P@Y^756#[9&2CE#$'(2ZSN)\.C"T/__#[9&2CE#$',KB?#HDM#_ -M_X7`B<)T'@^W0&1F)?\P9CT$('75.1MU2_9&3@)TRX!+*`+KQ8M<)!"+="04 -MBWPD&(/$',.+>Q"%_W7IBQ&+002)0@2)$(M1#(GPB0F)202+7"00BW0D%(M\ -M)!B#Q!SI3]#__\9"9@&)%"3H_/___XGPZ!S0__^)PNEL____D(UT)@"#[!R) -M7"00BUPD((ET)!2)?"08B=B+>RCHX\___X![9`2+=Q")PG1XBT-PQT8D```` -M`(DRQT(0`````(E""(M&!(E:#(E6!,=#<)`E!`")0@2)$`^V1THY1A!S!XM& -M((7`=!"+7"00BW0D%(M\)!B#Q!S#C484QT8@`0```(E$)`2+!X/`+(D$).C\ -M____BUPD$(MT)!2+?"08@\0<PXGV]D-E,'0*]D8H`@^$>/___\9#9@&+="04 -MB5PD((M\)!B+7"00@\0<Z?S___^-="8`@^P<B70D$(MT)"")7"0,B7PD%(EL -M)!B)\.@2S___BUXHBWL0B<6#;Q`!#[9&9CP-#X2Z````/!%T3#P+=&(\$'1] -MBT4(B49PB30DZ/S___^+1R"%P'4;C4<4QT<@`0```(E$)`2+`X/`+(D$).C\ -M____BUPD#(MT)!"+?"04BVPD&(/$',.)V.BSTO__A<!U)@^V1F<\`7<>@\`! -MB$9GD,9&9@"+5PR-1PB);PR)10")502)*NN9#[9&9CP0=8.`?F0##X1Y____ -MBT,0B7,0B5PD!,<$)`,```")1"0(Z/S___^+1"0(B4,0Z5/___^0#[=&9&8E -M_P)F/0`"#X5`____@'YG`'4&QD9G`>N2QD9F$.NKD)"0D)"0D)"0D)"05E.+ -M'0````"+="0,A=MT+8M3#(U+##G*=0SK&XUT)@"+$CG*=!&-@MC]__\YL%@" -M``!U[%M>PXL;A=MUTS'`D.ORC;0F`````(V\)P````"`>`0`=0V!.'L!```/ -ME\`/ML##@3A[`0``#Y?`#[;`PU.)P0^V&@^V`#C8=!7K*9`/MED!#[9"`3C# -M=1"#P0&#P@&$P'7J,=);B=###[[3#[[`6RG"B=###[[0#[[#*<+KYHVT)@`` -M``"-O"<`````55=64X'LG````(LM`````(E$)!B)5"04A>UT03'VC7PD)(M= -M"(7;="V)?"00C78`BU,$B7PD!(M#"(D$)/]2'(!\)#<`=`D[="08=!^#Q@&+ -M&X7;==J+;0"%[77%,=N!Q)P```")V%M>7UW#BT0D%(7`=.N+5"04BP(/ME0D -M.SG0?-R+&X7;=-8IT(M4)!2)`HM$)!"+4P2)1"0$BT,(B00D_U(<@'PD-P!T -MR.NOB?955U:)SE.![)P```")1"0,H0````"+O"2P````QP$`````B50D"(7` -MQP<`````B40D$`^$D0```+W_____QT0D%`````"+5"00BUH(A=L/A(````"% -M_P^51"0;ZQ:-=@"+&P^V1"0[`0:+5"04`1>%VW1AC50D)(M#!(E4)`2+4PB) -M%"3_4!R+0P2+D(0```"%TG03@'PD&P!T#(M#"(D$)/_2B40D%(!\)#<`=`_' -M!@````"#Q0''!P`````[7"0,=9V+1"0(B2B!Q)P```!;7E]=PXM$)!"+`(7` -MB40D$`^%7____^OAD(VT)@````!55U8Q]E.![(P```"+/0````"%_W0OC6PD -M%(M?"(7;=!Z+4P2);"0$BT,(B00D_U(<BQN`?"0G`8/>_X7;=>*+/X7_==6! -MQ(P```")\%M>7UW#C;0F`````(V\)P````!55XG/5E.![+P```")5"08C50D -M&.CG_?__B40D$(M4)!"X_____X72#X3Y````BT0D$(MP##'`Q@0X`(/``8/X -M1'7TBU0D$(M,)!"+0@2-5"0<B50D!(M1"(D4)/]0'(!\)"X/=@7&1"0N#XM$ -M)!"+3"00BU`$C80DM````(E$)`B+1"08B40D!(M!"(D$)/]27(7`#X28```` -MBUX,C6X,.>L/A'T```#&1"07`.L'D(L;.>MT;XVSV/W__X!^"`%U[HM$)!`[ -M1EAUY8V,))0```"+5E")3"0$BT9<B00D_U(\]H0DG@````)UQ`^VA"2@```` -M.T0D&'6V#[:$)*$````Z1"0N<Z@/MM"+AE@"``"`1"07`8E$EP@/MD0D%SA$ -M)"YUBS'`@<2\````6UY?7<.+A"2X````B4<$BX0DM````(D'Z5#___^-M@`` -M``"#Z`4QTH/X!W<,_R2%3!@``+H!````B=##N@@```")T,.Z`@```(G0P[H' -M````B=##N@,```")T,.Z!````(G0P[H%````B=##N@8```")T,/K#9"0D)"0 -MD)"0D)"0D)!6B=93#[:('`(``(G##[92"(G(@_`!@^`!]L(@=`.#R"#VP01T -M`X/(`H/A`G0#@\@$@^(0=`.#R!`/ME8*]L(!=`.#R$"#X@)T`@R`#[933/;" -M!'0%#0```(#VP@)T!0T```(`@^(!=`4-```!`/9#3@%T!0T```0`6U[#C70F -M`%57O^@#``!64X/L+(M$)$"+F%`!``"+B$P!```/MF@P#ZS9"XG(P>L+]^=I -M\^@#``")P8T<%HMT)$"+5AB+1A2)#"2)7"0$B>L/K-`+P>H+B40D"(E4)`SH -M_/___XM.!`^V208IR[D*````]^/WX87MB40D)`^.D@```#'VC78`BT0D0(M< -ML$B%VW1V]H,<`@```71M@'L(!'9G]H-(`0``<'1>BU,$#[9#,`^V4@8IT(N3 -M4`$``(T$@(T\`(N#3`$```^LT`MIR.@#``"+0Q3!Z@N+4Q@/K-`+P>H+B40D -M&(G(BTPD)(E4)!PQTO=T)!@/K_B%R70&.7PD)'8$B7PD)(/&`3GU#X5S____ -MBT0D)#T0)P``=@6X$"<``(/$+%M>7UW#C70F`(V\)P````"#["R+1"0PB5PD -M'(ET)"")?"0DB6PD*(NH9`$```^V168\`@^%J@```(M%"(M0%(M(&(M%!(E4 -M)!"+="00B4PD%(M\)!2+2!2+6!BX$"<``"G.&=\/K/X+P>\+B?H)\G1.@'T4 -M`'5<BT5<BU5@*<@9V@^LT`NYZ`,``,'J"VG:Z`,``/?AB70D"(E\)`R-%!.) -M!"2)5"0$Z/S___^Y"@```/?A/1`G``!V!;@0)P``BUPD'(MT)""+?"0DBVPD -M*(/$+,.+1"00BU0D%"M%7!M58.N>/`,/A)4```"`?10`=#Z+10B+6!B^Z`,` -M`(M(%(G:B<@K15P;56`/K-D+P>L+#ZS0"\'J"VGZZ`,``/?FB4PD"(E<)`R- -M%!?I<?___XM=8+_H`P``BTU<#ZS9"XG(]^?!ZPMI\^@#``")P8M%"(T<%HM0 -M&(M`%(D,)(E<)`0/K-`+P>H+B40D"(E4)`SH_/___[D*````]^'I,____X!] -M%`!T"(M%!.EF____BUU@O^@#``"+35P/K-D+B<CWY\'K"VGSZ`,``(G!BT4$ -MC1P6ZY^-M@````"-OP````!64XM(#(G#A<ET,P^V03"$P`^V\'08,=(Y64AT -M%C'2ZP8Y7)%(=`R#P@$Y\G7S6S'`7L.+021;7H/``0'0PXM`)%M>PXVV```` -M`(V_`````%57B==64X/L!(D$)`^V:#"%[7Y3,?:+!"2+5+!(A=)T/_:"'`(` -M``%T-H!Z"`1V00^V6C"%VWXH,<F-M@````"+1(I(A<!T#O:`'`(```%T!3EX -M)'03@\$!.=EUXXUV`(/&`3GN=:\QP(/$!%M>7UW#.7HD=>J)T.OOC;8````` -M55=64X/L0(E$)!B+7"08B%0D%P^V1"18#[94)%R)3"00A=N(1"0/B%0D#@^$ -M3P$``(M,)!B`>0@'#Y3`@'PD%P</E,*$P`^%&`$``(32#X4L`0``BTPD$(7) -M#X0G`P``QT0D'/____\Q_S'MQT0D(/_____'1"0X`````(UT)@"+5"0XBTPD -M5(L$D8D$).C\____A<")PP^$MP```(M4)!B+`#L"#X6I````@'L(`0^%GP`` -M`(M$)!B)VNC`_O__QT0D+`````"%P(G&=`>+2#")3"0LBULDA=L/A!4!``") -MV#'2,<F#>!0`=`:#P@&#T0"+`(7`=>Z#^0!W"8/Z`P^&[P```,=$)"0````` -MQT0D*`````#'1"0<`````,=$)"```````WPD)(M4)!`3;"0H@T0D.`$Y5"0X -M#X4_____#[9,)`^#X0^`?"07!P^&QP$``#'_,>V#Q$")^(GJ6UY?7<.+3"08 -M#[9!,#P!#X3@_O__A-)T"(3`#X7[`0``BUPD$(7;#X3[`0``,=LQ_S'MQT0D -M'/_____'1"0@_____^LY@'@(`76JBU`LBT`HB=$)P72>`<<1U3E4)"!R$'<& -M.40D''8(B40D'(E4)""#PP$[7"00#X1D____BU0D5(L$FHD$).C\____A<!U -MM.E?____A?;'1"0D`````,=$)"@`````=`Z+1A2+5AB)1"0DB50D*(7;#X26 -M````QT0D,`````#K)(VT)@````"+0Q0YQG00BU0D+(72=!Z%P`^$H0```(L; -MA=MT-H7VD'7>BU0D+(M#%(72=>*%P'7FBU,0.U0D*(M##'+:=P8[1"0D=M*+ -M&XE$)"2)5"0HA=MURHM$)"R%P'0JBW0D,(7V="*+3"0PBT$,BU$0BTPD+`-! -M#!-1$#E4)"AW"')B.40D)')<BT0D*#E$)"`/@F/^__]W#HM4)"0Y5"0<#X93 -M_O__BT0D)(M4)"B)1"0<B50D(.D^_O__BTPD+(M!!(M1"`-!#!-1$(M+"#-# -M!#'1"<$/A5G___^)7"0PZ5#___^)1"0DB50D*.N:#[9$)!?_)(5L&```@WPD -M$`$/AB+^__^#?"00`HM\)!R+;"0@#X83_O__#[;!NO____^)P8M$)!S3XHG3 -MT6PD$"'0BU0D((M,)!#!^Q\AVHG6#Z_Q]^&)QXTL%NG=_?__BU0D$(72#X7Z -M````,?\Q[<=$)!S_____QT0D(/_____IH?W__X-\)!`##X:I_?__#[;!NO__ -M__^)P8M$)!S3XHM,)!")T\'['R'0BU0D((/I`B':ZYF#?"00`@^&>/W__P^V -MP;K_____B<&+1"0<T^*+3"00B=/!^Q\AT(M4)""#Z0$AVNEE____@'PD#@$/ -MAC$!``"`?"0.`@^&#/___P^V="0.,=*+1"00]_:%THG##X4B_?__@^L!#XX9 -M_?__@^X!]^Z)Q@^VP8G!BT0D'(G7NO_____3XHG3(="+5"0@P?L?B<$/K\^) -M1"0$(=J)TP^OWHE4)`CWY@'9B<>-+!'IU_S__XM!2#'VA<!U'^G%_/__.70D -M$`^&Y_S__XM4)!B+1+)(A<`/A*O\__^+3"14BU@DBP2QB00DZ/S___\YPW05 -MBU0D&(/&`0^V0C`Y\`^&KOS__^N[BTPD&`^V03`/MM`Y5"00B50D-`^"9_S_ -M_X3`=':+04@Q]H7`=2SI5?S__Y"+3"08@\8!#[9!,`^VT#GRB50D-'91BTPD -M&(M$L4B%P`^$+OS__XM4)%2+6"2+!+*)!"3H_/___SG#=,3I$_S__P^VP;K_ -M____B<&+1"0<T^*+3"00B=/!^Q\AT(M4)"`AVND#_O__BTPD&`^VP(MT@42+ -M>12+:1B+1B2+6"2%VW4(ZR^+&X7;="F+0Q2%P)!U\HM.,(M!!(M1"`-!#!-1 -M$(M+"#-#!#'1"<%UUP-[#!-K$(M4)#0Y5"00#X:7^___BTPD5(T<D>LZC;8` -M````BTPD&(L`.P$/A7;[__^`>@@!#X5L^___`WHHBT0D$!-J+(/#!(-$)#0! -M.40D-`^$5/O__XL#B00DZ/S___^%P(G"=;SI._O__XVT)@````#SPXVT)@`` -M``"-O"<`````5HLU1`(``%.+3"0,C58!B=#!^!_!Z!R-'`*#XP\IP[C_____ -M.QU``@``=&V+`6O6+(F"8`(``(M!!(F"9`(``(M!"(F":`(``(M!#(F";`(` -M`(M!$(F"<`(``(M!%(F"=`(``(M!&(F">`(``(M!'(F"?`(``(M!((F"@`(` -M`(M!)(F"A`(``(M!*(D=1`(``(F"B`(``#'`6U[#C70F`(/L/(M4)$")7"0T -MBTPD2(ET)#B+7"1,#[=T)%`/MD((/`%T,CP$=$B-5"04@WPD1`$9P(/`&8A$ -M)!"-1"0(9HER"(D$).C\____BUPD-(MT)#B#Q#S#BX)8`@``C50D%(E,)!2) -M7"08B40D#.N^B?:+0C"+4B0#2`2+DE@"```36`B)3"04B50D#(U4)!2)7"08 -MZYB-M@````"-OP````!64X/L),9$)!P&BU@(A=MT(HUT)!R+0PB)1"0@BT,$ -MB70D!,<$)`````#_4&"+&X7;=>*#Q"1;7L.-M"8`````55=64X/L!(M4)!B+ -M;"0<BT(H#[=:4(N(9`$``(G?BS#!YPF`>10`=`KV0F4$#X6*````#[=16L'B -M"8N.8`$#`(7_B[9D`0,`B30D=%R)T#'2]_:-!$")TXTT@8U-$.LOBP8!V(E! -M^(L$)"G8.?B)0?!V`HGX*<>)S87_B4'PQT'T`````(U)$'0?@\8,,=N+;"0@ -MA>UUR3'2B=@#1@035@B)0?B)4?SKOL=%]`$```"#Q`2X`0```%M>7UW##[=1 -M6`^W05HIPBG:P>()Z6G____K#9"0D)"0D)"0D)"0D)!5B=575E.#[`2)!"2` -M>C``=&DQ_^LFBQ0DBT8PBTHPBU`(BT`$BUD(,T$$,=,)PW0T#[9%,(/'`3GX -M?C^+=+U(A?9T[8!^"`1VS(L$)(GRZ*S___^$P'39@\0$N`$```!;7E]=PXL4 -M)(M&)#M")'3H#[9%,(/'`3GX?\&#Q`0QP%M>7UW#C70F`(V\)P````!5B=57 -MB<=64X!X,`!T0#'VZQ2)ZHG8Z.7___\/MD<P@\8!.?!^*(M<MTB%VW3M@'L( -M!'?>B>J)V.@S____A,`/E$,T#[9',(/&`3GP?]A;7E]=PXVV`````(V\)P`` -M``!64XG3@'@(`70%6S'`7L.%TG11BY)D`0``A=)T1XMR!#G>=$2+4"2%TG0Q -MD(UT)@"+0A2%P'0?A=MU"9"-="8`Z\B)R(M(#(7)=?<YV(UV`'0$.?!UM(L2 -MA=)UU%NX`0```%[#B=[KO(MR".NWC78`BT0D!(M0$(72>`:#>!0#=P?'0"S^ -M____\\.-M@````"+1"0$@7@0QP```'8)@7@4QP```'<'QT`L_O____/#D(M$ -M)`2!>!#'````=@F+2!2%R7@"\\/'0"S^____PXGVBT0D!(M0$(72>`:#>!0# -M=P?'0"S^____\\.-M@````"+1"0$@W@0`W8&@W@42W<'QT`L_O____/#C;0F -M`````(M$)`2#>!`#=@:#>!17=P?'0"S^____\\.-M"8`````BT0D!(-X$`-V -M!H-X%$-W!\=`+/[____SPXVT)@````"+1"0$@W@0!W8&@W@4#W<'QT`L_O__ -M__/#C;0F`````(M$)`2#>!`'=@:#>!1#=P?'0"S^____\\.-M"8`````BT0D -M!(-X$`-V!H-X%`-W!\=`+/[____SPXVT)@````"+1"0$@W@0!W8)@7@4_P`` -M`'<'QT`L_O____/#C70F`(M$)`2#>!`'=@F!>!2C#```=P?'0"S^____\\.- -M="8`BT0D!(-X$`=V"8%X%"<-``!W!\=`+/[____SPXUT)@"+1"0$@W@0!W8) -M@7@4JP```'<'QT`L_O____/#C70F`(M$)`2#>!`+=@:#>!0G=P?'0"S^____ -M\\.-M"8`````BU0D!(M"&(-Z$`.+`'8,C02%!````#E"%','QT(L_O____/# -MC;8`````C;\`````BU0D!(M"&(-Z$`.+`'8,C02%!````#E"%','QT(L_O__ -M__/#C;8`````C;\`````4X/L!(M<)`R+0QB#>Q`#BP!V"8%[%*T```!W#,=# -M+/[___^#Q`1;PXD$).C\____A<!TZ(/$!%O#C;0F`````%.#[`2+7"0,BT,8 -M@WL0`XL`=@F!>Q37````=PS'0RS^____@\0$6\.)!"3H_/___X7`=.B#Q`1; -MPXVT)@````!3@^P$BUPD#(M#&(-[$`.+`'8)@7L4^0```'<,QT,L_O___X/$ -M!%O#B00DZ/S___^%P'3H@\0$6\.-M"8`````@^P,B5PD!(M<)!")="0(BT,8 -M@WL0"(M+'(LP=@:#>Q0$?Q/'0RS^____BUPD!(MT)`B#Q`S##[90"(M`!(32 -MB0&(401T(($YPP$``';5B30DZ/S___^%P'3)BUPD!(MT)`B#Q`S#/<,!``!V -MMNO?D(/L#(ET)`B+="00B5PD!(%^$+,```!V!H-^%`=W$\=&+/[___^+7"0$ -MBW0D"(/$#,.+1AB+&(D<)(/K`>C\____@_O]=]^%P'34@'@(!(GV=LR+B&0! -M``"%R77"Z\>)]H/L$(ET)`B+="04B5PD!(E\)`R#?A`(=@:#?A0'=Q?'1BS^ -M____BUPD!(MT)`B+?"0,@\00PXM^&(L?B1PD@^L!Z/S___^#^_UW$87`=`:` -M>`@$=Q7'1BS^____C4<$Z(SI__\L`76WZ[R+F&0!``"%VW7AZ^:-=@"-O"<` -M````@^P4B7PD#(M\)!B)7"0$B70D"(EL)!"+5QB+*HT$K00````Y1Q!R2HMW -M%(7V>$.`/0`````"=#HQ]H7M=0N)]NLW.>YT,XM7&(/&`8L<LHD<).C\____ -MA<!T%XD<).C\____B<*+`#M'"'4A]D),`770QT<L_O___XM<)`2+="0(BWPD -M#(ML)!"#Q!3#QT<L_/___^OCC78`C;PG`````(/L%(E\)`R+?"08B5PD!(ET -M)`B);"00@7\0AP```(MW&'8-@W\4`W<GC;0F`````,='+/[___^+7"0$BW0D -M"(M\)`R+;"00@\04PY"-="8`#[9&`3P(=]@Q[83`=1Z)]NO5B1PDZ/S___^+ -M`#M'")!U(8/%`8GH.$8!=KN)Z@^VPHM<AFB)'"3H_/___X7`=='KG<='+/S_ -M__^-M@````#KE8VT)@````"-O"<`````BT0D!(-X$`-V!H-X%`-_!\=`+/[_ -M___SPXVT)@````"#[`BZ$````(M,)`R)'"2)="0$BT$8BU@(BW`,BT$0A=MT -M`XU6$#G"=PN%VXM!%'4+.<9V!\=!+/[___^+'"2+="0$@\0(PXGVC;PG```` -M`(/L%(E\)`R+?"08B5PD!(ET)`B);"00@7\0KP```(MW&'8-@W\4`W<GC;0F -M`````,='+/[___^+7"0$BW0D"(M\)`R+;"00@\04PY"-="8`#[9&`3P0=]@Q -M[83`=1Z)]NO5B1PDZ/S___^+`#M'")!U(8/%`8GH.$8!=KN)Z@^VPHM<AG") -M'"3H_/___X7`=='KG<='+/S___^-M@````#KE8VT)@````"-O"<`````@^P4 -MB5PD!(M<)!B)="0(B7PD#(EL)!"#>Q`$BW,8?@:#>Q0#=QO'0RS^____BUPD -M!(MT)`B+?"0,BVPD$(/$%,.)\.BXYO__+`%UV@^V1@T\0'?2,>V$P'4?Z]&- -M="8`B3PDZ/S___^+`#M#"'4A@\4!B>@X1@UVM(GJ#[;"BWR&?(D\).C\____ -MA<!UTNN6QT,L_/___^N4C;0F`````(/L%(E<)`2+7"08B70D"(E\)`R);"00 -MBWL8@7L0LP```(LW=@:#>Q0#=QO'0RS^____BUPD!(MT)`B+?"0,BVPD$(/$ -M%,.)-"3H_/___X7`=-F)-"3H_/___XL`.T,(=`G'0RS\____Z\B#QP0/MD<! -M/!!WMC'MA,!U'NNUC78`B30DZ/S___^+`#M#"'72@\4!B>@X1P%VF8GJ#[;" -MBW2'<(DT).C\____A<!UTNEX____C;8`````C;PG`````(/L%(E<)`2+7"08 -MB70D"(E\)`R);"00BWL8@WL0"(LW=@:#>Q0#=QO'0RS^____BUPD!(MT)`B+ -M?"0,BVPD$(/$%,.)-"3H_/___X7`=-F)-"3H_/___XL`.T,(=`G'0RS\____ -MZ\B#QP2)^.@OY?__+`%ULP^V1PT\0'>K,>V$P'4;ZZJ)-"3H_/___XL`.T,( -M=<J#Q0&)Z#A'#7:1B>H/ML*+=(=\B30DZ/S___^%P'72Z7#___^0C;0F```` -M`(M$)`2+4!"%TG@&@W@4*W<'QT`L_O____/#C;8`````@^P,B5PD!(M<)!") -M="0(BT,8@WL0"(LP=C:+2Q2%R7@OB30DZ/S___^%P'0CB30DZ/S___^+`#M# -M"'0;QT,L_/___XM<)`2+="0(@\0,PY#'0RS^____BUPD!(MT)`B#Q`S#C;8` -M````C;PG`````(/L#(E<)`2+7"00B70D"(M#&(-[$`B+,'8VBT,4A<!^+XDT -M).C\____A<!T(XDT).C\____BP`[0PAT&\=#+/S___^+7"0$BW0D"(/$#,.0 -MQT,L_O___XM<)`2+="0(@\0,PXVV`````(V\)P````"#[`R)7"0$BUPD$(ET -M)`B+0QB#>Q`(BS!V-HM#%(7`>"^)-"3H_/___X7`=".)-"3H_/___XL`.T,( -M=!O'0RS\____BUPD!(MT)`B#Q`S#D,=#+/[___^+7"0$BW0D"(/$#,.-M@`` -M``"-O"<`````@^P,B5PD!(M<)!")="0(BT,8@WL0#8LP=C:+0Q2%P'@OB30D -MZ/S___^%P'0CB30DZ/S___^+`#M#"'0;QT,L_/___XM<)`2+="0(@\0,PY#' -M0RS^____BUPD!(MT)`B#Q`S#C;8`````C;PG`````(/L#(E<)`2+7"00B70D -M"(M#&(-[$`V+,'8VBT,4A<!^+XDT).C\____A<!T(XDT).C\____BP`[0PAT -M&\=#+/S___^+7"0$BW0D"(/$#,.0QT,L_O___XM<)`2+="0(@\0,PXVV```` -M`(V\)P````"#[`R)7"0$BUPD$(ET)`B+0QB#>Q`-BS!V-HM#%(7`>"^)-"3H -M_/___X7`=".)-"3H_/___XL`.T,(=!O'0RS\____BUPD!(MT)`B#Q`S#D,=# -M+/[___^+7"0$BW0D"(/$#,.-M@````"-O"<`````@^P,B5PD!(M<)!")="0( -MBT,8@WL0`XLP=EN+0Q2%P'A4B30DZ/S___^%P'1(B30DZ/S___^)PHL`.T,( -M=!/'0RS\____BUPD!(MT)`B#Q`S#@'H(!'8>BX)D`0``A<!T%(!X9P!U#@^V -M@DD!``"#X!@\"'0'QT,L_O___XM<)`2+="0(@\0,PY"-M"8`````@^P,B5PD -M!(M<)!")="0(BT,8@WL0`XLP=CV+4Q2%TG@VB30DZ/S___^%P'0JB30DZ/S_ -M__^)PHL`.T,(=!/'0RS\____BUPD!(MT)`B#Q`S#@'H(`70'QT,L_O___XM< -M)`2+="0(@\0,PXVV`````(/L#(E<)`2+7"00B70D"(M#&(-[$`.+,'8]BTL4 -MA<EX-HDT).C\____A<!T*HDT).C\____B<*+`#M#"'03QT,L_/___XM<)`2+ -M="0(@\0,PX!Z"`%T!\=#+/[___^+7"0$BW0D"(/$#,.-M@````"#[!")7"0$ -MBUPD%(ET)`B)?"0,BT,8@WL0!XLPBW@$=G^+0Q2%P'AXB30DZ/S___^%P'1L -MB3PDZ/S___^%P(GV=%Z)-"3H_/___XD\)(G&Z/S___^)PHL&.T,(=!?'0RS\ -M____BUPD!(MT)`B+?"0,@\00PSL"=>6+1@2`>`8`=!^`>@@!=1F+1D`+1D1T -M$8N&9`$``(7`=`Z`>&<`=`B0QT,L_O___XM<)`2+="0(BWPD#(/$$,.)]HV\ -M)P````"#[`R)7"0$BUPD$(ET)`B+0QB#>Q`'BS!V/8M#%(7`>#:)-"3H_/__ -M_X7`="J)-"3H_/___XG"BP`[0PAT$\=#+/S___^+7"0$BW0D"(/$#,.`>@@$ -M=P?'0RS^____BUPD!(MT)`B#Q`S#C;8`````@^P,B5PD!(M<)!")="0(BT,8 -M@WL05XLP=D:+0Q2%P'@_B30DZ/S___^%P'0SB30DZ/S___^)PHL`.T,(=!/' -M0RS\____BUPD!(MT)`B#Q`S#@'H(!'8)BT(,A<!T"8GVQT,L_O___XM<)`2+ -M="0(@\0,PXVV`````(V\)P````"#[`R)="0(BW0D$(E<)`2+1AB#?A!#BQAV -M.(M&%(7`>#&%VW0TB1PDZ/S___^%P)!T((D<).C\____B<*+`#M&"'0)QT8L -M_/___^L-@'H(`70'QT8L_O___XM<)`2+="0(@\0,PXUT)@"-O"<`````@^P, -MB70D"(MT)!")7"0$BT88@WX0"(L8=CB+1A2%P'@QA=MT-(D<).C\____A<"0 -M="")'"3H_/___XG"BP`[1@AT"<=&+/S____K#8!Z"`%T!\=&+/[___^+7"0$ -MBW0D"(/$#,.-="8`C;PG`````(M$)`2+2!"%R7@)BU`4A=)X`O/#QT`L_O__ -M_\.-="8`BT0D!(M0$(72>`:#>!0K=P?'0"S^____\\.-M@````"+1"0$BT@0 -MA<EX!H-X%']W!\=`+/[____SPXVV`````(/L$(E\)`R+?"04B70D"+X0```` -MB5PD!(M?&(M7$`^V0PL/MDL,P>`)@/D"=#(YUG<1@.D!BU<4OA````!T43G6 -M=B+'1RS^____BUPD!(MT)`B+?"0,@\00PXVV`````(UP$.O)BP.)!"3H_/__ -M_X7`=-"+`XD$).C\____B<*+`#M'"'03QT<L_/___^N[D(UP$#G6=ZSKS(!Z -M"`&-=@!UH>NFC;8`````C;\`````@^P0B7PD#(M\)!2)="0(OA0```")7"0$ -MBU\8BU<0#[=#$`^V2Q+!X`F`^0)T,CG6=Q&`Z0&+5Q2^%````'11.=9V(L=' -M+/[___^+7"0$BW0D"(M\)`R#Q!##C;8`````C7`4Z\F+`XD$).C\____A<!T -MT(L#B00DZ/S___^)PHL`.T<(=!/'1RS\____Z[N0C7`4.=9WK.O,@'H(`8UV -M`'6AZZ:-M@````"-OP````"#[`R)7"0$BUPD$(ET)`B+0QB#>Q`#BS!V-HM# +M_O^#TO\E``#^_XE$)`2)5"0(Z/S____'1"0X`````,=$)#P`````C6PD2,=$ +M)!0!````B6PD$,=$)`P!````BT<XBU<\B3PD!0'X__^#TO\#1"0X$U0D/(E$ +M)`2)5"0(Z/S___^%P`^$70$``(-$)#@!BT0D.(-4)#P`@_`$"T0D/'6CBTPD +M-(7)#X34`P``@$],0(D\).C\____Z13Z__^$P`^$)/G__XVT)@````#I=_G_ +M_X!\)$E2C;8`````#X7_^___C40D2,=$)!0!````B40D$,=$)`P!````QT0D +M!`$```#'1"0(`````(D\).C\____@'PD2%`/A<3[__^`?"1)30^%N?O__XUT +M)@#I2_G__XU,)$C'1"0$``(``(D,).C\____A,`/A$+X___I=?S__\=$)`0$ +M````BP>)!"3H_/___X7`B40D-`^$\_C__XM$+&"+5"QDB00DB?B)5"0$BU0L +M6(M,+%SH#NK__X7`B40D,`^$X@0``(M,)#2)>22+1"0HA<`/A=D```"+1"QH +MBU0L;(E!*(E1+(M,)#"+5"0TB4HPBTPD,(M!#(M1$(M,)#2)012+1"0PB5$8 +MB4@4Z9']__^-1"1(QT0D%`````")1"00QT0D#`$```"+1SB+5SR)/"0%``#^ +M_X/2_R4``/[_@\`!@](``T0D.!-4)#R)1"0$B50D".C\____BT\XBU\\QP0D +M2`L``(G(!0``_O^)VH/2_R4``/[_@\`!@](``T0D.!-4)#R!P0'X__^#T_\# +M3"0X$UPD/(E$)`R)5"00B4PD!(E<)`CH_/___^D#_O__BT0D+(7`#X4I____ +MBTPL:(M'.(M<+&R+5SR!P0`(``"#TP`IP1G3!0``_O^#TO\E``#^_P'!BT0D +M-!'3B4@HB5@LZ>[^__^+7"0LA=L/A,?]__^`O"1'`@````^$(`$``#'MBT0L +M8`M$+&1T-(M'.(M7/(G!`TPL:(G3$UPL;('!`/C__X/3_P4``/[_@]+_)0`` +M_O\IP1G3B4PL:(E<+&R#Q1B#_6!UNHUL)$C&A"1(`0```,=$)`0``@``B2PD +MZ/S____'1"04`````,=$)`P!````]]B(A"1(`0``C40D2(E$)!"+1SB+5SR) +M/"0%`/C__X/2_XE$)`2)5"0(Z/S____'1"1``````,=$)$0`````C50D2,=$ +M)!0!````B50D$,=$)`P!````BT<XBU<\B3PD!0``_O^#TO\E``#^_X/``8/2 +M``-$)$`35"1$B40D!(E4)`CH_/___X7`#X2F````@T0D0`&+1"1`@U0D1`"# +M\`0+1"1$=9CIF?S__\<$)'4#``#H_/___XU4)$B)%"3&A"1'`@```<:$)$@! +M````QT0D!``"``#H_/___XU,)$C'1"04`````(E,)!#'1"0,`0```/?8B(0D +M2`$``(M'.(M7/(D\)`4``/[_@]+_)0``_O^)1"0$B50D".C\____Z6?^___V +M1B@$#X3:]___B?;I&_S__XU,)$B)3"00QT0D%`````#'1"0,`0```(M'.(M7 +M/(D\)`4!^/__@]+_`T0D0!-4)$2)1"0$B50D".C\____BT<XBU<\BTPD0(M< +M)$0%`?C__X/2_P'!$=,%_P?^_X/2_R4``/[_@\`!@](``T0D0!-4)$2)3"0, +MB5PD$(E$)`2)5"0(QP0D>`L``.C\____Z<;^__^-E"1(`@``C40D6,=$)`CP +M````C9PD4`(``(E$)`2-K"1``P``B10DZ/S____K"X/#&#GK#X21````BP,+ +M0P1T[HU,)$@QTL=$)!0!````B4PD$,=$)`P!````BT,(B50D"(D\)(E$)`3H +M_/___X7`#X6M]/__C40D2(D$).C\____@7PD2/06>%H/A-@```"-3"1(QT0D +M%`````")3"00QT0D#`$```"+0PB+4PR)/"2)1"0$B50D".C\____A<`/A&G_ +M___I6/3__XUL)$C'1"04`0```(EL)!#'1"0,`0```(M'.(D\)`4``/[_,=(E +M``#^_XE$)`2)5"0(Z/S___^%P`^%&?3__XU$)$C'1"04`````(E$)!#'1"0, +M`0```(M'.(M7/(D\)`4``/[_@]+_)0``_O^)1"0$B50D".C\____A<`/A=;S +M___IP/?__Y"-="8`BU0D-(D4).C\____Z=;S__^-5"1(QT0D!``"``")%"3H +M_/___^D/____C;8`````55=64X/L3(ML)&#'1"0$`0```(M%#(D$).C\____ +MC50D+(G'BT4$B50D!(M4)&2)%"3_4#R+ARP"``"+ER@"``")0@2)$(L'BU@, +M@\`,.<-U#>M_BP>+&X/`##G8='2-L]C]__^`?@@!=>F+1EB+500[4`0/A"8! +M``")1"0$B2PDZ/S___^#^`!\2'7'C40D#(M5!(E$)`2+1ER)!"3_4CP/ME0D +M-@^V1"06T.K0Z(/B`8/@`3G"?YM\&`^V1"08.$0D.'>.<@L/MD0D.3I$)!EW +M@8M3!(V'*`(``(E#!(F?*`(``,='(`$```")`H"/'`(```&+102)ERP"``") +M1U"+5"1DB6]8B5=<BT0D:(E'5(M$)"R+5"0PB4<XB5<\B4<4B5<8#[9$)#J( +M1TH/MT0D0&:)1T@/ME0D-@^V1TZ#X@$!TH/@_0G0B$=.C4=@B00DQT0D!"@` +M``#H_/___XU$)"R+5U")1"0$BT=<B00D_U(\BT0D1/9$)#8!=0GV@``!```$ +M=0B)/"3H_/___X/$3(GX6UY?7<.-M@````"+DH````"%T@^$S/[__XM`"(E$ +M)`2+10B)!"3_TNG$_O__C;0F`````(V\)P````!3@^P(BUPD$(!["`%T"KC_ +M____@\0(6\.`/0`````"=.V+0SB+4SP%``#^_XG!@]+_@>$``/[_B=B)2Q2) +M4QCH_.___X!C3/3'0QS_____B1PDZ/S___\QP.NXD(UT)@"#[!R+1"0HB70D +M%(MT)"")?"08BWPD)(E<)!"%P'AQB40D"(E\)`2)-"3H_/___X7`B<-T3`^V +M0$R+=@RH`G5P@#T``````'08J`%U;?9#3$1U!(!+3"2+AB0!``"%P'1CB5PD +M)(MT)!3'1"0@`@```(M<)!"+?"08@\0<Z?S___^+1@2)/"3_4$"-M@````"- +M1A"+7"00B7PD)(MT)!2)1"0@BWPD&(/$'.G\____D(D<).C\____ZZ>)'"3H +M_/___^N)C888`0``QX8D`0```0```,>&&`$```````")MAP!``#'AB`!```` +M````B40D!(U&)(D$).C\____Z5____^-M"8`````C;PG`````%575E.#[#R+ +M1"10B40D&(MH)(MX,(MU)(7V#X0"`@``B?/'1"0<`````.L*C70F`(L;A=MT +M(#G[=/:+4PB+3PB+0P0S1P0QT0G!=>2)7"0<BQN%VW7@BT0D'(7`#X3Y```` +MBTPD'(M'#(M1#(M)$(E$)"")5"00BU<0B4PD%#G1B50D)'):=P8Y1"00<E*) +M?"0$B2PDZ/S___^`34P0BT0D&(D$).C\____B6PD4(/$/%M>7UWI_/___XVV +M`````(M$)""+5"0DBTX(`T<$$U<(,T8$,=$)P71`BS:%]G0-BUX4A=MTV8LV +MA?9U\XM,)!S'1Q0`````BT$$`T$,BU$($U$0B4<$BT0D$"E'#(E7"(M4)!09 +M5Q#K@(M,)!R+400!5"00BTD($4PD%(M$)!"+5"04BTPD'(E&!(M&#(E6"(M6 +M$`-'#!-7$"M!#!M1$(E&#(E6$.DS____,=OK!Y"+-H7V=%F+3A2%R77SBU8$ +MBTX(BT<$B50D,(M7"(E,)#2+3"0TB40D*`-'#(E4)"P35Q`S1"0P,=$)P71^ +MBT0D,(M4)#2+3"0L`T8,$U80,T0D*#'1"<%UIXET)!SKH8M4)!S'1Q0````` +MA=)T*(M,)!R+002+40B)1P2+00R)5PB+41`!1PP15Q")3"0$B2PDZ/S___^% +MVP^$G/[__XM##(M3$`%'#!%7$(E<)`2)+"3H_/___^E__O__B?/I/O___\=' +M%`````"-M"8`````Z67^__^-="8`C;PG`````%4Q[5=64X/L+(M\)$R+1"1$ +MBU0D2(7_B40D$(E4)!0/A``!``"+5"1,BVHPA>T/A/$```"+1"1`BU@DA=L/ +MA)$```#'1"08`````,=$)!P`````ZPPY1"1,=`V+&X7;=$F+0Q2%P'7MBTL0 +M.4PD%(M3#'<,<FHY5"00=F2-="8`A<!UUX7M=-.+102+50B+2P@#10P351`S +M0P0QT0G!=;N)7"0<BQN%VW6WBT0D'(7`=!:+3"0<BT$,BU$0`T4,$U40.50D +M%'8QBT0D&(7`#X5^````,>V#Q"R)Z%M>7UW#BW0D&(7V=`N+="08.TX0=X]S +M'XE<)!CKAXVT)@````!S1(EL)!B+1"08A<!TQHGVZT`[5@P/@V7___^)7"08 +MD.E;____BTPD0(M<)!0Y62QRH@^'_/[__XMT)!`Y<2ARD^GN_O__.40D$`^' +M>/___^NPBUPD0,=$)`0$````BP.)!"3H_/___X7`B<4/A&3___^)6"2+="1` +MBTXXBUX\@<$``/[_B<B#T_\E``#^_XE$)""#1"0@`8E<)"2#5"0D`#';BU8D +MA=)T(XVV`````(M"%(7`=!"+2"BX`0```"M,)"#3X`G#BQ*%TG7C,<FX`0`` +M`-/@A<-T*H/!`8/Y!'7MQT4H`````,=%+`````")+"0Q[>C\____@\0LB>A; +M7E]=PXG*B<C!^A\#1"0@$U0D)(E%*(G1"<&)52QTT8MT)!2+7"00BT0D0(EU +M&(MT)!B)712+7"00BU8$BTX(BW0D%(D<)(ET)`3H(=W__X7`=)V):!2)13"+ +M="1`@$Y,$(DT).C\____Z6C^__^)]E93@^P$BW0D$(M&)(7`=0CK3XL`A<!T +M28M0%(72C78`=/"+6@R%VW0N@'LP`'0H,<GK"P^V0S"#P0$YR'X9.52+2'7O +M#[9#,,=$BT@`````@\$!.<A_YXD4).C\____ZZB)-"3H_/___XM64(M&7(D$ +M)/]29(ET)!"#Q`1;7NG\____C;8`````C;PG`````%93@^P$BW0D$(M>)(!F +M3+^%VW0PBT,4A<!T"(D$).C\____BQN%VW7KBU8DA=)T%(M"%(7`=`>+2`R% +MR704BQ*%TG7LB70D$(/$!%M>Z?S___^)!"3H_/___XM6).O-D%575E.#[`R+ +M1"0@BV@0B40D!(V%L````(D$)(U]#.C\____BUT,QX4D`0```````#G[=0CK +M+XL;.?MT*8V#V/W__X!X"`%U[O9`3$!TZ/:`'`(```%TWXD$).C\____BQLY +M^W77BUT4C744.?-T$I"-0_2)!"3H_/___XL;.?-U[XMU##G^#X2N````C70F +M`(V&V/W__X!X"`1V"XM8#(7;#X1!`0``BS8Y_G7CBUT,.?L/A((```#&1"0+ +M`.L'D(L;.?-T/HV3V/W__X!Z"`%U[O9"3"!TZ(M")(!B3-N%P'4/Z<@```"+ +M`(7`#X2^````BT@4A<ET[XL;QD0D"P$Y\W7"BUT,.=]U"^LMC78`BQLY^W0D +MC8/8_?__BV@<A>UX'_:`'`(```%UY(D$).C\____BQLY^W7<@\0,6UY?7</V +M@!P"```!=,4/ME`(@/H$=G:+<`R%]G6U]H!(`0``0'6LBY!D`0``A=)T!3E" +M!'6=#[9P,(7V?B0QR8M4B$B%TG03@'H(!'8-]H)(`0``0`^%>/___X/!`3GQ +M==Z)!"3H_/___^ED____C70F`(!\)`L`#X4%____B10DB?;H_/___^GV_O__ +M@.H!C78`#X4Z____]D!,`HVV``````^$*O___^NWB00DD(UT)@#H_/___^FM +M_O__C;8`````5U93@^P0BWPD((V'L````(D$).C\____A<")QG15BU\,B7@0 +M@\<,QP`!````QT`$X"T$`#G[B48(QT`,`````'4(ZR2+&SG[=!Z-@]C]__^` +M>`@!=>Z)="0$B00DZ/S___^+&SG[=>*+!H/H`87`B09T!X/$$%M>7\.)="0@ +M@\006UY?Z7?]__^-M"8`````@^P<B70D%(MT)"")7"00B7PD&(M>$,=#(``` +M``#VAAP"```8=7R+AI0```"%P'5R#[9#**@!=6JH`HU["'06.7L(=00Y&W04 +MB?#H`=;___9#*`%U38M+"#GY=58/MD9*.4,0<A+K.XGPZ"+2__\/MD9*.4,0 +M<RN)\.CRT?__A<")PG0>#[=`9&8E_S!F/00@==4Y&W5+]D9.`G3+@$LH`NO% +MBUPD$(MT)!2+?"08@\0<PXM[$(7_=>F+$8M!!(E"!(D0BU$,B?")"8E)!(M< +M)!"+="04BWPD&(/$'.FOT?__QD)F`8D4).C\____B?#H?-'__XG"Z6S___^0 +MC70F`(/L'(E<)!"+7"0@B70D%(E\)!B)V(M[*.A#T?__@'MD!(MW$(G"='B+ +M0W#'1B0`````B3+'0A``````B4((BT8$B5H,B58$QT-P0#($`(E"!(D0#[9' +M2CE&$','BT8@A<!T$(M<)!"+="04BWPD&(/$',.-1A3'1B`!````B40D!(L' +M@\`LB00DZ/S___^+7"00BW0D%(M\)!B#Q!S#B?;V0V4P=`KV1B@"#X1X____ +MQD-F`8MT)!2)7"0@BWPD&(M<)!"#Q!SI_/___XUT)@"#[!R)="00BW0D((E< +M)`R)?"04B6PD&(GPZ'+0__^+7BB+>Q")Q8-O$`$/MD9F/`UT7CP1#X1]```` +M/`MT8CP0#X20````BT4(B49PB30DZ/S___^+1R"%P'4;C4<4QT<@`0```(E$ +M)`2+`X/`+(D$).C\____BUPD#(MT)!"+?"04BVPD&(/$',.-M@````"`?F0` +M=;"`?F<`=6K&1F<!QD9F`(M7#(U'"(EO#(E%`(E5!(DJZYV)V.C"T___A<!U +M"`^V1F<\`79"#[9&9CP0#X5P____@'YD`P^$9O___XM#$(ES$(E<)`3'!"0# +M````B40D".C\____BT0D"(E#$.E`____QD9F$.O*@\`!B$9GZXR0D)"0D)"0 +MD)"0D)!64XL=`````(MT)`R%VW0MBU,,C4L,.<IU#.L;C70F`(L2.<IT$8V" +MV/W__SFP6`(``'7L6U[#BQN%VW73,<"0Z_*-M"8`````C;PG`````(!X!`!U +M#8$X>P$```^7P`^VP,.!.'L!```/E\`/ML##4XG!#[8:#[8`.-AT%>LID`^V +M60$/MD(!.,-U$(/!`8/"`83`=>HQTEN)T,,/OM,/OL!;*<*)T,,/OM`/OL,I +MPNOFC;0F`````(V\)P````!55U93@>R<````BRT`````B40D&(E4)!2%[71! +M,?:-?"0DBUT(A=MT+8E\)!"-=@"+4P2)?"0$BT,(B00D_U(<@'PD-P!T"3MT +M)!AT'X/&`8L;A=MUVHMM`(7M=<4QVX'$G````(G86UY?7<.+1"04A<!TZXM4 +M)!2+`@^V5"0[.=!\W(L;A=MTUBG0BU0D%(D"BT0D$(M3!(E$)`2+0PB)!"3_ +M4AR`?"0W`'3(ZZ^)]E575HG.4X'LG````(E$)`RA`````(N\)+````#'`0`` +M``")5"0(A<#'!P````")1"00#X21````O?_____'1"04`````(M4)!"+6@B% +MVP^$@````(7_#Y5$)!OK%HUV`(L;#[9$)#L!!HM4)!0!%X7;=&&-5"0DBT,$ +MB50D!(M3"(D4)/]0'(M#!(N0A````(72=!.`?"0;`'0,BT,(B00D_]*)1"04 +M@'PD-P!T#\<&`````(/%`<<'`````#M<)`QUG8M$)`B)*('$G````%M>7UW# +MBT0D$(L`A<")1"00#X5?____Z^&0C;0F`````%575C'V4X'LC````(L]```` +M`(7_="^-;"04BU\(A=MT'HM3!(EL)`2+0PB)!"3_4AR+&X!\)"<!@][_A=MU +MXHL_A?]UU8'$C````(GP6UY?7<.-M"8`````C;PG`````%57B<]64X'LO``` +M`(E4)!B-5"08Z.?]__^)1"00BU0D$+C_____A=(/A/D```"+1"00BW`,,<#& +M!#@`@\`!@_A$=?2+5"00BTPD$(M"!(U4)!R)5"0$BU$(B10D_U`<@'PD+@]V +M!<9$)"X/BT0D$(M,)!"+4`2-A"2T````B40D"(M$)!B)1"0$BT$(B00D_U)< +MA<`/A)@```"+7@R-;@PYZP^$?0```,9$)!<`ZP>0BQLYZW1OC;/8_?__@'X( +M`77NBT0D$#M&6'7EC8PDE````(M64(E,)`2+1ER)!"3_4CSVA"2>`````G7$ +M#[:$)*`````[1"08=;8/MH0DH0```#I$)"YSJ`^VT(N&6`(``(!$)!<!B427 +M"`^V1"07.$0D+G6+,<"!Q+P```!;7E]=PXN$)+@```")1P2+A"2T````B0?I +M4/___XVV`````(/H!3'2@_@'=PS_)(5,&```N@$```")T,.Z"````(G0P[H" +M````B=##N@<```")T,.Z`P```(G0P[H$````B=##N@4```")T,.Z!@```(G0 +MP^L-D)"0D)"0D)"0D)"0D%:)UE,/MH@<`@``B<,/ME((B<B#\`&#X`'VPB!T +M`X/((/;!!'0#@\@"@^$"=`.#R`2#XA!T`X/($`^V5@KVP@%T`X/(0(/B`G0" +M#(`/ME-,]L($=`4-````@/;"`G0%#0```@"#X@%T!0T```$`]D-.`70%#0`` +M!`!;7L.-="8`55>_Z`,``%93@^PLBT0D0(N84`$``(N(3`$```^V:#`/K-D+ +MB<C!ZPOWYVGSZ`,``(G!C1P6BW0D0(M6&(M&%(D,)(E<)`2)ZP^LT`O!Z@N) +M1"0(B50D#.C\____BTX$#[9)!BG+N0H```#WX_?AA>V)1"0D#XZ2````,?:- +M=@"+1"1`BURP2(7;=';V@QP"```!=&V`>P@$=F?V@T@!``!P=%Z+4P0/MD,P +M#[92!BG0BY-0`0``C02`C3P`BX-,`0``#ZS0"VG(Z`,``(M#%,'J"XM3&`^L +MT`O!Z@N)1"08B<B+3"0DB50D'#'2]W0D&`^O^(7)=`8Y?"0D=@2)?"0D@\8! +M.?4/A7/___^+1"0D/1`G``!V!;@0)P``@\0L6UY?7<.-="8`C;PG`````(/L +M+(M$)#")7"0<B70D((E\)"2);"0HBZAD`0``#[9%9CP"#X6J````BT4(BU`4 +MBT@8BT4$B50D$(MT)!")3"04BWPD%(M(%(M8&+@0)P``*<X9WP^L_@O![PN) +M^@GR=$Z`?10`=5R+15R+56`IR!G:#ZS0"[GH`P``P>H+:=KH`P``]^&)="0( +MB7PD#(T4$XD$)(E4)`3H_/___[D*````]^$]$"<``'8%N!`G``"+7"0<BW0D +M((M\)"2+;"0H@\0LPXM$)!"+5"04*T5<&U5@ZYX\`P^$E0```(!]%`!T/HM% +M"(M8&+[H`P``BT@4B=J)R"M%7!M58`^LV0O!ZPL/K-`+P>H+:?KH`P``]^:) +M3"0(B5PD#(T4%^EQ____BUU@O^@#``"+35P/K-D+B<CWY\'K"VGSZ`,``(G! +MBT4(C1P6BU`8BT`4B0PDB5PD!`^LT`O!Z@N)1"0(B50D#.C\____N0H```#W +MX>DS____@'T4`'0(BT4$Z6;___^+76"_Z`,``(M-7`^LV0N)R/?GP>L+:?/H +M`P``B<&+102-'!;KGXVV`````(V_`````%93BT@,B<.%R70S#[9!,(3`#[;P +M=!@QTCE92'06,=+K!CE<D4AT#(/"`3GR=?-;,<!>PXM!)%M>@\`!`=##BT`D +M6U[#C;8`````C;\`````55>)UU93@^P$B00D#[9H,(7M?E,Q]HL$)(M4L$B% +MTG0_]H(<`@```70V@'H(!'9!#[9:,(7;?B@QR8VV`````(M$BDB%P'0.]H`< +M`@```70%.7@D=!.#P0$YV77CC78`@\8!.>YUKS'`@\0$6UY?7<,Y>B1UZHG0 +MZ^^-M@````!55U93@^Q`B40D&(M<)!B(5"07#[9$)%@/ME0D7(E,)!"%VXA$ +M)`^(5"0.#X1/`0``BTPD&(!Y"`</E,"`?"07!P^4PH3`#X48`0``A-(/A2P! +M``"+3"00A<D/A"<#``#'1"0<_____S'_,>W'1"0@_____\=$)#@`````C70F +M`(M4)#B+3"14BP21B00DZ/S___^%P(G##X2W````BU0D&(L`.P(/A:D```"` +M>P@!#X6?````BT0D&(G:Z,#^___'1"0L`````(7`B<9T!XM(,(E,)"R+6R2% +MVP^$%0$``(G8,=(QR8-X%`!T!H/"`8/1`(L`A<!U[H/Y`'<)@_H##X;O```` +MQT0D)`````#'1"0H`````,=$)!P`````QT0D(``````#?"0DBU0D$!-L)"B# +M1"0X`3E4)#@/A3____\/MDPD#X/A#X!\)!<'#X;'`0``,?\Q[8/$0(GXB>I; +M7E]=PXM,)!@/MD$P/`$/A.#^__^$TG0(A,`/A?L!``"+7"00A=L/A/L!```Q +MVS'_,>W'1"0<_____\=$)"#_____ZSF`>`@!=:J+4"R+0"B)T0G!=)X!QQ'5 +M.50D('(0=P8Y1"0<=@B)1"0<B50D((/#`3M<)!`/A&3___^+5"14BP2:B00D +MZ/S___^%P'6TZ5____^%]L=$)"0`````QT0D*`````!T#HM&%(M6&(E$)"2) +M5"0HA=L/A)8```#'1"0P`````.LDC;0F`````(M#%#G&=!"+5"0LA=)T'H7` +M#X2A````BQN%VW0VA?:0==Z+5"0LBT,4A=)UXH7`=>:+4Q`[5"0HBT,,<MIW +M!CM$)"1VTHL;B40D)(E4)"B%VW7*BT0D+(7`="J+="0PA?9T(HM,)#"+00R+ +M41"+3"0L`T$,$U$0.50D*'<(<F(Y1"0D<ER+1"0H.40D(`^"8_[__W<.BU0D +M)#E4)!P/AE/^__^+1"0DBU0D*(E$)!R)5"0@Z3[^__^+3"0LBT$$BU$(`T$, +M$U$0BTL(,T,$,=$)P0^%6?___XE<)##I4/___XE$)"2)5"0HZYH/MD0D%_\D +MA6P8``"#?"00`0^&(O[__X-\)!`"BWPD'(ML)"`/AA/^__\/ML&Z_____XG! +MBT0D'-/BB=/1;"00(="+5"0@BTPD$,'['R':B=8/K_'WX8G'C2P6Z=W]__^+ +M5"00A=(/A?H````Q_S'MQT0D'/_____'1"0@_____^FA_?__@WPD$`,/AJG] +M__\/ML&Z_____XG!BT0D'-/BBTPD$(G3P?L?(="+5"0@@^D"(=KKF8-\)!`" +M#X9X_?__#[;!NO____^)P8M$)!S3XHM,)!")T\'['R'0BU0D((/I`2':Z67_ +M__^`?"0.`0^&,0$``(!\)`X"#X8,____#[9T)`XQTHM$)!#W]H72B<,/A2+] +M__^#ZP$/CAG]__^#[@'W[HG&#[;!B<&+1"0<B=>Z_____]/BB=,AT(M4)"#! +M^Q^)P0^OSXE$)`0AVHG3#Z_>B50D"/?F`=F)QXTL$>G7_/__BT%(,?:%P'4? +MZ<7\__\Y="00#X;G_/__BU0D&(M$LDB%P`^$J_S__XM,)%2+6"2+!+&)!"3H +M_/___SG#=!6+5"08@\8!#[9",#GP#X:N_/__Z[N+3"08#[9!,`^VT#E4)!") +M5"0T#X)G_/__A,!T=HM!2#'VA<!U+.E5_/__D(M,)!B#Q@$/MD$P#[;0.?*) +M5"0T=E&+3"08BT2Q2(7`#X0N_/__BU0D5(M8)(L$LHD$).C\____.<-TQ.D3 +M_/__#[;!NO____^)P8M$)!S3XHM,)!")T\'['R'0BU0D("':Z0/^__^+3"08 +M#[;`BW2!1(MY%(MI&(M&)(M8)(7;=0CK+XL;A=MT*8M#%(7`D'7RBTXPBT$$ +MBU$(`T$,$U$0BTL(,T,$,=$)P777`WL,$VL0BU0D-#E4)!`/AI?[__^+3"14 +MC1R1ZSJ-M@````"+3"08BP`[`0^%=OO__X!Z"`$/A6S[__\#>BB+1"00$VHL +M@\,$@T0D-`$Y1"0T#X14^___BP.)!"3H_/___X7`B<)UO.D[^___C;0F```` +M`//#C;0F`````(V\)P````!6BS5$`@``4XM,)`R-5@&)T,'X'\'H'(T<`H/C +M#RG#N/____\['4`"``!T;8L!:]8LB8)@`@``BT$$B8)D`@``BT$(B8)H`@`` +MBT$,B8)L`@``BT$0B8)P`@``BT$4B8)T`@``BT$8B8)X`@``BT$<B8)\`@`` +MBT$@B8*``@``BT$DB8*$`@``BT$HB1U$`@``B8*(`@``,<!;7L.-="8`@^P\ +MBU0D0(E<)#2+3"1(B70D.(M<)$P/MW0D4`^V0@@\`70R/`1T2(U4)!2#?"1$ +M`1G`@\`9B$0D$(U$)`AFB7((B00DZ/S___^+7"0TBW0D.(/$/,.+@E@"``"- +M5"04B4PD%(E<)!B)1"0,Z[Z)]HM",(M2)`-(!(N26`(``!-8"(E,)!2)5"0, +MC50D%(E<)!CKF(VV`````(V_`````%93@^PDQD0D'`:+6`B%VW0BC70D'(M# +M"(E$)""+0P2)="0$QP0D`````/]08(L;A=MUXH/$)%M>PXVT)@````!55U93 +M@^P$BU0D&(ML)!R+0B@/MUI0BXAD`0``B=^+,,'G"8!Y%`!T"O9"900/A8H` +M```/MU%:P>()BXY@`0,`A?^+MF0!`P")-"1T7(G0,=+W]HT$0(G3C32!C4T0 +MZR^+!@'8B4'XBP0D*=@Y^(E!\'8"B?@IQXG-A?^)0?#'0?0`````C4D0=!^# +MQ@PQVXML)""%[77),=*)V`-&!!-6"(E!^(E1_.N^QT7T`0```(/$!+@!```` +M6UY?7<,/MU%8#[=!6BG"*=K!X@GI:?___^L-D)"0D)"0D)"0D)"0D%6)U5=6 +M4X/L!(D$)(!Z,`!T:3'_ZR:+%"2+1C"+2C"+4`B+0`2+60@S000QTPG#=#0/ +MMD4P@\<!.?A^/XMTO4B%]G3M@'X(!';,BP0DB?+HK/___X3`=-F#Q`2X`0`` +M`%M>7UW#BQ0DBT8D.T(D=.@/MD4P@\<!.?A_P8/$!#'`6UY?7<.-="8`C;PG +M`````%6)U5>)QU93@'@P`'1`,?;K%(GJB=CHY?___P^V1S"#Q@$Y\'XHBURW +M2(7;=.V`>P@$=]Z)ZHG8Z#/___^$P`^40S0/MD<P@\8!.?!_V%M>7UW#C;8` +M````C;PG`````%93B=.`>`@!=`5;,<!>PX72=%&+DF0!``"%TG1'BW($.=YT +M1(M0)(72=#&0C70F`(M"%(7`=!^%VW4)D(UT)@#KR(G(BT@,A<EU]SG8C78` +M=`0Y\'6TBQ*%TG746[@!````7L.)WNN\BW((Z[>-=@"+1"0$BU`0A=)X!H-X +M%`-W!\=`+/[____SPXVV`````(M$)`2!>!#'````=@F!>!3'````=P?'0"S^ +M____\\.0BT0D!(%X$,<```!V"8M(%(7)>`+SP\=`+/[____#B?:+1"0$BU`0 +MA=)X!H-X%`-W!\=`+/[____SPXVV`````(M$)`2#>!`#=@:#>!1+=P?'0"S^ +M____\\.-M"8`````BT0D!(-X$`-V!H-X%%=W!\=`+/[____SPXVT)@````"+ +M1"0$@W@0`W8&@W@40W<'QT`L_O____/#C;0F`````(M$)`2#>!`'=@:#>!0/ +M=P?'0"S^____\\.-M"8`````BT0D!(-X$`=V!H-X%$-W!\=`+/[____SPXVT +M)@````"+1"0$@W@0`W8&@W@4`W<'QT`L_O____/#C;0F`````(M$)`2#>!`' +M=@F!>!3_````=P?'0"S^____\\.-="8`BT0D!(-X$`=V"8%X%*,,``!W!\=` +M+/[____SPXUT)@"+1"0$@W@0!W8)@7@4)PT``'<'QT`L_O____/#C70F`(M$ +M)`2#>!`'=@F!>!2K````=P?'0"S^____\\.-="8`BT0D!(-X$`MV!H-X%"=W +M!\=`+/[____SPXVT)@````"+5"0$BT(8@WH0`XL`=@R-!(4$````.4(4<P?' +M0BS^____\\.-M@````"-OP````"+5"0$BT(8@WH0`XL`=@R-!(4$````.4(4 +M<P?'0BS^____\\.-M@````"-OP````!3@^P$BUPD#(M#&(-[$`.+`'8)@7L4 +MK0```'<,QT,L_O___X/$!%O#B00DZ/S___^%P'3H@\0$6\.-M"8`````4X/L +M!(M<)`R+0QB#>Q`#BP!V"8%[%-<```!W#,=#+/[___^#Q`1;PXD$).C\____ +MA<!TZ(/$!%O#C;0F`````%.#[`2+7"0,BT,8@WL0`XL`=@F!>Q3Y````=PS' +M0RS^____@\0$6\.)!"3H_/___X7`=.B#Q`1;PXVT)@````"#[`R)7"0$BUPD +M$(ET)`B+0QB#>Q`(BTL<BS!V!H-[%`1_$\=#+/[___^+7"0$BW0D"(/$#,,/ +MME`(BT`$A-*)`8A1!'0@@3G#`0``=M6)-"3H_/___X7`=,F+7"0$BW0D"(/$ +M#,,]PP$``':VZ]^0@^P,B70D"(MT)!")7"0$@7X0LP```'8&@WX4!W<3QT8L +M_O___XM<)`2+="0(@\0,PXM&&(L8B1PD@^L!Z/S___^#^_UWWX7`=-2`>`@$ +MB?9VS(N(9`$``(7)=<+KQXGV@^P0B70D"(MT)!2)7"0$B7PD#(-^$`AV!H-^ +M%`=W%\=&+/[___^+7"0$BW0D"(M\)`R#Q!##BWX8BQ^)'"2#ZP'H_/___X/[ +M_7<1A<!T!H!X"`1W%<=&+/[___^-1P3HC.G__RP!=;?KO(N89`$``(7;=>'K +MYHUV`(V\)P````"#[!2)?"0,BWPD&(E<)`2)="0(B6PD$(M7&(LJC02M!``` +M`#E'$')*BW<4A?9X0X`]``````)T.C'VA>UU"XGVZS<Y[G0SBU<8@\8!BQRR +MB1PDZ/S___^%P'07B1PDZ/S___^)PHL`.T<(=2'V0DP!==#'1RS^____BUPD +M!(MT)`B+?"0,BVPD$(/$%,/'1RS\____Z^.-=@"-O"<`````@^P4B7PD#(M\ +M)!B)7"0$B70D"(EL)!"!?Q"'````BW<8=@V#?Q0#=R>-M"8`````QT<L_O__ +M_XM<)`2+="0(BWPD#(ML)!"#Q!3#D(UT)@`/MD8!/`AWV#'MA,!U'HGVZ]6) +M'"3H_/___XL`.T<(D'4A@\4!B>@X1@%VNXGJ#[;"BUR&:(D<).C\____A<!U +MT>N=QT<L_/___XVV`````.N5C;0F`````(V\)P````"+1"0$@W@0`W8&@W@4 +M`W\'QT`L_O____/#C;0F`````(/L"+H0````BTPD#(D<)(ET)`2+01B+6`B+ +M<`R+01"%VW0#C580.<)W"X7;BT$4=0LYQG8'QT$L_O___XL<)(MT)`2#Q`C# +MB?:-O"<`````@^P4B7PD#(M\)!B)7"0$B70D"(EL)!"!?Q"O````BW<8=@V# +M?Q0#=R>-M"8`````QT<L_O___XM<)`2+="0(BWPD#(ML)!"#Q!3#D(UT)@`/ +MMD8!/!!WV#'MA,!U'HGVZ]6)'"3H_/___XL`.T<(D'4A@\4!B>@X1@%VNXGJ +M#[;"BUR&<(D<).C\____A<!UT>N=QT<L_/___XVV`````.N5C;0F`````(V\ +M)P````"#[!2)7"0$BUPD&(ET)`B)?"0,B6PD$(-[$`2+<QA^!H-[%`-W&\=# +M+/[___^+7"0$BW0D"(M\)`R+;"00@\04PXGPZ+CF__\L`77:#[9Q`=](Q +M[83`=1_KT8UT)@")/"3H_/___XL`.T,(=2&#Q0&)Z#A:TB>H/ML*+?(9\ +MB3PDZ/S___^%P'72ZY;'0RS\____ZY2-M"8`````@^P4B5PD!(M<)!B)="0( +MB7PD#(EL)!"+>QB!>Q"S````BS=V!H-[%`-W&\=#+/[___^+7"0$BW0D"(M\ +M)`R+;"00@\04PXDT).C\____A<!TV8DT).C\____BP`[0PAT"<=#+/S____K +MR(/'!`^V1P$\$'>V,>V$P'4>Z[6-=@")-"3H_/___XL`.T,(==*#Q0&)Z#A' +M`7:9B>H/ML*+=(=PB30DZ/S___^%P'72Z7C___^-M@````"-O"<`````@^P4 +MB5PD!(M<)!B)="0(B7PD#(EL)!"+>QB#>Q`(BS=V!H-[%`-W&\=#+/[___^+ +M7"0$BW0D"(M\)`R+;"00@\04PXDT).C\____A<!TV8DT).C\____BP`[0PAT +M"<=#+/S____KR(/'!(GXZ"_E__\L`76S#[9'#3Q`=ZLQ[83`=1OKJHDT).C\ +M____BP`[0PAURH/%`8GH.$<-=I&)Z@^VPHMTAWR)-"3H_/___X7`==+I</__ +M_Y"-M"8`````BT0D!(M0$(72>`:#>!0K=P?'0"S^____\\.-M@````"#[`R) +M7"0$BUPD$(ET)`B+0QB#>Q`(BS!V-HM+%(7)>"^)-"3H_/___X7`=".)-"3H +M_/___XL`.T,(=!O'0RS\____BUPD!(MT)`B#Q`S#D,=#+/[___^+7"0$BW0D +M"(/$#,.-M@````"-O"<`````@^P,B5PD!(M<)!")="0(BT,8@WL0"(LP=C:+ +M0Q2%P'XOB30DZ/S___^%P'0CB30DZ/S___^+`#M#"'0;QT,L_/___XM<)`2+ +M="0(@\0,PY#'0RS^____BUPD!(MT)`B#Q`S#C;8`````C;PG`````(/L#(E< +M)`2+7"00B70D"(M#&(-[$`B+,'8VBT,4A<!X+XDT).C\____A<!T(XDT).C\ +M____BP`[0PAT&\=#+/S___^+7"0$BW0D"(/$#,.0QT,L_O___XM<)`2+="0( +M@\0,PXVV`````(V\)P````"#[`R)7"0$BUPD$(ET)`B+0QB#>Q`-BS!V-HM# M%(7`>"^)-"3H_/___X7`=".)-"3H_/___XL`.T,(=!O'0RS\____BUPD!(MT -M)`B#Q`S#D,=#+/[___^+7"0$BW0D"(/$#,.-M@````"-O"<`````@^P4B7PD -M#(M\)!B)7"0$B70D"(EL)!"+5Q@/MBJ-!*T$````.4<0<C^#?Q0#=CDQ]H7M -M=0GK.#GN=#2+5QB#Q@&+'+*)'"3H_/___X7`=!B)'"3H_/___XL`.T<(=-C' -M1RS\____ZP?'1RS^____BUPD!(MT)`B+?"0,BVPD$(/$%,.-M@````"-O"<` -M````@^P4B7PD#(M\)!B)7"0$B70D"(EL)!"+5Q@/MBJ-!*T$````.4<0<C^# -M?Q0#=CDQ]H7M=0GK.#GN=#2+5QB#Q@&+'+*)'"3H_/___X7`=!B)'"3H_/__ -M_XL`.T<(=-C'1RS\____ZP?'1RS^____BUPD!(MT)`B+?"0,BVPD$(/$%,.- -MM@````"-O"<`````@^P,B5PD!(M<)!")="0(BT,8@WL0!XLP=Q;'0RS^____ -MBUPD!(MT)`B#Q`S#C78`B30DZ/S___^%P'3>B30DZ/S___^+`#M#"'36QT,L -M_/___XM<)`2+="0(@\0,PXGVBU0D!(M"&(-Z$`.+`'8,C02%!````#E"%',' -MQT(L_O____/#C;8`````C;\`````4X/L"(M<)!"+0QB#>Q`"#[8`=CR+4Q2% -MTG@U,=(/ML#HB]K__X7`B<)T)8M`!(M`?(7`=!N+0@P[0PAT&L=#+/S___^# -MQ`A;PXVT)@````#'0RS^____@\0(6\.-="8`@^P,N1P```")7"0$BUPD$(ET -M)`B+<QB+0Q`/ME8$@/H"="TYP7<1@.H!BT,4N0@```!T3CG!=B#'0RS^____ -MBUPD!(MT)`B#Q`S#D(UT)@"+3AB#P1SKRXL&B00DZ/S___^%P'32BP:)!"3H -M_/___XG"BP`[0PAT%<=#+/S____KO8M.&(/!"#G!=ZSKRH!Z"`%UI(!^!Q!W -MGHVV`````.N=C;0F`````(V\)P````!3BT0D"(M<)`R+2"PQP(-\)!``BU$8 -M=!V`>@0!=!F-0AR)0PB+0AC'0P0!````B0.X`0```%O#BT$<@\`(B4,(Z^*- -MM"8`````C;PG`````(/L$(ET)`B+="04B5PD!(E\)`R+5A"+7AB#^@MV98M^ -M%(7_>%Z`>P<`=74/MD,&P>`)C4@,,<`YRG)(@\`$.<=R08L#B00DZ/S___^% -MP'0SBP.)!"3H_/___XG"BP`[1@AT"<=&+/S____K'H!Z"`%U$0^V0P8/MU,$ -M`=`]`"```'X'QT8L_O___XM<)`2+="0(BWPD#(/$$,.-M@`````/MD,&N0P` -M``#!X`GKB8GV@^P0B5PD!(M<)!2)="0(B7PD#(M+$(MS&(/Y!W8EBWL4A?]X -M'H7)#[96!`^V1@5X$@^VP`^VT@'0P>`)@\`(.<=S%\=#+/[___^+7"0$BW0D -M"(M\)`R#Q!##BP:)!"3H_/___X7`=-N+!HD$).C\____B<*+`#M#"'0)QT,L -M_/___^O&@'H(`76YC;8`````Z[B-M"8`````C;PG`````%>)QU:)UE.#[!"A -MP`(``(/X_W1OBU(,N\`"``#K#(GV@\,4BP.#^/]T63G0=?*#P`%T4,=&+``` -M``")-"2-=@#_4P2+1BR%P'5-@+^$`0,``'4PBTL0A<D/A8T```"+ER@!``"% -MTG0ZBY=$`0``C8=``0``B;=$`0``B0:)5@2),NL-QT8L_O___XDT)/]6*(/$ -M$%M>7\.)-"3_5BB-=@#K[HM#"(FW*`$``(7`=#R+0PS'ARP!```!````B;<T -M`0``QX<X`0```````(F',`$``(DT)/]3"(N'+`$``(/H`87`B8<L`0``=:6) -M-"3_4PSKG8VV`````(V\)P````!3BPB-F`@"``#'@-@!```/_P``B9CD`0`` -MB8C4`0``BXA8`@``QX#<`0``"````,>`X`$```````#'@.P!````````B8@( -M`@``B5,$C9#,`0``QX#T`0``<#4$`(N`U`$``%OIF/[__Y"-M"8`````@^P, -MB5PD!(M<)!")="0(BW,(.9XH`0``=!:)7"00BTLHBW0D"(M<)`2#Q`S_X8GV -MBXY``0``C89``0``QX8H`0```````#G!=-"+$8M!!(E"!(D0B<J)\(D)B4D$ -MZ"[^___KMHVV`````(V_`````(M$)`2+@%@"``##D(UT)@!75E.#[#2+3"1( -MC70D"`^V5"1$B?")R\8``(U\)#2#P`$Y^'7R@/H'B%0D$`^$K0```(#Z!G0T -M@/H$="^`^@60="F`^@AT)(#Z''1N@/H#D'0NBX-8`@``B30DB40D#.C\____ -M@\0T6UY?P_:!2`$```%TTX#Z',9$)!0!=<[K.HM+$(7)=,L/MD%DB$0D%(!Y -M9`!UO8M!2(M13(E$)!B)5"0<#[=!4(E$)"`/MD%ET.B#X`&(1"05ZYB+@4P! -M``"+D5`!``")1"04#[>!%`(``(E4)!AFB40D'.ES____BT$,A<!T"HN`6`(` -M`(E$)!2+623I6O___Y"-M"8`````BT0D"*(`````PXVV`````%.+1"0(BUPD -M#(M0#(U(##G*=0CK*(L2.<IT(HV"V/W__X!X"`%U[O:`'`(```%TY87;=`N+ -M$H/K`3G*==XQP%O#ZPV0D)"0D)"0D)"0D)"0@^P<B5PD%(G#B70D&(M`((G6 -MB40D!(L#B00DZ/S___\/ME!EB5@HB5@LB7`P@^+/@\H@B%!EQD!D!,9`9@#' -M0'#`6P0`B00DZ/S___^+7"04BW0D&(/$',.-M"8`````@^P<B70D$(E\)!2) -MQXEL)!B)U8E<)`R+&(M`((E,)`B)'"2!PY@```")1"0$Z/S___^)'"2)QNC\ -M____QP``````QT`$`````(M7%(M/&,=`(`````#'0!``````B5`(C5`4B4@, -MQT`<`````,=`)`````")4!2)4!C'0"@`````B48\QD9D!(M$)`B)?BB);BS& -M1F8`B49PB30DZ/S___^+7"0,BW0D$(M\)!2+;"08@\0<PXUT)@"-O"<````` -M@^P<B5PD$(G+B70D%(G6B7PD&(G'@P$!BT`@B40D!(L'B00DZ/S___^#_@&) -MP1G`#[9198/``H/@`\'@!(EY*(/BSPG"B%%EQD%D!(E9+,9!9@"`?P@$=A>+ -MAV0!``"%P'0-QT%P,%T$`.L+C70F`,=!<.!<!`")#"3H_/___XL'B00DZ/S_ -M__^+7"00BW0D%(M\)!B#Q!S#C;0F`````%575E.#[!R+?"0PBT0D-(ML)#B- -MC[````")1"04B4PD&(D,).C\____A<")Q@^$C@```(M?#,<``0```(M$)!2) -M?A"#QPR);@@Y^XE&!,=&#`````!U#^LTC;0F`````(L;.?MT)XV#V/W__X!X -M"`%U[O:`'`(```%TY8GQN@$```#HV?[__XL;.?MUV8L&@^@!A<")!G0(@\0< -M6UY?7<.+3"08B70D!(D,).C\____BTPD%(EL)#"#Q!Q;7E]=_^''!"3(`@`` -MZ/S____KX9!55U93@^P<BWPD,(M$)#2+;"0XC8^P````B40D%(E,)!B)#"3H -M_/___X7`B<9T<XM?#,<``0```(M$)!2)?A"#QPR);@@Y^XE&!,=&#`````!T -M&XV#V/W__X-X'/]T"8GQ,=+H*/[__XL;.?MUY8L&@^@!A<")!G0(@\0<6UY? -M7<.+3"08B70D!(D,).C\____BTPD%(EL)#"#Q!Q;7E]=_^''!"3C`@``Z/S_ -M___KX5.#[`B+5"04BUPD$(M*((E:"(7)=`6+0A2)`8G8Z$[Y__^)7"00@\0( -M6^G\____D%.+1"0,BUPD"(N06`(``(V("`(``(F8U`$``,>`V`$```__``") -MB.0!``")D`@"``"-D!8"``#'@-P!```(````QT$$#````(F0Z`$``,>`X`$` -M``````#'@.P!````````B8#P`0``QX#T`0``$)$$``7,`0``B40D#(E<)`A; -MZ?S___^-="8`C;PG`````(/L#(M$)!"+4`B)@DP!``"-@D@!``#'@D@!```` -M800`QX)0`0```````(/")(E$)`2)%"3H_/___X/$#,.-=@"#[`R+1"00BU`( -MB8),`0``C8)(`0``QX)(`0``\&($`,>"4`$```````"#PB2)1"0$B10DZ/S_ -M__^#Q`S#C78`@^P,BT0D$(M0"(F"3`$``(V"2`$``,>"2`$``-#I!`#'@E`! -M````````@\(DB40D!(D4).C\____@\0,PXUV`(/L#(M$)!"+4`B)@DP!``"- -M@D@!``#'@D@!``#0V@0`QX)0`0```````(/")(E$)`2)%"3H_/___X/$#,.- -M=@"#[`R+1"00BU`(B8),`0``C8)(`0``QX)(`0``4)X$`,>"4`$```````"# -MPB2)1"0$B10DZ/S___^#Q`S#C78`@^P,BT0D$(M0"(F"3`$``(V"2`$``,>" -M2`$``+#>!`#'@E`!````````@\(DB40D!(D4).C\____@\0,PXUV`(/L#(M$ -M)!"+4`B)@DP!``"-@D@!``#'@D@!```PH@0`QX)0`0```````(/")(E$)`2) -M%"3H_/___X/$#,.-=@"#[`R+1"00BU`(B8),`0``C8)(`0``QX)(`0``()\$ -M`,>"4`$```````"#PB2)1"0$B10DZ/S___^#Q`S#C78`@^P,BT0D$(M0"(F" -M3`$``(V"2`$``,>"2`$``$#M!`#'@E`!````````@\(DB40D!(D4).C\____ -M@\0,PXUV`(/L#(M$)!"+4`B)@DP!``"-@D@!``#'@D@!``!@D@0`QX)0`0`` -M`````(/")(E$)`2)%"3H_/___X/$#,.-=@"#[`R+1"00BU`(B8),`0``C8)( -M`0``QX)(`0``$.$$`,>"4`$```````"#PB2)1"0$B10DZ/S___^#Q`S#C78` -M@^P,BT0D$(M0"(F"3`$``(V"2`$``,>"2`$``!"C!`#'@E`!````````@\(D -MB40D!(D4).C\____@\0,PXUV`(/L#(M$)!"+4`B)@DP!``"-@D@!``#'@D@! -M```0HP0`QX)0`0```````(/")(E$)`2)%"3H_/___X/$#,.-=@"#[`R+1"00 -MBU`(B8),`0``C8)(`0``QX)(`0``<*4$`,>"4`$```````"#PB2)1"0$B10D -MZ/S___^#Q`S#C78`@^P,BT0D$(M0"(F"3`$``(V"2`$``,>"2`$``,"X!`#' -M@E`!````````@\(DB40D!(D4).C\____@\0,PXUV`(/L#(M$)!"+4`B)@DP! -M``"-@D@!``#'@D@!``!P[@0`QX)0`0```````(/")(E$)`2)%"3H_/___X/$ -M#,.-=@"#[`R+1"00BU`(B8),`0``C8)(`0``QX)(`0``$+H$`,>"4`$````` -M``"#PB2)1"0$B10DZ/S___^#Q`S#C78`@^P,BT0D$(M0"(F"3`$``(V"2`$` -M`,>"2`$``"#B!`#'@E`!````````@\(DB40D!(D4).C\____@\0,PXUV`(/L -M#(M$)!"+4`B)@DP!``"-@D@!``#'@D@!```PN00`QX)0`0```````(/")(E$ +M)`B#Q`S#D,=#+/[___^+7"0$BW0D"(/$#,.-M@````"-O"<`````@^P,B5PD +M!(M<)!")="0(BT,8@WL0#8LP=C:+0Q2%P'XOB30DZ/S___^%P'0CB30DZ/S_ +M__^+`#M#"'0;QT,L_/___XM<)`2+="0(@\0,PY#'0RS^____BUPD!(MT)`B# +MQ`S#C;8`````C;PG`````(/L#(E<)`2+7"00B70D"(M#&(-[$`V+,'8VBT,4 +MA<!X+XDT).C\____A<!T(XDT).C\____BP`[0PAT&\=#+/S___^+7"0$BW0D +M"(/$#,.0QT,L_O___XM<)`2+="0(@\0,PXVV`````(V\)P````"#[`R)7"0$ +MBUPD$(ET)`B+0QB#>Q`#BS!V6XM#%(7`>%2)-"3H_/___X7`=$B)-"3H_/__ +M_XG"BP`[0PAT$\=#+/S___^+7"0$BW0D"(/$#,.`>@@$=AZ+@F0!``"%P'04 +M@'AG`'4.#[:"20$``(/@&#P(=`?'0RS^____BUPD!(MT)`B#Q`S#D(VT)@`` +M``"#[`R)7"0$BUPD$(ET)`B+0QB#>Q`#BS!V/8M3%(72>#:)-"3H_/___X7` +M="J)-"3H_/___XG"BP`[0PAT$\=#+/S___^+7"0$BW0D"(/$#,.`>@@!=`?' +M0RS^____BUPD!(MT)`B#Q`S#C;8`````@^P,B5PD!(M<)!")="0(BT,8@WL0 +M`XLP=CV+2Q2%R7@VB30DZ/S___^%P'0JB30DZ/S___^)PHL`.T,(=!/'0RS\ +M____BUPD!(MT)`B#Q`S#@'H(`70'QT,L_O___XM<)`2+="0(@\0,PXVV```` +M`(/L$(E<)`2+7"04B70D"(E\)`R+0QB#>Q`'BS"+>`1V?XM#%(7`>'B)-"3H +M_/___X7`=&R)/"3H_/___X7`B?9T7HDT).C\____B3PDB<;H_/___XG"BP8[ +M0PAT%\=#+/S___^+7"0$BW0D"(M\)`R#Q!##.P)UY8M&!(!X!@!T'X!Z"`%U +M&8M&0`M&1'01BX9D`0``A<!T#H!X9P!T")#'0RS^____BUPD!(MT)`B+?"0, +M@\00PXGVC;PG`````(/L#(E<)`2+7"00B70D"(M#&(-[$`>+,'8]BT,4A<!X +M-HDT).C\____A<!T*HDT).C\____B<*+`#M#"'03QT,L_/___XM<)`2+="0( +M@\0,PX!Z"`1W!\=#+/[___^+7"0$BW0D"(/$#,.-M@````"#[`R)7"0$BUPD +M$(ET)`B+0QB#>Q!7BS!V1HM#%(7`>#^)-"3H_/___X7`=#.)-"3H_/___XG" +MBP`[0PAT$\=#+/S___^+7"0$BW0D"(/$#,.`>@@$=@F+0@R%P'0)B?;'0RS^ +M____BUPD!(MT)`B#Q`S#C;8`````C;PG`````(/L#(ET)`B+="00B5PD!(M& +M&(-^$$.+&'8XBT84A<!X,87;=#2)'"3H_/___X7`D'0@B1PDZ/S___^)PHL` +M.T8(=`G'1BS\____ZPV`>@@!=`?'1BS^____BUPD!(MT)`B#Q`S#C70F`(V\ +M)P````"#[`R)="0(BW0D$(E<)`2+1AB#?A`(BQAV.(M&%(7`>#&%VW0TB1PD +MZ/S___^%P)!T((D<).C\____B<*+`#M&"'0)QT8L_/___^L-@'H(`70'QT8L +M_O___XM<)`2+="0(@\0,PXUT)@"-O"<`````BT0D!(M($(7)>`F+4!2%TG@" +M\\/'0"S^____PXUT)@"+1"0$BU`0A=)X!H-X%"MW!\=`+/[____SPXVV```` +M`(M$)`2+2!"%R7@&@W@4?W<'QT`L_O____/#C;8`````@^P0B7PD#(M\)!2) +M="0(OA````")7"0$BU\8BU<0#[9#"P^V2PS!X`F`^0)T,CG6=Q&`Z0&+5Q2^ +M$````'11.=9V(L='+/[___^+7"0$BW0D"(M\)`R#Q!##C;8`````C7`0Z\F+ +M`XD$).C\____A<!TT(L#B00DZ/S___^)PHL`.T<(=!/'1RS\____Z[N0C7`0 +M.=9WK.O,@'H(`8UV`'6AZZ:-M@````"-OP````"#[!")?"0,BWPD%(ET)`B^ +M%````(E<)`2+7QB+5Q`/MT,0#[9+$L'@"8#Y`G0R.=9W$8#I`8M7%+X4```` +M=%$YUG8BQT<L_O___XM<)`2+="0(BWPD#(/$$,.-M@````"-<!3KR8L#B00D +MZ/S___^%P'30BP.)!"3H_/___XG"BP`[1PAT$\='+/S____KNY"-<!0YUG>L +MZ\R`>@@!C78`=:'KIHVV`````(V_`````(/L#(E<)`2+7"00B70D"(M#&(-[ +M$`.+,'8VBT,4A<!X+XDT).C\____A<!T(XDT).C\____BP`[0PAT&\=#+/S_ +M__^+7"0$BW0D"(/$#,.0QT,L_O___XM<)`2+="0(@\0,PXVV`````(V\)P`` +M``"#[!2)?"0,BWPD&(E<)`2)="0(B6PD$(M7&`^V*HT$K00````Y1Q!R/X-_ +M%`-V.3'VA>UU">LX.>YT-(M7&(/&`8L<LHD<).C\____A<!T&(D<).C\____ +MBP`[1PATV,='+/S____K!\='+/[___^+7"0$BW0D"(M\)`R+;"00@\04PXVV +M`````(V\)P````"#[!2)?"0,BWPD&(E<)`2)="0(B6PD$(M7&`^V*HT$K00` +M```Y1Q!R/X-_%`-V.3'VA>UU">LX.>YT-(M7&(/&`8L<LHD<).C\____A<!T +M&(D<).C\____BP`[1PATV,='+/S____K!\='+/[___^+7"0$BW0D"(M\)`R+ +M;"00@\04PXVV`````(V\)P````"#[`R)7"0$BUPD$(ET)`B+0QB#>Q`'BS!W +M%L=#+/[___^+7"0$BW0D"(/$#,.-=@")-"3H_/___X7`=-Z)-"3H_/___XL` +M.T,(=-;'0RS\____BUPD!(MT)`B#Q`S#B?:+5"0$BT(8@WH0`XL`=@R-!(4$ +M````.4(4<P?'0BS^____\\.-M@````"-OP````!3@^P(BUPD$(M#&(-[$`(/ +MM@!V/(M3%(72>#4QT@^VP.B+VO__A<")PG0EBT`$BT!\A<!T&XM"##M#"'0: +MQT,L_/___X/$"%O#C;0F`````,=#+/[___^#Q`A;PXUT)@"#[`RY'````(E< +M)`2+7"00B70D"(MS&(M#$`^V5@2`^@)T+3G!=Q&`Z@&+0Q2Y"````'1..<%V +M(,=#+/[___^+7"0$BW0D"(/$#,.0C70F`(M.&(/!'.O+BP:)!"3H_/___X7` +M=-*+!HD$).C\____B<*+`#M#"'05QT,L_/___^N]BTX8@\$(.<%WK.O*@'H( +M`76D@'X'$'>>C;8`````ZYV-M"8`````C;PG`````%.+1"0(BUPD#(M(+#'` +M@WPD$`"+41AT'8!Z!`%T&8U"'(E#"(M"&,=#!`$```")`[@!````6\.+01R# +MP`B)0PCKXHVT)@````"-O"<`````@^P0B70D"(MT)!2)7"0$B7PD#(M6$(M> +M&(/Z"W9EBWX4A?]X7H![!P!U=0^V0P;!X`F-2`PQP#G*<DB#P`0YQW)!BP.) +M!"3H_/___X7`=#.+`XD$).C\____B<*+`#M&"'0)QT8L_/___^L>@'H(`741 +M#[9#!@^W4P0!T#T`(```?@?'1BS^____BUPD!(MT)`B+?"0,@\00PXVV```` +M``^V0P:Y#````,'@">N)B?:#[!")7"0$BUPD%(ET)`B)?"0,BTL0BW,8@_D' +M=B6+>Q2%_W@>A<D/ME8$#[9&!7@2#[;`#[;2`=#!X`F#P`@YQW,7QT,L_O__ +M_XM<)`2+="0(BWPD#(/$$,.+!HD$).C\____A<!TVXL&B00DZ/S___^)PHL` +M.T,(=`G'0RS\____Z\:`>@@!=;F-M@````#KN(VT)@````"-O"<`````5XG' +M5HG64X/L$*'``@``@_C_=&^+4@R[P`(``.L,B?:#PQ2+`X/X_W19.=!U\H/` +M`710QT8L`````(DT)(UV`/]3!(M&+(7`=4V`OX0!`P``=3"+2Q"%R0^%C0`` +M`(N7*`$``(72=#J+ET0!``"-AT`!``")MT0!``")!HE6!(DRZPW'1BS^____ +MB30D_U8H@\006UY?PXDT)/]6*(UV`.ONBT,(B;<H`0``A<!T/(M##,>'+`$` +M``$```")MS0!``#'AS@!````````B8<P`0``B30D_U,(BX<L`0``@^@!A<") +MARP!``!UI8DT)/]3#.N=C;8`````C;PG`````%.+"(V8"`(``,>`V`$```__ +M``")F.0!``")B-0!``"+B%@"``#'@-P!```(````QX#@`0```````,>`[`$` +M``````")B`@"``")4P2-D,P!``#'@/0!```@0@0`BX#4`0``6^F8_O__D(VT +M)@````"#[`R)7"0$BUPD$(ET)`B+<P@YGB@!``!T%HE<)!"+2RB+="0(BUPD +M!(/$#/_AB?:+CD`!``"-AD`!``#'AB@!````````.<%TT(L1BT$$B4($B1") +MRHGPB0F)203H+O[__^NVC;8`````C;\`````BT0D!(N`6`(``,.0C70F`%=6 +M4X/L-(M,)$B-="0(#[94)$2)\(G+Q@``C7PD-(/``3GX=?*`^@>(5"00#X2M +M````@/H&=#2`^@1T+X#Z!9!T*8#Z"'0D@/H<=&Z`^@.0="Z+@U@"``")-"2) +M1"0,Z/S___^#Q#1;7E_#]H%(`0```733@/H<QD0D%`%USNLZBTL0A<ETRP^V +M062(1"04@'ED`'6]BT%(BU%,B40D&(E4)!P/MT%0B40D(`^V0670Z(/@`8A$ +M)!7KF(N!3`$``(N14`$``(E$)!0/MX$4`@``B50D&&:)1"0<Z7/___^+00R% +MP'0*BX!8`@``B40D%(M9).E:____D(VT)@````"+1"0(H@````##C;8````` +M4XM$)`B+7"0,BU`,C4@,.<IU".LHBQ(YRG0BC8+8_?__@'@(`77N]H`<`@`` +M`73EA=MT"XL2@^L!.<IUWC'`6\/K#9"0D)"0D)"0D)"0D)"#[!R)7"04B<.) +M="08BT`@B=:)1"0$BP.)!"3H_/___P^V4&6)6"B)6"R)<#"#XL^#RB"(4&7& +M0&0$QD!F`,=`<'!H!`")!"3H_/___XM<)!2+="08@\0<PXVT)@````"#[!R) +M="00B7PD%(G'B6PD&(G5B5PD#(L8BT`@B4PD"(D<)('#F````(E$)`3H_/__ +M_XD<)(G&Z/S____'``````#'0`0`````BU<4BT\8QT`@`````,=`$`````") +M4`B-4!2)2`S'0!P`````QT`D`````(E0%(E0&,=`*`````")1CS&1F0$BT0D +M"(E^*(EN+,9&9@")1G")-"3H_/___XM<)`R+="00BWPD%(ML)!B#Q!S#C70F +M`(V\)P````"#[!R)7"00B<N)="04B=:)?"08B<>#`0&+0"")1"0$BP>)!"3H +M_/___X/^`8G!&<`/ME%E@\`"@^`#P>`$B7DH@^+/"<*(467&060$B5DLQD%F +M`(!_"`1V%XN'9`$``(7`=`W'07#@:00`ZPN-="8`QT%PD&D$`(D,).C\____ +MBP>)!"3H_/___XM<)!"+="04BWPD&(/$',.-M"8`````55=64X/L'(M\)#"+ +M1"0TBVPD.(V/L````(E$)!2)3"08B0PDZ/S___^%P(G.````BU\,QP`! +M````BT0D%(E^$(/'#(EN"#G[B48$QT8,`````'4/ZS2-M"8`````BQLY^W0G +MC8/8_?__@'@(`77N]H`<`@```73EB?&Z`0```.C9_O__BQLY^W79BP:#Z`&% +MP(D&=`B#Q!Q;7E]=PXM,)!B)="0$B0PDZ/S___^+3"04B6PD,(/$'%M>7UW_ +MX<<$)(X#``#H_/___^OAD%575E.#[!R+?"0PBT0D-(ML)#B-C[````")1"04 +MB4PD&(D,).C\____A<")QG1SBU\,QP`!````BT0D%(E^$(/'#(EN"#G[B48$ +MQT8,`````'0;C8/8_?__@W@<_W0)B?$QTN@H_O__BQLY^W7EBP:#Z`&%P(D& +M=`B#Q!Q;7E]=PXM,)!B)="0$B0PDZ/S___^+3"04B6PD,(/$'%M>7UW_X<<$ +M)*D#``#H_/___^OA4X/L"(M4)!2+7"00BTH@B5H(A<ET!8M"%(D!B=CH3OG_ +M_XE<)!"#Q`A;Z?S___^04XM$)`R+7"0(BY!8`@``C8@(`@``B9C4`0``QX#8 +M`0``#_\``(F(Y`$``(F0"`(``(V0%@(``,>`W`$```@```#'000,````B9#H +M`0``QX#@`0```````,>`[`$```````")@/`!``#'@/0!``#`G00`!<P!``") +M1"0,B5PD"%OI_/___XUT)@"-O"<`````@^P,BT0D$(M0"(F"3`$``(V"2`$` +M`,>"2`$``+!M!`#'@E`!````````@\(DB40D!(D4).C\____@\0,PXUV`(/L +M#(M$)!"+4`B)@DP!``"-@D@!``#'@D@!``"@;P0`QX)0`0```````(/")(E$ M)`2)%"3H_/___X/$#,.-=@"#[`R+1"00BU`(B8),`0``C8)(`0``QX)(`0`` -M,,($`,>"4`$```````"#PB2)1"0$B10DZ/S___^#Q`S#C78`@^P,BT0D$(U0 -M%,=`%!#V!`")0!C'0!P`````B50D!(L`@\`DB00DZ/S___^#Q`S#@^P,BT0D -M$(U0&,=`&,#"!`")0!S'0"``````B50D!(M`!(L`@\`DB00DZ/S___^#Q`S# -MC;8`````C;PG`````%.#[`B+7"00@'MF`70.#[9#9X/``3P"B$-G=D2+0SR) -M1"0$BP,%F````(D$).C\____C4,4QT,48+H$`(E;&,=#'`````")1"0$BP.# -MP"2)!"3H_/___X/$"%O#C70F`(M#/,9#9@#'0!``````BT,\C5`4QT`<```` -M`,=`(`````#'0"0`````B5`4B5`8QT`H`````(E<)!"#Q`A;Z?S___^-M@`` -M``"-O"<`````@^P,BTPD$(M!+(L0@^H!A=*)$'4KC4$4QT$4\%T$`(E)&,=! -M'`````")1"0$BP&#P"R)!"3H_/___X/$#,.)]HE,)!"#Q`SI_/___XUT)@"# -M[!R+3"0@B5PD$(ET)!2)?"08BT$HBY!D`0``BWH$.<</A(L```"%_W0)]H<< -M`@```74<B4PD((M<)!"+="04BWPD&(/$'.ED____C70F`(MQ+`^V666)#"3H -M_/___XM'(,#K!(/C`XE$)`2+!\'C!(D$).C\____#[9098EX*,9`9`2)<"R# -MXL\)VHA09<9`9@#'0'#@7`0`BUPD$(E$)""+="04BWPD&(/$'.G\____BWH( -MZ6W___^-M@````"#[!R)="08BW0D((E<)!2+7BR+0PB)!"3_4P2)7"0$BP8% -ML````(D$).C\____BUPD%(ET)""+="08@\0<Z?S___^-M"8`````C;PG```` -M`%=64X'LP````(N\)-````"-A"24````BW<HBUY8BU90B40D!(M&7(D$)/]2 -M/(U$)!R+4P2)1"0$BT,(B00D_U(<C80DM````(D$)(V,)+@```")V(V4)+P` -M``#H@,G___:$))X````"=&F+E"2T````#[:$)*````"`?V8!C00"=%Z)1"0( -MBX0DO````,<$)*@%``")1"0$Z/S___^)="0$QP0D&@```.C\____BT<LB40D -M!(L&@\!0B00DZ/S___^)/"3H_/___X'$P````%M>7\.+E"2X````ZY6-="8` -MB40D"(N$)+P```#'!"2`!0``B40D!.C\____B70D!,<$)!L```#H_/___^N@ -MC78`@^P<BU0D((E<)!2)="08BUHLBT,$BS")%"3H_/___\=#&$#W!`")6QR# -MQB3'0R``````@\,8B5PD!(DT).C\____BUPD%(MT)!B#Q!S#B?:#["R)7"0< -MBUPD,(ET)"")?"0DB6PD*(LKBW,LBX4H`0``BWX(B40D%(M&!(E$)!B`>V8! -M=!(/MD-G@\`!/`*(0V</AK\```"+0SR)1"0$C868````B00DZ/S___^)'"3H -M_/___XM$)!2%_XM0'`^$?0```(N'6`(``(D"@\`!=':+1"08C58,@(A)`0`` -M!("/20$```2`IT@!``#]B;=D`0``B;!D`0``BTT8C444B48,C488B548QT88 -ML(H$`(E.$(EV',=&(`````")$8E$)`2-122)!"3H_/___XM<)!R+="0@BWPD -M)(ML)"B#Q"S#QP+_____BT0D%,=`+/_____I>O___XM#/,9#9@#'0!`````` -MBT,\C5`4QT`<`````,=`(`````#'0"0`````B5`4B5`8QT`H`````(MT)"") -M7"0PBWPD)(M<)!R+;"0H@\0LZ?S___^-M"8`````55=64X/L+(M$)$"+:!B+ -M4!R+10")5"0<B00DZ/S___^)1"0HBT0D0`^V300/MET%QT`L_____P^V50:` -M^@L/A]P```"`?0<+#X?2````#[;!B40D(`^VP@-$)""#^`M^![D+````*-&+ -M5"0<B$H$#[9-!P^VTP^VP0'0@_@+?@>["P```"C+BTPD'(M$)!R#P0B)3"0D -M@'@$`(A8!0^$K@```#'_ZQ*+3"0<@\<!B?HX400/AI@```")^HM,)"@/MO*) -M\,'@"0-$)"3'1"04`0```,=$)`P!````B40D$(M!.(M1/`^V308%``#^_X/2 -M_R4``/[_,=L!R!':,=L!\(E$)`2+1"0H$=J)5"0(B00DZ/S___^%P'2-C;8` -M````BTPD0(G(@\`PQT$PX%`$`(E)-,=!.`````")1"0$BT$(B00DZ/S___^# -MQ"Q;7E]=PXM$)!R`>`4`='HQ_^L/D(M$)!R#QP&)^3A(!79GBTPD((GZ#[;R -MQT0D%`$```#'1"0,`0```(T$#L'@"0-$)"2)1"00BT0D*(M(.(M8/`^V10>! -MP0#X__^#T_\QT@'!$=,QT@'Q$=.+5"0HB4PD!(E<)`B)%"3H_/___X7`=)#I -M2____XM4)$#'0BP`````Z3O___^-="8`C;PG`````%575E.#["R+1"1`BW@8 -MBP>)!"3H_/___XM4)$")1"0DBT(<QP``````QT(L`````(!_!P`/A-$```") -MQH/&!(ET)"B`?P8`#X2-````,>WK"H/%`8GH.$<&=G\/MD<'B>HQVP^VTHMT -M)"3'1"0,`0```(E4)"")1"04B=#!X`D#1"0HB40D$`^W3P2+1CB+5CR)-"2# -MP0N#TP`%``#^_X/2_R4``/[_`<&+1"0@$=,QT@'!$=.)3"0$B5PD".C\____ -MA<!TBXM4)$"+0AS'`/_____'0BS_____BU0D0(G0@\`PQT(PX%`$`(E2-,=" -M.`````")1"0$BT((B00DZ/S___^#Q"Q;7E]=PXU'#(E$)"CI+/___XGVC;PG -M`````%93@^P4BTPD((M9+(!Y9@&+<QQT/H!Y2@!U.,=#+/____^)#"3H_/__ -M_XU#,,=#,.!0!`")6S3'0S@`````B40D!(M#"(D$).C\____@\046U[#QT,L -M``````^V04J$P(@&=1R+04R)1@2+4R"%TG2QBT8$@\`(B0+KIY"-="8`#[9! -M28E&!.OAC;0F`````('LK````(FT)*````"+M"2P````B9PDG````(F\)*0` -M``")K"2H````BT88#[90`@^V"(#Z`P^$)`$``(#Z!`^$/`$``(!X`05V!X!X -M!?Z0=&(/ML$QTNATPO__B<.+1@B+5BC'1BBP9@0`B;!,`0``B9!(`0``BU,$ -MQX!0`0```````(ET)`2+0PB)!"3_4GR+G"2<````B[0DH````(N\)*0```"+ -MK"2H````@<2L````PXU0"XE4)!0/MG@+,=*+1A2)1"08#[;!Z`#"__^%P(G# -M=$R-;"0@C;8`````BT,$BY"$````A=)T&(M#"(D$)/_2B?HXT`^']````(GZ -M*,*)UXL;A=MT%XM3!(EL)`2+0PB)!"3_4AR`?"0S`'2^BT8@QP``````C48P -MQT8L_____\=&,.!0!`")=C3'1C@`````B40D!(M&"(D$).C\____Z3?___^- -MM@`````/MD`$C90DF````(F$))@````/ML'H5L'__XG#Z=W^__^-4`.)5"00 -M,=(/MG@##[;!Z#K!__^%P(G#=(^-;"0@ZRN)^BC"B=>+&X7;#X1Y____BU,$ -MB6PD!(M#"(D$)/]2'(!\)#,`#X5>____BT,$BY"$````A=)TSHM#"(D$)/_2 -MB?HXT':ZBT0D$(@0Z6O^__^+1"04B!"+1B"+5"08B1#I5_[__XGVC;PG```` -M`(/L#(M$)!"+2`B)0#3'0#@`````BY%(`0``QT`PX%`$`(E0*(/`,(E$)`2) -M#"3H_/___X/$#,.)]HV\)P````!55U93@>R<````BS4`````BY0DL````,=$ -M)!@`````A?:+0AB+`(E$)!"+0AQT<(/`!#'_B40D%(UL)"2+7@B%VW4+ZTJ# -MQP&+&X7;=$&+4P2);"0$BT,(B00D_U(<@'PD-P!TXXN$)+`````Y<`AUU(-$ -M)!@!BU0D%(M$)!@Y1"00B3IV#X/"!(E4)!3KMHLVA?9UIXN4)+````"+0AR+ -M5"08B1"+A"2P````BY0DL````,=`,.!0!`")0#3'0#@`````@\`PB40D!(M" -M"(D$).C\____@<2<````6UY?7</K#9"0D)"0D)"0D)"0D)!64X/L%(LU0`(` -M`(M<)"`[-40"``"+2QP/A*4```!KUBR+@F`"``")`8N"9`(``(E!!(N":`(` -M`(E!"(N";`(``(E!#(N"<`(``(E!$(N"=`(``(E!%(N">`(``(E!&(N"?`(` -M`(E!'(N"@`(``(E!((N"A`(``(E!)(N"B`(``(E!*(U&`8G"P?H?P>H<`="# -MX`\IT*-``@``C4,PQT,PX%`$`(E;-,=#.`````")1"0$BT,(B00DZ/S___^# -MQ!1;7L/'0RS_____Z\Z-="8`@^PL,=*)7"0<BUPD,(ET)"")?"0DB6PD*(M# -M&(MH!(MP"(MX#(L`Z)2^__^%P(G!='Z%]G1@BT`$QT0D$`````")?"0,BU,8 -M@\(0B50D"(EL)`2+40B)%"3_D)@```"-0S#'0S#@4`0`B5LTQT,X`````(E$ -M)`2+0PB)!"3H_/___XM<)!R+="0@BWPD)(ML)"B#Q"S#BT`$QT0D$`$```") -M?"0,BU,<ZZ&-M@````#'0RS^____ZZ:-M"8`````5C'24X'LE````(N<)*`` -M``"+0QB+`.CEO?__BW,<A<")P711BU`$C40D'(E$)`2+00B)!"3_4AP/MT0D -M(&:)!@^W1"0B9HE&`HU#,,=#,.!0!`")6S3'0S@`````B40D!(M#"(D$).C\ -M____@<24````6U[#QT,L_O___^O+B?:#["R)?"0DBWPD,(ET)"");"0HB5PD -M'(M'&(L8C7`$BT<<B1PD@^L!B40D&.C\____@_O^B<49P"'%#[9&"H3`=0</ -MMD8.P.@$#[;`#[9.#0^V5@R)1"0(#[9&#H/@#XE$)`2-1GR)!"2)Z.CPQ/__ -MBTPD&,=',.!0!`")?S3'1S@`````B0&-1S")402)1"0$BT<(B00DZ/S___^+ -M7"0<BW0D((M\)"2+;"0H@\0LPX/L+(ET)""+="0PB6PD*(E<)!R)?"0DBWX8 -MBT8<BQ^-;P2)1"08B1PD@^L!Z/S___^#^_X/MDT!B<(9P"'0#[97!(/'=,=$ -M)`@`````#[9=`HD\)(/C#XE<)`3H4,3__XM,)!C'1C#@4`0`B78TQT8X```` -M`(D!C48PB5$$B40D!(M&"(D$).C\____BUPD'(MT)""+?"0DBVPD*(/$+,-5 -M5U93@^P,BT0D((M4)""+0!R)Q8E$)`B+0AB#Q02+.(7_#XY^````BS4````` -MA?9T=#';BU8,C4X,.<IU".M>BQ(YRG18C8+8_?__@'@(`77NBX!8`@``B42= -M`(/#`3G?==V)V(M4)`B)`HM$)""+5"0@QT`PX%`$`(E`-,=`.`````"#P#") -M1"0$BT((B00DZ/S___^#Q`Q;7E]=PXLVA?9UD.N],<#KNXVV`````%575E.# -M[!R+1"0PBU0D,(M`'(E$)!2#P`2)1"08BT(8BRB%[0^.R````(L]`````(7_ -M#X2Z````,?:+5PR-7PPYVG46Z9D```"-M"8`````BQ(YV@^$B````(V"V/W_ -M_XM(#(7)=>D/MD@(@/D$=F*+B&0!``"%R70+@WD$`'0%.4$(=,N+@%@"``"+ -M3"08B02Q@\8!.>YUMXGPBTPD,(M4)!3'03#@4`0`B0*)R(/`,(E)-,=!.``` -M``")1"0$BT$(B00DZ/S___^#Q!Q;7E]=PX#I`76^]D!,`G2XC78`ZZ.+/X7_ -M#X5.____C70F`.NG,<#KI8UV`(V\)P````!55U93@>R<````B[PDL````(M' -M&(M0"(MP!(L`B50D&(M7'(E4)!0QTNA2NO__QT<L_____X7`B<-T/8UL)"20 -MBT,$BY"$````A=)T#HM#"(D$)/_2.<9\32G&BQN%VW07BU,$B6PD!(M#"(D$ -M)/]2'(!\)#<`=,B-1S#'1S#@4`0`B7\TQT<X`````(E$)`2+1PB)!"3H_/__ -M_X'$G````%M>7UW#BU0D%(M#!,=$)`P`````B70D!(E4)!"+5"08B50D"(M3 -M"(D4)/^0E````(7`=:/'1RP`````ZYJ)]E575E.![)P```"+O"2P````BT<8 -MBU<<BW`$BP")5"08,=+H>;G__\='+/____^%P(G#=$`Q[8M#!(N0A````(72 -M=!"+0PB)!"3_TCG&?%,IQ@'%BQN%VW0;C40D)(M3!(E$)`2+0PB)!"3_4AR` -M?"0W`'3"C4<PQT<PX%`$`(E_-,='.`````")1"0$BT<(B00DZ/S___^!Q)P` -M``!;7E]=PXM#!(N0E````(72=,6+1"08QT0D$`````#'1"0(`````(ET)`2) -M1"0,BT,(B00D_]*%P'6=BU0D&`^V0@(\_W0%`>B(0@+'1RP`````ZX/K#9"0 -MD)"0D)"0D)"0D)!55U93@>R<````B[PDL````(M'&(M7'(MP!(L`B50D&#'2 -MZ'FX___'1RS_____A<")PW1`,>V+0P2+D(0```"%TG00BT,(B00D_](YQGQ3 -M*<8!Q8L;A=MT&XU$)"2+4P2)1"0$BT,(B00D_U(<@'PD-P!TPHU',,=',.!0 -M!`")?S3'1S@`````B40D!(M'"(D$).C\____@<2<````6UY?7<.+0P2+D)`` -M``"%TG3%BT0D&(ET)`2)1"0(BT,(B00D_]*%P'6MBU0D&`^V0@(\_W0%`>B( -M0@+'1RP`````ZY/K#9"0D)"0D)"0D)"0D)!55U93@>R<````B[PDL````(M' -M&(M7'(MP!(L`B50D&#'2Z(FW___'1RS_____A<")PW1`,>V+0P2+D(0```"% -MTG00BT,(B00D_](YQGQ3*<8!Q8L;A=MT&XU$)"2+4P2)1"0$BT,(B00D_U(< -M@'PD-P!TPHU',,=',.!0!`")?S3'1S@`````B40D!(M'"(D$).C\____@<2< -M````6UY?7<.+0P2+D(P```"%TG3%BT0D&(ET)`2)1"0(BT,(B00D_]*%P'6M -MBU0D&`^V0@(\_W0%`>B(0@+'1RP`````ZY/K#9"0D)"0D)"0D)"0D)!55U93 -M@>R<````B[PDL````(M'&(M7'(MP!(L`B50D&#'2Z)FV___'1RS_____A<") -MPW1`,>V+0P2+D(0```"%TG00BT,(B00D_](YQGQ3*<8!Q8L;A=MT&XU$)"2+ -M4P2)1"0$BT,(B00D_U(<@'PD-P!TPHU',,=',.!0!`")?S3'1S@`````B40D -M!(M'"(D$).C\____@<2<````6UY?7<.+0P2+D(@```"%TG3%BT0D&(ET)`2) -M1"0(BT,(B00D_]*%P'6MBU0D&`^V0@(\_W0%`>B(0@+'1RP`````ZY/K#9"0 -MD)"0D)"0D)"0D)!5,=)75E.`2+0PB)!"3_4AR`?"0G`'3,B?*+1QS'1S#@4`0`B7\TQT<X`````(D0 -MC4<PB40D!(M'"(D$).C\____@<2,````6UY?7<.-M"8`````4X/L"(M<)!"+ -M0QB+2QR+4`2+`.@8M___A<!T!\=#+/____^-0S#'0S#@4`0`B5LTQT,X```` -M`(E$)`2+0PB)!"3H_/___X/$"%O#D(UT)@!7,=)64X'LD````(NT)*````"+ -M1AB+7AR+`.C!M/__A<`/A)0````QTHVT)@````#&!!H`@\(!@_I$=?2-3"08 -MB<K&`@"-O"20````@\(!.?IU[XM0!(E,)`2+0`B)!"3_4AP/MH0DA0```(@# -M#[:$)(8```"(0P$/MH0DAP```(A#`@^VA"2(````B$,#C48PQT8PX%`$`(EV -M-,=&.`````")1"0$BT8(B00DZ/S___^!Q)````!;7E_#QT8L_____^O*C;8` -M````C;\`````@^P<B5PD%(M<)"")="08BW,<Z)FU___'0S#@4`0`B5LTQT,X -M`````(D&C4,PB40D!(M#"(D$).C\____BUPD%(MT)!B#Q!S#D(VT)@````!6 -MNOL"``!3@^P4BW0D((M>&(G8Z%BS__^%P'4T#[9#(*(`````C48PQT8PX%`$ -M`(EV-,=&.`````")1"0$BT8(B00DZ/S___^#Q!1;7L.)]KH(`P``B=CH%+/_ -M_X7`=1(/MD,@C03%</[__Z,`````Z[.Z&0,``(G8Z/*R__^%P'1$NC8#``") -MV.CBLO__A<!U0HM&",>`2`$``*![!`")L$P!``"-D$@!``#'@%`!```````` -M@\`DB50D!(D$).C\____ZX(/MD,@H@````#I4?___[I3`P``B=CHD++__X7` -M=0^+1@C'@$@!``#P=`0`ZZS'1BS_____Z2;___^0@^P,BT0D$(M0',=`,.!0 -M!`")0#3'0#@`````QP(```$"C5`PB50D!(M`"(D$).C\____@\0,PXGVC;PG -M`````%575E.#[#R+;"10BT48BU4(QD0D-`>`>"`!C7H,&<"#P`*(1"0XBW(, -M.?YT(8UV`(V>V/W___:#'`(```%T!H!["`%T.(LV.?YUY8M5",=%+`````"- -M13#'13#@4`0`B6TTQT4X`````(E$)`2)%"3H_/___X/$/%M>7UW#C50D%(M# -M4(E4)`2+4UR)%"3_4#P/MD0D(SI$)#ATJ8U$)#2+4U")1"0$BT-<B00D_U)@ -MZY.-M"8`````C;PG`````(/L'(E<)`R+7"0@B7PD%(ET)!");"08BP.+<RR) -M1"0(BT88BRB)+"3H_/___X![9@&)QW02#[9#9X/``3P"B$-G#X:)````BT,\ -MB40D!(M$)`@%F````(D$).C\____B1PDZ/S___^+1@P]*?\``'15/3G_``!T -M3H7_=`R+%SM4)`@/A)H```"-1C#'1BS^____QT8PX%`$`(EV-,=&.`````") -M1"0$BT8(B00DZ/S___^+7"0,BW0D$(M\)!2+;"08@\0<PXM&'(DHZZN-=@"+ -M0SS&0V8`QT`0`````(M#/(U0%,=`'`````#'0"``````QT`D`````(E0%(E0 -M&,=`*`````"+="00B5PD((M\)!2+7"0,BVPD&(/$'.G\____C8)(`0``QX)( -M`0``8(H$`(FR3`$``,>"4`$```````")1"0$C4(DB00DZ/S____I7/___XUV -M`(V\)P````"#[`R+$(D$)('"+`$``(E4)`3H_/___X/$#,.0C70F`(/L#(M$ -M)!"+0!B+`(D$).C\____@\0,Z\>-M"8`````@^P,BT0D$(M`&(L`B00DZ/S_ -M__^#Q`SKIXVT)@````"#[`R+1"00BT`8@'@$`8L0=`2#Q`S#B10DZ/S___^# -MQ`SI>O___XUV`(V\)P````!55U93@^P,BVPD((M%&(L09O?"`/]U18G7@>?_ -M````?CLQ]KL$````ZPF-M@````"+11B+!!B)!"3H_/___X7`=!"`>`@$=@J+ -MD&0!``"%TG02@\8!@\,$.?YUU(/$#%M>7UW#Z`?____KYY"-="8`@^P,BT0D -M$(M`&(L`B00DZ/S___^#Q`SIY/[__XUT)@"#[`R+1"00B70D"(E<)`2+0!B+ -M6`2+`(D$).C\____@_L-B<9T+X/[`708@_L$B?9T$8/[!W0,BUPD!(MT)`B# -MQ`S#B?"+7"0$BW0D"(/$#.F+_O__A<!TWHN`9`$``(7`=-2+4`2%TG0-B=#H -M;_[__XN&9`$``(M`"(7`=+F+7"0$BW0D"(/$#.E2_O__B?:#[`R+1"00B70D -M"(E<)`2+0!B+6`2+`(D$).C\____B1PDB<;H_/___XG#B?#H'O[__XG8BW0D -M"(M<)`2#Q`SI#/[__XVV`````(V_`````(/L#(M$)!"+0!B+`(D$).C\____ -M@\0,Z>3]__^-="8`@^P,BT0D$(M`&(L`B00DZ/S___^#Q`SIQ/W__XUT)@!3 -M@^P(BT0D$(M`&(L`B00DZ/S___^%P(G#=#6+@&0!``"%P'0KBU`$A=)T#8G0 -MZ(W]__^+@V0!``"+0`B%P'0@@\0(6^EW_?__C;0F`````(G8@\0(6^EE_?__ -MD(UT)@"#Q`A;PXUT)@"-O"<`````5E.#[`2+1"00BW`8@\8$@'X-`'0>,=N+ -M1)Y\@\,!B00DZ/S____H)?W__P^V1@TYV'?D@\0$6U[#C;0F`````%93@^P$ -MBT0D$(MP&(/&!(!^`0!T'C';BT2><(/#`8D$).C\____Z.7\__\/MD8!.=AW -MY(/$!%M>PXVT)@````!64X/L!(M$)!"+<!B`?@T`=!XQVXM$GGR#PP&)!"3H -M_/___^BH_/__#[9G8=^2#Q`1;7L.-=@"-O"<`````5E.#[`2+1"00BW`8 -M@'X!`'0>,=N+1)YP@\,!B00DZ/S____H:/S__P^V1@$YV'?D@\0$6U[#C78` -MC;PG`````%93@^P$BT0D$(MP&(!^`0!T'C';BT2>:(/#`8D$).C\____Z"C\ -M__\/MD8!.=AWY(/$!%M>PXUV`(V\)P````!64X/L!(M$)!"+<!B+#H7)=!HQ -MVXM$G@2#PP&)!"3H_/___^CH^___.1YWZ(/$!%M>PXVT)@````"-O"<````` -M5KHV`P``4X/L!(MT)!"+1ACHRJO__X7`=2Z+1@B+6`R#P`PYPW0AC8/8_?__ -M]H`<`@```70&@'@(`702BT8(BQN#P`PYV'7?@\0$6U[#Z'W[___KYXUT)@"- -MO"<`````55=64X'LC````(N$)*````"+:`B+4!B+=0R-?0R)5"0(.?YT'XV> -MV/W___:#'`(```%T"H!["`$/A+H```"+-CG^=>&+5"0(#[9"(*(`````BUT( -MA=MT78UT)`SK"(GVBQN%VW1/BU,$B70D!(M#"(D$)/]2'/9$)!T0=..-G<P` -M``")7"0$B2PDZ/S____'A<P`````AY,#QX74`````````(FMV````(E<)`2) -M+"3H_/___XN$)*````"+E"2@````QT`L`````,=`,.!0!`")0#3'0#@````` -M@\`PB40D!(M""(D$).C\____@<2,````6UY?7<.)'"3H_/___XM4)`C&A"2$ -M````"`^V0B"(A"2(````C80DA````(M34(E$)`2+0UR)!"3_4F#I"____XVV -M`````(V\)P````"#[!R)7"0,B70D$(G&B6PD&(G5B7PD%(M`((E$)`2+!HD$ -M).C\____A<")PP^$Y0$``,9`9`.!?0Q"_P``B7`H#Y3`#[;XA?\/A90```"+ -M51@QP(!Z"O0/E,"%P`^%E````(7_#X06`0``#[9"$CP!#X2/`0``/`(/A&D! -M```/MD(/B$-3#[=""&:)0TP/MT(*9HE#3@^W0@QFB4-0#[9"#HA#4@^W0@1F -MB4-(#[="!F:)0TH/MT(09HE#5(EK+,=#<-#;!`")'"3H_/___XM<)`R+="00 -MBWPD%(ML)!B#Q!S#BU48,<"`>@_T#Y3`A<`/A&S___^+!H/`4(D$).C\____ -MA<")Q@^$.0$``(7_#X6[````BT48@\`0QT0D"``"``")1"0$B30DZ/S___^- -M13"`2V4$B7-8QD-3]&;'0U0!`(ES+,=#<$!>!`#'12P`````QT4PX%`$`(EM -M-,=%.`````")1"0$BT4(B00DZ/S____I3?___XVT)@`````/MD(,/`%T;CP" -M=$\/MD(*B$-3#[9"!F:)0TP/MD('9HE#3@^V0@AFB4-0#[9""8A#4@^V0@1F -MB4-(#[9"!6:)0TH/MD(+9HE#5.GM_O__D(M%&(/`%.E`____@$ME!(U"$(E# -M6.NE@$ME!(U"%(E#6.F(_O__@$ME`HM%'(/`$(E#6.N'@$ME`HM%'(/`%(E# -M6.EG_O__C44PQT4L_?___\=%,.!0!`");33'13@`````B40D!(M%"(D$).C\ -M____Z8C^__^-13#'12S_____QT4PX%`$`(EM-,=%.`````")1"0$BT4(B00D -MZ/S___^)'"3H_/___^E1_O__C78`4X/L"(M<)!"+0QB+`(D$).C\____B=J# -MQ`A;Z6#]__]3@^P(BUPD$(M#&(L`B00DZ/S___^)VH/$"%OI0/W__X/L'(EL -M)!B+;"0@B5PD#(ET)!")?"04BWT8BP>)!"3H_/___XG&BT`@B40D!(L&B00D -MZ/S___^%P(G##X2+````B6@LB7`HQD!D`@^V1P0\`71M/`)T;P^V1P>-2U"- -M5PB)5"0$B0PDB40D".C\____#[9'!XA#2(M'&(E#3`^V112#Z`B$P(A#270) -MBT4<@\`(B4-@QT-LT$T$`,=#<!!D!`"+="00B5PD((M\)!2+7"0,BVPD&(/$ -M'.G\____D(!+90+KD8!+903KBXU%,,=%+/W____'13#@4`0`B6TTQT4X```` -M`(E$)`2+10B)!"3H_/___XM<)`R+="00BWPD%(ML)!B#Q!S#C;8`````5E.# -M[&2+7"1PC4PD((M#&(MS'(M0!(L`Z*.H__^%P'0PQT,L_____XU#,,=#,.!0 -M!`")6S3'0S@`````B40D!(M#"(D$).C\____@\1D6U[#BT0D((D&BT0D)(E& -M!(M$)"B)1@B+1"0LB48,Z[J)]E=64X/L$(M\)""`/0`````!BU\8BW<<QT<L -M``````^&'`$``+H(`P``B=CHT*7__X7`#X2)````NAD#``")V.B\I?__A<`/ -MA=<```"+`XD&BT,$B48$BT,(B48(BT,,B48,BT,0B480BT,4B484BT,8B488 -MBT,<QD9$`,9&00#&1D`"B48<#[9#18A&10^V!0````"(1B"-1S#'1S#@4`0` -MB7\TQT<X`````(E$)`2+1PB)!"3H_/___X/$$%M>7\.+`XD&BT,$B48$BT,( -MB48(BT,,B48,BT,0B480BT,4B484BT,8B488BT,<QD9$`,9&00#&1D`!B48< -M#[9#18A&18L5`````('"D`$``(G0P?@?P>@=`=#!^`.(1B#I=/___[HV`P`` -MB=CHT:3__X7`='''1RS_____Z5C___^0NOL"``")V.BTI/__A<`/A=#^__^+ -M`XD&BT,$B48$BT,(B48(BT,,B48,BT,0B480BT,4B484BT,8B488BT,<QD9$ -M`,9&00#&1D`"B48<#[9#18A&10^V!0````"(1B#I\_[__XL#B0:+0P2)1@2+ -M0PB)1@B+0PR)1@R+0Q")1A"+0Q2)1A2+0QB)1AB+0QS&1D0`QD9!`,9&0`&) -M1AP/MD-%B$9%#[8%`````(A&(.FC_O__C;8`````C;\`````55>)QU93@>Q< -M`@``B50D)(A,)",/MD(/QD0D,`&$P'@/@'\(!L9$)#``#X08`P``C40D4,8` -M`(V4)%`"``"#P`$YT'7OBUPD)`^VET@!```/MD,+B$<T#[9##HA',0^V2PZX -M`0```-/@9HE',HG0@\@$B(=(`0``]D,/`P^$)P(``(G0@\@%B(=(`0``BT<$ -MQX=,`0```````,>'4`$```````"`>`<`#X4X`@``BUPD)(V/5`$``(M4)"0/ -MMG<PBT,0@\(0A?:)AU0!``"+0@2)002+0@B)00B+0@R)00S'1"0H_____\=$ -M)"S_____?E0Q[>L+#[9W,(/%`3GN?D6+7*](BU,8.50D+(E[#(M#%'(0=P8Y -M1"0H=@B)1"0HB50D+(!["`1US(!\)",`BW,D=7*`?"0P`'5V#[9W,(/%`3GN -M?[N`?P@'#X3,`0``BV\$@'T%``^%90$```^V10:+3"0LBUPD*"G&B?*)\,'Z -M'P^OV@^OSO=D)"@!V8T4$8E'%(E7&(M4)"0/MD(/@^`<P?@"B(<=`@``@<1< -M`@``6UY?7<.`?"0P``^$D@```(U4)%#'1"04`0```(E4)!#'1"0,`0```(M# -M,(M0"(M`!(DT)(E4)`B)1"0$Z/S___^%P`^%#/___X"\)$X"``"J#X1X`0`` -M,<"`?"104@^$40$``(7`#X3I_O__C40D4,=$)!0`````B40D$,=$)`P!```` -MBT,PBU`(BT`$B30DB50D"(E$)`3H_/___^FS_O__QT0D2`````#'1"1,```` -M`(U$)%#'1"04`````(E$)!#'1"0,`0```(M#,(M0"(M`!`-$)$@35"1,B30D -MB40D!(E4)`CH_/___X-$)$@!BT0D2(-4)$P`@_`""T0D3`^$3_[__^NJQX=, -M`0``_____\>'4`$``/_____I[/W__P^W3S*+1"0HBU0D+/?9B<LAR,'['R': -MB40D*(E4)"SI=_[__X/*!X!_"`J(ET@!```/A;7]__\/MD\P,<`QTH/I`?;! -M(`^4P`^5PM/BT^")1SB)5SSIDOW__X!_,``/A&'^__\QR8M$CTB+4!B+0!0! -M1Q0/MD<P$5<8@\$!.<A_Y>D__O__T>B#X`&(1"0PZ=K\__^`?"1110^%I/[_ -M_\9$)%!%QD0D45+IG?[__X"\)$\"``!5#X5Z_O__L`'&A"1.`@``5<:$)$\" -M``"JZ67^__^-="8`C;PG`````%4QTE=64X'LC````(N\)*````"+1QB+=QR+ -M`.B0H/__A<")PP^$;P$``#'`C70F`,8$,`"#P`&#^%AU](UL)!2)Z,8``(V4 -M)(P```"#P`$YT'7OBU,$B6PD!(M#"(D$)/]2'`^V1"0JC58$B$8##[9$)"B( -M!@^V1"0IB$8!BT0D4(E&!(M$)%2)0@2+1"18B4((BT0D7(E"#(M$)&")0A"+ -M1"1DB4(4BT0D:(E"&(M$)&R)0AR+1"1PB4(@BT0D+(U6*(E&*(M$)#")0@2+ -M1"0TB4((BT0D.(E"#(M$)#R)0A"+1"1`B4(4BT0D1(E"&(M$)$B)0AR+1"1, -MB4(@#[9$)!2(1E`/MD0D%8A&40^V1"06B$92#[9$)!>(1E.+0PR)1DR`>T0` -M=6D/MD0D*XA&`HL;A=MU%NLKC;8`````#[9$)"L`1@*+&X7;=!>+4P2);"0$ -MBT,(B00D_U(<@'PD)P!TVXU',,=',.!0!`")?S3'1S@`````B40D!(M'"(D$ -M).C\____@<2,````6UY?7<.`3@,$ZY''1RS_____Z\.-M"8`````C;PG```` -M`%4QTE=64X'LC````(N\)*````"+1QB+=QR+`.C@GO__A<")PP^$.0$``#'` -MC70F`,8$,`"#P`&#^$QU](UL)!2)Z,8``(V4)(P```"#P`$YT'7OBU,$B6PD -M!(M#"(D$)/]2'`^V1"0JC58$B$8##[9$)"B(!@^V1"0IB$8!BT0D4(E&!(M$ -M)%2)0@2+1"18B4((BT0D7(E"#(M$)&")0A"+1"1DB4(4BT0D:(E"&(M$)&R) -M0AR+1"1PB4(@BT0D+(U6*(E&*(M$)#")0@2+1"0TB4((BT0D.(E"#(M$)#R) -M0A"+1"1`B4(4BT0D1(E"&(M$)$B)0AR+1"1,B4(@#[9$)"N(1@*+&X7;=1+K -M)XGV#[9$)"L`1@*+&X7;=!>+4P2);"0$BT,(B00D_U(<@'PD)P!TVXU',,=' -M,.!0!`")?S3'1S@`````B40D!(M'"(D$).C\____@<2,````6UY?7</'1RS_ -M____Z\F-="8`@^P<B70D%(G&B5PD$(E\)!B+6`2+4`B+0QR+.XE"'("C20$` -M`//'0QS_____BT(<@*))`0``\XE$)`2+1P2)!"3H_/___XM#((D\)(E$)`3H -M_/___XE8*(EP+,9`9`3'0'!07P0`B00DZ/S___^+7"00BW0D%(M\)!B#Q!S# -MB?93@^P(BUPD$(M#&(L`B00DZ/S___^)!"3H_/___XU#,,=#,.!0!`")6S3' -M0S@`````B40D!(M#"(D$).C\____@\0(6\.-="8`C;PG`````%.#[`B+1"00 -MBT`$BQB)!"3H_/___XN#*`$``(U0,,=`,.!0!`")0#3'0#@`````B50D!(M` -M"(D$).C\____@\0(6\.-M@````"-O"<`````@^P<BU0D((E<)!")="04B7PD -M&(-Z+/V+>B0/A/,```#VATD!```(QH<7`@```'1TBT(L@_C]#X2V`@``A<`/ -MA;<"``"+AV0!```QR3'VBU!<#[=89('B__\/`#GQ#X-3`0``QX?$`0``,%8$ -M`(F_R`$``,>'P`$```````"-A\`!``")1"0$BP>+0`2)!"3H_/___XM<)!"+ -M="04BWPD&(/$',,/MK=(`0``]\80````#X2)````BT(L@_C]#X38`0``A<`/ -MA=T!``"+3P0/MD<PBY]0`0``#[9)!BG(BX],`0``B<+!^A\/K]@/K\KWITP! -M```!V8T4$3M7&`^"W0$```^&*0(``+H#````Z7(!```/MH<7`@``/`(/C_[^ -M__^#P`&(AQ<"``#'A\0!``#0C@0`B;_(`0``Z3W____WQB`````/A;0```#W -MQD`````/A#S____WQ@$```")]@^$)P(``(M:+(7;#X7\`0``BT\$#[9',(N? -M4`$```^V208IR(N/3`$``(G"P?H?#Z_8#Z_*]Z=,`0```=F-%!$[5QAR(7<% -M.T<4<AJZ"0```.G/````=PXYVHVV``````^"G?[___:'2`$``%"-=@`/A%7_ -M__^+ATP!```QTB7__S\`@_H`#X<_____@_A_#X<V____Z6G^__^-M@````"+ -M4BRX"P```(72=5")\K`*A-)X2(M/!`^V1S"+GU`!```/MDD&*<B+CTP!``") -MPL'Z'P^OV`^ORO>G3`$```'9C101.U<8#X)A`0``=PD[1Q0/@E8!``"X#``` -M`(/F7XGRB)=(`0``B7PD!(D$).C\____]H=(`0``"`^$%/[__[H!````B?B+ -M7"00BW0D%(M\)!B#Q!SIU<+__X`]```````/A90```"#YN^)\(B'2`$``(E\ -M)`3'!"0(````Z/S____IS/W__\="+`````")?"0$QP0D'````.C\____D/:' -M20$```@/A-G^___I4OW__X`]``````!US8N'9`$``("G20$``/>+0`B`H$D! -M``#WB7PD!,<$)!0```#H_/___XM<)!"+="04BWPD&(/$',,[1Q1RJ>G-_?__ -MQT(L`````(E\)`3'!"0<````Z/S___\/MX<4`@``,=(!ATP!```1EU`!``#I -M7OW__X/FOXGPB(=(`0``B7PD!,<$)`\```#H_/___^D'_?__@^:_B?*(ET@! -M``")?"0$QP0D#@```.C\____Z>?\__^+A^@!``"`.``/A`K^__^#YM^)\(B' -M2`$``.FT_O__C70F`(/L%(ET)`B+="0<B6PD$(ML)!B)7"0$B7PD#(V&"`(` -M`(F&Y`$``(V&%@(``(F&Z`$``(N&6`(``/:&20$```B)KM0!``#'AN`!```` -M````QX;L`0```````(FV\`$``,>&]`$```"+!`")A@@"``!T5L>&V`$``"K_ -M``#'AMP!```$````BX:\`0``,=*#P`&#^&4/G<*#Z@$AT(F&O`$``(V&S`$` -M`(M<)`2);"08BW0D"(E$)!R+?"0,BVPD$(/$%.G\____#[:^2`$``/?'<``` -M``^$S0```(GX@^"@/*`/A.@```"+5@0/MD8PB10D#[9*!HN>4`$``"G(BXY, -M`0``B<+!^A\/K]@/K\KWIDP!```!V8T4$3M6&`^#G0```/?'$````+@C_P`` -M=1"#YR")^#P!&<#WT`4E_P``BY90`0``BX[D`0``B8;8`0``BX9,`0``B5$( -MBQ0DB4$$@'H%``^$D0```(N6Y`$```^W1C)FB4(,]H9(`0``(,>&W`$```X` -M```/A/;^__^+AN@!``#&``#'AN`!```!````Z=[^__^+7"0$BW0D"(M\)`R+ -M;"00@\04PXUT)@!W#CM&%`^"6/___Y"-="8`C8;,`0``QX;X`0```````(M< -M)`2)1"08BW0D"(M\)`R+;"00@\04Z33Z__^+1A2+5A@KADP!```;EE`!``"+ -MCN0!``"#^@!V#KB`````9HE!#.E2____/8````!V\(GVZ^>-M"8`````C;PG -M`````(/L#(M$)!"+0"2-D,`!``#'@,0!``#0C@0`B8#(`0``B50D!(L`BT`$ -MB00DZ/S___^#Q`S#C70F`(V\)P````"#[!R)="08BW0D((E<)!2+7@R%VP^$ -M[@````^V@TD!``"H!'1[J`AU9XN39`$``(72=%V+0@2%P'16BTH(A<ET3X"( -M20$```B+0@B`B$D!```(C8/``0``QX/$`0``T(X$`(F;R`$``(E$)`2+`XM` -M!(D$).C\____B5PD!,<$)!(```#H_/___XVT)@````"+7"04BW0D&(/$',.- -M="8`#[:62`$``/;"$'7DA=MT!*@(==SVPF!UUX/B]X/*$(V&P`$``(B62`$` -M`,>&Q`$``-".!`")ML@!``")1"0$BP:+0`2)!"3H_/___XET)`3'!"0$```` -MZ/S___^+7"04BW0D&(/$',.)\^D+____D%575E.#[`R+;"0@BT48BU@$BP") -M!"3H_/___X/[#HG&=C+'12S^____C44PQT4PX%`$`(EM-,=%.`````")1"0$ -MBT4(B00DZ/S___^#Q`Q;7E]=P_\DG8P8``"0C70F`(G&BT8,A<!U]X!^"`6- -M=@`/A`D&``"`ID@!``"_B70D!,<$)`X```#H_/___XM>'(7;#XAM!@``BTX, -MN@$```#I!`0``(M`#(7`=`WV@$D!```,#X5I____9O>&2`$``'`,#X5:____ -M]H8<`@```0^$3?___X!^"`4/A3L&``"`?C``#X20!@``,?^0C70F`.L/#[9& -M,(/'`3GX#XYX!@``BUR^2(7;=.F`>P@$=N/V@T@!```0==J+4T2+0T")5"0$ -MB00DZ/S___^+4P0/ME(&.=`/C>G^__\/MH-(`0``QX/$`0``T(X$`(F;R`$` -M`(/@]X/($(B#2`$``(V#P`$``(E$)`2+`XM`!(D$).C\____B5PD!,<$)`0` -M``#H_/___^EJ____@'@(!0^$G00``("@2`$``.>)1"0$QP0D!0```.C\____ -MBTX,N@$```#I\P(``/:`2`$``!`/A%_^___V@!P"```!#X12_O__@*!(`0`` -MY8M61(M`0,>&3`$``/_____'AE`!``#_____B58\B48XB70D!,<$)`8```#H -M_/___XM.#("F2`$``/Z%R71-@'DP`'1',=N+1)E(A<!T+_:`'`(```%T)H!X -M"`1V(`^VD$@!```/MH%(`0``@^(!@^#^"="H`8B!2`$``'4+#[9!,(/#`3G8 -M?[Z+3@R+1D`+1D2#^`$9TH/"`NDT`@``BT`,A<!T#?:`20$```P/A9G]__]F -M]X9(`0``<`P/A8K]___VAAP"```!#X1]_?__@'X(!0^%\@0``(!^,``/A'#] -M___'1"0(`````.L3@T0D"`$/MD8P.T0D"`^.4_W__XM$)`B+?(9(A?]TX8!_ -M"`1VV_:'2`$``"!UTHM..(M>/(M&0(M61`G("=J)5"0$B00DZ/S___^+5@0/ -MME(&.=`/C0;]__^-A\`!``"`CT@!```@QX=,`0```````,>'4`$```````#' -MA\0!``#0C@0`B;_(`0``B40D!(L'BT`$B00DZ/S___^)?"0$QP0D"0```.C\ -M____Z5#___^`H$@!``#?B40D!,<$)`H```#H_/___^F:_/__@*!(`0``W^F. -M_/__]H`<`@```0^$>OS__XM`0`M&1`^%;OS__P^WAD@!``!F)7$,9H/H`0^% -M6?S__X!^"`4/A5`$``"`?C``="TQ_XM<ODB%VW08@'L(!'82#[:#2`$``(/@ -M02P!#X1_!```#[9&,(/'`3GX?]6`ID@!``#WZ1?\__^`H$@!``"TQX!,`0`` -M_____\>`4`$``/_____'0#@`````QT`\`````(E$)`3'!"00````Z/S___^+ -M7@R%VP^$>P(```^V2S"%R0^.<0(``#'2,?:+1)-(A<!T(O:`'`(```%T&8!X -M"`1V$_:`2`$```%T"KX!````D(UT)@"#P@$YRG7/A?8/A#0"``"+2PR)WKH! -M````@_H##Y7`A,`/A#,!``"%R0^$*P$``(G.BTD,Z1D!``"`H$@!``#?B40D -M!,<$)`L```#H_/___^E$^___9O>&2`$``'`(BX!D`0``#X4H^___A<`/A"#[ -M__^`>&<`#X46^___BU`$BT`(]H(<`@```0^$`_O___:`'`(```$/A/;Z__^` -MHDD!``#O@*!)`0``[X"*20$```B`B$D!```(C8;``0``QX;$`0``T(X$`(FV -MR`$``(E$)`2+!HM`!(D$).C\____B70D!,<$)!(```#H_/___^FE^O__BXAD -M`0``#[>`2`$``&8E<`AF/0`(#X6#^O__A<D/A'OZ__^+002+40B`H$D!``#W -M@*))`0``]XET)`3'!"03````Z/S___^+3@RZ`0```.G1_O__BT@,N@,````Q -MP(3`#X7-_O__@(Y(`0``!(/Z`@^$[0```(N&9`$``(7`#X3M````BU`$BU@( -MA=)T"(D4).C\____A=L/A`?Z__^)'"3H_/___^GZ^?__,=N`>#``=1CI7/K_ -M_XUT)@`/MD8P@\,!.=@/CDGZ__^+1)Y(A<!TZ8!X"`1VX_:`2`$``!!TVH"@ -M2`$``.>)1"0$QP0D!0```.C\____Z\&`?C``#X0$^O__,=N0C70F`.L/#[9& -M,(/#`3G8#X[L^?__BT2>2(7`=.F`>`@$=N/V@$@!``!`=-J`H$@!``"_B40D -M!,<$)`X```#H_/___^O!B?.`HT@!``#^B1PDZ/S____IN/W__XDT).C\____ -MD.DT^?__B30DZ/S___^-=@#I)/G__XDT).C\____BTX,N@$```#IC_W__XM6 -M1(M&0(E4)`2)!"3H_/___XM6!`^V4@8YT`^-Y_C__XV&P`$``(".2`$``!#' -MAL0!``#0C@0`B;;(`0``B40D!(L&BT`$B00DZ/S___^)="0$QP0D!````.C\ -M____BT9`@*9(`0``]PM&1`^$#/G__^C\____BTX,N@$```")1BCI"/W__XM. -M.(M>/(M&0(M61`G("=J)5"0$B00DZ/S___^+5@0/ME(&.=`/C5;X__^-AL`! -M``"`CD@!```@QX9,`0```````,>&4`$```````#'AL0!``#0C@0`B;;(`0`` -MB40D!(L&BT`$B00DZ/S___^)="0$QP0D"0```.C\____Z0;X__^-AL`!``"` -MCD@!``!`QX9,`0```````,>&4`$```````#'AL0!``#0C@0`B;;(`0``B40D -M!(L&BT`$B00DZ/S___^)="0$QP0D#0```.C\____Z8S[__\/MH-(`0``QX-, -M`0```````,>#4`$```````#'@\0!``#0C@0`@\A`@^#WB(-(`0``C8/``0`` -MB9O(`0``B40D!(L#BT`$B00DZ/S___^)7"0$QP0D#0```.C\____Z1[[__^- -M=@!55U93@^P<B40D$/:`'`(```%U)`^V@$D!``"#X`0\`1G_@><`^/__@<<! -M"```@\0<B?A;7E]=PXM,)!`/MK%(`0``]\8"````#X15`0``BT0D$(M(0(M8 -M1+\"````]\8!````=`:!SP`0``#WQA````!T`X//!/?&(````'0&@<\``0`` -M@^9`=`:!SP`"``")V@G*#X4[`@``BVPD$`^VA1P"``"H!'0#@\\0J`)T`X// -M0(M$)!#V@$@!```(=`:!SX````"+5"00#[:"20$``*@$=`:!SP`(``"H"'0& -M@<\`!```BTPD$`^V23"%R8E,)!@/CM(````Q[>MMBW%$BUE`B?*)V/?2(U$\ -M]]`C03B)T0G!=`.#SP+V1"07`70&@<\`$```]D0D%Q!T`X//!/9$)!<@=`:! -MSP`!``#V1"070'0&@<\``@``B?`)V'0#@\\(]D0D%PAT!H'/@````(/%`3EL -M)!AT88M$)!"+3*A(A<ETZ_:!'`(```%TXH!Y"`1VW`^VD4@!``"(5"07@^(" -M#X1D____BUE`BW%$Z7/___^)SXM)0(M?1(G(B=KWT/?2(U<\(T<X,?^)U0G% -M#X28_O__Z8[^___WQP(```!T%O?'`!```(VT)@`````/A-H```"#Y_V+="08 -MA?8/C@T!``"+5"00BUI(A=L/A"K^__\Q[?:#'`(```$/A!O^__^`>P@$#X:3 -M````#[9S,(7V?EN+0TB%P`^$_OW___:`'`(```$/A/']__^+4#"+0@0+0@@/ -MA>+]__\QR>LHBT2+2(7`#X32_?__]H`<`@```0^$Q?W__XM0,(M"!`M""`^% -MMOW__X/!`3G.==&0@\4!.6PD&'1YBTPD$(M<J4B%VP^$E?W___:#'`(```$/ -MA(C]__^`>P@$#X=M____BU,PBT($"T((=,7I;OW__XGX)0@@``"#^`@/A1G_ -M___I$?___XD,)(//"(E<)`3H_/___XM,)!"+400/ME(&.=`/C:/]__^!SP`@ -M``#IF/W__X'/````0.DA_?__C78`55=64X/L#(M\)""+1QB+7PB+*(DL).C\ -M____BW,,@\,,.=Z)1"0(=0WK3Y"-="8`BS8YWG1$C8;8_?__BU`,A=)U[87M -M=0GV@!P"```"=0\Y1"0(=%GV@!P"```"=-&`H!P"``#]@'@(`70YB00DZ/S_ -M__^+-CG>=;R-1S#'1S#@4`0`B7\TQT<X`````(E$)`2+1PB)!"3H_/___X/$ -M#%M>7UW#B00DZ/S____K@?:`'`(```(/A73___^`B!P"```"ZZ&-="8`C;PG -M`````(/L3(E\)$2+?"10B5PD/(ET)$");"1(BU\8BP.%P'5&BT<(Z'B7___' -M1RS\____C4<PQT<PX%`$`(E_-,='.`````")1"0$BT<(B00DZ/S___^+7"0\ -MBW0D0(M\)$2+;"1(@\1,PXD$)(UK!.C\____B<:+0P2H`75GJ`(/A:X```"H -M!`^%_@```*@(C70F``^%2@$``*@0#X76`0``J$`/A8\!``"H(`^%(@(``/9& -M3!`/A'?___^-1"04BU90B40D!(M&7(D$)/]2/`^V1"0BB$9*B30DZ/S____I -M3O___\9$)#0`#[9%!(A$)#B-1"0TBU90B40D!(M&7(D$)/]28(7`B4<L=1D/ -MMD9,B<*#R)"#RH"(5DP/ME4$B$9,B%9+BT,$J`(/A%7___^-=@#&1"0T!`^V -M107&1"0Y`(A$)#B-1"0TBU90B40D!(M&7(D$)/]28(7`B4<L=2`/ME9-@\H0 -MB%9-@'T%``^5P(/BWX!.3!#!X`4)PHA638M%`*@$#X0"____QD0D-`4/MD4& -MQD0D.0"(1"0XC40D-(M64(E$)`2+1ER)!"3_4F"%P(E'+'4@#[9638/*0(A6 -M38!]!@`/E<"#XG^`3DP0P>`'"<*(5DV+10"H"`^$MO[__\9$)#0##[9%!XA$ -M)#B-1"0TBU90B40D!(M&7(D$)/]28(7`B4<L=2`/ME9-@\H$B%9-@'T'``^5 -MP(/B]X!.3!#!X`,)PHA638M%`*@0#X1K_O__ZS\/MD4*QP0DV`4``(E$)`3H -M_/___\='+``````/MD9.@'T*``^5PH/@_@G0@$Y,$(A&3HM%`*@@#X0\_O__ -MZUS&1"0T`@^V10B(1"0XC40D-(M64(E$)`2+1ER)!"3_4F"%P(E'+'4?#[96 -M38/*`8A638!]"``/E<"#XOV`3DP0`<`)PHA638M%`*A`#X3@_?__Z6K___^0 -MC70F`,9$)#0'#[9%"8A$)#B-1"0TBU90B40D!(M&7(D$)/]28(E'+/9&3!`/ -MA#']___IM?W__XVV`````(V\)P````"#["R)="0@BW0D,(E<)!R)?"0DB6PD -M*(M>&(L#A<!U1HM&".AHE/__QT8L_/___XU&,,=&,.!0!`")=C3'1C@````` -MB40D!(M&"(D$).C\____BUPD'(MT)""+?"0DBVPD*(/$+,.)!"2-:P3H_/__ -M__9#!`&)QW47]D=,$'2PB3PDZ/S____KIHVT)@````#&1"04``^V102(1"08 -MC40D%(M74(E$)`2+1UR)!"3_4F"%P(E&+'7!#[9'3(G"@\B0@\J`B%=,#[95 -M!(A'3(A72^NFC;8`````C;PG`````(/L'(E<)`R+7"0@B70D$(E\)!2);"08 -MO0$```"+0QB+`(D$).C\____@7L,#/\``(G&#Y3`#[9.3(G'B<C`Z`(AQ8GX -M#[;0.=5T&HT$O0````"#X?L)P8/)$(A.3(DT).C\____C4,PQT,PX%`$`(E; -M-,=#.`````")1"0$BT,(B00DZ/S___^+7"0,BW0D$(M\)!2+;"08@\0<PXUT -M)@!55XG'5E.!["P"``")3"0DB%0D*X!X,``/A(D```")R#'M@^@!B40D(.M2 -MD(UT)@"#?"0@`0^&A0```(![-`"+<R1U!X!\)"L`=`WVAAP"```!#X6#```` -MB1PDZ/S____V1DP0=`WVAAP"```!#X7R````@\4!B>@X1S!V*HM<KTB%VW3N -M#[9#"#P$=J,/ME0D*XG8@\4!BTPD).A@____B>@X1S!WUHD\).C\____@<0L -M`@``6UY?7<.-M@`````\!(G>#X3)````@WPD)`)UHHDT).C\____ZYB-1"0L -MQT0D%`$```")1"00QT0D#`$```"+0S"+4`B+0`2)-"2)5"0(B40D!.C\____ -MA<`/A43___^`O"0J`@``5717,<"`?"0L171\A<`/A"G___^-1"0LQT0D%``` -M``")1"00QT0D#`$```"+0S"+4`B+0`2)-"2)5"0(B40D!.C\____Z?/^__^) -M-"3H_/___XUV`.G^_O__@+PD*P(``*IUG[`!QH0D*@(``*K&A"0K`@``5>N- -MBW,DB1PDZ/S____I)____X!\)"U2#X5Y____QD0D+%+&1"0M1>ER____C78` -M@^P<B5PD#(M<)"")="00B7PD%(EL)!B+0QB+4PB+:`2+`(E4)`B)!"3H_/__ -M_XNP9`$``(7V#X2$````BU8$A=)T78N*(`(``(7)=$>+0QS'`/_____'0RS_ -M____C4,PQT,PX%`$`(E;-,=#.`````")1"0$BT,(B00DZ/S___^+7"0,BW0D -M$(M\)!2+;"08@\0<PXN25`(``(72=:^)]HM6"(72=!F+NB`"``"%_W6<BXI4 -M`@``A<EUDI"-="8`]H!(`0``<'6$#[9X,(7_?B0QR8M4B$B%TG03@'H(!'8- -M]H)(`0``<`^%7____X/!`3GY==Z#Y0,/E,&%]HG/=%"+1@2%P'0*#[;1,<GH -M+OW__XM&"(7`=`R)^0^VT3')Z!O]__^+1A"+5@R)0@2)$(M$)`B)="0$@^B` -MB00DZ/S___^+0QS'``````#I#/___P^VT3')Z.7\___KYHUV`%575HG.4X'L -MK````(E4)!R)1"0@Z/S___^+5GB)5"0TB40D+(M&=(E$)#`/MD8.B<+`Z@2$ -MTHA4)#]U#`^V3@J$R8A,)#]T8P^V5@V#X`^(1@Z`^D!W"X#Z`7<6@'X,!W00 -MN/____^!Q*P```!;7E]=PX32=#PQV^L=C;8`````]H`<`@```739#[96#8/# -M`0^VPCG8?AN+1)Y\B00DZ/S___^`>`@!=-?KM\9$)#\!ZY:`?@P(=ZH/MD8, -MC70F`/\DA<@8``#&1"0^#,9$)$``QX0DC`````P```"+A"2,````B00DZ/S_ -M__^%P(E$)%0/A&O___^`?"0_`<=$)%@`````=C`/MD8-,=(/MDPD/V;W\6:% -MT@^%1?___P^V1"1`B00DZ/S___^%P(E$)%@/A"S___^+5"0T"U0D,`^%F`,` -M`(!\)#X'#X0F!```QT0D,/____\QV\=$)#3_____@'X-``^$W@<``(M$GGR) -M!"3H_/___XM0+#E4)#2+0"AR$'<&.40D,'8(B40D,(E4)#0/MD8-@\,!.=A_ -MS8M4)%0/MEH%A-MU&HM$)%B%P`^$M0```(M4)%B`>@4`#X2G````#[9&#KK_ -M____B<&+1"0PT^*)T\'['R'0BU0D-(E$)#")1G0AVHM<)%2)5"0TB59X@'L% -M`'0U#[9&#?9T)#^+3"0T#[;0#[9#!BG"BT0D,(G5P?T?#Z_*#Z_%`<&+1"0P -M]^*-+!&)1G2);GB+1"18A<!T-(M4)%B`>@4`="H/MDH&#[9$)#^+7G0IR(M. -M>(G"P?H?#Z_:#Z_(]V9T`=F-%!&)1G2)5GB+1"0<A<`/A(````"+3"0<@'D( -M!`^&W?W__XL9BT0D((E<)"0YPP^%R_W___:!'`(```$/A+[]__^+@60!``"% -MP`^%L/W__V;W@4@!``!0`@^%H?W__XM1&#M6>(M!%`^'DOW__W().T9T#X>' -M_?__@&8/_(M<)!R`>P@'#X3-`0``@'X,!P^$VP$``#'_BX0DC````(M4)"") -M1"0$B10DZ/S___^%P(E$)%P/A$;]__^`?"0^!P^$#P4```^V5@W'A"24```` -M`````(32=23I=0(``)"#P@&)E"24````#[96#0^VPCN$))0````/CE8"``"+ -MC"24````BT2.?(D$).C\____B<,QP(7_=1.+;"0<A>UT"XM$)!R)VNATA/__ -MBU0D-(E$)`R+1"0PB1PDB50D"(E$)`3H_/___XN4))0```"+3"1<A<")1)%( -M=86+A"24````A<!^'C';BU0D7(M$FDB#PP&)!"3H_/___SN<))0```!UY(M, -M)%R)#"3H_/___[C_____Z6W\___&1"0^!\9$)$``QX0DC`````<```#IR/S_ -M_X!^#@</A43\___&1"0^"L9$)$``QX0DC`````H```#II/S__\9$)#X)QD0D -M0`#'A"2,````"0```.F*_/__QD0D/@C&1"1``,>$)(P````(````Z7#\__^` -M^@(/AKH$``#&1"0^!<9$)#\"QD0D0`;'A"2,````!0```.E(_/__@'PD/P/& -M1"0^!<>$)(P````%````&=N#X_Z#PPB(7"1`Z2+\__^`?@P'#X2^!P``BUPD -M'(![,`$/A"7^__^_`0```.D=_O__BTPD5`^V606$VW0Z#[9&#?9T)#\/ME$& -M#[;`*=")PL'Z'XE$)`B+1"0PB50D#(M4)#2)!"2)5"0$Z/S___^)1"0PB50D -M-(M4)%B%T@^$>/S__XM4)%B`>@4`#X1J_/__#[92!@^V1"0_*="+5"0TB40D -M"(G!BT0D,,'Y'XE,)`R)5"0$B00DZ/S___^)1"0PB50D-.DQ_/__,=N`?@T` -M=1KIAP@```%&=`^V1@T15GB#PP$YV`^.L@,``(M$GGR)!"3H_/___XM0+(M` -M*(G1"<%UT^FN^O__BUPD7(A3,(M4)"R+1"1<B5`DB5`L@'PD/P$/AD@&```/ -MMDPD0#'M#[9\)#^)C"28````BYPDF````(M$)"")7"0$B00DZ/S___^%P(G# -M#X2;!0``BTPD7(U4J4@QR87_?A"+`H/"!(E$BTB#P0$YSW7P#[9$)#^(0S"+ -M5"1<BT(DB?*)0R0QP(-\)!P`#Y3`B<&)1"0HB=CH_]7__XGJB>C!^A^+3"1< -M]_\/ME$PB5R!2`^V1"0_`>@!_3C0#X)P____#[;"]G0D/SP_B$$P=R&+7"1< -M#[;`C4@!C52#2(/!`8U!_\<"`````(/"!#P_=NV+1"1<B?*+3"0HZ)O5__^+ -M1"1<#[90,(72?DPQ_XM,)%R+7+E(@\<!BTPD5`^V00:+3"1<*<*)T,'X'XE4 -M)`B)1"0,BT$4BU$8B00DB50D!.C\____B5,8B4,4BUPD7`^V4S`Y^G^VBUPD -M'(7;#X11!@``BU0D'(M,)%R+0BR)02R)3"0$B10DZ/S___^$P`^%&P(``(M< -M)!R+3"1<#[:3'`(```^V@1P"``"#X@2#X/L)T(B!'`(```^VDQP"``"#X/V# -MX@()T(B!'`(```^V0S2(032+7"0<BU,8.U$8BT,4=UER!3M!%'=2BU0D7(M" -M!(!X!@!U#(M"2(M`!(!X!@!T.8M$)!SHO>S__XG'@><"$```#X6:`0``BTPD -M'(M<)%R+41@[4QB+010/@H,!``!W"3M#%`^">`$``(M$)!R`N!T"```"#X0` -M!@``BU0D'(M,)%R+7"0@BT(<B4$<BT,<B=F#P1PYR'4/Z6`#``"+`#G(#X16 -M`P``C5#TBUPD'#E:*'7JBUPD7(E:*.OABWYTBVYX#[96#8GY">D/E<"%TGX/ -MA,#'A"24`````````'4VQX0DE`````````"$P'0-.90DE`````^$1?O__P^V -MA"24````BU0D7(A",.DQ_?__C;8`````BYPDE````(M$GGR)!"3H_/___XM( -M+(M0*(E\)&");"1D.<UR#G<$.==V"(E4)&")3"1DBTPD9(M4)&#'1"0,```` -M`(D$)(E,)`B)5"0$Z/S___^+C"24````BUPD7(7`B42+2`^$P?K__RM\)&`; -M;"1D@X0DE`````&)^P^V5@T)ZP^5P#N4))0````/CD/___^$P`^$3/___^EA -M____QD0D/@;&1"1``,>$)(P````&````Z9/W__^+1"14#[98!>E0^/__OP$` -M``"+1"0@@^B`B00DZ/S___^)PS'`Q@08`(/``8/X:'7TZ/S___^+5"1<B5,( -MB0.+1"0<B4,$B1PDZ/S___^+3"1<BT$$@'@&``^%7`(``(M!2(M`!(!X!@`/ -MA4P"``#&0V8#@'L4``^$RP,``(![9@,/A,T#``"+3"1<BT$4BU$8@'MF`HE# -M7(E38`^$:0,``(M$)!R`N!T"```"#X18`P``BU0D'("*20$```2+3"1<@(E) -M`0``!("A2`$``/V)F60!``")FF0!``"+1"0@C5,,BT@8B5`8@\`4B4,,B1&+ -M5"0<B4L0B10DZ/S___^+3"1<B0PDZ/S___\/MD8/J`$/A8T```"H`G1Z@'PD -M/P$/ACT#``"+7"18@'L&``^$+P,``(M$)%R`>#``=%<Q]HM4)%R+7+)(@\8! -MC8/``0``@(M(`0``$,>#Q`$``-".!`")F\@!``")1"0$BP.+0`2)!"3H_/__ -M_XE<)`3'!"0$````Z/S___^+3"1<#[9!,#GP?ZN+5"1<BX)8`@``Z7KU__^` -M?"0_`0^&/@$``(M$)%B`>`8`#X0P`0``BU0D7(!Z,`!T5S'VBTPD7(M<L4B# -MQ@&-@\`!``"`BT@!``!`QX/$`0``T(X$`(F;R`$``(E$)`2+`XM`!(D$).C\ -M____B5PD!,<$)`T```#H_/___XM<)%P/MD,P.?!_JXM$)%R`H$@!``"_Z6?_ -M__^+1"0<,<DQTNA<\?__BU0D7(M,)""+0AR)1"0$BT$$B00DZ/S____II?[_ -M_XGJB>C!^A_W_X7`B<9^&XM4)%RY`0```(M$FD@QTH/#`>@7\?__.?-UY8M, -M)%P/MD$P.<4/C0?X__^-=*E(B>N+!H/#`8/&!(D$).C\____BU0D7`^V0C`Y -MV'_DZ>#W__^%_[@"````=`>`>Q0`#Y7`B$-FZ:#]__\QR8M$)%R)\H-\)!P` -M#Y3!Z!_0___IU_K__XM4)%R)T`7``0``@(I(`0``0,>"Q`$``-".!`")DL@! -M``")1"0$BP*+0`2)!"3H_/___XM,)%S'!"0-````B4PD!.C\____Z5S^__^+ -M1"0<@'@P``^$-/C__X!^#0`/A"KX__^+0$@Q_X7`=33INO/__XM<)!R#QP$/ -MMD,P.?@/CG4!```/MD8-.?@/CD\!``"+3"0<BT2Y2(7`#X2+\___BU@DBT2^ -M?(D$).C\____.<-UOHM,)!P/MD$P.D8-#X=G\___#[;(A<D/CC`!``"+7"0< -M,?^+0TB%P'4HZ4KS__^+7"0<@\<!#[9+,#GY#XX+`0``BU0D'(M$NDB%P`^$ -M)_/__XM8)(M$OGR)!"3H_/___SG#=,KI#_/__XM$)!RYH%\$`(G:Z.V>__\Q -MP.G]\O__BTPD7(D,).C\____]D8/`0^%;?W__XM<)%R)'"3H_/___^G#_/__ -M,<`QTH7_#X4]_/__BTPD'(M!%(M1&.DN_/__BUPD7(G8!<`!``"`BT@!```0 -MQX/$`0``T(X$`(F;R`$``(E$)`2+`XM`!(D$).C\____B5PD!,<$)`0```#H -M_/___^GJ_/__BU0D7+DP7`0`Z$Z>__\QP.E>\O__BTPD5`^V607ID//__XM4 -M)!P/MD((/`</A)[V___II_;__Y"-="8`#[9#".OHBUPD'(M&=(M6>(G'B=4K -M>Q0;:QB)ZPG[#X39````BT0D'(M,B$2)3"1\BU$DB50D>(M:)(7;=0_I-@$` -M`(L;A=L/A"P!``"+0Q2%P'7OBTPD?(M),(M!#(M1$(F,)(@```")A"2````` -MB90DA`````-!!!-1"(M+"#-#!#'1"<%UNXM4)'R+0A2+4AB)1"1PBT,,B50D -M=(M3$#G5#X>*`@``<@@YQP^#@`(``(N$)(````"+E"2$````BXPDB`````'X -M$>J)00R)41"+3"1\B4$4B5$8`7L$$6L(*7L,&6L0BUPD>(!+3!")'"3H_/__ -M_XM&=(M6>(M,)!R+7"0<B5$8C580B4$4BT80@<%4`0``B8-4`0``BT($B4$$ -MBT((B4$(BT(,B4$,B1PDZ/S___^+0QR)1"0$BP.+0`2)!"3H_/___P^V1@^# -MX!S!^`*`NQT"```"B<(/A"@"``"+3"0<BX%8`@``B)$=`@``Z;[P___'1"1P -M`````,=$)'0`````BU0D'(GY">D/E<`/ME(PB90DG`````^V5@TYE"2<```` -M#XVT````A,`/A+D```"+G"2<````QX0DD`````````")7"08BYPDD`````-< -M)!B+1)Y\B00DZ/S___^+2"R+4"B)?"1HB6PD;#G-<@YW!#G7=@B)5"1HB4PD -M;(M,)&R+5"1HQT0D#`````")!"2)3"0(B50D!.C\____BTPD'(7`B4292'1H -M*WPD:(M4)!P;;"1LB?F#A"2<`````0GIB5`,#[96#0^5P(.$))`````!.Y0D -MG````'\LA,!T"3F4))P```!T*(M$)!P/MIPDG````(A8,(M&=(M6>.ER_O__ -MD(UT)@"$P'3=Z37___^+7"1T"UPD<'1+BU0D'`^V0C"+1()$B00DZ/S___^+ -M3"0<BU0D=(M$)'`/MEDPB50D"(M4)'C'1"0,`````(E$)`2#ZP&)%"3H_/__ -M_XM,)!R)1)E(BUPD'`^V0S`[A"2<````#XTO[___C5R#2#'VB<>+`X/&`8D$ -M).C\____C00^QP,`````@\,$.X0DG````'S>Z0#O__^+C"2(````*<<9U0.$ -M)(`````3E"2$````B4$,B5$0BTPD?(E!%(E1&(E<)`2+7"1XB1PDZ/S___^` -M2TP0B1PDZ/S___^)Z`GX#X4(_O__BT9TBU9XZ7']__\\`@^$T/W__XB#'0(` -M`(M$)"2YL'4$`(N0*`$``(G8Z'":__\QP.F`[O__B?:-O"<`````5E.#[!2+ -M="0@BUX8BP.)!"3H_/___XU+!(G"BT8(Z.WM__^%P(G"="V#^/]T,HM&',=& -M,.!0!`")=C3'1C@`````B1"-1C")1"0$BT8(B00DZ/S___^#Q!1;7L.-="8` -MQT8L_____^O%C;0F`````%575E.![*P```"+O"3`````C70D$(GPC50D'(MO -M"(M?&,8``(/``3G0=?:-1@S'!GP!``")7"0$QT0D"&@```")!"3H_/___XU3 -M:,=&=`````"-3GS'1G@`````BT-HB49\BT($B4$$BT((B4$(BT(,B4$,BT(0 -MB4$0BT(4B4$4BT(8B4$8BT(<,=*)01R)\8GHBU\<Z`;M__^)`X/``74'QT<L -M_____XU',,=',.!0!`")?S3'1S@`````B40D!(M'"(D$).C\____@<2L```` -M6UY?7<.-=@"-O"<`````5C'24X/L%(MT)""+3AB+1@B+7ASHI^S__XD#@\`! -M=0?'1BS_____C48PQT8PX%`$`(EV-,=&.`````")1"0$BT8(B00DZ/S___^# -MQ!1;7L-55U93@^P,BT0D((LHBU@HBW@LB[4H`0``B00DZ/S___^+0QR-31R) -M1QR+11PYR'4(ZQB+`#G(=!*-4/0Y6BB0=?&+`(EZ*#G(=>XQR3'2B=CH^NC_ -M_XM''(E$)`2+102)!"3H_/___XD\).C\____BX=8`@``BU8<QT8PX%`$`(EV -M-,=&.`````")`HU&,(E$)`2+1@B)!"3H_/___X/$#%M>7UW#C78`C;PG```` -M`%57B<=6B=93@>R\````BUA8N/____^`?P@!=`N!Q+P```!;7E]=PXVL))`` -M``"+5U");"0$BT=<B00D_U(\C40D&(M3!(E$)`2+0PB)!"3_4AR-A"2P```` -MB00DC8PDM````(G8C90DN````.B?;/__#[:$))T```"(1@+VA"2:`````@^% -M?`$```^VA"2T`````H0DG````(A&`8N$)+@```"(!H!_3``/B60!```/MD=+ -MB$8##[:$)*,```"(1@4/MI0DF`````^V1@8/MIPDF0```,#J!HG1@^#\@^$! -M"<@/MHPDF0```-#J`=()T(/A`8/@\\'A`HT4G0`````)R(/B"(G9"="#X1"# -MX,^)VH/B(`G("=")V8/A0(/@/XG:"<B#XH`)T(A&!@^V1@</MI0DGP```(/@ -M_(/B`PG0]L,$B$8'#X37````QD8$`HGJB?CHMV[__XN4)*@```"%THE&"'0N -MC48,C5Y"B50D!,=$)`B6````B00DZ/S____'1"0$*````(D<).C\____QD,G -M`/9'3$%U)(M',(M7-(F&H@```(F6I@```(M'*(M7+(F&J@```(F6K@```(M7 -M)(72=#,QR>L,C;8`````BQ*%TG0CBT(4A<!T%XM`#(7`=!"+@%@"``")A(ZZ -M````@\$!@_D'?M>!Q+P````QP%M>7UW##[:$)+````#I?_[__P^VA"2B```` -MB$8#Z9/^__^#XPB`^P$9P(/@_H/``XA&!.D7____C;0F`````%575E.#[`R+ -M5"0@BT(8BUH<BS")-"3H_/___XL3@^H%B<=T#C'`QD08!0"#P`$YPG7TA?9T -M7H7_=%J+1Q2+5QB)0Q"+1PR)4Q2Z_____X7`=`:+D%@"``")4QB+5QR)T,'X -M'PG0B$,/BP>+0`2)!"3H_/___XA##@^VAQT"``"(0PT/MD<(/`1V1L9##`&` -M?S!`=E2+1"0@QT`L_____XM4)"")T(/`,,=",.!0!`")4C3'0C@`````B40D -M!(M""(D$).C\____@\0,6UY?7<,L`77`QD,,`HU3+(GXZ-[\__^%P'6NZ[>+ -M1SB+5SR)@[P```")^(F3P````.@O</__C9=4`0``C4LLB8.P````BX=4`0`` -MB4,LBT($B4$$BT((B4$(BT(,B4$,#[9'".@\;/__B(.0````#[9',8B#D0`` -M``^V1S2(@[0```"+ATP!``"+EU`!``")@YP```")^(F3H````.B#W/__B8.4 -M````B3PDZ/S____&@Y(`````B8.8````@'\P``^$,0$``#'MBW2O2(7V#X3E -M````@+N3``````^$Z````(!^"`0/A/<```"+AE@"``")A*O$````#[:3D@`` -M`(/%`8/"`8B3D@````^V1S`YZ`^/C0````^VTH/Z/W\8C823Q````(/"`<<` -M_____X/`!(/Z/W[OBX=D`0``A<`/A([^__^+4`2Y_____X72=`:+BE@"``") -MBZ0```"+4`BY_____X72=`:+BE@"``")BZ@```"+<`2%]@^$4_[__XM("(7) -M#X1(_O__B3PDZ/S___^)@ZP```#I-?[__XVV`````(/]/P^/:O___XMTKTB% -M]@^%&____\>$J\0`````````Z2____\/MD8(Z-)J__^(@Y,```"`?@@$#X4) -M____BT8DBX!8`@``B82KQ````.D!____,=+I(?___XVV`````('LS````(F\ -M),0```")QX!_"`&)M"3`````B=:)G"2\````B:PDR````(M86+C_____=".+ -MG"2\````B[0DP````(N\),0```"+K"3(````@<3,````PXM'7(VL))````"+ -M5U");"0$B00D_U(\C40D&(M3!(E$)`2+0PB)!"3_4AR-A"2P````B00DC8PD -MM````(G8C90DN````.A?9___#[:$))T```#VA"2:`````HA&`@^%%@$```^V -MA"2T`````H0DG````(A&`8N$)+@```"(!H!_3``/B10!```/MD=+B$8##[:4 -M))@````/MD8&#[:<))D```#`Z@:)T8/@_(/A`0G(#[:,))D```#0Z@'2"="# -MX0&#X//!X0*-%)T`````"<B#X@B)V0G0@^$0@^#/B=J#XB`)R`G0B=F#X4"# -MX#^)V@G(@^*`"=`/MI0DGP```(A&!@^V1@>#X@.#X/P)T/;#!(A&!P^VA"2C -M````B$8%=&C&1@0"B>J)^.A[:?__BY0DJ````(E&"#'`A=(/A)O^__^-1@R- -M7D*)5"0$QT0D")8```")!"3H_/___\=$)`0H````B1PDZ/S___\QP,9#)P#I -M9O[__XGV#[:$)+````#IY?[__XUV`(/C"(#[`1G`@^#^@\`#B$8$ZXD/MH0D -MH@```(A&`^GC_O__C;8`````C;PG`````%575E.#[`R+;"0@BWT8BP>%P'1$ -M,?;K#XD<)(/&`>C\____.3=V,8M$MP2)!"3H_/___X!X"`&)PW5(]D!,`G37 -MB00D@\8!Z/S___^)'"3H_/___SDW=\^-13#'13#@4`0`B6TTQT4X`````(E$ -M)`2+10B)!"3H_/___X/$#%M>7UW#QT4L_O___^O,C70F`(/L'(M$)"")7"04 -MB70D&(M8"(MP!(E$)`2+`X/H@(D$).C\____B?`QR3'2Z+_@__^`BT@!```$ -MBW0D&(E<)""+7"04@\0<Z?S___^-="8`@^P<,=*)7"04BUPD((ET)!B+0P2+ -M,`^W0UB+CF0!`P#!X`F)GG@!`P#'AH`!`P``````C40!__?QQX9T`0,`(.\$ -M`,>&?`$#``````")AG`!`P"-AG`!`P")-"2)1"0$Z/S___^+7"04BW0D&(/$ -M',/K#9"0D)"0D)"0D)"0D)"#[#R+1"1`B5PD+(ET)#")?"0TB6PD.(M`&(L` -MB00DZ/S___^+@&0!``")1"08@'@4``^$BP```(G"BT!<BU)@B40D((M$)!B) -M5"0DBU0D)(M(!(M$)""+>12+:1@Q^#'J"<(/A!\"```Y;"0D#X-C`0``BU0D -M)(M$)"`QZC'X"<(/A!4"``"+3"08,?8[="0D#[=)9&:)3"0>#[?9#X)]`0`` -M=PH[7"0@#X9Q`0``#[=$)"`Q]@^WV&:)1"0>Z5T!``"+1"08BTA<BUA@BT`$ -MB=J+<!2+>!B)R#'P,?H)P@^$>@$``(M$)!@/MFAFB>J$T@^%2`$``(M$)!@Q -MT@^W0&1FB40D'@^WP`'($=HYUW<.#X/*`0``9BG.9HET)!Z+5"08#[=$)!YF -MQT):``")2E")6E1FB4)8B>J$TG0E@/H#=""+1"08BUPD+(MT)#"+?"0TB40D -M0(ML)#B#Q#SI'/[__XM$)!@QTHE()(G!QT`T`````(E8*`^W0%@#05`3453' -M04`0PP0`B4$LB<B#P#B)03B)03R#Z!2)43")243'04@`````QT%,`0```(E$ -M)`2+002)!"3H_/___X7`=(*+7"0LBW0D,(M\)#2+;"0X@\0\PW<*.7PD(`^& -MD?[__XM4)!B)^#'V#[=29`^WV@'89HE4)!Z)ZA'R.U0D)'(>#X;G````#[=, -M)"`Q]F8I^6:)3"0>#[?9C;8`````BT0D((M4)"0IV!GRB<&)TXM4)!@/MFIF -MZ>/^__^-=@"`^@,/A*_^__^+5"08BT((BW`4BW@8Z9W^__^0C70F`(M$)!@/ -MMFAFB>J`^@,/A)0```")Z(3`=="+5"08O0$```#&0F8!Z\&+5"08#[9"9CP" -M='$L`0^$@P```(M$)!@Q]HM4)""+3"0D#[=`9(ET)`R)%"2)3"0$#[?8B5PD -M"&:)1"0>Z/S___]FA<`/A$W___\/M]@Q]F:)1"0>Z3[___\YQ@^#-O[__^DI -M_O__.T0D(`^")____XVT)@````#I`____XG0BUPD+(MT)#"+?"0TBVPD.(/$ -M/.DQP___BT0D&,9`9@"+>12+:1CI-_W__XVT)@````"-O"<`````@^QLB50D -M-(M4)'2)?"1DBWPD?(EL)&B)Q8M$)'")7"1<B50D+`^W5"1XB70D8(M/"#'V -MB40D*(M$)"AFB50D)@^WVHM4)"R)3"0@BTPD-`'8B40D.!'RB50D/#M1/`^# -M?@```(M4)#2+3"0@BT(@B0PDB40D!.C\____A<")1"1$#X1<`0``BT0D1,9` -M9@!F@WPD)@&)>"S'0'"PU@0`QT!L``````^$.P(``(']&?\```^$B@```'=T -M@?T+_P``#X0P`0``QT<L_O___XM$)$2)!"3H_/___XM7"(E4)"#K"78_QT<L -M_O___XM,)""-1S#'1S#@4`0`B7\TQT<X`````(M<)%R)1"1TBW0D8(E,)'"+ -M?"1DBVPD:(/$;.G\____.T$X#X8X____Z[:!_2/_```/A+P```"!_23_``!U -MA(M$)#3V0$X"#X54`0``BW0D1,9&9`/&1E,DBWPD1`^V1V6#X/N#R`*(1V6+ -M1"1$@'AD`P^$H0$``(M,)$0/MD%(/!`/A$8"```\"@^$^0(``(M<)""+3"0T -MBU0D1(M#)(E**(7`#X19`P``BW0D((M4)$2+?"1$BTX@B?"#P@R#P!R)5B") -M1PR)3Q")$8M<)%R+="1@BWPD9(ML)&B#Q&S#BU\(QT<L_?___XE<)"#I]?[_ -M_V:#?"0F`0^'Q/[__XM$)#2+:"2%[71/C78`BU4(.50D+(M%!`^"MP```'<* -M.40D*`^"JP````-%#!-5$#E4)#P/AYL````/@XL```"+512%THE4)$QT#XM* -M#(7)B4PD2`^%Z`(``(M$)#3V0$X"#X2X`@``BU0D1,9"9`*+7"0\BTPD.(G9 -M,=L)RP^$K0(``,9"4(K&0D@0BWPD1`^V1V6#R`2#X/V(1V7IR?[__XM4)$3& -M0F0"BUPD/(M,)#B)V3';"<L/A``!``#&0E"(QD)($.F/_O__.40D.`^&:___ -M_XMM`(7M#X4N____Z77___^+3"0LBU0D*,=$)!0!````B6PD!(E,)!"+3"0T -MB50D#,<$)/@%``")3"0(Z/S____ID/W__\=`6`````"+5"0LBT0D*`^LT!#! -MZA`/ME0D*(G!,,!F@>'_``G0BU0D1&:)0DR+="0LBUPD*`^L\PC![@@/ML.) -M]XG>#ZS^$(ET)"@/MU0D*,'O$(E\)"R+?"1$,-()T&:)1TZ+5"0LBT0D*`^L -MT`B)1"0H#[=$)"C!Z@B)5"0LQD=20&;'1T@``##`"<%FB4]0#[=4)"9FB5=* -M9HE75.G3_?__BUPD1,9#4"C&0T@*Z8O]___&04D`#[=$)";!X`F)04R+5"0L -MBT0D*(G0,=+!Z!B(05*+5"0LBT0D*(G0,=+!Z!"(05.+5"0LBT0D*(G0,=+! -MZ`B(052+5"0LBT0D*(G0,=*(056+5"0LBT0D*`^LT!B(05;!ZAB+1"0HBU0D -M+`^LT!"(05?!ZA"+1"0HBU0D+`^LT`B(05@/MEPD*,'J",9!6@#&05L`B%E9 -M#[=$)"9FP>@(B$%<#[9$)";&05X`B$%=QD%?`.D'_?__BU0D1,9"20`/MT0D -M)L'@"8E"3(M4)"R+1"0HBTPD1`^LT!B(05+!ZAB+1"0HBU0D+`^LT!"(05/! -MZA"+1"0HBU0D+`^LT`B(050/MEPD*,'J",9!5@"(654/MT0D)F;!Z`B(05</ -MMD0D)L9!60"(05CID?S__XM4)$2)5"1PBUPD7(MT)&"+?"1DBVPD:(/$;.G\ -M____BW0D1,9&9`/&1E,TZ5O]__^+7"1$QD-0*L9#2`KI2OW__XM,)$B+442+ -M04")5"0$B00DZ/S___^+3"1(BU$$.$(&#X;R_/__BU4(BT4$B50D5(M4)$2) -M1"10QD)D`8M$)"`%F````(D$).C\____A<")P0^$XP$``(M\)"@K?"10BVPD -M+!ML)%0!^\=`$``````1[HEP#(MT)$B):`2)6`B+7"1$QT`@`````(DXQT`< -M`````,=`)`````"-0!2)012)01B+1@3'02@!````B4L\B7,H@'@%``^$C``` -M`,9#4@$/MDXQ#ZWOT^WVP2!T!(GO,>V)>TB):TP/MDXPA,ET,HM\)$RX`0`` -M`#M^2`^$.P$``#'2ZQ6+7"1(#[;"BW0D3#MT@T@/A!\!``"#P@$XRG7DBT0D -M((M`)(7`#X2<_O__BUPD((M4)$2+="1$BTL@B=B#P@R#P!R)4R")1@R)3A") -M$>E"^___BT0D((M,)$2+D&0!`P#&05(!BT0D((EY2(EI3`5@`0,`B4%4#[=< -M)"9FB5E0BW0D2`^V7C"$VW0NBWPD3+@!````.WY(#X2.````,<#K$8MT)$@/ -MMLB+?"1,.WR.2'1R@\`!.-AUZ`^W1"0FB=.+="0@BWPD1,'@"8U$`O\QTO?S -MQX:``0,``````,>&=`$#`,#U!`")OG@!`P#'AGP!`P``````B89P`0,`B?"+ -M7"1<!7`!`P"+?"1DB70D<(ML)&B)1"1TBW0D8(/$;.G\____N`$```#3X(M, -M)$2(05/KA8U"`8M\)$2(1U/IV?[__\='+/W____I0_G__XVV`````(/L3(E< -M)#R+7"1<B6PD2(G5BU0D5(ET)$"%[8E\)$2)1"0DBTL(BT0D4(E4)!P/MU0D -M6(E,)!")1"08BX%D`0,`9HE4)!:)1"0H=`GVA4D!```$=#^+5"00C4,PQT,L -M_O___\=#,.!0!`")6S3'0S@`````B40D5(E4)%"+7"0\BW0D0(M\)$2+;"1( -M@\1,Z?S___^+100/MD@&A,ETM@^W1"06#[;1,?^)Q@^V13`#="08$WPD'"G0 -MB<'!^1^)1"0(B4PD#(M%%(M5&(D$)(E4)`3H_/___SG7#X=U____<@@YQ@^' -M:____XM$)!`%F````(E$)"R)!"3H_/___X7`B40D,`^$00$``(M%((M4)!") -M1"0$B10DZ/S___^%P(E$)#0/A`X!``"+3"0PBT0D&(M4)##'02``````B0&) -MR(/`%,="$`````"+5"0<B4$4B4$8BT0D-(EQ"(E1!(EY#,=!'`````#'020` -M````QT$H`0```(E(/(E8+,9`9`&A`````(7`?@P[A;P!```/G\`/ML"+5"0T -MB4(TBT4$@'@%`'0_BTPD)('I"_\``(/Y&@^&A0$``(M$)#"+5"0LB40D!(D4 -M).C\____BTPD-(D,).C\____BT,(B40D$.EP_O__#[=$)!:+5"0HBTPD),'@ -M"8U$`O\QTO=T)"B!Z0O_``"#^1J)QG9KBU0D,(M,)"R)5"0$B0PDZ/S___^+ -M1"0TB00DZ/S___^+4PB)5"00Z1W^__^+3"0PBT0D+(E,)`2)!"3H_/___XU# -M,,=#+/W____'0S#@4`0`B5LTQT,X`````(E$)%2+0PB)1"10Z07^__^X`0`` -M`-/@J0"```0/A6H!``"I`$```@^%4`$``*D!```!#X1M____BTPD-,9!4@&+ -M1"00BTPD-`5@`0,`B4%4BTPD-(M$)!B+5"0<B6DHB4%(B5%,#[=<)!;&068` -MQT%L`````,=!<)#7!`!FB5E0BT0D$(M4)!")L'`!`P#'@(`!`P``````QX!T -M`0,`P/4$`(F(>`$#`,>`?`$#```````%<`$#`(M<)#R)1"14BW0D0(E4)%"+ -M?"1$BVPD2(/$3.G\____N`$```#3X*D`@``$#X6]````J0!```(/A:4```"I -M`0```0^$4_[__\9"4@$/MDTQBU0D'(M$)!@/K=#3ZO;!('0$B=`QTHM,)#2) -M04B)44S&068`BUPD$,=!;`````"):2C'07"0UP0`BT,DA<!T;(M4)#2+7"00 -M@\(,BTL@B=B)4R"+7"0T@\`<B4,,B4L0B1&+7"0\BW0D0(M\)$2+;"1(@\1, -MPXM$)#0!]L9`4@+IM/[__XM<)#3&0U(#Z:?^__^+3"0TQD%2`NE=____BUPD -M-,9#4@/I4/___XM,)#2+7"0\BW0D0(M\)$2)3"10BVPD2(/$3.G\____C;8` -M````@^PLB5PD'(M<)#")="0@B7PD)(EL)"B+0QB+<`2+>`@/MV@,BP")!"3H -M_/___XG"BT,,B5PD#(EL)`B)-"2)?"0$Z'G[__^+7"0<BW0D((M\)"2+;"0H -M@\0LPY"-="8`@^PLB5PD'(M<)#")="0@B7PD)(EL)"B+0QB+<`2+>`@/MV@, -MBP")!"3H_/___X!X"`&)P70PBT,,#[?5B50D"(G*B5PD#(DT)(E\)`3H#OO_ -M_XM<)!R+="0@BWPD)(ML)"B#Q"S#BT,,#[?5B50D"(G*B5PD#(DT)(E\)`3H -M3O/__^O.C;8`````C;\`````@^PLB5PD'(M<)#")="0@B7PD)(EL)"B+0QB+ -M<`2+>`@/MV@,BP")!"3H_/___X!X"`&)P70PBT,,#[?5B50D"(G*B5PD#(DT -M)(E\)`3H?OK__XM<)!R+="0@BWPD)(ML)"B#Q"S#BT,,#[?5B50D"(G*B5PD -M#(DT)(E\)`3HOO+__^O.C;8`````C;\`````@^PLB5PD'(M<)#")?"0D,?^) -M="0@B6PD*(M#&`^V:`B+<`2+`(D$).C\____B<*+0PR)7"0,B6PD"(DT)(E\ -M)`3H^OG__XM<)!R+="0@BWPD)(ML)"B#Q"S#C;8`````@^P<B5PD$(M<)"") -M="04B7PD&(M#&(MX!`^V<`B+`(D$).C\____@'@(`8G!=#*+0PR)7"0,B?,/ -MMM.)5"0(B<J)/"3'1"0$`````.B/^?__BUPD$(MT)!2+?"08@\0<PXM##(E< -M)`R)\P^VTXE4)`B)RHD\),=$)`0`````Z,WQ__^+7"00BW0D%(M\)!B#Q!S# -MC;8`````C;PG`````(/L'(E<)!"+7"0@B70D%(E\)!B+0QB+>`0/MG`(BP") -M!"3H_/___X!X"`&)P70RBT,,B5PD#(GS#[;3B50D"(G*B3PDQT0D!`````#H -M[_C__XM<)!"+="04BWPD&(/$',.+0PR)7"0,B?,/MM.)5"0(B<J)/"3'1"0$ -M`````.@M\?__BUPD$(MT)!2+?"08@\0<PXVV`````(V\)P````!5B=575HG& -M4X/L#(72B99H`0,`=#&)PS'_C;0F`````(T$?X/'`8V$AF0!``")1"0$B30D -MZ/S___^)@V`!``"#PPPY[W7:H0````#'AFP!`P`2````A<!T'XVT)@````"+ -M4`@YEFP!`P!V!HF6;`$#`(M`!(7`=>B#Q`Q;7E]=PU=6B<93@^P0BX!H`0,` -MA<!T.(GS,?^+@V0!``"#QP&+DV@!``")1"0(B50D#(N#8`$``(/##(DT)(E$ -M)`3H_/___SF^:`$#`'?,QX9H`0,``````(DT).C\____@\006UY?PXVV```` -M`(V\)P````!64X/L%(MT)""`?F0#BUXL#X2,````#[9&9CP0#X2.````/`5T -M('<:+`&-M@`````/A(0```#'0RS_____C78`ZPX\"W5]QT,L_?___XUV`(M& -M/(7`=!.)1"0$BP8%F````(D$).C\____BP;H'____XDT).C\____C4,PQT,P -MX%`$`(E;-,=#.`````")1"0$BT,(B00DZ/S___^#Q!1;7L/V1E,!#X1J____ -MQD9F$(M#',8``<9&9@''0RP`````ZXT\#0^$>____\=#+/_____I>?___XGV -MC;PG`````%93@^P4BW0D((M>+(M###TD_P``=&H]&?\``'1C@'YF$'9OQT,L -M_____XVV`````(M&/(E$)`2+!@68````B00DZ/S___^+!NAC_O__B30DZ/S_ -M__^-0S#'0S#@4`0`B5LTQT,X`````(E$)`2+0PB)!"3H_/___X/$%%M>PXGV -M@'YF#'0_BT,<Q@``@'YF$'>1#[Y.9K@!````T^"I("D!`'44J`(/A'?____' -M0RP`````Z7C____'0RS]____D.EK____BT,<Q@`!BT8HQP0D$0```(E$)`3H -M_/___\9&9@'KR(VV`````(V_`````(/L'(E<)!2+7"0@B70D&(M#&(-[$`>+ -M,'8&@WL4`W<3QT,L_O___XM<)!2+="08@\0<PXDT).C\____A<!TX8DT).C\ -M____BQ`[4PAT"<=#+/S____KT(M(#(7)=<*`>`@$=KR+0!R#^/]TNXE$)`2+ -M0@2)!"3H_/___X7`=*C'0RS_____ZY^0C;0F`````(/L'(E<)!")PXE\)!B) -MUXET)!2+@"`"``"%P'4*B[-4`@``A?9T&3'`BUPD$(MT)!2+?"08@\0<PXVT -M)@````"+0QR#^/]T%8E$)`2+`XM`!(D$).C\____A<!URH!["`1V.&;W@T@! -M``!P"'6Y@'LP`'0@,?:+1+-(A<!T"XGZZ'O___^$P'2>#[9#,(/&`3GP?^*X -M`0```.N.=!&)^HG8Z!I?__\/ML#I>____XM#)(GZZ`A?__\/ML#I:?___X/L -M#(!X"`1V%S')@[AD`0```'0,B<B#Q`S#C;8`````Z!O___^#Q`P/MLB)R,.) -M]E575E.#[`R+="0@BTX8BU8<BP''`@````")Q8G'@>4``0``@>?_````=&PQ -MV^LBD(M(#(7)=5N`>`@%&=+WTB'"Z(K___^$P'1(.?MT28M.&(/#`8L$F8D$ -M).C\____A>UUS8M0#(72=2AF]X!(`0``<`AU'8M0'(/Z_W3-B50D!(L`BT`$ -MB00DZ/S___^%P'2XBT8<B1B-1C#'1C#@4`0`B78TQT8X`````(E$)`2+1@B) -M!"3H_/___X/$#%M>7UW#C;0F`````(V\)P````!55U93@^P,BW0D((M&&(L0 -M,<#VQO\/E,`/MOJ)1"0(BT8<,=L/MFPD",<``````)`Y^W(\A?]T)3';C;8` -M````BT88@\,!BP28B00DZ/S___^)!"3H_/___SG[=>.+7"0(A=MU;,=&+``` -M``#K.(GVB>B$P'2^BT88@\,!BP28B00DZ/S___^`>`@%&=+WTB'"Z&K^__^$ -MP'66BT8<QT8L_____XD8C48PQT8PX%`$`(EV-,=&.`````")1"0$BT8(B00D -MZ/S___^#Q`Q;7E]=PX7_=-&+1AB+0`2)!"3H_/___X/$##'26UY?7>G_=O__ -MZPV0D)"0D)"0D)"0D)"0@^P\B70D-(MT)$")7"0PB7PD.(M>+(M^*(%[#$+_ -M```/A(H````/MD93BU,<B$(*#[=&3(A"!@^W1DZ(0@</MT90B$((#[9&4HA" -M"0^W1DB(0@0/MT9*B$(%#[=&5(A""X!^9@$/A)4```#'0RS_____B30DZ/S_ -M__^-0S#'0S#@4`0`B5LTQT,X`````(E$)`2+0PB)!"3H_/___XM<)#"+="0T -MBWPD.(/$/,.-=@`/MD93BU,<B$(/#[=&3&:)0@@/MT9.9HE""@^W1E!FB4(, -M#[9&4HA"#@^W1DAFB4($#[=&2F:)0@8/MT949HE"$(!^9@$/A7#___^0C70F -M`(M##,=#+``````]0O\``'13/1C_```/A5;___^+0QB`>`KR#X5)____C50D -M$(M'4(E4)`2+5UR)%"3_4#R+5"0H@<(``0``#[8"J`0/A"#___^#X/N(`HD\ -M).C\____Z0[___^+0QB`>`_R#X4!____Z[:-M@````"-O"<`````55=64XG# -M@^P,,<"0C70F`,8$&`"#P`&#^"QU],<#+````.B92___B$,$H0````"+,(7V -M#Y1#!:$`````B00DZ/S____!X`P]____`0^&B0```,9#!@7&0P<+#[9#"S'M -MOP4```#&0P@`QD,)`<9#"@^#X/Z#R`B(0PO&1"0+`.L5@_\%QD0>'$!T.(/% -M`8/'`8/_#70TB3PDZ/S___^%P'3LB>@/MO")^.C"3/__@_\&B$0>#'7*QD0> -M'`*`3"0+0.O(@$PD"R#KP8!\)`M@=!>#Q`PQP%M>7UW#QD,&!\9#!P?I<O__ -M_Z$`````@[B4`0,``W;;B>H/ML+&1!@,$L9$&!Q`@\0,,<!;7E]=PY!3@^P( -MBUPD$(M#'.C@_O__A<!T!\=#+/____^-0S#'0S#@4`0`B5LTQT,X`````(E$ -M)`2+0PB)!"3H_/___X/$"%O#C;8`````C;PG`````%575E.![)P```"+K"2P -M````BWT(B?CH]5?__XN'D`$#`(7`#X6%````BW<(QX>0`0,``0```(7V#X2E -M````C50D)(M&!(E4)`2+5@B)%"3_4!P/MD0D-`&'D`$#`(!\)#0`=#$QVXET -M)`S'1"0(X-\$`(E<)`2)-"3H_/___X3`=0>#KY`!`P`!#[9$)#2#PP$YV'_1 -MBS:%]G6CBX>0`0,`@^@!A<")AY`!`P!T/XU%,,=%+/S____'13#@4`0`B6TT -MQT4X`````(E$)`2+10B)!"3H_/___X'$G````%M>7UW#QX>0`0,``````(V' -M5`$``,>'5`$``-#?!`")OU@!``#'AUP!````````B40D!(U')(D$).C\____ -MZY")]NG\____C70F`(V\)P````"#[!R)?"04BWPD((EL)!B+1"0HB5PD#(ML -M)"2)="00BW<,@ZZ0`0,``87`#XBT````B40D"(EL)`2)/"3H_/___X7`B<,/ -MA*X```"`/0``````=2Z)7"0$QP0D`@```.C\____BX:0`0,`A<!T-(M<)`R+ -M="00BWPD%(ML)!B#Q!S##[9`3*@"=<JH`0^%A````/9#3`1UO(!+3"2-="8` -MZ[*-AE0!``#'AE0!``#0WP0`B;98`0``QX9<`0```````(M<)`R)1"0DC48D -MBWPD%(E$)""+="00BVPD&(/$'.G\____C4<0B6PD!(D$).C\____Z6O___^+ -M1P2)+"3_4$"-1Q");"0$B00DZ/S____I3O___XD<).C\____B?;I;?___XUT -M)@"-O"<`````@^P<B5PD$(M<)"")?"08B70D%(M#&(MP!(L`B00DZ/S___^) -M-"2)Q^C\____B3PDB40D!.C\____QT,PX%`$`(E;-,=#.`````"#^`$9P/?0 -MB4,LC4,PB40D!(M#"(D$).C\____BUPD$(MT)!2+?"08@\0<PXUV`(V\)P`` -M``!75E.#[!"`/0``````BWPD('1MBU\,C7<,.?-U">LUD(L;.?-T+HV3V/W_ -M_X!Z"`%U[O:"'`(```%TY0^V!0````")%"2)1"0$Z/S___^+&SGS==+'A\P` -M````AY,#C8?,````QX?4`````````(F_V````(E$)`2)/"3H_/___X/$$%M> -M7\.)]HV\)P````!55U93@>S,````B[0DX````(U\)!")^(U4)!R+;@B+3AC& -M``"#P`$YT'7VC4<,QP=\`0``B4PD!,=$)`BP````B00DZ/S___\QTHGYB>B+ -M7ASH6L3__XD#@\`!=0?'1BS_____C48PQT8PX%`$`(EV-,=&.`````")1"0$ -MBT8(B00DZ/S___^!Q,P```!;7E]=PXVT)@````"-O"<`````5C'`4X/L%(MT -M)""+7AR)]L8$&`"#P`$]@````'7RB=CH:_K__X7`=##'1BS_____C48PQT8P -MX%`$`(EV-,=&.`````")1"0$BT8(B00DZ/S___^#Q!1;7L/'`X`````QTL=# -M/``@```/MD0:#(/@#X/H`SP"=P7&1!HL!H/"`8/Z$'7DZZJ-=@"-O"<````` -M55=64X/L#(M4)""+0AB+6AR+,#'`Q@08`(/``3WZ````=?*)-"3H_/___XG% -M,<"0Q@08`(/``3WZ````=?*%]G1=A>UT68M%%(M5&(E#!(M%#(E3"+K_____ -MA<!T!HN06`(``(E3#(M5'(G0P?@?"="(0P.+10"+0`2)!"3H_/___XA#`@^V -MA1T"``"(0P$/MD4(/`1W1"P!#X2O`0``BT0D(,=`+/____^+5"0@B="#P##' -M0C#@4`0`B5(TQT(X`````(E$)`2+0@B)!"3H_/___X/$#%M>7UW#Q@,!BT4X -M9HF#Z````(GHZ$%*__^-E50!``"-2R")@^0```"+A50!``")0R"+0@2)002+ -M0@B)00B+0@R)00P/MD4(Z$Y&__^(@X0````/MD4QB(.%````BX5,`0``BY50 -M`0``B8/0````B>B)D]0```#HG[;__XF#B````(DL).C\____QH.&`````(F# -MS````(!],``/A$X!```Q_XMTO4B%]@^$`@$``("[AP`````/A`4!``"`?@@$ -M#X04`0``BX98`@``B82[C`````^VDX8```"#QP&#P@&(DX8````/MD4P.?@/ -MCZ$````/MM*#^@]_&(V$DXP```"#P@''`/____^#P`2#^@]^[XN%9`$``(7` -M#X2U_O__BU`$N?____^%TG0&BXI8`@``B8O8````BU`(N?____^%TG0&BXI8 -M`@``B8O<````BU`$A=(/A'K^__^+0`B%P`^$;_[__XDL).C\____B8/@```` -MZ5S^___&`P*-4R")Z.AEU?__A<`/A3S^___I0O[__X/_#Y"-="8`#X]1____ -MBW2]2(7VC70F``^%_O[__\>$NXP`````````Z1+___\/MD8(Z-%$__^(@X<` -M``"`?@@$#X7L_O__BT8DBX!8`@``B82[C````.GD_O__,=+I!/___Y"-="8` -M55=64X/L#(M4)""+0AB+6AR+,#'`Q@08`(/``3W8````=?*)-"3H_/___XG' -M,<"0Q@08`(/``3W8````=?*%]G0UA?]T,8M'%(M7&(E#!(M'#(E3"+K_____ -MA<!T!HN06`(``(E3#`^V1P@\!'=$+`$/A!@!``"+1"0@QT`L_____XM4)"") -MT(/`,,=",.!0!`")4C3'0C@`````B40D!(M""(D$).C\____@\0,6UY?7</& -M`P&+AU0!``"-EU0!``"-2Q")0Q"+0@2)002+0@B)00B+0@R)00P/MD<(Z+U# -M__^(0W0/MD<QB$-UBX=,`0``BY=0`0``B8/`````B?B)D\0```#H%+3__XE# -M>(D\).C\____QD-V`(F#O````(!_,``/A*4````Q[>LM@'X(!'1'#[93=HN& -M6`(``(E$DWP/MD-V@\`!/`^(0W9W6`^V1S"#Q0$YZ'Y-BW2O2(7V=.V`>W<` -M=<4/MD8(Z"U#__^(0W>`?@@$=;F+5B0/MD-VBY)8`@``B52#?.NTQ@,"C5,0 -MB?CH9-C__X7`#X73_O__Z=G^__\/ME-V@_H/#X_,_O__C423?(/"`<<`____ -M_X/`!(/Z#W[OZ;+^__\QTNOBC;8`````C;\`````55=64X/L#(M4)""+0AB+ -M6AR+,#'`Q@08`(/``3VN````=?*)-"3H_/___XG',<"0Q@08`(/``3VN```` -M=?*%]G0OA?]T*XM'%+K_____B4,$BT<,A<!T!HN06`(``(E3"`^V1P@\!'=$ -M+`$/A`P!``"+1"0@QT`L_____XM4)"")T(/`,,=",.!0!`")4C3'0C@````` -MB40D!(M""(D$).C\____@\0,6UY?7</&`P&+AU0!``"-EU0!``"-2PR)0PR+ -M0@2)002+0@B)00B+0@R)00P/MD<(Z.-!__^(0W`/MD<QB$-QBX=,`0``B8.< -M````B?CH1K+__XE#=(D\).C\____QD-R`(F#F````(!_,``/A*<````Q[>LM -M@'X(!'1'#[93<HN&6`(``(E$DW@/MD-R@\`!/`>(0W)W6`^V1S"#Q0$YZ'Y- -MBW2O2(7V=.V`>W,`=<4/MD8(Z%]!__^(0W.`?@@$=;F+5B0/MD-RBY)8`@`` -MB52#>.NTQ@,"C5,,B?CHEM;__X7`#X7?_O__Z>7^__\/ME-R@_H'B?8/C];^ -M__^-1)-X@\(!QP#_____@\`$@_H'?N_IO/[__S'2Z^*-M@````"-OP````!5 -M5U93@^P\BVPD4(M=&(L#A<!U:XLU`````,9$)#0&A?9T,8U\)#2+7@B%VW0@ -MB?:+0PB)1"0XBT,$B7PD!,<$)`````#_4&"+&X7;=>*+-H7V==.-13#'13#@ -M4`0`B6TTQT4X`````(E$)`2+10B)!"3H_/___X/$/%M>7UW#B00DC7L$Z/S_ -M__^)Q@^V0P2$P'4]@'X(`0^$/P$``,=%+/[____V1DP0=*F-1"04BU90B40D -M!(M&7(D$)/]2/`^V1"0BB$9*B30DZ/S____K@RP!=!#'12S^____C70F`.EO -M____@'X(!':S#[9'`3P!=$D/@]T!``"#?1`8C78`=9R-CE0!```QP,8$"`"# -MP`&#^!!U](M'!(U7!(D!BT($B4$$BT((B4$(BT(,B4$,@(Y(`0``!.F'```` -M@WT02`^%6/___XV.;`$``#'`Q@0(`(/``8/X!'7TBU<$C4<$B1&+4`2)402+ -M4`B)40B+4`R)40R+4!")41"+4!2)412+4!B)41B+4!R)41R+4"")42"+4"2) -M422+4"B)42B+4"R)42R+4#")43"+4#2)432+4#B)43B+0#R)03R`CD@!```$ -M]H9(`0``!`^$A/[__XDT).C\____Z7?^__^`?P$%#X>W_O__#[9'`9"-="8` -M_R2%[!@``(-]$`F0C70F``^%F/[__\9$)#0)#[9'!(A$)#B-1"0TBU90B40D -M!(M&7(D$)/]28(E%+.EV_O__D(-]$`D/A63^___&1"0T!0^V1P3&1"0Y`(A$ -M)#B-1"0TBU90B40D!(M&7(D$)/]28(E%+(!.3!#I.?[__XUT)@"#?1`)#X4D -M_O__QD0D-`0/MD<$QD0D.0"(1"0XZ[Z)]H-]$`D/A03^___&1"0T`P^V1P2( -M1"0XZZ.-M"8`````@WT0"0^%Y/W__\9$)#0"Z]Z#?1`)#X73_?__@$Y,@,9$ -M)#0`Z\D\`G0,QT4L_O___^G=_O__@WT0"0^VOAT"```/A:?]__^-0PB)^HE$ -M)`@/MD,(.,)T.H!^"`2(AAT"``!V+H!^,`!T*#')BU2.2(72=!.`>@@$=@T/ -MMH8=`@``B((=`@``#[9&,(/!`3G(?]J)^#P"=`R`CD@!```$Z6_^__^+5"0( -M@#H"=.NYL'4$`(GJB?#HY67__^D'_?__55=64X/L#(ML)""+71B+`XU[!(D$ -M).C\____B<:+0P2H`70[C8Y4`0``,<"-="8`Q@0(`(/``8/X$'7TBT<$C5<$ -MB0&+0@2)002+0@B)00B+0@R)00R`CD@!```$BP>H`@^$?@```(V.;`$``#'` -MD,8$"`"#P`&#^$!U](M7%(U'%(D1BU`$B5$$BU`(B5$(BU`,B5$,BU`0B5$0 -MBU`4B5$4BU`8B5$8BU`<B5$<BU`@B5$@BU`DB5$DBU`HB5$HBU`LB5$LBU`P -MB5$PBU`TB5$TBU`XB5$XBT`\B4$\@(Y(`0``!/:&2`$```1T"(DT).C\____ -MC44PQT4PX%`$`(EM-,=%.`````")1"0$BT4(B00DZ/S___^#Q`Q;7E]=P^L- -MD)"0D)"0D)"0D)"0D%575E.![,P```"+M"3@````C5PD$(M^&(L'B00DZ/S_ -M__^-5"0<B<6)V(VV`````,8``(/``3G0=?:-5P2-0PS'`WP!``")5"0$QT0D -M"+````")!"3H_/___XM&"(GJB=GH^K?__X7`B<)T+8/X_W0SBT8<QT8PX%`$ -M`(EV-,=&.`````")$(U&,(E$)`2+1@B)!"3H_/___X'$S````%M>7UW#QT8L -M_____^O$C78`55=64X/L'(M$)#")1"04BT`$BS"+CB@!``")\(N6<`$#`(E, -M)!CH=>;__XML)!2+10B+302+4""+02`YT',"B=")1"0$BP&)!"3H_/___X7` -MB<</A(@!``"+%0````"%TGX3BTPD%(M!!#N0O`$```^?P`^VT,9'9@"+;"04 -MB5<T#[9%9H3`#X76````BT0D%(M4)!2#P"2)1SB+0@2`3V4"BXYD`0,`B4<H -MBVPD%(G*P>H)#[=%6@^W75@IPXN&;`$#`(/H`0^OT#G3=@*)TV:!^P`!9HE? -M4'8&9L='4``!BT0D%(!X%``/A-<```#V1V4$#X3-````B<$/MT!8,=*)S0-! -M4!-15#';#[=/4"G(#[=-6AG:,=LIR!G:B4=(B5=,@$]E"(M.)(M$)!C'1W"0 -M\00`QT=L`#<$`(7)B4<L#X0.`0``BTX@C5<,C48<B58@B4<,B4\0B1&#Q!Q; -M7E]=PSP##X0B____BTPD%(M!"(!/902+GF@!`P")1RB%VP^$W@```(N.9`$# -M`#'M,=N+AF`!`P"%R8L$&'05B<*)R,8"`(/"`8/H`77UBXYD`0,`@\4!@\,, -M.:YH`0,`=]#IY?[__XM,)!0QT@^W05H#05`3452)1TB)5TSI0O___XM4)!0/ -MMD)FA,!U8HM$)!2+3"04@\`DB40D!(M!!(D$).C\____BVPD%(M%!(L`Z`OE -M__^+1"08BU0D&,=`+/_____'0##@4`0`B4`TQT`X`````(/`,(E$)`2+0@B) -M!"3H_/___X/$'%M>7UW#/`-UM.N8B7PD,(/$'%M>7UWI_/___XN.9`$#`.D[ -M_O__@^PLB7PD)(M\)#")7"0<B70D((EL)"B+1RR+5RB++XE$)!0/MD=FB[)D -M`0``/`%T0SP"#X0)`0``C488QD=F`,=&&(#U!`")?AS'1B``````B40D!(U% -M)(D$).C\____BUPD'(MT)""+?"0DBVPD*(/$+,,/MT9:9@-'4#M6!&:)1EH/ -MA+<"```/MT9:9CM&6`^#.0$```^V1V7'1SP`````QT<X`````(/@_8/(!(A' -M98M6"(E7*,9'9@`/MT9:#[=.6(N59`$#`"G!BX5L`0,`P>H)@^@!#Z_0.=%V -M`HG19H'Y``%FB4]0=@9FQT=0``&`?A0`=`KV1V4$#X53`@``#[=&6C'2`T90 -M$U94B4=(B5=,]D=E`@^$VP$``(MU)(7V#X30`0``BTT@C5<,C44<B54@B4<, -MB4\0B1'I'O___XM&!,9&9P&`H!P"``#^BT8(@*`<`@``_HM&!("@20$``/>+ -M1@B`H$D!``#WBT8$BP#H../__P^V1F:$P`^$Y````#P##X3<````B3PDZ/S_ -M__^+5"04QT(L_____XG0@\`PQT(PX%`$`(E2-,=".`````")1"0$BT((B00D -MZ/S____IE_[__XVT)@````"+LF0!``"+1@2+5@B)1"00B50D&`^V;F:`?A0` -M#X2-````BTY<,=(/MT98BUY@*<&)Z!G3+`&)3ER)7F`/A)P!``")ZH#Z`@^$ -MK@$``(M&7`M&8`^%H@```(M4)!"+`NA\XO__B>B$P`^$60$``#P##X11`0`` -MB3PDZ/S___^)\(M<)!R+="0@BWPD)(ML)"B#Q"SIZ)7__XU&)(E$)`2+1@2) -M!"3H_/___^D-____#[=&6#';B>J)P0-.7!->8(32B4Y<B5Y@=7R+1"00BU`8 -M,=J)5"0(BU`4BT0D"#'*"=!U!,9&9@&+1"08BU`8,T@4,=H)R@^$7O___XM4 -M)!"+`NC:X?__B>B$P`^$H````#P##X28````B3PDZ/S___^+5"04Z:;^__^) -M?"0PBUPD'(MT)""+?"0DBVPD*(/$+.G\____B>J`^@-UFXM$)!"+4!@QVHE4 -M)`B+4!2+1"0(,<H)T'6!Z>[^__^0C70F`&8[1E@/@F[]__]FQT9:``#I-/W_ -M_P^W3EHQT@^W1E@#1E`35E0QVRG(#[=/4!G:,=LIR!G:B4=(B5=,Z93]__^- -M1B2)1"0$BT8$B00DZ/S____I4?___XU&)(E$)`2+1@2)!"3H_/___^F8_O__ -MBT0D$(M0&#-(%#':"<H/A5O^___&1F8`Z5+^__^+1"00BU`8,T@4,=H)R@^% -M/O[__^E%_O__C;8`````C;\`````4XM<)`CV0V4"BP/&0V8`=!^+4"2%TG08 -MBT@@C5,,B5`@@\`<B4,,B4L0B1%;PXGVB5PD"%OI_/___XVV`````%.#[`B+ -M7"00BP.+D'`!`P#HZ]___XL#BT@DA<ET&8M(((U3#(E0((/`'(E##(E+$(D1 -M@\0(6\.)7"00@\0(6^G\____C;8`````C;\`````@^PLBU0D,(E<)!R)="0@ -MB7PD)(EL)"B+6BR+*XN]*`$``(M'&(L`B40D%(M",(D4)(E$)!CH_/___X![ -M"`0/AHP```"+LV0!``"%]@^$R@```(M&!(7`=`RY`@```#'2Z#NM__^+1@B% -MP'0,N0(````QTN@HK?__BT80BU8,B4($B1"-A8````")="0$B00DZ/S___^+ -M7"08@\,!.UPD%'1#BT<8BU0D&(M$D`B)!"3H_/___XG:BW0D((M<)!R+?"0D -MBVPD*(/$+.GA6___D(D<).C\____BUPD&(/#`3M<)!1UO8U',,=',.!0!`") -M?S3'1S@`````B40D!(M'"(D$).C\____BUPD'(MT)""+?"0DBVPD*(/$+,.Y -M`@```#'2B=CH=JS__^EF____D(/L'(E<)`R+7"0@B70D$(E\)!2);"08BVL$ -MBW,(BT4`B?*+N"@!``")Z.@!0?__QX9D`0````````^VE1P"``#'A60!```` -M````#[:&'`(``(/B!(/@^PG0B(8<`@``#[:5'`(``(/@_8/B`@G0B(8<`@`` -M#[9%-(A&-(U',,=',.!0!`")?S3'1S@`````B40D!(M'"(D$).C\____B70D -M!,<$)!4```#H_/___XM#$(M3#,=#&/!;!`")6QS'0R``````@\,8B4($B1") -M7"0$BT4`B00DZ/S___^+7"0,BW0D$(M\)!2+;"08@\0<PU6)U5=64X/L#(D$ -M)(N`4`(``(7`=$&+70B+=0R-="8`.7`$=RMR!#D8<R6+2`P[302+4`AV#8/$ -M#+@!````6UY?7<-R"SM5`'?LC;8`````BT`0A<!UR8L$)(NX,`(```4P`@`` -MB40D!#G'=$6-=@"-3_2`>60`=2Z+64@QT@^W05"+<4P!V!'R.54$=QER!3E% -M`',2.W4,<IR-M@````!W!3M="'*/BS\Y?"0$C78`=;Z+%"2+NC@"``"!PC@" -M``")5"0(.==U$^M8D(UT)@`\@'03BS\[?"0(=$>-3_0/MD%DA,!UZ8M92#'2 -M#[=!4(MQ3`'8$?(Y501WV'(%.44`<]$[=0P/@BK___^-="8`=\([70@/@AO_ -M__^+/SM\)`AUN8/$##'`6UY?7<.-=@"#[`B)'"2+7"0,B70D!(MT)!")V(GR -MZ+7^__^%P'4<BX-0`@``B480,<")LU`"``"+'"2+="0$@\0(PXM6'+C_____ -MA=)TZ8N35`(``(V#5`(``(72=`J-0A"+4A"%TG7VB3"X_____^O&C;8````` -M@^P0B6PD#(ML)!2)'"2+3"08B70D!(E\)`B+A5`"``"-E5`"```YR'00C;8` -M````C5`0BT`0.<AU]HM9%(UY%(M!$(NU3`(``#G?B0+'01``````=!6+41B+ -M!HES!(D>B5`$B0*)>1B)>12+10#'0#0!````BQPDBW0D!(M\)`B+;"0,@\00 -MPY"-M"8`````BU0D!(M,)`B+`H7`=`J+0@2)2`B)2@3#B4H$B0K#B?:+1"0$ -M@\`LB40D!.G\____4X/L"(M<)!"+4T"%TG03BT-$QT-``````(D<)(E$)`3_ -MTHM#<(E;&,=#'`````")0Q2-0Q2)1"0$BP.#P"R)!"3H_/___X/$"%O#D(UT -M)@"#[!R)7"04BUPD((ET)!B+<RB)'"3H_/___XM#$(U+#(M3#(.N)`(```&# -MKB`"```!B4($B1"+0SR)2PR)2Q"%P'0,B40D!(DT).C\____BUPD%(MT)!B# -MQ!S#D(UT)@!55U93@^PLBW0D0(M\)$2+3BR+1DB+5DR+66B)1"08B50D'(M! -M2(M13(7;B40D((E4)"0/MW90#X2C````#[9!90^W5"1(@^`!#[;`.=`/A(P` -M``"+3"08*TPD((LKP>$).>F)Z',+Z:$```"-="8`B="#PQ")P@,3.=%S\XLK -M*<$/M_;!Y@F)R(G*,<D#4P@32PPIQ3GNB5<(B4\,C4\0B2]V)HM#&(M3'"LW -MQT<$`````(G/B4$(BT,0@\,0B5$,B0&#P1`Y\'+:B3>X`0```,='!`$```"# -MQ"Q;7E]=PXM!;(7`=!R+5"1(B7PD!(D,)(E4)`C_T(7`=`>)^^E1____@\0L -M,<!;7E]=PS'`Z6O___^-M@````"-OP````!55U93@^PLBW0D0(M&*(E$)""` -M?F0`#X6V````BTPD(#'2BWY(#[=&4(MN3(N94`(```'X$>J%VP^$(@$```^V -M3F6#X4"$R70*@WLH``^$`@$``#E>.`^$^0```#M3!)`/@N\```!W#CL#C;8` -M````#X;?````.VL,C;0F``````^'SP````^#P````(M+&(U6#(U#%(E3&(E& -M#(E.$(D1@\0L6UY?7<.+5"0<BTPD((M""(.I(`(```&)1BB#@"`"```!B40D -M((!X"`0/AU,"``"+7"0@BTPD((N3,`(``('!,`(``#G*=2.+!HE.#,=`-`$` -M``"-1@R)002)@S`"``")3A"#Q"Q;7E]=PX-^-``/A>H!``"+1"0@BY@T`@`` -MC7OTBT<TA<`/B,,"``"+5"0@C48,B4X,B0.)@C0"``")7A"#Q"Q;7E]=PSM[ -M"`^"-____XM;$(7;#X7E_O__BTXXA<D/A`P"``"+3"0@@'D(!`^&6?___XM< -M)""+FV0!``"%VXE<)!P/A)8!``"`>V<`#X6,`0``]D9E"`^%@@$``(%^<%`! -M!0`/A'4!``"+3"0@.TL$#X5H`0``@'L4``^$10(``(M+7(M;8(E,)`@YW8E< -M)`P/A\O^__]R"#G/#X/!_O__.U0D#)"-="8`=Q0/@BT!```[1"0(C70F``^& -M'P$``(M&!(-`"`&)!"3H_/___XM4)!R)1"0DBP:+7"0DB0.+1@2)0P2+1C2) -M0S2+0@2+3"0DB7E(B6E,BUPD'(E!*(EQ+,=!;$#[!``/MT-<QT%P4`$%`,9! -M9@#'06@`````9BGX9HE!4`^V5F4/MD%EB=.)T8/C@(/@/X/A0`G8"<B)TX/C -M,(/@QXG1"=B#X0@)R(G1@^$$@^#Y@^(""<@)T`^V5F6#X/Z#X@$)T(M4)"2( -M0F6+1CB%P`^$M@$``(E".(M<)!R-5@R+0P2+B#P"``")D#P"```%.`(``(E& -M#(D1QD9D@(M$)"2)3A")1"1`@\0L6UY?7>G\____#X[+````C48,B4($B4X0 -MBTPD((E6#(F!,`(``(/$+%M>7UW#]D9E!`^$H_W__XM4)"#V@DD!```@#X22 -M_?__@*))`0``W^C\____BTPD((")2`$```2)02B+!L>`B`$#``$```"+04`) -M03B+040)03SI6_W___9&94`/A>K]__^+3"0@BYE4`@``A=MU&>G7_?__.WL( -M#X+O_/__BUL0A=L/A,/]__\[4P1R\(UV`'<$.P-VYSMK#(VT)@````!WVP^" -MQ/S__Y"-M"8`````Z\*+7"0@C48,B4X,BY,T`@``B8,T`@``B0*)5A#I$_W_ -M_XM3!(U&#(-'-`&)0P2)7@R)5A")`NGY_/__BUPD'(M+7(M;8(E,)!`YVHE< -M)!0/@H+\__]W"#G(#X9X_/__.VPD%'(0#X?I_O__.WPD$`^#W_[__XM&!(-` -M"`&)!"3H_/___XM4)!R)1"0DBP:+7"0DB0.+1@2)0P2+1C2)0S2+0@CIN_W_ -M_XM,)"3'03@!````Z3W^__^-M"8`````4X/L"(M<)!"+0RB#@"`"```!BT,\ -MA<!T*L=`'`````")6"#'0"0`````B40D!(M#*(D$).C\____A<!U$XM#/(E# -M.(E<)!"#Q`A;Z?S___^#Q`A;PXUT)@"-O"<`````@^PLB70D((MT)#")7"0< -MB7PD)(EL)"B+1BB+7BR)1"08B[AD`0``#[=&4`^W:U!FB40D%H!^9@%T1P^V -M1F;&0V0`B$-FB70D!(M#!(D$).C\____BT,$@V@(`8M'!(.`)`(```&+="0@ -MB5PD,(M\)"2+7"0<BVPD*(/$+.G\____BU9,BTM,BT9(,T-(,=$)P76GBT8@ -MBU8DA<!T#HUV`,8"`(/"`8/H`77UBT<$.T0D&'0XB48HBU=@BT=<B59,B49( -M9BML)!;&1F8`9HEN4(M<)!R)="0PBWPD)(MT)""+;"0H@\0LZ?S___^+1PCK -MP^L-D)"0D)"0D)"0D)"0D%575E.#[!R+1"0PBTPD,(/`#(E$)!"+1"0P@\$< -MB4PD#(/`+(E$)`B+3"0PQT$T`````.L=BT((A=*+3"0PB4$L="V+0@3'0@@` -M````B00D_Q*+1"0PBU`L.U`P==>%TL=`,`````#'0"P`````==.+1"0PBTPD -M$(M`##G(B40D%`^$,P(``,=$)!@`````BW0D%('N*`(``(N&(`(``(7`=1"+ -M1"04]H8<`@``((UX"'0/BTPD%,=$)!@!````C7D(C:XX`@``BXXP`@``.?ET -M?XL1B<N+002#ZPR)0@2)$(E)!(D)=&D/MI8<`@``]L(!#X0X`0``BX8D`@`` -MA<!T#XN&1`(``#M#-`^/A@$``(/B&`^%?0$``(M#-(EK#(.&)`(```&)AD0" -M``"+ACP"``")CCP"``")"(E#$(M&!(D<)/]0((N.,`(``#GY=8&-OD@"``"+ -MCD@"```Y^719BQ&)RXM!!(/K#(E"!(D0B4D$B0ET0XM#/(7`="K'0!P````` -MB5@@QT`D`````(E$)`2+0RB)!"3H_/___X7`=;6+0SR)0SB)'"3H_/___XN. -M2`(``#GY=:>+OE0"``"%_W0HC;Y4`@``C;8`````BQ^%VW06B=J)\.@!]/__ -MA<!T?8U[$(L?A=MUZHM$)!2+3"00BP`YR(E$)!0/A8W^__^+7"08A=L/A*P` -M``"+3"0PBU$LA=(/A0O^__^+032%P`^%`/[__X/$'%M>7UW#QD-F`HN&/`(` -M`(.&)`(```&)CCP"``"):PR)0Q")"(D<).C\____Z6S^__^-="8`BT,0B0>+ -MAE`"``")0Q"-0QR)GE`"``")1"0$BT0D"(D$).C\____BTPD,,=!-`$```#I -M.?___XN&,`(``(U3#(E0!(E[$(V^2`(``(E##(F6,`(``.F=_O__BT0D,(N( -MB`$#`(7)=!_K;8M""(M,)#")022%TG1-BT($QT((`````(D$)/\2BTPD,(M1 -M)#M1*'77QT$H`````,=!)`````#KT8M!!(L1B4($B1")R(/H#(D)B4D$#X3Q -M_O__B00DZ/S___^+1"0PBT@<.TPD#'71Z=?^___'@(@!`P``````B00DZ/S_ -M___KG)"-="8`@^P,B5PD!(M<)!")="0(BS.+1B2%P'0HBTX@C5,,C48<B58@ -MB4,,B4L0B1&)="00BUPD!(MT)`B#Q`SI_/___XD<).C\____Z^*0D)"0D)!5 -M,>U75E.+?"08BW0D%(GX"?!T'XGQB?N#Q0&#P?^#T_^)\(GZ(<@AVHG&B=") -MUPGP=>&)Z%M>7UW#C;8`````55=64X/L#(MT)""+1@R)1"0(BUX\BTXXB=@) -MR'4-]H9(`0```@^%V@```#'_BT9`BU9$"<@)VHE4)`2)!"3H_/___XM6!`^V -M4@8!^#G0?ER`IAP"``#^]H8<`@```71$BT0D"(7`=#R+7"0(#[93,(32=#"+ -M1"0(N?[___^[_____SEP2'1M,<#K$I"-="8`BUPD"`^VR#ETBTAT/H/``3C0 -M=>R#Q`Q;7E]=PXMN/(M^.(".'`(```&)Z0GY=)B+7D2+3D`QZS'YB=@)R'5, -M@*9(`0``_>E\____,<`QTO;!(`^4P`^5PM/BT^")TXG!]]/WT8M$)`@A2$") -MQB%81.D&____BT8$@'@'`0^%&?___P^V>`;I$O___XG:B<@AZB'XB=$)P0^$ -M*O___X".2`$```+I'O___XVT)@````!64XM(#(G##[9Q,(GPA,!T(3'`,=(Y -M64AU#^L;C70F``^VPCE<@4AT#H/"`8GP.,)U[KC_````6U[#C;8`````5U:) -MQE.+>B2%_W1#BT<4A<!T-HM`#(7`="\Y\'0U#[90,(72?NTQVXM,F$B%R70* -M@'D(!'8$.?%T&8/#`3G:D'_FBT`,A<!UT8L_A?]UO3'`ZP6X`0```%M>7\.- -M="8`5U93@^P<BUPD+(MT)#"+?"0T@'L(!'9\QT0D&`````#'1"04`0````^V -M2S"%R7X?BU-(,<"%TG0/ZW20C70F`(M4@TB%TG5G@\`!.<AU\8M3!(!Z!0!T -M(0^V0S`/ME(&*=`/KT0D%(E$)!0/MT,R.T0D&'8$B40D&(7V=`:+1"08B0:% -M_W0&BT0D%(D'@\0<6UY?PX7V=`;'!@````"%_W3KQP<!````@\0<6UY?PXU$ -M)!2)1"0(C40D&(D4)(E$)`3H_/___XM3!(!Z!0!TJ>N&C;0F`````(V\)P`` -M``!3@^P<BUPD)(U$)!2)1"0(C40D&(E$)`2+0P2)!"3H_/___XU$)`R)1"0( -MC40D$(E$)`2+0PB)!"3H_/___XM,)!0[3"0,#Y=#%(M4)!B+1"00.=!S`HG0 -M#Z_!9H7`9HE#9'4&9L=#9(``@\0<6\.0@^P8B6PD%(ML)!R+5"0@B5PD"(ET -M)`R)?"00#[9%"#I""'0<N`$```"+7"0(BW0D#(M\)!"+;"04@\08PXUV``^W -M13!F.T(P==J`?3``#X2S````BTU(BU)(A<ETQC'_A=)TP(!Y"`1V/8!Z"`2) -M]G:RB50D!(D,).C\____A,!UH@^V13"#QP$Y^'YZBTR]2(M$)""%R8M4N$AT -MAX72=(.`>0@$=\.`>@@$D(UT)@`/AV[___^+020[0B0/A6+___^+<3"+6C"+ -M5@B+2PB+1@0S0P0QT0G!#X5&____BU80.U,0BT8,#X<W____<@D[0PP/ARS_ -M___VA4@!```#D'2`Z1W___\QP.D;____B?93@^P(BU0D$(M:!(M""(7;="Z% -MP'1N]H,<`@```74U@*`<`@``_H"C'`(``/['0QS_____QD)G`8/$"%O#C78` -MA<!T\("@'`(``/[&0F<!@\0(6\/V@!P"```!=,+&0F<`@(M)`0``!("(20$` -M``2)%"3H_/___XE<)!"#Q`A;Z?S___^`HQP"``#^QD)G`8/$"%O#C;8````` -MC;\`````55=64X/L+(M<)$"+1"1$B40D$`^V4S"%T@^.OP$``,=$)!0````` -MZ:4```"-="8`A<")70QT!\=`#`````"+1"04QX-,`0```````,>#4`$````` -M``");(-(#[:32`$``(G0@\@*J""(@T@!``!T"8/*BHB32`$```^V3"04,<`Q -MTO;!(`^4P`^5PM/BT^`)4SSWT@E#./?0(5-$(4-`BTPD$(7)#X1$`0``@(M( -M`0``!(M4)!"%T@^%(`$``(-$)!0!#[93,#M4)!0/C@T!``"+3"04BT2+2(7` -M=`GV@!P"```!==B+;"00A>T/A3[___^+0P0/MD`&*<*)T,'X'XE4)`B)1"0, -MBT,4BU,8B00DB50D!.C\____B40D((L#B50D)(MP#(/`##G&=)#'1"08____ -M_\=$)!S_____ZPN+`XLV@\`,.?!T68V^V/W___:''`(```%TYH!_"`%UX/9' -M3`1TVHGZB=CH,?O__X3`=<V+5RPY5"0DBT<H=\&0<@8Y1"0@=[@[5"0<C70F -M`'>N#X.S````B?V)1"08B50D'.N<A>T/A!+____V@TD!```"=%^+122%P'05 -MC70F`(MP%(7V#X7S_O__BP"%P'7OBTPD%(M$BTCI4O[___:#2`$```AU'8/$ -M+%M>7UW#B6PD!,<$)`<```#H_/___^FG_O__B5PD0(/$+%M>7UWI_/___XM4 -M)""+3"0DB2PDQT0D#`````")5"0$B4PD".C\____A<")Q0^$@/[__XM4)!2+ -M1)-(Z>7]__\[1"08#X/K_O__Z3[___^-M@````!55U93@>P<`@``B[0D,`(` -M`(!^"`1V!X"F2`$``/OVAAP"```!=%:`?@@$=EN`?C``=$HQVXM,GDB%R70U -M#[:6'`(```^V@1P"``"#X@*#X/T)T(B!'`(``(M4GDB`>@@$=@</MD8TB$(T -MB10DZ/S___\/MD8P@\,!.=A_N('$'`(``%M>7UW#BT8DB40D&/:`'`(```$/ -MA$0#``"+;@PQ_X7M=`N+?0R%_P^$:`,``(U<)!R)V,8``(V4)!P"``"#P`$Y -MT'7OA?_'`_06>%H/A"P#``"+1R2)0P2+1RR)@\8```#VAAP"```"=`2`2Q8! -MA?\/A!8#``"#_0$9P(/``HA#&(N/9`$``(7)=#:+`8M18(E#"(M!7(E3$`^V -M4Q:)0PP/MD$4@^+]@^`!`<`)PHA3%CEY"`^$[0(```^V06:(0Q0/MD<TA>V( -M@\4````/MH<=`@``B$,7BT<4BU<8B4,9B5,=#[9'"(A#(0^V1S"(0R*)Z`^$ -MIP(``.A_^/__#[93)8/B^XA#(P^V1S&(0R0/MH=(`0``@^`!P>`""<*(4R7V -MAT@!```"=`:#R@&(4R6+1SB-2TF+5SR)@ZT```")D[$```"+1SAFB4,GBX=, -M`0``BY=0`0``B4,IB5,MBT<HC9=4`0``B8.]````BX=4`0``B4-)BT($B4$$ -MBT((B4$(BT(,C9>L`0``B4$,BX=H`0``C8N=````B4-9BX>L`0``B8.=```` -MBT($B4$$BT((B4$(BT(,B4$,BY=L`0``C8=L`0``C4M=B5-=BU`$B5$$BU`( -MB5$(BU`,B5$,BU`0B5$0BU`4B5$4BU`8B5$8BU`<B5$<BU`@B5$@BU`DB5$D -MBU`HB5$HBU`LB5$LBU`PB5$PBU`TB5$TBU`XB5$XBT`\B4$\A>T/A(<```"+ -M112+51B)0S&)4S4/MD4(B$,Y#[9%,(A#.HGPZ"WW__\/ME,]@^+[B$,[#[9% -M,8A#/`^VA4@!``"#X`'!X`()PHA3/?:%2`$```)T!H/*`8A3/8M%.(M5/(F# -MM0```(F3N0```(M%.&:)0S^+A4P!``"+E5`!``")0T&)4T6+12B)@\$```") -M'"3H_/___XD<),=$)`0``@``Z/S___^)7"00QT0D%`````#'1"0,`0```/?8 -MB$0D,8M&*(M6+(E$)`2)5"0(BT8DB00DZ/S___^+3"08BT$XBU$\B5PD$,=$ -M)!0`````QT0D#`$```")P0-.*(G3$UXL@<$`^/__@]/_!0``_O^#TO\E``#^ -M_RG!&=.)3"0$B5PD"(M&)(D$).C\____BW8DB70D&(M$)!CV0$P0#X2/_/__ -MB00DZ/S___^!Q!P"``!;7E]=PS'`QT,$`````.G/_/__QD,8`.F2_O__B>@Q -M[8G'Z8W\__^)\.E2_?__@\H$B%,6Z0C]__^-="8`C;PG`````%93@^P$BT0D -M$(M8#(UP##GS=0CK.8L;.?-T,XV3V/W__X!Z"`1V[O:"2`$```1TY8M"#(7` -M=`F)PHM"#(7`=?>)%"3H_/___XL;.?-US8/$!%M>PXVV`````(V_`````%=6 -M4X/L$(M<)"#K!HUT)@")PXM##(7`=??H_/___XN[9`$``(7_B4,D="J+=P0Y -MWG1(Z/S___^%]HD'=!B-=@#H_/___XE&)#M#)'3SB30DZ/S___^)'"3H_/__ -M_XM#!(M(/(7)=`R)7"0@@\006UY?_^&#Q!!;7E_#BW<(Z[.0@^PLB70D((MT -M)#")7"0<B7PD)(EL)"@/MD8(@^@%/`4/A^H````/ML#_)(4$&0``#[=&,C'2 -M]]B#T@#WVB&&3`$``"&64`$``/:&'`(```$/A<8!``"+?D"+;D2)Z`GX=0B+ -M1C@+1CQT5H!^"`H/A-(!``"`ID@!``#^B>H)^G0_BT9`@(Y)`0``(`M&1'0P -M]H8<`@```71WBWX,A?]T"?:''`(```%T(\=$)`0`````B30DZ/S___^-M"8` -M````]H8<`@```71'BWX,]H9)`0``!'4^]H9(`0```W0UBT8XBU8\B40D$(E4 -M)!0)P@^%?P$``(7_=`GVAQP"```!=!J`CD@!```(B30DZ/S___^+?@R%_P^$ -MV````(M<)!R+="0@BWPD)(ML)"B#Q"S#,?\Q[8!^,`!U$NO5D(UT)@`/MD8P -M@\<!.?A^1(M<ODB%VW3M@'L(!';GB1PDZ/S____V@T@!```$=`>`CD@!```$ -M#[:#2`$``(/@`SP"=<$/MD8P@\<!O0$````Y^'^\A>T/A'G___^`ID@!``#^ -M,=N%P'\;Z6?___^-M"8`````#[9&,(/#`3G8#XY1____BU2>2(72=.F`>@@$ -M=N/V@D@!```!=-H/MH)(`0``@^"^@\@"B()(`0``B10DZ/S____KO?:&2`$` -M``0/A!O___^)="0PBUPD'(MT)""+?"0DBVPD*(/$+.G\____BVY$BWY`B>J) -M^/?2(U8\]]`C1CB)T0G!#X0B_O__@(Y(`0```ND6_O__#[9.,#'`,=*#Z0'V -MP2`/E,`/E<+3XM/@BTX\,T8X,=$)P0^%!O[__^D(_O__BUY$BT9`B=F)PO?1 -M(TPD%/?2(U0D$(G("=`/A(#^___I7/[__Y"-M"8`````@^PLB7PD*(M\)#"+ -M5"0TB5PD((ET)"2)^.AB\O__A,!U7HM'%(M7&(E$)!B+1P2)5"0<#[9/,/:' -M20$```(/ME`&=%$QP/:'2`$```1U$8M<)""+="0DBWPD*(/$+,.0B3PDZ/S_ -M__^+7"0@,<"+="0DBWPD*(/$+,.-M@````"+7"0@N/____^+="0DBWPD*(/$ -M+,,/ML$/MM(IT(G"P?H?QT0D#`````"+="0,B40D"(M$)!B)5"0,BU0D'(D$ -M)(E4)`3H_/___XET)`R)5"0(BU0D-(E$)`2)%"3H_/___X7`=)J)1"0$B3PD -MZ/S____I3?___XGVC;PG`````%57B==64XT428/L#(TLUXE,)`@/ME4AB00D -MB50D!.C\____A<")Q@^$=`$``("@'`(``/X/MD<7B(8=`@``BT<$B48DBX?& -M````A<")1BQU!HM'!(E&+`^VA\4```"-71"(1C0/ME,5#[:&2`$``,#J`H/B -M`8/@_@G0B(9(`0``BT4IBU4MB89,`0``B990`0``BU0D"(N$E[T```")1B@/ -MMDTDN`$```#3X(A.,6:)1C*+0PF+4PV)1A2X_____XE6&`^V32*Z_____X#Y -M/XA.,`^&V````(E61(U728E&0(M'28V.5`$``(F&5`$``(M"!(E!!(M""(E! -M"(M"#(V7G0```(E!#(M'68V.K`$``(F&:`$``(N'G0```(F&K`$``(M"!(E! -M!(M""(E!"(M"#(E!#(M778U'78V.;`$``(F6;`$``(M0!(E1!(M0"(E1"(M0 -M#(E1#(M0$(E1$(M0%(E1%(M0&(E1&(M0'(E1'(M0((E1((M0)(E1)(M0*(E1 -M*(M0+(E1+(M0,(E1,(M0-(E1-(M0.(E1.(M`/(E!/(/$#(GP6UY?7<.0C70F -M`#'`,=+VP2`/E,`/E<+3X-/B@\#_@]+_Z0S___^-="8`@>QL`@``BX0D<`(` -M`(U,)%B)G"1<`@``BY0D<`(``(FT)&`"``"+M"1P`@``B;PD9`(``(FL)&@" -M``"+`(E$)#R+>B2+1SB+5SR)3"00QT0D%`$```#'1"0,`0```(G!`TXHB=,3 -M7BR)/"2!P0#X__^#T_\%``#^_X/2_R4``/[_*<$9TXE,)`2)7"0(Z/S___^% -MP(G�,`0``BYPD<`(``(U,)%C'1"04`0```(E,)!#'1"0,`0```(M#*(M3 -M+(E$)`2)5"0(BT,DB00DZ/S___^#^/^)Q71%C4PD6(D,).C\____@7PD6/06 -M>%H/A/$```"X_____XN<)%P"``"+M"1@`@``B[PD9`(``(NL)&@"``"!Q&P" -M``##C78`A?9UT8M'.(M7/,=$)!0!````QT0D#`$```")1"0@BX0D<`(``(E4 -M)"2+3"0@C50D6(M<)"2)5"00BU0D)`-(*!-8+(M$)""!P0#X__^#T_\%``#^ -M_X/2_R4``/[_*<$9TXN4)'`"``")3"0$B5PD"(M")(D$).C\____A<`/A#C_ -M___I3?___XU$)%B)!"3H_/___X%\)%CT%GA:=`J^_O___^G4_O__C50D6,=$ -M)`0``@``B10DZ/S___^$P`^$N/[__^O8C5PD6,=$)`0``@``B1PDZ/S___^$ -MP`^%\_[__X7M#X4[!@``A?:-="8`#X6$!@``@'PD>00/AM3^__^`?"1Z0`^' -MR?[__X"\))(```!`#X>[_O__BW0D/#'2BYPD"0$```^W1"1_BXPD!0$```G3 -MBU8,B5PD1`G!B4PD0(GQ@\$,.<IT'8VZV/W__X!_"`1V"XM'#(7`#X21!@`` -MBQ(YRG7CBT0D/#')C50D6.B9^___A<")QP^$5/[__P^VET@!``")T(/B_=#H -M"D0D?8/@`0'`"<*+1SB(ET@!``"+5SR)1"0HB50D+`^V1S#'1"08_____\=$ -M)!S_____/#]W)8G!B<[![@6#Y@&)\X/S`=/CT^:)7"08@T0D&/^)="0<@U0D -M'/^+1"1`BTPD*"-$)!B+5"1$(U0D'`G!B4\XBT0D+`G0#[:72`$``(E'/`^V -M1"1]@^(!P.@"@^`!.,)T(@^VET@!``"+1P2#XOZ(ET@!``"`>`8`=`F#R@*( -MET@!``"+1"1@A<!T8HN/9`$``("/20$```2%R0^$U0,``(!Y%``/A'\$``"+ -M5"1H.5%@BT0D9'<'<A,Y05QV#HE!7(E18`^V1"1LB$%F]D0D;@0/A(L#``"+ -M40B%T@^$<P,``(M!!#G"#X17`P``BT<H.X0D%0$```^$#@,``("/2`$```+' -MATP!````````QX=0`0````````^VEQP"``")T(/B_=#H"D0D;H/@`0'`"<*( -MEQP"```/MD0D>X!\)'`!#X9;`@``#[;8BW2?2(7V#X0D`@``#[:6'`(``(G0 -M@^+]T.@*1"1N@^`!`<`)PHB6'`(```^VED@!``")T(/B_=#H"H0DE0```(/@ -M`0'`"<*+1CB(ED@!``"+5CR+C"01`0``#[><))<```")1"10B50D5(N4)`T! -M``")3"1,B50D2`^V3C#'1"0P_____\=$)#3_____@/D_=R,QP#'2]L$@#Y3` -M#Y7"T^#3XHE$)#"#1"0P_XE4)#2#5"0T_XM,)#`/M\,QT@M$)$B+7"0T"U0D -M3"'!BT0D4"'3#[:62`$```G(B48XBT0D5(/B`0G8B48\#[:$))4```#`Z`*# -MX`$XPG0B#[:62`$``(M&!(/B_HB62`$``(!X!@!T"8/*`HB62`$```^VC"23 -M````BVR.2(7M#X64^___BY0D<`(``(M&*(E4CD@[A"09`0``B7(,#X2G```` -M@(Y(`0```L>&3`$```````#'AE`!````````,<`QTO;!(`^4P`^5PM/BT^#W -MTO?0(59$(49`B30DZ/S___\/MH9(`0``J!!U#:@@=!V#R("(AD@!``#'ADP! -M````````QX90`0```````/:''`(```%T+8N'9`$``(7`=".+4`2%TG0<BT`( -MA<!T%3G7=`*)T(D$).C\____,<#IV_K__S'`Z=3Z__^+E"2=````.990`0`` -MBX0DF0````^"6O___W<,.89,`0``#X9,____B89,`0``B990`0``Z3O___^+ -M1"0\N0$```"-5"18Z+_W__^%P(GZ^O__B7@,B42?2.FT_?__#[;(,=*+ -MG"1P`@``,<#VP2`/E,`/E<+3XM/@]]+WT"%71"%'0(E<CTB)>PR)/"3H_/__ -M_P^VAT@!``"H$'41J"`/A!O___^#R("(AT@!``#'ATP!````````QX=0`0`` -M`````.GY_O__BY0DA0```#F74`$``(N$)($````/@O/\__]W##F'3`$```^& -MY?S__XF'3`$``(F74`$``.G4_/__N/_____'000`````Z<#Y__^+002)^HEY -M".F#_/__BT$$A<`/A.,```"+40CI</S__XMT)#R+1A2)\X/#%#G8="B+5"1@ -MC4CT.5#T=`Z+`#G8=!8Y4/2-2/1U\H7)B8]D`0``#X7S^___BT0D/(/H@(D$ -M).C\____A<")P8F'9`$```^$1/G__S'`Q@0(`(/``8/X:'7TBU0D/(MT)#R) -M60R+0AB-40R)5AB)$(M4)&B)01"+1"1@B0&+1"1DB5%@B4%<#[9$)&R(06;V -M1"1N`@^$AOO__XN'9`$``,9`%`'I=_O__XM4)&@Y46"+1"1D#X>2^___#X)^ -M^___.4%<#X.#^___B?;I;OO__XM1"(GXB7D$C78`Z87[__^-="18B30DC5PD -M6.C\____BXPD<`(``(U$)%C'1"04`````(E$)!#'1"0,`0```(M!*(M1+(E$ -M)`2)5"0(BT$DB00DZ/S___^)'"3H_/___^E\^?__C70D6(DT).C\____BT<X -MC4PD6(NT)'`"``"+5SR)3"00QT0D%`````")P<=$)`P!`````TXHB=,37BR! -MP0#X__^#T_\%``#^_X/2_R4``/[_*<$9TXE,)`2)7"0(BT8DB00DZ/S___^- -M1"18B00DZ/S____I`_G__XM')#M$)%P/A6+Y___VAQP"```!=7>`?"1P`0^& -M;?G__P^V1"1[BW2'2(7V#X1<^?__]H8<`@```0^$3_G__XM..(N$)`T!``"+ -M7CR+E"01`0``"<@/MXPDEP````G:,=L)V@G(B50D!(D$).C\____BU8$#[92 -M!CG0#XX.^?__B3PDZ/S____IZ/C__XM$)$"+5"1$"U<\"T<XB50D!(D$).C\ -M____BU<$#[92!CG0?\[I7____XVV`````%57,?]64X/L#(M$)""+:`R)1"0( -M#[9%,(3`#[;P#X2``@``BU0D"#'),=LY54AU%NEN`@``C02-`````(M4)`@Y -M5`5(=!*#P0&#TP")R(G:,?`Q^@G"==TQP#'2]L$@#Y3`#Y7"T^+3X`E%0`E5 -M1(DL).C\____]H4<`@```0^%Q@```(M%#(7`#X3C`0``BT`$B2PD_U`D,<DQ -MVX!],`!T9XT$C0````"+5`5(A=)T0O:"'`(```%T.8!Z"`1V,P^VLD@!``") -M\(/@CXB"2`$``#M4)`@/A*,!``#V@D@!```!=`Z#YHZ#S@*)\(B"2`$``(/! -M`0^V13"#TP`QTCG:=Y\/@T<!``"+A60!``"%P`^$,`$``(M0!(72#X0E`0`` -MBT`(A<`/A!H!```YU70"B="`H!P"``#^B40D((/$#%M>7UWI_/___P^VA4@! -M``"#X+^H((B%2`$``'0=@\B`B(5(`0``QX5,`0```````,>%4`$````````/ -MMK5(`0``BUU$BTU`B?"#X/Z)VHB%2`$``/?2B<@C53SWT"-%.(G1"<%U"X/F -M[(GPB(5(`0``BW4,A?8/A*L```"`ID@!``#^,<DQVS'_@'XP``^$E````(T$ -MC0````"+5`9(A=)T,/:"'`(```%T)X!Z"`1V(?:"2`$```%T&`^V@D@!``"_ -M`0```(/@K(/(`HB"2`$``(/!`0^V1C"#TP`QTCG:=[%S.(N=9`$``(7;#X1\ -M````]H5(`0``!'53A?]U68"-20$``""#Q`Q;7E]=PY`YR`^'2O[__^FL_O__ -M.<B0#X=N____Z[TQ_XVV`````.NSB2PDZ/S____I&?[__X/FC(GPB()(`0`` -MZ63^__^)+"3H_/___^NGB2PDZ/S____KG;@!````,=+INOW__XM%#(7`=`Z+ -MB&0!``"%R0^%;____XM5'(72>!7'1"0$`````(DL).C\____Z5/___^%P`^$ -M2____XM`'(7`C78`>=GI//___Y"0D)"0D)"0D*$`````A<!T,C')D(UT)@"` -M>`@!BP"#V?^%P'7SA<ET&J$`````B<+!^A_!ZA0!PL'Z#(G0P?H?]_G#BQ4` -M````B=#!^!_!Z!0!T,'X#,.0\\.-M"8`````C;PG`````(M,)`2+5"0(BX'\ -M````B4(,B9'\````PY"-M"8`````,<##C;8`````C;PG`````%=64X/L$(M\ -M)""+A^P```#'AQ0!````````C;8`````B[<``0``A?9T.3D&=V0YMP0!```/ -MA(L```"+1A")AP`!``"+1@C'1A``````B00D_U8$B[<``0``BX?L````A?9U -MQSU_`0``=R&+G_P```"%VW07QT0D!`````"+`XD$)/]3!(M;#(7;=>F#Q!!; -M7E_#BY_\````A=MT[XUT)@"+!HE$)`2+`XD$)/]3!(M;#(7;=>N+A^P````[ -M!@^#7?___^O&QX<$`0```````,>'``$```````#I9?___XGV5E.#[!2+="0@ -MBY[\````A=MT%\=$)`3_____BP.)!"3_4P2+6PR%VW7I,<"#?BP`#Y7`@\04 -M6U[#C;0F`````%.#[`B+7"00BX,4`0``A<!U.8V#"`$``,>#"`$``&`E!0") -MFPP!``#'@Q`!````````B40D!(U#+(D$).C\____QX,4`0```0```(/$"%O# -M@^P,BU0D$(M,)!2+@@`!``"%P'0@BX($`0``B4@0B8H$`0``B10DZ/S___^X -M`0```(/$#,.+@NP````[`7,.B8H$`0``B8H``0``Z]>+00B)!"3_400QP.O7 -MC;8`````BT0D!`7D````B40D!.G\____C;0F`````(V\)P````"+1"0$!>0` -M``")1"0$Z?S___^0D)"0D)"0D)"0D)"0D%.+7"0(#[9#%(G"@^#["E,5@^($ -M"=`/ME,5B<&#X/Z#X0&#X@$)R@G0B$,4#[9#)(G"@^#["E,E@^($"=`/ME,E -MB<&#X/Z#X0&#X@$)R@G0B$,D6\.-="8`C;PG`````%.+7"0(#[9#)8G"@^#[ -M"E,F@^($"=`/ME,FB<&#X/Z#X0&#X@$)R@G0B$,E#[9#/8G"@^#["E,^@^($ -M"=`/ME,^B<&#X/Z#X0&#X@$)R@G0B$,]6\,````````````````````````` -M````````````````EC`'=RQA#NZZ40F9&<1M!X_T:G`UI6/IHY5DGC*(VPZD -MN-QY'NG5X(C9TI<K3+8)O7RQ?@<MN.>1';^09!"W'?(@L&I(<;GSWD&^A'W4 -MVAKKY-UM4;74],>%TX-6F&P3P*AK9'KY8OWLR66*3UP!%-EL!F-C/0_Z]0T( -MC<@@;CM>$&E,Y$%@U7)Q9Z+1Y`,\1]0$2_V%#=)KM0JE^JBU-6R8LD+6R;O; -M0/F\K.-LV#)U7-]%SPW6W%D]T:NL,-DF.@#>48!1U\@68="_M?2T(2/$LU:9 -ME;K/#Z6]N)ZX`B@(B`5?LMD,QB3I"[&'?&\O$4QH6*L=8<$]+6:VD$'<=@9Q -MVP&\(-*8*A#5[XF%L7$?M;8&I>2_GS/4N.BBR0=X-/D`#XZH"988F`[ANPUJ -M?RT];0B7;&21`5QCYO11:VMB86P<V#!EA4X`8O+ME09L>Z4!&\'T"()7Q`_U -MQMFP95#IMQ+JN+Z+?(BY_-\=W6))+=H5\WS3C&5,U/M88;)-SE&U.G0`O*/B -M,+O40:7?2M>5V#UMQ-&D^_36TVKI:4/\V6XT1HAGK="X8-IS+01$Y1T#,U], -M"JK)?`W=/'$%4*I!`B<0$`N^AB`,R26U:%>SA6\@"=1FN9_D8<X.^=Y>F,G9 -M*2*8T+"TJ-?'%SVS68$-M"X[7+VWK6RZP""#N.VVL[^:#.*V`YK2L70Y1]7J -MKW?2G14FVP2#%MQS$@MCXX0[9)0^:FT-J%IJ>@O/#N2=_PF3)ZX`"K&>!WU$ -MDP_PTJ,(AVCR`1[^P@9I75=B]\MG98!Q-FP9YP9K;G8;U/[@*].)6GK:$,Q* -MW6=OW[GY^>^^CD.^MQ?5CK!@Z*/6UGZ3T:'$PM@X4O+?3_%GN]%G5[RFW0:U -M/TLVLDC:*PW83!L*K_9*`S9@>@1!P^]@WU7?9ZCOCFXQ>;YI1HRS8<L:@V:\ -MH-)O)3;B:%*5=PS,`T<+N[D6`B(O)@55OCNZQ2@+O;*26K0K!&JS7*?_U\(Q -MS]"UBY[9+!VNWENPPF2;)O)C[)RC:G4*DVT"J08)G#\V#NN%9P=R$U<`!8)* -MOY44>KCBKBNQ>S@;M@R;CM*2#;[5Y;?OW'PAW]L+U-+3AD+BU/'XL]UH;H/: -M'\T6OH%;)KGVX7>P;W='MQCF6@B(<&H/_\H[!F9<"P$1_YYECVFN8OC3_VMA -M1<]L%GCB"J#NT@W75(,$3L*S`SEA)F>G]Q9@T$U':4G;=VX^2FK1KMQ:UMEF -M"]]`\#O8-U.NO*G%GKO>?\^R1^G_M3`<\KV]BL*ZRC"3LU.FH[0D!3;0NI,& -MU\TI5]Y4OV?9(RYZ9K.X2F'$`AMH790K;RHWO@NTH8X,PQO?!5J-[P(M.AT` -M`'X=``!`'@``0!X``$`>``!`'@``PAT```$>``!`'@``6!X``),H``"=*``` -MG2@``)TH``"=*```G2@``)TH``"=*```G2@``)TH``"=*```G2@``)TH``"= -M*```G2@``)TH``"=*```G2@``)TH``"=*```G2@``)TH``"=*```G2@``)TH -M``"=*```G2@``)TH``"=*```G2@``)TH``"=*```G2@``)TH``"=*```G2@` -M`&HH``"=*```:B@``)TH``"=*```G2@``&HH``!J*```G2@``)TH``"=*``` -MG2@``)TH``"=*```G2@``)TH``"=*```G2@``)TH``"=*```G2@``)TH``"= -M*```G2@``)TH``!J*```G2@``)TH``"=*```G2@``)TH``"=*```G2@``)TH -M``"=*```G2@``)TH``"=*```G2@``)TH``!J*```:B@``&HH``!J*```G2@` -M`)TH``"=*```G2@``)TH``"=*```G2@``)TH``"=*```G2@``)TH``"=*``` -MG2@``)TH``"=*```G2@``)TH``"=*```G2@``)TH``"=*```G2@``)TH``"= -M*```G2@``)TH``"=*```G2@``)TH``"=*```G2@``)TH``"=*```G2@``)TH -M``"=*```G2@``)TH``"=*```G2@``)TH``"=*```G2@``&HH``"=*```G2@` -M`)TH``"=*```G2@``)TH``"=*```G2@``&HH``"=*```:B@``)TH``"=*``` -MG2@``&HH``!J*```G2@``)TH``"=*```:B@``)TH``"=*```G2@``)TH``"= -M*```G2@``)TH``"=*```G2@``)TH``"=*```G2@``)TH``"=*```G2@``)TH -M``"=*```G2@``)TH``"=*```:B@``)TH``!J*```G2@``)TH``"=*```:B@` -M`&HH```^/0``\3P``/X\```@/0``/CT``#0]```J/0``/CT``#X]```^/0`` -M/CT``"H]``#980``_6$``"%B``"58@``)V,````````AH@``]J$```&B```G -MH@``\*$``/"A``#PH0``\*$``/"A``#PH0``\*$``/"A``#PH0``\*$``/"A -M``#PH0``,:(``">B```'H@``(:(``!&B```7H@``,:(``..A````(```!$0` -M```@`0`$1````@$```(Z```"`0$``CH```0!```+````!`$!``L````(`0`` -M!EH!``@!`0`&6@$`$`$```,4`0`0`0$``Q0!`"`!```&*```(`$!``8H``!` -M`0```Q$``$`!`0`')P``@`$```M'`P"``0$`"T<#``8A`0@$` -M.R<!`&@G`0"-)P$`NB<!`-$G`0#_)P$`/R@!`%(F`0!_)@$`K"8!`-DF`0`` -M`````````"!<`0"E4P$`ZU,!`&14`0#95`$``U4!`%15`0"750$`I54!`/58 -M`0#D5P$`D5,!`"!<`0`@7`$`(%P!`"!<`0`@7`$`GEL!`"!<`0`@7`$`KE4! -M`,95`0!=50$`CE4!`.17`0#160$`ZUL!`/%;`0`87`$`(%P!`.]:`0`P6P$` -M.5L!`-I9`0#E60$`[ED!`/=9`0"UB0$`)X<!`#B'`0!)AP$`6H<!`*6'`0## -MAP$`UX<!`"N(`0!'B`$`8X@!`'^(`0"KB`$`OX@!`-.(`0"UB0$`M8D!`.R( -M`0!+B0$`M8D!`+6)`0`1B0$`B8D!`'B'`0",AP$`M8D!`.N'`0#_AP$`$X@! -M`!"\`0`0O`$`3[P!`&2\`0`0O`$`CKP!`!J\`0!YO`$`/;T!`$^]`0"JQ@$` -M5\@!`%?(`0!7R`$`5\@!`%?(`0!7R`$`5\@!`%?(`0!7R`$`5\@!`%?(`0!7 -MR`$`5\@!`%?(`0!7R`$`5\@!`%?(`0!7R`$`5\@!`%?(`0!7R`$`5\@!`%?( -M`0!7R`$`5\@!`%?(`0!7R`$`5\@!`%?(`0!7R`$`5\@!`+[&`0`GQP$`D,<! -M`/G'`0!CR0$`,L\!`#+/`0`RSP$`,L\!`#+/`0`RSP$`,L\!`#+/`0`RSP$` -M,L\!`#+/`0`RSP$`,L\!`#+/`0`RSP$`=\D!`'?)`0!WR0$`,L\!`#+/`0`R -MSP$`,L\!`#+/`0`RSP$`,L\!`#+/`0`RSP$`,L\!`#+/`0`RSP$`,L\!`/') -M`0!6R@$`N\H!`"'+`0`RSP$`,L\!`#+/`0`RSP$`,L\!`#+/`0`RSP$`,L\! -M`#+/`0`RSP$`,L\!`#+/`0"&RP$`!,P!`(+,`0``S0$`,L\!`#+/`0`RSP$` -M,L\!`#+/`0`RSP$`,L\!`#+/`0`RSP$`,L\!`#+/`0`RSP$`?LT!`#+/`0`R -MSP$`,L\!`#+/`0`RSP$`,L\!`#+/`0`RSP$`,L\!`#+/`0`RSP$`,L\!`#+/ -M`0`RSP$`,L\!`,3-`0`"S@$`0,X!`'[.`0"\S@$`]\X!`%)O8VME="`W-3`@ -M4T%402!#;VYT<F]L;&5R```!`````````````````````````)8P!W<L80[N -MNE$)F1G$;0>/]&IP-:5CZ:.59)XRB-L.I+C<>1[IU>"(V=*7*TRV";U\L7X' -M+;CGD1V_D&00MQWR(+!J2'&Y\]Y!OH1]U-H:Z^3=;5&UU/3'A=.#5IAL$\"H -M:V1Z^6+][,EEBD]<`139;`9C8ST/^O4-"(W((&X[7A!I3.1!8-5R<6>BT>0# -M/$?4!$O]A0W2:[4*I?JHM35LF+)"ULF[VT#YO*SC;-@R=5S?1<\-UMQ9/=&K -MK##9)CH`WE&`4=?(%F'0O[7TM"$CQ+-6F96ZSP^EO;B>N`(H"(@%7[+9#,8D -MZ0NQAWQO+Q%,:%BK'6'!/2UFMI!!W'8&<=L!O"#2F"H0U>^)A;%Q'[6V!J7D -MOY\SU+CHHLD'>#3Y``^.J`F6&)@.X;L-:G\M/6T(EVQDD0%<8^;T46MK8F%L -M'-@P985.`&+R[94&;'NE`1O!]`B"5\0/]<;9L&50Z;<2ZKB^BWR(N?S?'=UB -M22W:%?-\TXQE3-3[6&&R3<Y1M3IT`+RCXC"[U$&EWTK7E=@];<31I/OTUM-J -MZ6E#_-EN-$:(9ZW0N&#:<RT$1.4=`S-?3`JJR7P-W3QQ!5"J00(G$!`+OH8@ -M#,DEM6A7LX5O(`G49KF?Y&'.#OG>7IC)V2DBF-"PM*C7QQ<]LUF!#;0N.UR] -MMZULNL`@@[CMMK._F@SBM@.:TK%T.4?5ZJ]WTIT5)ML$@Q;<<Q(+8^.$.V24 -M/FIM#:A::GH+SP[DG?\)DR>N``JQG@=]1),/\-*C"(=H\@$>_L(&:5U78O?+ -M9V6`<39L&><&:VYV&]3^X"O3B5IZVA#,2MUG;]^Y^?GOOHY#OK<7U8ZP8.BC -MUM9^D]&AQ,+8.%+RWT_Q9[O19U>\IMT&M3]+-K)(VBL-V$P;"J_V2@,V8'H$ -M0</O8-]5WV>H[XYN,7F^:4:,LV'+&H-FO*#2;R4VXFA2E7<,S`-'"[NY%@(B -M+R8%5;X[NL4H"[VRDEJT*P1JLURG_]?",<_0M8N>V2P=KMY;L,)DFR;R8^R< -MHVIU"I-M`JD&"9P_-@[KA6<'<A-7``6"2K^5%'JXXJXKL7LX&[8,FX[2D@V^ -MU>6W[]Q\(=_;"]32TX9"XM3Q^+/=:&Z#VA_-%KZ!6R:Y]N%WL&]W1[<8YEH( -MB'!J#__*.P9F7`L!$?^>98]IKF+XT_]K847/;!9XX@J@[M(-UU2#!$["LP,Y -M829GI_<68-!-1VE)VW=N/DIJT:[<6M;99@O?0/`[V#=3KKRIQ9Z[WG_/LD?I -M_[4P'/*]O8K"NLHPD[-3IJ.T)`4VT+J3!M?-*5?>5+]GV2,N>F:SN$IAQ`(; -M:%V4*V\J-[X+M*&.#,,;WP5:C>\"+1H-`@!>#0(`(`X"`"`.`@`@#@(`(`X" -M`*(-`@#A#0(`(`X"`#@.`@!S&`(`?1@"`'T8`@!]&`(`?1@"`'T8`@!]&`(` -M?1@"`'T8`@!]&`(`?1@"`'T8`@!]&`(`?1@"`'T8`@!]&`(`?1@"`'T8`@!] -M&`(`?1@"`'T8`@!]&`(`?1@"`'T8`@!]&`(`?1@"`'T8`@!]&`(`?1@"`'T8 -M`@!]&`(`?1@"`'T8`@!]&`(`?1@"`'T8`@!*&`(`?1@"`$H8`@!]&`(`?1@" -M`'T8`@!*&`(`2A@"`'T8`@!]&`(`?1@"`'T8`@!]&`(`?1@"`'T8`@!]&`(` -M?1@"`'T8`@!]&`(`?1@"`'T8`@!]&`(`?1@"`'T8`@!]&`(`2A@"`'T8`@!] -M&`(`?1@"`'T8`@!]&`(`?1@"`'T8`@!]&`(`?1@"`'T8`@!]&`(`?1@"`'T8 -M`@!]&`(`2A@"`$H8`@!*&`(`2A@"`'T8`@!]&`(`?1@"`'T8`@!]&`(`?1@" -M`'T8`@!]&`(`?1@"`'T8`@!]&`(`?1@"`'T8`@!]&`(`?1@"`'T8`@!]&`(` -M?1@"`'T8`@!]&`(`?1@"`'T8`@!]&`(`?1@"`'T8`@!]&`(`?1@"`'T8`@!] -M&`(`?1@"`'T8`@!]&`(`?1@"`'T8`@!]&`(`?1@"`'T8`@!]&`(`?1@"`'T8 -M`@!]&`(`?1@"`'T8`@!*&`(`?1@"`'T8`@!]&`(`?1@"`'T8`@!]&`(`?1@" -M`'T8`@!*&`(`?1@"`$H8`@!]&`(`?1@"`'T8`@!*&`(`2A@"`'T8`@!]&`(` -M?1@"`$H8`@!]&`(`?1@"`'T8`@!]&`(`?1@"`'T8`@!]&`(`?1@"`'T8`@!] -M&`(`?1@"`'T8`@!]&`(`?1@"`'T8`@!]&`(`?1@"`'T8`@!]&`(`?1@"`$H8 -M`@!]&`(`2A@"`'T8`@!]&`(`?1@"`$H8`@!*&`(`'BT"`-$L`@#>+`(``"T" -M`!XM`@`4+0(`"BT"`!XM`@`>+0(`'BT"`!XM`@`*+0(`N5$"`-U1`@`!4@(` -M=5("``=3`@``````,9("``:2`@`1D@(`-Y("``"2`@``D@(``)("``"2`@`` -MD@(``)("``"2`@``D@(``)("``"2`@``D@(``)("`$&2`@`WD@(`%Y("`#&2 -M`@`AD@(`)Y("`$&2`@#SD0(``"````1$````(`$`!$0```(!```".@```@$! -M``(Z```$`0``"P````0!`0`+````"`$```9:`0`(`0$`!EH!`!`!```#%`$` -M$`$!``,4`0`@`0``!B@``"`!`0`&*```0`$```,1``!``0$`!R<``(`!```+ -M1P,`@`$!``M'`P`6$0,`BQ$#`,01`P#I$0,`#A(#`#,2`P!@$@,`_1(#`#03 -M`P`)%`,`MQ,#`-P3`P`N%`,`+A4#`&L5`P"<%0,`WQ4#``X7`P`0%@,`(18# -M`&T3`P"2$P,`C1(#`,02`P"W$P,`-18#`$L7`P!X%P,`G1<#`,H7`P#A%P,` -M#Q@#`$\8`P!B%@,`CQ8#`+P6`P#I%@,````````````P3`,`M4,#`/M#`P!T -M1`,`Z40#`!-%`P!D10,`IT4#`+5%`P`%20,`]$<#`*%#`P`P3`,`,$P#`#!, -M`P`P3`,`,$P#`*Y+`P`P3`,`,$P#`+Y%`P#610,`;44#`)Y%`P#T1P,`X4D# -M`/M+`P`!3`,`*$P#`#!,`P#_2@,`0$L#`$E+`P#J20,`]4D#`/Y)`P`'2@,` -M4EL#`%E;`P!B6P,`:5L#`');`P!Y6P,`@EL#`$=;`P`U>`,`IW4#`+AU`P#) -M=0,`VG4#`"5V`P!#=@,`5W8#`*MV`P#'=@,`XW8#`/]V`P`K=P,`/W<#`%-W -M`P`U>`,`-7@#`&QW`P#+=P,`-7@#`#5X`P"1=P,`"7@#`/AU`P`,=@,`-7@# -M`&MV`P!_=@,`DW8#``````````````````````````````````````#PJ@,` -M\*H#`"^K`P!$JP,`\*H#`&ZK`P#ZJ@,`6:L#`!VL`P`OK`,`BK4#`#>W`P`W -MMP,`-[<#`#>W`P`WMP,`-[<#`#>W`P`WMP,`-[<#`#>W`P`WMP,`-[<#`#>W -M`P`WMP,`-[<#`#>W`P`WMP,`-[<#`#>W`P`WMP,`-[<#`#>W`P`WMP,`-[<# -M`#>W`P`WMP,`-[<#`#>W`P`WMP,`-[<#`#>W`P">M0,`![8#`'"V`P#9M@,` -M0[@#`!*^`P`2O@,`$KX#`!*^`P`2O@,`$KX#`!*^`P`2O@,`$KX#`!*^`P`2 -MO@,`$KX#`!*^`P`2O@,`$KX#`%>X`P!7N`,`5[@#`!*^`P`2O@,`$KX#`!*^ -M`P`2O@,`$KX#`!*^`P`2O@,`$KX#`!*^`P`2O@,`$KX#`!*^`P#1N`,`-KD# -M`)NY`P`!N@,`$KX#`!*^`P`2O@,`$KX#`!*^`P`2O@,`$KX#`!*^`P`2O@,` -M$KX#`!*^`P`2O@,`9KH#`.2Z`P!BNP,`X+L#`!*^`P`2O@,`$KX#`!*^`P`2 -MO@,`$KX#`!*^`P`2O@,`$KX#`!*^`P`2O@,`$KX#`%Z\`P`2O@,`$KX#`!*^ -M`P`2O@,`$KX#`!*^`P`2O@,`$KX#`!*^`P`2O@,`$KX#`!*^`P`2O@,`$KX# -M`!*^`P"DO`,`XKP#`""]`P!>O0,`G+T#`->]`P`````````````````````` -M1&%T84-E;G1E<B`W,C@P(%-!5$$@0V]N=')O;&QE<@`!````&P````$```"0 -M`@0`&P,$`,,"!`"D`@0`&P,$`!L#!``;`P0`&P,$`)`"!`#5`P0`D`($`)`" -M!`!+`@0`R0,$`)8#!`!?`P0`T2H$`.$J!`#I*@0`\2H$`/DJ!``!*P0`"2L$ -M`-DJ!`"D,`0`53,$`'<R!``A,P0`\#($`"$S!`"D,`0`J#`$`(*2!``%DP0` -MZ),$`!:4!`#5E`0`TY4$`.^5!`#[E00`PI($`'*6!``IEP0`@I($`#B8!`!% -MEP0`Y)<$`#*G!`!DJP0`/*L$`"*K!``(JP0`Y*H$`#*G!`#*J@0`EZ<$`)'L -M!`"`[`0`8.P$`$#L!```[`0`Q^L$`+\3!0#F$@4`OQ,%`,`2!0#`$@4`P!(% -M`$U67U)E<75E<W0@)7`Z($-D8ELE,G@L)3)X+"4R>"PE,G@L("4R>"PE,G@L -M)3)X+"4R>"P@)3)X+"4R>"PE,G@L)3)X+"`E,G@L)3)X+"4R>"PE,GA=+@!4 -M87-K(&9I;&4@97)R;W(L(%-T871U<U)E9STP>"5X+"!%<G)296<],'@E>"P@ -M3$)!6S`M,UT],'@E>"Q,0D%;-"TW73TP>"5X+@``1&5V:6-E(&5R<F]R(&EN -M9F]R;6%T:6]N(#!X)6QL6`!M=E]P:'E?=V]R:V%R;W5N9"!R979?:60@)7@@ -M)60``"!B969O<F4@=7!D871E('9A;'5E("4P-'@Z("4P.'@`071T1&5V4T%3 -M061D<ELE>%T@(%M5;FET260@)7A=('-A<R!A9&1R("4P,G@M)3`R>"TE,#)X -M+24P,G@M)3`R>"TE,#)X+24P,G@M)3`R>`!S86UE('-A<R!A9&1R("4P,G@M -M)3`R>"TE,#)X+24P,G@M)3`R>"TE,#)X+24P,G@M)3`R>````$1E=FEC92`E -M>"!I;B!S=&%N9&)Y(&UO9&4L('-T87)T('1O('!O=V5R(&ET('5P+@````!3 -M=&%R="!T;R!P;W=E<B!U<"!D979I8V4@)7@N+BX``'!O<G0@<F5S970@;F]T -M(&-O;7!L971E('-U8V-E<W,L(&EG;F]R92!T:&4@<&]R="`H)7@I````071T -M86-H960@9&5V:6-E(&EN9&5X("4P,G@@*%!A=&@@)3`R>"!\(%1A<F=E="`E -M,#)X('P@125X+U,E,#)X*2`@)7@E>"5X)7@E>"5X)7@E>```359?4F5Q=65S -M="`E<#H@0V1B6R4R>"PE,G@L)3)X+"4R>"P@)3)X+"4R>"PE,G@L)3)X+"`E -M,G@L)3)X+"4R>"PE,G@L("4R>"PE,G@L)3)X+"4R>%TN`%1A<VL@9FEL92!E -M<G)O<BP@4W1A='5S4F5G/3!X)7@L($5R<E)E9STP>"5X+"!,0D%;,"TS73TP -M>"5X+$Q"05LT+3==/3!X)7@N``!$979I8V4@97)R;W(@:6YF;W)M871I;VX@ -M,'@E;&Q8`&UV7W!H>5]W;W)K87)O=6YD(')E=E]I9"`E>"`E9```(&)E9F]R -M92!U<&1A=&4@=F%L=64@)3`T>#H@)3`X>`!!='1$979305-!9&1R6R5X72`@ -M6U5N:71)9"`E>%T@<V%S(&%D9'(@)3`R>"TE,#)X+24P,G@M)3`R>"TE,#)X -M+24P,G@M)3`R>"TE,#)X`'-A;64@<V%S(&%D9'(@)3`R>"TE,#)X+24P,G@M -M)3`R>"TE,#)X+24P,G@M)3`R>"TE,#)X````1&5V:6-E("5X(&EN('-T86YD -M8GD@;6]D92P@<W1A<G0@=&\@<&]W97(@:70@=7`N`````%-T87)T('1O('!O -M=V5R('5P(&1E=FEC92`E>"XN+@``<&]R="!R97-E="!N;W0@8V]M<&QE=&4@ -M<W5C8V5S<RP@:6=N;W)E('1H92!P;W)T("@E>"D```!!='1A8VAE9"!D979I -M8V4@:6YD97@@)3`R>"`H4&%T:"`E,#)X('P@5&%R9V5T("4P,G@@?"!%)7@O -M4R4P,G@I("`E>"5X)7@E>"5X)7@E>"5X``!"86-K=7`@<W1A;7`@)7@@<W5M -M("5X(&)A8VME9"`E9`````!-87-T97(@<W1A;7`@)7@@<W5M("5X(&)A8VME -M9"`E9`````!7<FET92!A<G)A>2!M971A(&1A=&$@=&\@;6%S=&5R(#!X)6QL -M6"T^,'@E;&Q8``!7<FET92!A<G)A>2!M971A(&1A=&$@=&\@8F%C:W5P(#!X -M)6QL6"T^,'@E;&Q8``!;)60@)61=(&1E=FEC92!E<F%S92!U;FET('-U8V-E -M<W-F=6QL>2X`6R5D("5D72!D979I8V4@97)A<V4@=6YI="!F86EL960@;W(@ -M86)O<G1E9"X`````<V5T($%$249?4T547T)!1"!B861?<V5C=&]R("5D``!D -M;U]D:7-K7V-T;%]C;60Z(&-T;"!C;V1E("5X('9D/25P+"!,0D$@,'@E;&Q8 -M(&Y396-T;W(@,'@E>`!$979I8V5?260])60`1&5V:6-E("5X+R5X(')E;6]V -M960N`'=O<FMR;W5N9"!I<G%3=&%T=7,@/2`P>"5X`"4P,G@@)3`T>#HE,#1X -M.B4P-'@`1&5V:6-E("5X+R5X(')E;6]V960N`"!P:'D@='5N:6YG("5D+R5D -M`"!O<FEG:6YA;"!V86QU92`E,#1X.B`E,#AX`"!V97)I9GD@=F%L=64@)3`T -M>#H@)3`X>``@9F9E('1U;FEN9R`E9`!$979I8V4@)7@O)7@@<F5M;W9E9"X` -M1&5V:6-E("5X('!O=V5R960@=7`N`'-T87)T(%-%4R!D979I8V4@)7``1F]U -M;F0@4T53($1E=FEC92`E>`!&86EL960@=&\@=F5R:69Y(&-O;G1R;VQL97(` -M;V1I;B!R96%D('=R:71E(&5X8V5E9',@)7@`;V1I;@!$979I8V5?260])60` -M1&5V:6-E("5X+R5X(')E;6]V960N`'=O<FMR;W5N9"!I<G%3=&%T=7,@/2`P -M>"5X`"4P,G@@)3`T>#HE,#1X.B4P-'@`1&5V:6-E("5X+R5X(')E;6]V960N -M`"!P:'D@='5N:6YG("5D+R5D`"!O<FEG:6YA;"!V86QU92`E,#1X.B`E,#AX -M`"!V97)I9GD@=F%L=64@)3`T>#H@)3`X>``@9F9E('1U;FEN9R`E9`!$979I -M8V4@)7@O)7@@<F5M;W9E9"X`1&5V:6-E("5X('!O=V5R960@=7`N`'-T87)T -M(%-%4R!D979I8V4@)7``1F]U;F0@4T53($1E=FEC92`E>`!&86EL960@=&\@ -M=F5R:69Y(&-O;G1R;VQL97(`;V1I;B!R96%D('=R:71E(&5X8V5E9',@)7@` -M;V1I;@!R87<@)7`@8F%D7W-E8W1O<B`E>`!7<FET92!B86-K=7!E9"!M971A -M(&1A=&$`1F%I;&5D('1O('-P:6YD;W=N(&1E=FEC97,`1F%I;&5D('1O(&9L -M=7-H('1A<F=E=',`075T;R!296)U:6QD`%)E8G5I;&0@4')I;W)I='D`0V]N -M=&EN=64@4F5B=6EL9&EN9R!O;B!%<G)O<@!3<&EN9&]W;B!)9&QE($1I<VL@ -M*&UI;G5T97,I`%-T86=G97)E9"!S<&EN=7``````````````````!@0%`0," -M4F(5``````````8$!0$#`MA@GS8Y/``````&!`4!`P(@8)!04@``````!@0% -M`0,"V&"0```````````!`@,0!`4&!Q$("0H+$@P-#@\3%!46%R08&1H;)1P= -M'A\F("$B(R<```````````````````````````````!(`0```````"$```"` -MEP$`$+@!`-"7`0!PSP$`4.H!`."W`0!PEP$`()D!`/"V`0#@EP$`X.P!`*"9 -M`0`0U`$``````!"T`0#PEP$`0.0!`/"N`0"PI@$`\*0!`#":`0#@NP$`4)H! -M`("F`0!0I@$`0*4!`!"<`0`PFP$```````````"PF0$`X.$!`"#>`0`PV@$` -M4-8!```````#$5`'```````"``````````````$````````````````````& -M!`4!`P)28A4`````````!@0%`0,"V&"?-CD\``````8$!0$#`B!@D%!2```` -M```&!`4!`P+88)``````````E0(````````A`````(8#`/"F`P!0A@,`4+X# -M`!#9`P#`I@,`\(4#`*"'`P#0I0,`8(8#`+#;`P`@B`,`\,(#``````#PH@,` -M<(8#``#3`P#0G0,`D)4#`."4`P"@B0,`P*H#`,")`P!@E0,`,)4#`&"4`P"` -MBP,`H(H#````````````,(@#`*#0`P#@S`,`\,@#`!#%`P```````Q&`<@`` -M`````@`````````````!`````````````````````0'_`@`````````````` -M`````````````````````````````0`````````8`````````"P````4```` -MX`$$`,`D!``0`00```````````"`]`,`H``$`$#U`P`````````````````` -M````````````````````````````````_P``0#D$``````"P=`0``0````'_ -M``"@.00``````&!S!``!`````O\``,`Y!```````<(@$``$````#_P``(#H$ -M``````"P@`0``0```#7_``!`.@0``````$!R!``!````!/\``"`[!``````` -M\&L$``$````%_P``@#L$````````Z`0``0````;_```P/@0`P'H$`$!;!``` -M````!_\``(#8!`!0>00``%H$```````*_P``($($``````#@9P0``0````O_ -M``!`0@0``````"#5!```````#/\``'!%!``P>00`P%D$```````-_P``X$4$ -M`!!Y!`"`600```````[_``!01@0`P'@$`$!9!```````#_\``!!'!``P>`0` -M`%D$```````0_P``@$<$`!!X!`#`6`0``````!'_``!P2`0``````$!8!``` -M````$O\``.!(!````````%@$```````3_P```$D$``````!@W@0``0```#3_ -M```@200``````,#B!``!````&/\``$!)!```````@'\$``````!"_P``\$D$ -M``````!@?P0``````!G_``"P0@0``````(#4!```````&O\``"!#!``````` -M(-0$```````=_P``H$H$``````#`5P0``````![_```02P0```````#:!``! -M````'_\``*!+!`"@=P0`@%<$```````@_P``4#\$`(!Z!```6P0``````"'_ -M``#`.P0``````"#F!``!````(O\```!(!```````@%@$```````C_P``D$,$ -M``````"0TP0``````"3_````1`0```````#3!```````)?\``'!$!``````` -MH-($```````I_P``H$`$``!Z!`"`6@0``````"K_``#@1`0``````)##!``` -M````*_\``#!,!`!P=P0`0%<$```````L_P``L#P$``````"@:@0``0```"W_ -M``"0/00``'L$`(!;!```````+O\````\!```````4.,$``$````O_P``X#D$ -M``````#`A@0``0```$G_````.@0``````)!R!``!````-_\``$`\!``````` -M4+T$``$````X_P```$`$`$!Z!`#`6@0``````#G_``!@000`P'D$`$!:!``` -M````.O\``!`]!```````\&D$``$````[_P``($T$``````"@?P0``0```#S_ -M``!0.P0``````$!K!``!````/?\``&`Z!```````H'$$``$````^_P``@#H$ -M``````"P<`0``0```$/_``"@.@0``````,!O!``!````1/\``,`Z!``````` -MT&X$``$```!&_P``X#H$``````#0;00``0```$?_````.P0``````/!L!``! -M````,O\``&`Y!```````(($$``$````S_P``@#D$`$![!`"P<P0``````&3_ -M``"03`0``````/!F!``!````,/\``,!,!```````H&0$``$```!F_P```#\$ -M``````"P:`0``0```&?_``#@/@0``````'!I!``!````1?\``"!.!`!0=P0` -M`%<$``````!(_P``T$X$`#!W!`#`5@0``````/____\````````````````` -M````````````````1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE -M87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R -M96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P -M<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S -M,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W -M,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R -M,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N -M,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T -M+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5 -M*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H -M1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-# -M.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70`` -M1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$ -M70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E -M0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E(%M& -M<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E -M(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE -M87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R -M96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P -M<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S -M,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W -M,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R -M,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N -M,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T -M+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5 -M*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H -M1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-# -M.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70`` -M1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$ -M70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E -M0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E(%M& -M<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E -M(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE -M87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P<F5R -M96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S,2!P -M<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W,#@S -M,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R,#`W -M,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N,B`R -M,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T+C(N -M,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5*2`T -M+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``1T-#.B`H1TY5 -M*2`T+C(N,B`R,#`W,#@S,2!P<F5R96QE87-E(%M&<F5E0E-$70``+G-Y;71A -M8@`N<W1R=&%B`"YS:'-T<G1A8@`N<F5L+G1E>'0`+G)E;"YR;V1A=&$`+G)O -M9&%T82YS='(Q+C0`+G)O9&%T82YS='(Q+C$`+G)E;"YD871A`"YB<W,`+F-O -M;6UE;G0````````````````````````````````````````````````````` -M```?`````0````8`````````0````"4H!0```````````!``````````&P`` -M``D``````````````#S*!0"`FP``#`````$````$````"````"D````!```` -M`@````````"`*`4`'!D`````````````(``````````E````"0`````````` -M````O&4&```?```,`````P````0````(````,0````$````R`````````)Q! -M!0`T!@`````````````$`````0```$`````!````,@````````#01P4`9`,` -M`````````````0````$```!3`````0````,`````````0$L%`)@'```````` -M`````"``````````3P````D``````````````+R$!@#(!@``#`````<````$ -M````"````%D````(`````P````````#@4@4`(`4`````````````(``````` -M``!>`````0``````````````X%(%`%`'``````````````$`````````$0`` -M``,``````````````#!:!0!G```````````````!``````````$````"```` -M``````````#(7`4`@"T```T```!U`@``!````!`````)`````P`````````` -M````2(H%`/,_``````````````$````````````````````````````````` -M``````````````,``0`````````````````#``(``````````````````P`# -M``````````````````,`!``````````````````#``4````````````````` -M`P`&``````````````````,`!P`````````````````#``@````````````` -M`````P`)``````````````````,`"@`````````````````#``L````````` -M`````````P`,``````````````````,`#0`!````(/8``)<````"``$`%0`` -M`+`"```Z`````@`!`",```#@^@``F`(```(``0`V````(!(``'0````"``$` -M1````!`9```)!@```@`!`&0```!@/0$`"0,```(``0![````@.X``!,````" -M``$`B@```!#J``#A`````@`!`*,````0=P$`5`````(``0"O````P((!`"<` -M```"``$`RP````#U```<`0```@`!`-L```!0````6@(```(``0#V````('$` -M`/,````"``$`$`$``%`*```E`````@`!`"8!``!P=P$`5P````(``0`W`0`` -MD)<``"`$```"``$`5`$``*#=``"-`````@`!`&T!``!`"0``L0````(``0"! -M`0``@`H``"`````"``$`H0$``*!J`0!(`````@`!`+$!``!0'P``*PP```(` -M`0#,`0``,``!`+L'```"``$`W@$``'"1`0!U`````@`!`.L!``!P!0``8P`` -M``(``0`)`@``4((!`"4````"``$`)`(``/!W`0`7`````@`!`#T"```0H0`` -M*P````(``0!8`@``0`,``$L````"``$`:`(``-"-`0#F`@```@`!`'H"``"@ -MH```/P````(``0"5`@```/,``%@````"``$`I0(``!#)``"A`````@`!`,$" -M``"`G```!@$```(``0#>`@``P(D``%(!```"``$`_P(``*#O``"G`````@`! -M`!4#```PB0``@P````(``0`P`P``8)(``/\````"``$`6`,``("$`0";```` -M`@`!`'@#``!@QP``K`$```(``0"+`P``,(X```0!```"``$`K0,``*"%`0`I -M`````@`!`-`#``!@C```2`$```(``0#P`P``H'P!`#D!```"``$`#`0``'#& -M``#A`````@`!`"($``#PN@``9P,```(``0`Z!```M`L``!L````!``,`100` -M`,#V```A`0```@`!`%0$``#`:P``&P````(``0!P!```D$,!``T$```"``$` -MAP0``""H```X`````@`!`)L$``!@<`$`5P````(``0"L!```P$0``,D````" -M``$`S@0``-!W`0`8`````@`!`.8$``#PV0``.0````(``0`&!0``,-8``"`` -M```"``$`'P4``&!Q`0!'!0```@`!`"\%```0<0$`2`````(``0!!!0``X%`! -M`*(````"``$`5@4``'#4```;`0```@`!`&\%````@```10(```(``0"/!0`` -M('L!`",````"``$`G`4``$!K``!\`````@`!`+H%``#P`P``$`````(``0#+ -M!0``,`4``#,````"``$`WP4``,#)``!D`0```@`!`/`%``"`9@$`30````(` -M`0#_!0``P`H``%\````"``$`$P8``%""``"%`@```@`!`"@&``#@A0``7@`` -M``(``0`]!@``@`P``#$!```"``$`408``%"_``#4`````@`!`'4&```````` -M.@````(``0"3!@``4!,``&D````"``$`J@8``)#0``#(`@```@`!`+P&``"` -MV0``;0````(``0#+!@``P-@``+@````"``$`Y@8```!O`0!7`````@`!`/8& -M``!@````@`````$`"0#\!@``L)L``'(````"``$`&0<``$!S``"T#````@`! -M`#0'``#0B0$`;@$```(``0!B!P``@`8``&$"```"``$`?P<``(#$`0!V```` -M`@`!`(\'``#`<`$`0@````(``0"B!P``<*```"L````"``$`O0<``*`P``#H -M`P```@`!`-T'``!0J`$`40$```(``0#X!P``8)8``"H!```"``$`'0@``"`+ -M``!:`````@`!`#`(````!```'@````(``0!#"```<*$``"L````"``$`6`@` -M`!"D``!)`````@`!`&D(``#`M```HP````(``0"+"```,-X``'P)```"``$` -MG`@``'`M```N`P```@`!`+0(``"09P``J`,```(``0#2"```4*8``"X````" -M``$`[@@``)`T``#\"````@`!``X)```PJ@``0`````(``0`C"0``$$T!`/@! -M```"``$`.`D``$!9``!@`P```@`!`$\)``!`A@``9P````(``0!L"0``H/@` -M`-@````"``$`APD``!#&```M`````@`!`)X)``#PJ0``0`````(``0"V"0`` -M8*4``#$````"``$`SPD```!J`0`[`````@`!`-\)``#P"```1P````(``0#K -M"0``X-4``"H````"``$`!0H``%"Q``"<`````@`!`"`*``"0P@``50$```(` -M`0`W"@``((4!`'$````"``$`6@H```![`0`?`````@`!`&X*```P!@``0@`` -M``(``0"""@``0*$``"$````"``$`G`H``%#6```M`````@`!`+0*``#@H``` -M*P````(``0#-"@``X!<``#`!```"``$`[`H``(`/```6`0```@`!`/D*``#` -M$P``)`(```(``0`6"P``8/,``-8````"``$`+`L``"""`0`F`````@`!`$D+ -M``#P]P``K0````(``0!>"P``X*X``$T````"``$`>@L``,#%``!0`````@`! -M`)(+``#@9P$`&P(```(``0"C"P``8+```.4````"``$`OPL``""$`0!3```` -M`@`!`.4+``"@$@``&P````(``0``#```X*\``'<````"``$`)0P``'"J```7 -M`P```@`!`#H,``!PM0```@$```(``0!;#```(*8``"H````"``$`=PP``.`+ -M`0#K!@```@`!`(T,``#P2P$`$@$```(``0"D#```@)@!`)4````"``$`M@P` -M`*"E```J`````@`!`,P,``!@DP``80$```(``0#C#```L#H!`*4"```"``$` -M]0P``(`K``#N`0```@`!`!$-````H```,`````(``0`A#0``(.T``'(````" -M``$`/PT``*!7``#*`````@`!`%P-``"PA@``YP````(``0!\#0``P(`!`#X! -M```"``$`C0T``+"H``!(`````@`!`*8-```@(`$`I0````(``0"Z#0``D-4` -M`$4````"``$`T0T``!`.``!P`0```@`!`.,-``"@$```40````(``0#Z#0`` -ML*D!`#L%```"``$`%0X``+"-``!]`````@`!`"D.```@Q```&P$```(``0`\ -M#@``(`0``%4````"``$`2PX``)`]```B!P```@`!`&,.``"`A0``7@````(` -M`0"-#@``\((!`"0!```"``$`L`X``,!^`0!)`0```@`!`,L.``!PLP``3`$` -M``(``0#N#@``H`0``&D````"``$``@\``."$``"5`````@`!`"@/``!`HP`` -MT`````(``0!"#P``D"@!```"```"``$`80\``/!J`0"/`````@`!`',/``"@ -M1P$`100```(``0"(#P``H%P!`.0(```"``$`I0\``'!``0`1`P```@`!`+X/ -M````Q0$`:`H```(``0#-#P``D"H!`'0)```"``$`Z@\`````.`0```@`! -M``(0```PH```-`````(``0`6$```T-8``(H````"``$`,Q```(#6``!(```` -M`@`!`$<0``"@G@``F`````(``0!6$```8*0``/8````"``$`:!```.!]`0#6 -M`````@`!`(,0``!`Q@``,`````(``0"7$```$-8``!<````"``$`K1```*`1 -M``![`````@`!`,\0````ZP``JP$```(``0#D$```$'@!`/`"```"``$`^A`` -M`'!8``#!`````@`!`!<1``!0>P$`1P$```(``0`N$0``0&H!`%(````"``$` -M/Q$````*``!%`````@`!`%,1``"@N```^`````(``0![$0``H+4!`,T````" -M``$`D!$``#"<``!,`````@`!`+$1``!`````'`````$`"0#"$0``<#<!`#8# -M```"``$`WA$``/`"``!$`````@`!`/$1``!`GP``+`````(``0`)$@```)$` -M`%,!```"``$`+A(``,`2``!6`````@`!`$X2```0@@$`!@````(``0!F$@`` -M(.X``%D````"``$`<A(``-`@`0"Y!P```@`!`(L2``!PZ0``G0````(``0"A -M$@``((L``#@!```"``$`PA(``$#T``#``````@`!`-<2``"040$`!`L```(` -M`0#S$@```)0!`&@#```"``$`"A,``$#Q``"U`0```@`!`"03``"0`P``7P`` -M``(``0`X$P``\&```%@$```"``$`3Q,``*#N```S`````@`!`%T3``"@H0`` -M*P````(``0!U$P``4/```.@````"``$`B1,``)"=```,`0```@`!`*03``!@ -MUP``7`$```(``0"[$P``,*\``*$````"``$`UQ,``(#]``"P`@```@`!`/43 -M``"PO@$`S`4```(``0`,%```L'8!`%P````"``$`&10``/!F`0`_`````@`! -M`"84``"@AP``*@$```(``0!*%```T-H``"X!```"``$`910``#"3`0#!```` -M`@`!`'T4``!@J```1`````(``0"9%```0.\``"4````"``$`J!0``(`$```7 -M`````@`!`+H4``!@70``B`,```(``0#5%```(!,``",````"``$`ZQ0``("" -M`0`S`````@`!``85````W```#0$```(``0`:%0``@/D``+`````"``$`+A4` -M`-"4``#P`````@`!`$L5````F`$`<P````(``0!9%0``0(L!`*8!```"``$` -M<!4``*`*```=`````@`!`((5``!`Q0``<@````(``0"4%0``0)D!`%X````" -M``$`I14``)"W```$`0```@`!`,\5``#@"P``D0````(``0#L%0``L.P``&@` -M```"``$`"18``-!-``#("0```@`!`"`6``#0A0$`]@,```(``0`V%@``H,X` -M`.(!```"``$`1A8``.`%``!!`````@`!`%T6```@NP$`P`````(``0!Y%@`` -M$`4``!$````"``$`D!8``$`````H`````0`'`)T6```@'P``+0````(``0"[ -M%@``,/H``+`````"``$`SQ8``&!O`0!7`````@`!`-\6````````!`````$` -M"0#Q%@``$-T``(T````"``$`&A<````1``"5`````@`!`#D7``#PPP``)@`` -M``(``0!)%P``@)\``'4````"``$`8A<``"!R```3`0```@`!`'L7``!090`` -M,0(```(``0"3%P``,,L``&H#```"``$`L1<``)`(`0!"`P```@`!`,L7``#P -M%0``Z0````(``0#A%P``0*(``/(````"``$`^!<``)!%```U"````@`!``X8 -M``"`"P``6@````(``0`B&```T*$``&<````"``$`-1@``'"V`0!]`````@`! -M`$T8```PV@``F0````(``0!H&```T(@``%D````"``$`CQ@``/#```"@```` -M`@`!`+88``#0I0``1`````(``0#1&```@+8```T!```"``$`]!@``.!K```] -M!0```@`!`!49``#`E0``E0````(``0`T&0``\`<!`)0````"``$`2!D``!"` -M`0"P`````@`!`&,9```03P$`Q`$```(``0!_&0``P`T``$0````"``$`D1D` -M`%`8`0#$!P```@`!`*P9````J0``Y`````(``0"^&0``T!,!`'@$```"``$` -MT1D``$"/``"X`0```@`!`/H9``!@O@``X0````(``0`A&@``,&<!`*,````" -M``$`.QH``+":`0!2`````@`!`%,:````@@$`!@````(``0!K&@``H.T``'(` -M```"``$`B1H``)#!``#U`````@`!`)X:``!PGP```@````(``0"S&@``,,`` -M`+$````"``$`U1H``*"Y``!+`0```@`!``$````PY@(`EP````(``0`V```` -M``("`'0````"``$`^!H``(#T`0!I`````@`!`'L```"0W@(`$P````(``0`. -M&P``()$"`"L````"``$`*QL```"K`@!G`P```@`!`,L````0Y0(`'`$```(` -M`0!%&P``<%<"`*@#```"``$`91L``,!]`@!]`````@`!`'L;``"P3`,`Y`@` -M``(``0":&P``(,T"`(T````"``$`Q1L``!"9`@#D`````@`!`"8!``!0:`,` -M5P````(``0#9&P``P(L"`'(````"``$`^!L``$!O`P`^`0```@`!``L<```@ -MB@,`4@````(``0`E'```H$$#``0+```"``$`0QP``#!5`@`Q`@```@`!`%T< -M``!PQP(`7`$```(``0"A`0``D%H#`$@````"``$`S`$``$#P`@"[!P```@`! -M`-X!``#P?P,`=0````(``0!V'```@((#`&@#```"``$`CQP``%"1`@`A```` -M`@`!`*L<````/`,`$@$```(``0#$'```</,!`%\````"``$`VAP``*!;`@`; -M`````@`!`/@<``!0]0$`8P````(``0`8'0``()0"`$D````"``$`*QT``/!` -M`P"B`````@`!`$(=``!@E@(`+@````(``0!@'0``8/H!`"`````"``$`@AT` -M`$"0`@`T`````@`!`)@=``!0?`,`Y@(```(``0"5`@``$.,"`%@````"``$` -MK!T``%!T`P#V`P```@`!`,0=``#@D0(`9P````(``0#9'0``\/T!`'`!```" -M``$`W@(``-!Y`@!2`0```@`!`/\"``"PWP(`IP````(``0#M'0```/@"`)0` -M```"``$`%0,``$!Y`@"#`````@`!``,>``#0:`,`%P````(``0`P`P``<((" -M`/\````"``$`'AX``*`T`@#)`````@`!`$(>``!@^P$`6@````(``0!8'@`` -M(#T#`/@!```"``$`.@0``.`7```@`````0`#`$4$``#0Y@(`(0$```(``0!O -M'@``@+8"`.$````"``$`AQX``$"[`@!J`P```@`!`*<>``!`?@(`!`$```(` -M`0#+'@``(#\#`,0!```"``$`Z1X``.#*`@`N`0```@`!`)L$``"P8`,`5P`` -M``(``0`&'P``H(T"``P!```"``$`(Q\``/`(`@`)!@```@`!`$4?``#PGP(` -M=P````(``0"/!0``,&H#`"4````"``$`;!\``-"U`@!0`````@`!`(8?``!P -MF`(`1`````(``0"D'P``X'@"`%D````"``$`S1\``(`"`@`;`````@`!`.H? -M```P^@$`)0````(``0#F!@``4%\#`%<````"``$`]@8``&`!``"``````0`) -M``(@``"@L0(`_@````(``0`9(```\'4"`%X````"``$`,"```.`#`P!X!``` -M`@`!`$4@```0]@$`0@````(``0!_!P``8+,#`'8````"``$`6R```'!Q`P`D -M`0```@`!`(`@```0@0(`4P$```(``0"G(```L*D"`$L!```"``$`S"```%!( -M`@#!`````@`!`.L@``!0DP(`T`````(``0`'(0``,`,"`&D````"``$`("$` -M`*#Z`0!?`````@`!`#8A``#0N0(`9`$```(``0!)(0``X.\!`#H````"``$` -M:2$```!A`@#S`````@`!`,\)```06@,`.P````(``0"%(0``\'0"`)4````" -M``$`K2$``(```@!1`````@`!`,8A````<P,`FP````(``0#K"0``\,4"`"H` -M```"``$`Z"$``(`@`@#H`P```@`!``HB```@:P,`.0$```(``0`H(@``<"0" -M`/P(```"``$`2B(``*"G`@`$`0```@`!`'8B``!PA@(`*@$```(``0"=(@`` -MH`("`%8````"``$`OR(``#"7`P!1`0```@`!`%H*````:@,`(0````(``0#< -M(@``8!L"`.X!```"``$`^B(``.```@"5`````@`!`+0*``#PD`(`*P````(` -M`0`;(P``8&P#`-8````"``$`.",``"#:`@#A`````@`!`%,C``"@^`(`2@,` -M``(``0#L"@``8/\!`!8!```"``$`;R,``'`M`@`B!P```@`!`(DC```@Q@(` -M%P````(``0"A(P```'$#`#,````"``$`OB,``$",`@!,`````@`!`.$C``"0 -M5@,`30````(``0#R(P``0)H"`$`````"``$`"20``)!G`P!<`````@`!`)(+ -M``#P5P,`&P(```(``0`8)```X,8"`(H````"``$`-R0```"Q`@"@`````@`! -M`&`D``!`5P,`HP````(``0!\)```D*T#`,P%```"``$`E20``*#``@#(`@`` -M`@`!`*DD``"`HP(`3`$```(``0#.)```8&H#`+<````"``$`YR0``+#=`@!R -M`````@`!``<E``"`D0(`*P````(``0`>)0``@/H!`!T````"``$`,B4``'#C -M`@#6`````@`!`$HE``!@80,`2`````(``0!>)0``T/,!`!`````"``$`<24` -M`+`W`P!%!````@`!`(@E``"0\@$`.@````(``0"D#````(<#`)4````"``$` -MS`P``'"#`@!A`0```@`!`)@E``"@&`,```(```(``0#C#```P"H#`*4"```" -M``$`N24``%!_`@"X`0```@`!`.0E```PF`(`.`````(``0#Z)0``$/4!`#,` -M```"``$`$"8```#H`@"M`````@`!`"<F````8@(`$P$```(``0!")@``\.H" -M`)@"```"``$`5R8``'"W`@"L`0```@`!`&PF``"PJ`(`^`````(``0"6)@`` -MH+("`%4!```"``$`KR8``+"5`@`J`````@`!`,<F``!0=@(`9P````(``0!C -M#@``D'4"`%X````"``$`YB8``+`]`@#("0```@`!`/\F``#P^P(`ZP8```(` -M`0`7)P``0,X"`'P)```"``$`*B<``*!P`P`F`````@`!`$DG``#@^0$`10`` -M``(``0!?)P``H!H#`'0)```"``$`?B<``)"F`@`-`0```@`!`*,G``"0[0(` -ML`(```(``0!A#P``X%H#`.,````"``$`PR<``'"4`@#V`````@`!`-<G``"P -MC@(`F`````(``0"^#P``X+,#`&@*```"``$`Z"<``&`(`P#$!P```@`!``4H -M``#0R`(`N`````(``0`B*```8/0!`!<````"``$`-B@``(#$`@`;`0```@`! -M`.H/``!PPP(`#@$```(``0!1*```T`4"`.D````"``$`:2@``,"8`@!(```` -M`@`!`(0H```@^0$`L0````(``0":*```X/,!`!X````"``$`KR@``$!Q`P`G -M`````@`!`,TH``"@<P,`<0````(``0#R*```\&@#``H!```"``$`+A$``%!: -M`P`Z`````@`!``HI``"0Q@(`2`````(``0`@*0``P'8"`.<````"``$`0BD` -M`"!C`@#H#````@`!`%\I``#@$`,`N0<```(``0!Z*0``4+4"`'(````"``$` -MCBD````/`@`M`````@`!`'L1``"`I`,`S0````(``0"N*0``P%L"`#T%```" -M``$`T2D``+"1`@`K`````@`!`.LI``#0\@$`1`````(``0``*@``4'@#`&X! -M```"``$`,"H``""V`@`M`````@`!`$DJ``"`CP(``@````(``0!F$@``,-X" -M`%D````"``$`8"H``'`U`@`V"````@`!`*$2```P>P(`.`$```(``0!X*@`` -M$,P"``T!```"``$`CBH``!#;`@"K`0```@`!`*4J``"@`P(`)`(```(``0#" -M$@``4.0"`,`````"``$`Q"H``"!;`@!\`````@`!`.0J``"`V0(`G0````(` -M`0#\*@``$'`"`$4"```"``$`'BL``,#<`@!H`````@`!`#TK``"`,`,`$0,` -M``(``0!8*P``('0#`"D````"``$`3Q,``+#>`@`S`````@`!`'TK``"``0(` -M>P````(``0"A*P``P/L!`)$````"``$`NQ,``$"?`@"A`````@`!`,`K``#0 -MA0(`E0````(``0#A*P``,-T"`'(````"``$``2P``&#\`0`Q`0```@`!`!<L -M````F@(`0`````(``0`Q+```8*\"`-0````"``$`5RP```#T`0!5`````@`! -M`!D4````5P,`/P````(``0!H+```<)4"`#$````"``$`@RP``(!P`P`&```` -M`@`!`)TL``!P+0,`"0,```(``0"V+```T%`"`%@$```"``$`910``+"!`P#! -M`````@`!`,\L``#P9P,`5`````(``0#=+```D&X#`+`````"``$`F10``%#? -M`@`E`````@`!`/HL``#P]`$`$0````(``0`3+0``0&T#`$D!```"``$`,"T` -M`%"/`@`L`````@`!`$HM``#@E0(`1`````(``0!G+0``4.$"`+4!```"``$` -M@RT```#[`0!:`````@`!`)@M``!0D@(`\@````(``0#5%`````,"`",````" -M``$`L2T``+!A`P#3!0```@`!`,,M``!`R@(`F0````(``0#@+0``\)X"`$T` -M```"``$`_BT``*`S`P`-!````@`!`!<N``!P?`(`2`$```(``0`:%0``D.D" -M`+`````"``$`+A4``."$`@#P`````@`!`$L5``"`A@,`<P````(``0`Y+@`` -M@)H"`!<#```"``$`4"X``&"A`@"<`````@`!`&TN``"PZ`(`V`````(``0"* -M+@``@$<"`,H````"``$`J2X``#`/`@`K#````@`!`)05``#`AP,`7@````(` -M`0#&+@``$)`"`#`````"``$`V"X``##P`0!:`@```@`!`/4N```@N0(`H0`` -M``(``0`3+P```,H"`#D````"``$`-2\``)"/`@!U`````@`!`%`O```080,` -M0@````(``0!E+P``8,8"`"T````"``$`-A8``+"^`@#B`0```@`!`'\O``"` -M)P,`-@,```(``0!=%@```*H#`,`````"``$`G2\``)#)`@!M`````@`!`*XO -M``"PS0(`C0````(``0#)+P``0,8"`"`````"``$`Y"\``*#]`0!$`````@`! -M`+L6``!`Z@(`L`````(``0#X+P``T/@!`$<````"``$`!C```*!R`P!3```` -M`@`!`,\6``"P7P,`5P````(``0#?%@````$```0````!``D`.1<```"T`@`F -M`````@`!`"XP``#`]0$`00````(``0!',```0$T"`(@#```"``$`9#```+!W -M`@`J`0```@`!`(HP``"0C`(`!@$```(``0"I,```8/8!`&$"```"``$`R#`` -M`-"D`@"C`````@`!`.PP``"@Q0(`10````(``0`%,0``L&@#`!@````"``$` -M'S$``'"N`@#A`````@`!`$@Q```@20(`8`,```(``0!A,0``8'("`(4"```" -M``$`>#$``$`!```<`````0`)`(LQ``!PH`(`Y0````(``0"I,0``D'`#``8` -M```"``$`-1@``%"E`P!]`````@`!`,,Q``"`D`(`*P````(``0#@,0``H(<" -M`"`$```"``$`_S$``%`=`@`N`P```@`!`!DR```PM`(`&P$```(``0`N,@`` -M8.`"`.@````"``$`1#(``("E`@`"`0```@`!`&<R``#0<`,`)0````(``0"$ -M,@``4+8"`#`````"``$`FC(``#`0`P"E`````@`!`+`R``"0F`,`.P4```(` -M`0#-,@``0+`"`+$````"``$`\3(``"#S`0!+`````@`!``,S``#`!P(`,`$` -M``(``0`D,P``P'D#`*8!```"``$`/3,``+"0`@`_`````@`!`%HS```PE@(` -M*@````(``0!X,P``<"<%`%4````"``$`AC,``"#Y`P":`````@`!`)8S``"0 -M"00`N@X```(``0"P,P```!@%`,H)```"``$`P#,``#`C!`")`````@`!`-`S -M```(`@``!`````$`"0#@,P``4/<#``\````"``$`]3,``)`;!``U`@```@`! -M``HT``"P$04`5`````(``0`B-```00(```$````!``<`,C0``(`U!`"<```` -M`@`!`$(T``!@"04`#@$```(``0!3-```<`H%`)0````"``$`9S0``)`2!0"8 -M`@```@`!`'TT``"@*P0`)0$```(``0"3-```#`(```0````!``D`H30``/`( -M!0!O`````@`!`+DT``"0X00`AP````(``0#(-```<%($`$$````"``$`VC0` -M`(#N`P`]`0```@`!`.TT``#0+`0`I`$```(``0`%-0``P.`#`$L````"``$` -M&34``-`=!`!N`@```@`!`"TU```@&@0`6P````(``0`[-0``\/4#`*H````" -M``$`4#4``*#[`P!9`````@`!`&$U``"`]0,`<`````(``0!X-0``%`(```$` -M```!``D`C#4``-`@!`!?`````@`!`*<U``!0&`0`P@$```(``0"[-0``0"`$ -M`(,````"``$`RS4``%#B`P`D`````@`!`-0U```PWP,`B`````(``0#P-0`` -M,!4%`/<````"``$`!C8````&!``;`P```@`!`!DV``#P!04`.@````(``0`B -M-@``T"<%`%4````"``$`,#8``$`$!`"V`0```@`!`$PV``!@400`^`````(` -M`0!7-@``4%4$`+`````"``$`;38``%"1!``/`0```@`!`'\V``"`5`0`SP`` -M``(``0"8-@``D/H$`$L````"``$`J38``+`F!`!"`````@`!`+0V``!@_`0` -MB00```(``0#%-@``P/<#`'P````"``$`VC8``!`(!0#2`````@`!`.DV```` -MYP,`W`````(``0#\-@``L-X#`!,````2``$`(S<``!@"```!````$0`)`#@W -M`````````````!````!/-P``4"<%`!(````2``$`9C<`````````````$``` -M`'DW``#PX0,`)P```!(``0"+-P``0"8%`#D````2``$`FC<``,#O`P#F`0`` -M$@`!`+$W``!PY0,`:@```!(``0#(-P`````````````0````X#<``-`F!0!: -M````$@`!`/DW```0WP,`$0```!(``0`0.```\.T#`(L````2``$`)S@````` -M````````$````$(X``"@XP,`5P```!(``0!1.``````````````0````6#@` -M``#D`P#&````$@`!`&LX``"0X0,`)0```!(``0"".```T.@#`!P````2``$` -MEC@``$#R`P!7`0``$@`!`*PX```0"P4`6@(``!(``0#).```$`(```0````1 -M``D`X#@``'`-!0`U!```$@`!`/HX`````````````!`````/.0``X.<#`$D` -M```2``$`)3D``"#Z`P!>````$@`!`$`Y``!@4@0`"@```!(``0!:.0`````` -M```````0````;#D``(`F!0!0````$@`!`($Y`````@``!````!$`"0"1.0`` -M@/H$`!`````2``$`JCD``"#C`P!Y````$@`!`+\Y```9`@```0```!$`"0#7 -M.0``$)L!`!@````2``$`\CD`````````````$````/PY``#0^00`B````!(` -M`0`3.@`````````````0````*CH``.#E`P!8````$@`!`#TZ```````````` -M`!````!'.@``!`(```0````1``D`5CH``-#D`P"8````$@`!`&XZ``!`Y@,` -MP````!(``0!_.@``4%$$``L````2``$`ESH`````````````$````*XZ```` -M5@0`+P```!(``0"^.@``%P(```$````1``D`VCH`````````````$````.TZ -M`````````````!``````.P``0P(```$````1``<`%#L``(#H`P`B````$@`! -M`#D[``!0`@4`2P,``!(``0!'.P``@(H#`!@````2``$`9#L``+#H`P`9```` -M$@`!`(`[`````````````!````"8.P``\``%`%4````2``$`K3L````````` -M````$````,,[```0$@4`?P```!(``0#>.P``H`4%`$H````2``$`\CL````` -M````````$`````(\`````````````!`````9/```,"<%`!(````2``$`,#P` -M````````````$````$,\```PX@,`%````!(``0!?/```P-\#`,$````2``$` -M>CP``$`"```!````$0`'`(T\``#0W@,`"P```!(``0"E/```%0(```$````1 -M``D`P#P``-`A!0#W`@``$@`!`.`\``!0)04``P```!(``0#Z/```(`($`,4! -M```2``$`$3T``+#Q`P"/````$@`!`"<]``"`X@,`-0```!(``0!`/0`````` -M```````0````5ST``.#>`P`H````$@`!`&\]`````````````!````"#/0`` -MP.$#`"P````2``$`F3T``#`E!0`8````$@`!`+<]``!P[`,`U0```!(``0#7 -M/0`````````````0````ZST`````````````$`````@^```@X@,`#0```!(` -M`0`B/@`````````````0````-3X``&#Y!`!J````$@`!`$P^```````````` -M`!````!G/@``("4%``(````2``$`>CX``.#Z!`!;````$@`!`(\^``"@]@,` -MH0```!(``0"G/@``T"0%`$\````2``$`Q3X``)#@`P`J````$@`!`/,^``!" -M`@```0```!$`!P`//P``H/,#`-8````2``$`)C\``&#Z!``>````$@`!`#L_ -M```PZ`,`20```!(``0!:/P`````````````0````<3\``!#K`P!4`0``$@`! -M`(X_``#`X@,`6P```!(``0"C/P``,`8%`#D!```2``$`P#\``!8"```!```` -M$0`)`-L_```@-@0`E````!(``0``4$U?27-S=65296%D1F%I;$QE9`!R-S4P -M7U1A9U]);FET`'(W-3!?57!D871E4&AY26YF;P!S87-?:&%S:%]A9&1R`'(W -M-3!?5F5R:69Y0V]M;6%N9$)E9F]R95-E;F1I;F<`<C<U,%]#:&5C:T1E=FEC -M94-H86YG90!-86ME071T1&5V26YF;P!R-S4P7T1)4T-?0V%N8V5L1&ES8V]V -M97(`<C<U,%]"965P3VX`<C<U,%]30U-)7T%405]&:6QL1&%T849I96QD`%!- -M7U=R:71E4F5G4WEN8P!R-S4P7U-#4TE?36%K94-A8VAE0V]M;6%N9`!R-S4P -M7T-/4D5?27-S=65335!297%U97-T`'(W-3!?359?6F5R;TUV4F5Q=65S=`!I -M,F-!7W=R:71E7V)Y=&5S`'(W-3!?4T537TEN=&5R;F%L4F5Q0V%L;&)A8VL` -M<C<U,%])<W-U95]297!O<G1'96YE<F%L`'(W-3!?359?1'5M<%)E<75E<W0` -M<C<U,%]-5E]);FET:6%L:7IE5&%R9V5T241486)L90!S971?<&U?9F%I;%]L -M960`<C<U,%]0<F5P87)E06YD4V5N9$-O;6UA;F0`;79?<&AY7W=O<FMA<F]U -M;F0`3V1I;E-025]29'!T`'(W-3!?359?36%P5&]3<&5C:69I8U1A<F=E=$E$ -M`'(W-3!?4T-325]!5$%?1FEL;$Q"04-D8C$P`'(W-3!?4T=024]?5W)I=&52 -M96=I<W1E<@!R-S4P7T9R9653051!4V-R871C:%1O4&]O;`!R-S4P7U1A9U]' -M971/;F4`<C<U,%]/9&EN4U!)7TEN:70`<C<U,%]&<F5E26YT97)N86Q297%4 -M;U!O;VP`=V%T:6YG7V-A;&QB86-K`'(W-3!?0V]M<&QE=&5297%U97-T06YD -M4VQO=`!R-S4P7T-O<F5?1V5T4W5P<&]R=&5D0V]U;G1S`$1E=FEC95]-86ME -M4')I=F%T95-E;F1397-297%U97-T`%!-7U-E=$9A:6Q,961#86QL8F%C:P!! -M<W-I9VY%;&5M96Y$97-C<FEP=&]R3F%M90!$979I8V5?36%K95-E<T5L96UE -M;G13=&%T=7-297%U97-T5&EM97(`<C<U,%]30U-)7T%405]697)I9GE4<F%N -M<VQA=&EO;@!R-S4P7U]?<F5N97=?=&EM97(`<C<U,%]$979I8V5?36%K95-E -M<U)C=D1I86=297%U97-T`'(W-3!?4T-325]!5$%?4W1A<G13=&]P5')A;G-L -M871I;VX`<C<U,%]$979I8V5?5W)I=&5397-#;VYT<F]L1&EA9P!R-S4P7U-' -M4$E/7U--4%)E<75E<W1?5W)I=&4`<C<U,%]&<F5E1&5V:6-E5&]0;V]L`'(W -M-3!?4&]R=%]!8F]R=%)E<75E<W1S`'!R;V1U8W1?:60`4$U?4F5A9%)E9U-Y -M;F,`<C<U,%]#;W)E7TUO9'5L95-E;F1297%U97-T`'(W-3!?0VAE8VM487)G -M971#:&%N9V4`<C<U,%]&<F5E4&]R=%1O4&]O;`!I,F-"7W=R:71E7V)Y=&5S -M`'(W-3!?0V]R95]);G1E<G)U<'1397)V:6-E4F]U=&EN90!R-S4P7U-'4$E/ -M7U)E861296=I<W1E<@!R-S4P7T1)4T-?1V5T3F5G;W1I871E9$QI;FM2871E -M`'(W-3!?0V%L8W5L871E4F]U=&5);F1E>`!R-S4P7V]D:6Y?:6]C=&P`<C<U -M,%]S971?9F%I;%]L960`<C<U,%]35%!?1&5V:6-E4F5S970`<C<U,%]'971% -M>'!A;F1E<D9R;VU0;V]L`'(W-3!?4T%405]035](86YD;&5$979I8V55;G!L -M=6<`5&5S=%]0:6Y?4V5T`'(W-3!?0V]R95]);G1E<FYA;%-E;F1297%U97-T -M`'(W-3!?5&%G7TES16UP='D`<C<U,%]-5E]-87!487)G971)1`!R-S4P7U]? -M861D7W1I;65R`'(W-3!?:3)C7W)E<V5T`'(W-3!?;79?9&ES86)L95]H8F$` -M<C<U,%]#;W)E7U)E<51I;65O=70`<C<U,%]&:6YD07-C:6E.=6UB97(`<C<U -M,%]M=E]S971?4T%3061D<@!R-S4P7T5X<&%N9&5R7U--4%)E<75E<W1?4&AY -M0V]N=')O;`!R-S4P7U-#4TE?36%K94UO9&5086=E0V%C:&EN9P!R-S4P7T-O -M<F5?4F5S971#;613;&]T`'(W-3!?4F5M;W9E1&5V:6-E`'(W-3!?1FEN9%1G -M=$YO`'(W-3!?4W1O<F5?0V]N9FEG4F]U=&5);F9O`&DR8T%?<F5A9%]B>71E -M<P!A:6YF;P!R-S4P7T-O<F5?36%K941E=FEC95)E<V5T4F5Q`'(W-3!?0V]R -M95]-;V1U;&5);FET:6%L:7IE`'(W-3!?4T-325]!5$%?4F5A9$-A<&%C:71Y -M5')A;G-L871I;VY#86QL8F%C:P!R-S4P7TU67U-E=$Q"06%N9%-E8W1O<D-O -M=6YT`&]D:6Y?8V]R95]T:6UE<@!R-S4P7W-E=%]F86EL7VQE9',`<C<U,%]& -M<F5E0V]R94-O;G1E>'14;U!O;VP`<C<U,%]C;W)E7VAA;F1L95]T87-K9FEL -M95]E<G)O<@!R-S4P7V]D:6Y?<V5T7W-P:6Y?=7!?;6]D90!R-S4P7U!O<W1- -M86ME4V5S16QE;65N=%-T871U<U)E<75E<W0`<C<U,%]M=E]E;F%B;&5?>&UT -M`'(W-3!?3&ES=%]'971&:7)S=`!R-S4P7T9R965315-30E1O4&]O;`!R-S4P -M7T=E=%!-1&5V:6-E`'(W-3!?1&5V:6-E7TUA:V5-;V1E4V5L96-T4F5Q=65S -M=`!R-S4P7T1I<V-O=F5R>5--`'(W-3!?4T%405]%<G)O<DAA;F1L:6YG`'(W -M-3!?4T%405]0;W)T2&%N9&QE26YT97)R=7!T`'(W-3!?1V5T0V]R94-O;G1E -M>'1&<F]M4&]O;`!R-S4P7U-!4U](86YD;&5#;VUP;&5T961#;VUM86YD`'(W -M-3!?1G)E95)E9VES=&5R4V5T`'(W-3!?4T%405]0;W)T1&5T96-T`'(W-3!? -M4&]R=%](86YD;&50;'5G:6X`<C<U,%]!<W-I9VY%;&5M96YT4VQO=$YU;6)E -M<@!R-S4P7T1E=FEC95])<W-U95-O9G1297-E=`!R-S4P7U]?4$U?8V%N8V5L -M7W1I;65R`'(W-3!?4$U?1G)E95)E9VES=&5R4V5T`'(W-3!?1V5T4T="=69F -M97)&<F]M4&]O;`!S971?96U?9F%I;%]L960`<C<U,%]-5E]#4D,`1V5T4T%4 -M038T2U-C<F%T8VA&<F]M4&]O;`!R-S4P7U)U;G1I;65)<W-U95-O9G1297-E -M=`!R-S4P7T=E=$1E=FEC949R;VU0;V]L`'(W-3!?4T-325]!5$%?4WEN8T-A -M8VAE5')A;G-L871I;VX`5&5S=%]0:6Y?26YI=&EA;&EZ90!R-S4P7TU67T=E -M=$UA<'!E9$E$`'(W-3!?1G)E95--4%-C<F%T8VA4;U!O;VP`<C<U,%]&:6YD -M1G)E95--4$-O;G1E>'0`1G)E95-!5$$V-$M38W)A=&-H5&]0;V]L`'(W-3!? -M4T%405]0<F5P87)E0V]M;6%N9$AE861E<@!M=E]P:'E?<F5S970`<C<U,%]3 -M051!7TAA;F1L941E=FEC955N<&QU9P!R-S4P7U!-7TES<W5E5W)I=&5296<` -M<C<U,%]30U-)7T%405]#:&5C:T-O;F1I=&EO;@!R-S4P7U!-7TES<W5E4F5A -M9%)E9P!R-S4P7T=E=$EN=&5R;F%L4F5Q1G)O;5!O;VP`<C<U,%]&<F5E17AP -M86YD97)4;U!O;VP`<V5T7V5M7V9A:6Q?;&5D<P!R-S4P7U)U;G1I;65)<W-U -M95)E861,;V=%>'0`<C<U,%]30U-)7T%405]296%D0V%P86-I='E4<F%N<VQA -M=&EO;@!R-S4P7V1U;7!?=6YA<W-O8VEA=&5D7V9I<P!R-S4P7T1E=FEC95]- -M86ME4W1A<G13=&]P56YI=%)E<75E<W0`<C<U,%]#;VUP;&5T95)E<75E<W0` -M<C<U,%]$979I8V5?36%K94UO9&5396YS95)E<75E<W0`<C<U,%]'9713051! -M4V-R871C:$9R;VU0;V]L`'(W-3!?0V]R95]-;V1U;&53=&%R=`!R-S4P7T1I -M<V-O=F5R>4-A;&Q"86-K`&=E=%]I9%]F<F]M7V5N8TED`'(W-3!?1V5T4T53 -M4T)&<F]M4&]O;`!315-?4')I=F%T95)E<4-A;&QB86-K`%-!4U]297!O<G1, -M=6Y38V%N`'(W-3!?0V]R95](86YD;&5786ET:6YG3&ES=`!R-S4P7U!R945M -M<'1Y4$T`<C<U,%]'971-:6Y.96=O=&EA=&5D3&EN:U)A=&4`<C<U,%]3051! -M7TAA;F1L941E=FEC95!L=6=I;@!R-S4P7T9I;&Q%;F-L;W-U<F5%;&5M96YT -M4W1A='5S`'(W-3!?4T-325]4;U]&25,`<C<U,%]#;W)E4V%V94]R:6=I;F%L -M0T1"`'(W-3!?4T%405]0;W)T4F5S970`<C<U,%]'971/;F5#;VUM86YD4VQO -M=`!R-S4P7VUV7W)E<V5T7W!H>0!R-S4P7U=R:71E1$5,5E]17T5N=')Y`'(W -M-3!?;V1I;E]S971?:61L95]S=&%N9&)Y`'(W-3!?4T537U-E=$9A:6Q,960` -M<C<U,%]'9710349R;VU0;V]L`'(W-3!?359?17%U86QS`'(W-3!?2&%N9&QE -M0V]M;6%N9%%U975E`$%S<VEG;E-E<T]T:&5R16QE;65N=$]V97)A;&Q%;&5M -M96YT3G5M8F5R`'(W-3!?4T-325]!5$%?4F5A9%=R:71E5')A;G-L871I;VX` -M<C<U,%]335!?4T=024]?4V5T7T9A:6QL960`<C<U,%]2=6YT:6UE27-S=653 -M;V9T4F5S971#86QL8F%C:P!R-S4P7U-'5&%B;&5?07!P96YD`'(W-3!?07-S -M:6=N1&5V:6-E3W9E<F%L;$5L96UE;G1.=6UB97(`<C<U,%]035]!<W-I9VY2 -M96=I<W1E<E-E=`!R-S4P7U-!5$%?4$U(;W1P;'5G4F5Q0V%L;&)A8VL`<&]R -M=%]S971?9F%I;%]L960`<C<U,%]5<&1A=&549W1$979-87``<C<U,%]305-? -M26YT97)N86Q297%#86QL8F%C:P!R-S4P7U5P9&%T951A<F=E=$1E=FEC97,` -M;V1I;E]E;5]A8V-E<W,`<C<U,%]3051!7T1E=FEC95-T871E36%C:&EN90!$ -M979I8V5?4F5P;W)T3'5N4F5Q=65S=`!R-S4P7U!R945M<'1Y1&5V:6-E`'(W -M-3!?1$E30U]#:&5C:T1I<V-O=F5R4W1A=&4`<C<U,%]&<F5E4TU00V]N=&5X -M=`!R-S4P7T=E=$Y#451A9P!R-S4P7U-!5%-E;G-E1&%T80!R-S4P7U-'4$E/ -M7U--4%)E<75E<W1?4F5A9`!R-S4P7U]?8V%N8V5L7W1I;65R`'(W-3!?1$E3 -M0U]'971297-O=7)C90!R-S4P7T-O<F5?<&%S<U]T:')U7V9I;&Q?=&%S:V9I -M;&4`<C<U,%]$25-#7T1O1&ES8V]V97(`<C<U,%]31U!)3U]);FET:6%L:7IE -M`'(W-3!?4&]R=%](86YD;&5$979I8V50;'5G:6X`<C<U,%]31U!)3U]3971? -M1F%I;&QE9`!S971?<&U?9F%I;%]L961S`'(W-3!?359?0V]P>5-'5&%B;&4` -M<C<U,%]$979I8V5?36%K95)E861#87!A8VET>51A<VM297%U97-T`'5P9&%T -M95]D979I8V5?8V]N9FEG`'(W-3!?0V]R95]-;V1U;&5%;F%B;&5$:7-A8FQE -M25)1`'(W-3!?;6]D95!A9V5"=68`<C<U,%]305-?1&5V:6-E4W1A=&5-86-H -M:6YE`'(W-3!?5&%G7TEN:71?1DE&3P!R-S4P7T-O<F5?1FEL;%-E;G-E1&%T -M80!R-S4P7U!O<W1-86ME4V5S0V]N9FEG=7)A=&EO;E)E<75E<W0`<C<U,%]3 -M051!7U!-7TAA;F1L941E=FEC95!L=6=I;@!R-S4P7U-#4TE?051!7U5P<&5R -M5V]R9`!-86ME1&5V26YF;P!R-S4P7U-!5$%?4$U3=&%T94UA8VAI;F4`<C<U -M,%]$25-#7U-E=%)E<V]U<F-E`$1E=FEC95]-86ME4')I=F%T95)E8W9397-2 -M97%U97-T`%!-7TES<W5E5W)I=&5&86EL3&5D`'(W-3!?4T%405]034EN:712 -M97%#86QL8F%C:P!R-S4P7V]D:6Y?9FQA<VA?86-C97-S`'(W-3!?4T%405]0 -M;W)T1&5V:6-E4F5A9'D`<C<U,%]486=?4F5L96%S94]N90!R-S4P7U-!4U]% -M<G)O<DAA;F1L:6YG`&-H96-K7U-A<T%D9'(`<C<U,%]&<F5E4T="=69F97)4 -M;U!O;VP`<C<U,%]$971E8W10;W)T5'EP90!R-S4P7U!O<G1?27-297%U97-T -M4G5N;FEN9P!R-S4P7T1)4T-?1V5T5&=T1&5V36%P`$1E=FEC95]497-T56YI -M=%)E861Y4F5Q=65S=`!R-S4P7T1E=FEC95]087)S94ED96YT:69Y1&%T80!R -M-S4P7V1E=FEC95]P<F]B95]D;VYE`'(W-3!?0F5E<$]F9@!G971?9FER<W1? -M<&T`<C<U,%]5<&1A=&53=&%T=7-6<U-E<T-O;G1R;VQ"=69F97(`<C<U,%]) -M<W-U95]#;VYF:6=2;W5T94EN9F\`3V1I;E-025]396-T;W)5;G!R;W1E8W0` -M<C<U,%]#;W)E4F5S=&]R94]R:6=I;F%L0T1"`'-C<VEL=6Y?=&]?:6YT`'(W -M-3!?4T=486)L95]);FET`'(W-3!?4T%405]035]%<G)O<DAA;F1L:6YG`%-! -M5$%?2&%N9&QE4$U?2&]T4&QU9P!R-S4P7U-#4TE?051!7T9I;&Q,0D%#9&(Q -M-@!R-S4P7TES<W5E7T1I<V-O=F5R`$=E=$%T=$ED96YT:69Y1G)A;64`4T53 -M5&EM97)?26YT97)N86Q297%#86QL8F%C:P!G971?96YC7V-O=6YT`'(W-3!? -M0V%T96=O<GE?0T1"7U1Y<&4`<C<U,%],:7-T7T=E=$QA<W0`<C<U,%]&<F5E -M4$U4;U!O;VP`9V5T7VUI;E]P;5!A=&A)9`!R-S4P7T1E=FEC95]-86ME4F5A -M9$-A<&%C:71Y,39487-K4F5Q=65S=`!R-S4P7VUV7V1I<V%B;&5?<F5G:7-T -M97)?<V5T`'(W-3!?4T%405]0;W)T1&5V:6-E1&5T96-T960`<C<U,%]0;W)T -M7TAA;F1L955N<&QU9P!R-S4P7T%405]#1$(R5&%S:T9I;&4`4F5M;W9E4T%3 -M1&5V:6-E`'(W-3!?359?4F5M;W9E5&%R9V5T240`;V1I;E]S971?:&%R9%]D -M:7-K7VED96YT:69Y`'(W-3!?4T=486)L95]!=F%I;&%B;&4`4&]R=$UA<%]2 -M-S4P`'(W-3!?4T%405]0<F5P87)E0V]M;6%N9%1A8FQE`$=E=$1E=DED96YT -M:69Y1G)A;64`:3)C0E]R96%D7V)Y=&5S`'-A<U]A9&1R97-S7V-O=6YT`'(W -M-3!?27-S=65?4F5P;W)T36%N=69A8W1U<F5R26YF;W)M871I;VX`<C<U,%]0 -M<F5P87)E1&5L:79E<GE1=65U945N=')Y`%5P9&%T94AI;5!A=&A)9`!R-S4P -M7T9I;F12=6YN:6YG4F5Q0GE486<`<C<U,%]#;W)E7TUO9'5L95-H=71D;W=N -M`'(W-3!?4$U?0V]R95]297%4:6UE;W5T`'(W-3!?17AP86YD97)?4TU04F5Q -M7T-A;&QB86-K`'(W-3!?57!D871E5VED95!O<G10:'E-87``<C<U,%]305-? -M2&%N9&QE0E)$0U-4`'(W-3!?07-S:6=N4F5G:7-T97)3970`<C<U,%]397)V -M:6-E26YT97)R=7!T`'(W-3!?;79?9&ES86)L95]X;70`<C<U,%]335!297-P -M3&5N9W1H`'5P9&%T95]D979I8V5?8V]N9FEG7W8R`'(W-3!?27-S=65?4F5P -M;W)T4F]U=&5);F9O`'(W-3!?4&]S=$UA:V5397-%;F-L;W-U<F53=&%T=7-2 -M97%U97-T`'(W-3!?17AP86YD97)?4TU04F5Q=65S=%]297!O<G1'96YE<F%L -M`'(W-3!?1V5T4TU04V-R871C:$9R;VU0;V]L`'(W-3!?1&5V:6-E7TUA:V5) -M;G%U:7)Y5&%S:U)E<75E<W0`<C<U,%]#;W)E7TUO9'5L94=E=%)E<V]U<F-E -M475O=&$`<C<U,%]!<W-I9VY$979I8V5%;&5M96YT3G5M8F5R`'(W-3!?4&]R -M=%]&:6YD5&=T3F\`<C<U,%]31U!)3U]335!297%?0V%L;&)A8VL`<C<U,%]0 -M;W)T7U-O9G1297-E=$-A;&QB86-K`'(W-3!?;79?<F5S971?>&UT`'(W-3!? -M;79#:&%N;F5L4W1A=&5-86-H:6YE`'(W-3!?4&]R=%]-;VYI=&]R`'(W-3!? -M4T%37U!O<G1297-E=`!R-S4P7U!O<W1-86ME4V5S16QE;65N=$1E<V-R:7!T -M;W)297%U97-T`'(W-3!?17AP86YD97)?4TU04F5Q=65S=%]297!O<G102%E3 -M051!`'(W-3!?23)#7TUO9'5L94EN:71I86QI>F4`<C<U,%]O9&EN7W)E;6]V -M95]D979I8V4`<C<U,%]30U-)7T%405],;W=E<E=O<F0`<C<U,%]'971-87A. -M96=O=&EA=&5D3&EN:U)A=&4`<C<U,%]'9710;W)T1G)O;5!O;VP`<C<U,%]- -M5E]$=6UP4F5G:7-T97(`<C<U,%]%>'!A;F1E<E]335!297%U97-T7T1I<V-O -M=F5R`'(W-3!?1&5V:6-E7TUA:V5297%U97-T5&%S:U)E<75E<W0`9&,W,C@P -M7U-'5&%B;&5?07!P96YD`&1C-S(X,%]&<F5E4T%405-C<F%T8VA4;U!O;VP` -M9&,W,C@P7U!O<G1?06)O<G1297%U97-T<P!D8S<R.#!?4T%405]0;W)T2&%N -M9&QE26YT97)R=7!T`&1C-S(X,%]315-?4V5T1F%I;$QE9`!D8S<R.#!?4T%3 -M7TEN=&5R;F%L4F5Q0V%L;&)A8VL`9&,W,C@P7TES<W5E7U)E<&]R=$UA;G5F -M86-T=7)E<DEN9F]R;6%T:6]N`&1C-S(X,%]0;W)T7TUO;FET;W(`9&,W,C@P -M7T-O<F5?36%K941E=FEC95)E<V5T4F5Q`&1C-S(X,%]30U-)7U1O7T9)4P!D -M8S<R.#!?;V1I;E]R96UO=F5?9&5V:6-E`&1C-S(X,%]3051!7U!-26YI=%)E -M<4-A;&QB86-K`&1C-S(X,%]035]#;W)E7U)E<51I;65O=70`9&,W,C@P7T1) -M4T-?1V5T5&=T1&5V36%P`&1C-S(X,%]O9&EN7V9L87-H7V%C8V5S<P!D8S<R -M.#!?1G)E95--4%-C<F%T8VA4;U!O;VP`9&,W,C@P7T1I<V-O=F5R>4-A;&Q" -M86-K`&1C-S(X,%]486=?4F5L96%S94]N90!D8S<R.#!?0V]R95]-;V1U;&53 -M96YD4F5Q=65S=`!D8S<R.#!?359?36%P5&]3<&5C:69I8U1A<F=E=$E$`&1C -M-S(X,%]'9710341E=FEC90!D8S<R.#!?4U107T1E=FEC95)E<V5T`&1C-S(X -M,%]'971#;W)E0V]N=&5X=$9R;VU0;V]L`&1C-S(X,%]-5E]);FET:6%L:7IE -M5&%R9V5T241486)L90!D8S<R.#!?4')E16UP='E$979I8V4`9&,W,C@P7T]D -M:6Y34$E?26YI=`!D8S<R.#!?051!7T-$0C)487-K1FEL90!D8S<R.#!?4TU0 -M4F5S<$QE;F=T:`!D8S<R.#!?;79?<F5S971?<&AY`&1C-S(X,%]0;W)T7T9I -M;F149W1.;P!D8S<R.#!?4T=024]?5W)I=&5296=I<W1E<@!D8S<R.#!?0V]R -M95]);G1E<G)U<'1397)V:6-E4F]U=&EN90!D8S<R.#!?;79?9&ES86)L95]X -M;70`9&,W,C@P7U-!5$%?4&]R=$1E=&5C=`!D8S<R.#!?1G)E941E=FEC951O -M4&]O;`!D8S<R.#!?17AP86YD97)?4TU04F5Q7T-A;&QB86-K`&1C-S(X,%]$ -M979I8V5?36%K95-E<U)C=D1I86=297%U97-T`&1C-S(X,%]0;W)T7U-O9G12 -M97-E=$-A;&QB86-K`&1C-S(X,%])<W-U95]#;VYF:6=2;W5T94EN9F\`9&,W -M,C@P7U!O<G1?27-297%U97-T4G5N;FEN9P!D8S<R.#!?5F5R:69Y0V]M;6%N -M9$)E9F]R95-E;F1I;F<`9&,W,C@P7T1E=FEC95]-86ME4W1A<G13=&]P56YI -M=%)E<75E<W0`9&,W,C@P7T9R965%>'!A;F1E<E1O4&]O;`!D8S<R.#!?0V]R -M95)E<W1O<F5/<FEG:6YA;$-$0@!D8S<R.#!?4&]S=$UA:V5397-%;F-L;W-U -M<F53=&%T=7-297%U97-T`&1C-S(X,%]D=6UP7W5N87-S;V-I871E9%]F:7,` -M9&,W,C@P7TU67UIE<F]-=E)E<75E<W0`9&,W,C@P7T=E=%!O<G1&<F]M4&]O -M;`!D8S<R.#!?1FEN9$%S8VEI3G5M8F5R`&1C-S(X,%]305-?4&]R=%)E<V5T -M`&1C-S(X,%]-5E]'971-87!P961)1`!D8S<R.#!?4T-325]!5$%?4F5A9%=R -M:71E5')A;G-L871I;VX`9&,W,C@P7U!O<W1-86ME4V5S0V]N9FEG=7)A=&EO -M;E)E<75E<W0`9&,W,C@P7T1E=FEC95]-86ME4F5Q=65S=%1A<VM297%U97-T -M`&1C-S(X,%]0;W)T7TAA;F1L941E=FEC95!L=6=I;@!D8S<R.#!?4$U?07-S -M:6=N4F5G:7-T97)3970`9&,W,C@P7T-O<F5?4F5S971#;613;&]T`&1C-S(X -M,%]M=E]D:7-A8FQE7VAB80!D8S<R.#!?7U]A9&1?=&EM97(`9&,W,C@P7U-# -M4TE?36%K94UO9&5086=E0V%C:&EN9P!D8S<R.#!?0T]215])<W-U95--4%)E -M<75E<W0`9&,W,C@P7T%S<VEG;D1E=FEC94]V97)A;&Q%;&5M96YT3G5M8F5R -M`&1C-S(X,%]7<FET941%3%9?45]%;G1R>0!D8S<R.#!?4T-325]!5$%?5F5R -M:69Y5')A;G-L871I;VX`9&,W,C@P7V-O<F5?:&%N9&QE7W1A<VMF:6QE7V5R -M<F]R`&1C-S(X,%]31U!)3U]335!297%U97-T7U=R:71E`&1C-S(X,%]305-? -M2&%N9&QE0V]M<&QE=&5D0V]M;6%N9`!D8S<R.#!?1&5V:6-E7TUA:V5296%D -M0V%P86-I='DQ-E1A<VM297%U97-T`&1C-S(X,%]0;W-T36%K95-E<T5L96UE -M;G13=&%T=7-297%U97-T`&1C-S(X,%]3051!7U!-7TAA;F1L941E=FEC95!L -M=6=I;@!D8S<R.#!?;V1I;E]S971?<W!I;E]U<%]M;V1E`&1C-S(X,%]#;W)E -M7TAA;F1L95=A:71I;F=,:7-T`&1C-S(X,%]0<F5P87)E1&5L:79E<GE1=65U -M945N=')Y`&1C-S(X,%]31U!)3U]335!297%U97-T7U)E860`9&,W,C@P7T1) -M4T-?0V%N8V5L1&ES8V]V97(`9&,W,C@P7U5P9&%T95=I9&50;W)T4&AY36%P -M`&1C-S(X,%](86YD;&5#;VUM86YD475E=64`9&,W,C@P7T1)4T-?1V5T4F5S -M;W5R8V4`9&,W,C@P7U-#4TE?051!7T9I;&Q,0D%#9&(Q-@!D8S<R.#!?0V]R -M95]-;V1U;&5%;F%B;&5$:7-A8FQE25)1`&1C-S(X,%]I,F-?<F5S970`9&,W -M,C@P7T9R965296=I<W1E<E-E=`!D8S<R.#!?0F5E<$]F9@!D8S<R.#!?1$E3 -M0U]#:&5C:T1I<V-O=F5R4W1A=&4`9&,W,C@P7T5X<&%N9&5R7U--4%)E<75E -M<W1?4F5P;W)T1V5N97)A;`!D8S<R.#!?23)#7TUO9'5L94EN:71I86QI>F4` -M9&,W,C@P7V1E=FEC95]P<F]B95]D;VYE`&1C-S(X,%]296UO=F5$979I8V4` -M9&,W,C@P7U)U;G1I;65)<W-U95-O9G1297-E=$-A;&QB86-K`&1C-S(X,%]3 -M1U!)3U]3971?1F%I;&QE9`!D8S<R.#!?1V5T36%X3F5G;W1I871E9$QI;FM2 -M871E`&1C-S(X,%]&<F5E4T534T)4;U!O;VP`9&,W,C@P7TQI<W1?1V5T3&%S -M=`!D8S<R.#!?4$U?27-S=657<FET95)E9P!D8S<R.#!?<V5T7V9A:6Q?;&5D -M`&1C-S(X,%]486=?27-%;7!T>0!D8S<R.#!?57!D871E5&=T1&5V36%P`&1C -M-S(X,%]486=?26YI=`!D8S<R.#!?4T%405]034AO='!L=6=297%#86QL8F%C -M:P!D8S<R.#!?4&]S=$UA:V5397-%;&5M96YT1&5S8W)I<'1O<E)E<75E<W0` -M9&,W,C@P7T9R9650;W)T5&]0;V]L`&1C-S(X,%]-5E]-87!487)G971)1`!D -M8S<R.#!?4$U?27-S=65296%D4F5G`&1C-S(X,%]#;W)E7TUO9'5L95-H=71D -M;W=N`&1C-S(X,%]5<&1A=&50:'E);F9O`&1C-S(X,%]?7W)E;F5W7W1I;65R -M`&1C-S(X,%]$979I8V5?36%K95)E861#87!A8VET>51A<VM297%U97-T`&1C -M-S(X,%]'971$979I8V5&<F]M4&]O;`!D8S<R.#!?1V5T4T534T)&<F]M4&]O -M;`!D8S<R.#!?07-S:6=N16QE;65N=%-L;W1.=6UB97(`9&,W,C@P7U!O<G1? -M2&%N9&QE56YP;'5G`&1C-S(X,%]#;W)E7TUO9'5L95-T87)T`&1C-S(X,%]$ -M:7-C;W9E<GE330!D8S<R.#!?4T-325]!5$%?0VAE8VM#;VYD:71I;VX`9&,W -M,C@P7TU67T-O<'E31U1A8FQE`&1C-S(X,%]3051!7T1E=FEC95-T871E36%C -M:&EN90!D8S<R.#!?1&5V:6-E7TUA:V5);G%U:7)Y5&%S:U)E<75E<W0`9&,W -M,C@P7T1E=FEC95]087)S94ED96YT:69Y1&%T80!D8S<R.#!?4T%44V5N<V5$ -M871A`&1C-S(X,%]'971.0U%486<`9&,W,C@P7VUV0VAA;FYE;%-T871E36%C -M:&EN90!D8S<R.#!?4W1O<F5?0V]N9FEG4F]U=&5);F9O`&1C-S(X,%]31U1A -M8FQE7TEN:70`9&,W,C@P7T=E=$5X<&%N9&5R1G)O;5!O;VP`9&,W,C@P7U-! -M4U](86YD;&5"4D1#4U0`9&,W,C@P7T-O<F53879E3W)I9VEN86Q#1$(`9&,W -M,C@P7TU67T1U;7!297%U97-T`&1C-S(X,%],:7-T7T=E=$9I<G-T`&1C-S(X -M,%]30U-)7T%405]&:6QL1&%T849I96QD`&1C-S(X,%]30U-)7T%405]3>6YC -M0V%C:&54<F%N<VQA=&EO;@!D8S<R.#!?4T=024]?26YI=&EA;&EZ90!D8S<R -M.#!?1G)E95--4$-O;G1E>'0`9&,W,C@P7T9I;&Q%;F-L;W-U<F5%;&5M96YT -M4W1A='5S`&1C-S(X,%]#;W)E7TUO9'5L94EN:71I86QI>F4`9&,W,C@P7U-! -M5$%?4$U3=&%T94UA8VAI;F4`9&,W,C@P7T9R9650351O4&]O;`!D8S<R.#!? -M4T%405]0<F5P87)E0V]M;6%N9%1A8FQE`&1C-S(X,%]#;W)E7TUO9'5L94=E -M=%)E<V]U<F-E475O=&$`9&,W,C@P7T9R96531T)U9F9E<E1O4&]O;`!D8S<R -M.#!?5&%G7TEN:71?1DE&3P!D8S<R.#!?4T-325]!5$%?4F5A9$-A<&%C:71Y -M5')A;G-L871I;VY#86QL8F%C:P!D8S<R.#!?7U]035]C86YC96Q?=&EM97(` -M9&,W,C@P7TU67T1U;7!296=I<W1E<@!D8S<R.#!?4V5R=FEC94EN=&5R<G5P -M=`!D8S<R.#!?27-S=65?1&ES8V]V97(`9&,W,C@P7T1)4T-?1&]$:7-C;W9E -M<@!D8S<R.#!?4T%405](86YD;&5$979I8V55;G!L=6<`9&,W,C@P7T-O<F5? -M26YT97)N86Q396YD4F5Q=65S=`!D8S<R.#!?1$E30U]3971297-O=7)C90!D -M8S<R.#!?4T%405]035](86YD;&5$979I8V55;G!L=6<`9&,W,C@P7U-!5$%? -M4&]R=$1E=FEC941E=&5C=&5D`&1C-S(X,%]5<&1A=&5487)G971$979I8V5S -M`&1C-S(X,%]30U-)7T%405]3=&%R=%-T;W!4<F%N<VQA=&EO;@!D8S<R.#!? -M0V]R95]P87-S7W1H<G5?9FEL;%]T87-K9FEL90!D8S<R.#!?;79?9&ES86)L -M95]R96=I<W1E<E]S970`9&,W,C@P7T%S<VEG;D1E=FEC945L96UE;G1.=6UB -M97(`9&,W,C@P7T=E=$UI;DYE9V]T:6%T961,:6YK4F%T90!D8S<R.#!?;79? -M<V5T7U-!4T%D9'(`9&,W,C@P7U!-7T9R965296=I<W1E<E-E=`!D8S<R.#!? -M17AP86YD97)?4TU04F5Q=65S=%]0:'E#;VYT<F]L`&1C-S(X,%]-5E]%<75A -M;',`9&,W,C@P7T=E=%-'0G5F9F5R1G)O;5!O;VP`9&,W,C@P7U-#4TE?051! -M7TQO=V5R5V]R9`!D8S<R.#!?0VAE8VM$979I8V5#:&%N9V4`9&,W,C@P7U-! -M4U]%<G)O<DAA;F1L:6YG`&1C-S(X,%]"965P3VX`9&,W,C@P7U-'4$E/7U-- -M4%)E<5]#86QL8F%C:P!D8S<R.#!?4T=486)L95]!=F%I;&%B;&4`9&,W,C@P -M7U--4%]31U!)3U]3971?1F%I;&QE9`!D8S<R.#!?0V]R95]&:6QL4V5N<V5$ -M871A`&1C-S(X,%]'971335!38W)A=&-H1G)O;5!O;VP`9&,W,C@P7U-!5$%? -M4&]R=$1E=FEC95)E861Y`&1C-S(X,%]M=E]E;F%B;&5?>&UT`&1C-S(X,%]! -M<W-I9VY296=I<W1E<E-E=`!D8S<R.#!?;V1I;E]I;V-T;`!D8S<R.#!?27-S -M=65?4F5P;W)T4F]U=&5);F9O`&1C-S(X,%]'971);G1E<FYA;%)E<49R;VU0 -M;V]L`&1C-S(X,%]#:&5C:U1A<F=E=$-H86YG90!D8S<R.#!?1&5V:6-E7U=R -M:71E4V5S0V]N=')O;$1I86<`9&,W,C@P7T-O;7!L971E4F5Q=65S=`!D8S<R -M.#!?4G5N=&EM94ES<W5E4V]F=%)E<V5T`&1C-S(X,%]$979I8V5?27-S=653 -M;V9T4F5S970`9&,W,C@P7U-!5$%?2&%N9&QE1&5V:6-E4&QU9VEN`&1C-S(X -M,%]0<F5P87)E06YD4V5N9$-O;6UA;F0`9&,W,C@P7U!R945M<'1Y4$T`9&,W -M,C@P7U-#4TE?36%K94-A8VAE0V]M;6%N9`!D8S<R.#!?0V]M<&QE=&5297%U -M97-T06YD4VQO=`!D8S<R.#!?1$E30U]'971.96=O=&EA=&5D3&EN:U)A=&4` -M9&,W,C@P7T9I;F12=6YN:6YG4F5Q0GE486<`9&,W,C@P7W-E=%]F86EL7VQE -M9',`9&,W,C@P7T9I;F1&<F5E4TU00V]N=&5X=`!D8S<R.#!?4T%37T1E=FEC -M95-T871E36%C:&EN90!D8S<R.#!?1FEN9%1G=$YO`&1C-S(X,%])<W-U95]2 -M97!O<G1'96YE<F%L`&1C-S(X,%]#86QC=6QA=&52;W5T94EN9&5X`&1C-S(X -M,%]M=E]R97-E=%]X;70`9&,W,C@P7TU67T-20P!D8S<R.#!?4T-325]!5$%? -M4F5A9$-A<&%C:71Y5')A;G-L871I;VX`9&,W,C@P7TU67U)E;6]V951A<F=E -M=$E$`&1C-S(X,%]3051!7U!-7T5R<F]R2&%N9&QI;F<`9&,W,C@P7U5P9&%T -M95-T871U<U9S4V5S0V]N=')O;$)U9F9E<@!D8S<R.#!?0V]R95]'9713=7!P -M;W)T961#;W5N=',`9&,W,C@P7TU67U-E=$Q"06%N9%-E8W1O<D-O=6YT`&1C -M-S(X,%]$979I8V5?36%K94UO9&5396QE8W1297%U97-T`&1C-S(X,%]'971/ -M;F5#;VUM86YD4VQO=`!D8S<R.#!?4T=024]?4F5A9%)E9VES=&5R`&1C-S(X -M,%]%>'!A;F1E<E]335!297%U97-T7U)E<&]R=%!(65-!5$$`9&,W,C@P7U!O -M<G1?2&%N9&QE4&QU9VEN`&1C-S(X,%]#;W)E7U)E<51I;65O=70`9&,W,C@P -M7VUO9&5086=E0G5F`&1C-S(X,%]2=6YT:6UE27-S=65296%D3&]G17AT`&1C -M-S(X,%]30U-)7T%405]5<'!E<E=O<F0`9&,W,C@P7T9R965#;W)E0V]N=&5X -M=%1O4&]O;`!D8S<R.#!?4T537TEN=&5R;F%L4F5Q0V%L;&)A8VL`9&,W,C@P -M7U-!5$%?17)R;W)(86YD;&EN9P!D8S<R.#!?1V5T4$U&<F]M4&]O;`!D8S<R -M.#!?1&5T96-T4&]R=%1Y<&4`9&,W,C@P7T1E=FEC95]-86ME36]D95-E;G-E -M4F5Q=65S=`!D8S<R.#!?4T-325]!5$%?1FEL;$Q"04-D8C$P`&1C-S(X,%]? -M7V-A;F-E;%]T:6UE<@!D8S<R.#!?4T%405]0;W)T4F5S970`9&,W,C@P7V]D -M:6Y?<V5T7VED;&5?<W1A;F1B>0!D8S<R.#!?17AP86YD97)?4TU04F5Q=65S -M=%]$:7-C;W9E<@!D8S<R.#!?5&%G7T=E=$]N90!D8S<R.#!?4T%405]0<F5P -M87)E0V]M;6%N9$AE861E<@!D8S<R.#!?0V%T96=O<GE?0T1"7U1Y<&4`9&,W -M,C@P7T9R965);G1E<FYA;%)E<51O4&]O;`!D8S<R.#!?1V5T4T%405-C<F%T -M8VA&<F]M4&]O;`!3=V%P2'!T365T858S`&QD;5]S<&EN=7!?=F1E=@!R87=? -M8VAE8VM?9&ES:U]D97-C<FEP=&]R`&QD;5]C:&5C:U]A<G)A>0!L9&U?<F5C -M:&5C:U]A;&P`=F1E=E]C;&%S<U]L:7-T`')A=U]I9&QE7W1I;65R7W)E<V5T -M`&QD;5]D96QE=&5?<&%R=&ET:6]N`&QD;5]S>6YC7V-H86YG961?87)R87ES -M`&=R96)U:6QD;VYE<G)O<@!L9&U?<75E=65?979E;G0`=')A;G-F;W)M7VYE -M961E9`!L9&U?8VAE8VM?=')A;G-F;W)M`&QD;5]F:7AU<%]A<G)A>5]S=&%T -M90!C86QC7W)E8G5I;&1?<')O9W)E<W,`=F)U<U]E>'1?<VEZ90!S971?=')A -M;G-F;W)M7W-T97!?:6YF;P!L9&U?:61L95]T:6UE<@!L9&U?9FEN9%]V9&5V -M7W)A=P!L9&U?<F5P<F]B95]D979I8V4`8V%L8U]T<F%N<V9O<FU?<')O9W)E -M<W,`;&1M7V9I;F1?=F1E=E]C;&%S<P!L9&U?86QL;V-?<&%R=&ET:6]N`&QD -M;5]I;FET7V1I<VL`<F5F<F5S:%]R87=?9&5V7VEN9F\`7V1E;&5T95]R87=? -M<&%R=`!R87=?<F5A9%]W<FET95]S96-T;W)S`&=I9&QE<W1A;F1B>71I;65O -M=70`<F%W7V-H96-K7V%R<F%Y7V1E<V-R:7!T;W(`;&1M7V-R96%T95]V9&5V -M7W)A=P!U;G!L=6=?<F%W7W9D978`0VAE8VM3=6T`8V]M<&%R95]S;&]T7W-E -M<5]B>5]P8VEA9&1R`&QD;5]A9&1?9&ES:U]T;U]A<G)A>0!L9&U?<WEN8U]D -M:7-K7VEN9F\`9V5T7V)I=',`4W=A<$AP=$UE=&%6-`!R87=?8V]N=F5R=%]S -M<&%R95]T;U]L96=A8WD`9DYO=&EF>4=520!L9&U?9FQU<VA?86QL7W1A<F=E -M=',`;&1M7W-T87)T7W)E8G5I;&0`;&1M7W-P:6YD;W=N7V%L;%]R87=D979S -M`%]?;&1M7V9I;FES:%]C;60`241?5$]?5D1%5@!?7W9D979?<75E=65?8VUD -M`')A=U]I9&QE7W1I;65R7V-H96-K`&=E=%]S=')I<%]I;F9O`&QD;5]R97-U -M;65?861A<'1E<@!H<'1N<E]L9&U?<F5G:7-T97)?:&EM7U)?-E\U-5\W-5\T -M-E\V-`!H<'1N<E]G1VQO8F%L3F-Q1FQA9P!H<'1N<E]O<U]R97%U97-T7W1I -M;65R`&AP=&YR7V1M87!O;VQ?9V5T7W!A9V4`:'!T;G)?;W-?9V5T7W-T86UP -M`&AP=&YR7VQD;5]S=7-P96YD`&AP=&YR7VQD;5]I9&QE`&AP=&YR7VQD;5]G -M971?;65M7VEN9F\`:'!T;G)?;&1M7W)E;6]V95]T:6UE<@!H<'1N<E]P8VEC -M9F=?<F5A9%]D=V]R9`!H<'1N<E]D;6%P;V]L7VUA:V5?;W)D97(`:'!T;G)? -M;&1M7V=E=%]V8G5S7V5X=`!H<'1N<E]L9&U?<F5L96%S95]V9&5V`&AP=&YR -M7V9R965L:7-T7W)E<V5R=F5?9&UA`&AP=&YR7VQD;5]I;G1R`&UE;6-P>0!H -M<'1N<E]L9&U?;VY?=&EM97(`:'!T;G)?;&1M7V=E=%]C;61?<VEZ90!H<'1N -M<E]L9&U?9G)E95]C;61S`&AP=&YR7VQD;5]C<F5A=&5?=F1E=@!H<'1N<E]L -M9&U?861D7W-P87)E7W1O7V%R<F%Y`&AP=&YR7V=R96)U:6QD<')I;W)I='D` -M:'!T;G)?;&1M7W-Y;F-?87)R87E?:6YF;P!H<'1N<E]O<U]M87!?<&-I7V)A -M<@!H<'1N<E]?7VQD;5]A;&QO8U]C;60`:'!T;G)?:6YI=%]M;V1U;&5?=F1E -M=E]R87<`:'!T;G)?;&1M7W-E=%]A=71O<F5B=6EL9`!H<'1N<E]?7V1U;6UY -M7W)E9P!H<'1N<E]D;6%P;V]L7V%C=&EV90!H<'1N<E]V8G5S7VQI<W0`:'!T -M;G)?;&1M7W%U975E7W9B=7-?9'!C`&AP=&YR7VQD;5]R97-E=%]V8G5S`&AP -M=&YR7V=31U!)3U!A<G13=7!P;W)T`&AP=&YR7VEN:71?;6]D=6QE7VAI;5]R -M-S4P`%]?=6UO9&1I,P!H<'1N<E]L9&U?<F5L96%S95]L;V-K`&AP=&YR7V]S -M7W5N;6%P7W!C:5]B87(`:'!T;G)?;&1M7W-H=71D;W=N`%]?=61I=F1I,P!H -M<'1N<E]H:6U?;&ES=`!H<'1N<E]L9&U?<F5Q=65S=%]T:6UE<@!H<'1N<E]L -M9&U?<F5S=6UE`&AP=&YR7VQD;5]G971?9&5V:6-E7VED`&AP=&YR7V]S7W-C -M:&5D=6QE7W1A<VL`:'!T;G)?;&1M7VEO8W1L`&AP=&YR7V=3<&EN=7!/;F5$ -M979%86-H5&EM90!H<'1N<E]F<F5E;&ES=%]P=70`:'!T;G)?;W-?<W1A;&QE -M>&5C`&AP=&YR7V=?;&5G86-Y7VUO9&4`:'!T;G)?;&1M7V%L;&]C7V-M9'-? -M4E\V7S4U7S<U7S0V7S8T`&AP=&YR7VQD;5]R=6X`:'!T;G)?:6YI=%]M;V1U -M;&5?:&EM7V1C-S(X,`!H<'1N<E]L9&U?9G)E95]C;61S7W1O7VQI<W0`:'!T -M;G)?;W-?;6%X7V-A8VAE7W-I>F4`:'!T;G)?=F1E=E]Q=65U95]C;60`:'!T -M;G)?;W-?9V5T7W9B=7-?<V5Q`&AP=&YR7VQD;5]S>6YC7V%R<F%Y7W-T86UP -M`&AP=&YR7VQD;5]Q=65U95]C;60`:'!T;G)?;W-?<')I;G1K`&AP=&YR7V9R -M965L:7-T7W)E<V5R=F4`:'!T;G)?9&UA<&]O;%]P=71?<&%G90!H<'1N<E]F -M<F5E;&ES=%]G970`:'!T;G)?;&1M7W5N<F5G:7-T97)?9&5V:6-E`&AP=&YR -M7VQD;5]R96=I<W1E<E]A9&%P=&5R`&AP=&YR7V=A=71O<F5B=6EL9`!H<'1N -M<E]L9&U?9V5T7W9B=7-?<VEZ90!H<'1N<E]D96QA>5]B971W965N7W-P:6YU -M<`!H<'1N<E]L9&U?9V5N97)I8U]M96UB97)?9F%I;&5D`&AP=&YR7V1M87!O -M;VQ?9V5T7W!A9V5?870`:'!T;G)?;&1M7V5V96YT7VYO=&EF>0!H<'1N<E]L -M9&U?8W)E871E7W9B=7,`:'!T;G)?:&EM7VAA;F1L95]T;U]V8G5S`&AP=&YR -M7V9R965L:7-T7V=E=%]D;6$`:'!T;G)?;&1M7V=E=%]N97AT7W9B=7,`:'!T -M;G)?;W-?<&-I7W=R:71E;`!H<'1N<E]L9&U?9FEN9%]T87)G970`:'!T;G)? -M9&UA<&]O;%]R96=I<W1E<E]C;&EE;G0`:'!T;G)?;&1M7VEN:71I86QI>F5? -M=F)U<U]A<WEN8P!H<'1N<E]O<U]Q=65R>5]T:6UE`&AP=&YR7V]S7W%U97)Y -M7W)E;6]V95]D979I8V4`:'!T;G)?;&1M7W)E9VES=&5R7V1E=FEC90!H<'1N -M<E]O<U]P8VE?<F5A9&P`:'!T;G)?;&1M7V%C<75I<F5?;&]C:P!H<'1N<E]O -M<U]R979A;&ED871E7V1E=FEC90!H<'1N<E]D;6%P;V]L7VEN:70`:'!T;G)? -M;&1M7V9I;FES:%]C;60`:'!T;G)?;&1M7VED95]F:7AS=')I;F<`:'!T;G)? -M9&UA<&]O;%]M87A?8VQA<W-?<&%G97,`:'!T;G)?;&1M7W)E9VES=&5R7W9D -M979?8VQA<W-?4E\V7S4U7S<U7S0V7S8T`&AP=&YR7VYU;5]D<FEV97-?<&5R -M7W-P:6YU<`!H<'1N<E]L9&U?<F5L96%S95]V8G5S`&AP=&YR7VQD;5]Q=65U -M95]T87-K`&AP=&YR7VQD;5]A;&QO8U]C;61S7V9R;VU?;&ES=`!H<'1N<E]F -M<F5E;&ES=%]P=71?9&UA`&AP=&YR7VQD;5]T:6UE<E]P<F]B95]D979I8V4` -M:'!T;G)?;&1M7V9I;F1?<W1A;7``:'!T;G)?;&1M7V-H96-K7V%R<F%Y7V]N -M;&EN90!H<'1N<E]G4')O8F5);DEN:71I86QI>FEN9P!H<'1N<E]L;V=?<V5C -M=&]R7W)E<&%I<@``D@````*)``"I`````I(``+T````"*P``)`$```$!```[ -M`0```NH``%T!```"K0``:0$```(]``!\`0```J0"`(<!```"00``IP$```(H -M``"^`0```E8``,H!```"*P``YP$```(K```+`@```E4``"@"```"GP``>P(` -M``+J``"9`@```JT``+@%```"30``)PD```$#``#/"0```04``-0)```"KP(` -MXPD```$&``#H"0```J\"`#P*```"A`(`#`L```&0`@`T"P```9`"`)0+```! -MD`(`'0P```&0`@!8#````9`"`,(,```"I`(`_`P```*D`@`^#0```J0"`'@- -M```"I`(`W`T```(/`0#H#0```J0"`/0-```"9@``:`X```&0`@!V#@```9`" -M`(<.```"I`(`F@X```&0`@"H#@```9`"`+L.```!D`(`Q`X```&0`@#G#@`` -M`J0"`/(.```!D`(`$P\```*D`@`>#P```9`"`#\/```!D`(`6@\```&0`@"C -M#P```9`"`+H/```!D`(`U@\```&0`@#K#P```9`"``D0```!D`(`%!````&0 -M`@!!$````J0"`$\0```!D`(`=A````*D`@"$$````9`"`+82```!D`(`"Q,` -M``+2```[$P```M(``*\3```"+0``%10```)]`@`H%````O0``$P4```"9P`` -M[!0```(M```3%0```A8``"H5```"L0``1A4```$&``!+%0```J\"`&@5```" -MN@(`A14```*Z`@"@%0```CD``,L5```!D`(`GA8```&4``"_%@```L$``)P7 -M```"@```J!<```(K``"8&````KL``-0;```"\@``4!P```+>``"3'````KL` -M`#8=```!`P``7AT```(9``"B'0```AD``.4=```"&0``)!X```(9``!E'@`` -M`DP``+4>```"!P$`11\```*>``!_'P```A(``*L?```"I`(`\B$```*A```' -M(@```G<``-,B```"^@``5B,```+```!\(P```OH```$E```"@P``'24```(` -M`0"3)0```H,``,0E```"``$`92<```)#``!,*````H0"`&8H```!`P``]2@` -M``(1```'*0```A$``*4I```"@P``UBD```(``0!2*@```@4!`(TJ```"KP`` -ML2H```(%`0#'*@```@T!`.LJ```"!0$`/RL```*C``"D*P```F<``+0K```" -M;@``1"P```*0``#`+````I```,XL```"(@``^BP```*0```3+0```MP``#LM -M```"3@``WRT```)P```$+@```MP``"HN```"F0``5RX```*0``!?+@```ID` -M`(0N```"W```YBX```(Z```P+P```E0``%4O```"9P``CR\```*Z`@"O+P`` -M`CH``-0O```"00``X"\```*D`@`C,````K8``"TP```"[```:3````(Z``!^ -M,````E<``(8P```"F0``_3````&0`@`C,0```9`"`%0Q```!D`(`FS$```$% -M``"@,0```J\"`/$Q```"O```9C(```*\``!\,@```KX``(@R```"<```.C,` -M``+9``!9,P```MP``'\S```"9P``$30```+9```J-````MP``'(T```";``` -MC34```&0`@"F-0```9`"`+XU```!D`(`$38```&0`@`M-@```9`"`*DV```" -MV@``!#<```&0`@`@-P```9`"`#PW```!D`(`2#<```)C```G.````A`!`%PX -M```"A`(`,SD```*$`@"N.0```H0"`-8Y```!D`(`!CH```&0`@!".@```9`" -M`"$[```"A`(`43P```*$`@#:/````H0"`.T\```!`P``<CT```*D`@"P/0`` -M`9`"`-`]```!D`(`]#T```$&``#Y/0```J\"``4^```"#@$`<CX```&0`@#L -M/@```@X!`/T^```"#@$`Q#\```+9``#9/P```MP``'M````"-```ST$```(? -M``#C00```BT``$9"```";P``IT(```+9``"S0@```C0``,A"```"W```&D,` -M``)G``"30P```FT``,9#```"9P``7$0```)G``"11````BT``*%$```"F0`` -MY$0```&0`@`'10```9`"`#1%```!D`(`2$4```*H``"H10```9`"``]&```! -MD`(`+48```&0`@`_1@```HX``&E&```!D`(`?D8```&0`@#41@```9`"`.U& -M```!D`(`%D<```)]`@`V1P```O@``'5'```"9P``JT<```*Z`@#'1P```CH` -M`/5'```"A````4@```*D`@`H2````0$``%A(```"G0(`>D@```&0`@"*2``` -M`9`"`*E(```!D`(`N4@```&0`@#A2````9`"``M)```!D`(`-DD```&0`@!/ -M20```9`"`'M)```!D`(`I4D```&0`@#V20```9`"`!)*```!D`(`+TH```&0 -M`@!+2@```9`"`(E*```"?0(`RTH```*Z`@#C2@```CH``/1*```"00```$L` -M``*D`@`C2P```>P``#A+```"G0(`64L```&0`@!W2P```9`"`*)+```!D`(` -MP$L```&0`@`+3````GT"`"=,```"9P``5TP```*Z`@![3````0P!`)),```" -MG0(`LDP```&0`@#/3````9`"`.M,```"I`(`^TP```&0`@`630```9`"`#-- -M```!D`(`3TT```*D`@!?30```9`"`(--```!D`(`/DX```&0`@!F3@```J0" -M`)%.```!D`(`N$X```*D`@#A3@```9`"``I/```"I`(`5D\```+$``!T3P`` -M`H4``(1/```"$```MT\```(_``#Q3P```A4``"-0```"$```XU````*D`@`) -M40```9`"`"=1```"I`(`1U$```&0`@!P40```J0"`)91```!D`(`N%$```*D -M`@#440```9`"`/A1```"9P``?5(```(Z``#!4@```CH``-%2```"$```&%,` -M``)G```^4P```F<``&%3```"?0(`>5,```)!``"%4P```J0"`#94```"+0`` -M650```(6``!P5````K$``(I4```!!@``CU0```*O`@"L5````KH"`,E4```" -MN@(`[%0```(Y```550```HH``$E5```"9P``:E4```)!``!V50```J0"`*=5 -M```"%@``OE4```*Q``#850```08``-U5```"KP(`^E4```*Z`@`75@```KH" -M`#)6```".0``3U8```(_``#45@```9`"`/M6```"I`(`%U<```&0`@`W5P`` -M`9`"`%I7```"I`(`=E<```&0`@#\5P```O@```A8```"?```35@```)T``!> -M6````OD``)M8```"I`(`LU@```&0`@#.6````9`"`/)8```"$```^E@```(+ -M`0`E60```IP``*U9```"#`$`Q%D```)G``!16@```B$!`(-:```"M@``O%H` -M``++``#;6@```KH"`/M:```"N@(`+%L```*D`@!#6P```9`"`%Q;```!D`(` -M?%L```(0``"$6P```@L!`,U;```"Q```!EP```)G``""7````IP``)1<```" -M'P$`!%T```&0`@`E70```9`"`$)=```"<@``4UT```+Y``"[70```G8``-A= -M```"W```^ET```*9```?7@```I```"=>```"F0``:EX```+<``"Q7@```CH` -M`,9>```"9P``]EX```*Z`@`.7P```CH``!Q?```"00``*%\```*D`@!)7P`` -M`NP``'5?```"W```IU\```(Z``#$7P```F<``-Q?```"%@``\U\```*Q```0 -M8````KH"`"U@```"N@(`0&````(Y``!98````O0``&Y@```!D`(`NV````(0 -M``#'8````C\``%!A```!D`(`<V$```(?``"'80```BT``*YA```"'P``MF$` -M``(G`0#580```0,``/1A```"*0$`&&(```(I`0`\8@```CH``&MB```"5``` -MC&(```*B``"V8@```CH``.%B```"5````F,```(Z```>8P```J(``$%C```" -M.@``7F,```(Z``"48P```D$``*!C```"I`(`#&0```*E```K9````JL``$5D -M```"%@``7&0```*Q``!V9````08``'MD```"KP(`F&0```*Z`@"U9````KH" -M`,AD```".0``]&0```)G```P90```AT!`'AE```"=0``EF4```)G```[9@`` -M`J@``$!G```"V0``=6<```+K``"0:````H0"`+!H```!D`(`W&@```&0`@`8 -M:0```9`"`$5I```!!0``2FD```*O`@!E:0```@D!`+)I```!D`(`TVD```&0 -M`@#P:0```9`"`&UJ```!D`(`FFH```$&``"?:@```J\"`,QJ```"8P``X&H` -M``&0`@"S:P```ID``--K```"2P``6&P```(N``!V;````K\``*)L```"L`(` -MSFP```*P`@#Z;````K`"`"-M```"L`(`3&T```*P`@"`;0```K`"`*5M```" -ML`(`RVT```*P`@#W;0```K`"`!QN```"L`(`2&X```*P`@!T;@```K`"`)QN -M```"L`(`Q&X```*P`@#L;@```K`"`!1O```"L`(`.V\```*P`@!D;P```K`" -M`(EO```"L`(`NF\```*"`@#G;P```H("`!MP```"@@(`3'````*"`@!]<``` -M`H("`*YP```"@@(`VW````*"`@`/<0```H("`$5Q```"9P``6G$```*)``#3 -M<0```0$``.9Q```"Z@``]G$```(]``"%<@```F<``,%R```"N@(`W7(```(Z -M``#K<@```D$``/=R```"I`(`)W,```)0``#8=````BX``&QU```"L@(`HG4` -M``*R`@#?=0```K("`!QV```"L@(`5G8```*R`@!R=@```K("`)!V```"L@(` -M^G8```*R`@!5=P```K("`+)W```"L@(`^W<```*R`@!0>````K("`+AX```" -ML@(``7D```*R`@`V>0```LP``$5Y```"L@(`<WD```(/``"">0```K("`+!Y -M```"#P``OWD```*R`@#M>0```@\``/QY```"L@(`*GH```(/```Y>@```K(" -M`)UZ```"TP``DWT```*]`@"O?0```KT"`,M]```"O0(`YWT```*]`@`#?@`` -M`KT"`!]^```"O0(`6GX```)G``"_?@```KT"`/E^```"9P``9W\```*]`@"J -M?P```F<``"*````":0``;8````&0`@"2@````9`"`*Z````"^0``\8````(Z -M```$@0```D$``!"!```"I`(`,H$```(6``!/@0```KH"`&R!```"N@(`@X$` -M``(Y``"2@0```9`"`.^!```"T@``'X(```*Z`@!X@@```KX``)R"```"9P`` -M1X,```*H``!'A````MP``'.$```"V0``CX0```+:``#)A````FP``*R(```" -MG0``#(D```*$`@`@B0```N4``)J)```"A`(`Z8D```*)``#[B0```I(```V* -M```"*P``-HH```*$`@!XB@```9<``,V*```"Z@``[HH```*M``#ZB@```CT` -M`$F+```"B0``6XL```*2``!MBP```BL``+Z+```!EP``$XP```+J```TC``` -M`JT``$",```"/0``K8P```*)``##C````I(``-F,```"*P``_HP```*$`@`U -MC0```1T``%^-```"Z@``@(T```*M``"0C0```CT``/*-```"G0``'8X```(W -M``!9C@```HD``&N.```"D@``?8X```(K``##C@```1T``.^.```"Z@``$(\` -M``*M```<CP```CT``+V/```"4@``_(\```)2``!,D````G,``&"0```",0`` -MDI````(U``"RD````C$``.:0```",0``NY$```*N```.D@```JD``$>2```" -M-0``B)(```*)``":D@```I(``*R2```"*P``\I(```'P```:DP```NH``#N3 -M```"K0``1Y,```(]```AE````B@``"V4```"*P``7Y0```*$`@"AE````B@` -M`*V4```"*P``0Y4```(3`0!8E0```B@``&25```"*P``?Y4```)]`@"3E0`` -M`3(``*B5```"G0(`%Y8```*G```$EP```A@!`$27```"&`$`?I<```(U``"Z -MF````F4``,^8```"S@``Y)@```(@`0#YF````A,!`!.9```"?0(`)YD```$R -M``!!F0```IT"`'29```"9P``Z)D```(A`0`.F@```K8``#6:```"RP``A)H` -M``)G``#"F@```C4``/>:```"'0$`(9L```(H```UFP```BL``'&;```"-0`` -M.YP```&0`@#6H````F(``-^A```!`P``>*(```&0`@"HH@```9`"`-.B```! -MD`(`#*,```&0`@!?HP```9`"`(VC```!D`(`LZ,```&0`@#EHP```9`"`*:D -M```!`P``NZ0```$#``#.I````0,``-RD```!`P``[Z0```+-``#ZI````0,` -M`'ZE```"9P``OJ4```)G``#NI0```F<``#ZF```"9P``;J8```)G``#TI@`` -M`F<``%"H```"V0``R:D```(?```8J@```O<``%BJ```"]P``0:L```(H``!2 -MJP```H(``%NL```"/0``@JP```+H``"1K````F(``*:L```"W```$:T```)V -M``!WK0```G```$BN```"*P``NJX```)6``#(K@```BL```:O```"9P``$*\` -M``(;```8KP```FX``$RO```"B0``6J\```*2``!SKP```BL``+&O```!LP`` -MO:\```(]````L````HD``#>P```!LP``0[````(]``"!L````HD``).P```" -MD@``I;````(K``#LL````0$```"Q```"Z@``(;$```*M```ML0```CT``&VQ -M```"B0``J+$```&L``"TL0```CT``,:Q```"I`(`V+$```*D`@"]L@```B@` -M`,ZR```"@@``VK(```(K```3LP```GL``#&S```"*```0K,```*"``!.LP`` -M`BL``$RT```"I`(`6+0```(K``"(M````GL``)BT```"I`(`I+0```(K``#< -MM````HD``!^U```"&0``+[4```(K``!#M0```;,``$^U```"/0``D+4```*) -M``"JM0```I(``,.U```"*P``';8```&S```PM@```NH``$ZV```"K0``6K8` -M``(]``"IM@```HD``,2V```"D@``W;8```(K```SMP```;,``$>W```"Z@`` -M:;<```*M``!UMP```CT``+"W```"B0``RK<```*2``#CMP```BL``#:X```! -MLP``3K@```+J``!PN````JT``'RX```"/0``P+@```*)``#:N````I(``/.X -M```"*P``/KD```&S``!2N0```NH``'2Y```"K0``@+D```(]``#?N0```HD` -M`)6Z```!`0``J+H```+J``"TN@```CT``.&\```"*0$`_KP```)6``!,O0`` -M`F<``!^^```"D```@[X```*)``"DO@```A4!`+:^```"*P``"K\```$*`0`= -MOP```NH``"F_```"/0``>K\```*)``",OP```A4!`.&_```!"@$`]+\```+J -M````P````CT```S````"I`(`4<````*)``!?P````A4!`*K````!"@$`O<`` -M``+J``#)P````CT```G!```"B0``%\$```(5`0!=P0```0H!`'#!```"Z@`` -M?,$```(]``"MP0```DP``+W!```"*0``K<(```),``"]P@```BD``"7#```" -MN```I,,```*6```-Q````A$!`#W$```"3```3<0```(I``"YQ````IH``!C% -M```"!@$`<L4```+9``"2Q0```G8``*C%```"!@$`\<4```+9```'Q@```@8! -M`##&```"?0(`8\8```)]`@"UQ@```F@``/W&```"V0``%\<```)P```CQP`` -M`KX``-3'```"9P``YL<```)U``#]QP```0D!`!+(```"G0(`CL@```)G``"@ -MR````KX``+G(```!40``U,@```*=`@"!R0```MD``(W)```"-```F<D```*0 -M```_R@```0D!`%3*```"G0(`V,H```%1``#SR@```IT"`'3,```"9P``V<P` -M``*```#MS````BL``#?-```"5```:LT```*V``"5S0```D<``+7-```"9P`` -M-,X```(A`0!/S@```H```&/.```"*P``R\X```(Z``#TS@```D$```#/```" -MI`(`*\\```*E``!*SP```JL``'?/```"%@``CL\```*Q``"HSP```08``*W/ -M```"KP(`RL\```*Z`@#GSP```KH"`"+0```".0``1-````)G``!VT````AT! -M`+?0```".@``Z-````)!``#TT````J0"`!_1```"I0``/M$```*K``!;T0`` -M`A8``';1```"L0``D-$```$&``"5T0```J\"`+;1```"N@(`S]$```$&``#4 -MT0```J\"`/71```"N@(`?-(```*Z`@#<T@```F<``!K3```"N@(`/-,```(Y -M``"`TP```HD``)+3```"D@``J],```(K```9U````;,``"S4```"Z@``2M0` -M``*M``!6U````CT``(/4```"3```D]0```(I``!NU0```@8!`*?5```"*0`` -M_M4```)G```)V````H0"`,S9```"IP``!-H```)8``"/V@```0$``+W:```" -M&@``F=L```$!``#<VP```AH``*7<```!`0``Z]P```(:``!5W0```0$``)/= -M```"&@``Y=T```$!```CW@```AH``/S>```"'@``==\```($`0!_X````NX` -M`!/A```":P``FN$```*G``#-X0```D0``/CA```"60``+.,```)8``#RY``` -M`KH``#[E```"[@``XN4```)K``!9Y@```N8``.#F```":P``H.<```)K``#A -MYP```E@``%SH```":P``J.@```)K```)Z0```FL``%/I```":P``F^P```)K -M``#S[````9`"``OM```!D`(`B^X```+1``#X[P```9`"`!/P```!D`(`,_`` -M``(K``"0\````J0"`)_P```!D`(`PO````*D`@#1\````9`"`,GQ```"I`(` -MU?$```&0`@#G\0```J0"`.[Q```!D`(`"_(```*D`@`3\@```9`"`#KR```" -MI`(`1O(```&0`@!8\@```J0"`%_R```!D`(`?/(```*D`@"$\@```9`"`,CR -M```"I`(`*/,```*D`@`Y\P```D$``)?S```"B0```_0```'6```/]````;`` -M`![T```"/0``;O0```*)``#<]````3```.CT```"/0``9_4```&0`@"(]0`` -M`9`"`.?U```"U0``]_4```(L``!*]@```HD``)/V```!,```G_8```(]```G -M]P```9`"`$CW```!D`(`G_<```(.``"O]P```BP``"/X```"B0``:O@```'6 -M``!V^````;```(7X```"/0``R_@```*)```H^0```0$``#?Y```"/0``7OD` -M``$;`0#!^0```J0"`,CY```!D`(`VOD```*D`@#A^0```9`"`''Z```"I`(` -M>/H```&0`@"*^@```J0"`)'Z```!D`(`(OL```+=``!9^P```@$!`&'[```" -MT0``M_L```&0`@#,^P```9`"`.C[```!D`(`#?P```&0`@!B_````N\``&K\ -M```"%```UOP```*D`@#I_````9`"``_]```"I`(`(OT```&0`@`9``$``GD` -M`&@``0`!!0``;0`!``*O`@`A`0$``08``"8!`0`"KP(`1P$!``*D`@!0`0$` -M`9`"`&,!`0`!!@``:`$!``*O`@"'`0$``04``(P!`0`"KP(`EP$!``&0`@"J -M`0$``08``*\!`0`"KP(`Q0$!``*D`@#.`0$``9`"`.$!`0`!!@``Y@$!``*O -M`@#_`0$``04```0"`0`"KP(`#P(!``&0`@`J`@$``J0"`#("`0`!D`(`10(! -M``$&``!*`@$``J\"`&D"`0`!!0``;@(!``*O`@!W`@$``9`"`(H"`0`!!@`` -MCP(!``*O`@"E`@$``J0"`*T"`0`!D`(`P`(!``$&``#%`@$``J\"`-X"`0`! -M!0``XP(!``*O`@#L`@$``9`"`/\"`0`!!@``!`,!``*O`@`M`P$``08``#(# -M`0`"KP(`3P,!``*D`@!8`P$``9`"`'`#`0`"I`(`>`,!``&0`@"+`P$``08` -M`)`#`0`"KP(`Q`,!``$%``#)`P$``J\"`-\#`0`!D`(`\@,!``$&``#W`P$` -M`J\"``T$`0`"I`(`%@0!``&0`@`I!`$``08``"X$`0`"KP(`1P0!``$%``!, -M!`$``J\"`%<$`0`!D`(`:@0!``$&``!O!`$``J\"`(4$`0`"I`(`C@0!``&0 -M`@"A!`$``08``*8$`0`"KP(`Q00!``$%``#*!`$``J\"`-4$`0`!D`(`Z`0! -M``$&``#M!`$``J\"``,%`0`"I`(`#`4!``&0`@`?!0$``08``"0%`0`"KP(` -M.@4!``$%```_!0$``J\"`$H%`0`!D`(`6`4!``&0`@!K!0$``08``'`%`0`" -MKP(`A@4!``*D`@".!0$``9`"`*$%`0`!!@``I@4!``*O`@"_!0$``04``,0% -M`0`"KP(`S04!``&0`@#@!0$``08``.4%`0`"KP(`^P4!``*D`@`#!@$``9`" -M`!8&`0`!!@``&P8!``*O`@`Z!@$``04``#\&`0`"KP(`2`8!``&0`@!;!@$` -M`08``&`&`0`"KP(`=@8!``*D`@!^!@$``9`"`)$&`0`!!@``E@8!``*O`@"L -M!@$``04``+$&`0`"KP(`N@8!``&0`@#-!@$``08``-(&`0`"KP(`_08!``*D -M`@`0!P$``9`"`",'`0`!!@``*`<!``*O`@!!!P$``04``$8'`0`"KP(`3P<! -M``&0`@!U!P$``J0"`(@'`0`!D`(`FP<!``$&``"@!P$``J\"`+D'`0`!!0`` -MO@<!``*O`@#'!P$``9`"`-H'`0`!!@``WP<!``*O`@!/"`$``J<``*P)`0`" -MIP``U@D!``*G``!5"@$``B8!`'D+`0`"I`(`H`L!``*D`@!O#`$``M<``)`, -M`0`"VP``J@P!``$#`0"X#`$``0,!`#H-`0`!D`(`9@T!``&0`@"6#0$``J0" -M`*L-`0`!D`(`\@T!``&0`@!0#@$``9`"`+D.`0`!D`(`*@\!``*D`@`\#P$` -M`9`"`%T/`0`"4P``:0\!``)F``!_#P$``J0"`)L/`0`"I`(`MP\!``*D`@#9 -M#P$``H0``.L/`0`!D`(`/!`!``*D`@!+$`$``9`"`&P0`0`"4P``>!`!``)F -M``".$`$``J0"`*H0`0`"I`(`QA`!``*D`@#H$`$``H0``/H0`0`!D`(`*A$! -M``*D`@`V$0$``A```%01`0`""P$`7Q$!``&0`@!W$0$``9`"`(H1`0`!D`(` -M7Q(!``&0`@#C$@$``HD``/T2`0`"D@``%A,!``(K``!T$P$``0$``(@3`0`" -MZ@``J1,!``*M``"U$P$``CT``.\4`0`!!0``]!0!``*O`@"J%0$``04``*\5 -M`0`"KP(`PQ4!``(=`0#D%0$``D@``,P6`0`"FP``/!<!``&4``!=%P$``L$` -M`'47`0`"?```]1<!``*;```(&`$``B4!`#H8`0`"RP``U1@!``(?`0#?&`$` -M`J```(L9`0`"'0$`Z!D!``)G``!(&@$``B$!`&X:`0`"M@``?QH!``++```. -M&P$``N(``*@;`0`"9P``(1P!``+B``"['`$``KH"`-H<`0`"N@(`#QT!``+B -M``!X'0$``KH"`,,=`0`"N@(``AX!``(Z```H'@$``D$``#0>`0`"I`(`7QX! -M``*E``!^'@$``JL``)<>`0`"%@``KAX!``*Q``#('@$``08``,T>`0`"KP(` -MZAX!``*Z`@`#'P$``08```@?`0`"KP(`)1\!``*Z`@!M'P$``KH"`+`?`0`" -M.0``TQ\!``*Z`@`P(`$``O@``%P@`0`"'0$`=2`!``)\``"Z(`$``G0```(A -M`0`!`P``<B$!``+2``""(0$``9`"`*LA`0`"B```T"$!``*(``#U(0$``H@` -M`!HB`0`"B```1R(!``*&``!T(@$``H8``*LB`0`"A@``V"(!``*&``#D(@$` -M`J0"`!LC`0`"A@``2",!``*&``!4(P$``J0"`'DC`0`"B```GB,!``*(``## -M(P$``H@``/`C`0`"A@``%20!``*(``!<)`$``J0"`,TD`0`!D`(`[B0!``&0 -M`@`$)0$``J0"`!4E`0`"M@``)B4!``*D`@!&)0$``H@``%(E`0`"I`(`=R4! -M``*(``"#)0$``J0"`+HE`0`"A@``QB4!``*D`@#K)0$``H@``/<E`0`"I`(` -M""8!``+/```9)@$``DD``$DF`0`"A@``=B8!``*&``"C)@$``H8``-`F`0`" -MA@``]28!``*(```&)P$``J0"`"8G`0`"B```,B<!``*D`@!?)P$``H8``(0G -M`0`"B```L2<!``*&``#()P$``J```.TG`0`"B```^2<!``*D`@`M*`$``H8` -M`#DH`0`"I`(`6R@!``*(``!G*`$``J0"`($I`0`"*```C2D!``(K``#K*0$` -M`9`"``HJ`0`!D`(`/"H!``&0`@!A*@$``B@``&TJ`0`"*P``>2H!``+2``#% -M*P$``G0``-$K`0`"I`(`]RL!``)T```#+`$``J0"`(HL`0`!D`(`HRP!``&0 -M`@#J+`$``J0"``LM`0`"M@``)RT!``+8```\+0$``M@``$PM`0`"I`(`<"T! -M``&0`@".+0$``9`"`*8M`0`"I`(`NRT!``$%``#`+0$``J\"`,TM`0`"B0`` -M$BX!``$!```>+@$``CT``#,N`0`!!@``."X!``*O`@!%+@$``HD``(HN`0`! -M`0``EBX!``(]``"]+@$``HD```DO`0`!`0``&"\!``(]```L+P$``HD``'@O -M`0`!`0``AR\!``(]``";+P$``HD``.`O`0`!`0``["\!``(]```&,`$``HD` -M`$LP`0`!`0``5S`!``(]``!K,`$``HD``+@P`0`!`0``Q#`!``(]``#S,`$` -M`IL``!DQ`0`"5P``?3$!``+2``##,0$``M(``-4Q`0`"9P``+#(!``(A`0!8 -M,@$``K8``'(R`0`"RP``G#(!``)G``#],@$``B$!`"DS`0`"M@``0S,!``++ -M``![,P$``F<``*8S`0`"-0``R3,!``(=`0`)-0$``B@``!4U`0`"*P``AC4! -M``*D`@#--0$``E0``.(U`0`"M@``.#8!``$%```]-@$``J\"`%@V`0`"X0`` -M$S<!``(H```?-P$``BL``#8W`0`"*```0C<!``(K``!.-P$``K8``#$X`0`" -M%@$`2S@!``(6`0!E.`$``H\``'<X`0`"MP``B3@!``+@``"A.`$``O8``+,X -M`0`"QP``Q3@!``*1``#9.`$``FH```0Y`0`"9P``93D!``(A`0"2.0$``K8` -M`*PY`0`"RP``!CH!``(U```8.@$``F<``#XZ`0`!!@``0SH!``*O`@!3.@$` -M`C4``'HZ`0`"'0$`V#L!``+I``#B.P$``0,``$,\`0`"?```W#P!``*;``#S -M/`$``B4!`#8]`0`"RP``S3T!``)G``#_/0$``M\``$4^`0`"IP``Y3X!``*Z -M`@`@/P$``CH``#@_`0`"00``1#\!``*D`@!O/P$``J4``(X_`0`"JP``KC\! -M``(6``#)/P$``K$``.H_`0`"N@(`"T`!``*Z`@`_0`$``CD``+E``0`"WP`` -MT$`!``(3``"&00$``J<```Y#`0`"(0$`)4,!``++``!50P$``C4``&A#`0`" -M?```TD,!``)G```'1`$``M\``$]$`0`"WP``D40!``+?``"L1`$``J<``.]$ -M`0`"&0$`148!``*T``!K1@$``F<``(E&`0`".@``ET8!``)!``"C1@$``J0" -M`,5&`0`"%@``W$8!``*Q``#Y1@$``KH"`!9'`0`"N@(`0D<!``(Y``!B1P$` -M`HH``,='`0`"/@``\D<!``+?```W2`$``M\``'9(`0`"WP``B4@!``(9`0"= -M2`$``D@``-5(`0`"&0$`2$H!``)\``![2P$``B$!`(U+`0`"RP``UDL!``(= -M`0`?3`$``M\``$9,`0`"N0``HDP!``(5``"J3`$``90``,M,`0`"P0``ZDP! -M``*R``#V3`$``A4``"Y-`0`"V```/DT!``*D`@"%30$``CD``)I-`0`"I@`` -MQTT!``+2``#I30$``GT"`/A-`0`"]```#$X!``)G```J3@$``A8``$%.`0`" -ML0``7DX!``*Z`@![3@$``KH"`)).`0`".0``LTX!``)G``##3@$``GP``/Q. -M`0`"M@``P4\!``(H``#-3P$``BL```U0`0`!!0``$E`!``*O`@`S4`$``CD` -M`$=0`0`"'0$`85`!``*D`@!M4`$``BL``(U0`0`"=```FU`!``*D`@"G4`$` -M`BL``+=0`0`"<0``&5$!``)G``!V40$``K8``.92`0`"A@``0U,!``(H``!3 -M4P$``BL``&A3`0`"T@``C5,!``$#``"]4P$``9`"``-4`0`!D`(`)E0!``&0 -M`@!\5`$``9`"`)M4`0`!D`(`\%0!``&0`@`K50$``B@``#M5`0`"*P``2U4! -M``(=`0"%50$``J0"`+-5`0`"PP(`WU4!``&0`@#^50$``9`"``-6`0`"PP(` -M<58!``)G``#'5@$``A8``.Q6`0`"L0``&U<!``*Z`@"P5P$``KH"`-=7`0`" -M.0``_5<!``&0`@`<6`$``9`"`&-8`0`"9P``HE@!``)\``#+6`$``D$``-=8 -M`0`"I`(`#ED!``&0`@`M60$``9`"`!!:`0`!D`(`+5H!``&0`@"S6@$``HL` -M`-):`0`"!@$`!UL!``&0`@`C6P$``9`"`%%;`0`!D`(`;5L!``&0`@"W6P$` -M`9`"`-9;`0`!D`(`"%P!``&0`@`U7`$``B@``$5<`0`"*P``45P!``+2``!D -M7`$``D$``'!<`0`"I`(`F5T!``(H``"E70$``BL``.E=`0`"*```]5T!``(K -M```)7@$``LL``!U?`0`"A`(`<5\!``$&``!V7P$``J\"`(M?`0`"*```EU\! -M``(K``#`7P$``F<``#=@`0`"9P``IF`!``++``!@80$``J0"`-YA`0`"I`(` -M,F(!``*D`@!18@$``B@``%UB`0`"*P``<6(!``+[``"-8P$``J0"`-)C`0`" -MI`(`\6,!``(H``#]8P$``BL``!%D`0`"^P``4&0!``*D`@"@9`$``J0"`/ED -M`0`"I`(`*F4!``*8``!190$``B@``%UE`0`"*P``:64!``++``"P90$``9`" -M`)9H`0`"&```MF@!``(8``#A:`$``A@``)9I`0`"&```MFD!``(8``#C:0$` -M`A@``#-J`0`"BP``>6H!``+5``"):@$``BP``.!J`0`"Q0``+FL!``(A``!K -M:P$``L0``+AK`0`"I`(`VG`!``$)``#J<`$``0D``/IP`0`"0```4'$!``)A -M```V<@$``I4``&-R`0`"\0``=G(!``*5``!+<P$``F<``*5S`0`"U```RG,! -M``*$`@#S<P$``B\``'YT`0`"1@``O70!``+$```:=0$``K4``/%U`0`"I`(` -MXW8!``$)``#T=@$``0D```1W`0`"0```.W<!``$)``!,=P$``0D``%QW`0`" -M0```XW<!``&0`@`R>`$``9`"`%-X`0`")P``:W@!``(G``"#>`$``B<``)MX -M`0`")P``LW@!``(G``#+>`$``B<``.-X`0`")P``^W@!``(G```3>0$``B<` -M`"MY`0`")P``0WD!``(G``!;>0$``B<``'-Y`0`")P``BWD!``(G``"C>0$` -M`B<``+MY`0`")P``TWD!``(G``#K>0$``B<```-Z`0`")P``&WH!``(G```S -M>@$``B<``$MZ`0`")P``8WH!``(G``![>@$``B<``)-Z`0`")P``JWH!``(G -M```4>P$``9`"`#1[`0`!D`(`\7L!``(G```0?`$``B<``"]\`0`")P``3GP! -M``(G``!M?`$``B<``,M\`0`"B0``W7P!``(5`0!N?0$``H0"`*=]`0`"A`(` -MKGT!``$:`0#!?0$``NH``,U]`0`"/0``%'X!``*)```F?@$``A4!`']^`0`! -M&@$`DGX!``+J``">?@$``CT``/I^`0`"O0``"'\!``)!```4?P$``J0"`$Y_ -M`0`".```7'\!``)!``!H?P$``J0"`))_`0`"O0``I'\!``)!``"P?P$``J0" -M`/U_`0`".```EX`!``*```"C@`$``BL``%*#`0`")@``:(,!``+M``!6A`$` -M`H<``&N$`0`!7@``P(0!``(F``#6A`$``NT``'J%`0`"AP``P84!``*'``"$ -MA@$``JH``)V&`0`",P``OH8!``)]```CAP$``0,``(2*`0`"%P``"HL!``(7 -M```FBP$``H0"`!",`0`"W@``?(T!``&0`@"3C0$``9`"`*.-`0`"I`(`[HT! -M``$'```VC@$``9`"`&F.`0`!!P``BXX!``$'``#3C@$``9`"`$B/`0`!!P`` -MD(\!``&0`@##CP$``0<``.6/`0`!!P``+9`!``&0`@"6D`$``0<``*>0`0`! -M!P``.I$!``&0`@#/D0$``9`"`&*2`0`!D`(`C)(!``*D`@!8DP$``B0``!>6 -M`0`"YP``CY<!``$#``">EP$``0<``*B7`0`!!P``LY<!``$'``"]EP$``0<` -M`!:;`0`!!P``&YL!``)U`@"AFP$``D```+&;`0`"I`(`S9L!``("`0#XFP$` -M`08``/V;`0`"KP(`19P!``*9`@!?G`$``ID"`'F<`0`"F0(`\9P!``(N```2 -MG0$``J,"`"^=`0`"HP(`4)T!``*C`@!MG0$``J,"`(Z=`0`"HP(`JYT!``*C -M`@#,G0$``J,"`.F=`0`"HP(`)IX!``*C`@`]G@$``J,"`&N>`0`"HP(`B)X! -M``*C`@"IG@$``J,"`,:>`0`"HP(`YYX!``*C`@`$GP$``J,"`"6?`0`"HP(` -M0I\!``*C`@!CGP$``J,"`("?`0`"HP(`H9\!``*C`@"^GP$``J,"`-^?`0`" -MHP(`_)\!``*C`@`=H`$``J,"`#J@`0`"HP(`6Z`!``*C`@!XH`$``J,"`)F@ -M`0`"HP(`MJ`!``*C`@#7H`$``J,"`/2@`0`"HP(`%:$!``*C`@`RH0$``J," -M`%.A`0`"HP(`<*$!``*C`@"1H0$``J,"`*ZA`0`"HP(`XZ$!``+2`@`4H@$` -M`M("`$FB`0`"T@(`>J(!``+2`@"OH@$``M("`."B`0`"T@(`%:,!``+2`@!& -MHP$``M("`'NC`0`"T@(`K*,!``+2`@#AHP$``M("`!*D`0`"T@(`1Z0!``+2 -M`@!XI`$``M("`*VD`0`"T@(`WJ0!``+2`@`1I0$``LD``".E`0`"R0``3:4! -M``(J``!5I0$``I,``&.E`0`"DP``:Z4!``(B`0!WI0$``J0"`'^E`0`"P@`` -MCZ4!``+)``"?I0$``LD``.&E`0`"T@``-*8!``+2``!<I@$``@@!`&^F`0`" -M"`$`C*8!``((`0"?I@$``@@!`+NF`0`"00``#*<!``*)``!JIP$``0$``'JG -M`0`"/0``MZ<!``(Z``#+IP$``J0"`->G`0`"00``)J@!``(K``"4J`$``HD` -M`-VH`0`!`0``Z:@!``(]```FJ0$``CH``#JI`0`"I`(`0JD!``)!``"`J0$` -M`BL``.^I`0`"B0``9:H!``$!``!UJ@$``CT``+*J`0`".@``QJH!``*D`@#2 -MJ@$``D$``!2K`0`"D@``BZL!``$!``";JP$``NH``,"K`0`"K0``U*L!``(] -M```1K`$``CH``"6L`0`"I`(`,:P!``)!``!IK`$``B@``(>L`0`"*P``DZP! -M``*)``"OK`$``B@``+FM`0`!`0``S:T!``+J``#VK0$``JT```JN`0`"/0`` -M1ZX!``(Z``!;K@$``J0"`&>N`0`"00``J:X!``(H``#%K@$``BL``%6O`0`" -MB0``?:\!``$&``""KP$``J\"`)"O`0`"D@``K*\!``(K``#IKP$``KH"``BP -M`0`".@``6;`!``*$`@`]L0$``E\``'VQ`0`!`0``D;$!``+J``"ZL0$``JT` -M`-6Q`0`"/0``%[(!``(Z```KL@$``J0"`#>R`0`"00``@[(!``*$`@"WL@$` -M`B@``-"R`0`"@@``Y+(!``(K```,LP$``KH"`-"S`0`"*```X;,!``*"``#M -MLP$``BL``+*T`0`".@```+4!``(A`0!(M0$``M(``%ZU`0`"M@``?;4!``++ -M``"WM0$``N0``,&V`0`"R```X[8!``(1`0`#MP$``KP"`#>W`0`"*@``/[<! -M``)=``!'MP$``ET``$^W`0`"DP``6[<!``*3``!GMP$``B(!`'.W`0`"I`(` -M>[<!``+"``"/MP$``6```*JW`0`"G0(`NK<!``(=`0#*MP$``AT!`.RW`0`" -M%P$`^K<!``(7`0`9N`$``0D``":X`0`!"0``0[@!``$'``!-N`$``0<``&ZX -M`0`!6P``?+@!``$'``""N`$``5L``(BX`0`!!P``CK@!``%;``"4N`$``0<` -M`)JX`0`!6P``H;@!``%;``"WN`$``5L``+ZX`0`!6P``S;@!``%;``#4N`$` -M`5L``-VX`0`!6P``Y+@!``%;``#SN`$``5L```"Y`0`!!P``&KD!``%;```H -MN0$``5L``#>Y`0`!6P``/KD!``%;``!'N0$``5L``$ZY`0`!6P``9KD!``$' -M``!XN0$``0,``+6Y`0`!`P``V;D!``$'``#JN0$``0<``!:Z`0`!6P``)+H! -M``%;``!.N@$``5L``'2Z`0`!6P``@;H!``%;``#3N@$``GX"`.>Z`0`!`P`` -M7[L!``*K``"%NP$``J4``(V[`0`"Y```LKL!``*Q``#,NP$``K$```:\`0`! -M`P``0;P!``+C``"%O`$``F0``+V\`0`"N@(`V+P!``(Z``#JO`$``J0"`/*\ -M`0`"00``+KT!``*Z`@!)O0$``J0``%N]`0`"_0``-KX!``$%```[O@$``J\" -M`&Z^`0`"?0(`?[X!``$!``"4O@$``IT"``'!`0`"JP``*L$!``*E``!8P0$` -M`F<``,3!`0`"9P``&<(!``*Z`@!8P@$``F<``+K"`0`"N@(`\\,!``+C``!) -MQ`$``L@``&3$`0`"L0``F<0!``)!``"]Q`$``GT"`-'$`0`!8```YL0!``*= -M`@!%Q@$``N0``*;&`0`!`P``VL8!``(\``!#QP$``CP``*S'`0`"/```%<@! -M``(\``!?R0$``0,``*+)`0`"/```$<H!``(\``!VR@$``CP``-O*`0`"/``` -M0<L!``(\``"FRP$``CP``/#+`0`"FP(`),P!``(\``!NS`$``IL"`*+,`0`" -M/```[,P!``*;`@`@S0$``CP``&K-`0`"FP(`GLT!``(\``#TS0$``HL``#+. -M`0`"BP``<,X!``*+``"NS@$``HL``.S.`0`"BP``)\\!``*+``#0SP$``0D` -M`-O/`0`!"0``V=$!``*,`@`"T@$``HP"`$32`0`!`P``6=(!``$'``!ET@$` -M`0<``''2`0`!!P``>M(!``$'``"`T@$``0<``)W2`0`!!P``W=(!``+&`@`, -MTP$``K\"`$'3`0`!6P``3M,!``%;``!YTP$``5L``);3`0`!6P``G],!``%; -M``"FTP$``5L``,+3`0`!6P``S-,!``%;```DU0$``?\``#G5`0`"Y```H]8! -M``*5``#1U@$``O$``.;6`0`"E0``9=H!``*5``"3V@$``O$``*C:`0`"E0`` -M5=X!``*5``"#W@$``O$``)C>`0`"E0``%>(!``*5``!#X@$``O$``%CB`0`" -ME0``H.0!``*)``!OY@$``H0"`,/G`0`!`0``,>@!``)?``!!Z`$``NH``&'H -M`0`"K0``@>@!``+J``"7Z`$``I(``,SH`0`"K0``X>@!``)Z```6Z0$``JT` -M`%7I`0`"A`(`Q^D!``*$`@`!Z@$``CT``!/J`0`"*P``E>P!``+&`@"\[`$` -M`L8"`.OM`0`"(0$`.^X!``)G``"-[@$``K8``+[N`0`"T@``_.X!``*$```A -M[P$``LL``$SO`0`"9P``I^\!``+B``!R\`$``@8"`(GP`0`"1`(`G?`!``)# -M`@`$\0$``0$``!OQ`0`"Q`$`/?$!``(L`0!)\0$``D0!`%SQ`0`"I`(`9_$! -M``)6`0"'\0$``BX!`)[Q`0`"=@$`JO$!``)#`@#'\0$``D,"`.OQ`0`">0$` -M"/(!``+(`0!;\@$``L0!`'GR`0`"+`$`F/4!``*L`0`'^0$``0,``*_Y`0`! -M!0``M/D!``*O`@##^0$``08``,CY`0`"KP(`'/H!``*$`@#L^@$``9`"`!3[ -M`0`!D`(`=/L!``&0`@#]^P$``9`"`#C\`0`!D`(`HOP!``*D`@#<_`$``J0" -M`![]`0`"I`(`6/T!``*D`@"\_0$``E<!`,C]`0`"I`(`U/T!``(!`@!(_@$` -M`9`"`%;^`0`!D`(`9_X!``*D`@!Z_@$``9`"`(C^`0`!D`(`F_X!``&0`@"D -M_@$``9`"`,?^`0`"I`(`TOX!``&0`@#S_@$``J0"`/[^`0`!D`(`'_\!``&0 -M`@`Z_P$``9`"`(/_`0`!D`(`FO\!``&0`@"V_P$``9`"`,O_`0`!D`(`Z?\! -M``&0`@#T_P$``9`"`"$``@`"I`(`+P`"``&0`@!6``(``J0"`&0``@`!D`(` -ME@("``&0`@#K`@(``M(!`!L#`@`"T@$`CP,"``(4`@#U`P(``GT"``@$`@`" -MTP$`+`0"``+*`0#,!`(``A0"`/,$`@`"^0$`"@4"``*^`0`F!0(``08``"L% -M`@`"KP(`2`4"``*Z`@!E!0(``KH"`(`%`@`"6P$`JP4"``&0`@!^!@(``4(! -M`)\&`@`"X`$`?`<"``)!`0"(!P(``D,"`'@(`@`"P`$`M`L"``)"`@`P#`(` -M`F$!`',,`@`"P`$`%@T"``$#```^#0(``A,"`((-`@`"$P(`Q0T"``(3`@`$ -M#@(``A,"`$4.`@`"HP$`E0X"``(6`@`E#P(``C@!`%\/`@`"8@$`BP\"``*D -M`@#2$0(``BP"`.<1`@`"]`$`LQ("``)-`0`V$P(``NH!`%P3`@`"30$`X10" -M``)!`@#]%`(``M0!`',5`@`"00(`I!4"``+4`0!%%P(``A4"`"P8`@`"A`(` -M1A@"``$#``#5&`(``BL!`.<8`@`"*P$`A1D"``)!`@"V&0(``M0!`#(:`@`" -MB0$`;1H"``)U`0"1&@(``HD!`*<:`@`"`@(`RQH"``*)`0`?&P(``GT!`(0; -M`@`"R@$`E!L"``)(`0`D'`(``@P"`*`<`@`"#`(`KAP"``(0`@#:'`(``@P" -M`/,<`@`"UP$`&QT"``)X`0"_'0(``I0!`.0=`@`"UP$`"AX"``*(`0`W'@(` -M`@P"`#\>`@`"B`$`9!X"``+7`0#&'@(``B\!`!`?`@`"\0$`-1\"``+*`0!O -M'P(``KH"`(\?`@`"+P$`M!\"``)6`0#`'P(``J0"``,@`@`"NP$`#2`"``(# -M`@!)(`(``B\!`%X@`@`"FP$`9B`"``*(`0#=(`(``9`"``,A`@`!D`(`-"$" -M``&0`@![(0(``04``(`A`@`"KP(`T2$"``*_`0!&(@(``K\!`%PB`@`"/`(` -M:"("``*4`0`:(P(``D,!`#DC`@`"UP$`7R,"``+*`0#Q(P(``D,!``HD`@`" -MUP$`4B0"``(W`@!M)0(``9`"`(8E`@`!D`(`GB4"``&0`@#Q)0(``9`"``TF -M`@`!D`(`B28"``+W`0#D)@(``9`"```G`@`!D`(`'"<"``&0`@`H)P(``H`! -M``<H`@`"3@$`/"@"``*$`@`3*0(``H0"`(XI`@`"A`(`MBD"``&0`@#F*0(` -M`9`"`"(J`@`!D`(``2L"``*$`@`Q+`(``H0"`+HL`@`"A`(`S2P"``$#``!2 -M+0(``J0"`)`M`@`!D`(`L"T"``&0`@#4+0(``08``-DM`@`"KP(`Y2T"``+= -M`0!2+@(``9`"`,PN`@`"W0$`W2X"``+=`0"D+P(``D,!`+DO`@`"UP$`6S`" -M``*P`0"O,0(``LD!`,,Q`@`"%`(`)C("``*"`0"',@(``D,!`),R`@`"L`$` -MJ#("``+7`0#Z,@(``LH!`',S`@`",0$`IC,"``+*`0`\-`(``LH!`'$T`@`" -M%`(`@30"``*(`0#$-`(``9`"`.<T`@`!D`(`%#4"``&0`@`H-0(``H\!`(@U -M`@`!D`(`[S4"``&0`@`--@(``9`"`!\V`@`":`$`238"``&0`@!>-@(``9`" -M`+0V`@`!D`(`S38"``&0`@#V-@(``GT"`!8W`@`"Y@$`53<"``+*`0"+-P(` -M`KH"`*<W`@`"+P$`U3<"``*.`0#A-P(``J0"``@X`@`!`0``.3@"``*=`@!: -M.`(``9`"`&HX`@`!D`(`B3@"``&0`@"9.`(``9`"`,$X`@`!D`(`ZS@"``&0 -M`@`6.0(``9`"`"\Y`@`!D`(`6SD"``&0`@"%.0(``9`"`-8Y`@`!D`(`\CD" -M``&0`@`/.@(``9`"`"LZ`@`!D`(`:3H"``)]`@"K.@(``KH"`,,Z`@`"+P$` -MU#H"``)6`0#@.@(``J0"``,[`@`!`P(`&#L"``*=`@`Y.P(``9`"`%<[`@`! -MD`(`@CL"``&0`@"@.P(``9`"`.H[`@`"?0(`!CP"``+*`0`V/`(``KH"`%H\ -M`@`!QP$`<SP"``*=`@"3/`(``9`"`+`\`@`!D`(`S#P"``*D`@#</`(``9`" -M`/<\`@`!D`(`%#T"``&0`@`P/0(``J0"`$`]`@`!D`(`9#T"``&0`@`>/@(` -M`9`"`$8^`@`"I`(`<3X"``&0`@"8/@(``J0"`,$^`@`!D`(`ZCX"``*D`@`V -M/P(``IT!`%0_`@`"X0$`9#\"``*O`0"7/P(``JL!`-$_`@`"C`$``T`"``*O -M`0##0`(``J0"`.E``@`!D`(`!T$"``*D`@`G00(``9`"`%!!`@`"I`(`=D$" -M``&0`@"800(``J0"`+1!`@`!D`(`V$$"``+*`0!=0@(``B\!`*%"`@`"+P$` -ML4("``*O`0#X0@(``LH!`!Y#`@`"R@$`04,"``)]`@!90P(``E8!`&5#`@`" -MI`(`%D0"``(4`@`Y1`(``OD!`%!$`@`"O@$`:D0"``$&``!O1`(``J\"`(Q$ -M`@`"N@(`J40"``*Z`@#,1`(``EL!`/5$`@`"90$`*44"``+*`0!*10(``E8! -M`%9%`@`"I`(`AT4"``+Y`0">10(``KX!`+A%`@`!!@``O44"``*O`@#:10(` -M`KH"`/=%`@`"N@(`$D8"``);`0`O1@(``JL!`+1&`@`!D`(`VT8"``*D`@#W -M1@(``9`"`!='`@`!D`(`.D<"``*D`@!61P(``9`"`-Q'`@`"Y@$`Z$<"``*R -M`0`M2`(``@X"`#Y(`@`"M@$`>T@"``*D`@"32`(``9`"`*Y(`@`!D`(`TD@" -M``*O`0#:2`(``HT!``5)`@`"#P(`CDD"``+'`0"D20(``LH!`#%*`@`"+@(` -M8TH"``*[`0"<2@(``AH"`+M*`@`"N@(`VTH"``*Z`@`,2P(``J0"`"-+`@`! -MD`(`/$L"``&0`@!<2P(``J\!`&1+`@`"C0$`K4L"``*=`0#G2P(``LH!`&), -M`@`"#P(`=$P"``)N`0#E3`(``9`"``9-`@`!D`(`(TT"``(O`@`T30(``K8! -M`)M-`@`"\`$`N$T"``+7`0#:30(``H@!`/]-`@`"#`(`!TX"``*(`0!*3@(` -M`M<!`)%.`@`"+P$`IDX"``+*`0#63@(``KH"`.Y.`@`"+P$`_$X"``)6`0`( -M3P(``J0"`"E/`@`"`P(`54\"``+7`0"'3P(``B\!`*1/`@`"R@$`O$\"``+Y -M`0#33P(``KX!`/!/`@`"N@(`#5`"``*Z`@`@4`(``EL!`#E0`@`"TP$`3E`" -M``&0`@";4`(``J\!`*=0`@`"JP$`,%$"``&0`@!340(``LD!`&=1`@`"%`(` -MCE$"``+)`0"640(``ML!`+51`@`!`P``U%$"``)S`0#X40(``G,!`!Q2`@`" -M+P$`2U("``+Q`0!L4@(``D\!`)92`@`"+P$`P5("``+Q`0#B4@(``B\!`/Y2 -M`@`"3P$`(5,"``(O`0`^4P(``B\!`'13`@`"5@$`@%,"``*D`@#L4P(``C(! -M``M4`@`"_0$`)50"``+Y`0`\5`(``KX!`%94`@`!!@``6U0"``*O`@!X5`(` -M`KH"`)54`@`"N@(`J%0"``);`0#45`(``LH!`!!5`@`"P@$`6%4"``+:`0!V -M50(``LH!`!M6`@`"CP$`(%<"``)#`0!55P(``B<"`'!8`@`"A`(`D%@"``&0 -M`@"\6`(``9`"`/A8`@`!D`(`)5D"``$%```J60(``J\"`$59`@`".P$`DED" -M``&0`@"S60(``9`"`-!9`@`!D`(`35H"``&0`@!Z6@(``08``']:`@`"KP(` -MK%H"``*``0#`6@(``9`"`)-;`@`"B`$`LUL"``+C`0`X7`(``BD"`%9<`@`" -MD`$`@EP"``*P`@"N7`(``K`"`-I<`@`"L`(``UT"``*P`@`L70(``K`"`&!= -M`@`"L`(`A5T"``*P`@"K70(``K`"`-==`@`"L`(`_%T"``*P`@`H7@(``K`" -M`%1>`@`"L`(`?%X"``*P`@"D7@(``K`"`,Q>`@`"L`(`]%X"``*P`@`;7P(` -M`K`"`$1?`@`"L`(`:5\"``*P`@":7P(``H("`,=?`@`"@@(`^U\"``*"`@`L -M8`(``H("`%U@`@`"@@(`CF`"``*"`@"[8`(``H("`.]@`@`"@@(`)6$"``+* -M`0`Z80(``@8"`+-A`@`!`0``QF$"``+$`0#680(``D0!`&5B`@`"R@$`H6(" -M``*Z`@"]8@(``B\!`,MB`@`"5@$`UV("``*D`@`'8P(``G<!`+AD`@`"*0(` -M3&4"``*R`@""90(``K("`+]E`@`"L@(`_&4"``*R`@`V9@(``K("`%)F`@`" -ML@(`<&8"``*R`@#:9@(``K("`#5G`@`"L@(`DF<"``*R`@#;9P(``K("`#!H -M`@`"L@(`F&@"``*R`@#A:`(``K("`!9I`@`"V`$`)6D"``*R`@!3:0(``J4! -M`&)I`@`"L@(`D&D"``*E`0"?:0(``K("`,UI`@`"I0$`W&D"``*R`@`*:@(` -M`J4!`!EJ`@`"L@(`?6H"``+D`0"2;0(``KT"`+5M`@`"O0(`V&T"``*]`@#[ -M;0(``KT"`!=N`@`"O0(`,VX"``*]`@!N;@(``LH!`--N`@`"O0(`#6\"``+* -M`0![;P(``KT"`+YO`@`"R@$`,G`"``)&`0!]<`(``9`"`*)P`@`!D`(`OG`" -M``*V`0`!<0(``B\!`!1Q`@`"5@$`('$"``*D`@!"<0(``OD!`%]Q`@`"N@(` -M?'$"``*Z`@"3<0(``EL!`*)Q`@`!D`(`_W$"``+2`0`O<@(``KH"`(AR`@`" -M/`(`K'("``+*`0!7<P(``H\!`%=T`@`"UP$`@W0"``)#`0"?=`(``O<!`-ET -M`@`"-P(`O'@"``+0`0`<>0(``H0"`#!Y`@`"*`(`JGD"``*$`@#Y>0(``@8" -M``MZ`@`"1`(`'7H"``)#`@!&>@(``H0"`(AZ`@`!IP$`W7H"``+$`0#^>@(` -M`BP!``I[`@`"1`$`67L"``(&`@!K>P(``D0"`'U[`@`"0P(`SGL"``&G`0`C -M?`(``L0!`$1\`@`"+`$`4'P"``)$`0"]?`(``@8"`--\`@`"1`(`Z7P"``)# -M`@`.?0(``H0"`$5]`@`!-@(`;WT"``+$`0"0?0(``BP!`*!]`@`"1`$``GX" -M``+0`0`M?@(``@@"`&E^`@`"!@(`>WX"``)$`@"-?@(``D,"`--^`@`!-@(` -M_WX"``+$`0`@?P(``BP!`"Q_`@`"1`$`S7\"``)M`0`,@`(``FT!`%R``@`" -MM`$`<(`"``)3`0"B@`(``ET!`,*``@`"4P$`]H`"``)3`0#+@0(``GP!`!Z" -M`@`"M0$`5X("``)=`0"8@@(``@8"`*J"`@`"1`(`O(("``)#`@`"@P(``0H" -M`"J#`@`"Q`$`2X,"``(L`0!7@P(``D0!`#&$`@`"+@$`/80"``)#`@!OA`(` -M`H0"`+&$`@`"+@$`O80"``)#`@!3A0(``F<!`&B%`@`"+@$`=(4"``)#`@"/ -MA0(``GT"`*.%`@`!50$`N(4"``*=`@`GA@(``O(!`!2'`@`"[0$`5(<"``+M -M`0".AP(``ET!`,J(`@`"A`$`WX@"``)R`0#TB`(``JH!``F)`@`"9P$`(XD" -M``)]`@`WB0(``54!`%&)`@`"G0(`A(D"``+*`0#XB0(``BX"`!Z*`@`"NP$` -M18H"``(:`@"4B@(``LH!`-**`@`"70$`!XL"``+"`0`QBP(``BX!`$6+`@`" -M0P(`@8L"``)=`0!+C`(``9`"`.:0`@`"-0(`[Y$"``$#``"(D@(``9`"`+B2 -M`@`!D`(`XY("``&0`@`<DP(``9`"`&^3`@`!D`(`G9,"``&0`@##DP(``9`" -M`/63`@`!D`(`MI0"``$#``#+E`(``0,``-Z4`@`!`P``[)0"``$#``#_E`(` -M`OX!``J5`@`!`P``CI4"``+*`0#.E0(``LH!`/Z5`@`"R@$`3I8"``+*`0!^ -ME@(``LH!``27`@`"R@$`8)@"``)#`0#9F0(``LD!`"B:`@`"ZP$`:)H"``+K -M`0!1FP(``BX!`&*;`@`"B@$`:YP"``)$`0"2G`(``F8!`*&<`@`"-0(`MIP" -M``+7`0`AG0(``O`!`(>=`@`"E`$`6)X"``)#`@#*G@(``G8!`-B>`@`"0P(` -M%I\"``+*`0`@GP(``FD!`"B?`@`"2`$`7)\"``(&`@!JGP(``D0"`(.?`@`" -M0P(`P9\"``$S`0#-GP(``D0!`!"@`@`"!@(`1Z`"``$S`0!3H`(``D0!`)&@ -M`@`"!@(`HZ`"``)$`@"UH`(``D,"`/R@`@`!`0``$*$"``+$`0`QH0(``BP! -M`#VA`@`"1`$`?:$"``(&`@"XH0(``9P!`,2A`@`"1`$`UJ$"``*D`@#HH0(` -M`J0"`,VB`@`"+@$`WJ("``**`0#JH@(``D,"`".C`@`"#0(`0:,"``(N`0!2 -MHP(``HH!`%ZC`@`"0P(`7*0"``*D`@!HI`(``D,"`)BD`@`"#0(`J*0"``*D -M`@"TI`(``D,"`.RD`@`"!@(`+Z4"``(3`@`_I0(``D,"`%.E`@`!,P$`7Z4" -M``)$`0"@I0(``@8"`+JE`@`"1`(`TZ4"``)#`@`MI@(``3,!`$"F`@`"Q`$` -M7J8"``(L`0!JI@(``D0!`+FF`@`"!@(`U*8"``)$`@#MI@(``D,"`$.G`@`! -M,P$`5Z<"``+$`0!YIP(``BP!`(6G`@`"1`$`P*<"``(&`@#:IP(``D0"`/.G -M`@`"0P(`1J@"``$S`0!>J`(``L0!`("H`@`"+`$`C*@"``)$`0#0J`(``@8" -M`.JH`@`"1`(``ZD"``)#`@!.J0(``3,!`&*I`@`"Q`$`A*D"``(L`0"0J0(` -M`D0!`.^I`@`"!@(`I:H"``$!``"XJ@(``L0!`,2J`@`"1`$`\:P"``)S`0`. -MK0(``G8!`%RM`@`"R@$`+ZX"``(,`@"3K@(``@8"`+2N`@`"_P$`QJX"``)# -M`@`:KP(``5P!`"VO`@`"Q`$`.:\"``)$`0"*KP(``@8"`)RO`@`"_P$`\:\" -M``%<`0`$L`(``L0!`!"P`@`"1`$`'+`"``*D`@!AL`(``@8"`&^P`@`"_P$` -MNK`"``%<`0#-L`(``L0!`-FP`@`"1`$`&;$"``(&`@`GL0(``O\!`&VQ`@`! -M7`$`@+$"``+$`0",L0(``D0!`,&Q`@`"HP$`T;$"``)``@"]L@(``J,!`,VR -M`@`"0`(`-;,"``)*`0"TLP(``K,!`!VT`@`"-`(`3;0"``*C`0!=M`(``D`" -M`,FT`@`"$@(`*+4"``(E`@""M0(``D,!`**U`@`"\`$`N+4"``(E`@`!M@(` -M`D,!`!>V`@`")0(`0+8"``)]`@!SM@(``GT"`,6V`@`"GP$`#;<"``)#`0`G -MMP(``I0!`#.W`@`"/`(`Y+<"``+*`0#VMP(``MH!``VX`@`!.P$`(K@"``*= -M`@">N`(``LH!`+"X`@`"/`(`R;@"``$P`@#DN`(``IT"`)&Y`@`"0P$`G;D" -M``*P`0"IN0(``@P"`$^Z`@`!.P$`9+H"``*=`@#HN@(``3`"``.[`@`"G0(` -MA+P"``+*`0#IO`(``D$!`/V\`@`"0P(`1[T"``+Q`0!ZO0(``KL!`*6]`@`" -M1P$`Q;T"``+*`0!$O@(``BX"`%^^`@`"00$`<[X"``)#`@#;O@(``B\!``2_ -M`@`"5@$`$+\"``*D`@`[OP(``C(!`%J_`@`"_0$`A[\"``+Y`0">OP(``KX! -M`+B_`@`!!@``O;\"``*O`@#:OP(``KH"`/>_`@`"N@(`,L`"``);`0!4P`(` -M`LH!`(;``@`"P@$`Q\`"``(O`0#XP`(``E8!``3!`@`"I`(`+\$"``(R`0!. -MP0(``OT!`&O!`@`"^0$`AL$"``*^`0"@P0(``08``*7!`@`"KP(`QL$"``*Z -M`@#?P0(``08``.3!`@`"KP(`!<("``*Z`@",P@(``KH"`.S"`@`"R@$`*L," -M``*Z`@!,PP(``EL!`)##`@`"!@(`HL,"``)$`@"[PP(``D,"`"G$`@`!,P$` -M/,0"``+$`0!:Q`(``BP!`&;$`@`"1`$`D\0"``*C`0"CQ`(``D`"`'[%`@`" -M)0(`M\4"``)``@`.Q@(``LH!`!G(`@`"A`(`W,D"``+R`0`4R@(``AP"`)_* -M`@`!`0``S<H"``)Z`0"IRP(``0$``.S+`@`">@$`M<P"``$!``#[S`(``GH! -M`&7-`@`!`0``H\T"``)Z`0#US0(``0$``#/.`@`">@$`#,\"``(=`@"%SP(` -M`C0!`(_0`@`"WP$`(]$"``*X`0"JT0(``O(!`-W1`@`"'@(`"-("``+#`0`\ -MTP(``AP"``+5`@`"SP$`3M4"``+?`0#RU0(``K@!`&G6`@`"7P$`\-8"``*X -M`0"PUP(``K@!`/'7`@`"'`(`;-@"``*X`0"XV`(``K@!`!G9`@`"N`$`8]D" -M``*X`0"KW`(``K@!``/=`@`!D`(`&]T"``&0`@";W@(``MP!``C@`@`!D`(` -M(^`"``&0`@!#X`(``D,"`*#@`@`"I`(`K^`"``&0`@#2X`(``J0"`.'@`@`! -MD`(`V>$"``*D`@#EX0(``9`"`/?A`@`"I`(`_N$"``&0`@`;X@(``J0"`"/B -M`@`!D`(`2N("``*D`@!6X@(``9`"`&CB`@`"I`(`;^("``&0`@",X@(``J0" -M`)3B`@`!D`(`V.("``*D`@`XXP(``J0"`$GC`@`"5@$`I^,"``(&`@`3Y`(` -M`3H!`!_D`@`!J`$`+N0"``)$`0!^Y`(``@8"`.SD`@`!40$`^.0"``)$`0!W -MY0(``9`"`)CE`@`!D`(`]^4"``+B`0`'Y@(``DP!`%KF`@`"!@(`H^8"``%1 -M`0"OY@(``D0!`#?G`@`!D`(`6.<"``&0`@"OYP(``BH!`+_G`@`"3`$`,^@" -M``(&`@!ZZ`(``3H!`(;H`@`!J`$`E>@"``)$`0#;Z`(``@8"`#CI`@`!`0`` -M1^D"``)$`0!NZ0(``5X!`-'I`@`"I`(`V.D"``&0`@#JZ0(``J0"`/'I`@`! -MD`(`@>H"``*D`@"(Z@(``9`"`)KJ`@`"I`(`H>H"``&0`@`RZP(``CD"`&GK -M`@`"(`(`<>L"``+<`0#'ZP(``9`"`-SK`@`!D`(`^.L"``&0`@`=[`(``9`" -M`'+L`@`""0(`>NP"``(M`0#F[`(``J0"`/GL`@`!D`(`'^T"``*D`@`R[0(` -M`9`"`"GP`@`"(0(`>/`"``$%``!]\`(``J\"`#'Q`@`!!@``-O$"``*O`@!7 -M\0(``J0"`&#Q`@`!D`(`<_$"``$&``!X\0(``J\"`)?Q`@`!!0``G/$"``*O -M`@"G\0(``9`"`+KQ`@`!!@``O_$"``*O`@#5\0(``J0"`-[Q`@`!D`(`\?$" -M``$&``#V\0(``J\"``_R`@`!!0``%/("``*O`@`?\@(``9`"`#KR`@`"I`(` -M0O("``&0`@!5\@(``08``%KR`@`"KP(`>?("``$%``!^\@(``J\"`(?R`@`! -MD`(`FO("``$&``"?\@(``J\"`+7R`@`"I`(`O?("``&0`@#0\@(``08``-7R -M`@`"KP(`[O("``$%``#S\@(``J\"`/SR`@`!D`(`#_,"``$&```4\P(``J\" -M`#WS`@`!!@``0O,"``*O`@!?\P(``J0"`&CS`@`!D`(`@/,"``*D`@"(\P(` -M`9`"`)OS`@`!!@``H/,"``*O`@#4\P(``04``-GS`@`"KP(`[_,"``&0`@`" -M]`(``08```?T`@`"KP(`'?0"``*D`@`F]`(``9`"`#GT`@`!!@``/O0"``*O -M`@!7]`(``04``%ST`@`"KP(`9_0"``&0`@!Z]`(``08``'_T`@`"KP(`E?0" -M``*D`@">]`(``9`"`+'T`@`!!@``MO0"``*O`@#5]`(``04``-KT`@`"KP(` -MY?0"``&0`@#X]`(``08``/WT`@`"KP(`$_4"``*D`@`<]0(``9`"`"_U`@`! -M!@``-/4"``*O`@!*]0(``04``$_U`@`"KP(`6O4"``&0`@!H]0(``9`"`'OU -M`@`!!@``@/4"``*O`@"6]0(``J0"`)[U`@`!D`(`L?4"``$&``"V]0(``J\" -M`,_U`@`!!0``U/4"``*O`@#=]0(``9`"`/#U`@`!!@``]?4"``*O`@`+]@(` -M`J0"`!/V`@`!D`(`)O8"``$&```K]@(``J\"`$KV`@`!!0``3_8"``*O`@!8 -M]@(``9`"`&OV`@`!!@``</8"``*O`@"&]@(``J0"`([V`@`!D`(`H?8"``$& -M``"F]@(``J\"`+SV`@`!!0``P?8"``*O`@#*]@(``9`"`-WV`@`!!@``XO8" -M``*O`@`-]P(``J0"`"#W`@`!D`(`,_<"``$&```X]P(``J\"`%'W`@`!!0`` -M5O<"``*O`@!?]P(``9`"`(7W`@`"I`(`F/<"``&0`@"K]P(``08``+#W`@`" -MKP(`R?<"``$%``#.]P(``J\"`-?W`@`!D`(`ZO<"``$&``#O]P(``J\"`%_X -M`@`"\@$`P/D"``+R`0#J^0(``O(!`&7Z`@`";`$`E_L"``*D`@"^^P(``J0" -M`'_\`@`"0`$`H/P"``+I`0"Z_`(``20"`,C\`@`!)`(`2OT"``&0`@!V_0(` -M`9`"`*;]`@`"I`(`N_T"``&0`@`"_@(``9`"`&#^`@`!D`(`R?X"``&0`@`Z -M_P(``J0"`$S_`@`!D`(`;?\"``+O`0!Y_P(``@$"`(__`@`"I`(`J_\"``*D -M`@#'_P(``J0"`.G_`@`"C@$`^_\"``&0`@!,``,``J0"`%L``P`!D`(`?``# -M``+O`0"(``,``@$"`)X``P`"I`(`N@`#``*D`@#6``,``J0"`/@``P`"C@$` -M"@$#``&0`@`Z`0,``J0"`$8!`P`"KP$`9`$#``*-`0!O`0,``9`"`(<!`P`! -MD`(`F@$#``&0`@!O`@,``9`"`/,"`P`"!@(`#0,#``)$`@`F`P,``D,"`(0# -M`P`!`0``F`,#``+$`0"Y`P,``BP!`,4#`P`"1`$`_P0#``$%```$!0,``J\" -M`+H%`P`!!0``OP4#``*O`@#3!0,``L(!`/0%`P`"Q0$`W`8#``+N`0!,!P,` -M`4(!`&T'`P`"X`$`A0<#``*R`0`%"`,``NX!`!@(`P`"G@$`2@@#``(:`@#E -M"`,``FX!`.\(`P`"/0(`FPD#``+"`0#_"0,``LH!`%\*`P`"+@(`@@H#``*[ -M`0"3"@,``AH"`"L+`P`"F@$`N`L#``+*`0`Q#`,``IH!`,L,`P`"N@(`Z@P# -M``*Z`@`?#0,``IH!`(@-`P`"N@(`TPT#``*Z`@`2#@,``B\!`#@.`P`"5@$` -M1`X#``*D`@!O#@,``C(!`(X.`P`"_0$`IPX#``+Y`0"^#@,``KX!`-@.`P`! -M!@``W0X#``*O`@#Z#@,``KH"`!,/`P`!!@``&`\#``*O`@`U#P,``KH"`'T/ -M`P`"N@(`P`\#``);`0#C#P,``KH"`$`0`P`"Y@$`;!`#``+"`0"%$`,``K(! -M`,H0`P`"#@(`$A$#``$#``""$0,``M(!`)(1`P`!D`(`NQ$#``*M`0#@$0,` -M`JT!``42`P`"K0$`*A(#``*M`0!7$@,``J$!`(02`P`"H0$`NQ(#``*A`0#H -M$@,``J$!`/02`P`"I`(`*Q,#``*A`0!8$P,``J$!`&03`P`"I`(`B1,#``*M -M`0"N$P,``JT!`-,3`P`"K0$``!0#``*A`0`E%`,``JT!`&P4`P`"I`(`W10# -M``&0`@#^%`,``9`"`!05`P`"I`(`)14#``*[`0`V%0,``J0"`%85`P`"K0$` -M8A4#``*D`@"'%0,``JT!`),5`P`"I`(`RA4#``*A`0#6%0,``J0"`/L5`P`" -MK0$`!Q8#``*D`@`8%@,``H4!`"D6`P`"Y0$`618#``*A`0"&%@,``J$!`+,6 -M`P`"H0$`X!8#``*A`0`%%P,``JT!`!87`P`"I`(`-A<#``*M`0!"%P,``J0" -M`&\7`P`"H0$`E!<#``*M`0#!%P,``J$!`-@7`P`"/0(`_1<#``*M`0`)&`,` -M`J0"`#T8`P`"H0$`21@#``*D`@!K&`,``JT!`'<8`P`"I`(`D1D#``(N`0"= -M&0,``D,"`/L9`P`!D`(`&AH#``&0`@!,&@,``9`"`'$:`P`"+@$`?1H#``)# -M`@")&@,``M(!`-4;`P`"#@(`X1L#``*D`@`''`,``@X"`!,<`P`"I`(`FAP# -M``&0`@"S'`,``9`"`/H<`P`"I`(`&QT#``*[`0`W'0,``@`"`$P=`P`"``(` -M7!T#``*D`@"`'0,``9`"`)X=`P`!D`(`MAT#``*D`@#+'0,``04``-`=`P`" -MKP(`W1T#``(&`@`B'@,``0$``"X>`P`"1`$`0QX#``$&``!('@,``J\"`%4> -M`P`"!@(`FAX#``$!``"F'@,``D0!`,T>`P`"!@(`&1\#``$!```H'P,``D0! -M`#P?`P`"!@(`B!\#``$!``"7'P,``D0!`*L?`P`"!@(`\!\#``$!``#\'P,` -M`D0!`!8@`P`"!@(`6R`#``$!``!G(`,``D0!`'L@`P`"!@(`R"`#``$!``#4 -M(`,``D0!``,A`P`"[@$`*2$#``*;`0"-(0,``M(!`-,A`P`"T@$`Y2$#``+* -M`0`\(@,``BX"`&@B`P`"NP$`@B(#``(:`@"L(@,``LH!``TC`P`"+@(`.2,# -M``*[`0!3(P,``AH"`(LC`P`"R@$`MB,#``)=`0#9(P,``L(!`!DE`P`"+@$` -M)24#``)#`@"6)0,``J0"`-TE`P`"\0$`\B4#``*[`0!()@,``04``$TF`P`" -MKP(`:"8#``*]`0`C)P,``BX!`"\G`P`"0P(`1B<#``(N`0!2)P,``D,"`%XG -M`P`"NP$`02@#``*\`0!;*`,``KP!`'4H`P`"8P$`AR@#``+&`0"9*`,``NP! -M`+$H`P`"@P$`PR@#``*Q`0#5*`,``CH"`.DH`P`"*P(`%"D#``+*`0!U*0,` -M`BX"`*(I`P`"NP$`O"D#``(:`@`6*@,``ET!`"@J`P`"R@$`3BH#``$&``!3 -M*@,``J\"`&,J`P`"70$`BBH#``+"`0#H*P,``OL!`/(K`P`!`P``4RP#``*R -M`0#L+`,``NX!``,M`P`"G@$`1BT#``(:`@#=+0,``LH!``\N`P`"/`$`52X# -M``+R`0#U+@,``KH"`#`O`P`"+P$`2"\#``)6`0!4+P,``J0"`'\O`P`",@$` -MGB\#``+]`0"^+P,``OD!`-DO`P`"O@$`^B\#``*Z`@`;,`,``KH"`$\P`P`" -M6P$`R3`#``(\`0#@,`,``O8!`)8Q`P`"\@$`'C,#``(N`@`U,P,``AH"`&4S -M`P`"70$`>#,#``*R`0#B,P,``LH!`!<T`P`"/`$`7S0#``(\`0"A-`,``CP! -M`+PT`P`"\@$`_S0#``)2`0!5-@,``N<!`'LV`P`"R@$`F38#``(O`0"G-@,` -M`E8!`+,V`P`"I`(`U38#``+Y`0#L-@,``KX!``DW`P`"N@(`)C<#``*Z`@!2 -M-P,``EL!`'(W`P`"90$`US<#``('`@`".`,``CP!`$<X`P`"/`$`AC@#``(\ -M`0"9.`,``E(!`*TX`P`"Q0$`Y3@#``)2`0!8.@,``K(!`(L[`P`"+@(`G3L# -M``(:`@#F.P,``L(!`"\\`P`"/`$`5CP#``*7`0"R/`,``HP!`+H\`P`!0@$` -MVSP#``+@`0#Z/`,``J0!``8]`P`"C`$`/CT#``(``@!./0,``J0"`)4]`P`" -M6P$`JCT#``(X`@#7/0,``M(!`/D]`P`"?0(`"#X#``+3`0`</@,``LH!`#H^ -M`P`"^0$`43X#``*^`0!N/@,``KH"`(L^`P`"N@(`HCX#``);`0##/@,``LH! -M`-,^`P`"L@$`##\#``*[`0#1/P,``BX!`-T_`P`"0P(`'4`#``$%```B0`,` -M`J\"`$-``P`"6P$`5T`#``+"`0!Q0`,``J0"`'U``P`"0P(`G4`#``(.`@"K -M0`,``J0"`+=``P`"0P(`QT`#``)8`0`I00,``LH!`(9!`P`"NP$`]D(#``*A -M`0!30P,``BX!`&-#`P`"0P(`>$,#``+2`0"=0P,``0,``,U#`P`!D`(`$T0# -M``&0`@`V1`,``9`"`(Q$`P`!D`(`JT0#``&0`@``10,``9`"`#M%`P`"+@$` -M2T4#``)#`@!;10,``L(!`)5%`P`"I`(`PT4#``+#`@#O10,``9`"``Y&`P`! -MD`(`$T8#``+#`@"!1@,``LH!`-=&`P`"^0$`_$8#``*^`0`K1P,``KH"`,!' -M`P`"N@(`YT<#``);`0`-2`,``9`"`"Q(`P`!D`(`<T@#``+*`0"R2`,``K(! -M`-M(`P`"5@$`YT@#``*D`@`>20,``9`"`#U)`P`!D`(`($H#``&0`@`]2@,` -M`9`"`,-*`P`"E@$`XDH#``(E`@`72P,``9`"`#-+`P`!D`(`84L#``&0`@!] -M2P,``9`"`,=+`P`!D`(`YDL#``&0`@`83`,``9`"`$5,`P`"+@$`54P#``)# -M`@!A3`,``M(!`'1,`P`"5@$`@$P#``*D`@"I30,``BX!`+5-`P`"0P(`^4T# -M``(N`0`%3@,``D,"`!E.`P`"&@(`+4\#``*$`@"!3P,``08``(9/`P`"KP(` -MFT\#``(N`0"G3P,``D,"`-!/`P`"R@$`1U`#``+*`0"V4`,``AH"`'!1`P`" -MI`(`[E$#``*D`@!"4@,``J0"`&%2`P`"+@$`;5(#``)#`@"!4@,``AD"`)U3 -M`P`"I`(`XE,#``*D`@`!5`,``BX!``U4`P`"0P(`(50#``(9`@!@5`,``J0" -M`+!4`P`"I`(`"54#``*D`@`Z50,``JD!`&%5`P`"+@$`;54#``)#`@!Y50,` -M`AH"`,!5`P`!D`(`IE@#``(P`0#&6`,``C`!`/%8`P`",`$`IED#``(P`0#& -M60,``C`!`/-9`P`",`$`0UH#``*6`0""6@,``N(!`-!:`P`"S@$`+%L#``(] -M`0`T6P,``H<!`$-;`P`!`P``CUL#``)D`0"K6P,``IT!``A<`P`"I`(`*F$# -M``$)```Z80,``0D``$IA`P`"8`$`H&$#``(7`@"*8@,``J8!`+=B`P`""P(` -MRF(#``*F`0"A8P,``LH!`/MC`P`"W@$`(&0#``*$`@!)9`,``E`!`,YD`P`" -MH@$`#64#``*=`0!J90,``L$!`)IF`P`"I`(`PV<#``$)``#49P,``0D``.1G -M`P`"8`$`&V@#``$)```L:`,``0D``#QH`P`"8`$`PV@#``&0`@`2:0,``9`" -M`#-I`P`"5`$`2VD#``)4`0!C:0,``E0!`'MI`P`"5`$`DVD#``)4`0"K:0,` -M`E0!`,EI`P`!D`(`%&H#``&0`@!$:@,``9`"`.UJ`P`"5`$`2VL#``(&`@!= -M:P,``O\!`.YK`P`"A`(`)VP#``*$`@`N;`,``?H!`$%L`P`"Q`$`36P#``)$ -M`0"4;`,``@8"`*9L`P`"_P$`_VP#``'Z`0`2;0,``L0!`!YM`P`"1`$`>FT# -M``*+`0"(;0,``E8!`)1M`P`"I`(`SFT#``*!`0#<;0,``E8!`.AM`P`"I`(` -M$FX#``*+`0`D;@,``E8!`#!N`P`"I`(`?6X#``*!`0`7;P,``D$!`"-O`P`" -M0P(`TG$#``([`@#H<0,``I$!`-9R`P`"N0$`ZW(#``'9`0!`<P,``CL"`%9S -M`P`"D0$`^G,#``*Y`0!!=`,``KD!``1U`P`"<0$`'74#``)^`0`^=0,``LP! -M`*-U`P`!`P``!'D#``++`0"*>0,``LL!`*9Y`P`"A`(`D'H#``)A`0#\>P,` -M`9`"`!-\`P`!D`(`(WP#``*D`@!N?`,``0<``+9\`P`!D`(`Z7P#``$'```+ -M?0,``0<``%-]`P`!D`(`R'T#``$'```0?@,``9`"`$-^`P`!!P``97X#``$' -M``"M?@,``9`"`!9_`P`!!P``)W\#``$'``"Z?P,``9`"`$^``P`!D`(`XH`# -M``&0`@`,@0,``J0"`-B!`P`"/P$`EX0#``+X`0`/A@,``0,``!Z&`P`!!P`` -M*(8#``$'```SA@,``0<``#V&`P`!!P``AHH#``$'``"+B@,``G4"`!&+`P`" -M8`$`(8L#``*D`@`]BP,``B,"`&B+`P`!!@``;8L#``*O`@"UBP,``ID"`,^+ -M`P`"F0(`Z8L#``*9`@!AC`,``BD"`(*,`P`"HP(`GXP#``*C`@#`C`,``J," -M`-V,`P`"HP(`_HP#``*C`@`;C0,``J,"`#R-`P`"HP(`68T#``*C`@"6C0,` -M`J,"`*V-`P`"HP(`VXT#``*C`@#XC0,``J,"`!F.`P`"HP(`-HX#``*C`@!7 -MC@,``J,"`'2.`P`"HP(`E8X#``*C`@"RC@,``J,"`-..`P`"HP(`\(X#``*C -M`@`1CP,``J,"`"Z/`P`"HP(`3X\#``*C`@!LCP,``J,"`(V/`P`"HP(`JH\# -M``*C`@#+CP,``J,"`.B/`P`"HP(`"9`#``*C`@`FD`,``J,"`$>0`P`"HP(` -M9)`#``*C`@"%D`,``J,"`**0`P`"HP(`PY`#``*C`@#@D`,``J,"``&1`P`" -MHP(`'I$#``*C`@!3D0,``M("`(21`P`"T@(`N9$#``+2`@#JD0,``M("`!^2 -M`P`"T@(`4)(#``+2`@"%D@,``M("`+:2`P`"T@(`ZY(#``+2`@`<DP,``M(" -M`%&3`P`"T@(`@I,#``+2`@"WDP,``M("`.B3`P`"T@(`'90#``+2`@!.E`,` -M`M("`'.4`P`"2P$`>Y0#``*W`0")E`,``K<!`)&4`P`"F0$`G90#``*D`@"E -ME`,``LT!`+64`P`"D@$`Q90#``*2`0`!E0,``I(!`!.5`P`"D@$`/)4#``*N -M`0!/E0,``JX!`&R5`P`"K@$`?Y4#``*N`0";E0,``E8!`.R5`P`"!@(`2I8# -M``$!``!:E@,``D0!`)>6`P`"+P$`JY8#``*D`@"WE@,``E8!``:7`P`"0P(` -M=)<#``(&`@"]EP,``0$``,F7`P`"1`$`!I@#``(O`0`:F`,``J0"`"*8`P`" -M5@$`8)@#``)#`@#/F`,``@8"`$69`P`!`0``59D#``)$`0"2F0,``B\!`*:9 -M`P`"I`(`LID#``)6`0#TF0,``D0"`&N:`P`!`0``>YH#``+$`0"@F@,``BP! -M`+2:`P`"1`$`\9H#``(O`0`%FP,``J0"`!&;`P`"5@$`29L#``(N`0!GFP,` -M`D,"`'.;`P`"!@(`CYL#``(N`0"9G`,``0$``*V<`P`"Q`$`UIP#``(L`0#J -MG`,``D0!`">=`P`"+P$`.YT#``*D`@!'G0,``E8!`(F=`P`"+@$`I9T#``)# -M`@`UG@,``@8"`%V>`P`!!@``8IX#``*O`@!PG@,``D0"`(R>`P`"0P(`R9X# -M``*Z`@#HG@,``B\!`#F?`P`"A`(`':`#``(J`@!=H`,``0$``'&@`P`"Q`$` -MFJ`#``(L`0"UH`,``D0!`/>@`P`"+P$`"Z$#``*D`@`7H0,``E8!`&.A`P`" -MA`(`EZ$#``(N`0"PH0,``HH!`,2A`P`"0P(`[*$#``*Z`@"PH@,``BX!`,&B -M`P`"B@$`S:(#``)#`@"2HP,``B\!`."C`P`"+@(`**0#``+2`0`^I`,``KL! -M`%VD`P`"&@(`EZ0#``+S`0"AI0,``M4!`,.E`P`"-`(`XZ4#``*\`@`7I@,` -M`DL!`!^F`P`"T0$`)Z8#``+1`0`OI@,``K<!`#NF`P`"MP$`1Z8#``*9`0!3 -MI@,``J0"`%NF`P`"S0$`;Z8#``%P`0"*I@,``IT"`)JF`P`"P@$`JJ8#``+" -M`0#,I@,``M8!`-JF`P`"U@$`^:8#``$)```&IP,``0D``".G`P`!!P``+:<# -M``$'``!.IP,``6L!`%RG`P`!!P``8J<#``%K`0!HIP,``0<``&ZG`P`!:P$` -M=*<#``$'``!ZIP,``6L!`(&G`P`!:P$`EZ<#``%K`0">IP,``6L!`*VG`P`! -M:P$`M*<#``%K`0"]IP,``6L!`,2G`P`!:P$`TZ<#``%K`0#@IP,``0<``/JG -M`P`!:P$`"*@#``%K`0`7J`,``6L!`!ZH`P`!:P$`)Z@#``%K`0`NJ`,``6L! -M`$:H`P`!!P``6*@#``$#``"5J`,``0,``+FH`P`!!P``RJ@#``$'``#VJ`,` -M`6L!``2I`P`!:P$`+JD#``%K`0!4J0,``6L!`&&I`P`!:P$`LZD#``)^`@#' -MJ0,``0,``#^J`P`"_0$`9:H#``(R`0!MJ@,``O,!`)*J`P`"O@$`K*H#``*^ -M`0#FJ@,``0,``"&K`P`"E0$`9:L#``*&`0"=JP,``KH"`+BK`P`"+P$`RJL# -M``*D`@#2JP,``E8!``ZL`P`"N@(`*:P#``(^`@`[K`,``AL"`!:M`P`!!0`` -M&ZT#``*O`@!.K0,``GT"`%^M`P`!`0``=*T#``*=`@#AKP,``OT!``JP`P`" -M,@$`.+`#``+*`0"DL`,``LH!`/FP`P`"N@(`.+$#``+*`0":L0,``KH"`-.R -M`P`"E0$`*;,#``+5`0!$LP,``KX!`'FS`P`"5@$`G;,#``)]`@"QLP,``7`! -M`,:S`P`"G0(`);4#``+S`0"&M0,``0,``+JU`P`"6@$`([8#``):`0",M@,` -M`EH!`/6V`P`"6@$`/[@#``$#``""N`,``EH!`/&X`P`"6@$`5KD#``):`0"[ -MN0,``EH!`"&Z`P`"6@$`AKH#``):`0#0N@,``IL"``2[`P`"6@$`3KL#``*; -M`@""NP,``EH!`,R[`P`"FP(``+P#``):`0!*O`,``IL"`'Z\`P`"6@$`U+P# -M``*6`0`2O0,``I8!`%"]`P`"E@$`CKT#``*6`0#,O0,``I8!``>^`P`"E@$` -ML+X#``$)``"[O@,``0D``+G``P`"C`(`XL`#``*,`@`DP0,``0,``#G!`P`! -M!P``1<$#``$'``!1P0,``0<``%K!`P`!!P``8,$#``$'``!]P0,``0<``+W! -M`P`"Q@(`[,$#``*_`@`AP@,``6L!`"["`P`!:P$`6<(#``%K`0!VP@,``6L! -M`'_"`P`!:P$`AL(#``%K`0"BP@,``6L!`*S"`P`!:P$`^<,#``+S`0!CQ0,` -M`J8!`)'%`P`""P(`IL4#``*F`0`ER0,``J8!`%/)`P`""P(`:,D#``*F`0`5 -MS0,``J8!`$/-`P`""P(`6,T#``*F`0#5T`,``J8!``/1`P`""P(`&-$#``*F -M`0!@TP,``@8"`"_5`P`"A`(`@]8#``$!``#QU@,``BH"``'7`P`"Q`$`(=<# -M``(L`0!!UP,``L0!`%?7`P`"1`(`C-<#``(L`0"AUP,``G\!`-;7`P`"+`$` -M%=@#``*$`@"'V`,``H0"`,'8`P`"1`$`T]@#``)#`@!9VP,``L8"`(#;`P`" -MQ@(`N]P#``(N`@`+W0,``LH!`%W=`P`"NP$`CMT#``+2`0#,W0,``HX!`/'= -M`P`"&@(`'-X#``+*`0!WW@,``IH!`+7>`P`!G`(`OMX#``&<`@#1W@,``50" -M``+?`P`!D@(`R-\#``&2`@`8X`,``F4"`)7@`P`!2@(`H.`#``%*`@"IX`,` -M`50"`+3@`P`!5`(`R.`#``%*`@`9X0,``:4"`)+A`P`!2@(`@>(#``&2`@`Q -MXP,``J<"`&KC`P`"IP(`Y^,#``*G`@`,Y`,``L,"`';D`P`"IP(`H.0#``)W -M`@#`Y`,``J<"`-SD`P`"PP(`N>4#``+#`@`NY@,``GT"`+KF`P`!8`(`S^8# -M``)]`@#CY@,``58"`/7F`P`"G0(`>N<#``%@`@"/YP,``GT"`*/G`P`!5@(` -MM><#``*=`@#LYP,``K("`$[H`P`"C0(`FN@#``+1`@#DZ`,``JD"`"7I`P`! -MM0(`7>D#``)1`@!KZ@,``L`"`)3J`P`"80(`JNH#``&E`@"ZZ@,``FH"`,?J -M`P`"4@(`V>H#``)<`@!/ZP,``0D``&SK`P`!"0``?.L#``$)``",ZP,``<X" -M`*SK`P`"L@(`N^L#``$!``#&ZP,``0D``.?K`P`"HP(`^^L#``$)```J[`,` -M`;<"`##L`P`!"0``-.P#``'3`@`Z[`,``0D``$+L`P`!"0``4.P#``$)``!5 -M[`,``IT"`+GL`P`!2@(``.T#``+3`@`J[0,``J0"`#+M`P`"A0(`A>T#``)B -M`@#+[0,``J,"`.7M`P`"HP(`3>X#``*C`@!U[@,``F\"`$#O`P`"@0(`2^\# -M``*R`@"4[P,``J,"`+3O`P`"3`(`+O`#``*P`@!.\`,``K`"`%GP`P`!2@(` -MF?`#``*P`@"Z\`,``K`"`-SP`P`"L`(``/$#``*P`@`G\0,``K`"`$KQ`P`" -MA@(`9?$#``*P`@!K\0,``4H"`+3Q`P`!D@(`N?$#``*V`@#3\0,``9("`#GR -M`P`!D@(`1?(#``&E`@!N\@,``EH"`(?R`P`"L@(`G_(#``$)``"J\@,``0D` -M`)'S`P`"HP(`J/,#``&2`@#I\P,``H$"`!KT`P`"HP(`,/0#``%*`@!M]`,` -M`9("`+CD`P`"IP(`4.4#``)W`@#0Y0,``G<"`,7H`P`"HP(`'NT#``*G`@"O -M]`,``0$``,CT`P`!!P``;/4#``$!``"@]P,``K,"``/X`P`"I@(`*_@#``$! -M``!4^`,``J8"`*KX`P`!`P``M/@#``$#``#Q^`,``0$``&?Y`P`"1@(`F?D# -M``$!``#H^0,``H<"``+Z`P`"DP(`)_H#``&<`@`M^@,``0<``$GZ`P`!!P`` -M7?H#``$'``!F^@,``0<``&SZ`P`!!P``<OH#``+-`@"K^@,``H<"`,WZ`P`" -MT`(`*?L#``+0`@!:^P,``J,"`&K[`P`!`0``B_L#``+0`@"M^P,``0<``+O[ -M`P`"@`(`"?T#``$'```3_0,``H`"`!O]`P`"L@(`#/X#``$'```6_@,``H`" -M`![^`P`"L@(`S?X#``$'``#7_@,``H`"`-_^`P`"L@(`9O\#``$'``!P_P,` -M`H`"`'C_`P`"L@(`Z?\#``$'``#S_P,``H`"`/O_`P`"L@(`>``$``$'``"" -M``0``H`"`(X`!``"HP(`K@`$``$'``"X``0``H`"`-H`!``"HP(``0$$``*C -M`@!'`00``FL"`&`!!``"L@(`<P$$``$!``"Q`00``D8"`/`!!``!!P``^`$$ -M``*``@`7`@0``K`"`$<"!``!`P``C`($``+0`@"Z`@0``FL"`,<"!``"O`(` -MZ0($``*R`@#Y`@0``0$``!(#!``"T`(`'P,$``*\`@!;`P0``0,``,`#!``" -MT`(`$`0$``*C`@`C!`0``0$``"@$!``"6`(`2`0$``&E`@"Y!`0``E\"`-T$ -M!``!!P``YP0$``*``@#S!`0``J,"`",%!``":P(`/`4$``)D`@#8!P0``F0" -M`!\(!``"7P(`F`@$``)D`@#>"`0``E\"`"H)!``!!P``-`D$``*``@`\"00` -M`K("`'X)!``"@0(`HPD$``&E`@#G"00``E\"`"P*!``"7P(`F`H$``)?`@"Y -M"@0``FL"`,X*!``!M0(``PL$``$'```-"P0``H`"`!D+!``"HP(`XPL$``)? -M`@`-#`0``F0"`-L,!``"9`(`-@T$``&E`@"F#00``E\"`.8.!``"9`(`\0X$ -M``$%```%#P0``J\"`$$/!``"9`(`3`\$``$%``!@#P0``J\"`*D/!``"7P(` -MTP\$``)D`@#]#P0``F0"`$40!``!!@``3A`$``*O`@"6$00``F0"`-H1!``" -M7P(`*!($``)?`@!?$@0``ET"`+(2!``"7P(`Y1($``)D`@`$$P0``H@"`,\3 -M!``"7P(`W!,$``$%```A%`0``J\"`.,4!``"9`(`(A4$``)?`@![%00``E\" -M`*85!``!!@``JQ4$``*O`@#/%00``F0"`!,6!``"7P(`;Q8$``)?`@"[%@0` -M`04``,`6!``"KP(`\A8$``*$`@`S%P0``E\"`$<7!``":0(`@Q<$``)?`@#' -M%P0``E\"``H8!``"7P(`*!@$``*!`@!!&`0``F0"`&H8!``"B`(`TA@$``)E -M`@"L&00``LL"`-P9!``"1P(`.AH$``&E`@!S&@0``F<"`*L:!``"8@(`PAH$ -M``&U`@`T&P0``L4"`#X;!``"7`(`6AL$``%)`@!Y&P0``M`"`"8<!``"7@(` -M-AP$``*!`@""'00``EX"`*(=!``"7@(`-!\$``*(`@#&'P0``H$"`#4@!``" -M70(`FR`$``),`@"E(`0``K,"`.\@!``"2`(`)B$$``),`@!/(00``J,"`(LA -M!``"80(`IR$$``)1`@!@(@0``K,"`-,B!``"Q0(`\2($``)J`@`A(P0``E(" -M`$0C!``"L@(`8",$``$!``".(P0``D8"`*DD!``"R@(`"B4$``$!``!*)00` -M`M`"`-PE!``"R@(`_B4$``+0`@!O)@0``FL"`#CX`P`"JP(`J/D#``*K`@#! -M^0,``H<"`/7[`P`"HP(`_1H$``)K`@`K&P0``J,"`$8<!``"70(`OR`$``*! -M`@`>(00``ET"`(@E!``"R@(`M"8$``&2`@!\)P0``9("`#$H!``!D@(`'BD$ -M``&2`@#-*@0``0,``/DK!``"FP(`:"T$``*;`@`P+@0``IL"`-\O!``"<`(` -M.#$$``)P`@!S,@0``0,```<T!``"<`(`A#0$``)P`@!:-00``G`"`(,U!``! -M"0``IC4$``$)``"S-00``0D``+PU!``!"0``Q34$``$)``#.-00``0D``-<U -M!``!"0``X#4$``$)``#I-00``0D``/(U!``!"0``^S4$``$)```$-@0``0D` -M``TV!``!"0``$S8$``$)``!F-@0``D\"`*P[!``"<`(`[#L$``)P`@`L/`0` -M`G`"`)(\!``"<`(`[3P$``)P`@!2/00``G`"`,$]!``!I0(`XST$``)P`@#O -M/00``G`"`)8^!``"<`(`N3X$``)P`@"V/P0``G`"`-D_!``"<`(`9$`$``)P -M`@"&0`0``G`"`.I`!``"<`(`]D`$``)P`@`D000``G`"`$9!!``"<`(`IT$$ -M``)P`@"S000``G`"`.E!!``"<`(`"T($``)P`@!E0@0``G`"`'%"!``"<`(` -MU4($``)P`@#A0@0``G`"`$5#!``"<`(`44,$``)P`@"U0P0``G`"`,%#!``" -M<`(`)40$``)P`@`Q1`0``G`"`)5$!``"<`(`H40$``)P`@`%100``G`"`!%% -M!``"<`(`E44$``)P`@"A100``G`"``5&!``"<`(`$48$``)P`@!\1@0``G`" -M`(A&!``"<`(`ED8$``)P`@"@1@0``G`"`#5'!``"<`(`04<$``)P`@"E1P0` -M`G`"`+%'!``"<`(`*4@$``)P`@`V2`0``G`"`)E(!``"<`(`ID@$``)P`@"K -M200``G`"`+E)!``"<`(`6TH$``)P`@!I2@0``G`"`,5*!``"<`(`T4H$``)P -M`@!82P0``G`"`&1+!``"<`(`Z$L$``)P`@#T2P0``G`"`&1,!``"<`(`<$P$ -M``)P`@!^300``G`"`(Q-!``"<`(`:$X$``)P`@!V3@0``G`"`#!/!``"<`(` -M/D\$``)P`@![3P0``0<``(A/!``!!P``R%`$``$!``#`400``D\"`&52!``! -MM0(`W%($``*F`@`!4P0``0$```E3!``"JP(`3E,$``*F`@!84P0``K("`+U3 -M!``"JP(`!50$``*F`@!&5`0``0$``%-4!``!`0``6U0$``*K`@!E5`0``J<" -M`*54!``"L@(`+%4$``*C`@!$500``08``$E5!``"KP(`=54$``*R`@#=500` -M`J,"`/55!``!!@``^E4$``*O`@">5@0``0$``-Q6!``!`0``]58$``+0`@`< -M5P0``0$``#57!``"T`(`7%<$``$!``!U5P0``M`"`)Q7!``!`0``M5<$``+0 -M`@#<5P0``0$``/57!``"T`(`'%@$``$!```U6`0``M`"`%Q8!``!`0``=5@$ -M``+0`@"<6`0``0$``+58!``"T`(`W%@$``$!``#U6`0``M`"`!Q9!``!`0`` -M-5D$``+0`@!<600``0$``'59!``"T`(`G%D$``$!``"U600``M`"`-Q9!``! -M`0``]5D$``+0`@`<6@0``0$``#5:!``"T`(`7%H$``$!``!U6@0``M`"`)Q: -M!``!`0``M5H$``+0`@#<6@0``0$``/5:!``"T`(`'%L$``$!```U6P0``M`" -M`%Q;!``!`0``=5L$``+0`@"<6P0``0$``+5;!``"T`(`S5L$``$!``#H6P0` -M`M`"`/U;!``!`0``&UP$``+0`@!>7`0``J,"`&A<!``!`0``@UP$``+0`@#[ -M7`0``0$``!9=!``"T`(`BUT$``*'`@"E700``J8"`,9=!``!`0``&EX$``*C -M`@#07@0``04``-E>!``"KP(`Z5X$``)K`@#]7@0``J,"``5?!``"AP(`+E\$ -M``$%```W7P0``J\"`$=?!``":P(`:U\$``*'`@!R7P0``0$``(Y?!``"T`(` -M^5\$``*C`@`!8`0``H<"`%M@!``!`0``>6`$``+0`@`<800``G`"`!)B!``" -M7P(`+&($``$!``!%8@0``I,"`,AB!``"7P(`!&,$``)P`@"N8P0``E\"`-9C -M!``!`0``[V,$``*3`@`V9`0``H<"`$!D!``!`0``660$``*3`@`'900``0$` -M`-AE!``!`0``\64$``*3`@#-9@0``0$``-]F!``"DP(`_&8$``&2`@"F9P0` -M`0$``,)G!``"DP(`YV<$``$)``#Q9P0``0D```-H!``!"0``"V@$``$)```4 -M:`0``0D``!UH!``!"0``)F@$``$)```O:`0``0D``#AH!``!"0``06@$``$) -M``!*:`0``0D``%-H!``!"0``7&@$``$)``!V:`0``0D``(!H!``!`0``F6@$ -M``*3`@`5:00``0$``"YI!``"DP(`OVD$``$!``#8:00``I,"`!UJ!``"<`(` -M9VH$``$!``"(:@0``I,"`,UJ!``"<`(`!VL$``$!```H:P0``I,"`&IK!``! -MD@(`MFL$``$!``#2:P0``I,"`!QL!``!D@(`EFP$``$!``"V;`0``I,"`&YM -M!``!`0``AVT$``*3`@!*;@0``0$``&-N!``"DP(`2F\$``$!``!C;P0``I," -M`#IP!``!`0``4W`$``*3`@`J<00``0$``$-Q!``"DP(`#'($``$!```J<@0` -M`I,"`&ER!``!`0``@G($``*3`@`D<P0``0$``#US!``"DP(`>G,$``$!``"8 -M<P0``I,"`+)S!``!!@``T7,$``&U`@#;<P0``0$``/1S!``"DP(``70$``$& -M```<=`0``8H"`"-T!``!!@``,W0$``$&``!+=`0``0$``'!T!``"T`(`>W0$ -M``%.`@"%=`0``08``)UT!``!`0``O70$``$!``#?=`0``I,"`$MU!``!`0`` -M874$``*3`@#9=00``G`"``MV!``"HP(`$W8$``*'`@!%=@0``0$``%YV!``" -MDP(`WG8$``$!``#]=@0``M`"`"-W!``"1@(`0'<$``)P`@!@=P0``G`"`(IW -M!``"<`(`VG<$``)P`@`@>`0``G`"`$MX!``"<`(`VW@$``)P`@#E>`0``G`" -M`"!Y!``"<`(`0'D$``)P`@!A>00``G`"`.)Y!``"<`(`(GH$``)P`@!?>@0` -M`G`"`)]Z!``"<`(`WWH$``)P`@`?>P0``G`"`$)[!``!!@``[7L$``%@`@`K -M?`0``GT"`#]\!``!5@(`47P$``*=`@!M?`0``0$``(E\!``"DP(`G'P$``)+ -M`@`$?00``J8"`*)]!``!`0``JGT$``*K`@#??00``K("``M^!``"A`(`*7X$ -M``$!```W?@0``0$``%!^!``"DP(`!'\$``$!```=?P0``I,"`#-_!``!`0`` -M3'\$``*3`@!4?P0``H<"`'%_!``"<`(`D7\$``)P`@#`?P0``G`"`--_!``" -MI@(`#8`$``*$`@`X@`0``0$``#^`!``!`0``>8`$``$!``"2@`0``I,"`-Z` -M!``!`0``]X`$``*3`@`L@00``:4"`$6!!``!!@``68$$``$&``"P@00``4X" -M`+V!!``!`0``UH$$``*3`@`D@@0``8H"`$2"!``!!@``88($``$&``"X@@0` -M`;4"``B#!``!8`(`_H0$``)?`@!:A00``E\"`*B%!``"7P(`*X@$``$!``!$ -MB`0``I,"`*N)!``!`0``Q(D$``*3`@`BB@0``L@"`#&*!``"I@(`0HH$``$! -M``!*B@0``JL"`'&*!``"<`(`>8H$``*M`@"#B@0``0$``)R*!``"DP(`P8H$ -M``*M`@#1B@0``0$``.J*!``"DP(`:8L$``$!``"0BP0``J`"`#&,!``!`0`` -M;XT$``)K`@"=C00``4X"`+^-!``":P(`VXT$``)K`@#TC00``4X"`!Z.!``" -M:P(`3XX$``)K`@"$C@0``FL"`*2.!``":P(`-H\$``$!```FD00``0$``#V1 -M!``"H`(`KI$$``$!``#%D00``J`"`-61!``":P(`(9($``$!```XD@0``J`" -M`$B2!``":P(`=Y($``)P`@"/D@0``0$``*B2!``"DP(`MY($``$#``#ID@0` -M`FL"`(:3!``":`(`II,$``$!``#/DP0``J`"`-^3!``":P(`!90$``)K`@!C -ME`0``FL"`&F5!``":`(`HY4$``$!``"ZE00``J`"`,J5!``":P(`YI4$``)K -M`@"GE@0``FL"`#R7!``":P(`M)<$``$!``#+EP0``J`"`-N7!``":P(`)Y@$ -M``)K`@!VF`0``HL"`(:8!``"BP(`V9@$``)K`@`KF00``FL"`#Z9!``"Q0(` -M2YD$``*M`@!9F00``HL"`&F9!``"Q0(`B)D$``)H`@"NF00``0$``,69!``" -MH`(`U9D$``)K`@#MF00``GD"`!F:!``":`(`4YH$``$!``!JF@0``J`"`'J: -M!``":P(`JIH$``$!``#!F@0``J`"`-&:!``":P(`^YH$``$!```DFP0``J`" -M`#2;!``":P(`()X$``)H`@!GG@0``G`"`,">!``"K0(`T)X$``$!``#IG@0` -M`I,"`/F>!``"9P(`59\$``$!``!NGP0``I,"`(V?!``"<`(`^)\$``)G`@!< -MH00``04``&6A!``"KP(`9:($``$!``!^H@0``I,"`)VB!``"<`(`LZ($``)G -M`@`UHP0``G`"`'&C!``"9P(`>Z,$``$!``"4HP0``I,"``RD!``"3`(`6Z0$ -M``*!`@"%I`0``F,"`+BD!``"7P(`#*4$``)?`@`9I00``F<"`$JE!``"3`(` -MFJ4$``)P`@#3I00``0$``.RE!``"DP(`KZ8$``*C`@#EI@0``GD"`&^G!``" -M<`(`DZ<$``$#``"WIP0``EH"`/:G!``"6@(`0Z@$``)P`@#<J00``H@"`#VJ -M!``"<`(`=*H$``);`@"GJ@0``DP"`+RJ!``"@0(`YJL$``*;`@`TK`0``IL" -M`&^L!``"<`(`RJP$``*(`@#'K00``IL"`/^M!``"4`(`;Z\$``)P`@"OKP0` -M`EL"`#:P!``"L@(`2[`$``)Y`@!CL`0``E4"`!2Q!``"K0(`(+$$``*+`@!W -ML00``0$``(ZQ!``"H`(`GK$$``)K`@``L@0``0$``!>R!``"H`(`)[($``)K -M`@!JL@0``L@"`+^R!``"3`(`'K,$``$!```ULP0``J`"`$FS!``":P(`LK,$ -M``)P`@`6M`0``G`"`"BT!``!`0``0K0$``*+`@!8M`0``L4"`)2T!``!`0`` -MJ[0$``*@`@"[M`0``FL"`,FT!``!`0``\[4$``)=`@`SM@0``HL"`$>V!``" -MR`(`X;8$``)P`@`AMP0``EL"`+.W!``"3`(`XK<$``);`@`4N`0``DP"`&>X -M!``"7@(`<[@$``)=`@"?N`0``0$``-*X!``"<`(`]+@$``$!```2N00``I," -M`'2Y!``"A`(`WKD$``$!``#WN00``I,"`#VZ!``!`0``5KH$``*3`@!]N@0` -M`H<"`,2Z!``"R`(`S+H$``*+`@#<N@0``0$``/JZ!``"DP(`C;P$``*$`@"= -MO`0``LL"`&>]!``"<`(`P;T$``*L`@#[O00``0$``!2^!``"DP(`Q[X$``)3 -M`@"KOP0``ED"`,_!!``"A`(`W\$$``++`@!/P@0``EP"`%_"!``"<`(`>,($ -M``*S`@"`P@0``EP"`(["!``!`0``I\($``*3`@#BP@0``J,"`$_#!``!`0`` -M<<,$``)_`@"PPP0``G`"`!;%!``!`0``2L4$``+'`@!6Q@0``I<"`$?'!``" -MI@(`:\<$``$!``"EQP0``H<"`,7'!``!`0``VLD$``$%``#CR00``J\"`";, -M!``":`(`7<P$``*R`@#NS00``0$``,;.!``!`0``-,\$``*;`@!;SP0``K(" -M`'K/!``"I@(`XL\$``&*`@`IT`0``J,"`#70!``"AP(`?-`$``*C`@"(T`0` -M`H<"`*C0!``"HP(`N=`$``$!```_T00``0$``&71!``!`0```]($``$!``#* -MT@0``G`"`"K3!``"<`(`NM,$``)P`@!)U`0``G`"`*/4!``"<`(`0]4$``)P -M`@#UU00``G@"``?6!``!G`(`?M8$``*Q`@"8U@0``I$"`!;7!``"HP(`)=<$ -M``*'`@`OUP0``0$``$C7!``"DP(`TM<$``*C`@#AUP0``H<"`.O7!``!`0`` -M!-@$``*3`@!JV`0``FL"`+?8!``"<`(`P]@$``)P`@#WV`0``L0"`&79!``" -MQ`(`6]H$``)P`@"*V@0``L0"`)W:!``!`0``MMH$``*3`@`=VP0``G`"`"7; -M!``"LP(`4]L$``)P`@!\VP0``0$``)7;!``"DP(`K]L$``)P`@!&W`0``H<" -M`%#<!``!`0``:=P$``*3`@`KW00``D<"`'O=!``!D@(`B-T$``&2`@"0W00` -M`LP"`.K=!``"6@(`.=X$``&2`@"!W@0``0$``)K>!``"DP(`'M\$``$!```J -MWP0``E@"`&O?!``!`0``A-\$``*3`@"IWP0``0$``,C?!``"T`(`'>`$``)B -M`@`MX`0``;4"`$#@!``":P(`CN`$``$!``#0X`0``J,"`.W@!``"HP(`^N`$ -M``)<`@`OX00``G`"`#GA!``"<`(`1>$$``)F`@!,X00``0$``'+A!``"DP(` -MF.$$``%@`@#.X00``6`"`-KA!``"<@(`^N$$``%6`@`,X@0``IT"`&3B!``" -MA`(`BN($``$!``"CX@0``I,"`/;B!``!`0``#^,$``*3`@!WXP0``G`"`,[C -M!``"K`(`!N0$``$!```?Y`0``I,"`*OD!``"4P(`C^4$``)9`@!'Y@0``G`" -M`*[F!``!`0``Q^8$``*3`@`SYP0``E,"`"?H!``"<`(`B.@$``$!``"AZ`0` -M`I,"``'I!``"4P(`YND$``&2`@`JZ@0``0$``$/J!``"DP(`5NH$``)P`@"; -MZ@0``F<"`*3K!``"BP(`P^L$``$#```N[00``0$``%?M!``"<`(`,NX$``*+ -M`@`\[@0``0$``%7N!``"DP(`CNX$``)P`@#&[@0``H0"`.?N!``!`0``!>\$ -M``*3`@!K[P0``J8"`'OO!``!B@(`4?`$``$!``!8\`0``0$``"/Q!``"F`(` -M1_$$``$!``!C\00``I,"`-/Q!``!`0``[/$$``+0`@`@\P0``H<"`#?S!``! -M`0``4/,$``*3`@#:\P0``H<"``;T!``"F`(`?/0$``*'`@`>]00``I@"`#7U -M!``"F`(`1O8$``*'`@"A]@0``J,"`,'V!``"<`(`Y/8$``)C`@#[]@0``0$` -M`!3W!``"DP(`P?<$``$!``#:]P0``I,"`.KW!``":P(`]_<$``$!```8^`0` -M`I,"`"M6!``"IP(`L58$``*A`@#/7`0``JL"`"A=!``"AP(`WET$``*K`@`N -M7@0``H<"`/5@!``"JP(`SG8$``*K`@!;@`0``JL"`)2/!``"H0(`",,$``)2 -M`@#OQP0``I,"`.[+!``"JP(`*\X$``)_`@#PS@0``I,"`)K1!``"?P(`EM($ -M``*K`@#1WP0``DD"`,'@!``"T`(`@?$$``*K`@"A]`0``JL"`+;U!``"JP(` -M`/8$``*K`@#2^@0``M`"`/;Z!``";P(`*_L$``*8`@`&_@0``0$``''^!``" -MC0(`J_X$``$!``"V_@0``0$``*C_!``">0(`L0`%``*-`@`,`04``7$"`"4! -M!0`"QP(`H`$%``*C`@#1`P4``7$"`.H#!0`"QP(`_`,%``)Q`@"C!`4``LH" -M`-,$!0`"T`(`<04%``*K`@"5!04``DT"`.0%!0`"JP(`C/H$``+0`@!=_P0` -M`JL"`#P!!0`"<0(`S0$%``+*`@`X`@4``JL"`-P%!0`"IP(`;P8%``)H`@#3 -M"`4``G,"``\)!0`"<P(`*@D%``)S`@#:"04``E`"`.,*!0`"50(`)@P%``*; -M`@`+#04``FL"`$`-!0`"6P(`W@T%``*+`@"M$`4``FD"`+T0!0`"9`(`\!`% -M``)?`@!%$04``E\"`&(1!0`"9P(`]!$%``*+`@`J$@4``GD"`$,2!0`">0(` -M41(%``)Y`@!A$@4``HL"`&D2!0`"BP(`O!(%``$#``!%$P4``HD"`)P3!0`" -M;0(`[1,%``)2`@!]%`4``HL"`)05!0`"K0(`]A4%``*;`@`.%@4``EL"`!X6 -M!0`"B0(`3Q8%``*(`@".&`4``E\"`-`8!0`"7P(`XQ@%``)I`@"7&04``E\" -M`+`9!0`":0(`V!D%``)D`@#V&04``F0"`+D=!0`"U0(`%!X%``+5`@"W'@4` -M`M4"`)T?!0`"L@(`42`%``)I`@")(`4``E\"`)$@!0`":0(`HB`%``)I`@#^ -M(`4``E\"``HA!0`":0(`@"$%``)H`@"7(04``JT"`+8A!0`":`(`0R(%``+5 -M`@!&)`4``K,"`&,D!0`"K0(`;20%``*+`@"G)`4``HD"`/`*!0`";0(`(`T% -M``)M`@"H%`4``JT"`!8C!0`"LP(`T20%``%*`@#R)`4``:H"``TE!0`!J@(` -MGB8%``$!``"])@4``M`"`/@F!0`"D0(`/B<%``+2`@!>)P4``KT"```$```! -M`0``!`0```$!```(!````0$```P$```!`0``$`0```$!```4!````0$``!@$ -M```!`0``'`0```$!```@!````0$``"0$```!`0``*`0```$!```L!````0$` -M`#`$```!`0``-`0```$!```X!````0$``#P$```!`0``0`0```$!``!$!``` -M`0$``$@$```!`0``3`0```$!``!0!````0$``%0$```!`0``6`0```$!``!< -M!````0$``&`$```!`0``9`0```$!``!H!````0$``&P$```!`0``<`0```$! -M``!T!````0$``'@$```!`0``?`0```$!``"`!````0$``(0$```!`0``B`0` -M``$!``",!````0$``)`$```!`0``E`0```$!``"8!````0$``)P$```!`0`` -MH`0```$!``"D!````0$``*@$```!`0``K`0```$!``"P!````0$``+0$```! -M`0``N`0```$!``"\!````0$``,`$```!`0``Q`0```$!``#(!````0$``,P$ -M```!`0``T`0```$!``#4!````0$``-@$```!`0``W`0```$!``#@!````0$` -M`.0$```!`0``Z`0```$!``#L!````0$``/`$```!`0``]`0```$!``#X!``` -M`0$``/P$```!`0````4```$!```$!0```0$```@%```!`0``#`4```$!```0 -M!0```0$``!0%```!`0``&`4```$!```<!0```0$``"`%```!`0``)`4```$! -M```H!0```0$``"P%```!`0``,`4```$!```T!0```0$``#@%```!`0``/`4` -M``$!``!`!0```0$``$0%```!`0``2`4```$!``!,!0```0$``%`%```!`0`` -M5`4```$!``!8!0```0$``%P%```!`0``8`4```$!``!D!0```0$``&@%```! -M`0``;`4```$!``!P!0```0$``'0%```!`0``>`4```$!``!\!0```0$``(`% -M```!`0``A`4```$!``"(!0```0$``(P%```!`0``D`4```$!``"4!0```0$` -M`)@%```!`0``G`4```$!``"@!0```0$``*0%```!`0``J`4```$!``"L!0`` -M`0$``+`%```!`0``M`4```$!``"X!0```0$``+P%```!`0``P`4```$!``#$ -M!0```0$``,@%```!`0``S`4```$!``#0!0```0$``-0%```!`0``V`4```$! -M``#<!0```0$``.`%```!`0``Y`4```$!``#H!0```0$``.P%```!`0``\`4` -M``$!``#T!0```0$``/@%```!`0``_`4```$!````!@```0$```0&```!`0`` -M"`8```$!```,!@```0$``!`&```!`0``%`8```$!```8!@```0$``!P&```! -M`0``(`8```$!```D!@```0$``"@&```!`0``+`8```$!```P!@```0$``#0& -M```!`0``.`8```$!```\!@```0$``$`&```!`0``1`8```$!``!(!@```0$` -M`$P&```!`0``4`8```$!``!4!@```0$``%@&```!`0``7`8```$!``!@!@`` -M`0$``&0&```!`0``:`8```$!``!L!@```0$``'`&```!`0``=`8```$!``!X -M!@```0$``'P&```!`0``@`8```$!``"$!@```0$``(@&```!`0``C`8```$! -M``"0!@```0$``)0&```!`0``F`8```$!``"<!@```0$``*`&```!`0``I`8` -M``$!``"H!@```0$``*P&```!`0``L`8```$!``"T!@```0$``+@&```!`0`` -MO`8```$!``#`!@```0$``,0&```!`0``R`8```$!``#,!@```0$``-`&```! -M`0``U`8```$!``#8!@```0$``-P&```!`0``X`8```$!``#D!@```0$``.@& -M```!`0``[`8```$!``#P!@```0$``/0&```!`0``^`8```$!``#\!@```0$` -M```'```!`0``!`<```$!```(!P```0$```P'```!`0``$`<```$!```4!P`` -M`0$``!@'```!`0``(`<```$!```D!P```0$``"@'```!`0``+`<```$!```P -M!P```0$``#0'```!`0``.`<```$!```\!P```0$``$`'```!`0``1`<```$! -M``!(!P```0$``$P'```!`0``4`<```$!``!4!P```0$``%@'```!`0``7`<` -M``$!``!@!P```0$``&0'```!`0``:`<```$!``!L!P```0$``'`'```!`0`` -M=`<```$!``!X!P```0$``'P'```!`0````@```$!```$"````0$```@(```! -M`0``#`@```$!```0"````0$``!0(```!`0``&`@```$!```<"````0$``"`( -M```!`0``)`@```$!```H"````0$``"P(```!`0``,`@```$!```T"````0$` -M`#@(```!`0``/`@```$!``!`"````0$``$0(```!`0``2`@```$!``!,"``` -M`0$``%`(```!`0``5`@```$!``!8"````0$``%P(```!`0``8`@```$!``!D -M"````0$``&@(```!`0``;`@```$!``!P"````0$``'0(```!`0``>`@```$! -M``!\"````0$``(`(```!`0``A`@```$!``"("````0$``(P(```!`0``D`@` -M``$!``"<"````0$``*`(```!`0``I`@```$!``"H"````0$``*P(```!`0`` -ML`@```$!``"T"````0$``+@(```!`0``O`@```$!``#`"````0$``,0(```! -M`0``R`@```$!``#,"````0$``-`(```!`0``U`@```$!``#8"````0$``-P( -M```!`0``X`@```$!``#D"````0$``.@(```!`0``[`@```$!``#P"````0$` -M`/0(```!`0``^`@```$!``#\"````0$````)```!`0``!`D```$!```("0`` -M`0$```P)```!`0``$`D```$!```4"0```0$``!@)```!`0``'`D```$!```@ -M"0```0$``"0)```!`0``*`D```$!```L"0```0$``#`)```!`0``-`D```$! -M```X"0```0$``#P)```!`0``0`D```$!``!$"0```0$``$@)```!`0``3`D` -M``$!``!0"0```0$``%0)```!`0``6`D```$!``!<"0```0$``&`)```!`0`` -M9`D```$!``!H"0```0$``&P)```!`0``<`D```$!``!T"0```0$``'@)```! -M`0``?`D```$!``"`"0```0$``(0)```!`0``B`D```$!``","0```0$``)`) -M```!`0``E`D```$!``"8"0```0$``)P)```!`0``H`D```$!``"D"0```0$` -M`*@)```!`0``K`D```$!``"P"0```0$``+0)```!`0``N`D```$!``"\"0`` -M`0$``,`)```!`0``Q`D```$!``#("0```0$``,P)```!`0``T`D```$!``#4 -M"0```0$``-@)```!`0``W`D```$!``#@"0```0$``.0)```!`0``Z`D```$! -M``#L"0```0$``/`)```!`0``]`D```$!``#X"0```0$``/P)```!`0````H` -M``$!```$"@```0$```@*```!`0``#`H```$!```0"@```0$``!0*```!`0`` -M&`H```$!```<"@```0$``"`*```!`0``)`H```$!```H"@```0$``"P*```! -M`0``,`H```$!```T"@```0$``#@*```!`0``/`H```$!``!`"@```0$``$0* -M```!`0``2`H```$!``!,"@```0$``%`*```!`0``5`H```$!``!8"@```0$` -M`%P*```!`0``8`H```$!``!D"@```0$``&@*```!`0``;`H```$!``!P"@`` -M`0$``'0*```!`0``>`H```$!``!\"@```0$``(`*```!`0``A`H```$!``"( -M"@```0$``(P*```!`0``D`H```$!``"4"@```0$``)@*```!`0``G`H```$! -M``"@"@```0$``*0*```!`0``J`H```$!``"L"@```0$``+`*```!`0``M`H` -M``$!``"X"@```0$``+P*```!`0``P`H```$!``#$"@```0$``,@*```!`0`` -MS`H```$!``#0"@```0$``-0*```!`0``V`H```$!``#<"@```0$``.`*```! -M`0``Y`H```$!``#H"@```0$``.P*```!`0``\`H```$!``#T"@```0$``/@* -M```!`0``_`H```$!````"P```0$```0+```!`0``"`L```$!```,"P```0$` -M`!`+```!`0``%`L```$!```8"P```0$``!P+```!`0``(`L```$!```D"P`` -M`0$``"@+```!`0``+`L```$!```P"P```0$``#0+```!`0``.`L```$!```\ -M"P```0$``$`+```!`0``1`L```$!``!("P```0$``$P+```!`0``4`L```$! -M``!4"P```0$``%@+```!`0``7`L```$!``!@"P```0$``&0+```!`0``:`L` -M``$!``!L"P```0$``'`+```!`0``=`L```$!``!X"P```0$``'P+```!`0`` -M@`L```$!``"$"P```0$``(@+```!`0``C`L```$!``"0"P```0$``)0+```! -M`0``F`L```$!``"<"P```0$``*`+```!`0``I`L```$!``"H"P```0$``*P+ -M```!`0``L`L```$!``#@#P```0$``.0/```!`0``Z`\```$!``#L#P```0$` -M`/`/```!`0``]`\```$!``#X#P```0$``/P/```!`0```!````$!```$$``` -M`0$```@0```!`0``#!````$!```0$````0$``!00```!`0``&!````$!```< -M$````0$``"`0```!`0``)!````$!```H$````0$``"P0```!`0``,!````$! -M```T$````0$``#@0```!`0``/!````$!``!`$````0$``$00```!`0``2!`` -M``$!``!,$````0$``%`0```!`0``5!````$!``!8$````0$``%P0```!`0`` -M8!````$!``!D$````0$``&@0```!`0``;!````$!``!P$````0$``'00```! -M`0``>!````$!``!\$````0$``(`0```!`0``A!````$!``"($````0$``(P0 -M```!`0``D!````$!``"4$````0$``)@0```!`0``G!````$!``"@$````0$` -M`*00```!`0``J!````$!``"L$````0$``+`0```!`0``M!````$!``"X$``` -M`0$``+P0```!`0``P!````$!``#$$````0$``,@0```!`0``S!````$!``#0 -M$````0$``-00```!`0``V!````$!``#<$````0$``.`0```!`0``Y!````$! -M``#H$````0$``.P0```!`0``\!````$!``#T$````0$``/@0```!`0``_!`` -M``$!````$0```0$```01```!`0``"!$```$!```,$0```0$``!`1```!`0`` -M%!$```$!```8$0```0$``!P1```!`0``(!$```$!```D$0```0$``"@1```! -M`0``+!$```$!```P$0```0$``#01```!`0``.!$```$!```\$0```0$``$`1 -M```!`0``1!$```$!``!($0```0$``$P1```!`0``4!$```$!``!4$0```0$` -M`%@1```!`0``7!$```$!``!@$0```0$``&01```!`0``:!$```$!``!L$0`` -M`0$``'`1```!`0``=!$```$!``!X$0```0$``'P1```!`0``@!$```$!``"$ -M$0```0$``(@1```!`0``C!$```$!``"0$0```0$``)01```!`0``F!$```$! -M``"<$0```0$``*`1```!`0``I!$```$!``"H$0```0$``*P1```!`0``L!$` -M``$!``"T$0```0$``+@1```!`0``O!$```$!``#`$0```0$``,01```!`0`` -MR!$```$!``#,$0```0$``-`1```!`0``U!$```$!``#8$0```0$``-P1```! -M`0``X!$```$!``#D$0```0$``.@1```!`0``[!$```$!``#P$0```0$``/01 -M```!`0``^!$```$!``#\$0```0$````2```!`0``!!(```$!```($@```0$` -M``P2```!`0``$!(```$!```4$@```0$``!@2```!`0``'!(```$!```@$@`` -M`0$``"02```!`0``*!(```$!```L$@```0$``#`2```!`0``-!(```$!```X -M$@```0$``#P2```!`0``0!(```$!``!$$@```0$``$@2```!`0``3!(```$! -M``!0$@```0$``%02```!`0``6!(```$!``!<$@```0$``&`2```!`0``9!(` -M``$!``!H$@```0$``&P2```!`0``<!(```$!``!T$@```0$``'@2```!`0`` -M?!(```$!``"`$@```0$``(02```!`0``B!(```$!``",$@```0$``)`2```! -M`0``E!(```$!``"8$@```0$``)P2```!`0``H!(```$!``"D$@```0$``*@2 -M```!`0``K!(```$!``"P$@```0$``+02```!`0``N!(```$!``"\$@```0$` -M`,`2```!`0``Q!(```$!``#($@```0$``,P2```!`0``T!(```$!``#4$@`` -M`0$``-@2```!`0``W!(```$!``#@$@```0$``.02```!`0``Z!(```$!``#L -M$@```0$``/`2```!`0``]!(```$!``#X$@```0$````3```!`0``!!,```$! -M```($P```0$```P3```!`0``$!,```$!```4$P```0$``!@3```!`0``'!,` -M``$!```@$P```0$``"03```!`0``*!,```$!```L$P```0$``#`3```!`0`` -M-!,```$!```X$P```0$``#P3```!`0``0!,```$!``!$$P```0$``$@3```! -M`0``3!,```$!``!0$P```0$``%03```!`0``6!,```$!``!<$P```0$``.`3 -M```!`0``Y!,```$!``#H$P```0$``.P3```!`0``\!,```$!``#T$P```0$` -M`/@3```!`0``_!,```$!````%````0$```04```!`0``"!0```$!```,%``` -M`0$``!`4```!`0``%!0```$!```8%````0$``!P4```!`0``(!0```$!```D -M%````0$``"@4```!`0``+!0```$!```P%````0$``#04```!`0``.!0```$! -M```\%````0$``$`4```!`0``1!0```$!``!(%````0$``$P4```!`0``4!0` -M``$!``!4%````0$``%@4```!`0``7!0```$!``!@%````0$``&04```!`0`` -M:!0```$!``!L%````0$``'`4```!`0``?!0```$!``"`%````0$``(04```! -M`0``B!0```$!``",%````0$``)`4```!`0``E!0```$!``"8%````0$``)P4 -M```!`0``H!0```$!``"D%````0$``*@4```!`0``K!0```$!``"P%````0$` -M`+04```!`0``N!0```$!``"\%````0$``,`4```!`0``Q!0```$!``#(%``` -M`0$``,P4```!`0``T!0```$!``#4%````0$``-@4```!`0``W!0```$!``#@ -M%````0$``.04```!`0``Z!0```$!``#L%````0$``/`4```!`0``]!0```$! -M``#X%````0$``/P4```!`0```!4```$!```$%0```0$```@5```!`0``#!4` -M``$!```0%0```0$``!05```!`0``&!4```$!```<%0```0$``"`5```!`0`` -M)!4```$!```H%0```0$``"P5```!`0``,!4```$!```T%0```0$``#@5```! -M`0``/!4```$!``!`%0```0$``$05```!`0``2!4```$!``!,%0```0$``%`5 -M```!`0``5!4```$!``!8%0```0$``%P5```!`0``8!4```$!``!D%0```0$` -M`&@5```!`0``;!4```$!``!P%0```0$``'05```!`0``>!4```$!``!\%0`` -M`0$``(`5```!`0``A!4```$!``"(%0```0$``(P5```!`0``D!4```$!``"4 -M%0```0$``)@5```!`0``G!4```$!``"@%0```0$``,`5```!`0``Q!4```$! -M``#(%0```0$``,P5```!`0``T!4```$!``#4%0```0$``-@5```!`0``W!4` -M``$!``#@%0```0$``.05```!`0``Z!4```$!``#L%0```0$``/`5```!`0`` -M]!4```$!``#X%0```0$``/P5```!`0```!8```$!```$%@```0$```@6```! -M`0``#!8```$!```0%@```0$``!06```!`0``&!8```$!```<%@```0$``"`6 -M```!`0``)!8```$!```H%@```0$``"P6```!`0``,!8```$!```T%@```0$` -M`#@6```!`0``/!8```$!``!`%@```0$``$06```!`0``2!8```$!``!,%@`` -M`0$``%`6```!`0``5!8```$!``!8%@```0$``%P6```!`0``8!8```$!``!D -M%@```0$``&@6```!`0``;!8```$!``!P%@```0$``'06```!`0``>!8```$! -M``!\%@```0$``(`6```!`0``A!8```$!``"(%@```0$``(P6```!`0``D!8` -M``$!``"4%@```0$``)@6```!`0``G!8```$!``"@%@```0$``*06```!`0`` -MJ!8```$!``"L%@```0$``+`6```!`0``M!8```$!``"X%@```0$``+P6```! -M`0``P!8```$!``#$%@```0$``,@6```!`0``S!8```$!``#0%@```0$``-06 -M```!`0``V!8```$!``#<%@```0$``.`6```!`0``Y!8```$!``#H%@```0$` -M`.P6```!`0``\!8```$!``#T%@```0$``/@6```!`0``_!8```$!````%P`` -M`0$```07```!`0``"!<```$!```,%P```0$``!`7```!`0``%!<```$!```8 -M%P```0$``!P7```!`0``(!<```$!```D%P```0$``"@7```!`0``+!<```$! -M```P%P```0$``#07```!`0``.!<```$!```\%P```0$``$`7```!`0``1!<` -M``$!``!(%P```0$``$P7```!`0``4!<```$!``!4%P```0$``%@7```!`0`` -M7!<```$!``!@%P```0$``&07```!`0``:!<```$!``!L%P```0$``'`7```! -M`0``=!<```$!``!X%P```0$``'P7```!`0``@!<```$!``"$%P```0$``(@7 -M```!`0``C!<```$!``"0%P```0$``)07```!`0``F!<```$!``"<%P```0$` -M`*`7```!`0``I!<```$!``"H%P```0$``*P7```!`0``L!<```$!``"T%P`` -M`0$``+@7```!`0``O!<```$!``#`%P```0$``,07```!`0``R!<```$!``#, -M%P```0$```P8```!`0``$!@```$!```4&````0$``!@8```!`0``'!@```$! -M```@&````0$``"08```!`0``*!@```$!```L&````0$``#`8```!`0``-!@` -M``$!```X&````0$``#P8```!`0``0!@```$!``!$&````0$``$@8```!`0`` -M3!@```$!``!0&````0$``%08```!`0``6!@```$!``!<&````0$``&`8```! -M`0``9!@```$!``!H&````0$``&P8```!`0``<!@```$!``!T&````0$``'@8 -M```!`0``?!@```$!``"`&````0$``(08```!`0``B!@```$!``",&````0$` -M`)`8```!`0``E!@```$!``"8&````0$``)P8```!`0``H!@```$!``"D&``` -M`0$``*@8```!`0``K!@```$!``"P&````0$``+08```!`0``N!@```$!``"\ -M&````0$``,`8```!`0``Q!@```$!``#(&````0$``,P8```!`0``T!@```$! -M``#4&````0$``-@8```!`0``W!@```$!``#@&````0$``.08```!`0``Z!@` -M``$!``#L&````0$``/`8```!`0``]!@```$!``#X&````0$``/P8```!`0`` -M`!D```$!```$&0```0$```@9```!`0``#!D```$!```0&0```0$``!09```! -M`0``&!D```$!``"``````08``(P````!`0``D`````$!``"4`````0$``)@` -M```!`0``G`````$!``"@`````0$``*0````!`0``J`````$!``"L`````0$` -M`+`````!`0``M`````$!``"X`````0$``+P````!`0``P`````$C`0#$```` -M`0$``,@````!`0``S`````$!``#0`````0$``-0````!`0``V`````$!``#< -M`````0$``.`````!`0``Y`````$!``#H`````0$``.P````!`0``\`````$! -M``#T`````0$``/@````!`0``_`````%%```$`0```0$```@!```!`0``#`$` -M``$!```0`0```0$``!0!```!`0``&`$```'7``"``0```08``(P!```!`0`` -MD`$```$!``"4`0```0$``)@!```!`0``G`$```$!``"@`0```0$``*0!```! -M`0``J`$```$!``"L`0```0$``+`!```!`0``M`$```$!``"X`0```0$``+P! -M```!`0``P`$```$Y`0#$`0```0$``,@!```!`0``S`$```$!``#0`0```0$` -M`-0!```!`0``V`$```$!``#<`0```0$``.`!```!`0``Y`$```$!``#H`0`` -M`0$``.P!```!`0``\`$```$!``#T`0```0$``/@!```!`0``_`$```$$`@`$ -M`@```0$```@"```!`0``#`(```$!```0`@```0$``!0"```!`0``&`(```%` -M`0!\`@```0$``(`"```!`0``A`(```$!``"0`@```0$``)0"```!`0``F`(` -M``$!``#$`@```0$``,P"```!`0``V`(```$!``#@`@```0$``.P"```!`0`` -M]`(```$!`````P```0$```@#```!`0``%`,```$!```<`P```0$``"@#```! -M`0``,`,```$!```\`P```0$``$0#```!`0``4`,```$!``!4`P```0$``%@# -M```!`0``9`,```$!``!H`P```0$``&P#```!`0``>`,```$!``"``P```0$` -M`(P#```!`0``E`,```$!``"@`P```0$``*0#```!`0``J`,```$!``"T`P`` -M`0$``+@#```!`0``O`,```$!``#(`P```0$``,P#```!`0``T`,```$!``#< -M`P```0$``.`#```!`0``Y`,```$!``#P`P```0$``/0#```!`0``^`,```$! -M```$!````0$```P$```!`0``&`0```$!```@!````0$``"P$```!`0``-`0` -M``$!``!`!````0$``$@$```!`0``5`0```$!``!<!````0$``&@$```!`0`` -M<`0```$!``!\!````0$``(0$```!`0``D`0```$!``"8!````0$``*0$```! -M`0``K`0```$!``"X!````0$``,`$```!`0``S`0```$!``#0!````0$``-0$ -M```!`0``X`0```$!``#D!````0$``.@$```!`0``]`0```$!``#\!````0$` -M``@%```!`0``$`4```$!```<!0```0$``"0%```!`0``,`4```$!```X!0`` -M`0$``$0%```!`0``3`4```$!``!8!0```0$``%P%```!`0``8`4```$!``!L -M!0```0$``'0%```!`0``@`4```$!``"$!0```0$``(@%```!`0``E`4```$! -M``"<!0```0$``*@%```!`0``K`4```$!``"P!0```0$``+P%```!`0``Q`4` -M``$!``#0!0```0$``-@%```!`0``Y`4```$!``#L!0```0$``/@%```!`0`` -M``8```$!```,!@```0$``!`&```!`0``%`8```$!```@!@```0$``"0&```! -M`0``*`8```$!```T!@```0$``#P&```!`0``2`8```$!``!0!@```0$``%P& -M```!`0``9`8```$!``!P!@```0$``'@&```!`0``A`8```$!``",!@```0$` -M`)@&```!`0``H`8```$!``"L!@```0$``+0&```!`0``P`8```$!``#(!@`` -M`0$``-0&```!`0``W`8```$!``#H!@```0$``/`&```!`0``_`8```$!```` -M!P```0$```0'```!`0``$`<```$!```8!P```0$``"0'```!`0``+`<```$! -M```X!P```0$``$`'```!`0``3`<```$!``!4!P```0$``&`'```!`0``9`<` -E``$!``!H!P```0$``'0'```!`0``>`<```$!``!\!P```0$````` +M@/8$`,>"4`$```````"#PB2)1"0$B10DZ/S___^#Q`S#C78`@^P,BT0D$(M0 +M"(F"3`$``(V"2`$``,>"2`$``(#G!`#'@E`!````````@\(DB40D!(D4).C\ +M____@\0,PXUV`(/L#(M$)!"+4`B)@DP!``"-@D@!``#'@D@!````JP0`QX)0 +M`0```````(/")(E$)`2)%"3H_/___X/$#,.-=@"#[`R+1"00BU`(B8),`0`` +MC8)(`0``QX)(`0``8.L$`,>"4`$```````"#PB2)1"0$B10DZ/S___^#Q`S# +MC78`@^P,BT0D$(M0"(F"3`$``(V"2`$``,>"2`$``."N!`#'@E`!```````` +M@\(DB40D!(D4).C\____@\0,PXUV`(/L#(M$)!"+4`B)@DP!``"-@D@!``#' +M@D@!``#0JP0`QX)0`0```````(/")(E$)`2)%"3H_/___X/$#,.-=@"#[`R+ +M1"00BU`(B8),`0``C8)(`0``QX)(`0``\/D$`,>"4`$```````"#PB2)1"0$ +MB10DZ/S___^#Q`S#C78`@^P,BT0D$(M0"(F"3`$``(V"2`$``,>"2`$``!"? +M!`#'@E`!````````@\(DB40D!(D4).C\____@\0,PXUV`(/L#(M$)!"+4`B) +M@DP!``"-@D@!``#'@D@!``#`[00`QX)0`0```````(/")(E$)`2)%"3H_/__ +M_X/$#,.-=@"#[`R+1"00BU`(B8),`0``C8)(`0``QX)(`0``P*\$`,>"4`$` +M``````"#PB2)1"0$B10DZ/S___^#Q`S#C78`@^P,BT0D$(M0"(F"3`$``(V" +M2`$``,>"2`$``,"O!`#'@E`!````````@\(DB40D!(D4).C\____@\0,PXUV +M`(/L#(M$)!"+4`B)@DP!``"-@D@!``#'@D@!```@L@0`QX)0`0```````(/" +M)(E$)`2)%"3H_/___X/$#,.-=@"#[`R+1"00BU`(B8),`0``C8)(`0``QX)( +M`0``<,4$`,>"4`$```````"#PB2)1"0$B10DZ/S___^#Q`S#C78`@^P,BT0D +M$(M0"(F"3`$``(V"2`$``,>"2`$``"#[!`#'@E`!````````@\(DB40D!(D4 +M).C\____@\0,PXUV`(/L#(M$)!"+4`B)@DP!``"-@D@!``#'@D@!``#`Q@0` +MQX)0`0```````(/")(E$)`2)%"3H_/___X/$#,.-=@"#[`R+1"00BU`(B8), +M`0``C8)(`0``QX)(`0``T.X$`,>"4`$```````"#PB2)1"0$B10DZ/S___^# +MQ`S#C78`@^P,BT0D$(M0"(F"3`$``(V"2`$``,>"2`$``.#%!`#'@E`!```` +M````@\(DB40D!(D4).C\____@\0,PXUV`(/L#(M$)!"+4`B)@DP!``"-@D@! +M``#'@D@!``#@S@0`QX)0`0```````(/")(E$)`2)%"3H_/___X/$#,.-=@"# +M[`R+1"00C5`4QT`4P`(%`(E`&,=`'`````")5"0$BP"#P"2)!"3H_/___X/$ +M#,.#[`R+1"00C5`8QT`8<,\$`(E`',=`(`````")5"0$BT`$BP"#P"2)!"3H +M_/___X/$#,.-M@````"-O"<`````4X/L"(M<)!"`>V8!=`X/MD-G@\`!/`*( +M0V=V1(M#/(E$)`2+`P68````B00DZ/S___^-0Q3'0Q00QP0`B5L8QT,<```` +M`(E$)`2+`X/`)(D$).C\____@\0(6\.-="8`BT,\QD-F`,=`$`````"+0SR- +M4!3'0!P`````QT`@`````,=`)`````")4!2)4!C'0"@`````B5PD$(/$"%OI +M_/___XVV`````(V\)P````"#[`R+3"00BT$LBQ"#Z@&%THD0=2N-013'012@ +M:@0`B4D8QT$<`````(E$)`2+`8/`+(D$).C\____@\0,PXGVB4PD$(/$#.G\ +M____C70F`(/L'(M,)"")7"00B70D%(E\)!B+02B+D&0!``"+>@0YQP^$BP`` +M`(7_=`GVAQP"```!=1R)3"0@BUPD$(MT)!2+?"08@\0<Z63___^-="8`BW$L +M#[9998D,).C\____BT<@P.L$@^,#B40D!(L'P>,$B00DZ/S___\/ME!EB7@H +MQD!D!(EP+(/BSPG:B%!EQD!F`,=`<)!I!`"+7"00B40D((MT)!2+?"08@\0< +MZ?S___^+>@CI;?___XVV`````(/L'(ET)!B+="0@B5PD%(M>+(M#"(D$)/]3 +M!(E<)`2+!@6P````B00DZ/S___^+7"04B70D((MT)!B#Q!SI_/___XVT)@`` +M``"-O"<`````5U93@>S`````B[PDT````(V$))0```"+=RB+7EB+5E")1"0$ +MBT9<B00D_U(\C40D'(M3!(E$)`2+0PB)!"3_4AR-A"2T````B00DC8PDN``` +M`(G8C90DO````.B`R?__]H0DG@````)T:8N4)+0````/MH0DH````(!_9@&- +M!`)T7HE$)`B+A"2\````QP0DT`L``(E$)`3H_/___XET)`3'!"0:````Z/S_ +M__^+1RR)1"0$BP:#P%")!"3H_/___XD\).C\____@<3`````6UY?PXN4)+@` +M``#KE8UT)@")1"0(BX0DO````,<$)*@+``")1"0$Z/S___^)="0$QP0D&P`` +M`.C\____ZZ"-=@"#[!R+5"0@B5PD%(ET)!B+6BR+0P2+,(D4).C\____QT,8 +M\`,%`(E;'(/&),=#(`````"#PQB)7"0$B30DZ/S___^+7"04BW0D&(/$',.) +M]H/L+(E<)!R+7"0PB70D((E\)"2);"0HBRN+<RR+A2@!``"+?@B)1"04BT8$ +MB40D&(![9@%T$@^V0V>#P`$\`HA#9P^&OP```(M#/(E$)`2-A9@```")!"3H +M_/___XD<).C\____BT0D%(7_BU`<#X1]````BX=8`@``B0*#P`%T=HM$)!B- +M5@R`B$D!```$@(])`0``!("G2`$``/V)MV0!``")L&0!``"+31B-112)1@R- +M1AB)51C'1AA@EP0`B4X0B78<QT8@`````(D1B40D!(U%)(D$).C\____BUPD +M'(MT)""+?"0DBVPD*(/$+,/'`O____^+1"04QT`L_____^EZ____BT,\QD-F +M`,=`$`````"+0SR-4!3'0!P`````QT`@`````,=`)`````")4!2)4!C'0"@` +M````BW0D((E<)#"+?"0DBUPD'(ML)"B#Q"SI_/___XVT)@````!55U93@^PL +MBT0D0(MH&(M0'(M%`(E4)!R)!"3H_/___XE$)"B+1"1`#[9-!`^V707'0"S_ +M____#[95!H#Z"P^'W````(!]!PL/A](````/ML&)1"0@#[;"`T0D((/X"WX' +MN0L````HT8M4)!R(2@0/MDT'#[;3#[;!`="#^`M^![L+````*,N+3"0<BT0D +M'(/!"(E,)"2`>`0`B%@%#X2N````,?_K$HM,)!R#QP&)^CA1!`^&F````(GZ +MBTPD*`^V\HGPP>`)`T0D),=$)!0!````QT0D#`$```")1"00BT$XBU$\#[9- +M!@4``/[_@]+_)0``_O\QVP'($=HQVP'PB40D!(M$)"@1VHE4)`B)!"3H_/__ +M_X7`=(V-M@````"+3"1`B<B#P##'03"0700`B4DTQT$X`````(E$)`2+00B) +M!"3H_/___X/$+%M>7UW#BT0D'(!X!0!T>C'_ZP^0BT0D'(/'`8GY.$@%=F>+ +M3"0@B?H/MO+'1"04`0```,=$)`P!````C00.P>`)`T0D)(E$)!"+1"0HBT@X +MBU@\#[9%!X'!`/C__X/3_S'2`<$1TS'2`?$1TXM4)"B)3"0$B5PD"(D4).C\ +M____A<!TD.E+____BU0D0,="+`````#I.____XUT)@"-O"<`````55=64X/L +M+(M$)$"+>!B+!XD$).C\____BU0D0(E$)"2+0AS'``````#'0BP`````@'\' +M``^$T0```(G&@\8$B70D*(!_!@`/A(T````Q[>L*@\4!B>@X1P9V?P^V1P>) +MZC';#[;2BW0D),=$)`P!````B50D((E$)!2)T,'@"0-$)"B)1"00#[=/!(M& +M.(M6/(DT)(/!"X/3``4``/[_@]+_)0``_O\!P8M$)"`1TS'2`<$1TXE,)`2) +M7"0(Z/S___^%P'2+BU0D0(M"',<`_____\="+/____^+5"1`B="#P##'0C"0 +M700`B5(TQT(X`````(E$)`2+0@B)!"3H_/___X/$+%M>7UW#C4<,B40D*.DL +M____B?:-O"<`````5E.#[!2+3"0@BUDL@'EF`8MS''0^@'E*`'4XQT,L____ +M_XD,).C\____C4,PQT,PD%T$`(E;-,=#.`````")1"0$BT,(B00DZ/S___^# +MQ!1;7L/'0RP`````#[9!2H3`B`9U'(M!3(E&!(M3((72=+&+1@2#P`B)`NNG +MD(UT)@`/MD%)B48$Z^&-M"8`````@>RL````B;0DH````(NT)+````")G"2< +M````B;PDI````(FL)*@```"+1A@/ME`"#[8(@/H##X0D`0``@/H$#X0\`0`` +M@'@!!78'@'@%_I!T8@^VP3'2Z'3"__^)PXM&"(M6*,=&*&!S!`")L$P!``") +MD$@!``"+4P3'@%`!````````B70D!(M#"(D$)/]2?(N<))P```"+M"2@```` +MB[PDI````(NL)*@```"!Q*P```##C5`+B50D%`^V>`LQTHM&%(E$)!@/ML'H +M`,+__X7`B<-T3(UL)""-M@````"+0P2+D(0```"%TG08BT,(B00D_]*)^CC0 +M#X?T````B?HHPHG7BQN%VW07BU,$B6PD!(M#"(D$)/]2'(!\)#,`=+Z+1B#' +M``````"-1C#'1BS_____QT8PD%T$`(EV-,=&.`````")1"0$BT8(B00DZ/S_ +M___I-____XVV``````^V0`2-E"28````B80DF`````^VP>A6P?__B</IW?[_ +M_XU0`XE4)!`QT@^V>`,/ML'H.L'__X7`B<-TCXUL)"#K*XGZ*,*)UXL;A=L/ +MA'G___^+4P2);"0$BT,(B00D_U(<@'PD,P`/A5[___^+0P2+D(0```"%TG3. +MBT,(B00D_]*)^CC0=KJ+1"00B!#I:_[__XM$)!2($(M&((M4)!B)$.E7_O__ +MB?:-O"<`````@^P,BT0D$(M("(E`-,=`.`````"+D4@!``#'0#"0700`B5`H +M@\`PB40D!(D,).C\____@\0,PXGVC;PG`````%575E.![)P```"+-0````"+ +ME"2P````QT0D&`````"%]HM"&(L`B40D$(M"''1P@\`$,?^)1"04C6PD)(M> +M"(7;=0OK2H/'`8L;A=MT08M3!(EL)`2+0PB)!"3_4AR`?"0W`'3CBX0DL``` +M`#EP"'74@T0D&`&+5"04BT0D&#E$)!").G8/@\($B50D%.NVBS:%]G6GBY0D +ML````(M"'(M4)!B)$(N$)+````"+E"2P````QT`PD%T$`(E`-,=`.`````"# +MP#")1"0$BT((B00DZ/S___^!Q)P```!;7E]=P^L-D)"0D)"0D)"0D)"0D%93 +M@^P4BS5``@``BUPD(#LU1`(``(M+'`^$I0```&O6+(N"8`(``(D!BX)D`@`` +MB4$$BX)H`@``B4$(BX)L`@``B4$,BX)P`@``B4$0BX)T`@``B4$4BX)X`@`` +MB4$8BX)\`@``B4$<BX*``@``B4$@BX*$`@``B4$DBX*(`@``B4$HC48!B<+! +M^A_!ZAP!T(/@#RG0HT`"``"-0S#'0S"0700`B5LTQT,X`````(E$)`2+0PB) +M!"3H_/___X/$%%M>P\=#+/_____KSHUT)@"#["PQTHE<)!R+7"0PB70D((E\ +M)"2);"0HBT,8BV@$BW`(BW@,BP#HE+[__X7`B<%T?H7V=&"+0`3'1"00```` +M`(E\)`R+4QB#PA")5"0(B6PD!(M1"(D4)/^0F````(U#,,=#,)!=!`")6S3' +M0S@`````B40D!(M#"(D$).C\____BUPD'(MT)""+?"0DBVPD*(/$+,.+0`3' +M1"00`0```(E\)`R+4QSKH8VV`````,=#+/[____KIHVT)@````!6,=)3@>R4 +M````BYPDH````(M#&(L`Z.6]__^+<QR%P(G!=%&+4`2-1"0<B40D!(M!"(D$ +M)/]2'`^W1"0@9HD&#[=$)")FB48"C4,PQT,PD%T$`(E;-,=#.`````")1"0$ +MBT,(B00DZ/S___^!Q)0```!;7L/'0RS^____Z\N)]H/L+(E\)"2+?"0PB70D +M((EL)"B)7"0<BT<8BQB-<`2+1QR)'"2#ZP&)1"08Z/S___^#^_Z)Q1G`(<4/ +MMD8*A,!U!P^V1@[`Z`0/ML`/MDX-#[96#(E$)`@/MD8.@^`/B40D!(U&?(D$ +M)(GHZ/#$__^+3"08QT<PD%T$`(E_-,='.`````")`8U',(E1!(E$)`2+1PB) +M!"3H_/___XM<)!R+="0@BWPD)(ML)"B#Q"S#@^PLB70D((MT)#");"0HB5PD +M'(E\)"2+?AB+1AR+'XUO!(E$)!B)'"2#ZP'H_/___X/[_@^V30&)PAG`(=`/ +MME<$@\=TQT0D"``````/MET"B3PD@^,/B5PD!.A0Q/__BTPD&,=&,)!=!`") +M=C3'1C@`````B0&-1C")402)1"0$BT8(B00DZ/S___^+7"0<BW0D((M\)"2+ +M;"0H@\0LPU575E.#[`R+1"0@BU0D((M`'(G%B40D"(M"&(/%!(LXA?\/CGX` +M``"+-0````"%]G1T,=N+5@R-3@PYRG4(ZUZ+$CG*=%B-@MC]__^`>`@!=>Z+ +M@%@"``")1)T`@\,!.=]UW8G8BU0D"(D"BT0D((M4)"#'0#"0700`B4`TQT`X +M`````(/`,(E$)`2+0@B)!"3H_/___X/$#%M>7UW#BS:%]G60Z[TQP.N[C;8` +M````55=64X/L'(M$)#"+5"0PBT`<B40D%(/`!(E$)!B+0AB+*(7M#X[(```` +MBST`````A?\/A+H````Q]HM7#(U?##G:=1;IF0```(VT)@````"+$CG:#X2( +M````C8+8_?__BT@,A<EUZ0^V2`B`^01V8HN(9`$``(7)=`N#>00`=`4Y00AT +MRXN`6`(``(M,)!B)!+&#Q@$Y[G6WB?"+3"0PBU0D%,=!,)!=!`")`HG(@\`P +MB4DTQT$X`````(E$)`2+00B)!"3H_/___X/$'%M>7UW#@.D!=;[V0$P"=+B- +M=@#KHXL_A?\/A4[___^-="8`ZZ<QP.NEC78`C;PG`````%575E.![)P```"+ +MO"2P````BT<8BU`(BW`$BP")5"08BU<<B50D%#'2Z%*Z___'1RS_____A<") +MPW0]C6PD))"+0P2+D(0```"%TG0.BT,(B00D_](YQGQ-*<:+&X7;=!>+4P2) +M;"0$BT,(B00D_U(<@'PD-P!TR(U',,=',)!=!`")?S3'1S@`````B40D!(M' +M"(D$).C\____@<2<````6UY?7<.+5"04BT,$QT0D#`````")="0$B50D$(M4 +M)!B)5"0(BU,(B10D_Y"4````A<!UH\='+`````#KFHGV55=64X'LG````(N\ +M)+````"+1QB+5QR+<`2+`(E4)!@QTNAYN?__QT<L_____X7`B<-T0#'MBT,$ +MBY"$````A=)T$(M#"(D$)/_2.<9\4RG&`<6+&X7;=!N-1"0DBU,$B40D!(M# +M"(D$)/]2'(!\)#<`=,*-1S#'1S"0700`B7\TQT<X`````(E$)`2+1PB)!"3H +M_/___X'$G````%M>7UW#BT,$BY"4````A=)TQ8M$)!C'1"00`````,=$)`@` +M````B70D!(E$)`R+0PB)!"3_TH7`=9V+5"08#[9"`CS_=`4!Z(A"`L='+``` +M``#K@^L-D)"0D)"0D)"0D)"0D%575E.![)P```"+O"2P````BT<8BU<<BW`$ +MBP")5"08,=+H>;C__\='+/____^%P(G#=$`Q[8M#!(N0A````(72=!"+0PB) +M!"3_TCG&?%,IQ@'%BQN%VW0;C40D)(M3!(E$)`2+0PB)!"3_4AR`?"0W`'3" +MC4<PQT<PD%T$`(E_-,='.`````")1"0$BT<(B00DZ/S___^!Q)P```!;7E]= +MPXM#!(N0D````(72=,6+1"08B70D!(E$)`B+0PB)!"3_TH7`=:V+5"08#[9" +M`CS_=`4!Z(A"`L='+`````#KD^L-D)"0D)"0D)"0D)"0D%575E.![)P```"+ +MO"2P````BT<8BU<<BW`$BP")5"08,=+HB;?__\='+/____^%P(G#=$`Q[8M# +M!(N0A````(72=!"+0PB)!"3_TCG&?%,IQ@'%BQN%VW0;C40D)(M3!(E$)`2+ +M0PB)!"3_4AR`?"0W`'3"C4<PQT<PD%T$`(E_-,='.`````")1"0$BT<(B00D +MZ/S___^!Q)P```!;7E]=PXM#!(N0C````(72=,6+1"08B70D!(E$)`B+0PB) +M!"3_TH7`=:V+5"08#[9"`CS_=`4!Z(A"`L='+`````#KD^L-D)"0D)"0D)"0 +MD)"0D%575E.![)P```"+O"2P````BT<8BU<<BW`$BP")5"08,=+HF;;__\=' +M+/____^%P(G#=$`Q[8M#!(N0A````(72=!"+0PB)!"3_TCG&?%,IQ@'%BQN% +MVW0;C40D)(M3!(E$)`2+0PB)!"3_4AR`?"0W`'3"C4<PQT<PD%T$`(E_-,=' +M.`````")1"0$BT<(B00DZ/S___^!Q)P```!;7E]=PXM#!(N0B````(72=,6+ +M1"08B70D!(E$)`B+0PB)!"3_TH7`=:V+5"08#[9"`CS_=`4!Z(A"`L='+``` +M``#KD^L-D)"0D)"0D)"0D)"0D%4QTE=64X'LC````(N\)*````"+1QB+`.BS +MM?__,=*%P(G#=$$Q]HUL)!20C70F`(M#!(N0A````(72=`J+0PB)!"3_T@'& +MBQN%VW07BU,$B6PD!(M#"(D$)/]2'(!\)"<`=,R)\HM'',=',)!=!`")?S3' +M1S@`````B1"-1S")1"0$BT<(B00DZ/S___^!Q(P```!;7E]=PXVT)@````!3 +M@^P(BUPD$(M#&(M+'(M0!(L`Z!BW__^%P'0'QT,L_____XU#,,=#,)!=!`") +M6S3'0S@`````B40D!(M#"(D$).C\____@\0(6\.0C70F`%<QTE93@>R0```` +MB[0DH````(M&&(M>'(L`Z,&T__^%P`^$E````#'2C;0F`````,8$&@"#P@&# +M^D1U](U,)!B)RL8"`(V\))````"#P@$Y^G7OBU`$B4PD!(M`"(D$)/]2'`^V +MA"2%````B`,/MH0DA@```(A#`0^VA"2'````B$,"#[:$)(@```"(0P.-1C#' +M1C"0700`B78TQT8X`````(E$)`2+1@B)!"3H_/___X'$D````%M>7\/'1BS_ +M____Z\J-M@````"-OP````"#[!R)7"04BUPD((ET)!B+<QSHF;7__\=#,)!= +M!`")6S3'0S@`````B0:-0S")1"0$BT,(B00DZ/S___^+7"04BW0D&(/$',.0 +MC;0F`````%:ZP0,``%.#[!2+="0@BUX8B=CH6+/__X7`=30/MD,@H@````"- +M1C#'1C"0700`B78TQT8X`````(E$)`2+1@B)!"3H_/___X/$%%M>PXGVNLX# +M``")V.@4L___A<!U$@^V0R"-!,5P_O__HP````#KL[K?`P``B=CH\K+__X7` +M=$2Z_`,``(G8Z.*R__^%P'5"BT8(QX!(`0``4(@$`(FP3`$``(V02`$``,>` +M4`$```````"#P"2)5"0$B00DZ/S____K@@^V0R"B`````.E1____NAD$``") +MV.B0LO__A<!U#XM&",>`2`$``*"!!`#KK,=&+/_____I)O___Y"#[`R+1"00 +MBU`<QT`PD%T$`(E`-,=`.`````#'`@```0*-4#")5"0$BT`(B00DZ/S___^# +MQ`S#B?:-O"<`````55=64X/L/(ML)%"+11B+50C&1"0T!X!X(`&->@P9P(/` +M`HA$)#B+<@PY_G0AC78`C9[8_?__]H,<`@```70&@'L(`70XBS8Y_G7EBU4( +MQT4L`````(U%,,=%,)!=!`");33'13@`````B40D!(D4).C\____@\0\6UY? +M7<.-5"04BT-0B50D!(M37(D4)/]0/`^V1"0C.D0D.'2IC40D-(M34(E$)`2+ +M0UR)!"3_4F#KDXVT)@````"-O"<`````@^P<B5PD#(M<)"")?"04B70D$(EL +M)!B+`XMS+(E$)`B+1AB+*(DL).C\____@'MF`8G'=!(/MD-G@\`!/`*(0V</ +MAHD```"+0SR)1"0$BT0D"`68````B00DZ/S___^)'"3H_/___XM&##TI_P`` +M=%4].?\``'1.A?]T#(L7.U0D"`^$F@```(U&,,=&+/[____'1C"0700`B78T +MQT8X`````(E$)`2+1@B)!"3H_/___XM<)`R+="00BWPD%(ML)!B#Q!S#BT8< +MB2CKJXUV`(M#/,9#9@#'0!``````BT,\C5`4QT`<`````,=`(`````#'0"0` +M````B5`4B5`8QT`H`````(MT)!")7"0@BWPD%(M<)`R+;"08@\0<Z?S___^- +M@D@!``#'@D@!```0EP0`B;),`0``QX)0`0```````(E$)`2-0B2)!"3H_/__ +M_^E<____C78`C;PG`````(/L#(L0B00D@<(L`0``B50D!.C\____@\0,PY"- +M="8`@^P,BT0D$(M`&(L`B00DZ/S___^#Q`SKQXVT)@````"#[`R+1"00BT`8 +MBP")!"3H_/___X/$#.NGC;0F`````(/L#(M$)!"+0!B`>`0!BQ!T!(/$#,.) +M%"3H_/___X/$#.EZ____C78`C;PG`````%575E.#[`R+;"0@BT48BQ!F]\(` +M_W5%B=>!Y_\```!^.S'VNP0```#K"8VV`````(M%&(L$&(D$).C\____A<!T +M$(!X"`1V"HN09`$``(72=!*#Q@&#PP0Y_G74@\0,6UY?7</H!____^OGD(UT +M)@"#[`R+1"00BT`8BP")!"3H_/___X/$#.GD_O__C70F`(/L#(M$)!")="0( +MB5PD!(M`&(M8!(L`B00DZ/S___^#^PV)QG0O@_L!=!B#^P2)]G01@_L'=`R+ +M7"0$BW0D"(/$#,.)\(M<)`2+="0(@\0,Z8O^__^%P'3>BX!D`0``A<!TU(M0 +M!(72=`V)T.AO_O__BX9D`0``BT`(A<!TN8M<)`2+="0(@\0,Z5+^__^)]H/L +M#(M$)!")="0(B5PD!(M`&(M8!(L`B00DZ/S___^)'"2)QNC\____B<.)\.@> +M_O__B=B+="0(BUPD!(/$#.D,_O__C;8`````C;\`````@^P,BT0D$(M`&(L` +MB00DZ/S___^#Q`SIY/W__XUT)@"#[`R+1"00BT`8BP")!"3H_/___X/$#.G$ +M_?__C70F`%.#[`B+1"00BT`8BP")!"3H_/___X7`B<-T-8N`9`$``(7`="N+ +M4`2%TG0-B=#HC?W__XN#9`$``(M`"(7`=""#Q`A;Z7?]__^-M"8`````B=B# +MQ`A;Z67]__^0C70F`(/$"%O#C70F`(V\)P````!64X/L!(M$)!"+<!B#Q@2` +M?@T`=!XQVXM$GGR#PP&)!"3H_/___^@E_?__#[9G8=^2#Q`1;7L.-M"8` +M````5E.#[`2+1"00BW`8@\8$@'X!`'0>,=N+1)YP@\,!B00DZ/S____HY?S_ +M_P^V1@$YV'?D@\0$6U[#C;0F`````%93@^P$BT0D$(MP&(!^#0!T'C';BT2> +M?(/#`8D$).C\____Z*C\__\/MD8-.=AWY(/$!%M>PXUV`(V\)P````!64X/L +M!(M$)!"+<!B`?@$`=!XQVXM$GG"#PP&)!"3H_/___^AH_/__#[9&`3G8=^2# +MQ`1;7L.-=@"-O"<`````5E.#[`2+1"00BW`8@'X!`'0>,=N+1)YH@\,!B00D +MZ/S____H*/S__P^V1@$YV'?D@\0$6U[#C78`C;PG`````%93@^P$BT0D$(MP +M&(L.A<ET&C';BT2>!(/#`8D$).C\____Z.C[__\Y'G?H@\0$6U[#C;0F```` +M`(V\)P````!6NOP#``!3@^P$BW0D$(M&&.C*J___A<!U+HM&"(M8#(/`##G# +M="&-@]C]___V@!P"```!=`:`>`@!=!*+1@B+&X/`##G8==^#Q`1;7L/H??O_ +M_^OGC70F`(V\)P````!55U93@>R,````BX0DH````(MH"(M0&(MU#(U]#(E4 +M)`@Y_G0?C9[8_?__]H,<`@```70*@'L(`0^$N@```(LV.?YUX8M4)`@/MD(@ +MH@````"+70B%VW1=C70D#.L(B?:+&X7;=$^+4P2)="0$BT,(B00D_U(<]D0D +M'1!TXXV=S````(E<)`2)+"3H_/___\>%S`````"'DP/'A=0`````````B:W8 +M````B5PD!(DL).C\____BX0DH````(N4)*````#'0"P`````QT`PD%T$`(E` +M-,=`.`````"#P#")1"0$BT((B00DZ/S___^!Q(P```!;7E]=PXD<).C\____ +MBU0D",:$)(0````(#[9"((B$)(@```"-A"2$````BU-0B40D!(M#7(D$)/]2 +M8.D+____C;8`````C;PG`````(/L'(E<)`R)="00B<:);"08B=6)?"04BT`@ +MB40D!(L&B00DZ/S___^%P(G##X3E`0``QD!D`X%]#$+_``")<"@/E,`/MOB% +M_P^%E````(M5&#'`@'H*]`^4P(7`#X64````A?\/A!8!```/MD(2/`$/A(\! +M```\`@^$:0$```^V0@^(0U,/MT((9HE#3`^W0@IFB4-.#[="#&:)0U`/MD(. +MB$-2#[="!&:)0T@/MT(&9HE#2@^W0A!FB4-4B6LLQT-P@.@$`(D<).C\____ +MBUPD#(MT)!"+?"04BVPD&(/$',.+51@QP(!Z#_0/E,"%P`^$;/___XL&@\!0 +MB00DZ/S___^%P(G�Y`0``A?\/A;L```"+11B#P!#'1"0(``(``(E$)`2) +M-"3H_/___XU%,(!+902)<UC&0U/T9L=#5`$`B7,LQT-P\&H$`,=%+`````#' +M13"0700`B6TTQT4X`````(E$)`2+10B)!"3H_/___^E-____C;0F``````^V +M0@P\`71N/`)T3P^V0@J(0U,/MD(&9HE#3`^V0@=FB4-.#[9""&:)0U`/MD() +MB$-2#[9"!&:)0T@/MD(%9HE#2@^V0@MFB4-4Z>W^__^0BT48@\`4Z4#___^` +M2V4$C4(0B4-8ZZ6`2V4$C4(4B4-8Z8C^__^`2V4"BT4<@\`0B4-8ZX>`2V4" +MBT4<@\`4B4-8Z6?^__^-13#'12S]____QT4PD%T$`(EM-,=%.`````")1"0$ +MBT4(B00DZ/S____IB/[__XU%,,=%+/_____'13"0700`B6TTQT4X`````(E$ +M)`2+10B)!"3H_/___XD<).C\____Z5'^__^-=@!3@^P(BUPD$(M#&(L`B00D +MZ/S___^)VH/$"%OI8/W__U.#[`B+7"00BT,8BP")!"3H_/___XG:@\0(6^E` +M_?__@^P<B6PD&(ML)"")7"0,B70D$(E\)!2+?1B+!XD$).C\____B<:+0"") +M1"0$BP:)!"3H_/___X7`B<,/A(L```"):"R)<"C&0&0"#[9'!#P!=&T\`G1O +M#[9'!XU+4(U7"(E4)`2)#"2)1"0(Z/S___\/MD<'B$-(BT<8B4-,#[9%%(/H +M"(3`B$-)=`F+11R#P`B)0V#'0VR`6@0`QT-PP'`$`(MT)!")7"0@BWPD%(M< +M)`R+;"08@\0<Z?S___^0@$ME`NN1@$ME!.N+C44PQT4L_?___\=%,)!=!`") +M;33'13@`````B40D!(M%"(D$).C\____BUPD#(MT)!"+?"04BVPD&(/$',.- +MM@````!64X/L9(M<)'"-3"0@BT,8BW,<BU`$BP#HHZC__X7`=##'0RS_____ +MC4,PQT,PD%T$`(E;-,=#.`````")1"0$BT,(B00DZ/S___^#Q&1;7L.+1"0@ +MB0:+1"0DB48$BT0D*(E&"(M$)"R)1@SKNHGV5U93@^P0BWPD((`]``````&+ +M7QB+=QS'1RP`````#X8<`0``NLX#``")V.C0I?__A<`/A(D```"ZWP,``(G8 +MZ+RE__^%P`^%UP```(L#B0:+0P2)1@2+0PB)1@B+0PR)1@R+0Q")1A"+0Q2) +M1A2+0QB)1AB+0QS&1D0`QD9!`,9&0`*)1AP/MD-%B$9%#[8%`````(A&((U' +M,,=',)!=!`")?S3'1S@`````B40D!(M'"(D$).C\____@\006UY?PXL#B0:+ +M0P2)1@2+0PB)1@B+0PR)1@R+0Q")1A"+0Q2)1A2+0QB)1AB+0QS&1D0`QD9! +M`,9&0`&)1AP/MD-%B$9%BQ4`````@<*0`0``B=#!^!_!Z!T!T,'X`XA&(.ET +M____NOP#``")V.C1I/__A<!T<<='+/_____I6/___Y"ZP0,``(G8Z+2D__^% +MP`^%T/[__XL#B0:+0P2)1@2+0PB)1@B+0PR)1@R+0Q")1A"+0Q2)1A2+0QB) +M1AB+0QS&1D0`QD9!`,9&0`*)1AP/MD-%B$9%#[8%`````(A&(.GS_O__BP.) +M!HM#!(E&!(M#"(E&"(M##(E&#(M#$(E&$(M#%(E&%(M#&(E&&(M#',9&1`#& +M1D$`QD9``8E&'`^V0T6(1D4/M@4`````B$8@Z:/^__^-M@````"-OP````!5 +M5XG'5E.![%P"``")5"0DB$PD(P^V0@_&1"0P`83`>`^`?P@&QD0D,``/A!@# +M``"-1"10Q@``C90D4`(``(/``3G0=>^+7"0D#[:72`$```^V0PN(1S0/MD,. +MB$<Q#[9+#K@!````T^!FB4<RB="#R`2(AT@!``#V0P\##X0G`@``B="#R`6( +MAT@!``"+1P3'ATP!````````QX=0`0```````(!X!P`/A3@"``"+7"0DC8]4 +M`0``BU0D)`^V=S"+0Q"#PA"%]HF'5`$``(M"!(E!!(M""(E!"(M"#(E!#,=$ +M)"C_____QT0D+/____]^5#'MZPL/MG<P@\4!.>Y^18M<KTB+4Q@Y5"0LB7L, +MBT,4<A!W!CE$)"AV"(E$)"B)5"0L@'L(!'7,@'PD(P"+<R1U<H!\)#``=78/ +MMG<P@\4!.>Y_NX!_"`</A,P!``"+;P2`?04`#X5E`0``#[9%!HM,)"R+7"0H +M*<:)\HGPP?H?#Z_:#Z_.]V0D*`'9C101B4<4B5<8BU0D)`^V0@^#X!S!^`*( +MAQT"``"!Q%P"``!;7E]=PX!\)#``#X22````C50D4,=$)!0!````B50D$,=$ +M)`P!````BT,PBU`(BT`$B30DB50D"(E$)`3H_/___X7`#X4,____@+PD3@(` +M`*H/A'@!```QP(!\)%!2#X11`0``A<`/A.G^__^-1"10QT0D%`````")1"00 +MQT0D#`$```"+0S"+4`B+0`2)-"2)5"0(B40D!.C\____Z;/^___'1"1(```` +M`,=$)$P`````C40D4,=$)!0`````B40D$,=$)`P!````BT,PBU`(BT`$`T0D +M2!-4)$R)-"2)1"0$B50D".C\____@T0D2`&+1"1(@U0D3`"#\`(+1"1,#X1/ +M_O__ZZK'ATP!``#_____QX=0`0``_____^GL_?__#[=/,HM$)"B+5"0L]]F) +MRR'(P?L?(=J)1"0HB50D+.EW_O__@\H'@'\("HB72`$```^%M?W__P^V3S`Q +MP#'2@^D!]L$@#Y3`#Y7"T^+3X(E'.(E7/.F2_?__@'\P``^$8?[__S')BT2/ +M2(M0&(M`%`%'%`^V1S`15QB#P0$YR'_EZ3_^___1Z(/@`8A$)##IVOS__X!\ +M)%%%#X6D_O__QD0D4$7&1"114NF=_O__@+PD3P(``%4/A7K^__^P`<:$)$X" +M``!5QH0D3P(``*KI9?[__XUT)@"-O"<`````53'25U93@>R,````B[PDH``` +M`(M'&(MW'(L`Z)"@__^%P(G##X1O`0``,<"-="8`Q@0P`(/``8/X6'7TC6PD +M%(GHQ@``C90DC````(/``3G0=>^+4P2);"0$BT,(B00D_U(<#[9$)"J-5@2( +M1@,/MD0D*(@&#[9$)"F(1@&+1"10B48$BT0D5(E"!(M$)%B)0@B+1"1<B4(, +MBT0D8(E"$(M$)&2)0A2+1"1HB4(8BT0D;(E"'(M$)'")0B"+1"0LC58HB48H +MBT0D,(E"!(M$)#2)0@B+1"0XB4(,BT0D/(E"$(M$)$")0A2+1"1$B4(8BT0D +M2(E"'(M$)$R)0B`/MD0D%(A&4`^V1"05B$91#[9$)!:(1E(/MD0D%XA&4XM# +M#(E&3(![1`!U:0^V1"0KB$8"BQN%VW46ZRN-M@`````/MD0D*P!&`HL;A=MT +M%XM3!(EL)`2+0PB)!"3_4AR`?"0G`'3;C4<PQT<PD%T$`(E_-,='.`````") +M1"0$BT<(B00DZ/S___^!Q(P```!;7E]=PX!.`P3KD<='+/_____KPXVT)@`` +M``"-O"<`````53'25U93@>R,````B[PDH````(M'&(MW'(L`Z.">__^%P(G# +M#X0Y`0``,<"-="8`Q@0P`(/``8/X3'7TC6PD%(GHQ@``C90DC````(/``3G0 +M=>^+4P2);"0$BT,(B00D_U(<#[9$)"J-5@2(1@,/MD0D*(@&#[9$)"F(1@&+ +M1"10B48$BT0D5(E"!(M$)%B)0@B+1"1<B4(,BT0D8(E"$(M$)&2)0A2+1"1H +MB4(8BT0D;(E"'(M$)'")0B"+1"0LC58HB48HBT0D,(E"!(M$)#2)0@B+1"0X +MB4(,BT0D/(E"$(M$)$")0A2+1"1$B4(8BT0D2(E"'(M$)$R)0B`/MD0D*XA& +M`HL;A=MU$NLGB?8/MD0D*P!&`HL;A=MT%XM3!(EL)`2+0PB)!"3_4AR`?"0G +M`'3;C4<PQT<PD%T$`(E_-,='.`````")1"0$BT<(B00DZ/S___^!Q(P```!; +M7E]=P\='+/_____KR8UT)@"#[!R)="04B<:)7"00B7PD&(M8!(M0"(M#'(L[ +MB4(<@*-)`0``\\=#'/____^+0AR`HDD!``#SB40D!(M'!(D$).C\____BT,@ +MB3PDB40D!.C\____B5@HB7`LQD!D!,=`<`!L!`")!"3H_/___XM<)!"+="04 +MBWPD&(/$',.)]E.#[`B+7"00BT,8BP")!"3H_/___XD$).C\____C4,PQT,P +MD%T$`(E;-,=#.`````")1"0$BT,(B00DZ/S___^#Q`A;PXUT)@"-O"<````` +M4X/L"(M$)!"+0`2+&(D$).C\____BX,H`0``C5`PQT`PD%T$`(E`-,=`.``` +M``")5"0$BT`(B00DZ/S___^#Q`A;PXVV`````(V\)P````"#[!R+5"0@B5PD +M$(ET)!2)?"08@WHL_8MZ)`^$\P```/:'20$```C&AQ<"````='2+0BR#^/T/ +MA+8"``"%P`^%MP(``(N'9`$``#'),?:+4%P/MUAD@>+__P\`.?$/@U,!``#' +MA\0!``#@8@0`B;_(`0``QX?``0```````(V'P`$``(E$)`2+!XM`!(D$).C\ +M____BUPD$(MT)!2+?"08@\0<PP^VMT@!``#WQA`````/A(D```"+0BR#^/T/ +MA-@!``"%P`^%W0$``(M/!`^V1S"+GU`!```/MDD&*<B+CTP!``")PL'Z'P^O +MV`^ORO>G3`$```'9C101.U<8#X+=`0``#X8I`@``N@,```#I<@$```^VAQ<" +M```\`@^/_O[__X/``8B'%P(``,>'Q`$``(";!`")O\@!``#I/?____?&(``` +M``^%M````/?&0`````^$//____?&`0```(GV#X0G`@``BUHLA=L/A?P!``"+ +M3P0/MD<PBY]0`0``#[9)!BG(BX],`0``B<+!^A\/K]@/K\KWITP!```!V8T4 +M$3M7&'(A=P4[1Q1R&KH)````Z<\```!W#CG:C;8`````#X*=_O__]H=(`0`` +M4(UV``^$5?___XN'3`$``#'2)?__/P"#^@`/AS____^#^'\/AS;____I:?[_ +M_XVV`````(M2++@+````A=)U4(GRL`J$TGA(BT\$#[9',(N?4`$```^V208I +MR(N/3`$``(G"P?H?#Z_8#Z_*]Z=,`0```=F-%!$[5Q@/@F$!``!W"3M'%`^" +M5@$``+@,````@^9?B?*(ET@!``")?"0$B00DZ/S____VAT@!```(#X04_O__ +MN@$```")^(M<)!"+="04BWPD&(/$'.G5PO__@#T```````^%E````(/F[XGP +MB(=(`0``B7PD!,<$)`@```#H_/___^G,_?__QT(L`````(E\)`3'!"0<```` +MZ/S___^0]H=)`0``"`^$V?[__^E2_?__@#T``````'7-BX=D`0``@*=)`0`` +M]XM`"("@20$``/>)?"0$QP0D%````.C\____BUPD$(MT)!2+?"08@\0<PSM' +M%'*IZ<W]___'0BP`````B7PD!,<$)!P```#H_/___P^WAQ0"```QT@&'3`$` +M`!&74`$``.E>_?__@^:_B?"(AT@!``")?"0$QP0D#P```.C\____Z0?]__^# +MYK^)\HB72`$``(E\)`3'!"0.````Z/S____IY_S__XN'Z`$``(`X``^$"O[_ +M_X/FWXGPB(=(`0``Z;3^__^-="8`@^P4B70D"(MT)!R);"00BVPD&(E<)`2) +M?"0,C88(`@``B8;D`0``C886`@``B8;H`0``BX98`@``]H9)`0``"(FNU`$` +M`,>&X`$```````#'ANP!````````B;;P`0``QX;T`0``L)<$`(F&"`(``'16 +MQX;8`0``*O\``,>&W`$```0```"+AKP!```QTH/``8/X90^=PH/J`2'0B8:\ +M`0``C8;,`0``BUPD!(EL)!B+="0(B40D'(M\)`R+;"00@\04Z?S___\/MKY( +M`0``]\=P````#X3-````B?B#X*`\H`^$Z````(M6!`^V1C")%"0/MDH&BYY0 +M`0``*<B+CDP!``")PL'Z'P^OV`^ORO>F3`$```'9C101.U88#X.=````]\<0 +M````N"/_``!U$(/G((GX/`$9P/?0!27_``"+EE`!``"+CN0!``")AM@!``"+ +MADP!``")40B+%"2)002`>@4`#X21````BY;D`0``#[=&,F:)0@SVAD@!```@ +MQX;<`0``#@````^$]O[__XN&Z`$``,8``,>&X`$```$```#IWO[__XM<)`2+ +M="0(BWPD#(ML)!"#Q!3#C70F`'<..T84#X)8____D(UT)@"-ALP!``#'AO@! +M````````BUPD!(E$)!B+="0(BWPD#(ML)!"#Q!3I-/K__XM&%(M6&"N&3`$` +M`!N64`$``(N.Y`$``(/Z`'8.N(````!FB4$,Z5+___\]@````';PB?;KYXVT +M)@````"-O"<`````@^P,BT0D$(M`)(V0P`$``,>`Q`$``(";!`")@,@!``") +M5"0$BP"+0`2)!"3H_/___X/$#,.-="8`C;PG`````(/L'(ET)!B+="0@B5PD +M%(M>#(7;#X3N````#[:#20$``*@$='NH"'5GBY-D`0``A=)T78M"!(7`=%:+ +M2@B%R71/@(A)`0``"(M""("(20$```B-@\`!``#'@\0!``"`FP0`B9O(`0`` +MB40D!(L#BT`$B00DZ/S___^)7"0$QP0D$@```.C\____C;0F`````(M<)!2+ +M="08@\0<PXUT)@`/MI9(`0``]L(0=>2%VW0$J`AUW/;"8'77@^+W@\H0C8;` +M`0``B)9(`0``QX;$`0``@)L$`(FVR`$``(E$)`2+!HM`!(D$).C\____B70D +M!,<$)`0```#H_/___XM<)!2+="08@\0<PXGSZ0O___^055=64X/L#(ML)""+ +M11B+6`2+`(D$).C\____@_L.B<9V,L=%+/[___^-13#'13"0700`B6TTQT4X +M`````(E$)`2+10B)!"3H_/___X/$#%M>7UW#_R2=C!@``)"-="8`B<:+1@R% +MP'7W@'X(!8UV``^$"08``("F2`$``+^)="0$QP0D#@```.C\____BUX<A=L/ +MB&T&``"+3@RZ`0```.D$!```BT`,A<!T#?:`20$```P/A6G___]F]X9(`0`` +M<`P/A5K____VAAP"```!#X1-____@'X(!0^%.P8``(!^,``/A)`&```Q_Y"- +M="8`ZP\/MD8P@\<!.?@/CG@&``"+7+Y(A=MTZ8!["`1VX_:#2`$``!!UVHM3 +M1(M#0(E4)`2)!"3H_/___XM3!`^V4@8YT`^-Z?[__P^V@T@!``#'@\0!``"` +MFP0`B9O(`0``@^#W@\@0B(-(`0``C8/``0``B40D!(L#BT`$B00DZ/S___^) +M7"0$QP0D!````.C\____Z6K___^`>`@%#X2=!```@*!(`0``YXE$)`3'!"0% +M````Z/S___^+3@RZ`0```.GS`@``]H!(`0``$`^$7_[___:`'`(```$/A%+^ +M__^`H$@!``#EBU9$BT!`QX9,`0``_____\>&4`$``/____^)5CR)1CB)="0$ +MQP0D!@```.C\____BTX,@*9(`0``_H7)=$V`>3``=$<QVXM$F4B%P'0O]H`< +M`@```70F@'@(!'8@#[:02`$```^V@4@!``"#X@&#X/X)T*@!B(%(`0``=0L/ +MMD$P@\,!.=A_OHM.#(M&0`M&1(/X`1G2@\("Z30"``"+0`R%P'0-]H!)`0`` +M#`^%F?W__V;WAD@!``!P#`^%BOW___:&'`(```$/A'W]__^`?@@%#X7R!``` +M@'XP``^$</W__\=$)`@`````ZQ.#1"0(`0^V1C`[1"0(#XY3_?__BT0D"(M\ +MADB%_W3A@'\(!';;]H=(`0``('72BTXXBUX\BT9`BU9$"<@)VHE4)`2)!"3H +M_/___XM6!`^V4@8YT`^-!OW__XV'P`$``("/2`$``"#'ATP!````````QX=0 +M`0```````,>'Q`$``(";!`")O\@!``")1"0$BP>+0`2)!"3H_/___XE\)`3' +M!"0)````Z/S____I4/___X"@2`$``-^)1"0$QP0D"@```.C\____Z9K\__^` +MH$@!``#?Z8[\___V@!P"```!#X1Z_/__BT!`"T9$#X5N_/__#[>&2`$``&8E +M<0QF@^@!#X59_/__@'X(!0^%4`0``(!^,`!T+3'_BUR^2(7;=!B`>P@$=A(/ +MMH-(`0``@^!!+`$/A'\$```/MD8P@\<!.?A_U8"F2`$``/?I%_S__X"@2`$` +M`+3'@$P!``#_____QX!0`0``_____\=`.`````#'0#P`````B40D!,<$)!`` +M``#H_/___XM>#(7;#X1[`@``#[9+,(7)#XYQ`@``,=(Q]HM$DTB%P'0B]H`< +M`@```709@'@(!'83]H!(`0```70*O@$```"0C70F`(/"`3G*=<^%]@^$-`(` +M`(M+#(G>N@$```"#^@,/E<"$P`^$,P$``(7)#X0K`0``B<Z+20SI&0$``("@ +M2`$``-^)1"0$QP0D"P```.C\____Z43[__]F]X9(`0``<`B+@&0!```/A2C[ +M__^%P`^$(/O__X!X9P`/A1;[__^+4`2+0`CV@AP"```!#X0#^___]H`<`@`` +M`0^$]OK__X"B20$``.^`H$D!``#O@(I)`0``"("(20$```B-AL`!``#'AL0! +M``"`FP0`B;;(`0``B40D!(L&BT`$B00DZ/S___^)="0$QP0D$@```.C\____ +MZ:7Z__^+B&0!```/MX!(`0``9B5P"&8]``@/A8/Z__^%R0^$>_K__XM!!(M1 +M"("@20$``/>`HDD!``#WB70D!,<$)!,```#H_/___XM.#+H!````Z='^__^+ +M2`RZ`P```#'`A,`/A<W^__^`CD@!```$@_H"#X3M````BX9D`0``A<`/A.T` +M``"+4`2+6`B%TG0(B10DZ/S___^%VP^$!_K__XD<).C\____Z?KY__\QVX!X +M,`!U&.E<^O__C70F``^V1C"#PP$YV`^.2?K__XM$GDB%P'3I@'@(!';C]H!( +M`0``$'3:@*!(`0``YXE$)`3'!"0%````Z/S____KP8!^,``/A`3Z__\QVY"- +M="8`ZP\/MD8P@\,!.=@/CNSY__^+1)Y(A<!TZ8!X"`1VX_:`2`$``$!TVH"@ +M2`$``+^)1"0$QP0D#@```.C\____Z\&)\X"C2`$``/Z)'"3H_/___^FX_?__ +MB30DZ/S___^0Z33Y__^)-"3H_/___XUV`.DD^?__B30DZ/S___^+3@RZ`0`` +M`.F/_?__BU9$BT9`B50D!(D$).C\____BU8$#[92!CG0#XWG^/__C8;``0`` +M@(Y(`0``$,>&Q`$``(";!`")ML@!``")1"0$BP:+0`2)!"3H_/___XET)`3' +M!"0$````Z/S___^+1D"`ID@!``#W"T9$#X0,^?__Z/S___^+3@RZ`0```(E& +M*.D(_?__BTXXBUX\BT9`BU9$"<@)VHE4)`2)!"3H_/___XM6!`^V4@8YT`^- +M5OC__XV&P`$``(".2`$``"#'ADP!````````QX90`0```````,>&Q`$``("; +M!`")ML@!``")1"0$BP:+0`2)!"3H_/___XET)`3'!"0)````Z/S____I!OC_ +M_XV&P`$``(".2`$``$#'ADP!````````QX90`0```````,>&Q`$``(";!`") +MML@!``")1"0$BP:+0`2)!"3H_/___XET)`3'!"0-````Z/S____IC/O__P^V +M@T@!``#'@TP!````````QX-0`0```````,>#Q`$``(";!`"#R$"#X/>(@T@! +M``"-@\`!``")F\@!``")1"0$BP.+0`2)!"3H_/___XE<)`3'!"0-````Z/S_ +M___I'OO__XUV`%575E.#[!R)1"00]H`<`@```74D#[:`20$``(/@!#P!&?^! +MYP#X__^!QP$(``"#Q!R)^%M>7UW#BTPD$`^VL4@!``#WQ@(````/A%4!``"+ +M1"00BTA`BUA$OP(```#WQ@$```!T!H'/`!```/?&$````'0#@\\$]\8@```` +M=`:!SP`!``"#YD!T!H'/``(``(G:"<H/A3L"``"+;"00#[:%'`(``*@$=`.# +MSQ"H`G0#@\]`BT0D$/:`2`$```AT!H'/@````(M4)!`/MH))`0``J`1T!H'/ +M``@``*@(=`:!SP`$``"+3"00#[9),(7)B4PD&`^.T@```#'MZVV+<42+64") +M\HG8]](C43SWT"-!.(G1"<%T`X//`O9$)!<!=`:!SP`0``#V1"07$'0#@\\$ +M]D0D%R!T!H'/``$``/9$)!=`=`:!SP`"``")\`G8=`.#SPCV1"07"'0&@<^` +M````@\4!.6PD&'1ABT0D$(M,J$B%R73K]H$<`@```73B@'D(!';<#[:12`$` +M`(A4)!>#X@(/A&3___^+64"+<43I<____XG/BTE`BU]$B<B)VO?0]](C5SPC +M1S@Q_XG5"<4/A)C^___ICO[___?'`@```'06]\<`$```C;0F``````^$V@`` +M`(/G_8MT)!B%]@^.#0$``(M4)!"+6DB%VP^$*O[__S'M]H,<`@```0^$&_[_ +M_X!["`0/AI,````/MG,PA?9^6XM#2(7`#X3^_?__]H`<`@```0^$\?W__XM0 +M,(M"!`M""`^%XOW__S')ZRB+1(M(A<`/A-+]___V@!P"```!#X3%_?__BU`P +MBT($"T((#X6V_?__@\$!.<YUT9"#Q0$Y;"08='F+3"00BURI2(7;#X25_?__ +M]H,<`@```0^$B/W__X!["`0/AVW___^+4S"+0@0+0@ATQ>EN_?__B?@E""`` +M`(/X"`^%&?___^D1____B0PD@\\(B5PD!.C\____BTPD$(M1!`^V4@8YT`^- +MH_W__X'/`"```.F8_?__@<\```!`Z2']__^-=@!55U93@^P,BWPD((M'&(M? +M"(LHB2PDZ/S___^+<PR#PPPYWHE$)`AU#>M/D(UT)@"+-CG>=$2-AMC]__^+ +M4`R%TG7MA>UU"?:`'`(```)U#SE$)`AT6?:`'`(```)TT8"@'`(``/V`>`@! +M=#F)!"3H_/___XLV.=YUO(U',,=',)!=!`")?S3'1S@`````B40D!(M'"(D$ +M).C\____@\0,6UY?7<.)!"3H_/___^N!]H`<`@```@^%=/___X"('`(```+K +MH8UT)@"-O"<`````@^Q,B7PD1(M\)%")7"0\B70D0(EL)$B+7QB+`X7`=4:+ +M1PCH>)?__\='+/S___^-1S#'1S"0700`B7\TQT<X`````(E$)`2+1PB)!"3H +M_/___XM<)#R+="1`BWPD1(ML)$B#Q$S#B00DC6L$Z/S___^)QHM#!*@!=6>H +M`@^%K@```*@$#X7^````J`B-="8`#X5*`0``J!`/A=8!``"H0`^%CP$``*@@ +M#X4B`@``]D9,$`^$=____XU$)!2+5E")1"0$BT9<B00D_U(\#[9$)"*(1DJ) +M-"3H_/___^E.____QD0D-``/MD4$B$0D.(U$)#2+5E")1"0$BT9<B00D_U)@ +MA<")1RQU&0^V1DR)PH/(D(/*@(A63`^V502(1DR(5DN+0P2H`@^$5?___XUV +M`,9$)#0$#[9%!<9$)#D`B$0D.(U$)#2+5E")1"0$BT9<B00D_U)@A<")1RQU +M(`^V5DV#RA"(5DV`?04`#Y7`@^+?@$Y,$,'@!0G"B%9-BT4`J`0/A`+____& +M1"0T!0^V10;&1"0Y`(A$)#B-1"0TBU90B40D!(M&7(D$)/]28(7`B4<L=2`/ +MME9-@\I`B%9-@'T&``^5P(/B?X!.3!#!X`<)PHA638M%`*@(#X2V_O__QD0D +M-`,/MD4'B$0D.(U$)#2+5E")1"0$BT9<B00D_U)@A<")1RQU(`^V5DV#R@2( +M5DV`?0<`#Y7`@^+W@$Y,$,'@`PG"B%9-BT4`J!`/A&O^___K/P^V10K'!"0` +M#```B40D!.C\____QT<L``````^V1DZ`?0H`#Y7"@^#^"="`3DP0B$9.BT4` +MJ"`/A#S^___K7,9$)#0"#[9%"(A$)#B-1"0TBU90B40D!(M&7(D$)/]28(7` +MB4<L=1\/ME9-@\H!B%9-@'T(``^5P(/B_8!.3!`!P`G"B%9-BT4`J$`/A.#] +M___I:O___Y"-="8`QD0D-`</MD4)B$0D.(U$)#2+5E")1"0$BT9<B00D_U)@ +MB4<L]D9,$`^$,?W__^FU_?__C;8`````C;PG`````(/L+(ET)""+="0PB5PD +M'(E\)"2);"0HBUX8BP.%P'5&BT8(Z&B4___'1BS\____C48PQT8PD%T$`(EV +M-,=&.`````")1"0$BT8(B00DZ/S___^+7"0<BW0D((M\)"2+;"0H@\0LPXD$ +M)(UK!.C\____]D,$`8G'=1?V1TP0=+")/"3H_/___^NFC;0F`````,9$)!0` +M#[9%!(A$)!B-1"04BU=0B40D!(M'7(D$)/]28(7`B48L=<$/MD=,B<*#R)"# +MRH"(5TP/ME4$B$=,B%=+ZZ:-M@````"-O"<`````@^P<B5PD#(M<)"")="00 +MB7PD%(EL)!B]`0```(M#&(L`B00DZ/S___^!>PP,_P``B<8/E,`/MDY,B<>) +MR,#H`B'%B?@/MM`YU70:C02]`````(/A^PG!@\D0B$Y,B30DZ/S___^-0S#' +M0S"0700`B5LTQT,X`````(E$)`2+0PB)!"3H_/___XM<)`R+="00BWPD%(ML +M)!B#Q!S#C70F`%57B<=64X'L+`(``(E,)"2(5"0K@'@P``^$B0```(G(,>V# +MZ`&)1"0@ZU*0C70F`(-\)"`!#X:%````@'LT`(MS)'4'@'PD*P!T#?:&'`(` +M``$/A8,```")'"3H_/____9&3!!T#?:&'`(```$/A?(```"#Q0&)Z#A','8J +MBURO2(7;=.X/MD,(/`1VHP^V5"0KB=B#Q0&+3"0DZ&#___^)Z#A','?6B3PD +MZ/S___^!Q"P"``!;7E]=PXVV`````#P$B=X/A,D```"#?"0D`G6BB30DZ/S_ +M___KF(U$)"S'1"04`0```(E$)!#'1"0,`0```(M#,(M0"(M`!(DT)(E4)`B) +M1"0$Z/S___^%P`^%1/___X"\)"H"``!5=%<QP(!\)"Q%='R%P`^$*?___XU$ +M)"S'1"04`````(E$)!#'1"0,`0```(M#,(M0"(M`!(DT)(E4)`B)1"0$Z/S_ +M___I\_[__XDT).C\____C78`Z?[^__^`O"0K`@``JG6?L`'&A"0J`@``JL:$ +M)"L"``!5ZXV+<R2)'"3H_/___^DG____@'PD+5(/A7G____&1"0L4L9$)"U% +MZ7+___^-=@"#[!R)7"0,BUPD((ET)!")?"04B6PD&(M#&(M3"(MH!(L`B50D +M"(D$).C\____B[!D`0``A?8/A(0```"+5@2%TG1=BXH@`@``A<ET1XM#',<` +M_____\=#+/____^-0S#'0S"0700`B5LTQT,X`````(E$)`2+0PB)!"3H_/__ +M_XM<)`R+="00BWPD%(ML)!B#Q!S#BY)4`@``A=)UKXGVBU8(A=)T&8NZ(`(` +M`(7_=9R+BE0"``"%R762D(UT)@#V@$@!``!P=80/MG@PA?]^)#')BU2(2(72 +M=!.`>@@$=@WV@D@!``!P#X5?____@\$!.?EUWH/E`P^4P87VB<]T4(M&!(7` +M=`H/MM$QR>@N_?__BT8(A<!T#(GY#[;1,<GH&_W__XM&$(M6#(E"!(D0BT0D +M"(ET)`2#Z(")!"3H_/___XM#',<``````.D,____#[;1,<GHY?S__^OFC78` +M55=6B<Y3@>RL````B50D'(E$)"#H_/___XM6>(E4)#2)1"0LBT9TB40D,`^V +M1@Z)PL#J!(32B%0D/W4,#[9."H3)B$PD/W1C#[96#8/@#XA&#H#Z0'<+@/H! +M=Q:`?@P'=!"X_____X'$K````%M>7UW#A-)T/#';ZQV-M@````#V@!P"```! +M=-D/ME8-@\,!#[;".=A^&XM$GGR)!"3H_/___X!X"`%TU^NWQD0D/P'KEH!^ +M#`AWJ@^V1@R-="8`_R2%R!@``,9$)#X,QD0D0`#'A"2,````#````(N$)(P` +M``")!"3H_/___X7`B40D5`^$:____X!\)#\!QT0D6`````!V,`^V1@TQT@^V +M3"0_9O?Q9H72#X5%____#[9$)$")!"3H_/___X7`B40D6`^$+/___XM4)#0+ +M5"0P#X68`P``@'PD/@</A"8$``#'1"0P_____S';QT0D-/____^`?@T`#X3> +M!P``BT2>?(D$).C\____BU`L.50D-(M`*'(0=P8Y1"0P=@B)1"0PB50D-`^V +M1@V#PP$YV'_-BU0D5`^V6@6$VW4:BT0D6(7`#X2U````BU0D6(!Z!0`/A*<` +M```/MD8.NO____^)P8M$)##3XHG3P?L?(="+5"0TB40D,(E&="':BUPD5(E4 +M)#2)5GB`>P4`=#4/MD8-]G0D/XM,)#0/MM`/MD,&*<*+1"0PB=7!_1\/K\H/ +MK\4!P8M$)##WXHTL$8E&=(EN>(M$)%B%P'0TBU0D6(!Z!0!T*@^V2@8/MD0D +M/XM>="G(BTYXB<+!^A\/K]H/K\CW9G0!V8T4$8E&=(E6>(M$)!R%P`^$@``` +M`(M,)!R`>0@$#X;=_?__BQF+1"0@B5PD)#G##X7+_?__]H$<`@```0^$OOW_ +M_XN!9`$``(7`#X6P_?__9O>!2`$``%`"#X6A_?__BU$8.U9XBT$4#X>2_?__ +M<@D[1G0/AX?]__^`9@_\BUPD'(!["`</A,T!``"`?@P'#X3;`0``,?^+A"2, +M````BU0D((E$)`2)%"3H_/___X7`B40D7`^$1OW__X!\)#X'#X0/!0``#[96 +M#<>$))0`````````A-)U).EU`@``D(/"`8F4))0````/ME8-#[;".X0DE``` +M``^.5@(``(N,))0```"+1(Y\B00DZ/S___^)PS'`A?]U$XML)!R%[70+BT0D +M'(G:Z'2$__^+5"0TB40D#(M$)#")'"2)5"0(B40D!.C\____BY0DE````(M, +M)%R%P(E$D4AUA8N$))0```"%P'X>,=N+5"1<BT2:2(/#`8D$).C\____.YPD +ME````'7DBTPD7(D,).C\____N/_____I;?S__\9$)#X'QD0D0`#'A"2,```` +M!P```.G(_/__@'X.!P^%1/S__\9$)#X*QD0D0`#'A"2,````"@```.FD_/__ +MQD0D/@G&1"1``,>$)(P````)````Z8K\___&1"0^",9$)$``QX0DC`````@` +M``#I</S__X#Z`@^&N@0``,9$)#X%QD0D/P+&1"1`!L>$)(P````%````Z4C\ +M__^`?"0_`\9$)#X%QX0DC`````4````9VX/C_H/#"(A<)$#I(OS__X!^#`</ +MA+X'``"+7"0<@'LP`0^$)?[__[\!````Z1W^__^+3"14#[99!83;=#H/MD8- +M]G0D/P^V408/ML`IT(G"P?H?B40D"(M$)#")5"0,BU0D-(D$)(E4)`3H_/__ +M_XE$)#")5"0TBU0D6(72#X1X_/__BU0D6(!Z!0`/A&K\__\/ME(&#[9$)#\I +MT(M4)#2)1"0(B<&+1"0PP?D?B4PD#(E4)`2)!"3H_/___XE$)#")5"0TZ3'\ +M__\QVX!^#0!U&NF'"````49T#[9%6>(/#`3G8#XZR`P``BT2>?(D$).C\ +M____BU`LBT`HB=$)P773Z:[Z__^+7"1<B%,PBU0D+(M$)%R)4"2)4"R`?"0_ +M`0^&2`8```^V3"1`,>T/MGPD/XF,))@```"+G"28````BT0D((E<)`2)!"3H +M_/___X7`B<,/A)L%``"+3"1<C52I2#')A?]^$(L"@\($B42+2(/!`3G/=?`/ +MMD0D/XA#,(M4)%R+0B2)\HE#)#'`@WPD'``/E,")P8E$)"B)V.C_U?__B>J) +MZ,'Z'XM,)%SW_P^V43")7(%(#[9$)#\!Z`'].-`/@G#___\/ML+V="0_/#^( +M03!W(8M<)%P/ML"-2`&-5(-(@\$!C4'_QP(`````@\($/#]V[8M$)%R)\HM, +M)"CHF]7__XM$)%P/ME`PA=)^3#'_BTPD7(M<N4B#QP&+3"14#[9!!HM,)%PI +MPHG0P?@?B50D"(E$)`R+012+41B)!"2)5"0$Z/S___^)4QB)0Q2+7"1<#[93 +M,#GZ?[:+7"0<A=L/A%$&``"+5"0<BTPD7(M"+(E!+(E,)`2)%"3H_/___X3` +M#X4;`@``BUPD'(M,)%P/MI,<`@``#[:!'`(``(/B!(/@^PG0B($<`@``#[:3 +M'`(``(/@_8/B`@G0B($<`@``#[9#-(A!-(M<)!R+4Q@[41B+0Q1W67(%.T$4 +M=U*+5"1<BT($@'@&`'4,BT)(BT`$@'@&`'0YBT0D'.B][/__B<>!YP(0```/ +MA9H!``"+3"0<BUPD7(M1&#M3&(M!%`^"@P$``'<).T,4#X)X`0``BT0D'("X +M'0(```(/A``&``"+5"0<BTPD7(M<)""+0AR)01R+0QR)V8/!'#G(=0_I8`,` +M`(L`.<@/A%8#``"-4/2+7"0<.5HH=>J+7"1<B5HHZ^&+?G2+;G@/ME8-B?D) +MZ0^5P(72?@^$P,>$))0`````````=3;'A"24`````````(3`=`TYE"24```` +M#X1%^___#[:$))0```"+5"1<B$(PZ3']__^-M@````"+G"24````BT2>?(D$ +M).C\____BT@LBU`HB7PD8(EL)&0YS7(.=P0YUW8(B50D8(E,)&2+3"1DBU0D +M8,=$)`P`````B00DB4PD"(E4)`3H_/___XN,))0```"+7"1<A<")1(M(#X3! +M^O__*WPD8!ML)&2#A"24`````8G[#[96#0GK#Y7`.Y0DE`````^.0____X3` +M#X1,____Z6'____&1"0^!L9$)$``QX0DC`````8```#ID_?__XM$)%0/ME@% +MZ5#X__^_`0```(M$)""#Z(")!"3H_/___XG#,<#&!!@`@\`!@_AH=?3H_/__ +M_XM4)%R)4PB)`XM$)!R)0P2)'"3H_/___XM,)%R+002`>`8`#X5<`@``BT%( +MBT`$@'@&``^%3`(``,9#9@.`>Q0`#X3+`P``@'MF`P^$S0,``(M,)%R+012+ +M41B`>V8"B4-<B5-@#X1I`P``BT0D'("X'0(```(/A%@#``"+5"0<@(I)`0`` +M!(M,)%R`B4D!```$@*%(`0``_8F99`$``(F:9`$``(M$)""-4PR+2!B)4!B# +MP!2)0PR)$8M4)!R)2Q")%"3H_/___XM,)%R)#"3H_/___P^V1@^H`0^%C0`` +M`*@"='J`?"0_`0^&/0,``(M<)%B`>P8`#X0O`P``BT0D7(!X,`!T5S'VBU0D +M7(M<LDB#Q@&-@\`!``"`BT@!```0QX/$`0``@)L$`(F;R`$``(E$)`2+`XM` +M!(D$).C\____B5PD!,<$)`0```#H_/___XM,)%P/MD$P.?!_JXM4)%R+@E@" +M``#I>O7__X!\)#\!#X8^`0``BT0D6(!X!@`/A#`!``"+5"1<@'HP`'17,?:+ +M3"1<BURQ2(/&`8V#P`$``("+2`$``$#'@\0!``"`FP0`B9O(`0``B40D!(L# +MBT`$B00DZ/S___^)7"0$QP0D#0```.C\____BUPD7`^V0S`Y\'^KBT0D7("@ +M2`$``+_I9____XM$)!PQR3'2Z%SQ__^+5"1<BTPD((M"'(E$)`2+002)!"3H +M_/___^FE_O__B>J)Z,'Z'_?_A<")QGX;BU0D7+D!````BT2:2#'2@\,!Z!?Q +M__\Y\W7EBTPD7`^V03`YQ0^-!_C__XUTJ4B)ZXL&@\,!@\8$B00DZ/S___^+ +M5"1<#[9",#G8?^3IX/?__X7_N`(```!T!X![%``/E<"(0V;IH/W__S')BT0D +M7(GR@WPD'``/E,'H']#__^G7^O__BU0D7(G0!<`!``"`BD@!``!`QX+$`0`` +M@)L$`(F2R`$``(E$)`2+`HM`!(D$).C\____BTPD7,<$)`T```")3"0$Z/S_ +M___I7/[__XM$)!R`>#``#X0T^/__@'X-``^$*OC__XM`2#'_A<!U-.FZ\___ +MBUPD'(/'`0^V0S`Y^`^.=0$```^V1@TY^`^.3P$``(M,)!R+1+E(A<`/A(OS +M__^+6"2+1+Y\B00DZ/S___\YPW6^BTPD'`^V03`Z1@T/AV?S__\/MLB%R0^. +M,`$``(M<)!PQ_XM#2(7`=2CI2O/__XM<)!R#QP$/MDLP.?D/C@L!``"+5"0< +MBT2Z2(7`#X0G\___BU@DBT2^?(D$).C\____.<-TRND/\___BT0D'+E0;`0` +MB=KH[9[__S'`Z?WR__^+3"1<B0PDZ/S____V1@\!#X5M_?__BUPD7(D<).C\ +M____Z</\__\QP#'2A?\/A3W\__^+3"0<BT$4BU$8Z2[\__^+7"1<B=@%P`$` +M`("+2`$``!#'@\0!``"`FP0`B9O(`0``B40D!(L#BT`$B00DZ/S___^)7"0$ +MQP0D!````.C\____Z>K\__^+5"1<N>!H!`#H3I[__S'`Z5[R__^+3"14#[99 +M!>F0\___BU0D'`^V0@@\!P^$GO;__^FG]O__D(UT)@`/MD,(Z^B+7"0<BT9T +MBU9XB<>)U2M[%!MK&(GK"?L/A-D```"+1"0<BTR(1(E,)'R+422)5"1XBUHD +MA=MU#^DV`0``BQN%VP^$+`$``(M#%(7`=>^+3"1\BTDPBT$,BU$0B8PDB``` +M`(F$)(````")E"2$`````T$$$U$(BTL(,T,$,=$)P76[BU0D?(M"%(M2&(E$ +M)'"+0PR)5"1TBU,0.=4/AXH"``!R"#G'#X.``@``BX0D@````(N4)(0```"+ +MC"2(`````?@1ZHE!#(E1$(M,)'R)012)41@!>P01:P@I>PP9:Q"+7"1X@$M, +M$(D<).C\____BT9TBU9XBTPD'(M<)!R)41B-5A")012+1A"!P50!``")@U0! +M``"+0@2)002+0@B)00B+0@R)00R)'"3H_/___XM#'(E$)`2+`XM`!(D$).C\ +M____#[9&#X/@','X`H"['0(```*)P@^$*`(``(M,)!R+@5@"``"(D1T"``#I +MOO#__\=$)'``````QT0D=`````"+5"0<B?D)Z0^5P`^V4C")E"2<````#[96 +M#3F4))P````/C;0```"$P`^$N0```(N<))P```#'A"20`````````(E<)!B+ +MG"20`````UPD&(M$GGR)!"3H_/___XM(+(M0*(E\)&B);"1L.<UR#G<$.==V +M"(E4)&B)3"1LBTPD;(M4)&C'1"0,`````(D$)(E,)`B)5"0$Z/S___^+3"0< +MA<")1)E(=&@K?"1HBU0D'!ML)&R)^8.$))P````!">F)4`P/ME8-#Y7`@X0D +MD`````$[E"2<````?RR$P'0).90DG````'0HBT0D'`^VG"2<````B%@PBT9T +MBU9XZ7+^__^0C70F`(3`=-WI-?___XM<)'0+7"1P=$N+5"0<#[9",(M$@D2) +M!"3H_/___XM,)!R+5"1TBT0D<`^V63")5"0(BU0D>,=$)`P`````B40D!(/K +M`8D4).C\____BTPD'(E$F4B+7"0<#[9#,#N$))P````/C2_O__^-7(-(,?:) +MQXL#@\8!B00DZ/S___^-!#['`P````"#PP0[A"2<````?-[I`.___XN,)(@` +M```IQQG5`X0D@````!.4)(0```")00R)41"+3"1\B4$4B5$8B5PD!(M<)'B) +M'"3H_/___X!+3!")'"3H_/___XGH"?@/A0C^__^+1G2+5GCI<?W__SP"#X30 +M_?__B(,=`@``BT0D)+E@@@0`BY`H`0``B=CH<)K__S'`Z8#N__^)]HV\)P`` +M``!64X/L%(MT)""+7AB+`XD$).C\____C4L$B<*+1@CH[>W__X7`B<)T+8/X +M_W0RBT8<QT8PD%T$`(EV-,=&.`````")$(U&,(E$)`2+1@B)!"3H_/___X/$ +M%%M>PXUT)@#'1BS_____Z\6-M"8`````55=64X'LK````(N\),````"-="00 +MB?"-5"0<BV\(BU\8Q@``@\`!.=!U]HU&#,<&?`$``(E<)`3'1"0(:````(D$ +M).C\____C5-HQT9T`````(U.?,=&>`````"+0VB)1GR+0@2)002+0@B)00B+ +M0@R)00R+0A")01"+0A2)012+0AB)01B+0APQTHE!'(GQB>B+7QSH!NW__XD# +M@\`!=0?'1RS_____C4<PQT<PD%T$`(E_-,='.`````")1"0$BT<(B00DZ/S_ +M__^!Q*P```!;7E]=PXUV`(V\)P````!6,=)3@^P4BW0D((M.&(M&"(M>'.BG +M[/__B0.#P`%U!\=&+/____^-1C#'1C"0700`B78TQT8X`````(E$)`2+1@B) +M!"3H_/___X/$%%M>PU575E.#[`R+1"0@BRB+6"B+>"R+M2@!``")!"3H_/__ +M_XM#'(U-'(E''(M%'#G(=0CK&(L`.<AT$HU0]#E:*)!U\8L`B7HH.<AU[C') +M,=*)V.CZZ/__BT<<B40D!(M%!(D$).C\____B3PDZ/S___^+AU@"``"+5AS' +M1C"0700`B78TQT8X`````(D"C48PB40D!(M&"(D$).C\____@\0,6UY?7<.- +M=@"-O"<`````55>)QU:)UE.![+P```"+6%BX_____X!_"`%T"X'$O````%M> +M7UW#C:PDD````(M74(EL)`2+1UR)!"3_4CR-1"08BU,$B40D!(M#"(D$)/]2 +M'(V$)+````")!"2-C"2T````B=B-E"2X````Z)]L__\/MH0DG0```(A&`O:$ +M))H````"#X5\`0``#[:$)+0````"A"2<````B$8!BX0DN````(@&@'],``^) +M9`$```^V1TN(1@,/MH0DHP```(A&!0^VE"28````#[9&!@^VG"29````P.H& +MB=&#X/R#X0$)R`^VC"29````T.H!T@G0@^$!@^#SP>$"C12=``````G(@^(( +MB=D)T(/A$(/@SXG:@^(@"<@)T(G9@^%`@^`_B=H)R(/B@`G0B$8&#[9&!P^V +ME"2?````@^#\@^(#"=#VPP2(1@</A-<```#&1@0"B>J)^.BW;O__BY0DJ``` +M`(72B48(="Z-1@R-7D*)5"0$QT0D")8```")!"3H_/___\=$)`0H````B1PD +MZ/S____&0R<`]D=,074DBT<PBU<TB8:B````B9:F````BT<HBU<LB8:J```` +MB9:N````BU<DA=)T,S')ZPR-M@````"+$H72=".+0A2%P'07BT`,A<!T$(N` +M6`(``(F$CKH```"#P0&#^0=^UX'$O````#'`6UY?7<,/MH0DL````.E__O__ +M#[:$)*(```"(1@/ID_[__X/C"(#[`1G`@^#^@\`#B$8$Z1?___^-M"8````` +M55=64X/L#(M4)""+0AB+6AR+,(DT).C\____BQ.#Z@6)QW0.,<#&1!@%`(/` +M`3G"=?2%]G1>A?]T6HM'%(M7&(E#$(M'#(E3%+K_____A<!T!HN06`(``(E3 +M&(M7'(G0P?@?"="(0P^+!XM`!(D$).C\____B$,.#[:''0(``(A##0^V1P@\ +M!'9&QD,,`8!_,$!V5(M$)"#'0"S_____BU0D((G0@\`PQT(PD%T$`(E2-,=" +M.`````")1"0$BT((B00DZ/S___^#Q`Q;7E]=PRP!=<#&0PP"C5,LB?CHWOS_ +M_X7`=:[KMXM'.(M7/(F#O````(GXB9/`````Z"]P__^-EU0!``"-2RR)@[`` +M``"+AU0!``")0RR+0@2)002+0@B)00B+0@R)00P/MD<(Z#QL__^(@Y`````/ +MMD<QB(.1````#[9'-(B#M````(N'3`$``(N74`$``(F#G````(GXB9.@```` +MZ(/<__^)@Y0```")/"3H_/___\:#D@````")@Y@```"`?S``#X0Q`0``,>V+ +M=*](A?8/A.4```"`NY,`````#X3H````@'X(!`^$]P```(N&6`(``(F$J\0` +M```/MI.2````@\4!@\(!B).2````#[9',#GH#X^-````#[;2@_H_?QB-A)/$ +M````@\(!QP#_____@\`$@_H_?N^+AV0!``"%P`^$CO[__XM0!+G_____A=)T +M!HN*6`(``(F+I````(M0"+G_____A=)T!HN*6`(``(F+J````(MP!(7V#X13 +M_O__BT@(A<D/A$C^__^)/"3H_/___XF#K````.DU_O__C;8`````@_T_#X]J +M____BW2O2(7V#X4;____QX2KQ`````````#I+____P^V1@CHTFK__XB#DP`` +M`(!^"`0/A0G___^+1B2+@%@"``")A*O$````Z0'___\QTNDA____C;8````` +M@>S,````B;PDQ````(G'@'\(`8FT),````")UHF<)+P```")K"3(````BUA8 +MN/____]T(XN<)+P```"+M"3`````B[PDQ````(NL),@```"!Q,P```##BT=< +MC:PDD````(M74(EL)`2)!"3_4CR-1"08BU,$B40D!(M#"(D$)/]2'(V$)+`` +M``")!"2-C"2T````B=B-E"2X````Z%]G__\/MH0DG0```/:$))H````"B$8" +M#X46`0``#[:$)+0````"A"2<````B$8!BX0DN````(@&@'],``^)%`$```^V +M1TN(1@,/MI0DF`````^V1@8/MIPDF0```,#J!HG1@^#\@^$!"<@/MHPDF0`` +M`-#J`=()T(/A`8/@\\'A`HT4G0`````)R(/B"(G9"="#X1"#X,^)VH/B(`G( +M"=")V8/A0(/@/XG:"<B#XH`)T`^VE"2?````B$8&#[9&!X/B`X/@_`G0]L,$ +MB$8'#[:$)*,```"(1@5T:,9&!`*)ZHGXZ'MI__^+E"2H````B48(,<"%T@^$ +MF_[__XU&#(U>0HE4)`3'1"0(E@```(D$).C\____QT0D!"@```")'"3H_/__ +M_S'`QD,G`.EF_O__B?8/MH0DL````.GE_O__C78`@^,(@/L!&<"#X/Z#P`.( +M1@3KB0^VA"2B````B$8#Z>/^__^-M@````"-O"<`````55=64X/L#(ML)""+ +M?1B+!X7`=$0Q]NL/B1PD@\8!Z/S___\Y-W8QBT2W!(D$).C\____@'@(`8G# +M=4CV0$P"=->)!"2#Q@'H_/___XD<).C\____.3=WSXU%,,=%,)!=!`");33' +M13@`````B40D!(M%"(D$).C\____@\0,6UY?7</'12S^____Z\R-="8`@^P< +MBT0D((E<)!2)="08BU@(BW`$B40D!(L#@^B`B00DZ/S___^)\#'),=+HO^#_ +M_X"+2`$```2+="08B5PD((M<)!2#Q!SI_/___XUT)@"#[!PQTHE<)!2+7"0@ +MB70D&(M#!(LP#[=#6(N.9`$#`,'@"8F>>`$#`,>&@`$#``````"-1`'_]_'' +MAG0!`P#0^P0`QX9\`0,``````(F&<`$#`(V&<`$#`(DT)(E$)`3H_/___XM< +M)!2+="08@\0<P^L-D)"0D)"0D)"0D)"0D(/L/(M$)$")7"0LB70D,(E\)#2) +M;"0XBT`8BP")!"3H_/___XN`9`$``(E$)!B`>!0`#X2+````B<*+0%R+4F") +M1"0@BT0D&(E4)"2+5"0DBT@$BT0D((MY%(MI&#'X,>H)P@^$'P(``#EL)"0/ +M@V,!``"+5"0DBT0D(#'J,?@)P@^$%0(``(M,)!@Q]CMT)"0/MTED9HE,)!X/ +MM]D/@GT!``!W"CM<)"`/AG$!```/MT0D(#'V#[?89HE$)![I70$``(M$)!B+ +M2%R+6&"+0`2)VHMP%(MX&(G(,?`Q^@G"#X1Z`0``BT0D&`^V:&:)ZH32#X5( +M`0``BT0D&#'2#[=`9&:)1"0>#[?``<@1VCG7=PX/@\H!``!F*<YFB70D'HM4 +M)!@/MT0D'F;'0EH``(E*4(E:5&:)0EB)ZH32="6`^@-T((M$)!B+7"0LBW0D +M,(M\)#2)1"1`BVPD.(/$/.D<_O__BT0D&#'2B4@DB<''0#0`````B5@H#[=` +M6`-!4!-15,=!0,#/!`")02R)R(/`.(E!.(E!/(/H%(E1,(E)1,=!2`````#' +M04P!````B40D!(M!!(D$).C\____A<!T@HM<)"R+="0PBWPD-(ML)#B#Q#S# +M=PHY?"0@#X:1_O__BU0D&(GX,?8/MU)D#[?:`=AFB50D'HGJ$?([5"0D<AX/ +MAN<````/MTPD(#'V9BGY9HE,)!X/M]F-M@````"+1"0@BU0D)"G8&?*)P8G3 +MBU0D&`^V:F;IX_[__XUV`(#Z`P^$K_[__XM4)!B+0@B+<!2+>!CIG?[__Y"- +M="8`BT0D&`^V:&:)ZH#Z`P^$E````(GHA,!UT(M4)!B]`0```,9"9@'KP8M4 +M)!@/MD)F/`)T<2P!#X2#````BT0D&#'VBU0D((M,)"0/MT!DB70D#(D4)(E, +M)`0/M]B)7"0(9HE$)/\``'6$BT0D-/9`3@(/A50!``"+="1$QD9D`\9&4R2+?"1$#[9'98/@ +M^X/(`HA'98M$)$2`>&0##X2A`0``BTPD1`^V04@\$`^$1@(``#P*#X3Y`@`` +MBUPD((M,)#2+5"1$BT,DB4HHA<`/A%D#``"+="0@BU0D1(M\)$2+3B")\(/" +M#(/`'(E6((E'#(E/$(D1BUPD7(MT)&"+?"1DBVPD:(/$;,.+7PC'1RS]____ +MB5PD(.GU_O__9H-\)"8!#X?$_O__BT0D-(MH)(7M=$^-=@"+50@Y5"0LBT4$ +M#X*W````=PHY1"0H#X*K`````T4,$U40.50D/`^'FP````^#BP```(M5%(72 +MB50D3'0/BTH,A<F)3"1(#X7H`@``BT0D-/9`3@(/A+@"``"+5"1$QD)D`HM< +M)#R+3"0XB=DQVPG+#X2M`@``QD)0BL9"2!"+?"1$#[9'98/(!(/@_8A'9>G) +M_O__BU0D1,9"9`*+7"0\BTPD.(G9,=L)RP^$``$``,9"4(C&0D@0Z8_^__\Y +M1"0X#X9K____BVT`A>T/A2[____I=?___XM,)"R+5"0HQT0D%`$```");"0$ +MB4PD$(M,)#2)5"0,QP0D(`P``(E,)`CH_/___^F0_?__QT!8`````(M4)"R+ +M1"0H#ZS0$,'J$`^V5"0HB<$PP&:!X?\`"="+5"1$9HE"3(MT)"R+7"0H#ZSS +M",'N"`^VPXGWB=X/K/X0B70D*`^W5"0HP>\0B7PD+(M\)$0PT@G09HE'3HM4 +M)"R+1"0H#ZS0"(E$)"@/MT0D*,'J"(E4)"S&1U)`9L='2```,,`)P6:)3U`/ +MMU0D)F:)5TIFB5=4Z=/]__^+7"1$QD-0*,9#2`KIB_W__\9!20`/MT0D)L'@ +M"8E!3(M4)"R+1"0HB=`QTL'H&(A!4HM4)"R+1"0HB=`QTL'H$(A!4XM4)"R+ +M1"0HB=`QTL'H"(A!5(M4)"R+1"0HB=`QTHA!58M4)"R+1"0H#ZS0&(A!5L'J +M&(M$)"B+5"0L#ZS0$(A!5\'J$(M$)"B+5"0L#ZS0"(A!6`^V7"0HP>H(QD%: +M`,9!6P"(65D/MT0D)F;!Z`B(05P/MD0D)L9!7@"(05W&05\`Z0?]__^+5"1$ +MQD))``^W1"0FP>`)B4),BU0D+(M$)"B+3"1$#ZS0&(A!4L'J&(M$)"B+5"0L +M#ZS0$(A!4\'J$(M$)"B+5"0L#ZS0"(A!5`^V7"0HP>H(QD%6`(A950^W1"0F +M9L'H"(A!5P^V1"0FQD%9`(A!6.F1_/__BU0D1(E4)'"+7"1<BW0D8(M\)&2+ +M;"1H@\1LZ?S___^+="1$QD9D`\9&4S3I6_W__XM<)$3&0U`JQD-("NE*_?__ +MBTPD2(M11(M!0(E4)`2)!"3H_/___XM,)$B+400X0@8/AO+\__^+50B+102) +M5"14BU0D1(E$)%#&0F0!BT0D(`68````B00DZ/S___^%P(G!#X3C`0``BWPD +M*"M\)%"+;"0L&VPD5`'[QT`0`````!'NB7`,BW0D2(EH!(E8"(M<)$3'0"`` +M````B3C'0!P`````QT`D`````(U`%(E!%(E!&(M&!,=!*`$```")2SR)<RB` +M>`4`#X2,````QD-2`0^V3C$/K>_3[?;!('0$B>\Q[8E[2(EK3`^V3C"$R70R +MBWPD3+@!````.WY(#X0[`0``,=+K%8M<)$@/ML*+="1,.W2#2`^$'P$``(/" +M`3C*=>2+1"0@BT`DA<`/A)S^__^+7"0@BU0D1(MT)$2+2R")V(/"#(/`'(E3 +M((E&#(E.$(D1Z4+[__^+1"0@BTPD1(N09`$#`,9!4@&+1"0@B7E(B6E,!6`! +M`P")050/MUPD)F:)65"+="1(#[9>,(3;="Z+?"1,N`$````[?D@/A(X````Q +MP.L1BW0D2`^VR(M\)$P[?(Y(='*#P`$XV'7H#[=$)":)TXMT)""+?"1$P>`) +MC40"_S'2]_/'AH`!`P``````QX9T`0,`<`(%`(F^>`$#`,>&?`$#``````") +MAG`!`P")\(M<)%P%<`$#`(M\)&2)="1PBVPD:(E$)'2+="1@@\1LZ?S___^X +M`0```-/@BTPD1(A!4^N%C4(!BWPD1(A'4^G9_O__QT<L_?___^E#^?__C;8` +M````@^Q,B5PD/(M<)%R);"1(B=6+5"14B70D0(7MB7PD1(E$)"2+2PB+1"10 +MB50D'`^W5"18B4PD$(E$)!B+@60!`P!FB50D%HE$)"AT"?:%20$```1T/XM4 +M)!"-0S#'0RS^____QT,PD%T$`(E;-,=#.`````")1"14B50D4(M<)#R+="1` +MBWPD1(ML)$B#Q$SI_/___XM%!`^V2`:$R72V#[=$)!8/MM$Q_XG&#[9%,`-T +M)!@3?"0<*=")P<'Y'XE$)`B)3"0,BT44BU48B00DB50D!.C\____.=</AW7_ +M__]R"#G&#X=K____BT0D$`68````B40D+(D$).C\____A<")1"0P#X1!`0`` +MBT4@BU0D$(E$)`2)%"3H_/___X7`B40D-`^$#@$``(M,)#"+1"08BU0D,,=! +M(`````")`8G(@\`4QT(0`````(M4)!R)012)01B+1"0TB7$(B5$$B7D,QT$< +M`````,=!)`````#'02@!````B4@\B5@LQD!D`:$`````A<!^##N%O`$```^? +MP`^VP(M4)#2)0C2+102`>`4`=#^+3"0D@>D+_P``@_D:#X:%`0``BT0D,(M4 +M)"R)1"0$B10DZ/S___^+3"0TB0PDZ/S___^+0PB)1"00Z7#^__\/MT0D%HM4 +M)"B+3"0DP>`)C40"_S'2]W0D*('I"_\``(/Y&HG&=FN+5"0PBTPD+(E4)`2) +M#"3H_/___XM$)#2)!"3H_/___XM3"(E4)!#I'?[__XM,)#"+1"0LB4PD!(D$ +M).C\____C4,PQT,L_?___\=#,)!=!`")6S3'0S@`````B40D5(M#"(E$)%#I +M!?[__[@!````T^"I`(``!`^%:@$``*D`0``"#X50`0``J0$```$/A&W___^+ +M3"0TQD%2`8M$)!"+3"0T!6`!`P")052+3"0TBT0D&(M4)!R):2B)04B)44P/ +MMUPD%L9!9@#'06P`````QT%P0.0$`&:)65"+1"00BU0D$(FP<`$#`,>`@`$# +M``````#'@'0!`P!P`@4`B8AX`0,`QX!\`0,```````5P`0,`BUPD/(E$)%2+ +M="1`B50D4(M\)$2+;"1(@\1,Z?S___^X`0```-/@J0"```0/A;T```"I`$`` +M`@^%I0```*D!```!#X13_O__QD)2`0^V33&+5"0<BT0D&`^MT-/J]L$@=`2) +MT#'2BTPD-(E!2(E13,9!9@"+7"00QT%L`````(EI*,=!<$#D!`"+0R2%P'1L +MBU0D-(M<)!"#P@R+2R")V(E3((M<)#2#P!R)0PR)2Q")$8M<)#R+="1`BWPD +M1(ML)$B#Q$S#BT0D-`'VQD!2`NFT_O__BUPD-,9#4@/II_[__XM,)#3&05(" +MZ5W___^+7"0TQD-2`^E0____BTPD-(M<)#R+="1`BWPD1(E,)%"+;"1(@\1, +MZ?S___^-M@````"#["R)7"0<BUPD,(ET)"")?"0DB6PD*(M#&(MP!(MX"`^W +M:`R+`(D$).C\____B<*+0PR)7"0,B6PD"(DT)(E\)`3H>?O__XM<)!R+="0@ +MBWPD)(ML)"B#Q"S#D(UT)@"#["R)7"0<BUPD,(ET)"")?"0DB6PD*(M#&(MP +M!(MX"`^W:`R+`(D$).C\____@'@(`8G!=#"+0PP/M]6)5"0(B<J)7"0,B30D +MB7PD!.@.^___BUPD'(MT)""+?"0DBVPD*(/$+,.+0PP/M]6)5"0(B<J)7"0, +MB30DB7PD!.A.\___Z\Z-M@````"-OP````"#["R)7"0<BUPD,(ET)"")?"0D +MB6PD*(M#&(MP!(MX"`^W:`R+`(D$).C\____@'@(`8G!=#"+0PP/M]6)5"0( +MB<J)7"0,B30DB7PD!.A^^O__BUPD'(MT)""+?"0DBVPD*(/$+,.+0PP/M]6) +M5"0(B<J)7"0,B30DB7PD!.B^\O__Z\Z-M@````"-OP````"#["R)7"0<BUPD +M,(E\)"0Q_XET)"");"0HBT,8#[9H"(MP!(L`B00DZ/S___^)PHM##(E<)`R) +M;"0(B30DB7PD!.CZ^?__BUPD'(MT)""+?"0DBVPD*(/$+,.-M@````"#[!R) +M7"00BUPD((ET)!2)?"08BT,8BW@$#[9P"(L`B00DZ/S___^`>`@!B<%T,HM# +M#(E<)`R)\P^VTXE4)`B)RHD\),=$)`0`````Z(_Y__^+7"00BW0D%(M\)!B# +MQ!S#BT,,B5PD#(GS#[;3B50D"(G*B3PDQT0D!`````#HS?'__XM<)!"+="04 +MBWPD&(/$',.-M@````"-O"<`````@^P<B5PD$(M<)"")="04B7PD&(M#&(MX +M!`^V<`B+`(D$).C\____@'@(`8G!=#*+0PR)7"0,B?,/MM.)5"0(B<J)/"3' +M1"0$`````.CO^/__BUPD$(MT)!2+?"08@\0<PXM##(E<)`R)\P^VTXE4)`B) +MRHD\),=$)`0`````Z"WQ__^+7"00BW0D%(M\)!B#Q!S#C;8`````C;PG```` +M`%6)U5=6B<93@^P,A=*)EF@!`P!T,8G#,?^-M"8`````C01_@\<!C82&9`$` +M`(E$)`2)-"3H_/___XF#8`$``(/###GO==JA`````,>&;`$#`!(```"%P'0? +MC;0F`````(M0"#F6;`$#`'8&B99L`0,`BT`$A<!UZ(/$#%M>7UW#5U:)QE.# +M[!"+@&@!`P"%P'0XB?,Q_XN#9`$``(/'`8N3:`$``(E$)`B)5"0,BX-@`0`` +M@\,,B30DB40D!.C\____.;YH`0,`=\S'AF@!`P``````B30DZ/S___^#Q!!; +M7E_#C;8`````C;PG`````%93@^P4BW0D((!^9`.+7BP/A(P````/MD9F/!`/ +MA(X````\!70@=QHL`8VV``````^$A````,=#+/____^-=@#K#CP+=7W'0RS] +M____C78`BT8\A<!T$XE$)`2+!@68````B00DZ/S___^+!N@?____B30DZ/S_ +M__^-0S#'0S"0700`B5LTQT,X`````(E$)`2+0PB)!"3H_/___X/$%%M>P_9& +M4P$/A&K____&1F80BT,<Q@`!QD9F`<=#+`````#KC3P-#X1[____QT,L____ +M_^EY____B?:-O"<`````5E.#[!2+="0@BUXLBT,,/23_``!T:CT9_P``=&.` +M?F80=F_'0RS_____C;8`````BT8\B40D!(L&!9@```")!"3H_/___XL&Z&/^ +M__^)-"3H_/___XU#,,=#,)!=!`")6S3'0S@`````B40D!(M#"(D$).C\____ +M@\046U[#B?:`?F8,=#^+0QS&``"`?F80=Y$/ODYFN`$```#3X*D@*0$`=12H +M`@^$=____\=#+`````#I>/___\=#+/W___^0Z6O___^+0QS&``&+1BC'!"01 +M````B40D!.C\____QD9F`>O(C;8`````C;\`````@^P<B5PD%(M<)"")="08 +MBT,8@WL0!XLP=@:#>Q0#=Q/'0RS^____BUPD%(MT)!B#Q!S#B30DZ/S___^% +MP'3AB30DZ/S___^+$#M3"'0)QT,L_/___^O0BT@,A<EUPH!X"`1VO(M`'(/X +M_W2[B40D!(M"!(D$).C\____A<!TJ,=#+/_____KGY"-M"8`````@^P<B5PD +M$(G#B7PD&(G7B70D%(N`(`(``(7`=0J+LU0"``"%]G09,<"+7"00BW0D%(M\ +M)!B#Q!S#C;0F`````(M#'(/X_W05B40D!(L#BT`$B00DZ/S___^%P'7*@'L( +M!'8X9O>#2`$``'`(=;F`>S``="`Q]HM$LTB%P'0+B?KH>____X3`=)X/MD,P +M@\8!.?!_XK@!````ZXYT$8GZB=CH&E___P^VP.E[____BT,DB?KH"%___P^V +MP.EI____@^P,@'@(!'87,<F#N&0!````=`R)R(/$#,.-M@````#H&____X/$ +M#`^VR(G(PXGV55=64X/L#(MT)""+3AB+5AR+`<<"`````(G%B<>!Y0`!``"! +MY_\```!T;#';ZR*0BT@,A<EU6X!X"`49TO?2(<+HBO___X3`=$@Y^W1)BTX8 +M@\,!BP29B00DZ/S___^%[77-BU`,A=)U*&;W@$@!``!P"'4=BU`<@_K_=,V) +M5"0$BP"+0`2)!"3H_/___X7`=+B+1AR)&(U&,,=&,)!=!`")=C3'1C@````` +MB40D!(M&"(D$).C\____@\0,6UY?7<.-M"8`````C;PG`````%575E.#[`R+ +M="0@BT88BQ`QP/;&_P^4P`^V^HE$)`B+1APQVP^V;"0(QP``````D#G[<CR% +M_W0E,=N-M@````"+1AB#PP&+!)B)!"3H_/___XD$).C\____.?MUXXM<)`B% +MVW5LQT8L`````.LXB?:)Z(3`=+Z+1AB#PP&+!)B)!"3H_/___X!X"`49TO?2 +M(<+H:O[__X3`=9:+1AS'1BS_____B1B-1C#'1C"0700`B78TQT8X`````(E$ +M)`2+1@B)!"3H_/___X/$#%M>7UW#A?]TT8M&&(M`!(D$).C\____@\0,,=); +M7E]=Z?]V___K#9"0D)"0D)"0D)"0D)"#[#R)="0TBW0D0(E<)#")?"0XBUXL +MBWXH@7L,0O\```^$B@````^V1E.+4QR(0@H/MT9,B$(&#[=&3HA"!P^W1E"( +M0@@/MD92B$()#[=&2(A"!`^W1DJ(0@4/MT94B$(+@'YF`0^$E0```,=#+/__ +M__^)-"3H_/___XU#,,=#,)!=!`")6S3'0S@`````B40D!(M#"(D$).C\____ +MBUPD,(MT)#2+?"0X@\0\PXUV``^V1E.+4QR(0@\/MT9,9HE""`^W1DYFB4(* +M#[=&4&:)0@P/MD92B$(.#[=&2&:)0@0/MT9*9HE"!@^W1E1FB4(0@'YF`0^% +M</___Y"-="8`BT,,QT,L`````#U"_P``=%,]&/\```^%5O___XM#&(!X"O(/ +MA4G___^-5"00BT=0B50D!(M77(D4)/]0/(M4)"B!P@`!```/M@*H!`^$(/__ +M_X/@^X@"B3PDZ/S____I#O___XM#&(!X#_(/A0'____KMHVV`````(V\)P`` +M``!55U93B<.#[`PQP)"-="8`Q@08`(/``8/X+'7TQP,L````Z)E+__^(0P2A +M`````(LPA?8/E$,%H0````")!"3H_/___\'@##W___\!#X:)````QD,&!<9# +M!PL/MD,+,>V_!0```,9#"`#&0PD!QD,*#X/@_H/("(A#"\9$)`L`ZQ6#_P7& +M1!X<0'0X@\4!@\<!@_\-=#2)/"3H_/___X7`=.R)Z`^V\(GXZ,),__^#_P:( +M1!X,=<K&1!X<`H!,)`M`Z\B`3"0+(.O!@'PD"V!T%X/$##'`6UY?7</&0P8' +MQD,'!^ER____H0````"#N)0!`P`#=MN)Z@^VPL9$&`P2QD08'$"#Q`PQP%M> +M7UW#D%.#[`B+7"00BT,<Z.#^__^%P'0'QT,L_____XU#,,=#,)!=!`")6S3' +M0S@`````B40D!(M#"(D$).C\____@\0(6\.-M@````"-O"<`````55=64X'L +MG````(NL)+````"+?0B)^.CU5___BX>0`0,`A<`/A84```"+=PC'AY`!`P`! +M````A?8/A*4```"-5"0DBT8$B50D!(M6"(D4)/]0'`^V1"0T`8>0`0,`@'PD +M-`!T,3';B70D#,=$)`B0[`0`B5PD!(DT).C\____A,!U!X.OD`$#``$/MD0D +M-(/#`3G8?]&+-H7V=:.+AY`!`P"#Z`&%P(F'D`$#`'0_C44PQT4L_/___\=% +M,)!=!`");33'13@`````B40D!(M%"(D$).C\____@<2<````6UY?7</'AY`! +M`P``````C8=4`0``QX=4`0``@.P$`(F_6`$``,>'7`$```````")1"0$C4<D +MB00DZ/S____KD(GVZ?S___^-="8`C;PG`````(/L'(E\)!2+?"0@B6PD&(M$ +M)"B)7"0,BVPD)(ET)!"+=PR#KI`!`P`!A<`/B+0```")1"0(B6PD!(D\).C\ +M____A<")PP^$K@```(`]``````!U+HE<)`3'!"0"````Z/S___^+AI`!`P"% +MP'0TBUPD#(MT)!"+?"04BVPD&(/$',,/MD!,J`)URJ@!#X6$````]D-,!'6\ +M@$M,)(UT)@#KLHV&5`$``,>&5`$``(#L!`")ME@!``#'AEP!````````BUPD +M#(E$)"2-1B2+?"04B40D((MT)!"+;"08@\0<Z?S___^-1Q");"0$B00DZ/S_ +M___I:____XM'!(DL)/]00(U'$(EL)`2)!"3H_/___^E.____B1PDZ/S___^) +M]NEM____C70F`(V\)P````"#[!R)7"00BUPD((E\)!B)="04BT,8BW`$BP") +M!"3H_/___XDT)(G'Z/S___^)/"2)1"0$Z/S____'0S"0700`B5LTQT,X```` +M`(/X`1G`]]")0RR-0S")1"0$BT,(B00DZ/S___^+7"00BW0D%(M\)!B#Q!S# +MC78`C;PG`````%=64X/L$(`]``````"+?"0@=&V+7PR-=PPY\W4)ZS60BQLY +M\W0NC9/8_?__@'H(`77N]H(<`@```73E#[8%`````(D4)(E$)`3H_/___XL; +M.?-UTL>'S`````"'DP.-A\P```#'A]0`````````B;_8````B40D!(D\).C\ +M____@\006UY?PXGVC;PG`````%575E.![,P```"+M"3@````C7PD$(GXC50D +M'(MN"(M.&,8``(/``3G0=?:-1PS'!WP!``")3"0$QT0D"+````")!"3H_/__ +M_S'2B?F)Z(M>'.A:Q/__B0.#P`%U!\=&+/____^-1C#'1C"0700`B78TQT8X +M`````(E$)`2+1@B)!"3H_/___X'$S````%M>7UW#C;0F`````(V\)P````!6 +M,<!3@^P4BW0D((M>'(GVQ@08`(/``3V`````=?*)V.AK^O__A<!T,,=&+/__ +M__^-1C#'1C"0700`B78TQT8X`````(E$)`2+1@B)!"3H_/___X/$%%M>P\<# +M@````#'2QT,\`"````^V1!H,@^`/@^@#/`)W!<9$&BP&@\(!@_H0=>3KJHUV +M`(V\)P````!55U93@^P,BU0D((M"&(M:'(LP,<#&!!@`@\`!/?H```!U\HDT +M).C\____B<4QP)#&!!@`@\`!/?H```!U\H7V=%V%[719BT44BU48B4,$BT4, +MB5,(NO____^%P'0&BY!8`@``B5,,BU4<B=#!^!\)T(A#`XM%`(M`!(D$).C\ +M____B$,"#[:%'0(``(A#`0^V10@\!'=$+`$/A*\!``"+1"0@QT`L_____XM4 +M)"")T(/`,,=",)!=!`")4C3'0C@`````B40D!(M""(D$).C\____@\0,6UY? +M7</&`P&+13AFB8/H````B>CH04K__XV55`$``(U+((F#Y````(N%5`$``(E# +M((M"!(E!!(M""(E!"(M"#(E!#`^V10CH3D;__XB#A`````^V13&(@X4```"+ +MA4P!``"+E5`!``")@]````")Z(F3U````.B?MO__B8.(````B2PDZ/S____& +M@X8`````B8/,````@'TP``^$3@$``#'_BW2]2(7V#X0"`0``@+N'``````^$ +M!0$``(!^"`0/A!0!``"+AE@"``")A+N,````#[:3A@```(/'`8/"`8B3A@`` +M``^V13`Y^`^/H0````^VTH/Z#W\8C823C````(/"`<<`_____X/`!(/Z#W[O +MBX5D`0``A<`/A+7^__^+4`2Y_____X72=`:+BE@"``")B]@```"+4`BY____ +M_X72=`:+BE@"``")B]P```"+4`2%T@^$>O[__XM`"(7`#X1O_O__B2PDZ/S_ +M__^)@^````#I7/[__\8#`HU3((GHZ&75__^%P`^%//[__^E"_O__@_\/D(UT +M)@`/CU'___^+=+U(A?:-="8`#X7^_O__QX2[C`````````#I$O___P^V1@CH +MT43__XB#AP```(!^"`0/A>S^__^+1B2+@%@"``")A+N,````Z>3^__\QTND$ +M____D(UT)@!55U93@^P,BU0D((M"&(M:'(LP,<#&!!@`@\`!/=@```!U\HDT +M).C\____B<<QP)#&!!@`@\`!/=@```!U\H7V=#6%_W0QBT<4BU<8B4,$BT<, +MB5,(NO____^%P'0&BY!8`@``B5,,#[9'"#P$=T0L`0^$&`$``(M$)"#'0"S_ +M____BU0D((G0@\`PQT(PD%T$`(E2-,=".`````")1"0$BT((B00DZ/S___^# +MQ`Q;7E]=P\8#`8N'5`$``(V75`$``(U+$(E#$(M"!(E!!(M""(E!"(M"#(E! +M#`^V1PCHO4/__XA#=`^V1S&(0W6+ATP!``"+EU`!``")@\````")^(F3Q``` +M`.@4M/__B4-XB3PDZ/S____&0W8`B8.\````@'\P``^$I0```#'MZRV`?@@$ +M=$</ME-VBX98`@``B423?`^V0W:#P`$\#XA#=G=8#[9',(/%`3GH?DV+=*]( +MA?9T[8![=P!UQ0^V1@CH+4/__XA#=X!^"`1UN8M6)`^V0W:+DE@"``")5(-\ +MZ[3&`P*-4Q")^.ADV/__A<`/A=/^___IV?[__P^V4W:#^@\/C\S^__^-1)-\ +M@\(!QP#_____@\`$@_H/?N_ILO[__S'2Z^*-M@````"-OP````!55U93@^P, +MBU0D((M"&(M:'(LP,<#&!!@`@\`!/:X```!U\HDT).C\____B<<QP)#&!!@` +M@\`!/:X```!U\H7V="^%_W0KBT<4NO____^)0P2+1PR%P'0&BY!8`@``B5,( +M#[9'"#P$=T0L`0^$#`$``(M$)"#'0"S_____BU0D((G0@\`PQT(PD%T$`(E2 +M-,=".`````")1"0$BT((B00DZ/S___^#Q`Q;7E]=P\8#`8N'5`$``(V75`$` +M`(U+#(E##(M"!(E!!(M""(E!"(M"#(E!#`^V1PCHXT'__XA#<`^V1S&(0W&+ +MATP!``")@YP```")^.A&LO__B4-TB3PDZ/S____&0W(`B8.8````@'\P``^$ +MIP```#'MZRV`?@@$=$</ME-RBX98`@``B423>`^V0W*#P`$\!XA#<G=8#[9' +M,(/%`3GH?DV+=*](A?9T[8![<P!UQ0^V1@CH7T'__XA#<X!^"`1UN8M6)`^V +M0W*+DE@"``")5(-XZ[3&`P*-4PR)^.B6UO__A<`/A=_^___IY?[__P^V4W*# +M^@>)]@^/UO[__XU$DWB#P@''`/____^#P`2#^@=^[^F\_O__,=+KXHVV```` +M`(V_`````%575E.#[#R+;"10BUT8BP.%P'5KBS4`````QD0D-`:%]G0QC7PD +M-(M>"(7;="")]HM#"(E$)#B+0P2)?"0$QP0D`````/]08(L;A=MUXHLVA?9U +MTXU%,,=%,)!=!`");33'13@`````B40D!(M%"(D$).C\____@\0\6UY?7<.) +M!"2->P3H_/___XG&#[9#!(3`=3V`?@@!#X0_`0``QT4L_O____9&3!!TJ8U$ +M)!2+5E")1"0$BT9<B00D_U(\#[9$)"*(1DJ)-"3H_/___^N#+`%T$,=%+/[_ +M__^-="8`Z6____^`?@@$=K,/MD<!/`%T20^#W0$``(-]$!B-=@!UG(V.5`$` +M`#'`Q@0(`(/``8/X$'7TBT<$C5<$B0&+0@2)002+0@B)00B+0@R)00R`CD@! +M```$Z8<```"#?1!(#X58____C8YL`0``,<#&!`@`@\`!@_@$=?2+5P2-1P2) +M$8M0!(E1!(M0"(E1"(M0#(E1#(M0$(E1$(M0%(E1%(M0&(E1&(M0'(E1'(M0 +M((E1((M0)(E1)(M0*(E1*(M0+(E1+(M0,(E1,(M0-(E1-(M0.(E1.(M`/(E! +M/(".2`$```3VAD@!```$#X2$_O__B30DZ/S____I=_[__X!_`04/A[?^__\/ +MMD<!D(UT)@#_)(7L&```@WT0"9"-="8`#X68_O__QD0D-`D/MD<$B$0D.(U$ +M)#2+5E")1"0$BT9<B00D_U)@B44LZ7;^__^0@WT0"0^%9/[__\9$)#0%#[9' +M!,9$)#D`B$0D.(U$)#2+5E")1"0$BT9<B00D_U)@B44L@$Y,$.DY_O__C70F +M`(-]$`D/A23^___&1"0T!`^V1P3&1"0Y`(A$)#CKOHGV@WT0"0^%!/[__\9$ +M)#0##[9'!(A$)#CKHXVT)@````"#?1`)#X7D_?__QD0D-`+KWH-]$`D/A=/] +M__^`3DR`QD0D-`#KR3P"=`S'12S^____Z=W^__^#?1`)#[:^'0(```^%I_W_ +M_XU#"(GZB40D"`^V0P@XPG0Z@'X(!(B&'0(``'8N@'XP`'0H,<F+5(Y(A=)T +M$X!Z"`1V#0^VAAT"``"(@AT"```/MD8P@\$!.<A_VHGX/`)T#(".2`$```3I +M;_[__XM4)`B`.@)TZ[E@@@0`B>J)\.CE9?__Z0?]__]55U93@^P,BVPD((M= +M&(L#C7L$B00DZ/S___^)QHM#!*@!=#N-CE0!```QP(UT)@#&!`@`@\`!@_@0 +M=?2+1P2-5P2)`8M"!(E!!(M""(E!"(M"#(E!#(".2`$```2+!Z@"#X1^```` +MC8YL`0``,<"0Q@0(`(/``8/X0'7TBU<4C4<4B1&+4`2)402+4`B)40B+4`R) +M40R+4!")41"+4!2)412+4!B)41B+4!R)41R+4"")42"+4"2)422+4"B)42B+ +M4"R)42R+4#")43"+4#2)432+4#B)43B+0#R)03R`CD@!```$]H9(`0``!'0( +MB30DZ/S___^-13#'13"0700`B6TTQT4X`````(E$)`2+10B)!"3H_/___X/$ +M#%M>7UW#ZPV0D)"0D)"0D)"0D)"055=64X'LS````(NT).````"-7"00BWX8 +MBP>)!"3H_/___XU4)!R)Q8G8C;8`````Q@``@\`!.=!U]HU7!(U##,<#?`$` +M`(E4)`3'1"0(L````(D$).C\____BT8(B>J)V>CZM___A<")PG0M@_C_=#.+ +M1AS'1C"0700`B78TQT8X`````(D0C48PB40D!(M&"(D$).C\____@<3,```` +M6UY?7</'1BS_____Z\2-=@!55U93@^P<BT0D,(E$)!2+0`2+,(N.*`$``(GP +MBY9P`0,`B4PD&.AUYO__BVPD%(M%"(M-!(M0((M!(#G0<P*)T(E$)`2+`8D$ +M).C\____A<")QP^$B`$``(L5`````(72?A.+3"04BT$$.Y"\`0``#Y_`#[;0 +MQD=F`(ML)!2)5S0/MD5FA,`/A=8```"+1"04BU0D%(/`)(E'.(M"!(!/90*+ +MCF0!`P")1RB+;"04B<K!Z@D/MT5:#[==6"G#BX9L`0,`@^@!#Z_0.=-V`HG3 +M9H'[``%FB5]0=@9FQT=0``&+1"04@'@4``^$UP```/9'900/A,T```")P0^W +M0%@QTHG-`T%0$U%4,=L/MT]0*<@/MTU:&=HQVRG(&=J)1TB)5TR`3V4(BTXD +MBT0D&,='<$#^!`#'1VRP0P0`A<F)1RP/A`X!``"+3B"-5PR-1AR)5B")1PR) +M3Q")$8/$'%M>7UW#/`,/A"+___^+3"04BT$(@$]E!(N>:`$#`(E'*(7;#X3> +M````BXYD`0,`,>TQVXN&8`$#`(7)BP08=!6)PHG(Q@(`@\(!@^@!=?6+CF0! +M`P"#Q0&#PPPYKF@!`P!WT.GE_O__BTPD%#'2#[=!6@-!4!-15(E'2(E73.E" +M____BU0D%`^V0F:$P'5BBT0D%(M,)!2#P"2)1"0$BT$$B00DZ/S___^+;"04 +MBT4$BP#H"^7__XM$)!B+5"08QT`L_____\=`,)!=!`")0#3'0#@`````@\`P +MB40D!(M""(D$).C\____@\0<6UY?7<,\`W6TZYB)?"0P@\0<6UY?7>G\____ +MBXYD`0,`Z3O^__^#["R)?"0DBWPD,(E<)!R)="0@B6PD*(M'+(M7*(LOB40D +M%`^V1V:+LF0!```\`71#/`(/A`D!``"-1AC&1V8`QT88,`(%`(E^',=&(``` +M``")1"0$C44DB00DZ/S___^+7"0<BW0D((M\)"2+;"0H@\0LPP^W1EIF`T=0 +M.U8$9HE&6@^$MP(```^W1EIF.T98#X,Y`0``#[9'9<='/`````#'1S@````` +M@^#]@\@$B$=EBU8(B5<HQD=F``^W1EH/MTY8BY5D`0,`*<&+A6P!`P#!Z@F# +MZ`$/K]`YT78"B=%F@?D``6:)3U!V!F;'1U```8!^%`!T"O9'900/A5,"```/ +MMT9:,=(#1E`35E2)1TB)5TSV1V4"#X3;`0``BW4DA?8/A-`!``"+32"-5PR- +M11R)52")1PR)3Q")$>D>____BT8$QD9G`8"@'`(``/Z+1@B`H!P"``#^BT8$ +M@*!)`0``]XM&"("@20$``/>+1@2+`.@XX___#[9&9H3`#X3D````/`,/A-P` +M``")/"3H_/___XM4)!3'0BS_____B="#P##'0C"0700`B5(TQT(X`````(E$ +M)`2+0@B)!"3H_/___^F7_O__C;0F`````(NR9`$``(M&!(M6"(E$)!")5"08 +M#[9N9H!^%``/A(T```"+3EPQT@^W1EB+7F`IP8GH&=,L`8E.7(E>8`^$G`$` +M`(GJ@/H"#X2N`0``BT9<"T9@#X6B````BU0D$(L"Z'SB__^)Z(3`#X19`0`` +M/`,/A%$!``")/"3H_/___XGPBUPD'(MT)""+?"0DBVPD*(/$+.GHE?__C48D +MB40D!(M&!(D$).C\____Z0W___\/MT98,=N)ZHG!`TY<$UY@A-*)3ER)7F!U +M?(M$)!"+4!@QVHE4)`B+4!2+1"0(,<H)T'4$QD9F`8M$)!B+4!@S2!0QV@G* +M#X1>____BU0D$(L"Z-KA__^)Z(3`#X2@````/`,/A)@```")/"3H_/___XM4 +M)!3IIO[__XE\)#"+7"0<BW0D((M\)"2+;"0H@\0LZ?S___^)ZH#Z`W6;BT0D +M$(M0&#':B50D"(M0%(M$)`@QR@G0=8'I[O[__Y"-="8`9CM&6`^";OW__V;' +M1EH``.DT_?__#[=.6C'2#[=&6`-&4!-65#';*<@/MT]0&=HQVRG(&=J)1TB) +M5TSIE/W__XU&)(E$)`2+1@2)!"3H_/___^E1____C48DB40D!(M&!(D$).C\ +M____Z9C^__^+1"00BU`8,T@4,=H)R@^%6_[__\9&9@#I4O[__XM$)!"+4!@S +M2!0QV@G*#X4^_O__Z47^__^-M@````"-OP````!3BUPD"/9#90*+`\9#9@!T +M'XM0)(72=!B+2""-4PR)4""#P!R)0PR)2Q")$5O#B?:)7"0(6^G\____C;8` +M````4X/L"(M<)!"+`XN0<`$#`.CKW___BP.+2"2%R709BT@@C5,,B5`@@\`< +MB4,,B4L0B1&#Q`A;PXE<)!"#Q`A;Z?S___^-M@````"-OP````"#["R+5"0P +MB5PD'(ET)"")?"0DB6PD*(M:+(LKB[TH`0``BT<8BP")1"04BT(PB10DB40D +M&.C\____@'L(!`^&C````(NS9`$``(7V#X3*````BT8$A<!T#+D"````,=+H +M.ZW__XM&"(7`=`RY`@```#'2Z"BM__^+1A"+5@R)0@2)$(V%@````(ET)`2) +M!"3H_/___XM<)!B#PP$[7"04=$.+1QB+5"08BT20"(D$).C\____B=J+="0@ +MBUPD'(M\)"2+;"0H@\0LZ>%;__^0B1PDZ/S___^+7"08@\,!.UPD%'6]C4<P +MQT<PD%T$`(E_-,='.`````")1"0$BT<(B00DZ/S___^+7"0<BW0D((M\)"2+ +M;"0H@\0LP[D"````,=*)V.AVK/__Z6;___^0@^P<B5PD#(M<)"")="00B7PD +M%(EL)!B+:P2+<PB+10")\HNX*`$``(GHZ`%!___'AF0!````````#[:5'`(` +M`,>%9`$````````/MH8<`@``@^($@^#["="(AAP"```/MI4<`@``@^#]@^(" +M"="(AAP"```/MD4TB$8TC4<PQT<PD%T$`(E_-,='.`````")1"0$BT<(B00D +MZ/S___^)="0$QP0D%0```.C\____BT,0BU,,QT,8H&@$`(E;',=#(`````"# +MPQB)0@2)$(E<)`2+10")!"3H_/___XM<)`R+="00BWPD%(ML)!B#Q!S#58G5 +M5U93@^P,B00DBX!0`@``A<!T08M="(MU#(UT)@`Y<`1W*W($.1AS)8M(##M- +M!(M0"'8-@\0,N`$```!;7E]=PW(+.U4`=^R-M@````"+0!"%P'7)BP0DB[@P +M`@``!3`"``")1"0$.<=T18UV`(U/](!Y9`!U+HM92#'2#[=!4(MQ3`'8$?(Y +M501W&7(%.44`<Q([=0QRG(VV`````'<%.UT(<H^+/SE\)`2-=@!UOHL4)(NZ +M.`(``('".`(``(E4)`@YUW43ZUB0C70F`#R`=!.+/SM\)`AT1XU/]`^V062$ +MP'7IBUE(,=(/MT%0BW%,`=@1\CE5!'?8<@4Y10!ST3MU#`^"*O___XUT)@!W +MPCM="`^"&____XL_.WPD"'6Y@\0,,<!;7E]=PXUV`(/L"(D<)(M<)`R)="0$ +MBW0D$(G8B?+HM?[__X7`=1R+@U`"``")1A`QP(FS4`(``(L<)(MT)`2#Q`C# +MBU8<N/____^%TG3IBY-4`@``C8-4`@``A=)T"HU"$(M2$(72=?:),+C_____ +MZ\:-M@````"#[!");"0,BVPD%(D<)(M,)!B)="0$B7PD"(N%4`(``(V54`(` +M`#G(=!"-M@````"-4!"+0!`YR'7VBUD4C7D4BT$0B[5,`@``.=^)`L=!$``` +M``!T%8M1&(L&B7,$B1Z)4`2)`HEY&(EY%(M%`,=`-`$```"+'"2+="0$BWPD +M"(ML)`R#Q!##D(VT)@````"+5"0$BTPD"(L"A<!T"HM"!(E("(E*!,.)2@2) +M"L.)]HM$)`2#P"R)1"0$Z?S___]3@^P(BUPD$(M30(72=!.+0T3'0T`````` +MB1PDB40D!/_2BT-PB5L8QT,<`````(E#%(U#%(E$)`2+`X/`+(D$).C\____ +M@\0(6\.0C70F`(/L'(E<)!2+7"0@B70D&(MS*(D<).C\____BT,0C4L,BU,, +M@ZXD`@```8.N(`(```&)0@2)$(M#/(E+#(E+$(7`=`R)1"0$B30DZ/S___^+ +M7"04BW0D&(/$',.0C70F`%575E.#["R+="1`BWPD1(M.+(M&2(M63(M9:(E$ +M)!B)5"0<BT%(BU%,A=N)1"0@B50D)`^W=E`/A*,````/MD%E#[=4)$B#X`$/ +MML`YT`^$C````(M,)!@K3"0@BRO!X0DYZ8GH<POIH0```(UT)@")T(/#$(G" +M`Q,YT7/SBRLIP0^W]L'F"8G(B<HQR0-3"!-+#"G%.>Z)5PB)3PR-3Q")+W8F +MBT,8BU,<*S?'1P0`````B<^)00B+0Q"#PQ")40R)`8/!$#GP<MJ)-[@!```` +MQT<$`0```(/$+%M>7UW#BT%LA<!T'(M4)$B)?"0$B0PDB50D"/_0A<!T!XG[ +MZ5'___^#Q"PQP%M>7UW#,<#I:____XVV`````(V_`````%575E.#["R+="1` +MBT8HB40D((!^9``/A;8```"+3"0@,=*+?D@/MT90BVY,BYE0`@```?@1ZH7; +M#X0B`0``#[9.98/A0(3)=`J#>R@`#X0"`0``.5XX#X3Y````.U,$D`^"[P`` +M`'<..P.-M@`````/AM\````[:PR-M"8`````#X?/````#X/`````BTL8C58, +MC4,4B5,8B48,B4X0B1&#Q"Q;7E]=PXM4)!R+3"0@BT((@ZD@`@```8E&*(.` +M(`(```&)1"0@@'@(!`^'4P(``(M<)""+3"0@BY,P`@``@<$P`@``.<IU(XL& +MB4X,QT`T`0```(U&#(E!!(F#,`(``(E.$(/$+%M>7UW#@WXT``^%Z@$``(M$ +M)""+F#0"``"->_2+1S2%P`^(PP(``(M4)""-1@R)3@R)`XF"-`(``(E>$(/$ +M+%M>7UW#.WL(#X(W____BUL0A=L/A>7^__^+3CB%R0^$#`(``(M,)""`>0@$ +M#X99____BUPD((N;9`$``(7;B5PD'`^$E@$``(![9P`/A8P!``#V1F4(#X6" +M`0``@7YP``X%``^$=0$``(M,)"`[2P0/A6@!``"`>Q0`#X1%`@``BTM<BUM@ +MB4PD"#G=B5PD#`^'R_[__W((.<\/@\'^__\[5"0,D(UT)@!W%`^"+0$``#M$ +M)`B-="8`#X8?`0``BT8$@T`(`8D$).C\____BU0D'(E$)"2+!HM<)"2)`XM& +M!(E#!(M&-(E#-(M"!(M,)"2)>4B):4R+7"0<B4$HB7$LQT%L\`<%``^W0US' +M07``#@4`QD%F`,=!:`````!F*?AFB4%0#[9690^V066)TXG1@^.`@^`_@^%` +M"=@)R(G3@^,P@^#'B=$)V(/A"`G(B=#X/F#X@()R`G0#[9698/@_H/B +M`0G0BU0D)(A"98M&.(7`#X2V`0``B4(XBUPD'(U6#(M#!(N(/`(``(F0/`(` +M``4X`@``B48,B1'&1F2`BT0D)(E.$(E$)$"#Q"Q;7E]=Z?S___\/CLL```"- +M1@R)0@2)3A"+3"0@B58,B8$P`@``@\0L6UY?7</V1F4$#X2C_?__BU0D(/:" +M20$``"`/A)+]__^`HDD!``#?Z/S___^+3"0@@(E(`0``!(E!*(L&QX"(`0,` +M`0```(M!0`E!.(M!1`E!/.E;_?__]D9E0`^%ZOW__XM,)""+F50"``"%VW49 +MZ=?]__\[>P@/@N_\__^+6Q"%VP^$P_W__SM3!'+PC78`=P0[`W;G.VL,C;0F +M`````'?;#X+$_/__D(VT)@````#KPHM<)""-1@R)3@R+DS0"``")@S0"``") +M`HE6$.D3_?__BU,$C48,@T<T`8E#!(E>#(E6$(D"Z?G\__^+7"0<BTM<BUM@ +MB4PD$#G:B5PD%`^"@OS__W<(.<@/AGC\__\[;"04<A`/A^G^__\[?"00#X/? +M_O__BT8$@T`(`8D$).C\____BU0D'(E$)"2+!HM<)"2)`XM&!(E#!(M&-(E# +M-(M"".F[_?__BTPD),=!.`$```#I/?[__XVT)@````!3@^P(BUPD$(M#*(.` +M(`(```&+0SR%P'0JQT`<`````(E8(,=`)`````")1"0$BT,HB00DZ/S___^% +MP'43BT,\B4,XB5PD$(/$"%OI_/___X/$"%O#C70F`(V\)P````"#["R)="0@ +MBW0D,(E<)!R)?"0DB6PD*(M&*(M>+(E$)!B+N&0!```/MT90#[=K4&:)1"06 +M@'YF`71'#[9&9L9#9`"(0V:)="0$BT,$B00DZ/S___^+0P2#:`@!BT<$@X`D +M`@```8MT)"")7"0PBWPD)(M<)!R+;"0H@\0LZ?S___^+5DR+2TR+1D@S0T@Q +MT0G!=:>+1B"+5B2%P'0.C78`Q@(`@\(!@^@!=?6+1P0[1"08=#B)1BB+5V"+ +M1UR)5DR)1DAF*VPD%L9&9@!FB6Y0BUPD'(ET)#"+?"0DBW0D((ML)"B#Q"SI +M_/___XM'".O#ZPV0D)"0D)"0D)"0D)"055=64X/L'(M$)#"+3"0P@\`,B40D +M$(M$)#"#P1R)3"0,@\`LB40D"(M,)##'030`````ZQV+0@B%THM,)#")02QT +M+8M"!,=""`````")!"3_$HM$)#"+4"P[4#!UUX72QT`P`````,=`+`````!U +MTXM$)#"+3"00BT`,.<B)1"04#X0S`@``QT0D&`````"+="04@>XH`@``BX8@ +M`@``A<!U$(M$)!3VAAP"```@C7@(=`^+3"04QT0D&`$```"->0B-KC@"``"+ +MCC`"```Y^71_BQ&)RXM!!(/K#(E"!(D0B4D$B0ET:0^VEAP"``#VP@$/A#@! +M``"+AB0"``"%P'0/BX9$`@``.T,T#X^&`0``@^(8#X5]`0``BT,TB6L,@X8D +M`@```8F&1`(``(N&/`(``(F./`(``(D(B4,0BT8$B1PD_U`@BXXP`@``.?EU +M@8V^2`(``(N.2`(``#GY=%F+$8G+BT$$@^L,B4($B1")202)"71#BT,\A<!T +M*L=`'`````")6"#'0"0`````B40D!(M#*(D$).C\____A<!UM8M#/(E#.(D< +M).C\____BXY(`@``.?EUIXN^5`(``(7_="B-OE0"``"-M@````"+'X7;=!:) +MVHGPZ`'T__^%P'1]C7L0BQ^%VW7JBT0D%(M,)!"+`#G(B40D%`^%C?[__XM< +M)!B%VP^$K````(M,)#"+42R%T@^%"_[__XM!-(7`#X4`_O__@\0<6UY?7</& +M0V8"BX8\`@``@X8D`@```8F./`(``(EK#(E#$(D(B1PDZ/S____I;/[__XUT +M)@"+0Q")!XN&4`(``(E#$(U#'(F>4`(``(E$)`2+1"0(B00DZ/S___^+3"0P +MQT$T`0```.DY____BX8P`@``C5,,B5`$B7L0C;Y(`@``B4,,B98P`@``Z9W^ +M__^+1"0PBXB(`0,`A<ET'^MMBT((BTPD,(E!)(72=$V+0@3'0@@`````B00D +M_Q*+3"0PBU$D.U$H==?'02@`````QT$D`````.O1BT$$BQ&)0@2)$(G(@^@, +MB0F)200/A/'^__^)!"3H_/___XM$)#"+2!P[3"0,=='IU_[__\>`B`$#```` +M``")!"3H_/___^N<D(UT)@"#[`R)7"0$BUPD$(ET)`B+,XM&)(7`="B+3B"- +M4PR-1AR)5B")0PR)2Q")$8ET)!"+7"0$BW0D"(/$#.G\____B1PDZ/S____K +MXI"0D)"0D%4Q[5=64XM\)!B+="04B?@)\'0?B?&)^X/%`8/!_X/3_XGPB?HA +MR"':B<:)T(G7"?!UX8GH6UY?7<.-M@````!55U93@^P,BW0D((M&#(E$)`B+ +M7CR+3CB)V`G(=0WVAD@!```"#X7:````,?^+1D"+5D0)R`G:B50D!(D$).C\ +M____BU8$#[92!@'X.=!^7("F'`(``/[VAAP"```!=$2+1"0(A<!T/(M<)`@/ +MME,PA-)T,(M$)`BY_O___[O_____.7!(=&TQP.L2D(UT)@"+7"0(#[;(.72+ +M2'0^@\`!.-!U[(/$#%M>7UW#BVX\BWXX@(X<`@```8GI"?ETF(M>1(M.0#'K +M,?F)V`G(=4R`ID@!``#]Z7S___\QP#'2]L$@#Y3`#Y7"T^+3X(G3B<'WT_?1 +MBT0D""%(0(G&(5A$Z0;___^+1@2`>`<!#X49____#[9X!ND2____B=J)R"'J +M(?B)T0G!#X0J____@(Y(`0```ND>____C;0F`````%93BT@,B<,/MG$PB?"$ +MP'0A,<`QTCE92'4/ZQN-="8`#[;".5R!2'0.@\(!B?`XPG7NN/\```!;7L.- +MM@````!75HG&4XMZ)(7_=$.+1Q2%P'0VBT`,A<!T+SGP=#4/ME`PA=)^[3'; +MBTR82(7)=`J`>0@$=@0Y\709@\,!.=J0?^:+0`R%P'71BS^%_W6],<#K!;@! +M````6UY?PXUT)@!75E.#[!R+7"0LBW0D,(M\)#2`>P@$=GS'1"08`````,=$ +M)!0!````#[9+,(7)?A^+4T@QP(72=`_K=)"-="8`BU2#2(72=6>#P`$YR'7Q +MBU,$@'H%`'0A#[9#,`^V4@8IT`^O1"04B40D%`^W0S([1"08=@2)1"08A?9T +M!HM$)!B)!H7_=`:+1"04B0>#Q!Q;7E_#A?9T!L<&`````(7_=.O'!P$```"# +MQ!Q;7E_#C40D%(E$)`B-1"08B10DB40D!.C\____BU,$@'H%`'2IZX:-M"8` +M````C;PG`````%.#[!R+7"0DC40D%(E$)`B-1"08B40D!(M#!(D$).C\____ +MC40D#(E$)`B-1"00B40D!(M#"(D$).C\____BTPD%#M,)`P/ET,4BU0D&(M$ +M)!`YT',"B=`/K\%FA<!FB4-D=09FQT-D@`"#Q!Q;PY"#[!B);"04BVPD'(M4 +M)"")7"0(B70D#(E\)!`/MD4(.D((=!RX`0```(M<)`B+="0,BWPD$(ML)!2# +MQ!C#C78`#[=%,&8[0C!UVH!],``/A+,```"+34B+4DB%R73&,?^%TG3`@'D( +M!'8]@'H(!(GV=K*)5"0$B0PDZ/S___^$P'6B#[9%,(/'`3GX?GJ+3+U(BT0D +M((7)BU2X2'2'A=)T@X!Y"`1WPX!Z"`20C70F``^';O___XM!)#M")`^%8O__ +M_XMQ,(M:,(M6"(M+"(M&!#-#!#'1"<$/A4;___^+5A`[4Q"+1@P/AS?___]R +M"3M##`^'+/____:%2`$```.0=(#I'?___S'`Z1O___^)]E.#[`B+5"00BUH$ +MBT((A=MT+H7`=&[V@QP"```!=36`H!P"``#^@*,<`@``_L=#'/_____&0F<! +M@\0(6\.-=@"%P'3P@*`<`@``_L9"9P&#Q`A;P_:`'`(```%TPL9"9P"`BTD! +M```$@(A)`0``!(D4).C\____B5PD$(/$"%OI_/___X"C'`(``/[&0F<!@\0( +M6\.-M@````"-OP````!55U93@^PLBUPD0(M$)$2)1"00#[93,(72#XZ_`0`` +MQT0D%`````#II0```(UT)@"%P(E=#'0'QT`,`````(M$)!3'@TP!```````` +MQX-0`0```````(EL@T@/MI-(`0``B="#R`JH((B#2`$``'0)@\J*B)-(`0`` +M#[9,)!0QP#'2]L$@#Y3`#Y7"T^+3X`E3//?2"4,X]]`A4T0A0T"+3"00A<D/ +MA$0!``"`BT@!```$BU0D$(72#X4@`0``@T0D%`$/ME,P.U0D%`^.#0$``(M, +M)!2+1(M(A<!T"?:`'`(```%UV(ML)!"%[0^%/O___XM#!`^V0`8IPHG0P?@? +MB50D"(E$)`R+0Q2+4QB)!"2)5"0$Z/S___^)1"0@BP.)5"0DBW`,@\`,.<9T +MD,=$)!C_____QT0D'/_____K"XL#BS:#P`PY\'19C;[8_?__]H<<`@```73F +M@'\(`77@]D=,!'3:B?J)V.@Q^___A,!US8M7+#E4)"2+1RAWP9!R!CE$)"!W +MN#M4)!R-="8`=ZX/@[,```")_8E$)!B)5"0<ZYR%[0^$$O____:#20$```)T +M7XM%)(7`=!6-="8`BW`4A?8/A?/^__^+`(7`=>^+3"04BT2+2.E2_O__]H-( +M`0``"'4=@\0L6UY?7<.);"0$QP0D!P```.C\____Z:?^__^)7"1`@\0L6UY? +M7>G\____BU0D((M,)"2)+"3'1"0,`````(E4)`2)3"0(Z/S___^%P(G%#X2` +M_O__BU0D%(M$DTCIY?W__SM$)!@/@^O^___I/O___XVV`````%575E.![!P" +M``"+M"0P`@``@'X(!'8'@*9(`0``^_:&'`(```%T5H!^"`1V6X!^,`!T2C'; +MBTR>2(7)=#4/MI8<`@``#[:!'`(``(/B`H/@_0G0B($<`@``BU2>2(!Z"`1V +M!P^V1C2(0C2)%"3H_/___P^V1C"#PP$YV'^X@<0<`@``6UY?7<.+1B2)1"08 +M]H`<`@```0^$1`,``(MN##'_A>UT"XM]#(7_#X1H`P``C5PD'(G8Q@``C90D +M'`(``(/``3G0=>^%_\<#]!9X6@^$+`,``(M')(E#!(M'+(F#Q@```/:&'`(` +M``)T!(!+%@&%_P^$%@,``(/]`1G`@\`"B$,8BX]D`0``A<ET-HL!BU%@B4,( +MBT%<B5,0#[93%HE##`^V012#XOV#X`$!P`G"B%,6.7D(#X3M`@``#[9!9HA# +M%`^V1S2%[8B#Q0````^VAQT"``"(0Q>+1Q2+5QB)0QF)4QT/MD<(B$,A#[9' +M,(A#(HGH#X2G`@``Z'_X__\/ME,E@^+[B$,C#[9',8A#)`^VAT@!``"#X`'! +MX`()PHA3)?:'2`$```)T!H/*`8A3)8M'.(U+28M7/(F#K0```(F3L0```(M' +M.&:)0R>+ATP!``"+EU`!``")0RF)4RV+1RB-EU0!``")@[T```"+AU0!``") +M0TF+0@2)002+0@B)00B+0@R-EZP!``")00R+AV@!``"-BYT```")0UF+AZP! +M``")@YT```"+0@2)002+0@B)00B+0@R)00R+EVP!``"-AVP!``"-2UV)4UV+ +M4`2)402+4`B)40B+4`R)40R+4!")41"+4!2)412+4!B)41B+4!R)41R+4"") +M42"+4"2)422+4"B)42B+4"R)42R+4#")43"+4#2)432+4#B)43B+0#R)03R% +M[0^$AP```(M%%(M5&(E#,8E3-0^V10B(0SD/MD4PB$,ZB?#H+??__P^V4SV# +MXON(0SL/MD4QB$,\#[:%2`$``(/@`<'@`@G"B%,]]H5(`0```G0&@\H!B%,] +MBT4XBU4\B8.U````B9.Y````BT4X9HE#/XN%3`$``(N54`$``(E#08E318M% +M*(F#P0```(D<).C\____B1PDQT0D!``"``#H_/___XE<)!#'1"04`````,=$ +M)`P!````]]B(1"0QBT8HBU8LB40D!(E4)`B+1B2)!"3H_/___XM,)!B+03B+ +M43R)7"00QT0D%`````#'1"0,`0```(G!`TXHB=,37BR!P0#X__^#T_\%``#^ +M_X/2_R4``/[_*<$9TXE,)`2)7"0(BT8DB00DZ/S___^+=B2)="08BT0D&/9` +M3!`/A(_\__^)!"3H_/___X'$'`(``%M>7UW#,<#'0P0`````Z<_\___&0Q@` +MZ9+^__^)Z#'MB<?IC?S__XGPZ5+]__^#R@2(4Q;I"/W__XUT)@"-O"<````` +M5E.#[`2+1"00BU@,C7`,.?-U".LYBQLY\W0SC9/8_?__@'H(!';N]H)(`0`` +M!'3EBT(,A<!T"8G"BT(,A<!U]XD4).C\____BQLY\W7-@\0$6U[#C;8````` +MC;\`````5U93@^P0BUPD(.L&C70F`(G#BT,,A<!U]^C\____B[MD`0``A?^) +M0R1T*HMW!#G>=$CH_/___X7VB0=T&(UV`.C\____B48D.T,D=/.)-"3H_/__ +M_XD<).C\____BT,$BT@\A<ET#(E<)""#Q!!;7E__X8/$$%M>7\.+=PCKLY"# +M["R)="0@BW0D,(E<)!R)?"0DB6PD*`^V1@B#Z`4\!0^'Z@````^VP/\DA009 +M```/MT8R,=+WV(/2`/?:(89,`0``(990`0``]H8<`@```0^%Q@$``(M^0(MN +M1(GH"?AU"(M&.`M&/'16@'X("@^$T@$``("F2`$``/Z)Z@GZ=#^+1D"`CDD! +M```@"T9$=##VAAP"```!='>+?@R%_W0)]H<<`@```70CQT0D!`````")-"3H +M_/___XVT)@````#VAAP"```!=$>+?@SVADD!```$=3[VAD@!```#=#6+1CB+ +M5CR)1"00B50D%`G"#X5_`0``A?]T"?:''`(```%T&H".2`$```B)-"3H_/__ +M_XM^#(7_#X38````BUPD'(MT)""+?"0DBVPD*(/$+,,Q_S'M@'XP`'42Z]60 +MC70F``^V1C"#QP$Y^'Y$BUR^2(7;=.V`>P@$=N>)'"3H_/____:#2`$```1T +M!X".2`$```0/MH-(`0``@^`#/`)UP0^V1C"#QP&]`0```#GX?[R%[0^$>?__ +M_X"F2`$``/XQVX7`?QOI9____XVT)@`````/MD8P@\,!.=@/CE'___^+5)Y( +MA=)TZ8!Z"`1VX_:"2`$```%TV@^V@D@!``"#X+Z#R`*(@D@!``")%"3H_/__ +M_^N]]H9(`0``!`^$&____XET)#"+7"0<BW0D((M\)"2+;"0H@\0LZ?S___^+ +M;D2+?D")ZHGX]](C5CSWT"-&.(G1"<$/A"+^__^`CD@!```"Z1;^__\/MDXP +M,<`QTH/I`?;!(`^4P`^5PM/BT^"+3CPS1C@QT0G!#X4&_O__Z0C^__^+7D2+ +M1D")V8G"]]$C3"04]](C5"00B<@)T`^$@/[__^E<_O__D(VT)@````"#["R) +M?"0HBWPD,(M4)#2)7"0@B70D)(GXZ&+R__^$P'5>BT<4BU<8B40D&(M'!(E4 +M)!P/MD\P]H=)`0```@^V4`9T43'`]H=(`0``!'41BUPD((MT)"2+?"0H@\0L +MPY")/"3H_/___XM<)"`QP(MT)"2+?"0H@\0LPXVV`````(M<)""X_____XMT +M)"2+?"0H@\0LPP^VP0^VTBG0B<+!^A_'1"0,`````(MT)`R)1"0(BT0D&(E4 +M)`R+5"0<B00DB50D!.C\____B70D#(E4)`B+5"0TB40D!(D4).C\____A<!T +MFHE$)`2)/"3H_/___^E-____B?:-O"<`````55>)UU93C11)@^P,C2S7B4PD +M"`^V52&)!"2)5"0$Z/S___^%P(GT`0``@*`<`@``_@^V1Q>(AAT"``"+ +M1P2)1B2+A\8```"%P(E&+'4&BT<$B48L#[:'Q0```(U=$(A&-`^V4Q4/MH9( +M`0``P.H"@^(!@^#^"="(AD@!``"+12F+52V)ADP!``")EE`!``"+5"0(BX27 +MO0```(E&*`^V322X`0```-/@B$XQ9HE&,HM#"8M3#8E&%+C_____B588#[9- +M(KK_____@/D_B$XP#X;8````B59$C5=)B49`BT=)C8Y4`0``B894`0``BT($ +MB4$$BT((B4$(BT(,C9>=````B4$,BT=9C8ZL`0``B89H`0``BX>=````B8:L +M`0``BT($B4$$BT((B4$(BT(,B4$,BU==C4==C8YL`0``B99L`0``BU`$B5$$ +MBU`(B5$(BU`,B5$,BU`0B5$0BU`4B5$4BU`8B5$8BU`<B5$<BU`@B5$@BU`D +MB5$DBU`HB5$HBU`LB5$LBU`PB5$PBU`TB5$TBU`XB5$XBT`\B4$\@\0,B?!; +M7E]=PY"-="8`,<`QTO;!(`^4P`^5PM/@T^*#P/^#TO_I#/___XUT)@"![&P" +M``"+A"1P`@``C4PD6(F<)%P"``"+E"1P`@``B;0D8`(``(NT)'`"``")O"1D +M`@``B:PD:`(``(L`B40D/(MZ)(M'.(M7/(E,)!#'1"04`0```,=$)`P!```` +MB<$#3BB)TQ->+(D\)('!`/C__X/3_P4``/[_@]+_)0``_O\IP1G3B4PD!(E< +M)`CH_/___X7`B<8/A`P!``"+G"1P`@``C4PD6,=$)!0!````B4PD$,=$)`P! +M````BT,HBU,LB40D!(E4)`B+0R2)!"3H_/___X/X_XG%=$6-3"18B0PDZ/S_ +M__^!?"18]!9X6@^$\0```+C_____BYPD7`(``(NT)&`"``"+O"1D`@``BZPD +M:`(``('$;`(``,.-=@"%]G71BT<XBU<\QT0D%`$```#'1"0,`0```(E$)""+ +MA"1P`@``B50D)(M,)""-5"18BUPD)(E4)!"+5"0D`T@H$U@LBT0D(('!`/C_ +M_X/3_P4``/[_@]+_)0``_O\IP1G3BY0D<`(``(E,)`2)7"0(BT(DB00DZ/S_ +M__^%P`^$./___^E-____C40D6(D$).C\____@7PD6/06>%IT"K[^____Z=3^ +M__^-5"18QT0D!``"``")%"3H_/___X3`#X2X_O__Z]B-7"18QT0D!``"``") +M'"3H_/___X3`#X7S_O__A>T/A3L&``"%]HUT)@`/A80&``"`?"1Y!`^&U/[_ +M_X!\)'I`#X?)_O__@+PDD@```$`/A[O^__^+="0\,=*+G"0)`0``#[=$)'^+ +MC"0%`0``"=.+5@R)7"1$"<&)3"1`B?&#P0PYRG0=C;K8_?__@'\(!'8+BT<, +MA<`/A)$&``"+$CG*=>.+1"0\,<F-5"18Z)G[__^%P(G'#X14_O__#[:72`$` +M`(G0@^+]T.@*1"1]@^`!`<`)PHM'.(B72`$``(M7/(E$)"B)5"0L#[9',,=$ +M)!C_____QT0D'/____\\/W<EB<&)SL'N!8/F`8GS@_,!T^/3YHE<)!B#1"08 +M_XET)!R#5"0<_XM$)$"+3"0H(T0D&(M4)$0C5"0<"<&)3SB+1"0L"=`/MI=( +M`0``B4<\#[9$)'V#X@'`Z`*#X`$XPG0B#[:72`$``(M'!(/B_HB72`$``(!X +M!@!T"8/*`HB72`$``(M$)&"%P'1BBX]D`0``@(])`0``!(7)#X35`P``@'D4 +M``^$?P0``(M4)&@Y46"+1"1D=P=R$SE!7'8.B4%<B5%@#[9$)&R(06;V1"1N +M!`^$BP,``(M1"(72#X1S`P``BT$$.<(/A%<#``"+1R@[A"05`0``#X0.`P`` +M@(](`0```L>'3`$```````#'AU`!````````#[:7'`(``(G0@^+]T.@*1"1N +M@^`!`<`)PHB7'`(```^V1"1[@'PD<`$/AEL"```/MMB+=)](A?8/A"0"```/ +MMI8<`@``B="#XOW0Z`I$)&Z#X`$!P`G"B)8<`@``#[:62`$``(G0@^+]T.@* +MA"25````@^`!`<`)PHM&.(B62`$``(M6/(N,)!$!```/MYPDEP```(E$)%") +M5"14BY0D#0$``(E,)$R)5"1(#[9.,,=$)##_____QT0D-/____^`^3]W(S'` +M,=+VP2`/E,`/E<+3X-/BB40D,(-$)##_B50D-(-4)#3_BTPD,`^WPS'2"T0D +M2(M<)#0+5"1,(<&+1"10(=,/MI9(`0``"<B)1CB+1"14@^(!"=B)1CP/MH0D +ME0```,#H`H/@`3C"="(/MI9(`0``BT8$@^+^B)9(`0``@'@&`'0)@\H"B)9( +M`0``#[:,)),```"+;(Y(A>T/A93[__^+E"1P`@``BT8HB52.2#N$)!D!``") +M<@P/A*<```"`CD@!```"QX9,`0```````,>&4`$````````QP#'2]L$@#Y3` +M#Y7"T^+3X/?2]]`A5D0A1D")-"3H_/___P^VAD@!``"H$'4-J"!T'8/(@(B& +M2`$``,>&3`$```````#'AE`!````````]H<<`@```70MBX=D`0``A<!T(XM0 +M!(72=!R+0`B%P'05.==T`HG0B00DZ/S___\QP.G;^O__,<#IU/K__XN4))T` +M```YEE`!``"+A"29````#X):____=PPYADP!```/ADS___^)ADP!``")EE`! +M``#I.____XM$)#RY`0```(U4)%CHO_?__X7`B<8/A'KZ__^)>`R)1)](Z;3] +M__\/ML@QTHN<)'`"```QP/;!(`^4P`^5PM/BT^#WTO?0(5=$(4=`B5R/2(E[ +M#(D\).C\____#[:'2`$``*@0=1&H(`^$&____X/(@(B'2`$``,>'3`$````` +M``#'AU`!````````Z?G^__^+E"2%````.9=0`0``BX0D@0````^"\_S__W<, +M.8=,`0``#X;E_/__B8=,`0``B9=0`0``Z=3\__^X_____\=!!`````#IP/G_ +M_XM!!(GZB7D(Z8/\__^+002%P`^$XP```(M1".EP_/__BW0D/(M&%(GS@\,4 +M.=AT*(M4)&"-2/0Y4/1T#HL`.=AT%CE0](U(]'7RA<F)CV0!```/A?/[__^+ +M1"0\@^B`B00DZ/S___^%P(G!B8=D`0``#X1$^?__,<#&!`@`@\`!@_AH=?2+ +M5"0\BW0D/(E9#(M"&(U1#(E6&(D0BU0D:(E!$(M$)&")`8M$)&2)46")05P/ +MMD0D;(A!9O9$)&X"#X2&^___BX=D`0``QD`4`>EW^___BU0D:#E18(M$)&0/ +MAY+[__\/@G[[__\Y05P/@X/[__^)]NEN^___BU$(B?B)>02-=@#IA?O__XUT +M)%B)-"2-7"18Z/S___^+C"1P`@``C40D6,=$)!0`````B40D$,=$)`P!```` +MBT$HBU$LB40D!(E4)`B+022)!"3H_/___XD<).C\____Z7SY__^-="18B30D +MZ/S___^+1SB-3"18B[0D<`(``(M7/(E,)!#'1"04`````(G!QT0D#`$````# +M3BB)TQ->+('!`/C__X/3_P4``/[_@]+_)0``_O\IP1G3B4PD!(E<)`B+1B2) +M!"3H_/___XU$)%B)!"3H_/___^D#^?__BT<D.T0D7`^%8OG___:''`(```%U +M=X!\)'`!#X9M^?__#[9$)'N+=(=(A?8/A%SY___VAAP"```!#X1/^?__BTXX +MBX0D#0$``(M>/(N4)!$!```)R`^WC"27````"=HQVPG:"<B)5"0$B00DZ/S_ +M__^+5@0/ME(&.=`/C@[Y__^)/"3H_/___^GH^/__BT0D0(M4)$0+5SP+1SB) +M5"0$B00DZ/S___^+5P0/ME(&.=!_SNE?____C;8`````55<Q_U93@^P,BT0D +M((MH#(E$)`@/MD4PA,`/MO`/A(`"``"+5"0(,<DQVSE52'46Z6X"``"-!(T` +M````BU0D"#E4!4AT$H/!`8/3`(G(B=HQ\#'Z"<)UW3'`,=+VP2`/E,`/E<+3 +MXM/@"45`"55$B2PDZ/S____VA1P"```!#X7&````BT4,A<`/A.,!``"+0`2) +M+"3_4"0QR3';@'TP`'1GC02-`````(M4!4B%TG1"]H(<`@```70Y@'H(!'8S +M#[:R2`$``(GP@^"/B()(`0``.U0D"`^$HP$``/:"2`$```%T#H/FCH/.`HGP +MB()(`0``@\$!#[9%,(/3`#'2.=IWGP^#1P$``(N%9`$``(7`#X0P`0``BU`$ +MA=(/A"4!``"+0`B%P`^$&@$``#G5=`*)T("@'`(``/Z)1"0@@\0,6UY?7>G\ +M____#[:%2`$``(/@OZ@@B(5(`0``=!V#R("(A4@!``#'A4P!````````QX50 +M`0````````^VM4@!``"+742+34")\(/@_HG:B(5(`0``]]*)R"-5//?0(T4X +MB=$)P74+@^;LB?"(A4@!``"+=0R%]@^$JP```("F2`$``/XQR3';,?^`?C`` +M#X24````C02-`````(M4!DB%TG0P]H(<`@```70G@'H(!'8A]H)(`0```708 +M#[:"2`$``+\!````@^"L@\@"B()(`0``@\$!#[9&,(/3`#'2.=IWL7,XBYUD +M`0``A=L/A'P```#VA4@!```$=5.%_W59@(U)`0``((/$#%M>7UW#D#G(#X=* +M_O__Z:S^__\YR)`/AV[____KO3'_C;8`````Z[.)+"3H_/___^D9_O__@^:, +MB?"(@D@!``#I9/[__XDL).C\____ZZ>)+"3H_/___^N=N`$````QTNFZ_?__ +MBT4,A<!T#HN(9`$``(7)#X5O____BU4<A=)X%<=$)`0`````B2PDZ/S____I +M4____X7`#X1+____BT`<A<"-=@!YV>D\____D)"0D)"0D)"0H0````"%P'0R +M,<F0C70F`(!X"`&+`(/9_X7`=?.%R70:H0````")PL'Z'\'J%`'"P?H,B=#! +M^A_W^<.+%0````")T,'X'\'H%`'0P?@,PY#SPXVT)@````"-O"<`````BTPD +M!(M4)`B+@?P```")0@R)D?P```##D(VT)@`````QP,.-M@````"-O"<````` +M5U93@^P0BWPD((N'[````,>'%`$```````"-M@````"+MP`!``"%]G0Y.09W +M9#FW!`$```^$BP```(M&$(F'``$``(M&",=&$`````")!"3_5@2+MP`!``"+ +MA^P```"%]G7'/7\!``!W(8N?_````(7;=!?'1"0$`````(L#B00D_U,$BUL, +MA=MUZ8/$$%M>7\.+G_P```"%VW3OC70F`(L&B40D!(L#B00D_U,$BUL,A=MU +MZXN'[````#L&#X-=____Z\;'AP0!````````QX<``0```````.EE____B?96 +M4X/L%(MT)""+GOP```"%VW07QT0D!/____^+`XD$)/]3!(M;#(7;=>DQP(-^ +M+``/E<"#Q!1;7L.-M"8`````4X/L"(M<)!"+@Q0!``"%P'4YC8,(`0``QX,( +M`0``$#(%`(F;#`$``,>#$`$```````")1"0$C4,LB00DZ/S____'@Q0!```! +M````@\0(6\.#[`R+5"00BTPD%(N"``$``(7`=""+@@0!``")2!")B@0!``") +M%"3H_/___[@!````@\0,PXN"[````#L!<PZ)B@0!``")B@`!``#KUXM!"(D$ +M)/]1!#'`Z]>-M@````"+1"0$!>0```")1"0$Z?S___^-M"8`````C;PG```` +M`(M$)`0%Y````(E$)`3I_/___Y"0D)"0D)"0D)"0D)"04XM<)`@/MD,4B<*# +MX/L*4Q6#X@0)T`^V4Q6)P8/@_H/A`8/B`0G*"="(0Q0/MD,DB<*#X/L*4R6# +MX@0)T`^V4R6)P8/@_H/A`8/B`0G*"="(0R1;PXUT)@"-O"<`````4XM<)`@/ +MMD,EB<*#X/L*4R:#X@0)T`^V4R:)P8/@_H/A`8/B`0G*"="(0R4/MD,]B<*# +MX/L*4SZ#X@0)T`^V4SZ)P8/@_H/A`8/B`0G*"="(0SU;PP`````````````` +M`````)8P!W<L80[NNE$)F1G$;0>/]&IP-:5CZ:.59)XRB-L.I+C<>1[IU>"( +MV=*7*TRV";U\L7X'+;CGD1V_D&00MQWR(+!J2'&Y\]Y!OH1]U-H:Z^3=;5&U +MU/3'A=.#5IAL$\"H:V1Z^6+][,EEBD]<`139;`9C8ST/^O4-"(W((&X[7A!I +M3.1!8-5R<6>BT>0#/$?4!$O]A0W2:[4*I?JHM35LF+)"ULF[VT#YO*SC;-@R +M=5S?1<\-UMQ9/=&KK##9)CH`WE&`4=?(%F'0O[7TM"$CQ+-6F96ZSP^EO;B> +MN`(H"(@%7[+9#,8DZ0NQAWQO+Q%,:%BK'6'!/2UFMI!!W'8&<=L!O"#2F"H0 +MU>^)A;%Q'[6V!J7DOY\SU+CHHLD'>#3Y``^.J`F6&)@.X;L-:G\M/6T(EVQD +MD0%<8^;T46MK8F%L'-@P985.`&+R[94&;'NE`1O!]`B"5\0/]<;9L&50Z;<2 +MZKB^BWR(N?S?'=UB22W:%?-\TXQE3-3[6&&R3<Y1M3IT`+RCXC"[U$&EWTK7 +ME=@];<31I/OTUM-JZ6E#_-EN-$:(9ZW0N&#:<RT$1.4=`S-?3`JJR7P-W3QQ +M!5"J00(G$!`+OH8@#,DEM6A7LX5O(`G49KF?Y&'.#OG>7IC)V2DBF-"PM*C7 +MQQ<]LUF!#;0N.UR]MZULNL`@@[CMMK._F@SBM@.:TK%T.4?5ZJ]WTIT5)ML$ +M@Q;<<Q(+8^.$.V24/FIM#:A::GH+SP[DG?\)DR>N``JQG@=]1),/\-*C"(=H +M\@$>_L(&:5U78O?+9V6`<39L&><&:VYV&]3^X"O3B5IZVA#,2MUG;]^Y^?GO +MOHY#OK<7U8ZP8.BCUM9^D]&AQ,+8.%+RWT_Q9[O19U>\IMT&M3]+-K)(VBL- +MV$P;"J_V2@,V8'H$0</O8-]5WV>H[XYN,7F^:4:,LV'+&H-FO*#2;R4VXFA2 +ME7<,S`-'"[NY%@(B+R8%5;X[NL4H"[VRDEJT*P1JLURG_]?",<_0M8N>V2P= +MKMY;L,)DFR;R8^R<HVIU"I-M`JD&"9P_-@[KA6<'<A-7``6"2K^5%'JXXJXK +ML7LX&[8,FX[2D@V^U>6W[]Q\(=_;"]32TX9"XM3Q^+/=:&Z#VA_-%KZ!6R:Y +M]N%WL&]W1[<8YEH(B'!J#__*.P9F7`L!$?^>98]IKF+XT_]K847/;!9XX@J@ +M[M(-UU2#!$["LP,Y829GI_<68-!-1VE)VW=N/DIJT:[<6M;99@O?0/`[V#=3 +MKKRIQ9Z[WG_/LD?I_[4P'/*]O8K"NLHPD[-3IJ.T)`4VT+J3!M?-*5?>5+]G +MV2,N>F:SN$IAQ`(;:%V4*V\J-[X+M*&.#,,;WP5:C>\"+2H=``!N'0``,!X` +M`#`>```P'@``,!X``+(=``#Q'0``,!X``$@>``"?*```J2@``*DH``"I*``` +MJ2@``*DH``"I*```J2@``*DH``"I*```J2@``*DH``"I*```J2@``*DH``"I +M*```J2@``*DH``"I*```J2@``*DH``"I*```J2@``*DH``"I*```J2@``*DH +M``"I*```J2@``*DH``"I*```J2@``*DH``"I*```J2@``*DH``!R*```J2@` +M`'(H``"I*```J2@``*DH``!R*```<B@``*DH``"I*```J2@``*DH``"I*``` +MJ2@``*DH``"I*```J2@``*DH``"I*```J2@``*DH``"I*```J2@``*DH``"I +M*```<B@``*DH``"I*```J2@``*DH``"I*```J2@``*DH``"I*```J2@``*DH +M``"I*```J2@``*DH``"I*```<B@``'(H``!R*```<B@``*DH``"I*```J2@` +M`*DH``"I*```J2@``*DH``"I*```J2@``*DH``"I*```J2@``*DH``"I*``` +MJ2@``*DH``"I*```J2@``*DH``"I*```J2@``*DH``"I*```J2@``*DH``"I +M*```J2@``*DH``"I*```J2@``*DH``"I*```J2@``*DH``"I*```J2@``*DH +M``"I*```J2@``*DH``"I*```J2@``*DH``!R*```J2@``*DH``"I*```J2@` +M`*DH``"I*```J2@``*DH``!R*```J2@``'(H``"I*```J2@``*DH``!R*``` +M<B@``*DH``"I*```J2@``'(H``"I*```J2@``*DH``"I*```J2@``*DH``"I +M*```J2@``*DH``"I*```J2@``*DH``"I*```J2@``*DH``"I*```J2@``*DH +M``"I*```J2@``'(H``"I*```<B@``*DH``"I*```J2@``'(H``!R*```OCT` +M`'$]``!^/0``H#T``+X]``"T/0``JCT``+X]``"^/0``OCT``+X]``"J/0`` +MZ60```UE```Q90``I64``#=F````````X:T``+:M``#!K0``YZT``+"M``"P +MK0``L*T``+"M``"PK0``L*T``+"M``"PK0``L*T``+"M``"PK0``L*T``/&M +M``#GK0``QZT``.&M``#1K0``UZT``/&M``"CK0```"````1$````(`$`!$0` +M``(!```".@```@$!``(Z```$`0``"P````0!`0`+````"`$```9:`0`(`0$` +M!EH!`!`!```#%`$`$`$!``,4`0`@`0``!B@``"`!`0`&*```0`$```,1``!` +M`0$`!R<``(`!```+1P,`@`$!``M'`P#P)`$`8"4!`(4E`0"J)0$`SR4!`/0E +M`0`A)@$`OB8!`/4F`0#*)P$`>"<!`)TG`0#O)P$``2D!`#XI`0!O*0$`LBD! +M`.8J`0#C*0$`^"D!`"XG`0!3)P$`3B8!`(4F`0!X)P$`#2H!`",K`0!0*P$` +M=2L!`*(K`0"V*P$`Y"L!`"0L`0`Z*@$`9RH!`)0J`0#!*@$````````````@ +M80$`-5@!`'M8`0#C6`$`6%D!`()9`0#360$`9%H!`&U:`0#^70$`\5P!`"%8 +M`0`@80$`(&$!`"!A`0`@80$`(&$!`)Y@`0`@80$`(&$!`'9:`0".6@$`W%D! +M`%M:`0#Q7`$`T5X!`.M@`0#Q8`$`&&$!`"!A`0#O7P$`,&`!`#E@`0#:7@$` +MY5X!`.Y>`0#W7@$`M8X!`">,`0`XC`$`28P!`%J,`0"EC`$`PXP!`->,`0`K +MC0$`1XT!`&.-`0!_C0$`JXT!`+^-`0#3C0$`M8X!`+6.`0#LC0$`2XX!`+6. +M`0"UC@$`$8X!`(F.`0!XC`$`C(P!`+6.`0#KC`$`_XP!`!.-`0!@PP$`8,,! +M`)_#`0"TPP$`8,,!`-[#`0!JPP$`R<,!`(W$`0"?Q`$`RLT!`'?/`0!WSP$` +M=\\!`'?/`0!WSP$`=\\!`'?/`0!WSP$`=\\!`'?/`0!WSP$`=\\!`'?/`0!W +MSP$`=\\!`'?/`0!WSP$`=\\!`'?/`0!WSP$`=\\!`'?/`0!WSP$`=\\!`'?/ +M`0!WSP$`=\\!`'?/`0!WSP$`=\\!`'?/`0#>S0$`1\X!`+#.`0`9SP$`@]`! +M`%+6`0!2U@$`4M8!`%+6`0!2U@$`4M8!`%+6`0!2U@$`4M8!`%+6`0!2U@$` +M4M8!`%+6`0!2U@$`4M8!`)?0`0"7T`$`E]`!`%+6`0!2U@$`4M8!`%+6`0!2 +MU@$`4M8!`%+6`0!2U@$`4M8!`%+6`0!2U@$`4M8!`%+6`0`1T0$`=M$!`-O1 +M`0!!T@$`4M8!`%+6`0!2U@$`4M8!`%+6`0!2U@$`4M8!`%+6`0!2U@$`4M8! +M`%+6`0!2U@$`IM(!`"33`0"BTP$`(-0!`%+6`0!2U@$`4M8!`%+6`0!2U@$` +M4M8!`%+6`0!2U@$`4M8!`%+6`0!2U@$`4M8!`)[4`0!2U@$`4M8!`%+6`0!2 +MU@$`4M8!`%+6`0!2U@$`4M8!`%+6`0!2U@$`4M8!`%+6`0!2U@$`4M8!`%+6 +M`0#DU`$`(M4!``0">U0$`W-4!`!?6`0!2;V-K970@-S4P(%-!5$$@0V]N +M=')O;&QE<@```0````````````````````````"6,`=W+&$.[KI1"9D9Q&T' +MC_1J<#6E8^FCE62>,HC;#J2XW'D>Z=7@B-G2ERM,M@F]?+%^!RVXYY$=OY!D +M$+<=\B"P:DAQN?/>0;Z$?=3:&NODW6U1M=3TQX73@U:8;!/`J&MD>OEB_>S) +M98I/7`$4V6P&8V,]#_KU#0B-R"!N.UX0:4SD06#5<G%GHM'D`SQ'U`1+_84- +MTFNU"J7ZJ+4U;)BR0M;)N]M`^;RLXVS8,G5<WT7/#=;<63W1JZPPV28Z`-Y1 +M@%'7R!9AT+^U]+0A(\2S5IF5NL\/I;VXGK@"*`B(!5^RV0S&).D+L8=\;R\1 +M3&A8JQUAP3TM9K:00=QV!G';`;P@TI@J$-7OB86Q<1^UM@:EY+^?,]2XZ*+) +M!W@T^0`/CJ@)EAB8#N&[#6I_+3UM")=L9)$!7&/F]%%K:V)A;!S8,&6%3@!B +M\NV5!FQ[I0$;P?0(@E?$#_7&V;!E4.FW$NJXOHM\B+G\WQW=8DDMVA7S?-., +M94S4^UAALDW.4;4Z=`"\H^(PN]1!I=]*UY78/6W$T:3[]-;3:NEI0_S9;C1& +MB&>MT+A@VG,M!$3E'0,S7TP*JLE\#=T\<050JD$")Q`0"[Z&(`S));5H5[.% +M;R`)U&:YG^1AS@[YWEZ8R=DI(IC0L+2HU\<7/;-9@0VT+CM<O;>M;+K`((.X +M[;:SOYH,XK8#FM*Q=#E'U>JO=]*=%2;;!(,6W',2"V/CA#MDE#YJ;0VH6FIZ +M"\\.Y)W_"9,GK@`*L9X'?423#_#2HPB':/(!'O["!FE=5V+WRV=E@'$V;!GG +M!FMN=AO4_N`KTXE:>MH0S$K=9V_?N?GY[[Z.0[ZW%]6.L&#HH];6?I/1H<3" +MV#A2\M]/\6>[T6=7O*;=!K4_2S:R2-HK#=A,&PJO]DH#-F!Z!$'#[V#?5=]G +MJ.^.;C%YOFE&C+-ARQJ#9KR@TF\E-N)H4I5W#,P#1PN[N18"(B\F!56^.[K% +M*`N]LI):M"L$:K-<I__7PC'/T+6+GMDL':[>6[#"9)LF\F/LG*-J=0J3;0*I +M!@F</S8.ZX5G!W(35P`%@DJ_E11ZN.*N*[%[.!NV#)N.TI(-OM7EM^_<?"'? +MVPO4TM.&0N+4\?BSW6AN@]H?S1:^@5LFN?;A=[!O=T>W&.9:"(AP:@__RCL& +M9EP+`1'_GF6/::YB^-/_:V%%SVP6>.(*H.[2#==4@P1.PK,#.6$F9Z?W%F#0 +M34=I2=MW;CY*:M&NW%K6V68+WT#P.]@W4ZZ\J<6>N]Y_S[)'Z?^U,!SRO;V* +MPKK*,).S4Z:CM"0%-M"ZDP;7S2E7WE2_9]DC+GIFL[A*8<0"&VA=E"MO*C>^ +M"[2AC@S#&]\%6HWO`BU*%`(`CA0"`%`5`@!0%0(`4!4"`%`5`@#2%`(`$14" +M`%`5`@!H%0(`OQ\"`,D?`@#)'P(`R1\"`,D?`@#)'P(`R1\"`,D?`@#)'P(` +MR1\"`,D?`@#)'P(`R1\"`,D?`@#)'P(`R1\"`,D?`@#)'P(`R1\"`,D?`@#) +M'P(`R1\"`,D?`@#)'P(`R1\"`,D?`@#)'P(`R1\"`,D?`@#)'P(`R1\"`,D? +M`@#)'P(`R1\"`,D?`@#)'P(`DA\"`,D?`@"2'P(`R1\"`,D?`@#)'P(`DA\" +M`)(?`@#)'P(`R1\"`,D?`@#)'P(`R1\"`,D?`@#)'P(`R1\"`,D?`@#)'P(` +MR1\"`,D?`@#)'P(`R1\"`,D?`@#)'P(`R1\"`)(?`@#)'P(`R1\"`,D?`@#) +M'P(`R1\"`,D?`@#)'P(`R1\"`,D?`@#)'P(`R1\"`,D?`@#)'P(`R1\"`)(? +M`@"2'P(`DA\"`)(?`@#)'P(`R1\"`,D?`@#)'P(`R1\"`,D?`@#)'P(`R1\" +M`,D?`@#)'P(`R1\"`,D?`@#)'P(`R1\"`,D?`@#)'P(`R1\"`,D?`@#)'P(` +MR1\"`,D?`@#)'P(`R1\"`,D?`@#)'P(`R1\"`,D?`@#)'P(`R1\"`,D?`@#) +M'P(`R1\"`,D?`@#)'P(`R1\"`,D?`@#)'P(`R1\"`,D?`@#)'P(`R1\"`,D? +M`@#)'P(`DA\"`,D?`@#)'P(`R1\"`,D?`@#)'P(`R1\"`,D?`@#)'P(`DA\" +M`,D?`@"2'P(`R1\"`,D?`@#)'P(`DA\"`)(?`@#)'P(`R1\"`,D?`@"2'P(` +MR1\"`,D?`@#)'P(`R1\"`,D?`@#)'P(`R1\"`,D?`@#)'P(`R1\"`,D?`@#) +M'P(`R1\"`,D?`@#)'P(`R1\"`,D?`@#)'P(`R1\"`,D?`@"2'P(`R1\"`)(? +M`@#)'P(`R1\"`,D?`@"2'P(`DA\"`-XT`@"1-`(`GC0"`,`T`@#>-`(`U#0" +M`,HT`@#>-`(`WC0"`-XT`@#>-`(`RC0"`.E;`@`-7`(`,5P"`*5<`@`W70(` +M`````%&D`@`FI`(`,:0"`%>D`@`@I`(`(*0"`""D`@`@I`(`(*0"`""D`@`@ +MI`(`(*0"`""D`@`@I`(`(*0"`""D`@!AI`(`5Z0"`#>D`@!1I`(`0:0"`$>D +M`@!AI`(`$Z0"```@```$1````"`!``1$```"`0```CH```(!`0`".@``!`$` +M``L````$`0$`"P````@!```&6@$`"`$!``9:`0`0`0```Q0!`!`!`0`#%`$` +M(`$```8H```@`0$`!B@``$`!```#$0``0`$!``<G``"``0``"T<#`(`!`0`+ +M1P,`D!L#```<`P`E'`,`2AP#`&\<`P"4'`,`P1P#`%X=`P"5'0,`:AX#`!@> +M`P`]'@,`CQX#`*$?`P#>'P,`#R`#`%(@`P"&(0,`@R`#`)@@`P#.'0,`\QT# +M`.X<`P`E'0,`&!X#`*T@`P##(0,`\"$#`!4B`P!"(@,`5B(#`(0B`P#$(@,` +MVB`#``<A`P`T(0,`82$#````````````P%<#`-5.`P`;3P,`E$\#``E0`P`S +M4`,`A%`#`!51`P`E40,`E50#`(=3`P#!3@,`P%<#`,!7`P#`5P,`P%<#`,!7 +M`P`^5P,`P%<#`,!7`P`N40,`1E$#`(U0`P`,40,`AU,#`'%5`P"+5P,`D5<# +M`+A7`P#`5P,`CU8#`-!6`P#95@,`>E4#`(55`P".50,`EU4#`.)F`P#I9@,` +M\F8#`/EF`P`"9P,`"6<#`!)G`P#79@,`Q8,#`#>!`P!(@0,`68$#`&J!`P"U +M@0,`TX$#`.>!`P`[@@,`5X(#`'."`P"/@@,`NX(#`,^"`P#C@@,`Q8,#`,6# +M`P#\@@,`6X,#`,6#`P#%@P,`(8,#`)F#`P"(@0,`G($#`,6#`P#[@0,`#X(# +M`"."`P``````````````````````````````````````T+@#`-"X`P`/N0,` +M)+D#`-"X`P!.N0,`VK@#`#FY`P#]N0,`#[H#`)K#`P!'Q0,`1\4#`$?%`P!' +MQ0,`1\4#`$?%`P!'Q0,`1\4#`$?%`P!'Q0,`1\4#`$?%`P!'Q0,`1\4#`$?% +M`P!'Q0,`1\4#`$?%`P!'Q0,`1\4#`$?%`P!'Q0,`1\4#`$?%`P!'Q0,`1\4# +M`$?%`P!'Q0,`1\4#`$?%`P!'Q0,`KL,#`!?$`P"`Q`,`Z<0#`%/&`P`BS`,` +M(LP#`"+,`P`BS`,`(LP#`"+,`P`BS`,`(LP#`"+,`P`BS`,`(LP#`"+,`P`B +MS`,`(LP#`"+,`P!GQ@,`9\8#`&?&`P`BS`,`(LP#`"+,`P`BS`,`(LP#`"+, +M`P`BS`,`(LP#`"+,`P`BS`,`(LP#`"+,`P`BS`,`X<8#`$;'`P"KQP,`$<@# +M`"+,`P`BS`,`(LP#`"+,`P`BS`,`(LP#`"+,`P`BS`,`(LP#`"+,`P`BS`,` +M(LP#`';(`P#TR`,`<LD#`/#)`P`BS`,`(LP#`"+,`P`BS`,`(LP#`"+,`P`B +MS`,`(LP#`"+,`P`BS`,`(LP#`"+,`P!NR@,`(LP#`"+,`P`BS`,`(LP#`"+, +M`P`BS`,`(LP#`"+,`P`BS`,`(LP#`"+,`P`BS`,`(LP#`"+,`P`BS`,`M,H# +M`/+*`P`PRP,`;LL#`*S+`P#GRP,``````````````````````$1A=&%#96YT +M97(@-S(X,"!3051!($-O;G1R;VQL97(``0```!L````!````@!`$``L1!`"S +M$`0`E!`$``L1!``+$00`"Q$$``L1!`"`$`0`Q1$$`(`0!`"`$`0`.Q`$`+D1 +M!`"&$00`3Q$$`($W!`"1-P0`F3<$`*$W!`"I-P0`L3<$`+DW!`")-P0`5#T$ +M``5`!``G/P0`T3\$`*`_!`#1/P0`5#T$`%@]!``RGP0`M9\$`)B@!`#&H`0` +MA:$$`(.B!`"?H@0`JZ($`'*?!``BHP0`V:,$`#*?!`#HI`0`]:,$`)2D!`#B +MLP0`%+@$`.RW!`#2MP0`N+<$`)2W!`#BLP0`>K<$`$>T!`!!^00`,/D$`!#Y +M!`#P^`0`L/@$`'?X!`!O(`4`EA\%`&\@!0!P'P4`<!\%`'`?!0!-5E]297%U +M97-T("5P.B!#9&);)3)X+"4R>"PE,G@L)3)X+"`E,G@L)3)X+"4R>"PE,G@L +M("4R>"PE,G@L)3)X+"4R>"P@)3)X+"4R>"PE,G@L)3)X72X`6R4P,G@Z)3`R +M>"`E,#)D72!D:7-K(')E;6]V960N``!%<G)O<B!I;B!I<W-U:6YG(&-O;6UA +M;F0L(&5R<B!I;F9O(#!X)6QL6````%1A<VL@9FEL92!E<G)O<BP@4W1A='5S +M4F5G/3!X)7@L($5R<E)E9STP>"5X+"!,0D%;,"TS73TP>"5X+$Q"05LT+3== +M/3!X)7@N``!296-E:79E9"!.54P@4F5Q('-L;W1.;R@E>"\E>"D@14Y44ED@ +M*"4P.'@I+"!E<G)O<B`P>"5L;%@```!@+2!&25,H4VQO=#HE,#)X*3H@)3`X +M>"`E,#AX("4P.'@@)3`X>```0TU$($AE861E<CH@)3`X>"`E,#AX("4P.'@@ +M)3`X>"`N("4P.'@@)3`X>"`E,#AX("4P.'@@+B`E,#AX("4P.'@@)3`X>"`E +M,#AX("X@)3`X>"`E,#AX`%LE,#)X.B4P,G@@)3`R9"`E,#)D72!032!R97%U +M97-T*"5X*2!T:6UE;W5T+@```%1I;65O=70@2#)$($9)4RA3;&]T.B4P,G@I +M.B`E,#AX("4P.'@@)3`X>"`E,#AX`%LE,#)X.B4P,G@@)3`R9%T@6&9E<B`E +M>"!%<G)O<B!I;F9O<FUA=&EO;B`P>"5L;%@```!;)3`R>#HE,#)X("4P,F0@ +M)3`R9"`E,#)D72!89F5R("5X($5R<F]R(&EN9F]R;6%T:6]N(#!X)6QL6`!; +M)3`R>#HE,#)X("4P,G@@)3`R>%T@4$T@6&9E<B`E>"!%<G)O<B!I;F9O<FUA +M=&EO;B`P>"5L;%@```!2=6YN:6YG($@R1"!&25,H4VQO=#HE,#)X*3H@)3`X +M>"`E,#AX("4P.'@@)3`X>``@4T<@:71E;2`E,#)X.B!A9&1R("5L;'@@<VEZ +M92`E>"!31T@@861D<B`E;&QX('-I>F4@)7@``$9A:6QE9"!T;R!E;F%B;&4O +M9&ES86)L92!S<&EN('5P+@```%LE,#)X.B4P,G@@)3`R9%T@1&5V:6-E(')E +M<75E<W0H)7@I('1I;65O=70N`````%LE,#)X.B4P,G@@)3`R9"`E,#)D("4P +M,F1=($1E=FEC92!R97%U97-T*"5X*2!T:6UE;W5T+@``6R4P,G@Z)3`R>"`E +M,#)D72!D:7-K(')E;6]V960@*"5X*2X`071T1&5V4T%3061D<ELE>%T@(%M5 +M;FET260@)7A=('-A<R!A9&1R("4P,G@M)3`R>"TE,#)X+24P,G@M)3`R>"TE +M,#)X+24P,G@M)3`R>`!S86UE('-A<R!A9&1R("4P,G@M)3`R>"TE,#)X+24P +M,G@M)3`R>"TE,#)X+24P,G@M)3`R>````$1E=FEC92`E>"!I;B!S=&%N9&)Y +M(&UO9&4L('-T87)T('1O('!O=V5R(&ET('5P+@````!3=&%R="!T;R!P;W=E +M<B!U<"!D979I8V4@)7@N+BX``%!O<G0@<F5S970H<&AA<V4@)7@@<&UP("5X +M*2!N;W0@8V]M<&QE=&4@<W5C8V5S<RP@:6=N;W)E('1H92!P;W)T("@E>"!D +M979I8V4@)7@I`````%LE,#)X.B4P,G@@)3`R9%T@9&ES:R!R96UO=F5D("@E +M>"DN`$1E=FEC92`H4&%T:"`E,#)X('P@5&%R9V5T("4P,G@@?"!%)7@O4R4P +M,G@I('-P:6X@=7`@;6]D92!N;W0@<W5P<&]R=````%LE,#)X.B4P,G@@)3`R +M9%T@<V5T(&1I<VL@<W!I;B!U<"!M;V1E("5X+@``6R4P,G@Z)3`R>"`E,#)D +M72!D:7-K('!R;V)E9"`H<W!I;G5P(&UO9&4Z("5D*2X`359?4F5Q=65S="`E +M<#H@0V1B6R4R>"PE,G@L)3)X+"4R>"P@)3)X+"4R>"PE,G@L)3)X+"`E,G@L +M)3)X+"4R>"PE,G@L("4R>"PE,G@L)3)X+"4R>%TN`$5R<F]R(&EN(&ES<W5I +M;F<@8V]M;6%N9"P@97)R(&EN9F\@,'@E;&Q8````5&%S:R!F:6QE(&5R<F]R +M+"!3=&%T=7-296<],'@E>"P@17)R4F5G/3!X)7@L($Q"05LP+3-=/3!X)7@L +M3$)!6S0M-UT],'@E>"X``%)E8V5I=F5D($Y53"!297$@<VQO=$YO*"5X+R5X +M*2!%3E1262`H)3`X>"DL(&5R<F]R(#!X)6QL6````&`M($9)4RA3;&]T.B4P +M,G@I.B`E,#AX("4P.'@@)3`X>"`E,#AX``!#340@2&5A9&5R.B`E,#AX("4P +M.'@@)3`X>"`E,#AX("X@)3`X>"`E,#AX("4P.'@@)3`X>"`N("4P.'@@)3`X +M>"`E,#AX("4P.'@@+B`E,#AX("4P.'@`6R4P,G@Z)3`R>"`E,#)D("4P,F1= +M(%!-(')E<75E<W0H)7@I('1I;65O=70N````5&EM96]U="!(,D0@1DE3*%-L +M;W0Z)3`R>"DZ("4P.'@@)3`X>"`E,#AX("4P.'@`6R4P,G@Z)3`R>"`E,#)D +M("4P,F0@)3`R9%T@6&9E<B`E>"!%<G)O<B!I;F9O<FUA=&EO;B`P>"5L;%@` +M6R4P,G@Z)3`R>"`E,#)X("4P,GA=(%!-(%AF97(@)7@@17)R;W(@:6YF;W)M +M871I;VX@,'@E;&Q8````4G5N;FEN9R!(,D0@1DE3*%-L;W0Z)3`R>"DZ("4P +M.'@@)3`X>"`E,#AX("4P.'@`(%-'(&ET96T@)3`R>#H@861D<B`E;&QX('-I +M>F4@)7@@4T=((&%D9'(@)6QL>"!S:7IE("5X``!&86EL960@=&\@96YA8FQE +M+V1I<V%B;&4@<W!I;B!U<"X```!;)3`R>#HE,#)X("4P,F0@)3`R9"`E,#)D +M72!$979I8V4@<F5Q=65S="@E>"D@=&EM96]U="X``$%T=$1E=E-!4T%D9'); +M)7A=("!;56YI=$ED("5X72!S87,@861D<B`E,#)X+24P,G@M)3`R>"TE,#)X +M+24P,G@M)3`R>"TE,#)X+24P,G@`<V%M92!S87,@861D<B`E,#)X+24P,G@M +M)3`R>"TE,#)X+24P,G@M)3`R>"TE,#)X+24P,G@```!$979I8V4@)7@@:6X@ +M<W1A;F1B>2!M;V1E+"!S=&%R="!T;R!P;W=E<B!I="!U<"X`````4W1A<G0@ +M=&\@<&]W97(@=7`@9&5V:6-E("5X+BXN``!0;W)T(')E<V5T*'!H87-E("5X +M('!M<"`E>"D@;F]T(&-O;7!L971E('-U8V-E<W,L(&EG;F]R92!T:&4@<&]R +M="`H)7@@9&5V:6-E("5X*0````!$979I8V4@*%!A=&@@)3`R>"!\(%1A<F=E +M="`E,#)X('P@125X+U,E,#)X*2!S<&EN('5P(&UO9&4@;F]T('-U<'!O<G0` +M``!3970@9&5V:6-E("A0871H("4P,G@@?"!487)G970@)3`R>"!\($4E>"]3 +M)3`R>"D@<W!I;B!U<"!M;V1E("5X`````$%T=&%C:&5D(&1E=FEC92!I;F1E +M>"`E,#)X("A0871H("4P,G@@?"!487)G970@)3`R>"!\($4E>"]3)3`R>"D@ +M("5X)7@E>"5X)7@E>"5X)7@``$)A8VMU<"!S=&%M<"`E>"!S=6T@)7@@8F%C +M:V5D("5D`````$UA<W1E<B!S=&%M<"`E>"!S=6T@)7@@8F%C:V5D("5D```` +M`%=R:71E(&%R<F%Y(&UE=&$@9&%T82!T;R!M87-T97(@,'@E;&Q8+3XP>"5L +M;%@``%=R:71E(&%R<F%Y(&UE=&$@9&%T82!T;R!B86-K=7`@,'@E;&Q8+3XP +M>"5L;%@``%LE9"`E9%T@9&5V:6-E(&5R87-E('5N:70@<W5C8V5S<V9U;&QY +M+@!;)60@)61=(&1E=FEC92!E<F%S92!U;FET(&9A:6QE9"!O<B!A8F]R=&5D +M+@````!S970@041)1E]3151?0D%$(&)A9%]S96-T;W(@)60``&1O7V1I<VM? +M8W1L7V-M9#H@8W1L(&-O9&4@)7@@=F0])7`L($Q"02`P>"5L;%@@;E-E8W1O +M<B`P>"5X`%)E=')Y:6YG(&9A:6QE9"P@9&ES:R!D;W=N/S\_`'=O<FMR;W5N +M9"!I<G%3=&%T=7,@/2`P>"5X`%)E<2`E<"`E>"`E>`!$979I8V4@)7@O)7@@ +M<F5M;W9E9"X`3W9E<G)A;&P@4T<@:71E;2`E>"!S:7IE("5X`%-L;W0@8G5S +M>2P@<VQO="`E>"@E>"D`1'5M<"!S;&]T(&EN9F\Z("5X("5X("5X("5X`$-L +M96%N('5P('-L;W0@)7@`1#)(($9)4SH@)3`X>"`E,#AX("4P.'@@)3`X>``E +M,#)X("4P-'@Z)3`T>#HE,#1X`%)E<2`H)7@I('=A:70@9F]R(&-O;7!L971E +M9"X`1&5V:6-E("5X+R5X(')E;6]V960N`$1E=FEC92`E>"\E>"!R96UO=F5D +M+@!$979I8V4@)7@@<&]W97)E9"!U<"X`<W1A<G0@4T53(&1E=FEC92`E<`!& +M;W5N9"!315,@1&5V:6-E("5X`$9A:6QE9"!T;R!V97)I9GD@8V]N=')O;&QE +M<@!O9&EN(')E860@=W)I=&4@97AC965D<R`E>`!O9&EN`$1E=FEC92`E>"\E +M>"!R96UO=F5D+@!2971R>6EN9R!F86EL960L(&1I<VL@9&]W;C\_/P!W;W)K +M<F]U;F0@:7)Q4W1A='5S(#T@,'@E>`!297$@)7`@)7@@)7@`3W9E<G)A;&P@ +M4T<@:71E;2`E>"!S:7IE("5X`%-L;W0@8G5S>2P@<VQO="`E>"@E>"D`1'5M +M<"!S;&]T(&EN9F\Z("5X("5X("5X("5X`$-L96%N('5P('-L;W0@)7@`1#)( +M($9)4SH@)3`X>"`E,#AX("4P.'@@)3`X>``E,#)X("4P-'@Z)3`T>#HE,#1X +M`%)E<2`H)7@I('=A:70@9F]R(&-O;7!L971E9"X`1&5V:6-E("5X+R5X(')E +M;6]V960N`$1E=FEC92`E>"\E>"!R96UO=F5D+@!$979I8V4@)7@@<&]W97)E +M9"!U<"X`<W1A<G0@4T53(&1E=FEC92`E<`!&;W5N9"!315,@1&5V:6-E("5X +M`$9A:6QE9"!T;R!V97)I9GD@8V]N=')O;&QE<@!O9&EN(')E860@=W)I=&4@ +M97AC965D<R`E>`!O9&EN`')A=R`E<"!B861?<V5C=&]R("5X`%=R:71E(&)A +M8VMU<&5D(&UE=&$@9&%T80!&86EL960@=&\@<W!I;F1O=VX@9&5V:6-E<P!& +M86EL960@=&\@9FQU<V@@=&%R9V5T<P!!=71O(%)E8G5I;&0`4F5B=6EL9"!0 +M<FEO<FET>0!#;VYT:6YU92!296)U:6QD:6YG(&]N($5R<F]R`%-P:6YD;W=N +M($ED;&4@1&ES:R`H;6EN=71E<RD`4W1A9V=E<F5D('-P:6YU<``````````` +M```````````````````````````````&!`4!`P)28A4`````````!@0%`0," +MV&"?-CD\``````8$!0$#`B!@D%!2```````&!`4!`P+88)````````````$" +M`Q`$!08'$0@)"@L2#`T.#Q,4%187)!@9&ALE'!T>'R8@(2(C)P`````````` +M`````````````````````*L!````````(0```("<`0"@NP$`T)P!`)#6`0"@ +M\0$`<+L!`'"<`0`@G@$`D+H!`."<`0`P]`$`H)X!`&#;`0``````L+<!`/"< +M`0"0ZP$`D+(!`+"K`0#PJ0$`,)\!`###`0!0GP$`@*L!`%"K`0!`J@$`$*$! +M`#"@`0```````````+">`0`PZ0$`<.4!`(#A`0"@W0$```````,14`<````` +M``(``````````````0````````````````````8$!0$#`E)B%0`````````& +M!`4!`P+88)\V.3P`````!@0%`0,"(&"04%(```````8$!0$#`MA@D``````` +M``!;`P```````"$```"0D0,`$+$#`."1`P!@S`,`8.<#`."P`P"`D0,`,),# +M``"P`P#PD0,``.H#`+"3`P`PT0,``````""M`P``D@,`4.$#``"H`P`@H0,` +M<*`#`#"5`P"@N`,`4)4#`/"@`P#`H`,`\)\#`!"7`P`PE@,```````````#` +MDP,`\-X#`##;`P!`UP,`8-,#```````#$8!R```````"``````````````$` +M```````````````````!`?\"```````````````````````````````````` +M```````!`````````!@`````````+````!0```#0#P0`<#$$```/!``````` +M`````)`"!`"0#@0`4`,$```````````````````````````````````````` +M``````````#_``#P100``````&"!!``!`````?\``%!&!```````$(`$``$` +M```"_P``<$8$```````@E00``0````/_``#01@0``````&"-!``!````-?\` +M`/!&!```````\'X$``$````$_P``T$<$``````"@>`0``0````7_```P2`0` +M`````+#T!``!````!O\``.!*!`!PAP0`\&<$```````'_P``,.4$``"&!`"P +M9@0```````K_``#03@0``````)!T!``!````"_\``/!.!```````T.$$```` +M```,_P``(%($`."%!`!P9@0```````W_``"04@0`P(4$`#!F!```````#O\` +M``!3!`!PA00`\&4$```````/_P``P%,$`."$!`"P900``````!#_```P5`0` +MP(0$`'!E!```````$?\``"!5!```````\&0$```````2_P``D%4$``````"P +M9`0``````!/_``"P500``````!#K!``!````-/\``-!5!```````<.\$``$` +M```8_P``\%4$```````PC`0``````$+_``"@5@0``````!",!```````&?\` +M`&!/!```````,.$$```````:_P``T$\$``````#0X`0``````!W_``!05P0` +M`````'!D!```````'O\``,!7!```````L.8$``$````?_P``4%@$`%"$!``P +M9`0``````"#_````3`0`,(<$`+!G!```````(?\``'!(!```````T/($``$` +M```B_P``L%0$```````P900``````"/_``!`4`0``````$#@!```````)/\` +M`+!0!```````L-\$```````E_P``(%$$``````!0WP0``````"G_``!0300` +ML(8$`#!G!```````*O\``)!1!```````0-`$```````K_P``X%@$`""$!`#P +M8P0``````"S_``!@200``````%!W!``!````+?\``$!*!`"PAP0`,&@$```` +M```N_P``L$@$````````\`0``0```"__``"01@0``````'"3!``!````2?\` +M`+!&!```````0'\$``$````W_P``\$@$````````R@0``0```#C_``"P3`0` +M\(8$`'!G!```````.?\``!!.!`!PA@0`\&8$```````Z_P``P$D$``````"@ +M=@0``0```#O_``#0600``````%",!``!````//\```!(!```````\'<$``$` +M```]_P``$$<$``````!0?@0``0```#[_```P1P0``````&!]!``!````0_\` +M`%!'!```````<'P$``$```!$_P``<$<$``````"`>P0``0```$;_``"01P0` +M`````(!Z!``!````1_\``+!'!```````H'D$``$````R_P``$$8$``````#0 +MC00``0```#/_```P1@0`\(<$`&"`!```````9/\``$!9!```````H',$``$` +M```P_P``<%D$``````!0<00``0```&;_``"P2P0``````&!U!``!````9_\` +M`)!+!```````('8$``$```!%_P``T%H$``"$!`"P8P0``````$C_``"`6P0` +MX(,$`'!C!```````_____P````````````````````````````````!'0T,Z +M("A'3E4I(#0N,BXR(#(P,#<P.#,Q('!R97)E;&5A<V4@6T9R965"4T1=``!' +M0T,Z("A'3E4I(#0N,BXR(#(P,#<P.#,Q('!R97)E;&5A<V4@6T9R965"4T1= +M``!'0T,Z("A'3E4I(#0N,BXR(#(P,#<P.#,Q('!R97)E;&5A<V4@6T9R965" +M4T1=``!'0T,Z("A'3E4I(#0N,BXR(#(P,#<P.#,Q('!R97)E;&5A<V4@6T9R +M965"4T1=``!'0T,Z("A'3E4I(#0N,BXR(#(P,#<P.#,Q('!R97)E;&5A<V4@ +M6T9R965"4T1=``!'0T,Z("A'3E4I(#0N,BXR(#(P,#<P.#,Q('!R97)E;&5A +M<V4@6T9R965"4T1=``!'0T,Z("A'3E4I(#0N,BXR(#(P,#<P.#,Q('!R97)E +M;&5A<V4@6T9R965"4T1=``!'0T,Z("A'3E4I(#0N,BXR(#(P,#<P.#,Q('!R +M97)E;&5A<V4@6T9R965"4T1=``!'0T,Z("A'3E4I(#0N,BXR(#(P,#<P.#,Q +M('!R97)E;&5A<V4@6T9R965"4T1=``!'0T,Z("A'3E4I(#0N,BXR(#(P,#<P +M.#,Q('!R97)E;&5A<V4@6T9R965"4T1=``!'0T,Z("A'3E4I(#0N,BXR(#(P +M,#<P.#,Q('!R97)E;&5A<V4@6T9R965"4T1=``!'0T,Z("A'3E4I(#0N,BXR +M(#(P,#<P.#,Q('!R97)E;&5A<V4@6T9R965"4T1=``!'0T,Z("A'3E4I(#0N +M,BXR(#(P,#<P.#,Q('!R97)E;&5A<V4@6T9R965"4T1=``!'0T,Z("A'3E4I +M(#0N,BXR(#(P,#<P.#,Q('!R97)E;&5A<V4@6T9R965"4T1=``!'0T,Z("A' +M3E4I(#0N,BXR(#(P,#<P.#,Q('!R97)E;&5A<V4@6T9R965"4T1=``!'0T,Z +M("A'3E4I(#0N,BXR(#(P,#<P.#,Q('!R97)E;&5A<V4@6T9R965"4T1=``!' +M0T,Z("A'3E4I(#0N,BXR(#(P,#<P.#,Q('!R97)E;&5A<V4@6T9R965"4T1= +M``!'0T,Z("A'3E4I(#0N,BXR(#(P,#<P.#,Q('!R97)E;&5A<V4@6T9R965" +M4T1=``!'0T,Z("A'3E4I(#0N,BXR(#(P,#<P.#,Q('!R97)E;&5A<V4@6T9R +M965"4T1=``!'0T,Z("A'3E4I(#0N,BXR(#(P,#<P.#,Q('!R97)E;&5A<V4@ +M6T9R965"4T1=``!'0T,Z("A'3E4I(#0N,BXR(#(P,#<P.#,Q('!R97)E;&5A +M<V4@6T9R965"4T1=``!'0T,Z("A'3E4I(#0N,BXR(#(P,#<P.#,Q('!R97)E +M;&5A<V4@6T9R965"4T1=``!'0T,Z("A'3E4I(#0N,BXR(#(P,#<P.#,Q('!R +M97)E;&5A<V4@6T9R965"4T1=``!'0T,Z("A'3E4I(#0N,BXR(#(P,#<P.#,Q +M('!R97)E;&5A<V4@6T9R965"4T1=``!'0T,Z("A'3E4I(#0N,BXR(#(P,#<P +M.#,Q('!R97)E;&5A<V4@6T9R965"4T1=``!'0T,Z("A'3E4I(#0N,BXR(#(P +M,#<P.#,Q('!R97)E;&5A<V4@6T9R965"4T1=``!'0T,Z("A'3E4I(#0N,BXR +M(#(P,#<P.#,Q('!R97)E;&5A<V4@6T9R965"4T1=``!'0T,Z("A'3E4I(#0N +M,BXR(#(P,#<P.#,Q('!R97)E;&5A<V4@6T9R965"4T1=``!'0T,Z("A'3E4I +M(#0N,BXR(#(P,#<P.#,Q('!R97)E;&5A<V4@6T9R965"4T1=``!'0T,Z("A' +M3E4I(#0N,BXR(#(P,#<P.#,Q('!R97)E;&5A<V4@6T9R965"4T1=``!'0T,Z +M("A'3E4I(#0N,BXR(#(P,#<P.#,Q('!R97)E;&5A<V4@6T9R965"4T1=``!' +M0T,Z("A'3E4I(#0N,BXR(#(P,#<P.#,Q('!R97)E;&5A<V4@6T9R965"4T1= +M``!'0T,Z("A'3E4I(#0N,BXR(#(P,#<P.#,Q('!R97)E;&5A<V4@6T9R965" +M4T1=``!'0T,Z("A'3E4I(#0N,BXR(#(P,#<P.#,Q('!R97)E;&5A<V4@6T9R +M965"4T1=``!'0T,Z("A'3E4I(#0N,BXR(#(P,#<P.#,Q('!R97)E;&5A<V4@ +M6T9R965"4T1=``!'0T,Z("A'3E4I(#0N,BXR(#(P,#<P.#,Q('!R97)E;&5A +M<V4@6T9R965"4T1=``!'0T,Z("A'3E4I(#0N,BXR(#(P,#<P.#,Q('!R97)E +M;&5A<V4@6T9R965"4T1=``!'0T,Z("A'3E4I(#0N,BXR(#(P,#<P.#,Q('!R +M97)E;&5A<V4@6T9R965"4T1=``!'0T,Z("A'3E4I(#0N,BXR(#(P,#<P.#,Q +M('!R97)E;&5A<V4@6T9R965"4T1=```N<WEM=&%B`"YS=')T86(`+G-H<W1R +M=&%B`"YR96PN=&5X=``N<F5L+G)O9&%T80`N<F]D871A+G-T<C$N-``N<F]D +M871A+G-T<C$N,0`N<F5L+F1A=&$`+F)S<P`N8V]M;65N=``````````````` +M`````````````````````````````````````````!\````!````!@`````` +M``!`````U30%````````````$``````````;````"0``````````````Y-T% +M`#"9```,`````0````0````(````*0````$````"`````````"`U!0`<&0`` +M```````````@`````````"4````)```````````````4=P8``!\```P````# +M````!`````@````Q`````0```#(`````````/$X%`%P,``````````````0` +M```!````0`````$````R`````````)A:!0`J!``````````````!`````0`` +M`%,````!`````P````````#@7@4`F`<`````````````(`````````!/```` +M"0``````````````%)8&`,@&```,````!P````0````(````60````@````# +M`````````(!F!0`@!0`````````````@`````````%X````!```````````` +M``"`9@4`4`<``````````````0`````````1`````P``````````````T&T% +M`&<```````````````$``````````0````(``````````````&AP!0"`+0`` +M#0```'4"```$````$`````D````#``````````````#HG04`^S\````````` +M`````0```````````````````````````````````````````````P`!```` +M``````````````,``@`````````````````#``,``````````````````P`$ +M``````````````````,`!0`````````````````#``8````````````````` +M`P`'``````````````````,`"``````````````````#``D````````````` +M`````P`*``````````````````,`"P`````````````````#``P````````` +M`````````P`-``$```#``0$`EP````(``0`5````L`(``#H````"``$`(P`` +M`(`&`0"8`@```@`!`#8`````$@``=`````(``0!$`````!D```D&```"``$` +M9````*!!`0`)`P```@`!`'L````@^@``$P````(``0"*````L/4``.$````" +M``$`HP```!!\`0!4`````@`!`*\```#`AP$`)P````(``0#+````H``!`!P! +M```"``$`VP```%````!:`@```@`!`/8```"@>0``\P````(``0`0`0``,`H` +M`"4````"``$`)@$``'!\`0!7`````@`!`#<!``!0HP``(`0```(``0!4`0`` +M0.D``(T````"``$`;0$``$`)``";`````@`!`($!``!@"@``(`````(``0"A +M`0``H&\!`$@````"``$`L0$``$`?``"6#````@`!`,P!``!PE@$`=0````(` +M`0#9`0``<`4``&,````"``$`]P$``%"'`0`E`````@`!`!("``#P?`$`%P`` +M``(``0`K`@``T*P``"L````"``$`1@(``$`#``!+`````@`!`%8"``#0D@$` +MY@(```(``0!H`@``8*P``#\````"``$`@P(``*#^``!8`````@`!`),"``#` +MU```H0````(``0"O`@``0*@```8!```"``$`S`(``("5``!2`0```@`!`.T" +M``!`^P``IP````(``0`#`P``\)0``(,````"``$`'@,``"">``#_`````@`! +M`$8#``"`B0$`FP````(``0!F`P``$-,``*P!```"``$`>0,``/"9```$`0`` +M`@`!`)L#``"@B@$`*0````(``0"^`P``()@``$@!```"``$`W@,``*"!`0`Y +M`0```@`!`/H#```@T@``X0````(``0`0!```H,8``&<#```"``$`*`0``+0+ +M```;`````0`#`#,$``!@`@$`(0$```(``0!"!```0'0``!L````"``$`7@0` +M`-!'`0`-!````@`!`'4$``#@LP``.`````(``0")!```8'4!`%<````"``$` +MF@0``,!'``#)`````@`!`+P$``#0?`$`&`````(``0#4!```D.4``#D````" +M``$`]`0``-#A```@`````@`!``T%``!@=@$`1P4```(``0`=!0``$'8!`$@` +M```"``$`+P4``'!5`0"I`````@`!`$0%```0X```&P$```(``0!=!0``@(@` +M`$4"```"``$`?04``""``0`C`````@`!`(H%``#`<P``?`````(``0"H!0`` +M\`,``!`````"``$`N04``#`%```S`````@`!`,T%``!PU0``9`$```(``0#> +M!0``@&L!`$T````"``$`[04``*`*``!?`````@`!``$&``#0B@``PP4```(` +M`0`6!@``H)$``%X````"``$`*P8``&`,```Q`0```@`!`#\&````RP``U``` +M``(``0!C!@```````#H````"``$`@08``#`3``!I`````@`!`)@&``!`W``` +MM@(```(``0"J!@``(.4``&T````"``$`N08``&#D``"X`````@`!`-0&```` +M=`$`5P````(``0#D!@``8````(`````!``D`Z@8``'"G``!R`````@`!``<' +M``#`>P``M`P```(``0`B!P``T(X!`&X!```"``$`4`<``(`&``!A`@```@`! +M`&T'``"`RP$`F@````(``0!]!P``P'4!`$(````"``$`D`<``#"L```K```` +M`@`!`*L'```@,0``Z`,```(``0#+!P``<+\!`+L#```"``$`Y@<``""B```J +M`0```@`!``L(````"P``6@````(``0`>"`````0``!X````"``$`,0@``#"M +M```K`````@`!`$8(``#0KP``20````(``0!7"```<,```*,````"``$`>0@` +M`-#I``!\"0```@`!`(H(``#0+0``3`,```(``0"B"```L&P``!`'```"``$` +MP`@``!"R```N`````@`!`-P(```0-0``_`@```(``0#\"```X+4``$`````" +M``$`$0D``%!1`0#X`0```@`!`"8)``!@7```8`,```(``0`]"0```)(``&<` +M```"``$`6@D``$`$`0#8`````@`!`'4)``#`T0``+0````(``0","0``H+4` +M`$`````"``$`I`D``""Q```Q`````@`!`+T)````;P$`.P````(``0#-"0`` +M\`@``$<````"``$`V0D``(#A```J`````@`!`/,)````O0``G`````(``0`. +M"@``0,X``%4!```"``$`)0H``""*`0!Q`````@`!`$@*````@`$`'P````(` +M`0!<"@``,`8``$(````"``$`<`H```"M```A`````@`!`(H*``#PX0``+0`` +M``(``0"B"@``H*P``"L````"``$`NPH``-`7```P`0```@`!`-H*``!@#P`` +M%@$```(``0#G"@``H!,``#X"```"``$`!`L```#_``#6`````@`!`!H+```@ +MAP$`)@````(``0`W"P``D`,!`*T````"``$`3`L``)"Z``!-`````@`!`&@+ +M``!PT0``4`````(``0"`"P``X&P!`!L"```"``$`D0L``!"\``#E`````@`! +M`*T+```@B0$`4P````(``0#3"P``@!(``!L````"``$`[@L``)"[``!W```` +M`@`!`!,,```@M@``%P,```(``0`H#```(,$```(!```"``$`20P``."Q```J +M`````@`!`&4,``#@#P$`[`8```(``0![#```,%`!`!(!```"``$`D@P``("= +M`0"5`````@`!`*0,``!@L0``*@````(``0"Z#```()\``&$!```"``$`T0P` +M`/`^`0"E`@```@`!`.,,``#@*P``[@$```(``0#_#```P*L``#`````"``$` +M#PT``,#X``!R`````@`!`"T-``#`6@``R@````(``0!*#0``<)(``.<````" +M``$`:@T``,"%`0`^`0```@`!`'L-``!PM```2`````(``0"4#0``$"0!`*4` +M```"``$`J`T``##A``!%`````@`!`+\-``#P#0``<`$```(``0#1#0``@!`` +M`%$````"``$`Z`T``%"M`0`[!0```@`!``,.``!PF0``?0````(``0`7#@`` +MT,\``!L!```"``$`*@X``"`$``!5`````@`!`#D.```0/@``JPD```(``0!1 +M#@``0)$``%X````"``$`>PX``/"'`0`D`0```@`!`)X.``#`@P$`20$```(` +M`0"Y#@``(+\``$P!```"``$`W`X``*`$``!I`````@`!`/`.``"@D```E0`` +M``(``0`6#P```*\``-`````"``$`,`\``'`L`0```@```@`!`$\/``#P;P$` +MCP````(``0!A#P``X$L!`$4$```"``$`=@\``*!A`0#D"````@`!`),/``"P +M1`$`$0,```(``0"L#P``(,P!`&@*```"``$`NP\``)`N`0"$"0```@`!`-@/ +M````WP``#@$```(``0#P#P``\*L``#0````"``$`!!```'#B``"*`````@`! +M`"$0```@X@``2`````(``0`U$```8*H``)@````"``$`1!```""P``#V```` +M`@`!`%80``#@@@$`U@````(``0!Q$```\-$``#`````"``$`A1```+#A```7 +M`````@`!`)L0``"`$0``>P````(``0"]$```H/8``*L!```"``$`TA```!!] +M`0#P`@```@`!`.@0``"06P``P0````(``0`%$0``4(`!`$<!```"``$`'!$` +M`$!O`0!2`````@`!`"T1``#@"0``10````(``0!!$0``4,0``/@````"``$` +M:1$``$"Y`0#-`````@`!`'X1``#PIP``3`````(``0"?$0``0````!P````! +M``D`L!$``+`[`0`V`P```@`!`,P1``#P`@``1`````(``0#?$0```*L``"P` +M```"``$`]Q$``,"<``!3`0```@`!`!P2``"@$@``5@````(``0`\$@``$(<! +M``8````"``$`5!(``,#Y``!9`````@`!`&`2``#`)`$`J0<```(``0!Y$@`` +M$/4``)T````"``$`CQ(``."6```X`0```@`!`+`2``#@_P``P`````(``0#% +M$@``(%8!`'0+```"``$`X1(```"9`0!H`P```@`!`/@2``!P+@$`&0````(` +M`0`2$P``X/P``+4!```"``$`+!,``)`#``!?`````@`!`$`3```09```2`0` +M``(``0!7$P``0/H``#,````"``$`91,``&"M```K`````@`!`'T3``#P^P`` +MZ`````(``0"1$P``4*D```P!```"``$`K!,```#C``!<`0```@`!`,,3``#@ +MN@``H0````(``0#?$P``(`D!`/0"```"``$`_1,``*#%`0#9!0```@`!`!04 +M``"P>P$`7`````(``0`A%```\&L!`#\````"``$`+A0``&"3```J`0```@`! +M`%(4``!PY@``+@$```(``0!M%```,)@!`,$````"``$`A10``""T``!$```` +M`@`!`*$4``#@^@``)0````(``0"P%```@`0``!<````"``$`PA0``(!@``"( +M`P```@`!`-T4````$P``(P````(``0#S%```@(<!`#,````"``$`#A4``*#G +M```-`0```@`!`"(5```@!0$`L`````(``0`V%0``D*```/`````"``$`4Q4` +M``"=`0!S`````@`!`&$5``!`D`$`I@$```(``0!X%0``@`H``!T````"``$` +MBA4``/#0``!R`````@`!`)P5``!`G@$`7@````(``0"M%0``0,,```0!```" +M``$`UQ4``,`+``"1`````@`!`/05``!0^```:`````(``0`1%@``T%```.() +M```"``$`*!8``-"*`0#V`P```@`!`#X6``!0V@``X@$```(``0!.%@``X`4` +M`$$````"``$`918``+"^`0#``````@`!`($6```0!0``$0````(``0"8%@`` +M0````"@````!``<`I18``!`?```M`````@`!`,,6``#0!0$`L`````(``0#7 +M%@``8'0!`%<````"``$`YQ8````````$`````0`)`/D6``"PZ```C0````(` +M`0`B%P``X!```)4````"``$`01<``*#/```F`````@`!`%$7``!`JP``=0`` +M``(``0!J%P``H'H``!,!```"``$`@Q<``&!H``!0!````@`!`)L7``#@U@`` +M:@,```(``0"Y%P``P`P!`!(#```"``$`TQ<``.`5``#I`````@`!`.D7```` +MK@``\@````(``0``&```D$@``#4(```"``$`%A@``&`+``!:`````@`!`"H8 +M``"0K0``9P````(``0`]&```$+H!`'T````"``$`51@``-#E``"9`````@`! +M`'`8``"0E```60````(``0"7&```H,P``*`````"``$`OA@``)"Q``!$```` +M`@`!`-D8```PP@``#0$```(``0#\&```8'0``#T%```"``$`'1D``("A``"5 +M`````@`!`#P9```@#`$`E`````(``0!0&0``$(4!`+`````"``$`:QD``%!3 +M`0`4`@```@`!`(<9``"@#0``1`````(``0"9&0``4!P!`+0'```"``$`M!D` +M`,"T``#9`````@`!`,89``#0%P$`>`0```(``0#9&0```)L``+@!```"``$` +M`AH``!#*``#A`````@`!`"D:```P;`$`HP````(``0!#&@``L)\!`%(````" +M``$`6QH```"'`0`&`````@`!`',:``!`^0``<@````(``0"1&@``0,T``/4` +M```"``$`IAH``#"K```"`````@`!`+L:``#@RP``L0````(``0#=&@``4,4` +M`$L!```"``$``0```$#X`@"7`````@`!`#8````P"0(`=`````(``0``&P`` +MT/L!`&D````"``$`>P```*#P`@`3`````@`!`!8;``!`HP(`*P````(``0`S +M&P``$+T"`&<#```"``$`RP```"#W`@`<`0```@`!`$T;``"P8P(`K@8```(` +M`0!M&P``X(\"`'T````"``$`@QL``$!8`P#D"````@`!`*(;```PWP(`C0`` +M``(``0#-&P``,*L"`-D````"``$`)@$``.!S`P!7`````@`!`.$;``#@G0(` +M<@````(``0``'```T'H#`#X!```"``$`$QP``+"5`P!2`````@`!`"T<``#` +M3`,`=`L```(``0!+'```8%\"`%`$```"``$`91P``(#9`@!<`0```@`!`*$! +M```@9@,`2`````(``0#,`0``@(L#`'4````"``$`?AP``!".`P!H`P```@`! +M`)<<``!PHP(`(0````(``0"S'```T$8#`!(!```"``$`S!P``,#Z`0!?```` +M`@`!`.(<``#@:@(`&P````(``0``'0``H/P!`&,````"``$`(!T``$"F`@!) +M`````@`!`#,=```03`,`J0````(``0!*'0``@*@"`"X````"``$`:!T``)`! +M`@`@`````@`!`(H=``!@H@(`-`````(``0"@'0``X(<#`.8"```"``$`@P(` +M`"#U`@!8`````@`!`+0=``#@?P,`]@,```(``0#,'0```*0"`&<````"``$` +MX1T``"`%`@!P`0```@`!`,P"``#PBP(`4@$```(``0#M`@``P/$"`*<````" +M``$`]1T``*`"`P"4`````@`!``,#``!@BP(`@P````(``0`+'@``8'0#`!<` +M```"``$`'@,``)"4`@#_`````@`!`"8>``#@/@(`R0````(``0!*'@``D`(" +M`%H````"``$`8!X``/!'`P#X`0```@`!`"@$``#@%P``(`````$``P`S!``` +MX/@"`"$!```"``$`=QX``)#(`@#A`````@`!`(\>``!0S0(`:@,```(``0"O +M'@``8)`"``0!```"``$`TQX``/!)`P`4`@```@`!`/$>``#PW`(`+@$```(` +M`0")!```0&P#`%<````"``$`#A\``,"?`@`,`0```@`!`"L?```@$`(`"08` +M``(``0!-'P```+("`'<````"``$`?04``,!U`P`E`````@`!`'0?``#@QP(` +M4`````(``0".'P``D*H"`$0````"``$`K!\```"+`@!9`````@`!`-4?``"P +M"0(`&P````(``0#R'P``8`$"`"4````"``$`U`8``.!J`P!7`````@`!`.0& +M``!@`0``@`````$`"0`*(```L,,"`/X````"``$`(2```!"(`@!>`````@`! +M`#@@``!@#@,`>`0```(``0!-(```8/T!`$(````"``$`;0<``%#!`P":```` +M`@`!`&,@````?0,`)`$```(``0"((```,),"`%,!```"``$`KR```,"[`@!+ +M`0```@`!`-0@``"04@(`P0````(``0#S(```<*4"`-`````"``$`#R$``&`* +M`@!I`````@`!`"@A``#0`0(`7P````(``0`^(0``X,L"`&0!```"``$`42$` +M`##W`0`Z`````@`!`'$A``!`<`(`\P````(``0"]"0``H&4#`#L````"``$` +MC2$``!"'`@"5`````@`!`+4A``"P!P(`40````(``0#.(0``D'X#`)L````" +M``$`V0D```#8`@`J`````@`!`/`A``!`*`(`Z`,```(``0`2(@``L'8#`#D! +M```"``$`,"(``#`L`@#\"````@`!`%(B``"PN0(`!`$```(``0!^(@``D)@" +M`"H!```"``$`I2(``-`)`@!6`````@`!`,<B``#@M`,`NP,```(``0!("@`` +MD'4#`"$````"``$`Y"(````C`@#N`0```@`!``(C```0"`(`E0````(``0"B +M"@``$*,"`"L````"``$`(R,``/!W`P#6`````@`!`$`C```P[`(`X0````(` +M`0!;(P``0`,#`"(#```"``$`V@H``)`&`@`6`0```@`!`'<C```P-0(`JPD` +M``(``0"1(P``,-@"`!<````"``$`J2,``)!\`P`S`````@`!`,8C``!@G@(` +M3`````(``0#I(P``(&(#`$T````"``$`^B,``%"L`@!``````@`!`!$D```@ +M<P,`7`````(``0"`"P``@&,#`!L"```"``$`("0``/#8`@"*`````@`!`#\D +M```0PP(`H`````(``0!H)```T&(#`*,````"``$`A"0``'"[`P#9!0```@`! +M`)TD``"PT@(`R`(```(``0"Q)```D+4"`$P!```"``$`UB0``/!U`P"W```` +M`@`!`.\D``#`[P(`<@````(``0`/)0``H*,"`"L````"``$`)B4``+`!`@`= +M`````@`!`#HE``"`]0(`U@````(``0!2)0``\&P#`$@````"``$`9B4``"#[ +M`0`0`````@`!`'DE``"`0@,`100```(``0"0)0``X/D!`#H````"``$`D@P` +M`)"2`P"5`````@`!`+H,``"0E0(`80$```(``0"@)0``$",#```"```"``$` +MT0P``)`U`P"E`@```@`!`,$E``!PD0(`N`$```(``0#L)0``4*H"`#@````" +M``$``B8``&#\`0`S`````@`!`!@F```0^@(`K0````(``0`O)@``0'$"`!,! +M```"``$`2B8```#]`@"8`@```@`!`%\F``"`R0(`K`$```(``0!T)@``P+H" +M`/@````"``$`GB8``+#$`@!5`0```@`!`+<F``#0IP(`*@````(``0#/)@`` +M<(@"`&<````"``$`40X``+"'`@!>`````@`!`.XF``#P1P(`R`D```(``0`' +M)P``<`8#`.P&```"``$`'R<``%#@`@!\"0```@`!`#(G```P?`,`)@````(` +M`0!1)P``$`$"`$4````"``$`9R<``#`E`P"$"0```@`!`(8G``"@N`(`#0$` +M``(``0"K)P``H/\"`/0"```"``$`3P\``'!F`P#C`````@`!`,LG``"0I@(` +M]@````(``0#?)P``T*`"`)@````"``$`K`\``/#!`P!H"@```@`!`/`G``#@ +M$@,`Q`<```(``0`-*```X-H"`+@````"``$`*B@``+#[`0`7`````@`!`#XH +M``"0U@(`&P$```(``0#8#P``@-4"``X!```"``$`62@````-`@#I`````@`! +M`'$H``#@J@(`2`````(``0",*```<``"`)L````"``$`HB@``##[`0`>```` +M`@`!`+<H``#0?`,`)P````(``0#5*```,'\#`'$````"``$`^B@``(!T`P`* +M`0```@`!`!P1``#@90,`.@````(``0`2*0``H-@"`$@````"``$`*"D``."( +M`@#G`````@`!`$HI``!@<@(`Z`P```(``0!G*0``8!L#`*D'```"``$`@BD` +M`&#'`@!R`````@`!`)8I```P%@(`+0````(``0!I$0``L*X#`,T````"``$` +MMBD```!K`@`]!0```@`!`-DI``#0HP(`*P````(``0#S*0``(/H!`$0````" +M``$`""H``."#`P!N`0```@`!`#@J```PR`(`+0````(``0!1*@``H*$"``(` +M```"``$`5!(``$#P`@!9`````@`!`&@J``"P/P(`-@@```(``0"/$@``4(T" +M`#@!```"``$`@"H``"#>`@`-`0```@`!`)8J```@[0(`JP$```(``0"M*@`` +MT`H"`"0"```"``$`L!(``&#V`@#``````@`!`,PJ``!@:@(`?`````(``0#X +M$@``$"4#`!D````"``$`["H``)#K`@"=`````@`!``0K``!0?P(`10(```(` +M`0`F*P``T.X"`&@````"``$`12L``%`[`P`1`P```@`!`&`K``"P?P,`*0`` +M``(``0!7$P``P/`"`#,````"``$`A2L``+`(`@![`````@`!`*DK``#P`@(` +MD0````(``0##$P``4+$"`*$````"``$`R"L``/"7`@"5`````@`!`.DK``!` +M[P(`<@````(``0`)+```D`,"`#$!```"``$`'RP``!"L`@!``````@`!`#DL +M``!PP0(`U`````(``0!?+```4/L!`%4````"``$`(10``)!B`P`_`````@`! +M`'`L``"0IP(`,0````(``0"++```$'P#``8````"``$`I2P``$`X`P`)`P`` +M`@`!`+XL```06P(`2`0```(``0!M%```0(T#`,$````"``$`URP``(!S`P!4 +M`````@`!`.4L```@>@,`L`````(``0"A%```8/$"`"4````"``$``BT``$#\ +M`0`1`````@`!`!LM``#0>`,`20$```(``0`X+0``<*$"`"P````"``$`4BT` +M``"H`@!$`````@`!`&\M``!@\P(`M0$```(``0"++0``,`("`%H````"``$` +MH"T``'"D`@#R`````@`!`-T4```P"@(`(P````(``0"Y+0``0&T#`-,%```" +M``$`RRT``%#<`@"9`````@`!`.@M````L0(`30````(``0`&+@``<#X#``T$ +M```"``$`'RX``)".`@!(`0```@`!`"(5``"@^P(`L`````(``0`V%0```)<" +M`/`````"``$`4Q4``!"2`P!S`````@`!`$$N``"0K`(`%P,```(``0!8+@`` +M<+,"`)P````"``$`=2X``,#Z`@#8`````@`!`)(N``#`40(`R@````(``0"Q +M+@``8!8"`)8,```"``$`G!4``%"3`P!>`````@`!`,XN```PH@(`,`````(` +M`0#@+@``@/<!`%H"```"``$`_2X``##+`@"A`````@`!`!LO```0W`(`.0`` +M``(``0`]+P``L*$"`'4````"``$`6"\``*!L`P!"`````@`!`&TO``!PV`(` +M+0````(``0`^%@``P-`"`.(!```"``$`AR\``%`R`P`V`P```@`!`&46```@ +MM`,`P`````(``0"E+P``H-L"`&T````"``$`MB\``,#?`@"-`````@`!`-$O +M``!0V`(`(`````(``0#L+P``T`0"`$0````"``$`PQ8``%#\`@"P`````@`! +M```P```@``(`1P````(``0`.,```,'X#`%,````"``$`UQ8``$!K`P!7```` +M`@`!`.<6`````0``!`````$`"0!!%P``$,8"`"8````"``$`-C```!#]`0!! +M`````@`!`$\P``"`5P(`B`,```(``0!L,```T(D"`"H!```"``$`DC```+"> +M`@`&`0```@`!`+$P``"P_0$`80(```(``0#0,```X+8"`*,````"``$`]#`` +M`+#7`@!%`````@`!``TQ``!`=`,`&`````(``0`G,0``@,`"`.$````"``$` +M4#$``&!3`@!@`P```@`!`&DQ``"@@0(`;04```(``0"`,0``0`$``!P````! +M``D`DS$``("R`@#E`````@`!`+$Q```@?`,`!@````(``0`]&```@*\#`'T` +M```"``$`RS$``*"B`@`K`````@`!`.@Q``#`F0(`(`0```(``0`',@``\"0" +M`$P#```"``$`(3(``$#&`@`;`0```@`!`#8R``!P\@(`Z`````(``0!,,@`` +MD+<"``(!```"``$`;S(``&!\`P`E`````@`!`(PR``!@R`(`,`````(``0"B +M,@``L!H#`*4````"``$`N#(``,"B`P`[!0```@`!`-4R``!0P@(`L0````(` +M`0#Y,@``</H!`$L````"``$`"S,``/`.`@`P`0```@`!`"PS``!0A0,`I@$` +M``(``0!%,P``T*("`#\````"``$`8C,``%"H`@`J`````@`!`(`S```@-`4` +M50````(``0".,P``$`<$`)H````"``$`GC,``(`7!`!Z#0```@`!`+@S``"P +M)`4`R@D```(``0#(,P``X"\$`(D````"``$`V#,```@"```$`````0`)`.@S +M``!`!00`#P````(``0#],P``0"@$`#4"```"``$`$C0``&`>!0!4`````@`! +M`"HT``!!`@```0````$`!P`Z-```,$($`)P````"``$`2C0``!`6!0`.`0`` +M`@`!`%LT```@%P4`E`````(``0!O-```0!\%`)@"```"``$`A30``%`X!``E +M`0```@`!`)LT```,`@``!`````$`"0"I-```H!4%`&\````"``$`P30``$#N +M!`"'`````@`!`-`T```@7P0`00````(``0#B-```D/P#`#T!```"``$`]30` +M`(`Y!`"D`0```@`!``TU```0[P,`2P````(``0`A-0``@"H$`&X"```"``$` +M-34``-`F!`!;`````@`!`$,U``#@`P0`J@````(``0!8-0``D`D$`%D````" +M``$`:34``)`#!`!$`````@`!`(`U```4`@```0````$`"0"4-0``@"T$`%\` +M```"``$`KS4````E!`#"`0```@`!`,,U``#P+`0`@P````(``0#3-0``8/`# +M`"0````"``$`W#4``(#M`P"(`````@`!`/@U``#@(04`]P````(``0`.-@`` +M\!,$`!L#```"``$`(38``*`2!0`Z`````@`!`"HV``"`-`4`50````(``0`X +M-@``,!($`+8!```"``$`5#8``!!>!`#X`````@`!`%\V````8@0`L`````(` +M`0!U-@```)X$``\!```"``$`AS8``#!A!`#/`````@`!`*`V``!`!P4`2P`` +M``(``0"Q-@``8#,$`$(````"``$`O#8``!`)!0")!````@`!`,TV``"P!00` +M?`````(``0#B-@``P!0%`-(````"``$`\38``!#U`P#<`````@`!``0W```` +M[0,`$P```!(``0`K-P``&`(```$````1``D`0#<`````````````$````%<W +M````-`4`$@```!(``0!N-P`````````````0````@3<```#P`P`G````$@`! +M`),W``#P,@4`.0```!(``0"B-P``T/T#`.8!```2``$`N3<``(#S`P!J```` +M$@`!`-`W`````````````!````#H-P``@#,%`%H````2``$``3@``&#M`P`1 +M````$@`!`!@X````_`,`BP```!(``0`O.``````````````0````2C@``+#Q +M`P!7````$@`!`%DX`````````````!````!@.```$/(#`,8````2``$`<S@` +M`*#O`P`E````$@`!`(HX``#@]@,`'````!(``0">.```4``$`%<!```2``$` +MM#@``,`7!0!:`@``$@`!`-$X```0`@``!````!$`"0#H.```(!H%`#4$```2 +M``$``CD`````````````$````!<Y``#P]0,`20```!(``0`M.0``$`@$`%X` +M```2``$`2#D``!!?!``*````$@`!`&(Y`````````````!````!T.0``,#,% +M`%`````2``$`B3D````"```$````$0`)`)DY```P!P4`$````!(``0"R.0`` +M,/$#`'D````2``$`QSD``!D"```!````$0`)`-\Y```0H`$`&````!(``0#Z +M.0`````````````0````!#H``(`&!0"(````$@`!`!LZ`````````````!`` +M```R.@``\/,#`%@````2``$`13H`````````````$````$\Z```$`@``!``` +M`!$`"0!>.@``X/(#`)@````2``$`=CH``%#T`P#`````$@`!`(<Z````7@0` +M"P```!(``0"?.@`````````````0````MCH``+!B!``O````$@`!`,8Z```7 +M`@```0```!$`"0#B.@`````````````0````]3H`````````````$`````@[ +M``!#`@```0```!$`!P`<.P``D/8#`"(````2``$`03L````/!0!+`P``$@`! +M`$\[```0E@,`&````!(``0!L.P``P/8#`!D````2``$`B#L````````````` +M$````*`[``"@#04`50```!(``0"U.P`````````````0````RSL``,`>!0!_ +M````$@`!`.8[``!0$@4`2@```!(``0#Z.P`````````````0````"CP````` +M````````$````"$\``#@,P4`$@```!(``0`X/``````````````0````2SP` +M`$#P`P`4````$@`!`&<\```0[@,`P0```!(``0""/```0`(```$````1``<` +ME3P``"#M`P`+````$@`!`*T\```5`@```0```!$`"0#(/```@"X%`/<"```2 +M``$`Z#P````R!0`#````$@`!``(]```0$`0`Q0$``!(``0`9/0``P/\#`(\` +M```2``$`+ST``)#P`P`U````$@`!`$@]`````````````!````!?/0``,.T# +M`"@````2``$`=ST`````````````$````(L]``#0[P,`+````!(``0"A/0`` +MX#$%`!@````2``$`OST``(#Z`P#5````$@`!`-\]`````````````!````#S +M/0`````````````0````$#X``##P`P`-````$@`!`"H^`````````````!`` +M```]/@``$`8%`&H````2``$`5#X`````````````$````&\^``#0,04``@`` +M`!(``0""/@``D`<%`%L````2``$`ESX``)`$!`"A````$@`!`*\^``"`,04` +M3P```!(``0#-/@``X.X#`"H````2``$`^SX``$("```!````$0`'`!<_``"P +M`00`U@```!(``0`N/P``$`<%`!X````2``$`0S\``$#V`P!)````$@`!`&(_ +M`````````````!````!Y/P``(/D#`%0!```2``$`EC\``-#P`P!;````$@`! +M`*L_``#@$@4`.0$``!(``0#(/P``%@(```$````1``D`XS\``-!"!`"4```` +M$@`!``!035])<W-U95)E861&86EL3&5D`'(W-3!?5&%G7TEN:70`<C<U,%]5 +M<&1A=&50:'E);F9O`'-A<U]H87-H7V%D9'(`<C<U,%]697)I9GE#;VUM86YD +M0F5F;W)E4V5N9&EN9P!R-S4P7T-H96-K1&5V:6-E0VAA;F=E`$UA:V5!='1$ +M979);F9O`'(W-3!?1$E30U]#86YC96Q$:7-C;W9E<@!R-S4P7T)E97!/;@!R +M-S4P7U-#4TE?051!7T9I;&Q$871A1FEE;&0`4$U?5W)I=&5296=3>6YC`'(W +M-3!?4T-325]-86ME0V%C:&5#;VUM86YD`'(W-3!?0T]215])<W-U95--4%)E +M<75E<W0`<C<U,%]-5E]:97)O379297%U97-T`&DR8T%?=W)I=&5?8GET97,` +M<C<U,%]315-?26YT97)N86Q297%#86QL8F%C:P!R-S4P7TES<W5E7U)E<&]R +M=$=E;F5R86P`<C<U,%]-5E]$=6UP4F5Q=65S=`!R-S4P7TU67TEN:71I86QI +M>F5487)G971)1%1A8FQE`'-E=%]P;5]F86EL7VQE9`!R-S4P7U!R97!A<F5! +M;F1396YD0V]M;6%N9`!/9&EN4U!)7U)D<'0`<C<U,%]-5E]-87!4;U-P96-I +M9FEC5&%R9V5T240`<C<U,%]30U-)7T%405]&:6QL3$)!0V1B,3``<C<U,%]3 +M1U!)3U]7<FET95)E9VES=&5R`'(W-3!?1G)E95-!5$%38W)A=&-H5&]0;V]L +M`'(W-3!?5&%G7T=E=$]N90!R-S4P7T]D:6Y34$E?26YI=`!R-S4P7T9R965) +M;G1E<FYA;%)E<51O4&]O;`!W871I;F=?8V%L;&)A8VL`<C<U,%]#;VUP;&5T +M95)E<75E<W1!;F13;&]T`'(W-3!?0V]R95]'9713=7!P;W)T961#;W5N=',` +M1&5V:6-E7TUA:V50<FEV871E4V5N9%-E<U)E<75E<W0`4$U?4V5T1F%I;$QE +M9$-A;&QB86-K`$%S<VEG;D5L96UE;D1E<V-R:7!T;W).86UE`$1E=FEC95]- +M86ME4V5S16QE;65N=%-T871U<U)E<75E<W14:6UE<@!R-S4P7U-#4TE?051! +M7U9E<FEF>51R86YS;&%T:6]N`'(W-3!?7U]R96YE=U]T:6UE<@!R-S4P7T1E +M=FEC95]-86ME4V5S4F-V1&EA9U)E<75E<W0`<C<U,%]30U-)7T%405]3=&%R +M=%-T;W!4<F%N<VQA=&EO;@!R-S4P7T1E=FEC95]7<FET95-E<T-O;G1R;VQ$ +M:6%G`'(W-3!?4T=024]?4TU04F5Q=65S=%]7<FET90!R-S4P7T9R965$979I +M8V54;U!O;VP`<C<U,%]0;W)T7T%B;W)T4F5Q=65S=',`<')O9'5C=%]I9`!0 +M35]296%D4F5G4WEN8P!R-S4P7T-O<F5?36]D=6QE4V5N9%)E<75E<W0`<C<U +M,%]#:&5C:U1A<F=E=$-H86YG90!R-S4P7T9R9650;W)T5&]0;V]L`&DR8T)? +M=W)I=&5?8GET97,`<C<U,%]#;W)E7TEN=&5R<G5P=%-E<G9I8V52;W5T:6YE +M`'(W-3!?4T=024]?4F5A9%)E9VES=&5R`'(W-3!?1$E30U]'971.96=O=&EA +M=&5D3&EN:U)A=&4`<C<U,%]#86QC=6QA=&52;W5T94EN9&5X`'(W-3!?;V1I +M;E]I;V-T;`!R-S4P7W-E=%]F86EL7VQE9`!R-S4P7U-44%]$979I8V5297-E +M=`!R-S4P7T=E=$5X<&%N9&5R1G)O;5!O;VP`<C<U,%]3051!7U!-7TAA;F1L +M941E=FEC955N<&QU9P!497-T7U!I;E]3970`<C<U,%]#;W)E7TEN=&5R;F%L +M4V5N9%)E<75E<W0`<C<U,%]486=?27-%;7!T>0!R-S4P7TU67TUA<%1A<F=E +M=$E$`'(W-3!?7U]A9&1?=&EM97(`<C<U,%]I,F-?<F5S970`<C<U,%]M=E]D +M:7-A8FQE7VAB80!R-S4P7T-O<F5?4F5Q5&EM96]U=`!R-S4P7T9I;F1!<V-I +M:4YU;6)E<@!R-S4P7VUV7W-E=%]305-!9&1R`'(W-3!?17AP86YD97)?4TU0 +M4F5Q=65S=%]0:'E#;VYT<F]L`'(W-3!?4T-325]-86ME36]D95!A9V5#86-H +M:6YG`'(W-3!?0V]R95]297-E=$-M9%-L;W0`<C<U,%]296UO=F5$979I8V4` +M<C<U,%]&:6YD5&=T3F\`<C<U,%]3=&]R95]#;VYF:6=2;W5T94EN9F\`:3)C +M05]R96%D7V)Y=&5S`&%I;F9O`'(W-3!?0V]R95]-86ME1&5V:6-E4F5S9712 +M97$`<C<U,%]#;W)E7TUO9'5L94EN:71I86QI>F4`<C<U,%]30U-)7T%405]2 +M96%D0V%P86-I='E4<F%N<VQA=&EO;D-A;&QB86-K`'(W-3!?359?4V5T3$)! +M86YD4V5C=&]R0V]U;G0`;V1I;E]C;W)E7W1I;65R`'(W-3!?<V5T7V9A:6Q? +M;&5D<P!R-S4P7T9R965#;W)E0V]N=&5X=%1O4&]O;`!R-S4P7V-O<F5?:&%N +M9&QE7W1A<VMF:6QE7V5R<F]R`'(W-3!?;V1I;E]S971?<W!I;E]U<%]M;V1E +M`'(W-3!?4&]S=$UA:V5397-%;&5M96YT4W1A='5S4F5Q=65S=`!R-S4P7VUV +M7V5N86)L95]X;70`<C<U,%],:7-T7T=E=$9I<G-T`'(W-3!?1G)E95-%4U-" +M5&]0;V]L`'(W-3!?1V5T4$U$979I8V4`<C<U,%]$979I8V5?36%K94UO9&53 +M96QE8W1297%U97-T`'(W-3!?1&ES8V]V97)Y4TT`<C<U,%]3051!7T5R<F]R +M2&%N9&QI;F<`<C<U,%]3051!7U!O<G1(86YD;&5);G1E<G)U<'0`<C<U,%]' +M971#;W)E0V]N=&5X=$9R;VU0;V]L`'(W-3!?4T%37TAA;F1L94-O;7!L971E +M9$-O;6UA;F0`<C<U,%]&<F5E4F5G:7-T97)3970`<C<U,%]3051!7U!O<G1$ +M971E8W0`<C<U,%]0;W)T7TAA;F1L95!L=6=I;@!R-S4P7T%S<VEG;D5L96UE +M;G13;&]T3G5M8F5R`'(W-3!?1&5V:6-E7TES<W5E4V]F=%)E<V5T`'(W-3!? +M7U]035]C86YC96Q?=&EM97(`<C<U,%]035]&<F5E4F5G:7-T97)3970`<C<U +M,%]'97131T)U9F9E<D9R;VU0;V]L`'-E=%]E;5]F86EL7VQE9`!R-S4P7TU6 +M7T-20P!'9713051!-C1+4V-R871C:$9R;VU0;V]L`'(W-3!?4G5N=&EM94ES +M<W5E4V]F=%)E<V5T`'(W-3!?1V5T1&5V:6-E1G)O;5!O;VP`<C<U,%]30U-) +M7T%405]3>6YC0V%C:&54<F%N<VQA=&EO;@!497-T7U!I;E]);FET:6%L:7IE +M`'(W-3!?359?1V5T36%P<&5D240`<C<U,%]&<F5E4TU04V-R871C:%1O4&]O +M;`!R-S4P7T9I;F1&<F5E4TU00V]N=&5X=`!&<F5E4T%4038T2U-C<F%T8VA4 +M;U!O;VP`<C<U,%]3051!7U!R97!A<F5#;VUM86YD2&5A9&5R`&UV7W!H>5]R +M97-E=`!R-S4P7U-!5$%?2&%N9&QE1&5V:6-E56YP;'5G`'(W-3!?4$U?27-S +M=657<FET95)E9P!R-S4P7U-#4TE?051!7T-H96-K0V]N9&ET:6]N`'(W-3!? +M4$U?27-S=65296%D4F5G`'(W-3!?1V5T26YT97)N86Q297%&<F]M4&]O;`!R +M-S4P7T9R965%>'!A;F1E<E1O4&]O;`!S971?96U?9F%I;%]L961S`'(W-3!? +M4G5N=&EM94ES<W5E4F5A9$QO9T5X=`!R-S4P7U-#4TE?051!7U)E861#87!A +M8VET>51R86YS;&%T:6]N`'(W-3!?9'5M<%]U;F%S<V]C:6%T961?9FES`'(W +M-3!?1&5V:6-E7TUA:V53=&%R=%-T;W!5;FET4F5Q=65S=`!R-S4P7T-O;7!L +M971E4F5Q=65S=`!R-S4P7T1E=FEC95]-86ME36]D95-E;G-E4F5Q=65S=`!R +M-S4P7T=E=%-!5$%38W)A=&-H1G)O;5!O;VP`<C<U,%]#;W)E7TUO9'5L95-T +M87)T`'(W-3!?1&ES8V]V97)Y0V%L;$)A8VL`9V5T7VED7V9R;VU?96YC260` +M<C<U,%]'971315-30D9R;VU0;V]L`%-%4U]0<FEV871E4F5Q0V%L;&)A8VL` +M4T%37U)E<&]R=$QU;E-C86X`<C<U,%]#;W)E7TAA;F1L95=A:71I;F=,:7-T +M`'(W-3!?4')E16UP='E030!R-S4P7T=E=$UI;DYE9V]T:6%T961,:6YK4F%T +M90!R-S4P7U-!5$%?2&%N9&QE1&5V:6-E4&QU9VEN`'(W-3!?1FEL;$5N8VQO +M<W5R945L96UE;G13=&%T=7,`<C<U,%]30U-)7U1O7T9)4P!R-S4P7T-O<F53 +M879E3W)I9VEN86Q#1$(`<C<U,%]3051!7U!O<G1297-E=`!R-S4P7T=E=$]N +M94-O;6UA;F13;&]T`'(W-3!?;79?<F5S971?<&AY`'(W-3!?5W)I=&5$14Q6 +M7U%?16YT<GD`<C<U,%]O9&EN7W-E=%]I9&QE7W-T86YD8GD`<C<U,%]315-? +M4V5T1F%I;$QE9`!R-S4P7T=E=%!-1G)O;5!O;VP`<C<U,%]-5E]%<75A;',` +M<C<U,%](86YD;&5#;VUM86YD475E=64`07-S:6=N4V5S3W1H97)%;&5M96YT +M3W9E<F%L;$5L96UE;G1.=6UB97(`<C<U,%]30U-)7T%405]296%D5W)I=&54 +M<F%N<VQA=&EO;@!R-S4P7U--4%]31U!)3U]3971?1F%I;&QE9`!R-S4P7U)U +M;G1I;65)<W-U95-O9G1297-E=$-A;&QB86-K`'(W-3!?4T=486)L95]!<'!E +M;F0`<C<U,%]!<W-I9VY$979I8V5/=F5R86QL16QE;65N=$YU;6)E<@!R-S4P +M7U!-7T%S<VEG;E)E9VES=&5R4V5T`'(W-3!?4T%405]034AO='!L=6=297%# +M86QL8F%C:P!P;W)T7W-E=%]F86EL7VQE9`!R-S4P7U5P9&%T951G=$1E=DUA +M<`!R-S4P7U-!4U]);G1E<FYA;%)E<4-A;&QB86-K`'(W-3!?57!D871E5&%R +M9V5T1&5V:6-E<P!O9&EN7V5M7V%C8V5S<P!R-S4P7U-!5$%?1&5V:6-E4W1A +M=&5-86-H:6YE`$1E=FEC95]297!O<G1,=6Y297%U97-T`'(W-3!?4')E16UP +M='E$979I8V4`<C<U,%]$25-#7T-H96-K1&ES8V]V97)3=&%T90!R-S4P7T9R +M965335!#;VYT97AT`'(W-3!?1V5T3D-15&%G`'(W-3!?4T%44V5N<V5$871A +M`'(W-3!?4T=024]?4TU04F5Q=65S=%]296%D`'(W-3!?7U]C86YC96Q?=&EM +M97(`<C<U,%]$25-#7T=E=%)E<V]U<F-E`'(W-3!?0V]R95]P87-S7W1H<G5? +M9FEL;%]T87-K9FEL90!R-S4P7T1)4T-?1&]$:7-C;W9E<@!R-S4P7U-'4$E/ +M7TEN:71I86QI>F4`<C<U,%]0;W)T7TAA;F1L941E=FEC95!L=6=I;@!R-S4P +M7U-'4$E/7U-E=%]&86EL;&5D`'-E=%]P;5]F86EL7VQE9',`<C<U,%]-5E]# +M;W!Y4T=486)L90!R-S4P7T1E=FEC95]-86ME4F5A9$-A<&%C:71Y5&%S:U)E +M<75E<W0`=7!D871E7V1E=FEC95]C;VYF:6<`<C<U,%]#;W)E7TUO9'5L945N +M86)L941I<V%B;&5)4E$`<C<U,%]M;V1E4&%G94)U9@!R-S4P7U-!4U]$979I +M8V53=&%T94UA8VAI;F4`<C<U,%]486=?26YI=%]&249/`'(W-3!?0V]R95]& +M:6QL4V5N<V5$871A`'(W-3!?4&]S=$UA:V5397-#;VYF:6=U<F%T:6]N4F5Q +M=65S=`!R-S4P7U-!5$%?4$U?2&%N9&QE1&5V:6-E4&QU9VEN`'(W-3!?4T-3 +M25]!5$%?57!P97)7;W)D`$UA:V5$979);F9O`'(W-3!?4T%405]035-T871E +M36%C:&EN90!R-S4P7T1)4T-?4V5T4F5S;W5R8V4`1&5V:6-E7TUA:V50<FEV +M871E4F5C=E-E<U)E<75E<W0`4$U?27-S=657<FET949A:6Q,960`<C<U,%]3 +M051!7U!-26YI=%)E<4-A;&QB86-K`'(W-3!?;V1I;E]F;&%S:%]A8V-E<W,` +M4T%405]035-T871E36%C:&EN95-P:6Y5<`!R-S4P7U-!5$%?4&]R=$1E=FEC +M95)E861Y`'(W-3!?5&%G7U)E;&5A<V5/;F4`<C<U,%]305-?17)R;W)(86YD +M;&EN9P!C:&5C:U]387-!9&1R`'(W-3!?1G)E95-'0G5F9F5R5&]0;V]L`'(W +M-3!?1&5T96-T4&]R=%1Y<&4`<C<U,%]0;W)T7TES4F5Q=65S=%)U;FYI;F<` +M<C<U,%]$25-#7T=E=%1G=$1E=DUA<`!$979I8V5?5&5S=%5N:71296%D>5)E +M<75E<W0`<C<U,%]$979I8V5?4&%R<V5)9&5N=&EF>41A=&$`<C<U,%]D979I +M8V5?<')O8F5?9&]N90!R-S4P7T)E97!/9F8`9V5T7V9I<G-T7W!M`'(W-3!? +M57!D871E4W1A='5S5G-397-#;VYT<F]L0G5F9F5R`'(W-3!?27-S=65?0V]N +M9FEG4F]U=&5);F9O`$]D:6Y34$E?4V5C=&]R56YP<F]T96-T`'(W-3!?0V]R +M95)E<W1O<F5/<FEG:6YA;$-$0@!S8W-I;'5N7W1O7VEN=`!R-S4P7U-'5&%B +M;&5?26YI=`!R-S4P7U-!5$%?4$U?17)R;W)(86YD;&EN9P!3051!7TAA;F1L +M95!-7TAO=%!L=6<`<C<U,%]30U-)7T%405]&:6QL3$)!0V1B,38`<C<U,%]) +M<W-U95]$:7-C;W9E<@!'971!='1)9&5N=&EF>49R86UE`%-%4U1I;65R7TEN +M=&5R;F%L4F5Q0V%L;&)A8VL`9V5T7V5N8U]C;W5N=`!R-S4P7T-A=&5G;W)Y +M7T-$0E]4>7!E`'(W-3!?3&ES=%]'971,87-T`'(W-3!?1G)E95!-5&]0;V]L +M`&=E=%]M:6Y?<&U0871H260`<C<U,%]$979I8V5?36%K95)E861#87!A8VET +M>3$V5&%S:U)E<75E<W0`<C<U,%]M=E]D:7-A8FQE7W)E9VES=&5R7W-E=`!R +M-S4P7U-!5$%?4&]R=$1E=FEC941E=&5C=&5D`'(W-3!?4&]R=%](86YD;&55 +M;G!L=6<`<C<U,%]!5$%?0T1",E1A<VM&:6QE`%)E;6]V95-!4T1E=FEC90!R +M-S4P7TU67U)E;6]V951A<F=E=$E$`&]D:6Y?<V5T7VAA<F1?9&ES:U]I9&5N +M=&EF>0!R-S4P7U-'5&%B;&5?079A:6QA8FQE`%!O<G1-87!?4C<U,`!R-S4P +M7U-!5$%?4')E<&%R94-O;6UA;F1486)L90!'971$979)9&5N=&EF>49R86UE +M`&DR8T)?<F5A9%]B>71E<P!S87-?861D<F5S<U]C;W5N=`!R-S4P7TES<W5E +M7U)E<&]R=$UA;G5F86-T=7)E<DEN9F]R;6%T:6]N`'(W-3!?4')E<&%R941E +M;&EV97)Y475E=65%;G1R>0!5<&1A=&5(:6U0871H260`<C<U,%]&:6YD4G5N +M;FEN9U)E<4)Y5&%G`'(W-3!?0V]R95]-;V1U;&53:'5T9&]W;@!R-S4P7U!- +M7T-O<F5?4F5Q5&EM96]U=`!R-S4P7T5X<&%N9&5R7U--4%)E<5]#86QL8F%C +M:P!R-S4P7U5P9&%T95=I9&50;W)T4&AY36%P`'(W-3!?4T%37TAA;F1L94)2 +M1$-35`!R-S4P7T%S<VEG;E)E9VES=&5R4V5T`'(W-3!?4V5R=FEC94EN=&5R +M<G5P=`!R-S4P7VUV7V1I<V%B;&5?>&UT`'(W-3!?4TU04F5S<$QE;F=T:`!U +M<&1A=&5?9&5V:6-E7V-O;F9I9U]V,@!R-S4P7TES<W5E7U)E<&]R=%)O=71E +M26YF;P!R-S4P7U!O<W1-86ME4V5S16YC;&]S=7)E4W1A='5S4F5Q=65S=`!R +M-S4P7T5X<&%N9&5R7U--4%)E<75E<W1?4F5P;W)T1V5N97)A;`!R-S4P7T=E +M=%--4%-C<F%T8VA&<F]M4&]O;`!R-S4P7T1E=FEC95]-86ME26YQ=6ER>51A +M<VM297%U97-T`'(W-3!?0V]R95]-;V1U;&5'971297-O=7)C95%U;W1A`'(W +M-3!?07-S:6=N1&5V:6-E16QE;65N=$YU;6)E<@!R-S4P7U!O<G1?1FEN9%1G +M=$YO`'(W-3!?4T=024]?4TU04F5Q7T-A;&QB86-K`'(W-3!?4&]R=%]3;V9T +M4F5S971#86QL8F%C:P!R-S4P7VUV7W)E<V5T7WAM=`!R-S4P7VUV0VAA;FYE +M;%-T871E36%C:&EN90!R-S4P7U!O<G1?36]N:71O<@!R-S4P7U-!4U]0;W)T +M4F5S970`<C<U,%]0;W-T36%K95-E<T5L96UE;G1$97-C<FEP=&]R4F5Q=65S +M=`!R-S4P7T5X<&%N9&5R7U--4%)E<75E<W1?4F5P;W)T4$A94T%400!R-S4P +M7TDR0U]-;V1U;&5);FET:6%L:7IE`'(W-3!?;V1I;E]R96UO=F5?9&5V:6-E +M`'(W-3!?4T-325]!5$%?3&]W97)7;W)D`'(W-3!?1V5T36%X3F5G;W1I871E +M9$QI;FM2871E`'(W-3!?1V5T4&]R=$9R;VU0;V]L`'(W-3!?359?1'5M<%)E +M9VES=&5R`'(W-3!?17AP86YD97)?4TU04F5Q=65S=%]$:7-C;W9E<@!R-S4P +M7T1E=FEC95]-86ME4F5Q=65S=%1A<VM297%U97-T`&1C-S(X,%]31U1A8FQE +M7T%P<&5N9`!D8S<R.#!?1G)E95-!5$%38W)A=&-H5&]0;V]L`&1C-S(X,%]0 +M;W)T7T%B;W)T4F5Q=65S=',`9&,W,C@P7U-!5$%?4&]R=$AA;F1L94EN=&5R +M<G5P=`!D8S<R.#!?4T537U-E=$9A:6Q,960`9&,W,C@P7U-!4U]);G1E<FYA +M;%)E<4-A;&QB86-K`&1C-S(X,%])<W-U95]297!O<G1-86YU9F%C='5R97)) +M;F9O<FUA=&EO;@!D8S<R.#!?4&]R=%]-;VYI=&]R`&1C-S(X,%]#;W)E7TUA +M:V5$979I8V5297-E=%)E<0!D8S<R.#!?4T-325]4;U]&25,`9&,W,C@P7V]D +M:6Y?<F5M;W9E7V1E=FEC90!D8S<R.#!?4T%405]034EN:71297%#86QL8F%C +M:P!D8S<R.#!?4$U?0V]R95]297%4:6UE;W5T`&1C-S(X,%]$25-#7T=E=%1G +M=$1E=DUA<`!D8S<R.#!?;V1I;E]F;&%S:%]A8V-E<W,`9&,W,C@P7T9R9653 +M35!38W)A=&-H5&]0;V]L`&1C-S(X,%]$:7-C;W9E<GE#86QL0F%C:P!D8S<R +M.#!?5&%G7U)E;&5A<V5/;F4`9&,W,C@P7T-O<F5?36]D=6QE4V5N9%)E<75E +M<W0`9&,W,C@P7TU67TUA<%1O4W!E8VEF:6-487)G971)1`!D8S<R.#!?1V5T +M4$U$979I8V4`9&,W,C@P7U-44%]$979I8V5297-E=`!D8S<R.#!?1V5T0V]R +M94-O;G1E>'1&<F]M4&]O;`!D8S<R.#!?359?26YI=&EA;&EZ951A<F=E=$E$ +M5&%B;&4`9&,W,C@P7U!R945M<'1Y1&5V:6-E`&1C-S(X,%]/9&EN4U!)7TEN +M:70`9&,W,C@P7T%405]#1$(R5&%S:T9I;&4`9&,W,C@P7U--4%)E<W!,96YG +M=&@`9&,W,C@P7VUV7W)E<V5T7W!H>0!D8S<R.#!?4&]R=%]&:6YD5&=T3F\` +M9&,W,C@P7U-'4$E/7U=R:71E4F5G:7-T97(`9&,W,C@P7T-O<F5?26YT97)R +M=7!T4V5R=FEC95)O=71I;F4`9&,W,C@P7VUV7V1I<V%B;&5?>&UT`&1C-S(X +M,%]3051!7U!O<G1$971E8W0`9&,W,C@P7T9R965$979I8V54;U!O;VP`9&,W +M,C@P7T5X<&%N9&5R7U--4%)E<5]#86QL8F%C:P!D8S<R.#!?1&5V:6-E7TUA +M:V5397-28W9$:6%G4F5Q=65S=`!D8S<R.#!?4&]R=%]3;V9T4F5S971#86QL +M8F%C:P!D8S<R.#!?27-S=65?0V]N9FEG4F]U=&5);F9O`&1C-S(X,%]0;W)T +M7TES4F5Q=65S=%)U;FYI;F<`9&,W,C@P7U9E<FEF>4-O;6UA;F1"969O<F53 +M96YD:6YG`&1C-S(X,%]$979I8V5?36%K95-T87)T4W1O<%5N:71297%U97-T +M`&1C-S(X,%]&<F5E17AP86YD97)4;U!O;VP`9&,W,C@P7T-O<F5297-T;W)E +M3W)I9VEN86Q#1$(`9&,W,C@P7U!O<W1-86ME4V5S16YC;&]S=7)E4W1A='5S +M4F5Q=65S=`!D8S<R.#!?9'5M<%]U;F%S<V]C:6%T961?9FES`&1C-S(X,%]- +M5E]:97)O379297%U97-T`&1C-S(X,%]'9710;W)T1G)O;5!O;VP`9&,W,C@P +M7T9I;F1!<V-I:4YU;6)E<@!D8S<R.#!?4T%37U!O<G1297-E=`!D8S<R.#!? +M359?1V5T36%P<&5D240`9&,W,C@P7U-#4TE?051!7U)E8617<FET951R86YS +M;&%T:6]N`&1C-S(X,%]0;W-T36%K95-E<T-O;F9I9W5R871I;VY297%U97-T +M`&1C-S(X,%]$979I8V5?36%K95)E<75E<W1487-K4F5Q=65S=`!D8S<R.#!? +M4&]R=%](86YD;&5$979I8V50;'5G:6X`9&,W,C@P7U!-7T%S<VEG;E)E9VES +M=&5R4V5T`&1C-S(X,%]#;W)E7U)E<V5T0VUD4VQO=`!D8S<R.#!?;79?9&ES +M86)L95]H8F$`9&,W,C@P7U]?861D7W1I;65R`&1C-S(X,%]30U-)7TUA:V5- +M;V1E4&%G94-A8VAI;F<`9&,W,C@P7T-/4D5?27-S=65335!297%U97-T`&1C +M-S(X,%]!<W-I9VY$979I8V5/=F5R86QL16QE;65N=$YU;6)E<@!D8S<R.#!? +M5W)I=&5$14Q67U%?16YT<GD`9&,W,C@P7U-#4TE?051!7U9E<FEF>51R86YS +M;&%T:6]N`&1C-S(X,%]C;W)E7VAA;F1L95]T87-K9FEL95]E<G)O<@!D8S<R +M.#!?4T=024]?4TU04F5Q=65S=%]7<FET90!D8S<R.#!?4T%37TAA;F1L94-O +M;7!L971E9$-O;6UA;F0`9&,W,C@P7T1E=FEC95]-86ME4F5A9$-A<&%C:71Y +M,39487-K4F5Q=65S=`!D8S<R.#!?4&]S=$UA:V5397-%;&5M96YT4W1A='5S +M4F5Q=65S=`!D8S<R.#!?4T%405]035](86YD;&5$979I8V50;'5G:6X`9&,W +M,C@P7V]D:6Y?<V5T7W-P:6Y?=7!?;6]D90!D8S<R.#!?0V]R95](86YD;&57 +M86ET:6YG3&ES=`!D8S<R.#!?4')E<&%R941E;&EV97)Y475E=65%;G1R>0!D +M8S<R.#!?4T=024]?4TU04F5Q=65S=%]296%D`&1C-S(X,%]$25-#7T-A;F-E +M;$1I<V-O=F5R`&1C-S(X,%]5<&1A=&57:61E4&]R=%!H>4UA<`!D8S<R.#!? +M2&%N9&QE0V]M;6%N9%%U975E`&1C-S(X,%]$25-#7T=E=%)E<V]U<F-E`&1C +M-S(X,%]30U-)7T%405]&:6QL3$)!0V1B,38`9&,W,C@P7T-O<F5?36]D=6QE +M16YA8FQE1&ES86)L94E240!D8S<R.#!?:3)C7W)E<V5T`&1C-S(X,%]&<F5E +M4F5G:7-T97)3970`9&,W,C@P7T)E97!/9F8`9&,W,C@P7T1)4T-?0VAE8VM$ +M:7-C;W9E<E-T871E`&1C-S(X,%]%>'!A;F1E<E]335!297%U97-T7U)E<&]R +M=$=E;F5R86P`9&,W,C@P7TDR0U]-;V1U;&5);FET:6%L:7IE`&1C-S(X,%]D +M979I8V5?<')O8F5?9&]N90!D8S<R.#!?4F5M;W9E1&5V:6-E`&1C-S(X,%]2 +M=6YT:6UE27-S=653;V9T4F5S971#86QL8F%C:P!D8S<R.#!?4T=024]?4V5T +M7T9A:6QL960`9&,W,C@P7T=E=$UA>$YE9V]T:6%T961,:6YK4F%T90!D8S<R +M.#!?1G)E95-%4U-"5&]0;V]L`&1C-S(X,%],:7-T7T=E=$QA<W0`9&,W,C@P +M7U!-7TES<W5E5W)I=&5296<`9&,W,C@P7W-E=%]F86EL7VQE9`!D8S<R.#!? +M5&%G7TES16UP='D`9&,W,C@P7U5P9&%T951G=$1E=DUA<`!D8S<R.#!?5&%G +M7TEN:70`9&,W,C@P7U-!5$%?4$U(;W1P;'5G4F5Q0V%L;&)A8VL`9&,W,C@P +M7U!O<W1-86ME4V5S16QE;65N=$1E<V-R:7!T;W)297%U97-T`&1C-S(X,%]& +M<F5E4&]R=%1O4&]O;`!D8S<R.#!?359?36%P5&%R9V5T240`9&,W,C@P7U!- +M7TES<W5E4F5A9%)E9P!D8S<R.#!?0V]R95]-;V1U;&53:'5T9&]W;@!D8S<R +M.#!?57!D871E4&AY26YF;P!D8S<R.#!?7U]R96YE=U]T:6UE<@!D8S<R.#!? +M1&5V:6-E7TUA:V5296%D0V%P86-I='E487-K4F5Q=65S=`!D8S<R.#!?1V5T +M1&5V:6-E1G)O;5!O;VP`9&,W,C@P7T=E=%-%4U-"1G)O;5!O;VP`9&,W,C@P +M7T%S<VEG;D5L96UE;G13;&]T3G5M8F5R`&1C-S(X,%]0;W)T7TAA;F1L955N +M<&QU9P!D8S<R.#!?0V]R95]-;V1U;&53=&%R=`!D8S<R.#!?1&ES8V]V97)Y +M4TT`9&,W,C@P7U-#4TE?051!7T-H96-K0V]N9&ET:6]N`&1C-S(X,%]-5E]# +M;W!Y4T=486)L90!D8S<R.#!?4T%405]$979I8V53=&%T94UA8VAI;F4`9&,W +M,C@P7T1E=FEC95]-86ME26YQ=6ER>51A<VM297%U97-T`&1C-S(X,%]$979I +M8V5?4&%R<V5)9&5N=&EF>41A=&$`9&,W,C@P7U-!5%-E;G-E1&%T80!D8S<R +M.#!?1V5T3D-15&%G`&1C-S(X,%]M=D-H86YN96Q3=&%T94UA8VAI;F4`9&,W +M,C@P7U-T;W)E7T-O;F9I9U)O=71E26YF;P!D8S<R.#!?4T=486)L95]);FET +M`&1C-S(X,%]'971%>'!A;F1E<D9R;VU0;V]L`&1C-S(X,%]305-?2&%N9&QE +M0E)$0U-4`&1C-S(X,%]#;W)E4V%V94]R:6=I;F%L0T1"`&1C-S(X,%]-5E]$ +M=6UP4F5Q=65S=`!D8S<R.#!?3&ES=%]'971&:7)S=`!D8S<R.#!?4T-325]! +M5$%?1FEL;$1A=&%&:65L9`!D8S<R.#!?4T-325]!5$%?4WEN8T-A8VAE5')A +M;G-L871I;VX`9&,W,C@P7U-'4$E/7TEN:71I86QI>F4`9&,W,C@P7T9R9653 +M35!#;VYT97AT`&1C-S(X,%]&:6QL16YC;&]S=7)E16QE;65N=%-T871U<P!D +M8S<R.#!?0V]R95]-;V1U;&5);FET:6%L:7IE`&1C-S(X,%]3051!7U!-4W1A +M=&5-86-H:6YE`&1C-S(X,%]&<F5E4$U4;U!O;VP`9&,W,C@P7U-!5$%?4')E +M<&%R94-O;6UA;F1486)L90!D8S<R.#!?0V]R95]-;V1U;&5'971297-O=7)C +M95%U;W1A`&1C-S(X,%]&<F5E4T="=69F97)4;U!O;VP`9&,W,C@P7U1A9U]) +M;FET7T9)1D\`9&,W,C@P7U-#4TE?051!7U)E861#87!A8VET>51R86YS;&%T +M:6]N0V%L;&)A8VL`9&,W,C@P7U]?4$U?8V%N8V5L7W1I;65R`&1C-S(X,%]- +M5E]$=6UP4F5G:7-T97(`9&,W,C@P7U-E<G9I8V5);G1E<G)U<'0`9&,W,C@P +M7TES<W5E7T1I<V-O=F5R`&1C-S(X,%]$25-#7T1O1&ES8V]V97(`9&,W,C@P +M7U-!5$%?2&%N9&QE1&5V:6-E56YP;'5G`&1C-S(X,%]#;W)E7TEN=&5R;F%L +M4V5N9%)E<75E<W0`9&,W,C@P7T1)4T-?4V5T4F5S;W5R8V4`9&,W,C@P7U-! +M5$%?4$U?2&%N9&QE1&5V:6-E56YP;'5G`&1C-S(X,%]3051!7U!O<G1$979I +M8V5$971E8W1E9`!D8S<R.#!?57!D871E5&%R9V5T1&5V:6-E<P!D8S<R.#!? +M4T-325]!5$%?4W1A<G13=&]P5')A;G-L871I;VX`9&,W,C@P7T-O<F5?<&%S +M<U]T:')U7V9I;&Q?=&%S:V9I;&4`9&,W,C@P7VUV7V1I<V%B;&5?<F5G:7-T +M97)?<V5T`&1C-S(X,%]!<W-I9VY$979I8V5%;&5M96YT3G5M8F5R`&1C-S(X +M,%]'971-:6Y.96=O=&EA=&5D3&EN:U)A=&4`9&,W,C@P7VUV7W-E=%]305-! +M9&1R`&1C-S(X,%]035]&<F5E4F5G:7-T97)3970`9&,W,C@P7T5X<&%N9&5R +M7U--4%)E<75E<W1?4&AY0V]N=')O;`!D8S<R.#!?359?17%U86QS`&1C-S(X +M,%]'97131T)U9F9E<D9R;VU0;V]L`&1C-S(X,%]30U-)7T%405],;W=E<E=O +M<F0`9&,W,C@P7T-H96-K1&5V:6-E0VAA;F=E`&1C-S(X,%]305-?17)R;W)( +M86YD;&EN9P!D8S<R.#!?0F5E<$]N`&1C-S(X,%]31U!)3U]335!297%?0V%L +M;&)A8VL`9&,W,C@P7U-'5&%B;&5?079A:6QA8FQE`&1C-S(X,%]335!?4T=0 +M24]?4V5T7T9A:6QL960`9&,W,C@P7T-O<F5?1FEL;%-E;G-E1&%T80!D8S<R +M.#!?1V5T4TU04V-R871C:$9R;VU0;V]L`&1C-S(X,%]3051!7U!O<G1$979I +M8V5296%D>0!D8S<R.#!?;79?96YA8FQE7WAM=`!D8S<R.#!?07-S:6=N4F5G +M:7-T97)3970`9&,W,C@P7V]D:6Y?:6]C=&P`9&,W,C@P7TES<W5E7U)E<&]R +M=%)O=71E26YF;P!D8S<R.#!?1V5T26YT97)N86Q297%&<F]M4&]O;`!D8S<R +M.#!?0VAE8VM487)G971#:&%N9V4`9&,W,C@P7T1E=FEC95]7<FET95-E<T-O +M;G1R;VQ$:6%G`&1C-S(X,%]#;VUP;&5T95)E<75E<W0`9&,W,C@P7U)U;G1I +M;65)<W-U95-O9G1297-E=`!D8S<R.#!?1&5V:6-E7TES<W5E4V]F=%)E<V5T +M`&1C-S(X,%]3051!7TAA;F1L941E=FEC95!L=6=I;@!D8S<R.#!?4')E<&%R +M94%N9%-E;F1#;VUM86YD`&1C-S(X,%]0<F5%;7!T>5!-`&1C-S(X,%]30U-) +M7TUA:V5#86-H94-O;6UA;F0`9&,W,C@P7T-O;7!L971E4F5Q=65S=$%N9%-L +M;W0`9&,W,C@P7T1)4T-?1V5T3F5G;W1I871E9$QI;FM2871E`&1C-S(X,%]& +M:6YD4G5N;FEN9U)E<4)Y5&%G`&1C-S(X,%]S971?9F%I;%]L961S`&1C-S(X +M,%]&:6YD1G)E95--4$-O;G1E>'0`9&,W,C@P7U-!4U]$979I8V53=&%T94UA +M8VAI;F4`9&,W,C@P7T9I;F149W1.;P!D8S<R.#!?27-S=65?4F5P;W)T1V5N +M97)A;`!D8S<R.#!?0V%L8W5L871E4F]U=&5);F1E>`!D8S<R.#!?;79?<F5S +M971?>&UT`&1C-S(X,%]-5E]#4D,`9&,W,C@P7U-#4TE?051!7U)E861#87!A +M8VET>51R86YS;&%T:6]N`&1C-S(X,%]-5E]296UO=F5487)G971)1`!D8S<R +M.#!?4T%405]035]%<G)O<DAA;F1L:6YG`&1C-S(X,%]5<&1A=&53=&%T=7-6 +M<U-E<T-O;G1R;VQ"=69F97(`9&,W,C@P7T-O<F5?1V5T4W5P<&]R=&5D0V]U +M;G1S`&1C-S(X,%]-5E]3971,0D%A;F1396-T;W)#;W5N=`!D8S<R.#!?1&5V +M:6-E7TUA:V5-;V1E4V5L96-T4F5Q=65S=`!D8S<R.#!?1V5T3VYE0V]M;6%N +M9%-L;W0`9&,W,C@P7U-'4$E/7U)E861296=I<W1E<@!D8S<R.#!?17AP86YD +M97)?4TU04F5Q=65S=%]297!O<G102%E3051!`&1C-S(X,%]0;W)T7TAA;F1L +M95!L=6=I;@!D8S<R.#!?0V]R95]297%4:6UE;W5T`&1C-S(X,%]M;V1E4&%G +M94)U9@!D8S<R.#!?4G5N=&EM94ES<W5E4F5A9$QO9T5X=`!D8S<R.#!?4T-3 +M25]!5$%?57!P97)7;W)D`&1C-S(X,%]&<F5E0V]R94-O;G1E>'14;U!O;VP` +M9&,W,C@P7U-%4U]);G1E<FYA;%)E<4-A;&QB86-K`&1C-S(X,%]3051!7T5R +M<F]R2&%N9&QI;F<`9&,W,C@P7T=E=%!-1G)O;5!O;VP`9&,W,C@P7T1E=&5C +M=%!O<G14>7!E`&1C-S(X,%]$979I8V5?36%K94UO9&5396YS95)E<75E<W0` +M9&,W,C@P7U-#4TE?051!7T9I;&Q,0D%#9&(Q,`!D8S<R.#!?7U]C86YC96Q? +M=&EM97(`9&,W,C@P7U-!5$%?4&]R=%)E<V5T`&1C-S(X,%]O9&EN7W-E=%]I +M9&QE7W-T86YD8GD`9&,W,C@P7T5X<&%N9&5R7U--4%)E<75E<W1?1&ES8V]V +M97(`9&,W,C@P7U1A9U]'971/;F4`9&,W,C@P7U-!5$%?4')E<&%R94-O;6UA +M;F1(96%D97(`9&,W,C@P7T-A=&5G;W)Y7T-$0E]4>7!E`&1C-S(X,%]&<F5E +M26YT97)N86Q297%4;U!O;VP`9&,W,C@P7T=E=%-!5$%38W)A=&-H1G)O;5!O +M;VP`4W=A<$AP=$UE=&%6,P!L9&U?<W!I;G5P7W9D978`<F%W7V-H96-K7V1I +M<VM?9&5S8W)I<'1O<@!L9&U?8VAE8VM?87)R87D`;&1M7W)E8VAE8VM?86QL +M`'9D979?8VQA<W-?;&ES=`!R87=?:61L95]T:6UE<E]R97-E=`!L9&U?9&5L +M971E7W!A<G1I=&EO;@!L9&U?<WEN8U]C:&%N9V5D7V%R<F%Y<P!G<F5B=6EL +M9&]N97)R;W(`;&1M7W%U975E7V5V96YT`'1R86YS9F]R;5]N965D960`;&1M +M7V-H96-K7W1R86YS9F]R;0!L9&U?9FEX=7!?87)R87E?<W1A=&4`8V%L8U]R +M96)U:6QD7W!R;V=R97-S`'9B=7-?97AT7W-I>F4`<V5T7W1R86YS9F]R;5]S +M=&5P7VEN9F\`;&1M7VED;&5?=&EM97(`;&1M7V9I;F1?=F1E=E]R87<`;&1M +M7W)E<')O8F5?9&5V:6-E`&-A;&-?=')A;G-F;W)M7W!R;V=R97-S`&QD;5]F +M:6YD7W9D979?8VQA<W,`;&1M7V%L;&]C7W!A<G1I=&EO;@!L9&U?:6YI=%]D +M:7-K`')E9G)E<VA?<F%W7V1E=E]I;F9O`%]D96QE=&5?<F%W7W!A<G0`<F%W +M7W)E861?=W)I=&5?<V5C=&]R<P!G:61L97-T86YD8GET:6UE;W5T`')A=U]C +M:&5C:U]A<G)A>5]D97-C<FEP=&]R`&QD;5]C<F5A=&5?=F1E=E]R87<`=6YP +M;'5G7W)A=U]V9&5V`$-H96-K4W5M`&-O;7!A<F5?<VQO=%]S97%?8GE?<&-I +M861D<@!L9&U?861D7V1I<VM?=&]?87)R87D`;&1M7W-Y;F-?9&ES:U]I;F9O +M`&=E=%]B:71S`%-W87!(<'1-971A5C0`<F%W7V-O;G9E<G1?<W!A<F5?=&]? +M;&5G86-Y`&9.;W1I9GE'54D`;&1M7V9L=7-H7V%L;%]T87)G971S`&QD;5]S +M=&%R=%]R96)U:6QD`&QD;5]S<&EN9&]W;E]A;&Q?<F%W9&5V<P!?7VQD;5]F +M:6YI<VA?8VUD`$E$7U1/7U9$158`7U]V9&5V7W%U975E7V-M9`!R87=?:61L +M95]T:6UE<E]C:&5C:P!G971?<W1R:7!?:6YF;P!L9&U?<F5S=6UE7V%D87!T +M97(`:'!T;G)?;&1M7W)E9VES=&5R7VAI;5]27S9?-35?-S5?-#9?-C0`:'!T +M;G)?9T=L;V)A;$YC<49L86<`:'!T;G)?;W-?<F5Q=65S=%]T:6UE<@!H<'1N +M<E]D;6%P;V]L7V=E=%]P86=E`&AP=&YR7V]S7V=E=%]S=&%M<`!H<'1N<E]L +M9&U?<W5S<&5N9`!H<'1N<E]L9&U?:61L90!H<'1N<E]L9&U?9V5T7VUE;5]I +M;F9O`&AP=&YR7VQD;5]R96UO=F5?=&EM97(`:'!T;G)?<&-I8V9G7W)E861? +M9'=O<F0`:'!T;G)?9&UA<&]O;%]M86ME7V]R9&5R`&AP=&YR7VQD;5]G971? +M=F)U<U]E>'0`:'!T;G)?;&1M7W)E;&5A<V5?=F1E=@!H<'1N<E]F<F5E;&ES +M=%]R97-E<G9E7V1M80!H<'1N<E]L9&U?:6YT<@!M96UC<'D`:'!T;G)?;&1M +M7V]N7W1I;65R`&AP=&YR7VQD;5]G971?8VUD7W-I>F4`:'!T;G)?;&1M7V9R +M965?8VUD<P!H<'1N<E]L9&U?8W)E871E7W9D978`:'!T;G)?;&1M7V%D9%]S +M<&%R95]T;U]A<G)A>0!H<'1N<E]G<F5B=6EL9'!R:6]R:71Y`&AP=&YR7VQD +M;5]S>6YC7V%R<F%Y7VEN9F\`:'!T;G)?;W-?;6%P7W!C:5]B87(`:'!T;G)? +M7U]L9&U?86QL;V-?8VUD`&AP=&YR7VEN:71?;6]D=6QE7W9D979?<F%W`&AP +M=&YR7VQD;5]S971?875T;W)E8G5I;&0`:'!T;G)?7U]D=6UM>5]R96<`:'!T +M;G)?9&UA<&]O;%]A8W1I=F4`:'!T;G)?=F)U<U]L:7-T`&AP=&YR7VQD;5]Q +M=65U95]V8G5S7V1P8P!H<'1N<E]L9&U?<F5S971?=F)U<P!H<'1N<E]G4T=0 +M24]087)T4W5P<&]R=`!H<'1N<E]I;FET7VUO9'5L95]H:6U?<C<U,`!?7W5M +M;V1D:3,`:'!T;G)?;&1M7W)E;&5A<V5?;&]C:P!H<'1N<E]O<U]U;FUA<%]P +M8VE?8F%R`&AP=&YR7VQD;5]S:'5T9&]W;@!?7W5D:79D:3,`:'!T;G)?:&EM +M7VQI<W0`:'!T;G)?;&1M7W)E<75E<W1?=&EM97(`:'!T;G)?;&1M7W)E<W5M +M90!H<'1N<E]L9&U?9V5T7V1E=FEC95]I9`!H<'1N<E]O<U]S8VAE9'5L95]T +M87-K`&AP=&YR7VQD;5]I;V-T;`!H<'1N<E]G4W!I;G5P3VYE1&5V16%C:%1I +M;64`:'!T;G)?9G)E96QI<W1?<'5T`&AP=&YR7V]S7W-T86QL97AE8P!H<'1N +M<E]G7VQE9V%C>5]M;V1E`&AP=&YR7VQD;5]A;&QO8U]C;61S7U)?-E\U-5\W +M-5\T-E\V-`!H<'1N<E]L9&U?<G5N`&AP=&YR7VEN:71?;6]D=6QE7VAI;5]D +M8S<R.#``:'!T;G)?;&1M7V9R965?8VUD<U]T;U]L:7-T`&AP=&YR7V]S7VUA +M>%]C86-H95]S:7IE`&AP=&YR7W9D979?<75E=65?8VUD`&AP=&YR7V]S7V=E +M=%]V8G5S7W-E<0!H<'1N<E]L9&U?<WEN8U]A<G)A>5]S=&%M<`!H<'1N<E]L +M9&U?<75E=65?8VUD`&AP=&YR7V]S7W!R:6YT:P!H<'1N<E]F<F5E;&ES=%]R +M97-E<G9E`&AP=&YR7V1M87!O;VQ?<'5T7W!A9V4`:'!T;G)?9G)E96QI<W1? +M9V5T`&AP=&YR7VQD;5]U;G)E9VES=&5R7V1E=FEC90!H<'1N<E]L9&U?<F5G +M:7-T97)?861A<'1E<@!H<'1N<E]G875T;W)E8G5I;&0`:'!T;G)?;&1M7V=E +M=%]V8G5S7W-I>F4`:'!T;G)?9&5L87E?8F5T=V5E;E]S<&EN=7``:'!T;G)? +M;&1M7V=E;F5R:6-?;65M8F5R7V9A:6QE9`!H<'1N<E]D;6%P;V]L7V=E=%]P +M86=E7V%T`&AP=&YR7VQD;5]E=F5N=%]N;W1I9GD`:'!T;G)?;&1M7V-R96%T +M95]V8G5S`&AP=&YR7VAI;5]H86YD;&5?=&]?=F)U<P!H<'1N<E]F<F5E;&ES +M=%]G971?9&UA`&AP=&YR7VQD;5]G971?;F5X=%]V8G5S`&AP=&YR7V]S7W!C +M:5]W<FET96P`:'!T;G)?;&1M7V9I;F1?=&%R9V5T`&AP=&YR7V1M87!O;VQ? +M<F5G:7-T97)?8VQI96YT`&AP=&YR7VQD;5]I;FET:6%L:7IE7W9B=7-?87-Y +M;F,`:'!T;G)?;W-?<75E<GE?=&EM90!H<'1N<E]O<U]Q=65R>5]R96UO=F5? +M9&5V:6-E`&AP=&YR7VQD;5]R96=I<W1E<E]D979I8V4`:'!T;G)?;W-?<&-I +M7W)E861L`&AP=&YR7VQD;5]A8W%U:7)E7VQO8VL`:'!T;G)?;W-?<F5V86QI +M9&%T95]D979I8V4`:'!T;G)?9&UA<&]O;%]I;FET`&AP=&YR7VQD;5]F:6YI +M<VA?8VUD`&AP=&YR7VQD;5]I9&5?9FEX<W1R:6YG`&AP=&YR7V1M87!O;VQ? +M;6%X7V-L87-S7W!A9V5S`&AP=&YR7VQD;5]R96=I<W1E<E]V9&5V7V-L87-S +M7U)?-E\U-5\W-5\T-E\V-`!H<'1N<E]N=6U?9')I=F5S7W!E<E]S<&EN=7`` +M:'!T;G)?;&1M7W)E;&5A<V5?=F)U<P!H<'1N<E]L9&U?<75E=65?=&%S:P!H +M<'1N<E]L9&U?86QL;V-?8VUD<U]F<F]M7VQI<W0`:'!T;G)?9G)E96QI<W1? +M<'5T7V1M80!H<'1N<E]L9&U?=&EM97)?<')O8F5?9&5V:6-E`&AP=&YR7VQD +M;5]F:6YD7W-T86UP`&AP=&YR7VQD;5]C:&5C:U]A<G)A>5]O;FQI;F4`:'!T +M;G)?9U!R;V)E26Y);FET:6%L:7II;F<`:'!T;G)?;&]G7W-E8W1O<E]R97!A +M:7(``)(````"B```J0````*1``"]`````BH``"0!```!`0``.P$```+J``!= +M`0```JP``&D!```"/```?`$```*D`@"'`0```D```*<!```")P``O@$```)5 +M``#*`0```BH``.<!```"*@``"P(```)4```H`@```IX``'L"```"Z@``F0(` +M``*L``"X!0```DP``"<)```!`P``S@D```$%``#3"0```J\"`!P*```"A`(` +M[`H```&0`@`4"P```9`"`'0+```!D`(`_0L```&0`@`X#````9`"`*(,```" +MI`(`W`P```*D`@`>#0```J0"`%@-```"I`(`O`T```(/`0#(#0```J0"`-0- +M```"90``2`X```&0`@!6#@```9`"`&<.```"I`(`>@X```&0`@"(#@```9`" +M`)L.```!D`(`I`X```&0`@#'#@```J0"`-(.```!D`(`\PX```*D`@#^#@`` +M`9`"`!\/```!D`(`.@\```&0`@"##P```9`"`)H/```!D`(`M@\```&0`@#+ +M#P```9`"`.D/```!D`(`]`\```&0`@`A$````J0"`"\0```!D`(`5A````*D +M`@!D$````9`"`)82```!D`(`ZQ(```+1```;$P```M$``(\3```"+```]1,` +M``)]`@`(%````O0``"P4```"9@``S!0```(L``#S%````A8```H5```"L``` +M)14```'_``!`%0```04``$45```"KP(`8A4```*Z`@!_%0```KH"`)H5```" +M.```Q14```&0`@".%@```9,``*\6```"P```C!<```)_``"8%P```BH``(@8 +M```"N@``Q!L```+R``!`'````MX``(,<```"N@``)AT```$#``!.'0```AD` +M`)(=```"&0``U1T```(9```4'@```AD``%4>```"2P``I1X```('`0`U'P`` +M`IT``&\?```"$@``GQ\```*D`@#V(0```J````\B```"=@``UR(```+Z``!> +M(P```K\``(@C```"^@``Z20```*"```%)0```@`!`'TE```"@@``LB4```(` +M`0!K)P```D(``%`H```"A`(`;B@```$#```%*0```A$``!<I```"$0``R2D` +M``*"``#^*0```@`!`(HJ```"!0$`R2H```*N``#M*@```@4!``,K```"#0$` +M(RL```(%`0!S*P```J(``),K```!!0``F"L```*O`@`$+````F8``!0L```" +M;0``I"P```*/```@+0```H\``"XM```"(@``6BT```*/``!S+0```MP``)LM +M```"30``/RX```)O``!D+@```MP``(HN```"F```MRX```*/``"_+@```I@` +M`.0N```"W```1B\```(Y``"0+P```E,``+4O```"9@``[R\```*Z`@`/,``` +M`CD``#0P```"0```0#````*D`@",,````K4``)8P```"[```J3````$&``"N +M,````J\"`.0P```".0``^3````)6```$,0```I@``'TQ```!D`(`HS$```&0 +M`@#4,0```9`"`!LR```!!0``(#(```*O`@!Q,@```KL``.8R```"NP``_#(` +M``*]```(,P```F\``+HS```"V0``V3,```+<``#_,P```F8``)$T```"V0`` +MJC0```+<``#R-````FL```TV```!D`(`)C8```&0`@`^-@```9`"`)$V```! +MD`(`K38```&0`@`I-P```MH``(0W```!D`(`H#<```&0`@"\-P```9`"`,@W +M```"8@``IS@```(0`0#<.````H0"`+,Y```"A`(`+CH```*$`@!6.@```9`" +M`(8Z```!D`(`PCH```&0`@"A.P```H0"`-$\```"A`(`6CT```*$`@!M/0`` +M`0,``/(]```"I`(`-SX```&0`@!8/@```9`"`'T^```!!@``@CX```*O`@"1 +M/@```@X!`*H^```!D`(`V3X```&0`@!,/P```9`"`,T_```"#@$`X3\```(. +M`0!70````04``%Q````"KP(`NT````$&``#`0````J\"`-1````"'P``!T$` +M``$%```,00```J\"`-5!```!!0``VD$```*O`@"!0@```MD``)A"```"W``` +M2D,```(S``"<1````A\``+!$```"+```(44```)N``"&10```MD``))%```" +M,P``J44```+<``#]10```F8``'I&```";```JT8```)F```V1P```9`"`&)' +M```"9@``ET<```(L``"G1P```I@``.1'```!D`(`!T@```&0`@`T2````9`" +M`$A(```"IP``J$@```&0`@`/20```9`"`"U)```!D`(`/TD```*-``!I20`` +M`9`"`'Y)```!D`(`U$D```&0`@#M20```9`"`!9*```"?0(`-DH```+X``!U +M2@```F8``*M*```"N@(`QTH```(Y``#U2@```H,```%+```"I`(`*$L```$! +M``!82P```IT"`'I+```!D`(`BDL```&0`@"I2P```9`"`+E+```!D`(`X4L` +M``&0`@`+3````9`"`#9,```!D`(`3TP```&0`@![3````9`"`*5,```!D`(` +M]DP```&0`@`230```9`"`"]-```!D`(`2TT```&0`@")30```GT"`,M-```" +MN@(`XTT```(Y``#T30```D````!.```"I`(`(TX```'L```X3@```IT"`%E. +M```!D`(`=TX```&0`@"B3@```9`"`,!.```!D`(`"T\```)]`@`G3P```F8` +M`%=/```"N@(`>T\```$,`0"23P```IT"`+)/```!D`(`ST\```&0`@#K3P`` +M`J0"`/M/```!D`(`%E````&0`@`S4````9`"`$]0```"I`(`7U````&0`@"# +M4````9`"`#Y1```!D`(`9E$```*D`@"140```9`"`+A1```"I`(`X5$```&0 +M`@`*4@```J0"`%92```"PP``=%(```*$``"$4@```A```+=2```"/@``\5(` +M``(5```C4P```A```.-3```"I`(`"50```&0`@`G5````J0"`$=4```!D`(` +M<%0```*D`@"65````9`"`+A4```"I`(`U%0```&0`@#X5````F8``'U5```" +M.0``P54```(Y``#150```A```!A6```"9@``/E8```)F``!A5@```GT"`'E6 +M```"0```A58```*D`@`V5P```BP``%E7```"%@``<%<```*P``"*5P```08` +M`(]7```"KP(`K%<```*Z`@#)5P```KH"`.Q7```".```%5@```*)``!)6``` +M`F8``&I8```"0```=E@```*D`@"G6````A8``+Y8```"L```UU@```'_``#R +M6````04``/=8```"KP(`%%D```*Z`@`Q60```KH"`$Q9```".```:5D```(^ +M``#N60```9`"`!5:```"I`(`,5H```&0`@!16@```9`"`'1:```"I`(`D%H` +M``&0`@`<6P```O@``"A;```">P``;5L```)S``!^6P```OD``+M;```"I`(` +MTUL```&0`@#N6P```9`"`!)<```"$```&EP```(+`0!%7````IL``,U<```" +M#`$`Y%P```)F``!Q70```B$!`*-=```"M0``W%T```+*``#[70```KH"`!M> +M```"N@(`3%X```*D`@!C7@```9`"`'Q>```!D`(`G%X```(0``"D7@```@L! +M`.U>```"PP``)E\```)F``"B7P```IL``+1?```"'P$`)&````&0`@!%8``` +M`9`"`&)@```"<0``<V````+Y``#;8````G4``/A@```"W```&F$```*8```_ +M80```H\``$=A```"F```BF$```+<``#180```CD``.9A```"9@``%F(```*Z +M`@`N8@```CD``#QB```"0```2&(```*D`@!I8@```NP``)5B```"W```QV(` +M``(Y``#D8@```F8``/QB```"%@``$V,```*P```P8P```KH"`$UC```"N@(` +M8&,```(X``!Y8P```O0``(YC```!D`(`VV,```(0``#G8P```CX``'!D```! +MD`(`BV0```(?``"?9````BP``+YD```"'P``QF0```(G`0#E9````0,```1E +M```"*0$`*&4```(I`0!,90```CD``'ME```"4P``G&4```*A``#&90```CD` +M`/%E```"4P``$F8```(Y```N9@```J$``%%F```".0``;F8```(Y``"D9@`` +M`D```+!F```"I`(`'&<```*D```[9P```JH``%5G```"%@``;&<```*P``"& +M9P```08``(MG```"KP(`J&<```*Z`@#%9P```KH"`-AG```".```!&@```)F +M``!`:````AT!`(YH```"=```K&@```)F````:0```04```5I```"KP(`+VD` +M``(?``!R:0```04``'=I```"KP(`2FH```$%``!/:@```J\"`))J```!!0`` +MEVH```*O`@`G:P```J<``"]L```"V0``9&P```+K``"<;````04``*%L```" +MKP(`WFT```*$`@`";@```9`"`"YN```!D`(`:FX```&0`@#?;@```?\``!9O +M```!!0``&V\```*O`@"!;P```04``(9O```"KP(`X&\```$%``#E;P```J\" +M`!=P```!!0``''````*O`@!.<````08``%-P```"KP(`RG````$%``#/<``` +M`J\"`!EQ```!!@``'G$```*O`@!1<0```08``%9Q```"KP(`97$```$&``!J +M<0```J\"`+MQ```""0$`!G(```&0`@`C<@```9`"`$!R```!D`(`8'(```&0 +M`@!W<@```08``'QR```"KP(``',```&0`@`M<P```08``#)S```"KP(`;7,` +M``$%``!R<P```J\"`(QS```"8@``I',```&0`@`S=````I@``%-T```"2@`` +MV'0```(M``#V=````KX``")U```"L`(`3G4```*P`@!Z=0```K`"`*-U```" +ML`(`S'4```*P`@``=@```K`"`"5V```"L`(`2W8```*P`@!W=@```K`"`)QV +M```"L`(`R'8```*P`@#T=@```K`"`!QW```"L`(`1'<```*P`@!L=P```K`" +M`)1W```"L`(`NW<```*P`@#D=P```K`"``EX```"L`(`.G@```*"`@!G>``` +M`H("`)MX```"@@(`S'@```*"`@#]>````H("`"YY```"@@(`6WD```*"`@"/ +M>0```H("`,5Y```"9@``VGD```*(``!3>@```0$``&9Z```"Z@``=GH```(\ +M```%>P```F8``$%[```"N@(`77L```(Y``!K>P```D```'=[```"I`(`IWL` +M``)/``!8?0```BT``.Q]```"L@(`(GX```*R`@!??@```K("`)Q^```"L@(` +MUGX```*R`@#R?@```K("`!!_```"L@(`>G\```*R`@#5?P```K("`#*````" +ML@(`>X````*R`@#0@````K("`#B!```"L@(`@8$```*R`@"V@0```LL``,6! +M```"L@(`\X$```(/```"@@```K("`#""```"#P``/X(```*R`@!M@@```@\` +M`'R"```"L@(`JH(```(/``"Y@@```K("`!V#```"T@``$X8```*]`@`OA@`` +M`KT"`$N&```"O0(`9X8```*]`@"#A@```KT"`)^&```"O0(`VH8```)F```_ +MAP```KT"`'F'```"9@``YX<```*]`@`JB````F8``**(```":```[8@```&0 +M`@`2B0```9`"`"Z)```"^0``<8D```(Y``"$B0```D```)")```"I`(`LHD` +M``(6``#/B0```KH"`.R)```"N@(``XH```(X```2B@```9`"`&^*```"T0`` +MGXH```*Z`@`)BP```KT``$2+```"9@``FHL```'_``"YBP```04``+Z+```" +MKP(`$HP```$%```7C````J\"`$R,```"'P``CXP```$%``"4C````J\"`%F- +M```!!0``7HT```*O`@"0C0```08``)6-```"KP(`'8X```$%```BC@```J\" +M`.&.```!!@``YHX```*O`@#NC@```J<``/:/```"W```'I````+9``!"D``` +M`MH``(20```":P``;)0```*<``#,E````H0"`."4```"Y0``6I4```*$`@"I +ME0```H@``+N5```"D0``S94```(J``#VE0```H0"`#B6```!E@``C98```+J +M``"NE@```JP``+J6```"/```"9<```*(```;EP```I$``"V7```"*@``?I<` +M``&6``#3EP```NH``/27```"K````)@```(\``!MF````H@``(.8```"D0`` +MF9@```(J``"^F````H0"`/68```!'0``'YD```+J``!`F0```JP``%"9```" +M/```LID```*<``#=F0```C8``!F:```"B```*YH```*1```]F@```BH``(.: +M```!'0``KYH```+J``#0F@```JP``-R:```"/```?9L```)1``"\FP```E$` +M``R<```"<@``()P```(P``!2G````C0``'*<```",```IIP```(P``![G0`` +M`JT``,Z=```"J```!YX```(T``!(G@```H@``%J>```"D0``;)X```(J``"R +MG@```?```-J>```"Z@``^YX```*L```'GP```CP``.&?```")P``[9\```(J +M```?H````H0"`&&@```")P``;:````(J```#H0```A,!`!BA```")P``)*$` +M``(J```_H0```GT"`%.A```!,0``:*$```*=`@#7H0```J8``,2B```"&`$` +M!*,```(8`0`^HP```C0``'JD```"9```CZ0```+-``"DI````B`!`+FD```" +M$P$`TZ0```)]`@#GI````3$```&E```"G0(`-*4```)F``"HI0```B$!`,ZE +M```"M0``]:4```+*``!$I@```F8``(*F```"-```MZ8```(=`0#AI@```B<` +M`/6F```"*@``,:<```(T``#[IP```9`"`):L```"80``GZT```$#```XK@`` +M`9`"`&BN```!D`(`DZX```&0`@#,K@```9`"`!^O```!D`(`3:\```&0`@!S +MKP```9`"`*6O```!D`(`9K````$#``![L````0,``(ZP```!`P``G+````$# +M``"OL````LP``+JP```!`P``/K$```)F``!^L0```F8``*ZQ```"9@``_K$` +M``)F```NL@```F8``+2R```"9@``$+0```+9``"!M0```A\``,BU```"]P`` +M"+8```+W``#QM@```B<```*W```"@0``"[@```(\```RN````N@``$&X```" +M80``5K@```+<``#!N````G4``">Y```";P``^+D```(J``!JN@```E4``'BZ +M```"*@``MKH```)F``#`N@```AL``,BZ```";0``_+H```*(```*NP```I$` +M`".[```"*@``8;L```&R``!MNP```CP``+"[```"B```Y[L```&R``#SNP`` +M`CP``#&\```"B```0[P```*1``!5O````BH``)R\```!`0``L+P```+J``#1 +MO````JP``-V\```"/```';T```*(``!8O0```:L``&2]```"/```=KT```*D +M`@"(O0```J0"`&V^```")P``?KX```*!``"*O@```BH``,.^```">@``X;X` +M``(G``#RO@```H$``/Z^```"*@``_+\```*D`@`(P````BH``#C````">@`` +M2,````*D`@!4P````BH``(S````"B```S\````(9``#?P````BH``//````! +ML@``_\````(\``!`P0```H@``%K!```"D0``<\$```(J``#-P0```;(``.#! +M```"Z@``_L$```*L```*P@```CP``%G"```"B```=,(```*1``"-P@```BH` +M`./"```!L@``]\(```+J```9PP```JP``"7#```"/```8,,```*(``!ZPP`` +M`I$``)/#```"*@``YL,```&R``#^PP```NH``"#$```"K```+,0```(\``!P +MQ````H@``(K$```"D0``H\0```(J``#NQ````;(```+%```"Z@``),4```*L +M```PQ0```CP``(_%```"B```1<8```$!``!8Q@```NH``&3&```"/```D<@` +M``(I`0"NR````E4``/S(```"9@``S\D```*/```SR@```H@``%3*```"%0$` +M9LH```(J``"ZR@```0H!`,W*```"Z@``V<H```(\```JRP```H@``#S+```" +M%0$`D<L```$*`0"DRP```NH``+#+```"/```O,L```*D`@`!S````H@```_, +M```"%0$`6LP```$*`0!MS````NH``'G,```"/```N<P```*(``#'S````A4! +M``W-```!"@$`(,T```+J```LS0```CP``%W-```"2P``;<T```(H``!=S@`` +M`DL``&W.```"*```U<X```*W``!4SP```I4``+W/```"$0$`[<\```)+``#] +MSP```B@``&G0```"F0``R-````(&`0`BT0```MD``$+1```"=0``6-$```(& +M`0"AT0```MD``+?1```"!@$`X-$```)]`@`3T@```GT"`&72```"9P``K=(` +M``+9``#'T@```F\``-/2```"O0``A-,```)F``"6TP```G0``*W3```!"0$` +MPM,```*=`@`^U````F8``%#4```"O0``:=0```%0``"$U````IT"`#'5```" +MV0``/=4```(S``!)U0```H\``._5```!"0$`!-8```*=`@"(U@```5```*/6 +M```"G0(`)-@```)F``")V````G\``)W8```"*@``Y]@```)3```:V0```K4` +M`$79```"1@``9=D```)F``#DV0```B$!`/_9```"?P``$]H```(J``![V@`` +M`CD``*3:```"0```L-H```*D`@#;V@```J0``/K:```"J@``)]L```(6```^ +MVP```K```%C;```!!@``7=L```*O`@!ZVP```KH"`)?;```"N@(`TML```(X +M``#TVP```F8``";<```"'0$`9]P```(Y``"8W````D```*3<```"I`(`S]P` +M``*D``#NW````JH```O=```"%@``)MT```*P``!'W0```?\``&;=```!!0`` +M:]T```*O`@",W0```KH"`!/>```"N@(`=-X```)F``"RW@```KH"`-K>```" +M.```(-\```*(```RWP```I$``$O?```"*@``N=\```&R``#,WP```NH``.K? +M```"K```]M\```(\```CX````DL``#/@```"*```#N$```(&`0!'X0```B@` +M`)[A```"9@``J>,```*$`@!LY0```J8``*3E```"5P``+^8```$!``!=Y@`` +M`AH``#GG```!`0``?.<```(:``!%Z````0$``(OH```"&@``]>@```$!```S +MZ0```AH``(7I```!`0``P^D```(:``"<Z@```AX``!7K```"!`$`'^P```+N +M``"S[````FH``#KM```"I@``;>T```)#``"8[0```E@``,SN```"5P``DO`` +M``*Y``#>\````NX``(+Q```":@``^?$```+F``"`\@```FH``$#S```":@`` +M@?,```)7``#\\P```FH``$CT```":@``J?0```)J``#S]````FH``#OX```" +M:@``D_@```&0`@"K^````9`"`"OZ```"T```F/L```&0`@"S^P```9`"`-/[ +M```"*@``,/P```*D`@`__````9`"`&+\```"I`(`<?P```&0`@!I_0```J0" +M`'7]```!D`(`A_T```*D`@"._0```9`"`*O]```"I`(`L_T```&0`@#:_0`` +M`J0"`.;]```!D`(`^/T```*D`@#__0```9`"`!S^```"I`(`)/X```&0`@!H +M_@```J0"`,C^```"I`(`V?X```)````W_P```H@``*/_```!U0``K_\```&O +M``"^_P```CP```X``0`"B```?``!``$O``"(``$``CP```<!`0`!D`(`*`$! +M``&0`@"'`0$``M0``)<!`0`"*P``Z@$!``*(```S`@$``2\``#\"`0`"/``` +MQP(!``&0`@#H`@$``9`"`#\#`0`"#@``3P,!``(K``##`P$``H@```H$`0`! +MU0``%@0!``&O```E!`$``CP``&L$`0`"B```R`0!``$!``#7!`$``CP``/X$ +M`0`!&P$`804!``*D`@!H!0$``9`"`'H%`0`"I`(`@04!``&0`@`1!@$``J0" +M`!@&`0`!D`(`*@8!``*D`@`Q!@$``9`"`,<&`0`"W0``_`8!``(!`0`$!P$` +M`M```%D'`0`!D`(`;@<!``&0`@"*!P$``9`"`*\'`0`!D`(``@@!``+O```* +M"`$``A0``'8(`0`"I`(`B0@!``&0`@"O"`$``J0"`,((`0`!D`(`R0L!``)X +M``!_#`$``J8``-T-`0`"I@``_0T!``*F``!S#@$``B8!`'T/`0`"I`(`I`\! +M``*D`@!O$`$``M8``)`0`0`"VP``JA`!``$#`0"X$`$``0,!`#H1`0`!D`(` +M9A$!``&0`@"6$0$``J0"`*L1`0`!D`(`\A$!``&0`@!0$@$``9`"`+D2`0`! +MD`(`*A,!``*D`@`\$P$``9`"`%T3`0`"4@``:1,!``)E``!_$P$``J0"`)L3 +M`0`"I`(`MQ,!``*D`@#9$P$``H,``.L3`0`!D`(`/!0!``*D`@!+%`$``9`" +M`&P4`0`"4@``>!0!``)E``".%`$``J0"`*H4`0`"I`(`QA0!``*D`@#H%`$` +M`H,``/H4`0`!D`(`*A4!``*D`@`V%0$``A```%05`0`""P$`7Q4!``&0`@!W +M%0$``9`"`(X5`0`!D`(`8Q8!``&0`@#C%@$``H@``/T6`0`"D0``%A<!``(J +M``!T%P$``0$``(@7`0`"Z@``J1<!``*L``"U%P$``CP``.\8`0`!!0``]!@! +M``*O`@"J&0$``04``*\9`0`"KP(`PQD!``(=`0#D&0$``D<``,P:`0`"F@`` +M/!L!``&3``!=&P$``L```'4;`0`">P``]1L!``*:```('`$``B4!`#H<`0`" +MR@``U1P!``(?`0#D'`$``I\``(H=`0`"'0$`X!T!``)F``!`'@$``B$!`&,> +M`0`"M0``=!X!``+*```+'P$``N(``)@?`0`"9@``$2`!``+B``"N(`$``KH" +M`,T@`0`"N@(`_R`!``+B``!K(0$``KH"`+<A`0`"N@(`]2$!``(Y```;(@$` +M`D```"<B`0`"I`(`4B(!``*D``!Q(@$``JH``(HB`0`"%@``H2(!``*P``"[ +M(@$``08``,`B`0`"KP(`W2(!``*Z`@#V(@$``08``/LB`0`"KP(`&",!``*Z +M`@!@(P$``KH"`*,C`0`".```QB,!``*Z`@`@)`$``O@``$PD`0`"'0$`920! +M``)[``"J)`$``G,``.PD`0`!`P``5R4!``+1``!\)0$``H<``*$E`0`"AP`` +MQB4!``*'``#K)0$``H<``!@F`0`"A0``128!``*%``!\)@$``H4``*DF`0`" +MA0``M28!``*D`@#L)@$``H4``!DG`0`"A0``)2<!``*D`@!*)P$``H<``&\G +M`0`"AP``E"<!``*'``#!)P$``H4``.8G`0`"AP``+"@!``*D`@"F*`$``9`" +M`,0H`0`!D`(`VB@!``*D`@#X*`$``K4```DI`0`"I`(`*2D!``*'```U*0$` +M`J0"`%HI`0`"AP``9BD!``*D`@"=*0$``H4``*DI`0`"I`(`SBD!``*'``#: +M*0$``J0"`.\I`0`"S@``!"H!``)(```Q*@$``H4``%XJ`0`"A0``BRH!``*% +M``"X*@$``H4``-TJ`0`"AP``[BH!``*D`@`.*P$``H<``!HK`0`"I`(`1RL! +M``*%``!L*P$``H<``)DK`0`"A0``K2L!``*?``#2*P$``H<``-XK`0`"I`(` +M$BP!``*%```>+`$``J0"`$`L`0`"AP``3"P!``*D`@!A+0$``B<``&TM`0`" +M*@``RRT!``&0`@#J+0$``9`"`!PN`0`!D`(`02X!``(G``!-+@$``BH``%DN +M`0`"T0``@2X!``+1``#%+P$``G,``-$O`0`"I`(`]R\!``)S```#,`$``J0" +M`(HP`0`!D`(`HS`!``&0`@#J,`$``J0"``LQ`0`"M0``)S$!``+8```\,0$` +M`M@``$PQ`0`"I`(`<#$!``&0`@".,0$``9`"`*8Q`0`"I`(`NS$!``$%``#` +M,0$``J\"`,TQ`0`"B```$C(!``$!```>,@$``CP``#,R`0`!!@``.#(!``*O +M`@!%,@$``H@``(HR`0`!`0``EC(!``(\``"],@$``H@```DS`0`!`0``&#,! +M``(\```L,P$``H@``'@S`0`!`0``AS,!``(\``";,P$``H@``.`S`0`!`0`` +M[#,!``(\```&-`$``H@``$LT`0`!`0``5S0!``(\``!K-`$``H@``+@T`0`! +M`0``Q#0!``(\```!-0$``IH``"DU`0`"5@``C34!``+1``#3-0$``M$``.4U +M`0`"9@``/#8!``(A`0!H-@$``K4``((V`0`"R@``K#8!``)F```--P$``B$! +M`#DW`0`"M0``4S<!``+*``"+-P$``F8``+8W`0`"-```V3<!``(=`0`9.0$` +M`B<``"4Y`0`"*@``ECD!``*D`@#=.0$``E,``/(Y`0`"M0``2#H!``$%``!- +M.@$``J\"`&@Z`0`"X0``V#H!``*D`@!-.P$``B<``%D[`0`"*@``<3L!``(G +M``!].P$``BH``(D[`0`"M0``<3P!``(6`0"+/`$``A8!`*4\`0`"C@``MSP! +M``*V``#)/`$``N```.$\`0`"]@``\SP!``+&```%/0$``I```!D]`0`":0`` +M1#T!``)F``"E/0$``B$!`-(]`0`"M0``[#T!``+*``!&/@$``C0``%@^`0`" +M9@``?CX!``$&``"#/@$``J\"`),^`0`"-```NCX!``(=`0`80`$``ND``")` +M`0`!`P``@T`!``)[```<00$``IH``#-!`0`")0$`=D$!``+*```-0@$``F8` +M`#]"`0`"WP``A4(!``*F```E0P$``KH"`&!#`0`".0``>$,!``)```"$0P$` +M`J0"`*]#`0`"I```SD,!``*J``#N0P$``A8```E$`0`"L```*D0!``*Z`@!+ +M1`$``KH"`']$`0`".```^40!``+?```010$``A,``,9%`0`"I@``3D<!``(A +M`0!E1P$``LH``)5'`0`"-```J$<!``)[```22`$``F8``$=(`0`"WP``CT@! +M``+?``#12`$``M\``.Q(`0`"I@``+TD!``(9`0"%2@$``K,``*M*`0`"9@`` +MR4H!``(Y``#72@$``D```.-*`0`"I`(`!4L!``(6```<2P$``K```#E+`0`" +MN@(`5DL!``*Z`@""2P$``C@``*)+`0`"B0``!TP!``(]```R3`$``M\``'=, +M`0`"WP``MDP!``+?``#)3`$``AD!`-U,`0`"1P``%4T!``(9`0"(3@$``GL` +M`+M/`0`"(0$`S4\!``+*```64`$``AT!`%]0`0`"WP``AE`!``*X``#B4`$` +M`A4``.I0`0`!DP``"U$!``+````J40$``K$``#91`0`"%0``;E$!``+8``!^ +M40$``J0"`,51`0`".```VE$!``*E```'4@$``M$``"E2`0`"?0(`.%(!``+T +M``!,4@$``F8``&I2`0`"%@``@5(!``*P``">4@$``KH"`+M2`0`"N@(`TE(! +M``(X``#S4@$``F8```-3`0`">P``/%,!``*U```!5`$``B<```U4`0`"*@`` +M:50!``$%``!N5`$``J\"`(A4`0`".```E%0!``(J``#)5`$``OD``/I4`0`" +MI`(`!E4!``(J```B50$``G,``#!5`0`"I`(`/%4!``(J``!(50$``G```*E5 +M`0`"9@``#58!``*U``!V5P$``H4``--7`0`")P``XU<!``(J``#X5P$``M$` +M`!U8`0`!`P``35@!``&0`@"36`$``9`"`+98`0`!D`(`^U@!``&0`@`:60$` +M`9`"`&]9`0`!D`(`JED!``(G``"Z60$``BH``,I9`0`"'0$`!EH!``(G```6 +M6@$``BH``"1:`0`!UP``.5H!``*=`@!26@$``J0"`'M:`0`"PP(`IUH!``&0 +M`@#&6@$``9`"`,M:`0`"PP(`.5L!``)F``"/6P$``A8``+1;`0`"L```XUL! +M``*Z`@!X7`$``?\``)=<`0`!!0``G%P!``*O`@"]7`$``KH"`.1<`0`".``` +M"ET!``&0`@`I70$``9`"`'!=`0`"9@``J%T!``)[``#470$``D```.!=`0`" +MI`(`%UX!``&0`@`V7@$``9`"`!!?`0`!D`(`+5\!``&0`@"S7P$``HH``-)? +M`0`"!@$`!V`!``&0`@`C8`$``9`"`%%@`0`!D`(`;6`!``&0`@"W8`$``9`" +M`-9@`0`!D`(`"&$!``&0`@`U80$``B<``$5A`0`"*@``46$!``+1``!D80$` +M`D```'!A`0`"I`(`F6(!``(G``"E8@$``BH``.EB`0`")P``]6(!``(J```) +M8P$``LH``!UD`0`"A`(`<60!``$&``!V9`$``J\"`(MD`0`")P``EV0!``(J +M``#`9`$``F8``#=E`0`"9@``IF4!``+*``!@9@$``J0"`-YF`0`"I`(`,F<! +M``*D`@!19P$``B<``%UG`0`"*@``<6<!``+[``"-:`$``J0"`-)H`0`"I`(` +M\6@!``(G``#]:`$``BH``!%I`0`"^P``4&D!``*D`@"@:0$``J0"`/EI`0`" +MI`(`*FH!``*7``!1:@$``B<``%UJ`0`"*@``:6H!``+*``"P:@$``9`"`)9M +M`0`"&```MFT!``(8``#A;0$``A@``)9N`0`"&```MFX!``(8``#C;@$``A@` +M`#-O`0`"B@``>6\!``+4``");P$``BL``.!O`0`"Q```+G`!``(A``!K<`$` +M`L,``+AP`0`"I`(`VG4!``$)``#J=0$``0D``/IU`0`"/P``4'8!``)@```V +M=P$``I0``&-W`0`"\0``=G<!``*4``!+>`$``F8``*5X`0`"TP``RG@!``*$ +M`@#S>`$``BX``'YY`0`"10``O7D!``+#```:>@$``K0``/%Z`0`"I`(`XWL! +M``$)``#T>P$``0D```1\`0`"/P``.WP!``$)``!,?`$``0D``%Q\`0`"/P`` +MXWP!``&0`@`R?0$``9`"`%-]`0`")@``:WT!``(F``"#?0$``B8``)M]`0`" +M)@``LWT!``(F``#+?0$``B8``.-]`0`")@``^WT!``(F```3?@$``B8``"M^ +M`0`")@``0WX!``(F``!;?@$``B8``'-^`0`")@``BWX!``(F``"C?@$``B8` +M`+M^`0`")@``TWX!``(F``#K?@$``B8```-_`0`")@``&W\!``(F```S?P$` +M`B8``$M_`0`")@``8W\!``(F``![?P$``B8``)-_`0`")@``JW\!``(F```4 +M@`$``9`"`#2``0`!D`(`\8`!``(F```0@0$``B8``"^!`0`")@``3H$!``(F +M``!M@0$``B8``,N!`0`"B```W8$!``(5`0!N@@$``H0"`*>"`0`"A`(`KH(! +M``$:`0#!@@$``NH``,V"`0`"/```%(,!``*(```F@P$``A4!`'^#`0`!&@$` +MDH,!``+J``">@P$``CP``/J#`0`"O```"(0!``)````4A`$``J0"`$Z$`0`" +M-P``7(0!``)```!HA`$``J0"`)*$`0`"O```I(0!``)```"PA`$``J0"`/V$ +M`0`"-P``EX4!``)_``"CA0$``BH``%*(`0`")0``:(@!``+M``!6B0$``H8` +M`&N)`0`!70``P(D!``(E``#6B0$``NT``'J*`0`"A@``P8H!``*&``"$BP$` +M`JD``)V+`0`",@``OHL!``)\```CC`$``0,``(2/`0`"%P``"I`!``(7```F +MD`$``H0"`!"1`0`"W@``?)(!``&0`@"3D@$``9`"`*.2`0`"I`(`[I(!``$' +M```VDP$``9`"`&F3`0`!!P``BY,!``$'``#3DP$``9`"`$B4`0`!!P``D)0! +M``&0`@##E`$``0<``.64`0`!!P``+94!``&0`@"6E0$``0<``*>5`0`!!P`` +M.I8!``&0`@#/E@$``9`"`&*7`0`!D`(`C)<!``*D`@!8F`$``B,``!>;`0`" +MYP``CYP!``$#``">G`$``0<``*B<`0`!!P``LYP!``$'``"]G`$``0<``!:@ +M`0`!!P``&Z`!``)U`@"AH`$``C\``+&@`0`"I`(`S:`!``("`0#XH`$``08` +M`/V@`0`"KP(`1:$!``*9`@!?H0$``ID"`'FA`0`"F0(`\:$!``(M```2H@$` +M`J,"`"^B`0`"HP(`4*(!``*C`@!MH@$``J,"`(ZB`0`"HP(`JZ(!``*C`@#, +MH@$``J,"`.FB`0`"HP(`)J,!``*C`@`]HP$``J,"`&NC`0`"HP(`B*,!``*C +M`@"IHP$``J,"`,:C`0`"HP(`YZ,!``*C`@`$I`$``J,"`"6D`0`"HP(`0J0! +M``*C`@!CI`$``J,"`("D`0`"HP(`H:0!``*C`@"^I`$``J,"`-^D`0`"HP(` +M_*0!``*C`@`=I0$``J,"`#JE`0`"HP(`6Z4!``*C`@!XI0$``J,"`)FE`0`" +MHP(`MJ4!``*C`@#7I0$``J,"`/2E`0`"HP(`%:8!``*C`@`RI@$``J,"`%.F +M`0`"HP(`<*8!``*C`@"1I@$``J,"`*ZF`0`"HP(`XZ8!``+2`@`4IP$``M(" +M`$FG`0`"T@(`>J<!``+2`@"OIP$``M("`."G`0`"T@(`%:@!``+2`@!&J`$` +M`M("`'NH`0`"T@(`K*@!``+2`@#AJ`$``M("`!*I`0`"T@(`1ZD!``+2`@!X +MJ0$``M("`*VI`0`"T@(`WJD!``+2`@`1J@$``L@``".J`0`"R```3:H!``(I +M``!5J@$``I(``&.J`0`"D@``:ZH!``(B`0!WJ@$``J0"`'^J`0`"P0``CZH! +M``+(``"?J@$``L@``.&J`0`"T0``-*L!``+1``!<JP$``@@!`&^K`0`""`$` +MC*L!``((`0"?JP$``@@!`+NK`0`"0```#*P!``*(``!JK`$``0$``'JL`0`" +M/```MZP!``(Y``#+K`$``J0"`->L`0`"0```)JT!``(J``"/K0$``H@```6N +M`0`!`0``%:X!``(\``!2K@$``CD``&:N`0`"I`(`<JX!``)```"TK@$``I$` +M`"NO`0`!`0``.Z\!``+J``!@KP$``JP``'2O`0`"/```L:\!``(Y``#%KP$` +M`J0"`-&O`0`"0```";`!``(G```GL`$``BH``#.P`0`"B```3[`!``(G``!9 +ML0$``0$``&VQ`0`"Z@``EK$!``*L``"JL0$``CP``.>Q`0`".0``^[$!``*D +M`@`'L@$``D```$FR`0`")P``9;(!``(J``#UL@$``H@``!VS`0`!!@``(K,! +M``*O`@`PLP$``I$``$RS`0`"*@``B;,!``*Z`@"HLP$``CD``/FS`0`"A`(` +MW;0!``)>```=M0$``0$``#&U`0`"Z@``6K4!``*L``!UM0$``CP``+>U`0`" +M.0``R[4!``*D`@#7M0$``D```".V`0`"A`(`5[8!``(G``!PM@$``H$``(2V +M`0`"*@``K+8!``*Z`@!PMP$``B<``(&W`0`"@0``C;<!``(J``!2N`$``CD` +M`*"X`0`"(0$`Z+@!``+1``#^N`$``K4``!VY`0`"R@``5[D!``+D``!AN@$` +M`L<``(.Z`0`"$0$`H[H!``*\`@#7N@$``BD``-^Z`0`"7```Y[H!``)<``#O +MN@$``I(``/NZ`0`"D@``![L!``(B`0`3NP$``J0"`!N[`0`"P0``+[L!``%? +M``!*NP$``IT"`%J[`0`"'0$`?+L!``(7`0"*NP$``A<!`*F[`0`!"0``MKL! +M``$)``#3NP$``0<``-V[`0`!!P``_KL!``%:```,O`$``0<``!*\`0`!6@`` +M&+P!``$'```>O`$``5H``"2\`0`!!P``*KP!``%:```QO`$``5H``$>\`0`! +M6@``3KP!``%:``!=O`$``5H``&2\`0`!6@``;;P!``%:``!TO`$``5H``(.\ +M`0`!6@``D+P!``$'``"JO`$``5H``+B\`0`!6@``Q[P!``%:``#.O`$``5H` +M`->\`0`!6@``WKP!``%:``#VO`$``0<```B]`0`!`P``1;T!``$#``!IO0$` +M`0<``'J]`0`!!P``IKT!``%:``"TO0$``5H``-Z]`0`!6@``!+X!``%:```1 +MO@$``5H``&.^`0`"?@(`=[X!``$#``#OO@$``JH``!6_`0`"I```';\!``+D +M``!"OP$``K```%R_`0`"L```\;\!``$%``#VOP$``J\"``C``0`"B```-L`! +M``'_``!1P`$``04``%;``0`"KP(`F,`!``$!``"DP`$``CP``.'``0`".0`` +M]<`!``*D`@#]P`$``D```$'!`0`"B```8\$!``*1``"$P0$``BH``-[!`0`! +M`0``\L$!``+J```3P@$``JP``"/"`0`"/```8,(!``(Y``!TP@$``J0"`(#" +M`0`"0```L\(!``+A``#=P@$``B<``.W"`0`"*@``"<,!``(J``!6PP$``0,` +M`)'#`0`"XP``U<,!``)C```-Q`$``KH"`"C$`0`".0``.L0!``*D`@!"Q`$` +M`D```'[$`0`"N@(`F<0!``*C``"KQ`$``OT``!+%`0`!_P``+<4!``$%```R +MQ0$``J\"`&#%`0`"?0(`<<4!``$!``"&Q0$``IT"`/''`0`"J@``&L@!``*D +M``!(R`$``F8``+3(`0`"9@``"<D!``*Z`@!(R0$``F8``*K)`0`"N@(`\,H! +M``+C``!&RP$``L<``&'+`0`"L```F<L!``)```#$RP$``AT!`.'+`0`"?0(` +M]<L!``%?```*S`$``IT"`&7-`0`"Y```QLT!``$#``#ZS0$``CL``&/.`0`" +M.P``S,X!``([```USP$``CL``'_0`0`!`P``PM`!``([```QT0$``CL``);1 +M`0`".P``^]$!``([``!AT@$``CL``,;2`0`".P``$-,!``*;`@!$TP$``CL` +M`([3`0`"FP(`PM,!``([```,U`$``IL"`$#4`0`".P``BM0!``*;`@"^U`$` +M`CL``!35`0`"B@``4M4!``**``"0U0$``HH``,[5`0`"B@``#-8!``**``!' +MU@$``HH``/#6`0`!"0``^]8!``$)```9V0$``HP"`$+9`0`"C`(`A-D!``$# +M``"9V0$``0<``*79`0`!!P``L=D!``$'``"ZV0$``0<``,#9`0`!!P``W=D! +M``$'```=V@$``L8"`%':`0`"OP(`AMH!``%:``"3V@$``5H``+_:`0`!6@`` +MW-H!``%:``#EV@$``5H``.S:`0`!6@``"-L!``%:```6VP$``5H``'3<`0`! +M_P``B=P!``+D``#SW0$``I0``"'>`0`"\0``-MX!``*4``"UX0$``I0``./A +M`0`"\0``^.$!``*4``"EY0$``I0``-/E`0`"\0``Z.4!``*4``!EZ0$``I0` +M`)/I`0`"\0``J.D!``*4``#PZP$``H@``+_M`0`"A`(`$^\!``$!``"![P$` +M`EX``)'O`0`"Z@``L>\!``*L``#1[P$``NH``.?O`0`"D0``'/`!``*L```Q +M\`$``GD``&;P`0`"K```I?`!``*$`@`7\0$``H0"`%'Q`0`"/```8_$!``(J +M``#?\P$``L8"``;T`0`"Q@(`._4!``(A`0"+]0$``F8``-WU`0`"M0``#O8! +M``+1``!,]@$``H,``''V`0`"R@``G/8!``)F``#W]@$``N(``,+W`0`"!@(` +MV?<!``)$`@#M]P$``D,"`%3X`0`!`0``:_@!``+#`0"-^`$``BP!`)GX`0`" +M0P$`K/@!``*D`@"W^`$``E4!`-?X`0`"+@$`[O@!``)U`0#Z^`$``D,"`!?Y +M`0`"0P(`._D!``)X`0!8^0$``L<!`*OY`0`"PP$`R?D!``(L`0#H_`$``JL! +M`%<``@`!`P``_@`"``$%```#`0(``J\"`$P!`@`"A`(`'`("``&0`@!$`@(` +M`9`"`*0"`@`!D`(`+0,"``&0`@!H`P(``9`"`-(#`@`"I`(`#`0"``*D`@!. +M!`(``J0"`(@$`@`"I`(`[`0"``)6`0#X!`(``J0"``0%`@`"`0(`>`4"``&0 +M`@"&!0(``9`"`)<%`@`"I`(`J@4"``&0`@"X!0(``9`"`,L%`@`!D`(`U`4" +M``&0`@#W!0(``J0"``(&`@`!D`(`(P8"``*D`@`N!@(``9`"`$\&`@`!D`(` +M:@8"``&0`@"S!@(``9`"`,H&`@`!D`(`Y@8"``&0`@#[!@(``9`"`!D'`@`! +MD`(`)`<"``&0`@!1!P(``J0"`%\'`@`!D`(`A@<"``*D`@"4!P(``9`"`,8) +M`@`!D`(`&PH"``+1`0!+"@(``M$!`+\*`@`"%`(`)0L"``)]`@`X"P(``M(! +M`%P+`@`"R0$`_`L"``(4`@`C#`(``OD!`#H,`@`"O0$`5@P"``$&``!;#`(` +M`J\"`'@,`@`"N@(`E0P"``*Z`@"P#`(``EH!`-L,`@`!D`(`K@T"``%!`0#/ +M#0(``M\!`*P.`@`"0`$`N`X"``)#`@"H#P(``K\!`.02`@`"0@(`8!,"``)@ +M`0"C$P(``K\!`$84`@`!`P``;A0"``(3`@"R%`(``A,"`/44`@`"$P(`-!4" +M``(3`@!U%0(``J(!`,45`@`"%@(`518"``(X`0"/%@(``F$!`+\6`@`"I`(` +M%AD"``(L`@`O&0(``O0!`/<9`@`"3`$`?AH"``+J`0"H&@(``DP!``D<`@`" +M00(`)1P"``+3`0"='`(``D$"`-(<`@`"TP$`BQX"``(5`@!P'P(``H0"`(X? +M`@`!`P``)2`"``(K`0`W(`(``BL!`.D@`@`"00(`'B$"``+3`0"J(0(``H@! +M`.DA`@`"=`$`#2("``*(`0`C(@(``@("`$,B`@`"B`$`DR("``)\`0"S(@(` +M`04``+@B`@`"KP(`)","``+)`0`T(P(``D<!`,0C`@`"#`(`0"0"``(,`@!. +M)`(``A`"`'HD`@`"#`(`DR0"``+6`0"[)`(``G<!`%\E`@`"DP$`A"4"``+6 +M`0"J)0(``H<!`-<E`@`"#`(`WR4"``*'`0`$)@(``M8!`&8F`@`"+P$`L"8" +M``+Q`0#5)@(``LD!``\G`@`"N@(`+R<"``(O`0!4)P(``E4!`&`G`@`"I`(` +MK"<"``*Z`0"V)P(``@,"`,DG`@`!!@``SB<"``*O`@`$*`(``B\!`!DH`@`" +MF@$`)"@"``*'`0"=*`(``9`"`,,H`@`!D`(`]"@"``&0`@`[*0(``04``$`I +M`@`"KP(`D2D"``*^`0`&*@(``KX!`!PJ`@`"/`(`*"H"``*3`0#:*@(``D(! +M`/DJ`@`"U@$`'RL"``+)`0"Q*P(``D(!`,HK`@`"U@$`$BP"``(W`@`M+0(` +M`9`"`$8M`@`!D`(`7BT"``&0`@"Q+0(``9`"`,TM`@`!D`(`22X"``+W`0"D +M+@(``9`"`,`N`@`!D`(`W"X"``&0`@#H+@(``G\!`,<O`@`"30$`_"\"``*$ +M`@#3,`(``H0"`$XQ`@`"A`(`=C$"``&0`@"F,0(``9`"`.(Q`@`!D`(`P3(" +M``*$`@#Q,P(``H0"`'HT`@`"A`(`C30"``$#```2-0(``J0"`%<U`@`!D`(` +M>#4"``&0`@"=-0(``08``*(U`@`"KP(`L34"``+<`0#*-0(``9`"`/DU`@`! +MD`(`;#8"``&0`@#M-@(``MP!``$W`@`"W`$`=S<"``$%``!\-P(``J\"`-LW +M`@`!!@``X#<"``*O`@#T-P(``L@!`"<X`@`!!0``+#@"``*O`@#U.`(``04` +M`/HX`@`"KP(`H3D"``)"`0"X.0(``M8!`&HZ`@`"KP$`O#L"``+(`0#0.P(` +M`A0"`$$\`@`"@0$`ICP"``)"`0"R/`(``J\!`,D\`@`"U@$`'3T"``+)`0": +M/0(``C$!`,L]`@`"R0$`5CX"``&0`@""/@(``LD!`+<^`@`"%`(`QSX"``*' +M`0`$/P(``9`"`"<_`@`!D`(`5#\"``&0`@!H/P(``HX!`,@_`@`!D`(`+T`" +M``&0`@!-0`(``9`"`%]``@`"9P$`B4`"``&0`@">0`(``9`"`/1``@`!D`(` +M#4$"``&0`@`V00(``GT"`%9!`@`"Y@$`E4$"``+)`0#+00(``KH"`.=!`@`" +M+P$`%4("``*-`0`A0@(``J0"`$A"`@`!`0``>4("``*=`@":0@(``9`"`*I" +M`@`!D`(`R4("``&0`@#90@(``9`"``%#`@`!D`(`*T,"``&0`@!60P(``9`" +M`&]#`@`!D`(`FT,"``&0`@#%0P(``9`"`!9$`@`!D`(`,D0"``&0`@!/1`(` +M`9`"`&M$`@`!D`(`J40"``)]`@#K1`(``KH"``-%`@`"+P$`%$4"``)5`0`@ +M10(``J0"`$-%`@`!`P(`6$4"``*=`@!Y10(``9`"`)=%`@`!D`(`PD4"``&0 +M`@#@10(``9`"`"I&`@`"?0(`1D8"``+)`0!V1@(``KH"`)I&`@`!Q@$`LT8" +M``*=`@#31@(``9`"`/!&`@`!D`(`#$<"``*D`@`<1P(``9`"`#='`@`!D`(` +M5$<"``&0`@!P1P(``J0"`(!'`@`!D`(`I$<"``&0`@!>2`(``9`"`(9(`@`" +MI`(`L4@"``&0`@#82`(``J0"``%)`@`!D`(`*DD"``*D`@!V20(``IP!`)1) +M`@`"X`$`I$D"``*N`0#720(``JH!`!%*`@`"BP$`0TH"``*N`0`#2P(``J0" +M`"E+`@`!D`(`1TL"``*D`@!G2P(``9`"`)!+`@`"I`(`MDL"``&0`@#82P(` +M`J0"`/1+`@`!D`(`&$P"``+)`0"=3`(``B\!`.%,`@`"+P$`\4P"``*N`0`X +M30(``LD!`%Y-`@`"R0$`@4T"``)]`@"930(``E4!`*5-`@`"I`(`5DX"``(4 +M`@!Y3@(``OD!`)!.`@`"O0$`JDX"``$&``"O3@(``J\"`,Q.`@`"N@(`Z4X" +M``*Z`@`,3P(``EH!`#5/`@`"9`$`:4\"``+)`0"*3P(``E4!`)9/`@`"I`(` +MQT\"``+Y`0#>3P(``KT!`/A/`@`!!@``_4\"``*O`@`:4`(``KH"`#=0`@`" +MN@(`4E`"``):`0!O4`(``JH!`/10`@`!D`(`&U$"``*D`@`W40(``9`"`%=1 +M`@`!D`(`>E$"``*D`@"640(``9`"`!Q2`@`"Y@$`*%("``*Q`0!M4@(``@X" +M`'Y2`@`"M0$`NU("``*D`@#34@(``9`"`.Y2`@`!D`(`$E,"``*N`0`:4P(` +M`HP!`$53`@`"#P(`SE,"``+&`0#D4P(``LD!`'%4`@`"+@(`HU0"``*Z`0#< +M5`(``AH"`/M4`@`"N@(`&U4"``*Z`@!,50(``J0"`&-5`@`!D`(`?%4"``&0 +M`@"<50(``JX!`*15`@`"C`$`[54"``*<`0`G5@(``LD!`*)6`@`"#P(`M%8" +M``)M`0`E5P(``9`"`$97`@`!D`(`8U<"``(O`@!T5P(``K4!`-M7`@`"\`$` +M^%<"``+6`0`:6`(``H<!`#]8`@`"#`(`1U@"``*'`0"*6`(``M8!`-%8`@`" +M+P$`YE@"``+)`0`660(``KH"`"Y9`@`"+P$`/%D"``)5`0!(60(``J0"`&E9 +M`@`"`P(`E5D"``+6`0#'60(``B\!`.19`@`"R0$`_%D"``+Y`0`36@(``KT! +M`#!:`@`"N@(`35H"``*Z`@!@6@(``EH!`'E:`@`"T@$`CEH"``&0`@#;6@(` +M`JX!`.=:`@`"J@$`<%L"``&0`@"+6P(``L@!`)];`@`"%`(`OEL"``+(`0#& +M6P(``MH!`.5;`@`!`P``!%P"``)R`0`H7`(``G(!`$Q<`@`"+P$`>UP"``+Q +M`0"<7`(``DX!`,9<`@`"+P$`\5P"``+Q`0`270(``B\!`"Y=`@`"3@$`45T" +M``(O`0!N70(``B\!`*1=`@`"50$`L%T"``*D`@`<7@(``C(!`#M>`@`"_0$` +M55X"``+Y`0!L7@(``KT!`(9>`@`!!@``BUX"``*O`@"H7@(``KH"`,5>`@`" +MN@(`V%X"``):`0`$7P(``LD!`$!?`@`"P0$`CE\"``+9`0"L7P(``LD!``!@ +M`@`!!0``!6`"``*O`@`O8`(``L@!`')@`@`!!0``=V`"``*O`@!*80(``04` +M`$]A`@`"KP(`DF$"``$%``"780(``J\"`"=B`@`"C@$`+V,"``)"`0!D8P(` +M`B<"`)QC`@`!!0``H6,"``*O`@#>9`(``H0"``)E`@`!D`(`+F4"``&0`@!J +M90(``9`"`!YF`@`!!0``(V8"``*O`@!]9@(``04``()F`@`"KP(`K68"``$% +M``"R9@(``J\"`.1F`@`!!@``Z68"``*O`@!D9P(``04``&EG`@`"KP(`L6<" +M``$&``"V9P(``J\"`.EG`@`!!@``[F<"``*O`@#]9P(``08```)H`@`"KP(` +M46@"``([`0"B:`(``9`"`+]H`@`!D`(`W&@"``&0`@#\:`(``9`"`!-I`@`! +M!@``&&D"``*O`@"<:0(``9`"`,EI`@`!!@``SFD"``*O`@`):@(``04```YJ +M`@`"KP(`)&H"``)_`0!":@(``9`"`--J`@`"AP$`\VH"``+B`0!X:P(``BD" +M`)9K`@`"CP$`PFL"``*P`@#N:P(``K`"`!IL`@`"L`(`0VP"``*P`@!L;`(` +M`K`"`*!L`@`"L`(`Q6P"``*P`@#K;`(``K`"`!=M`@`"L`(`/&T"``*P`@!H +M;0(``K`"`)1M`@`"L`(`O&T"``*P`@#D;0(``K`"``QN`@`"L`(`-&X"``*P +M`@!;;@(``K`"`(1N`@`"L`(`J6X"``*P`@#:;@(``H("``=O`@`"@@(`.V\" +M``*"`@!L;P(``H("`)UO`@`"@@(`SF\"``*"`@#[;P(``H("`"]P`@`"@@(` +M97`"``+)`0!Z<`(``@8"`/-P`@`!`0``!G$"``+#`0`6<0(``D,!`*5Q`@`" +MR0$`X7$"``*Z`@#]<0(``B\!``MR`@`"50$`%W("``*D`@!'<@(``G8!`/AS +M`@`"*0(`C'0"``*R`@#"=`(``K("`/]T`@`"L@(`/'4"``*R`@!V=0(``K(" +M`))U`@`"L@(`L'4"``*R`@`:=@(``K("`'5V`@`"L@(`TG8"``*R`@`;=P(` +M`K("`'!W`@`"L@(`V'<"``*R`@`A>`(``K("`%9X`@`"UP$`97@"``*R`@"3 +M>`(``J0!`*)X`@`"L@(`T'@"``*D`0#?>`(``K("``UY`@`"I`$`''D"``*R +M`@!*>0(``J0!`%EY`@`"L@(`O7D"``+D`0#2?`(``KT"`/5\`@`"O0(`&'T" +M``*]`@`[?0(``KT"`%=]`@`"O0(`<WT"``*]`@"N?0(``LD!`!-^`@`"O0(` +M37X"``+)`0"[?@(``KT"`/Y^`@`"R0$`<G\"``)%`0"]?P(``9`"`.)_`@`! +MD`(`_G\"``*U`0!!@`(``B\!`%2``@`"50$`8(`"``*D`@""@`(``OD!`)^` +M`@`"N@(`O(`"``*Z`@#3@`(``EH!`.*``@`!D`(`/X$"``+1`0!O@0(``KH" +M`-F!`@`"/`(`%(("``+)`0"+@@(``04``)""`@`"KP(`Q8("``+(`0`(@P(` +M`04```V#`@`"KP(`TH,"``$%``#7@P(``J\"``F$`@`!!@``#H0"``*O`@"1 +MA`(``04``):$`@`"KP(`684"``$&``!>A0(``J\"`&:%`@`"C@$`;X8"``+6 +M`0"7A@(``D(!`+N&`@`"]P$`_H8"``(W`@#<B@(``L\!`#R+`@`"A`(`4(L" +M``(H`@#*BP(``H0"`!F,`@`"!@(`*XP"``)$`@`]C`(``D,"`&:,`@`"A`(` +MJ(P"``&F`0#]C`(``L,!`!Z-`@`"+`$`*HT"``)#`0!YC0(``@8"`(N-`@`" +M1`(`G8T"``)#`@#NC0(``:8!`$..`@`"PP$`9(X"``(L`0!PC@(``D,!`-V. +M`@`"!@(`\XX"``)$`@`)CP(``D,"`"Z/`@`"A`(`98\"``$V`@"/CP(``L,! +M`+"/`@`"+`$`P(\"``)#`0`BD`(``L\!`$V0`@`""`(`B9`"``(&`@";D`(` +M`D0"`*V0`@`"0P(`\Y`"``$V`@`?D0(``L,!`$"1`@`"+`$`3)$"``)#`0#M +MD0(``FP!`"R2`@`";`$`?)("``*S`0"0D@(``E(!`,*2`@`"7`$`XI("``)2 +M`0`6DP(``E(!`.N3`@`">P$`/I0"``*T`0!WE`(``EP!`+B4`@`"!@(`RI0" +M``)$`@#<E`(``D,"`"*5`@`!"@(`2I4"``+#`0!KE0(``BP!`'>5`@`"0P$` +M498"``(N`0!=E@(``D,"`(^6`@`"A`(`T98"``(N`0#=E@(``D,"`'.7`@`" +M9@$`B)<"``(N`0"4EP(``D,"`*^7`@`"?0(`PY<"``%4`0#8EP(``IT"`$>8 +M`@`"\@$`-)D"``+M`0!TF0(``NT!`*Z9`@`"7`$`ZIH"``*#`0#_F@(``G$! +M`!2;`@`"J0$`*9L"``)F`0!#FP(``GT"`%>;`@`!5`$`<9L"``*=`@"DFP(` +M`LD!`!B<`@`"+@(`/IP"``*Z`0!EG`(``AH"`+2<`@`"R0$`\IP"``)<`0`G +MG0(``L$!`%&=`@`"+@$`99T"``)#`@"AG0(``EP!`&N>`@`!D`(`!J,"``(U +M`@`/I`(``0,``*BD`@`!D`(`V*0"``&0`@`#I0(``9`"`#RE`@`!D`(`CZ4" +M``&0`@"]I0(``9`"`..E`@`!D`(`%:8"``&0`@#6I@(``0,``.NF`@`!`P`` +M_J8"``$#```,IP(``0,``!^G`@`"_@$`*J<"``$#``"NIP(``LD!`.ZG`@`" +MR0$`'J@"``+)`0!NJ`(``LD!`)ZH`@`"R0$`)*D"``+)`0"`J@(``D(!`/&K +M`@`"R`$`.*P"``+K`0!XK`(``NL!`&&M`@`"+@$`<JT"``*)`0![K@(``D,! +M`**N`@`"90$`L:X"``(U`@#&K@(``M8!`#&O`@`"\`$`EZ\"``*3`0!HL`(` +M`D,"`-JP`@`"=0$`Z+`"``)#`@`FL0(``LD!`#"Q`@`":`$`.+$"``)'`0!L +ML0(``@8"`'JQ`@`"1`(`D[$"``)#`@#1L0(``3,!`-VQ`@`"0P$`(+("``(& +M`@!7L@(``3,!`&.R`@`"0P$`H;("``(&`@"SL@(``D0"`,6R`@`"0P(`#+," +M``$!```@LP(``L,!`$&S`@`"+`$`3;,"``)#`0"-LP(``@8"`,BS`@`!FP$` +MU+,"``)#`0#FLP(``J0"`/BS`@`"I`(`W;0"``(N`0#NM`(``HD!`/JT`@`" +M0P(`,[4"``(-`@!1M0(``BX!`&*U`@`"B0$`;K4"``)#`@!LM@(``J0"`'BV +M`@`"0P(`J+8"``(-`@"XM@(``J0"`,2V`@`"0P(`_+8"``(&`@`_MP(``A," +M`$^W`@`"0P(`8[<"``$S`0!OMP(``D,!`+"W`@`"!@(`RK<"``)$`@#CMP(` +M`D,"`#VX`@`!,P$`4+@"``+#`0!NN`(``BP!`'JX`@`"0P$`R;@"``(&`@#D +MN`(``D0"`/VX`@`"0P(`4[D"``$S`0!GN0(``L,!`(FY`@`"+`$`E;D"``)# +M`0#0N0(``@8"`.JY`@`"1`(``[H"``)#`@!6N@(``3,!`&ZZ`@`"PP$`D+H" +M``(L`0"<N@(``D,!`."Z`@`"!@(`^KH"``)$`@`3NP(``D,"`%Z[`@`!,P$` +M<KL"``+#`0"4NP(``BP!`*"[`@`"0P$`_[L"``(&`@"UO`(``0$``,B\`@`" +MPP$`U+P"``)#`0`!OP(``G(!`!Z_`@`"=0$`;+\"``+)`0`_P`(``@P"`*/` +M`@`"!@(`Q,`"``+_`0#6P`(``D,"`"K!`@`!6P$`/<$"``+#`0!)P0(``D,! +M`)K!`@`"!@(`K,$"``+_`0`!P@(``5L!`!3"`@`"PP$`(,("``)#`0`LP@(` +M`J0"`''"`@`"!@(`?\("``+_`0#*P@(``5L!`-W"`@`"PP$`Z<("``)#`0`I +MPP(``@8"`#?#`@`"_P$`?<,"``%;`0"0PP(``L,!`)S#`@`"0P$`T<,"``*B +M`0#APP(``D`"`,W$`@`"H@$`W<0"``)``@!%Q0(``DD!`,3%`@`"L@$`+<8" +M``(T`@!=Q@(``J(!`&W&`@`"0`(`V<8"``(2`@`XQP(``B4"`)+'`@`"0@$` +MLL<"``+P`0#(QP(``B4"`!'(`@`"0@$`)\@"``(E`@!0R`(``GT"`(/(`@`" +M?0(`U<@"``*>`0`=R0(``D(!`#?)`@`"DP$`0\D"``(\`@#TR0(``LD!``;* +M`@`"V0$`'<H"``$[`0`RR@(``IT"`*[*`@`"R0$`P,H"``(\`@#9R@(``3`" +M`/3*`@`"G0(`H<L"``)"`0"MRP(``J\!`+G+`@`"#`(`7\P"``$[`0!TS`(` +M`IT"`/C,`@`!,`(`$\T"``*=`@"4S@(``LD!`/G.`@`"0`$`#<\"``)#`@!7 +MSP(``O$!`(K/`@`"N@$`M<\"``)&`0#5SP(``LD!`%30`@`"+@(`;]`"``)` +M`0"#T`(``D,"`.O0`@`"+P$`%-$"``)5`0`@T0(``J0"`$O1`@`",@$`:M$" +M``+]`0"7T0(``OD!`*[1`@`"O0$`R-$"``$&``#-T0(``J\"`.K1`@`"N@(` +M!]("``*Z`@!"T@(``EH!`&32`@`"R0$`EM("``+!`0#7T@(``B\!``C3`@`" +M50$`%-,"``*D`@`_TP(``C(!`%[3`@`"_0$`>],"``+Y`0"6TP(``KT!`+#3 +M`@`!!@``M=,"``*O`@#6TP(``KH"`._3`@`!!@``]-,"``*O`@`5U`(``KH" +M`)S4`@`"N@(`_-0"``+)`0`ZU0(``KH"`%S5`@`"6@$`H-4"``(&`@"RU0(` +M`D0"`,O5`@`"0P(`.=8"``$S`0!,U@(``L,!`&K6`@`"+`$`=M8"``)#`0"C +MU@(``J(!`+/6`@`"0`(`CM<"``(E`@#'UP(``D`"`![8`@`"R0$`*=H"``*$ +M`@#LVP(``O(!`"3<`@`"'`(`K]P"``$!``#=W`(``GD!`+G=`@`!`0``_-T" +M``)Y`0#%W@(``0$```O?`@`">0$`==\"``$!``"SWP(``GD!``7@`@`!`0`` +M0^`"``)Y`0`<X0(``AT"`)7A`@`"-`$`G^("``+>`0`SXP(``K<!`+KC`@`" +M\@$`[>,"``(>`@`8Y`(``L(!`$SE`@`"'`(`$N<"``+.`0!>YP(``MX!``+H +M`@`"MP$`>>@"``)>`0``Z0(``K<!`,#I`@`"MP$``>H"``(<`@!\Z@(``K<! +M`,CJ`@`"MP$`*>L"``*W`0!SZP(``K<!`+ON`@`"MP$`$^\"``&0`@`K[P(` +M`9`"`*OP`@`"VP$`&/("``&0`@`S\@(``9`"`%/R`@`"0P(`L/("``*D`@"_ +M\@(``9`"`.+R`@`"I`(`\?("``&0`@#I\P(``J0"`/7S`@`!D`(`!_0"``*D +M`@`.]`(``9`"`"OT`@`"I`(`,_0"``&0`@!:]`(``J0"`&;T`@`!D`(`>/0" +M``*D`@!_]`(``9`"`)ST`@`"I`(`I/0"``&0`@#H]`(``J0"`$CU`@`"I`(` +M6?4"``)5`0"W]0(``@8"`"/V`@`!.@$`+_8"``&G`0`^]@(``D,!`([V`@`" +M!@(`_/8"``%0`0`(]P(``D,!`(?W`@`!D`(`J/<"``&0`@`'^`(``N$!`!?X +M`@`"2P$`:O@"``(&`@"S^`(``5`!`+_X`@`"0P$`1_D"``&0`@!H^0(``9`" +M`+_Y`@`"*@$`S_D"``)+`0!#^@(``@8"`(KZ`@`!.@$`EOH"``&G`0"E^@(` +M`D,!`.OZ`@`"!@(`2/L"``$!``!7^P(``D,!`'[[`@`!70$`X?L"``*D`@#H +M^P(``9`"`/K[`@`"I`(``?P"``&0`@"1_`(``J0"`)C\`@`!D`(`JOP"``*D +M`@"Q_`(``9`"`$?]`@`".0(`?/T"``(@`@"$_0(``ML!`-K]`@`!D`(`[_T" +M``&0`@`+_@(``9`"`##^`@`!D`(`@OX"``()`@"*_@(``BT!`/;^`@`"I`(` +M"?\"``&0`@`O_P(``J0"`$+_`@`!D`(`20(#``(A`@#_`@,``O(!`&D$`P`" +M\@$`CP0#``+R`0`#!0,``FL!``T&`P`"I`(`-`8#``*D`@#_!@,``C\!`"`' +M`P`"Z0$`.@<#``$D`@!(!P,``20"`,H'`P`!D`(`]@<#``&0`@`F"`,``J0" +M`#L(`P`!D`(`@@@#``&0`@#@"`,``9`"`$D)`P`!D`(`N@D#``*D`@#,"0,` +M`9`"`.T)`P`"[P$`^0D#``(!`@`/"@,``J0"`"L*`P`"I`(`1PH#``*D`@!I +M"@,``HT!`'L*`P`!D`(`S`H#``*D`@#;"@,``9`"`/P*`P`"[P$`"`L#``(! +M`@`>"P,``J0"`#H+`P`"I`(`5@L#``*D`@!X"P,``HT!`(H+`P`!D`(`N@L# +M``*D`@#&"P,``JX!`.0+`P`"C`$`[PL#``&0`@`'#`,``9`"`!X,`P`!D`(` +M\PP#``&0`@!S#0,``@8"`(T-`P`"1`(`I@T#``)#`@`$#@,``0$``!@.`P`" +MPP$`.0X#``(L`0!%#@,``D,!`'\/`P`!!0``A`\#``*O`@`Z$`,``04``#\0 +M`P`"KP(`4Q`#``+!`0!T$`,``L0!`%P1`P`"[@$`S!$#``%!`0#M$0,``M\! +M``42`P`"L0$`A1(#``+N`0"8$@,``IT!`,H2`P`"&@(`91,#``)M`0!O$P,` +M`CT"`!L4`P`"P0$`?Q0#``+)`0#?%`,``BX"``(5`P`"N@$`$Q4#``(:`@"K +M%0,``ID!`#@6`P`"R0$`L18#``*9`0!+%P,``KH"`&H7`P`"N@(`GQ<#``*9 +M`0`(&`,``KH"`%,8`P`"N@(`DA@#``(O`0"X&`,``E4!`,08`P`"I`(`[Q@# +M``(R`0`.&0,``OT!`"<9`P`"^0$`/AD#``*]`0!8&0,``08``%T9`P`"KP(` +M>AD#``*Z`@"3&0,``08``)@9`P`"KP(`M1D#``*Z`@#]&0,``KH"`$`:`P`" +M6@$`8QH#``*Z`@#`&@,``N8!`.P:`P`"P0$`!1L#``*Q`0!*&P,``@X"`(P; +M`P`!`P``]QL#``+1`0`<'`,``JP!`$$<`P`"K`$`9AP#``*L`0"+'`,``JP! +M`+@<`P`"H`$`Y1P#``*@`0`<'0,``J`!`$D=`P`"H`$`51T#``*D`@",'0,` +M`J`!`+D=`P`"H`$`Q1T#``*D`@#J'0,``JP!``\>`P`"K`$`-!X#``*L`0!A +M'@,``J`!`(8>`P`"K`$`S!X#``*D`@!&'P,``9`"`&0?`P`!D`(`>A\#``*D +M`@"8'P,``KH!`*D?`P`"I`(`R1\#``*L`0#5'P,``J0"`/H?`P`"K`$`!B`# +M``*D`@`](`,``J`!`$D@`P`"I`(`;B`#``*L`0!Z(`,``J0"`(\@`P`"A`$` +MI"`#``+E`0#1(`,``J`!`/X@`P`"H`$`*R$#``*@`0!8(0,``J`!`'TA`P`" +MK`$`CB$#``*D`@"N(0,``JP!`+HA`P`"I`(`YR$#``*@`0`,(@,``JP!`#DB +M`P`"H`$`32(#``(]`@!R(@,``JP!`'XB`P`"I`(`LB(#``*@`0"^(@,``J0" +M`.`B`P`"K`$`["(#``*D`@`!)`,``BX!``TD`P`"0P(`:R0#``&0`@"*)`,` +M`9`"`+PD`P`!D`(`X20#``(N`0#M)`,``D,"`/DD`P`"T0$`(24#``+1`0!E +M)@,``@X"`'$F`P`"I`(`ER8#``(.`@"C)@,``J0"`"HG`P`!D`(`0R<#``&0 +M`@"*)P,``J0"`*LG`P`"N@$`QR<#``(``@#<)P,``@`"`.PG`P`"I`(`$"@# +M``&0`@`N*`,``9`"`$8H`P`"I`(`6R@#``$%``!@*`,``J\"`&TH`P`"!@(` +MLB@#``$!``"^*`,``D,!`-,H`P`!!@``V"@#``*O`@#E*`,``@8"`"HI`P`! +M`0``-BD#``)#`0!=*0,``@8"`*DI`P`!`0``N"D#``)#`0#,*0,``@8"`!@J +M`P`!`0``)RH#``)#`0`[*@,``@8"`(`J`P`!`0``C"H#``)#`0"F*@,``@8" +M`.LJ`P`!`0``]RH#``)#`0`+*P,``@8"`%@K`P`!`0``9"L#``)#`0"A*P,` +M`NX!`,DK`P`"F@$`+2P#``+1`0!S+`,``M$!`(4L`P`"R0$`W"P#``(N`@`( +M+0,``KH!`"(M`P`"&@(`3"T#``+)`0"M+0,``BX"`-DM`P`"N@$`\RT#``(: +M`@`K+@,``LD!`%8N`P`"7`$`>2X#``+!`0"Y+P,``BX!`,4O`P`"0P(`-C`# +M``*D`@!],`,``O$!`)(P`P`"N@$`Z#`#``$%``#M,`,``J\"``@Q`P`"O`$` +M>#$#``*D`@#M,0,``BX!`/DQ`P`"0P(`$3(#``(N`0`=,@,``D,"`"DR`P`" +MN@$`$3,#``*[`0`K,P,``KL!`$4S`P`"8@$`5S,#``+%`0!I,P,``NP!`($S +M`P`"@@$`DS,#``*P`0"E,P,``CH"`+DS`P`"*P(`Y#,#``+)`0!%-`,``BX" +M`'(T`P`"N@$`C#0#``(:`@#F-`,``EP!`/@T`P`"R0$`'C4#``$&```C-0,` +M`J\"`#,U`P`"7`$`6C4#``+!`0"X-@,``OL!`,(V`P`!`P``(S<#``*Q`0"\ +M-P,``NX!`-,W`P`"G0$`%C@#``(:`@"M.`,``LD!`-\X`P`"/`$`)3D#``+R +M`0#%.0,``KH"```Z`P`"+P$`&#H#``)5`0`D.@,``J0"`$\Z`P`",@$`;CH# +M``+]`0"..@,``OD!`*DZ`P`"O0$`RCH#``*Z`@#K.@,``KH"`!\[`P`"6@$` +MF3L#``(\`0"P.P,``O8!`&8\`P`"\@$`[CT#``(N`@`%/@,``AH"`#4^`P`" +M7`$`2#X#``*Q`0"R/@,``LD!`.<^`P`"/`$`+S\#``(\`0!Q/P,``CP!`(P_ +M`P`"\@$`SS\#``)1`0`E00,``N<!`$M!`P`"R0$`:4$#``(O`0!W00,``E4! +M`(-!`P`"I`(`I4$#``+Y`0"\00,``KT!`-E!`P`"N@(`]D$#``*Z`@`B0@,` +M`EH!`$)"`P`"9`$`IT(#``('`@#20@,``CP!`!=#`P`"/`$`5D,#``(\`0!I +M0P,``E$!`'U#`P`"Q`$`M4,#``)1`0`H10,``K$!`%M&`P`"+@(`;48#``(: +M`@"V1@,``L$!`/]&`P`"/`$`)D<#``*6`0""1P,``HL!`(I'`P`!00$`JT<# +M``+?`0#*1P,``J,!`-9'`P`"BP$`#D@#``(``@`>2`,``J0"`&5(`P`"6@$` +M>D@#``(X`@"G2`,``M$!`,E(`P`"?0(`V$@#``+2`0#L2`,``LD!``I)`P`" +M^0$`(4D#``*]`0`^20,``KH"`%M)`P`"N@(`<DD#``):`0"320,``LD!`*-) +M`P`"L0$`W$D#``*Z`0"A2@,``BX!`*U*`P`"0P(`"4L#``$%```.2P,``J\" +M`"A+`P`"6@$`-$L#``)#`@!I2P,``K4!`)I+`P`"I`(`IDL#``)#`@#"2P,` +M`@X"`-!+`P`"I`(`W$L#``)#`@#H2P,``E<!`$E,`P`"R0$`K4P#``*Z`0`6 +M3@,``J`!`'-.`P`"+@$`@TX#``)#`@"83@,``M$!`+U.`P`!`P``[4X#``&0 +M`@`S3P,``9`"`%9/`P`!D`(`K$\#``&0`@#+3P,``9`"`"!0`P`!D`(`6U`# +M``(N`0!K4`,``D,"`'M0`P`"P0$`MU`#``(N`0#'4`,``D,"`-50`P`!XP$` +MZE`#``*=`@`#40,``J0"`#-1`P`"PP(`7U$#``&0`@!^40,``9`"`(-1`P`" +MPP(`\5$#``+)`0!'4@,``OD!`&Q2`P`"O0$`FU(#``*Z`@`M4P,``08``#)3 +M`P`"KP(`4U,#``*Z`@!Z4P,``EH!`*!3`P`!D`(`OU,#``&0`@`&5`,``LD! +M`$)4`P`"L0$`:U0#``)5`0!W5`,``J0"`*Y4`P`!D`(`S50#``&0`@"P50,` +M`9`"`,U5`P`!D`(`4U8#``*5`0!R5@,``B4"`*=6`P`!D`(`PU8#``&0`@#Q +M5@,``9`"``U7`P`!D`(`5U<#``&0`@!V5P,``9`"`*A7`P`!D`(`U5<#``(N +M`0#E5P,``D,"`/%7`P`"T0$`!%@#``)5`0`06`,``J0"`#E9`P`"+@$`15D# +M``)#`@")60,``BX!`)59`P`"0P(`J5D#``(:`@"]6@,``H0"`!%;`P`!!@`` +M%EL#``*O`@`K6P,``BX!`#=;`P`"0P(`8%L#``+)`0#76P,``LD!`$9<`P`" +M&@(``%T#``*D`@!^70,``J0"`-)=`P`"I`(`\5T#``(N`0#]70,``D,"`!%> +M`P`"&0(`+5\#``*D`@!R7P,``J0"`)%?`P`"+@$`G5\#``)#`@"Q7P,``AD" +M`/!?`P`"I`(`0&`#``*D`@"98`,``J0"`,I@`P`"J`$`\6`#``(N`0#]8`,` +M`D,"``EA`P`"&@(`4&$#``&0`@`V9`,``C`!`%9D`P`",`$`@60#``(P`0`V +M90,``C`!`%9E`P`",`$`@V4#``(P`0#390,``I4!`!)F`P`"X0$`8&8#``+- +M`0"\9@,``CT!`,1F`P`"A@$`TV8#``$#```?9P,``F,!`#MG`P`"G`$`F&<# +M``*D`@"Z;`,``0D``,IL`P`!"0``VFP#``)?`0`P;0,``A<"`!IN`P`"I0$` +M1VX#``(+`@!:;@,``J4!`#%O`P`"R0$`BV\#``+=`0"P;P,``H0"`-EO`P`" +M3P$`7G`#``*A`0"=<`,``IP!`/IP`P`"P`$`*G(#``*D`@!3<P,``0D``&1S +M`P`!"0``=',#``)?`0"K<P,``0D``+QS`P`!"0``S',#``)?`0!3=`,``9`" +M`*)T`P`!D`(`PW0#``)3`0#;=`,``E,!`/-T`P`"4P$`"W4#``)3`0`C=0,` +M`E,!`#MU`P`"4P$`674#``&0`@"D=0,``9`"`-1U`P`!D`(`?78#``)3`0#; +M=@,``@8"`.UV`P`"_P$`?G<#``*$`@"W=P,``H0"`+YW`P`!^@$`T7<#``+# +M`0#==P,``D,!`"1X`P`"!@(`-G@#``+_`0"/>`,``?H!`*)X`P`"PP$`KG@# +M``)#`0`*>0,``HH!`!AY`P`"50$`)'D#``*D`@!>>0,``H`!`&QY`P`"50$` +M>'D#``*D`@"B>0,``HH!`+1Y`P`"50$`P'D#``*D`@`->@,``H`!`*=Z`P`" +M0`$`LWH#``)#`@!B?0,``CL"`'A]`P`"D`$`9GX#``*X`0![?@,``=@!`-!^ +M`P`".P(`YGX#``*0`0"*?P,``K@!`-%_`P`"N`$`E(`#``)P`0"M@`,``GT! +M`,Z``P`"RP$`,X$#``$#``"4A`,``LH!`!J%`P`"R@$`-H4#``*$`@`@A@,` +M`F`!`(R'`P`!D`(`HX<#``&0`@"SAP,``J0"`/Z'`P`!!P``1H@#``&0`@!Y +MB`,``0<``)N(`P`!!P``XX@#``&0`@!8B0,``0<``*")`P`!D`(`TXD#``$' +M``#UB0,``0<``#V*`P`!D`(`IHH#``$'``"WB@,``0<``$J+`P`!D`(`WXL# +M``&0`@!RC`,``9`"`)R,`P`"I`(`:(T#``(^`0`GD`,``O@!`)^1`P`!`P`` +MKI$#``$'``"XD0,``0<``,.1`P`!!P``S9$#``$'```6E@,``0<``!N6`P`" +M=0(`H98#``)?`0"QE@,``J0"`,V6`P`"(P(`^)8#``$&``#]E@,``J\"`$67 +M`P`"F0(`7Y<#``*9`@!YEP,``ID"`/&7`P`"*0(`$I@#``*C`@`OF`,``J," +M`%"8`P`"HP(`;9@#``*C`@".F`,``J,"`*N8`P`"HP(`S)@#``*C`@#IF`,` +M`J,"`":9`P`"HP(`/9D#``*C`@!KF0,``J,"`(B9`P`"HP(`J9D#``*C`@#& +MF0,``J,"`.>9`P`"HP(`!)H#``*C`@`EF@,``J,"`$*:`P`"HP(`8YH#``*C +M`@"`F@,``J,"`*&:`P`"HP(`OIH#``*C`@#?F@,``J,"`/R:`P`"HP(`'9L# +M``*C`@`ZFP,``J,"`%N;`P`"HP(`>)L#``*C`@"9FP,``J,"`+:;`P`"HP(` +MUYL#``*C`@#TFP,``J,"`!6<`P`"HP(`,IP#``*C`@!3G`,``J,"`'"<`P`" +MHP(`D9P#``*C`@"NG`,``J,"`..<`P`"T@(`%)T#``+2`@!)G0,``M("`'J= +M`P`"T@(`KYT#``+2`@#@G0,``M("`!6>`P`"T@(`1IX#``+2`@![G@,``M(" +M`*R>`P`"T@(`X9X#``+2`@`2GP,``M("`$>?`P`"T@(`>)\#``+2`@"MGP,` +M`M("`-Z?`P`"T@(``Z`#``)*`0`+H`,``K8!`!F@`P`"M@$`(:`#``*8`0`M +MH`,``J0"`#6@`P`"S`$`1:`#``*1`0!5H`,``I$!`)&@`P`"D0$`HZ`#``*1 +M`0#,H`,``JT!`-^@`P`"K0$`_*`#``*M`0`/H0,``JT!`"NA`P`"50$`?*$# +M``(&`@#:H0,``0$``.JA`P`"0P$`)Z(#``(O`0`[H@,``J0"`$>B`P`"50$` +MEJ(#``)#`@#_H@,``@8"`'6C`P`!`0``A:,#``)#`0#"HP,``B\!`-:C`P`" +MI`(`XJ,#``)5`0`DI`,``D0"`)ND`P`!`0``JZ0#``+#`0#0I`,``BP!`.2D +M`P`"0P$`(:4#``(O`0`UI0,``J0"`$&E`P`"50$`>:4#``(N`0"7I0,``D," +M`*.E`P`"!@(`OZ4#``(N`0#)I@,``0$``-VF`P`"PP$`!J<#``(L`0`:IP,` +M`D,!`%>G`P`"+P$`:Z<#``*D`@!WIP,``E4!`+FG`P`"+@$`U:<#``)#`@!E +MJ`,``@8"`(VH`P`!!@``DJ@#``*O`@"@J`,``D0"`+RH`P`"0P(`^:@#``*Z +M`@`8J0,``B\!`&FI`P`"A`(`3:H#``(J`@"-J@,``0$``*&J`P`"PP$`RJH# +M``(L`0#EJ@,``D,!`">K`P`"+P$`.ZL#``*D`@!'JP,``E4!`).K`P`"A`(` +MQZL#``(N`0#@JP,``HD!`/2K`P`"0P(`'*P#``*Z`@#@K`,``BX!`/&L`P`" +MB0$`_:P#``)#`@#"K0,``B\!`!"N`P`"+@(`6*X#``+1`0!NK@,``KH!`(VN +M`P`"&@(`QZX#``+S`0#1KP,``M0!`/.O`P`"-`(`$[`#``*\`@!'L`,``DH! +M`$^P`P`"T`$`5[`#``+0`0!?L`,``K8!`&NP`P`"M@$`=[`#``*8`0"#L`,` +M`J0"`(NP`P`"S`$`G[`#``%O`0"ZL`,``IT"`,JP`P`"P0$`[+`#``+5`0#Z +ML`,``M4!`!FQ`P`!"0``)K$#``$)``!#L0,``0<``$VQ`P`!!P``;K$#``%J +M`0!\L0,``0<``(*Q`P`!:@$`B+$#``$'``".L0,``6H!`)2Q`P`!!P``FK$# +M``%J`0"AL0,``6H!`+>Q`P`!:@$`OK$#``%J`0#-L0,``6H!`-2Q`P`!:@$` +MW;$#``%J`0#DL0,``6H!`/.Q`P`!:@$``+(#``$'```:L@,``6H!`"BR`P`! +M:@$`-[(#``%J`0`^L@,``6H!`$>R`P`!:@$`3K(#``%J`0!FL@,``0<``'BR +M`P`!`P``M;(#``$#``#9L@,``0<``.JR`P`!!P``%K,#``%J`0`DLP,``6H! +M`$ZS`P`!:@$`=+,#``%J`0"!LP,``6H!`-.S`P`"?@(`Y[,#``$#``!?M`,` +M`OT!`(6T`P`",@$`C;0#``+S`0"RM`,``KT!`,RT`P`"O0$`8;4#``$%``!F +MM0,``J\"`'BU`P`"!@(`O[4#``$%``#$M0,``J\"``:V`P`!`0``$K8#``)# +M`0!/M@,``B\!`&.V`P`"I`(`:[8#``)5`0"OM@,``@8"`-&V`P`"1`(`\K8# +M``)#`@!,MP,``0$``&"W`P`"PP$`@;<#``(L`0"1MP,``D,!`,ZW`P`"+P$` +MXK<#``*D`@#NMP,``E4!`"&X`P`"O`$`2[@#``(N`0!;N`,``D,"`'>X`P`" +M0P(`QK@#``$#```!N0,``I0!`$6Y`P`"A0$`?;D#``*Z`@"8N0,``B\!`*JY +M`P`"I`(`LKD#``)5`0#NN0,``KH"``FZ`P`"/@(`&[H#``(;`@#VN@,``04` +M`/NZ`P`"KP(`+KL#``)]`@`_NP,``0$``%2[`P`"G0(`P;T#``+]`0#JO0,` +M`C(!`!B^`P`"R0$`A+X#``+)`0#9O@,``KH"`!B_`P`"R0$`>K\#``*Z`@#` +MP`,``I0!`!;!`P`"U`$`,<$#``*]`0!IP0,``E4!`)3!`P`"P0$`L<$#``)] +M`@#%P0,``6\!`-K!`P`"G0(`-<,#``+S`0"6PP,``0,``,K#`P`"60$`,\0# +M``)9`0"<Q`,``ED!``7%`P`"60$`3\8#``$#``"2Q@,``ED!``''`P`"60$` +M9L<#``)9`0#+QP,``ED!`#'(`P`"60$`EL@#``)9`0#@R`,``IL"`!3)`P`" +M60$`7LD#``*;`@"2R0,``ED!`-S)`P`"FP(`$,H#``)9`0!:R@,``IL"`([* +M`P`"60$`Y,H#``*5`0`BRP,``I4!`&#+`P`"E0$`GLL#``*5`0#<RP,``I4! +M`!?,`P`"E0$`P,P#``$)``#+S`,``0D``.G.`P`"C`(`$L\#``*,`@!4SP,` +M`0,``&G/`P`!!P``=<\#``$'``"!SP,``0<``(K/`P`!!P``D,\#``$'``"M +MSP,``0<``.W/`P`"Q@(`(=`#``*_`@!6T`,``6H!`&/0`P`!:@$`C]`#``%J +M`0"LT`,``6H!`+70`P`!:@$`O-`#``%J`0#8T`,``6H!`.;0`P`!:@$`.=(# +M``+S`0"STP,``J4!`.'3`P`""P(`]M,#``*E`0!UUP,``J4!`*/7`P`""P(` +MN-<#``*E`0!EVP,``J4!`)/;`P`""P(`J-L#``*E`0`EWP,``J4!`%/?`P`" +M"P(`:-\#``*E`0"PX0,``@8"`'_C`P`"A`(`T^0#``$!``!!Y0,``BH"`%'E +M`P`"PP$`<>4#``(L`0"1Y0,``L,!`*?E`P`"1`(`W.4#``(L`0#QY0,``GX! +M`";F`P`"+`$`9>8#``*$`@#7Y@,``H0"`!'G`P`"0P$`(^<#``)#`@"IZ0,` +M`L8"`-#I`P`"Q@(`"^L#``(N`@!;ZP,``LD!`*WK`P`"N@$`WNL#``+1`0`< +M[`,``HT!`$'L`P`"&@(`;.P#``+)`0#'[`,``ID!``7M`P`!G`(`#NT#``&< +M`@`A[0,``50"`%+M`P`!D@(`&.X#``&2`@!H[@,``F4"`.7N`P`!2@(`\.X# +M``%*`@#Y[@,``50"``3O`P`!5`(`&.\#``%*`@"B[P,``4H"`)'P`P`!D@(` +M0?$#``*G`@!Z\0,``J<"`/?Q`P`"IP(`'/(#``+#`@"&\@,``J<"`+#R`P`" +M=P(`T/(#``*G`@#L\@,``L,"`,GS`P`"PP(`/O0#``)]`@#*]`,``6`"`-_T +M`P`"?0(`\_0#``%6`@`%]0,``IT"`(KU`P`!8`(`G_4#``)]`@"S]0,``58" +M`,7U`P`"G0(`_/4#``*R`@!>]@,``HT"`*KV`P`"T0(`]/8#``*I`@`U]P,` +M`;4"`&WW`P`"40(`>_@#``+``@"D^`,``F$"`+KX`P`!I0(`RO@#``)J`@#7 +M^`,``E("`.GX`P`"7`(`7_D#``$)``!\^0,``0D``(SY`P`!"0``G/D#``'. +M`@"\^0,``K("`,OY`P`!`0``UOD#``$)``#W^0,``J,"``OZ`P`!"0``.OH# +M``&W`@!`^@,``0D``$3Z`P`!TP(`2OH#``$)``!2^@,``0D``&#Z`P`!"0`` +M9?H#``*=`@#)^@,``4H"`!#[`P`"TP(`.OL#``*D`@!"^P,``H4"`)7[`P`" +M8@(`V_L#``*C`@#U^P,``J,"`%W\`P`"HP(`A?P#``)O`@!0_0,``H$"`%O] +M`P`"L@(`I/T#``*C`@#$_0,``DP"`#[^`P`"L`(`7OX#``*P`@!I_@,``4H" +M`*G^`P`"L`(`ROX#``*P`@#L_@,``K`"`!#_`P`"L`(`-_\#``*P`@!:_P,` +M`H8"`'7_`P`"L`(`>_\#``%*`@#$_P,``9("`,G_`P`"M@(`X_\#``&2`@!) +M``0``9("`%4`!``!I0(`?@`$``):`@"7``0``K("`*\`!``!"0``N@`$``$) +M``"A`00``J,"`+@!!``!D@(`^0$$``*!`@`J`@0``J,"`$`"!``!2@(`?0($ +M``&2`@#(\@,``J<"`&#S`P`"=P(`X/,#``)W`@#5]@,``J,"`"[[`P`"IP(` +MOP($``$!``#8`@0``0<``'P#!``!`0``D`4$``*S`@#S!00``J8"`!L&!``! +M`0``1`8$``*F`@":!@0``0,``*0&!``!`P``X08$``$!``!7!P0``D8"`(D' +M!``!`0``V`<$``*'`@#R!P0``I,"`!<(!``!G`(`'0@$``$'```Y"`0``0<` +M`$T(!``!!P``5@@$``$'``!<"`0``0<``&((!``"S0(`FP@$``*'`@"]"`0` +M`M`"`!D)!``"T`(`2@D$``*C`@!:"00``0$``'L)!``"T`(`G0D$``$'``"K +M"00``H`"`/D*!``!!P```PL$``*``@`+"P0``K("`/P+!``!!P``!@P$``*` +M`@`.#`0``K("`+T,!``!!P``QPP$``*``@#/#`0``K("`%8-!``!!P``8`T$ +M``*``@!H#00``K("`-D-!``!!P``XPT$``*``@#K#00``K("`&@.!``!!P`` +M<@X$``*``@!^#@0``J,"`)X.!``!!P``J`X$``*``@#*#@0``J,"`/$.!``" +MHP(`-P\$``)K`@!0#P0``K("`&,/!``!`0``H0\$``)&`@#@#P0``0<``.@/ +M!``"@`(`!Q`$``*P`@`W$`0``0,``'P0!``"T`(`JA`$``)K`@"W$`0``KP" +M`-D0!``"L@(`Z1`$``$!```"$00``M`"``\1!``"O`(`2Q$$``$#``"P$00` +M`M`"```2!``"HP(`$Q($``$!```8$@0``E@"`#@2!``!I0(`J1($``)?`@#- +M$@0``0<``-<2!``"@`(`XQ($``*C`@`3$P0``FL"`"P3!``"9`(`R!4$``)D +M`@`/%@0``E\"`(@6!``"9`(`SA8$``)?`@`:%P0``0<``"07!``"@`(`+!<$ +M``*R`@!N%P0``H$"`),7!``!I0(`TQ<$``)?`@`:&`0``E\"`(P8!``"7P(` +MKQ@$``)K`@#$&`0``;4"`/@8!``!!P```AD$``*``@`.&00``J,"`%T:!``" +M9`(`NQH$``&E`@`F&P0``E\"`(@;!``"9`(`DQL$``$%``"G&P0``J\"`.H; +M!``"9`(`]1L$``$%```)'`0``J\"`%4<!``"7P(`?QP$``)D`@"I'`0``F0" +M`/$<!``!!@``]AP$``*O`@`_'@0``F0"`(,>!``"7P(`T1X$``)?`@`('P0` +M`ET"`&(?!``"7P(`E1\$``)D`@"T'P0``H@"`'\@!``"7P(`C"`$``$%``#1 +M(`0``J\"`)LA!``"9`(`VB$$``)?`@`S(@0``E\"`%XB!``!!@``8R($``*O +M`@"'(@0``F0"`,LB!``"7P(`'R,$``)?`@!K(P0``04``'`C!``"KP(`HB,$ +M``*$`@#C(P0``E\"`/<C!``":0(`,R0$``)?`@!W)`0``E\"`+HD!``"7P(` +MV"0$``*!`@#Q)`0``F0"`!HE!``"B`(`@B4$``)E`@!<)@0``LL"`(PF!``" +M1P(`ZB8$``&E`@`C)P0``F<"`%LG!``"8@(`<B<$``&U`@#D)P0``L4"`.XG +M!``"7`(`"B@$``%)`@`I*`0``M`"`-8H!``"7@(`YB@$``*!`@`R*@0``EX" +M`%(J!``"7@(`Y"L$``*(`@!V+`0``H$"`.4L!``"70(`2RT$``),`@!5+00` +M`K,"`)\M!``"2`(`UBT$``),`@#_+00``J,"`#LN!``"80(`5RX$``)1`@`0 +M+P0``K,"`(,O!``"Q0(`H2\$``)J`@#1+P0``E("`/0O!``"L@(`$#`$``$! +M```^,`0``D8"`%DQ!``"R@(`NC$$``$!``#Z,00``M`"`)`R!``"R@(`LC($ +M``+0`@`V,P0``FL"`"@&!``"JP(`F`<$``*K`@"Q!P0``H<"`.4)!``"HP(` +MK2<$``)K`@#;)P0``J,"`/8H!``"70(`;RT$``*!`@#.+00``ET"`#@R!``" +MR@(`9#,$``&2`@`L-`0``9("`.$T!``!D@(`SC4$``&2`@!]-P0``0,``*DX +M!``"FP(`&#H$``*;`@#@.@0``IL"`(\\!``"<`(`Z#T$``)P`@`C/P0``0,` +M`+=`!``"<`(`-$$$``)P`@`*0@0``G`"`#-"!``!"0``5D($``$)``!C0@0` +M`0D``&Q"!``!"0``=4($``$)``!^0@0``0D``(="!``!"0``D$($``$)``"9 +M0@0``0D``*)"!``!"0``JT($``$)``"T0@0``0D``+U"!``!"0``PT($``$) +M```60P0``D\"`%Q(!``"<`(`G$@$``)P`@#<2`0``G`"`$))!``"<`(`G4D$ +M``)P`@`"2@0``G`"`'%*!``!I0(`DTH$``)P`@"?2@0``G`"`$9+!``"<`(` +M:4L$``)P`@!F3`0``G`"`(E,!``"<`(`%$T$``)P`@`V300``G`"`)I-!``" +M<`(`IDT$``)P`@#4300``G`"`/9-!``"<`(`5TX$``)P`@!C3@0``G`"`)E. +M!``"<`(`NTX$``)P`@`53P0``G`"`"%/!``"<`(`A4\$``)P`@"13P0``G`" +M`/5/!``"<`(``5`$``)P`@!E4`0``G`"`'%0!``"<`(`U5`$``)P`@#A4`0` +M`G`"`$51!``"<`(`45$$``)P`@"U400``G`"`,%1!``"<`(`15($``)P`@!1 +M4@0``G`"`+52!``"<`(`P5($``)P`@`L4P0``G`"`#A3!``"<`(`1E,$``)P +M`@!04P0``G`"`.53!``"<`(`\5,$``)P`@!55`0``G`"`&%4!``"<`(`V50$ +M``)P`@#F5`0``G`"`$E5!``"<`(`5E4$``)P`@!;5@0``G`"`&E6!``"<`(` +M"U<$``)P`@`95P0``G`"`'57!``"<`(`@5<$``)P`@`(6`0``G`"`!18!``" +M<`(`F%@$``)P`@"D6`0``G`"`!19!``"<`(`(%D$``)P`@`N6@0``G`"`#Q: +M!``"<`(`&%L$``)P`@`F6P0``G`"`.!;!``"<`(`[EL$``)P`@`K7`0``0<` +M`#A<!``!!P``>%T$``$!``!P7@0``D\"`!5?!``!M0(`C%\$``*F`@"Q7P0` +M`0$``+E?!``"JP(`_E\$``*F`@`(8`0``K("`&U@!``"JP(`M6`$``*F`@#V +M8`0``0$```-A!``!`0``"V$$``*K`@`5800``J<"`%5A!``"L@(`W&$$``*C +M`@#T800``08``/EA!``"KP(`)6($``*R`@"-8@0``J,"`*5B!``!!@``JF($ +M``*O`@!.8P0``0$``(QC!``!`0``I6,$``+0`@#,8P0``0$``.5C!``"T`(` +M#&0$``$!```E9`0``M`"`$QD!``!`0``960$``+0`@",9`0``0$``*5D!``" +MT`(`S&0$``$!``#E9`0``M`"``QE!``!`0``)64$``+0`@!,900``0$``&5E +M!``"T`(`C&4$``$!``"E900``M`"`,QE!``!`0``Y64$``+0`@`,9@0``0$` +M`"5F!``"T`(`3&8$``$!``!E9@0``M`"`(QF!``!`0``I68$``+0`@#,9@0` +M`0$``.5F!``"T`(`#&<$``$!```E9P0``M`"`$QG!``!`0``96<$``+0`@", +M9P0``0$``*5G!``"T`(`S&<$``$!``#E9P0``M`"``QH!``!`0``)6@$``+0 +M`@!,:`0``0$``&5H!``"T`(`?6@$``$!``"8:`0``M`"`*UH!``!`0``RV@$ +M``+0`@`.:00``J,"`!AI!``!`0``,VD$``+0`@"K:00``0$``,9I!``"T`(` +M.VH$``*'`@!5:@0``J8"`'9J!``!`0``RFH$``*C`@"`:P0``04``(EK!``" +MKP(`F6L$``)K`@"M:P0``J,"`+5K!``"AP(`WFL$``$%``#G:P0``J\"`/=K +M!``":P(`&VP$``*'`@`B;`0``0$``#YL!``"T`(`J6P$``*C`@"Q;`0``H<" +M``MM!``!`0``*6T$``+0`@#,;00``G`"`,)N!``"7P(`W&X$``$!``#U;@0` +M`I,"`'AO!``"7P(`M&\$``)P`@!><`0``E\"`(9P!``!`0``GW`$``*3`@#F +M<`0``H<"`/!P!``!`0``"7$$``*3`@"W<00``0$``(AR!``!`0``H7($``*3 +M`@!]<P0``0$``(]S!``"DP(`K',$``&2`@!6=`0``0$``')T!``"DP(`EW0$ +M``$)``"A=`0``0D``+-T!``!"0``NW0$``$)``#$=`0``0D``,UT!``!"0`` +MUG0$``$)``#?=`0``0D``.AT!``!"0``\70$``$)``#Z=`0``0D```-U!``! +M"0``#'4$``$)```F=00``0D``#!U!``!`0``274$``*3`@#%=00``0$``-YU +M!``"DP(`;W8$``$!``"(=@0``I,"`,UV!``"<`(`%W<$``$!```X=P0``I," +M`'UW!``"<`(`MW<$``$!``#8=P0``I,"`!IX!``!D@(`9G@$``$!``"">`0` +M`I,"`,QX!``!D@(`1GD$``$!``!F>00``I,"`!YZ!``!`0``-WH$``*3`@#Z +M>@0``0$``!-[!``"DP(`^GL$``$!```3?`0``I,"`.I\!``!`0```WT$``*3 +M`@#:?00``0$``/-]!``"DP(`O'X$``$!``#:?@0``I,"`!E_!``!`0``,G\$ +M``*3`@#4?P0``0$``.U_!``"DP(`*H`$``$!``!(@`0``I,"`&*`!``!!@`` +M@8`$``&U`@"+@`0``0$``*2`!``"DP(`L8`$``$&``#,@`0``8H"`-.`!``! +M!@``XX`$``$&``#[@`0``0$``""!!``"T`(`*X$$``%.`@`U@00``08``$V! +M!``!`0``;8$$``$!``"/@00``I,"`/N!!``!`0``$8($``*3`@")@@0``G`" +M`+N"!``"HP(`PX($``*'`@#U@@0``0$```Z#!``"DP(`CH,$``$!``"M@P0` +M`M`"`-.#!``"1@(`\(,$``)P`@`0A`0``G`"`#J$!``"<`(`BH0$``)P`@#0 +MA`0``G`"`/N$!``"<`(`BX4$``)P`@"5A00``G`"`-"%!``"<`(`\(4$``)P +M`@`1A@0``G`"`)*&!``"<`(`TH8$``)P`@`/AP0``G`"`$^'!``"<`(`CX<$ +M``)P`@#/AP0``G`"`/*'!``!!@``G8@$``%@`@#;B`0``GT"`.^(!``!5@(` +M`8D$``*=`@`=B00``0$``#F)!``"DP(`3(D$``)+`@"TB00``J8"`%**!``! +M`0``6HH$``*K`@"/B@0``K("`+N*!``"A`(`V8H$``$!``#GB@0``0$```"+ +M!``"DP(`M(L$``$!``#-BP0``I,"`..+!``!`0``_(L$``*3`@`$C`0``H<" +M`"&,!``"<`(`08P$``)P`@!PC`0``G`"`(.,!``"I@(`O8P$``*$`@#HC`0` +M`0$``.^,!``!`0``*8T$``$!``!"C00``I,"`(Z-!``!`0``IXT$``*3`@#< +MC00``:4"`/6-!``!!@``"8X$``$&``!@C@0``4X"`&V.!``!`0``AHX$``*3 +M`@#4C@0``8H"`/2.!``!!@``$8\$``$&``!HCP0``;4"`+B/!``!8`(`KI$$ +M``)?`@`*D@0``E\"`%B2!``"7P(`VY0$``$!``#TE`0``I,"`%N6!``!`0`` +M=)8$``*3`@#2E@0``L@"`.&6!``"I@(`\I8$``$!``#ZE@0``JL"`"&7!``" +M<`(`*9<$``*M`@`SEP0``0$``$R7!``"DP(`<9<$``*M`@"!EP0``0$``)J7 +M!``"DP(`&9@$``$!``!`F`0``J`"`.&8!``!`0``'YH$``)K`@!-F@0``4X" +M`&^:!``":P(`BYH$``)K`@"DF@0``4X"`,Z:!``":P(`_YH$``)K`@`TFP0` +M`FL"`%2;!``":P(`YIL$``$!``#6G00``0$``.V=!``"H`(`7IX$``$!``!U +MG@0``J`"`(6>!``":P(`T9X$``$!``#HG@0``J`"`/B>!``":P(`)Y\$``)P +M`@`_GP0``0$``%B?!``"DP(`9Y\$``$#``"9GP0``FL"`#:@!``":`(`5J`$ +M``$!``!_H`0``J`"`(^@!``":P(`M:`$``)K`@`3H00``FL"`!FB!``":`(` +M4Z($``$!``!JH@0``J`"`'JB!``":P(`EJ($``)K`@!7HP0``FL"`.RC!``" +M:P(`9*0$``$!``![I`0``J`"`(ND!``":P(`UZ0$``)K`@`FI00``HL"`#:E +M!``"BP(`B:4$``)K`@#;I00``FL"`.ZE!``"Q0(`^Z4$``*M`@`)I@0``HL" +M`!FF!``"Q0(`.*8$``)H`@!>I@0``0$``'6F!``"H`(`A:8$``)K`@"=I@0` +M`GD"`,FF!``":`(``Z<$``$!```:IP0``J`"`"JG!``":P(`6J<$``$!``!Q +MIP0``J`"`(&G!``":P(`JZ<$``$!``#4IP0``J`"`.2G!``":P(`T*H$``)H +M`@`7JP0``G`"`'"K!``"K0(`@*L$``$!``"9JP0``I,"`*FK!``"9P(`!:P$ +M``$!```>K`0``I,"`#VL!``"<`(`J*P$``)G`@`,K@0``04``!6N!``"KP(` +M%:\$``$!```NKP0``I,"`$VO!``"<`(`8Z\$``)G`@#EKP0``G`"`"&P!``" +M9P(`*[`$``$!``!$L`0``I,"`+RP!``"3`(`"[$$``*!`@`UL00``F,"`&BQ +M!``"7P(`O+$$``)?`@#)L00``F<"`/JQ!``"3`(`2K($``)P`@"#L@0``0$` +M`)RR!``"DP(`7[,$``*C`@"5LP0``GD"`!^T!``"<`(`0[0$``$#``!GM`0` +M`EH"`*:T!``"6@(`\[0$``)P`@",M@0``H@"`.VV!``"<`(`)+<$``);`@!7 +MMP0``DP"`&RW!``"@0(`EK@$``*;`@#DN`0``IL"`!^Y!``"<`(`>KD$``*( +M`@!WN@0``IL"`*^Z!``"4`(`'[P$``)P`@!?O`0``EL"`.:\!``"L@(`^[P$ +M``)Y`@`3O00``E4"`,2]!``"K0(`T+T$``*+`@`GO@0``0$``#Z^!``"H`(` +M3KX$``)K`@"PO@0``0$``,>^!``"H`(`U[X$``)K`@`:OP0``L@"`&^_!``" +M3`(`SK\$``$!``#EOP0``J`"`/F_!``":P(`8L`$``)P`@#&P`0``G`"`-C` +M!``!`0``\L`$``*+`@`(P00``L4"`$3!!``!`0``6\$$``*@`@!KP00``FL" +M`'G!!``!`0``H\($``)=`@#CP@0``HL"`/?"!``"R`(`D<,$``)P`@#1PP0` +M`EL"`&/$!``"3`(`DL0$``);`@#$Q`0``DP"`!?%!``"7@(`(\4$``)=`@!/ +MQ00``0$``(+%!``"<`(`I,4$``$!``#"Q00``I,"`"3&!``"A`(`CL8$``$! +M``"GQ@0``I,"`.W&!``!`0``!L<$``*3`@`MQP0``H<"`'3'!``"R`(`?,<$ +M``*+`@",QP0``0$``*K'!``"DP(`/<D$``*$`@!-R00``LL"`!?*!``"<`(` +M<<H$``*L`@"KR@0``0$``,3*!``"DP(`=\L$``)3`@!;S`0``ED"`'_.!``" +MA`(`C\X$``++`@#_S@0``EP"``_/!``"<`(`*,\$``*S`@`PSP0``EP"`#[/ +M!``!`0``5\\$``*3`@"2SP0``J,"`/_/!``!`0``(=`$``)_`@!@T`0``G`" +M`,;1!``!`0``^M$$``+'`@`&TP0``I<"`/?3!``"I@(`&]0$``$!``!5U`0` +M`H<"`'74!``!`0``BM8$``$%``"3U@0``J\"`-;8!``":`(`#=D$``*R`@"> +MV@0``0$``';;!``!`0``Y-L$``*;`@`+W`0``K("`"K<!``"I@(`DMP$``&* +M`@#9W`0``J,"`.7<!``"AP(`+-T$``*C`@`XW00``H<"`%C=!``"HP(`:=T$ +M``$!``#OW00``0$``!7>!``!`0``L]X$``$!``!ZWP0``G`"`-K?!``"<`(` +M:N`$``)P`@#YX`0``G`"`%/A!``"<`(`\^$$``)P`@"EX@0``G@"`+?B!``! +MG`(`+N,$``*Q`@!(XP0``I$"`,;C!``"HP(`U>,$``*'`@#?XP0``0$``/CC +M!``"DP(`@N0$``*C`@"1Y`0``H<"`)OD!``!`0``M.0$``*3`@`:Y00``FL" +M`&?E!``"<`(`<^4$``)P`@"GY00``L0"`!7F!``"Q`(`"^<$``)P`@`ZYP0` +M`L0"`$WG!``!`0``9N<$``*3`@#-YP0``G`"`-7G!``"LP(``^@$``)P`@`L +MZ`0``0$``$7H!``"DP(`7^@$``)P`@#VZ`0``H<"``#I!``!`0``&>D$``*3 +M`@#;Z00``D<"`"OJ!``!D@(`..H$``&2`@!`Z@0``LP"`)KJ!``"6@(`Z>H$ +M``&2`@`QZP0``0$``$KK!``"DP(`SNL$``$!``#:ZP0``E@"`!OL!``!`0`` +M-.P$``*3`@!9[`0``0$``'CL!``"T`(`S>P$``)B`@#=[`0``;4"`/#L!``" +M:P(`/NT$``$!``"`[00``J,"`)WM!``"HP(`JNT$``)<`@#?[00``G`"`.GM +M!``"<`(`]>T$``)F`@#\[00``0$``"+N!``"DP(`2.X$``%@`@!^[@0``6`" +M`(KN!``"<@(`JNX$``%6`@"\[@0``IT"`!3O!``"A`(`.N\$``$!``!3[P0` +M`I,"`*;O!``!`0``O^\$``*3`@`G\`0``G`"`'[P!``"K`(`MO`$``$!``#/ +M\`0``I,"`%OQ!``"4P(`/_($``)9`@#W\@0``G`"`%[S!``!`0``=_,$``*3 +M`@#C\P0``E,"`-?T!``"<`(`./4$``$!``!1]00``I,"`+'U!``"4P(`EO8$ +M``&2`@#:]@0``0$``//V!``"DP(`!O<$``)P`@!+]P0``F<"`%3X!``"BP(` +M<_@$``$#``#>^00``0$```?Z!``"<`(`XOH$``*+`@#L^@0``0$```7[!``" +MDP(`/OL$``)P`@!V^P0``H0"`)?[!``!`0``M?L$``*3`@`;_`0``J8"`"O\ +M!``!B@(``?T$``$!```(_00``0$``-/]!``"F`(`]_T$``$!```3_@0``I," +M`(/^!``!`0``G/X$``+0`@#0_P0``H<"`.?_!``!`0`````%``*3`@"*``4` +M`H<"`+8`!0`"F`(`+`$%``*'`@#.`04``I@"`.4!!0`"F`(`]@(%``*'`@!1 +M`P4``J,"`'$#!0`"<`(`E`,%``)C`@"K`P4``0$``,0#!0`"DP(`<00%``$! +M``"*!`4``I,"`)H$!0`":P(`IP0%``$!``#(!`4``I,"`-MB!``"IP(`86,$ +M``*A`@!_:00``JL"`-AI!``"AP(`CFH$``*K`@#>:@0``H<"`*5M!``"JP(` +M?H,$``*K`@`+C00``JL"`$2<!``"H0(`N,\$``)2`@"?U`0``I,"`)[8!``" +MJP(`V]H$``)_`@"@VP0``I,"`$K>!``"?P(`1M\$``*K`@"![`0``DD"`''M +M!``"T`(`,?X$``*K`@!1`04``JL"`&8"!0`"JP(`L`(%``*K`@""!P4``M`" +M`*8'!0`";P(`VP<%``*8`@"V"@4``0$``"$+!0`"C0(`6PL%``$!``!F"P4` +M`0$``%@,!0`">0(`80T%``*-`@"\#04``7$"`-4-!0`"QP(`4`X%``*C`@"! +M$`4``7$"`)H0!0`"QP(`K!`%``)Q`@!3$04``LH"`(,1!0`"T`(`(1(%``*K +M`@!%$@4``DT"`)02!0`"JP(`/`<%``+0`@`-#`4``JL"`.P-!0`"<0(`?0X% +M``+*`@#H#@4``JL"`(P2!0`"IP(`'Q,%``)H`@"#%04``G,"`+\5!0`"<P(` +MVA4%``)S`@"*%@4``E`"`),7!0`"50(`UA@%``*;`@"[&04``FL"`/`9!0`" +M6P(`CAH%``*+`@!='04``FD"`&T=!0`"9`(`H!T%``)?`@#U'04``E\"`!(> +M!0`"9P(`I!X%``*+`@#:'@4``GD"`/,>!0`">0(``1\%``)Y`@`1'P4``HL" +M`!D?!0`"BP(`;!\%``$#``#U'P4``HD"`$P@!0`";0(`G2`%``)2`@`M(04` +M`HL"`$0B!0`"K0(`IB(%``*;`@"^(@4``EL"`,XB!0`"B0(`_R(%``*(`@`^ +M)04``E\"`(`E!0`"7P(`DR4%``)I`@!')@4``E\"`&`F!0`":0(`B"8%``)D +M`@"F)@4``F0"`&DJ!0`"U0(`Q"H%``+5`@!G*P4``M4"`$TL!0`"L@(``2T% +M``)I`@`Y+04``E\"`$$M!0`":0(`4BT%``)I`@"N+04``E\"`+HM!0`":0(` +M,"X%``)H`@!'+@4``JT"`&8N!0`":`(`\RX%``+5`@#V,`4``K,"`!,Q!0`" +MK0(`'3$%``*+`@!7,04``HD"`*`7!0`";0(`T!D%``)M`@!8(04``JT"`,8O +M!0`"LP(`@3$%``%*`@"B,04``:H"`+TQ!0`!J@(`3C,%``$!``!M,P4``M`" +M`*@S!0`"D0(`[C,%``+2`@`.-`4``KT"```$```!`0``!`0```$!```(!``` +M`0$```P$```!`0``$`0```$!```4!````0$``!@$```!`0``'`0```$!```@ +M!````0$``"0$```!`0``*`0```$!```L!````0$``#`$```!`0``-`0```$! +M```X!````0$``#P$```!`0``0`0```$!``!$!````0$``$@$```!`0``3`0` +M``$!``!0!````0$``%0$```!`0``6`0```$!``!<!````0$``&`$```!`0`` +M9`0```$!``!H!````0$``&P$```!`0``<`0```$!``!T!````0$``'@$```! +M`0``?`0```$!``"`!````0$``(0$```!`0``B`0```$!``",!````0$``)`$ +M```!`0``E`0```$!``"8!````0$``)P$```!`0``H`0```$!``"D!````0$` +M`*@$```!`0``K`0```$!``"P!````0$``+0$```!`0``N`0```$!``"\!``` +M`0$``,`$```!`0``Q`0```$!``#(!````0$``,P$```!`0``T`0```$!``#4 +M!````0$``-@$```!`0``W`0```$!``#@!````0$``.0$```!`0``Z`0```$! +M``#L!````0$``/`$```!`0``]`0```$!``#X!````0$``/P$```!`0````4` +M``$!```$!0```0$```@%```!`0``#`4```$!```0!0```0$``!0%```!`0`` +M&`4```$!```<!0```0$``"`%```!`0``)`4```$!```H!0```0$``"P%```! +M`0``,`4```$!```T!0```0$``#@%```!`0``/`4```$!``!`!0```0$``$0% +M```!`0``2`4```$!``!,!0```0$``%`%```!`0``5`4```$!``!8!0```0$` +M`%P%```!`0``8`4```$!``!D!0```0$``&@%```!`0``;`4```$!``!P!0`` +M`0$``'0%```!`0``>`4```$!``!\!0```0$``(`%```!`0``A`4```$!``"( +M!0```0$``(P%```!`0``D`4```$!``"4!0```0$``)@%```!`0``G`4```$! +M``"@!0```0$``*0%```!`0``J`4```$!``"L!0```0$``+`%```!`0``M`4` +M``$!``"X!0```0$``+P%```!`0``P`4```$!``#$!0```0$``,@%```!`0`` +MS`4```$!``#0!0```0$``-0%```!`0``V`4```$!``#<!0```0$``.`%```! +M`0``Y`4```$!``#H!0```0$``.P%```!`0``\`4```$!``#T!0```0$``/@% +M```!`0``_`4```$!````!@```0$```0&```!`0``"`8```$!```,!@```0$` +M`!`&```!`0``%`8```$!```8!@```0$``!P&```!`0``(`8```$!```D!@`` +M`0$``"@&```!`0``+`8```$!```P!@```0$``#0&```!`0``.`8```$!```\ +M!@```0$``$`&```!`0``1`8```$!``!(!@```0$``$P&```!`0``4`8```$! +M``!4!@```0$``%@&```!`0``7`8```$!``!@!@```0$``&0&```!`0``:`8` +M``$!``!L!@```0$``'`&```!`0``=`8```$!``!X!@```0$``'P&```!`0`` +M@`8```$!``"$!@```0$``(@&```!`0``C`8```$!``"0!@```0$``)0&```! +M`0``F`8```$!``"<!@```0$``*`&```!`0``I`8```$!``"H!@```0$``*P& +M```!`0``L`8```$!``"T!@```0$``+@&```!`0``O`8```$!``#`!@```0$` +M`,0&```!`0``R`8```$!``#,!@```0$``-`&```!`0``U`8```$!``#8!@`` +M`0$``-P&```!`0``X`8```$!``#D!@```0$``.@&```!`0``[`8```$!``#P +M!@```0$``/0&```!`0``^`8```$!``#\!@```0$````'```!`0``!`<```$! +M```(!P```0$```P'```!`0``$`<```$!```4!P```0$``!@'```!`0``(`<` +M``$!```D!P```0$``"@'```!`0``+`<```$!```P!P```0$``#0'```!`0`` +M.`<```$!```\!P```0$``$`'```!`0``1`<```$!``!(!P```0$``$P'```! +M`0``4`<```$!``!4!P```0$``%@'```!`0``7`<```$!``!@!P```0$``&0' +M```!`0``:`<```$!``!L!P```0$``'`'```!`0``=`<```$!``!X!P```0$` +M`'P'```!`0````@```$!```$"````0$```@(```!`0``#`@```$!```0"``` +M`0$``!0(```!`0``&`@```$!```<"````0$``"`(```!`0``)`@```$!```H +M"````0$``"P(```!`0``,`@```$!```T"````0$``#@(```!`0``/`@```$! +M``!`"````0$``$0(```!`0``2`@```$!``!,"````0$``%`(```!`0``5`@` +M``$!``!8"````0$``%P(```!`0``8`@```$!``!D"````0$``&@(```!`0`` +M;`@```$!``!P"````0$``'0(```!`0``>`@```$!``!\"````0$``(`(```! +M`0``A`@```$!``"("````0$``(P(```!`0``D`@```$!``"<"````0$``*`( +M```!`0``I`@```$!``"H"````0$``*P(```!`0``L`@```$!``"T"````0$` +M`+@(```!`0``O`@```$!``#`"````0$``,0(```!`0``R`@```$!``#,"``` +M`0$``-`(```!`0``U`@```$!``#8"````0$``-P(```!`0``X`@```$!``#D +M"````0$``.@(```!`0``[`@```$!``#P"````0$``/0(```!`0``^`@```$! +M``#\"````0$````)```!`0``!`D```$!```("0```0$```P)```!`0``$`D` +M``$!```4"0```0$``!@)```!`0``'`D```$!```@"0```0$``"0)```!`0`` +M*`D```$!```L"0```0$``#`)```!`0``-`D```$!```X"0```0$``#P)```! +M`0``0`D```$!``!$"0```0$``$@)```!`0``3`D```$!``!0"0```0$``%0) +M```!`0``6`D```$!``!<"0```0$``&`)```!`0``9`D```$!``!H"0```0$` +M`&P)```!`0``<`D```$!``!T"0```0$``'@)```!`0``?`D```$!``"`"0`` +M`0$``(0)```!`0``B`D```$!``","0```0$``)`)```!`0``E`D```$!``"8 +M"0```0$``)P)```!`0``H`D```$!``"D"0```0$``*@)```!`0``K`D```$! +M``"P"0```0$``+0)```!`0``N`D```$!``"\"0```0$``,`)```!`0``Q`D` +M``$!``#("0```0$``,P)```!`0``T`D```$!``#4"0```0$``-@)```!`0`` +MW`D```$!``#@"0```0$``.0)```!`0``Z`D```$!``#L"0```0$``/`)```! +M`0``]`D```$!``#X"0```0$``/P)```!`0````H```$!```$"@```0$```@* +M```!`0``#`H```$!```0"@```0$``!0*```!`0``&`H```$!```<"@```0$` +M`"`*```!`0``)`H```$!```H"@```0$``"P*```!`0``,`H```$!```T"@`` +M`0$``#@*```!`0``/`H```$!``!`"@```0$``$0*```!`0``2`H```$!``!, +M"@```0$``%`*```!`0``5`H```$!``!8"@```0$``%P*```!`0``8`H```$! +M``!D"@```0$``&@*```!`0``;`H```$!``!P"@```0$``'0*```!`0``>`H` +M``$!``!\"@```0$``(`*```!`0``A`H```$!``"("@```0$``(P*```!`0`` +MD`H```$!``"4"@```0$``)@*```!`0``G`H```$!``"@"@```0$``*0*```! +M`0``J`H```$!``"L"@```0$``+`*```!`0``M`H```$!``"X"@```0$``+P* +M```!`0``P`H```$!``#$"@```0$``,@*```!`0``S`H```$!``#0"@```0$` +M`-0*```!`0``V`H```$!``#<"@```0$``.`*```!`0``Y`H```$!``#H"@`` +M`0$``.P*```!`0``\`H```$!``#T"@```0$``/@*```!`0``_`H```$!```` +M"P```0$```0+```!`0``"`L```$!```,"P```0$``!`+```!`0``%`L```$! +M```8"P```0$``!P+```!`0``(`L```$!```D"P```0$``"@+```!`0``+`L` +M``$!```P"P```0$``#0+```!`0``.`L```$!```\"P```0$``$`+```!`0`` +M1`L```$!``!("P```0$``$P+```!`0``4`L```$!``!4"P```0$``%@+```! +M`0``7`L```$!``!@"P```0$``&0+```!`0``:`L```$!``!L"P```0$``'`+ +M```!`0``=`L```$!``!X"P```0$``'P+```!`0``@`L```$!``"$"P```0$` +M`(@+```!`0``C`L```$!``"0"P```0$``)0+```!`0``F`L```$!``"<"P`` +M`0$``*`+```!`0``I`L```$!``"H"P```0$``*P+```!`0``L`L```$!``#@ +M#P```0$``.0/```!`0``Z`\```$!``#L#P```0$``/`/```!`0``]`\```$! +M``#X#P```0$``/P/```!`0```!````$!```$$````0$```@0```!`0``#!`` +M``$!```0$````0$``!00```!`0``&!````$!```<$````0$``"`0```!`0`` +M)!````$!```H$````0$``"P0```!`0``,!````$!```T$````0$``#@0```! +M`0``/!````$!``!`$````0$``$00```!`0``2!````$!``!,$````0$``%`0 +M```!`0``5!````$!``!8$````0$``%P0```!`0``8!````$!``!D$````0$` +M`&@0```!`0``;!````$!``!P$````0$``'00```!`0``>!````$!``!\$``` +M`0$``(`0```!`0``A!````$!``"($````0$``(P0```!`0``D!````$!``"4 +M$````0$``)@0```!`0``G!````$!``"@$````0$``*00```!`0``J!````$! +M``"L$````0$``+`0```!`0``M!````$!``"X$````0$``+P0```!`0``P!`` +M``$!``#$$````0$``,@0```!`0``S!````$!``#0$````0$``-00```!`0`` +MV!````$!``#<$````0$``.`0```!`0``Y!````$!``#H$````0$``.P0```! +M`0``\!````$!``#T$````0$``/@0```!`0``_!````$!````$0```0$```01 +M```!`0``"!$```$!```,$0```0$``!`1```!`0``%!$```$!```8$0```0$` +M`!P1```!`0``(!$```$!```D$0```0$``"@1```!`0``+!$```$!```P$0`` +M`0$``#01```!`0``.!$```$!```\$0```0$``$`1```!`0``1!$```$!``!( +M$0```0$``$P1```!`0``4!$```$!``!4$0```0$``%@1```!`0``7!$```$! +M``!@$0```0$``&01```!`0``:!$```$!``!L$0```0$``'`1```!`0``=!$` +M``$!``!X$0```0$``'P1```!`0``@!$```$!``"$$0```0$``(@1```!`0`` +MC!$```$!``"0$0```0$``)01```!`0``F!$```$!``"<$0```0$``*`1```! +M`0``I!$```$!``"H$0```0$``*P1```!`0``L!$```$!``"T$0```0$``+@1 +M```!`0``O!$```$!``#`$0```0$``,01```!`0``R!$```$!``#,$0```0$` +M`-`1```!`0``U!$```$!``#8$0```0$``-P1```!`0``X!$```$!``#D$0`` +M`0$``.@1```!`0``[!$```$!``#P$0```0$``/01```!`0``^!$```$!``#\ +M$0```0$````2```!`0``!!(```$!```($@```0$```P2```!`0``$!(```$! +M```4$@```0$``!@2```!`0``'!(```$!```@$@```0$``"02```!`0``*!(` +M``$!```L$@```0$``#`2```!`0``-!(```$!```X$@```0$``#P2```!`0`` +M0!(```$!``!$$@```0$``$@2```!`0``3!(```$!``!0$@```0$``%02```! +M`0``6!(```$!``!<$@```0$``&`2```!`0``9!(```$!``!H$@```0$``&P2 +M```!`0``<!(```$!``!T$@```0$``'@2```!`0``?!(```$!``"`$@```0$` +M`(02```!`0``B!(```$!``",$@```0$``)`2```!`0``E!(```$!``"8$@`` +M`0$``)P2```!`0``H!(```$!``"D$@```0$``*@2```!`0``K!(```$!``"P +M$@```0$``+02```!`0``N!(```$!``"\$@```0$``,`2```!`0``Q!(```$! +M``#($@```0$``,P2```!`0``T!(```$!``#4$@```0$``-@2```!`0``W!(` +M``$!``#@$@```0$``.02```!`0``Z!(```$!``#L$@```0$``/`2```!`0`` +M]!(```$!``#X$@```0$````3```!`0``!!,```$!```($P```0$```P3```! +M`0``$!,```$!```4$P```0$``!@3```!`0``'!,```$!```@$P```0$``"03 +M```!`0``*!,```$!```L$P```0$``#`3```!`0``-!,```$!```X$P```0$` +M`#P3```!`0``0!,```$!``!$$P```0$``$@3```!`0``3!,```$!``!0$P`` +M`0$``%03```!`0``6!,```$!``!<$P```0$``.`3```!`0``Y!,```$!``#H +M$P```0$``.P3```!`0``\!,```$!``#T$P```0$``/@3```!`0``_!,```$! +M````%````0$```04```!`0``"!0```$!```,%````0$``!`4```!`0``%!0` +M``$!```8%````0$``!P4```!`0``(!0```$!```D%````0$``"@4```!`0`` +M+!0```$!```P%````0$``#04```!`0``.!0```$!```\%````0$``$`4```! +M`0``1!0```$!``!(%````0$``$P4```!`0``4!0```$!``!4%````0$``%@4 +M```!`0``7!0```$!``!@%````0$``&04```!`0``:!0```$!``!L%````0$` +M`'`4```!`0``?!0```$!``"`%````0$``(04```!`0``B!0```$!``",%``` +M`0$``)`4```!`0``E!0```$!``"8%````0$``)P4```!`0``H!0```$!``"D +M%````0$``*@4```!`0``K!0```$!``"P%````0$``+04```!`0``N!0```$! +M``"\%````0$``,`4```!`0``Q!0```$!``#(%````0$``,P4```!`0``T!0` +M``$!``#4%````0$``-@4```!`0``W!0```$!``#@%````0$``.04```!`0`` +MZ!0```$!``#L%````0$``/`4```!`0``]!0```$!``#X%````0$``/P4```! +M`0```!4```$!```$%0```0$```@5```!`0``#!4```$!```0%0```0$``!05 +M```!`0``&!4```$!```<%0```0$``"`5```!`0``)!4```$!```H%0```0$` +M`"P5```!`0``,!4```$!```T%0```0$``#@5```!`0``/!4```$!``!`%0`` +M`0$``$05```!`0``2!4```$!``!,%0```0$``%`5```!`0``5!4```$!``!8 +M%0```0$``%P5```!`0``8!4```$!``!D%0```0$``&@5```!`0``;!4```$! +M``!P%0```0$``'05```!`0``>!4```$!``!\%0```0$``(`5```!`0``A!4` +M``$!``"(%0```0$``(P5```!`0``D!4```$!``"4%0```0$``)@5```!`0`` +MG!4```$!``"@%0```0$``,`5```!`0``Q!4```$!``#(%0```0$``,P5```! +M`0``T!4```$!``#4%0```0$``-@5```!`0``W!4```$!``#@%0```0$``.05 +M```!`0``Z!4```$!``#L%0```0$``/`5```!`0``]!4```$!``#X%0```0$` +M`/P5```!`0```!8```$!```$%@```0$```@6```!`0``#!8```$!```0%@`` +M`0$``!06```!`0``&!8```$!```<%@```0$``"`6```!`0``)!8```$!```H +M%@```0$``"P6```!`0``,!8```$!```T%@```0$``#@6```!`0``/!8```$! +M``!`%@```0$``$06```!`0``2!8```$!``!,%@```0$``%`6```!`0``5!8` +M``$!``!8%@```0$``%P6```!`0``8!8```$!``!D%@```0$``&@6```!`0`` +M;!8```$!``!P%@```0$``'06```!`0``>!8```$!``!\%@```0$``(`6```! +M`0``A!8```$!``"(%@```0$``(P6```!`0``D!8```$!``"4%@```0$``)@6 +M```!`0``G!8```$!``"@%@```0$``*06```!`0``J!8```$!``"L%@```0$` +M`+`6```!`0``M!8```$!``"X%@```0$``+P6```!`0``P!8```$!``#$%@`` +M`0$``,@6```!`0``S!8```$!``#0%@```0$``-06```!`0``V!8```$!``#< +M%@```0$``.`6```!`0``Y!8```$!``#H%@```0$``.P6```!`0``\!8```$! +M``#T%@```0$``/@6```!`0``_!8```$!````%P```0$```07```!`0``"!<` +M``$!```,%P```0$``!`7```!`0``%!<```$!```8%P```0$``!P7```!`0`` +M(!<```$!```D%P```0$``"@7```!`0``+!<```$!```P%P```0$``#07```! +M`0``.!<```$!```\%P```0$``$`7```!`0``1!<```$!``!(%P```0$``$P7 +M```!`0``4!<```$!``!4%P```0$``%@7```!`0``7!<```$!``!@%P```0$` +M`&07```!`0``:!<```$!``!L%P```0$``'`7```!`0``=!<```$!``!X%P`` +M`0$``'P7```!`0``@!<```$!``"$%P```0$``(@7```!`0``C!<```$!``"0 +M%P```0$``)07```!`0``F!<```$!``"<%P```0$``*`7```!`0``I!<```$! +M``"H%P```0$``*P7```!`0``L!<```$!``"T%P```0$``+@7```!`0``O!<` +M``$!``#`%P```0$``,07```!`0``R!<```$!``#,%P```0$```P8```!`0`` +M$!@```$!```4&````0$``!@8```!`0``'!@```$!```@&````0$``"08```! +M`0``*!@```$!```L&````0$``#`8```!`0``-!@```$!```X&````0$``#P8 +M```!`0``0!@```$!``!$&````0$``$@8```!`0``3!@```$!``!0&````0$` +M`%08```!`0``6!@```$!``!<&````0$``&`8```!`0``9!@```$!``!H&``` +M`0$``&P8```!`0``<!@```$!``!T&````0$``'@8```!`0``?!@```$!``"` +M&````0$``(08```!`0``B!@```$!``",&````0$``)`8```!`0``E!@```$! +M``"8&````0$``)P8```!`0``H!@```$!``"D&````0$``*@8```!`0``K!@` +M``$!``"P&````0$``+08```!`0``N!@```$!``"\&````0$``,`8```!`0`` +MQ!@```$!``#(&````0$``,P8```!`0``T!@```$!``#4&````0$``-@8```! +M`0``W!@```$!``#@&````0$``.08```!`0``Z!@```$!``#L&````0$``/`8 +M```!`0``]!@```$!``#X&````0$``/P8```!`0```!D```$!```$&0```0$` +M``@9```!`0``#!D```$!```0&0```0$``!09```!`0``&!D```$!``"````` +M`08``(P````!`0``D`````$!``"4`````0$``)@````!`0``G`````$!``"@ +M`````0$``*0````!`0``J`````$!``"L`````0$``+`````!`0``M`````$! +M``"X`````0$``+P````!`0``P`````$C`0#$`````0$``,@````!`0``S``` +M``$!``#0`````0$``-0````!`0``V`````$!``#<`````0$``.`````!`0`` +MY`````$!``#H`````0$``.P````!`0``\`````$!``#T`````0$``/@````! +M`0``_`````%$```$`0```0$```@!```!`0``#`$```$!```0`0```0$``!0! +M```!`0``&`$```'6``"``0```08``(P!```!`0``D`$```$!``"4`0```0$` +M`)@!```!`0``G`$```$!``"@`0```0$``*0!```!`0``J`$```$!``"L`0`` +M`0$``+`!```!`0``M`$```$!``"X`0```0$``+P!```!`0``P`$```$Y`0#$ +M`0```0$``,@!```!`0``S`$```$!``#0`0```0$``-0!```!`0``V`$```$! +M``#<`0```0$``.`!```!`0``Y`$```$!``#H`0```0$``.P!```!`0``\`$` +M``$!``#T`0```0$``/@!```!`0``_`$```$$`@`$`@```0$```@"```!`0`` +M#`(```$!```0`@```0$``!0"```!`0``&`(```$_`0!\`@```0$``(`"```! +M`0``A`(```$!``"0`@```0$``)0"```!`0``F`(```$!``#$`@```0$``,P" +M```!`0``V`(```$!``#@`@```0$``.P"```!`0``]`(```$!`````P```0$` +M``@#```!`0``%`,```$!```<`P```0$``"@#```!`0``,`,```$!```\`P`` +M`0$``$0#```!`0``4`,```$!``!4`P```0$``%@#```!`0``9`,```$!``!H +M`P```0$``&P#```!`0``>`,```$!``"``P```0$``(P#```!`0``E`,```$! +M``"@`P```0$``*0#```!`0``J`,```$!``"T`P```0$``+@#```!`0``O`,` +M``$!``#(`P```0$``,P#```!`0``T`,```$!``#<`P```0$``.`#```!`0`` +MY`,```$!``#P`P```0$``/0#```!`0``^`,```$!```$!````0$```P$```! +M`0``&`0```$!```@!````0$``"P$```!`0``-`0```$!``!`!````0$``$@$ +M```!`0``5`0```$!``!<!````0$``&@$```!`0``<`0```$!``!\!````0$` +M`(0$```!`0``D`0```$!``"8!````0$``*0$```!`0``K`0```$!``"X!``` +M`0$``,`$```!`0``S`0```$!``#0!````0$``-0$```!`0``X`0```$!``#D +M!````0$``.@$```!`0``]`0```$!``#\!````0$```@%```!`0``$`4```$! +M```<!0```0$``"0%```!`0``,`4```$!```X!0```0$``$0%```!`0``3`4` +M``$!``!8!0```0$``%P%```!`0``8`4```$!``!L!0```0$``'0%```!`0`` +M@`4```$!``"$!0```0$``(@%```!`0``E`4```$!``"<!0```0$``*@%```! +M`0``K`4```$!``"P!0```0$``+P%```!`0``Q`4```$!``#0!0```0$``-@% +M```!`0``Y`4```$!``#L!0```0$``/@%```!`0````8```$!```,!@```0$` +M`!`&```!`0``%`8```$!```@!@```0$``"0&```!`0``*`8```$!```T!@`` +M`0$``#P&```!`0``2`8```$!``!0!@```0$``%P&```!`0``9`8```$!``!P +M!@```0$``'@&```!`0``A`8```$!``",!@```0$``)@&```!`0``H`8```$! +M``"L!@```0$``+0&```!`0``P`8```$!``#(!@```0$``-0&```!`0``W`8` +M``$!``#H!@```0$``/`&```!`0``_`8```$!````!P```0$```0'```!`0`` +M$`<```$!```8!P```0$``"0'```!`0``+`<```$!```X!P```0$``$`'```! +M`0``3`<```$!``!4!P```0$``&`'```!`0``9`<```$!``!H!P```0$``'0' +6```!`0``>`<```$!``!\!P```0$````` ` end diff --git a/sys/dev/i40e/i40e_adminq_cmd.h b/sys/dev/i40e/i40e_adminq_cmd.h deleted file mode 100755 index 09b5887..0000000 --- a/sys/dev/i40e/i40e_adminq_cmd.h +++ /dev/null @@ -1,2180 +0,0 @@ -/****************************************************************************** - - Copyright (c) 2013-2014, Intel Corporation - All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are met: - - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - 2. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - - 3. Neither the name of the Intel Corporation nor the names of its - contributors may be used to endorse or promote products derived from - this software without specific prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE - LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - POSSIBILITY OF SUCH DAMAGE. - -******************************************************************************/ -/*$FreeBSD$*/ - -#ifndef _I40E_ADMINQ_CMD_H_ -#define _I40E_ADMINQ_CMD_H_ - -/* This header file defines the i40e Admin Queue commands and is shared between - * i40e Firmware and Software. - * - * This file needs to comply with the Linux Kernel coding style. - */ - -#define I40E_FW_API_VERSION_MAJOR 0x0001 -#define I40E_FW_API_VERSION_MINOR 0x0002 - -struct i40e_aq_desc { - __le16 flags; - __le16 opcode; - __le16 datalen; - __le16 retval; - __le32 cookie_high; - __le32 cookie_low; - union { - struct { - __le32 param0; - __le32 param1; - __le32 param2; - __le32 param3; - } internal; - struct { - __le32 param0; - __le32 param1; - __le32 addr_high; - __le32 addr_low; - } external; - u8 raw[16]; - } params; -}; - -/* Flags sub-structure - * |0 |1 |2 |3 |4 |5 |6 |7 |8 |9 |10 |11 |12 |13 |14 |15 | - * |DD |CMP|ERR|VFE| * * RESERVED * * |LB |RD |VFC|BUF|SI |EI |FE | - */ - -/* command flags and offsets*/ -#define I40E_AQ_FLAG_DD_SHIFT 0 -#define I40E_AQ_FLAG_CMP_SHIFT 1 -#define I40E_AQ_FLAG_ERR_SHIFT 2 -#define I40E_AQ_FLAG_VFE_SHIFT 3 -#define I40E_AQ_FLAG_LB_SHIFT 9 -#define I40E_AQ_FLAG_RD_SHIFT 10 -#define I40E_AQ_FLAG_VFC_SHIFT 11 -#define I40E_AQ_FLAG_BUF_SHIFT 12 -#define I40E_AQ_FLAG_SI_SHIFT 13 -#define I40E_AQ_FLAG_EI_SHIFT 14 -#define I40E_AQ_FLAG_FE_SHIFT 15 - -#define I40E_AQ_FLAG_DD (1 << I40E_AQ_FLAG_DD_SHIFT) /* 0x1 */ -#define I40E_AQ_FLAG_CMP (1 << I40E_AQ_FLAG_CMP_SHIFT) /* 0x2 */ -#define I40E_AQ_FLAG_ERR (1 << I40E_AQ_FLAG_ERR_SHIFT) /* 0x4 */ -#define I40E_AQ_FLAG_VFE (1 << I40E_AQ_FLAG_VFE_SHIFT) /* 0x8 */ -#define I40E_AQ_FLAG_LB (1 << I40E_AQ_FLAG_LB_SHIFT) /* 0x200 */ -#define I40E_AQ_FLAG_RD (1 << I40E_AQ_FLAG_RD_SHIFT) /* 0x400 */ -#define I40E_AQ_FLAG_VFC (1 << I40E_AQ_FLAG_VFC_SHIFT) /* 0x800 */ -#define I40E_AQ_FLAG_BUF (1 << I40E_AQ_FLAG_BUF_SHIFT) /* 0x1000 */ -#define I40E_AQ_FLAG_SI (1 << I40E_AQ_FLAG_SI_SHIFT) /* 0x2000 */ -#define I40E_AQ_FLAG_EI (1 << I40E_AQ_FLAG_EI_SHIFT) /* 0x4000 */ -#define I40E_AQ_FLAG_FE (1 << I40E_AQ_FLAG_FE_SHIFT) /* 0x8000 */ - -/* error codes */ -enum i40e_admin_queue_err { - I40E_AQ_RC_OK = 0, /* success */ - I40E_AQ_RC_EPERM = 1, /* Operation not permitted */ - I40E_AQ_RC_ENOENT = 2, /* No such element */ - I40E_AQ_RC_ESRCH = 3, /* Bad opcode */ - I40E_AQ_RC_EINTR = 4, /* operation interrupted */ - I40E_AQ_RC_EIO = 5, /* I/O error */ - I40E_AQ_RC_ENXIO = 6, /* No such resource */ - I40E_AQ_RC_E2BIG = 7, /* Arg too long */ - I40E_AQ_RC_EAGAIN = 8, /* Try again */ - I40E_AQ_RC_ENOMEM = 9, /* Out of memory */ - I40E_AQ_RC_EACCES = 10, /* Permission denied */ - I40E_AQ_RC_EFAULT = 11, /* Bad address */ - I40E_AQ_RC_EBUSY = 12, /* Device or resource busy */ - I40E_AQ_RC_EEXIST = 13, /* object already exists */ - I40E_AQ_RC_EINVAL = 14, /* Invalid argument */ - I40E_AQ_RC_ENOTTY = 15, /* Not a typewriter */ - I40E_AQ_RC_ENOSPC = 16, /* No space left or alloc failure */ - I40E_AQ_RC_ENOSYS = 17, /* Function not implemented */ - I40E_AQ_RC_ERANGE = 18, /* Parameter out of range */ - I40E_AQ_RC_EFLUSHED = 19, /* Cmd flushed because of prev cmd error */ - I40E_AQ_RC_BAD_ADDR = 20, /* Descriptor contains a bad pointer */ - I40E_AQ_RC_EMODE = 21, /* Op not allowed in current dev mode */ - I40E_AQ_RC_EFBIG = 22, /* File too large */ -}; - -/* Admin Queue command opcodes */ -enum i40e_admin_queue_opc { - /* aq commands */ - i40e_aqc_opc_get_version = 0x0001, - i40e_aqc_opc_driver_version = 0x0002, - i40e_aqc_opc_queue_shutdown = 0x0003, - i40e_aqc_opc_set_pf_context = 0x0004, - - /* resource ownership */ - i40e_aqc_opc_request_resource = 0x0008, - i40e_aqc_opc_release_resource = 0x0009, - - i40e_aqc_opc_list_func_capabilities = 0x000A, - i40e_aqc_opc_list_dev_capabilities = 0x000B, - - i40e_aqc_opc_set_cppm_configuration = 0x0103, - i40e_aqc_opc_set_arp_proxy_entry = 0x0104, - i40e_aqc_opc_set_ns_proxy_entry = 0x0105, - - /* LAA */ - i40e_aqc_opc_mng_laa = 0x0106, /* AQ obsolete */ - i40e_aqc_opc_mac_address_read = 0x0107, - i40e_aqc_opc_mac_address_write = 0x0108, - - /* PXE */ - i40e_aqc_opc_clear_pxe_mode = 0x0110, - - /* internal switch commands */ - i40e_aqc_opc_get_switch_config = 0x0200, - i40e_aqc_opc_add_statistics = 0x0201, - i40e_aqc_opc_remove_statistics = 0x0202, - i40e_aqc_opc_set_port_parameters = 0x0203, - i40e_aqc_opc_get_switch_resource_alloc = 0x0204, - - i40e_aqc_opc_add_vsi = 0x0210, - i40e_aqc_opc_update_vsi_parameters = 0x0211, - i40e_aqc_opc_get_vsi_parameters = 0x0212, - - i40e_aqc_opc_add_pv = 0x0220, - i40e_aqc_opc_update_pv_parameters = 0x0221, - i40e_aqc_opc_get_pv_parameters = 0x0222, - - i40e_aqc_opc_add_veb = 0x0230, - i40e_aqc_opc_update_veb_parameters = 0x0231, - i40e_aqc_opc_get_veb_parameters = 0x0232, - - i40e_aqc_opc_delete_element = 0x0243, - - i40e_aqc_opc_add_macvlan = 0x0250, - i40e_aqc_opc_remove_macvlan = 0x0251, - i40e_aqc_opc_add_vlan = 0x0252, - i40e_aqc_opc_remove_vlan = 0x0253, - i40e_aqc_opc_set_vsi_promiscuous_modes = 0x0254, - i40e_aqc_opc_add_tag = 0x0255, - i40e_aqc_opc_remove_tag = 0x0256, - i40e_aqc_opc_add_multicast_etag = 0x0257, - i40e_aqc_opc_remove_multicast_etag = 0x0258, - i40e_aqc_opc_update_tag = 0x0259, - i40e_aqc_opc_add_control_packet_filter = 0x025A, - i40e_aqc_opc_remove_control_packet_filter = 0x025B, - i40e_aqc_opc_add_cloud_filters = 0x025C, - i40e_aqc_opc_remove_cloud_filters = 0x025D, - - i40e_aqc_opc_add_mirror_rule = 0x0260, - i40e_aqc_opc_delete_mirror_rule = 0x0261, - - /* DCB commands */ - i40e_aqc_opc_dcb_ignore_pfc = 0x0301, - i40e_aqc_opc_dcb_updated = 0x0302, - - /* TX scheduler */ - i40e_aqc_opc_configure_vsi_bw_limit = 0x0400, - i40e_aqc_opc_configure_vsi_ets_sla_bw_limit = 0x0406, - i40e_aqc_opc_configure_vsi_tc_bw = 0x0407, - i40e_aqc_opc_query_vsi_bw_config = 0x0408, - i40e_aqc_opc_query_vsi_ets_sla_config = 0x040A, - i40e_aqc_opc_configure_switching_comp_bw_limit = 0x0410, - - i40e_aqc_opc_enable_switching_comp_ets = 0x0413, - i40e_aqc_opc_modify_switching_comp_ets = 0x0414, - i40e_aqc_opc_disable_switching_comp_ets = 0x0415, - i40e_aqc_opc_configure_switching_comp_ets_bw_limit = 0x0416, - i40e_aqc_opc_configure_switching_comp_bw_config = 0x0417, - i40e_aqc_opc_query_switching_comp_ets_config = 0x0418, - i40e_aqc_opc_query_port_ets_config = 0x0419, - i40e_aqc_opc_query_switching_comp_bw_config = 0x041A, - i40e_aqc_opc_suspend_port_tx = 0x041B, - i40e_aqc_opc_resume_port_tx = 0x041C, - i40e_aqc_opc_configure_partition_bw = 0x041D, - - /* hmc */ - i40e_aqc_opc_query_hmc_resource_profile = 0x0500, - i40e_aqc_opc_set_hmc_resource_profile = 0x0501, - - /* phy commands*/ - i40e_aqc_opc_get_phy_abilities = 0x0600, - i40e_aqc_opc_set_phy_config = 0x0601, - i40e_aqc_opc_set_mac_config = 0x0603, - i40e_aqc_opc_set_link_restart_an = 0x0605, - i40e_aqc_opc_get_link_status = 0x0607, - i40e_aqc_opc_set_phy_int_mask = 0x0613, - i40e_aqc_opc_get_local_advt_reg = 0x0614, - i40e_aqc_opc_set_local_advt_reg = 0x0615, - i40e_aqc_opc_get_partner_advt = 0x0616, - i40e_aqc_opc_set_lb_modes = 0x0618, - i40e_aqc_opc_get_phy_wol_caps = 0x0621, - i40e_aqc_opc_set_phy_debug = 0x0622, - i40e_aqc_opc_upload_ext_phy_fm = 0x0625, - - /* NVM commands */ - i40e_aqc_opc_nvm_read = 0x0701, - i40e_aqc_opc_nvm_erase = 0x0702, - i40e_aqc_opc_nvm_update = 0x0703, - i40e_aqc_opc_nvm_config_read = 0x0704, - i40e_aqc_opc_nvm_config_write = 0x0705, - - /* virtualization commands */ - i40e_aqc_opc_send_msg_to_pf = 0x0801, - i40e_aqc_opc_send_msg_to_vf = 0x0802, - i40e_aqc_opc_send_msg_to_peer = 0x0803, - - /* alternate structure */ - i40e_aqc_opc_alternate_write = 0x0900, - i40e_aqc_opc_alternate_write_indirect = 0x0901, - i40e_aqc_opc_alternate_read = 0x0902, - i40e_aqc_opc_alternate_read_indirect = 0x0903, - i40e_aqc_opc_alternate_write_done = 0x0904, - i40e_aqc_opc_alternate_set_mode = 0x0905, - i40e_aqc_opc_alternate_clear_port = 0x0906, - - /* LLDP commands */ - i40e_aqc_opc_lldp_get_mib = 0x0A00, - i40e_aqc_opc_lldp_update_mib = 0x0A01, - i40e_aqc_opc_lldp_add_tlv = 0x0A02, - i40e_aqc_opc_lldp_update_tlv = 0x0A03, - i40e_aqc_opc_lldp_delete_tlv = 0x0A04, - i40e_aqc_opc_lldp_stop = 0x0A05, - i40e_aqc_opc_lldp_start = 0x0A06, - - /* Tunnel commands */ - i40e_aqc_opc_add_udp_tunnel = 0x0B00, - i40e_aqc_opc_del_udp_tunnel = 0x0B01, - i40e_aqc_opc_tunnel_key_structure = 0x0B10, - - /* Async Events */ - i40e_aqc_opc_event_lan_overflow = 0x1001, - - /* OEM commands */ - i40e_aqc_opc_oem_parameter_change = 0xFE00, - i40e_aqc_opc_oem_device_status_change = 0xFE01, - - /* debug commands */ - i40e_aqc_opc_debug_get_deviceid = 0xFF00, - i40e_aqc_opc_debug_set_mode = 0xFF01, - i40e_aqc_opc_debug_read_reg = 0xFF03, - i40e_aqc_opc_debug_write_reg = 0xFF04, - i40e_aqc_opc_debug_modify_reg = 0xFF07, - i40e_aqc_opc_debug_dump_internals = 0xFF08, - i40e_aqc_opc_debug_modify_internals = 0xFF09, -}; - -/* command structures and indirect data structures */ - -/* Structure naming conventions: - * - no suffix for direct command descriptor structures - * - _data for indirect sent data - * - _resp for indirect return data (data which is both will use _data) - * - _completion for direct return data - * - _element_ for repeated elements (may also be _data or _resp) - * - * Command structures are expected to overlay the params.raw member of the basic - * descriptor, and as such cannot exceed 16 bytes in length. - */ - -/* This macro is used to generate a compilation error if a structure - * is not exactly the correct length. It gives a divide by zero error if the - * structure is not of the correct size, otherwise it creates an enum that is - * never used. - */ -#define I40E_CHECK_STRUCT_LEN(n, X) enum i40e_static_assert_enum_##X \ - { i40e_static_assert_##X = (n)/((sizeof(struct X) == (n)) ? 1 : 0) } - -/* This macro is used extensively to ensure that command structures are 16 - * bytes in length as they have to map to the raw array of that size. - */ -#define I40E_CHECK_CMD_LENGTH(X) I40E_CHECK_STRUCT_LEN(16, X) - -/* internal (0x00XX) commands */ - -/* Get version (direct 0x0001) */ -struct i40e_aqc_get_version { - __le32 rom_ver; - __le32 fw_build; - __le16 fw_major; - __le16 fw_minor; - __le16 api_major; - __le16 api_minor; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_get_version); - -/* Send driver version (indirect 0x0002) */ -struct i40e_aqc_driver_version { - u8 driver_major_ver; - u8 driver_minor_ver; - u8 driver_build_ver; - u8 driver_subbuild_ver; - u8 reserved[4]; - __le32 address_high; - __le32 address_low; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_driver_version); - -/* Queue Shutdown (direct 0x0003) */ -struct i40e_aqc_queue_shutdown { - __le32 driver_unloading; -#define I40E_AQ_DRIVER_UNLOADING 0x1 - u8 reserved[12]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_queue_shutdown); - -/* Set PF context (0x0004, direct) */ -struct i40e_aqc_set_pf_context { - u8 pf_id; - u8 reserved[15]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_set_pf_context); - -/* Request resource ownership (direct 0x0008) - * Release resource ownership (direct 0x0009) - */ -#define I40E_AQ_RESOURCE_NVM 1 -#define I40E_AQ_RESOURCE_SDP 2 -#define I40E_AQ_RESOURCE_ACCESS_READ 1 -#define I40E_AQ_RESOURCE_ACCESS_WRITE 2 -#define I40E_AQ_RESOURCE_NVM_READ_TIMEOUT 3000 -#define I40E_AQ_RESOURCE_NVM_WRITE_TIMEOUT 180000 - -struct i40e_aqc_request_resource { - __le16 resource_id; - __le16 access_type; - __le32 timeout; - __le32 resource_number; - u8 reserved[4]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_request_resource); - -/* Get function capabilities (indirect 0x000A) - * Get device capabilities (indirect 0x000B) - */ -struct i40e_aqc_list_capabilites { - u8 command_flags; -#define I40E_AQ_LIST_CAP_PF_INDEX_EN 1 - u8 pf_index; - u8 reserved[2]; - __le32 count; - __le32 addr_high; - __le32 addr_low; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_list_capabilites); - -struct i40e_aqc_list_capabilities_element_resp { - __le16 id; - u8 major_rev; - u8 minor_rev; - __le32 number; - __le32 logical_id; - __le32 phys_id; - u8 reserved[16]; -}; - -/* list of caps */ - -#define I40E_AQ_CAP_ID_SWITCH_MODE 0x0001 -#define I40E_AQ_CAP_ID_MNG_MODE 0x0002 -#define I40E_AQ_CAP_ID_NPAR_ACTIVE 0x0003 -#define I40E_AQ_CAP_ID_OS2BMC_CAP 0x0004 -#define I40E_AQ_CAP_ID_FUNCTIONS_VALID 0x0005 -#define I40E_AQ_CAP_ID_ALTERNATE_RAM 0x0006 -#define I40E_AQ_CAP_ID_SRIOV 0x0012 -#define I40E_AQ_CAP_ID_VF 0x0013 -#define I40E_AQ_CAP_ID_VMDQ 0x0014 -#define I40E_AQ_CAP_ID_8021QBG 0x0015 -#define I40E_AQ_CAP_ID_8021QBR 0x0016 -#define I40E_AQ_CAP_ID_VSI 0x0017 -#define I40E_AQ_CAP_ID_DCB 0x0018 -#define I40E_AQ_CAP_ID_FCOE 0x0021 -#define I40E_AQ_CAP_ID_RSS 0x0040 -#define I40E_AQ_CAP_ID_RXQ 0x0041 -#define I40E_AQ_CAP_ID_TXQ 0x0042 -#define I40E_AQ_CAP_ID_MSIX 0x0043 -#define I40E_AQ_CAP_ID_VF_MSIX 0x0044 -#define I40E_AQ_CAP_ID_FLOW_DIRECTOR 0x0045 -#define I40E_AQ_CAP_ID_1588 0x0046 -#define I40E_AQ_CAP_ID_IWARP 0x0051 -#define I40E_AQ_CAP_ID_LED 0x0061 -#define I40E_AQ_CAP_ID_SDP 0x0062 -#define I40E_AQ_CAP_ID_MDIO 0x0063 -#define I40E_AQ_CAP_ID_FLEX10 0x00F1 -#define I40E_AQ_CAP_ID_CEM 0x00F2 - -/* Set CPPM Configuration (direct 0x0103) */ -struct i40e_aqc_cppm_configuration { - __le16 command_flags; -#define I40E_AQ_CPPM_EN_LTRC 0x0800 -#define I40E_AQ_CPPM_EN_DMCTH 0x1000 -#define I40E_AQ_CPPM_EN_DMCTLX 0x2000 -#define I40E_AQ_CPPM_EN_HPTC 0x4000 -#define I40E_AQ_CPPM_EN_DMARC 0x8000 - __le16 ttlx; - __le32 dmacr; - __le16 dmcth; - u8 hptc; - u8 reserved; - __le32 pfltrc; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_cppm_configuration); - -/* Set ARP Proxy command / response (indirect 0x0104) */ -struct i40e_aqc_arp_proxy_data { - __le16 command_flags; -#define I40E_AQ_ARP_INIT_IPV4 0x0008 -#define I40E_AQ_ARP_UNSUP_CTL 0x0010 -#define I40E_AQ_ARP_ENA 0x0020 -#define I40E_AQ_ARP_ADD_IPV4 0x0040 -#define I40E_AQ_ARP_DEL_IPV4 0x0080 - __le16 table_id; - __le32 pfpm_proxyfc; - __le32 ip_addr; - u8 mac_addr[6]; -}; - -/* Set NS Proxy Table Entry Command (indirect 0x0105) */ -struct i40e_aqc_ns_proxy_data { - __le16 table_idx_mac_addr_0; - __le16 table_idx_mac_addr_1; - __le16 table_idx_ipv6_0; - __le16 table_idx_ipv6_1; - __le16 control; -#define I40E_AQ_NS_PROXY_ADD_0 0x0100 -#define I40E_AQ_NS_PROXY_DEL_0 0x0200 -#define I40E_AQ_NS_PROXY_ADD_1 0x0400 -#define I40E_AQ_NS_PROXY_DEL_1 0x0800 -#define I40E_AQ_NS_PROXY_ADD_IPV6_0 0x1000 -#define I40E_AQ_NS_PROXY_DEL_IPV6_0 0x2000 -#define I40E_AQ_NS_PROXY_ADD_IPV6_1 0x4000 -#define I40E_AQ_NS_PROXY_DEL_IPV6_1 0x8000 -#define I40E_AQ_NS_PROXY_COMMAND_SEQ 0x0001 -#define I40E_AQ_NS_PROXY_INIT_IPV6_TBL 0x0002 -#define I40E_AQ_NS_PROXY_INIT_MAC_TBL 0x0004 - u8 mac_addr_0[6]; - u8 mac_addr_1[6]; - u8 local_mac_addr[6]; - u8 ipv6_addr_0[16]; /* Warning! spec specifies BE byte order */ - u8 ipv6_addr_1[16]; -}; - -/* Manage LAA Command (0x0106) - obsolete */ -struct i40e_aqc_mng_laa { - __le16 command_flags; -#define I40E_AQ_LAA_FLAG_WR 0x8000 - u8 reserved[2]; - __le32 sal; - __le16 sah; - u8 reserved2[6]; -}; - -/* Manage MAC Address Read Command (indirect 0x0107) */ -struct i40e_aqc_mac_address_read { - __le16 command_flags; -#define I40E_AQC_LAN_ADDR_VALID 0x10 -#define I40E_AQC_SAN_ADDR_VALID 0x20 -#define I40E_AQC_PORT_ADDR_VALID 0x40 -#define I40E_AQC_WOL_ADDR_VALID 0x80 -#define I40E_AQC_ADDR_VALID_MASK 0xf0 - u8 reserved[6]; - __le32 addr_high; - __le32 addr_low; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_mac_address_read); - -struct i40e_aqc_mac_address_read_data { - u8 pf_lan_mac[6]; - u8 pf_san_mac[6]; - u8 port_mac[6]; - u8 pf_wol_mac[6]; -}; - -I40E_CHECK_STRUCT_LEN(24, i40e_aqc_mac_address_read_data); - -/* Manage MAC Address Write Command (0x0108) */ -struct i40e_aqc_mac_address_write { - __le16 command_flags; -#define I40E_AQC_WRITE_TYPE_LAA_ONLY 0x0000 -#define I40E_AQC_WRITE_TYPE_LAA_WOL 0x4000 -#define I40E_AQC_WRITE_TYPE_PORT 0x8000 -#define I40E_AQC_WRITE_TYPE_MASK 0xc000 - __le16 mac_sah; - __le32 mac_sal; - u8 reserved[8]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_mac_address_write); - -/* PXE commands (0x011x) */ - -/* Clear PXE Command and response (direct 0x0110) */ -struct i40e_aqc_clear_pxe { - u8 rx_cnt; - u8 reserved[15]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_clear_pxe); - -/* Switch configuration commands (0x02xx) */ - -/* Used by many indirect commands that only pass an seid and a buffer in the - * command - */ -struct i40e_aqc_switch_seid { - __le16 seid; - u8 reserved[6]; - __le32 addr_high; - __le32 addr_low; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_switch_seid); - -/* Get Switch Configuration command (indirect 0x0200) - * uses i40e_aqc_switch_seid for the descriptor - */ -struct i40e_aqc_get_switch_config_header_resp { - __le16 num_reported; - __le16 num_total; - u8 reserved[12]; -}; - -struct i40e_aqc_switch_config_element_resp { - u8 element_type; -#define I40E_AQ_SW_ELEM_TYPE_MAC 1 -#define I40E_AQ_SW_ELEM_TYPE_PF 2 -#define I40E_AQ_SW_ELEM_TYPE_VF 3 -#define I40E_AQ_SW_ELEM_TYPE_EMP 4 -#define I40E_AQ_SW_ELEM_TYPE_BMC 5 -#define I40E_AQ_SW_ELEM_TYPE_PV 16 -#define I40E_AQ_SW_ELEM_TYPE_VEB 17 -#define I40E_AQ_SW_ELEM_TYPE_PA 18 -#define I40E_AQ_SW_ELEM_TYPE_VSI 19 - u8 revision; -#define I40E_AQ_SW_ELEM_REV_1 1 - __le16 seid; - __le16 uplink_seid; - __le16 downlink_seid; - u8 reserved[3]; - u8 connection_type; -#define I40E_AQ_CONN_TYPE_REGULAR 0x1 -#define I40E_AQ_CONN_TYPE_DEFAULT 0x2 -#define I40E_AQ_CONN_TYPE_CASCADED 0x3 - __le16 scheduler_id; - __le16 element_info; -}; - -/* Get Switch Configuration (indirect 0x0200) - * an array of elements are returned in the response buffer - * the first in the array is the header, remainder are elements - */ -struct i40e_aqc_get_switch_config_resp { - struct i40e_aqc_get_switch_config_header_resp header; - struct i40e_aqc_switch_config_element_resp element[1]; -}; - -/* Add Statistics (direct 0x0201) - * Remove Statistics (direct 0x0202) - */ -struct i40e_aqc_add_remove_statistics { - __le16 seid; - __le16 vlan; - __le16 stat_index; - u8 reserved[10]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_add_remove_statistics); - -/* Set Port Parameters command (direct 0x0203) */ -struct i40e_aqc_set_port_parameters { - __le16 command_flags; -#define I40E_AQ_SET_P_PARAMS_SAVE_BAD_PACKETS 1 -#define I40E_AQ_SET_P_PARAMS_PAD_SHORT_PACKETS 2 /* must set! */ -#define I40E_AQ_SET_P_PARAMS_DOUBLE_VLAN_ENA 4 - __le16 bad_frame_vsi; - __le16 default_seid; /* reserved for command */ - u8 reserved[10]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_set_port_parameters); - -/* Get Switch Resource Allocation (indirect 0x0204) */ -struct i40e_aqc_get_switch_resource_alloc { - u8 num_entries; /* reserved for command */ - u8 reserved[7]; - __le32 addr_high; - __le32 addr_low; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_get_switch_resource_alloc); - -/* expect an array of these structs in the response buffer */ -struct i40e_aqc_switch_resource_alloc_element_resp { - u8 resource_type; -#define I40E_AQ_RESOURCE_TYPE_VEB 0x0 -#define I40E_AQ_RESOURCE_TYPE_VSI 0x1 -#define I40E_AQ_RESOURCE_TYPE_MACADDR 0x2 -#define I40E_AQ_RESOURCE_TYPE_STAG 0x3 -#define I40E_AQ_RESOURCE_TYPE_ETAG 0x4 -#define I40E_AQ_RESOURCE_TYPE_MULTICAST_HASH 0x5 -#define I40E_AQ_RESOURCE_TYPE_UNICAST_HASH 0x6 -#define I40E_AQ_RESOURCE_TYPE_VLAN 0x7 -#define I40E_AQ_RESOURCE_TYPE_VSI_LIST_ENTRY 0x8 -#define I40E_AQ_RESOURCE_TYPE_ETAG_LIST_ENTRY 0x9 -#define I40E_AQ_RESOURCE_TYPE_VLAN_STAT_POOL 0xA -#define I40E_AQ_RESOURCE_TYPE_MIRROR_RULE 0xB -#define I40E_AQ_RESOURCE_TYPE_QUEUE_SETS 0xC -#define I40E_AQ_RESOURCE_TYPE_VLAN_FILTERS 0xD -#define I40E_AQ_RESOURCE_TYPE_INNER_MAC_FILTERS 0xF -#define I40E_AQ_RESOURCE_TYPE_IP_FILTERS 0x10 -#define I40E_AQ_RESOURCE_TYPE_GRE_VN_KEYS 0x11 -#define I40E_AQ_RESOURCE_TYPE_VN2_KEYS 0x12 -#define I40E_AQ_RESOURCE_TYPE_TUNNEL_PORTS 0x13 - u8 reserved1; - __le16 guaranteed; - __le16 total; - __le16 used; - __le16 total_unalloced; - u8 reserved2[6]; -}; - -/* Add VSI (indirect 0x0210) - * this indirect command uses struct i40e_aqc_vsi_properties_data - * as the indirect buffer (128 bytes) - * - * Update VSI (indirect 0x211) - * uses the same data structure as Add VSI - * - * Get VSI (indirect 0x0212) - * uses the same completion and data structure as Add VSI - */ -struct i40e_aqc_add_get_update_vsi { - __le16 uplink_seid; - u8 connection_type; -#define I40E_AQ_VSI_CONN_TYPE_NORMAL 0x1 -#define I40E_AQ_VSI_CONN_TYPE_DEFAULT 0x2 -#define I40E_AQ_VSI_CONN_TYPE_CASCADED 0x3 - u8 reserved1; - u8 vf_id; - u8 reserved2; - __le16 vsi_flags; -#define I40E_AQ_VSI_TYPE_SHIFT 0x0 -#define I40E_AQ_VSI_TYPE_MASK (0x3 << I40E_AQ_VSI_TYPE_SHIFT) -#define I40E_AQ_VSI_TYPE_VF 0x0 -#define I40E_AQ_VSI_TYPE_VMDQ2 0x1 -#define I40E_AQ_VSI_TYPE_PF 0x2 -#define I40E_AQ_VSI_TYPE_EMP_MNG 0x3 -#define I40E_AQ_VSI_FLAG_CASCADED_PV 0x4 - __le32 addr_high; - __le32 addr_low; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_add_get_update_vsi); - -struct i40e_aqc_add_get_update_vsi_completion { - __le16 seid; - __le16 vsi_number; - __le16 vsi_used; - __le16 vsi_free; - __le32 addr_high; - __le32 addr_low; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_add_get_update_vsi_completion); - -struct i40e_aqc_vsi_properties_data { - /* first 96 byte are written by SW */ - __le16 valid_sections; -#define I40E_AQ_VSI_PROP_SWITCH_VALID 0x0001 -#define I40E_AQ_VSI_PROP_SECURITY_VALID 0x0002 -#define I40E_AQ_VSI_PROP_VLAN_VALID 0x0004 -#define I40E_AQ_VSI_PROP_CAS_PV_VALID 0x0008 -#define I40E_AQ_VSI_PROP_INGRESS_UP_VALID 0x0010 -#define I40E_AQ_VSI_PROP_EGRESS_UP_VALID 0x0020 -#define I40E_AQ_VSI_PROP_QUEUE_MAP_VALID 0x0040 -#define I40E_AQ_VSI_PROP_QUEUE_OPT_VALID 0x0080 -#define I40E_AQ_VSI_PROP_OUTER_UP_VALID 0x0100 -#define I40E_AQ_VSI_PROP_SCHED_VALID 0x0200 - /* switch section */ - __le16 switch_id; /* 12bit id combined with flags below */ -#define I40E_AQ_VSI_SW_ID_SHIFT 0x0000 -#define I40E_AQ_VSI_SW_ID_MASK (0xFFF << I40E_AQ_VSI_SW_ID_SHIFT) -#define I40E_AQ_VSI_SW_ID_FLAG_NOT_STAG 0x1000 -#define I40E_AQ_VSI_SW_ID_FLAG_ALLOW_LB 0x2000 -#define I40E_AQ_VSI_SW_ID_FLAG_LOCAL_LB 0x4000 - u8 sw_reserved[2]; - /* security section */ - u8 sec_flags; -#define I40E_AQ_VSI_SEC_FLAG_ALLOW_DEST_OVRD 0x01 -#define I40E_AQ_VSI_SEC_FLAG_ENABLE_VLAN_CHK 0x02 -#define I40E_AQ_VSI_SEC_FLAG_ENABLE_MAC_CHK 0x04 - u8 sec_reserved; - /* VLAN section */ - __le16 pvid; /* VLANS include priority bits */ - __le16 fcoe_pvid; - u8 port_vlan_flags; -#define I40E_AQ_VSI_PVLAN_MODE_SHIFT 0x00 -#define I40E_AQ_VSI_PVLAN_MODE_MASK (0x03 << \ - I40E_AQ_VSI_PVLAN_MODE_SHIFT) -#define I40E_AQ_VSI_PVLAN_MODE_TAGGED 0x01 -#define I40E_AQ_VSI_PVLAN_MODE_UNTAGGED 0x02 -#define I40E_AQ_VSI_PVLAN_MODE_ALL 0x03 -#define I40E_AQ_VSI_PVLAN_INSERT_PVID 0x04 -#define I40E_AQ_VSI_PVLAN_EMOD_SHIFT 0x03 -#define I40E_AQ_VSI_PVLAN_EMOD_MASK (0x3 << \ - I40E_AQ_VSI_PVLAN_EMOD_SHIFT) -#define I40E_AQ_VSI_PVLAN_EMOD_STR_BOTH 0x0 -#define I40E_AQ_VSI_PVLAN_EMOD_STR_UP 0x08 -#define I40E_AQ_VSI_PVLAN_EMOD_STR 0x10 -#define I40E_AQ_VSI_PVLAN_EMOD_NOTHING 0x18 - u8 pvlan_reserved[3]; - /* ingress egress up sections */ - __le32 ingress_table; /* bitmap, 3 bits per up */ -#define I40E_AQ_VSI_UP_TABLE_UP0_SHIFT 0 -#define I40E_AQ_VSI_UP_TABLE_UP0_MASK (0x7 << \ - I40E_AQ_VSI_UP_TABLE_UP0_SHIFT) -#define I40E_AQ_VSI_UP_TABLE_UP1_SHIFT 3 -#define I40E_AQ_VSI_UP_TABLE_UP1_MASK (0x7 << \ - I40E_AQ_VSI_UP_TABLE_UP1_SHIFT) -#define I40E_AQ_VSI_UP_TABLE_UP2_SHIFT 6 -#define I40E_AQ_VSI_UP_TABLE_UP2_MASK (0x7 << \ - I40E_AQ_VSI_UP_TABLE_UP2_SHIFT) -#define I40E_AQ_VSI_UP_TABLE_UP3_SHIFT 9 -#define I40E_AQ_VSI_UP_TABLE_UP3_MASK (0x7 << \ - I40E_AQ_VSI_UP_TABLE_UP3_SHIFT) -#define I40E_AQ_VSI_UP_TABLE_UP4_SHIFT 12 -#define I40E_AQ_VSI_UP_TABLE_UP4_MASK (0x7 << \ - I40E_AQ_VSI_UP_TABLE_UP4_SHIFT) -#define I40E_AQ_VSI_UP_TABLE_UP5_SHIFT 15 -#define I40E_AQ_VSI_UP_TABLE_UP5_MASK (0x7 << \ - I40E_AQ_VSI_UP_TABLE_UP5_SHIFT) -#define I40E_AQ_VSI_UP_TABLE_UP6_SHIFT 18 -#define I40E_AQ_VSI_UP_TABLE_UP6_MASK (0x7 << \ - I40E_AQ_VSI_UP_TABLE_UP6_SHIFT) -#define I40E_AQ_VSI_UP_TABLE_UP7_SHIFT 21 -#define I40E_AQ_VSI_UP_TABLE_UP7_MASK (0x7 << \ - I40E_AQ_VSI_UP_TABLE_UP7_SHIFT) - __le32 egress_table; /* same defines as for ingress table */ - /* cascaded PV section */ - __le16 cas_pv_tag; - u8 cas_pv_flags; -#define I40E_AQ_VSI_CAS_PV_TAGX_SHIFT 0x00 -#define I40E_AQ_VSI_CAS_PV_TAGX_MASK (0x03 << \ - I40E_AQ_VSI_CAS_PV_TAGX_SHIFT) -#define I40E_AQ_VSI_CAS_PV_TAGX_LEAVE 0x00 -#define I40E_AQ_VSI_CAS_PV_TAGX_REMOVE 0x01 -#define I40E_AQ_VSI_CAS_PV_TAGX_COPY 0x02 -#define I40E_AQ_VSI_CAS_PV_INSERT_TAG 0x10 -#define I40E_AQ_VSI_CAS_PV_ETAG_PRUNE 0x20 -#define I40E_AQ_VSI_CAS_PV_ACCEPT_HOST_TAG 0x40 - u8 cas_pv_reserved; - /* queue mapping section */ - __le16 mapping_flags; -#define I40E_AQ_VSI_QUE_MAP_CONTIG 0x0 -#define I40E_AQ_VSI_QUE_MAP_NONCONTIG 0x1 - __le16 queue_mapping[16]; -#define I40E_AQ_VSI_QUEUE_SHIFT 0x0 -#define I40E_AQ_VSI_QUEUE_MASK (0x7FF << I40E_AQ_VSI_QUEUE_SHIFT) - __le16 tc_mapping[8]; -#define I40E_AQ_VSI_TC_QUE_OFFSET_SHIFT 0 -#define I40E_AQ_VSI_TC_QUE_OFFSET_MASK (0x1FF << \ - I40E_AQ_VSI_TC_QUE_OFFSET_SHIFT) -#define I40E_AQ_VSI_TC_QUE_NUMBER_SHIFT 9 -#define I40E_AQ_VSI_TC_QUE_NUMBER_MASK (0x7 << \ - I40E_AQ_VSI_TC_QUE_NUMBER_SHIFT) - /* queueing option section */ - u8 queueing_opt_flags; -#define I40E_AQ_VSI_QUE_OPT_TCP_ENA 0x10 -#define I40E_AQ_VSI_QUE_OPT_FCOE_ENA 0x20 - u8 queueing_opt_reserved[3]; - /* scheduler section */ - u8 up_enable_bits; - u8 sched_reserved; - /* outer up section */ - __le32 outer_up_table; /* same structure and defines as ingress table */ - u8 cmd_reserved[8]; - /* last 32 bytes are written by FW */ - __le16 qs_handle[8]; -#define I40E_AQ_VSI_QS_HANDLE_INVALID 0xFFFF - __le16 stat_counter_idx; - __le16 sched_id; - u8 resp_reserved[12]; -}; - -I40E_CHECK_STRUCT_LEN(128, i40e_aqc_vsi_properties_data); - -/* Add Port Virtualizer (direct 0x0220) - * also used for update PV (direct 0x0221) but only flags are used - * (IS_CTRL_PORT only works on add PV) - */ -struct i40e_aqc_add_update_pv { - __le16 command_flags; -#define I40E_AQC_PV_FLAG_PV_TYPE 0x1 -#define I40E_AQC_PV_FLAG_FWD_UNKNOWN_STAG_EN 0x2 -#define I40E_AQC_PV_FLAG_FWD_UNKNOWN_ETAG_EN 0x4 -#define I40E_AQC_PV_FLAG_IS_CTRL_PORT 0x8 - __le16 uplink_seid; - __le16 connected_seid; - u8 reserved[10]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_add_update_pv); - -struct i40e_aqc_add_update_pv_completion { - /* reserved for update; for add also encodes error if rc == ENOSPC */ - __le16 pv_seid; -#define I40E_AQC_PV_ERR_FLAG_NO_PV 0x1 -#define I40E_AQC_PV_ERR_FLAG_NO_SCHED 0x2 -#define I40E_AQC_PV_ERR_FLAG_NO_COUNTER 0x4 -#define I40E_AQC_PV_ERR_FLAG_NO_ENTRY 0x8 - u8 reserved[14]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_add_update_pv_completion); - -/* Get PV Params (direct 0x0222) - * uses i40e_aqc_switch_seid for the descriptor - */ - -struct i40e_aqc_get_pv_params_completion { - __le16 seid; - __le16 default_stag; - __le16 pv_flags; /* same flags as add_pv */ -#define I40E_AQC_GET_PV_PV_TYPE 0x1 -#define I40E_AQC_GET_PV_FRWD_UNKNOWN_STAG 0x2 -#define I40E_AQC_GET_PV_FRWD_UNKNOWN_ETAG 0x4 - u8 reserved[8]; - __le16 default_port_seid; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_get_pv_params_completion); - -/* Add VEB (direct 0x0230) */ -struct i40e_aqc_add_veb { - __le16 uplink_seid; - __le16 downlink_seid; - __le16 veb_flags; -#define I40E_AQC_ADD_VEB_FLOATING 0x1 -#define I40E_AQC_ADD_VEB_PORT_TYPE_SHIFT 1 -#define I40E_AQC_ADD_VEB_PORT_TYPE_MASK (0x3 << \ - I40E_AQC_ADD_VEB_PORT_TYPE_SHIFT) -#define I40E_AQC_ADD_VEB_PORT_TYPE_DEFAULT 0x2 -#define I40E_AQC_ADD_VEB_PORT_TYPE_DATA 0x4 -#define I40E_AQC_ADD_VEB_ENABLE_L2_FILTER 0x8 - u8 enable_tcs; - u8 reserved[9]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_add_veb); - -struct i40e_aqc_add_veb_completion { - u8 reserved[6]; - __le16 switch_seid; - /* also encodes error if rc == ENOSPC; codes are the same as add_pv */ - __le16 veb_seid; -#define I40E_AQC_VEB_ERR_FLAG_NO_VEB 0x1 -#define I40E_AQC_VEB_ERR_FLAG_NO_SCHED 0x2 -#define I40E_AQC_VEB_ERR_FLAG_NO_COUNTER 0x4 -#define I40E_AQC_VEB_ERR_FLAG_NO_ENTRY 0x8 - __le16 statistic_index; - __le16 vebs_used; - __le16 vebs_free; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_add_veb_completion); - -/* Get VEB Parameters (direct 0x0232) - * uses i40e_aqc_switch_seid for the descriptor - */ -struct i40e_aqc_get_veb_parameters_completion { - __le16 seid; - __le16 switch_id; - __le16 veb_flags; /* only the first/last flags from 0x0230 is valid */ - __le16 statistic_index; - __le16 vebs_used; - __le16 vebs_free; - u8 reserved[4]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_get_veb_parameters_completion); - -/* Delete Element (direct 0x0243) - * uses the generic i40e_aqc_switch_seid - */ - -/* Add MAC-VLAN (indirect 0x0250) */ - -/* used for the command for most vlan commands */ -struct i40e_aqc_macvlan { - __le16 num_addresses; - __le16 seid[3]; -#define I40E_AQC_MACVLAN_CMD_SEID_NUM_SHIFT 0 -#define I40E_AQC_MACVLAN_CMD_SEID_NUM_MASK (0x3FF << \ - I40E_AQC_MACVLAN_CMD_SEID_NUM_SHIFT) -#define I40E_AQC_MACVLAN_CMD_SEID_VALID 0x8000 - __le32 addr_high; - __le32 addr_low; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_macvlan); - -/* indirect data for command and response */ -struct i40e_aqc_add_macvlan_element_data { - u8 mac_addr[6]; - __le16 vlan_tag; - __le16 flags; -#define I40E_AQC_MACVLAN_ADD_PERFECT_MATCH 0x0001 -#define I40E_AQC_MACVLAN_ADD_HASH_MATCH 0x0002 -#define I40E_AQC_MACVLAN_ADD_IGNORE_VLAN 0x0004 -#define I40E_AQC_MACVLAN_ADD_TO_QUEUE 0x0008 - __le16 queue_number; -#define I40E_AQC_MACVLAN_CMD_QUEUE_SHIFT 0 -#define I40E_AQC_MACVLAN_CMD_QUEUE_MASK (0x7FF << \ - I40E_AQC_MACVLAN_CMD_SEID_NUM_SHIFT) - /* response section */ - u8 match_method; -#define I40E_AQC_MM_PERFECT_MATCH 0x01 -#define I40E_AQC_MM_HASH_MATCH 0x02 -#define I40E_AQC_MM_ERR_NO_RES 0xFF - u8 reserved1[3]; -}; - -struct i40e_aqc_add_remove_macvlan_completion { - __le16 perfect_mac_used; - __le16 perfect_mac_free; - __le16 unicast_hash_free; - __le16 multicast_hash_free; - __le32 addr_high; - __le32 addr_low; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_add_remove_macvlan_completion); - -/* Remove MAC-VLAN (indirect 0x0251) - * uses i40e_aqc_macvlan for the descriptor - * data points to an array of num_addresses of elements - */ - -struct i40e_aqc_remove_macvlan_element_data { - u8 mac_addr[6]; - __le16 vlan_tag; - u8 flags; -#define I40E_AQC_MACVLAN_DEL_PERFECT_MATCH 0x01 -#define I40E_AQC_MACVLAN_DEL_HASH_MATCH 0x02 -#define I40E_AQC_MACVLAN_DEL_IGNORE_VLAN 0x08 -#define I40E_AQC_MACVLAN_DEL_ALL_VSIS 0x10 - u8 reserved[3]; - /* reply section */ - u8 error_code; -#define I40E_AQC_REMOVE_MACVLAN_SUCCESS 0x0 -#define I40E_AQC_REMOVE_MACVLAN_FAIL 0xFF - u8 reply_reserved[3]; -}; - -/* Add VLAN (indirect 0x0252) - * Remove VLAN (indirect 0x0253) - * use the generic i40e_aqc_macvlan for the command - */ -struct i40e_aqc_add_remove_vlan_element_data { - __le16 vlan_tag; - u8 vlan_flags; -/* flags for add VLAN */ -#define I40E_AQC_ADD_VLAN_LOCAL 0x1 -#define I40E_AQC_ADD_PVLAN_TYPE_SHIFT 1 -#define I40E_AQC_ADD_PVLAN_TYPE_MASK (0x3 << \ - I40E_AQC_ADD_PVLAN_TYPE_SHIFT) -#define I40E_AQC_ADD_PVLAN_TYPE_REGULAR 0x0 -#define I40E_AQC_ADD_PVLAN_TYPE_PRIMARY 0x2 -#define I40E_AQC_ADD_PVLAN_TYPE_SECONDARY 0x4 -#define I40E_AQC_VLAN_PTYPE_SHIFT 3 -#define I40E_AQC_VLAN_PTYPE_MASK (0x3 << I40E_AQC_VLAN_PTYPE_SHIFT) -#define I40E_AQC_VLAN_PTYPE_REGULAR_VSI 0x0 -#define I40E_AQC_VLAN_PTYPE_PROMISC_VSI 0x8 -#define I40E_AQC_VLAN_PTYPE_COMMUNITY_VSI 0x10 -#define I40E_AQC_VLAN_PTYPE_ISOLATED_VSI 0x18 -/* flags for remove VLAN */ -#define I40E_AQC_REMOVE_VLAN_ALL 0x1 - u8 reserved; - u8 result; -/* flags for add VLAN */ -#define I40E_AQC_ADD_VLAN_SUCCESS 0x0 -#define I40E_AQC_ADD_VLAN_FAIL_REQUEST 0xFE -#define I40E_AQC_ADD_VLAN_FAIL_RESOURCE 0xFF -/* flags for remove VLAN */ -#define I40E_AQC_REMOVE_VLAN_SUCCESS 0x0 -#define I40E_AQC_REMOVE_VLAN_FAIL 0xFF - u8 reserved1[3]; -}; - -struct i40e_aqc_add_remove_vlan_completion { - u8 reserved[4]; - __le16 vlans_used; - __le16 vlans_free; - __le32 addr_high; - __le32 addr_low; -}; - -/* Set VSI Promiscuous Modes (direct 0x0254) */ -struct i40e_aqc_set_vsi_promiscuous_modes { - __le16 promiscuous_flags; - __le16 valid_flags; -/* flags used for both fields above */ -#define I40E_AQC_SET_VSI_PROMISC_UNICAST 0x01 -#define I40E_AQC_SET_VSI_PROMISC_MULTICAST 0x02 -#define I40E_AQC_SET_VSI_PROMISC_BROADCAST 0x04 -#define I40E_AQC_SET_VSI_DEFAULT 0x08 -#define I40E_AQC_SET_VSI_PROMISC_VLAN 0x10 - __le16 seid; -#define I40E_AQC_VSI_PROM_CMD_SEID_MASK 0x3FF - __le16 vlan_tag; -#define I40E_AQC_SET_VSI_VLAN_VALID 0x8000 - u8 reserved[8]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_set_vsi_promiscuous_modes); - -/* Add S/E-tag command (direct 0x0255) - * Uses generic i40e_aqc_add_remove_tag_completion for completion - */ -struct i40e_aqc_add_tag { - __le16 flags; -#define I40E_AQC_ADD_TAG_FLAG_TO_QUEUE 0x0001 - __le16 seid; -#define I40E_AQC_ADD_TAG_CMD_SEID_NUM_SHIFT 0 -#define I40E_AQC_ADD_TAG_CMD_SEID_NUM_MASK (0x3FF << \ - I40E_AQC_ADD_TAG_CMD_SEID_NUM_SHIFT) - __le16 tag; - __le16 queue_number; - u8 reserved[8]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_add_tag); - -struct i40e_aqc_add_remove_tag_completion { - u8 reserved[12]; - __le16 tags_used; - __le16 tags_free; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_add_remove_tag_completion); - -/* Remove S/E-tag command (direct 0x0256) - * Uses generic i40e_aqc_add_remove_tag_completion for completion - */ -struct i40e_aqc_remove_tag { - __le16 seid; -#define I40E_AQC_REMOVE_TAG_CMD_SEID_NUM_SHIFT 0 -#define I40E_AQC_REMOVE_TAG_CMD_SEID_NUM_MASK (0x3FF << \ - I40E_AQC_REMOVE_TAG_CMD_SEID_NUM_SHIFT) - __le16 tag; - u8 reserved[12]; -}; - -/* Add multicast E-Tag (direct 0x0257) - * del multicast E-Tag (direct 0x0258) only uses pv_seid and etag fields - * and no external data - */ -struct i40e_aqc_add_remove_mcast_etag { - __le16 pv_seid; - __le16 etag; - u8 num_unicast_etags; - u8 reserved[3]; - __le32 addr_high; /* address of array of 2-byte s-tags */ - __le32 addr_low; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_add_remove_mcast_etag); - -struct i40e_aqc_add_remove_mcast_etag_completion { - u8 reserved[4]; - __le16 mcast_etags_used; - __le16 mcast_etags_free; - __le32 addr_high; - __le32 addr_low; - -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_add_remove_mcast_etag_completion); - -/* Update S/E-Tag (direct 0x0259) */ -struct i40e_aqc_update_tag { - __le16 seid; -#define I40E_AQC_UPDATE_TAG_CMD_SEID_NUM_SHIFT 0 -#define I40E_AQC_UPDATE_TAG_CMD_SEID_NUM_MASK (0x3FF << \ - I40E_AQC_UPDATE_TAG_CMD_SEID_NUM_SHIFT) - __le16 old_tag; - __le16 new_tag; - u8 reserved[10]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_update_tag); - -struct i40e_aqc_update_tag_completion { - u8 reserved[12]; - __le16 tags_used; - __le16 tags_free; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_update_tag_completion); - -/* Add Control Packet filter (direct 0x025A) - * Remove Control Packet filter (direct 0x025B) - * uses the i40e_aqc_add_oveb_cloud, - * and the generic direct completion structure - */ -struct i40e_aqc_add_remove_control_packet_filter { - u8 mac[6]; - __le16 etype; - __le16 flags; -#define I40E_AQC_ADD_CONTROL_PACKET_FLAGS_IGNORE_MAC 0x0001 -#define I40E_AQC_ADD_CONTROL_PACKET_FLAGS_DROP 0x0002 -#define I40E_AQC_ADD_CONTROL_PACKET_FLAGS_TO_QUEUE 0x0004 -#define I40E_AQC_ADD_CONTROL_PACKET_FLAGS_TX 0x0008 -#define I40E_AQC_ADD_CONTROL_PACKET_FLAGS_RX 0x0000 - __le16 seid; -#define I40E_AQC_ADD_CONTROL_PACKET_CMD_SEID_NUM_SHIFT 0 -#define I40E_AQC_ADD_CONTROL_PACKET_CMD_SEID_NUM_MASK (0x3FF << \ - I40E_AQC_ADD_CONTROL_PACKET_CMD_SEID_NUM_SHIFT) - __le16 queue; - u8 reserved[2]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_add_remove_control_packet_filter); - -struct i40e_aqc_add_remove_control_packet_filter_completion { - __le16 mac_etype_used; - __le16 etype_used; - __le16 mac_etype_free; - __le16 etype_free; - u8 reserved[8]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_add_remove_control_packet_filter_completion); - -/* Add Cloud filters (indirect 0x025C) - * Remove Cloud filters (indirect 0x025D) - * uses the i40e_aqc_add_remove_cloud_filters, - * and the generic indirect completion structure - */ -struct i40e_aqc_add_remove_cloud_filters { - u8 num_filters; - u8 reserved; - __le16 seid; -#define I40E_AQC_ADD_CLOUD_CMD_SEID_NUM_SHIFT 0 -#define I40E_AQC_ADD_CLOUD_CMD_SEID_NUM_MASK (0x3FF << \ - I40E_AQC_ADD_CLOUD_CMD_SEID_NUM_SHIFT) - u8 reserved2[4]; - __le32 addr_high; - __le32 addr_low; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_add_remove_cloud_filters); - -struct i40e_aqc_add_remove_cloud_filters_element_data { - u8 outer_mac[6]; - u8 inner_mac[6]; - __le16 inner_vlan; - union { - struct { - u8 reserved[12]; - u8 data[4]; - } v4; - struct { - u8 data[16]; - } v6; - } ipaddr; - __le16 flags; -#define I40E_AQC_ADD_CLOUD_FILTER_SHIFT 0 -#define I40E_AQC_ADD_CLOUD_FILTER_MASK (0x3F << \ - I40E_AQC_ADD_CLOUD_FILTER_SHIFT) -/* 0x0000 reserved */ -#define I40E_AQC_ADD_CLOUD_FILTER_OIP 0x0001 -/* 0x0002 reserved */ -#define I40E_AQC_ADD_CLOUD_FILTER_IMAC_IVLAN 0x0003 -#define I40E_AQC_ADD_CLOUD_FILTER_IMAC_IVLAN_TEN_ID 0x0004 -/* 0x0005 reserved */ -#define I40E_AQC_ADD_CLOUD_FILTER_IMAC_TEN_ID 0x0006 -/* 0x0007 reserved */ -/* 0x0008 reserved */ -#define I40E_AQC_ADD_CLOUD_FILTER_OMAC 0x0009 -#define I40E_AQC_ADD_CLOUD_FILTER_IMAC 0x000A -#define I40E_AQC_ADD_CLOUD_FILTER_OMAC_TEN_ID_IMAC 0x000B -#define I40E_AQC_ADD_CLOUD_FILTER_IIP 0x000C - -#define I40E_AQC_ADD_CLOUD_FLAGS_TO_QUEUE 0x0080 -#define I40E_AQC_ADD_CLOUD_VNK_SHIFT 6 -#define I40E_AQC_ADD_CLOUD_VNK_MASK 0x00C0 -#define I40E_AQC_ADD_CLOUD_FLAGS_IPV4 0 -#define I40E_AQC_ADD_CLOUD_FLAGS_IPV6 0x0100 - -#define I40E_AQC_ADD_CLOUD_TNL_TYPE_SHIFT 9 -#define I40E_AQC_ADD_CLOUD_TNL_TYPE_MASK 0x1E00 -#define I40E_AQC_ADD_CLOUD_TNL_TYPE_XVLAN 0 -#define I40E_AQC_ADD_CLOUD_TNL_TYPE_NVGRE_OMAC 1 -#define I40E_AQC_ADD_CLOUD_TNL_TYPE_NGE 2 -#define I40E_AQC_ADD_CLOUD_TNL_TYPE_IP 3 - - __le32 tenant_id; - u8 reserved[4]; - __le16 queue_number; -#define I40E_AQC_ADD_CLOUD_QUEUE_SHIFT 0 -#define I40E_AQC_ADD_CLOUD_QUEUE_MASK (0x3F << \ - I40E_AQC_ADD_CLOUD_QUEUE_SHIFT) - u8 reserved2[14]; - /* response section */ - u8 allocation_result; -#define I40E_AQC_ADD_CLOUD_FILTER_SUCCESS 0x0 -#define I40E_AQC_ADD_CLOUD_FILTER_FAIL 0xFF - u8 response_reserved[7]; -}; - -struct i40e_aqc_remove_cloud_filters_completion { - __le16 perfect_ovlan_used; - __le16 perfect_ovlan_free; - __le16 vlan_used; - __le16 vlan_free; - __le32 addr_high; - __le32 addr_low; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_remove_cloud_filters_completion); - -/* Add Mirror Rule (indirect or direct 0x0260) - * Delete Mirror Rule (indirect or direct 0x0261) - * note: some rule types (4,5) do not use an external buffer. - * take care to set the flags correctly. - */ -struct i40e_aqc_add_delete_mirror_rule { - __le16 seid; - __le16 rule_type; -#define I40E_AQC_MIRROR_RULE_TYPE_SHIFT 0 -#define I40E_AQC_MIRROR_RULE_TYPE_MASK (0x7 << \ - I40E_AQC_MIRROR_RULE_TYPE_SHIFT) -#define I40E_AQC_MIRROR_RULE_TYPE_VPORT_INGRESS 1 -#define I40E_AQC_MIRROR_RULE_TYPE_VPORT_EGRESS 2 -#define I40E_AQC_MIRROR_RULE_TYPE_VLAN 3 -#define I40E_AQC_MIRROR_RULE_TYPE_ALL_INGRESS 4 -#define I40E_AQC_MIRROR_RULE_TYPE_ALL_EGRESS 5 - __le16 num_entries; - __le16 destination; /* VSI for add, rule id for delete */ - __le32 addr_high; /* address of array of 2-byte VSI or VLAN ids */ - __le32 addr_low; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_add_delete_mirror_rule); - -struct i40e_aqc_add_delete_mirror_rule_completion { - u8 reserved[2]; - __le16 rule_id; /* only used on add */ - __le16 mirror_rules_used; - __le16 mirror_rules_free; - __le32 addr_high; - __le32 addr_low; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_add_delete_mirror_rule_completion); - -/* DCB 0x03xx*/ - -/* PFC Ignore (direct 0x0301) - * the command and response use the same descriptor structure - */ -struct i40e_aqc_pfc_ignore { - u8 tc_bitmap; - u8 command_flags; /* unused on response */ -#define I40E_AQC_PFC_IGNORE_SET 0x80 -#define I40E_AQC_PFC_IGNORE_CLEAR 0x0 - u8 reserved[14]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_pfc_ignore); - -/* DCB Update (direct 0x0302) uses the i40e_aq_desc structure - * with no parameters - */ - -/* TX scheduler 0x04xx */ - -/* Almost all the indirect commands use - * this generic struct to pass the SEID in param0 - */ -struct i40e_aqc_tx_sched_ind { - __le16 vsi_seid; - u8 reserved[6]; - __le32 addr_high; - __le32 addr_low; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_tx_sched_ind); - -/* Several commands respond with a set of queue set handles */ -struct i40e_aqc_qs_handles_resp { - __le16 qs_handles[8]; -}; - -/* Configure VSI BW limits (direct 0x0400) */ -struct i40e_aqc_configure_vsi_bw_limit { - __le16 vsi_seid; - u8 reserved[2]; - __le16 credit; - u8 reserved1[2]; - u8 max_credit; /* 0-3, limit = 2^max */ - u8 reserved2[7]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_configure_vsi_bw_limit); - -/* Configure VSI Bandwidth Limit per Traffic Type (indirect 0x0406) - * responds with i40e_aqc_qs_handles_resp - */ -struct i40e_aqc_configure_vsi_ets_sla_bw_data { - u8 tc_valid_bits; - u8 reserved[15]; - __le16 tc_bw_credits[8]; /* FW writesback QS handles here */ - - /* 4 bits per tc 0-7, 4th bit is reserved, limit = 2^max */ - __le16 tc_bw_max[2]; - u8 reserved1[28]; -}; - -/* Configure VSI Bandwidth Allocation per Traffic Type (indirect 0x0407) - * responds with i40e_aqc_qs_handles_resp - */ -struct i40e_aqc_configure_vsi_tc_bw_data { - u8 tc_valid_bits; - u8 reserved[3]; - u8 tc_bw_credits[8]; - u8 reserved1[4]; - __le16 qs_handles[8]; -}; - -/* Query vsi bw configuration (indirect 0x0408) */ -struct i40e_aqc_query_vsi_bw_config_resp { - u8 tc_valid_bits; - u8 tc_suspended_bits; - u8 reserved[14]; - __le16 qs_handles[8]; - u8 reserved1[4]; - __le16 port_bw_limit; - u8 reserved2[2]; - u8 max_bw; /* 0-3, limit = 2^max */ - u8 reserved3[23]; -}; - -/* Query VSI Bandwidth Allocation per Traffic Type (indirect 0x040A) */ -struct i40e_aqc_query_vsi_ets_sla_config_resp { - u8 tc_valid_bits; - u8 reserved[3]; - u8 share_credits[8]; - __le16 credits[8]; - - /* 4 bits per tc 0-7, 4th bit is reserved, limit = 2^max */ - __le16 tc_bw_max[2]; -}; - -/* Configure Switching Component Bandwidth Limit (direct 0x0410) */ -struct i40e_aqc_configure_switching_comp_bw_limit { - __le16 seid; - u8 reserved[2]; - __le16 credit; - u8 reserved1[2]; - u8 max_bw; /* 0-3, limit = 2^max */ - u8 reserved2[7]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_configure_switching_comp_bw_limit); - -/* Enable Physical Port ETS (indirect 0x0413) - * Modify Physical Port ETS (indirect 0x0414) - * Disable Physical Port ETS (indirect 0x0415) - */ -struct i40e_aqc_configure_switching_comp_ets_data { - u8 reserved[4]; - u8 tc_valid_bits; - u8 seepage; -#define I40E_AQ_ETS_SEEPAGE_EN_MASK 0x1 - u8 tc_strict_priority_flags; - u8 reserved1[17]; - u8 tc_bw_share_credits[8]; - u8 reserved2[96]; -}; - -/* Configure Switching Component Bandwidth Limits per Tc (indirect 0x0416) */ -struct i40e_aqc_configure_switching_comp_ets_bw_limit_data { - u8 tc_valid_bits; - u8 reserved[15]; - __le16 tc_bw_credit[8]; - - /* 4 bits per tc 0-7, 4th bit is reserved, limit = 2^max */ - __le16 tc_bw_max[2]; - u8 reserved1[28]; -}; - -/* Configure Switching Component Bandwidth Allocation per Tc - * (indirect 0x0417) - */ -struct i40e_aqc_configure_switching_comp_bw_config_data { - u8 tc_valid_bits; - u8 reserved[2]; - u8 absolute_credits; /* bool */ - u8 tc_bw_share_credits[8]; - u8 reserved1[20]; -}; - -/* Query Switching Component Configuration (indirect 0x0418) */ -struct i40e_aqc_query_switching_comp_ets_config_resp { - u8 tc_valid_bits; - u8 reserved[35]; - __le16 port_bw_limit; - u8 reserved1[2]; - u8 tc_bw_max; /* 0-3, limit = 2^max */ - u8 reserved2[23]; -}; - -/* Query PhysicalPort ETS Configuration (indirect 0x0419) */ -struct i40e_aqc_query_port_ets_config_resp { - u8 reserved[4]; - u8 tc_valid_bits; - u8 reserved1; - u8 tc_strict_priority_bits; - u8 reserved2; - u8 tc_bw_share_credits[8]; - __le16 tc_bw_limits[8]; - - /* 4 bits per tc 0-7, 4th bit reserved, limit = 2^max */ - __le16 tc_bw_max[2]; - u8 reserved3[32]; -}; - -/* Query Switching Component Bandwidth Allocation per Traffic Type - * (indirect 0x041A) - */ -struct i40e_aqc_query_switching_comp_bw_config_resp { - u8 tc_valid_bits; - u8 reserved[2]; - u8 absolute_credits_enable; /* bool */ - u8 tc_bw_share_credits[8]; - __le16 tc_bw_limits[8]; - - /* 4 bits per tc 0-7, 4th bit is reserved, limit = 2^max */ - __le16 tc_bw_max[2]; -}; - -/* Suspend/resume port TX traffic - * (direct 0x041B and 0x041C) uses the generic SEID struct - */ - -/* Configure partition BW - * (indirect 0x041D) - */ -struct i40e_aqc_configure_partition_bw_data { - __le16 pf_valid_bits; - u8 min_bw[16]; /* guaranteed bandwidth */ - u8 max_bw[16]; /* bandwidth limit */ -}; - -/* Get and set the active HMC resource profile and status. - * (direct 0x0500) and (direct 0x0501) - */ -struct i40e_aq_get_set_hmc_resource_profile { - u8 pm_profile; - u8 pe_vf_enabled; - u8 reserved[14]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aq_get_set_hmc_resource_profile); - -enum i40e_aq_hmc_profile { - /* I40E_HMC_PROFILE_NO_CHANGE = 0, reserved */ - I40E_HMC_PROFILE_DEFAULT = 1, - I40E_HMC_PROFILE_FAVOR_VF = 2, - I40E_HMC_PROFILE_EQUAL = 3, -}; - -#define I40E_AQ_GET_HMC_RESOURCE_PROFILE_PM_MASK 0xF -#define I40E_AQ_GET_HMC_RESOURCE_PROFILE_COUNT_MASK 0x3F - -/* Get PHY Abilities (indirect 0x0600) uses the generic indirect struct */ - -/* set in param0 for get phy abilities to report qualified modules */ -#define I40E_AQ_PHY_REPORT_QUALIFIED_MODULES 0x0001 -#define I40E_AQ_PHY_REPORT_INITIAL_VALUES 0x0002 - -enum i40e_aq_phy_type { - I40E_PHY_TYPE_SGMII = 0x0, - I40E_PHY_TYPE_1000BASE_KX = 0x1, - I40E_PHY_TYPE_10GBASE_KX4 = 0x2, - I40E_PHY_TYPE_10GBASE_KR = 0x3, - I40E_PHY_TYPE_40GBASE_KR4 = 0x4, - I40E_PHY_TYPE_XAUI = 0x5, - I40E_PHY_TYPE_XFI = 0x6, - I40E_PHY_TYPE_SFI = 0x7, - I40E_PHY_TYPE_XLAUI = 0x8, - I40E_PHY_TYPE_XLPPI = 0x9, - I40E_PHY_TYPE_40GBASE_CR4_CU = 0xA, - I40E_PHY_TYPE_10GBASE_CR1_CU = 0xB, - I40E_PHY_TYPE_10GBASE_AOC = 0xC, - I40E_PHY_TYPE_40GBASE_AOC = 0xD, - I40E_PHY_TYPE_100BASE_TX = 0x11, - I40E_PHY_TYPE_1000BASE_T = 0x12, - I40E_PHY_TYPE_10GBASE_T = 0x13, - I40E_PHY_TYPE_10GBASE_SR = 0x14, - I40E_PHY_TYPE_10GBASE_LR = 0x15, - I40E_PHY_TYPE_10GBASE_SFPP_CU = 0x16, - I40E_PHY_TYPE_10GBASE_CR1 = 0x17, - I40E_PHY_TYPE_40GBASE_CR4 = 0x18, - I40E_PHY_TYPE_40GBASE_SR4 = 0x19, - I40E_PHY_TYPE_40GBASE_LR4 = 0x1A, - I40E_PHY_TYPE_1000BASE_SX = 0x1B, - I40E_PHY_TYPE_1000BASE_LX = 0x1C, - I40E_PHY_TYPE_1000BASE_T_OPTICAL = 0x1D, - I40E_PHY_TYPE_20GBASE_KR2 = 0x1E, - I40E_PHY_TYPE_MAX -}; - -#define I40E_LINK_SPEED_100MB_SHIFT 0x1 -#define I40E_LINK_SPEED_1000MB_SHIFT 0x2 -#define I40E_LINK_SPEED_10GB_SHIFT 0x3 -#define I40E_LINK_SPEED_40GB_SHIFT 0x4 -#define I40E_LINK_SPEED_20GB_SHIFT 0x5 - -enum i40e_aq_link_speed { - I40E_LINK_SPEED_UNKNOWN = 0, - I40E_LINK_SPEED_100MB = (1 << I40E_LINK_SPEED_100MB_SHIFT), - I40E_LINK_SPEED_1GB = (1 << I40E_LINK_SPEED_1000MB_SHIFT), - I40E_LINK_SPEED_10GB = (1 << I40E_LINK_SPEED_10GB_SHIFT), - I40E_LINK_SPEED_40GB = (1 << I40E_LINK_SPEED_40GB_SHIFT), - I40E_LINK_SPEED_20GB = (1 << I40E_LINK_SPEED_20GB_SHIFT) -}; - -struct i40e_aqc_module_desc { - u8 oui[3]; - u8 reserved1; - u8 part_number[16]; - u8 revision[4]; - u8 reserved2[8]; -}; - -struct i40e_aq_get_phy_abilities_resp { - __le32 phy_type; /* bitmap using the above enum for offsets */ - u8 link_speed; /* bitmap using the above enum bit patterns */ - u8 abilities; -#define I40E_AQ_PHY_FLAG_PAUSE_TX 0x01 -#define I40E_AQ_PHY_FLAG_PAUSE_RX 0x02 -#define I40E_AQ_PHY_FLAG_LOW_POWER 0x04 -#define I40E_AQ_PHY_LINK_ENABLED 0x08 -#define I40E_AQ_PHY_AN_ENABLED 0x10 -#define I40E_AQ_PHY_FLAG_MODULE_QUAL 0x20 - __le16 eee_capability; -#define I40E_AQ_EEE_100BASE_TX 0x0002 -#define I40E_AQ_EEE_1000BASE_T 0x0004 -#define I40E_AQ_EEE_10GBASE_T 0x0008 -#define I40E_AQ_EEE_1000BASE_KX 0x0010 -#define I40E_AQ_EEE_10GBASE_KX4 0x0020 -#define I40E_AQ_EEE_10GBASE_KR 0x0040 - __le32 eeer_val; - u8 d3_lpan; -#define I40E_AQ_SET_PHY_D3_LPAN_ENA 0x01 - u8 reserved[3]; - u8 phy_id[4]; - u8 module_type[3]; - u8 qualified_module_count; -#define I40E_AQ_PHY_MAX_QMS 16 - struct i40e_aqc_module_desc qualified_module[I40E_AQ_PHY_MAX_QMS]; -}; - -/* Set PHY Config (direct 0x0601) */ -struct i40e_aq_set_phy_config { /* same bits as above in all */ - __le32 phy_type; - u8 link_speed; - u8 abilities; -/* bits 0-2 use the values from get_phy_abilities_resp */ -#define I40E_AQ_PHY_ENABLE_LINK 0x08 -#define I40E_AQ_PHY_ENABLE_AN 0x10 -#define I40E_AQ_PHY_ENABLE_ATOMIC_LINK 0x20 - __le16 eee_capability; - __le32 eeer; - u8 low_power_ctrl; - u8 reserved[3]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aq_set_phy_config); - -/* Set MAC Config command data structure (direct 0x0603) */ -struct i40e_aq_set_mac_config { - __le16 max_frame_size; - u8 params; -#define I40E_AQ_SET_MAC_CONFIG_CRC_EN 0x04 -#define I40E_AQ_SET_MAC_CONFIG_PACING_MASK 0x78 -#define I40E_AQ_SET_MAC_CONFIG_PACING_SHIFT 3 -#define I40E_AQ_SET_MAC_CONFIG_PACING_NONE 0x0 -#define I40E_AQ_SET_MAC_CONFIG_PACING_1B_13TX 0xF -#define I40E_AQ_SET_MAC_CONFIG_PACING_1DW_9TX 0x9 -#define I40E_AQ_SET_MAC_CONFIG_PACING_1DW_4TX 0x8 -#define I40E_AQ_SET_MAC_CONFIG_PACING_3DW_7TX 0x7 -#define I40E_AQ_SET_MAC_CONFIG_PACING_2DW_3TX 0x6 -#define I40E_AQ_SET_MAC_CONFIG_PACING_1DW_1TX 0x5 -#define I40E_AQ_SET_MAC_CONFIG_PACING_3DW_2TX 0x4 -#define I40E_AQ_SET_MAC_CONFIG_PACING_7DW_3TX 0x3 -#define I40E_AQ_SET_MAC_CONFIG_PACING_4DW_1TX 0x2 -#define I40E_AQ_SET_MAC_CONFIG_PACING_9DW_1TX 0x1 - u8 tx_timer_priority; /* bitmap */ - __le16 tx_timer_value; - __le16 fc_refresh_threshold; - u8 reserved[8]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aq_set_mac_config); - -/* Restart Auto-Negotiation (direct 0x605) */ -struct i40e_aqc_set_link_restart_an { - u8 command; -#define I40E_AQ_PHY_RESTART_AN 0x02 -#define I40E_AQ_PHY_LINK_ENABLE 0x04 - u8 reserved[15]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_set_link_restart_an); - -/* Get Link Status cmd & response data structure (direct 0x0607) */ -struct i40e_aqc_get_link_status { - __le16 command_flags; /* only field set on command */ -#define I40E_AQ_LSE_MASK 0x3 -#define I40E_AQ_LSE_NOP 0x0 -#define I40E_AQ_LSE_DISABLE 0x2 -#define I40E_AQ_LSE_ENABLE 0x3 -/* only response uses this flag */ -#define I40E_AQ_LSE_IS_ENABLED 0x1 - u8 phy_type; /* i40e_aq_phy_type */ - u8 link_speed; /* i40e_aq_link_speed */ - u8 link_info; -#define I40E_AQ_LINK_UP 0x01 -#define I40E_AQ_LINK_FAULT 0x02 -#define I40E_AQ_LINK_FAULT_TX 0x04 -#define I40E_AQ_LINK_FAULT_RX 0x08 -#define I40E_AQ_LINK_FAULT_REMOTE 0x10 -#define I40E_AQ_MEDIA_AVAILABLE 0x40 -#define I40E_AQ_SIGNAL_DETECT 0x80 - u8 an_info; -#define I40E_AQ_AN_COMPLETED 0x01 -#define I40E_AQ_LP_AN_ABILITY 0x02 -#define I40E_AQ_PD_FAULT 0x04 -#define I40E_AQ_FEC_EN 0x08 -#define I40E_AQ_PHY_LOW_POWER 0x10 -#define I40E_AQ_LINK_PAUSE_TX 0x20 -#define I40E_AQ_LINK_PAUSE_RX 0x40 -#define I40E_AQ_QUALIFIED_MODULE 0x80 - u8 ext_info; -#define I40E_AQ_LINK_PHY_TEMP_ALARM 0x01 -#define I40E_AQ_LINK_XCESSIVE_ERRORS 0x02 -#define I40E_AQ_LINK_TX_SHIFT 0x02 -#define I40E_AQ_LINK_TX_MASK (0x03 << I40E_AQ_LINK_TX_SHIFT) -#define I40E_AQ_LINK_TX_ACTIVE 0x00 -#define I40E_AQ_LINK_TX_DRAINED 0x01 -#define I40E_AQ_LINK_TX_FLUSHED 0x03 -#define I40E_AQ_LINK_FORCED_40G 0x10 - u8 loopback; /* use defines from i40e_aqc_set_lb_mode */ - __le16 max_frame_size; - u8 config; -#define I40E_AQ_CONFIG_CRC_ENA 0x04 -#define I40E_AQ_CONFIG_PACING_MASK 0x78 - u8 reserved[5]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_get_link_status); - -/* Set event mask command (direct 0x613) */ -struct i40e_aqc_set_phy_int_mask { - u8 reserved[8]; - __le16 event_mask; -#define I40E_AQ_EVENT_LINK_UPDOWN 0x0002 -#define I40E_AQ_EVENT_MEDIA_NA 0x0004 -#define I40E_AQ_EVENT_LINK_FAULT 0x0008 -#define I40E_AQ_EVENT_PHY_TEMP_ALARM 0x0010 -#define I40E_AQ_EVENT_EXCESSIVE_ERRORS 0x0020 -#define I40E_AQ_EVENT_SIGNAL_DETECT 0x0040 -#define I40E_AQ_EVENT_AN_COMPLETED 0x0080 -#define I40E_AQ_EVENT_MODULE_QUAL_FAIL 0x0100 -#define I40E_AQ_EVENT_PORT_TX_SUSPENDED 0x0200 - u8 reserved1[6]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_set_phy_int_mask); - -/* Get Local AN advt register (direct 0x0614) - * Set Local AN advt register (direct 0x0615) - * Get Link Partner AN advt register (direct 0x0616) - */ -struct i40e_aqc_an_advt_reg { - __le32 local_an_reg0; - __le16 local_an_reg1; - u8 reserved[10]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_an_advt_reg); - -/* Set Loopback mode (0x0618) */ -struct i40e_aqc_set_lb_mode { - __le16 lb_mode; -#define I40E_AQ_LB_PHY_LOCAL 0x01 -#define I40E_AQ_LB_PHY_REMOTE 0x02 -#define I40E_AQ_LB_MAC_LOCAL 0x04 - u8 reserved[14]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_set_lb_mode); - -/* Set PHY Debug command (0x0622) */ -struct i40e_aqc_set_phy_debug { - u8 command_flags; -#define I40E_AQ_PHY_DEBUG_RESET_INTERNAL 0x02 -#define I40E_AQ_PHY_DEBUG_RESET_EXTERNAL_SHIFT 2 -#define I40E_AQ_PHY_DEBUG_RESET_EXTERNAL_MASK (0x03 << I40E_AQ_PHY_DEBUG_RESET_EXTERNAL_SHIFT) -#define I40E_AQ_PHY_DEBUG_RESET_EXTERNAL_NONE 0x00 -#define I40E_AQ_PHY_DEBUG_RESET_EXTERNAL_HARD 0x01 -#define I40E_AQ_PHY_DEBUG_RESET_EXTERNAL_SOFT 0x02 -#define I40E_AQ_PHY_DEBUG_DISABLE_LINK_FW 0x10 - u8 reserved[15]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_set_phy_debug); - -enum i40e_aq_phy_reg_type { - I40E_AQC_PHY_REG_INTERNAL = 0x1, - I40E_AQC_PHY_REG_EXERNAL_BASET = 0x2, - I40E_AQC_PHY_REG_EXERNAL_MODULE = 0x3 -}; - -/* NVM Read command (indirect 0x0701) - * NVM Erase commands (direct 0x0702) - * NVM Update commands (indirect 0x0703) - */ -struct i40e_aqc_nvm_update { - u8 command_flags; -#define I40E_AQ_NVM_LAST_CMD 0x01 -#define I40E_AQ_NVM_FLASH_ONLY 0x80 - u8 module_pointer; - __le16 length; - __le32 offset; - __le32 addr_high; - __le32 addr_low; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_nvm_update); - -/* NVM Config Read (indirect 0x0704) */ -struct i40e_aqc_nvm_config_read { - __le16 cmd_flags; -#define ANVM_SINGLE_OR_MULTIPLE_FEATURES_MASK 1 -#define ANVM_READ_SINGLE_FEATURE 0 -#define ANVM_READ_MULTIPLE_FEATURES 1 - __le16 element_count; - __le16 element_id; /* Feature/field ID */ - u8 reserved[2]; - __le32 address_high; - __le32 address_low; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_nvm_config_read); - -/* NVM Config Write (indirect 0x0705) */ -struct i40e_aqc_nvm_config_write { - __le16 cmd_flags; - __le16 element_count; - u8 reserved[4]; - __le32 address_high; - __le32 address_low; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_nvm_config_write); - -struct i40e_aqc_nvm_config_data_feature { - __le16 feature_id; - __le16 instance_id; - __le16 feature_options; - __le16 feature_selection; -}; - -struct i40e_aqc_nvm_config_data_immediate_field { -#define ANVM_FEATURE_OR_IMMEDIATE_MASK 0x2 - __le16 field_id; - __le16 instance_id; - __le16 field_options; - __le16 field_value; -}; - -/* Send to PF command (indirect 0x0801) id is only used by PF - * Send to VF command (indirect 0x0802) id is only used by PF - * Send to Peer PF command (indirect 0x0803) - */ -struct i40e_aqc_pf_vf_message { - __le32 id; - u8 reserved[4]; - __le32 addr_high; - __le32 addr_low; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_pf_vf_message); - -/* Alternate structure */ - -/* Direct write (direct 0x0900) - * Direct read (direct 0x0902) - */ -struct i40e_aqc_alternate_write { - __le32 address0; - __le32 data0; - __le32 address1; - __le32 data1; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_alternate_write); - -/* Indirect write (indirect 0x0901) - * Indirect read (indirect 0x0903) - */ - -struct i40e_aqc_alternate_ind_write { - __le32 address; - __le32 length; - __le32 addr_high; - __le32 addr_low; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_alternate_ind_write); - -/* Done alternate write (direct 0x0904) - * uses i40e_aq_desc - */ -struct i40e_aqc_alternate_write_done { - __le16 cmd_flags; -#define I40E_AQ_ALTERNATE_MODE_BIOS_MASK 1 -#define I40E_AQ_ALTERNATE_MODE_BIOS_LEGACY 0 -#define I40E_AQ_ALTERNATE_MODE_BIOS_UEFI 1 -#define I40E_AQ_ALTERNATE_RESET_NEEDED 2 - u8 reserved[14]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_alternate_write_done); - -/* Set OEM mode (direct 0x0905) */ -struct i40e_aqc_alternate_set_mode { - __le32 mode; -#define I40E_AQ_ALTERNATE_MODE_NONE 0 -#define I40E_AQ_ALTERNATE_MODE_OEM 1 - u8 reserved[12]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_alternate_set_mode); - -/* Clear port Alternate RAM (direct 0x0906) uses i40e_aq_desc */ - -/* async events 0x10xx */ - -/* Lan Queue Overflow Event (direct, 0x1001) */ -struct i40e_aqc_lan_overflow { - __le32 prtdcb_rupto; - __le32 otx_ctl; - u8 reserved[8]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_lan_overflow); - -/* Get LLDP MIB (indirect 0x0A00) */ -struct i40e_aqc_lldp_get_mib { - u8 type; - u8 reserved1; -#define I40E_AQ_LLDP_MIB_TYPE_MASK 0x3 -#define I40E_AQ_LLDP_MIB_LOCAL 0x0 -#define I40E_AQ_LLDP_MIB_REMOTE 0x1 -#define I40E_AQ_LLDP_MIB_LOCAL_AND_REMOTE 0x2 -#define I40E_AQ_LLDP_BRIDGE_TYPE_MASK 0xC -#define I40E_AQ_LLDP_BRIDGE_TYPE_SHIFT 0x2 -#define I40E_AQ_LLDP_BRIDGE_TYPE_NEAREST_BRIDGE 0x0 -#define I40E_AQ_LLDP_BRIDGE_TYPE_NON_TPMR 0x1 -#define I40E_AQ_LLDP_TX_SHIFT 0x4 -#define I40E_AQ_LLDP_TX_MASK (0x03 << I40E_AQ_LLDP_TX_SHIFT) -/* TX pause flags use I40E_AQ_LINK_TX_* above */ - __le16 local_len; - __le16 remote_len; - u8 reserved2[2]; - __le32 addr_high; - __le32 addr_low; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_lldp_get_mib); - -/* Configure LLDP MIB Change Event (direct 0x0A01) - * also used for the event (with type in the command field) - */ -struct i40e_aqc_lldp_update_mib { - u8 command; -#define I40E_AQ_LLDP_MIB_UPDATE_ENABLE 0x0 -#define I40E_AQ_LLDP_MIB_UPDATE_DISABLE 0x1 - u8 reserved[7]; - __le32 addr_high; - __le32 addr_low; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_lldp_update_mib); - -/* Add LLDP TLV (indirect 0x0A02) - * Delete LLDP TLV (indirect 0x0A04) - */ -struct i40e_aqc_lldp_add_tlv { - u8 type; /* only nearest bridge and non-TPMR from 0x0A00 */ - u8 reserved1[1]; - __le16 len; - u8 reserved2[4]; - __le32 addr_high; - __le32 addr_low; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_lldp_add_tlv); - -/* Update LLDP TLV (indirect 0x0A03) */ -struct i40e_aqc_lldp_update_tlv { - u8 type; /* only nearest bridge and non-TPMR from 0x0A00 */ - u8 reserved; - __le16 old_len; - __le16 new_offset; - __le16 new_len; - __le32 addr_high; - __le32 addr_low; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_lldp_update_tlv); - -/* Stop LLDP (direct 0x0A05) */ -struct i40e_aqc_lldp_stop { - u8 command; -#define I40E_AQ_LLDP_AGENT_STOP 0x0 -#define I40E_AQ_LLDP_AGENT_SHUTDOWN 0x1 - u8 reserved[15]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_lldp_stop); - -/* Start LLDP (direct 0x0A06) */ - -struct i40e_aqc_lldp_start { - u8 command; -#define I40E_AQ_LLDP_AGENT_START 0x1 - u8 reserved[15]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_lldp_start); - -/* Apply MIB changes (0x0A07) - * uses the generic struc as it contains no data - */ - -/* Add Udp Tunnel command and completion (direct 0x0B00) */ -struct i40e_aqc_add_udp_tunnel { - __le16 udp_port; - u8 reserved0[3]; - u8 protocol_type; -#define I40E_AQC_TUNNEL_TYPE_VXLAN 0x00 -#define I40E_AQC_TUNNEL_TYPE_NGE 0x01 -#define I40E_AQC_TUNNEL_TYPE_TEREDO 0x10 - u8 reserved1[10]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_add_udp_tunnel); - -struct i40e_aqc_add_udp_tunnel_completion { - __le16 udp_port; - u8 filter_entry_index; - u8 multiple_pfs; -#define I40E_AQC_SINGLE_PF 0x0 -#define I40E_AQC_MULTIPLE_PFS 0x1 - u8 total_filters; - u8 reserved[11]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_add_udp_tunnel_completion); - -/* remove UDP Tunnel command (0x0B01) */ -struct i40e_aqc_remove_udp_tunnel { - u8 reserved[2]; - u8 index; /* 0 to 15 */ - u8 reserved2[13]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_remove_udp_tunnel); - -struct i40e_aqc_del_udp_tunnel_completion { - __le16 udp_port; - u8 index; /* 0 to 15 */ - u8 multiple_pfs; - u8 total_filters_used; - u8 reserved1[11]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_del_udp_tunnel_completion); - -/* tunnel key structure 0x0B10 */ - -struct i40e_aqc_tunnel_key_structure { - u8 key1_off; - u8 key2_off; - u8 key1_len; /* 0 to 15 */ - u8 key2_len; /* 0 to 15 */ - u8 flags; -#define I40E_AQC_TUNNEL_KEY_STRUCT_OVERRIDE 0x01 -/* response flags */ -#define I40E_AQC_TUNNEL_KEY_STRUCT_SUCCESS 0x01 -#define I40E_AQC_TUNNEL_KEY_STRUCT_MODIFIED 0x02 -#define I40E_AQC_TUNNEL_KEY_STRUCT_OVERRIDDEN 0x03 - u8 network_key_index; -#define I40E_AQC_NETWORK_KEY_INDEX_VXLAN 0x0 -#define I40E_AQC_NETWORK_KEY_INDEX_NGE 0x1 -#define I40E_AQC_NETWORK_KEY_INDEX_FLEX_MAC_IN_UDP 0x2 -#define I40E_AQC_NETWORK_KEY_INDEX_GRE 0x3 - u8 reserved[10]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_tunnel_key_structure); - -/* OEM mode commands (direct 0xFE0x) */ -struct i40e_aqc_oem_param_change { - __le32 param_type; -#define I40E_AQ_OEM_PARAM_TYPE_PF_CTL 0 -#define I40E_AQ_OEM_PARAM_TYPE_BW_CTL 1 -#define I40E_AQ_OEM_PARAM_MAC 2 - __le32 param_value1; - u8 param_value2[8]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_oem_param_change); - -struct i40e_aqc_oem_state_change { - __le32 state; -#define I40E_AQ_OEM_STATE_LINK_DOWN 0x0 -#define I40E_AQ_OEM_STATE_LINK_UP 0x1 - u8 reserved[12]; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_oem_state_change); - -/* debug commands */ - -/* get device id (0xFF00) uses the generic structure */ - -/* set test more (0xFF01, internal) */ - -struct i40e_acq_set_test_mode { - u8 mode; -#define I40E_AQ_TEST_PARTIAL 0 -#define I40E_AQ_TEST_FULL 1 -#define I40E_AQ_TEST_NVM 2 - u8 reserved[3]; - u8 command; -#define I40E_AQ_TEST_OPEN 0 -#define I40E_AQ_TEST_CLOSE 1 -#define I40E_AQ_TEST_INC 2 - u8 reserved2[3]; - __le32 address_high; - __le32 address_low; -}; - -I40E_CHECK_CMD_LENGTH(i40e_acq_set_test_mode); - -/* Debug Read Register command (0xFF03) - * Debug Write Register command (0xFF04) - */ -struct i40e_aqc_debug_reg_read_write { - __le32 reserved; - __le32 address; - __le32 value_high; - __le32 value_low; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_debug_reg_read_write); - -/* Scatter/gather Reg Read (indirect 0xFF05) - * Scatter/gather Reg Write (indirect 0xFF06) - */ - -/* i40e_aq_desc is used for the command */ -struct i40e_aqc_debug_reg_sg_element_data { - __le32 address; - __le32 value; -}; - -/* Debug Modify register (direct 0xFF07) */ -struct i40e_aqc_debug_modify_reg { - __le32 address; - __le32 value; - __le32 clear_mask; - __le32 set_mask; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_debug_modify_reg); - -/* dump internal data (0xFF08, indirect) */ - -#define I40E_AQ_CLUSTER_ID_AUX 0 -#define I40E_AQ_CLUSTER_ID_SWITCH_FLU 1 -#define I40E_AQ_CLUSTER_ID_TXSCHED 2 -#define I40E_AQ_CLUSTER_ID_HMC 3 -#define I40E_AQ_CLUSTER_ID_MAC0 4 -#define I40E_AQ_CLUSTER_ID_MAC1 5 -#define I40E_AQ_CLUSTER_ID_MAC2 6 -#define I40E_AQ_CLUSTER_ID_MAC3 7 -#define I40E_AQ_CLUSTER_ID_DCB 8 -#define I40E_AQ_CLUSTER_ID_EMP_MEM 9 -#define I40E_AQ_CLUSTER_ID_PKT_BUF 10 -#define I40E_AQ_CLUSTER_ID_ALTRAM 11 - -struct i40e_aqc_debug_dump_internals { - u8 cluster_id; - u8 table_id; - __le16 data_size; - __le32 idx; - __le32 address_high; - __le32 address_low; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_debug_dump_internals); - -struct i40e_aqc_debug_modify_internals { - u8 cluster_id; - u8 cluster_specific_params[7]; - __le32 address_high; - __le32 address_low; -}; - -I40E_CHECK_CMD_LENGTH(i40e_aqc_debug_modify_internals); - -#endif diff --git a/sys/dev/iscsi/icl.c b/sys/dev/iscsi/icl.c index 1a8a26a..af59407 100644 --- a/sys/dev/iscsi/icl.c +++ b/sys/dev/iscsi/icl.c @@ -26,7 +26,6 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD$ */ /* @@ -34,6 +33,9 @@ * and receive iSCSI PDUs. */ +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + #include <sys/param.h> #include <sys/capsicum.h> #include <sys/condvar.h> @@ -56,8 +58,8 @@ #include <netinet/in.h> #include <netinet/tcp.h> -#include "icl.h" -#include "iscsi_proto.h" +#include <dev/iscsi/icl.h> +#include <dev/iscsi/iscsi_proto.h> SYSCTL_NODE(_kern, OID_AUTO, icl, CTLFLAG_RD, 0, "iSCSI Common Layer"); static int debug = 1; diff --git a/sys/dev/iscsi/icl_proxy.c b/sys/dev/iscsi/icl_proxy.c index c59ee0e..3a8db66 100644 --- a/sys/dev/iscsi/icl_proxy.c +++ b/sys/dev/iscsi/icl_proxy.c @@ -26,7 +26,6 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD$ */ /*- * Copyright (c) 1982, 1986, 1989, 1990, 1993 @@ -68,6 +67,9 @@ #ifdef ICL_KERNEL_PROXY +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + #include <sys/param.h> #include <sys/capsicum.h> #include <sys/condvar.h> @@ -85,7 +87,7 @@ #include <linux/types.h> #include <rdma/rdma_cm.h> -#include "icl.h" +#include <dev/iscsi/icl.h> static int debug = 1; diff --git a/sys/dev/iscsi/iscsi.c b/sys/dev/iscsi/iscsi.c index 8c04922..c08abf9 100644 --- a/sys/dev/iscsi/iscsi.c +++ b/sys/dev/iscsi/iscsi.c @@ -26,9 +26,11 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD$ */ +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + #include <sys/param.h> #include <sys/condvar.h> #include <sys/conf.h> @@ -57,10 +59,10 @@ #include <cam/scsi/scsi_all.h> #include <cam/scsi/scsi_message.h> -#include "iscsi_ioctl.h" -#include "iscsi.h" -#include "icl.h" -#include "iscsi_proto.h" +#include <dev/iscsi/icl.h> +#include <dev/iscsi/iscsi_ioctl.h> +#include <dev/iscsi/iscsi_proto.h> +#include <dev/iscsi/iscsi.h> #ifdef ICL_KERNEL_PROXY #include <sys/socketvar.h> diff --git a/sys/dev/ixgbe/ixgbe.c b/sys/dev/ixgbe/ixgbe.c index b2bbcb0..c39a63a 100644 --- a/sys/dev/ixgbe/ixgbe.c +++ b/sys/dev/ixgbe/ixgbe.c @@ -317,7 +317,7 @@ SYSCTL_INT(_hw_ix, OID_AUTO, rxd, CTLFLAG_RDTUN, &ixgbe_rxd, 0, ** doing so you are on your own :) */ static int allow_unsupported_sfp = FALSE; -TUNABLE_INT("hw.ixgbe.unsupported_sfp", &allow_unsupported_sfp); +TUNABLE_INT("hw.ix.unsupported_sfp", &allow_unsupported_sfp); /* ** HW RSC control: @@ -3155,7 +3155,7 @@ ixgbe_setup_transmit_ring(struct tx_ring *txr) */ if (slot) { int si = netmap_idx_n2k(&na->tx_rings[txr->me], i); - netmap_load_map(txr->txtag, txbuf->map, NMB(slot + si)); + netmap_load_map(na, txr->txtag, txbuf->map, NMB(na, slot + si)); } #endif /* DEV_NETMAP */ /* Clear the EOP descriptor pointer */ @@ -4098,8 +4098,8 @@ ixgbe_setup_receive_ring(struct rx_ring *rxr) uint64_t paddr; void *addr; - addr = PNMB(slot + sj, &paddr); - netmap_load_map(rxr->ptag, rxbuf->pmap, addr); + addr = PNMB(na, slot + sj, &paddr); + netmap_load_map(na, rxr->ptag, rxbuf->pmap, addr); /* Update descriptor and the cached value */ rxr->rx_base[j].read.pkt_addr = htole64(paddr); rxbuf->addr = htole64(paddr); diff --git a/sys/dev/i40e/README b/sys/dev/ixl/README index e52b099..066e4e4 100644 --- a/sys/dev/i40e/README +++ b/sys/dev/ixl/README @@ -1,7 +1,7 @@ -FreeBSD Base Driver for the Intel® XL710 Ethernet Controller Family -================================================================ +ixl FreeBSD* Base Driver for the Intel® XL710 Ethernet Controller Family /*$FreeBSD$*/ +================================================================ July 21, 2014 @@ -19,7 +19,7 @@ Contents Overview ======== -This file describes the i40e FreeBSD* Base driver for the XL710 Ethernet Family of Adapters. The Driver has been developed for use with FreeBSD 10.0 or later, but should be compatible with any supported release. +This file describes the IXL FreeBSD* Base driver for the XL710 Ethernet Family of Adapters. The Driver has been developed for use with FreeBSD 10.0 or later, but should be compatible with any supported release. For questions related to hardware requirements, refer to the documentation supplied with your Intel XL710 adapter. All hardware requirements listed apply for use with FreeBSD. @@ -60,17 +60,17 @@ NOTE: You must have kernel sources installed to compile the driver module. In the instructions below, x.x.x is the driver version as indicated in thename of the driver tar. -1. Move the base driver tar file to the directory of your choice. For example, use /home/username/i40e or /usr/local/src/i40e. +1. Move the base driver tar file to the directory of your choice. For example, use /home/username/ixl or /usr/local/src/ixl. 2. Untar/unzip the archive: - tar xfz i40e-x.x.x.tar.gz + tar xfz ixl-x.x.x.tar.gz 3. To install man page: - cd i40e-x.x.x - gzip -c i40e.4 > /usr/share/man/man4/i40e.4.gz + cd ixl-x.x.x + gzip -c ixl.4 > /usr/share/man/man4/ixl.4.gz 4. To load the driver onto a running system: - cd i40e-x.x.x/src + cd ixl-x.x.x/src make load 5. To assign an IP address to the interface, enter the following: @@ -82,12 +82,12 @@ as indicated in thename of the driver tar. 7. If you want the driver to load automatically when the system is booted: - cd i40e-x.x.x/src + cd ixl-x.x.x/src make make install Edit /boot/loader.conf, and add the following line: - if_i40e_load="YES" + if_ixl_load="YES" Edit /etc/rc.conf, and create the appropriate ifconfig_ixl<interface_num> entry: @@ -304,7 +304,7 @@ Also, increasing the follwing in /etc/sysctl.conf could help increase network UDP Stress Test Dropped Packet Issue ------------------------------------ - Under small packet UDP stress test with the i40e driver, the FreeBSD system will drop UDP packets due to the fullness of socket buffers. You may want to change the driver's Flow Control variables to the minimum value for controlling packet reception. + Under small packet UDP stress test with the ixl driver, the FreeBSD system will drop UDP packets due to the fullness of socket buffers. You may want to change the driver's Flow Control variables to the minimum value for controlling packet reception. Disable LRO when routing/bridging diff --git a/sys/dev/i40e/i40e_adminq.c b/sys/dev/ixl/i40e_adminq.c index cca01a6..e0f8725 100755 --- a/sys/dev/i40e/i40e_adminq.c +++ b/sys/dev/ixl/i40e_adminq.c @@ -57,7 +57,7 @@ static INLINE bool i40e_is_nvm_update_op(struct i40e_aq_desc *desc) static void i40e_adminq_init_regs(struct i40e_hw *hw) { /* set head and tail registers in our local struct */ - if (hw->mac.type == I40E_MAC_VF) { + if (i40e_is_vf(hw)) { hw->aq.asq.tail = I40E_VF_ATQT1; hw->aq.asq.head = I40E_VF_ATQH1; hw->aq.asq.len = I40E_VF_ATQLEN1; @@ -68,19 +68,6 @@ static void i40e_adminq_init_regs(struct i40e_hw *hw) hw->aq.arq.len = I40E_VF_ARQLEN1; hw->aq.arq.bal = I40E_VF_ARQBAL1; hw->aq.arq.bah = I40E_VF_ARQBAH1; -#ifdef I40E_QV - } else if (hw->aq_dbg_ena) { - hw->aq.asq.tail = I40E_GL_ATQT; - hw->aq.asq.head = I40E_GL_ATQH; - hw->aq.asq.len = I40E_GL_ATQLEN; - hw->aq.asq.bal = I40E_GL_ATQBAL; - hw->aq.asq.bah = I40E_GL_ATQBAH; - hw->aq.arq.tail = I40E_GL_ARQT; - hw->aq.arq.head = I40E_GL_ARQH; - hw->aq.arq.len = I40E_GL_ARQLEN; - hw->aq.arq.bal = I40E_GL_ARQBAL; - hw->aq.arq.bah = I40E_GL_ARQBAH; -#endif } else { hw->aq.asq.tail = I40E_PF_ATQT; hw->aq.asq.head = I40E_PF_ATQH; @@ -169,10 +156,6 @@ void i40e_free_adminq_arq(struct i40e_hw *hw) **/ static enum i40e_status_code i40e_alloc_arq_bufs(struct i40e_hw *hw) { -#ifdef I40E_QV - struct i40e_aq_desc qv_desc; - struct i40e_aq_desc *qv_desc_on_ring; -#endif enum i40e_status_code ret_code; struct i40e_aq_desc *desc; struct i40e_dma_mem *bi; @@ -201,13 +184,6 @@ static enum i40e_status_code i40e_alloc_arq_bufs(struct i40e_hw *hw) /* now configure the descriptors for use */ desc = I40E_ADMINQ_DESC(hw->aq.arq, i); -#ifdef I40E_QV - /* swap the descriptor with userspace version */ - i40e_memcpy(&qv_desc, desc, sizeof(struct i40e_aq_desc), - I40E_DMA_TO_NONDMA); - qv_desc_on_ring = desc; - desc = &qv_desc; -#endif desc->flags = CPU_TO_LE16(I40E_AQ_FLAG_BUF); if (hw->aq.arq_buf_size > I40E_AQ_LARGE_BUF) @@ -226,11 +202,6 @@ static enum i40e_status_code i40e_alloc_arq_bufs(struct i40e_hw *hw) CPU_TO_LE32(I40E_LO_DWORD(bi->pa)); desc->params.external.param0 = 0; desc->params.external.param1 = 0; -#ifdef I40E_QV - /* put the initialized descriptor back to the ring */ - i40e_memcpy(qv_desc_on_ring, desc, sizeof(struct i40e_aq_desc), - I40E_NONDMA_TO_DMA); -#endif } alloc_arq_bufs: @@ -521,22 +492,11 @@ enum i40e_status_code i40e_shutdown_asq(struct i40e_hw *hw) return I40E_ERR_NOT_READY; /* Stop firmware AdminQ processing */ -#ifdef I40E_QV - /* Do not reset registers, as Tools AQ is shared resource for QV */ - if (!hw->aq_dbg_ena) { - wr32(hw, hw->aq.asq.head, 0); - wr32(hw, hw->aq.asq.tail, 0); - wr32(hw, hw->aq.asq.len, 0); - wr32(hw, hw->aq.asq.bal, 0); - wr32(hw, hw->aq.asq.bah, 0); - } -#else wr32(hw, hw->aq.asq.head, 0); wr32(hw, hw->aq.asq.tail, 0); wr32(hw, hw->aq.asq.len, 0); wr32(hw, hw->aq.asq.bal, 0); wr32(hw, hw->aq.asq.bah, 0); -#endif /* make sure spinlock is available */ i40e_acquire_spinlock(&hw->aq.asq_spinlock); @@ -565,22 +525,11 @@ enum i40e_status_code i40e_shutdown_arq(struct i40e_hw *hw) return I40E_ERR_NOT_READY; /* Stop firmware AdminQ processing */ -#ifdef I40E_QV - /* Do not reset registers, as Tools AQ is shared resource for QV */ - if (!hw->aq_dbg_ena) { - wr32(hw, hw->aq.arq.head, 0); - wr32(hw, hw->aq.arq.tail, 0); - wr32(hw, hw->aq.arq.len, 0); - wr32(hw, hw->aq.arq.bal, 0); - wr32(hw, hw->aq.arq.bah, 0); - } -#else wr32(hw, hw->aq.arq.head, 0); wr32(hw, hw->aq.arq.tail, 0); wr32(hw, hw->aq.arq.len, 0); wr32(hw, hw->aq.arq.bal, 0); wr32(hw, hw->aq.arq.bah, 0); -#endif /* make sure spinlock is available */ i40e_acquire_spinlock(&hw->aq.arq_spinlock); @@ -611,7 +560,6 @@ enum i40e_status_code i40e_init_adminq(struct i40e_hw *hw) enum i40e_status_code ret_code; u16 eetrack_lo, eetrack_hi; int retry = 0; - /* verify input for valid configuration */ if ((hw->aq.num_arq_entries == 0) || (hw->aq.num_asq_entries == 0) || @@ -641,7 +589,10 @@ enum i40e_status_code i40e_init_adminq(struct i40e_hw *hw) if (ret_code != I40E_SUCCESS) goto init_adminq_free_asq; - /* There are some cases where the firmware may not be quite ready + if (i40e_is_vf(hw)) /* VF has no need of firmware */ + goto init_adminq_exit; + +/* There are some cases where the firmware may not be quite ready * for AdminQ operations, so we retry the AdminQ setup a few times * if we see timeouts in this first AQ call. */ @@ -667,19 +618,10 @@ enum i40e_status_code i40e_init_adminq(struct i40e_hw *hw) i40e_read_nvm_word(hw, I40E_SR_NVM_EETRACK_HI, &eetrack_hi); hw->nvm.eetrack = (eetrack_hi << 16) | eetrack_lo; -#ifdef I40E_QV - if (!hw->qv_force_init) { - if (hw->aq.api_maj_ver > I40E_FW_API_VERSION_MAJOR) { - ret_code = I40E_ERR_FIRMWARE_API_VERSION; - goto init_adminq_free_arq; - } - } -#else if (hw->aq.api_maj_ver > I40E_FW_API_VERSION_MAJOR) { ret_code = I40E_ERR_FIRMWARE_API_VERSION; goto init_adminq_free_arq; } -#endif /* pre-emptive resource lock release */ i40e_aq_release_resource(hw, I40E_NVM_RESOURCE_ID, 0, NULL); @@ -714,16 +656,8 @@ enum i40e_status_code i40e_shutdown_adminq(struct i40e_hw *hw) { enum i40e_status_code ret_code = I40E_SUCCESS; -#ifdef I40E_QV - /* This command is not supported for Tools AQ */ - if (!hw->aq_dbg_ena) { - if (i40e_check_asq_alive(hw)) - i40e_aq_queue_shutdown(hw, TRUE); - } -#else if (i40e_check_asq_alive(hw)) i40e_aq_queue_shutdown(hw, TRUE); -#endif i40e_shutdown_asq(hw); i40e_shutdown_arq(hw); @@ -743,10 +677,6 @@ enum i40e_status_code i40e_shutdown_adminq(struct i40e_hw *hw) **/ u16 i40e_clean_asq(struct i40e_hw *hw) { -#ifdef I40E_QV - struct i40e_aq_desc qv_desc = {0}; - struct i40e_aq_desc *qv_desc_on_ring; -#endif /* I40E_QV */ struct i40e_adminq_ring *asq = &(hw->aq.asq); struct i40e_asq_cmd_details *details; u16 ntc = asq->next_to_clean; @@ -755,13 +685,6 @@ u16 i40e_clean_asq(struct i40e_hw *hw) desc = I40E_ADMINQ_DESC(*asq, ntc); details = I40E_ADMINQ_DETAILS(*asq, ntc); -#ifdef I40E_QV - /* copy the descriptor from ring to userspace buffer */ - i40e_memcpy(&qv_desc, desc, sizeof(struct i40e_aq_desc), - I40E_DMA_TO_NONDMA); - qv_desc_on_ring = desc; - desc = &qv_desc; -#endif /* I40E_QV */ while (rd32(hw, hw->aq.asq.head) != ntc) { i40e_debug(hw, I40E_DEBUG_AQ_MESSAGE, "%s: ntc %d head %d.\n", __FUNCTION__, ntc, @@ -776,23 +699,11 @@ u16 i40e_clean_asq(struct i40e_hw *hw) } i40e_memset(desc, 0, sizeof(*desc), I40E_DMA_MEM); i40e_memset(details, 0, sizeof(*details), I40E_NONDMA_MEM); -#ifdef I40E_QV - /* copy the descriptor from userspace buffer to ring */ - i40e_memcpy(qv_desc_on_ring, desc, - sizeof(struct i40e_aq_desc), I40E_NONDMA_TO_DMA); -#endif /* I40E_QV */ ntc++; if (ntc == asq->count) ntc = 0; desc = I40E_ADMINQ_DESC(*asq, ntc); details = I40E_ADMINQ_DETAILS(*asq, ntc); -#ifdef I40E_QV - /* copy the descriptor from ring to userspace buffer */ - i40e_memcpy(&qv_desc, desc, sizeof(struct i40e_aq_desc), - I40E_DMA_TO_NONDMA); - qv_desc_on_ring = desc; - desc = &qv_desc; -#endif /* I40E_QV */ } asq->next_to_clean = ntc; @@ -833,10 +744,6 @@ enum i40e_status_code i40e_asq_send_command(struct i40e_hw *hw, u16 buff_size, struct i40e_asq_cmd_details *cmd_details) { -#ifdef I40E_QV - struct i40e_aq_desc qv_desc = {0}; - struct i40e_aq_desc *qv_desc_on_ring; -#endif /* I40E_QV */ enum i40e_status_code status = I40E_SUCCESS; struct i40e_dma_mem *dma_buff = NULL; struct i40e_asq_cmd_details *details; @@ -933,13 +840,6 @@ enum i40e_status_code i40e_asq_send_command(struct i40e_hw *hw, /* if the desc is available copy the temp desc to the right place */ i40e_memcpy(desc_on_ring, desc, sizeof(struct i40e_aq_desc), I40E_NONDMA_TO_DMA); -#ifdef I40E_QV - /* copy the descriptor from ring to userspace buffer */ - i40e_memcpy(&qv_desc, desc_on_ring, sizeof(struct i40e_aq_desc), - I40E_DMA_TO_NONDMA); - qv_desc_on_ring = desc_on_ring; - desc_on_ring = &qv_desc; -#endif /* I40E_QV */ /* if buff is not NULL assume indirect command */ if (buff != NULL) { @@ -956,11 +856,6 @@ enum i40e_status_code i40e_asq_send_command(struct i40e_hw *hw, CPU_TO_LE32(I40E_HI_DWORD(dma_buff->pa)); desc_on_ring->params.external.addr_low = CPU_TO_LE32(I40E_LO_DWORD(dma_buff->pa)); -#ifdef I40E_QV - /* copy the descriptor from userspace buffer to ring */ - i40e_memcpy(qv_desc_on_ring, desc_on_ring, - sizeof(struct i40e_aq_desc), I40E_NONDMA_TO_DMA); -#endif /* I40E_QV */ } /* bump the tail */ @@ -978,31 +873,21 @@ enum i40e_status_code i40e_asq_send_command(struct i40e_hw *hw, */ if (!details->async && !details->postpone) { u32 total_delay = 0; - u32 delay_len = 10; do { -#ifdef I40E_QV - /* copy the descriptor from ring to user buffer */ - i40e_memcpy(desc_on_ring, qv_desc_on_ring, - sizeof(struct i40e_aq_desc), I40E_DMA_TO_NONDMA); -#endif /* I40E_QV */ /* AQ designers suggest use of head for better * timing reliability than DD bit */ if (i40e_asq_done(hw)) break; /* ugh! delay while spin_lock */ - i40e_usec_delay(delay_len); - total_delay += delay_len; + i40e_msec_delay(1); + total_delay++; } while (total_delay < hw->aq.asq_cmd_timeout); } /* if ready, copy the desc back to temp */ if (i40e_asq_done(hw)) { -#ifdef I40E_QV - /* Swap pointer back */ - desc_on_ring = qv_desc_on_ring; -#endif /* I40E_QV */ i40e_memcpy(desc, desc_on_ring, sizeof(struct i40e_aq_desc), I40E_DMA_TO_NONDMA); if (buff != NULL) @@ -1079,10 +964,6 @@ enum i40e_status_code i40e_clean_arq_element(struct i40e_hw *hw, struct i40e_arq_event_info *e, u16 *pending) { -#ifdef I40E_QV - struct i40e_aq_desc qv_desc = {0}; - struct i40e_aq_desc *qv_desc_on_ring; -#endif /* I40E_QV */ enum i40e_status_code ret_code = I40E_SUCCESS; u16 ntc = hw->aq.arq.next_to_clean; struct i40e_aq_desc *desc; @@ -1099,22 +980,12 @@ enum i40e_status_code i40e_clean_arq_element(struct i40e_hw *hw, ntu = (rd32(hw, hw->aq.arq.head) & I40E_PF_ARQH_ARQH_MASK); if (ntu == ntc) { /* nothing to do - shouldn't need to update ring's values */ - i40e_debug(hw, - I40E_DEBUG_AQ_MESSAGE, - "AQRX: Queue is empty.\n"); ret_code = I40E_ERR_ADMIN_QUEUE_NO_WORK; goto clean_arq_element_out; } /* now clean the next descriptor */ desc = I40E_ADMINQ_DESC(hw->aq.arq, ntc); -#ifdef I40E_QV - /* copy the descriptor from ring to userspace buffer */ - i40e_memcpy(&qv_desc, desc, sizeof(struct i40e_aq_desc), - I40E_DMA_TO_NONDMA); - qv_desc_on_ring = desc; - desc = &qv_desc; -#endif /* I40E_QV */ desc_idx = ntc; flags = LE16_TO_CPU(desc->flags); @@ -1131,11 +1002,11 @@ enum i40e_status_code i40e_clean_arq_element(struct i40e_hw *hw, i40e_memcpy(&e->desc, desc, sizeof(struct i40e_aq_desc), I40E_DMA_TO_NONDMA); datalen = LE16_TO_CPU(desc->datalen); - e->msg_size = min(datalen, e->msg_size); - if (e->msg_buf != NULL && (e->msg_size != 0)) + e->msg_len = min(datalen, e->buf_len); + if (e->msg_buf != NULL && (e->msg_len != 0)) i40e_memcpy(e->msg_buf, hw->aq.arq.r.arq_bi[desc_idx].va, - e->msg_size, I40E_DMA_TO_NONDMA); + e->msg_len, I40E_DMA_TO_NONDMA); i40e_debug(hw, I40E_DEBUG_AQ_MESSAGE, "AQRX: desc and buffer:\n"); i40e_debug_aq(hw, I40E_DEBUG_AQ_COMMAND, (void *)desc, e->msg_buf, @@ -1154,11 +1025,6 @@ enum i40e_status_code i40e_clean_arq_element(struct i40e_hw *hw, desc->datalen = CPU_TO_LE16((u16)bi->size); desc->params.external.addr_high = CPU_TO_LE32(I40E_HI_DWORD(bi->pa)); desc->params.external.addr_low = CPU_TO_LE32(I40E_LO_DWORD(bi->pa)); -#ifdef I40E_QV - /* copy the descriptor from userspace buffer to ring */ - i40e_memcpy(qv_desc_on_ring, desc, - sizeof(struct i40e_aq_desc), I40E_NONDMA_TO_DMA); -#endif /* I40E_QV */ /* set tail = the last cleaned desc index. */ wr32(hw, hw->aq.arq.tail, ntc); diff --git a/sys/dev/i40e/i40e_adminq.h b/sys/dev/ixl/i40e_adminq.h index f5a33ea..bebbebc 100755 --- a/sys/dev/i40e/i40e_adminq.h +++ b/sys/dev/ixl/i40e_adminq.h @@ -84,7 +84,8 @@ struct i40e_asq_cmd_details { /* ARQ event information */ struct i40e_arq_event_info { struct i40e_aq_desc desc; - u16 msg_size; + u16 msg_len; + u16 buf_len; u8 *msg_buf; }; @@ -114,7 +115,7 @@ struct i40e_adminq_info { /* general information */ #define I40E_AQ_LARGE_BUF 512 -#define I40E_ASQ_CMD_TIMEOUT 100000 /* usecs */ +#define I40E_ASQ_CMD_TIMEOUT 100 /* msecs */ void i40e_fill_default_direct_cmd_desc(struct i40e_aq_desc *desc, u16 opcode); diff --git a/sys/dev/ixl/i40e_adminq_cmd.h b/sys/dev/ixl/i40e_adminq_cmd.h new file mode 100755 index 0000000..431463d --- /dev/null +++ b/sys/dev/ixl/i40e_adminq_cmd.h @@ -0,0 +1,2180 @@ +/****************************************************************************** + + Copyright (c) 2013-2014, Intel Corporation + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + 3. Neither the name of the Intel Corporation nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + +******************************************************************************/ +/*$FreeBSD$*/ + +#ifndef _I40E_ADMINQ_CMD_H_ +#define _I40E_ADMINQ_CMD_H_ + +/* This header file defines the i40e Admin Queue commands and is shared between + * i40e Firmware and Software. + * + * This file needs to comply with the Linux Kernel coding style. + */ + +#define I40E_FW_API_VERSION_MAJOR 0x0001 +#define I40E_FW_API_VERSION_MINOR 0x0002 + +struct i40e_aq_desc { + __le16 flags; + __le16 opcode; + __le16 datalen; + __le16 retval; + __le32 cookie_high; + __le32 cookie_low; + union { + struct { + __le32 param0; + __le32 param1; + __le32 param2; + __le32 param3; + } internal; + struct { + __le32 param0; + __le32 param1; + __le32 addr_high; + __le32 addr_low; + } external; + u8 raw[16]; + } params; +}; + +/* Flags sub-structure + * |0 |1 |2 |3 |4 |5 |6 |7 |8 |9 |10 |11 |12 |13 |14 |15 | + * |DD |CMP|ERR|VFE| * * RESERVED * * |LB |RD |VFC|BUF|SI |EI |FE | + */ + +/* command flags and offsets*/ +#define I40E_AQ_FLAG_DD_SHIFT 0 +#define I40E_AQ_FLAG_CMP_SHIFT 1 +#define I40E_AQ_FLAG_ERR_SHIFT 2 +#define I40E_AQ_FLAG_VFE_SHIFT 3 +#define I40E_AQ_FLAG_LB_SHIFT 9 +#define I40E_AQ_FLAG_RD_SHIFT 10 +#define I40E_AQ_FLAG_VFC_SHIFT 11 +#define I40E_AQ_FLAG_BUF_SHIFT 12 +#define I40E_AQ_FLAG_SI_SHIFT 13 +#define I40E_AQ_FLAG_EI_SHIFT 14 +#define I40E_AQ_FLAG_FE_SHIFT 15 + +#define I40E_AQ_FLAG_DD (1 << I40E_AQ_FLAG_DD_SHIFT) /* 0x1 */ +#define I40E_AQ_FLAG_CMP (1 << I40E_AQ_FLAG_CMP_SHIFT) /* 0x2 */ +#define I40E_AQ_FLAG_ERR (1 << I40E_AQ_FLAG_ERR_SHIFT) /* 0x4 */ +#define I40E_AQ_FLAG_VFE (1 << I40E_AQ_FLAG_VFE_SHIFT) /* 0x8 */ +#define I40E_AQ_FLAG_LB (1 << I40E_AQ_FLAG_LB_SHIFT) /* 0x200 */ +#define I40E_AQ_FLAG_RD (1 << I40E_AQ_FLAG_RD_SHIFT) /* 0x400 */ +#define I40E_AQ_FLAG_VFC (1 << I40E_AQ_FLAG_VFC_SHIFT) /* 0x800 */ +#define I40E_AQ_FLAG_BUF (1 << I40E_AQ_FLAG_BUF_SHIFT) /* 0x1000 */ +#define I40E_AQ_FLAG_SI (1 << I40E_AQ_FLAG_SI_SHIFT) /* 0x2000 */ +#define I40E_AQ_FLAG_EI (1 << I40E_AQ_FLAG_EI_SHIFT) /* 0x4000 */ +#define I40E_AQ_FLAG_FE (1 << I40E_AQ_FLAG_FE_SHIFT) /* 0x8000 */ + +/* error codes */ +enum i40e_admin_queue_err { + I40E_AQ_RC_OK = 0, /* success */ + I40E_AQ_RC_EPERM = 1, /* Operation not permitted */ + I40E_AQ_RC_ENOENT = 2, /* No such element */ + I40E_AQ_RC_ESRCH = 3, /* Bad opcode */ + I40E_AQ_RC_EINTR = 4, /* operation interrupted */ + I40E_AQ_RC_EIO = 5, /* I/O error */ + I40E_AQ_RC_ENXIO = 6, /* No such resource */ + I40E_AQ_RC_E2BIG = 7, /* Arg too long */ + I40E_AQ_RC_EAGAIN = 8, /* Try again */ + I40E_AQ_RC_ENOMEM = 9, /* Out of memory */ + I40E_AQ_RC_EACCES = 10, /* Permission denied */ + I40E_AQ_RC_EFAULT = 11, /* Bad address */ + I40E_AQ_RC_EBUSY = 12, /* Device or resource busy */ + I40E_AQ_RC_EEXIST = 13, /* object already exists */ + I40E_AQ_RC_EINVAL = 14, /* Invalid argument */ + I40E_AQ_RC_ENOTTY = 15, /* Not a typewriter */ + I40E_AQ_RC_ENOSPC = 16, /* No space left or alloc failure */ + I40E_AQ_RC_ENOSYS = 17, /* Function not implemented */ + I40E_AQ_RC_ERANGE = 18, /* Parameter out of range */ + I40E_AQ_RC_EFLUSHED = 19, /* Cmd flushed due to prev cmd error */ + I40E_AQ_RC_BAD_ADDR = 20, /* Descriptor contains a bad pointer */ + I40E_AQ_RC_EMODE = 21, /* Op not allowed in current dev mode */ + I40E_AQ_RC_EFBIG = 22, /* File too large */ +}; + +/* Admin Queue command opcodes */ +enum i40e_admin_queue_opc { + /* aq commands */ + i40e_aqc_opc_get_version = 0x0001, + i40e_aqc_opc_driver_version = 0x0002, + i40e_aqc_opc_queue_shutdown = 0x0003, + i40e_aqc_opc_set_pf_context = 0x0004, + + /* resource ownership */ + i40e_aqc_opc_request_resource = 0x0008, + i40e_aqc_opc_release_resource = 0x0009, + + i40e_aqc_opc_list_func_capabilities = 0x000A, + i40e_aqc_opc_list_dev_capabilities = 0x000B, + + i40e_aqc_opc_set_cppm_configuration = 0x0103, + i40e_aqc_opc_set_arp_proxy_entry = 0x0104, + i40e_aqc_opc_set_ns_proxy_entry = 0x0105, + + /* LAA */ + i40e_aqc_opc_mng_laa = 0x0106, /* AQ obsolete */ + i40e_aqc_opc_mac_address_read = 0x0107, + i40e_aqc_opc_mac_address_write = 0x0108, + + /* PXE */ + i40e_aqc_opc_clear_pxe_mode = 0x0110, + + /* internal switch commands */ + i40e_aqc_opc_get_switch_config = 0x0200, + i40e_aqc_opc_add_statistics = 0x0201, + i40e_aqc_opc_remove_statistics = 0x0202, + i40e_aqc_opc_set_port_parameters = 0x0203, + i40e_aqc_opc_get_switch_resource_alloc = 0x0204, + + i40e_aqc_opc_add_vsi = 0x0210, + i40e_aqc_opc_update_vsi_parameters = 0x0211, + i40e_aqc_opc_get_vsi_parameters = 0x0212, + + i40e_aqc_opc_add_pv = 0x0220, + i40e_aqc_opc_update_pv_parameters = 0x0221, + i40e_aqc_opc_get_pv_parameters = 0x0222, + + i40e_aqc_opc_add_veb = 0x0230, + i40e_aqc_opc_update_veb_parameters = 0x0231, + i40e_aqc_opc_get_veb_parameters = 0x0232, + + i40e_aqc_opc_delete_element = 0x0243, + + i40e_aqc_opc_add_macvlan = 0x0250, + i40e_aqc_opc_remove_macvlan = 0x0251, + i40e_aqc_opc_add_vlan = 0x0252, + i40e_aqc_opc_remove_vlan = 0x0253, + i40e_aqc_opc_set_vsi_promiscuous_modes = 0x0254, + i40e_aqc_opc_add_tag = 0x0255, + i40e_aqc_opc_remove_tag = 0x0256, + i40e_aqc_opc_add_multicast_etag = 0x0257, + i40e_aqc_opc_remove_multicast_etag = 0x0258, + i40e_aqc_opc_update_tag = 0x0259, + i40e_aqc_opc_add_control_packet_filter = 0x025A, + i40e_aqc_opc_remove_control_packet_filter = 0x025B, + i40e_aqc_opc_add_cloud_filters = 0x025C, + i40e_aqc_opc_remove_cloud_filters = 0x025D, + + i40e_aqc_opc_add_mirror_rule = 0x0260, + i40e_aqc_opc_delete_mirror_rule = 0x0261, + + /* DCB commands */ + i40e_aqc_opc_dcb_ignore_pfc = 0x0301, + i40e_aqc_opc_dcb_updated = 0x0302, + + /* TX scheduler */ + i40e_aqc_opc_configure_vsi_bw_limit = 0x0400, + i40e_aqc_opc_configure_vsi_ets_sla_bw_limit = 0x0406, + i40e_aqc_opc_configure_vsi_tc_bw = 0x0407, + i40e_aqc_opc_query_vsi_bw_config = 0x0408, + i40e_aqc_opc_query_vsi_ets_sla_config = 0x040A, + i40e_aqc_opc_configure_switching_comp_bw_limit = 0x0410, + + i40e_aqc_opc_enable_switching_comp_ets = 0x0413, + i40e_aqc_opc_modify_switching_comp_ets = 0x0414, + i40e_aqc_opc_disable_switching_comp_ets = 0x0415, + i40e_aqc_opc_configure_switching_comp_ets_bw_limit = 0x0416, + i40e_aqc_opc_configure_switching_comp_bw_config = 0x0417, + i40e_aqc_opc_query_switching_comp_ets_config = 0x0418, + i40e_aqc_opc_query_port_ets_config = 0x0419, + i40e_aqc_opc_query_switching_comp_bw_config = 0x041A, + i40e_aqc_opc_suspend_port_tx = 0x041B, + i40e_aqc_opc_resume_port_tx = 0x041C, + i40e_aqc_opc_configure_partition_bw = 0x041D, + + /* hmc */ + i40e_aqc_opc_query_hmc_resource_profile = 0x0500, + i40e_aqc_opc_set_hmc_resource_profile = 0x0501, + + /* phy commands*/ + i40e_aqc_opc_get_phy_abilities = 0x0600, + i40e_aqc_opc_set_phy_config = 0x0601, + i40e_aqc_opc_set_mac_config = 0x0603, + i40e_aqc_opc_set_link_restart_an = 0x0605, + i40e_aqc_opc_get_link_status = 0x0607, + i40e_aqc_opc_set_phy_int_mask = 0x0613, + i40e_aqc_opc_get_local_advt_reg = 0x0614, + i40e_aqc_opc_set_local_advt_reg = 0x0615, + i40e_aqc_opc_get_partner_advt = 0x0616, + i40e_aqc_opc_set_lb_modes = 0x0618, + i40e_aqc_opc_get_phy_wol_caps = 0x0621, + i40e_aqc_opc_set_phy_debug = 0x0622, + i40e_aqc_opc_upload_ext_phy_fm = 0x0625, + + /* NVM commands */ + i40e_aqc_opc_nvm_read = 0x0701, + i40e_aqc_opc_nvm_erase = 0x0702, + i40e_aqc_opc_nvm_update = 0x0703, + i40e_aqc_opc_nvm_config_read = 0x0704, + i40e_aqc_opc_nvm_config_write = 0x0705, + + /* virtualization commands */ + i40e_aqc_opc_send_msg_to_pf = 0x0801, + i40e_aqc_opc_send_msg_to_vf = 0x0802, + i40e_aqc_opc_send_msg_to_peer = 0x0803, + + /* alternate structure */ + i40e_aqc_opc_alternate_write = 0x0900, + i40e_aqc_opc_alternate_write_indirect = 0x0901, + i40e_aqc_opc_alternate_read = 0x0902, + i40e_aqc_opc_alternate_read_indirect = 0x0903, + i40e_aqc_opc_alternate_write_done = 0x0904, + i40e_aqc_opc_alternate_set_mode = 0x0905, + i40e_aqc_opc_alternate_clear_port = 0x0906, + + /* LLDP commands */ + i40e_aqc_opc_lldp_get_mib = 0x0A00, + i40e_aqc_opc_lldp_update_mib = 0x0A01, + i40e_aqc_opc_lldp_add_tlv = 0x0A02, + i40e_aqc_opc_lldp_update_tlv = 0x0A03, + i40e_aqc_opc_lldp_delete_tlv = 0x0A04, + i40e_aqc_opc_lldp_stop = 0x0A05, + i40e_aqc_opc_lldp_start = 0x0A06, + + /* Tunnel commands */ + i40e_aqc_opc_add_udp_tunnel = 0x0B00, + i40e_aqc_opc_del_udp_tunnel = 0x0B01, + i40e_aqc_opc_tunnel_key_structure = 0x0B10, + + /* Async Events */ + i40e_aqc_opc_event_lan_overflow = 0x1001, + + /* OEM commands */ + i40e_aqc_opc_oem_parameter_change = 0xFE00, + i40e_aqc_opc_oem_device_status_change = 0xFE01, + + /* debug commands */ + i40e_aqc_opc_debug_get_deviceid = 0xFF00, + i40e_aqc_opc_debug_set_mode = 0xFF01, + i40e_aqc_opc_debug_read_reg = 0xFF03, + i40e_aqc_opc_debug_write_reg = 0xFF04, + i40e_aqc_opc_debug_modify_reg = 0xFF07, + i40e_aqc_opc_debug_dump_internals = 0xFF08, + i40e_aqc_opc_debug_modify_internals = 0xFF09, +}; + +/* command structures and indirect data structures */ + +/* Structure naming conventions: + * - no suffix for direct command descriptor structures + * - _data for indirect sent data + * - _resp for indirect return data (data which is both will use _data) + * - _completion for direct return data + * - _element_ for repeated elements (may also be _data or _resp) + * + * Command structures are expected to overlay the params.raw member of the basic + * descriptor, and as such cannot exceed 16 bytes in length. + */ + +/* This macro is used to generate a compilation error if a structure + * is not exactly the correct length. It gives a divide by zero error if the + * structure is not of the correct size, otherwise it creates an enum that is + * never used. + */ +#define I40E_CHECK_STRUCT_LEN(n, X) enum i40e_static_assert_enum_##X \ + { i40e_static_assert_##X = (n)/((sizeof(struct X) == (n)) ? 1 : 0) } + +/* This macro is used extensively to ensure that command structures are 16 + * bytes in length as they have to map to the raw array of that size. + */ +#define I40E_CHECK_CMD_LENGTH(X) I40E_CHECK_STRUCT_LEN(16, X) + +/* internal (0x00XX) commands */ + +/* Get version (direct 0x0001) */ +struct i40e_aqc_get_version { + __le32 rom_ver; + __le32 fw_build; + __le16 fw_major; + __le16 fw_minor; + __le16 api_major; + __le16 api_minor; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_get_version); + +/* Send driver version (indirect 0x0002) */ +struct i40e_aqc_driver_version { + u8 driver_major_ver; + u8 driver_minor_ver; + u8 driver_build_ver; + u8 driver_subbuild_ver; + u8 reserved[4]; + __le32 address_high; + __le32 address_low; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_driver_version); + +/* Queue Shutdown (direct 0x0003) */ +struct i40e_aqc_queue_shutdown { + __le32 driver_unloading; +#define I40E_AQ_DRIVER_UNLOADING 0x1 + u8 reserved[12]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_queue_shutdown); + +/* Set PF context (0x0004, direct) */ +struct i40e_aqc_set_pf_context { + u8 pf_id; + u8 reserved[15]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_set_pf_context); + +/* Request resource ownership (direct 0x0008) + * Release resource ownership (direct 0x0009) + */ +#define I40E_AQ_RESOURCE_NVM 1 +#define I40E_AQ_RESOURCE_SDP 2 +#define I40E_AQ_RESOURCE_ACCESS_READ 1 +#define I40E_AQ_RESOURCE_ACCESS_WRITE 2 +#define I40E_AQ_RESOURCE_NVM_READ_TIMEOUT 3000 +#define I40E_AQ_RESOURCE_NVM_WRITE_TIMEOUT 180000 + +struct i40e_aqc_request_resource { + __le16 resource_id; + __le16 access_type; + __le32 timeout; + __le32 resource_number; + u8 reserved[4]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_request_resource); + +/* Get function capabilities (indirect 0x000A) + * Get device capabilities (indirect 0x000B) + */ +struct i40e_aqc_list_capabilites { + u8 command_flags; +#define I40E_AQ_LIST_CAP_PF_INDEX_EN 1 + u8 pf_index; + u8 reserved[2]; + __le32 count; + __le32 addr_high; + __le32 addr_low; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_list_capabilites); + +struct i40e_aqc_list_capabilities_element_resp { + __le16 id; + u8 major_rev; + u8 minor_rev; + __le32 number; + __le32 logical_id; + __le32 phys_id; + u8 reserved[16]; +}; + +/* list of caps */ + +#define I40E_AQ_CAP_ID_SWITCH_MODE 0x0001 +#define I40E_AQ_CAP_ID_MNG_MODE 0x0002 +#define I40E_AQ_CAP_ID_NPAR_ACTIVE 0x0003 +#define I40E_AQ_CAP_ID_OS2BMC_CAP 0x0004 +#define I40E_AQ_CAP_ID_FUNCTIONS_VALID 0x0005 +#define I40E_AQ_CAP_ID_ALTERNATE_RAM 0x0006 +#define I40E_AQ_CAP_ID_SRIOV 0x0012 +#define I40E_AQ_CAP_ID_VF 0x0013 +#define I40E_AQ_CAP_ID_VMDQ 0x0014 +#define I40E_AQ_CAP_ID_8021QBG 0x0015 +#define I40E_AQ_CAP_ID_8021QBR 0x0016 +#define I40E_AQ_CAP_ID_VSI 0x0017 +#define I40E_AQ_CAP_ID_DCB 0x0018 +#define I40E_AQ_CAP_ID_FCOE 0x0021 +#define I40E_AQ_CAP_ID_RSS 0x0040 +#define I40E_AQ_CAP_ID_RXQ 0x0041 +#define I40E_AQ_CAP_ID_TXQ 0x0042 +#define I40E_AQ_CAP_ID_MSIX 0x0043 +#define I40E_AQ_CAP_ID_VF_MSIX 0x0044 +#define I40E_AQ_CAP_ID_FLOW_DIRECTOR 0x0045 +#define I40E_AQ_CAP_ID_1588 0x0046 +#define I40E_AQ_CAP_ID_IWARP 0x0051 +#define I40E_AQ_CAP_ID_LED 0x0061 +#define I40E_AQ_CAP_ID_SDP 0x0062 +#define I40E_AQ_CAP_ID_MDIO 0x0063 +#define I40E_AQ_CAP_ID_FLEX10 0x00F1 +#define I40E_AQ_CAP_ID_CEM 0x00F2 + +/* Set CPPM Configuration (direct 0x0103) */ +struct i40e_aqc_cppm_configuration { + __le16 command_flags; +#define I40E_AQ_CPPM_EN_LTRC 0x0800 +#define I40E_AQ_CPPM_EN_DMCTH 0x1000 +#define I40E_AQ_CPPM_EN_DMCTLX 0x2000 +#define I40E_AQ_CPPM_EN_HPTC 0x4000 +#define I40E_AQ_CPPM_EN_DMARC 0x8000 + __le16 ttlx; + __le32 dmacr; + __le16 dmcth; + u8 hptc; + u8 reserved; + __le32 pfltrc; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_cppm_configuration); + +/* Set ARP Proxy command / response (indirect 0x0104) */ +struct i40e_aqc_arp_proxy_data { + __le16 command_flags; +#define I40E_AQ_ARP_INIT_IPV4 0x0008 +#define I40E_AQ_ARP_UNSUP_CTL 0x0010 +#define I40E_AQ_ARP_ENA 0x0020 +#define I40E_AQ_ARP_ADD_IPV4 0x0040 +#define I40E_AQ_ARP_DEL_IPV4 0x0080 + __le16 table_id; + __le32 pfpm_proxyfc; + __le32 ip_addr; + u8 mac_addr[6]; +}; + +/* Set NS Proxy Table Entry Command (indirect 0x0105) */ +struct i40e_aqc_ns_proxy_data { + __le16 table_idx_mac_addr_0; + __le16 table_idx_mac_addr_1; + __le16 table_idx_ipv6_0; + __le16 table_idx_ipv6_1; + __le16 control; +#define I40E_AQ_NS_PROXY_ADD_0 0x0100 +#define I40E_AQ_NS_PROXY_DEL_0 0x0200 +#define I40E_AQ_NS_PROXY_ADD_1 0x0400 +#define I40E_AQ_NS_PROXY_DEL_1 0x0800 +#define I40E_AQ_NS_PROXY_ADD_IPV6_0 0x1000 +#define I40E_AQ_NS_PROXY_DEL_IPV6_0 0x2000 +#define I40E_AQ_NS_PROXY_ADD_IPV6_1 0x4000 +#define I40E_AQ_NS_PROXY_DEL_IPV6_1 0x8000 +#define I40E_AQ_NS_PROXY_COMMAND_SEQ 0x0001 +#define I40E_AQ_NS_PROXY_INIT_IPV6_TBL 0x0002 +#define I40E_AQ_NS_PROXY_INIT_MAC_TBL 0x0004 + u8 mac_addr_0[6]; + u8 mac_addr_1[6]; + u8 local_mac_addr[6]; + u8 ipv6_addr_0[16]; /* Warning! spec specifies BE byte order */ + u8 ipv6_addr_1[16]; +}; + +/* Manage LAA Command (0x0106) - obsolete */ +struct i40e_aqc_mng_laa { + __le16 command_flags; +#define I40E_AQ_LAA_FLAG_WR 0x8000 + u8 reserved[2]; + __le32 sal; + __le16 sah; + u8 reserved2[6]; +}; + +/* Manage MAC Address Read Command (indirect 0x0107) */ +struct i40e_aqc_mac_address_read { + __le16 command_flags; +#define I40E_AQC_LAN_ADDR_VALID 0x10 +#define I40E_AQC_SAN_ADDR_VALID 0x20 +#define I40E_AQC_PORT_ADDR_VALID 0x40 +#define I40E_AQC_WOL_ADDR_VALID 0x80 +#define I40E_AQC_ADDR_VALID_MASK 0xf0 + u8 reserved[6]; + __le32 addr_high; + __le32 addr_low; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_mac_address_read); + +struct i40e_aqc_mac_address_read_data { + u8 pf_lan_mac[6]; + u8 pf_san_mac[6]; + u8 port_mac[6]; + u8 pf_wol_mac[6]; +}; + +I40E_CHECK_STRUCT_LEN(24, i40e_aqc_mac_address_read_data); + +/* Manage MAC Address Write Command (0x0108) */ +struct i40e_aqc_mac_address_write { + __le16 command_flags; +#define I40E_AQC_WRITE_TYPE_LAA_ONLY 0x0000 +#define I40E_AQC_WRITE_TYPE_LAA_WOL 0x4000 +#define I40E_AQC_WRITE_TYPE_PORT 0x8000 +#define I40E_AQC_WRITE_TYPE_MASK 0xc000 + __le16 mac_sah; + __le32 mac_sal; + u8 reserved[8]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_mac_address_write); + +/* PXE commands (0x011x) */ + +/* Clear PXE Command and response (direct 0x0110) */ +struct i40e_aqc_clear_pxe { + u8 rx_cnt; + u8 reserved[15]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_clear_pxe); + +/* Switch configuration commands (0x02xx) */ + +/* Used by many indirect commands that only pass an seid and a buffer in the + * command + */ +struct i40e_aqc_switch_seid { + __le16 seid; + u8 reserved[6]; + __le32 addr_high; + __le32 addr_low; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_switch_seid); + +/* Get Switch Configuration command (indirect 0x0200) + * uses i40e_aqc_switch_seid for the descriptor + */ +struct i40e_aqc_get_switch_config_header_resp { + __le16 num_reported; + __le16 num_total; + u8 reserved[12]; +}; + +struct i40e_aqc_switch_config_element_resp { + u8 element_type; +#define I40E_AQ_SW_ELEM_TYPE_MAC 1 +#define I40E_AQ_SW_ELEM_TYPE_PF 2 +#define I40E_AQ_SW_ELEM_TYPE_VF 3 +#define I40E_AQ_SW_ELEM_TYPE_EMP 4 +#define I40E_AQ_SW_ELEM_TYPE_BMC 5 +#define I40E_AQ_SW_ELEM_TYPE_PV 16 +#define I40E_AQ_SW_ELEM_TYPE_VEB 17 +#define I40E_AQ_SW_ELEM_TYPE_PA 18 +#define I40E_AQ_SW_ELEM_TYPE_VSI 19 + u8 revision; +#define I40E_AQ_SW_ELEM_REV_1 1 + __le16 seid; + __le16 uplink_seid; + __le16 downlink_seid; + u8 reserved[3]; + u8 connection_type; +#define I40E_AQ_CONN_TYPE_REGULAR 0x1 +#define I40E_AQ_CONN_TYPE_DEFAULT 0x2 +#define I40E_AQ_CONN_TYPE_CASCADED 0x3 + __le16 scheduler_id; + __le16 element_info; +}; + +/* Get Switch Configuration (indirect 0x0200) + * an array of elements are returned in the response buffer + * the first in the array is the header, remainder are elements + */ +struct i40e_aqc_get_switch_config_resp { + struct i40e_aqc_get_switch_config_header_resp header; + struct i40e_aqc_switch_config_element_resp element[1]; +}; + +/* Add Statistics (direct 0x0201) + * Remove Statistics (direct 0x0202) + */ +struct i40e_aqc_add_remove_statistics { + __le16 seid; + __le16 vlan; + __le16 stat_index; + u8 reserved[10]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_add_remove_statistics); + +/* Set Port Parameters command (direct 0x0203) */ +struct i40e_aqc_set_port_parameters { + __le16 command_flags; +#define I40E_AQ_SET_P_PARAMS_SAVE_BAD_PACKETS 1 +#define I40E_AQ_SET_P_PARAMS_PAD_SHORT_PACKETS 2 /* must set! */ +#define I40E_AQ_SET_P_PARAMS_DOUBLE_VLAN_ENA 4 + __le16 bad_frame_vsi; + __le16 default_seid; /* reserved for command */ + u8 reserved[10]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_set_port_parameters); + +/* Get Switch Resource Allocation (indirect 0x0204) */ +struct i40e_aqc_get_switch_resource_alloc { + u8 num_entries; /* reserved for command */ + u8 reserved[7]; + __le32 addr_high; + __le32 addr_low; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_get_switch_resource_alloc); + +/* expect an array of these structs in the response buffer */ +struct i40e_aqc_switch_resource_alloc_element_resp { + u8 resource_type; +#define I40E_AQ_RESOURCE_TYPE_VEB 0x0 +#define I40E_AQ_RESOURCE_TYPE_VSI 0x1 +#define I40E_AQ_RESOURCE_TYPE_MACADDR 0x2 +#define I40E_AQ_RESOURCE_TYPE_STAG 0x3 +#define I40E_AQ_RESOURCE_TYPE_ETAG 0x4 +#define I40E_AQ_RESOURCE_TYPE_MULTICAST_HASH 0x5 +#define I40E_AQ_RESOURCE_TYPE_UNICAST_HASH 0x6 +#define I40E_AQ_RESOURCE_TYPE_VLAN 0x7 +#define I40E_AQ_RESOURCE_TYPE_VSI_LIST_ENTRY 0x8 +#define I40E_AQ_RESOURCE_TYPE_ETAG_LIST_ENTRY 0x9 +#define I40E_AQ_RESOURCE_TYPE_VLAN_STAT_POOL 0xA +#define I40E_AQ_RESOURCE_TYPE_MIRROR_RULE 0xB +#define I40E_AQ_RESOURCE_TYPE_QUEUE_SETS 0xC +#define I40E_AQ_RESOURCE_TYPE_VLAN_FILTERS 0xD +#define I40E_AQ_RESOURCE_TYPE_INNER_MAC_FILTERS 0xF +#define I40E_AQ_RESOURCE_TYPE_IP_FILTERS 0x10 +#define I40E_AQ_RESOURCE_TYPE_GRE_VN_KEYS 0x11 +#define I40E_AQ_RESOURCE_TYPE_VN2_KEYS 0x12 +#define I40E_AQ_RESOURCE_TYPE_TUNNEL_PORTS 0x13 + u8 reserved1; + __le16 guaranteed; + __le16 total; + __le16 used; + __le16 total_unalloced; + u8 reserved2[6]; +}; + +/* Add VSI (indirect 0x0210) + * this indirect command uses struct i40e_aqc_vsi_properties_data + * as the indirect buffer (128 bytes) + * + * Update VSI (indirect 0x211) + * uses the same data structure as Add VSI + * + * Get VSI (indirect 0x0212) + * uses the same completion and data structure as Add VSI + */ +struct i40e_aqc_add_get_update_vsi { + __le16 uplink_seid; + u8 connection_type; +#define I40E_AQ_VSI_CONN_TYPE_NORMAL 0x1 +#define I40E_AQ_VSI_CONN_TYPE_DEFAULT 0x2 +#define I40E_AQ_VSI_CONN_TYPE_CASCADED 0x3 + u8 reserved1; + u8 vf_id; + u8 reserved2; + __le16 vsi_flags; +#define I40E_AQ_VSI_TYPE_SHIFT 0x0 +#define I40E_AQ_VSI_TYPE_MASK (0x3 << I40E_AQ_VSI_TYPE_SHIFT) +#define I40E_AQ_VSI_TYPE_VF 0x0 +#define I40E_AQ_VSI_TYPE_VMDQ2 0x1 +#define I40E_AQ_VSI_TYPE_PF 0x2 +#define I40E_AQ_VSI_TYPE_EMP_MNG 0x3 +#define I40E_AQ_VSI_FLAG_CASCADED_PV 0x4 + __le32 addr_high; + __le32 addr_low; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_add_get_update_vsi); + +struct i40e_aqc_add_get_update_vsi_completion { + __le16 seid; + __le16 vsi_number; + __le16 vsi_used; + __le16 vsi_free; + __le32 addr_high; + __le32 addr_low; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_add_get_update_vsi_completion); + +struct i40e_aqc_vsi_properties_data { + /* first 96 byte are written by SW */ + __le16 valid_sections; +#define I40E_AQ_VSI_PROP_SWITCH_VALID 0x0001 +#define I40E_AQ_VSI_PROP_SECURITY_VALID 0x0002 +#define I40E_AQ_VSI_PROP_VLAN_VALID 0x0004 +#define I40E_AQ_VSI_PROP_CAS_PV_VALID 0x0008 +#define I40E_AQ_VSI_PROP_INGRESS_UP_VALID 0x0010 +#define I40E_AQ_VSI_PROP_EGRESS_UP_VALID 0x0020 +#define I40E_AQ_VSI_PROP_QUEUE_MAP_VALID 0x0040 +#define I40E_AQ_VSI_PROP_QUEUE_OPT_VALID 0x0080 +#define I40E_AQ_VSI_PROP_OUTER_UP_VALID 0x0100 +#define I40E_AQ_VSI_PROP_SCHED_VALID 0x0200 + /* switch section */ + __le16 switch_id; /* 12bit id combined with flags below */ +#define I40E_AQ_VSI_SW_ID_SHIFT 0x0000 +#define I40E_AQ_VSI_SW_ID_MASK (0xFFF << I40E_AQ_VSI_SW_ID_SHIFT) +#define I40E_AQ_VSI_SW_ID_FLAG_NOT_STAG 0x1000 +#define I40E_AQ_VSI_SW_ID_FLAG_ALLOW_LB 0x2000 +#define I40E_AQ_VSI_SW_ID_FLAG_LOCAL_LB 0x4000 + u8 sw_reserved[2]; + /* security section */ + u8 sec_flags; +#define I40E_AQ_VSI_SEC_FLAG_ALLOW_DEST_OVRD 0x01 +#define I40E_AQ_VSI_SEC_FLAG_ENABLE_VLAN_CHK 0x02 +#define I40E_AQ_VSI_SEC_FLAG_ENABLE_MAC_CHK 0x04 + u8 sec_reserved; + /* VLAN section */ + __le16 pvid; /* VLANS include priority bits */ + __le16 fcoe_pvid; + u8 port_vlan_flags; +#define I40E_AQ_VSI_PVLAN_MODE_SHIFT 0x00 +#define I40E_AQ_VSI_PVLAN_MODE_MASK (0x03 << \ + I40E_AQ_VSI_PVLAN_MODE_SHIFT) +#define I40E_AQ_VSI_PVLAN_MODE_TAGGED 0x01 +#define I40E_AQ_VSI_PVLAN_MODE_UNTAGGED 0x02 +#define I40E_AQ_VSI_PVLAN_MODE_ALL 0x03 +#define I40E_AQ_VSI_PVLAN_INSERT_PVID 0x04 +#define I40E_AQ_VSI_PVLAN_EMOD_SHIFT 0x03 +#define I40E_AQ_VSI_PVLAN_EMOD_MASK (0x3 << \ + I40E_AQ_VSI_PVLAN_EMOD_SHIFT) +#define I40E_AQ_VSI_PVLAN_EMOD_STR_BOTH 0x0 +#define I40E_AQ_VSI_PVLAN_EMOD_STR_UP 0x08 +#define I40E_AQ_VSI_PVLAN_EMOD_STR 0x10 +#define I40E_AQ_VSI_PVLAN_EMOD_NOTHING 0x18 + u8 pvlan_reserved[3]; + /* ingress egress up sections */ + __le32 ingress_table; /* bitmap, 3 bits per up */ +#define I40E_AQ_VSI_UP_TABLE_UP0_SHIFT 0 +#define I40E_AQ_VSI_UP_TABLE_UP0_MASK (0x7 << \ + I40E_AQ_VSI_UP_TABLE_UP0_SHIFT) +#define I40E_AQ_VSI_UP_TABLE_UP1_SHIFT 3 +#define I40E_AQ_VSI_UP_TABLE_UP1_MASK (0x7 << \ + I40E_AQ_VSI_UP_TABLE_UP1_SHIFT) +#define I40E_AQ_VSI_UP_TABLE_UP2_SHIFT 6 +#define I40E_AQ_VSI_UP_TABLE_UP2_MASK (0x7 << \ + I40E_AQ_VSI_UP_TABLE_UP2_SHIFT) +#define I40E_AQ_VSI_UP_TABLE_UP3_SHIFT 9 +#define I40E_AQ_VSI_UP_TABLE_UP3_MASK (0x7 << \ + I40E_AQ_VSI_UP_TABLE_UP3_SHIFT) +#define I40E_AQ_VSI_UP_TABLE_UP4_SHIFT 12 +#define I40E_AQ_VSI_UP_TABLE_UP4_MASK (0x7 << \ + I40E_AQ_VSI_UP_TABLE_UP4_SHIFT) +#define I40E_AQ_VSI_UP_TABLE_UP5_SHIFT 15 +#define I40E_AQ_VSI_UP_TABLE_UP5_MASK (0x7 << \ + I40E_AQ_VSI_UP_TABLE_UP5_SHIFT) +#define I40E_AQ_VSI_UP_TABLE_UP6_SHIFT 18 +#define I40E_AQ_VSI_UP_TABLE_UP6_MASK (0x7 << \ + I40E_AQ_VSI_UP_TABLE_UP6_SHIFT) +#define I40E_AQ_VSI_UP_TABLE_UP7_SHIFT 21 +#define I40E_AQ_VSI_UP_TABLE_UP7_MASK (0x7 << \ + I40E_AQ_VSI_UP_TABLE_UP7_SHIFT) + __le32 egress_table; /* same defines as for ingress table */ + /* cascaded PV section */ + __le16 cas_pv_tag; + u8 cas_pv_flags; +#define I40E_AQ_VSI_CAS_PV_TAGX_SHIFT 0x00 +#define I40E_AQ_VSI_CAS_PV_TAGX_MASK (0x03 << \ + I40E_AQ_VSI_CAS_PV_TAGX_SHIFT) +#define I40E_AQ_VSI_CAS_PV_TAGX_LEAVE 0x00 +#define I40E_AQ_VSI_CAS_PV_TAGX_REMOVE 0x01 +#define I40E_AQ_VSI_CAS_PV_TAGX_COPY 0x02 +#define I40E_AQ_VSI_CAS_PV_INSERT_TAG 0x10 +#define I40E_AQ_VSI_CAS_PV_ETAG_PRUNE 0x20 +#define I40E_AQ_VSI_CAS_PV_ACCEPT_HOST_TAG 0x40 + u8 cas_pv_reserved; + /* queue mapping section */ + __le16 mapping_flags; +#define I40E_AQ_VSI_QUE_MAP_CONTIG 0x0 +#define I40E_AQ_VSI_QUE_MAP_NONCONTIG 0x1 + __le16 queue_mapping[16]; +#define I40E_AQ_VSI_QUEUE_SHIFT 0x0 +#define I40E_AQ_VSI_QUEUE_MASK (0x7FF << I40E_AQ_VSI_QUEUE_SHIFT) + __le16 tc_mapping[8]; +#define I40E_AQ_VSI_TC_QUE_OFFSET_SHIFT 0 +#define I40E_AQ_VSI_TC_QUE_OFFSET_MASK (0x1FF << \ + I40E_AQ_VSI_TC_QUE_OFFSET_SHIFT) +#define I40E_AQ_VSI_TC_QUE_NUMBER_SHIFT 9 +#define I40E_AQ_VSI_TC_QUE_NUMBER_MASK (0x7 << \ + I40E_AQ_VSI_TC_QUE_NUMBER_SHIFT) + /* queueing option section */ + u8 queueing_opt_flags; +#define I40E_AQ_VSI_QUE_OPT_TCP_ENA 0x10 +#define I40E_AQ_VSI_QUE_OPT_FCOE_ENA 0x20 + u8 queueing_opt_reserved[3]; + /* scheduler section */ + u8 up_enable_bits; + u8 sched_reserved; + /* outer up section */ + __le32 outer_up_table; /* same structure and defines as ingress table */ + u8 cmd_reserved[8]; + /* last 32 bytes are written by FW */ + __le16 qs_handle[8]; +#define I40E_AQ_VSI_QS_HANDLE_INVALID 0xFFFF + __le16 stat_counter_idx; + __le16 sched_id; + u8 resp_reserved[12]; +}; + +I40E_CHECK_STRUCT_LEN(128, i40e_aqc_vsi_properties_data); + +/* Add Port Virtualizer (direct 0x0220) + * also used for update PV (direct 0x0221) but only flags are used + * (IS_CTRL_PORT only works on add PV) + */ +struct i40e_aqc_add_update_pv { + __le16 command_flags; +#define I40E_AQC_PV_FLAG_PV_TYPE 0x1 +#define I40E_AQC_PV_FLAG_FWD_UNKNOWN_STAG_EN 0x2 +#define I40E_AQC_PV_FLAG_FWD_UNKNOWN_ETAG_EN 0x4 +#define I40E_AQC_PV_FLAG_IS_CTRL_PORT 0x8 + __le16 uplink_seid; + __le16 connected_seid; + u8 reserved[10]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_add_update_pv); + +struct i40e_aqc_add_update_pv_completion { + /* reserved for update; for add also encodes error if rc == ENOSPC */ + __le16 pv_seid; +#define I40E_AQC_PV_ERR_FLAG_NO_PV 0x1 +#define I40E_AQC_PV_ERR_FLAG_NO_SCHED 0x2 +#define I40E_AQC_PV_ERR_FLAG_NO_COUNTER 0x4 +#define I40E_AQC_PV_ERR_FLAG_NO_ENTRY 0x8 + u8 reserved[14]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_add_update_pv_completion); + +/* Get PV Params (direct 0x0222) + * uses i40e_aqc_switch_seid for the descriptor + */ + +struct i40e_aqc_get_pv_params_completion { + __le16 seid; + __le16 default_stag; + __le16 pv_flags; /* same flags as add_pv */ +#define I40E_AQC_GET_PV_PV_TYPE 0x1 +#define I40E_AQC_GET_PV_FRWD_UNKNOWN_STAG 0x2 +#define I40E_AQC_GET_PV_FRWD_UNKNOWN_ETAG 0x4 + u8 reserved[8]; + __le16 default_port_seid; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_get_pv_params_completion); + +/* Add VEB (direct 0x0230) */ +struct i40e_aqc_add_veb { + __le16 uplink_seid; + __le16 downlink_seid; + __le16 veb_flags; +#define I40E_AQC_ADD_VEB_FLOATING 0x1 +#define I40E_AQC_ADD_VEB_PORT_TYPE_SHIFT 1 +#define I40E_AQC_ADD_VEB_PORT_TYPE_MASK (0x3 << \ + I40E_AQC_ADD_VEB_PORT_TYPE_SHIFT) +#define I40E_AQC_ADD_VEB_PORT_TYPE_DEFAULT 0x2 +#define I40E_AQC_ADD_VEB_PORT_TYPE_DATA 0x4 +#define I40E_AQC_ADD_VEB_ENABLE_L2_FILTER 0x8 + u8 enable_tcs; + u8 reserved[9]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_add_veb); + +struct i40e_aqc_add_veb_completion { + u8 reserved[6]; + __le16 switch_seid; + /* also encodes error if rc == ENOSPC; codes are the same as add_pv */ + __le16 veb_seid; +#define I40E_AQC_VEB_ERR_FLAG_NO_VEB 0x1 +#define I40E_AQC_VEB_ERR_FLAG_NO_SCHED 0x2 +#define I40E_AQC_VEB_ERR_FLAG_NO_COUNTER 0x4 +#define I40E_AQC_VEB_ERR_FLAG_NO_ENTRY 0x8 + __le16 statistic_index; + __le16 vebs_used; + __le16 vebs_free; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_add_veb_completion); + +/* Get VEB Parameters (direct 0x0232) + * uses i40e_aqc_switch_seid for the descriptor + */ +struct i40e_aqc_get_veb_parameters_completion { + __le16 seid; + __le16 switch_id; + __le16 veb_flags; /* only the first/last flags from 0x0230 is valid */ + __le16 statistic_index; + __le16 vebs_used; + __le16 vebs_free; + u8 reserved[4]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_get_veb_parameters_completion); + +/* Delete Element (direct 0x0243) + * uses the generic i40e_aqc_switch_seid + */ + +/* Add MAC-VLAN (indirect 0x0250) */ + +/* used for the command for most vlan commands */ +struct i40e_aqc_macvlan { + __le16 num_addresses; + __le16 seid[3]; +#define I40E_AQC_MACVLAN_CMD_SEID_NUM_SHIFT 0 +#define I40E_AQC_MACVLAN_CMD_SEID_NUM_MASK (0x3FF << \ + I40E_AQC_MACVLAN_CMD_SEID_NUM_SHIFT) +#define I40E_AQC_MACVLAN_CMD_SEID_VALID 0x8000 + __le32 addr_high; + __le32 addr_low; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_macvlan); + +/* indirect data for command and response */ +struct i40e_aqc_add_macvlan_element_data { + u8 mac_addr[6]; + __le16 vlan_tag; + __le16 flags; +#define I40E_AQC_MACVLAN_ADD_PERFECT_MATCH 0x0001 +#define I40E_AQC_MACVLAN_ADD_HASH_MATCH 0x0002 +#define I40E_AQC_MACVLAN_ADD_IGNORE_VLAN 0x0004 +#define I40E_AQC_MACVLAN_ADD_TO_QUEUE 0x0008 + __le16 queue_number; +#define I40E_AQC_MACVLAN_CMD_QUEUE_SHIFT 0 +#define I40E_AQC_MACVLAN_CMD_QUEUE_MASK (0x7FF << \ + I40E_AQC_MACVLAN_CMD_SEID_NUM_SHIFT) + /* response section */ + u8 match_method; +#define I40E_AQC_MM_PERFECT_MATCH 0x01 +#define I40E_AQC_MM_HASH_MATCH 0x02 +#define I40E_AQC_MM_ERR_NO_RES 0xFF + u8 reserved1[3]; +}; + +struct i40e_aqc_add_remove_macvlan_completion { + __le16 perfect_mac_used; + __le16 perfect_mac_free; + __le16 unicast_hash_free; + __le16 multicast_hash_free; + __le32 addr_high; + __le32 addr_low; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_add_remove_macvlan_completion); + +/* Remove MAC-VLAN (indirect 0x0251) + * uses i40e_aqc_macvlan for the descriptor + * data points to an array of num_addresses of elements + */ + +struct i40e_aqc_remove_macvlan_element_data { + u8 mac_addr[6]; + __le16 vlan_tag; + u8 flags; +#define I40E_AQC_MACVLAN_DEL_PERFECT_MATCH 0x01 +#define I40E_AQC_MACVLAN_DEL_HASH_MATCH 0x02 +#define I40E_AQC_MACVLAN_DEL_IGNORE_VLAN 0x08 +#define I40E_AQC_MACVLAN_DEL_ALL_VSIS 0x10 + u8 reserved[3]; + /* reply section */ + u8 error_code; +#define I40E_AQC_REMOVE_MACVLAN_SUCCESS 0x0 +#define I40E_AQC_REMOVE_MACVLAN_FAIL 0xFF + u8 reply_reserved[3]; +}; + +/* Add VLAN (indirect 0x0252) + * Remove VLAN (indirect 0x0253) + * use the generic i40e_aqc_macvlan for the command + */ +struct i40e_aqc_add_remove_vlan_element_data { + __le16 vlan_tag; + u8 vlan_flags; +/* flags for add VLAN */ +#define I40E_AQC_ADD_VLAN_LOCAL 0x1 +#define I40E_AQC_ADD_PVLAN_TYPE_SHIFT 1 +#define I40E_AQC_ADD_PVLAN_TYPE_MASK (0x3 << I40E_AQC_ADD_PVLAN_TYPE_SHIFT) +#define I40E_AQC_ADD_PVLAN_TYPE_REGULAR 0x0 +#define I40E_AQC_ADD_PVLAN_TYPE_PRIMARY 0x2 +#define I40E_AQC_ADD_PVLAN_TYPE_SECONDARY 0x4 +#define I40E_AQC_VLAN_PTYPE_SHIFT 3 +#define I40E_AQC_VLAN_PTYPE_MASK (0x3 << I40E_AQC_VLAN_PTYPE_SHIFT) +#define I40E_AQC_VLAN_PTYPE_REGULAR_VSI 0x0 +#define I40E_AQC_VLAN_PTYPE_PROMISC_VSI 0x8 +#define I40E_AQC_VLAN_PTYPE_COMMUNITY_VSI 0x10 +#define I40E_AQC_VLAN_PTYPE_ISOLATED_VSI 0x18 +/* flags for remove VLAN */ +#define I40E_AQC_REMOVE_VLAN_ALL 0x1 + u8 reserved; + u8 result; +/* flags for add VLAN */ +#define I40E_AQC_ADD_VLAN_SUCCESS 0x0 +#define I40E_AQC_ADD_VLAN_FAIL_REQUEST 0xFE +#define I40E_AQC_ADD_VLAN_FAIL_RESOURCE 0xFF +/* flags for remove VLAN */ +#define I40E_AQC_REMOVE_VLAN_SUCCESS 0x0 +#define I40E_AQC_REMOVE_VLAN_FAIL 0xFF + u8 reserved1[3]; +}; + +struct i40e_aqc_add_remove_vlan_completion { + u8 reserved[4]; + __le16 vlans_used; + __le16 vlans_free; + __le32 addr_high; + __le32 addr_low; +}; + +/* Set VSI Promiscuous Modes (direct 0x0254) */ +struct i40e_aqc_set_vsi_promiscuous_modes { + __le16 promiscuous_flags; + __le16 valid_flags; +/* flags used for both fields above */ +#define I40E_AQC_SET_VSI_PROMISC_UNICAST 0x01 +#define I40E_AQC_SET_VSI_PROMISC_MULTICAST 0x02 +#define I40E_AQC_SET_VSI_PROMISC_BROADCAST 0x04 +#define I40E_AQC_SET_VSI_DEFAULT 0x08 +#define I40E_AQC_SET_VSI_PROMISC_VLAN 0x10 + __le16 seid; +#define I40E_AQC_VSI_PROM_CMD_SEID_MASK 0x3FF + __le16 vlan_tag; +#define I40E_AQC_SET_VSI_VLAN_VALID 0x8000 + u8 reserved[8]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_set_vsi_promiscuous_modes); + +/* Add S/E-tag command (direct 0x0255) + * Uses generic i40e_aqc_add_remove_tag_completion for completion + */ +struct i40e_aqc_add_tag { + __le16 flags; +#define I40E_AQC_ADD_TAG_FLAG_TO_QUEUE 0x0001 + __le16 seid; +#define I40E_AQC_ADD_TAG_CMD_SEID_NUM_SHIFT 0 +#define I40E_AQC_ADD_TAG_CMD_SEID_NUM_MASK (0x3FF << \ + I40E_AQC_ADD_TAG_CMD_SEID_NUM_SHIFT) + __le16 tag; + __le16 queue_number; + u8 reserved[8]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_add_tag); + +struct i40e_aqc_add_remove_tag_completion { + u8 reserved[12]; + __le16 tags_used; + __le16 tags_free; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_add_remove_tag_completion); + +/* Remove S/E-tag command (direct 0x0256) + * Uses generic i40e_aqc_add_remove_tag_completion for completion + */ +struct i40e_aqc_remove_tag { + __le16 seid; +#define I40E_AQC_REMOVE_TAG_CMD_SEID_NUM_SHIFT 0 +#define I40E_AQC_REMOVE_TAG_CMD_SEID_NUM_MASK (0x3FF << \ + I40E_AQC_REMOVE_TAG_CMD_SEID_NUM_SHIFT) + __le16 tag; + u8 reserved[12]; +}; + +/* Add multicast E-Tag (direct 0x0257) + * del multicast E-Tag (direct 0x0258) only uses pv_seid and etag fields + * and no external data + */ +struct i40e_aqc_add_remove_mcast_etag { + __le16 pv_seid; + __le16 etag; + u8 num_unicast_etags; + u8 reserved[3]; + __le32 addr_high; /* address of array of 2-byte s-tags */ + __le32 addr_low; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_add_remove_mcast_etag); + +struct i40e_aqc_add_remove_mcast_etag_completion { + u8 reserved[4]; + __le16 mcast_etags_used; + __le16 mcast_etags_free; + __le32 addr_high; + __le32 addr_low; + +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_add_remove_mcast_etag_completion); + +/* Update S/E-Tag (direct 0x0259) */ +struct i40e_aqc_update_tag { + __le16 seid; +#define I40E_AQC_UPDATE_TAG_CMD_SEID_NUM_SHIFT 0 +#define I40E_AQC_UPDATE_TAG_CMD_SEID_NUM_MASK (0x3FF << \ + I40E_AQC_UPDATE_TAG_CMD_SEID_NUM_SHIFT) + __le16 old_tag; + __le16 new_tag; + u8 reserved[10]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_update_tag); + +struct i40e_aqc_update_tag_completion { + u8 reserved[12]; + __le16 tags_used; + __le16 tags_free; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_update_tag_completion); + +/* Add Control Packet filter (direct 0x025A) + * Remove Control Packet filter (direct 0x025B) + * uses the i40e_aqc_add_oveb_cloud, + * and the generic direct completion structure + */ +struct i40e_aqc_add_remove_control_packet_filter { + u8 mac[6]; + __le16 etype; + __le16 flags; +#define I40E_AQC_ADD_CONTROL_PACKET_FLAGS_IGNORE_MAC 0x0001 +#define I40E_AQC_ADD_CONTROL_PACKET_FLAGS_DROP 0x0002 +#define I40E_AQC_ADD_CONTROL_PACKET_FLAGS_TO_QUEUE 0x0004 +#define I40E_AQC_ADD_CONTROL_PACKET_FLAGS_TX 0x0008 +#define I40E_AQC_ADD_CONTROL_PACKET_FLAGS_RX 0x0000 + __le16 seid; +#define I40E_AQC_ADD_CONTROL_PACKET_CMD_SEID_NUM_SHIFT 0 +#define I40E_AQC_ADD_CONTROL_PACKET_CMD_SEID_NUM_MASK (0x3FF << \ + I40E_AQC_ADD_CONTROL_PACKET_CMD_SEID_NUM_SHIFT) + __le16 queue; + u8 reserved[2]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_add_remove_control_packet_filter); + +struct i40e_aqc_add_remove_control_packet_filter_completion { + __le16 mac_etype_used; + __le16 etype_used; + __le16 mac_etype_free; + __le16 etype_free; + u8 reserved[8]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_add_remove_control_packet_filter_completion); + +/* Add Cloud filters (indirect 0x025C) + * Remove Cloud filters (indirect 0x025D) + * uses the i40e_aqc_add_remove_cloud_filters, + * and the generic indirect completion structure + */ +struct i40e_aqc_add_remove_cloud_filters { + u8 num_filters; + u8 reserved; + __le16 seid; +#define I40E_AQC_ADD_CLOUD_CMD_SEID_NUM_SHIFT 0 +#define I40E_AQC_ADD_CLOUD_CMD_SEID_NUM_MASK (0x3FF << \ + I40E_AQC_ADD_CLOUD_CMD_SEID_NUM_SHIFT) + u8 reserved2[4]; + __le32 addr_high; + __le32 addr_low; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_add_remove_cloud_filters); + +struct i40e_aqc_add_remove_cloud_filters_element_data { + u8 outer_mac[6]; + u8 inner_mac[6]; + __le16 inner_vlan; + union { + struct { + u8 reserved[12]; + u8 data[4]; + } v4; + struct { + u8 data[16]; + } v6; + } ipaddr; + __le16 flags; +#define I40E_AQC_ADD_CLOUD_FILTER_SHIFT 0 +#define I40E_AQC_ADD_CLOUD_FILTER_MASK (0x3F << \ + I40E_AQC_ADD_CLOUD_FILTER_SHIFT) +/* 0x0000 reserved */ +#define I40E_AQC_ADD_CLOUD_FILTER_OIP 0x0001 +/* 0x0002 reserved */ +#define I40E_AQC_ADD_CLOUD_FILTER_IMAC_IVLAN 0x0003 +#define I40E_AQC_ADD_CLOUD_FILTER_IMAC_IVLAN_TEN_ID 0x0004 +/* 0x0005 reserved */ +#define I40E_AQC_ADD_CLOUD_FILTER_IMAC_TEN_ID 0x0006 +/* 0x0007 reserved */ +/* 0x0008 reserved */ +#define I40E_AQC_ADD_CLOUD_FILTER_OMAC 0x0009 +#define I40E_AQC_ADD_CLOUD_FILTER_IMAC 0x000A +#define I40E_AQC_ADD_CLOUD_FILTER_OMAC_TEN_ID_IMAC 0x000B +#define I40E_AQC_ADD_CLOUD_FILTER_IIP 0x000C + +#define I40E_AQC_ADD_CLOUD_FLAGS_TO_QUEUE 0x0080 +#define I40E_AQC_ADD_CLOUD_VNK_SHIFT 6 +#define I40E_AQC_ADD_CLOUD_VNK_MASK 0x00C0 +#define I40E_AQC_ADD_CLOUD_FLAGS_IPV4 0 +#define I40E_AQC_ADD_CLOUD_FLAGS_IPV6 0x0100 + +#define I40E_AQC_ADD_CLOUD_TNL_TYPE_SHIFT 9 +#define I40E_AQC_ADD_CLOUD_TNL_TYPE_MASK 0x1E00 +#define I40E_AQC_ADD_CLOUD_TNL_TYPE_XVLAN 0 +#define I40E_AQC_ADD_CLOUD_TNL_TYPE_NVGRE_OMAC 1 +#define I40E_AQC_ADD_CLOUD_TNL_TYPE_NGE 2 +#define I40E_AQC_ADD_CLOUD_TNL_TYPE_IP 3 + + __le32 tenant_id; + u8 reserved[4]; + __le16 queue_number; +#define I40E_AQC_ADD_CLOUD_QUEUE_SHIFT 0 +#define I40E_AQC_ADD_CLOUD_QUEUE_MASK (0x3F << \ + I40E_AQC_ADD_CLOUD_QUEUE_SHIFT) + u8 reserved2[14]; + /* response section */ + u8 allocation_result; +#define I40E_AQC_ADD_CLOUD_FILTER_SUCCESS 0x0 +#define I40E_AQC_ADD_CLOUD_FILTER_FAIL 0xFF + u8 response_reserved[7]; +}; + +struct i40e_aqc_remove_cloud_filters_completion { + __le16 perfect_ovlan_used; + __le16 perfect_ovlan_free; + __le16 vlan_used; + __le16 vlan_free; + __le32 addr_high; + __le32 addr_low; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_remove_cloud_filters_completion); + +/* Add Mirror Rule (indirect or direct 0x0260) + * Delete Mirror Rule (indirect or direct 0x0261) + * note: some rule types (4,5) do not use an external buffer. + * take care to set the flags correctly. + */ +struct i40e_aqc_add_delete_mirror_rule { + __le16 seid; + __le16 rule_type; +#define I40E_AQC_MIRROR_RULE_TYPE_SHIFT 0 +#define I40E_AQC_MIRROR_RULE_TYPE_MASK (0x7 << \ + I40E_AQC_MIRROR_RULE_TYPE_SHIFT) +#define I40E_AQC_MIRROR_RULE_TYPE_VPORT_INGRESS 1 +#define I40E_AQC_MIRROR_RULE_TYPE_VPORT_EGRESS 2 +#define I40E_AQC_MIRROR_RULE_TYPE_VLAN 3 +#define I40E_AQC_MIRROR_RULE_TYPE_ALL_INGRESS 4 +#define I40E_AQC_MIRROR_RULE_TYPE_ALL_EGRESS 5 + __le16 num_entries; + __le16 destination; /* VSI for add, rule id for delete */ + __le32 addr_high; /* address of array of 2-byte VSI or VLAN ids */ + __le32 addr_low; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_add_delete_mirror_rule); + +struct i40e_aqc_add_delete_mirror_rule_completion { + u8 reserved[2]; + __le16 rule_id; /* only used on add */ + __le16 mirror_rules_used; + __le16 mirror_rules_free; + __le32 addr_high; + __le32 addr_low; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_add_delete_mirror_rule_completion); + +/* DCB 0x03xx*/ + +/* PFC Ignore (direct 0x0301) + * the command and response use the same descriptor structure + */ +struct i40e_aqc_pfc_ignore { + u8 tc_bitmap; + u8 command_flags; /* unused on response */ +#define I40E_AQC_PFC_IGNORE_SET 0x80 +#define I40E_AQC_PFC_IGNORE_CLEAR 0x0 + u8 reserved[14]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_pfc_ignore); + +/* DCB Update (direct 0x0302) uses the i40e_aq_desc structure + * with no parameters + */ + +/* TX scheduler 0x04xx */ + +/* Almost all the indirect commands use + * this generic struct to pass the SEID in param0 + */ +struct i40e_aqc_tx_sched_ind { + __le16 vsi_seid; + u8 reserved[6]; + __le32 addr_high; + __le32 addr_low; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_tx_sched_ind); + +/* Several commands respond with a set of queue set handles */ +struct i40e_aqc_qs_handles_resp { + __le16 qs_handles[8]; +}; + +/* Configure VSI BW limits (direct 0x0400) */ +struct i40e_aqc_configure_vsi_bw_limit { + __le16 vsi_seid; + u8 reserved[2]; + __le16 credit; + u8 reserved1[2]; + u8 max_credit; /* 0-3, limit = 2^max */ + u8 reserved2[7]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_configure_vsi_bw_limit); + +/* Configure VSI Bandwidth Limit per Traffic Type (indirect 0x0406) + * responds with i40e_aqc_qs_handles_resp + */ +struct i40e_aqc_configure_vsi_ets_sla_bw_data { + u8 tc_valid_bits; + u8 reserved[15]; + __le16 tc_bw_credits[8]; /* FW writesback QS handles here */ + + /* 4 bits per tc 0-7, 4th bit is reserved, limit = 2^max */ + __le16 tc_bw_max[2]; + u8 reserved1[28]; +}; + +/* Configure VSI Bandwidth Allocation per Traffic Type (indirect 0x0407) + * responds with i40e_aqc_qs_handles_resp + */ +struct i40e_aqc_configure_vsi_tc_bw_data { + u8 tc_valid_bits; + u8 reserved[3]; + u8 tc_bw_credits[8]; + u8 reserved1[4]; + __le16 qs_handles[8]; +}; + +/* Query vsi bw configuration (indirect 0x0408) */ +struct i40e_aqc_query_vsi_bw_config_resp { + u8 tc_valid_bits; + u8 tc_suspended_bits; + u8 reserved[14]; + __le16 qs_handles[8]; + u8 reserved1[4]; + __le16 port_bw_limit; + u8 reserved2[2]; + u8 max_bw; /* 0-3, limit = 2^max */ + u8 reserved3[23]; +}; + +/* Query VSI Bandwidth Allocation per Traffic Type (indirect 0x040A) */ +struct i40e_aqc_query_vsi_ets_sla_config_resp { + u8 tc_valid_bits; + u8 reserved[3]; + u8 share_credits[8]; + __le16 credits[8]; + + /* 4 bits per tc 0-7, 4th bit is reserved, limit = 2^max */ + __le16 tc_bw_max[2]; +}; + +/* Configure Switching Component Bandwidth Limit (direct 0x0410) */ +struct i40e_aqc_configure_switching_comp_bw_limit { + __le16 seid; + u8 reserved[2]; + __le16 credit; + u8 reserved1[2]; + u8 max_bw; /* 0-3, limit = 2^max */ + u8 reserved2[7]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_configure_switching_comp_bw_limit); + +/* Enable Physical Port ETS (indirect 0x0413) + * Modify Physical Port ETS (indirect 0x0414) + * Disable Physical Port ETS (indirect 0x0415) + */ +struct i40e_aqc_configure_switching_comp_ets_data { + u8 reserved[4]; + u8 tc_valid_bits; + u8 seepage; +#define I40E_AQ_ETS_SEEPAGE_EN_MASK 0x1 + u8 tc_strict_priority_flags; + u8 reserved1[17]; + u8 tc_bw_share_credits[8]; + u8 reserved2[96]; +}; + +/* Configure Switching Component Bandwidth Limits per Tc (indirect 0x0416) */ +struct i40e_aqc_configure_switching_comp_ets_bw_limit_data { + u8 tc_valid_bits; + u8 reserved[15]; + __le16 tc_bw_credit[8]; + + /* 4 bits per tc 0-7, 4th bit is reserved, limit = 2^max */ + __le16 tc_bw_max[2]; + u8 reserved1[28]; +}; + +/* Configure Switching Component Bandwidth Allocation per Tc + * (indirect 0x0417) + */ +struct i40e_aqc_configure_switching_comp_bw_config_data { + u8 tc_valid_bits; + u8 reserved[2]; + u8 absolute_credits; /* bool */ + u8 tc_bw_share_credits[8]; + u8 reserved1[20]; +}; + +/* Query Switching Component Configuration (indirect 0x0418) */ +struct i40e_aqc_query_switching_comp_ets_config_resp { + u8 tc_valid_bits; + u8 reserved[35]; + __le16 port_bw_limit; + u8 reserved1[2]; + u8 tc_bw_max; /* 0-3, limit = 2^max */ + u8 reserved2[23]; +}; + +/* Query PhysicalPort ETS Configuration (indirect 0x0419) */ +struct i40e_aqc_query_port_ets_config_resp { + u8 reserved[4]; + u8 tc_valid_bits; + u8 reserved1; + u8 tc_strict_priority_bits; + u8 reserved2; + u8 tc_bw_share_credits[8]; + __le16 tc_bw_limits[8]; + + /* 4 bits per tc 0-7, 4th bit reserved, limit = 2^max */ + __le16 tc_bw_max[2]; + u8 reserved3[32]; +}; + +/* Query Switching Component Bandwidth Allocation per Traffic Type + * (indirect 0x041A) + */ +struct i40e_aqc_query_switching_comp_bw_config_resp { + u8 tc_valid_bits; + u8 reserved[2]; + u8 absolute_credits_enable; /* bool */ + u8 tc_bw_share_credits[8]; + __le16 tc_bw_limits[8]; + + /* 4 bits per tc 0-7, 4th bit is reserved, limit = 2^max */ + __le16 tc_bw_max[2]; +}; + +/* Suspend/resume port TX traffic + * (direct 0x041B and 0x041C) uses the generic SEID struct + */ + +/* Configure partition BW + * (indirect 0x041D) + */ +struct i40e_aqc_configure_partition_bw_data { + __le16 pf_valid_bits; + u8 min_bw[16]; /* guaranteed bandwidth */ + u8 max_bw[16]; /* bandwidth limit */ +}; + +/* Get and set the active HMC resource profile and status. + * (direct 0x0500) and (direct 0x0501) + */ +struct i40e_aq_get_set_hmc_resource_profile { + u8 pm_profile; + u8 pe_vf_enabled; + u8 reserved[14]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aq_get_set_hmc_resource_profile); + +enum i40e_aq_hmc_profile { + /* I40E_HMC_PROFILE_NO_CHANGE = 0, reserved */ + I40E_HMC_PROFILE_DEFAULT = 1, + I40E_HMC_PROFILE_FAVOR_VF = 2, + I40E_HMC_PROFILE_EQUAL = 3, +}; + +#define I40E_AQ_GET_HMC_RESOURCE_PROFILE_PM_MASK 0xF +#define I40E_AQ_GET_HMC_RESOURCE_PROFILE_COUNT_MASK 0x3F + +/* Get PHY Abilities (indirect 0x0600) uses the generic indirect struct */ + +/* set in param0 for get phy abilities to report qualified modules */ +#define I40E_AQ_PHY_REPORT_QUALIFIED_MODULES 0x0001 +#define I40E_AQ_PHY_REPORT_INITIAL_VALUES 0x0002 + +enum i40e_aq_phy_type { + I40E_PHY_TYPE_SGMII = 0x0, + I40E_PHY_TYPE_1000BASE_KX = 0x1, + I40E_PHY_TYPE_10GBASE_KX4 = 0x2, + I40E_PHY_TYPE_10GBASE_KR = 0x3, + I40E_PHY_TYPE_40GBASE_KR4 = 0x4, + I40E_PHY_TYPE_XAUI = 0x5, + I40E_PHY_TYPE_XFI = 0x6, + I40E_PHY_TYPE_SFI = 0x7, + I40E_PHY_TYPE_XLAUI = 0x8, + I40E_PHY_TYPE_XLPPI = 0x9, + I40E_PHY_TYPE_40GBASE_CR4_CU = 0xA, + I40E_PHY_TYPE_10GBASE_CR1_CU = 0xB, + I40E_PHY_TYPE_10GBASE_AOC = 0xC, + I40E_PHY_TYPE_40GBASE_AOC = 0xD, + I40E_PHY_TYPE_100BASE_TX = 0x11, + I40E_PHY_TYPE_1000BASE_T = 0x12, + I40E_PHY_TYPE_10GBASE_T = 0x13, + I40E_PHY_TYPE_10GBASE_SR = 0x14, + I40E_PHY_TYPE_10GBASE_LR = 0x15, + I40E_PHY_TYPE_10GBASE_SFPP_CU = 0x16, + I40E_PHY_TYPE_10GBASE_CR1 = 0x17, + I40E_PHY_TYPE_40GBASE_CR4 = 0x18, + I40E_PHY_TYPE_40GBASE_SR4 = 0x19, + I40E_PHY_TYPE_40GBASE_LR4 = 0x1A, + I40E_PHY_TYPE_1000BASE_SX = 0x1B, + I40E_PHY_TYPE_1000BASE_LX = 0x1C, + I40E_PHY_TYPE_1000BASE_T_OPTICAL = 0x1D, + I40E_PHY_TYPE_20GBASE_KR2 = 0x1E, + I40E_PHY_TYPE_MAX +}; + +#define I40E_LINK_SPEED_100MB_SHIFT 0x1 +#define I40E_LINK_SPEED_1000MB_SHIFT 0x2 +#define I40E_LINK_SPEED_10GB_SHIFT 0x3 +#define I40E_LINK_SPEED_40GB_SHIFT 0x4 +#define I40E_LINK_SPEED_20GB_SHIFT 0x5 + +enum i40e_aq_link_speed { + I40E_LINK_SPEED_UNKNOWN = 0, + I40E_LINK_SPEED_100MB = (1 << I40E_LINK_SPEED_100MB_SHIFT), + I40E_LINK_SPEED_1GB = (1 << I40E_LINK_SPEED_1000MB_SHIFT), + I40E_LINK_SPEED_10GB = (1 << I40E_LINK_SPEED_10GB_SHIFT), + I40E_LINK_SPEED_40GB = (1 << I40E_LINK_SPEED_40GB_SHIFT), + I40E_LINK_SPEED_20GB = (1 << I40E_LINK_SPEED_20GB_SHIFT) +}; + +struct i40e_aqc_module_desc { + u8 oui[3]; + u8 reserved1; + u8 part_number[16]; + u8 revision[4]; + u8 reserved2[8]; +}; + +struct i40e_aq_get_phy_abilities_resp { + __le32 phy_type; /* bitmap using the above enum for offsets */ + u8 link_speed; /* bitmap using the above enum bit patterns */ + u8 abilities; +#define I40E_AQ_PHY_FLAG_PAUSE_TX 0x01 +#define I40E_AQ_PHY_FLAG_PAUSE_RX 0x02 +#define I40E_AQ_PHY_FLAG_LOW_POWER 0x04 +#define I40E_AQ_PHY_LINK_ENABLED 0x08 +#define I40E_AQ_PHY_AN_ENABLED 0x10 +#define I40E_AQ_PHY_FLAG_MODULE_QUAL 0x20 + __le16 eee_capability; +#define I40E_AQ_EEE_100BASE_TX 0x0002 +#define I40E_AQ_EEE_1000BASE_T 0x0004 +#define I40E_AQ_EEE_10GBASE_T 0x0008 +#define I40E_AQ_EEE_1000BASE_KX 0x0010 +#define I40E_AQ_EEE_10GBASE_KX4 0x0020 +#define I40E_AQ_EEE_10GBASE_KR 0x0040 + __le32 eeer_val; + u8 d3_lpan; +#define I40E_AQ_SET_PHY_D3_LPAN_ENA 0x01 + u8 reserved[3]; + u8 phy_id[4]; + u8 module_type[3]; + u8 qualified_module_count; +#define I40E_AQ_PHY_MAX_QMS 16 + struct i40e_aqc_module_desc qualified_module[I40E_AQ_PHY_MAX_QMS]; +}; + +/* Set PHY Config (direct 0x0601) */ +struct i40e_aq_set_phy_config { /* same bits as above in all */ + __le32 phy_type; + u8 link_speed; + u8 abilities; +/* bits 0-2 use the values from get_phy_abilities_resp */ +#define I40E_AQ_PHY_ENABLE_LINK 0x08 +#define I40E_AQ_PHY_ENABLE_AN 0x10 +#define I40E_AQ_PHY_ENABLE_ATOMIC_LINK 0x20 + __le16 eee_capability; + __le32 eeer; + u8 low_power_ctrl; + u8 reserved[3]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aq_set_phy_config); + +/* Set MAC Config command data structure (direct 0x0603) */ +struct i40e_aq_set_mac_config { + __le16 max_frame_size; + u8 params; +#define I40E_AQ_SET_MAC_CONFIG_CRC_EN 0x04 +#define I40E_AQ_SET_MAC_CONFIG_PACING_MASK 0x78 +#define I40E_AQ_SET_MAC_CONFIG_PACING_SHIFT 3 +#define I40E_AQ_SET_MAC_CONFIG_PACING_NONE 0x0 +#define I40E_AQ_SET_MAC_CONFIG_PACING_1B_13TX 0xF +#define I40E_AQ_SET_MAC_CONFIG_PACING_1DW_9TX 0x9 +#define I40E_AQ_SET_MAC_CONFIG_PACING_1DW_4TX 0x8 +#define I40E_AQ_SET_MAC_CONFIG_PACING_3DW_7TX 0x7 +#define I40E_AQ_SET_MAC_CONFIG_PACING_2DW_3TX 0x6 +#define I40E_AQ_SET_MAC_CONFIG_PACING_1DW_1TX 0x5 +#define I40E_AQ_SET_MAC_CONFIG_PACING_3DW_2TX 0x4 +#define I40E_AQ_SET_MAC_CONFIG_PACING_7DW_3TX 0x3 +#define I40E_AQ_SET_MAC_CONFIG_PACING_4DW_1TX 0x2 +#define I40E_AQ_SET_MAC_CONFIG_PACING_9DW_1TX 0x1 + u8 tx_timer_priority; /* bitmap */ + __le16 tx_timer_value; + __le16 fc_refresh_threshold; + u8 reserved[8]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aq_set_mac_config); + +/* Restart Auto-Negotiation (direct 0x605) */ +struct i40e_aqc_set_link_restart_an { + u8 command; +#define I40E_AQ_PHY_RESTART_AN 0x02 +#define I40E_AQ_PHY_LINK_ENABLE 0x04 + u8 reserved[15]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_set_link_restart_an); + +/* Get Link Status cmd & response data structure (direct 0x0607) */ +struct i40e_aqc_get_link_status { + __le16 command_flags; /* only field set on command */ +#define I40E_AQ_LSE_MASK 0x3 +#define I40E_AQ_LSE_NOP 0x0 +#define I40E_AQ_LSE_DISABLE 0x2 +#define I40E_AQ_LSE_ENABLE 0x3 +/* only response uses this flag */ +#define I40E_AQ_LSE_IS_ENABLED 0x1 + u8 phy_type; /* i40e_aq_phy_type */ + u8 link_speed; /* i40e_aq_link_speed */ + u8 link_info; +#define I40E_AQ_LINK_UP 0x01 +#define I40E_AQ_LINK_FAULT 0x02 +#define I40E_AQ_LINK_FAULT_TX 0x04 +#define I40E_AQ_LINK_FAULT_RX 0x08 +#define I40E_AQ_LINK_FAULT_REMOTE 0x10 +#define I40E_AQ_MEDIA_AVAILABLE 0x40 +#define I40E_AQ_SIGNAL_DETECT 0x80 + u8 an_info; +#define I40E_AQ_AN_COMPLETED 0x01 +#define I40E_AQ_LP_AN_ABILITY 0x02 +#define I40E_AQ_PD_FAULT 0x04 +#define I40E_AQ_FEC_EN 0x08 +#define I40E_AQ_PHY_LOW_POWER 0x10 +#define I40E_AQ_LINK_PAUSE_TX 0x20 +#define I40E_AQ_LINK_PAUSE_RX 0x40 +#define I40E_AQ_QUALIFIED_MODULE 0x80 + u8 ext_info; +#define I40E_AQ_LINK_PHY_TEMP_ALARM 0x01 +#define I40E_AQ_LINK_XCESSIVE_ERRORS 0x02 +#define I40E_AQ_LINK_TX_SHIFT 0x02 +#define I40E_AQ_LINK_TX_MASK (0x03 << I40E_AQ_LINK_TX_SHIFT) +#define I40E_AQ_LINK_TX_ACTIVE 0x00 +#define I40E_AQ_LINK_TX_DRAINED 0x01 +#define I40E_AQ_LINK_TX_FLUSHED 0x03 +#define I40E_AQ_LINK_FORCED_40G 0x10 + u8 loopback; /* use defines from i40e_aqc_set_lb_mode */ + __le16 max_frame_size; + u8 config; +#define I40E_AQ_CONFIG_CRC_ENA 0x04 +#define I40E_AQ_CONFIG_PACING_MASK 0x78 + u8 reserved[5]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_get_link_status); + +/* Set event mask command (direct 0x613) */ +struct i40e_aqc_set_phy_int_mask { + u8 reserved[8]; + __le16 event_mask; +#define I40E_AQ_EVENT_LINK_UPDOWN 0x0002 +#define I40E_AQ_EVENT_MEDIA_NA 0x0004 +#define I40E_AQ_EVENT_LINK_FAULT 0x0008 +#define I40E_AQ_EVENT_PHY_TEMP_ALARM 0x0010 +#define I40E_AQ_EVENT_EXCESSIVE_ERRORS 0x0020 +#define I40E_AQ_EVENT_SIGNAL_DETECT 0x0040 +#define I40E_AQ_EVENT_AN_COMPLETED 0x0080 +#define I40E_AQ_EVENT_MODULE_QUAL_FAIL 0x0100 +#define I40E_AQ_EVENT_PORT_TX_SUSPENDED 0x0200 + u8 reserved1[6]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_set_phy_int_mask); + +/* Get Local AN advt register (direct 0x0614) + * Set Local AN advt register (direct 0x0615) + * Get Link Partner AN advt register (direct 0x0616) + */ +struct i40e_aqc_an_advt_reg { + __le32 local_an_reg0; + __le16 local_an_reg1; + u8 reserved[10]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_an_advt_reg); + +/* Set Loopback mode (0x0618) */ +struct i40e_aqc_set_lb_mode { + __le16 lb_mode; +#define I40E_AQ_LB_PHY_LOCAL 0x01 +#define I40E_AQ_LB_PHY_REMOTE 0x02 +#define I40E_AQ_LB_MAC_LOCAL 0x04 + u8 reserved[14]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_set_lb_mode); + +/* Set PHY Debug command (0x0622) */ +struct i40e_aqc_set_phy_debug { + u8 command_flags; +#define I40E_AQ_PHY_DEBUG_RESET_INTERNAL 0x02 +#define I40E_AQ_PHY_DEBUG_RESET_EXTERNAL_SHIFT 2 +#define I40E_AQ_PHY_DEBUG_RESET_EXTERNAL_MASK (0x03 << \ + I40E_AQ_PHY_DEBUG_RESET_EXTERNAL_SHIFT) +#define I40E_AQ_PHY_DEBUG_RESET_EXTERNAL_NONE 0x00 +#define I40E_AQ_PHY_DEBUG_RESET_EXTERNAL_HARD 0x01 +#define I40E_AQ_PHY_DEBUG_RESET_EXTERNAL_SOFT 0x02 +#define I40E_AQ_PHY_DEBUG_DISABLE_LINK_FW 0x10 + u8 reserved[15]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_set_phy_debug); + +enum i40e_aq_phy_reg_type { + I40E_AQC_PHY_REG_INTERNAL = 0x1, + I40E_AQC_PHY_REG_EXERNAL_BASET = 0x2, + I40E_AQC_PHY_REG_EXERNAL_MODULE = 0x3 +}; + +/* NVM Read command (indirect 0x0701) + * NVM Erase commands (direct 0x0702) + * NVM Update commands (indirect 0x0703) + */ +struct i40e_aqc_nvm_update { + u8 command_flags; +#define I40E_AQ_NVM_LAST_CMD 0x01 +#define I40E_AQ_NVM_FLASH_ONLY 0x80 + u8 module_pointer; + __le16 length; + __le32 offset; + __le32 addr_high; + __le32 addr_low; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_nvm_update); + +/* NVM Config Read (indirect 0x0704) */ +struct i40e_aqc_nvm_config_read { + __le16 cmd_flags; +#define ANVM_SINGLE_OR_MULTIPLE_FEATURES_MASK 1 +#define ANVM_READ_SINGLE_FEATURE 0 +#define ANVM_READ_MULTIPLE_FEATURES 1 + __le16 element_count; + __le16 element_id; /* Feature/field ID */ + u8 reserved[2]; + __le32 address_high; + __le32 address_low; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_nvm_config_read); + +/* NVM Config Write (indirect 0x0705) */ +struct i40e_aqc_nvm_config_write { + __le16 cmd_flags; + __le16 element_count; + u8 reserved[4]; + __le32 address_high; + __le32 address_low; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_nvm_config_write); + +struct i40e_aqc_nvm_config_data_feature { + __le16 feature_id; + __le16 instance_id; + __le16 feature_options; + __le16 feature_selection; +}; + +struct i40e_aqc_nvm_config_data_immediate_field { +#define ANVM_FEATURE_OR_IMMEDIATE_MASK 0x2 + __le16 field_id; + __le16 instance_id; + __le16 field_options; + __le16 field_value; +}; + +/* Send to PF command (indirect 0x0801) id is only used by PF + * Send to VF command (indirect 0x0802) id is only used by PF + * Send to Peer PF command (indirect 0x0803) + */ +struct i40e_aqc_pf_vf_message { + __le32 id; + u8 reserved[4]; + __le32 addr_high; + __le32 addr_low; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_pf_vf_message); + +/* Alternate structure */ + +/* Direct write (direct 0x0900) + * Direct read (direct 0x0902) + */ +struct i40e_aqc_alternate_write { + __le32 address0; + __le32 data0; + __le32 address1; + __le32 data1; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_alternate_write); + +/* Indirect write (indirect 0x0901) + * Indirect read (indirect 0x0903) + */ + +struct i40e_aqc_alternate_ind_write { + __le32 address; + __le32 length; + __le32 addr_high; + __le32 addr_low; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_alternate_ind_write); + +/* Done alternate write (direct 0x0904) + * uses i40e_aq_desc + */ +struct i40e_aqc_alternate_write_done { + __le16 cmd_flags; +#define I40E_AQ_ALTERNATE_MODE_BIOS_MASK 1 +#define I40E_AQ_ALTERNATE_MODE_BIOS_LEGACY 0 +#define I40E_AQ_ALTERNATE_MODE_BIOS_UEFI 1 +#define I40E_AQ_ALTERNATE_RESET_NEEDED 2 + u8 reserved[14]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_alternate_write_done); + +/* Set OEM mode (direct 0x0905) */ +struct i40e_aqc_alternate_set_mode { + __le32 mode; +#define I40E_AQ_ALTERNATE_MODE_NONE 0 +#define I40E_AQ_ALTERNATE_MODE_OEM 1 + u8 reserved[12]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_alternate_set_mode); + +/* Clear port Alternate RAM (direct 0x0906) uses i40e_aq_desc */ + +/* async events 0x10xx */ + +/* Lan Queue Overflow Event (direct, 0x1001) */ +struct i40e_aqc_lan_overflow { + __le32 prtdcb_rupto; + __le32 otx_ctl; + u8 reserved[8]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_lan_overflow); + +/* Get LLDP MIB (indirect 0x0A00) */ +struct i40e_aqc_lldp_get_mib { + u8 type; + u8 reserved1; +#define I40E_AQ_LLDP_MIB_TYPE_MASK 0x3 +#define I40E_AQ_LLDP_MIB_LOCAL 0x0 +#define I40E_AQ_LLDP_MIB_REMOTE 0x1 +#define I40E_AQ_LLDP_MIB_LOCAL_AND_REMOTE 0x2 +#define I40E_AQ_LLDP_BRIDGE_TYPE_MASK 0xC +#define I40E_AQ_LLDP_BRIDGE_TYPE_SHIFT 0x2 +#define I40E_AQ_LLDP_BRIDGE_TYPE_NEAREST_BRIDGE 0x0 +#define I40E_AQ_LLDP_BRIDGE_TYPE_NON_TPMR 0x1 +#define I40E_AQ_LLDP_TX_SHIFT 0x4 +#define I40E_AQ_LLDP_TX_MASK (0x03 << I40E_AQ_LLDP_TX_SHIFT) +/* TX pause flags use I40E_AQ_LINK_TX_* above */ + __le16 local_len; + __le16 remote_len; + u8 reserved2[2]; + __le32 addr_high; + __le32 addr_low; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_lldp_get_mib); + +/* Configure LLDP MIB Change Event (direct 0x0A01) + * also used for the event (with type in the command field) + */ +struct i40e_aqc_lldp_update_mib { + u8 command; +#define I40E_AQ_LLDP_MIB_UPDATE_ENABLE 0x0 +#define I40E_AQ_LLDP_MIB_UPDATE_DISABLE 0x1 + u8 reserved[7]; + __le32 addr_high; + __le32 addr_low; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_lldp_update_mib); + +/* Add LLDP TLV (indirect 0x0A02) + * Delete LLDP TLV (indirect 0x0A04) + */ +struct i40e_aqc_lldp_add_tlv { + u8 type; /* only nearest bridge and non-TPMR from 0x0A00 */ + u8 reserved1[1]; + __le16 len; + u8 reserved2[4]; + __le32 addr_high; + __le32 addr_low; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_lldp_add_tlv); + +/* Update LLDP TLV (indirect 0x0A03) */ +struct i40e_aqc_lldp_update_tlv { + u8 type; /* only nearest bridge and non-TPMR from 0x0A00 */ + u8 reserved; + __le16 old_len; + __le16 new_offset; + __le16 new_len; + __le32 addr_high; + __le32 addr_low; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_lldp_update_tlv); + +/* Stop LLDP (direct 0x0A05) */ +struct i40e_aqc_lldp_stop { + u8 command; +#define I40E_AQ_LLDP_AGENT_STOP 0x0 +#define I40E_AQ_LLDP_AGENT_SHUTDOWN 0x1 + u8 reserved[15]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_lldp_stop); + +/* Start LLDP (direct 0x0A06) */ + +struct i40e_aqc_lldp_start { + u8 command; +#define I40E_AQ_LLDP_AGENT_START 0x1 + u8 reserved[15]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_lldp_start); + +/* Apply MIB changes (0x0A07) + * uses the generic struc as it contains no data + */ + +/* Add Udp Tunnel command and completion (direct 0x0B00) */ +struct i40e_aqc_add_udp_tunnel { + __le16 udp_port; + u8 reserved0[3]; + u8 protocol_type; +#define I40E_AQC_TUNNEL_TYPE_VXLAN 0x00 +#define I40E_AQC_TUNNEL_TYPE_NGE 0x01 +#define I40E_AQC_TUNNEL_TYPE_TEREDO 0x10 + u8 reserved1[10]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_add_udp_tunnel); + +struct i40e_aqc_add_udp_tunnel_completion { + __le16 udp_port; + u8 filter_entry_index; + u8 multiple_pfs; +#define I40E_AQC_SINGLE_PF 0x0 +#define I40E_AQC_MULTIPLE_PFS 0x1 + u8 total_filters; + u8 reserved[11]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_add_udp_tunnel_completion); + +/* remove UDP Tunnel command (0x0B01) */ +struct i40e_aqc_remove_udp_tunnel { + u8 reserved[2]; + u8 index; /* 0 to 15 */ + u8 reserved2[13]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_remove_udp_tunnel); + +struct i40e_aqc_del_udp_tunnel_completion { + __le16 udp_port; + u8 index; /* 0 to 15 */ + u8 multiple_pfs; + u8 total_filters_used; + u8 reserved1[11]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_del_udp_tunnel_completion); + +/* tunnel key structure 0x0B10 */ + +struct i40e_aqc_tunnel_key_structure { + u8 key1_off; + u8 key2_off; + u8 key1_len; /* 0 to 15 */ + u8 key2_len; /* 0 to 15 */ + u8 flags; +#define I40E_AQC_TUNNEL_KEY_STRUCT_OVERRIDE 0x01 +/* response flags */ +#define I40E_AQC_TUNNEL_KEY_STRUCT_SUCCESS 0x01 +#define I40E_AQC_TUNNEL_KEY_STRUCT_MODIFIED 0x02 +#define I40E_AQC_TUNNEL_KEY_STRUCT_OVERRIDDEN 0x03 + u8 network_key_index; +#define I40E_AQC_NETWORK_KEY_INDEX_VXLAN 0x0 +#define I40E_AQC_NETWORK_KEY_INDEX_NGE 0x1 +#define I40E_AQC_NETWORK_KEY_INDEX_FLEX_MAC_IN_UDP 0x2 +#define I40E_AQC_NETWORK_KEY_INDEX_GRE 0x3 + u8 reserved[10]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_tunnel_key_structure); + +/* OEM mode commands (direct 0xFE0x) */ +struct i40e_aqc_oem_param_change { + __le32 param_type; +#define I40E_AQ_OEM_PARAM_TYPE_PF_CTL 0 +#define I40E_AQ_OEM_PARAM_TYPE_BW_CTL 1 +#define I40E_AQ_OEM_PARAM_MAC 2 + __le32 param_value1; + u8 param_value2[8]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_oem_param_change); + +struct i40e_aqc_oem_state_change { + __le32 state; +#define I40E_AQ_OEM_STATE_LINK_DOWN 0x0 +#define I40E_AQ_OEM_STATE_LINK_UP 0x1 + u8 reserved[12]; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_oem_state_change); + +/* debug commands */ + +/* get device id (0xFF00) uses the generic structure */ + +/* set test more (0xFF01, internal) */ + +struct i40e_acq_set_test_mode { + u8 mode; +#define I40E_AQ_TEST_PARTIAL 0 +#define I40E_AQ_TEST_FULL 1 +#define I40E_AQ_TEST_NVM 2 + u8 reserved[3]; + u8 command; +#define I40E_AQ_TEST_OPEN 0 +#define I40E_AQ_TEST_CLOSE 1 +#define I40E_AQ_TEST_INC 2 + u8 reserved2[3]; + __le32 address_high; + __le32 address_low; +}; + +I40E_CHECK_CMD_LENGTH(i40e_acq_set_test_mode); + +/* Debug Read Register command (0xFF03) + * Debug Write Register command (0xFF04) + */ +struct i40e_aqc_debug_reg_read_write { + __le32 reserved; + __le32 address; + __le32 value_high; + __le32 value_low; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_debug_reg_read_write); + +/* Scatter/gather Reg Read (indirect 0xFF05) + * Scatter/gather Reg Write (indirect 0xFF06) + */ + +/* i40e_aq_desc is used for the command */ +struct i40e_aqc_debug_reg_sg_element_data { + __le32 address; + __le32 value; +}; + +/* Debug Modify register (direct 0xFF07) */ +struct i40e_aqc_debug_modify_reg { + __le32 address; + __le32 value; + __le32 clear_mask; + __le32 set_mask; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_debug_modify_reg); + +/* dump internal data (0xFF08, indirect) */ + +#define I40E_AQ_CLUSTER_ID_AUX 0 +#define I40E_AQ_CLUSTER_ID_SWITCH_FLU 1 +#define I40E_AQ_CLUSTER_ID_TXSCHED 2 +#define I40E_AQ_CLUSTER_ID_HMC 3 +#define I40E_AQ_CLUSTER_ID_MAC0 4 +#define I40E_AQ_CLUSTER_ID_MAC1 5 +#define I40E_AQ_CLUSTER_ID_MAC2 6 +#define I40E_AQ_CLUSTER_ID_MAC3 7 +#define I40E_AQ_CLUSTER_ID_DCB 8 +#define I40E_AQ_CLUSTER_ID_EMP_MEM 9 +#define I40E_AQ_CLUSTER_ID_PKT_BUF 10 +#define I40E_AQ_CLUSTER_ID_ALTRAM 11 + +struct i40e_aqc_debug_dump_internals { + u8 cluster_id; + u8 table_id; + __le16 data_size; + __le32 idx; + __le32 address_high; + __le32 address_low; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_debug_dump_internals); + +struct i40e_aqc_debug_modify_internals { + u8 cluster_id; + u8 cluster_specific_params[7]; + __le32 address_high; + __le32 address_low; +}; + +I40E_CHECK_CMD_LENGTH(i40e_aqc_debug_modify_internals); + +#endif diff --git a/sys/dev/i40e/i40e_alloc.h b/sys/dev/ixl/i40e_alloc.h index dc6fadd..dc6fadd 100755 --- a/sys/dev/i40e/i40e_alloc.h +++ b/sys/dev/ixl/i40e_alloc.h diff --git a/sys/dev/i40e/i40e_common.c b/sys/dev/ixl/i40e_common.c index ec0fd0c..ad1f945 100755 --- a/sys/dev/i40e/i40e_common.c +++ b/sys/dev/ixl/i40e_common.c @@ -44,7 +44,7 @@ * This function sets the mac type of the adapter based on the * vendor ID and device ID stored in the hw structure. **/ -static enum i40e_status_code i40e_set_mac_type(struct i40e_hw *hw) +enum i40e_status_code i40e_set_mac_type(struct i40e_hw *hw) { enum i40e_status_code status = I40E_SUCCESS; @@ -60,6 +60,7 @@ static enum i40e_status_code i40e_set_mac_type(struct i40e_hw *hw) case I40E_DEV_ID_QSFP_A: case I40E_DEV_ID_QSFP_B: case I40E_DEV_ID_QSFP_C: + case I40E_DEV_ID_10G_BASE_T: hw->mac.type = I40E_MAC_XL710; break; case I40E_DEV_ID_VF: @@ -4686,3 +4687,101 @@ enum i40e_status_code i40e_aq_configure_partition_bw(struct i40e_hw *hw, return status; } + +/** + * i40e_aq_send_msg_to_pf + * @hw: pointer to the hardware structure + * @v_opcode: opcodes for VF-PF communication + * @v_retval: return error code + * @msg: pointer to the msg buffer + * @msglen: msg length + * @cmd_details: pointer to command details + * + * Send message to PF driver using admin queue. By default, this message + * is sent asynchronously, i.e. i40e_asq_send_command() does not wait for + * completion before returning. + **/ +enum i40e_status_code i40e_aq_send_msg_to_pf(struct i40e_hw *hw, + enum i40e_virtchnl_ops v_opcode, + enum i40e_status_code v_retval, + u8 *msg, u16 msglen, + struct i40e_asq_cmd_details *cmd_details) +{ + struct i40e_aq_desc desc; + struct i40e_asq_cmd_details details; + enum i40e_status_code status; + + i40e_fill_default_direct_cmd_desc(&desc, i40e_aqc_opc_send_msg_to_pf); + desc.flags |= CPU_TO_LE16((u16)I40E_AQ_FLAG_SI); + desc.cookie_high = CPU_TO_LE32(v_opcode); + desc.cookie_low = CPU_TO_LE32(v_retval); + if (msglen) { + desc.flags |= CPU_TO_LE16((u16)(I40E_AQ_FLAG_BUF + | I40E_AQ_FLAG_RD)); + if (msglen > I40E_AQ_LARGE_BUF) + desc.flags |= CPU_TO_LE16((u16)I40E_AQ_FLAG_LB); + desc.datalen = CPU_TO_LE16(msglen); + } + if (!cmd_details) { + i40e_memset(&details, 0, sizeof(details), I40E_NONDMA_MEM); + details.async = TRUE; + cmd_details = &details; + } + status = i40e_asq_send_command(hw, (struct i40e_aq_desc *)&desc, msg, + msglen, cmd_details); + return status; +} + +/** + * i40e_vf_parse_hw_config + * @hw: pointer to the hardware structure + * @msg: pointer to the virtual channel VF resource structure + * + * Given a VF resource message from the PF, populate the hw struct + * with appropriate information. + **/ +void i40e_vf_parse_hw_config(struct i40e_hw *hw, + struct i40e_virtchnl_vf_resource *msg) +{ + struct i40e_virtchnl_vsi_resource *vsi_res; + int i; + + vsi_res = &msg->vsi_res[0]; + + hw->dev_caps.num_vsis = msg->num_vsis; + hw->dev_caps.num_rx_qp = msg->num_queue_pairs; + hw->dev_caps.num_tx_qp = msg->num_queue_pairs; + hw->dev_caps.num_msix_vectors_vf = msg->max_vectors; + hw->dev_caps.dcb = msg->vf_offload_flags & + I40E_VIRTCHNL_VF_OFFLOAD_L2; + hw->dev_caps.fcoe = (msg->vf_offload_flags & + I40E_VIRTCHNL_VF_OFFLOAD_FCOE) ? 1 : 0; + hw->dev_caps.iwarp = (msg->vf_offload_flags & + I40E_VIRTCHNL_VF_OFFLOAD_IWARP) ? 1 : 0; + for (i = 0; i < msg->num_vsis; i++) { + if (vsi_res->vsi_type == I40E_VSI_SRIOV) { + i40e_memcpy(hw->mac.perm_addr, + vsi_res->default_mac_addr, + I40E_ETH_LENGTH_OF_ADDRESS, + I40E_NONDMA_TO_NONDMA); + i40e_memcpy(hw->mac.addr, vsi_res->default_mac_addr, + I40E_ETH_LENGTH_OF_ADDRESS, + I40E_NONDMA_TO_NONDMA); + } + vsi_res++; + } +} + +/** + * i40e_vf_reset + * @hw: pointer to the hardware structure + * + * Send a VF_RESET message to the PF. Does not wait for response from PF + * as none will be forthcoming. Immediately after calling this function, + * the admin queue should be shut down and (optionally) reinitialized. + **/ +enum i40e_status_code i40e_vf_reset(struct i40e_hw *hw) +{ + return i40e_aq_send_msg_to_pf(hw, I40E_VIRTCHNL_OP_RESET_VF, + I40E_SUCCESS, NULL, 0, NULL); +} diff --git a/sys/dev/i40e/i40e_hmc.c b/sys/dev/ixl/i40e_hmc.c index 81cb2ae..81cb2ae 100755 --- a/sys/dev/i40e/i40e_hmc.c +++ b/sys/dev/ixl/i40e_hmc.c diff --git a/sys/dev/i40e/i40e_hmc.h b/sys/dev/ixl/i40e_hmc.h index cba325f..cba325f 100755 --- a/sys/dev/i40e/i40e_hmc.h +++ b/sys/dev/ixl/i40e_hmc.h diff --git a/sys/dev/i40e/i40e_lan_hmc.c b/sys/dev/ixl/i40e_lan_hmc.c index 91c20e8..91c20e8 100755 --- a/sys/dev/i40e/i40e_lan_hmc.c +++ b/sys/dev/ixl/i40e_lan_hmc.c diff --git a/sys/dev/i40e/i40e_lan_hmc.h b/sys/dev/ixl/i40e_lan_hmc.h index 8b73570..8b73570 100755 --- a/sys/dev/i40e/i40e_lan_hmc.h +++ b/sys/dev/ixl/i40e_lan_hmc.h diff --git a/sys/dev/i40e/i40e_nvm.c b/sys/dev/ixl/i40e_nvm.c index 52d8602..52d8602 100755 --- a/sys/dev/i40e/i40e_nvm.c +++ b/sys/dev/ixl/i40e_nvm.c diff --git a/sys/dev/i40e/i40e_osdep.c b/sys/dev/ixl/i40e_osdep.c index cea801c..30e2e57 100755 --- a/sys/dev/i40e/i40e_osdep.c +++ b/sys/dev/ixl/i40e_osdep.c @@ -34,7 +34,7 @@ #include <machine/stdarg.h> -#include "i40e.h" +#include "ixl.h" /******************************************************************** * Manage DMA'able memory. diff --git a/sys/dev/i40e/i40e_osdep.h b/sys/dev/ixl/i40e_osdep.h index 2a81cda..5479dd2 100755 --- a/sys/dev/i40e/i40e_osdep.h +++ b/sys/dev/ixl/i40e_osdep.h @@ -54,9 +54,8 @@ #include <dev/pci/pcivar.h> #include <dev/pci/pcireg.h> -#define ASSERT(x) if(!(x)) panic("I40E: x") +#define ASSERT(x) if(!(x)) panic("IXL: x") -/* The happy-fun DELAY macro is defined in /usr/src/sys/i386/include/clock.h */ #define i40e_usec_delay(x) DELAY(x) #define i40e_msec_delay(x) DELAY(1000*(x)) @@ -146,9 +145,10 @@ void prefetch(void *x) struct i40e_osdep { - bus_space_tag_t mem_bus_space_tag; - bus_space_handle_t mem_bus_space_handle; - struct device *dev; + bus_space_tag_t mem_bus_space_tag; + bus_space_handle_t mem_bus_space_handle; + bus_size_t mem_bus_space_size; + struct device *dev; }; struct i40e_dma_mem { @@ -166,8 +166,6 @@ struct i40e_hw; /* forward decl */ u16 i40e_read_pci_cfg(struct i40e_hw *, u32); void i40e_write_pci_cfg(struct i40e_hw *, u32, u16); -#define I40E_READ_PCIE_WORD i40e_read_pci_cfg - #define i40e_allocate_dma_mem(h, m, unused, s, a) i40e_allocate_dma(h, m, s, a) #define i40e_free_dma_mem(h, m) i40e_free_dma(h, m) @@ -181,17 +179,38 @@ struct i40e_virt_mem { #define i40e_allocate_virt_mem(h, m, s) i40e_allocate_virt(h, m, s) #define i40e_free_virt_mem(h, m) i40e_free_virt(h, m) +/* +** This hardware supports either 16 or 32 byte rx descriptors +** we default here to the larger size. +*/ #define i40e_rx_desc i40e_32byte_rx_desc -#define rd32(a, reg) (\ - bus_space_read_4( ((struct i40e_osdep *)(a)->back)->mem_bus_space_tag, \ - ((struct i40e_osdep *)(a)->back)->mem_bus_space_handle, \ - reg)) +static __inline uint32_t +rd32_osdep(struct i40e_osdep *osdep, uint32_t reg) +{ -#define wr32(a, reg, value) (\ - bus_space_write_4( ((struct i40e_osdep *)(a)->back)->mem_bus_space_tag, \ - ((struct i40e_osdep *)(a)->back)->mem_bus_space_handle, \ - reg, value)) + KASSERT(reg < osdep->mem_bus_space_size, + ("ixl: register offset %#jx too large (max is %#jx", + (uintmax_t)a, (uintmax_t)osdep->mem_bus_space_size)); + + return (bus_space_read_4(osdep->mem_bus_space_tag, + osdep->mem_bus_space_handle, reg)); +} + +static __inline void +wr32_osdep(struct i40e_osdep *osdep, uint32_t reg, uint32_t value) +{ + + KASSERT(reg < osdep->mem_bus_space_size, + ("ixl: register offset %#jx too large (max is %#jx", + (uintmax_t)a, (uintmax_t)osdep->mem_bus_space_size)); + + bus_space_write_4(osdep->mem_bus_space_tag, + osdep->mem_bus_space_handle, reg, value); +} + +#define rd32(a, reg) rd32_osdep((a)->back, (reg)) +#define wr32(a, reg, value) wr32_osdep((a)->back, (reg), (value)) #define rd64(a, reg) (\ bus_space_read_8( ((struct i40e_osdep *)(a)->back)->mem_bus_space_tag, \ @@ -203,7 +222,7 @@ struct i40e_virt_mem { ((struct i40e_osdep *)(a)->back)->mem_bus_space_handle, \ reg, value)) -#define i40e_flush(a) (\ +#define ixl_flush(a) (\ bus_space_read_4( ((struct i40e_osdep *)(a)->back)->mem_bus_space_tag, \ ((struct i40e_osdep *)(a)->back)->mem_bus_space_handle, \ I40E_GLGEN_STAT)) diff --git a/sys/dev/i40e/i40e_prototype.h b/sys/dev/ixl/i40e_prototype.h index 9b2d7fc..db9e3cc 100755 --- a/sys/dev/i40e/i40e_prototype.h +++ b/sys/dev/ixl/i40e_prototype.h @@ -104,11 +104,11 @@ enum i40e_status_code i40e_aq_set_phy_config(struct i40e_hw *hw, struct i40e_asq_cmd_details *cmd_details); enum i40e_status_code i40e_set_fc(struct i40e_hw *hw, u8 *aq_failures, bool atomic_reset); +enum i40e_status_code i40e_aq_set_phy_int_mask(struct i40e_hw *hw, u16 mask, + struct i40e_asq_cmd_details *cmd_details); enum i40e_status_code i40e_aq_set_mac_config(struct i40e_hw *hw, u16 max_frame_size, bool crc_en, u16 pacing, struct i40e_asq_cmd_details *cmd_details); -enum i40e_status_code i40e_aq_set_phy_int_mask(struct i40e_hw *hw, u16 mask, - struct i40e_asq_cmd_details *cmd_details); enum i40e_status_code i40e_aq_get_local_advt_reg(struct i40e_hw *hw, u64 *advt_reg, struct i40e_asq_cmd_details *cmd_details); @@ -393,10 +393,8 @@ enum i40e_status_code i40e_nvmupd_command(struct i40e_hw *hw, u8 *bytes, int *); void i40e_set_pci_config_data(struct i40e_hw *hw, u16 link_status); -#if defined(I40E_QV) || defined(VF_DRIVER) enum i40e_status_code i40e_set_mac_type(struct i40e_hw *hw); -#endif extern struct i40e_rx_ptype_decoded i40e_ptype_lookup[]; static INLINE struct i40e_rx_ptype_decoded decode_rx_desc_ptype(u8 ptype) diff --git a/sys/dev/i40e/i40e_register.h b/sys/dev/ixl/i40e_register.h index b6364a0..b6364a0 100755 --- a/sys/dev/i40e/i40e_register.h +++ b/sys/dev/ixl/i40e_register.h diff --git a/sys/dev/i40e/i40e_register_x710_int.h b/sys/dev/ixl/i40e_register_x710_int.h index 2f970cd..2f970cd 100755 --- a/sys/dev/i40e/i40e_register_x710_int.h +++ b/sys/dev/ixl/i40e_register_x710_int.h diff --git a/sys/dev/i40e/i40e_status.h b/sys/dev/ixl/i40e_status.h index 24d5e6b..24d5e6b 100755 --- a/sys/dev/i40e/i40e_status.h +++ b/sys/dev/ixl/i40e_status.h diff --git a/sys/dev/i40e/i40e_type.h b/sys/dev/ixl/i40e_type.h index 093cfbd..c1d13f2 100755 --- a/sys/dev/i40e/i40e_type.h +++ b/sys/dev/ixl/i40e_type.h @@ -56,6 +56,7 @@ #define I40E_DEV_ID_QSFP_A 0x1583 #define I40E_DEV_ID_QSFP_B 0x1584 #define I40E_DEV_ID_QSFP_C 0x1585 +#define I40E_DEV_ID_10G_BASE_T 0x1586 #define I40E_DEV_ID_VF 0x154C #define I40E_DEV_ID_VF_HV 0x1571 @@ -532,10 +533,6 @@ struct i40e_hw { /* Admin Queue info */ struct i40e_adminq_info aq; -#ifdef I40E_QV - bool aq_dbg_ena; /* use Tools AQ instead of PF AQ */ - bool qv_force_init; -#endif /* state of nvm update process */ enum i40e_nvmupd_state nvmupd_state; @@ -553,6 +550,7 @@ struct i40e_hw { /* debug mask */ u32 debug_mask; }; +#define i40e_is_vf(_hw) ((_hw)->mac.type == I40E_MAC_VF) struct i40e_driver_version { u8 major_version; diff --git a/sys/dev/i40e/i40e_virtchnl.h b/sys/dev/ixl/i40e_virtchnl.h index 87e48aa..034d276 100755 --- a/sys/dev/i40e/i40e_virtchnl.h +++ b/sys/dev/ixl/i40e_virtchnl.h @@ -87,6 +87,7 @@ enum i40e_virtchnl_ops { I40E_VIRTCHNL_OP_CONFIG_PROMISCUOUS_MODE, I40E_VIRTCHNL_OP_GET_STATS, I40E_VIRTCHNL_OP_FCOE, + I40E_VIRTCHNL_OP_CONFIG_RSS, /* PF sends status change events to vfs using * the following op. */ diff --git a/sys/dev/i40e/if_i40e.c b/sys/dev/ixl/if_ixl.c index 74e64bf..de3f817 100755 --- a/sys/dev/i40e/if_i40e.c +++ b/sys/dev/ixl/if_ixl.c @@ -32,30 +32,27 @@ ******************************************************************************/ /*$FreeBSD$*/ -#ifdef HAVE_KERNEL_OPTION_HEADERS #include "opt_inet.h" #include "opt_inet6.h" -#endif - -#include "i40e.h" -#include "i40e_pf.h" +#include "ixl.h" +#include "ixl_pf.h" /********************************************************************* * Driver version *********************************************************************/ -char i40e_driver_version[] = "1.0.0"; +char ixl_driver_version[] = "1.2.2"; /********************************************************************* * PCI Device ID Table * * Used by probe to select devices to load on - * Last field stores an index into i40e_strings + * Last field stores an index into ixl_strings * Last entry must be all 0s * * { Vendor ID, Device ID, SubVendor ID, SubDevice ID, String Index } *********************************************************************/ -static i40e_vendor_info_t i40e_vendor_info_array[] = +static ixl_vendor_info_t ixl_vendor_info_array[] = { {I40E_INTEL_VENDOR_ID, I40E_DEV_ID_SFP_XL710, 0, 0, 0}, {I40E_INTEL_VENDOR_ID, I40E_DEV_ID_KX_A, 0, 0, 0}, @@ -64,6 +61,7 @@ static i40e_vendor_info_t i40e_vendor_info_array[] = {I40E_INTEL_VENDOR_ID, I40E_DEV_ID_QSFP_A, 0, 0, 0}, {I40E_INTEL_VENDOR_ID, I40E_DEV_ID_QSFP_B, 0, 0, 0}, {I40E_INTEL_VENDOR_ID, I40E_DEV_ID_QSFP_C, 0, 0, 0}, + {I40E_INTEL_VENDOR_ID, I40E_DEV_ID_10G_BASE_T, 0, 0, 0}, /* required last entry */ {0, 0, 0, 0, 0} }; @@ -72,7 +70,7 @@ static i40e_vendor_info_t i40e_vendor_info_array[] = * Table of branding strings *********************************************************************/ -static char *i40e_strings[] = { +static char *ixl_strings[] = { "Intel(R) Ethernet Connection XL710 Driver" }; @@ -80,182 +78,209 @@ static char *i40e_strings[] = { /********************************************************************* * Function prototypes *********************************************************************/ -static int i40e_probe(device_t); -static int i40e_attach(device_t); -static int i40e_detach(device_t); -static int i40e_shutdown(device_t); -static int i40e_get_hw_capabilities(struct i40e_pf *); -static void i40e_cap_txcsum_tso(struct i40e_vsi *, struct ifnet *, int); -static int i40e_ioctl(struct ifnet *, u_long, caddr_t); -static void i40e_init(void *); -static void i40e_init_locked(struct i40e_pf *); -static void i40e_stop(struct i40e_pf *); -static void i40e_media_status(struct ifnet *, struct ifmediareq *); -static int i40e_media_change(struct ifnet *); -static void i40e_update_link_status(struct i40e_pf *); -static int i40e_allocate_pci_resources(struct i40e_pf *); -static u16 i40e_get_bus_info(struct i40e_hw *, device_t); -static int i40e_setup_stations(struct i40e_pf *); -static int i40e_setup_vsi(struct i40e_vsi *); -static int i40e_initialize_vsi(struct i40e_vsi *); -static int i40e_assign_vsi_msix(struct i40e_pf *); -static int i40e_assign_vsi_legacy(struct i40e_pf *); -static int i40e_init_msix(struct i40e_pf *); -static void i40e_configure_msix(struct i40e_pf *); -static void i40e_configure_itr(struct i40e_pf *); -static void i40e_configure_legacy(struct i40e_pf *); -static void i40e_free_pci_resources(struct i40e_pf *); -static void i40e_local_timer(void *); -static int i40e_setup_interface(device_t, struct i40e_vsi *); -static bool i40e_config_link(struct i40e_hw *); -static void i40e_config_rss(struct i40e_vsi *); -static void i40e_set_queue_rx_itr(struct i40e_queue *); -static void i40e_set_queue_tx_itr(struct i40e_queue *); - -static void i40e_enable_rings(struct i40e_vsi *); -static void i40e_disable_rings(struct i40e_vsi *); -static void i40e_enable_intr(struct i40e_vsi *); -static void i40e_disable_intr(struct i40e_vsi *); - -static void i40e_enable_adminq(struct i40e_hw *); -static void i40e_disable_adminq(struct i40e_hw *); -static void i40e_enable_queue(struct i40e_hw *, int); -static void i40e_disable_queue(struct i40e_hw *, int); -static void i40e_enable_legacy(struct i40e_hw *); -static void i40e_disable_legacy(struct i40e_hw *); - -static void i40e_set_promisc(struct i40e_vsi *); -static void i40e_add_multi(struct i40e_vsi *); -static void i40e_del_multi(struct i40e_vsi *); -static void i40e_register_vlan(void *, struct ifnet *, u16); -static void i40e_unregister_vlan(void *, struct ifnet *, u16); -static void i40e_setup_vlan_filters(struct i40e_vsi *); - -static void i40e_init_filters(struct i40e_vsi *); -static void i40e_add_filter(struct i40e_vsi *, u8 *, s16 vlan); -static void i40e_del_filter(struct i40e_vsi *, u8 *, s16 vlan); -static void i40e_add_hw_filters(struct i40e_vsi *, int, int); -static void i40e_del_hw_filters(struct i40e_vsi *, int); -static struct i40e_mac_filter * - i40e_find_filter(struct i40e_vsi *, u8 *, s16); -static void i40e_add_mc_filter(struct i40e_vsi *, u8 *); +static int ixl_probe(device_t); +static int ixl_attach(device_t); +static int ixl_detach(device_t); +static int ixl_shutdown(device_t); +static int ixl_get_hw_capabilities(struct ixl_pf *); +static void ixl_cap_txcsum_tso(struct ixl_vsi *, struct ifnet *, int); +static int ixl_ioctl(struct ifnet *, u_long, caddr_t); +static void ixl_init(void *); +static void ixl_init_locked(struct ixl_pf *); +static void ixl_stop(struct ixl_pf *); +static void ixl_media_status(struct ifnet *, struct ifmediareq *); +static int ixl_media_change(struct ifnet *); +static void ixl_update_link_status(struct ixl_pf *); +static int ixl_allocate_pci_resources(struct ixl_pf *); +static u16 ixl_get_bus_info(struct i40e_hw *, device_t); +static int ixl_setup_stations(struct ixl_pf *); +static int ixl_setup_vsi(struct ixl_vsi *); +static int ixl_initialize_vsi(struct ixl_vsi *); +static int ixl_assign_vsi_msix(struct ixl_pf *); +static int ixl_assign_vsi_legacy(struct ixl_pf *); +static int ixl_init_msix(struct ixl_pf *); +static void ixl_configure_msix(struct ixl_pf *); +static void ixl_configure_itr(struct ixl_pf *); +static void ixl_configure_legacy(struct ixl_pf *); +static void ixl_free_pci_resources(struct ixl_pf *); +static void ixl_local_timer(void *); +static int ixl_setup_interface(device_t, struct ixl_vsi *); +static bool ixl_config_link(struct i40e_hw *); +static void ixl_config_rss(struct ixl_vsi *); +static void ixl_set_queue_rx_itr(struct ixl_queue *); +static void ixl_set_queue_tx_itr(struct ixl_queue *); + +static void ixl_enable_rings(struct ixl_vsi *); +static void ixl_disable_rings(struct ixl_vsi *); +static void ixl_enable_intr(struct ixl_vsi *); +static void ixl_disable_intr(struct ixl_vsi *); + +static void ixl_enable_adminq(struct i40e_hw *); +static void ixl_disable_adminq(struct i40e_hw *); +static void ixl_enable_queue(struct i40e_hw *, int); +static void ixl_disable_queue(struct i40e_hw *, int); +static void ixl_enable_legacy(struct i40e_hw *); +static void ixl_disable_legacy(struct i40e_hw *); + +static void ixl_set_promisc(struct ixl_vsi *); +static void ixl_add_multi(struct ixl_vsi *); +static void ixl_del_multi(struct ixl_vsi *); +static void ixl_register_vlan(void *, struct ifnet *, u16); +static void ixl_unregister_vlan(void *, struct ifnet *, u16); +static void ixl_setup_vlan_filters(struct ixl_vsi *); + +static void ixl_init_filters(struct ixl_vsi *); +static void ixl_add_filter(struct ixl_vsi *, u8 *, s16 vlan); +static void ixl_del_filter(struct ixl_vsi *, u8 *, s16 vlan); +static void ixl_add_hw_filters(struct ixl_vsi *, int, int); +static void ixl_del_hw_filters(struct ixl_vsi *, int); +static struct ixl_mac_filter * + ixl_find_filter(struct ixl_vsi *, u8 *, s16); +static void ixl_add_mc_filter(struct ixl_vsi *, u8 *); /* Sysctl debug interface */ -static int i40e_debug_info(SYSCTL_HANDLER_ARGS); -static void i40e_print_debug_info(struct i40e_pf *); +static int ixl_debug_info(SYSCTL_HANDLER_ARGS); +static void ixl_print_debug_info(struct ixl_pf *); /* The MSI/X Interrupt handlers */ -static void i40e_intr(void *); -static void i40e_msix_que(void *); -static void i40e_msix_adminq(void *); -static void i40e_handle_mdd_event(struct i40e_pf *); +static void ixl_intr(void *); +static void ixl_msix_que(void *); +static void ixl_msix_adminq(void *); +static void ixl_handle_mdd_event(struct ixl_pf *); /* Deferred interrupt tasklets */ -static void i40e_do_adminq(void *, int); +static void ixl_do_adminq(void *, int); /* Sysctl handlers */ -static int i40e_set_flowcntl(SYSCTL_HANDLER_ARGS); -static int i40e_set_advertise(SYSCTL_HANDLER_ARGS); +static int ixl_set_flowcntl(SYSCTL_HANDLER_ARGS); +static int ixl_set_advertise(SYSCTL_HANDLER_ARGS); +static int ixl_current_speed(SYSCTL_HANDLER_ARGS); /* Statistics */ -static void i40e_add_hw_stats(struct i40e_pf *); -static void i40e_add_sysctls_mac_stats(struct sysctl_ctx_list *, +static void ixl_add_hw_stats(struct ixl_pf *); +static void ixl_add_sysctls_mac_stats(struct sysctl_ctx_list *, struct sysctl_oid_list *, struct i40e_hw_port_stats *); -static void i40e_add_sysctls_eth_stats(struct sysctl_ctx_list *, +static void ixl_add_sysctls_eth_stats(struct sysctl_ctx_list *, struct sysctl_oid_list *, struct i40e_eth_stats *); -static void i40e_update_stats_counters(struct i40e_pf *); -static void i40e_update_eth_stats(struct i40e_vsi *); -static void i40e_pf_reset_stats(struct i40e_pf *); -static void i40e_vsi_reset_stats(struct i40e_vsi *); -static void i40e_stat_update48(struct i40e_hw *, u32, u32, bool, +static void ixl_update_stats_counters(struct ixl_pf *); +static void ixl_update_eth_stats(struct ixl_vsi *); +static void ixl_pf_reset_stats(struct ixl_pf *); +static void ixl_vsi_reset_stats(struct ixl_vsi *); +static void ixl_stat_update48(struct i40e_hw *, u32, u32, bool, u64 *, u64 *); -static void i40e_stat_update32(struct i40e_hw *, u32, bool, +static void ixl_stat_update32(struct i40e_hw *, u32, bool, u64 *, u64 *); -#ifdef I40E_DEBUG -static int i40e_sysctl_link_status(SYSCTL_HANDLER_ARGS); -static int i40e_sysctl_phy_abilities(SYSCTL_HANDLER_ARGS); -static int i40e_sysctl_sw_filter_list(SYSCTL_HANDLER_ARGS); -static int i40e_sysctl_hw_res_info(SYSCTL_HANDLER_ARGS); -static int i40e_sysctl_dump_txd(SYSCTL_HANDLER_ARGS); +#ifdef IXL_DEBUG +static int ixl_sysctl_link_status(SYSCTL_HANDLER_ARGS); +static int ixl_sysctl_phy_abilities(SYSCTL_HANDLER_ARGS); +static int ixl_sysctl_sw_filter_list(SYSCTL_HANDLER_ARGS); +static int ixl_sysctl_hw_res_info(SYSCTL_HANDLER_ARGS); +static int ixl_sysctl_dump_txd(SYSCTL_HANDLER_ARGS); #endif /********************************************************************* * FreeBSD Device Interface Entry Points *********************************************************************/ -static device_method_t i40e_methods[] = { +static device_method_t ixl_methods[] = { /* Device interface */ - DEVMETHOD(device_probe, i40e_probe), - DEVMETHOD(device_attach, i40e_attach), - DEVMETHOD(device_detach, i40e_detach), - DEVMETHOD(device_shutdown, i40e_shutdown), + DEVMETHOD(device_probe, ixl_probe), + DEVMETHOD(device_attach, ixl_attach), + DEVMETHOD(device_detach, ixl_detach), + DEVMETHOD(device_shutdown, ixl_shutdown), {0, 0} }; -static driver_t i40e_driver = { - "ixl", i40e_methods, sizeof(struct i40e_pf), +static driver_t ixl_driver = { + "ixl", ixl_methods, sizeof(struct ixl_pf), }; -devclass_t i40e_devclass; -DRIVER_MODULE(i40e, pci, i40e_driver, i40e_devclass, 0, 0); +devclass_t ixl_devclass; +DRIVER_MODULE(ixl, pci, ixl_driver, ixl_devclass, 0, 0); -MODULE_DEPEND(i40e, pci, 1, 1, 1); -MODULE_DEPEND(i40e, ether, 1, 1, 1); +MODULE_DEPEND(ixl, pci, 1, 1, 1); +MODULE_DEPEND(ixl, ether, 1, 1, 1); /* ** Global reset mutex */ -static struct mtx i40e_reset_mtx; +static struct mtx ixl_reset_mtx; + +/* +** TUNEABLE PARAMETERS: +*/ + +static SYSCTL_NODE(_hw, OID_AUTO, ixl, CTLFLAG_RD, 0, + "IXL driver parameters"); /* * MSIX should be the default for best performance, * but this allows it to be forced off for testing. */ -static int i40e_enable_msix = 1; -TUNABLE_INT("hw.i40e.enable_msix", &i40e_enable_msix); +static int ixl_enable_msix = 1; +TUNABLE_INT("hw.ixl.enable_msix", &ixl_enable_msix); +SYSCTL_INT(_hw_ixl, OID_AUTO, enable_msix, CTLFLAG_RDTUN, &ixl_enable_msix, 0, + "Enable MSI-X interrupts"); /* ** Number of descriptors per ring: ** - TX and RX are the same size */ -static int i40e_ringsz = DEFAULT_RING; -TUNABLE_INT("hw.i40e.ringsz", &i40e_ringsz); +static int ixl_ringsz = DEFAULT_RING; +TUNABLE_INT("hw.ixl.ringsz", &ixl_ringsz); +SYSCTL_INT(_hw_ixl, OID_AUTO, ring_size, CTLFLAG_RDTUN, + &ixl_ringsz, 0, "Descriptor Ring Size"); /* ** This can be set manually, if left as 0 the ** number of queues will be calculated based ** on cpus and msix vectors available. */ -int i40e_max_queues = 0; -TUNABLE_INT("hw.i40e.max_queues", &i40e_max_queues); +int ixl_max_queues = 0; +TUNABLE_INT("hw.ixl.max_queues", &ixl_max_queues); +SYSCTL_INT(_hw_ixl, OID_AUTO, max_queues, CTLFLAG_RDTUN, + &ixl_max_queues, 0, "Number of Queues"); /* ** Controls for Interrupt Throttling ** - true/false for dynamic adjustment ** - default values for static ITR */ -int i40e_dynamic_rx_itr = 0; -TUNABLE_INT("hw.i40e.dynamic_rx_itr", &i40e_dynamic_rx_itr); -int i40e_dynamic_tx_itr = 0; -TUNABLE_INT("hw.i40e.dynamic_tx_itr", &i40e_dynamic_tx_itr); - -int i40e_rx_itr = I40E_ITR_8K; -TUNABLE_INT("hw.i40e.rx_itr", &i40e_rx_itr); -int i40e_tx_itr = I40E_ITR_4K; -TUNABLE_INT("hw.i40e.tx_itr", &i40e_tx_itr); - -#ifdef I40E_FDIR -static int i40e_enable_fdir = 1; -TUNABLE_INT("hw.i40e.enable_fdir", &i40e_enable_fdir); +int ixl_dynamic_rx_itr = 0; +TUNABLE_INT("hw.ixl.dynamic_rx_itr", &ixl_dynamic_rx_itr); +SYSCTL_INT(_hw_ixl, OID_AUTO, dynamic_rx_itr, CTLFLAG_RDTUN, + &ixl_dynamic_rx_itr, 0, "Dynamic RX Interrupt Rate"); + +int ixl_dynamic_tx_itr = 0; +TUNABLE_INT("hw.ixl.dynamic_tx_itr", &ixl_dynamic_tx_itr); +SYSCTL_INT(_hw_ixl, OID_AUTO, dynamic_tx_itr, CTLFLAG_RDTUN, + &ixl_dynamic_tx_itr, 0, "Dynamic TX Interrupt Rate"); + +int ixl_rx_itr = IXL_ITR_8K; +TUNABLE_INT("hw.ixl.rx_itr", &ixl_rx_itr); +SYSCTL_INT(_hw_ixl, OID_AUTO, rx_itr, CTLFLAG_RDTUN, + &ixl_rx_itr, 0, "RX Interrupt Rate"); + +int ixl_tx_itr = IXL_ITR_4K; +TUNABLE_INT("hw.ixl.tx_itr", &ixl_tx_itr); +SYSCTL_INT(_hw_ixl, OID_AUTO, tx_itr, CTLFLAG_RDTUN, + &ixl_tx_itr, 0, "TX Interrupt Rate"); + +#ifdef IXL_FDIR +static int ixl_enable_fdir = 1; +TUNABLE_INT("hw.ixl.enable_fdir", &ixl_enable_fdir); /* Rate at which we sample */ -int i40e_atr_rate = 20; -TUNABLE_INT("hw.i40e.atr_rate", &i40e_atr_rate); +int ixl_atr_rate = 20; +TUNABLE_INT("hw.ixl.atr_rate", &ixl_atr_rate); #endif +#ifdef DEV_NETMAP +#include <dev/netmap/if_ixl_netmap.h> +#endif /* DEV_NETMAP */ -static char *i40e_fc_string[6] = { +static char *ixl_fc_string[6] = { "None", "Rx", "Tx", @@ -268,23 +293,23 @@ static char *i40e_fc_string[6] = { /********************************************************************* * Device identification routine * - * i40e_probe determines if the driver should be loaded on + * ixl_probe determines if the driver should be loaded on * the hardware based on PCI vendor/device id of the device. * * return BUS_PROBE_DEFAULT on success, positive on failure *********************************************************************/ static int -i40e_probe(device_t dev) +ixl_probe(device_t dev) { - i40e_vendor_info_t *ent; + ixl_vendor_info_t *ent; u16 pci_vendor_id, pci_device_id; u16 pci_subvendor_id, pci_subdevice_id; char device_name[256]; static bool lock_init = FALSE; - INIT_DEBUGOUT("i40e_probe: begin"); + INIT_DEBUGOUT("ixl_probe: begin"); pci_vendor_id = pci_get_vendor(dev); if (pci_vendor_id != I40E_INTEL_VENDOR_ID) @@ -294,7 +319,7 @@ i40e_probe(device_t dev) pci_subvendor_id = pci_get_subvendor(dev); pci_subdevice_id = pci_get_subdevice(dev); - ent = i40e_vendor_info_array; + ent = ixl_vendor_info_array; while (ent->vendor_id != 0) { if ((pci_vendor_id == ent->vendor_id) && (pci_device_id == ent->device_id) && @@ -305,15 +330,15 @@ i40e_probe(device_t dev) ((pci_subdevice_id == ent->subdevice_id) || (ent->subdevice_id == 0))) { sprintf(device_name, "%s, Version - %s", - i40e_strings[ent->index], - i40e_driver_version); + ixl_strings[ent->index], + ixl_driver_version); device_set_desc_copy(dev, device_name); /* One shot mutex init */ if (lock_init == FALSE) { lock_init = TRUE; - mtx_init(&i40e_reset_mtx, - "i40e_reset", - "I40E RESET Lock", MTX_DEF); + mtx_init(&ixl_reset_mtx, + "ixl_reset", + "IXL RESET Lock", MTX_DEF); } return (BUS_PROBE_DEFAULT); } @@ -333,15 +358,15 @@ i40e_probe(device_t dev) *********************************************************************/ static int -i40e_attach(device_t dev) +ixl_attach(device_t dev) { - struct i40e_pf *pf; + struct ixl_pf *pf; struct i40e_hw *hw; - struct i40e_vsi *vsi; + struct ixl_vsi *vsi; u16 bus; int error = 0; - INIT_DEBUGOUT("i40e_attach: begin"); + INIT_DEBUGOUT("ixl_attach: begin"); /* Allocate, clear, and link in our primary soft structure */ pf = device_get_softc(dev); @@ -356,7 +381,7 @@ i40e_attach(device_t dev) vsi->dev = pf->dev; /* Core Lock Init*/ - I40E_PF_LOCK_INIT(pf, device_get_nameunit(dev)); + IXL_PF_LOCK_INIT(pf, device_get_nameunit(dev)); /* Set up the timer callout */ callout_init_mtx(&pf->timer, &pf->pf_mtx, 0); @@ -365,58 +390,63 @@ i40e_attach(device_t dev) SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "fc", CTLTYPE_INT | CTLFLAG_RW, - pf, 0, i40e_set_flowcntl, "I", "Flow Control"); + pf, 0, ixl_set_flowcntl, "I", "Flow Control"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "advertise_speed", CTLTYPE_INT | CTLFLAG_RW, - pf, 0, i40e_set_advertise, "I", "Advertised Speed"); + pf, 0, ixl_set_advertise, "I", "Advertised Speed"); + + SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), + SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), + OID_AUTO, "current_speed", CTLTYPE_STRING | CTLFLAG_RD, + pf, 0, ixl_current_speed, "A", "Current Port Speed"); SYSCTL_ADD_INT(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "rx_itr", CTLTYPE_INT | CTLFLAG_RW, - &i40e_rx_itr, I40E_ITR_8K, "RX ITR"); + &ixl_rx_itr, IXL_ITR_8K, "RX ITR"); SYSCTL_ADD_INT(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "dynamic_rx_itr", CTLTYPE_INT | CTLFLAG_RW, - &i40e_dynamic_rx_itr, 0, "Dynamic RX ITR"); + &ixl_dynamic_rx_itr, 0, "Dynamic RX ITR"); SYSCTL_ADD_INT(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "tx_itr", CTLTYPE_INT | CTLFLAG_RW, - &i40e_tx_itr, I40E_ITR_4K, "TX ITR"); + &ixl_tx_itr, IXL_ITR_4K, "TX ITR"); SYSCTL_ADD_INT(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "dynamic_tx_itr", CTLTYPE_INT | CTLFLAG_RW, - &i40e_dynamic_tx_itr, 0, "Dynamic TX ITR"); + &ixl_dynamic_tx_itr, 0, "Dynamic TX ITR"); -#ifdef I40E_DEBUG +#ifdef IXL_DEBUG SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "link_status", CTLTYPE_STRING | CTLFLAG_RD, - pf, 0, i40e_sysctl_link_status, "A", "Current Link Status"); + pf, 0, ixl_sysctl_link_status, "A", "Current Link Status"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "phy_abilities", CTLTYPE_STRING | CTLFLAG_RD, - pf, 0, i40e_sysctl_phy_abilities, "A", "PHY Abilities"); + pf, 0, ixl_sysctl_phy_abilities, "A", "PHY Abilities"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "filter_list", CTLTYPE_STRING | CTLFLAG_RD, - pf, 0, i40e_sysctl_sw_filter_list, "A", "SW Filter List"); + pf, 0, ixl_sysctl_sw_filter_list, "A", "SW Filter List"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "hw_res_info", CTLTYPE_STRING | CTLFLAG_RD, - pf, 0, i40e_sysctl_hw_res_info, "A", "HW Resource Allocation"); + pf, 0, ixl_sysctl_hw_res_info, "A", "HW Resource Allocation"); SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "dump_desc", CTLTYPE_INT | CTLFLAG_WR, - pf, 0, i40e_sysctl_dump_txd, "I", "Desc dump"); + pf, 0, ixl_sysctl_dump_txd, "I", "Desc dump"); #endif /* Save off the information about this board */ @@ -432,7 +462,7 @@ i40e_attach(device_t dev) hw->bus.func = pci_get_function(dev); /* Do PCI setup - map BAR0, etc */ - if (i40e_allocate_pci_resources(pf)) { + if (ixl_allocate_pci_resources(pf)) { device_printf(dev, "Allocation of PCI resources failed\n"); error = ENXIO; goto err_out; @@ -442,7 +472,7 @@ i40e_attach(device_t dev) SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), OID_AUTO, "debug", CTLTYPE_INT|CTLFLAG_RW, pf, 0, - i40e_debug_info, "I", "Debug Information"); + ixl_debug_info, "I", "Debug Information"); /* Establish a clean starting point */ @@ -456,29 +486,29 @@ i40e_attach(device_t dev) /* For now always do an initial CORE reset on first device */ { - static int i40e_dev_count; - static int i40e_dev_track[32]; + static int ixl_dev_count; + static int ixl_dev_track[32]; u32 my_dev; int i, found = FALSE; u16 bus = pci_get_bus(dev); - mtx_lock(&i40e_reset_mtx); + mtx_lock(&ixl_reset_mtx); my_dev = (bus << 8) | hw->bus.device; - for (i = 0; i < i40e_dev_count; i++) { - if (i40e_dev_track[i] == my_dev) + for (i = 0; i < ixl_dev_count; i++) { + if (ixl_dev_track[i] == my_dev) found = TRUE; } if (!found) { u32 reg; - i40e_dev_track[i40e_dev_count] = my_dev; - i40e_dev_count++; + ixl_dev_track[ixl_dev_count] = my_dev; + ixl_dev_count++; - device_printf(dev, "Initial CORE RESET\n"); + INIT_DEBUGOUT("Initial CORE RESET\n"); wr32(hw, I40E_GLGEN_RTRIG, I40E_GLGEN_RTRIG_CORER_MASK); - i40e_flush(hw); + ixl_flush(hw); i = 50; do { i40e_msec_delay(50); @@ -493,14 +523,14 @@ i40e_attach(device_t dev) wr32(hw, I40E_PF_ATQBAH, 0); i40e_clear_pxe_mode(hw); } - mtx_unlock(&i40e_reset_mtx); + mtx_unlock(&ixl_reset_mtx); } /* Set admin queue parameters */ - hw->aq.num_arq_entries = I40E_AQ_LEN; - hw->aq.num_asq_entries = I40E_AQ_LEN; - hw->aq.arq_buf_size = I40E_AQ_BUFSZ; - hw->aq.asq_buf_size = I40E_AQ_BUFSZ; + hw->aq.num_arq_entries = IXL_AQ_LEN; + hw->aq.num_asq_entries = IXL_AQ_LEN; + hw->aq.arq_buf_size = IXL_AQ_BUFSZ; + hw->aq.asq_buf_size = IXL_AQ_BUFSZ; /* Initialize the shared code */ error = i40e_init_shared_code(hw); @@ -519,7 +549,7 @@ i40e_attach(device_t dev) " the network driver.\n"); goto err_out; } - device_printf(dev, "%s\n", i40e_fw_version_str(hw)); + device_printf(dev, "%s\n", ixl_fw_version_str(hw)); if (hw->aq.api_maj_ver == I40E_FW_API_VERSION_MAJOR && hw->aq.api_min_ver > I40E_FW_API_VERSION_MINOR) @@ -536,7 +566,7 @@ i40e_attach(device_t dev) i40e_clear_pxe_mode(hw); /* Get capabilities from the device */ - error = i40e_get_hw_capabilities(pf); + error = ixl_get_hw_capabilities(pf); if (error) { device_printf(dev, "HW capabilities failure!\n"); goto err_get_cap; @@ -567,7 +597,7 @@ i40e_attach(device_t dev) bcopy(hw->mac.addr, hw->mac.perm_addr, ETHER_ADDR_LEN); i40e_get_port_mac_addr(hw, hw->mac.port_addr); - if (i40e_setup_stations(pf) != 0) { + if (ixl_setup_stations(pf) != 0) { device_printf(dev, "setup stations failed!\n"); error = ENOMEM; goto err_mac_hmc; @@ -578,14 +608,21 @@ i40e_attach(device_t dev) /* Set up interrupt routing here */ if (pf->msix > 1) - error = i40e_assign_vsi_msix(pf); + error = ixl_assign_vsi_msix(pf); else - error = i40e_assign_vsi_legacy(pf); + error = ixl_assign_vsi_legacy(pf); if (error) goto err_late; + i40e_msec_delay(75); + error = i40e_aq_set_link_restart_an(hw, TRUE, NULL); + if (error) { + device_printf(dev, "link restart failed, aq_err=%d\n", + pf->hw.aq.asq_last_status); + } + /* Determine link state */ - vsi->link_up = i40e_config_link(hw); + vsi->link_up = ixl_config_link(hw); /* Report if Unqualified modules are found */ if ((vsi->link_up == FALSE) && @@ -597,30 +634,33 @@ i40e_attach(device_t dev) "an unqualified module was detected\n"); /* Setup OS specific network interface */ - if (i40e_setup_interface(dev, vsi) != 0) + if (ixl_setup_interface(dev, vsi) != 0) goto err_late; /* Get the bus configuration and set the shared code */ - bus = i40e_get_bus_info(hw, dev); + bus = ixl_get_bus_info(hw, dev); i40e_set_pci_config_data(hw, bus); /* Initialize statistics */ - i40e_pf_reset_stats(pf); - i40e_update_stats_counters(pf); - i40e_add_hw_stats(pf); + ixl_pf_reset_stats(pf); + ixl_update_stats_counters(pf); + ixl_add_hw_stats(pf); /* Register for VLAN events */ vsi->vlan_attach = EVENTHANDLER_REGISTER(vlan_config, - i40e_register_vlan, vsi, EVENTHANDLER_PRI_FIRST); + ixl_register_vlan, vsi, EVENTHANDLER_PRI_FIRST); vsi->vlan_detach = EVENTHANDLER_REGISTER(vlan_unconfig, - i40e_unregister_vlan, vsi, EVENTHANDLER_PRI_FIRST); + ixl_unregister_vlan, vsi, EVENTHANDLER_PRI_FIRST); +#ifdef DEV_NETMAP + ixl_netmap_attach(pf); +#endif /* DEV_NETMAP */ - INIT_DEBUGOUT("i40e_attach: end"); + INIT_DEBUGOUT("ixl_attach: end"); return (0); err_late: - i40e_free_vsi(vsi); + ixl_free_vsi(vsi); err_mac_hmc: i40e_shutdown_lan_hmc(hw); err_get_cap: @@ -628,8 +668,8 @@ err_get_cap: err_out: if (vsi->ifp != NULL) if_free(vsi->ifp); - i40e_free_pci_resources(pf); - I40E_PF_LOCK_DESTROY(pf); + ixl_free_pci_resources(pf); + IXL_PF_LOCK_DESTROY(pf); return (error); } @@ -644,16 +684,15 @@ err_out: *********************************************************************/ static int -i40e_detach(device_t dev) +ixl_detach(device_t dev) { - struct i40e_pf *pf = device_get_softc(dev); + struct ixl_pf *pf = device_get_softc(dev); struct i40e_hw *hw = &pf->hw; - struct i40e_vsi *vsi = &pf->vsi; - struct i40e_queue *que = vsi->queues; + struct ixl_vsi *vsi = &pf->vsi; + struct ixl_queue *que = vsi->queues; i40e_status status; - u32 reg; - INIT_DEBUGOUT("i40e_detach: begin"); + INIT_DEBUGOUT("ixl_detach: begin"); /* Make sure VLANS are not using driver */ if (vsi->ifp->if_vlantrunk != NULL) { @@ -661,9 +700,9 @@ i40e_detach(device_t dev) return (EBUSY); } - I40E_PF_LOCK(pf); - i40e_stop(pf); - I40E_PF_UNLOCK(pf); + IXL_PF_LOCK(pf); + ixl_stop(pf); + IXL_PF_UNLOCK(pf); for (int i = 0; i < vsi->num_queues; i++, que++) { if (que->tq) { @@ -673,8 +712,6 @@ i40e_detach(device_t dev) } } - /* Drain other tasks here */ - /* Shutdown LAN HMC */ status = i40e_shutdown_lan_hmc(hw); if (status) @@ -687,13 +724,6 @@ i40e_detach(device_t dev) device_printf(dev, "Shutdown Admin queue failed with code %d\n", status); - /* Now force a pf reset */ - reg = rd32(hw, I40E_PFGEN_CTRL); - reg |= I40E_PFGEN_CTRL_PFSWR_MASK; - wr32(hw, I40E_PFGEN_CTRL, reg); - //i40e_pf_reset(hw); - i40e_flush(hw); - /* Unregister VLAN events */ if (vsi->vlan_attach != NULL) EVENTHANDLER_DEREGISTER(vlan_config, vsi->vlan_attach); @@ -703,12 +733,15 @@ i40e_detach(device_t dev) ether_ifdetach(vsi->ifp); callout_drain(&pf->timer); +#ifdef DEV_NETMAP + netmap_detach(vsi->ifp); +#endif /* DEV_NETMAP */ - i40e_free_pci_resources(pf); + ixl_free_pci_resources(pf); bus_generic_detach(dev); if_free(vsi->ifp); - i40e_free_vsi(vsi); - I40E_PF_LOCK_DESTROY(pf); + ixl_free_vsi(vsi); + IXL_PF_LOCK_DESTROY(pf); return (0); } @@ -719,12 +752,12 @@ i40e_detach(device_t dev) **********************************************************************/ static int -i40e_shutdown(device_t dev) +ixl_shutdown(device_t dev) { - struct i40e_pf *pf = device_get_softc(dev); - I40E_PF_LOCK(pf); - i40e_stop(pf); - I40E_PF_UNLOCK(pf); + struct ixl_pf *pf = device_get_softc(dev); + IXL_PF_LOCK(pf); + ixl_stop(pf); + IXL_PF_UNLOCK(pf); return (0); } @@ -736,7 +769,7 @@ i40e_shutdown(device_t dev) **********************************************************************/ static int -i40e_get_hw_capabilities(struct i40e_pf *pf) +ixl_get_hw_capabilities(struct ixl_pf *pf) { struct i40e_aqc_list_capabilities_element_resp *buf; struct i40e_hw *hw = &pf->hw; @@ -772,7 +805,7 @@ retry: /* Capture this PF's starting queue pair */ pf->qbase = hw->func_caps.base_queue; -#ifdef I40E_DEBUG +#ifdef IXL_DEBUG device_printf(dev,"pf_id=%d, num_vfs=%d, msix_pf=%d, " "msix_vf=%d, fd_g=%d, fd_b=%d, tx_qp=%d rx_qp=%d qbase=%d\n", hw->pf_id, hw->func_caps.num_vfs, @@ -788,7 +821,7 @@ retry: } static void -i40e_cap_txcsum_tso(struct i40e_vsi *vsi, struct ifnet *ifp, int mask) +ixl_cap_txcsum_tso(struct ixl_vsi *vsi, struct ifnet *ifp, int mask) { device_t dev = vsi->dev; @@ -798,14 +831,14 @@ i40e_cap_txcsum_tso(struct i40e_vsi *vsi, struct ifnet *ifp, int mask) if (mask & IFCAP_TXCSUM) { ifp->if_capenable |= IFCAP_TXCSUM; /* enable TXCSUM, restore TSO if previously enabled */ - if (vsi->flags & I40E_FLAGS_KEEP_TSO4) { - vsi->flags &= ~I40E_FLAGS_KEEP_TSO4; + if (vsi->flags & IXL_FLAGS_KEEP_TSO4) { + vsi->flags &= ~IXL_FLAGS_KEEP_TSO4; ifp->if_capenable |= IFCAP_TSO4; } } else if (mask & IFCAP_TSO4) { ifp->if_capenable |= (IFCAP_TXCSUM | IFCAP_TSO4); - vsi->flags &= ~I40E_FLAGS_KEEP_TSO4; + vsi->flags &= ~IXL_FLAGS_KEEP_TSO4; device_printf(dev, "TSO4 requires txcsum, enabling both...\n"); } @@ -818,7 +851,7 @@ i40e_cap_txcsum_tso(struct i40e_vsi *vsi, struct ifnet *ifp, int mask) } else if((ifp->if_capenable & IFCAP_TXCSUM) && (ifp->if_capenable & IFCAP_TSO4)) { if (mask & IFCAP_TXCSUM) { - vsi->flags |= I40E_FLAGS_KEEP_TSO4; + vsi->flags |= IXL_FLAGS_KEEP_TSO4; ifp->if_capenable &= ~(IFCAP_TXCSUM | IFCAP_TSO4); device_printf(dev, "TSO4 requires txcsum, disabling both...\n"); @@ -831,13 +864,13 @@ i40e_cap_txcsum_tso(struct i40e_vsi *vsi, struct ifnet *ifp, int mask) && !(ifp->if_capenable & IFCAP_TSO6)) { if (mask & IFCAP_TXCSUM_IPV6) { ifp->if_capenable |= IFCAP_TXCSUM_IPV6; - if (vsi->flags & I40E_FLAGS_KEEP_TSO6) { - vsi->flags &= ~I40E_FLAGS_KEEP_TSO6; + if (vsi->flags & IXL_FLAGS_KEEP_TSO6) { + vsi->flags &= ~IXL_FLAGS_KEEP_TSO6; ifp->if_capenable |= IFCAP_TSO6; } } else if (mask & IFCAP_TSO6) { ifp->if_capenable |= (IFCAP_TXCSUM_IPV6 | IFCAP_TSO6); - vsi->flags &= ~I40E_FLAGS_KEEP_TSO6; + vsi->flags &= ~IXL_FLAGS_KEEP_TSO6; device_printf(dev, "TSO6 requires txcsum6, enabling both...\n"); } @@ -850,7 +883,7 @@ i40e_cap_txcsum_tso(struct i40e_vsi *vsi, struct ifnet *ifp, int mask) } else if ((ifp->if_capenable & IFCAP_TXCSUM_IPV6) && (ifp->if_capenable & IFCAP_TSO6)) { if (mask & IFCAP_TXCSUM_IPV6) { - vsi->flags |= I40E_FLAGS_KEEP_TSO6; + vsi->flags |= IXL_FLAGS_KEEP_TSO6; ifp->if_capenable &= ~(IFCAP_TXCSUM_IPV6 | IFCAP_TSO6); device_printf(dev, "TSO6 requires txcsum6, disabling both...\n"); @@ -862,17 +895,17 @@ i40e_cap_txcsum_tso(struct i40e_vsi *vsi, struct ifnet *ifp, int mask) /********************************************************************* * Ioctl entry point * - * i40e_ioctl is called when the user wants to configure the + * ixl_ioctl is called when the user wants to configure the * interface. * * return 0 on success, positive on failure **********************************************************************/ static int -i40e_ioctl(struct ifnet * ifp, u_long command, caddr_t data) +ixl_ioctl(struct ifnet * ifp, u_long command, caddr_t data) { - struct i40e_vsi *vsi = ifp->if_softc; - struct i40e_pf *pf = (struct i40e_pf *)vsi->back; + struct ixl_vsi *vsi = ifp->if_softc; + struct ixl_pf *pf = (struct ixl_pf *)vsi->back; struct ifreq *ifr = (struct ifreq *) data; #if defined(INET) || defined(INET6) struct ifaddr *ifa = (struct ifaddr *)data; @@ -899,7 +932,7 @@ i40e_ioctl(struct ifnet * ifp, u_long command, caddr_t data) if (avoid_reset) { ifp->if_flags |= IFF_UP; if (!(ifp->if_drv_flags & IFF_DRV_RUNNING)) - i40e_init(pf); + ixl_init(pf); if (!(ifp->if_flags & IFF_NOARP)) arp_ifinit(ifp, ifa); } else @@ -908,54 +941,54 @@ i40e_ioctl(struct ifnet * ifp, u_long command, caddr_t data) #endif case SIOCSIFMTU: IOCTL_DEBUGOUT("ioctl: SIOCSIFMTU (Set Interface MTU)"); - if (ifr->ifr_mtu > I40E_MAX_FRAME - + if (ifr->ifr_mtu > IXL_MAX_FRAME - ETHER_HDR_LEN - ETHER_CRC_LEN - ETHER_VLAN_ENCAP_LEN) { error = EINVAL; } else { - I40E_PF_LOCK(pf); + IXL_PF_LOCK(pf); ifp->if_mtu = ifr->ifr_mtu; vsi->max_frame_size = ifp->if_mtu + ETHER_HDR_LEN + ETHER_CRC_LEN + ETHER_VLAN_ENCAP_LEN; - i40e_init_locked(pf); - I40E_PF_UNLOCK(pf); + ixl_init_locked(pf); + IXL_PF_UNLOCK(pf); } break; case SIOCSIFFLAGS: IOCTL_DEBUGOUT("ioctl: SIOCSIFFLAGS (Set Interface Flags)"); - I40E_PF_LOCK(pf); + IXL_PF_LOCK(pf); if (ifp->if_flags & IFF_UP) { if ((ifp->if_drv_flags & IFF_DRV_RUNNING)) { if ((ifp->if_flags ^ pf->if_flags) & (IFF_PROMISC | IFF_ALLMULTI)) { - i40e_set_promisc(vsi); + ixl_set_promisc(vsi); } } else - i40e_init_locked(pf); + ixl_init_locked(pf); } else if (ifp->if_drv_flags & IFF_DRV_RUNNING) - i40e_stop(pf); + ixl_stop(pf); pf->if_flags = ifp->if_flags; - I40E_PF_UNLOCK(pf); + IXL_PF_UNLOCK(pf); break; case SIOCADDMULTI: IOCTL_DEBUGOUT("ioctl: SIOCADDMULTI"); if (ifp->if_drv_flags & IFF_DRV_RUNNING) { - I40E_PF_LOCK(pf); - i40e_disable_intr(vsi); - i40e_add_multi(vsi); - i40e_enable_intr(vsi); - I40E_PF_UNLOCK(pf); + IXL_PF_LOCK(pf); + ixl_disable_intr(vsi); + ixl_add_multi(vsi); + ixl_enable_intr(vsi); + IXL_PF_UNLOCK(pf); } break; case SIOCDELMULTI: IOCTL_DEBUGOUT("ioctl: SIOCDELMULTI"); if (ifp->if_drv_flags & IFF_DRV_RUNNING) { - I40E_PF_LOCK(pf); - i40e_disable_intr(vsi); - i40e_del_multi(vsi); - i40e_enable_intr(vsi); - I40E_PF_UNLOCK(pf); + IXL_PF_LOCK(pf); + ixl_disable_intr(vsi); + ixl_del_multi(vsi); + ixl_enable_intr(vsi); + IXL_PF_UNLOCK(pf); } break; case SIOCSIFMEDIA: @@ -968,7 +1001,7 @@ i40e_ioctl(struct ifnet * ifp, u_long command, caddr_t data) int mask = ifr->ifr_reqcap ^ ifp->if_capenable; IOCTL_DEBUGOUT("ioctl: SIOCSIFCAP (Set Capabilities)"); - i40e_cap_txcsum_tso(vsi, ifp, mask); + ixl_cap_txcsum_tso(vsi, ifp, mask); if (mask & IFCAP_RXCSUM) ifp->if_capenable ^= IFCAP_RXCSUM; @@ -983,9 +1016,9 @@ i40e_ioctl(struct ifnet * ifp, u_long command, caddr_t data) if (mask & IFCAP_VLAN_HWTSO) ifp->if_capenable ^= IFCAP_VLAN_HWTSO; if (ifp->if_drv_flags & IFF_DRV_RUNNING) { - I40E_PF_LOCK(pf); - i40e_init_locked(pf); - I40E_PF_UNLOCK(pf); + IXL_PF_LOCK(pf); + ixl_init_locked(pf); + IXL_PF_UNLOCK(pf); } VLAN_CAPABILITIES(ifp); @@ -993,7 +1026,7 @@ i40e_ioctl(struct ifnet * ifp, u_long command, caddr_t data) } default: - IOCTL_DEBUGOUT1("ioctl: UNKNOWN (0x%X)\n", (int)command); + IOCTL_DEBUGOUT("ioctl: UNKNOWN (0x%X)\n", (int)command); error = ether_ioctl(ifp, command, data); break; } @@ -1014,10 +1047,10 @@ i40e_ioctl(struct ifnet * ifp, u_long command, caddr_t data) **********************************************************************/ static void -i40e_init_locked(struct i40e_pf *pf) +ixl_init_locked(struct ixl_pf *pf) { struct i40e_hw *hw = &pf->hw; - struct i40e_vsi *vsi = &pf->vsi; + struct ixl_vsi *vsi = &pf->vsi; struct ifnet *ifp = vsi->ifp; device_t dev = pf->dev; struct i40e_filter_control_settings filter; @@ -1025,8 +1058,8 @@ i40e_init_locked(struct i40e_pf *pf) int ret; mtx_assert(&pf->pf_mtx, MA_OWNED); - INIT_DEBUGOUT("i40e_init: begin"); - i40e_stop(pf); + INIT_DEBUGOUT("ixl_init: begin"); + ixl_stop(pf); /* Get the latest mac address... User might use a LAA */ bcopy(IF_LLADDR(vsi->ifp), tmpaddr, @@ -1058,63 +1091,56 @@ i40e_init_locked(struct i40e_pf *pf) bzero(&filter, sizeof(filter)); filter.enable_ethtype = TRUE; filter.enable_macvlan = TRUE; -#ifdef I40E_FDIR +#ifdef IXL_FDIR filter.enable_fdir = TRUE; #endif if (i40e_set_filter_control(hw, &filter)) device_printf(dev, "set_filter_control() failed\n"); /* Set up RSS */ - i40e_config_rss(vsi); + ixl_config_rss(vsi); /* Setup the VSI */ - i40e_setup_vsi(vsi); + ixl_setup_vsi(vsi); /* ** Prepare the rings, hmc contexts, etc... */ - if (i40e_initialize_vsi(vsi)) { - device_printf(dev,"initialize vsi failed!!\n"); + if (ixl_initialize_vsi(vsi)) { + device_printf(dev, "initialize vsi failed!!\n"); return; } /* Add protocol filters to list */ - i40e_init_filters(vsi); + ixl_init_filters(vsi); /* Setup vlan's if needed */ - i40e_setup_vlan_filters(vsi); + ixl_setup_vlan_filters(vsi); /* Start the local timer */ - callout_reset(&pf->timer, hz, i40e_local_timer, pf); + callout_reset(&pf->timer, hz, ixl_local_timer, pf); /* Set up MSI/X routing and the ITR settings */ - if (i40e_enable_msix) { - i40e_configure_msix(pf); - i40e_configure_itr(pf); + if (ixl_enable_msix) { + ixl_configure_msix(pf); + ixl_configure_itr(pf); } else - i40e_configure_legacy(pf); + ixl_configure_legacy(pf); - i40e_enable_rings(vsi); + ixl_enable_rings(vsi); i40e_aq_set_default_vsi(hw, vsi->seid, NULL); - /* Flow control setup */ - /* NOTE: flow control currently doesn't work correctly */ - // i40e_set_fc_mode(pf, I40E_FC_FULL); - /* Set MTU in hardware*/ - if (ifp->if_mtu > ETHERMTU) { - int aq_error = - i40e_aq_set_mac_config(hw, vsi->max_frame_size, - TRUE, 0, NULL); - if (aq_error) - device_printf(vsi->dev, - "aq_set_mac_config in init error, code %d\n", - aq_error); - } + int aq_error = i40e_aq_set_mac_config(hw, vsi->max_frame_size, + TRUE, 0, NULL); + if (aq_error) + device_printf(vsi->dev, + "aq_set_mac_config in init error, code %d\n", + aq_error); /* And now turn on interrupts */ - i40e_enable_intr(vsi); + ixl_enable_intr(vsi); /* Now inform the stack we're ready */ ifp->if_drv_flags |= IFF_DRV_RUNNING; @@ -1124,13 +1150,13 @@ i40e_init_locked(struct i40e_pf *pf) } static void -i40e_init(void *arg) +ixl_init(void *arg) { - struct i40e_pf *pf = arg; + struct ixl_pf *pf = arg; - I40E_PF_LOCK(pf); - i40e_init_locked(pf); - I40E_PF_UNLOCK(pf); + IXL_PF_LOCK(pf); + ixl_init_locked(pf); + IXL_PF_UNLOCK(pf); return; } @@ -1140,22 +1166,22 @@ i40e_init(void *arg) ** */ static void -i40e_handle_que(void *context, int pending) +ixl_handle_que(void *context, int pending) { - struct i40e_queue *que = context; - struct i40e_vsi *vsi = que->vsi; + struct ixl_queue *que = context; + struct ixl_vsi *vsi = que->vsi; struct i40e_hw *hw = vsi->hw; struct tx_ring *txr = &que->txr; struct ifnet *ifp = vsi->ifp; bool more; if (ifp->if_drv_flags & IFF_DRV_RUNNING) { - more = i40e_rxeof(que, I40E_RX_LIMIT); - I40E_TX_LOCK(txr); - i40e_txeof(que); + more = ixl_rxeof(que, IXL_RX_LIMIT); + IXL_TX_LOCK(txr); + ixl_txeof(que); if (!drbr_empty(ifp, txr->br)) - i40e_mq_start_locked(ifp, txr); - I40E_TX_UNLOCK(txr); + ixl_mq_start_locked(ifp, txr); + IXL_TX_UNLOCK(txr); if (more) { taskqueue_enqueue(que->tq, &que->task); return; @@ -1163,7 +1189,7 @@ i40e_handle_que(void *context, int pending) } /* Reenable this interrupt - hmmm */ - i40e_enable_queue(hw, que->me); + ixl_enable_queue(hw, que->me); return; } @@ -1174,12 +1200,12 @@ i40e_handle_que(void *context, int pending) * **********************************************************************/ void -i40e_intr(void *arg) +ixl_intr(void *arg) { - struct i40e_pf *pf = arg; + struct ixl_pf *pf = arg; struct i40e_hw *hw = &pf->hw; - struct i40e_vsi *vsi = &pf->vsi; - struct i40e_queue *que = vsi->queues; + struct ixl_vsi *vsi = &pf->vsi; + struct ixl_queue *que = vsi->queues; struct ifnet *ifp = vsi->ifp; struct tx_ring *txr = &que->txr; u32 reg, icr0, mask; @@ -1204,13 +1230,13 @@ i40e_intr(void *arg) return; } - more_rx = i40e_rxeof(que, I40E_RX_LIMIT); + more_rx = ixl_rxeof(que, IXL_RX_LIMIT); - I40E_TX_LOCK(txr); - more_tx = i40e_txeof(que); + IXL_TX_LOCK(txr); + more_tx = ixl_txeof(que); if (!drbr_empty(vsi->ifp, txr->br)) more_tx = 1; - I40E_TX_UNLOCK(txr); + IXL_TX_UNLOCK(txr); /* re-enable other interrupt causes */ wr32(hw, I40E_PFINT_ICR0_ENA, mask); @@ -1225,7 +1251,7 @@ i40e_intr(void *arg) reg &= ~I40E_PFINT_ICR0_INTEVENT_MASK; wr32(hw, I40E_QINT_TQCTL(0), reg); - i40e_enable_legacy(hw); + ixl_enable_legacy(hw); return; } @@ -1237,10 +1263,10 @@ i40e_intr(void *arg) * **********************************************************************/ void -i40e_msix_que(void *arg) +ixl_msix_que(void *arg) { - struct i40e_queue *que = arg; - struct i40e_vsi *vsi = que->vsi; + struct ixl_queue *que = arg; + struct ixl_vsi *vsi = que->vsi; struct i40e_hw *hw = vsi->hw; struct tx_ring *txr = &que->txr; bool more_tx, more_rx; @@ -1251,10 +1277,10 @@ i40e_msix_que(void *arg) ++que->irqs; - more_rx = i40e_rxeof(que, I40E_RX_LIMIT); + more_rx = ixl_rxeof(que, IXL_RX_LIMIT); - I40E_TX_LOCK(txr); - more_tx = i40e_txeof(que); + IXL_TX_LOCK(txr); + more_tx = ixl_txeof(que); /* ** Make certain that if the stack ** has anything queued the task gets @@ -1262,15 +1288,15 @@ i40e_msix_que(void *arg) */ if (!drbr_empty(vsi->ifp, txr->br)) more_tx = 1; - I40E_TX_UNLOCK(txr); + IXL_TX_UNLOCK(txr); - i40e_set_queue_rx_itr(que); - i40e_set_queue_tx_itr(que); + ixl_set_queue_rx_itr(que); + ixl_set_queue_tx_itr(que); if (more_tx || more_rx) taskqueue_enqueue(que->tq, &que->task); else - i40e_enable_queue(hw, que->me); + ixl_enable_queue(hw, que->me); return; } @@ -1282,9 +1308,9 @@ i40e_msix_que(void *arg) * **********************************************************************/ static void -i40e_msix_adminq(void *arg) +ixl_msix_adminq(void *arg) { - struct i40e_pf *pf = arg; + struct ixl_pf *pf = arg; struct i40e_hw *hw = &pf->hw; u32 reg, mask; @@ -1298,7 +1324,7 @@ i40e_msix_adminq(void *arg) mask &= ~I40E_PFINT_ICR0_ENA_ADMINQ_MASK; if (reg & I40E_PFINT_ICR0_MAL_DETECT_MASK) { - i40e_handle_mdd_event(pf); + ixl_handle_mdd_event(pf); mask &= ~I40E_PFINT_ICR0_ENA_MAL_DETECT_MASK; } @@ -1322,22 +1348,22 @@ i40e_msix_adminq(void *arg) * **********************************************************************/ static void -i40e_media_status(struct ifnet * ifp, struct ifmediareq * ifmr) +ixl_media_status(struct ifnet * ifp, struct ifmediareq * ifmr) { - struct i40e_vsi *vsi = ifp->if_softc; - struct i40e_pf *pf = (struct i40e_pf *)vsi->back; + struct ixl_vsi *vsi = ifp->if_softc; + struct ixl_pf *pf = (struct ixl_pf *)vsi->back; struct i40e_hw *hw = &pf->hw; - INIT_DEBUGOUT("i40e_media_status: begin"); - I40E_PF_LOCK(pf); + INIT_DEBUGOUT("ixl_media_status: begin"); + IXL_PF_LOCK(pf); - i40e_update_link_status(pf); + ixl_update_link_status(pf); ifmr->ifm_status = IFM_AVALID; ifmr->ifm_active = IFM_ETHER; if (!vsi->link_up) { - I40E_PF_UNLOCK(pf); + IXL_PF_UNLOCK(pf); return; } @@ -1371,6 +1397,9 @@ i40e_media_status(struct ifnet * ifp, struct ifmediareq * ifmr) case I40E_PHY_TYPE_10GBASE_LR: ifmr->ifm_active |= IFM_10G_LR; break; + case I40E_PHY_TYPE_10GBASE_T: + ifmr->ifm_active |= IFM_10G_T; + break; /* 40 G */ case I40E_PHY_TYPE_40GBASE_CR4: case I40E_PHY_TYPE_40GBASE_CR4_CU: @@ -1392,7 +1421,7 @@ i40e_media_status(struct ifnet * ifp, struct ifmediareq * ifmr) if (hw->phy.link_info.an_info & I40E_AQ_LINK_PAUSE_RX) ifmr->ifm_active |= IFM_ETH_RXPAUSE; - I40E_PF_UNLOCK(pf); + IXL_PF_UNLOCK(pf); return; } @@ -1406,12 +1435,12 @@ i40e_media_status(struct ifnet * ifp, struct ifmediareq * ifmr) * **********************************************************************/ static int -i40e_media_change(struct ifnet * ifp) +ixl_media_change(struct ifnet * ifp) { - struct i40e_vsi *vsi = ifp->if_softc; + struct ixl_vsi *vsi = ifp->if_softc; struct ifmedia *ifm = &vsi->media; - INIT_DEBUGOUT("i40e_media_change: begin"); + INIT_DEBUGOUT("ixl_media_change: begin"); if (IFM_TYPE(ifm->ifm_media) != IFM_ETHER) return (EINVAL); @@ -1422,7 +1451,7 @@ i40e_media_change(struct ifnet * ifp) } -#ifdef I40E_FDIR +#ifdef IXL_FDIR /* ** ATR: Application Targetted Receive - creates a filter ** based on TX flow info that will keep the receive @@ -1430,16 +1459,16 @@ i40e_media_change(struct ifnet * ifp) ** implementation this is only available for TCP connections */ void -i40e_atr(struct i40e_queue *que, struct tcphdr *th, int etype) +ixl_atr(struct ixl_queue *que, struct tcphdr *th, int etype) { - struct i40e_vsi *vsi = que->vsi; + struct ixl_vsi *vsi = que->vsi; struct tx_ring *txr = &que->txr; struct i40e_filter_program_desc *FDIR; u32 ptype, dtype; int idx; /* check if ATR is enabled and sample rate */ - if ((!i40e_enable_fdir) || (!txr->atr_rate)) + if ((!ixl_enable_fdir) || (!txr->atr_rate)) return; /* ** We sample all TCP SYN/FIN packets, @@ -1496,7 +1525,7 @@ i40e_atr(struct i40e_queue *que, struct tcphdr *th, int etype) static void -i40e_set_promisc(struct i40e_vsi *vsi) +ixl_set_promisc(struct ixl_vsi *vsi) { struct ifnet *ifp = vsi->ifp; struct i40e_hw *hw = vsi->hw; @@ -1537,14 +1566,14 @@ i40e_set_promisc(struct i40e_vsi *vsi) * *********************************************************************/ static void -i40e_add_multi(struct i40e_vsi *vsi) +ixl_add_multi(struct ixl_vsi *vsi) { struct ifmultiaddr *ifma; struct ifnet *ifp = vsi->ifp; struct i40e_hw *hw = vsi->hw; int mcnt = 0, flags; - IOCTL_DEBUGOUT("i40e_add_multi: begin"); + IOCTL_DEBUGOUT("ixl_add_multi: begin"); if_maddr_rlock(ifp); /* @@ -1560,7 +1589,7 @@ i40e_add_multi(struct i40e_vsi *vsi) if (__predict_false(mcnt >= MAX_MULTICAST_ADDR)) { /* delete existing MC filters */ - i40e_del_hw_filters(vsi, mcnt); + ixl_del_hw_filters(vsi, mcnt); i40e_aq_set_vsi_multicast_promiscuous(hw, vsi->seid, TRUE, NULL); return; @@ -1571,35 +1600,35 @@ i40e_add_multi(struct i40e_vsi *vsi) TAILQ_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { if (ifma->ifma_addr->sa_family != AF_LINK) continue; - i40e_add_mc_filter(vsi, + ixl_add_mc_filter(vsi, (u8*)LLADDR((struct sockaddr_dl *) ifma->ifma_addr)); mcnt++; } if_maddr_runlock(ifp); if (mcnt > 0) { - flags = (I40E_FILTER_ADD | I40E_FILTER_USED | I40E_FILTER_MC); - i40e_add_hw_filters(vsi, flags, mcnt); + flags = (IXL_FILTER_ADD | IXL_FILTER_USED | IXL_FILTER_MC); + ixl_add_hw_filters(vsi, flags, mcnt); } - IOCTL_DEBUGOUT("i40e_add_multi: end"); + IOCTL_DEBUGOUT("ixl_add_multi: end"); return; } static void -i40e_del_multi(struct i40e_vsi *vsi) +ixl_del_multi(struct ixl_vsi *vsi) { struct ifnet *ifp = vsi->ifp; struct ifmultiaddr *ifma; - struct i40e_mac_filter *f; + struct ixl_mac_filter *f; int mcnt = 0; bool match = FALSE; - IOCTL_DEBUGOUT("i40e_del_multi: begin"); + IOCTL_DEBUGOUT("ixl_del_multi: begin"); /* Search for removed multicast addresses */ if_maddr_rlock(ifp); SLIST_FOREACH(f, &vsi->ftl, next) { - if ((f->flags & I40E_FILTER_USED) && (f->flags & I40E_FILTER_MC)) { + if ((f->flags & IXL_FILTER_USED) && (f->flags & IXL_FILTER_MC)) { match = FALSE; TAILQ_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { if (ifma->ifma_addr->sa_family != AF_LINK) @@ -1611,7 +1640,7 @@ i40e_del_multi(struct i40e_vsi *vsi) } } if (match == FALSE) { - f->flags |= I40E_FILTER_DEL; + f->flags |= IXL_FILTER_DEL; mcnt++; } } @@ -1619,7 +1648,7 @@ i40e_del_multi(struct i40e_vsi *vsi) if_maddr_runlock(ifp); if (mcnt > 0) - i40e_del_hw_filters(vsi, mcnt); + ixl_del_hw_filters(vsi, mcnt); } @@ -1632,12 +1661,12 @@ i40e_del_multi(struct i40e_vsi *vsi) **********************************************************************/ static void -i40e_local_timer(void *arg) +ixl_local_timer(void *arg) { - struct i40e_pf *pf = arg; + struct ixl_pf *pf = arg; struct i40e_hw *hw = &pf->hw; - struct i40e_vsi *vsi = &pf->vsi; - struct i40e_queue *que = vsi->queues; + struct ixl_vsi *vsi = &pf->vsi; + struct ixl_queue *que = vsi->queues; device_t dev = pf->dev; int hung = 0; u32 mask; @@ -1648,7 +1677,7 @@ i40e_local_timer(void *arg) taskqueue_enqueue(pf->tq, &pf->adminq); /* Update stats */ - i40e_update_stats_counters(pf); + ixl_update_stats_counters(pf); /* ** Check status of the queues @@ -1665,7 +1694,7 @@ i40e_local_timer(void *arg) ** are uncleaned descriptors it increments busy. If ** we get to 5 we declare it hung. */ - if (que->busy == I40E_QUEUE_HUNG) { + if (que->busy == IXL_QUEUE_HUNG) { ++hung; /* Mark the queue as inactive */ vsi->active_queues &= ~((u64)1 << que->me); @@ -1675,10 +1704,10 @@ i40e_local_timer(void *arg) if ((vsi->active_queues & ((u64)1 << que->me)) == 0) vsi->active_queues |= ((u64)1 << que->me); } - if (que->busy >= I40E_MAX_TX_BUSY) { + if (que->busy >= IXL_MAX_TX_BUSY) { device_printf(dev,"Warning queue %d " "appears to be hung!\n", i); - que->busy = I40E_QUEUE_HUNG; + que->busy = IXL_QUEUE_HUNG; ++hung; } } @@ -1686,12 +1715,12 @@ i40e_local_timer(void *arg) if (hung == vsi->num_queues) goto hung; - callout_reset(&pf->timer, hz, i40e_local_timer, pf); + callout_reset(&pf->timer, hz, ixl_local_timer, pf); return; hung: device_printf(dev, "Local Timer: HANG DETECT - Resetting!!\n"); - i40e_init_locked(pf); + ixl_init_locked(pf); } /* @@ -1700,9 +1729,9 @@ hung: ** a link interrupt. */ static void -i40e_update_link_status(struct i40e_pf *pf) +ixl_update_link_status(struct ixl_pf *pf) { - struct i40e_vsi *vsi = &pf->vsi; + struct ixl_vsi *vsi = &pf->vsi; struct i40e_hw *hw = &pf->hw; struct ifnet *ifp = vsi->ifp; device_t dev = pf->dev; @@ -1717,7 +1746,7 @@ i40e_update_link_status(struct i40e_pf *pf) device_printf(dev,"Link is up %d Gbps %s," " Flow Control: %s\n", ((vsi->link_speed == I40E_LINK_SPEED_40GB)? 40:10), - "Full Duplex", i40e_fc_string[fc]); + "Full Duplex", ixl_fc_string[fc]); } vsi->link_active = TRUE; if_link_state_change(ifp, LINK_STATE_UP); @@ -1742,16 +1771,16 @@ i40e_update_link_status(struct i40e_pf *pf) **********************************************************************/ static void -i40e_stop(struct i40e_pf *pf) +ixl_stop(struct ixl_pf *pf) { - struct i40e_vsi *vsi = &pf->vsi; + struct ixl_vsi *vsi = &pf->vsi; struct ifnet *ifp = vsi->ifp; mtx_assert(&pf->pf_mtx, MA_OWNED); - INIT_DEBUGOUT("i40e_stop: begin\n"); - i40e_disable_intr(vsi); - i40e_disable_rings(vsi); + INIT_DEBUGOUT("ixl_stop: begin\n"); + ixl_disable_intr(vsi); + ixl_disable_rings(vsi); /* Tell the stack that the interface is no longer active */ ifp->if_drv_flags &= ~(IFF_DRV_RUNNING | IFF_DRV_OACTIVE); @@ -1769,11 +1798,11 @@ i40e_stop(struct i40e_pf *pf) * **********************************************************************/ static int -i40e_assign_vsi_legacy(struct i40e_pf *pf) +ixl_assign_vsi_legacy(struct ixl_pf *pf) { device_t dev = pf->dev; - struct i40e_vsi *vsi = &pf->vsi; - struct i40e_queue *que = vsi->queues; + struct ixl_vsi *vsi = &pf->vsi; + struct ixl_queue *que = vsi->queues; int error, rid = 0; if (pf->msix == 1) @@ -1789,21 +1818,21 @@ i40e_assign_vsi_legacy(struct i40e_pf *pf) /* Set the handler function */ error = bus_setup_intr(dev, pf->res, INTR_TYPE_NET | INTR_MPSAFE, NULL, - i40e_intr, pf, &pf->tag); + ixl_intr, pf, &pf->tag); if (error) { pf->res = NULL; device_printf(dev, "Failed to register legacy/msi handler"); return (error); } bus_describe_intr(dev, pf->res, pf->tag, "irq0"); - TASK_INIT(&que->tx_task, 0, i40e_deferred_mq_start, que); - TASK_INIT(&que->task, 0, i40e_handle_que, que); - que->tq = taskqueue_create_fast("i40e_que", M_NOWAIT, + TASK_INIT(&que->tx_task, 0, ixl_deferred_mq_start, que); + TASK_INIT(&que->task, 0, ixl_handle_que, que); + que->tq = taskqueue_create_fast("ixl_que", M_NOWAIT, taskqueue_thread_enqueue, &que->tq); taskqueue_start_threads(&que->tq, 1, PI_NET, "%s que", device_get_nameunit(dev)); - TASK_INIT(&pf->adminq, 0, i40e_do_adminq, pf); - pf->tq = taskqueue_create_fast("i40e_adm", M_NOWAIT, + TASK_INIT(&pf->adminq, 0, ixl_do_adminq, pf); + pf->tq = taskqueue_create_fast("ixl_adm", M_NOWAIT, taskqueue_thread_enqueue, &pf->tq); taskqueue_start_threads(&pf->tq, 1, PI_NET, "%s adminq", device_get_nameunit(dev)); @@ -1818,11 +1847,11 @@ i40e_assign_vsi_legacy(struct i40e_pf *pf) * **********************************************************************/ static int -i40e_assign_vsi_msix(struct i40e_pf *pf) +ixl_assign_vsi_msix(struct ixl_pf *pf) { device_t dev = pf->dev; - struct i40e_vsi *vsi = &pf->vsi; - struct i40e_queue *que = vsi->queues; + struct ixl_vsi *vsi = &pf->vsi; + struct ixl_queue *que = vsi->queues; struct tx_ring *txr; int error, rid, vector = 0; @@ -1838,7 +1867,7 @@ i40e_assign_vsi_msix(struct i40e_pf *pf) /* Set the adminq vector and handler */ error = bus_setup_intr(dev, pf->res, INTR_TYPE_NET | INTR_MPSAFE, NULL, - i40e_msix_adminq, pf, &pf->tag); + ixl_msix_adminq, pf, &pf->tag); if (error) { pf->res = NULL; device_printf(dev, "Failed to register Admin que handler"); @@ -1847,8 +1876,8 @@ i40e_assign_vsi_msix(struct i40e_pf *pf) bus_describe_intr(dev, pf->res, pf->tag, "aq"); pf->admvec = vector; /* Tasklet for Admin Queue */ - TASK_INIT(&pf->adminq, 0, i40e_do_adminq, pf); - pf->tq = taskqueue_create_fast("i40e_adm", M_NOWAIT, + TASK_INIT(&pf->adminq, 0, ixl_do_adminq, pf); + pf->tq = taskqueue_create_fast("ixl_adm", M_NOWAIT, taskqueue_thread_enqueue, &pf->tq); taskqueue_start_threads(&pf->tq, 1, PI_NET, "%s adminq", device_get_nameunit(pf->dev)); @@ -1868,7 +1897,7 @@ i40e_assign_vsi_msix(struct i40e_pf *pf) /* Set the handler function */ error = bus_setup_intr(dev, que->res, INTR_TYPE_NET | INTR_MPSAFE, NULL, - i40e_msix_que, que, &que->tag); + ixl_msix_que, que, &que->tag); if (error) { que->res = NULL; device_printf(dev, "Failed to register que handler"); @@ -1878,9 +1907,9 @@ i40e_assign_vsi_msix(struct i40e_pf *pf) /* Bind the vector to a CPU */ bus_bind_intr(dev, que->res, i); que->msix = vector; - TASK_INIT(&que->tx_task, 0, i40e_deferred_mq_start, que); - TASK_INIT(&que->task, 0, i40e_handle_que, que); - que->tq = taskqueue_create_fast("i40e_que", M_NOWAIT, + TASK_INIT(&que->tx_task, 0, ixl_deferred_mq_start, que); + TASK_INIT(&que->task, 0, ixl_handle_que, que); + que->tq = taskqueue_create_fast("ixl_que", M_NOWAIT, taskqueue_thread_enqueue, &que->tq); taskqueue_start_threads(&que->tq, 1, PI_NET, "%s que", device_get_nameunit(pf->dev)); @@ -1894,13 +1923,13 @@ i40e_assign_vsi_msix(struct i40e_pf *pf) * Allocate MSI/X vectors */ static int -i40e_init_msix(struct i40e_pf *pf) +ixl_init_msix(struct ixl_pf *pf) { device_t dev = pf->dev; int rid, want, vectors, queues, available; /* Override by tuneable */ - if (i40e_enable_msix == 0) + if (ixl_enable_msix == 0) goto msi; /* @@ -1925,7 +1954,7 @@ i40e_init_msix(struct i40e_pf *pf) } /* First try MSI/X */ - rid = PCIR_BAR(I40E_BAR); + rid = PCIR_BAR(IXL_BAR); pf->msix_mem = bus_alloc_resource_any(dev, SYS_RES_MEMORY, &rid, RF_ACTIVE); if (!pf->msix_mem) { @@ -1947,8 +1976,8 @@ i40e_init_msix(struct i40e_pf *pf) queues = (mp_ncpus > (available - 1)) ? (available - 1) : mp_ncpus; /* Override with hardcoded value if sane */ - if ((i40e_max_queues != 0) && (i40e_max_queues <= queues)) - queues = i40e_max_queues; + if ((ixl_max_queues != 0) && (ixl_max_queues <= queues)) + queues = ixl_max_queues; /* ** Want one vector (RX/TX pair) per queue @@ -1976,8 +2005,8 @@ msi: vectors = pci_msi_count(dev); pf->vsi.num_queues = 1; pf->msix = 1; - i40e_max_queues = 1; - i40e_enable_msix = 0; + ixl_max_queues = 1; + ixl_enable_msix = 0; if (vectors == 1 && pci_alloc_msi(dev, &vectors) == 0) device_printf(pf->dev,"Using an MSI interrupt\n"); else { @@ -1992,10 +2021,10 @@ msi: * Plumb MSI/X vectors */ static void -i40e_configure_msix(struct i40e_pf *pf) +ixl_configure_msix(struct ixl_pf *pf) { struct i40e_hw *hw = &pf->hw; - struct i40e_vsi *vsi = &pf->vsi; + struct ixl_vsi *vsi = &pf->vsi; u32 reg; u16 vector = 1; @@ -2013,7 +2042,7 @@ i40e_configure_msix(struct i40e_pf *pf) wr32(hw, I40E_PFINT_ICR0_ENA, reg); wr32(hw, I40E_PFINT_LNKLST0, 0x7FF); - wr32(hw, I40E_PFINT_ITR0(I40E_RX_ITR), 0x003E); + wr32(hw, I40E_PFINT_ITR0(IXL_RX_ITR), 0x003E); wr32(hw, I40E_PFINT_DYN_CTL0, I40E_PFINT_DYN_CTL0_SW_ITR_INDX_MASK | @@ -2027,19 +2056,19 @@ i40e_configure_msix(struct i40e_pf *pf) wr32(hw, I40E_PFINT_LNKLSTN(i), i); reg = I40E_QINT_RQCTL_CAUSE_ENA_MASK | - (I40E_RX_ITR << I40E_QINT_RQCTL_ITR_INDX_SHIFT) | + (IXL_RX_ITR << I40E_QINT_RQCTL_ITR_INDX_SHIFT) | (vector << I40E_QINT_RQCTL_MSIX_INDX_SHIFT) | (i << I40E_QINT_RQCTL_NEXTQ_INDX_SHIFT) | (I40E_QUEUE_TYPE_TX << I40E_QINT_RQCTL_NEXTQ_TYPE_SHIFT); wr32(hw, I40E_QINT_RQCTL(i), reg); reg = I40E_QINT_TQCTL_CAUSE_ENA_MASK | - (I40E_TX_ITR << I40E_QINT_TQCTL_ITR_INDX_SHIFT) | + (IXL_TX_ITR << I40E_QINT_TQCTL_ITR_INDX_SHIFT) | (vector << I40E_QINT_TQCTL_MSIX_INDX_SHIFT) | ((i+1) << I40E_QINT_TQCTL_NEXTQ_INDX_SHIFT) | (I40E_QUEUE_TYPE_RX << I40E_QINT_TQCTL_NEXTQ_TYPE_SHIFT); if (i == (vsi->num_queues - 1)) - reg |= (I40E_QUEUE_EOL + reg |= (IXL_QUEUE_EOL << I40E_QINT_TQCTL_NEXTQ_INDX_SHIFT); wr32(hw, I40E_QINT_TQCTL(i), reg); } @@ -2049,7 +2078,7 @@ i40e_configure_msix(struct i40e_pf *pf) * Configure for MSI single vector operation */ static void -i40e_configure_legacy(struct i40e_pf *pf) +ixl_configure_legacy(struct ixl_pf *pf) { struct i40e_hw *hw = &pf->hw; u32 reg; @@ -2085,13 +2114,13 @@ i40e_configure_legacy(struct i40e_pf *pf) /* Associate the queue pair to the vector and enable the q int */ reg = I40E_QINT_RQCTL_CAUSE_ENA_MASK - | (I40E_RX_ITR << I40E_QINT_RQCTL_ITR_INDX_SHIFT) + | (IXL_RX_ITR << I40E_QINT_RQCTL_ITR_INDX_SHIFT) | (I40E_QUEUE_TYPE_TX << I40E_QINT_TQCTL_NEXTQ_TYPE_SHIFT); wr32(hw, I40E_QINT_RQCTL(0), reg); reg = I40E_QINT_TQCTL_CAUSE_ENA_MASK - | (I40E_TX_ITR << I40E_QINT_TQCTL_ITR_INDX_SHIFT) - | (I40E_QUEUE_EOL << I40E_QINT_TQCTL_NEXTQ_INDX_SHIFT); + | (IXL_TX_ITR << I40E_QINT_TQCTL_ITR_INDX_SHIFT) + | (IXL_QUEUE_EOL << I40E_QINT_TQCTL_NEXTQ_INDX_SHIFT); wr32(hw, I40E_QINT_TQCTL(0), reg); /* Next enable the queue pair */ @@ -2109,37 +2138,37 @@ i40e_configure_legacy(struct i40e_pf *pf) * Set the Initial ITR state */ static void -i40e_configure_itr(struct i40e_pf *pf) +ixl_configure_itr(struct ixl_pf *pf) { struct i40e_hw *hw = &pf->hw; - struct i40e_vsi *vsi = &pf->vsi; - struct i40e_queue *que = vsi->queues; - - vsi->rx_itr_setting = i40e_rx_itr; - if (i40e_dynamic_rx_itr) - vsi->rx_itr_setting |= I40E_ITR_DYNAMIC; - vsi->tx_itr_setting = i40e_tx_itr; - if (i40e_dynamic_tx_itr) - vsi->tx_itr_setting |= I40E_ITR_DYNAMIC; + struct ixl_vsi *vsi = &pf->vsi; + struct ixl_queue *que = vsi->queues; + + vsi->rx_itr_setting = ixl_rx_itr; + if (ixl_dynamic_rx_itr) + vsi->rx_itr_setting |= IXL_ITR_DYNAMIC; + vsi->tx_itr_setting = ixl_tx_itr; + if (ixl_dynamic_tx_itr) + vsi->tx_itr_setting |= IXL_ITR_DYNAMIC; for (int i = 0; i < vsi->num_queues; i++, que++) { struct tx_ring *txr = &que->txr; struct rx_ring *rxr = &que->rxr; - wr32(hw, I40E_PFINT_ITRN(I40E_RX_ITR, i), + wr32(hw, I40E_PFINT_ITRN(IXL_RX_ITR, i), vsi->rx_itr_setting); rxr->itr = vsi->rx_itr_setting; - rxr->latency = I40E_AVE_LATENCY; - wr32(hw, I40E_PFINT_ITRN(I40E_TX_ITR, i), + rxr->latency = IXL_AVE_LATENCY; + wr32(hw, I40E_PFINT_ITRN(IXL_TX_ITR, i), vsi->tx_itr_setting); txr->itr = vsi->tx_itr_setting; - txr->latency = I40E_AVE_LATENCY; + txr->latency = IXL_AVE_LATENCY; } } static int -i40e_allocate_pci_resources(struct i40e_pf *pf) +ixl_allocate_pci_resources(struct ixl_pf *pf) { int rid; device_t dev = pf->dev; @@ -2157,6 +2186,7 @@ i40e_allocate_pci_resources(struct i40e_pf *pf) rman_get_bustag(pf->pci_mem); pf->osdep.mem_bus_space_handle = rman_get_bushandle(pf->pci_mem); + pf->osdep.mem_bus_space_size = rman_get_size(pf->pci_mem); pf->hw.hw_addr = (u8 *) &pf->osdep.mem_bus_space_handle; pf->hw.back = &pf->osdep; @@ -2166,22 +2196,22 @@ i40e_allocate_pci_resources(struct i40e_pf *pf) ** return us the number of supported ** vectors. (Will be 1 for MSI) */ - pf->msix = i40e_init_msix(pf); + pf->msix = ixl_init_msix(pf); return (0); } static void -i40e_free_pci_resources(struct i40e_pf * pf) +ixl_free_pci_resources(struct ixl_pf * pf) { - struct i40e_vsi *vsi = &pf->vsi; - struct i40e_queue *que = vsi->queues; + struct ixl_vsi *vsi = &pf->vsi; + struct ixl_queue *que = vsi->queues; device_t dev = pf->dev; int rid, memrid; - memrid = PCIR_BAR(I40E_BAR); + memrid = PCIR_BAR(IXL_BAR); /* We may get here before stations are setup */ - if ((!i40e_enable_msix) || (que == NULL)) + if ((!ixl_enable_msix) || (que == NULL)) goto early; /* @@ -2232,15 +2262,15 @@ early: * **********************************************************************/ static int -i40e_setup_interface(device_t dev, struct i40e_vsi *vsi) +ixl_setup_interface(device_t dev, struct ixl_vsi *vsi) { struct ifnet *ifp; struct i40e_hw *hw = vsi->hw; - struct i40e_queue *que = vsi->queues; + struct ixl_queue *que = vsi->queues; struct i40e_aq_get_phy_abilities_resp abilities_resp; enum i40e_status_code aq_error = 0; - INIT_DEBUGOUT("i40e_setup_interface: begin"); + INIT_DEBUGOUT("ixl_setup_interface: begin"); ifp = vsi->ifp = if_alloc(IFT_ETHER); if (ifp == NULL) { @@ -2250,14 +2280,14 @@ i40e_setup_interface(device_t dev, struct i40e_vsi *vsi) if_initname(ifp, device_get_name(dev), device_get_unit(dev)); ifp->if_mtu = ETHERMTU; ifp->if_baudrate = 4000000000; // ?? - ifp->if_init = i40e_init; + ifp->if_init = ixl_init; ifp->if_softc = vsi; ifp->if_flags = IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST; - ifp->if_ioctl = i40e_ioctl; + ifp->if_ioctl = ixl_ioctl; - ifp->if_transmit = i40e_mq_start; + ifp->if_transmit = ixl_mq_start; - ifp->if_qflush = i40e_qflush; + ifp->if_qflush = ixl_qflush; ifp->if_snd.ifq_maxlen = que->num_desc - 2; @@ -2290,7 +2320,7 @@ i40e_setup_interface(device_t dev, struct i40e_vsi *vsi) ** created on another pseudo device (eg. lagg) ** then vlan events are not passed thru, breaking ** operation, but with HW FILTER off it works. If - ** using vlans directly on the i40e driver you can + ** using vlans directly on the ixl driver you can ** enable this and get full hardware tag filtering. */ ifp->if_capabilities |= IFCAP_VLAN_HWFILTER; @@ -2299,8 +2329,8 @@ i40e_setup_interface(device_t dev, struct i40e_vsi *vsi) * Specify the media types supported by this adapter and register * callbacks to update media and link information */ - ifmedia_init(&vsi->media, IFM_IMASK, i40e_media_change, - i40e_media_status); + ifmedia_init(&vsi->media, IFM_IMASK, ixl_media_change, + ixl_media_status); aq_error = i40e_aq_get_phy_capabilities(hw, FALSE, TRUE, &abilities_resp, NULL); if (aq_error) { @@ -2322,6 +2352,8 @@ i40e_setup_interface(device_t dev, struct i40e_vsi *vsi) ifmedia_add(&vsi->media, IFM_ETHER | IFM_10G_SR, 0, NULL); if (abilities_resp.phy_type & (1 << I40E_PHY_TYPE_10GBASE_LR)) ifmedia_add(&vsi->media, IFM_ETHER | IFM_10G_LR, 0, NULL); + if (abilities_resp.phy_type & (1 << I40E_PHY_TYPE_10GBASE_T)) + ifmedia_add(&vsi->media, IFM_ETHER | IFM_10G_T, 0, NULL); if (abilities_resp.phy_type & (1 << I40E_PHY_TYPE_40GBASE_CR4_CU) || abilities_resp.phy_type & (1 << I40E_PHY_TYPE_40GBASE_CR4)) @@ -2339,13 +2371,13 @@ i40e_setup_interface(device_t dev, struct i40e_vsi *vsi) } static bool -i40e_config_link(struct i40e_hw *hw) +ixl_config_link(struct i40e_hw *hw) { bool check; i40e_aq_get_link_info(hw, TRUE, NULL, NULL); check = i40e_get_link_status(hw); -#ifdef I40E_DEBUG +#ifdef IXL_DEBUG printf("Link is %s\n", check ? "up":"down"); #endif return (check); @@ -2357,7 +2389,7 @@ i40e_config_link(struct i40e_hw *hw) * **********************************************************************/ static int -i40e_setup_vsi(struct i40e_vsi *vsi) +ixl_setup_vsi(struct ixl_vsi *vsi) { struct i40e_hw *hw = vsi->hw; device_t dev = vsi->dev; @@ -2374,7 +2406,7 @@ i40e_setup_vsi(struct i40e_vsi *vsi) device_printf(dev,"aq_get_switch_config failed!!\n"); return (ret); } -#ifdef I40E_DEBUG +#ifdef IXL_DEBUG printf("Switch config: header reported: %d in structure, %d total\n", sw_config->header.num_reported, sw_config->header.num_total); printf("type=%d seid=%d uplink=%d downlink=%d\n", @@ -2394,7 +2426,7 @@ i40e_setup_vsi(struct i40e_vsi *vsi) device_printf(dev,"get vsi params failed %x!!\n", ret); return (ret); } -#ifdef I40E_DEBUG +#ifdef IXL_DEBUG printf("get_vsi_params: seid: %d, uplinkseid: %d, vsi_number: %d, " "vsis_allocated: %d, vsis_unallocated: %d, flags: 0x%x, " "pfnum: %d, vfnum: %d, stat idx: %d, enabled: %d\n", ctxt.seid, @@ -2425,7 +2457,7 @@ i40e_setup_vsi(struct i40e_vsi *vsi) memcpy(&vsi->info, &ctxt.info, sizeof(ctxt.info)); /* Reset VSI statistics */ - i40e_vsi_reset_stats(vsi); + ixl_vsi_reset_stats(vsi); vsi->hw_filters_add = 0; vsi->hw_filters_del = 0; @@ -2445,9 +2477,9 @@ i40e_setup_vsi(struct i40e_vsi *vsi) * **********************************************************************/ static int -i40e_initialize_vsi(struct i40e_vsi *vsi) +ixl_initialize_vsi(struct ixl_vsi *vsi) { - struct i40e_queue *que = vsi->queues; + struct ixl_queue *que = vsi->queues; device_t dev = vsi->dev; struct i40e_hw *hw = vsi->hw; int err = 0; @@ -2490,10 +2522,10 @@ i40e_initialize_vsi(struct i40e_vsi *vsi) txctl |= ((hw->pf_id << I40E_QTX_CTL_PF_INDX_SHIFT) & I40E_QTX_CTL_PF_INDX_MASK); wr32(hw, I40E_QTX_CTL(i), txctl); - i40e_flush(hw); + ixl_flush(hw); /* Do ring (re)init */ - i40e_init_tx_ring(que); + ixl_init_tx_ring(que); /* Next setup the HMC RX Context */ if (vsi->max_frame_size <= 2048) @@ -2520,6 +2552,12 @@ i40e_initialize_vsi(struct i40e_vsi *vsi) rctx.tphdata_ena = 0; rctx.tphhead_ena = 0; rctx.lrxqthresh = 2; +#ifdef DEV_NETMAP + /* "CRC strip in netmap is conditional" */ + if (vsi->ifp->if_capenable & IFCAP_NETMAP && !ixl_crcstrip) + rctx.crcstrip = 0; + else +#endif /* DEV_NETMAP */ rctx.crcstrip = 1; rctx.l2tsel = 1; rctx.showiv = 1; @@ -2537,12 +2575,27 @@ i40e_initialize_vsi(struct i40e_vsi *vsi) device_printf(dev, "Unable to set RX context %d\n", i); break; } - err = i40e_init_rx_ring(que); + err = ixl_init_rx_ring(que); if (err) { device_printf(dev, "Fail in init_rx_ring %d\n", i); break; } wr32(vsi->hw, I40E_QRX_TAIL(que->me), 0); +#ifdef DEV_NETMAP + /* TODO appropriately comment + * Code based on netmap code in ixgbe_init_locked() + * Messes with what the software sets as queue + * descriptor tail in hardware. + */ + if (vsi->ifp->if_capenable & IFCAP_NETMAP) + { + struct netmap_adapter *na = NA(vsi->ifp); + struct netmap_kring *kring = &na->rx_rings[que->me]; + int t = na->num_rx_desc - 1 - kring->nr_hwavail; + + wr32(vsi->hw, I40E_QRX_TAIL(que->me), t); + } else +#endif /* DEV_NETMAP */ wr32(vsi->hw, I40E_QRX_TAIL(que->me), que->num_desc - 1); } return (err); @@ -2555,11 +2608,11 @@ i40e_initialize_vsi(struct i40e_vsi *vsi) * **********************************************************************/ void -i40e_free_vsi(struct i40e_vsi *vsi) +ixl_free_vsi(struct ixl_vsi *vsi) { - struct i40e_pf *pf = (struct i40e_pf *)vsi->back; - struct i40e_queue *que = vsi->queues; - struct i40e_mac_filter *f; + struct ixl_pf *pf = (struct ixl_pf *)vsi->back; + struct ixl_queue *que = vsi->queues; + struct ixl_mac_filter *f; /* Free station queues */ for (int i = 0; i < vsi->num_queues; i++, que++) { @@ -2568,21 +2621,21 @@ i40e_free_vsi(struct i40e_vsi *vsi) if (!mtx_initialized(&txr->mtx)) /* uninitialized */ continue; - I40E_TX_LOCK(txr); - i40e_free_que_tx(que); + IXL_TX_LOCK(txr); + ixl_free_que_tx(que); if (txr->base) i40e_free_dma(&pf->hw, &txr->dma); - I40E_TX_UNLOCK(txr); - I40E_TX_LOCK_DESTROY(txr); + IXL_TX_UNLOCK(txr); + IXL_TX_LOCK_DESTROY(txr); if (!mtx_initialized(&rxr->mtx)) /* uninitialized */ continue; - I40E_RX_LOCK(rxr); - i40e_free_que_rx(que); + IXL_RX_LOCK(rxr); + ixl_free_que_rx(que); if (rxr->base) i40e_free_dma(&pf->hw, &rxr->dma); - I40E_RX_UNLOCK(rxr); - I40E_RX_LOCK_DESTROY(rxr); + IXL_RX_UNLOCK(rxr); + IXL_RX_LOCK_DESTROY(rxr); } free(vsi->queues, M_DEVBUF); @@ -2604,11 +2657,11 @@ i40e_free_vsi(struct i40e_vsi *vsi) * **********************************************************************/ static int -i40e_setup_stations(struct i40e_pf *pf) +ixl_setup_stations(struct ixl_pf *pf) { device_t dev = pf->dev; - struct i40e_vsi *vsi; - struct i40e_queue *que; + struct ixl_vsi *vsi; + struct ixl_queue *que; struct tx_ring *txr; struct rx_ring *rxr; int rsize, tsize; @@ -2622,7 +2675,7 @@ i40e_setup_stations(struct i40e_pf *pf) /* Get memory for the station queues */ if (!(vsi->queues = - (struct i40e_queue *) malloc(sizeof(struct i40e_queue) * + (struct ixl_queue *) malloc(sizeof(struct ixl_queue) * vsi->num_queues, M_DEVBUF, M_NOWAIT | M_ZERO))) { device_printf(dev, "Unable to allocate queue memory\n"); error = ENOMEM; @@ -2631,7 +2684,7 @@ i40e_setup_stations(struct i40e_pf *pf) for (int i = 0; i < vsi->num_queues; i++) { que = &vsi->queues[i]; - que->num_desc = i40e_ringsz; + que->num_desc = ixl_ringsz; que->me = i; que->vsi = vsi; /* mark the queue as active */ @@ -2658,7 +2711,7 @@ i40e_setup_stations(struct i40e_pf *pf) txr->base = (struct i40e_tx_desc *)txr->dma.va; bzero((void *)txr->base, tsize); /* Now allocate transmit soft structs for the ring */ - if (i40e_allocate_tx_data(que)) { + if (ixl_allocate_tx_data(que)) { device_printf(dev, "Critical Failure setting up TX structures\n"); error = ENOMEM; @@ -2699,7 +2752,7 @@ i40e_setup_stations(struct i40e_pf *pf) bzero((void *)rxr->base, rsize); /* Allocate receive soft structs for the ring*/ - if (i40e_allocate_rx_data(que)) { + if (ixl_allocate_rx_data(que)) { device_printf(dev, "Critical Failure setting up receive structs\n"); error = ENOMEM; @@ -2729,9 +2782,9 @@ early: ** interrupt moderation value. */ static void -i40e_set_queue_rx_itr(struct i40e_queue *que) +ixl_set_queue_rx_itr(struct ixl_queue *que) { - struct i40e_vsi *vsi = que->vsi; + struct ixl_vsi *vsi = que->vsi; struct i40e_hw *hw = vsi->hw; struct rx_ring *rxr = &que->rxr; u16 rx_itr; @@ -2743,31 +2796,31 @@ i40e_set_queue_rx_itr(struct i40e_queue *que) if (rxr->bytes == 0) return; - if (i40e_dynamic_rx_itr) { + if (ixl_dynamic_rx_itr) { rx_bytes = rxr->bytes/rxr->itr; rx_itr = rxr->itr; /* Adjust latency range */ switch (rxr->latency) { - case I40E_LOW_LATENCY: + case IXL_LOW_LATENCY: if (rx_bytes > 10) { - rx_latency = I40E_AVE_LATENCY; - rx_itr = I40E_ITR_20K; + rx_latency = IXL_AVE_LATENCY; + rx_itr = IXL_ITR_20K; } break; - case I40E_AVE_LATENCY: + case IXL_AVE_LATENCY: if (rx_bytes > 20) { - rx_latency = I40E_BULK_LATENCY; - rx_itr = I40E_ITR_8K; + rx_latency = IXL_BULK_LATENCY; + rx_itr = IXL_ITR_8K; } else if (rx_bytes <= 10) { - rx_latency = I40E_LOW_LATENCY; - rx_itr = I40E_ITR_100K; + rx_latency = IXL_LOW_LATENCY; + rx_itr = IXL_ITR_100K; } break; - case I40E_BULK_LATENCY: + case IXL_BULK_LATENCY: if (rx_bytes <= 20) { - rx_latency = I40E_AVE_LATENCY; - rx_itr = I40E_ITR_20K; + rx_latency = IXL_AVE_LATENCY; + rx_itr = IXL_ITR_20K; } break; } @@ -2778,17 +2831,17 @@ i40e_set_queue_rx_itr(struct i40e_queue *que) /* do an exponential smoothing */ rx_itr = (10 * rx_itr * rxr->itr) / ((9 * rx_itr) + rxr->itr); - rxr->itr = rx_itr & I40E_MAX_ITR; - wr32(hw, I40E_PFINT_ITRN(I40E_RX_ITR, + rxr->itr = rx_itr & IXL_MAX_ITR; + wr32(hw, I40E_PFINT_ITRN(IXL_RX_ITR, que->me), rxr->itr); } } else { /* We may have have toggled to non-dynamic */ - if (vsi->rx_itr_setting & I40E_ITR_DYNAMIC) - vsi->rx_itr_setting = i40e_rx_itr; + if (vsi->rx_itr_setting & IXL_ITR_DYNAMIC) + vsi->rx_itr_setting = ixl_rx_itr; /* Update the hardware if needed */ if (rxr->itr != vsi->rx_itr_setting) { rxr->itr = vsi->rx_itr_setting; - wr32(hw, I40E_PFINT_ITRN(I40E_RX_ITR, + wr32(hw, I40E_PFINT_ITRN(IXL_RX_ITR, que->me), rxr->itr); } } @@ -2803,9 +2856,9 @@ i40e_set_queue_rx_itr(struct i40e_queue *que) ** interrupt moderation value. */ static void -i40e_set_queue_tx_itr(struct i40e_queue *que) +ixl_set_queue_tx_itr(struct ixl_queue *que) { - struct i40e_vsi *vsi = que->vsi; + struct ixl_vsi *vsi = que->vsi; struct i40e_hw *hw = vsi->hw; struct tx_ring *txr = &que->txr; u16 tx_itr; @@ -2817,30 +2870,30 @@ i40e_set_queue_tx_itr(struct i40e_queue *que) if (txr->bytes == 0) return; - if (i40e_dynamic_tx_itr) { + if (ixl_dynamic_tx_itr) { tx_bytes = txr->bytes/txr->itr; tx_itr = txr->itr; switch (txr->latency) { - case I40E_LOW_LATENCY: + case IXL_LOW_LATENCY: if (tx_bytes > 10) { - tx_latency = I40E_AVE_LATENCY; - tx_itr = I40E_ITR_20K; + tx_latency = IXL_AVE_LATENCY; + tx_itr = IXL_ITR_20K; } break; - case I40E_AVE_LATENCY: + case IXL_AVE_LATENCY: if (tx_bytes > 20) { - tx_latency = I40E_BULK_LATENCY; - tx_itr = I40E_ITR_8K; + tx_latency = IXL_BULK_LATENCY; + tx_itr = IXL_ITR_8K; } else if (tx_bytes <= 10) { - tx_latency = I40E_LOW_LATENCY; - tx_itr = I40E_ITR_100K; + tx_latency = IXL_LOW_LATENCY; + tx_itr = IXL_ITR_100K; } break; - case I40E_BULK_LATENCY: + case IXL_BULK_LATENCY: if (tx_bytes <= 20) { - tx_latency = I40E_AVE_LATENCY; - tx_itr = I40E_ITR_20K; + tx_latency = IXL_AVE_LATENCY; + tx_itr = IXL_ITR_20K; } break; } @@ -2851,18 +2904,18 @@ i40e_set_queue_tx_itr(struct i40e_queue *que) /* do an exponential smoothing */ tx_itr = (10 * tx_itr * txr->itr) / ((9 * tx_itr) + txr->itr); - txr->itr = tx_itr & I40E_MAX_ITR; - wr32(hw, I40E_PFINT_ITRN(I40E_TX_ITR, + txr->itr = tx_itr & IXL_MAX_ITR; + wr32(hw, I40E_PFINT_ITRN(IXL_TX_ITR, que->me), txr->itr); } } else { /* We may have have toggled to non-dynamic */ - if (vsi->tx_itr_setting & I40E_ITR_DYNAMIC) - vsi->tx_itr_setting = i40e_tx_itr; + if (vsi->tx_itr_setting & IXL_ITR_DYNAMIC) + vsi->tx_itr_setting = ixl_tx_itr; /* Update the hardware if needed */ if (txr->itr != vsi->tx_itr_setting) { txr->itr = vsi->tx_itr_setting; - wr32(hw, I40E_PFINT_ITRN(I40E_TX_ITR, + wr32(hw, I40E_PFINT_ITRN(IXL_TX_ITR, que->me), txr->itr); } } @@ -2873,11 +2926,11 @@ i40e_set_queue_tx_itr(struct i40e_queue *que) static void -i40e_add_hw_stats(struct i40e_pf *pf) +ixl_add_hw_stats(struct ixl_pf *pf) { device_t dev = pf->dev; - struct i40e_vsi *vsi = &pf->vsi; - struct i40e_queue *queues = vsi->queues; + struct ixl_vsi *vsi = &pf->vsi; + struct ixl_queue *queues = vsi->queues; struct i40e_eth_stats *vsi_stats = &vsi->eth_stats; struct i40e_hw_port_stats *pf_stats = &pf->stats; @@ -2909,7 +2962,7 @@ i40e_add_hw_stats(struct i40e_pf *pf) CTLFLAG_RD, NULL, "VSI-specific stats"); vsi_list = SYSCTL_CHILDREN(vsi_node); - i40e_add_sysctls_eth_stats(ctx, vsi_list, vsi_stats); + ixl_add_sysctls_eth_stats(ctx, vsi_list, vsi_stats); /* Queue statistics */ for (int q = 0; q < vsi->num_queues; q++) { @@ -2943,7 +2996,7 @@ i40e_add_hw_stats(struct i40e_pf *pf) CTLFLAG_RD, &(txr->total_packets), "Queue Packets Transmitted"); SYSCTL_ADD_UQUAD(ctx, queue_list, OID_AUTO, "tx_bytes", - CTLFLAG_RD, &(txr->bytes), + CTLFLAG_RD, &(txr->tx_bytes), "Queue Bytes Transmitted"); SYSCTL_ADD_UQUAD(ctx, queue_list, OID_AUTO, "rx_packets", CTLFLAG_RD, &(rxr->rx_packets), @@ -2954,15 +3007,15 @@ i40e_add_hw_stats(struct i40e_pf *pf) } /* MAC stats */ - i40e_add_sysctls_mac_stats(ctx, child, pf_stats); + ixl_add_sysctls_mac_stats(ctx, child, pf_stats); } static void -i40e_add_sysctls_eth_stats(struct sysctl_ctx_list *ctx, +ixl_add_sysctls_eth_stats(struct sysctl_ctx_list *ctx, struct sysctl_oid_list *child, struct i40e_eth_stats *eth_stats) { - struct i40e_sysctl_info ctls[] = + struct ixl_sysctl_info ctls[] = { {ð_stats->rx_bytes, "good_octets_rcvd", "Good Octets Received"}, {ð_stats->rx_unicast, "ucast_pkts_rcvd", @@ -2983,7 +3036,7 @@ i40e_add_sysctls_eth_stats(struct sysctl_ctx_list *ctx, {0,0,0} }; - struct i40e_sysctl_info *entry = ctls; + struct ixl_sysctl_info *entry = ctls; while (entry->stat != 0) { SYSCTL_ADD_UQUAD(ctx, child, OID_AUTO, entry->name, @@ -2994,7 +3047,7 @@ i40e_add_sysctls_eth_stats(struct sysctl_ctx_list *ctx, } static void -i40e_add_sysctls_mac_stats(struct sysctl_ctx_list *ctx, +ixl_add_sysctls_mac_stats(struct sysctl_ctx_list *ctx, struct sysctl_oid_list *child, struct i40e_hw_port_stats *stats) { @@ -3003,9 +3056,9 @@ i40e_add_sysctls_mac_stats(struct sysctl_ctx_list *ctx, struct sysctl_oid_list *stat_list = SYSCTL_CHILDREN(stat_node); struct i40e_eth_stats *eth_stats = &stats->eth; - i40e_add_sysctls_eth_stats(ctx, stat_list, eth_stats); + ixl_add_sysctls_eth_stats(ctx, stat_list, eth_stats); - struct i40e_sysctl_info ctls[] = + struct ixl_sysctl_info ctls[] = { {&stats->crc_errors, "crc_errors", "CRC Errors"}, {&stats->illegal_bytes, "illegal_bytes", "Illegal Byte Errors"}, @@ -3042,7 +3095,7 @@ i40e_add_sysctls_mac_stats(struct sysctl_ctx_list *ctx, {0,0,0} }; - struct i40e_sysctl_info *entry = ctls; + struct ixl_sysctl_info *entry = ctls; while (entry->stat != 0) { SYSCTL_ADD_UQUAD(ctx, stat_list, OID_AUTO, entry->name, @@ -3053,12 +3106,12 @@ i40e_add_sysctls_mac_stats(struct sysctl_ctx_list *ctx, } /* -** i40e_config_rss - setup RSS +** ixl_config_rss - setup RSS ** - note this is done for the single vsi */ -static void i40e_config_rss(struct i40e_vsi *vsi) +static void ixl_config_rss(struct ixl_vsi *vsi) { - struct i40e_pf *pf = (struct i40e_pf *)vsi->back; + struct ixl_pf *pf = (struct ixl_pf *)vsi->back; struct i40e_hw *hw = vsi->hw; u32 lut = 0; u64 set_hena, hena; @@ -3104,7 +3157,7 @@ static void i40e_config_rss(struct i40e_vsi *vsi) if ((i & 3) == 3) wr32(hw, I40E_PFQF_HLUT(i >> 2), lut); } - i40e_flush(hw); + ixl_flush(hw); } @@ -3116,11 +3169,11 @@ static void i40e_config_rss(struct i40e_vsi *vsi) ** repopulate the real table. */ static void -i40e_register_vlan(void *arg, struct ifnet *ifp, u16 vtag) +ixl_register_vlan(void *arg, struct ifnet *ifp, u16 vtag) { - struct i40e_vsi *vsi = ifp->if_softc; + struct ixl_vsi *vsi = ifp->if_softc; struct i40e_hw *hw = vsi->hw; - struct i40e_pf *pf = (struct i40e_pf *)vsi->back; + struct ixl_pf *pf = (struct ixl_pf *)vsi->back; if (ifp->if_softc != arg) /* Not our event */ return; @@ -3128,10 +3181,10 @@ i40e_register_vlan(void *arg, struct ifnet *ifp, u16 vtag) if ((vtag == 0) || (vtag > 4095)) /* Invalid */ return; - I40E_PF_LOCK(pf); + IXL_PF_LOCK(pf); ++vsi->num_vlans; - i40e_add_filter(vsi, hw->mac.addr, vtag); - I40E_PF_UNLOCK(pf); + ixl_add_filter(vsi, hw->mac.addr, vtag); + IXL_PF_UNLOCK(pf); } /* @@ -3140,11 +3193,11 @@ i40e_register_vlan(void *arg, struct ifnet *ifp, u16 vtag) ** in the soft vfta. */ static void -i40e_unregister_vlan(void *arg, struct ifnet *ifp, u16 vtag) +ixl_unregister_vlan(void *arg, struct ifnet *ifp, u16 vtag) { - struct i40e_vsi *vsi = ifp->if_softc; + struct ixl_vsi *vsi = ifp->if_softc; struct i40e_hw *hw = vsi->hw; - struct i40e_pf *pf = (struct i40e_pf *)vsi->back; + struct ixl_pf *pf = (struct ixl_pf *)vsi->back; if (ifp->if_softc != arg) return; @@ -3152,10 +3205,10 @@ i40e_unregister_vlan(void *arg, struct ifnet *ifp, u16 vtag) if ((vtag == 0) || (vtag > 4095)) /* Invalid */ return; - I40E_PF_LOCK(pf); + IXL_PF_LOCK(pf); --vsi->num_vlans; - i40e_del_filter(vsi, hw->mac.addr, vtag); - I40E_PF_UNLOCK(pf); + ixl_del_filter(vsi, hw->mac.addr, vtag); + IXL_PF_UNLOCK(pf); } /* @@ -3164,9 +3217,9 @@ i40e_unregister_vlan(void *arg, struct ifnet *ifp, u16 vtag) ** after a soft reset. */ static void -i40e_setup_vlan_filters(struct i40e_vsi *vsi) +ixl_setup_vlan_filters(struct ixl_vsi *vsi) { - struct i40e_mac_filter *f; + struct ixl_mac_filter *f; int cnt = 0, flags; if (vsi->num_vlans == 0) @@ -3177,10 +3230,10 @@ i40e_setup_vlan_filters(struct i40e_vsi *vsi) ** for the AQ update. */ SLIST_FOREACH(f, &vsi->ftl, next) { - if (f->flags & I40E_FILTER_VLAN) { + if (f->flags & IXL_FILTER_VLAN) { f->flags |= - (I40E_FILTER_ADD | - I40E_FILTER_USED); + (IXL_FILTER_ADD | + IXL_FILTER_USED); cnt++; } } @@ -3188,9 +3241,9 @@ i40e_setup_vlan_filters(struct i40e_vsi *vsi) printf("setup vlan: no filters found!\n"); return; } - flags = I40E_FILTER_VLAN; - flags |= (I40E_FILTER_ADD | I40E_FILTER_USED); - i40e_add_hw_filters(vsi, flags, cnt); + flags = IXL_FILTER_VLAN; + flags |= (IXL_FILTER_ADD | IXL_FILTER_USED); + ixl_add_hw_filters(vsi, flags, cnt); return; } @@ -3199,35 +3252,35 @@ i40e_setup_vlan_filters(struct i40e_vsi *vsi) ** needs to know about. */ static void -i40e_init_filters(struct i40e_vsi *vsi) +ixl_init_filters(struct ixl_vsi *vsi) { /* Add broadcast address */ u8 bc[6] = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff}; - i40e_add_filter(vsi, bc, I40E_VLAN_ANY); + ixl_add_filter(vsi, bc, IXL_VLAN_ANY); } /* ** This routine adds mulicast filters */ static void -i40e_add_mc_filter(struct i40e_vsi *vsi, u8 *macaddr) +ixl_add_mc_filter(struct ixl_vsi *vsi, u8 *macaddr) { - struct i40e_mac_filter *f; + struct ixl_mac_filter *f; /* Does one already exist */ - f = i40e_find_filter(vsi, macaddr, I40E_VLAN_ANY); + f = ixl_find_filter(vsi, macaddr, IXL_VLAN_ANY); if (f != NULL) return; - f = i40e_get_filter(vsi); + f = ixl_get_filter(vsi); if (f == NULL) { printf("WARNING: no filter available!!\n"); return; } bcopy(macaddr, f->macaddr, ETHER_ADDR_LEN); - f->vlan = I40E_VLAN_ANY; - f->flags |= (I40E_FILTER_ADD | I40E_FILTER_USED - | I40E_FILTER_MC); + f->vlan = IXL_VLAN_ANY; + f->flags |= (IXL_FILTER_ADD | IXL_FILTER_USED + | IXL_FILTER_MC); return; } @@ -3236,15 +3289,15 @@ i40e_add_mc_filter(struct i40e_vsi *vsi, u8 *macaddr) ** This routine adds macvlan filters */ static void -i40e_add_filter(struct i40e_vsi *vsi, u8 *macaddr, s16 vlan) +ixl_add_filter(struct ixl_vsi *vsi, u8 *macaddr, s16 vlan) { - struct i40e_mac_filter *f, *tmp; + struct ixl_mac_filter *f, *tmp; device_t dev = vsi->dev; - DEBUGOUT("i40e_add_filter: begin"); + DEBUGOUT("ixl_add_filter: begin"); /* Does one already exist */ - f = i40e_find_filter(vsi, macaddr, vlan); + f = ixl_find_filter(vsi, macaddr, vlan); if (f != NULL) return; /* @@ -3252,46 +3305,46 @@ i40e_add_filter(struct i40e_vsi *vsi, u8 *macaddr, s16 vlan) ** need to remove the ANY filter that indicates we are ** not in a vlan, and replace that with a 0 filter. */ - if ((vlan != I40E_VLAN_ANY) && (vsi->num_vlans == 1)) { - tmp = i40e_find_filter(vsi, macaddr, I40E_VLAN_ANY); + if ((vlan != IXL_VLAN_ANY) && (vsi->num_vlans == 1)) { + tmp = ixl_find_filter(vsi, macaddr, IXL_VLAN_ANY); if (tmp != NULL) { - i40e_del_filter(vsi, macaddr, I40E_VLAN_ANY); - i40e_add_filter(vsi, macaddr, 0); + ixl_del_filter(vsi, macaddr, IXL_VLAN_ANY); + ixl_add_filter(vsi, macaddr, 0); } } - f = i40e_get_filter(vsi); + f = ixl_get_filter(vsi); if (f == NULL) { device_printf(dev, "WARNING: no filter available!!\n"); return; } bcopy(macaddr, f->macaddr, ETHER_ADDR_LEN); f->vlan = vlan; - f->flags |= (I40E_FILTER_ADD | I40E_FILTER_USED); - if (f->vlan != I40E_VLAN_ANY) - f->flags |= I40E_FILTER_VLAN; + f->flags |= (IXL_FILTER_ADD | IXL_FILTER_USED); + if (f->vlan != IXL_VLAN_ANY) + f->flags |= IXL_FILTER_VLAN; - i40e_add_hw_filters(vsi, f->flags, 1); + ixl_add_hw_filters(vsi, f->flags, 1); return; } static void -i40e_del_filter(struct i40e_vsi *vsi, u8 *macaddr, s16 vlan) +ixl_del_filter(struct ixl_vsi *vsi, u8 *macaddr, s16 vlan) { - struct i40e_mac_filter *f; + struct ixl_mac_filter *f; - f = i40e_find_filter(vsi, macaddr, vlan); + f = ixl_find_filter(vsi, macaddr, vlan); if (f == NULL) return; - f->flags |= I40E_FILTER_DEL; - i40e_del_hw_filters(vsi, 1); + f->flags |= IXL_FILTER_DEL; + ixl_del_hw_filters(vsi, 1); /* Check if this is the last vlan removal */ - if (vlan != I40E_VLAN_ANY && vsi->num_vlans == 0) { + if (vlan != IXL_VLAN_ANY && vsi->num_vlans == 0) { /* Switch back to a non-vlan filter */ - i40e_del_filter(vsi, macaddr, 0); - i40e_add_filter(vsi, macaddr, I40E_VLAN_ANY); + ixl_del_filter(vsi, macaddr, 0); + ixl_add_filter(vsi, macaddr, IXL_VLAN_ANY); } return; } @@ -3299,10 +3352,10 @@ i40e_del_filter(struct i40e_vsi *vsi, u8 *macaddr, s16 vlan) /* ** Find the filter with both matching mac addr and vlan id */ -static struct i40e_mac_filter * -i40e_find_filter(struct i40e_vsi *vsi, u8 *macaddr, s16 vlan) +static struct ixl_mac_filter * +ixl_find_filter(struct ixl_vsi *vsi, u8 *macaddr, s16 vlan) { - struct i40e_mac_filter *f; + struct ixl_mac_filter *f; bool match = FALSE; SLIST_FOREACH(f, &vsi->ftl, next) { @@ -3325,10 +3378,10 @@ i40e_find_filter(struct i40e_vsi *vsi, u8 *macaddr, s16 vlan) ** the filters in the hardware. */ static void -i40e_add_hw_filters(struct i40e_vsi *vsi, int flags, int cnt) +ixl_add_hw_filters(struct ixl_vsi *vsi, int flags, int cnt) { struct i40e_aqc_add_macvlan_element_data *a, *b; - struct i40e_mac_filter *f; + struct ixl_mac_filter *f; struct i40e_hw *hw = vsi->hw; device_t dev = vsi->dev; int err, j = 0; @@ -3350,9 +3403,9 @@ i40e_add_hw_filters(struct i40e_vsi *vsi, int flags, int cnt) b = &a[j]; // a pox on fvl long names :) bcopy(f->macaddr, b->mac_addr, ETHER_ADDR_LEN); b->vlan_tag = - (f->vlan == I40E_VLAN_ANY ? 0 : f->vlan); + (f->vlan == IXL_VLAN_ANY ? 0 : f->vlan); b->flags = I40E_AQC_MACVLAN_ADD_PERFECT_MATCH; - f->flags &= ~I40E_FILTER_ADD; + f->flags &= ~IXL_FILTER_ADD; j++; } if (j == cnt) @@ -3376,15 +3429,15 @@ i40e_add_hw_filters(struct i40e_vsi *vsi, int flags, int cnt) ** the filters in the hardware. */ static void -i40e_del_hw_filters(struct i40e_vsi *vsi, int cnt) +ixl_del_hw_filters(struct ixl_vsi *vsi, int cnt) { struct i40e_aqc_remove_macvlan_element_data *d, *e; struct i40e_hw *hw = vsi->hw; device_t dev = vsi->dev; - struct i40e_mac_filter *f, *f_temp; + struct ixl_mac_filter *f, *f_temp; int err, j = 0; - DEBUGOUT("i40e_del_hw_filters: begin\n"); + DEBUGOUT("ixl_del_hw_filters: begin\n"); d = malloc(sizeof(struct i40e_aqc_remove_macvlan_element_data) * cnt, M_DEVBUF, M_NOWAIT | M_ZERO); @@ -3394,13 +3447,13 @@ i40e_del_hw_filters(struct i40e_vsi *vsi, int cnt) } SLIST_FOREACH_SAFE(f, &vsi->ftl, next, f_temp) { - if (f->flags & I40E_FILTER_DEL) { + if (f->flags & IXL_FILTER_DEL) { e = &d[j]; // a pox on fvl long names :) bcopy(f->macaddr, e->mac_addr, ETHER_ADDR_LEN); - e->vlan_tag = (f->vlan == I40E_VLAN_ANY ? 0 : f->vlan); + e->vlan_tag = (f->vlan == IXL_VLAN_ANY ? 0 : f->vlan); e->flags = I40E_AQC_MACVLAN_DEL_PERFECT_MATCH; /* delete entry from vsi list */ - SLIST_REMOVE(&vsi->ftl, f, i40e_mac_filter, next); + SLIST_REMOVE(&vsi->ftl, f, ixl_mac_filter, next); free(f, M_DEVBUF); j++; } @@ -3424,13 +3477,13 @@ i40e_del_hw_filters(struct i40e_vsi *vsi, int cnt) } free(d, M_DEVBUF); - DEBUGOUT("i40e_del_hw_filters: end\n"); + DEBUGOUT("ixl_del_hw_filters: end\n"); return; } static void -i40e_enable_rings(struct i40e_vsi *vsi) +ixl_enable_rings(struct ixl_vsi *vsi) { struct i40e_hw *hw = vsi->hw; u32 reg; @@ -3469,7 +3522,7 @@ i40e_enable_rings(struct i40e_vsi *vsi) } static void -i40e_disable_rings(struct i40e_vsi *vsi) +ixl_disable_rings(struct ixl_vsi *vsi) { struct i40e_hw *hw = vsi->hw; u32 reg; @@ -3507,12 +3560,12 @@ i40e_disable_rings(struct i40e_vsi *vsi) } /** - * i40e_handle_mdd_event + * ixl_handle_mdd_event * * Called from interrupt handler to identify possibly malicious vfs * (But also detects events from the PF, as well) **/ -static void i40e_handle_mdd_event(struct i40e_pf *pf) +static void ixl_handle_mdd_event(struct ixl_pf *pf) { struct i40e_hw *hw = &pf->hw; device_t dev = pf->dev; @@ -3575,215 +3628,215 @@ static void i40e_handle_mdd_event(struct i40e_pf *pf) reg = rd32(hw, I40E_PFINT_ICR0_ENA); reg |= I40E_PFINT_ICR0_ENA_MAL_DETECT_MASK; wr32(hw, I40E_PFINT_ICR0_ENA, reg); - i40e_flush(hw); + ixl_flush(hw); } static void -i40e_enable_intr(struct i40e_vsi *vsi) +ixl_enable_intr(struct ixl_vsi *vsi) { struct i40e_hw *hw = vsi->hw; - struct i40e_queue *que = vsi->queues; + struct ixl_queue *que = vsi->queues; - if (i40e_enable_msix) { - i40e_enable_adminq(hw); + if (ixl_enable_msix) { + ixl_enable_adminq(hw); for (int i = 0; i < vsi->num_queues; i++, que++) - i40e_enable_queue(hw, que->me); + ixl_enable_queue(hw, que->me); } else - i40e_enable_legacy(hw); + ixl_enable_legacy(hw); } static void -i40e_disable_intr(struct i40e_vsi *vsi) +ixl_disable_intr(struct ixl_vsi *vsi) { struct i40e_hw *hw = vsi->hw; - struct i40e_queue *que = vsi->queues; + struct ixl_queue *que = vsi->queues; - if (i40e_enable_msix) { - i40e_disable_adminq(hw); + if (ixl_enable_msix) { + ixl_disable_adminq(hw); for (int i = 0; i < vsi->num_queues; i++, que++) - i40e_disable_queue(hw, que->me); + ixl_disable_queue(hw, que->me); } else - i40e_disable_legacy(hw); + ixl_disable_legacy(hw); } static void -i40e_enable_adminq(struct i40e_hw *hw) +ixl_enable_adminq(struct i40e_hw *hw) { u32 reg; reg = I40E_PFINT_DYN_CTL0_INTENA_MASK | I40E_PFINT_DYN_CTL0_CLEARPBA_MASK | - (I40E_ITR_NONE << I40E_PFINT_DYN_CTL0_ITR_INDX_SHIFT); + (IXL_ITR_NONE << I40E_PFINT_DYN_CTL0_ITR_INDX_SHIFT); wr32(hw, I40E_PFINT_DYN_CTL0, reg); - i40e_flush(hw); + ixl_flush(hw); return; } static void -i40e_disable_adminq(struct i40e_hw *hw) +ixl_disable_adminq(struct i40e_hw *hw) { u32 reg; - reg = I40E_ITR_NONE << I40E_PFINT_DYN_CTL0_ITR_INDX_SHIFT; + reg = IXL_ITR_NONE << I40E_PFINT_DYN_CTL0_ITR_INDX_SHIFT; wr32(hw, I40E_PFINT_DYN_CTL0, reg); return; } static void -i40e_enable_queue(struct i40e_hw *hw, int id) +ixl_enable_queue(struct i40e_hw *hw, int id) { u32 reg; reg = I40E_PFINT_DYN_CTLN_INTENA_MASK | I40E_PFINT_DYN_CTLN_CLEARPBA_MASK | - (I40E_ITR_NONE << I40E_PFINT_DYN_CTLN_ITR_INDX_SHIFT); + (IXL_ITR_NONE << I40E_PFINT_DYN_CTLN_ITR_INDX_SHIFT); wr32(hw, I40E_PFINT_DYN_CTLN(id), reg); } static void -i40e_disable_queue(struct i40e_hw *hw, int id) +ixl_disable_queue(struct i40e_hw *hw, int id) { u32 reg; - reg = I40E_ITR_NONE << I40E_PFINT_DYN_CTLN_ITR_INDX_SHIFT; + reg = IXL_ITR_NONE << I40E_PFINT_DYN_CTLN_ITR_INDX_SHIFT; wr32(hw, I40E_PFINT_DYN_CTLN(id), reg); return; } static void -i40e_enable_legacy(struct i40e_hw *hw) +ixl_enable_legacy(struct i40e_hw *hw) { u32 reg; reg = I40E_PFINT_DYN_CTL0_INTENA_MASK | I40E_PFINT_DYN_CTL0_CLEARPBA_MASK | - (I40E_ITR_NONE << I40E_PFINT_DYN_CTL0_ITR_INDX_SHIFT); + (IXL_ITR_NONE << I40E_PFINT_DYN_CTL0_ITR_INDX_SHIFT); wr32(hw, I40E_PFINT_DYN_CTL0, reg); } static void -i40e_disable_legacy(struct i40e_hw *hw) +ixl_disable_legacy(struct i40e_hw *hw) { u32 reg; - reg = I40E_ITR_NONE << I40E_PFINT_DYN_CTL0_ITR_INDX_SHIFT; + reg = IXL_ITR_NONE << I40E_PFINT_DYN_CTL0_ITR_INDX_SHIFT; wr32(hw, I40E_PFINT_DYN_CTL0, reg); return; } static void -i40e_update_stats_counters(struct i40e_pf *pf) +ixl_update_stats_counters(struct ixl_pf *pf) { struct i40e_hw *hw = &pf->hw; - struct i40e_vsi *vsi = &pf->vsi; + struct ixl_vsi *vsi = &pf->vsi; struct ifnet *ifp = vsi->ifp; struct i40e_hw_port_stats *nsd = &pf->stats; struct i40e_hw_port_stats *osd = &pf->stats_offsets; /* Update hw stats */ - i40e_stat_update32(hw, I40E_GLPRT_CRCERRS(hw->port), + ixl_stat_update32(hw, I40E_GLPRT_CRCERRS(hw->port), pf->stat_offsets_loaded, &osd->crc_errors, &nsd->crc_errors); - i40e_stat_update32(hw, I40E_GLPRT_ILLERRC(hw->port), + ixl_stat_update32(hw, I40E_GLPRT_ILLERRC(hw->port), pf->stat_offsets_loaded, &osd->illegal_bytes, &nsd->illegal_bytes); - i40e_stat_update48(hw, I40E_GLPRT_GORCH(hw->port), + ixl_stat_update48(hw, I40E_GLPRT_GORCH(hw->port), I40E_GLPRT_GORCL(hw->port), pf->stat_offsets_loaded, &osd->eth.rx_bytes, &nsd->eth.rx_bytes); - i40e_stat_update48(hw, I40E_GLPRT_GOTCH(hw->port), + ixl_stat_update48(hw, I40E_GLPRT_GOTCH(hw->port), I40E_GLPRT_GOTCL(hw->port), pf->stat_offsets_loaded, &osd->eth.tx_bytes, &nsd->eth.tx_bytes); - i40e_stat_update32(hw, I40E_GLPRT_RDPC(hw->port), + ixl_stat_update32(hw, I40E_GLPRT_RDPC(hw->port), pf->stat_offsets_loaded, &osd->eth.rx_discards, &nsd->eth.rx_discards); - i40e_stat_update32(hw, I40E_GLPRT_TDPC(hw->port), + ixl_stat_update32(hw, I40E_GLPRT_TDPC(hw->port), pf->stat_offsets_loaded, &osd->eth.tx_discards, &nsd->eth.tx_discards); - i40e_stat_update48(hw, I40E_GLPRT_UPRCH(hw->port), + ixl_stat_update48(hw, I40E_GLPRT_UPRCH(hw->port), I40E_GLPRT_UPRCL(hw->port), pf->stat_offsets_loaded, &osd->eth.rx_unicast, &nsd->eth.rx_unicast); - i40e_stat_update48(hw, I40E_GLPRT_UPTCH(hw->port), + ixl_stat_update48(hw, I40E_GLPRT_UPTCH(hw->port), I40E_GLPRT_UPTCL(hw->port), pf->stat_offsets_loaded, &osd->eth.tx_unicast, &nsd->eth.tx_unicast); - i40e_stat_update48(hw, I40E_GLPRT_MPRCH(hw->port), + ixl_stat_update48(hw, I40E_GLPRT_MPRCH(hw->port), I40E_GLPRT_MPRCL(hw->port), pf->stat_offsets_loaded, &osd->eth.rx_multicast, &nsd->eth.rx_multicast); - i40e_stat_update48(hw, I40E_GLPRT_MPTCH(hw->port), + ixl_stat_update48(hw, I40E_GLPRT_MPTCH(hw->port), I40E_GLPRT_MPTCL(hw->port), pf->stat_offsets_loaded, &osd->eth.tx_multicast, &nsd->eth.tx_multicast); - i40e_stat_update48(hw, I40E_GLPRT_BPRCH(hw->port), + ixl_stat_update48(hw, I40E_GLPRT_BPRCH(hw->port), I40E_GLPRT_BPRCL(hw->port), pf->stat_offsets_loaded, &osd->eth.rx_broadcast, &nsd->eth.rx_broadcast); - i40e_stat_update48(hw, I40E_GLPRT_BPTCH(hw->port), + ixl_stat_update48(hw, I40E_GLPRT_BPTCH(hw->port), I40E_GLPRT_BPTCL(hw->port), pf->stat_offsets_loaded, &osd->eth.tx_broadcast, &nsd->eth.tx_broadcast); - i40e_stat_update32(hw, I40E_GLPRT_TDOLD(hw->port), + ixl_stat_update32(hw, I40E_GLPRT_TDOLD(hw->port), pf->stat_offsets_loaded, &osd->tx_dropped_link_down, &nsd->tx_dropped_link_down); - i40e_stat_update32(hw, I40E_GLPRT_MLFC(hw->port), + ixl_stat_update32(hw, I40E_GLPRT_MLFC(hw->port), pf->stat_offsets_loaded, &osd->mac_local_faults, &nsd->mac_local_faults); - i40e_stat_update32(hw, I40E_GLPRT_MRFC(hw->port), + ixl_stat_update32(hw, I40E_GLPRT_MRFC(hw->port), pf->stat_offsets_loaded, &osd->mac_remote_faults, &nsd->mac_remote_faults); - i40e_stat_update32(hw, I40E_GLPRT_RLEC(hw->port), + ixl_stat_update32(hw, I40E_GLPRT_RLEC(hw->port), pf->stat_offsets_loaded, &osd->rx_length_errors, &nsd->rx_length_errors); /* Flow control (LFC) stats */ - i40e_stat_update32(hw, I40E_GLPRT_LXONRXC(hw->port), + ixl_stat_update32(hw, I40E_GLPRT_LXONRXC(hw->port), pf->stat_offsets_loaded, &osd->link_xon_rx, &nsd->link_xon_rx); - i40e_stat_update32(hw, I40E_GLPRT_LXONTXC(hw->port), + ixl_stat_update32(hw, I40E_GLPRT_LXONTXC(hw->port), pf->stat_offsets_loaded, &osd->link_xon_tx, &nsd->link_xon_tx); - i40e_stat_update32(hw, I40E_GLPRT_LXOFFRXC(hw->port), + ixl_stat_update32(hw, I40E_GLPRT_LXOFFRXC(hw->port), pf->stat_offsets_loaded, &osd->link_xoff_rx, &nsd->link_xoff_rx); - i40e_stat_update32(hw, I40E_GLPRT_LXOFFTXC(hw->port), + ixl_stat_update32(hw, I40E_GLPRT_LXOFFTXC(hw->port), pf->stat_offsets_loaded, &osd->link_xoff_tx, &nsd->link_xoff_tx); /* Priority flow control stats */ #if 0 for (int i = 0; i < 8; i++) { - i40e_stat_update32(hw, I40E_GLPRT_PXONRXC(hw->port, i), + ixl_stat_update32(hw, I40E_GLPRT_PXONRXC(hw->port, i), pf->stat_offsets_loaded, &osd->priority_xon_rx[i], &nsd->priority_xon_rx[i]); - i40e_stat_update32(hw, I40E_GLPRT_PXONTXC(hw->port, i), + ixl_stat_update32(hw, I40E_GLPRT_PXONTXC(hw->port, i), pf->stat_offsets_loaded, &osd->priority_xon_tx[i], &nsd->priority_xon_tx[i]); - i40e_stat_update32(hw, I40E_GLPRT_PXOFFTXC(hw->port, i), + ixl_stat_update32(hw, I40E_GLPRT_PXOFFTXC(hw->port, i), pf->stat_offsets_loaded, &osd->priority_xoff_tx[i], &nsd->priority_xoff_tx[i]); - i40e_stat_update32(hw, + ixl_stat_update32(hw, I40E_GLPRT_RXON2OFFCNT(hw->port, i), pf->stat_offsets_loaded, &osd->priority_xon_2_xoff[i], @@ -3792,82 +3845,82 @@ i40e_update_stats_counters(struct i40e_pf *pf) #endif /* Packet size stats rx */ - i40e_stat_update48(hw, I40E_GLPRT_PRC64H(hw->port), + ixl_stat_update48(hw, I40E_GLPRT_PRC64H(hw->port), I40E_GLPRT_PRC64L(hw->port), pf->stat_offsets_loaded, &osd->rx_size_64, &nsd->rx_size_64); - i40e_stat_update48(hw, I40E_GLPRT_PRC127H(hw->port), + ixl_stat_update48(hw, I40E_GLPRT_PRC127H(hw->port), I40E_GLPRT_PRC127L(hw->port), pf->stat_offsets_loaded, &osd->rx_size_127, &nsd->rx_size_127); - i40e_stat_update48(hw, I40E_GLPRT_PRC255H(hw->port), + ixl_stat_update48(hw, I40E_GLPRT_PRC255H(hw->port), I40E_GLPRT_PRC255L(hw->port), pf->stat_offsets_loaded, &osd->rx_size_255, &nsd->rx_size_255); - i40e_stat_update48(hw, I40E_GLPRT_PRC511H(hw->port), + ixl_stat_update48(hw, I40E_GLPRT_PRC511H(hw->port), I40E_GLPRT_PRC511L(hw->port), pf->stat_offsets_loaded, &osd->rx_size_511, &nsd->rx_size_511); - i40e_stat_update48(hw, I40E_GLPRT_PRC1023H(hw->port), + ixl_stat_update48(hw, I40E_GLPRT_PRC1023H(hw->port), I40E_GLPRT_PRC1023L(hw->port), pf->stat_offsets_loaded, &osd->rx_size_1023, &nsd->rx_size_1023); - i40e_stat_update48(hw, I40E_GLPRT_PRC1522H(hw->port), + ixl_stat_update48(hw, I40E_GLPRT_PRC1522H(hw->port), I40E_GLPRT_PRC1522L(hw->port), pf->stat_offsets_loaded, &osd->rx_size_1522, &nsd->rx_size_1522); - i40e_stat_update48(hw, I40E_GLPRT_PRC9522H(hw->port), + ixl_stat_update48(hw, I40E_GLPRT_PRC9522H(hw->port), I40E_GLPRT_PRC9522L(hw->port), pf->stat_offsets_loaded, &osd->rx_size_big, &nsd->rx_size_big); /* Packet size stats tx */ - i40e_stat_update48(hw, I40E_GLPRT_PTC64H(hw->port), + ixl_stat_update48(hw, I40E_GLPRT_PTC64H(hw->port), I40E_GLPRT_PTC64L(hw->port), pf->stat_offsets_loaded, &osd->tx_size_64, &nsd->tx_size_64); - i40e_stat_update48(hw, I40E_GLPRT_PTC127H(hw->port), + ixl_stat_update48(hw, I40E_GLPRT_PTC127H(hw->port), I40E_GLPRT_PTC127L(hw->port), pf->stat_offsets_loaded, &osd->tx_size_127, &nsd->tx_size_127); - i40e_stat_update48(hw, I40E_GLPRT_PTC255H(hw->port), + ixl_stat_update48(hw, I40E_GLPRT_PTC255H(hw->port), I40E_GLPRT_PTC255L(hw->port), pf->stat_offsets_loaded, &osd->tx_size_255, &nsd->tx_size_255); - i40e_stat_update48(hw, I40E_GLPRT_PTC511H(hw->port), + ixl_stat_update48(hw, I40E_GLPRT_PTC511H(hw->port), I40E_GLPRT_PTC511L(hw->port), pf->stat_offsets_loaded, &osd->tx_size_511, &nsd->tx_size_511); - i40e_stat_update48(hw, I40E_GLPRT_PTC1023H(hw->port), + ixl_stat_update48(hw, I40E_GLPRT_PTC1023H(hw->port), I40E_GLPRT_PTC1023L(hw->port), pf->stat_offsets_loaded, &osd->tx_size_1023, &nsd->tx_size_1023); - i40e_stat_update48(hw, I40E_GLPRT_PTC1522H(hw->port), + ixl_stat_update48(hw, I40E_GLPRT_PTC1522H(hw->port), I40E_GLPRT_PTC1522L(hw->port), pf->stat_offsets_loaded, &osd->tx_size_1522, &nsd->tx_size_1522); - i40e_stat_update48(hw, I40E_GLPRT_PTC9522H(hw->port), + ixl_stat_update48(hw, I40E_GLPRT_PTC9522H(hw->port), I40E_GLPRT_PTC9522L(hw->port), pf->stat_offsets_loaded, &osd->tx_size_big, &nsd->tx_size_big); - i40e_stat_update32(hw, I40E_GLPRT_RUC(hw->port), + ixl_stat_update32(hw, I40E_GLPRT_RUC(hw->port), pf->stat_offsets_loaded, &osd->rx_undersize, &nsd->rx_undersize); - i40e_stat_update32(hw, I40E_GLPRT_RFC(hw->port), + ixl_stat_update32(hw, I40E_GLPRT_RFC(hw->port), pf->stat_offsets_loaded, &osd->rx_fragments, &nsd->rx_fragments); - i40e_stat_update32(hw, I40E_GLPRT_ROC(hw->port), + ixl_stat_update32(hw, I40E_GLPRT_ROC(hw->port), pf->stat_offsets_loaded, &osd->rx_oversize, &nsd->rx_oversize); - i40e_stat_update32(hw, I40E_GLPRT_RJC(hw->port), + ixl_stat_update32(hw, I40E_GLPRT_RJC(hw->port), pf->stat_offsets_loaded, &osd->rx_jabber, &nsd->rx_jabber); pf->stat_offsets_loaded = true; /* End hw stats */ /* Update vsi stats */ - i40e_update_eth_stats(vsi); + ixl_update_eth_stats(vsi); /* OS statistics */ // ERJ - these are per-port, update all vsis? @@ -3879,18 +3932,18 @@ i40e_update_stats_counters(struct i40e_pf *pf) ** - do outside interrupt since it might sleep */ static void -i40e_do_adminq(void *context, int pending) +ixl_do_adminq(void *context, int pending) { - struct i40e_pf *pf = context; + struct ixl_pf *pf = context; struct i40e_hw *hw = &pf->hw; - struct i40e_vsi *vsi = &pf->vsi; + struct ixl_vsi *vsi = &pf->vsi; struct i40e_arq_event_info event; i40e_status ret; u32 reg, loop = 0; u16 opcode, result; - event.msg_size = I40E_AQ_BUF_SZ; - event.msg_buf = malloc(event.msg_size, + event.msg_len = IXL_AQ_BUF_SZ; + event.msg_buf = malloc(event.msg_len, M_DEVBUF, M_NOWAIT | M_ZERO); if (!event.msg_buf) { printf("Unable to allocate adminq memory\n"); @@ -3905,8 +3958,8 @@ i40e_do_adminq(void *context, int pending) opcode = LE16_TO_CPU(event.desc.opcode); switch (opcode) { case i40e_aqc_opc_get_link_status: - vsi->link_up = i40e_config_link(hw); - i40e_update_link_status(pf); + vsi->link_up = ixl_config_link(hw); + ixl_update_link_status(pf); break; case i40e_aqc_opc_send_msg_to_pf: /* process pf/vf communication here */ @@ -3914,13 +3967,13 @@ i40e_do_adminq(void *context, int pending) case i40e_aqc_opc_event_lan_overflow: break; default: -#ifdef I40E_DEBUG +#ifdef IXL_DEBUG printf("AdminQ unknown event %x\n", opcode); #endif break; } - } while (result && (loop++ < I40E_ADM_LIMIT)); + } while (result && (loop++ < IXL_ADM_LIMIT)); reg = rd32(hw, I40E_PFINT_ICR0_ENA); reg |= I40E_PFINT_ICR0_ENA_ADMINQ_MASK; @@ -3928,15 +3981,15 @@ i40e_do_adminq(void *context, int pending) free(event.msg_buf, M_DEVBUF); if (pf->msix > 1) - i40e_enable_adminq(&pf->hw); + ixl_enable_adminq(&pf->hw); else - i40e_enable_intr(vsi); + ixl_enable_intr(vsi); } static int -i40e_debug_info(SYSCTL_HANDLER_ARGS) +ixl_debug_info(SYSCTL_HANDLER_ARGS) { - struct i40e_pf *pf; + struct ixl_pf *pf; int error, input = 0; error = sysctl_handle_int(oidp, &input, 0, req); @@ -3945,19 +3998,19 @@ i40e_debug_info(SYSCTL_HANDLER_ARGS) return (error); if (input == 1) { - pf = (struct i40e_pf *)arg1; - i40e_print_debug_info(pf); + pf = (struct ixl_pf *)arg1; + ixl_print_debug_info(pf); } return (error); } static void -i40e_print_debug_info(struct i40e_pf *pf) +ixl_print_debug_info(struct ixl_pf *pf) { struct i40e_hw *hw = &pf->hw; - struct i40e_vsi *vsi = &pf->vsi; - struct i40e_queue *que = vsi->queues; + struct ixl_vsi *vsi = &pf->vsi; + struct ixl_queue *que = vsi->queues; struct rx_ring *rxr = &que->rxr; struct tx_ring *txr = &que->txr; u32 reg; @@ -4001,9 +4054,9 @@ i40e_print_debug_info(struct i40e_pf *pf) /** * Update VSI-specific ethernet statistics counters. **/ -void i40e_update_eth_stats(struct i40e_vsi *vsi) +void ixl_update_eth_stats(struct ixl_vsi *vsi) { - struct i40e_pf *pf = (struct i40e_pf *)vsi->back; + struct ixl_pf *pf = (struct ixl_pf *)vsi->back; struct i40e_hw *hw = &pf->hw; struct ifnet *ifp = vsi->ifp; struct i40e_eth_stats *es; @@ -4014,43 +4067,43 @@ void i40e_update_eth_stats(struct i40e_vsi *vsi) oes = &vsi->eth_stats_offsets; /* Gather up the stats that the hw collects */ - i40e_stat_update32(hw, I40E_GLV_TEPC(stat_idx), + ixl_stat_update32(hw, I40E_GLV_TEPC(stat_idx), vsi->stat_offsets_loaded, &oes->tx_errors, &es->tx_errors); - i40e_stat_update32(hw, I40E_GLV_RDPC(stat_idx), + ixl_stat_update32(hw, I40E_GLV_RDPC(stat_idx), vsi->stat_offsets_loaded, &oes->rx_discards, &es->rx_discards); - i40e_stat_update48(hw, I40E_GLV_GORCH(stat_idx), + ixl_stat_update48(hw, I40E_GLV_GORCH(stat_idx), I40E_GLV_GORCL(stat_idx), vsi->stat_offsets_loaded, &oes->rx_bytes, &es->rx_bytes); - i40e_stat_update48(hw, I40E_GLV_UPRCH(stat_idx), + ixl_stat_update48(hw, I40E_GLV_UPRCH(stat_idx), I40E_GLV_UPRCL(stat_idx), vsi->stat_offsets_loaded, &oes->rx_unicast, &es->rx_unicast); - i40e_stat_update48(hw, I40E_GLV_MPRCH(stat_idx), + ixl_stat_update48(hw, I40E_GLV_MPRCH(stat_idx), I40E_GLV_MPRCL(stat_idx), vsi->stat_offsets_loaded, &oes->rx_multicast, &es->rx_multicast); - i40e_stat_update48(hw, I40E_GLV_BPRCH(stat_idx), + ixl_stat_update48(hw, I40E_GLV_BPRCH(stat_idx), I40E_GLV_BPRCL(stat_idx), vsi->stat_offsets_loaded, &oes->rx_broadcast, &es->rx_broadcast); - i40e_stat_update48(hw, I40E_GLV_GOTCH(stat_idx), + ixl_stat_update48(hw, I40E_GLV_GOTCH(stat_idx), I40E_GLV_GOTCL(stat_idx), vsi->stat_offsets_loaded, &oes->tx_bytes, &es->tx_bytes); - i40e_stat_update48(hw, I40E_GLV_UPTCH(stat_idx), + ixl_stat_update48(hw, I40E_GLV_UPTCH(stat_idx), I40E_GLV_UPTCL(stat_idx), vsi->stat_offsets_loaded, &oes->tx_unicast, &es->tx_unicast); - i40e_stat_update48(hw, I40E_GLV_MPTCH(stat_idx), + ixl_stat_update48(hw, I40E_GLV_MPTCH(stat_idx), I40E_GLV_MPTCL(stat_idx), vsi->stat_offsets_loaded, &oes->tx_multicast, &es->tx_multicast); - i40e_stat_update48(hw, I40E_GLV_BPTCH(stat_idx), + ixl_stat_update48(hw, I40E_GLV_BPTCH(stat_idx), I40E_GLV_BPTCL(stat_idx), vsi->stat_offsets_loaded, &oes->tx_broadcast, &es->tx_broadcast); @@ -4077,7 +4130,7 @@ void i40e_update_eth_stats(struct i40e_vsi *vsi) /** * Reset all of the stats for the given pf **/ -void i40e_pf_reset_stats(struct i40e_pf *pf) +void ixl_pf_reset_stats(struct ixl_pf *pf) { bzero(&pf->stats, sizeof(struct i40e_hw_port_stats)); bzero(&pf->stats_offsets, sizeof(struct i40e_hw_port_stats)); @@ -4087,7 +4140,7 @@ void i40e_pf_reset_stats(struct i40e_pf *pf) /** * Resets all stats of the given vsi **/ -void i40e_vsi_reset_stats(struct i40e_vsi *vsi) +void ixl_vsi_reset_stats(struct ixl_vsi *vsi) { bzero(&vsi->eth_stats, sizeof(struct i40e_eth_stats)); bzero(&vsi->eth_stats_offsets, sizeof(struct i40e_eth_stats)); @@ -4103,7 +4156,7 @@ void i40e_vsi_reset_stats(struct i40e_vsi *vsi) * to report stats that count from zero. **/ static void -i40e_stat_update48(struct i40e_hw *hw, u32 hireg, u32 loreg, +ixl_stat_update48(struct i40e_hw *hw, u32 hireg, u32 loreg, bool offset_loaded, u64 *offset, u64 *stat) { u64 new_data; @@ -4132,7 +4185,7 @@ i40e_stat_update48(struct i40e_hw *hw, u32 hireg, u32 loreg, * Read and update a 32 bit stat from the hw **/ static void -i40e_stat_update32(struct i40e_hw *hw, u32 reg, +ixl_stat_update32(struct i40e_hw *hw, u32 reg, bool offset_loaded, u64 *offset, u64 *stat) { u32 new_data; @@ -4154,7 +4207,7 @@ i40e_stat_update32(struct i40e_hw *hw, u32 reg, ** 3 - full */ static int -i40e_set_flowcntl(SYSCTL_HANDLER_ARGS) +ixl_set_flowcntl(SYSCTL_HANDLER_ARGS) { /* * TODO: ensure flow control is disabled if @@ -4163,7 +4216,7 @@ i40e_set_flowcntl(SYSCTL_HANDLER_ARGS) * TODO: ensure tx CRC by hardware should be enabled * if tx flow control is enabled. */ - struct i40e_pf *pf = (struct i40e_pf *)arg1; + struct ixl_pf *pf = (struct ixl_pf *)arg1; struct i40e_hw *hw = &pf->hw; device_t dev = pf->dev; int requested_fc = 0, error = 0; @@ -4214,30 +4267,76 @@ i40e_set_flowcntl(SYSCTL_HANDLER_ARGS) device_printf(dev, "%s: FC set failure:\n", __func__); device_printf(dev, "%s: Current: %s / Requested: %s\n", __func__, - i40e_fc_string[hw->fc.current_mode], - i40e_fc_string[hw->fc.requested_mode]); + ixl_fc_string[hw->fc.current_mode], + ixl_fc_string[hw->fc.requested_mode]); } return (0); } +static int +ixl_current_speed(SYSCTL_HANDLER_ARGS) +{ + struct ixl_pf *pf = (struct ixl_pf *)arg1; + struct i40e_hw *hw = &pf->hw; + int error = 0, index = 0; + + char *speeds[] = { + "Unknown", + "100M", + "1G", + "10G", + "40G", + "20G" + }; + + ixl_update_link_status(pf); + + switch (hw->phy.link_info.link_speed) { + case I40E_LINK_SPEED_100MB: + index = 1; + break; + case I40E_LINK_SPEED_1GB: + index = 2; + break; + case I40E_LINK_SPEED_10GB: + index = 3; + break; + case I40E_LINK_SPEED_40GB: + index = 4; + break; + case I40E_LINK_SPEED_20GB: + index = 5; + break; + case I40E_LINK_SPEED_UNKNOWN: + default: + index = 0; + break; + } + + error = sysctl_handle_string(oidp, speeds[index], + strlen(speeds[index]), req); + return (error); +} + /* ** Control link advertise speed: -** 1 - advertise 1G only -** 2 - advertise 10G only -** 3 - advertise 1 and 10G +** Flags: +** 0x1 - advertise 100 Mb +** 0x2 - advertise 1G +** 0x4 - advertise 10G ** ** Does not work on 40G devices. */ static int -i40e_set_advertise(SYSCTL_HANDLER_ARGS) +ixl_set_advertise(SYSCTL_HANDLER_ARGS) { - struct i40e_pf *pf = (struct i40e_pf *)arg1; + struct ixl_pf *pf = (struct ixl_pf *)arg1; struct i40e_hw *hw = &pf->hw; device_t dev = pf->dev; struct i40e_aq_get_phy_abilities_resp abilities; struct i40e_aq_set_phy_config config; - int current_ls = 0, requested_ls = 0; + int requested_ls = 0; enum i40e_status_code aq_error = 0; int error = 0; @@ -4248,41 +4347,30 @@ i40e_set_advertise(SYSCTL_HANDLER_ARGS) if (i40e_is_40G_device(hw->device_id)) return (ENODEV); - /* Get current capability information */ - aq_error = i40e_aq_get_phy_capabilities(hw, FALSE, FALSE, &abilities, NULL); - if (aq_error) { - device_printf(dev, "%s: Error getting phy capabilities %d," - " aq error: %d\n", __func__, aq_error, - hw->aq.asq_last_status); - return (EAGAIN); - } - - /* Figure out current mode */ - else if (abilities.link_speed & I40E_LINK_SPEED_10GB - && abilities.link_speed & I40E_LINK_SPEED_1GB) - current_ls = 3; - else if (abilities.link_speed & I40E_LINK_SPEED_10GB) - current_ls = 2; - else if (abilities.link_speed & I40E_LINK_SPEED_1GB) - current_ls = 1; - else - current_ls = 0; - /* Read in new mode */ - requested_ls = current_ls; + requested_ls = pf->advertised_speed; error = sysctl_handle_int(oidp, &requested_ls, 0, req); if ((error) || (req->newptr == NULL)) return (error); - if (requested_ls < 1 || requested_ls > 3) { + if (requested_ls < 1 || requested_ls > 7) { device_printf(dev, - "Invalid advertised speed; valid modes are 1 through 3\n"); + "Invalid advertised speed; valid modes are 0x1 through 0x7\n"); return (EINVAL); } /* Exit if no change */ - if (current_ls == requested_ls) + if (pf->advertised_speed == requested_ls) return (0); + /* Get current capability information */ + aq_error = i40e_aq_get_phy_capabilities(hw, FALSE, FALSE, &abilities, NULL); + if (aq_error) { + device_printf(dev, "%s: Error getting phy capabilities %d," + " aq error: %d\n", __func__, aq_error, + hw->aq.asq_last_status); + return (EAGAIN); + } + /* Prepare new config */ bzero(&config, sizeof(config)); config.phy_type = abilities.phy_type; @@ -4292,18 +4380,12 @@ i40e_set_advertise(SYSCTL_HANDLER_ARGS) config.eeer = abilities.eeer_val; config.low_power_ctrl = abilities.d3_lpan; /* Translate into aq cmd link_speed */ - switch (requested_ls) { - case 3: - config.link_speed = I40E_LINK_SPEED_10GB - | I40E_LINK_SPEED_1GB; - case 2: - config.link_speed = I40E_LINK_SPEED_10GB; - case 1: - config.link_speed = I40E_LINK_SPEED_1GB; - default: - // nothing should get here - break; - } + if (requested_ls & 0x4) + config.link_speed |= I40E_LINK_SPEED_10GB; + if (requested_ls & 0x2) + config.link_speed |= I40E_LINK_SPEED_1GB; + if (requested_ls & 0x1) + config.link_speed |= I40E_LINK_SPEED_100MB; /* Do aq command & restart link */ aq_error = i40e_aq_set_phy_config(hw, &config, NULL); @@ -4314,7 +4396,8 @@ i40e_set_advertise(SYSCTL_HANDLER_ARGS) return (EAGAIN); } - i40e_update_link_status(pf); + pf->advertised_speed = requested_ls; + ixl_update_link_status(pf); return (0); } @@ -4323,7 +4406,7 @@ i40e_set_advertise(SYSCTL_HANDLER_ARGS) ** the bus this adapter is plugged into. */ static u16 -i40e_get_bus_info(struct i40e_hw *hw, device_t dev) +ixl_get_bus_info(struct i40e_hw *hw, device_t dev) { u16 link; u32 offset; @@ -4390,11 +4473,11 @@ i40e_get_bus_info(struct i40e_hw *hw, device_t dev) return (link); } -#ifdef I40E_DEBUG +#ifdef IXL_DEBUG static int -i40e_sysctl_link_status(SYSCTL_HANDLER_ARGS) +ixl_sysctl_link_status(SYSCTL_HANDLER_ARGS) { - struct i40e_pf *pf = (struct i40e_pf *)arg1; + struct ixl_pf *pf = (struct ixl_pf *)arg1; struct i40e_hw *hw = &pf->hw; struct i40e_link_status link_status; char buf[512]; @@ -4421,9 +4504,9 @@ i40e_sysctl_link_status(SYSCTL_HANDLER_ARGS) } static int -i40e_sysctl_phy_abilities(SYSCTL_HANDLER_ARGS) +ixl_sysctl_phy_abilities(SYSCTL_HANDLER_ARGS) { - struct i40e_pf *pf = (struct i40e_pf *)arg1; + struct ixl_pf *pf = (struct ixl_pf *)arg1; struct i40e_hw *hw = &pf->hw; struct i40e_aq_get_phy_abilities_resp abilities_resp; char buf[512]; @@ -4452,11 +4535,11 @@ i40e_sysctl_phy_abilities(SYSCTL_HANDLER_ARGS) } static int -i40e_sysctl_sw_filter_list(SYSCTL_HANDLER_ARGS) +ixl_sysctl_sw_filter_list(SYSCTL_HANDLER_ARGS) { - struct i40e_pf *pf = (struct i40e_pf *)arg1; - struct i40e_vsi *vsi = &pf->vsi; - struct i40e_mac_filter *f; + struct ixl_pf *pf = (struct ixl_pf *)arg1; + struct ixl_vsi *vsi = &pf->vsi; + struct ixl_mac_filter *f; char *buf, *buf_i; int error = 0; @@ -4497,18 +4580,18 @@ i40e_sysctl_sw_filter_list(SYSCTL_HANDLER_ARGS) return error; } -#define I40E_SW_RES_SIZE 0x14 +#define IXL_SW_RES_SIZE 0x14 static int -i40e_sysctl_hw_res_info(SYSCTL_HANDLER_ARGS) +ixl_sysctl_hw_res_info(SYSCTL_HANDLER_ARGS) { - struct i40e_pf *pf = (struct i40e_pf *)arg1; + struct ixl_pf *pf = (struct ixl_pf *)arg1; struct i40e_hw *hw = &pf->hw; device_t dev = pf->dev; struct sbuf *buf; int error = 0; u8 num_entries; - struct i40e_aqc_switch_resource_alloc_element_resp resp[I40E_SW_RES_SIZE]; + struct i40e_aqc_switch_resource_alloc_element_resp resp[IXL_SW_RES_SIZE]; buf = sbuf_new_for_sysctl(NULL, NULL, 0, req); if (!buf) { @@ -4518,7 +4601,7 @@ i40e_sysctl_hw_res_info(SYSCTL_HANDLER_ARGS) error = i40e_aq_get_switch_resource_alloc(hw, &num_entries, resp, - I40E_SW_RES_SIZE, + IXL_SW_RES_SIZE, NULL); if (error) { device_printf(dev, "%s: get_switch_resource_alloc() error %d, aq error %d\n", @@ -4565,9 +4648,9 @@ i40e_sysctl_hw_res_info(SYSCTL_HANDLER_ARGS) ** TODO: Also needs a queue index input! **/ static int -i40e_sysctl_dump_txd(SYSCTL_HANDLER_ARGS) +ixl_sysctl_dump_txd(SYSCTL_HANDLER_ARGS) { - struct i40e_pf *pf = (struct i40e_pf *)arg1; + struct ixl_pf *pf = (struct ixl_pf *)arg1; device_t dev = pf->dev; struct sbuf *buf; int error = 0; @@ -4599,7 +4682,7 @@ i40e_sysctl_dump_txd(SYSCTL_HANDLER_ARGS) sbuf_cat(buf, "\n"); // set to queue 1? - struct i40e_queue *que = pf->vsi.queues; + struct ixl_queue *que = pf->vsi.queues; struct tx_ring *txr = &(que[1].txr); struct i40e_tx_desc *txd = &txr->base[desc_idx]; diff --git a/sys/dev/ixl/if_ixlv.c b/sys/dev/ixl/if_ixlv.c new file mode 100644 index 0000000..0e6e572 --- /dev/null +++ b/sys/dev/ixl/if_ixlv.c @@ -0,0 +1,2742 @@ +/****************************************************************************** + + Copyright (c) 2013-2014, Intel Corporation + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + 3. Neither the name of the Intel Corporation nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + +******************************************************************************/ +/*$FreeBSD$*/ + +#include "opt_inet.h" +#include "opt_inet6.h" +#include "ixl.h" +#include "ixlv.h" + +/********************************************************************* + * Driver version + *********************************************************************/ +char ixlv_driver_version[] = "1.1.4"; + +/********************************************************************* + * PCI Device ID Table + * + * Used by probe to select devices to load on + * Last field stores an index into ixlv_strings + * Last entry must be all 0s + * + * { Vendor ID, Device ID, SubVendor ID, SubDevice ID, String Index } + *********************************************************************/ + +static ixl_vendor_info_t ixlv_vendor_info_array[] = +{ + {I40E_INTEL_VENDOR_ID, I40E_DEV_ID_VF, 0, 0, 0}, + {I40E_INTEL_VENDOR_ID, I40E_DEV_ID_VF_HV, 0, 0, 0}, + /* required last entry */ + {0, 0, 0, 0, 0} +}; + +/********************************************************************* + * Table of branding strings + *********************************************************************/ + +static char *ixlv_strings[] = { + "Intel(R) Ethernet Connection XL710 VF Driver" +}; + + +/********************************************************************* + * Function prototypes + *********************************************************************/ +static int ixlv_probe(device_t); +static int ixlv_attach(device_t); +static int ixlv_detach(device_t); +static int ixlv_shutdown(device_t); +static void ixlv_init_locked(struct ixlv_sc *); +static int ixlv_allocate_pci_resources(struct ixlv_sc *); +static void ixlv_free_pci_resources(struct ixlv_sc *); +static int ixlv_assign_msix(struct ixlv_sc *); +static int ixlv_init_msix(struct ixlv_sc *); +static int ixlv_init_taskqueue(struct ixlv_sc *); +static int ixlv_setup_queues(struct ixlv_sc *); +static void ixlv_config_rss(struct ixlv_sc *); +static void ixlv_stop(struct ixlv_sc *); +static void ixlv_add_multi(struct ixl_vsi *); +static void ixlv_del_multi(struct ixl_vsi *); +static void ixlv_update_link_status(struct ixlv_sc *); +static void ixlv_free_queues(struct ixl_vsi *); +static int ixlv_setup_interface(device_t, struct ixlv_sc *); + +static int ixlv_media_change(struct ifnet *); +static void ixlv_media_status(struct ifnet *, struct ifmediareq *); + +static void ixlv_local_timer(void *); + +static int ixlv_add_mac_filter(struct ixlv_sc *, u8 *, u16); +static void ixlv_init_filters(struct ixlv_sc *); +static void ixlv_free_filters(struct ixlv_sc *); + +static void ixlv_msix_que(void *); +static void ixlv_msix_adminq(void *); +static void ixlv_do_adminq(void *, int); +static void ixlv_sched_aq(void *); +static void ixlv_handle_que(void *, int); +static int ixlv_reset(struct ixlv_sc *); +static int ixlv_reset_complete(struct i40e_hw *); +static void ixlv_set_queue_rx_itr(struct ixl_queue *); +static void ixlv_set_queue_tx_itr(struct ixl_queue *); + +static void ixlv_enable_adminq_irq(struct i40e_hw *); +static void ixlv_disable_adminq_irq(struct i40e_hw *); +static void ixlv_enable_queue_irq(struct i40e_hw *, int); +static void ixlv_disable_queue_irq(struct i40e_hw *, int); + +static void ixlv_setup_vlan_filters(struct ixlv_sc *); +static void ixlv_register_vlan(void *, struct ifnet *, u16); +static void ixlv_unregister_vlan(void *, struct ifnet *, u16); + +static void ixlv_cap_txcsum_tso(struct ixl_vsi *, + struct ifnet *, int); + +static void ixlv_add_stats_sysctls(struct ixlv_sc *); + +/********************************************************************* + * FreeBSD Device Interface Entry Points + *********************************************************************/ + +static device_method_t ixlv_methods[] = { + /* Device interface */ + DEVMETHOD(device_probe, ixlv_probe), + DEVMETHOD(device_attach, ixlv_attach), + DEVMETHOD(device_detach, ixlv_detach), + DEVMETHOD(device_shutdown, ixlv_shutdown), + {0, 0} +}; + +static driver_t ixlv_driver = { + "ixlv", ixlv_methods, sizeof(struct ixlv_sc), +}; + +devclass_t ixlv_devclass; +DRIVER_MODULE(ixlv, pci, ixlv_driver, ixlv_devclass, 0, 0); + +MODULE_DEPEND(ixlv, pci, 1, 1, 1); +MODULE_DEPEND(ixlv, ether, 1, 1, 1); + +/* +** TUNEABLE PARAMETERS: +*/ + +static SYSCTL_NODE(_hw, OID_AUTO, ixlv, CTLFLAG_RD, 0, + "IXLV driver parameters"); + +/* +** Number of descriptors per ring: +** - TX and RX are the same size +*/ +static int ixlv_ringsz = DEFAULT_RING; +TUNABLE_INT("hw.ixlv.ringsz", &ixlv_ringsz); +SYSCTL_INT(_hw_ixlv, OID_AUTO, ring_size, CTLFLAG_RDTUN, + &ixlv_ringsz, 0, "Descriptor Ring Size"); + +/* Set to zero to auto calculate */ +int ixlv_max_queues = 0; +TUNABLE_INT("hw.ixlv.max_queues", &ixlv_max_queues); +SYSCTL_INT(_hw_ixlv, OID_AUTO, max_queues, CTLFLAG_RDTUN, + &ixlv_max_queues, 0, "Number of Queues"); + +/* +** Number of entries in Tx queue buf_ring. +** Increasing this will reduce the number of +** errors when transmitting fragmented UDP +** packets. +*/ +static int ixlv_txbrsz = DEFAULT_TXBRSZ; +TUNABLE_INT("hw.ixlv.txbrsz", &ixlv_txbrsz); +SYSCTL_INT(_hw_ixlv, OID_AUTO, txbr_size, CTLFLAG_RDTUN, + &ixlv_txbrsz, 0, "TX Buf Ring Size"); + +/* +** Controls for Interrupt Throttling +** - true/false for dynamic adjustment +** - default values for static ITR +*/ +int ixlv_dynamic_rx_itr = 0; +TUNABLE_INT("hw.ixlv.dynamic_rx_itr", &ixlv_dynamic_rx_itr); +SYSCTL_INT(_hw_ixlv, OID_AUTO, dynamic_rx_itr, CTLFLAG_RDTUN, + &ixlv_dynamic_rx_itr, 0, "Dynamic RX Interrupt Rate"); + +int ixlv_dynamic_tx_itr = 0; +TUNABLE_INT("hw.ixlv.dynamic_tx_itr", &ixlv_dynamic_tx_itr); +SYSCTL_INT(_hw_ixlv, OID_AUTO, dynamic_tx_itr, CTLFLAG_RDTUN, + &ixlv_dynamic_tx_itr, 0, "Dynamic TX Interrupt Rate"); + +int ixlv_rx_itr = IXL_ITR_8K; +TUNABLE_INT("hw.ixlv.rx_itr", &ixlv_rx_itr); +SYSCTL_INT(_hw_ixlv, OID_AUTO, rx_itr, CTLFLAG_RDTUN, + &ixlv_rx_itr, 0, "RX Interrupt Rate"); + +int ixlv_tx_itr = IXL_ITR_4K; +TUNABLE_INT("hw.ixlv.tx_itr", &ixlv_tx_itr); +SYSCTL_INT(_hw_ixlv, OID_AUTO, tx_itr, CTLFLAG_RDTUN, + &ixlv_tx_itr, 0, "TX Interrupt Rate"); + + +/********************************************************************* + * Device identification routine + * + * ixlv_probe determines if the driver should be loaded on + * the hardware based on PCI vendor/device id of the device. + * + * return BUS_PROBE_DEFAULT on success, positive on failure + *********************************************************************/ + +static int +ixlv_probe(device_t dev) +{ + ixl_vendor_info_t *ent; + + u16 pci_vendor_id, pci_device_id; + u16 pci_subvendor_id, pci_subdevice_id; + char device_name[256]; + + INIT_DEBUGOUT("ixlv_probe: begin"); + + pci_vendor_id = pci_get_vendor(dev); + if (pci_vendor_id != I40E_INTEL_VENDOR_ID) + return (ENXIO); + + pci_device_id = pci_get_device(dev); + pci_subvendor_id = pci_get_subvendor(dev); + pci_subdevice_id = pci_get_subdevice(dev); + + ent = ixlv_vendor_info_array; + while (ent->vendor_id != 0) { + if ((pci_vendor_id == ent->vendor_id) && + (pci_device_id == ent->device_id) && + + ((pci_subvendor_id == ent->subvendor_id) || + (ent->subvendor_id == 0)) && + + ((pci_subdevice_id == ent->subdevice_id) || + (ent->subdevice_id == 0))) { + sprintf(device_name, "%s, Version - %s", + ixlv_strings[ent->index], + ixlv_driver_version); + device_set_desc_copy(dev, device_name); + return (BUS_PROBE_DEFAULT); + } + ent++; + } + return (ENXIO); +} + +/********************************************************************* + * Device initialization routine + * + * The attach entry point is called when the driver is being loaded. + * This routine identifies the type of hardware, allocates all resources + * and initializes the hardware. + * + * return 0 on success, positive on failure + *********************************************************************/ + +static int +ixlv_attach(device_t dev) +{ + struct ixlv_sc *sc; + struct i40e_hw *hw; + struct ixl_vsi *vsi; + int bufsz, error = 0, retries = 0; + + INIT_DBG_DEV(dev, "begin"); + + /* Allocate, clear, and link in our primary soft structure */ + sc = device_get_softc(dev); + sc->dev = sc->osdep.dev = dev; + hw = &sc->hw; + vsi = &sc->vsi; + vsi->dev = dev; + + /* Allocate filter lists */ + ixlv_init_filters(sc); + + /* Core Lock Init*/ + mtx_init(&sc->mtx, device_get_nameunit(dev), + "IXL SC Lock", MTX_DEF); + mtx_init(&sc->aq_task_mtx, device_get_nameunit(dev), + "IXL AQ Task Lock", MTX_DEF); + + /* Set up the timer & aq watchdog callouts */ + callout_init_mtx(&sc->timer, &sc->mtx, 0); + callout_init_mtx(&sc->aq_task, &sc->aq_task_mtx, 0); + + /* Save off the information about this board */ + hw->vendor_id = pci_get_vendor(dev); + hw->device_id = pci_get_device(dev); + hw->revision_id = pci_read_config(dev, PCIR_REVID, 1); + hw->subsystem_vendor_id = + pci_read_config(dev, PCIR_SUBVEND_0, 2); + hw->subsystem_device_id = + pci_read_config(dev, PCIR_SUBDEV_0, 2); + + hw->bus.device = pci_get_slot(dev); + hw->bus.func = pci_get_function(dev); + + /* Do PCI setup - map BAR0, etc */ + if (ixlv_allocate_pci_resources(sc)) { + device_printf(dev, "%s: Allocation of PCI resources failed\n", + __func__); + error = ENXIO; + goto err_early; + } + + INIT_DBG_DEV(dev, "Allocated PCI resources and MSIX vectors"); + + error = i40e_set_mac_type(hw); + if (error) { + device_printf(dev, "%s: set_mac_type failed: %d\n", + __func__, error); + goto err_pci_res; + } + + error = ixlv_reset_complete(hw); + if (error) { + device_printf(dev, "%s: Device is still being reset\n", + __func__); + goto err_pci_res; + } + + INIT_DBG_DEV(dev, "VF Device is ready for configuration"); + + hw->aq.num_arq_entries = IXL_AQ_LEN; + hw->aq.num_asq_entries = IXL_AQ_LEN; + hw->aq.arq_buf_size = IXL_AQ_BUFSZ; + hw->aq.asq_buf_size = IXL_AQ_BUFSZ; + + error = i40e_init_adminq(hw); + if (error) { + device_printf(dev, "%s: init_adminq failed: %d\n", + __func__, error); + goto err_pci_res; + } + + INIT_DBG_DEV(dev, "Initialized Admin Queue"); + + error = ixlv_send_api_ver(sc); + if (error) { + device_printf(dev, "%s: unable to send to PF (%d)\n", + __func__, error); + goto err_aq; + } + + while (!i40e_asq_done(hw)) { + if (++retries > IXLV_AQ_MAX_ERR) { + device_printf(dev, "%s: Admin Queue timeout " + "(waiting for send_api_ver)\n", __func__); + error = ENXIO; + goto err_aq; + } + i40e_msec_delay(10); + } + + INIT_DBG_DEV(dev, "Sent API version message to PF"); + + /* Wait for API version msg to arrive */ + error = ixlv_verify_api_ver(sc); + if (error) { + device_printf(dev, + "%s: Unable to verify API version, error %d\n", + __func__, error); + goto err_aq; + } + + INIT_DBG_DEV(dev, "PF API version verified"); + + /* Need API version before sending reset message */ + error = ixlv_reset(sc); + if (error) { + device_printf(dev, "VF reset failed; reload the driver\n"); + goto err_aq; + } + + INIT_DBG_DEV(dev, "VF reset complete"); + + /* Ask for VF config from PF */ + error = ixlv_send_vf_config_msg(sc); + if (error) { + device_printf(dev, + "%s: Unable to send VF config request, error %d\n", + __func__, error); + goto err_aq; + } + + retries = 0; + while (!i40e_asq_done(hw)) { + if (++retries > IXLV_AQ_MAX_ERR) { + device_printf(dev, "%s: Admin Queue timeout " + "(waiting for send_vf_config_msg)\n", __func__); + error = ENXIO; + goto err_aq; + } + i40e_msec_delay(10); + } + + INIT_DBG_DEV(dev, "Sent VF config message to PF"); + + bufsz = sizeof(struct i40e_virtchnl_vf_resource) + + (I40E_MAX_VF_VSI * sizeof(struct i40e_virtchnl_vsi_resource)); + sc->vf_res = malloc(bufsz, M_DEVBUF, M_NOWAIT); + if (!sc->vf_res) { + device_printf(dev, + "%s: Unable to allocate memory for VF configuration" + " message from PF\n", __func__); + error = ENOMEM; + goto err_aq; + } + + /* Check for VF config response */ + error = ixlv_get_vf_config(sc); + if (error) { + device_printf(dev, + "%s: Unable to get VF configuration from PF\n", + __func__); + error = EBUSY; + goto err_res_buf; + } + + INIT_DBG_DEV(dev, "Received valid VF config from PF"); + INIT_DBG_DEV(dev, "VSIs %d, Queues %d, Max Vectors %d, Max MTU %d", + sc->vf_res->num_vsis, + sc->vf_res->num_queue_pairs, + sc->vf_res->max_vectors, + sc->vf_res->max_mtu); + INIT_DBG_DEV(dev, "Offload flags: %#010x", + sc->vf_res->vf_offload_flags); + + /* got VF config message back from PF, now we can parse it */ + for (int i = 0; i < sc->vf_res->num_vsis; i++) { + if (sc->vf_res->vsi_res[i].vsi_type == I40E_VSI_SRIOV) + sc->vsi_res = &sc->vf_res->vsi_res[i]; + } + if (!sc->vsi_res) { + device_printf(dev, "%s: no LAN VSI found\n", __func__); + goto err_res_buf; + } + + INIT_DBG_DEV(dev, "Resource Acquisition complete"); + + /* If no mac address was assigned just make a random one */ + if (!ixlv_check_ether_addr(hw->mac.addr)) { + u8 addr[ETHER_ADDR_LEN]; + arc4rand(&addr, sizeof(addr), 0); + addr[0] &= 0xFE; + addr[0] |= 0x02; + bcopy(addr, hw->mac.addr, sizeof(addr)); + } + + vsi->id = sc->vsi_res->vsi_id; + vsi->back = (void *)sc; + + /* Link in this virtual environment is always 'up' */ + vsi->link_up = TRUE; + + /* This allocates the memory and early settings */ + if (ixlv_setup_queues(sc) != 0) { + device_printf(dev, "%s: setup queues failed!\n", + __func__); + goto out; + } + + /* Setup the stack interface */ + if (ixlv_setup_interface(dev, sc) != 0) { + device_printf(dev, "%s: setup interface failed!\n", + __func__); + goto out; + } + + INIT_DBG_DEV(dev, "Queue memory and interface setup"); + + /* Do queue interrupt setup */ + ixlv_assign_msix(sc); + + /* Start AdminQ taskqueue */ + ixlv_init_taskqueue(sc); + + /* Start the admin queue scheduler timer */ + callout_reset(&sc->aq_task, 2 * hz, ixlv_sched_aq, sc); + + /* Initialize stats */ + bzero(&sc->vsi.eth_stats, sizeof(struct i40e_eth_stats)); + ixlv_add_stats_sysctls(sc); + + /* Register for VLAN events */ + vsi->vlan_attach = EVENTHANDLER_REGISTER(vlan_config, + ixlv_register_vlan, vsi, EVENTHANDLER_PRI_FIRST); + vsi->vlan_detach = EVENTHANDLER_REGISTER(vlan_unconfig, + ixlv_unregister_vlan, vsi, EVENTHANDLER_PRI_FIRST); + + /* We want AQ enabled early */ + ixlv_enable_adminq_irq(hw); + + /* Set things up to run init */ + sc->aq_pending = 0; + sc->aq_required = 0; + sc->init_state = IXLV_INIT_READY; + + INIT_DBG_DEV(dev, "end"); + return (error); + +out: + ixlv_free_queues(vsi); +err_res_buf: + free(sc->vf_res, M_DEVBUF); +err_aq: + i40e_shutdown_adminq(hw); +err_pci_res: + ixlv_free_pci_resources(sc); +err_early: + mtx_destroy(&sc->mtx); + mtx_destroy(&sc->aq_task_mtx); + ixlv_free_filters(sc); + INIT_DBG_DEV(dev, "end: error %d", error); + return (error); +} + +/********************************************************************* + * Device removal routine + * + * The detach entry point is called when the driver is being removed. + * This routine stops the adapter and deallocates all the resources + * that were allocated for driver operation. + * + * return 0 on success, positive on failure + *********************************************************************/ + +static int +ixlv_detach(device_t dev) +{ + struct ixlv_sc *sc = device_get_softc(dev); + struct ixl_vsi *vsi = &sc->vsi; + int retries = 0; + + INIT_DBG_DEV(dev, "begin"); + + /* Make sure VLANS are not using driver */ + if (vsi->ifp->if_vlantrunk != NULL) { + device_printf(dev, "Vlan in use, detach first\n"); + INIT_DBG_DEV(dev, "end"); + return (EBUSY); + } + + /* Stop driver */ + if (vsi->ifp->if_drv_flags & IFF_DRV_RUNNING) { + mtx_lock(&sc->mtx); + ixlv_stop(sc); + mtx_unlock(&sc->mtx); + + /* + ** Ensure queues are disabled before examining + ** admin queue state later in detach. + */ + while (vsi->ifp->if_drv_flags & IFF_DRV_RUNNING + && ++retries < IXLV_AQ_MAX_ERR) { + i40e_msec_delay(10); + } +#ifdef IXL_DEBUG + if (retries >= IXLV_AQ_MAX_ERR) + device_printf(dev, "Issue disabling queues for detach\n"); +#endif + } + + /* Unregister VLAN events */ + if (vsi->vlan_attach != NULL) + EVENTHANDLER_DEREGISTER(vlan_config, vsi->vlan_attach); + if (vsi->vlan_detach != NULL) + EVENTHANDLER_DEREGISTER(vlan_unconfig, vsi->vlan_detach); + + /* Stop AQ callout */ + callout_drain(&sc->aq_task); + callout_stop(&sc->aq_task); + +#ifdef IXL_DEBUG + /* Report on possible AQ failures */ + if (sc->aq_required || sc->aq_pending) { + device_printf(dev, "AQ status on detach:\n"); + device_printf(dev, "required : 0x%4b\n", sc->aq_required, + IXLV_FLAGS); + device_printf(dev, "pending : 0x%4b\n", sc->aq_pending, + IXLV_FLAGS); + device_printf(dev, "current_op: %d\n", sc->current_op); + } +#endif + + i40e_shutdown_adminq(&sc->hw); + while (taskqueue_cancel(sc->tq, &sc->aq_irq, NULL) != 0) + taskqueue_drain(sc->tq, &sc->aq_irq); + taskqueue_free(sc->tq); + + /* force the state down */ + vsi->ifp->if_flags &= ~IFF_UP; + ether_ifdetach(vsi->ifp); + if_free(vsi->ifp); + + free(sc->vf_res, M_DEVBUF); + ixlv_free_pci_resources(sc); + ixlv_free_queues(vsi); + mtx_destroy(&sc->mtx); + mtx_destroy(&sc->aq_task_mtx); + ixlv_free_filters(sc); + + bus_generic_detach(dev); + INIT_DBG_DEV(dev, "end"); + return (0); +} + +/********************************************************************* + * + * Shutdown entry point + * + **********************************************************************/ + +static int +ixlv_shutdown(device_t dev) +{ + struct ixlv_sc *sc = device_get_softc(dev); + + INIT_DBG_DEV(dev, "begin"); + + mtx_lock(&sc->mtx); + ixlv_stop(sc); + mtx_unlock(&sc->mtx); + + INIT_DBG_DEV(dev, "end"); + return (0); +} + +/* + * Configure TXCSUM(IPV6) and TSO(4/6) + * - the hardware handles these together so we + * need to tweak them + */ +static void +ixlv_cap_txcsum_tso(struct ixl_vsi *vsi, struct ifnet *ifp, int mask) +{ + /* Enable/disable TXCSUM/TSO4 */ + if (!(ifp->if_capenable & IFCAP_TXCSUM) + && !(ifp->if_capenable & IFCAP_TSO4)) { + if (mask & IFCAP_TXCSUM) { + ifp->if_capenable |= IFCAP_TXCSUM; + /* enable TXCSUM, restore TSO if previously enabled */ + if (vsi->flags & IXL_FLAGS_KEEP_TSO4) { + vsi->flags &= ~IXL_FLAGS_KEEP_TSO4; + ifp->if_capenable |= IFCAP_TSO4; + } + } + else if (mask & IFCAP_TSO4) { + ifp->if_capenable |= (IFCAP_TXCSUM | IFCAP_TSO4); + vsi->flags &= ~IXL_FLAGS_KEEP_TSO4; + if_printf(ifp, + "TSO4 requires txcsum, enabling both...\n"); + } + } else if((ifp->if_capenable & IFCAP_TXCSUM) + && !(ifp->if_capenable & IFCAP_TSO4)) { + if (mask & IFCAP_TXCSUM) + ifp->if_capenable &= ~IFCAP_TXCSUM; + else if (mask & IFCAP_TSO4) + ifp->if_capenable |= IFCAP_TSO4; + } else if((ifp->if_capenable & IFCAP_TXCSUM) + && (ifp->if_capenable & IFCAP_TSO4)) { + if (mask & IFCAP_TXCSUM) { + vsi->flags |= IXL_FLAGS_KEEP_TSO4; + ifp->if_capenable &= ~(IFCAP_TXCSUM | IFCAP_TSO4); + if_printf(ifp, + "TSO4 requires txcsum, disabling both...\n"); + } else if (mask & IFCAP_TSO4) + ifp->if_capenable &= ~IFCAP_TSO4; + } + + /* Enable/disable TXCSUM_IPV6/TSO6 */ + if (!(ifp->if_capenable & IFCAP_TXCSUM_IPV6) + && !(ifp->if_capenable & IFCAP_TSO6)) { + if (mask & IFCAP_TXCSUM_IPV6) { + ifp->if_capenable |= IFCAP_TXCSUM_IPV6; + if (vsi->flags & IXL_FLAGS_KEEP_TSO6) { + vsi->flags &= ~IXL_FLAGS_KEEP_TSO6; + ifp->if_capenable |= IFCAP_TSO6; + } + } else if (mask & IFCAP_TSO6) { + ifp->if_capenable |= (IFCAP_TXCSUM_IPV6 | IFCAP_TSO6); + vsi->flags &= ~IXL_FLAGS_KEEP_TSO6; + if_printf(ifp, + "TSO6 requires txcsum6, enabling both...\n"); + } + } else if((ifp->if_capenable & IFCAP_TXCSUM_IPV6) + && !(ifp->if_capenable & IFCAP_TSO6)) { + if (mask & IFCAP_TXCSUM_IPV6) + ifp->if_capenable &= ~IFCAP_TXCSUM_IPV6; + else if (mask & IFCAP_TSO6) + ifp->if_capenable |= IFCAP_TSO6; + } else if ((ifp->if_capenable & IFCAP_TXCSUM_IPV6) + && (ifp->if_capenable & IFCAP_TSO6)) { + if (mask & IFCAP_TXCSUM_IPV6) { + vsi->flags |= IXL_FLAGS_KEEP_TSO6; + ifp->if_capenable &= ~(IFCAP_TXCSUM_IPV6 | IFCAP_TSO6); + if_printf(ifp, + "TSO6 requires txcsum6, disabling both...\n"); + } else if (mask & IFCAP_TSO6) + ifp->if_capenable &= ~IFCAP_TSO6; + } +} + +/********************************************************************* + * Ioctl entry point + * + * ixlv_ioctl is called when the user wants to configure the + * interface. + * + * return 0 on success, positive on failure + **********************************************************************/ + +static int +ixlv_ioctl(struct ifnet *ifp, u_long command, caddr_t data) +{ + struct ixl_vsi *vsi = ifp->if_softc; + struct ixlv_sc *sc = vsi->back; + struct ifreq *ifr = (struct ifreq *)data; +#if defined(INET) || defined(INET6) + struct ifaddr *ifa = (struct ifaddr *)data; + bool avoid_reset = FALSE; +#endif + int error = 0; + + + switch (command) { + + case SIOCSIFADDR: +#ifdef INET + if (ifa->ifa_addr->sa_family == AF_INET) + avoid_reset = TRUE; +#endif +#ifdef INET6 + if (ifa->ifa_addr->sa_family == AF_INET6) + avoid_reset = TRUE; +#endif +#if defined(INET) || defined(INET6) + /* + ** Calling init results in link renegotiation, + ** so we avoid doing it when possible. + */ + if (avoid_reset) { + ifp->if_flags |= IFF_UP; + if (!(ifp->if_drv_flags & IFF_DRV_RUNNING)) + ixlv_init(sc); + if (!(ifp->if_flags & IFF_NOARP)) + arp_ifinit(ifp, ifa); + } else + error = ether_ioctl(ifp, command, data); + break; +#endif + case SIOCSIFMTU: + IOCTL_DBG_IF2(ifp, "SIOCSIFMTU (Set Interface MTU)"); + mtx_lock(&sc->mtx); + if (ifr->ifr_mtu > IXL_MAX_FRAME - + ETHER_HDR_LEN - ETHER_CRC_LEN - ETHER_VLAN_ENCAP_LEN) { + error = EINVAL; + IOCTL_DBG_IF(ifp, "mtu too large"); + } else { + IOCTL_DBG_IF2(ifp, "mtu: %lu -> %d", ifp->if_mtu, ifr->ifr_mtu); + // ERJ: Interestingly enough, these types don't match + ifp->if_mtu = ifr->ifr_mtu; + vsi->max_frame_size = + ifp->if_mtu + ETHER_HDR_LEN + ETHER_CRC_LEN + + ETHER_VLAN_ENCAP_LEN; + + ixlv_init_locked(sc); + } + mtx_unlock(&sc->mtx); + break; + case SIOCSIFFLAGS: + IOCTL_DBG_IF2(ifp, "SIOCSIFFLAGS (Set Interface Flags)"); + mtx_lock(&sc->mtx); + if (ifp->if_flags & IFF_UP) { + if ((ifp->if_drv_flags & IFF_DRV_RUNNING) == 0) + ixlv_init_locked(sc); + } else + if (ifp->if_drv_flags & IFF_DRV_RUNNING) + ixlv_stop(sc); + sc->if_flags = ifp->if_flags; + mtx_unlock(&sc->mtx); + break; + case SIOCADDMULTI: + IOCTL_DBG_IF2(ifp, "SIOCADDMULTI"); + if (ifp->if_drv_flags & IFF_DRV_RUNNING) { + mtx_lock(&sc->mtx); + ixlv_disable_intr(vsi); + ixlv_add_multi(vsi); + ixlv_enable_intr(vsi); + mtx_unlock(&sc->mtx); + } + break; + case SIOCDELMULTI: + IOCTL_DBG_IF2(ifp, "SIOCDELMULTI"); + if (sc->init_state == IXLV_RUNNING) { + mtx_lock(&sc->mtx); + ixlv_disable_intr(vsi); + ixlv_del_multi(vsi); + ixlv_enable_intr(vsi); + mtx_unlock(&sc->mtx); + } + break; + case SIOCSIFMEDIA: + case SIOCGIFMEDIA: + IOCTL_DBG_IF2(ifp, "SIOCxIFMEDIA (Get/Set Interface Media)"); + error = ifmedia_ioctl(ifp, ifr, &sc->media, command); + break; + case SIOCSIFCAP: + { + int mask = ifr->ifr_reqcap ^ ifp->if_capenable; + IOCTL_DBG_IF2(ifp, "SIOCSIFCAP (Set Capabilities)"); + + ixlv_cap_txcsum_tso(vsi, ifp, mask); + + if (mask & IFCAP_RXCSUM) + ifp->if_capenable ^= IFCAP_RXCSUM; + if (mask & IFCAP_RXCSUM_IPV6) + ifp->if_capenable ^= IFCAP_RXCSUM_IPV6; + if (mask & IFCAP_LRO) + ifp->if_capenable ^= IFCAP_LRO; + if (mask & IFCAP_VLAN_HWTAGGING) + ifp->if_capenable ^= IFCAP_VLAN_HWTAGGING; + if (mask & IFCAP_VLAN_HWFILTER) + ifp->if_capenable ^= IFCAP_VLAN_HWFILTER; + if (mask & IFCAP_VLAN_HWTSO) + ifp->if_capenable ^= IFCAP_VLAN_HWTSO; + if (ifp->if_drv_flags & IFF_DRV_RUNNING) { + ixlv_init(sc); + } + VLAN_CAPABILITIES(ifp); + + break; + } + + default: + IOCTL_DBG_IF2(ifp, "UNKNOWN (0x%X)", (int)command); + error = ether_ioctl(ifp, command, data); + break; + } + + return (error); +} + +/* +** To do a reinit on the VF is unfortunately more complicated +** than a physical device, we must have the PF more or less +** completely recreate our memory, so many things that were +** done only once at attach in traditional drivers now must be +** redone at each reinitialization. This function does that +** 'prelude' so we can then call the normal locked init code. +*/ +int +ixlv_reinit_locked(struct ixlv_sc *sc) +{ + struct i40e_hw *hw = &sc->hw; + struct ixl_vsi *vsi = &sc->vsi; + struct ifnet *ifp = vsi->ifp; + struct ixlv_vlan_filter *vf; + int error = 0; + + INIT_DBG_IF(ifp, "begin"); + + if (ifp->if_drv_flags & IFF_DRV_RUNNING) + ixlv_stop(sc); + + if ((sc->init_state == IXLV_RESET_REQUIRED) || + (sc->init_state == IXLV_RESET_PENDING)) + error = ixlv_reset(sc); + + /* set the state in case we went thru RESET */ + sc->init_state = IXLV_RUNNING; + + if (vsi->num_vlans != 0) + SLIST_FOREACH(vf, sc->vlan_filters, next) + vf->flags = IXL_FILTER_ADD; + else { /* clean any stale filters */ + while (!SLIST_EMPTY(sc->vlan_filters)) { + vf = SLIST_FIRST(sc->vlan_filters); + SLIST_REMOVE_HEAD(sc->vlan_filters, next); + free(vf, M_DEVBUF); + } + } + + ixlv_enable_adminq_irq(hw); + sc->aq_pending = 0; + sc->aq_required = 0; + + INIT_DBG_IF(ifp, "end"); + return (error); +} + + +static void +ixlv_init_locked(struct ixlv_sc *sc) +{ + struct i40e_hw *hw = &sc->hw; + struct ixl_vsi *vsi = &sc->vsi; + struct ixl_queue *que = vsi->queues; + struct ifnet *ifp = vsi->ifp; + int error = 0; + + INIT_DBG_IF(ifp, "begin"); + + /* Verify we have the core lock */ + if (!mtx_owned(&sc->mtx)) { + if_printf(ifp, "%s: sc mutex not owned; acquire" + "before calling this function!\n", __func__); + goto init_done; + } + + /* Do a reinit first if an init has already been done */ + if ((sc->init_state == IXLV_RUNNING) || + (sc->init_state == IXLV_RESET_REQUIRED) || + (sc->init_state == IXLV_RESET_PENDING)) + error = ixlv_reinit_locked(sc); + /* Don't bother with init if we failed reinit */ + if (error) + goto init_done; + + /* Check for an LAA mac address... */ + bcopy(IF_LLADDR(ifp), hw->mac.addr, ETHER_ADDR_LEN); + + ifp->if_hwassist = 0; + if (ifp->if_capenable & IFCAP_TSO) + ifp->if_hwassist |= CSUM_TSO; + if (ifp->if_capenable & IFCAP_TXCSUM) + ifp->if_hwassist |= (CSUM_OFFLOAD_IPV4 & ~CSUM_IP); + if (ifp->if_capenable & IFCAP_TXCSUM_IPV6) + ifp->if_hwassist |= CSUM_OFFLOAD_IPV6; + + /* Add mac filter for this VF to PF */ + error = ixlv_add_mac_filter(sc, hw->mac.addr, 0); + + // send message, then enqueue another task + if (!error || error == EEXIST) { + sc->aq_required |= IXLV_FLAG_AQ_ADD_MAC_FILTER; + callout_reset(&sc->aq_task, IXLV_CALLOUT_TIMO, + ixlv_sched_aq, sc); + } + + /* Setup vlan's if needed */ + ixlv_setup_vlan_filters(sc); + + /* + ** Prepare the queues for operation + */ + for (int i = 0; i < vsi->num_queues; i++, que++) { + struct rx_ring *rxr = &que->rxr; + + ixl_init_tx_ring(que); + + /* Need to set mbuf size now */ + if (vsi->max_frame_size <= 2048) + rxr->mbuf_sz = MCLBYTES; + else + rxr->mbuf_sz = MJUMPAGESIZE; + ixl_init_rx_ring(que); + } + + /* Configure queues */ + sc->aq_required |= IXLV_FLAG_AQ_CONFIGURE_QUEUES; + callout_reset(&sc->aq_task, IXLV_CALLOUT_TIMO, + ixlv_sched_aq, sc); + + /* Set up RSS */ + ixlv_config_rss(sc); + + /* Map vectors */ + sc->aq_required |= IXLV_FLAG_AQ_MAP_VECTORS; + callout_reset(&sc->aq_task, IXLV_CALLOUT_TIMO, + ixlv_sched_aq, sc); + + /* Enable queues */ + sc->aq_required |= IXLV_FLAG_AQ_ENABLE_QUEUES; + callout_reset(&sc->aq_task, IXLV_CALLOUT_TIMO, + ixlv_sched_aq, sc); + + /* Start the local timer */ + callout_reset(&sc->timer, hz, ixlv_local_timer, sc); + + sc->init_state = IXLV_RUNNING; + +init_done: + INIT_DBG_IF(ifp, "end"); + return; +} + +/* +** Init entry point for the stack +*/ +void +ixlv_init(void *arg) +{ + struct ixlv_sc *sc = arg; + + mtx_lock(&sc->mtx); + ixlv_init_locked(sc); + mtx_unlock(&sc->mtx); + return; +} + +/* + * Allocate MSI/X vectors, setup the AQ vector early + */ +static int +ixlv_init_msix(struct ixlv_sc *sc) +{ + device_t dev = sc->dev; + int rid, want, vectors, queues, available; + + rid = PCIR_BAR(IXL_BAR); + sc->msix_mem = bus_alloc_resource_any(dev, + SYS_RES_MEMORY, &rid, RF_ACTIVE); + if (!sc->msix_mem) { + /* May not be enabled */ + device_printf(sc->dev, + "Unable to map MSIX table \n"); + goto fail; + } + + available = pci_msix_count(dev); + if (available == 0) { /* system has msix disabled */ + bus_release_resource(dev, SYS_RES_MEMORY, + rid, sc->msix_mem); + sc->msix_mem = NULL; + goto fail; + } + + /* Figure out a reasonable auto config value */ + queues = (mp_ncpus > (available - 1)) ? (available - 1) : mp_ncpus; + + /* Override with hardcoded value if sane */ + if ((ixlv_max_queues != 0) && (ixlv_max_queues <= queues)) + queues = ixlv_max_queues; + + /* Enforce the VF max value */ + if (queues > IXLV_MAX_QUEUES) + queues = IXLV_MAX_QUEUES; + + /* + ** Want one vector (RX/TX pair) per queue + ** plus an additional for the admin queue. + */ + want = queues + 1; + if (want <= available) /* Have enough */ + vectors = want; + else { + device_printf(sc->dev, + "MSIX Configuration Problem, " + "%d vectors available but %d wanted!\n", + available, want); + goto fail; + } + + if (pci_alloc_msix(dev, &vectors) == 0) { + device_printf(sc->dev, + "Using MSIX interrupts with %d vectors\n", vectors); + sc->msix = vectors; + sc->vsi.num_queues = queues; + } + + /* + ** Explicitly set the guest PCI BUSMASTER capability + ** and we must rewrite the ENABLE in the MSIX control + ** register again at this point to cause the host to + ** successfully initialize us. + */ + { + u16 pci_cmd_word; + int msix_ctrl; + pci_cmd_word = pci_read_config(dev, PCIR_COMMAND, 2); + pci_cmd_word |= PCIM_CMD_BUSMASTEREN; + pci_write_config(dev, PCIR_COMMAND, pci_cmd_word, 2); + pci_find_cap(dev, PCIY_MSIX, &rid); + rid += PCIR_MSIX_CTRL; + msix_ctrl = pci_read_config(dev, rid, 2); + msix_ctrl |= PCIM_MSIXCTRL_MSIX_ENABLE; + pci_write_config(dev, rid, msix_ctrl, 2); + } + + /* Next we need to setup the vector for the Admin Queue */ + rid = 1; // zero vector + 1 + sc->res = bus_alloc_resource_any(dev, SYS_RES_IRQ, + &rid, RF_SHAREABLE | RF_ACTIVE); + if (sc->res == NULL) { + device_printf(dev,"Unable to allocate" + " bus resource: AQ interrupt \n"); + goto fail; + } + if (bus_setup_intr(dev, sc->res, + INTR_TYPE_NET | INTR_MPSAFE, NULL, + ixlv_msix_adminq, sc, &sc->tag)) { + sc->res = NULL; + device_printf(dev, "Failed to register AQ handler"); + goto fail; + } + bus_describe_intr(dev, sc->res, sc->tag, "adminq"); + + return (vectors); + +fail: + /* The VF driver MUST use MSIX */ + return (0); +} + +static int +ixlv_allocate_pci_resources(struct ixlv_sc *sc) +{ + int rid; + device_t dev = sc->dev; + + rid = PCIR_BAR(0); + sc->pci_mem = bus_alloc_resource_any(dev, SYS_RES_MEMORY, + &rid, RF_ACTIVE); + + if (!(sc->pci_mem)) { + device_printf(dev,"Unable to allocate bus resource: memory\n"); + return (ENXIO); + } + + sc->osdep.mem_bus_space_tag = + rman_get_bustag(sc->pci_mem); + sc->osdep.mem_bus_space_handle = + rman_get_bushandle(sc->pci_mem); + sc->osdep.mem_bus_space_size = rman_get_size(sc->pci_mem); + sc->hw.hw_addr = (u8 *) &sc->osdep.mem_bus_space_handle; + + sc->hw.back = &sc->osdep; + + /* May need to pre-emptively disable adminq interrupts */ + ixlv_disable_adminq_irq(&sc->hw); + + /* + ** Now setup MSI/X, it will return + ** us the number of supported vectors + */ + sc->msix = ixlv_init_msix(sc); + + /* We fail without MSIX support */ + if (sc->msix == 0) + return (ENXIO); + + return (0); +} + +static void +ixlv_free_pci_resources(struct ixlv_sc *sc) +{ + struct ixl_vsi *vsi = &sc->vsi; + struct ixl_queue *que = vsi->queues; + device_t dev = sc->dev; + + /* We may get here before stations are setup */ + if (que == NULL) + goto early; + + /* + ** Release all msix queue resources: + */ + for (int i = 0; i < vsi->num_queues; i++, que++) { + int rid = que->msix + 1; + if (que->tag != NULL) { + bus_teardown_intr(dev, que->res, que->tag); + que->tag = NULL; + } + if (que->res != NULL) + bus_release_resource(dev, SYS_RES_IRQ, rid, que->res); + } + +early: + /* Clean the AdminQ interrupt */ + if (sc->tag != NULL) { + bus_teardown_intr(dev, sc->res, sc->tag); + sc->tag = NULL; + } + if (sc->res != NULL) + bus_release_resource(dev, SYS_RES_IRQ, 1, sc->res); + + pci_release_msi(dev); + + if (sc->msix_mem != NULL) + bus_release_resource(dev, SYS_RES_MEMORY, + PCIR_BAR(IXL_BAR), sc->msix_mem); + + if (sc->pci_mem != NULL) + bus_release_resource(dev, SYS_RES_MEMORY, + PCIR_BAR(0), sc->pci_mem); + + return; +} + +static int +ixlv_init_taskqueue(struct ixlv_sc *sc) +{ + int error = 0; + + /* Tasklet for AQ Interrupts */ + TASK_INIT(&sc->aq_irq, 0, ixlv_do_adminq, sc); + + sc->tq = taskqueue_create_fast("ixl_adm", M_NOWAIT, + taskqueue_thread_enqueue, &sc->tq); + taskqueue_start_threads(&sc->tq, 1, PI_NET, "%s sc->tq", + device_get_nameunit(sc->dev)); + + return (error); +} + +/********************************************************************* + * + * Setup MSIX Interrupt resources and handlers for the VSI queues + * + **********************************************************************/ +static int +ixlv_assign_msix(struct ixlv_sc *sc) +{ + device_t dev = sc->dev; + struct ixl_vsi *vsi = &sc->vsi; + struct ixl_queue *que = vsi->queues; + struct tx_ring *txr; + int error, rid, vector = 1; + + for (int i = 0; i < vsi->num_queues; i++, vector++, que++) { + rid = vector + 1; + txr = &que->txr; + que->res = bus_alloc_resource_any(dev, SYS_RES_IRQ, &rid, + RF_SHAREABLE | RF_ACTIVE); + if (que->res == NULL) { + device_printf(dev,"Unable to allocate" + " bus resource: que interrupt [%d]\n", vector); + return (ENXIO); + } + /* Set the handler function */ + error = bus_setup_intr(dev, que->res, + INTR_TYPE_NET | INTR_MPSAFE, NULL, + ixlv_msix_que, que, &que->tag); + if (error) { + que->res = NULL; + device_printf(dev, "Failed to register que handler"); + return (error); + } + bus_describe_intr(dev, que->res, que->tag, "que %d", i); + /* Bind the vector to a CPU */ + bus_bind_intr(dev, que->res, i); + que->msix = vector; + vsi->que_mask |= (u64)(1 << que->msix); + TASK_INIT(&que->tx_task, 0, ixl_deferred_mq_start, que); + TASK_INIT(&que->task, 0, ixlv_handle_que, que); + que->tq = taskqueue_create_fast("ixlv_que", M_NOWAIT, + taskqueue_thread_enqueue, &que->tq); + taskqueue_start_threads(&que->tq, 1, PI_NET, "%s que", + device_get_nameunit(sc->dev)); + } + + return (0); +} + +/* +** XXX: Assumes the vf's admin queue has been initialized. +*/ +static int +ixlv_reset(struct ixlv_sc *sc) +{ + struct i40e_hw *hw = &sc->hw; + device_t dev = sc->dev; + int error = 0; + + /* Ask the PF to reset us if we are initiating */ + if (sc->init_state != IXLV_RESET_PENDING) + ixlv_request_reset(sc); + + i40e_msec_delay(100); + error = ixlv_reset_complete(hw); + if (error) { + device_printf(dev, "%s: VF reset failed\n", + __func__); + return (error); + } + + error = i40e_shutdown_adminq(hw); + if (error) { + device_printf(dev, "%s: shutdown_adminq failed: %d\n", + __func__, error); + return (error); + } + + error = i40e_init_adminq(hw); + if (error) { + device_printf(dev, "%s: init_adminq failed: %d\n", + __func__, error); + return(error); + } + + return (0); +} + +static int +ixlv_reset_complete(struct i40e_hw *hw) +{ + u32 reg; + + for (int i = 0; i < 100; i++) { + reg = rd32(hw, I40E_VFGEN_RSTAT) & + I40E_VFGEN_RSTAT_VFR_STATE_MASK; + + if ((reg == I40E_VFR_VFACTIVE) || + (reg == I40E_VFR_COMPLETED)) + return (0); + i40e_usec_delay(20); + } + + return (EBUSY); +} + + +/********************************************************************* + * + * Setup networking device structure and register an interface. + * + **********************************************************************/ +static int +ixlv_setup_interface(device_t dev, struct ixlv_sc *sc) +{ + struct ifnet *ifp; + struct ixl_vsi *vsi = &sc->vsi; + struct ixl_queue *que = vsi->queues; + + INIT_DBG_DEV(dev, "begin"); + + ifp = vsi->ifp = if_alloc(IFT_ETHER); + if (ifp == NULL) { + device_printf(dev, "can not allocate ifnet structure\n"); + return (-1); + } + + if_initname(ifp, device_get_name(dev), device_get_unit(dev)); + + ifp->if_mtu = ETHERMTU; + ifp->if_baudrate = 4000000000; // ?? + ifp->if_init = ixlv_init; + ifp->if_softc = vsi; + ifp->if_flags = IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST; + ifp->if_ioctl = ixlv_ioctl; + + ifp->if_transmit = ixl_mq_start; + + ifp->if_qflush = ixl_qflush; + ifp->if_snd.ifq_maxlen = que->num_desc - 2; + + ether_ifattach(ifp, sc->hw.mac.addr); + + vsi->max_frame_size = + ifp->if_mtu + ETHER_HDR_LEN + ETHER_CRC_LEN + + ETHER_VLAN_ENCAP_LEN; + + /* + * Tell the upper layer(s) we support long frames. + */ + ifp->if_data.ifi_hdrlen = sizeof(struct ether_vlan_header); + + ifp->if_capabilities |= IFCAP_HWCSUM; + ifp->if_capabilities |= IFCAP_HWCSUM_IPV6; + ifp->if_capabilities |= IFCAP_TSO; + ifp->if_capabilities |= IFCAP_JUMBO_MTU; + + ifp->if_capabilities |= IFCAP_VLAN_HWTAGGING + | IFCAP_VLAN_HWTSO + | IFCAP_VLAN_MTU + | IFCAP_VLAN_HWCSUM + | IFCAP_LRO; + ifp->if_capenable = ifp->if_capabilities; + + /* + ** Don't turn this on by default, if vlans are + ** created on another pseudo device (eg. lagg) + ** then vlan events are not passed thru, breaking + ** operation, but with HW FILTER off it works. If + ** using vlans directly on the ixl driver you can + ** enable this and get full hardware tag filtering. + */ + ifp->if_capabilities |= IFCAP_VLAN_HWFILTER; + + /* + * Specify the media types supported by this adapter and register + * callbacks to update media and link information + */ + ifmedia_init(&sc->media, IFM_IMASK, ixlv_media_change, + ixlv_media_status); + + // JFV Add media types later? + + ifmedia_add(&sc->media, IFM_ETHER | IFM_AUTO, 0, NULL); + ifmedia_set(&sc->media, IFM_ETHER | IFM_AUTO); + + INIT_DBG_DEV(dev, "end"); + return (0); +} + +/* +** Allocate and setup the interface queues +*/ +static int +ixlv_setup_queues(struct ixlv_sc *sc) +{ + device_t dev = sc->dev; + struct ixl_vsi *vsi; + struct ixl_queue *que; + struct tx_ring *txr; + struct rx_ring *rxr; + int rsize, tsize; + int error = I40E_SUCCESS; + + vsi = &sc->vsi; + vsi->back = (void *)sc; + vsi->hw = &sc->hw; + vsi->num_vlans = 0; + + /* Get memory for the station queues */ + if (!(vsi->queues = + (struct ixl_queue *) malloc(sizeof(struct ixl_queue) * + vsi->num_queues, M_DEVBUF, M_NOWAIT | M_ZERO))) { + device_printf(dev, "Unable to allocate queue memory\n"); + error = ENOMEM; + goto early; + } + + for (int i = 0; i < vsi->num_queues; i++) { + que = &vsi->queues[i]; + que->num_desc = ixlv_ringsz; + que->me = i; + que->vsi = vsi; + /* mark the queue as active */ + vsi->active_queues |= (u64)1 << que->me; + + txr = &que->txr; + txr->que = que; + txr->tail = I40E_QTX_TAIL1(que->me); + /* Initialize the TX lock */ + snprintf(txr->mtx_name, sizeof(txr->mtx_name), "%s:tx(%d)", + device_get_nameunit(dev), que->me); + mtx_init(&txr->mtx, txr->mtx_name, NULL, MTX_DEF); + /* + ** Create the TX descriptor ring, the extra int is + ** added as the location for HEAD WB. + */ + tsize = roundup2((que->num_desc * + sizeof(struct i40e_tx_desc)) + + sizeof(u32), DBA_ALIGN); + if (i40e_allocate_dma(&sc->hw, + &txr->dma, tsize, DBA_ALIGN)) { + device_printf(dev, + "Unable to allocate TX Descriptor memory\n"); + error = ENOMEM; + goto fail; + } + txr->base = (struct i40e_tx_desc *)txr->dma.va; + bzero((void *)txr->base, tsize); + /* Now allocate transmit soft structs for the ring */ + if (ixl_allocate_tx_data(que)) { + device_printf(dev, + "Critical Failure setting up TX structures\n"); + error = ENOMEM; + goto fail; + } + /* Allocate a buf ring */ + txr->br = buf_ring_alloc(ixlv_txbrsz, M_DEVBUF, + M_WAITOK, &txr->mtx); + if (txr->br == NULL) { + device_printf(dev, + "Critical Failure setting up TX buf ring\n"); + error = ENOMEM; + goto fail; + } + + /* + * Next the RX queues... + */ + rsize = roundup2(que->num_desc * + sizeof(union i40e_rx_desc), DBA_ALIGN); + rxr = &que->rxr; + rxr->que = que; + rxr->tail = I40E_QRX_TAIL1(que->me); + + /* Initialize the RX side lock */ + snprintf(rxr->mtx_name, sizeof(rxr->mtx_name), "%s:rx(%d)", + device_get_nameunit(dev), que->me); + mtx_init(&rxr->mtx, rxr->mtx_name, NULL, MTX_DEF); + + if (i40e_allocate_dma(&sc->hw, + &rxr->dma, rsize, 4096)) { //JFV - should this be DBA? + device_printf(dev, + "Unable to allocate RX Descriptor memory\n"); + error = ENOMEM; + goto fail; + } + rxr->base = (union i40e_rx_desc *)rxr->dma.va; + bzero((void *)rxr->base, rsize); + + /* Allocate receive soft structs for the ring*/ + if (ixl_allocate_rx_data(que)) { + device_printf(dev, + "Critical Failure setting up receive structs\n"); + error = ENOMEM; + goto fail; + } + } + + return (0); + +fail: + free(vsi->queues, M_DEVBUF); + for (int i = 0; i < vsi->num_queues; i++) { + que = &vsi->queues[i]; + rxr = &que->rxr; + txr = &que->txr; + if (rxr->base) + i40e_free_dma(&sc->hw, &rxr->dma); + if (txr->base) + i40e_free_dma(&sc->hw, &txr->dma); + } + +early: + return (error); +} + +/* +** This routine is run via an vlan config EVENT, +** it enables us to use the HW Filter table since +** we can get the vlan id. This just creates the +** entry in the soft version of the VFTA, init will +** repopulate the real table. +*/ +static void +ixlv_register_vlan(void *arg, struct ifnet *ifp, u16 vtag) +{ + struct ixl_vsi *vsi = ifp->if_softc; + struct ixlv_sc *sc = vsi->back; + struct ixlv_vlan_filter *v; + + + if (ifp->if_softc != arg) /* Not our event */ + return; + + if ((vtag == 0) || (vtag > 4095)) /* Invalid */ + return; + + /* Sanity check - make sure it doesn't already exist */ + SLIST_FOREACH(v, sc->vlan_filters, next) { + if (v->vlan == vtag) + return; + } + + mtx_lock(&sc->mtx); + ++vsi->num_vlans; + v = malloc(sizeof(struct ixlv_vlan_filter), M_DEVBUF, M_NOWAIT | M_ZERO); + SLIST_INSERT_HEAD(sc->vlan_filters, v, next); + v->vlan = vtag; + v->flags = IXL_FILTER_ADD; + sc->aq_required |= IXLV_FLAG_AQ_ADD_VLAN_FILTER; + mtx_unlock(&sc->mtx); + return; +} + +/* +** This routine is run via an vlan +** unconfig EVENT, remove our entry +** in the soft vfta. +*/ +static void +ixlv_unregister_vlan(void *arg, struct ifnet *ifp, u16 vtag) +{ + struct ixl_vsi *vsi = ifp->if_softc; + struct ixlv_sc *sc = vsi->back; + struct ixlv_vlan_filter *v; + int i = 0; + + if (ifp->if_softc != arg) + return; + + if ((vtag == 0) || (vtag > 4095)) /* Invalid */ + return; + + mtx_lock(&sc->mtx); + SLIST_FOREACH(v, sc->vlan_filters, next) { + if (v->vlan == vtag) { + v->flags = IXL_FILTER_DEL; + ++i; + --vsi->num_vlans; + } + } + if (i) + sc->aq_required |= IXLV_FLAG_AQ_DEL_VLAN_FILTER; + mtx_unlock(&sc->mtx); + return; +} + +/* +** Get a new filter and add it to the mac filter list. +*/ +static struct ixlv_mac_filter * +ixlv_get_mac_filter(struct ixlv_sc *sc) +{ + struct ixlv_mac_filter *f; + + f = malloc(sizeof(struct ixlv_mac_filter), M_DEVBUF, M_NOWAIT | M_ZERO); + SLIST_INSERT_HEAD(sc->mac_filters, f, next); + + return (f); +} + +/* +** Find the filter with matching MAC address +*/ +static struct ixlv_mac_filter * +ixlv_find_mac_filter(struct ixlv_sc *sc, u8 *macaddr) +{ + struct ixlv_mac_filter *f; + bool match = FALSE; + + SLIST_FOREACH(f, sc->mac_filters, next) { + if (cmp_etheraddr(f->macaddr, macaddr)) { + match = TRUE; + break; + } + } + + if (!match) + f = NULL; + return (f); +} + +/* +** Admin Queue interrupt handler +*/ +static void +ixlv_msix_adminq(void *arg) +{ + struct ixlv_sc *sc = arg; + struct i40e_hw *hw = &sc->hw; + u32 reg, mask; + + reg = rd32(hw, I40E_VFINT_ICR01); + mask = rd32(hw, I40E_VFINT_ICR0_ENA1); + + reg = rd32(hw, I40E_VFINT_DYN_CTL01); + reg |= I40E_PFINT_DYN_CTL0_CLEARPBA_MASK; + wr32(hw, I40E_VFINT_DYN_CTL01, reg); + + /* re-enable interrupt causes */ + wr32(hw, I40E_VFINT_ICR0_ENA1, mask); + wr32(hw, I40E_VFINT_DYN_CTL01, I40E_VFINT_DYN_CTL01_INTENA_MASK); + + /* schedule task */ + taskqueue_enqueue(sc->tq, &sc->aq_irq); + return; +} + +void +ixlv_enable_intr(struct ixl_vsi *vsi) +{ + struct i40e_hw *hw = vsi->hw; + struct ixl_queue *que = vsi->queues; + + ixlv_enable_adminq_irq(hw); + for (int i = 0; i < vsi->num_queues; i++, que++) + ixlv_enable_queue_irq(hw, que->me); +} + +void +ixlv_disable_intr(struct ixl_vsi *vsi) +{ + struct i40e_hw *hw = vsi->hw; + struct ixl_queue *que = vsi->queues; + + ixlv_disable_adminq_irq(hw); + for (int i = 0; i < vsi->num_queues; i++, que++) + ixlv_disable_queue_irq(hw, que->me); +} + + +static void +ixlv_disable_adminq_irq(struct i40e_hw *hw) +{ + wr32(hw, I40E_VFINT_DYN_CTL01, 0); + wr32(hw, I40E_VFINT_ICR0_ENA1, 0); + /* flush */ + rd32(hw, I40E_VFGEN_RSTAT); + return; +} + +static void +ixlv_enable_adminq_irq(struct i40e_hw *hw) +{ + wr32(hw, I40E_VFINT_DYN_CTL01, + I40E_VFINT_DYN_CTL01_INTENA_MASK | + I40E_VFINT_DYN_CTL01_ITR_INDX_MASK); + wr32(hw, I40E_VFINT_ICR0_ENA1, I40E_VFINT_ICR0_ENA_ADMINQ_MASK); + /* flush */ + rd32(hw, I40E_VFGEN_RSTAT); + return; +} + +static void +ixlv_enable_queue_irq(struct i40e_hw *hw, int id) +{ + u32 reg; + + reg = I40E_VFINT_DYN_CTLN1_INTENA_MASK | + I40E_VFINT_DYN_CTLN_CLEARPBA_MASK; + wr32(hw, I40E_VFINT_DYN_CTLN1(id), reg); +} + +static void +ixlv_disable_queue_irq(struct i40e_hw *hw, int id) +{ + wr32(hw, I40E_VFINT_DYN_CTLN1(id), 0); + rd32(hw, I40E_VFGEN_RSTAT); + return; +} + + +/* +** Provide a update to the queue RX +** interrupt moderation value. +*/ +static void +ixlv_set_queue_rx_itr(struct ixl_queue *que) +{ + struct ixl_vsi *vsi = que->vsi; + struct i40e_hw *hw = vsi->hw; + struct rx_ring *rxr = &que->rxr; + u16 rx_itr; + u16 rx_latency = 0; + int rx_bytes; + + + /* Idle, do nothing */ + if (rxr->bytes == 0) + return; + + if (ixlv_dynamic_rx_itr) { + rx_bytes = rxr->bytes/rxr->itr; + rx_itr = rxr->itr; + + /* Adjust latency range */ + switch (rxr->latency) { + case IXL_LOW_LATENCY: + if (rx_bytes > 10) { + rx_latency = IXL_AVE_LATENCY; + rx_itr = IXL_ITR_20K; + } + break; + case IXL_AVE_LATENCY: + if (rx_bytes > 20) { + rx_latency = IXL_BULK_LATENCY; + rx_itr = IXL_ITR_8K; + } else if (rx_bytes <= 10) { + rx_latency = IXL_LOW_LATENCY; + rx_itr = IXL_ITR_100K; + } + break; + case IXL_BULK_LATENCY: + if (rx_bytes <= 20) { + rx_latency = IXL_AVE_LATENCY; + rx_itr = IXL_ITR_20K; + } + break; + } + + rxr->latency = rx_latency; + + if (rx_itr != rxr->itr) { + /* do an exponential smoothing */ + rx_itr = (10 * rx_itr * rxr->itr) / + ((9 * rx_itr) + rxr->itr); + rxr->itr = rx_itr & IXL_MAX_ITR; + wr32(hw, I40E_VFINT_ITRN1(IXL_RX_ITR, + que->me), rxr->itr); + } + } else { /* We may have have toggled to non-dynamic */ + if (vsi->rx_itr_setting & IXL_ITR_DYNAMIC) + vsi->rx_itr_setting = ixlv_rx_itr; + /* Update the hardware if needed */ + if (rxr->itr != vsi->rx_itr_setting) { + rxr->itr = vsi->rx_itr_setting; + wr32(hw, I40E_VFINT_ITRN1(IXL_RX_ITR, + que->me), rxr->itr); + } + } + rxr->bytes = 0; + rxr->packets = 0; + return; +} + + +/* +** Provide a update to the queue TX +** interrupt moderation value. +*/ +static void +ixlv_set_queue_tx_itr(struct ixl_queue *que) +{ + struct ixl_vsi *vsi = que->vsi; + struct i40e_hw *hw = vsi->hw; + struct tx_ring *txr = &que->txr; + u16 tx_itr; + u16 tx_latency = 0; + int tx_bytes; + + + /* Idle, do nothing */ + if (txr->bytes == 0) + return; + + if (ixlv_dynamic_tx_itr) { + tx_bytes = txr->bytes/txr->itr; + tx_itr = txr->itr; + + switch (txr->latency) { + case IXL_LOW_LATENCY: + if (tx_bytes > 10) { + tx_latency = IXL_AVE_LATENCY; + tx_itr = IXL_ITR_20K; + } + break; + case IXL_AVE_LATENCY: + if (tx_bytes > 20) { + tx_latency = IXL_BULK_LATENCY; + tx_itr = IXL_ITR_8K; + } else if (tx_bytes <= 10) { + tx_latency = IXL_LOW_LATENCY; + tx_itr = IXL_ITR_100K; + } + break; + case IXL_BULK_LATENCY: + if (tx_bytes <= 20) { + tx_latency = IXL_AVE_LATENCY; + tx_itr = IXL_ITR_20K; + } + break; + } + + txr->latency = tx_latency; + + if (tx_itr != txr->itr) { + /* do an exponential smoothing */ + tx_itr = (10 * tx_itr * txr->itr) / + ((9 * tx_itr) + txr->itr); + txr->itr = tx_itr & IXL_MAX_ITR; + wr32(hw, I40E_VFINT_ITRN1(IXL_TX_ITR, + que->me), txr->itr); + } + + } else { /* We may have have toggled to non-dynamic */ + if (vsi->tx_itr_setting & IXL_ITR_DYNAMIC) + vsi->tx_itr_setting = ixlv_tx_itr; + /* Update the hardware if needed */ + if (txr->itr != vsi->tx_itr_setting) { + txr->itr = vsi->tx_itr_setting; + wr32(hw, I40E_VFINT_ITRN1(IXL_TX_ITR, + que->me), txr->itr); + } + } + txr->bytes = 0; + txr->packets = 0; + return; +} + + +/* +** +** MSIX Interrupt Handlers and Tasklets +** +*/ +static void +ixlv_handle_que(void *context, int pending) +{ + struct ixl_queue *que = context; + struct ixl_vsi *vsi = que->vsi; + struct i40e_hw *hw = vsi->hw; + struct tx_ring *txr = &que->txr; + struct ifnet *ifp = vsi->ifp; + bool more; + + if (ifp->if_drv_flags & IFF_DRV_RUNNING) { + more = ixl_rxeof(que, IXL_RX_LIMIT); + mtx_lock(&txr->mtx); + ixl_txeof(que); + if (!drbr_empty(ifp, txr->br)) + ixl_mq_start_locked(ifp, txr); + mtx_unlock(&txr->mtx); + if (more) { + taskqueue_enqueue(que->tq, &que->task); + return; + } + } + + /* Reenable this interrupt - hmmm */ + ixlv_enable_queue_irq(hw, que->me); + return; +} + + +/********************************************************************* + * + * MSIX Queue Interrupt Service routine + * + **********************************************************************/ +static void +ixlv_msix_que(void *arg) +{ + struct ixl_queue *que = arg; + struct ixl_vsi *vsi = que->vsi; + struct i40e_hw *hw = vsi->hw; + struct tx_ring *txr = &que->txr; + bool more_tx, more_rx; + + /* Spurious interrupts are ignored */ + if (!(vsi->ifp->if_drv_flags & IFF_DRV_RUNNING)) + return; + + ++que->irqs; + + more_rx = ixl_rxeof(que, IXL_RX_LIMIT); + + mtx_lock(&txr->mtx); + more_tx = ixl_txeof(que); + /* + ** Make certain that if the stack + ** has anything queued the task gets + ** scheduled to handle it. + */ + if (!drbr_empty(vsi->ifp, txr->br)) + more_tx = 1; + mtx_unlock(&txr->mtx); + + ixlv_set_queue_rx_itr(que); + ixlv_set_queue_tx_itr(que); + + if (more_tx || more_rx) + taskqueue_enqueue(que->tq, &que->task); + else + ixlv_enable_queue_irq(hw, que->me); + + return; +} + + +/********************************************************************* + * + * Media Ioctl callback + * + * This routine is called whenever the user queries the status of + * the interface using ifconfig. + * + **********************************************************************/ +static void +ixlv_media_status(struct ifnet * ifp, struct ifmediareq * ifmr) +{ + struct ixl_vsi *vsi = ifp->if_softc; + struct ixlv_sc *sc = vsi->back; + + INIT_DBG_IF(ifp, "begin"); + + mtx_lock(&sc->mtx); + + ixlv_update_link_status(sc); + + ifmr->ifm_status = IFM_AVALID; + ifmr->ifm_active = IFM_ETHER; + + if (!vsi->link_up) { + mtx_unlock(&sc->mtx); + INIT_DBG_IF(ifp, "end: link not up"); + return; + } + + ifmr->ifm_status |= IFM_ACTIVE; + /* Hardware is always full-duplex */ + ifmr->ifm_active |= IFM_FDX; + mtx_unlock(&sc->mtx); + INIT_DBG_IF(ifp, "end"); + return; +} + +/********************************************************************* + * + * Media Ioctl callback + * + * This routine is called when the user changes speed/duplex using + * media/mediopt option with ifconfig. + * + **********************************************************************/ +static int +ixlv_media_change(struct ifnet * ifp) +{ + struct ixl_vsi *vsi = ifp->if_softc; + struct ifmedia *ifm = &vsi->media; + + INIT_DBG_IF(ifp, "begin"); + + if (IFM_TYPE(ifm->ifm_media) != IFM_ETHER) + return (EINVAL); + + INIT_DBG_IF(ifp, "end"); + return (0); +} + + +/********************************************************************* + * Multicast Initialization + * + * This routine is called by init to reset a fresh state. + * + **********************************************************************/ + +static void +ixlv_init_multi(struct ixl_vsi *vsi) +{ + struct ixlv_mac_filter *f; + struct ixlv_sc *sc = vsi->back; + int mcnt = 0; + + IOCTL_DBG_IF(vsi->ifp, "begin"); + + /* First clear any multicast filters */ + SLIST_FOREACH(f, sc->mac_filters, next) { + if ((f->flags & IXL_FILTER_USED) + && (f->flags & IXL_FILTER_MC)) { + f->flags |= IXL_FILTER_DEL; + mcnt++; + } + } + if (mcnt > 0) + sc->aq_required |= IXLV_FLAG_AQ_DEL_MAC_FILTER; + + IOCTL_DBG_IF(vsi->ifp, "end"); +} + +static void +ixlv_add_multi(struct ixl_vsi *vsi) +{ + struct ifmultiaddr *ifma; + struct ifnet *ifp = vsi->ifp; + struct ixlv_sc *sc = vsi->back; + int mcnt = 0; + + IOCTL_DBG_IF(ifp, "begin"); + + if_maddr_rlock(ifp); + /* + ** Get a count, to decide if we + ** simply use multicast promiscuous. + */ + TAILQ_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { + if (ifma->ifma_addr->sa_family != AF_LINK) + continue; + mcnt++; + } + if_maddr_runlock(ifp); + + if (__predict_false(mcnt >= MAX_MULTICAST_ADDR)) { + /* delete all multicast filters */ + ixlv_init_multi(vsi); + sc->promiscuous_flags |= I40E_FLAG_VF_MULTICAST_PROMISC; + sc->aq_required |= IXLV_FLAG_AQ_CONFIGURE_PROMISC; + IOCTL_DEBUGOUT("%s: end: too many filters", __func__); + return; + } + + mcnt = 0; + if_maddr_rlock(ifp); + TAILQ_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { + if (ifma->ifma_addr->sa_family != AF_LINK) + continue; + if (!ixlv_add_mac_filter(sc, + (u8*)LLADDR((struct sockaddr_dl *) ifma->ifma_addr), + IXL_FILTER_MC)) + mcnt++; + } + if_maddr_runlock(ifp); + /* + ** Notify AQ task that sw filters need to be + ** added to hw list + */ + if (mcnt > 0) + sc->aq_required |= IXLV_FLAG_AQ_ADD_MAC_FILTER; + + IOCTL_DBG_IF(ifp, "end"); +} + +static void +ixlv_del_multi(struct ixl_vsi *vsi) +{ + struct ixlv_mac_filter *f; + struct ifmultiaddr *ifma; + struct ifnet *ifp = vsi->ifp; + struct ixlv_sc *sc = vsi->back; + int mcnt = 0; + bool match = FALSE; + + IOCTL_DBG_IF(ifp, "begin"); + + /* Search for removed multicast addresses */ + if_maddr_rlock(ifp); + SLIST_FOREACH(f, sc->mac_filters, next) { + if ((f->flags & IXL_FILTER_USED) + && (f->flags & IXL_FILTER_MC)) { + /* check if mac address in filter is in sc's list */ + match = FALSE; + TAILQ_FOREACH(ifma, &ifp->if_multiaddrs, ifma_link) { + if (ifma->ifma_addr->sa_family != AF_LINK) + continue; + u8 *mc_addr = + (u8 *)LLADDR((struct sockaddr_dl *)ifma->ifma_addr); + if (cmp_etheraddr(f->macaddr, mc_addr)) { + match = TRUE; + break; + } + } + /* if this filter is not in the sc's list, remove it */ + if (match == FALSE && !(f->flags & IXL_FILTER_DEL)) { + f->flags |= IXL_FILTER_DEL; + mcnt++; + IOCTL_DBG_IF(ifp, "marked: " MAC_FORMAT, + MAC_FORMAT_ARGS(f->macaddr)); + } + else if (match == FALSE) + IOCTL_DBG_IF(ifp, "exists: " MAC_FORMAT, + MAC_FORMAT_ARGS(f->macaddr)); + } + } + if_maddr_runlock(ifp); + + if (mcnt > 0) + sc->aq_required |= IXLV_FLAG_AQ_DEL_MAC_FILTER; + + IOCTL_DBG_IF(ifp, "end"); +} + +/********************************************************************* + * Timer routine + * + * This routine checks for link status,updates statistics, + * and runs the watchdog check. + * + **********************************************************************/ + +static void +ixlv_local_timer(void *arg) +{ + struct ixlv_sc *sc = arg; + struct i40e_hw *hw = &sc->hw; + struct ixl_vsi *vsi = &sc->vsi; + struct ixl_queue *que = vsi->queues; + device_t dev = sc->dev; + int hung = 0; + u32 mask, val, oldval; + + mtx_assert(&sc->mtx, MA_OWNED); + + /* If Reset is in progress just bail */ + if (sc->init_state == IXLV_RESET_PENDING) + return; + + /* Check for when PF triggers a VF reset */ + val = rd32(hw, I40E_VFGEN_RSTAT) & + I40E_VFGEN_RSTAT_VFR_STATE_MASK; + + if (val != I40E_VFR_VFACTIVE + && val != I40E_VFR_COMPLETED) { +#ifdef IXL_DEBUG + device_printf(dev, "%s: reset in progress! (%d)\n", + __func__, val); +#endif + return; + } + + /* check for Admin queue errors */ + val = rd32(hw, hw->aq.arq.len); + oldval = val; + if (val & I40E_VF_ARQLEN_ARQVFE_MASK) { + device_printf(dev, "ARQ VF Error detected\n"); + val &= ~I40E_VF_ARQLEN_ARQVFE_MASK; + } + if (val & I40E_VF_ARQLEN_ARQOVFL_MASK) { + device_printf(dev, "ARQ Overflow Error detected\n"); + val &= ~I40E_VF_ARQLEN_ARQOVFL_MASK; + } + if (val & I40E_VF_ARQLEN_ARQCRIT_MASK) { + device_printf(dev, "ARQ Critical Error detected\n"); + val &= ~I40E_VF_ARQLEN_ARQCRIT_MASK; + } + if (oldval != val) + wr32(hw, hw->aq.arq.len, val); + + val = rd32(hw, hw->aq.asq.len); + oldval = val; + if (val & I40E_VF_ATQLEN_ATQVFE_MASK) { + device_printf(dev, "ASQ VF Error detected\n"); + val &= ~I40E_VF_ATQLEN_ATQVFE_MASK; + } + if (val & I40E_VF_ATQLEN_ATQOVFL_MASK) { + device_printf(dev, "ASQ Overflow Error detected\n"); + val &= ~I40E_VF_ATQLEN_ATQOVFL_MASK; + } + if (val & I40E_VF_ATQLEN_ATQCRIT_MASK) { + device_printf(dev, "ASQ Critical Error detected\n"); + val &= ~I40E_VF_ATQLEN_ATQCRIT_MASK; + } + if (oldval != val) + wr32(hw, hw->aq.asq.len, val); + + /* clean and process any events */ + taskqueue_enqueue(sc->tq, &sc->aq_irq); + + /* + ** Check status on the queues for a hang + */ + mask = (I40E_VFINT_DYN_CTLN_INTENA_MASK | + I40E_VFINT_DYN_CTLN_SWINT_TRIG_MASK); + + for (int i = 0; i < vsi->num_queues; i++,que++) { + /* Any queues with outstanding work get a sw irq */ + if (que->busy) + wr32(hw, I40E_VFINT_DYN_CTLN1(que->me), mask); + /* + ** Each time txeof runs without cleaning, but there + ** are uncleaned descriptors it increments busy. If + ** we get to 5 we declare it hung. + */ + if (que->busy == IXL_QUEUE_HUNG) { + ++hung; + /* Mark the queue as inactive */ + vsi->active_queues &= ~((u64)1 << que->me); + continue; + } else { + /* Check if we've come back from hung */ + if ((vsi->active_queues & ((u64)1 << que->me)) == 0) + vsi->active_queues |= ((u64)1 << que->me); + } + if (que->busy >= IXL_MAX_TX_BUSY) { + device_printf(dev,"Warning queue %d " + "appears to be hung!\n", i); + que->busy = IXL_QUEUE_HUNG; + ++hung; + } + } + /* Only reset when all queues show hung */ + if (hung == vsi->num_queues) + goto hung; + callout_reset(&sc->timer, hz, ixlv_local_timer, sc); + return; + +hung: + device_printf(dev, "Local Timer: TX HANG DETECTED - Resetting!!\n"); + sc->init_state = IXLV_RESET_REQUIRED; + ixlv_init_locked(sc); +} + +/* +** Note: this routine updates the OS on the link state +** the real check of the hardware only happens with +** a link interrupt. +*/ +static void +ixlv_update_link_status(struct ixlv_sc *sc) +{ + struct ixl_vsi *vsi = &sc->vsi; + struct ifnet *ifp = vsi->ifp; + device_t dev = sc->dev; + + if (vsi->link_up){ + if (vsi->link_active == FALSE) { + if (bootverbose) + device_printf(dev,"Link is Up, %d Gbps\n", + (vsi->link_speed == I40E_LINK_SPEED_40GB) ? 40:10); + vsi->link_active = TRUE; + if_link_state_change(ifp, LINK_STATE_UP); + } + } else { /* Link down */ + if (vsi->link_active == TRUE) { + if (bootverbose) + device_printf(dev,"Link is Down\n"); + if_link_state_change(ifp, LINK_STATE_DOWN); + vsi->link_active = FALSE; + } + } + + return; +} + +/********************************************************************* + * + * This routine disables all traffic on the adapter by issuing a + * global reset on the MAC and deallocates TX/RX buffers. + * + **********************************************************************/ + +static void +ixlv_stop(struct ixlv_sc *sc) +{ + mtx_assert(&sc->sc_mtx, MA_OWNED); + + INIT_DBG_IF(&sc->vsi->ifp, "begin"); + + sc->aq_required |= IXLV_FLAG_AQ_DISABLE_QUEUES; + callout_reset(&sc->aq_task, IXLV_CALLOUT_TIMO, + ixlv_sched_aq, sc); + + /* Stop the local timer */ + callout_stop(&sc->timer); + + INIT_DBG_IF(&sc->vsi->ifp, "end"); +} + + +/********************************************************************* + * + * Free all station queue structs. + * + **********************************************************************/ +static void +ixlv_free_queues(struct ixl_vsi *vsi) +{ + struct ixlv_sc *sc = (struct ixlv_sc *)vsi->back; + struct ixl_queue *que = vsi->queues; + + for (int i = 0; i < vsi->num_queues; i++, que++) { + struct tx_ring *txr = &que->txr; + struct rx_ring *rxr = &que->rxr; + + if (!mtx_initialized(&txr->mtx)) /* uninitialized */ + continue; + IXL_TX_LOCK(txr); + ixl_free_que_tx(que); + if (txr->base) + i40e_free_dma(&sc->hw, &txr->dma); + IXL_TX_UNLOCK(txr); + IXL_TX_LOCK_DESTROY(txr); + + if (!mtx_initialized(&rxr->mtx)) /* uninitialized */ + continue; + IXL_RX_LOCK(rxr); + ixl_free_que_rx(que); + if (rxr->base) + i40e_free_dma(&sc->hw, &rxr->dma); + IXL_RX_UNLOCK(rxr); + IXL_RX_LOCK_DESTROY(rxr); + + } + free(vsi->queues, M_DEVBUF); +} + + +/* +** ixlv_config_rss - setup RSS +*/ +static void +ixlv_config_rss(struct ixlv_sc *sc) +{ + struct i40e_hw *hw = &sc->hw; + struct ixl_vsi *vsi = &sc->vsi; + u32 lut = 0; + u64 set_hena, hena; + int i, j; + + /* set up random bits */ + static const u32 seed[I40E_VFQF_HKEY_MAX_INDEX + 1] = { + 0x794221b4, 0xbca0c5ab, 0x6cd5ebd9, 0x1ada6127, + 0x983b3aa1, 0x1c4e71eb, 0x7f6328b2, 0xfcdc0da0, + 0xc135cafa, 0x7a6f7e2d, 0xe7102d28, 0x163cd12e, + 0x4954b126 }; + + /* Fill out hash function seed */ + for (i = 0; i <= I40E_VFQF_HKEY_MAX_INDEX; i++) + wr32(hw, I40E_VFQF_HKEY(i), seed[i]); + + /* Enable PCTYPES for RSS: */ + set_hena = + ((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV4_UDP) | + ((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV4_TCP) | + ((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV4_SCTP) | + ((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV4_OTHER) | + ((u64)1 << I40E_FILTER_PCTYPE_FRAG_IPV4) | + ((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV6_UDP) | + ((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV6_TCP) | + ((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV6_SCTP) | + ((u64)1 << I40E_FILTER_PCTYPE_NONF_IPV6_OTHER) | + ((u64)1 << I40E_FILTER_PCTYPE_FRAG_IPV6) | + ((u64)1 << I40E_FILTER_PCTYPE_L2_PAYLOAD); + + hena = (u64)rd32(hw, I40E_VFQF_HENA(0)) | + ((u64)rd32(hw, I40E_VFQF_HENA(1)) << 32); + hena |= set_hena; + wr32(hw, I40E_VFQF_HENA(0), (u32)hena); + wr32(hw, I40E_VFQF_HENA(1), (u32)(hena >> 32)); + + /* Populate the LUT with max no. of queues in round robin fashion */ + for (i = j = 0; i < hw->func_caps.rss_table_size; i++, j++) { + if (j == vsi->num_queues) + j = 0; + /* lut = 4-byte sliding window of 4 lut entries */ + lut = (lut << 8) | (j & + ((0x1 << hw->func_caps.rss_table_entry_width) - 1)); + /* On i = 3, we have 4 entries in lut; write to the register */ + if ((i & 3) == 3) + wr32(hw, I40E_VFQF_HLUT(i >> 2), lut); + } + ixl_flush(hw); +} + + +/* +** This routine refreshes vlan filters, called by init +** it scans the filter table and then updates the AQ +*/ +static void +ixlv_setup_vlan_filters(struct ixlv_sc *sc) +{ + struct ixl_vsi *vsi = &sc->vsi; + struct ixlv_vlan_filter *f; + int cnt = 0; + + if (vsi->num_vlans == 0) + return; + /* + ** Scan the filter table for vlan entries, + ** and if found call for the AQ update. + */ + SLIST_FOREACH(f, sc->vlan_filters, next) + if (f->flags & IXL_FILTER_ADD) + cnt++; + if (cnt == 0) + return; + + sc->aq_required |= IXLV_FLAG_AQ_ADD_VLAN_FILTER; + return; +} + + +/* +** This routine adds new MAC filters to the sc's list; +** these are later added in hardware by the periodic +** aq task. +*/ +static int +ixlv_add_mac_filter(struct ixlv_sc *sc, u8 *macaddr, u16 flags) +{ + struct ixlv_mac_filter *f; + device_t dev = sc->dev; + + /* Does one already exist? */ + f = ixlv_find_mac_filter(sc, macaddr); + if (f != NULL) { + IDPRINTF(sc->vsi.ifp, "exists: " MAC_FORMAT, + MAC_FORMAT_ARGS(macaddr)); + return (EEXIST); + } + + /* If not, get a new empty filter */ + f = ixlv_get_mac_filter(sc); + if (f == NULL) { + device_printf(dev, "%s: no filters available!!\n", + __func__); + return (ENOMEM); + } + + IDPRINTF(sc->vsi.ifp, "marked: " MAC_FORMAT, + MAC_FORMAT_ARGS(macaddr)); + + bcopy(macaddr, f->macaddr, ETHER_ADDR_LEN); + f->flags |= (IXL_FILTER_ADD | IXL_FILTER_USED); + f->flags |= flags; + return (0); +} + +/* +** Tasklet handler for MSIX Adminq interrupts +** - done outside interrupt context since it might sleep +*/ +static void +ixlv_do_adminq(void *context, int pending) +{ + struct ixlv_sc *sc = context; + struct i40e_hw *hw = &sc->hw; + struct i40e_arq_event_info event; + struct i40e_virtchnl_msg *v_msg; + i40e_status ret; + u16 result = 0; + + + event.buf_len = IXL_AQ_BUF_SZ; + event.msg_buf = malloc(event.buf_len, + M_DEVBUF, M_NOWAIT | M_ZERO); + if (!event.msg_buf) { + printf("Unable to allocate adminq memory\n"); + return; + } + v_msg = (struct i40e_virtchnl_msg *)&event.desc; + + mtx_lock(&sc->mtx); + /* clean and process any events */ + do { + ret = i40e_clean_arq_element(hw, &event, &result); + if (ret) + break; + ixlv_vc_completion(sc, v_msg->v_opcode, + v_msg->v_retval, event.msg_buf, event.msg_len); + if (result != 0) + bzero(event.msg_buf, IXL_AQ_BUF_SZ); + } while (result); + + ixlv_enable_adminq_irq(hw); + free(event.msg_buf, M_DEVBUF); + mtx_unlock(&sc->mtx); + return; +} + +/* +** ixlv_sched_aq - Periodic scheduling tasklet +** +*/ +static void +ixlv_sched_aq(void *context) +{ + struct ixlv_sc *sc = context; + struct ixl_vsi *vsi = &sc->vsi; + + /* This is driven by a callout, don't spin */ + if (!mtx_trylock(&sc->mtx)) + goto done_nolock; + + if (sc->init_state == IXLV_RESET_PENDING) + goto done; + + /* Process requested admin queue tasks */ + if (sc->aq_pending) + goto done; + + if (sc->aq_required & IXLV_FLAG_AQ_MAP_VECTORS) { + ixlv_map_queues(sc); + goto done; + } + + if (sc->aq_required & IXLV_FLAG_AQ_ADD_MAC_FILTER) { + ixlv_add_ether_filters(sc); + goto done; + } + + if (sc->aq_required & IXLV_FLAG_AQ_ADD_VLAN_FILTER) { + ixlv_add_vlans(sc); + goto done; + } + + if (sc->aq_required & IXLV_FLAG_AQ_DEL_MAC_FILTER) { + ixlv_del_ether_filters(sc); + goto done; + } + + if (sc->aq_required & IXLV_FLAG_AQ_DEL_VLAN_FILTER) { + ixlv_del_vlans(sc); + goto done; + } + + if (sc->aq_required & IXLV_FLAG_AQ_CONFIGURE_QUEUES) { + ixlv_configure_queues(sc); + goto done; + } + + if (sc->aq_required & IXLV_FLAG_AQ_DISABLE_QUEUES) { + ixlv_disable_queues(sc); + goto done; + } + + if (sc->aq_required & IXLV_FLAG_AQ_ENABLE_QUEUES) { + ixlv_enable_queues(sc); + goto done; + } + + /* Do stats request only if no other AQ operations requested */ + if (vsi->ifp->if_drv_flags & IFF_DRV_RUNNING) + ixlv_request_stats(sc); + +done: + mtx_unlock(&sc->mtx); +done_nolock: + if (sc->aq_required) /* Reschedule */ + callout_reset(&sc->aq_task, IXLV_CALLOUT_TIMO, + ixlv_sched_aq, sc); + else + callout_reset(&sc->aq_task, 2 * hz, ixlv_sched_aq, sc); +} + +static void +ixlv_add_stats_sysctls(struct ixlv_sc *sc) +{ + device_t dev = sc->dev; + struct ixl_vsi *vsi = &sc->vsi; + struct i40e_eth_stats *es = &vsi->eth_stats; + + struct sysctl_ctx_list *ctx = device_get_sysctl_ctx(dev); + struct sysctl_oid *tree = device_get_sysctl_tree(dev); + struct sysctl_oid_list *child = SYSCTL_CHILDREN(tree); + + struct sysctl_oid *vsi_node, *queue_node; + struct sysctl_oid_list *vsi_list, *queue_list; + +#define QUEUE_NAME_LEN 32 + char queue_namebuf[QUEUE_NAME_LEN]; + + struct ixl_queue *queues = vsi->queues; + struct tx_ring *txr; + struct rx_ring *rxr; + + /* Driver statistics */ + SYSCTL_ADD_ULONG(ctx, child, OID_AUTO, "watchdog_events", + CTLFLAG_RD, &sc->watchdog_events, + "Watchdog timeouts"); + SYSCTL_ADD_ULONG(ctx, child, OID_AUTO, "admin_irq", + CTLFLAG_RD, &sc->admin_irq, + "Admin Queue IRQ Handled"); + + /* VSI statistics */ + vsi_node = SYSCTL_ADD_NODE(ctx, child, OID_AUTO, "vsi", + CTLFLAG_RD, NULL, "VSI-specific statistics"); + vsi_list = SYSCTL_CHILDREN(vsi_node); + + struct ixl_sysctl_info ctls[] = + { + {&es->rx_bytes, "good_octets_rcvd", "Good Octets Received"}, + {&es->rx_unicast, "ucast_pkts_rcvd", + "Unicast Packets Received"}, + {&es->rx_multicast, "mcast_pkts_rcvd", + "Multicast Packets Received"}, + {&es->rx_broadcast, "bcast_pkts_rcvd", + "Broadcast Packets Received"}, + {&es->rx_discards, "rx_discards", "Discarded RX packets"}, + {&es->tx_bytes, "good_octets_txd", "Good Octets Transmitted"}, + {&es->tx_unicast, "ucast_pkts_txd", "Unicast Packets Transmitted"}, + {&es->tx_multicast, "mcast_pkts_txd", + "Multicast Packets Transmitted"}, + {&es->tx_broadcast, "bcast_pkts_txd", + "Broadcast Packets Transmitted"}, + {&es->tx_discards, "tx_discards", "Discarded TX packets"}, + // end + {0,0,0} + }; + struct ixl_sysctl_info *entry = ctls; + while (entry->stat != 0) + { + SYSCTL_ADD_UQUAD(ctx, child, OID_AUTO, entry->name, + CTLFLAG_RD, entry->stat, + entry->description); + entry++; + } + + /* Queue statistics */ + for (int q = 0; q < vsi->num_queues; q++) { + snprintf(queue_namebuf, QUEUE_NAME_LEN, "que%d", q); + queue_node = SYSCTL_ADD_NODE(ctx, vsi_list, OID_AUTO, queue_namebuf, + CTLFLAG_RD, NULL, "Queue Name"); + queue_list = SYSCTL_CHILDREN(queue_node); + + txr = &(queues[q].txr); + rxr = &(queues[q].rxr); + + SYSCTL_ADD_UQUAD(ctx, queue_list, OID_AUTO, "mbuf_defrag_failed", + CTLFLAG_RD, &(queues[q].mbuf_defrag_failed), + "m_defrag() failed"); + SYSCTL_ADD_UQUAD(ctx, queue_list, OID_AUTO, "dropped", + CTLFLAG_RD, &(queues[q].dropped_pkts), + "Driver dropped packets"); + SYSCTL_ADD_UQUAD(ctx, queue_list, OID_AUTO, "irqs", + CTLFLAG_RD, &(queues[q].irqs), + "irqs on this queue"); + SYSCTL_ADD_UQUAD(ctx, queue_list, OID_AUTO, "tso_tx", + CTLFLAG_RD, &(queues[q].tso), + "TSO"); + SYSCTL_ADD_UQUAD(ctx, queue_list, OID_AUTO, "tx_dma_setup", + CTLFLAG_RD, &(queues[q].tx_dma_setup), + "Driver tx dma failure in xmit"); + SYSCTL_ADD_UQUAD(ctx, queue_list, OID_AUTO, "no_desc_avail", + CTLFLAG_RD, &(txr->no_desc), + "Queue No Descriptor Available"); + SYSCTL_ADD_UQUAD(ctx, queue_list, OID_AUTO, "tx_packets", + CTLFLAG_RD, &(txr->total_packets), + "Queue Packets Transmitted"); + SYSCTL_ADD_UQUAD(ctx, queue_list, OID_AUTO, "tx_bytes", + CTLFLAG_RD, &(txr->tx_bytes), + "Queue Bytes Transmitted"); + SYSCTL_ADD_UQUAD(ctx, queue_list, OID_AUTO, "rx_packets", + CTLFLAG_RD, &(rxr->rx_packets), + "Queue Packets Received"); + SYSCTL_ADD_UQUAD(ctx, queue_list, OID_AUTO, "rx_bytes", + CTLFLAG_RD, &(rxr->rx_bytes), + "Queue Bytes Received"); + } +} + +static void +ixlv_init_filters(struct ixlv_sc *sc) +{ + sc->mac_filters = malloc(sizeof(struct ixlv_mac_filter), + M_DEVBUF, M_NOWAIT | M_ZERO); + SLIST_INIT(sc->mac_filters); + sc->vlan_filters = malloc(sizeof(struct ixlv_vlan_filter), + M_DEVBUF, M_NOWAIT | M_ZERO); + SLIST_INIT(sc->vlan_filters); + return; +} + +static void +ixlv_free_filters(struct ixlv_sc *sc) +{ + struct ixlv_mac_filter *f; + struct ixlv_vlan_filter *v; + + while (!SLIST_EMPTY(sc->mac_filters)) { + f = SLIST_FIRST(sc->mac_filters); + SLIST_REMOVE_HEAD(sc->mac_filters, next); + free(f, M_DEVBUF); + } + while (!SLIST_EMPTY(sc->vlan_filters)) { + v = SLIST_FIRST(sc->vlan_filters); + SLIST_REMOVE_HEAD(sc->vlan_filters, next); + free(v, M_DEVBUF); + } + return; +} + diff --git a/sys/dev/i40e/i40e.h b/sys/dev/ixl/ixl.h index e377c2c..25e6d27 100755..100644 --- a/sys/dev/i40e/i40e.h +++ b/sys/dev/ixl/ixl.h @@ -33,8 +33,8 @@ /*$FreeBSD$*/ -#ifndef _I40E_H_ -#define _I40E_H_ +#ifndef _IXL_H_ +#define _IXL_H_ #include <sys/param.h> @@ -91,7 +91,7 @@ #include "i40e_type.h" #include "i40e_prototype.h" -#ifdef I40E_DEBUG +#ifdef IXL_DEBUG #include <sys/sbuf.h> #define MAC_FORMAT "%02x:%02x:%02x:%02x:%02x:%02x" @@ -100,15 +100,48 @@ (mac_addr)[4], (mac_addr)[5] #define ON_OFF_STR(is_set) ((is_set) ? "On" : "Off") -#define DPRINTF(...) printf(__VA_ARGS__) -#define DDPRINTF(dev, ...) device_printf(dev, __VA_ARGS__) -#define IDPRINTF(ifp, ...) if_printf(ifp, __VA_ARGS__) -// static void i40e_dump_desc(void *, u8, u16); +#define _DBG_PRINTF(S, ...) printf("%s: " S "\n", __func__, ##__VA_ARGS__) +#define _DEV_DBG_PRINTF(dev, S, ...) device_printf(dev, "%s: " S "\n", __func__, ##__VA_ARGS__) +#define _IF_DBG_PRINTF(ifp, S, ...) if_printf(ifp, "%s: " S "\n", __func__, ##__VA_ARGS__) + +/* Defines for printing generic debug information */ +#define DPRINTF(...) _DBG_PRINTF(__VA_ARGS__) +#define DDPRINTF(...) _DEV_DBG_PRINTF(__VA_ARGS__) +#define IDPRINTF(...) _IF_DBG_PRINTF(__VA_ARGS__) + +/* Defines for printing specific debug information */ +#define DEBUG_INIT 1 +#define DEBUG_IOCTL 1 +#define DEBUG_HW 1 + +#define INIT_DEBUGOUT(...) if (DEBUG_INIT) _DBG_PRINTF(__VA_ARGS__) +#define INIT_DBG_DEV(...) if (DEBUG_INIT) _DEV_DBG_PRINTF(__VA_ARGS__) +#define INIT_DBG_IF(...) if (DEBUG_INIT) _IF_DBG_PRINTF(__VA_ARGS__) + +#define IOCTL_DEBUGOUT(...) if (DEBUG_IOCTL) _DBG_PRINTF(__VA_ARGS__) +#define IOCTL_DBG_IF2(ifp, S, ...) if (DEBUG_IOCTL) \ + if_printf(ifp, S "\n", ##__VA_ARGS__) +#define IOCTL_DBG_IF(...) if (DEBUG_IOCTL) _IF_DBG_PRINTF(__VA_ARGS__) + +#define HW_DEBUGOUT(...) if (DEBUG_HW) _DBG_PRINTF(__VA_ARGS__) + #else +#define DEBUG_INIT 0 +#define DEBUG_IOCTL 0 +#define DEBUG_HW 0 + #define DPRINTF(...) #define DDPRINTF(...) #define IDPRINTF(...) + +#define INIT_DEBUGOUT(...) +#define INIT_DBG_DEV(...) +#define INIT_DBG_IF(...) +#define IOCTL_DEBUGOUT(...) +#define IOCTL_DBG_IF2(...) +#define IOCTL_DBG_IF(...) +#define HW_DEBUGOUT(...) #endif /* Tunables */ @@ -124,6 +157,11 @@ #define MAX_RING 4096 #define MIN_RING 32 +/* +** Default number of entries in Tx queue buf_ring. +*/ +#define DEFAULT_TXBRSZ (4096 * 4096) + /* Alignment for rings */ #define DBA_ALIGN 128 @@ -138,106 +176,91 @@ * pass between any two TX clean operations, such only happening * when the TX hardware is functioning. */ -#define I40E_WATCHDOG (10 * hz) +#define IXL_WATCHDOG (10 * hz) /* * This parameters control when the driver calls the routine to reclaim * transmit descriptors. */ -#define I40E_TX_CLEANUP_THRESHOLD (que->num_desc / 8) -#define I40E_TX_OP_THRESHOLD (que->num_desc / 32) +#define IXL_TX_CLEANUP_THRESHOLD (que->num_desc / 8) +#define IXL_TX_OP_THRESHOLD (que->num_desc / 32) /* Flow control constants */ -#define I40E_FC_PAUSE 0xFFFF -#define I40E_FC_HI 0x20000 -#define I40E_FC_LO 0x10000 - -/* Defines for printing debug information */ -#define DEBUG_INIT 0 -#define DEBUG_IOCTL 0 -#define DEBUG_HW 0 - -#define INIT_DEBUGOUT(S) if (DEBUG_INIT) printf(S "\n") -#define INIT_DEBUGOUT1(S, A) if (DEBUG_INIT) printf(S "\n", A) -#define INIT_DEBUGOUT2(S, A, B) if (DEBUG_INIT) printf(S "\n", A, B) -#define IOCTL_DEBUGOUT(S) if (DEBUG_IOCTL) printf(S "\n") -#define IOCTL_DEBUGOUT1(S, A) if (DEBUG_IOCTL) printf(S "\n", A) -#define IOCTL_DEBUGOUT2(S, A, B) if (DEBUG_IOCTL) printf(S "\n", A, B) -#define HW_DEBUGOUT(S) if (DEBUG_HW) printf(S "\n") -#define HW_DEBUGOUT1(S, A) if (DEBUG_HW) printf(S "\n", A) -#define HW_DEBUGOUT2(S, A, B) if (DEBUG_HW) printf(S "\n", A, B) +#define IXL_FC_PAUSE 0xFFFF +#define IXL_FC_HI 0x20000 +#define IXL_FC_LO 0x10000 #define MAX_MULTICAST_ADDR 128 -#define I40E_BAR 3 -#define I40E_ADM_LIMIT 2 -#define I40E_TSO_SIZE 65535 -#define I40E_TX_BUF_SZ ((u32) 1514) -#define I40E_AQ_BUF_SZ ((u32) 4096) -#define I40E_RX_HDR 128 -#define I40E_AQ_LEN 32 -#define I40E_AQ_BUFSZ 4096 -#define I40E_RX_LIMIT 512 -#define I40E_RX_ITR 0 -#define I40E_TX_ITR 1 -#define I40E_ITR_NONE 3 -#define I40E_QUEUE_EOL 0x7FF -#define I40E_MAX_FRAME 0x2600 -#define I40E_MAX_TX_SEGS 8 -#define I40E_MAX_TSO_SEGS 66 -#define I40E_SPARSE_CHAIN 6 -#define I40E_QUEUE_HUNG 0x80000000 +#define IXL_BAR 3 +#define IXL_ADM_LIMIT 2 +#define IXL_TSO_SIZE 65535 +#define IXL_TX_BUF_SZ ((u32) 1514) +#define IXL_AQ_BUF_SZ ((u32) 4096) +#define IXL_RX_HDR 128 +#define IXL_AQ_LEN 256 +#define IXL_AQ_BUFSZ 4096 +#define IXL_RX_LIMIT 512 +#define IXL_RX_ITR 0 +#define IXL_TX_ITR 1 +#define IXL_ITR_NONE 3 +#define IXL_QUEUE_EOL 0x7FF +#define IXL_MAX_FRAME 0x2600 +#define IXL_MAX_TX_SEGS 8 +#define IXL_MAX_TSO_SEGS 66 +#define IXL_SPARSE_CHAIN 6 +#define IXL_QUEUE_HUNG 0x80000000 /* ERJ: hardware can support ~1.5k filters between all functions */ -#define I40E_MAX_FILTERS 256 -#define I40E_MAX_TX_BUSY 10 +#define IXL_MAX_FILTERS 256 +#define IXL_MAX_TX_BUSY 10 -#define I40E_NVM_VERSION_LO_SHIFT 0 -#define I40E_NVM_VERSION_LO_MASK (0xff << I40E_NVM_VERSION_LO_SHIFT) -#define I40E_NVM_VERSION_HI_SHIFT 12 -#define I40E_NVM_VERSION_HI_MASK (0xf << I40E_NVM_VERSION_HI_SHIFT) +#define IXL_NVM_VERSION_LO_SHIFT 0 +#define IXL_NVM_VERSION_LO_MASK (0xff << IXL_NVM_VERSION_LO_SHIFT) +#define IXL_NVM_VERSION_HI_SHIFT 12 +#define IXL_NVM_VERSION_HI_MASK (0xf << IXL_NVM_VERSION_HI_SHIFT) /* * Interrupt Moderation parameters */ -#define I40E_MAX_ITR 0x07FF -#define I40E_ITR_100K 0x0005 -#define I40E_ITR_20K 0x0019 -#define I40E_ITR_8K 0x003E -#define I40E_ITR_4K 0x007A -#define I40E_ITR_DYNAMIC 0x8000 -#define I40E_LOW_LATENCY 0 -#define I40E_AVE_LATENCY 1 -#define I40E_BULK_LATENCY 2 +#define IXL_MAX_ITR 0x07FF +#define IXL_ITR_100K 0x0005 +#define IXL_ITR_20K 0x0019 +#define IXL_ITR_8K 0x003E +#define IXL_ITR_4K 0x007A +#define IXL_ITR_DYNAMIC 0x8000 +#define IXL_LOW_LATENCY 0 +#define IXL_AVE_LATENCY 1 +#define IXL_BULK_LATENCY 2 /* MacVlan Flags */ -#define I40E_FILTER_USED (u16)(1 << 0) -#define I40E_FILTER_VLAN (u16)(1 << 1) -#define I40E_FILTER_ADD (u16)(1 << 2) -#define I40E_FILTER_DEL (u16)(1 << 3) -#define I40E_FILTER_MC (u16)(1 << 4) +#define IXL_FILTER_USED (u16)(1 << 0) +#define IXL_FILTER_VLAN (u16)(1 << 1) +#define IXL_FILTER_ADD (u16)(1 << 2) +#define IXL_FILTER_DEL (u16)(1 << 3) +#define IXL_FILTER_MC (u16)(1 << 4) /* used in the vlan field of the filter when not a vlan */ -#define I40E_VLAN_ANY -1 +#define IXL_VLAN_ANY -1 #define CSUM_OFFLOAD_IPV4 (CSUM_IP|CSUM_TCP|CSUM_UDP|CSUM_SCTP) #define CSUM_OFFLOAD_IPV6 (CSUM_TCP_IPV6|CSUM_UDP_IPV6|CSUM_SCTP_IPV6) #define CSUM_OFFLOAD (CSUM_OFFLOAD_IPV4|CSUM_OFFLOAD_IPV6|CSUM_TSO) -/* Misc flags for i40e_vsi.flags */ -#define I40E_FLAGS_KEEP_TSO4 (1 << 0) -#define I40E_FLAGS_KEEP_TSO6 (1 << 1) +/* Misc flags for ixl_vsi.flags */ +#define IXL_FLAGS_KEEP_TSO4 (1 << 0) +#define IXL_FLAGS_KEEP_TSO6 (1 << 1) -#define I40E_TX_LOCK(_sc) mtx_lock(&(_sc)->mtx) -#define I40E_TX_UNLOCK(_sc) mtx_unlock(&(_sc)->mtx) -#define I40E_TX_LOCK_DESTROY(_sc) mtx_destroy(&(_sc)->mtx) -#define I40E_TX_TRYLOCK(_sc) mtx_trylock(&(_sc)->mtx) -#define I40E_TX_LOCK_ASSERT(_sc) mtx_assert(&(_sc)->mtx, MA_OWNED) +#define IXL_TX_LOCK(_sc) mtx_lock(&(_sc)->mtx) +#define IXL_TX_UNLOCK(_sc) mtx_unlock(&(_sc)->mtx) +#define IXL_TX_LOCK_DESTROY(_sc) mtx_destroy(&(_sc)->mtx) +#define IXL_TX_TRYLOCK(_sc) mtx_trylock(&(_sc)->mtx) +#define IXL_TX_LOCK_ASSERT(_sc) mtx_assert(&(_sc)->mtx, MA_OWNED) -#define I40E_RX_LOCK(_sc) mtx_lock(&(_sc)->mtx) -#define I40E_RX_UNLOCK(_sc) mtx_unlock(&(_sc)->mtx) -#define I40E_RX_LOCK_DESTROY(_sc) mtx_destroy(&(_sc)->mtx) +#define IXL_RX_LOCK(_sc) mtx_lock(&(_sc)->mtx) +#define IXL_RX_UNLOCK(_sc) mtx_unlock(&(_sc)->mtx) +#define IXL_RX_LOCK_DESTROY(_sc) mtx_destroy(&(_sc)->mtx) /* ***************************************************************************** @@ -248,36 +271,39 @@ * ***************************************************************************** */ -typedef struct _i40e_vendor_info_t { +typedef struct _ixl_vendor_info_t { unsigned int vendor_id; unsigned int device_id; unsigned int subvendor_id; unsigned int subdevice_id; unsigned int index; -} i40e_vendor_info_t; +} ixl_vendor_info_t; -struct i40e_tx_buf { +struct ixl_tx_buf { u32 eop_index; struct mbuf *m_head; bus_dmamap_t map; bus_dma_tag_t tag; }; -struct i40e_rx_buf { +struct ixl_rx_buf { struct mbuf *m_head; struct mbuf *m_pack; struct mbuf *fmp; bus_dmamap_t hmap; bus_dmamap_t pmap; +#ifdef DEV_NETMAP + u64 addr; +#endif }; /* ** This struct has multiple uses, multicast ** addresses, vlans, and mac filters all use it. */ -struct i40e_mac_filter { - SLIST_ENTRY(i40e_mac_filter) next; +struct ixl_mac_filter { + SLIST_ENTRY(ixl_mac_filter) next; u8 macaddr[ETHER_ADDR_LEN]; s16 vlan; u16 flags; @@ -288,7 +314,7 @@ struct i40e_mac_filter { * The Transmit ring control struct */ struct tx_ring { - struct i40e_queue *que; + struct ixl_queue *que; struct mtx mtx; u32 tail; struct i40e_tx_desc *base; @@ -299,7 +325,7 @@ struct tx_ring { u16 atr_count; u16 itr; u16 latency; - struct i40e_tx_buf *buffers; + struct ixl_tx_buf *buffers; volatile u16 avail; u32 cmd; bus_dma_tag_t tx_tag; @@ -307,9 +333,12 @@ struct tx_ring { char mtx_name[16]; struct buf_ring *br; - /* Soft Stats */ + /* Used for Dynamic ITR calculation */ u32 packets; u32 bytes; + + /* Soft Stats */ + u64 tx_bytes; u64 no_desc; u64 total_packets; }; @@ -319,7 +348,7 @@ struct tx_ring { * The Receive ring control struct */ struct rx_ring { - struct i40e_queue *que; + struct ixl_queue *que; struct mtx mtx; union i40e_rx_desc *base; struct i40e_dma_mem dma; @@ -332,16 +361,17 @@ struct rx_ring { u16 itr; u16 latency; char mtx_name[16]; - struct i40e_rx_buf *buffers; + struct ixl_rx_buf *buffers; u32 mbuf_sz; u32 tail; bus_dma_tag_t htag; bus_dma_tag_t ptag; - /* Soft stats */ + /* Used for Dynamic ITR calculation */ u32 packets; u32 bytes; + /* Soft stats */ u64 split; u64 rx_packets; u64 rx_bytes; @@ -353,8 +383,8 @@ struct rx_ring { ** Driver queue struct: this is the interrupt container ** for the associated tx and rx ring pair. */ -struct i40e_queue { - struct i40e_vsi *vsi; +struct ixl_queue { + struct ixl_vsi *vsi; u32 me; u32 msix; /* This queue's MSIX vector */ u32 eims; /* This queue's EIMS bit */ @@ -384,8 +414,8 @@ struct i40e_queue { ** there would be one of these per traffic class/type ** for now just one, and its embedded in the pf */ -SLIST_HEAD(i40e_ftl_head, i40e_mac_filter); -struct i40e_vsi { +SLIST_HEAD(ixl_ftl_head, ixl_mac_filter); +struct ixl_vsi { void *back; struct ifnet *ifp; struct device *dev; @@ -397,7 +427,7 @@ struct i40e_vsi { u16 num_queues; u16 rx_itr_setting; u16 tx_itr_setting; - struct i40e_queue *queues; /* head of queues */ + struct ixl_queue *queues; /* head of queues */ bool link_active; u16 seid; u16 max_frame_size; @@ -406,7 +436,7 @@ struct i40e_vsi { u32 fc; /* local flow ctrl setting */ /* MAC/VLAN Filter list */ - struct i40e_ftl_head ftl; + struct ixl_ftl_head ftl; struct i40e_aqc_vsi_properties_data info; @@ -432,7 +462,7 @@ struct i40e_vsi { ** Find the number of unrefreshed RX descriptors */ static inline u16 -i40e_rx_unrefreshed(struct i40e_queue *que) +ixl_rx_unrefreshed(struct ixl_queue *que) { struct rx_ring *rxr = &que->rxr; @@ -446,13 +476,13 @@ i40e_rx_unrefreshed(struct i40e_queue *que) /* ** Find the next available unused filter */ -static inline struct i40e_mac_filter * -i40e_get_filter(struct i40e_vsi *vsi) +static inline struct ixl_mac_filter * +ixl_get_filter(struct ixl_vsi *vsi) { - struct i40e_mac_filter *f; + struct ixl_mac_filter *f; /* create a new empty filter */ - f = malloc(sizeof(struct i40e_mac_filter), + f = malloc(sizeof(struct ixl_mac_filter), M_DEVBUF, M_NOWAIT | M_ZERO); SLIST_INSERT_HEAD(&vsi->ftl, f, next); @@ -478,19 +508,19 @@ cmp_etheraddr(u8 *ea1, u8 *ea2) /* * Info for stats sysctls */ -struct i40e_sysctl_info { +struct ixl_sysctl_info { u64 *stat; char *name; char *description; }; -extern int i40e_atr_rate; +extern int ixl_atr_rate; /* -** i40e_fw_version_str - format the FW and NVM version strings +** ixl_fw_version_str - format the FW and NVM version strings */ static inline char * -i40e_fw_version_str(struct i40e_hw *hw) +ixl_fw_version_str(struct i40e_hw *hw) { static char buf[32]; @@ -498,10 +528,10 @@ i40e_fw_version_str(struct i40e_hw *hw) "f%d.%d a%d.%d n%02x.%02x e%08x", hw->aq.fw_maj_ver, hw->aq.fw_min_ver, hw->aq.api_maj_ver, hw->aq.api_min_ver, - (hw->nvm.version & I40E_NVM_VERSION_HI_MASK) >> - I40E_NVM_VERSION_HI_SHIFT, - (hw->nvm.version & I40E_NVM_VERSION_LO_MASK) >> - I40E_NVM_VERSION_LO_SHIFT, + (hw->nvm.version & IXL_NVM_VERSION_HI_MASK) >> + IXL_NVM_VERSION_HI_SHIFT, + (hw->nvm.version & IXL_NVM_VERSION_LO_MASK) >> + IXL_NVM_VERSION_LO_SHIFT, hw->nvm.eetrack); return buf; } @@ -509,21 +539,21 @@ i40e_fw_version_str(struct i40e_hw *hw) /********************************************************************* * TXRX Function prototypes *********************************************************************/ -int i40e_allocate_tx_data(struct i40e_queue *); -int i40e_allocate_rx_data(struct i40e_queue *); -void i40e_init_tx_ring(struct i40e_queue *); -int i40e_init_rx_ring(struct i40e_queue *); -bool i40e_rxeof(struct i40e_queue *, int); -bool i40e_txeof(struct i40e_queue *); -int i40e_mq_start(struct ifnet *, struct mbuf *); -int i40e_mq_start_locked(struct ifnet *, struct tx_ring *); -void i40e_deferred_mq_start(void *, int); -void i40e_qflush(struct ifnet *); -void i40e_free_vsi(struct i40e_vsi *); -void i40e_free_que_tx(struct i40e_queue *); -void i40e_free_que_rx(struct i40e_queue *); -#ifdef I40E_FDIR -void i40e_atr(struct i40e_queue *, struct tcphdr *, int); +int ixl_allocate_tx_data(struct ixl_queue *); +int ixl_allocate_rx_data(struct ixl_queue *); +void ixl_init_tx_ring(struct ixl_queue *); +int ixl_init_rx_ring(struct ixl_queue *); +bool ixl_rxeof(struct ixl_queue *, int); +bool ixl_txeof(struct ixl_queue *); +int ixl_mq_start(struct ifnet *, struct mbuf *); +int ixl_mq_start_locked(struct ifnet *, struct tx_ring *); +void ixl_deferred_mq_start(void *, int); +void ixl_qflush(struct ifnet *); +void ixl_free_vsi(struct ixl_vsi *); +void ixl_free_que_tx(struct ixl_queue *); +void ixl_free_que_rx(struct ixl_queue *); +#ifdef IXL_FDIR +void ixl_atr(struct ixl_queue *, struct tcphdr *, int); #endif -#endif /* _I40E_H_ */ +#endif /* _IXL_H_ */ diff --git a/sys/dev/i40e/i40e_pf.h b/sys/dev/ixl/ixl_pf.h index a19ebec..055c54f 100755..100644 --- a/sys/dev/i40e/i40e_pf.h +++ b/sys/dev/ixl/ixl_pf.h @@ -33,11 +33,11 @@ /*$FreeBSD$*/ -#ifndef _I40E_PF_H_ -#define _I40E_PF_H_ +#ifndef _IXL_PF_H_ +#define _IXL_PF_H_ /* Physical controller structure */ -struct i40e_pf { +struct ixl_pf { struct i40e_hw hw; struct i40e_osdep osdep; struct device *dev; @@ -64,6 +64,8 @@ struct i40e_pf { struct task adminq; struct taskqueue *tq; + int advertised_speed; + /* ** VSI - Stations: ** These are the traffic class holders, and @@ -71,7 +73,7 @@ struct i40e_pf { ** associated with them. ** NOTE: for now using just one, so embed it. */ - struct i40e_vsi vsi; + struct ixl_vsi vsi; /* Misc stats maintained by the driver */ u64 watchdog_events; @@ -84,11 +86,11 @@ struct i40e_pf { }; -#define I40E_PF_LOCK_INIT(_sc, _name) \ - mtx_init(&(_sc)->pf_mtx, _name, "I40E PF Lock", MTX_DEF) -#define I40E_PF_LOCK(_sc) mtx_lock(&(_sc)->pf_mtx) -#define I40E_PF_UNLOCK(_sc) mtx_unlock(&(_sc)->pf_mtx) -#define I40E_PF_LOCK_DESTROY(_sc) mtx_destroy(&(_sc)->pf_mtx) -#define I40E_PF_LOCK_ASSERT(_sc) mtx_assert(&(_sc)->pf_mtx, MA_OWNED) +#define IXL_PF_LOCK_INIT(_sc, _name) \ + mtx_init(&(_sc)->pf_mtx, _name, "IXL PF Lock", MTX_DEF) +#define IXL_PF_LOCK(_sc) mtx_lock(&(_sc)->pf_mtx) +#define IXL_PF_UNLOCK(_sc) mtx_unlock(&(_sc)->pf_mtx) +#define IXL_PF_LOCK_DESTROY(_sc) mtx_destroy(&(_sc)->pf_mtx) +#define IXL_PF_LOCK_ASSERT(_sc) mtx_assert(&(_sc)->pf_mtx, MA_OWNED) -#endif /* _I40E_PF_H_ */ +#endif /* _IXL_PF_H_ */ diff --git a/sys/dev/i40e/i40e_txrx.c b/sys/dev/ixl/ixl_txrx.c index e6fdc46..80678ca 100755 --- a/sys/dev/i40e/i40e_txrx.c +++ b/sys/dev/ixl/ixl_txrx.c @@ -33,28 +33,25 @@ /*$FreeBSD$*/ /* -** I40E driver TX/RX Routines: +** IXL driver TX/RX Routines: ** This was seperated to allow usage by ** both the BASE and the VF drivers. */ -#ifdef HAVE_KERNEL_OPTION_HEADERS #include "opt_inet.h" #include "opt_inet6.h" -#endif - -#include "i40e.h" +#include "ixl.h" /* Local Prototypes */ -static void i40e_rx_checksum(struct mbuf *, u32, u32, u8); -static void i40e_refresh_mbufs(struct i40e_queue *, int); -static int i40e_xmit(struct i40e_queue *, struct mbuf **); -static int i40e_tx_setup_offload(struct i40e_queue *, +static void ixl_rx_checksum(struct mbuf *, u32, u32, u8); +static void ixl_refresh_mbufs(struct ixl_queue *, int); +static int ixl_xmit(struct ixl_queue *, struct mbuf **); +static int ixl_tx_setup_offload(struct ixl_queue *, struct mbuf *, u32 *, u32 *); -static bool i40e_tso_setup(struct i40e_queue *, struct mbuf *); +static bool ixl_tso_setup(struct ixl_queue *, struct mbuf *); -static __inline void i40e_rx_discard(struct rx_ring *, int); -static __inline void i40e_rx_input(struct rx_ring *, struct ifnet *, +static __inline void ixl_rx_discard(struct rx_ring *, int); +static __inline void ixl_rx_input(struct rx_ring *, struct ifnet *, struct mbuf *, u8); /* @@ -62,10 +59,10 @@ static __inline void i40e_rx_input(struct rx_ring *, struct ifnet *, ** */ int -i40e_mq_start(struct ifnet *ifp, struct mbuf *m) +ixl_mq_start(struct ifnet *ifp, struct mbuf *m) { - struct i40e_vsi *vsi = ifp->if_softc; - struct i40e_queue *que; + struct ixl_vsi *vsi = ifp->if_softc; + struct ixl_queue *que; struct tx_ring *txr; int err, i; @@ -85,9 +82,9 @@ i40e_mq_start(struct ifnet *ifp, struct mbuf *m) err = drbr_enqueue(ifp, txr->br, m); if (err) return(err); - if (I40E_TX_TRYLOCK(txr)) { - i40e_mq_start_locked(ifp, txr); - I40E_TX_UNLOCK(txr); + if (IXL_TX_TRYLOCK(txr)) { + ixl_mq_start_locked(ifp, txr); + IXL_TX_UNLOCK(txr); } else taskqueue_enqueue(que->tq, &que->tx_task); @@ -95,10 +92,10 @@ i40e_mq_start(struct ifnet *ifp, struct mbuf *m) } int -i40e_mq_start_locked(struct ifnet *ifp, struct tx_ring *txr) +ixl_mq_start_locked(struct ifnet *ifp, struct tx_ring *txr) { - struct i40e_queue *que = txr->que; - struct i40e_vsi *vsi = que->vsi; + struct ixl_queue *que = txr->que; + struct ixl_vsi *vsi = que->vsi; struct mbuf *next; int err = 0; @@ -109,7 +106,7 @@ i40e_mq_start_locked(struct ifnet *ifp, struct tx_ring *txr) /* Process the transmit queue */ while ((next = drbr_peek(ifp, txr->br)) != NULL) { - if ((err = i40e_xmit(que, &next)) != 0) { + if ((err = ixl_xmit(que, &next)) != 0) { if (next == NULL) drbr_advance(ifp, txr->br); else @@ -123,8 +120,8 @@ i40e_mq_start_locked(struct ifnet *ifp, struct tx_ring *txr) break; } - if (txr->avail < I40E_TX_CLEANUP_THRESHOLD) - i40e_txeof(que); + if (txr->avail < IXL_TX_CLEANUP_THRESHOLD) + ixl_txeof(que); return (err); } @@ -133,35 +130,35 @@ i40e_mq_start_locked(struct ifnet *ifp, struct tx_ring *txr) * Called from a taskqueue to drain queued transmit packets. */ void -i40e_deferred_mq_start(void *arg, int pending) +ixl_deferred_mq_start(void *arg, int pending) { - struct i40e_queue *que = arg; + struct ixl_queue *que = arg; struct tx_ring *txr = &que->txr; - struct i40e_vsi *vsi = que->vsi; + struct ixl_vsi *vsi = que->vsi; struct ifnet *ifp = vsi->ifp; - I40E_TX_LOCK(txr); + IXL_TX_LOCK(txr); if (!drbr_empty(ifp, txr->br)) - i40e_mq_start_locked(ifp, txr); - I40E_TX_UNLOCK(txr); + ixl_mq_start_locked(ifp, txr); + IXL_TX_UNLOCK(txr); } /* ** Flush all queue ring buffers */ void -i40e_qflush(struct ifnet *ifp) +ixl_qflush(struct ifnet *ifp) { - struct i40e_vsi *vsi = ifp->if_softc; + struct ixl_vsi *vsi = ifp->if_softc; for (int i = 0; i < vsi->num_queues; i++) { - struct i40e_queue *que = &vsi->queues[i]; + struct ixl_queue *que = &vsi->queues[i]; struct tx_ring *txr = &que->txr; struct mbuf *m; - I40E_TX_LOCK(txr); + IXL_TX_LOCK(txr); while ((m = buf_ring_dequeue_sc(txr->br)) != NULL) m_freem(m); - I40E_TX_UNLOCK(txr); + IXL_TX_UNLOCK(txr); } if_qflush(ifp); } @@ -172,7 +169,7 @@ i40e_qflush(struct ifnet *ifp) ** mbufs to deliver an mss-size chunk of data */ static inline bool -i40e_tso_detect_sparse(struct mbuf *mp) +ixl_tso_detect_sparse(struct mbuf *mp) { struct mbuf *m; int num = 0, mss; @@ -187,7 +184,7 @@ i40e_tso_detect_sparse(struct mbuf *mp) if (m->m_next == NULL) break; } - if (num > I40E_SPARSE_CHAIN) + if (num > IXL_SPARSE_CHAIN) ret = TRUE; return (ret); @@ -201,15 +198,15 @@ i40e_tso_detect_sparse(struct mbuf *mp) * - return 0 on success, positive on failure * **********************************************************************/ -#define I40E_TXD_CMD (I40E_TX_DESC_CMD_EOP | I40E_TX_DESC_CMD_RS) +#define IXL_TXD_CMD (I40E_TX_DESC_CMD_EOP | I40E_TX_DESC_CMD_RS) static int -i40e_xmit(struct i40e_queue *que, struct mbuf **m_headp) +ixl_xmit(struct ixl_queue *que, struct mbuf **m_headp) { - struct i40e_vsi *vsi = que->vsi; + struct ixl_vsi *vsi = que->vsi; struct i40e_hw *hw = vsi->hw; struct tx_ring *txr = &que->txr; - struct i40e_tx_buf *buf; + struct ixl_tx_buf *buf; struct i40e_tx_desc *txd = NULL; struct mbuf *m_head, *m; int i, j, error, nsegs, maxsegs; @@ -218,7 +215,7 @@ i40e_xmit(struct i40e_queue *que, struct mbuf **m_headp) u32 cmd, off; bus_dmamap_t map; bus_dma_tag_t tag; - bus_dma_segment_t segs[I40E_MAX_TSO_SEGS]; + bus_dma_segment_t segs[IXL_MAX_TSO_SEGS]; cmd = off = 0; @@ -233,13 +230,13 @@ i40e_xmit(struct i40e_queue *que, struct mbuf **m_headp) buf = &txr->buffers[first]; map = buf->map; tag = txr->tx_tag; - maxsegs = I40E_MAX_TX_SEGS; + maxsegs = IXL_MAX_TX_SEGS; if (m_head->m_pkthdr.csum_flags & CSUM_TSO) { /* Use larger mapping for TSO */ tag = txr->tso_tag; - maxsegs = I40E_MAX_TSO_SEGS; - if (i40e_tso_detect_sparse(m_head)) { + maxsegs = IXL_MAX_TSO_SEGS; + if (ixl_tso_detect_sparse(m_head)) { m = m_defrag(m_head, M_NOWAIT); *m_headp = m; } @@ -296,7 +293,7 @@ i40e_xmit(struct i40e_queue *que, struct mbuf **m_headp) /* Set up the TSO/CSUM offload */ if (m_head->m_pkthdr.csum_flags & CSUM_OFFLOAD) { - error = i40e_tx_setup_offload(que, m_head, &cmd, &off); + error = ixl_tx_setup_offload(que, m_head, &cmd, &off); if (error) goto xmit_fail; } @@ -335,7 +332,7 @@ i40e_xmit(struct i40e_queue *que, struct mbuf **m_headp) } /* Set the last descriptor for report */ txd->cmd_type_offset_bsz |= - htole64(((u64)I40E_TXD_CMD << I40E_TXD_QW1_CMD_SHIFT)); + htole64(((u64)IXL_TXD_CMD << I40E_TXD_QW1_CMD_SHIFT)); txr->avail -= nsegs; txr->next_avail = i; @@ -358,7 +355,7 @@ i40e_xmit(struct i40e_queue *que, struct mbuf **m_headp) ++txr->total_packets; wr32(hw, txr->tail, i); - i40e_flush(hw); + ixl_flush(hw); /* Mark outstanding work */ if (que->busy == 0) que->busy = 1; @@ -378,12 +375,12 @@ xmit_fail: * **********************************************************************/ int -i40e_allocate_tx_data(struct i40e_queue *que) +ixl_allocate_tx_data(struct ixl_queue *que) { struct tx_ring *txr = &que->txr; - struct i40e_vsi *vsi = que->vsi; + struct ixl_vsi *vsi = que->vsi; device_t dev = vsi->dev; - struct i40e_tx_buf *buf; + struct ixl_tx_buf *buf; int error = 0; /* @@ -394,8 +391,8 @@ i40e_allocate_tx_data(struct i40e_queue *que) BUS_SPACE_MAXADDR, /* lowaddr */ BUS_SPACE_MAXADDR, /* highaddr */ NULL, NULL, /* filter, filterarg */ - I40E_TSO_SIZE, /* maxsize */ - I40E_MAX_TX_SEGS, /* nsegments */ + IXL_TSO_SIZE, /* maxsize */ + IXL_MAX_TX_SEGS, /* nsegments */ PAGE_SIZE, /* maxsegsize */ 0, /* flags */ NULL, /* lockfunc */ @@ -411,8 +408,8 @@ i40e_allocate_tx_data(struct i40e_queue *que) BUS_SPACE_MAXADDR, /* lowaddr */ BUS_SPACE_MAXADDR, /* highaddr */ NULL, NULL, /* filter, filterarg */ - I40E_TSO_SIZE, /* maxsize */ - I40E_MAX_TSO_SEGS, /* nsegments */ + IXL_TSO_SIZE, /* maxsize */ + IXL_MAX_TSO_SEGS, /* nsegments */ PAGE_SIZE, /* maxsegsize */ 0, /* flags */ NULL, /* lockfunc */ @@ -423,7 +420,7 @@ i40e_allocate_tx_data(struct i40e_queue *que) } if (!(txr->buffers = - (struct i40e_tx_buf *) malloc(sizeof(struct i40e_tx_buf) * + (struct ixl_tx_buf *) malloc(sizeof(struct ixl_tx_buf) * que->num_desc, M_DEVBUF, M_NOWAIT | M_ZERO))) { device_printf(dev, "Unable to allocate tx_buffer memory\n"); error = ENOMEM; @@ -453,13 +450,21 @@ fail: * **********************************************************************/ void -i40e_init_tx_ring(struct i40e_queue *que) +ixl_init_tx_ring(struct ixl_queue *que) { struct tx_ring *txr = &que->txr; - struct i40e_tx_buf *buf; + struct ixl_tx_buf *buf; +#ifdef DEV_NETMAP + struct ixl_vsi *vsi = que->vsi; + struct netmap_adapter *na = NA(vsi->ifp); + struct netmap_slot *slot; +#endif /* DEV_NETMAP */ /* Clear the old ring contents */ - I40E_TX_LOCK(txr); + IXL_TX_LOCK(txr); +#ifdef DEV_NETMAP + slot = netmap_reset(na, NR_TX, que->me, 0); +#endif bzero((void *)txr->base, (sizeof(struct i40e_tx_desc)) * que->num_desc); @@ -467,9 +472,9 @@ i40e_init_tx_ring(struct i40e_queue *que) txr->next_avail = 0; txr->next_to_clean = 0; -#ifdef I40E_FDIR +#ifdef IXL_FDIR /* Initialize flow director */ - txr->atr_rate = i40e_atr_rate; + txr->atr_rate = ixl_atr_rate; txr->atr_count = 0; #endif @@ -483,6 +488,13 @@ i40e_init_tx_ring(struct i40e_queue *que) m_freem(buf->m_head); buf->m_head = NULL; } +#ifdef DEV_NETMAP + if (slot) + { + int si = netmap_idx_n2k(&na->tx_rings[que->me], i); + netmap_load_map(txr->tag, buf->map, NMB(slot + si)); + } +#endif /* Clear the EOP index */ buf->eop_index = -1; } @@ -492,7 +504,7 @@ i40e_init_tx_ring(struct i40e_queue *que) bus_dmamap_sync(txr->dma.tag, txr->dma.map, BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE); - I40E_TX_UNLOCK(txr); + IXL_TX_UNLOCK(txr); } @@ -502,12 +514,12 @@ i40e_init_tx_ring(struct i40e_queue *que) * **********************************************************************/ void -i40e_free_que_tx(struct i40e_queue *que) +ixl_free_que_tx(struct ixl_queue *que) { struct tx_ring *txr = &que->txr; - struct i40e_tx_buf *buf; + struct ixl_tx_buf *buf; - INIT_DEBUGOUT("i40e_free_que_tx: begin"); + INIT_DBG_IF(que->vsi->ifp, "queue %d: begin", que->me); for (int i = 0; i < que->num_desc; i++) { buf = &txr->buffers[i]; @@ -545,6 +557,8 @@ i40e_free_que_tx(struct i40e_queue *que) bus_dma_tag_destroy(txr->tso_tag); txr->tso_tag = NULL; } + + INIT_DBG_IF(que->vsi->ifp, "queue %d: end", que->me); return; } @@ -555,7 +569,7 @@ i40e_free_que_tx(struct i40e_queue *que) **********************************************************************/ static int -i40e_tx_setup_offload(struct i40e_queue *que, +ixl_tx_setup_offload(struct ixl_queue *que, struct mbuf *mp, u32 *cmd, u32 *off) { struct ether_vlan_header *eh; @@ -570,7 +584,7 @@ i40e_tx_setup_offload(struct i40e_queue *que, /* Set up the TSO context descriptor if required */ if (mp->m_pkthdr.csum_flags & CSUM_TSO) { - tso = i40e_tso_setup(que, mp); + tso = ixl_tso_setup(que, mp); if (tso) ++que->tso; else @@ -625,8 +639,8 @@ i40e_tx_setup_offload(struct i40e_queue *que, *off |= (tcp_hlen >> 2) << I40E_TX_DESC_LENGTH_L4_FC_LEN_SHIFT; } -#ifdef I40E_FDIR - i40e_atr(que, th, etype); +#ifdef IXL_FDIR + ixl_atr(que, th, etype); #endif break; case IPPROTO_UDP: @@ -658,11 +672,11 @@ i40e_tx_setup_offload(struct i40e_queue *que, * **********************************************************************/ static bool -i40e_tso_setup(struct i40e_queue *que, struct mbuf *mp) +ixl_tso_setup(struct ixl_queue *que, struct mbuf *mp) { struct tx_ring *txr = &que->txr; struct i40e_tx_context_desc *TXD; - struct i40e_tx_buf *buf; + struct ixl_tx_buf *buf; u32 cmd, mss, type, tsolen; u16 etype; int idx, elen, ip_hlen, tcp_hlen; @@ -749,11 +763,11 @@ i40e_tso_setup(struct i40e_queue *que, struct mbuf *mp) } /* -** i40e_get_tx_head - Retrieve the value from the +** ixl_get_tx_head - Retrieve the value from the ** location the HW records its HEAD index */ static inline u32 -i40e_get_tx_head(struct i40e_queue *que) +ixl_get_tx_head(struct ixl_queue *que) { struct tx_ring *txr = &que->txr; void *head = &txr->base[que->num_desc]; @@ -768,18 +782,47 @@ i40e_get_tx_head(struct i40e_queue *que) * **********************************************************************/ bool -i40e_txeof(struct i40e_queue *que) +ixl_txeof(struct ixl_queue *que) { - struct i40e_vsi *vsi = que->vsi; + struct ixl_vsi *vsi = que->vsi; struct ifnet *ifp = vsi->ifp; struct tx_ring *txr = &que->txr; u32 first, last, head, done, processed; - struct i40e_tx_buf *buf; + struct ixl_tx_buf *buf; struct i40e_tx_desc *tx_desc, *eop_desc; mtx_assert(&txr->mtx, MA_OWNED); +#ifdef DEV_NETMAP + if (ifp->if_capenable & IFCAP_NETMAP) { + struct netmap_adapter *na = NA(ifp); + struct netmap_kring *kring = &na->tx_rings[que->me]; + tx_desc = txr->base; + bus_dmamap_sync(txr->dma.tag, txr->dma.map, + BUS_DMASYNC_POSTREAD); + if (!netmap_mitigate || + (kring->nr_kflags < kring->nkr_num_slots && + tx_desc[kring->nr_kflags].cmd_type_offset_bsz & + htole32(I40E_TX_DESC_DTYPE_DESC_DONE))) + { +#if NETMAP_API < 4 + struct ixl_pf *pf = vsi->pf; + kring->nr_kflags = kring->nkr_num_slots; + selwakeuppri(&na->tx_rings[que->me].si, PI_NET); + IXL_TX_UNLOCK(txr); + IXL_PF_LOCK(pf); + selwakeuppri(&na->tx_si, PI_NET); + IXL_PF_UNLOCK(pf); + IXL_TX_LOCK(txr); +#else /* NETMAP_API >= 4 */ + netmap_tx_irq(ifp, txr->que->me); +#endif /* NETMAP_API */ + } + // XXX guessing there is no more work to be done + return FALSE; + } +#endif /* DEV_NETMAP */ /* These are not the descriptors you seek, move along :) */ if (txr->avail == que->num_desc) { @@ -797,7 +840,7 @@ i40e_txeof(struct i40e_queue *que) eop_desc = (struct i40e_tx_desc *)&txr->base[last]; /* Get the Head WB value */ - head = i40e_get_tx_head(que); + head = ixl_get_tx_head(que); /* ** Get the index of the first descriptor @@ -823,7 +866,9 @@ i40e_txeof(struct i40e_queue *que) ++processed; if (buf->m_head) { - txr->bytes += + txr->bytes += /* for ITR adjustment */ + buf->m_head->m_pkthdr.len; + txr->tx_bytes += /* for TX stats */ buf->m_head->m_pkthdr.len; bus_dmamap_sync(buf->tag, buf->map, @@ -869,7 +914,7 @@ i40e_txeof(struct i40e_queue *que) ** be considered hung. If anything has been ** cleaned then reset the state. */ - if ((processed == 0) && (que->busy != I40E_QUEUE_HUNG)) + if ((processed == 0) && (que->busy != IXL_QUEUE_HUNG)) ++que->busy; if (processed) @@ -896,13 +941,13 @@ i40e_txeof(struct i40e_queue *que) * **********************************************************************/ static void -i40e_refresh_mbufs(struct i40e_queue *que, int limit) +ixl_refresh_mbufs(struct ixl_queue *que, int limit) { - struct i40e_vsi *vsi = que->vsi; + struct ixl_vsi *vsi = que->vsi; struct rx_ring *rxr = &que->rxr; bus_dma_segment_t hseg[1]; bus_dma_segment_t pseg[1]; - struct i40e_rx_buf *buf; + struct ixl_rx_buf *buf; struct mbuf *mh, *mp; int i, j, nsegs, error; bool refreshed = FALSE; @@ -966,8 +1011,12 @@ no_split: buf->m_pack = mp; bus_dmamap_sync(rxr->ptag, buf->pmap, BUS_DMASYNC_PREREAD); +#ifdef DEV_NETMAP + rxr->base[i].read.pkt_addr = buf->addr; +#else /* !DEV_NETMAP */ rxr->base[i].read.pkt_addr = htole64(pseg[0].ds_addr); +#endif /* DEV_NETMAP */ /* Used only when doing header split */ rxr->base[i].read.hdr_addr = 0; @@ -994,17 +1043,17 @@ update: * **********************************************************************/ int -i40e_allocate_rx_data(struct i40e_queue *que) +ixl_allocate_rx_data(struct ixl_queue *que) { struct rx_ring *rxr = &que->rxr; - struct i40e_vsi *vsi = que->vsi; + struct ixl_vsi *vsi = que->vsi; device_t dev = vsi->dev; - struct i40e_rx_buf *buf; + struct ixl_rx_buf *buf; int i, bsize, error; - bsize = sizeof(struct i40e_rx_buf) * que->num_desc; + bsize = sizeof(struct ixl_rx_buf) * que->num_desc; if (!(rxr->buffers = - (struct i40e_rx_buf *) malloc(bsize, + (struct ixl_rx_buf *) malloc(bsize, M_DEVBUF, M_NOWAIT | M_ZERO))) { device_printf(dev, "Unable to allocate rx_buffer memory\n"); error = ENOMEM; @@ -1069,17 +1118,24 @@ i40e_allocate_rx_data(struct i40e_queue *que) * **********************************************************************/ int -i40e_init_rx_ring(struct i40e_queue *que) +ixl_init_rx_ring(struct ixl_queue *que) { - struct i40e_vsi *vsi = que->vsi; + struct ixl_vsi *vsi = que->vsi; struct ifnet *ifp = vsi->ifp; struct rx_ring *rxr = &que->rxr; struct lro_ctrl *lro = &rxr->lro; - struct i40e_rx_buf *buf; + struct ixl_rx_buf *buf; bus_dma_segment_t pseg[1], hseg[1]; int rsize, nsegs, error = 0; - - I40E_RX_LOCK(rxr); +#ifdef DEV_NETMAP + struct netmap_adapter *na = NA(ifp); + struct netmap_slot *slot; +#endif /* DEV_NETMAP */ + + IXL_RX_LOCK(rxr); +#ifdef DEV_NETMAP + slot = netmap_reset(na, NR_RX, que->me, 0); +#endif /* Clear the ring contents */ rsize = roundup2(que->num_desc * sizeof(union i40e_rx_desc), DBA_ALIGN); @@ -1113,6 +1169,21 @@ i40e_init_rx_ring(struct i40e_queue *que) struct mbuf *mh, *mp; buf = &rxr->buffers[j]; +#ifdef DEV_NETMAP + if (slot) + { + int sj = netmap_idx_n2k(&na->rx_rings[que->me], j); + u64 paddr; + void *addr; + + addr = PNMB(slot + sj, &paddr); + netmap_load_map(rxr->ptag, buf->pmap, addr); + /* Update descriptor and cached value */ + rxr->base[j].read.pkt_addr = htole64(paddr); + buf->addr = htole64(paddr); + continue; + } +#endif /* DEV_NETMAP */ /* ** Don't allocate mbufs if not ** doing header split, its wasteful @@ -1179,10 +1250,10 @@ skip_head: if (ifp->if_capenable & IFCAP_LRO) { int err = tcp_lro_init(lro); if (err) { - printf("LRO Initialization failed!\n"); + if_printf(ifp, "queue %d: LRO Initialization failed!\n", que->me); goto fail; } - INIT_DEBUGOUT("RX Soft LRO Initialized\n"); + INIT_DBG_IF(ifp, "queue %d: RX Soft LRO Initialized", que->me); rxr->lro_enabled = TRUE; lro->ifp = vsi->ifp; } @@ -1191,7 +1262,7 @@ skip_head: BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE); fail: - I40E_RX_UNLOCK(rxr); + IXL_RX_UNLOCK(rxr); return (error); } @@ -1202,12 +1273,12 @@ fail: * **********************************************************************/ void -i40e_free_que_rx(struct i40e_queue *que) +ixl_free_que_rx(struct ixl_queue *que) { struct rx_ring *rxr = &que->rxr; - struct i40e_rx_buf *buf; + struct ixl_rx_buf *buf; - INIT_DEBUGOUT("free_que_rx: begin"); + INIT_DBG_IF(que->vsi->ifp, "queue %d: begin", que->me); /* Cleanup any existing buffers */ if (rxr->buffers != NULL) { @@ -1252,11 +1323,13 @@ i40e_free_que_rx(struct i40e_queue *que) bus_dma_tag_destroy(rxr->ptag); rxr->ptag = NULL; } + + INIT_DBG_IF(que->vsi->ifp, "queue %d: end", que->me); return; } static __inline void -i40e_rx_input(struct rx_ring *rxr, struct ifnet *ifp, struct mbuf *m, u8 ptype) +ixl_rx_input(struct rx_ring *rxr, struct ifnet *ifp, struct mbuf *m, u8 ptype) { /* * ATM LRO is only for IPv4/TCP packets and TCP checksum of the packet @@ -1277,16 +1350,16 @@ i40e_rx_input(struct rx_ring *rxr, struct ifnet *ifp, struct mbuf *m, u8 ptype) if (tcp_lro_rx(&rxr->lro, m, 0) == 0) return; } - I40E_RX_UNLOCK(rxr); + IXL_RX_UNLOCK(rxr); (*ifp->if_input)(ifp, m); - I40E_RX_LOCK(rxr); + IXL_RX_LOCK(rxr); } static __inline void -i40e_rx_discard(struct rx_ring *rxr, int i) +ixl_rx_discard(struct rx_ring *rxr, int i) { - struct i40e_rx_buf *rbuf; + struct ixl_rx_buf *rbuf; rbuf = &rxr->buffers[i]; @@ -1329,20 +1402,42 @@ i40e_rx_discard(struct rx_ring *rxr, int i) * Return TRUE for more work, FALSE for all clean. *********************************************************************/ bool -i40e_rxeof(struct i40e_queue *que, int count) +ixl_rxeof(struct ixl_queue *que, int count) { - struct i40e_vsi *vsi = que->vsi; + struct ixl_vsi *vsi = que->vsi; struct rx_ring *rxr = &que->rxr; struct ifnet *ifp = vsi->ifp; struct lro_ctrl *lro = &rxr->lro; struct lro_entry *queued; int i, nextp, processed = 0; union i40e_rx_desc *cur; - struct i40e_rx_buf *rbuf, *nbuf; + struct ixl_rx_buf *rbuf, *nbuf; + + IXL_RX_LOCK(rxr); - I40E_RX_LOCK(rxr); +#ifdef DEV_NETMAP +#if NETMAP_API < 4 + if (ifp->if_capenable & IFCAP_NETMAP) + { + struct netmap_adapter *na = NA(ifp); + na->rx_rings[que->me].nr_kflags |= NKR_PENDINTR; + selwakeuppri(&na->rx_rings[que->me].si, PI_NET); + IXL_RX_UNLOCK(rxr); + IXL_PF_LOCK(vsi->pf); + selwakeuppri(&na->rx_si, PI_NET); + IXL_PF_UNLOCK(vsi->pf); + return (FALSE); + } +#else /* NETMAP_API >= 4 */ + if (netmap_rx_irq(ifp, que->me, &processed)) + { + IXL_RX_UNLOCK(rxr); + return (FALSE); + } +#endif /* NETMAP_API */ +#endif /* DEV_NETMAP */ for (i = rxr->next_check; count != 0;) { struct mbuf *sendmp, *mh, *mp; @@ -1398,7 +1493,7 @@ i40e_rxeof(struct i40e_queue *que, int count) if (eop && (error & (1 << I40E_RX_DESC_ERROR_RXE_SHIFT))) { ifp->if_ierrors++; rxr->discarded++; - i40e_rx_discard(rxr, i); + ixl_rx_discard(rxr, i); goto next_desc; } @@ -1423,8 +1518,8 @@ i40e_rxeof(struct i40e_queue *que, int count) ** descriptor to the next, until we get EOP. */ if (rxr->hdr_split && (rbuf->fmp == NULL)) { - if (hlen > I40E_RX_HDR) - hlen = I40E_RX_HDR; + if (hlen > IXL_RX_HDR) + hlen = IXL_RX_HDR; mh->m_len = hlen; mh->m_flags |= M_PKTHDR; mh->m_next = NULL; @@ -1512,7 +1607,7 @@ i40e_rxeof(struct i40e_queue *que, int count) rxr->packets++; rxr->bytes += sendmp->m_pkthdr.len; if ((ifp->if_capenable & IFCAP_RXCSUM) != 0) - i40e_rx_checksum(sendmp, status, error, ptype); + ixl_rx_checksum(sendmp, status, error, ptype); sendmp->m_pkthdr.flowid = que->msix; sendmp->m_flags |= M_FLOWID; } @@ -1527,20 +1622,20 @@ next_desc: /* Now send to the stack or do LRO */ if (sendmp != NULL) { rxr->next_check = i; - i40e_rx_input(rxr, ifp, sendmp, ptype); + ixl_rx_input(rxr, ifp, sendmp, ptype); i = rxr->next_check; } /* Every 8 descriptors we go to refresh mbufs */ if (processed == 8) { - i40e_refresh_mbufs(que, i); + ixl_refresh_mbufs(que, i); processed = 0; } } /* Refresh any remaining buf structs */ - if (i40e_rx_unrefreshed(que)) - i40e_refresh_mbufs(que, i); + if (ixl_rx_unrefreshed(que)) + ixl_refresh_mbufs(que, i); rxr->next_check = i; @@ -1552,7 +1647,7 @@ next_desc: tcp_lro_flush(lro, queued); } - I40E_RX_UNLOCK(rxr); + IXL_RX_UNLOCK(rxr); return (FALSE); } @@ -1565,7 +1660,7 @@ next_desc: * *********************************************************************/ static void -i40e_rx_checksum(struct mbuf * mp, u32 status, u32 error, u8 ptype) +ixl_rx_checksum(struct mbuf * mp, u32 status, u32 error, u8 ptype) { struct i40e_rx_ptype_decoded decoded; diff --git a/sys/dev/ixl/ixlv.h b/sys/dev/ixl/ixlv.h new file mode 100644 index 0000000..a5bfe13 --- /dev/null +++ b/sys/dev/ixl/ixlv.h @@ -0,0 +1,205 @@ +/****************************************************************************** + + Copyright (c) 2013-2014, Intel Corporation + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + 3. Neither the name of the Intel Corporation nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + +******************************************************************************/ +/*$FreeBSD$*/ + + +#ifndef _IXLV_H_ +#define _IXLV_H_ + +#define IXLV_AQ_MAX_ERR 100 +#define IXLV_MAX_FILTERS 128 +#define IXLV_MAX_QUEUES 16 +#define IXLV_AQ_TIMEOUT (1 * hz) +#define IXLV_CALLOUT_TIMO (hz / 50) // 20 msec + +#define IXLV_FLAG_AQ_ENABLE_QUEUES (u32)(1) +#define IXLV_FLAG_AQ_DISABLE_QUEUES (u32)(1 << 1) +#define IXLV_FLAG_AQ_ADD_MAC_FILTER (u32)(1 << 2) +#define IXLV_FLAG_AQ_ADD_VLAN_FILTER (u32)(1 << 3) +#define IXLV_FLAG_AQ_DEL_MAC_FILTER (u32)(1 << 4) +#define IXLV_FLAG_AQ_DEL_VLAN_FILTER (u32)(1 << 5) +#define IXLV_FLAG_AQ_CONFIGURE_QUEUES (u32)(1 << 6) +#define IXLV_FLAG_AQ_MAP_VECTORS (u32)(1 << 7) +#define IXLV_FLAG_AQ_HANDLE_RESET (u32)(1 << 8) +#define IXLV_FLAG_AQ_CONFIGURE_PROMISC (u32)(1 << 9) +#define IXLV_FLAG_AQ_GET_STATS (u32)(1 << 10) + +/* printf %b arg */ +#define IXLV_FLAGS \ + "\20\1ENABLE_QUEUES\2DISABLE_QUEUES\3ADD_MAC_FILTER" \ + "\4ADD_VLAN_FILTER\5DEL_MAC_FILTER\6DEL_VLAN_FILTER" \ + "\7CONFIGURE_QUEUES\10MAP_VECTORS\11HANDLE_RESET" \ + "\12CONFIGURE_PROMISC\13GET_STATS" + +/* Driver state */ +enum ixlv_state_t { + IXLV_START, + IXLV_FAILED, + IXLV_RESET_REQUIRED, + IXLV_RESET_PENDING, + IXLV_VERSION_CHECK, + IXLV_GET_RESOURCES, + IXLV_INIT_READY, + IXLV_INIT_START, + IXLV_INIT_CONFIG, + IXLV_INIT_MAPPING, + IXLV_INIT_ENABLE, + IXLV_INIT_COMPLETE, + IXLV_RUNNING, +}; + +struct ixlv_mac_filter { + SLIST_ENTRY(ixlv_mac_filter) next; + u8 macaddr[ETHER_ADDR_LEN]; + u16 flags; +}; +SLIST_HEAD(mac_list, ixlv_mac_filter); + +struct ixlv_vlan_filter { + SLIST_ENTRY(ixlv_vlan_filter) next; + u16 vlan; + u16 flags; +}; +SLIST_HEAD(vlan_list, ixlv_vlan_filter); + +/* Software controller structure */ +struct ixlv_sc { + struct i40e_hw hw; + struct i40e_osdep osdep; + struct device *dev; + + struct resource *pci_mem; + struct resource *msix_mem; + + enum ixlv_state_t init_state; + + /* + * Interrupt resources + */ + void *tag; + struct resource *res; /* For the AQ */ + + struct ifmedia media; + struct callout timer; + struct callout aq_task; + int msix; + int if_flags; + + struct mtx mtx; + struct mtx aq_task_mtx; + + u32 qbase; + u32 admvec; + struct timeout_task timeout; + struct task aq_irq; + struct task aq_sched; + struct taskqueue *tq; + + struct ixl_vsi vsi; + + /* Mac Filter List */ + struct mac_list *mac_filters; + + /* Vlan Filter List */ + struct vlan_list *vlan_filters; + + /* Promiscuous mode */ + u32 promiscuous_flags; + + /* Admin queue task flags */ + u32 aq_wait_count; + u32 aq_required; + u32 aq_pending; + + /* Virtual comm channel */ + enum i40e_virtchnl_ops current_op; + struct i40e_virtchnl_vf_resource *vf_res; + struct i40e_virtchnl_vsi_resource *vsi_res; + + /* Misc stats maintained by the driver */ + u64 watchdog_events; + u64 admin_irq; + + /* Signaling channels */ + u8 init_done; + u8 config_queues_done; + u8 map_vectors_done; + u8 enable_queues_done; + u8 disable_queues_done; + u8 add_ether_done; + u8 del_ether_done; +}; + +/* +** This checks for a zero mac addr, something that will be likely +** unless the Admin on the Host has created one. +*/ +static inline bool +ixlv_check_ether_addr(u8 *addr) +{ + bool status = TRUE; + + if ((addr[0] == 0 && addr[1]== 0 && addr[2] == 0 && + addr[3] == 0 && addr[4]== 0 && addr[5] == 0)) + status = FALSE; + return (status); +} + +/* +** VF Common function prototypes +*/ +int ixlv_send_api_ver(struct ixlv_sc *); +int ixlv_verify_api_ver(struct ixlv_sc *); +int ixlv_send_vf_config_msg(struct ixlv_sc *); +int ixlv_get_vf_config(struct ixlv_sc *); +void ixlv_init(void *); +int ixlv_reinit_locked(struct ixlv_sc *); +void ixlv_configure_queues(struct ixlv_sc *); +void ixlv_enable_queues(struct ixlv_sc *); +void ixlv_disable_queues(struct ixlv_sc *); +void ixlv_map_queues(struct ixlv_sc *); +void ixlv_enable_intr(struct ixl_vsi *); +void ixlv_disable_intr(struct ixl_vsi *); +void ixlv_add_ether_filters(struct ixlv_sc *); +void ixlv_del_ether_filters(struct ixlv_sc *); +void ixlv_request_stats(struct ixlv_sc *); +void ixlv_request_reset(struct ixlv_sc *); +void ixlv_vc_completion(struct ixlv_sc *, + enum i40e_virtchnl_ops, i40e_status, u8 *, u16); +void ixlv_add_ether_filter(struct ixlv_sc *); +void ixlv_add_vlans(struct ixlv_sc *); +void ixlv_del_vlans(struct ixlv_sc *); +void ixlv_update_stats_counters(struct ixlv_sc *, + struct i40e_eth_stats *); + +#endif /* _IXLV_H_ */ diff --git a/sys/dev/ixl/ixlvc.c b/sys/dev/ixl/ixlvc.c new file mode 100644 index 0000000..1f912b5 --- /dev/null +++ b/sys/dev/ixl/ixlvc.c @@ -0,0 +1,976 @@ +/****************************************************************************** + + Copyright (c) 2013-2014, Intel Corporation + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + 3. Neither the name of the Intel Corporation nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + +******************************************************************************/ +/*$FreeBSD$*/ + +/* +** Virtual Channel support +** These are support functions to communication +** between the VF and PF drivers. +*/ + +#include "ixl.h" +#include "ixlv.h" +#include "i40e_prototype.h" + + +/* busy wait delay in msec */ +#define IXLV_BUSY_WAIT_DELAY 10 +#define IXLV_BUSY_WAIT_COUNT 50 + +/* +** Validate VF messages +*/ +static int ixl_vc_validate_vf_msg(struct ixlv_sc *sc, u32 v_opcode, + u8 *msg, u16 msglen) +{ + bool err_msg_format = false; + int valid_len; + + /* Validate message length. */ + switch (v_opcode) { + case I40E_VIRTCHNL_OP_VERSION: + valid_len = sizeof(struct i40e_virtchnl_version_info); + break; + case I40E_VIRTCHNL_OP_RESET_VF: + case I40E_VIRTCHNL_OP_GET_VF_RESOURCES: + valid_len = 0; + break; + case I40E_VIRTCHNL_OP_CONFIG_TX_QUEUE: + valid_len = sizeof(struct i40e_virtchnl_txq_info); + break; + case I40E_VIRTCHNL_OP_CONFIG_RX_QUEUE: + valid_len = sizeof(struct i40e_virtchnl_rxq_info); + break; + case I40E_VIRTCHNL_OP_CONFIG_VSI_QUEUES: + valid_len = sizeof(struct i40e_virtchnl_vsi_queue_config_info); + if (msglen >= valid_len) { + struct i40e_virtchnl_vsi_queue_config_info *vqc = + (struct i40e_virtchnl_vsi_queue_config_info *)msg; + valid_len += (vqc->num_queue_pairs * + sizeof(struct + i40e_virtchnl_queue_pair_info)); + if (vqc->num_queue_pairs == 0) + err_msg_format = true; + } + break; + case I40E_VIRTCHNL_OP_CONFIG_IRQ_MAP: + valid_len = sizeof(struct i40e_virtchnl_irq_map_info); + if (msglen >= valid_len) { + struct i40e_virtchnl_irq_map_info *vimi = + (struct i40e_virtchnl_irq_map_info *)msg; + valid_len += (vimi->num_vectors * + sizeof(struct i40e_virtchnl_vector_map)); + if (vimi->num_vectors == 0) + err_msg_format = true; + } + break; + case I40E_VIRTCHNL_OP_ENABLE_QUEUES: + case I40E_VIRTCHNL_OP_DISABLE_QUEUES: + valid_len = sizeof(struct i40e_virtchnl_queue_select); + break; + case I40E_VIRTCHNL_OP_ADD_ETHER_ADDRESS: + case I40E_VIRTCHNL_OP_DEL_ETHER_ADDRESS: + valid_len = sizeof(struct i40e_virtchnl_ether_addr_list); + if (msglen >= valid_len) { + struct i40e_virtchnl_ether_addr_list *veal = + (struct i40e_virtchnl_ether_addr_list *)msg; + valid_len += veal->num_elements * + sizeof(struct i40e_virtchnl_ether_addr); + if (veal->num_elements == 0) + err_msg_format = true; + } + break; + case I40E_VIRTCHNL_OP_ADD_VLAN: + case I40E_VIRTCHNL_OP_DEL_VLAN: + valid_len = sizeof(struct i40e_virtchnl_vlan_filter_list); + if (msglen >= valid_len) { + struct i40e_virtchnl_vlan_filter_list *vfl = + (struct i40e_virtchnl_vlan_filter_list *)msg; + valid_len += vfl->num_elements * sizeof(u16); + if (vfl->num_elements == 0) + err_msg_format = true; + } + break; + case I40E_VIRTCHNL_OP_CONFIG_PROMISCUOUS_MODE: + valid_len = sizeof(struct i40e_virtchnl_promisc_info); + break; + case I40E_VIRTCHNL_OP_GET_STATS: + valid_len = sizeof(struct i40e_virtchnl_queue_select); + break; + /* These are always errors coming from the VF. */ + case I40E_VIRTCHNL_OP_EVENT: + case I40E_VIRTCHNL_OP_UNKNOWN: + default: + return EPERM; + break; + } + /* few more checks */ + if ((valid_len != msglen) || (err_msg_format)) + return EINVAL; + else + return 0; +} + +/* +** ixlv_send_pf_msg +** +** Send message to PF and print status if failure. +*/ +static int +ixlv_send_pf_msg(struct ixlv_sc *sc, + enum i40e_virtchnl_ops op, u8 *msg, u16 len) +{ + struct i40e_hw *hw = &sc->hw; + device_t dev = sc->dev; + i40e_status err; + int val_err; + + /* + ** Pre-validating messages to the PF, this might be + ** removed for performance later? + */ + val_err = ixl_vc_validate_vf_msg(sc, op, msg, len); + if (val_err) + device_printf(dev, "Error validating msg to PF for op %d," + " msglen %d: error %d\n", op, len, val_err); + + err = i40e_aq_send_msg_to_pf(hw, op, I40E_SUCCESS, msg, len, NULL); + if (err) + device_printf(dev, "Unable to send opcode %d to PF, " + "error %d, aq status %d\n", op, err, hw->aq.asq_last_status); + return err; +} + + +/* +** ixlv_send_api_ver +** +** Send API version admin queue message to the PF. The reply is not checked +** in this function. Returns 0 if the message was successfully +** sent, or one of the I40E_ADMIN_QUEUE_ERROR_ statuses if not. +*/ +int +ixlv_send_api_ver(struct ixlv_sc *sc) +{ + struct i40e_virtchnl_version_info vvi; + + vvi.major = I40E_VIRTCHNL_VERSION_MAJOR; + vvi.minor = I40E_VIRTCHNL_VERSION_MINOR; + + return ixlv_send_pf_msg(sc, I40E_VIRTCHNL_OP_VERSION, + (u8 *)&vvi, sizeof(vvi)); +} + +/* +** ixlv_verify_api_ver +** +** Compare API versions with the PF. Must be called after admin queue is +** initialized. Returns 0 if API versions match, EIO if +** they do not, or I40E_ERR_ADMIN_QUEUE_NO_WORK if the admin queue is empty. +*/ +int ixlv_verify_api_ver(struct ixlv_sc *sc) +{ + struct i40e_virtchnl_version_info *pf_vvi; + struct i40e_hw *hw = &sc->hw; + struct i40e_arq_event_info event; + i40e_status err; + int retries = 0; + + event.buf_len = IXL_AQ_BUFSZ; + event.msg_buf = malloc(event.buf_len, M_DEVBUF, M_NOWAIT); + if (!event.msg_buf) { + err = ENOMEM; + goto out; + } + + do { + if (++retries > IXLV_AQ_MAX_ERR) + goto out_alloc; + + /* NOTE: initial delay is necessary */ + i40e_msec_delay(100); + err = i40e_clean_arq_element(hw, &event, NULL); + } while (err == I40E_ERR_ADMIN_QUEUE_NO_WORK); + if (err) + goto out_alloc; + + err = (i40e_status)le32toh(event.desc.cookie_low); + if (err) { + err = EIO; + goto out_alloc; + } + + if ((enum i40e_virtchnl_ops)le32toh(event.desc.cookie_high) != + I40E_VIRTCHNL_OP_VERSION) { + err = EIO; + goto out_alloc; + } + + pf_vvi = (struct i40e_virtchnl_version_info *)event.msg_buf; + if ((pf_vvi->major != I40E_VIRTCHNL_VERSION_MAJOR) || + (pf_vvi->minor != I40E_VIRTCHNL_VERSION_MINOR)) + err = EIO; + +out_alloc: + free(event.msg_buf, M_DEVBUF); +out: + return err; +} + +/* +** ixlv_send_vf_config_msg +** +** Send VF configuration request admin queue message to the PF. The reply +** is not checked in this function. Returns 0 if the message was +** successfully sent, or one of the I40E_ADMIN_QUEUE_ERROR_ statuses if not. +*/ +int +ixlv_send_vf_config_msg(struct ixlv_sc *sc) +{ + return ixlv_send_pf_msg(sc, I40E_VIRTCHNL_OP_GET_VF_RESOURCES, + NULL, 0); +} + +/* +** ixlv_get_vf_config +** +** Get VF configuration from PF and populate hw structure. Must be called after +** admin queue is initialized. Busy waits until response is received from PF, +** with maximum timeout. Response from PF is returned in the buffer for further +** processing by the caller. +*/ +int +ixlv_get_vf_config(struct ixlv_sc *sc) +{ + struct i40e_hw *hw = &sc->hw; + device_t dev = sc->dev; + struct i40e_arq_event_info event; + u16 len; + i40e_status err = 0; + u32 retries = 0; + + /* Note this assumes a single VSI */ + len = sizeof(struct i40e_virtchnl_vf_resource) + + sizeof(struct i40e_virtchnl_vsi_resource); + event.buf_len = len; + event.msg_buf = malloc(event.buf_len, M_DEVBUF, M_NOWAIT); + if (!event.msg_buf) { + err = ENOMEM; + goto out; + } + + do { + err = i40e_clean_arq_element(hw, &event, NULL); + if (err == I40E_ERR_ADMIN_QUEUE_NO_WORK) { + if (++retries <= IXLV_AQ_MAX_ERR) + i40e_msec_delay(100); + } else if ((enum i40e_virtchnl_ops)le32toh(event.desc.cookie_high) != + I40E_VIRTCHNL_OP_GET_VF_RESOURCES) { + device_printf(dev, "%s: Received a response from PF," + " opcode %d, error %d\n", __func__, + le32toh(event.desc.cookie_high), + le32toh(event.desc.cookie_low)); + retries++; + continue; + } else { + err = (i40e_status)le32toh(event.desc.cookie_low); + if (err) { + device_printf(dev, "%s: Error returned from PF," + " opcode %d, error %d\n", __func__, + le32toh(event.desc.cookie_high), + le32toh(event.desc.cookie_low)); + err = EIO; + goto out_alloc; + } + break; + } + + if (retries > IXLV_AQ_MAX_ERR) { + INIT_DBG_DEV(dev, "Did not receive response after %d tries.", + retries); + goto out_alloc; + } + + } while (err); + + memcpy(sc->vf_res, event.msg_buf, min(event.msg_len, len)); + i40e_vf_parse_hw_config(hw, sc->vf_res); + +out_alloc: + free(event.msg_buf, M_DEVBUF); +out: + return err; +} + +/* +** ixlv_configure_queues +** +** Request that the PF set up our queues. +*/ +void +ixlv_configure_queues(struct ixlv_sc *sc) +{ + device_t dev = sc->dev; + struct ixl_vsi *vsi = &sc->vsi; + struct ixl_queue *que = vsi->queues; + struct tx_ring *txr; + struct rx_ring *rxr; + int len, pairs;; + + struct i40e_virtchnl_vsi_queue_config_info *vqci; + struct i40e_virtchnl_queue_pair_info *vqpi; + + + if (sc->current_op != I40E_VIRTCHNL_OP_UNKNOWN) { + /* bail because we already have a command pending */ +#ifdef IXL_DEBUG + device_printf(dev, "%s: command %d pending\n", + __func__, sc->current_op); +#endif + return; + } + + pairs = vsi->num_queues; + sc->current_op = I40E_VIRTCHNL_OP_CONFIG_VSI_QUEUES; + len = sizeof(struct i40e_virtchnl_vsi_queue_config_info) + + (sizeof(struct i40e_virtchnl_queue_pair_info) * pairs); + vqci = malloc(len, M_DEVBUF, M_NOWAIT | M_ZERO); + if (!vqci) { + device_printf(dev, "%s: unable to allocate memory\n", __func__); + return; + } + vqci->vsi_id = sc->vsi_res->vsi_id; + vqci->num_queue_pairs = pairs; + vqpi = vqci->qpair; + /* Size check is not needed here - HW max is 16 queue pairs, and we + * can fit info for 31 of them into the AQ buffer before it overflows. + */ + for (int i = 0; i < pairs; i++, que++) { + txr = &que->txr; + rxr = &que->rxr; + vqpi->txq.vsi_id = vqci->vsi_id; + vqpi->txq.queue_id = i; + vqpi->txq.ring_len = que->num_desc; + vqpi->txq.dma_ring_addr = txr->dma.pa; + /* Enable Head writeback */ + vqpi->txq.headwb_enabled = 1; + vqpi->txq.dma_headwb_addr = txr->dma.pa + + (que->num_desc * sizeof(struct i40e_tx_desc)); + + vqpi->rxq.vsi_id = vqci->vsi_id; + vqpi->rxq.queue_id = i; + vqpi->rxq.ring_len = que->num_desc; + vqpi->rxq.dma_ring_addr = rxr->dma.pa; + vqpi->rxq.max_pkt_size = vsi->max_frame_size; + vqpi->rxq.databuffer_size = rxr->mbuf_sz; + vqpi++; + } + + ixlv_send_pf_msg(sc, I40E_VIRTCHNL_OP_CONFIG_VSI_QUEUES, + (u8 *)vqci, len); + free(vqci, M_DEVBUF); + sc->aq_pending |= IXLV_FLAG_AQ_CONFIGURE_QUEUES; + sc->aq_required &= ~IXLV_FLAG_AQ_CONFIGURE_QUEUES; +} + +/* +** ixlv_enable_queues +** +** Request that the PF enable all of our queues. +*/ +void +ixlv_enable_queues(struct ixlv_sc *sc) +{ + struct i40e_virtchnl_queue_select vqs; + + if (sc->current_op != I40E_VIRTCHNL_OP_UNKNOWN) { + /* we already have a command pending */ +#ifdef IXL_DEBUG + device_printf(sc->dev, "%s: command %d pending\n", + __func__, sc->current_op); +#endif + return; + } + sc->current_op = I40E_VIRTCHNL_OP_ENABLE_QUEUES; + vqs.vsi_id = sc->vsi_res->vsi_id; + vqs.tx_queues = (1 << sc->vsi_res->num_queue_pairs) - 1; + vqs.rx_queues = vqs.tx_queues; + ixlv_send_pf_msg(sc, I40E_VIRTCHNL_OP_ENABLE_QUEUES, + (u8 *)&vqs, sizeof(vqs)); + sc->aq_pending |= IXLV_FLAG_AQ_ENABLE_QUEUES; + sc->aq_required &= ~IXLV_FLAG_AQ_ENABLE_QUEUES; +} + +/* +** ixlv_disable_queues +** +** Request that the PF disable all of our queues. +*/ +void +ixlv_disable_queues(struct ixlv_sc *sc) +{ + struct i40e_virtchnl_queue_select vqs; + + if (sc->current_op != I40E_VIRTCHNL_OP_UNKNOWN) { + /* we already have a command pending */ +#ifdef IXL_DEBUG + device_printf(sc->dev, "%s: command %d pending\n", + __func__, sc->current_op); +#endif + return; + } + sc->current_op = I40E_VIRTCHNL_OP_DISABLE_QUEUES; + vqs.vsi_id = sc->vsi_res->vsi_id; + vqs.tx_queues = (1 << sc->vsi_res->num_queue_pairs) - 1; + vqs.rx_queues = vqs.tx_queues; + ixlv_send_pf_msg(sc, I40E_VIRTCHNL_OP_DISABLE_QUEUES, + (u8 *)&vqs, sizeof(vqs)); + sc->aq_pending |= IXLV_FLAG_AQ_DISABLE_QUEUES; + sc->aq_required &= ~IXLV_FLAG_AQ_DISABLE_QUEUES; +} + +/* +** ixlv_map_queues +** +** Request that the PF map queues to interrupt vectors. Misc causes, including +** admin queue, are always mapped to vector 0. +*/ +void +ixlv_map_queues(struct ixlv_sc *sc) +{ + struct i40e_virtchnl_irq_map_info *vm; + int i, q, len; + struct ixl_vsi *vsi = &sc->vsi; + struct ixl_queue *que = vsi->queues; + + if (sc->current_op != I40E_VIRTCHNL_OP_UNKNOWN) { + /* we already have a command pending */ +#ifdef IXL_DEBUG + device_printf(sc->dev, "%s: command %d pending\n", + __func__, sc->current_op); +#endif + return; + } + sc->current_op = I40E_VIRTCHNL_OP_CONFIG_IRQ_MAP; + + /* How many queue vectors, adminq uses one */ + q = sc->msix - 1; + + len = sizeof(struct i40e_virtchnl_irq_map_info) + + (sc->msix * sizeof(struct i40e_virtchnl_vector_map)); + vm = malloc(len, M_DEVBUF, M_NOWAIT); + if (!vm) { + printf("%s: unable to allocate memory\n", __func__); + return; + } + + vm->num_vectors = sc->msix; + /* Queue vectors first */ + for (i = 0; i < q; i++, que++) { + vm->vecmap[i].vsi_id = sc->vsi_res->vsi_id; + vm->vecmap[i].vector_id = i + 1; /* first is adminq */ + vm->vecmap[i].txq_map = (1 << que->me); + vm->vecmap[i].rxq_map = (1 << que->me); + } + + /* Misc vector last - this is only for AdminQ messages */ + vm->vecmap[i].vsi_id = sc->vsi_res->vsi_id; + vm->vecmap[i].vector_id = 0; + vm->vecmap[i].txq_map = 0; + vm->vecmap[i].rxq_map = 0; + + ixlv_send_pf_msg(sc, I40E_VIRTCHNL_OP_CONFIG_IRQ_MAP, + (u8 *)vm, len); + free(vm, M_DEVBUF); + sc->aq_pending |= IXLV_FLAG_AQ_MAP_VECTORS; + sc->aq_required &= ~IXLV_FLAG_AQ_MAP_VECTORS; +} + +/* +** Scan the Filter List looking for vlans that need +** to be added, then create the data to hand to the AQ +** for handling. +*/ +void +ixlv_add_vlans(struct ixlv_sc *sc) +{ + struct i40e_virtchnl_vlan_filter_list *v; + struct ixlv_vlan_filter *f, *ftmp; + device_t dev = sc->dev; + int len, i = 0, cnt = 0; + + if (sc->current_op != I40E_VIRTCHNL_OP_UNKNOWN) + return; + + sc->current_op = I40E_VIRTCHNL_OP_ADD_VLAN; + + /* Get count of VLAN filters to add */ + SLIST_FOREACH(f, sc->vlan_filters, next) { + if (f->flags & IXL_FILTER_ADD) + cnt++; + } + + if (!cnt) { /* no work... */ + sc->aq_required &= ~IXLV_FLAG_AQ_ADD_VLAN_FILTER; + sc->current_op = I40E_VIRTCHNL_OP_UNKNOWN; + return; + } + + len = sizeof(struct i40e_virtchnl_vlan_filter_list) + + (cnt * sizeof(u16)); + + if (len > IXL_AQ_BUF_SZ) { + device_printf(dev, "%s: Exceeded Max AQ Buf size\n", + __func__); + return; + } + + v = malloc(len, M_DEVBUF, M_NOWAIT); + if (!v) { + device_printf(dev, "%s: unable to allocate memory\n", + __func__); + return; + } + + v->vsi_id = sc->vsi_res->vsi_id; + v->num_elements = cnt; + + /* Scan the filter array */ + SLIST_FOREACH_SAFE(f, sc->vlan_filters, next, ftmp) { + if (f->flags & IXL_FILTER_ADD) { + bcopy(&f->vlan, &v->vlan_id[i], sizeof(u16)); + f->flags = IXL_FILTER_USED; + i++; + } + if (i == cnt) + break; + } + if (i == 0) { /* Should not happen... */ + device_printf(dev, "%s: i == 0?\n", __func__); + return; + } + + ixlv_send_pf_msg(sc, I40E_VIRTCHNL_OP_ADD_VLAN, (u8 *)v, len); + free(v, M_DEVBUF); + /* add stats? */ + sc->aq_pending |= IXLV_FLAG_AQ_ADD_VLAN_FILTER; + sc->aq_required &= ~IXLV_FLAG_AQ_ADD_VLAN_FILTER; +} + +/* +** Scan the Filter Table looking for vlans that need +** to be removed, then create the data to hand to the AQ +** for handling. +*/ +void +ixlv_del_vlans(struct ixlv_sc *sc) +{ + device_t dev = sc->dev; + struct i40e_virtchnl_vlan_filter_list *v; + struct ixlv_vlan_filter *f, *ftmp; + int len, i = 0, cnt = 0; + + if (sc->current_op != I40E_VIRTCHNL_OP_UNKNOWN) + return; + + sc->current_op = I40E_VIRTCHNL_OP_DEL_VLAN; + + /* Get count of VLAN filters to delete */ + SLIST_FOREACH(f, sc->vlan_filters, next) { + if (f->flags & IXL_FILTER_DEL) + cnt++; + } + + if (!cnt) { /* no work... */ + sc->aq_required &= ~IXLV_FLAG_AQ_DEL_VLAN_FILTER; + sc->current_op = I40E_VIRTCHNL_OP_UNKNOWN; + return; + } + + len = sizeof(struct i40e_virtchnl_vlan_filter_list) + + (cnt * sizeof(u16)); + + if (len > IXL_AQ_BUF_SZ) { + device_printf(dev, "%s: Exceeded Max AQ Buf size\n", + __func__); + return; + } + + v = malloc(len, M_DEVBUF, M_NOWAIT | M_ZERO); + if (!v) { + device_printf(dev, "%s: unable to allocate memory\n", + __func__); + return; + } + + v->vsi_id = sc->vsi_res->vsi_id; + v->num_elements = cnt; + + /* Scan the filter array */ + SLIST_FOREACH_SAFE(f, sc->vlan_filters, next, ftmp) { + if (f->flags & IXL_FILTER_DEL) { + bcopy(&f->vlan, &v->vlan_id[i], sizeof(u16)); + i++; + SLIST_REMOVE(sc->vlan_filters, f, ixlv_vlan_filter, next); + free(f, M_DEVBUF); + } + if (i == cnt) + break; + } + if (i == 0) { /* Should not happen... */ + device_printf(dev, "%s: i == 0?\n", __func__); + return; + } + + ixlv_send_pf_msg(sc, I40E_VIRTCHNL_OP_DEL_VLAN, (u8 *)v, len); + free(v, M_DEVBUF); + /* add stats? */ + sc->aq_pending |= IXLV_FLAG_AQ_DEL_VLAN_FILTER; + sc->aq_required &= ~IXLV_FLAG_AQ_DEL_VLAN_FILTER; +} + + +/* +** This routine takes additions to the vsi filter +** table and creates an Admin Queue call to create +** the filters in the hardware. +*/ +void +ixlv_add_ether_filters(struct ixlv_sc *sc) +{ + struct i40e_virtchnl_ether_addr_list *a; + struct ixlv_mac_filter *f; + device_t dev = sc->dev; + int len, j = 0, cnt = 0; + + if (sc->current_op != I40E_VIRTCHNL_OP_UNKNOWN) + return; + + sc->current_op = I40E_VIRTCHNL_OP_ADD_ETHER_ADDRESS; + + /* Get count of MAC addresses to add */ + SLIST_FOREACH(f, sc->mac_filters, next) { + if (f->flags & IXL_FILTER_ADD) + cnt++; + } + if (cnt == 0) { /* Should not happen... */ + DDPRINTF(dev, "cnt == 0, exiting..."); + sc->current_op = I40E_VIRTCHNL_OP_UNKNOWN; + sc->aq_required &= ~IXLV_FLAG_AQ_ADD_MAC_FILTER; + wakeup(&sc->add_ether_done); + return; + } + + len = sizeof(struct i40e_virtchnl_ether_addr_list) + + (cnt * sizeof(struct i40e_virtchnl_ether_addr)); + + a = malloc(len, M_DEVBUF, M_NOWAIT | M_ZERO); + if (a == NULL) { + device_printf(dev, "%s: Failed to get memory for " + "virtchnl_ether_addr_list\n", __func__); + return; + } + a->vsi_id = sc->vsi.id; + a->num_elements = cnt; + + /* Scan the filter array */ + SLIST_FOREACH(f, sc->mac_filters, next) { + if (f->flags & IXL_FILTER_ADD) { + bcopy(f->macaddr, a->list[j].addr, ETHER_ADDR_LEN); + f->flags &= ~IXL_FILTER_ADD; + j++; + + DDPRINTF(dev, "ADD: " MAC_FORMAT, + MAC_FORMAT_ARGS(f->macaddr)); + } + if (j == cnt) + break; + } + DDPRINTF(dev, "len %d, j %d, cnt %d", + len, j, cnt); + ixlv_send_pf_msg(sc, + I40E_VIRTCHNL_OP_ADD_ETHER_ADDRESS, (u8 *)a, len); + /* add stats? */ + free(a, M_DEVBUF); + sc->aq_pending |= IXLV_FLAG_AQ_ADD_MAC_FILTER; + sc->aq_required &= ~IXLV_FLAG_AQ_ADD_MAC_FILTER; + return; +} + +/* +** This routine takes filters flagged for deletion in the +** sc MAC filter list and creates an Admin Queue call +** to delete those filters in the hardware. +*/ +void +ixlv_del_ether_filters(struct ixlv_sc *sc) +{ + struct i40e_virtchnl_ether_addr_list *d; + device_t dev = sc->dev; + struct ixlv_mac_filter *f, *f_temp; + int len, j = 0, cnt = 0; + + if (sc->current_op != I40E_VIRTCHNL_OP_UNKNOWN) + return; + + sc->current_op = I40E_VIRTCHNL_OP_DEL_ETHER_ADDRESS; + + /* Get count of MAC addresses to delete */ + SLIST_FOREACH(f, sc->mac_filters, next) { + if (f->flags & IXL_FILTER_DEL) + cnt++; + } + if (cnt == 0) { + DDPRINTF(dev, "cnt == 0, exiting..."); + sc->aq_required &= ~IXLV_FLAG_AQ_DEL_MAC_FILTER; + sc->current_op = I40E_VIRTCHNL_OP_UNKNOWN; + wakeup(&sc->del_ether_done); + return; + } + + len = sizeof(struct i40e_virtchnl_ether_addr_list) + + (cnt * sizeof(struct i40e_virtchnl_ether_addr)); + + d = malloc(len, M_DEVBUF, M_NOWAIT | M_ZERO); + if (d == NULL) { + device_printf(dev, "%s: Failed to get memory for " + "virtchnl_ether_addr_list\n", __func__); + return; + } + d->vsi_id = sc->vsi.id; + d->num_elements = cnt; + + /* Scan the filter array */ + SLIST_FOREACH_SAFE(f, sc->mac_filters, next, f_temp) { + if (f->flags & IXL_FILTER_DEL) { + bcopy(f->macaddr, d->list[j].addr, ETHER_ADDR_LEN); + DDPRINTF(dev, "DEL: " MAC_FORMAT, + MAC_FORMAT_ARGS(f->macaddr)); + j++; + SLIST_REMOVE(sc->mac_filters, f, ixlv_mac_filter, next); + free(f, M_DEVBUF); + } + if (j == cnt) + break; + } + ixlv_send_pf_msg(sc, + I40E_VIRTCHNL_OP_DEL_ETHER_ADDRESS, (u8 *)d, len); + /* add stats? */ + free(d, M_DEVBUF); + sc->aq_pending |= IXLV_FLAG_AQ_DEL_MAC_FILTER; + sc->aq_required &= ~IXLV_FLAG_AQ_DEL_MAC_FILTER; + return; +} + +/* +** ixlv_request_reset +** Request that the PF reset this VF. No response is expected. +*/ +void +ixlv_request_reset(struct ixlv_sc *sc) +{ + /* + ** Set the reset status to "in progress" before + ** the request, this avoids any possibility of + ** a mistaken early detection of completion. + */ + wr32(&sc->hw, I40E_VFGEN_RSTAT, I40E_VFR_INPROGRESS); + ixlv_send_pf_msg(sc, I40E_VIRTCHNL_OP_RESET_VF, NULL, 0); + sc->current_op = I40E_VIRTCHNL_OP_UNKNOWN; +} + +/* +** ixlv_request_stats +** Request the statistics for this VF's VSI from PF. +*/ +void +ixlv_request_stats(struct ixlv_sc *sc) +{ + struct i40e_virtchnl_queue_select vqs; + int error = 0; + + if (sc->current_op != I40E_VIRTCHNL_OP_UNKNOWN) + return; + + sc->current_op = I40E_VIRTCHNL_OP_GET_STATS; + vqs.vsi_id = sc->vsi_res->vsi_id; + error = ixlv_send_pf_msg(sc, I40E_VIRTCHNL_OP_GET_STATS, + (u8 *)&vqs, sizeof(vqs)); + /* Low priority, ok if it fails */ + if (error) + sc->current_op = I40E_VIRTCHNL_OP_UNKNOWN; +} + +/* +** Updates driver's stats counters with VSI stats returned from PF. +*/ +void +ixlv_update_stats_counters(struct ixlv_sc *sc, struct i40e_eth_stats *es) +{ + struct ifnet *ifp = sc->vsi.ifp; + + ifp->if_ipackets = es->rx_unicast + + es->rx_multicast + + es->rx_broadcast; + ifp->if_opackets = es->tx_unicast + + es->tx_multicast + + es->tx_broadcast; + ifp->if_ibytes = es->rx_bytes; + ifp->if_obytes = es->tx_bytes; + ifp->if_imcasts = es->rx_multicast; + ifp->if_omcasts = es->tx_multicast; + + ifp->if_oerrors = es->tx_errors; + ifp->if_iqdrops = es->rx_discards; + ifp->if_noproto = es->rx_unknown_protocol; + + sc->vsi.eth_stats = *es; +} + +/* +** ixlv_vc_completion +** +** Asynchronous completion function for admin queue messages. Rather than busy +** wait, we fire off our requests and assume that no errors will be returned. +** This function handles the reply messages. +*/ +void +ixlv_vc_completion(struct ixlv_sc *sc, + enum i40e_virtchnl_ops v_opcode, + i40e_status v_retval, u8 *msg, u16 msglen) +{ + device_t dev = sc->dev; + struct ixl_vsi *vsi = &sc->vsi; + + if (v_opcode == I40E_VIRTCHNL_OP_EVENT) { + struct i40e_virtchnl_pf_event *vpe = + (struct i40e_virtchnl_pf_event *)msg; + + switch (vpe->event) { + case I40E_VIRTCHNL_EVENT_LINK_CHANGE: + vsi->link_up = + vpe->event_data.link_event.link_status; + vsi->link_speed = + vpe->event_data.link_event.link_speed; + break; + case I40E_VIRTCHNL_EVENT_RESET_IMPENDING: + device_printf(dev, "PF initiated reset!\n"); + sc->init_state = IXLV_RESET_PENDING; + ixlv_init(sc); + break; + default: + device_printf(dev, "%s: Unknown event %d from AQ\n", + __func__, vpe->event); + break; + } + + return; + } + + if (v_opcode != sc->current_op + && sc->current_op != I40E_VIRTCHNL_OP_GET_STATS) { + device_printf(dev, "%s: Pending op is %d, received %d.\n", + __func__, sc->current_op, v_opcode); + sc->current_op = I40E_VIRTCHNL_OP_UNKNOWN; + return; + } + + /* Catch-all error response */ + if (v_retval) { + device_printf(dev, + "%s: AQ returned error %d to our request %d!\n", + __func__, v_retval, v_opcode); + } + +#ifdef IXL_DEBUG + if (v_opcode != I40E_VIRTCHNL_OP_GET_STATS) + DDPRINTF(dev, "opcode %d", v_opcode); +#endif + + switch (v_opcode) { + case I40E_VIRTCHNL_OP_GET_STATS: + ixlv_update_stats_counters(sc, (struct i40e_eth_stats *)msg); + break; + case I40E_VIRTCHNL_OP_ADD_ETHER_ADDRESS: + sc->aq_pending &= ~(IXLV_FLAG_AQ_ADD_MAC_FILTER); + if (v_retval) { + device_printf(dev, "WARNING: Error adding VF mac filter!\n"); + device_printf(dev, "WARNING: Device may not receive traffic!\n"); + } + break; + case I40E_VIRTCHNL_OP_DEL_ETHER_ADDRESS: + sc->aq_pending &= ~(IXLV_FLAG_AQ_DEL_MAC_FILTER); + break; + case I40E_VIRTCHNL_OP_CONFIG_PROMISCUOUS_MODE: + sc->aq_pending &= ~(IXLV_FLAG_AQ_CONFIGURE_PROMISC); + break; + case I40E_VIRTCHNL_OP_ADD_VLAN: + sc->aq_pending &= ~(IXLV_FLAG_AQ_ADD_VLAN_FILTER); + break; + case I40E_VIRTCHNL_OP_DEL_VLAN: + sc->aq_pending &= ~(IXLV_FLAG_AQ_DEL_VLAN_FILTER); + break; + case I40E_VIRTCHNL_OP_ENABLE_QUEUES: + sc->aq_pending &= ~(IXLV_FLAG_AQ_ENABLE_QUEUES); + if (v_retval == 0) { + /* Turn on all interrupts */ + ixlv_enable_intr(vsi); + /* And inform the stack we're ready */ + vsi->ifp->if_drv_flags |= IFF_DRV_RUNNING; + vsi->ifp->if_drv_flags &= ~IFF_DRV_OACTIVE; + } + break; + case I40E_VIRTCHNL_OP_DISABLE_QUEUES: + sc->aq_pending &= ~(IXLV_FLAG_AQ_DISABLE_QUEUES); + if (v_retval == 0) { + /* Turn off all interrupts */ + ixlv_disable_intr(vsi); + /* Tell the stack that the interface is no longer active */ + vsi->ifp->if_drv_flags &= ~(IFF_DRV_RUNNING | IFF_DRV_OACTIVE); + } + break; + case I40E_VIRTCHNL_OP_CONFIG_VSI_QUEUES: + sc->aq_pending &= ~(IXLV_FLAG_AQ_CONFIGURE_QUEUES); + break; + case I40E_VIRTCHNL_OP_CONFIG_IRQ_MAP: + sc->aq_pending &= ~(IXLV_FLAG_AQ_MAP_VECTORS); + break; + default: + device_printf(dev, + "%s: Received unexpected message %d from PF.\n", + __func__, v_opcode); + break; + } + sc->current_op = I40E_VIRTCHNL_OP_UNKNOWN; + return; +} diff --git a/sys/dev/netmap/if_em_netmap.h b/sys/dev/netmap/if_em_netmap.h index 17b4c4f..15e9be5 100644 --- a/sys/dev/netmap/if_em_netmap.h +++ b/sys/dev/netmap/if_em_netmap.h @@ -113,10 +113,10 @@ em_netmap_reg(struct netmap_adapter *na, int onoff) * Reconcile kernel and user view of the transmit ring. */ static int -em_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) +em_netmap_txsync(struct netmap_kring *kring, int flags) { + struct netmap_adapter *na = kring->na; struct ifnet *ifp = na->ifp; - struct netmap_kring *kring = &na->tx_rings[ring_nr]; struct netmap_ring *ring = kring->ring; u_int nm_i; /* index into the netmap ring */ u_int nic_i; /* index into the NIC ring */ @@ -128,7 +128,7 @@ em_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) /* device-specific */ struct adapter *adapter = ifp->if_softc; - struct tx_ring *txr = &adapter->tx_rings[ring_nr]; + struct tx_ring *txr = &adapter->tx_rings[kring->ring_id]; bus_dmamap_sync(txr->txdma.dma_tag, txr->txdma.dma_map, BUS_DMASYNC_POSTREAD); @@ -144,7 +144,7 @@ em_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) struct netmap_slot *slot = &ring->slot[nm_i]; u_int len = slot->len; uint64_t paddr; - void *addr = PNMB(slot, &paddr); + void *addr = PNMB(na, slot, &paddr); /* device-specific */ struct e1000_tx_desc *curr = &txr->tx_base[nic_i]; @@ -153,12 +153,12 @@ em_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) nic_i == 0 || nic_i == report_frequency) ? E1000_TXD_CMD_RS : 0; - NM_CHECK_ADDR_LEN(addr, len); + NM_CHECK_ADDR_LEN(na, addr, len); if (slot->flags & NS_BUF_CHANGED) { curr->buffer_addr = htole64(paddr); /* buffer has changed, reload map */ - netmap_reload_map(txr->txtag, txbuf->map, addr); + netmap_reload_map(na, txr->txtag, txbuf->map, addr); } slot->flags &= ~(NS_REPORT | NS_BUF_CHANGED); @@ -187,7 +187,7 @@ em_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) */ if (flags & NAF_FORCE_RECLAIM || nm_kr_txempty(kring)) { /* record completed transmissions using TDH */ - nic_i = E1000_READ_REG(&adapter->hw, E1000_TDH(ring_nr)); + nic_i = E1000_READ_REG(&adapter->hw, E1000_TDH(kring->ring_id)); if (nic_i >= kring->nkr_num_slots) { /* XXX can it happen ? */ D("TDH wrap %d", nic_i); nic_i -= kring->nkr_num_slots; @@ -208,10 +208,10 @@ em_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) * Reconcile kernel and user view of the receive ring. */ static int -em_netmap_rxsync(struct netmap_adapter *na, u_int ring_nr, int flags) +em_netmap_rxsync(struct netmap_kring *kring, int flags) { + struct netmap_adapter *na = kring->na; struct ifnet *ifp = na->ifp; - struct netmap_kring *kring = &na->rx_rings[ring_nr]; struct netmap_ring *ring = kring->ring; u_int nm_i; /* index into the netmap ring */ u_int nic_i; /* index into the NIC ring */ @@ -222,7 +222,7 @@ em_netmap_rxsync(struct netmap_adapter *na, u_int ring_nr, int flags) /* device-specific */ struct adapter *adapter = ifp->if_softc; - struct rx_ring *rxr = &adapter->rx_rings[ring_nr]; + struct rx_ring *rxr = &adapter->rx_rings[kring->ring_id]; if (head > lim) return netmap_ring_reinit(kring); @@ -271,18 +271,18 @@ em_netmap_rxsync(struct netmap_adapter *na, u_int ring_nr, int flags) for (n = 0; nm_i != head; n++) { struct netmap_slot *slot = &ring->slot[nm_i]; uint64_t paddr; - void *addr = PNMB(slot, &paddr); + void *addr = PNMB(na, slot, &paddr); struct e1000_rx_desc *curr = &rxr->rx_base[nic_i]; struct em_buffer *rxbuf = &rxr->rx_buffers[nic_i]; - if (addr == netmap_buffer_base) /* bad buf */ + if (addr == NETMAP_BUF_BASE(na)) /* bad buf */ goto ring_reset; if (slot->flags & NS_BUF_CHANGED) { /* buffer has changed, reload map */ curr->buffer_addr = htole64(paddr); - netmap_reload_map(rxr->rxtag, rxbuf->map, addr); + netmap_reload_map(na, rxr->rxtag, rxbuf->map, addr); slot->flags &= ~NS_BUF_CHANGED; } curr->status = 0; diff --git a/sys/dev/netmap/if_igb_netmap.h b/sys/dev/netmap/if_igb_netmap.h index e1929f0..c738460 100644 --- a/sys/dev/netmap/if_igb_netmap.h +++ b/sys/dev/netmap/if_igb_netmap.h @@ -81,10 +81,10 @@ igb_netmap_reg(struct netmap_adapter *na, int onoff) * Reconcile kernel and user view of the transmit ring. */ static int -igb_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) +igb_netmap_txsync(struct netmap_kring *kring, int flags) { + struct netmap_adapter *na = kring->na; struct ifnet *ifp = na->ifp; - struct netmap_kring *kring = &na->tx_rings[ring_nr]; struct netmap_ring *ring = kring->ring; u_int nm_i; /* index into the netmap ring */ u_int nic_i; /* index into the NIC ring */ @@ -96,7 +96,7 @@ igb_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) /* device-specific */ struct adapter *adapter = ifp->if_softc; - struct tx_ring *txr = &adapter->tx_rings[ring_nr]; + struct tx_ring *txr = &adapter->tx_rings[kring->ring_id]; /* 82575 needs the queue index added */ u32 olinfo_status = (adapter->hw.mac.type == e1000_82575) ? (txr->me << 4) : 0; @@ -115,7 +115,7 @@ igb_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) struct netmap_slot *slot = &ring->slot[nm_i]; u_int len = slot->len; uint64_t paddr; - void *addr = PNMB(slot, &paddr); + void *addr = PNMB(na, slot, &paddr); /* device-specific */ union e1000_adv_tx_desc *curr = @@ -125,11 +125,11 @@ igb_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) nic_i == 0 || nic_i == report_frequency) ? E1000_ADVTXD_DCMD_RS : 0; - NM_CHECK_ADDR_LEN(addr, len); + NM_CHECK_ADDR_LEN(na, addr, len); if (slot->flags & NS_BUF_CHANGED) { /* buffer has changed, reload map */ - netmap_reload_map(txr->txtag, txbuf->map, addr); + netmap_reload_map(na, txr->txtag, txbuf->map, addr); } slot->flags &= ~(NS_REPORT | NS_BUF_CHANGED); @@ -171,7 +171,7 @@ igb_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) */ if (flags & NAF_FORCE_RECLAIM || nm_kr_txempty(kring)) { /* record completed transmissions using TDH */ - nic_i = E1000_READ_REG(&adapter->hw, E1000_TDH(ring_nr)); + nic_i = E1000_READ_REG(&adapter->hw, E1000_TDH(kring->ring_id)); if (nic_i >= kring->nkr_num_slots) { /* XXX can it happen ? */ D("TDH wrap %d", nic_i); nic_i -= kring->nkr_num_slots; @@ -190,10 +190,10 @@ igb_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) * Reconcile kernel and user view of the receive ring. */ static int -igb_netmap_rxsync(struct netmap_adapter *na, u_int ring_nr, int flags) +igb_netmap_rxsync(struct netmap_kring *kring, int flags) { + struct netmap_adapter *na = kring->na; struct ifnet *ifp = na->ifp; - struct netmap_kring *kring = &na->rx_rings[ring_nr]; struct netmap_ring *ring = kring->ring; u_int nm_i; /* index into the netmap ring */ u_int nic_i; /* index into the NIC ring */ @@ -204,7 +204,7 @@ igb_netmap_rxsync(struct netmap_adapter *na, u_int ring_nr, int flags) /* device-specific */ struct adapter *adapter = ifp->if_softc; - struct rx_ring *rxr = &adapter->rx_rings[ring_nr]; + struct rx_ring *rxr = &adapter->rx_rings[kring->ring_id]; if (head > lim) return netmap_ring_reinit(kring); @@ -251,17 +251,17 @@ igb_netmap_rxsync(struct netmap_adapter *na, u_int ring_nr, int flags) for (n = 0; nm_i != head; n++) { struct netmap_slot *slot = &ring->slot[nm_i]; uint64_t paddr; - void *addr = PNMB(slot, &paddr); + void *addr = PNMB(na, slot, &paddr); union e1000_adv_rx_desc *curr = &rxr->rx_base[nic_i]; struct igb_rx_buf *rxbuf = &rxr->rx_buffers[nic_i]; - if (addr == netmap_buffer_base) /* bad buf */ + if (addr == NETMAP_BUF_BASE(na)) /* bad buf */ goto ring_reset; if (slot->flags & NS_BUF_CHANGED) { /* buffer has changed, reload map */ - netmap_reload_map(rxr->ptag, rxbuf->pmap, addr); + netmap_reload_map(na, rxr->ptag, rxbuf->pmap, addr); slot->flags &= ~NS_BUF_CHANGED; } curr->wb.upper.status_error = 0; diff --git a/sys/dev/netmap/if_lem_netmap.h b/sys/dev/netmap/if_lem_netmap.h index 4fce5c9..272f02c 100644 --- a/sys/dev/netmap/if_lem_netmap.h +++ b/sys/dev/netmap/if_lem_netmap.h @@ -39,6 +39,7 @@ #include <vm/pmap.h> /* vtophys ? */ #include <dev/netmap/netmap_kern.h> +extern int netmap_adaptive_io; /* * Register/unregister. We are already under netmap lock. @@ -84,10 +85,10 @@ lem_netmap_reg(struct netmap_adapter *na, int onoff) * Reconcile kernel and user view of the transmit ring. */ static int -lem_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) +lem_netmap_txsync(struct netmap_kring *kring, int flags) { + struct netmap_adapter *na = kring->na; struct ifnet *ifp = na->ifp; - struct netmap_kring *kring = &na->tx_rings[ring_nr]; struct netmap_ring *ring = kring->ring; u_int nm_i; /* index into the netmap ring */ u_int nic_i; /* index into the NIC ring */ @@ -98,6 +99,10 @@ lem_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) /* device-specific */ struct adapter *adapter = ifp->if_softc; +#ifdef NIC_PARAVIRT + struct paravirt_csb *csb = adapter->csb; + uint64_t *csbd = (uint64_t *)(csb + 1); +#endif /* NIC_PARAVIRT */ bus_dmamap_sync(adapter->txdma.dma_tag, adapter->txdma.dma_map, BUS_DMASYNC_POSTREAD); @@ -108,12 +113,25 @@ lem_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) nm_i = kring->nr_hwcur; if (nm_i != head) { /* we have new packets to send */ +#ifdef NIC_PARAVIRT + int do_kick = 0; + uint64_t t = 0; // timestamp + int n = head - nm_i; + if (n < 0) + n += lim + 1; + if (csb) { + t = rdtsc(); /* last timestamp */ + csbd[16] += t - csbd[0]; /* total Wg */ + csbd[17] += n; /* Wg count */ + csbd[0] = t; + } +#endif /* NIC_PARAVIRT */ nic_i = netmap_idx_k2n(kring, nm_i); while (nm_i != head) { struct netmap_slot *slot = &ring->slot[nm_i]; u_int len = slot->len; uint64_t paddr; - void *addr = PNMB(slot, &paddr); + void *addr = PNMB(na, slot, &paddr); /* device-specific */ struct e1000_tx_desc *curr = &adapter->tx_desc_base[nic_i]; @@ -122,12 +140,12 @@ lem_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) nic_i == 0 || nic_i == report_frequency) ? E1000_TXD_CMD_RS : 0; - NM_CHECK_ADDR_LEN(addr, len); + NM_CHECK_ADDR_LEN(na, addr, len); if (slot->flags & NS_BUF_CHANGED) { /* buffer has changed, reload map */ curr->buffer_addr = htole64(paddr); - netmap_reload_map(adapter->txtag, txbuf->map, addr); + netmap_reload_map(na, adapter->txtag, txbuf->map, addr); } slot->flags &= ~(NS_REPORT | NS_BUF_CHANGED); @@ -140,6 +158,7 @@ lem_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) nm_i = nm_next(nm_i, lim); nic_i = nm_next(nic_i, lim); + // XXX might try an early kick } kring->nr_hwcur = head; @@ -147,8 +166,38 @@ lem_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) bus_dmamap_sync(adapter->txdma.dma_tag, adapter->txdma.dma_map, BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE); +#ifdef NIC_PARAVIRT + /* set unconditionally, then also kick if needed */ + if (csb) { + t = rdtsc(); + if (csb->host_need_txkick == 2) { + /* can compute an update of delta */ + int64_t delta = t - csbd[3]; + if (delta < 0) + delta = -delta; + if (csbd[8] == 0 || delta < csbd[8]) { + csbd[8] = delta; + csbd[9]++; + } + csbd[10]++; + } + csb->guest_tdt = nic_i; + csbd[18] += t - csbd[0]; // total wp + csbd[19] += n; + } + if (!csb || !csb->guest_csb_on || (csb->host_need_txkick & 1)) + do_kick = 1; + if (do_kick) +#endif /* NIC_PARAVIRT */ /* (re)start the tx unit up to slot nic_i (excluded) */ E1000_WRITE_REG(&adapter->hw, E1000_TDT(0), nic_i); +#ifdef NIC_PARAVIRT + if (do_kick) { + uint64_t t1 = rdtsc(); + csbd[20] += t1 - t; // total Np + csbd[21]++; + } +#endif /* NIC_PARAVIRT */ } /* @@ -157,6 +206,93 @@ lem_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) if (ticks != kring->last_reclaim || flags & NAF_FORCE_RECLAIM || nm_kr_txempty(kring)) { kring->last_reclaim = ticks; /* record completed transmissions using TDH */ +#ifdef NIC_PARAVIRT + /* host updates tdh unconditionally, and we have + * no side effects on reads, so we can read from there + * instead of exiting. + */ + if (csb) { + static int drain = 0, nodrain=0, good = 0, bad = 0, fail = 0; + u_int x = adapter->next_tx_to_clean; + csbd[19]++; // XXX count reclaims + nic_i = csb->host_tdh; + if (csb->guest_csb_on) { + if (nic_i == x) { + bad++; + csbd[24]++; // failed reclaims + /* no progress, request kick and retry */ + csb->guest_need_txkick = 1; + mb(); // XXX barrier + nic_i = csb->host_tdh; + } else { + good++; + } + if (nic_i != x) { + csb->guest_need_txkick = 2; + if (nic_i == csb->guest_tdt) + drain++; + else + nodrain++; +#if 1 + if (netmap_adaptive_io) { + /* new mechanism: last half ring (or so) + * released one slot at a time. + * This effectively makes the system spin. + * + * Take next_to_clean + 1 as a reference. + * tdh must be ahead or equal + * On entry, the logical order is + * x < tdh = nic_i + * We first push tdh up to avoid wraps. + * The limit is tdh-ll (half ring). + * if tdh-256 < x we report x; + * else we report tdh-256 + */ + u_int tdh = nic_i; + u_int ll = csbd[15]; + u_int delta = lim/8; + if (netmap_adaptive_io == 2 || ll > delta) + csbd[15] = ll = delta; + else if (netmap_adaptive_io == 1 && ll > 1) { + csbd[15]--; + } + + if (nic_i >= kring->nkr_num_slots) { + RD(5, "bad nic_i %d on input", nic_i); + } + x = nm_next(x, lim); + if (tdh < x) + tdh += lim + 1; + if (tdh <= x + ll) { + nic_i = x; + csbd[25]++; //report n + 1; + } else { + tdh = nic_i; + if (tdh < ll) + tdh += lim + 1; + nic_i = tdh - ll; + csbd[26]++; // report tdh - ll + } + } +#endif + } else { + /* we stop, count whether we are idle or not */ + int bh_active = csb->host_need_txkick & 2 ? 4 : 0; + csbd[27+ csb->host_need_txkick]++; + if (netmap_adaptive_io == 1) { + if (bh_active && csbd[15] > 1) + csbd[15]--; + else if (!bh_active && csbd[15] < lim/2) + csbd[15]++; + } + bad--; + fail++; + } + } + RD(1, "drain %d nodrain %d good %d retry %d fail %d", + drain, nodrain, good, bad, fail); + } else +#endif /* !NIC_PARAVIRT */ nic_i = E1000_READ_REG(&adapter->hw, E1000_TDH(0)); if (nic_i >= kring->nkr_num_slots) { /* XXX can it happen ? */ D("TDH wrap %d", nic_i); @@ -176,10 +312,10 @@ lem_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) * Reconcile kernel and user view of the receive ring. */ static int -lem_netmap_rxsync(struct netmap_adapter *na, u_int ring_nr, int flags) +lem_netmap_rxsync(struct netmap_kring *kring, int flags) { + struct netmap_adapter *na = kring->na; struct ifnet *ifp = na->ifp; - struct netmap_kring *kring = &na->rx_rings[ring_nr]; struct netmap_ring *ring = kring->ring; u_int nm_i; /* index into the netmap ring */ u_int nic_i; /* index into the NIC ring */ @@ -190,10 +326,21 @@ lem_netmap_rxsync(struct netmap_adapter *na, u_int ring_nr, int flags) /* device-specific */ struct adapter *adapter = ifp->if_softc; +#ifdef NIC_PARAVIRT + struct paravirt_csb *csb = adapter->csb; + uint32_t csb_mode = csb && csb->guest_csb_on; + uint32_t do_host_rxkick = 0; +#endif /* NIC_PARAVIRT */ if (head > lim) return netmap_ring_reinit(kring); +#ifdef NIC_PARAVIRT + if (csb_mode) { + force_update = 1; + csb->guest_need_rxkick = 0; + } +#endif /* NIC_PARAVIRT */ /* XXX check sync modes */ bus_dmamap_sync(adapter->rxdma.dma_tag, adapter->rxdma.dma_map, BUS_DMASYNC_POSTREAD | BUS_DMASYNC_POSTWRITE); @@ -212,11 +359,28 @@ lem_netmap_rxsync(struct netmap_adapter *na, u_int ring_nr, int flags) uint32_t staterr = le32toh(curr->status); int len; +#ifdef NIC_PARAVIRT + if (csb_mode) { + if ((staterr & E1000_RXD_STAT_DD) == 0) { + /* don't bother to retry if more than 1 pkt */ + if (n > 1) + break; + csb->guest_need_rxkick = 1; + wmb(); + staterr = le32toh(curr->status); + if ((staterr & E1000_RXD_STAT_DD) == 0) { + break; + } else { /* we are good */ + csb->guest_need_rxkick = 0; + } + } + } else +#endif /* NIC_PARAVIRT */ if ((staterr & E1000_RXD_STAT_DD) == 0) break; len = le16toh(curr->length) - 4; // CRC if (len < 0) { - D("bogus pkt size %d nic idx %d", len, nic_i); + RD(5, "bogus pkt (%d) size %d nic idx %d", n, len, nic_i); len = 0; } ring->slot[nm_i].len = len; @@ -228,6 +392,18 @@ lem_netmap_rxsync(struct netmap_adapter *na, u_int ring_nr, int flags) nic_i = nm_next(nic_i, lim); } if (n) { /* update the state variables */ +#ifdef NIC_PARAVIRT + if (csb_mode) { + if (n > 1) { + /* leave one spare buffer so we avoid rxkicks */ + nm_i = nm_prev(nm_i, lim); + nic_i = nm_prev(nic_i, lim); + n--; + } else { + csb->guest_need_rxkick = 1; + } + } +#endif /* NIC_PARAVIRT */ ND("%d new packets at nic %d nm %d tail %d", n, adapter->next_rx_desc_to_check, @@ -249,23 +425,27 @@ lem_netmap_rxsync(struct netmap_adapter *na, u_int ring_nr, int flags) for (n = 0; nm_i != head; n++) { struct netmap_slot *slot = &ring->slot[nm_i]; uint64_t paddr; - void *addr = PNMB(slot, &paddr); + void *addr = PNMB(na, slot, &paddr); struct e1000_rx_desc *curr = &adapter->rx_desc_base[nic_i]; struct em_buffer *rxbuf = &adapter->rx_buffer_area[nic_i]; - if (addr == netmap_buffer_base) /* bad buf */ + if (addr == NETMAP_BUF_BASE(na)) /* bad buf */ goto ring_reset; if (slot->flags & NS_BUF_CHANGED) { /* buffer has changed, reload map */ curr->buffer_addr = htole64(paddr); - netmap_reload_map(adapter->rxtag, rxbuf->map, addr); + netmap_reload_map(na, adapter->rxtag, rxbuf->map, addr); slot->flags &= ~NS_BUF_CHANGED; } curr->status = 0; bus_dmamap_sync(adapter->rxtag, rxbuf->map, BUS_DMASYNC_PREREAD); +#ifdef NIC_PARAVIRT + if (csb_mode && csb->host_rxkick_at == nic_i) + do_host_rxkick = 1; +#endif /* NIC_PARAVIRT */ nm_i = nm_next(nm_i, lim); nic_i = nm_next(nic_i, lim); } @@ -277,6 +457,12 @@ lem_netmap_rxsync(struct netmap_adapter *na, u_int ring_nr, int flags) * so move nic_i back by one unit */ nic_i = nm_prev(nic_i, lim); +#ifdef NIC_PARAVIRT + /* set unconditionally, then also kick if needed */ + if (csb) + csb->guest_rdt = nic_i; + if (!csb_mode || do_host_rxkick) +#endif /* NIC_PARAVIRT */ E1000_WRITE_REG(&adapter->hw, E1000_RDT(0), nic_i); } diff --git a/sys/dev/netmap/if_re_netmap.h b/sys/dev/netmap/if_re_netmap.h index 10abe4f..98f6143 100644 --- a/sys/dev/netmap/if_re_netmap.h +++ b/sys/dev/netmap/if_re_netmap.h @@ -65,10 +65,10 @@ re_netmap_reg(struct netmap_adapter *na, int onoff) * Reconcile kernel and user view of the transmit ring. */ static int -re_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) +re_netmap_txsync(struct netmap_kring *kring, int flags) { + struct netmap_adapter *na = kring->na; struct ifnet *ifp = na->ifp; - struct netmap_kring *kring = &na->tx_rings[ring_nr]; struct netmap_ring *ring = kring->ring; u_int nm_i; /* index into the netmap ring */ u_int nic_i; /* index into the NIC ring */ @@ -96,14 +96,14 @@ re_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) struct netmap_slot *slot = &ring->slot[nm_i]; u_int len = slot->len; uint64_t paddr; - void *addr = PNMB(slot, &paddr); + void *addr = PNMB(na, slot, &paddr); /* device-specific */ struct rl_desc *desc = &sc->rl_ldata.rl_tx_list[nic_i]; int cmd = slot->len | RL_TDESC_CMD_EOF | RL_TDESC_CMD_OWN | RL_TDESC_CMD_SOF ; - NM_CHECK_ADDR_LEN(addr, len); + NM_CHECK_ADDR_LEN(na, addr, len); if (nic_i == lim) /* mark end of ring */ cmd |= RL_TDESC_CMD_EOR; @@ -112,7 +112,7 @@ re_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) /* buffer has changed, reload map */ desc->rl_bufaddr_lo = htole32(RL_ADDR_LO(paddr)); desc->rl_bufaddr_hi = htole32(RL_ADDR_HI(paddr)); - netmap_reload_map(sc->rl_ldata.rl_tx_mtag, + netmap_reload_map(na, sc->rl_ldata.rl_tx_mtag, txd[nic_i].tx_dmamap, addr); } slot->flags &= ~(NS_REPORT | NS_BUF_CHANGED); @@ -169,10 +169,10 @@ re_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) * Reconcile kernel and user view of the receive ring. */ static int -re_netmap_rxsync(struct netmap_adapter *na, u_int ring_nr, int flags) +re_netmap_rxsync(struct netmap_kring *kring, int flags) { + struct netmap_adapter *na = kring->na; struct ifnet *ifp = na->ifp; - struct netmap_kring *kring = &na->rx_rings[ring_nr]; struct netmap_ring *ring = kring->ring; u_int nm_i; /* index into the netmap ring */ u_int nic_i; /* index into the NIC ring */ @@ -240,12 +240,12 @@ re_netmap_rxsync(struct netmap_adapter *na, u_int ring_nr, int flags) for (n = 0; nm_i != head; n++) { struct netmap_slot *slot = &ring->slot[nm_i]; uint64_t paddr; - void *addr = PNMB(slot, &paddr); + void *addr = PNMB(na, slot, &paddr); struct rl_desc *desc = &sc->rl_ldata.rl_rx_list[nic_i]; - int cmd = NETMAP_BUF_SIZE | RL_RDESC_CMD_OWN; + int cmd = NETMAP_BUF_SIZE(na) | RL_RDESC_CMD_OWN; - if (addr == netmap_buffer_base) /* bad buf */ + if (addr == NETMAP_BUF_BASE(na)) /* bad buf */ goto ring_reset; if (nic_i == lim) /* mark end of ring */ @@ -255,7 +255,7 @@ re_netmap_rxsync(struct netmap_adapter *na, u_int ring_nr, int flags) /* buffer has changed, reload map */ desc->rl_bufaddr_lo = htole32(RL_ADDR_LO(paddr)); desc->rl_bufaddr_hi = htole32(RL_ADDR_HI(paddr)); - netmap_reload_map(sc->rl_ldata.rl_rx_mtag, + netmap_reload_map(na, sc->rl_ldata.rl_rx_mtag, rxd[nic_i].rx_dmamap, addr); slot->flags &= ~NS_BUF_CHANGED; } @@ -296,14 +296,10 @@ re_netmap_tx_init(struct rl_softc *sc) struct netmap_adapter *na = NA(sc->rl_ifp); struct netmap_slot *slot; - if (!na || !(na->na_flags & NAF_NATIVE_ON)) { - return; - } - slot = netmap_reset(na, NR_TX, 0, 0); - /* slot is NULL if we are not in netmap mode */ + /* slot is NULL if we are not in native netmap mode */ if (!slot) - return; // XXX cannot happen + return; /* in netmap mode, overwrite addresses and maps */ txd = sc->rl_ldata.rl_tx_desc; desc = sc->rl_ldata.rl_tx_list; @@ -313,11 +309,11 @@ re_netmap_tx_init(struct rl_softc *sc) for (i = 0; i < n; i++) { uint64_t paddr; int l = netmap_idx_n2k(&na->tx_rings[0], i); - void *addr = PNMB(slot + l, &paddr); + void *addr = PNMB(na, slot + l, &paddr); desc[i].rl_bufaddr_lo = htole32(RL_ADDR_LO(paddr)); desc[i].rl_bufaddr_hi = htole32(RL_ADDR_HI(paddr)); - netmap_load_map(sc->rl_ldata.rl_tx_mtag, + netmap_load_map(na, sc->rl_ldata.rl_tx_mtag, txd[i].tx_dmamap, addr); } } @@ -344,15 +340,15 @@ re_netmap_rx_init(struct rl_softc *sc) uint64_t paddr; uint32_t nm_i = netmap_idx_n2k(&na->rx_rings[0], nic_i); - addr = PNMB(slot + nm_i, &paddr); + addr = PNMB(na, slot + nm_i, &paddr); - netmap_reload_map(sc->rl_ldata.rl_rx_mtag, + netmap_reload_map(na, sc->rl_ldata.rl_rx_mtag, sc->rl_ldata.rl_rx_desc[nic_i].rx_dmamap, addr); bus_dmamap_sync(sc->rl_ldata.rl_rx_mtag, sc->rl_ldata.rl_rx_desc[nic_i].rx_dmamap, BUS_DMASYNC_PREREAD); desc[nic_i].rl_bufaddr_lo = htole32(RL_ADDR_LO(paddr)); desc[nic_i].rl_bufaddr_hi = htole32(RL_ADDR_HI(paddr)); - cmdstat = NETMAP_BUF_SIZE; + cmdstat = NETMAP_BUF_SIZE(na); if (nic_i == n - 1) /* mark the end of ring */ cmdstat |= RL_RDESC_CMD_EOR; if (nic_i < max_avail) diff --git a/sys/dev/netmap/if_vtnet_netmap.h b/sys/dev/netmap/if_vtnet_netmap.h new file mode 100644 index 0000000..63f4fa9 --- /dev/null +++ b/sys/dev/netmap/if_vtnet_netmap.h @@ -0,0 +1,434 @@ +/* + * Copyright (C) 2014 Vincenzo Maffione, Luigi Rizzo. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +/* + * $FreeBSD$ + */ + +#include <net/netmap.h> +#include <sys/selinfo.h> +#include <vm/vm.h> +#include <vm/pmap.h> /* vtophys ? */ +#include <dev/netmap/netmap_kern.h> + + +#define SOFTC_T vtnet_softc + +/* Free all the unused buffer in all the RX virtqueues. + * This function is called when entering and exiting netmap mode. + * - buffers queued by the virtio driver return skbuf/mbuf pointer + * and need to be freed; + * - buffers queued by netmap return the txq/rxq, and do not need work + */ +static void +vtnet_netmap_free_bufs(struct SOFTC_T* sc) +{ + int i, nmb = 0, n = 0, last; + + for (i = 0; i < sc->vtnet_max_vq_pairs; i++) { + struct vtnet_rxq *rxq = &sc->vtnet_rxqs[i]; + struct virtqueue *vq; + struct mbuf *m; + struct vtnet_txq *txq = &sc->vtnet_txqs[i]; + struct vtnet_tx_header *txhdr; + + last = 0; + vq = rxq->vtnrx_vq; + while ((m = virtqueue_drain(vq, &last)) != NULL) { + n++; + if (m != (void *)rxq) + m_freem(m); + else + nmb++; + } + + last = 0; + vq = txq->vtntx_vq; + while ((txhdr = virtqueue_drain(vq, &last)) != NULL) { + n++; + if (txhdr != (void *)txq) { + m_freem(txhdr->vth_mbuf); + uma_zfree(vtnet_tx_header_zone, txhdr); + } else + nmb++; + } + } + D("freed %d mbufs, %d netmap bufs on %d queues", + n - nmb, nmb, i); +} + +/* Register and unregister. */ +static int +vtnet_netmap_reg(struct netmap_adapter *na, int onoff) +{ + struct ifnet *ifp = na->ifp; + struct SOFTC_T *sc = ifp->if_softc; + + VTNET_CORE_LOCK(sc); + ifp->if_drv_flags &= ~(IFF_DRV_RUNNING | IFF_DRV_OACTIVE); + /* enable or disable flags and callbacks in na and ifp */ + if (onoff) { + nm_set_native_flags(na); + } else { + nm_clear_native_flags(na); + } + /* drain queues so netmap and native drivers + * do not interfere with each other + */ + vtnet_netmap_free_bufs(sc); + vtnet_init_locked(sc); /* also enable intr */ + VTNET_CORE_UNLOCK(sc); + return (ifp->if_drv_flags & IFF_DRV_RUNNING ? 0 : 1); +} + + +/* Reconcile kernel and user view of the transmit ring. */ +static int +vtnet_netmap_txsync(struct netmap_kring *kring, int flags) +{ + struct netmap_adapter *na = kring->na; + struct ifnet *ifp = na->ifp; + struct netmap_ring *ring = kring->ring; + u_int ring_nr = kring->ring_id; + u_int nm_i; /* index into the netmap ring */ + u_int nic_i; /* index into the NIC ring */ + u_int n; + u_int const lim = kring->nkr_num_slots - 1; + u_int const head = kring->rhead; + + /* device-specific */ + struct SOFTC_T *sc = ifp->if_softc; + struct vtnet_txq *txq = &sc->vtnet_txqs[ring_nr]; + struct virtqueue *vq = txq->vtntx_vq; + + /* + * First part: process new packets to send. + */ + rmb(); + + nm_i = kring->nr_hwcur; + if (nm_i != head) { /* we have new packets to send */ + struct sglist *sg = txq->vtntx_sg; + + nic_i = netmap_idx_k2n(kring, nm_i); + for (n = 0; nm_i != head; n++) { + /* we use an empty header here */ + static struct virtio_net_hdr_mrg_rxbuf hdr; + struct netmap_slot *slot = &ring->slot[nm_i]; + u_int len = slot->len; + uint64_t paddr; + void *addr = PNMB(na, slot, &paddr); + int err; + + NM_CHECK_ADDR_LEN(na, addr, len); + + slot->flags &= ~(NS_REPORT | NS_BUF_CHANGED); + /* Initialize the scatterlist, expose it to the hypervisor, + * and kick the hypervisor (if necessary). + */ + sglist_reset(sg); // cheap + // if vtnet_hdr_size > 0 ... + err = sglist_append(sg, &hdr, sc->vtnet_hdr_size); + // XXX later, support multi segment + err = sglist_append_phys(sg, paddr, len); + /* use na as the cookie */ + err = virtqueue_enqueue(vq, txq, sg, sg->sg_nseg, 0); + if (unlikely(err < 0)) { + D("virtqueue_enqueue failed"); + break; + } + + nm_i = nm_next(nm_i, lim); + nic_i = nm_next(nic_i, lim); + } + /* Update hwcur depending on where we stopped. */ + kring->nr_hwcur = nm_i; /* note we migth break early */ + + /* No more free TX slots? Ask the hypervisor for notifications, + * possibly only when a considerable amount of work has been + * done. + */ + ND(3,"sent %d packets, hwcur %d", n, nm_i); + virtqueue_disable_intr(vq); + virtqueue_notify(vq); + } else { + if (ring->head != ring->tail) + ND(5, "pure notify ? head %d tail %d nused %d %d", + ring->head, ring->tail, virtqueue_nused(vq), + (virtqueue_dump(vq), 1)); + virtqueue_notify(vq); + virtqueue_enable_intr(vq); // like postpone with 0 + } + + + /* Free used slots. We only consider our own used buffers, recognized + * by the token we passed to virtqueue_add_outbuf. + */ + n = 0; + for (;;) { + struct vtnet_tx_header *txhdr = virtqueue_dequeue(vq, NULL); + if (txhdr == NULL) + break; + if (likely(txhdr == (void *)txq)) { + n++; + if (virtqueue_nused(vq) < 32) { // XXX slow release + break; + } + } else { /* leftover from previous transmission */ + m_freem(txhdr->vth_mbuf); + uma_zfree(vtnet_tx_header_zone, txhdr); + } + } + if (n) { + kring->nr_hwtail += n; + if (kring->nr_hwtail > lim) + kring->nr_hwtail -= lim + 1; + } + if (nm_i != kring->nr_hwtail /* && vtnet_txq_below_threshold(txq) == 0*/) { + ND(3, "disable intr, hwcur %d", nm_i); + virtqueue_disable_intr(vq); + } else { + ND(3, "enable intr, hwcur %d", nm_i); + virtqueue_postpone_intr(vq, VQ_POSTPONE_SHORT); + } + +//out: + nm_txsync_finalize(kring); + + return 0; +} + +static int +vtnet_refill_rxq(struct netmap_kring *kring, u_int nm_i, u_int head) +{ + struct netmap_adapter *na = kring->na; + struct ifnet *ifp = na->ifp; + struct netmap_ring *ring = kring->ring; + u_int ring_nr = kring->ring_id; + u_int const lim = kring->nkr_num_slots - 1; + u_int n; + + /* device-specific */ + struct SOFTC_T *sc = ifp->if_softc; + struct vtnet_rxq *rxq = &sc->vtnet_rxqs[ring_nr]; + struct virtqueue *vq = rxq->vtnrx_vq; + + /* use a local sglist, default might be short */ + struct sglist_seg ss[2]; + struct sglist sg = { ss, 0, 0, 2 }; + + for (n = 0; nm_i != head; n++) { + static struct virtio_net_hdr_mrg_rxbuf hdr; + struct netmap_slot *slot = &ring->slot[nm_i]; + uint64_t paddr; + void *addr = PNMB(na, slot, &paddr); + int err = 0; + + if (addr == NETMAP_BUF_BASE(na)) { /* bad buf */ + if (netmap_ring_reinit(kring)) + return -1; + } + + slot->flags &= ~NS_BUF_CHANGED; + sglist_reset(&sg); // cheap + err = sglist_append(&sg, &hdr, sc->vtnet_hdr_size); + err = sglist_append_phys(&sg, paddr, NETMAP_BUF_SIZE(na)); + /* writable for the host */ + err = virtqueue_enqueue(vq, rxq, &sg, 0, sg.sg_nseg); + if (err < 0) { + D("virtqueue_enqueue failed"); + break; + } + nm_i = nm_next(nm_i, lim); + } + return nm_i; +} + +/* Reconcile kernel and user view of the receive ring. */ +static int +vtnet_netmap_rxsync(struct netmap_kring *kring, int flags) +{ + struct netmap_adapter *na = kring->na; + struct ifnet *ifp = na->ifp; + struct netmap_ring *ring = kring->ring; + u_int ring_nr = kring->ring_id; + u_int nm_i; /* index into the netmap ring */ + // u_int nic_i; /* index into the NIC ring */ + u_int n; + u_int const lim = kring->nkr_num_slots - 1; + u_int const head = nm_rxsync_prologue(kring); + int force_update = (flags & NAF_FORCE_READ) || kring->nr_kflags & NKR_PENDINTR; + + /* device-specific */ + struct SOFTC_T *sc = ifp->if_softc; + struct vtnet_rxq *rxq = &sc->vtnet_rxqs[ring_nr]; + struct virtqueue *vq = rxq->vtnrx_vq; + + /* XXX netif_carrier_ok ? */ + + if (head > lim) + return netmap_ring_reinit(kring); + + rmb(); + /* + * First part: import newly received packets. + * Only accept our + * own buffers (matching the token). We should only get + * matching buffers, because of vtnet_netmap_free_rx_unused_bufs() + * and vtnet_netmap_init_buffers(). + */ + if (netmap_no_pendintr || force_update) { + uint16_t slot_flags = kring->nkr_slot_flags; + struct netmap_adapter *token; + + nm_i = kring->nr_hwtail; + n = 0; + for (;;) { + int len; + token = virtqueue_dequeue(vq, &len); + if (token == NULL) + break; + if (likely(token == (void *)rxq)) { + ring->slot[nm_i].len = len; + ring->slot[nm_i].flags = slot_flags; + nm_i = nm_next(nm_i, lim); + n++; + } else { + D("This should not happen"); + } + } + kring->nr_hwtail = nm_i; + kring->nr_kflags &= ~NKR_PENDINTR; + } + ND("[B] h %d c %d hwcur %d hwtail %d", + ring->head, ring->cur, kring->nr_hwcur, + kring->nr_hwtail); + + /* + * Second part: skip past packets that userspace has released. + */ + nm_i = kring->nr_hwcur; /* netmap ring index */ + if (nm_i != head) { + int err = vtnet_refill_rxq(kring, nm_i, head); + if (err < 0) + return 1; + kring->nr_hwcur = err; + virtqueue_notify(vq); + /* After draining the queue may need an intr from the hypervisor */ + vtnet_rxq_enable_intr(rxq); + } + + /* tell userspace that there might be new packets. */ + nm_rxsync_finalize(kring); + + ND("[C] h %d c %d t %d hwcur %d hwtail %d", + ring->head, ring->cur, ring->tail, + kring->nr_hwcur, kring->nr_hwtail); + + return 0; +} + + +/* Make RX virtqueues buffers pointing to netmap buffers. */ +static int +vtnet_netmap_init_rx_buffers(struct SOFTC_T *sc) +{ + struct ifnet *ifp = sc->vtnet_ifp; + struct netmap_adapter* na = NA(ifp); + unsigned int r; + + if (!nm_native_on(na)) + return 0; + for (r = 0; r < na->num_rx_rings; r++) { + struct netmap_kring *kring = &na->rx_rings[r]; + struct vtnet_rxq *rxq = &sc->vtnet_rxqs[r]; + struct virtqueue *vq = rxq->vtnrx_vq; + struct netmap_slot* slot; + int err = 0; + + slot = netmap_reset(na, NR_RX, r, 0); + if (!slot) { + D("strange, null netmap ring %d", r); + return 0; + } + /* Add up to na>-num_rx_desc-1 buffers to this RX virtqueue. + * It's important to leave one virtqueue slot free, otherwise + * we can run into ring->cur/ring->tail wraparounds. + */ + err = vtnet_refill_rxq(kring, 0, na->num_rx_desc-1); + if (err < 0) + return 0; + virtqueue_notify(vq); + } + + return 1; +} + +/* Update the virtio-net device configurations. Number of queues can + * change dinamically, by 'ethtool --set-channels $IFNAME combined $N'. + * This is actually the only way virtio-net can currently enable + * the multiqueue mode. + * XXX note that we seem to lose packets if the netmap ring has more + * slots than the queue + */ +static int +vtnet_netmap_config(struct netmap_adapter *na, u_int *txr, u_int *txd, + u_int *rxr, u_int *rxd) +{ + struct ifnet *ifp = na->ifp; + struct SOFTC_T *sc = ifp->if_softc; + + *txr = *rxr = sc->vtnet_max_vq_pairs; + *rxd = 512; // sc->vtnet_rx_nmbufs; + *txd = *rxd; // XXX + D("vtnet config txq=%d, txd=%d rxq=%d, rxd=%d", + *txr, *txd, *rxr, *rxd); + + return 0; +} + +static void +vtnet_netmap_attach(struct SOFTC_T *sc) +{ + struct netmap_adapter na; + + bzero(&na, sizeof(na)); + + na.ifp = sc->vtnet_ifp; + na.num_tx_desc = 1024;// sc->vtnet_rx_nmbufs; + na.num_rx_desc = 1024; // sc->vtnet_rx_nmbufs; + na.nm_register = vtnet_netmap_reg; + na.nm_txsync = vtnet_netmap_txsync; + na.nm_rxsync = vtnet_netmap_rxsync; + na.nm_config = vtnet_netmap_config; + na.num_tx_rings = na.num_rx_rings = sc->vtnet_max_vq_pairs; + D("max rings %d", sc->vtnet_max_vq_pairs); + netmap_attach(&na); + + D("virtio attached txq=%d, txd=%d rxq=%d, rxd=%d", + na.num_tx_rings, na.num_tx_desc, + na.num_tx_rings, na.num_rx_desc); +} +/* end of file */ diff --git a/sys/dev/netmap/ixgbe_netmap.h b/sys/dev/netmap/ixgbe_netmap.h index a617cc4..3dc628a 100644 --- a/sys/dev/netmap/ixgbe_netmap.h +++ b/sys/dev/netmap/ixgbe_netmap.h @@ -153,10 +153,10 @@ ixgbe_netmap_reg(struct netmap_adapter *na, int onoff) * methods should be handled by the individual drivers. */ static int -ixgbe_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) +ixgbe_netmap_txsync(struct netmap_kring *kring, int flags) { + struct netmap_adapter *na = kring->na; struct ifnet *ifp = na->ifp; - struct netmap_kring *kring = &na->tx_rings[ring_nr]; struct netmap_ring *ring = kring->ring; u_int nm_i; /* index into the netmap ring */ u_int nic_i; /* index into the NIC ring */ @@ -171,7 +171,7 @@ ixgbe_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) /* device-specific */ struct adapter *adapter = ifp->if_softc; - struct tx_ring *txr = &adapter->tx_rings[ring_nr]; + struct tx_ring *txr = &adapter->tx_rings[kring->ring_id]; int reclaim_tx; bus_dmamap_sync(txr->txdma.dma_tag, txr->txdma.dma_map, @@ -223,7 +223,7 @@ ixgbe_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) struct netmap_slot *slot = &ring->slot[nm_i]; u_int len = slot->len; uint64_t paddr; - void *addr = PNMB(slot, &paddr); + void *addr = PNMB(na, slot, &paddr); /* device-specific */ union ixgbe_adv_tx_desc *curr = &txr->tx_base[nic_i]; @@ -236,11 +236,11 @@ ixgbe_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) __builtin_prefetch(&ring->slot[nm_i + 1]); __builtin_prefetch(&txr->tx_buffers[nic_i + 1]); - NM_CHECK_ADDR_LEN(addr, len); + NM_CHECK_ADDR_LEN(na, addr, len); if (slot->flags & NS_BUF_CHANGED) { /* buffer has changed, reload map */ - netmap_reload_map(txr->txtag, txbuf->map, addr); + netmap_reload_map(na, txr->txtag, txbuf->map, addr); } slot->flags &= ~(NS_REPORT | NS_BUF_CHANGED); @@ -309,7 +309,7 @@ ixgbe_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) * REPORT_STATUS in a few slots so TDH is the only * good way. */ - nic_i = IXGBE_READ_REG(&adapter->hw, IXGBE_TDH(ring_nr)); + nic_i = IXGBE_READ_REG(&adapter->hw, IXGBE_TDH(kring->ring_id)); if (nic_i >= kring->nkr_num_slots) { /* XXX can it happen ? */ D("TDH wrap %d", nic_i); nic_i -= kring->nkr_num_slots; @@ -341,10 +341,10 @@ ixgbe_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) * of whether or not we received an interrupt. */ static int -ixgbe_netmap_rxsync(struct netmap_adapter *na, u_int ring_nr, int flags) +ixgbe_netmap_rxsync(struct netmap_kring *kring, int flags) { + struct netmap_adapter *na = kring->na; struct ifnet *ifp = na->ifp; - struct netmap_kring *kring = &na->rx_rings[ring_nr]; struct netmap_ring *ring = kring->ring; u_int nm_i; /* index into the netmap ring */ u_int nic_i; /* index into the NIC ring */ @@ -355,7 +355,7 @@ ixgbe_netmap_rxsync(struct netmap_adapter *na, u_int ring_nr, int flags) /* device-specific */ struct adapter *adapter = ifp->if_softc; - struct rx_ring *rxr = &adapter->rx_rings[ring_nr]; + struct rx_ring *rxr = &adapter->rx_rings[kring->ring_id]; if (head > lim) return netmap_ring_reinit(kring); @@ -425,17 +425,17 @@ ixgbe_netmap_rxsync(struct netmap_adapter *na, u_int ring_nr, int flags) for (n = 0; nm_i != head; n++) { struct netmap_slot *slot = &ring->slot[nm_i]; uint64_t paddr; - void *addr = PNMB(slot, &paddr); + void *addr = PNMB(na, slot, &paddr); union ixgbe_adv_rx_desc *curr = &rxr->rx_base[nic_i]; struct ixgbe_rx_buf *rxbuf = &rxr->rx_buffers[nic_i]; - if (addr == netmap_buffer_base) /* bad buf */ + if (addr == NETMAP_BUF_BASE(na)) /* bad buf */ goto ring_reset; if (slot->flags & NS_BUF_CHANGED) { /* buffer has changed, reload map */ - netmap_reload_map(rxr->ptag, rxbuf->pmap, addr); + netmap_reload_map(na, rxr->ptag, rxbuf->pmap, addr); slot->flags &= ~NS_BUF_CHANGED; } curr->wb.upper.status_error = 0; diff --git a/sys/dev/netmap/netmap.c b/sys/dev/netmap/netmap.c index e8b6c5a..0fd362f 100644 --- a/sys/dev/netmap/netmap.c +++ b/sys/dev/netmap/netmap.c @@ -124,6 +124,223 @@ ports attached to the switch) */ + +/* --- internals ---- + * + * Roadmap to the code that implements the above. + * + * > 1. a process/thread issues one or more open() on /dev/netmap, to create + * > select()able file descriptor on which events are reported. + * + * Internally, we allocate a netmap_priv_d structure, that will be + * initialized on ioctl(NIOCREGIF). + * + * os-specific: + * FreeBSD: netmap_open (netmap_freebsd.c). The priv is + * per-thread. + * linux: linux_netmap_open (netmap_linux.c). The priv is + * per-open. + * + * > 2. on each descriptor, the process issues an ioctl() to identify + * > the interface that should report events to the file descriptor. + * + * Implemented by netmap_ioctl(), NIOCREGIF case, with nmr->nr_cmd==0. + * Most important things happen in netmap_get_na() and + * netmap_do_regif(), called from there. Additional details can be + * found in the comments above those functions. + * + * In all cases, this action creates/takes-a-reference-to a + * netmap_*_adapter describing the port, and allocates a netmap_if + * and all necessary netmap rings, filling them with netmap buffers. + * + * In this phase, the sync callbacks for each ring are set (these are used + * in steps 5 and 6 below). The callbacks depend on the type of adapter. + * The adapter creation/initialization code puts them in the + * netmap_adapter (fields na->nm_txsync and na->nm_rxsync). Then, they + * are copied from there to the netmap_kring's during netmap_do_regif(), by + * the nm_krings_create() callback. All the nm_krings_create callbacks + * actually call netmap_krings_create() to perform this and the other + * common stuff. netmap_krings_create() also takes care of the host rings, + * if needed, by setting their sync callbacks appropriately. + * + * Additional actions depend on the kind of netmap_adapter that has been + * registered: + * + * - netmap_hw_adapter: [netmap.c] + * This is a system netdev/ifp with native netmap support. + * The ifp is detached from the host stack by redirecting: + * - transmissions (from the network stack) to netmap_transmit() + * - receive notifications to the nm_notify() callback for + * this adapter. The callback is normally netmap_notify(), unless + * the ifp is attached to a bridge using bwrap, in which case it + * is netmap_bwrap_intr_notify(). + * + * - netmap_generic_adapter: [netmap_generic.c] + * A system netdev/ifp without native netmap support. + * + * (the decision about native/non native support is taken in + * netmap_get_hw_na(), called by netmap_get_na()) + * + * - netmap_vp_adapter [netmap_vale.c] + * Returned by netmap_get_bdg_na(). + * This is a persistent or ephemeral VALE port. Ephemeral ports + * are created on the fly if they don't already exist, and are + * always attached to a bridge. + * Persistent VALE ports must must be created seperately, and i + * then attached like normal NICs. The NIOCREGIF we are examining + * will find them only if they had previosly been created and + * attached (see VALE_CTL below). + * + * - netmap_pipe_adapter [netmap_pipe.c] + * Returned by netmap_get_pipe_na(). + * Both pipe ends are created, if they didn't already exist. + * + * - netmap_monitor_adapter [netmap_monitor.c] + * Returned by netmap_get_monitor_na(). + * If successful, the nm_sync callbacks of the monitored adapter + * will be intercepted by the returned monitor. + * + * - netmap_bwrap_adapter [netmap_vale.c] + * Cannot be obtained in this way, see VALE_CTL below + * + * + * os-specific: + * linux: we first go through linux_netmap_ioctl() to + * adapt the FreeBSD interface to the linux one. + * + * + * > 3. on each descriptor, the process issues an mmap() request to + * > map the shared memory region within the process' address space. + * > The list of interesting queues is indicated by a location in + * > the shared memory region. + * + * os-specific: + * FreeBSD: netmap_mmap_single (netmap_freebsd.c). + * linux: linux_netmap_mmap (netmap_linux.c). + * + * > 4. using the functions in the netmap(4) userspace API, a process + * > can look up the occupation state of a queue, access memory buffers, + * > and retrieve received packets or enqueue packets to transmit. + * + * these actions do not involve the kernel. + * + * > 5. using some ioctl()s the process can synchronize the userspace view + * > of the queue with the actual status in the kernel. This includes both + * > receiving the notification of new packets, and transmitting new + * > packets on the output interface. + * + * These are implemented in netmap_ioctl(), NIOCTXSYNC and NIOCRXSYNC + * cases. They invoke the nm_sync callbacks on the netmap_kring + * structures, as initialized in step 2 and maybe later modified + * by a monitor. Monitors, however, will always call the original + * callback before doing anything else. + * + * + * > 6. select() or poll() can be used to wait for events on individual + * > transmit or receive queues (or all queues for a given interface). + * + * Implemented in netmap_poll(). This will call the same nm_sync() + * callbacks as in step 5 above. + * + * os-specific: + * linux: we first go through linux_netmap_poll() to adapt + * the FreeBSD interface to the linux one. + * + * + * ---- VALE_CTL ----- + * + * VALE switches are controlled by issuing a NIOCREGIF with a non-null + * nr_cmd in the nmreq structure. These subcommands are handled by + * netmap_bdg_ctl() in netmap_vale.c. Persistent VALE ports are created + * and destroyed by issuing the NETMAP_BDG_NEWIF and NETMAP_BDG_DELIF + * subcommands, respectively. + * + * Any network interface known to the system (including a persistent VALE + * port) can be attached to a VALE switch by issuing the + * NETMAP_BDG_ATTACH subcommand. After the attachment, persistent VALE ports + * look exactly like ephemeral VALE ports (as created in step 2 above). The + * attachment of other interfaces, instead, requires the creation of a + * netmap_bwrap_adapter. Moreover, the attached interface must be put in + * netmap mode. This may require the creation of a netmap_generic_adapter if + * we have no native support for the interface, or if generic adapters have + * been forced by sysctl. + * + * Both persistent VALE ports and bwraps are handled by netmap_get_bdg_na(), + * called by nm_bdg_ctl_attach(), and discriminated by the nm_bdg_attach() + * callback. In the case of the bwrap, the callback creates the + * netmap_bwrap_adapter. The initialization of the bwrap is then + * completed by calling netmap_do_regif() on it, in the nm_bdg_ctl() + * callback (netmap_bwrap_bdg_ctl in netmap_vale.c). + * A generic adapter for the wrapped ifp will be created if needed, when + * netmap_get_bdg_na() calls netmap_get_hw_na(). + * + * + * ---- DATAPATHS ----- + * + * -= SYSTEM DEVICE WITH NATIVE SUPPORT =- + * + * na == NA(ifp) == netmap_hw_adapter created in DEVICE_netmap_attach() + * + * - tx from netmap userspace: + * concurrently: + * 1) ioctl(NIOCTXSYNC)/netmap_poll() in process context + * kring->nm_sync() == DEVICE_netmap_txsync() + * 2) device interrupt handler + * na->nm_notify() == netmap_notify() + * - rx from netmap userspace: + * concurrently: + * 1) ioctl(NIOCRXSYNC)/netmap_poll() in process context + * kring->nm_sync() == DEVICE_netmap_rxsync() + * 2) device interrupt handler + * na->nm_notify() == netmap_notify() + * - tx from host stack + * concurrently: + * 1) host stack + * netmap_transmit() + * na->nm_notify == netmap_notify() + * 2) ioctl(NIOCRXSYNC)/netmap_poll() in process context + * kring->nm_sync() == netmap_rxsync_from_host_compat + * netmap_rxsync_from_host(na, NULL, NULL) + * - tx to host stack + * ioctl(NIOCTXSYNC)/netmap_poll() in process context + * kring->nm_sync() == netmap_txsync_to_host_compat + * netmap_txsync_to_host(na) + * NM_SEND_UP() + * FreeBSD: na->if_input() == ?? XXX + * linux: netif_rx() with NM_MAGIC_PRIORITY_RX + * + * + * + * -= SYSTEM DEVICE WITH GENERIC SUPPORT =- + * + * + * + * -= VALE PORT =- + * + * + * + * -= NETMAP PIPE =- + * + * + * + * -= SYSTEM DEVICE WITH NATIVE SUPPORT, CONNECTED TO VALE, NO HOST RINGS =- + * + * + * + * -= SYSTEM DEVICE WITH NATIVE SUPPORT, CONNECTED TO VALE, WITH HOST RINGS =- + * + * + * + * -= SYSTEM DEVICE WITH GENERIC SUPPORT, CONNECTED TO VALE, NO HOST RINGS =- + * + * + * + * -= SYSTEM DEVICE WITH GENERIC SUPPORT, CONNECTED TO VALE, WITH HOST RINGS =- + * + * + * + */ + /* * OS-specific code that is used only within this file. * Other OS-specific code that must be accessed by drivers @@ -218,6 +435,10 @@ int netmap_txsync_retry = 2; SYSCTL_INT(_dev_netmap, OID_AUTO, txsync_retry, CTLFLAG_RW, &netmap_txsync_retry, 0 , "Number of txsync loops in bridge's flush."); +int netmap_adaptive_io = 0; +SYSCTL_INT(_dev_netmap, OID_AUTO, adaptive_io, CTLFLAG_RW, + &netmap_adaptive_io, 0 , "Adaptive I/O on paravirt"); + int netmap_flags = 0; /* debug flags */ int netmap_fwd = 0; /* force transparent mode */ int netmap_mmap_unreg = 0; /* allow mmap of unregistered fds */ @@ -259,7 +480,7 @@ nm_kr_get(struct netmap_kring *kr) * mark the ring as stopped, and run through the locks * to make sure other users get to see it. */ -void +static void netmap_disable_ring(struct netmap_kring *kr) { kr->nkr_stopped = 1; @@ -269,41 +490,59 @@ netmap_disable_ring(struct netmap_kring *kr) nm_kr_put(kr); } +/* stop or enable a single tx ring */ +void +netmap_set_txring(struct netmap_adapter *na, u_int ring_id, int stopped) +{ + if (stopped) + netmap_disable_ring(na->tx_rings + ring_id); + else + na->tx_rings[ring_id].nkr_stopped = 0; + /* nofify that the stopped state has changed. This is currently + *only used by bwrap to propagate the state to its own krings. + * (see netmap_bwrap_intr_notify). + */ + na->nm_notify(na, ring_id, NR_TX, NAF_DISABLE_NOTIFY); +} + +/* stop or enable a single rx ring */ +void +netmap_set_rxring(struct netmap_adapter *na, u_int ring_id, int stopped) +{ + if (stopped) + netmap_disable_ring(na->rx_rings + ring_id); + else + na->rx_rings[ring_id].nkr_stopped = 0; + /* nofify that the stopped state has changed. This is currently + *only used by bwrap to propagate the state to its own krings. + * (see netmap_bwrap_intr_notify). + */ + na->nm_notify(na, ring_id, NR_RX, NAF_DISABLE_NOTIFY); +} + /* stop or enable all the rings of na */ -static void -netmap_set_all_rings(struct ifnet *ifp, int stopped) +void +netmap_set_all_rings(struct netmap_adapter *na, int stopped) { - struct netmap_adapter *na; int i; u_int ntx, nrx; - if (!(ifp->if_capenable & IFCAP_NETMAP)) + if (!nm_netmap_on(na)) return; - na = NA(ifp); - ntx = netmap_real_tx_rings(na); nrx = netmap_real_rx_rings(na); for (i = 0; i < ntx; i++) { - if (stopped) - netmap_disable_ring(na->tx_rings + i); - else - na->tx_rings[i].nkr_stopped = 0; - na->nm_notify(na, i, NR_TX, NAF_DISABLE_NOTIFY); + netmap_set_txring(na, i, stopped); } for (i = 0; i < nrx; i++) { - if (stopped) - netmap_disable_ring(na->rx_rings + i); - else - na->rx_rings[i].nkr_stopped = 0; - na->nm_notify(na, i, NR_RX, NAF_DISABLE_NOTIFY); + netmap_set_rxring(na, i, stopped); } } - /* * Convenience function used in drivers. Waits for current txsync()s/rxsync()s * to finish and prevents any new one from starting. Call this before turning @@ -314,10 +553,9 @@ netmap_set_all_rings(struct ifnet *ifp, int stopped) void netmap_disable_all_rings(struct ifnet *ifp) { - netmap_set_all_rings(ifp, 1 /* stopped */); + netmap_set_all_rings(NA(ifp), 1 /* stopped */); } - /* * Convenience function used in drivers. Re-enables rxsync and txsync on the * adapter's rings In linux drivers, this should be placed near each @@ -326,7 +564,7 @@ netmap_disable_all_rings(struct ifnet *ifp) void netmap_enable_all_rings(struct ifnet *ifp) { - netmap_set_all_rings(ifp, 0 /* enabled */); + netmap_set_all_rings(NA(ifp), 0 /* enabled */); } @@ -410,7 +648,6 @@ nm_dump_buf(char *p, int len, int lim, char *dst) int netmap_update_config(struct netmap_adapter *na) { - struct ifnet *ifp = na->ifp; u_int txr, txd, rxr, rxd; txr = txd = rxr = rxd = 0; @@ -429,11 +666,11 @@ netmap_update_config(struct netmap_adapter *na) return 0; /* nothing changed */ if (netmap_verbose || na->active_fds > 0) { D("stored config %s: txring %d x %d, rxring %d x %d", - NM_IFPNAME(ifp), + na->name, na->num_tx_rings, na->num_tx_desc, na->num_rx_rings, na->num_rx_desc); D("new config %s: txring %d x %d, rxring %d x %d", - NM_IFPNAME(ifp), txr, txd, rxr, rxd); + na->name, txr, txd, rxr, rxd); } if (na->active_fds == 0) { D("configuration changed (but fine)"); @@ -447,20 +684,6 @@ netmap_update_config(struct netmap_adapter *na) return 1; } -static int -netmap_txsync_compat(struct netmap_kring *kring, int flags) -{ - struct netmap_adapter *na = kring->na; - return na->nm_txsync(na, kring->ring_id, flags); -} - -static int -netmap_rxsync_compat(struct netmap_kring *kring, int flags) -{ - struct netmap_adapter *na = kring->na; - return na->nm_rxsync(na, kring->ring_id, flags); -} - /* kring->nm_sync callback for the host tx ring */ static int netmap_txsync_to_host_compat(struct netmap_kring *kring, int flags) @@ -538,7 +761,7 @@ netmap_krings_create(struct netmap_adapter *na, u_int tailroom) kring->ring_id = i; kring->nkr_num_slots = ndesc; if (i < na->num_tx_rings) { - kring->nm_sync = netmap_txsync_compat; // XXX + kring->nm_sync = na->nm_txsync; } else if (i == na->num_tx_rings) { kring->nm_sync = netmap_txsync_to_host_compat; } @@ -547,7 +770,7 @@ netmap_krings_create(struct netmap_adapter *na, u_int tailroom) */ kring->rhead = kring->rcur = kring->nr_hwcur = 0; kring->rtail = kring->nr_hwtail = ndesc - 1; - snprintf(kring->name, sizeof(kring->name) - 1, "%s TX%d", NM_IFPNAME(na->ifp), i); + snprintf(kring->name, sizeof(kring->name) - 1, "%s TX%d", na->name, i); ND("ktx %s h %d c %d t %d", kring->name, kring->rhead, kring->rcur, kring->rtail); mtx_init(&kring->q_lock, "nm_txq_lock", NULL, MTX_DEF); @@ -562,13 +785,13 @@ netmap_krings_create(struct netmap_adapter *na, u_int tailroom) kring->ring_id = i; kring->nkr_num_slots = ndesc; if (i < na->num_rx_rings) { - kring->nm_sync = netmap_rxsync_compat; // XXX + kring->nm_sync = na->nm_rxsync; } else if (i == na->num_rx_rings) { kring->nm_sync = netmap_rxsync_from_host_compat; } kring->rhead = kring->rcur = kring->nr_hwcur = 0; kring->rtail = kring->nr_hwtail = 0; - snprintf(kring->name, sizeof(kring->name) - 1, "%s RX%d", NM_IFPNAME(na->ifp), i); + snprintf(kring->name, sizeof(kring->name) - 1, "%s RX%d", na->name, i); ND("krx %s h %d c %d t %d", kring->name, kring->rhead, kring->rcur, kring->rtail); mtx_init(&kring->q_lock, "nm_rxq_lock", NULL, MTX_DEF); @@ -624,7 +847,7 @@ netmap_hw_krings_delete(struct netmap_adapter *na) */ /* call with NMG_LOCK held */ static struct netmap_if* -netmap_if_new(const char *ifname, struct netmap_adapter *na) +netmap_if_new(struct netmap_adapter *na) { struct netmap_if *nifp; @@ -641,7 +864,7 @@ netmap_if_new(const char *ifname, struct netmap_adapter *na) * the netmap rings themselves */ if (na->nm_krings_create(na)) - goto cleanup; + return NULL; /* create all missing netmap rings */ if (netmap_mem_rings_create(na)) @@ -650,7 +873,7 @@ netmap_if_new(const char *ifname, struct netmap_adapter *na) final: /* in all cases, create a new netmap if */ - nifp = netmap_mem_if_new(ifname, na); + nifp = netmap_mem_if_new(na); if (nifp == NULL) goto cleanup; @@ -689,7 +912,7 @@ netmap_get_memory_locked(struct netmap_priv_d* p) nmd = p->np_na->nm_mem; } if (p->np_mref == NULL) { - error = netmap_mem_finalize(nmd); + error = netmap_mem_finalize(nmd, p->np_na); if (!error) p->np_mref = nmd; } else if (p->np_mref != nmd) { @@ -728,17 +951,15 @@ static void netmap_drop_memory_locked(struct netmap_priv_d* p) { if (p->np_mref) { - netmap_mem_deref(p->np_mref); + netmap_mem_deref(p->np_mref, p->np_na); p->np_mref = NULL; } } /* - * File descriptor's private data destructor. - * * Call nm_register(ifp,0) to stop netmap mode on the interface and - * revert to normal operation. We expect that np_na->ifp has not gone. + * revert to normal operation. * The second argument is the nifp to work on. In some cases it is * not attached yet to the netmap_priv_d so we need to pass it as * a separate argument. @@ -748,14 +969,13 @@ static void netmap_do_unregif(struct netmap_priv_d *priv, struct netmap_if *nifp) { struct netmap_adapter *na = priv->np_na; - struct ifnet *ifp = na->ifp; NMG_LOCK_ASSERT(); na->active_fds--; if (na->active_fds <= 0) { /* last instance */ if (netmap_verbose) - D("deleting last instance for %s", NM_IFPNAME(ifp)); + D("deleting last instance for %s", na->name); /* * (TO CHECK) This function is only called * when the last reference to this file descriptor goes @@ -770,8 +990,7 @@ netmap_do_unregif(struct netmap_priv_d *priv, struct netmap_if *nifp) * happens if the close() occurs while a concurrent * syscall is running. */ - if (ifp) - na->nm_register(na, 0); /* off, clear flags */ + na->nm_register(na, 0); /* off, clear flags */ /* Wake up any sleeping threads. netmap_poll will * then return POLLERR * XXX The wake up now must happen during *_down(), when @@ -922,13 +1141,13 @@ netmap_grab_packets(struct netmap_kring *kring, struct mbq *q, int force) if ((slot->flags & NS_FORWARD) == 0 && !force) continue; - if (slot->len < 14 || slot->len > NETMAP_BDG_BUF_SIZE(na->nm_mem)) { + if (slot->len < 14 || slot->len > NETMAP_BUF_SIZE(na)) { RD(5, "bad pkt at %d len %d", n, slot->len); continue; } slot->flags &= ~NS_FORWARD; // XXX needed ? /* XXX TODO: adapt to the case of a multisegment packet */ - m = m_devget(BDG_NMB(na, slot), slot->len, 0, na->ifp, NULL); + m = m_devget(NMB(na, slot), slot->len, 0, na->ifp, NULL); if (m == NULL) break; @@ -981,7 +1200,7 @@ netmap_sw_to_nic(struct netmap_adapter *na) dst->len = tmp.len; dst->flags = NS_BUF_CHANGED; - rdst->head = rdst->cur = nm_next(dst_cur, dst_lim); + rdst->cur = nm_next(dst_cur, dst_lim); } /* if (sent) XXX txsync ? */ } @@ -1028,6 +1247,11 @@ netmap_txsync_to_host(struct netmap_adapter *na) * They have been put in kring->rx_queue by netmap_transmit(). * We protect access to the kring using kring->rx_queue.lock * + * This routine also does the selrecord if called from the poll handler + * (we know because td != NULL). + * + * NOTE: on linux, selrecord() is defined as a macro and uses pwait + * as an additional hidden argument. * returns the number of packets delivered to tx queues in * transparent mode, or a negative value if error */ @@ -1059,14 +1283,15 @@ netmap_rxsync_from_host(struct netmap_adapter *na, struct thread *td, void *pwai int len = MBUF_LEN(m); struct netmap_slot *slot = &ring->slot[nm_i]; - m_copydata(m, 0, len, BDG_NMB(na, slot)); + m_copydata(m, 0, len, NMB(na, slot)); ND("nm %d len %d", nm_i, len); if (netmap_verbose) - D("%s", nm_dump_buf(BDG_NMB(na, slot),len, 128, NULL)); + D("%s", nm_dump_buf(NMB(na, slot),len, 128, NULL)); slot->len = len; slot->flags = kring->nkr_slot_flags; nm_i = nm_next(nm_i, lim); + m_freem(m); } kring->nr_hwtail = nm_i; } @@ -1083,6 +1308,10 @@ netmap_rxsync_from_host(struct netmap_adapter *na, struct thread *td, void *pwai nm_rxsync_finalize(kring); + /* access copies of cur,tail in the kring */ + if (kring->rcur == kring->rtail && td) /* no bufs available */ + selrecord(td, &kring->si); + mbq_unlock(q); return ret; } @@ -1128,21 +1357,23 @@ netmap_get_hw_na(struct ifnet *ifp, struct netmap_adapter **na) i = netmap_admode = NETMAP_ADMODE_BEST; if (NETMAP_CAPABLE(ifp)) { - /* If an adapter already exists, but is - * attached to a vale port, we report that the - * port is busy. - */ - if (NETMAP_OWNED_BY_KERN(NA(ifp))) - return EBUSY; - + prev_na = NA(ifp); /* If an adapter already exists, return it if * there are active file descriptors or if * netmap is not forced to use generic * adapters. */ - if (NA(ifp)->active_fds > 0 || - i != NETMAP_ADMODE_GENERIC) { - *na = NA(ifp); + if (NETMAP_OWNED_BY_ANY(prev_na) + || i != NETMAP_ADMODE_GENERIC + || prev_na->na_flags & NAF_FORCE_NATIVE +#ifdef WITH_PIPES + /* ugly, but we cannot allow an adapter switch + * if some pipe is referring to this one + */ + || prev_na->na_next_pipe > 0 +#endif + ) { + *na = prev_na; return 0; } } @@ -1212,13 +1443,30 @@ netmap_get_na(struct nmreq *nmr, struct netmap_adapter **na, int create) *na = NULL; /* default return value */ - /* first try to see if this is a bridge port. */ NMG_LOCK_ASSERT(); + /* we cascade through all possibile types of netmap adapter. + * All netmap_get_*_na() functions return an error and an na, + * with the following combinations: + * + * error na + * 0 NULL type doesn't match + * !0 NULL type matches, but na creation/lookup failed + * 0 !NULL type matches and na created/found + * !0 !NULL impossible + */ + + /* try to see if this is a monitor port */ + error = netmap_get_monitor_na(nmr, na, create); + if (error || *na != NULL) + return error; + + /* try to see if this is a pipe port */ error = netmap_get_pipe_na(nmr, na, create); if (error || *na != NULL) return error; + /* try to see if this is a bridge port */ error = netmap_get_bdg_na(nmr, na, create); if (error) return error; @@ -1241,11 +1489,6 @@ netmap_get_na(struct nmreq *nmr, struct netmap_adapter **na, int create) if (error) goto out; - /* Users cannot use the NIC attached to a bridge directly */ - if (NETMAP_OWNED_BY_KERN(ret)) { - error = EBUSY; - goto out; - } *na = ret; netmap_adapter_get(ret); @@ -1444,7 +1687,7 @@ netmap_ring_reinit(struct netmap_kring *kring) int errors = 0; // XXX KASSERT nm_kr_tryget - RD(10, "called for %s", NM_IFPNAME(kring->na->ifp)); + RD(10, "called for %s", kring->name); // XXX probably wrong to trust userspace kring->rhead = ring->head; kring->rcur = ring->cur; @@ -1463,7 +1706,7 @@ netmap_ring_reinit(struct netmap_kring *kring) RD(5, "bad index at slot %d idx %d len %d ", i, idx, len); ring->slot[i].buf_idx = 0; ring->slot[i].len = 0; - } else if (len > NETMAP_BDG_BUF_SIZE(kring->na->nm_mem)) { + } else if (len > NETMAP_BUF_SIZE(kring->na)) { ring->slot[i].len = 0; RD(5, "bad len at slot %d idx %d len %d", i, idx, len); } @@ -1481,13 +1724,15 @@ netmap_ring_reinit(struct netmap_kring *kring) return (errors ? 1 : 0); } - -/* - * Set the ring ID. For devices with a single queue, a request - * for all rings is the same as a single ring. +/* interpret the ringid and flags fields of an nmreq, by translating them + * into a pair of intervals of ring indices: + * + * [priv->np_txqfirst, priv->np_txqlast) and + * [priv->np_rxqfirst, priv->np_rxqlast) + * */ -static int -netmap_set_ringid(struct netmap_priv_d *priv, uint16_t ringid, uint32_t flags) +int +netmap_interp_ringid(struct netmap_priv_d *priv, uint16_t ringid, uint32_t flags) { struct netmap_adapter *na = priv->np_na; u_int j, i = ringid & NETMAP_RING_MASK; @@ -1551,15 +1796,11 @@ netmap_set_ringid(struct netmap_priv_d *priv, uint16_t ringid, uint32_t flags) D("invalid regif type %d", reg); return EINVAL; } - priv->np_txpoll = (ringid & NETMAP_NO_TX_POLL) ? 0 : 1; priv->np_flags = (flags & ~NR_REG_MASK) | reg; - if (nm_tx_si_user(priv)) - na->tx_si_users++; - if (nm_rx_si_user(priv)) - na->rx_si_users++; + if (netmap_verbose) { D("%s: tx [%d,%d) rx [%d,%d) id %d", - NM_IFPNAME(na->ifp), + na->name, priv->np_txqfirst, priv->np_txqlast, priv->np_rxqfirst, @@ -1569,16 +1810,113 @@ netmap_set_ringid(struct netmap_priv_d *priv, uint16_t ringid, uint32_t flags) return 0; } + +/* + * Set the ring ID. For devices with a single queue, a request + * for all rings is the same as a single ring. + */ +static int +netmap_set_ringid(struct netmap_priv_d *priv, uint16_t ringid, uint32_t flags) +{ + struct netmap_adapter *na = priv->np_na; + int error; + + error = netmap_interp_ringid(priv, ringid, flags); + if (error) { + return error; + } + + priv->np_txpoll = (ringid & NETMAP_NO_TX_POLL) ? 0 : 1; + + /* optimization: count the users registered for more than + * one ring, which are the ones sleeping on the global queue. + * The default netmap_notify() callback will then + * avoid signaling the global queue if nobody is using it + */ + if (nm_tx_si_user(priv)) + na->tx_si_users++; + if (nm_rx_si_user(priv)) + na->rx_si_users++; + return 0; +} + /* * possibly move the interface to netmap-mode. * If success it returns a pointer to netmap_if, otherwise NULL. * This must be called with NMG_LOCK held. + * + * The following na callbacks are called in the process: + * + * na->nm_config() [by netmap_update_config] + * (get current number and size of rings) + * + * We have a generic one for linux (netmap_linux_config). + * The bwrap has to override this, since it has to forward + * the request to the wrapped adapter (netmap_bwrap_config). + * + * XXX netmap_if_new calls this again (2014-03-15) + * + * na->nm_krings_create() [by netmap_if_new] + * (create and init the krings array) + * + * One of the following: + * + * * netmap_hw_krings_create, (hw ports) + * creates the standard layout for the krings + * and adds the mbq (used for the host rings). + * + * * netmap_vp_krings_create (VALE ports) + * add leases and scratchpads + * + * * netmap_pipe_krings_create (pipes) + * create the krings and rings of both ends and + * cross-link them + * + * * netmap_monitor_krings_create (monitors) + * avoid allocating the mbq + * + * * netmap_bwrap_krings_create (bwraps) + * create both the brap krings array, + * the krings array of the wrapped adapter, and + * (if needed) the fake array for the host adapter + * + * na->nm_register(, 1) + * (put the adapter in netmap mode) + * + * This may be one of the following: + * (XXX these should be either all *_register or all *_reg 2014-03-15) + * + * * netmap_hw_register (hw ports) + * checks that the ifp is still there, then calls + * the hardware specific callback; + * + * * netmap_vp_reg (VALE ports) + * If the port is connected to a bridge, + * set the NAF_NETMAP_ON flag under the + * bridge write lock. + * + * * netmap_pipe_reg (pipes) + * inform the other pipe end that it is no + * longer responsibile for the lifetime of this + * pipe end + * + * * netmap_monitor_reg (monitors) + * intercept the sync callbacks of the monitored + * rings + * + * * netmap_bwrap_register (bwraps) + * cross-link the bwrap and hwna rings, + * forward the request to the hwna, override + * the hwna notify callback (to get the frames + * coming from outside go through the bridge). + * + * XXX maybe netmap_if_new() should be merged with this (2014-03-15). + * */ struct netmap_if * netmap_do_regif(struct netmap_priv_d *priv, struct netmap_adapter *na, uint16_t ringid, uint32_t flags, int *err) { - struct ifnet *ifp = na->ifp; struct netmap_if *nifp = NULL; int error, need_mem = 0; @@ -1597,24 +1935,22 @@ netmap_do_regif(struct netmap_priv_d *priv, struct netmap_adapter *na, if (error) goto out; } - nifp = netmap_if_new(NM_IFPNAME(ifp), na); - /* Allocate a netmap_if and, if necessary, all the netmap_ring's */ + nifp = netmap_if_new(na); if (nifp == NULL) { /* allocation failed */ error = ENOMEM; goto out; } na->active_fds++; - if (ifp->if_capenable & IFCAP_NETMAP) { - /* was already set */ - } else { - /* Otherwise set the card in netmap mode + if (!nm_netmap_on(na)) { + /* Netmap not active, set the card in netmap mode * and make it use the shared buffers. */ /* cache the allocator info in the na */ - na->na_lut = na->nm_mem->pools[NETMAP_BUF_POOL].lut; + na->na_lut = netmap_mem_get_lut(na->nm_mem); ND("%p->na_lut == %p", na, na->na_lut); - na->na_lut_objtotal = na->nm_mem->pools[NETMAP_BUF_POOL].objtotal; + na->na_lut_objtotal = netmap_mem_get_buftotal(na->nm_mem); + na->na_lut_objsize = netmap_mem_get_bufsize(na->nm_mem); error = na->nm_register(na, 1); /* mode on */ if (error) { netmap_do_unregif(priv, nifp); @@ -1624,12 +1960,12 @@ netmap_do_regif(struct netmap_priv_d *priv, struct netmap_adapter *na, out: *err = error; if (error) { - priv->np_na = NULL; /* we should drop the allocator, but only * if we were the ones who grabbed it */ if (need_mem) netmap_drop_memory_locked(priv); + priv->np_na = NULL; } if (nifp != NULL) { /* @@ -1662,7 +1998,6 @@ netmap_ioctl(struct cdev *dev, u_long cmd, caddr_t data, int fflag, struct thread *td) { struct netmap_priv_d *priv = NULL; - struct ifnet *ifp = NULL; struct nmreq *nmr = (struct nmreq *) data; struct netmap_adapter *na = NULL; int error; @@ -1740,7 +2075,9 @@ netmap_ioctl(struct cdev *dev, u_long cmd, caddr_t data, /* possibly attach/detach NIC and VALE switch */ i = nmr->nr_cmd; if (i == NETMAP_BDG_ATTACH || i == NETMAP_BDG_DETACH - || i == NETMAP_BDG_VNET_HDR) { + || i == NETMAP_BDG_VNET_HDR + || i == NETMAP_BDG_NEWIF + || i == NETMAP_BDG_DELIF) { error = netmap_bdg_ctl(nmr, NULL); break; } else if (i != 0) { @@ -1762,7 +2099,6 @@ netmap_ioctl(struct cdev *dev, u_long cmd, caddr_t data, error = netmap_get_na(nmr, &na, 1 /* create */); /* keep reference */ if (error) break; - ifp = na->ifp; if (NETMAP_OWNED_BY_KERN(na)) { netmap_adapter_put(na); error = EBUSY; @@ -1824,9 +2160,7 @@ netmap_ioctl(struct cdev *dev, u_long cmd, caddr_t data, break; } - ifp = na->ifp; - if (ifp == NULL) { - RD(1, "the ifp is gone"); + if (!nm_netmap_on(na)) { error = ENXIO; break; } @@ -1870,6 +2204,9 @@ netmap_ioctl(struct cdev *dev, u_long cmd, caddr_t data, break; + case NIOCCONFIG: + error = netmap_bdg_config(nmr); + break; #ifdef __FreeBSD__ case FIONBIO: case FIOASYNC: @@ -1886,6 +2223,7 @@ netmap_ioctl(struct cdev *dev, u_long cmd, caddr_t data, default: /* allow device-specific ioctls */ { struct socket so; + struct ifnet *ifp; bzero(&so, sizeof(so)); NMG_LOCK(); @@ -1935,7 +2273,6 @@ netmap_poll(struct cdev *dev, int events, struct thread *td) { struct netmap_priv_d *priv = NULL; struct netmap_adapter *na; - struct ifnet *ifp; struct netmap_kring *kring; u_int i, check_all_tx, check_all_rx, want_tx, want_rx, revents = 0; struct mbq q; /* packets from hw queues to host stack */ @@ -1974,18 +2311,12 @@ netmap_poll(struct cdev *dev, int events, struct thread *td) rmb(); /* make sure following reads are not from cache */ na = priv->np_na; - ifp = na->ifp; - // check for deleted - if (ifp == NULL) { - RD(1, "the ifp is gone"); - return POLLERR; - } - if ( (ifp->if_capenable & IFCAP_NETMAP) == 0) + if (!nm_netmap_on(na)) return POLLERR; if (netmap_verbose & 0x8000) - D("device %s events 0x%x", NM_IFPNAME(ifp), events); + D("device %s events 0x%x", na->name, events); want_tx = events & (POLLOUT | POLLWRNORM); want_rx = events & (POLLIN | POLLRDNORM); @@ -2056,7 +2387,6 @@ flush_tx: * be better. In current code, however, we only * stop the rings for brief intervals (2014-03-14) */ - if (netmap_verbose) RD(2, "%p lost race on txring %d, ok", priv, i); @@ -2115,6 +2445,8 @@ do_retry_rx: /* * transparent mode support: collect packets * from the rxring(s). + * XXX NR_FORWARD should only be read on + * physical or NIC ports */ if (netmap_fwd ||kring->ring->flags & NR_FORWARD) { ND(10, "forwarding some buffers up %d to %d", @@ -2141,12 +2473,13 @@ do_retry_rx: /* transparent mode XXX only during first pass ? */ if (na->na_flags & NAF_HOST_RINGS) { kring = &na->rx_rings[na->num_rx_rings]; - if (netmap_fwd || kring->ring->flags & NR_FORWARD) { - send_down = netmap_rxsync_from_host(na, td, dev); - if (send_down && (netmap_no_timestamp == 0 || - kring->ring->flags & NR_TIMESTAMP)) { - microtime(&kring->ring->ts); - } + if (check_all_rx + && (netmap_fwd || kring->ring->flags & NR_FORWARD)) { + /* XXX fix to use kring fields */ + if (nm_ring_empty(kring->ring)) + send_down = netmap_rxsync_from_host(na, td, dev); + if (!nm_ring_empty(kring->ring)) + revents |= want_rx; } } @@ -2174,7 +2507,7 @@ do_retry_rx: * rings to a single file descriptor. */ - if (q.head) + if (q.head && na->ifp != NULL) netmap_send_up(na->ifp, &q); return (revents); @@ -2224,19 +2557,27 @@ netmap_attach_common(struct netmap_adapter *na) if (na->num_tx_rings == 0 || na->num_rx_rings == 0) { D("%s: invalid rings tx %d rx %d", - ifp->if_xname, na->num_tx_rings, na->num_rx_rings); + na->name, na->num_tx_rings, na->num_rx_rings); return EINVAL; } - WNA(ifp) = na; + /* ifp is NULL for virtual adapters (bwrap, non-persistent VALE ports, + * pipes, monitors). For bwrap we actually have a non-null ifp for + * use by the external modules, but that is set after this + * function has been called. + * XXX this is ugly, maybe split this function in two (2014-03-14) + */ + if (ifp != NULL) { + WNA(ifp) = na; /* the following is only needed for na that use the host port. * XXX do we have something similar for linux ? */ #ifdef __FreeBSD__ - na->if_input = ifp->if_input; /* for netmap_send_up */ + na->if_input = ifp->if_input; /* for netmap_send_up */ #endif /* __FreeBSD__ */ - NETMAP_SET_CAPABLE(ifp); + NETMAP_SET_CAPABLE(ifp); + } if (na->nm_krings_create == NULL) { /* we assume that we have been called by a driver, * since other port types all provide their own @@ -2250,7 +2591,13 @@ netmap_attach_common(struct netmap_adapter *na) na->active_fds = 0; if (na->nm_mem == NULL) + /* use the global allocator */ na->nm_mem = &nm_mem; + if (na->nm_bdg_attach == NULL) + /* no special nm_bdg_attach callback. On VALE + * attach, we need to interpose a bwrap + */ + na->nm_bdg_attach = netmap_bwrap_attach; return 0; } @@ -2273,6 +2620,28 @@ netmap_detach_common(struct netmap_adapter *na) free(na, M_DEVBUF); } +/* Wrapper for the register callback provided hardware drivers. + * na->ifp == NULL means the the driver module has been + * unloaded, so we cannot call into it. + * Note that module unloading, in our patched linux drivers, + * happens under NMG_LOCK and after having stopped all the + * nic rings (see netmap_detach). This provides sufficient + * protection for the other driver-provied callbacks + * (i.e., nm_config and nm_*xsync), that therefore don't need + * to wrapped. + */ +static int +netmap_hw_register(struct netmap_adapter *na, int onoff) +{ + struct netmap_hw_adapter *hwna = + (struct netmap_hw_adapter*)na; + + if (na->ifp == NULL) + return onoff ? ENXIO : 0; + + return hwna->nm_hw_register(na, onoff); +} + /* * Initialize a ``netmap_adapter`` object created by driver on attach. @@ -2298,6 +2667,9 @@ netmap_attach(struct netmap_adapter *arg) goto fail; hwna->up = *arg; hwna->up.na_flags |= NAF_HOST_RINGS; + strncpy(hwna->up.name, ifp->if_xname, sizeof(hwna->up.name)); + hwna->nm_hw_register = hwna->up.nm_register; + hwna->up.nm_register = netmap_hw_register; if (netmap_attach_common(&hwna->up)) { free(hwna, M_DEVBUF); goto fail; @@ -2314,10 +2686,20 @@ netmap_attach(struct netmap_adapter *arg) #endif } hwna->nm_ndo.ndo_start_xmit = linux_netmap_start_xmit; + if (ifp->ethtool_ops) { + hwna->nm_eto = *ifp->ethtool_ops; + } + hwna->nm_eto.set_ringparam = linux_netmap_set_ringparam; +#ifdef ETHTOOL_SCHANNELS + hwna->nm_eto.set_channels = linux_netmap_set_channels; +#endif + if (arg->nm_config == NULL) { + hwna->up.nm_config = netmap_linux_config; + } #endif /* linux */ D("success for %s tx %d/%d rx %d/%d queues/slots", - NM_IFPNAME(ifp), + hwna->up.name, hwna->up.num_tx_rings, hwna->up.num_tx_desc, hwna->up.num_rx_rings, hwna->up.num_rx_desc ); @@ -2393,6 +2775,8 @@ netmap_detach(struct ifnet *ifp) * tell them that the interface is gone */ na->ifp = NULL; + // XXX also clear NAF_NATIVE_ON ? + na->na_flags &= ~NAF_NETMAP_ON; /* give them a chance to notice */ netmap_enable_all_rings(ifp); } @@ -2426,8 +2810,8 @@ netmap_transmit(struct ifnet *ifp, struct mbuf *m) // if we follow the down/configure/up protocol -gl // mtx_lock(&na->core_lock); - if ( (ifp->if_capenable & IFCAP_NETMAP) == 0) { - D("%s not in netmap mode anymore", NM_IFPNAME(ifp)); + if (!nm_netmap_on(na)) { + D("%s not in netmap mode anymore", na->name); error = ENXIO; goto done; } @@ -2436,9 +2820,9 @@ netmap_transmit(struct ifnet *ifp, struct mbuf *m) q = &kring->rx_queue; // XXX reconsider long packets if we handle fragments - if (len > NETMAP_BDG_BUF_SIZE(na->nm_mem)) { /* too long for us */ - D("%s from_host, drop packet size %d > %d", NM_IFPNAME(ifp), - len, NETMAP_BDG_BUF_SIZE(na->nm_mem)); + if (len > NETMAP_BUF_SIZE(na)) { /* too long for us */ + D("%s from_host, drop packet size %d > %d", na->name, + len, NETMAP_BUF_SIZE(na)); goto done; } @@ -2454,12 +2838,12 @@ netmap_transmit(struct ifnet *ifp, struct mbuf *m) space += kring->nkr_num_slots; if (space + mbq_len(q) >= kring->nkr_num_slots - 1) { // XXX RD(10, "%s full hwcur %d hwtail %d qlen %d len %d m %p", - NM_IFPNAME(ifp), kring->nr_hwcur, kring->nr_hwtail, mbq_len(q), + na->name, kring->nr_hwcur, kring->nr_hwtail, mbq_len(q), len, m); } else { mbq_enqueue(q, m); ND(10, "%s %d bufs in queue len %d m %p", - NM_IFPNAME(ifp), mbq_len(q), len, m); + na->name, mbq_len(q), len, m); /* notify outside the lock */ m = NULL; error = 0; @@ -2492,12 +2876,8 @@ netmap_reset(struct netmap_adapter *na, enum txrx tx, u_int n, struct netmap_kring *kring; int new_hwofs, lim; - if (na == NULL) { - D("NULL na, should not happen"); - return NULL; /* no netmap support here */ - } - if (!(na->ifp->if_capenable & IFCAP_NETMAP)) { - ND("interface not in netmap mode"); + if (!nm_native_on(na)) { + ND("interface not in native netmap mode"); return NULL; /* nothing to reinitialize */ } @@ -2528,7 +2908,7 @@ netmap_reset(struct netmap_adapter *na, enum txrx tx, u_int n, /* Always set the new offset value and realign the ring. */ if (netmap_verbose) D("%s %s%d hwofs %d -> %d, hwtail %d -> %d", - NM_IFPNAME(na->ifp), + na->name, tx == NR_TX ? "TX" : "RX", n, kring->nkr_hwofs, new_hwofs, kring->nr_hwtail, @@ -2570,8 +2950,9 @@ netmap_reset(struct netmap_adapter *na, enum txrx tx, u_int n, * The 'notify' routine depends on what the ring is attached to. * - for a netmap file descriptor, do a selwakeup on the individual * waitqueue, plus one on the global one if needed - * - for a switch, call the proper forwarding routine - * - XXX more ? + * (see netmap_notify) + * - for a nic connected to a switch, call the proper forwarding routine + * (see netmap_bwrap_intr_notify) */ void netmap_common_irq(struct ifnet *ifp, u_int q, u_int *work_done) @@ -2620,11 +3001,18 @@ netmap_common_irq(struct ifnet *ifp, u_int q, u_int *work_done) int netmap_rx_irq(struct ifnet *ifp, u_int q, u_int *work_done) { - // XXX could we check NAF_NATIVE_ON ? - if (!(ifp->if_capenable & IFCAP_NETMAP)) + struct netmap_adapter *na = NA(ifp); + + /* + * XXX emulated netmap mode sets NAF_SKIP_INTR so + * we still use the regular driver even though the previous + * check fails. It is unclear whether we should use + * nm_native_on() here. + */ + if (!nm_netmap_on(na)) return 0; - if (NA(ifp)->na_flags & NAF_SKIP_INTR) { + if (na->na_flags & NAF_SKIP_INTR) { ND("use regular interrupt"); return 0; } @@ -2677,6 +3065,9 @@ netmap_init(void) goto fail; netmap_init_bridges(); +#ifdef __FreeBSD__ + nm_vi_init_index(); +#endif printf("netmap: loaded module\n"); return (0); fail: diff --git a/sys/dev/netmap/netmap_freebsd.c b/sys/dev/netmap/netmap_freebsd.c index 3674021..160b7c0 100644 --- a/sys/dev/netmap/netmap_freebsd.c +++ b/sys/dev/netmap/netmap_freebsd.c @@ -50,6 +50,9 @@ #include <sys/selinfo.h> #include <net/if.h> #include <net/if_var.h> +#include <net/if_types.h> /* IFT_ETHER */ +#include <net/ethernet.h> /* ether_ifdetach */ +#include <net/if_dl.h> /* LLADDR */ #include <machine/bus.h> /* bus_dmamap_* */ #include <netinet/in.h> /* in6_cksum_pseudo() */ #include <machine/in_cksum.h> /* in_pseudo(), in_cksum_hdr() */ @@ -91,8 +94,7 @@ nm_csum_fold(rawsum_t cur_sum) return htobe16((~cur_sum) & 0xFFFF); } -uint16_t -nm_csum_ipv4(struct nm_iphdr *iph) +uint16_t nm_csum_ipv4(struct nm_iphdr *iph) { #if 0 return in_cksum_hdr((void *)iph); @@ -148,8 +150,7 @@ nm_csum_tcpudp_ipv6(struct nm_ipv6hdr *ip6h, void *data, int netmap_catch_rx(struct netmap_adapter *na, int intercept) { - struct netmap_generic_adapter *gna = - (struct netmap_generic_adapter *)na; + struct netmap_generic_adapter *gna = (struct netmap_generic_adapter *)na; struct ifnet *ifp = na->ifp; if (intercept) { @@ -221,9 +222,9 @@ generic_xmit_frame(struct ifnet *ifp, struct mbuf *m, * (and eventually, just reference the netmap buffer) */ - if (*m->m_ext.ext_cnt != 1) { + if (GET_MBUF_REFCNT(m) != 1) { D("invalid refcnt %d for %p", - *m->m_ext.ext_cnt, m); + GET_MBUF_REFCNT(m), m); panic("in generic_xmit_frame"); } // XXX the ext_size check is unnecessary if we link the netmap buf @@ -238,7 +239,7 @@ generic_xmit_frame(struct ifnet *ifp, struct mbuf *m, } m->m_len = m->m_pkthdr.len = len; // inc refcount. All ours, we could skip the atomic - atomic_fetchadd_int(m->m_ext.ext_cnt, 1); + atomic_fetchadd_int(PNT_MBUF_REFCNT(m), 1); m->m_flags |= M_FLOWID; m->m_pkthdr.flowid = ring_nr; m->m_pkthdr.rcvif = ifp; /* used for tx notification */ @@ -277,10 +278,11 @@ generic_find_num_queues(struct ifnet *ifp, u_int *txq, u_int *rxq) void -netmap_mitigation_init(struct nm_generic_mit *mit, struct netmap_adapter *na) +netmap_mitigation_init(struct nm_generic_mit *mit, int idx, struct netmap_adapter *na) { ND("called"); mit->mit_pending = 0; + mit->mit_ring_idx = idx; mit->mit_na = na; } @@ -313,6 +315,135 @@ netmap_mitigation_cleanup(struct nm_generic_mit *mit) ND("called"); } +static int +nm_vi_dummy(struct ifnet *ifp, u_long cmd, caddr_t addr) +{ + return EINVAL; +} + +static void +nm_vi_start(struct ifnet *ifp) +{ + panic("nm_vi_start() must not be called"); +} + +/* + * Index manager of persistent virtual interfaces. + * It is used to decide the lowest byte of the MAC address. + * We use the same algorithm with management of bridge port index. + */ +#define NM_VI_MAX 255 +static struct { + uint8_t index[NM_VI_MAX]; /* XXX just for a reasonable number */ + uint8_t active; + struct mtx lock; +} nm_vi_indices; + +void +nm_vi_init_index(void) +{ + int i; + for (i = 0; i < NM_VI_MAX; i++) + nm_vi_indices.index[i] = i; + nm_vi_indices.active = 0; + mtx_init(&nm_vi_indices.lock, "nm_vi_indices_lock", NULL, MTX_DEF); +} + +/* return -1 if no index available */ +static int +nm_vi_get_index(void) +{ + int ret; + + mtx_lock(&nm_vi_indices.lock); + ret = nm_vi_indices.active == NM_VI_MAX ? -1 : + nm_vi_indices.index[nm_vi_indices.active++]; + mtx_unlock(&nm_vi_indices.lock); + return ret; +} + +static void +nm_vi_free_index(uint8_t val) +{ + int i, lim; + + mtx_lock(&nm_vi_indices.lock); + lim = nm_vi_indices.active; + for (i = 0; i < lim; i++) { + if (nm_vi_indices.index[i] == val) { + /* swap index[lim-1] and j */ + int tmp = nm_vi_indices.index[lim-1]; + nm_vi_indices.index[lim-1] = val; + nm_vi_indices.index[i] = tmp; + nm_vi_indices.active--; + break; + } + } + if (lim == nm_vi_indices.active) + D("funny, index %u didn't found", val); + mtx_unlock(&nm_vi_indices.lock); +} +#undef NM_VI_MAX + +/* + * Implementation of a netmap-capable virtual interface that + * registered to the system. + * It is based on if_tap.c and ip_fw_log.c in FreeBSD 9. + * + * Note: Linux sets refcount to 0 on allocation of net_device, + * then increments it on registration to the system. + * FreeBSD sets refcount to 1 on if_alloc(), and does not + * increment this refcount on if_attach(). + */ +int +nm_vi_persist(const char *name, struct ifnet **ret) +{ + struct ifnet *ifp; + u_short macaddr_hi; + uint32_t macaddr_mid; + u_char eaddr[6]; + int unit = nm_vi_get_index(); /* just to decide MAC address */ + + if (unit < 0) + return EBUSY; + /* + * We use the same MAC address generation method with tap + * except for the highest octet is 00:be instead of 00:bd + */ + macaddr_hi = htons(0x00be); /* XXX tap + 1 */ + macaddr_mid = (uint32_t) ticks; + bcopy(&macaddr_hi, eaddr, sizeof(short)); + bcopy(&macaddr_mid, &eaddr[2], sizeof(uint32_t)); + eaddr[5] = (uint8_t)unit; + + ifp = if_alloc(IFT_ETHER); + if (ifp == NULL) { + D("if_alloc failed"); + return ENOMEM; + } + if_initname(ifp, name, IF_DUNIT_NONE); + ifp->if_mtu = 65536; + ifp->if_flags = IFF_UP | IFF_SIMPLEX | IFF_MULTICAST; + ifp->if_init = (void *)nm_vi_dummy; + ifp->if_ioctl = nm_vi_dummy; + ifp->if_start = nm_vi_start; + ifp->if_mtu = ETHERMTU; + IFQ_SET_MAXLEN(&ifp->if_snd, ifqmaxlen); + ifp->if_capabilities |= IFCAP_LINKSTATE; + ifp->if_capenable |= IFCAP_LINKSTATE; + + ether_ifattach(ifp, eaddr); + *ret = ifp; + return 0; +} +/* unregister from the system and drop the final refcount */ +void +nm_vi_detach(struct ifnet *ifp) +{ + nm_vi_free_index(((char *)IF_LLADDR(ifp))[5]); + ether_ifdetach(ifp); + if_free(ifp); +} /* * In order to track whether pages are still mapped, we hook into diff --git a/sys/dev/netmap/netmap_generic.c b/sys/dev/netmap/netmap_generic.c index 97850cb..7740382 100644 --- a/sys/dev/netmap/netmap_generic.c +++ b/sys/dev/netmap/netmap_generic.c @@ -102,51 +102,42 @@ __FBSDID("$FreeBSD$"); * mbuf wrappers */ -/* - * mbuf destructor, also need to change the type to EXT_EXTREF, +/* mbuf destructor, also need to change the type to EXT_EXTREF, * add an M_NOFREE flag, and then clear the flag and * chain into uma_zfree(zone_pack, mf) * (or reinstall the buffer ?) - * - * On FreeBSD 9 the destructor is called as ext_free(ext_arg1, ext_arg2) - * whereas newer version have ext_free(m, ext_arg1, ext_arg2) - * For compatibility we set ext_arg1 = m on allocation so we have - * the same code on both. */ #define SET_MBUF_DESTRUCTOR(m, fn) do { \ - (m)->m_ext.ext_free = (void *)fn; \ - (m)->m_ext.ext_type = EXT_EXTREF; \ - } while (0) + (m)->m_ext.ext_free = (void *)fn; \ + (m)->m_ext.ext_type = EXT_EXTREF; \ +} while (0) -static void +static void netmap_default_mbuf_destructor(struct mbuf *m) -{ - /* restore original data pointer and type */ - m->m_ext.ext_buf = m->m_data = m->m_ext.ext_arg2; +{ + /* restore original mbuf */ + m->m_ext.ext_buf = m->m_data = m->m_ext.ext_arg1; + m->m_ext.ext_arg1 = NULL; m->m_ext.ext_type = EXT_PACKET; m->m_ext.ext_free = NULL; - m->m_ext.ext_arg1 = m->m_ext.ext_arg2 = NULL; - if (*(m->m_ext.ext_cnt) == 0) - *(m->m_ext.ext_cnt) = 1; + if (GET_MBUF_REFCNT(m) == 0) + SET_MBUF_REFCNT(m, 1); uma_zfree(zone_pack, m); -} +} -static inline struct mbuf * -netmap_get_mbuf(int len) -{ +static inline struct mbuf * +netmap_get_mbuf(int len) +{ struct mbuf *m; m = m_getcl(M_NOWAIT, MT_DATA, M_PKTHDR | M_NOFREE); if (m) { - m->m_ext.ext_arg1 = m; /* FreeBSD 9 compat */ - m->m_ext.ext_arg2 = m->m_ext.ext_buf; /* save original */ + m->m_ext.ext_arg1 = m->m_ext.ext_buf; // XXX save m->m_ext.ext_free = (void *)netmap_default_mbuf_destructor; m->m_ext.ext_type = EXT_EXTREF; - ND(5, "create m %p refcnt %d", m, *m->m_ext.ext_cnt); + ND(5, "create m %p refcnt %d", m, GET_MBUF_REFCNT(m)); } return m; -} - -#define GET_MBUF_REFCNT(m) ((m)->m_ext.ext_cnt ? *(m)->m_ext.ext_cnt : -1) +} @@ -158,8 +149,6 @@ netmap_get_mbuf(int len) #include <linux/ethtool.h> /* struct ethtool_ops, get_ringparam */ #include <linux/hrtimer.h> -//#define RATE /* Enables communication statistics. */ - //#define REG_RESET #endif /* linux */ @@ -174,7 +163,7 @@ netmap_get_mbuf(int len) /* ======================== usage stats =========================== */ -#ifdef RATE +#ifdef RATE_GENERIC #define IFRATE(x) x struct rate_stats { unsigned long txpkt; @@ -218,23 +207,33 @@ static void rate_callback(unsigned long arg) static struct rate_context rate_ctx; +void generic_rate(int txp, int txs, int txi, int rxp, int rxs, int rxi) +{ + if (txp) rate_ctx.new.txpkt++; + if (txs) rate_ctx.new.txsync++; + if (txi) rate_ctx.new.txirq++; + if (rxp) rate_ctx.new.rxpkt++; + if (rxs) rate_ctx.new.rxsync++; + if (rxi) rate_ctx.new.rxirq++; +} + #else /* !RATE */ #define IFRATE(x) #endif /* !RATE */ /* =============== GENERIC NETMAP ADAPTER SUPPORT ================= */ -#define GENERIC_BUF_SIZE netmap_buf_size /* Size of the mbufs in the Tx pool. */ /* * Wrapper used by the generic adapter layer to notify * the poller threads. Differently from netmap_rx_irq(), we check - * only IFCAP_NETMAP instead of NAF_NATIVE_ON to enable the irq. + * only NAF_NETMAP_ON instead of NAF_NATIVE_ON to enable the irq. */ static void netmap_generic_irq(struct ifnet *ifp, u_int q, u_int *work_done) { - if (unlikely(!(ifp->if_capenable & IFCAP_NETMAP))) + struct netmap_adapter *na = NA(ifp); + if (unlikely(!nm_netmap_on(na))) return; netmap_common_irq(ifp, q, work_done); @@ -245,7 +244,6 @@ netmap_generic_irq(struct ifnet *ifp, u_int q, u_int *work_done) static int generic_netmap_register(struct netmap_adapter *na, int enable) { - struct ifnet *ifp = na->ifp; struct netmap_generic_adapter *gna = (struct netmap_generic_adapter *)na; struct mbuf *m; int error; @@ -271,7 +269,7 @@ generic_netmap_register(struct netmap_adapter *na, int enable) goto out; } for (r=0; r<na->num_rx_rings; r++) - netmap_mitigation_init(&gna->mit[r], na); + netmap_mitigation_init(&gna->mit[r], r, na); /* Initialize the rx queue, as generic_rx_handler() can * be called as soon as netmap_catch_rx() returns. @@ -296,7 +294,7 @@ generic_netmap_register(struct netmap_adapter *na, int enable) for (i=0; i<na->num_tx_desc; i++) na->tx_rings[r].tx_pool[i] = NULL; for (i=0; i<na->num_tx_desc; i++) { - m = netmap_get_mbuf(GENERIC_BUF_SIZE); + m = netmap_get_mbuf(NETMAP_BUF_SIZE(na)); if (!m) { D("tx_pool[%d] allocation failed", i); error = ENOMEM; @@ -312,14 +310,14 @@ generic_netmap_register(struct netmap_adapter *na, int enable) D("netdev_rx_handler_register() failed (%d)", error); goto register_handler; } - ifp->if_capenable |= IFCAP_NETMAP; + na->na_flags |= NAF_NETMAP_ON; /* Make netmap control the packet steering. */ netmap_catch_tx(gna, 1); rtnl_unlock(); -#ifdef RATE +#ifdef RATE_GENERIC if (rate_ctx.refcount == 0) { D("setup_timer()"); memset(&rate_ctx, 0, sizeof(rate_ctx)); @@ -338,7 +336,7 @@ generic_netmap_register(struct netmap_adapter *na, int enable) error handling code below. */ rtnl_lock(); - ifp->if_capenable &= ~IFCAP_NETMAP; + na->na_flags &= ~NAF_NETMAP_ON; /* Release packet steering control. */ netmap_catch_tx(gna, 0); @@ -365,7 +363,7 @@ generic_netmap_register(struct netmap_adapter *na, int enable) free(na->tx_rings[r].tx_pool, M_DEVBUF); } -#ifdef RATE +#ifdef RATE_GENERIC if (--rate_ctx.refcount == 0) { D("del_timer()"); del_timer(&rate_ctx.timer); @@ -421,6 +419,8 @@ generic_mbuf_destructor(struct mbuf *m) IFRATE(rate_ctx.new.txirq++); } +extern int netmap_adaptive_io; + /* Record completed transmissions and update hwtail. * * The oldest tx buffer not yet completed is at nr_hwtail + 1, @@ -440,7 +440,7 @@ generic_netmap_tx_clean(struct netmap_kring *kring) if (unlikely(m == NULL)) { /* this is done, try to replenish the entry */ - tx_pool[nm_i] = m = netmap_get_mbuf(GENERIC_BUF_SIZE); + tx_pool[nm_i] = m = netmap_get_mbuf(NETMAP_BUF_SIZE(kring->na)); if (unlikely(m == NULL)) { D("mbuf allocation failed, XXX error"); // XXX how do we proceed ? break ? @@ -451,6 +451,23 @@ generic_netmap_tx_clean(struct netmap_kring *kring) } n++; nm_i = nm_next(nm_i, lim); +#if 0 /* rate adaptation */ + if (netmap_adaptive_io > 1) { + if (n >= netmap_adaptive_io) + break; + } else if (netmap_adaptive_io) { + /* if hwcur - nm_i < lim/8 do an early break + * so we prevent the sender from stalling. See CVT. + */ + if (hwcur >= nm_i) { + if (hwcur - nm_i < lim/2) + break; + } else { + if (hwcur + lim + 1 - nm_i < lim/2) + break; + } + } +#endif } kring->nr_hwtail = nm_prev(nm_i, lim); ND("tx completed [%d] -> hwtail %d", n, kring->nr_hwtail); @@ -530,14 +547,15 @@ generic_set_tx_event(struct netmap_kring *kring, u_int hwcur) * since it implements the TX flow control (and takes some locks). */ static int -generic_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) +generic_netmap_txsync(struct netmap_kring *kring, int flags) { + struct netmap_adapter *na = kring->na; struct ifnet *ifp = na->ifp; - struct netmap_kring *kring = &na->tx_rings[ring_nr]; struct netmap_ring *ring = kring->ring; u_int nm_i; /* index into the netmap ring */ // j u_int const lim = kring->nkr_num_slots - 1; u_int const head = kring->rhead; + u_int ring_nr = kring->ring_id; IFRATE(rate_ctx.new.txsync++); @@ -553,19 +571,19 @@ generic_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) while (nm_i != head) { struct netmap_slot *slot = &ring->slot[nm_i]; u_int len = slot->len; - void *addr = NMB(slot); + void *addr = NMB(na, slot); /* device-specific */ struct mbuf *m; int tx_ret; - NM_CHECK_ADDR_LEN(addr, len); + NM_CHECK_ADDR_LEN(na, addr, len); /* Tale a mbuf from the tx pool and copy in the user packet. */ m = kring->tx_pool[nm_i]; if (unlikely(!m)) { RD(5, "This should never happen"); - kring->tx_pool[nm_i] = m = netmap_get_mbuf(GENERIC_BUF_SIZE); + kring->tx_pool[nm_i] = m = netmap_get_mbuf(NETMAP_BUF_SIZE(na)); if (unlikely(m == NULL)) { D("mbuf allocation failed"); break; @@ -580,7 +598,7 @@ generic_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) */ tx_ret = generic_xmit_frame(ifp, m, addr, len, ring_nr); if (unlikely(tx_ret)) { - RD(5, "start_xmit failed: err %d [nm_i %u, head %u, hwtail %u]", + ND(5, "start_xmit failed: err %d [nm_i %u, head %u, hwtail %u]", tx_ret, nm_i, head, kring->nr_hwtail); /* * No room for this mbuf in the device driver. @@ -686,10 +704,10 @@ generic_rx_handler(struct ifnet *ifp, struct mbuf *m) * Access must be protected because the rx handler is asynchronous, */ static int -generic_netmap_rxsync(struct netmap_adapter *na, u_int ring_nr, int flags) +generic_netmap_rxsync(struct netmap_kring *kring, int flags) { - struct netmap_kring *kring = &na->rx_rings[ring_nr]; struct netmap_ring *ring = kring->ring; + struct netmap_adapter *na = kring->na; u_int nm_i; /* index into the netmap ring */ //j, u_int n; u_int const lim = kring->nkr_num_slots - 1; @@ -712,11 +730,11 @@ generic_netmap_rxsync(struct netmap_adapter *na, u_int ring_nr, int flags) nm_i = kring->nr_hwtail; /* first empty slot in the receive ring */ for (n = 0; nm_i != stop_i; n++) { int len; - void *addr = NMB(&ring->slot[nm_i]); + void *addr = NMB(na, &ring->slot[nm_i]); struct mbuf *m; /* we only check the address here on generic rx rings */ - if (addr == netmap_buffer_base) { /* Bad buffer */ + if (addr == NETMAP_BUF_BASE(na)) { /* Bad buffer */ return netmap_ring_reinit(kring); } /* @@ -823,7 +841,7 @@ generic_netmap_attach(struct ifnet *ifp) na->nm_txsync = &generic_netmap_txsync; na->nm_rxsync = &generic_netmap_rxsync; na->nm_dtor = &generic_netmap_dtor; - /* when using generic, IFCAP_NETMAP is set so we force + /* when using generic, NAF_NETMAP_ON is set so we force * NAF_SKIP_INTR to use the regular interrupt handler */ na->na_flags = NAF_SKIP_INTR | NAF_HOST_RINGS; diff --git a/sys/dev/netmap/netmap_kern.h b/sys/dev/netmap/netmap_kern.h index 087564c..26df8ed 100644 --- a/sys/dev/netmap/netmap_kern.h +++ b/sys/dev/netmap/netmap_kern.h @@ -36,6 +36,7 @@ #define WITH_VALE // comment out to disable VALE support #define WITH_PIPES +#define WITH_MONITOR #if defined(__FreeBSD__) @@ -43,13 +44,13 @@ #define unlikely(x) __builtin_expect((long)!!(x), 0L) #define NM_LOCK_T struct mtx -#define NMG_LOCK_T struct mtx -#define NMG_LOCK_INIT() mtx_init(&netmap_global_lock, \ - "netmap global lock", NULL, MTX_DEF) -#define NMG_LOCK_DESTROY() mtx_destroy(&netmap_global_lock) -#define NMG_LOCK() mtx_lock(&netmap_global_lock) -#define NMG_UNLOCK() mtx_unlock(&netmap_global_lock) -#define NMG_LOCK_ASSERT() mtx_assert(&netmap_global_lock, MA_OWNED) +#define NMG_LOCK_T struct sx +#define NMG_LOCK_INIT() sx_init(&netmap_global_lock, \ + "netmap global lock") +#define NMG_LOCK_DESTROY() sx_destroy(&netmap_global_lock) +#define NMG_LOCK() sx_xlock(&netmap_global_lock) +#define NMG_UNLOCK() sx_xunlock(&netmap_global_lock) +#define NMG_LOCK_ASSERT() sx_assert(&netmap_global_lock, SA_XLOCKED) #define NM_SELINFO_T struct selinfo #define MBUF_LEN(m) ((m)->m_pkthdr.len) @@ -66,11 +67,23 @@ struct netmap_adapter *netmap_getna(if_t ifp); #endif +#if __FreeBSD_version >= 1100027 +#define GET_MBUF_REFCNT(m) ((m)->m_ext.ext_cnt ? *((m)->m_ext.ext_cnt) : -1) +#define SET_MBUF_REFCNT(m, x) *((m)->m_ext.ext_cnt) = x +#define PNT_MBUF_REFCNT(m) ((m)->m_ext.ext_cnt) +#else +#define GET_MBUF_REFCNT(m) ((m)->m_ext.ref_cnt ? *((m)->m_ext.ref_cnt) : -1) +#define SET_MBUF_REFCNT(m, x) *((m)->m_ext.ref_cnt) = x +#define PNT_MBUF_REFCNT(m) ((m)->m_ext.ref_cnt) +#endif + MALLOC_DECLARE(M_NETMAP); // XXX linux struct, not used in FreeBSD struct net_device_ops { }; +struct ethtool_ops { +}; struct hrtimer { }; @@ -82,7 +95,7 @@ struct hrtimer { #define MBUF_IFP(m) ((m)->dev) #define NM_SEND_UP(ifp, m) \ do { \ - m->priority = NM_MAGIC_PRIORITY; \ + m->priority = NM_MAGIC_PRIORITY_RX; \ netif_rx(m); \ } while (0) @@ -100,18 +113,6 @@ struct hrtimer { #define DEV_NETMAP #endif /* DEV_NETMAP */ -/* - * IFCAP_NETMAP goes into net_device's priv_flags (if_capenable). - * This was 16 bits up to linux 2.6.36, so we need a 16 bit value on older - * platforms and tolerate the clash with IFF_DYNAMIC and IFF_BRIDGE_PORT. - * For the 32-bit value, 0x100000 has no clashes until at least 3.5.1 - */ -#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,37) -#define IFCAP_NETMAP 0x8000 -#else -#define IFCAP_NETMAP 0x200000 -#endif - #elif defined (__APPLE__) #warning apple support is incomplete. @@ -215,7 +216,7 @@ extern NMG_LOCK_T netmap_global_lock; * rxsync_from_host() and netmap_transmit(). The mbq is protected * by its internal lock. * - * RX rings attached to the VALE switch are accessed by both sender + * RX rings attached to the VALE switch are accessed by both senders * and receiver. They are protected through the q_lock on the RX ring. */ struct netmap_kring { @@ -266,7 +267,13 @@ struct netmap_kring { uint32_t nkr_hwlease; uint32_t nkr_lease_idx; - volatile int nkr_stopped; // XXX what for ? + /* while nkr_stopped is set, no new [tr]xsync operations can + * be started on this kring. + * This is used by netmap_disable_all_rings() + * to find a synchronization point where critical data + * structures pointed to by the kring can be added or removed + */ + volatile int nkr_stopped; /* Support for adapters without native netmap support. * On tx rings we preallocate an array of tx buffers @@ -281,13 +288,40 @@ struct netmap_kring { uint32_t ring_id; /* debugging */ char name[64]; /* diagnostic */ + /* [tx]sync callback for this kring. + * The default nm_kring_create callback (netmap_krings_create) + * sets the nm_sync callback of each hardware tx(rx) kring to + * the corresponding nm_txsync(nm_rxsync) taken from the + * netmap_adapter; moreover, it sets the sync callback + * of the host tx(rx) ring to netmap_txsync_to_host + * (netmap_rxsync_from_host). + * + * Overrides: the above configuration is not changed by + * any of the nm_krings_create callbacks. + */ int (*nm_sync)(struct netmap_kring *kring, int flags); #ifdef WITH_PIPES - struct netmap_kring *pipe; - struct netmap_ring *save_ring; + struct netmap_kring *pipe; /* if this is a pipe ring, + * pointer to the other end + */ + struct netmap_ring *save_ring; /* pointer to hidden rings + * (see netmap_pipe.c for details) + */ #endif /* WITH_PIPES */ +#ifdef WITH_MONITOR + /* pointer to the adapter that is monitoring this kring (if any) + */ + struct netmap_monitor_adapter *monitor; + /* + * Monitors work by intercepting the txsync and/or rxsync of the + * monitored krings. This is implemented by replacing + * the nm_sync pointer above and saving the previous + * one in save_sync below. + */ + int (*save_sync)(struct netmap_kring *kring, int flags); +#endif } __attribute__((__aligned__(64))); @@ -360,6 +394,8 @@ tail->| |<-hwtail | |<-hwlease enum txrx { NR_RX = 0, NR_TX = 1 }; +struct netmap_vp_adapter; // forward + /* * The "struct netmap_adapter" extends the "struct adapter" * (or equivalent) device descriptor. @@ -390,13 +426,19 @@ struct netmap_adapter { * deallocation of the memory allocator */ #define NAF_NATIVE_ON 16 /* the adapter is native and the attached - * interface is in netmap mode + * interface is in netmap mode. + * Virtual ports (vale, pipe, monitor...) + * should never use this flag. */ #define NAF_NETMAP_ON 32 /* netmap is active (either native or - * emulated. Where possible (e.g. FreeBSD) + * emulated). Where possible (e.g. FreeBSD) * IFCAP_NETMAP also mirrors this flag. */ #define NAF_HOST_RINGS 64 /* the adapter supports the host rings */ +#define NAF_FORCE_NATIVE 128 /* the adapter is always NATIVE */ +#define NAF_BUSY (1U<<31) /* the adapter is used internally and + * cannot be registered from userspace + */ int active_fds; /* number of user-space descriptors using this interface, which is equal to the number of struct netmap_if objs in the mapped region. */ @@ -423,6 +465,8 @@ struct netmap_adapter { /* count users of the global wait queues */ int tx_si_users, rx_si_users; + void *pdev; /* used to store pci device */ + /* copy of if_qflush and if_transmit pointers, to intercept * packets from the network stack when netmap is active. */ @@ -444,7 +488,7 @@ struct netmap_adapter { * * nm_register() is called on NIOCREGIF and close() to enter * or exit netmap mode on the NIC - * Called with NMG_LOCK held. + * Called with NNG_LOCK held. * * nm_txsync() pushes packets to the underlying hw/switch * @@ -453,14 +497,20 @@ struct netmap_adapter { * nm_config() returns configuration information from the OS * Called with NMG_LOCK held. * - * nm_krings_create() create and init the krings array - * (the array layout must conform to the description - * found above the definition of netmap_krings_create) + * nm_krings_create() create and init the tx_rings and + * rx_rings arrays of kring structures. In particular, + * set the nm_sync callbacks for each ring. + * There is no need to also allocate the corresponding + * netmap_rings, since netmap_mem_rings_create() will always + * be called to provide the missing ones. + * Called with NNG_LOCK held. * - * nm_krings_delete() cleanup and delete the kring array + * nm_krings_delete() cleanup and delete the tx_rings and rx_rings + * arrays + * Called with NMG_LOCK held. * * nm_notify() is used to act after data have become available - * (or the stopped state of the ring has changed) + * (or the stopped state of the ring has changed) * For hw devices this is typically a selwakeup(), * but for NIC/host ports attached to a switch (or vice-versa) * we also need to invoke the 'txsync' code downstream. @@ -469,8 +519,8 @@ struct netmap_adapter { int (*nm_register)(struct netmap_adapter *, int onoff); - int (*nm_txsync)(struct netmap_adapter *, u_int ring, int flags); - int (*nm_rxsync)(struct netmap_adapter *, u_int ring, int flags); + int (*nm_txsync)(struct netmap_kring *kring, int flags); + int (*nm_rxsync)(struct netmap_kring *kring, int flags); #define NAF_FORCE_READ 1 #define NAF_FORCE_RECLAIM 2 /* return configuration information */ @@ -480,7 +530,35 @@ struct netmap_adapter { void (*nm_krings_delete)(struct netmap_adapter *); int (*nm_notify)(struct netmap_adapter *, u_int ring, enum txrx, int flags); -#define NAF_DISABLE_NOTIFY 8 +#define NAF_DISABLE_NOTIFY 8 /* notify that the stopped state of the + * ring has changed (kring->nkr_stopped) + */ + +#ifdef WITH_VALE + /* + * nm_bdg_attach() initializes the na_vp field to point + * to an adapter that can be attached to a VALE switch. If the + * current adapter is already a VALE port, na_vp is simply a cast; + * otherwise, na_vp points to a netmap_bwrap_adapter. + * If applicable, this callback also initializes na_hostvp, + * that can be used to connect the adapter host rings to the + * switch. + * Called with NMG_LOCK held. + * + * nm_bdg_ctl() is called on the actual attach/detach to/from + * to/from the switch, to perform adapter-specific + * initializations + * Called with NMG_LOCK held. + */ + int (*nm_bdg_attach)(const char *bdg_name, struct netmap_adapter *); + int (*nm_bdg_ctl)(struct netmap_adapter *, struct nmreq *, int); + + /* adapter used to attach this adapter to a VALE switch (if any) */ + struct netmap_vp_adapter *na_vp; + /* adapter used to attach the host rings of this adapter + * to a VALE switch (if any) */ + struct netmap_vp_adapter *na_hostvp; +#endif /* standard refcount to control the lifetime of the adapter * (it should be equal to the lifetime of the corresponding ifp) @@ -494,17 +572,22 @@ struct netmap_adapter { struct netmap_mem_d *nm_mem; struct lut_entry *na_lut; uint32_t na_lut_objtotal; /* max buffer index */ + uint32_t na_lut_objsize; /* buffer size */ - /* used internally. If non-null, the interface cannot be bound - * from userspace + /* additional information attached to this adapter + * by other netmap subsystems. Currently used by + * bwrap and LINUX/v1000. */ void *na_private; #ifdef WITH_PIPES + /* array of pipes that have this adapter as a parent */ struct netmap_pipe_adapter **na_pipes; - int na_next_pipe; - int na_max_pipes; + int na_next_pipe; /* next free slot in the array */ + int na_max_pipes; /* size of the array */ #endif /* WITH_PIPES */ + + char name[64]; }; @@ -514,9 +597,9 @@ struct netmap_adapter { * if the NIC is owned by a user, only users can share it. * Evaluation must be done under NMG_LOCK(). */ -#define NETMAP_OWNED_BY_KERN(na) (na->na_private) +#define NETMAP_OWNED_BY_KERN(na) ((na)->na_flags & NAF_BUSY) #define NETMAP_OWNED_BY_ANY(na) \ - (NETMAP_OWNED_BY_KERN(na) || (na->active_fds > 0)) + (NETMAP_OWNED_BY_KERN(na) || ((na)->active_fds > 0)) /* @@ -546,12 +629,17 @@ struct netmap_hw_adapter { /* physical device */ struct netmap_adapter up; struct net_device_ops nm_ndo; // XXX linux only + struct ethtool_ops nm_eto; // XXX linux only + const struct ethtool_ops* save_ethtool; + + int (*nm_hw_register)(struct netmap_adapter *, int onoff); }; /* Mitigation support. */ struct nm_generic_mit { struct hrtimer mit_timer; int mit_pending; + int mit_ring_idx; /* index of the ring being mitigated */ struct netmap_adapter *mit_na; /* backpointer */ }; @@ -641,16 +729,19 @@ struct netmap_bwrap_adapter { /* backup of the hwna notify callback */ int (*save_notify)(struct netmap_adapter *, u_int ring, enum txrx, int flags); + /* backup of the hwna memory allocator */ + struct netmap_mem_d *save_nmd; /* * When we attach a physical interface to the bridge, we * allow the controlling process to terminate, so we need - * a place to store the netmap_priv_d data structure. + * a place to store the n_detmap_priv_d data structure. * This is only done when physical interfaces * are attached to a bridge. */ struct netmap_priv_d *na_kpriv; }; +int netmap_bwrap_attach(const char *name, struct netmap_adapter *); #endif /* WITH_VALE */ @@ -747,12 +838,11 @@ static __inline int nm_kr_tryget(struct netmap_kring *kr) * netmap_load_map/netmap_reload_map are helper routines to set/reset * the dmamap for a packet buffer * - * netmap_reset() is a helper routine to be called in the driver - * when reinitializing a ring. + * netmap_reset() is a helper routine to be called in the hw driver + * when reinitializing a ring. It should not be called by + * virtual ports (vale, pipes, monitor) */ int netmap_attach(struct netmap_adapter *); -int netmap_attach_common(struct netmap_adapter *); -void netmap_detach_common(struct netmap_adapter *na); void netmap_detach(struct ifnet *); int netmap_transmit(struct ifnet *, struct mbuf *); struct netmap_slot *netmap_reset(struct netmap_adapter *na, @@ -764,10 +854,33 @@ int netmap_rx_irq(struct ifnet *, u_int, u_int *); #define netmap_tx_irq(_n, _q) netmap_rx_irq(_n, _q, NULL) void netmap_common_irq(struct ifnet *, u_int, u_int *work_done); -void netmap_disable_all_rings(struct ifnet *); -void netmap_enable_all_rings(struct ifnet *); -void netmap_disable_ring(struct netmap_kring *kr); +#ifdef WITH_VALE +/* functions used by external modules to interface with VALE */ +#define netmap_vp_to_ifp(_vp) ((_vp)->up.ifp) +#define netmap_ifp_to_vp(_ifp) (NA(_ifp)->na_vp) +#define netmap_ifp_to_host_vp(_ifp) (NA(_ifp)->na_hostvp) +#define netmap_bdg_idx(_vp) ((_vp)->bdg_port) +const char *netmap_bdg_name(struct netmap_vp_adapter *); +#else /* !WITH_VALE */ +#define netmap_vp_to_ifp(_vp) NULL +#define netmap_ifp_to_vp(_ifp) NULL +#define netmap_ifp_to_host_vp(_ifp) NULL +#define netmap_bdg_idx(_vp) -1 +#define netmap_bdg_name(_vp) NULL +#endif /* WITH_VALE */ + +static inline int +nm_native_on(struct netmap_adapter *na) +{ + return na && na->na_flags & NAF_NATIVE_ON; +} + +static inline int +nm_netmap_on(struct netmap_adapter *na) +{ + return na && na->na_flags & NAF_NETMAP_ON; +} /* set/clear native flags and if_transmit/netdev_ops */ static inline void @@ -785,6 +898,8 @@ nm_set_native_flags(struct netmap_adapter *na) #else na->if_transmit = (void *)ifp->netdev_ops; ifp->netdev_ops = &((struct netmap_hw_adapter *)na)->nm_ndo; + ((struct netmap_hw_adapter *)na)->save_ethtool = ifp->ethtool_ops; + ifp->ethtool_ops = &((struct netmap_hw_adapter*)na)->nm_eto; #endif } @@ -798,6 +913,7 @@ nm_clear_native_flags(struct netmap_adapter *na) ifp->if_transmit = na->if_transmit; #else ifp->netdev_ops = (void *)na->if_transmit; + ifp->ethtool_ops = ((struct netmap_hw_adapter*)na)->save_ethtool; #endif na->na_flags &= ~(NAF_NATIVE_ON | NAF_NETMAP_ON); #ifdef IFCAP_NETMAP /* or FreeBSD ? */ @@ -858,30 +974,72 @@ nm_rxsync_finalize(struct netmap_kring *kring) /* check/fix address and len in tx rings */ #if 1 /* debug version */ -#define NM_CHECK_ADDR_LEN(_a, _l) do { \ - if (_a == netmap_buffer_base || _l > NETMAP_BUF_SIZE) { \ +#define NM_CHECK_ADDR_LEN(_na, _a, _l) do { \ + if (_a == NETMAP_BUF_BASE(_na) || _l > NETMAP_BUF_SIZE(_na)) { \ RD(5, "bad addr/len ring %d slot %d idx %d len %d", \ - ring_nr, nm_i, slot->buf_idx, len); \ - if (_l > NETMAP_BUF_SIZE) \ - _l = NETMAP_BUF_SIZE; \ + kring->ring_id, nm_i, slot->buf_idx, len); \ + if (_l > NETMAP_BUF_SIZE(_na)) \ + _l = NETMAP_BUF_SIZE(_na); \ } } while (0) #else /* no debug version */ -#define NM_CHECK_ADDR_LEN(_a, _l) do { \ - if (_l > NETMAP_BUF_SIZE) \ - _l = NETMAP_BUF_SIZE; \ +#define NM_CHECK_ADDR_LEN(_na, _a, _l) do { \ + if (_l > NETMAP_BUF_SIZE(_na)) \ + _l = NETMAP_BUF_SIZE(_na); \ } while (0) #endif /*---------------------------------------------------------------*/ /* - * Support routines to be used with the VALE switch + * Support routines used by netmap subsystems + * (native drivers, VALE, generic, pipes, monitors, ...) + */ + + +/* common routine for all functions that create a netmap adapter. It performs + * two main tasks: + * - if the na points to an ifp, mark the ifp as netmap capable + * using na as its native adapter; + * - provide defaults for the setup callbacks and the memory allocator + */ +int netmap_attach_common(struct netmap_adapter *); +/* common actions to be performed on netmap adapter destruction */ +void netmap_detach_common(struct netmap_adapter *); +/* fill priv->np_[tr]xq{first,last} using the ringid and flags information + * coming from a struct nmreq + */ +int netmap_interp_ringid(struct netmap_priv_d *priv, uint16_t ringid, uint32_t flags); +/* update the ring parameters (number and size of tx and rx rings). + * It calls the nm_config callback, if available. */ int netmap_update_config(struct netmap_adapter *na); +/* create and initialize the common fields of the krings array. + * using the information that must be already available in the na. + * tailroom can be used to request the allocation of additional + * tailroom bytes after the krings array. This is used by + * netmap_vp_adapter's (i.e., VALE ports) to make room for + * leasing-related data structures + */ int netmap_krings_create(struct netmap_adapter *na, u_int tailroom); +/* deletes the kring array of the adapter. The array must have + * been created using netmap_krings_create + */ void netmap_krings_delete(struct netmap_adapter *na); -int netmap_rxsync_from_host(struct netmap_adapter *na, struct thread *td, void *pwait); +/* set the stopped/enabled status of ring + * When stopping, they also wait for all current activity on the ring to + * terminate. The status change is then notified using the na nm_notify + * callback. + */ +void netmap_set_txring(struct netmap_adapter *, u_int ring_id, int stopped); +void netmap_set_rxring(struct netmap_adapter *, u_int ring_id, int stopped); +/* set the stopped/enabled status of all rings of the adapter. */ +void netmap_set_all_rings(struct netmap_adapter *, int stopped); +/* convenience wrappers for netmap_set_all_rings, used in drivers */ +void netmap_disable_all_rings(struct ifnet *); +void netmap_enable_all_rings(struct ifnet *); + +int netmap_rxsync_from_host(struct netmap_adapter *na, struct thread *td, void *pwait); struct netmap_if * netmap_do_regif(struct netmap_priv_d *priv, struct netmap_adapter *na, @@ -904,10 +1062,18 @@ int netmap_get_hw_na(struct ifnet *ifp, struct netmap_adapter **na); * NM_BDG_MAXPORTS for broadcast, NM_BDG_MAXPORTS+1 for unknown. * XXX in practice "unknown" might be handled same as broadcast. */ -typedef u_int (*bdg_lookup_fn_t)(char *buf, u_int len, - uint8_t *ring_nr, struct netmap_vp_adapter *); -u_int netmap_bdg_learning(char *, u_int, uint8_t *, - struct netmap_vp_adapter *); +typedef u_int (*bdg_lookup_fn_t)(struct nm_bdg_fwd *ft, uint8_t *ring_nr, + const struct netmap_vp_adapter *); +typedef int (*bdg_config_fn_t)(struct nm_ifreq *); +typedef void (*bdg_dtor_fn_t)(const struct netmap_vp_adapter *); +struct netmap_bdg_ops { + bdg_lookup_fn_t lookup; + bdg_config_fn_t config; + bdg_dtor_fn_t dtor; +}; + +u_int netmap_bdg_learning(struct nm_bdg_fwd *ft, uint8_t *dst_ring, + const struct netmap_vp_adapter *); #define NM_BDG_MAXPORTS 254 /* up to 254 */ #define NM_BDG_BROADCAST NM_BDG_MAXPORTS @@ -915,11 +1081,11 @@ u_int netmap_bdg_learning(char *, u_int, uint8_t *, #define NM_NAME "vale" /* prefix for bridge port name */ - /* these are redefined in case of no VALE support */ int netmap_get_bdg_na(struct nmreq *nmr, struct netmap_adapter **na, int create); void netmap_init_bridges(void); -int netmap_bdg_ctl(struct nmreq *nmr, bdg_lookup_fn_t func); +int netmap_bdg_ctl(struct nmreq *nmr, struct netmap_bdg_ops *bdg_ops); +int netmap_bdg_config(struct nmreq *nmr); #else /* !WITH_VALE */ #define netmap_get_bdg_na(_1, _2, _3) 0 @@ -941,6 +1107,12 @@ int netmap_get_pipe_na(struct nmreq *nmr, struct netmap_adapter **na, int create #define netmap_get_pipe_na(_1, _2, _3) 0 #endif +#ifdef WITH_MONITOR +int netmap_get_monitor_na(struct nmreq *nmr, struct netmap_adapter **na, int create); +#else +#define netmap_get_monitor_na(_1, _2, _3) 0 +#endif + /* Various prototypes */ int netmap_poll(struct cdev *dev, int events, struct thread *td); int netmap_init(void); @@ -952,7 +1124,6 @@ int netmap_dtor_locked(struct netmap_priv_d *priv); int netmap_ioctl(struct cdev *dev, u_long cmd, caddr_t data, int fflag, struct thread *td); /* netmap_adapter creation/destruction */ -#define NM_IFPNAME(ifp) ((ifp) ? (ifp)->if_xname : "zombie") // #define NM_DEBUG_PUTGET 1 @@ -965,7 +1136,7 @@ void __netmap_adapter_get(struct netmap_adapter *na); #define netmap_adapter_get(na) \ do { \ struct netmap_adapter *__na = na; \ - D("getting %p:%s (%d)", __na, NM_IFPNAME(__na->ifp), __na->na_refcount); \ + D("getting %p:%s (%d)", __na, (__na)->name, (__na)->na_refcount); \ __netmap_adapter_get(__na); \ } while (0) @@ -974,7 +1145,7 @@ int __netmap_adapter_put(struct netmap_adapter *na); #define netmap_adapter_put(na) \ ({ \ struct netmap_adapter *__na = na; \ - D("putting %p:%s (%d)", __na, NM_IFPNAME(__na->ifp), __na->na_refcount); \ + D("putting %p:%s (%d)", __na, (__na)->name, (__na)->na_refcount); \ __netmap_adapter_put(__na); \ }) @@ -990,12 +1161,10 @@ int netmap_adapter_put(struct netmap_adapter *na); /* * module variables */ -extern u_int netmap_buf_size; -#define NETMAP_BUF_SIZE netmap_buf_size // XXX remove +#define NETMAP_BUF_BASE(na) ((na)->na_lut[0].vaddr) +#define NETMAP_BUF_SIZE(na) ((na)->na_lut_objsize) extern int netmap_mitigate; // XXX not really used extern int netmap_no_pendintr; -extern u_int netmap_total_buffers; // global allocator -extern char *netmap_buffer_base; // global allocator extern int netmap_verbose; // XXX debugging enum { /* verbose flags */ NM_VERB_ON = 1, /* generic verbose */ @@ -1055,6 +1224,10 @@ extern int netmap_generic_rings; #ifdef __FreeBSD__ +/* Assigns the device IOMMU domain to an allocator. + * Returns -ENOMEM in case the domain is different */ +#define nm_iommu_group_id(dev) (0) + /* Callback invoked by the dma machinery after a successful dmamap_load */ static void netmap_dmamap_cb(__unused void *arg, __unused bus_dma_segment_t * segs, __unused int nseg, __unused int error) @@ -1065,26 +1238,77 @@ static void netmap_dmamap_cb(__unused void *arg, * XXX can we do it without a callback ? */ static inline void -netmap_load_map(bus_dma_tag_t tag, bus_dmamap_t map, void *buf) +netmap_load_map(struct netmap_adapter *na, + bus_dma_tag_t tag, bus_dmamap_t map, void *buf) { if (map) - bus_dmamap_load(tag, map, buf, NETMAP_BUF_SIZE, + bus_dmamap_load(tag, map, buf, NETMAP_BUF_SIZE(na), netmap_dmamap_cb, NULL, BUS_DMA_NOWAIT); } +static inline void +netmap_unload_map(struct netmap_adapter *na, + bus_dma_tag_t tag, bus_dmamap_t map) +{ + if (map) + bus_dmamap_unload(tag, map); +} + /* update the map when a buffer changes. */ static inline void -netmap_reload_map(bus_dma_tag_t tag, bus_dmamap_t map, void *buf) +netmap_reload_map(struct netmap_adapter *na, + bus_dma_tag_t tag, bus_dmamap_t map, void *buf) { if (map) { bus_dmamap_unload(tag, map); - bus_dmamap_load(tag, map, buf, NETMAP_BUF_SIZE, + bus_dmamap_load(tag, map, buf, NETMAP_BUF_SIZE(na), netmap_dmamap_cb, NULL, BUS_DMA_NOWAIT); } } #else /* linux */ +int nm_iommu_group_id(bus_dma_tag_t dev); +extern size_t netmap_mem_get_bufsize(struct netmap_mem_d *); +#include <linux/dma-mapping.h> + +static inline void +netmap_load_map(struct netmap_adapter *na, + bus_dma_tag_t tag, bus_dmamap_t map, void *buf) +{ + if (map) { + *map = dma_map_single(na->pdev, buf, netmap_mem_get_bufsize(na->nm_mem), + DMA_BIDIRECTIONAL); + } +} + +static inline void +netmap_unload_map(struct netmap_adapter *na, + bus_dma_tag_t tag, bus_dmamap_t map) +{ + u_int sz = netmap_mem_get_bufsize(na->nm_mem); + + if (*map) { + dma_unmap_single(na->pdev, *map, sz, + DMA_BIDIRECTIONAL); + } +} + +static inline void +netmap_reload_map(struct netmap_adapter *na, + bus_dma_tag_t tag, bus_dmamap_t map, void *buf) +{ + u_int sz = netmap_mem_get_bufsize(na->nm_mem); + + if (*map) { + dma_unmap_single(na->pdev, *map, sz, + DMA_BIDIRECTIONAL); + } + + *map = dma_map_single(na->pdev, buf, sz, + DMA_BIDIRECTIONAL); +} + /* * XXX How do we redefine these functions: * @@ -1095,8 +1319,7 @@ netmap_reload_map(bus_dma_tag_t tag, bus_dmamap_t map, void *buf) * unfortunately the direction is not, so we need to change * something to have a cross API */ -#define netmap_load_map(_t, _m, _b) -#define netmap_reload_map(_t, _m, _b) + #if 0 struct e1000_buffer *buffer_info = &tx_ring->buffer_info[l]; /* set time_stamp *before* dma to help avoid a possible race */ @@ -1165,40 +1388,32 @@ struct lut_entry { }; struct netmap_obj_pool; -extern struct lut_entry *netmap_buffer_lut; -#define NMB_VA(i) (netmap_buffer_lut[i].vaddr) -#define NMB_PA(i) (netmap_buffer_lut[i].paddr) /* * NMB return the virtual address of a buffer (buffer 0 on bad index) * PNMB also fills the physical address */ static inline void * -NMB(struct netmap_slot *slot) +NMB(struct netmap_adapter *na, struct netmap_slot *slot) { + struct lut_entry *lut = na->na_lut; uint32_t i = slot->buf_idx; - return (unlikely(i >= netmap_total_buffers)) ? NMB_VA(0) : NMB_VA(i); + return (unlikely(i >= na->na_lut_objtotal)) ? + lut[0].vaddr : lut[i].vaddr; } static inline void * -PNMB(struct netmap_slot *slot, uint64_t *pp) +PNMB(struct netmap_adapter *na, struct netmap_slot *slot, uint64_t *pp) { uint32_t i = slot->buf_idx; - void *ret = (i >= netmap_total_buffers) ? NMB_VA(0) : NMB_VA(i); + struct lut_entry *lut = na->na_lut; + void *ret = (i >= na->na_lut_objtotal) ? lut[0].vaddr : lut[i].vaddr; - *pp = (i >= netmap_total_buffers) ? NMB_PA(0) : NMB_PA(i); + *pp = (i >= na->na_lut_objtotal) ? lut[0].paddr : lut[i].paddr; return ret; } /* Generic version of NMB, which uses device-specific memory. */ -static inline void * -BDG_NMB(struct netmap_adapter *na, struct netmap_slot *slot) -{ - struct lut_entry *lut = na->na_lut; - uint32_t i = slot->buf_idx; - return (unlikely(i >= na->na_lut_objtotal)) ? - lut[0].vaddr : lut[i].vaddr; -} @@ -1251,6 +1466,17 @@ struct netmap_priv_d { struct thread *np_td; /* kqueue, just debugging */ }; +#ifdef WITH_MONITOR + +struct netmap_monitor_adapter { + struct netmap_adapter up; + + struct netmap_priv_d priv; + uint32_t flags; +}; + +#endif /* WITH_MONITOR */ + /* * generic netmap emulation for devices that do not have @@ -1265,12 +1491,20 @@ int generic_xmit_frame(struct ifnet *ifp, struct mbuf *m, void *addr, u_int len, int generic_find_num_desc(struct ifnet *ifp, u_int *tx, u_int *rx); void generic_find_num_queues(struct ifnet *ifp, u_int *txq, u_int *rxq); +//#define RATE_GENERIC /* Enables communication statistics for generic. */ +#ifdef RATE_GENERIC +void generic_rate(int txp, int txs, int txi, int rxp, int rxs, int rxi); +#else +#define generic_rate(txp, txs, txi, rxp, rxs, rxi) +#endif + /* * netmap_mitigation API. This is used by the generic adapter * to reduce the number of interrupt requests/selwakeup * to clients on incoming packets. */ -void netmap_mitigation_init(struct nm_generic_mit *mit, struct netmap_adapter *na); +void netmap_mitigation_init(struct nm_generic_mit *mit, int idx, + struct netmap_adapter *na); void netmap_mitigation_start(struct nm_generic_mit *mit); void netmap_mitigation_restart(struct nm_generic_mit *mit); int netmap_mitigation_active(struct nm_generic_mit *mit); @@ -1378,4 +1612,10 @@ void bdg_mismatch_datapath(struct netmap_vp_adapter *na, struct netmap_vp_adapter *dst_na, struct nm_bdg_fwd *ft_p, struct netmap_ring *ring, u_int *j, u_int lim, u_int *howmany); + +/* persistent virtual port routines */ +int nm_vi_persist(const char *, struct ifnet **); +void nm_vi_detach(struct ifnet *); +void nm_vi_init_index(void); + #endif /* _NET_NETMAP_KERN_H_ */ diff --git a/sys/dev/netmap/netmap_mbq.h b/sys/dev/netmap/netmap_mbq.h index a011c4c..455ca8a 100644 --- a/sys/dev/netmap/netmap_mbq.h +++ b/sys/dev/netmap/netmap_mbq.h @@ -74,6 +74,7 @@ mbq_unlock(struct mbq *q) mtx_unlock_spin(&q->lock); } + void mbq_safe_init(struct mbq *q); void mbq_safe_destroy(struct mbq *q); void mbq_safe_enqueue(struct mbq *q, struct mbuf *m); diff --git a/sys/dev/netmap/netmap_mem2.c b/sys/dev/netmap/netmap_mem2.c index d237794..fa891ec 100644 --- a/sys/dev/netmap/netmap_mem2.c +++ b/sys/dev/netmap/netmap_mem2.c @@ -54,6 +54,112 @@ __FBSDID("$FreeBSD$"); #include <dev/netmap/netmap_kern.h> #include "netmap_mem2.h" +#define NETMAP_BUF_MAX_NUM 20*4096*2 /* large machine */ + +#define NETMAP_POOL_MAX_NAMSZ 32 + + +enum { + NETMAP_IF_POOL = 0, + NETMAP_RING_POOL, + NETMAP_BUF_POOL, + NETMAP_POOLS_NR +}; + + +struct netmap_obj_params { + u_int size; + u_int num; +}; +struct netmap_obj_pool { + char name[NETMAP_POOL_MAX_NAMSZ]; /* name of the allocator */ + + /* ---------------------------------------------------*/ + /* these are only meaningful if the pool is finalized */ + /* (see 'finalized' field in netmap_mem_d) */ + u_int objtotal; /* actual total number of objects. */ + u_int memtotal; /* actual total memory space */ + u_int numclusters; /* actual number of clusters */ + + u_int objfree; /* number of free objects. */ + + struct lut_entry *lut; /* virt,phys addresses, objtotal entries */ + uint32_t *bitmap; /* one bit per buffer, 1 means free */ + uint32_t bitmap_slots; /* number of uint32 entries in bitmap */ + /* ---------------------------------------------------*/ + + /* limits */ + u_int objminsize; /* minimum object size */ + u_int objmaxsize; /* maximum object size */ + u_int nummin; /* minimum number of objects */ + u_int nummax; /* maximum number of objects */ + + /* these are changed only by config */ + u_int _objtotal; /* total number of objects */ + u_int _objsize; /* object size */ + u_int _clustsize; /* cluster size */ + u_int _clustentries; /* objects per cluster */ + u_int _numclusters; /* number of clusters */ + + /* requested values */ + u_int r_objtotal; + u_int r_objsize; +}; + +#ifdef linux +// XXX a mtx would suffice here 20130415 lr +#define NMA_LOCK_T struct semaphore +#else /* !linux */ +#define NMA_LOCK_T struct mtx +#endif /* linux */ + +typedef int (*netmap_mem_config_t)(struct netmap_mem_d*); +typedef int (*netmap_mem_finalize_t)(struct netmap_mem_d*); +typedef void (*netmap_mem_deref_t)(struct netmap_mem_d*); + +typedef uint16_t nm_memid_t; + +struct netmap_mem_d { + NMA_LOCK_T nm_mtx; /* protect the allocator */ + u_int nm_totalsize; /* shorthand */ + + u_int flags; +#define NETMAP_MEM_FINALIZED 0x1 /* preallocation done */ + int lasterr; /* last error for curr config */ + int refcount; /* existing priv structures */ + /* the three allocators */ + struct netmap_obj_pool pools[NETMAP_POOLS_NR]; + + netmap_mem_config_t config; + netmap_mem_finalize_t finalize; + netmap_mem_deref_t deref; + + nm_memid_t nm_id; /* allocator identifier */ + int nm_grp; /* iommu groupd id */ + + /* list of all existing allocators, sorted by nm_id */ + struct netmap_mem_d *prev, *next; +}; + +/* accessor functions */ +struct lut_entry* +netmap_mem_get_lut(struct netmap_mem_d *nmd) +{ + return nmd->pools[NETMAP_BUF_POOL].lut; +} + +u_int +netmap_mem_get_buftotal(struct netmap_mem_d *nmd) +{ + return nmd->pools[NETMAP_BUF_POOL].objtotal; +} + +size_t +netmap_mem_get_bufsize(struct netmap_mem_d *nmd) +{ + return nmd->pools[NETMAP_BUF_POOL]._objsize; +} + #ifdef linux #define NMA_LOCK_INIT(n) sema_init(&(n)->nm_mtx, 1) #define NMA_LOCK_DESTROY(n) @@ -135,6 +241,7 @@ struct netmap_mem_d nm_mem = { /* Our memory allocator. */ .deref = netmap_mem_global_deref, .nm_id = 1, + .nm_grp = -1, .prev = &nm_mem, .next = &nm_mem, @@ -143,9 +250,6 @@ struct netmap_mem_d nm_mem = { /* Our memory allocator. */ struct netmap_mem_d *netmap_last_mem_d = &nm_mem; -// XXX logically belongs to nm_mem -struct lut_entry *netmap_buffer_lut; /* exported */ - /* blueprint for the private memory allocators */ static int netmap_mem_private_config(struct netmap_mem_d *nmd); static int netmap_mem_private_finalize(struct netmap_mem_d *nmd); @@ -254,6 +358,25 @@ nm_mem_release_id(struct netmap_mem_d *nmd) NMA_UNLOCK(&nm_mem); } +static int +nm_mem_assign_group(struct netmap_mem_d *nmd, struct device *dev) +{ + int err = 0, id; + id = nm_iommu_group_id(dev); + if (netmap_verbose) + D("iommu_group %d", id); + + NMA_LOCK(nmd); + + if (nmd->nm_grp < 0) + nmd->nm_grp = id; + + if (nmd->nm_grp != id) + nmd->lasterr = err = ENOMEM; + + NMA_UNLOCK(nmd); + return err; +} /* * First, find the allocator that contains the requested offset, @@ -274,7 +397,7 @@ netmap_mem_ofstophys(struct netmap_mem_d* nmd, vm_ooffset_t offset) if (offset >= p[i].memtotal) continue; // now lookup the cluster's address - pa = p[i].lut[offset / p[i]._objsize].paddr + + pa = vtophys(p[i].lut[offset / p[i]._objsize].vaddr) + offset % p[i]._objsize; NMA_UNLOCK(nmd); return pa; @@ -300,18 +423,22 @@ netmap_mem_get_info(struct netmap_mem_d* nmd, u_int* size, u_int *memflags, error = nmd->config(nmd); if (error) goto out; - if (nmd->flags & NETMAP_MEM_FINALIZED) { - *size = nmd->nm_totalsize; - } else { - int i; - *size = 0; - for (i = 0; i < NETMAP_POOLS_NR; i++) { - struct netmap_obj_pool *p = nmd->pools + i; - *size += (p->_numclusters * p->_clustsize); + if (size) { + if (nmd->flags & NETMAP_MEM_FINALIZED) { + *size = nmd->nm_totalsize; + } else { + int i; + *size = 0; + for (i = 0; i < NETMAP_POOLS_NR; i++) { + struct netmap_obj_pool *p = nmd->pools + i; + *size += (p->_numclusters * p->_clustsize); + } } } - *memflags = nmd->flags; - *id = nmd->nm_id; + if (memflags) + *memflags = nmd->flags; + if (id) + *id = nmd->nm_id; out: NMA_UNLOCK(nmd); return error; @@ -471,12 +598,15 @@ netmap_obj_free_va(struct netmap_obj_pool *p, void *vaddr) vaddr, p->name); } +#define netmap_mem_bufsize(n) \ + ((n)->pools[NETMAP_BUF_POOL]._objsize) + #define netmap_if_malloc(n, len) netmap_obj_malloc(&(n)->pools[NETMAP_IF_POOL], len, NULL, NULL) #define netmap_if_free(n, v) netmap_obj_free_va(&(n)->pools[NETMAP_IF_POOL], (v)) #define netmap_ring_malloc(n, len) netmap_obj_malloc(&(n)->pools[NETMAP_RING_POOL], len, NULL, NULL) #define netmap_ring_free(n, v) netmap_obj_free_va(&(n)->pools[NETMAP_RING_POOL], (v)) #define netmap_buf_malloc(n, _pos, _index) \ - netmap_obj_malloc(&(n)->pools[NETMAP_BUF_POOL], NETMAP_BDG_BUF_SIZE(n), _pos, _index) + netmap_obj_malloc(&(n)->pools[NETMAP_BUF_POOL], netmap_mem_bufsize(n), _pos, _index) #if 0 // XXX unused @@ -675,7 +805,7 @@ netmap_config_obj_allocator(struct netmap_obj_pool *p, u_int objtotal, u_int obj p->r_objtotal = objtotal; p->r_objsize = objsize; -#define MAX_CLUSTSIZE (1<<17) +#define MAX_CLUSTSIZE (1<<22) // 4 MB #define LINE_ROUND NM_CACHE_ALIGN // 64 if (objsize >= MAX_CLUSTSIZE) { /* we could do it but there is no point */ @@ -713,15 +843,14 @@ netmap_config_obj_allocator(struct netmap_obj_pool *p, u_int objtotal, u_int obj clustentries = i; break; } - if (delta > ( (clustentries*objsize) % PAGE_SIZE) ) - clustentries = i; } - // D("XXX --- ouch, delta %d (bad for buffers)", delta); - /* compute clustsize and round to the next page */ + /* exact solution not found */ + if (clustentries == 0) { + D("unsupported allocation for %d bytes", objsize); + return EINVAL; + } + /* compute clustsize */ clustsize = clustentries * objsize; - i = (clustsize & (PAGE_SIZE - 1)); - if (i) - clustsize += PAGE_SIZE - i; if (netmap_verbose) D("objsize %d clustsize %d objects %d", objsize, clustsize, clustentries); @@ -857,6 +986,47 @@ netmap_mem_reset_all(struct netmap_mem_d *nmd) } static int +netmap_mem_unmap(struct netmap_obj_pool *p, struct netmap_adapter *na) +{ + int i, lim = p->_objtotal; + + if (na->pdev == NULL) + return 0; + +#ifdef __FreeBSD__ + (void)i; + (void)lim; + D("unsupported on FreeBSD"); +#else /* linux */ + for (i = 2; i < lim; i++) { + netmap_unload_map(na, (bus_dma_tag_t) na->pdev, &p->lut[i].paddr); + } +#endif /* linux */ + + return 0; +} + +static int +netmap_mem_map(struct netmap_obj_pool *p, struct netmap_adapter *na) +{ +#ifdef __FreeBSD__ + D("unsupported on FreeBSD"); +#else /* linux */ + int i, lim = p->_objtotal; + + if (na->pdev == NULL) + return 0; + + for (i = 2; i < lim; i++) { + netmap_load_map(na, (bus_dma_tag_t) na->pdev, &p->lut[i].paddr, + p->lut[i].vaddr); + } +#endif /* linux */ + + return 0; +} + +static int netmap_mem_finalize_all(struct netmap_mem_d *nmd) { int i; @@ -1091,13 +1261,6 @@ netmap_mem_global_finalize(struct netmap_mem_d *nmd) if (netmap_mem_finalize_all(nmd)) goto out; - /* backward compatibility */ - netmap_buf_size = nmd->pools[NETMAP_BUF_POOL]._objsize; - netmap_total_buffers = nmd->pools[NETMAP_BUF_POOL].objtotal; - - netmap_buffer_lut = nmd->pools[NETMAP_BUF_POOL].lut; - netmap_buffer_base = nmd->pools[NETMAP_BUF_POOL].lut[0].vaddr; - nmd->lasterr = 0; out: @@ -1198,7 +1361,7 @@ netmap_mem_rings_create(struct netmap_adapter *na) ring->cur = kring->rcur; ring->tail = kring->rtail; *(uint16_t *)(uintptr_t)&ring->nr_buf_size = - NETMAP_BDG_BUF_SIZE(na->nm_mem); + netmap_mem_bufsize(na->nm_mem); ND("%s h %d c %d t %d", kring->name, ring->head, ring->cur, ring->tail); ND("initializing slots for txring"); @@ -1241,7 +1404,7 @@ netmap_mem_rings_create(struct netmap_adapter *na) ring->cur = kring->rcur; ring->tail = kring->rtail; *(int *)(uintptr_t)&ring->nr_buf_size = - NETMAP_BDG_BUF_SIZE(na->nm_mem); + netmap_mem_bufsize(na->nm_mem); ND("%s h %d c %d t %d", kring->name, ring->head, ring->cur, ring->tail); ND("initializing slots for rxring %p", ring); @@ -1290,7 +1453,7 @@ netmap_mem_rings_delete(struct netmap_adapter *na) * the interface is in netmap mode. */ struct netmap_if * -netmap_mem_if_new(const char *ifname, struct netmap_adapter *na) +netmap_mem_if_new(struct netmap_adapter *na) { struct netmap_if *nifp; ssize_t base; /* handy for relative offsets between rings and nifp */ @@ -1316,7 +1479,7 @@ netmap_mem_if_new(const char *ifname, struct netmap_adapter *na) /* initialize base fields -- override const */ *(u_int *)(uintptr_t)&nifp->ni_tx_rings = na->num_tx_rings; *(u_int *)(uintptr_t)&nifp->ni_rx_rings = na->num_rx_rings; - strncpy(nifp->ni_name, ifname, (size_t)IFNAMSIZ); + strncpy(nifp->ni_name, na->name, (size_t)IFNAMSIZ); /* * fill the slots for the rx and tx rings. They contain the offset @@ -1358,6 +1521,8 @@ netmap_mem_global_deref(struct netmap_mem_d *nmd) NMA_LOCK(nmd); nmd->refcount--; + if (!nmd->refcount) + nmd->nm_grp = -1; if (netmap_verbose) D("refcount = %d", nmd->refcount); @@ -1365,13 +1530,25 @@ netmap_mem_global_deref(struct netmap_mem_d *nmd) } int -netmap_mem_finalize(struct netmap_mem_d *nmd) +netmap_mem_finalize(struct netmap_mem_d *nmd, struct netmap_adapter *na) { - return nmd->finalize(nmd); + if (nm_mem_assign_group(nmd, na->pdev) < 0) { + return ENOMEM; + } else { + nmd->finalize(nmd); + } + + if (!nmd->lasterr && na->pdev) + netmap_mem_map(&nmd->pools[NETMAP_BUF_POOL], na); + + return nmd->lasterr; } void -netmap_mem_deref(struct netmap_mem_d *nmd) +netmap_mem_deref(struct netmap_mem_d *nmd, struct netmap_adapter *na) { + NMA_LOCK(nmd); + netmap_mem_unmap(&nmd->pools[NETMAP_BUF_POOL], na); + NMA_UNLOCK(nmd); return nmd->deref(nmd); } diff --git a/sys/dev/netmap/netmap_mem2.h b/sys/dev/netmap/netmap_mem2.h index e83616a..4c620bd 100644 --- a/sys/dev/netmap/netmap_mem2.h +++ b/sys/dev/netmap/netmap_mem2.h @@ -97,70 +97,6 @@ #define _NET_NETMAP_MEM2_H_ -#define NETMAP_BUF_MAX_NUM 20*4096*2 /* large machine */ - -#define NETMAP_POOL_MAX_NAMSZ 32 - - -enum { - NETMAP_IF_POOL = 0, - NETMAP_RING_POOL, - NETMAP_BUF_POOL, - NETMAP_POOLS_NR -}; - - -struct netmap_obj_params { - u_int size; - u_int num; -}; -struct netmap_obj_pool { - char name[NETMAP_POOL_MAX_NAMSZ]; /* name of the allocator */ - - /* ---------------------------------------------------*/ - /* these are only meaningful if the pool is finalized */ - /* (see 'finalized' field in netmap_mem_d) */ - u_int objtotal; /* actual total number of objects. */ - u_int memtotal; /* actual total memory space */ - u_int numclusters; /* actual number of clusters */ - - u_int objfree; /* number of free objects. */ - - struct lut_entry *lut; /* virt,phys addresses, objtotal entries */ - uint32_t *bitmap; /* one bit per buffer, 1 means free */ - uint32_t bitmap_slots; /* number of uint32 entries in bitmap */ - /* ---------------------------------------------------*/ - - /* limits */ - u_int objminsize; /* minimum object size */ - u_int objmaxsize; /* maximum object size */ - u_int nummin; /* minimum number of objects */ - u_int nummax; /* maximum number of objects */ - - /* these are changed only by config */ - u_int _objtotal; /* total number of objects */ - u_int _objsize; /* object size */ - u_int _clustsize; /* cluster size */ - u_int _clustentries; /* objects per cluster */ - u_int _numclusters; /* number of clusters */ - - /* requested values */ - u_int r_objtotal; - u_int r_objsize; -}; - -#ifdef linux -// XXX a mtx would suffice here 20130415 lr -#define NMA_LOCK_T struct semaphore -#else /* !linux */ -#define NMA_LOCK_T struct mtx -#endif /* linux */ - -typedef int (*netmap_mem_config_t)(struct netmap_mem_d*); -typedef int (*netmap_mem_finalize_t)(struct netmap_mem_d*); -typedef void (*netmap_mem_deref_t)(struct netmap_mem_d*); - -typedef uint16_t nm_memid_t; /* We implement two kinds of netmap_mem_d structures: * @@ -178,40 +114,21 @@ typedef uint16_t nm_memid_t; * are no active users. By 'active user' we mean an existing netmap_priv * structure holding a reference to the allocator. */ -struct netmap_mem_d { - NMA_LOCK_T nm_mtx; /* protect the allocator */ - u_int nm_totalsize; /* shorthand */ - - u_int flags; -#define NETMAP_MEM_FINALIZED 0x1 /* preallocation done */ -#define NETMAP_MEM_PRIVATE 0x2 /* uses private address space */ - int lasterr; /* last error for curr config */ - int refcount; /* existing priv structures */ - /* the three allocators */ - struct netmap_obj_pool pools[NETMAP_POOLS_NR]; - - netmap_mem_config_t config; - netmap_mem_finalize_t finalize; - netmap_mem_deref_t deref; - - nm_memid_t nm_id; /* allocator identifier */ - - /* list of all existing allocators, sorted by nm_id */ - struct netmap_mem_d *prev, *next; -}; extern struct netmap_mem_d nm_mem; +struct lut_entry* netmap_mem_get_lut(struct netmap_mem_d *); +u_int netmap_mem_get_buftotal(struct netmap_mem_d *); +size_t netmap_mem_get_bufsize(struct netmap_mem_d *); vm_paddr_t netmap_mem_ofstophys(struct netmap_mem_d *, vm_ooffset_t); -int netmap_mem_finalize(struct netmap_mem_d *); +int netmap_mem_finalize(struct netmap_mem_d *, struct netmap_adapter *); int netmap_mem_init(void); void netmap_mem_fini(void); -struct netmap_if * - netmap_mem_if_new(const char *, struct netmap_adapter *); +struct netmap_if * netmap_mem_if_new(struct netmap_adapter *); void netmap_mem_if_delete(struct netmap_adapter *, struct netmap_if *); int netmap_mem_rings_create(struct netmap_adapter *); void netmap_mem_rings_delete(struct netmap_adapter *); -void netmap_mem_deref(struct netmap_mem_d *); +void netmap_mem_deref(struct netmap_mem_d *, struct netmap_adapter *); int netmap_mem_get_info(struct netmap_mem_d *, u_int *size, u_int *memflags, uint16_t *id); ssize_t netmap_mem_if_offset(struct netmap_mem_d *, const void *vaddr); struct netmap_mem_d* netmap_mem_private_new(const char *name, @@ -219,7 +136,8 @@ struct netmap_mem_d* netmap_mem_private_new(const char *name, int* error); void netmap_mem_private_delete(struct netmap_mem_d *); -#define NETMAP_BDG_BUF_SIZE(n) ((n)->pools[NETMAP_BUF_POOL]._objsize) +#define NETMAP_MEM_PRIVATE 0x2 /* allocator uses private address space */ +#define NETMAP_MEM_IO 0x4 /* the underlying memory is mmapped I/O */ uint32_t netmap_extra_alloc(struct netmap_adapter *, uint32_t *, uint32_t n); diff --git a/sys/dev/netmap/netmap_monitor.c b/sys/dev/netmap/netmap_monitor.c new file mode 100644 index 0000000..485c370 --- /dev/null +++ b/sys/dev/netmap/netmap_monitor.c @@ -0,0 +1,498 @@ +/* + * Copyright (C) 2014 Giuseppe Lettieri. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +/* + * $FreeBSD$ + * + * Monitors + * + * netmap monitors can be used to do zero-copy monitoring of network traffic + * on another adapter, when the latter adapter is working in netmap mode. + * + * Monitors offer to userspace the same interface as any other netmap port, + * with as many pairs of netmap rings as the monitored adapter. + * However, only the rx rings are actually used. Each monitor rx ring receives + * the traffic transiting on both the tx and rx corresponding rings in the + * monitored adapter. During registration, the user can choose if she wants + * to intercept tx only, rx only, or both tx and rx traffic. + * + * The monitor only sees the frames after they have been consumed in the + * monitored adapter: + * + * - For tx traffic, this is after the slots containing the frames have been + * marked as free. Note that this may happen at a considerably delay after + * frame transmission, since freeing of slots is often done lazily. + * + * - For rx traffic, this is after the consumer on the monitored adapter + * has released them. In most cases, the consumer is a userspace + * application which may have modified the frame contents. + * + * If the monitor is not able to cope with the stream of frames, excess traffic + * will be dropped. + * + * Each ring can be monitored by at most one monitor. This may change in the + * future, if we implement monitor chaining. + * + */ + + +#if defined(__FreeBSD__) +#include <sys/cdefs.h> /* prerequisite */ + +#include <sys/types.h> +#include <sys/errno.h> +#include <sys/param.h> /* defines used in kernel.h */ +#include <sys/kernel.h> /* types used in module initialization */ +#include <sys/malloc.h> +#include <sys/poll.h> +#include <sys/lock.h> +#include <sys/rwlock.h> +#include <sys/selinfo.h> +#include <sys/sysctl.h> +#include <sys/socket.h> /* sockaddrs */ +#include <net/if.h> +#include <net/if_var.h> +#include <machine/bus.h> /* bus_dmamap_* */ +#include <sys/refcount.h> + + +#elif defined(linux) + +#include "bsd_glue.h" + +#elif defined(__APPLE__) + +#warning OSX support is only partial +#include "osx_glue.h" + +#else + +#error Unsupported platform + +#endif /* unsupported */ + +/* + * common headers + */ + +#include <net/netmap.h> +#include <dev/netmap/netmap_kern.h> +#include <dev/netmap/netmap_mem2.h> + +#ifdef WITH_MONITOR + +#define NM_MONITOR_MAXSLOTS 4096 + +/* monitor works by replacing the nm_sync callbacks in the monitored rings. + * The actions to be performed are the same on both tx and rx rings, so we + * have collected them here + */ +static int +netmap_monitor_parent_sync(struct netmap_kring *kring, int flags, u_int* ringptr) +{ + struct netmap_monitor_adapter *mna = kring->monitor; + struct netmap_kring *mkring = &mna->up.rx_rings[kring->ring_id]; + struct netmap_ring *ring = kring->ring, *mring = mkring->ring; + int error; + int rel_slots, free_slots, busy; + u_int beg, end, i; + u_int lim = kring->nkr_num_slots - 1, + mlim = mkring->nkr_num_slots - 1; + + /* get the relased slots (rel_slots) */ + beg = *ringptr; + error = kring->save_sync(kring, flags); + if (error) + return error; + end = *ringptr; + rel_slots = end - beg; + if (rel_slots < 0) + rel_slots += kring->nkr_num_slots; + + if (!rel_slots) { + return 0; + } + + /* we need to lock the monitor receive ring, since it + * is the target of bot tx and rx traffic from the monitored + * adapter + */ + mtx_lock(&mkring->q_lock); + /* get the free slots available on the monitor ring */ + i = mkring->nr_hwtail; + busy = i - mkring->nr_hwcur; + if (busy < 0) + busy += mkring->nkr_num_slots; + free_slots = mlim - busy; + + if (!free_slots) { + mtx_unlock(&mkring->q_lock); + return 0; + } + + /* swap min(free_slots, rel_slots) slots */ + if (free_slots < rel_slots) { + beg += (rel_slots - free_slots); + if (beg > lim) + beg = 0; + rel_slots = free_slots; + } + + for ( ; rel_slots; rel_slots--) { + struct netmap_slot *s = &ring->slot[beg]; + struct netmap_slot *ms = &mring->slot[i]; + uint32_t tmp; + + tmp = ms->buf_idx; + ms->buf_idx = s->buf_idx; + s->buf_idx = tmp; + + tmp = ms->len; + ms->len = s->len; + s->len = tmp; + + s->flags |= NS_BUF_CHANGED; + + beg = nm_next(beg, lim); + i = nm_next(i, mlim); + + } + wmb(); + mkring->nr_hwtail = i; + + mtx_unlock(&mkring->q_lock); + /* notify the new frames to the monitor */ + mna->up.nm_notify(&mna->up, mkring->ring_id, NR_RX, 0); + return 0; +} + +/* callback used to replace the nm_sync callback in the monitored tx rings */ +static int +netmap_monitor_parent_txsync(struct netmap_kring *kring, int flags) +{ + ND("%s %x", kring->name, flags); + return netmap_monitor_parent_sync(kring, flags, &kring->nr_hwtail); +} + +/* callback used to replace the nm_sync callback in the monitored rx rings */ +static int +netmap_monitor_parent_rxsync(struct netmap_kring *kring, int flags) +{ + ND("%s %x", kring->name, flags); + return netmap_monitor_parent_sync(kring, flags, &kring->rcur); +} + +/* nm_sync callback for the monitor's own tx rings. + * This makes no sense and always returns error + */ +static int +netmap_monitor_txsync(struct netmap_kring *kring, int flags) +{ + D("%s %x", kring->name, flags); + return EIO; +} + +/* nm_sync callback for the monitor's own rx rings. + * Note that the lock in netmap_monitor_parent_sync only protects + * writers among themselves. Synchronization between writers + * (i.e., netmap_monitor_parent_txsync and netmap_monitor_parent_rxsync) + * and readers (i.e., netmap_monitor_rxsync) relies on memory barriers. + */ +static int +netmap_monitor_rxsync(struct netmap_kring *kring, int flags) +{ + ND("%s %x", kring->name, flags); + kring->nr_hwcur = kring->rcur; + rmb(); + nm_rxsync_finalize(kring); + return 0; +} + +/* nm_krings_create callbacks for monitors. + * We could use the default netmap_hw_krings_monitor, but + * we don't need the mbq. + */ +static int +netmap_monitor_krings_create(struct netmap_adapter *na) +{ + return netmap_krings_create(na, 0); +} + + +/* nm_register callback for monitors. + * + * On registration, replace the nm_sync callbacks in the monitored + * rings with our own, saving the previous ones in the monitored + * rings themselves, where they are used by netmap_monitor_parent_sync. + * + * On de-registration, restore the original callbacks. We need to + * stop traffic while we are doing this, since the monitored adapter may + * have already started executing a netmap_monitor_parent_sync + * and may not like the kring->save_sync pointer to become NULL. + */ +static int +netmap_monitor_reg(struct netmap_adapter *na, int onoff) +{ + struct netmap_monitor_adapter *mna = + (struct netmap_monitor_adapter *)na; + struct netmap_priv_d *priv = &mna->priv; + struct netmap_adapter *pna = priv->np_na; + struct netmap_kring *kring; + int i; + + ND("%p: onoff %d", na, onoff); + if (onoff) { + if (!nm_netmap_on(pna)) { + /* parent left netmap mode, fatal */ + return ENXIO; + } + if (mna->flags & NR_MONITOR_TX) { + for (i = priv->np_txqfirst; i < priv->np_txqlast; i++) { + kring = &pna->tx_rings[i]; + kring->save_sync = kring->nm_sync; + kring->nm_sync = netmap_monitor_parent_txsync; + } + } + if (mna->flags & NR_MONITOR_RX) { + for (i = priv->np_rxqfirst; i < priv->np_rxqlast; i++) { + kring = &pna->rx_rings[i]; + kring->save_sync = kring->nm_sync; + kring->nm_sync = netmap_monitor_parent_rxsync; + } + } + na->na_flags |= NAF_NETMAP_ON; + } else { + if (!nm_netmap_on(pna)) { + /* parent left netmap mode, nothing to restore */ + return 0; + } + na->na_flags &= ~NAF_NETMAP_ON; + if (mna->flags & NR_MONITOR_TX) { + for (i = priv->np_txqfirst; i < priv->np_txqlast; i++) { + netmap_set_txring(pna, i, 1 /* stopped */); + kring = &pna->tx_rings[i]; + kring->nm_sync = kring->save_sync; + kring->save_sync = NULL; + netmap_set_txring(pna, i, 0 /* enabled */); + } + } + if (mna->flags & NR_MONITOR_RX) { + for (i = priv->np_rxqfirst; i < priv->np_rxqlast; i++) { + netmap_set_rxring(pna, i, 1 /* stopped */); + kring = &pna->rx_rings[i]; + kring->nm_sync = kring->save_sync; + kring->save_sync = NULL; + netmap_set_rxring(pna, i, 0 /* enabled */); + } + } + } + return 0; +} +/* nm_krings_delete callback for monitors */ +static void +netmap_monitor_krings_delete(struct netmap_adapter *na) +{ + netmap_krings_delete(na); +} + + +/* nm_dtor callback for monitors */ +static void +netmap_monitor_dtor(struct netmap_adapter *na) +{ + struct netmap_monitor_adapter *mna = + (struct netmap_monitor_adapter *)na; + struct netmap_priv_d *priv = &mna->priv; + struct netmap_adapter *pna = priv->np_na; + int i; + + ND("%p", na); + if (nm_netmap_on(pna)) { + /* parent still in netmap mode, mark its krings as free */ + if (mna->flags & NR_MONITOR_TX) { + for (i = priv->np_txqfirst; i < priv->np_txqlast; i++) { + pna->tx_rings[i].monitor = NULL; + } + } + if (mna->flags & NR_MONITOR_RX) { + for (i = priv->np_rxqfirst; i < priv->np_rxqlast; i++) { + pna->rx_rings[i].monitor = NULL; + } + } + } + netmap_adapter_put(pna); +} + + +/* check if nmr is a request for a monitor adapter that we can satisfy */ +int +netmap_get_monitor_na(struct nmreq *nmr, struct netmap_adapter **na, int create) +{ + struct nmreq pnmr; + struct netmap_adapter *pna; /* parent adapter */ + struct netmap_monitor_adapter *mna; + int i, error; + + if ((nmr->nr_flags & (NR_MONITOR_TX | NR_MONITOR_RX)) == 0) { + ND("not a monitor"); + return 0; + } + /* this is a request for a monitor adapter */ + + D("flags %x", nmr->nr_flags); + + mna = malloc(sizeof(*mna), M_DEVBUF, M_NOWAIT | M_ZERO); + if (mna == NULL) { + D("memory error"); + return ENOMEM; + } + + /* first, try to find the adapter that we want to monitor + * We use the same nmr, after we have turned off the monitor flags. + * In this way we can potentially monitor everything netmap understands, + * except other monitors. + */ + memcpy(&pnmr, nmr, sizeof(pnmr)); + pnmr.nr_flags &= ~(NR_MONITOR_TX | NR_MONITOR_RX); + error = netmap_get_na(&pnmr, &pna, create); + if (error) { + D("parent lookup failed: %d", error); + return error; + } + D("found parent: %s", pna->name); + + if (!nm_netmap_on(pna)) { + /* parent not in netmap mode */ + /* XXX we can wait for the parent to enter netmap mode, + * by intercepting its nm_register callback (2014-03-16) + */ + D("%s not in netmap mode", pna->name); + error = EINVAL; + goto put_out; + } + + /* grab all the rings we need in the parent */ + mna->priv.np_na = pna; + error = netmap_interp_ringid(&mna->priv, nmr->nr_ringid, nmr->nr_flags); + if (error) { + D("ringid error"); + goto put_out; + } + if (nmr->nr_flags & NR_MONITOR_TX) { + for (i = mna->priv.np_txqfirst; i < mna->priv.np_txqlast; i++) { + struct netmap_kring *kring = &pna->tx_rings[i]; + if (kring->monitor) { + error = EBUSY; + D("ring busy"); + goto release_out; + } + kring->monitor = mna; + } + } + if (nmr->nr_flags & NR_MONITOR_RX) { + for (i = mna->priv.np_rxqfirst; i < mna->priv.np_rxqlast; i++) { + struct netmap_kring *kring = &pna->rx_rings[i]; + if (kring->monitor) { + error = EBUSY; + D("ring busy"); + goto release_out; + } + kring->monitor = mna; + } + } + + snprintf(mna->up.name, sizeof(mna->up.name), "mon:%s", pna->name); + + /* the monitor supports the host rings iff the parent does */ + mna->up.na_flags = (pna->na_flags & NAF_HOST_RINGS); + mna->up.nm_txsync = netmap_monitor_txsync; + mna->up.nm_rxsync = netmap_monitor_rxsync; + mna->up.nm_register = netmap_monitor_reg; + mna->up.nm_dtor = netmap_monitor_dtor; + mna->up.nm_krings_create = netmap_monitor_krings_create; + mna->up.nm_krings_delete = netmap_monitor_krings_delete; + mna->up.nm_mem = pna->nm_mem; + mna->up.na_lut = pna->na_lut; + mna->up.na_lut_objtotal = pna->na_lut_objtotal; + mna->up.na_lut_objsize = pna->na_lut_objsize; + + mna->up.num_tx_rings = 1; // XXX we don't need it, but field can't be zero + /* we set the number of our rx_rings to be max(num_rx_rings, num_rx_rings) + * in the parent + */ + mna->up.num_rx_rings = pna->num_rx_rings; + if (pna->num_tx_rings > pna->num_rx_rings) + mna->up.num_rx_rings = pna->num_tx_rings; + /* by default, the number of slots is the same as in + * the parent rings, but the user may ask for a different + * number + */ + mna->up.num_tx_desc = nmr->nr_tx_slots; + nm_bound_var(&mna->up.num_tx_desc, pna->num_tx_desc, + 1, NM_MONITOR_MAXSLOTS, NULL); + mna->up.num_rx_desc = nmr->nr_rx_slots; + nm_bound_var(&mna->up.num_rx_desc, pna->num_rx_desc, + 1, NM_MONITOR_MAXSLOTS, NULL); + error = netmap_attach_common(&mna->up); + if (error) { + D("attach_common error"); + goto release_out; + } + + /* remember the traffic directions we have to monitor */ + mna->flags = (nmr->nr_flags & (NR_MONITOR_TX | NR_MONITOR_RX)); + + *na = &mna->up; + netmap_adapter_get(*na); + + /* write the configuration back */ + nmr->nr_tx_rings = mna->up.num_tx_rings; + nmr->nr_rx_rings = mna->up.num_rx_rings; + nmr->nr_tx_slots = mna->up.num_tx_desc; + nmr->nr_rx_slots = mna->up.num_rx_desc; + + /* keep the reference to the parent */ + D("monitor ok"); + + return 0; + +release_out: + D("monitor error"); + for (i = mna->priv.np_txqfirst; i < mna->priv.np_txqlast; i++) { + if (pna->tx_rings[i].monitor == mna) + pna->tx_rings[i].monitor = NULL; + } + for (i = mna->priv.np_rxqfirst; i < mna->priv.np_rxqlast; i++) { + if (pna->rx_rings[i].monitor == mna) + pna->rx_rings[i].monitor = NULL; + } +put_out: + netmap_adapter_put(pna); + free(mna, M_DEVBUF); + return error; +} + + +#endif /* WITH_MONITOR */ diff --git a/sys/dev/netmap/netmap_offloadings.c b/sys/dev/netmap/netmap_offloadings.c index a776a24..34eafab 100644 --- a/sys/dev/netmap/netmap_offloadings.c +++ b/sys/dev/netmap/netmap_offloadings.c @@ -159,7 +159,7 @@ void bdg_mismatch_datapath(struct netmap_vp_adapter *na, src = ft_p->ft_buf; src_len = ft_p->ft_len; slot = &ring->slot[*j]; - dst = BDG_NMB(&dst_na->up, slot); + dst = NMB(&dst_na->up, slot); dst_len = src_len; /* We are processing the first input slot and there is a mismatch @@ -303,7 +303,7 @@ void bdg_mismatch_datapath(struct netmap_vp_adapter *na, /* Next destination slot. */ *j = nm_next(*j, lim); slot = &ring->slot[*j]; - dst = BDG_NMB(&dst_na->up, slot); + dst = NMB(&dst_na->up, slot); gso_bytes = 0; gso_idx++; @@ -365,7 +365,7 @@ void bdg_mismatch_datapath(struct netmap_vp_adapter *na, /* Next destination slot. */ *j = nm_next(*j, lim); slot = &ring->slot[*j]; - dst = BDG_NMB(&dst_na->up, slot); + dst = NMB(&dst_na->up, slot); /* Next source slot. */ ft_p++; diff --git a/sys/dev/netmap/netmap_pipe.c b/sys/dev/netmap/netmap_pipe.c index 9fcc4d2..bc998c0 100644 --- a/sys/dev/netmap/netmap_pipe.c +++ b/sys/dev/netmap/netmap_pipe.c @@ -126,7 +126,7 @@ void netmap_pipe_dealloc(struct netmap_adapter *na) { if (na->na_pipes) { - ND("freeing pipes for %s", NM_IFPNAME(na->ifp)); + ND("freeing pipes for %s", na->name); free(na->na_pipes, M_DEVBUF); na->na_pipes = NULL; na->na_max_pipes = 0; @@ -155,7 +155,7 @@ static int netmap_pipe_add(struct netmap_adapter *parent, struct netmap_pipe_adapter *na) { if (parent->na_next_pipe >= parent->na_max_pipes) { - D("%s: no space left for pipes", NM_IFPNAME(parent->ifp)); + D("%s: no space left for pipes", parent->name); return ENOMEM; } @@ -179,10 +179,9 @@ netmap_pipe_remove(struct netmap_adapter *parent, struct netmap_pipe_adapter *na } static int -netmap_pipe_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) +netmap_pipe_txsync(struct netmap_kring *txkring, int flags) { - struct netmap_kring *txkring = na->tx_rings + ring_nr, - *rxkring = txkring->pipe; + struct netmap_kring *rxkring = txkring->pipe; u_int limit; /* slots to transfer */ u_int j, k, lim_tx = txkring->nkr_num_slots - 1, lim_rx = rxkring->nkr_num_slots - 1; @@ -245,10 +244,9 @@ netmap_pipe_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) } static int -netmap_pipe_rxsync(struct netmap_adapter *na, u_int ring_nr, int flags) +netmap_pipe_rxsync(struct netmap_kring *rxkring, int flags) { - struct netmap_kring *rxkring = na->rx_rings + ring_nr, - *txkring = rxkring->pipe; + struct netmap_kring *txkring = rxkring->pipe; uint32_t oldhwcur = rxkring->nr_hwcur; ND("%s %x <- %s", rxkring->name, flags, txkring->name); @@ -425,12 +423,11 @@ netmap_pipe_reg(struct netmap_adapter *na, int onoff) { struct netmap_pipe_adapter *pna = (struct netmap_pipe_adapter *)na; - struct ifnet *ifp = na->ifp; ND("%p: onoff %d", na, onoff); if (onoff) { - ifp->if_capenable |= IFCAP_NETMAP; + na->na_flags |= NAF_NETMAP_ON; } else { - ifp->if_capenable &= ~IFCAP_NETMAP; + na->na_flags &= ~NAF_NETMAP_ON; } if (pna->peer_ref) { ND("%p: case 1.a or 2.a, nothing to do", na); @@ -522,8 +519,6 @@ netmap_pipe_dtor(struct netmap_adapter *na) if (pna->role == NR_REG_PIPE_MASTER) netmap_pipe_remove(pna->parent, pna); netmap_adapter_put(pna->parent); - free(na->ifp, M_DEVBUF); - na->ifp = NULL; pna->parent = NULL; } @@ -533,7 +528,6 @@ netmap_get_pipe_na(struct nmreq *nmr, struct netmap_adapter **na, int create) struct nmreq pnmr; struct netmap_adapter *pna; /* parent adapter */ struct netmap_pipe_adapter *mna, *sna, *req; - struct ifnet *ifp, *ifp2; u_int pipe_id; int role = nmr->nr_flags & NR_REG_MASK; int error; @@ -556,7 +550,7 @@ netmap_get_pipe_na(struct nmreq *nmr, struct netmap_adapter **na, int create) ND("parent lookup failed: %d", error); return error; } - ND("found parent: %s", NM_IFPNAME(pna->ifp)); + ND("found parent: %s", na->name); if (NETMAP_OWNED_BY_KERN(pna)) { ND("parent busy"); @@ -591,19 +585,12 @@ netmap_get_pipe_na(struct nmreq *nmr, struct netmap_adapter **na, int create) * The endpoint we were asked for holds a reference to * the other one. */ - ifp = malloc(sizeof(*ifp), M_DEVBUF, M_NOWAIT | M_ZERO); - if (!ifp) { - error = ENOMEM; - goto put_out; - } - strcpy(ifp->if_xname, NM_IFPNAME(pna->ifp)); - mna = malloc(sizeof(*mna), M_DEVBUF, M_NOWAIT | M_ZERO); if (mna == NULL) { error = ENOMEM; - goto free_ifp; + goto put_out; } - mna->up.ifp = ifp; + snprintf(mna->up.name, sizeof(mna->up.name), "%s{%d", pna->name, pipe_id); mna->id = pipe_id; mna->role = NR_REG_PIPE_MASTER; @@ -618,6 +605,7 @@ netmap_get_pipe_na(struct nmreq *nmr, struct netmap_adapter **na, int create) mna->up.nm_mem = pna->nm_mem; mna->up.na_lut = pna->na_lut; mna->up.na_lut_objtotal = pna->na_lut_objtotal; + mna->up.na_lut_objsize = pna->na_lut_objsize; mna->up.num_tx_rings = 1; mna->up.num_rx_rings = 1; @@ -629,28 +617,21 @@ netmap_get_pipe_na(struct nmreq *nmr, struct netmap_adapter **na, int create) 1, NM_PIPE_MAXSLOTS, NULL); error = netmap_attach_common(&mna->up); if (error) - goto free_ifp; + goto free_mna; /* register the master with the parent */ error = netmap_pipe_add(pna, mna); if (error) goto free_mna; /* create the slave */ - ifp2 = malloc(sizeof(*ifp), M_DEVBUF, M_NOWAIT | M_ZERO); - if (!ifp) { - error = ENOMEM; - goto free_mna; - } - strcpy(ifp2->if_xname, NM_IFPNAME(pna->ifp)); - sna = malloc(sizeof(*mna), M_DEVBUF, M_NOWAIT | M_ZERO); if (sna == NULL) { error = ENOMEM; - goto free_ifp2; + goto free_mna; } /* most fields are the same, copy from master and then fix */ *sna = *mna; - sna->up.ifp = ifp2; + snprintf(sna->up.name, sizeof(sna->up.name), "%s}%d", pna->name, pipe_id); sna->role = NR_REG_PIPE_SLAVE; error = netmap_attach_common(&sna->up); if (error) @@ -696,12 +677,8 @@ found: free_sna: free(sna, M_DEVBUF); -free_ifp2: - free(ifp2, M_DEVBUF); free_mna: free(mna, M_DEVBUF); -free_ifp: - free(ifp, M_DEVBUF); put_out: netmap_adapter_put(pna); return error; diff --git a/sys/dev/netmap/netmap_vale.c b/sys/dev/netmap/netmap_vale.c index 8e309e9..6b1fe1f 100644 --- a/sys/dev/netmap/netmap_vale.c +++ b/sys/dev/netmap/netmap_vale.c @@ -157,11 +157,9 @@ SYSCTL_DECL(_dev_netmap); SYSCTL_INT(_dev_netmap, OID_AUTO, bridge_batch, CTLFLAG_RW, &bridge_batch, 0 , ""); -static int bdg_netmap_attach(struct nmreq *nmr, struct ifnet *ifp); -static int bdg_netmap_reg(struct netmap_adapter *na, int onoff); -static int netmap_bwrap_attach(struct ifnet *, struct ifnet *); +static int netmap_vp_create(struct nmreq *, struct ifnet *, struct netmap_vp_adapter **); +static int netmap_vp_reg(struct netmap_adapter *na, int onoff); static int netmap_bwrap_register(struct netmap_adapter *, int onoff); -int kern_netmap_regif(struct nmreq *nmr); /* * For each output interface, nm_bdg_q is used to construct a list. @@ -217,7 +215,7 @@ struct nm_bridge { * different ring index. * This function must be set by netmap_bdgctl(). */ - bdg_lookup_fn_t nm_bdg_lookup; + struct netmap_bdg_ops bdg_ops; /* the forwarding table, MAC+ports. * XXX should be changed to an argument to be passed to @@ -226,6 +224,15 @@ struct nm_bridge { struct nm_hash_ent ht[NM_BDG_HASH]; }; +const char* +netmap_bdg_name(struct netmap_vp_adapter *vp) +{ + struct nm_bridge *b = vp->na_bdg; + if (b == NULL) + return NULL; + return b->bdg_basename; +} + /* * XXX in principle nm_bridges could be created dynamically @@ -321,7 +328,7 @@ nm_find_bridge(const char *name, int create) for (i = 0; i < NM_BDG_MAXPORTS; i++) b->bdg_port_index[i] = i; /* set the default function */ - b->nm_bdg_lookup = netmap_bdg_learning; + b->bdg_ops.lookup = netmap_bdg_learning; /* reset the MAC address table */ bzero(b->ht, sizeof(struct nm_hash_ent) * NM_BDG_HASH); } @@ -389,6 +396,9 @@ nm_alloc_bdgfwd(struct netmap_adapter *na) } +/* remove from bridge b the ports in slots hw and sw + * (sw can be -1 if not needed) + */ static void netmap_bdg_detach_common(struct nm_bridge *b, int hw, int sw) { @@ -434,6 +444,8 @@ netmap_bdg_detach_common(struct nm_bridge *b, int hw, int sw) } BDG_WLOCK(b); + if (b->bdg_ops.dtor) + b->bdg_ops.dtor(b->bdg_ports[s_hw]); b->bdg_ports[s_hw] = NULL; if (s_sw >= 0) { b->bdg_ports[s_sw] = NULL; @@ -445,29 +457,131 @@ netmap_bdg_detach_common(struct nm_bridge *b, int hw, int sw) ND("now %d active ports", lim); if (lim == 0) { ND("marking bridge %s as free", b->bdg_basename); - b->nm_bdg_lookup = NULL; + bzero(&b->bdg_ops, sizeof(b->bdg_ops)); } } +/* nm_bdg_ctl callback for VALE ports */ +static int +netmap_vp_bdg_ctl(struct netmap_adapter *na, struct nmreq *nmr, int attach) +{ + struct netmap_vp_adapter *vpna = (struct netmap_vp_adapter *)na; + struct nm_bridge *b = vpna->na_bdg; + + if (attach) + return 0; /* nothing to do */ + if (b) { + netmap_set_all_rings(na, 0 /* disable */); + netmap_bdg_detach_common(b, vpna->bdg_port, -1); + vpna->na_bdg = NULL; + netmap_set_all_rings(na, 1 /* enable */); + } + /* I have took reference just for attach */ + netmap_adapter_put(na); + return 0; +} +/* nm_dtor callback for ephemeral VALE ports */ static void -netmap_adapter_vp_dtor(struct netmap_adapter *na) +netmap_vp_dtor(struct netmap_adapter *na) { struct netmap_vp_adapter *vpna = (struct netmap_vp_adapter*)na; struct nm_bridge *b = vpna->na_bdg; - struct ifnet *ifp = na->ifp; - ND("%s has %d references", NM_IFPNAME(ifp), na->na_refcount); + ND("%s has %d references", na->name, na->na_refcount); if (b) { netmap_bdg_detach_common(b, vpna->bdg_port, -1); } +} - bzero(ifp, sizeof(*ifp)); - free(ifp, M_DEVBUF); +/* nm_dtor callback for persistent VALE ports */ +static void +netmap_persist_vp_dtor(struct netmap_adapter *na) +{ + struct ifnet *ifp = na->ifp; + + netmap_vp_dtor(na); na->ifp = NULL; + nm_vi_detach(ifp); +} + +/* remove a persistent VALE port from the system */ +static int +nm_vi_destroy(const char *name) +{ + struct ifnet *ifp; + int error; + + ifp = ifunit_ref(name); + if (!ifp) + return ENXIO; + NMG_LOCK(); + /* make sure this is actually a VALE port */ + if (!NETMAP_CAPABLE(ifp) || NA(ifp)->nm_register != netmap_vp_reg) { + error = EINVAL; + goto err; + } + + if (NA(ifp)->na_refcount > 1) { + error = EBUSY; + goto err; + } + NMG_UNLOCK(); + + D("destroying a persistent vale interface %s", ifp->if_xname); + /* Linux requires all the references are released + * before unregister + */ + if_rele(ifp); + netmap_detach(ifp); + return 0; + +err: + NMG_UNLOCK(); + if_rele(ifp); + return error; } +/* + * Create a virtual interface registered to the system. + * The interface will be attached to a bridge later. + */ +static int +nm_vi_create(struct nmreq *nmr) +{ + struct ifnet *ifp; + struct netmap_vp_adapter *vpna; + int error; + + /* don't include VALE prefix */ + if (!strncmp(nmr->nr_name, NM_NAME, strlen(NM_NAME))) + return EINVAL; + ifp = ifunit_ref(nmr->nr_name); + if (ifp) { /* already exist, cannot create new one */ + if_rele(ifp); + return EEXIST; + } + error = nm_vi_persist(nmr->nr_name, &ifp); + if (error) + return error; + + NMG_LOCK(); + /* netmap_vp_create creates a struct netmap_vp_adapter */ + error = netmap_vp_create(nmr, ifp, &vpna); + if (error) { + D("error %d", error); + nm_vi_detach(ifp); + return error; + } + /* persist-specific routines */ + vpna->up.nm_bdg_ctl = netmap_vp_bdg_ctl; + vpna->up.nm_dtor = netmap_persist_vp_dtor; + netmap_adapter_get(&vpna->up); + NMG_UNLOCK(); + D("created %s", ifp->if_xname); + return 0; +} /* Try to get a reference to a netmap adapter attached to a VALE switch. * If the adapter is found (or is created), this function returns 0, a @@ -481,11 +595,11 @@ netmap_adapter_vp_dtor(struct netmap_adapter *na) int netmap_get_bdg_na(struct nmreq *nmr, struct netmap_adapter **na, int create) { - const char *name = nmr->nr_name; + char *nr_name = nmr->nr_name; + const char *ifname; struct ifnet *ifp; int error = 0; - struct netmap_adapter *ret; - struct netmap_vp_adapter *vpna; + struct netmap_vp_adapter *vpna, *hostna = NULL; struct nm_bridge *b; int i, j, cand = -1, cand2 = -1; int needed; @@ -494,15 +608,17 @@ netmap_get_bdg_na(struct nmreq *nmr, struct netmap_adapter **na, int create) /* first try to see if this is a bridge port. */ NMG_LOCK_ASSERT(); - if (strncmp(name, NM_NAME, sizeof(NM_NAME) - 1)) { + if (strncmp(nr_name, NM_NAME, sizeof(NM_NAME) - 1)) { return 0; /* no error, but no VALE prefix */ } - b = nm_find_bridge(name, create); + b = nm_find_bridge(nr_name, create); if (b == NULL) { - D("no bridges available for '%s'", name); + D("no bridges available for '%s'", nr_name); return (create ? ENOMEM : ENXIO); } + if (strlen(nr_name) < b->bdg_namelen) /* impossible */ + panic("x"); /* Now we are sure that name starts with the bridge's name, * lookup the port in the bridge. We need to scan the entire @@ -516,13 +632,11 @@ netmap_get_bdg_na(struct nmreq *nmr, struct netmap_adapter **na, int create) i = b->bdg_port_index[j]; vpna = b->bdg_ports[i]; // KASSERT(na != NULL); - ifp = vpna->up.ifp; - /* XXX make sure the name only contains one : */ - if (!strcmp(NM_IFPNAME(ifp), name)) { + D("checking %s", vpna->up.name); + if (!strcmp(vpna->up.name, nr_name)) { netmap_adapter_get(&vpna->up); - ND("found existing if %s refs %d", name, - vpna->na_bdg_refcount); - *na = (struct netmap_adapter *)vpna; + ND("found existing if %s refs %d", nr_name) + *na = &vpna->up; return 0; } } @@ -539,68 +653,50 @@ netmap_get_bdg_na(struct nmreq *nmr, struct netmap_adapter **na, int create) cand = b->bdg_port_index[b->bdg_active_ports]; cand2 = b->bdg_port_index[b->bdg_active_ports + 1]; ND("+++ bridge %s port %s used %d avail %d %d", - b->bdg_basename, name, b->bdg_active_ports, cand, cand2); + b->bdg_basename, ifname, b->bdg_active_ports, cand, cand2); /* * try see if there is a matching NIC with this name * (after the bridge's name) */ - ifp = ifunit_ref(name + b->bdg_namelen + 1); - if (!ifp) { /* this is a virtual port */ + ifname = nr_name + b->bdg_namelen + 1; + ifp = ifunit_ref(ifname); + if (!ifp) { + /* Create an ephemeral virtual port + * This block contains all the ephemeral-specific logics + */ if (nmr->nr_cmd) { /* nr_cmd must be 0 for a virtual port */ return EINVAL; } - /* create a struct ifnet for the new port. - * need M_NOWAIT as we are under nma_lock - */ - ifp = malloc(sizeof(*ifp), M_DEVBUF, M_NOWAIT | M_ZERO); - if (!ifp) - return ENOMEM; - - strcpy(ifp->if_xname, name); /* bdg_netmap_attach creates a struct netmap_adapter */ - error = bdg_netmap_attach(nmr, ifp); + error = netmap_vp_create(nmr, NULL, &vpna); if (error) { D("error %d", error); free(ifp, M_DEVBUF); return error; } - ret = NA(ifp); - cand2 = -1; /* only need one port */ - } else { /* this is a NIC */ - struct ifnet *fake_ifp; + /* shortcut - we can skip get_hw_na(), + * ownership check and nm_bdg_attach() + */ + } else { + struct netmap_adapter *hw; - error = netmap_get_hw_na(ifp, &ret); - if (error || ret == NULL) + error = netmap_get_hw_na(ifp, &hw); + if (error || hw == NULL) goto out; - /* make sure the NIC is not already in use */ - if (NETMAP_OWNED_BY_ANY(ret)) { - D("NIC %s busy, cannot attach to bridge", - NM_IFPNAME(ifp)); - error = EBUSY; - goto out; - } - /* create a fake interface */ - fake_ifp = malloc(sizeof(*ifp), M_DEVBUF, M_NOWAIT | M_ZERO); - if (!fake_ifp) { - error = ENOMEM; - goto out; - } - strcpy(fake_ifp->if_xname, name); - error = netmap_bwrap_attach(fake_ifp, ifp); - if (error) { - free(fake_ifp, M_DEVBUF); + /* host adapter might not be created */ + error = hw->nm_bdg_attach(nr_name, hw); + if (error) goto out; - } - ret = NA(fake_ifp); - if (nmr->nr_arg1 != NETMAP_BDG_HOST) - cand2 = -1; /* only need one port */ + vpna = hw->na_vp; + hostna = hw->na_hostvp; if_rele(ifp); + if (nmr->nr_arg1 != NETMAP_BDG_HOST) + hostna = NULL; } - vpna = (struct netmap_vp_adapter *)ret; BDG_WLOCK(b); vpna->bdg_port = cand; @@ -609,8 +705,7 @@ netmap_get_bdg_na(struct nmreq *nmr, struct netmap_adapter **na, int create) b->bdg_ports[cand] = vpna; vpna->na_bdg = b; b->bdg_active_ports++; - if (cand2 >= 0) { - struct netmap_vp_adapter *hostna = vpna + 1; + if (hostna != NULL) { /* also bind the host stack to the bridge */ b->bdg_ports[cand2] = hostna; hostna->bdg_port = cand2; @@ -618,10 +713,10 @@ netmap_get_bdg_na(struct nmreq *nmr, struct netmap_adapter **na, int create) b->bdg_active_ports++; ND("host %p to bridge port %d", hostna, cand2); } - ND("if %s refs %d", name, vpna->up.na_refcount); + ND("if %s refs %d", ifname, vpna->up.na_refcount); BDG_WUNLOCK(b); - *na = ret; - netmap_adapter_get(ret); + *na = &vpna->up; + netmap_adapter_get(*na); return 0; out: @@ -631,24 +726,17 @@ out: } -/* Process NETMAP_BDG_ATTACH and NETMAP_BDG_DETACH */ +/* Process NETMAP_BDG_ATTACH */ static int -nm_bdg_attach(struct nmreq *nmr) +nm_bdg_ctl_attach(struct nmreq *nmr) { struct netmap_adapter *na; - struct netmap_if *nifp; - struct netmap_priv_d *npriv; - struct netmap_bwrap_adapter *bna; int error; - npriv = malloc(sizeof(*npriv), M_DEVBUF, M_NOWAIT|M_ZERO); - if (npriv == NULL) - return ENOMEM; - NMG_LOCK(); error = netmap_get_bdg_na(nmr, &na, 1 /* create if not exists */); - if (error) /* no device, or another bridge or user owns the device */ + if (error) /* no device */ goto unlock_exit; if (na == NULL) { /* VALE prefix missing */ @@ -656,39 +744,37 @@ nm_bdg_attach(struct nmreq *nmr) goto unlock_exit; } - if (na->active_fds > 0) { /* already registered */ + if (NETMAP_OWNED_BY_ANY(na)) { error = EBUSY; goto unref_exit; } - nifp = netmap_do_regif(npriv, na, nmr->nr_ringid, nmr->nr_flags, &error); - if (!nifp) { - goto unref_exit; + if (na->nm_bdg_ctl) { + /* nop for VALE ports. The bwrap needs to put the hwna + * in netmap mode (see netmap_bwrap_bdg_ctl) + */ + error = na->nm_bdg_ctl(na, nmr, 1); + if (error) + goto unref_exit; + ND("registered %s to netmap-mode", na->name); } - - bna = (struct netmap_bwrap_adapter*)na; - bna->na_kpriv = npriv; NMG_UNLOCK(); - ND("registered %s to netmap-mode", NM_IFPNAME(na->ifp)); return 0; unref_exit: netmap_adapter_put(na); unlock_exit: NMG_UNLOCK(); - bzero(npriv, sizeof(*npriv)); - free(npriv, M_DEVBUF); return error; } +/* process NETMAP_BDG_DETACH */ static int -nm_bdg_detach(struct nmreq *nmr) +nm_bdg_ctl_detach(struct nmreq *nmr) { struct netmap_adapter *na; int error; - struct netmap_bwrap_adapter *bna; - int last_instance; NMG_LOCK(); error = netmap_get_bdg_na(nmr, &na, 0 /* don't create */); @@ -701,28 +787,13 @@ nm_bdg_detach(struct nmreq *nmr) goto unlock_exit; } - bna = (struct netmap_bwrap_adapter *)na; - - if (na->active_fds == 0) { /* not registered */ - error = EINVAL; - goto unref_exit; - } - - last_instance = netmap_dtor_locked(bna->na_kpriv); /* unregister */ - if (!last_instance) { - D("--- error, trying to detach an entry with active mmaps"); - error = EINVAL; - } else { - struct netmap_priv_d *npriv = bna->na_kpriv; - - bna->na_kpriv = NULL; - D("deleting priv"); - - bzero(npriv, sizeof(*npriv)); - free(npriv, M_DEVBUF); + if (na->nm_bdg_ctl) { + /* remove the port from bridge. The bwrap + * also needs to put the hwna in normal mode + */ + error = na->nm_bdg_ctl(na, nmr, 0); } -unref_exit: netmap_adapter_put(na); unlock_exit: NMG_UNLOCK(); @@ -731,28 +802,39 @@ unlock_exit: } -/* exported to kernel callers, e.g. OVS ? - * Entry point. +/* Called by either user's context (netmap_ioctl()) + * or external kernel modules (e.g., Openvswitch). + * Operation is indicated in nmr->nr_cmd. + * NETMAP_BDG_OPS that sets configure/lookup/dtor functions to the bridge + * requires bdg_ops argument; the other commands ignore this argument. + * * Called without NMG_LOCK. */ int -netmap_bdg_ctl(struct nmreq *nmr, bdg_lookup_fn_t func) +netmap_bdg_ctl(struct nmreq *nmr, struct netmap_bdg_ops *bdg_ops) { struct nm_bridge *b; struct netmap_adapter *na; struct netmap_vp_adapter *vpna; - struct ifnet *iter; char *name = nmr->nr_name; int cmd = nmr->nr_cmd, namelen = strlen(name); int error = 0, i, j; switch (cmd) { + case NETMAP_BDG_NEWIF: + error = nm_vi_create(nmr); + break; + + case NETMAP_BDG_DELIF: + error = nm_vi_destroy(nmr->nr_name); + break; + case NETMAP_BDG_ATTACH: - error = nm_bdg_attach(nmr); + error = nm_bdg_ctl_attach(nmr); break; case NETMAP_BDG_DETACH: - error = nm_bdg_detach(nmr); + error = nm_bdg_ctl_detach(nmr); break; case NETMAP_BDG_LIST: @@ -770,6 +852,7 @@ netmap_bdg_ctl(struct nmreq *nmr, bdg_lookup_fn_t func) break; } + name = name + b->bdg_namelen + 1; error = ENOENT; for (j = 0; j < b->bdg_active_ports; j++) { i = b->bdg_port_index[j]; @@ -778,11 +861,10 @@ netmap_bdg_ctl(struct nmreq *nmr, bdg_lookup_fn_t func) D("---AAAAAAAAARGH-------"); continue; } - iter = vpna->up.ifp; /* the former and the latter identify a * virtual port and a NIC, respectively */ - if (!strcmp(iter->if_xname, name)) { + if (!strcmp(vpna->up.name, name)) { /* bridge index */ nmr->nr_arg1 = b - nm_bridges; nmr->nr_arg2 = i; /* port index */ @@ -813,8 +895,7 @@ netmap_bdg_ctl(struct nmreq *nmr, bdg_lookup_fn_t func) nmr->nr_arg2 = j; j = b->bdg_port_index[j]; vpna = b->bdg_ports[j]; - iter = vpna->up.ifp; - strncpy(name, iter->if_xname, (size_t)IFNAMSIZ); + strncpy(name, vpna->up.name, (size_t)IFNAMSIZ); error = 0; break; } @@ -822,12 +903,12 @@ netmap_bdg_ctl(struct nmreq *nmr, bdg_lookup_fn_t func) } break; - case NETMAP_BDG_LOOKUP_REG: - /* register a lookup function to the given bridge. + case NETMAP_BDG_REGOPS: /* XXX this should not be available from userspace */ + /* register callbacks to the given bridge. * nmr->nr_name may be just bridge's name (including ':' * if it is not just NM_NAME). */ - if (!func) { + if (!bdg_ops) { error = EINVAL; break; } @@ -836,7 +917,7 @@ netmap_bdg_ctl(struct nmreq *nmr, bdg_lookup_fn_t func) if (!b) { error = EINVAL; } else { - b->nm_bdg_lookup = func; + b->bdg_ops = *bdg_ops; } NMG_UNLOCK(); break; @@ -856,7 +937,7 @@ netmap_bdg_ctl(struct nmreq *nmr, bdg_lookup_fn_t func) vpna = (struct netmap_vp_adapter *)na; vpna->virt_hdr_len = nmr->nr_arg1; if (vpna->virt_hdr_len) - vpna->mfs = NETMAP_BDG_BUF_SIZE(na->nm_mem); + vpna->mfs = NETMAP_BUF_SIZE(na); D("Using vnet_hdr_len %d for %p", vpna->virt_hdr_len, vpna); netmap_adapter_put(na); } @@ -871,6 +952,32 @@ netmap_bdg_ctl(struct nmreq *nmr, bdg_lookup_fn_t func) return error; } +int +netmap_bdg_config(struct nmreq *nmr) +{ + struct nm_bridge *b; + int error = EINVAL; + + NMG_LOCK(); + b = nm_find_bridge(nmr->nr_name, 0); + if (!b) { + NMG_UNLOCK(); + return error; + } + NMG_UNLOCK(); + /* Don't call config() with NMG_LOCK() held */ + BDG_RLOCK(b); + if (b->bdg_ops.config != NULL) + error = b->bdg_ops.config((struct nm_ifreq *)nmr); + BDG_RUNLOCK(b); + return error; +} + + +/* nm_krings_create callback for VALE ports. + * Calls the standard netmap_krings_create, then adds leases on rx + * rings and bdgfwd on tx rings. + */ static int netmap_vp_krings_create(struct netmap_adapter *na) { @@ -905,6 +1012,7 @@ netmap_vp_krings_create(struct netmap_adapter *na) } +/* nm_krings_delete callback for VALE ports. */ static void netmap_vp_krings_delete(struct netmap_adapter *na) { @@ -919,17 +1027,20 @@ nm_bdg_flush(struct nm_bdg_fwd *ft, u_int n, /* + * main dispatch routine for the bridge. * Grab packets from a kring, move them into the ft structure * associated to the tx (input) port. Max one instance per port, * filtered on input (ioctl, poll or XXX). * Returns the next position in the ring. */ static int -nm_bdg_preflush(struct netmap_vp_adapter *na, u_int ring_nr, - struct netmap_kring *kring, u_int end) +nm_bdg_preflush(struct netmap_kring *kring, u_int end) { + struct netmap_vp_adapter *na = + (struct netmap_vp_adapter*)kring->na; struct netmap_ring *ring = kring->ring; struct nm_bdg_fwd *ft; + u_int ring_nr = kring->ring_id; u_int j = kring->nr_hwcur, lim = kring->nkr_num_slots - 1; u_int ft_i = 0; /* start from 0 */ u_int frags = 1; /* how many frags ? */ @@ -958,12 +1069,12 @@ nm_bdg_preflush(struct netmap_vp_adapter *na, u_int ring_nr, /* this slot goes into a list so initialize the link field */ ft[ft_i].ft_next = NM_FT_NULL; buf = ft[ft_i].ft_buf = (slot->flags & NS_INDIRECT) ? - (void *)(uintptr_t)slot->ptr : BDG_NMB(&na->up, slot); + (void *)(uintptr_t)slot->ptr : NMB(&na->up, slot); if (unlikely(buf == NULL)) { RD(5, "NULL %s buffer pointer from %s slot %d len %d", (slot->flags & NS_INDIRECT) ? "INDIRECT" : "DIRECT", kring->name, j, ft[ft_i].ft_len); - buf = ft[ft_i].ft_buf = NMB_VA(0); /* the 'null' buffer */ + buf = ft[ft_i].ft_buf = NETMAP_BUF_BASE(&na->up); ft[ft_i].ft_len = 0; ft[ft_i].ft_flags = 0; } @@ -1035,23 +1146,28 @@ nm_bridge_rthash(const uint8_t *addr) #undef mix +/* nm_register callback for VALE ports */ static int -bdg_netmap_reg(struct netmap_adapter *na, int onoff) +netmap_vp_reg(struct netmap_adapter *na, int onoff) { struct netmap_vp_adapter *vpna = (struct netmap_vp_adapter*)na; - struct ifnet *ifp = na->ifp; - /* the interface is already attached to the bridge, - * so we only need to toggle IFCAP_NETMAP. + /* persistent ports may be put in netmap mode + * before being attached to a bridge */ - BDG_WLOCK(vpna->na_bdg); + if (vpna->na_bdg) + BDG_WLOCK(vpna->na_bdg); if (onoff) { - ifp->if_capenable |= IFCAP_NETMAP; + na->na_flags |= NAF_NETMAP_ON; + /* XXX on FreeBSD, persistent VALE ports should also + * toggle IFCAP_NETMAP in na->ifp (2014-03-16) + */ } else { - ifp->if_capenable &= ~IFCAP_NETMAP; + na->na_flags &= ~NAF_NETMAP_ON; } - BDG_WUNLOCK(vpna->na_bdg); + if (vpna->na_bdg) + BDG_WUNLOCK(vpna->na_bdg); return 0; } @@ -1063,16 +1179,28 @@ bdg_netmap_reg(struct netmap_adapter *na, int onoff) * ring in *dst_ring (at the moment, always use ring 0) */ u_int -netmap_bdg_learning(char *buf, u_int buf_len, uint8_t *dst_ring, - struct netmap_vp_adapter *na) +netmap_bdg_learning(struct nm_bdg_fwd *ft, uint8_t *dst_ring, + const struct netmap_vp_adapter *na) { + uint8_t *buf = ft->ft_buf; + u_int buf_len = ft->ft_len; struct nm_hash_ent *ht = na->na_bdg->ht; uint32_t sh, dh; u_int dst, mysrc = na->bdg_port; uint64_t smac, dmac; - if (buf_len < 14) { - RD(5, "invalid buf length %d", buf_len); + /* safety check, unfortunately we have many cases */ + if (buf_len >= 14 + na->virt_hdr_len) { + /* virthdr + mac_hdr in the same slot */ + buf += na->virt_hdr_len; + buf_len -= na->virt_hdr_len; + } else if (buf_len == na->virt_hdr_len && ft->ft_flags & NS_MOREFRAG) { + /* only header in first fragment */ + ft++; + buf = ft->ft_buf; + buf_len = ft->ft_len; + } else { + RD(5, "invalid buf format, length %d", buf_len); return NM_BDG_NOPORT; } dmac = le64toh(*(uint64_t *)(buf)) & 0xffffffffffff; @@ -1170,7 +1298,7 @@ nm_kr_lease(struct netmap_kring *k, u_int n, int is_rx) k->nr_hwtail >= k->nkr_num_slots || k->nkr_lease_idx >= k->nkr_num_slots) { D("invalid kring %s, cur %d tail %d lease %d lease_idx %d lim %d", - k->na->ifp->if_xname, + k->na->name, k->nr_hwcur, k->nr_hwtail, k->nkr_hwlease, k->nkr_lease_idx, k->nkr_num_slots); } @@ -1178,6 +1306,7 @@ nm_kr_lease(struct netmap_kring *k, u_int n, int is_rx) } /* + * * This flush routine supports only unicast and broadcast but a large * number of ports, and lets us replace the learn and dispatch functions. */ @@ -1204,22 +1333,13 @@ nm_bdg_flush(struct nm_bdg_fwd *ft, u_int n, struct netmap_vp_adapter *na, uint8_t dst_ring = ring_nr; /* default, same ring as origin */ uint16_t dst_port, d_i; struct nm_bdg_q *d; - uint8_t *buf = ft[i].ft_buf; - u_int len = ft[i].ft_len; ND("slot %d frags %d", i, ft[i].ft_frags); /* Drop the packet if the virtio-net header is not into the first fragment nor at the very beginning of the second. */ - if (unlikely(na->virt_hdr_len > len)) + if (unlikely(na->virt_hdr_len > ft[i].ft_len)) continue; - if (len == na->virt_hdr_len) { - buf = ft[i+1].ft_buf; - len = ft[i+1].ft_len; - } else { - buf += na->virt_hdr_len; - len -= na->virt_hdr_len; - } - dst_port = b->nm_bdg_lookup(buf, len, &dst_ring, na); + dst_port = b->bdg_ops.lookup(&ft[i], &dst_ring, na); if (netmap_verbose > 255) RD(5, "slot %d port %d -> %d", i, me, dst_port); if (dst_port == NM_BDG_NOPORT) @@ -1270,9 +1390,8 @@ nm_bdg_flush(struct nm_bdg_fwd *ft, u_int n, struct netmap_vp_adapter *na, } ND(5, "pass 1 done %d pkts %d dsts", n, num_dsts); - /* second pass: scan destinations (XXX will be modular somehow) */ + /* second pass: scan destinations */ for (i = 0; i < num_dsts; i++) { - struct ifnet *dst_ifp; struct netmap_vp_adapter *dst_na; struct netmap_kring *kring; struct netmap_ring *ring; @@ -1296,13 +1415,12 @@ nm_bdg_flush(struct nm_bdg_fwd *ft, u_int n, struct netmap_vp_adapter *na, goto cleanup; if (dst_na->up.na_flags & NAF_SW_ONLY) goto cleanup; - dst_ifp = dst_na->up.ifp; /* * The interface may be in !netmap mode in two cases: * - when na is attached but not activated yet; * - when na is being deactivated but is still attached. */ - if (unlikely(!(dst_ifp->if_capenable & IFCAP_NETMAP))) { + if (unlikely(!nm_netmap_on(&dst_na->up))) { ND("not in netmap mode!"); goto cleanup; } @@ -1320,7 +1438,7 @@ nm_bdg_flush(struct nm_bdg_fwd *ft, u_int n, struct netmap_vp_adapter *na, needed = d->bq_len + brddst->bq_len; if (unlikely(dst_na->virt_hdr_len != na->virt_hdr_len)) { - RD(3, "virt_hdr_mismatch, src %d len %d", na->virt_hdr_len, dst_na->virt_hdr_len); + RD(3, "virt_hdr_mismatch, src %d dst %d", na->virt_hdr_len, dst_na->virt_hdr_len); /* There is a virtio-net header/offloadings mismatch between * source and destination. The slower mismatch datapath will * be used to cope with all the mismatches. @@ -1358,6 +1476,10 @@ retry: if (dst_na->retry && retry) { /* try to get some free slot from the previous run */ dst_na->up.nm_notify(&dst_na->up, dst_nr, NR_RX, 0); + /* actually useful only for bwraps, since there + * the notify will trigger a txsync on the hwna. VALE ports + * have dst_na->retry == 0 + */ } /* reserve the buffers in the queue and an entry * to report completion, and drop lock. @@ -1413,7 +1535,7 @@ retry: size_t copy_len = ft_p->ft_len, dst_len = copy_len; slot = &ring->slot[j]; - dst = BDG_NMB(&dst_na->up, slot); + dst = NMB(&dst_na->up, slot); ND("send [%d] %d(%d) bytes at %s:%d", i, (int)copy_len, (int)dst_len, @@ -1421,8 +1543,8 @@ retry: /* round to a multiple of 64 */ copy_len = (copy_len + 63) & ~63; - if (unlikely(copy_len > NETMAP_BUF_SIZE || - copy_len > NETMAP_BUF_SIZE)) { + if (unlikely(copy_len > NETMAP_BUF_SIZE(&dst_na->up) || + copy_len > NETMAP_BUF_SIZE(&na->up))) { RD(5, "invalid len %d, down to 64", (int)copy_len); copy_len = dst_len = 64; // XXX } @@ -1495,8 +1617,16 @@ retry: still_locked = 0; mtx_unlock(&kring->q_lock); dst_na->up.nm_notify(&dst_na->up, dst_nr, NR_RX, 0); - if (dst_na->retry && retry--) + /* this is netmap_notify for VALE ports and + * netmap_bwrap_notify for bwrap. The latter will + * trigger a txsync on the underlying hwna + */ + if (dst_na->retry && retry--) { + /* XXX this is going to call nm_notify again. + * Only useful for bwrap in virtual machines + */ goto retry; + } } } if (still_locked) @@ -1511,11 +1641,12 @@ cleanup: return 0; } - +/* nm_txsync callback for VALE ports */ static int -netmap_vp_txsync(struct netmap_vp_adapter *na, u_int ring_nr, int flags) +netmap_vp_txsync(struct netmap_kring *kring, int flags) { - struct netmap_kring *kring = &na->up.tx_rings[ring_nr]; + struct netmap_vp_adapter *na = + (struct netmap_vp_adapter *)kring->na; u_int done; u_int const lim = kring->nkr_num_slots - 1; u_int const cur = kring->rcur; @@ -1524,10 +1655,14 @@ netmap_vp_txsync(struct netmap_vp_adapter *na, u_int ring_nr, int flags) done = cur; // used all goto done; } + if (!na->na_bdg) { + done = cur; + goto done; + } if (bridge_batch > NM_BDG_BATCH) bridge_batch = NM_BDG_BATCH; - done = nm_bdg_preflush(na, ring_nr, kring, cur); + done = nm_bdg_preflush(kring, cur); done: if (done != cur) D("early break at %d/ %d, tail %d", done, cur, kring->nr_hwtail); @@ -1538,27 +1673,18 @@ done: kring->nr_hwtail = nm_prev(done, lim); nm_txsync_finalize(kring); if (netmap_verbose) - D("%s ring %d flags %d", NM_IFPNAME(na->up.ifp), ring_nr, flags); + D("%s ring %d flags %d", na->up.name, kring->ring_id, flags); return 0; } -/* - * main dispatch routine for the bridge. - * We already know that only one thread is running this. - * we must run nm_bdg_preflush without lock. +/* rxsync code used by VALE ports nm_rxsync callback and also + * internally by the brwap */ static int -bdg_netmap_txsync(struct netmap_adapter *na, u_int ring_nr, int flags) +netmap_vp_rxsync_locked(struct netmap_kring *kring, int flags) { - struct netmap_vp_adapter *vpna = (struct netmap_vp_adapter*)na; - return netmap_vp_txsync(vpna, ring_nr, flags); -} - -static int -netmap_vp_rxsync(struct netmap_adapter *na, u_int ring_nr, int flags) -{ - struct netmap_kring *kring = &na->rx_rings[ring_nr]; + struct netmap_adapter *na = kring->na; struct netmap_ring *ring = kring->ring; u_int nm_i, lim = kring->nkr_num_slots - 1; u_int head = nm_rxsync_prologue(kring); @@ -1579,9 +1705,9 @@ netmap_vp_rxsync(struct netmap_adapter *na, u_int ring_nr, int flags) /* consistency check, but nothing really important here */ for (n = 0; likely(nm_i != head); n++) { struct netmap_slot *slot = &ring->slot[nm_i]; - void *addr = BDG_NMB(na, slot); + void *addr = NMB(na, slot); - if (addr == netmap_buffer_base) { /* bad buf */ + if (addr == NETMAP_BUF_BASE(kring->na)) { /* bad buf */ D("bad buffer index %d, ignore ?", slot->buf_idx); } @@ -1599,26 +1725,45 @@ done: } /* + * nm_rxsync callback for VALE ports * user process reading from a VALE switch. * Already protected against concurrent calls from userspace, * but we must acquire the queue's lock to protect against * writers on the same queue. */ static int -bdg_netmap_rxsync(struct netmap_adapter *na, u_int ring_nr, int flags) +netmap_vp_rxsync(struct netmap_kring *kring, int flags) { - struct netmap_kring *kring = &na->rx_rings[ring_nr]; int n; mtx_lock(&kring->q_lock); - n = netmap_vp_rxsync(na, ring_nr, flags); + n = netmap_vp_rxsync_locked(kring, flags); mtx_unlock(&kring->q_lock); return n; } +/* nm_bdg_attach callback for VALE ports + * The na_vp port is this same netmap_adapter. There is no host port. + */ +static int +netmap_vp_bdg_attach(const char *name, struct netmap_adapter *na) +{ + struct netmap_vp_adapter *vpna = (struct netmap_vp_adapter *)na; + + if (vpna->na_bdg) + return EBUSY; + na->na_vp = vpna; + strncpy(na->name, name, sizeof(na->name)); + na->na_hostvp = NULL; + return 0; +} + +/* create a netmap_vp_adapter that describes a VALE port. + * Only persistent VALE ports have a non-null ifp. + */ static int -bdg_netmap_attach(struct nmreq *nmr, struct ifnet *ifp) +netmap_vp_create(struct nmreq *nmr, struct ifnet *ifp, struct netmap_vp_adapter **ret) { struct netmap_vp_adapter *vpna; struct netmap_adapter *na; @@ -1632,6 +1777,7 @@ bdg_netmap_attach(struct nmreq *nmr, struct ifnet *ifp) na = &vpna->up; na->ifp = ifp; + strncpy(na->name, nmr->nr_name, sizeof(na->name)); /* bound checking */ na->num_tx_rings = nmr->nr_tx_rings; @@ -1664,22 +1810,24 @@ bdg_netmap_attach(struct nmreq *nmr, struct ifnet *ifp) D("max frame size %u", vpna->mfs); na->na_flags |= NAF_BDG_MAYSLEEP | NAF_MEM_OWNER; - na->nm_txsync = bdg_netmap_txsync; - na->nm_rxsync = bdg_netmap_rxsync; - na->nm_register = bdg_netmap_reg; - na->nm_dtor = netmap_adapter_vp_dtor; + na->nm_txsync = netmap_vp_txsync; + na->nm_rxsync = netmap_vp_rxsync; + na->nm_register = netmap_vp_reg; na->nm_krings_create = netmap_vp_krings_create; na->nm_krings_delete = netmap_vp_krings_delete; - na->nm_mem = netmap_mem_private_new(NM_IFPNAME(na->ifp), + na->nm_dtor = netmap_vp_dtor; + na->nm_mem = netmap_mem_private_new(na->name, na->num_tx_rings, na->num_tx_desc, na->num_rx_rings, na->num_rx_desc, nmr->nr_arg3, npipes, &error); if (na->nm_mem == NULL) goto err; + na->nm_bdg_attach = netmap_vp_bdg_attach; /* other nmd fields are set in the common routine */ error = netmap_attach_common(na); if (error) goto err; + *ret = vpna; return 0; err: @@ -1689,30 +1837,60 @@ err: return error; } +/* Bridge wrapper code (bwrap). + * This is used to connect a non-VALE-port netmap_adapter (hwna) to a + * VALE switch. + * The main task is to swap the meaning of tx and rx rings to match the + * expectations of the VALE switch code (see nm_bdg_flush). + * + * The bwrap works by interposing a netmap_bwrap_adapter between the + * rest of the system and the hwna. The netmap_bwrap_adapter looks like + * a netmap_vp_adapter to the rest the system, but, internally, it + * translates all callbacks to what the hwna expects. + * + * Note that we have to intercept callbacks coming from two sides: + * + * - callbacks coming from the netmap module are intercepted by + * passing around the netmap_bwrap_adapter instead of the hwna + * + * - callbacks coming from outside of the netmap module only know + * about the hwna. This, however, only happens in interrupt + * handlers, where only the hwna->nm_notify callback is called. + * What the bwrap does is to overwrite the hwna->nm_notify callback + * with its own netmap_bwrap_intr_notify. + * XXX This assumes that the hwna->nm_notify callback was the + * standard netmap_notify(), as it is the case for nic adapters. + * Any additional action performed by hwna->nm_notify will not be + * performed by netmap_bwrap_intr_notify. + * + * Additionally, the bwrap can optionally attach the host rings pair + * of the wrapped adapter to a different port of the switch. + */ + static void netmap_bwrap_dtor(struct netmap_adapter *na) { struct netmap_bwrap_adapter *bna = (struct netmap_bwrap_adapter*)na; struct netmap_adapter *hwna = bna->hwna; - struct nm_bridge *b = bna->up.na_bdg, - *bh = bna->host.na_bdg; - struct ifnet *ifp = na->ifp; ND("na %p", na); + /* drop reference to hwna->ifp. + * If we don't do this, netmap_detach_common(na) + * will think it has set NA(na->ifp) to NULL + */ + na->ifp = NULL; + /* for safety, also drop the possible reference + * in the hostna + */ + bna->host.up.ifp = NULL; - if (b) { - netmap_bdg_detach_common(b, bna->up.bdg_port, - (bh ? bna->host.bdg_port : -1)); - } - + hwna->nm_mem = bna->save_nmd; hwna->na_private = NULL; + hwna->na_vp = hwna->na_hostvp = NULL; + hwna->na_flags &= ~NAF_BUSY; netmap_adapter_put(hwna); - bzero(ifp, sizeof(*ifp)); - free(ifp, M_DEVBUF); - na->ifp = NULL; - } @@ -1737,7 +1915,6 @@ netmap_bwrap_dtor(struct netmap_adapter *na) static int netmap_bwrap_intr_notify(struct netmap_adapter *na, u_int ring_nr, enum txrx tx, int flags) { - struct ifnet *ifp = na->ifp; struct netmap_bwrap_adapter *bna = na->na_private; struct netmap_vp_adapter *hostna = &bna->host; struct netmap_kring *kring, *bkring; @@ -1747,20 +1924,24 @@ netmap_bwrap_intr_notify(struct netmap_adapter *na, u_int ring_nr, enum txrx tx, int error = 0; if (netmap_verbose) - D("%s %s%d 0x%x", NM_IFPNAME(ifp), + D("%s %s%d 0x%x", na->name, (tx == NR_TX ? "TX" : "RX"), ring_nr, flags); if (flags & NAF_DISABLE_NOTIFY) { - kring = tx == NR_TX ? na->tx_rings : na->rx_rings; - bkring = tx == NR_TX ? vpna->up.rx_rings : vpna->up.tx_rings; - if (kring[ring_nr].nkr_stopped) - netmap_disable_ring(&bkring[ring_nr]); - else - bkring[ring_nr].nkr_stopped = 0; + /* the enabled/disabled state of the ring has changed, + * propagate the info to the wrapper (with tx/rx swapped) + */ + if (tx == NR_TX) { + netmap_set_rxring(&vpna->up, ring_nr, + na->tx_rings[ring_nr].nkr_stopped); + } else { + netmap_set_txring(&vpna->up, ring_nr, + na->rx_rings[ring_nr].nkr_stopped); + } return 0; } - if (ifp == NULL || !(ifp->if_capenable & IFCAP_NETMAP)) + if (!nm_netmap_on(na)) return 0; /* we only care about receive interrupts */ @@ -1786,7 +1967,7 @@ netmap_bwrap_intr_notify(struct netmap_adapter *na, u_int ring_nr, enum txrx tx, * the info from the rx kring. */ if (netmap_verbose) - D("%s head %d cur %d tail %d (kring %d %d %d)", NM_IFPNAME(ifp), + D("%s head %d cur %d tail %d (kring %d %d %d)", na->name, ring->head, ring->cur, ring->tail, kring->rhead, kring->rcur, kring->rtail); @@ -1807,7 +1988,7 @@ netmap_bwrap_intr_notify(struct netmap_adapter *na, u_int ring_nr, enum txrx tx, goto put_out; if (kring->nr_hwcur == kring->nr_hwtail && netmap_verbose) { D("how strange, interrupt with no packets on %s", - NM_IFPNAME(ifp)); + na->name); goto put_out; } @@ -1823,7 +2004,7 @@ netmap_bwrap_intr_notify(struct netmap_adapter *na, u_int ring_nr, enum txrx tx, /* pass packets to the switch */ nm_txsync_prologue(bkring); // XXX error checking ? - netmap_vp_txsync(vpna, ring_nr, flags); + netmap_vp_txsync(bkring, flags); /* mark all buffers as released on this ring */ ring->head = ring->cur = kring->nr_hwtail; @@ -1845,6 +2026,7 @@ put_out: } +/* nm_register callback for bwrap */ static int netmap_bwrap_register(struct netmap_adapter *na, int onoff) { @@ -1854,22 +2036,35 @@ netmap_bwrap_register(struct netmap_adapter *na, int onoff) struct netmap_vp_adapter *hostna = &bna->host; int error; - ND("%s %s", NM_IFPNAME(na->ifp), onoff ? "on" : "off"); + ND("%s %s", na->name, onoff ? "on" : "off"); if (onoff) { int i; + /* netmap_do_regif has been called on the bwrap na. + * We need to pass the information about the + * memory allocator down to the hwna before + * putting it in netmap mode + */ hwna->na_lut = na->na_lut; hwna->na_lut_objtotal = na->na_lut_objtotal; + hwna->na_lut_objsize = na->na_lut_objsize; if (hostna->na_bdg) { + /* if the host rings have been attached to switch, + * we need to copy the memory allocator information + * in the hostna also + */ hostna->up.na_lut = na->na_lut; hostna->up.na_lut_objtotal = na->na_lut_objtotal; + hostna->up.na_lut_objsize = na->na_lut_objsize; } /* cross-link the netmap rings * The original number of rings comes from hwna, * rx rings on one side equals tx rings on the other. + * We need to do this now, after the initialization + * of the kring->ring pointers */ for (i = 0; i < na->num_rx_rings + 1; i++) { hwna->tx_rings[i].nkr_num_slots = na->rx_rings[i].nkr_num_slots; @@ -1881,27 +2076,31 @@ netmap_bwrap_register(struct netmap_adapter *na, int onoff) } } - if (hwna->ifp) { - error = hwna->nm_register(hwna, onoff); - if (error) - return error; - } + /* forward the request to the hwna */ + error = hwna->nm_register(hwna, onoff); + if (error) + return error; - bdg_netmap_reg(na, onoff); + /* impersonate a netmap_vp_adapter */ + netmap_vp_reg(na, onoff); + if (hostna->na_bdg) + netmap_vp_reg(&hostna->up, onoff); if (onoff) { + /* intercept the hwna nm_nofify callback */ bna->save_notify = hwna->nm_notify; hwna->nm_notify = netmap_bwrap_intr_notify; } else { hwna->nm_notify = bna->save_notify; hwna->na_lut = NULL; hwna->na_lut_objtotal = 0; + hwna->na_lut_objsize = 0; } return 0; } - +/* nm_config callback for bwrap */ static int netmap_bwrap_config(struct netmap_adapter *na, u_int *txr, u_int *txd, u_int *rxr, u_int *rxd) @@ -1922,6 +2121,7 @@ netmap_bwrap_config(struct netmap_adapter *na, u_int *txr, u_int *txd, } +/* nm_krings_create callback for bwrap */ static int netmap_bwrap_krings_create(struct netmap_adapter *na) { @@ -1931,21 +2131,33 @@ netmap_bwrap_krings_create(struct netmap_adapter *na) struct netmap_adapter *hostna = &bna->host.up; int error; - ND("%s", NM_IFPNAME(na->ifp)); + ND("%s", na->name); + /* impersonate a netmap_vp_adapter */ error = netmap_vp_krings_create(na); if (error) return error; + /* also create the hwna krings */ error = hwna->nm_krings_create(hwna); if (error) { netmap_vp_krings_delete(na); return error; } + /* the connection between the bwrap krings and the hwna krings + * will be perfomed later, in the nm_register callback, since + * now the kring->ring pointers have not been initialized yet + */ if (na->na_flags & NAF_HOST_RINGS) { + /* the hostna rings are the host rings of the bwrap. + * The corresponding krings must point back to the + * hostna + */ hostna->tx_rings = na->tx_rings + na->num_tx_rings; + hostna->tx_rings[0].na = hostna; hostna->rx_rings = na->rx_rings + na->num_rx_rings; + hostna->rx_rings[0].na = hostna; } return 0; @@ -1959,7 +2171,7 @@ netmap_bwrap_krings_delete(struct netmap_adapter *na) (struct netmap_bwrap_adapter *)na; struct netmap_adapter *hwna = bna->hwna; - ND("%s", NM_IFPNAME(na->ifp)); + ND("%s", na->name); hwna->nm_krings_delete(hwna); netmap_vp_krings_delete(na); @@ -1986,13 +2198,13 @@ netmap_bwrap_notify(struct netmap_adapter *na, u_int ring_n, enum txrx tx, int f ring = kring->ring; lim = kring->nkr_num_slots - 1; - if (hwna->ifp == NULL || !(hwna->ifp->if_capenable & IFCAP_NETMAP)) + if (!nm_netmap_on(hwna)) return 0; mtx_lock(&kring->q_lock); /* first step: simulate a user wakeup on the rx ring */ - netmap_vp_rxsync(na, ring_n, flags); + netmap_vp_rxsync_locked(kring, flags); ND("%s[%d] PRE rx(c%3d t%3d l%3d) ring(h%3d c%3d t%3d) tx(c%3d ht%3d t%3d)", - NM_IFPNAME(na->ifp), ring_n, + na->name, ring_n, kring->nr_hwcur, kring->nr_hwtail, kring->nkr_hwlease, ring->head, ring->cur, ring->tail, hw_kring->nr_hwcur, hw_kring->nr_hwtail, hw_ring->rtail); @@ -2013,9 +2225,9 @@ netmap_bwrap_notify(struct netmap_adapter *na, u_int ring_n, enum txrx tx, int f ring->tail = kring->rtail; /* restore saved value of tail, for safety */ /* fifth step: the user goes to sleep again, causing another rxsync */ - netmap_vp_rxsync(na, ring_n, flags); + netmap_vp_rxsync_locked(kring, flags); ND("%s[%d] PST rx(c%3d t%3d l%3d) ring(h%3d c%3d t%3d) tx(c%3d ht%3d t%3d)", - NM_IFPNAME(na->ifp), ring_n, + na->name, ring_n, kring->nr_hwcur, kring->nr_hwtail, kring->nkr_hwlease, ring->head, ring->cur, ring->tail, hw_kring->nr_hwcur, hw_kring->nr_hwtail, hw_kring->rtail); @@ -2024,6 +2236,7 @@ netmap_bwrap_notify(struct netmap_adapter *na, u_int ring_n, enum txrx tx, int f } +/* notify method for the bridge-->host-rings path */ static int netmap_bwrap_host_notify(struct netmap_adapter *na, u_int ring_n, enum txrx tx, int flags) { @@ -2035,23 +2248,95 @@ netmap_bwrap_host_notify(struct netmap_adapter *na, u_int ring_n, enum txrx tx, } -/* attach a bridge wrapper to the 'real' device */ +/* nm_bdg_ctl callback for the bwrap. + * Called on bridge-attach and detach, as an effect of vale-ctl -[ahd]. + * On attach, it needs to provide a fake netmap_priv_d structure and + * perform a netmap_do_regif() on the bwrap. This will put both the + * bwrap and the hwna in netmap mode, with the netmap rings shared + * and cross linked. Moroever, it will start intercepting interrupts + * directed to hwna. + */ static int -netmap_bwrap_attach(struct ifnet *fake, struct ifnet *real) +netmap_bwrap_bdg_ctl(struct netmap_adapter *na, struct nmreq *nmr, int attach) +{ + struct netmap_priv_d *npriv; + struct netmap_bwrap_adapter *bna = (struct netmap_bwrap_adapter*)na; + struct netmap_if *nifp; + int error = 0; + + if (attach) { + if (NETMAP_OWNED_BY_ANY(na)) { + return EBUSY; + } + if (bna->na_kpriv) { + /* nothing to do */ + return 0; + } + npriv = malloc(sizeof(*npriv), M_DEVBUF, M_NOWAIT|M_ZERO); + if (npriv == NULL) + return ENOMEM; + nifp = netmap_do_regif(npriv, na, nmr->nr_ringid, nmr->nr_flags, &error); + if (!nifp) { + bzero(npriv, sizeof(*npriv)); + free(npriv, M_DEVBUF); + return error; + } + bna->na_kpriv = npriv; + na->na_flags |= NAF_BUSY; + } else { + int last_instance; + + if (na->active_fds == 0) /* not registered */ + return EINVAL; + last_instance = netmap_dtor_locked(bna->na_kpriv); + if (!last_instance) { + D("--- error, trying to detach an entry with active mmaps"); + error = EINVAL; + } else { + struct nm_bridge *b = bna->up.na_bdg, + *bh = bna->host.na_bdg; + npriv = bna->na_kpriv; + bna->na_kpriv = NULL; + D("deleting priv"); + + bzero(npriv, sizeof(*npriv)); + free(npriv, M_DEVBUF); + if (b) { + /* XXX the bwrap dtor should take care + * of this (2014-06-16) + */ + netmap_bdg_detach_common(b, bna->up.bdg_port, + (bh ? bna->host.bdg_port : -1)); + } + na->na_flags &= ~NAF_BUSY; + } + } + return error; + +} + +/* attach a bridge wrapper to the 'real' device */ +int +netmap_bwrap_attach(const char *nr_name, struct netmap_adapter *hwna) { struct netmap_bwrap_adapter *bna; - struct netmap_adapter *na; - struct netmap_adapter *hwna = NA(real); - struct netmap_adapter *hostna; - int error; + struct netmap_adapter *na = NULL; + struct netmap_adapter *hostna = NULL; + int error = 0; + /* make sure the NIC is not already in use */ + if (NETMAP_OWNED_BY_ANY(hwna)) { + D("NIC %s busy, cannot attach to bridge", hwna->name); + return EBUSY; + } bna = malloc(sizeof(*bna), M_DEVBUF, M_NOWAIT | M_ZERO); - if (bna == NULL) + if (bna == NULL) { return ENOMEM; + } na = &bna->up.up; - na->ifp = fake; + strncpy(na->name, nr_name, sizeof(na->name)); /* fill the ring data for the bwrap adapter with rx/tx meanings * swapped. The real cross-linking will be done during register, * when all the krings will have been created. @@ -2068,17 +2353,28 @@ netmap_bwrap_attach(struct ifnet *fake, struct ifnet *real) na->nm_krings_create = netmap_bwrap_krings_create; na->nm_krings_delete = netmap_bwrap_krings_delete; na->nm_notify = netmap_bwrap_notify; - na->nm_mem = hwna->nm_mem; - na->na_private = na; /* prevent NIOCREGIF */ + na->nm_bdg_ctl = netmap_bwrap_bdg_ctl; + na->pdev = hwna->pdev; + na->nm_mem = netmap_mem_private_new(na->name, + na->num_tx_rings, na->num_tx_desc, + na->num_rx_rings, na->num_rx_desc, + 0, 0, &error); + na->na_flags |= NAF_MEM_OWNER; + if (na->nm_mem == NULL) + goto err_put; bna->up.retry = 1; /* XXX maybe this should depend on the hwna */ bna->hwna = hwna; netmap_adapter_get(hwna); hwna->na_private = bna; /* weak reference */ - + hwna->na_vp = &bna->up; + if (hwna->na_flags & NAF_HOST_RINGS) { + if (hwna->na_flags & NAF_SW_ONLY) + na->na_flags |= NAF_SW_ONLY; na->na_flags |= NAF_HOST_RINGS; hostna = &bna->host.up; + snprintf(hostna->name, sizeof(hostna->name), "%s^", nr_name); hostna->ifp = hwna->ifp; hostna->num_tx_rings = 1; hostna->num_tx_desc = hwna->num_rx_desc; @@ -2089,20 +2385,44 @@ netmap_bwrap_attach(struct ifnet *fake, struct ifnet *real) hostna->nm_notify = netmap_bwrap_host_notify; hostna->nm_mem = na->nm_mem; hostna->na_private = bna; + hostna->na_vp = &bna->up; + na->na_hostvp = hwna->na_hostvp = + hostna->na_hostvp = &bna->host; + hostna->na_flags = NAF_BUSY; /* prevent NIOCREGIF */ } ND("%s<->%s txr %d txd %d rxr %d rxd %d", - fake->if_xname, real->if_xname, + na->name, ifp->if_xname, na->num_tx_rings, na->num_tx_desc, na->num_rx_rings, na->num_rx_desc); error = netmap_attach_common(na); if (error) { - netmap_adapter_put(hwna); - free(bna, M_DEVBUF); - return error; + goto err_free; } + /* make bwrap ifp point to the real ifp + * NOTE: netmap_attach_common() interprets a non-NULL na->ifp + * as a request to make the ifp point to the na. Since we + * do not want to change the na already pointed to by hwna->ifp, + * the following assignment has to be delayed until now + */ + na->ifp = hwna->ifp; + hwna->na_flags |= NAF_BUSY; + /* make hwna point to the allocator we are actually using, + * so that monitors will be able to find it + */ + bna->save_nmd = hwna->nm_mem; + hwna->nm_mem = na->nm_mem; return 0; + +err_free: + netmap_mem_private_delete(na->nm_mem); +err_put: + hwna->na_vp = hwna->na_hostvp = NULL; + netmap_adapter_put(hwna); + free(bna, M_DEVBUF); + return error; + } diff --git a/sys/dev/pci/pci.c b/sys/dev/pci/pci.c index 9733841..0526e8d 100644 --- a/sys/dev/pci/pci.c +++ b/sys/dev/pci/pci.c @@ -110,11 +110,6 @@ static int pci_write_vpd_reg(device_t pcib, pcicfgregs *cfg, int reg, uint32_t data); #endif static void pci_read_vpd(device_t pcib, pcicfgregs *cfg); -static void pci_disable_msi(device_t dev); -static void pci_enable_msi(device_t dev, uint64_t address, - uint16_t data); -static void pci_enable_msix(device_t dev, u_int index, - uint64_t address, uint32_t data); static void pci_mask_msix(device_t dev, u_int index); static void pci_unmask_msix(device_t dev, u_int index); static int pci_msi_blacklisted(void); @@ -180,11 +175,15 @@ static device_method_t pci_methods[] = { DEVMETHOD(pci_find_htcap, pci_find_htcap_method), DEVMETHOD(pci_alloc_msi, pci_alloc_msi_method), DEVMETHOD(pci_alloc_msix, pci_alloc_msix_method), + DEVMETHOD(pci_enable_msi, pci_enable_msi_method), + DEVMETHOD(pci_enable_msix, pci_enable_msix_method), + DEVMETHOD(pci_disable_msi, pci_disable_msi_method), DEVMETHOD(pci_remap_msix, pci_remap_msix_method), DEVMETHOD(pci_release_msi, pci_release_msi_method), DEVMETHOD(pci_msi_count, pci_msi_count_method), DEVMETHOD(pci_msix_count, pci_msix_count_method), DEVMETHOD(pci_get_rid, pci_get_rid_method), + DEVMETHOD(pci_child_added, pci_child_added_method), DEVMETHOD_END }; @@ -1343,9 +1342,10 @@ pci_find_extcap_method(device_t dev, device_t child, int capability, * Support for MSI-X message interrupts. */ void -pci_enable_msix(device_t dev, u_int index, uint64_t address, uint32_t data) +pci_enable_msix_method(device_t dev, device_t child, u_int index, + uint64_t address, uint32_t data) { - struct pci_devinfo *dinfo = device_get_ivars(dev); + struct pci_devinfo *dinfo = device_get_ivars(child); struct pcicfg_msix *msix = &dinfo->cfg.msix; uint32_t offset; @@ -1356,7 +1356,7 @@ pci_enable_msix(device_t dev, u_int index, uint64_t address, uint32_t data) bus_write_4(msix->msix_table_res, offset + 8, data); /* Enable MSI -> HT mapping. */ - pci_ht_map_msi(dev, address); + pci_ht_map_msi(child, address); } void @@ -1868,45 +1868,46 @@ pci_set_max_read_req(device_t dev, int size) * Support for MSI message signalled interrupts. */ void -pci_enable_msi(device_t dev, uint64_t address, uint16_t data) +pci_enable_msi_method(device_t dev, device_t child, uint64_t address, + uint16_t data) { - struct pci_devinfo *dinfo = device_get_ivars(dev); + struct pci_devinfo *dinfo = device_get_ivars(child); struct pcicfg_msi *msi = &dinfo->cfg.msi; /* Write data and address values. */ - pci_write_config(dev, msi->msi_location + PCIR_MSI_ADDR, + pci_write_config(child, msi->msi_location + PCIR_MSI_ADDR, address & 0xffffffff, 4); if (msi->msi_ctrl & PCIM_MSICTRL_64BIT) { - pci_write_config(dev, msi->msi_location + PCIR_MSI_ADDR_HIGH, + pci_write_config(child, msi->msi_location + PCIR_MSI_ADDR_HIGH, address >> 32, 4); - pci_write_config(dev, msi->msi_location + PCIR_MSI_DATA_64BIT, + pci_write_config(child, msi->msi_location + PCIR_MSI_DATA_64BIT, data, 2); } else - pci_write_config(dev, msi->msi_location + PCIR_MSI_DATA, data, + pci_write_config(child, msi->msi_location + PCIR_MSI_DATA, data, 2); /* Enable MSI in the control register. */ msi->msi_ctrl |= PCIM_MSICTRL_MSI_ENABLE; - pci_write_config(dev, msi->msi_location + PCIR_MSI_CTRL, msi->msi_ctrl, - 2); + pci_write_config(child, msi->msi_location + PCIR_MSI_CTRL, + msi->msi_ctrl, 2); /* Enable MSI -> HT mapping. */ - pci_ht_map_msi(dev, address); + pci_ht_map_msi(child, address); } void -pci_disable_msi(device_t dev) +pci_disable_msi_method(device_t dev, device_t child) { - struct pci_devinfo *dinfo = device_get_ivars(dev); + struct pci_devinfo *dinfo = device_get_ivars(child); struct pcicfg_msi *msi = &dinfo->cfg.msi; /* Disable MSI -> HT mapping. */ - pci_ht_map_msi(dev, 0); + pci_ht_map_msi(child, 0); /* Disable MSI in the control register. */ msi->msi_ctrl &= ~PCIM_MSICTRL_MSI_ENABLE; - pci_write_config(dev, msi->msi_location + PCIR_MSI_CTRL, msi->msi_ctrl, - 2); + pci_write_config(child, msi->msi_location + PCIR_MSI_CTRL, + msi->msi_ctrl, 2); } /* @@ -3518,6 +3519,13 @@ pci_add_child(device_t bus, struct pci_devinfo *dinfo) pci_cfg_restore(dinfo->cfg.dev, dinfo); pci_print_verbose(dinfo); pci_add_resources(bus, dinfo->cfg.dev, 0, 0); + pci_child_added(dinfo->cfg.dev); +} + +void +pci_child_added_method(device_t dev, device_t child) +{ + } static int diff --git a/sys/dev/pci/pci_if.m b/sys/dev/pci/pci_if.m index 82864eb..227d362 100644 --- a/sys/dev/pci/pci_if.m +++ b/sys/dev/pci/pci_if.m @@ -138,6 +138,26 @@ METHOD int alloc_msix { int *count; }; +METHOD void enable_msi { + device_t dev; + device_t child; + uint64_t address; + uint16_t data; +}; + +METHOD void enable_msix { + device_t dev; + device_t child; + u_int index; + uint64_t address; + uint32_t data; +}; + +METHOD void disable_msi { + device_t dev; + device_t child; +}; + METHOD int remap_msix { device_t dev; device_t child; @@ -165,3 +185,7 @@ METHOD uint16_t get_rid { device_t child; }; +METHOD void child_added { + device_t dev; + device_t child; +}; diff --git a/sys/dev/pci/pci_private.h b/sys/dev/pci/pci_private.h index 0223ee8..5a90ce9 100644 --- a/sys/dev/pci/pci_private.h +++ b/sys/dev/pci/pci_private.h @@ -90,6 +90,11 @@ int pci_find_htcap_method(device_t dev, device_t child, int capability, int *capreg); int pci_alloc_msi_method(device_t dev, device_t child, int *count); int pci_alloc_msix_method(device_t dev, device_t child, int *count); +void pci_enable_msi_method(device_t dev, device_t child, + uint64_t address, uint16_t data); +void pci_enable_msix_method(device_t dev, device_t child, + u_int index, uint64_t address, uint32_t data); +void pci_disable_msi_method(device_t dev, device_t child); int pci_remap_msix_method(device_t dev, device_t child, int count, const u_int *vectors); int pci_release_msi_method(device_t dev, device_t child); @@ -120,6 +125,7 @@ int pci_assign_interrupt_method(device_t dev, device_t child); int pci_resume(device_t dev); int pci_suspend(device_t dev); bus_dma_tag_t pci_get_dma_tag(device_t bus, device_t dev); +void pci_child_added_method(device_t dev, device_t child); /** Restore the config register state. The state must be previously * saved with pci_cfg_save. However, the pci bus driver takes care of diff --git a/sys/dev/pci/pcivar.h b/sys/dev/pci/pcivar.h index 0157ee7..89407a7 100644 --- a/sys/dev/pci/pcivar.h +++ b/sys/dev/pci/pcivar.h @@ -458,6 +458,24 @@ pci_alloc_msix(device_t dev, int *count) return (PCI_ALLOC_MSIX(device_get_parent(dev), dev, count)); } +static __inline void +pci_enable_msi(device_t dev, uint64_t address, uint16_t data) +{ + PCI_ENABLE_MSI(device_get_parent(dev), dev, address, data); +} + +static __inline void +pci_enable_msix(device_t dev, u_int index, uint64_t address, uint32_t data) +{ + PCI_ENABLE_MSIX(device_get_parent(dev), dev, index, address, data); +} + +static __inline void +pci_disable_msi(device_t dev) +{ + PCI_DISABLE_MSI(device_get_parent(dev), dev); +} + static __inline int pci_remap_msix(device_t dev, int count, const u_int *vectors) { @@ -488,6 +506,13 @@ pci_get_rid(device_t dev) return (PCI_GET_RID(device_get_parent(dev), dev)); } +static __inline void +pci_child_added(device_t dev) +{ + + return (PCI_CHILD_ADDED(device_get_parent(dev), dev)); +} + device_t pci_find_bsf(uint8_t, uint8_t, uint8_t); device_t pci_find_dbsf(uint32_t, uint8_t, uint8_t, uint8_t); device_t pci_find_device(uint16_t, uint16_t); diff --git a/sys/dev/si/si.c b/sys/dev/si/si.c index de3eadf..163dd31 100644 --- a/sys/dev/si/si.c +++ b/sys/dev/si/si.c @@ -36,9 +36,9 @@ __FBSDID("$FreeBSD$"); #ifndef lint -static const char si_copyright1[] = "@(#) Copyright (C) Specialix International, 1990,1992,1998", - si_copyright2[] = "@(#) Copyright (C) Andy Rutter 1993", - si_copyright3[] = "@(#) Copyright (C) Peter Wemm 2000"; +__IDSTRING(si_copyright1, "@(#) Copyright (C) Specialix International, 1990,1992,1998"); +__IDSTRING(si_copyright2, "@(#) Copyright (C) Andy Rutter 1993"); +__IDSTRING(si_copyright3, "@(#) Copyright (C) Peter Wemm 2000"); #endif /* not lint */ #include "opt_compat.h" diff --git a/sys/dev/sound/usb/uaudio.c b/sys/dev/sound/usb/uaudio.c index 6c798cc..9d98a78 100644 --- a/sys/dev/sound/usb/uaudio.c +++ b/sys/dev/sound/usb/uaudio.c @@ -1659,21 +1659,10 @@ uaudio_chan_fill_info_sub(struct uaudio_softc *sc, struct usb_device *udev, } else if (audio_rev >= UAUDIO_VERSION_20) { uint32_t dwFormat; - uint8_t bSubslotSize; dwFormat = UGETDW(asid.v2->bmFormats); bChannels = asid.v2->bNrChannels; - bBitResolution = asf1d.v2->bBitResolution; - bSubslotSize = asf1d.v2->bSubslotSize; - - /* Map 4-byte aligned 24-bit samples into 32-bit */ - if (bBitResolution == 24 && bSubslotSize == 4) - bBitResolution = 32; - - if (bBitResolution != (bSubslotSize * 8)) { - DPRINTF("Invalid bSubslotSize\n"); - goto next_ep; - } + bBitResolution = asf1d.v2->bSubslotSize * 8; if ((bChannels != channels) || (bBitResolution != bit_resolution)) { @@ -1720,7 +1709,7 @@ uaudio_chan_fill_info_sub(struct uaudio_softc *sc, struct usb_device *udev, wFormat = UGETW(asid.v1->wFormatTag); bChannels = UAUDIO_MAX_CHAN(asf1d.v1->bNrChannels); - bBitResolution = asf1d.v1->bBitResolution; + bBitResolution = asf1d.v1->bSubFrameSize * 8; if (asf1d.v1->bSamFreqType == 0) { DPRINTFN(16, "Sample rate: %d-%dHz\n", diff --git a/sys/dev/usb/usbdevs b/sys/dev/usb/usbdevs index 5045293..34452c8 100644 --- a/sys/dev/usb/usbdevs +++ b/sys/dev/usb/usbdevs @@ -1173,6 +1173,7 @@ product ASIX AX88772B_1 0x7e2b AX88772B USB 2.0 10/100 Ethernet /* ASUS products */ product ASUS2 USBN11 0x0b05 USB-N11 +product ASUS RT2570 0x1706 RT2500USB Wireless Adapter product ASUS WL167G 0x1707 WL-167g Wireless Adapter product ASUS WL159G 0x170c WL-159g product ASUS A9T_WIFI 0x171b A9T wireless @@ -1186,17 +1187,17 @@ product ASUS RT2870_3 0x1742 RT2870 product ASUS RT2870_4 0x1760 RT2870 product ASUS RT2870_5 0x1761 RT2870 product ASUS USBN13 0x1784 USB-N13 -product ASUS RT3070_1 0x1790 RT3070 product ASUS USBN10 0x1786 USB-N10 +product ASUS RT3070_1 0x1790 RT3070 +product ASUS RTL8192SU 0x1791 RTL8192SU +product ASUS USB_N53 0x179d ASUS Black Diamond Dual Band USB-N53 product ASUS RTL8192CU 0x17ab RTL8192CU product ASUS USBN66 0x17ad USB-N66 product ASUS USBN10NANO 0x17ba USB-N10 Nano -product ASUS RTL8192SU 0x1791 RTL8192SU +product ASUS USBAC51 0x17d1 USB-AC51 product ASUS A730W 0x4202 ASUS MyPal A730W product ASUS P535 0x420f ASUS P535 PDA -product ASUS GMSC 0x422f ASUS Generic Mass Storage -product ASUS RT2570 0x1706 RT2500USB Wireless Adapter -product ASUS USB_N53 0x179d ASUS Black Diamond Dual Band USB-N53 +product ASUS GMSC 0x422f ASUS Generic Mass Storage /* ATen products */ product ATEN UC1284 0x2001 Parallel printer @@ -1592,6 +1593,7 @@ product DLINK DUBE100 0x1a00 10/100 Ethernet product DLINK DUBE100C1 0x1a02 DUB-E100 rev C1 product DLINK DSB650TX4 0x200c 10/100 Ethernet product DLINK DWL120E 0x3200 DWL-120 rev E +product DLINK DWA125D1 0x330f DWA-125 rev D1 product DLINK DWL122 0x3700 DWL-122 product DLINK DWLG120 0x3701 DWL-G120 product DLINK DWL120F 0x3702 DWL-120 rev F diff --git a/sys/dev/usb/wlan/if_run.c b/sys/dev/usb/wlan/if_run.c index d46bb32..f0ae132 100644 --- a/sys/dev/usb/wlan/if_run.c +++ b/sys/dev/usb/wlan/if_run.c @@ -3255,13 +3255,13 @@ run_set_tx_desc(struct run_softc *sc, struct run_tx_data *data) txwi = (struct rt2860_txwi *)(txd + 1); txwi->len = htole16(m->m_pkthdr.len - pad); if (rt2860_rates[ridx].phy == IEEE80211_T_DS) { - txwi->phy = htole16(RT2860_PHY_CCK); + mcs |= RT2860_PHY_CCK; if (ridx != RT2860_RIDX_CCK1 && (ic->ic_flags & IEEE80211_F_SHPREAMBLE)) mcs |= RT2860_PHY_SHPRE; } else - txwi->phy = htole16(RT2860_PHY_OFDM); - txwi->phy |= htole16(mcs); + mcs |= RT2860_PHY_OFDM; + txwi->phy = htole16(mcs); /* check if RTS/CTS or CTS-to-self protection is required */ if (!IEEE80211_IS_MULTICAST(wh->i_addr1) && @@ -3338,7 +3338,7 @@ run_tx(struct run_softc *sc, struct mbuf *m, struct ieee80211_node *ni) /* pickup a rate index */ if (IEEE80211_IS_MULTICAST(wh->i_addr1) || - type != IEEE80211_FC0_TYPE_DATA) { + type != IEEE80211_FC0_TYPE_DATA || m->m_flags & M_EAPOL) { ridx = (ic->ic_curmode == IEEE80211_MODE_11A) ? RT2860_RIDX_OFDM6 : RT2860_RIDX_CCK1; ctl_ridx = rt2860_rates[ridx].ctl_ridx; @@ -4998,7 +4998,7 @@ run_updateprot_cb(void *arg) tmp = RT2860_RTSTH_EN | RT2860_PROT_NAV_SHORT | RT2860_TXOP_ALLOW_ALL; /* setup protection frame rate (MCS code) */ tmp |= (ic->ic_curmode == IEEE80211_MODE_11A) ? - rt2860_rates[RT2860_RIDX_OFDM6].mcs : + rt2860_rates[RT2860_RIDX_OFDM6].mcs | RT2860_PHY_OFDM : rt2860_rates[RT2860_RIDX_CCK11].mcs; /* CCK frames don't require protection */ diff --git a/sys/dev/usb/wlan/if_urtwn.c b/sys/dev/usb/wlan/if_urtwn.c index f09a70f..1f1446c 100644 --- a/sys/dev/usb/wlan/if_urtwn.c +++ b/sys/dev/usb/wlan/if_urtwn.c @@ -152,6 +152,7 @@ static const STRUCT_USB_HOST_ID urtwn_devs[] = { URTWN_DEV(TRENDNET, RTL8192CU), URTWN_DEV(ZYXEL, RTL8192CU), /* URTWN_RTL8188E */ + URTWN_RTL8188E_DEV(DLINK, DWA125D1), URTWN_RTL8188E_DEV(REALTEK, RTL8188ETV), URTWN_RTL8188E_DEV(REALTEK, RTL8188EU), #undef URTWN_RTL8188E_DEV diff --git a/sys/dev/virtio/network/if_vtnet.c b/sys/dev/virtio/network/if_vtnet.c index 2a1fa3c..3e5b728 100644 --- a/sys/dev/virtio/network/if_vtnet.c +++ b/sys/dev/virtio/network/if_vtnet.c @@ -289,6 +289,10 @@ static device_method_t vtnet_methods[] = { DEVMETHOD_END }; +#ifdef DEV_NETMAP +#include <dev/netmap/if_vtnet_netmap.h> +#endif /* DEV_NETMAP */ + static driver_t vtnet_driver = { "vtnet", vtnet_methods, @@ -395,6 +399,10 @@ vtnet_attach(device_t dev) goto fail; } +#ifdef DEV_NETMAP + vtnet_netmap_attach(sc); +#endif /* DEV_NETMAP */ + vtnet_start_taskqueues(sc); fail: @@ -424,6 +432,10 @@ vtnet_detach(device_t dev) ether_ifdetach(ifp); } +#ifdef DEV_NETMAP + netmap_detach(ifp); +#endif /* DEV_NETMAP */ + vtnet_free_taskqueues(sc); if (sc->vtnet_vlan_attach != NULL) { @@ -1735,6 +1747,12 @@ vtnet_rxq_eof(struct vtnet_rxq *rxq) VTNET_RXQ_LOCK_ASSERT(rxq); +#ifdef DEV_NETMAP + if (netmap_rx_irq(ifp, 0, &deq)) { + return (FALSE); + } +#endif /* DEV_NETMAP */ + while (count-- > 0) { m = virtqueue_dequeue(vq, &len); if (m == NULL) @@ -2421,6 +2439,13 @@ vtnet_txq_eof(struct vtnet_txq *txq) deq = 0; VTNET_TXQ_LOCK_ASSERT(txq); +#ifdef DEV_NETMAP + if (netmap_tx_irq(txq->vtntx_sc->vtnet_ifp, txq->vtntx_id)) { + virtqueue_disable_intr(vq); // XXX luigi + return 0; // XXX or 1 ? + } +#endif /* DEV_NETMAP */ + while ((txhdr = virtqueue_dequeue(vq, NULL)) != NULL) { m = txhdr->vth_mbuf; deq++; @@ -2895,6 +2920,11 @@ vtnet_init_rx_queues(struct vtnet_softc *sc) ("%s: too many rx mbufs %d for %d segments", __func__, sc->vtnet_rx_nmbufs, sc->vtnet_rx_nsegs)); +#ifdef DEV_NETMAP + if (vtnet_netmap_init_rx_buffers(sc)) + return 0; +#endif /* DEV_NETMAP */ + for (i = 0; i < sc->vtnet_act_vq_pairs; i++) { rxq = &sc->vtnet_rxqs[i]; @@ -3047,6 +3077,13 @@ vtnet_init(void *xsc) sc = xsc; +#ifdef DEV_NETMAP + if (!NA(sc->vtnet_ifp)) { + D("try to attach again"); + vtnet_netmap_attach(sc); + } +#endif /* DEV_NETMAP */ + VTNET_CORE_LOCK(sc); vtnet_init_locked(sc); VTNET_CORE_UNLOCK(sc); diff --git a/sys/dev/virtio/virtqueue.c b/sys/dev/virtio/virtqueue.c index 79fe245..9401608 100644 --- a/sys/dev/virtio/virtqueue.c +++ b/sys/dev/virtio/virtqueue.c @@ -605,11 +605,13 @@ virtqueue_dump(struct virtqueue *vq) printf("VQ: %s - size=%d; free=%d; used=%d; queued=%d; " "desc_head_idx=%d; avail.idx=%d; used_cons_idx=%d; " - "used.idx=%d; avail.flags=0x%x; used.flags=0x%x\n", + "used.idx=%d; used_event_idx=%d; avail.flags=0x%x; used.flags=0x%x\n", vq->vq_name, vq->vq_nentries, vq->vq_free_cnt, virtqueue_nused(vq), vq->vq_queued_cnt, vq->vq_desc_head_idx, vq->vq_ring.avail->idx, vq->vq_used_cons_idx, - vq->vq_ring.used->idx, vq->vq_ring.avail->flags, + vq->vq_ring.used->idx, + vring_used_event(&vq->vq_ring), + vq->vq_ring.avail->flags, vq->vq_ring.used->flags); } diff --git a/sys/dev/vt/font/vt_mouse_cursor.c b/sys/dev/vt/font/vt_mouse_cursor.c index a35de00..4f12991 100644 --- a/sys/dev/vt/font/vt_mouse_cursor.c +++ b/sys/dev/vt/font/vt_mouse_cursor.c @@ -33,7 +33,7 @@ __FBSDID("$FreeBSD$"); #include <dev/vt/vt.h> #ifndef SC_NO_CUTPASTE -struct mouse_cursor vt_default_mouse_pointer = { +struct vt_mouse_cursor vt_default_mouse_pointer = { .map = { 0x00, /* "__ " */ 0x40, /* "_*_ " */ @@ -43,7 +43,7 @@ struct mouse_cursor vt_default_mouse_pointer = { 0x7c, /* "_*****_ " */ 0x7e, /* "_******_" */ 0x68, /* "_**_****" */ - 0x4c, /* "_*__**__" */ + 0x4c, /* "_*__**_ " */ 0x0c, /* " _ _**_ " */ 0x06, /* " _**_" */ 0x06, /* " _**_" */ @@ -58,13 +58,13 @@ struct mouse_cursor vt_default_mouse_pointer = { 0xfe, /* "_______ " */ 0xff, /* "________" */ 0xff, /* "________" */ - 0xff, /* "________" */ - 0x1e, /* " ____ " */ + 0xfe, /* "_______ " */ + 0x5e, /* " _ ____ " */ 0x0f, /* " ____" */ 0x0f, /* " ____" */ 0x0f, /* " ____" */ }, - .w = 8, - .h = 13, + .width = 8, + .height = 13, }; #endif diff --git a/sys/dev/vt/hw/vga/vt_vga.c b/sys/dev/vt/hw/vga/vt_vga.c index 5dbf5bd..18f2464 100644 --- a/sys/dev/vt/hw/vga/vt_vga.c +++ b/sys/dev/vt/hw/vga/vt_vga.c @@ -54,7 +54,7 @@ struct vga_softc { bus_space_handle_t vga_fb_handle; bus_space_tag_t vga_reg_tag; bus_space_handle_t vga_reg_handle; - int vga_curcolor; + term_color_t vga_curfg, vga_curbg; }; /* Convenience macros. */ @@ -71,13 +71,26 @@ struct vga_softc { #define VT_VGA_HEIGHT 480 #define VT_VGA_MEMSIZE (VT_VGA_WIDTH * VT_VGA_HEIGHT / 8) +/* + * VGA is designed to handle 8 pixels at a time (8 pixels in one byte of + * memory). + */ +#define VT_VGA_PIXELS_BLOCK 8 + +/* + * We use an off-screen addresses to: + * o store the background color; + * o store pixels pattern. + * Those addresses are then loaded in the latches once. + */ +#define VT_VGA_BGCOLOR_OFFSET VT_VGA_MEMSIZE + static vd_probe_t vga_probe; static vd_init_t vga_init; static vd_blank_t vga_blank; -static vd_bitbltchr_t vga_bitbltchr; +static vd_bitblt_text_t vga_bitblt_text; static vd_drawrect_t vga_drawrect; static vd_setpixel_t vga_setpixel; -static vd_putchar_t vga_putchar; static vd_postswitch_t vga_postswitch; static const struct vt_driver vt_vga_driver = { @@ -85,10 +98,9 @@ static const struct vt_driver vt_vga_driver = { .vd_probe = vga_probe, .vd_init = vga_init, .vd_blank = vga_blank, - .vd_bitbltchr = vga_bitbltchr, + .vd_bitblt_text = vga_bitblt_text, .vd_drawrect = vga_drawrect, .vd_setpixel = vga_setpixel, - .vd_putchar = vga_putchar, .vd_postswitch = vga_postswitch, .vd_priority = VD_PRIORITY_GENERIC, }; @@ -101,152 +113,45 @@ static struct vga_softc vga_conssoftc; VT_DRIVER_DECLARE(vt_vga, vt_vga_driver); static inline void -vga_setcolor(struct vt_device *vd, term_color_t color) +vga_setfg(struct vt_device *vd, term_color_t color) { struct vga_softc *sc = vd->vd_softc; - if (sc->vga_curcolor != color) { + if (sc->vga_curfg != color) { REG_WRITE1(sc, VGA_GC_ADDRESS, VGA_GC_SET_RESET); REG_WRITE1(sc, VGA_GC_DATA, color); - sc->vga_curcolor = color; + sc->vga_curfg = color; } } -static void -vga_blank(struct vt_device *vd, term_color_t color) -{ - struct vga_softc *sc = vd->vd_softc; - u_int ofs; - - vga_setcolor(vd, color); - for (ofs = 0; ofs < VT_VGA_MEMSIZE; ofs++) - MEM_WRITE1(sc, ofs, 0xff); -} - static inline void -vga_bitblt_put(struct vt_device *vd, u_long dst, term_color_t color, - uint8_t v) +vga_setbg(struct vt_device *vd, term_color_t color) { struct vga_softc *sc = vd->vd_softc; - /* Skip empty writes, in order to avoid palette changes. */ - if (v != 0x00) { - vga_setcolor(vd, color); + if (sc->vga_curbg != color) { + REG_WRITE1(sc, VGA_GC_ADDRESS, VGA_GC_SET_RESET); + REG_WRITE1(sc, VGA_GC_DATA, color); + /* - * When this MEM_READ1() gets disabled, all sorts of - * artifacts occur. This is because this read loads the - * set of 8 pixels that are about to be changed. There - * is one scenario where we can avoid the read, namely - * if all pixels are about to be overwritten anyway. + * Write 8 pixels using the background color to an + * off-screen byte in the video memory. */ - if (v != 0xff) - MEM_READ1(sc, dst); - MEM_WRITE1(sc, dst, v); - } -} - -static void -vga_setpixel(struct vt_device *vd, int x, int y, term_color_t color) -{ - - vga_bitblt_put(vd, (y * VT_VGA_WIDTH / 8) + (x / 8), color, - 0x80 >> (x % 8)); -} - -static void -vga_drawrect(struct vt_device *vd, int x1, int y1, int x2, int y2, int fill, - term_color_t color) -{ - int x, y; - - for (y = y1; y <= y2; y++) { - if (fill || (y == y1) || (y == y2)) { - for (x = x1; x <= x2; x++) - vga_setpixel(vd, x, y, color); - } else { - vga_setpixel(vd, x1, y, color); - vga_setpixel(vd, x2, y, color); - } - } -} - -/* - * Shift bitmap of one row of the glyph. - * a - array of bytes with src bitmap and result storage. - * m - resulting background color bitmask. - * size - number of bytes per glyph row (+ one byte to store shift overflow). - * shift - offset for target bitmap. - */ - -static void -vga_shift_u8array(uint8_t *a, uint8_t *m, int size, int shift) -{ - int i; - - for (i = (size - 1); i > 0; i--) { - a[i] = (a[i] >> shift) | (a[i-1] << (7 - shift)); - m[i] = ~a[i]; - } - a[0] = (a[0] >> shift); - m[0] = ~a[0] & (0xff >> shift); - m[size - 1] = ~a[size - 1] & (0xff << (7 - shift)); -} - -/* XXX: fix gaps on mouse track when character size is not rounded to 8. */ -static void -vga_bitbltchr(struct vt_device *vd, const uint8_t *src, const uint8_t *mask, - int bpl, vt_axis_t top, vt_axis_t left, unsigned int width, - unsigned int height, term_color_t fg, term_color_t bg) -{ - uint8_t aa[64], ma[64], *r; - int dst, shift, sz, x, y; - struct vga_softc *sc; - - if ((left + width) > VT_VGA_WIDTH) - return; - if ((top + height) > VT_VGA_HEIGHT) - return; - - sc = vd->vd_softc; - - sz = (width + 7) / 8; - shift = left % 8; - - dst = (VT_VGA_WIDTH * top + left) / 8; + MEM_WRITE1(sc, VT_VGA_BGCOLOR_OFFSET, 0xff); - for (y = 0; y < height; y++) { - r = (uint8_t *)src + (y * sz); - memcpy(aa, r, sz); - aa[sz] = 0; - vga_shift_u8array(aa, ma, sz + 1, shift); - - vga_setcolor(vd, bg); - for (x = 0; x < (sz + 1); x ++) { - if (ma[x] == 0) - continue; - /* - * XXX Only mouse cursor can go out of screen. - * So for mouse it have to just return, but for regular - * characters it have to panic, to indicate error in - * size/coordinates calculations. - */ - if ((dst + x) >= (VT_VGA_WIDTH * VT_VGA_HEIGHT)) - return; - if (ma[x] != 0xff) - MEM_READ1(sc, dst + x); - MEM_WRITE1(sc, dst + x, ma[x]); - } + /* + * Read those 8 pixels back to load the background color + * in the latches register. + */ + MEM_READ1(sc, VT_VGA_BGCOLOR_OFFSET); - vga_setcolor(vd, fg); - for (x = 0; x < (sz + 1); x ++) { - if (aa[x] == 0) - continue; - if (aa[x] != 0xff) - MEM_READ1(sc, dst + x); - MEM_WRITE1(sc, dst + x, aa[x]); - } + sc->vga_curbg = color; - dst += VT_VGA_WIDTH / 8; + /* + * The Set/Reset register doesn't contain the fg color + * anymore, store an invalid color. + */ + sc->vga_curfg = 0xff; } } @@ -376,25 +281,550 @@ vga_get_cp437(term_char_t c) } static void -vga_putchar(struct vt_device *vd, term_char_t c, - vt_axis_t top, vt_axis_t left, term_color_t fg, term_color_t bg) +vga_blank(struct vt_device *vd, term_color_t color) { struct vga_softc *sc = vd->vd_softc; - uint8_t ch, attr; + u_int ofs; + + vga_setfg(vd, color); + for (ofs = 0; ofs < VT_VGA_MEMSIZE; ofs++) + MEM_WRITE1(sc, ofs, 0xff); +} + +static inline void +vga_bitblt_put(struct vt_device *vd, u_long dst, term_color_t color, + uint8_t v) +{ + struct vga_softc *sc = vd->vd_softc; + + /* Skip empty writes, in order to avoid palette changes. */ + if (v != 0x00) { + vga_setfg(vd, color); + /* + * When this MEM_READ1() gets disabled, all sorts of + * artifacts occur. This is because this read loads the + * set of 8 pixels that are about to be changed. There + * is one scenario where we can avoid the read, namely + * if all pixels are about to be overwritten anyway. + */ + if (v != 0xff) { + MEM_READ1(sc, dst); + + /* The bg color was trashed by the reads. */ + sc->vga_curbg = 0xff; + } + MEM_WRITE1(sc, dst, v); + } +} + +static void +vga_setpixel(struct vt_device *vd, int x, int y, term_color_t color) +{ + + vga_bitblt_put(vd, (y * VT_VGA_WIDTH / 8) + (x / 8), color, + 0x80 >> (x % 8)); +} + +static void +vga_drawrect(struct vt_device *vd, int x1, int y1, int x2, int y2, int fill, + term_color_t color) +{ + int x, y; + + for (y = y1; y <= y2; y++) { + if (fill || (y == y1) || (y == y2)) { + for (x = x1; x <= x2; x++) + vga_setpixel(vd, x, y, color); + } else { + vga_setpixel(vd, x1, y, color); + vga_setpixel(vd, x2, y, color); + } + } +} + +static void +vga_compute_shifted_pattern(const uint8_t *src, unsigned int bytes, + unsigned int src_x, unsigned int x_count, unsigned int dst_x, + uint8_t *pattern, uint8_t *mask) +{ + unsigned int n; + + n = src_x / 8; /* - * Convert character to CP437, which is the character set used - * by the VGA hardware by default. + * This mask has bits set, where a pixel (ether 0 or 1) + * comes from the source bitmap. */ - ch = vga_get_cp437(c); + if (mask != NULL) { + *mask = (0xff + >> (8 - x_count)) + << (8 - x_count - dst_x); + } + + if (n == (src_x + x_count - 1) / 8) { + /* All the pixels we want are in the same byte. */ + *pattern = src[n]; + if (dst_x >= src_x) + *pattern >>= (dst_x - src_x % 8); + else + *pattern <<= (src_x % 8 - dst_x); + } else { + /* The pixels we want are split into two bytes. */ + if (dst_x >= src_x % 8) { + *pattern = + src[n] << (8 - dst_x - src_x % 8) | + src[n + 1] >> (dst_x - src_x % 8); + } else { + *pattern = + src[n] << (src_x % 8 - dst_x) | + src[n + 1] >> (8 - src_x % 8 - dst_x); + } + } +} + +static void +vga_copy_bitmap_portion(uint8_t *pattern_2colors, uint8_t *pattern_ncolors, + const uint8_t *src, const uint8_t *src_mask, unsigned int src_width, + unsigned int src_x, unsigned int dst_x, unsigned int x_count, + unsigned int src_y, unsigned int dst_y, unsigned int y_count, + term_color_t fg, term_color_t bg, int overwrite) +{ + unsigned int i, bytes; + uint8_t pattern, relevant_bits, mask; + + bytes = (src_width + 7) / 8; + + for (i = 0; i < y_count; ++i) { + vga_compute_shifted_pattern(src + (src_y + i) * bytes, + bytes, src_x, x_count, dst_x, &pattern, &relevant_bits); + + if (src_mask == NULL) { + /* + * No src mask. Consider that all wanted bits + * from the source are "authoritative". + */ + mask = relevant_bits; + } else { + /* + * There's an src mask. We shift it the same way + * we shifted the source pattern. + */ + vga_compute_shifted_pattern( + src_mask + (src_y + i) * bytes, + bytes, src_x, x_count, dst_x, + &mask, NULL); + + /* Now, only keep the wanted bits among them. */ + mask &= relevant_bits; + } + + /* + * Clear bits from the pattern which must be + * transparent, according to the source mask. + */ + pattern &= mask; + + /* Set the bits in the 2-colors array. */ + if (overwrite) + pattern_2colors[dst_y + i] &= ~mask; + pattern_2colors[dst_y + i] |= pattern; + + /* + * Set the same bits in the n-colors array. This one + * supports transparency, when a given bit is cleared in + * all colors. + */ + if (overwrite) { + /* + * Ensure that the pixels used by this bitmap are + * cleared in other colors. + */ + for (int j = 0; j < 16; ++j) + pattern_ncolors[(dst_y + i) * 16 + j] &= + ~mask; + } + pattern_ncolors[(dst_y + i) * 16 + fg] |= pattern; + pattern_ncolors[(dst_y + i) * 16 + bg] |= (~pattern & mask); + } +} + +static void +vga_bitblt_pixels_block_2colors(struct vt_device *vd, const uint8_t *masks, + term_color_t fg, term_color_t bg, + unsigned int x, unsigned int y, unsigned int height) +{ + unsigned int i, offset; + struct vga_softc *sc; + + /* + * The great advantage of Write Mode 3 is that we just need + * to load the foreground in the Set/Reset register, load the + * background color in the latches register (this is done + * through a write in offscreen memory followed by a read of + * that data), then write the pattern to video memory. This + * pattern indicates if the pixel should use the foreground + * color (bit set) or the background color (bit cleared). + */ + + vga_setbg(vd, bg); + vga_setfg(vd, fg); + + sc = vd->vd_softc; + offset = (VT_VGA_WIDTH * y + x) / 8; + + for (i = 0; i < height; ++i, offset += VT_VGA_WIDTH / 8) { + MEM_WRITE1(sc, offset, masks[i]); + } +} + +static void +vga_bitblt_pixels_block_ncolors(struct vt_device *vd, const uint8_t *masks, + unsigned int x, unsigned int y, unsigned int height) +{ + unsigned int i, j, offset; + struct vga_softc *sc; + uint8_t mask; + + sc = vd->vd_softc; /* - * Convert colors to VGA attributes. + * To draw a pixels block with N colors (N > 2), we write each + * color one by one: + * 1. Use the color as the foreground color + * 2. Read the pixels block into the latches + * 3. Draw the calculated mask + * 4. Go back to #1 for subsequent colors. + * + * FIXME: Use Write Mode 0 to remove the need to read from video + * memory. */ - attr = bg << 4 | fg; - MEM_WRITE1(sc, 0x18000 + (top * 80 + left) * 2 + 0, ch); - MEM_WRITE1(sc, 0x18000 + (top * 80 + left) * 2 + 1, attr); + for (i = 0; i < height; ++i) { + for (j = 0; j < 16; ++j) { + mask = masks[i * 16 + j]; + if (mask == 0) + continue; + + vga_setfg(vd, j); + + offset = (VT_VGA_WIDTH * (y + i) + x) / 8; + if (mask != 0xff) { + MEM_READ1(sc, offset); + + /* The bg color was trashed by the reads. */ + sc->vga_curbg = 0xff; + } + MEM_WRITE1(sc, offset, mask); + } + } +} + +static void +vga_bitblt_one_text_pixels_block(struct vt_device *vd, + const struct vt_window *vw, unsigned int x, unsigned int y) +{ + const struct vt_buf *vb; + const struct vt_font *vf; + unsigned int i, col, row, src_x, x_count; + unsigned int used_colors_list[16], used_colors; + uint8_t pattern_2colors[vw->vw_font->vf_height]; + uint8_t pattern_ncolors[vw->vw_font->vf_height * 16]; + term_char_t c; + term_color_t fg, bg; + const uint8_t *src; + + vb = &vw->vw_buf; + vf = vw->vw_font; + + /* + * The current pixels block. + * + * We fill it with portions of characters, because both "grids" + * may not match. + * + * i is the index in this pixels block. + */ + + i = x; + used_colors = 0; + memset(used_colors_list, 0, sizeof(used_colors_list)); + memset(pattern_2colors, 0, sizeof(pattern_2colors)); + memset(pattern_ncolors, 0, sizeof(pattern_ncolors)); + + if (i < vw->vw_offset.tp_col) { + /* + * i is in the margin used to center the text area on + * the screen. + */ + + i = vw->vw_offset.tp_col; + } + + while (i < x + VT_VGA_PIXELS_BLOCK) { + /* + * Find which character is drawn on this pixel in the + * pixels block. + * + * While here, record what colors it uses. + */ + + col = (i - vw->vw_offset.tp_col) / vf->vf_width; + row = (y - vw->vw_offset.tp_row) / vf->vf_height; + + c = VTBUF_GET_FIELD(vb, row, col); + src = vtfont_lookup(vf, c); + + vt_determine_colors(c, VTBUF_ISCURSOR(vb, row, col), &fg, &bg); + if ((used_colors_list[fg] & 0x1) != 0x1) + used_colors++; + if ((used_colors_list[bg] & 0x2) != 0x2) + used_colors++; + used_colors_list[fg] |= 0x1; + used_colors_list[bg] |= 0x2; + + /* + * Compute the portion of the character we want to draw, + * because the pixels block may start in the middle of a + * character. + * + * The first pixel to draw in the character is + * the current position - + * the start position of the character + * + * The last pixel to draw is either + * - the last pixel of the character, or + * - the pixel of the character matching the end of + * the pixels block + * whichever comes first. This position is then + * changed to be relative to the start position of the + * character. + */ + + src_x = i - (col * vf->vf_width + vw->vw_offset.tp_col); + x_count = min( + (col + 1) * vf->vf_width + vw->vw_offset.tp_col, + x + VT_VGA_PIXELS_BLOCK); + x_count -= col * vf->vf_width + vw->vw_offset.tp_col; + x_count -= src_x; + + /* Copy a portion of the character. */ + vga_copy_bitmap_portion(pattern_2colors, pattern_ncolors, + src, NULL, vf->vf_width, + src_x, i % VT_VGA_PIXELS_BLOCK, x_count, + 0, 0, vf->vf_height, fg, bg, 0); + + /* We move to the next portion. */ + i += x_count; + } + +#ifndef SC_NO_CUTPASTE + /* + * Copy the mouse pointer bitmap if it's over the current pixels + * block. + * + * We use the saved cursor position (saved in vt_flush()), because + * the current position could be different than the one used + * to mark the area dirty. + */ + term_rect_t drawn_area; + + drawn_area.tr_begin.tp_col = x; + drawn_area.tr_begin.tp_row = y; + drawn_area.tr_end.tp_col = x + VT_VGA_PIXELS_BLOCK; + drawn_area.tr_end.tp_row = y + vf->vf_height; + if (vd->vd_mshown && vt_is_cursor_in_area(vd, &drawn_area)) { + struct vt_mouse_cursor *cursor; + unsigned int mx, my; + unsigned int dst_x, src_y, dst_y, y_count; + + cursor = vd->vd_mcursor; + mx = vd->vd_mx_drawn + vw->vw_offset.tp_col; + my = vd->vd_my_drawn + vw->vw_offset.tp_row; + + /* Compute the portion of the cursor we want to copy. */ + src_x = x > mx ? x - mx : 0; + dst_x = mx > x ? mx - x : 0; + x_count = min( + min(cursor->width - src_x, x + VT_VGA_PIXELS_BLOCK - mx), + VT_VGA_PIXELS_BLOCK); + + /* + * The cursor isn't aligned on the Y-axis with + * characters, so we need to compute the vertical + * start/count. + */ + src_y = y > my ? y - my : 0; + dst_y = my > y ? my - y : 0; + y_count = min( + min(cursor->height - src_y, y + vf->vf_height - my), + vf->vf_height); + + /* Copy the cursor portion. */ + vga_copy_bitmap_portion(pattern_2colors, pattern_ncolors, + cursor->map, cursor->mask, cursor->width, + src_x, dst_x, x_count, src_y, dst_y, y_count, + vd->vd_mcursor_fg, vd->vd_mcursor_bg, 1); + + if ((used_colors_list[vd->vd_mcursor_fg] & 0x1) != 0x1) + used_colors++; + if ((used_colors_list[vd->vd_mcursor_bg] & 0x2) != 0x2) + used_colors++; + } +#endif + + /* + * The pixels block is completed, we can now draw it on the + * screen. + */ + if (used_colors == 2) + vga_bitblt_pixels_block_2colors(vd, pattern_2colors, fg, bg, + x, y, vf->vf_height); + else + vga_bitblt_pixels_block_ncolors(vd, pattern_ncolors, + x, y, vf->vf_height); +} + +static void +vga_bitblt_text_gfxmode(struct vt_device *vd, const struct vt_window *vw, + const term_rect_t *area) +{ + const struct vt_font *vf; + unsigned int col, row; + unsigned int x1, y1, x2, y2, x, y; + + vf = vw->vw_font; + + /* + * Compute the top-left pixel position aligned with the video + * adapter pixels block size. + * + * This is calculated from the top-left column of te dirty area: + * + * 1. Compute the top-left pixel of the character: + * col * font width + x offset + * + * NOTE: x offset is used to center the text area on the + * screen. It's expressed in pixels, not in characters + * col/row! + * + * 2. Find the pixel further on the left marking the start of + * an aligned pixels block (eg. chunk of 8 pixels): + * character's x / blocksize * blocksize + * + * The division, being made on integers, achieves the + * alignment. + * + * For the Y-axis, we need to compute the character's y + * coordinate, but we don't need to align it. + */ + + col = area->tr_begin.tp_col; + row = area->tr_begin.tp_row; + x1 = (int)((col * vf->vf_width + vw->vw_offset.tp_col) + / VT_VGA_PIXELS_BLOCK) + * VT_VGA_PIXELS_BLOCK; + y1 = row * vf->vf_height + vw->vw_offset.tp_row; + + /* + * Compute the bottom right pixel position, again, aligned with + * the pixels block size. + * + * The same rules apply, we just add 1 to base the computation + * on the "right border" of the dirty area. + */ + + col = area->tr_end.tp_col; + row = area->tr_end.tp_row; + x2 = (int)((col * vf->vf_width + vw->vw_offset.tp_col + + VT_VGA_PIXELS_BLOCK - 1) + / VT_VGA_PIXELS_BLOCK) + * VT_VGA_PIXELS_BLOCK; + y2 = row * vf->vf_height + vw->vw_offset.tp_row; + + /* + * Clip the area to the screen size. + * + * FIXME: Take vw_offset into account. + */ + x2 = min(x2, vd->vd_width - 1); + y2 = min(y2, vd->vd_height - 1); + + /* + * Now, we take care of N pixels line at a time (the first for + * loop, N = font height), and for these lines, draw one pixels + * block at a time (the second for loop), not a character at a + * time. + * + * Therefore, on the X-axis, characters my be drawn partially if + * they are not aligned on 8-pixels boundary. + * + * However, the operation is repeated for the full height of the + * font before moving to the next character, because it allows + * to keep the color settings and write mode, before perhaps + * changing them with the next one. + */ + + for (y = y1; y < y2; y += vf->vf_height) { + for (x = x1; x < x2; x += VT_VGA_PIXELS_BLOCK) { + vga_bitblt_one_text_pixels_block(vd, vw, x, y); + } + } +} + +static void +vga_bitblt_text_txtmode(struct vt_device *vd, const struct vt_window *vw, + const term_rect_t *area) +{ + struct vga_softc *sc; + const struct vt_buf *vb; + unsigned int col, row; + term_char_t c; + term_color_t fg, bg; + uint8_t ch, attr; + + sc = vd->vd_softc; + vb = &vw->vw_buf; + + for (row = area->tr_begin.tp_row; row < area->tr_end.tp_row; ++row) { + for (col = area->tr_begin.tp_col; + col < area->tr_end.tp_col; + ++col) { + /* + * Get next character and its associated fg/bg + * colors. + */ + c = VTBUF_GET_FIELD(vb, row, col); + vt_determine_colors(c, VTBUF_ISCURSOR(vb, row, col), + &fg, &bg); + + /* + * Convert character to CP437, which is the + * character set used by the VGA hardware by + * default. + */ + ch = vga_get_cp437(TCHAR_CHARACTER(c)); + + /* Convert colors to VGA attributes. */ + attr = bg << 4 | fg; + + MEM_WRITE1(sc, 0x18000 + (row * 80 + col) * 2 + 0, + ch); + MEM_WRITE1(sc, 0x18000 + (row * 80 + col) * 2 + 1, + attr); + } + } +} + +static void +vga_bitblt_text(struct vt_device *vd, const struct vt_window *vw, + const term_rect_t *area) +{ + + if (!(vd->vd_flags & VDF_TEXTMODE)) { + vga_bitblt_text_gfxmode(vd, vw, area); + } else { + vga_bitblt_text_txtmode(vd, vw, area); + } } static void @@ -604,7 +1034,6 @@ vga_initialize(struct vt_device *vd, int textmode) * planes. */ for (ofs = 0; ofs < VT_VGA_MEMSIZE; ofs++) { - MEM_READ1(sc, ofs); MEM_WRITE1(sc, ofs, 0); } } @@ -623,6 +1052,12 @@ vga_initialize(struct vt_device *vd, int textmode) REG_WRITE1(sc, VGA_GC_DATA, 3); REG_WRITE1(sc, VGA_GC_ADDRESS, VGA_GC_ENABLE_SET_RESET); REG_WRITE1(sc, VGA_GC_DATA, 0x0f); + + /* + * Clear the colors we think are loaded into Set/Reset or + * the latches. + */ + sc->vga_curfg = sc->vga_curbg = 0xff; } } diff --git a/sys/dev/vt/vt.h b/sys/dev/vt/vt.h index 7dc90e6..e179722 100644 --- a/sys/dev/vt/vt.h +++ b/sys/dev/vt/vt.h @@ -115,6 +115,10 @@ typedef unsigned int vt_axis_t; * Per-device datastructure. */ +#ifndef SC_NO_CUTPASTE +struct vt_mouse_cursor; +#endif + struct vt_device { struct vt_window *vd_windows[VT_MAXWINDOWS]; /* (c) Windows. */ struct vt_window *vd_curwindow; /* (d) Current window. */ @@ -122,17 +126,23 @@ struct vt_device { struct vt_window *vd_markedwin; /* (?) Copy/paste buf owner. */ const struct vt_driver *vd_driver; /* (c) Graphics driver. */ void *vd_softc; /* (u) Driver data. */ - uint16_t vd_mx; /* (?) Mouse X. */ - uint16_t vd_my; /* (?) Mouse Y. */ - vt_axis_t vd_mdirtyx; /* (?) Screen width. */ - vt_axis_t vd_mdirtyy; /* (?) Screen height. */ +#ifndef SC_NO_CUTPASTE + struct vt_mouse_cursor *vd_mcursor; /* (?) Cursor bitmap. */ + term_color_t vd_mcursor_fg; /* (?) Cursor fg color. */ + term_color_t vd_mcursor_bg; /* (?) Cursor bg color. */ + vt_axis_t vd_mx_drawn; /* (?) Mouse X and Y */ + vt_axis_t vd_my_drawn; /* as of last redraw. */ + int vd_mshown; /* (?) Mouse shown during */ +#endif /* last redrawn. */ + uint16_t vd_mx; /* (?) Current mouse X. */ + uint16_t vd_my; /* (?) current mouse Y. */ uint32_t vd_mstate; /* (?) Mouse state. */ - term_pos_t vd_offset; /* (?) Pixel offset. */ vt_axis_t vd_width; /* (?) Screen width. */ vt_axis_t vd_height; /* (?) Screen height. */ struct mtx vd_lock; /* Per-device lock. */ struct cv vd_winswitch; /* (d) Window switch notify. */ struct callout vd_timer; /* (d) Display timer. */ + volatile unsigned int vd_timer_armed;/* (?) Display timer started.*/ int vd_flags; /* (d) Device flags. */ #define VDF_TEXTMODE 0x01 /* Do text mode rendering. */ #define VDF_SPLASH 0x02 /* Splash screen active. */ @@ -194,12 +204,12 @@ void vtbuf_grow(struct vt_buf *, const term_pos_t *, int); void vtbuf_putchar(struct vt_buf *, const term_pos_t *, term_char_t); void vtbuf_cursor_position(struct vt_buf *, const term_pos_t *); void vtbuf_scroll_mode(struct vt_buf *vb, int yes); +void vtbuf_dirty(struct vt_buf *vb, const term_rect_t *area); void vtbuf_undirty(struct vt_buf *, term_rect_t *, struct vt_bufmask *); void vtbuf_sethistory_size(struct vt_buf *, int); -int vtbuf_iscursor(struct vt_buf *vb, int row, int col); +int vtbuf_iscursor(const struct vt_buf *vb, int row, int col); void vtbuf_cursor_visibility(struct vt_buf *, int); #ifndef SC_NO_CUTPASTE -void vtbuf_mouse_cursor_position(struct vt_buf *vb, int col, int row); int vtbuf_set_mark(struct vt_buf *vb, int type, int col, int row); int vtbuf_get_marked_len(struct vt_buf *vb); void vtbuf_extract_marked(struct vt_buf *vb, term_char_t *buf, int sz); @@ -248,6 +258,7 @@ struct vt_window { struct terminal *vw_terminal; /* (c) Terminal. */ struct vt_buf vw_buf; /* (u) Screen buffer. */ struct vt_font *vw_font; /* (d) Graphical font. */ + term_pos_t vw_offset; /* (?) Pixel offset. */ unsigned int vw_number; /* (c) Window number. */ int vw_kbdmode; /* (?) Keyboard mode. */ char *vw_kbdsq; /* Escape sequence queue*/ @@ -277,21 +288,23 @@ struct vt_window { /* * Per-device driver routines. - * - * vd_bitbltchr is used when the driver operates in graphics mode, while - * vd_putchar is used when the driver operates in text mode - * (VDF_TEXTMODE). */ typedef int vd_init_t(struct vt_device *vd); typedef int vd_probe_t(struct vt_device *vd); typedef void vd_postswitch_t(struct vt_device *vd); typedef void vd_blank_t(struct vt_device *vd, term_color_t color); +/* + * FIXME: Remove vd_bitblt_t and vd_putchar_t, once vd_bitblt_text_t is + * provided by all drivers. + */ typedef void vd_bitbltchr_t(struct vt_device *vd, const uint8_t *src, const uint8_t *mask, int bpl, vt_axis_t top, vt_axis_t left, unsigned int width, unsigned int height, term_color_t fg, term_color_t bg); typedef void vd_putchar_t(struct vt_device *vd, term_char_t, vt_axis_t top, vt_axis_t left, term_color_t fg, term_color_t bg); +typedef void vd_bitblt_text_t(struct vt_device *vd, const struct vt_window *vw, + const term_rect_t *area); typedef int vd_fb_ioctl_t(struct vt_device *, u_long, caddr_t, struct thread *); typedef int vd_fb_mmap_t(struct vt_device *, vm_ooffset_t, vm_paddr_t *, int, vm_memattr_t *); @@ -307,9 +320,10 @@ struct vt_driver { /* Drawing. */ vd_blank_t *vd_blank; - vd_bitbltchr_t *vd_bitbltchr; + vd_bitbltchr_t *vd_bitbltchr; /* FIXME: Deprecated. */ vd_drawrect_t *vd_drawrect; vd_setpixel_t *vd_setpixel; + vd_bitblt_text_t *vd_bitblt_text; /* Framebuffer ioctls, if present. */ vd_fb_ioctl_t *vd_fb_ioctl; @@ -318,7 +332,7 @@ struct vt_driver { vd_fb_mmap_t *vd_fb_mmap; /* Text mode operation. */ - vd_putchar_t *vd_putchar; + vd_putchar_t *vd_putchar; /* FIXME: Deprecated. */ /* Update display setting on vt switch. */ vd_postswitch_t *vd_postswitch; @@ -377,11 +391,11 @@ struct vt_font { }; #ifndef SC_NO_CUTPASTE -struct mouse_cursor { +struct vt_mouse_cursor { uint8_t map[64 * 64 / 8]; uint8_t mask[64 * 64 / 8]; - uint8_t w; - uint8_t h; + uint8_t width; + uint8_t height; }; #endif @@ -399,5 +413,11 @@ void vt_mouse_state(int show); #define VT_MOUSE_SHOW 1 #define VT_MOUSE_HIDE 0 +/* Utilities. */ +void vt_determine_colors(term_char_t c, int cursor, + term_color_t *fg, term_color_t *bg); +int vt_is_cursor_in_area(const struct vt_device *vd, + const term_rect_t *area); + #endif /* !_DEV_VT_VT_H_ */ diff --git a/sys/dev/vt/vt_buf.c b/sys/dev/vt/vt_buf.c index 4003ce8..80fcd48 100644 --- a/sys/dev/vt/vt_buf.c +++ b/sys/dev/vt/vt_buf.c @@ -148,7 +148,7 @@ vtbuf_wth(struct vt_buf *vb, int row) /* Translate history row to current view row number. */ static int -vtbuf_htw(struct vt_buf *vb, int row) +vtbuf_htw(const struct vt_buf *vb, int row) { /* @@ -162,7 +162,7 @@ vtbuf_htw(struct vt_buf *vb, int row) } int -vtbuf_iscursor(struct vt_buf *vb, int row, int col) +vtbuf_iscursor(const struct vt_buf *vb, int row, int col) { int sc, sr, ec, er, tmp; @@ -246,7 +246,7 @@ vtbuf_dirty_locked(struct vt_buf *vb, const term_rect_t *area) vtbuf_dirty_axis(area->tr_begin.tp_col, area->tr_end.tp_col); } -static inline void +void vtbuf_dirty(struct vt_buf *vb, const term_rect_t *area) { @@ -558,18 +558,6 @@ vtbuf_cursor_position(struct vt_buf *vb, const term_pos_t *p) } #ifndef SC_NO_CUTPASTE -void -vtbuf_mouse_cursor_position(struct vt_buf *vb, int col, int row) -{ - term_rect_t area; - - area.tr_begin.tp_row = MAX(row - 1, 0); - area.tr_begin.tp_col = MAX(col - 1, 0); - area.tr_end.tp_row = MIN(row + 2, vb->vb_scr_size.tp_row); - area.tr_end.tp_col = MIN(col + 2, vb->vb_scr_size.tp_col); - vtbuf_dirty(vb, &area); -} - static void vtbuf_flush_mark(struct vt_buf *vb) { diff --git a/sys/dev/vt/vt_core.c b/sys/dev/vt/vt_core.c index fbffa9c..0c40e63 100644 --- a/sys/dev/vt/vt_core.c +++ b/sys/dev/vt/vt_core.c @@ -134,7 +134,7 @@ extern unsigned char vt_logo_image[]; /* Font. */ extern struct vt_font vt_font_default; #ifndef SC_NO_CUTPASTE -extern struct mouse_cursor vt_default_mouse_pointer; +extern struct vt_mouse_cursor vt_default_mouse_pointer; #endif static int signal_vt_rel(struct vt_window *); @@ -162,6 +162,12 @@ static struct vt_device vt_consdev = { .vd_curwindow = &vt_conswindow, .vd_markedwin = NULL, .vd_kbstate = 0, + +#ifndef SC_NO_CUTPASTE + .vd_mcursor = &vt_default_mouse_pointer, + .vd_mcursor_fg = TC_WHITE, + .vd_mcursor_bg = TC_BLACK, +#endif }; static term_char_t vt_constextbuf[(_VTDEFW) * (VBF_DEFAULT_HISTORY_SIZE)]; static term_char_t *vt_constextbufrows[VBF_DEFAULT_HISTORY_SIZE]; @@ -228,6 +234,37 @@ vt_update_static(void *dummy) } static void +vt_schedule_flush(struct vt_device *vd, int ms) +{ + + if (ms <= 0) + /* Default to initial value. */ + ms = 1000 / VT_TIMERFREQ; + + callout_schedule(&vd->vd_timer, hz / (1000 / ms)); +} + +static void +vt_resume_flush_timer(struct vt_device *vd, int ms) +{ + + if (!atomic_cmpset_int(&vd->vd_timer_armed, 0, 1)) + return; + + vt_schedule_flush(vd, ms); +} + +static void +vt_suspend_flush_timer(struct vt_device *vd) +{ + + if (!atomic_cmpset_int(&vd->vd_timer_armed, 1, 0)) + return; + + callout_drain(&vd->vd_timer); +} + +static void vt_switch_timer(void *arg) { @@ -330,6 +367,8 @@ vt_window_switch(struct vt_window *vw) return (EINVAL); } + vt_suspend_flush_timer(vd); + vd->vd_curwindow = vw; vd->vd_flags |= VDF_INVALID; cv_broadcast(&vd->vd_winswitch); @@ -338,6 +377,8 @@ vt_window_switch(struct vt_window *vw) if (vd->vd_driver->vd_postswitch) vd->vd_driver->vd_postswitch(vd); + vt_resume_flush_timer(vd, 0); + /* Restore per-window keyboard mode. */ mtx_lock(&Giant); kbd = kbd_get_keyboard(vd->vd_keyboard); @@ -387,7 +428,7 @@ vt_scroll(struct vt_window *vw, int offset, int whence) diff = vthistory_seek(&vw->vw_buf, offset, whence); /* - * Offset changed, please update Nth lines on sceen. + * Offset changed, please update Nth lines on screen. * +N - Nth lines at top; * -N - Nth lines at bottom. */ @@ -751,7 +792,7 @@ vtterm_param(struct terminal *tm, int cmd, unsigned int arg) } } -static inline void +void vt_determine_colors(term_char_t c, int cursor, term_color_t *fg, term_color_t *bg) { @@ -777,6 +818,75 @@ vt_determine_colors(term_char_t c, int cursor, } } +#ifndef SC_NO_CUTPASTE +int +vt_is_cursor_in_area(const struct vt_device *vd, const term_rect_t *area) +{ + unsigned int mx, my, x1, y1, x2, y2; + + /* + * We use the cursor position saved during the current refresh, + * in case the cursor moved since. + */ + mx = vd->vd_mx_drawn; + my = vd->vd_my_drawn; + + x1 = area->tr_begin.tp_col; + y1 = area->tr_begin.tp_row; + x2 = area->tr_end.tp_col; + y2 = area->tr_end.tp_row; + + if (((mx >= x1 && x2 - 1 >= mx) || + (mx < x1 && mx + vd->vd_mcursor->width >= x1)) && + ((my >= y1 && y2 - 1 >= my) || + (my < y1 && my + vd->vd_mcursor->height >= y1))) + return (1); + + return (0); +} + +static void +vt_mark_mouse_position_as_dirty(struct vt_device *vd) +{ + term_rect_t area; + struct vt_window *vw; + struct vt_font *vf; + int x, y; + + vw = vd->vd_curwindow; + vf = vw->vw_font; + + x = vd->vd_mx_drawn; + y = vd->vd_my_drawn; + + if (vf != NULL) { + area.tr_begin.tp_col = (x - vw->vw_offset.tp_col) / + vf->vf_width; + area.tr_begin.tp_row = (y - vw->vw_offset.tp_row) / + vf->vf_height; + area.tr_end.tp_col = + ((x + vd->vd_mcursor->width - vw->vw_offset.tp_col) / + vf->vf_width) + 1; + area.tr_end.tp_row = + ((y + vd->vd_mcursor->height - vw->vw_offset.tp_row) / + vf->vf_height) + 1; + } else { + /* + * No font loaded (ie. vt_vga operating in textmode). + * + * FIXME: This fake area needs to be revisited once the + * mouse cursor is supported in vt_vga's textmode. + */ + area.tr_begin.tp_col = x; + area.tr_begin.tp_row = y; + area.tr_end.tp_col = x + 2; + area.tr_end.tp_row = y + 2; + } + + vtbuf_dirty(&vw->vw_buf, &area); +} +#endif + static void vt_bitblt_char(struct vt_device *vd, struct vt_font *vf, term_char_t c, int iscursor, unsigned int row, unsigned int col) @@ -796,8 +906,8 @@ vt_bitblt_char(struct vt_device *vd, struct vt_font *vf, term_char_t c, * Fonts may not always be able to fill the entire * screen. */ - top = row * vf->vf_height + vd->vd_offset.tp_row; - left = col * vf->vf_width + vd->vd_offset.tp_col; + top = row * vf->vf_height + vd->vd_curwindow->vw_offset.tp_row; + left = col * vf->vf_width + vd->vd_curwindow->vw_offset.tp_col; vd->vd_driver->vd_bitbltchr(vd, src, NULL, 0, top, left, vf->vf_width, vf->vf_height, fg, bg); @@ -818,19 +928,57 @@ vt_flush(struct vt_device *vd) term_pos_t size; term_char_t *r; #ifndef SC_NO_CUTPASTE - struct mouse_cursor *m; - int bpl, h, w; + int cursor_was_shown, cursor_moved, bpl, h, w; #endif vw = vd->vd_curwindow; if (vw == NULL) return; + + if (vd->vd_flags & VDF_SPLASH || vw->vw_flags & VWF_BUSY) + return; + vf = vw->vw_font; if (((vd->vd_flags & VDF_TEXTMODE) == 0) && (vf == NULL)) return; - if (vd->vd_flags & VDF_SPLASH || vw->vw_flags & VWF_BUSY) - return; +#ifndef SC_NO_CUTPASTE + cursor_was_shown = vd->vd_mshown; + cursor_moved = (vd->vd_mx != vd->vd_mx_drawn || + vd->vd_my != vd->vd_my_drawn); + + /* Check if the cursor should be displayed or not. */ + if ((vd->vd_flags & VDF_MOUSECURSOR) && /* Mouse support enabled. */ + !(vw->vw_flags & VWF_MOUSE_HIDE) && /* Cursor displayed. */ + !kdb_active && panicstr == NULL) { /* DDB inactive. */ + vd->vd_mshown = 1; + } else { + vd->vd_mshown = 0; + } + + /* + * If the cursor changed display state or moved, we must mark + * the old position as dirty, so that it's erased. + */ + if (cursor_was_shown != vd->vd_mshown || + (vd->vd_mshown && cursor_moved)) + vt_mark_mouse_position_as_dirty(vd); + + /* + * Save position of the mouse cursor. It's used by backends to + * know where to draw the cursor and during the next refresh to + * erase the previous position. + */ + vd->vd_mx_drawn = vd->vd_mx; + vd->vd_my_drawn = vd->vd_my; + + /* + * If the cursor is displayed and has moved since last refresh, + * mark the new position as dirty. + */ + if (vd->vd_mshown && cursor_moved) + vt_mark_mouse_position_as_dirty(vd); +#endif vtbuf_undirty(&vw->vw_buf, &tarea, &tmask); vt_termsize(vd, vf, &size); @@ -844,58 +992,51 @@ vt_flush(struct vt_device *vd) vd->vd_flags &= ~VDF_INVALID; } -#ifndef SC_NO_CUTPASTE - if ((vw->vw_flags & VWF_MOUSE_HIDE) == 0) { - /* Mark last mouse position as dirty to erase. */ - vtbuf_mouse_cursor_position(&vw->vw_buf, vd->vd_mdirtyx, - vd->vd_mdirtyy); - } -#endif - - for (row = tarea.tr_begin.tp_row; row < tarea.tr_end.tp_row; row++) { - if (!VTBUF_DIRTYROW(&tmask, row)) - continue; - r = VTBUF_GET_ROW(&vw->vw_buf, row); - for (col = tarea.tr_begin.tp_col; - col < tarea.tr_end.tp_col; col++) { - if (!VTBUF_DIRTYCOL(&tmask, col)) + if (vd->vd_driver->vd_bitblt_text != NULL) { + if (tarea.tr_begin.tp_col < tarea.tr_end.tp_col) { + vd->vd_driver->vd_bitblt_text(vd, vw, &tarea); + } + } else { + /* + * FIXME: Once all backend drivers expose the + * vd_bitblt_text_t callback, this code can be removed. + */ + for (row = tarea.tr_begin.tp_row; row < tarea.tr_end.tp_row; row++) { + if (!VTBUF_DIRTYROW(&tmask, row)) continue; + r = VTBUF_GET_ROW(&vw->vw_buf, row); + for (col = tarea.tr_begin.tp_col; + col < tarea.tr_end.tp_col; col++) { + if (!VTBUF_DIRTYCOL(&tmask, col)) + continue; - vt_bitblt_char(vd, vf, r[col], - VTBUF_ISCURSOR(&vw->vw_buf, row, col), row, col); + vt_bitblt_char(vd, vf, r[col], + VTBUF_ISCURSOR(&vw->vw_buf, row, col), row, col); + } } - } #ifndef SC_NO_CUTPASTE - /* Mouse disabled. */ - if (vw->vw_flags & VWF_MOUSE_HIDE) - return; - - /* No mouse for DDB. */ - if (kdb_active || panicstr != NULL) - return; - - if ((vd->vd_flags & (VDF_MOUSECURSOR|VDF_TEXTMODE)) == - VDF_MOUSECURSOR) { - m = &vt_default_mouse_pointer; - bpl = (m->w + 7) >> 3; /* Bytes per source line. */ - w = m->w; - h = m->h; - - if ((vd->vd_mx + m->w) > (size.tp_col * vf->vf_width)) - w = (size.tp_col * vf->vf_width) - vd->vd_mx - 1; - if ((vd->vd_my + m->h) > (size.tp_row * vf->vf_height)) - h = (size.tp_row * vf->vf_height) - vd->vd_my - 1; - - vd->vd_driver->vd_bitbltchr(vd, m->map, m->mask, bpl, - vd->vd_offset.tp_row + vd->vd_my, - vd->vd_offset.tp_col + vd->vd_mx, - w, h, TC_WHITE, TC_BLACK); - /* Save point of last mouse cursor to erase it later. */ - vd->vd_mdirtyx = vd->vd_mx / vf->vf_width; - vd->vd_mdirtyy = vd->vd_my / vf->vf_height; - } + if (vd->vd_mshown) { + /* Bytes per source line. */ + bpl = (vd->vd_mcursor->width + 7) >> 3; + w = vd->vd_mcursor->width; + h = vd->vd_mcursor->height; + + if ((vd->vd_mx + vd->vd_mcursor->width) > + (size.tp_col * vf->vf_width)) + w = (size.tp_col * vf->vf_width) - vd->vd_mx - 1; + if ((vd->vd_my + vd->vd_mcursor->height) > + (size.tp_row * vf->vf_height)) + h = (size.tp_row * vf->vf_height) - vd->vd_my - 1; + + vd->vd_driver->vd_bitbltchr(vd, + vd->vd_mcursor->map, vd->vd_mcursor->mask, bpl, + vw->vw_offset.tp_row + vd->vd_my, + vw->vw_offset.tp_col + vd->vd_mx, + w, h, vd->vd_mcursor_fg, vd->vd_mcursor_bg); + } #endif + } } static void @@ -908,7 +1049,7 @@ vt_timer(void *arg) vt_flush(vd); /* Schedule for next update. */ - callout_schedule(&vd->vd_timer, hz / VT_TIMERFREQ); + vt_schedule_flush(vd, 0); } static void @@ -1128,6 +1269,35 @@ vtterm_opened(struct terminal *tm, int opened) } static int +vt_set_border(struct vt_window *vw, struct vt_font *vf, term_color_t c) +{ + struct vt_device *vd = vw->vw_device; + int x, y, off_x, off_y; + + if (vd->vd_driver->vd_drawrect == NULL) + return (ENOTSUP); + + x = vd->vd_width - 1; + y = vd->vd_height - 1; + off_x = vw->vw_offset.tp_col; + off_y = vw->vw_offset.tp_row; + + /* Top bar. */ + if (off_y > 0) + vd->vd_driver->vd_drawrect(vd, 0, 0, x, off_y - 1, 1, c); + /* Left bar. */ + if (off_x > 0) + vd->vd_driver->vd_drawrect(vd, 0, off_y, off_x - 1, y - off_y, + 1, c); + /* Right bar. May be 1 pixel wider than necessary due to rounding. */ + vd->vd_driver->vd_drawrect(vd, x - off_x, off_y, x, y - off_y, 1, c); + /* Bottom bar. May be 1 mixel taller than necessary due to rounding. */ + vd->vd_driver->vd_drawrect(vd, 0, y - off_y, x, y, 1, c); + + return (0); +} + +static int vt_change_font(struct vt_window *vw, struct vt_font *vf) { struct vt_device *vd = vw->vw_device; @@ -1165,8 +1335,8 @@ vt_change_font(struct vt_window *vw, struct vt_font *vf) vt_termsize(vd, vf, &size); vt_winsize(vd, vf, &wsz); /* Save offset to font aligned area. */ - vd->vd_offset.tp_col = (vd->vd_width % vf->vf_width) / 2; - vd->vd_offset.tp_row = (vd->vd_height % vf->vf_height) / 2; + vw->vw_offset.tp_col = (vd->vd_width % vf->vf_width) / 2; + vw->vw_offset.tp_row = (vd->vd_height % vf->vf_height) / 2; /* Grow the screen buffer and terminal. */ terminal_mute(tm, 1); @@ -1186,43 +1356,16 @@ vt_change_font(struct vt_window *vw, struct vt_font *vf) } /* Force a full redraw the next timer tick. */ - if (vd->vd_curwindow == vw) + if (vd->vd_curwindow == vw) { + vt_set_border(vw, vf, TC_BLACK); vd->vd_flags |= VDF_INVALID; + } vw->vw_flags &= ~VWF_BUSY; VT_UNLOCK(vd); return (0); } static int -vt_set_border(struct vt_window *vw, struct vt_font *vf, term_color_t c) -{ - struct vt_device *vd = vw->vw_device; - int x, y, off_x, off_y; - - if (vd->vd_driver->vd_drawrect == NULL) - return (ENOTSUP); - - x = vd->vd_width - 1; - y = vd->vd_height - 1; - off_x = vd->vd_offset.tp_col; - off_y = vd->vd_offset.tp_row; - - /* Top bar. */ - if (off_y > 0) - vd->vd_driver->vd_drawrect(vd, 0, 0, x, off_y - 1, 1, c); - /* Left bar. */ - if (off_x > 0) - vd->vd_driver->vd_drawrect(vd, 0, off_y, off_x - 1, y - off_y, - 1, c); - /* Right bar. May be 1 pixel wider than necessary due to rounding. */ - vd->vd_driver->vd_drawrect(vd, x - off_x, off_y, x, y - off_y, 1, c); - /* Bottom bar. May be 1 mixel taller than necessary due to rounding. */ - vd->vd_driver->vd_drawrect(vd, 0, y - off_y, x, y, 1, c); - - return (0); -} - -static int vt_proc_alive(struct vt_window *vw) { struct proc *p; @@ -1531,6 +1674,9 @@ vt_mouse_state(int show) vw->vw_flags &= ~VWF_MOUSE_HIDE; break; } + + /* Mark mouse position as dirty. */ + vt_mark_mouse_position_as_dirty(vd); } #endif @@ -1703,7 +1849,7 @@ skip_thunk: /* XXX: other fields! */ return (0); } - case CONS_GETVERS: + case CONS_GETVERS: *(int *)data = 0x200; return (0); case CONS_MODEINFO: @@ -1713,20 +1859,28 @@ skip_thunk: mouse_info_t *mouse = (mouse_info_t*)data; /* - * This has no effect on vt(4). We don't draw any mouse - * cursor. Just ignore MOUSE_HIDE and MOUSE_SHOW to - * prevent excessive errors. All the other commands + * All the commands except MOUSE_SHOW nd MOUSE_HIDE * should not be applied to individual TTYs, but only to * consolectl. */ switch (mouse->operation) { case MOUSE_HIDE: - vd->vd_flags &= ~VDF_MOUSECURSOR; + if (vd->vd_flags & VDF_MOUSECURSOR) { + vd->vd_flags &= ~VDF_MOUSECURSOR; +#ifndef SC_NO_CUTPASTE + vt_mouse_state(VT_MOUSE_HIDE); +#endif + } return (0); case MOUSE_SHOW: - vd->vd_mx = vd->vd_width / 2; - vd->vd_my = vd->vd_height / 2; - vd->vd_flags |= VDF_MOUSECURSOR; + if (!(vd->vd_flags & VDF_MOUSECURSOR)) { + vd->vd_flags |= VDF_MOUSECURSOR; + vd->vd_mx = vd->vd_width / 2; + vd->vd_my = vd->vd_height / 2; +#ifndef SC_NO_CUTPASTE + vt_mouse_state(VT_MOUSE_SHOW); +#endif + } return (0); default: return (EINVAL); @@ -1740,16 +1894,11 @@ skip_thunk: return (error); error = vt_change_font(vw, vf); - if (error == 0) { - /* XXX: replace 0 with current bg color. */ - vt_set_border(vw, vf, 0); - } vtfont_unref(vf); return (error); } case GIO_SCRNMAP: { scrmap_t *sm = (scrmap_t *)data; - int i; /* We don't have screen maps, so return a handcrafted one. */ for (i = 0; i < 256; i++) @@ -2047,6 +2196,7 @@ vt_upgrade(struct vt_device *vd) /* Start timer when everything ready. */ vd->vd_flags |= VDF_ASYNC; callout_reset(&vd->vd_timer, hz / VT_TIMERFREQ, vt_timer, vd); + vd->vd_timer_armed = 1; } VT_UNLOCK(vd); @@ -2106,7 +2256,7 @@ vt_allocate(struct vt_driver *drv, void *softc) if (vd->vd_flags & VDF_ASYNC) { /* Stop vt_flush periodic task. */ - callout_drain(&vd->vd_timer); + vt_suspend_flush_timer(vd); /* * Mute current terminal until we done. vt_change_font (called * from vt_resize) will unmute it. @@ -2137,7 +2287,7 @@ vt_allocate(struct vt_driver *drv, void *softc) /* Allow to put chars now. */ terminal_mute(vd->vd_curwindow->vw_terminal, 0); /* Rerun timer for screen updates. */ - callout_schedule(&vd->vd_timer, hz / VT_TIMERFREQ); + vt_resume_flush_timer(vd, 0); } /* diff --git a/sys/dev/vt/vt_sysmouse.c b/sys/dev/vt/vt_sysmouse.c index 21b2400..189bcad 100644 --- a/sys/dev/vt/vt_sysmouse.c +++ b/sys/dev/vt/vt_sysmouse.c @@ -347,9 +347,6 @@ sysmouse_ioctl(struct cdev *dev, u_long cmd, caddr_t data, int flag, return (EINVAL); sysmouse_level = level; -#ifndef SC_NO_CUTPASTE - vt_mouse_state((level == 0)?VT_MOUSE_SHOW:VT_MOUSE_HIDE); -#endif return (0); } case MOUSE_SETMODE: { @@ -362,10 +359,6 @@ sysmouse_ioctl(struct cdev *dev, u_long cmd, caddr_t data, int flag, case 0: case 1: sysmouse_level = mode->level; -#ifndef SC_NO_CUTPASTE - vt_mouse_state((mode->level == 0)?VT_MOUSE_SHOW: - VT_MOUSE_HIDE); -#endif break; default: return (EINVAL); diff --git a/sys/dev/xen/blkback/blkback.c b/sys/dev/xen/blkback/blkback.c index f2f2698..654f307 100644 --- a/sys/dev/xen/blkback/blkback.c +++ b/sys/dev/xen/blkback/blkback.c @@ -3852,17 +3852,17 @@ xbb_detach(device_t dev) xbb_close_backend(xbb); if (xbb->dev_mode != NULL) { - free(xbb->dev_mode, M_XENBUS); + free(xbb->dev_mode, M_XENSTORE); xbb->dev_mode = NULL; } if (xbb->dev_type != NULL) { - free(xbb->dev_type, M_XENBUS); + free(xbb->dev_type, M_XENSTORE); xbb->dev_type = NULL; } if (xbb->dev_name != NULL) { - free(xbb->dev_name, M_XENBUS); + free(xbb->dev_name, M_XENSTORE); xbb->dev_name = NULL; } diff --git a/sys/dev/xen/netback/netback.c b/sys/dev/xen/netback/netback.c index 6dec664..b0f206e 100644 --- a/sys/dev/xen/netback/netback.c +++ b/sys/dev/xen/netback/netback.c @@ -152,7 +152,6 @@ static void xnb_attach_failed(struct xnb_softc *xnb, static int xnb_shutdown(struct xnb_softc *xnb); static int create_netdev(device_t dev); static int xnb_detach(device_t dev); -static int xen_net_read_mac(device_t dev, uint8_t mac[]); static int xnb_ifmedia_upd(struct ifnet *ifp); static void xnb_ifmedia_sts(struct ifnet *ifp, struct ifmediareq *ifmr); static void xnb_intr(void *arg); @@ -652,7 +651,8 @@ xnb_disconnect(struct xnb_softc *xnb) int error; int i; - xen_intr_unbind(xnb->xen_intr_handle); + if (xnb->xen_intr_handle != NULL) + xen_intr_unbind(&xnb->xen_intr_handle); /* * We may still have another thread currently processing requests. We @@ -666,8 +666,10 @@ xnb_disconnect(struct xnb_softc *xnb) mtx_unlock(&xnb->rx_lock); /* Free malloc'd softc member variables */ - if (xnb->bridge != NULL) + if (xnb->bridge != NULL) { free(xnb->bridge, M_XENSTORE); + xnb->bridge = NULL; + } /* All request processing has stopped, so unmap the rings */ for (i=0; i < XNB_NUM_RING_TYPES; i++) { @@ -1211,7 +1213,18 @@ create_netdev(device_t dev) ifmedia_add(&xnb->sc_media, IFM_ETHER|IFM_MANUAL, 0, NULL); ifmedia_set(&xnb->sc_media, IFM_ETHER|IFM_MANUAL); - err = xen_net_read_mac(dev, xnb->mac); + /* + * Set the MAC address to a dummy value (00:00:00:00:00), + * if the MAC address of the host-facing interface is set + * to the same as the guest-facing one (the value found in + * xenstore), the bridge would stop delivering packets to + * us because it would see that the destination address of + * the packet is the same as the interface, and so the bridge + * would expect the packet has already been delivered locally + * (and just drop it). + */ + bzero(&xnb->mac[0], sizeof(xnb->mac)); + if (err == 0) { /* Set up ifnet structure */ ifp = xnb->xnb_ifp = if_alloc(IFT_ETHER); @@ -2453,42 +2466,6 @@ xnb_ifinit(void *xsc) mtx_unlock(&xnb->sc_lock); } - -/** - * Read the 'mac' node at the given device's node in the store, and parse that - * as colon-separated octets, placing result the given mac array. mac must be - * a preallocated array of length ETHER_ADDR_LEN ETH_ALEN (as declared in - * net/ethernet.h). - * Return 0 on success, or errno on error. - */ -static int -xen_net_read_mac(device_t dev, uint8_t mac[]) -{ - char *s, *e, *macstr; - const char *path; - int error = 0; - int i; - - path = xenbus_get_node(dev); - error = xs_read(XST_NIL, path, "mac", NULL, (void **) &macstr); - if (error != 0) { - xenbus_dev_fatal(dev, error, "parsing %s/mac", path); - } else { - s = macstr; - for (i = 0; i < ETHER_ADDR_LEN; i++) { - mac[i] = strtoul(s, &e, 16); - if (s == e || (e[0] != ':' && e[0] != 0)) { - error = ENOENT; - break; - } - s = &e[1]; - } - free(macstr, M_XENBUS); - } - return error; -} - - /** * Callback used by the generic networking code to tell us when our carrier * state has changed. Since we don't have a physical carrier, we don't care diff --git a/sys/fs/autofs/autofs.c b/sys/fs/autofs/autofs.c new file mode 100644 index 0000000..eeaf705 --- /dev/null +++ b/sys/fs/autofs/autofs.c @@ -0,0 +1,653 @@ +/*- + * Copyright (c) 2014 The FreeBSD Foundation + * All rights reserved. + * + * This software was developed by Edward Tomasz Napierala under sponsorship + * from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + */ +/*- + * Copyright (c) 1989, 1991, 1993, 1995 + * The Regents of the University of California. All rights reserved. + * + * This code is derived from software contributed to Berkeley by + * Rick Macklem at The University of Guelph. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 4. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + */ + +#include <sys/cdefs.h> + __FBSDID("$FreeBSD$"); + +#include <sys/param.h> +#include <sys/systm.h> +#include <sys/buf.h> +#include <sys/conf.h> +#include <sys/dirent.h> +#include <sys/ioccom.h> +#include <sys/kernel.h> +#include <sys/module.h> +#include <sys/mount.h> +#include <sys/refcount.h> +#include <sys/sx.h> +#include <sys/sysctl.h> +#include <sys/syscallsubr.h> +#include <sys/vnode.h> +#include <machine/atomic.h> +#include <vm/uma.h> + +#include <fs/autofs/autofs.h> +#include <fs/autofs/autofs_ioctl.h> + +MALLOC_DEFINE(M_AUTOFS, "autofs", "Automounter filesystem"); + +uma_zone_t autofs_request_zone; +uma_zone_t autofs_node_zone; + +static int autofs_open(struct cdev *dev, int flags, int fmt, + struct thread *td); +static int autofs_close(struct cdev *dev, int flag, int fmt, + struct thread *td); +static int autofs_ioctl(struct cdev *dev, u_long cmd, caddr_t arg, + int mode, struct thread *td); + +static struct cdevsw autofs_cdevsw = { + .d_version = D_VERSION, + .d_open = autofs_open, + .d_close = autofs_close, + .d_ioctl = autofs_ioctl, + .d_name = "autofs", +}; + +/* + * List of signals that can interrupt an autofs trigger. Might be a good + * idea to keep it synchronised with list in sys/fs/nfs/nfs_commonkrpc.c. + */ +int autofs_sig_set[] = { + SIGINT, + SIGTERM, + SIGHUP, + SIGKILL, + SIGQUIT +}; + +struct autofs_softc *autofs_softc; + +SYSCTL_NODE(_vfs, OID_AUTO, autofs, CTLFLAG_RD, 0, "Automounter filesystem"); +int autofs_debug = 1; +TUNABLE_INT("vfs.autofs.debug", &autofs_debug); +SYSCTL_INT(_vfs_autofs, OID_AUTO, debug, CTLFLAG_RWTUN, + &autofs_debug, 1, "Enable debug messages"); +int autofs_mount_on_stat = 0; +TUNABLE_INT("vfs.autofs.mount_on_stat", &autofs_mount_on_stat); +SYSCTL_INT(_vfs_autofs, OID_AUTO, mount_on_stat, CTLFLAG_RWTUN, + &autofs_mount_on_stat, 0, "Trigger mount on stat(2) on mountpoint"); +int autofs_timeout = 30; +TUNABLE_INT("vfs.autofs.timeout", &autofs_timeout); +SYSCTL_INT(_vfs_autofs, OID_AUTO, timeout, CTLFLAG_RWTUN, + &autofs_timeout, 30, "Number of seconds to wait for automountd(8)"); +int autofs_cache = 600; +TUNABLE_INT("vfs.autofs.cache", &autofs_cache); +SYSCTL_INT(_vfs_autofs, OID_AUTO, cache, CTLFLAG_RWTUN, + &autofs_cache, 600, "Number of seconds to wait before reinvoking " + "automountd(8) for any given file or directory"); +int autofs_retry_attempts = 3; +TUNABLE_INT("vfs.autofs.retry_attempts", &autofs_retry_attempts); +SYSCTL_INT(_vfs_autofs, OID_AUTO, retry_attempts, CTLFLAG_RWTUN, + &autofs_retry_attempts, 3, "Number of attempts before failing mount"); +int autofs_retry_delay = 1; +TUNABLE_INT("vfs.autofs.retry_delay", &autofs_retry_delay); +SYSCTL_INT(_vfs_autofs, OID_AUTO, retry_delay, CTLFLAG_RWTUN, + &autofs_retry_delay, 1, "Number of seconds before retrying"); +int autofs_interruptible = 1; +TUNABLE_INT("vfs.autofs.interruptible", &autofs_interruptible); +SYSCTL_INT(_vfs_autofs, OID_AUTO, interruptible, CTLFLAG_RWTUN, + &autofs_interruptible, 1, "Allow requests to be interrupted by signal"); + +int +autofs_init(struct vfsconf *vfsp) +{ + int error; + + KASSERT(autofs_softc == NULL, + ("softc %p, should be NULL", autofs_softc)); + + autofs_softc = malloc(sizeof(*autofs_softc), M_AUTOFS, + M_WAITOK | M_ZERO); + + autofs_request_zone = uma_zcreate("autofs_request", + sizeof(struct autofs_request), NULL, NULL, NULL, NULL, + UMA_ALIGN_PTR, 0); + autofs_node_zone = uma_zcreate("autofs_node", + sizeof(struct autofs_node), NULL, NULL, NULL, NULL, + UMA_ALIGN_PTR, 0); + + TAILQ_INIT(&autofs_softc->sc_requests); + cv_init(&autofs_softc->sc_cv, "autofscv"); + sx_init(&autofs_softc->sc_lock, "autofslk"); + + error = make_dev_p(MAKEDEV_CHECKNAME, &autofs_softc->sc_cdev, + &autofs_cdevsw, NULL, UID_ROOT, GID_WHEEL, 0600, "autofs"); + if (error != 0) { + AUTOFS_WARN("failed to create device node, error %d", error); + uma_zdestroy(autofs_request_zone); + uma_zdestroy(autofs_node_zone); + free(autofs_softc, M_AUTOFS); + + return (error); + } + autofs_softc->sc_cdev->si_drv1 = autofs_softc; + + return (0); +} + +int +autofs_uninit(struct vfsconf *vfsp) +{ + + sx_xlock(&autofs_softc->sc_lock); + if (autofs_softc->sc_dev_opened) { + sx_xunlock(&autofs_softc->sc_lock); + return (EBUSY); + } + if (autofs_softc->sc_cdev != NULL) + destroy_dev(autofs_softc->sc_cdev); + + uma_zdestroy(autofs_request_zone); + uma_zdestroy(autofs_node_zone); + + sx_xunlock(&autofs_softc->sc_lock); + /* + * XXX: Race with open? + */ + free(autofs_softc, M_AUTOFS); + + return (0); +} + +bool +autofs_ignore_thread(const struct thread *td) +{ + struct proc *p; + + p = td->td_proc; + + if (autofs_softc->sc_dev_opened == false) + return (false); + + PROC_LOCK(p); + if (p->p_session->s_sid == autofs_softc->sc_dev_sid) { + PROC_UNLOCK(p); + return (true); + } + PROC_UNLOCK(p); + + return (false); +} + +static char * +autofs_path(struct autofs_node *anp) +{ + struct autofs_mount *amp; + char *path, *tmp; + + amp = anp->an_mount; + + path = strdup("", M_AUTOFS); + for (; anp->an_parent != NULL; anp = anp->an_parent) { + tmp = malloc(strlen(anp->an_name) + strlen(path) + 2, + M_AUTOFS, M_WAITOK); + strcpy(tmp, anp->an_name); + strcat(tmp, "/"); + strcat(tmp, path); + free(path, M_AUTOFS); + path = tmp; + } + + tmp = malloc(strlen(amp->am_mountpoint) + strlen(path) + 2, + M_AUTOFS, M_WAITOK); + strcpy(tmp, amp->am_mountpoint); + strcat(tmp, "/"); + strcat(tmp, path); + free(path, M_AUTOFS); + path = tmp; + + return (path); +} + +static void +autofs_callout(void *context) +{ + struct autofs_request *ar; + + ar = context; + + sx_xlock(&autofs_softc->sc_lock); + AUTOFS_WARN("request %d for %s timed out after %d seconds", + ar->ar_id, ar->ar_path, autofs_timeout); + /* + * XXX: EIO perhaps? + */ + ar->ar_error = ETIMEDOUT; + ar->ar_done = true; + ar->ar_in_progress = false; + cv_broadcast(&autofs_softc->sc_cv); + sx_xunlock(&autofs_softc->sc_lock); +} + +bool +autofs_cached(struct autofs_node *anp, const char *component, int componentlen) +{ + int error; + struct autofs_mount *amp; + + amp = anp->an_mount; + + AUTOFS_ASSERT_UNLOCKED(amp); + + /* + * For top-level nodes we need to request automountd(8) + * assistance even if the node is marked as cached, + * but the requested subdirectory does not exist. This + * is necessary for wildcard indirect map keys to work. + */ + if (anp->an_parent == NULL && componentlen != 0) { + AUTOFS_LOCK(amp); + error = autofs_node_find(anp, component, componentlen, NULL); + AUTOFS_UNLOCK(amp); + if (error != 0) + return (false); + } + + return (anp->an_cached); +} + +static void +autofs_cache_callout(void *context) +{ + struct autofs_node *anp; + + anp = context; + anp->an_cached = false; +} + +/* + * The set/restore sigmask functions are used to (temporarily) overwrite + * the thread td_sigmask during triggering. + */ +static void +autofs_set_sigmask(sigset_t *oldset) +{ + sigset_t newset; + int i; + + SIGFILLSET(newset); + /* Remove the autofs set of signals from newset */ + PROC_LOCK(curproc); + mtx_lock(&curproc->p_sigacts->ps_mtx); + for (i = 0 ; i < sizeof(autofs_sig_set)/sizeof(int) ; i++) { + /* + * But make sure we leave the ones already masked + * by the process, i.e. remove the signal from the + * temporary signalmask only if it wasn't already + * in p_sigmask. + */ + if (!SIGISMEMBER(curthread->td_sigmask, autofs_sig_set[i]) && + !SIGISMEMBER(curproc->p_sigacts->ps_sigignore, + autofs_sig_set[i])) { + SIGDELSET(newset, autofs_sig_set[i]); + } + } + mtx_unlock(&curproc->p_sigacts->ps_mtx); + kern_sigprocmask(curthread, SIG_SETMASK, &newset, oldset, + SIGPROCMASK_PROC_LOCKED); + PROC_UNLOCK(curproc); +} + +static void +autofs_restore_sigmask(sigset_t *set) +{ + + kern_sigprocmask(curthread, SIG_SETMASK, set, NULL, 0); +} + +static int +autofs_trigger_one(struct autofs_node *anp, + const char *component, int componentlen) +{ + sigset_t oldset; + struct autofs_mount *amp; + struct autofs_node *firstanp; + struct autofs_request *ar; + char *key, *path; + int error = 0, request_error, last; + + amp = VFSTOAUTOFS(anp->an_vnode->v_mount); + + sx_assert(&autofs_softc->sc_lock, SA_XLOCKED); + + if (anp->an_parent == NULL) { + key = strndup(component, componentlen, M_AUTOFS); + } else { + for (firstanp = anp; firstanp->an_parent->an_parent != NULL; + firstanp = firstanp->an_parent) + continue; + key = strdup(firstanp->an_name, M_AUTOFS); + } + + path = autofs_path(anp); + + TAILQ_FOREACH(ar, &autofs_softc->sc_requests, ar_next) { + if (strcmp(ar->ar_path, path) != 0) + continue; + if (strcmp(ar->ar_key, key) != 0) + continue; + + KASSERT(strcmp(ar->ar_from, amp->am_from) == 0, + ("from changed; %s != %s", ar->ar_from, amp->am_from)); + KASSERT(strcmp(ar->ar_prefix, amp->am_prefix) == 0, + ("prefix changed; %s != %s", + ar->ar_prefix, amp->am_prefix)); + KASSERT(strcmp(ar->ar_options, amp->am_options) == 0, + ("options changed; %s != %s", + ar->ar_options, amp->am_options)); + + break; + } + + if (ar != NULL) { + refcount_acquire(&ar->ar_refcount); + } else { + ar = uma_zalloc(autofs_request_zone, M_WAITOK | M_ZERO); + ar->ar_mount = amp; + + ar->ar_id = + atomic_fetchadd_int(&autofs_softc->sc_last_request_id, 1); + strlcpy(ar->ar_from, amp->am_from, sizeof(ar->ar_from)); + strlcpy(ar->ar_path, path, sizeof(ar->ar_path)); + strlcpy(ar->ar_prefix, amp->am_prefix, sizeof(ar->ar_prefix)); + strlcpy(ar->ar_key, key, sizeof(ar->ar_key)); + strlcpy(ar->ar_options, + amp->am_options, sizeof(ar->ar_options)); + + callout_init(&ar->ar_callout, 1); + callout_reset(&ar->ar_callout, + autofs_timeout * hz, autofs_callout, ar); + refcount_init(&ar->ar_refcount, 1); + TAILQ_INSERT_TAIL(&autofs_softc->sc_requests, ar, ar_next); + } + + cv_broadcast(&autofs_softc->sc_cv); + while (ar->ar_done == false) { + if (autofs_interruptible != 0) { + autofs_set_sigmask(&oldset); + error = cv_wait_sig(&autofs_softc->sc_cv, + &autofs_softc->sc_lock); + autofs_restore_sigmask(&oldset); + if (error != 0) { + /* + * XXX: For some reson this returns -1 + * instead of EINTR, wtf?! + */ + error = EINTR; + AUTOFS_WARN("cv_wait_sig for %s failed " + "with error %d", ar->ar_path, error); + break; + } + } else { + cv_wait(&autofs_softc->sc_cv, &autofs_softc->sc_lock); + } + } + + request_error = ar->ar_error; + if (request_error != 0) { + AUTOFS_WARN("request for %s completed with error %d", + ar->ar_path, request_error); + } + + last = refcount_release(&ar->ar_refcount); + if (last) { + TAILQ_REMOVE(&autofs_softc->sc_requests, ar, ar_next); + /* + * XXX: Is it safe? + */ + sx_xunlock(&autofs_softc->sc_lock); + callout_drain(&ar->ar_callout); + sx_xlock(&autofs_softc->sc_lock); + uma_zfree(autofs_request_zone, ar); + } + + /* + * Note that we do not do negative caching on purpose. This + * way the user can retry access at any time, e.g. after fixing + * the failure reason, without waiting for cache timer to expire. + */ + if (error == 0 && request_error == 0 && autofs_cache > 0) { + anp->an_cached = true; + callout_reset(&anp->an_callout, autofs_cache * hz, + autofs_cache_callout, anp); + } + + free(key, M_AUTOFS); + free(path, M_AUTOFS); + + if (error != 0) + return (error); + return (request_error); +} + +/* + * Send request to automountd(8) and wait for completion. + */ +int +autofs_trigger(struct autofs_node *anp, + const char *component, int componentlen) +{ + int error; + + for (;;) { + error = autofs_trigger_one(anp, component, componentlen); + if (error == 0) { + anp->an_retries = 0; + return (0); + } + if (error == EINTR) { + AUTOFS_DEBUG("trigger interrupted by signal, " + "not retrying"); + anp->an_retries = 0; + return (error); + } + anp->an_retries++; + if (anp->an_retries >= autofs_retry_attempts) { + AUTOFS_DEBUG("trigger failed %d times; returning " + "error %d", anp->an_retries, error); + anp->an_retries = 0; + return (error); + + } + AUTOFS_DEBUG("trigger failed with error %d; will retry in " + "%d seconds, %d attempts left", error, autofs_retry_delay, + autofs_retry_attempts - anp->an_retries); + sx_xunlock(&autofs_softc->sc_lock); + pause("autofs_retry", autofs_retry_delay * hz); + sx_xlock(&autofs_softc->sc_lock); + } +} + +static int +autofs_ioctl_request(struct autofs_daemon_request *adr) +{ + struct autofs_request *ar; + int error; + + sx_xlock(&autofs_softc->sc_lock); + for (;;) { + TAILQ_FOREACH(ar, &autofs_softc->sc_requests, ar_next) { + if (ar->ar_done) + continue; + if (ar->ar_in_progress) + continue; + + break; + } + + if (ar != NULL) + break; + + error = cv_wait_sig(&autofs_softc->sc_cv, + &autofs_softc->sc_lock); + if (error != 0) { + /* + * XXX: For some reson this returns -1 instead + * of EINTR, wtf?! + */ + error = EINTR; + sx_xunlock(&autofs_softc->sc_lock); + AUTOFS_DEBUG("failed with error %d", error); + return (error); + } + } + + ar->ar_in_progress = true; + sx_xunlock(&autofs_softc->sc_lock); + + adr->adr_id = ar->ar_id; + strlcpy(adr->adr_from, ar->ar_from, sizeof(adr->adr_from)); + strlcpy(adr->adr_path, ar->ar_path, sizeof(adr->adr_path)); + strlcpy(adr->adr_prefix, ar->ar_prefix, sizeof(adr->adr_prefix)); + strlcpy(adr->adr_key, ar->ar_key, sizeof(adr->adr_key)); + strlcpy(adr->adr_options, ar->ar_options, sizeof(adr->adr_options)); + + PROC_LOCK(curproc); + autofs_softc->sc_dev_sid = curproc->p_session->s_sid; + PROC_UNLOCK(curproc); + + return (0); +} + +static int +autofs_ioctl_done(struct autofs_daemon_done *add) +{ + struct autofs_request *ar; + + sx_xlock(&autofs_softc->sc_lock); + TAILQ_FOREACH(ar, &autofs_softc->sc_requests, ar_next) { + if (ar->ar_id == add->add_id) + break; + } + + if (ar == NULL) { + sx_xunlock(&autofs_softc->sc_lock); + AUTOFS_DEBUG("id %d not found", add->add_id); + return (ESRCH); + } + + ar->ar_error = add->add_error; + ar->ar_done = true; + ar->ar_in_progress = false; + cv_broadcast(&autofs_softc->sc_cv); + + sx_xunlock(&autofs_softc->sc_lock); + + return (0); +} + +static int +autofs_open(struct cdev *dev, int flags, int fmt, struct thread *td) +{ + + sx_xlock(&autofs_softc->sc_lock); + /* + * We must never block automountd(8) and its descendants, and we use + * session ID to determine that: we store session id of the process + * that opened the device, and then compare it with session ids + * of triggering processes. This means running a second automountd(8) + * instance would break the previous one. The check below prevents + * it from happening. + */ + if (autofs_softc->sc_dev_opened) { + sx_xunlock(&autofs_softc->sc_lock); + return (EBUSY); + } + + autofs_softc->sc_dev_opened = true; + sx_xunlock(&autofs_softc->sc_lock); + + return (0); +} + +static int +autofs_close(struct cdev *dev, int flag, int fmt, struct thread *td) +{ + + sx_xlock(&autofs_softc->sc_lock); + KASSERT(autofs_softc->sc_dev_opened, ("not opened?")); + autofs_softc->sc_dev_opened = false; + sx_xunlock(&autofs_softc->sc_lock); + + return (0); +} + +static int +autofs_ioctl(struct cdev *dev, u_long cmd, caddr_t arg, int mode, + struct thread *td) +{ + + KASSERT(autofs_softc->sc_dev_opened, ("not opened?")); + + switch (cmd) { + case AUTOFSREQUEST: + return (autofs_ioctl_request( + (struct autofs_daemon_request *)arg)); + case AUTOFSDONE: + return (autofs_ioctl_done( + (struct autofs_daemon_done *)arg)); + default: + AUTOFS_DEBUG("invalid cmd %lx", cmd); + return (EINVAL); + } +} diff --git a/sys/fs/autofs/autofs.h b/sys/fs/autofs/autofs.h new file mode 100644 index 0000000..2c72645 --- /dev/null +++ b/sys/fs/autofs/autofs.h @@ -0,0 +1,137 @@ +/*- + * Copyright (c) 2014 The FreeBSD Foundation + * All rights reserved. + * + * This software was developed by Edward Tomasz Napierala under sponsorship + * from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef AUTOFS_H +#define AUTOFS_H + +#define VFSTOAUTOFS(mp) ((struct autofs_mount *)((mp)->mnt_data)) + +MALLOC_DECLARE(M_AUTOFS); + +extern uma_zone_t autofs_request_zone; +extern uma_zone_t autofs_node_zone; + +extern int autofs_debug; +extern int autofs_mount_on_stat; + +#define AUTOFS_DEBUG(X, ...) \ + if (autofs_debug > 1) { \ + printf("%s: " X "\n", __func__, ## __VA_ARGS__);\ + } while (0) + +#define AUTOFS_WARN(X, ...) \ + if (autofs_debug > 0) { \ + printf("WARNING: %s: " X "\n", \ + __func__, ## __VA_ARGS__); \ + } while (0) + +#define AUTOFS_LOCK(X) sx_xlock(&X->am_lock) +#define AUTOFS_UNLOCK(X) sx_xunlock(&X->am_lock) +#define AUTOFS_ASSERT_LOCKED(X) sx_assert(&X->am_lock, SA_XLOCKED) +#define AUTOFS_ASSERT_UNLOCKED(X) sx_assert(&X->am_lock, SA_UNLOCKED) + +struct autofs_node { + TAILQ_ENTRY(autofs_node) an_next; + char *an_name; + int an_fileno; + struct autofs_node *an_parent; + TAILQ_HEAD(, autofs_node) an_children; + struct autofs_mount *an_mount; + struct vnode *an_vnode; + struct sx an_vnode_lock; + bool an_cached; + struct callout an_callout; + int an_retries; + struct timespec an_ctime; +}; + +struct autofs_mount { + TAILQ_ENTRY(autofs_mount) am_next; + struct autofs_node *am_root; + struct mount *am_mp; + struct sx am_lock; + char am_from[MAXPATHLEN]; + char am_mountpoint[MAXPATHLEN]; + char am_options[MAXPATHLEN]; + char am_prefix[MAXPATHLEN]; + int am_last_fileno; +}; + +struct autofs_request { + TAILQ_ENTRY(autofs_request) ar_next; + struct autofs_mount *ar_mount; + int ar_id; + bool ar_done; + int ar_error; + bool ar_in_progress; + char ar_from[MAXPATHLEN]; + char ar_path[MAXPATHLEN]; + char ar_prefix[MAXPATHLEN]; + char ar_key[MAXPATHLEN]; + char ar_options[MAXPATHLEN]; + struct callout ar_callout; + volatile u_int ar_refcount; +}; + +struct autofs_softc { + device_t sc_dev; + struct cdev *sc_cdev; + struct cv sc_cv; + struct sx sc_lock; + TAILQ_HEAD(, autofs_request) sc_requests; + bool sc_dev_opened; + pid_t sc_dev_sid; + int sc_last_request_id; +}; + +/* + * Limits and constants + */ +#define AUTOFS_NAMELEN 24 +#define AUTOFS_FSNAMELEN 16 /* equal to MFSNAMELEN */ +#define AUTOFS_DELEN (8 + AUTOFS_NAMELEN) + +int autofs_init(struct vfsconf *vfsp); +int autofs_uninit(struct vfsconf *vfsp); +int autofs_trigger(struct autofs_node *anp, const char *component, + int componentlen); +bool autofs_cached(struct autofs_node *anp, const char *component, + int componentlen); +bool autofs_ignore_thread(const struct thread *td); +int autofs_node_new(struct autofs_node *parent, struct autofs_mount *amp, + const char *name, int namelen, struct autofs_node **anpp); +int autofs_node_find(struct autofs_node *parent, + const char *name, int namelen, struct autofs_node **anpp); +void autofs_node_delete(struct autofs_node *anp); +int autofs_node_vn(struct autofs_node *anp, struct mount *mp, + struct vnode **vpp); + +#endif /* !AUTOFS_H */ diff --git a/sys/fs/autofs/autofs_ioctl.h b/sys/fs/autofs/autofs_ioctl.h new file mode 100644 index 0000000..8d03ef7 --- /dev/null +++ b/sys/fs/autofs/autofs_ioctl.h @@ -0,0 +1,89 @@ +/*- + * Copyright (c) 2013 The FreeBSD Foundation + * All rights reserved. + * + * This software was developed by Edward Tomasz Napierala under sponsorship + * from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef AUTOFS_IOCTL_H +#define AUTOFS_IOCTL_H + +#define AUTOFS_PATH "/dev/autofs" + +struct autofs_daemon_request { + /* + * Request identifier. + */ + int adr_id; + + /* + * The "from" field, containing map name. For example, + * when accessing '/net/192.168.1.3/tank/vm/', that would + * be '-hosts'. + */ + char adr_from[MAXPATHLEN]; + + /* + * Full path to the node being looked up; for requests that result + * in actual mount it is the full mount path. + */ + char adr_path[MAXPATHLEN]; + + /* + * Prefix, which is basically the mountpoint from auto_master(5). + * In example above that would be "/net"; for direct maps it is "/". + */ + char adr_prefix[MAXPATHLEN]; + + /* + * Map key, also used as command argument for dynamic maps; in example + * above that would be '192.168.1.3'. + */ + char adr_key[MAXPATHLEN]; + + /* + * Mount options from auto_master(5). + */ + char adr_options[MAXPATHLEN]; +}; + +struct autofs_daemon_done { + /* + * Identifier, copied from adr_id. + */ + int add_id; + + /* + * Error number, possibly returned to userland. + */ + int add_error; +}; + +#define AUTOFSREQUEST _IOR('I', 0x01, struct autofs_daemon_request) +#define AUTOFSDONE _IOW('I', 0x02, struct autofs_daemon_done) + +#endif /* !AUTOFS_IOCTL_H */ diff --git a/sys/fs/autofs/autofs_vfsops.c b/sys/fs/autofs/autofs_vfsops.c new file mode 100644 index 0000000..b289cad --- /dev/null +++ b/sys/fs/autofs/autofs_vfsops.c @@ -0,0 +1,210 @@ +/*- + * Copyright (c) 2014 The FreeBSD Foundation + * All rights reserved. + * + * This software was developed by Edward Tomasz Napierala under sponsorship + * from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + */ + +#include <sys/cdefs.h> + __FBSDID("$FreeBSD$"); + +#include <sys/param.h> +#include <sys/systm.h> +#include <sys/conf.h> +#include <sys/condvar.h> +#include <sys/ioccom.h> +#include <sys/kernel.h> +#include <sys/module.h> +#include <sys/mount.h> +#include <sys/sx.h> +#include <sys/vnode.h> + +#include <fs/autofs/autofs.h> + +static const char *autofs_opts[] = { + "from", "master_options", "master_prefix", NULL +}; + +extern struct autofs_softc *autofs_softc; + +static int +autofs_mount(struct mount *mp) +{ + struct autofs_mount *amp; + char *from, *fspath, *options, *prefix; + int error; + + if (vfs_filteropt(mp->mnt_optnew, autofs_opts)) + return (EINVAL); + + if (mp->mnt_flag & MNT_UPDATE) + return (0); + + if (vfs_getopt(mp->mnt_optnew, "from", (void **)&from, NULL)) + return (EINVAL); + + if (vfs_getopt(mp->mnt_optnew, "fspath", (void **)&fspath, NULL)) + return (EINVAL); + + if (vfs_getopt(mp->mnt_optnew, "master_options", (void **)&options, NULL)) + return (EINVAL); + + if (vfs_getopt(mp->mnt_optnew, "master_prefix", (void **)&prefix, NULL)) + return (EINVAL); + + amp = malloc(sizeof(*amp), M_AUTOFS, M_WAITOK | M_ZERO); + mp->mnt_data = amp; + amp->am_mp = mp; + strlcpy(amp->am_from, from, sizeof(amp->am_from)); + strlcpy(amp->am_mountpoint, fspath, sizeof(amp->am_mountpoint)); + strlcpy(amp->am_options, options, sizeof(amp->am_options)); + strlcpy(amp->am_prefix, prefix, sizeof(amp->am_prefix)); + sx_init(&->am_lock, "autofslk"); + amp->am_last_fileno = 1; + + vfs_getnewfsid(mp); + + AUTOFS_LOCK(amp); + error = autofs_node_new(NULL, amp, ".", -1, &->am_root); + if (error != 0) { + AUTOFS_UNLOCK(amp); + free(amp, M_AUTOFS); + return (error); + } + AUTOFS_UNLOCK(amp); + + vfs_mountedfrom(mp, from); + + return (0); +} + +static int +autofs_unmount(struct mount *mp, int mntflags) +{ + struct autofs_mount *amp; + struct autofs_node *anp; + struct autofs_request *ar; + int error, flags; + bool found; + + amp = VFSTOAUTOFS(mp); + + flags = 0; + if (mntflags & MNT_FORCE) + flags |= FORCECLOSE; + error = vflush(mp, 0, flags, curthread); + if (error != 0) { + AUTOFS_WARN("vflush failed with error %d", error); + return (error); + } + + /* + * All vnodes are gone, and new one will not appear - so, + * no new triggerings. We can iterate over outstanding + * autofs_requests and terminate them. + */ + for (;;) { + found = false; + sx_xlock(&autofs_softc->sc_lock); + TAILQ_FOREACH(ar, &autofs_softc->sc_requests, ar_next) { + if (ar->ar_mount != amp) + continue; + ar->ar_error = ENXIO; + ar->ar_done = true; + ar->ar_in_progress = false; + found = true; + } + sx_xunlock(&autofs_softc->sc_lock); + if (found == false) + break; + + cv_broadcast(&autofs_softc->sc_cv); + pause("autofs_umount", 1); + } + + AUTOFS_LOCK(amp); + + /* + * Not terribly efficient, but at least not recursive. + */ + while (!TAILQ_EMPTY(&->am_root->an_children)) { + anp = TAILQ_FIRST(&->am_root->an_children); + while (!TAILQ_EMPTY(&anp->an_children)) + anp = TAILQ_FIRST(&anp->an_children); + autofs_node_delete(anp); + } + autofs_node_delete(amp->am_root); + + mp->mnt_data = NULL; + AUTOFS_UNLOCK(amp); + + sx_destroy(&->am_lock); + + free(amp, M_AUTOFS); + + return (0); +} + +static int +autofs_root(struct mount *mp, int flags, struct vnode **vpp) +{ + struct autofs_mount *amp; + int error; + + amp = VFSTOAUTOFS(mp); + + error = autofs_node_vn(amp->am_root, mp, vpp); + + return (error); +} + +static int +autofs_statfs(struct mount *mp, struct statfs *sbp) +{ + + sbp->f_bsize = 512; + sbp->f_iosize = 0; + sbp->f_blocks = 0; + sbp->f_bfree = 0; + sbp->f_bavail = 0; + sbp->f_files = 0; + sbp->f_ffree = 0; + + return (0); +} + +static struct vfsops autofs_vfsops = { + .vfs_fhtovp = NULL, /* XXX */ + .vfs_mount = autofs_mount, + .vfs_unmount = autofs_unmount, + .vfs_root = autofs_root, + .vfs_statfs = autofs_statfs, + .vfs_init = autofs_init, + .vfs_uninit = autofs_uninit, +}; + +VFS_SET(autofs_vfsops, autofs, VFCF_SYNTHETIC | VFCF_NETWORK); +MODULE_VERSION(autofs, 1); diff --git a/sys/fs/autofs/autofs_vnops.c b/sys/fs/autofs/autofs_vnops.c new file mode 100644 index 0000000..c631f57 --- /dev/null +++ b/sys/fs/autofs/autofs_vnops.c @@ -0,0 +1,649 @@ +/*- + * Copyright (c) 2014 The FreeBSD Foundation + * All rights reserved. + * + * This software was developed by Edward Tomasz Napierala under sponsorship + * from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + */ + +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + +#include <sys/param.h> +#include <sys/kernel.h> +#include <sys/condvar.h> +#include <sys/dirent.h> +#include <sys/fcntl.h> +#include <sys/lock.h> +#include <sys/mount.h> +#include <sys/mutex.h> +#include <sys/namei.h> +#include <sys/signalvar.h> +#include <sys/systm.h> +#include <sys/vnode.h> +#include <machine/atomic.h> +#include <vm/uma.h> + +#include <fs/autofs/autofs.h> + +static int autofs_trigger_vn(struct vnode *vp, const char *path, + int pathlen, struct vnode **newvp); + +extern struct autofs_softc *autofs_softc; + +static int +autofs_access(struct vop_access_args *ap) +{ + + /* + * Nothing to do here; the only kind of access control + * needed is in autofs_mkdir(). + */ + + return (0); +} + +static int +autofs_getattr(struct vop_getattr_args *ap) +{ + struct vnode *vp, *newvp; + struct autofs_node *anp; + struct mount *mp; + struct vattr *vap; + int error; + + vp = ap->a_vp; + anp = vp->v_data; + mp = vp->v_mount; + vap = ap->a_vap; + + KASSERT(ap->a_vp->v_type == VDIR, ("!VDIR")); + + /* + * The reason we must do this is that some tree-walking software, + * namely fts(3), assumes that stat(".") results will not change + * between chdir("subdir") and chdir(".."), and fails with ENOENT + * otherwise. + */ + if (autofs_mount_on_stat && autofs_cached(anp, NULL, 0) == false && + autofs_ignore_thread(curthread) == false) { + error = autofs_trigger_vn(vp, "", 0, &newvp); + if (error != 0) + return (error); + + if (newvp != NULL) { + error = VOP_GETATTR(newvp, ap->a_vap, + ap->a_cred); + vput(newvp); + return (error); + } + } + + vap->va_type = VDIR; + vap->va_mode = 0755; + vap->va_nlink = 3; /* XXX */ + vap->va_uid = 0; + vap->va_gid = 0; + vap->va_rdev = NODEV; + vap->va_fsid = mp->mnt_stat.f_fsid.val[0]; + vap->va_fileid = anp->an_fileno; + vap->va_size = 512; /* XXX */ + vap->va_blocksize = 512; + vap->va_mtime = anp->an_ctime; + vap->va_atime = anp->an_ctime; + vap->va_ctime = anp->an_ctime; + vap->va_birthtime = anp->an_ctime; + vap->va_gen = 0; + vap->va_flags = 0; + vap->va_rdev = 0; + vap->va_bytes = 512; /* XXX */ + vap->va_filerev = 0; + vap->va_spare = 0; + + return (0); +} + +/* + * Unlock the vnode, request automountd(8) action, and then lock it back. + * If anything got mounted on top of the vnode, return the new filesystem's + * root vnode in 'newvp', locked. + */ +static int +autofs_trigger_vn(struct vnode *vp, const char *path, int pathlen, + struct vnode **newvp) +{ + struct autofs_node *anp; + struct autofs_mount *amp; + int error, lock_flags; + + anp = vp->v_data; + amp = VFSTOAUTOFS(vp->v_mount); + + /* + * Release the vnode lock, so that other operations, in partcular + * mounting a filesystem on top of it, can proceed. Increase use + * count, to prevent the vnode from being deallocated and to prevent + * filesystem from being unmounted. + */ + lock_flags = VOP_ISLOCKED(vp); + vref(vp); + VOP_UNLOCK(vp, 0); + + sx_xlock(&autofs_softc->sc_lock); + + /* + * XXX: Workaround for mounting the same thing multiple times; revisit. + */ + if (vp->v_mountedhere != NULL) { + error = 0; + goto mounted; + } + + error = autofs_trigger(anp, path, pathlen); +mounted: + sx_xunlock(&autofs_softc->sc_lock); + vn_lock(vp, lock_flags | LK_RETRY); + vunref(vp); + if ((vp->v_iflag & VI_DOOMED) != 0) { + AUTOFS_DEBUG("VI_DOOMED"); + return (ENOENT); + } + + if (error != 0) + return (error); + + if (vp->v_mountedhere == NULL) { + *newvp = NULL; + return (0); + } else { + /* + * If the operation that succeeded was mount, then mark + * the node as non-cached. Otherwise, if someone unmounts + * the filesystem before the cache times out, we will fail + * to trigger. + */ + anp->an_cached = false; + } + + error = VFS_ROOT(vp->v_mountedhere, lock_flags, newvp); + if (error != 0) { + AUTOFS_WARN("VFS_ROOT() failed with error %d", error); + return (error); + } + + return (0); +} + +static int +autofs_vget_callback(struct mount *mp, void *arg, int lkflags __unused, + struct vnode **vpp) +{ + + + return (autofs_node_vn(arg, mp, vpp)); +} + +static int +autofs_lookup(struct vop_lookup_args *ap) +{ + struct vnode *dvp, *newvp, **vpp; + struct mount *mp; + struct autofs_mount *amp; + struct autofs_node *anp, *child; + struct componentname *cnp; + int error, lock_flags; + + dvp = ap->a_dvp; + vpp = ap->a_vpp; + mp = dvp->v_mount; + amp = VFSTOAUTOFS(mp); + anp = dvp->v_data; + cnp = ap->a_cnp; + + if (cnp->cn_flags & ISDOTDOT) { + KASSERT(anp->an_parent != NULL, ("NULL parent")); + /* + * Note that in this case, dvp is the child vnode, and we + * are looking up the parent vnode - exactly reverse from + * normal operation. Unlocking dvp requires some rather + * tricky unlock/relock dance to prevent mp from being freed; + * use vn_vget_ino_gen() which takes care of all that. + */ + error = vn_vget_ino_gen(dvp, autofs_vget_callback, + anp->an_parent, 0, vpp); + if (error != 0) { + AUTOFS_WARN("vn_vget_ino_gen() failed with error %d", + error); + return (error); + } + return (error); + } + + if (cnp->cn_namelen == 1 && cnp->cn_nameptr[0] == '.') { + vref(dvp); + *vpp = dvp; + + return (0); + } + + if (autofs_cached(anp, cnp->cn_nameptr, cnp->cn_namelen) == false && + autofs_ignore_thread(cnp->cn_thread) == false) { + error = autofs_trigger_vn(dvp, + cnp->cn_nameptr, cnp->cn_namelen, &newvp); + if (error != 0) + return (error); + + if (newvp != NULL) { + error = VOP_LOOKUP(newvp, ap->a_vpp, ap->a_cnp); + + /* + * Instead of figuring out whether our vnode should + * be locked or not given the error and cnp flags, + * just "copy" the lock status from vnode returned + * by mounted filesystem's VOP_LOOKUP(). Get rid + * of that new vnode afterwards. + */ + lock_flags = VOP_ISLOCKED(newvp); + if (lock_flags == 0) { + VOP_UNLOCK(dvp, 0); + vrele(newvp); + } else { + vput(newvp); + } + return (error); + } + } + + if (cnp->cn_nameiop == RENAME) + return (EOPNOTSUPP); + + AUTOFS_LOCK(amp); + error = autofs_node_find(anp, cnp->cn_nameptr, cnp->cn_namelen, &child); + if (error != 0) { + if ((cnp->cn_flags & ISLASTCN) && cnp->cn_nameiop == CREATE) { + AUTOFS_UNLOCK(amp); + return (EJUSTRETURN); + } + + AUTOFS_UNLOCK(amp); + return (ENOENT); + } + + /* + * XXX: Dropping the node here is ok, because we never remove nodes. + */ + AUTOFS_UNLOCK(amp); + + error = autofs_node_vn(child, mp, vpp); + if (error != 0) { + if ((cnp->cn_flags & ISLASTCN) && cnp->cn_nameiop == CREATE) + return (EJUSTRETURN); + + return (error); + } + + return (0); +} + +static int +autofs_mkdir(struct vop_mkdir_args *ap) +{ + struct vnode *vp; + struct autofs_node *anp; + struct autofs_mount *amp; + struct autofs_node *child; + int error; + + vp = ap->a_dvp; + anp = vp->v_data; + amp = VFSTOAUTOFS(vp->v_mount); + + /* + * Do not allow mkdir() if the calling thread is not + * automountd(8) descendant. + */ + if (autofs_ignore_thread(curthread) == false) + return (EPERM); + + AUTOFS_LOCK(amp); + error = autofs_node_new(anp, amp, ap->a_cnp->cn_nameptr, + ap->a_cnp->cn_namelen, &child); + if (error != 0) { + AUTOFS_UNLOCK(amp); + return (error); + } + AUTOFS_UNLOCK(amp); + + error = autofs_node_vn(child, vp->v_mount, ap->a_vpp); + + return (error); +} + +static int +autofs_readdir_one(struct uio *uio, const char *name, int fileno) +{ + struct dirent dirent; + int error, i; + + memset(&dirent, 0, sizeof(dirent)); + dirent.d_type = DT_DIR; + dirent.d_reclen = AUTOFS_DELEN; + dirent.d_fileno = fileno; + /* PFS_DELEN was picked to fit PFS_NAMLEN */ + for (i = 0; i < AUTOFS_NAMELEN - 1 && name[i] != '\0'; ++i) + dirent.d_name[i] = name[i]; + dirent.d_name[i] = 0; + dirent.d_namlen = i; + + error = uiomove(&dirent, AUTOFS_DELEN, uio); + return (error); +} + +static int +autofs_readdir(struct vop_readdir_args *ap) +{ + struct vnode *vp, *newvp; + struct autofs_mount *amp; + struct autofs_node *anp, *child; + struct uio *uio; + off_t offset; + int error, i, resid; + + vp = ap->a_vp; + amp = VFSTOAUTOFS(vp->v_mount); + anp = vp->v_data; + uio = ap->a_uio; + + KASSERT(vp->v_type == VDIR, ("!VDIR")); + + if (autofs_cached(anp, NULL, 0) == false && + autofs_ignore_thread(curthread) == false) { + error = autofs_trigger_vn(vp, "", 0, &newvp); + if (error != 0) + return (error); + + if (newvp != NULL) { + error = VOP_READDIR(newvp, ap->a_uio, ap->a_cred, + ap->a_eofflag, ap->a_ncookies, ap->a_cookies); + vput(newvp); + return (error); + } + } + + /* only allow reading entire entries */ + offset = uio->uio_offset; + resid = uio->uio_resid; + if (offset < 0 || offset % AUTOFS_DELEN != 0 || + (resid && resid < AUTOFS_DELEN)) + return (EINVAL); + if (resid == 0) + return (0); + + if (ap->a_eofflag != NULL) + *ap->a_eofflag = TRUE; + + if (offset == 0 && resid >= AUTOFS_DELEN) { + error = autofs_readdir_one(uio, ".", anp->an_fileno); + if (error != 0) + return (error); + offset += AUTOFS_DELEN; + resid -= AUTOFS_DELEN; + } + + if (offset == AUTOFS_DELEN && resid >= AUTOFS_DELEN) { + if (anp->an_parent == NULL) { + /* + * XXX: Right? + */ + error = autofs_readdir_one(uio, "..", anp->an_fileno); + } else { + error = autofs_readdir_one(uio, "..", + anp->an_parent->an_fileno); + } + if (error != 0) + return (error); + offset += AUTOFS_DELEN; + resid -= AUTOFS_DELEN; + } + + i = 2; /* Account for "." and "..". */ + AUTOFS_LOCK(amp); + TAILQ_FOREACH(child, &anp->an_children, an_next) { + if (resid < AUTOFS_DELEN) { + if (ap->a_eofflag != NULL) + *ap->a_eofflag = 0; + break; + } + + /* + * Skip entries returned by previous call to getdents(). + */ + i++; + if (i * AUTOFS_DELEN <= offset) + continue; + + error = autofs_readdir_one(uio, child->an_name, + child->an_fileno); + if (error != 0) { + AUTOFS_UNLOCK(amp); + return (error); + } + offset += AUTOFS_DELEN; + resid -= AUTOFS_DELEN; + } + + AUTOFS_UNLOCK(amp); + return (0); +} + +static int +autofs_reclaim(struct vop_reclaim_args *ap) +{ + struct vnode *vp = ap->a_vp; + struct autofs_node *anp = vp->v_data; + + vp = ap->a_vp; + anp = vp->v_data; + + /* + * We do not free autofs_node here; instead we are + * destroying them in autofs_node_delete(). + */ + sx_xlock(&anp->an_vnode_lock); + anp->an_vnode = NULL; + vp->v_data = NULL; + sx_xunlock(&anp->an_vnode_lock); + + return (0); +} + +struct vop_vector autofs_vnodeops = { + .vop_default = &default_vnodeops, + + .vop_access = autofs_access, + .vop_lookup = autofs_lookup, + .vop_create = VOP_EOPNOTSUPP, + .vop_getattr = autofs_getattr, + .vop_link = VOP_EOPNOTSUPP, + .vop_mkdir = autofs_mkdir, + .vop_mknod = VOP_EOPNOTSUPP, + .vop_read = VOP_EOPNOTSUPP, + .vop_readdir = autofs_readdir, + .vop_remove = VOP_EOPNOTSUPP, + .vop_rename = VOP_EOPNOTSUPP, + .vop_rmdir = VOP_EOPNOTSUPP, + .vop_setattr = VOP_EOPNOTSUPP, + .vop_symlink = VOP_EOPNOTSUPP, + .vop_write = VOP_EOPNOTSUPP, + .vop_reclaim = autofs_reclaim, +}; + +int +autofs_node_new(struct autofs_node *parent, struct autofs_mount *amp, + const char *name, int namelen, struct autofs_node **anpp) +{ + struct autofs_node *anp; + + if (parent != NULL) + AUTOFS_ASSERT_LOCKED(parent->an_mount); + + anp = uma_zalloc(autofs_node_zone, M_WAITOK | M_ZERO); + if (namelen >= 0) + anp->an_name = strndup(name, namelen, M_AUTOFS); + else + anp->an_name = strdup(name, M_AUTOFS); + anp->an_fileno = atomic_fetchadd_int(&->am_last_fileno, 1); + callout_init(&anp->an_callout, 1); + /* + * The reason for SX_NOWITNESS here is that witness(4) + * cannot tell vnodes apart, so the following perfectly + * valid lock order... + * + * vnode lock A -> autofsvlk B -> vnode lock B + * + * ... gets reported as a LOR. + */ + sx_init_flags(&anp->an_vnode_lock, "autofsvlk", SX_NOWITNESS); + getnanotime(&anp->an_ctime); + anp->an_parent = parent; + anp->an_mount = amp; + if (parent != NULL) + TAILQ_INSERT_TAIL(&parent->an_children, anp, an_next); + TAILQ_INIT(&anp->an_children); + + *anpp = anp; + return (0); +} + +int +autofs_node_find(struct autofs_node *parent, const char *name, + int namelen, struct autofs_node **anpp) +{ + struct autofs_node *anp; + + AUTOFS_ASSERT_LOCKED(parent->an_mount); + + TAILQ_FOREACH(anp, &parent->an_children, an_next) { + if (namelen >= 0) { + if (strncmp(anp->an_name, name, namelen) != 0) + continue; + } else { + if (strcmp(anp->an_name, name) != 0) + continue; + } + + if (anpp != NULL) + *anpp = anp; + return (0); + } + + return (ENOENT); +} + +void +autofs_node_delete(struct autofs_node *anp) +{ + struct autofs_node *parent; + + AUTOFS_ASSERT_LOCKED(anp->an_mount); + KASSERT(TAILQ_EMPTY(&anp->an_children), ("have children")); + + callout_drain(&anp->an_callout); + + parent = anp->an_parent; + if (parent != NULL) + TAILQ_REMOVE(&parent->an_children, anp, an_next); + sx_destroy(&anp->an_vnode_lock); + free(anp->an_name, M_AUTOFS); + uma_zfree(autofs_node_zone, anp); +} + +int +autofs_node_vn(struct autofs_node *anp, struct mount *mp, struct vnode **vpp) +{ + struct vnode *vp; + int error; + + AUTOFS_ASSERT_UNLOCKED(anp->an_mount); + + sx_xlock(&anp->an_vnode_lock); + + vp = anp->an_vnode; + if (vp != NULL) { + error = vget(vp, LK_EXCLUSIVE | LK_RETRY, curthread); + if (error != 0) { + AUTOFS_WARN("vget failed with error %d", error); + sx_xunlock(&anp->an_vnode_lock); + return (error); + } + if (vp->v_iflag & VI_DOOMED) { + /* + * We got forcibly unmounted. + */ + AUTOFS_DEBUG("doomed vnode"); + sx_xunlock(&anp->an_vnode_lock); + vput(vp); + + return (ENOENT); + } + + *vpp = vp; + sx_xunlock(&anp->an_vnode_lock); + return (0); + } + + error = getnewvnode("autofs", mp, &autofs_vnodeops, &vp); + if (error != 0) { + sx_xunlock(&anp->an_vnode_lock); + return (error); + } + + error = vn_lock(vp, LK_EXCLUSIVE | LK_RETRY); + if (error != 0) { + sx_xunlock(&anp->an_vnode_lock); + vdrop(vp); + return (error); + } + + vp->v_type = VDIR; + if (anp->an_parent == NULL) + vp->v_vflag |= VV_ROOT; + vp->v_data = anp; + + error = insmntque(vp, mp); + if (error != 0) { + AUTOFS_WARN("insmntque() failed with error %d", error); + sx_xunlock(&anp->an_vnode_lock); + return (error); + } + + KASSERT(anp->an_vnode == NULL, ("lost race")); + anp->an_vnode = vp; + + sx_xunlock(&anp->an_vnode_lock); + + *vpp = vp; + return (0); +} diff --git a/sys/geom/geom_dev.c b/sys/geom/geom_dev.c index 2c113e6..a2034d3 100644 --- a/sys/geom/geom_dev.c +++ b/sys/geom/geom_dev.c @@ -251,9 +251,10 @@ g_dev_taste(struct g_class *mp, struct g_provider *pp, int insist __unused) snprintf(buf, sizeof(buf), "%s%s", val, gp->name + len); freeenv(val); - make_dev_alias_p(MAKEDEV_CHECKNAME | MAKEDEV_WAITOK, - &adev, dev, "%s", buf); - adev->si_flags |= SI_UNMAPPED; + if ((make_dev_alias_p(MAKEDEV_CHECKNAME|MAKEDEV_WAITOK, + &adev, dev, "%s", buf)) != 0) + printf("Warning: unable to create device " + "alias %s\n", buf); break; } } @@ -263,6 +264,7 @@ g_dev_taste(struct g_class *mp, struct g_provider *pp, int insist __unused) if (adev != NULL) { adev->si_iosize_max = MAXPHYS; adev->si_drv2 = cp; + adev->si_flags |= SI_UNMAPPED; } g_dev_attrchanged(cp, "GEOM::physpath"); diff --git a/sys/gnu/dts/arm/sam9260ek_common.dtsi b/sys/gnu/dts/arm/sam9260ek_common.dtsi new file mode 100644 index 0000000..1054121 --- /dev/null +++ b/sys/gnu/dts/arm/sam9260ek_common.dtsi @@ -0,0 +1,217 @@ +/* + * at91sam9260ek_common.dtsi - Device Tree file for Atmel sam9260ek board + * Copyright (C) 2014 M. Warner losh <imp@freebsd.org> + * + * Derived from: + * at91sam9g20ek_common.dtsi - Device Tree file for Atmel at91sam9g20ek board + * + * Copyright (C) 2012 Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> + * + * Licensed under GPLv2. + * + * $FreeBSD$ + */ +#include "at91sam9260.dtsi" + +/ { + + chosen { + bootargs = "mem=64M console=ttyS0,115200 root=/dev/mtdblock5 rw rootfstype=ubifs"; + }; + + memory { + reg = <0x20000000 0x4000000>; + }; + + clocks { + #address-cells = <1>; + #size-cells = <1>; + ranges; + + main_clock: clock@0 { + compatible = "atmel,osc", "fixed-clock"; + clock-frequency = <18432000>; + }; + }; + + ahb { + apb { + pinctrl@fffff400 { + board { + pinctrl_pck0_as_mck: pck0_as_mck { + atmel,pins = + <AT91_PIOC 1 AT91_PERIPH_B AT91_PINCTRL_NONE>; /* PC1 periph B */ + }; + + }; + + mmc0_slot1 { + pinctrl_board_mmc0_slot1: mmc0_slot1-board { + atmel,pins = + <AT91_PIOC 9 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>; /* PC9 gpio CD pin pull up and deglitch */ + }; + }; + }; + + dbgu: serial@fffff200 { + status = "okay"; + }; + + usart0: serial@fffb0000 { + pinctrl-0 = + <&pinctrl_usart0 + &pinctrl_usart0_rts + &pinctrl_usart0_cts + &pinctrl_usart0_dtr_dsr + &pinctrl_usart0_dcd + &pinctrl_usart0_ri>; + status = "okay"; + }; + + usart1: serial@fffb4000 { + status = "okay"; + }; + + macb0: ethernet@fffc4000 { + phy-mode = "rmii"; + status = "okay"; + }; + + usb1: gadget@fffa4000 { + atmel,vbus-gpio = <&pioC 5 GPIO_ACTIVE_HIGH>; + status = "okay"; + }; + + mmc0: mmc@fffa8000 { + pinctrl-0 = < + &pinctrl_board_mmc0_slot1 + &pinctrl_mmc0_clk + &pinctrl_mmc0_slot1_cmd_dat0 + &pinctrl_mmc0_slot1_dat1_3>; + status = "okay"; + slot@1 { + reg = <1>; + bus-width = <4>; + cd-gpios = <&pioC 9 GPIO_ACTIVE_HIGH>; + }; + }; + + ssc0: ssc@fffbc000 { + status = "okay"; + pinctrl-0 = <&pinctrl_ssc0_tx>; + }; + + spi0: spi@fffc8000 { + cs-gpios = <0>, <&pioC 11 0>, <0>, <0>; + mtd_dataflash@0 { + compatible = "atmel,at45", "atmel,dataflash"; + spi-max-frequency = <50000000>; + reg = <1>; + }; + }; + + watchdog@fffffd40 { + status = "okay"; + }; + }; + + nand0: nand@40000000 { + nand-bus-width = <8>; + nand-ecc-mode = "soft"; + nand-on-flash-bbt; + status = "okay"; + + at91bootstrap@0 { + label = "at91bootstrap"; + reg = <0x0 0x20000>; + }; + + barebox@20000 { + label = "barebox"; + reg = <0x20000 0x40000>; + }; + + bareboxenv@60000 { + label = "bareboxenv"; + reg = <0x60000 0x20000>; + }; + + bareboxenv2@80000 { + label = "bareboxenv2"; + reg = <0x80000 0x20000>; + }; + + oftree@80000 { + label = "oftree"; + reg = <0xa0000 0x20000>; + }; + + kernel@a0000 { + label = "kernel"; + reg = <0xc0000 0x400000>; + }; + + rootfs@4a0000 { + label = "rootfs"; + reg = <0x4c0000 0x7800000>; + }; + + data@7ca0000 { + label = "data"; + reg = <0x7cc0000 0x8340000>; + }; + }; + + usb0: ohci@00500000 { + num-ports = <2>; + status = "okay"; + }; + }; + + i2c@0 { + status = "okay"; + + 24c512@50 { + compatible = "24c512"; + reg = <0x50>; + }; + + wm8731: wm8731@1b { + compatible = "wm8731"; + reg = <0x1b>; + }; + }; + + gpio_keys { + compatible = "gpio-keys"; + + btn3 { + label = "Button 3"; + gpios = <&pioA 30 GPIO_ACTIVE_LOW>; + linux,code = <0x103>; + gpio-key,wakeup; + }; + + btn4 { + label = "Button 4"; + gpios = <&pioA 31 GPIO_ACTIVE_LOW>; + linux,code = <0x104>; + gpio-key,wakeup; + }; + }; + + sound { + compatible = "atmel,at91sam9g20ek-wm8731-audio"; + pinctrl-names = "default"; + pinctrl-0 = <&pinctrl_pck0_as_mck>; + + atmel,model = "wm8731 @ AT91SAMG20EK"; + + atmel,audio-routing = + "Ext Spk", "LHPOUT", + "Int Mic", "MICIN"; + + atmel,ssc-controller = <&ssc0>; + atmel,audio-codec = <&wm8731>; + }; +}; diff --git a/sys/i386/conf/NOTES b/sys/i386/conf/NOTES index 3b36197..eae8fa8 100644 --- a/sys/i386/conf/NOTES +++ b/sys/i386/conf/NOTES @@ -578,7 +578,8 @@ hint.mse.0.irq="5" # ipw: Intel PRO/Wireless 2100 IEEE 802.11 adapter # iwi: Intel PRO/Wireless 2200BG/2225BG/2915ABG IEEE 802.11 adapters # Requires the iwi firmware module -# iwn: Intel Wireless WiFi Link 4965AGN 802.11 network adapters +# iwn: Intel Wireless WiFi Link 1000/105/135/2000/4965/5000/6000/6050 abgn +# 802.11 network adapters # Requires the iwn firmware module # mlx4ib: Mellanox ConnectX HCA InfiniBand # mlxen: Mellanox ConnectX HCA Ethernet @@ -656,12 +657,18 @@ device wpi # Intel 3945ABG wireless NICs. # iwiibssfw: IBSS mode firmware # iwimonitorfw: Monitor mode firmware # Intel Wireless WiFi Link 4965/1000/5000/6000 series firmware: -# iwnfw: Single module to support the 4965/1000/5000/5150/6000 -# iwn4965fw: Specific module for the 4965 only +# iwnfw: Single module to support all devices # iwn1000fw: Specific module for the 1000 only +# iwn105fw: Specific module for the 105 only +# iwn135fw: Specific module for the 135 only +# iwn2000fw: Specific module for the 2000 only +# iwn2030fw: Specific module for the 2030 only +# iwn4965fw: Specific module for the 4965 only # iwn5000fw: Specific module for the 5000 only # iwn5150fw: Specific module for the 5150 only # iwn6000fw: Specific module for the 6000 only +# iwn6000g2afw: Specific module for the 6000g2a only +# iwn6000g2bfw: Specific module for the 6000g2b only # iwn6050fw: Specific module for the 6050 only # wpifw: Intel 3945ABG Wireless LAN Controller firmware @@ -674,11 +681,17 @@ device ipwbssfw device ipwibssfw device ipwmonitorfw device iwnfw -device iwn4965fw device iwn1000fw +device iwn105fw +device iwn135fw +device iwn2000fw +device iwn2030fw +device iwn4965fw device iwn5000fw device iwn5150fw device iwn6000fw +device iwn6000g2afw +device iwn6000g2bfw device iwn6050fw device wpifw @@ -858,7 +871,7 @@ device spic hint.spic.0.at="isa" hint.spic.0.port="0x10a0" device asmc -#device si +device si device tpm device padlock_rng # VIA Padlock RNG device rdrand_rng # Intel Bull Mountain RNG diff --git a/sys/i386/i386/pmap.c b/sys/i386/i386/pmap.c index 06d0ab8..2859b84 100644 --- a/sys/i386/i386/pmap.c +++ b/sys/i386/i386/pmap.c @@ -1755,10 +1755,8 @@ pmap_pinit(pmap_t pmap) */ if (pmap->pm_pdir == NULL) { pmap->pm_pdir = (pd_entry_t *)kva_alloc(NBPTD); - if (pmap->pm_pdir == NULL) { - PMAP_LOCK_DESTROY(pmap); + if (pmap->pm_pdir == NULL) return (0); - } #ifdef PAE pmap->pm_pdpt = uma_zalloc(pdptzone, M_WAITOK | M_ZERO); KASSERT(((vm_offset_t)pmap->pm_pdpt & diff --git a/sys/i386/xen/pmap.c b/sys/i386/xen/pmap.c index 3cc8937..2f7f027 100644 --- a/sys/i386/xen/pmap.c +++ b/sys/i386/xen/pmap.c @@ -1459,7 +1459,6 @@ pmap_pinit(pmap_t pmap) if (pmap->pm_pdir == NULL) { pmap->pm_pdir = (pd_entry_t *)kva_alloc(NBPTD); if (pmap->pm_pdir == NULL) { - PMAP_LOCK_DESTROY(pmap); #ifdef HAMFISTED_LOCKING mtx_unlock(&createdelete_lock); #endif diff --git a/sys/kern/imgact_elf.c b/sys/kern/imgact_elf.c index 6342119..e15d0ab 100644 --- a/sys/kern/imgact_elf.c +++ b/sys/kern/imgact_elf.c @@ -294,6 +294,19 @@ __elfN(get_brandinfo)(struct image_params *imgp, const char *interp, return (bi); } + /* No known brand, see if the header is recognized by any brand */ + for (i = 0; i < MAX_BRANDS; i++) { + bi = elf_brand_list[i]; + if (bi == NULL || bi->flags & BI_BRAND_NOTE_MANDATORY || + bi->header_supported == NULL) + continue; + if (hdr->e_machine == bi->machine) { + ret = bi->header_supported(imgp); + if (ret) + return (bi); + } + } + /* Lacking a known brand, search for a recognized interpreter. */ if (interp != NULL) { for (i = 0; i < MAX_BRANDS; i++) { diff --git a/sys/kern/kern_exit.c b/sys/kern/kern_exit.c index 8dad2ad..91357a6 100644 --- a/sys/kern/kern_exit.c +++ b/sys/kern/kern_exit.c @@ -1278,8 +1278,8 @@ proc_reparent(struct proc *child, struct proc *parent) LIST_INSERT_HEAD(&child->p_pptr->p_orphans, child, p_orphan); } else { - LIST_INSERT_AFTER(child, - LIST_FIRST(&child->p_pptr->p_orphans), p_orphan); + LIST_INSERT_AFTER(LIST_FIRST(&child->p_pptr->p_orphans), + child, p_orphan); } child->p_treeflag |= P_TREE_ORPHANED; } diff --git a/sys/kern/kern_malloc.c b/sys/kern/kern_malloc.c index 464303a..c39f143 100644 --- a/sys/kern/kern_malloc.c +++ b/sys/kern/kern_malloc.c @@ -120,7 +120,7 @@ static int kmemcount; #define KMEM_ZBASE 16 #define KMEM_ZMASK (KMEM_ZBASE - 1) -#define KMEM_ZMAX PAGE_SIZE +#define KMEM_ZMAX 65536 #define KMEM_ZSIZE (KMEM_ZMAX >> KMEM_ZSHIFT) static uint8_t kmemsize[KMEM_ZSIZE + 1]; @@ -151,21 +151,10 @@ struct { {1024, "1024", }, {2048, "2048", }, {4096, "4096", }, -#if PAGE_SIZE > 4096 {8192, "8192", }, -#if PAGE_SIZE > 8192 {16384, "16384", }, -#if PAGE_SIZE > 16384 {32768, "32768", }, -#if PAGE_SIZE > 32768 {65536, "65536", }, -#if PAGE_SIZE > 65536 -#error "Unsupported PAGE_SIZE" -#endif /* 65536 */ -#endif /* 32768 */ -#endif /* 16384 */ -#endif /* 8192 */ -#endif /* 4096 */ {0, NULL}, }; @@ -183,6 +172,10 @@ u_long vm_kmem_size; SYSCTL_ULONG(_vm, OID_AUTO, kmem_size, CTLFLAG_RDTUN, &vm_kmem_size, 0, "Size of kernel memory"); +static u_long kmem_zmax = KMEM_ZMAX; +SYSCTL_ULONG(_vm, OID_AUTO, kmem_zmax, CTLFLAG_RDTUN, &kmem_zmax, 0, + "Maximum allocation size that malloc(9) would use UMA as backend"); + static u_long vm_kmem_size_min; SYSCTL_ULONG(_vm, OID_AUTO, kmem_size_min, CTLFLAG_RDTUN, &vm_kmem_size_min, 0, "Minimum size of kernel memory"); @@ -496,7 +489,7 @@ malloc(unsigned long size, struct malloc_type *mtp, int flags) size = redzone_size_ntor(size); #endif - if (size <= KMEM_ZMAX) { + if (size <= kmem_zmax) { mtip = mtp->ks_handle; if (size & KMEM_ZMASK) size = (size & ~KMEM_ZMASK) + KMEM_ZBASE; @@ -787,6 +780,9 @@ mallocinit(void *dummy) uma_startup2(); + if (kmem_zmax < PAGE_SIZE || kmem_zmax > KMEM_ZMAX) + kmem_zmax = KMEM_ZMAX; + mt_zone = uma_zcreate("mt_zone", sizeof(struct malloc_type_internal), #ifdef INVARIANTS mtrash_ctor, mtrash_dtor, mtrash_init, mtrash_fini, @@ -811,7 +807,7 @@ mallocinit(void *dummy) } for (;i <= size; i+= KMEM_ZBASE) kmemsize[i >> KMEM_ZSHIFT] = indx; - + } } SYSINIT(kmem, SI_SUB_KMEM, SI_ORDER_SECOND, mallocinit, NULL); diff --git a/sys/kern/kern_sig.c b/sys/kern/kern_sig.c index 561ea0a..8810bf3 100644 --- a/sys/kern/kern_sig.c +++ b/sys/kern/kern_sig.c @@ -621,6 +621,15 @@ sig_ffs(sigset_t *set) return (0); } +static bool +sigact_flag_test(struct sigaction *act, int flag) +{ + + return ((act->sa_flags & flag) != 0 && + (__sighandler_t *)act->sa_sigaction != SIG_IGN && + (__sighandler_t *)act->sa_sigaction != SIG_DFL); +} + /* * kern_sigaction * sigaction @@ -639,6 +648,10 @@ kern_sigaction(td, sig, act, oact, flags) if (!_SIG_VALID(sig)) return (EINVAL); + if (act != NULL && (act->sa_flags & ~(SA_ONSTACK | SA_RESTART | + SA_RESETHAND | SA_NOCLDSTOP | SA_NODEFER | SA_NOCLDWAIT | + SA_SIGINFO)) != 0) + return (EINVAL); PROC_LOCK(p); ps = p->p_sigacts; @@ -679,7 +692,7 @@ kern_sigaction(td, sig, act, oact, flags) ps->ps_catchmask[_SIG_IDX(sig)] = act->sa_mask; SIG_CANTMASK(ps->ps_catchmask[_SIG_IDX(sig)]); - if (act->sa_flags & SA_SIGINFO) { + if (sigact_flag_test(act, SA_SIGINFO)) { ps->ps_sigact[_SIG_IDX(sig)] = (__sighandler_t *)act->sa_sigaction; SIGADDSET(ps->ps_siginfo, sig); @@ -687,19 +700,19 @@ kern_sigaction(td, sig, act, oact, flags) ps->ps_sigact[_SIG_IDX(sig)] = act->sa_handler; SIGDELSET(ps->ps_siginfo, sig); } - if (!(act->sa_flags & SA_RESTART)) + if (!sigact_flag_test(act, SA_RESTART)) SIGADDSET(ps->ps_sigintr, sig); else SIGDELSET(ps->ps_sigintr, sig); - if (act->sa_flags & SA_ONSTACK) + if (sigact_flag_test(act, SA_ONSTACK)) SIGADDSET(ps->ps_sigonstack, sig); else SIGDELSET(ps->ps_sigonstack, sig); - if (act->sa_flags & SA_RESETHAND) + if (sigact_flag_test(act, SA_RESETHAND)) SIGADDSET(ps->ps_sigreset, sig); else SIGDELSET(ps->ps_sigreset, sig); - if (act->sa_flags & SA_NODEFER) + if (sigact_flag_test(act, SA_NODEFER)) SIGADDSET(ps->ps_signodefer, sig); else SIGDELSET(ps->ps_signodefer, sig); @@ -900,14 +913,36 @@ siginit(p) PROC_LOCK(p); ps = p->p_sigacts; mtx_lock(&ps->ps_mtx); - for (i = 1; i <= NSIG; i++) - if (sigprop(i) & SA_IGNORE && i != SIGCONT) + for (i = 1; i <= NSIG; i++) { + if (sigprop(i) & SA_IGNORE && i != SIGCONT) { SIGADDSET(ps->ps_sigignore, i); + SIGADDSET(ps->ps_sigintr, i); + } + } mtx_unlock(&ps->ps_mtx); PROC_UNLOCK(p); } /* + * Reset specified signal to the default disposition. + */ +static void +sigdflt(struct sigacts *ps, int sig) +{ + + mtx_assert(&ps->ps_mtx, MA_OWNED); + SIGDELSET(ps->ps_sigcatch, sig); + if ((sigprop(sig) & SA_IGNORE) != 0 && sig != SIGCONT) + SIGADDSET(ps->ps_sigignore, sig); + ps->ps_sigact[_SIG_IDX(sig)] = SIG_DFL; + SIGDELSET(ps->ps_siginfo, sig); + SIGADDSET(ps->ps_sigintr, sig); + SIGDELSET(ps->ps_sigonstack, sig); + SIGDELSET(ps->ps_sigreset, sig); + SIGDELSET(ps->ps_signodefer, sig); +} + +/* * Reset signals for an exec of the specified process. */ void @@ -928,13 +963,9 @@ execsigs(struct proc *p) mtx_lock(&ps->ps_mtx); while (SIGNOTEMPTY(ps->ps_sigcatch)) { sig = sig_ffs(&ps->ps_sigcatch); - SIGDELSET(ps->ps_sigcatch, sig); - if (sigprop(sig) & SA_IGNORE) { - if (sig != SIGCONT) - SIGADDSET(ps->ps_sigignore, sig); + sigdflt(ps, sig); + if ((sigprop(sig) & SA_IGNORE) != 0) sigqueue_delete_proc(p, sig); - } - ps->ps_sigact[_SIG_IDX(sig)] = SIG_DFL; } /* * Reset stack state to the user stack. @@ -1888,16 +1919,8 @@ trapsignal(struct thread *td, ksiginfo_t *ksi) SIGADDSET(mask, sig); kern_sigprocmask(td, SIG_BLOCK, &mask, NULL, SIGPROCMASK_PROC_LOCKED | SIGPROCMASK_PS_LOCKED); - if (SIGISMEMBER(ps->ps_sigreset, sig)) { - /* - * See kern_sigaction() for origin of this code. - */ - SIGDELSET(ps->ps_sigcatch, sig); - if (sig != SIGCONT && - sigprop(sig) & SA_IGNORE) - SIGADDSET(ps->ps_sigignore, sig); - ps->ps_sigact[_SIG_IDX(sig)] = SIG_DFL; - } + if (SIGISMEMBER(ps->ps_sigreset, sig)) + sigdflt(ps, sig); mtx_unlock(&ps->ps_mtx); } else { /* @@ -2840,16 +2863,8 @@ postsig(sig) kern_sigprocmask(td, SIG_BLOCK, &mask, NULL, SIGPROCMASK_PROC_LOCKED | SIGPROCMASK_PS_LOCKED); - if (SIGISMEMBER(ps->ps_sigreset, sig)) { - /* - * See kern_sigaction() for origin of this code. - */ - SIGDELSET(ps->ps_sigcatch, sig); - if (sig != SIGCONT && - sigprop(sig) & SA_IGNORE) - SIGADDSET(ps->ps_sigignore, sig); - ps->ps_sigact[_SIG_IDX(sig)] = SIG_DFL; - } + if (SIGISMEMBER(ps->ps_sigreset, sig)) + sigdflt(ps, sig); td->td_ru.ru_nsignals++; if (p->p_sig == sig) { p->p_code = 0; diff --git a/sys/kern/kern_umtx.c b/sys/kern/kern_umtx.c index 67720f8..7cfef38 100644 --- a/sys/kern/kern_umtx.c +++ b/sys/kern/kern_umtx.c @@ -1700,10 +1700,12 @@ do_lock_pi(struct thread *td, struct umutex *m, uint32_t flags, * and we need to retry or we lost a race to the thread * unlocking the umtx. */ - if (old == owner) + if (old == owner) { error = umtxq_sleep_pi(uq, pi, owner & ~UMUTEX_CONTESTED, "umtxpi", timeout == NULL ? NULL : &timo); - else { + if (error != 0) + continue; + } else { umtxq_unbusy(&uq->uq_key); umtxq_unlock(&uq->uq_key); } diff --git a/sys/kern/uipc_socket.c b/sys/kern/uipc_socket.c index ddf52b0..eb769a1 100644 --- a/sys/kern/uipc_socket.c +++ b/sys/kern/uipc_socket.c @@ -118,7 +118,9 @@ __FBSDID("$FreeBSD$"); #include <sys/mutex.h> #include <sys/domain.h> #include <sys/file.h> /* for struct knote */ +#include <sys/hhook.h> #include <sys/kernel.h> +#include <sys/khelp.h> #include <sys/event.h> #include <sys/eventhandler.h> #include <sys/poll.h> @@ -157,6 +159,7 @@ static int filt_soread(struct knote *kn, long hint); static void filt_sowdetach(struct knote *kn); static int filt_sowrite(struct knote *kn, long hint); static int filt_solisten(struct knote *kn, long hint); +static int inline hhook_run_socket(struct socket *so, void *hctx, int32_t h_id); static struct filterops solisten_filtops = { .f_isfd = 1, @@ -183,6 +186,9 @@ MALLOC_DEFINE(M_PCB, "pcb", "protocol control block"); VNET_ASSERT(curvnet != NULL, \ ("%s:%d curvnet is NULL, so=%p", __func__, __LINE__, (so))); +VNET_DEFINE(struct hhook_head *, socket_hhh[HHOOK_SOCKET_LAST + 1]); +#define V_socket_hhh VNET(socket_hhh) + /* * Limit on the number of connections in the listen queue waiting * for accept(2). @@ -255,6 +261,24 @@ socket_zone_change(void *tag) } static void +socket_hhook_register(int subtype) +{ + + if (hhook_head_register(HHOOK_TYPE_SOCKET, subtype, + &V_socket_hhh[subtype], + HHOOK_NOWAIT|HHOOK_HEADISINVNET) != 0) + printf("%s: WARNING: unable to register hook\n", __func__); +} + +static void +socket_hhook_deregister(int subtype) +{ + + if (hhook_head_deregister(V_socket_hhh[subtype]) != 0) + printf("%s: WARNING: unable to deregister hook\n", __func__); +} + +static void socket_init(void *tag) { @@ -267,6 +291,29 @@ socket_init(void *tag) } SYSINIT(socket, SI_SUB_PROTO_DOMAININIT, SI_ORDER_ANY, socket_init, NULL); +static void +socket_vnet_init(const void *unused __unused) +{ + int i; + + /* We expect a contiguous range */ + for (i = 0; i <= HHOOK_SOCKET_LAST; i++) + socket_hhook_register(i); +} +VNET_SYSINIT(socket_vnet_init, SI_SUB_PROTO_DOMAININIT, SI_ORDER_ANY, + socket_vnet_init, NULL); + +static void +socket_vnet_uninit(const void *unused __unused) +{ + int i; + + for (i = 0; i <= HHOOK_SOCKET_LAST; i++) + socket_hhook_deregister(i); +} +VNET_SYSUNINIT(socket_vnet_uninit, SI_SUB_PROTO_DOMAININIT, SI_ORDER_ANY, + socket_vnet_uninit, NULL); + /* * Initialise maxsockets. This SYSINIT must be run after * tunable_mbinit(). @@ -333,6 +380,11 @@ soalloc(struct vnet *vnet) return (NULL); } #endif + if (khelp_init_osd(HELPER_CLASS_SOCKET, &so->osd)) { + uma_zfree(socket_zone, so); + return (NULL); + } + SOCKBUF_LOCK_INIT(&so->so_snd, "so_snd"); SOCKBUF_LOCK_INIT(&so->so_rcv, "so_rcv"); sx_init(&so->so_snd.sb_sx, "so_snd_sx"); @@ -348,6 +400,16 @@ soalloc(struct vnet *vnet) so->so_vnet = vnet; #endif mtx_unlock(&so_global_mtx); + + CURVNET_SET(vnet); + /* We shouldn't need the so_global_mtx */ + if (V_socket_hhh[HHOOK_SOCKET_CREATE]->hhh_nhooks > 0) { + if (hhook_run_socket(so, NULL, HHOOK_SOCKET_CREATE)) + /* Do we need more comprehensive error returns? */ + so = NULL; + } + CURVNET_RESTORE(); + return (so); } @@ -384,7 +446,13 @@ sodealloc(struct socket *so) #ifdef MAC mac_socket_destroy(so); #endif + CURVNET_SET(so->so_vnet); + if (V_socket_hhh[HHOOK_SOCKET_CLOSE]->hhh_nhooks > 0) + hhook_run_socket(so, NULL, HHOOK_SOCKET_CLOSE); + CURVNET_RESTORE(); + crfree(so->so_cred); + khelp_destroy_osd(&so->osd); sx_destroy(&so->so_snd.sb_sx); sx_destroy(&so->so_rcv.sb_sx); SOCKBUF_LOCK_DESTROY(&so->so_snd); @@ -2328,6 +2396,25 @@ sorflush(struct socket *so) } /* + * Wrapper for Socket established helper hook. + * Parameters: socket, context of the hook point, hook id. + */ +static int inline +hhook_run_socket(struct socket *so, void *hctx, int32_t h_id) +{ + struct socket_hhook_data hhook_data = { + .so = so, + .hctx = hctx, + .m = NULL + }; + + hhook_run_hooks(V_socket_hhh[h_id], &hhook_data, &so->osd); + + /* Ugly but needed, since hhooks return void for now */ + return (hhook_data.status); +} + +/* * Perhaps this routine, and sooptcopyout(), below, ought to come in an * additional variant to handle the case where the option value needs to be * some kind of integer, but not a specific size. In addition to their use @@ -2572,7 +2659,11 @@ sosetopt(struct socket *so, struct sockopt *sopt) break; default: - error = ENOPROTOOPT; + if (V_socket_hhh[HHOOK_SOCKET_OPT]->hhh_nhooks > 0) + error = hhook_run_socket(so, sopt, + HHOOK_SOCKET_OPT); + else + error = ENOPROTOOPT; break; } if (error == 0 && so->so_proto->pr_ctloutput != NULL) @@ -2755,7 +2846,11 @@ integer: goto integer; default: - error = ENOPROTOOPT; + if (V_socket_hhh[HHOOK_SOCKET_OPT]->hhh_nhooks > 0) + error = hhook_run_socket(so, sopt, + HHOOK_SOCKET_OPT); + else + error = ENOPROTOOPT; break; } } @@ -3160,10 +3255,20 @@ filt_soread(struct knote *kn, long hint) return (1); } else if (so->so_error) /* temporary udp error */ return (1); - else if (kn->kn_sfflags & NOTE_LOWAT) - return (kn->kn_data >= kn->kn_sdata); - else - return (so->so_rcv.sb_cc >= so->so_rcv.sb_lowat); + + if (kn->kn_sfflags & NOTE_LOWAT) { + if (kn->kn_data >= kn->kn_sdata) + return 1; + } else { + if (so->so_rcv.sb_cc >= so->so_rcv.sb_lowat) + return 1; + } + + if (V_socket_hhh[HHOOK_FILT_SOREAD]->hhh_nhooks > 0) + /* This hook returning non-zero indicates an event, not error */ + return (hhook_run_socket(so, NULL, HHOOK_FILT_SOREAD)); + + return (0); } static void @@ -3187,6 +3292,10 @@ filt_sowrite(struct knote *kn, long hint) so = kn->kn_fp->f_data; SOCKBUF_LOCK_ASSERT(&so->so_snd); kn->kn_data = sbspace(&so->so_snd); + + if (V_socket_hhh[HHOOK_FILT_SOWRITE]->hhh_nhooks > 0) + hhook_run_socket(so, kn, HHOOK_FILT_SOWRITE); + if (so->so_snd.sb_state & SBS_CANTSENDMORE) { kn->kn_flags |= EV_EOF; kn->kn_fflags = so->so_error; diff --git a/sys/kern/vfs_mount.c b/sys/kern/vfs_mount.c index 674e526..c407699 100644 --- a/sys/kern/vfs_mount.c +++ b/sys/kern/vfs_mount.c @@ -649,6 +649,10 @@ vfs_donmount(struct thread *td, uint64_t fsflags, struct uio *fsoptions) fsflags |= MNT_SYNCHRONOUS; else if (strcmp(opt->name, "union") == 0) fsflags |= MNT_UNION; + else if (strcmp(opt->name, "automounted") == 0) { + fsflags |= MNT_AUTOMOUNTED; + vfs_freeopt(optlist, opt); + } } /* diff --git a/sys/libkern/strndup.c b/sys/libkern/strndup.c new file mode 100644 index 0000000..43983d5 --- /dev/null +++ b/sys/libkern/strndup.c @@ -0,0 +1,51 @@ +/*- + * Copyright (c) 2003 Networks Associates Technology, Inc. + * All rights reserved. + * + * This software was developed for the FreeBSD Project by Network + * Associates Laboratories, the Security Research Division of Network + * Associates, Inc. under DARPA/SPAWAR contract N66001-01-C-8035 + * ("CBOSS"), as part of the DARPA CHATS research program. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + +#include <sys/param.h> +#include <sys/kernel.h> +#include <sys/libkern.h> +#include <sys/malloc.h> + +char * +strndup(const char *string, size_t maxlen, struct malloc_type *type) +{ + size_t len; + char *copy; + + len = strnlen(string, maxlen) + 1; + copy = malloc(len, type, M_WAITOK); + bcopy(string, copy, len); + copy[len - 1] = '\0'; + return (copy); +} diff --git a/sys/modules/Makefile b/sys/modules/Makefile index d22e952..1ad10c9 100644 --- a/sys/modules/Makefile +++ b/sys/modules/Makefile @@ -48,6 +48,7 @@ SUBDIR= \ ata \ ath \ ath_pci \ + autofs \ ${_auxio} \ ${_bce} \ bfe \ @@ -309,6 +310,7 @@ SUBDIR= \ ${_sf} \ ${_sfxge} \ sge \ + ${_si} \ siba_bwn \ siftr \ siis \ @@ -363,7 +365,9 @@ SUBDIR= \ ${_vxge} \ wb \ ${_wbwd} \ + ${_wds} \ ${_wi} \ + ${_wl} \ wlan \ wlan_acl \ wlan_amrr \ @@ -546,6 +550,7 @@ _rdma= rdma _safe= safe _sbni= sbni _scsi_low= scsi_low +_si= si _smbfs= smbfs _sound= sound _speaker= speaker @@ -556,6 +561,7 @@ _streams= streams _svr4= svr4 _vxge= vxge _wbwd= wbwd +_wds= wds _wi= wi _xe= xe .if ${MK_ZFS} != "no" || defined(ALL_MODULES) @@ -624,6 +630,7 @@ _nvram= nvram _nxge= nxge _tpm= tpm _viawd= viawd +_wl= wl _wpi= wpi .if ${MK_SOURCELESS_UCODE} != "no" _wpifw= wpifw @@ -756,6 +763,7 @@ _s3= s3 _safe= safe _scsi_low= scsi_low _sfxge= sfxge +_si= si _smbfs= smbfs _sound= sound _speaker= speaker diff --git a/sys/modules/aic7xxx/ahc/ahc_eisa/Makefile b/sys/modules/aic7xxx/ahc/ahc_eisa/Makefile index 992c118..4c8253f 100644 --- a/sys/modules/aic7xxx/ahc/ahc_eisa/Makefile +++ b/sys/modules/aic7xxx/ahc/ahc_eisa/Makefile @@ -5,7 +5,7 @@ KMOD= ahc_eisa SRCS= ahc_eisa.c -SRCS+= device_if.h bus_if.h eisa_if.h +SRCS+= device_if.h bus_if.h eisa_if.h pci_if.h SRCS+= opt_scsi.h opt_cam.h opt_aic7xxx.h CFLAGS+= -I${.CURDIR}/../../../../dev/aic7xxx -I.. diff --git a/sys/modules/autofs/Makefile b/sys/modules/autofs/Makefile new file mode 100644 index 0000000..5aaa892 --- /dev/null +++ b/sys/modules/autofs/Makefile @@ -0,0 +1,11 @@ +# $FreeBSD$ + +.PATH: ${.CURDIR}/../../fs/autofs + +KMOD= autofs +SRCS= vnode_if.h \ + autofs.c \ + autofs_vnops.c \ + autofs_vfsops.c + +.include <bsd.kmod.mk> diff --git a/sys/modules/dtrace/fbt/Makefile b/sys/modules/dtrace/fbt/Makefile index 2305710..969f076 100644 --- a/sys/modules/dtrace/fbt/Makefile +++ b/sys/modules/dtrace/fbt/Makefile @@ -5,14 +5,19 @@ SYSDIR?= ${.CURDIR}/../../.. .PATH: ${SYSDIR}/cddl/dev/fbt KMOD= fbt -.if ${MACHINE_CPUARCH} == "powerpc" -SRCS= fbt_powerpc.c +SRCS= fbt.c fbt_isa.c +SRCS+= vnode_if.h + +.if ${MACHINE_CPUARCH} == "amd64" || ${MACHINE_CPUARCH} == "i386" +CFLAGS+= -I${SYSDIR}/cddl/dev/fbt/x86 +.PATH: ${SYSDIR}/cddl/dev/fbt/x86 .else -SRCS= fbt.c +CFLAGS+= -I${SYSDIR}/cddl/dev/fbt/${MACHINE_CPUARCH} +.PATH: ${SYSDIR}/cddl/dev/fbt/${MACHINE_CPUARCH} .endif -SRCS+= vnode_if.h -CFLAGS+= -I${SYSDIR}/cddl/compat/opensolaris \ +CFLAGS+= -I${SYSDIR}/cddl/dev/fbt \ + -I${SYSDIR}/cddl/compat/opensolaris \ -I${SYSDIR}/cddl/contrib/opensolaris/uts/common \ -I${SYSDIR} diff --git a/sys/modules/i40e/Makefile b/sys/modules/ixl/Makefile index 52608ce..94189d0 100755 --- a/sys/modules/i40e/Makefile +++ b/sys/modules/ixl/Makefile @@ -1,10 +1,11 @@ #$FreeBSD$ -.PATH: ${.CURDIR}/../../dev/i40e +.PATH: ${.CURDIR}/../../dev/ixl -KMOD = if_i40e +KMOD = if_ixl SRCS = device_if.h bus_if.h pci_if.h opt_bdg.h -SRCS += if_i40e.c i40e_txrx.c i40e_osdep.c +SRCS += opt_inet.h opt_inet6.h +SRCS += if_ixl.c ixl_txrx.c i40e_osdep.c # Shared source SRCS += i40e_common.c i40e_nvm.c i40e_adminq.c i40e_lan_hmc.c i40e_hmc.c @@ -12,8 +13,8 @@ SRCS += i40e_common.c i40e_nvm.c i40e_adminq.c i40e_lan_hmc.c i40e_hmc.c CFLAGS += -DSMP # Add Flow Director support -# CFLAGS += -DI40E_FDIR +# CFLAGS += -DIXL_FDIR # Debug messages / sysctls -# CFLAGS += -DI40E_DEBUG +# CFLAGS += -DIXLE_DEBUG .include <bsd.kmod.mk> diff --git a/sys/modules/ixlv/Makefile b/sys/modules/ixlv/Makefile new file mode 100755 index 0000000..785cab3 --- /dev/null +++ b/sys/modules/ixlv/Makefile @@ -0,0 +1,20 @@ +#$FreeBSD$ + +.PATH: ${.CURDIR}/../../dev/ixl + +KMOD = if_ixlv +SRCS = device_if.h bus_if.h pci_if.h opt_bdg.h +SRCS += opt_inet.h opt_inet6.h +SRCS += if_ixlv.c ixlvc.c ixl_txrx.c i40e_osdep.c + +# Shared source +SRCS += i40e_common.c i40e_adminq.c i40e_lan_hmc.c i40e_hmc.c + +CFLAGS += -DSMP + +# Add Flow Director support +# CFLAGS += -DIXL_FDIR +# Debug messages / sysctls +# CFLAGS += -DIXLE_DEBUG + +.include <bsd.kmod.mk> diff --git a/sys/modules/si/Makefile b/sys/modules/si/Makefile new file mode 100644 index 0000000..df5361f --- /dev/null +++ b/sys/modules/si/Makefile @@ -0,0 +1,10 @@ +# $FreeBSD$ + +.PATH: ${.CURDIR}/../../dev/si + +KMOD= si +SRCS= si.c si2_z280.c si3_t225.c si_eisa.c si_isa.c si_pci.c +SRCS+= bus_if.h device_if.h eisa_if.h isa_if.h pci_if.h +SRCS+= opt_compat.h opt_debug_si.h opt_eisa.h + +.include <bsd.kmod.mk> diff --git a/sys/modules/wds/Makefile b/sys/modules/wds/Makefile new file mode 100644 index 0000000..5c351b2 --- /dev/null +++ b/sys/modules/wds/Makefile @@ -0,0 +1,10 @@ +# $FreeBSD$ + +.PATH: ${.CURDIR}/../../dev/wds + +KMOD= wds +SRCS= wd7000.c +SRCS+= bus_if.h device_if.h isa_if.h +SRCS+= opt_cam.h + +.include <bsd.kmod.mk> diff --git a/sys/modules/wl/Makefile b/sys/modules/wl/Makefile new file mode 100644 index 0000000..c46891c --- /dev/null +++ b/sys/modules/wl/Makefile @@ -0,0 +1,10 @@ +# $FreeBSD$ + +.PATH: ${.CURDIR}/../../dev/wl + +KMOD= if_wl +SRCS= if_wl.c +SRCS+= bus_if.h device_if.h isa_if.h +SRCS+= opt_inet.h opt_wavelan.h + +.include <bsd.kmod.mk> diff --git a/sys/net/if.c b/sys/net/if.c index 14e2874..eaa7719 100644 --- a/sys/net/if.c +++ b/sys/net/if.c @@ -874,6 +874,12 @@ if_detach_internal(struct ifnet *ifp, int vmove) #endif if_purgemaddrs(ifp); + /* Announce that the interface is gone. */ + rt_ifannouncemsg(ifp, IFAN_DEPARTURE); + EVENTHANDLER_INVOKE(ifnet_departure_event, ifp); + if (IS_DEFAULT_VNET(curvnet)) + devctl_notify("IFNET", ifp->if_xname, "DETACH", NULL); + if (!vmove) { /* * Prevent further calls into the device driver via ifnet. @@ -911,11 +917,6 @@ if_detach_internal(struct ifnet *ifp, int vmove) } } - /* Announce that the interface is gone. */ - rt_ifannouncemsg(ifp, IFAN_DEPARTURE); - EVENTHANDLER_INVOKE(ifnet_departure_event, ifp); - if (IS_DEFAULT_VNET(curvnet)) - devctl_notify("IFNET", ifp->if_xname, "DETACH", NULL); if_delgroups(ifp); /* diff --git a/sys/net/if_gre.c b/sys/net/if_gre.c index c553dc8..302780a 100644 --- a/sys/net/if_gre.c +++ b/sys/net/if_gre.c @@ -128,7 +128,7 @@ static const struct protosw in_gre_protosw = { .pr_protocol = IPPROTO_GRE, .pr_flags = PR_ATOMIC|PR_ADDR, .pr_input = gre_input, - .pr_output = (pr_output_t *)rip_output, + .pr_output = rip_output, .pr_ctlinput = rip_ctlinput, .pr_ctloutput = rip_ctloutput, .pr_usrreqs = &rip_usrreqs @@ -139,7 +139,7 @@ static const struct protosw in_mobile_protosw = { .pr_protocol = IPPROTO_MOBILE, .pr_flags = PR_ATOMIC|PR_ADDR, .pr_input = gre_mobile_input, - .pr_output = (pr_output_t *)rip_output, + .pr_output = rip_output, .pr_ctlinput = rip_ctlinput, .pr_ctloutput = rip_ctloutput, .pr_usrreqs = &rip_usrreqs diff --git a/sys/net/if_stf.c b/sys/net/if_stf.c index 14116cc..7b6fbcf 100644 --- a/sys/net/if_stf.c +++ b/sys/net/if_stf.c @@ -171,7 +171,7 @@ struct protosw in_stf_protosw = { .pr_protocol = IPPROTO_IPV6, .pr_flags = PR_ATOMIC|PR_ADDR, .pr_input = in_stf_input, - .pr_output = (pr_output_t *)rip_output, + .pr_output = rip_output, .pr_ctloutput = rip_ctloutput, .pr_usrreqs = &rip_usrreqs }; diff --git a/sys/net/netmap.h b/sys/net/netmap.h index 15ebf73..1203bfb 100644 --- a/sys/net/netmap.h +++ b/sys/net/netmap.h @@ -445,6 +445,13 @@ struct netmap_if { * Set the virtio-net header length used by the client * of a VALE switch port. * + * NETMAP_BDG_NEWIF + * create a persistent VALE port with name nr_name. + * Used by vale-ctl -n ... + * + * NETMAP_BDG_DELIF + * delete a persistent VALE port. Used by vale-ctl -d ... + * * nr_arg1, nr_arg2, nr_arg3 (in/out) command specific * * @@ -478,11 +485,12 @@ struct nmreq { uint16_t nr_cmd; #define NETMAP_BDG_ATTACH 1 /* attach the NIC */ #define NETMAP_BDG_DETACH 2 /* detach the NIC */ -#define NETMAP_BDG_LOOKUP_REG 3 /* register lookup function */ +#define NETMAP_BDG_REGOPS 3 /* register bridge callbacks */ #define NETMAP_BDG_LIST 4 /* get bridge's info */ #define NETMAP_BDG_VNET_HDR 5 /* set the port virtio-net-hdr length */ #define NETMAP_BDG_OFFSET NETMAP_BDG_VNET_HDR /* deprecated alias */ - +#define NETMAP_BDG_NEWIF 6 /* create a virtual port */ +#define NETMAP_BDG_DELIF 7 /* destroy a virtual port */ uint16_t nr_arg1; /* reserve extra rings in NIOCREGIF */ #define NETMAP_BDG_HOST 1 /* attach the host stack on ATTACH */ @@ -517,6 +525,7 @@ enum { NR_REG_DEFAULT = 0, /* backward compat, should not be used. */ #define NIOCREGIF _IOWR('i', 146, struct nmreq) /* interface register */ #define NIOCTXSYNC _IO('i', 148) /* sync tx queues */ #define NIOCRXSYNC _IO('i', 149) /* sync rx queues */ +#define NIOCCONFIG _IOWR('i',150, struct nm_ifreq) /* for ext. modules */ #endif /* !NIOCREGIF */ @@ -533,4 +542,15 @@ nm_ring_empty(struct netmap_ring *ring) return (ring->cur == ring->tail); } +/* + * Opaque structure that is passed to an external kernel + * module via ioctl(fd, NIOCCONFIG, req) for a user-owned + * bridge port (at this point ephemeral VALE interface). + */ +#define NM_IFRDATA_LEN 256 +struct nm_ifreq { + char nifr_name[IFNAMSIZ]; + char data[NM_IFRDATA_LEN]; +}; + #endif /* _NET_NETMAP_H_ */ diff --git a/sys/net/netmap_user.h b/sys/net/netmap_user.h index 9e0ab43..5faf671 100644 --- a/sys/net/netmap_user.h +++ b/sys/net/netmap_user.h @@ -149,21 +149,21 @@ nm_ring_space(struct netmap_ring *ring) #define ND(_fmt, ...) do {} while(0) #define D(_fmt, ...) \ do { \ - struct timeval t0; \ - gettimeofday(&t0, NULL); \ + struct timeval _t0; \ + gettimeofday(&_t0, NULL); \ fprintf(stderr, "%03d.%06d %s [%d] " _fmt "\n", \ - (int)(t0.tv_sec % 1000), (int)t0.tv_usec, \ + (int)(_t0.tv_sec % 1000), (int)_t0.tv_usec, \ __FUNCTION__, __LINE__, ##__VA_ARGS__); \ } while (0) /* Rate limited version of "D", lps indicates how many per second */ #define RD(lps, format, ...) \ do { \ - static int t0, __cnt; \ + static int __t0, __cnt; \ struct timeval __xxts; \ gettimeofday(&__xxts, NULL); \ - if (t0 != __xxts.tv_sec) { \ - t0 = __xxts.tv_sec; \ + if (__t0 != __xxts.tv_sec) { \ + __t0 = __xxts.tv_sec; \ __cnt = 0; \ } \ if (__cnt++ < lps) { \ @@ -495,23 +495,23 @@ nm_open(const char *ifname, const struct nmreq *req, (char *)d->mem + d->memsize; } - if (nr_flags == NR_REG_SW) { /* host stack */ + if (d->req.nr_flags == NR_REG_SW) { /* host stack */ d->first_tx_ring = d->last_tx_ring = d->req.nr_tx_rings; d->first_rx_ring = d->last_rx_ring = d->req.nr_rx_rings; - } else if (nr_flags == NR_REG_ALL_NIC) { /* only nic */ + } else if (d->req.nr_flags == NR_REG_ALL_NIC) { /* only nic */ d->first_tx_ring = 0; d->first_rx_ring = 0; d->last_tx_ring = d->req.nr_tx_rings - 1; d->last_rx_ring = d->req.nr_rx_rings - 1; - } else if (nr_flags == NR_REG_NIC_SW) { + } else if (d->req.nr_flags == NR_REG_NIC_SW) { d->first_tx_ring = 0; d->first_rx_ring = 0; d->last_tx_ring = d->req.nr_tx_rings; d->last_rx_ring = d->req.nr_rx_rings; - } else if (nr_flags == NR_REG_ONE_NIC) { + } else if (d->req.nr_flags == NR_REG_ONE_NIC) { /* XXX check validity */ d->first_tx_ring = d->last_tx_ring = - d->first_rx_ring = d->last_rx_ring = nr_ringid; + d->first_rx_ring = d->last_rx_ring = d->req.nr_ringid & NETMAP_RING_MASK; } else { /* pipes */ d->first_tx_ring = d->last_tx_ring = 0; d->first_rx_ring = d->last_rx_ring = 0; diff --git a/sys/net/paravirt.h b/sys/net/paravirt.h new file mode 100644 index 0000000..e2885bc --- /dev/null +++ b/sys/net/paravirt.h @@ -0,0 +1,157 @@ +/* + * Copyright (C) 2013 Luigi Rizzo. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#ifndef NET_PARAVIRT_H +#define NET_PARAVIRT_H + + /* + * $FreeBSD$ + * + Support for virtio-like communication between host (H) and guest (G) NICs. + + THIS IS EXPERIMENTAL CODE AND SUBJECT TO CHANGE. + + The guest allocates the shared Communication Status Block (csb) and + write its physical address at CSBAL and CSBAH (data is little endian). + csb->csb_on enables the mode. If disabled, the device acts a regular one. + + Notifications for tx and rx are exchanged without vm exits + if possible. In particular (only mentioning csb mode below), + the following actions are performed. In the description below, + "double check" means verifying again the condition that caused + the previous action, and reverting the action if the condition has + changed. The condition typically depends on a variable set by the + other party, and the double check is done to avoid races. E.g. + + // start with A=0 + again: + // do something + if ( cond(C) ) { // C is written by the other side + A = 1; + // barrier + if ( !cond(C) ) { + A = 0; + goto again; + } + } + + TX: start from idle: + H starts with host_need_txkick=1 when the I/O thread bh is idle. Upon new + transmissions, G always updates guest_tdt. If host_need_txkick == 1, + G also writes to the TDT, which acts as a kick to H (so pending + writes are always dispatched to H as soon as possible.) + + TX: active state: + On the kick (TDT write) H sets host_need_txkick == 0 (if not + done already by G), and starts an I/O thread trying to consume + packets from TDH to guest_tdt, periodically refreshing host_tdh + and TDH. When host_tdh == guest_tdt, H sets host_need_txkick=1, + and then does the "double check" for race avoidance. + + TX: G runs out of buffers + XXX there are two mechanisms, one boolean (using guest_need_txkick) + and one with a threshold (using guest_txkick_at). They are mutually + exclusive. + BOOLEAN: when G has no space, it sets guest_need_txkick=1 and does + the double check. If H finds guest_need_txkick== 1 on a write + to TDH, it also generates an interrupt. + THRESHOLD: G sets guest_txkick_at to the TDH value for which it + wants to receive an interrupt. When H detects that TDH moves + across guest_txkick_at, it generates an interrupt. + This second mechanism reduces the number of interrupts and + TDT writes on the transmit side when the host is too slow. + + RX: start from idle + G starts with guest_need_rxkick = 1 when the receive ring is empty. + As packets arrive, H updates host_rdh (and RDH) and also generates an + interrupt when guest_need_rxkick == 1 (so incoming packets are + always reported to G as soon as possible, apart from interrupt + moderation delays). It also tracks guest_rdt for new buffers. + + RX: active state + As the interrupt arrives, G sets guest_need_rxkick = 0 and starts + draining packets from the receive ring, while updating guest_rdt + When G runs out of packets it sets guest_need_rxkick=1 and does the + double check. + + RX: H runs out of buffers + XXX there are two mechanisms, one boolean (using host_need_rxkick) + and one with a threshold (using host_xxkick_at). They are mutually + exclusive. + BOOLEAN: when H has no space, it sets host_need_rxkick=1 and does the + double check. If G finds host_need_rxkick==1 on updating guest_rdt, + it also writes to RDT causing a kick to H. + THRESHOLD: H sets host_rxkick_at to the RDT value for which it wants + to receive a kick. When G detects that guest_rdt moves across + host_rxkick_at, it writes to RDT thus generates a kick. + This second mechanism reduces the number of kicks and + RDT writes on the receive side when the guest is too slow and + would free only a few buffers at a time. + + */ +struct paravirt_csb { + /* XXX revise the layout to minimize cache bounces. + * Usage is described as follows: + * [GH][RW][+-0] guest/host reads/writes frequently/rarely/almost never + */ + /* these are (mostly) written by the guest */ + uint32_t guest_tdt; /* GW+ HR+ pkt to transmit */ + uint32_t guest_need_txkick; /* GW- HR+ G ran out of tx bufs, request kick */ + uint32_t guest_need_rxkick; /* GW- HR+ G ran out of rx pkts, request kick */ + uint32_t guest_csb_on; /* GW- HR+ enable paravirtual mode */ + uint32_t guest_rdt; /* GW+ HR+ rx buffers available */ + uint32_t guest_txkick_at; /* GW- HR+ tx ring pos. where G expects an intr */ + uint32_t guest_use_msix; /* GW0 HR0 guest uses MSI-X interrupts. */ + uint32_t pad[9]; + + /* these are (mostly) written by the host */ + uint32_t host_tdh; /* GR0 HW- shadow register, mostly unused */ + uint32_t host_need_txkick; /* GR+ HW- start the iothread */ + uint32_t host_txcycles_lim; /* GW- HR- how much to spin before sleep. + * set by the guest */ + uint32_t host_txcycles; /* GR0 HW- counter, but no need to be exported */ + uint32_t host_rdh; /* GR0 HW- shadow register, mostly unused */ + uint32_t host_need_rxkick; /* GR+ HW- flush rx queued packets */ + uint32_t host_isr; /* GR* HW* shadow copy of ISR */ + uint32_t host_rxkick_at; /* GR+ HW- rx ring pos where H expects a kick */ + uint32_t vnet_ring_high; /* Vnet ring physical address high. */ + uint32_t vnet_ring_low; /* Vnet ring physical address low. */ +}; + +#define NET_PARAVIRT_CSB_SIZE 4096 +#define NET_PARAVIRT_NONE (~((uint32_t)0)) + +#ifdef QEMU_PCI_H + +/* + * API functions only available within QEMU + */ + +void paravirt_configure_csb(struct paravirt_csb** csb, uint32_t csbbal, + uint32_t csbbah, QEMUBH* tx_bh, AddressSpace *as); + +#endif /* QEMU_PCI_H */ + +#endif /* NET_PARAVIRT_H */ diff --git a/sys/net/pfvar.h b/sys/net/pfvar.h index 7b4a89c..78a4e8a 100644 --- a/sys/net/pfvar.h +++ b/sys/net/pfvar.h @@ -1123,27 +1123,6 @@ struct pf_pdesc { #define PF_DPORT_RANGE 0x01 /* Dest port uses range */ #define PF_RPORT_RANGE 0x02 /* RDR'ed port uses range */ -/* Counters for other things we want to keep track of */ -#define LCNT_STATES 0 /* states */ -#define LCNT_SRCSTATES 1 /* max-src-states */ -#define LCNT_SRCNODES 2 /* max-src-nodes */ -#define LCNT_SRCCONN 3 /* max-src-conn */ -#define LCNT_SRCCONNRATE 4 /* max-src-conn-rate */ -#define LCNT_OVERLOAD_TABLE 5 /* entry added to overload table */ -#define LCNT_OVERLOAD_FLUSH 6 /* state entries flushed */ -#define LCNT_MAX 7 /* total+1 */ - -#define LCNT_NAMES { \ - "max states per rule", \ - "max-src-states", \ - "max-src-nodes", \ - "max-src-conn", \ - "max-src-conn-rate", \ - "overload table insertion", \ - "overload flush states", \ - NULL \ -} - /* UDP state enumeration */ #define PFUDPS_NO_TRAFFIC 0 #define PFUDPS_SINGLE 1 @@ -1172,16 +1151,6 @@ struct pf_pdesc { NULL \ } -#define FCNT_STATE_SEARCH 0 -#define FCNT_STATE_INSERT 1 -#define FCNT_STATE_REMOVALS 2 -#define FCNT_MAX 3 - -#define SCNT_SRC_NODE_SEARCH 0 -#define SCNT_SRC_NODE_INSERT 1 -#define SCNT_SRC_NODE_REMOVALS 2 -#define SCNT_MAX 3 - #define ACTION_SET(a, x) \ do { \ if ((a) != NULL) \ @@ -1193,24 +1162,22 @@ struct pf_pdesc { if ((a) != NULL) \ *(a) = (x); \ if (x < PFRES_MAX) \ - V_pf_status.counters[x]++; \ + counter_u64_add(V_pf_status.counters[x], 1); \ } while (0) -struct pf_status { - u_int64_t counters[PFRES_MAX]; - u_int64_t lcounters[LCNT_MAX]; /* limit counters */ - u_int64_t fcounters[FCNT_MAX]; - u_int64_t scounters[SCNT_MAX]; - u_int64_t pcounters[2][2][3]; - u_int64_t bcounters[2][2]; - u_int32_t running; - u_int32_t states; - u_int32_t src_nodes; - u_int32_t since; - u_int32_t debug; - u_int32_t hostid; +struct pf_kstatus { + counter_u64_t counters[PFRES_MAX]; /* reason for passing/dropping */ + counter_u64_t lcounters[LCNT_MAX]; /* limit counters */ + counter_u64_t fcounters[FCNT_MAX]; /* state operation counters */ + counter_u64_t scounters[SCNT_MAX]; /* src_node operation counters */ + uint32_t states; + uint32_t src_nodes; + uint32_t running; + uint32_t since; + uint32_t debug; + uint32_t hostid; char ifname[IFNAMSIZ]; - u_int8_t pf_chksum[PF_MD5_DIGEST_LENGTH]; + uint8_t pf_chksum[PF_MD5_DIGEST_LENGTH]; }; struct pf_divert { @@ -1704,8 +1671,8 @@ int pf_match_tag(struct mbuf *, struct pf_rule *, int *, int); int pf_tag_packet(struct mbuf *, struct pf_pdesc *, int); void pf_qid2qname(u_int32_t, char *); -VNET_DECLARE(struct pf_status, pf_status); -#define V_pf_status VNET(pf_status) +VNET_DECLARE(struct pf_kstatus, pf_status); +#define V_pf_status VNET(pf_status) struct pf_limit { uma_zone_t zone; diff --git a/sys/net/rtsock.c b/sys/net/rtsock.c index a8cb577..c7f2268 100644 --- a/sys/net/rtsock.c +++ b/sys/net/rtsock.c @@ -159,7 +159,7 @@ static int rt_xaddrs(caddr_t cp, caddr_t cplim, static int sysctl_dumpentry(struct radix_node *rn, void *vw); static int sysctl_iflist(int af, struct walkarg *w); static int sysctl_ifmalist(int af, struct walkarg *w); -static int route_output(struct mbuf *m, struct socket *so); +static int route_output(struct mbuf *m, struct socket *so, ...); static void rt_getmetrics(const struct rtentry *rt, struct rt_metrics *out); static void rt_dispatch(struct mbuf *, sa_family_t); static struct sockaddr *rtsock_fix_netmask(struct sockaddr *dst, @@ -516,7 +516,7 @@ rtm_get_jailed(struct rt_addrinfo *info, struct ifnet *ifp, /*ARGSUSED*/ static int -route_output(struct mbuf *m, struct socket *so) +route_output(struct mbuf *m, struct socket *so, ...) { struct rt_msghdr *rtm = NULL; struct rtentry *rt = NULL; diff --git a/sys/net/sff8436.h b/sys/net/sff8436.h new file mode 100644 index 0000000..7d705b8 --- /dev/null +++ b/sys/net/sff8436.h @@ -0,0 +1,211 @@ +/*- + * Copyright (c) 2014 Yandex LLC. + * + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +/* + * The following set of constants are from Document SFF-8436 + * "QSFP+ 10 Gbs 4X PLUGGABLE TRANSCEIVER" revision 4.8 dated October 31, 2013 + * + * This SFF standard defines the following QSFP+ memory address module: + * + * 1) 256-byte addressable block and 128-byte pages + * 2) Lower 128-bytes addresses always refer to the same page + * 3) Upper address space may refer to different pages depending on + * "page select" byte value. + * + * Map description: + * + * Serial address 0xA02: + * + * Lower bits + * 0-127 Monitoring data & page select byte + * 128-255: + * + * Page 00: + * 128-191 Base ID Fields + * 191-223 Extended ID + * 223-255 Vendor Specific ID + * + * Page 01 (optional): + * 128-255 App-specific data + * + * Page 02 (optional): + * 128-255 User EEPROM Data + * + * Page 03 (optional for Cable Assmeblies) + * 128-223 Thresholds + * 225-237 Vendor Specific + * 238-253 Channel Controls/Monitor + * 254-255 Reserverd + * + * All these values are read across an I2C (i squared C) bus. + */ + +#define SFF_8436_BASE 0xA0 /* Base address for all requests */ + +/* Table 17 - Lower Memory Map */ +enum { + SFF_8436_MID = 0, /* Copy of SFF_8436_ID field */ + SFF_8436_STATUS = 1, /* 2-bytes status (Table 18) */ + SFF_8436_INTR_START = 3, /* Interrupt flags (Tables 19-21) */ + SFF_8436_INTR_END = 21, + SFF_8436_MODMON_START = 22, /* Module monitors (Table 22 */ + SFF_8436_TEMP = 22, /* Internally measured module temp */ + SFF_8436_VCC = 26, /* Internally mesasure module + * supplied voltage */ + SFF_8436_MODMON_END = 33, + SFF_8436_CHMON_START = 34, /* Channel monitors (Table 23) */ + SFF_8436_RX_CH1_MSB = 34, /* Internally measured RX input power */ + SFF_8436_RX_CH1_LSB = 35, /* for channel 1 */ + SFF_8436_RX_CH2_MSB = 36, /* Internally measured RX input power */ + SFF_8436_RX_CH2_LSB = 37, /* for channel 2 */ + SFF_8436_RX_CH3_MSB = 38, /* Internally measured RX input power */ + SFF_8436_RX_CH3_LSB = 39, /* for channel 3 */ + SFF_8436_RX_CH4_MSB = 40, /* Internally measured RX input power */ + SFF_8436_RX_CH4_LSB = 41, /* for channel 4 */ + SFF_8436_TX_CH1_MSB = 42, /* Internally measured TX bias */ + SFF_8436_TX_CH1_LSB = 43, /* for channel 1 */ + SFF_8436_TX_CH2_MSB = 44, /* Internally measured TX bias */ + SFF_8436_TX_CH2_LSB = 45, /* for channel 2 */ + SFF_8436_TX_CH3_MSB = 46, /* Internally measured TX bias */ + SFF_8436_TX_CH3_LSB = 47, /* for channel 3 */ + SFF_8436_TX_CH4_MSB = 48, /* Internally measured TX bias */ + SFF_8436_TX_CH4_LSB = 49, /* for channel 4 */ + SFF_8436_CHANMON_END = 81, + SFF_8436_CONTROL_START = 86, /* Control (Table 24) */ + SFF_8436_CONTROL_END = 97, + SFF_8436_MASKS_START = 100, /* Module/channel masks (Table 25) */ + SFF_8436_MASKS_END = 106, + SFF_8436_CHPASSWORD = 119, /* Password change entry (4 bytes) */ + SFF_8436_PASSWORD = 123, /* Password entry area (4 bytes) */ + SFF_8436_PAGESEL = 127, /* Page select byte */ +}; + +/* Table 18 - Status Indicators bits */ +/* Byte 1: all bits reserved */ + +/* Byte 2 bits */ +#define SFF_8436_STATUS_FLATMEM (1 << 2) /* Upper memory flat or paged + * 0 = paging, 1=Page 0 only */ +#define SFF_8436_STATUS_INTL (1 << 1) /* Digital state of the intL + * Interrupt output pin */ +#define SFF_8436_STATUS_NOTREADY 1 /* Module has not yet achieved + * power up and memory data is not + * ready. 0=data is ready */ +/* + * Upper page 0 definitions: + * Table 29 - Serial ID: Data fields. + * + * Note that this table is mostly the same as used in SFF-8472. + * The only differenee is address shift: +128 bytes. + */ +enum { + SFF_8436_ID = 128, /* Module Type (defined in sff8472.h) */ + SFF_8436_EXT_ID = 129, /* Extended transceiver type + * (Table 31) */ + SFF_8436_CONNECTOR = 130, /* Connector type (Table 32) */ + SFF_8436_TRANS_START = 131, /* Electric or Optical Compatibility + * (Table 33) */ + SFF_8436_CODE_E1040G = 131, /* 10/40G Ethernet Compliance Code */ + SFF_8436_CODE_SONET = 132, /* SONET Compliance codes */ + SFF_8436_CODE_SATA = 133, /* SAS/SATA compliance codes */ + SFF_8436_CODE_E1G = 134, /* Gigabit Ethernet Compliant codes */ + SFF_8436_CODE_FC_START = 135, /* FC link/media/speed */ + SFF_8436_CODE_FC_END = 138, + SFF_8436_TRANS_END = 138, + SFF_8436_ENCODING = 139, /* Encoding Code for high speed + * serial encoding algorithm (see + * Table 34) */ + SFF_8436_BITRATE = 140, /* Nominal signaling rate, units + * of 100MBd. */ + SFF_8436_RATEID = 141, /* Extended RateSelect Compliance + * (see Table 35) */ + SFF_8436_LEN_SMF_KM = 142, /* Link length supported for single + * mode fiber, units of km */ + SFF_8436_LEN_OM3 = 143, /* Link length supported for 850nm + * 50um multimode fiber, units of 2 m */ + SFF_8436_LEN_OM2 = 144, /* Link length supported for 50 um + * OM2 fiber, units of 1 m */ + SFF_8436_LEN_OM1 = 145, /* Link length supported for 1310 nm + * 50um multi-mode fiber, units of 1m*/ + SFF_8436_LEN_ASM = 144, /* Link length of passive cable assembly + * Length is specified as in the INF + * 8074, units of 1m. 0 means this is + * not value assembly. Value of 255 + * means thet the Module supports length + * greater than 254 m. */ + SFF_8436_DEV_TECH = 147, /* Device/transmitter technology, + * see Table 36/37 */ + SFF_8436_VENDOR_START = 148, /* Vendor name, 16 bytes, padded + * right with 0x20 */ + SFF_8436_VENDOR_END = 163, + SFF_8436_EXTMODCODE = 164, /* Extended module code, Table 164 */ + SFF_8436_VENDOR_OUI_START = 165 , /* Vendor OUI SFP vendor IEEE + * company ID */ + SFF_8436_VENDOR_OUI_END = 167, + SFF_8436_PN_START = 168, /* Vendor PN, padded right with 0x20 */ + SFF_8436_PN_END = 183, + SFF_8436_REV_START = 184, /* Vendor Revision, padded right 0x20 */ + SFF_8436_REV_END = 185, + SFF_8436_WAVELEN_START = 186, /* Wavelength Laser wavelength + * (Passive/Active Cable + * Specification Compliance) */ + SFF_8436_WAVELEN_END = 189, + SFF_8436_MAX_CASE_TEMP = 190, /* Allows to specify maximum temp + * above 70C. Maximum case temperature is + * an 8-bit value in Degrees C. A value + *of 0 implies the standard 70C rating.*/ + SFF_8436_CC_BASE = 191, /* CC_BASE Check code for Base ID + * Fields (first 63 bytes) */ + /* Extended ID fields */ + SFF_8436_OPTIONS_START = 192, /* Options Indicates which optional + * transceiver signals are + * implemented (see Table 39) */ + SFF_8436_OPTIONS_END = 195, + SFF_8436_SN_START = 196, /* Vendor SN, riwght padded with 0x20 */ + SFF_8436_SN_END = 211, + SFF_8436_DATE_START = 212, /* Vendor’s manufacturing date code + * (see Table 40) */ + SFF_8436_DATE_END = 219, + SFF_8436_DIAG_TYPE = 220, /* Diagnostic Monitoring Type + * Indicates which type of + * diagnostic monitoring is + * implemented (if any) in the + * transceiver (see Table 41) */ + + SFF_8436_ENHANCED = 221, /* Enhanced Options Indicates which + * optional features are implemented + * (if any) in the transceiver + * (see Table 42) */ + SFF_8436_CC_EXT = 222, /* Check code for the Extended ID + * Fields (bytes 192-222 incl) */ + SFF_8436_VENDOR_RSRVD_START = 224, + SFF_8436_VENDOR_RSRVD_END = 255, +}; + + diff --git a/sys/net/sff8472.h b/sys/net/sff8472.h index 9345927..08b37ca 100644 --- a/sys/net/sff8472.h +++ b/sys/net/sff8472.h @@ -375,37 +375,98 @@ enum { */ #define SFF_8472_STATUS_DATA_READY (1 << 0) -/* Table 3.2 Identifier values */ +/* + * Table 3.2 Identifier values. + * Identifier constants has taken from SFF-8024 rev 2.2 table 4.1 + * (as referenced by table 3.2 footer) + * */ enum { - SFF_8472_ID_UNKNOWN = 0x0, /* Unknown or unspecified */ - SFF_8472_ID_GBIC = 0x1, /* GBIC */ - SFF_8472_ID_SFF = 0x2, /* Module soldered to motherboard (ex: SFF)*/ - SFF_8472_ID_SFP = 0x3, /* SFP or SFP “Plus†*/ - SFF_8472_ID_XBI = 0x4, /* Reserved for “300 pin XBI†devices */ - SFF_8472_ID_XENPAK = 0x5, /* Reserved for “Xenpak†devices */ - SFF_8472_ID_XFP = 0x6, /* Reserved for “XFP†devices */ - SFF_8472_ID_XFF = 0x7, /* Reserved for “XFF†devices */ - SFF_8472_ID_XFPE = 0x8, /* Reserved for “XFP-E†devices */ - SFF_8472_ID_XPAK = 0x9, /* Reserved for “XPak†devices */ - SFF_8472_ID_X2 = 0xA, /* Reserved for “X2†devices */ - SFF_8472_ID_DWDM_SFP = 0xB, /* Reserved for “DWDM-SFP†devices */ - SFF_8472_ID_QSFP = 0xC, /* Reserved for “QSFP†devices */ - SFF_8472_ID_LAST = SFF_8472_ID_QSFP + SFF_8024_ID_UNKNOWN = 0x0, /* Unknown or unspecified */ + SFF_8024_ID_GBIC = 0x1, /* GBIC */ + SFF_8024_ID_SFF = 0x2, /* Module soldered to motherboard (ex: SFF)*/ + SFF_8024_ID_SFP = 0x3, /* SFP or SFP “Plus†*/ + SFF_8024_ID_XBI = 0x4, /* 300 pin XBI */ + SFF_8024_ID_XENPAK = 0x5, /* Xenpak */ + SFF_8024_ID_XFP = 0x6, /* XFP */ + SFF_8024_ID_XFF = 0x7, /* XFF */ + SFF_8024_ID_XFPE = 0x8, /* XFP-E */ + SFF_8024_ID_XPAK = 0x9, /* XPAk */ + SFF_8024_ID_X2 = 0xA, /* X2 */ + SFF_8024_ID_DWDM_SFP = 0xB, /* DWDM-SFP */ + SFF_8024_ID_QSFP = 0xC, /* QSFP */ + SFF_8024_ID_QSFPPLUS = 0xD, /* QSFP+ */ + SFF_8024_ID_CXP = 0xE, /* CXP */ + SFF_8024_ID_HD4X = 0xF, /* Shielded Mini Multilane HD 4X */ + SFF_8024_ID_HD8X = 0x10, /* Shielded Mini Multilane HD 8X */ + SFF_8024_ID_QSFP28 = 0x11, /* QSFP28 */ + SFF_8024_ID_CXP2 = 0x12, /* CXP2 (aka CXP28) */ + SFF_8024_ID_LAST = SFF_8024_ID_CXP2 }; -static char *sff_8472_id[SFF_8472_ID_LAST + 1] = {"Unknown", +static const char *sff_8024_id[SFF_8024_ID_LAST + 1] = {"Unknown", "GBIC", "SFF", - "SFP", + "SFP/SFP+", "XBI", "Xenpak", "XFP", "XFF", "XFP-E", - "XPak", + "XPAk", "X2", "DWDM-SFP", - "QSFP"}; + "QSFP", + "QSFP+", + "CXP", + "HD4X", + "HD8X", + "QSFP28", + "CXP2"}; + +/* Keep compability with old definitions */ +#define SFF_8472_ID_UNKNOWN SFF_8024_ID_UNKNOWN +#define SFF_8472_ID_GBIC SFF_8024_ID_GBIC +#define SFF_8472_ID_SFF SFF_8024_ID_SFF +#define SFF_8472_ID_SFP SFF_8024_ID_SFP +#define SFF_8472_ID_XBI SFF_8024_ID_XBI +#define SFF_8472_ID_XENPAK SFF_8024_ID_XENPAK +#define SFF_8472_ID_XFP SFF_8024_ID_XFP +#define SFF_8472_ID_XFF SFF_8024_ID_XFF +#define SFF_8472_ID_XFPE SFF_8024_ID_XFPE +#define SFF_8472_ID_XPAK SFF_8024_ID_XPAK +#define SFF_8472_ID_X2 SFF_8024_ID_X2 +#define SFF_8472_ID_DWDM_SFP SFF_8024_ID_DWDM_SFP +#define SFF_8472_ID_QSFP SFF_8024_ID_QSFP +#define SFF_8472_ID_LAST SFF_8024_ID_LAST + +#define sff_8472_id sff_8024_id + +/* + * Table 3.9 Diagnostic Monitoring Type (byte 92) + * bits described. + */ + +/* + * Digital diagnostic monitoring implemented. + * Set to 1 for transceivers implementing DDM. + */ +#define SFF_8472_DDM_DONE (1 << 6) + +/* + * Measurements are internally calibrated. + */ +#define SFF_8472_DDM_INTERNAL (1 << 5) + +/* + * Measurements are externally calibrated. + */ +#define SFF_8472_DDM_EXTERNAL (1 << 4) + +/* + * Received power measurement type + * 0 = OMA, 1 = average power + */ +#define SFF_8472_DDM_PMTYPE (1 << 3) /* Table 3.13 and 3.14 Temperature Conversion Values */ #define SFF_8472_TEMP_SIGN (1 << 15) diff --git a/sys/net80211/ieee80211_amrr.c b/sys/net80211/ieee80211_amrr.c index ab1f033..b1d92c8 100644 --- a/sys/net80211/ieee80211_amrr.c +++ b/sys/net80211/ieee80211_amrr.c @@ -195,12 +195,13 @@ amrr_node_init(struct ieee80211_node *ni) rate &= IEEE80211_RATE_VAL; /* pick initial rate from the rateset - HT or otherwise */ + /* Pick something low that's likely to succeed */ for (amn->amn_rix = rs->rs_nrates - 1; amn->amn_rix > 0; amn->amn_rix--) { /* legacy - anything < 36mbit, stop searching */ - /* 11n - stop at MCS4 / MCS12 / MCS28 */ + /* 11n - stop at MCS4 */ if (amrr_node_is_11n(ni)) { - if ((rs->rs_rates[amn->amn_rix] & 0x7) < 4) + if ((rs->rs_rates[amn->amn_rix] & 0x1f) < 4) break; } else if ((rs->rs_rates[amn->amn_rix] & IEEE80211_RATE_VAL) <= 72) break; diff --git a/sys/netinet/cc/cc_cdg.c b/sys/netinet/cc/cc_cdg.c index 3ebaacf..f2c4eea 100644 --- a/sys/netinet/cc/cc_cdg.c +++ b/sys/netinet/cc/cc_cdg.c @@ -221,6 +221,7 @@ static VNET_DEFINE(uint32_t, cdg_hold_backoff); /* Function prototypes. */ static int cdg_mod_init(void); +static int cdg_mod_destroy(void); static void cdg_conn_init(struct cc_var *ccv); static int cdg_cb_init(struct cc_var *ccv); static void cdg_cb_destroy(struct cc_var *ccv); @@ -234,7 +235,8 @@ struct cc_algo cdg_cc_algo = { .cb_destroy = cdg_cb_destroy, .cb_init = cdg_cb_init, .conn_init = cdg_conn_init, - .cong_signal = cdg_cong_signal + .cong_signal = cdg_cong_signal, + .mod_destroy = cdg_mod_destroy }; /* Vnet created and being initialised. */ @@ -278,6 +280,14 @@ cdg_mod_init(void) } static int +cdg_mod_destroy(void) +{ + + uma_zdestroy(qdiffsample_zone); + return (0); +} + +static int cdg_cb_init(struct cc_var *ccv) { struct cdg *cdg_data; diff --git a/sys/netinet/in.c b/sys/netinet/in.c index 2d5e3cc..52fc446 100644 --- a/sys/netinet/in.c +++ b/sys/netinet/in.c @@ -242,19 +242,26 @@ in_control(struct socket *so, u_long cmd, caddr_t data, struct ifnet *ifp, return (EADDRNOTAVAIL); /* - * For SIOCGIFADDR, pick the first address. For the rest of - * ioctls, try to find specified address. + * Find address for this interface, if it exists. If an + * address was specified, find that one instead of the + * first one on the interface, if possible. */ IF_ADDR_RLOCK(ifp); TAILQ_FOREACH(ifa, &ifp->if_addrhead, ifa_link) { if (ifa->ifa_addr->sa_family != AF_INET) continue; ia = (struct in_ifaddr *)ifa; - if (cmd == SIOCGIFADDR || addr->sin_addr.s_addr == INADDR_ANY) - break; if (ia->ia_addr.sin_addr.s_addr == addr->sin_addr.s_addr) break; } + if (ifa == NULL) + TAILQ_FOREACH(ifa, &ifp->if_addrhead, ifa_link) + if (ifa->ifa_addr->sa_family == AF_INET) { + ia = (struct in_ifaddr *)ifa; + if (prison_check_ip4(td->td_ucred, + &ia->ia_addr.sin_addr) == 0) + break; + } if (ifa == NULL) { IF_ADDR_RUNLOCK(ifp); diff --git a/sys/netinet/in_gif.c b/sys/netinet/in_gif.c index 6ee1634..d84066a 100644 --- a/sys/netinet/in_gif.c +++ b/sys/netinet/in_gif.c @@ -81,7 +81,7 @@ struct protosw in_gif_protosw = { .pr_protocol = 0/* IPPROTO_IPV[46] */, .pr_flags = PR_ATOMIC|PR_ADDR, .pr_input = in_gif_input, - .pr_output = (pr_output_t *)rip_output, + .pr_output = rip_output, .pr_ctloutput = rip_ctloutput, .pr_usrreqs = &rip_usrreqs }; diff --git a/sys/netinet/ip_carp.c b/sys/netinet/ip_carp.c index 1600f8c..17bc0e7 100644 --- a/sys/netinet/ip_carp.c +++ b/sys/netinet/ip_carp.c @@ -2054,7 +2054,7 @@ static struct protosw in_carp_protosw = { .pr_protocol = IPPROTO_CARP, .pr_flags = PR_ATOMIC|PR_ADDR, .pr_input = carp_input, - .pr_output = (pr_output_t *)rip_output, + .pr_output = rip_output, .pr_ctloutput = rip_ctloutput, .pr_usrreqs = &rip_usrreqs }; @@ -2068,7 +2068,7 @@ static struct protosw in6_carp_protosw = { .pr_protocol = IPPROTO_CARP, .pr_flags = PR_ATOMIC|PR_ADDR, .pr_input = carp6_input, - .pr_output = (pr_output_t *)rip6_output, + .pr_output = rip6_output, .pr_ctloutput = rip6_ctloutput, .pr_usrreqs = &rip6_usrreqs }; diff --git a/sys/netinet/ip_mroute.c b/sys/netinet/ip_mroute.c index 6c4a0d7..05605a8 100644 --- a/sys/netinet/ip_mroute.c +++ b/sys/netinet/ip_mroute.c @@ -247,7 +247,7 @@ static const struct protosw in_pim_protosw = { .pr_protocol = IPPROTO_PIM, .pr_flags = PR_ATOMIC|PR_ADDR|PR_LASTHDR, .pr_input = pim_input, - .pr_output = (pr_output_t *)rip_output, + .pr_output = rip_output, .pr_ctloutput = rip_ctloutput, .pr_usrreqs = &rip_usrreqs }; diff --git a/sys/netinet/ip_var.h b/sys/netinet/ip_var.h index 4b4b135..c2ab8b4 100644 --- a/sys/netinet/ip_var.h +++ b/sys/netinet/ip_var.h @@ -235,7 +235,7 @@ void rip_init(void); void rip_destroy(void); #endif int rip_input(struct mbuf **, int *, int); -int rip_output(struct mbuf *, struct socket *, u_long); +int rip_output(struct mbuf *, struct socket *, ...); int ipip_input(struct mbuf **, int *, int); int rsvp_input(struct mbuf **, int *, int); int ip_rsvp_init(struct socket *); diff --git a/sys/netinet/raw_ip.c b/sys/netinet/raw_ip.c index 1c90d0c..9970631 100644 --- a/sys/netinet/raw_ip.c +++ b/sys/netinet/raw_ip.c @@ -74,6 +74,7 @@ __FBSDID("$FreeBSD$"); #include <netipsec/ipsec.h> #endif /*IPSEC*/ +#include <machine/stdarg.h> #include <security/mac/mac_framework.h> VNET_DEFINE(int, ip_defttl) = IPDEFTTL; @@ -426,14 +427,20 @@ rip_input(struct mbuf **mp, int *offp, int proto) * have setup with control call. */ int -rip_output(struct mbuf *m, struct socket *so, u_long dst) +rip_output(struct mbuf *m, struct socket *so, ...) { struct ip *ip; int error; struct inpcb *inp = sotoinpcb(so); + va_list ap; + u_long dst; int flags = ((so->so_options & SO_DONTROUTE) ? IP_ROUTETOIF : 0) | IP_ALLOWBROADCAST; + va_start(ap, so); + dst = va_arg(ap, u_long); + va_end(ap); + /* * If the user handed us a complete IP packet, use it. Otherwise, * allocate an mbuf for a header and fill it in. diff --git a/sys/netinet/sctp.h b/sys/netinet/sctp.h index c2497a7..9b795ed 100644 --- a/sys/netinet/sctp.h +++ b/sys/netinet/sctp.h @@ -140,6 +140,8 @@ struct sctp_paramhdr { #define SCTP_GET_ASSOC_NUMBER 0x00000104 /* ro */ #define SCTP_GET_ASSOC_ID_LIST 0x00000105 /* ro */ #define SCTP_TIMEOUTS 0x00000106 +#define SCTP_PR_STREAM_STATUS 0x00000107 +#define SCTP_PR_ASSOC_STATUS 0x00000108 /* * user socket options: BSD implementation specific diff --git a/sys/netinet/sctp_input.c b/sys/netinet/sctp_input.c index 3af6710..f7ebe57 100644 --- a/sys/netinet/sctp_input.c +++ b/sys/netinet/sctp_input.c @@ -1469,6 +1469,11 @@ sctp_process_cookie_existing(struct mbuf *m, int iphlen, int offset, int spec_flag = 0; uint32_t how_indx; +#if defined(SCTP_DETAILED_STR_STATS) + int j; + +#endif + net = *netp; /* I know that the TCB is non-NULL from the caller */ asoc = &stcb->asoc; @@ -1931,6 +1936,15 @@ sctp_process_cookie_existing(struct mbuf *m, int iphlen, int offset, sctp_report_all_outbound(stcb, 0, 1, SCTP_SO_LOCKED); for (i = 0; i < stcb->asoc.streamoutcnt; i++) { stcb->asoc.strmout[i].chunks_on_queues = 0; +#if defined(SCTP_DETAILED_STR_STATS) + for (j = 0; j < SCTP_PR_SCTP_MAX + 1; j++) { + asoc->strmout[i].abandoned_sent[j] = 0; + asoc->strmout[i].abandoned_unsent[j] = 0; + } +#else + asoc->strmout[i].abandoned_sent[0] = 0; + asoc->strmout[i].abandoned_unsent[0] = 0; +#endif stcb->asoc.strmout[i].stream_no = i; stcb->asoc.strmout[i].next_sequence_send = 0; stcb->asoc.strmout[i].last_msg_incomplete = 0; diff --git a/sys/netinet/sctp_output.c b/sys/netinet/sctp_output.c index b9b8573..e1a6a03 100644 --- a/sys/netinet/sctp_output.c +++ b/sys/netinet/sctp_output.c @@ -3618,6 +3618,11 @@ sctp_process_cmsgs_for_init(struct sctp_tcb *stcb, struct mbuf *control, int *er struct sctp_stream_out *tmp_str; unsigned int i; +#if defined(SCTP_DETAILED_STR_STATS) + int j; + +#endif + /* Default is NOT correct */ SCTPDBG(SCTP_DEBUG_OUTPUT1, "Ok, default:%d pre_open:%d\n", stcb->asoc.streamoutcnt, stcb->asoc.pre_open_streams); @@ -3638,6 +3643,15 @@ sctp_process_cmsgs_for_init(struct sctp_tcb *stcb, struct mbuf *control, int *er TAILQ_INIT(&stcb->asoc.strmout[i].outqueue); stcb->asoc.strmout[i].chunks_on_queues = 0; stcb->asoc.strmout[i].next_sequence_send = 0; +#if defined(SCTP_DETAILED_STR_STATS) + for (j = 0; j < SCTP_PR_SCTP_MAX + 1; j++) { + stcb->asoc.strmout[i].abandoned_sent[j] = 0; + stcb->asoc.strmout[i].abandoned_unsent[j] = 0; + } +#else + stcb->asoc.strmout[i].abandoned_sent[0] = 0; + stcb->asoc.strmout[i].abandoned_unsent[0] = 0; +#endif stcb->asoc.strmout[i].stream_no = i; stcb->asoc.strmout[i].last_msg_incomplete = 0; stcb->asoc.ss_functions.sctp_ss_init_stream(&stcb->asoc.strmout[i], NULL); @@ -11923,6 +11937,11 @@ sctp_send_str_reset_req(struct sctp_tcb *stcb, struct sctp_stream_queue_pending *sp, *nsp; int i; +#if defined(SCTP_DETAILED_STR_STATS) + int j; + +#endif + oldstream = stcb->asoc.strmout; /* get some more */ SCTP_MALLOC(stcb->asoc.strmout, struct sctp_stream_out *, @@ -11968,6 +11987,15 @@ sctp_send_str_reset_req(struct sctp_tcb *stcb, for (i = stcb->asoc.streamoutcnt; i < (stcb->asoc.streamoutcnt + adding_o); i++) { TAILQ_INIT(&stcb->asoc.strmout[i].outqueue); stcb->asoc.strmout[i].chunks_on_queues = 0; +#if defined(SCTP_DETAILED_STR_STATS) + for (j = 0; j < SCTP_PR_SCTP_MAX + 1; j++) { + stcb->asoc.strmout[i].abandoned_sent[j] = 0; + stcb->asoc.strmout[i].abandoned_unsent[j] = 0; + } +#else + stcb->asoc.strmout[i].abandoned_sent[0] = 0; + stcb->asoc.strmout[i].abandoned_unsent[0] = 0; +#endif stcb->asoc.strmout[i].next_sequence_send = 0x0; stcb->asoc.strmout[i].stream_no = i; stcb->asoc.strmout[i].last_msg_incomplete = 0; diff --git a/sys/netinet/sctp_structs.h b/sys/netinet/sctp_structs.h index 9be8614..24c456c 100644 --- a/sys/netinet/sctp_structs.h +++ b/sys/netinet/sctp_structs.h @@ -587,6 +587,14 @@ struct sctp_stream_out { struct sctp_streamhead outqueue; union scheduling_parameters ss_params; uint32_t chunks_on_queues; +#if defined(SCTP_DETAILED_STR_STATS) + uint32_t abandoned_unsent[SCTP_PR_SCTP_MAX + 1]; + uint32_t abandoned_sent[SCTP_PR_SCTP_MAX + 1]; +#else + /* Only the aggregation */ + uint32_t abandoned_unsent[1]; + uint32_t abandoned_sent[1]; +#endif uint16_t stream_no; uint16_t next_sequence_send; /* next one I expect to send out */ uint8_t last_msg_incomplete; @@ -1211,6 +1219,8 @@ struct sctp_association { uint32_t timoshutdownack; struct timeval start_time; struct timeval discontinuity_time; + uint64_t abandoned_unsent[SCTP_PR_SCTP_MAX + 1]; + uint64_t abandoned_sent[SCTP_PR_SCTP_MAX + 1]; }; #endif diff --git a/sys/netinet/sctp_uio.h b/sys/netinet/sctp_uio.h index 18d58b0..d22b9d1 100644 --- a/sys/netinet/sctp_uio.h +++ b/sys/netinet/sctp_uio.h @@ -249,18 +249,23 @@ struct sctp_snd_all_completes { SCTP_SACK_IMMEDIATELY)) != 0) /* for the endpoint */ -/* The lower byte is an enumeration of PR-SCTP policies */ +/* The lower four bits is an enumeration of PR-SCTP policies */ #define SCTP_PR_SCTP_NONE 0x0000/* Reliable transfer */ #define SCTP_PR_SCTP_TTL 0x0001/* Time based PR-SCTP */ #define SCTP_PR_SCTP_BUF 0x0002/* Buffer based PR-SCTP */ #define SCTP_PR_SCTP_RTX 0x0003/* Number of retransmissions based PR-SCTP */ +#define SCTP_PR_SCTP_MAX SCTP_PR_SCTP_RTX +#define SCTP_PR_SCTP_ALL 0x000f/* Used for aggregated stats */ #define PR_SCTP_POLICY(x) ((x) & 0x0f) -#define PR_SCTP_ENABLED(x) (PR_SCTP_POLICY(x) != SCTP_PR_SCTP_NONE) +#define PR_SCTP_ENABLED(x) ((PR_SCTP_POLICY(x) != SCTP_PR_SCTP_NONE) && \ + (PR_SCTP_POLICY(x) != SCTP_PR_SCTP_ALL)) #define PR_SCTP_TTL_ENABLED(x) (PR_SCTP_POLICY(x) == SCTP_PR_SCTP_TTL) #define PR_SCTP_BUF_ENABLED(x) (PR_SCTP_POLICY(x) == SCTP_PR_SCTP_BUF) #define PR_SCTP_RTX_ENABLED(x) (PR_SCTP_POLICY(x) == SCTP_PR_SCTP_RTX) -#define PR_SCTP_INVALID_POLICY(x) (PR_SCTP_POLICY(x) > SCTP_PR_SCTP_RTX) +#define PR_SCTP_INVALID_POLICY(x) (PR_SCTP_POLICY(x) > SCTP_PR_SCTP_MAX) +#define PR_SCTP_VALID_POLICY(x) (PR_SCTP_POLICY(x) <= SCTP_PR_SCTP_MAX) + /* Stat's */ struct sctp_pcbinfo { uint32_t ep_count; @@ -719,6 +724,14 @@ struct sctp_udpencaps { uint16_t sue_port; }; +struct sctp_prstatus { + sctp_assoc_t sprstat_assoc_id; + uint16_t sprstat_sid; + uint16_t sprstat_policy; + uint64_t sprstat_abandoned_unsent; + uint64_t sprstat_abandoned_sent; +}; + struct sctp_cwnd_args { struct sctp_nets *net; /* network to *//* FIXME: LP64 issue */ uint32_t cwnd_new_value;/* cwnd in k */ diff --git a/sys/netinet/sctp_usrreq.c b/sys/netinet/sctp_usrreq.c index 1d49ef5..da22c1f 100644 --- a/sys/netinet/sctp_usrreq.c +++ b/sys/netinet/sctp_usrreq.c @@ -3510,6 +3510,72 @@ flags_out: } break; } + case SCTP_PR_STREAM_STATUS: + { + struct sctp_prstatus *sprstat; + uint16_t sid; + uint16_t policy; + + SCTP_CHECK_AND_CAST(sprstat, optval, struct sctp_prstatus, *optsize); + SCTP_FIND_STCB(inp, stcb, sprstat->sprstat_assoc_id); + + sid = sprstat->sprstat_sid; + policy = sprstat->sprstat_policy; +#if defined(SCTP_DETAILED_STR_STATS) + if ((stcb != NULL) && + (policy != SCTP_PR_SCTP_NONE) && + (sid < stcb->asoc.streamoutcnt) && + ((policy == SCTP_PR_SCTP_ALL) || + (PR_SCTP_VALID_POLICY(policy)))) { +#else + if ((stcb != NULL) && + (policy != SCTP_PR_SCTP_NONE) && + (sid < stcb->asoc.streamoutcnt) && + (policy == SCTP_PR_SCTP_ALL)) { +#endif + if (policy == SCTP_PR_SCTP_ALL) { + sprstat->sprstat_abandoned_unsent = stcb->asoc.strmout[sid].abandoned_unsent[0]; + sprstat->sprstat_abandoned_sent = stcb->asoc.strmout[sid].abandoned_sent[0]; + } else { + sprstat->sprstat_abandoned_unsent = stcb->asoc.strmout[sid].abandoned_unsent[policy]; + sprstat->sprstat_abandoned_sent = stcb->asoc.strmout[sid].abandoned_sent[policy]; + } + SCTP_TCB_UNLOCK(stcb); + *optsize = sizeof(struct sctp_prstatus); + } else { + SCTP_LTRACE_ERR_RET(inp, NULL, NULL, SCTP_FROM_SCTP_USRREQ, EINVAL); + error = EINVAL; + } + break; + } + case SCTP_PR_ASSOC_STATUS: + { + struct sctp_prstatus *sprstat; + uint16_t policy; + + SCTP_CHECK_AND_CAST(sprstat, optval, struct sctp_prstatus, *optsize); + SCTP_FIND_STCB(inp, stcb, sprstat->sprstat_assoc_id); + + policy = sprstat->sprstat_policy; + if ((stcb != NULL) && + (policy != SCTP_PR_SCTP_NONE) && + ((policy == SCTP_PR_SCTP_ALL) || + (PR_SCTP_VALID_POLICY(policy)))) { + if (policy == SCTP_PR_SCTP_ALL) { + sprstat->sprstat_abandoned_unsent = stcb->asoc.abandoned_unsent[0]; + sprstat->sprstat_abandoned_sent = stcb->asoc.abandoned_sent[0]; + } else { + sprstat->sprstat_abandoned_unsent = stcb->asoc.abandoned_unsent[policy]; + sprstat->sprstat_abandoned_sent = stcb->asoc.abandoned_sent[policy]; + } + SCTP_TCB_UNLOCK(stcb); + *optsize = sizeof(struct sctp_prstatus); + } else { + SCTP_LTRACE_ERR_RET(inp, NULL, NULL, SCTP_FROM_SCTP_USRREQ, EINVAL); + error = EINVAL; + } + break; + } default: SCTP_LTRACE_ERR_RET(inp, NULL, NULL, SCTP_FROM_SCTP_USRREQ, ENOPROTOOPT); error = ENOPROTOOPT; diff --git a/sys/netinet/sctputil.c b/sys/netinet/sctputil.c index d2a1f8f..6bb1001 100644 --- a/sys/netinet/sctputil.c +++ b/sys/netinet/sctputil.c @@ -896,6 +896,11 @@ sctp_init_asoc(struct sctp_inpcb *inp, struct sctp_tcb *stcb, */ int i; +#if defined(SCTP_DETAILED_STR_STATS) + int j; + +#endif + asoc = &stcb->asoc; /* init all variables to a known value. */ SCTP_SET_STATE(&stcb->asoc, SCTP_STATE_INUSE); @@ -1056,6 +1061,15 @@ sctp_init_asoc(struct sctp_inpcb *inp, struct sctp_tcb *stcb, asoc->strmout[i].next_sequence_send = 0x0; TAILQ_INIT(&asoc->strmout[i].outqueue); asoc->strmout[i].chunks_on_queues = 0; +#if defined(SCTP_DETAILED_STR_STATS) + for (j = 0; j < SCTP_PR_SCTP_MAX + 1; j++) { + asoc->strmout[i].abandoned_sent[j] = 0; + asoc->strmout[i].abandoned_unsent[j] = 0; + } +#else + asoc->strmout[i].abandoned_sent[0] = 0; + asoc->strmout[i].abandoned_unsent[0] = 0; +#endif asoc->strmout[i].stream_no = i; asoc->strmout[i].last_msg_incomplete = 0; asoc->ss_functions.sctp_ss_init_stream(&asoc->strmout[i], NULL); @@ -1111,6 +1125,10 @@ sctp_init_asoc(struct sctp_inpcb *inp, struct sctp_tcb *stcb, asoc->timoshutdownack = 0; (void)SCTP_GETTIME_TIMEVAL(&asoc->start_time); asoc->discontinuity_time = asoc->start_time; + for (i = 0; i < SCTP_PR_SCTP_MAX + 1; i++) { + asoc->abandoned_unsent[i] = 0; + asoc->abandoned_sent[i] = 0; + } /* * sa_ignore MEMLEAK {memory is put in the assoc mapping array and * freed later when the association is freed. @@ -4713,6 +4731,21 @@ sctp_release_pr_sctp_chunk(struct sctp_tcb *stcb, struct sctp_tmit_chunk *tp1, stream = tp1->rec.data.stream_number; seq = tp1->rec.data.stream_seq; + if (sent || !(tp1->rec.data.rcv_flags & SCTP_DATA_FIRST_FRAG)) { + stcb->asoc.abandoned_sent[0]++; + stcb->asoc.abandoned_sent[PR_SCTP_POLICY(tp1->flags)]++; + stcb->asoc.strmout[stream].abandoned_sent[0]++; +#if defined(SCTP_DETAILED_STR_STATS) + stcb->asoc.strmout[stream].abandoned_sent[PR_SCTP_POLICY(tp1->flags)]++; +#endif + } else { + stcb->asoc.abandoned_unsent[0]++; + stcb->asoc.abandoned_unsent[PR_SCTP_POLICY(tp1->flags)]++; + stcb->asoc.strmout[stream].abandoned_unsent[0]++; +#if defined(SCTP_DETAILED_STR_STATS) + stcb->asoc.strmout[stream].abandoned_unsent[PR_SCTP_POLICY(tp1->flags)]++; +#endif + } do { ret_sz += tp1->book_size; if (tp1->data != NULL) { diff --git a/sys/netinet6/in6.c b/sys/netinet6/in6.c index 7c31827..a619318 100644 --- a/sys/netinet6/in6.c +++ b/sys/netinet6/in6.c @@ -252,7 +252,7 @@ in6_control(struct socket *so, u_long cmd, caddr_t data, return (mrt6_ioctl ? mrt6_ioctl(cmd, data) : EOPNOTSUPP); } - switch(cmd) { + switch (cmd) { case SIOCAADDRCTL_POLICY: case SIOCDADDRCTL_POLICY: if (td != NULL) { @@ -324,14 +324,10 @@ in6_control(struct socket *so, u_long cmd, caddr_t data, if (error) return (error); } - return (scope6_set(ifp, - (struct scope6_id *)ifr->ifr_ifru.ifru_scope_id)); + /* FALLTHROUGH */ case SIOCGSCOPE6: - return (scope6_get(ifp, - (struct scope6_id *)ifr->ifr_ifru.ifru_scope_id)); case SIOCGSCOPE6DEF: - return (scope6_get_default((struct scope6_id *) - ifr->ifr_ifru.ifru_scope_id)); + return (scope6_ioctl(cmd, data, ifp)); } /* @@ -442,6 +438,13 @@ in6_control(struct socket *so, u_long cmd, caddr_t data, if (error) goto out; } + /* FALLTHROUGH */ + case SIOCGIFSTAT_IN6: + case SIOCGIFSTAT_ICMP6: + if (ifp->if_afdata[AF_INET6] == NULL) { + error = EPFNOSUPPORT; + goto out; + } break; case SIOCGIFADDR_IN6: @@ -517,10 +520,6 @@ in6_control(struct socket *so, u_long cmd, caddr_t data, break; case SIOCGIFSTAT_IN6: - if (ifp == NULL) { - error = EINVAL; - goto out; - } COUNTER_ARRAY_COPY(((struct in6_ifextra *) ifp->if_afdata[AF_INET6])->in6_ifstat, &ifr->ifr_ifru.ifru_stat, @@ -528,10 +527,6 @@ in6_control(struct socket *so, u_long cmd, caddr_t data, break; case SIOCGIFSTAT_ICMP6: - if (ifp == NULL) { - error = EINVAL; - goto out; - } COUNTER_ARRAY_COPY(((struct in6_ifextra *) ifp->if_afdata[AF_INET6])->icmp6_ifstat, &ifr->ifr_ifru.ifru_icmp6stat, @@ -762,7 +757,7 @@ in6_control(struct socket *so, u_long cmd, caddr_t data, } default: - if (ifp == NULL || ifp->if_ioctl == 0) { + if (ifp->if_ioctl == NULL) { error = EOPNOTSUPP; goto out; } diff --git a/sys/netinet6/in6_gif.c b/sys/netinet6/in6_gif.c index f740b37..b792ed5 100644 --- a/sys/netinet6/in6_gif.c +++ b/sys/netinet6/in6_gif.c @@ -89,7 +89,7 @@ struct protosw in6_gif_protosw = { .pr_protocol = 0, /* IPPROTO_IPV[46] */ .pr_flags = PR_ATOMIC|PR_ADDR, .pr_input = in6_gif_input, - .pr_output = (pr_output_t *)rip6_output, + .pr_output = rip6_output, .pr_ctloutput = rip6_ctloutput, .pr_usrreqs = &rip6_usrreqs }; diff --git a/sys/netinet6/in6_proto.c b/sys/netinet6/in6_proto.c index 209dc3a..8e8baec 100644 --- a/sys/netinet6/in6_proto.c +++ b/sys/netinet6/in6_proto.c @@ -233,7 +233,7 @@ struct protosw inet6sw[] = { .pr_protocol = IPPROTO_RAW, .pr_flags = PR_ATOMIC|PR_ADDR, .pr_input = rip6_input, - .pr_output = (pr_output_t *)rip6_output, + .pr_output = rip6_output, .pr_ctlinput = rip6_ctlinput, .pr_ctloutput = rip6_ctloutput, #ifndef INET /* Do not call initialization twice. */ @@ -247,7 +247,7 @@ struct protosw inet6sw[] = { .pr_protocol = IPPROTO_ICMPV6, .pr_flags = PR_ATOMIC|PR_ADDR|PR_LASTHDR, .pr_input = icmp6_input, - .pr_output = (pr_output_t *)rip6_output, + .pr_output = rip6_output, .pr_ctlinput = rip6_ctlinput, .pr_ctloutput = rip6_ctloutput, .pr_fasttimo = icmp6_fasttimo, @@ -312,7 +312,7 @@ struct protosw inet6sw[] = { .pr_protocol = IPPROTO_IPV4, .pr_flags = PR_ATOMIC|PR_ADDR|PR_LASTHDR, .pr_input = encap6_input, - .pr_output = (pr_output_t *)rip6_output, + .pr_output = rip6_output, .pr_ctloutput = rip6_ctloutput, .pr_init = encap_init, .pr_usrreqs = &rip6_usrreqs @@ -324,7 +324,7 @@ struct protosw inet6sw[] = { .pr_protocol = IPPROTO_IPV6, .pr_flags = PR_ATOMIC|PR_ADDR|PR_LASTHDR, .pr_input = encap6_input, - .pr_output = (pr_output_t *)rip6_output, + .pr_output = rip6_output, .pr_ctloutput = rip6_ctloutput, .pr_init = encap_init, .pr_usrreqs = &rip6_usrreqs @@ -335,7 +335,7 @@ struct protosw inet6sw[] = { .pr_protocol = IPPROTO_PIM, .pr_flags = PR_ATOMIC|PR_ADDR|PR_LASTHDR, .pr_input = encap6_input, - .pr_output = (pr_output_t *)rip6_output, + .pr_output = rip6_output, .pr_ctloutput = rip6_ctloutput, .pr_usrreqs = &rip6_usrreqs }, @@ -354,7 +354,7 @@ IP6PROTOSPACER, .pr_domain = &inet6domain, .pr_flags = PR_ATOMIC|PR_ADDR, .pr_input = rip6_input, - .pr_output = (pr_output_t *)rip6_output, + .pr_output = rip6_output, .pr_ctloutput = rip6_ctloutput, .pr_usrreqs = &rip6_usrreqs }, diff --git a/sys/netinet6/ip6_mroute.c b/sys/netinet6/ip6_mroute.c index 77bff1f..daf43f6 100644 --- a/sys/netinet6/ip6_mroute.c +++ b/sys/netinet6/ip6_mroute.c @@ -146,7 +146,7 @@ static const struct protosw in6_pim_protosw = { .pr_protocol = IPPROTO_PIM, .pr_flags = PR_ATOMIC|PR_ADDR|PR_LASTHDR, .pr_input = pim6_input, - .pr_output = (pr_output_t *)rip6_output, + .pr_output = rip6_output, .pr_ctloutput = rip6_ctloutput, .pr_usrreqs = &rip6_usrreqs }; diff --git a/sys/netinet6/scope6.c b/sys/netinet6/scope6.c index 3284a7d..d0c6655 100644 --- a/sys/netinet6/scope6.c +++ b/sys/netinet6/scope6.c @@ -36,6 +36,7 @@ __FBSDID("$FreeBSD$"); #include <sys/malloc.h> #include <sys/mbuf.h> #include <sys/socket.h> +#include <sys/sockio.h> #include <sys/systm.h> #include <sys/queue.h> #include <sys/sysctl.h> @@ -79,6 +80,9 @@ static VNET_DEFINE(struct scope6_id, sid_default); #define SID(ifp) \ (((struct in6_ifextra *)(ifp)->if_afdata[AF_INET6])->scope6_id) +static int scope6_get(struct ifnet *, struct scope6_id *); +static int scope6_set(struct ifnet *, struct scope6_id *); + void scope6_init(void) { @@ -122,6 +126,30 @@ scope6_ifdetach(struct scope6_id *sid) } int +scope6_ioctl(u_long cmd, caddr_t data, struct ifnet *ifp) +{ + struct in6_ifreq *ifr; + + if (ifp->if_afdata[AF_INET6] == NULL) + return (EPFNOSUPPORT); + + ifr = (struct in6_ifreq *)data; + switch (cmd) { + case SIOCSSCOPE6: + return (scope6_set(ifp, + (struct scope6_id *)ifr->ifr_ifru.ifru_scope_id)); + case SIOCGSCOPE6: + return (scope6_get(ifp, + (struct scope6_id *)ifr->ifr_ifru.ifru_scope_id)); + case SIOCGSCOPE6DEF: + return (scope6_get_default( + (struct scope6_id *)ifr->ifr_ifru.ifru_scope_id)); + default: + return (EOPNOTSUPP); + } +} + +static int scope6_set(struct ifnet *ifp, struct scope6_id *idlist) { int i; @@ -184,7 +212,7 @@ scope6_set(struct ifnet *ifp, struct scope6_id *idlist) return (error); } -int +static int scope6_get(struct ifnet *ifp, struct scope6_id *idlist) { struct scope6_id *sid; @@ -203,7 +231,6 @@ scope6_get(struct ifnet *ifp, struct scope6_id *idlist) return (0); } - /* * Get a scope of the address. Node-local, link-local, site-local or global. */ diff --git a/sys/netinet6/scope6_var.h b/sys/netinet6/scope6_var.h index 87de8d7..3398bbe 100644 --- a/sys/netinet6/scope6_var.h +++ b/sys/netinet6/scope6_var.h @@ -50,8 +50,7 @@ VNET_DECLARE(int, deembed_scopeid); void scope6_init(void); struct scope6_id *scope6_ifattach(struct ifnet *); void scope6_ifdetach(struct scope6_id *); -int scope6_set(struct ifnet *, struct scope6_id *); -int scope6_get(struct ifnet *, struct scope6_id *); +int scope6_ioctl(u_long cmd, caddr_t data, struct ifnet *); void scope6_setdefault(struct ifnet *); int scope6_get_default(struct scope6_id *); u_int32_t scope6_addr2default(struct in6_addr *); diff --git a/sys/netipsec/keysock.c b/sys/netipsec/keysock.c index 55f34dc..b72ada2 100644 --- a/sys/netipsec/keysock.c +++ b/sys/netipsec/keysock.c @@ -88,7 +88,7 @@ VNET_PCPUSTAT_SYSUNINIT(pfkeystat); * key_output() */ int -key_output(struct mbuf *m, struct socket *so) +key_output(struct mbuf *m, struct socket *so, ...) { struct sadb_msg *msg; int len, error = 0; diff --git a/sys/netipsec/keysock.h b/sys/netipsec/keysock.h index e40f9c3..9e0139e 100644 --- a/sys/netipsec/keysock.h +++ b/sys/netipsec/keysock.h @@ -76,7 +76,7 @@ VNET_PCPUSTAT_DECLARE(struct pfkeystat, pfkeystat); VNET_PCPUSTAT_ADD(struct pfkeystat, pfkeystat, name, (val)) #define PFKEYSTAT_INC(name) PFKEYSTAT_ADD(name, 1) -extern int key_output(struct mbuf *m, struct socket *so); +extern int key_output(struct mbuf *m, struct socket *so, ...); extern int key_usrreq __P((struct socket *, int, struct mbuf *, struct mbuf *, struct mbuf *)); diff --git a/sys/netpfil/pf/if_pfsync.c b/sys/netpfil/pf/if_pfsync.c index d5a6ffa..ffefbc4 100644 --- a/sys/netpfil/pf/if_pfsync.c +++ b/sys/netpfil/pf/if_pfsync.c @@ -2281,7 +2281,7 @@ static struct protosw in_pfsync_protosw = { .pr_protocol = IPPROTO_PFSYNC, .pr_flags = PR_ATOMIC|PR_ADDR, .pr_input = pfsync_input, - .pr_output = (pr_output_t *)rip_output, + .pr_output = rip_output, .pr_ctloutput = rip_ctloutput, .pr_usrreqs = &rip_usrreqs }; diff --git a/sys/netpfil/pf/pf.c b/sys/netpfil/pf/pf.c index 6c97151..fdf9acc 100644 --- a/sys/netpfil/pf/pf.c +++ b/sys/netpfil/pf/pf.c @@ -110,7 +110,7 @@ VNET_DEFINE(struct pf_altqqueue, pf_altqs[2]); VNET_DEFINE(struct pf_palist, pf_pabuf); VNET_DEFINE(struct pf_altqqueue *, pf_altqs_active); VNET_DEFINE(struct pf_altqqueue *, pf_altqs_inactive); -VNET_DEFINE(struct pf_status, pf_status); +VNET_DEFINE(struct pf_kstatus, pf_status); VNET_DEFINE(u_int32_t, ticket_altqs_active); VNET_DEFINE(u_int32_t, ticket_altqs_inactive); @@ -266,8 +266,6 @@ static u_int16_t pf_get_mss(struct mbuf *, int, u_int16_t, sa_family_t); static u_int16_t pf_calc_mss(struct pf_addr *, sa_family_t, int, u_int16_t); -static void pf_set_rt_ifp(struct pf_state *, - struct pf_addr *); static int pf_check_proto_cksum(struct mbuf *, int, int, u_int8_t, sa_family_t); static void pf_print_state_parts(struct pf_state *, @@ -469,13 +467,13 @@ pf_src_connlimit(struct pf_state **state) if ((*state)->rule.ptr->max_src_conn && (*state)->rule.ptr->max_src_conn < (*state)->src_node->conn) { - V_pf_status.lcounters[LCNT_SRCCONN]++; + counter_u64_add(V_pf_status.lcounters[LCNT_SRCCONN], 1); bad++; } if ((*state)->rule.ptr->max_src_conn_rate.limit && pf_check_threshold(&(*state)->src_node->conn_rate)) { - V_pf_status.lcounters[LCNT_SRCCONNRATE]++; + counter_u64_add(V_pf_status.lcounters[LCNT_SRCCONNRATE], 1); bad++; } @@ -523,7 +521,7 @@ pf_overload_task(void *v, int pending) bzero(&p, sizeof(p)); SLIST_FOREACH(pfoe, &queue, next) { - V_pf_status.lcounters[LCNT_OVERLOAD_TABLE]++; + counter_u64_add(V_pf_status.lcounters[LCNT_OVERLOAD_TABLE], 1); if (V_pf_status.debug >= PF_DEBUG_MISC) { printf("%s: blocking address ", __func__); pf_print_host(&pfoe->addr, 0, pfoe->af); @@ -559,7 +557,8 @@ pf_overload_task(void *v, int pending) SLIST_REMOVE(&queue, pfoe, pf_overload_entry, next); free(pfoe, M_PFTEMP); } else - V_pf_status.lcounters[LCNT_OVERLOAD_FLUSH]++; + counter_u64_add( + V_pf_status.lcounters[LCNT_OVERLOAD_FLUSH], 1); /* If nothing to flush, return. */ if (SLIST_EMPTY(&queue)) { @@ -609,7 +608,7 @@ pf_find_src_node(struct pf_addr *src, struct pf_rule *rule, sa_family_t af, struct pf_srchash *sh; struct pf_src_node *n; - V_pf_status.scounters[SCNT_SRC_NODE_SEARCH]++; + counter_u64_add(V_pf_status.scounters[SCNT_SRC_NODE_SEARCH], 1); sh = &V_pf_srchash[pf_hashsrc(src, af)]; PF_HASHROW_LOCK(sh); @@ -645,7 +644,8 @@ pf_insert_src_node(struct pf_src_node **sn, struct pf_rule *rule, counter_u64_fetch(rule->src_nodes) < rule->max_src_nodes) (*sn) = uma_zalloc(V_pf_sources_z, M_NOWAIT | M_ZERO); else - V_pf_status.lcounters[LCNT_SRCNODES]++; + counter_u64_add(V_pf_status.lcounters[LCNT_SRCNODES], + 1); if ((*sn) == NULL) { PF_HASHROW_UNLOCK(sh); return (-1); @@ -664,12 +664,12 @@ pf_insert_src_node(struct pf_src_node **sn, struct pf_rule *rule, if ((*sn)->rule.ptr != NULL) counter_u64_add((*sn)->rule.ptr->src_nodes, 1); PF_HASHROW_UNLOCK(sh); - V_pf_status.scounters[SCNT_SRC_NODE_INSERT]++; - V_pf_status.src_nodes++; + counter_u64_add(V_pf_status.scounters[SCNT_SRC_NODE_INSERT], 1); } else { if (rule->max_src_states && (*sn)->states >= rule->max_src_states) { - V_pf_status.lcounters[LCNT_SRCSTATES]++; + counter_u64_add(V_pf_status.lcounters[LCNT_SRCSTATES], + 1); return (-1); } } @@ -688,8 +688,7 @@ pf_unlink_src_node_locked(struct pf_src_node *src) LIST_REMOVE(src, entry); if (src->rule.ptr) counter_u64_add(src->rule.ptr->src_nodes, -1); - V_pf_status.scounters[SCNT_SRC_NODE_REMOVALS]++; - V_pf_status.src_nodes--; + counter_u64_add(V_pf_status.scounters[SCNT_SRC_NODE_REMOVALS], 1); } void @@ -1203,7 +1202,7 @@ pf_state_insert(struct pfi_kif *kif, struct pf_state_key *skw, /* One for keys, one for ID hash. */ refcount_init(&s->refs, 2); - V_pf_status.fcounters[FCNT_STATE_INSERT]++; + counter_u64_add(V_pf_status.fcounters[FCNT_STATE_INSERT], 1); if (pfsync_insert_state_ptr != NULL) pfsync_insert_state_ptr(s); @@ -1220,7 +1219,7 @@ pf_find_state_byid(uint64_t id, uint32_t creatorid) struct pf_idhash *ih; struct pf_state *s; - V_pf_status.fcounters[FCNT_STATE_SEARCH]++; + counter_u64_add(V_pf_status.fcounters[FCNT_STATE_SEARCH], 1); ih = &V_pf_idhash[(be64toh(id) % (pf_hashmask + 1))]; @@ -1247,7 +1246,7 @@ pf_find_state(struct pfi_kif *kif, struct pf_state_key_cmp *key, u_int dir) struct pf_state *s; int idx; - V_pf_status.fcounters[FCNT_STATE_SEARCH]++; + counter_u64_add(V_pf_status.fcounters[FCNT_STATE_SEARCH], 1); kh = &V_pf_keyhash[pf_hashkey((struct pf_state_key *)key)]; @@ -1291,7 +1290,7 @@ pf_find_state_all(struct pf_state_key_cmp *key, u_int dir, int *more) struct pf_state *s, *ret = NULL; int idx, inout = 0; - V_pf_status.fcounters[FCNT_STATE_SEARCH]++; + counter_u64_add(V_pf_status.fcounters[FCNT_STATE_SEARCH], 1); kh = &V_pf_keyhash[pf_hashkey((struct pf_state_key *)key)]; @@ -1519,6 +1518,8 @@ pf_purge_expired_src_nodes() } pf_free_src_nodes(&freelist); + + V_pf_status.src_nodes = uma_zone_get_cur(V_pf_sources_z); } static void @@ -1613,7 +1614,7 @@ pf_free_state(struct pf_state *cur) pf_normalize_tcp_cleanup(cur); uma_zfree(V_pf_state_z, cur); - V_pf_status.fcounters[FCNT_STATE_REMOVALS]++; + counter_u64_add(V_pf_status.fcounters[FCNT_STATE_REMOVALS], 1); } /* @@ -2954,31 +2955,6 @@ pf_calc_mss(struct pf_addr *addr, sa_family_t af, int rtableid, u_int16_t offer) return (mss); } -static void -pf_set_rt_ifp(struct pf_state *s, struct pf_addr *saddr) -{ - struct pf_rule *r = s->rule.ptr; - struct pf_src_node *sn = NULL; - - s->rt_kif = NULL; - if (!r->rt || r->rt == PF_FASTROUTE) - return; - switch (s->key[PF_SK_WIRE]->af) { -#ifdef INET - case AF_INET: - pf_map_addr(AF_INET, r, saddr, &s->rt_addr, NULL, &sn); - s->rt_kif = r->rpool.cur->kif; - break; -#endif /* INET */ -#ifdef INET6 - case AF_INET6: - pf_map_addr(AF_INET6, r, saddr, &s->rt_addr, NULL, &sn); - s->rt_kif = r->rpool.cur->kif; - break; -#endif /* INET6 */ - } -} - static u_int32_t pf_tcp_iss(struct pf_pdesc *pd) { @@ -3454,7 +3430,7 @@ pf_create_state(struct pf_rule *r, struct pf_rule *nr, struct pf_rule *a, /* check maximums */ if (r->max_states && (counter_u64_fetch(r->states_cur) >= r->max_states)) { - V_pf_status.lcounters[LCNT_STATES]++; + counter_u64_add(V_pf_status.lcounters[LCNT_STATES], 1); REASON_SET(&reason, PFRES_MAXSTATES); return (PF_DROP); } @@ -3541,6 +3517,17 @@ pf_create_state(struct pf_rule *r, struct pf_rule *nr, struct pf_rule *a, s->timeout = PFTM_OTHER_FIRST_PACKET; } + if (r->rt && r->rt != PF_FASTROUTE) { + if (pf_map_addr(pd->af, r, pd->src, &s->rt_addr, NULL, &sn)) { + REASON_SET(&reason, PFRES_MAPFAILED); + pf_src_tree_remove_state(s); + STATE_DEC_COUNTERS(s); + uma_zfree(V_pf_state_z, s); + goto csfailed; + } + s->rt_kif = r->rpool.cur->kif; + } + s->creation = time_uptime; s->expire = time_uptime; @@ -3606,7 +3593,6 @@ pf_create_state(struct pf_rule *r, struct pf_rule *nr, struct pf_rule *a, } else *sm = s; - pf_set_rt_ifp(s, pd->src); /* needs s->state_key set */ if (tag > 0) s->tag = tag; if (pd->proto == IPPROTO_TCP && (th->th_flags & (TH_SYN|TH_ACK)) == @@ -6063,6 +6049,9 @@ pf_test6(int dir, struct ifnet *ifp, struct mbuf **m0, struct inpcb *inp) if (kif->pfik_flags & PFI_IFLAG_SKIP) return (PF_PASS); + if (m->m_flags & M_SKIP_FIREWALL) + return (PF_PASS); + PF_RULES_RLOCK(); /* We do IP header normalization and packet reassembly here */ diff --git a/sys/netpfil/pf/pf.h b/sys/netpfil/pf/pf.h index d2d9f2b..96f638e 100644 --- a/sys/netpfil/pf/pf.h +++ b/sys/netpfil/pf/pf.h @@ -124,7 +124,8 @@ enum { PF_ADDR_ADDRMASK, PF_ADDR_NOROUTE, PF_ADDR_DYNIFTL, #define PFRES_MAXSTATES 12 /* State limit */ #define PFRES_SRCLIMIT 13 /* Source node/conn limit */ #define PFRES_SYNPROXY 14 /* SYN proxy */ -#define PFRES_MAX 15 /* total+1 */ +#define PFRES_MAPFAILED 15 /* pf_map_addr() failed */ +#define PFRES_MAX 16 /* total+1 */ #define PFRES_NAMES { \ "match", \ @@ -142,10 +143,61 @@ enum { PF_ADDR_ADDRMASK, PF_ADDR_NOROUTE, PF_ADDR_DYNIFTL, "state-limit", \ "src-limit", \ "synproxy", \ + "map-failed", \ NULL \ } +/* Counters for other things we want to keep track of */ +#define LCNT_STATES 0 /* states */ +#define LCNT_SRCSTATES 1 /* max-src-states */ +#define LCNT_SRCNODES 2 /* max-src-nodes */ +#define LCNT_SRCCONN 3 /* max-src-conn */ +#define LCNT_SRCCONNRATE 4 /* max-src-conn-rate */ +#define LCNT_OVERLOAD_TABLE 5 /* entry added to overload table */ +#define LCNT_OVERLOAD_FLUSH 6 /* state entries flushed */ +#define LCNT_MAX 7 /* total+1 */ + +#define LCNT_NAMES { \ + "max states per rule", \ + "max-src-states", \ + "max-src-nodes", \ + "max-src-conn", \ + "max-src-conn-rate", \ + "overload table insertion", \ + "overload flush states", \ + NULL \ +} + +/* state operation counters */ +#define FCNT_STATE_SEARCH 0 +#define FCNT_STATE_INSERT 1 +#define FCNT_STATE_REMOVALS 2 +#define FCNT_MAX 3 + +/* src_node operation counters */ +#define SCNT_SRC_NODE_SEARCH 0 +#define SCNT_SRC_NODE_INSERT 1 +#define SCNT_SRC_NODE_REMOVALS 2 +#define SCNT_MAX 3 + #define PF_TABLE_NAME_SIZE 32 #define PF_QNAME_SIZE 64 +struct pf_status { + uint64_t counters[PFRES_MAX]; + uint64_t lcounters[LCNT_MAX]; + uint64_t fcounters[FCNT_MAX]; + uint64_t scounters[SCNT_MAX]; + uint64_t pcounters[2][2][3]; + uint64_t bcounters[2][2]; + uint32_t running; + uint32_t states; + uint32_t src_nodes; + uint32_t since; + uint32_t debug; + uint32_t hostid; + char ifname[IFNAMSIZ]; + uint8_t pf_chksum[PF_MD5_DIGEST_LENGTH]; +}; + #endif /* _NET_PF_H_ */ diff --git a/sys/netpfil/pf/pf_ioctl.c b/sys/netpfil/pf/pf_ioctl.c index 9a5dfcf..195aeb3 100644 --- a/sys/netpfil/pf/pf_ioctl.c +++ b/sys/netpfil/pf/pf_ioctl.c @@ -265,6 +265,15 @@ pfattach(void) /* XXX do our best to avoid a conflict */ V_pf_status.hostid = arc4random(); + for (int i = 0; i < PFRES_MAX; i++) + V_pf_status.counters[i] = counter_u64_alloc(M_WAITOK); + for (int i = 0; i < LCNT_MAX; i++) + V_pf_status.lcounters[i] = counter_u64_alloc(M_WAITOK); + for (int i = 0; i < FCNT_MAX; i++) + V_pf_status.fcounters[i] = counter_u64_alloc(M_WAITOK); + for (int i = 0; i < SCNT_MAX; i++) + V_pf_status.scounters[i] = counter_u64_alloc(M_WAITOK); + if ((error = kproc_create(pf_purge_thread, curvnet, NULL, 0, 0, "pf purge")) != 0) /* XXXGL: leaked all above. */ @@ -1787,8 +1796,32 @@ DIOCGETSTATES_full: case DIOCGETSTATUS: { struct pf_status *s = (struct pf_status *)addr; + PF_RULES_RLOCK(); - bcopy(&V_pf_status, s, sizeof(struct pf_status)); + s->running = V_pf_status.running; + s->since = V_pf_status.since; + s->debug = V_pf_status.debug; + s->hostid = V_pf_status.hostid; + s->states = V_pf_status.states; + s->src_nodes = V_pf_status.src_nodes; + + for (int i = 0; i < PFRES_MAX; i++) + s->counters[i] = + counter_u64_fetch(V_pf_status.counters[i]); + for (int i = 0; i < LCNT_MAX; i++) + s->lcounters[i] = + counter_u64_fetch(V_pf_status.lcounters[i]); + for (int i = 0; i < FCNT_MAX; i++) + s->fcounters[i] = + counter_u64_fetch(V_pf_status.fcounters[i]); + for (int i = 0; i < SCNT_MAX; i++) + s->scounters[i] = + counter_u64_fetch(V_pf_status.scounters[i]); + + bcopy(V_pf_status.ifname, s->ifname, IFNAMSIZ); + bcopy(V_pf_status.pf_chksum, s->pf_chksum, + PF_MD5_DIGEST_LENGTH); + pfi_update_status(s->ifname, s); PF_RULES_RUNLOCK(); break; @@ -1809,9 +1842,12 @@ DIOCGETSTATES_full: case DIOCCLRSTATUS: { PF_RULES_WLOCK(); - bzero(V_pf_status.counters, sizeof(V_pf_status.counters)); - bzero(V_pf_status.fcounters, sizeof(V_pf_status.fcounters)); - bzero(V_pf_status.scounters, sizeof(V_pf_status.scounters)); + for (int i = 0; i < PFRES_MAX; i++) + counter_u64_zero(V_pf_status.counters[i]); + for (int i = 0; i < FCNT_MAX; i++) + counter_u64_zero(V_pf_status.fcounters[i]); + for (int i = 0; i < SCNT_MAX; i++) + counter_u64_zero(V_pf_status.scounters[i]); V_pf_status.since = time_second; if (*V_pf_status.ifname) pfi_update_status(V_pf_status.ifname, NULL); @@ -3157,7 +3193,6 @@ DIOCCHANGEADDR_error: pf_clear_srcnodes(NULL); pf_purge_expired_src_nodes(); - V_pf_status.src_nodes = 0; break; } @@ -3455,6 +3490,15 @@ shutdown_pf(void) counter_u64_free(V_pf_default_rule.states_tot); counter_u64_free(V_pf_default_rule.src_nodes); + for (int i = 0; i < PFRES_MAX; i++) + counter_u64_free(V_pf_status.counters[i]); + for (int i = 0; i < LCNT_MAX; i++) + counter_u64_free(V_pf_status.lcounters[i]); + for (int i = 0; i < FCNT_MAX; i++) + counter_u64_free(V_pf_status.fcounters[i]); + for (int i = 0; i < SCNT_MAX; i++) + counter_u64_free(V_pf_status.scounters[i]); + do { if ((error = pf_begin_rules(&t[0], PF_RULESET_SCRUB, &nn)) != 0) { diff --git a/sys/netpfil/pf/pf_lb.c b/sys/netpfil/pf/pf_lb.c index d65fb0e..6cb5840 100644 --- a/sys/netpfil/pf/pf_lb.c +++ b/sys/netpfil/pf/pf_lb.c @@ -310,22 +310,30 @@ pf_map_addr(sa_family_t af, struct pf_rule *r, struct pf_addr *saddr, struct pf_pool *rpool = &r->rpool; struct pf_addr *raddr = NULL, *rmask = NULL; + /* Try to find a src_node if none was given and this + is a sticky-address rule. */ if (*sn == NULL && r->rpool.opts & PF_POOL_STICKYADDR && - (r->rpool.opts & PF_POOL_TYPEMASK) != PF_POOL_NONE) { + (r->rpool.opts & PF_POOL_TYPEMASK) != PF_POOL_NONE) *sn = pf_find_src_node(saddr, r, af, 0); - if (*sn != NULL && !PF_AZERO(&(*sn)->raddr, af)) { - PF_ACPY(naddr, &(*sn)->raddr, af); - if (V_pf_status.debug >= PF_DEBUG_MISC) { - printf("pf_map_addr: src tracking maps "); - pf_print_host(saddr, 0, af); - printf(" to "); - pf_print_host(naddr, 0, af); - printf("\n"); - } - return (0); + + /* If a src_node was found or explicitly given and it has a non-zero + route address, use this address. A zeroed address is found if the + src node was created just a moment ago in pf_create_state and it + needs to be filled in with routing decision calculated here. */ + if (*sn != NULL && !PF_AZERO(&(*sn)->raddr, af)) { + PF_ACPY(naddr, &(*sn)->raddr, af); + if (V_pf_status.debug >= PF_DEBUG_MISC) { + printf("pf_map_addr: src tracking maps "); + pf_print_host(saddr, 0, af); + printf(" to "); + pf_print_host(naddr, 0, af); + printf("\n"); } + return (0); } + /* Find the route using chosen algorithm. Store the found route + in src_node if it was given or found. */ if (rpool->cur->addr.type == PF_ADDR_NOROUTE) return (1); if (rpool->cur->addr.type == PF_ADDR_DYNIFTL) { diff --git a/sys/ofed/include/linux/pci.h b/sys/ofed/include/linux/pci.h index 5c9cfde..0948445 100644 --- a/sys/ofed/include/linux/pci.h +++ b/sys/ofed/include/linux/pci.h @@ -534,7 +534,11 @@ struct msix_entry { /* * Enable msix, positive errors indicate actual number of available * vectors. Negative errors are failures. + * + * NB: define added to prevent this definition of pci_enable_msix from + * clashing with the native FreeBSD version. */ +#define pci_enable_msix linux_pci_enable_msix static inline int pci_enable_msix(struct pci_dev *pdev, struct msix_entry *entries, int nreq) { diff --git a/sys/powerpc/include/vmparam.h b/sys/powerpc/include/vmparam.h index c46f395..965f8e4 100644 --- a/sys/powerpc/include/vmparam.h +++ b/sys/powerpc/include/vmparam.h @@ -210,5 +210,6 @@ struct pmap_physseg { #define SFBUF #define SFBUF_NOMD #define SFBUF_OPTIONAL_DIRECT_MAP hw_direct_map +#define SFBUF_PHYS_DMAP(x) (x) #endif /* _MACHINE_VMPARAM_H_ */ diff --git a/sys/security/audit/audit_pipe.c b/sys/security/audit/audit_pipe.c index b291975..f9c63d2 100644 --- a/sys/security/audit/audit_pipe.c +++ b/sys/security/audit/audit_pipe.c @@ -112,7 +112,6 @@ struct audit_pipe_preselect { #define AUDIT_PIPE_ASYNC 0x00000001 #define AUDIT_PIPE_NBIO 0x00000002 struct audit_pipe { - int ap_open; /* Device open? */ u_int ap_flags; struct selinfo ap_selinfo; @@ -205,6 +204,7 @@ static struct rwlock audit_pipe_lock; #define AUDIT_PIPE_LIST_LOCK_INIT() rw_init(&audit_pipe_lock, \ "audit_pipe_list_lock") +#define AUDIT_PIPE_LIST_LOCK_DESTROY() rw_destroy(&audit_pipe_lock) #define AUDIT_PIPE_LIST_RLOCK() rw_rlock(&audit_pipe_lock) #define AUDIT_PIPE_LIST_RUNLOCK() rw_runlock(&audit_pipe_lock) #define AUDIT_PIPE_LIST_WLOCK() rw_wlock(&audit_pipe_lock) @@ -213,11 +213,11 @@ static struct rwlock audit_pipe_lock; #define AUDIT_PIPE_LIST_WUNLOCK() rw_wunlock(&audit_pipe_lock) /* - * Cloning related variables and constants. + * Audit pipe device. */ -#define AUDIT_PIPE_NAME "auditpipe" -static eventhandler_tag audit_pipe_eh_tag; -static struct clonedevs *audit_pipe_clones; +static struct cdev *audit_pipe_dev; + +#define AUDIT_PIPE_NAME "auditpipe" /* * Special device methods and definition. @@ -231,7 +231,6 @@ static d_kqfilter_t audit_pipe_kqfilter; static struct cdevsw audit_pipe_cdevsw = { .d_version = D_VERSION, - .d_flags = D_NEEDMINOR, .d_open = audit_pipe_open, .d_close = audit_pipe_close, .d_read = audit_pipe_read, @@ -572,8 +571,6 @@ audit_pipe_alloc(void) { struct audit_pipe *ap; - AUDIT_PIPE_LIST_WLOCK_ASSERT(); - ap = malloc(sizeof(*ap), M_AUDIT_PIPE, M_NOWAIT | M_ZERO); if (ap == NULL) return (NULL); @@ -599,9 +596,11 @@ audit_pipe_alloc(void) /* * Add to global list and update global statistics. */ + AUDIT_PIPE_LIST_WLOCK(); TAILQ_INSERT_HEAD(&audit_pipe_list, ap, ap_list); audit_pipe_count++; audit_pipe_ever++; + AUDIT_PIPE_LIST_WUNLOCK(); return (ap); } @@ -653,28 +652,16 @@ audit_pipe_free(struct audit_pipe *ap) audit_pipe_count--; } -/* - * Audit pipe clone routine -- provide specific requested audit pipe, or a - * fresh one if a specific one is not requested. - */ static void -audit_pipe_clone(void *arg, struct ucred *cred, char *name, int namelen, - struct cdev **dev) +audit_pipe_dtor(void *arg) { - int i, u; - - if (*dev != NULL) - return; - - if (strcmp(name, AUDIT_PIPE_NAME) == 0) - u = -1; - else if (dev_stdclone(name, NULL, AUDIT_PIPE_NAME, &u) != 1) - return; + struct audit_pipe *ap; - i = clone_create(&audit_pipe_clones, &audit_pipe_cdevsw, &u, dev, 0); - if (i) - *dev = make_dev_credf(MAKEDEV_REF, &audit_pipe_cdevsw, u, cred, - UID_ROOT, GID_WHEEL, 0600, "%s%d", AUDIT_PIPE_NAME, u); + ap = arg; + AUDIT_PIPE_LIST_WLOCK(); + AUDIT_PIPE_LOCK(ap); + audit_pipe_free(ap); + AUDIT_PIPE_LIST_WUNLOCK(); } /* @@ -686,24 +673,19 @@ static int audit_pipe_open(struct cdev *dev, int oflags, int devtype, struct thread *td) { struct audit_pipe *ap; + int error; - AUDIT_PIPE_LIST_WLOCK(); - ap = dev->si_drv1; + ap = audit_pipe_alloc(); if (ap == NULL) { - ap = audit_pipe_alloc(); - if (ap == NULL) { - AUDIT_PIPE_LIST_WUNLOCK(); - return (ENOMEM); - } - dev->si_drv1 = ap; - } else { - KASSERT(ap->ap_open, ("audit_pipe_open: ap && !ap_open")); - AUDIT_PIPE_LIST_WUNLOCK(); - return (EBUSY); + return (ENOMEM); } - ap->ap_open = 1; /* No lock required yet. */ - AUDIT_PIPE_LIST_WUNLOCK(); fsetown(td->td_proc->p_pid, &ap->ap_sigio); + error = devfs_set_cdevpriv(ap, audit_pipe_dtor); + if (error != 0) { + AUDIT_PIPE_LIST_WLOCK(); + audit_pipe_free(ap); + AUDIT_PIPE_LIST_WUNLOCK(); + } return (0); } @@ -714,18 +696,12 @@ static int audit_pipe_close(struct cdev *dev, int fflag, int devtype, struct thread *td) { struct audit_pipe *ap; + int error; - ap = dev->si_drv1; - KASSERT(ap != NULL, ("audit_pipe_close: ap == NULL")); - KASSERT(ap->ap_open, ("audit_pipe_close: !ap_open")); - + error = devfs_get_cdevpriv((void **)&ap); + if (error != 0) + return (error); funsetown(&ap->ap_sigio); - AUDIT_PIPE_LIST_WLOCK(); - AUDIT_PIPE_LOCK(ap); - ap->ap_open = 0; - audit_pipe_free(ap); - dev->si_drv1 = NULL; - AUDIT_PIPE_LIST_WUNLOCK(); return (0); } @@ -743,8 +719,9 @@ audit_pipe_ioctl(struct cdev *dev, u_long cmd, caddr_t data, int flag, int error, mode; au_id_t auid; - ap = dev->si_drv1; - KASSERT(ap != NULL, ("audit_pipe_ioctl: ap == NULL")); + error = devfs_get_cdevpriv((void **)&ap); + if (error != 0) + return (error); /* * Audit pipe ioctls: first come standard device node ioctls, then @@ -948,8 +925,9 @@ audit_pipe_read(struct cdev *dev, struct uio *uio, int flag) u_int toread; int error; - ap = dev->si_drv1; - KASSERT(ap != NULL, ("audit_pipe_read: ap == NULL")); + error = devfs_get_cdevpriv((void **)&ap); + if (error != 0) + return (error); /* * We hold an sx(9) lock over read and flush because we rely on the @@ -1026,12 +1004,12 @@ static int audit_pipe_poll(struct cdev *dev, int events, struct thread *td) { struct audit_pipe *ap; - int revents; + int error, revents; revents = 0; - ap = dev->si_drv1; - KASSERT(ap != NULL, ("audit_pipe_poll: ap == NULL")); - + error = devfs_get_cdevpriv((void **)&ap); + if (error != 0) + return (error); if (events & (POLLIN | POLLRDNORM)) { AUDIT_PIPE_LOCK(ap); if (TAILQ_FIRST(&ap->ap_queue) != NULL) @@ -1050,10 +1028,11 @@ static int audit_pipe_kqfilter(struct cdev *dev, struct knote *kn) { struct audit_pipe *ap; + int error; - ap = dev->si_drv1; - KASSERT(ap != NULL, ("audit_pipe_kqfilter: ap == NULL")); - + error = devfs_get_cdevpriv((void **)&ap); + if (error != 0) + return (error); if (kn->kn_filter != EVFILT_READ) return (EINVAL); @@ -1075,7 +1054,6 @@ audit_pipe_kqread(struct knote *kn, long hint) struct audit_pipe *ap; ap = (struct audit_pipe *)kn->kn_hook; - KASSERT(ap != NULL, ("audit_pipe_kqread: ap == NULL")); AUDIT_PIPE_LOCK_ASSERT(ap); if (ap->ap_qlen != 0) { @@ -1096,8 +1074,6 @@ audit_pipe_kqdetach(struct knote *kn) struct audit_pipe *ap; ap = (struct audit_pipe *)kn->kn_hook; - KASSERT(ap != NULL, ("audit_pipe_kqdetach: ap == NULL")); - AUDIT_PIPE_LOCK(ap); knlist_remove(&ap->ap_selinfo.si_note, kn, 1); AUDIT_PIPE_UNLOCK(ap); @@ -1112,12 +1088,12 @@ audit_pipe_init(void *unused) TAILQ_INIT(&audit_pipe_list); AUDIT_PIPE_LIST_LOCK_INIT(); - - clone_setup(&audit_pipe_clones); - audit_pipe_eh_tag = EVENTHANDLER_REGISTER(dev_clone, - audit_pipe_clone, 0, 1000); - if (audit_pipe_eh_tag == NULL) - panic("audit_pipe_init: EVENTHANDLER_REGISTER"); + audit_pipe_dev = make_dev(&audit_pipe_cdevsw, 0, UID_ROOT, + GID_WHEEL, 0600, "%s", AUDIT_PIPE_NAME); + if (audit_pipe_dev == NULL) { + AUDIT_PIPE_LIST_LOCK_DESTROY(); + panic("Can't initialize audit pipe subsystem"); + } } SYSINIT(audit_pipe_init, SI_SUB_DRIVERS, SI_ORDER_MIDDLE, audit_pipe_init, diff --git a/sys/sparc64/sparc64/pmap.c b/sys/sparc64/sparc64/pmap.c index b056a70..f10678e 100644 --- a/sys/sparc64/sparc64/pmap.c +++ b/sys/sparc64/sparc64/pmap.c @@ -1211,11 +1211,9 @@ pmap_pinit(pmap_t pm) */ if (pm->pm_tsb == NULL) { pm->pm_tsb = (struct tte *)kva_alloc(TSB_BSIZE); - if (pm->pm_tsb == NULL) { - PMAP_LOCK_DESTROY(pm); + if (pm->pm_tsb == NULL) return (0); } - } /* * Allocate an object for it. diff --git a/sys/sys/_cpuset.h b/sys/sys/_cpuset.h index a488700..cd384848 100644 --- a/sys/sys/_cpuset.h +++ b/sys/sys/_cpuset.h @@ -38,7 +38,7 @@ #define CPU_SETSIZE MAXCPU #endif -#define CPU_MAXSIZE 128 +#define CPU_MAXSIZE 256 #ifndef CPU_SETSIZE #define CPU_SETSIZE CPU_MAXSIZE diff --git a/sys/sys/callout.h b/sys/sys/callout.h index f5c75ec..8b51440 100644 --- a/sys/sys/callout.h +++ b/sys/sys/callout.h @@ -72,7 +72,7 @@ void _callout_init_lock(struct callout *, struct lock_object *, int); _callout_init_lock((c), ((mtx) != NULL) ? &(mtx)->lock_object : \ NULL, (flags)) #define callout_init_rm(c, rm, flags) \ - _callout_init_lock((c), ((rm != NULL) ? &(rm)->lock_object : \ + _callout_init_lock((c), ((rm) != NULL) ? &(rm)->lock_object : \ NULL, (flags)) #define callout_init_rw(c, rw, flags) \ _callout_init_lock((c), ((rw) != NULL) ? &(rw)->lock_object : \ diff --git a/sys/sys/elf_common.h b/sys/sys/elf_common.h index 13551f1..fddea9f 100644 --- a/sys/sys/elf_common.h +++ b/sys/sys/elf_common.h @@ -426,7 +426,7 @@ typedef struct { #define DT_PLTPADSZ 0x6ffffdf9 /* pltpadding size */ #define DT_MOVEENT 0x6ffffdfa /* move table entry size */ #define DT_MOVESZ 0x6ffffdfb /* move table size */ -#define DT_FEATURE_1 0x6ffffdfc /* feature holder */ +#define DT_FEATURE 0x6ffffdfc /* feature holder */ #define DT_POSFLAG_1 0x6ffffdfd /* flags for DT_* entries, effecting */ /* the following DT_* entry. */ /* See DF_P1_* definitions */ diff --git a/sys/sys/hhook.h b/sys/sys/hhook.h index a54e980..9d5d8e3 100644 --- a/sys/sys/hhook.h +++ b/sys/sys/hhook.h @@ -64,6 +64,7 @@ /* Helper hook types. */ #define HHOOK_TYPE_TCP 1 +#define HHOOK_TYPE_SOCKET 2 struct helper; struct osd; diff --git a/sys/sys/imgact_elf.h b/sys/sys/imgact_elf.h index faef5f8..712a55e 100644 --- a/sys/sys/imgact_elf.h +++ b/sys/sys/imgact_elf.h @@ -74,6 +74,7 @@ typedef struct { const char *interp_newpath; int flags; Elf_Brandnote *brand_note; + boolean_t (*header_supported)(struct image_params *); #define BI_CAN_EXEC_DYN 0x0001 #define BI_BRAND_NOTE 0x0002 /* May have note.ABI-tag section. */ #define BI_BRAND_NOTE_MANDATORY 0x0004 /* Must have note.ABI-tag section. */ diff --git a/sys/sys/khelp.h b/sys/sys/khelp.h index db12d6b..f542b14 100644 --- a/sys/sys/khelp.h +++ b/sys/sys/khelp.h @@ -55,6 +55,7 @@ struct osd; /* Helper classes. */ #define HELPER_CLASS_TCP 0x00000001 +#define HELPER_CLASS_SOCKET 0x00000002 /* Public KPI functions. */ int khelp_register_helper(struct helper *h); diff --git a/sys/sys/libkern.h b/sys/sys/libkern.h index 3665b3a..5f850fb 100644 --- a/sys/sys/libkern.h +++ b/sys/sys/libkern.h @@ -117,6 +117,7 @@ int strcmp(const char *, const char *); char *strcpy(char * __restrict, const char * __restrict); size_t strcspn(const char * __restrict, const char * __restrict) __pure; char *strdup(const char *__restrict, struct malloc_type *); +char *strndup(const char *__restrict, size_t, struct malloc_type *); size_t strlcat(char *, const char *, size_t); size_t strlcpy(char *, const char *, size_t); size_t strlen(const char *); diff --git a/sys/sys/mount.h b/sys/sys/mount.h index ca3bc43..d186599 100644 --- a/sys/sys/mount.h +++ b/sys/sys/mount.h @@ -260,6 +260,7 @@ void __mnt_vnode_markerfree_active(struct vnode **mvp, struct mount *); #define MNT_NOCLUSTERR 0x0000000040000000ULL /* disable cluster read */ #define MNT_NOCLUSTERW 0x0000000080000000ULL /* disable cluster write */ #define MNT_SUJ 0x0000000100000000ULL /* using journaled soft updates */ +#define MNT_AUTOMOUNTED 0x0000000200000000ULL /* mounted by automountd(8) */ /* * NFS export related mount flags. @@ -296,7 +297,7 @@ void __mnt_vnode_markerfree_active(struct vnode **mvp, struct mount *); MNT_NOCLUSTERW | MNT_SUIDDIR | MNT_SOFTDEP | \ MNT_IGNORE | MNT_EXPUBLIC | MNT_NOSYMFOLLOW | \ MNT_GJOURNAL | MNT_MULTILABEL | MNT_ACLS | \ - MNT_NFS4ACLS) + MNT_NFS4ACLS | MNT_AUTOMOUNTED) /* Mask of flags that can be updated. */ #define MNT_UPDATEMASK (MNT_NOSUID | MNT_NOEXEC | \ @@ -304,7 +305,8 @@ void __mnt_vnode_markerfree_active(struct vnode **mvp, struct mount *); MNT_NOATIME | \ MNT_NOSYMFOLLOW | MNT_IGNORE | \ MNT_NOCLUSTERR | MNT_NOCLUSTERW | MNT_SUIDDIR | \ - MNT_ACLS | MNT_USER | MNT_NFS4ACLS) + MNT_ACLS | MNT_USER | MNT_NFS4ACLS | \ + MNT_AUTOMOUNTED) /* * External filesystem command modifier flags. diff --git a/sys/sys/param.h b/sys/sys/param.h index 8920f78..264a38a 100644 --- a/sys/sys/param.h +++ b/sys/sys/param.h @@ -58,7 +58,7 @@ * in the range 5 to 9. */ #undef __FreeBSD_version -#define __FreeBSD_version 1100028 /* Master, propagated to newvers */ +#define __FreeBSD_version 1100029 /* Master, propagated to newvers */ /* * __FreeBSD_kernel__ indicates that this system uses the kernel of FreeBSD, diff --git a/sys/sys/protosw.h b/sys/sys/protosw.h index ce8dd74..ba45f94 100644 --- a/sys/sys/protosw.h +++ b/sys/sys/protosw.h @@ -65,7 +65,7 @@ struct sockopt; */ /* USE THESE FOR YOUR PROTOTYPES ! */ typedef int pr_input_t (struct mbuf **, int*, int); -typedef int pr_output_t (struct mbuf *, struct socket *); +typedef int pr_output_t (struct mbuf *, struct socket *, ...); typedef void pr_ctlinput_t (int, struct sockaddr *, void *); typedef int pr_ctloutput_t (struct socket *, struct sockopt *); typedef void pr_init_t (void); diff --git a/sys/sys/sf_buf.h b/sys/sys/sf_buf.h index 7ab9443..d3bb037 100644 --- a/sys/sys/sf_buf.h +++ b/sys/sys/sf_buf.h @@ -113,7 +113,7 @@ sf_buf_kva(struct sf_buf *sf) { #ifdef SFBUF_OPTIONAL_DIRECT_MAP if (SFBUF_OPTIONAL_DIRECT_MAP) - return (VM_PAGE_TO_PHYS((vm_page_t)sf)); + return (SFBUF_PHYS_DMAP(VM_PAGE_TO_PHYS((vm_page_t)sf))); #endif return (sf->kva); diff --git a/sys/sys/socketvar.h b/sys/sys/socketvar.h index 9090340..5c3933b 100644 --- a/sys/sys/socketvar.h +++ b/sys/sys/socketvar.h @@ -38,6 +38,7 @@ #include <sys/selinfo.h> /* for struct selinfo */ #include <sys/_lock.h> #include <sys/_mutex.h> +#include <sys/osd.h> #include <sys/_sx.h> #include <sys/sockbuf.h> #include <sys/sockstate.h> @@ -117,6 +118,7 @@ struct socket { void *so_accept_filter_arg; /* saved filter args */ char *so_accept_filter_str; /* saved user args */ } *so_accf; + struct osd osd; /* Object Specific extensions */ /* * so_fibnum, so_user_cookie and friends can be used to attach * some user-specified metadata to a socket, which then can be @@ -292,6 +294,26 @@ MALLOC_DECLARE(M_PCB); MALLOC_DECLARE(M_SONAME); #endif +/* + * Socket specific helper hook point identifiers + * Do not leave holes in the sequence, hook registration is a loop. + */ +#define HHOOK_SOCKET_OPT 0 +#define HHOOK_SOCKET_CREATE 1 +#define HHOOK_SOCKET_RCV 2 +#define HHOOK_SOCKET_SND 3 +#define HHOOK_FILT_SOREAD 4 +#define HHOOK_FILT_SOWRITE 5 +#define HHOOK_SOCKET_CLOSE 6 +#define HHOOK_SOCKET_LAST HHOOK_SOCKET_CLOSE + +struct socket_hhook_data { + struct socket *so; + struct mbuf *m; + void *hctx; /* hook point specific data*/ + int status; +}; + extern int maxsockets; extern u_long sb_max; extern so_gen_t so_gencnt; diff --git a/sys/ufs/ffs/ffs_vfsops.c b/sys/ufs/ffs/ffs_vfsops.c index 576dd87..d532e1b3 100644 --- a/sys/ufs/ffs/ffs_vfsops.c +++ b/sys/ufs/ffs/ffs_vfsops.c @@ -1213,7 +1213,7 @@ ffs_unmount(mp, mntflags) susp = 0; if (mntflags & MNT_FORCE) { flags |= FORCECLOSE; - susp = fs->fs_ronly != 0; + susp = fs->fs_ronly == 0; } #ifdef UFS_EXTATTR if ((error = ufs_extattr_stop(mp, td))) { diff --git a/sys/ufs/ufs/ufs_vnops.c b/sys/ufs/ufs/ufs_vnops.c index c7ccc25..21d4ba4 100644 --- a/sys/ufs/ufs/ufs_vnops.c +++ b/sys/ufs/ufs/ufs_vnops.c @@ -1141,11 +1141,6 @@ ufs_rename(ap) mp = NULL; goto releout; } - error = vfs_busy(mp, 0); - if (error) { - mp = NULL; - goto releout; - } relock: /* * We need to acquire 2 to 4 locks depending on whether tvp is NULL @@ -1545,8 +1540,6 @@ unlockout: if (error == 0 && tdp->i_flag & IN_NEEDSYNC) error = VOP_FSYNC(tdvp, MNT_WAIT, td); vput(tdvp); - if (mp) - vfs_unbusy(mp); return (error); bad: @@ -1564,8 +1557,6 @@ releout: vrele(tdvp); if (tvp) vrele(tvp); - if (mp) - vfs_unbusy(mp); return (error); } diff --git a/sys/vm/vm_fault.c b/sys/vm/vm_fault.c index 5a1b2c2..30b0456 100644 --- a/sys/vm/vm_fault.c +++ b/sys/vm/vm_fault.c @@ -237,6 +237,7 @@ vm_fault_hold(vm_map_t map, vm_offset_t vaddr, vm_prot_t fault_type, int hardfault; struct faultstate fs; struct vnode *vp; + vm_page_t m; int locked, error; hardfault = 0; @@ -290,6 +291,56 @@ RetryFault:; goto RetryFault; } + if (wired) + fault_type = prot | (fault_type & VM_PROT_COPY); + + if (fs.vp == NULL /* avoid locked vnode leak */ && + (fault_flags & (VM_FAULT_CHANGE_WIRING | VM_FAULT_DIRTY)) == 0 && + /* avoid calling vm_object_set_writeable_dirty() */ + ((prot & VM_PROT_WRITE) == 0 || + fs.first_object->type != OBJT_VNODE || + (fs.first_object->flags & OBJ_MIGHTBEDIRTY) != 0)) { + VM_OBJECT_RLOCK(fs.first_object); + if ((prot & VM_PROT_WRITE) != 0 && + fs.first_object->type == OBJT_VNODE && + (fs.first_object->flags & OBJ_MIGHTBEDIRTY) == 0) + goto fast_failed; + m = vm_page_lookup(fs.first_object, fs.first_pindex); + /* A busy page can be mapped for read|execute access. */ + if (m == NULL || ((prot & VM_PROT_WRITE) != 0 && + vm_page_busied(m)) || m->valid != VM_PAGE_BITS_ALL) + goto fast_failed; + result = pmap_enter(fs.map->pmap, vaddr, m, prot, + fault_type | PMAP_ENTER_NOSLEEP | (wired ? PMAP_ENTER_WIRED : + 0), 0); + if (result != KERN_SUCCESS) + goto fast_failed; + if (m_hold != NULL) { + *m_hold = m; + vm_page_lock(m); + vm_page_hold(m); + vm_page_unlock(m); + } + if ((fault_type & VM_PROT_WRITE) != 0 && + (m->oflags & VPO_UNMANAGED) == 0) { + vm_page_dirty(m); + vm_pager_page_unswapped(m); + } + VM_OBJECT_RUNLOCK(fs.first_object); + if (!wired) + vm_fault_prefault(&fs, vaddr, 0, 0); + vm_map_lookup_done(fs.map, fs.entry); + curthread->td_ru.ru_minflt++; + return (KERN_SUCCESS); +fast_failed: + if (!VM_OBJECT_TRYUPGRADE(fs.first_object)) { + VM_OBJECT_RUNLOCK(fs.first_object); + VM_OBJECT_WLOCK(fs.first_object); + } + } else { + VM_OBJECT_WLOCK(fs.first_object); + } + /* * Make a reference to this object to prevent its disposal while we * are messing with it. Once we have the reference, the map is free @@ -300,15 +351,11 @@ RetryFault:; * truncation operations) during I/O. This must be done after * obtaining the vnode lock in order to avoid possible deadlocks. */ - VM_OBJECT_WLOCK(fs.first_object); vm_object_reference_locked(fs.first_object); vm_object_pip_add(fs.first_object, 1); fs.lookup_still_valid = TRUE; - if (wired) - fault_type = prot | (fault_type & VM_PROT_COPY); - fs.first_m = NULL; /* @@ -851,8 +898,9 @@ vnode_locked: if (hardfault) fs.entry->next_read = fs.pindex + faultcount - reqpage; - if ((prot & VM_PROT_WRITE) != 0 || - (fault_flags & VM_FAULT_DIRTY) != 0) { + if (((prot & VM_PROT_WRITE) != 0 || + (fault_flags & VM_FAULT_DIRTY) != 0) && + (fs.m->oflags & VPO_UNMANAGED) == 0) { vm_object_set_writeable_dirty(fs.object); /* diff --git a/tests/sys/kern/unix_seqpacket_test.c b/tests/sys/kern/unix_seqpacket_test.c index 58d6c19..c009e68 100644 --- a/tests/sys/kern/unix_seqpacket_test.c +++ b/tests/sys/kern/unix_seqpacket_test.c @@ -91,7 +91,6 @@ mk_pair_of_sockets(int *sv) err = bind(s, (struct sockaddr *)&sun, sizeof(sun)); err = listen(s, -1); ATF_CHECK_EQ(0, err); - ATF_CHECK_EQ(0, err); /* Create the other socket */ s2 = socket(PF_LOCAL, SOCK_SEQPACKET, 0); @@ -111,6 +110,9 @@ mk_pair_of_sockets(int *sv) sv[0] = s1; sv[1] = s2; + + close(s); + return (path); } @@ -148,8 +150,11 @@ test_eagain(size_t sndbufsize, size_t rcvbufsize) for(i=0; i < numpkts; i++) { ssize = send(sv[0], sndbuf, pktsize, MSG_EOR); if (ssize == -1) { - if (errno == EAGAIN) + if (errno == EAGAIN) { + close(sv[0]); + close(sv[1]); atf_tc_pass(); + } else { perror("send"); atf_tc_fail("send returned < 0 but not EAGAIN"); @@ -199,6 +204,8 @@ test_sendrecv_symmetric_buffers(size_t bufsize, int blocking) { } ATF_CHECK_EQ_MSG(pktsize, rsize, "expected %zd=send(...) but got %zd", pktsize, rsize); + close(sv[0]); + close(sv[1]); } static void @@ -274,6 +281,8 @@ test_pipe_simulator(size_t sndbufsize, size_t rcvbufsize) } } } + close(sv[0]); + close(sv[1]); } typedef struct { @@ -372,6 +381,8 @@ test_pipe(size_t sndbufsize, size_t rcvbufsize) /* Join the children */ ATF_REQUIRE_EQ(0, pthread_join(writer, NULL)); ATF_REQUIRE_EQ(0, pthread_join(reader, NULL)); + close(sv[0]); + close(sv[1]); } @@ -387,6 +398,7 @@ ATF_TC_BODY(create_socket, tc) s = socket(PF_LOCAL, SOCK_SEQPACKET, 0); ATF_CHECK(s >= 0); + close(s); } /* Create SEQPACKET sockets using socketpair(2) */ @@ -401,6 +413,8 @@ ATF_TC_BODY(create_socketpair, tc) ATF_CHECK(sv[0] >= 0); ATF_CHECK(sv[1] >= 0); ATF_CHECK(sv[0] != sv[1]); + close(sv[0]); + close(sv[1]); } /* Call listen(2) without first calling bind(2). It should fail */ @@ -414,6 +428,7 @@ ATF_TC_BODY(listen_unbound, tc) r = listen(s, -1); /* expect listen to fail since we haven't called bind(2) */ ATF_CHECK(r != 0); + close(s); } /* Bind the socket to a file */ @@ -434,6 +449,7 @@ ATF_TC_BODY(bind, tc) strlcpy(sun.sun_path, path, sizeof(sun.sun_path)); r = bind(s, (struct sockaddr *)&sun, sizeof(sun)); ATF_CHECK_EQ(0, r); + close(s); } /* listen(2) a socket that is already bound(2) should succeed */ @@ -456,6 +472,7 @@ ATF_TC_BODY(listen_bound, tc) l = listen(s, -1); ATF_CHECK_EQ(0, r); ATF_CHECK_EQ(0, l); + close(s); } /* connect(2) can make a connection */ @@ -487,6 +504,8 @@ ATF_TC_BODY(connect, tc) perror("connect"); atf_tc_fail("connect(2) failed"); } + close(s); + close(s2); } /* accept(2) can receive a connection */ @@ -496,6 +515,8 @@ ATF_TC_BODY(accept, tc) int sv[2]; mk_pair_of_sockets(sv); + close(sv[0]); + close(sv[1]); } @@ -511,6 +532,7 @@ ATF_TC_BODY(fcntl_nonblock, tc) perror("fcntl"); atf_tc_fail("fcntl failed"); } + close(s); } /* Resize the send and receive buffers */ @@ -547,6 +569,7 @@ ATF_TC_BODY(resize_buffers, tc) ATF_CHECK_EQ(0, getsockopt(s, SOL_SOCKET, SO_SNDBUF, &xs, &sl)); ATF_CHECK_EQ(0, getsockopt(s, SOL_SOCKET, SO_RCVBUF, &xr, &sl)); printf("After changing RCVBUF | %7d | %7d |\n", xs, xr); + close(s); } /* @@ -603,6 +626,8 @@ ATF_TC_BODY(resize_connected_buffers, tc) ATF_CHECK_EQ(0, getsockopt(sv[1], SOL_SOCKET, SO_RCVBUF, &rr, &sl)); printf("After changing Left's RCVBUF | %7d | %7d | %7d | %7d |\n", ls, lr, rs, rr); + close(sv[0]); + close(sv[1]); } @@ -632,6 +657,8 @@ ATF_TC_BODY(send_recv, tc) rsize = recv(sv[1], recv_buf, bufsize, MSG_WAITALL); ATF_CHECK_EQ(datalen, rsize); + close(sv[0]); + close(sv[1]); } /* sendto(2) and recvfrom(2) a single short record @@ -684,6 +711,8 @@ ATF_TC_BODY(sendto_recvfrom, tc) */ /* ATF_CHECK_EQ(PF_LOCAL, from.ss_family); */ /* ATF_CHECK_STREQ(path, ((struct sockaddr_un*)&from)->sun_path); */ + close(sv[0]); + close(sv[1]); } /* @@ -714,6 +743,8 @@ ATF_TC_BODY(send_recv_with_connect, tc) rsize = recv(sv[1], recv_buf, bufsize, MSG_WAITALL); ATF_CHECK_EQ(datalen, rsize); + close(sv[0]); + close(sv[1]); } /* send(2) should fail on a shutdown socket */ @@ -721,16 +752,17 @@ ATF_TC_WITHOUT_HEAD(shutdown_send); ATF_TC_BODY(shutdown_send, tc) { int s; - const char *data = "data"; + const char data[] = "data"; ssize_t ssize; s = socket(PF_LOCAL, SOCK_SEQPACKET, 0); - ATF_CHECK(s >= 0); + ATF_REQUIRE(s >= 0); ATF_CHECK_EQ(0, shutdown(s, SHUT_RDWR)); /* USE MSG_NOSIGNAL so we don't get SIGPIPE */ ssize = send(s, data, sizeof(data), MSG_EOR | MSG_NOSIGNAL); ATF_CHECK_EQ(EPIPE, errno); ATF_CHECK_EQ(-1, ssize); + close(s); } /* send(2) should cause SIGPIPE on a shutdown socket */ @@ -738,15 +770,16 @@ ATF_TC_WITHOUT_HEAD(shutdown_send_sigpipe); ATF_TC_BODY(shutdown_send_sigpipe, tc) { int s; - const char *data = "data"; + const char data[] = "data"; ssize_t ssize; s = socket(PF_LOCAL, SOCK_SEQPACKET, 0); - ATF_CHECK(s >= 0); + ATF_REQUIRE(s >= 0); ATF_CHECK_EQ(0, shutdown(s, SHUT_RDWR)); ATF_REQUIRE(SIG_ERR != signal(SIGPIPE, shutdown_send_sigpipe_handler)); ssize = send(s, data, sizeof(data), MSG_EOR); ATF_CHECK_EQ(1, got_sigpipe); + close(s); } /* nonblocking send(2) and recv(2) a single short record */ @@ -780,6 +813,8 @@ ATF_TC_BODY(send_recv_nonblocking, tc) rsize = recv(sv[1], recv_buf, bufsize, MSG_WAITALL); ATF_CHECK_EQ(datalen, rsize); + close(sv[0]); + close(sv[1]); } /* @@ -807,6 +842,8 @@ ATF_TC_BODY(emsgsize, tc) ssize = send(sv[0], sndbuf, pktsize, MSG_EOR); ATF_CHECK_EQ(EMSGSIZE, errno); ATF_CHECK_EQ(-1, ssize); + close(sv[0]); + close(sv[1]); } /* @@ -834,6 +871,8 @@ ATF_TC_BODY(emsgsize_nonblocking, tc) ssize = send(sv[0], sndbuf, pktsize, MSG_EOR); ATF_CHECK_EQ(EMSGSIZE, errno); ATF_CHECK_EQ(-1, ssize); + close(sv[0]); + close(sv[1]); } @@ -924,6 +963,8 @@ ATF_TC_BODY(rcvbuf_oversized, tc) rsize = recv(sv[1], recv_buf, pktsize, MSG_WAITALL); ATF_CHECK_EQ(EAGAIN, errno); ATF_CHECK_EQ(-1, rsize); + close(sv[0]); + close(sv[1]); } /* diff --git a/tools/build/make_check/Makefile b/tools/build/make_check/Makefile index 9df224f..c9273c3 100644 --- a/tools/build/make_check/Makefile +++ b/tools/build/make_check/Makefile @@ -2,6 +2,9 @@ .MAKE.MODE= normal +# Failure is handled by the invoker, don't kill other legs of a parallel build. +MAKE_JOB_ERROR_TOKEN=no + # Test for broken LHS expansion. # This *must* cause make(1) to detect a recursive variable, and fail as such. .if make(lhs_expn) diff --git a/tools/build/mk/OptionalObsoleteFiles.inc b/tools/build/mk/OptionalObsoleteFiles.inc index d3cf72f..78878c2 100644 --- a/tools/build/mk/OptionalObsoleteFiles.inc +++ b/tools/build/mk/OptionalObsoleteFiles.inc @@ -444,6 +444,7 @@ OLD_FILES+=usr/share/man/man1/dtrace.1.gz OLD_FILES+=boot/gptzfsboot OLD_FILES+=boot/zfsboot OLD_FILES+=boot/zfsloader +OLD_FILES+=etc/devd/zfs.conf OLD_FILES+=etc/periodic/daily/404.status-zfs OLD_FILES+=etc/periodic/daily/800.scrub-zfs OLD_LIBS+=lib/libzfs.so.2 @@ -4677,9 +4678,10 @@ OLD_FILES+=usr/sbin/unbound-control OLD_FILES+=usr/sbin/unbound-control-setup .endif -#.if ${MK_USB} == no -# to be filled in -#.endif +.if ${MK_USB} == no +OLD_FILES+=etc/devd/uauth.conf +OLD_FILES+=etc/devd/usb.conf +.endif .if ${MK_UTMPX} == no OLD_FILES+=etc/periodic/monthly/200.accounting diff --git a/tools/build/options/WITHOUT_CUSE b/tools/build/options/WITHOUT_CUSE new file mode 100644 index 0000000..bdf064f --- /dev/null +++ b/tools/build/options/WITHOUT_CUSE @@ -0,0 +1,2 @@ +.\" $FreeBSD$ +Set to not build CUSE-related programs and libraries. diff --git a/tools/build/options/WITH_PIE b/tools/build/options/WITH_PIE deleted file mode 100644 index 509da18..0000000 --- a/tools/build/options/WITH_PIE +++ /dev/null @@ -1,2 +0,0 @@ -.\" $FreeBSD$ -Enable building of Position-Independent Executables (PIEs). diff --git a/tools/tools/ath/athaggrstats/Makefile b/tools/tools/ath/athaggrstats/Makefile index aa66e68..482a0c2 100644 --- a/tools/tools/ath/athaggrstats/Makefile +++ b/tools/tools/ath/athaggrstats/Makefile @@ -12,8 +12,8 @@ CLEANFILES+= opt_ah.h CFLAGS+=-DATH_SUPPORT_ANI CFLAGS+=-DATH_SUPPORT_TDMA -USEPRIVATELIB= -LDADD=-lbsdstat +USEPRIVATELIB=bsdstat +LDADD= ${LDBSDSTAT} opt_ah.h: echo "#define AH_DEBUG 1" > opt_ah.h diff --git a/tools/tools/ath/athstats/Makefile b/tools/tools/ath/athstats/Makefile index 13093f5..8d1bfa6 100644 --- a/tools/tools/ath/athstats/Makefile +++ b/tools/tools/ath/athstats/Makefile @@ -23,8 +23,9 @@ CFLAGS+=-DATH_SUPPORT_TDMA CFLAGS.clang+= -fbracket-depth=512 -USEPRIVATELIB= -LDADD= -lbsdstat +USEPRIVATELIB= bsdstat + +LDADD= ${LDBSDSTAT} opt_ah.h: echo "#define AH_DEBUG 1" > opt_ah.h diff --git a/tools/tools/nanobsd/dhcpd/common b/tools/tools/nanobsd/dhcpd/common index 412c1a1..2658a84 100644 --- a/tools/tools/nanobsd/dhcpd/common +++ b/tools/tools/nanobsd/dhcpd/common @@ -261,11 +261,6 @@ die() exit 1 } -create_amd64_diskimage() -{ - create_i386_diskimage "$*" -} - # Automatically include the packaging port here so it is always first so it # builds the port and adds the package so we can add other packages. add_port ports-mgmt/pkg diff --git a/tools/tools/nanobsd/nanobsd.sh b/tools/tools/nanobsd/nanobsd.sh index f199570..437085a 100644 --- a/tools/tools/nanobsd/nanobsd.sh +++ b/tools/tools/nanobsd/nanobsd.sh @@ -347,6 +347,18 @@ install_kernel ( ) ( ) > ${NANO_OBJ}/_.ik 2>&1 ) +native_xtools ( ) ( + print 2 "Installing the optimized native build tools for cross env" + pprint 3 "log: ${NANO_OBJ}/_.native_xtools" + + cd ${NANO_SRC} + env TARGET_ARCH=${NANO_ARCH} \ + ${NANO_MAKE} SRCCONF=${SRCCONF} \ + __MAKE_CONF=${NANO_MAKE_CONF_INSTALL} native-xtools \ + DESTDIR=${NANO_WORLDDIR} \ + > ${NANO_OBJ}/_.native_xtools 2>&1 +) + run_customize() ( pprint 2 "run customize scripts" @@ -487,7 +499,7 @@ populate_data_slice ( ) ( populate_slice "$1" "$2" "$3" "$4" ) -create_i386_diskimage ( ) ( +create_diskimage ( ) ( pprint 2 "build diskimage" pprint 3 "log: ${NANO_OBJ}/_.di" @@ -581,8 +593,14 @@ create_i386_diskimage ( ) ( fdisk ${MD} # XXX: params # XXX: pick up cached boot* files, they may not be in image anymore. - boot0cfg -B -b ${NANO_WORLDDIR}/${NANO_BOOTLOADER} ${NANO_BOOT0CFG} ${MD} - bsdlabel -w -B -b ${NANO_WORLDDIR}/boot/boot ${MD}s1 + if [ -f ${NANO_WORLDDIR}/${NANO_BOOTLOADER} ]; then + boot0cfg -B -b ${NANO_WORLDDIR}/${NANO_BOOTLOADER} ${NANO_BOOT0CFG} ${MD} + fi + if [ -f ${NANO_WORLDDIR}/boot/boot ]; then + bsdlabel -w -B -b ${NANO_WORLDDIR}/boot/boot ${MD}s1 + else + bsdlabel -w ${MD}s1 + fi bsdlabel ${MD}s1 # Create first image @@ -643,11 +661,6 @@ create_i386_diskimage ( ) ( ) > ${NANO_OBJ}/_.di 2>&1 ) -# i386 and amd64 are identical for disk images -create_amd64_diskimage ( ) ( - create_i386_diskimage -) - last_orders () ( # Redefine this function with any last orders you may have # after the build completed, for instance to copy the finished @@ -919,9 +932,10 @@ do_installkernel=true do_world=true do_image=true do_copyout_partition=true +do_native_xtools=false set +e -args=`getopt Kbc:fhiknqvw $*` +args=`getopt KXbc:fhiknqvw $*` if [ $? -ne 0 ] ; then usage exit 2 @@ -937,6 +951,10 @@ do do_installkernel=false shift ;; + -X) + do_native_xtools=true + shift + ;; -b) do_world=false do_kernel=false @@ -1088,6 +1106,9 @@ clean_world make_conf_install install_world install_etc +if $do_native_xtools ; then + native_xtools +fi setup_nanobsd_etc if $do_installkernel ; then install_kernel @@ -1100,7 +1121,7 @@ setup_nanobsd prune_usr run_late_customize if $do_image ; then - create_${NANO_ARCH}_diskimage + create_diskimage else pprint 2 "Skipping image build (as instructed)" fi diff --git a/tools/tools/nanobsd/rescue/common b/tools/tools/nanobsd/rescue/common index c432440..3fd06c8 100644 --- a/tools/tools/nanobsd/rescue/common +++ b/tools/tools/nanobsd/rescue/common @@ -106,11 +106,3 @@ last_orders () ( -o bootimage="i386;_.w/boot/cdboot" -o no-emul-boot _.disk.iso _.w/ ) ) - -#create_i386_diskimage () { -# #currently not used -#} - -#create_amd64_diskimage () { -# create_i386_diskimage -#} diff --git a/tools/tools/netmap/pkt-gen.c b/tools/tools/netmap/pkt-gen.c index 8e78fa8..c7cd874 100644 --- a/tools/tools/netmap/pkt-gen.c +++ b/tools/tools/netmap/pkt-gen.c @@ -37,6 +37,8 @@ * */ +// #define TRASH_VHOST_HDR + #define _GNU_SOURCE /* for CPU_SET() */ #include <stdio.h> #define NETMAP_WITH_LIBS @@ -123,12 +125,14 @@ struct virt_header { uint8_t fields[VIRT_HDR_MAX]; }; +#define MAX_BODYSIZE 16384 + struct pkt { struct virt_header vh; struct ether_header eh; struct ip ip; struct udphdr udp; - uint8_t body[2048]; // XXX hardwired + uint8_t body[MAX_BODYSIZE]; // XXX hardwired } __attribute__((__packed__)); struct ip_range { @@ -144,6 +148,15 @@ struct mac_range { /* ifname can be netmap:foo-xxxx */ #define MAX_IFNAMELEN 64 /* our buffer for ifname */ +//#define MAX_PKTSIZE 1536 +#define MAX_PKTSIZE MAX_BODYSIZE /* XXX: + IP_HDR + ETH_HDR */ + +/* compact timestamp to fit into 60 byte packet. (enough to obtain RTT) */ +struct tstamp { + uint32_t sec; + uint32_t nsec; +}; + /* * global arguments for all threads */ @@ -168,6 +181,8 @@ struct glob_arg { #define OPT_TS 16 /* add a timestamp */ #define OPT_INDIRECT 32 /* use indirect buffers, tx only */ #define OPT_DUMP 64 /* dump rx/tx traffic */ +#define OPT_MONITOR_TX 128 +#define OPT_MONITOR_RX 256 int dev_type; #ifndef NO_PCAP pcap_t *p; @@ -179,7 +194,6 @@ struct glob_arg { int affinity; int main_fd; struct nm_desc *nmd; - uint64_t nmd_flags; int report_interval; /* milliseconds between prints */ void *(*td_body)(void *); void *mmap_addr; @@ -309,6 +323,7 @@ sigint_h(int sig) int i; (void)sig; /* UNUSED */ + D("received control-C on thread %p", pthread_self()); for (i = 0; i < global_nthreads; i++) { targs[i].cancel = 1; } @@ -642,9 +657,37 @@ initialize_packet(struct targ *targ) eh->ether_type = htons(ETHERTYPE_IP); bzero(&pkt->vh, sizeof(pkt->vh)); +#ifdef TRASH_VHOST_HDR + /* set bogus content */ + pkt->vh.fields[0] = 0xff; + pkt->vh.fields[1] = 0xff; + pkt->vh.fields[2] = 0xff; + pkt->vh.fields[3] = 0xff; + pkt->vh.fields[4] = 0xff; + pkt->vh.fields[5] = 0xff; +#endif /* TRASH_VHOST_HDR */ // dump_payload((void *)pkt, targ->g->pkt_size, NULL, 0); } +static void +set_vnet_hdr_len(struct targ *t) +{ + int err, l = t->g->virt_header; + struct nmreq req; + + if (l == 0) + return; + + memset(&req, 0, sizeof(req)); + bcopy(t->nmd->req.nr_name, req.nr_name, sizeof(req.nr_name)); + req.nr_version = NETMAP_API; + req.nr_cmd = NETMAP_BDG_VNET_HDR; + req.nr_arg1 = l; + err = ioctl(t->fd, NIOCREGIF, &req); + if (err) { + D("Unable to set vnet header length %d", l); + } +} /* @@ -760,10 +803,13 @@ pinger_body(void *data) if (nm_ring_empty(ring)) { D("-- ouch, cannot send"); } else { + struct tstamp *tp; nm_pkt_copy(frame, p, size); clock_gettime(CLOCK_REALTIME_PRECISE, &ts); bcopy(&sent, p+42, sizeof(sent)); - bcopy(&ts, p+46, sizeof(ts)); + tp = (struct tstamp *)(p+46); + tp->sec = (uint32_t)ts.tv_sec; + tp->nsec = (uint32_t)ts.tv_nsec; sent++; ring->head = ring->cur = nm_ring_next(ring, ring->cur); } @@ -780,12 +826,15 @@ pinger_body(void *data) ring = NETMAP_RXRING(nifp, i); while (!nm_ring_empty(ring)) { uint32_t seq; + struct tstamp *tp; slot = &ring->slot[ring->cur]; p = NETMAP_BUF(ring, slot->buf_idx); clock_gettime(CLOCK_REALTIME_PRECISE, &now); bcopy(p+42, &seq, sizeof(seq)); - bcopy(p+46, &ts, sizeof(ts)); + tp = (struct tstamp *)(p+46); + ts.tv_sec = (time_t)tp->sec; + ts.tv_nsec = (long)tp->nsec; ts.tv_sec = now.tv_sec - ts.tv_sec; ts.tv_nsec = now.tv_nsec - ts.tv_nsec; if (ts.tv_nsec < 0) { @@ -978,7 +1027,7 @@ sender_body(void *data) { struct targ *targ = (struct targ *) data; struct pollfd pfd = { .fd = targ->fd, .events = POLLOUT }; - struct netmap_if *nifp = targ->nmd->nifp; + struct netmap_if *nifp; struct netmap_ring *txring; int i, n = targ->g->npackets / targ->g->nthreads; int64_t sent = 0; @@ -993,7 +1042,7 @@ sender_body(void *data) frame += sizeof(pkt->vh) - targ->g->virt_header; size = targ->g->pkt_size + targ->g->virt_header; - D("start"); + D("start, fd %d main_fd %d", targ->fd, targ->g->main_fd); if (setaffinity(targ->thread, targ->affinity)) goto quit; @@ -1035,6 +1084,7 @@ sender_body(void *data) int tosend = 0; int frags = targ->g->frags; + nifp = targ->nmd->nifp; while (!targ->cancel && (n == 0 || sent < n)) { if (rate_limit && tosend <= 0) { @@ -1088,12 +1138,17 @@ sender_body(void *data) } } /* flush any remaining packets */ + D("flush tail %d head %d on thread %p", + txring->tail, txring->head, + pthread_self()); ioctl(pfd.fd, NIOCTXSYNC, NULL); /* final part: wait all the TX queues to be empty. */ for (i = targ->nmd->first_tx_ring; i <= targ->nmd->last_tx_ring; i++) { txring = NETMAP_TXRING(nifp, i); while (nm_tx_pending(txring)) { + RD(5, "pending tx tail %d head %d on ring %d", + txring->tail, txring->head, i); ioctl(pfd.fd, NIOCTXSYNC, NULL); usleep(1); /* wait 1 tick */ } @@ -1152,7 +1207,7 @@ receiver_body(void *data) { struct targ *targ = (struct targ *) data; struct pollfd pfd = { .fd = targ->fd, .events = POLLIN }; - struct netmap_if *nifp = targ->nmd->nifp; + struct netmap_if *nifp; struct netmap_ring *rxring; int i; uint64_t received = 0; @@ -1160,21 +1215,21 @@ receiver_body(void *data) if (setaffinity(targ->thread, targ->affinity)) goto quit; + D("reading from %s fd %d main_fd %d", + targ->g->ifname, targ->fd, targ->g->main_fd); /* unbounded wait for the first packet. */ - for (;;) { + for (;!targ->cancel;) { i = poll(&pfd, 1, 1000); if (i > 0 && !(pfd.revents & POLLERR)) break; RD(1, "waiting for initial packets, poll returns %d %d", i, pfd.revents); } - /* main loop, exit after 1s silence */ clock_gettime(CLOCK_REALTIME_PRECISE, &targ->tic); if (targ->g->dev_type == DEV_TAP) { - D("reading from %s fd %d", targ->g->ifname, targ->g->main_fd); while (!targ->cancel) { - char buf[2048]; + char buf[MAX_BODYSIZE]; /* XXX should we poll ? */ if (read(targ->g->main_fd, buf, sizeof(buf)) > 0) targ->count++; @@ -1183,11 +1238,14 @@ receiver_body(void *data) } else if (targ->g->dev_type == DEV_PCAP) { while (!targ->cancel) { /* XXX should we poll ? */ - pcap_dispatch(targ->g->p, targ->g->burst, receive_pcap, NULL); + pcap_dispatch(targ->g->p, targ->g->burst, receive_pcap, + (u_char *)&targ->count); } #endif /* !NO_PCAP */ } else { int dump = targ->g->options & OPT_DUMP; + + nifp = targ->nmd->nifp; while (!targ->cancel) { /* Once we started to receive packets, wait at most 1 seconds before quitting. */ @@ -1333,6 +1391,8 @@ start_threads(struct glob_arg *g) if (g->dev_type == DEV_NETMAP) { struct nm_desc nmd = *g->nmd; /* copy, we overwrite ringid */ + uint64_t nmd_flags = 0; + nmd.self = &nmd; if (g->nthreads > 1) { if (nmd.req.nr_flags != NR_REG_ALL_NIC) { @@ -1344,18 +1404,23 @@ start_threads(struct glob_arg *g) } /* Only touch one of the rings (rx is already ok) */ if (g->td_body == receiver_body) - nmd.req.nr_ringid |= NETMAP_NO_TX_POLL; + nmd_flags |= NETMAP_NO_TX_POLL; /* register interface. Override ifname and ringid etc. */ + if (g->options & OPT_MONITOR_TX) + nmd.req.nr_flags |= NR_MONITOR_TX; + if (g->options & OPT_MONITOR_RX) + nmd.req.nr_flags |= NR_MONITOR_RX; - t->nmd = nm_open(t->g->ifname, NULL, g->nmd_flags | - NM_OPEN_IFNAME | NM_OPEN_NO_MMAP, g->nmd); + t->nmd = nm_open(t->g->ifname, NULL, nmd_flags | + NM_OPEN_IFNAME | NM_OPEN_NO_MMAP, &nmd); if (t->nmd == NULL) { D("Unable to open %s: %s", t->g->ifname, strerror(errno)); continue; } t->fd = t->nmd->fd; + set_vnet_hdr_len(t); } else { targs[i].fd = g->main_fd; @@ -1573,7 +1638,7 @@ main(int arc, char **argv) g.virt_header = 0; while ( (ch = getopt(arc, argv, - "a:f:F:n:i:Il:d:s:D:S:b:c:o:p:T:w:WvR:XC:H:e:")) != -1) { + "a:f:F:n:i:Il:d:s:D:S:b:c:o:p:T:w:WvR:XC:H:e:m:")) != -1) { struct sf *fn; switch(ch) { @@ -1707,6 +1772,15 @@ main(int arc, char **argv) case 'e': /* extra bufs */ g.extra_bufs = atoi(optarg); break; + case 'm': + if (strcmp(optarg, "tx") == 0) { + g.options |= OPT_MONITOR_TX; + } else if (strcmp(optarg, "rx") == 0) { + g.options |= OPT_MONITOR_RX; + } else { + D("unrecognized monitor mode %s", optarg); + } + break; } } @@ -1723,8 +1797,8 @@ main(int arc, char **argv) if (g.cpus == 0) g.cpus = i; - if (g.pkt_size < 16 || g.pkt_size > 1536) { - D("bad pktsize %d\n", g.pkt_size); + if (g.pkt_size < 16 || g.pkt_size > MAX_PKTSIZE) { + D("bad pktsize %d [16..%d]\n", g.pkt_size, MAX_PKTSIZE); usage(); } @@ -1766,26 +1840,25 @@ main(int arc, char **argv) } else if (g.dev_type == DEV_PCAP) { char pcap_errbuf[PCAP_ERRBUF_SIZE]; - D("using pcap on %s", g.ifname); pcap_errbuf[0] = '\0'; // init the buffer - g.p = pcap_open_live(g.ifname, 0, 1, 100, pcap_errbuf); + g.p = pcap_open_live(g.ifname, 256 /* XXX */, 1, 100, pcap_errbuf); if (g.p == NULL) { D("cannot open pcap on %s", g.ifname); usage(); } + g.main_fd = pcap_fileno(g.p); + D("using pcap on %s fileno %d", g.ifname, g.main_fd); #endif /* !NO_PCAP */ } else if (g.dummy_send) { /* but DEV_NETMAP */ D("using a dummy send routine"); } else { - struct nm_desc base_nmd; + struct nmreq base_nmd; bzero(&base_nmd, sizeof(base_nmd)); - g.nmd_flags = 0; - g.nmd_flags |= parse_nmr_config(g.nmr_config, &base_nmd.req); + parse_nmr_config(g.nmr_config, &base_nmd); if (g.extra_bufs) { - base_nmd.req.nr_arg3 = g.extra_bufs; - g.nmd_flags |= NM_OPEN_ARG3; + base_nmd.nr_arg3 = g.extra_bufs; } /* @@ -1795,7 +1868,7 @@ main(int arc, char **argv) * which in turn may take some time for the PHY to * reconfigure. We do the open here to have time to reset. */ - g.nmd = nm_open(g.ifname, NULL, g.nmd_flags, &base_nmd); + g.nmd = nm_open(g.ifname, &base_nmd, 0, NULL); if (g.nmd == NULL) { D("Unable to open %s: %s", g.ifname, strerror(errno)); goto out; @@ -1803,7 +1876,11 @@ main(int arc, char **argv) g.main_fd = g.nmd->fd; D("mapped %dKB at %p", g.nmd->req.nr_memsize>>10, g.nmd->mem); - devqueues = g.nmd->req.nr_rx_rings; + /* get num of queues in tx or rx */ + if (g.td_body == sender_body) + devqueues = g.nmd->req.nr_tx_rings; + else + devqueues = g.nmd->req.nr_rx_rings; /* validate provided nthreads. */ if (g.nthreads < 1 || g.nthreads > devqueues) { @@ -1819,12 +1896,14 @@ main(int arc, char **argv) req->nr_offset, req->nr_tx_rings, req->nr_rx_rings, req->nr_arg2); for (i = 0; i <= req->nr_tx_rings; i++) { - D(" TX%d at 0x%lx", i, - (char *)NETMAP_TXRING(nifp, i) - (char *)nifp); + struct netmap_ring *ring = NETMAP_TXRING(nifp, i); + D(" TX%d at 0x%lx slots %d", i, + (char *)ring - (char *)nifp, ring->num_slots); } for (i = 0; i <= req->nr_rx_rings; i++) { - D(" RX%d at 0x%lx", i, - (char *)NETMAP_RXRING(nifp, i) - (char *)nifp); + struct netmap_ring *ring = NETMAP_RXRING(nifp, i); + D(" RX%d at 0x%lx slots %d", i, + (char *)ring - (char *)nifp, ring->num_slots); } } diff --git a/tools/tools/netmap/vale-ctl.c b/tools/tools/netmap/vale-ctl.c index e1d8da5..c9e5f31 100644 --- a/tools/tools/netmap/vale-ctl.c +++ b/tools/tools/netmap/vale-ctl.c @@ -38,6 +38,7 @@ #include <net/netmap.h> #include <net/netmap_user.h> #include <libgen.h> /* basename */ +#include <stdlib.h> /* atoi, free */ /* debug support */ #define ND(format, ...) do {} while(0) @@ -45,8 +46,47 @@ fprintf(stderr, "%s [%d] " format "\n", \ __FUNCTION__, __LINE__, ##__VA_ARGS__) +/* XXX cut and paste from pkt-gen.c because I'm not sure whether this + * program may include nm_util.h + */ +void parse_nmr_config(const char* conf, struct nmreq *nmr) +{ + char *w, *tok; + int i, v; + + nmr->nr_tx_rings = nmr->nr_rx_rings = 0; + nmr->nr_tx_slots = nmr->nr_rx_slots = 0; + if (conf == NULL || ! *conf) + return; + w = strdup(conf); + for (i = 0, tok = strtok(w, ","); tok; i++, tok = strtok(NULL, ",")) { + v = atoi(tok); + switch (i) { + case 0: + nmr->nr_tx_slots = nmr->nr_rx_slots = v; + break; + case 1: + nmr->nr_rx_slots = v; + break; + case 2: + nmr->nr_tx_rings = nmr->nr_rx_rings = v; + break; + case 3: + nmr->nr_rx_rings = v; + break; + default: + D("ignored config: %s", tok); + break; + } + } + D("txr %d txd %d rxr %d rxd %d", + nmr->nr_tx_rings, nmr->nr_tx_slots, + nmr->nr_rx_rings, nmr->nr_rx_slots); + free(w); +} + static int -bdg_ctl(const char *name, int nr_cmd, int nr_arg) +bdg_ctl(const char *name, int nr_cmd, int nr_arg, char *nmr_config) { struct nmreq nmr; int error = 0; @@ -62,8 +102,19 @@ bdg_ctl(const char *name, int nr_cmd, int nr_arg) if (name != NULL) /* might be NULL */ strncpy(nmr.nr_name, name, sizeof(nmr.nr_name)); nmr.nr_cmd = nr_cmd; + parse_nmr_config(nmr_config, &nmr); switch (nr_cmd) { + case NETMAP_BDG_DELIF: + case NETMAP_BDG_NEWIF: + error = ioctl(fd, NIOCREGIF, &nmr); + if (error == -1) { + ND("Unable to %s %s", nr_cmd == NETMAP_BDG_DELIF ? "delete":"create", name); + perror(name); + } else { + ND("Success to %s %s", nr_cmd == NETMAP_BDG_DELIF ? "delete":"create", name); + } + break; case NETMAP_BDG_ATTACH: case NETMAP_BDG_DETACH: if (nr_arg && nr_arg != NETMAP_BDG_HOST) @@ -120,7 +171,7 @@ main(int argc, char *argv[]) { int ch, nr_cmd = 0, nr_arg = 0; const char *command = basename(argv[0]); - char *name = NULL; + char *name = NULL, *nmr_config = NULL; if (argc > 3) { usage: @@ -131,12 +182,15 @@ usage: "\t-d interface interface name to be detached\n" "\t-a interface interface name to be attached\n" "\t-h interface interface name to be attached with the host stack\n" + "\t-n interface interface name to be created\n" + "\t-r interface interface name to be deleted\n" "\t-l list all or specified bridge's interfaces (default)\n" + "\t-C string ring/slot setting of an interface creating by -n\n" "", command); return 0; } - while ((ch = getopt(argc, argv, "d:a:h:g:l")) != -1) { + while ((ch = getopt(argc, argv, "d:a:h:g:l:n:r:C:")) != -1) { name = optarg; /* default */ switch (ch) { default: @@ -152,6 +206,12 @@ usage: nr_cmd = NETMAP_BDG_ATTACH; nr_arg = NETMAP_BDG_HOST; break; + case 'n': + nr_cmd = NETMAP_BDG_NEWIF; + break; + case 'r': + nr_cmd = NETMAP_BDG_DELIF; + break; case 'g': nr_cmd = 0; break; @@ -160,6 +220,9 @@ usage: if (optind < argc && argv[optind][0] == '-') name = NULL; break; + case 'C': + nmr_config = strdup(optarg); + break; } if (optind != argc) { // fprintf(stderr, "optind %d argc %d\n", optind, argc); @@ -168,5 +231,5 @@ usage: } if (argc == 1) nr_cmd = NETMAP_BDG_LIST; - return bdg_ctl(name, nr_cmd, nr_arg) ? 1 : 0; + return bdg_ctl(name, nr_cmd, nr_arg, nmr_config) ? 1 : 0; } diff --git a/tools/tools/vt/keymaps/KBDFILES.map b/tools/tools/vt/keymaps/KBDFILES.map new file mode 100644 index 0000000..4494b85 --- /dev/null +++ b/tools/tools/vt/keymaps/KBDFILES.map @@ -0,0 +1,149 @@ +# $FreeBSD$ +# +# The Files are converted by "convert-keymaps.pl" from the given encoding to UCS. +# +# An additional "+EURO" causes the translation of the generic currency symbol to +# an Euro symbol, even if the source locale does not support an Euro symbol. +# This conversion is only performed for the "E" key (not e.g. on Shift-4, which +# still generates the currency symbol). +# +# Encoding syscons file name newcons (vt) file name +ISO8859-1+EURO be.iso.kbd be.kbd +ISO8859-1+EURO be.iso.acc.kbd be.acc.kbd + +ISO8859-5 bg.bds.ctrlcaps.kbd bg.bds.kbd +ISO8859-5 bg.phonetic.ctrlcaps.kbd bg.phonetic.kbd + +#ISO8859-1 br275.iso.kbd br.kbd.from-iso1 (only AltGr-Shift-6 differs from CP850) +ISO8859-1 br275.iso.acc.kbd br.kbd +CP850 br275.cp850.kbd br.noacc.kbd + +#CP1131 by.cp1131.kbd by.kbd.from-cp1131 (Shift-3 not OK) +#CP1251 by.cp1251.kbd by.kbd.from-cp1251 (result identical to CP1251) +ISO8859-5 by.iso5.kbd by.kbd + +ISO8859-2 ce.iso2.kbd centraleuropean.qwerty.kbd + +ISO8859-1 colemak.iso15.acc.kbd colemak.acc.kbd + +ISO8859-2 cs.latin2.qwertz.kbd cz.kbd +ISO8859-2 cz.iso2.kbd cz.qwerty.kbd.from-ce + +ISO8859-1+EURO danish.iso.kbd dk.kbd +ISO8859-1+EURO danish.iso.acc.kbd dk.acc.kbd +CP865 danish.cp865.kbd dk.kbd.from-cp865 +ISO8859-1 danish.iso.macbook.kbd dk.macbook.kbd + +ISO8859-1 dutch.iso.acc.kbd nl.kbd + +ISO8859-15 eee_nordic.kbd nordic.asus-eee.kbd + +ISO8859-7 el.iso07.kbd gr.kbd + +ISO8859-1 estonian.iso.kbd ee.kbd.from-iso1 +ISO8859-15 estonian.iso15.kbd ee.kbd +CP850 estonian.cp850.kbd ee.kbd.from-cp850 + +ISO8859-1+EURO finnish.iso.kbd fi.kbd +CP850 finnish.cp850.kbd fi.kbd.from-cp850 + +ISO8859-1+EURO fr.iso.kbd fr.kbd +ISO8859-1+EURO fr.iso.acc.kbd fr.acc.kbd +ISO8859-1+EURO fr.macbook.acc.kbd fr.macbook.kbd +ISO8859-1+EURO fr.dvorak.kbd fr.dvorak.kbd +ISO8859-1 fr.dvorak.acc.kbd fr.dvorak.acc.kbd + +ISO8859-1+EURO fr_CA.iso.acc.kbd ca-fr.kbd + +ISO8859-1+EURO german.iso.kbd de.noacc.kbd +ISO8859-1+EURO german.iso.acc.kbd de.acc.kbd +CP850 german.cp850.kbd de.kbd.from-cp850 + +ISO8859-7 gr.elot.acc.kbd gr.elot.acc.kbd +ISO8859-7 gr.us101.acc.kbd gr.101.acc.kbd + +ISO8859-8 iw.iso8.kbd il.kbd + +ISO8859-2 hr.iso.kbd hr.kbd + +ISO8859-2 hu.iso2.101keys.kbd hu.101.kbd +ISO8859-2 hu.iso2.102keys.kbd hu.102.kbd + +ARMSCII-8 hy.armscii-8.kbd am.kbd + +ISO8859-1 icelandic.iso.kbd is.kbd +ISO8859-1 icelandic.iso.acc.kbd is.acc.kbd + +ISO8859-1+EURO it.iso.kbd it.kbd + +ISO8859-1+YEN jp.106.kbd jp.kbd +ISO8859-1+YEN jp.106x.kbd jp.capsctrl.kbd +ISO8859-1+YEN jp.pc98.kbd jp.pc98.kbd +ISO8859-1+YEN jp.pc98.iso.kbd jp.pc98.iso.kbd + +PT154 kk.pt154.kst.kbd kz.kst.kbd +PT154 kk.pt154.io.kbd kz.io.kbd + +ISO8859-1 latinamerican.kbd latinamerican.kbd +ISO8859-1 latinamerican.iso.acc.kbd latinamerican.acc.kbd + +ISO8859-4 lt.iso4.kbd lt.kbd + +ISO8859-1 norwegian.iso.kbd no.kbd +ISO8859-1 norwegian.dvorak.kbd no.dvorak.kbd + +ISO8859-2 pl_PL.ISO8859-2.kbd pl.kbd +ISO8859-2 pl_PL.dvorak.kbd pl.dvorak.kbd + +ISO8859-1+EURO pt.iso.kbd pt.kbd +ISO8859-1+EURO pt.iso.acc.kbd pt.acc.kbd + +CP866 ru.cp866.kbd ru.kbd.from-cp866 +ISO8859-5 ru.iso5.kbd ru.kbd.from-iso5 +KOI8-R ru.koi8-r.kbd ru.kbd +KOI8-R ru.koi8-r.shift.kbd ru.shift.kbd +KOI8-R ru.koi8-r.win.kbd ru.win.kbd + +ISO8859-1+EURO spanish.dvorak.kbd es.dvorak.kbd +ISO8859-1+EURO spanish.iso.kbd es.kbd.from-iso1 +ISO8859-1+EURO spanish.iso.acc.kbd es.acc.kbd +ISO8859-1+EURO spanish.iso15.acc.kbd es.kbd + +ISO8859-2 si.iso.kbd si.kbd + +ISO8859-2 sk.iso2.kbd sk.kbd + +ISO8859-1+EURO swedish.iso.kbd se.kbd +CP850 swedish.cp850.kbd se.kbd.from-cp850 + +ISO8859-1+EURO swissfrench.iso.kbd ch-fr.kbd +ISO8859-1+EURO swissfrench.iso.acc.kbd ch-fr.acc.kbd +CP850 swissfrench.cp850.kbd ch-fr.kbd.from-cp850 + +ISO8859-1+EURO swissgerman.iso.kbd ch.kbd +ISO8859-1+EURO swissgerman.iso.acc.kbd ch.acc.kbd +CP850 swissgerman.cp850.kbd ch.kbd.from-cp850 +ISO8859-1+EURO swissgerman.macbook.acc.kbd ch.macbook.acc.kbd + +ISO8859-9 tr.iso9.q.kbd tr.kbd + +ISO8859-1+EURO uk.iso.kbd uk.kbd +ISO8859-1+EURO uk.iso-ctrl.kbd uk.capsctrl.kbd +#CP850 uk.cp850.kbd uk.kbd.from-cp850 (no ¤ and different Alt/Alt-Shift encodings) +#CP850 uk.cp850-ctrl.kbd uk.capsctrl.kbd.from-cp850 (no ¤ and different Alt/Alt-Shift encodings) +ISO8859-15 uk.dvorak.kbd uk.dvorak.kbd + +ISO8859-1 us.iso.kbd us.kbd +ISO8859-1 us.iso.acc.kbd us.acc.kbd +ISO8859-1 us.dvorak.kbd us.dvorak.kbd +ISO8859-1 us.dvorakr.kbd us.dvorakr.kbd +ISO8859-1 us.dvorakl.kbd us.dvorakl.kbd +ISO8859-1 us.dvorakp.kbd us.dvorakp.kbd +ISO8859-1 us.dvorakx.kbd us.dvorakx.kbd +ISO8859-1 us.emacs.kbd us.emacs.kbd +ISO8859-1 us.pc-ctrl.kbd us.ctrl.kbd +ISO8859-1 us.unix.kbd us.unix.kbd + +ISO8859-5 ua.iso5.kbd ua.kbd.from-iso5 +KOI8-U ua.koi8-u.kbd ua.kbd +KOI8-U ua.koi8-u.shift.alt.kbd ua.shift.alt.kbd diff --git a/tools/tools/vt/keymaps/LANG.map b/tools/tools/vt/keymaps/LANG.map new file mode 100644 index 0000000..29ecbe8 --- /dev/null +++ b/tools/tools/vt/keymaps/LANG.map @@ -0,0 +1,29 @@ +# $FreeBSD$ +bg bg ISO8859-5 +cs cs ISO8859-2 +da da ISO8859-15 +de de ISO8859-15 +el el ISO8859-7 +en en ISO8859-1 +es es ISO8859-1 +fi fi ISO8859-1 +fr fr ISO8859-1 +hr hr ISO8859-2 +hu hu ISO8859-2 +hy hy ARMSCII-8 +is is ISO8859-1 +it it ISO8859-15 +iw he ISO8859-8 +ja ja ISO8859-1 +kk kk PT154 +nl nl ISO8859-15 +no no ISO8859-1 +pl pl ISO8859-2 +pt pt ISO8859-15 +ro ro ISO8859-1 +ru ru KOI8-R +sk sk ISO8859-2 +sl sl ISO8859-2 +sv sv ISO8859-1 +tr tr ISO8859-9 +uk uk KOI8-U diff --git a/tools/tools/vt/keymaps/convert-INDEX.pl b/tools/tools/vt/keymaps/convert-INDEX.pl new file mode 100755 index 0000000..ec88fc3 --- /dev/null +++ b/tools/tools/vt/keymaps/convert-INDEX.pl @@ -0,0 +1,94 @@ +#!/usr/local/bin/perl +# $FreeBSD$ + +use Text::Iconv; +use Encode; +use strict; +use utf8; + +# directories and filenames +$0 =~ m:^(.*)/:; +my $dir_convtool = $1 || "."; + +my $dir_keymaps_syscons = "/usr/src/share/syscons/keymaps"; +my $dir_keymaps_config = "$dir_convtool"; + +my $dir_keymaps_vt = "/usr/src/share/vt/keymaps"; +my $dir_keymaps_output = "$dir_keymaps_vt/OUTPUT"; + +my $keymap_index = "$dir_keymaps_syscons/INDEX.keymaps"; + +my $language_map = "$dir_keymaps_config/LANG.map"; +my $keymapfile_map = "$dir_keymaps_config/KBDFILES.map"; + +# global variables +my %LANG_NEW; # index: lang_old +my %ENCODING; # index: lang_old, file_old +my %FILE_NEW; # index: file_old + +# subroutines +sub local_to_UCS_string +{ + my ($string, $old_enc) = @_; + my $converter = Text::Iconv->new($old_enc, "UTF-8"); + my $result = $converter->convert($string); + printf "!!! conversion failed for '$string' ($old_enc)\n" + unless $result; + return $result; +} + +sub lang_fixup { + my ($langlist) = @_; + my $result; + my $lang; + for $lang (split(/,/, $langlist)) { + $result .= "," + if $result; + $result .= $LANG_NEW{$lang}; + } + return $result; +} + +# main program +open LANGMAP, "<$language_map" + or die "$!"; +while (<LANGMAP>) { + next + if m/^#/; + my ($lang_old, $lang_new, $encoding) = split(" "); +# print "$lang_old|$lang_new|$encoding\n"; + $LANG_NEW{$lang_old} = $lang_new; + $ENCODING{$lang_old} = $encoding; + $ENCODING{$lang_new} = $encoding; +} +close LANGMAP; + +$FILE_NEW{"MENU"} = "MENU"; # dummy identity mapping +$FILE_NEW{"FONT"} = "FONT"; # dummy identity mapping +open FILEMAP, "<$keymapfile_map" + or die "$!"; +while (<FILEMAP>) { + next + if m/^#/; + my ($encoding, $file_old, $file_new) = split(" "); +# print "--> ", join("|", $encoding, $file_old, $file_new, $file_locale), "\n"; + if ($encoding and $file_old and $file_new) { + $ENCODING{$file_old} = $encoding; + $FILE_NEW{$file_old} = $file_new; + } +} +close FILEMAP; + +open MENUFILE, "<$keymap_index" + or die "$!"; +while (<MENUFILE>) { + if (m/^$/ or m/^#/) { + print; + } else { + my ($file_old, $langlist, $menutext) = split(/:/); + my ($lang) = split(/,/, $langlist); # first language in list selects encoding + $menutext = local_to_UCS_string($menutext, $ENCODING{$lang}) + unless $file_old eq "FONT"; + printf "%s:%s:%s", $FILE_NEW{$file_old}, lang_fixup($langlist), $menutext; + } +} diff --git a/tools/tools/vt/keymaps/convert-keymap.pl b/tools/tools/vt/keymaps/convert-keymap.pl new file mode 100755 index 0000000..778ae10 --- /dev/null +++ b/tools/tools/vt/keymaps/convert-keymap.pl @@ -0,0 +1,155 @@ +#!/usr/bin/perl +# $FreeBSD$ + +use Text::Iconv; +use Encode; +use strict; +use utf8; + +# command line parsing +die "Usage: $0 filename.kbd CHARSET [EURO]" + unless ($ARGV[1]); + +my $inputfile = shift; # first command argument +my $converter = Text::Iconv->new(shift, "UTF-8"); # second argument +my $use_euro; +my $use_yen; +my $current_char; +my $current_scancode; + +while (my $arg = shift) { + $use_euro = 1, next + if $arg eq "EURO"; + $use_yen = 1, next + if $arg eq "YEN"; + die "Unknown encoding option '$arg'\n"; +} + +# converter functions +sub local_to_UCS_string +{ + my ($string) = @_; + + return $converter->convert($string); +} + +sub prettyprint_token +{ + my ($ucs_char) = @_; + + return "'" . chr($ucs_char) . "'" + if 32 <= $ucs_char and $ucs_char <= 126; # print as ASCII if possible +# return sprintf "%d", $ucs_char; # <---- temporary decimal + return sprintf "0x%02x", $ucs_char + if $ucs_char <= 255; # print as hex number, else + return sprintf "0x%04x", $ucs_char; +} + +sub local_to_UCS_code +{ + my ($char) = @_; + + my $ucs_char = ord(Encode::decode("UTF-8", local_to_UCS_string($char))); + + $current_char = lc(chr($ucs_char)), print("SETCUR: $ucs_char\n") + if $current_char eq ""; + + $ucs_char = 0x20ac # replace with Euro character + if $ucs_char == 0xa4 and $use_euro and $current_char eq "e"; + + $ucs_char = 0xa5 # replace with Jap. Yen character on PC kbd + if $ucs_char == ord('\\') and $use_yen and $current_scancode == 125; + + $ucs_char = 0xa5 # replace with Jap. Yen character on PC98x1 kbd + if $ucs_char == ord('\\') and $use_yen and $current_scancode == 13; + + return prettyprint_token($ucs_char); +} + +sub malformed_to_UCS_code +{ + my ($char) = @_; + + return prettyprint_token(ord(Encode::decode("UTF-8", $char))); +} + +sub convert_token +{ + my ($C) = @_; + + return $1 + if $C =~ m/^([a-z][a-z0-9]*)$/; # key token + return local_to_UCS_code(chr($1)) + if $C =~ m/^(\d+)$/; # decimal number + return local_to_UCS_code(chr(hex($1))) + if $C =~ m/^0x([0-9a-f]+)$/i; # hex number + return local_to_UCS_code(chr(ord($1))) + if $C =~ m/^'(.)'$/; # character + return malformed_to_UCS_code($1) + if $C =~ m/^'(.+)'$/; # character + return "<?$C?>"; # uncovered case +} + +sub tokenize { # split on white space and parentheses (but not within token) + my ($line) = @_; + + $line =~ s/'\('/ _lpar_ /g; # prevent splitting of '(' + $line =~ s/'\)'/ _rpar_ /g; # prevent splitting of ')' + $line =~ s/'''/'_squote_'/g; # remove quoted single quotes from matches below + $line =~ s/([()])/ $1 /g; # insert blanks around remaining parentheses + my $matches; + do { + $matches = ($line =~ s/^([^']*)'([^']+)'/$1_squoteL_$2_squoteR_/g); + } while $matches; + $line =~ s/_squoteL_ _squoteR_/ _spc_ /g; # prevent splitting of ' ' + my @KEYTOKEN = split (" ", $line); + grep(s/_squote[LR]?_/'/g, @KEYTOKEN); + grep(s/_spc_/' '/, @KEYTOKEN); + grep(s/_lpar_/'('/, @KEYTOKEN); + grep(s/_rpar_/')'/, @KEYTOKEN); + return @KEYTOKEN; +} + +# main program +open FH, "<$inputfile"; +while (<FH>) { + if (m/^#/) { + print local_to_UCS_string($_); + } elsif (m/^\s*$/) { + print "\n"; + } else { + my @KEYTOKEN = tokenize($_); + my $at_bol = 1; + my $C; + foreach $C (@KEYTOKEN) { + if ($at_bol) { + $current_char = ""; + $current_scancode = -1; + if ($C =~ m/^\s*\d/) { # line begins with key code number + $current_scancode = $C; + printf " %03d ", $C; + } elsif ($C =~ m/^[a-z]/) { # line begins with accent name or paren + printf " %-4s ", $C; # accent name starts accent definition + } elsif ($C eq "(") { + printf "%17s", "( "; # paren continues accent definition + } else { + print "Unknown input line format: $_"; + } + $at_bol = 0; + } else { + if ($C =~ m/^([BCNO])$/) { + print " $1"; # special case: effect of Caps Lock/Num Lock + } elsif ($C eq "(") { + $current_char = ""; + print " ( "; + } elsif ($C eq ")") { + print " )"; + } else { + printf "%-6s ", convert_token($C); + } + } + } + print "\n"; + } +} +close FH; diff --git a/tools/tools/vt/keymaps/convert-keymaps.pl b/tools/tools/vt/keymaps/convert-keymaps.pl new file mode 100755 index 0000000..ea8fbc2 --- /dev/null +++ b/tools/tools/vt/keymaps/convert-keymaps.pl @@ -0,0 +1,100 @@ +#!/usr/local/bin/perl +# $FreeBSD$ + +use Text::Iconv; +use Encode; +use strict; +use utf8; + +# directories and filenames +$0 =~ m:^(.*)/:; +my $dir_convtool = $1 || "."; + +my $dir_keymaps_syscons = "/usr/src/share/syscons/keymaps"; +my $dir_keymaps_config = "$dir_convtool"; + +my $dir_keymaps_vt = "/usr/src/share/vt/keymaps"; +my $dir_keymaps_output = "$dir_keymaps_vt/OUTPUT"; + +my $keymap_index = "$dir_keymaps_syscons/INDEX.keymaps"; + +my $language_map = "$dir_keymaps_config/LANG.map"; +my $keymapfile_map = "$dir_keymaps_config/KBDFILES.map"; + +# global variables +my %LANG_NEW; # index: lang_old +my %ENCODING; # index: lang_old, file_old +my %FILE_NEW; # index: file_old + +# subroutines +sub local_to_UCS_string +{ + my ($string, $old_enc) = @_; + my $converter = Text::Iconv->new($old_enc, "UTF-8"); + my $result = $converter->convert($string); + printf "!!! conversion failed for '$string' ($old_enc)\n" + unless $result; + return $result; +} + +sub lang_fixup { + my ($langlist) = @_; + my $result; + my $lang; + for $lang (split(/,/, $langlist)) { + $result .= "," + if $result; + $result .= $LANG_NEW{$lang}; + } + return $result; +} + +# main program +open LANGMAP, "<$language_map" + or die "$!"; +while (<LANGMAP>) { + next + if m/^#/; + my ($lang_old, $lang_new, $encoding) = split(" "); +# print "$lang_old|$lang_new|$encoding\n"; + $LANG_NEW{$lang_old} = $lang_new; + $ENCODING{$lang_old} = $encoding; + $ENCODING{$lang_new} = $encoding; +} +close LANGMAP; + +$FILE_NEW{"MENU"} = "MENU"; # dummy identity mapping +$FILE_NEW{"FONT"} = "FONT"; # dummy identity mapping +open FILEMAP, "<$keymapfile_map" + or die "$!"; +while (<FILEMAP>) { + next + if m/^#/; + my ($encoding, $file_old, $file_new) = split(" "); +# print "--> ", join("|", $encoding, $file_old, $file_new, $file_locale), "\n"; + if ($encoding and $file_old and $file_new) { + $ENCODING{$file_old} = $encoding; + $FILE_NEW{$file_old} = $file_new; + } +} +close FILEMAP; + +my $kbdfile; +foreach $kbdfile (glob("$dir_keymaps_syscons/*.kbd")) { + my $basename; + ($basename = $kbdfile) =~ s:.*/::; + my ($encoding) = $ENCODING{$basename}; + $encoding =~ s/\+/ /g; # e.g. "ISO8859-1+EURO" -> "ISO8859-1 EURO" + my $outfile = $FILE_NEW{$basename}; + if ($encoding and $outfile) { + if (-r $kbdfile) { + print "converting from '$basename' ($encoding) to '$outfile' (UCS)\n"; + my $cmdline = "$dir_convtool/convert-keymap.pl $kbdfile $encoding > $dir_keymaps_output/$outfile"; + system "$cmdline"; + } else { + print "$kbdfile not found\n"; + } + } else { + print "Ignore '$basename': No encoding defined in KBDFILES.map\n"; + } +} diff --git a/usr.bin/clang/clang-tblgen/Makefile b/usr.bin/clang/clang-tblgen/Makefile index 34e7aeb..0f64ad3 100644 --- a/usr.bin/clang/clang-tblgen/Makefile +++ b/usr.bin/clang/clang-tblgen/Makefile @@ -19,6 +19,4 @@ SRCS= ClangASTNodesEmitter.cpp \ LIBDEPS=llvmtablegen \ llvmsupport -NO_PIE= yes - .include "../clang.prog.mk" diff --git a/usr.bin/clang/clang.prog.mk b/usr.bin/clang/clang.prog.mk index 1b4e126..538c55a 100644 --- a/usr.bin/clang/clang.prog.mk +++ b/usr.bin/clang/clang.prog.mk @@ -1,7 +1,5 @@ # $FreeBSD$ -NO_PIE= yes - LLVM_SRCS= ${.CURDIR}/../../../contrib/llvm .include "../../lib/clang/clang.build.mk" diff --git a/usr.bin/clang/tblgen/Makefile b/usr.bin/clang/tblgen/Makefile index 31fdc20..f06150e 100644 --- a/usr.bin/clang/tblgen/Makefile +++ b/usr.bin/clang/tblgen/Makefile @@ -42,6 +42,4 @@ SRCS= AsmMatcherEmitter.cpp \ LIBDEPS=llvmtablegen \ llvmsupport -NO_PIE= yes - .include "../clang.prog.mk" diff --git a/usr.bin/compile_et/Makefile b/usr.bin/compile_et/Makefile index 122d745..d7177b2 100644 --- a/usr.bin/compile_et/Makefile +++ b/usr.bin/compile_et/Makefile @@ -12,6 +12,4 @@ CFLAGS+=-I. -I${.CURDIR}/../../contrib/com_err WARNS?= 0 -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/usr.bin/elfdump/elfdump.c b/usr.bin/elfdump/elfdump.c index 49c2aae..bf9b718 100644 --- a/usr.bin/elfdump/elfdump.c +++ b/usr.bin/elfdump/elfdump.c @@ -213,7 +213,7 @@ d_tags(u_int64_t tag) case DT_PLTPADSZ: return "DT_PLTPADSZ"; case DT_MOVEENT: return "DT_MOVEENT"; case DT_MOVESZ: return "DT_MOVESZ"; - case 0x6ffffdfc: return "DT_FEATURE"; + case DT_FEATURE: return "DT_FEATURE"; case DT_POSFLAG_1: return "DT_POSFLAG_1"; case DT_SYMINSZ: return "DT_SYMINSZ"; case DT_SYMINENT : return "DT_SYMINENT (DT_VALRNGHI)"; @@ -221,11 +221,11 @@ d_tags(u_int64_t tag) case DT_GNU_HASH: return "DT_GNU_HASH"; case 0x6ffffef8: return "DT_GNU_CONFLICT"; case 0x6ffffef9: return "DT_GNU_LIBLIST"; - case 0x6ffffefa: return "DT_SUNW_CONFIG"; - case 0x6ffffefb: return "DT_SUNW_DEPAUDIT"; - case 0x6ffffefc: return "DT_SUNW_AUDIT"; - case 0x6ffffefd: return "DT_SUNW_PLTPAD"; - case 0x6ffffefe: return "DT_SUNW_MOVETAB"; + case DT_CONFIG: return "DT_CONFIG"; + case DT_DEPAUDIT: return "DT_DEPAUDIT"; + case DT_AUDIT: return "DT_AUDIT"; + case DT_PLTPAD: return "DT_PLTPAD"; + case DT_MOVETAB: return "DT_MOVETAB"; case DT_SYMINFO : return "DT_SYMINFO (DT_ADDRRNGHI)"; case DT_RELACOUNT: return "DT_RELACOUNT"; case DT_RELCOUNT: return "DT_RELCOUNT"; diff --git a/usr.bin/grep/util.c b/usr.bin/grep/util.c index 3ec12fa..f3cf05f 100644 --- a/usr.bin/grep/util.c +++ b/usr.bin/grep/util.c @@ -336,7 +336,7 @@ procline(struct str *l, int nottext) } /* One pass if we are not recording matches */ - if (!wflag && ((color == NULL && !oflag) || qflag || lflag)) + if (!wflag && ((color == NULL && !oflag) || qflag || lflag || Lflag)) break; if (st == (size_t)pmatch.rm_so) diff --git a/usr.bin/iscsictl/iscsictl.c b/usr.bin/iscsictl/iscsictl.c index 75d329f..383aeef 100644 --- a/usr.bin/iscsictl/iscsictl.c +++ b/usr.bin/iscsictl/iscsictl.c @@ -26,9 +26,11 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD$ */ +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + #include <sys/ioctl.h> #include <sys/param.h> #include <sys/linker.h> diff --git a/usr.bin/lock/lock.c b/usr.bin/lock/lock.c index acc0e29..8c12946 100644 --- a/usr.bin/lock/lock.c +++ b/usr.bin/lock/lock.c @@ -97,7 +97,7 @@ main(int argc, char **argv) char *ap, *cryptpw, *mypw, *ttynam, *tzn; char hostname[MAXHOSTNAMELEN], s[BUFSIZ], s1[BUFSIZ]; - openlog("lock", LOG_ODELAY, LOG_AUTH); + openlog("lock", 0, LOG_AUTH); sectimeout = TIMEOUT; pw = NULL; diff --git a/usr.bin/login/login.c b/usr.bin/login/login.c index 503002d..d1d9bbe 100644 --- a/usr.bin/login/login.c +++ b/usr.bin/login/login.c @@ -198,7 +198,7 @@ main(int argc, char *argv[]) (void)alarm(timeout); (void)setpriority(PRIO_PROCESS, 0, 0); - openlog("login", LOG_ODELAY, LOG_AUTH); + openlog("login", 0, LOG_AUTH); uid = getuid(); euid = geteuid(); diff --git a/usr.bin/mail/edit.c b/usr.bin/mail/edit.c index ad8aa53..f9e974d 100644 --- a/usr.bin/mail/edit.c +++ b/usr.bin/mail/edit.c @@ -81,7 +81,7 @@ edit1(int *msgvec, int type) /* * Deal with each message to be edited . . . */ - for (i = 0; msgvec[i] && i < msgCount; i++) { + for (i = 0; i < msgCount && msgvec[i]; i++) { sig_t sigint; if (i > 0) { diff --git a/usr.bin/mandoc/Makefile b/usr.bin/mandoc/Makefile index eb50978..ed88f4e 100644 --- a/usr.bin/mandoc/Makefile +++ b/usr.bin/mandoc/Makefile @@ -19,6 +19,4 @@ CFLAGS+= -DHAVE_CONFIG_H DPADD= ${LIBMANDOC} LDADD= ${LIBMANDOC} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/usr.bin/netstat/inet6.c b/usr.bin/netstat/inet6.c index 78383ac..768ccf2 100644 --- a/usr.bin/netstat/inet6.c +++ b/usr.bin/netstat/inet6.c @@ -540,13 +540,13 @@ ip6_ifstats(char *ifname) } strcpy(ifr.ifr_name, ifname); - printf("ip6 on %s:\n", ifr.ifr_name); - if (ioctl(s, SIOCGIFSTAT_IN6, (char *)&ifr) < 0) { - perror("Warning: ioctl(SIOCGIFSTAT_IN6)"); + if (errno != EPFNOSUPPORT) + perror("Warning: ioctl(SIOCGIFSTAT_IN6)"); goto end; } + printf("ip6 on %s:\n", ifr.ifr_name); p(ifs6_in_receive, "\t%ju total input datagram%s\n"); p(ifs6_in_hdrerr, "\t%ju datagram%s with invalid header received\n"); p(ifs6_in_toobig, "\t%ju datagram%s exceeded MTU received\n"); @@ -945,13 +945,13 @@ icmp6_ifstats(char *ifname) } strcpy(ifr.ifr_name, ifname); - printf("icmp6 on %s:\n", ifr.ifr_name); - if (ioctl(s, SIOCGIFSTAT_ICMP6, (char *)&ifr) < 0) { - perror("Warning: ioctl(SIOCGIFSTAT_ICMP6)"); + if (errno != EPFNOSUPPORT) + perror("Warning: ioctl(SIOCGIFSTAT_ICMP6)"); goto end; } + printf("icmp6 on %s:\n", ifr.ifr_name); p(ifs6_in_msg, "\t%ju total input message%s\n"); p(ifs6_in_error, "\t%ju total input error message%s\n"); p(ifs6_in_dstunreach, "\t%ju input destination unreachable error%s\n"); diff --git a/usr.bin/showmount/showmount.8 b/usr.bin/showmount/showmount.8 index f49df84..106b1a1 100644 --- a/usr.bin/showmount/showmount.8 +++ b/usr.bin/showmount/showmount.8 @@ -31,7 +31,7 @@ .\" @(#)showmount.8 8.3 (Berkeley) 3/29/95 .\" $FreeBSD$ .\" -.Dd March 29, 1995 +.Dd August 16, 2014 .Dt SHOWMOUNT 8 .Os .Sh NAME @@ -41,6 +41,7 @@ .Nm .Op Fl a | d .Op Fl e +.Op Fl 1 .Op Fl 3 .Op Ar host .Sh DESCRIPTION @@ -76,10 +77,10 @@ List directory paths of mount points instead of hosts. Show the .Ar host Ns 's exports list. +.It Fl 1 +Use mount protocol Version 1, compatible with legacy servers. .It Fl 3 -Use mount protocol Version 3, compatible with -.Tn NFS -Version 3. +Ignored for backwards compatibility. .El .Sh SEE ALSO .Xr mount 8 , diff --git a/usr.bin/showmount/showmount.c b/usr.bin/showmount/showmount.c index 2635250..d0da570 100644 --- a/usr.bin/showmount/showmount.c +++ b/usr.bin/showmount/showmount.c @@ -110,11 +110,11 @@ main(int argc, char **argv) { register struct exportslist *exp; register struct grouplist *grp; - register int rpcs = 0, mntvers = 1; + register int rpcs = 0, mntvers = 3; const char *host; int ch, estat; - while ((ch = getopt(argc, argv, "ade3")) != -1) + while ((ch = getopt(argc, argv, "ade13")) != -1) switch (ch) { case 'a': if (type == 0) { @@ -133,6 +133,9 @@ main(int argc, char **argv) case 'e': rpcs |= DOEXPORTS; break; + case '1': + mntvers = 1; + break; case '3': mntvers = 3; break; diff --git a/usr.bin/svn/svn/Makefile b/usr.bin/svn/svn/Makefile index d6944f1..796231f 100644 --- a/usr.bin/svn/svn/Makefile +++ b/usr.bin/svn/svn/Makefile @@ -6,8 +6,6 @@ PROG= svn${SVNLITE} -NO_PIE= yes - SRCS= add-cmd.c blame-cmd.c cat-cmd.c changelist-cmd.c checkout-cmd.c \ cl-conflicts.c cleanup-cmd.c commit-cmd.c conflict-callbacks.c \ copy-cmd.c delete-cmd.c deprecated.c diff-cmd.c export-cmd.c \ diff --git a/usr.bin/svn/svnadmin/Makefile b/usr.bin/svn/svnadmin/Makefile index c173d3b..3220cde 100644 --- a/usr.bin/svn/svnadmin/Makefile +++ b/usr.bin/svn/svnadmin/Makefile @@ -34,6 +34,4 @@ DPADD= ${LIBSVN_REPOS} ${LIBSVN_FS} ${LIBSVN_FS_FS} ${LIBSVN_FS_UTIL} \ ${LIBSVN_DELTA} ${LIBSVN_SUBR} ${LIBAPR_UTIL} \ ${LIBBSDXML} ${LIBAPR} ${LIBSQLITE} ${LIBZ} ${LIBCRYPT} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/usr.bin/svn/svndumpfilter/Makefile b/usr.bin/svn/svndumpfilter/Makefile index 6746735..864f376 100644 --- a/usr.bin/svn/svndumpfilter/Makefile +++ b/usr.bin/svn/svndumpfilter/Makefile @@ -34,6 +34,4 @@ DPADD= ${LIBSVN_REPOS} ${LIBSVN_FS} ${LIBSVN_FS_FS} ${LIBSVN_FS_UTIL} \ ${LIBSVN_DELTA} ${LIBSVN_SUBR} ${LIBAPR_UTIL} \ ${LIBBSDXML} ${LIBAPR} ${LIBSQLITE} ${LIBZ} ${LIBCRYPT} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/usr.bin/svn/svnlook/Makefile b/usr.bin/svn/svnlook/Makefile index 209b2f1..3d8b1a0 100644 --- a/usr.bin/svn/svnlook/Makefile +++ b/usr.bin/svn/svnlook/Makefile @@ -35,6 +35,4 @@ DPADD= ${LIBSVN_REPOS} ${LIBSVN_FS} ${LIBSVN_FS_FS} ${LIBSVN_FS_UTIL} \ ${LIBSVN_DELTA} ${LIBSVN_DIFF} ${LIBSVN_SUBR} ${LIBAPR_UTIL} \ ${LIBBSDXML} ${LIBAPR} ${LIBSQLITE} ${LIBZ} ${LIBCRYPT} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/usr.bin/svn/svnmucc/Makefile b/usr.bin/svn/svnmucc/Makefile index 34e706e..23a98e3 100644 --- a/usr.bin/svn/svnmucc/Makefile +++ b/usr.bin/svn/svnmucc/Makefile @@ -42,6 +42,4 @@ DPADD= ${LIBSVN_CLIENT} ${LIBSVN_RA} ${LIBSVN_RA_LOCAL} ${LIBSVN_RA_SVN} \ ${LIBAPR_UTIL} ${LIBBSDXML} ${LIBAPR} ${LIBSQLITE} ${LIBZ} \ ${LIBCRYPT} ${LIBMAGIC} ${LIBCRYPTO} ${LIBSSL} ${LIBPTHREAD} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/usr.bin/svn/svnrdump/Makefile b/usr.bin/svn/svnrdump/Makefile index 8a6a8fd..afeae00 100644 --- a/usr.bin/svn/svnrdump/Makefile +++ b/usr.bin/svn/svnrdump/Makefile @@ -45,6 +45,4 @@ DPADD= ${LIBSVN_CLIENT} ${LIBSVN_WC} ${LIBSVN_RA} ${LIBSVN_RA_LOCAL} \ ${LIBBSDXML} ${LIBAPR} ${LIBSQLITE} ${LIBZ} ${LIBCRYPT} ${LIBMAGIC} \ ${LIBCRYPTO} ${LIBSSL} ${LIBPTHREAD} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/usr.bin/svn/svnserve/Makefile b/usr.bin/svn/svnserve/Makefile index d21883c..f1fa314 100644 --- a/usr.bin/svn/svnserve/Makefile +++ b/usr.bin/svn/svnserve/Makefile @@ -41,6 +41,4 @@ DPADD= ${LIBSVN_RA} ${LIBSVN_RA_LOCAL} ${LIBSVN_RA_SVN} ${LIBSVN_RA_SERF} \ ${LIBBSDXML} ${LIBAPR} ${LIBSQLITE} ${LIBZ} ${LIBCRYPT} ${LIBMAGIC} \ ${LIBCRYPTO} ${LIBSSL} ${LIBPTHREAD} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/usr.bin/svn/svnsync/Makefile b/usr.bin/svn/svnsync/Makefile index db479c4..a8cd380 100644 --- a/usr.bin/svn/svnsync/Makefile +++ b/usr.bin/svn/svnsync/Makefile @@ -41,6 +41,4 @@ DPADD= ${LIBSVN_RA} ${LIBSVN_RA_LOCAL} ${LIBSVN_RA_SVN} ${LIBSVN_RA_SERF} \ ${LIBBSDXML} ${LIBAPR} ${LIBSQLITE} ${LIBZ} ${LIBCRYPT} ${LIBMAGIC} \ ${LIBCRYPTO} ${LIBSSL} ${LIBPTHREAD} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/usr.bin/svn/svnversion/Makefile b/usr.bin/svn/svnversion/Makefile index 54ce13c..ca28ec3 100644 --- a/usr.bin/svn/svnversion/Makefile +++ b/usr.bin/svn/svnversion/Makefile @@ -32,6 +32,4 @@ DPADD= ${LIBSVN_WC} ${LIBSVN_DELTA} ${LIBSVN_DIFF} ${LIBSVN_SUBR} \ ${LIBSERF} ${LIBAPR_UTIL} ${LIBBSDXML} ${LIBAPR} ${LIBSQLITE} \ ${LIBZ} ${LIBCRYPT} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/usr.bin/telnet/Makefile b/usr.bin/telnet/Makefile index a683f0a..b88f8e1 100644 --- a/usr.bin/telnet/Makefile +++ b/usr.bin/telnet/Makefile @@ -13,8 +13,6 @@ SRCS= commands.c main.c network.c ring.c sys_bsd.c \ CFLAGS+= -DKLUDGELINEMODE -DUSE_TERMIO -DENV_HACK -DOPIE \ -I${TELNETDIR} -I${TELNETDIR}/libtelnet/ -NO_PIE= yes - .if ${MK_INET6_SUPPORT} != "no" CFLAGS+= -DINET6 .endif diff --git a/usr.bin/vacation/Makefile b/usr.bin/vacation/Makefile index 4f8690c..056f576 100644 --- a/usr.bin/vacation/Makefile +++ b/usr.bin/vacation/Makefile @@ -32,8 +32,6 @@ DPADD+=${SENDMAIL_DPADD} LDADD+=${SENDMAIL_LDADD} LDFLAGS+=${SENDMAIL_LDFLAGS} -NO_PIE= yes - sm_os.h: ln -sf ${SENDMAIL_DIR}/include/sm/os/sm_os_freebsd.h sm_os.h diff --git a/usr.sbin/Makefile b/usr.sbin/Makefile index fa0c995..f4c51d2 100644 --- a/usr.sbin/Makefile +++ b/usr.sbin/Makefile @@ -5,6 +5,7 @@ SUBDIR= adduser \ arp \ + autofs \ binmiscctl \ bootparamd \ bsdconfig \ diff --git a/usr.sbin/amd/amd/Makefile b/usr.sbin/amd/amd/Makefile index fdcbd60..1fc41bf 100644 --- a/usr.sbin/amd/amd/Makefile +++ b/usr.sbin/amd/amd/Makefile @@ -24,8 +24,6 @@ SRCS+= ops_nullfs.c ops_pcfs.c ops_tfs.c ops_ufs.c ops_umapfs.c SRCS+= ops_unionfs.c opts.c readdir.c restart.c rpc_fwd.c sched.c SRCS+= srvr_amfs_auto.c srvr_nfs.c -NO_PIE= yes - CFLAGS+= -I${.CURDIR}/../../../contrib/amd/amd \ -I${DESTDIR}/usr/include/rpcsvc diff --git a/usr.sbin/amd/amq/Makefile b/usr.sbin/amd/amq/Makefile index 40257c3..74fc749 100644 --- a/usr.sbin/amd/amq/Makefile +++ b/usr.sbin/amd/amq/Makefile @@ -17,6 +17,4 @@ CFLAGS+= -I${.CURDIR}/../../../contrib/amd/amq DPADD= ${LIBAMU} LDADD= ${LIBAMU} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/usr.sbin/amd/fixmount/Makefile b/usr.sbin/amd/fixmount/Makefile index 1838fb2..7f96a45 100644 --- a/usr.sbin/amd/fixmount/Makefile +++ b/usr.sbin/amd/fixmount/Makefile @@ -18,6 +18,4 @@ SRCS+= checkmount_bsd44.c DPADD= ${LIBAMU} ${LIBRPCSVC} LDADD= ${LIBAMU} -lrpcsvc -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/usr.sbin/amd/fsinfo/Makefile b/usr.sbin/amd/fsinfo/Makefile index 83becb2..1695a46 100644 --- a/usr.sbin/amd/fsinfo/Makefile +++ b/usr.sbin/amd/fsinfo/Makefile @@ -13,8 +13,6 @@ SRCS= fsi_gram.y fsi_lex.l SRCS+= fsi_analyze.c fsi_dict.c fsi_util.c fsinfo.c wr_atab.c SRCS+= wr_bparam.c wr_dumpset.c wr_exportfs.c wr_fstab.c -NO_PIE= yes - CFLAGS+= -I${.CURDIR}/../../../contrib/amd/fsinfo DPADD= ${LIBAMU} diff --git a/usr.sbin/amd/hlfsd/Makefile b/usr.sbin/amd/hlfsd/Makefile index dca94da..5b863dd 100644 --- a/usr.sbin/amd/hlfsd/Makefile +++ b/usr.sbin/amd/hlfsd/Makefile @@ -16,6 +16,4 @@ CFLAGS+= -I${.CURDIR}/../../../contrib/amd/hlfsd DPADD= ${LIBAMU} LDADD= ${LIBAMU} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/usr.sbin/amd/mk-amd-map/Makefile b/usr.sbin/amd/mk-amd-map/Makefile index bed9e30..57fd6a5 100644 --- a/usr.sbin/amd/mk-amd-map/Makefile +++ b/usr.sbin/amd/mk-amd-map/Makefile @@ -13,6 +13,4 @@ MAN= mk-amd-map.8 DPADD= ${LIBAMU} LDADD= ${LIBAMU} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/usr.sbin/amd/pawd/Makefile b/usr.sbin/amd/pawd/Makefile index 612aced..c6bb1cc 100644 --- a/usr.sbin/amd/pawd/Makefile +++ b/usr.sbin/amd/pawd/Makefile @@ -17,6 +17,4 @@ CFLAGS+= -I${.CURDIR}/../../../contrib/amd/amq DPADD= ${LIBAMU} LDADD= ${LIBAMU} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/usr.sbin/amd/wire-test/Makefile b/usr.sbin/amd/wire-test/Makefile index f960768..a07e690 100644 --- a/usr.sbin/amd/wire-test/Makefile +++ b/usr.sbin/amd/wire-test/Makefile @@ -13,6 +13,4 @@ MAN= wire-test.8 DPADD= ${LIBAMU} LDADD= ${LIBAMU} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/usr.sbin/autofs/Makefile b/usr.sbin/autofs/Makefile new file mode 100644 index 0000000..fab6865 --- /dev/null +++ b/usr.sbin/autofs/Makefile @@ -0,0 +1,33 @@ +# $FreeBSD$ + +PROG= automountd +SRCS= automount.c +SRCS+= automountd.c +SRCS+= autounmountd.c +SRCS+= common.c +SRCS+= defined.c +SRCS+= getmntopts.c +SRCS+= log.c +SRCS+= popen.c +SRCS+= token.l + +CFLAGS+=-I${.CURDIR} +CFLAGS+=-I${.CURDIR}/../../sys/fs/autofs + +MAN= automount.8 automountd.8 autounmountd.8 auto_master.5 + +DPADD= ${LIBUTIL} +LDADD= -lutil + +# Needed for getmntopts.c +MOUNT= ${.CURDIR}/../../sbin/mount +CFLAGS+=-I${MOUNT} + +WARNS= 6 + +LINKS= ${BINDIR}/automountd ${BINDIR}/automount +LINKS+= ${BINDIR}/automountd ${BINDIR}/autounmountd + +.PATH: ${MOUNT} + +.include <bsd.prog.mk> diff --git a/usr.sbin/autofs/auto_master.5 b/usr.sbin/autofs/auto_master.5 new file mode 100644 index 0000000..69d6afe --- /dev/null +++ b/usr.sbin/autofs/auto_master.5 @@ -0,0 +1,276 @@ +.\" Copyright (c) 2014 The FreeBSD Foundation +.\" All rights reserved. +.\" +.\" This software was developed by Edward Tomasz Napierala under sponsorship +.\" from the FreeBSD Foundation. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $FreeBSD$ +.\" +.Dd August 23, 2014 +.Dt AUTO_MASTER 5 +.Os +.Sh NAME +.Nm auto_master +.Nd auto_master and map file format +.Sh DESCRIPTION +The +.Nm +configuration file is used by the +.Xr automount 8 +command. +Map files are read by the +.Xr automountd 8 +daemon. +.Sh AUTO_MASTER SYNTAX +The +.Nm +file consists of lines with two or three entries separated by whitespace +and terminated by newline character: +.Bd -literal -offset indent +.Pa mountpoint Pa map_name Op Ar -options +.Ed +.Pp +.Pa mountpoint +is either a fully specified path, or +.Li /- . +When +.Pa mountpoint +is a full path, +.Pa map_name +must reference an indirect map. +Otherwise, +.Pa map_name +must reference a direct map. +See +.Sx "MAP SYNTAX" below. +.Pp +.Pa map_name +specifies map to use. +If +.Pa map_name +begins with +.Li - , +it specifies a special map. +See +.Sx "MAP SYNTAX" +below. +If +.Pa map_name +is not a fully specified path +.Pq it does not start with Li / , +.Xr automountd 8 +will search for that name in +.Li /etc . +Otherwise it will use the path as given. +If the file indicated by +.Pa map_name +is executable, +.Xr automountd 8 +will assume it is an executable map. +See +.Sx "MAP SYNTAX" +below. +Otherwise, the file is opened and the contents parsed. +.Pp +.Pa -options +is an optional field that starts with +.Li - +and can contain generic filesystem mount options. +.Pp +The following example specifies that the /etc/auto_example indirect map +will be mounted on /example. +.Bd -literal -offset indent +/example auto_example +.Ed +.Sh MAP SYNTAX +Map files consist of lines with a number of entries separated by whitespace +and terminated by newline character: +.Bd -literal -offset indent +.Pa key Oo Ar -options Oc Oo Ar mountpoint Oo -options Oc Oc Ar location Op ... +.Ed +.Pp +In most cases, it can be simplified to: +.Bd -literal -offset indent +.Pa key Oo Ar -options Oc Ar location +.Ed +.Pp +.Pa key +is the path component used by +.Xr automountd 8 +to find the right map entry to use. +It is also used to form the final mountpoint. +.Pp +The +.Ar options +field, if present, must begin with +.Li - . +When mounting the filesystem, options supplied to +.Nm +and options specified in the map entry are concatenated together. +The special option +.Li fstype +is used to specify filesystem type. +It is not passed to the mount program as an option. +Instead, it is passed as argument to +.Cm "mount -t". +The special option +.Li nobrowse +is used to disable creation of top-level directories for special +and executable maps. +.Pp +The optional +.Pa mountpoint +field is used to specify multiple mount points +for a single key. +.Pp +The +.Ar location +field specifies the filesystem to be mounted. +To pass location that begins with +.Li / , +prefix it with colon. +For example, +.Li :/dev/cd0 . +.Pp +This example, when used with the +.Nm +example above, specifies that the NFS share +.Li 192.168.1.1:/share/example/x +will be mounted on +.Pa /example/x/ +when any process attempts to access that mountpoint, with +.Li intr +and +.Li nfsv4 +mount options: +.Bd -literal -offset indent +.Li x -intr,nfsv4 192.168.1.1:/share/example/x +.Ed +.Pp +Automatically mount the CD drive on access: +.Bd -literal -offset indent +.Li cd -intr,fstype=cd9660 :/dev/cd0 +.Ed +.Sh SPECIAL MAPS +Special maps have names beginning with +.Li - . +Supported special maps are: +.Pp +.Bl -tag -width "-hosts" -compact +.It Li -hosts +This map queries the remote NFS server and maps exported volumes. +It is traditionally mounted on +.Pa /net . +It enables access to files on a remote NFS server by accessing +.Pa /net/nfs-server-ip/share-name/ +directory, without the need for any further configuration. +.It Li -null +This map prevents the +.Xr automountd 8 +from mounting anything on the mountpoint. +.El +.Sh EXECUTABLE MAPS +If the map file specified in +.Nm +has execute bit set, the +.Xr automountd 8 +will execute it and parse the standard output instead of parsing +the file contents. +.Sh INDIRECT VERSUS DIRECT MAPS +Indirect maps are referred to in +.Nm +by entries with a fully qualified path as a mount point, and must contain only +relative paths as keys. +Direct maps are referred to in +.Nm +by entries with +.Li /- +as the mountpoint, and must contain only fully qualified paths as keys. +For indirect maps, the final mount point is determined by concatenating the +.Nm +mountpoint with the map entry key and optional map entry mountpoint. +For direct maps, the final mount point is determined by concatenating +the map entry key with the optional map entry mountpoint. +.Pp +The example above could be rewritten using direct map, by placing this in +.Nm : +.Bd -literal -offset indent +.Li /- auto_example +.Ed +.Pp +and this in +.Li /etc/auto_example +map file: +.Bd -literal -offset indent +.Li /example/x -intr,nfsv4 192.168.1.1:/share/example/x +.Li /example/cd -intr,fstype=cd9660 :/dev/cd0 +.Ed +.Sh DIRECTORY SERVICES +Both +.Nm +and maps may contain entries consisting of a plus sign and map name: +.Bd -literal -offset indent +.Li +auto_master +.Ed +.Pp +Those entries cause +.Xr automountd 8 +daemon to retrieve the named map from directory services (like LDAP) +and include it where the entry was. +.Pp +If the file containing the map referenced in +.Nm +is not found, the map will be retrieved from directory services instead. +.Pp +To retrieve entries from directory services, +.Xr automountd 8 +daemon runs +.Pa /etc/autofs/include , +which is usually a shell script, with map name as the only command line +parameter. +The script should output entries formatted according to +.Nm +or automounter map syntax to standard output. +An example script to use LDAP is included in +.Pa /etc/autofs/include_ldap . +It can be symlinked to +.Pa /etc/autofs/include . +.Sh FILES +.Bl -tag -width ".Pa /etc/auto_master" -compact +.It Pa /etc/auto_master +The default location of the +.Pa auto_master +file. +.El +.Sh SEE ALSO +.Xr autofs 5 , +.Xr automount 8 , +.Xr automountd 8 , +.Xr autounmountd 8 +.Sh AUTHORS +The +.Nm +configuration file functionality was developed by +.An Edward Tomasz Napierala Aq Mt trasz@FreeBSD.org +under sponsorship from the FreeBSD Foundation. diff --git a/usr.sbin/autofs/automount.8 b/usr.sbin/autofs/automount.8 new file mode 100644 index 0000000..2988c68 --- /dev/null +++ b/usr.sbin/autofs/automount.8 @@ -0,0 +1,107 @@ +.\" Copyright (c) 2014 The FreeBSD Foundation +.\" All rights reserved. +.\" +.\" This software was developed by Edward Tomasz Napierala under sponsorship +.\" from the FreeBSD Foundation. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $FreeBSD$ +.\" +.Dd April 20, 2014 +.Dt AUTOMOUNT 8 +.Os +.Sh NAME +.Nm automount +.Nd update autofs mounts +.Sh SYNOPSIS +.Nm +.Op Fl D Ar name=value +.Op Fl L +.Op Fl f +.Op Fl o Ar options +.Op Fl v +.Op Fl u +.Sh DESCRIPTION +When called without options, the +.Nm +command parses the +.Xr auto_master 5 +configuration file and any direct maps that it references, and mounts +or unmounts +.Xr autofs 4 +filesystems to match. +These options are available: +.Bl -tag -width ".Fl v" +.It Fl D +Define a variable. +It is only useful with +.Fl L . +.It Fl L +Do not mount or unmount anything. +Instead parse +.Xr auto_master 5 +and any direct maps, then print them to standard output. +When specified more than once, all the maps, including indirect ones, +will be parsed and shown. +This is useful when debugging configuration problems. +.It Fl f +Force unmount, to be used with +.Fl u . +.It Fl o +Specify mount options to be used along with the ones specified in the maps. +It is only useful with +.Fl L . +.It Fl u +Try to unmount filesystems mounted by +.Xr automountd 8 . +.Xr autofs 5 +mounts are not unmounted. +To unmount all +.Xr autofs +mounts, use +.Cm "umount -At autofs". +.It Fl v +Increase verbosity. +.El +.Sh EXIT STATUS +.Ex -std +.Sh EXAMPLES +Unmount all filesystems mounted by +.Xr automountd 8 : +.Dl Nm Fl u +.Sh SEE ALSO +.Xr auto_master 5 , +.Xr autofs 5 , +.Xr automountd 8 , +.Xr autounmountd 8 +.Sh HISTORY +The +.Nm +command appeared in +.Fx 10.1 . +.Sh AUTHORS +The +.Nm +was developed by +.An Edward Tomasz Napierala Aq Mt trasz@FreeBSD.org +under sponsorship from the FreeBSD Foundation. diff --git a/usr.sbin/autofs/automount.c b/usr.sbin/autofs/automount.c new file mode 100644 index 0000000..a956b08 --- /dev/null +++ b/usr.sbin/autofs/automount.c @@ -0,0 +1,347 @@ +/*- + * Copyright (c) 2014 The FreeBSD Foundation + * All rights reserved. + * + * This software was developed by Edward Tomasz Napierala under sponsorship + * from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + */ + +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + +#include <sys/types.h> +#include <sys/time.h> +#include <sys/ioctl.h> +#include <sys/param.h> +#include <sys/linker.h> +#include <sys/mount.h> +#include <sys/socket.h> +#include <sys/stat.h> +#include <sys/wait.h> +#include <sys/utsname.h> +#include <assert.h> +#include <ctype.h> +#include <errno.h> +#include <fcntl.h> +#include <libgen.h> +#include <netdb.h> +#include <signal.h> +#include <stdbool.h> +#include <stdint.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <unistd.h> + +#include <libutil.h> + +#include "common.h" +#include "mntopts.h" + +static int +unmount_by_statfs(const struct statfs *sb, bool force) +{ + char *fsid_str; + int error, ret, flags; + + ret = asprintf(&fsid_str, "FSID:%d:%d", + sb->f_fsid.val[0], sb->f_fsid.val[1]); + if (ret < 0) + log_err(1, "asprintf"); + + log_debugx("unmounting %s using %s", sb->f_mntonname, fsid_str); + + flags = MNT_BYFSID; + if (force) + flags |= MNT_FORCE; + error = unmount(fsid_str, flags); + free(fsid_str); + if (error != 0) + log_warn("cannot unmount %s", sb->f_mntonname); + + return (error); +} + +static const struct statfs * +find_statfs(const struct statfs *mntbuf, int nitems, const char *mountpoint) +{ + int i; + + for (i = 0; i < nitems; i++) { + if (strcmp(mntbuf[i].f_mntonname, mountpoint) == 0) + return (mntbuf + i); + } + + return (NULL); +} + +static void +mount_autofs(const char *from, const char *fspath, const char *options, + const char *prefix) +{ + struct iovec *iov = NULL; + char errmsg[255]; + int error, iovlen = 0; + + create_directory(fspath); + + log_debugx("mounting %s on %s, prefix \"%s\", options \"%s\"", + from, fspath, prefix, options); + memset(errmsg, 0, sizeof(errmsg)); + + build_iovec(&iov, &iovlen, "fstype", + __DECONST(void *, "autofs"), (size_t)-1); + build_iovec(&iov, &iovlen, "fspath", + __DECONST(void *, fspath), (size_t)-1); + build_iovec(&iov, &iovlen, "from", + __DECONST(void *, from), (size_t)-1); + build_iovec(&iov, &iovlen, "errmsg", + errmsg, sizeof(errmsg)); + + /* + * Append the options and mountpoint defined in auto_master(5); + * this way automountd(8) does not need to parse it. + */ + build_iovec(&iov, &iovlen, "master_options", + __DECONST(void *, options), (size_t)-1); + build_iovec(&iov, &iovlen, "master_prefix", + __DECONST(void *, prefix), (size_t)-1); + + error = nmount(iov, iovlen, 0); + if (error != 0) { + if (*errmsg != '\0') { + log_err(1, "cannot mount %s on %s: %s", + from, fspath, errmsg); + } else { + log_err(1, "cannot mount %s on %s", from, fspath); + } + } +} + +static void +mount_if_not_already(const struct node *n, const char *map, + const struct statfs *mntbuf, int nitems) +{ + const struct statfs *sb; + char *mountpoint; + char *from; + int ret; + + ret = asprintf(&from, "map %s", map); + if (ret < 0) + log_err(1, "asprintf"); + + mountpoint = node_path(n); + sb = find_statfs(mntbuf, nitems, mountpoint); + if (sb != NULL) { + if (strcmp(sb->f_fstypename, "autofs") != 0) { + log_debugx("unknown filesystem mounted " + "on %s; mounting", mountpoint); + /* + * XXX: Compare options and 'from', + * and update the mount if necessary. + */ + } else { + log_debugx("autofs already mounted " + "on %s", mountpoint); + free(from); + free(mountpoint); + return; + } + } else { + log_debugx("nothing mounted on %s; mounting", + mountpoint); + } + + mount_autofs(from, mountpoint, n->n_options, n->n_key); + free(from); + free(mountpoint); +} + +static void +mount_unmount(struct node *root) +{ + struct statfs *mntbuf; + struct node *n, *n2, *n3; + int i, nitems; + + nitems = getmntinfo(&mntbuf, MNT_WAIT); + if (nitems <= 0) + log_err(1, "getmntinfo"); + + log_debugx("unmounting stale autofs mounts"); + + for (i = 0; i < nitems; i++) { + if (strcmp(mntbuf[i].f_fstypename, "autofs") != 0) { + log_debugx("skipping %s, filesystem type is not autofs", + mntbuf[i].f_mntonname); + continue; + } + + n = node_find(root, mntbuf[i].f_mntonname); + if (n != NULL) { + log_debugx("leaving autofs mounted on %s", + mntbuf[i].f_mntonname); + continue; + } + + log_debugx("autofs mounted on %s not found " + "in new configuration; unmounting", mntbuf[i].f_mntonname); + unmount_by_statfs(&(mntbuf[i]), false); + } + + log_debugx("mounting new autofs mounts"); + + TAILQ_FOREACH(n, &root->n_children, n_next) { + if (!node_is_direct_map(n)) { + mount_if_not_already(n, n->n_map, mntbuf, nitems); + continue; + } + + TAILQ_FOREACH(n2, &n->n_children, n_next) { + TAILQ_FOREACH(n3, &n2->n_children, n_next) { + mount_if_not_already(n3, n->n_map, + mntbuf, nitems); + } + } + } +} + +static void +unmount_automounted(bool force) +{ + struct statfs *mntbuf; + int i, nitems; + + nitems = getmntinfo(&mntbuf, MNT_WAIT); + if (nitems <= 0) + log_err(1, "getmntinfo"); + + log_debugx("unmounting automounted filesystems"); + + for (i = 0; i < nitems; i++) { + if (strcmp(mntbuf[i].f_fstypename, "autofs") == 0) { + log_debugx("skipping %s, filesystem type is autofs", + mntbuf[i].f_mntonname); + continue; + } + + if ((mntbuf[i].f_flags & MNT_AUTOMOUNTED) == 0) { + log_debugx("skipping %s, not automounted", + mntbuf[i].f_mntonname); + continue; + } + + unmount_by_statfs(&(mntbuf[i]), force); + } +} + +static void +usage_automount(void) +{ + + fprintf(stderr, "usage: automount [-D name=value][-o opts][-Lfuv]\n"); + exit(1); +} + +int +main_automount(int argc, char **argv) +{ + struct node *root; + int ch, debug = 0, show_maps = 0; + char *options = NULL; + bool do_unmount = false, force_unmount = false; + + /* + * Note that in automount(8), the only purpose of variable + * handling is to aid in debugging maps (automount -L). + */ + defined_init(); + + while ((ch = getopt(argc, argv, "D:Lfo:uv")) != -1) { + switch (ch) { + case 'D': + defined_parse_and_add(optarg); + break; + case 'L': + show_maps++; + break; + case 'f': + force_unmount = true; + break; + case 'o': + if (options == NULL) { + options = checked_strdup(optarg); + } else { + options = + separated_concat(options, optarg, ','); + } + break; + case 'u': + do_unmount = true; + break; + case 'v': + debug++; + break; + case '?': + default: + usage_automount(); + } + } + argc -= optind; + if (argc != 0) + usage_automount(); + + if (force_unmount && !do_unmount) + usage_automount(); + + log_init(debug); + + if (do_unmount) { + unmount_automounted(force_unmount); + return (0); + } + + root = node_new_root(); + parse_master(root, AUTO_MASTER_PATH); + + if (show_maps) { + if (options != NULL) { + root->n_options = separated_concat(options, + root->n_options, ','); + } + if (show_maps > 1) { + node_expand_indirect_maps(root); + node_expand_ampersand(root, NULL); + } + node_expand_defined(root); + node_print(root); + return (0); + } + + mount_unmount(root); + + return (0); +} diff --git a/usr.sbin/autofs/automountd.8 b/usr.sbin/autofs/automountd.8 new file mode 100644 index 0000000..31fc8f2 --- /dev/null +++ b/usr.sbin/autofs/automountd.8 @@ -0,0 +1,103 @@ +.\" Copyright (c) 2014 The FreeBSD Foundation +.\" All rights reserved. +.\" +.\" This software was developed by Edward Tomasz Napierala under sponsorship +.\" from the FreeBSD Foundation. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $FreeBSD$ +.\" +.Dd April 20, 2014 +.Dt AUTOMOUNTD 8 +.Os +.Sh NAME +.Nm automountd +.Nd daemon handling autofs mount requests +.Sh SYNOPSIS +.Nm +.Op Fl D Ar name=value +.Op Fl i +.Op Fl m Ar maxproc +.Op Fl o Ar options +.Op Fl d +.Op Fl v +.Sh DESCRIPTION +The +.Nm +daemon is responsible for handling +.Xr autofs 5 +mount requests, parsing maps, +and mounting filesystems they specify. +On startup, +.Nm +forks into background and waits for kernel requests. +When a request is received, +.Nm +forks a child process. +The child process parses the appropriate map and mounts filesystems accordingly. +Then it signals the kernel to release blocked processes that were waiting +for the mount. +.Bl -tag -width ".Fl v" +.It Fl D +Define a variable. +.It Fl i +For indirect mounts, only create subdirectories if there are no wildcard +entries. +Without +.Fl i , +.Nm +creates all the subdirectories it can. +Users may not realize that the wildcard map entry makes it possible to access +directories that have not yet been created. +.It Fl m Ar maxproc +Limit the number of forked +.Nm +processes, and thus the number of mount requests being handled in parallel. +The default is 30. +.It Fl d +Debug mode: increase verbosity and do not daemonize. +.It Fl o Ar options +Specify mount options. +Options specified here ill be overridden by options entered in maps or +.Xr auto_master 5 . +.It Fl v +Increase verbosity. +.El +.Sh EXIT STATUS +.Ex -std +.Sh SEE ALSO +.Xr auto_master 5 , +.Xr autofs 5 , +.Xr automount 8 , +.Xr autounmountd 8 +.Sh HISTORY +The +.Nm +daemon appeared in +.Fx 10.1 . +.Sh AUTHORS +The +.Nm +was developed by +.An Edward Tomasz Napierala Aq Mt trasz@FreeBSD.org +under sponsorship from the FreeBSD Foundation. diff --git a/usr.sbin/autofs/automountd.c b/usr.sbin/autofs/automountd.c new file mode 100644 index 0000000..b511103 --- /dev/null +++ b/usr.sbin/autofs/automountd.c @@ -0,0 +1,527 @@ +/*- + * Copyright (c) 2014 The FreeBSD Foundation + * All rights reserved. + * + * This software was developed by Edward Tomasz Napierala under sponsorship + * from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + */ + +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + +#include <sys/types.h> +#include <sys/time.h> +#include <sys/ioctl.h> +#include <sys/param.h> +#include <sys/linker.h> +#include <sys/mount.h> +#include <sys/socket.h> +#include <sys/stat.h> +#include <sys/wait.h> +#include <sys/utsname.h> +#include <assert.h> +#include <ctype.h> +#include <errno.h> +#include <fcntl.h> +#include <libgen.h> +#include <netdb.h> +#include <signal.h> +#include <stdbool.h> +#include <stdint.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <unistd.h> + +#include <libutil.h> + +#include "autofs_ioctl.h" + +#include "common.h" + +#define AUTOMOUNTD_PIDFILE "/var/run/automountd.pid" + +static int nchildren = 0; +static int autofs_fd; +static int request_id; + +static void +done(int request_error) +{ + struct autofs_daemon_done add; + int error; + + memset(&add, 0, sizeof(add)); + add.add_id = request_id; + add.add_error = request_error; + + log_debugx("completing request %d with error %d", + request_id, request_error); + + error = ioctl(autofs_fd, AUTOFSDONE, &add); + if (error != 0) { + /* + * Do this instead of log_err() to avoid calling + * done() again with error, from atexit handler. + */ + log_warn("AUTOFSDONE"); + } + quick_exit(1); +} + +/* + * Remove "fstype=whatever" from optionsp and return the "whatever" part. + */ +static char * +pick_option(const char *option, char **optionsp) +{ + char *tofree, *pair, *newoptions; + char *picked = NULL; + bool first = true; + + tofree = *optionsp; + + newoptions = calloc(strlen(*optionsp) + 1, 1); + if (newoptions == NULL) + log_err(1, "calloc"); + + while ((pair = strsep(optionsp, ",")) != NULL) { + /* + * XXX: strncasecmp(3) perhaps? + */ + if (strncmp(pair, option, strlen(option)) == 0) { + picked = checked_strdup(pair + strlen(option)); + } else { + if (first == false) + strcat(newoptions, ","); + else + first = false; + strcat(newoptions, pair); + } + } + + free(tofree); + *optionsp = newoptions; + + return (picked); +} + +static void +create_subtree(const struct node *node, bool incomplete) +{ + const struct node *child; + char *path; + bool wildcard_found = false; + + /* + * Skip wildcard nodes. + */ + if (strcmp(node->n_key, "*") == 0) + return; + + path = node_path(node); + log_debugx("creating subtree at %s", path); + create_directory(path); + + if (incomplete) { + TAILQ_FOREACH(child, &node->n_children, n_next) { + if (strcmp(child->n_key, "*") == 0) { + wildcard_found = true; + break; + } + } + + if (wildcard_found) { + log_debugx("node %s contains wildcard entry; " + "not creating its subdirectories due to -d flag", + path); + free(path); + return; + } + } + + free(path); + + TAILQ_FOREACH(child, &node->n_children, n_next) + create_subtree(child, incomplete); +} + +static void +exit_callback(void) +{ + + done(EIO); +} + +static void +handle_request(const struct autofs_daemon_request *adr, char *cmdline_options, + bool incomplete_hierarchy) +{ + const char *map; + struct node *root, *parent, *node; + FILE *f; + char *options, *fstype, *nobrowse, *retrycnt, *tmp; + int error; + + log_debugx("got request %d: from %s, path %s, prefix \"%s\", " + "key \"%s\", options \"%s\"", adr->adr_id, adr->adr_from, + adr->adr_path, adr->adr_prefix, adr->adr_key, adr->adr_options); + + /* + * Try to notify the kernel about any problems. + */ + request_id = adr->adr_id; + atexit(exit_callback); + + if (strncmp(adr->adr_from, "map ", 4) != 0) { + log_errx(1, "invalid mountfrom \"%s\"; failing request", + adr->adr_from); + } + + map = adr->adr_from + 4; /* 4 for strlen("map "); */ + root = node_new_root(); + if (adr->adr_prefix[0] == '\0' || strcmp(adr->adr_prefix, "/") == 0) { + parent = root; + } else { + parent = node_new_map(root, checked_strdup(adr->adr_prefix), + checked_strdup(adr->adr_options), checked_strdup(map), + checked_strdup("[kernel request]"), lineno); + } + parse_map(parent, map, adr->adr_key[0] != '\0' ? adr->adr_key : NULL); + if (adr->adr_key[0] != '\0') + node_expand_wildcard(root, adr->adr_key); + node = node_find(root, adr->adr_path); + if (node == NULL) { + log_errx(1, "map %s does not contain key for \"%s\"; " + "failing mount", map, adr->adr_path); + } + + if (node->n_location == NULL) { + log_debugx("found node defined at %s:%d; not a mountpoint", + node->n_config_file, node->n_config_line); + + options = node_options(node); + + /* + * Prepend options passed via automountd(8) command line. + */ + if (cmdline_options != NULL) { + options = + separated_concat(cmdline_options, options, ','); + } + + nobrowse = pick_option("nobrowse", &options); + if (nobrowse != NULL && adr->adr_key[0] == '\0') { + log_debugx("skipping map %s due to \"nobrowse\" " + "option; exiting", map); + done(0); + + /* + * Exit without calling exit_callback(). + */ + quick_exit(0); + } + + /* + * Not a mountpoint; create directories in the autofs mount + * and complete the request. + */ + create_subtree(node, incomplete_hierarchy); + + if (incomplete_hierarchy && adr->adr_key[0] != '\0') { + /* + * We still need to create the single subdirectory + * user is trying to access. + */ + tmp = separated_concat(adr->adr_path, + adr->adr_key, '/'); + node = node_find(root, tmp); + if (node != NULL) + create_subtree(node, false); + } + + log_debugx("nothing to mount; exiting"); + done(0); + + /* + * Exit without calling exit_callback(). + */ + quick_exit(0); + } + + log_debugx("found node defined at %s:%d; it is a mountpoint", + node->n_config_file, node->n_config_line); + + node_expand_ampersand(node, + adr->adr_key[0] != '\0' ? adr->adr_key : NULL); + error = node_expand_defined(node); + if (error != 0) { + log_errx(1, "variable expansion failed for %s; " + "failing mount", adr->adr_path); + } + + options = node_options(node); + + /* + * Prepend options passed via automountd(8) command line. + */ + if (cmdline_options != NULL) + options = separated_concat(cmdline_options, options, ','); + + /* + * Append "automounted". + */ + options = separated_concat(options, "automounted", ','); + + /* + * Remove "nobrowse", mount(8) doesn't understand it. + */ + pick_option("nobrowse", &options); + + /* + * Figure out fstype. + */ + fstype = pick_option("fstype=", &options); + if (fstype == NULL) { + log_debugx("fstype not specified in options; " + "defaulting to \"nfs\""); + fstype = checked_strdup("nfs"); + } + + if (strcmp(fstype, "nfs") == 0) { + /* + * The mount_nfs(8) command defaults to retry undefinitely. + * We do not want that behaviour, because it leaves mount_nfs(8) + * instances and automountd(8) children hanging forever. + * Disable retries unless the option was passed explicitly. + */ + retrycnt = pick_option("retrycnt=", &options); + if (retrycnt == NULL) { + log_debugx("retrycnt not specified in options; " + "defaulting to 1"); + options = separated_concat(options, + separated_concat("retrycnt", "1", '='), ','); + } else { + options = separated_concat(options, + separated_concat("retrycnt", retrycnt, '='), ','); + } + } + + f = auto_popen("mount", "-t", fstype, "-o", options, + node->n_location, adr->adr_path, NULL); + assert(f != NULL); + error = auto_pclose(f); + if (error != 0) + log_errx(1, "mount failed"); + + log_debugx("mount done; exiting"); + done(0); + + /* + * Exit without calling exit_callback(). + */ + quick_exit(0); +} + +static int +wait_for_children(bool block) +{ + pid_t pid; + int status; + int num = 0; + + for (;;) { + /* + * If "block" is true, wait for at least one process. + */ + if (block && num == 0) + pid = wait4(-1, &status, 0, NULL); + else + pid = wait4(-1, &status, WNOHANG, NULL); + if (pid <= 0) + break; + if (WIFSIGNALED(status)) { + log_warnx("child process %d terminated with signal %d", + pid, WTERMSIG(status)); + } else if (WEXITSTATUS(status) != 0) { + log_warnx("child process %d terminated with exit status %d", + pid, WEXITSTATUS(status)); + } else { + log_debugx("child process %d terminated gracefully", pid); + } + num++; + } + + return (num); +} + +static void +usage_automountd(void) +{ + + fprintf(stderr, "usage: automountd [-D name=value][-m maxproc]" + "[-o opts][-Tidv]\n"); + exit(1); +} + +int +main_automountd(int argc, char **argv) +{ + struct pidfh *pidfh; + pid_t pid, otherpid; + const char *pidfile_path = AUTOMOUNTD_PIDFILE; + char *options = NULL; + struct autofs_daemon_request request; + int ch, debug = 0, error, maxproc = 30, retval, saved_errno; + bool dont_daemonize = false, incomplete_hierarchy = false; + + defined_init(); + + while ((ch = getopt(argc, argv, "D:Tdim:o:v")) != -1) { + switch (ch) { + case 'D': + defined_parse_and_add(optarg); + break; + case 'T': + /* + * For compatibility with other implementations, + * such as OS X. + */ + debug++; + break; + case 'd': + dont_daemonize = true; + debug++; + break; + case 'i': + incomplete_hierarchy = true; + break; + case 'm': + maxproc = atoi(optarg); + break; + case 'o': + if (options == NULL) { + options = checked_strdup(optarg); + } else { + options = + separated_concat(options, optarg, ','); + } + break; + case 'v': + debug++; + break; + case '?': + default: + usage_automountd(); + } + } + argc -= optind; + if (argc != 0) + usage_automountd(); + + log_init(debug); + + pidfh = pidfile_open(pidfile_path, 0600, &otherpid); + if (pidfh == NULL) { + if (errno == EEXIST) { + log_errx(1, "daemon already running, pid: %jd.", + (intmax_t)otherpid); + } + log_err(1, "cannot open or create pidfile \"%s\"", + pidfile_path); + } + + autofs_fd = open(AUTOFS_PATH, O_RDWR | O_CLOEXEC); + if (autofs_fd < 0 && errno == ENOENT) { + saved_errno = errno; + retval = kldload("autofs"); + if (retval != -1) + autofs_fd = open(AUTOFS_PATH, O_RDWR | O_CLOEXEC); + else + errno = saved_errno; + } + if (autofs_fd < 0) + log_err(1, "failed to open %s", AUTOFS_PATH); + + if (dont_daemonize == false) { + if (daemon(0, 0) == -1) { + log_warn("cannot daemonize"); + pidfile_remove(pidfh); + exit(1); + } + } else { + lesser_daemon(); + } + + pidfile_write(pidfh); + + for (;;) { + log_debugx("waiting for request from the kernel"); + + memset(&request, 0, sizeof(request)); + error = ioctl(autofs_fd, AUTOFSREQUEST, &request); + if (error != 0) { + if (errno == EINTR) { + nchildren -= wait_for_children(false); + assert(nchildren >= 0); + continue; + } + + log_err(1, "AUTOFSREQUEST"); + } + + if (dont_daemonize) { + log_debugx("not forking due to -d flag; " + "will exit after servicing a single request"); + } else { + nchildren -= wait_for_children(false); + assert(nchildren >= 0); + + while (maxproc > 0 && nchildren >= maxproc) { + log_debugx("maxproc limit of %d child processes hit; " + "waiting for child process to exit", maxproc); + nchildren -= wait_for_children(true); + assert(nchildren >= 0); + } + log_debugx("got request; forking child process #%d", + nchildren); + nchildren++; + + pid = fork(); + if (pid < 0) + log_err(1, "fork"); + if (pid > 0) + continue; + } + + pidfile_close(pidfh); + handle_request(&request, options, incomplete_hierarchy); + } + + pidfile_close(pidfh); + + return (0); +} + diff --git a/usr.sbin/autofs/autounmountd.8 b/usr.sbin/autofs/autounmountd.8 new file mode 100644 index 0000000..1b5d9a8 --- /dev/null +++ b/usr.sbin/autofs/autounmountd.8 @@ -0,0 +1,88 @@ +.\" Copyright (c) 2014 The FreeBSD Foundation +.\" All rights reserved. +.\" +.\" This software was developed by Edward Tomasz Napierala under sponsorship +.\" from the FreeBSD Foundation. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $FreeBSD$ +.\" +.Dd April 20, 2014 +.Dt AUTOUNMOUNTD 8 +.Os +.Sh NAME +.Nm autounmountd +.Nd daemon unmounting automounted filesystems +.Sh SYNOPSIS +.Nm +.Op Fl d +.Op Fl r time +.Op Fl t time +.Op Fl v +.Sh DESCRIPTION +The +.Nm +daemon is responsible for unmounting filesystems mounted by +.Xr automountd 8 . +On startup, +.Nm +retrieves a list of filesystems that have the +.Li automounted +mount option set. +The list is updated every time a filesystem is mounted or unmounted. +After a specified time passes, +.Nm +attempts to unmount a filesystem, retrying after some time if necessary. +.Pp +These options are available: +.Bl -tag -width ".Fl v" +.It Fl d +Debug mode: increase verbosity and do not daemonize. +.It Fl r +Number of seconds to wait before trying to unmount an expired filesystem +after a previous attempt failed, possibly due to filesystem being busy. +The default value is 600, or ten minutes. +.It Fl t +Number of seconds to wait before trying to unmount a filesystem. +The default value is 600, or ten minutes. +.It Fl v +Increase verbosity. +.El +.Sh EXIT STATUS +.Ex -std +.Sh SEE ALSO +.Xr auto_master 5 , +.Xr autofs 5 , +.Xr automount 8 , +.Xr automountd 8 +.Sh HISTORY +The +.Nm +daemon appeared in +.Fx 10.1 . +.Sh AUTHORS +The +.Nm +was developed by +.An Edward Tomasz Napierala Aq Mt trasz@FreeBSD.org +under sponsorship from the FreeBSD Foundation. diff --git a/usr.sbin/autofs/autounmountd.c b/usr.sbin/autofs/autounmountd.c new file mode 100644 index 0000000..0f52b66 --- /dev/null +++ b/usr.sbin/autofs/autounmountd.c @@ -0,0 +1,341 @@ +/*- + * Copyright (c) 2014 The FreeBSD Foundation + * All rights reserved. + * + * This software was developed by Edward Tomasz Napierala under sponsorship + * from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + */ + +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + +#include <sys/types.h> +#include <sys/event.h> +#include <sys/mount.h> +#include <sys/time.h> +#include <assert.h> +#include <errno.h> +#include <stdbool.h> +#include <stdint.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <unistd.h> +#include <libutil.h> + +#include "common.h" + +#define AUTOUNMOUNTD_PIDFILE "/var/run/autounmountd.pid" + +struct automounted_fs { + TAILQ_ENTRY(automounted_fs) af_next; + time_t af_mount_time; + bool af_mark; + fsid_t af_fsid; + char af_mountpoint[MNAMELEN]; +}; + +static TAILQ_HEAD(, automounted_fs) automounted; + +static struct automounted_fs * +automounted_find(fsid_t fsid) +{ + struct automounted_fs *af; + + TAILQ_FOREACH(af, &automounted, af_next) { + if (af->af_fsid.val[0] == fsid.val[0] && + af->af_fsid.val[1] == fsid.val[1]) + return (af); + } + + return (NULL); +} + +static struct automounted_fs * +automounted_add(fsid_t fsid, const char *mountpoint) +{ + struct automounted_fs *af; + + af = calloc(sizeof(*af), 1); + if (af == NULL) + log_err(1, "calloc"); + af->af_mount_time = time(NULL); + af->af_fsid = fsid; + strlcpy(af->af_mountpoint, mountpoint, sizeof(af->af_mountpoint)); + + TAILQ_INSERT_TAIL(&automounted, af, af_next); + + return (af); +} + +static void +automounted_remove(struct automounted_fs *af) +{ + + TAILQ_REMOVE(&automounted, af, af_next); + free(af); +} + +static void +refresh_automounted(void) +{ + struct automounted_fs *af, *tmpaf; + struct statfs *mntbuf; + int i, nitems; + + nitems = getmntinfo(&mntbuf, MNT_WAIT); + if (nitems <= 0) + log_err(1, "getmntinfo"); + + log_debugx("refreshing list of automounted filesystems"); + + TAILQ_FOREACH(af, &automounted, af_next) + af->af_mark = false; + + for (i = 0; i < nitems; i++) { + if (strcmp(mntbuf[i].f_fstypename, "autofs") == 0) { + log_debugx("skipping %s, filesystem type is autofs", + mntbuf[i].f_mntonname); + continue; + } + + if ((mntbuf[i].f_flags & MNT_AUTOMOUNTED) == 0) { + log_debugx("skipping %s, not automounted", + mntbuf[i].f_mntonname); + continue; + } + + af = automounted_find(mntbuf[i].f_fsid); + if (af == NULL) { + log_debugx("new automounted filesystem found on %s " + "(FSID:%d:%d)", mntbuf[i].f_mntonname, + mntbuf[i].f_fsid.val[0], mntbuf[i].f_fsid.val[1]); + af = automounted_add(mntbuf[i].f_fsid, + mntbuf[i].f_mntonname); + } else { + log_debugx("already known automounted filesystem " + "found on %s (FSID:%d:%d)", mntbuf[i].f_mntonname, + mntbuf[i].f_fsid.val[0], mntbuf[i].f_fsid.val[1]); + } + af->af_mark = true; + } + + TAILQ_FOREACH_SAFE(af, &automounted, af_next, tmpaf) { + if (af->af_mark) + continue; + log_debugx("lost filesystem mounted on %s (FSID:%d:%d)", + af->af_mountpoint, af->af_fsid.val[0], af->af_fsid.val[1]); + automounted_remove(af); + } +} + +static int +unmount_by_fsid(const fsid_t fsid, const char *mountpoint) +{ + char *fsid_str; + int error, ret; + + ret = asprintf(&fsid_str, "FSID:%d:%d", fsid.val[0], fsid.val[1]); + if (ret < 0) + log_err(1, "asprintf"); + + error = unmount(fsid_str, MNT_BYFSID); + if (error != 0) { + if (errno == EBUSY) { + log_debugx("cannot unmount %s (%s): %s", + mountpoint, fsid_str, strerror(errno)); + } else { + log_warn("cannot unmount %s (%s)", + mountpoint, fsid_str); + } + } + + free(fsid_str); + + return (error); +} + +static double +expire_automounted(double expiration_time) +{ + struct automounted_fs *af, *tmpaf; + time_t now; + double mounted_for, mounted_max = 0; + int error; + + now = time(NULL); + + log_debugx("expiring automounted filesystems"); + + TAILQ_FOREACH_SAFE(af, &automounted, af_next, tmpaf) { + mounted_for = difftime(now, af->af_mount_time); + + if (mounted_for < expiration_time) { + log_debugx("skipping %s (FSID:%d:%d), mounted " + "for %.0f seconds", af->af_mountpoint, + af->af_fsid.val[0], af->af_fsid.val[1], + mounted_for); + + if (mounted_for > mounted_max) + mounted_max = mounted_for; + + continue; + } + + log_debugx("filesystem mounted on %s (FSID:%d:%d), " + "was mounted for %.0f seconds; unmounting", + af->af_mountpoint, af->af_fsid.val[0], af->af_fsid.val[1], + mounted_for); + error = unmount_by_fsid(af->af_fsid, af->af_mountpoint); + if (error != 0) { + if (mounted_for > mounted_max) + mounted_max = mounted_for; + } + } + + return (mounted_max); +} + +static void +usage_autounmountd(void) +{ + + fprintf(stderr, "usage: autounmountd [-r time][-t time][-dv]\n"); + exit(1); +} + +static void +do_wait(int kq, double sleep_time) +{ + struct timespec timeout; + struct kevent unused; + int error; + + assert(sleep_time > 0); + timeout.tv_sec = sleep_time; + timeout.tv_nsec = 0; + + log_debugx("waiting for filesystem event for %.0f seconds", sleep_time); + error = kevent(kq, NULL, 0, &unused, 1, &timeout); + if (error < 0) + log_err(1, "kevent"); + + if (error == 0) + log_debugx("timeout reached"); + else + log_debugx("got filesystem event"); +} + +int +main_autounmountd(int argc, char **argv) +{ + struct kevent event; + struct pidfh *pidfh; + pid_t otherpid; + const char *pidfile_path = AUTOUNMOUNTD_PIDFILE; + int ch, debug = 0, error, kq; + double expiration_time = 600, retry_time = 600, mounted_max, sleep_time; + bool dont_daemonize = false; + + while ((ch = getopt(argc, argv, "dr:t:v")) != -1) { + switch (ch) { + case 'd': + dont_daemonize = true; + debug++; + break; + case 'r': + retry_time = atoi(optarg); + break; + case 't': + expiration_time = atoi(optarg); + break; + case 'v': + debug++; + break; + case '?': + default: + usage_autounmountd(); + } + } + argc -= optind; + if (argc != 0) + usage_autounmountd(); + + if (retry_time <= 0) + log_errx(1, "retry time must be greater than zero"); + if (expiration_time <= 0) + log_errx(1, "expiration time must be greater than zero"); + + log_init(debug); + + pidfh = pidfile_open(pidfile_path, 0600, &otherpid); + if (pidfh == NULL) { + if (errno == EEXIST) { + log_errx(1, "daemon already running, pid: %jd.", + (intmax_t)otherpid); + } + log_err(1, "cannot open or create pidfile \"%s\"", + pidfile_path); + } + + if (dont_daemonize == false) { + if (daemon(0, 0) == -1) { + log_warn("cannot daemonize"); + pidfile_remove(pidfh); + exit(1); + } + } + + pidfile_write(pidfh); + + TAILQ_INIT(&automounted); + + kq = kqueue(); + if (kq < 0) + log_err(1, "kqueue"); + + EV_SET(&event, 0, EVFILT_FS, EV_ADD | EV_CLEAR, 0, 0, NULL); + error = kevent(kq, &event, 1, NULL, 0, NULL); + if (error < 0) + log_err(1, "kevent"); + + for (;;) { + refresh_automounted(); + mounted_max = expire_automounted(expiration_time); + if (mounted_max < expiration_time) { + sleep_time = difftime(expiration_time, mounted_max); + log_debugx("some filesystems expire in %.0f seconds", + sleep_time); + } else { + sleep_time = retry_time; + log_debugx("some expired filesystems remain mounted, " + "will retry in %.0f seconds", sleep_time); + } + + do_wait(kq, sleep_time); + } + + return (0); +} diff --git a/usr.sbin/autofs/common.c b/usr.sbin/autofs/common.c new file mode 100644 index 0000000..9695db5 --- /dev/null +++ b/usr.sbin/autofs/common.c @@ -0,0 +1,1166 @@ +/*- + * Copyright (c) 2014 The FreeBSD Foundation + * All rights reserved. + * + * This software was developed by Edward Tomasz Napierala under sponsorship + * from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + */ + +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + +#include <sys/types.h> +#include <sys/time.h> +#include <sys/ioctl.h> +#include <sys/param.h> +#include <sys/linker.h> +#include <sys/mount.h> +#include <sys/socket.h> +#include <sys/stat.h> +#include <sys/wait.h> +#include <sys/utsname.h> +#include <assert.h> +#include <ctype.h> +#include <err.h> +#include <errno.h> +#include <fcntl.h> +#include <libgen.h> +#include <netdb.h> +#include <paths.h> +#include <signal.h> +#include <stdbool.h> +#include <stdint.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <unistd.h> + +#include <libutil.h> + +#include "autofs_ioctl.h" + +#include "common.h" + +extern FILE *yyin; +extern char *yytext; +extern int yylex(void); + +static void parse_master_yyin(struct node *root, const char *master); +static void parse_map_yyin(struct node *parent, const char *map, + const char *executable_key); + +char * +checked_strdup(const char *s) +{ + char *c; + + assert(s != NULL); + + c = strdup(s); + if (c == NULL) + log_err(1, "strdup"); + return (c); +} + +/* + * Take two pointers to strings, concatenate the contents with "/" in the + * middle, make the first pointer point to the result, the second pointer + * to NULL, and free the old strings. + * + * Concatenate pathnames, basically. + */ +static void +concat(char **p1, char **p2) +{ + int ret; + char *path; + + assert(p1 != NULL); + assert(p2 != NULL); + + if (*p1 == NULL) + *p1 = checked_strdup(""); + + if (*p2 == NULL) + *p2 = checked_strdup(""); + + ret = asprintf(&path, "%s/%s", *p1, *p2); + if (ret < 0) + log_err(1, "asprintf"); + + /* + * XXX + */ + //free(*p1); + //free(*p2); + + *p1 = path; + *p2 = NULL; +} + +/* + * Concatenate two strings, inserting separator between them, unless not needed. + * + * This function is very convenient to use when you do not care about freeing + * memory - which is okay here, because we are a short running process. + */ +char * +separated_concat(const char *s1, const char *s2, char separator) +{ + char *result; + int ret; + + assert(s1 != NULL); + assert(s2 != NULL); + + if (s1[0] == '\0' || s2[0] == '\0' || + s1[strlen(s1) - 1] == separator || s2[0] == separator) { + ret = asprintf(&result, "%s%s", s1, s2); + } else { + ret = asprintf(&result, "%s%c%s", s1, separator, s2); + } + if (ret < 0) + log_err(1, "asprintf"); + + //log_debugx("separated_concat: got %s and %s, returning %s", s1, s2, result); + + return (result); +} + +void +create_directory(const char *path) +{ + char *component, *copy, *tofree, *partial; + int error; + + assert(path[0] == '/'); + + /* + * +1 to skip the leading slash. + */ + copy = tofree = checked_strdup(path + 1); + + partial = NULL; + for (;;) { + component = strsep(©, "/"); + if (component == NULL) + break; + concat(&partial, &component); + //log_debugx("checking \"%s\" for existence", partial); + error = access(partial, F_OK); + if (error == 0) + continue; + if (errno != ENOENT) + log_err(1, "cannot access %s", partial); + log_debugx("directory %s does not exist, creating", + partial); + error = mkdir(partial, 0755); + if (error != 0) + log_err(1, "cannot create %s", partial); + } + + free(tofree); +} + +struct node * +node_new_root(void) +{ + struct node *n; + + n = calloc(1, sizeof(*n)); + if (n == NULL) + log_err(1, "calloc"); + // XXX + n->n_key = checked_strdup("/"); + n->n_options = checked_strdup(""); + + TAILQ_INIT(&n->n_children); + + return (n); +} + +struct node * +node_new(struct node *parent, char *key, char *options, char *location, + const char *config_file, int config_line) +{ + struct node *n; + + n = calloc(1, sizeof(*n)); + if (n == NULL) + log_err(1, "calloc"); + + TAILQ_INIT(&n->n_children); + assert(key != NULL); + n->n_key = key; + if (options != NULL) + n->n_options = options; + else + n->n_options = strdup(""); + n->n_location = location; + assert(config_file != NULL); + n->n_config_file = config_file; + assert(config_line >= 0); + n->n_config_line = config_line; + + assert(parent != NULL); + n->n_parent = parent; + TAILQ_INSERT_TAIL(&parent->n_children, n, n_next); + + return (n); +} + +struct node * +node_new_map(struct node *parent, char *key, char *options, char *map, + const char *config_file, int config_line) +{ + struct node *n; + + n = calloc(1, sizeof(*n)); + if (n == NULL) + log_err(1, "calloc"); + + TAILQ_INIT(&n->n_children); + assert(key != NULL); + n->n_key = key; + if (options != NULL) + n->n_options = options; + else + n->n_options = strdup(""); + n->n_map = map; + assert(config_file != NULL); + n->n_config_file = config_file; + assert(config_line >= 0); + n->n_config_line = config_line; + + assert(parent != NULL); + n->n_parent = parent; + TAILQ_INSERT_TAIL(&parent->n_children, n, n_next); + + return (n); +} + +static struct node * +node_duplicate(const struct node *o, struct node *parent) +{ + const struct node *child; + struct node *n; + + if (parent == NULL) + parent = o->n_parent; + + n = node_new(parent, o->n_key, o->n_options, o->n_location, + o->n_config_file, o->n_config_line); + + TAILQ_FOREACH(child, &o->n_children, n_next) + node_duplicate(child, n); + + return (n); +} + +static void +node_delete(struct node *n) +{ + struct node *child, *tmp; + + assert (n != NULL); + + TAILQ_FOREACH_SAFE(child, &n->n_children, n_next, tmp) + node_delete(child); + + if (n->n_parent != NULL) + TAILQ_REMOVE(&n->n_parent->n_children, n, n_next); + + free(n); +} + +/* + * Move (reparent) node 'n' to make it sibling of 'previous', placed + * just after it. + */ +static void +node_move_after(struct node *n, struct node *previous) +{ + + TAILQ_REMOVE(&n->n_parent->n_children, n, n_next); + n->n_parent = previous->n_parent; + TAILQ_INSERT_AFTER(&previous->n_parent->n_children, previous, n, n_next); +} + +static void +node_expand_includes(struct node *root, bool is_master) +{ + struct node *n, *n2, *tmp, *tmp2, *tmproot; + int error; + + TAILQ_FOREACH_SAFE(n, &root->n_children, n_next, tmp) { + if (n->n_key[0] != '+') + continue; + + error = access(AUTO_INCLUDE_PATH, F_OK); + if (error != 0) { + log_errx(1, "directory services not configured; " + "%s does not exist", AUTO_INCLUDE_PATH); + } + + /* + * "+1" to skip leading "+". + */ + yyin = auto_popen(AUTO_INCLUDE_PATH, n->n_key + 1, NULL); + assert(yyin != NULL); + + tmproot = node_new_root(); + if (is_master) + parse_master_yyin(tmproot, n->n_key); + else + parse_map_yyin(tmproot, n->n_key, NULL); + + error = auto_pclose(yyin); + yyin = NULL; + if (error != 0) { + log_errx(1, "failed to handle include \"%s\"", + n->n_key); + } + + /* + * Entries to be included are now in tmproot. We need to merge + * them with the rest, preserving their place and ordering. + */ + TAILQ_FOREACH_REVERSE_SAFE(n2, + &tmproot->n_children, nodehead, n_next, tmp2) { + node_move_after(n2, n); + } + + node_delete(n); + node_delete(tmproot); + } +} + +static char * +expand_ampersand(char *string, const char *key) +{ + char c, *expanded; + int i, ret, before_len = 0; + bool backslashed = false; + + assert(key[0] != '\0'); + + expanded = checked_strdup(string); + + for (i = 0; string[i] != '\0'; i++) { + c = string[i]; + if (c == '\\' && backslashed == false) { + backslashed = true; + continue; + } + if (backslashed) { + backslashed = false; + continue; + } + backslashed = false; + if (c != '&') + continue; + + /* + * The 'before_len' variable contains the number + * of characters before the '&'. + */ + before_len = i; + //assert(i + 1 < (int)strlen(string)); + + ret = asprintf(&expanded, "%.*s%s%s", + before_len, string, key, string + before_len + 1); + if (ret < 0) + log_err(1, "asprintf"); + + //log_debugx("\"%s\" expanded with key \"%s\" to \"%s\"", + // string, key, expanded); + + /* + * Figure out where to start searching for next variable. + */ + string = expanded; + i = before_len + strlen(key); + backslashed = false; + //assert(i < (int)strlen(string)); + } + + return (expanded); +} + +/* + * Expand "&" in n_location. If the key is NULL, try to use + * key from map entries themselves. Keep in mind that maps + * consist of tho levels of node structures, the key is one + * level up. + * + * Variant with NULL key is for "automount -LL". + */ +void +node_expand_ampersand(struct node *n, const char *key) +{ + struct node *child; + + if (n->n_location != NULL) { + if (key == NULL) { + if (n->n_parent != NULL && + strcmp(n->n_parent->n_key, "*") != 0) { + n->n_location = expand_ampersand(n->n_location, + n->n_parent->n_key); + } + } else { + n->n_location = expand_ampersand(n->n_location, key); + } + } + + TAILQ_FOREACH(child, &n->n_children, n_next) + node_expand_ampersand(child, key); +} + +/* + * Expand "*" in n_key. + */ +void +node_expand_wildcard(struct node *n, const char *key) +{ + struct node *child, *expanded; + + assert(key != NULL); + + if (strcmp(n->n_key, "*") == 0) { + expanded = node_duplicate(n, NULL); + expanded->n_key = checked_strdup(key); + node_move_after(expanded, n); + } + + TAILQ_FOREACH(child, &n->n_children, n_next) + node_expand_wildcard(child, key); +} + +int +node_expand_defined(struct node *n) +{ + struct node *child; + int error, cumulated_error = 0; + + if (n->n_location != NULL) { + n->n_location = defined_expand(n->n_location); + if (n->n_location == NULL) { + log_warnx("failed to expand location for %s", + node_path(n)); + return (EINVAL); + } + } + + TAILQ_FOREACH(child, &n->n_children, n_next) { + error = node_expand_defined(child); + if (error != 0 && cumulated_error == 0) + cumulated_error = error; + } + + return (cumulated_error); +} + +bool +node_is_direct_map(const struct node *n) +{ + + for (;;) { + assert(n->n_parent != NULL); + if (n->n_parent->n_parent == NULL) + break; + n = n->n_parent; + } + + assert(n->n_key != NULL); + if (strcmp(n->n_key, "/-") != 0) + return (false); + + return (true); +} + +static void +node_expand_maps(struct node *n, bool indirect) +{ + struct node *child, *tmp; + + TAILQ_FOREACH_SAFE(child, &n->n_children, n_next, tmp) { + if (node_is_direct_map(child)) { + if (indirect) + continue; + } else { + if (indirect == false) + continue; + } + + /* + * This is the first-level map node; the one that contains + * the key and subnodes with mountpoints and actual map names. + */ + if (child->n_map == NULL) + continue; + + if (indirect) { + log_debugx("map \"%s\" is an indirect map, parsing", + child->n_map); + } else { + log_debugx("map \"%s\" is a direct map, parsing", + child->n_map); + } + parse_map(child, child->n_map, NULL); + } +} + +static void +node_expand_direct_maps(struct node *n) +{ + + node_expand_maps(n, false); +} + +void +node_expand_indirect_maps(struct node *n) +{ + + node_expand_maps(n, true); +} + +static char * +node_path_x(const struct node *n, char *x) +{ + char *path; + size_t len; + + if (n->n_parent == NULL) + return (x); + + /* + * Return "/-" for direct maps only if we were asked for path + * to the "/-" node itself, not to any of its subnodes. + */ + if (n->n_parent->n_parent == NULL && + strcmp(n->n_key, "/-") == 0 && + x[0] != '\0') { + return (x); + } + + path = separated_concat(n->n_key, x, '/'); + free(x); + + /* + * Strip trailing slash. + */ + len = strlen(path); + assert(len > 0); + if (path[len - 1] == '/') + path[len - 1] = '\0'; + + return (node_path_x(n->n_parent, path)); +} + +/* + * Return full path for node, consisting of concatenated + * paths of node itself and all its parents, up to the root. + */ +char * +node_path(const struct node *n) +{ + + return (node_path_x(n, checked_strdup(""))); +} + +static char * +node_options_x(const struct node *n, char *x) +{ + char *options; + + options = separated_concat(x, n->n_options, ','); + if (n->n_parent == NULL) + return (options); + + return (node_options_x(n->n_parent, options)); +} + +/* + * Return options for node, consisting of concatenated + * options from the node itself and all its parents, + * up to the root. + */ +char * +node_options(const struct node *n) +{ + + return (node_options_x(n, checked_strdup(""))); +} + +static void +node_print_indent(const struct node *n, int indent) +{ + const struct node *child, *first_child; + char *path, *options; + + path = node_path(n); + options = node_options(n); + + /* + * Do not show both parent and child node if they have the same + * mountpoint; only show the child node. This means the typical, + * "key location", map entries are shown in a single line; + * the "key mountpoint1 location2 mountpoint2 location2" entries + * take multiple lines. + */ + first_child = TAILQ_FIRST(&n->n_children); + if (first_child == NULL || TAILQ_NEXT(first_child, n_next) != NULL || + strcmp(path, node_path(first_child)) != 0) { + assert(n->n_location == NULL || n->n_map == NULL); + printf("%*.s%-*s %s%-*s %-*s # %s map %s at %s:%d\n", + indent, "", + 25 - indent, + path, + options[0] != '\0' ? "-" : " ", + 20, + options[0] != '\0' ? options : "", + 20, + n->n_location != NULL ? n->n_location : n->n_map != NULL ? n->n_map : "", + node_is_direct_map(n) ? "direct" : "indirect", + indent == 0 ? "referenced" : "defined", + n->n_config_file, n->n_config_line); + } + + free(path); + free(options); + + TAILQ_FOREACH(child, &n->n_children, n_next) + node_print_indent(child, indent + 2); +} + +void +node_print(const struct node *n) +{ + const struct node *child; + + TAILQ_FOREACH(child, &n->n_children, n_next) + node_print_indent(child, 0); +} + +struct node * +node_find(struct node *node, const char *path) +{ + struct node *child, *found; + char *tmp; + + //log_debugx("looking up %s in %s", path, node->n_key); + + tmp = node_path(node); + if (strncmp(tmp, path, strlen(tmp)) != 0) { + free(tmp); + return (NULL); + } + free(tmp); + + TAILQ_FOREACH(child, &node->n_children, n_next) { + found = node_find(child, path); + if (found != NULL) + return (found); + } + + return (node); +} + +/* + * Canonical form of a map entry looks like this: + * + * key [-options] [ [/mountpoint] [-options2] location ... ] + * + * Entries for executable maps are slightly different, as they + * lack the 'key' field and are always single-line; the key field + * for those maps is taken from 'executable_key' argument. + * + * We parse it in such a way that a map always has two levels - first + * for key, and the second, for the mountpoint. + */ +static void +parse_map_yyin(struct node *parent, const char *map, const char *executable_key) +{ + char *key = NULL, *options = NULL, *mountpoint = NULL, + *options2 = NULL, *location = NULL; + int ret; + struct node *node; + + lineno = 1; + + if (executable_key != NULL) + key = checked_strdup(executable_key); + + for (;;) { + ret = yylex(); + if (ret == 0 || ret == NEWLINE) { + /* + * In case of executable map, the key is always + * non-NULL, even if the map is empty. So, make sure + * we don't fail empty maps here. + */ + if ((key != NULL && executable_key == NULL) || + options != NULL) { + log_errx(1, "truncated entry at %s, line %d", + map, lineno); + } + if (ret == 0 || executable_key != NULL) { + /* + * End of file. + */ + break; + } else { + key = options = NULL; + continue; + } + } + if (key == NULL) { + key = checked_strdup(yytext); + if (key[0] == '+') { + node_new(parent, key, NULL, NULL, map, lineno); + key = options = NULL; + continue; + } + continue; + } else if (yytext[0] == '-') { + if (options != NULL) { + log_errx(1, "duplicated options at %s, line %d", + map, lineno); + } + /* + * +1 to skip leading "-". + */ + options = checked_strdup(yytext + 1); + continue; + } + + /* + * We cannot properly handle a situation where the map key + * is "/". Ignore such entries. + * + * XXX: According to Piete Brooks, Linux automounter uses + * "/" as a wildcard character in LDAP maps. Perhaps + * we should work around this braindamage by substituting + * "*" for "/"? + */ + if (strcmp(key, "/") == 0) { + log_warnx("nonsensical map key \"/\" at %s, line %d; " + "ignoring map entry ", map, lineno); + + /* + * Skip the rest of the entry. + */ + do { + ret = yylex(); + } while (ret != 0 && ret != NEWLINE); + + key = options = NULL; + continue; + } + + //log_debugx("adding map node, %s", key); + node = node_new(parent, key, options, NULL, map, lineno); + key = options = NULL; + + for (;;) { + if (yytext[0] == '/') { + if (mountpoint != NULL) { + log_errx(1, "duplicated mountpoint " + "in %s, line %d", map, lineno); + } + if (options2 != NULL || location != NULL) { + log_errx(1, "mountpoint out of order " + "in %s, line %d", map, lineno); + } + mountpoint = checked_strdup(yytext); + goto again; + } + + if (yytext[0] == '-') { + if (options2 != NULL) { + log_errx(1, "duplicated options " + "in %s, line %d", map, lineno); + } + if (location != NULL) { + log_errx(1, "options out of order " + "in %s, line %d", map, lineno); + } + options2 = checked_strdup(yytext + 1); + goto again; + } + + if (location != NULL) { + log_errx(1, "too many arguments " + "in %s, line %d", map, lineno); + } + + /* + * If location field starts with colon, e.g. ":/dev/cd0", + * then strip it. + */ + if (yytext[0] == ':') { + location = checked_strdup(yytext + 1); + if (location[0] == '\0') { + log_errx(1, "empty location in %s, " + "line %d", map, lineno); + } + } else { + location = checked_strdup(yytext); + } + + if (mountpoint == NULL) + mountpoint = checked_strdup("/"); + if (options2 == NULL) + options2 = checked_strdup(""); + +#if 0 + log_debugx("adding map node, %s %s %s", + mountpoint, options2, location); +#endif + node_new(node, mountpoint, options2, location, + map, lineno); + mountpoint = options2 = location = NULL; +again: + ret = yylex(); + if (ret == 0 || ret == NEWLINE) { + if (mountpoint != NULL || options2 != NULL || + location != NULL) { + log_errx(1, "truncated entry " + "in %s, line %d", map, lineno); + } + break; + } + } + } +} + +/* + * Parse output of a special map called without argument. This is just + * a list of keys. + */ +static void +parse_map_keys_yyin(struct node *parent, const char *map) +{ + char *key = NULL; + int ret; + + lineno = 1; + + for (;;) { + ret = yylex(); + + if (ret == NEWLINE) + continue; + + if (ret == 0) { + /* + * End of file. + */ + break; + } + + key = checked_strdup(yytext); + node_new(parent, key, NULL, NULL, map, lineno); + } +} + +static bool +file_is_executable(const char *path) +{ + struct stat sb; + int error; + + error = stat(path, &sb); + if (error != 0) + log_err(1, "cannot stat %s", path); + if ((sb.st_mode & S_IXUSR) || (sb.st_mode & S_IXGRP) || + (sb.st_mode & S_IXOTH)) + return (true); + return (false); +} + +/* + * Parse a special map, e.g. "-hosts". + */ +static void +parse_special_map(struct node *parent, const char *map, const char *key) +{ + char *path; + int error, ret; + + assert(map[0] == '-'); + + /* + * +1 to skip leading "-" in map name. + */ + ret = asprintf(&path, "%s/special_%s", AUTO_SPECIAL_PREFIX, map + 1); + if (ret < 0) + log_err(1, "asprintf"); + + yyin = auto_popen(path, key, NULL); + assert(yyin != NULL); + + if (key == NULL) { + parse_map_keys_yyin(parent, map); + } else { + parse_map_yyin(parent, map, key); + } + + error = auto_pclose(yyin); + yyin = NULL; + if (error != 0) + log_errx(1, "failed to handle special map \"%s\"", map); + + node_expand_includes(parent, false); + node_expand_direct_maps(parent); + + free(path); +} + +/* + * Retrieve and parse map from directory services, e.g. LDAP. + * Note that it is different from executable maps, in that + * the include script outputs the whole map to standard output + * (as opposed to executable maps that only output a single + * entry, without the key), and it takes the map name as an + * argument, instead of key. + */ +static void +parse_included_map(struct node *parent, const char *map) +{ + int error; + + assert(map[0] != '-'); + assert(map[0] != '/'); + + error = access(AUTO_INCLUDE_PATH, F_OK); + if (error != 0) { + log_errx(1, "directory services not configured;" + " %s does not exist", AUTO_INCLUDE_PATH); + } + + yyin = auto_popen(AUTO_INCLUDE_PATH, map, NULL); + assert(yyin != NULL); + + parse_map_yyin(parent, map, NULL); + + error = auto_pclose(yyin); + yyin = NULL; + if (error != 0) + log_errx(1, "failed to handle remote map \"%s\"", map); + + node_expand_includes(parent, false); + node_expand_direct_maps(parent); +} + +void +parse_map(struct node *parent, const char *map, const char *key) +{ + char *path = NULL; + int error, ret; + bool executable; + + assert(map != NULL); + assert(map[0] != '\0'); + + log_debugx("parsing map \"%s\"", map); + + if (map[0] == '-') + return (parse_special_map(parent, map, key)); + + if (map[0] == '/') { + path = checked_strdup(map); + } else { + ret = asprintf(&path, "%s/%s", AUTO_MAP_PREFIX, map); + if (ret < 0) + log_err(1, "asprintf"); + log_debugx("map \"%s\" maps to \"%s\"", map, path); + + /* + * See if the file exists. If not, try to obtain the map + * from directory services. + */ + error = access(path, F_OK); + if (error != 0) { + log_debugx("map file \"%s\" does not exist; falling " + "back to directory services", path); + return (parse_included_map(parent, map)); + } + } + + executable = file_is_executable(path); + + if (executable) { + log_debugx("map \"%s\" is executable", map); + + if (key != NULL) { + yyin = auto_popen(path, key, NULL); + } else { + yyin = auto_popen(path, NULL); + } + assert(yyin != NULL); + } else { + yyin = fopen(path, "r"); + if (yyin == NULL) + log_err(1, "unable to open \"%s\"", path); + } + + free(path); + path = NULL; + + parse_map_yyin(parent, map, executable ? key : NULL); + + if (executable) { + error = auto_pclose(yyin); + yyin = NULL; + if (error != 0) { + log_errx(1, "failed to handle executable map \"%s\"", + map); + } + } else { + fclose(yyin); + } + yyin = NULL; + + log_debugx("done parsing map \"%s\"", map); + + node_expand_includes(parent, false); + node_expand_direct_maps(parent); +} + +static void +parse_master_yyin(struct node *root, const char *master) +{ + char *mountpoint = NULL, *map = NULL, *options = NULL; + int ret; + + /* + * XXX: 1 gives incorrect values; wtf? + */ + lineno = 0; + + for (;;) { + ret = yylex(); + if (ret == 0 || ret == NEWLINE) { + if (mountpoint != NULL) { + //log_debugx("adding map for %s", mountpoint); + node_new_map(root, mountpoint, options, map, + master, lineno); + } + if (ret == 0) { + break; + } else { + mountpoint = map = options = NULL; + continue; + } + } + if (mountpoint == NULL) { + mountpoint = checked_strdup(yytext); + } else if (map == NULL) { + map = checked_strdup(yytext); + } else if (options == NULL) { + /* + * +1 to skip leading "-". + */ + options = checked_strdup(yytext + 1); + } else { + log_errx(1, "too many arguments at %s, line %d", + master, lineno); + } + } +} + +void +parse_master(struct node *root, const char *master) +{ + + log_debugx("parsing auto_master file at \"%s\"", master); + + yyin = fopen(master, "r"); + if (yyin == NULL) + err(1, "unable to open %s", master); + + parse_master_yyin(root, master); + + fclose(yyin); + yyin = NULL; + + log_debugx("done parsing \"%s\"", master); + + node_expand_includes(root, true); + node_expand_direct_maps(root); +} + +/* + * Two things daemon(3) does, that we actually also want to do + * when running in foreground, is closing the stdin and chdiring + * to "/". This is what we do here. + */ +void +lesser_daemon(void) +{ + int error, fd; + + error = chdir("/"); + if (error != 0) + log_warn("chdir"); + + fd = open(_PATH_DEVNULL, O_RDWR, 0); + if (fd < 0) { + log_warn("cannot open %s", _PATH_DEVNULL); + return; + } + + error = dup2(fd, STDIN_FILENO); + if (error != 0) + log_warn("dup2"); + + error = close(fd); + if (error != 0) { + /* Bloody hell. */ + log_warn("close"); + } +} + +int +main(int argc, char **argv) +{ + char *cmdname; + + if (argv[0] == NULL) + log_errx(1, "NULL command name"); + + cmdname = basename(argv[0]); + + if (strcmp(cmdname, "automount") == 0) + return (main_automount(argc, argv)); + else if (strcmp(cmdname, "automountd") == 0) + return (main_automountd(argc, argv)); + else if (strcmp(cmdname, "autounmountd") == 0) + return (main_autounmountd(argc, argv)); + else + log_errx(1, "binary name should be either \"automount\", " + "\"automountd\", or \"autounmountd\""); +} diff --git a/usr.sbin/autofs/common.h b/usr.sbin/autofs/common.h new file mode 100644 index 0000000..bc0b6f6 --- /dev/null +++ b/usr.sbin/autofs/common.h @@ -0,0 +1,112 @@ +/*- + * Copyright (c) 2014 The FreeBSD Foundation + * All rights reserved. + * + * This software was developed by Edward Tomasz Napierala under sponsorship + * from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef AUTOMOUNTD_H +#define AUTOMOUNTD_H + +#include <sys/queue.h> +#include <stdbool.h> + +#define AUTO_MASTER_PATH "/etc/auto_master" +#define AUTO_MAP_PREFIX "/etc" +#define AUTO_SPECIAL_PREFIX "/etc/autofs" +#define AUTO_INCLUDE_PATH AUTO_SPECIAL_PREFIX "/include" + +struct node { + TAILQ_ENTRY(node) n_next; + TAILQ_HEAD(nodehead, node) n_children; + struct node *n_parent; + char *n_key; + char *n_options; + char *n_location; + char *n_map; + const char *n_config_file; + int n_config_line; +}; + +struct defined_value { + TAILQ_ENTRY(defined_value) d_next; + char *d_name; + char *d_value; +}; + +void log_init(int level); +void log_set_peer_name(const char *name); +void log_set_peer_addr(const char *addr); +void log_err(int, const char *, ...) + __dead2 __printf0like(2, 3); +void log_errx(int, const char *, ...) + __dead2 __printf0like(2, 3); +void log_warn(const char *, ...) __printf0like(1, 2); +void log_warnx(const char *, ...) __printflike(1, 2); +void log_debugx(const char *, ...) __printf0like(1, 2); + +char *checked_strdup(const char *); +char *separated_concat(const char *s1, const char *s2, char separator); +void create_directory(const char *path); + +struct node *node_new_root(void); +struct node *node_new(struct node *parent, char *key, char *options, + char *location, const char *config_file, int config_line); +struct node *node_new_map(struct node *parent, char *key, char *options, + char *map, const char *config_file, int config_line); +struct node *node_find(struct node *root, const char *mountpoint); +bool node_is_direct_map(const struct node *n); +char *node_path(const struct node *n); +char *node_options(const struct node *n); +void node_expand_ampersand(struct node *root, const char *key); +void node_expand_wildcard(struct node *root, const char *key); +int node_expand_defined(struct node *root); +void node_expand_indirect_maps(struct node *n); +void node_print(const struct node *n); +void parse_master(struct node *root, const char *path); +void parse_map(struct node *parent, const char *map, const char *args); +char *defined_expand(const char *string); +void defined_init(void); +void defined_parse_and_add(char *def); +void lesser_daemon(void); + +int main_automount(int argc, char **argv); +int main_automountd(int argc, char **argv); +int main_autounmountd(int argc, char **argv); + +FILE *auto_popen(const char *argv0, ...); +int auto_pclose(FILE *iop); + +/* + * lex(1) stuff. + */ +extern int lineno; + +#define STR 1 +#define NEWLINE 2 + +#endif /* !AUTOMOUNTD_H */ diff --git a/usr.sbin/autofs/defined.c b/usr.sbin/autofs/defined.c new file mode 100644 index 0000000..eaaea28 --- /dev/null +++ b/usr.sbin/autofs/defined.c @@ -0,0 +1,272 @@ +/*- + * Copyright (c) 2014 The FreeBSD Foundation + * All rights reserved. + * + * This software was developed by Edward Tomasz Napierala under sponsorship + * from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + */ + +/* + * All the "defined" stuff is for handling variables, + * such as ${OSNAME}, in maps. + */ + +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + +#include <sys/types.h> +#include <sys/time.h> +#include <sys/ioctl.h> +#include <sys/param.h> +#include <sys/linker.h> +#include <sys/mount.h> +#include <sys/socket.h> +#include <sys/stat.h> +#include <sys/wait.h> +#include <sys/utsname.h> +#include <assert.h> +#include <ctype.h> +#include <errno.h> +#include <fcntl.h> +#include <libgen.h> +#include <netdb.h> +#include <signal.h> +#include <stdbool.h> +#include <stdint.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <unistd.h> + +#include <libutil.h> + +#include "common.h" + +static TAILQ_HEAD(, defined_value) defined_values; + +static const char * +defined_find(const char *name) +{ + struct defined_value *d; + + TAILQ_FOREACH(d, &defined_values, d_next) { + if (strcmp(d->d_name, name) == 0) + return (d->d_value); + } + + return (NULL); +} + +char * +defined_expand(const char *string) +{ + const char *value; + char c, *expanded, *name; + int i, ret, before_len = 0, name_off = 0, name_len = 0, after_off = 0; + bool backslashed = false, bracketed = false; + + expanded = checked_strdup(string); + + for (i = 0; string[i] != '\0'; i++) { + c = string[i]; + if (c == '\\' && backslashed == false) { + backslashed = true; + continue; + } + if (backslashed) { + backslashed = false; + continue; + } + backslashed = false; + if (c != '$') + continue; + + /* + * The 'before_len' variable contains the number + * of characters before the '$'. + */ + before_len = i; + assert(i + 1 < (int)strlen(string)); + if (string[i + 1] == '{') + bracketed = true; + + if (string[i + 1] == '\0') { + log_warnx("truncated variable"); + return (NULL); + } + + /* + * Skip '$'. + */ + i++; + + if (bracketed) { + if (string[i + 1] == '\0') { + log_warnx("truncated variable"); + return (NULL); + } + + /* + * Skip '{'. + */ + i++; + } + + /* + * The 'name_off' variable contains the number + * of characters before the variable name, + * including the "$" or "${". + */ + name_off = i; + + for (; string[i] != '\0'; i++) { + c = string[i]; + /* + * XXX: Decide on the set of characters that can be + * used in a variable name. + */ + if (isalnum(c) || c == '_') + continue; + + /* + * End of variable name. + */ + if (bracketed) { + if (c != '}') + continue; + + /* + * The 'after_off' variable contains the number + * of characters before the rest of the string, + * i.e. after the variable name. + */ + after_off = i + 1; + assert(i > 1); + assert(i - 1 > name_off); + name_len = i - name_off; + break; + } + + after_off = i; + assert(i > 1); + assert(i > name_off); + name_len = i - name_off; + break; + } + + name = strndup(string + name_off, name_len); + if (name == NULL) + log_err(1, "strndup"); + value = defined_find(name); + if (value == NULL) { + log_warnx("undefined variable ${%s}", name); + return (NULL); + } + + /* + * Concatenate it back. + */ + ret = asprintf(&expanded, "%.*s%s%s", + before_len, string, value, string + after_off); + if (ret < 0) + log_err(1, "asprintf"); + + //log_debugx("\"%s\" expanded to \"%s\"", string, expanded); + free(name); + + /* + * Figure out where to start searching for next variable. + */ + string = expanded; + i = before_len + strlen(value); + backslashed = bracketed = false; + before_len = name_off = name_len = after_off = 0; + assert(i <= (int)strlen(string)); + } + + if (before_len != 0 || name_off != 0 || name_len != 0 || after_off != 0) { + log_warnx("truncated variable"); + return (NULL); + } + + return (expanded); +} + +static void +defined_add(const char *name, const char *value) +{ + struct defined_value *d; + const char *found; + + found = defined_find(name); + if (found != NULL) + log_errx(1, "variable %s already defined", name); + + log_debugx("defining variable %s=%s", name, value); + + d = calloc(sizeof(*d), 1); + if (d == NULL) + log_err(1, "calloc"); + d->d_name = checked_strdup(name); + d->d_value = checked_strdup(value); + + TAILQ_INSERT_TAIL(&defined_values, d, d_next); +} + +void +defined_parse_and_add(char *def) +{ + char *name, *value; + + value = def; + name = strsep(&value, "="); + + if (value == NULL || value[0] == '\0') + log_errx(1, "missing variable value"); + if (name == NULL || name[0] == '\0') + log_errx(1, "missing variable name"); + + defined_add(name, value); +} + +void +defined_init(void) +{ + struct utsname name; + int error; + + TAILQ_INIT(&defined_values); + + error = uname(&name); + if (error != 0) + log_err(1, "uname"); + + defined_add("ARCH", name.machine); + defined_add("CPU", name.machine); + defined_add("HOST", name.nodename); + defined_add("OSNAME", name.sysname); + defined_add("OSREL", name.release); + defined_add("OSVERS", name.version); +} diff --git a/usr.sbin/autofs/log.c b/usr.sbin/autofs/log.c new file mode 100644 index 0000000..d5682cc --- /dev/null +++ b/usr.sbin/autofs/log.c @@ -0,0 +1,198 @@ +/*- + * Copyright (c) 2012 The FreeBSD Foundation + * All rights reserved. + * + * This software was developed by Edward Tomasz Napierala under sponsorship + * from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + */ + +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + +#include <errno.h> +#include <stdarg.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <syslog.h> +#include <vis.h> + +#include "common.h" + +static int log_level = 0; +static char *peer_name = NULL; +static char *peer_addr = NULL; + +#define MSGBUF_LEN 1024 + +void +log_init(int level) +{ + + log_level = level; + openlog(getprogname(), LOG_NDELAY | LOG_PID, LOG_DAEMON); +} + +void +log_set_peer_name(const char *name) +{ + + /* + * XXX: Turn it into assertion? + */ + if (peer_name != NULL) + log_errx(1, "%s called twice", __func__); + if (peer_addr == NULL) + log_errx(1, "%s called before log_set_peer_addr", __func__); + + peer_name = checked_strdup(name); +} + +void +log_set_peer_addr(const char *addr) +{ + + /* + * XXX: Turn it into assertion? + */ + if (peer_addr != NULL) + log_errx(1, "%s called twice", __func__); + + peer_addr = checked_strdup(addr); +} + +static void +log_common(int priority, int log_errno, const char *fmt, va_list ap) +{ + static char msgbuf[MSGBUF_LEN]; + static char msgbuf_strvised[MSGBUF_LEN * 4 + 1]; + int ret; + + ret = vsnprintf(msgbuf, sizeof(msgbuf), fmt, ap); + if (ret < 0) { + fprintf(stderr, "%s: snprintf failed", getprogname()); + syslog(LOG_CRIT, "snprintf failed"); + exit(1); + } + + ret = strnvis(msgbuf_strvised, sizeof(msgbuf_strvised), msgbuf, VIS_NL); + if (ret < 0) { + fprintf(stderr, "%s: strnvis failed", getprogname()); + syslog(LOG_CRIT, "strnvis failed"); + exit(1); + } + + if (log_errno == -1) { + if (peer_name != NULL) { + fprintf(stderr, "%s: %s (%s): %s\n", getprogname(), + peer_addr, peer_name, msgbuf_strvised); + syslog(priority, "%s (%s): %s", + peer_addr, peer_name, msgbuf_strvised); + } else if (peer_addr != NULL) { + fprintf(stderr, "%s: %s: %s\n", getprogname(), + peer_addr, msgbuf_strvised); + syslog(priority, "%s: %s", + peer_addr, msgbuf_strvised); + } else { + fprintf(stderr, "%s: %s\n", getprogname(), msgbuf_strvised); + syslog(priority, "%s", msgbuf_strvised); + } + + } else { + if (peer_name != NULL) { + fprintf(stderr, "%s: %s (%s): %s: %s\n", getprogname(), + peer_addr, peer_name, msgbuf_strvised, strerror(errno)); + syslog(priority, "%s (%s): %s: %s", + peer_addr, peer_name, msgbuf_strvised, strerror(errno)); + } else if (peer_addr != NULL) { + fprintf(stderr, "%s: %s: %s: %s\n", getprogname(), + peer_addr, msgbuf_strvised, strerror(errno)); + syslog(priority, "%s: %s: %s", + peer_addr, msgbuf_strvised, strerror(errno)); + } else { + fprintf(stderr, "%s: %s: %s\n", getprogname(), + msgbuf_strvised, strerror(errno)); + syslog(priority, "%s: %s", + msgbuf_strvised, strerror(errno)); + } + } +} + +void +log_err(int eval, const char *fmt, ...) +{ + va_list ap; + + va_start(ap, fmt); + log_common(LOG_CRIT, errno, fmt, ap); + va_end(ap); + + exit(eval); +} + +void +log_errx(int eval, const char *fmt, ...) +{ + va_list ap; + + va_start(ap, fmt); + log_common(LOG_CRIT, -1, fmt, ap); + va_end(ap); + + exit(eval); +} + +void +log_warn(const char *fmt, ...) +{ + va_list ap; + + va_start(ap, fmt); + log_common(LOG_WARNING, errno, fmt, ap); + va_end(ap); +} + +void +log_warnx(const char *fmt, ...) +{ + va_list ap; + + va_start(ap, fmt); + log_common(LOG_WARNING, -1, fmt, ap); + va_end(ap); +} + +void +log_debugx(const char *fmt, ...) +{ + va_list ap; + + if (log_level == 0) + return; + + va_start(ap, fmt); + log_common(LOG_DEBUG, -1, fmt, ap); + va_end(ap); +} diff --git a/usr.sbin/autofs/popen.c b/usr.sbin/autofs/popen.c new file mode 100644 index 0000000..6cd964d --- /dev/null +++ b/usr.sbin/autofs/popen.c @@ -0,0 +1,193 @@ +/* + * Copyright (c) 1988, 1993 + * The Regents of the University of California. All rights reserved. + * Copyright (c) 2014 The FreeBSD Foundation + * All rights reserved. + * + * This code is derived from software written by Ken Arnold and + * published in UNIX Review, Vol. 6, No. 8. + * + * Portions of this software were developed by Edward Tomasz Napierala + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 4. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + */ + +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + +#include <sys/param.h> +#include <sys/queue.h> +#include <sys/wait.h> + +#include <errno.h> +#include <fcntl.h> +#include <unistd.h> +#include <stdarg.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <paths.h> + +#include "common.h" + +extern char **environ; + +struct pid { + SLIST_ENTRY(pid) next; + FILE *outfp; + pid_t pid; + char *command; +}; +static SLIST_HEAD(, pid) pidlist = SLIST_HEAD_INITIALIZER(pidlist); + +#define ARGV_LEN 42 + +/* + * Replacement for popen(3), without stdin (which we do not use), but with + * stderr, proper logging, and improved command line arguments passing. + * Error handling is built in - if it returns, then it succeeded. + */ +FILE * +auto_popen(const char *argv0, ...) +{ + va_list ap; + struct pid *cur, *p; + pid_t pid; + int error, i, nullfd, outfds[2]; + char *arg, *argv[ARGV_LEN], *command; + + nullfd = open(_PATH_DEVNULL, O_RDWR, 0); + if (nullfd < 0) + log_err(1, "cannot open %s", _PATH_DEVNULL); + + error = pipe(outfds); + if (error != 0) + log_err(1, "pipe"); + + cur = malloc(sizeof(struct pid)); + if (cur == NULL) + log_err(1, "malloc"); + + argv[0] = checked_strdup(argv0); + command = argv[0]; + + va_start(ap, argv0); + for (i = 1;; i++) { + if (i >= ARGV_LEN) + log_errx(1, "too many arguments to auto_popen"); + arg = va_arg(ap, char *); + argv[i] = arg; + if (arg == NULL) + break; + + command = separated_concat(command, arg, ' '); + } + va_end(ap); + + cur->command = checked_strdup(command); + + switch (pid = fork()) { + case -1: /* Error. */ + log_err(1, "fork"); + /* NOTREACHED */ + case 0: /* Child. */ + dup2(nullfd, STDIN_FILENO); + dup2(outfds[1], STDOUT_FILENO); + + close(nullfd); + close(outfds[0]); + close(outfds[1]); + + SLIST_FOREACH(p, &pidlist, next) + close(fileno(p->outfp)); + execvp(argv[0], argv); + log_err(1, "failed to execute %s", argv[0]); + /* NOTREACHED */ + } + + log_debugx("executing \"%s\" as pid %d", command, pid); + + /* Parent; assume fdopen cannot fail. */ + cur->outfp = fdopen(outfds[0], "r"); + close(nullfd); + close(outfds[1]); + + /* Link into list of file descriptors. */ + cur->pid = pid; + SLIST_INSERT_HEAD(&pidlist, cur, next); + + return (cur->outfp); +} + +int +auto_pclose(FILE *iop) +{ + struct pid *cur, *last = NULL; + int status; + pid_t pid; + + /* + * Find the appropriate file pointer and remove it from the list. + */ + SLIST_FOREACH(cur, &pidlist, next) { + if (cur->outfp == iop) + break; + last = cur; + } + if (cur == NULL) { + return (-1); + } + if (last == NULL) + SLIST_REMOVE_HEAD(&pidlist, next); + else + SLIST_REMOVE_AFTER(last, next); + + fclose(cur->outfp); + + do { + pid = wait4(cur->pid, &status, 0, NULL); + } while (pid == -1 && errno == EINTR); + + if (WIFSIGNALED(status)) { + log_warnx("\"%s\", pid %d, terminated with signal %d", + cur->command, pid, WTERMSIG(status)); + return (status); + } + + if (WEXITSTATUS(status) != 0) { + log_warnx("\"%s\", pid %d, terminated with exit status %d", + cur->command, pid, WEXITSTATUS(status)); + return (status); + } + + log_debugx("\"%s\", pid %d, terminated gracefully", cur->command, pid); + + free(cur->command); + free(cur); + + return (pid == -1 ? -1 : status); +} diff --git a/usr.sbin/autofs/token.l b/usr.sbin/autofs/token.l new file mode 100644 index 0000000..8224042 --- /dev/null +++ b/usr.sbin/autofs/token.l @@ -0,0 +1,57 @@ +%{ +/*- + * Copyright (c) 2014 The FreeBSD Foundation + * All rights reserved. + * + * This software was developed by Edward Tomasz Napierala under sponsorship + * from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#include <stdio.h> +#include <stdint.h> +#include <string.h> + +#include "common.h" + +int lineno; + +#define YY_DECL int yylex(void) +extern int yylex(void); + +%} + +%option noinput +%option nounput +%option noyywrap + +%% +[a-zA-Z0-9\.\+-_/\:\[\]$&{}]+ { return STR; } +#.*\n { lineno++; return NEWLINE; }; +\\\n { lineno++; }; +\n { lineno++; return NEWLINE; } +[ \t]+ /* ignore whitespace */; +. { return STR; } +%% diff --git a/usr.sbin/bhyve/virtio.c b/usr.sbin/bhyve/virtio.c index 1f27300..2f04b90 100644 --- a/usr.sbin/bhyve/virtio.c +++ b/usr.sbin/bhyve/virtio.c @@ -33,6 +33,7 @@ __FBSDID("$FreeBSD$"); #include <stdio.h> #include <stdint.h> #include <pthread.h> +#include <pthread_np.h> #include "bhyverun.h" #include "pci_emul.h" @@ -89,6 +90,9 @@ vi_reset_dev(struct virtio_softc *vs) struct vqueue_info *vq; int i, nvq; + if (vs->vs_mtx) + assert(pthread_mutex_isowned_np(vs->vs_mtx)); + nvq = vs->vs_vc->vc_nvq; for (vq = vs->vs_queues, i = 0; i < nvq; vq++, i++) { vq->vq_flags = 0; @@ -99,11 +103,9 @@ vi_reset_dev(struct virtio_softc *vs) vs->vs_negotiated_caps = 0; vs->vs_curq = 0; /* vs->vs_status = 0; -- redundant */ - VS_LOCK(vs); if (vs->vs_isr) pci_lintr_deassert(vs->vs_pi); vs->vs_isr = 0; - VS_UNLOCK(vs); vs->vs_msix_cfg_idx = VIRTIO_MSI_NO_VECTOR; } @@ -137,7 +139,9 @@ vi_intr_init(struct virtio_softc *vs, int barnum, int use_msix) if (use_msix) { vs->vs_flags |= VIRTIO_USE_MSIX; + VS_LOCK(vs); vi_reset_dev(vs); /* set all vectors to NO_VECTOR */ + VS_UNLOCK(vs); nvec = vs->vs_vc->vc_nvq + 1; if (pci_emul_add_msixcap(vs->vs_pi, nvec, barnum)) return (1); diff --git a/usr.sbin/bsdconfig/share/packages/packages.subr b/usr.sbin/bsdconfig/share/packages/packages.subr index a041fb6..f3ec707 100644 --- a/usr.sbin/bsdconfig/share/packages/packages.subr +++ b/usr.sbin/bsdconfig/share/packages/packages.subr @@ -1029,9 +1029,11 @@ f_package_extract() # Request the package be added via pkg-install(8) if f_debugging; then - f_eval_catch $funcname pkg 'pkg -d install -y "%s"' "$name" + f_eval_catch $funcname pkg \ + 'pkg -d install -${depended:+A}y "%s"' "$name" else - f_eval_catch $funcname pkg 'pkg install -y "%s"' "$name" + f_eval_catch $funcname pkg \ + 'pkg install -${depended:+A}y "%s"' "$name" fi if [ $? -ne $SUCCESS ]; then $alert "$msg_pkg_install_apparently_did_not_like_the_package" \ diff --git a/usr.sbin/btxld/Makefile b/usr.sbin/btxld/Makefile index 8df8fa1..32cf99d 100644 --- a/usr.sbin/btxld/Makefile +++ b/usr.sbin/btxld/Makefile @@ -4,6 +4,4 @@ PROG= btxld MAN= btxld.8 SRCS= btxld.c elfh.c -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/usr.sbin/cron/cron/Makefile b/usr.sbin/cron/cron/Makefile index c7762f1..d9a1d24 100644 --- a/usr.sbin/cron/cron/Makefile +++ b/usr.sbin/cron/cron/Makefile @@ -11,6 +11,4 @@ LDADD= ${LIBCRON} ${MINUSLPAM} -lutil WARNS?= 2 -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/usr.sbin/cron/crontab/Makefile b/usr.sbin/cron/crontab/Makefile index cd9600a..829128e 100644 --- a/usr.sbin/cron/crontab/Makefile +++ b/usr.sbin/cron/crontab/Makefile @@ -15,6 +15,4 @@ CFLAGS+= -I${.CURDIR}/../cron DPADD= ${LIBCRON} ${LIBMD} ${LIBUTIL} LDADD= ${LIBCRON} -lmd -lutil -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/usr.sbin/crunch/crunchgen/Makefile b/usr.sbin/crunch/crunchgen/Makefile index 7b07f2b..8d0a78b 100644 --- a/usr.sbin/crunch/crunchgen/Makefile +++ b/usr.sbin/crunch/crunchgen/Makefile @@ -4,8 +4,6 @@ PROG= crunchgen SRCS= crunchgen.c crunched_skel.c CLEANFILES+= crunched_skel.c -NO_PIE= yes - crunched_skel.c: crunched_main.c sh -e ${.CURDIR}/mkskel.sh ${.CURDIR}/crunched_main.c >crunched_skel.c diff --git a/usr.sbin/crunch/crunchide/Makefile b/usr.sbin/crunch/crunchide/Makefile index e328aa4..ab8b902 100644 --- a/usr.sbin/crunch/crunchide/Makefile +++ b/usr.sbin/crunch/crunchide/Makefile @@ -3,8 +3,6 @@ PROG= crunchide SRCS= crunchide.c -NO_PIE= yes - TARGET_ARCH?= ${MACHINE_ARCH} .if ${TARGET_ARCH} == i386 && ${MACHINE_ARCH} == i386 diff --git a/usr.sbin/ctld/Makefile b/usr.sbin/ctld/Makefile index e6c292d..2b998d8 100644 --- a/usr.sbin/ctld/Makefile +++ b/usr.sbin/ctld/Makefile @@ -9,8 +9,8 @@ CFLAGS+= -I${.CURDIR}/../../sys/dev/iscsi #CFLAGS+= -DICL_KERNEL_PROXY MAN= ctld.8 ctl.conf.5 -DPADD= ${LIBCAM} ${LIBSBUF} ${LIBBSDXML} ${LIBUTIL} -LDADD= -lbsdxml -lcam -lcrypto -lfl -lsbuf -lssl -lutil +DPADD= ${LIBBSDXML} ${LIBCAM} ${LIBCRYPTO} ${LIBL} ${LIBSBUF} ${LIBSSL} ${LIBUTIL} +LDADD= -lbsdxml -lcam -lcrypto -ll -lsbuf -lssl -lutil YFLAGS+= -v CLEANFILES= y.tab.c y.tab.h y.output diff --git a/usr.sbin/ctld/ctld.c b/usr.sbin/ctld/ctld.c index c14be21..c1593c2 100644 --- a/usr.sbin/ctld/ctld.c +++ b/usr.sbin/ctld/ctld.c @@ -26,9 +26,11 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD$ */ +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + #include <sys/types.h> #include <sys/time.h> #include <sys/socket.h> diff --git a/usr.sbin/ctld/discovery.c b/usr.sbin/ctld/discovery.c index 9908b96..7171932 100644 --- a/usr.sbin/ctld/discovery.c +++ b/usr.sbin/ctld/discovery.c @@ -26,9 +26,11 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD$ */ +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + #include <assert.h> #include <stdint.h> #include <stdio.h> diff --git a/usr.sbin/ctld/kernel.c b/usr.sbin/ctld/kernel.c index 3996e21..c942685 100644 --- a/usr.sbin/ctld/kernel.c +++ b/usr.sbin/ctld/kernel.c @@ -32,9 +32,11 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGES. * - * $FreeBSD$ */ +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + #include <sys/ioctl.h> #include <sys/types.h> #include <sys/stat.h> diff --git a/usr.sbin/ctld/keys.c b/usr.sbin/ctld/keys.c index 1474bd3..c2abe84 100644 --- a/usr.sbin/ctld/keys.c +++ b/usr.sbin/ctld/keys.c @@ -26,9 +26,11 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD$ */ +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + #include <assert.h> #include <stdint.h> #include <stdio.h> diff --git a/usr.sbin/ctld/log.c b/usr.sbin/ctld/log.c index 7b8ba71..ac838f3 100644 --- a/usr.sbin/ctld/log.c +++ b/usr.sbin/ctld/log.c @@ -26,9 +26,11 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD$ */ +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + #include <errno.h> #include <stdarg.h> #include <stdio.h> diff --git a/usr.sbin/ctld/login.c b/usr.sbin/ctld/login.c index 20ed464..d84045f 100644 --- a/usr.sbin/ctld/login.c +++ b/usr.sbin/ctld/login.c @@ -26,9 +26,11 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD$ */ +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + #include <assert.h> #include <stdbool.h> #include <stdint.h> diff --git a/usr.sbin/ctld/pdu.c b/usr.sbin/ctld/pdu.c index 084423c..c3181ac 100644 --- a/usr.sbin/ctld/pdu.c +++ b/usr.sbin/ctld/pdu.c @@ -26,9 +26,11 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD$ */ +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + #include <sys/types.h> #include <sys/uio.h> #include <assert.h> diff --git a/usr.sbin/editmap/Makefile b/usr.sbin/editmap/Makefile index 8b4562c..92d8392 100644 --- a/usr.sbin/editmap/Makefile +++ b/usr.sbin/editmap/Makefile @@ -33,8 +33,6 @@ DPADD+=${SENDMAIL_DPADD} LDADD+=${SENDMAIL_LDADD} LDFLAGS+=${SENDMAIL_LDFLAGS} -NO_PIE= yes - sm_os.h: ln -sf ${SENDMAIL_DIR}/include/sm/os/sm_os_freebsd.h sm_os.h diff --git a/usr.sbin/fifolog/fifolog_create/Makefile b/usr.sbin/fifolog/fifolog_create/Makefile index 38a6623..8b59b25 100644 --- a/usr.sbin/fifolog/fifolog_create/Makefile +++ b/usr.sbin/fifolog/fifolog_create/Makefile @@ -12,8 +12,6 @@ MLINKS= fifolog.1 fifolog_create.1 \ fifolog.1 fifolog_reader.1 \ fifolog.1 fifolog_writer.1 -NO_PIE= yes - regress: rm -f /tmp/fifolog.? ./${PROG} /tmp/fifolog.0 diff --git a/usr.sbin/fifolog/fifolog_reader/Makefile b/usr.sbin/fifolog/fifolog_reader/Makefile index dfbb73f..c88f10e 100644 --- a/usr.sbin/fifolog/fifolog_reader/Makefile +++ b/usr.sbin/fifolog/fifolog_reader/Makefile @@ -9,8 +9,6 @@ MAN= DPADD= ${LIBFIFOLOG} ${LIBUTIL} ${LIBZ} LDADD= ${LIBFIFOLOG} -lutil -lz -NO_PIE= yes - regress: ./${PROG} /tmp/fifolog.0 ./${PROG} -t /tmp/fifolog.0 diff --git a/usr.sbin/fifolog/fifolog_writer/Makefile b/usr.sbin/fifolog/fifolog_writer/Makefile index 3e6e377..9d802c7 100644 --- a/usr.sbin/fifolog/fifolog_writer/Makefile +++ b/usr.sbin/fifolog/fifolog_writer/Makefile @@ -9,8 +9,6 @@ MAN= DPADD= ${LIBFIFOLOG} ${LIBUTIL} ${LIBZ} LDADD= ${LIBFIFOLOG} -lutil -lz -NO_PIE= yes - regress: date | ./${PROG} -z 0 /tmp/fifolog.0 lptest 65 | ./${PROG} -z 9 /tmp/fifolog.1 diff --git a/usr.sbin/ftp-proxy/ftp-proxy/Makefile b/usr.sbin/ftp-proxy/ftp-proxy/Makefile index 686bac4..de49888 100644 --- a/usr.sbin/ftp-proxy/ftp-proxy/Makefile +++ b/usr.sbin/ftp-proxy/ftp-proxy/Makefile @@ -14,6 +14,4 @@ DPADD+= ${LIBEVENT} WARNS?= 3 -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/usr.sbin/iscsid/Makefile b/usr.sbin/iscsid/Makefile index 468b284..e60010e 100644 --- a/usr.sbin/iscsid/Makefile +++ b/usr.sbin/iscsid/Makefile @@ -8,7 +8,7 @@ CFLAGS+= -I${.CURDIR}/../../sys/dev/iscsi #CFLAGS+= -DICL_KERNEL_PROXY MAN= iscsid.8 -DPADD= ${LIBUTIL} +DPADD= ${LIBCRYPTO} ${LIBSSL} ${LIBUTIL} LDADD= -lcrypto -lssl -lutil WARNS= 6 diff --git a/usr.sbin/iscsid/discovery.c b/usr.sbin/iscsid/discovery.c index 9f0db81..c87d9ff 100644 --- a/usr.sbin/iscsid/discovery.c +++ b/usr.sbin/iscsid/discovery.c @@ -26,9 +26,11 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD$ */ +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + #include <sys/types.h> #include <sys/ioctl.h> #include <assert.h> diff --git a/usr.sbin/iscsid/iscsid.c b/usr.sbin/iscsid/iscsid.c index 4e85b1c..a7f489e 100644 --- a/usr.sbin/iscsid/iscsid.c +++ b/usr.sbin/iscsid/iscsid.c @@ -26,9 +26,11 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD$ */ +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + #include <sys/types.h> #include <sys/time.h> #include <sys/ioctl.h> diff --git a/usr.sbin/iscsid/keys.c b/usr.sbin/iscsid/keys.c index 49340e0..abf746a 100644 --- a/usr.sbin/iscsid/keys.c +++ b/usr.sbin/iscsid/keys.c @@ -26,9 +26,11 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD$ */ +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + #include <assert.h> #include <stdint.h> #include <stdio.h> diff --git a/usr.sbin/iscsid/log.c b/usr.sbin/iscsid/log.c index be3aaed..ea7755f 100644 --- a/usr.sbin/iscsid/log.c +++ b/usr.sbin/iscsid/log.c @@ -26,9 +26,11 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD$ */ +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + #include <errno.h> #include <stdarg.h> #include <stdio.h> diff --git a/usr.sbin/iscsid/login.c b/usr.sbin/iscsid/login.c index f4fd29f..3391f90 100644 --- a/usr.sbin/iscsid/login.c +++ b/usr.sbin/iscsid/login.c @@ -26,9 +26,11 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD$ */ +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + #include <sys/types.h> #include <sys/ioctl.h> #include <assert.h> diff --git a/usr.sbin/iscsid/pdu.c b/usr.sbin/iscsid/pdu.c index 6b5630e..8f07718 100644 --- a/usr.sbin/iscsid/pdu.c +++ b/usr.sbin/iscsid/pdu.c @@ -26,9 +26,11 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD$ */ +#include <sys/cdefs.h> +__FBSDID("$FreeBSD$"); + #include <sys/types.h> #include <sys/uio.h> #include <assert.h> diff --git a/usr.sbin/kbdmap/kbdmap.c b/usr.sbin/kbdmap/kbdmap.c index 7d5a0d1..bf2aa81 100644 --- a/usr.sbin/kbdmap/kbdmap.c +++ b/usr.sbin/kbdmap/kbdmap.c @@ -29,6 +29,7 @@ __FBSDID("$FreeBSD$"); #include <sys/types.h> #include <sys/queue.h> +#include <sys/sysctl.h> #include <assert.h> #include <ctype.h> @@ -47,10 +48,10 @@ static const char *lang_default = DEFAULT_LANG; static const char *font; static const char *lang; static const char *program; -static const char *keymapdir = DEFAULT_KEYMAP_DIR; -static const char *fontdir = DEFAULT_FONT_DIR; +static const char *keymapdir = DEFAULT_VT_KEYMAP_DIR; +static const char *fontdir = DEFAULT_VT_FONT_DIR; +static const char *font_default = DEFAULT_VT_FONT; static const char *sysconfig = DEFAULT_SYSCONFIG; -static const char *font_default = DEFAULT_FONT; static const char *font_current; static const char *dir; static const char *menu = ""; @@ -146,6 +147,22 @@ add_keymap(const char *desc, int mark, const char *keym) } /* + * Return 0 if syscons is in use (to select legacy defaults). + */ +static int +check_newcons(void) +{ + size_t len; + char term[3]; + + len = 3; + if (sysctlbyname("kern.vty", &term, &len, NULL, 0) != 0 || + strcmp(term, "vt") != 0) + return 0; + return -1; +} + +/* * Figure out the default language to use. */ static const char * @@ -815,6 +832,12 @@ main(int argc, char **argv) sleep(2); } + if (check_newcons() == 0) { + keymapdir = DEFAULT_SC_KEYMAP_DIR; + fontdir = DEFAULT_SC_FONT_DIR; + font_default = DEFAULT_SC_FONT; + } + SLIST_INIT(&head); lang = get_locale(); diff --git a/usr.sbin/kbdmap/kbdmap.h b/usr.sbin/kbdmap/kbdmap.h index e57fa8c..89d27b1 100644 --- a/usr.sbin/kbdmap/kbdmap.h +++ b/usr.sbin/kbdmap/kbdmap.h @@ -28,7 +28,12 @@ #define DEFAULT_LANG "en" -#define DEFAULT_KEYMAP_DIR "/usr/share/syscons/keymaps" -#define DEFAULT_FONT_DIR "/usr/share/syscons/fonts" #define DEFAULT_SYSCONFIG "/etc/rc.conf" -#define DEFAULT_FONT "cp437-8x16.fnt" + +#define DEFAULT_SC_KEYMAP_DIR "/usr/share/syscons/keymaps" +#define DEFAULT_SC_FONT_DIR "/usr/share/syscons/fonts" +#define DEFAULT_SC_FONT "cp437-8x16.fnt" + +#define DEFAULT_VT_KEYMAP_DIR "/usr/share/vt/keymaps" +#define DEFAULT_VT_FONT_DIR "/usr/share/vt/fonts" +#define DEFAULT_VT_FONT "vgarom-thin-8x16.fnt" diff --git a/usr.sbin/lpr/chkprintcap/Makefile b/usr.sbin/lpr/chkprintcap/Makefile index 1ea2254..ffffffb 100644 --- a/usr.sbin/lpr/chkprintcap/Makefile +++ b/usr.sbin/lpr/chkprintcap/Makefile @@ -11,6 +11,4 @@ CFLAGS+= -I${.CURDIR}/../common_source DPADD= ${LIBLPR} LDADD= ${LIBLPR} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/usr.sbin/lpr/lpc/Makefile b/usr.sbin/lpr/lpc/Makefile index 7f228d6..92ca9e8 100644 --- a/usr.sbin/lpr/lpc/Makefile +++ b/usr.sbin/lpr/lpc/Makefile @@ -16,6 +16,4 @@ WARNS?= 0 DPADD= ${LIBLPR} ${LIBEDIT} ${LIBTERMCAPW} LDADD= ${LIBLPR} -ledit -ltermcapw -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/usr.sbin/lpr/lpd/Makefile b/usr.sbin/lpr/lpd/Makefile index bd3e25a..0d7d93e 100644 --- a/usr.sbin/lpr/lpd/Makefile +++ b/usr.sbin/lpr/lpd/Makefile @@ -12,6 +12,4 @@ WARNS?= 1 DPADD= ${LIBLPR} LDADD= ${LIBLPR} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/usr.sbin/lpr/lpq/Makefile b/usr.sbin/lpr/lpq/Makefile index 1c2504b..4df437e 100644 --- a/usr.sbin/lpr/lpq/Makefile +++ b/usr.sbin/lpr/lpq/Makefile @@ -13,6 +13,4 @@ CFLAGS+= -I${.CURDIR}/../common_source DPADD= ${LIBLPR} LDADD= ${LIBLPR} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/usr.sbin/lpr/lpr/Makefile b/usr.sbin/lpr/lpr/Makefile index cfeebb0..1894b00 100644 --- a/usr.sbin/lpr/lpr/Makefile +++ b/usr.sbin/lpr/lpr/Makefile @@ -18,6 +18,4 @@ WARNS?= 2 DPADD= ${LIBLPR} LDADD= ${LIBLPR} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/usr.sbin/lpr/lprm/Makefile b/usr.sbin/lpr/lprm/Makefile index bd7e321..44bc93a 100644 --- a/usr.sbin/lpr/lprm/Makefile +++ b/usr.sbin/lpr/lprm/Makefile @@ -15,6 +15,4 @@ CFLAGS+= -I${.CURDIR}/../common_source DPADD= ${LIBLPR} LDADD= ${LIBLPR} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/usr.sbin/lpr/pac/Makefile b/usr.sbin/lpr/pac/Makefile index 3a157c9..bd895a7 100644 --- a/usr.sbin/lpr/pac/Makefile +++ b/usr.sbin/lpr/pac/Makefile @@ -11,6 +11,4 @@ CFLAGS+= -I${.CURDIR}/../common_source DPADD= ${LIBLPR} LDADD= ${LIBLPR} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/usr.sbin/mailstats/Makefile b/usr.sbin/mailstats/Makefile index a3cd562..bd72fc6 100644 --- a/usr.sbin/mailstats/Makefile +++ b/usr.sbin/mailstats/Makefile @@ -31,8 +31,6 @@ DPADD+= ${SENDMAIL_DPADD} LDADD+= ${SENDMAIL_LDADD} LDFLAGS+= ${SENDMAIL_LDFLAGS} -NO_PIE= yes - sm_os.h: ln -sf ${SENDMAIL_DIR}/include/sm/os/sm_os_freebsd.h sm_os.h diff --git a/usr.sbin/makefs/Makefile b/usr.sbin/makefs/Makefile index 0e03fd3..6253148 100644 --- a/usr.sbin/makefs/Makefile +++ b/usr.sbin/makefs/Makefile @@ -38,6 +38,4 @@ LDADD+= ${LIBNETBSD} DPADD+= ${LIBSBUF} ${LIBUTIL} LDADD+= -lsbuf -lutil -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/usr.sbin/makemap/Makefile b/usr.sbin/makemap/Makefile index 2c2eef5..80cafcb 100644 --- a/usr.sbin/makemap/Makefile +++ b/usr.sbin/makemap/Makefile @@ -34,8 +34,6 @@ DPADD+=${SENDMAIL_DPADD} LDADD+=${SENDMAIL_LDADD} LDFLAGS+=${SENDMAIL_LDFLAGS} -NO_PIE= yes - sm_os.h: ln -sf ${SENDMAIL_DIR}/include/sm/os/sm_os_freebsd.h sm_os.h diff --git a/usr.sbin/mountd/exports.5 b/usr.sbin/mountd/exports.5 index 1293524..88e2219 100644 --- a/usr.sbin/mountd/exports.5 +++ b/usr.sbin/mountd/exports.5 @@ -28,7 +28,7 @@ .\" @(#)exports.5 8.3 (Berkeley) 3/29/95 .\" $FreeBSD$ .\" -.Dd December 23, 2012 +.Dd August 14, 2014 .Dt EXPORTS 5 .Os .Sh NAME @@ -91,10 +91,10 @@ option is used on Because NFSv4 does not use the mount protocol, the .Dq administrative controls -are not applied. -Thus, all the above export line(s) should be considered to have the +are not applied and all directories within this server +file system are mountable via NFSv4 even if the .Fl alldirs -flag, even if the line is specified without it. +flag has not been specified. The third form has the string ``V4:'' followed by a single absolute path name, to specify the NFSv4 tree root. This line does not export any file system, but simply marks where the root @@ -310,7 +310,8 @@ interface. For the third form which specifies the NFSv4 tree root, the directory path specifies the location within the server's file system tree which is the root of the NFSv4 tree. -All entries of this form must specify the same directory path. +There can only be one NFSv4 root directory per server. +As such, all entries of this form must specify the same directory path. For file systems other than ZFS, this location can be any directory and does not need to be within an exported file system. If it is not in an exported diff --git a/usr.sbin/mountd/mountd.c b/usr.sbin/mountd/mountd.c index 1913410..6e4085c 100644 --- a/usr.sbin/mountd/mountd.c +++ b/usr.sbin/mountd/mountd.c @@ -1744,6 +1744,7 @@ get_exportlist(void) iov[3].iov_len = strlen(fsp->f_mntonname) + 1; iov[5].iov_base = fsp->f_mntfromname; iov[5].iov_len = strlen(fsp->f_mntfromname) + 1; + errmsg[0] = '\0'; if (nmount(iov, iovlen, fsp->f_flags) < 0 && errno != ENOENT && errno != ENOTSUP) { @@ -2501,6 +2502,7 @@ do_mount(struct exportlist *ep, struct grouplist *grp, int exflags, iov[3].iov_len = strlen(fsb->f_mntonname) + 1; iov[5].iov_base = fsb->f_mntfromname; /* "from" */ iov[5].iov_len = strlen(fsb->f_mntfromname) + 1; + errmsg[0] = '\0'; while (nmount(iov, iovlen, fsb->f_flags) < 0) { if (cp) diff --git a/usr.sbin/nmtree/Makefile b/usr.sbin/nmtree/Makefile index e09f3c4..8cba6f8 100644 --- a/usr.sbin/nmtree/Makefile +++ b/usr.sbin/nmtree/Makefile @@ -8,6 +8,7 @@ PROG= mtree MAN= mtree.5 mtree.8 SRCS= compare.c crc.c create.c excludes.c getid.c misc.c mtree.c \ only.c spec.c specspec.c verify.c +DPADD+= ${LIBMD} ${LIBUTIL} LDADD+= -lmd -lutil CFLAGS+= -I${.CURDIR}/../../contrib/mknod @@ -23,6 +24,4 @@ LDADD+= ${LIBNETBSD} LINKS= ${BINDIR}/mtree ${BINDIR}/nmtree MLINKS= mtree.8 nmtree.8 -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/usr.sbin/ntp/ntp-keygen/Makefile b/usr.sbin/ntp/ntp-keygen/Makefile index 5075350..78308fa 100644 --- a/usr.sbin/ntp/ntp-keygen/Makefile +++ b/usr.sbin/ntp/ntp-keygen/Makefile @@ -21,6 +21,4 @@ DPADD+= ${LIBMD} ${LIBCRYPTO} LDADD+= -lmd -lcrypto .endif -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/usr.sbin/ntp/ntpd/Makefile b/usr.sbin/ntp/ntpd/Makefile index 3422ad2..87b2d72 100644 --- a/usr.sbin/ntp/ntpd/Makefile +++ b/usr.sbin/ntp/ntpd/Makefile @@ -4,8 +4,6 @@ MAN= .include <src.opts.mk> -NO_PIE= yes - .PATH: ${.CURDIR}/../../../contrib/ntp/ntpd PROG= ntpd diff --git a/usr.sbin/ntp/ntpdate/Makefile b/usr.sbin/ntp/ntpdate/Makefile index ea0fe1e..f55ec92 100644 --- a/usr.sbin/ntp/ntpdate/Makefile +++ b/usr.sbin/ntp/ntpdate/Makefile @@ -13,8 +13,6 @@ LDADD= ${LIBNTP} -lm -lmd -lrt CLEANFILES+= .version version.c -NO_PIE= yes - version.c: sh -e ${.CURDIR}/../scripts/mkver ntpdate diff --git a/usr.sbin/ntp/ntpdc/Makefile b/usr.sbin/ntp/ntpdc/Makefile index e4e8960..d3c37e1 100644 --- a/usr.sbin/ntp/ntpdc/Makefile +++ b/usr.sbin/ntp/ntpdc/Makefile @@ -22,8 +22,6 @@ CFLAGS+= -DHAVE_LIBEDIT -DHAVE_READLINE_READLINE_H \ CLEANFILES+= .version version.c -NO_PIE= yes - version.c: sh -e ${.CURDIR}/../scripts/mkver ntpdc diff --git a/usr.sbin/ntp/ntpq/Makefile b/usr.sbin/ntp/ntpq/Makefile index a1ddcd4..369bd58 100644 --- a/usr.sbin/ntp/ntpq/Makefile +++ b/usr.sbin/ntp/ntpq/Makefile @@ -24,8 +24,6 @@ CFLAGS+= -DHAVE_LIBEDIT -DHAVE_READLINE_READLINE_H \ CLEANFILES+= .version version.c -NO_PIE= yes - version.c: sh -e ${.CURDIR}/../scripts/mkver ntpq diff --git a/usr.sbin/ntp/ntptime/Makefile b/usr.sbin/ntp/ntptime/Makefile index af3f905..d3bf7a7 100644 --- a/usr.sbin/ntp/ntptime/Makefile +++ b/usr.sbin/ntp/ntptime/Makefile @@ -10,6 +10,4 @@ CFLAGS+= -I${.CURDIR}/../../../contrib/ntp/include -I${.CURDIR}/../ DPADD= ${LIBNTP} LDADD= ${LIBNTP} -NO_PIE= yes - .include <bsd.prog.mk> diff --git a/usr.sbin/ppp/Makefile b/usr.sbin/ppp/Makefile index beea0ab..dda493e 100644 --- a/usr.sbin/ppp/Makefile +++ b/usr.sbin/ppp/Makefile @@ -33,9 +33,9 @@ PPP_NO_PAM= .endif .if defined(PPP_NO_SUID) -BINMODE=550 +BINMODE=554 .else -BINMODE=4550 +BINMODE=4554 BINOWN= root .endif BINGRP= network diff --git a/usr.sbin/praliases/Makefile b/usr.sbin/praliases/Makefile index e1a9a2a..120028d 100644 --- a/usr.sbin/praliases/Makefile +++ b/usr.sbin/praliases/Makefile @@ -34,8 +34,6 @@ LDFLAGS+=${SENDMAIL_LDFLAGS} DPADD+= ${SENDMAIL_DPADD} LDADD+= ${SENDMAIL_LDADD} -NO_PIE= yes - sm_os.h: ln -sf ${SENDMAIL_DIR}/include/sm/os/sm_os_freebsd.h sm_os.h diff --git a/usr.sbin/route6d/route6d.c b/usr.sbin/route6d/route6d.c index fc45615..258219b 100644 --- a/usr.sbin/route6d/route6d.c +++ b/usr.sbin/route6d/route6d.c @@ -2835,6 +2835,8 @@ addroute(struct riprt *rrt, sin6->sin6_len = sizeof(struct sockaddr_in6); sin6->sin6_family = AF_INET6; sin6->sin6_addr = *gw; + if (IN6_IS_ADDR_LINKLOCAL(&sin6->sin6_addr)) + sin6->sin6_scope_id = ifcp->ifc_index; sin6 = (struct sockaddr_in6 *)((char *)sin6 + ROUNDUP(sin6->sin6_len)); /* Netmask */ sin6->sin6_len = sizeof(struct sockaddr_in6); diff --git a/usr.sbin/sendmail/Makefile b/usr.sbin/sendmail/Makefile index ffd22bd..893b6fd 100644 --- a/usr.sbin/sendmail/Makefile +++ b/usr.sbin/sendmail/Makefile @@ -7,8 +7,6 @@ SENDMAIL_DIR=${.CURDIR}/../../contrib/sendmail SMDIR= ${SENDMAIL_DIR}/src .PATH: ${SMDIR} -NO_PIE= yes - BINDIR= /usr/libexec/sendmail PROG= sendmail diff --git a/usr.sbin/timed/timedc/timedc.c b/usr.sbin/timed/timedc/timedc.c index f81da89..2f3e508 100644 --- a/usr.sbin/timed/timedc/timedc.c +++ b/usr.sbin/timed/timedc/timedc.c @@ -66,7 +66,7 @@ main(int argc, char *argv[]) { register struct cmd *c; - openlog("timedc", LOG_ODELAY, LOG_AUTH); + openlog("timedc", 0, LOG_AUTH); /* * security dictates! |