diff -Nru clamav-0.98.6+dfsg/aclocal.m4 clamav-0.99.2+addedllvm/aclocal.m4 --- clamav-0.98.6+dfsg/aclocal.m4 2014-12-18 21:43:18.000000000 +0000 +++ clamav-0.99.2+addedllvm/aclocal.m4 2016-04-22 16:19:42.000000000 +0000 @@ -1,4 +1,4 @@ -# generated automatically by aclocal 1.14 -*- Autoconf -*- +# generated automatically by aclocal 1.14.1 -*- Autoconf -*- # Copyright (C) 1996-2013 Free Software Foundation, Inc. @@ -20,6 +20,166 @@ If you have problems, you may need to regenerate the build system entirely. To do so, use the procedure documented by the package, typically 'autoreconf'.])]) +# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- +# serial 1 (pkg-config-0.24) +# +# Copyright © 2004 Scott James Remnant . +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program that contains a +# configuration script generated by Autoconf, you may include it under +# the same distribution terms that you use for the rest of that program. + +# PKG_PROG_PKG_CONFIG([MIN-VERSION]) +# ---------------------------------- +AC_DEFUN([PKG_PROG_PKG_CONFIG], +[m4_pattern_forbid([^_?PKG_[A-Z_]+$]) +m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$]) +m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$]) +AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility]) +AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path]) +AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path]) + +if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then + AC_PATH_TOOL([PKG_CONFIG], [pkg-config]) +fi +if test -n "$PKG_CONFIG"; then + _pkg_min_version=m4_default([$1], [0.9.0]) + AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version]) + if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then + AC_MSG_RESULT([yes]) + else + AC_MSG_RESULT([no]) + PKG_CONFIG="" + fi +fi[]dnl +])# PKG_PROG_PKG_CONFIG + +# PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) +# +# Check to see whether a particular set of modules exists. Similar +# to PKG_CHECK_MODULES(), but does not set variables or print errors. +# +# Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG]) +# only at the first occurence in configure.ac, so if the first place +# it's called might be skipped (such as if it is within an "if", you +# have to call PKG_CHECK_EXISTS manually +# -------------------------------------------------------------- +AC_DEFUN([PKG_CHECK_EXISTS], +[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl +if test -n "$PKG_CONFIG" && \ + AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then + m4_default([$2], [:]) +m4_ifvaln([$3], [else + $3])dnl +fi]) + +# _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES]) +# --------------------------------------------- +m4_define([_PKG_CONFIG], +[if test -n "$$1"; then + pkg_cv_[]$1="$$1" + elif test -n "$PKG_CONFIG"; then + PKG_CHECK_EXISTS([$3], + [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes ], + [pkg_failed=yes]) + else + pkg_failed=untried +fi[]dnl +])# _PKG_CONFIG + +# _PKG_SHORT_ERRORS_SUPPORTED +# ----------------------------- +AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED], +[AC_REQUIRE([PKG_PROG_PKG_CONFIG]) +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi[]dnl +])# _PKG_SHORT_ERRORS_SUPPORTED + + +# PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], +# [ACTION-IF-NOT-FOUND]) +# +# +# Note that if there is a possibility the first call to +# PKG_CHECK_MODULES might not happen, you should be sure to include an +# explicit call to PKG_PROG_PKG_CONFIG in your configure.ac +# +# +# -------------------------------------------------------------- +AC_DEFUN([PKG_CHECK_MODULES], +[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl +AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl +AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl + +pkg_failed=no +AC_MSG_CHECKING([for $1]) + +_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2]) +_PKG_CONFIG([$1][_LIBS], [libs], [$2]) + +m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS +and $1[]_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details.]) + +if test $pkg_failed = yes; then + AC_MSG_RESULT([no]) + _PKG_SHORT_ERRORS_SUPPORTED + if test $_pkg_short_errors_supported = yes; then + $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1` + else + $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD + + m4_default([$4], [AC_MSG_ERROR( +[Package requirements ($2) were not met: + +$$1_PKG_ERRORS + +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. + +_PKG_TEXT])[]dnl + ]) +elif test $pkg_failed = untried; then + AC_MSG_RESULT([no]) + m4_default([$4], [AC_MSG_FAILURE( +[The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. + +_PKG_TEXT + +To get pkg-config, see .])[]dnl + ]) +else + $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS + $1[]_LIBS=$pkg_cv_[]$1[]_LIBS + AC_MSG_RESULT([yes]) + $3 +fi[]dnl +])# PKG_CHECK_MODULES + # Copyright (C) 2002-2013 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation @@ -35,7 +195,7 @@ [am__api_version='1.14' dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to dnl require some minimum version. Point them to the right macro. -m4_if([$1], [1.14], [], +m4_if([$1], [1.14.1], [], [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl ]) @@ -51,7 +211,7 @@ # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. # This function is AC_REQUIREd by AM_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], -[AM_AUTOMAKE_VERSION([1.14])dnl +[AM_AUTOMAKE_VERSION([1.14.1])dnl m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) @@ -642,6 +802,24 @@ rmdir .tst 2>/dev/null AC_SUBST([am__leading_dot])]) +# Copyright (C) 1998-2013 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# AM_PROG_LEX +# ----------- +# Autoconf leaves LEX=: if lex or flex can't be found. Change that to a +# "missing" invocation, for better error output. +AC_DEFUN([AM_PROG_LEX], +[AC_PREREQ([2.50])dnl +AC_REQUIRE([AM_MISSING_HAS_RUN])dnl +AC_REQUIRE([AC_PROG_LEX])dnl +if test "$LEX" = :; then + LEX=${am_missing_run}flex +fi]) + # Check to see how 'make' treats includes. -*- Autoconf -*- # Copyright (C) 2001-2013 Free Software Foundation, Inc. @@ -1148,7 +1326,6 @@ ]) # _AM_PROG_TAR m4_include([m4/acinclude.m4]) -m4_include([m4/argz.m4]) m4_include([m4/ax_check_uname_syscall.m4]) m4_include([m4/fdpassing.m4]) m4_include([m4/lib-ld.m4]) @@ -1156,6 +1333,7 @@ m4_include([m4/lib-prefix.m4]) m4_include([m4/libtool.m4]) m4_include([m4/llvm.m4]) +m4_include([m4/ltargz.m4]) m4_include([m4/ltdl.m4]) m4_include([m4/ltoptions.m4]) m4_include([m4/ltsugar.m4]) diff -Nru clamav-0.98.6+dfsg/ChangeLog clamav-0.99.2+addedllvm/ChangeLog --- clamav-0.98.6+dfsg/ChangeLog 2014-12-18 21:43:18.000000000 +0000 +++ clamav-0.99.2+addedllvm/ChangeLog 2016-04-22 15:02:18.000000000 +0000 @@ -1,3 +1,1062 @@ +Thu, 22 Apr 2016 12:45:00 -0500 (Steven Morgan) +------------------------------------------ + * ClamAV 0.99.2 release. + +Thu, 31 Mar 2016 17:07:39 -0400 (Kevin Lin) +------------------------------------------ + * 7z: fix for FolderStartPackStreamIndex array index heck + +Tue, 29 Mar 2016 16:18:51 -0400 (Steven Morgan) +------------------------------------------ + * bb11547 - print all CDBNAME entries for a zip file when using the + -z flag. + +Tue, 2 Sep 2014 22:44:41 +0200 (Sebastian Andrzej Siewior) +------------------------------------------ + * try to minimize the err cleanup path + +Tue, 2 Sep 2014 22:44:14 +0200 (Sebastian Andrzej Siewior) +------------------------------------------ + * clamunrar: notice if unpacking comment failed + +Wed, 23 Mar 2016 16:39:52 -0400 (Steven Morgan) +------------------------------------------ + * bb9042 - signature manual update. + +Wed, 23 Mar 2016 16:14:42 -0400 (Kevin Lin) +------------------------------------------ + * bb#11396 - use temp var for realloc to prevent pointer loss. Patch by + Bill Parker. + +Wed, 23 Mar 2016 15:49:56 -0400 (Kevin Lin) +------------------------------------------ + * bb#11397 - fix debug VI hex truncation + +Wed, 23 Mar 2016 15:38:21 -0400 (Kevin Lin) +------------------------------------------ + * bb#11398 - freshclam: avoid random data in mirrors.dat. Patch by + Tomasz Kojm. + +Wed, 23 Mar 2016 15:28:51 -0400 (Kevin Lin) +------------------------------------------ + * libclamav: print raw certificate metadata + +Wed, 23 Mar 2016 14:16:00 -0400 (Kevin Lin) +------------------------------------------ + * bb#11529 - freshclam manager check return code of strdup. Patch by + Sebastian A. Siewior. + +Tue, 22 Mar 2016 16:21:59 -0400 (Kevin Lin) +------------------------------------------ + * bb#11261 - additional suppress IP notification when using proxy + +Tue, 22 Mar 2016 12:54:52 -0400 (Kevin Lin) +------------------------------------------ + * bb#10983 - fix download and verification of *.cld through PrivateMirrors + +Mon, 21 Mar 2016 11:21:08 -0400 (Kevin Lin) +------------------------------------------ + * bb#11261 - suppress IP notification when using proxy + +Mon, 21 Mar 2016 11:20:01 -0400 (Kevin Lin) +------------------------------------------ + * bb#11543 - remove redundant mempool assignment + +Thu, 17 Mar 2016 11:49:26 -0400 (Kevin Lin) +------------------------------------------ + * bb#11003 - divide out dumpcerts output for better readability + +Wed, 16 Mar 2016 15:42:35 -0400 (Kevin Lin) +------------------------------------------ + * bb#11003 - fix dconf and option handling for nocert and dumpcert + +Mon, 14 Mar 2016 16:07:45 -0400 (Mickey Sola) +------------------------------------------ + * bb11463 - patch by Jim Morris to increase clamd's soft file descriptor to + its potential maximum on 64-bit systems + +Mon, 14 Mar 2016 17:12:20 -0400 (Steven Morgan) +------------------------------------------ + * Move libfreshclam config to m4/reorganization. + +Fri, 11 Mar 2016 13:32:31 -0700 (andrey mirtchovski) +------------------------------------------ + * adding libfreshclam + +Sun, 13 Mar 2016 23:27:23 -0400 (Tom Judge) +------------------------------------------ + * Add 'cdb' datafile to sigtools list of datafile types. + +Fri, 11 Mar 2016 16:02:22 -0500 (Steven Morgan) +------------------------------------------ + * bb11526 - NULL pointer check. Patch by Bill Parker. + +Fri, 11 Mar 2016 15:48:01 -0500 (Steven Morgan) +------------------------------------------ + * bb11524 - malloc() NULL pointer check. Patch by Bill Parker. + +Thu, 10 Mar 2016 18:26:33 -0500 (Steven Morgan) +------------------------------------------ + * bb1436 - clamscan 'block-macros' option. Patch by Kai Risku. + +Wed, 9 Mar 2016 17:07:06 -0500 (Kevin Lin) +------------------------------------------ + * bb#11514 - initialize cpio name buffer + +Wed, 9 Mar 2016 16:43:03 -0500 (Kevin Lin) +------------------------------------------ + * bb#11514 - initialize mspack decompression buffers + +Wed, 9 Mar 2016 12:15:16 -0500 (Kevin Lin) +------------------------------------------ + * bb#11514 - prevent memory allocations on used pointers (folder objects) + +Tue, 8 Mar 2016 16:04:21 -0500 (Kevin Lin) +------------------------------------------ + * bb#11514 - prevent memory allocations on used pointers (boolvectors) + +Tue, 8 Mar 2016 14:37:20 -0500 (Kevin Lin) +------------------------------------------ + * bb#11514 - initialize ARJ metadata structures + +Tue, 8 Mar 2016 14:37:01 -0500 (Kevin Lin) +------------------------------------------ + * bb#11514 - change cli_malloc with cli_calloc + +Mon, 7 Mar 2016 16:25:10 -0500 (Kevin Lin) +------------------------------------------ + * bb#11514 - check packSizes prior to dereference + +Mon, 7 Mar 2016 16:10:09 -0500 (Kevin Lin) +------------------------------------------ + * bb#11514 - fixed inconsistent folder state on failure + +Mon, 7 Mar 2016 15:11:08 -0500 (Kevin Lin) +------------------------------------------ + * bb#11514 - pre-check on (*unpackSizes) dereference + +Mon, 7 Mar 2016 13:56:42 -0500 (Kevin Lin) +------------------------------------------ + * bb11514 - fix on pre-checks on dereferenced array + +Fri, 4 Mar 2016 16:57:14 -0500 (Kevin Lin) +------------------------------------------ + * bb11514 - pre-checks on dereferenced array size values (not =0) + +Wed, 2 Mar 2016 13:57:03 -0500 (Mickey Sola) +------------------------------------------ + * bb-11514 - adding sanity checks to 7z header parsing + +Tue, 1 Mar 2016 12:43:01 -0500 (Kevin Lin) +------------------------------------------ + * bb#11514 - fixed mew source read issue + +Fri, 4 Mar 2016 17:05:01 -0500 (Steven Morgan) +------------------------------------------ + * bb11188 - Upgrade to use libtool 2.4.6 for ClamAV building: fixes issues + with MacOSX 10.10 and 10.11. + +Tue, 1 Mar 2016 12:34:48 -0500 (Kevin Lin) +------------------------------------------ + * bb#11513 - documentation update on targets + +Mon, 29 Feb 2016 16:58:19 -0500 (Kevin Lin) +------------------------------------------ + * filetype consistency + +Mon, 29 Feb 2016 11:34:25 -0500 (Kevin Lin) +------------------------------------------ + * move llvm option flag handling to new m4 file + +Wed, 24 Feb 2016 13:29:42 -0500 (Kevin Lin) +------------------------------------------ + * hwp5.x: fix for streams without names + +Wed, 24 Feb 2016 18:45:00 -0500 (Steven Morgan) +------------------------------------------ + * ClamAV 0.99.1 release build. + +Wed, 24 Feb 2016 13:29:42 -0500 (Kevin Lin) +------------------------------------------ + * hwp5.x: fix for streams without names + +Sat, 20 Feb 2016 15:53:48 +0100 (Sebastian Andrzej Siewior) +------------------------------------------ + * libclamav: yara: avoid unaliged access to 64bit variable + +Fri, 19 Feb 2016 16:16:39 -0500 (Mickey Sola) +------------------------------------------ + * bb11496 - adding signal handling to clamav-milter to allow for socket + removal and cleanup at close + +Thu, 18 Feb 2016 11:44:54 -0500 (Kevin Lin) +------------------------------------------ + * hwp3.x: enable password cancelling of parsing + +Wed, 17 Feb 2016 18:12:58 -0500 (Steven Morgan) +------------------------------------------ + * Kick out yara rules containing single byte subpatterns. + +Tue, 16 Feb 2016 14:15:18 -0500 (Kevin Lin) +------------------------------------------ + * added 'CustomXML' as trigger for likely OOXML + +Tue, 16 Feb 2016 12:04:14 -0500 (Kevin Lin) +------------------------------------------ + * fix make check issue with llvm builds with assertion + +Thu, 11 Feb 2016 15:56:47 -0500 (Mickey Sola) +------------------------------------------ + * bb11455 - patch by Mark Allan to add show-progress option to freshclam. + +Tue, 9 Feb 2016 13:46:13 -0500 (Mickey Sola) +------------------------------------------ + * bb10568 - patch from Andreas Cadhalpun to add systemd support for + clamd and freshclam + +Mon, 8 Feb 2016 11:28:42 -0500 (Kevin Lin) +------------------------------------------ + * PCRE2 support + +Mon, 8 Feb 2016 11:25:43 -0500 (Kevin Lin) +------------------------------------------ + * clamconf: reports usage of PCRE2 + +Tue, 3 Feb 2016 17:30:00 -0500 (Steven Morgan) +------------------------------------------ + * ClamAV 0.99.1 beta1 release. + +Tue, 2 Feb 2016 14:23:13 -0500 (Kevin Lin) +------------------------------------------ + * add scanning options for scanning xml-based documents + (MSXML, OOXML, HWPML) and HWP3 + +Fri, 29 Jan 2016 16:17:40 -0500 (Kevin Lin) +------------------------------------------ + * add dconfs for XDP, MBR, GPT, APM, OOXML, MSXML, and HWP formats + +Tue, 2 Feb 2016 12:38:27 -0500 (Kevin Lin) +------------------------------------------ + * hwp: scan decompressed data on limits exceeded + +Sun, 31 Jan 2016 15:41:54 -0500 (Steven Morgan) +------------------------------------------ + * Fix for signature name length<3 in .ign & .ign2 CVD files. + +Fri, 29 Jan 2016 11:21:46 -0500 (Steven Morgan) +------------------------------------------ + * Change RTF file magic from '{\rtf' to '{\rt' + +Wed, 27 Jan 2016 14:17:47 -0500 (Mickey Sola) +------------------------------------------ + * bb11444 - zeroing out buffer at allocation to avoid writing uninitialized + bytes to a file + +Wed, 20 Jan 2016 16:21:58 -0500 (Mickey Sola) +------------------------------------------ + * bb11446 - adding check for compressed input stream + +Wed, 13 Jan 2016 14:56:46 -0500 (Kevin Lin) +------------------------------------------ + * clean up and boost accuracy to detecting OOXML documents + +Thu, 14 Jan 2016 17:01:01 -0500 (Steven Morgan) +------------------------------------------ + * 11477 - Fix crash when using pcre statistics due to inconsistent memory + management function calls + +Thu, 14 Jan 2016 15:31:02 -0500 (Mickey Sola) +------------------------------------------ + * bb11444: adding check to verify a valid number of rounds for rijndael aes + encryption/decryption + +Wed, 13 Jan 2016 13:18:01 -0500 (Mickey Sola) +------------------------------------------ + * bb11441 - fixing edge case revealed by unit testing + +Tue, 12 Jan 2016 17:20:26 -0500 (Steven Morgan) +------------------------------------------ + * bb11466 - let html be scanned raw when --scan-html=no is in effect. + +Tue, 12 Jan 2016 16:14:40 -0500 (Steven Morgan) +------------------------------------------ + * bb11475: fix crash due to memory overlay with crafted 7z files. + +Tue, 12 Jan 2016 14:30:41 -0500 (Mickey Sola) +------------------------------------------ + * bb11441 - fixing off by one OOB write in htmlnorm + +Mon, 11 Jan 2016 14:47:30 -0500 (Mickey Sola) +------------------------------------------ + * bb11446 - fixing autoit OOB bufferread + +Wed, 6 Jan 2016 14:57:48 -0500 (Mickey Sola) +------------------------------------------ + * sigtool: adding support for decoding cdb sigs + +Tue, 5 Jan 2016 13:13:47 -0500 (Steven Morgan) +------------------------------------------ + * bb11467 - fix embedded http links. + +Tue, 22 Dec 2015 19:04:42 -0500 (Steven Morgan) +------------------------------------------ + * bb11451 - fix guard macro name collision on AIX. + +Tue, 22 Dec 2015 13:36:51 -0500 (Steven Morgan) +------------------------------------------ + * fix regression crash on sid 1005597703 due to uninitialzed + (i.e., garbage initialized) structure. + +Mon, 21 Dec 2015 17:39:47 -0500 (Steven Morgan) +------------------------------------------ + * bb11456 - corrects mso stream prefix value for big endian processors. + Patch by Jim Morris. + +Thu, 17 Dec 2015 16:16:55 -0500 (Kevin Lin) +------------------------------------------ + * ooxml_hwp: add support for filetyping and preclassification + +Thu, 17 Dec 2015 11:04:00 -0500 (Kevin Lin) +------------------------------------------ + * hwpole2: new filetype and handler for hwp embedded ole2 files + +Thu, 17 Dec 2015 12:46:38 -0500 (Mickey Sola) +------------------------------------------ + * bb11443 - fixing possible oob dereference when parsing mbox files + +Tue, 15 Dec 2015 16:12:01 -0500 (Mickey Sola) +------------------------------------------ + * bb11442 - adding explicit wwunpack oob checks + +Tue, 15 Dec 2015 10:53:05 -0500 (Mickey Sola) +------------------------------------------ + * bb11445 - fixing edge case where a null terminator was unintentionally + written into an adjacent buffer. + +Wed, 16 Dec 2015 16:13:05 -0500 (Kevin Lin) +------------------------------------------ + * hwpml: use msxml_parser callback scanner for binary data + +Wed, 16 Dec 2015 16:12:20 -0500 (Kevin Lin) +------------------------------------------ + * msxml_parser: add callback-based scanning mechanism + +Tue, 15 Dec 2015 13:01:40 -0500 (Kevin Lin) +------------------------------------------ + * HWPML: added hwpml_keys for hwpml parsing + +Tue, 15 Dec 2015 10:54:20 -0500 (Kevin Lin) +------------------------------------------ + * add HMPML filetype, tab fixes in filetype.c + +Mon, 14 Dec 2015 16:34:11 -0500 (Kevin Lin) +------------------------------------------ + * Hwp3.x: inflate compressed segment and offset tracking + +Fri, 11 Dec 2015 17:50:40 -0500 (Kevin Lin) +------------------------------------------ + * Hwp3.x file header parsing and preclass + +Wed, 16 Dec 2015 14:56:56 -0500 (Kevin Lin) +------------------------------------------ + * pcre: fixed minimum pcre version check + +Fri, 11 Dec 2015 17:41:38 -0500 (Steven Morgan) +------------------------------------------ + * bb11452 - endianess correction for swf files on sparc - + patch supplied by Jim Morris. + +Wed, 9 Dec 2015 12:15:16 -0500 (Mickey Sola) +------------------------------------------ + * bb11424 - correcting buffer alignemnt for riff detection on sparc systems; + patch by Jim Morris + +Wed, 9 Dec 2015 00:17:41 +0100 (Andreas Cadhalpun) +------------------------------------------ + * fix detection of libcheck without pkg-config file + +Wed, 9 Dec 2015 11:43:35 -0500 (Kevin Lin) +------------------------------------------ + * add HWP5 filetype tracking to preclassification + +Tue, 8 Dec 2015 15:05:30 -0500 (Kevin Lin) +------------------------------------------ + * add HWP 3.x internal filetypes + +Tue, 8 Dec 2015 14:47:12 -0500 (Kevin Lin) +------------------------------------------ + * add hwp5 contents to preclass set + +Fri, 4 Dec 2015 11:55:52 -0500 (Kevin Lin) +------------------------------------------ + * proper identification of HWP file format + +Tue, 8 Dec 2015 18:36:48 -0500 (Steven Morgan) +------------------------------------------ + * bb11438 - strengthen file typing for OOXML. + +Wed, 2 Dec 2015 14:06:32 -0500 (Mickey Sola) +------------------------------------------ + * bb-11099 - normalization of whitelist signatures + +Wed, 2 Dec 2015 16:23:48 -0500 (Steven Morgan) +------------------------------------------ + * github issue #9 - wrong length & offset. + +Wed, 25 Nov 2015 11:30:00 -0500 (Steven Morgan) +------------------------------------------ + * ClamAV 0.99 Release. + +Wed, 4 Nov 2015 14:46:46 -0500 (Steven Morgan) +------------------------------------------ + * ClamAV 0.99-rc2 Release. + +Wed, 4 Nov 2015 14:46:46 -0500 (Steven Morgan) +------------------------------------------ + * bb11420 - fix preclass/cache interaction. + +Fri, 30 Oct 2015 13:34:56 -0400 (Steven Morgan) +------------------------------------------ + * bb11419 - fix valgrind-detected uninitialized value when caching + is disabled. + +Fri, 30 Oct 2015 12:48:26 -0400 (Steven Morgan) +------------------------------------------ + * bb11418 - fix clamdscan segfault when using stream(stdin) input. + +Thu, 29 Oct 2015 17:44:43 -0400 (Kevin Lin) +------------------------------------------ + * bb#11421 - CUD digital signature verification and empty files + +Wed, 28 Oct 2015 17:05:37 -0400 (Kevin Lin) +------------------------------------------ + * change unknown database default to skip from .db + +Thu, 22 Oct 2015 20:50:53 +0200 (Andreas Cadhalpun) +------------------------------------------ + * use pkg-config to determine CHECK_LIBS + +Mon, 26 Oct 2015 15:19:22 -0400 (Kevin Lin) +------------------------------------------ + * bb#11015(2) - refactor automated pwdb target assignment for tdb + +Mon, 26 Oct 2015 11:47:25 -0400 (Kevin Lin) +------------------------------------------ + * fix error reporting for pwdb signature loading + +Mon, 26 Oct 2015 12:49:01 -0400 (Steven Morgan) +------------------------------------------ + * fix crash in clamd scan callback function. + +Thu, 22 Oct 2015 14:50:41 -0400 (Kevin Lin) +------------------------------------------ + * fix for openssl build with specific openssl location + +Mon, 21 Sep 2015 18:28:54 -0400 (Mickey Sola) +------------------------------------------ + * onas: adding better feedback for users attempting to use fanotify + prevention on kernels with unsupported configurations. + +Thu, 15 Oct 2015 15:16:40 -0400 (Mickey Sola) +------------------------------------------ + * onas: adding throttling to notifications when handling fanotify errors + on large files. + +Mon, 5 Oct 2015 13:48:03 -0400 (Mickey Sola) +------------------------------------------ + * onas: adding optional extra scanning for inotify events + +Wed, 14 Oct 2015 09:37:59 -0400 (Mickey Sola) +------------------------------------------ + * onas: improving handling of fanotify read errors for large files. + +Wed, 6 Oct 2015 14:25:00 -0400 (Steven Morgan) +------------------------------------------ + * ClamAV 0.99-rc1 Release. + +Mon, 5 Oct 2015 14:24:58 -0400 (Mickey Sola) +------------------------------------------ + * Configuration patch by Bernd Kuhls to allow for building statically + linked libraries. + +Fri, 2 Oct 2015 12:24:58 -0400 (Steven Morgan) +------------------------------------------ + * bb11209: fix for static-only build for uClibc - patch supplied by + Yann E. Morin. + +Thu, 1 Oct 2015 17:47:37 -0400 (Steven Morgan) +------------------------------------------ + * Add 'virus found' callback. Refactor scan-all API. + +Thu, 1 Oct 2015 17:23:35 -0400 (Steven Morgan) +------------------------------------------ + * Improve freshclam performance - patch posted to clamav-users list by + Andreas Schulze. + +Tue, 29 Sep 2015 11:10:14 -0400 (Mickey Sola) +------------------------------------------ + * onas: preventing use of ddd system to watch '/' + +Mon, 21 Sep 2015 15:05:19 -0400 (Steven Morgan) +------------------------------------------ + * Change ClamAV Windows icon. + +Mon, 21 Sep 2015 14:41:19 -0400 (Mickey Sola) +------------------------------------------ + * Sanity check update patches submitted by Bill Parker + +Fri, 18 Sep 2015 17:43:06 -0400 (Steven Morgan) +------------------------------------------ + * Change windows install directory, change windows Sourcefire artifacts + to Cisco. + +Thu, 17 Sep 2015 16:49:42 -0400 (Mickey Sola) +------------------------------------------ + * onas: changing clamd NotifyOnly option to Prevention and disabling + Prevention option by default. + +Wed, 16 Sep 2015 13:40:19 -0400 (Mickey Sola) +------------------------------------------ + * bb11250 - Removing deprecated function gethostbyname + +Mon, 14 Sep 2015 12:11:47 -0400 (Mickey Sola) +------------------------------------------ + * fanotify: consolidating prevention options into a single NotifyOnly option. + +Mon, 14 Sep 2015 11:46:35 -0400 (Mickey Sola) +------------------------------------------ + * fanotify: adding option to watch and notify on mountpoints. + +Fri, 11 Sep 2015 14:17:35 -0400 (Mickey Sola) +------------------------------------------ + * fanotify: adding clamd configuration toggle options to prevent read and + access attempts + +Thu, 10 Sep 2015 16:43:45 -0400 (Mickey Sola) +------------------------------------------ + * fanotify: adding clamd option to disable ddd + +Wed, 9 Sep 2015 17:58:04 -0400 (Steven Morgan) +------------------------------------------ + * Improve pkgconfig. Patch supplied by Andreas Cadhalpun. + +Wed, 9 Sep 2015 11:19:11 -0400 (Mickey Sola) +------------------------------------------ + * fanotify: blocking fanotify during database reload. + +Tue, 8 Sep 2015 16:15:52 -0400 (Mickey Sola) +------------------------------------------ + * onas: improving handling of thread exit cleanup and db reload. + +Tue, 1 Sep 2015 18:53:45 -0400 (Steven Morgan) +------------------------------------------ + * DLP: refactor inline code CC range checks to table based. Check IIN + range before applying Luhn algorithm. + +Tue, 1 Sep 2015 16:13:00 -0400 (Kevin Lin) +------------------------------------------ + * ac-alt: check last altstr for fixed property in expr analysis + +Fri, 28 Aug 2015 17:10:00 -0400 (Mickey Sola) +------------------------------------------ + * Adding FANOTIFY checks to ddd and onas hash files. + +Fri, 28 Aug 2015 16:03:29 -0400 (Mickey Sola) +------------------------------------------ + * Overhauling clamd onaccess scanning to support dynamic directory + determination. + +Tue, 25 Aug 2015 15:12:03 -0400 (Steven Morgan) +------------------------------------------ + * bb11352 - fix HP-UX 11.11 compile warnings. Patch sent by + Michael Pelletier. + +Tue, 25 Aug 2015 10:53:23 -0400 (Steven Morgan) +------------------------------------------ + * bb11351 - add missing sys/un.h header. Patch by Dmitry Marakasov. + +Mon, 24 Aug 2015 15:17:02 -0400 (Steven Morgan) +------------------------------------------ + * make retcode passed to post-scan callback to be CL_VIRUS when an + heuristic virus was detected. + +Fri, 21 Aug 2015 12:43:26 -0400 (Kevin Lin) +------------------------------------------ + * bb#11377 - stub pcre functions for dynamic library mapping + +Thu, 20 Aug 2015 18:46:30 -0400 (Kevin Lin) +------------------------------------------ + * bb#11377 - search for pcre/pcre.h if pcre.h not found + +Fri, 14 Aug 2015 15:28:02 -0400 (Steven Morgan) +------------------------------------------ + * bb11371 - fix integer underflow. Issue identified by Felix Groebert + and the Google Security Team. + +Fri, 14 Aug 2015 12:22:49 -0400 (Kevin Lin) +------------------------------------------ + * bb#11372 - finalize encrypted hex strings correctly + +Thu, 13 Aug 2015 15:59:27 -0400 (Kevin Lin) +------------------------------------------ + * bb#11370 - do not update mirrors on custom database urls + +Tue, 11 Aug 2015 17:12:15 -0400 (Kevin Lin) +------------------------------------------ + * dconf: disable swizzor heuristic by default + +Mon, 3 Aug 2015 17:18:31 -0400 (Kevin Lin) +------------------------------------------ + * bb#11366 - add 7z heuristic for encrypted header + +Thu, 30 Jul 2015 18:05:09 -0400 (Kevin Lin) +------------------------------------------ + * win32: update 3rdparty pcre to 8.37; clean up pcre sources + +Thu, 30 Jul 2015 17:37:05 -0400 (Kevin Lin) +------------------------------------------ + * tiff: added heuristic check for invalid tiff IFD fields + +Wed, 29 Jul 2015 12:51:19 -0400 (Steven Morgan) +------------------------------------------ + * bb11361 - add file magics for TIFF files. + +Wed, 29 Jul 2015 12:05:44 -0400 (Steven Morgan) +------------------------------------------ + * bb11359 - correct clamdscan handling of the --infected flag for files + excluded with ExcludePath clamd parameter. Patch provided by + devel at rinx dot com. + +Tue, 28 Jul 2015 13:44:41 -0400 (Kevin Lin) +------------------------------------------ + * bb#11196 - autoit script file misclassified as HTML + +Fri, 24 Jul 2015 13:24:11 -0400 (Mickey Sola) +------------------------------------------ + * bb11343: Automatically appennding YARA. to all yara rule sigs. + +Thu, 23 Jul 2015 15:36:16 -0400 (Mickey Sola) +------------------------------------------ + * bb11343: Adding yara-rules (yes|no|only) runtime option for clamscan. + +Thu, 23 Jul 2015 16:37:15 -0400 (Kevin Lin) +------------------------------------------ + * bb#9858 - added target 14 for binary (unidentified) files + +Wed, 22 Jul 2015 18:09:50 -0400 (Kevin Lin) +------------------------------------------ + * sigtool: added nested string alternative handling + +Tue, 21 Jul 2015 16:35:48 -0400 (Mickey Sola) +------------------------------------------ + * bb11343: Adding configure option to remove yara at compile-time. + +Tue, 21 Jul 2015 17:30:14 -0400 (Kevin Lin) +------------------------------------------ + * sigtool: added usage of cli_ldbtokenize to sigtool sigtool: handles + signature modifiers + +Tue, 21 Jul 2015 14:16:14 -0400 (Kevin Lin) +------------------------------------------ + * PCREMaxFileSize now correctly parses sizes (K,M,G suffixes) + +Thu, 16 Jul 2015 12:35:38 -0400 (Kevin Lin) +------------------------------------------ + * dconf: added passwd dconf for archives, applied to unzip + +Tue, 14 Jul 2015 18:26:22 -0400 (Kevin Lin) +------------------------------------------ + * unzip: added scanning of decrypted files + +Tue, 14 Jul 2015 17:25:01 -0400 (Kevin Lin) +------------------------------------------ + * unzip: added traditional PKWARE decryption password verification + +Tue, 14 Jul 2015 17:23:43 -0400 (Kevin Lin) +------------------------------------------ + * pwdb: added name tracking the pwdb entry + +Thu, 9 Jul 2015 17:30:47 -0400 (Kevin Lin) +------------------------------------------ + * engine: added .pwdb handler and storage + +Wed, 15 Jul 2015 17:08:17 -0400 (Mickey Sola) +------------------------------------------ + * bb11253: Upgrading win32 pthreads to version 2.9.1 + +Thu, 9 Jul 2015 15:35:49 -0400 (Mickey Sola) +------------------------------------------ + * bb11219: Fixing scanscript to scan on a normalized map when using + relative offsets with type 7 signatures. + +Wed, 8 Jul 2015 12:16:03 -0400 (Kevin Lin) +------------------------------------------ + * bb#11356 - fixed an issue regarding yara_exec OP_OF + +Tue, 7 Jul 2015 16:46:19 -0400 (Mickey Sola) +------------------------------------------ + * Adding ascii file normalization option to sigtool. + +Tue, 7 Jul 2015 14:02:57 -0400 (Kevin Lin) +------------------------------------------ + * check-matcher: added prefix altstr test cases + +Thu, 2 Jul 2015 15:06:04 -0400 (Kevin Lin) +------------------------------------------ + * matcher-ac: added calc and storage for min/max lengths + +Wed, 1 Jul 2015 16:53:07 -0400 (Kevin Lin) +------------------------------------------ + * ac_special: tracks both the min and max lengths + +Wed, 1 Jul 2015 16:14:14 -0400 (Steven Morgan) +------------------------------------------ + * bb11348 - Patch for HPUX sent by Michael Pelletier. + +Fri, 19 Jun 2015 16:33:59 -0400 (Steven Morgan) +------------------------------------------ + * Add support for YARA private rules and referencing other rules in a + YARA condition. + +Sat, 22 Nov 2014 15:26:02 +0100 (Andreas Cadhalpun) +------------------------------------------ + * Avoid emitting incremental progress messages when not outputting to a + terminal. + +Tue, 16 Jun 2015 14:56:32 -0400 (Mickey Sola) +------------------------------------------ + * bb-11305: Initialized dbstat entries after clamd first loads. + +Wed, 10 Jun 2015 17:39:50 -0400 (Steven Morgan) +------------------------------------------ + * add unit tests for offset matching yara rules using 'at' and 'in' keywords. + +Tue, 9 Jun 2015 11:12:20 -0400 (Kevin Lin) +------------------------------------------ + * unit_test: pcre and sigopt test cases added to check_matchers + +Fri, 5 Jun 2015 11:28:50 -0400 (Kevin Lin) +------------------------------------------ + * unit_tests: added a few pcre test cases + +Fri, 5 Jun 2015 11:11:35 -0400 (Kevin Lin) +------------------------------------------ + * pcre: added warnings in regard to CVE-2015-3210 + +Thu, 4 Jun 2015 17:14:26 -0400 (Mickey Sola) +------------------------------------------ + * bb-11149: Fixing bzip2 scan to cease scanning after reaching max filesize. + +Wed, 3 Jun 2015 15:28:39 -0400 (Kevin Lin) +------------------------------------------ + * unit_test: basis for pcre subsig testing + +Mon, 1 Jun 2015 17:48:39 -0400 (Kevin Lin) +------------------------------------------ + * removed offset 0 limitation on cli_scanraw (revert change from 0.95.2) + +Mon, 1 Jun 2015 17:45:14 -0400 (Kevin Lin) +------------------------------------------ + * updated internal msxml 2003 file magics + +Mon, 1 Jun 2015 16:33:03 -0400 (Kevin Lin) +------------------------------------------ + * added 'PCRE_STATIC' to preprocessor macros for 3rdparty pcre linking + +Fri, 29 May 2015 16:08:35 -0400 (Kevin Lin) +------------------------------------------ + * added pcre source for windows build; needs trimming + +Thu, 28 May 2015 18:10:54 -0400 (Kevin Lin) +------------------------------------------ + * win32: added yara compiler source to build + +Thu, 28 May 2015 18:00:16 -0400 (Steven Morgan) +------------------------------------------ + * Add the YARA compiler files. + +Thu, 28 May 2015 17:50:20 -0400 (Kevin Lin) +------------------------------------------ + * win32: updated sources to include new yara sources + +Wed, 27 May 2015 18:27:48 -0400 (Steven Morgan) +------------------------------------------ + * Enable YARA include directives, import YARA compiler struct and + functions, improve YARA parse/lex error messages. + +Thu, 21 May 2015 15:04:22 -0400 (Kevin Lin) +------------------------------------------ + * altstr: optimized fixed length alternate runtime + +Thu, 21 May 2015 15:03:46 -0400 (Kevin Lin) +------------------------------------------ + * added implementation of cli_qsort_r (qsort with cb arg) + +Tue, 19 May 2015 12:21:36 -0400 (Kevin Lin) +------------------------------------------ + * yara: added support for PUA, IGN, and sigload_cb + +Tue, 19 May 2015 12:04:59 -0400 (Kevin Lin) +------------------------------------------ + * ac_special_altstr: sigopt support + +Mon, 18 May 2015 09:59:04 -0400 (Kevin Lin) +------------------------------------------ + * matcher-ac: wildcard support for variable alternates (needs optimization) + +Thu, 14 May 2015 13:03:21 -0400 (Steven Morgan) +------------------------------------------ + * bb6934 - Incorporate Bill Parker's DLP functions for Canadian RTN/EFT + and U.S. MICR codes. TBD - options for invoking those functions. + +Thu, 14 May 2015 12:47:54 -0400 (Kevin Lin) +------------------------------------------ + * ac: verifier alternative to handling nocase + +Wed, 13 May 2015 17:48:22 -0400 (Kevin Lin) +------------------------------------------ + * matcher-ac: expansion of nested alternates within alternate expr + matcher-ac: three types of alternates: byte, fixed, and generic + +Wed, 13 May 2015 17:27:44 -0400 (Steven Morgan) +------------------------------------------ + * bb6230 - additional credit/debit card checks for dlp.c. Function by + Bill Parker. + +Mon, 11 May 2015 11:55:43 -0400 (Kevin Lin) +------------------------------------------ + * matcher-ac: basic framework+debug for processing nested alternates + +Fri, 8 May 2015 15:52:30 -0400 (Steven Morgan) +------------------------------------------ + * bb10731 specify group for socket of which user is not a member - patch by + Sebastian Andrzej Siewior. + +Fri, 1 May 2015 17:15:55 -0400 (Steven Morgan) +------------------------------------------ + * Improve fidelity of reporting error conditions from YARA strings and + to continue processing additional YARA rules within files where previous + string errors are found. + +Wed, 29 Apr 2015 17:17:31 -0400 (Kevin Lin) +------------------------------------------ + * msxml: virus detection and allmatch fixes + +Tue, 28 Apr 2015 17:28:23 -0400 (Kevin Lin) +------------------------------------------ + * bb#11306 - LZMA decompression support for flash files + +Tue, 28 Apr 2015 14:56:14 -0400 (Kevin Lin) +------------------------------------------ + * added default filetype magic for LZMA compressed SWF + +Wed, 22 Apr 2015 04:34:02 -0400 (Kevin Lin) +------------------------------------------ + * ole2: added MSO inflation and scanning (detached) + +Mon, 27 Apr 12:00:00 EDT +----------------------------------- + * 0.98.7 Release. + +Tue, 14 Apr 2015 15:53:17 EDT (klin) +----------------------------------- + * bb#11296 - various fixes to pdf string base64 string conversion + +Mon, 13 Apr 2015 12:14:41 EDT (smorgan) +----------------------------------- + * bb11298 - look for TOC element name + (as a synonynm for ). Continue processing rather + than exit in the event of missing or error in TOC checksum specification. + +Wed, 8 Apr 2015 15:51:04 EDT (smorgan) +----------------------------------- + * iso9660: remove unnecessaty parameter on iso_parse_dir() and reset return + code when scanall is in effect. + +Wed, 1 Apr 2015 17:41:59 EDT (klin) +----------------------------------- + * pdf: correctly handle decoding, decryption, character set conversions, + and file properties collection(base64 encoded as needed). + +Fri, 27 Mar 2015 13:21:49 EDT (klin) +----------------------------------- + * converted cb_file_props from using engine-based ctx to file-based ctx + +Thu, 26 Mar 2015 12:24:02 EDT (smorgan) +----------------------------------- + * bb11281 - Reworked reverted upack.c crash patch to fix regression + false negatives. + +Tue, 24 Mar 2015 12:06:57 EDT (klin) +----------------------------------- + * make check: added env check 'T' to set timeout + +Mon, 23 Mar 2015 17:58:35 EDT (klin) +----------------------------------- + * bb#11282 - patch for code clean up in rebuildpe. Patch + supplied by Sebastian Andrzej Siewior. + +Mon, 23 Mar 2015 13:04:54 EDT (klin) +----------------------------------- + * bb#11284 - fixed integer underflow in detecting W32.Polipos.A method. + Patch supplied by Sebastian Andrzej Siewior. + +Mon, 16 Mar 2015 18:35:14 EDT (klin) +----------------------------------- + * updated documentation on document property collection + +Mon, 16 Mar 2015 18:26:07 EDT (klin) +----------------------------------- + * added support for MS Office 2003 XML(msxml) document types and msxml + file properties collection. + +Mon, 16 Mar 2015 13:11:56 EDT (klin) +----------------------------------- + * fixed converity issue ID 12109 buffer was not freed on rare error case + +Mon, 16 Mar 2015 13:08:03 EDT (klin) +----------------------------------- + * fixed coverity ID 12110 12111 changed a the type of a value from unsigned + to signed due to possible negative values + +Thu, 12 Mar 2015 19:06:23 EDT (smorgan) +----------------------------------- + * Fix for infinite loop on crafted xz file. + +Wed, 11 Mar 2015 15:03:43 EDT (smorgan) +----------------------------------- + * bb11278 - was not detecting viruses on files inside iso9660. + Also fix up all-match logic. + +Mon, 9 Mar 2015 13:02:25 EDT (smorgan) +----------------------------------- + * bb11274 - adds out of bounds check for petite packed files. + Patch from Sebastian Andrzej Siewior. + +Wed, 4 Mar 2015 14:04:24 EDT (klin) +----------------------------------- + * updated example fileprop analysis bytecodes moved old example bytecodes + to examples/fileprop_analysis/old/ + +Wed, 4 Mar 2015 12:08:34 EDT (klin) +----------------------------------- + * backwards compatibility for target type 13 json scanning + +Tue, 3 Mar 2015 17:47:55 EDT (klin) +----------------------------------- + * generates fmap from desc if no map is NULL + +Tue, 3 Mar 2015 16:37:08 EDT (smorgan) +----------------------------------- + * Apply y0da cryptor patch sent in by Sebastian Andrzej Siewior. + +Tue, 3 Mar 2015 16:12:48 EDT (klin) +----------------------------------- + * flevel updated to 80 (new bytecode hook type) + +Tue, 3 Mar 2015 16:12:22 EDT (klin) +----------------------------------- + * clambc info option updated for new hook type + +Tue, 3 Mar 2015 15:00:41 EDT (klin) +----------------------------------- + * added BC_PRECLASS hook support; replaces target type 13 + +Mon, 2 Mar 2015 19:06:23 EDT (klin) +----------------------------------- + * pdf string UTF-16 conversion no longer solely depends on ICONV reason: + no ICONV meant no conversion even though conversion function existed + +Fri, 27 Feb 2015 15:23:51 EDT (klin) +----------------------------------- + * bb#11269 - bm matcher no longer sets scanning window offset reason: + certain segments could be hashed multiple times + +Wed, 25 Feb 2015 14:55:21 EDT (klin) +----------------------------------- + * bb#11269 - hash does not compute on segments smaller than the maxpatlen + +Tue, 24 Feb 2015 16:21:09 EDT (klin) +----------------------------------- + * bb#11267 - libclamav upx cover against hand crafted section ove patch + supplied bySebastian Andrzej Siewior. + +Fri, 27 Feb 2015 16:57:19 EDT (smorgan) +----------------------------------- + * Patch for integer overflow checks for petite unpack code supplied by + Sebastian Andrzej Siewior. + +Fri, 27 Feb 2015 16:54:55 EDT (smorgan) +----------------------------------- + * remove obsolete parameters from the clamd.conf man page: MailMaxRecursion, + ArchiveMaxFileSize, ArchiveMaxRecursion, ArchiveMaxFiles, + ArchiveMaxCompressionRatio, ArchiveBlockMax, ArchiveLimitMemoryUsage, Clamuko*. + +Wed, 18 Feb 2015 15:23:54 EDT (klin) +----------------------------------- + * bb#11212 - fix MEW unpacker + +Mon, 16 Feb 2015 11:46:21 EDT (smorgan) +----------------------------------- + * bb11264 - patch for 'possible' heap overflow submitted by the Debian team. + +Tue, 10 Feb 2015 15:16:48 EDT (smorgan) +----------------------------------- + * bb11260: fix compile error when './configure --disable-pthreads' is specified. + +Fri, 6 Feb 2015 14:59:43 EDT (klin) +----------------------------------- + * bb#11254 - removed built-in llvm configure check and added + --with-llvm-linking option to specify system-llvm linking method + +Fri, 6 Feb 2015 13:22:35 EDT (klin) +----------------------------------- + * improved documentation on macro subsignatures + +Wed, 4 Feb 2015 18:52:01 EDT (smorgan) +----------------------------------- + * fix documentation errors in example logical signature. + +Fri, 30 Jan 2015 12:15:07 EDT (klin) +----------------------------------- + * bb#12887 - fixed an issue regarding (fd==-1) in WinAPI + +Wed, 28 Jan 2015 11:20:35 EDT (klin) +----------------------------------- + * fixed Windows API SetOption/GetOption CLAM_LIMIT_RECURSION + +Wed, 21 Jan 2015 11:41:07 EDT (klin) +----------------------------------- + * added ICONV to clamconf optional features report + +Thu, 15 Jan 2015 15:15:01 EDT (klin) +----------------------------------- + * fixed an incorrect return value for magic_scandesc + +Wed, 14 Jan 2015 09:25:47 EDT (klin) +----------------------------------- + * cleaned up configure help strings by using AS_HELP_STRING + +Mon, 12 Jan 2015 13:45:36 EDT (klin) +----------------------------------- + * bb#11238 - added missing PDF preclass operations + > added whitespace fix for indirect references strings + > added PDF escape sequence handling (including octal) + +Thu, 8 Jan 2015 09:48:20 EDT (klin) +----------------------------------- + * bb#11237 - fixed bug in building CUD file + +Wed, 7 Jan 2015 04:46:15 EDT (smorgan) +----------------------------------- + * bb11233 - fix a strange bus error on Mac OS X PPC when using debug mode. + +Mon, 22 Dec 2014 12:13:38 EDT (klin) +----------------------------------- + * bb#11226 - fixed gpt GUID debugging message + + *** End of 0.98.6, Start of 0.98.7 + Tue Dec 16 16:21:40 2014 EDT (swebb) ------------------------------------- diff -Nru clamav-0.98.6+dfsg/clamav-config.h.in clamav-0.99.2+addedllvm/clamav-config.h.in --- clamav-0.98.6+dfsg/clamav-config.h.in 2014-12-18 21:43:18.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamav-config.h.in 2016-04-22 15:02:18.000000000 +0000 @@ -87,6 +87,9 @@ /* "default FD_SETSIZE value" */ #undef DEFAULT_FD_SETSIZE +/* enable libfreshclam */ +#undef ENABLE_LIBFRESHCLAM + /* use fanotify */ #undef FANOTIFY @@ -285,6 +288,9 @@ /* Define to 1 if you have the `opendir' function. */ #undef HAVE_OPENDIR +/* Define to 1 if you have a pcre library (-lpcre). */ +#undef HAVE_PCRE + /* Define to 1 if you have the `poll' function. */ #undef HAVE_POLL @@ -381,6 +387,12 @@ /* Define to 1 if you have the `sysctlbyname' function. */ #undef HAVE_SYSCTLBYNAME +/* systemd is supported */ +#undef HAVE_SYSTEMD + +/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_CDEFS_H + /* Define to 1 if you have the header file. */ #undef HAVE_SYS_DL_H @@ -399,6 +411,9 @@ /* Define to 1 if you have the header file. */ #undef HAVE_SYS_PARAM_H +/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_QUEUE_H + /* "have " */ #undef HAVE_SYS_SELECT_H @@ -432,6 +447,9 @@ /* This value is set to 1 to indicate that the system argz facility works */ #undef HAVE_WORKING_ARGZ +/* yara sources are compiled in */ +#undef HAVE_YARA + /* For internal use only - DO NOT DEFINE */ #undef HAVE__INTERNAL__SHA_COLLECT @@ -460,13 +478,15 @@ module search path. */ #undef LT_MODULE_PATH_VAR -/* Define to the sub-directory in which libtool stores uninstalled libraries. - */ +/* Define to the sub-directory where libtool stores uninstalled libraries. */ #undef LT_OBJDIR /* Define to the shared library suffix, say, ".dylib". */ #undef LT_SHARED_EXT +/* Define to the shared archive member specification, say "(shr.o)". */ +#undef LT_SHARED_LIB_MEMBER + /* disable assertions */ #undef NDEBUG @@ -555,6 +575,9 @@ #endif +/* Define to 1 if you using the pcre2 library. */ +#undef USING_PCRE2 + /* Version number of package */ #undef VERSION @@ -573,6 +596,10 @@ # endif #endif +/* Define to 1 if `lex' declares `yytext' as a `char *' by default, not a + `char[]'. */ +#undef YYTEXT_POINTER + /* Define to 1 to make fseeko visible on some hosts (e.g. glibc 2.2). */ #undef _LARGEFILE_SOURCE @@ -601,7 +628,7 @@ /* Define to empty if `const' does not conform to ANSI C. */ #undef const -/* Define to a type to use for `error_t' if it is not otherwise available. */ +/* Define to a type to use for 'error_t' if it is not otherwise available. */ #undef error_t /* Define to `__inline__' or `__inline' if that's what the C compiler diff -Nru clamav-0.98.6+dfsg/clamav-milter/clamav-milter.c clamav-0.99.2+addedllvm/clamav-milter/clamav-milter.c --- clamav-0.98.6+dfsg/clamav-milter/clamav-milter.c 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamav-milter/clamav-milter.c 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C)2008 Sourcefire, Inc. * * Author: aCaB @@ -28,6 +29,8 @@ #include #include #include +#include +#include #ifdef USE_SYSLOG #include #endif @@ -47,15 +50,57 @@ #include "whitelist.h" struct smfiDesc descr; +struct optstruct *opts; + +static void milter_exit(int sig) { + const struct optstruct *opt; + + logg("*clamav-milter: milter_exit, signal %d\n", sig); + +#ifndef _WIN32 + if((opt = optget(opts, "MilterSocket"))) { + if(unlink(opt->strarg) == -1) + logg("!Can't unlink the socket file %s\n", opt->strarg); + else + logg("Socket file removed.\n"); + } +#endif + + logg("clamav-milter: stopped\n"); + + optfree(opts); + + logg_close(); + cpool_free(); + localnets_free(); + whitelist_free(); +} int main(int argc, char **argv) { char *my_socket, *pt; const struct optstruct *opt; - struct optstruct *opts; time_t currtime; mode_t umsk; int ret; + sigset_t sigset; + struct sigaction act; + + sigfillset(&sigset); + sigdelset(&sigset, SIGUSR1); + sigdelset(&sigset, SIGFPE); + sigdelset(&sigset, SIGILL); + sigdelset(&sigset, SIGSEGV); +#ifdef SIGBUS + sigdelset(&sigset, SIGBUS); +#endif + pthread_sigmask(SIG_SETMASK, &sigset, NULL); + memset(&act, 0, sizeof(struct sigaction)); + act.sa_handler = milter_exit; + sigfillset(&(act.sa_mask)); + sigaction(SIGUSR1, &act, NULL); + sigaction(SIGSEGV, &act, NULL); + cl_initialize_crypto(); memset(&descr, 0, sizeof(struct smfiDesc)); @@ -98,6 +143,10 @@ } pt = strdup(optget(opts, "config-file")->strarg); + if (pt == NULL) { + printf("Unable to allocate memory for config file\n"); + return 1; + } if((opts = optparse(pt, 0, NULL, 1, OPT_MILTER, 0, opts)) == NULL) { printf("%s: cannot parse config file %s\n", argv[0], pt); free(pt); @@ -116,6 +165,131 @@ } } + pt = optget(opts, "AddHeader")->strarg; + if (strcasecmp(pt, "No")) { + char myname[255]; + + if (((opt = optget(opts, "ReportHostname"))->enabled && + strncpy(myname, opt->strarg, sizeof(myname))) || + !gethostname(myname, sizeof(myname))) { + + myname[sizeof(myname)-1] = '\0'; + snprintf(xvirushdr, sizeof(xvirushdr), "clamav-milter %s at %s", + get_version(), myname); + } else { + snprintf(xvirushdr, sizeof(xvirushdr), "clamav-milter %s", + get_version()); + } + xvirushdr[sizeof(xvirushdr)-1] = '\0'; + + descr.xxfi_flags |= SMFIF_ADDHDRS; + + if (strcasecmp(pt, "Add")) { /* Replace or Yes */ + descr.xxfi_flags |= SMFIF_CHGHDRS; + addxvirus = 1; + } else { /* Add */ + addxvirus = 2; + } + } + + if(!(my_socket = optget(opts, "MilterSocket")->strarg)) { + logg("!Please configure the MilterSocket directive\n"); + logg_close(); + optfree(opts); + return 1; + } + + if(smfi_setconn(my_socket) == MI_FAILURE) { + logg("!smfi_setconn failed\n"); + logg_close(); + optfree(opts); + return 1; + } + if(smfi_register(descr) == MI_FAILURE) { + logg("!smfi_register failed\n"); + logg_close(); + optfree(opts); + return 1; + } + opt = optget(opts, "FixStaleSocket"); + umsk = umask(0777); /* socket is created with 000 to avoid races */ + if(smfi_opensocket(opt->enabled) == MI_FAILURE) { + logg("!Failed to create socket %s\n", my_socket); + logg_close(); + optfree(opts); + return 1; + } + umask(umsk); /* restore umask */ + if(strncmp(my_socket, "inet:", 5) && strncmp(my_socket, "inet6:", 6)) { + /* set group ownership and perms on the local socket */ + char *sock_name = my_socket; + mode_t sock_mode; + if(!strncmp(my_socket, "unix:", 5)) + sock_name += 5; + if(!strncmp(my_socket, "local:", 6)) + sock_name += 6; + if(*my_socket == ':') + sock_name ++; + + if(optget(opts, "MilterSocketGroup")->enabled) { + char *gname = optget(opts, "MilterSocketGroup")->strarg, *end; + gid_t sock_gid = strtol(gname, &end, 10); + if(*end) { + struct group *pgrp = getgrnam(gname); + if(!pgrp) { + logg("!Unknown group %s\n", gname); + logg_close(); + optfree(opts); + return 1; + } + sock_gid = pgrp->gr_gid; + } + if(chown(sock_name, -1, sock_gid)) { + logg("!Failed to change socket ownership to group %s\n", gname); + logg_close(); + optfree(opts); + return 1; + } + } + + if ((opt = optget(opts, "User"))->enabled) { + struct passwd *user; + if ((user = getpwnam(opt->strarg)) == NULL) { + logg("ERROR: Can't get information about user %s.\n", + opt->strarg); + logg_close(); + optfree(opts); + return 1; + } + + if(chown(sock_name, user->pw_uid, -1)) { + logg("!Failed to change socket ownership to user %s\n", user->pw_name); + optfree(opts); + logg_close(); + return 1; + } + } + + if(optget(opts, "MilterSocketMode")->enabled) { + char *end; + sock_mode = strtol(optget(opts, "MilterSocketMode")->strarg, &end, 8); + if(*end) { + logg("!Invalid MilterSocketMode %s\n", optget(opts, "MilterSocketMode")->strarg); + logg_close(); + optfree(opts); + return 1; + } + } else + sock_mode = 0777 & ~umsk; + + if(chmod(sock_name, sock_mode & 0666)) { + logg("!Cannot set milter socket permission to %s\n", optget(opts, "MilterSocketMode")->strarg); + logg_close(); + optfree(opts); + return 1; + } + } + if(geteuid() == 0 && (opt = optget(opts, "User"))->enabled) { struct passwd *user = NULL; if((user = getpwnam(opt->strarg)) == NULL) { @@ -225,38 +399,8 @@ return 1; } - pt = optget(opts, "AddHeader")->strarg; - if(strcasecmp(pt, "No")) { - char myname[255]; - - if(((opt = optget(opts, "ReportHostname"))->enabled && strncpy(myname, opt->strarg, sizeof(myname))) || !gethostname(myname, sizeof(myname))) { - myname[sizeof(myname)-1] = '\0'; - snprintf(xvirushdr, sizeof(xvirushdr), "clamav-milter %s at %s", get_version(), myname); - } else - snprintf(xvirushdr, sizeof(xvirushdr), "clamav-milter %s", get_version()); - xvirushdr[sizeof(xvirushdr)-1] = '\0'; - - descr.xxfi_flags |= SMFIF_ADDHDRS; - - if(strcasecmp(pt, "Add")) { /* Replace or Yes */ - descr.xxfi_flags |= SMFIF_CHGHDRS; - addxvirus = 1; - } else { /* Add */ - addxvirus = 2; - } - } - multircpt = optget(opts, "SupportMultipleRecipients")->enabled; - if(!(my_socket = optget(opts, "MilterSocket")->strarg)) { - logg("!Please configure the MilterSocket directive\n"); - localnets_free(); - whitelist_free(); - logg_close(); - optfree(opts); - return 1; - } - if(!optget(opts, "Foreground")->enabled) { if(daemonize() == -1) { logg("!daemonize() failed\n"); @@ -271,92 +415,6 @@ logg("^Can't change current working directory to root\n"); } - if(smfi_setconn(my_socket) == MI_FAILURE) { - logg("!smfi_setconn failed\n"); - localnets_free(); - whitelist_free(); - logg_close(); - optfree(opts); - return 1; - } - if(smfi_register(descr) == MI_FAILURE) { - logg("!smfi_register failed\n"); - localnets_free(); - whitelist_free(); - logg_close(); - optfree(opts); - return 1; - } - opt = optget(opts, "FixStaleSocket"); - umsk = umask(0777); /* socket is created with 000 to avoid races */ - if(smfi_opensocket(opt->enabled) == MI_FAILURE) { - logg("!Failed to create socket %s\n", my_socket); - localnets_free(); - whitelist_free(); - logg_close(); - optfree(opts); - return 1; - } - umask(umsk); /* restore umask */ - if(strncmp(my_socket, "inet:", 5) && strncmp(my_socket, "inet6:", 6)) { - /* set group ownership and perms on the local socket */ - char *sock_name = my_socket; - mode_t sock_mode; - if(!strncmp(my_socket, "unix:", 5)) - sock_name += 5; - if(!strncmp(my_socket, "local:", 6)) - sock_name += 6; - if(*my_socket == ':') - sock_name ++; - - if(optget(opts, "MilterSocketGroup")->enabled) { - char *gname = optget(opts, "MilterSocketGroup")->strarg, *end; - gid_t sock_gid = strtol(gname, &end, 10); - if(*end) { - struct group *pgrp = getgrnam(gname); - if(!pgrp) { - logg("!Unknown group %s\n", gname); - localnets_free(); - whitelist_free(); - logg_close(); - optfree(opts); - return 1; - } - sock_gid = pgrp->gr_gid; - } - if(chown(sock_name, -1, sock_gid)) { - logg("!Failed to change socket ownership to group %s\n", gname); - localnets_free(); - whitelist_free(); - logg_close(); - optfree(opts); - return 1; - } - } - if(optget(opts, "MilterSocketMode")->enabled) { - char *end; - sock_mode = strtol(optget(opts, "MilterSocketMode")->strarg, &end, 8); - if(*end) { - logg("!Invalid MilterSocketMode %s\n", optget(opts, "MilterSocketMode")->strarg); - localnets_free(); - whitelist_free(); - logg_close(); - optfree(opts); - return 1; - } - } else - sock_mode = 0777 & ~umsk; - - if(chmod(sock_name, sock_mode & 0666)) { - logg("!Cannot set milter socket permission to %s\n", optget(opts, "MilterSocketMode")->strarg); - localnets_free(); - whitelist_free(); - logg_close(); - optfree(opts); - return 1; - } - } - maxfilesize = optget(opts, "MaxFileSize")->numarg; if(!maxfilesize) { logg("^Invalid MaxFileSize, using default (%d)\n", CLI_DEFAULT_MAXFILESIZE); @@ -389,16 +447,7 @@ umask(old_umask); } - ret = smfi_main(); - - optfree(opts); - - logg_close(); - cpool_free(); - localnets_free(); - whitelist_free(); - - return ret; + return smfi_main(); } /* diff -Nru clamav-0.98.6+dfsg/clamav-milter/clamfi.c clamav-0.99.2+addedllvm/clamav-milter/clamfi.c --- clamav-0.98.6+dfsg/clamav-milter/clamfi.c 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamav-milter/clamfi.c 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C)2008 Sourcefire, Inc. * * Author: aCaB diff -Nru clamav-0.98.6+dfsg/clamav-milter/clamfi.h clamav-0.99.2+addedllvm/clamav-milter/clamfi.h --- clamav-0.98.6+dfsg/clamav-milter/clamfi.h 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamav-milter/clamfi.h 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C)2008 Sourcefire, Inc. * * Author: aCaB diff -Nru clamav-0.98.6+dfsg/clamav-milter/connpool.c clamav-0.99.2+addedllvm/clamav-milter/connpool.c --- clamav-0.98.6+dfsg/clamav-milter/connpool.c 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamav-milter/connpool.c 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C)2008 Sourcefire, Inc. * * Author: aCaB diff -Nru clamav-0.98.6+dfsg/clamav-milter/connpool.h clamav-0.99.2+addedllvm/clamav-milter/connpool.h --- clamav-0.98.6+dfsg/clamav-milter/connpool.h 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamav-milter/connpool.h 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C)2008 Sourcefire, Inc. * * Author: aCaB diff -Nru clamav-0.98.6+dfsg/clamav-milter/Makefile.am clamav-0.99.2+addedllvm/clamav-milter/Makefile.am --- clamav-0.98.6+dfsg/clamav-milter/Makefile.am 2014-12-18 21:43:18.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamav-milter/Makefile.am 2016-04-22 15:02:18.000000000 +0000 @@ -47,5 +47,5 @@ DEFS = @DEFS@ -DCL_NOLIBCLAMAV LIBS = $(top_builddir)/libclamav/libclamav_internal_utils.la @CLAMAV_MILTER_LIBS@ @THREAD_LIBS@ -AM_CPPFLAGS = -I$(top_srcdir)/clamd -I$(top_srcdir)/libclamav -I$(top_srcdir)/shared -I$(top_srcdir) @SSL_CPPFLAGS@ @JSON_CPPFLAGS@ +AM_CPPFLAGS = -I$(top_srcdir)/clamd -I$(top_srcdir)/libclamav -I$(top_srcdir)/shared -I$(top_srcdir) @SSL_CPPFLAGS@ @JSON_CPPFLAGS@ @PCRE_CPPFLAGS@ CLEANFILES=*.gcda *.gcno diff -Nru clamav-0.98.6+dfsg/clamav-milter/Makefile.in clamav-0.99.2+addedllvm/clamav-milter/Makefile.in --- clamav-0.98.6+dfsg/clamav-milter/Makefile.in 2014-12-18 21:43:18.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamav-milter/Makefile.in 2016-04-22 16:19:51.000000000 +0000 @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.14 from Makefile.am. +# Makefile.in generated by automake 1.14.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2013 Free Software Foundation, Inc. @@ -104,14 +104,13 @@ $(top_srcdir)/config/depcomp ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/acinclude.m4 \ - $(top_srcdir)/m4/argz.m4 \ $(top_srcdir)/m4/ax_check_uname_syscall.m4 \ $(top_srcdir)/m4/fdpassing.m4 $(top_srcdir)/m4/lib-ld.m4 \ $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/llvm.m4 \ - $(top_srcdir)/m4/ltdl.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/m4/ltargz.m4 $(top_srcdir)/m4/ltdl.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ $(top_srcdir)/m4/mmap_private.m4 $(top_srcdir)/m4/resolv.m4 \ $(top_srcdir)/m4/reorganization/version.m4 \ $(top_srcdir)/m4/reorganization/build_tools.m4 \ @@ -126,9 +125,11 @@ $(top_srcdir)/m4/reorganization/libs/xml.m4 \ $(top_srcdir)/m4/reorganization/libs/openssl.m4 \ $(top_srcdir)/m4/reorganization/libs/json.m4 \ + $(top_srcdir)/m4/reorganization/libs/pcre.m4 \ $(top_srcdir)/m4/reorganization/libs/libz.m4 \ $(top_srcdir)/m4/reorganization/libs/bzip.m4 \ $(top_srcdir)/m4/reorganization/libs/unrar.m4 \ + $(top_srcdir)/m4/reorganization/libs/systemd.m4 \ $(top_srcdir)/m4/reorganization/code_checks/ipv6.m4 \ $(top_srcdir)/m4/reorganization/code_checks/dns.m4 \ $(top_srcdir)/m4/reorganization/code_checks/fanotify.m4 \ @@ -165,6 +166,8 @@ $(top_srcdir)/m4/reorganization/distcheck.m4 \ $(top_srcdir)/m4/reorganization/llvm.m4 \ $(top_srcdir)/m4/reorganization/sha_collect.m4 \ + $(top_srcdir)/m4/reorganization/yara.m4 \ + $(top_srcdir)/m4/reorganization/libfreshclam.m4 \ $(top_srcdir)/m4/reorganization/bsd.m4 \ $(top_srcdir)/m4/reorganization/libs/curl.m4 \ $(top_srcdir)/m4/reorganization/substitutions.m4 \ @@ -295,7 +298,6 @@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ -ARGZ_H = @ARGZ_H@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ @@ -305,6 +307,7 @@ CCDEPMODE = @CCDEPMODE@ CFGDIR = @CFGDIR@ CFLAGS = @CFLAGS@ +CHECK_CFLAGS = @CHECK_CFLAGS@ CHECK_CPPFLAGS = @CHECK_CPPFLAGS@ CHECK_LIBS = @CHECK_LIBS@ CLAMAVGROUP = @CLAMAVGROUP@ @@ -351,6 +354,7 @@ GETENT = @GETENT@ GPERF = @GPERF@ GREP = @GREP@ +HAVE_YARA = @HAVE_YARA@ INCLTDL = @INCLTDL@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -363,6 +367,9 @@ LCOV = @LCOV@ LD = @LD@ LDFLAGS = @LDFLAGS@ +LEX = @LEX@ +LEXLIB = @LEXLIB@ +LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ LIBADD_DL = @LIBADD_DL@ LIBADD_DLD_LINK = @LIBADD_DLD_LINK@ LIBADD_DLOPEN = @LIBADD_DLOPEN@ @@ -385,9 +392,11 @@ LTDLOPEN = @LTDLOPEN@ LTLIBBZ2 = @LTLIBBZ2@ LTLIBOBJS = @LTLIBOBJS@ +LT_ARGZ_H = @LT_ARGZ_H@ LT_CONFIG_H = @LT_CONFIG_H@ LT_DLLOADERS = @LT_DLLOADERS@ LT_DLPREOPEN = @LT_DLPREOPEN@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -406,6 +415,11 @@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PCRE_CPPFLAGS = @PCRE_CPPFLAGS@ +PCRE_LIBS = @PCRE_LIBS@ +PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ @@ -415,6 +429,8 @@ SSL_LDFLAGS = @SSL_LDFLAGS@ SSL_LIBS = @SSL_LIBS@ STRIP = @STRIP@ +SYSTEMD_CFLAGS = @SYSTEMD_CFLAGS@ +SYSTEMD_LIBS = @SYSTEMD_LIBS@ THREAD_LIBS = @THREAD_LIBS@ TH_SAFE = @TH_SAFE@ VERSION = @VERSION@ @@ -423,6 +439,8 @@ WERR_CFLAGS_MILTER = @WERR_CFLAGS_MILTER@ XML_CPPFLAGS = @XML_CPPFLAGS@ XML_LIBS = @XML_LIBS@ +YACC = @YACC@ +YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -465,6 +483,7 @@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ +pcreconfig = @pcreconfig@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ @@ -475,6 +494,7 @@ subdirs = @subdirs@ sys_symbol_underscore = @sys_symbol_underscore@ sysconfdir = @sysconfdir@ +systemdsystemunitdir = @systemdsystemunitdir@ target = @target@ target_alias = @target_alias@ target_cpu = @target_cpu@ @@ -504,7 +524,7 @@ @BUILD_CLAMD_TRUE@@HAVE_MILTER_TRUE@man_MANS = $(top_builddir)/docs/man/clamav-milter.8 @BUILD_CLAMD_TRUE@@HAVE_MILTER_TRUE@AM_CFLAGS = @WERR_CFLAGS_MILTER@ -AM_CPPFLAGS = -I$(top_srcdir)/clamd -I$(top_srcdir)/libclamav -I$(top_srcdir)/shared -I$(top_srcdir) @SSL_CPPFLAGS@ @JSON_CPPFLAGS@ +AM_CPPFLAGS = -I$(top_srcdir)/clamd -I$(top_srcdir)/libclamav -I$(top_srcdir)/shared -I$(top_srcdir) @SSL_CPPFLAGS@ @JSON_CPPFLAGS@ @PCRE_CPPFLAGS@ CLEANFILES = *.gcda *.gcno all: all-am diff -Nru clamav-0.98.6+dfsg/clamav-milter/netcode.c clamav-0.99.2+addedllvm/clamav-milter/netcode.c --- clamav-0.98.6+dfsg/clamav-milter/netcode.c 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamav-milter/netcode.c 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C)2008 Sourcefire, Inc. * * Author: aCaB diff -Nru clamav-0.98.6+dfsg/clamav-milter/netcode.h clamav-0.99.2+addedllvm/clamav-milter/netcode.h --- clamav-0.98.6+dfsg/clamav-milter/netcode.h 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamav-milter/netcode.h 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C)2008 Sourcefire, Inc. * * Author: aCaB diff -Nru clamav-0.98.6+dfsg/clamav-milter/whitelist.c clamav-0.99.2+addedllvm/clamav-milter/whitelist.c --- clamav-0.98.6+dfsg/clamav-milter/whitelist.c 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamav-milter/whitelist.c 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C)2008-2013 Sourcefire, Inc. * * Author: aCaB diff -Nru clamav-0.98.6+dfsg/clamav-milter/whitelist.h clamav-0.99.2+addedllvm/clamav-milter/whitelist.h --- clamav-0.98.6+dfsg/clamav-milter/whitelist.h 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamav-milter/whitelist.h 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C)2008 Sourcefire, Inc. * * Author: aCaB diff -Nru clamav-0.98.6+dfsg/clambc/bcrun.c clamav-0.99.2+addedllvm/clambc/bcrun.c --- clamav-0.98.6+dfsg/clambc/bcrun.c 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clambc/bcrun.c 2016-04-22 15:02:18.000000000 +0000 @@ -1,6 +1,7 @@ /* * ClamAV bytecode handler tool. * + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C) 2009-2012 Sourcefire, Inc. * * Authors: Török Edvin @@ -50,7 +51,7 @@ printf(" Clam AntiVirus: Bytecode Testing Tool %s\n", get_version()); printf(" By The ClamAV Team: http://www.clamav.net/about.html#credits\n"); - printf(" (C) 2009 Sourcefire, Inc.\n\n"); + printf(" (C) 2009-2015 Cisco Systems, Inc.\n\n"); printf("clambc [function] [param1 ...]\n\n"); printf(" --help -h Show help\n"); printf(" --version -V Show version\n"); @@ -62,7 +63,7 @@ printf(" --printbcir -c Print IR of bytecode signature\n"); printf(" --trace -T Set bytecode trace level 0..7 (default 7)\n"); printf(" --no-trace-showsource -s Don't show source line during tracing\n"); - printf(" --bytecode-statistics Collect and print bytecode execution statistics\n"); + printf(" --statistics=bytecode Collect and print bytecode execution statistics\n"); printf(" file file to test\n"); printf("\n"); return; @@ -246,7 +247,7 @@ FILE *f; struct cli_bc *bc; struct cli_bc_ctx *ctx; - int rc, dbgargc; + int rc, dbgargc, bc_stats=0; struct optstruct *opts; const struct optstruct *opt; unsigned funcid=0, i; @@ -319,8 +320,15 @@ bcs.all_bcs = bc; bcs.count = 1; - rc = cli_bytecode_load(bc, f, NULL, optget(opts, "trust-bytecode")->enabled, - optget(opts, "bytecode-statistics")->enabled); + if((opt = optget(opts, "statistics"))->enabled) { + while(opt) { + if (!strcasecmp(opt->strarg, "bytecode")) + bc_stats=1; + opt = opt->nextarg; + } + } + + rc = cli_bytecode_load(bc, f, NULL, optget(opts, "trust-bytecode")->enabled, bc_stats); if (rc != CL_SUCCESS) { fprintf(stderr,"Unable to load bytecode: %s\n", cl_strerror(rc)); optfree(opts); diff -Nru clamav-0.98.6+dfsg/clambc/Makefile.am clamav-0.99.2+addedllvm/clambc/Makefile.am --- clamav-0.98.6+dfsg/clambc/Makefile.am 2014-12-18 21:43:18.000000000 +0000 +++ clamav-0.99.2+addedllvm/clambc/Makefile.am 2016-04-22 15:02:18.000000000 +0000 @@ -8,7 +8,7 @@ $(top_srcdir)/shared/misc.h \ bcrun.c -AM_CFLAGS=@WERR_CFLAGS@ @SSL_CPPFLAGS@ @JSON_CPPFLAGS@ +AM_CFLAGS=@WERR_CFLAGS@ @SSL_CPPFLAGS@ @JSON_CPPFLAGS@ @PCRE_CPPFLAGS@ AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/shared -I$(top_srcdir)/libclamav LIBS = $(top_builddir)/libclamav/libclamav.la @THREAD_LIBS@ CLEANFILES=*.gcda *.gcno diff -Nru clamav-0.98.6+dfsg/clambc/Makefile.in clamav-0.99.2+addedllvm/clambc/Makefile.in --- clamav-0.98.6+dfsg/clambc/Makefile.in 2014-12-18 21:43:18.000000000 +0000 +++ clamav-0.99.2+addedllvm/clambc/Makefile.in 2016-04-22 16:19:51.000000000 +0000 @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.14 from Makefile.am. +# Makefile.in generated by automake 1.14.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2013 Free Software Foundation, Inc. @@ -85,14 +85,13 @@ $(top_srcdir)/config/depcomp ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/acinclude.m4 \ - $(top_srcdir)/m4/argz.m4 \ $(top_srcdir)/m4/ax_check_uname_syscall.m4 \ $(top_srcdir)/m4/fdpassing.m4 $(top_srcdir)/m4/lib-ld.m4 \ $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/llvm.m4 \ - $(top_srcdir)/m4/ltdl.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/m4/ltargz.m4 $(top_srcdir)/m4/ltdl.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ $(top_srcdir)/m4/mmap_private.m4 $(top_srcdir)/m4/resolv.m4 \ $(top_srcdir)/m4/reorganization/version.m4 \ $(top_srcdir)/m4/reorganization/build_tools.m4 \ @@ -107,9 +106,11 @@ $(top_srcdir)/m4/reorganization/libs/xml.m4 \ $(top_srcdir)/m4/reorganization/libs/openssl.m4 \ $(top_srcdir)/m4/reorganization/libs/json.m4 \ + $(top_srcdir)/m4/reorganization/libs/pcre.m4 \ $(top_srcdir)/m4/reorganization/libs/libz.m4 \ $(top_srcdir)/m4/reorganization/libs/bzip.m4 \ $(top_srcdir)/m4/reorganization/libs/unrar.m4 \ + $(top_srcdir)/m4/reorganization/libs/systemd.m4 \ $(top_srcdir)/m4/reorganization/code_checks/ipv6.m4 \ $(top_srcdir)/m4/reorganization/code_checks/dns.m4 \ $(top_srcdir)/m4/reorganization/code_checks/fanotify.m4 \ @@ -146,6 +147,8 @@ $(top_srcdir)/m4/reorganization/distcheck.m4 \ $(top_srcdir)/m4/reorganization/llvm.m4 \ $(top_srcdir)/m4/reorganization/sha_collect.m4 \ + $(top_srcdir)/m4/reorganization/yara.m4 \ + $(top_srcdir)/m4/reorganization/libfreshclam.m4 \ $(top_srcdir)/m4/reorganization/bsd.m4 \ $(top_srcdir)/m4/reorganization/libs/curl.m4 \ $(top_srcdir)/m4/reorganization/substitutions.m4 \ @@ -231,7 +234,6 @@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ -ARGZ_H = @ARGZ_H@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ @@ -241,6 +243,7 @@ CCDEPMODE = @CCDEPMODE@ CFGDIR = @CFGDIR@ CFLAGS = @CFLAGS@ +CHECK_CFLAGS = @CHECK_CFLAGS@ CHECK_CPPFLAGS = @CHECK_CPPFLAGS@ CHECK_LIBS = @CHECK_LIBS@ CLAMAVGROUP = @CLAMAVGROUP@ @@ -287,6 +290,7 @@ GETENT = @GETENT@ GPERF = @GPERF@ GREP = @GREP@ +HAVE_YARA = @HAVE_YARA@ INCLTDL = @INCLTDL@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -299,6 +303,9 @@ LCOV = @LCOV@ LD = @LD@ LDFLAGS = @LDFLAGS@ +LEX = @LEX@ +LEXLIB = @LEXLIB@ +LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ LIBADD_DL = @LIBADD_DL@ LIBADD_DLD_LINK = @LIBADD_DLD_LINK@ LIBADD_DLOPEN = @LIBADD_DLOPEN@ @@ -321,9 +328,11 @@ LTDLOPEN = @LTDLOPEN@ LTLIBBZ2 = @LTLIBBZ2@ LTLIBOBJS = @LTLIBOBJS@ +LT_ARGZ_H = @LT_ARGZ_H@ LT_CONFIG_H = @LT_CONFIG_H@ LT_DLLOADERS = @LT_DLLOADERS@ LT_DLPREOPEN = @LT_DLPREOPEN@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -342,6 +351,11 @@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PCRE_CPPFLAGS = @PCRE_CPPFLAGS@ +PCRE_LIBS = @PCRE_LIBS@ +PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ @@ -351,6 +365,8 @@ SSL_LDFLAGS = @SSL_LDFLAGS@ SSL_LIBS = @SSL_LIBS@ STRIP = @STRIP@ +SYSTEMD_CFLAGS = @SYSTEMD_CFLAGS@ +SYSTEMD_LIBS = @SYSTEMD_LIBS@ THREAD_LIBS = @THREAD_LIBS@ TH_SAFE = @TH_SAFE@ VERSION = @VERSION@ @@ -359,6 +375,8 @@ WERR_CFLAGS_MILTER = @WERR_CFLAGS_MILTER@ XML_CPPFLAGS = @XML_CPPFLAGS@ XML_LIBS = @XML_LIBS@ +YACC = @YACC@ +YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -401,6 +419,7 @@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ +pcreconfig = @pcreconfig@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ @@ -411,6 +430,7 @@ subdirs = @subdirs@ sys_symbol_underscore = @sys_symbol_underscore@ sysconfdir = @sysconfdir@ +systemdsystemunitdir = @systemdsystemunitdir@ target = @target@ target_alias = @target_alias@ target_cpu = @target_cpu@ @@ -428,7 +448,7 @@ $(top_srcdir)/shared/misc.h \ bcrun.c -AM_CFLAGS = @WERR_CFLAGS@ @SSL_CPPFLAGS@ @JSON_CPPFLAGS@ +AM_CFLAGS = @WERR_CFLAGS@ @SSL_CPPFLAGS@ @JSON_CPPFLAGS@ @PCRE_CPPFLAGS@ AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/shared -I$(top_srcdir)/libclamav CLEANFILES = *.gcda *.gcno all: all-am diff -Nru clamav-0.98.6+dfsg/clamconf/clamconf.c clamav-0.99.2+addedllvm/clamconf/clamconf.c --- clamav-0.98.6+dfsg/clamconf/clamconf.c 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamconf/clamconf.c 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C) 2009-2013 Sourcefire, Inc. * Author: Tomasz Kojm * @@ -201,7 +202,7 @@ printf("\n"); printf(" Clam AntiVirus: Configuration Tool %s\n", get_version()); printf(" By The ClamAV Team: http://www.clamav.net/about.html#credits\n"); - printf(" (C) 2009 Sourcefire, Inc.\n\n"); + printf(" (C) 2009-2015 Cisco Systems, Inc.\n\n"); printf(" --help -h Show help\n"); printf(" --version -V Show version\n"); @@ -457,9 +458,20 @@ #ifdef HAVE_BZLIB_H printf("BZIP2 "); #endif + #ifdef HAVE_LIBXML2 printf("LIBXML2 "); #endif +#ifdef HAVE_PCRE +#if USING_PCRE2 + printf("PCRE2 "); +#else + printf("PCRE "); +#endif +#endif +#ifdef HAVE_ICONV + printf("ICONV "); +#endif #ifdef HAVE_JSON printf("JSON "); #endif diff -Nru clamav-0.98.6+dfsg/clamconf/Makefile.am clamav-0.99.2+addedllvm/clamconf/Makefile.am --- clamav-0.98.6+dfsg/clamconf/Makefile.am 2014-12-18 21:43:18.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamconf/Makefile.am 2016-04-22 15:02:18.000000000 +0000 @@ -31,7 +31,7 @@ DEFS = @DEFS@ -DCL_NOTHREADS AM_CPPFLAGS = @CLAMCONF_CPPFLAGS@ -I$(top_srcdir) -I$(top_srcdir)/shared -I$(top_srcdir)/libclamav\ - @JSON_CPPFLAGS@\ + @JSON_CPPFLAGS@ @PCRE_CPPFLAGS@\ -DBUILD_CPPFLAGS="\"$(CPPFLAGS)\"" -DBUILD_CFLAGS="\"$(CFLAGS)\""\ -DBUILD_CXXFLAGS="\"$(CXXFLAGS)\"" -DBUILD_LDFLAGS="\"$(LDFLAGS)\""\ -DBUILD_CONFIGURE_FLAGS="\"$(BUILD_CONFIGURE_FLAGS)\"" diff -Nru clamav-0.98.6+dfsg/clamconf/Makefile.in clamav-0.99.2+addedllvm/clamconf/Makefile.in --- clamav-0.98.6+dfsg/clamconf/Makefile.in 2014-12-18 21:43:18.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamconf/Makefile.in 2016-04-22 16:19:51.000000000 +0000 @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.14 from Makefile.am. +# Makefile.in generated by automake 1.14.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2013 Free Software Foundation, Inc. @@ -103,14 +103,13 @@ $(top_srcdir)/config/depcomp ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/acinclude.m4 \ - $(top_srcdir)/m4/argz.m4 \ $(top_srcdir)/m4/ax_check_uname_syscall.m4 \ $(top_srcdir)/m4/fdpassing.m4 $(top_srcdir)/m4/lib-ld.m4 \ $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/llvm.m4 \ - $(top_srcdir)/m4/ltdl.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/m4/ltargz.m4 $(top_srcdir)/m4/ltdl.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ $(top_srcdir)/m4/mmap_private.m4 $(top_srcdir)/m4/resolv.m4 \ $(top_srcdir)/m4/reorganization/version.m4 \ $(top_srcdir)/m4/reorganization/build_tools.m4 \ @@ -125,9 +124,11 @@ $(top_srcdir)/m4/reorganization/libs/xml.m4 \ $(top_srcdir)/m4/reorganization/libs/openssl.m4 \ $(top_srcdir)/m4/reorganization/libs/json.m4 \ + $(top_srcdir)/m4/reorganization/libs/pcre.m4 \ $(top_srcdir)/m4/reorganization/libs/libz.m4 \ $(top_srcdir)/m4/reorganization/libs/bzip.m4 \ $(top_srcdir)/m4/reorganization/libs/unrar.m4 \ + $(top_srcdir)/m4/reorganization/libs/systemd.m4 \ $(top_srcdir)/m4/reorganization/code_checks/ipv6.m4 \ $(top_srcdir)/m4/reorganization/code_checks/dns.m4 \ $(top_srcdir)/m4/reorganization/code_checks/fanotify.m4 \ @@ -164,6 +165,8 @@ $(top_srcdir)/m4/reorganization/distcheck.m4 \ $(top_srcdir)/m4/reorganization/llvm.m4 \ $(top_srcdir)/m4/reorganization/sha_collect.m4 \ + $(top_srcdir)/m4/reorganization/yara.m4 \ + $(top_srcdir)/m4/reorganization/libfreshclam.m4 \ $(top_srcdir)/m4/reorganization/bsd.m4 \ $(top_srcdir)/m4/reorganization/libs/curl.m4 \ $(top_srcdir)/m4/reorganization/substitutions.m4 \ @@ -249,7 +252,6 @@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ -ARGZ_H = @ARGZ_H@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ @@ -259,6 +261,7 @@ CCDEPMODE = @CCDEPMODE@ CFGDIR = @CFGDIR@ CFLAGS = @CFLAGS@ +CHECK_CFLAGS = @CHECK_CFLAGS@ CHECK_CPPFLAGS = @CHECK_CPPFLAGS@ CHECK_LIBS = @CHECK_LIBS@ CLAMAVGROUP = @CLAMAVGROUP@ @@ -305,6 +308,7 @@ GETENT = @GETENT@ GPERF = @GPERF@ GREP = @GREP@ +HAVE_YARA = @HAVE_YARA@ INCLTDL = @INCLTDL@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -317,6 +321,9 @@ LCOV = @LCOV@ LD = @LD@ LDFLAGS = @LDFLAGS@ +LEX = @LEX@ +LEXLIB = @LEXLIB@ +LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ LIBADD_DL = @LIBADD_DL@ LIBADD_DLD_LINK = @LIBADD_DLD_LINK@ LIBADD_DLOPEN = @LIBADD_DLOPEN@ @@ -339,9 +346,11 @@ LTDLOPEN = @LTDLOPEN@ LTLIBBZ2 = @LTLIBBZ2@ LTLIBOBJS = @LTLIBOBJS@ +LT_ARGZ_H = @LT_ARGZ_H@ LT_CONFIG_H = @LT_CONFIG_H@ LT_DLLOADERS = @LT_DLLOADERS@ LT_DLPREOPEN = @LT_DLPREOPEN@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -360,6 +369,11 @@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PCRE_CPPFLAGS = @PCRE_CPPFLAGS@ +PCRE_LIBS = @PCRE_LIBS@ +PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ @@ -369,6 +383,8 @@ SSL_LDFLAGS = @SSL_LDFLAGS@ SSL_LIBS = @SSL_LIBS@ STRIP = @STRIP@ +SYSTEMD_CFLAGS = @SYSTEMD_CFLAGS@ +SYSTEMD_LIBS = @SYSTEMD_LIBS@ THREAD_LIBS = @THREAD_LIBS@ TH_SAFE = @TH_SAFE@ VERSION = @VERSION@ @@ -377,6 +393,8 @@ WERR_CFLAGS_MILTER = @WERR_CFLAGS_MILTER@ XML_CPPFLAGS = @XML_CPPFLAGS@ XML_LIBS = @XML_LIBS@ +YACC = @YACC@ +YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -419,6 +437,7 @@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ +pcreconfig = @pcreconfig@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ @@ -429,6 +448,7 @@ subdirs = @subdirs@ sys_symbol_underscore = @sys_symbol_underscore@ sysconfdir = @sysconfdir@ +systemdsystemunitdir = @systemdsystemunitdir@ target = @target@ target_alias = @target_alias@ target_cpu = @target_cpu@ @@ -448,7 +468,7 @@ AM_CFLAGS = @WERR_CFLAGS@ @SSL_CPPFLAGS@ AM_CPPFLAGS = @CLAMCONF_CPPFLAGS@ -I$(top_srcdir) -I$(top_srcdir)/shared -I$(top_srcdir)/libclamav\ - @JSON_CPPFLAGS@\ + @JSON_CPPFLAGS@ @PCRE_CPPFLAGS@\ -DBUILD_CPPFLAGS="\"$(CPPFLAGS)\"" -DBUILD_CFLAGS="\"$(CFLAGS)\""\ -DBUILD_CXXFLAGS="\"$(CXXFLAGS)\"" -DBUILD_LDFLAGS="\"$(LDFLAGS)\""\ -DBUILD_CONFIGURE_FLAGS="\"$(BUILD_CONFIGURE_FLAGS)\"" diff -Nru clamav-0.98.6+dfsg/clamd/clamav-daemon.service.in clamav-0.99.2+addedllvm/clamd/clamav-daemon.service.in --- clamav-0.98.6+dfsg/clamd/clamav-daemon.service.in 1970-01-01 00:00:00.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamd/clamav-daemon.service.in 2016-04-22 15:02:18.000000000 +0000 @@ -0,0 +1,17 @@ +[Unit] +Description=Clam AntiVirus userspace daemon +Documentation=man:clamd(8) man:clamd.conf(5) http://www.clamav.net/lang/en/doc/ +Requires=clamav-daemon.socket +# Check for database existence +ConditionPathExistsGlob=@DBDIR@/main.{c[vl]d,inc} +ConditionPathExistsGlob=@DBDIR@/daily.{c[vl]d,inc} + +[Service] +ExecStart=@prefix@/sbin/clamd --foreground=true +# Reload the database +ExecReload=/bin/kill -USR2 $MAINPID +StandardOutput=syslog + +[Install] +WantedBy=multi-user.target +Also=clamav-daemon.socket diff -Nru clamav-0.98.6+dfsg/clamd/clamav-daemon.socket.in clamav-0.99.2+addedllvm/clamd/clamav-daemon.socket.in --- clamav-0.98.6+dfsg/clamd/clamav-daemon.socket.in 1970-01-01 00:00:00.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamd/clamav-daemon.socket.in 2016-04-22 15:02:18.000000000 +0000 @@ -0,0 +1,16 @@ +[Unit] +Description=Socket for Clam AntiVirus userspace daemon +Documentation=man:clamd(8) man:clamd.conf(5) http://www.clamav.net/lang/en/doc/ +# Check for database existence +ConditionPathExistsGlob=@DBDIR@/main.{c[vl]d,inc} +ConditionPathExistsGlob=@DBDIR@/daily.{c[vl]d,inc} + +[Socket] +ListenStream=/run/clamav/clamd.ctl +#ListenStream=127.0.0.1:1024 +SocketUser=clamav +SocketGroup=clamav +RemoveOnStop=True + +[Install] +WantedBy=sockets.target diff -Nru clamav-0.98.6+dfsg/clamd/clamd.c clamav-0.99.2+addedllvm/clamd/clamd.c --- clamav-0.98.6+dfsg/clamd/clamd.c 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamd/clamd.c 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C) 2007-2009 Sourcefire, Inc. * * Authors: Tomasz Kojm @@ -72,7 +73,7 @@ #include "scanner.h" short debug_mode = 0, logok = 0; -short foreground = 0; +short foreground = -1; char hostid[37]; char *get_hostid(void *cbdata); @@ -83,7 +84,7 @@ printf("\n"); printf(" Clam AntiVirus Daemon %s\n", get_version()); printf(" By The ClamAV Team: http://www.clamav.net/about.html#credits\n"); - printf(" (C) 2007-2009 Sourcefire, Inc.\n\n"); + printf(" (C) 2007-2015 Cisco Systems, Inc.\n\n"); printf(" --help -h Show this help.\n"); printf(" --version -V Show version number.\n"); @@ -124,7 +125,9 @@ int *lsockets=NULL; unsigned int nlsockets = 0; unsigned int dboptions = 0; - unsigned int i; + unsigned int i; + int j; + int num_fd; #ifdef C_LINUX STATBUF sb; #endif @@ -160,9 +163,37 @@ debug_mode = 1; } + /* check foreground option from command line to override config file */ + for(j = 0; j < argc; j += 1) + { + if ((memcmp(argv[j], "--foreground", 12) == 0) || (memcmp(argv[j], "-F", 2) == 0)) + { + /* found */ + break; + } + } + + if (j < argc) + { + if(optget(opts, "Foreground")->enabled) + { + foreground = 1; + } + else + { + foreground = 0; + } + } + + num_fd = sd_listen_fds(0); + /* parse the config file */ cfgfile = optget(opts, "config-file")->strarg; pt = strdup(cfgfile); + if (pt == NULL) { + fprintf(stderr, "ERROR: Unable to allocate memory for config file\n"); + return 1; + } if((opts = optparse(cfgfile, 0, NULL, 1, OPT_CLAMD, 0, opts)) == NULL) { fprintf(stderr, "ERROR: Can't open/parse the config file %s\n", pt); free(pt); @@ -295,7 +326,9 @@ if(optget(opts, "LocalSocket")->enabled) localsock = 1; - if(!tcpsock && !localsock) { + logg("#Received %d file descriptor(s) from systemd.\n", num_fd); + + if(!tcpsock && !localsock && num_fd == 0) { logg("!Please define server type (local and/or TCP).\n"); ret = 1; break; @@ -328,7 +361,7 @@ if(logg_size) - logg("#Log file size limited to %u bytes.\n", logg_size); + logg("#Log file size limited to %lld bytes.\n", (long long int)logg_size); else logg("#Log file size limit disabled.\n"); @@ -484,6 +517,8 @@ cl_engine_set_clcb_hash(engine, hash_callback); + cl_engine_set_clcb_virus_found(engine, clamd_virus_found_cb); + if(optget(opts, "LeaveTemporaryFiles")->enabled) cl_engine_set_num(engine, CL_ENGINE_KEEPTMP, 1); @@ -566,18 +601,43 @@ break; } + if((ret = statinidir_th(dbdir))) { + logg("!%s\n", cl_strerror(ret)); + ret = 1; + break; + } + if (optget(opts, "DisableCertCheck")->enabled) - engine->dconf->pe |= PE_CONF_DISABLECERT; + cl_engine_set_num(engine, CL_ENGINE_DISABLE_PE_CERTS, 1); logg("#Loaded %u signatures.\n", sigs); + /* pcre engine limits - required for cl_engine_compile */ + if((opt = optget(opts, "PCREMatchLimit"))->active) { + if((ret = cl_engine_set_num(engine, CL_ENGINE_PCRE_MATCH_LIMIT, opt->numarg))) { + logg("!cli_engine_set_num(PCREMatchLimit) failed: %s\n", cl_strerror(ret)); + cl_engine_free(engine); + return 1; + } + } + + if((opt = optget(opts, "PCRERecMatchLimit"))->active) { + if((ret = cl_engine_set_num(engine, CL_ENGINE_PCRE_RECMATCH_LIMIT, opt->numarg))) { + logg("!cli_engine_set_num(PCRERecMatchLimit) failed: %s\n", cl_strerror(ret)); + cl_engine_free(engine); + return 1; + } + } + if((ret = cl_engine_compile(engine)) != 0) { logg("!Database initialization error: %s\n", cl_strerror(ret)); ret = 1; break; } - if(tcpsock) { + if(tcpsock || num_fd > 0) { + int *t; + opt = optget(opts, "TCPAddr"); if (opt->enabled) { int breakout = 0; @@ -604,7 +664,7 @@ } } #ifndef _WIN32 - if(localsock) { + if(localsock && num_fd == 0) { int *t; mode_t sock_mode, umsk = umask(0777); /* socket is created with 000 to avoid races */ @@ -666,8 +726,43 @@ nlsockets++; } + /* check for local sockets passed by systemd */ + if (num_fd > 0) + { + int *t; + t = realloc(lsockets, sizeof(int) * (nlsockets + 1)); + if (!(t)) { + ret = 1; + break; + } + lsockets = t; + + lsockets[nlsockets] = localserver(opts); + if (lsockets[nlsockets] == -1) + { + ret = 1; + break; + } + else if (lsockets[nlsockets] > 0) + { + nlsockets++; + } + } + /* fork into background */ - if(!optget(opts, "Foreground")->enabled) { + if (foreground == -1) + { + if (optget(opts, "Foreground")->enabled) + { + foreground = 1; + } + else + { + foreground = 0; + } + } + if(foreground == 0) + { #ifdef C_BSD /* workaround for OpenBSD bug, see https://wwws.clamav.net/bugzilla/show_bug.cgi?id=885 */ for(ret=0;(unsigned int)ret 1) ? "s" : ""); - - for (i = 0; i < nlsockets; i++) { - closesocket(lsockets[i]); - } + if (num_fd == 0) + { + logg("*Closing the main socket%s.\n", (nlsockets > 1) ? "s" : ""); + for (i = 0; i < nlsockets; i++) { + closesocket(lsockets[i]); + } #ifndef _WIN32 - if(nlsockets && localsock) { - opt = optget(opts, "LocalSocket"); + if(nlsockets && localsock) { + opt = optget(opts, "LocalSocket"); - if(unlink(opt->strarg) == -1) - logg("!Can't unlink the socket file %s\n", opt->strarg); - else - logg("Socket file removed.\n"); - } + if(unlink(opt->strarg) == -1) + logg("!Can't unlink the socket file %s\n", opt->strarg); + else + logg("Socket file removed.\n"); + } #endif + } free(lsockets); diff -Nru clamav-0.98.6+dfsg/clamd/fan.c clamav-0.99.2+addedllvm/clamd/fan.c --- clamav-0.98.6+dfsg/clamd/fan.c 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamd/fan.c 1970-01-01 00:00:00.000000000 +0000 @@ -1,358 +0,0 @@ -/* - * Copyright (C) 2011 Sourcefire, Inc. - * - * Authors: Tomasz Kojm - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, - * MA 02110-1301, USA. - */ - -#if HAVE_CONFIG_H -#include "clamav-config.h" -#endif - -#ifdef FANOTIFY - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include - -#include "fan.h" - -#include "libclamav/clamav.h" -#include "libclamav/scanners.h" - -#include "shared/optparser.h" -#include "shared/output.h" - -#include "server.h" -#include "others.h" -#include "scanner.h" - -static void fan_exit(int sig) -{ - - logg("*ScanOnAccess: fan_exit(), signal %d\n", sig); - pthread_exit(NULL); - logg("ScanOnAccess: stopped\n"); -} - -static int fan_scanfile(int fan_fd, const char *fname, struct fanotify_event_metadata *fmd, int scan, int extinfo, struct thrarg *tharg) -{ - struct fanotify_response res; - struct cb_context context; - const char *virname; - int ret = 0; - - res.fd = fmd->fd; - res.response = FAN_ALLOW; - context.filename = fname; - context.virsize = 0; - if(scan && cl_scandesc_callback(fmd->fd, &virname, NULL, tharg->engine, tharg->options, &context) == CL_VIRUS) { - if(extinfo && context.virsize) - logg("ScanOnAccess: %s: %s(%s:%llu) FOUND\n", fname, virname, context.virhash, context.virsize); - else - logg("ScanOnAccess: %s: %s FOUND\n", fname, virname); - virusaction(fname, virname, tharg->opts); - res.response = FAN_DENY; - } - - if(fmd->mask & FAN_ALL_PERM_EVENTS) { - ret = write(fan_fd, &res, sizeof(res)); - if(ret == -1) - logg("!ScanOnAccess: Internal error (can't write to fanotify)\n"); - } - - return ret; -} - -void *fan_th(void *arg) -{ - struct thrarg *tharg = (struct thrarg *) arg; - sigset_t sigset; - struct sigaction act; - const struct optstruct *pt; - short int scan; - int sizelimit = 0, extinfo; - STATBUF sb; - uint64_t fan_mask = FAN_ACCESS | FAN_EVENT_ON_CHILD; - int fan_fd; - fd_set rfds; - char buf[4096]; - ssize_t bread; - struct fanotify_event_metadata *fmd; - char fname[1024]; - int ret, len; - char err[128]; - - /* ignore all signals except SIGUSR1 */ - sigfillset(&sigset); - sigdelset(&sigset, SIGUSR1); - /* The behavior of a process is undefined after it ignores a - * SIGFPE, SIGILL, SIGSEGV, or SIGBUS signal */ - sigdelset(&sigset, SIGFPE); - sigdelset(&sigset, SIGILL); - sigdelset(&sigset, SIGSEGV); -#ifdef SIGBUS - sigdelset(&sigset, SIGBUS); -#endif - pthread_sigmask(SIG_SETMASK, &sigset, NULL); - memset(&act, 0, sizeof(struct sigaction)); - act.sa_handler = fan_exit; - sigfillset(&(act.sa_mask)); - sigaction(SIGUSR1, &act, NULL); - sigaction(SIGSEGV, &act, NULL); - - fan_fd = fanotify_init(0, O_RDONLY); - if(fan_fd < 0) { - logg("!ScanOnAccess: fanotify_init failed: %s\n", cli_strerror(errno, err, sizeof(err))); - if(errno == EPERM) - logg("ScanOnAccess: clamd must be started by root\n"); - return NULL; - } - - if((pt = optget(tharg->opts, "OnAccessIncludePath"))->enabled) { - while(pt) { - if(fanotify_mark(fan_fd, FAN_MARK_ADD, fan_mask, fan_fd, pt->strarg) != 0) { - logg("!ScanOnAccess: Can't include path '%s'\n", pt->strarg); - return NULL; - } else - logg("ScanOnAccess: Protecting directory '%s'\n", pt->strarg); - pt = (struct optstruct *) pt->nextarg; - } - } else { - logg("!ScanOnAccess: Please specify at least one path with OnAccessIncludePath\n"); - return NULL; - } - - if((pt = optget(tharg->opts, "OnAccessExcludePath"))->enabled) { - while(pt) { - if(fanotify_mark(fan_fd, FAN_MARK_REMOVE, fan_mask, fan_fd, pt->strarg) != 0) { - logg("!ScanOnAccess: Can't exclude path %s\n", pt->strarg); - return NULL; - } else - logg("ScanOnAccess: Excluded path %s\n", pt->strarg); - pt = (struct optstruct *) pt->nextarg; - } - } - - sizelimit = optget(tharg->opts, "OnAccessMaxFileSize")->numarg; - if(sizelimit) - logg("ScanOnAccess: Max file size limited to %d bytes\n", sizelimit); - else - logg("ScanOnAccess: File size limit disabled\n"); - - extinfo = optget(tharg->opts, "ExtendedDetectionInfo")->enabled; - - FD_ZERO(&rfds); - FD_SET(fan_fd, &rfds); - do { - ret = select(fan_fd + 1, &rfds, NULL, NULL, NULL); - } while(ret == -1 && errno == EINTR); - - while((bread = read(fan_fd, buf, sizeof(buf))) > 0) { - fmd = (struct fanotify_event_metadata *) buf; - while(FAN_EVENT_OK(fmd, bread)) { - scan = 1; - if(fmd->fd >= 0) { - sprintf(fname, "/proc/self/fd/%d", fmd->fd); - len = readlink(fname, fname, sizeof(fname) - 1); - if(len == -1) { - close(fmd->fd); - logg("!ScanOnAccess: Internal error (readlink() failed)\n"); - return NULL; - } - fname[len] = 0; - - if(fan_checkowner(fmd->pid, tharg->opts)) { - scan = 0; - logg("*ScanOnAccess: %s skipped (excluded UID)\n", fname); - } - - if(sizelimit) { - if(FSTAT(fmd->fd, &sb) != 0 || sb.st_size > sizelimit) { - scan = 0; - /* logg("*ScanOnAccess: %s skipped (size > %d)\n", fname, sizelimit); */ - } - } - - if(fan_scanfile(fan_fd, fname, fmd, scan, extinfo, tharg) == -1) { - close(fmd->fd); - return NULL; - } - - if(close(fmd->fd) == -1) { - printf("!ScanOnAccess: Internal error (close(%d) failed)\n", fmd->fd); - close(fmd->fd); - return NULL; - } - } - fmd = FAN_EVENT_NEXT(fmd, bread); - } - do { - ret = select(fan_fd + 1, &rfds, NULL, NULL, NULL); - } while(ret == -1 && errno == EINTR); - } - - if(bread < 0) - logg("!ScanOnAccess: Internal error (failed to read data)\n"); - - return NULL; -} - -#elif defined(CLAMAUTH) - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include "libclamav/clamav.h" -#include "libclamav/scanners.h" - -#include "shared/optparser.h" -#include "shared/output.h" - -#include "server.h" -#include "others.h" -#include "scanner.h" - -#define SUPPORTED_PROTOCOL 2 - -static int cauth_fd = -1; - -struct ClamAuthEvent { - unsigned int action; - char path[1024]; - unsigned int pid; -}; - -static void cauth_exit(int sig) -{ - logg("*ScanOnAccess: cauth_exit(), signal %d\n", sig); - if(cauth_fd > 0) - close(cauth_fd); - pthread_exit(NULL); - logg("ScanOnAccess: stopped\n"); -} - -static int cauth_scanfile(const char *fname, int extinfo, struct thrarg *tharg) -{ - struct cb_context context; - const char *virname; - int ret = 0, fd; - - context.filename = fname; - context.virsize = 0; - - fd = open(fname, O_RDONLY); - if(fd == -1) - return -1; - - if(cl_scandesc_callback(fd, &virname, NULL, tharg->engine, tharg->options, &context) == CL_VIRUS) { - if(extinfo && context.virsize) - logg("ScanOnAccess: %s: %s(%s:%llu) FOUND\n", fname, virname, context.virhash, context.virsize); - else - logg("ScanOnAccess: %s: %s FOUND\n", fname, virname); - virusaction(fname, virname, tharg->opts); - } - close(fd); - return ret; -} - -void *fan_th(void *arg) -{ - struct thrarg *tharg = (struct thrarg *) arg; - sigset_t sigset; - struct sigaction act; - int eventcnt = 1, extinfo; - char err[128]; - struct ClamAuthEvent event; - - /* ignore all signals except SIGUSR1 */ - sigfillset(&sigset); - sigdelset(&sigset, SIGUSR1); - /* The behavior of a process is undefined after it ignores a - * SIGFPE, SIGILL, SIGSEGV, or SIGBUS signal */ - sigdelset(&sigset, SIGFPE); - sigdelset(&sigset, SIGILL); - sigdelset(&sigset, SIGSEGV); -#ifdef SIGBUS - sigdelset(&sigset, SIGBUS); -#endif - pthread_sigmask(SIG_SETMASK, &sigset, NULL); - memset(&act, 0, sizeof(struct sigaction)); - act.sa_handler = cauth_exit; - sigfillset(&(act.sa_mask)); - sigaction(SIGUSR1, &act, NULL); - sigaction(SIGSEGV, &act, NULL); - - extinfo = optget(tharg->opts, "ExtendedDetectionInfo")->enabled; - - cauth_fd = open("/dev/clamauth", O_RDONLY); - if(cauth_fd == -1) { - logg("!ScanOnAccess: Can't open /dev/clamauth\n"); - if(errno == ENOENT) - logg("!ScanOnAccess: Please make sure ClamAuth.kext is loaded\n"); - else if(errno == EACCES) - logg("!ScanOnAccess: This application requires root privileges\n"); - else - logg("!ScanOnAccess: /dev/clamauth: %s\n", cli_strerror(errno, err, sizeof(err))); - - return NULL; - } - - while(1) { - if(read(cauth_fd, &event, sizeof(event)) > 0) { - if(eventcnt == 1) { - if(event.action != SUPPORTED_PROTOCOL) { - logg("!ScanOnAccess: Protocol version mismatch (tool: %d, driver: %d)\n", SUPPORTED_PROTOCOL, event.action); - close(cauth_fd); - return NULL; - } - if(strncmp(event.path, "ClamAuth", 8)) { - logg("!ScanOnAccess: Invalid version event\n"); - close(cauth_fd); - return NULL; - } - logg("ScanOnAccess: Driver version: %s, protocol version: %d\n", &event.path[9], event.action); - } else { - cauth_scanfile(event.path, extinfo, tharg); - } - eventcnt++; - } else { - if(errno == ENODEV) { - printf("^ScanOnAccess: ClamAuth module deactivated, terminating\n"); - close(cauth_fd); - return NULL; - } - } - usleep(200); - } -} -#endif diff -Nru clamav-0.98.6+dfsg/clamd/fan.h clamav-0.99.2+addedllvm/clamd/fan.h --- clamav-0.98.6+dfsg/clamd/fan.h 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamd/fan.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,26 +0,0 @@ -/* - * Copyright (C) 2011 Sourcefire, Inc. - * - * Authors: Tomasz Kojm - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, - * MA 02110-1301, USA. - */ - -#ifndef __FAN_H -#define __FAN_H - -void *fan_th(void *arg); - -#endif diff -Nru clamav-0.98.6+dfsg/clamd/localserver.c clamav-0.99.2+addedllvm/clamd/localserver.c --- clamav-0.98.6+dfsg/clamd/localserver.c 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamd/localserver.c 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C) 2007-2009 Sourcefire, Inc. * * Authors: Tomasz Kojm @@ -39,6 +40,7 @@ #include "shared/optparser.h" #include "shared/output.h" +#include "shared/misc.h" #include "others.h" #include "server.h" @@ -60,6 +62,39 @@ STATBUF foo; char *estr; + int num_fd = sd_listen_fds(0); + if (num_fd > 2) + { + logg("!LOCAL: Received more than two file descriptors from systemd.\n"); + return -1; + } + else if (num_fd > 0) + { + /* use socket passed by systemd */ + int i; + for(i = 0; i < num_fd; i += 1) + { + sockfd = SD_LISTEN_FDS_START + i; + if (sd_is_socket(sockfd, AF_UNIX, SOCK_STREAM, 1) == 1) + { + /* correct socket */ + break; + } + else + { + /* wrong socket */ + sockfd = -2; + } + } + if (sockfd == -2) + { + logg("#LOCAL: No local AF_UNIX SOCK_STREAM socket received from systemd.\n"); + return -2; + } + logg("#LOCAL: Received AF_UNIX SOCK_STREAM socket from systemd.\n"); + return sockfd; + } + /* create socket */ memset((char *) &server, 0, sizeof(server)); server.sun_family = AF_UNIX; strncpy(server.sun_path, optget(opts, "LocalSocket")->strarg, sizeof(server.sun_path)); diff -Nru clamav-0.98.6+dfsg/clamd/localserver.h clamav-0.99.2+addedllvm/clamd/localserver.h --- clamav-0.98.6+dfsg/clamd/localserver.h 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamd/localserver.h 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C) 2007-2009 Sourcefire, Inc. * * Authors: Tomasz Kojm diff -Nru clamav-0.98.6+dfsg/clamd/Makefile.am clamav-0.99.2+addedllvm/clamd/Makefile.am --- clamav-0.98.6+dfsg/clamd/Makefile.am 2014-12-18 21:43:18.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamd/Makefile.am 2016-04-22 15:02:18.000000000 +0000 @@ -45,15 +45,25 @@ others.c \ others.h \ shared.h \ - fan.c \ - fan.h + onaccess_fan.c \ + onaccess_fan.h \ + onaccess_ddd.c \ + onaccess_ddd.h \ + onaccess_hash.c \ + onaccess_hash.h \ + onaccess_scth.c \ + onaccess_scth.h AM_CFLAGS=@WERR_CFLAGS@ +if INSTALL_SYSTEMD_UNITS +systemdsystemunit_DATA = clamav-daemon.socket clamav-daemon.service +endif + endif LIBS = $(top_builddir)/libclamav/libclamav.la @CLAMD_LIBS@ @THREAD_LIBS@ -AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/shared -I$(top_srcdir)/libclamav @SSL_CPPFLAGS@ @JSON_CPPFLAGS@ +AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/shared -I$(top_srcdir)/libclamav @SSL_CPPFLAGS@ @JSON_CPPFLAGS@ @PCRE_CPPFLAGS@ # it does support --help and --version but with the default config file # it outputs an error message which tells us to edit the config files diff -Nru clamav-0.98.6+dfsg/clamd/Makefile.in clamav-0.99.2+addedllvm/clamd/Makefile.in --- clamav-0.98.6+dfsg/clamd/Makefile.in 2014-12-18 21:43:18.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamd/Makefile.in 2016-04-22 16:19:51.000000000 +0000 @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.14 from Makefile.am. +# Makefile.in generated by automake 1.14.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2013 Free Software Foundation, Inc. @@ -32,6 +32,7 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, # MA 02110-1301, USA. + VPATH = @srcdir@ am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)' am__make_running_with_option = \ @@ -100,17 +101,17 @@ @BUILD_CLAMD_TRUE@sbin_PROGRAMS = clamd$(EXEEXT) subdir = clamd DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \ - $(top_srcdir)/config/depcomp + $(srcdir)/clamav-daemon.service.in \ + $(srcdir)/clamav-daemon.socket.in $(top_srcdir)/config/depcomp ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/acinclude.m4 \ - $(top_srcdir)/m4/argz.m4 \ $(top_srcdir)/m4/ax_check_uname_syscall.m4 \ $(top_srcdir)/m4/fdpassing.m4 $(top_srcdir)/m4/lib-ld.m4 \ $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/llvm.m4 \ - $(top_srcdir)/m4/ltdl.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/m4/ltargz.m4 $(top_srcdir)/m4/ltdl.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ $(top_srcdir)/m4/mmap_private.m4 $(top_srcdir)/m4/resolv.m4 \ $(top_srcdir)/m4/reorganization/version.m4 \ $(top_srcdir)/m4/reorganization/build_tools.m4 \ @@ -125,9 +126,11 @@ $(top_srcdir)/m4/reorganization/libs/xml.m4 \ $(top_srcdir)/m4/reorganization/libs/openssl.m4 \ $(top_srcdir)/m4/reorganization/libs/json.m4 \ + $(top_srcdir)/m4/reorganization/libs/pcre.m4 \ $(top_srcdir)/m4/reorganization/libs/libz.m4 \ $(top_srcdir)/m4/reorganization/libs/bzip.m4 \ $(top_srcdir)/m4/reorganization/libs/unrar.m4 \ + $(top_srcdir)/m4/reorganization/libs/systemd.m4 \ $(top_srcdir)/m4/reorganization/code_checks/ipv6.m4 \ $(top_srcdir)/m4/reorganization/code_checks/dns.m4 \ $(top_srcdir)/m4/reorganization/code_checks/fanotify.m4 \ @@ -164,6 +167,8 @@ $(top_srcdir)/m4/reorganization/distcheck.m4 \ $(top_srcdir)/m4/reorganization/llvm.m4 \ $(top_srcdir)/m4/reorganization/sha_collect.m4 \ + $(top_srcdir)/m4/reorganization/yara.m4 \ + $(top_srcdir)/m4/reorganization/libfreshclam.m4 \ $(top_srcdir)/m4/reorganization/bsd.m4 \ $(top_srcdir)/m4/reorganization/libs/curl.m4 \ $(top_srcdir)/m4/reorganization/substitutions.m4 \ @@ -172,9 +177,10 @@ $(ACLOCAL_M4) mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/clamav-config.h -CONFIG_CLEAN_FILES = +CONFIG_CLEAN_FILES = clamav-daemon.service clamav-daemon.socket CONFIG_CLEAN_VPATH_FILES = -am__installdirs = "$(DESTDIR)$(sbindir)" +am__installdirs = "$(DESTDIR)$(sbindir)" \ + "$(DESTDIR)$(systemdsystemunitdir)" PROGRAMS = $(sbin_PROGRAMS) am__clamd_SOURCES_DIST = $(top_srcdir)/shared/output.c \ $(top_srcdir)/shared/output.h $(top_srcdir)/shared/optparser.c \ @@ -183,14 +189,19 @@ $(top_srcdir)/shared/misc.h clamd.c tcpserver.c tcpserver.h \ localserver.c localserver.h session.c session.h thrmgr.c \ thrmgr.h server-th.c server.h scanner.c scanner.h others.c \ - others.h shared.h fan.c fan.h + others.h shared.h onaccess_fan.c onaccess_fan.h onaccess_ddd.c \ + onaccess_ddd.h onaccess_hash.c onaccess_hash.h onaccess_scth.c \ + onaccess_scth.h @BUILD_CLAMD_TRUE@am_clamd_OBJECTS = output.$(OBJEXT) \ @BUILD_CLAMD_TRUE@ optparser.$(OBJEXT) getopt.$(OBJEXT) \ @BUILD_CLAMD_TRUE@ misc.$(OBJEXT) clamd.$(OBJEXT) \ @BUILD_CLAMD_TRUE@ tcpserver.$(OBJEXT) localserver.$(OBJEXT) \ @BUILD_CLAMD_TRUE@ session.$(OBJEXT) thrmgr.$(OBJEXT) \ @BUILD_CLAMD_TRUE@ server-th.$(OBJEXT) scanner.$(OBJEXT) \ -@BUILD_CLAMD_TRUE@ others.$(OBJEXT) fan.$(OBJEXT) +@BUILD_CLAMD_TRUE@ others.$(OBJEXT) onaccess_fan.$(OBJEXT) \ +@BUILD_CLAMD_TRUE@ onaccess_ddd.$(OBJEXT) \ +@BUILD_CLAMD_TRUE@ onaccess_hash.$(OBJEXT) \ +@BUILD_CLAMD_TRUE@ onaccess_scth.$(OBJEXT) clamd_OBJECTS = $(am_clamd_OBJECTS) clamd_LDADD = $(LDADD) AM_V_lt = $(am__v_lt_@AM_V@) @@ -238,6 +249,34 @@ n|no|NO) false;; \ *) (install-info --version) >/dev/null 2>&1;; \ esac +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__uninstall_files_from_dir = { \ + test -z "$$files" \ + || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ + || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ + $(am__cd) "$$dir" && rm -f $$files; }; \ + } +DATA = $(systemdsystemunit_DATA) am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) # Read a list of newline-separated strings from the standard input, # and print each of them once, without duplicates. Input order is @@ -262,7 +301,6 @@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ -ARGZ_H = @ARGZ_H@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ @@ -272,6 +310,7 @@ CCDEPMODE = @CCDEPMODE@ CFGDIR = @CFGDIR@ CFLAGS = @CFLAGS@ +CHECK_CFLAGS = @CHECK_CFLAGS@ CHECK_CPPFLAGS = @CHECK_CPPFLAGS@ CHECK_LIBS = @CHECK_LIBS@ CLAMAVGROUP = @CLAMAVGROUP@ @@ -318,6 +357,7 @@ GETENT = @GETENT@ GPERF = @GPERF@ GREP = @GREP@ +HAVE_YARA = @HAVE_YARA@ INCLTDL = @INCLTDL@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -330,6 +370,9 @@ LCOV = @LCOV@ LD = @LD@ LDFLAGS = @LDFLAGS@ +LEX = @LEX@ +LEXLIB = @LEXLIB@ +LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ LIBADD_DL = @LIBADD_DL@ LIBADD_DLD_LINK = @LIBADD_DLD_LINK@ LIBADD_DLOPEN = @LIBADD_DLOPEN@ @@ -352,9 +395,11 @@ LTDLOPEN = @LTDLOPEN@ LTLIBBZ2 = @LTLIBBZ2@ LTLIBOBJS = @LTLIBOBJS@ +LT_ARGZ_H = @LT_ARGZ_H@ LT_CONFIG_H = @LT_CONFIG_H@ LT_DLLOADERS = @LT_DLLOADERS@ LT_DLPREOPEN = @LT_DLPREOPEN@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -373,6 +418,11 @@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PCRE_CPPFLAGS = @PCRE_CPPFLAGS@ +PCRE_LIBS = @PCRE_LIBS@ +PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ @@ -382,6 +432,8 @@ SSL_LDFLAGS = @SSL_LDFLAGS@ SSL_LIBS = @SSL_LIBS@ STRIP = @STRIP@ +SYSTEMD_CFLAGS = @SYSTEMD_CFLAGS@ +SYSTEMD_LIBS = @SYSTEMD_LIBS@ THREAD_LIBS = @THREAD_LIBS@ TH_SAFE = @TH_SAFE@ VERSION = @VERSION@ @@ -390,6 +442,8 @@ WERR_CFLAGS_MILTER = @WERR_CFLAGS_MILTER@ XML_CPPFLAGS = @XML_CPPFLAGS@ XML_LIBS = @XML_LIBS@ +YACC = @YACC@ +YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -432,6 +486,7 @@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ +pcreconfig = @pcreconfig@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ @@ -442,6 +497,7 @@ subdirs = @subdirs@ sys_symbol_underscore = @sys_symbol_underscore@ sysconfdir = @sysconfdir@ +systemdsystemunitdir = @systemdsystemunitdir@ target = @target@ target_alias = @target_alias@ target_cpu = @target_cpu@ @@ -475,11 +531,18 @@ @BUILD_CLAMD_TRUE@ others.c \ @BUILD_CLAMD_TRUE@ others.h \ @BUILD_CLAMD_TRUE@ shared.h \ -@BUILD_CLAMD_TRUE@ fan.c \ -@BUILD_CLAMD_TRUE@ fan.h +@BUILD_CLAMD_TRUE@ onaccess_fan.c \ +@BUILD_CLAMD_TRUE@ onaccess_fan.h \ +@BUILD_CLAMD_TRUE@ onaccess_ddd.c \ +@BUILD_CLAMD_TRUE@ onaccess_ddd.h \ +@BUILD_CLAMD_TRUE@ onaccess_hash.c \ +@BUILD_CLAMD_TRUE@ onaccess_hash.h \ +@BUILD_CLAMD_TRUE@ onaccess_scth.c \ +@BUILD_CLAMD_TRUE@ onaccess_scth.h @BUILD_CLAMD_TRUE@AM_CFLAGS = @WERR_CFLAGS@ -AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/shared -I$(top_srcdir)/libclamav @SSL_CPPFLAGS@ @JSON_CPPFLAGS@ +@BUILD_CLAMD_TRUE@@INSTALL_SYSTEMD_UNITS_TRUE@systemdsystemunit_DATA = clamav-daemon.socket clamav-daemon.service +AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/shared -I$(top_srcdir)/libclamav @SSL_CPPFLAGS@ @JSON_CPPFLAGS@ @PCRE_CPPFLAGS@ # it does support --help and --version but with the default config file # it outputs an error message which tells us to edit the config files @@ -519,6 +582,10 @@ $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(am__aclocal_m4_deps): +clamav-daemon.service: $(top_builddir)/config.status $(srcdir)/clamav-daemon.service.in + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ +clamav-daemon.socket: $(top_builddir)/config.status $(srcdir)/clamav-daemon.socket.in + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ install-sbinPROGRAMS: $(sbin_PROGRAMS) @$(NORMAL_INSTALL) @list='$(sbin_PROGRAMS)'; test -n "$(sbindir)" || list=; \ @@ -596,10 +663,13 @@ -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/clamd.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fan.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getopt.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/localserver.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/misc.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/onaccess_ddd.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/onaccess_fan.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/onaccess_hash.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/onaccess_scth.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/optparser.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/others.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/output.Po@am__quote@ @@ -691,6 +761,27 @@ clean-libtool: -rm -rf .libs _libs +install-systemdsystemunitDATA: $(systemdsystemunit_DATA) + @$(NORMAL_INSTALL) + @list='$(systemdsystemunit_DATA)'; test -n "$(systemdsystemunitdir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(systemdsystemunitdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(systemdsystemunitdir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(systemdsystemunitdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(systemdsystemunitdir)" || exit $$?; \ + done + +uninstall-systemdsystemunitDATA: + @$(NORMAL_UNINSTALL) + @list='$(systemdsystemunit_DATA)'; test -n "$(systemdsystemunitdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(systemdsystemunitdir)'; $(am__uninstall_files_from_dir) ID: $(am__tagged_files) $(am__define_uniq_tagged_files); mkid -fID $$unique @@ -776,9 +867,9 @@ done check-am: all-am check: check-am -all-am: Makefile $(PROGRAMS) +all-am: Makefile $(PROGRAMS) $(DATA) installdirs: - for dir in "$(DESTDIR)$(sbindir)"; do \ + for dir in "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(systemdsystemunitdir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am @@ -835,7 +926,7 @@ info-am: -install-data-am: +install-data-am: install-systemdsystemunitDATA install-dvi: install-dvi-am @@ -881,7 +972,7 @@ ps-am: -uninstall-am: uninstall-sbinPROGRAMS +uninstall-am: uninstall-sbinPROGRAMS uninstall-systemdsystemunitDATA .MAKE: install-am install-strip @@ -894,11 +985,12 @@ install-exec-am install-html install-html-am install-info \ install-info-am install-man install-pdf install-pdf-am \ install-ps install-ps-am install-sbinPROGRAMS install-strip \ - installcheck installcheck-am installcheck-sbinPROGRAMS \ - installdirs maintainer-clean maintainer-clean-generic \ - mostlyclean mostlyclean-compile mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \ - uninstall-am uninstall-sbinPROGRAMS + install-systemdsystemunitDATA installcheck installcheck-am \ + installcheck-sbinPROGRAMS installdirs maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-compile \ + mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ + tags tags-am uninstall uninstall-am uninstall-sbinPROGRAMS \ + uninstall-systemdsystemunitDATA # Tell versions [3.59,3.63) of GNU make to not export all variables. diff -Nru clamav-0.98.6+dfsg/clamd/onaccess_ddd.c clamav-0.99.2+addedllvm/clamd/onaccess_ddd.c --- clamav-0.98.6+dfsg/clamd/onaccess_ddd.c 1970-01-01 00:00:00.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamd/onaccess_ddd.c 2016-04-22 15:02:18.000000000 +0000 @@ -0,0 +1,569 @@ +/* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. + * Copyright (C) 2015 Sourcefire, Inc. + * + * Authors: Mickey Sola + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, + * MA 02110-1301, USA. + */ + +#if HAVE_CONFIG_H +#include "clamav-config.h" +#endif + +#if defined(FANOTIFY) + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include + +#include "onaccess_fan.h" +#include "onaccess_hash.h" +#include "onaccess_ddd.h" +#include "onaccess_scth.h" + +#include "libclamav/clamav.h" +#include "libclamav/scanners.h" + +#include "shared/optparser.h" +#include "shared/output.h" + +#include "server.h" +#include "others.h" +#include "scanner.h" + +static int onas_ddd_init_ht(uint32_t ht_size); +static int onas_ddd_init_wdlt(uint64_t nwatches); +static int onas_ddd_grow_wdlt(); + +static int onas_ddd_watch(const char *pathname, int fan_fd, uint64_t fan_mask, int in_fd, uint64_t in_mask); +static int onas_ddd_watch_hierarchy(const char* pathname, size_t len, int fd, uint64_t mask, uint32_t type); +static int onas_ddd_unwatch(const char *pathname, int fan_fd, int in_fd); +static int onas_ddd_unwatch_hierarchy(const char* pathname, size_t len, int fd, uint32_t type); + +static void onas_ddd_handle_in_moved_to(struct ddd_thrarg *tharg, const char *path, const char *child_path, const struct inotify_event *event, int wd, uint64_t in_mask); +static void onas_ddd_handle_in_create(struct ddd_thrarg *tharg, const char *path, const char *child_path, const struct inotify_event *event, int wd, uint64_t in_mask); +static void onas_ddd_handle_in_moved_from(struct ddd_thrarg *tharg, const char *path, const char *child_path, const struct inotify_event *event, int wd); +static void onas_ddd_handle_in_delete(struct ddd_thrarg *tharg, const char *path, const char *child_path, const struct inotify_event *event, int wd); +static void onas_ddd_handle_extra_scanning(struct ddd_thrarg *tharg, const char *pathname, int options); + +static void onas_ddd_exit(int sig); + +/* TODO: Unglobalize these. */ +static struct onas_ht *ddd_ht; +static char **wdlt; +static uint32_t wdlt_len; +static int onas_in_fd; + +static int onas_ddd_init_ht(uint32_t ht_size) { + + if (ht_size <= 0) + ht_size = ONAS_DEFAULT_HT_SIZE; + + return onas_ht_init(&ddd_ht, ht_size); +} + +static int onas_ddd_init_wdlt(uint64_t nwatches) { + + if (nwatches <= 0) return CL_EARG; + + wdlt = (char **) cli_calloc(nwatches << 1, sizeof(char*)); + if (!wdlt) return CL_EMEM; + + wdlt_len = nwatches << 1; + + return CL_SUCCESS; +} + +static int onas_ddd_grow_wdlt() { + + char **ptr = NULL; + + ptr = (char **) cli_realloc(wdlt, wdlt_len << 1); + if (ptr) { + wdlt = ptr; + memset(&ptr[wdlt_len], 0, sizeof(char *) * (wdlt_len - 1)); + } else { + return CL_EMEM; + } + + wdlt_len <<= 1; + + return CL_SUCCESS; +} + + +/* TODO: Support configuration for changing/setting number of inotify watches. */ +int onas_ddd_init(uint64_t nwatches, size_t ht_size) { + + const char* nwatch_file = "/proc/sys/fs/inotify/max_user_watches"; + int nwfd = 0; + int ret = 0; + char nwatch_str[MAX_WATCH_LEN]; + char *p = NULL; + nwatches = 0; + + nwfd = open(nwatch_file, O_RDONLY); + if (nwfd < 0) return CL_EOPEN; + + ret = read(nwfd, nwatch_str, MAX_WATCH_LEN); + close(nwfd); + if (ret < 0) return CL_EREAD; + + nwatches = strtol(nwatch_str, &p, 10); + + ret = onas_ddd_init_wdlt(nwatches); + if (ret) return ret; + + ret = onas_ddd_init_ht(ht_size); + if (ret) return ret; + + return CL_SUCCESS; +} + +static int onas_ddd_watch(const char *pathname, int fan_fd, uint64_t fan_mask, int in_fd, uint64_t in_mask) { + if (!pathname || fan_fd <= 0 || in_fd <= 0) return CL_ENULLARG; + + int ret = CL_SUCCESS; + size_t len = strlen(pathname); + + ret = onas_ddd_watch_hierarchy(pathname, len, in_fd, in_mask, ONAS_IN); + if (ret) return ret; + + ret = onas_ddd_watch_hierarchy(pathname, len, fan_fd, fan_mask, ONAS_FAN); + if (ret) return ret; + + return CL_SUCCESS; +} + +static int onas_ddd_watch_hierarchy(const char* pathname, size_t len, int fd, uint64_t mask, uint32_t type) { + + if (!pathname || fd <= 0 || !type) return CL_ENULLARG; + + if (type == (ONAS_IN | ONAS_FAN)) return CL_EARG; + + struct onas_hnode *hnode = NULL; + struct onas_element *elem = NULL; + int wd = 0; + + if(onas_ht_get(ddd_ht, pathname, len, &elem) != CL_SUCCESS) return CL_EARG; + + hnode = elem->data; + + if (type & ONAS_IN) { + wd = inotify_add_watch(fd, pathname, (uint32_t) mask); + + if (wd < 0) return CL_EARG; + + if ((uint32_t) wd >= wdlt_len) { + onas_ddd_grow_wdlt(); + } + + /* Link the hash node to the watch descriptor lookup table */ + hnode->wd = wd; + wdlt[wd] = hnode->pathname; + + hnode->watched |= ONAS_INWATCH; + } else if (type & ONAS_FAN) { + if(fanotify_mark(fd, FAN_MARK_ADD, mask, AT_FDCWD, hnode->pathname) < 0) return CL_EARG; + hnode->watched |= ONAS_FANWATCH; + } else { + return CL_EARG; + } + + struct onas_lnode *curr = hnode->childhead; + + while (curr->next != hnode->childtail) { + curr = curr->next; + + size_t size = len + strlen(curr->dirname) + 2; + char *child_path = (char *) cli_malloc(size); + if (child_path == NULL) + return CL_EMEM; + if (hnode->pathname[len-1] == '/') + snprintf(child_path, --size, "%s%s", hnode->pathname, curr->dirname); + else + snprintf(child_path, size, "%s/%s", hnode->pathname, curr->dirname); + + if(onas_ddd_watch_hierarchy(child_path, strlen(child_path), fd, mask, type)) { + return CL_EARG; + } + free(child_path); + } + + return CL_SUCCESS; +} + +static int onas_ddd_unwatch(const char *pathname, int fan_fd, int in_fd) { + if (!pathname || fan_fd <= 0 || in_fd <= 0) return CL_ENULLARG; + + int ret = CL_SUCCESS; + size_t len = strlen(pathname); + + ret = onas_ddd_unwatch_hierarchy(pathname, len, in_fd, ONAS_IN); + if (ret) return ret; + + ret = onas_ddd_unwatch_hierarchy(pathname, len,fan_fd, ONAS_FAN); + if (ret) return ret; + + return CL_SUCCESS; +} + +static int onas_ddd_unwatch_hierarchy(const char* pathname, size_t len, int fd, uint32_t type) { + + if (!pathname || fd <= 0 || !type) return CL_ENULLARG; + + if (type == (ONAS_IN | ONAS_FAN)) return CL_EARG; + + struct onas_hnode *hnode = NULL; + struct onas_element *elem = NULL; + int wd = 0; + + if(onas_ht_get(ddd_ht, pathname, len, &elem)) return CL_EARG; + + hnode = elem->data; + + if (type & ONAS_IN) { + wd = hnode->wd; + + if(!inotify_rm_watch(fd, wd)) return CL_EARG; + + /* Unlink the hash node from the watch descriptor lookup table */ + hnode->wd = 0; + wdlt[wd] = NULL; + + hnode->watched = ONAS_STOPWATCH; + } else if (type & ONAS_FAN) { + if(fanotify_mark(fd, FAN_MARK_REMOVE, 0, AT_FDCWD, hnode->pathname) < 0) return CL_EARG; + hnode->watched = ONAS_STOPWATCH; + } else { + return CL_EARG; + } + + struct onas_lnode *curr = hnode->childhead; + + while (curr->next != hnode->childtail) { + curr = curr->next; + + size_t size = len + strlen(curr->dirname) + 2; + char *child_path = (char *) cli_malloc(size); + if (child_path == NULL) + return CL_EMEM; + if (hnode->pathname[len-1] == '/') + snprintf(child_path, --size, "%s%s", hnode->pathname, curr->dirname); + else + snprintf(child_path, size, "%s/%s", hnode->pathname, curr->dirname); + + onas_ddd_unwatch_hierarchy(child_path, strlen(child_path), fd, type); + free(child_path); + } + + return CL_SUCCESS; +} + +void *onas_ddd_th(void *arg) { + struct ddd_thrarg *tharg = (struct ddd_thrarg *) arg; + sigset_t sigset; + struct sigaction act; + const struct optstruct *pt; + uint64_t in_mask = IN_ONLYDIR | IN_MOVE | IN_DELETE | IN_CREATE; + fd_set rfds; + char buf[4096]; + ssize_t bread; + const struct inotify_event *event; + int ret, len; + + /* ignore all signals except SIGUSR1 */ + sigfillset(&sigset); + sigdelset(&sigset, SIGUSR1); + /* The behavior of a process is undefined after it ignores a + * SIGFPE, SIGILL, SIGSEGV, or SIGBUS signal */ + sigdelset(&sigset, SIGFPE); + sigdelset(&sigset, SIGILL); + sigdelset(&sigset, SIGSEGV); +#ifdef SIGBUS + sigdelset(&sigset, SIGBUS); +#endif + pthread_sigmask(SIG_SETMASK, &sigset, NULL); + memset(&act, 0, sizeof(struct sigaction)); + act.sa_handler = onas_ddd_exit; + sigfillset(&(act.sa_mask)); + sigaction(SIGUSR1, &act, NULL); + sigaction(SIGSEGV, &act, NULL); + + onas_in_fd = inotify_init1(IN_NONBLOCK); + if (onas_in_fd == -1) { + logg("!ScanOnAccess: Could not init inotify."); + return NULL; + } + + ret = onas_ddd_init(0, ONAS_DEFAULT_HT_SIZE); + if (ret) { + logg("!ScanOnAccess: Failed to initialize 3D. \n"); + return NULL; + } + + /* Add provided paths recursively. */ + if((pt = optget(tharg->opts, "OnAccessIncludePath"))->enabled) { + while(pt) { + if (!strcmp(pt->strarg, "/")) { + logg("!ScanOnAcess: Not inlcuding path '%s' while DDD is enabled\n", pt->strarg); + logg("!ScanOnAcess: Please use the OnAccessMountPath option to watch '%s'\n", pt->strarg); + pt = (struct optstruct *) pt->nextarg; + continue; + } + if(onas_ht_get(ddd_ht, pt->strarg, strlen(pt->strarg), NULL) != CL_SUCCESS) { + if(onas_ht_add_hierarchy(ddd_ht, pt->strarg)) { + logg("!ScanOnAccess: Can't include path '%s'\n", pt->strarg); + return NULL; + } else + logg("ScanOnAccess: Protecting directory '%s' (and all sub-directories)\n", pt->strarg); + } + + pt = (struct optstruct *) pt->nextarg; + } + } else { + logg("!ScanOnAccess: Please specify at least one path with OnAccessIncludePath\n"); + return NULL; + } + + /* Remove provided paths recursively. */ + if((pt = optget(tharg->opts, "OnAccessExcludePath"))->enabled) { + while(pt) { + size_t ptlen = strlen(pt->strarg); + if(onas_ht_get(ddd_ht, pt->strarg, ptlen, NULL) == CL_SUCCESS) { + if(onas_ht_rm_hierarchy(ddd_ht, pt->strarg, ptlen, 0)) { + logg("!ScanOnAccess: Can't exclude path '%s'\n", pt->strarg); + return NULL; + } else + logg("ScanOnAccess: Excluding directory '%s' (and all sub-directories)\n", pt->strarg); + } + + pt = (struct optstruct *) pt->nextarg; + } + } + + /* Watch provided paths recursively */ + if((pt = optget(tharg->opts, "OnAccessIncludePath"))->enabled) { + while(pt) { + size_t ptlen = strlen(pt->strarg); + if(onas_ht_get(ddd_ht, pt->strarg, ptlen, NULL) == CL_SUCCESS) { + if(onas_ddd_watch(pt->strarg, tharg->fan_fd, tharg->fan_mask, onas_in_fd, in_mask)) { + logg("!ScanOnAccess: Could not watch path '%s', %s\n", pt->strarg, strerror(errno)); + if(errno == EINVAL && optget(tharg->opts, "OnAccessPrevention")->enabled) { + logg("!ScanOnAccess: When using the OnAccessPrevention option, please ensure your kernel\n\t\t\twas compiled with CONFIG_FANOTIFY_ACCESS_PERMISSIONS set to Y\n"); + + kill(getpid(), SIGTERM); + } + return NULL; + } + } + pt = (struct optstruct *) pt->nextarg; + } + } + + if(optget(tharg->opts, "OnAccessExtraScanning")->enabled) { + logg("ScanOnAccess: Extra scanning and notifications enabled.\n"); + } + + + FD_ZERO(&rfds); + FD_SET(onas_in_fd, &rfds); + + while (1) { + do { + ret = select(onas_in_fd + 1, &rfds, NULL, NULL, NULL); + } while(ret == -1 && errno == EINTR); + + while((bread = read(onas_in_fd, buf, sizeof(buf))) > 0) { + + /* Handle events. */ + int wd; + char *p = buf; + const char *path = NULL; + const char *child = NULL; + for(; p < buf + bread; p += sizeof(struct inotify_event) + event->len) { + + event = (const struct inotify_event *) p; + wd = event->wd; + path = wdlt[wd]; + child = event->name; + + len = strlen(path); + size_t size = strlen(child) + len + 2; + char *child_path = (char *) cli_malloc(size); + if (child_path == NULL) + return NULL; + + if (path[len-1] == '/') + snprintf(child_path, --size, "%s%s", path, child); + else + snprintf(child_path, size, "%s/%s", path, child); + + if (event->mask & IN_DELETE) { + onas_ddd_handle_in_delete(tharg, path, child_path, event, wd); + + } else if (event->mask & IN_MOVED_FROM) { + onas_ddd_handle_in_moved_from(tharg, path, child_path, event, wd); + + } else if (event->mask & IN_CREATE) { + onas_ddd_handle_in_create(tharg, path, child_path, event, wd, in_mask); + + } else if (event->mask & IN_MOVED_TO) { + onas_ddd_handle_in_moved_to(tharg, path, child_path, event, wd, in_mask); + } + } + } + } + + return NULL; +} + +static void onas_ddd_handle_in_delete(struct ddd_thrarg *tharg, + const char *path, const char *child_path, const struct inotify_event *event, int wd) { + + struct stat s; + if(stat(child_path, &s) == 0 && S_ISREG(s.st_mode)) return; + if(!(event->mask & IN_ISDIR)) return; + + logg("*ddd: DELETE - Removing %s from %s with wd:%d\n", child_path, path, wd); + onas_ddd_unwatch(child_path, tharg->fan_fd, onas_in_fd); + onas_ht_rm_hierarchy(ddd_ht, child_path, strlen(child_path), 0); + + return; +} + + +static void onas_ddd_handle_in_moved_from(struct ddd_thrarg *tharg, + const char *path, const char *child_path, const struct inotify_event *event, int wd) { + + struct stat s; + if(stat(child_path, &s) == 0 && S_ISREG(s.st_mode)) return; + if(!(event->mask & IN_ISDIR)) return; + + logg("*ddd: MOVED_FROM - Removing %s from %s with wd:%d\n", child_path, path, wd); + onas_ddd_unwatch(child_path, tharg->fan_fd, onas_in_fd); + onas_ht_rm_hierarchy(ddd_ht, child_path, strlen(child_path), 0); + + return; +} + + +static void onas_ddd_handle_in_create(struct ddd_thrarg *tharg, + const char *path, const char *child_path, const struct inotify_event *event, int wd, uint64_t in_mask) { + + struct stat s; + if (optget(tharg->opts, "OnAccessExtraScanning")->enabled) { + if(stat(child_path, &s) == 0 && S_ISREG(s.st_mode)) { + onas_ddd_handle_extra_scanning(tharg, child_path, ONAS_SCTH_ISFILE); + + } else if(stat(child_path, &s) == 0 && S_ISDIR(s.st_mode)) { + logg("*ddd: CREATE - Adding %s to %s with wd:%d\n", child_path, path, wd); + onas_ht_add_hierarchy(ddd_ht, child_path); + onas_ddd_watch(child_path, tharg->fan_fd, tharg->fan_mask, onas_in_fd, in_mask); + + onas_ddd_handle_extra_scanning(tharg, child_path, ONAS_SCTH_ISDIR); + } + } else { + + if(stat(child_path, &s) == 0 && S_ISREG(s.st_mode)) return; + if(!(event->mask & IN_ISDIR)) return; + + logg("*ddd: MOVED_TO - Adding %s to %s with wd:%d\n", child_path, path, wd); + onas_ht_add_hierarchy(ddd_ht, child_path); + onas_ddd_watch(child_path, tharg->fan_fd, tharg->fan_mask, onas_in_fd, in_mask); + } + + return; +} + +static void onas_ddd_handle_in_moved_to(struct ddd_thrarg *tharg, + const char *path, const char *child_path, const struct inotify_event *event, int wd, uint64_t in_mask) { + + struct stat s; + if (optget(tharg->opts, "OnAccessExtraScanning")->enabled) { + if(stat(child_path, &s) == 0 && S_ISREG(s.st_mode)) { + onas_ddd_handle_extra_scanning(tharg, child_path, ONAS_SCTH_ISFILE); + + } else if(stat(child_path, &s) == 0 && S_ISDIR(s.st_mode)) { + logg("*ddd: MOVED_TO - Adding %s to %s with wd:%d\n", child_path, path, wd); + onas_ht_add_hierarchy(ddd_ht, child_path); + onas_ddd_watch(child_path, tharg->fan_fd, tharg->fan_mask, onas_in_fd, in_mask); + + onas_ddd_handle_extra_scanning(tharg, child_path, ONAS_SCTH_ISDIR); + } + } else { + if(stat(child_path, &s) == 0 && S_ISREG(s.st_mode)) return; + if(!(event->mask & IN_ISDIR)) return; + + logg("*ddd: MOVED_TO - Adding %s to %s with wd:%d\n", child_path, path, wd); + onas_ht_add_hierarchy(ddd_ht, child_path); + onas_ddd_watch(child_path, tharg->fan_fd, tharg->fan_mask, onas_in_fd, in_mask); + } + + return; +} + +static void onas_ddd_handle_extra_scanning(struct ddd_thrarg *tharg, const char *pathname, int options) { + + struct scth_thrarg *scth_tharg = NULL; + pthread_attr_t scth_attr; + pthread_t scth_pid = 0; + + do { + if (pthread_attr_init(&scth_attr)) break; + pthread_attr_setdetachstate(&scth_attr, PTHREAD_CREATE_JOINABLE); + + if (!(scth_tharg = (struct scth_thrarg *) malloc(sizeof(struct scth_thrarg)))) break; + + scth_tharg->options = options; + scth_tharg->opts = tharg->opts; + scth_tharg->pathname = strdup(pathname); + + if (!pthread_create(&scth_pid, &scth_attr, onas_scan_th, scth_tharg)) break; + + free(scth_tharg); + scth_tharg = NULL; + } while(0); + if (!scth_tharg) logg("!ScanOnAccess: Unable to kick off extra scanning.\n"); + + return; +} + + +static void onas_ddd_exit(int sig) { + logg("*ScanOnAccess: onas_ddd_exit(), signal %d\n", sig); + + close(onas_in_fd); + + onas_free_ht(ddd_ht); + free(wdlt); + + pthread_exit(NULL); + logg("ScanOnAccess: stopped\n"); +} +#endif diff -Nru clamav-0.98.6+dfsg/clamd/onaccess_ddd.h clamav-0.99.2+addedllvm/clamd/onaccess_ddd.h --- clamav-0.98.6+dfsg/clamd/onaccess_ddd.h 1970-01-01 00:00:00.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamd/onaccess_ddd.h 2016-04-22 15:02:18.000000000 +0000 @@ -0,0 +1,45 @@ +/* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. + * Copyright (C) 2015 Sourcefire, Inc. + * + * Authors: Mickey Sola + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, + * MA 02110-1301, USA. + */ + +#ifndef __ONAS_IN_H +#define __ONAS_IN_H + +#define ONAS_IN 0x01 +#define ONAS_FAN 0x02 + +#define MAX_WATCH_LEN 7 + +struct ddd_thrarg { + int sid; + int options; + int fan_fd; + uint64_t fan_mask; + const struct optstruct *opts; + const struct cl_engine *engine; + const struct cl_limits *limits; +}; + + +int onas_ddd_init(uint64_t nwatches, size_t ht_size); +void *onas_ddd_th(void *arg); + + +#endif diff -Nru clamav-0.98.6+dfsg/clamd/onaccess_fan.c clamav-0.99.2+addedllvm/clamd/onaccess_fan.c --- clamav-0.98.6+dfsg/clamd/onaccess_fan.c 1970-01-01 00:00:00.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamd/onaccess_fan.c 2016-04-22 15:02:18.000000000 +0000 @@ -0,0 +1,432 @@ +/* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. + * Copyright (C) 2011 Sourcefire, Inc. + * + * Authors: Tomasz Kojm, Mickey Sola + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, + * MA 02110-1301, USA. + */ + +#if HAVE_CONFIG_H +#include "clamav-config.h" +#endif + +#if defined(FANOTIFY) + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include + +#include "libclamav/clamav.h" +#include "libclamav/scanners.h" + +#include "shared/optparser.h" +#include "shared/output.h" + +#include "server.h" +#include "others.h" +#include "scanner.h" + +#include "onaccess_fan.h" +#include "onaccess_hash.h" +#include "onaccess_ddd.h" + +static pthread_t ddd_pid; +static int onas_fan_fd; + +static void onas_fan_exit(int sig) +{ + logg("*ScanOnAccess: onas_fan_exit(), signal %d\n", sig); + + close(onas_fan_fd); + + if (ddd_pid > 0) { + pthread_kill(ddd_pid, SIGUSR1); + pthread_join(ddd_pid, NULL); + } + + pthread_exit(NULL); + logg("ScanOnAccess: stopped\n"); +} + +static int onas_fan_scanfile(int fan_fd, const char *fname, struct fanotify_event_metadata *fmd, int scan, int extinfo, struct thrarg *tharg) +{ + struct fanotify_response res; + struct cb_context context; + const char *virname; + int ret = 0; + + res.fd = fmd->fd; + res.response = FAN_ALLOW; + context.filename = fname; + context.virsize = 0; + context.scandata = NULL; + if(scan && cl_scandesc_callback(fmd->fd, &virname, NULL, tharg->engine, tharg->options, &context) == CL_VIRUS) { + if(extinfo && context.virsize) + logg("ScanOnAccess: %s: %s(%s:%llu) FOUND\n", fname, virname, context.virhash, context.virsize); + else + logg("ScanOnAccess: %s: %s FOUND\n", fname, virname); + virusaction(fname, virname, tharg->opts); + + res.response = FAN_DENY; + } + + if(fmd->mask & FAN_ALL_PERM_EVENTS) { + ret = write(fan_fd, &res, sizeof(res)); + if(ret == -1) + logg("!ScanOnAccess: Internal error (can't write to fanotify)\n"); + } + + return ret; +} + +void *onas_fan_th(void *arg) +{ + struct thrarg *tharg = (struct thrarg *) arg; + sigset_t sigset; + struct sigaction act; + const struct optstruct *pt; + short int scan; + int sizelimit = 0, extinfo; + STATBUF sb; + uint64_t fan_mask = FAN_EVENT_ON_CHILD | FAN_CLOSE; + fd_set rfds; + char buf[4096]; + ssize_t bread; + struct fanotify_event_metadata *fmd; + char fname[1024]; + int ret, len; + char err[128]; + + pthread_attr_t ddd_attr; + struct ddd_thrarg *ddd_tharg = NULL; + + ddd_pid = 0; + + /* ignore all signals except SIGUSR1 */ + sigfillset(&sigset); + sigdelset(&sigset, SIGUSR1); + /* The behavior of a process is undefined after it ignores a + * SIGFPE, SIGILL, SIGSEGV, or SIGBUS signal */ + sigdelset(&sigset, SIGFPE); + sigdelset(&sigset, SIGILL); + sigdelset(&sigset, SIGSEGV); +#ifdef SIGBUS + sigdelset(&sigset, SIGBUS); +#endif + pthread_sigmask(SIG_SETMASK, &sigset, NULL); + memset(&act, 0, sizeof(struct sigaction)); + act.sa_handler = onas_fan_exit; + sigfillset(&(act.sa_mask)); + sigaction(SIGUSR1, &act, NULL); + sigaction(SIGSEGV, &act, NULL); + + /* Initialize fanotify */ + onas_fan_fd = fanotify_init(FAN_CLASS_CONTENT | FAN_UNLIMITED_QUEUE | FAN_UNLIMITED_MARKS, O_LARGEFILE | O_RDONLY); + if(onas_fan_fd < 0) { + logg("!ScanOnAccess: fanotify_init failed: %s\n", cli_strerror(errno, err, sizeof(err))); + if(errno == EPERM) + logg("ScanOnAccess: clamd must be started by root\n"); + return NULL; + } + + if (!tharg) { + logg("!Unable to start on-access scanner. Bad thread args.\n"); + return NULL; + } + + + if (optget(tharg->opts, "OnAccessPrevention")->enabled && !optget(tharg->opts, "OnAccessMountPath")->enabled) { + logg("ScanOnAccess: preventing access attempts on malicious files.\n"); + fan_mask |= FAN_ACCESS_PERM | FAN_OPEN_PERM; + } else { + logg("ScanOnAccess: notifying only for access attempts.\n"); + fan_mask |= FAN_ACCESS | FAN_OPEN; + } + + if ((pt = optget(tharg->opts, "OnAccessMountPath"))->enabled) { + while(pt) { + if(fanotify_mark(onas_fan_fd, FAN_MARK_ADD | FAN_MARK_MOUNT, fan_mask, onas_fan_fd, pt->strarg) != 0) { + logg("!ScanOnAccess: Can't include mountpoint '%s'\n", pt->strarg); + return NULL; + } else + logg("ScanOnAccess: Protecting '%s' and rest of mount.\n", pt->strarg); + pt = (struct optstruct *) pt->nextarg; + } + + } else if (!optget(tharg->opts, "OnAccessDisableDDD")->enabled) { + do { + if(pthread_attr_init(&ddd_attr)) break; + pthread_attr_setdetachstate(&ddd_attr, PTHREAD_CREATE_JOINABLE); + + if(!(ddd_tharg = (struct ddd_thrarg *) malloc(sizeof(struct ddd_thrarg)))) break; + + ddd_tharg->fan_fd = onas_fan_fd; + ddd_tharg->fan_mask = fan_mask; + ddd_tharg->opts = tharg->opts; + ddd_tharg->engine = tharg->engine; + ddd_tharg->options = tharg->options; + + if(!pthread_create(&ddd_pid, &ddd_attr, onas_ddd_th, ddd_tharg)) break; + + free(ddd_tharg); + ddd_tharg=NULL; + } while(0); + if (!ddd_tharg) logg("!Unable to start dynamic directory determination.\n"); + + } else { + if((pt = optget(tharg->opts, "OnAccessIncludePath"))->enabled) { + while(pt) { + if(fanotify_mark(onas_fan_fd, FAN_MARK_ADD, fan_mask, onas_fan_fd, pt->strarg) != 0) { + logg("!ScanOnAccess: Can't include path '%s'\n", pt->strarg); + return NULL; + } else + logg("ScanOnAccess: Protecting directory '%s'\n", pt->strarg); + pt = (struct optstruct *) pt->nextarg; + } + } else { + logg("!ScanOnAccess: Please specify at least one path with OnAccessIncludePath\n"); + return NULL; + } + } + + /* Load other options. */ + sizelimit = optget(tharg->opts, "OnAccessMaxFileSize")->numarg; + if(sizelimit) + logg("ScanOnAccess: Max file size limited to %d bytes\n", sizelimit); + else + logg("ScanOnAccess: File size limit disabled\n"); + + extinfo = optget(tharg->opts, "ExtendedDetectionInfo")->enabled; + + FD_ZERO(&rfds); + FD_SET(onas_fan_fd, &rfds); + do { + if (reload) sleep(1); + ret = select(onas_fan_fd + 1, &rfds, NULL, NULL, NULL); + } while((ret == -1 && errno == EINTR) || reload); + + + time_t start = time(NULL) - 30; + while(((bread = read(onas_fan_fd, buf, sizeof(buf))) > 0) || errno == EOVERFLOW) { + + if (errno == EOVERFLOW) { + if (time(NULL) - start >= 30) { + logg("!ScanOnAccess: Internal error (failed to read data) ... %s\n", strerror(errno)); + logg("!ScanOnAccess: File too large for fanotify ... recovering and continuing scans...\n"); + start = time(NULL); + } + + errno = 0; + continue; + } + + fmd = (struct fanotify_event_metadata *) buf; + while(FAN_EVENT_OK(fmd, bread)) { + scan = 1; + if(fmd->fd >= 0) { + sprintf(fname, "/proc/self/fd/%d", fmd->fd); + len = readlink(fname, fname, sizeof(fname) - 1); + if(len == -1) { + close(fmd->fd); + logg("!ScanOnAccess: Internal error (readlink() failed)\n"); + return NULL; + } + fname[len] = 0; + + if(onas_fan_checkowner(fmd->pid, tharg->opts)) { + scan = 0; + logg("*ScanOnAccess: %s skipped (excluded UID)\n", fname); + } + + if(sizelimit) { + if(FSTAT(fmd->fd, &sb) != 0 || sb.st_size > sizelimit) { + scan = 0; + /* logg("*ScanOnAccess: %s skipped (size > %d)\n", fname, sizelimit); */ + } + } + + if(onas_fan_scanfile(onas_fan_fd, fname, fmd, scan, extinfo, tharg) == -1) { + close(fmd->fd); + return NULL; + } + + if(close(fmd->fd) == -1) { + printf("!ScanOnAccess: Internal error (close(%d) failed)\n", fmd->fd); + close(fmd->fd); + return NULL; + } + } + fmd = FAN_EVENT_NEXT(fmd, bread); + } + do { + if (reload) sleep(1); + ret = select(onas_fan_fd + 1, &rfds, NULL, NULL, NULL); + } while((ret == -1 && errno == EINTR) || reload); + } + + if(bread < 0) + logg("!ScanOnAccess: Internal error (failed to read data) ... %s\n", strerror(errno)); + + return NULL; +} + +#elif defined(CLAMAUTH) + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "libclamav/clamav.h" +#include "libclamav/scanners.h" + +#include "shared/optparser.h" +#include "shared/output.h" + +#include "server.h" +#include "others.h" +#include "scanner.h" + +#define SUPPORTED_PROTOCOL 2 + +static int cauth_fd = -1; + +struct ClamAuthEvent { + unsigned int action; + char path[1024]; + unsigned int pid; +}; + +static void cauth_exit(int sig) +{ + logg("*ScanOnAccess: cauth_exit(), signal %d\n", sig); + if(cauth_fd > 0) + close(cauth_fd); + pthread_exit(NULL); + logg("ScanOnAccess: stopped\n"); +} + +static int cauth_scanfile(const char *fname, int extinfo, struct thrarg *tharg) +{ + struct cb_context context; + const char *virname; + int ret = 0, fd; + + context.filename = fname; + context.virsize = 0; + context.scandata = NULL; + + fd = open(fname, O_RDONLY); + if(fd == -1) + return -1; + + if(cl_scandesc_callback(fd, &virname, NULL, tharg->engine, tharg->options, &context) == CL_VIRUS) { + if(extinfo && context.virsize) + logg("ScanOnAccess: %s: %s(%s:%llu) FOUND\n", fname, virname, context.virhash, context.virsize); + else + logg("ScanOnAccess: %s: %s FOUND\n", fname, virname); + virusaction(fname, virname, tharg->opts); + } + close(fd); + return ret; +} + +void *onas_fan_th(void *arg) +{ + struct thrarg *tharg = (struct thrarg *) arg; + sigset_t sigset; + struct sigaction act; + int eventcnt = 1, extinfo; + char err[128]; + struct ClamAuthEvent event; + + /* ignore all signals except SIGUSR1 */ + sigfillset(&sigset); + sigdelset(&sigset, SIGUSR1); + /* The behavior of a process is undefined after it ignores a + * SIGFPE, SIGILL, SIGSEGV, or SIGBUS signal */ + sigdelset(&sigset, SIGFPE); + sigdelset(&sigset, SIGILL); + sigdelset(&sigset, SIGSEGV); +#ifdef SIGBUS + sigdelset(&sigset, SIGBUS); +#endif + pthread_sigmask(SIG_SETMASK, &sigset, NULL); + memset(&act, 0, sizeof(struct sigaction)); + act.sa_handler = cauth_exit; + sigfillset(&(act.sa_mask)); + sigaction(SIGUSR1, &act, NULL); + sigaction(SIGSEGV, &act, NULL); + + extinfo = optget(tharg->opts, "ExtendedDetectionInfo")->enabled; + + cauth_fd = open("/dev/clamauth", O_RDONLY); + if(cauth_fd == -1) { + logg("!ScanOnAccess: Can't open /dev/clamauth\n"); + if(errno == ENOENT) + logg("!ScanOnAccess: Please make sure ClamAuth.kext is loaded\n"); + else if(errno == EACCES) + logg("!ScanOnAccess: This application requires root privileges\n"); + else + logg("!ScanOnAccess: /dev/clamauth: %s\n", cli_strerror(errno, err, sizeof(err))); + + return NULL; + } + + while(1) { + if(read(cauth_fd, &event, sizeof(event)) > 0) { + if(eventcnt == 1) { + if(event.action != SUPPORTED_PROTOCOL) { + logg("!ScanOnAccess: Protocol version mismatch (tool: %d, driver: %d)\n", SUPPORTED_PROTOCOL, event.action); + close(cauth_fd); + return NULL; + } + if(strncmp(event.path, "ClamAuth", 8)) { + logg("!ScanOnAccess: Invalid version event\n"); + close(cauth_fd); + return NULL; + } + logg("ScanOnAccess: Driver version: %s, protocol version: %d\n", &event.path[9], event.action); + } else { + cauth_scanfile(event.path, extinfo, tharg); + } + eventcnt++; + } else { + if(errno == ENODEV) { + printf("^ScanOnAccess: ClamAuth module deactivated, terminating\n"); + close(cauth_fd); + return NULL; + } + } + usleep(200); + } +} +#endif diff -Nru clamav-0.98.6+dfsg/clamd/onaccess_fan.h clamav-0.99.2+addedllvm/clamd/onaccess_fan.h --- clamav-0.98.6+dfsg/clamd/onaccess_fan.h 1970-01-01 00:00:00.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamd/onaccess_fan.h 2016-04-22 15:02:18.000000000 +0000 @@ -0,0 +1,27 @@ +/* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. + * Copyright (C) 2011 Sourcefire, Inc. + * + * Authors: Tomasz Kojm + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, + * MA 02110-1301, USA. + */ + +#ifndef __FAN_H +#define __FAN_H + +void *onas_fan_th(void *arg); + +#endif diff -Nru clamav-0.98.6+dfsg/clamd/onaccess_hash.c clamav-0.99.2+addedllvm/clamd/onaccess_hash.c --- clamav-0.98.6+dfsg/clamd/onaccess_hash.c 1970-01-01 00:00:00.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamd/onaccess_hash.c 2016-04-22 15:02:18.000000000 +0000 @@ -0,0 +1,677 @@ +/* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. + * Copyright (C) 2015 Sourcefire, Inc. + * + * Authors: Mickey Sola + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, + * MA 02110-1301, USA. + */ + +#if HAVE_CONFIG_H +#include "clamav-config.h" +#endif + +#if defined(FANOTIFY) +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include + +#include "onaccess_fan.h" +#include "onaccess_hash.h" +#include "onaccess_ddd.h" + +#include "libclamav/clamav.h" +#include "libclamav/scanners.h" + +#include "shared/optparser.h" +#include "shared/output.h" + +#include "server.h" +#include "others.h" +#include "scanner.h" + +static struct onas_bucket *onas_bucket_init(); +static void onas_free_bucket(struct onas_bucket *bckt); +static int onas_bucket_insert(struct onas_bucket *bckt, struct onas_element *elem); +static int onas_bucket_remove(struct onas_bucket *bckt, struct onas_element *elem); + +static int onas_add_hashnode_child(struct onas_hnode *node, const char* dirname); + +static struct onas_lnode *onas_listnode_init(void); + +static struct onas_hnode *onas_hashnode_init(void); + +static inline uint32_t onas_hshift(uint32_t hash) { + + hash = ~hash; + + hash += (hash << 15); + hash ^= (hash >> 12); + hash += (hash << 2); + hash ^= (hash >> 4); + hash += (hash << 3); + hash += (hash << 11); + hash ^= (hash >> 16); + + return hash; +} + +static inline int onas_hash(const char* key, size_t keylen, uint32_t size) { + + uint32_t hash = 1; + uint32_t i; + + for (i = 0; i < keylen; i++) { + hash += key[i]; + hash = onas_hshift(hash); + } + + return hash & (size - 1); +} + +int onas_ht_init(struct onas_ht **ht, uint32_t size) { + + if (size == 0 || (size & (~size + 1)) != size) return CL_EARG; + + *ht = (struct onas_ht *) cli_malloc(sizeof(struct onas_ht)); + if (!(*ht)) return CL_EMEM; + + **ht = (struct onas_ht) { + .htable = NULL, + .size = size, + .nbckts = 0, + }; + + if (!((*ht)->htable = (struct onas_bucket **) cli_calloc(size, sizeof(struct onas_bucket *)))) { + onas_free_ht(*ht); + return CL_EMEM; + } + + return CL_SUCCESS; +} + +void onas_free_ht(struct onas_ht *ht) { + + if (!ht || ht->size == 0) return; + + if (!ht->htable) { + free(ht); + return; + } + + uint32_t i = 0; + for (i = 0; i < ht->size; i++) { + onas_free_bucket(ht->htable[i]); + ht->htable[i] = NULL; + } + + free(ht->htable); + ht->htable = NULL; + + free(ht); + + return; +} + +static struct onas_bucket *onas_bucket_init() { + + struct onas_bucket *bckt = (struct onas_bucket*) cli_malloc(sizeof(struct onas_bucket)); + if (!bckt) return NULL; + + *bckt = (struct onas_bucket) { + .size = 0, + .head = NULL, + .tail = NULL + }; + + return bckt; +} + +static void onas_free_bucket(struct onas_bucket *bckt) { + + if (!bckt) return; + + uint32_t i = 0; + struct onas_element *curr = NULL; + + for (i = 0; i < bckt->size; i++) { + curr = bckt->head; + bckt->head = curr->next; + onas_free_element(curr); + curr = NULL; + } + + free(bckt); + + return; +} + +struct onas_element *onas_element_init(struct onas_hnode *value, const char *key, size_t klen) { + + struct onas_element *elem = (struct onas_element *) cli_malloc(sizeof(struct onas_element)); + if (!elem) return NULL; + + *elem = (struct onas_element) { + .key = key, + .klen = klen, + .data = value, + .next = NULL, + .prev = NULL + }; + + return elem; +} + +void onas_free_element(struct onas_element *elem) { + + if (!elem) return; + + onas_free_hashnode(elem->data); + + elem->prev = NULL; + elem->next = NULL; + + free(elem); + + return; +} + +int onas_ht_insert(struct onas_ht *ht, struct onas_element *elem) { + + if (!ht || !elem || !elem->key) return CL_ENULLARG; + + int idx = onas_hash(elem->key, elem->klen, ht->size); + struct onas_bucket *bckt = ht->htable[idx]; + + int ret = 0; + uint32_t bsize = 0; + + if (bckt == NULL) { + ht->htable[idx] = onas_bucket_init(); + bckt = ht->htable[idx]; + } + + bsize = bckt->size; + ret = onas_bucket_insert(bckt, elem); + + if (ret == CL_SUCCESS) + if (bsize < bckt->size) + ht->nbckts++; + + return ret; +} + +static int onas_bucket_insert(struct onas_bucket *bckt, struct onas_element *elem) { + if (!bckt || !elem) return CL_ENULLARG; + + if (bckt->size == 0) { + bckt->head = elem; + bckt->tail = elem; + elem->prev = NULL; + elem->next = NULL; + bckt->size++; + } else { + struct onas_element *btail = bckt->tail; + + btail->next = elem; + elem->prev = btail; + elem->next = NULL; + bckt->tail = elem; + bckt->size++; + } + + return CL_SUCCESS; +} + +/* Checks if key exists and optionally stores address to the element corresponding to the key within elem */ +int onas_ht_get(struct onas_ht *ht, const char *key, size_t klen, struct onas_element **elem) { + + if (elem) *elem = NULL; + + if (!ht || !key || klen <= 0) return CL_ENULLARG; + + struct onas_bucket *bckt = ht->htable[onas_hash(key, klen, ht->size)]; + + if (!bckt || bckt->size == 0) return CL_EARG; + + struct onas_element *curr = bckt->head; + + while (curr && strcmp(curr->key, key)) { + curr = curr->next; + } + + if (!curr) return CL_EARG; + + if (elem) *elem = curr; + + return CL_SUCCESS; +} + +/* Removes the element corresponding to key from the hashtable and optionally returns a pointer to the removed element. */ +int onas_ht_remove(struct onas_ht *ht, const char* key, size_t klen, struct onas_element **relem) { + if (!ht || !key || klen <= 0) return CL_ENULLARG; + + struct onas_bucket *bckt = ht->htable[onas_hash(key, klen, ht->size)]; + + if (!bckt) return CL_EARG; + + struct onas_element *elem = NULL; + onas_ht_get(ht, key, klen, &elem); + + if (!elem) return CL_EARG; + + int ret = onas_bucket_remove(bckt, elem); + + if (relem) *relem = elem; + + return ret; +} + +static int onas_bucket_remove(struct onas_bucket *bckt, struct onas_element *elem) { + if (!bckt || !elem) return CL_ENULLARG; + + struct onas_element *curr = bckt->head; + + while (curr && curr != elem) { + curr = curr->next; + } + + if (!curr) return CL_EARG; + + if (bckt->head == elem) { + bckt->head = elem->next; + if (bckt->head) bckt->head->prev = NULL; + + elem->next = NULL; + } else if (bckt->tail == elem) { + bckt->tail = elem->prev; + if (bckt->tail) bckt->tail->next = NULL; + + elem->prev = NULL; + } else { + struct onas_element *tmp = NULL; + + tmp = elem->prev; + if (tmp) { + tmp->next = elem->next; + tmp = elem->next; + tmp->prev = elem->prev; + } + + elem->prev = NULL; + elem->next = NULL; + } + + bckt->size--; + + return CL_SUCCESS; +} + + +/* Dealing with hash nodes and list nodes */ + +/* Function to initialize hashnode. */ +static struct onas_hnode *onas_hashnode_init(void) { + struct onas_hnode *hnode = NULL; + if(!(hnode = (struct onas_hnode *) cli_malloc(sizeof(struct onas_hnode)))) { + return NULL; + } + + *hnode = (struct onas_hnode) { + .pathlen = 0, + .pathname = NULL, + .prnt_pathlen = 0, + .prnt_pathname = NULL, + .childhead = NULL, + .childtail = NULL, + .wd = 0, + .watched = 0 + }; + + if (!(hnode->childhead = (struct onas_lnode *) onas_listnode_init())) { + onas_free_hashnode(hnode); + return NULL; + } + + if (!(hnode->childtail = (struct onas_lnode *) onas_listnode_init())) { + onas_free_hashnode(hnode); + return NULL; + } + + hnode->childhead->next = (struct onas_lnode *) hnode->childtail; + hnode->childtail->prev = (struct onas_lnode *) hnode->childhead; + + return hnode; +} + +/* Function to initialize listnode. */ +static struct onas_lnode *onas_listnode_init(void) { + struct onas_lnode *lnode = NULL; + if(!(lnode = (struct onas_lnode *) cli_malloc(sizeof(struct onas_lnode)))) { + return NULL; + } + + *lnode = (struct onas_lnode) { + .dirname = NULL, + .next = NULL, + .prev = NULL + }; + + return lnode; +} + +/* Function to free hashnode. */ +void onas_free_hashnode(struct onas_hnode *hnode) { + if (!hnode) return; + + onas_free_dirlist(hnode->childhead); + hnode->childhead = NULL; + + free(hnode->pathname); + hnode->pathname = NULL; + + free(hnode->prnt_pathname); + hnode->prnt_pathname = NULL; + + free(hnode); + + return; +} + + +/* Function to free list of listnodes. */ +void onas_free_dirlist(struct onas_lnode *head) { + if (!head) return; + struct onas_lnode *curr = head; + struct onas_lnode *tmp = curr; + + while(curr) { + tmp = curr->next; + onas_free_listnode(curr); + curr = tmp; + } + + return; +} + +/* Function to free a listnode. */ +void onas_free_listnode(struct onas_lnode *lnode) { + if (!lnode) return; + + lnode->next = NULL; + lnode->prev = NULL; + + free(lnode->dirname); + lnode->dirname = NULL; + + free(lnode); + + return; +} + +static int onas_add_hashnode_child(struct onas_hnode *node, const char* dirname) { + if (!node || !dirname) return CL_ENULLARG; + + struct onas_lnode *child = onas_listnode_init(); + if (!child) return CL_EMEM; + + size_t n = strlen(dirname); + child->dirname = strndup(dirname, n); + + onas_add_listnode(node->childtail, child); + + return CL_SUCCESS; +} + +/* Function to add a dir_listnode to a list */ +int onas_add_listnode(struct onas_lnode *tail, struct onas_lnode *node) { + if (!tail || !node) return CL_ENULLARG; + + struct onas_lnode *tmp = tail->prev; + + tmp->next = node; + node->prev = tail->prev; + + node->next = tail; + tail->prev = node; + + return CL_SUCCESS; +} + +/* Function to remove a listnode based on dirname. */ +int onas_rm_listnode(struct onas_lnode *head, const char *dirname) { + if (!dirname || !head) return CL_ENULLARG; + + struct onas_lnode *curr = head; + size_t n = strlen(dirname); + + while ((curr = curr->next)) { + if (!strncmp(curr->dirname, dirname, n)) { + struct onas_lnode *tmp = curr->prev; + tmp->next = curr->next; + tmp = curr->next; + tmp->prev = curr->prev; + + onas_free_listnode(curr); + + return CL_SUCCESS; + } + } + + return -1; +} + +/*** Dealing with parent/child relationships in the table. ***/ + +/* Determines parent and returns a copy based on full pathname. */ +inline static char *onas_get_parent(const char *pathname, size_t len) { + if (!pathname || len <= 1) return NULL; + + int idx = len - 2; + char *ret = NULL; + + while(idx >= 0 && pathname[idx] != '/') { + idx--; + } + + if (idx == 0) { + idx++; + } + + ret = strndup(pathname, idx); + if (!ret) { + errno = ENOMEM; + return NULL; + } + + return ret; +} + +/* Gets the index at which the name of directory begins from the full pathname. */ +inline static int onas_get_dirname_idx(const char *pathname, size_t len) { + if (!pathname || len <= 1) return -1; + + int idx = len - 2; + + while(idx >= 0 && pathname[idx] != '/') { + idx--; + } + + if (pathname[idx] == '/') + return idx + 1; + + return idx; +} + +/* Emancipates the specified child from the specified parent. */ +int onas_ht_rm_child(struct onas_ht *ht, const char *prntpath, size_t prntlen, const char *childpath, size_t childlen) { + + if (!ht || !prntpath || prntlen <= 0 || !childpath || childlen <= 1) return CL_ENULLARG; + + struct onas_element *elem = NULL; + struct onas_hnode *hnode = NULL; + int idx = onas_get_dirname_idx(childpath, childlen); + int ret = 0; + + if(idx <= 0) return CL_SUCCESS; + + if(onas_ht_get(ht, prntpath, prntlen, &elem) != CL_SUCCESS) return CL_EARG; + + hnode = elem->data; + + if ((ret = onas_rm_listnode(hnode->childhead, &(childpath[idx])))) return CL_EARG; + + return CL_SUCCESS; +} + +/* The specified parent adds the specified child to its list. */ +int onas_ht_add_child(struct onas_ht *ht, const char *prntpath, size_t prntlen, const char *childpath, size_t childlen) { + if (!ht || !prntpath || prntlen <= 0 || !childpath || childlen <= 1) return CL_ENULLARG; + + struct onas_element *elem = NULL; + struct onas_hnode *hnode = NULL; + int idx = onas_get_dirname_idx(childpath, childlen); + + if(idx <= 0) return CL_SUCCESS; + + if(onas_ht_get(ht, prntpath, prntlen, &elem)) return CL_EARG; + hnode = elem->data; + + return onas_add_hashnode_child(hnode, &(childpath[idx])); +} + +/*** Dealing with hierarchy changes. ***/ + +/* Adds the hierarchy under pathname to the tree and allocates all necessary memory. */ +int onas_ht_add_hierarchy(struct onas_ht *ht, const char *pathname) { + + if (!ht || !pathname) return CL_ENULLARG; + + FTS *ftsp = NULL; + int ftspopts = FTS_PHYSICAL | FTS_XDEV; + FTSENT *curr = NULL; + FTSENT *childlist = NULL; + + size_t len = strlen(pathname); + char *prnt = onas_get_parent(pathname, len); + if (prnt) onas_ht_add_child(ht, prnt, strlen(prnt), pathname, len); + free(prnt); + + char * const pathargv[] = { (char*) pathname, NULL }; + if (!(ftsp = fts_open(pathargv, ftspopts, NULL))) { + logg("!ScanOnAccess: Could not open '%s'\n", pathname); + return CL_EARG; + } + + while((curr = fts_read(ftsp))) { + + struct onas_hnode *hnode = NULL; + + /* May want to handle other options in the future. */ + switch (curr->fts_info) { + case FTS_D: + hnode = onas_hashnode_init(); + if (!hnode) return CL_EMEM; + + hnode->pathlen = curr->fts_pathlen; + hnode->pathname = strndup(curr->fts_path, hnode->pathlen); + + hnode->prnt_pathname = onas_get_parent(hnode->pathname, hnode->pathlen); + if (hnode->prnt_pathname) + hnode->prnt_pathlen = strlen(hnode->prnt_pathname); + else + hnode->prnt_pathlen = 0; + break; + default: + continue; + } + + if((childlist = fts_children(ftsp, 0))) { + do { + if (childlist->fts_info & FTS_D && + !(childlist->fts_info & FTS_DNR) && + !(childlist->fts_info & FTS_SL)) { + if(CL_EMEM == onas_add_hashnode_child(hnode, childlist->fts_name)) + return CL_EMEM; + } + + } while ((childlist = childlist->fts_link)); + } + + struct onas_element *elem = onas_element_init(hnode, hnode->pathname, hnode->pathlen); + if (!elem) return CL_EMEM; + + if (onas_ht_insert(ht, elem)) return -1; + } + + fts_close(ftsp); + return CL_SUCCESS; +} + +/* Removes the underlying hierarchy from the tree and frees all associated memory. */ +int onas_ht_rm_hierarchy(struct onas_ht *ht, const char* pathname, size_t len, int level) { + if (!ht || !pathname || len <= 0) return CL_ENULLARG; + + struct onas_hnode *hnode = NULL; + struct onas_element *elem = NULL; + char *prntname = NULL; + size_t prntlen = 0; + + if(onas_ht_get(ht, pathname, len, &elem)) return CL_EARG; + + hnode = elem->data; + + struct onas_lnode *curr = hnode->childhead; + + if(level == 0) { + if(!(prntname = onas_get_parent(pathname, len))) return CL_EARG; + + prntlen = strlen(prntname); + if(onas_ht_rm_child(ht, prntname, prntlen, pathname, len)) return CL_EARG; + + free(prntname); + } + + while (curr->next != hnode->childtail) { + curr = curr->next; + + size_t size = len + strlen(curr->dirname) + 2; + char *child_path = (char *) cli_malloc(size); + if (child_path == NULL) + return CL_EMEM; + if (hnode->pathname[len-1] == '/') + snprintf(child_path, size, "%s%s", hnode->pathname, curr->dirname); + else + snprintf(child_path, size, "%s/%s", hnode->pathname, curr->dirname); + onas_ht_rm_hierarchy(ht, child_path, size, level + 1); + free(child_path); + } + + onas_ht_remove(ht, pathname, len, NULL); + onas_free_element(elem); + + return CL_SUCCESS; +} +#endif diff -Nru clamav-0.98.6+dfsg/clamd/onaccess_hash.h clamav-0.99.2+addedllvm/clamd/onaccess_hash.h --- clamav-0.98.6+dfsg/clamd/onaccess_hash.h 1970-01-01 00:00:00.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamd/onaccess_hash.h 2016-04-22 15:02:18.000000000 +0000 @@ -0,0 +1,111 @@ +/* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. + * Copyright (C) 2015 Sourcefire, Inc. + * + * Authors: Mickey Sola + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, + * MA 02110-1301, USA. + */ + +#ifndef __ONAS_HASH_H +#define __ONAS_HASH_H + +#define ONAS_FANWATCH 0x1 +#define ONAS_INWATCH 0x2 +#define ONAS_STOPWATCH 0x3 + +#define ONAS_DEFAULT_HT_SIZE 1 << 18 + +struct onas_element { + + const char* key; + size_t klen; + struct onas_hnode *data; + + struct onas_element *next; + struct onas_element *prev; +}; + +struct onas_bucket { + + uint32_t size; + + struct onas_element *head; + struct onas_element *tail; +}; + +struct onas_ht { + + struct onas_bucket **htable; + + /* Must be a sufficiently high power of two--will not grow. */ + uint32_t size; + uint32_t nbckts; +}; + +/* Directory node struct for lists */ +struct onas_lnode { + + /* List stuffs */ + char *dirname; + struct onas_lnode *next; + struct onas_lnode *prev; +}; + +/* Directory node struct for hash tables */ +struct onas_hnode { + + /* Path info */ + int pathlen; + char *pathname; + + /* Parent info */ + int prnt_pathlen; + char *prnt_pathname; + + /* Child head and tail are empty sentinels */ + struct onas_lnode *childhead; + struct onas_lnode *childtail; + + /* Inotify watch descriptor */ + int wd; + + /* Watched stuffs */ + uint32_t watched; +}; + + +void onas_free_ht(struct onas_ht *ht); +int onas_ht_init(struct onas_ht **ht, uint32_t table_size); +int onas_ht_insert(struct onas_ht *ht, struct onas_element *elem); +int onas_ht_remove(struct onas_ht *ht, const char *key, size_t klen, struct onas_element **elem); +int onas_ht_get(struct onas_ht *ht, const char *key, size_t klen, struct onas_element **elem); +int onas_ht_rm_hierarchy(struct onas_ht *ht, const char *pathname, size_t len, int level); +int onas_ht_add_hierarchy(struct onas_ht *ht, const char *pathname); +int onas_ht_add_child(struct onas_ht *ht, const char *prntpath, size_t prntlen, const char *childpath, size_t childlen); +int onas_ht_rm_child(struct onas_ht *ht, const char *prntpath, size_t prntlen, const char *childpath, size_t childlen); + +void onas_free_element(struct onas_element *elem); +struct onas_element *onas_element_init(struct onas_hnode *value, const char *key, size_t klen); + +void onas_free_hashnode(struct onas_hnode *hnode); + +void onas_free_listnode(struct onas_lnode *lnode); +int onas_add_listnode(struct onas_lnode *tail, struct onas_lnode *node); +int onas_rm_listnode(struct onas_lnode *head, const char *dirname); + +void onas_free_dirlist(struct onas_lnode *head); + +#endif diff -Nru clamav-0.98.6+dfsg/clamd/onaccess_scth.c clamav-0.99.2+addedllvm/clamd/onaccess_scth.c --- clamav-0.98.6+dfsg/clamd/onaccess_scth.c 1970-01-01 00:00:00.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamd/onaccess_scth.c 2016-04-22 15:02:18.000000000 +0000 @@ -0,0 +1,120 @@ +/* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. + * + * Authors: Mickey Sola + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, + * MA 02110-1301, USA. + */ + +#if HAVE_CONFIG_H +#include "clamav-config.h" +#endif + +#if defined(FANOTIFY) + +#include +#include +#include +#include +#include +#include +#include + +#include "shared/optparser.h" +#include "shared/output.h" + +#include "others.h" + +#include "onaccess_scth.h" + +static void onas_scth_handle_dir(const char *pathname); +static void onas_scth_handle_file(const char *pathname); + +static void onas_scth_exit(int sig); + +static void onas_scth_exit(int sig) { + logg("*ScanOnAccess: onas_scth_exit(), signal %d\n", sig); + + pthread_exit(NULL); +} + +static void onas_scth_handle_dir(const char *pathname) { + FTS *ftsp = NULL; + int ftspopts = FTS_PHYSICAL | FTS_XDEV; + FTSENT *curr = NULL; + + char *const pathargv[] = { (char *) pathname, NULL }; + if (!(ftsp = fts_open(pathargv, ftspopts, NULL))) return; + + /* Offload scanning work to fanotify thread to avoid potential deadlocks. */ + while ((curr = fts_read(ftsp))) { + if (curr->fts_info != FTS_D) { + int fd = open(curr->fts_path, O_RDONLY); + if (fd > 0) close(fd); + } + } + + return; +} + + +static void onas_scth_handle_file(const char *pathname) { + if (!pathname) return; + + /* Offload scanning work to fanotify thread to avoid potential deadlocks. */ + int fd = open(pathname, O_RDONLY); + if (fd > 0) close(fd); + + return; +} + +void *onas_scan_th(void *arg) { + struct scth_thrarg *tharg = (struct scth_thrarg *) arg; + sigset_t sigset; + struct sigaction act; + + /* ignore all signals except SIGUSR1 */ + sigfillset(&sigset); + sigdelset(&sigset, SIGUSR1); + /* The behavior of a process is undefined after it ignores a + * SIGFPE, SIGILL, SIGSEGV, or SIGBUS signal */ + sigdelset(&sigset, SIGFPE); + sigdelset(&sigset, SIGILL); + sigdelset(&sigset, SIGSEGV); +#ifdef SIGBUS + sigdelset(&sigset, SIGBUS); +#endif + pthread_sigmask(SIG_SETMASK, &sigset, NULL); + memset(&act, 0, sizeof(struct sigaction)); + act.sa_handler = onas_scth_exit; + sigfillset(&(act.sa_mask)); + sigaction(SIGUSR1, &act, NULL); + sigaction(SIGSEGV, &act, NULL); + + + if (tharg->options & ONAS_SCTH_ISDIR) { + logg("ScanOnAccess: Performing additional scanning on directory '%s'\n", tharg->pathname); + onas_scth_handle_dir(tharg->pathname); + } else if (tharg->options & ONAS_SCTH_ISFILE) { + logg("ScanOnAccess: Performing additional scanning on file '%s'\n", tharg->pathname); + onas_scth_handle_file(tharg->pathname); + } + + free(tharg->pathname); + tharg->pathname = NULL; + + return NULL; +} +#endif diff -Nru clamav-0.98.6+dfsg/clamd/onaccess_scth.h clamav-0.99.2+addedllvm/clamd/onaccess_scth.h --- clamav-0.98.6+dfsg/clamd/onaccess_scth.h 1970-01-01 00:00:00.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamd/onaccess_scth.h 2016-04-22 15:02:18.000000000 +0000 @@ -0,0 +1,35 @@ +/* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. + * + * Authors: Mickey Sola + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, + * MA 02110-1301, USA. + */ + +#ifndef __ONAS_SCTH_H +#define __ONAS_SCTH_H + +#define ONAS_SCTH_ISDIR 0x01 +#define ONAS_SCTH_ISFILE 0x02 + +struct scth_thrarg { + int options; + const struct optstruct *opts; + char *pathname; +}; + +void *onas_scan_th(void *arg); + +#endif diff -Nru clamav-0.98.6+dfsg/clamd/others.c clamav-0.99.2+addedllvm/clamd/others.c --- clamav-0.98.6+dfsg/clamd/others.c 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamd/others.c 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C) 2007-2009 Sourcefire, Inc. * * Authors: Tomasz Kojm, Trog, Török Edvin @@ -802,7 +803,7 @@ #ifdef FANOTIFY int -fan_checkowner (int pid, const struct optstruct *opts) +onas_fan_checkowner (int pid, const struct optstruct *opts) { char path[32]; STATBUF sb; diff -Nru clamav-0.98.6+dfsg/clamd/others.h clamav-0.99.2+addedllvm/clamd/others.h --- clamav-0.98.6+dfsg/clamd/others.h 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamd/others.h 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C) 2007-2009 Sourcefire, Inc. * * Authors: Tomasz Kojm, Trog, Török Edvin @@ -83,7 +84,7 @@ void fds_free(struct fd_data *data); #ifdef FANOTIFY -int fan_checkowner(int pid, const struct optstruct *opts); +int onas_fan_checkowner(int pid, const struct optstruct *opts); #endif #endif diff -Nru clamav-0.98.6+dfsg/clamd/scanner.c clamav-0.99.2+addedllvm/clamd/scanner.c --- clamav-0.98.6+dfsg/clamd/scanner.c 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamd/scanner.c 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C) 2007-2009 Sourcefire, Inc. * * Authors: Tomasz Kojm, Török Edvin @@ -107,12 +108,36 @@ c->virhash[32] = '\0'; } +void clamd_virus_found_cb(int fd, const char *virname, void *ctx) +{ + struct cb_context *c = ctx; + struct scan_cb_data *d = c->scandata; + const char *fname; + + if (d == NULL) + return; + if (!(d->options & CL_SCAN_ALLMATCHES)) + return; + if (virname == NULL) + return; + + fname = (c && c->filename) ? c->filename : "(filename not set)"; + + if (virname) { + conn_reply_virus(d->conn, fname, virname); + if(c->virsize > 0 && optget(d->opts, "ExtendedDetectionInfo")->enabled) + logg("~%s: %s(%s:%llu) FOUND\n", fname, virname, c->virhash, c->virsize); + logg("~%s: %s FOUND\n", fname, virname); + } + + return; +} + #define BUFFSIZE 1024 int scan_callback(STATBUF *sb, char *filename, const char *msg, enum cli_ftw_reason reason, struct cli_ftw_cbdata *data) { struct scan_cb_data *scandata = data->data; const char *virname = NULL; - const char **virpp = &virname; int ret; int type = scandata->type; struct cb_context context; @@ -233,18 +258,12 @@ thrmgr_setactivetask(filename, NULL); context.filename = filename; context.virsize = 0; - ret = cl_scanfile_callback(filename, virpp, &scandata->scanned, scandata->engine, scandata->options, &context); + context.scandata = scandata; + ret = cl_scanfile_callback(filename, &virname, &scandata->scanned, scandata->engine, scandata->options, &context); thrmgr_setactivetask(NULL, NULL); - if (scandata->options & CL_SCAN_ALLMATCHES) { - virpp = (const char **)*virpp; /* temp hack for scanall mode until api augmentation */ - if (virpp) virname = virpp[0]; - } - if (thrmgr_group_need_terminate(scandata->conn->group)) { free(filename); - if ((scandata->options & CL_SCAN_ALLMATCHES) && (virpp != &virname)) - free((void *)virpp); logg("*Client disconnected while scanjob was active\n"); return ret == CL_ETIMEOUT ? ret : CL_BREAK; } @@ -255,38 +274,23 @@ } if (ret == CL_VIRUS) { - scandata->infected++; - if (conn_reply_virus(scandata->conn, filename, virname) == -1) { - free(filename); - if((scandata->options & CL_SCAN_ALLMATCHES) && (virpp != &virname)) - free((void *)virpp); - return CL_ETIMEOUT; - } - if (scandata->options & CL_SCAN_ALLMATCHES && virpp[1] != NULL) { - int i = 1; - while (NULL != virpp[i]) - if (conn_reply_virus(scandata->conn, filename, virpp[i++]) == -1) { - free(filename); - if (virpp != &virname) - free((void *)virpp); - return CL_ETIMEOUT; - } - } - if(context.virsize && optget(scandata->opts, "ExtendedDetectionInfo")->enabled) - logg("~%s: %s(%s:%llu) FOUND\n", filename, virname, context.virhash, context.virsize); - else - logg("~%s: %s FOUND\n", filename, virname); - virusaction(filename, virname, scandata->opts); - if (scandata->options & CL_SCAN_ALLMATCHES && virpp[1] != NULL) { - int i = 1; - while (NULL != virpp[i]) - logg("~%s: %s FOUND\n", filename, virpp[i++]); - } + scandata->infected++; + if (scandata->options & CL_SCAN_ALLMATCHES) { + virusaction(filename, virname, scandata->opts); + } else { + if (conn_reply_virus(scandata->conn, filename, virname) == -1) { + free(filename); + return CL_ETIMEOUT; + } + if(context.virsize && optget(scandata->opts, "ExtendedDetectionInfo")->enabled) + logg("~%s: %s(%s:%llu) FOUND\n", filename, virname, context.virhash, context.virsize); + else + logg("~%s: %s FOUND\n", filename, virname); + virusaction(filename, virname, scandata->opts); + } } else if (ret != CL_CLEAN) { scandata->errors++; if (conn_reply(scandata->conn, filename, cl_strerror(ret), "ERROR") == -1) { - if((scandata->options & CL_SCAN_ALLMATCHES) && (virpp != &virname)) - free((void *)virpp); free(filename); return CL_ETIMEOUT; } @@ -296,8 +300,7 @@ } free(filename); - if((scandata->options & CL_SCAN_ALLMATCHES) && (virpp != &virname)) - free((void *)virpp); + if(ret == CL_EMEM) /* stop scanning */ return ret; @@ -375,6 +378,7 @@ thrmgr_setactivetask(fdstr, NULL); context.filename = fdstr; context.virsize = 0; + context.scandata = NULL; ret = cl_scandesc_callback(fd, &virname, scanned, engine, options, &context); thrmgr_setactivetask(NULL, NULL); @@ -542,6 +546,7 @@ thrmgr_setactivetask(peer_addr, NULL); context.filename = peer_addr; context.virsize = 0; + context.scandata = NULL; ret = cl_scandesc_callback(tmpd, &virname, scanned, engine, options, &context); thrmgr_setactivetask(NULL, NULL); } else { diff -Nru clamav-0.98.6+dfsg/clamd/scanner.h clamav-0.99.2+addedllvm/clamd/scanner.h --- clamav-0.98.6+dfsg/clamd/scanner.h 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamd/scanner.h 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C) 2007-2009 Sourcefire, Inc. * * Authors: Tomasz Kojm, Török Edvin @@ -53,6 +54,7 @@ const char *filename; unsigned long long virsize; char virhash[33]; + struct scan_cb_data *scandata; }; int scanfd(const client_conn_t *conn, unsigned long int *scanned, const struct cl_engine *engine, unsigned int options, const struct optstruct *opts, int odesc, int stream); @@ -61,5 +63,6 @@ int scan_pathchk(const char *path, struct cli_ftw_cbdata *data); void hash_callback(int fd, unsigned long long size, const unsigned char *md5, const char *virname, void *ctx); void msg_callback(enum cl_msg severity, const char *fullmsg, const char *msg, void *ctx); +void clamd_virus_found_cb(int fd, const char *virname, void *context); #endif diff -Nru clamav-0.98.6+dfsg/clamd/server.h clamav-0.99.2+addedllvm/clamd/server.h --- clamav-0.98.6+dfsg/clamd/server.h 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamd/server.h 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C) 2007-2009 Sourcefire, Inc. * * Authors: Tomasz Kojm, Trog, Török Edvin @@ -47,6 +48,7 @@ }; int recvloop_th(int *socketds, unsigned nsockets, struct cl_engine *engine, unsigned int dboptions, const struct optstruct *opts); +int statinidir_th(const char* dirname); void sighandler(int sig); void sighandler_th(int sig); void sigsegv(int sig); diff -Nru clamav-0.98.6+dfsg/clamd/server-th.c clamav-0.99.2+addedllvm/clamd/server-th.c --- clamav-0.98.6+dfsg/clamd/server-th.c 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamd/server-th.c 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C) 2007-2009 Sourcefire, Inc. * * Authors: Tomasz Kojm, Trog, Török Edvin @@ -48,8 +49,9 @@ #include "shared/output.h" #include "shared/optparser.h" +#include "shared/misc.h" -#include "fan.h" +#include "onaccess_fan.h" #include "server.h" #include "thrmgr.h" #include "session.h" @@ -296,6 +298,15 @@ } } +int statinidir_th(const char* dirname) +{ + if (!dbstat.entries) { + memset(&dbstat, 0, sizeof(dbstat)); + } + + return cl_statinidir(dirname, &dbstat); +} + struct acceptdata { struct fd_data fds; struct fd_data recv_fds; @@ -445,13 +456,19 @@ } pthread_mutex_unlock(fds->buf_mutex); - for (i=0;i < fds->nfds; i++) { - if (fds->buf[i].fd == -1) - continue; - logg("$Shutdown: closed fd %d\n", fds->buf[i].fd); - shutdown(fds->buf[i].fd, 2); - closesocket(fds->buf[i].fd); + if (sd_listen_fds(0) == 0) + { + /* only close the sockets, when not using systemd socket activation */ + for (i=0;i < fds->nfds; i++) + { + if (fds->buf[i].fd == -1) + continue; + logg("$Shutdown: closed fd %d\n", fds->buf[i].fd); + shutdown(fds->buf[i].fd, 2); + closesocket(fds->buf[i].fd); + } } + fds_free(fds); pthread_mutex_destroy(fds->buf_mutex); pthread_mutex_lock(&exit_mutex); @@ -682,7 +699,7 @@ logg("!INSTREAM: Can't write to temporary file.\n"); *error = 1; } - logg("$Processed %lu bytes of chunkdata, pos %lu\n", cmdlen, pos); + logg("$Processed %llu bytes of chunkdata, pos %llu\n", (long long unsigned)cmdlen, (long long unsigned)pos); pos += cmdlen; if (pos == buf->off) { buf->off = 0; @@ -874,6 +891,33 @@ val = cl_engine_get_num(engine, CL_ENGINE_MAX_ICONSPE, NULL); logg("Limits: MaxIconsPE limit set to %llu.\n", val); + if((opt = optget(opts, "MaxRecHWP3"))->active) { + if((ret = cl_engine_set_num(engine, CL_ENGINE_MAX_RECHWP3, opt->numarg))) { + logg("!cli_engine_set_num(MaxRecHWP3) failed: %s\n", cl_strerror(ret)); + cl_engine_free(engine); + return 1; + } + } + val = cl_engine_get_num(engine, CL_ENGINE_MAX_RECHWP3, NULL); + logg("Limits: MaxRecHWP3 limit set to %llu.\n", val); + + /* options are handled in main (clamd.c) */ + val = cl_engine_get_num(engine, CL_ENGINE_PCRE_MATCH_LIMIT, NULL); + logg("Limits: PCREMatchLimit limit set to %llu.\n", val); + + val = cl_engine_get_num(engine, CL_ENGINE_PCRE_RECMATCH_LIMIT, NULL); + logg("Limits: PCRERecMatchLimit limit set to %llu.\n", val); + + if((opt = optget(opts, "PCREMaxFileSize"))->active) { + if((ret = cl_engine_set_num(engine, CL_ENGINE_PCRE_MAX_FILESIZE, opt->numarg))) { + logg("!cli_engine_set_num(PCREMaxFileSize) failed: %s\n", cl_strerror(ret)); + cl_engine_free(engine); + return 1; + } + } + val = cl_engine_get_num(engine, CL_ENGINE_PCRE_MAX_FILESIZE, NULL); + logg("Limits: PCREMaxFileSize limit set to %llu.\n", val); + if(optget(opts, "ScanArchive")->enabled) { logg("Archive support enabled.\n"); options |= CL_SCAN_ARCHIVE; @@ -960,6 +1004,20 @@ logg("HTML support disabled.\n"); } + if(optget(opts, "ScanXMLDOCS")->enabled) { + logg("XMLDOCS support enabled.\n"); + options |= CL_SCAN_XMLDOCS; + } else { + logg("XMLDOCS support disabled.\n"); + } + + if(optget(opts, "ScanHWP3")->enabled) { + logg("HWP3 support enabled.\n"); + options |= CL_SCAN_HWP3; + } else { + logg("HWP3 support disabled.\n"); + } + if(optget(opts,"PhishingScanURLs")->enabled) { if(optget(opts,"PhishingAlwaysBlockCloak")->enabled) { @@ -1024,7 +1082,6 @@ } else { logg("Self checking every %u seconds.\n", selfchk); } - memset(&dbstat, 0, sizeof(dbstat)); /* save the PID */ mainpid = getpid(); @@ -1055,22 +1112,60 @@ int max_max_queue; unsigned warn = optget(opts, "MaxQueue")->active; const unsigned clamdfiles = 6; +#ifdef C_SOLARIS + int solaris_has_extended_stdio = 0; +#endif /* Condition to not run out of file descriptors: * MaxThreads * MaxRecursion + (MaxQueue - MaxThreads) + CLAMDFILES < RLIMIT_NOFILE * CLAMDFILES is 6: 3 standard FD + logfile + 2 FD for reloading the DB * */ #ifdef C_SOLARIS + + /* + ** If compiling 64bit, then set the solaris_has_extended_stdio + ** flag + */ + +#if defined(_LP64) + solaris_has_extended_stdio++; +#endif + #ifdef HAVE_ENABLE_EXTENDED_FILE_STDIO if (enable_extended_FILE_stdio(-1, -1) == -1) { logg("^Unable to set extended FILE stdio, clamd will be limited to max 256 open files\n"); rlim.rlim_cur = rlim.rlim_cur > 255 ? 255 : rlim.rlim_cur; } + else + { + solaris_has_extended_stdio++; + } + #elif !defined(_LP64) - if (rlim.rlim_cur > 255) { + if (solaris_has_extended_stdio && rlim.rlim_cur > 255) { rlim.rlim_cur = 255; logg("^Solaris only supports 256 open files for 32-bit processes, you need at least Solaris 10u4, or compile as 64-bit to support more!\n"); } #endif + + /* + ** If compiling in 64bit or the file stdio has been extended, + ** then increase the soft limit for the number of open files + ** as the default is usually 256 + */ + + if (solaris_has_extended_stdio) + { + rlim_t saved_soft_limit = rlim.rlim_cur; + + rlim.rlim_cur = rlim.rlim_max; + if (setrlimit (RLIMIT_NOFILE, &rlim) < 0) + { + logg("!setrlimit() for RLIMIT_NOFILE to %lu failed: %s\n", + (unsigned long) rlim.rlim_cur, strerror (errno)); + rlim.rlim_cur = saved_soft_limit; + } + } /* If 64bit or has extended stdio */ + #endif opt = optget(opts,"MaxRecursion"); maxrec = opt->numarg; @@ -1102,6 +1197,7 @@ acceptdata.max_queue = max_queue; if(optget(opts, "ScanOnAccess")->enabled) + #if defined(FANOTIFY) || defined(CLAMAUTH) { do { @@ -1111,7 +1207,7 @@ tharg->opts = opts; tharg->engine = engine; tharg->options = options; - if(!pthread_create(&fan_pid, &fan_attr, fan_th, tharg)) break; + if(!pthread_create(&fan_pid, &fan_attr, onas_fan_th, tharg)) break; free(tharg); tharg=NULL; } while(0); @@ -1121,6 +1217,7 @@ logg("!On-access scan is not available\n"); #endif + #ifndef _WIN32 /* set up signal handling */ sigfillset(&sigset); @@ -1344,16 +1441,22 @@ if (progexit) { pthread_mutex_unlock(&exit_mutex); pthread_mutex_lock(fds->buf_mutex); - for (i=0;i < fds->nfds; i++) { - if (fds->buf[i].fd == -1) - continue; - thrmgr_group_terminate(fds->buf[i].group); - if (thrmgr_group_finished(fds->buf[i].group, EXIT_ERROR)) { - logg("$Shutdown closed fd %d\n", fds->buf[i].fd); - shutdown(fds->buf[i].fd, 2); - closesocket(fds->buf[i].fd); - fds->buf[i].fd = -1; - } + if (sd_listen_fds(0) == 0) + { + /* only close the sockets, when not using systemd socket activation */ + for (i=0;i < fds->nfds; i++) + { + if (fds->buf[i].fd == -1) + continue; + thrmgr_group_terminate(fds->buf[i].group); + if (thrmgr_group_finished(fds->buf[i].group, EXIT_ERROR)) + { + logg("$Shutdown closed fd %d\n", fds->buf[i].fd); + shutdown(fds->buf[i].fd, 2); + closesocket(fds->buf[i].fd); + fds->buf[i].fd = -1; + } + } } pthread_mutex_unlock(fds->buf_mutex); break; @@ -1386,15 +1489,7 @@ pthread_mutex_lock(&reload_mutex); if(reload) { pthread_mutex_unlock(&reload_mutex); -#if defined(FANOTIFY) || defined(CLAMAUTH) - if(optget(opts, "ScanOnAccess")->enabled && tharg) { - logg("Restarting on-access scan\n"); - pthread_mutex_lock(&logg_mutex); - pthread_kill(fan_pid, SIGUSR1); - pthread_mutex_unlock(&logg_mutex); - pthread_join(fan_pid, NULL); - } -#endif + engine = reload_db(engine, dboptions, opts, FALSE, &ret); if(ret) { logg("Terminating because of a fatal error.\n"); @@ -1407,10 +1502,10 @@ reload = 0; time(&reloaded_time); pthread_mutex_unlock(&reload_mutex); + #if defined(FANOTIFY) || defined(CLAMAUTH) if(optget(opts, "ScanOnAccess")->enabled && tharg) { tharg->engine = engine; - pthread_create(&fan_pid, &fan_attr, fan_th, tharg); } #endif time(&start_time); @@ -1462,9 +1557,13 @@ #endif if(dbstat.entries) cl_statfree(&dbstat); - logg("*Shutting down the main socket%s.\n", (nsockets > 1) ? "s" : ""); - for (i = 0; i < nsockets; i++) - shutdown(socketds[i], 2); + if (sd_listen_fds(0) == 0) + { + /* only close the sockets, when not using systemd socket activation */ + logg("*Shutting down the main socket%s.\n", (nsockets > 1) ? "s" : ""); + for (i = 0; i < nsockets; i++) + shutdown(socketds[i], 2); + } if((opt = optget(opts, "PidFile"))->enabled) { if(unlink(opt->strarg) == -1) @@ -1477,4 +1576,4 @@ logg("--- Stopped at %s", cli_ctime(¤t_time, timestr, sizeof(timestr))); return ret; -} +} diff -Nru clamav-0.98.6+dfsg/clamd/session.c clamav-0.99.2+addedllvm/clamd/session.c --- clamav-0.98.6+dfsg/clamd/session.c 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamd/session.c 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C) 2007-2009 Sourcefire, Inc. * * Authors: Tomasz Kojm, Török Edvin diff -Nru clamav-0.98.6+dfsg/clamd/session.h clamav-0.99.2+addedllvm/clamd/session.h --- clamav-0.98.6+dfsg/clamd/session.h 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamd/session.h 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C) 2007-2009 Sourcefire, Inc. * * Authors: Tomasz Kojm, Török Edvin diff -Nru clamav-0.98.6+dfsg/clamd/shared.h clamav-0.99.2+addedllvm/clamd/shared.h --- clamav-0.98.6+dfsg/clamd/shared.h 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamd/shared.h 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C) 2007-2009 Sourcefire, Inc. * * Authors: Tomasz Kojm diff -Nru clamav-0.98.6+dfsg/clamd/tcpserver.c clamav-0.99.2+addedllvm/clamd/tcpserver.c --- clamav-0.98.6+dfsg/clamd/tcpserver.c 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamd/tcpserver.c 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C) 2007-2009 Sourcefire, Inc. * * Authors: Tomasz Kojm, Török Edvin @@ -57,9 +58,60 @@ int yes = 1; int res; unsigned int i=0; + int num_fd; sockets = *lsockets; + num_fd = sd_listen_fds(0); + if (num_fd > 2) + { + logg("!TCP: Received more than two file descriptors from systemd.\n"); + return -1; + } + else if (num_fd > 0) + { + /* use socket passed by systemd */ + int i; + for(i = 0; i < num_fd; i += 1) + { + sockfd = SD_LISTEN_FDS_START + i; + if (sd_is_socket(sockfd, AF_INET, SOCK_STREAM, 1) == 1) + { + /* correct socket */ + logg("#TCP: Received AF_INET SOCK_STREAM socket from systemd.\n"); + break; + } + else if (sd_is_socket(sockfd, AF_INET6, SOCK_STREAM, 1) == 1) + { + /* correct socket */ + logg("#TCP: Received AF_INET6 SOCK_STREAM socket from systemd.\n"); + break; + } + else + { + /* wrong socket */ + sockfd = -2; + } + } + if (sockfd == -2) + { + logg("#TCP: No tcp AF_INET/AF_INET6 SOCK_STREAM socket received from systemd.\n"); + return -2; + } + + t = realloc(sockets, sizeof(int) * (*nlsockets + 1)); + if (!(t)) { + return -1; + } + sockets = t; + + sockets[*nlsockets] = sockfd; + (*nlsockets)++; + *lsockets = sockets; + return 0; + } + + /* create socket */ snprintf(port, sizeof(port), "%lld", optget(opts, "TCPSocket")->numarg); memset(&hints, 0x00, sizeof(struct addrinfo)); diff -Nru clamav-0.98.6+dfsg/clamd/tcpserver.h clamav-0.99.2+addedllvm/clamd/tcpserver.h --- clamav-0.98.6+dfsg/clamd/tcpserver.h 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamd/tcpserver.h 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C) 2007-2009 Sourcefire, Inc. * * Authors: Tomasz Kojm diff -Nru clamav-0.98.6+dfsg/clamd/thrmgr.c clamav-0.99.2+addedllvm/clamd/thrmgr.c --- clamav-0.98.6+dfsg/clamd/thrmgr.c 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamd/thrmgr.c 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C) 2007-2009 Sourcefire, Inc. * * Authors: Trog, Török Edvin diff -Nru clamav-0.98.6+dfsg/clamd/thrmgr.h clamav-0.99.2+addedllvm/clamd/thrmgr.h --- clamav-0.98.6+dfsg/clamd/thrmgr.h 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamd/thrmgr.h 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C) 2007-2009 Sourcefire, Inc. * * Authors: Tomasz Kojm, Török Edvin diff -Nru clamav-0.98.6+dfsg/clamdscan/clamdscan.c clamav-0.99.2+addedllvm/clamdscan/clamdscan.c --- clamav-0.98.6+dfsg/clamdscan/clamdscan.c 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamdscan/clamdscan.c 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C) 2007-2009 Sourcefire, Inc. * * Authors: Tomasz Kojm, aCaB @@ -184,7 +185,7 @@ mprintf("\n"); mprintf(" ClamAV Daemon Client %s\n", get_version()); printf(" By The ClamAV Team: http://www.clamav.net/about.html#credits\n"); - printf(" (C) 2007-2009 Sourcefire, Inc.\n\n"); + printf(" (C) 2007-2015 Cisco Systems, Inc.\n\n"); mprintf(" --help -h Show help\n"); mprintf(" --version -V Print version number and exit\n"); diff -Nru clamav-0.98.6+dfsg/clamdscan/client.c clamav-0.99.2+addedllvm/clamdscan/client.c --- clamav-0.98.6+dfsg/clamdscan/client.c 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamdscan/client.c 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C) 2009 Sourcefire, Inc. * * Authors: Tomasz Kojm, aCaB diff -Nru clamav-0.98.6+dfsg/clamdscan/client.h clamav-0.99.2+addedllvm/clamdscan/client.h --- clamav-0.98.6+dfsg/clamdscan/client.h 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamdscan/client.h 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C) 2009 Sourcefire, Inc. * * Authors: Tomasz Kojm, aCaB diff -Nru clamav-0.98.6+dfsg/clamdscan/Makefile.am clamav-0.99.2+addedllvm/clamdscan/Makefile.am --- clamav-0.98.6+dfsg/clamdscan/Makefile.am 2014-12-18 21:43:18.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamdscan/Makefile.am 2016-04-22 15:02:18.000000000 +0000 @@ -44,7 +44,7 @@ DEFS = @DEFS@ -DCL_NOTHREADS -DCL_NOLIBCLAMAV -AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/clamscan -I$(top_srcdir)/shared -I$(top_srcdir)/libclamav @SSL_CPPFLAGS@ @CLAMDSCAN_CPPFLAGS@ @JSON_CPPFLAGS@ +AM_CPPFLAGS = @JSON_CPPFLAGS@ @PCRE_CPPFLAGS@ -I$(top_srcdir) -I$(top_srcdir)/clamscan -I$(top_srcdir)/shared -I$(top_srcdir)/libclamav @SSL_CPPFLAGS@ @CLAMDSCAN_CPPFLAGS@ LIBS = $(top_builddir)/libclamav/libclamav_internal_utils_nothreads.la @CLAMDSCAN_LIBS@ AM_INSTALLCHECK_STD_OPTIONS_EXEMPT=clamdscan$(EXEEXT) diff -Nru clamav-0.98.6+dfsg/clamdscan/Makefile.in clamav-0.99.2+addedllvm/clamdscan/Makefile.in --- clamav-0.98.6+dfsg/clamdscan/Makefile.in 2014-12-18 21:43:18.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamdscan/Makefile.in 2016-04-22 16:19:51.000000000 +0000 @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.14 from Makefile.am. +# Makefile.in generated by automake 1.14.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2013 Free Software Foundation, Inc. @@ -103,14 +103,13 @@ $(top_srcdir)/config/depcomp ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/acinclude.m4 \ - $(top_srcdir)/m4/argz.m4 \ $(top_srcdir)/m4/ax_check_uname_syscall.m4 \ $(top_srcdir)/m4/fdpassing.m4 $(top_srcdir)/m4/lib-ld.m4 \ $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/llvm.m4 \ - $(top_srcdir)/m4/ltdl.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/m4/ltargz.m4 $(top_srcdir)/m4/ltdl.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ $(top_srcdir)/m4/mmap_private.m4 $(top_srcdir)/m4/resolv.m4 \ $(top_srcdir)/m4/reorganization/version.m4 \ $(top_srcdir)/m4/reorganization/build_tools.m4 \ @@ -125,9 +124,11 @@ $(top_srcdir)/m4/reorganization/libs/xml.m4 \ $(top_srcdir)/m4/reorganization/libs/openssl.m4 \ $(top_srcdir)/m4/reorganization/libs/json.m4 \ + $(top_srcdir)/m4/reorganization/libs/pcre.m4 \ $(top_srcdir)/m4/reorganization/libs/libz.m4 \ $(top_srcdir)/m4/reorganization/libs/bzip.m4 \ $(top_srcdir)/m4/reorganization/libs/unrar.m4 \ + $(top_srcdir)/m4/reorganization/libs/systemd.m4 \ $(top_srcdir)/m4/reorganization/code_checks/ipv6.m4 \ $(top_srcdir)/m4/reorganization/code_checks/dns.m4 \ $(top_srcdir)/m4/reorganization/code_checks/fanotify.m4 \ @@ -164,6 +165,8 @@ $(top_srcdir)/m4/reorganization/distcheck.m4 \ $(top_srcdir)/m4/reorganization/llvm.m4 \ $(top_srcdir)/m4/reorganization/sha_collect.m4 \ + $(top_srcdir)/m4/reorganization/yara.m4 \ + $(top_srcdir)/m4/reorganization/libfreshclam.m4 \ $(top_srcdir)/m4/reorganization/bsd.m4 \ $(top_srcdir)/m4/reorganization/libs/curl.m4 \ $(top_srcdir)/m4/reorganization/substitutions.m4 \ @@ -260,7 +263,6 @@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ -ARGZ_H = @ARGZ_H@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ @@ -270,6 +272,7 @@ CCDEPMODE = @CCDEPMODE@ CFGDIR = @CFGDIR@ CFLAGS = @CFLAGS@ +CHECK_CFLAGS = @CHECK_CFLAGS@ CHECK_CPPFLAGS = @CHECK_CPPFLAGS@ CHECK_LIBS = @CHECK_LIBS@ CLAMAVGROUP = @CLAMAVGROUP@ @@ -316,6 +319,7 @@ GETENT = @GETENT@ GPERF = @GPERF@ GREP = @GREP@ +HAVE_YARA = @HAVE_YARA@ INCLTDL = @INCLTDL@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -328,6 +332,9 @@ LCOV = @LCOV@ LD = @LD@ LDFLAGS = @LDFLAGS@ +LEX = @LEX@ +LEXLIB = @LEXLIB@ +LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ LIBADD_DL = @LIBADD_DL@ LIBADD_DLD_LINK = @LIBADD_DLD_LINK@ LIBADD_DLOPEN = @LIBADD_DLOPEN@ @@ -350,9 +357,11 @@ LTDLOPEN = @LTDLOPEN@ LTLIBBZ2 = @LTLIBBZ2@ LTLIBOBJS = @LTLIBOBJS@ +LT_ARGZ_H = @LT_ARGZ_H@ LT_CONFIG_H = @LT_CONFIG_H@ LT_DLLOADERS = @LT_DLLOADERS@ LT_DLPREOPEN = @LT_DLPREOPEN@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -371,6 +380,11 @@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PCRE_CPPFLAGS = @PCRE_CPPFLAGS@ +PCRE_LIBS = @PCRE_LIBS@ +PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ @@ -380,6 +394,8 @@ SSL_LDFLAGS = @SSL_LDFLAGS@ SSL_LIBS = @SSL_LIBS@ STRIP = @STRIP@ +SYSTEMD_CFLAGS = @SYSTEMD_CFLAGS@ +SYSTEMD_LIBS = @SYSTEMD_LIBS@ THREAD_LIBS = @THREAD_LIBS@ TH_SAFE = @TH_SAFE@ VERSION = @VERSION@ @@ -388,6 +404,8 @@ WERR_CFLAGS_MILTER = @WERR_CFLAGS_MILTER@ XML_CPPFLAGS = @XML_CPPFLAGS@ XML_LIBS = @XML_LIBS@ +YACC = @YACC@ +YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -430,6 +448,7 @@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ +pcreconfig = @pcreconfig@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ @@ -440,6 +459,7 @@ subdirs = @subdirs@ sys_symbol_underscore = @sys_symbol_underscore@ sysconfdir = @sysconfdir@ +systemdsystemunitdir = @systemdsystemunitdir@ target = @target@ target_alias = @target_alias@ target_cpu = @target_cpu@ @@ -468,7 +488,7 @@ @BUILD_CLAMD_TRUE@ client.h @BUILD_CLAMD_TRUE@AM_CFLAGS = @WERR_CFLAGS@ -AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/clamscan -I$(top_srcdir)/shared -I$(top_srcdir)/libclamav @SSL_CPPFLAGS@ @CLAMDSCAN_CPPFLAGS@ @JSON_CPPFLAGS@ +AM_CPPFLAGS = @JSON_CPPFLAGS@ @PCRE_CPPFLAGS@ -I$(top_srcdir) -I$(top_srcdir)/clamscan -I$(top_srcdir)/shared -I$(top_srcdir)/libclamav @SSL_CPPFLAGS@ @CLAMDSCAN_CPPFLAGS@ AM_INSTALLCHECK_STD_OPTIONS_EXEMPT = clamdscan$(EXEEXT) CLEANFILES = *.gcda *.gcno all: all-am diff -Nru clamav-0.98.6+dfsg/clamdscan/proto.c clamav-0.99.2+addedllvm/clamdscan/proto.c --- clamav-0.98.6+dfsg/clamdscan/proto.c 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamdscan/proto.c 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C) 2009 Sourcefire, Inc. * * Authors: Tomasz Kojm, aCaB @@ -23,8 +24,10 @@ #endif #if defined(C_SOLARIS) +#ifndef __EXTENSIONS__ #define __EXTENSIONS__ #endif +#endif /* must be first because it may define _XOPEN_SOURCE */ #include "shared/fdpassing.h" @@ -45,6 +48,7 @@ #ifndef _WIN32 #include #include +#include #include #endif @@ -224,7 +228,8 @@ if((opt = optget(clamdopts, "ExcludePath"))->enabled) { while(opt) { if(match_regex(path, opt->strarg) == 1) { - logg("~%s: Excluded\n", path); + if (printinfected != 1) + logg("~%s: Excluded\n", path); return 1; } opt = opt->nextarg; @@ -317,9 +322,18 @@ logg("Failed to parse reply: \"%s\"\n", bol); return -1; } else if(!memcmp(eol - 7, " FOUND", 6)) { + static char last_filename[PATH_MAX+1] = {'\0'}; *(eol - 7) = 0; *printok = 0; - infected++; + if (scantype != ALLMATCH) { + infected++; + } else { + if (filename != NULL && strcmp(filename, last_filename)) { + infected++; + strncpy(last_filename, filename, PATH_MAX); + last_filename[PATH_MAX] = '\0'; + } + } if(filename) { if(scantype >= STREAM) { logg("~%s%s FOUND\n", filename, colon); diff -Nru clamav-0.98.6+dfsg/clamdscan/proto.h clamav-0.99.2+addedllvm/clamdscan/proto.h --- clamav-0.98.6+dfsg/clamdscan/proto.h 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamdscan/proto.h 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C) 2009 Sourcefire, Inc. * * Authors: Tomasz Kojm, aCaB diff -Nru clamav-0.98.6+dfsg/clamdtop/clamdtop.c clamav-0.99.2+addedllvm/clamdtop/clamdtop.c --- clamav-0.98.6+dfsg/clamdtop/clamdtop.c 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamdtop/clamdtop.c 2016-04-22 15:02:18.000000000 +0000 @@ -1,6 +1,7 @@ /* * ClamdTOP * + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C) 2008 - 2013 Sourcefire, Inc. * * Authors: Török Edvin @@ -496,8 +497,8 @@ va_start(ap, fmt); if (stats_head_window) { char *buf = malloc(maxx); - memset(buf, ' ', maxx); OOM_CHECK(buf); + memset(buf, ' ', maxx); vsnprintf(buf, maxx-1, fmt, ap); buf[strlen(buf)] = ' '; buf[maxx-1] = '\0'; @@ -617,6 +618,7 @@ struct addrinfo hints, *res=NULL, *p; int err; + OOM_CHECK(pt); conn->tcp = 0; #ifndef _WIN32 @@ -1087,11 +1089,13 @@ if (!conn->version) { stats->engine_version = strdup("???"); + OOM_CHECK(stats->engine_version); return; } p = pstart = vstart = strchr(conn->version, ' '); if (!vstart) { stats->engine_version = strdup("???"); + OOM_CHECK(stats->engine_version); return; } /* find digit in version */ @@ -1113,9 +1117,10 @@ stats->engine_version[p-pstart] = '\0'; pstart = strchr(p, '/'); - if (!pstart) + if (!pstart) { stats->db_version = strdup("????"); - else { + OOM_CHECK(stats->db_version); + } else { pstart++; p = strchr(pstart, '/'); if (!p) @@ -1230,7 +1235,7 @@ printf("\n"); printf(" Clam AntiVirus: Monitoring Tool %s\n", get_version()); printf(" By The ClamAV Team: http://www.clamav.net/about.html#credits\n"); - printf(" (C) 2008-2009 Sourcefire, Inc.\n\n"); + printf(" (C) 2008-2015 Cisco Systems, Inc.\n\n"); printf("clamdtop [-hVc] [host[:port] /path/to/clamd.socket ...]\n\n"); printf(" --help -h Show help\n"); printf(" --version -V Show version\n"); diff -Nru clamav-0.98.6+dfsg/clamdtop/Makefile.am clamav-0.99.2+addedllvm/clamdtop/Makefile.am --- clamav-0.98.6+dfsg/clamdtop/Makefile.am 2014-12-18 21:43:18.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamdtop/Makefile.am 2016-04-22 15:02:18.000000000 +0000 @@ -11,7 +11,7 @@ clamdtop.c AM_CFLAGS=@WERR_CFLAGS@ -AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/shared -I$(top_srcdir)/libclamav @SSL_CPPFLAGS@ @CURSES_CPPFLAGS@ @JSON_CPPFLAGS@ +AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/shared -I$(top_srcdir)/libclamav @SSL_CPPFLAGS@ @CURSES_CPPFLAGS@ @JSON_CPPFLAGS@ @PCRE_CPPFLAGS@ clamdtop_LDADD = @SSL_LDFLAGS@ @SSL_LIBS@ @CURSES_LIBS@ $(top_builddir)/libclamav/libclamav_internal_utils_nothreads.la endif DEFS = @DEFS@ -DCL_NOTHREADS -DCL_NOLIBCLAMAV diff -Nru clamav-0.98.6+dfsg/clamdtop/Makefile.in clamav-0.99.2+addedllvm/clamdtop/Makefile.in --- clamav-0.98.6+dfsg/clamdtop/Makefile.in 2014-12-18 21:43:18.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamdtop/Makefile.in 2016-04-22 16:19:52.000000000 +0000 @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.14 from Makefile.am. +# Makefile.in generated by automake 1.14.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2013 Free Software Foundation, Inc. @@ -85,14 +85,13 @@ $(top_srcdir)/config/depcomp ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/acinclude.m4 \ - $(top_srcdir)/m4/argz.m4 \ $(top_srcdir)/m4/ax_check_uname_syscall.m4 \ $(top_srcdir)/m4/fdpassing.m4 $(top_srcdir)/m4/lib-ld.m4 \ $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/llvm.m4 \ - $(top_srcdir)/m4/ltdl.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/m4/ltargz.m4 $(top_srcdir)/m4/ltdl.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ $(top_srcdir)/m4/mmap_private.m4 $(top_srcdir)/m4/resolv.m4 \ $(top_srcdir)/m4/reorganization/version.m4 \ $(top_srcdir)/m4/reorganization/build_tools.m4 \ @@ -107,9 +106,11 @@ $(top_srcdir)/m4/reorganization/libs/xml.m4 \ $(top_srcdir)/m4/reorganization/libs/openssl.m4 \ $(top_srcdir)/m4/reorganization/libs/json.m4 \ + $(top_srcdir)/m4/reorganization/libs/pcre.m4 \ $(top_srcdir)/m4/reorganization/libs/libz.m4 \ $(top_srcdir)/m4/reorganization/libs/bzip.m4 \ $(top_srcdir)/m4/reorganization/libs/unrar.m4 \ + $(top_srcdir)/m4/reorganization/libs/systemd.m4 \ $(top_srcdir)/m4/reorganization/code_checks/ipv6.m4 \ $(top_srcdir)/m4/reorganization/code_checks/dns.m4 \ $(top_srcdir)/m4/reorganization/code_checks/fanotify.m4 \ @@ -146,6 +147,8 @@ $(top_srcdir)/m4/reorganization/distcheck.m4 \ $(top_srcdir)/m4/reorganization/llvm.m4 \ $(top_srcdir)/m4/reorganization/sha_collect.m4 \ + $(top_srcdir)/m4/reorganization/yara.m4 \ + $(top_srcdir)/m4/reorganization/libfreshclam.m4 \ $(top_srcdir)/m4/reorganization/bsd.m4 \ $(top_srcdir)/m4/reorganization/libs/curl.m4 \ $(top_srcdir)/m4/reorganization/substitutions.m4 \ @@ -266,7 +269,6 @@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ -ARGZ_H = @ARGZ_H@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ @@ -276,6 +278,7 @@ CCDEPMODE = @CCDEPMODE@ CFGDIR = @CFGDIR@ CFLAGS = @CFLAGS@ +CHECK_CFLAGS = @CHECK_CFLAGS@ CHECK_CPPFLAGS = @CHECK_CPPFLAGS@ CHECK_LIBS = @CHECK_LIBS@ CLAMAVGROUP = @CLAMAVGROUP@ @@ -322,6 +325,7 @@ GETENT = @GETENT@ GPERF = @GPERF@ GREP = @GREP@ +HAVE_YARA = @HAVE_YARA@ INCLTDL = @INCLTDL@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -334,6 +338,9 @@ LCOV = @LCOV@ LD = @LD@ LDFLAGS = @LDFLAGS@ +LEX = @LEX@ +LEXLIB = @LEXLIB@ +LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ LIBADD_DL = @LIBADD_DL@ LIBADD_DLD_LINK = @LIBADD_DLD_LINK@ LIBADD_DLOPEN = @LIBADD_DLOPEN@ @@ -356,9 +363,11 @@ LTDLOPEN = @LTDLOPEN@ LTLIBBZ2 = @LTLIBBZ2@ LTLIBOBJS = @LTLIBOBJS@ +LT_ARGZ_H = @LT_ARGZ_H@ LT_CONFIG_H = @LT_CONFIG_H@ LT_DLLOADERS = @LT_DLLOADERS@ LT_DLPREOPEN = @LT_DLPREOPEN@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -377,6 +386,11 @@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PCRE_CPPFLAGS = @PCRE_CPPFLAGS@ +PCRE_LIBS = @PCRE_LIBS@ +PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ @@ -386,6 +400,8 @@ SSL_LDFLAGS = @SSL_LDFLAGS@ SSL_LIBS = @SSL_LIBS@ STRIP = @STRIP@ +SYSTEMD_CFLAGS = @SYSTEMD_CFLAGS@ +SYSTEMD_LIBS = @SYSTEMD_LIBS@ THREAD_LIBS = @THREAD_LIBS@ TH_SAFE = @TH_SAFE@ VERSION = @VERSION@ @@ -394,6 +410,8 @@ WERR_CFLAGS_MILTER = @WERR_CFLAGS_MILTER@ XML_CPPFLAGS = @XML_CPPFLAGS@ XML_LIBS = @XML_LIBS@ +YACC = @YACC@ +YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -436,6 +454,7 @@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ +pcreconfig = @pcreconfig@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ @@ -446,6 +465,7 @@ subdirs = @subdirs@ sys_symbol_underscore = @sys_symbol_underscore@ sysconfdir = @sysconfdir@ +systemdsystemunitdir = @systemdsystemunitdir@ target = @target@ target_alias = @target_alias@ target_cpu = @target_cpu@ @@ -465,7 +485,7 @@ @HAVE_CURSES_TRUE@ clamdtop.c @HAVE_CURSES_TRUE@AM_CFLAGS = @WERR_CFLAGS@ -@HAVE_CURSES_TRUE@AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/shared -I$(top_srcdir)/libclamav @SSL_CPPFLAGS@ @CURSES_CPPFLAGS@ @JSON_CPPFLAGS@ +@HAVE_CURSES_TRUE@AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/shared -I$(top_srcdir)/libclamav @SSL_CPPFLAGS@ @CURSES_CPPFLAGS@ @JSON_CPPFLAGS@ @PCRE_CPPFLAGS@ @HAVE_CURSES_TRUE@clamdtop_LDADD = @SSL_LDFLAGS@ @SSL_LIBS@ @CURSES_LIBS@ $(top_builddir)/libclamav/libclamav_internal_utils_nothreads.la EXTRA_DIST = clamdtop.c all: all-am diff -Nru clamav-0.98.6+dfsg/clamscan/clamscan.c clamav-0.99.2+addedllvm/clamscan/clamscan.c --- clamav-0.98.6+dfsg/clamscan/clamscan.c 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamscan/clamscan.c 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C) 2007-2012 Sourcefire, Inc. * * Authors: Tomasz Kojm @@ -202,7 +203,7 @@ mprintf("\n"); mprintf(" Clam AntiVirus Scanner %s\n", get_version()); printf(" By The ClamAV Team: http://www.clamav.net/about.html#credits\n"); - printf(" (C) 2007-2009 Sourcefire, Inc.\n\n"); + printf(" (C) 2007-2015 Cisco Systems, Inc.\n\n"); mprintf(" --help -h Print this help screen\n"); mprintf(" --version -V Print version number\n"); @@ -239,7 +240,7 @@ mprintf(" --bytecode[=yes(*)/no] Load bytecode from the database\n"); mprintf(" --bytecode-unsigned[=yes/no(*)] Load unsigned bytecode\n"); mprintf(" --bytecode-timeout=N Set bytecode timeout (in milliseconds)\n"); - mprintf(" --bytecode-statistics[=yes/no(*)] Collect and print bytecode statistics\n"); + mprintf(" --statistics[=none(*)/bytecode/pcre] Collect and print execution statistics\n"); mprintf(" --detect-pua[=yes/no(*)] Detect Possibly Unwanted Applications\n"); mprintf(" --exclude-pua=CAT Skip PUA sigs of category CAT\n"); mprintf(" --include-pua=CAT Load PUA sigs of category CAT\n"); @@ -261,9 +262,12 @@ mprintf(" --scan-pdf[=yes(*)/no] Scan PDF files\n"); mprintf(" --scan-swf[=yes(*)/no] Scan SWF files\n"); mprintf(" --scan-html[=yes(*)/no] Scan HTML files\n"); + mprintf(" --scan-xmldocs[=yes(*)/no] Scan xml-based document files\n"); + mprintf(" --scan-hwp3[=yes(*)/no] Scan HWP3 files\n"); mprintf(" --scan-archive[=yes(*)/no] Scan archive files (supported by libclamav)\n"); mprintf(" --detect-broken[=yes/no(*)] Try to detect broken executable files\n"); mprintf(" --block-encrypted[=yes/no(*)] Block encrypted archives\n"); + mprintf(" --block-macros[=yes/no(*)] Block OLE2 files with VBA macros\n"); mprintf(" --nocerts Disable authenticode certificate chain verification in PE files\n"); mprintf(" --dumpcerts Dump authenticode certificate chain in PE files\n"); mprintf("\n"); @@ -279,10 +283,17 @@ mprintf(" --max-ziptypercg=#n Maximum size zip to type reanalyze\n"); mprintf(" --max-partitions=#n Maximum number of partitions in disk image to be scanned\n"); mprintf(" --max-iconspe=#n Maximum number of icons in PE file to be scanned\n"); + mprintf(" --max-rechwp3=#n Maximum recursive calls to HWP3 parsing function\n"); +#if HAVE_PCRE + mprintf(" --pcre-match-limit=#n Maximum calls to the PCRE match function.\n"); + mprintf(" --pcre-recmatch-limit=#n Maximum recursive calls to the PCRE match function.\n"); + mprintf(" --pcre-max-filesize=#n Maximum size file to perform PCRE subsig matching.\n"); +#endif /* HAVE_PCRE */ mprintf(" --enable-stats Enable statistical reporting of malware\n"); mprintf(" --disable-pe-stats Disable submission of individual PE sections in stats submissions\n"); mprintf(" --stats-timeout=#n Number of seconds to wait for waiting a response back from the stats server\n"); mprintf(" --stats-host-id=UUID Set the Host ID used when submitting statistical info.\n"); + mprintf(" --disable-cache Disable caching and cache checks for hash sums of scanned files.\n"); mprintf("\n"); mprintf("(*) Default scan settings\n"); mprintf("(**) Certain files (e.g. documents, archives, etc.) may in turn contain other\n"); diff -Nru clamav-0.98.6+dfsg/clamscan/global.h clamav-0.99.2+addedllvm/clamscan/global.h --- clamav-0.98.6+dfsg/clamscan/global.h 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamscan/global.h 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C) 2007-2009 Sourcefire, Inc. * * Authors: Tomasz Kojm diff -Nru clamav-0.98.6+dfsg/clamscan/Makefile.am clamav-0.99.2+addedllvm/clamscan/Makefile.am --- clamav-0.98.6+dfsg/clamscan/Makefile.am 2014-12-18 21:43:18.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamscan/Makefile.am 2016-04-22 15:02:18.000000000 +0000 @@ -38,6 +38,6 @@ AM_CFLAGS=@WERR_CFLAGS@ DEFS = @DEFS@ -DCL_NOTHREADS LIBS = $(top_builddir)/libclamav/libclamav.la @THREAD_LIBS@ @CLAMSCAN_LIBS@ -AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/shared -I$(top_srcdir)/libclamav @SSL_CPPFLAGS@ @JSON_CPPFLAGS@ @CLAMSCAN_CPPFLAGS@ +AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/shared -I$(top_srcdir)/libclamav @SSL_CPPFLAGS@ @JSON_CPPFLAGS@ @PCRE_CPPFLAGS@ @CLAMSCAN_CPPFLAGS@ CLEANFILES=*.gcda *.gcno diff -Nru clamav-0.98.6+dfsg/clamscan/Makefile.in clamav-0.99.2+addedllvm/clamscan/Makefile.in --- clamav-0.98.6+dfsg/clamscan/Makefile.in 2014-12-18 21:43:18.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamscan/Makefile.in 2016-04-22 16:19:52.000000000 +0000 @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.14 from Makefile.am. +# Makefile.in generated by automake 1.14.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2013 Free Software Foundation, Inc. @@ -104,14 +104,13 @@ $(top_srcdir)/config/depcomp ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/acinclude.m4 \ - $(top_srcdir)/m4/argz.m4 \ $(top_srcdir)/m4/ax_check_uname_syscall.m4 \ $(top_srcdir)/m4/fdpassing.m4 $(top_srcdir)/m4/lib-ld.m4 \ $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/llvm.m4 \ - $(top_srcdir)/m4/ltdl.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/m4/ltargz.m4 $(top_srcdir)/m4/ltdl.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ $(top_srcdir)/m4/mmap_private.m4 $(top_srcdir)/m4/resolv.m4 \ $(top_srcdir)/m4/reorganization/version.m4 \ $(top_srcdir)/m4/reorganization/build_tools.m4 \ @@ -126,9 +125,11 @@ $(top_srcdir)/m4/reorganization/libs/xml.m4 \ $(top_srcdir)/m4/reorganization/libs/openssl.m4 \ $(top_srcdir)/m4/reorganization/libs/json.m4 \ + $(top_srcdir)/m4/reorganization/libs/pcre.m4 \ $(top_srcdir)/m4/reorganization/libs/libz.m4 \ $(top_srcdir)/m4/reorganization/libs/bzip.m4 \ $(top_srcdir)/m4/reorganization/libs/unrar.m4 \ + $(top_srcdir)/m4/reorganization/libs/systemd.m4 \ $(top_srcdir)/m4/reorganization/code_checks/ipv6.m4 \ $(top_srcdir)/m4/reorganization/code_checks/dns.m4 \ $(top_srcdir)/m4/reorganization/code_checks/fanotify.m4 \ @@ -165,6 +166,8 @@ $(top_srcdir)/m4/reorganization/distcheck.m4 \ $(top_srcdir)/m4/reorganization/llvm.m4 \ $(top_srcdir)/m4/reorganization/sha_collect.m4 \ + $(top_srcdir)/m4/reorganization/yara.m4 \ + $(top_srcdir)/m4/reorganization/libfreshclam.m4 \ $(top_srcdir)/m4/reorganization/bsd.m4 \ $(top_srcdir)/m4/reorganization/libs/curl.m4 \ $(top_srcdir)/m4/reorganization/substitutions.m4 \ @@ -251,7 +254,6 @@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ -ARGZ_H = @ARGZ_H@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ @@ -261,6 +263,7 @@ CCDEPMODE = @CCDEPMODE@ CFGDIR = @CFGDIR@ CFLAGS = @CFLAGS@ +CHECK_CFLAGS = @CHECK_CFLAGS@ CHECK_CPPFLAGS = @CHECK_CPPFLAGS@ CHECK_LIBS = @CHECK_LIBS@ CLAMAVGROUP = @CLAMAVGROUP@ @@ -307,6 +310,7 @@ GETENT = @GETENT@ GPERF = @GPERF@ GREP = @GREP@ +HAVE_YARA = @HAVE_YARA@ INCLTDL = @INCLTDL@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -319,6 +323,9 @@ LCOV = @LCOV@ LD = @LD@ LDFLAGS = @LDFLAGS@ +LEX = @LEX@ +LEXLIB = @LEXLIB@ +LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ LIBADD_DL = @LIBADD_DL@ LIBADD_DLD_LINK = @LIBADD_DLD_LINK@ LIBADD_DLOPEN = @LIBADD_DLOPEN@ @@ -341,9 +348,11 @@ LTDLOPEN = @LTDLOPEN@ LTLIBBZ2 = @LTLIBBZ2@ LTLIBOBJS = @LTLIBOBJS@ +LT_ARGZ_H = @LT_ARGZ_H@ LT_CONFIG_H = @LT_CONFIG_H@ LT_DLLOADERS = @LT_DLLOADERS@ LT_DLPREOPEN = @LT_DLPREOPEN@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -362,6 +371,11 @@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PCRE_CPPFLAGS = @PCRE_CPPFLAGS@ +PCRE_LIBS = @PCRE_LIBS@ +PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ @@ -371,6 +385,8 @@ SSL_LDFLAGS = @SSL_LDFLAGS@ SSL_LIBS = @SSL_LIBS@ STRIP = @STRIP@ +SYSTEMD_CFLAGS = @SYSTEMD_CFLAGS@ +SYSTEMD_LIBS = @SYSTEMD_LIBS@ THREAD_LIBS = @THREAD_LIBS@ TH_SAFE = @TH_SAFE@ VERSION = @VERSION@ @@ -379,6 +395,8 @@ WERR_CFLAGS_MILTER = @WERR_CFLAGS_MILTER@ XML_CPPFLAGS = @XML_CPPFLAGS@ XML_LIBS = @XML_LIBS@ +YACC = @YACC@ +YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -421,6 +439,7 @@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ +pcreconfig = @pcreconfig@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ @@ -431,6 +450,7 @@ subdirs = @subdirs@ sys_symbol_underscore = @sys_symbol_underscore@ sysconfdir = @sysconfdir@ +systemdsystemunitdir = @systemdsystemunitdir@ target = @target@ target_alias = @target_alias@ target_cpu = @target_cpu@ @@ -456,7 +476,7 @@ manager.h AM_CFLAGS = @WERR_CFLAGS@ -AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/shared -I$(top_srcdir)/libclamav @SSL_CPPFLAGS@ @JSON_CPPFLAGS@ @CLAMSCAN_CPPFLAGS@ +AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/shared -I$(top_srcdir)/libclamav @SSL_CPPFLAGS@ @JSON_CPPFLAGS@ @PCRE_CPPFLAGS@ @CLAMSCAN_CPPFLAGS@ CLEANFILES = *.gcda *.gcno all: all-am diff -Nru clamav-0.98.6+dfsg/clamscan/manager.c clamav-0.99.2+addedllvm/clamscan/manager.c --- clamav-0.98.6+dfsg/clamscan/manager.c 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamscan/manager.c 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C) 2007-2013 Sourcefire, Inc. * * Authors: Tomasz Kojm @@ -59,6 +60,7 @@ #include "libclamav/clamav.h" #include "libclamav/others.h" #include "libclamav/matcher-ac.h" +#include "libclamav/matcher-pcre.h" #include "libclamav/str.h" #include "libclamav/readdb.h" #include "libclamav/cltypes.h" @@ -129,17 +131,25 @@ size_t nchains; }; +struct clamscan_cb_data { + struct metachain * chain; + const char * filename; +}; + static cl_error_t pre(int fd, const char *type, void *context) { struct metachain *c; + struct clamscan_cb_data *d; UNUSEDPARAM(fd); UNUSEDPARAM(type); if (!(context)) return CL_CLEAN; - - c = (struct metachain *)context; + d = (struct clamscan_cb_data *)context; + c = d->chain; + if (c == NULL) + return CL_CLEAN; c->level++; @@ -172,12 +182,16 @@ static cl_error_t post(int fd, int result, const char *virname, void *context) { - struct metachain *c = context; + struct clamscan_cb_data *d = context; + struct metachain *c; char str[128]; UNUSEDPARAM(fd); UNUSEDPARAM(result); + if (d != NULL) + c = d->chain; + if (c && c->nchains) { print_chain(c, str, sizeof(str)); @@ -199,6 +213,7 @@ { char prev[128]; struct metachain *c; + struct clamscan_cb_data *d; const char *type; size_t n; char *chain; @@ -210,7 +225,11 @@ UNUSEDPARAM(is_encrypted); UNUSEDPARAM(filepos_container); - c = (struct metachain *)context; + if (!(context)) + return CL_CLEAN; + d = (struct clamscan_cb_data *)context; + + c = d->chain; type = (strncmp(container_type, "CL_TYPE_", 8) == 0 ? container_type + 8 : container_type); n = strlen(type) + strlen(filename) + 2; @@ -255,15 +274,30 @@ return CL_CLEAN; } +static void clamscan_virus_found_cb(int fd, const char *virname, void *context) +{ + struct clamscan_cb_data *data = (struct clamscan_cb_data *)context; + const char * filename; + + if (data == NULL) + return; + if (data->filename != NULL) + filename = data->filename; + else + filename = "(filename not set)"; + logg("~%s: %s FOUND\n", filename, virname); + return; +} + static void scanfile(const char *filename, struct cl_engine *engine, const struct optstruct *opts, unsigned int options) { int ret = 0, fd, included; unsigned i; const struct optstruct *opt; const char *virname; - const char **virpp = &virname; STATBUF sb; struct metachain chain; + struct clamscan_cb_data data; if((opt = optget(opts, "exclude"))->enabled) { while(opt) { @@ -335,6 +369,12 @@ chain.chains = malloc(sizeof(char **)); if (chain.chains) { chain.chains[0] = strdup(filename); + if (!chain.chains[0]) { + free(chain.chains); + logg("Unable to allocate memory in scanfile()\n"); + info.errors++; + return; + } chain.nchains = 1; } } @@ -347,31 +387,20 @@ return; } - - if((ret = cl_scandesc_callback(fd, virpp, &info.blocks, engine, options, &chain)) == CL_VIRUS) { - if (options & CL_SCAN_ALLMATCHES) { - virpp = (const char **)*virpp; /* allmatch needs an extra dereference */ - virname = virpp[0]; /* this is the first virus */ - } + data.chain = &chain; + data.filename = filename; + if((ret = cl_scandesc_callback(fd, &virname, &info.blocks, engine, options, &data)) == CL_VIRUS) { if(optget(opts, "archive-verbose")->enabled) { if (chain.nchains > 1) { char str[128]; int toolong = print_chain(&chain, str, sizeof(str)); - logg("~%s%s!(%u)%s: %s FOUND\n", str, toolong ? "..." : "", chain.lastvir-1, chain.chains[chain.nchains-1], virname); + logg("~%s%s!(%llu)%s: %s FOUND\n", str, toolong ? "..." : "", (long long unsigned)(chain.lastvir-1), chain.chains[chain.nchains-1], virname); } else if (chain.lastvir) { - logg("~%s!(%u): %s FOUND\n", filename, chain.lastvir-1, virname); + logg("~%s!(%llu): %s FOUND\n", filename, (long long unsigned)(chain.lastvir-1), virname); } } - - if (options & CL_SCAN_ALLMATCHES) { - int i = 0; - while (virpp[i]) - logg("~%s: %s FOUND\n", filename, virpp[i++]); - - free((void *)virpp); - } - else + if (!(options & CL_SCAN_ALLMATCHES)) logg("~%s: %s FOUND\n", filename, virname); info.files++; @@ -519,10 +548,10 @@ int ret; unsigned int fsize = 0; const char *virname, *tmpdir; - const char **virpp = &virname; char *file, buff[FILEBUFF]; size_t bread; FILE *fs; + struct clamscan_cb_data data; if(optget(opts, "tempdir")->enabled) { tmpdir = optget(opts, "tempdir")->strarg; @@ -564,20 +593,11 @@ info.files++; info.rblocks += fsize / CL_COUNT_PRECISION; - if((ret = cl_scanfile(file, &virname, &info.blocks, engine, options)) == CL_VIRUS) { - if (options & CL_SCAN_ALLMATCHES) { - int i = 0; - - virpp = (const char **)*virpp; /* temp hack for scanall mode until api augmentation */ - virname = virpp[0]; - - while (virpp[i]) - logg("stdin: %s FOUND\n", virpp[i++]); - - free((void *)virpp); - } else { + data.filename = "stdin"; + data.chain = NULL; + if((ret = cl_scanfile_callback(file, &virname, &info.blocks, engine, options, &data)) == CL_VIRUS) { + if (!(options & CL_SCAN_ALLMATCHES)) logg("stdin: %s FOUND\n", virname); - } info.ifiles++; @@ -623,6 +643,17 @@ return 2; } + if(optget(opts, "yara-rules")->enabled) { + char *p = optget(opts, "yara-rules")->strarg; + if(strcmp(p, "yes")) { + if(!strcmp(p, "only")) + dboptions |= CL_DB_YARA_ONLY; + else if (!strcmp(p, "no")) + dboptions |= CL_DB_YARA_EXCLUDE; + } + + } + if(optget(opts, "phishing-sigs")->enabled) dboptions |= CL_DB_PHISHING; @@ -764,12 +795,15 @@ if(optget(opts, "bytecode-unsigned")->enabled) dboptions |= CL_DB_BYTECODE_UNSIGNED; - if(optget(opts, "bytecode-statistics")->enabled) - dboptions |= CL_DB_BYTECODE_STATS; - if((opt = optget(opts,"bytecode-timeout"))->enabled) cl_engine_set_num(engine, CL_ENGINE_BYTECODE_TIMEOUT, opt->numarg); + if (optget(opts, "nocerts")->enabled) + cl_engine_set_num(engine, CL_ENGINE_DISABLE_PE_CERTS, 1); + + if (optget(opts, "dumpcerts")->enabled) + cl_engine_set_num(engine, CL_ENGINE_PE_DUMPCERTS, 1); + if((opt = optget(opts,"bytecode-mode"))->enabled) { enum bytecode_mode mode; @@ -785,6 +819,18 @@ cl_engine_set_num(engine, CL_ENGINE_BYTECODE_MODE, mode); } + if((opt = optget(opts, "statistics"))->enabled) { + while(opt) { + if (!strcasecmp(opt->strarg, "bytecode")) { + dboptions |= CL_DB_BYTECODE_STATS; + } + else if (!strcasecmp(opt->strarg, "pcre")) { + dboptions |= CL_DB_PCRE_STATS; + } + opt = opt->nextarg; + } + } + if((opt = optget(opts, "tempdir"))->enabled) { if((ret = cl_engine_set_str(engine, CL_ENGINE_TMPDIR, opt->strarg))) { logg("!cli_engine_set_str(CL_ENGINE_TMPDIR) failed: %s\n", cl_strerror(ret)); @@ -819,6 +865,23 @@ free(dbdir); } + /* pcre engine limits - required for cl_engine_compile */ + if ((opt = optget(opts, "pcre-match-limit"))->active) { + if ((ret = cl_engine_set_num(engine, CL_ENGINE_PCRE_MATCH_LIMIT, opt->numarg))) { + logg("!cli_engine_set_num(CL_ENGINE_PCRE_MATCH_LIMIT) failed: %s\n", cl_strerror(ret)); + cl_engine_free(engine); + return 2; + } + } + + if ((opt = optget(opts, "pcre-recmatch-limit"))->active) { + if ((ret = cl_engine_set_num(engine, CL_ENGINE_PCRE_RECMATCH_LIMIT, opt->numarg))) { + logg("!cli_engine_set_num(CL_ENGINE_PCRE_RECMATCH_LIMIT) failed: %s\n", cl_strerror(ret)); + cl_engine_free(engine); + return 2; + } + } + if((ret = cl_engine_compile(engine)) != 0) { logg("!Database initialization error: %s\n", cl_strerror(ret));; @@ -832,12 +895,6 @@ cl_engine_set_clcb_post_scan(engine, post); } - if (optget(opts, "nocerts")->enabled) - engine->dconf->pe |= PE_CONF_DISABLECERT; - - if (optget(opts, "dumpcerts")->enabled) - engine->dconf->pe |= PE_CONF_DUMPCERT; - /* set limits */ if((opt = optget(opts, "max-scansize"))->active) { @@ -952,6 +1009,15 @@ } } + if((opt = optget(opts, "max-rechwp3"))->active) { + if((ret = cl_engine_set_num(engine, CL_ENGINE_MAX_RECHWP3, opt->numarg))) { + logg("!cli_engine_set_num(CL_ENGINE_MAX_RECHWP3) failed: %s\n", cl_strerror(ret)); + + cl_engine_free(engine); + return 2; + } + } + if ((opt = optget(opts, "timelimit"))->active) { if ((ret = cl_engine_set_num(engine, CL_ENGINE_TIME_LIMIT, opt->numarg))) { logg("!cli_engine_set_num(CL_ENGINE_TIME_LIMIT) failed: %s\n", cl_strerror(ret)); @@ -961,9 +1027,19 @@ } } + if ((opt = optget(opts, "pcre-max-filesize"))->active) { + if ((ret = cl_engine_set_num(engine, CL_ENGINE_PCRE_MAX_FILESIZE, opt->numarg))) { + logg("!cli_engine_set_num(CL_ENGINE_PCRE_MAX_FILESIZE) failed: %s\n", cl_strerror(ret)); + cl_engine_free(engine); + return 2; + } + } + /* set scan options */ - if(optget(opts, "allmatch")->enabled) + if(optget(opts, "allmatch")->enabled) { options |= CL_SCAN_ALLMATCHES; + cl_engine_set_clcb_virus_found(engine, clamscan_virus_found_cb); + } if(optget(opts,"phishing-ssl")->enabled) options |= CL_SCAN_PHISHING_BLOCKSSL; @@ -986,6 +1062,9 @@ if(optget(opts, "block-encrypted")->enabled) options |= CL_SCAN_BLOCKENCRYPTED; + if(optget(opts, "block-macros")->enabled) + options |= CL_SCAN_BLOCKMACROS; + if(optget(opts, "scan-pe")->enabled) options |= CL_SCAN_PE; @@ -1007,6 +1086,12 @@ if(optget(opts, "scan-mail")->enabled) options |= CL_SCAN_MAIL; + if(optget(opts, "scan-xmldocs")->enabled) + options |= CL_SCAN_XMLDOCS; + + if(optget(opts, "scan-hwp3")->enabled) + options |= CL_SCAN_HWP3; + if(optget(opts, "algorithmic-detection")->enabled) options |= CL_SCAN_ALGORITHMIC; @@ -1129,9 +1214,20 @@ } } - if(optget(opts, "bytecode-statistics")->enabled) { - cli_sigperf_print(); - cli_sigperf_events_destroy(); + if((opt = optget(opts, "statistics"))->enabled) { + while(opt) { + if (!strcasecmp(opt->strarg, "bytecode")) { + cli_sigperf_print(); + cli_sigperf_events_destroy(); + } +#if HAVE_PCRE + else if (!strcasecmp(opt->strarg, "pcre")) { + cli_pcre_perf_print(); + cli_pcre_perf_events_destroy(); + } +#endif + opt = opt->nextarg; + } } /* free the engine */ diff -Nru clamav-0.98.6+dfsg/clamscan/manager.h clamav-0.99.2+addedllvm/clamscan/manager.h --- clamav-0.98.6+dfsg/clamscan/manager.h 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamscan/manager.h 2016-04-22 15:02:18.000000000 +0000 @@ -1,4 +1,5 @@ /* + * Copyright (C) 2015 Cisco Systems, Inc. and/or its affiliates. All rights reserved. * Copyright (C) 2007-2009 Sourcefire, Inc. * * Authors: Tomasz Kojm diff -Nru clamav-0.98.6+dfsg/clamsubmit/Makefile.am clamav-0.99.2+addedllvm/clamsubmit/Makefile.am --- clamav-0.98.6+dfsg/clamsubmit/Makefile.am 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamsubmit/Makefile.am 2016-04-22 15:02:18.000000000 +0000 @@ -31,7 +31,7 @@ AM_CFLAGS=@WERR_CFLAGS@ @CLAMSUBMIT_CFLAGS@ DEFS = @DEFS@ -DCL_NOTHREADS -AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/shared -I$(top_srcdir)/libclamav @JSON_CPPFLAGS@ +AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/shared -I$(top_srcdir)/libclamav @SSL_CPPFLAGS@ @JSON_CPPFLAGS@ @PCRE_CPPFLAGS@ LIBS = $(top_builddir)/libclamav/libclamav.la @CLAMSUBMIT_LIBS@ @THREAD_LIBS@ AM_INSTALLCHECK_STD_OPTIONS_EXEMPT=clamsubmit$(EXEEXT) diff -Nru clamav-0.98.6+dfsg/clamsubmit/Makefile.in clamav-0.99.2+addedllvm/clamsubmit/Makefile.in --- clamav-0.98.6+dfsg/clamsubmit/Makefile.in 2014-12-18 21:43:18.000000000 +0000 +++ clamav-0.99.2+addedllvm/clamsubmit/Makefile.in 2016-04-22 16:19:52.000000000 +0000 @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.14 from Makefile.am. +# Makefile.in generated by automake 1.14.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2013 Free Software Foundation, Inc. @@ -103,14 +103,13 @@ $(top_srcdir)/config/depcomp ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/acinclude.m4 \ - $(top_srcdir)/m4/argz.m4 \ $(top_srcdir)/m4/ax_check_uname_syscall.m4 \ $(top_srcdir)/m4/fdpassing.m4 $(top_srcdir)/m4/lib-ld.m4 \ $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/llvm.m4 \ - $(top_srcdir)/m4/ltdl.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/m4/ltargz.m4 $(top_srcdir)/m4/ltdl.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ $(top_srcdir)/m4/mmap_private.m4 $(top_srcdir)/m4/resolv.m4 \ $(top_srcdir)/m4/reorganization/version.m4 \ $(top_srcdir)/m4/reorganization/build_tools.m4 \ @@ -125,9 +124,11 @@ $(top_srcdir)/m4/reorganization/libs/xml.m4 \ $(top_srcdir)/m4/reorganization/libs/openssl.m4 \ $(top_srcdir)/m4/reorganization/libs/json.m4 \ + $(top_srcdir)/m4/reorganization/libs/pcre.m4 \ $(top_srcdir)/m4/reorganization/libs/libz.m4 \ $(top_srcdir)/m4/reorganization/libs/bzip.m4 \ $(top_srcdir)/m4/reorganization/libs/unrar.m4 \ + $(top_srcdir)/m4/reorganization/libs/systemd.m4 \ $(top_srcdir)/m4/reorganization/code_checks/ipv6.m4 \ $(top_srcdir)/m4/reorganization/code_checks/dns.m4 \ $(top_srcdir)/m4/reorganization/code_checks/fanotify.m4 \ @@ -164,6 +165,8 @@ $(top_srcdir)/m4/reorganization/distcheck.m4 \ $(top_srcdir)/m4/reorganization/llvm.m4 \ $(top_srcdir)/m4/reorganization/sha_collect.m4 \ + $(top_srcdir)/m4/reorganization/yara.m4 \ + $(top_srcdir)/m4/reorganization/libfreshclam.m4 \ $(top_srcdir)/m4/reorganization/bsd.m4 \ $(top_srcdir)/m4/reorganization/libs/curl.m4 \ $(top_srcdir)/m4/reorganization/substitutions.m4 \ @@ -249,7 +252,6 @@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ -ARGZ_H = @ARGZ_H@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ @@ -259,6 +261,7 @@ CCDEPMODE = @CCDEPMODE@ CFGDIR = @CFGDIR@ CFLAGS = @CFLAGS@ +CHECK_CFLAGS = @CHECK_CFLAGS@ CHECK_CPPFLAGS = @CHECK_CPPFLAGS@ CHECK_LIBS = @CHECK_LIBS@ CLAMAVGROUP = @CLAMAVGROUP@ @@ -305,6 +308,7 @@ GETENT = @GETENT@ GPERF = @GPERF@ GREP = @GREP@ +HAVE_YARA = @HAVE_YARA@ INCLTDL = @INCLTDL@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -317,6 +321,9 @@ LCOV = @LCOV@ LD = @LD@ LDFLAGS = @LDFLAGS@ +LEX = @LEX@ +LEXLIB = @LEXLIB@ +LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ LIBADD_DL = @LIBADD_DL@ LIBADD_DLD_LINK = @LIBADD_DLD_LINK@ LIBADD_DLOPEN = @LIBADD_DLOPEN@ @@ -339,9 +346,11 @@ LTDLOPEN = @LTDLOPEN@ LTLIBBZ2 = @LTLIBBZ2@ LTLIBOBJS = @LTLIBOBJS@ +LT_ARGZ_H = @LT_ARGZ_H@ LT_CONFIG_H = @LT_CONFIG_H@ LT_DLLOADERS = @LT_DLLOADERS@ LT_DLPREOPEN = @LT_DLPREOPEN@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -360,6 +369,11 @@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PCRE_CPPFLAGS = @PCRE_CPPFLAGS@ +PCRE_LIBS = @PCRE_LIBS@ +PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ @@ -369,6 +383,8 @@ SSL_LDFLAGS = @SSL_LDFLAGS@ SSL_LIBS = @SSL_LIBS@ STRIP = @STRIP@ +SYSTEMD_CFLAGS = @SYSTEMD_CFLAGS@ +SYSTEMD_LIBS = @SYSTEMD_LIBS@ THREAD_LIBS = @THREAD_LIBS@ TH_SAFE = @TH_SAFE@ VERSION = @VERSION@ @@ -377,6 +393,8 @@ WERR_CFLAGS_MILTER = @WERR_CFLAGS_MILTER@ XML_CPPFLAGS = @XML_CPPFLAGS@ XML_LIBS = @XML_LIBS@ +YACC = @YACC@ +YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -419,6 +437,7 @@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ +pcreconfig = @pcreconfig@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ @@ -429,6 +448,7 @@ subdirs = @subdirs@ sys_symbol_underscore = @sys_symbol_underscore@ sysconfdir = @sysconfdir@ +systemdsystemunitdir = @systemdsystemunitdir@ target = @target@ target_alias = @target_alias@ target_cpu = @target_cpu@ @@ -449,7 +469,7 @@ clamsubmit.c AM_CFLAGS = @WERR_CFLAGS@ @CLAMSUBMIT_CFLAGS@ -AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/shared -I$(top_srcdir)/libclamav @JSON_CPPFLAGS@ +AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/shared -I$(top_srcdir)/libclamav @SSL_CPPFLAGS@ @JSON_CPPFLAGS@ @PCRE_CPPFLAGS@ AM_INSTALLCHECK_STD_OPTIONS_EXEMPT = clamsubmit$(EXEEXT) CLEANFILES = *.gcda *.gcno all: all-am diff -Nru clamav-0.98.6+dfsg/config/config.guess clamav-0.99.2+addedllvm/config/config.guess --- clamav-0.98.6+dfsg/config/config.guess 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/config/config.guess 2016-04-22 15:02:18.000000000 +0000 @@ -2,7 +2,7 @@ # Attempt to guess a canonical system name. # Copyright 1992-2013 Free Software Foundation, Inc. -timestamp='2013-05-16' +timestamp='2013-06-10' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -810,7 +810,12 @@ exit ;; *:FreeBSD:*:*) UNAME_PROCESSOR=`/usr/bin/uname -p` - echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` + case ${UNAME_PROCESSOR} in + amd64) + echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; + *) + echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; + esac exit ;; i*:CYGWIN*:*) echo ${UNAME_MACHINE}-pc-cygwin @@ -990,6 +995,12 @@ ppc:Linux:*:*) echo powerpc-unknown-linux-${LIBC} exit ;; + ppc64le:Linux:*:*) + echo powerpc64le-unknown-linux-${LIBC} + exit ;; + ppcle:Linux:*:*) + echo powerpcle-unknown-linux-${LIBC} + exit ;; s390:Linux:*:* | s390x:Linux:*:*) echo ${UNAME_MACHINE}-ibm-linux-${LIBC} exit ;; diff -Nru clamav-0.98.6+dfsg/config/config.sub clamav-0.99.2+addedllvm/config/config.sub --- clamav-0.98.6+dfsg/config/config.sub 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/config/config.sub 2016-04-22 15:02:18.000000000 +0000 @@ -2,7 +2,7 @@ # Configuration validation subroutine script. # Copyright 1992-2013 Free Software Foundation, Inc. -timestamp='2013-04-24' +timestamp='2013-08-10' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -257,7 +257,7 @@ | avr | avr32 \ | be32 | be64 \ | bfin \ - | c4x | clipper \ + | c4x | c8051 | clipper \ | d10v | d30v | dlx | dsp16xx \ | epiphany \ | fido | fr30 | frv \ @@ -366,13 +366,13 @@ | aarch64-* | aarch64_be-* \ | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ - | alphapca5[67]-* | alpha64pca5[67]-* | amd64-* | arc-* | arceb-* \ + | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \ | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ | avr-* | avr32-* \ | be32-* | be64-* \ | bfin-* | bs2000-* \ | c[123]* | c30-* | [cjt]90-* | c4x-* \ - | clipper-* | craynv-* | cydra-* \ + | c8051-* | clipper-* | craynv-* | cydra-* \ | d10v-* | d30v-* | dlx-* \ | elxsi-* \ | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ @@ -473,6 +473,12 @@ basic_machine=a29k-none os=-bsd ;; + amd64) + basic_machine=x86_64-pc + ;; + amd64-*) + basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; amdahl) basic_machine=580-amdahl os=-sysv @@ -788,7 +794,7 @@ os=-mingw64 ;; mingw32) - basic_machine=i386-pc + basic_machine=i686-pc os=-mingw32 ;; mingw32ce) @@ -824,7 +830,7 @@ basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` ;; msys) - basic_machine=i386-pc + basic_machine=i686-pc os=-msys ;; mvs) @@ -1540,6 +1546,9 @@ c4x-* | tic4x-*) os=-coff ;; + c8051-*) + os=-elf + ;; hexagon-*) os=-elf ;; diff -Nru clamav-0.98.6+dfsg/config/ltmain.sh clamav-0.99.2+addedllvm/config/ltmain.sh --- clamav-0.98.6+dfsg/config/ltmain.sh 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/config/ltmain.sh 2016-04-22 15:02:18.000000000 +0000 @@ -1,9 +1,12 @@ +#! /bin/sh +## DO NOT EDIT - This file generated from ./build-aux/ltmain.in +## by inline-source v2014-01-03.01 -# libtool (GNU libtool) 2.4.2 +# libtool (GNU libtool) 2.4.6 +# Provide generalized library-building support services. # Written by Gordon Matzigkeit , 1996 -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, -# 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc. +# Copyright (C) 1996-2015 Free Software Foundation, Inc. # This is free software; see the source for copying conditions. There is NO # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. @@ -23,881 +26,2112 @@ # General Public License for more details. # # You should have received a copy of the GNU General Public License -# along with GNU Libtool; see the file COPYING. If not, a copy -# can be downloaded from http://www.gnu.org/licenses/gpl.html, -# or obtained by writing to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# along with this program. If not, see . -# Usage: $progname [OPTION]... [MODE-ARG]... -# -# Provide generalized library-building support services. -# -# --config show all configuration variables -# --debug enable verbose shell tracing -# -n, --dry-run display commands without modifying any files -# --features display basic configuration information and exit -# --mode=MODE use operation mode MODE -# --preserve-dup-deps don't remove duplicate dependency libraries -# --quiet, --silent don't print informational messages -# --no-quiet, --no-silent -# print informational messages (default) -# --no-warn don't display warning messages -# --tag=TAG use configuration variables from tag TAG -# -v, --verbose print more informational messages than default -# --no-verbose don't print the extra informational messages -# --version print version information -# -h, --help, --help-all print short, long, or detailed help message -# -# MODE must be one of the following: -# -# clean remove files from the build directory -# compile compile a source file into a libtool object -# execute automatically set library path, then run a program -# finish complete the installation of libtool libraries -# install install libraries or executables -# link create a library or an executable -# uninstall remove libraries from an installed directory -# -# MODE-ARGS vary depending on the MODE. When passed as first option, -# `--mode=MODE' may be abbreviated as `MODE' or a unique abbreviation of that. -# Try `$progname --help --mode=MODE' for a more detailed description of MODE. -# -# When reporting a bug, please describe a test case to reproduce it and -# include the following information: -# -# host-triplet: $host -# shell: $SHELL -# compiler: $LTCC -# compiler flags: $LTCFLAGS -# linker: $LD (gnu? $with_gnu_ld) -# $progname: (GNU libtool) 2.4.2 -# automake: $automake_version -# autoconf: $autoconf_version -# -# Report bugs to . -# GNU libtool home page: . -# General help using GNU software: . PROGRAM=libtool PACKAGE=libtool -VERSION=2.4.2 -TIMESTAMP="" -package_revision=1.3337 +VERSION=2.4.6 +package_revision=2.4.6 -# Be Bourne compatible -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then + +## ------ ## +## Usage. ## +## ------ ## + +# Run './libtool --help' for help with using this script from the +# command line. + + +## ------------------------------- ## +## User overridable command paths. ## +## ------------------------------- ## + +# After configure completes, it has a better idea of some of the +# shell tools we need than the defaults used by the functions shared +# with bootstrap, so set those here where they can still be over- +# ridden by the user, but otherwise take precedence. + +: ${AUTOCONF="autoconf"} +: ${AUTOMAKE="automake"} + + +## -------------------------- ## +## Source external libraries. ## +## -------------------------- ## + +# Much of our low-level functionality needs to be sourced from external +# libraries, which are installed to $pkgauxdir. + +# Set a version string for this script. +scriptversion=2015-01-20.17; # UTC + +# General shell script boiler plate, and helper functions. +# Written by Gary V. Vaughan, 2004 + +# Copyright (C) 2004-2015 Free Software Foundation, Inc. +# This is free software; see the source for copying conditions. There is NO +# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. + +# As a special exception to the GNU General Public License, if you distribute +# this file as part of a program or library that is built using GNU Libtool, +# you may include this file under the same distribution terms that you use +# for the rest of that program. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNES FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# Please report bugs or propose patches to gary@gnu.org. + + +## ------ ## +## Usage. ## +## ------ ## + +# Evaluate this file near the top of your script to gain access to +# the functions and variables defined here: +# +# . `echo "$0" | ${SED-sed} 's|[^/]*$||'`/build-aux/funclib.sh +# +# If you need to override any of the default environment variable +# settings, do that before evaluating this file. + + +## -------------------- ## +## Shell normalisation. ## +## -------------------- ## + +# Some shells need a little help to be as Bourne compatible as possible. +# Before doing anything else, make sure all that help has been provided! + +DUALCASE=1; export DUALCASE # for MKS sh +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : emulate sh NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which + # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else - case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac + case `(set -o) 2>/dev/null` in *posix*) set -o posix ;; esac fi -BIN_SH=xpg4; export BIN_SH # for Tru64 -DUALCASE=1; export DUALCASE # for MKS sh - -# A function that is used when there is no print builtin or printf. -func_fallback_echo () -{ - eval 'cat <<_LTECHO_EOF -$1 -_LTECHO_EOF' -} -# NLS nuisances: We save the old values to restore during execute mode. -lt_user_locale= -lt_safe_locale= -for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES +# NLS nuisances: We save the old values in case they are required later. +_G_user_locale= +_G_safe_locale= +for _G_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES do - eval "if test \"\${$lt_var+set}\" = set; then - save_$lt_var=\$$lt_var - $lt_var=C - export $lt_var - lt_user_locale=\"$lt_var=\\\$save_\$lt_var; \$lt_user_locale\" - lt_safe_locale=\"$lt_var=C; \$lt_safe_locale\" + eval "if test set = \"\${$_G_var+set}\"; then + save_$_G_var=\$$_G_var + $_G_var=C + export $_G_var + _G_user_locale=\"$_G_var=\\\$save_\$_G_var; \$_G_user_locale\" + _G_safe_locale=\"$_G_var=C; \$_G_safe_locale\" fi" done -LC_ALL=C -LANGUAGE=C -export LANGUAGE LC_ALL -$lt_unset CDPATH +# CDPATH. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +# Make sure IFS has a sensible default +sp=' ' +nl=' +' +IFS="$sp $nl" +# There are apparently some retarded systems that use ';' as a PATH separator! +if test "${PATH_SEPARATOR+set}" != set; then + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { + (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || + PATH_SEPARATOR=';' + } +fi -# Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh -# is ksh but when the shell is invoked as "sh" and the current value of -# the _XPG environment variable is not equal to 1 (one), the special -# positional parameter $0, within a function call, is the name of the -# function. -progpath="$0" +## ------------------------- ## +## Locate command utilities. ## +## ------------------------- ## + + +# func_executable_p FILE +# ---------------------- +# Check that FILE is an executable regular file. +func_executable_p () +{ + test -f "$1" && test -x "$1" +} + + +# func_path_progs PROGS_LIST CHECK_FUNC [PATH] +# -------------------------------------------- +# Search for either a program that responds to --version with output +# containing "GNU", or else returned by CHECK_FUNC otherwise, by +# trying all the directories in PATH with each of the elements of +# PROGS_LIST. +# +# CHECK_FUNC should accept the path to a candidate program, and +# set $func_check_prog_result if it truncates its output less than +# $_G_path_prog_max characters. +func_path_progs () +{ + _G_progs_list=$1 + _G_check_func=$2 + _G_PATH=${3-"$PATH"} + + _G_path_prog_max=0 + _G_path_prog_found=false + _G_save_IFS=$IFS; IFS=${PATH_SEPARATOR-:} + for _G_dir in $_G_PATH; do + IFS=$_G_save_IFS + test -z "$_G_dir" && _G_dir=. + for _G_prog_name in $_G_progs_list; do + for _exeext in '' .EXE; do + _G_path_prog=$_G_dir/$_G_prog_name$_exeext + func_executable_p "$_G_path_prog" || continue + case `"$_G_path_prog" --version 2>&1` in + *GNU*) func_path_progs_result=$_G_path_prog _G_path_prog_found=: ;; + *) $_G_check_func $_G_path_prog + func_path_progs_result=$func_check_prog_result + ;; + esac + $_G_path_prog_found && break 3 + done + done + done + IFS=$_G_save_IFS + test -z "$func_path_progs_result" && { + echo "no acceptable sed could be found in \$PATH" >&2 + exit 1 + } +} + + +# We want to be able to use the functions in this file before configure +# has figured out where the best binaries are kept, which means we have +# to search for them ourselves - except when the results are already set +# where we skip the searches. + +# Unless the user overrides by setting SED, search the path for either GNU +# sed, or the sed that truncates its output the least. +test -z "$SED" && { + _G_sed_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/ + for _G_i in 1 2 3 4 5 6 7; do + _G_sed_script=$_G_sed_script$nl$_G_sed_script + done + echo "$_G_sed_script" 2>/dev/null | sed 99q >conftest.sed + _G_sed_script= + + func_check_prog_sed () + { + _G_path_prog=$1 + + _G_count=0 + printf 0123456789 >conftest.in + while : + do + cat conftest.in conftest.in >conftest.tmp + mv conftest.tmp conftest.in + cp conftest.in conftest.nl + echo '' >> conftest.nl + "$_G_path_prog" -f conftest.sed conftest.out 2>/dev/null || break + diff conftest.out conftest.nl >/dev/null 2>&1 || break + _G_count=`expr $_G_count + 1` + if test "$_G_count" -gt "$_G_path_prog_max"; then + # Best one so far, save it but keep looking for a better one + func_check_prog_result=$_G_path_prog + _G_path_prog_max=$_G_count + fi + # 10*(2^10) chars as input seems more than enough + test 10 -lt "$_G_count" && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out + } + + func_path_progs "sed gsed" func_check_prog_sed $PATH:/usr/xpg4/bin + rm -f conftest.sed + SED=$func_path_progs_result +} + + +# Unless the user overrides by setting GREP, search the path for either GNU +# grep, or the grep that truncates its output the least. +test -z "$GREP" && { + func_check_prog_grep () + { + _G_path_prog=$1 + + _G_count=0 + _G_path_prog_max=0 + printf 0123456789 >conftest.in + while : + do + cat conftest.in conftest.in >conftest.tmp + mv conftest.tmp conftest.in + cp conftest.in conftest.nl + echo 'GREP' >> conftest.nl + "$_G_path_prog" -e 'GREP$' -e '-(cannot match)-' conftest.out 2>/dev/null || break + diff conftest.out conftest.nl >/dev/null 2>&1 || break + _G_count=`expr $_G_count + 1` + if test "$_G_count" -gt "$_G_path_prog_max"; then + # Best one so far, save it but keep looking for a better one + func_check_prog_result=$_G_path_prog + _G_path_prog_max=$_G_count + fi + # 10*(2^10) chars as input seems more than enough + test 10 -lt "$_G_count" && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out + } + + func_path_progs "grep ggrep" func_check_prog_grep $PATH:/usr/xpg4/bin + GREP=$func_path_progs_result +} + + +## ------------------------------- ## +## User overridable command paths. ## +## ------------------------------- ## + +# All uppercase variable names are used for environment variables. These +# variables can be overridden by the user before calling a script that +# uses them if a suitable command of that name is not already available +# in the command search PATH. : ${CP="cp -f"} -test "${ECHO+set}" = set || ECHO=${as_echo-'printf %s\n'} +: ${ECHO="printf %s\n"} +: ${EGREP="$GREP -E"} +: ${FGREP="$GREP -F"} +: ${LN_S="ln -s"} : ${MAKE="make"} : ${MKDIR="mkdir"} : ${MV="mv -f"} : ${RM="rm -f"} : ${SHELL="${CONFIG_SHELL-/bin/sh}"} -: ${Xsed="$SED -e 1s/^X//"} - -# Global variables: -EXIT_SUCCESS=0 -EXIT_FAILURE=1 -EXIT_MISMATCH=63 # $? = 63 is used to indicate version mismatch to missing. -EXIT_SKIP=77 # $? = 77 is used to indicate a skipped test to automake. - -exit_status=$EXIT_SUCCESS - -# Make sure IFS has a sensible default -lt_nl=' -' -IFS=" $lt_nl" -dirname="s,/[^/]*$,," -basename="s,^.*/,," -# func_dirname file append nondir_replacement -# Compute the dirname of FILE. If nonempty, add APPEND to the result, -# otherwise set result to NONDIR_REPLACEMENT. -func_dirname () -{ - func_dirname_result=`$ECHO "${1}" | $SED "$dirname"` - if test "X$func_dirname_result" = "X${1}"; then - func_dirname_result="${3}" - else - func_dirname_result="$func_dirname_result${2}" - fi -} # func_dirname may be replaced by extended shell implementation +## -------------------- ## +## Useful sed snippets. ## +## -------------------- ## +sed_dirname='s|/[^/]*$||' +sed_basename='s|^.*/||' -# func_basename file -func_basename () -{ - func_basename_result=`$ECHO "${1}" | $SED "$basename"` -} # func_basename may be replaced by extended shell implementation +# Sed substitution that helps us do robust quoting. It backslashifies +# metacharacters that are still active within double-quoted strings. +sed_quote_subst='s|\([`"$\\]\)|\\\1|g' +# Same as above, but do not quote variable references. +sed_double_quote_subst='s/\(["`\\]\)/\\\1/g' -# func_dirname_and_basename file append nondir_replacement -# perform func_basename and func_dirname in a single function -# call: -# dirname: Compute the dirname of FILE. If nonempty, -# add APPEND to the result, otherwise set result -# to NONDIR_REPLACEMENT. -# value returned in "$func_dirname_result" -# basename: Compute filename of FILE. -# value retuned in "$func_basename_result" -# Implementation must be kept synchronized with func_dirname -# and func_basename. For efficiency, we do not delegate to -# those functions but instead duplicate the functionality here. -func_dirname_and_basename () -{ - # Extract subdirectory from the argument. - func_dirname_result=`$ECHO "${1}" | $SED -e "$dirname"` - if test "X$func_dirname_result" = "X${1}"; then - func_dirname_result="${3}" - else - func_dirname_result="$func_dirname_result${2}" - fi - func_basename_result=`$ECHO "${1}" | $SED -e "$basename"` -} # func_dirname_and_basename may be replaced by extended shell implementation +# Sed substitution that turns a string into a regex matching for the +# string literally. +sed_make_literal_regex='s|[].[^$\\*\/]|\\&|g' +# Sed substitution that converts a w32 file name or path +# that contains forward slashes, into one that contains +# (escaped) backslashes. A very naive implementation. +sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g' -# func_stripname prefix suffix name -# strip PREFIX and SUFFIX off of NAME. -# PREFIX and SUFFIX must not contain globbing or regex special -# characters, hashes, percent signs, but SUFFIX may contain a leading -# dot (in which case that matches only a dot). -# func_strip_suffix prefix name -func_stripname () -{ - case ${2} in - .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;; - *) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;; - esac -} # func_stripname may be replaced by extended shell implementation +# Re-'\' parameter expansions in output of sed_double_quote_subst that +# were '\'-ed in input to the same. If an odd number of '\' preceded a +# '$' in input to sed_double_quote_subst, that '$' was protected from +# expansion. Since each input '\' is now two '\'s, look for any number +# of runs of four '\'s followed by two '\'s and then a '$'. '\' that '$'. +_G_bs='\\' +_G_bs2='\\\\' +_G_bs4='\\\\\\\\' +_G_dollar='\$' +sed_double_backslash="\ + s/$_G_bs4/&\\ +/g + s/^$_G_bs2$_G_dollar/$_G_bs&/ + s/\\([^$_G_bs]\\)$_G_bs2$_G_dollar/\\1$_G_bs2$_G_bs$_G_dollar/g + s/\n//g" -# These SED scripts presuppose an absolute path with a trailing slash. -pathcar='s,^/\([^/]*\).*$,\1,' -pathcdr='s,^/[^/]*,,' -removedotparts=':dotsl - s@/\./@/@g - t dotsl - s,/\.$,/,' -collapseslashes='s@/\{1,\}@/@g' -finalslash='s,/*$,/,' +## ----------------- ## +## Global variables. ## +## ----------------- ## + +# Except for the global variables explicitly listed below, the following +# functions in the '^func_' namespace, and the '^require_' namespace +# variables initialised in the 'Resource management' section, sourcing +# this file will not pollute your global namespace with anything +# else. There's no portable way to scope variables in Bourne shell +# though, so actually running these functions will sometimes place +# results into a variable named after the function, and often use +# temporary variables in the '^_G_' namespace. If you are careful to +# avoid using those namespaces casually in your sourcing script, things +# should continue to work as you expect. And, of course, you can freely +# overwrite any of the functions or variables defined here before +# calling anything to customize them. -# func_normal_abspath PATH -# Remove doubled-up and trailing slashes, "." path components, -# and cancel out any ".." path components in PATH after making -# it an absolute path. -# value returned in "$func_normal_abspath_result" -func_normal_abspath () -{ - # Start from root dir and reassemble the path. - func_normal_abspath_result= - func_normal_abspath_tpath=$1 - func_normal_abspath_altnamespace= - case $func_normal_abspath_tpath in - "") - # Empty path, that just means $cwd. - func_stripname '' '/' "`pwd`" - func_normal_abspath_result=$func_stripname_result - return - ;; - # The next three entries are used to spot a run of precisely - # two leading slashes without using negated character classes; - # we take advantage of case's first-match behaviour. - ///*) - # Unusual form of absolute path, do nothing. - ;; - //*) - # Not necessarily an ordinary path; POSIX reserves leading '//' - # and for example Cygwin uses it to access remote file shares - # over CIFS/SMB, so we conserve a leading double slash if found. - func_normal_abspath_altnamespace=/ - ;; - /*) - # Absolute path, do nothing. - ;; - *) - # Relative path, prepend $cwd. - func_normal_abspath_tpath=`pwd`/$func_normal_abspath_tpath - ;; - esac - # Cancel out all the simple stuff to save iterations. We also want - # the path to end with a slash for ease of parsing, so make sure - # there is one (and only one) here. - func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ - -e "$removedotparts" -e "$collapseslashes" -e "$finalslash"` - while :; do - # Processed it all yet? - if test "$func_normal_abspath_tpath" = / ; then - # If we ascended to the root using ".." the result may be empty now. - if test -z "$func_normal_abspath_result" ; then - func_normal_abspath_result=/ - fi - break - fi - func_normal_abspath_tcomponent=`$ECHO "$func_normal_abspath_tpath" | $SED \ - -e "$pathcar"` - func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ - -e "$pathcdr"` - # Figure out what to do with it - case $func_normal_abspath_tcomponent in - "") - # Trailing empty path component, ignore it. - ;; - ..) - # Parent dir; strip last assembled component from result. - func_dirname "$func_normal_abspath_result" - func_normal_abspath_result=$func_dirname_result - ;; - *) - # Actual path component, append it. - func_normal_abspath_result=$func_normal_abspath_result/$func_normal_abspath_tcomponent - ;; - esac - done - # Restore leading double-slash if one was found on entry. - func_normal_abspath_result=$func_normal_abspath_altnamespace$func_normal_abspath_result -} +EXIT_SUCCESS=0 +EXIT_FAILURE=1 +EXIT_MISMATCH=63 # $? = 63 is used to indicate version mismatch to missing. +EXIT_SKIP=77 # $? = 77 is used to indicate a skipped test to automake. -# func_relative_path SRCDIR DSTDIR -# generates a relative path from SRCDIR to DSTDIR, with a trailing -# slash if non-empty, suitable for immediately appending a filename -# without needing to append a separator. -# value returned in "$func_relative_path_result" -func_relative_path () -{ - func_relative_path_result= - func_normal_abspath "$1" - func_relative_path_tlibdir=$func_normal_abspath_result - func_normal_abspath "$2" - func_relative_path_tbindir=$func_normal_abspath_result - - # Ascend the tree starting from libdir - while :; do - # check if we have found a prefix of bindir - case $func_relative_path_tbindir in - $func_relative_path_tlibdir) - # found an exact match - func_relative_path_tcancelled= - break - ;; - $func_relative_path_tlibdir*) - # found a matching prefix - func_stripname "$func_relative_path_tlibdir" '' "$func_relative_path_tbindir" - func_relative_path_tcancelled=$func_stripname_result - if test -z "$func_relative_path_result"; then - func_relative_path_result=. - fi - break - ;; - *) - func_dirname $func_relative_path_tlibdir - func_relative_path_tlibdir=${func_dirname_result} - if test "x$func_relative_path_tlibdir" = x ; then - # Have to descend all the way to the root! - func_relative_path_result=../$func_relative_path_result - func_relative_path_tcancelled=$func_relative_path_tbindir - break - fi - func_relative_path_result=../$func_relative_path_result - ;; - esac - done +# Allow overriding, eg assuming that you follow the convention of +# putting '$debug_cmd' at the start of all your functions, you can get +# bash to show function call trace with: +# +# debug_cmd='eval echo "${FUNCNAME[0]} $*" >&2' bash your-script-name +debug_cmd=${debug_cmd-":"} +exit_cmd=: - # Now calculate path; take care to avoid doubling-up slashes. - func_stripname '' '/' "$func_relative_path_result" - func_relative_path_result=$func_stripname_result - func_stripname '/' '/' "$func_relative_path_tcancelled" - if test "x$func_stripname_result" != x ; then - func_relative_path_result=${func_relative_path_result}/${func_stripname_result} - fi +# By convention, finish your script with: +# +# exit $exit_status +# +# so that you can set exit_status to non-zero if you want to indicate +# something went wrong during execution without actually bailing out at +# the point of failure. +exit_status=$EXIT_SUCCESS - # Normalisation. If bindir is libdir, return empty string, - # else relative path ending with a slash; either way, target - # file name can be directly appended. - if test ! -z "$func_relative_path_result"; then - func_stripname './' '' "$func_relative_path_result/" - func_relative_path_result=$func_stripname_result - fi -} +# Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh +# is ksh but when the shell is invoked as "sh" and the current value of +# the _XPG environment variable is not equal to 1 (one), the special +# positional parameter $0, within a function call, is the name of the +# function. +progpath=$0 -# The name of this program: -func_dirname_and_basename "$progpath" -progname=$func_basename_result +# The name of this program. +progname=`$ECHO "$progpath" |$SED "$sed_basename"` -# Make sure we have an absolute path for reexecution: +# Make sure we have an absolute progpath for reexecution: case $progpath in [\\/]*|[A-Za-z]:\\*) ;; *[\\/]*) - progdir=$func_dirname_result + progdir=`$ECHO "$progpath" |$SED "$sed_dirname"` progdir=`cd "$progdir" && pwd` - progpath="$progdir/$progname" + progpath=$progdir/$progname ;; *) - save_IFS="$IFS" + _G_IFS=$IFS IFS=${PATH_SEPARATOR-:} for progdir in $PATH; do - IFS="$save_IFS" + IFS=$_G_IFS test -x "$progdir/$progname" && break done - IFS="$save_IFS" + IFS=$_G_IFS test -n "$progdir" || progdir=`pwd` - progpath="$progdir/$progname" + progpath=$progdir/$progname ;; esac -# Sed substitution that helps us do robust quoting. It backslashifies -# metacharacters that are still active within double-quoted strings. -Xsed="${SED}"' -e 1s/^X//' -sed_quote_subst='s/\([`"$\\]\)/\\\1/g' - -# Same as above, but do not quote variable references. -double_quote_subst='s/\(["`\\]\)/\\\1/g' - -# Sed substitution that turns a string into a regex matching for the -# string literally. -sed_make_literal_regex='s,[].[^$\\*\/],\\&,g' -# Sed substitution that converts a w32 file name or path -# which contains forward slashes, into one that contains -# (escaped) backslashes. A very naive implementation. -lt_sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g' - -# Re-`\' parameter expansions in output of double_quote_subst that were -# `\'-ed in input to the same. If an odd number of `\' preceded a '$' -# in input to double_quote_subst, that '$' was protected from expansion. -# Since each input `\' is now two `\'s, look for any number of runs of -# four `\'s followed by two `\'s and then a '$'. `\' that '$'. -bs='\\' -bs2='\\\\' -bs4='\\\\\\\\' -dollar='\$' -sed_double_backslash="\ - s/$bs4/&\\ -/g - s/^$bs2$dollar/$bs&/ - s/\\([^$bs]\\)$bs2$dollar/\\1$bs2$bs$dollar/g - s/\n//g" +## ----------------- ## +## Standard options. ## +## ----------------- ## + +# The following options affect the operation of the functions defined +# below, and should be set appropriately depending on run-time para- +# meters passed on the command line. -# Standard options: opt_dry_run=false -opt_help=false opt_quiet=false opt_verbose=false -opt_warning=: - -# func_echo arg... -# Echo program name prefixed message, along with the current mode -# name if it has been set yet. -func_echo () -{ - $ECHO "$progname: ${opt_mode+$opt_mode: }$*" -} -# func_verbose arg... -# Echo program name prefixed message in verbose mode only. -func_verbose () -{ - $opt_verbose && func_echo ${1+"$@"} +# Categories 'all' and 'none' are always available. Append any others +# you will pass as the first argument to func_warning from your own +# code. +warning_categories= + +# By default, display warnings according to 'opt_warning_types'. Set +# 'warning_func' to ':' to elide all warnings, or func_fatal_error to +# treat the next displayed warning as a fatal error. +warning_func=func_warn_and_continue + +# Set to 'all' to display all warnings, 'none' to suppress all +# warnings, or a space delimited list of some subset of +# 'warning_categories' to display only the listed warnings. +opt_warning_types=all + + +## -------------------- ## +## Resource management. ## +## -------------------- ## + +# This section contains definitions for functions that each ensure a +# particular resource (a file, or a non-empty configuration variable for +# example) is available, and if appropriate to extract default values +# from pertinent package files. Call them using their associated +# 'require_*' variable to ensure that they are executed, at most, once. +# +# It's entirely deliberate that calling these functions can set +# variables that don't obey the namespace limitations obeyed by the rest +# of this file, in order that that they be as useful as possible to +# callers. + + +# require_term_colors +# ------------------- +# Allow display of bold text on terminals that support it. +require_term_colors=func_require_term_colors +func_require_term_colors () +{ + $debug_cmd + + test -t 1 && { + # COLORTERM and USE_ANSI_COLORS environment variables take + # precedence, because most terminfo databases neglect to describe + # whether color sequences are supported. + test -n "${COLORTERM+set}" && : ${USE_ANSI_COLORS="1"} + + if test 1 = "$USE_ANSI_COLORS"; then + # Standard ANSI escape sequences + tc_reset='' + tc_bold=''; tc_standout='' + tc_red=''; tc_green='' + tc_blue=''; tc_cyan='' + else + # Otherwise trust the terminfo database after all. + test -n "`tput sgr0 2>/dev/null`" && { + tc_reset=`tput sgr0` + test -n "`tput bold 2>/dev/null`" && tc_bold=`tput bold` + tc_standout=$tc_bold + test -n "`tput smso 2>/dev/null`" && tc_standout=`tput smso` + test -n "`tput setaf 1 2>/dev/null`" && tc_red=`tput setaf 1` + test -n "`tput setaf 2 2>/dev/null`" && tc_green=`tput setaf 2` + test -n "`tput setaf 4 2>/dev/null`" && tc_blue=`tput setaf 4` + test -n "`tput setaf 5 2>/dev/null`" && tc_cyan=`tput setaf 5` + } + fi + } - # A bug in bash halts the script if the last line of a function - # fails when set -e is in force, so we need another command to - # work around that: - : + require_term_colors=: } -# func_echo_all arg... -# Invoke $ECHO with all args, space-separated. -func_echo_all () -{ - $ECHO "$*" -} -# func_error arg... -# Echo program name prefixed message to standard error. -func_error () -{ - $ECHO "$progname: ${opt_mode+$opt_mode: }"${1+"$@"} 1>&2 -} +## ----------------- ## +## Function library. ## +## ----------------- ## -# func_warning arg... -# Echo program name prefixed warning message to standard error. -func_warning () -{ - $opt_warning && $ECHO "$progname: ${opt_mode+$opt_mode: }warning: "${1+"$@"} 1>&2 +# This section contains a variety of useful functions to call in your +# scripts. Take note of the portable wrappers for features provided by +# some modern shells, which will fall back to slower equivalents on +# less featureful shells. - # bash bug again: - : -} -# func_fatal_error arg... -# Echo program name prefixed message to standard error, and exit. -func_fatal_error () -{ - func_error ${1+"$@"} - exit $EXIT_FAILURE -} +# func_append VAR VALUE +# --------------------- +# Append VALUE onto the existing contents of VAR. -# func_fatal_help arg... -# Echo program name prefixed message to standard error, followed by -# a help hint, and exit. -func_fatal_help () -{ - func_error ${1+"$@"} - func_fatal_error "$help" -} -help="Try \`$progname --help' for more information." ## default + # We should try to minimise forks, especially on Windows where they are + # unreasonably slow, so skip the feature probes when bash or zsh are + # being used: + if test set = "${BASH_VERSION+set}${ZSH_VERSION+set}"; then + : ${_G_HAVE_ARITH_OP="yes"} + : ${_G_HAVE_XSI_OPS="yes"} + # The += operator was introduced in bash 3.1 + case $BASH_VERSION in + [12].* | 3.0 | 3.0*) ;; + *) + : ${_G_HAVE_PLUSEQ_OP="yes"} + ;; + esac + fi + # _G_HAVE_PLUSEQ_OP + # Can be empty, in which case the shell is probed, "yes" if += is + # useable or anything else if it does not work. + test -z "$_G_HAVE_PLUSEQ_OP" \ + && (eval 'x=a; x+=" b"; test "a b" = "$x"') 2>/dev/null \ + && _G_HAVE_PLUSEQ_OP=yes + +if test yes = "$_G_HAVE_PLUSEQ_OP" +then + # This is an XSI compatible shell, allowing a faster implementation... + eval 'func_append () + { + $debug_cmd + + eval "$1+=\$2" + }' +else + # ...otherwise fall back to using expr, which is often a shell builtin. + func_append () + { + $debug_cmd + + eval "$1=\$$1\$2" + } +fi + + +# func_append_quoted VAR VALUE +# ---------------------------- +# Quote VALUE and append to the end of shell variable VAR, separated +# by a space. +if test yes = "$_G_HAVE_PLUSEQ_OP"; then + eval 'func_append_quoted () + { + $debug_cmd + + func_quote_for_eval "$2" + eval "$1+=\\ \$func_quote_for_eval_result" + }' +else + func_append_quoted () + { + $debug_cmd + + func_quote_for_eval "$2" + eval "$1=\$$1\\ \$func_quote_for_eval_result" + } +fi + + +# func_append_uniq VAR VALUE +# -------------------------- +# Append unique VALUE onto the existing contents of VAR, assuming +# entries are delimited by the first character of VALUE. For example: +# +# func_append_uniq options " --another-option option-argument" +# +# will only append to $options if " --another-option option-argument " +# is not already present somewhere in $options already (note spaces at +# each end implied by leading space in second argument). +func_append_uniq () +{ + $debug_cmd + + eval _G_current_value='`$ECHO $'$1'`' + _G_delim=`expr "$2" : '\(.\)'` + + case $_G_delim$_G_current_value$_G_delim in + *"$2$_G_delim"*) ;; + *) func_append "$@" ;; + esac +} + + +# func_arith TERM... +# ------------------ +# Set func_arith_result to the result of evaluating TERMs. + test -z "$_G_HAVE_ARITH_OP" \ + && (eval 'test 2 = $(( 1 + 1 ))') 2>/dev/null \ + && _G_HAVE_ARITH_OP=yes + +if test yes = "$_G_HAVE_ARITH_OP"; then + eval 'func_arith () + { + $debug_cmd + + func_arith_result=$(( $* )) + }' +else + func_arith () + { + $debug_cmd + + func_arith_result=`expr "$@"` + } +fi + + +# func_basename FILE +# ------------------ +# Set func_basename_result to FILE with everything up to and including +# the last / stripped. +if test yes = "$_G_HAVE_XSI_OPS"; then + # If this shell supports suffix pattern removal, then use it to avoid + # forking. Hide the definitions single quotes in case the shell chokes + # on unsupported syntax... + _b='func_basename_result=${1##*/}' + _d='case $1 in + */*) func_dirname_result=${1%/*}$2 ;; + * ) func_dirname_result=$3 ;; + esac' + +else + # ...otherwise fall back to using sed. + _b='func_basename_result=`$ECHO "$1" |$SED "$sed_basename"`' + _d='func_dirname_result=`$ECHO "$1" |$SED "$sed_dirname"` + if test "X$func_dirname_result" = "X$1"; then + func_dirname_result=$3 + else + func_append func_dirname_result "$2" + fi' +fi + +eval 'func_basename () +{ + $debug_cmd + + '"$_b"' +}' + + +# func_dirname FILE APPEND NONDIR_REPLACEMENT +# ------------------------------------------- +# Compute the dirname of FILE. If nonempty, add APPEND to the result, +# otherwise set result to NONDIR_REPLACEMENT. +eval 'func_dirname () +{ + $debug_cmd + + '"$_d"' +}' + + +# func_dirname_and_basename FILE APPEND NONDIR_REPLACEMENT +# -------------------------------------------------------- +# Perform func_basename and func_dirname in a single function +# call: +# dirname: Compute the dirname of FILE. If nonempty, +# add APPEND to the result, otherwise set result +# to NONDIR_REPLACEMENT. +# value returned in "$func_dirname_result" +# basename: Compute filename of FILE. +# value retuned in "$func_basename_result" +# For efficiency, we do not delegate to the functions above but instead +# duplicate the functionality here. +eval 'func_dirname_and_basename () +{ + $debug_cmd + + '"$_b"' + '"$_d"' +}' + + +# func_echo ARG... +# ---------------- +# Echo program name prefixed message. +func_echo () +{ + $debug_cmd + + _G_message=$* + + func_echo_IFS=$IFS + IFS=$nl + for _G_line in $_G_message; do + IFS=$func_echo_IFS + $ECHO "$progname: $_G_line" + done + IFS=$func_echo_IFS +} + + +# func_echo_all ARG... +# -------------------- +# Invoke $ECHO with all args, space-separated. +func_echo_all () +{ + $ECHO "$*" +} + + +# func_echo_infix_1 INFIX ARG... +# ------------------------------ +# Echo program name, followed by INFIX on the first line, with any +# additional lines not showing INFIX. +func_echo_infix_1 () +{ + $debug_cmd + + $require_term_colors + + _G_infix=$1; shift + _G_indent=$_G_infix + _G_prefix="$progname: $_G_infix: " + _G_message=$* + + # Strip color escape sequences before counting printable length + for _G_tc in "$tc_reset" "$tc_bold" "$tc_standout" "$tc_red" "$tc_green" "$tc_blue" "$tc_cyan" + do + test -n "$_G_tc" && { + _G_esc_tc=`$ECHO "$_G_tc" | $SED "$sed_make_literal_regex"` + _G_indent=`$ECHO "$_G_indent" | $SED "s|$_G_esc_tc||g"` + } + done + _G_indent="$progname: "`echo "$_G_indent" | $SED 's|.| |g'`" " ## exclude from sc_prohibit_nested_quotes + + func_echo_infix_1_IFS=$IFS + IFS=$nl + for _G_line in $_G_message; do + IFS=$func_echo_infix_1_IFS + $ECHO "$_G_prefix$tc_bold$_G_line$tc_reset" >&2 + _G_prefix=$_G_indent + done + IFS=$func_echo_infix_1_IFS +} + + +# func_error ARG... +# ----------------- +# Echo program name prefixed message to standard error. +func_error () +{ + $debug_cmd + + $require_term_colors + + func_echo_infix_1 " $tc_standout${tc_red}error$tc_reset" "$*" >&2 +} -# func_grep expression filename + +# func_fatal_error ARG... +# ----------------------- +# Echo program name prefixed message to standard error, and exit. +func_fatal_error () +{ + $debug_cmd + + func_error "$*" + exit $EXIT_FAILURE +} + + +# func_grep EXPRESSION FILENAME +# ----------------------------- # Check whether EXPRESSION matches any line of FILENAME, without output. func_grep () { + $debug_cmd + $GREP "$1" "$2" >/dev/null 2>&1 } -# func_mkdir_p directory-path +# func_len STRING +# --------------- +# Set func_len_result to the length of STRING. STRING may not +# start with a hyphen. + test -z "$_G_HAVE_XSI_OPS" \ + && (eval 'x=a/b/c; + test 5aa/bb/cc = "${#x}${x%%/*}${x%/*}${x#*/}${x##*/}"') 2>/dev/null \ + && _G_HAVE_XSI_OPS=yes + +if test yes = "$_G_HAVE_XSI_OPS"; then + eval 'func_len () + { + $debug_cmd + + func_len_result=${#1} + }' +else + func_len () + { + $debug_cmd + + func_len_result=`expr "$1" : ".*" 2>/dev/null || echo $max_cmd_len` + } +fi + + +# func_mkdir_p DIRECTORY-PATH +# --------------------------- # Make sure the entire path to DIRECTORY-PATH is available. func_mkdir_p () { - my_directory_path="$1" - my_dir_list= + $debug_cmd + + _G_directory_path=$1 + _G_dir_list= - if test -n "$my_directory_path" && test "$opt_dry_run" != ":"; then + if test -n "$_G_directory_path" && test : != "$opt_dry_run"; then - # Protect directory names starting with `-' - case $my_directory_path in - -*) my_directory_path="./$my_directory_path" ;; + # Protect directory names starting with '-' + case $_G_directory_path in + -*) _G_directory_path=./$_G_directory_path ;; esac # While some portion of DIR does not yet exist... - while test ! -d "$my_directory_path"; do + while test ! -d "$_G_directory_path"; do # ...make a list in topmost first order. Use a colon delimited # list incase some portion of path contains whitespace. - my_dir_list="$my_directory_path:$my_dir_list" + _G_dir_list=$_G_directory_path:$_G_dir_list # If the last portion added has no slash in it, the list is done - case $my_directory_path in */*) ;; *) break ;; esac + case $_G_directory_path in */*) ;; *) break ;; esac # ...otherwise throw away the child directory and loop - my_directory_path=`$ECHO "$my_directory_path" | $SED -e "$dirname"` + _G_directory_path=`$ECHO "$_G_directory_path" | $SED -e "$sed_dirname"` done - my_dir_list=`$ECHO "$my_dir_list" | $SED 's,:*$,,'` + _G_dir_list=`$ECHO "$_G_dir_list" | $SED 's|:*$||'` - save_mkdir_p_IFS="$IFS"; IFS=':' - for my_dir in $my_dir_list; do - IFS="$save_mkdir_p_IFS" - # mkdir can fail with a `File exist' error if two processes + func_mkdir_p_IFS=$IFS; IFS=: + for _G_dir in $_G_dir_list; do + IFS=$func_mkdir_p_IFS + # mkdir can fail with a 'File exist' error if two processes # try to create one of the directories concurrently. Don't # stop in that case! - $MKDIR "$my_dir" 2>/dev/null || : + $MKDIR "$_G_dir" 2>/dev/null || : done - IFS="$save_mkdir_p_IFS" + IFS=$func_mkdir_p_IFS # Bail out if we (or some other process) failed to create a directory. - test -d "$my_directory_path" || \ - func_fatal_error "Failed to create \`$1'" + test -d "$_G_directory_path" || \ + func_fatal_error "Failed to create '$1'" fi } -# func_mktempdir [string] +# func_mktempdir [BASENAME] +# ------------------------- # Make a temporary directory that won't clash with other running # libtool processes, and avoids race conditions if possible. If -# given, STRING is the basename for that directory. +# given, BASENAME is the basename for that directory. func_mktempdir () { - my_template="${TMPDIR-/tmp}/${1-$progname}" + $debug_cmd - if test "$opt_dry_run" = ":"; then + _G_template=${TMPDIR-/tmp}/${1-$progname} + + if test : = "$opt_dry_run"; then # Return a directory name, but don't create it in dry-run mode - my_tmpdir="${my_template}-$$" + _G_tmpdir=$_G_template-$$ else # If mktemp works, use that first and foremost - my_tmpdir=`mktemp -d "${my_template}-XXXXXXXX" 2>/dev/null` + _G_tmpdir=`mktemp -d "$_G_template-XXXXXXXX" 2>/dev/null` - if test ! -d "$my_tmpdir"; then + if test ! -d "$_G_tmpdir"; then # Failing that, at least try and use $RANDOM to avoid a race - my_tmpdir="${my_template}-${RANDOM-0}$$" + _G_tmpdir=$_G_template-${RANDOM-0}$$ - save_mktempdir_umask=`umask` + func_mktempdir_umask=`umask` umask 0077 - $MKDIR "$my_tmpdir" - umask $save_mktempdir_umask + $MKDIR "$_G_tmpdir" + umask $func_mktempdir_umask fi # If we're not in dry-run mode, bomb out on failure - test -d "$my_tmpdir" || \ - func_fatal_error "cannot create temporary directory \`$my_tmpdir'" + test -d "$_G_tmpdir" || \ + func_fatal_error "cannot create temporary directory '$_G_tmpdir'" fi - $ECHO "$my_tmpdir" + $ECHO "$_G_tmpdir" } -# func_quote_for_eval arg -# Aesthetically quote ARG to be evaled later. -# This function returns two values: FUNC_QUOTE_FOR_EVAL_RESULT -# is double-quoted, suitable for a subsequent eval, whereas -# FUNC_QUOTE_FOR_EVAL_UNQUOTED_RESULT has merely all characters -# which are still active within double quotes backslashified. -func_quote_for_eval () +# func_normal_abspath PATH +# ------------------------ +# Remove doubled-up and trailing slashes, "." path components, +# and cancel out any ".." path components in PATH after making +# it an absolute path. +func_normal_abspath () { - case $1 in - *[\\\`\"\$]*) - func_quote_for_eval_unquoted_result=`$ECHO "$1" | $SED "$sed_quote_subst"` ;; - *) - func_quote_for_eval_unquoted_result="$1" ;; - esac + $debug_cmd - case $func_quote_for_eval_unquoted_result in - # Double-quote args containing shell metacharacters to delay - # word splitting, command substitution and and variable - # expansion for a subsequent eval. - # Many Bourne shells cannot handle close brackets correctly - # in scan sets, so we specify it separately. - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - func_quote_for_eval_result="\"$func_quote_for_eval_unquoted_result\"" + # These SED scripts presuppose an absolute path with a trailing slash. + _G_pathcar='s|^/\([^/]*\).*$|\1|' + _G_pathcdr='s|^/[^/]*||' + _G_removedotparts=':dotsl + s|/\./|/|g + t dotsl + s|/\.$|/|' + _G_collapseslashes='s|/\{1,\}|/|g' + _G_finalslash='s|/*$|/|' + + # Start from root dir and reassemble the path. + func_normal_abspath_result= + func_normal_abspath_tpath=$1 + func_normal_abspath_altnamespace= + case $func_normal_abspath_tpath in + "") + # Empty path, that just means $cwd. + func_stripname '' '/' "`pwd`" + func_normal_abspath_result=$func_stripname_result + return + ;; + # The next three entries are used to spot a run of precisely + # two leading slashes without using negated character classes; + # we take advantage of case's first-match behaviour. + ///*) + # Unusual form of absolute path, do nothing. + ;; + //*) + # Not necessarily an ordinary path; POSIX reserves leading '//' + # and for example Cygwin uses it to access remote file shares + # over CIFS/SMB, so we conserve a leading double slash if found. + func_normal_abspath_altnamespace=/ + ;; + /*) + # Absolute path, do nothing. ;; *) - func_quote_for_eval_result="$func_quote_for_eval_unquoted_result" + # Relative path, prepend $cwd. + func_normal_abspath_tpath=`pwd`/$func_normal_abspath_tpath + ;; esac + + # Cancel out all the simple stuff to save iterations. We also want + # the path to end with a slash for ease of parsing, so make sure + # there is one (and only one) here. + func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ + -e "$_G_removedotparts" -e "$_G_collapseslashes" -e "$_G_finalslash"` + while :; do + # Processed it all yet? + if test / = "$func_normal_abspath_tpath"; then + # If we ascended to the root using ".." the result may be empty now. + if test -z "$func_normal_abspath_result"; then + func_normal_abspath_result=/ + fi + break + fi + func_normal_abspath_tcomponent=`$ECHO "$func_normal_abspath_tpath" | $SED \ + -e "$_G_pathcar"` + func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ + -e "$_G_pathcdr"` + # Figure out what to do with it + case $func_normal_abspath_tcomponent in + "") + # Trailing empty path component, ignore it. + ;; + ..) + # Parent dir; strip last assembled component from result. + func_dirname "$func_normal_abspath_result" + func_normal_abspath_result=$func_dirname_result + ;; + *) + # Actual path component, append it. + func_append func_normal_abspath_result "/$func_normal_abspath_tcomponent" + ;; + esac + done + # Restore leading double-slash if one was found on entry. + func_normal_abspath_result=$func_normal_abspath_altnamespace$func_normal_abspath_result +} + + +# func_notquiet ARG... +# -------------------- +# Echo program name prefixed message only when not in quiet mode. +func_notquiet () +{ + $debug_cmd + + $opt_quiet || func_echo ${1+"$@"} + + # A bug in bash halts the script if the last line of a function + # fails when set -e is in force, so we need another command to + # work around that: + : +} + + +# func_relative_path SRCDIR DSTDIR +# -------------------------------- +# Set func_relative_path_result to the relative path from SRCDIR to DSTDIR. +func_relative_path () +{ + $debug_cmd + + func_relative_path_result= + func_normal_abspath "$1" + func_relative_path_tlibdir=$func_normal_abspath_result + func_normal_abspath "$2" + func_relative_path_tbindir=$func_normal_abspath_result + + # Ascend the tree starting from libdir + while :; do + # check if we have found a prefix of bindir + case $func_relative_path_tbindir in + $func_relative_path_tlibdir) + # found an exact match + func_relative_path_tcancelled= + break + ;; + $func_relative_path_tlibdir*) + # found a matching prefix + func_stripname "$func_relative_path_tlibdir" '' "$func_relative_path_tbindir" + func_relative_path_tcancelled=$func_stripname_result + if test -z "$func_relative_path_result"; then + func_relative_path_result=. + fi + break + ;; + *) + func_dirname $func_relative_path_tlibdir + func_relative_path_tlibdir=$func_dirname_result + if test -z "$func_relative_path_tlibdir"; then + # Have to descend all the way to the root! + func_relative_path_result=../$func_relative_path_result + func_relative_path_tcancelled=$func_relative_path_tbindir + break + fi + func_relative_path_result=../$func_relative_path_result + ;; + esac + done + + # Now calculate path; take care to avoid doubling-up slashes. + func_stripname '' '/' "$func_relative_path_result" + func_relative_path_result=$func_stripname_result + func_stripname '/' '/' "$func_relative_path_tcancelled" + if test -n "$func_stripname_result"; then + func_append func_relative_path_result "/$func_stripname_result" + fi + + # Normalisation. If bindir is libdir, return '.' else relative path. + if test -n "$func_relative_path_result"; then + func_stripname './' '' "$func_relative_path_result" + func_relative_path_result=$func_stripname_result + fi + + test -n "$func_relative_path_result" || func_relative_path_result=. + + : +} + + +# func_quote_for_eval ARG... +# -------------------------- +# Aesthetically quote ARGs to be evaled later. +# This function returns two values: +# i) func_quote_for_eval_result +# double-quoted, suitable for a subsequent eval +# ii) func_quote_for_eval_unquoted_result +# has all characters that are still active within double +# quotes backslashified. +func_quote_for_eval () +{ + $debug_cmd + + func_quote_for_eval_unquoted_result= + func_quote_for_eval_result= + while test 0 -lt $#; do + case $1 in + *[\\\`\"\$]*) + _G_unquoted_arg=`printf '%s\n' "$1" |$SED "$sed_quote_subst"` ;; + *) + _G_unquoted_arg=$1 ;; + esac + if test -n "$func_quote_for_eval_unquoted_result"; then + func_append func_quote_for_eval_unquoted_result " $_G_unquoted_arg" + else + func_append func_quote_for_eval_unquoted_result "$_G_unquoted_arg" + fi + + case $_G_unquoted_arg in + # Double-quote args containing shell metacharacters to delay + # word splitting, command substitution and variable expansion + # for a subsequent eval. + # Many Bourne shells cannot handle close brackets correctly + # in scan sets, so we specify it separately. + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + _G_quoted_arg=\"$_G_unquoted_arg\" + ;; + *) + _G_quoted_arg=$_G_unquoted_arg + ;; + esac + + if test -n "$func_quote_for_eval_result"; then + func_append func_quote_for_eval_result " $_G_quoted_arg" + else + func_append func_quote_for_eval_result "$_G_quoted_arg" + fi + shift + done } -# func_quote_for_expand arg +# func_quote_for_expand ARG +# ------------------------- # Aesthetically quote ARG to be evaled later; same as above, # but do not quote variable references. func_quote_for_expand () { + $debug_cmd + case $1 in *[\\\`\"]*) - my_arg=`$ECHO "$1" | $SED \ - -e "$double_quote_subst" -e "$sed_double_backslash"` ;; + _G_arg=`$ECHO "$1" | $SED \ + -e "$sed_double_quote_subst" -e "$sed_double_backslash"` ;; *) - my_arg="$1" ;; + _G_arg=$1 ;; esac - case $my_arg in + case $_G_arg in # Double-quote args containing shell metacharacters to delay # word splitting and command substitution for a subsequent eval. # Many Bourne shells cannot handle close brackets correctly # in scan sets, so we specify it separately. *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - my_arg="\"$my_arg\"" + _G_arg=\"$_G_arg\" ;; esac - func_quote_for_expand_result="$my_arg" + func_quote_for_expand_result=$_G_arg } -# func_show_eval cmd [fail_exp] -# Unless opt_silent is true, then output CMD. Then, if opt_dryrun is +# func_stripname PREFIX SUFFIX NAME +# --------------------------------- +# strip PREFIX and SUFFIX from NAME, and store in func_stripname_result. +# PREFIX and SUFFIX must not contain globbing or regex special +# characters, hashes, percent signs, but SUFFIX may contain a leading +# dot (in which case that matches only a dot). +if test yes = "$_G_HAVE_XSI_OPS"; then + eval 'func_stripname () + { + $debug_cmd + + # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are + # positional parameters, so assign one to ordinary variable first. + func_stripname_result=$3 + func_stripname_result=${func_stripname_result#"$1"} + func_stripname_result=${func_stripname_result%"$2"} + }' +else + func_stripname () + { + $debug_cmd + + case $2 in + .*) func_stripname_result=`$ECHO "$3" | $SED -e "s%^$1%%" -e "s%\\\\$2\$%%"`;; + *) func_stripname_result=`$ECHO "$3" | $SED -e "s%^$1%%" -e "s%$2\$%%"`;; + esac + } +fi + + +# func_show_eval CMD [FAIL_EXP] +# ----------------------------- +# Unless opt_quiet is true, then output CMD. Then, if opt_dryrun is # not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP # is given, then evaluate it. func_show_eval () { - my_cmd="$1" - my_fail_exp="${2-:}" + $debug_cmd + + _G_cmd=$1 + _G_fail_exp=${2-':'} + + func_quote_for_expand "$_G_cmd" + eval "func_notquiet $func_quote_for_expand_result" + + $opt_dry_run || { + eval "$_G_cmd" + _G_status=$? + if test 0 -ne "$_G_status"; then + eval "(exit $_G_status); $_G_fail_exp" + fi + } +} + + +# func_show_eval_locale CMD [FAIL_EXP] +# ------------------------------------ +# Unless opt_quiet is true, then output CMD. Then, if opt_dryrun is +# not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP +# is given, then evaluate it. Use the saved locale for evaluation. +func_show_eval_locale () +{ + $debug_cmd - ${opt_silent-false} || { - func_quote_for_expand "$my_cmd" + _G_cmd=$1 + _G_fail_exp=${2-':'} + + $opt_quiet || { + func_quote_for_expand "$_G_cmd" eval "func_echo $func_quote_for_expand_result" } - if ${opt_dry_run-false}; then :; else - eval "$my_cmd" - my_status=$? - if test "$my_status" -eq 0; then :; else - eval "(exit $my_status); $my_fail_exp" - fi - fi + $opt_dry_run || { + eval "$_G_user_locale + $_G_cmd" + _G_status=$? + eval "$_G_safe_locale" + if test 0 -ne "$_G_status"; then + eval "(exit $_G_status); $_G_fail_exp" + fi + } +} + + +# func_tr_sh +# ---------- +# Turn $1 into a string suitable for a shell variable name. +# Result is stored in $func_tr_sh_result. All characters +# not in the set a-zA-Z0-9_ are replaced with '_'. Further, +# if $1 begins with a digit, a '_' is prepended as well. +func_tr_sh () +{ + $debug_cmd + + case $1 in + [0-9]* | *[!a-zA-Z0-9_]*) + func_tr_sh_result=`$ECHO "$1" | $SED -e 's/^\([0-9]\)/_\1/' -e 's/[^a-zA-Z0-9_]/_/g'` + ;; + * ) + func_tr_sh_result=$1 + ;; + esac +} + + +# func_verbose ARG... +# ------------------- +# Echo program name prefixed message in verbose mode only. +func_verbose () +{ + $debug_cmd + + $opt_verbose && func_echo "$*" + + : +} + + +# func_warn_and_continue ARG... +# ----------------------------- +# Echo program name prefixed warning message to standard error. +func_warn_and_continue () +{ + $debug_cmd + + $require_term_colors + + func_echo_infix_1 "${tc_red}warning$tc_reset" "$*" >&2 +} + + +# func_warning CATEGORY ARG... +# ---------------------------- +# Echo program name prefixed warning message to standard error. Warning +# messages can be filtered according to CATEGORY, where this function +# elides messages where CATEGORY is not listed in the global variable +# 'opt_warning_types'. +func_warning () +{ + $debug_cmd + + # CATEGORY must be in the warning_categories list! + case " $warning_categories " in + *" $1 "*) ;; + *) func_internal_error "invalid warning category '$1'" ;; + esac + + _G_category=$1 + shift + + case " $opt_warning_types " in + *" $_G_category "*) $warning_func ${1+"$@"} ;; + esac +} + + +# func_sort_ver VER1 VER2 +# ----------------------- +# 'sort -V' is not generally available. +# Note this deviates from the version comparison in automake +# in that it treats 1.5 < 1.5.0, and treats 1.4.4a < 1.4-p3a +# but this should suffice as we won't be specifying old +# version formats or redundant trailing .0 in bootstrap.conf. +# If we did want full compatibility then we should probably +# use m4_version_compare from autoconf. +func_sort_ver () +{ + $debug_cmd + + printf '%s\n%s\n' "$1" "$2" \ + | sort -t. -k 1,1n -k 2,2n -k 3,3n -k 4,4n -k 5,5n -k 6,6n -k 7,7n -k 8,8n -k 9,9n +} + +# func_lt_ver PREV CURR +# --------------------- +# Return true if PREV and CURR are in the correct order according to +# func_sort_ver, otherwise false. Use it like this: +# +# func_lt_ver "$prev_ver" "$proposed_ver" || func_fatal_error "..." +func_lt_ver () +{ + $debug_cmd + + test "x$1" = x`func_sort_ver "$1" "$2" | $SED 1q` +} + + +# Local variables: +# mode: shell-script +# sh-indentation: 2 +# eval: (add-hook 'before-save-hook 'time-stamp) +# time-stamp-pattern: "10/scriptversion=%:y-%02m-%02d.%02H; # UTC" +# time-stamp-time-zone: "UTC" +# End: +#! /bin/sh + +# Set a version string for this script. +scriptversion=2014-01-07.03; # UTC + +# A portable, pluggable option parser for Bourne shell. +# Written by Gary V. Vaughan, 2010 + +# Copyright (C) 2010-2015 Free Software Foundation, Inc. +# This is free software; see the source for copying conditions. There is NO +# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# Please report bugs or propose patches to gary@gnu.org. + + +## ------ ## +## Usage. ## +## ------ ## + +# This file is a library for parsing options in your shell scripts along +# with assorted other useful supporting features that you can make use +# of too. +# +# For the simplest scripts you might need only: +# +# #!/bin/sh +# . relative/path/to/funclib.sh +# . relative/path/to/options-parser +# scriptversion=1.0 +# func_options ${1+"$@"} +# eval set dummy "$func_options_result"; shift +# ...rest of your script... +# +# In order for the '--version' option to work, you will need to have a +# suitably formatted comment like the one at the top of this file +# starting with '# Written by ' and ending with '# warranty; '. +# +# For '-h' and '--help' to work, you will also need a one line +# description of your script's purpose in a comment directly above the +# '# Written by ' line, like the one at the top of this file. +# +# The default options also support '--debug', which will turn on shell +# execution tracing (see the comment above debug_cmd below for another +# use), and '--verbose' and the func_verbose function to allow your script +# to display verbose messages only when your user has specified +# '--verbose'. +# +# After sourcing this file, you can plug processing for additional +# options by amending the variables from the 'Configuration' section +# below, and following the instructions in the 'Option parsing' +# section further down. + +## -------------- ## +## Configuration. ## +## -------------- ## + +# You should override these variables in your script after sourcing this +# file so that they reflect the customisations you have added to the +# option parser. + +# The usage line for option parsing errors and the start of '-h' and +# '--help' output messages. You can embed shell variables for delayed +# expansion at the time the message is displayed, but you will need to +# quote other shell meta-characters carefully to prevent them being +# expanded when the contents are evaled. +usage='$progpath [OPTION]...' + +# Short help message in response to '-h' and '--help'. Add to this or +# override it after sourcing this library to reflect the full set of +# options your script accepts. +usage_message="\ + --debug enable verbose shell tracing + -W, --warnings=CATEGORY + report the warnings falling in CATEGORY [all] + -v, --verbose verbosely report processing + --version print version information and exit + -h, --help print short or long help message and exit +" + +# Additional text appended to 'usage_message' in response to '--help'. +long_help_message=" +Warning categories include: + 'all' show all warnings + 'none' turn off all the warnings + 'error' warnings are treated as fatal errors" + +# Help message printed before fatal option parsing errors. +fatal_help="Try '\$progname --help' for more information." + + + +## ------------------------- ## +## Hook function management. ## +## ------------------------- ## + +# This section contains functions for adding, removing, and running hooks +# to the main code. A hook is just a named list of of function, that can +# be run in order later on. + +# func_hookable FUNC_NAME +# ----------------------- +# Declare that FUNC_NAME will run hooks added with +# 'func_add_hook FUNC_NAME ...'. +func_hookable () +{ + $debug_cmd + + func_append hookable_fns " $1" +} + + +# func_add_hook FUNC_NAME HOOK_FUNC +# --------------------------------- +# Request that FUNC_NAME call HOOK_FUNC before it returns. FUNC_NAME must +# first have been declared "hookable" by a call to 'func_hookable'. +func_add_hook () +{ + $debug_cmd + + case " $hookable_fns " in + *" $1 "*) ;; + *) func_fatal_error "'$1' does not accept hook functions." ;; + esac + + eval func_append ${1}_hooks '" $2"' +} + + +# func_remove_hook FUNC_NAME HOOK_FUNC +# ------------------------------------ +# Remove HOOK_FUNC from the list of functions called by FUNC_NAME. +func_remove_hook () +{ + $debug_cmd + + eval ${1}_hooks='`$ECHO "\$'$1'_hooks" |$SED "s| '$2'||"`' +} + + +# func_run_hooks FUNC_NAME [ARG]... +# --------------------------------- +# Run all hook functions registered to FUNC_NAME. +# It is assumed that the list of hook functions contains nothing more +# than a whitespace-delimited list of legal shell function names, and +# no effort is wasted trying to catch shell meta-characters or preserve +# whitespace. +func_run_hooks () +{ + $debug_cmd + + case " $hookable_fns " in + *" $1 "*) ;; + *) func_fatal_error "'$1' does not support hook funcions.n" ;; + esac + + eval _G_hook_fns=\$$1_hooks; shift + + for _G_hook in $_G_hook_fns; do + eval $_G_hook '"$@"' + + # store returned options list back into positional + # parameters for next 'cmd' execution. + eval _G_hook_result=\$${_G_hook}_result + eval set dummy "$_G_hook_result"; shift + done + + func_quote_for_eval ${1+"$@"} + func_run_hooks_result=$func_quote_for_eval_result +} + + + +## --------------- ## +## Option parsing. ## +## --------------- ## + +# In order to add your own option parsing hooks, you must accept the +# full positional parameter list in your hook function, remove any +# options that you action, and then pass back the remaining unprocessed +# options in '_result', escaped suitably for +# 'eval'. Like this: +# +# my_options_prep () +# { +# $debug_cmd +# +# # Extend the existing usage message. +# usage_message=$usage_message' +# -s, --silent don'\''t print informational messages +# ' +# +# func_quote_for_eval ${1+"$@"} +# my_options_prep_result=$func_quote_for_eval_result +# } +# func_add_hook func_options_prep my_options_prep +# +# +# my_silent_option () +# { +# $debug_cmd +# +# # Note that for efficiency, we parse as many options as we can +# # recognise in a loop before passing the remainder back to the +# # caller on the first unrecognised argument we encounter. +# while test $# -gt 0; do +# opt=$1; shift +# case $opt in +# --silent|-s) opt_silent=: ;; +# # Separate non-argument short options: +# -s*) func_split_short_opt "$_G_opt" +# set dummy "$func_split_short_opt_name" \ +# "-$func_split_short_opt_arg" ${1+"$@"} +# shift +# ;; +# *) set dummy "$_G_opt" "$*"; shift; break ;; +# esac +# done +# +# func_quote_for_eval ${1+"$@"} +# my_silent_option_result=$func_quote_for_eval_result +# } +# func_add_hook func_parse_options my_silent_option +# +# +# my_option_validation () +# { +# $debug_cmd +# +# $opt_silent && $opt_verbose && func_fatal_help "\ +# '--silent' and '--verbose' options are mutually exclusive." +# +# func_quote_for_eval ${1+"$@"} +# my_option_validation_result=$func_quote_for_eval_result +# } +# func_add_hook func_validate_options my_option_validation +# +# You'll alse need to manually amend $usage_message to reflect the extra +# options you parse. It's preferable to append if you can, so that +# multiple option parsing hooks can be added safely. + + +# func_options [ARG]... +# --------------------- +# All the functions called inside func_options are hookable. See the +# individual implementations for details. +func_hookable func_options +func_options () +{ + $debug_cmd + + func_options_prep ${1+"$@"} + eval func_parse_options \ + ${func_options_prep_result+"$func_options_prep_result"} + eval func_validate_options \ + ${func_parse_options_result+"$func_parse_options_result"} + + eval func_run_hooks func_options \ + ${func_validate_options_result+"$func_validate_options_result"} + + # save modified positional parameters for caller + func_options_result=$func_run_hooks_result +} + + +# func_options_prep [ARG]... +# -------------------------- +# All initialisations required before starting the option parse loop. +# Note that when calling hook functions, we pass through the list of +# positional parameters. If a hook function modifies that list, and +# needs to propogate that back to rest of this script, then the complete +# modified list must be put in 'func_run_hooks_result' before +# returning. +func_hookable func_options_prep +func_options_prep () +{ + $debug_cmd + + # Option defaults: + opt_verbose=false + opt_warning_types= + + func_run_hooks func_options_prep ${1+"$@"} + + # save modified positional parameters for caller + func_options_prep_result=$func_run_hooks_result +} + + +# func_parse_options [ARG]... +# --------------------------- +# The main option parsing loop. +func_hookable func_parse_options +func_parse_options () +{ + $debug_cmd + + func_parse_options_result= + + # this just eases exit handling + while test $# -gt 0; do + # Defer to hook functions for initial option parsing, so they + # get priority in the event of reusing an option name. + func_run_hooks func_parse_options ${1+"$@"} + + # Adjust func_parse_options positional parameters to match + eval set dummy "$func_run_hooks_result"; shift + + # Break out of the loop if we already parsed every option. + test $# -gt 0 || break + + _G_opt=$1 + shift + case $_G_opt in + --debug|-x) debug_cmd='set -x' + func_echo "enabling shell trace mode" + $debug_cmd + ;; + + --no-warnings|--no-warning|--no-warn) + set dummy --warnings none ${1+"$@"} + shift + ;; + + --warnings|--warning|-W) + test $# = 0 && func_missing_arg $_G_opt && break + case " $warning_categories $1" in + *" $1 "*) + # trailing space prevents matching last $1 above + func_append_uniq opt_warning_types " $1" + ;; + *all) + opt_warning_types=$warning_categories + ;; + *none) + opt_warning_types=none + warning_func=: + ;; + *error) + opt_warning_types=$warning_categories + warning_func=func_fatal_error + ;; + *) + func_fatal_error \ + "unsupported warning category: '$1'" + ;; + esac + shift + ;; + + --verbose|-v) opt_verbose=: ;; + --version) func_version ;; + -\?|-h) func_usage ;; + --help) func_help ;; + + # Separate optargs to long options (plugins may need this): + --*=*) func_split_equals "$_G_opt" + set dummy "$func_split_equals_lhs" \ + "$func_split_equals_rhs" ${1+"$@"} + shift + ;; + + # Separate optargs to short options: + -W*) + func_split_short_opt "$_G_opt" + set dummy "$func_split_short_opt_name" \ + "$func_split_short_opt_arg" ${1+"$@"} + shift + ;; + + # Separate non-argument short options: + -\?*|-h*|-v*|-x*) + func_split_short_opt "$_G_opt" + set dummy "$func_split_short_opt_name" \ + "-$func_split_short_opt_arg" ${1+"$@"} + shift + ;; + + --) break ;; + -*) func_fatal_help "unrecognised option: '$_G_opt'" ;; + *) set dummy "$_G_opt" ${1+"$@"}; shift; break ;; + esac + done + + # save modified positional parameters for caller + func_quote_for_eval ${1+"$@"} + func_parse_options_result=$func_quote_for_eval_result } -# func_show_eval_locale cmd [fail_exp] -# Unless opt_silent is true, then output CMD. Then, if opt_dryrun is -# not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP -# is given, then evaluate it. Use the saved locale for evaluation. -func_show_eval_locale () +# func_validate_options [ARG]... +# ------------------------------ +# Perform any sanity checks on option settings and/or unconsumed +# arguments. +func_hookable func_validate_options +func_validate_options () { - my_cmd="$1" - my_fail_exp="${2-:}" + $debug_cmd - ${opt_silent-false} || { - func_quote_for_expand "$my_cmd" - eval "func_echo $func_quote_for_expand_result" - } + # Display all warnings if -W was not given. + test -n "$opt_warning_types" || opt_warning_types=" $warning_categories" - if ${opt_dry_run-false}; then :; else - eval "$lt_user_locale - $my_cmd" - my_status=$? - eval "$lt_safe_locale" - if test "$my_status" -eq 0; then :; else - eval "(exit $my_status); $my_fail_exp" - fi - fi -} + func_run_hooks func_validate_options ${1+"$@"} -# func_tr_sh -# Turn $1 into a string suitable for a shell variable name. -# Result is stored in $func_tr_sh_result. All characters -# not in the set a-zA-Z0-9_ are replaced with '_'. Further, -# if $1 begins with a digit, a '_' is prepended as well. -func_tr_sh () -{ - case $1 in - [0-9]* | *[!a-zA-Z0-9_]*) - func_tr_sh_result=`$ECHO "$1" | $SED 's/^\([0-9]\)/_\1/; s/[^a-zA-Z0-9_]/_/g'` - ;; - * ) - func_tr_sh_result=$1 - ;; - esac + # Bail if the options were screwed! + $exit_cmd $EXIT_FAILURE + + # save modified positional parameters for caller + func_validate_options_result=$func_run_hooks_result } -# func_version -# Echo version message to standard output and exit. -func_version () -{ - $opt_debug - $SED -n '/(C)/!b go - :more - /\./!{ - N - s/\n# / / - b more - } - :go - /^# '$PROGRAM' (GNU /,/# warranty; / { - s/^# // - s/^# *$// - s/\((C)\)[ 0-9,-]*\( [1-9][0-9]*\)/\1\2/ - p - }' < "$progpath" - exit $? -} +## ----------------- ## +## Helper functions. ## +## ----------------- ## -# func_usage -# Echo short help message to standard output and exit. -func_usage () +# This section contains the helper functions used by the rest of the +# hookable option parser framework in ascii-betical order. + + +# func_fatal_help ARG... +# ---------------------- +# Echo program name prefixed message to standard error, followed by +# a help hint, and exit. +func_fatal_help () { - $opt_debug + $debug_cmd - $SED -n '/^# Usage:/,/^# *.*--help/ { - s/^# // - s/^# *$// - s/\$progname/'$progname'/ - p - }' < "$progpath" - echo - $ECHO "run \`$progname --help | more' for full usage" - exit $? + eval \$ECHO \""Usage: $usage"\" + eval \$ECHO \""$fatal_help"\" + func_error ${1+"$@"} + exit $EXIT_FAILURE } -# func_help [NOEXIT] -# Echo long help message to standard output and exit, -# unless 'noexit' is passed as argument. + +# func_help +# --------- +# Echo long help message to standard output and exit. func_help () { - $opt_debug + $debug_cmd - $SED -n '/^# Usage:/,/# Report bugs to/ { - :print - s/^# // - s/^# *$// - s*\$progname*'$progname'* - s*\$host*'"$host"'* - s*\$SHELL*'"$SHELL"'* - s*\$LTCC*'"$LTCC"'* - s*\$LTCFLAGS*'"$LTCFLAGS"'* - s*\$LD*'"$LD"'* - s/\$with_gnu_ld/'"$with_gnu_ld"'/ - s/\$automake_version/'"`(${AUTOMAKE-automake} --version) 2>/dev/null |$SED 1q`"'/ - s/\$autoconf_version/'"`(${AUTOCONF-autoconf} --version) 2>/dev/null |$SED 1q`"'/ - p - d - } - /^# .* home page:/b print - /^# General help using/b print - ' < "$progpath" - ret=$? - if test -z "$1"; then - exit $ret - fi + func_usage_message + $ECHO "$long_help_message" + exit 0 } -# func_missing_arg argname + +# func_missing_arg ARGNAME +# ------------------------ # Echo program name prefixed message to standard error and set global # exit_cmd. func_missing_arg () { - $opt_debug + $debug_cmd - func_error "missing argument for $1." + func_error "Missing argument for '$1'." exit_cmd=exit } -# func_split_short_opt shortopt +# func_split_equals STRING +# ------------------------ +# Set func_split_equals_lhs and func_split_equals_rhs shell variables after +# splitting STRING at the '=' sign. +test -z "$_G_HAVE_XSI_OPS" \ + && (eval 'x=a/b/c; + test 5aa/bb/cc = "${#x}${x%%/*}${x%/*}${x#*/}${x##*/}"') 2>/dev/null \ + && _G_HAVE_XSI_OPS=yes + +if test yes = "$_G_HAVE_XSI_OPS" +then + # This is an XSI compatible shell, allowing a faster implementation... + eval 'func_split_equals () + { + $debug_cmd + + func_split_equals_lhs=${1%%=*} + func_split_equals_rhs=${1#*=} + test "x$func_split_equals_lhs" = "x$1" \ + && func_split_equals_rhs= + }' +else + # ...otherwise fall back to using expr, which is often a shell builtin. + func_split_equals () + { + $debug_cmd + + func_split_equals_lhs=`expr "x$1" : 'x\([^=]*\)'` + func_split_equals_rhs= + test "x$func_split_equals_lhs" = "x$1" \ + || func_split_equals_rhs=`expr "x$1" : 'x[^=]*=\(.*\)$'` + } +fi #func_split_equals + + +# func_split_short_opt SHORTOPT +# ----------------------------- # Set func_split_short_opt_name and func_split_short_opt_arg shell # variables after splitting SHORTOPT after the 2nd character. -func_split_short_opt () +if test yes = "$_G_HAVE_XSI_OPS" +then + # This is an XSI compatible shell, allowing a faster implementation... + eval 'func_split_short_opt () + { + $debug_cmd + + func_split_short_opt_arg=${1#??} + func_split_short_opt_name=${1%"$func_split_short_opt_arg"} + }' +else + # ...otherwise fall back to using expr, which is often a shell builtin. + func_split_short_opt () + { + $debug_cmd + + func_split_short_opt_name=`expr "x$1" : 'x-\(.\)'` + func_split_short_opt_arg=`expr "x$1" : 'x-.\(.*\)$'` + } +fi #func_split_short_opt + + +# func_usage +# ---------- +# Echo short help message to standard output and exit. +func_usage () { - my_sed_short_opt='1s/^\(..\).*$/\1/;q' - my_sed_short_rest='1s/^..\(.*\)$/\1/;q' + $debug_cmd - func_split_short_opt_name=`$ECHO "$1" | $SED "$my_sed_short_opt"` - func_split_short_opt_arg=`$ECHO "$1" | $SED "$my_sed_short_rest"` -} # func_split_short_opt may be replaced by extended shell implementation + func_usage_message + $ECHO "Run '$progname --help |${PAGER-more}' for full usage" + exit 0 +} -# func_split_long_opt longopt -# Set func_split_long_opt_name and func_split_long_opt_arg shell -# variables after splitting LONGOPT at the `=' sign. -func_split_long_opt () +# func_usage_message +# ------------------ +# Echo short help message to standard output. +func_usage_message () { - my_sed_long_opt='1s/^\(--[^=]*\)=.*/\1/;q' - my_sed_long_arg='1s/^--[^=]*=//' + $debug_cmd - func_split_long_opt_name=`$ECHO "$1" | $SED "$my_sed_long_opt"` - func_split_long_opt_arg=`$ECHO "$1" | $SED "$my_sed_long_arg"` -} # func_split_long_opt may be replaced by extended shell implementation + eval \$ECHO \""Usage: $usage"\" + echo + $SED -n 's|^# || + /^Written by/{ + x;p;x + } + h + /^Written by/q' < "$progpath" + echo + eval \$ECHO \""$usage_message"\" +} -exit_cmd=: +# func_version +# ------------ +# Echo version message to standard output and exit. +func_version () +{ + $debug_cmd + printf '%s\n' "$progname $scriptversion" + $SED -n ' + /(C)/!b go + :more + /\./!{ + N + s|\n# | | + b more + } + :go + /^# Written by /,/# warranty; / { + s|^# || + s|^# *$|| + s|\((C)\)[ 0-9,-]*[ ,-]\([1-9][0-9]* \)|\1 \2| + p + } + /^# Written by / { + s|^# || + p + } + /^warranty; /q' < "$progpath" + exit $? +} -magic="%%%MAGIC variable%%%" -magic_exe="%%%MAGIC EXE variable%%%" +# Local variables: +# mode: shell-script +# sh-indentation: 2 +# eval: (add-hook 'before-save-hook 'time-stamp) +# time-stamp-pattern: "10/scriptversion=%:y-%02m-%02d.%02H; # UTC" +# time-stamp-time-zone: "UTC" +# End: -# Global variables. -nonopt= -preserve_args= -lo2o="s/\\.lo\$/.${objext}/" -o2lo="s/\\.${objext}\$/.lo/" -extracted_archives= -extracted_serial=0 +# Set a version string. +scriptversion='(GNU libtool) 2.4.6' -# If this variable is set in any of the actions, the command in it -# will be execed at the end. This prevents here-documents from being -# left over by shells. -exec_cmd= -# func_append var value -# Append VALUE to the end of shell variable VAR. -func_append () +# func_echo ARG... +# ---------------- +# Libtool also displays the current mode in messages, so override +# funclib.sh func_echo with this custom definition. +func_echo () { - eval "${1}=\$${1}\${2}" -} # func_append may be replaced by extended shell implementation + $debug_cmd -# func_append_quoted var value -# Quote VALUE and append to the end of shell variable VAR, separated -# by a space. -func_append_quoted () -{ - func_quote_for_eval "${2}" - eval "${1}=\$${1}\\ \$func_quote_for_eval_result" -} # func_append_quoted may be replaced by extended shell implementation + _G_message=$* + + func_echo_IFS=$IFS + IFS=$nl + for _G_line in $_G_message; do + IFS=$func_echo_IFS + $ECHO "$progname${opt_mode+: $opt_mode}: $_G_line" + done + IFS=$func_echo_IFS +} -# func_arith arithmetic-term... -func_arith () +# func_warning ARG... +# ------------------- +# Libtool warnings are not categorized, so override funclib.sh +# func_warning with this simpler definition. +func_warning () { - func_arith_result=`expr "${@}"` -} # func_arith may be replaced by extended shell implementation + $debug_cmd + $warning_func ${1+"$@"} +} -# func_len string -# STRING may not start with a hyphen. -func_len () -{ - func_len_result=`expr "${1}" : ".*" 2>/dev/null || echo $max_cmd_len` -} # func_len may be replaced by extended shell implementation +## ---------------- ## +## Options parsing. ## +## ---------------- ## + +# Hook in the functions to make sure our own options are parsed during +# the option parsing loop. + +usage='$progpath [OPTION]... [MODE-ARG]...' + +# Short help message in response to '-h'. +usage_message="Options: + --config show all configuration variables + --debug enable verbose shell tracing + -n, --dry-run display commands without modifying any files + --features display basic configuration information and exit + --mode=MODE use operation mode MODE + --no-warnings equivalent to '-Wnone' + --preserve-dup-deps don't remove duplicate dependency libraries + --quiet, --silent don't print informational messages + --tag=TAG use configuration variables from tag TAG + -v, --verbose print more informational messages than default + --version print version information + -W, --warnings=CATEGORY report the warnings falling in CATEGORY [all] + -h, --help, --help-all print short, long, or detailed help message +" -# func_lo2o object -func_lo2o () +# Additional text appended to 'usage_message' in response to '--help'. +func_help () { - func_lo2o_result=`$ECHO "${1}" | $SED "$lo2o"` -} # func_lo2o may be replaced by extended shell implementation + $debug_cmd + func_usage_message + $ECHO "$long_help_message -# func_xform libobj-or-source -func_xform () -{ - func_xform_result=`$ECHO "${1}" | $SED 's/\.[^.]*$/.lo/'` -} # func_xform may be replaced by extended shell implementation +MODE must be one of the following: + + clean remove files from the build directory + compile compile a source file into a libtool object + execute automatically set library path, then run a program + finish complete the installation of libtool libraries + install install libraries or executables + link create a library or an executable + uninstall remove libraries from an installed directory + +MODE-ARGS vary depending on the MODE. When passed as first option, +'--mode=MODE' may be abbreviated as 'MODE' or a unique abbreviation of that. +Try '$progname --help --mode=MODE' for a more detailed description of MODE. + +When reporting a bug, please describe a test case to reproduce it and +include the following information: + + host-triplet: $host + shell: $SHELL + compiler: $LTCC + compiler flags: $LTCFLAGS + linker: $LD (gnu? $with_gnu_ld) + version: $progname (GNU libtool) 2.4.6 + automake: `($AUTOMAKE --version) 2>/dev/null |$SED 1q` + autoconf: `($AUTOCONF --version) 2>/dev/null |$SED 1q` + +Report bugs to . +GNU libtool home page: . +General help using GNU software: ." + exit 0 +} + + +# func_lo2o OBJECT-NAME +# --------------------- +# Transform OBJECT-NAME from a '.lo' suffix to the platform specific +# object suffix. + +lo2o=s/\\.lo\$/.$objext/ +o2lo=s/\\.$objext\$/.lo/ + +if test yes = "$_G_HAVE_XSI_OPS"; then + eval 'func_lo2o () + { + case $1 in + *.lo) func_lo2o_result=${1%.lo}.$objext ;; + * ) func_lo2o_result=$1 ;; + esac + }' + + # func_xform LIBOBJ-OR-SOURCE + # --------------------------- + # Transform LIBOBJ-OR-SOURCE from a '.o' or '.c' (or otherwise) + # suffix to a '.lo' libtool-object suffix. + eval 'func_xform () + { + func_xform_result=${1%.*}.lo + }' +else + # ...otherwise fall back to using sed. + func_lo2o () + { + func_lo2o_result=`$ECHO "$1" | $SED "$lo2o"` + } + + func_xform () + { + func_xform_result=`$ECHO "$1" | $SED 's|\.[^.]*$|.lo|'` + } +fi -# func_fatal_configuration arg... +# func_fatal_configuration ARG... +# ------------------------------- # Echo program name prefixed message to standard error, followed by # a configuration failure hint, and exit. func_fatal_configuration () { - func_error ${1+"$@"} - func_error "See the $PACKAGE documentation for more information." - func_fatal_error "Fatal configuration error." + func__fatal_error ${1+"$@"} \ + "See the $PACKAGE documentation for more information." \ + "Fatal configuration error." } # func_config +# ----------- # Display the configuration for all the tags in this script. func_config () { @@ -915,17 +2149,19 @@ exit $? } + # func_features +# ------------- # Display the features supported by this script. func_features () { echo "host: $host" - if test "$build_libtool_libs" = yes; then + if test yes = "$build_libtool_libs"; then echo "enable shared libraries" else echo "disable shared libraries" fi - if test "$build_old_libs" = yes; then + if test yes = "$build_old_libs"; then echo "enable static libraries" else echo "disable static libraries" @@ -934,314 +2170,350 @@ exit $? } -# func_enable_tag tagname + +# func_enable_tag TAGNAME +# ----------------------- # Verify that TAGNAME is valid, and either flag an error and exit, or # enable the TAGNAME tag. We also add TAGNAME to the global $taglist # variable here. func_enable_tag () { - # Global variable: - tagname="$1" + # Global variable: + tagname=$1 - re_begincf="^# ### BEGIN LIBTOOL TAG CONFIG: $tagname\$" - re_endcf="^# ### END LIBTOOL TAG CONFIG: $tagname\$" - sed_extractcf="/$re_begincf/,/$re_endcf/p" - - # Validate tagname. - case $tagname in - *[!-_A-Za-z0-9,/]*) - func_fatal_error "invalid tag name: $tagname" - ;; - esac + re_begincf="^# ### BEGIN LIBTOOL TAG CONFIG: $tagname\$" + re_endcf="^# ### END LIBTOOL TAG CONFIG: $tagname\$" + sed_extractcf=/$re_begincf/,/$re_endcf/p + + # Validate tagname. + case $tagname in + *[!-_A-Za-z0-9,/]*) + func_fatal_error "invalid tag name: $tagname" + ;; + esac - # Don't test for the "default" C tag, as we know it's - # there but not specially marked. - case $tagname in - CC) ;; + # Don't test for the "default" C tag, as we know it's + # there but not specially marked. + case $tagname in + CC) ;; *) - if $GREP "$re_begincf" "$progpath" >/dev/null 2>&1; then - taglist="$taglist $tagname" + if $GREP "$re_begincf" "$progpath" >/dev/null 2>&1; then + taglist="$taglist $tagname" - # Evaluate the configuration. Be careful to quote the path - # and the sed script, to avoid splitting on whitespace, but - # also don't use non-portable quotes within backquotes within - # quotes we have to do it in 2 steps: - extractedcf=`$SED -n -e "$sed_extractcf" < "$progpath"` - eval "$extractedcf" - else - func_error "ignoring unknown tag $tagname" - fi - ;; - esac + # Evaluate the configuration. Be careful to quote the path + # and the sed script, to avoid splitting on whitespace, but + # also don't use non-portable quotes within backquotes within + # quotes we have to do it in 2 steps: + extractedcf=`$SED -n -e "$sed_extractcf" < "$progpath"` + eval "$extractedcf" + else + func_error "ignoring unknown tag $tagname" + fi + ;; + esac } + # func_check_version_match +# ------------------------ # Ensure that we are using m4 macros, and libtool script from the same # release of libtool. func_check_version_match () { - if test "$package_revision" != "$macro_revision"; then - if test "$VERSION" != "$macro_version"; then - if test -z "$macro_version"; then - cat >&2 <<_LT_EOF + if test "$package_revision" != "$macro_revision"; then + if test "$VERSION" != "$macro_version"; then + if test -z "$macro_version"; then + cat >&2 <<_LT_EOF $progname: Version mismatch error. This is $PACKAGE $VERSION, but the $progname: definition of this LT_INIT comes from an older release. $progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION $progname: and run autoconf again. _LT_EOF - else - cat >&2 <<_LT_EOF + else + cat >&2 <<_LT_EOF $progname: Version mismatch error. This is $PACKAGE $VERSION, but the $progname: definition of this LT_INIT comes from $PACKAGE $macro_version. $progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION $progname: and run autoconf again. _LT_EOF - fi - else - cat >&2 <<_LT_EOF + fi + else + cat >&2 <<_LT_EOF $progname: Version mismatch error. This is $PACKAGE $VERSION, revision $package_revision, $progname: but the definition of this LT_INIT comes from revision $macro_revision. $progname: You should recreate aclocal.m4 with macros from revision $package_revision $progname: of $PACKAGE $VERSION and run autoconf again. _LT_EOF - fi + fi - exit $EXIT_MISMATCH - fi + exit $EXIT_MISMATCH + fi } -# Shorthand for --mode=foo, only valid as the first argument -case $1 in -clean|clea|cle|cl) - shift; set dummy --mode clean ${1+"$@"}; shift - ;; -compile|compil|compi|comp|com|co|c) - shift; set dummy --mode compile ${1+"$@"}; shift - ;; -execute|execut|execu|exec|exe|ex|e) - shift; set dummy --mode execute ${1+"$@"}; shift - ;; -finish|finis|fini|fin|fi|f) - shift; set dummy --mode finish ${1+"$@"}; shift - ;; -install|instal|insta|inst|ins|in|i) - shift; set dummy --mode install ${1+"$@"}; shift - ;; -link|lin|li|l) - shift; set dummy --mode link ${1+"$@"}; shift - ;; -uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u) - shift; set dummy --mode uninstall ${1+"$@"}; shift - ;; -esac +# libtool_options_prep [ARG]... +# ----------------------------- +# Preparation for options parsed by libtool. +libtool_options_prep () +{ + $debug_mode + # Option defaults: + opt_config=false + opt_dlopen= + opt_dry_run=false + opt_help=false + opt_mode= + opt_preserve_dup_deps=false + opt_quiet=false + nonopt= + preserve_args= -# Option defaults: -opt_debug=: -opt_dry_run=false -opt_config=false -opt_preserve_dup_deps=false -opt_features=false -opt_finish=false -opt_help=false -opt_help_all=false -opt_silent=: -opt_warning=: -opt_verbose=: -opt_silent=false -opt_verbose=false + # Shorthand for --mode=foo, only valid as the first argument + case $1 in + clean|clea|cle|cl) + shift; set dummy --mode clean ${1+"$@"}; shift + ;; + compile|compil|compi|comp|com|co|c) + shift; set dummy --mode compile ${1+"$@"}; shift + ;; + execute|execut|execu|exec|exe|ex|e) + shift; set dummy --mode execute ${1+"$@"}; shift + ;; + finish|finis|fini|fin|fi|f) + shift; set dummy --mode finish ${1+"$@"}; shift + ;; + install|instal|insta|inst|ins|in|i) + shift; set dummy --mode install ${1+"$@"}; shift + ;; + link|lin|li|l) + shift; set dummy --mode link ${1+"$@"}; shift + ;; + uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u) + shift; set dummy --mode uninstall ${1+"$@"}; shift + ;; + esac + # Pass back the list of options. + func_quote_for_eval ${1+"$@"} + libtool_options_prep_result=$func_quote_for_eval_result +} +func_add_hook func_options_prep libtool_options_prep -# Parse options once, thoroughly. This comes as soon as possible in the -# script to make things like `--version' happen as quickly as we can. -{ - # this just eases exit handling - while test $# -gt 0; do - opt="$1" - shift - case $opt in - --debug|-x) opt_debug='set -x' - func_echo "enabling shell trace mode" - $opt_debug - ;; - --dry-run|--dryrun|-n) - opt_dry_run=: - ;; - --config) - opt_config=: -func_config - ;; - --dlopen|-dlopen) - optarg="$1" - opt_dlopen="${opt_dlopen+$opt_dlopen -}$optarg" - shift - ;; - --preserve-dup-deps) - opt_preserve_dup_deps=: - ;; - --features) - opt_features=: -func_features - ;; - --finish) - opt_finish=: -set dummy --mode finish ${1+"$@"}; shift - ;; - --help) - opt_help=: - ;; - --help-all) - opt_help_all=: -opt_help=': help-all' - ;; - --mode) - test $# = 0 && func_missing_arg $opt && break - optarg="$1" - opt_mode="$optarg" -case $optarg in - # Valid mode arguments: - clean|compile|execute|finish|install|link|relink|uninstall) ;; - - # Catch anything else as an error - *) func_error "invalid argument for $opt" - exit_cmd=exit - break - ;; -esac - shift - ;; - --no-silent|--no-quiet) - opt_silent=false -func_append preserve_args " $opt" - ;; - --no-warning|--no-warn) - opt_warning=false -func_append preserve_args " $opt" - ;; - --no-verbose) - opt_verbose=false -func_append preserve_args " $opt" - ;; - --silent|--quiet) - opt_silent=: -func_append preserve_args " $opt" - opt_verbose=false - ;; - --verbose|-v) - opt_verbose=: -func_append preserve_args " $opt" -opt_silent=false - ;; - --tag) - test $# = 0 && func_missing_arg $opt && break - optarg="$1" - opt_tag="$optarg" -func_append preserve_args " $opt $optarg" -func_enable_tag "$optarg" - shift - ;; - - -\?|-h) func_usage ;; - --help) func_help ;; - --version) func_version ;; - - # Separate optargs to long options: - --*=*) - func_split_long_opt "$opt" - set dummy "$func_split_long_opt_name" "$func_split_long_opt_arg" ${1+"$@"} - shift - ;; - - # Separate non-argument short options: - -\?*|-h*|-n*|-v*) - func_split_short_opt "$opt" - set dummy "$func_split_short_opt_name" "-$func_split_short_opt_arg" ${1+"$@"} - shift - ;; - - --) break ;; - -*) func_fatal_help "unrecognized option \`$opt'" ;; - *) set dummy "$opt" ${1+"$@"}; shift; break ;; - esac - done - # Validate options: +# libtool_parse_options [ARG]... +# --------------------------------- +# Provide handling for libtool specific options. +libtool_parse_options () +{ + $debug_cmd - # save first non-option argument - if test "$#" -gt 0; then - nonopt="$opt" - shift - fi + # Perform our own loop to consume as many options as possible in + # each iteration. + while test $# -gt 0; do + _G_opt=$1 + shift + case $_G_opt in + --dry-run|--dryrun|-n) + opt_dry_run=: + ;; + + --config) func_config ;; + + --dlopen|-dlopen) + opt_dlopen="${opt_dlopen+$opt_dlopen +}$1" + shift + ;; + + --preserve-dup-deps) + opt_preserve_dup_deps=: ;; + + --features) func_features ;; + + --finish) set dummy --mode finish ${1+"$@"}; shift ;; + + --help) opt_help=: ;; + + --help-all) opt_help=': help-all' ;; + + --mode) test $# = 0 && func_missing_arg $_G_opt && break + opt_mode=$1 + case $1 in + # Valid mode arguments: + clean|compile|execute|finish|install|link|relink|uninstall) ;; + + # Catch anything else as an error + *) func_error "invalid argument for $_G_opt" + exit_cmd=exit + break + ;; + esac + shift + ;; + + --no-silent|--no-quiet) + opt_quiet=false + func_append preserve_args " $_G_opt" + ;; + + --no-warnings|--no-warning|--no-warn) + opt_warning=false + func_append preserve_args " $_G_opt" + ;; + + --no-verbose) + opt_verbose=false + func_append preserve_args " $_G_opt" + ;; + + --silent|--quiet) + opt_quiet=: + opt_verbose=false + func_append preserve_args " $_G_opt" + ;; + + --tag) test $# = 0 && func_missing_arg $_G_opt && break + opt_tag=$1 + func_append preserve_args " $_G_opt $1" + func_enable_tag "$1" + shift + ;; + + --verbose|-v) opt_quiet=false + opt_verbose=: + func_append preserve_args " $_G_opt" + ;; - # preserve --debug - test "$opt_debug" = : || func_append preserve_args " --debug" + # An option not handled by this hook function: + *) set dummy "$_G_opt" ${1+"$@"}; shift; break ;; + esac + done - case $host in - *cygwin* | *mingw* | *pw32* | *cegcc*) - # don't eliminate duplications in $postdeps and $predeps - opt_duplicate_compiler_generated_deps=: - ;; - *) - opt_duplicate_compiler_generated_deps=$opt_preserve_dup_deps - ;; - esac - $opt_help || { - # Sanity checks first: - func_check_version_match + # save modified positional parameters for caller + func_quote_for_eval ${1+"$@"} + libtool_parse_options_result=$func_quote_for_eval_result +} +func_add_hook func_parse_options libtool_parse_options - if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then - func_fatal_configuration "not configured to build any kind of library" - fi - # Darwin sucks - eval std_shrext=\"$shrext_cmds\" - # Only execute mode is allowed to have -dlopen flags. - if test -n "$opt_dlopen" && test "$opt_mode" != execute; then - func_error "unrecognized option \`-dlopen'" - $ECHO "$help" 1>&2 - exit $EXIT_FAILURE +# libtool_validate_options [ARG]... +# --------------------------------- +# Perform any sanity checks on option settings and/or unconsumed +# arguments. +libtool_validate_options () +{ + # save first non-option argument + if test 0 -lt $#; then + nonopt=$1 + shift fi - # Change the help message to a mode-specific one. - generic_help="$help" - help="Try \`$progname --help --mode=$opt_mode' for more information." - } + # preserve --debug + test : = "$debug_cmd" || func_append preserve_args " --debug" + + case $host in + # Solaris2 added to fix http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16452 + # see also: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59788 + *cygwin* | *mingw* | *pw32* | *cegcc* | *solaris2* | *os2*) + # don't eliminate duplications in $postdeps and $predeps + opt_duplicate_compiler_generated_deps=: + ;; + *) + opt_duplicate_compiler_generated_deps=$opt_preserve_dup_deps + ;; + esac + $opt_help || { + # Sanity checks first: + func_check_version_match + + test yes != "$build_libtool_libs" \ + && test yes != "$build_old_libs" \ + && func_fatal_configuration "not configured to build any kind of library" + + # Darwin sucks + eval std_shrext=\"$shrext_cmds\" + + # Only execute mode is allowed to have -dlopen flags. + if test -n "$opt_dlopen" && test execute != "$opt_mode"; then + func_error "unrecognized option '-dlopen'" + $ECHO "$help" 1>&2 + exit $EXIT_FAILURE + fi + + # Change the help message to a mode-specific one. + generic_help=$help + help="Try '$progname --help --mode=$opt_mode' for more information." + } - # Bail if the options were screwed - $exit_cmd $EXIT_FAILURE + # Pass back the unparsed argument list + func_quote_for_eval ${1+"$@"} + libtool_validate_options_result=$func_quote_for_eval_result } +func_add_hook func_validate_options libtool_validate_options +# Process options as early as possible so that --help and --version +# can return quickly. +func_options ${1+"$@"} +eval set dummy "$func_options_result"; shift + ## ----------- ## ## Main. ## ## ----------- ## +magic='%%%MAGIC variable%%%' +magic_exe='%%%MAGIC EXE variable%%%' + +# Global variables. +extracted_archives= +extracted_serial=0 + +# If this variable is set in any of the actions, the command in it +# will be execed at the end. This prevents here-documents from being +# left over by shells. +exec_cmd= + + +# A function that is used when there is no print builtin or printf. +func_fallback_echo () +{ + eval 'cat <<_LTECHO_EOF +$1 +_LTECHO_EOF' +} + +# func_generated_by_libtool +# True iff stdin has been generated by Libtool. This function is only +# a basic sanity check; it will hardly flush out determined imposters. +func_generated_by_libtool_p () +{ + $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1 +} + # func_lalib_p file -# True iff FILE is a libtool `.la' library or `.lo' object file. +# True iff FILE is a libtool '.la' library or '.lo' object file. # This function is only a basic sanity check; it will hardly flush out # determined imposters. func_lalib_p () { test -f "$1" && - $SED -e 4q "$1" 2>/dev/null \ - | $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1 + $SED -e 4q "$1" 2>/dev/null | func_generated_by_libtool_p } # func_lalib_unsafe_p file -# True iff FILE is a libtool `.la' library or `.lo' object file. +# True iff FILE is a libtool '.la' library or '.lo' object file. # This function implements the same check as func_lalib_p without # resorting to external programs. To this end, it redirects stdin and # closes it afterwards, without saving the original file descriptor. # As a safety measure, use it only where a negative result would be -# fatal anyway. Works if `file' does not exist. +# fatal anyway. Works if 'file' does not exist. func_lalib_unsafe_p () { lalib_p=no @@ -1249,13 +2521,13 @@ for lalib_p_l in 1 2 3 4 do read lalib_p_line - case "$lalib_p_line" in + case $lalib_p_line in \#\ Generated\ by\ *$PACKAGE* ) lalib_p=yes; break;; esac done exec 0<&5 5<&- fi - test "$lalib_p" = yes + test yes = "$lalib_p" } # func_ltwrapper_script_p file @@ -1264,7 +2536,8 @@ # determined imposters. func_ltwrapper_script_p () { - func_lalib_p "$1" + test -f "$1" && + $lt_truncate_bin < "$1" 2>/dev/null | func_generated_by_libtool_p } # func_ltwrapper_executable_p file @@ -1289,7 +2562,7 @@ { func_dirname_and_basename "$1" "" "." func_stripname '' '.exe' "$func_basename_result" - func_ltwrapper_scriptname_result="$func_dirname_result/$objdir/${func_stripname_result}_ltshwrapper" + func_ltwrapper_scriptname_result=$func_dirname_result/$objdir/${func_stripname_result}_ltshwrapper } # func_ltwrapper_p file @@ -1308,11 +2581,13 @@ # FAIL_CMD may read-access the current command in variable CMD! func_execute_cmds () { - $opt_debug + $debug_cmd + save_ifs=$IFS; IFS='~' for cmd in $1; do - IFS=$save_ifs + IFS=$sp$nl eval cmd=\"$cmd\" + IFS=$save_ifs func_show_eval "$cmd" "${2-:}" done IFS=$save_ifs @@ -1324,10 +2599,11 @@ # Note that it is not necessary on cygwin/mingw to append a dot to # FILE even if both FILE and FILE.exe exist: automatic-append-.exe # behavior happens only for exec(3), not for open(2)! Also, sourcing -# `FILE.' does not work on cygwin managed mounts. +# 'FILE.' does not work on cygwin managed mounts. func_source () { - $opt_debug + $debug_cmd + case $1 in */* | *\\*) . "$1" ;; *) . "./$1" ;; @@ -1354,10 +2630,10 @@ # store the result into func_replace_sysroot_result. func_replace_sysroot () { - case "$lt_sysroot:$1" in + case $lt_sysroot:$1 in ?*:"$lt_sysroot"*) func_stripname "$lt_sysroot" '' "$1" - func_replace_sysroot_result="=$func_stripname_result" + func_replace_sysroot_result='='$func_stripname_result ;; *) # Including no sysroot. @@ -1374,21 +2650,7 @@ # arg is usually of the form 'gcc ...' func_infer_tag () { - $opt_debug - - # FreeBSD-specific: where we install compilers with non-standard names - tag_compilers_CC="*cc cc* *gcc gcc* clang*" - tag_compilers_CXX="*c++ c++* *g++ g++* clang++*" - base_compiler=`set -- "$@"; echo $1` - - # If $tagname isn't set, then try to infer if the default "CC" tag applies - if test -z "$tagname"; then - for zp in $tag_compilers_CC; do - case $base_compiler in - $zp) tagname="CC"; break;; - esac - done - fi + $debug_cmd if test -n "$available_tags" && test -z "$tagname"; then CC_quoted= @@ -1408,7 +2670,7 @@ for z in $available_tags; do if $GREP "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /dev/null; then # Evaluate the configuration. - eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`" + eval "`$SED -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`" CC_quoted= for arg in $CC; do # Double-quote args containing other shell metacharacters. @@ -1426,29 +2688,14 @@ break ;; esac - - # FreeBSD-specific: try compilers based on inferred tag - if test -z "$tagname"; then - eval "tag_compilers=\$tag_compilers_${z}" - if test -n "$tag_compilers"; then - for zp in $tag_compilers; do - case $base_compiler in - $zp) tagname=$z; break;; - esac - done - if test -n "$tagname"; then - break - fi - fi - fi - fi + fi done # If $tagname still isn't set, then no tagged configuration # was found and let the user know that the "--tag" command # line option must be used. if test -z "$tagname"; then func_echo "unable to infer tagged configuration" - func_fatal_error "specify a tag with \`--tag'" + func_fatal_error "specify a tag with '--tag'" # else # func_verbose "using $tagname tagged configuration" fi @@ -1464,15 +2711,15 @@ # but don't create it if we're doing a dry run. func_write_libtool_object () { - write_libobj=${1} - if test "$build_libtool_libs" = yes; then - write_lobj=\'${2}\' + write_libobj=$1 + if test yes = "$build_libtool_libs"; then + write_lobj=\'$2\' else write_lobj=none fi - if test "$build_old_libs" = yes; then - write_oldobj=\'${3}\' + if test yes = "$build_old_libs"; then + write_oldobj=\'$3\' else write_oldobj=none fi @@ -1480,7 +2727,7 @@ $opt_dry_run || { cat >${write_libobj}T </dev/null` - if test "$?" -eq 0 && test -n "${func_convert_core_file_wine_to_w32_tmp}"; then + if test "$?" -eq 0 && test -n "$func_convert_core_file_wine_to_w32_tmp"; then func_convert_core_file_wine_to_w32_result=`$ECHO "$func_convert_core_file_wine_to_w32_tmp" | - $SED -e "$lt_sed_naive_backslashify"` + $SED -e "$sed_naive_backslashify"` else func_convert_core_file_wine_to_w32_result= fi @@ -1544,18 +2792,19 @@ # are convertible, then the result may be empty. func_convert_core_path_wine_to_w32 () { - $opt_debug + $debug_cmd + # unfortunately, winepath doesn't convert paths, only file names - func_convert_core_path_wine_to_w32_result="" + func_convert_core_path_wine_to_w32_result= if test -n "$1"; then oldIFS=$IFS IFS=: for func_convert_core_path_wine_to_w32_f in $1; do IFS=$oldIFS func_convert_core_file_wine_to_w32 "$func_convert_core_path_wine_to_w32_f" - if test -n "$func_convert_core_file_wine_to_w32_result" ; then + if test -n "$func_convert_core_file_wine_to_w32_result"; then if test -z "$func_convert_core_path_wine_to_w32_result"; then - func_convert_core_path_wine_to_w32_result="$func_convert_core_file_wine_to_w32_result" + func_convert_core_path_wine_to_w32_result=$func_convert_core_file_wine_to_w32_result else func_append func_convert_core_path_wine_to_w32_result ";$func_convert_core_file_wine_to_w32_result" fi @@ -1584,7 +2833,8 @@ # environment variable; do not put it in $PATH. func_cygpath () { - $opt_debug + $debug_cmd + if test -n "$LT_CYGPATH" && test -f "$LT_CYGPATH"; then func_cygpath_result=`$LT_CYGPATH "$@" 2>/dev/null` if test "$?" -ne 0; then @@ -1593,7 +2843,7 @@ fi else func_cygpath_result= - func_error "LT_CYGPATH is empty or specifies non-existent file: \`$LT_CYGPATH'" + func_error "LT_CYGPATH is empty or specifies non-existent file: '$LT_CYGPATH'" fi } #end: func_cygpath @@ -1604,10 +2854,11 @@ # result in func_convert_core_msys_to_w32_result. func_convert_core_msys_to_w32 () { - $opt_debug + $debug_cmd + # awkward: cmd appends spaces to result func_convert_core_msys_to_w32_result=`( cmd //c echo "$1" ) 2>/dev/null | - $SED -e 's/[ ]*$//' -e "$lt_sed_naive_backslashify"` + $SED -e 's/[ ]*$//' -e "$sed_naive_backslashify"` } #end: func_convert_core_msys_to_w32 @@ -1618,13 +2869,14 @@ # func_to_host_file_result to ARG1). func_convert_file_check () { - $opt_debug - if test -z "$2" && test -n "$1" ; then + $debug_cmd + + if test -z "$2" && test -n "$1"; then func_error "Could not determine host file name corresponding to" - func_error " \`$1'" + func_error " '$1'" func_error "Continuing, but uninstalled executables may not work." # Fallback: - func_to_host_file_result="$1" + func_to_host_file_result=$1 fi } # end func_convert_file_check @@ -1636,10 +2888,11 @@ # func_to_host_file_result to a simplistic fallback value (see below). func_convert_path_check () { - $opt_debug + $debug_cmd + if test -z "$4" && test -n "$3"; then func_error "Could not determine the host path corresponding to" - func_error " \`$3'" + func_error " '$3'" func_error "Continuing, but uninstalled executables may not work." # Fallback. This is a deliberately simplistic "conversion" and # should not be "improved". See libtool.info. @@ -1648,7 +2901,7 @@ func_to_host_path_result=`echo "$3" | $SED -e "$lt_replace_pathsep_chars"` else - func_to_host_path_result="$3" + func_to_host_path_result=$3 fi fi } @@ -1660,9 +2913,10 @@ # and appending REPL if ORIG matches BACKPAT. func_convert_path_front_back_pathsep () { - $opt_debug + $debug_cmd + case $4 in - $1 ) func_to_host_path_result="$3$func_to_host_path_result" + $1 ) func_to_host_path_result=$3$func_to_host_path_result ;; esac case $4 in @@ -1676,7 +2930,7 @@ ################################################## # $build to $host FILE NAME CONVERSION FUNCTIONS # ################################################## -# invoked via `$to_host_file_cmd ARG' +# invoked via '$to_host_file_cmd ARG' # # In each case, ARG is the path to be converted from $build to $host format. # Result will be available in $func_to_host_file_result. @@ -1687,7 +2941,8 @@ # in func_to_host_file_result. func_to_host_file () { - $opt_debug + $debug_cmd + $to_host_file_cmd "$1" } # end func_to_host_file @@ -1699,7 +2954,8 @@ # in (the comma separated) LAZY, no conversion takes place. func_to_tool_file () { - $opt_debug + $debug_cmd + case ,$2, in *,"$to_tool_file_cmd",*) func_to_tool_file_result=$1 @@ -1717,7 +2973,7 @@ # Copy ARG to func_to_host_file_result. func_convert_file_noop () { - func_to_host_file_result="$1" + func_to_host_file_result=$1 } # end func_convert_file_noop @@ -1728,11 +2984,12 @@ # func_to_host_file_result. func_convert_file_msys_to_w32 () { - $opt_debug - func_to_host_file_result="$1" + $debug_cmd + + func_to_host_file_result=$1 if test -n "$1"; then func_convert_core_msys_to_w32 "$1" - func_to_host_file_result="$func_convert_core_msys_to_w32_result" + func_to_host_file_result=$func_convert_core_msys_to_w32_result fi func_convert_file_check "$1" "$func_to_host_file_result" } @@ -1744,8 +3001,9 @@ # func_to_host_file_result. func_convert_file_cygwin_to_w32 () { - $opt_debug - func_to_host_file_result="$1" + $debug_cmd + + func_to_host_file_result=$1 if test -n "$1"; then # because $build is cygwin, we call "the" cygpath in $PATH; no need to use # LT_CYGPATH in this case. @@ -1761,11 +3019,12 @@ # and a working winepath. Returns result in func_to_host_file_result. func_convert_file_nix_to_w32 () { - $opt_debug - func_to_host_file_result="$1" + $debug_cmd + + func_to_host_file_result=$1 if test -n "$1"; then func_convert_core_file_wine_to_w32 "$1" - func_to_host_file_result="$func_convert_core_file_wine_to_w32_result" + func_to_host_file_result=$func_convert_core_file_wine_to_w32_result fi func_convert_file_check "$1" "$func_to_host_file_result" } @@ -1777,12 +3036,13 @@ # Returns result in func_to_host_file_result. func_convert_file_msys_to_cygwin () { - $opt_debug - func_to_host_file_result="$1" + $debug_cmd + + func_to_host_file_result=$1 if test -n "$1"; then func_convert_core_msys_to_w32 "$1" func_cygpath -u "$func_convert_core_msys_to_w32_result" - func_to_host_file_result="$func_cygpath_result" + func_to_host_file_result=$func_cygpath_result fi func_convert_file_check "$1" "$func_to_host_file_result" } @@ -1795,13 +3055,14 @@ # in func_to_host_file_result. func_convert_file_nix_to_cygwin () { - $opt_debug - func_to_host_file_result="$1" + $debug_cmd + + func_to_host_file_result=$1 if test -n "$1"; then # convert from *nix to w32, then use cygpath to convert from w32 to cygwin. func_convert_core_file_wine_to_w32 "$1" func_cygpath -u "$func_convert_core_file_wine_to_w32_result" - func_to_host_file_result="$func_cygpath_result" + func_to_host_file_result=$func_cygpath_result fi func_convert_file_check "$1" "$func_to_host_file_result" } @@ -1811,7 +3072,7 @@ ############################################# # $build to $host PATH CONVERSION FUNCTIONS # ############################################# -# invoked via `$to_host_path_cmd ARG' +# invoked via '$to_host_path_cmd ARG' # # In each case, ARG is the path to be converted from $build to $host format. # The result will be available in $func_to_host_path_result. @@ -1835,10 +3096,11 @@ to_host_path_cmd= func_init_to_host_path_cmd () { - $opt_debug + $debug_cmd + if test -z "$to_host_path_cmd"; then func_stripname 'func_convert_file_' '' "$to_host_file_cmd" - to_host_path_cmd="func_convert_path_${func_stripname_result}" + to_host_path_cmd=func_convert_path_$func_stripname_result fi } @@ -1848,7 +3110,8 @@ # in func_to_host_path_result. func_to_host_path () { - $opt_debug + $debug_cmd + func_init_to_host_path_cmd $to_host_path_cmd "$1" } @@ -1859,7 +3122,7 @@ # Copy ARG to func_to_host_path_result. func_convert_path_noop () { - func_to_host_path_result="$1" + func_to_host_path_result=$1 } # end func_convert_path_noop @@ -1870,8 +3133,9 @@ # func_to_host_path_result. func_convert_path_msys_to_w32 () { - $opt_debug - func_to_host_path_result="$1" + $debug_cmd + + func_to_host_path_result=$1 if test -n "$1"; then # Remove leading and trailing path separator characters from ARG. MSYS # behavior is inconsistent here; cygpath turns them into '.;' and ';.'; @@ -1879,7 +3143,7 @@ func_stripname : : "$1" func_to_host_path_tmp1=$func_stripname_result func_convert_core_msys_to_w32 "$func_to_host_path_tmp1" - func_to_host_path_result="$func_convert_core_msys_to_w32_result" + func_to_host_path_result=$func_convert_core_msys_to_w32_result func_convert_path_check : ";" \ "$func_to_host_path_tmp1" "$func_to_host_path_result" func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" @@ -1893,8 +3157,9 @@ # func_to_host_file_result. func_convert_path_cygwin_to_w32 () { - $opt_debug - func_to_host_path_result="$1" + $debug_cmd + + func_to_host_path_result=$1 if test -n "$1"; then # See func_convert_path_msys_to_w32: func_stripname : : "$1" @@ -1913,14 +3178,15 @@ # a working winepath. Returns result in func_to_host_file_result. func_convert_path_nix_to_w32 () { - $opt_debug - func_to_host_path_result="$1" + $debug_cmd + + func_to_host_path_result=$1 if test -n "$1"; then # See func_convert_path_msys_to_w32: func_stripname : : "$1" func_to_host_path_tmp1=$func_stripname_result func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1" - func_to_host_path_result="$func_convert_core_path_wine_to_w32_result" + func_to_host_path_result=$func_convert_core_path_wine_to_w32_result func_convert_path_check : ";" \ "$func_to_host_path_tmp1" "$func_to_host_path_result" func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" @@ -1934,15 +3200,16 @@ # Returns result in func_to_host_file_result. func_convert_path_msys_to_cygwin () { - $opt_debug - func_to_host_path_result="$1" + $debug_cmd + + func_to_host_path_result=$1 if test -n "$1"; then # See func_convert_path_msys_to_w32: func_stripname : : "$1" func_to_host_path_tmp1=$func_stripname_result func_convert_core_msys_to_w32 "$func_to_host_path_tmp1" func_cygpath -u -p "$func_convert_core_msys_to_w32_result" - func_to_host_path_result="$func_cygpath_result" + func_to_host_path_result=$func_cygpath_result func_convert_path_check : : \ "$func_to_host_path_tmp1" "$func_to_host_path_result" func_convert_path_front_back_pathsep ":*" "*:" : "$1" @@ -1957,8 +3224,9 @@ # func_to_host_file_result. func_convert_path_nix_to_cygwin () { - $opt_debug - func_to_host_path_result="$1" + $debug_cmd + + func_to_host_path_result=$1 if test -n "$1"; then # Remove leading and trailing path separator characters from # ARG. msys behavior is inconsistent here, cygpath turns them @@ -1967,7 +3235,7 @@ func_to_host_path_tmp1=$func_stripname_result func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1" func_cygpath -u -p "$func_convert_core_path_wine_to_w32_result" - func_to_host_path_result="$func_cygpath_result" + func_to_host_path_result=$func_cygpath_result func_convert_path_check : : \ "$func_to_host_path_tmp1" "$func_to_host_path_result" func_convert_path_front_back_pathsep ":*" "*:" : "$1" @@ -1976,13 +3244,31 @@ # end func_convert_path_nix_to_cygwin +# func_dll_def_p FILE +# True iff FILE is a Windows DLL '.def' file. +# Keep in sync with _LT_DLL_DEF_P in libtool.m4 +func_dll_def_p () +{ + $debug_cmd + + func_dll_def_p_tmp=`$SED -n \ + -e 's/^[ ]*//' \ + -e '/^\(;.*\)*$/d' \ + -e 's/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p' \ + -e q \ + "$1"` + test DEF = "$func_dll_def_p_tmp" +} + + # func_mode_compile arg... func_mode_compile () { - $opt_debug + $debug_cmd + # Get the compilation command and the source file. base_compile= - srcfile="$nonopt" # always keep a non-empty value in "srcfile" + srcfile=$nonopt # always keep a non-empty value in "srcfile" suppress_opt=yes suppress_output= arg_mode=normal @@ -1995,12 +3281,12 @@ case $arg_mode in arg ) # do not "continue". Instead, add this to base_compile - lastarg="$arg" + lastarg=$arg arg_mode=normal ;; target ) - libobj="$arg" + libobj=$arg arg_mode=normal continue ;; @@ -2010,7 +3296,7 @@ case $arg in -o) test -n "$libobj" && \ - func_fatal_error "you cannot specify \`-o' more than once" + func_fatal_error "you cannot specify '-o' more than once" arg_mode=target continue ;; @@ -2039,12 +3325,12 @@ func_stripname '-Wc,' '' "$arg" args=$func_stripname_result lastarg= - save_ifs="$IFS"; IFS=',' + save_ifs=$IFS; IFS=, for arg in $args; do - IFS="$save_ifs" + IFS=$save_ifs func_append_quoted lastarg "$arg" done - IFS="$save_ifs" + IFS=$save_ifs func_stripname ' ' '' "$lastarg" lastarg=$func_stripname_result @@ -2057,8 +3343,8 @@ # Accept the current argument as the source file. # The previous "srcfile" becomes the current argument. # - lastarg="$srcfile" - srcfile="$arg" + lastarg=$srcfile + srcfile=$arg ;; esac # case $arg ;; @@ -2073,13 +3359,13 @@ func_fatal_error "you must specify an argument for -Xcompile" ;; target) - func_fatal_error "you must specify a target with \`-o'" + func_fatal_error "you must specify a target with '-o'" ;; *) # Get the name of the library object. test -z "$libobj" && { func_basename "$srcfile" - libobj="$func_basename_result" + libobj=$func_basename_result } ;; esac @@ -2099,7 +3385,7 @@ case $libobj in *.lo) func_lo2o "$libobj"; obj=$func_lo2o_result ;; *) - func_fatal_error "cannot determine name of library object from \`$libobj'" + func_fatal_error "cannot determine name of library object from '$libobj'" ;; esac @@ -2108,8 +3394,8 @@ for arg in $later; do case $arg in -shared) - test "$build_libtool_libs" != yes && \ - func_fatal_configuration "can not build a shared library" + test yes = "$build_libtool_libs" \ + || func_fatal_configuration "cannot build a shared library" build_old_libs=no continue ;; @@ -2135,17 +3421,17 @@ func_quote_for_eval "$libobj" test "X$libobj" != "X$func_quote_for_eval_result" \ && $ECHO "X$libobj" | $GREP '[]~#^*{};<>?"'"'"' &()|`$[]' \ - && func_warning "libobj name \`$libobj' may not contain shell special characters." + && func_warning "libobj name '$libobj' may not contain shell special characters." func_dirname_and_basename "$obj" "/" "" - objname="$func_basename_result" - xdir="$func_dirname_result" - lobj=${xdir}$objdir/$objname + objname=$func_basename_result + xdir=$func_dirname_result + lobj=$xdir$objdir/$objname test -z "$base_compile" && \ func_fatal_help "you must specify a compilation command" # Delete any leftover library objects. - if test "$build_old_libs" = yes; then + if test yes = "$build_old_libs"; then removelist="$obj $lobj $libobj ${libobj}T" else removelist="$lobj $libobj ${libobj}T" @@ -2157,16 +3443,16 @@ pic_mode=default ;; esac - if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then + if test no = "$pic_mode" && test pass_all != "$deplibs_check_method"; then # non-PIC code in shared libraries is not supported pic_mode=default fi # Calculate the filename of the output object if compiler does # not support -o with -c - if test "$compiler_c_o" = no; then - output_obj=`$ECHO "$srcfile" | $SED 's%^.*/%%; s%\.[^.]*$%%'`.${objext} - lockfile="$output_obj.lock" + if test no = "$compiler_c_o"; then + output_obj=`$ECHO "$srcfile" | $SED 's%^.*/%%; s%\.[^.]*$%%'`.$objext + lockfile=$output_obj.lock else output_obj= need_locks=no @@ -2175,12 +3461,12 @@ # Lock this critical section if it is needed # We use this script file to make the link, it avoids creating a new file - if test "$need_locks" = yes; then + if test yes = "$need_locks"; then until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do func_echo "Waiting for $lockfile to be removed" sleep 2 done - elif test "$need_locks" = warn; then + elif test warn = "$need_locks"; then if test -f "$lockfile"; then $ECHO "\ *** ERROR, $lockfile exists and contains: @@ -2188,7 +3474,7 @@ This indicates that another process is trying to use the same temporary object file, and libtool could not work around it because -your compiler does not support \`-c' and \`-o' together. If you +your compiler does not support '-c' and '-o' together. If you repeat this compilation, it may succeed, by chance, but you had better avoid parallel builds (make -j) in this platform, or get a better compiler." @@ -2210,11 +3496,11 @@ qsrcfile=$func_quote_for_eval_result # Only build a PIC object if we are building libtool libraries. - if test "$build_libtool_libs" = yes; then + if test yes = "$build_libtool_libs"; then # Without this assignment, base_compile gets emptied. fbsd_hideous_sh_bug=$base_compile - if test "$pic_mode" != no; then + if test no != "$pic_mode"; then command="$base_compile $qsrcfile $pic_flag" else # Don't build PIC code @@ -2231,7 +3517,7 @@ func_show_eval_locale "$command" \ 'test -n "$output_obj" && $RM $removelist; exit $EXIT_FAILURE' - if test "$need_locks" = warn && + if test warn = "$need_locks" && test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then $ECHO "\ *** ERROR, $lockfile contains: @@ -2242,7 +3528,7 @@ This indicates that another process is trying to use the same temporary object file, and libtool could not work around it because -your compiler does not support \`-c' and \`-o' together. If you +your compiler does not support '-c' and '-o' together. If you repeat this compilation, it may succeed, by chance, but you had better avoid parallel builds (make -j) in this platform, or get a better compiler." @@ -2258,20 +3544,20 @@ fi # Allow error messages only from the first compilation. - if test "$suppress_opt" = yes; then + if test yes = "$suppress_opt"; then suppress_output=' >/dev/null 2>&1' fi fi # Only build a position-dependent object if we build old libraries. - if test "$build_old_libs" = yes; then - if test "$pic_mode" != yes; then + if test yes = "$build_old_libs"; then + if test yes != "$pic_mode"; then # Don't build PIC code command="$base_compile $qsrcfile$pie_flag" else command="$base_compile $qsrcfile $pic_flag" fi - if test "$compiler_c_o" = yes; then + if test yes = "$compiler_c_o"; then func_append command " -o $obj" fi @@ -2280,7 +3566,7 @@ func_show_eval_locale "$command" \ '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' - if test "$need_locks" = warn && + if test warn = "$need_locks" && test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then $ECHO "\ *** ERROR, $lockfile contains: @@ -2291,7 +3577,7 @@ This indicates that another process is trying to use the same temporary object file, and libtool could not work around it because -your compiler does not support \`-c' and \`-o' together. If you +your compiler does not support '-c' and '-o' together. If you repeat this compilation, it may succeed, by chance, but you had better avoid parallel builds (make -j) in this platform, or get a better compiler." @@ -2311,7 +3597,7 @@ func_write_libtool_object "$libobj" "$objdir/$objname" "$objname" # Unlock the critical section if it was locked - if test "$need_locks" != no; then + if test no != "$need_locks"; then removelist=$lockfile $RM "$lockfile" fi @@ -2321,7 +3607,7 @@ } $opt_help || { - test "$opt_mode" = compile && func_mode_compile ${1+"$@"} + test compile = "$opt_mode" && func_mode_compile ${1+"$@"} } func_mode_help () @@ -2341,7 +3627,7 @@ Remove files from the build directory. RM is the name of the program to use to delete files associated with each FILE -(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed +(typically '/bin/rm'). RM-OPTIONS are options (such as '-f') to be passed to RM. If FILE is a libtool library, object or program, all the files associated @@ -2360,16 +3646,16 @@ -no-suppress do not suppress compiler output for multiple passes -prefer-pic try to build PIC objects only -prefer-non-pic try to build non-PIC objects only - -shared do not build a \`.o' file suitable for static linking - -static only build a \`.o' file suitable for static linking + -shared do not build a '.o' file suitable for static linking + -static only build a '.o' file suitable for static linking -Wc,FLAG pass FLAG directly to the compiler -COMPILE-COMMAND is a command to be used in creating a \`standard' object file +COMPILE-COMMAND is a command to be used in creating a 'standard' object file from the given SOURCEFILE. The output file name is determined by removing the directory component from -SOURCEFILE, then substituting the C source code suffix \`.c' with the -library object suffix, \`.lo'." +SOURCEFILE, then substituting the C source code suffix '.c' with the +library object suffix, '.lo'." ;; execute) @@ -2382,7 +3668,7 @@ -dlopen FILE add the directory containing FILE to the library path -This mode sets the library path environment variable according to \`-dlopen' +This mode sets the library path environment variable according to '-dlopen' flags. If any of the ARGS are libtool executable wrappers, then they are translated @@ -2401,7 +3687,7 @@ Each LIBDIR is a directory that contains libtool libraries. The commands that this mode executes may require superuser privileges. Use -the \`--dry-run' option if you just want to see what would be executed." +the '--dry-run' option if you just want to see what would be executed." ;; install) @@ -2411,7 +3697,7 @@ Install executables or libraries. INSTALL-COMMAND is the installation command. The first component should be -either the \`install' or \`cp' program. +either the 'install' or 'cp' program. The following components of INSTALL-COMMAND are treated specially: @@ -2437,7 +3723,7 @@ -avoid-version do not add a version suffix if possible -bindir BINDIR specify path to binaries directory (for systems where libraries must be found in the PATH setting at runtime) - -dlopen FILE \`-dlpreopen' FILE if it cannot be dlopened at runtime + -dlopen FILE '-dlpreopen' FILE if it cannot be dlopened at runtime -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3) -export-symbols SYMFILE @@ -2451,7 +3737,8 @@ -no-install link a not-installable executable -no-undefined declare that a library does not refer to external symbols -o OUTPUT-FILE create OUTPUT-FILE from the specified objects - -objectlist FILE Use a list of object files found in FILE to specify objects + -objectlist FILE use a list of object files found in FILE to specify objects + -os2dllname NAME force a short DLL name on OS/2 (no effect on other OSes) -precious-files-regex REGEX don't remove output files matching REGEX -release RELEASE specify package release information @@ -2471,20 +3758,20 @@ -Xlinker FLAG pass linker-specific FLAG directly to the linker -XCClinker FLAG pass link-specific FLAG to the compiler driver (CC) -All other options (arguments beginning with \`-') are ignored. +All other options (arguments beginning with '-') are ignored. -Every other argument is treated as a filename. Files ending in \`.la' are +Every other argument is treated as a filename. Files ending in '.la' are treated as uninstalled libtool libraries, other files are standard or library object files. -If the OUTPUT-FILE ends in \`.la', then a libtool library is created, -only library objects (\`.lo' files) may be specified, and \`-rpath' is +If the OUTPUT-FILE ends in '.la', then a libtool library is created, +only library objects ('.lo' files) may be specified, and '-rpath' is required, except when creating a convenience library. -If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created -using \`ar' and \`ranlib', or on Windows using \`lib'. +If OUTPUT-FILE ends in '.a' or '.lib', then a standard library is created +using 'ar' and 'ranlib', or on Windows using 'lib'. -If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file +If OUTPUT-FILE ends in '.lo' or '.$objext', then a reloadable object file is created, otherwise an executable program is created." ;; @@ -2495,7 +3782,7 @@ Remove libraries from an installation directory. RM is the name of the program to use to delete files associated with each FILE -(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed +(typically '/bin/rm'). RM-OPTIONS are options (such as '-f') to be passed to RM. If FILE is a libtool library, all the files associated with it are deleted. @@ -2503,17 +3790,17 @@ ;; *) - func_fatal_help "invalid operation mode \`$opt_mode'" + func_fatal_help "invalid operation mode '$opt_mode'" ;; esac echo - $ECHO "Try \`$progname --help' for more information about other modes." + $ECHO "Try '$progname --help' for more information about other modes." } # Now that we've collected a possible --mode arg, show help if necessary if $opt_help; then - if test "$opt_help" = :; then + if test : = "$opt_help"; then func_mode_help else { @@ -2521,7 +3808,7 @@ for opt_mode in compile link execute install finish uninstall clean; do func_mode_help done - } | sed -n '1p; 2,$s/^Usage:/ or: /p' + } | $SED -n '1p; 2,$s/^Usage:/ or: /p' { func_help noexit for opt_mode in compile link execute install finish uninstall clean; do @@ -2529,7 +3816,7 @@ func_mode_help done } | - sed '1d + $SED '1d /^When reporting/,/^Report/{ H d @@ -2546,16 +3833,17 @@ # func_mode_execute arg... func_mode_execute () { - $opt_debug + $debug_cmd + # The first argument is the command name. - cmd="$nonopt" + cmd=$nonopt test -z "$cmd" && \ func_fatal_help "you must specify a COMMAND" # Handle -dlopen flags immediately. for file in $opt_dlopen; do test -f "$file" \ - || func_fatal_help "\`$file' is not a file" + || func_fatal_help "'$file' is not a file" dir= case $file in @@ -2565,7 +3853,7 @@ # Check to see that this really is a libtool archive. func_lalib_unsafe_p "$file" \ - || func_fatal_help "\`$lib' is not a valid libtool archive" + || func_fatal_help "'$lib' is not a valid libtool archive" # Read the libtool library. dlname= @@ -2576,18 +3864,18 @@ if test -z "$dlname"; then # Warn if it was a shared library. test -n "$library_names" && \ - func_warning "\`$file' was not linked with \`-export-dynamic'" + func_warning "'$file' was not linked with '-export-dynamic'" continue fi func_dirname "$file" "" "." - dir="$func_dirname_result" + dir=$func_dirname_result if test -f "$dir/$objdir/$dlname"; then func_append dir "/$objdir" else if test ! -f "$dir/$dlname"; then - func_fatal_error "cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" + func_fatal_error "cannot find '$dlname' in '$dir' or '$dir/$objdir'" fi fi ;; @@ -2595,18 +3883,18 @@ *.lo) # Just add the directory containing the .lo file. func_dirname "$file" "" "." - dir="$func_dirname_result" + dir=$func_dirname_result ;; *) - func_warning "\`-dlopen' is ignored for non-libtool libraries and objects" + func_warning "'-dlopen' is ignored for non-libtool libraries and objects" continue ;; esac # Get the absolute pathname. absdir=`cd "$dir" && pwd` - test -n "$absdir" && dir="$absdir" + test -n "$absdir" && dir=$absdir # Now add the directory to shlibpath_var. if eval "test -z \"\$$shlibpath_var\""; then @@ -2618,7 +3906,7 @@ # This variable tells wrapper scripts just to set shlibpath_var # rather than running their programs. - libtool_execute_magic="$magic" + libtool_execute_magic=$magic # Check if any of the arguments is a wrapper script. args= @@ -2631,12 +3919,12 @@ if func_ltwrapper_script_p "$file"; then func_source "$file" # Transform arg to wrapped name. - file="$progdir/$program" + file=$progdir/$program elif func_ltwrapper_executable_p "$file"; then func_ltwrapper_scriptname "$file" func_source "$func_ltwrapper_scriptname_result" # Transform arg to wrapped name. - file="$progdir/$program" + file=$progdir/$program fi ;; esac @@ -2644,7 +3932,15 @@ func_append_quoted args "$file" done - if test "X$opt_dry_run" = Xfalse; then + if $opt_dry_run; then + # Display what would be done. + if test -n "$shlibpath_var"; then + eval "\$ECHO \"\$shlibpath_var=\$$shlibpath_var\"" + echo "export $shlibpath_var" + fi + $ECHO "$cmd$args" + exit $EXIT_SUCCESS + else if test -n "$shlibpath_var"; then # Export the shlibpath_var. eval "export $shlibpath_var" @@ -2661,25 +3957,18 @@ done # Now prepare to actually exec the command. - exec_cmd="\$cmd$args" - else - # Display what would be done. - if test -n "$shlibpath_var"; then - eval "\$ECHO \"\$shlibpath_var=\$$shlibpath_var\"" - echo "export $shlibpath_var" - fi - $ECHO "$cmd$args" - exit $EXIT_SUCCESS + exec_cmd=\$cmd$args fi } -test "$opt_mode" = execute && func_mode_execute ${1+"$@"} +test execute = "$opt_mode" && func_mode_execute ${1+"$@"} # func_mode_finish arg... func_mode_finish () { - $opt_debug + $debug_cmd + libs= libdirs= admincmds= @@ -2693,11 +3982,11 @@ if func_lalib_unsafe_p "$opt"; then func_append libs " $opt" else - func_warning "\`$opt' is not a valid libtool archive" + func_warning "'$opt' is not a valid libtool archive" fi else - func_fatal_error "invalid argument \`$opt'" + func_fatal_error "invalid argument '$opt'" fi done @@ -2712,12 +4001,12 @@ # Remove sysroot references if $opt_dry_run; then for lib in $libs; do - echo "removing references to $lt_sysroot and \`=' prefixes from $lib" + echo "removing references to $lt_sysroot and '=' prefixes from $lib" done else tmpdir=`func_mktempdir` for lib in $libs; do - sed -e "${sysroot_cmd} s/\([ ']-[LR]\)=/\1/g; s/\([ ']\)=/\1/g" $lib \ + $SED -e "$sysroot_cmd s/\([ ']-[LR]\)=/\1/g; s/\([ ']\)=/\1/g" $lib \ > $tmpdir/tmp-la mv -f $tmpdir/tmp-la $lib done @@ -2742,7 +4031,7 @@ fi # Exit here if they wanted silent mode. - $opt_silent && exit $EXIT_SUCCESS + $opt_quiet && exit $EXIT_SUCCESS if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then echo "----------------------------------------------------------------------" @@ -2753,27 +4042,27 @@ echo echo "If you ever happen to want to link against installed libraries" echo "in a given directory, LIBDIR, you must either use libtool, and" - echo "specify the full pathname of the library, or use the \`-LLIBDIR'" + echo "specify the full pathname of the library, or use the '-LLIBDIR'" echo "flag during linking and do at least one of the following:" if test -n "$shlibpath_var"; then - echo " - add LIBDIR to the \`$shlibpath_var' environment variable" + echo " - add LIBDIR to the '$shlibpath_var' environment variable" echo " during execution" fi if test -n "$runpath_var"; then - echo " - add LIBDIR to the \`$runpath_var' environment variable" + echo " - add LIBDIR to the '$runpath_var' environment variable" echo " during linking" fi if test -n "$hardcode_libdir_flag_spec"; then libdir=LIBDIR eval flag=\"$hardcode_libdir_flag_spec\" - $ECHO " - use the \`$flag' linker flag" + $ECHO " - use the '$flag' linker flag" fi if test -n "$admincmds"; then $ECHO " - have your system administrator run these commands:$admincmds" fi if test -f /etc/ld.so.conf; then - echo " - have your system administrator add LIBDIR to \`/etc/ld.so.conf'" + echo " - have your system administrator add LIBDIR to '/etc/ld.so.conf'" fi echo @@ -2792,18 +4081,20 @@ exit $EXIT_SUCCESS } -test "$opt_mode" = finish && func_mode_finish ${1+"$@"} +test finish = "$opt_mode" && func_mode_finish ${1+"$@"} # func_mode_install arg... func_mode_install () { - $opt_debug + $debug_cmd + # There may be an optional sh(1) argument at the beginning of # install_prog (especially on Windows NT). - if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh || + if test "$SHELL" = "$nonopt" || test /bin/sh = "$nonopt" || # Allow the use of GNU shtool's install command. - case $nonopt in *shtool*) :;; *) false;; esac; then + case $nonopt in *shtool*) :;; *) false;; esac + then # Aesthetically quote it. func_quote_for_eval "$nonopt" install_prog="$func_quote_for_eval_result " @@ -2830,7 +4121,7 @@ opts= prev= install_type= - isdir=no + isdir=false stripme= no_mode=: for arg @@ -2843,7 +4134,7 @@ fi case $arg in - -d) isdir=yes ;; + -d) isdir=: ;; -f) if $install_cp; then :; else prev=$arg @@ -2861,7 +4152,7 @@ *) # If the previous option needed an argument, then skip it. if test -n "$prev"; then - if test "x$prev" = x-m && test -n "$install_override_mode"; then + if test X-m = "X$prev" && test -n "$install_override_mode"; then arg2=$install_override_mode no_mode=false fi @@ -2886,7 +4177,7 @@ func_fatal_help "you must specify an install program" test -n "$prev" && \ - func_fatal_help "the \`$prev' option requires an argument" + func_fatal_help "the '$prev' option requires an argument" if test -n "$install_override_mode" && $no_mode; then if $install_cp; then :; else @@ -2908,19 +4199,19 @@ dest=$func_stripname_result # Check to see that the destination is a directory. - test -d "$dest" && isdir=yes - if test "$isdir" = yes; then - destdir="$dest" + test -d "$dest" && isdir=: + if $isdir; then + destdir=$dest destname= else func_dirname_and_basename "$dest" "" "." - destdir="$func_dirname_result" - destname="$func_basename_result" + destdir=$func_dirname_result + destname=$func_basename_result # Not a directory, so check to see that there is only one file specified. set dummy $files; shift test "$#" -gt 1 && \ - func_fatal_help "\`$dest' is not a directory" + func_fatal_help "'$dest' is not a directory" fi case $destdir in [\\/]* | [A-Za-z]:[\\/]*) ;; @@ -2929,7 +4220,7 @@ case $file in *.lo) ;; *) - func_fatal_help "\`$destdir' must be an absolute directory name" + func_fatal_help "'$destdir' must be an absolute directory name" ;; esac done @@ -2938,7 +4229,7 @@ # This variable tells wrapper scripts just to set variables rather # than running their programs. - libtool_install_magic="$magic" + libtool_install_magic=$magic staticlibs= future_libdirs= @@ -2958,7 +4249,7 @@ # Check to see that this really is a libtool archive. func_lalib_unsafe_p "$file" \ - || func_fatal_help "\`$file' is not a valid libtool archive" + || func_fatal_help "'$file' is not a valid libtool archive" library_names= old_library= @@ -2980,7 +4271,7 @@ fi func_dirname "$file" "/" "" - dir="$func_dirname_result" + dir=$func_dirname_result func_append dir "$objdir" if test -n "$relink_command"; then @@ -2994,7 +4285,7 @@ # are installed into $libdir/../bin (currently, that works fine) # but it's something to keep an eye on. test "$inst_prefix_dir" = "$destdir" && \ - func_fatal_error "error: cannot install \`$file' to a directory not ending in $libdir" + func_fatal_error "error: cannot install '$file' to a directory not ending in $libdir" if test -n "$inst_prefix_dir"; then # Stick the inst_prefix_dir data into the link command. @@ -3003,29 +4294,36 @@ relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%%"` fi - func_warning "relinking \`$file'" + func_warning "relinking '$file'" func_show_eval "$relink_command" \ - 'func_fatal_error "error: relink \`$file'\'' with the above command before installing it"' + 'func_fatal_error "error: relink '\''$file'\'' with the above command before installing it"' fi # See the names of the shared library. set dummy $library_names; shift if test -n "$1"; then - realname="$1" + realname=$1 shift - srcname="$realname" - test -n "$relink_command" && srcname="$realname"T + srcname=$realname + test -n "$relink_command" && srcname=${realname}T # Install the shared library and build the symlinks. func_show_eval "$install_shared_prog $dir/$srcname $destdir/$realname" \ 'exit $?' - tstripme="$stripme" + tstripme=$stripme case $host_os in cygwin* | mingw* | pw32* | cegcc*) case $realname in *.dll.a) - tstripme="" + tstripme= + ;; + esac + ;; + os2*) + case $realname in + *_dll.a) + tstripme= ;; esac ;; @@ -3036,7 +4334,7 @@ if test "$#" -gt 0; then # Delete the old symlinks, and create new ones. - # Try `ln -sf' first, because the `ln' binary might depend on + # Try 'ln -sf' first, because the 'ln' binary might depend on # the symlink we replace! Solaris /bin/ln does not understand -f, # so we also need to try rm && ln -s. for linkname @@ -3047,14 +4345,14 @@ fi # Do each command in the postinstall commands. - lib="$destdir/$realname" + lib=$destdir/$realname func_execute_cmds "$postinstall_cmds" 'exit $?' fi # Install the pseudo-library for information purposes. func_basename "$file" - name="$func_basename_result" - instname="$dir/$name"i + name=$func_basename_result + instname=$dir/${name}i func_show_eval "$install_prog $instname $destdir/$name" 'exit $?' # Maybe install the static library, too. @@ -3066,11 +4364,11 @@ # Figure out destination file name, if it wasn't already specified. if test -n "$destname"; then - destfile="$destdir/$destname" + destfile=$destdir/$destname else func_basename "$file" - destfile="$func_basename_result" - destfile="$destdir/$destfile" + destfile=$func_basename_result + destfile=$destdir/$destfile fi # Deduce the name of the destination old-style object file. @@ -3080,11 +4378,11 @@ staticdest=$func_lo2o_result ;; *.$objext) - staticdest="$destfile" + staticdest=$destfile destfile= ;; *) - func_fatal_help "cannot copy a libtool object to \`$destfile'" + func_fatal_help "cannot copy a libtool object to '$destfile'" ;; esac @@ -3093,7 +4391,7 @@ func_show_eval "$install_prog $file $destfile" 'exit $?' # Install the old object if enabled. - if test "$build_old_libs" = yes; then + if test yes = "$build_old_libs"; then # Deduce the name of the old-style object file. func_lo2o "$file" staticobj=$func_lo2o_result @@ -3105,23 +4403,23 @@ *) # Figure out destination file name, if it wasn't already specified. if test -n "$destname"; then - destfile="$destdir/$destname" + destfile=$destdir/$destname else func_basename "$file" - destfile="$func_basename_result" - destfile="$destdir/$destfile" + destfile=$func_basename_result + destfile=$destdir/$destfile fi # If the file is missing, and there is a .exe on the end, strip it # because it is most likely a libtool script we actually want to # install - stripped_ext="" + stripped_ext= case $file in *.exe) if test ! -f "$file"; then func_stripname '' '.exe' "$file" file=$func_stripname_result - stripped_ext=".exe" + stripped_ext=.exe fi ;; esac @@ -3149,19 +4447,19 @@ # Check the variables that should have been set. test -z "$generated_by_libtool_version" && \ - func_fatal_error "invalid libtool wrapper script \`$wrapper'" + func_fatal_error "invalid libtool wrapper script '$wrapper'" - finalize=yes + finalize=: for lib in $notinst_deplibs; do # Check to see that each library is installed. libdir= if test -f "$lib"; then func_source "$lib" fi - libfile="$libdir/"`$ECHO "$lib" | $SED 's%^.*/%%g'` ### testsuite: skip nested quoting test + libfile=$libdir/`$ECHO "$lib" | $SED 's%^.*/%%g'` if test -n "$libdir" && test ! -f "$libfile"; then - func_warning "\`$lib' has not been installed in \`$libdir'" - finalize=no + func_warning "'$lib' has not been installed in '$libdir'" + finalize=false fi done @@ -3169,29 +4467,29 @@ func_source "$wrapper" outputname= - if test "$fast_install" = no && test -n "$relink_command"; then + if test no = "$fast_install" && test -n "$relink_command"; then $opt_dry_run || { - if test "$finalize" = yes; then + if $finalize; then tmpdir=`func_mktempdir` func_basename "$file$stripped_ext" - file="$func_basename_result" - outputname="$tmpdir/$file" + file=$func_basename_result + outputname=$tmpdir/$file # Replace the output file specification. relink_command=`$ECHO "$relink_command" | $SED 's%@OUTPUT@%'"$outputname"'%g'` - $opt_silent || { + $opt_quiet || { func_quote_for_expand "$relink_command" eval "func_echo $func_quote_for_expand_result" } if eval "$relink_command"; then : else - func_error "error: relink \`$file' with the above command before installing it" + func_error "error: relink '$file' with the above command before installing it" $opt_dry_run || ${RM}r "$tmpdir" continue fi - file="$outputname" + file=$outputname else - func_warning "cannot relink \`$file'" + func_warning "cannot relink '$file'" fi } else @@ -3228,10 +4526,10 @@ for file in $staticlibs; do func_basename "$file" - name="$func_basename_result" + name=$func_basename_result # Set up the ranlib parameters. - oldlib="$destdir/$name" + oldlib=$destdir/$name func_to_tool_file "$oldlib" func_convert_file_msys_to_w32 tool_oldlib=$func_to_tool_file_result @@ -3246,18 +4544,18 @@ done test -n "$future_libdirs" && \ - func_warning "remember to run \`$progname --finish$future_libdirs'" + func_warning "remember to run '$progname --finish$future_libdirs'" if test -n "$current_libdirs"; then # Maybe just do a dry run. $opt_dry_run && current_libdirs=" -n$current_libdirs" - exec_cmd='$SHELL $progpath $preserve_args --finish$current_libdirs' + exec_cmd='$SHELL "$progpath" $preserve_args --finish$current_libdirs' else exit $EXIT_SUCCESS fi } -test "$opt_mode" = install && func_mode_install ${1+"$@"} +test install = "$opt_mode" && func_mode_install ${1+"$@"} # func_generate_dlsyms outputname originator pic_p @@ -3265,16 +4563,17 @@ # a dlpreopen symbol table. func_generate_dlsyms () { - $opt_debug - my_outputname="$1" - my_originator="$2" - my_pic_p="${3-no}" - my_prefix=`$ECHO "$my_originator" | sed 's%[^a-zA-Z0-9]%_%g'` + $debug_cmd + + my_outputname=$1 + my_originator=$2 + my_pic_p=${3-false} + my_prefix=`$ECHO "$my_originator" | $SED 's%[^a-zA-Z0-9]%_%g'` my_dlsyms= - if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then + if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then if test -n "$NM" && test -n "$global_symbol_pipe"; then - my_dlsyms="${my_outputname}S.c" + my_dlsyms=${my_outputname}S.c else func_error "not configured to extract global symbols from dlpreopened files" fi @@ -3285,7 +4584,7 @@ "") ;; *.c) # Discover the nlist of each of the dlfiles. - nlist="$output_objdir/${my_outputname}.nm" + nlist=$output_objdir/$my_outputname.nm func_show_eval "$RM $nlist ${nlist}S ${nlist}T" @@ -3293,34 +4592,36 @@ func_verbose "creating $output_objdir/$my_dlsyms" $opt_dry_run || $ECHO > "$output_objdir/$my_dlsyms" "\ -/* $my_dlsyms - symbol resolution table for \`$my_outputname' dlsym emulation. */ -/* Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION */ +/* $my_dlsyms - symbol resolution table for '$my_outputname' dlsym emulation. */ +/* Generated by $PROGRAM (GNU $PACKAGE) $VERSION */ #ifdef __cplusplus extern \"C\" { #endif -#if defined(__GNUC__) && (((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4)) || (__GNUC__ > 4)) +#if defined __GNUC__ && (((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4)) || (__GNUC__ > 4)) #pragma GCC diagnostic ignored \"-Wstrict-prototypes\" #endif /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ -#if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE) -/* DATA imports from DLLs on WIN32 con't be const, because runtime +#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE +/* DATA imports from DLLs on WIN32 can't be const, because runtime relocations are performed -- see ld's documentation on pseudo-relocs. */ # define LT_DLSYM_CONST -#elif defined(__osf__) +#elif defined __osf__ /* This system does not cope well with relocations in const data. */ # define LT_DLSYM_CONST #else # define LT_DLSYM_CONST const #endif +#define STREQ(s1, s2) (strcmp ((s1), (s2)) == 0) + /* External symbol declarations for the compiler. */\ " - if test "$dlself" = yes; then - func_verbose "generating symbol list for \`$output'" + if test yes = "$dlself"; then + func_verbose "generating symbol list for '$output'" $opt_dry_run || echo ': @PROGRAM@ ' > "$nlist" @@ -3328,7 +4629,7 @@ progfiles=`$ECHO "$objs$old_deplibs" | $SP2NL | $SED "$lo2o" | $NL2SP` for progfile in $progfiles; do func_to_tool_file "$progfile" func_convert_file_msys_to_w32 - func_verbose "extracting global C symbols from \`$func_to_tool_file_result'" + func_verbose "extracting global C symbols from '$func_to_tool_file_result'" $opt_dry_run || eval "$NM $func_to_tool_file_result | $global_symbol_pipe >> '$nlist'" done @@ -3348,10 +4649,10 @@ # Prepare the list of exported symbols if test -z "$export_symbols"; then - export_symbols="$output_objdir/$outputname.exp" + export_symbols=$output_objdir/$outputname.exp $opt_dry_run || { $RM $export_symbols - eval "${SED} -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' + eval "$SED -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' case $host in *cygwin* | *mingw* | *cegcc* ) eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' @@ -3361,7 +4662,7 @@ } else $opt_dry_run || { - eval "${SED} -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"' + eval "$SED -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"' eval '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T' eval '$MV "$nlist"T "$nlist"' case $host in @@ -3375,22 +4676,22 @@ fi for dlprefile in $dlprefiles; do - func_verbose "extracting global C symbols from \`$dlprefile'" + func_verbose "extracting global C symbols from '$dlprefile'" func_basename "$dlprefile" - name="$func_basename_result" + name=$func_basename_result case $host in *cygwin* | *mingw* | *cegcc* ) # if an import library, we need to obtain dlname if func_win32_import_lib_p "$dlprefile"; then func_tr_sh "$dlprefile" eval "curr_lafile=\$libfile_$func_tr_sh_result" - dlprefile_dlbasename="" + dlprefile_dlbasename= if test -n "$curr_lafile" && func_lalib_p "$curr_lafile"; then # Use subshell, to avoid clobbering current variable values dlprefile_dlname=`source "$curr_lafile" && echo "$dlname"` - if test -n "$dlprefile_dlname" ; then + if test -n "$dlprefile_dlname"; then func_basename "$dlprefile_dlname" - dlprefile_dlbasename="$func_basename_result" + dlprefile_dlbasename=$func_basename_result else # no lafile. user explicitly requested -dlpreopen . $sharedlib_from_linklib_cmd "$dlprefile" @@ -3398,7 +4699,7 @@ fi fi $opt_dry_run || { - if test -n "$dlprefile_dlbasename" ; then + if test -n "$dlprefile_dlbasename"; then eval '$ECHO ": $dlprefile_dlbasename" >> "$nlist"' else func_warning "Could not compute DLL name from $name" @@ -3454,6 +4755,11 @@ echo '/* NONE */' >> "$output_objdir/$my_dlsyms" fi + func_show_eval '$RM "${nlist}I"' + if test -n "$global_symbol_to_import"; then + eval "$global_symbol_to_import"' < "$nlist"S > "$nlist"I' + fi + echo >> "$output_objdir/$my_dlsyms" "\ /* The mapping between symbol names and symbols. */ @@ -3462,11 +4768,30 @@ void *address; } lt_dlsymlist; extern LT_DLSYM_CONST lt_dlsymlist -lt_${my_prefix}_LTX_preloaded_symbols[]; +lt_${my_prefix}_LTX_preloaded_symbols[];\ +" + + if test -s "$nlist"I; then + echo >> "$output_objdir/$my_dlsyms" "\ +static void lt_syminit(void) +{ + LT_DLSYM_CONST lt_dlsymlist *symbol = lt_${my_prefix}_LTX_preloaded_symbols; + for (; symbol->name; ++symbol) + {" + $SED 's/.*/ if (STREQ (symbol->name, \"&\")) symbol->address = (void *) \&&;/' < "$nlist"I >> "$output_objdir/$my_dlsyms" + echo >> "$output_objdir/$my_dlsyms" "\ + } +}" + fi + echo >> "$output_objdir/$my_dlsyms" "\ LT_DLSYM_CONST lt_dlsymlist lt_${my_prefix}_LTX_preloaded_symbols[] = -{\ - { \"$my_originator\", (void *) 0 }," +{ {\"$my_originator\", (void *) 0}," + + if test -s "$nlist"I; then + echo >> "$output_objdir/$my_dlsyms" "\ + {\"@INIT@\", (void *) <_syminit}," + fi case $need_lib_prefix in no) @@ -3508,9 +4833,7 @@ *-*-hpux*) pic_flag_for_symtable=" $pic_flag" ;; *) - if test "X$my_pic_p" != Xno; then - pic_flag_for_symtable=" $pic_flag" - fi + $my_pic_p && pic_flag_for_symtable=" $pic_flag" ;; esac ;; @@ -3527,10 +4850,10 @@ func_show_eval '(cd $output_objdir && $LTCC$symtab_cflags -c$no_builtin_flag$pic_flag_for_symtable "$my_dlsyms")' 'exit $?' # Clean up the generated files. - func_show_eval '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T"' + func_show_eval '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T" "${nlist}I"' # Transform the symbol file into the correct name. - symfileobj="$output_objdir/${my_outputname}S.$objext" + symfileobj=$output_objdir/${my_outputname}S.$objext case $host in *cygwin* | *mingw* | *cegcc* ) if test -f "$output_objdir/$my_outputname.def"; then @@ -3547,11 +4870,8 @@ ;; esac ;; - *-*-freebsd*) - # FreeBSD doesn't need this... - ;; *) - func_fatal_error "unknown suffix for \`$my_dlsyms'" + func_fatal_error "unknown suffix for '$my_dlsyms'" ;; esac else @@ -3565,6 +4885,32 @@ fi } +# func_cygming_gnu_implib_p ARG +# This predicate returns with zero status (TRUE) if +# ARG is a GNU/binutils-style import library. Returns +# with nonzero status (FALSE) otherwise. +func_cygming_gnu_implib_p () +{ + $debug_cmd + + func_to_tool_file "$1" func_convert_file_msys_to_w32 + func_cygming_gnu_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $EGREP ' (_head_[A-Za-z0-9_]+_[ad]l*|[A-Za-z0-9_]+_[ad]l*_iname)$'` + test -n "$func_cygming_gnu_implib_tmp" +} + +# func_cygming_ms_implib_p ARG +# This predicate returns with zero status (TRUE) if +# ARG is an MS-style import library. Returns +# with nonzero status (FALSE) otherwise. +func_cygming_ms_implib_p () +{ + $debug_cmd + + func_to_tool_file "$1" func_convert_file_msys_to_w32 + func_cygming_ms_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $GREP '_NULL_IMPORT_DESCRIPTOR'` + test -n "$func_cygming_ms_implib_tmp" +} + # func_win32_libid arg # return the library type of file 'arg' # @@ -3574,8 +4920,9 @@ # Despite the name, also deal with 64 bit binaries. func_win32_libid () { - $opt_debug - win32_libid_type="unknown" + $debug_cmd + + win32_libid_type=unknown win32_fileres=`file -L $1 2>/dev/null` case $win32_fileres in *ar\ archive\ import\ library*) # definitely import @@ -3585,16 +4932,29 @@ # Keep the egrep pattern in sync with the one in _LT_CHECK_MAGIC_METHOD. if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | $EGREP 'file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' >/dev/null; then - func_to_tool_file "$1" func_convert_file_msys_to_w32 - win32_nmres=`eval $NM -f posix -A \"$func_to_tool_file_result\" | - $SED -n -e ' + case $nm_interface in + "MS dumpbin") + if func_cygming_ms_implib_p "$1" || + func_cygming_gnu_implib_p "$1" + then + win32_nmres=import + else + win32_nmres= + fi + ;; + *) + func_to_tool_file "$1" func_convert_file_msys_to_w32 + win32_nmres=`eval $NM -f posix -A \"$func_to_tool_file_result\" | + $SED -n -e ' 1,100{ / I /{ - s,.*,import, + s|.*|import| p q } }'` + ;; + esac case $win32_nmres in import*) win32_libid_type="x86 archive import";; *) win32_libid_type="x86 archive static";; @@ -3626,7 +4986,8 @@ # $sharedlib_from_linklib_result func_cygming_dll_for_implib () { - $opt_debug + $debug_cmd + sharedlib_from_linklib_result=`$DLLTOOL --identify-strict --identify "$1"` } @@ -3643,7 +5004,8 @@ # specified import library. func_cygming_dll_for_implib_fallback_core () { - $opt_debug + $debug_cmd + match_literal=`$ECHO "$1" | $SED "$sed_make_literal_regex"` $OBJDUMP -s --section "$1" "$2" 2>/dev/null | $SED '/^Contents of section '"$match_literal"':/{ @@ -3679,8 +5041,8 @@ /./p' | # we now have a list, one entry per line, of the stringified # contents of the appropriate section of all members of the - # archive which possess that section. Heuristic: eliminate - # all those which have a first or second character that is + # archive that possess that section. Heuristic: eliminate + # all those that have a first or second character that is # a '.' (that is, objdump's representation of an unprintable # character.) This should work for all archives with less than # 0x302f exports -- but will fail for DLLs whose name actually @@ -3691,30 +5053,6 @@ $SED -e '/^\./d;/^.\./d;q' } -# func_cygming_gnu_implib_p ARG -# This predicate returns with zero status (TRUE) if -# ARG is a GNU/binutils-style import library. Returns -# with nonzero status (FALSE) otherwise. -func_cygming_gnu_implib_p () -{ - $opt_debug - func_to_tool_file "$1" func_convert_file_msys_to_w32 - func_cygming_gnu_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $EGREP ' (_head_[A-Za-z0-9_]+_[ad]l*|[A-Za-z0-9_]+_[ad]l*_iname)$'` - test -n "$func_cygming_gnu_implib_tmp" -} - -# func_cygming_ms_implib_p ARG -# This predicate returns with zero status (TRUE) if -# ARG is an MS-style import library. Returns -# with nonzero status (FALSE) otherwise. -func_cygming_ms_implib_p () -{ - $opt_debug - func_to_tool_file "$1" func_convert_file_msys_to_w32 - func_cygming_ms_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $GREP '_NULL_IMPORT_DESCRIPTOR'` - test -n "$func_cygming_ms_implib_tmp" -} - # func_cygming_dll_for_implib_fallback ARG # Platform-specific function to extract the # name of the DLL associated with the specified @@ -3728,16 +5066,17 @@ # $sharedlib_from_linklib_result func_cygming_dll_for_implib_fallback () { - $opt_debug - if func_cygming_gnu_implib_p "$1" ; then + $debug_cmd + + if func_cygming_gnu_implib_p "$1"; then # binutils import library sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$7' "$1"` - elif func_cygming_ms_implib_p "$1" ; then + elif func_cygming_ms_implib_p "$1"; then # ms-generated import library sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$6' "$1"` else # unknown - sharedlib_from_linklib_result="" + sharedlib_from_linklib_result= fi } @@ -3745,10 +5084,11 @@ # func_extract_an_archive dir oldlib func_extract_an_archive () { - $opt_debug - f_ex_an_ar_dir="$1"; shift - f_ex_an_ar_oldlib="$1" - if test "$lock_old_archive_extraction" = yes; then + $debug_cmd + + f_ex_an_ar_dir=$1; shift + f_ex_an_ar_oldlib=$1 + if test yes = "$lock_old_archive_extraction"; then lockfile=$f_ex_an_ar_oldlib.lock until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do func_echo "Waiting for $lockfile to be removed" @@ -3757,7 +5097,7 @@ fi func_show_eval "(cd \$f_ex_an_ar_dir && $AR x \"\$f_ex_an_ar_oldlib\")" \ 'stat=$?; rm -f "$lockfile"; exit $stat' - if test "$lock_old_archive_extraction" = yes; then + if test yes = "$lock_old_archive_extraction"; then $opt_dry_run || rm -f "$lockfile" fi if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then @@ -3771,22 +5111,23 @@ # func_extract_archives gentop oldlib ... func_extract_archives () { - $opt_debug - my_gentop="$1"; shift + $debug_cmd + + my_gentop=$1; shift my_oldlibs=${1+"$@"} - my_oldobjs="" - my_xlib="" - my_xabs="" - my_xdir="" + my_oldobjs= + my_xlib= + my_xabs= + my_xdir= for my_xlib in $my_oldlibs; do # Extract the objects. case $my_xlib in - [\\/]* | [A-Za-z]:[\\/]*) my_xabs="$my_xlib" ;; + [\\/]* | [A-Za-z]:[\\/]*) my_xabs=$my_xlib ;; *) my_xabs=`pwd`"/$my_xlib" ;; esac func_basename "$my_xlib" - my_xlib="$func_basename_result" + my_xlib=$func_basename_result my_xlib_u=$my_xlib while :; do case " $extracted_archives " in @@ -3798,7 +5139,7 @@ esac done extracted_archives="$extracted_archives $my_xlib_u" - my_xdir="$my_gentop/$my_xlib_u" + my_xdir=$my_gentop/$my_xlib_u func_mkdir_p "$my_xdir" @@ -3811,22 +5152,23 @@ cd $my_xdir || exit $? darwin_archive=$my_xabs darwin_curdir=`pwd` - darwin_base_archive=`basename "$darwin_archive"` + func_basename "$darwin_archive" + darwin_base_archive=$func_basename_result darwin_arches=`$LIPO -info "$darwin_archive" 2>/dev/null | $GREP Architectures 2>/dev/null || true` if test -n "$darwin_arches"; then darwin_arches=`$ECHO "$darwin_arches" | $SED -e 's/.*are://'` darwin_arch= func_verbose "$darwin_base_archive has multiple architectures $darwin_arches" - for darwin_arch in $darwin_arches ; do - func_mkdir_p "unfat-$$/${darwin_base_archive}-${darwin_arch}" - $LIPO -thin $darwin_arch -output "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}" "${darwin_archive}" - cd "unfat-$$/${darwin_base_archive}-${darwin_arch}" - func_extract_an_archive "`pwd`" "${darwin_base_archive}" + for darwin_arch in $darwin_arches; do + func_mkdir_p "unfat-$$/$darwin_base_archive-$darwin_arch" + $LIPO -thin $darwin_arch -output "unfat-$$/$darwin_base_archive-$darwin_arch/$darwin_base_archive" "$darwin_archive" + cd "unfat-$$/$darwin_base_archive-$darwin_arch" + func_extract_an_archive "`pwd`" "$darwin_base_archive" cd "$darwin_curdir" - $RM "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}" + $RM "unfat-$$/$darwin_base_archive-$darwin_arch/$darwin_base_archive" done # $darwin_arches ## Okay now we've a bunch of thin objects, gotta fatten them up :) - darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print | $SED -e "$basename" | sort -u` + darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print | $SED -e "$sed_basename" | sort -u` darwin_file= darwin_files= for darwin_file in $darwin_filelist; do @@ -3848,7 +5190,7 @@ my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | sort | $NL2SP` done - func_extract_archives_result="$my_oldobjs" + func_extract_archives_result=$my_oldobjs } @@ -3863,7 +5205,7 @@ # # ARG is the value that the WRAPPER_SCRIPT_BELONGS_IN_OBJDIR # variable will take. If 'yes', then the emitted script -# will assume that the directory in which it is stored is +# will assume that the directory where it is stored is # the $objdir directory. This is a cygwin/mingw-specific # behavior. func_emit_wrapper () @@ -3874,7 +5216,7 @@ #! $SHELL # $output - temporary wrapper script for $objdir/$outputname -# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION +# Generated by $PROGRAM (GNU $PACKAGE) $VERSION # # The $output program cannot be directly executed until all the libtool # libraries that it depends on are installed. @@ -3931,9 +5273,9 @@ # Very basic option parsing. These options are (a) specific to # the libtool wrapper, (b) are identical between the wrapper -# /script/ and the wrapper /executable/ which is used only on +# /script/ and the wrapper /executable/ that is used only on # windows platforms, and (c) all begin with the string "--lt-" -# (application programs are unlikely to have options which match +# (application programs are unlikely to have options that match # this pattern). # # There are only two supported options: --lt-debug and @@ -3966,7 +5308,7 @@ # Print the debug banner immediately: if test -n \"\$lt_option_debug\"; then - echo \"${outputname}:${output}:\${LINENO}: libtool wrapper (GNU $PACKAGE$TIMESTAMP) $VERSION\" 1>&2 + echo \"$outputname:$output:\$LINENO: libtool wrapper (GNU $PACKAGE) $VERSION\" 1>&2 fi } @@ -3977,7 +5319,7 @@ lt_dump_args_N=1; for lt_arg do - \$ECHO \"${outputname}:${output}:\${LINENO}: newargv[\$lt_dump_args_N]: \$lt_arg\" + \$ECHO \"$outputname:$output:\$LINENO: newargv[\$lt_dump_args_N]: \$lt_arg\" lt_dump_args_N=\`expr \$lt_dump_args_N + 1\` done } @@ -3991,7 +5333,7 @@ *-*-mingw | *-*-os2* | *-cegcc*) $ECHO "\ if test -n \"\$lt_option_debug\"; then - \$ECHO \"${outputname}:${output}:\${LINENO}: newargv[0]: \$progdir\\\\\$program\" 1>&2 + \$ECHO \"$outputname:$output:\$LINENO: newargv[0]: \$progdir\\\\\$program\" 1>&2 func_lt_dump_args \${1+\"\$@\"} 1>&2 fi exec \"\$progdir\\\\\$program\" \${1+\"\$@\"} @@ -4001,7 +5343,7 @@ *) $ECHO "\ if test -n \"\$lt_option_debug\"; then - \$ECHO \"${outputname}:${output}:\${LINENO}: newargv[0]: \$progdir/\$program\" 1>&2 + \$ECHO \"$outputname:$output:\$LINENO: newargv[0]: \$progdir/\$program\" 1>&2 func_lt_dump_args \${1+\"\$@\"} 1>&2 fi exec \"\$progdir/\$program\" \${1+\"\$@\"} @@ -4076,13 +5418,13 @@ test -n \"\$absdir\" && thisdir=\"\$absdir\" " - if test "$fast_install" = yes; then + if test yes = "$fast_install"; then $ECHO "\ program=lt-'$outputname'$exeext progdir=\"\$thisdir/$objdir\" if test ! -f \"\$progdir/\$program\" || - { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | ${SED} 1q\`; \\ + { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | $SED 1q\`; \\ test \"X\$file\" != \"X\$progdir/\$program\"; }; then file=\"\$\$-\$program\" @@ -4099,7 +5441,7 @@ if test -n \"\$relink_command\"; then if relink_command_output=\`eval \$relink_command 2>&1\`; then : else - $ECHO \"\$relink_command_output\" >&2 + \$ECHO \"\$relink_command_output\" >&2 $RM \"\$progdir/\$file\" exit 1 fi @@ -4134,7 +5476,7 @@ fi # Export our shlibpath_var if we have one. - if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then + if test yes = "$shlibpath_overrides_runpath" && test -n "$shlibpath_var" && test -n "$temp_rpath"; then $ECHO "\ # Add our own library path to $shlibpath_var $shlibpath_var=\"$temp_rpath\$$shlibpath_var\" @@ -4154,7 +5496,7 @@ fi else # The program doesn't exist. - \$ECHO \"\$0: error: \\\`\$progdir/\$program' does not exist\" 1>&2 + \$ECHO \"\$0: error: '\$progdir/\$program' does not exist\" 1>&2 \$ECHO \"This script is just a wrapper for \$program.\" 1>&2 \$ECHO \"See the $PACKAGE documentation for more information.\" 1>&2 exit 1 @@ -4173,7 +5515,7 @@ cat < #include +#define STREQ(s1, s2) (strcmp ((s1), (s2)) == 0) + /* declarations of non-ANSI functions */ -#if defined(__MINGW32__) +#if defined __MINGW32__ # ifdef __STRICT_ANSI__ int _putenv (const char *); # endif -#elif defined(__CYGWIN__) +#elif defined __CYGWIN__ # ifdef __STRICT_ANSI__ char *realpath (const char *, char *); int putenv (char *); int setenv (const char *, const char *, int); # endif -/* #elif defined (other platforms) ... */ +/* #elif defined other_platform || defined ... */ #endif /* portability defines, excluding path handling macros */ -#if defined(_MSC_VER) +#if defined _MSC_VER # define setmode _setmode # define stat _stat # define chmod _chmod # define getcwd _getcwd # define putenv _putenv # define S_IXUSR _S_IEXEC -# ifndef _INTPTR_T_DEFINED -# define _INTPTR_T_DEFINED -# define intptr_t int -# endif -#elif defined(__MINGW32__) +#elif defined __MINGW32__ # define setmode _setmode # define stat _stat # define chmod _chmod # define getcwd _getcwd # define putenv _putenv -#elif defined(__CYGWIN__) +#elif defined __CYGWIN__ # define HAVE_SETENV # define FOPEN_WB "wb" -/* #elif defined (other platforms) ... */ +/* #elif defined other platforms ... */ #endif -#if defined(PATH_MAX) +#if defined PATH_MAX # define LT_PATHMAX PATH_MAX -#elif defined(MAXPATHLEN) +#elif defined MAXPATHLEN # define LT_PATHMAX MAXPATHLEN #else # define LT_PATHMAX 1024 @@ -4267,8 +5607,8 @@ # define PATH_SEPARATOR ':' #endif -#if defined (_WIN32) || defined (__MSDOS__) || defined (__DJGPP__) || \ - defined (__OS2__) +#if defined _WIN32 || defined __MSDOS__ || defined __DJGPP__ || \ + defined __OS2__ # define HAVE_DOS_BASED_FILE_SYSTEM # define FOPEN_WB "wb" # ifndef DIR_SEPARATOR_2 @@ -4301,10 +5641,10 @@ #define XMALLOC(type, num) ((type *) xmalloc ((num) * sizeof(type))) #define XFREE(stale) do { \ - if (stale) { free ((void *) stale); stale = 0; } \ + if (stale) { free (stale); stale = 0; } \ } while (0) -#if defined(LT_DEBUGWRAPPER) +#if defined LT_DEBUGWRAPPER static int lt_debug = 1; #else static int lt_debug = 0; @@ -4333,11 +5673,16 @@ EOF cat < 0) && IS_PATH_SEPARATOR (new_value[len-1])) + size_t len = strlen (new_value); + while ((len > 0) && IS_PATH_SEPARATOR (new_value[len-1])) { - new_value[len-1] = '\0'; + new_value[--len] = '\0'; } lt_setenv (name, new_value); XFREE (new_value); @@ -5115,27 +6460,47 @@ # True if ARG is an import lib, as indicated by $file_magic_cmd func_win32_import_lib_p () { - $opt_debug + $debug_cmd + case `eval $file_magic_cmd \"\$1\" 2>/dev/null | $SED -e 10q` in *import*) : ;; *) false ;; esac } +# func_suncc_cstd_abi +# !!ONLY CALL THIS FOR SUN CC AFTER $compile_command IS FULLY EXPANDED!! +# Several compiler flags select an ABI that is incompatible with the +# Cstd library. Avoid specifying it if any are in CXXFLAGS. +func_suncc_cstd_abi () +{ + $debug_cmd + + case " $compile_command " in + *" -compat=g "*|*\ -std=c++[0-9][0-9]\ *|*" -library=stdcxx4 "*|*" -library=stlport4 "*) + suncc_use_cstd_abi=no + ;; + *) + suncc_use_cstd_abi=yes + ;; + esac +} + # func_mode_link arg... func_mode_link () { - $opt_debug + $debug_cmd + case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) # It is impossible to link a dll without this setting, and # we shouldn't force the makefile maintainer to figure out - # which system we are compiling for in order to pass an extra + # what system we are compiling for in order to pass an extra # flag for every libtool invocation. # allow_undefined=no # FIXME: Unfortunately, there are problems with the above when trying - # to make a dll which has undefined symbols, in which case not + # to make a dll that has undefined symbols, in which case not # even a static library is built. For now, we need to specify # -no-undefined on the libtool link line when we can be certain # that all symbols are satisfied, otherwise we get a static library. @@ -5179,10 +6544,11 @@ module=no no_install=no objs= + os2dllname= non_pic_objects= precious_files_regex= prefer_static_libs=no - preload=no + preload=false prev= prevarg= release= @@ -5194,7 +6560,7 @@ vinfo= vinfo_number=no weak_libs= - single_module="${wl}-single_module" + single_module=$wl-single_module func_infer_tag $base_compile # We need to know -static, to get the right output filenames. @@ -5202,15 +6568,15 @@ do case $arg in -shared) - test "$build_libtool_libs" != yes && \ - func_fatal_configuration "can not build a shared library" + test yes != "$build_libtool_libs" \ + && func_fatal_configuration "cannot build a shared library" build_old_libs=no break ;; -all-static | -static | -static-libtool-libs) case $arg in -all-static) - if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then + if test yes = "$build_libtool_libs" && test -z "$link_static_flag"; then func_warning "complete static linking is impossible in this configuration" fi if test -n "$link_static_flag"; then @@ -5243,7 +6609,7 @@ # Go through the arguments, transforming them on the way. while test "$#" -gt 0; do - arg="$1" + arg=$1 shift func_quote_for_eval "$arg" qarg=$func_quote_for_eval_unquoted_result @@ -5260,21 +6626,21 @@ case $prev in bindir) - bindir="$arg" + bindir=$arg prev= continue ;; dlfiles|dlprefiles) - if test "$preload" = no; then + $preload || { # Add the symbol object into the linking commands. func_append compile_command " @SYMFILE@" func_append finalize_command " @SYMFILE@" - preload=yes - fi + preload=: + } case $arg in *.la | *.lo) ;; # We handle these cases below. force) - if test "$dlself" = no; then + if test no = "$dlself"; then dlself=needless export_dynamic=yes fi @@ -5282,9 +6648,9 @@ continue ;; self) - if test "$prev" = dlprefiles; then + if test dlprefiles = "$prev"; then dlself=yes - elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then + elif test dlfiles = "$prev" && test yes != "$dlopen_self"; then dlself=yes else dlself=needless @@ -5294,7 +6660,7 @@ continue ;; *) - if test "$prev" = dlfiles; then + if test dlfiles = "$prev"; then func_append dlfiles " $arg" else func_append dlprefiles " $arg" @@ -5305,14 +6671,14 @@ esac ;; expsyms) - export_symbols="$arg" + export_symbols=$arg test -f "$arg" \ - || func_fatal_error "symbol file \`$arg' does not exist" + || func_fatal_error "symbol file '$arg' does not exist" prev= continue ;; expsyms_regex) - export_symbols_regex="$arg" + export_symbols_regex=$arg prev= continue ;; @@ -5330,7 +6696,13 @@ continue ;; inst_prefix) - inst_prefix_dir="$arg" + inst_prefix_dir=$arg + prev= + continue + ;; + mllvm) + # Clang does not use LLVM to link, so we can simply discard any + # '-mllvm $arg' options when doing the link step. prev= continue ;; @@ -5354,21 +6726,21 @@ if test -z "$pic_object" || test -z "$non_pic_object" || - test "$pic_object" = none && - test "$non_pic_object" = none; then - func_fatal_error "cannot find name of object for \`$arg'" + test none = "$pic_object" && + test none = "$non_pic_object"; then + func_fatal_error "cannot find name of object for '$arg'" fi # Extract subdirectory from the argument. func_dirname "$arg" "/" "" - xdir="$func_dirname_result" + xdir=$func_dirname_result - if test "$pic_object" != none; then + if test none != "$pic_object"; then # Prepend the subdirectory the object is found in. - pic_object="$xdir$pic_object" + pic_object=$xdir$pic_object - if test "$prev" = dlfiles; then - if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then + if test dlfiles = "$prev"; then + if test yes = "$build_libtool_libs" && test yes = "$dlopen_support"; then func_append dlfiles " $pic_object" prev= continue @@ -5379,7 +6751,7 @@ fi # CHECK ME: I think I busted this. -Ossama - if test "$prev" = dlprefiles; then + if test dlprefiles = "$prev"; then # Preload the old-style object. func_append dlprefiles " $pic_object" prev= @@ -5387,23 +6759,23 @@ # A PIC object. func_append libobjs " $pic_object" - arg="$pic_object" + arg=$pic_object fi # Non-PIC object. - if test "$non_pic_object" != none; then + if test none != "$non_pic_object"; then # Prepend the subdirectory the object is found in. - non_pic_object="$xdir$non_pic_object" + non_pic_object=$xdir$non_pic_object # A standard non-PIC object func_append non_pic_objects " $non_pic_object" - if test -z "$pic_object" || test "$pic_object" = none ; then - arg="$non_pic_object" + if test -z "$pic_object" || test none = "$pic_object"; then + arg=$non_pic_object fi else # If the PIC object exists, use it instead. # $xdir was prepended to $pic_object above. - non_pic_object="$pic_object" + non_pic_object=$pic_object func_append non_pic_objects " $non_pic_object" fi else @@ -5411,7 +6783,7 @@ if $opt_dry_run; then # Extract subdirectory from the argument. func_dirname "$arg" "/" "" - xdir="$func_dirname_result" + xdir=$func_dirname_result func_lo2o "$arg" pic_object=$xdir$objdir/$func_lo2o_result @@ -5419,24 +6791,29 @@ func_append libobjs " $pic_object" func_append non_pic_objects " $non_pic_object" else - func_fatal_error "\`$arg' is not a valid libtool object" + func_fatal_error "'$arg' is not a valid libtool object" fi fi done else - func_fatal_error "link input file \`$arg' does not exist" + func_fatal_error "link input file '$arg' does not exist" fi arg=$save_arg prev= continue ;; + os2dllname) + os2dllname=$arg + prev= + continue + ;; precious_regex) - precious_files_regex="$arg" + precious_files_regex=$arg prev= continue ;; release) - release="-$arg" + release=-$arg prev= continue ;; @@ -5448,7 +6825,7 @@ func_fatal_error "only absolute run-paths are allowed" ;; esac - if test "$prev" = rpath; then + if test rpath = "$prev"; then case "$rpath " in *" $arg "*) ;; *) func_append rpath " $arg" ;; @@ -5463,7 +6840,7 @@ continue ;; shrext) - shrext_cmds="$arg" + shrext_cmds=$arg prev= continue ;; @@ -5503,7 +6880,7 @@ esac fi # test -n "$prev" - prevarg="$arg" + prevarg=$arg case $arg in -all-static) @@ -5517,7 +6894,7 @@ -allow-undefined) # FIXME: remove this flag sometime in the future. - func_fatal_error "\`-allow-undefined' must not be used because it is the default" + func_fatal_error "'-allow-undefined' must not be used because it is the default" ;; -avoid-version) @@ -5549,7 +6926,7 @@ if test -n "$export_symbols" || test -n "$export_symbols_regex"; then func_fatal_error "more than one -exported-symbols argument is not allowed" fi - if test "X$arg" = "X-export-symbols"; then + if test X-export-symbols = "X$arg"; then prev=expsyms else prev=expsyms_regex @@ -5583,9 +6960,9 @@ func_stripname "-L" '' "$arg" if test -z "$func_stripname_result"; then if test "$#" -gt 0; then - func_fatal_error "require no space between \`-L' and \`$1'" + func_fatal_error "require no space between '-L' and '$1'" else - func_fatal_error "need path for \`-L' option" + func_fatal_error "need path for '-L' option" fi fi func_resolve_sysroot "$func_stripname_result" @@ -5596,8 +6973,8 @@ *) absdir=`cd "$dir" && pwd` test -z "$absdir" && \ - func_fatal_error "cannot determine absolute directory name of \`$dir'" - dir="$absdir" + func_fatal_error "cannot determine absolute directory name of '$dir'" + dir=$absdir ;; esac case "$deplibs " in @@ -5628,12 +7005,11 @@ esac ;; esac - deplibs="$deplibs $arg" continue ;; -l*) - if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then + if test X-lc = "X$arg" || test X-lm = "X$arg"; then case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc* | *-*-haiku*) # These systems don't actually have a C or math library (as such) @@ -5641,11 +7017,11 @@ ;; *-*-os2*) # These systems don't actually have a C library (as such) - test "X$arg" = "X-lc" && continue + test X-lc = "X$arg" && continue ;; - *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) + *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig*) # Do not include libc due to us having libc/libc_r. - test "X$arg" = "X-lc" && continue + test X-lc = "X$arg" && continue ;; *-*-rhapsody* | *-*-darwin1.[012]) # Rhapsody C and math libraries are in the System framework @@ -5654,16 +7030,16 @@ ;; *-*-sco3.2v5* | *-*-sco5v6*) # Causes problems with __ctype - test "X$arg" = "X-lc" && continue + test X-lc = "X$arg" && continue ;; *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) # Compiler inserts libc in the correct place for threads to work - test "X$arg" = "X-lc" && continue + test X-lc = "X$arg" && continue ;; esac - elif test "X$arg" = "X-lc_r"; then + elif test X-lc_r = "X$arg"; then case $host in - *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) + *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig*) # Do not include libc_r directly, use -pthread flag. continue ;; @@ -5673,6 +7049,11 @@ continue ;; + -mllvm) + prev=mllvm + continue + ;; + -module) module=yes continue @@ -5702,7 +7083,7 @@ ;; -multi_module) - single_module="${wl}-multi_module" + single_module=$wl-multi_module continue ;; @@ -5716,8 +7097,8 @@ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin* | *-cegcc*) # The PATH hackery in wrapper scripts is required on Windows # and Darwin in order for the loader to find any dlls it needs. - func_warning "\`-no-install' is ignored for $host" - func_warning "assuming \`-no-fast-install' instead" + func_warning "'-no-install' is ignored for $host" + func_warning "assuming '-no-fast-install' instead" fast_install=no ;; *) no_install=yes ;; @@ -5735,6 +7116,11 @@ continue ;; + -os2dllname) + prev=os2dllname + continue + ;; + -o) prev=output ;; -precious-files-regex) @@ -5822,14 +7208,14 @@ func_stripname '-Wc,' '' "$arg" args=$func_stripname_result arg= - save_ifs="$IFS"; IFS=',' + save_ifs=$IFS; IFS=, for flag in $args; do - IFS="$save_ifs" + IFS=$save_ifs func_quote_for_eval "$flag" func_append arg " $func_quote_for_eval_result" func_append compiler_flags " $func_quote_for_eval_result" done - IFS="$save_ifs" + IFS=$save_ifs func_stripname ' ' '' "$arg" arg=$func_stripname_result ;; @@ -5838,15 +7224,15 @@ func_stripname '-Wl,' '' "$arg" args=$func_stripname_result arg= - save_ifs="$IFS"; IFS=',' + save_ifs=$IFS; IFS=, for flag in $args; do - IFS="$save_ifs" + IFS=$save_ifs func_quote_for_eval "$flag" func_append arg " $wl$func_quote_for_eval_result" func_append compiler_flags " $wl$func_quote_for_eval_result" func_append linker_flags " $func_quote_for_eval_result" done - IFS="$save_ifs" + IFS=$save_ifs func_stripname ' ' '' "$arg" arg=$func_stripname_result ;; @@ -5869,7 +7255,7 @@ # -msg_* for osf cc -msg_*) func_quote_for_eval "$arg" - arg="$func_quote_for_eval_result" + arg=$func_quote_for_eval_result ;; # Flags to be passed through unchanged, with rationale: @@ -5881,25 +7267,46 @@ # -m*, -t[45]*, -txscale* architecture-specific flags for GCC # -F/path path to uninstalled frameworks, gcc on darwin # -p, -pg, --coverage, -fprofile-* profiling flags for GCC + # -fstack-protector* stack protector flags for GCC # @file GCC response files # -tp=* Portland pgcc target processor selection # --sysroot=* for sysroot support - # -O*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization + # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization + # -stdlib=* select c++ std lib with clang -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \ -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \ - -O*|-flto*|-fwhopr*|-fuse-linker-plugin) + -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*) func_quote_for_eval "$arg" - arg="$func_quote_for_eval_result" + arg=$func_quote_for_eval_result func_append compile_command " $arg" func_append finalize_command " $arg" func_append compiler_flags " $arg" continue ;; + -Z*) + if test os2 = "`expr $host : '.*\(os2\)'`"; then + # OS/2 uses -Zxxx to specify OS/2-specific options + compiler_flags="$compiler_flags $arg" + func_append compile_command " $arg" + func_append finalize_command " $arg" + case $arg in + -Zlinker | -Zstack) + prev=xcompiler + ;; + esac + continue + else + # Otherwise treat like 'Some other compiler flag' below + func_quote_for_eval "$arg" + arg=$func_quote_for_eval_result + fi + ;; + # Some other compiler flag. -* | +*) func_quote_for_eval "$arg" - arg="$func_quote_for_eval_result" + arg=$func_quote_for_eval_result ;; *.$objext) @@ -5920,21 +7327,21 @@ if test -z "$pic_object" || test -z "$non_pic_object" || - test "$pic_object" = none && - test "$non_pic_object" = none; then - func_fatal_error "cannot find name of object for \`$arg'" + test none = "$pic_object" && + test none = "$non_pic_object"; then + func_fatal_error "cannot find name of object for '$arg'" fi # Extract subdirectory from the argument. func_dirname "$arg" "/" "" - xdir="$func_dirname_result" + xdir=$func_dirname_result - if test "$pic_object" != none; then + test none = "$pic_object" || { # Prepend the subdirectory the object is found in. - pic_object="$xdir$pic_object" + pic_object=$xdir$pic_object - if test "$prev" = dlfiles; then - if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then + if test dlfiles = "$prev"; then + if test yes = "$build_libtool_libs" && test yes = "$dlopen_support"; then func_append dlfiles " $pic_object" prev= continue @@ -5945,7 +7352,7 @@ fi # CHECK ME: I think I busted this. -Ossama - if test "$prev" = dlprefiles; then + if test dlprefiles = "$prev"; then # Preload the old-style object. func_append dlprefiles " $pic_object" prev= @@ -5953,23 +7360,23 @@ # A PIC object. func_append libobjs " $pic_object" - arg="$pic_object" - fi + arg=$pic_object + } # Non-PIC object. - if test "$non_pic_object" != none; then + if test none != "$non_pic_object"; then # Prepend the subdirectory the object is found in. - non_pic_object="$xdir$non_pic_object" + non_pic_object=$xdir$non_pic_object # A standard non-PIC object func_append non_pic_objects " $non_pic_object" - if test -z "$pic_object" || test "$pic_object" = none ; then - arg="$non_pic_object" + if test -z "$pic_object" || test none = "$pic_object"; then + arg=$non_pic_object fi else # If the PIC object exists, use it instead. # $xdir was prepended to $pic_object above. - non_pic_object="$pic_object" + non_pic_object=$pic_object func_append non_pic_objects " $non_pic_object" fi else @@ -5977,7 +7384,7 @@ if $opt_dry_run; then # Extract subdirectory from the argument. func_dirname "$arg" "/" "" - xdir="$func_dirname_result" + xdir=$func_dirname_result func_lo2o "$arg" pic_object=$xdir$objdir/$func_lo2o_result @@ -5985,7 +7392,7 @@ func_append libobjs " $pic_object" func_append non_pic_objects " $non_pic_object" else - func_fatal_error "\`$arg' is not a valid libtool object" + func_fatal_error "'$arg' is not a valid libtool object" fi fi ;; @@ -6001,11 +7408,11 @@ # A libtool-controlled library. func_resolve_sysroot "$arg" - if test "$prev" = dlfiles; then + if test dlfiles = "$prev"; then # This library was specified with -dlopen. func_append dlfiles " $func_resolve_sysroot_result" prev= - elif test "$prev" = dlprefiles; then + elif test dlprefiles = "$prev"; then # The library was specified with -dlpreopen. func_append dlprefiles " $func_resolve_sysroot_result" prev= @@ -6020,7 +7427,7 @@ # Unknown arguments in both finalize_command and compile_command need # to be aesthetically quoted because they are evaled later. func_quote_for_eval "$arg" - arg="$func_quote_for_eval_result" + arg=$func_quote_for_eval_result ;; esac # arg @@ -6032,9 +7439,9 @@ done # argument parsing loop test -n "$prev" && \ - func_fatal_help "the \`$prevarg' option requires an argument" + func_fatal_help "the '$prevarg' option requires an argument" - if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then + if test yes = "$export_dynamic" && test -n "$export_dynamic_flag_spec"; then eval arg=\"$export_dynamic_flag_spec\" func_append compile_command " $arg" func_append finalize_command " $arg" @@ -6043,20 +7450,23 @@ oldlibs= # calculate the name of the file, without its directory func_basename "$output" - outputname="$func_basename_result" - libobjs_save="$libobjs" + outputname=$func_basename_result + libobjs_save=$libobjs if test -n "$shlibpath_var"; then # get the directories listed in $shlibpath_var - eval shlib_search_path=\`\$ECHO \"\${$shlibpath_var}\" \| \$SED \'s/:/ /g\'\` + eval shlib_search_path=\`\$ECHO \"\$$shlibpath_var\" \| \$SED \'s/:/ /g\'\` else shlib_search_path= fi eval sys_lib_search_path=\"$sys_lib_search_path_spec\" eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\" + # Definition is injected by LT_CONFIG during libtool generation. + func_munge_path_list sys_lib_dlsearch_path "$LT_SYS_LIBRARY_PATH" + func_dirname "$output" "/" "" - output_objdir="$func_dirname_result$objdir" + output_objdir=$func_dirname_result$objdir func_to_tool_file "$output_objdir/" tool_output_objdir=$func_to_tool_file_result # Create the object directory. @@ -6079,7 +7489,7 @@ # Find all interdependent deplibs by searching for libraries # that are linked more than once (e.g. -la -lb -la) for deplib in $deplibs; do - if $opt_preserve_dup_deps ; then + if $opt_preserve_dup_deps; then case "$libs " in *" $deplib "*) func_append specialdeplibs " $deplib" ;; esac @@ -6087,7 +7497,7 @@ func_append libs " $deplib" done - if test "$linkmode" = lib; then + if test lib = "$linkmode"; then libs="$predeps $libs $compiler_lib_search_path $postdeps" # Compute libraries that are listed more than once in $predeps @@ -6119,7 +7529,7 @@ case $file in *.la) ;; *) - func_fatal_help "libraries can \`-dlopen' only libtool libraries: $file" + func_fatal_help "libraries can '-dlopen' only libtool libraries: $file" ;; esac done @@ -6127,7 +7537,7 @@ prog) compile_deplibs= finalize_deplibs= - alldeplibs=no + alldeplibs=false newdlfiles= newdlprefiles= passes="conv scan dlopen dlpreopen link" @@ -6139,29 +7549,29 @@ for pass in $passes; do # The preopen pass in lib mode reverses $deplibs; put it back here # so that -L comes before libs that need it for instance... - if test "$linkmode,$pass" = "lib,link"; then + if test lib,link = "$linkmode,$pass"; then ## FIXME: Find the place where the list is rebuilt in the wrong ## order, and fix it there properly tmp_deplibs= for deplib in $deplibs; do tmp_deplibs="$deplib $tmp_deplibs" done - deplibs="$tmp_deplibs" + deplibs=$tmp_deplibs fi - if test "$linkmode,$pass" = "lib,link" || - test "$linkmode,$pass" = "prog,scan"; then - libs="$deplibs" + if test lib,link = "$linkmode,$pass" || + test prog,scan = "$linkmode,$pass"; then + libs=$deplibs deplibs= fi - if test "$linkmode" = prog; then + if test prog = "$linkmode"; then case $pass in - dlopen) libs="$dlfiles" ;; - dlpreopen) libs="$dlprefiles" ;; + dlopen) libs=$dlfiles ;; + dlpreopen) libs=$dlprefiles ;; link) libs="$deplibs %DEPLIBS% $dependency_libs" ;; esac fi - if test "$linkmode,$pass" = "lib,dlpreopen"; then + if test lib,dlpreopen = "$linkmode,$pass"; then # Collect and forward deplibs of preopened libtool libs for lib in $dlprefiles; do # Ignore non-libtool-libs @@ -6182,59 +7592,42 @@ esac done done - libs="$dlprefiles" + libs=$dlprefiles fi - if test "$pass" = dlopen; then + if test dlopen = "$pass"; then # Collect dlpreopened libraries - save_deplibs="$deplibs" + save_deplibs=$deplibs deplibs= fi for deplib in $libs; do lib= - found=no + found=false case $deplib in -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \ |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*) - if test "$linkmode,$pass" = "prog,link"; then + if test prog,link = "$linkmode,$pass"; then compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else func_append compiler_flags " $deplib" - fi - - case $linkmode in - lib) - deplibs="$deplib $deplibs" - test "$pass" = conv && continue - newdependency_libs="$deplib $newdependency_libs" - ;; - prog) - if test "$pass" = conv; then - deplibs="$deplib $deplibs" - continue - fi - if test "$pass" = scan; then - deplibs="$deplib $deplibs" - else - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" + if test lib = "$linkmode"; then + case "$new_inherited_linker_flags " in + *" $deplib "*) ;; + * ) func_append new_inherited_linker_flags " $deplib" ;; + esac fi - ;; - *) - ;; - esac # linkmode - + fi continue ;; -l*) - if test "$linkmode" != lib && test "$linkmode" != prog; then - func_warning "\`-l' is ignored for archives/objects" + if test lib != "$linkmode" && test prog != "$linkmode"; then + func_warning "'-l' is ignored for archives/objects" continue fi func_stripname '-l' '' "$deplib" name=$func_stripname_result - if test "$linkmode" = lib; then + if test lib = "$linkmode"; then searchdirs="$newlib_search_path $lib_search_path $compiler_lib_search_dirs $sys_lib_search_path $shlib_search_path" else searchdirs="$newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path" @@ -6242,31 +7635,22 @@ for searchdir in $searchdirs; do for search_ext in .la $std_shrext .so .a; do # Search the libtool library - lib="$searchdir/lib${name}${search_ext}" + lib=$searchdir/lib$name$search_ext if test -f "$lib"; then - if test "$search_ext" = ".la"; then - found=yes + if test .la = "$search_ext"; then + found=: else - found=no + found=false fi break 2 fi done done - if test "$found" != yes; then - # deplib doesn't seem to be a libtool library - if test "$linkmode,$pass" = "prog,link"; then - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - else - deplibs="$deplib $deplibs" - test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs" - fi - continue - else # deplib is a libtool library + if $found; then + # deplib is a libtool library # If $allow_libtool_libs_with_static_runtimes && $deplib is a stdlib, # We need to do some special things here, and not later. - if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then + if test yes = "$allow_libtool_libs_with_static_runtimes"; then case " $predeps $postdeps " in *" $deplib "*) if func_lalib_p "$lib"; then @@ -6274,19 +7658,19 @@ old_library= func_source "$lib" for l in $old_library $library_names; do - ll="$l" + ll=$l done - if test "X$ll" = "X$old_library" ; then # only static version available - found=no + if test "X$ll" = "X$old_library"; then # only static version available + found=false func_dirname "$lib" "" "." - ladir="$func_dirname_result" + ladir=$func_dirname_result lib=$ladir/$old_library - if test "$linkmode,$pass" = "prog,link"; then + if test prog,link = "$linkmode,$pass"; then compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else deplibs="$deplib $deplibs" - test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs" + test lib = "$linkmode" && newdependency_libs="$deplib $newdependency_libs" fi continue fi @@ -6295,15 +7679,25 @@ *) ;; esac fi + else + # deplib doesn't seem to be a libtool library + if test prog,link = "$linkmode,$pass"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + deplibs="$deplib $deplibs" + test lib = "$linkmode" && newdependency_libs="$deplib $newdependency_libs" + fi + continue fi ;; # -l *.ltframework) - if test "$linkmode,$pass" = "prog,link"; then + if test prog,link = "$linkmode,$pass"; then compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else deplibs="$deplib $deplibs" - if test "$linkmode" = lib ; then + if test lib = "$linkmode"; then case "$new_inherited_linker_flags " in *" $deplib "*) ;; * ) func_append new_inherited_linker_flags " $deplib" ;; @@ -6316,18 +7710,18 @@ case $linkmode in lib) deplibs="$deplib $deplibs" - test "$pass" = conv && continue + test conv = "$pass" && continue newdependency_libs="$deplib $newdependency_libs" func_stripname '-L' '' "$deplib" func_resolve_sysroot "$func_stripname_result" func_append newlib_search_path " $func_resolve_sysroot_result" ;; prog) - if test "$pass" = conv; then + if test conv = "$pass"; then deplibs="$deplib $deplibs" continue fi - if test "$pass" = scan; then + if test scan = "$pass"; then deplibs="$deplib $deplibs" else compile_deplibs="$deplib $compile_deplibs" @@ -6338,13 +7732,13 @@ func_append newlib_search_path " $func_resolve_sysroot_result" ;; *) - func_warning "\`-L' is ignored for archives/objects" + func_warning "'-L' is ignored for archives/objects" ;; esac # linkmode continue ;; # -L -R*) - if test "$pass" = link; then + if test link = "$pass"; then func_stripname '-R' '' "$deplib" func_resolve_sysroot "$func_stripname_result" dir=$func_resolve_sysroot_result @@ -6362,7 +7756,7 @@ lib=$func_resolve_sysroot_result ;; *.$libext) - if test "$pass" = conv; then + if test conv = "$pass"; then deplibs="$deplib $deplibs" continue fi @@ -6373,21 +7767,26 @@ case " $dlpreconveniencelibs " in *" $deplib "*) ;; *) - valid_a_lib=no + valid_a_lib=false case $deplibs_check_method in match_pattern*) set dummy $deplibs_check_method; shift match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"` if eval "\$ECHO \"$deplib\"" 2>/dev/null | $SED 10q \ | $EGREP "$match_pattern_regex" > /dev/null; then - valid_a_lib=yes + valid_a_lib=: fi ;; pass_all) - valid_a_lib=yes + valid_a_lib=: ;; esac - if test "$valid_a_lib" != yes; then + if $valid_a_lib; then + echo + $ECHO "*** Warning: Linking the shared library $output against the" + $ECHO "*** static library $deplib is not portable!" + deplibs="$deplib $deplibs" + else echo $ECHO "*** Warning: Trying to link with static lib archive $deplib." echo "*** I have the capability to make that library automatically link in when" @@ -6395,18 +7794,13 @@ echo "*** shared version of the library, which you do not appear to have" echo "*** because the file extensions .$libext of this argument makes me believe" echo "*** that it is just a static archive that I should not use here." - else - echo - $ECHO "*** Warning: Linking the shared library $output against the" - $ECHO "*** static library $deplib is not portable!" - deplibs="$deplib $deplibs" fi ;; esac continue ;; prog) - if test "$pass" != link; then + if test link != "$pass"; then deplibs="$deplib $deplibs" else compile_deplibs="$deplib $compile_deplibs" @@ -6417,10 +7811,10 @@ esac # linkmode ;; # *.$libext *.lo | *.$objext) - if test "$pass" = conv; then + if test conv = "$pass"; then deplibs="$deplib $deplibs" - elif test "$linkmode" = prog; then - if test "$pass" = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then + elif test prog = "$linkmode"; then + if test dlpreopen = "$pass" || test yes != "$dlopen_support" || test no = "$build_libtool_libs"; then # If there is no dlopen support or we're linking statically, # we need to preload. func_append newdlprefiles " $deplib" @@ -6433,22 +7827,20 @@ continue ;; %DEPLIBS%) - alldeplibs=yes + alldeplibs=: continue ;; esac # case $deplib - if test "$found" = yes || test -f "$lib"; then : - else - func_fatal_error "cannot find the library \`$lib' or unhandled argument \`$deplib'" - fi + $found || test -f "$lib" \ + || func_fatal_error "cannot find the library '$lib' or unhandled argument '$deplib'" # Check to see that this really is a libtool archive. func_lalib_unsafe_p "$lib" \ - || func_fatal_error "\`$lib' is not a valid libtool archive" + || func_fatal_error "'$lib' is not a valid libtool archive" func_dirname "$lib" "" "." - ladir="$func_dirname_result" + ladir=$func_dirname_result dlname= dlopen= @@ -6478,30 +7870,30 @@ done fi dependency_libs=`$ECHO " $dependency_libs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` - if test "$linkmode,$pass" = "lib,link" || - test "$linkmode,$pass" = "prog,scan" || - { test "$linkmode" != prog && test "$linkmode" != lib; }; then + if test lib,link = "$linkmode,$pass" || + test prog,scan = "$linkmode,$pass" || + { test prog != "$linkmode" && test lib != "$linkmode"; }; then test -n "$dlopen" && func_append dlfiles " $dlopen" test -n "$dlpreopen" && func_append dlprefiles " $dlpreopen" fi - if test "$pass" = conv; then + if test conv = "$pass"; then # Only check for convenience libraries deplibs="$lib $deplibs" if test -z "$libdir"; then if test -z "$old_library"; then - func_fatal_error "cannot find name of link library for \`$lib'" + func_fatal_error "cannot find name of link library for '$lib'" fi # It is a libtool convenience library, so add in its objects. func_append convenience " $ladir/$objdir/$old_library" func_append old_convenience " $ladir/$objdir/$old_library" - elif test "$linkmode" != prog && test "$linkmode" != lib; then - func_fatal_error "\`$lib' is not a convenience library" + elif test prog != "$linkmode" && test lib != "$linkmode"; then + func_fatal_error "'$lib' is not a convenience library" fi tmp_libs= for deplib in $dependency_libs; do deplibs="$deplib $deplibs" - if $opt_preserve_dup_deps ; then + if $opt_preserve_dup_deps; then case "$tmp_libs " in *" $deplib "*) func_append specialdeplibs " $deplib" ;; esac @@ -6515,26 +7907,26 @@ # Get the name of the library we link against. linklib= if test -n "$old_library" && - { test "$prefer_static_libs" = yes || - test "$prefer_static_libs,$installed" = "built,no"; }; then + { test yes = "$prefer_static_libs" || + test built,no = "$prefer_static_libs,$installed"; }; then linklib=$old_library else for l in $old_library $library_names; do - linklib="$l" + linklib=$l done fi if test -z "$linklib"; then - func_fatal_error "cannot find name of link library for \`$lib'" + func_fatal_error "cannot find name of link library for '$lib'" fi # This library was specified with -dlopen. - if test "$pass" = dlopen; then - if test -z "$libdir"; then - func_fatal_error "cannot -dlopen a convenience library: \`$lib'" - fi + if test dlopen = "$pass"; then + test -z "$libdir" \ + && func_fatal_error "cannot -dlopen a convenience library: '$lib'" if test -z "$dlname" || - test "$dlopen_support" != yes || - test "$build_libtool_libs" = no; then + test yes != "$dlopen_support" || + test no = "$build_libtool_libs" + then # If there is no dlname, no dlopen support or we're linking # statically, we need to preload. We also need to preload any # dependent libraries so libltdl's deplib preloader doesn't @@ -6548,40 +7940,40 @@ # We need an absolute path. case $ladir in - [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;; + [\\/]* | [A-Za-z]:[\\/]*) abs_ladir=$ladir ;; *) abs_ladir=`cd "$ladir" && pwd` if test -z "$abs_ladir"; then - func_warning "cannot determine absolute directory name of \`$ladir'" + func_warning "cannot determine absolute directory name of '$ladir'" func_warning "passing it literally to the linker, although it might fail" - abs_ladir="$ladir" + abs_ladir=$ladir fi ;; esac func_basename "$lib" - laname="$func_basename_result" + laname=$func_basename_result # Find the relevant object directory and library name. - if test "X$installed" = Xyes; then + if test yes = "$installed"; then if test ! -f "$lt_sysroot$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then - func_warning "library \`$lib' was moved." - dir="$ladir" - absdir="$abs_ladir" - libdir="$abs_ladir" + func_warning "library '$lib' was moved." + dir=$ladir + absdir=$abs_ladir + libdir=$abs_ladir else - dir="$lt_sysroot$libdir" - absdir="$lt_sysroot$libdir" + dir=$lt_sysroot$libdir + absdir=$lt_sysroot$libdir fi - test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes + test yes = "$hardcode_automatic" && avoidtemprpath=yes else if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then - dir="$ladir" - absdir="$abs_ladir" + dir=$ladir + absdir=$abs_ladir # Remove this search path later func_append notinst_path " $abs_ladir" else - dir="$ladir/$objdir" - absdir="$abs_ladir/$objdir" + dir=$ladir/$objdir + absdir=$abs_ladir/$objdir # Remove this search path later func_append notinst_path " $abs_ladir" fi @@ -6590,11 +7982,11 @@ name=$func_stripname_result # This library was specified with -dlpreopen. - if test "$pass" = dlpreopen; then - if test -z "$libdir" && test "$linkmode" = prog; then - func_fatal_error "only libraries may -dlpreopen a convenience library: \`$lib'" + if test dlpreopen = "$pass"; then + if test -z "$libdir" && test prog = "$linkmode"; then + func_fatal_error "only libraries may -dlpreopen a convenience library: '$lib'" fi - case "$host" in + case $host in # special handling for platforms with PE-DLLs. *cygwin* | *mingw* | *cegcc* ) # Linker will automatically link against shared library if both @@ -6638,9 +8030,9 @@ if test -z "$libdir"; then # Link the convenience library - if test "$linkmode" = lib; then + if test lib = "$linkmode"; then deplibs="$dir/$old_library $deplibs" - elif test "$linkmode,$pass" = "prog,link"; then + elif test prog,link = "$linkmode,$pass"; then compile_deplibs="$dir/$old_library $compile_deplibs" finalize_deplibs="$dir/$old_library $finalize_deplibs" else @@ -6650,14 +8042,14 @@ fi - if test "$linkmode" = prog && test "$pass" != link; then + if test prog = "$linkmode" && test link != "$pass"; then func_append newlib_search_path " $ladir" deplibs="$lib $deplibs" - linkalldeplibs=no - if test "$link_all_deplibs" != no || test -z "$library_names" || - test "$build_libtool_libs" = no; then - linkalldeplibs=yes + linkalldeplibs=false + if test no != "$link_all_deplibs" || test -z "$library_names" || + test no = "$build_libtool_libs"; then + linkalldeplibs=: fi tmp_libs= @@ -6669,14 +8061,14 @@ ;; esac # Need to link against all dependency_libs? - if test "$linkalldeplibs" = yes; then + if $linkalldeplibs; then deplibs="$deplib $deplibs" else # Need to hardcode shared library paths # or/and link against static libraries newdependency_libs="$deplib $newdependency_libs" fi - if $opt_preserve_dup_deps ; then + if $opt_preserve_dup_deps; then case "$tmp_libs " in *" $deplib "*) func_append specialdeplibs " $deplib" ;; esac @@ -6686,15 +8078,15 @@ continue fi # $linkmode = prog... - if test "$linkmode,$pass" = "prog,link"; then + if test prog,link = "$linkmode,$pass"; then if test -n "$library_names" && - { { test "$prefer_static_libs" = no || - test "$prefer_static_libs,$installed" = "built,yes"; } || + { { test no = "$prefer_static_libs" || + test built,yes = "$prefer_static_libs,$installed"; } || test -z "$old_library"; }; then # We need to hardcode the library path - if test -n "$shlibpath_var" && test -z "$avoidtemprpath" ; then + if test -n "$shlibpath_var" && test -z "$avoidtemprpath"; then # Make sure the rpath contains only unique directories. - case "$temp_rpath:" in + case $temp_rpath: in *"$absdir:"*) ;; *) func_append temp_rpath "$absdir:" ;; esac @@ -6723,9 +8115,9 @@ esac fi # $linkmode,$pass = prog,link... - if test "$alldeplibs" = yes && - { test "$deplibs_check_method" = pass_all || - { test "$build_libtool_libs" = yes && + if $alldeplibs && + { test pass_all = "$deplibs_check_method" || + { test yes = "$build_libtool_libs" && test -n "$library_names"; }; }; then # We only need to search for static libraries continue @@ -6734,19 +8126,19 @@ link_static=no # Whether the deplib will be linked statically use_static_libs=$prefer_static_libs - if test "$use_static_libs" = built && test "$installed" = yes; then + if test built = "$use_static_libs" && test yes = "$installed"; then use_static_libs=no fi if test -n "$library_names" && - { test "$use_static_libs" = no || test -z "$old_library"; }; then + { test no = "$use_static_libs" || test -z "$old_library"; }; then case $host in - *cygwin* | *mingw* | *cegcc*) + *cygwin* | *mingw* | *cegcc* | *os2*) # No point in relinking DLLs because paths are not encoded func_append notinst_deplibs " $lib" need_relink=no ;; *) - if test "$installed" = no; then + if test no = "$installed"; then func_append notinst_deplibs " $lib" need_relink=yes fi @@ -6756,24 +8148,24 @@ # Warn about portability, can't link against -module's on some # systems (darwin). Don't bleat about dlopened modules though! - dlopenmodule="" + dlopenmodule= for dlpremoduletest in $dlprefiles; do if test "X$dlpremoduletest" = "X$lib"; then - dlopenmodule="$dlpremoduletest" + dlopenmodule=$dlpremoduletest break fi done - if test -z "$dlopenmodule" && test "$shouldnotlink" = yes && test "$pass" = link; then + if test -z "$dlopenmodule" && test yes = "$shouldnotlink" && test link = "$pass"; then echo - if test "$linkmode" = prog; then + if test prog = "$linkmode"; then $ECHO "*** Warning: Linking the executable $output against the loadable module" else $ECHO "*** Warning: Linking the shared library $output against the loadable module" fi $ECHO "*** $linklib is not portable!" fi - if test "$linkmode" = lib && - test "$hardcode_into_libs" = yes; then + if test lib = "$linkmode" && + test yes = "$hardcode_into_libs"; then # Hardcode the library path. # Skip directories that are in the system default run-time # search path. @@ -6801,43 +8193,43 @@ # figure out the soname set dummy $library_names shift - realname="$1" + realname=$1 shift libname=`eval "\\$ECHO \"$libname_spec\""` # use dlname if we got it. it's perfectly good, no? if test -n "$dlname"; then - soname="$dlname" + soname=$dlname elif test -n "$soname_spec"; then # bleh windows case $host in - *cygwin* | mingw* | *cegcc*) + *cygwin* | mingw* | *cegcc* | *os2*) func_arith $current - $age major=$func_arith_result - versuffix="-$major" + versuffix=-$major ;; esac eval soname=\"$soname_spec\" else - soname="$realname" + soname=$realname fi # Make a new name for the extract_expsyms_cmds to use - soroot="$soname" + soroot=$soname func_basename "$soroot" - soname="$func_basename_result" + soname=$func_basename_result func_stripname 'lib' '.dll' "$soname" newlib=libimp-$func_stripname_result.a # If the library has no export list, then create one now if test -f "$output_objdir/$soname-def"; then : else - func_verbose "extracting exported symbol list from \`$soname'" + func_verbose "extracting exported symbol list from '$soname'" func_execute_cmds "$extract_expsyms_cmds" 'exit $?' fi # Create $newlib if test -f "$output_objdir/$newlib"; then :; else - func_verbose "generating import library for \`$soname'" + func_verbose "generating import library for '$soname'" func_execute_cmds "$old_archive_from_expsyms_cmds" 'exit $?' fi # make sure the library variables are pointing to the new library @@ -6845,58 +8237,58 @@ linklib=$newlib fi # test -n "$old_archive_from_expsyms_cmds" - if test "$linkmode" = prog || test "$opt_mode" != relink; then + if test prog = "$linkmode" || test relink != "$opt_mode"; then add_shlibpath= add_dir= add= lib_linked=yes case $hardcode_action in immediate | unsupported) - if test "$hardcode_direct" = no; then - add="$dir/$linklib" + if test no = "$hardcode_direct"; then + add=$dir/$linklib case $host in - *-*-sco3.2v5.0.[024]*) add_dir="-L$dir" ;; - *-*-sysv4*uw2*) add_dir="-L$dir" ;; + *-*-sco3.2v5.0.[024]*) add_dir=-L$dir ;; + *-*-sysv4*uw2*) add_dir=-L$dir ;; *-*-sysv5OpenUNIX* | *-*-sysv5UnixWare7.[01].[10]* | \ - *-*-unixware7*) add_dir="-L$dir" ;; + *-*-unixware7*) add_dir=-L$dir ;; *-*-darwin* ) - # if the lib is a (non-dlopened) module then we can not + # if the lib is a (non-dlopened) module then we cannot # link against it, someone is ignoring the earlier warnings if /usr/bin/file -L $add 2> /dev/null | - $GREP ": [^:]* bundle" >/dev/null ; then + $GREP ": [^:]* bundle" >/dev/null; then if test "X$dlopenmodule" != "X$lib"; then $ECHO "*** Warning: lib $linklib is a module, not a shared library" - if test -z "$old_library" ; then + if test -z "$old_library"; then echo echo "*** And there doesn't seem to be a static archive available" echo "*** The link will probably fail, sorry" else - add="$dir/$old_library" + add=$dir/$old_library fi elif test -n "$old_library"; then - add="$dir/$old_library" + add=$dir/$old_library fi fi esac - elif test "$hardcode_minus_L" = no; then + elif test no = "$hardcode_minus_L"; then case $host in - *-*-sunos*) add_shlibpath="$dir" ;; + *-*-sunos*) add_shlibpath=$dir ;; esac - add_dir="-L$dir" - add="-l$name" - elif test "$hardcode_shlibpath_var" = no; then - add_shlibpath="$dir" - add="-l$name" + add_dir=-L$dir + add=-l$name + elif test no = "$hardcode_shlibpath_var"; then + add_shlibpath=$dir + add=-l$name else lib_linked=no fi ;; relink) - if test "$hardcode_direct" = yes && - test "$hardcode_direct_absolute" = no; then - add="$dir/$linklib" - elif test "$hardcode_minus_L" = yes; then - add_dir="-L$absdir" + if test yes = "$hardcode_direct" && + test no = "$hardcode_direct_absolute"; then + add=$dir/$linklib + elif test yes = "$hardcode_minus_L"; then + add_dir=-L$absdir # Try looking first in the location we're being installed to. if test -n "$inst_prefix_dir"; then case $libdir in @@ -6905,10 +8297,10 @@ ;; esac fi - add="-l$name" - elif test "$hardcode_shlibpath_var" = yes; then - add_shlibpath="$dir" - add="-l$name" + add=-l$name + elif test yes = "$hardcode_shlibpath_var"; then + add_shlibpath=$dir + add=-l$name else lib_linked=no fi @@ -6916,7 +8308,7 @@ *) lib_linked=no ;; esac - if test "$lib_linked" != yes; then + if test yes != "$lib_linked"; then func_fatal_configuration "unsupported hardcode properties" fi @@ -6926,15 +8318,15 @@ *) func_append compile_shlibpath "$add_shlibpath:" ;; esac fi - if test "$linkmode" = prog; then + if test prog = "$linkmode"; then test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs" test -n "$add" && compile_deplibs="$add $compile_deplibs" else test -n "$add_dir" && deplibs="$add_dir $deplibs" test -n "$add" && deplibs="$add $deplibs" - if test "$hardcode_direct" != yes && - test "$hardcode_minus_L" != yes && - test "$hardcode_shlibpath_var" = yes; then + if test yes != "$hardcode_direct" && + test yes != "$hardcode_minus_L" && + test yes = "$hardcode_shlibpath_var"; then case :$finalize_shlibpath: in *":$libdir:"*) ;; *) func_append finalize_shlibpath "$libdir:" ;; @@ -6943,33 +8335,33 @@ fi fi - if test "$linkmode" = prog || test "$opt_mode" = relink; then + if test prog = "$linkmode" || test relink = "$opt_mode"; then add_shlibpath= add_dir= add= # Finalize command for both is simple: just hardcode it. - if test "$hardcode_direct" = yes && - test "$hardcode_direct_absolute" = no; then - add="$libdir/$linklib" - elif test "$hardcode_minus_L" = yes; then - add_dir="-L$libdir" - add="-l$name" - elif test "$hardcode_shlibpath_var" = yes; then + if test yes = "$hardcode_direct" && + test no = "$hardcode_direct_absolute"; then + add=$libdir/$linklib + elif test yes = "$hardcode_minus_L"; then + add_dir=-L$libdir + add=-l$name + elif test yes = "$hardcode_shlibpath_var"; then case :$finalize_shlibpath: in *":$libdir:"*) ;; *) func_append finalize_shlibpath "$libdir:" ;; esac - add="-l$name" - elif test "$hardcode_automatic" = yes; then + add=-l$name + elif test yes = "$hardcode_automatic"; then if test -n "$inst_prefix_dir" && - test -f "$inst_prefix_dir$libdir/$linklib" ; then - add="$inst_prefix_dir$libdir/$linklib" + test -f "$inst_prefix_dir$libdir/$linklib"; then + add=$inst_prefix_dir$libdir/$linklib else - add="$libdir/$linklib" + add=$libdir/$linklib fi else # We cannot seem to hardcode it, guess we'll fake it. - add_dir="-L$libdir" + add_dir=-L$libdir # Try looking first in the location we're being installed to. if test -n "$inst_prefix_dir"; then case $libdir in @@ -6978,10 +8370,10 @@ ;; esac fi - add="-l$name" + add=-l$name fi - if test "$linkmode" = prog; then + if test prog = "$linkmode"; then test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs" test -n "$add" && finalize_deplibs="$add $finalize_deplibs" else @@ -6989,43 +8381,43 @@ test -n "$add" && deplibs="$add $deplibs" fi fi - elif test "$linkmode" = prog; then + elif test prog = "$linkmode"; then # Here we assume that one of hardcode_direct or hardcode_minus_L # is not unsupported. This is valid on all known static and # shared platforms. - if test "$hardcode_direct" != unsupported; then - test -n "$old_library" && linklib="$old_library" + if test unsupported != "$hardcode_direct"; then + test -n "$old_library" && linklib=$old_library compile_deplibs="$dir/$linklib $compile_deplibs" finalize_deplibs="$dir/$linklib $finalize_deplibs" else compile_deplibs="-l$name -L$dir $compile_deplibs" finalize_deplibs="-l$name -L$dir $finalize_deplibs" fi - elif test "$build_libtool_libs" = yes; then + elif test yes = "$build_libtool_libs"; then # Not a shared library - if test "$deplibs_check_method" != pass_all; then + if test pass_all != "$deplibs_check_method"; then # We're trying link a shared library against a static one # but the system doesn't support it. # Just print a warning and add the library to dependency_libs so # that the program can be linked against the static library. echo - $ECHO "*** Warning: This system can not link to static lib archive $lib." + $ECHO "*** Warning: This system cannot link to static lib archive $lib." echo "*** I have the capability to make that library automatically link in when" echo "*** you link to this library. But I can only do this if you have a" echo "*** shared version of the library, which you do not appear to have." - if test "$module" = yes; then + if test yes = "$module"; then echo "*** But as you try to build a module library, libtool will still create " echo "*** a static module, that should work as long as the dlopening application" echo "*** is linked with the -dlopen flag to resolve symbols at runtime." if test -z "$global_symbol_pipe"; then echo echo "*** However, this would only work if libtool was able to extract symbol" - echo "*** lists from a program, using \`nm' or equivalent, but libtool could" + echo "*** lists from a program, using 'nm' or equivalent, but libtool could" echo "*** not find such a program. So, this module is probably useless." - echo "*** \`nm' from GNU binutils and a full rebuild may help." + echo "*** 'nm' from GNU binutils and a full rebuild may help." fi - if test "$build_old_libs" = no; then + if test no = "$build_old_libs"; then build_libtool_libs=module build_old_libs=yes else @@ -7038,11 +8430,11 @@ fi fi # link shared/static library? - if test "$linkmode" = lib; then + if test lib = "$linkmode"; then if test -n "$dependency_libs" && - { test "$hardcode_into_libs" != yes || - test "$build_old_libs" = yes || - test "$link_static" = yes; }; then + { test yes != "$hardcode_into_libs" || + test yes = "$build_old_libs" || + test yes = "$link_static"; }; then # Extract -R from dependency_libs temp_deplibs= for libdir in $dependency_libs; do @@ -7056,12 +8448,12 @@ *) func_append temp_deplibs " $libdir";; esac done - dependency_libs="$temp_deplibs" + dependency_libs=$temp_deplibs fi func_append newlib_search_path " $absdir" # Link against this library - test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs" + test no = "$link_static" && newdependency_libs="$abs_ladir/$laname $newdependency_libs" # ... and its dependency_libs tmp_libs= for deplib in $dependency_libs; do @@ -7071,7 +8463,7 @@ func_resolve_sysroot "$func_stripname_result";; *) func_resolve_sysroot "$deplib" ;; esac - if $opt_preserve_dup_deps ; then + if $opt_preserve_dup_deps; then case "$tmp_libs " in *" $func_resolve_sysroot_result "*) func_append specialdeplibs " $func_resolve_sysroot_result" ;; @@ -7080,12 +8472,12 @@ func_append tmp_libs " $func_resolve_sysroot_result" done - if test "$link_all_deplibs" != no; then + if test no != "$link_all_deplibs"; then # Add the search paths of all dependency libraries for deplib in $dependency_libs; do path= case $deplib in - -L*) path="$deplib" ;; + -L*) path=$deplib ;; *.la) func_resolve_sysroot "$deplib" deplib=$func_resolve_sysroot_result @@ -7093,12 +8485,12 @@ dir=$func_dirname_result # We need an absolute path. case $dir in - [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;; + [\\/]* | [A-Za-z]:[\\/]*) absdir=$dir ;; *) absdir=`cd "$dir" && pwd` if test -z "$absdir"; then - func_warning "cannot determine absolute directory name of \`$dir'" - absdir="$dir" + func_warning "cannot determine absolute directory name of '$dir'" + absdir=$dir fi ;; esac @@ -7106,35 +8498,35 @@ case $host in *-*-darwin*) depdepl= - eval deplibrary_names=`${SED} -n -e 's/^library_names=\(.*\)$/\1/p' $deplib` - if test -n "$deplibrary_names" ; then - for tmp in $deplibrary_names ; do + eval deplibrary_names=`$SED -n -e 's/^library_names=\(.*\)$/\1/p' $deplib` + if test -n "$deplibrary_names"; then + for tmp in $deplibrary_names; do depdepl=$tmp done - if test -f "$absdir/$objdir/$depdepl" ; then - depdepl="$absdir/$objdir/$depdepl" - darwin_install_name=`${OTOOL} -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` + if test -f "$absdir/$objdir/$depdepl"; then + depdepl=$absdir/$objdir/$depdepl + darwin_install_name=`$OTOOL -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` if test -z "$darwin_install_name"; then - darwin_install_name=`${OTOOL64} -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` + darwin_install_name=`$OTOOL64 -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` fi - func_append compiler_flags " ${wl}-dylib_file ${wl}${darwin_install_name}:${depdepl}" - func_append linker_flags " -dylib_file ${darwin_install_name}:${depdepl}" + func_append compiler_flags " $wl-dylib_file $wl$darwin_install_name:$depdepl" + func_append linker_flags " -dylib_file $darwin_install_name:$depdepl" path= fi fi ;; *) - path="-L$absdir/$objdir" + path=-L$absdir/$objdir ;; esac else - eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` + eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` test -z "$libdir" && \ - func_fatal_error "\`$deplib' is not a valid libtool archive" + func_fatal_error "'$deplib' is not a valid libtool archive" test "$absdir" != "$libdir" && \ - func_warning "\`$deplib' seems to be moved" + func_warning "'$deplib' seems to be moved" - path="-L$absdir" + path=-L$absdir fi ;; esac @@ -7146,23 +8538,23 @@ fi # link_all_deplibs != no fi # linkmode = lib done # for deplib in $libs - if test "$pass" = link; then - if test "$linkmode" = "prog"; then + if test link = "$pass"; then + if test prog = "$linkmode"; then compile_deplibs="$new_inherited_linker_flags $compile_deplibs" finalize_deplibs="$new_inherited_linker_flags $finalize_deplibs" else compiler_flags="$compiler_flags "`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` fi fi - dependency_libs="$newdependency_libs" - if test "$pass" = dlpreopen; then + dependency_libs=$newdependency_libs + if test dlpreopen = "$pass"; then # Link the dlpreopened libraries before other libraries for deplib in $save_deplibs; do deplibs="$deplib $deplibs" done fi - if test "$pass" != dlopen; then - if test "$pass" != conv; then + if test dlopen != "$pass"; then + test conv = "$pass" || { # Make sure lib_search_path contains only unique directories. lib_search_path= for dir in $newlib_search_path; do @@ -7172,12 +8564,12 @@ esac done newlib_search_path= - fi + } - if test "$linkmode,$pass" != "prog,link"; then - vars="deplibs" - else + if test prog,link = "$linkmode,$pass"; then vars="compile_deplibs finalize_deplibs" + else + vars=deplibs fi for var in $vars dependency_libs; do # Add libraries to $var in reverse order @@ -7235,62 +8627,93 @@ eval $var=\"$tmp_libs\" done # for var fi + + # Add Sun CC postdeps if required: + test CXX = "$tagname" && { + case $host_os in + linux*) + case `$CC -V 2>&1 | sed 5q` in + *Sun\ C*) # Sun C++ 5.9 + func_suncc_cstd_abi + + if test no != "$suncc_use_cstd_abi"; then + func_append postdeps ' -library=Cstd -library=Crun' + fi + ;; + esac + ;; + + solaris*) + func_cc_basename "$CC" + case $func_cc_basename_result in + CC* | sunCC*) + func_suncc_cstd_abi + + if test no != "$suncc_use_cstd_abi"; then + func_append postdeps ' -library=Cstd -library=Crun' + fi + ;; + esac + ;; + esac + } + # Last step: remove runtime libs from dependency_libs # (they stay in deplibs) tmp_libs= - for i in $dependency_libs ; do + for i in $dependency_libs; do case " $predeps $postdeps $compiler_lib_search_path " in *" $i "*) - i="" + i= ;; esac - if test -n "$i" ; then + if test -n "$i"; then func_append tmp_libs " $i" fi done dependency_libs=$tmp_libs done # for pass - if test "$linkmode" = prog; then - dlfiles="$newdlfiles" + if test prog = "$linkmode"; then + dlfiles=$newdlfiles fi - if test "$linkmode" = prog || test "$linkmode" = lib; then - dlprefiles="$newdlprefiles" + if test prog = "$linkmode" || test lib = "$linkmode"; then + dlprefiles=$newdlprefiles fi case $linkmode in oldlib) - if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then - func_warning "\`-dlopen' is ignored for archives" + if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then + func_warning "'-dlopen' is ignored for archives" fi case " $deplibs" in *\ -l* | *\ -L*) - func_warning "\`-l' and \`-L' are ignored for archives" ;; + func_warning "'-l' and '-L' are ignored for archives" ;; esac test -n "$rpath" && \ - func_warning "\`-rpath' is ignored for archives" + func_warning "'-rpath' is ignored for archives" test -n "$xrpath" && \ - func_warning "\`-R' is ignored for archives" + func_warning "'-R' is ignored for archives" test -n "$vinfo" && \ - func_warning "\`-version-info/-version-number' is ignored for archives" + func_warning "'-version-info/-version-number' is ignored for archives" test -n "$release" && \ - func_warning "\`-release' is ignored for archives" + func_warning "'-release' is ignored for archives" test -n "$export_symbols$export_symbols_regex" && \ - func_warning "\`-export-symbols' is ignored for archives" + func_warning "'-export-symbols' is ignored for archives" # Now set the variables for building old libraries. build_libtool_libs=no - oldlibs="$output" + oldlibs=$output func_append objs "$old_deplibs" ;; lib) - # Make sure we only generate libraries of the form `libNAME.la'. + # Make sure we only generate libraries of the form 'libNAME.la'. case $outputname in lib*) func_stripname 'lib' '.la' "$outputname" @@ -7299,10 +8722,10 @@ eval libname=\"$libname_spec\" ;; *) - test "$module" = no && \ - func_fatal_help "libtool library \`$output' must begin with \`lib'" + test no = "$module" \ + && func_fatal_help "libtool library '$output' must begin with 'lib'" - if test "$need_lib_prefix" != no; then + if test no != "$need_lib_prefix"; then # Add the "lib" prefix for modules if required func_stripname '' '.la' "$outputname" name=$func_stripname_result @@ -7316,8 +8739,8 @@ esac if test -n "$objs"; then - if test "$deplibs_check_method" != pass_all; then - func_fatal_error "cannot build libtool library \`$output' from non-libtool objects on this host:$objs" + if test pass_all != "$deplibs_check_method"; then + func_fatal_error "cannot build libtool library '$output' from non-libtool objects on this host:$objs" else echo $ECHO "*** Warning: Linking the shared library $output against the non-libtool" @@ -7326,21 +8749,21 @@ fi fi - test "$dlself" != no && \ - func_warning "\`-dlopen self' is ignored for libtool libraries" + test no = "$dlself" \ + || func_warning "'-dlopen self' is ignored for libtool libraries" set dummy $rpath shift - test "$#" -gt 1 && \ - func_warning "ignoring multiple \`-rpath's for a libtool library" + test 1 -lt "$#" \ + && func_warning "ignoring multiple '-rpath's for a libtool library" - install_libdir="$1" + install_libdir=$1 oldlibs= if test -z "$rpath"; then - if test "$build_libtool_libs" = yes; then + if test yes = "$build_libtool_libs"; then # Building a libtool convenience library. - # Some compilers have problems with a `.al' extension so + # Some compilers have problems with a '.al' extension so # convenience libraries should have the same extension an # archive normally would. oldlibs="$output_objdir/$libname.$libext $oldlibs" @@ -7349,20 +8772,20 @@ fi test -n "$vinfo" && \ - func_warning "\`-version-info/-version-number' is ignored for convenience libraries" + func_warning "'-version-info/-version-number' is ignored for convenience libraries" test -n "$release" && \ - func_warning "\`-release' is ignored for convenience libraries" + func_warning "'-release' is ignored for convenience libraries" else # Parse the version information argument. - save_ifs="$IFS"; IFS=':' + save_ifs=$IFS; IFS=: set dummy $vinfo 0 0 0 shift - IFS="$save_ifs" + IFS=$save_ifs test -n "$7" && \ - func_fatal_help "too many parameters to \`-version-info'" + func_fatal_help "too many parameters to '-version-info'" # convert absolute version numbers to libtool ages # this retains compatibility with .la files and attempts @@ -7370,42 +8793,42 @@ case $vinfo_number in yes) - number_major="$1" - number_minor="$2" - number_revision="$3" + number_major=$1 + number_minor=$2 + number_revision=$3 # # There are really only two kinds -- those that # use the current revision as the major version # and those that subtract age and use age as # a minor version. But, then there is irix - # which has an extra 1 added just for fun + # that has an extra 1 added just for fun # case $version_type in # correct linux to gnu/linux during the next big refactor - darwin|linux|osf|windows|none) + darwin|freebsd-elf|linux|osf|windows|none) func_arith $number_major + $number_minor current=$func_arith_result - age="$number_minor" - revision="$number_revision" + age=$number_minor + revision=$number_revision ;; - freebsd-aout|freebsd-elf|qnx|sunos) - current="$number_major" - revision="$number_minor" - age="0" + freebsd-aout|qnx|sunos) + current=$number_major + revision=$number_minor + age=0 ;; irix|nonstopux) func_arith $number_major + $number_minor current=$func_arith_result - age="$number_minor" - revision="$number_minor" + age=$number_minor + revision=$number_minor lt_irix_increment=no ;; esac ;; no) - current="$1" - revision="$2" - age="$3" + current=$1 + revision=$2 + age=$3 ;; esac @@ -7413,30 +8836,30 @@ case $current in 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; *) - func_error "CURRENT \`$current' must be a nonnegative integer" - func_fatal_error "\`$vinfo' is not valid version information" + func_error "CURRENT '$current' must be a nonnegative integer" + func_fatal_error "'$vinfo' is not valid version information" ;; esac case $revision in 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; *) - func_error "REVISION \`$revision' must be a nonnegative integer" - func_fatal_error "\`$vinfo' is not valid version information" + func_error "REVISION '$revision' must be a nonnegative integer" + func_fatal_error "'$vinfo' is not valid version information" ;; esac case $age in 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; *) - func_error "AGE \`$age' must be a nonnegative integer" - func_fatal_error "\`$vinfo' is not valid version information" + func_error "AGE '$age' must be a nonnegative integer" + func_fatal_error "'$vinfo' is not valid version information" ;; esac if test "$age" -gt "$current"; then - func_error "AGE \`$age' is greater than the current interface number \`$current'" - func_fatal_error "\`$vinfo' is not valid version information" + func_error "AGE '$age' is greater than the current interface number '$current'" + func_fatal_error "'$vinfo' is not valid version information" fi # Calculate the version variables. @@ -7451,26 +8874,36 @@ # verstring for coding it into the library header func_arith $current - $age major=.$func_arith_result - versuffix="$major.$age.$revision" + versuffix=$major.$age.$revision # Darwin ld doesn't like 0 for these options... func_arith $current + 1 minor_current=$func_arith_result - xlcverstring="${wl}-compatibility_version ${wl}$minor_current ${wl}-current_version ${wl}$minor_current.$revision" + xlcverstring="$wl-compatibility_version $wl$minor_current $wl-current_version $wl$minor_current.$revision" verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" + # On Darwin other compilers + case $CC in + nagfor*) + verstring="$wl-compatibility_version $wl$minor_current $wl-current_version $wl$minor_current.$revision" + ;; + *) + verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" + ;; + esac ;; freebsd-aout) - major=".$current" - versuffix=".$current.$revision"; + major=.$current + versuffix=.$current.$revision ;; freebsd-elf) - major=".$current" - versuffix=".$current" + func_arith $current - $age + major=.$func_arith_result + versuffix=$major.$age.$revision ;; irix | nonstopux) - if test "X$lt_irix_increment" = "Xno"; then + if test no = "$lt_irix_increment"; then func_arith $current - $age else func_arith $current - $age + 1 @@ -7481,69 +8914,74 @@ nonstopux) verstring_prefix=nonstopux ;; *) verstring_prefix=sgi ;; esac - verstring="$verstring_prefix$major.$revision" + verstring=$verstring_prefix$major.$revision # Add in all the interfaces that we are compatible with. loop=$revision - while test "$loop" -ne 0; do + while test 0 -ne "$loop"; do func_arith $revision - $loop iface=$func_arith_result func_arith $loop - 1 loop=$func_arith_result - verstring="$verstring_prefix$major.$iface:$verstring" + verstring=$verstring_prefix$major.$iface:$verstring done - # Before this point, $major must not contain `.'. + # Before this point, $major must not contain '.'. major=.$major - versuffix="$major.$revision" + versuffix=$major.$revision ;; linux) # correct to gnu/linux during the next big refactor func_arith $current - $age major=.$func_arith_result - versuffix="$major.$age.$revision" + versuffix=$major.$age.$revision ;; osf) func_arith $current - $age major=.$func_arith_result - versuffix=".$current.$age.$revision" - verstring="$current.$age.$revision" + versuffix=.$current.$age.$revision + verstring=$current.$age.$revision # Add in all the interfaces that we are compatible with. loop=$age - while test "$loop" -ne 0; do + while test 0 -ne "$loop"; do func_arith $current - $loop iface=$func_arith_result func_arith $loop - 1 loop=$func_arith_result - verstring="$verstring:${iface}.0" + verstring=$verstring:$iface.0 done # Make executables depend on our current version. - func_append verstring ":${current}.0" + func_append verstring ":$current.0" ;; qnx) - major=".$current" - versuffix=".$current" + major=.$current + versuffix=.$current + ;; + + sco) + major=.$current + versuffix=.$current ;; sunos) - major=".$current" - versuffix=".$current.$revision" + major=.$current + versuffix=.$current.$revision ;; windows) # Use '-' rather than '.', since we only want one - # extension on DOS 8.3 filesystems. + # extension on DOS 8.3 file systems. func_arith $current - $age major=$func_arith_result - versuffix="-$major" + versuffix=-$major ;; *) - func_fatal_configuration "unknown library version type \`$version_type'" + func_fatal_configuration "unknown library version type '$version_type'" ;; esac @@ -7557,42 +8995,45 @@ verstring= ;; *) - verstring="0.0" + verstring=0.0 ;; esac - if test "$need_version" = no; then + if test no = "$need_version"; then versuffix= else - versuffix=".0.0" + versuffix=.0.0 fi fi # Remove version info from name if versioning should be avoided - if test "$avoid_version" = yes && test "$need_version" = no; then + if test yes,no = "$avoid_version,$need_version"; then major= versuffix= - verstring="" + verstring= fi # Check to see if the archive will have undefined symbols. - if test "$allow_undefined" = yes; then - if test "$allow_undefined_flag" = unsupported; then - func_warning "undefined symbols not allowed in $host shared libraries" - build_libtool_libs=no - build_old_libs=yes + if test yes = "$allow_undefined"; then + if test unsupported = "$allow_undefined_flag"; then + if test yes = "$build_old_libs"; then + func_warning "undefined symbols not allowed in $host shared libraries; building static only" + build_libtool_libs=no + else + func_fatal_error "can't build $host shared library unless -no-undefined is specified" + fi fi else # Don't allow undefined symbols. - allow_undefined_flag="$no_undefined_flag" + allow_undefined_flag=$no_undefined_flag fi fi - func_generate_dlsyms "$libname" "$libname" "yes" + func_generate_dlsyms "$libname" "$libname" : func_append libobjs " $symfileobj" - test "X$libobjs" = "X " && libobjs= + test " " = "$libobjs" && libobjs= - if test "$opt_mode" != relink; then + if test relink != "$opt_mode"; then # Remove our outputs, but don't remove object files since they # may have been created when compiling PIC objects. removelist= @@ -7601,8 +9042,8 @@ case $p in *.$objext | *.gcno) ;; - $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/${libname}${release}.*) - if test "X$precious_files_regex" != "X"; then + $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/$libname$release.*) + if test -n "$precious_files_regex"; then if $ECHO "$p" | $EGREP -e "$precious_files_regex" >/dev/null 2>&1 then continue @@ -7618,11 +9059,11 @@ fi # Now set the variables for building old libraries. - if test "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; then + if test yes = "$build_old_libs" && test convenience != "$build_libtool_libs"; then func_append oldlibs " $output_objdir/$libname.$libext" # Transform .lo files to .o files. - oldobjs="$objs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.${libext}$/d; $lo2o" | $NL2SP` + oldobjs="$objs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.$libext$/d; $lo2o" | $NL2SP` fi # Eliminate all temporary directories. @@ -7643,13 +9084,13 @@ *) func_append finalize_rpath " $libdir" ;; esac done - if test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes; then + if test yes != "$hardcode_into_libs" || test yes = "$build_old_libs"; then dependency_libs="$temp_xrpath $dependency_libs" fi fi # Make sure dlfiles contains only unique files that won't be dlpreopened - old_dlfiles="$dlfiles" + old_dlfiles=$dlfiles dlfiles= for lib in $old_dlfiles; do case " $dlprefiles $dlfiles " in @@ -7659,7 +9100,7 @@ done # Make sure dlprefiles contains only unique files - old_dlprefiles="$dlprefiles" + old_dlprefiles=$dlprefiles dlprefiles= for lib in $old_dlprefiles; do case "$dlprefiles " in @@ -7668,7 +9109,7 @@ esac done - if test "$build_libtool_libs" = yes; then + if test yes = "$build_libtool_libs"; then if test -n "$rpath"; then case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc* | *-*-haiku*) @@ -7692,7 +9133,7 @@ ;; *) # Add libc to deplibs on all other systems if necessary. - if test "$build_libtool_need_lc" = "yes"; then + if test yes = "$build_libtool_need_lc"; then func_append deplibs " -lc" fi ;; @@ -7708,9 +9149,9 @@ # I'm not sure if I'm treating the release correctly. I think # release should show up in the -l (ie -lgmp5) so we don't want to # add it in twice. Is that correct? - release="" - versuffix="" - major="" + release= + versuffix= + major= newdeplibs= droppeddeps=no case $deplibs_check_method in @@ -7739,20 +9180,20 @@ -l*) func_stripname -l '' "$i" name=$func_stripname_result - if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then + if test yes = "$allow_libtool_libs_with_static_runtimes"; then case " $predeps $postdeps " in *" $i "*) func_append newdeplibs " $i" - i="" + i= ;; esac fi - if test -n "$i" ; then + if test -n "$i"; then libname=`eval "\\$ECHO \"$libname_spec\""` deplib_matches=`eval "\\$ECHO \"$library_names_spec\""` set dummy $deplib_matches; shift deplib_match=$1 - if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then + if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0; then func_append newdeplibs " $i" else droppeddeps=yes @@ -7782,20 +9223,20 @@ $opt_dry_run || $RM conftest if $LTCC $LTCFLAGS -o conftest conftest.c $i; then ldd_output=`ldd conftest` - if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then + if test yes = "$allow_libtool_libs_with_static_runtimes"; then case " $predeps $postdeps " in *" $i "*) func_append newdeplibs " $i" - i="" + i= ;; esac fi - if test -n "$i" ; then + if test -n "$i"; then libname=`eval "\\$ECHO \"$libname_spec\""` deplib_matches=`eval "\\$ECHO \"$library_names_spec\""` set dummy $deplib_matches; shift deplib_match=$1 - if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then + if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0; then func_append newdeplibs " $i" else droppeddeps=yes @@ -7832,24 +9273,24 @@ -l*) func_stripname -l '' "$a_deplib" name=$func_stripname_result - if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then + if test yes = "$allow_libtool_libs_with_static_runtimes"; then case " $predeps $postdeps " in *" $a_deplib "*) func_append newdeplibs " $a_deplib" - a_deplib="" + a_deplib= ;; esac fi - if test -n "$a_deplib" ; then + if test -n "$a_deplib"; then libname=`eval "\\$ECHO \"$libname_spec\""` if test -n "$file_magic_glob"; then libnameglob=`func_echo_all "$libname" | $SED -e $file_magic_glob` else libnameglob=$libname fi - test "$want_nocaseglob" = yes && nocaseglob=`shopt -p nocaseglob` + test yes = "$want_nocaseglob" && nocaseglob=`shopt -p nocaseglob` for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do - if test "$want_nocaseglob" = yes; then + if test yes = "$want_nocaseglob"; then shopt -s nocaseglob potential_libs=`ls $i/$libnameglob[.-]* 2>/dev/null` $nocaseglob @@ -7867,25 +9308,25 @@ # We might still enter an endless loop, since a link # loop can be closed while we follow links, # but so what? - potlib="$potent_lib" + potlib=$potent_lib while test -h "$potlib" 2>/dev/null; do - potliblink=`ls -ld $potlib | ${SED} 's/.* -> //'` + potliblink=`ls -ld $potlib | $SED 's/.* -> //'` case $potliblink in - [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";; - *) potlib=`$ECHO "$potlib" | $SED 's,[^/]*$,,'`"$potliblink";; + [\\/]* | [A-Za-z]:[\\/]*) potlib=$potliblink;; + *) potlib=`$ECHO "$potlib" | $SED 's|[^/]*$||'`"$potliblink";; esac done if eval $file_magic_cmd \"\$potlib\" 2>/dev/null | $SED -e 10q | $EGREP "$file_magic_regex" > /dev/null; then func_append newdeplibs " $a_deplib" - a_deplib="" + a_deplib= break 2 fi done done fi - if test -n "$a_deplib" ; then + if test -n "$a_deplib"; then droppeddeps=yes echo $ECHO "*** Warning: linker path does not have real file for library $a_deplib." @@ -7893,7 +9334,7 @@ echo "*** you link to this library. But I can only do this if you have a" echo "*** shared version of the library, which you do not appear to have" echo "*** because I did check the linker path looking for a file starting" - if test -z "$potlib" ; then + if test -z "$potlib"; then $ECHO "*** with $libname but no candidates were found. (...for file magic test)" else $ECHO "*** with $libname and none of the candidates passed a file format test" @@ -7916,30 +9357,30 @@ -l*) func_stripname -l '' "$a_deplib" name=$func_stripname_result - if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then + if test yes = "$allow_libtool_libs_with_static_runtimes"; then case " $predeps $postdeps " in *" $a_deplib "*) func_append newdeplibs " $a_deplib" - a_deplib="" + a_deplib= ;; esac fi - if test -n "$a_deplib" ; then + if test -n "$a_deplib"; then libname=`eval "\\$ECHO \"$libname_spec\""` for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do potential_libs=`ls $i/$libname[.-]* 2>/dev/null` for potent_lib in $potential_libs; do - potlib="$potent_lib" # see symlink-check above in file_magic test + potlib=$potent_lib # see symlink-check above in file_magic test if eval "\$ECHO \"$potent_lib\"" 2>/dev/null | $SED 10q | \ $EGREP "$match_pattern_regex" > /dev/null; then func_append newdeplibs " $a_deplib" - a_deplib="" + a_deplib= break 2 fi done done fi - if test -n "$a_deplib" ; then + if test -n "$a_deplib"; then droppeddeps=yes echo $ECHO "*** Warning: linker path does not have real file for library $a_deplib." @@ -7947,7 +9388,7 @@ echo "*** you link to this library. But I can only do this if you have a" echo "*** shared version of the library, which you do not appear to have" echo "*** because I did check the linker path looking for a file starting" - if test -z "$potlib" ; then + if test -z "$potlib"; then $ECHO "*** with $libname but no candidates were found. (...for regex pattern test)" else $ECHO "*** with $libname and none of the candidates passed a file format test" @@ -7963,18 +9404,18 @@ done # Gone through all deplibs. ;; none | unknown | *) - newdeplibs="" + newdeplibs= tmp_deplibs=`$ECHO " $deplibs" | $SED 's/ -lc$//; s/ -[LR][^ ]*//g'` - if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then - for i in $predeps $postdeps ; do + if test yes = "$allow_libtool_libs_with_static_runtimes"; then + for i in $predeps $postdeps; do # can't use Xsed below, because $i might contain '/' - tmp_deplibs=`$ECHO " $tmp_deplibs" | $SED "s,$i,,"` + tmp_deplibs=`$ECHO " $tmp_deplibs" | $SED "s|$i||"` done fi case $tmp_deplibs in *[!\ \ ]*) echo - if test "X$deplibs_check_method" = "Xnone"; then + if test none = "$deplibs_check_method"; then echo "*** Warning: inter-library dependencies are not supported in this platform." else echo "*** Warning: inter-library dependencies are not known to be supported." @@ -7998,8 +9439,8 @@ ;; esac - if test "$droppeddeps" = yes; then - if test "$module" = yes; then + if test yes = "$droppeddeps"; then + if test yes = "$module"; then echo echo "*** Warning: libtool could not satisfy all declared inter-library" $ECHO "*** dependencies of module $libname. Therefore, libtool will create" @@ -8008,12 +9449,12 @@ if test -z "$global_symbol_pipe"; then echo echo "*** However, this would only work if libtool was able to extract symbol" - echo "*** lists from a program, using \`nm' or equivalent, but libtool could" + echo "*** lists from a program, using 'nm' or equivalent, but libtool could" echo "*** not find such a program. So, this module is probably useless." - echo "*** \`nm' from GNU binutils and a full rebuild may help." + echo "*** 'nm' from GNU binutils and a full rebuild may help." fi - if test "$build_old_libs" = no; then - oldlibs="$output_objdir/$libname.$libext" + if test no = "$build_old_libs"; then + oldlibs=$output_objdir/$libname.$libext build_libtool_libs=module build_old_libs=yes else @@ -8024,14 +9465,14 @@ echo "*** automatically added whenever a program is linked with this library" echo "*** or is declared to -dlopen it." - if test "$allow_undefined" = no; then + if test no = "$allow_undefined"; then echo echo "*** Since this library must not contain undefined symbols," echo "*** because either the platform does not support them or" echo "*** it was explicitly requested with -no-undefined," echo "*** libtool will only create a static version of it." - if test "$build_old_libs" = no; then - oldlibs="$output_objdir/$libname.$libext" + if test no = "$build_old_libs"; then + oldlibs=$output_objdir/$libname.$libext build_libtool_libs=module build_old_libs=yes else @@ -8077,7 +9518,7 @@ *) func_append new_libs " $deplib" ;; esac done - deplibs="$new_libs" + deplibs=$new_libs # All the library-specific variables (install_libdir is set above). library_names= @@ -8085,25 +9526,25 @@ dlname= # Test again, we may have decided not to build it any more - if test "$build_libtool_libs" = yes; then - # Remove ${wl} instances when linking with ld. + if test yes = "$build_libtool_libs"; then + # Remove $wl instances when linking with ld. # FIXME: should test the right _cmds variable. case $archive_cmds in *\$LD\ *) wl= ;; esac - if test "$hardcode_into_libs" = yes; then + if test yes = "$hardcode_into_libs"; then # Hardcode the library paths hardcode_libdirs= dep_rpath= - rpath="$finalize_rpath" - test "$opt_mode" != relink && rpath="$compile_rpath$rpath" + rpath=$finalize_rpath + test relink = "$opt_mode" || rpath=$compile_rpath$rpath for libdir in $rpath; do if test -n "$hardcode_libdir_flag_spec"; then if test -n "$hardcode_libdir_separator"; then func_replace_sysroot "$libdir" libdir=$func_replace_sysroot_result if test -z "$hardcode_libdirs"; then - hardcode_libdirs="$libdir" + hardcode_libdirs=$libdir else # Just accumulate the unique libdirs. case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in @@ -8128,7 +9569,7 @@ # Substitute the hardcoded libdirs into the rpath. if test -n "$hardcode_libdir_separator" && test -n "$hardcode_libdirs"; then - libdir="$hardcode_libdirs" + libdir=$hardcode_libdirs eval "dep_rpath=\"$hardcode_libdir_flag_spec\"" fi if test -n "$runpath_var" && test -n "$perm_rpath"; then @@ -8142,8 +9583,8 @@ test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs" fi - shlibpath="$finalize_shlibpath" - test "$opt_mode" != relink && shlibpath="$compile_shlibpath$shlibpath" + shlibpath=$finalize_shlibpath + test relink = "$opt_mode" || shlibpath=$compile_shlibpath$shlibpath if test -n "$shlibpath"; then eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var" fi @@ -8153,19 +9594,19 @@ eval library_names=\"$library_names_spec\" set dummy $library_names shift - realname="$1" + realname=$1 shift if test -n "$soname_spec"; then eval soname=\"$soname_spec\" else - soname="$realname" + soname=$realname fi if test -z "$dlname"; then dlname=$soname fi - lib="$output_objdir/$realname" + lib=$output_objdir/$realname linknames= for link do @@ -8179,7 +9620,7 @@ delfiles= if test -n "$export_symbols" && test -n "$include_expsyms"; then $opt_dry_run || cp "$export_symbols" "$output_objdir/$libname.uexp" - export_symbols="$output_objdir/$libname.uexp" + export_symbols=$output_objdir/$libname.uexp func_append delfiles " $export_symbols" fi @@ -8188,31 +9629,31 @@ cygwin* | mingw* | cegcc*) if test -n "$export_symbols" && test -z "$export_symbols_regex"; then # exporting using user supplied symfile - if test "x`$SED 1q $export_symbols`" != xEXPORTS; then + func_dll_def_p "$export_symbols" || { # and it's NOT already a .def file. Must figure out # which of the given symbols are data symbols and tag # them as such. So, trigger use of export_symbols_cmds. # export_symbols gets reassigned inside the "prepare # the list of exported symbols" if statement, so the # include_expsyms logic still works. - orig_export_symbols="$export_symbols" + orig_export_symbols=$export_symbols export_symbols= always_export_symbols=yes - fi + } fi ;; esac # Prepare the list of exported symbols if test -z "$export_symbols"; then - if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then - func_verbose "generating symbol list for \`$libname.la'" - export_symbols="$output_objdir/$libname.exp" + if test yes = "$always_export_symbols" || test -n "$export_symbols_regex"; then + func_verbose "generating symbol list for '$libname.la'" + export_symbols=$output_objdir/$libname.exp $opt_dry_run || $RM $export_symbols cmds=$export_symbols_cmds - save_ifs="$IFS"; IFS='~' + save_ifs=$IFS; IFS='~' for cmd1 in $cmds; do - IFS="$save_ifs" + IFS=$save_ifs # Take the normal branch if the nm_file_list_spec branch # doesn't work or if tool conversion is not needed. case $nm_file_list_spec~$to_tool_file_cmd in @@ -8226,7 +9667,7 @@ try_normal_branch=no ;; esac - if test "$try_normal_branch" = yes \ + if test yes = "$try_normal_branch" \ && { test "$len" -lt "$max_cmd_len" \ || test "$max_cmd_len" -le -1; } then @@ -8237,7 +9678,7 @@ output_la=$func_basename_result save_libobjs=$libobjs save_output=$output - output=${output_objdir}/${output_la}.nm + output=$output_objdir/$output_la.nm func_to_tool_file "$output" libobjs=$nm_file_list_spec$func_to_tool_file_result func_append delfiles " $output" @@ -8260,8 +9701,8 @@ break fi done - IFS="$save_ifs" - if test -n "$export_symbols_regex" && test "X$skipped_export" != "X:"; then + IFS=$save_ifs + if test -n "$export_symbols_regex" && test : != "$skipped_export"; then func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' func_show_eval '$MV "${export_symbols}T" "$export_symbols"' fi @@ -8269,16 +9710,16 @@ fi if test -n "$export_symbols" && test -n "$include_expsyms"; then - tmp_export_symbols="$export_symbols" - test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols" + tmp_export_symbols=$export_symbols + test -n "$orig_export_symbols" && tmp_export_symbols=$orig_export_symbols $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"' fi - if test "X$skipped_export" != "X:" && test -n "$orig_export_symbols"; then + if test : != "$skipped_export" && test -n "$orig_export_symbols"; then # The given exports_symbols file has to be filtered, so filter it. - func_verbose "filter symbol list for \`$libname.la' to tag DATA exports" + func_verbose "filter symbol list for '$libname.la' to tag DATA exports" # FIXME: $output_objdir/$libname.filter potentially contains lots of - # 's' commands which not all seds can handle. GNU sed should be fine + # 's' commands, which not all seds can handle. GNU sed should be fine # though. Also, the filter scales superlinearly with the number of # global variables. join(1) would be nice here, but unfortunately # isn't a blessed tool. @@ -8297,11 +9738,11 @@ ;; esac done - deplibs="$tmp_deplibs" + deplibs=$tmp_deplibs if test -n "$convenience"; then if test -n "$whole_archive_flag_spec" && - test "$compiler_needs_object" = yes && + test yes = "$compiler_needs_object" && test -z "$libobjs"; then # extract the archives, so we have objects to list. # TODO: could optimize this to just extract one archive. @@ -8312,7 +9753,7 @@ eval libobjs=\"\$libobjs $whole_archive_flag_spec\" test "X$libobjs" = "X " && libobjs= else - gentop="$output_objdir/${outputname}x" + gentop=$output_objdir/${outputname}x func_append generated " $gentop" func_extract_archives $gentop $convenience @@ -8321,18 +9762,18 @@ fi fi - if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then + if test yes = "$thread_safe" && test -n "$thread_safe_flag_spec"; then eval flag=\"$thread_safe_flag_spec\" func_append linker_flags " $flag" fi # Make a backup of the uninstalled library when relinking - if test "$opt_mode" = relink; then + if test relink = "$opt_mode"; then $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}U && $MV $realname ${realname}U)' || exit $? fi # Do each of the archive commands. - if test "$module" = yes && test -n "$module_cmds" ; then + if test yes = "$module" && test -n "$module_cmds"; then if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then eval test_cmds=\"$module_expsym_cmds\" cmds=$module_expsym_cmds @@ -8350,7 +9791,7 @@ fi fi - if test "X$skipped_export" != "X:" && + if test : != "$skipped_export" && func_len " $test_cmds" && len=$func_len_result && test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then @@ -8383,8 +9824,8 @@ last_robj= k=1 - if test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "$with_gnu_ld" = yes; then - output=${output_objdir}/${output_la}.lnkscript + if test -n "$save_libobjs" && test : != "$skipped_export" && test yes = "$with_gnu_ld"; then + output=$output_objdir/$output_la.lnkscript func_verbose "creating GNU ld script: $output" echo 'INPUT (' > $output for obj in $save_libobjs @@ -8396,14 +9837,14 @@ func_append delfiles " $output" func_to_tool_file "$output" output=$func_to_tool_file_result - elif test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "X$file_list_spec" != X; then - output=${output_objdir}/${output_la}.lnk + elif test -n "$save_libobjs" && test : != "$skipped_export" && test -n "$file_list_spec"; then + output=$output_objdir/$output_la.lnk func_verbose "creating linker input file list: $output" : > $output set x $save_libobjs shift firstobj= - if test "$compiler_needs_object" = yes; then + if test yes = "$compiler_needs_object"; then firstobj="$1 " shift fi @@ -8418,7 +9859,7 @@ else if test -n "$save_libobjs"; then func_verbose "creating reloadable object files..." - output=$output_objdir/$output_la-${k}.$objext + output=$output_objdir/$output_la-$k.$objext eval test_cmds=\"$reload_cmds\" func_len " $test_cmds" len0=$func_len_result @@ -8430,13 +9871,13 @@ func_len " $obj" func_arith $len + $func_len_result len=$func_arith_result - if test "X$objlist" = X || + if test -z "$objlist" || test "$len" -lt "$max_cmd_len"; then func_append objlist " $obj" else # The command $test_cmds is almost too long, add a # command to the queue. - if test "$k" -eq 1 ; then + if test 1 -eq "$k"; then # The first file doesn't have a previous command to add. reload_objs=$objlist eval concat_cmds=\"$reload_cmds\" @@ -8446,10 +9887,10 @@ reload_objs="$objlist $last_robj" eval concat_cmds=\"\$concat_cmds~$reload_cmds~\$RM $last_robj\" fi - last_robj=$output_objdir/$output_la-${k}.$objext + last_robj=$output_objdir/$output_la-$k.$objext func_arith $k + 1 k=$func_arith_result - output=$output_objdir/$output_la-${k}.$objext + output=$output_objdir/$output_la-$k.$objext objlist=" $obj" func_len " $last_robj" func_arith $len0 + $func_len_result @@ -8461,9 +9902,9 @@ # files will link in the last one created. test -z "$concat_cmds" || concat_cmds=$concat_cmds~ reload_objs="$objlist $last_robj" - eval concat_cmds=\"\${concat_cmds}$reload_cmds\" + eval concat_cmds=\"\$concat_cmds$reload_cmds\" if test -n "$last_robj"; then - eval concat_cmds=\"\${concat_cmds}~\$RM $last_robj\" + eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\" fi func_append delfiles " $output" @@ -8471,9 +9912,9 @@ output= fi - if ${skipped_export-false}; then - func_verbose "generating symbol list for \`$libname.la'" - export_symbols="$output_objdir/$libname.exp" + ${skipped_export-false} && { + func_verbose "generating symbol list for '$libname.la'" + export_symbols=$output_objdir/$libname.exp $opt_dry_run || $RM $export_symbols libobjs=$output # Append the command to create the export file. @@ -8482,16 +9923,16 @@ if test -n "$last_robj"; then eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\" fi - fi + } test -n "$save_libobjs" && func_verbose "creating a temporary reloadable object file: $output" # Loop through the commands generated above and execute them. - save_ifs="$IFS"; IFS='~' + save_ifs=$IFS; IFS='~' for cmd in $concat_cmds; do - IFS="$save_ifs" - $opt_silent || { + IFS=$save_ifs + $opt_quiet || { func_quote_for_expand "$cmd" eval "func_echo $func_quote_for_expand_result" } @@ -8499,7 +9940,7 @@ lt_exit=$? # Restore the uninstalled library and exit - if test "$opt_mode" = relink; then + if test relink = "$opt_mode"; then ( cd "$output_objdir" && \ $RM "${realname}T" && \ $MV "${realname}U" "$realname" ) @@ -8508,7 +9949,7 @@ exit $lt_exit } done - IFS="$save_ifs" + IFS=$save_ifs if test -n "$export_symbols_regex" && ${skipped_export-false}; then func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' @@ -8516,18 +9957,18 @@ fi fi - if ${skipped_export-false}; then + ${skipped_export-false} && { if test -n "$export_symbols" && test -n "$include_expsyms"; then - tmp_export_symbols="$export_symbols" - test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols" + tmp_export_symbols=$export_symbols + test -n "$orig_export_symbols" && tmp_export_symbols=$orig_export_symbols $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"' fi if test -n "$orig_export_symbols"; then # The given exports_symbols file has to be filtered, so filter it. - func_verbose "filter symbol list for \`$libname.la' to tag DATA exports" + func_verbose "filter symbol list for '$libname.la' to tag DATA exports" # FIXME: $output_objdir/$libname.filter potentially contains lots of - # 's' commands which not all seds can handle. GNU sed should be fine + # 's' commands, which not all seds can handle. GNU sed should be fine # though. Also, the filter scales superlinearly with the number of # global variables. join(1) would be nice here, but unfortunately # isn't a blessed tool. @@ -8536,7 +9977,7 @@ export_symbols=$output_objdir/$libname.def $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols fi - fi + } libobjs=$output # Restore the value of output. @@ -8550,7 +9991,7 @@ # value of $libobjs for piecewise linking. # Do each of the archive commands. - if test "$module" = yes && test -n "$module_cmds" ; then + if test yes = "$module" && test -n "$module_cmds"; then if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then cmds=$module_expsym_cmds else @@ -8572,7 +10013,7 @@ # Add any objects from preloaded convenience libraries if test -n "$dlprefiles"; then - gentop="$output_objdir/${outputname}x" + gentop=$output_objdir/${outputname}x func_append generated " $gentop" func_extract_archives $gentop $dlprefiles @@ -8580,11 +10021,12 @@ test "X$libobjs" = "X " && libobjs= fi - save_ifs="$IFS"; IFS='~' + save_ifs=$IFS; IFS='~' for cmd in $cmds; do - IFS="$save_ifs" + IFS=$sp$nl eval cmd=\"$cmd\" - $opt_silent || { + IFS=$save_ifs + $opt_quiet || { func_quote_for_expand "$cmd" eval "func_echo $func_quote_for_expand_result" } @@ -8592,7 +10034,7 @@ lt_exit=$? # Restore the uninstalled library and exit - if test "$opt_mode" = relink; then + if test relink = "$opt_mode"; then ( cd "$output_objdir" && \ $RM "${realname}T" && \ $MV "${realname}U" "$realname" ) @@ -8601,10 +10043,10 @@ exit $lt_exit } done - IFS="$save_ifs" + IFS=$save_ifs # Restore the uninstalled library and exit - if test "$opt_mode" = relink; then + if test relink = "$opt_mode"; then $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}T && $MV $realname ${realname}T && $MV ${realname}U $realname)' || exit $? if test -n "$convenience"; then @@ -8624,39 +10066,39 @@ done # If -module or -export-dynamic was specified, set the dlname. - if test "$module" = yes || test "$export_dynamic" = yes; then + if test yes = "$module" || test yes = "$export_dynamic"; then # On all known operating systems, these are identical. - dlname="$soname" + dlname=$soname fi fi ;; obj) - if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then - func_warning "\`-dlopen' is ignored for objects" + if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then + func_warning "'-dlopen' is ignored for objects" fi case " $deplibs" in *\ -l* | *\ -L*) - func_warning "\`-l' and \`-L' are ignored for objects" ;; + func_warning "'-l' and '-L' are ignored for objects" ;; esac test -n "$rpath" && \ - func_warning "\`-rpath' is ignored for objects" + func_warning "'-rpath' is ignored for objects" test -n "$xrpath" && \ - func_warning "\`-R' is ignored for objects" + func_warning "'-R' is ignored for objects" test -n "$vinfo" && \ - func_warning "\`-version-info' is ignored for objects" + func_warning "'-version-info' is ignored for objects" test -n "$release" && \ - func_warning "\`-release' is ignored for objects" + func_warning "'-release' is ignored for objects" case $output in *.lo) test -n "$objs$old_deplibs" && \ - func_fatal_error "cannot build library object \`$output' from non-libtool objects" + func_fatal_error "cannot build library object '$output' from non-libtool objects" libobj=$output func_lo2o "$libobj" @@ -8664,7 +10106,7 @@ ;; *) libobj= - obj="$output" + obj=$output ;; esac @@ -8677,17 +10119,19 @@ # the extraction. reload_conv_objs= gentop= - # reload_cmds runs $LD directly, so let us get rid of - # -Wl from whole_archive_flag_spec and hope we can get by with - # turning comma into space.. - wl= - + # if reload_cmds runs $LD directly, get rid of -Wl from + # whole_archive_flag_spec and hope we can get by with turning comma + # into space. + case $reload_cmds in + *\$LD[\ \$]*) wl= ;; + esac if test -n "$convenience"; then if test -n "$whole_archive_flag_spec"; then eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\" - reload_conv_objs=$reload_objs\ `$ECHO "$tmp_whole_archive_flags" | $SED 's|,| |g'` + test -n "$wl" || tmp_whole_archive_flags=`$ECHO "$tmp_whole_archive_flags" | $SED 's|,| |g'` + reload_conv_objs=$reload_objs\ $tmp_whole_archive_flags else - gentop="$output_objdir/${obj}x" + gentop=$output_objdir/${obj}x func_append generated " $gentop" func_extract_archives $gentop $convenience @@ -8696,12 +10140,12 @@ fi # If we're not building shared, we need to use non_pic_objs - test "$build_libtool_libs" != yes && libobjs="$non_pic_objects" + test yes = "$build_libtool_libs" || libobjs=$non_pic_objects # Create the old-style object. - reload_objs="$objs$old_deplibs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.${libext}$/d; /\.lib$/d; $lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test + reload_objs=$objs$old_deplibs' '`$ECHO "$libobjs" | $SP2NL | $SED "/\.$libext$/d; /\.lib$/d; $lo2o" | $NL2SP`' '$reload_conv_objs - output="$obj" + output=$obj func_execute_cmds "$reload_cmds" 'exit $?' # Exit if we aren't doing a library object file. @@ -8713,7 +10157,7 @@ exit $EXIT_SUCCESS fi - if test "$build_libtool_libs" != yes; then + test yes = "$build_libtool_libs" || { if test -n "$gentop"; then func_show_eval '${RM}r "$gentop"' fi @@ -8723,12 +10167,12 @@ # $show "echo timestamp > $libobj" # $opt_dry_run || eval "echo timestamp > $libobj" || exit $? exit $EXIT_SUCCESS - fi + } - if test -n "$pic_flag" || test "$pic_mode" != default; then + if test -n "$pic_flag" || test default != "$pic_mode"; then # Only do commands if we really have different PIC objects. reload_objs="$libobjs $reload_conv_objs" - output="$libobj" + output=$libobj func_execute_cmds "$reload_cmds" 'exit $?' fi @@ -8745,16 +10189,14 @@ output=$func_stripname_result.exe;; esac test -n "$vinfo" && \ - func_warning "\`-version-info' is ignored for programs" + func_warning "'-version-info' is ignored for programs" test -n "$release" && \ - func_warning "\`-release' is ignored for programs" + func_warning "'-release' is ignored for programs" - test "$preload" = yes \ - && test "$dlopen_support" = unknown \ - && test "$dlopen_self" = unknown \ - && test "$dlopen_self_static" = unknown && \ - func_warning "\`LT_INIT([dlopen])' not used. Assuming no dlopen support." + $preload \ + && test unknown,unknown,unknown = "$dlopen_support,$dlopen_self,$dlopen_self_static" \ + && func_warning "'LT_INIT([dlopen])' not used. Assuming no dlopen support." case $host in *-*-rhapsody* | *-*-darwin1.[012]) @@ -8768,11 +10210,11 @@ *-*-darwin*) # Don't allow lazy linking, it breaks C++ global constructors # But is supposedly fixed on 10.4 or later (yay!). - if test "$tagname" = CXX ; then + if test CXX = "$tagname"; then case ${MACOSX_DEPLOYMENT_TARGET-10.0} in 10.[0123]) - func_append compile_command " ${wl}-bind_at_load" - func_append finalize_command " ${wl}-bind_at_load" + func_append compile_command " $wl-bind_at_load" + func_append finalize_command " $wl-bind_at_load" ;; esac fi @@ -8808,7 +10250,7 @@ *) func_append new_libs " $deplib" ;; esac done - compile_deplibs="$new_libs" + compile_deplibs=$new_libs func_append compile_command " $compile_deplibs" @@ -8832,7 +10274,7 @@ if test -n "$hardcode_libdir_flag_spec"; then if test -n "$hardcode_libdir_separator"; then if test -z "$hardcode_libdirs"; then - hardcode_libdirs="$libdir" + hardcode_libdirs=$libdir else # Just accumulate the unique libdirs. case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in @@ -8855,7 +10297,7 @@ fi case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) - testbindir=`${ECHO} "$libdir" | ${SED} -e 's*/lib$*/bin*'` + testbindir=`$ECHO "$libdir" | $SED -e 's*/lib$*/bin*'` case :$dllsearchpath: in *":$libdir:"*) ;; ::) dllsearchpath=$libdir;; @@ -8872,10 +10314,10 @@ # Substitute the hardcoded libdirs into the rpath. if test -n "$hardcode_libdir_separator" && test -n "$hardcode_libdirs"; then - libdir="$hardcode_libdirs" + libdir=$hardcode_libdirs eval rpath=\" $hardcode_libdir_flag_spec\" fi - compile_rpath="$rpath" + compile_rpath=$rpath rpath= hardcode_libdirs= @@ -8883,7 +10325,7 @@ if test -n "$hardcode_libdir_flag_spec"; then if test -n "$hardcode_libdir_separator"; then if test -z "$hardcode_libdirs"; then - hardcode_libdirs="$libdir" + hardcode_libdirs=$libdir else # Just accumulate the unique libdirs. case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in @@ -8908,45 +10350,43 @@ # Substitute the hardcoded libdirs into the rpath. if test -n "$hardcode_libdir_separator" && test -n "$hardcode_libdirs"; then - libdir="$hardcode_libdirs" + libdir=$hardcode_libdirs eval rpath=\" $hardcode_libdir_flag_spec\" fi - finalize_rpath="$rpath" + finalize_rpath=$rpath - if test -n "$libobjs" && test "$build_old_libs" = yes; then + if test -n "$libobjs" && test yes = "$build_old_libs"; then # Transform all the library objects into standard objects. compile_command=`$ECHO "$compile_command" | $SP2NL | $SED "$lo2o" | $NL2SP` finalize_command=`$ECHO "$finalize_command" | $SP2NL | $SED "$lo2o" | $NL2SP` fi - func_generate_dlsyms "$outputname" "@PROGRAM@" "no" + func_generate_dlsyms "$outputname" "@PROGRAM@" false # template prelinking step if test -n "$prelink_cmds"; then func_execute_cmds "$prelink_cmds" 'exit $?' fi - wrappers_required=yes + wrappers_required=: case $host in *cegcc* | *mingw32ce*) # Disable wrappers for cegcc and mingw32ce hosts, we are cross compiling anyway. - wrappers_required=no + wrappers_required=false ;; *cygwin* | *mingw* ) - if test "$build_libtool_libs" != yes; then - wrappers_required=no - fi + test yes = "$build_libtool_libs" || wrappers_required=false ;; *) - if test "$need_relink" = no || test "$build_libtool_libs" != yes; then - wrappers_required=no + if test no = "$need_relink" || test yes != "$build_libtool_libs"; then + wrappers_required=false fi ;; esac - if test "$wrappers_required" = no; then + $wrappers_required || { # Replace the output file specification. compile_command=`$ECHO "$compile_command" | $SED 's%@OUTPUT@%'"$output"'%g'` - link_command="$compile_command$compile_rpath" + link_command=$compile_command$compile_rpath # We have no uninstalled library dependencies, so finalize right now. exit_status=0 @@ -8959,12 +10399,12 @@ fi # Delete the generated files. - if test -f "$output_objdir/${outputname}S.${objext}"; then - func_show_eval '$RM "$output_objdir/${outputname}S.${objext}"' + if test -f "$output_objdir/${outputname}S.$objext"; then + func_show_eval '$RM "$output_objdir/${outputname}S.$objext"' fi exit $exit_status - fi + } if test -n "$compile_shlibpath$finalize_shlibpath"; then compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command" @@ -8994,9 +10434,9 @@ fi fi - if test "$no_install" = yes; then + if test yes = "$no_install"; then # We don't need to create a wrapper script. - link_command="$compile_var$compile_command$compile_rpath" + link_command=$compile_var$compile_command$compile_rpath # Replace the output file specification. link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output"'%g'` # Delete the old output file. @@ -9013,27 +10453,28 @@ exit $EXIT_SUCCESS fi - if test "$hardcode_action" = relink; then - # Fast installation is not supported - link_command="$compile_var$compile_command$compile_rpath" - relink_command="$finalize_var$finalize_command$finalize_rpath" - - func_warning "this platform does not like uninstalled shared libraries" - func_warning "\`$output' will be relinked during installation" - else - if test "$fast_install" != no; then - link_command="$finalize_var$compile_command$finalize_rpath" - if test "$fast_install" = yes; then - relink_command=`$ECHO "$compile_var$compile_command$compile_rpath" | $SED 's%@OUTPUT@%\$progdir/\$file%g'` - else - # fast_install is set to needless - relink_command= - fi - else - link_command="$compile_var$compile_command$compile_rpath" - relink_command="$finalize_var$finalize_command$finalize_rpath" - fi - fi + case $hardcode_action,$fast_install in + relink,*) + # Fast installation is not supported + link_command=$compile_var$compile_command$compile_rpath + relink_command=$finalize_var$finalize_command$finalize_rpath + + func_warning "this platform does not like uninstalled shared libraries" + func_warning "'$output' will be relinked during installation" + ;; + *,yes) + link_command=$finalize_var$compile_command$finalize_rpath + relink_command=`$ECHO "$compile_var$compile_command$compile_rpath" | $SED 's%@OUTPUT@%\$progdir/\$file%g'` + ;; + *,no) + link_command=$compile_var$compile_command$compile_rpath + relink_command=$finalize_var$finalize_command$finalize_rpath + ;; + *,needless) + link_command=$finalize_var$compile_command$finalize_rpath + relink_command= + ;; + esac # Replace the output file specification. link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'` @@ -9090,8 +10531,8 @@ func_dirname_and_basename "$output" "" "." output_name=$func_basename_result output_path=$func_dirname_result - cwrappersource="$output_path/$objdir/lt-$output_name.c" - cwrapper="$output_path/$output_name.exe" + cwrappersource=$output_path/$objdir/lt-$output_name.c + cwrapper=$output_path/$output_name.exe $RM $cwrappersource $cwrapper trap "$RM $cwrappersource $cwrapper; exit $EXIT_FAILURE" 1 2 15 @@ -9112,7 +10553,7 @@ trap "$RM $func_ltwrapper_scriptname_result; exit $EXIT_FAILURE" 1 2 15 $opt_dry_run || { # note: this script will not be executed, so do not chmod. - if test "x$build" = "x$host" ; then + if test "x$build" = "x$host"; then $cwrapper --lt-dump-script > $func_ltwrapper_scriptname_result else func_emit_wrapper no > $func_ltwrapper_scriptname_result @@ -9135,25 +10576,27 @@ # See if we need to build an old-fashioned archive. for oldlib in $oldlibs; do - if test "$build_libtool_libs" = convenience; then - oldobjs="$libobjs_save $symfileobj" - addlibs="$convenience" - build_libtool_libs=no - else - if test "$build_libtool_libs" = module; then - oldobjs="$libobjs_save" + case $build_libtool_libs in + convenience) + oldobjs="$libobjs_save $symfileobj" + addlibs=$convenience build_libtool_libs=no - else + ;; + module) + oldobjs=$libobjs_save + addlibs=$old_convenience + build_libtool_libs=no + ;; + *) oldobjs="$old_deplibs $non_pic_objects" - if test "$preload" = yes && test -f "$symfileobj"; then - func_append oldobjs " $symfileobj" - fi - fi - addlibs="$old_convenience" - fi + $preload && test -f "$symfileobj" \ + && func_append oldobjs " $symfileobj" + addlibs=$old_convenience + ;; + esac if test -n "$addlibs"; then - gentop="$output_objdir/${outputname}x" + gentop=$output_objdir/${outputname}x func_append generated " $gentop" func_extract_archives $gentop $addlibs @@ -9161,13 +10604,13 @@ fi # Do each command in the archive commands. - if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then + if test -n "$old_archive_from_new_cmds" && test yes = "$build_libtool_libs"; then cmds=$old_archive_from_new_cmds else # Add any objects from preloaded convenience libraries if test -n "$dlprefiles"; then - gentop="$output_objdir/${outputname}x" + gentop=$output_objdir/${outputname}x func_append generated " $gentop" func_extract_archives $gentop $dlprefiles @@ -9188,7 +10631,7 @@ : else echo "copying selected object files to avoid basename conflicts..." - gentop="$output_objdir/${outputname}x" + gentop=$output_objdir/${outputname}x func_append generated " $gentop" func_mkdir_p "$gentop" save_oldobjs=$oldobjs @@ -9197,7 +10640,7 @@ for obj in $save_oldobjs do func_basename "$obj" - objbase="$func_basename_result" + objbase=$func_basename_result case " $oldobjs " in " ") oldobjs=$obj ;; *[\ /]"$objbase "*) @@ -9266,18 +10709,18 @@ else # the above command should be used before it gets too long oldobjs=$objlist - if test "$obj" = "$last_oldobj" ; then + if test "$obj" = "$last_oldobj"; then RANLIB=$save_RANLIB fi test -z "$concat_cmds" || concat_cmds=$concat_cmds~ - eval concat_cmds=\"\${concat_cmds}$old_archive_cmds\" + eval concat_cmds=\"\$concat_cmds$old_archive_cmds\" objlist= len=$len0 fi done RANLIB=$save_RANLIB oldobjs=$objlist - if test "X$oldobjs" = "X" ; then + if test -z "$oldobjs"; then eval cmds=\"\$concat_cmds\" else eval cmds=\"\$concat_cmds~\$old_archive_cmds\" @@ -9294,7 +10737,7 @@ case $output in *.la) old_library= - test "$build_old_libs" = yes && old_library="$libname.$libext" + test yes = "$build_old_libs" && old_library=$libname.$libext func_verbose "creating $output" # Preserve any variables that may affect compiler behavior @@ -9309,31 +10752,31 @@ fi done # Quote the link command for shipping. - relink_command="(cd `pwd`; $SHELL $progpath $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)" + relink_command="(cd `pwd`; $SHELL \"$progpath\" $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)" relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"` - if test "$hardcode_automatic" = yes ; then + if test yes = "$hardcode_automatic"; then relink_command= fi # Only create the output if not a dry run. $opt_dry_run || { for installed in no yes; do - if test "$installed" = yes; then + if test yes = "$installed"; then if test -z "$install_libdir"; then break fi - output="$output_objdir/$outputname"i + output=$output_objdir/${outputname}i # Replace all uninstalled libtool libraries with the installed ones newdependency_libs= for deplib in $dependency_libs; do case $deplib in *.la) func_basename "$deplib" - name="$func_basename_result" + name=$func_basename_result func_resolve_sysroot "$deplib" - eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $func_resolve_sysroot_result` + eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $func_resolve_sysroot_result` test -z "$libdir" && \ - func_fatal_error "\`$deplib' is not a valid libtool archive" + func_fatal_error "'$deplib' is not a valid libtool archive" func_append newdependency_libs " ${lt_sysroot:+=}$libdir/$name" ;; -L*) @@ -9349,23 +10792,23 @@ *) func_append newdependency_libs " $deplib" ;; esac done - dependency_libs="$newdependency_libs" + dependency_libs=$newdependency_libs newdlfiles= for lib in $dlfiles; do case $lib in *.la) func_basename "$lib" - name="$func_basename_result" - eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib` + name=$func_basename_result + eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $lib` test -z "$libdir" && \ - func_fatal_error "\`$lib' is not a valid libtool archive" + func_fatal_error "'$lib' is not a valid libtool archive" func_append newdlfiles " ${lt_sysroot:+=}$libdir/$name" ;; *) func_append newdlfiles " $lib" ;; esac done - dlfiles="$newdlfiles" + dlfiles=$newdlfiles newdlprefiles= for lib in $dlprefiles; do case $lib in @@ -9375,34 +10818,34 @@ # didn't already link the preopened objects directly into # the library: func_basename "$lib" - name="$func_basename_result" - eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib` + name=$func_basename_result + eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $lib` test -z "$libdir" && \ - func_fatal_error "\`$lib' is not a valid libtool archive" + func_fatal_error "'$lib' is not a valid libtool archive" func_append newdlprefiles " ${lt_sysroot:+=}$libdir/$name" ;; esac done - dlprefiles="$newdlprefiles" + dlprefiles=$newdlprefiles else newdlfiles= for lib in $dlfiles; do case $lib in - [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;; + [\\/]* | [A-Za-z]:[\\/]*) abs=$lib ;; *) abs=`pwd`"/$lib" ;; esac func_append newdlfiles " $abs" done - dlfiles="$newdlfiles" + dlfiles=$newdlfiles newdlprefiles= for lib in $dlprefiles; do case $lib in - [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;; + [\\/]* | [A-Za-z]:[\\/]*) abs=$lib ;; *) abs=`pwd`"/$lib" ;; esac func_append newdlprefiles " $abs" done - dlprefiles="$newdlprefiles" + dlprefiles=$newdlprefiles fi $RM $output # place dlname in correct position for cygwin @@ -9418,10 +10861,9 @@ case $host,$output,$installed,$module,$dlname in *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll) # If a -bindir argument was supplied, place the dll there. - if test "x$bindir" != x ; - then + if test -n "$bindir"; then func_relative_path "$install_libdir" "$bindir" - tdlname=$func_relative_path_result$dlname + tdlname=$func_relative_path_result/$dlname else # Otherwise fall back on heuristic. tdlname=../bin/$dlname @@ -9430,7 +10872,7 @@ esac $ECHO > $output "\ # $outputname - a libtool library file -# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION +# Generated by $PROGRAM (GNU $PACKAGE) $VERSION # # Please DO NOT delete this file! # It is necessary for linking the library. @@ -9444,7 +10886,7 @@ # The name of the static archive. old_library='$old_library' -# Linker flags that can not go in dependency_libs. +# Linker flags that cannot go in dependency_libs. inherited_linker_flags='$new_inherited_linker_flags' # Libraries that this one depends upon. @@ -9470,7 +10912,7 @@ # Directory that this library needs to be installed in: libdir='$install_libdir'" - if test "$installed" = no && test "$need_relink" = yes; then + if test no,yes = "$installed,$need_relink"; then $ECHO >> $output "\ relink_command=\"$relink_command\"" fi @@ -9485,27 +10927,29 @@ exit $EXIT_SUCCESS } -{ test "$opt_mode" = link || test "$opt_mode" = relink; } && - func_mode_link ${1+"$@"} +if test link = "$opt_mode" || test relink = "$opt_mode"; then + func_mode_link ${1+"$@"} +fi # func_mode_uninstall arg... func_mode_uninstall () { - $opt_debug - RM="$nonopt" + $debug_cmd + + RM=$nonopt files= - rmforce= + rmforce=false exit_status=0 # This variable tells wrapper scripts just to set variables rather # than running their programs. - libtool_install_magic="$magic" + libtool_install_magic=$magic for arg do case $arg in - -f) func_append RM " $arg"; rmforce=yes ;; + -f) func_append RM " $arg"; rmforce=: ;; -*) func_append RM " $arg" ;; *) func_append files " $arg" ;; esac @@ -9518,18 +10962,18 @@ for file in $files; do func_dirname "$file" "" "." - dir="$func_dirname_result" - if test "X$dir" = X.; then - odir="$objdir" + dir=$func_dirname_result + if test . = "$dir"; then + odir=$objdir else - odir="$dir/$objdir" + odir=$dir/$objdir fi func_basename "$file" - name="$func_basename_result" - test "$opt_mode" = uninstall && odir="$dir" + name=$func_basename_result + test uninstall = "$opt_mode" && odir=$dir # Remember odir for removal later, being careful to avoid duplicates - if test "$opt_mode" = clean; then + if test clean = "$opt_mode"; then case " $rmdirs " in *" $odir "*) ;; *) func_append rmdirs " $odir" ;; @@ -9544,11 +10988,11 @@ elif test -d "$file"; then exit_status=1 continue - elif test "$rmforce" = yes; then + elif $rmforce; then continue fi - rmfiles="$file" + rmfiles=$file case $name in *.la) @@ -9562,7 +11006,7 @@ done test -n "$old_library" && func_append rmfiles " $odir/$old_library" - case "$opt_mode" in + case $opt_mode in clean) case " $library_names " in *" $dlname "*) ;; @@ -9573,12 +11017,12 @@ uninstall) if test -n "$library_names"; then # Do each command in the postuninstall commands. - func_execute_cmds "$postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1' + func_execute_cmds "$postuninstall_cmds" '$rmforce || exit_status=1' fi if test -n "$old_library"; then # Do each command in the old_postuninstall commands. - func_execute_cmds "$old_postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1' + func_execute_cmds "$old_postuninstall_cmds" '$rmforce || exit_status=1' fi # FIXME: should reinstall the best remaining shared library. ;; @@ -9594,21 +11038,19 @@ func_source $dir/$name # Add PIC object to the list of files to remove. - if test -n "$pic_object" && - test "$pic_object" != none; then + if test -n "$pic_object" && test none != "$pic_object"; then func_append rmfiles " $dir/$pic_object" fi # Add non-PIC object to the list of files to remove. - if test -n "$non_pic_object" && - test "$non_pic_object" != none; then + if test -n "$non_pic_object" && test none != "$non_pic_object"; then func_append rmfiles " $dir/$non_pic_object" fi fi ;; *) - if test "$opt_mode" = clean ; then + if test clean = "$opt_mode"; then noexename=$name case $file in *.exe) @@ -9635,12 +11077,12 @@ # note $name still contains .exe if it was in $file originally # as does the version of $file that was added into $rmfiles - func_append rmfiles " $odir/$name $odir/${name}S.${objext}" - if test "$fast_install" = yes && test -n "$relink_command"; then + func_append rmfiles " $odir/$name $odir/${name}S.$objext" + if test yes = "$fast_install" && test -n "$relink_command"; then func_append rmfiles " $odir/lt-$name" fi - if test "X$noexename" != "X$name" ; then - func_append rmfiles " $odir/lt-${noexename}.c" + if test "X$noexename" != "X$name"; then + func_append rmfiles " $odir/lt-$noexename.c" fi fi fi @@ -9649,7 +11091,7 @@ func_show_eval "$RM $rmfiles" 'exit_status=1' done - # Try to remove the ${objdir}s in the directories where we deleted files + # Try to remove the $objdir's in the directories where we deleted files for dir in $rmdirs; do if test -d "$dir"; then func_show_eval "rmdir $dir >/dev/null 2>&1" @@ -9659,16 +11101,17 @@ exit $exit_status } -{ test "$opt_mode" = uninstall || test "$opt_mode" = clean; } && - func_mode_uninstall ${1+"$@"} +if test uninstall = "$opt_mode" || test clean = "$opt_mode"; then + func_mode_uninstall ${1+"$@"} +fi test -z "$opt_mode" && { - help="$generic_help" + help=$generic_help func_fatal_help "you must specify a MODE" } test -z "$exec_cmd" && \ - func_fatal_help "invalid operation mode \`$opt_mode'" + func_fatal_help "invalid operation mode '$opt_mode'" if test -n "$exec_cmd"; then eval exec "$exec_cmd" @@ -9679,7 +11122,7 @@ # The TAGs below are defined such that we never get into a situation -# in which we disable both kinds of libraries. Given conflicting +# where we disable both kinds of libraries. Given conflicting # choices, we go for a static library, that is the most portable, # since we can't tell whether shared libraries were disabled because # the user asked for that or because the platform doesn't support @@ -9702,5 +11145,3 @@ # mode:shell-script # sh-indentation:2 # End: -# vi:sw=2 - diff -Nru clamav-0.98.6+dfsg/config/missing clamav-0.99.2+addedllvm/config/missing --- clamav-0.98.6+dfsg/config/missing 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/config/missing 2016-04-22 15:02:18.000000000 +0000 @@ -1,7 +1,7 @@ #! /bin/sh # Common wrapper for a few potentially missing GNU programs. -scriptversion=2012-06-26.16; # UTC +scriptversion=2013-10-28.13; # UTC # Copyright (C) 1996-2013 Free Software Foundation, Inc. # Originally written by Fran,cois Pinard , 1996. @@ -160,7 +160,7 @@ ;; autom4te*) echo "You might have modified some maintainer files that require" - echo "the 'automa4te' program to be rebuilt." + echo "the 'autom4te' program to be rebuilt." program_details 'autom4te' ;; bison*|yacc*) diff -Nru clamav-0.98.6+dfsg/config/test-driver clamav-0.99.2+addedllvm/config/test-driver --- clamav-0.98.6+dfsg/config/test-driver 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/config/test-driver 2016-04-22 15:02:18.000000000 +0000 @@ -1,7 +1,7 @@ #! /bin/sh # test-driver - basic testsuite driver script. -scriptversion=2012-06-27.10; # UTC +scriptversion=2013-07-13.22; # UTC # Copyright (C) 2011-2013 Free Software Foundation, Inc. # @@ -44,13 +44,12 @@ Usage: test-driver --test-name=NAME --log-file=PATH --trs-file=PATH [--expect-failure={yes|no}] [--color-tests={yes|no}] - [--enable-hard-errors={yes|no}] [--] TEST-SCRIPT + [--enable-hard-errors={yes|no}] [--] + TEST-SCRIPT [TEST-SCRIPT-ARGUMENTS] The '--test-name', '--log-file' and '--trs-file' options are mandatory. END } -# TODO: better error handling in option parsing (in particular, ensure -# TODO: $log_file, $trs_file and $test_name are defined). test_name= # Used for reporting. log_file= # Where to save the output of the test script. trs_file= # Where to save the metadata of the test run. @@ -69,10 +68,23 @@ --enable-hard-errors) enable_hard_errors=$2; shift;; --) shift; break;; -*) usage_error "invalid option: '$1'";; + *) break;; esac shift done +missing_opts= +test x"$test_name" = x && missing_opts="$missing_opts --test-name" +test x"$log_file" = x && missing_opts="$missing_opts --log-file" +test x"$trs_file" = x && missing_opts="$missing_opts --trs-file" +if test x"$missing_opts" != x; then + usage_error "the following mandatory options are missing:$missing_opts" +fi + +if test $# -eq 0; then + usage_error "missing argument" +fi + if test $color_tests = yes; then # Keep this in sync with 'lib/am/check.am:$(am__tty_colors)'. red='' # Red. diff -Nru clamav-0.98.6+dfsg/config/ylwrap clamav-0.99.2+addedllvm/config/ylwrap --- clamav-0.98.6+dfsg/config/ylwrap 1970-01-01 00:00:00.000000000 +0000 +++ clamav-0.99.2+addedllvm/config/ylwrap 2016-04-22 15:02:18.000000000 +0000 @@ -0,0 +1,247 @@ +#! /bin/sh +# ylwrap - wrapper for lex/yacc invocations. + +scriptversion=2013-01-12.17; # UTC + +# Copyright (C) 1996-2013 Free Software Foundation, Inc. +# +# Written by Tom Tromey . +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program that contains a +# configuration script generated by Autoconf, you may include it under +# the same distribution terms that you use for the rest of that program. + +# This file is maintained in Automake, please report +# bugs to or send patches to +# . + +get_dirname () +{ + case $1 in + */*|*\\*) printf '%s\n' "$1" | sed -e 's|\([\\/]\)[^\\/]*$|\1|';; + # Otherwise, we want the empty string (not "."). + esac +} + +# guard FILE +# ---------- +# The CPP macro used to guard inclusion of FILE. +guard () +{ + printf '%s\n' "$1" \ + | sed \ + -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/' \ + -e 's/[^ABCDEFGHIJKLMNOPQRSTUVWXYZ]/_/g' \ + -e 's/__*/_/g' +} + +# quote_for_sed [STRING] +# ---------------------- +# Return STRING (or stdin) quoted to be used as a sed pattern. +quote_for_sed () +{ + case $# in + 0) cat;; + 1) printf '%s\n' "$1";; + esac \ + | sed -e 's|[][\\.*]|\\&|g' +} + +case "$1" in + '') + echo "$0: No files given. Try '$0 --help' for more information." 1>&2 + exit 1 + ;; + --basedir) + basedir=$2 + shift 2 + ;; + -h|--h*) + cat <<\EOF +Usage: ylwrap [--help|--version] INPUT [OUTPUT DESIRED]... -- PROGRAM [ARGS]... + +Wrapper for lex/yacc invocations, renaming files as desired. + + INPUT is the input file + OUTPUT is one file PROG generates + DESIRED is the file we actually want instead of OUTPUT + PROGRAM is program to run + ARGS are passed to PROG + +Any number of OUTPUT,DESIRED pairs may be used. + +Report bugs to . +EOF + exit $? + ;; + -v|--v*) + echo "ylwrap $scriptversion" + exit $? + ;; +esac + + +# The input. +input=$1 +shift +# We'll later need for a correct munging of "#line" directives. +input_sub_rx=`get_dirname "$input" | quote_for_sed` +case $input in + [\\/]* | ?:[\\/]*) + # Absolute path; do nothing. + ;; + *) + # Relative path. Make it absolute. + input=`pwd`/$input + ;; +esac +input_rx=`get_dirname "$input" | quote_for_sed` + +# Since DOS filename conventions don't allow two dots, +# the DOS version of Bison writes out y_tab.c instead of y.tab.c +# and y_tab.h instead of y.tab.h. Test to see if this is the case. +y_tab_nodot=false +if test -f y_tab.c || test -f y_tab.h; then + y_tab_nodot=true +fi + +# The parser itself, the first file, is the destination of the .y.c +# rule in the Makefile. +parser=$1 + +# A sed program to s/FROM/TO/g for all the FROM/TO so that, for +# instance, we rename #include "y.tab.h" into #include "parse.h" +# during the conversion from y.tab.c to parse.c. +sed_fix_filenames= + +# Also rename header guards, as Bison 2.7 for instance uses its header +# guard in its implementation file. +sed_fix_header_guards= + +while test $# -ne 0; do + if test x"$1" = x"--"; then + shift + break + fi + from=$1 + # Handle y_tab.c and y_tab.h output by DOS + if $y_tab_nodot; then + case $from in + "y.tab.c") from=y_tab.c;; + "y.tab.h") from=y_tab.h;; + esac + fi + shift + to=$1 + shift + sed_fix_filenames="${sed_fix_filenames}s|"`quote_for_sed "$from"`"|$to|g;" + sed_fix_header_guards="${sed_fix_header_guards}s|"`guard "$from"`"|"`guard "$to"`"|g;" +done + +# The program to run. +prog=$1 +shift +# Make any relative path in $prog absolute. +case $prog in + [\\/]* | ?:[\\/]*) ;; + *[\\/]*) prog=`pwd`/$prog ;; +esac + +dirname=ylwrap$$ +do_exit="cd '`pwd`' && rm -rf $dirname > /dev/null 2>&1;"' (exit $ret); exit $ret' +trap "ret=129; $do_exit" 1 +trap "ret=130; $do_exit" 2 +trap "ret=141; $do_exit" 13 +trap "ret=143; $do_exit" 15 +mkdir $dirname || exit 1 + +cd $dirname + +case $# in + 0) "$prog" "$input" ;; + *) "$prog" "$@" "$input" ;; +esac +ret=$? + +if test $ret -eq 0; then + for from in * + do + to=`printf '%s\n' "$from" | sed "$sed_fix_filenames"` + if test -f "$from"; then + # If $2 is an absolute path name, then just use that, + # otherwise prepend '../'. + case $to in + [\\/]* | ?:[\\/]*) target=$to;; + *) target=../$to;; + esac + + # Do not overwrite unchanged header files to avoid useless + # recompilations. Always update the parser itself: it is the + # destination of the .y.c rule in the Makefile. Divert the + # output of all other files to a temporary file so we can + # compare them to existing versions. + if test $from != $parser; then + realtarget=$target + target=tmp-`printf '%s\n' "$target" | sed 's|.*[\\/]||g'` + fi + + # Munge "#line" or "#" directives. Don't let the resulting + # debug information point at an absolute srcdir. Use the real + # output file name, not yy.lex.c for instance. Adjust the + # include guards too. + sed -e "/^#/!b" \ + -e "s|$input_rx|$input_sub_rx|" \ + -e "$sed_fix_filenames" \ + -e "$sed_fix_header_guards" \ + "$from" >"$target" || ret=$? + + # Check whether files must be updated. + if test "$from" != "$parser"; then + if test -f "$realtarget" && cmp -s "$realtarget" "$target"; then + echo "$to is unchanged" + rm -f "$target" + else + echo "updating $to" + mv -f "$target" "$realtarget" + fi + fi + else + # A missing file is only an error for the parser. This is a + # blatant hack to let us support using "yacc -d". If -d is not + # specified, don't fail when the header file is "missing". + if test "$from" = "$parser"; then + ret=1 + fi + fi + done +fi + +# Remove the directory. +cd .. +rm -rf $dirname + +exit $ret + +# Local Variables: +# mode: shell-script +# sh-indentation: 2 +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "scriptversion=" +# time-stamp-format: "%:y-%02m-%02d.%02H" +# time-stamp-time-zone: "UTC" +# time-stamp-end: "; # UTC" +# End: diff -Nru clamav-0.98.6+dfsg/configure clamav-0.99.2+addedllvm/configure --- clamav-0.98.6+dfsg/configure 2014-12-18 21:43:18.000000000 +0000 +++ clamav-0.99.2+addedllvm/configure 2016-04-22 16:19:50.000000000 +0000 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for ClamAV 0.98.6. +# Generated by GNU Autoconf 2.69 for ClamAV 0.99.2. # # Report bugs to . # @@ -592,8 +592,8 @@ # Identity of this package. PACKAGE_NAME='ClamAV' PACKAGE_TARNAME='clamav' -PACKAGE_VERSION='0.98.6' -PACKAGE_STRING='ClamAV 0.98.6' +PACKAGE_VERSION='0.99.2' +PACKAGE_STRING='ClamAV 0.99.2' PACKAGE_BUGREPORT='http://bugs.clamav.net/' PACKAGE_URL='http://www.clamav.net/' @@ -635,7 +635,9 @@ #endif" enable_option_checking=no -ac_subst_vars='ENABLE_LLVM_FALSE +ac_subst_vars='ENABLE_YARA_FALSE +ENABLE_YARA_TRUE +ENABLE_LLVM_FALSE ENABLE_LLVM_TRUE ltdl_LTLIBOBJS ltdl_LIBOBJS @@ -649,6 +651,7 @@ JSON_LIBS SSL_LDFLAGS SSL_LIBS +PCRE_LIBS CLAMCONF_LIBS CLAMBC_LIBS CLAMDTOP_LIBS @@ -661,6 +664,7 @@ CLAMMEM_LIBS CLAMD_LIBS LIBCLAMAV_LIBS +PCRE_CPPFLAGS JSON_CPPFLAGS SSL_CPPFLAGS LIBCLAMSHARED_CPPFLAGS @@ -677,6 +681,9 @@ FRESHCLAM_CPPFLAGS CLAMSUBMIT_CFLAGS CLAMSUBMIT_LIBS +ENABLE_LIBFRESHCLAM_FALSE +ENABLE_LIBFRESHCLAM_TRUE +HAVE_YARA subdirs WERR_CFLAGS_MILTER WERR_CFLAGS @@ -693,6 +700,11 @@ BUILD_CLAMD_TRUE CFGDIR DBDIR +INSTALL_SYSTEMD_UNITS_FALSE +INSTALL_SYSTEMD_UNITS_TRUE +systemdsystemunitdir +SYSTEMD_LIBS +SYSTEMD_CFLAGS ENABLE_UNRAR_FALSE ENABLE_UNRAR_TRUE HAVE_LIBBZ2_FALSE @@ -703,6 +715,7 @@ MAINT MAINTAINER_MODE_FALSE MAINTAINER_MODE_TRUE +pcreconfig HAVE_LIBXML2_FALSE HAVE_LIBXML2_TRUE XML_LIBS @@ -714,21 +727,30 @@ GCOV HAVE_LIBCHECK_FALSE HAVE_LIBCHECK_TRUE -CHECK_LIBS CHECK_CPPFLAGS +CHECK_LIBS +CHECK_CFLAGS +PKG_CONFIG_LIBDIR +PKG_CONFIG_PATH +PKG_CONFIG BUILD_CONFIGURE_FLAGS VERSIONSCRIPT_FALSE VERSIONSCRIPT_TRUE VERSIONSCRIPTFLAG GPERF LIBM +YFLAGS +YACC +LEXLIB +LEX_OUTPUT_ROOT +LEX LTDLOPEN LT_CONFIG_H CONVENIENCE_LTDL_FALSE CONVENIENCE_LTDL_TRUE INSTALL_LTDL_FALSE INSTALL_LTDL_TRUE -ARGZ_H +LT_ARGZ_H sys_symbol_underscore LIBADD_DL LT_DLPREOPEN @@ -740,6 +762,7 @@ LTDLINCL LTDLDEPS LIBLTDL +LT_SYS_LIBRARY_PATH OTOOL64 OTOOL LIPO @@ -866,6 +889,7 @@ enable_shared with_pic enable_fast_install +with_aix_soname with_gnu_ld with_sysroot enable_libtool_lock @@ -884,6 +908,7 @@ with_xml with_openssl with_libjson +with_pcre enable_maintainer_mode with_zlib enable_zlib_vcheck @@ -891,6 +916,7 @@ with_libbz2_prefix enable_unrar enable_getaddrinfo +with_systemdsystemunitdir enable_ipv6 enable_dns enable_fanotify @@ -914,8 +940,11 @@ with_libpdcurses_prefix enable_distcheck_werror with_system_llvm +with_llvm_linking enable_llvm enable_sha_collector_for_internal_use +enable_yara +enable_libfreshclam with_libcurl ' ac_precious_vars='build_alias @@ -926,7 +955,17 @@ LDFLAGS LIBS CPPFLAGS -CPP' +CPP +LT_SYS_LIBRARY_PATH +YACC +YFLAGS +PKG_CONFIG +PKG_CONFIG_PATH +PKG_CONFIG_LIBDIR +CHECK_CFLAGS +CHECK_LIBS +SYSTEMD_CFLAGS +SYSTEMD_LIBS' ac_subdirs_all=' libclamav/c++' @@ -1468,7 +1507,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures ClamAV 0.98.6 to adapt to many kinds of systems. +\`configure' configures ClamAV 0.99.2 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1539,7 +1578,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of ClamAV 0.98.6:";; + short | recursive ) echo "Configuration of ClamAV 0.99.2:";; esac cat <<\_ACEOF @@ -1559,77 +1598,96 @@ optimize for fast installation [default=yes] --disable-libtool-lock avoid locking (might break parallel builds) --enable-ltdl-install install libltdl - --disable-gcc-vcheck do not check for buggy gcc version - --enable-experimental enable experimental code - --disable-mempool disable memory pools - --enable-check Enable 'check' unit tests (default=auto) + --disable-gcc-vcheck do not check for buggy gcc version + --enable-experimental enable experimental code + --disable-mempool do not use memory pools + --enable-check enable check unit tests [default=auto] --disable-rpath do not hardcode runtime library paths --enable-coverage turn on test coverage [default=no] - --disable-xml disable DMG and XAR support - --enable-maintainer-mode enable make rules and dependencies not useful - (and sometimes confusing) to the casual installer - --disable-zlib-vcheck do not check for buggy zlib version - --disable-bzip2 disable bzip2 support - --disable-unrar don't build libclamunrar and libclamunrar_iface - --disable-getaddrinfo disable support for getaddrinfo - --disable-ipv6 disable IPv6 support - --disable-dns disable support for database verification through - DNS - --disable-fanotify disable fanotify support (Linux only) - --enable-milter build clamav-milter - --disable-pthreads disable POSIX threads support - --disable-cr don't link with C reentrant library (BSD) - --enable-id-check use id utility instead of /etc/passwd parsing - --enable-yp-check use ypmatch utility instead of /etc/passwd parsing - --enable-no-cache use "Cache-Control: no-cache" in freshclam - --enable-dns-fix enable workaround for broken DNS servers (as in SpeedTouch 510) - --enable-bigstack increase thread stack size - --enable-readdir_r enable support for readdir_r - --disable-fdpassing don't build file descriptor passing support - --enable-clamdtop Enable 'clamdtop' tool [default=auto] + --disable-xml do not include DMG and XAR support + --enable-maintainer-mode + make rules and dependencies not useful (and + sometimes confusing) to the casual installer + --disable-zlib-vcheck do not check for buggy zlib version + --disable-bzip2 do not include bzip2 support + --disable-unrar do not build libclamunrar and libclamunrar_iface + --disable-getaddrinfo do not include support for getaddrinfo + --disable-ipv6 do not include IPv6 support + --disable-dns do not include support for database verification + through DNS + --disable-fanotify do not add fanotify support (Linux only) + --enable-milter build clamav-milter + --disable-pthreads do not include POSIX threads support + --disable-cr do not link with C reentrant library (BSD) + --enable-id-check use id utility instead of /etc/passwd parsing + --enable-yp-check use ypmatch utility instead of /etc/passwd parsing + --enable-no-cache use "Cache-Control: no-cache" in freshclam + --enable-dns-fix enable workaround for broken DNS servers (as in + SpeedTouch 510) + --enable-bigstack increase thread stack size + --enable-readdir_r enable support for readdir_r + --disable-fdpassing do not build file descriptor passing support + --enable-clamdtop build clamdtop tool [default=auto] --enable-distcheck-werror enable warnings as error for distcheck [default=no] - --enable-llvm Enable 'llvm' JIT/verifier support [default=auto] + --enable-llvm enable 'llvm' JIT/verifier support [default=auto] + --disable-yara do not include yara support + --enable-libfreshclam enable building of libfreshclam Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) --with-pic[=PKGS] try to use only PIC/non-PIC objects [default=use both] + --with-aix-soname=aix|svr4|both + shared library versioning (aka "SONAME") variant to + provide on AIX, [default=aix]. --with-gnu-ld assume the C compiler uses GNU ld [default=no] - --with-sysroot=DIR Search for dependent libraries within DIR - (or the compiler's sysroot if not specified). + --with-sysroot[=DIR] Search for dependent libraries within DIR (or the + compiler's sysroot if not specified). --with-included-ltdl use the GNU ltdl sources included here --with-ltdl-include=DIR use the ltdl headers installed in DIR --with-ltdl-lib=DIR use the libltdl.la installed in DIR - --with-gnu-ld assume the C compiler uses GNU ld default=no + --with-gnu-ld assume the C compiler uses GNU ld [default=no] --with-libcheck-prefix[=DIR] search for libcheck in DIR/include and DIR/lib --without-libcheck-prefix don't search for libcheck in includedir and libdir - --with-xml=DIR path to directory containing libxml2 library (default= - /usr/local or /usr if not found in /usr/local) - --with-openssl=DIR path to directory containing openssl (default= - /usr/local or /usr if not found in /usr/local) - --with-libjson=DIR path to directory containing libjson (default= - /usr/local or /usr if not found in /usr/local) - --with-zlib=DIR path to directory containing zlib library (default= - /usr/local or /usr if not found in /usr/local) + --with-xml[=DIR] path to directory containing libxml2 library + [default=/usr/local or /usr if not found in + /usr/local] + --with-openssl[=DIR] path to directory containing openssl + [default=/usr/local or /usr if not found in + /usr/local] + --with-libjson[=DIR] path to directory containing libjson + [default=/usr/local or /usr if not found in + /usr/local] + --with-pcre[=DIR] path to directory containing libpcre library, + prioritizes PCRE2 over PCRE [default=search PATH + environment variable] + --with-zlib[=DIR] path to directory containing zlib library + [default=/usr/local or /usr if not found in + /usr/local] --with-libbz2-prefix[=DIR] search for libbz2 in DIR/include and DIR/lib --without-libbz2-prefix don't search for libbz2 in includedir and libdir - --with-iconv supports iconv() (default=auto) - --with-user=uid name of the clamav user (default=clamav) - --with-group=gid name of the clamav group (default=clamav) - --with-version=STR use custom version string (dev only) - --with-dbdir=path path to virus database directory + --with-systemdsystemunitdir=DIR + Directory for systemd service files + --with-iconv supports iconv() [default=auto] + --with-user[=uid] name of the clamav user [default=clamav] + --with-group[=gid] name of the clamav group [default=clamav] + --with-version[=STR] use custom version string (dev only) + --with-dbdir[=path] path to virus database directory --with-libncurses-prefix[=DIR] search for libncurses in DIR/include and DIR/lib --without-libncurses-prefix don't search for libncurses in includedir and libdir --with-libpdcurses-prefix[=DIR] search for libpdcurses in DIR/include and DIR/lib --without-libpdcurses-prefix don't search for libpdcurses in includedir and libdir - --with-system-llvm Use system llvm instead of built-in, uses full path - to llvm-config (default= /usr/local or /usr if not - found in /usr/local) - --with-libcurl=DIR path to directory containing libcurl (default= - /usr/local or /usr if not found in /usr/local) + --with-system-llvm use system llvm instead of built-in, uses full path + to llvm-config [default=/usr/local or /usr if not + found in /usr/local] + --with-llvm-linking specifies method to linking llvm [static|dynamic], + only valid with --with-system-llvm + --with-libcurl[=DIR] path to directory containing libcurl + [default=/usr/local or /usr if not found in + /usr/local] Some influential environment variables: CC C compiler command @@ -1640,6 +1698,26 @@ CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I if you have headers in a nonstandard directory CPP C preprocessor + LT_SYS_LIBRARY_PATH + User-defined run-time library search path. + YACC The `Yet Another Compiler Compiler' implementation to use. + Defaults to the first program found out of: `bison -y', `byacc', + `yacc'. + YFLAGS The list of arguments that will be passed by default to $YACC. + This script will default YFLAGS to the empty string to avoid a + default value of `-d' given by some make applications. + PKG_CONFIG path to pkg-config utility + PKG_CONFIG_PATH + directories to add to pkg-config's search path + PKG_CONFIG_LIBDIR + path overriding pkg-config's built-in search path + CHECK_CFLAGS + C compiler flags for CHECK, overriding pkg-config + CHECK_LIBS linker flags for CHECK, overriding pkg-config + SYSTEMD_CFLAGS + C compiler flags for SYSTEMD, overriding pkg-config + SYSTEMD_LIBS + linker flags for SYSTEMD, overriding pkg-config Use these variables to override the choices made by `configure' or to help it to find libraries and programs with nonstandard names/locations. @@ -1708,7 +1786,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -ClamAV configure 0.98.6 +ClamAV configure 0.99.2 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2177,7 +2255,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by ClamAV $as_me 0.98.6, which was +It was created by ClamAV $as_me 0.99.2, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -3346,7 +3424,7 @@ # Define the identity of the package. PACKAGE='clamav' - VERSION='0.98.6' + VERSION='0.99.2' # Some tools Automake needs. @@ -5087,10 +5165,10 @@ -VERSION="0.98.6" +VERSION="0.99.2" -LC_CURRENT=7 -LC_REVISION=25 +LC_CURRENT=8 +LC_REVISION=1 LC_AGE=1 LIBCLAMAV_VERSION="$LC_CURRENT":"$LC_REVISION":"$LC_AGE" @@ -5136,8 +5214,8 @@ -macro_version='2.4.2' -macro_revision='1.3337' +macro_version='2.4.6' +macro_revision='2.4.6' @@ -5151,7 +5229,7 @@ -ltmain="$ac_aux_dir/ltmain.sh" +ltmain=$ac_aux_dir/ltmain.sh # Backslashify metacharacters that are still active within # double-quoted strings. @@ -5200,7 +5278,7 @@ $ECHO "" } -case "$ECHO" in +case $ECHO in printf*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: printf" >&5 $as_echo "printf" >&6; } ;; print*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: print -r" >&5 @@ -5393,19 +5471,19 @@ # Check whether --with-gnu-ld was given. if test "${with_gnu_ld+set}" = set; then : - withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes + withval=$with_gnu_ld; test no = "$withval" || with_gnu_ld=yes else with_gnu_ld=no fi ac_prog=ld -if test "$GCC" = yes; then +if test yes = "$GCC"; then # Check if gcc -print-prog-name=ld gives a path. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5 $as_echo_n "checking for ld used by $CC... " >&6; } case $host in *-*-mingw*) - # gcc leaves a trailing carriage return which upsets mingw + # gcc leaves a trailing carriage return, which upsets mingw ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; *) ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; @@ -5419,7 +5497,7 @@ while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"` done - test -z "$LD" && LD="$ac_prog" + test -z "$LD" && LD=$ac_prog ;; "") # If it fails, then pretend we aren't using GCC. @@ -5430,7 +5508,7 @@ with_gnu_ld=unknown ;; esac -elif test "$with_gnu_ld" = yes; then +elif test yes = "$with_gnu_ld"; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5 $as_echo_n "checking for GNU ld... " >&6; } else @@ -5441,32 +5519,32 @@ $as_echo_n "(cached) " >&6 else if test -z "$LD"; then - lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR for ac_dir in $PATH; do - IFS="$lt_save_ifs" + IFS=$lt_save_ifs test -z "$ac_dir" && ac_dir=. if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then - lt_cv_path_LD="$ac_dir/$ac_prog" + lt_cv_path_LD=$ac_dir/$ac_prog # Check to see if the program is GNU ld. I'd rather use --version, # but apparently some variants of GNU ld only accept -v. # Break only if it was the GNU/non-GNU ld that we prefer. case `"$lt_cv_path_LD" -v 2>&1 &5 $as_echo "$LD" >&6; } @@ -5509,33 +5587,38 @@ else if test -n "$NM"; then # Let the user override the test. - lt_cv_path_NM="$NM" + lt_cv_path_NM=$NM else - lt_nm_to_check="${ac_tool_prefix}nm" + lt_nm_to_check=${ac_tool_prefix}nm if test -n "$ac_tool_prefix" && test "$build" = "$host"; then lt_nm_to_check="$lt_nm_to_check nm" fi for lt_tmp_nm in $lt_nm_to_check; do - lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do - IFS="$lt_save_ifs" + IFS=$lt_save_ifs test -z "$ac_dir" && ac_dir=. - tmp_nm="$ac_dir/$lt_tmp_nm" - if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then + tmp_nm=$ac_dir/$lt_tmp_nm + if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then # Check to see if the nm accepts a BSD-compat flag. - # Adding the `sed 1q' prevents false positives on HP-UX, which says: + # Adding the 'sed 1q' prevents false positives on HP-UX, which says: # nm: unknown option "B" ignored # Tru64's nm complains that /dev/null is an invalid object file - case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in - */dev/null* | *'Invalid file or object type'*) + # MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty + case $build_os in + mingw*) lt_bad_file=conftest.nm/nofile ;; + *) lt_bad_file=/dev/null ;; + esac + case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in + *$lt_bad_file* | *'Invalid file or object type'*) lt_cv_path_NM="$tmp_nm -B" - break + break 2 ;; *) case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in */dev/null*) lt_cv_path_NM="$tmp_nm -p" - break + break 2 ;; *) lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but @@ -5546,15 +5629,15 @@ esac fi done - IFS="$lt_save_ifs" + IFS=$lt_save_ifs done : ${lt_cv_path_NM=no} fi fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5 $as_echo "$lt_cv_path_NM" >&6; } -if test "$lt_cv_path_NM" != "no"; then - NM="$lt_cv_path_NM" +if test no != "$lt_cv_path_NM"; then + NM=$lt_cv_path_NM else # Didn't find any BSD compatible name lister, look for dumpbin. if test -n "$DUMPBIN"; then : @@ -5660,9 +5743,9 @@ fi fi - case `$DUMPBIN -symbols /dev/null 2>&1 | sed '1q'` in + case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in *COFF*) - DUMPBIN="$DUMPBIN -symbols" + DUMPBIN="$DUMPBIN -symbols -headers" ;; *) DUMPBIN=: @@ -5670,8 +5753,8 @@ esac fi - if test "$DUMPBIN" != ":"; then - NM="$DUMPBIN" + if test : != "$DUMPBIN"; then + NM=$DUMPBIN fi fi test -z "$NM" && NM=nm @@ -5722,7 +5805,7 @@ $as_echo_n "(cached) " >&6 else i=0 - teststring="ABCD" + teststring=ABCD case $build_os in msdosdjgpp*) @@ -5762,7 +5845,7 @@ lt_cv_sys_max_cmd_len=8192; ;; - netbsd* | freebsd* | openbsd* | darwin* | dragonfly*) + bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*) # This has been around since 386BSD, at least. Likely further. if test -x /sbin/sysctl; then lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` @@ -5812,22 +5895,23 @@ ;; *) lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null` - if test -n "$lt_cv_sys_max_cmd_len"; then + if test -n "$lt_cv_sys_max_cmd_len" && \ + test undefined != "$lt_cv_sys_max_cmd_len"; then lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` else # Make teststring a little bigger before we do anything with it. # a 1K string should be a reasonable start. - for i in 1 2 3 4 5 6 7 8 ; do + for i in 1 2 3 4 5 6 7 8; do teststring=$teststring$teststring done SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}} # If test is not a shell built-in, we'll probably end up computing a # maximum length that is only half of the actual maximum length, but # we can't tell. - while { test "X"`env echo "$teststring$teststring" 2>/dev/null` \ + while { test X`env echo "$teststring$teststring" 2>/dev/null` \ = "X$teststring$teststring"; } >/dev/null 2>&1 && - test $i != 17 # 1/2 MB should be enough + test 17 != "$i" # 1/2 MB should be enough do i=`expr $i + 1` teststring=$teststring$teststring @@ -5845,7 +5929,7 @@ fi -if test -n $lt_cv_sys_max_cmd_len ; then +if test -n "$lt_cv_sys_max_cmd_len"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5 $as_echo "$lt_cv_sys_max_cmd_len" >&6; } else @@ -5863,30 +5947,6 @@ : ${MV="mv -f"} : ${RM="rm -f"} -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the shell understands some XSI constructs" >&5 -$as_echo_n "checking whether the shell understands some XSI constructs... " >&6; } -# Try some XSI features -xsi_shell=no -( _lt_dummy="a/b/c" - test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \ - = c,a/b,b/c, \ - && eval 'test $(( 1 + 1 )) -eq 2 \ - && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \ - && xsi_shell=yes -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $xsi_shell" >&5 -$as_echo "$xsi_shell" >&6; } - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the shell understands \"+=\"" >&5 -$as_echo_n "checking whether the shell understands \"+=\"... " >&6; } -lt_shell_append=no -( foo=bar; set foo baz; eval "$1+=\$2" && test "$foo" = barbaz ) \ - >/dev/null 2>&1 \ - && lt_shell_append=yes -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_shell_append" >&5 -$as_echo "$lt_shell_append" >&6; } - - if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then lt_unset=unset else @@ -6009,13 +6069,13 @@ reload_cmds='$LD$reload_flag -o $output$reload_objs' case $host_os in cygwin* | mingw* | pw32* | cegcc*) - if test "$GCC" != yes; then + if test yes != "$GCC"; then reload_cmds=false fi ;; darwin*) - if test "$GCC" = yes; then - reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs' + if test yes = "$GCC"; then + reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs' else reload_cmds='$LD$reload_flag -o $output$reload_objs' fi @@ -6143,13 +6203,13 @@ # Need to set the preceding variable on all platforms that support # interlibrary dependencies. # 'none' -- dependencies not supported. -# `unknown' -- same as none, but documents that we really don't know. +# 'unknown' -- same as none, but documents that we really don't know. # 'pass_all' -- all dependencies passed with no checks. # 'test_compile' -- check by making test program. # 'file_magic [[regex]]' -- check by looking for files in library path -# which responds to the $file_magic_cmd with a given extended regex. -# If you have `file' or equivalent on your system and you're not sure -# whether `pass_all' will *always* work, you probably want this one. +# that responds to the $file_magic_cmd with a given extended regex. +# If you have 'file' or equivalent on your system and you're not sure +# whether 'pass_all' will *always* work, you probably want this one. case $host_os in aix[4-9]*) @@ -6176,8 +6236,7 @@ # Base MSYS/MinGW do not provide the 'file' command needed by # func_win32_libid shell function, so use a weaker test based on 'objdump', # unless we find 'file', for example because we are cross-compiling. - # func_win32_libid assumes BSD nm, so disallow it if using MS dumpbin. - if ( test "$lt_cv_nm_interface" = "BSD nm" && file / ) >/dev/null 2>&1; then + if ( file / ) >/dev/null 2>&1; then lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' lt_cv_file_magic_cmd='func_win32_libid' else @@ -6213,10 +6272,6 @@ fi ;; -gnu*) - lt_cv_deplibs_check_method=pass_all - ;; - haiku*) lt_cv_deplibs_check_method=pass_all ;; @@ -6255,7 +6310,7 @@ ;; # This must be glibc/ELF. -linux* | k*bsd*-gnu | kopensolaris*-gnu) +linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) lt_cv_deplibs_check_method=pass_all ;; @@ -6277,8 +6332,8 @@ lt_cv_deplibs_check_method=pass_all ;; -openbsd*) - if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then +openbsd* | bitrig*) + if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$' else lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$' @@ -6331,6 +6386,9 @@ tpf*) lt_cv_deplibs_check_method=pass_all ;; +os2*) + lt_cv_deplibs_check_method=pass_all + ;; esac fi @@ -6488,8 +6546,8 @@ case $host_os in cygwin* | mingw* | pw32* | cegcc*) - # two different shell functions defined in ltmain.sh - # decide which to use based on capabilities of $DLLTOOL + # two different shell functions defined in ltmain.sh; + # decide which one to use based on capabilities of $DLLTOOL case `$DLLTOOL --help 2>&1` in *--identify-strict*) lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib @@ -6501,7 +6559,7 @@ ;; *) # fallback: assume linklib IS sharedlib - lt_cv_sharedlib_from_linklib_cmd="$ECHO" + lt_cv_sharedlib_from_linklib_cmd=$ECHO ;; esac @@ -6655,7 +6713,7 @@ ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } - if test "$ac_status" -eq 0; then + if test 0 -eq "$ac_status"; then # Ensure the archiver fails upon bogus file names. rm -f conftest.$ac_objext libconftest.a { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5 @@ -6663,7 +6721,7 @@ ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } - if test "$ac_status" -ne 0; then + if test 0 -ne "$ac_status"; then lt_cv_ar_at_file=@ fi fi @@ -6676,7 +6734,7 @@ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5 $as_echo "$lt_cv_ar_at_file" >&6; } -if test "x$lt_cv_ar_at_file" = xno; then +if test no = "$lt_cv_ar_at_file"; then archiver_list_spec= else archiver_list_spec=$lt_cv_ar_at_file @@ -6893,7 +6951,7 @@ if test -n "$RANLIB"; then case $host_os in - openbsd*) + bitrig* | openbsd*) old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib" ;; *) @@ -6983,7 +7041,7 @@ symcode='[ABCDGISTW]' ;; hpux*) - if test "$host_cpu" = ia64; then + if test ia64 = "$host_cpu"; then symcode='[ABCDEGRST]' fi ;; @@ -7016,14 +7074,44 @@ symcode='[ABCDGIRSTW]' ;; esac +if test "$lt_cv_nm_interface" = "MS dumpbin"; then + # Gets list of data symbols to import. + lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'" + # Adjust the below global symbol transforms to fixup imported variables. + lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'" + lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'" + lt_c_name_lib_hook="\ + -e 's/^I .* \(lib.*\)$/ {\"\1\", (void *) 0},/p'\ + -e 's/^I .* \(.*\)$/ {\"lib\1\", (void *) 0},/p'" +else + # Disable hooks by default. + lt_cv_sys_global_symbol_to_import= + lt_cdecl_hook= + lt_c_name_hook= + lt_c_name_lib_hook= +fi + # Transform an extracted symbol line into a proper C declaration. # Some systems (esp. on ia64) link data and code symbols differently, # so use this general approach. -lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" +lt_cv_sys_global_symbol_to_cdecl="sed -n"\ +$lt_cdecl_hook\ +" -e 's/^T .* \(.*\)$/extern int \1();/p'"\ +" -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'" # Transform an extracted symbol line into symbol name and symbol address -lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\)[ ]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"\2\", (void *) \&\2},/p'" -lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([^ ]*\)[ ]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \(lib[^ ]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"lib\2\", (void *) \&\2},/p'" +lt_cv_sys_global_symbol_to_c_name_address="sed -n"\ +$lt_c_name_hook\ +" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ +" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'" + +# Transform an extracted symbol line into symbol name with lib prefix and +# symbol address. +lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\ +$lt_c_name_lib_hook\ +" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ +" -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\ +" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"lib\1\", (void *) \&\1},/p'" # Handle CRLF in mingw tool chain opt_cr= @@ -7041,21 +7129,24 @@ # Write the raw and C identifiers. if test "$lt_cv_nm_interface" = "MS dumpbin"; then - # Fake it for dumpbin and say T for any non-static function - # and D for any global variable. + # Fake it for dumpbin and say T for any non-static function, + # D for any global variable and I for any imported variable. # Also find C++ and __fastcall symbols from MSVC++, # which start with @ or ?. lt_cv_sys_global_symbol_pipe="$AWK '"\ " {last_section=section; section=\$ 3};"\ " /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\ " /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\ +" /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\ +" /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\ +" /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\ " \$ 0!~/External *\|/{next};"\ " / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\ " {if(hide[section]) next};"\ -" {f=0}; \$ 0~/\(\).*\|/{f=1}; {printf f ? \"T \" : \"D \"};"\ -" {split(\$ 0, a, /\||\r/); split(a[2], s)};"\ -" s[1]~/^[@?]/{print s[1], s[1]; next};"\ -" s[1]~prfx {split(s[1],t,\"@\"); print t[1], substr(t[1],length(prfx))}"\ +" {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\ +" {split(\$ 0,a,/\||\r/); split(a[2],s)};"\ +" s[1]~/^[@?]/{print f,s[1],s[1]; next};"\ +" s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\ " ' prfx=^$ac_symprfx" else lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" @@ -7103,11 +7194,11 @@ if $GREP ' nm_test_func$' "$nlist" >/dev/null; then cat <<_LT_EOF > conftest.$ac_ext /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ -#if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE) -/* DATA imports from DLLs on WIN32 con't be const, because runtime +#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE +/* DATA imports from DLLs on WIN32 can't be const, because runtime relocations are performed -- see ld's documentation on pseudo-relocs. */ # define LT_DLSYM_CONST -#elif defined(__osf__) +#elif defined __osf__ /* This system does not cope well with relocations in const data. */ # define LT_DLSYM_CONST #else @@ -7133,7 +7224,7 @@ { { "@PROGRAM@", (void *) 0 }, _LT_EOF - $SED "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (void *) \&\2},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext + $SED "s/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext cat <<\_LT_EOF >> conftest.$ac_ext {0, (void *) 0} }; @@ -7153,13 +7244,13 @@ mv conftest.$ac_objext conftstm.$ac_objext lt_globsym_save_LIBS=$LIBS lt_globsym_save_CFLAGS=$CFLAGS - LIBS="conftstm.$ac_objext" + LIBS=conftstm.$ac_objext CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag" if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 (eval $ac_link) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest${ac_exeext}; then + test $ac_status = 0; } && test -s conftest$ac_exeext; then pipe_works=yes fi LIBS=$lt_globsym_save_LIBS @@ -7180,7 +7271,7 @@ rm -rf conftest* conftst* # Do not use the global_symbol_pipe unless it works. - if test "$pipe_works" = yes; then + if test yes = "$pipe_works"; then break else lt_cv_sys_global_symbol_pipe= @@ -7233,6 +7324,16 @@ + + + + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5 $as_echo_n "checking for sysroot... " >&6; } @@ -7245,9 +7346,9 @@ lt_sysroot= -case ${with_sysroot} in #( +case $with_sysroot in #( yes) - if test "$GCC" = yes; then + if test yes = "$GCC"; then lt_sysroot=`$CC --print-sysroot 2>/dev/null` fi ;; #( @@ -7257,8 +7358,8 @@ no|'') ;; #( *) - { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_sysroot}" >&5 -$as_echo "${with_sysroot}" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_sysroot" >&5 +$as_echo "$with_sysroot" >&6; } as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5 ;; esac @@ -7270,18 +7371,99 @@ +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a working dd" >&5 +$as_echo_n "checking for a working dd... " >&6; } +if ${ac_cv_path_lt_DD+:} false; then : + $as_echo_n "(cached) " >&6 +else + printf 0123456789abcdef0123456789abcdef >conftest.i +cat conftest.i conftest.i >conftest2.i +: ${lt_DD:=$DD} +if test -z "$lt_DD"; then + ac_path_lt_DD_found=false + # Loop through the user's path and test for each of PROGNAME-LIST + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in dd; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_lt_DD="$as_dir/$ac_prog$ac_exec_ext" + as_fn_executable_p "$ac_path_lt_DD" || continue +if "$ac_path_lt_DD" bs=32 count=1 conftest.out 2>/dev/null; then + cmp -s conftest.i conftest.out \ + && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=: +fi + $ac_path_lt_DD_found && break 3 + done + done + done +IFS=$as_save_IFS + if test -z "$ac_cv_path_lt_DD"; then + : + fi +else + ac_cv_path_lt_DD=$lt_DD +fi + +rm -f conftest.i conftest2.i conftest.out +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_lt_DD" >&5 +$as_echo "$ac_cv_path_lt_DD" >&6; } + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to truncate binary pipes" >&5 +$as_echo_n "checking how to truncate binary pipes... " >&6; } +if ${lt_cv_truncate_bin+:} false; then : + $as_echo_n "(cached) " >&6 +else + printf 0123456789abcdef0123456789abcdef >conftest.i +cat conftest.i conftest.i >conftest2.i +lt_cv_truncate_bin= +if "$ac_cv_path_lt_DD" bs=32 count=1 conftest.out 2>/dev/null; then + cmp -s conftest.i conftest.out \ + && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1" +fi +rm -f conftest.i conftest2.i conftest.out +test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q" +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_truncate_bin" >&5 +$as_echo "$lt_cv_truncate_bin" >&6; } + + + + + + + +# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. +func_cc_basename () +{ + for cc_temp in $*""; do + case $cc_temp in + compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; + distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; + \-*) ;; + *) break;; + esac + done + func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` +} + # Check whether --enable-libtool-lock was given. if test "${enable_libtool_lock+set}" = set; then : enableval=$enable_libtool_lock; fi -test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes +test no = "$enable_libtool_lock" || enable_libtool_lock=yes # Some flags need to be propagated to the compiler or linker for good # libtool support. case $host in ia64-*-hpux*) - # Find out which ABI we are using. + # Find out what ABI is being produced by ac_compile, and set mode + # options accordingly. echo 'int i;' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 @@ -7290,24 +7472,25 @@ test $ac_status = 0; }; then case `/usr/bin/file conftest.$ac_objext` in *ELF-32*) - HPUX_IA64_MODE="32" + HPUX_IA64_MODE=32 ;; *ELF-64*) - HPUX_IA64_MODE="64" + HPUX_IA64_MODE=64 ;; esac fi rm -rf conftest* ;; *-*-irix6*) - # Find out which ABI we are using. + # Find out what ABI is being produced by ac_compile, and set linker + # options accordingly. echo '#line '$LINENO' "configure"' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then - if test "$lt_cv_prog_gnu_ld" = yes; then + if test yes = "$lt_cv_prog_gnu_ld"; then case `/usr/bin/file conftest.$ac_objext` in *32-bit*) LD="${LD-ld} -melf32bsmip" @@ -7336,9 +7519,50 @@ rm -rf conftest* ;; -x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \ +mips64*-*linux*) + # Find out what ABI is being produced by ac_compile, and set linker + # options accordingly. + echo '#line '$LINENO' "configure"' > conftest.$ac_ext + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + emul=elf + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + emul="${emul}32" + ;; + *64-bit*) + emul="${emul}64" + ;; + esac + case `/usr/bin/file conftest.$ac_objext` in + *MSB*) + emul="${emul}btsmip" + ;; + *LSB*) + emul="${emul}ltsmip" + ;; + esac + case `/usr/bin/file conftest.$ac_objext` in + *N32*) + emul="${emul}n32" + ;; + esac + LD="${LD-ld} -m $emul" + fi + rm -rf conftest* + ;; + +x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \ s390*-*linux*|s390*-*tpf*|sparc*-*linux*) - # Find out which ABI we are using. + # Find out what ABI is being produced by ac_compile, and set linker + # options accordingly. Note that the listed cases only cover the + # situations where additional linker options are needed (such as when + # doing 32-bit compilation for a host where ld defaults to 64-bit, or + # vice versa); the common cases where no linker options are needed do + # not appear in the list. echo 'int i;' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 @@ -7352,9 +7576,19 @@ LD="${LD-ld} -m elf_i386_fbsd" ;; x86_64-*linux*) - LD="${LD-ld} -m elf_i386" + case `/usr/bin/file conftest.o` in + *x86-64*) + LD="${LD-ld} -m elf32_x86_64" + ;; + *) + LD="${LD-ld} -m elf_i386" + ;; + esac + ;; + powerpc64le-*linux*) + LD="${LD-ld} -m elf32lppclinux" ;; - ppc64-*linux*|powerpc64-*linux*) + powerpc64-*linux*) LD="${LD-ld} -m elf32ppclinux" ;; s390x-*linux*) @@ -7373,7 +7607,10 @@ x86_64-*linux*) LD="${LD-ld} -m elf_x86_64" ;; - ppc*-*linux*|powerpc*-*linux*) + powerpcle-*linux*) + LD="${LD-ld} -m elf64lppc" + ;; + powerpc-*linux*) LD="${LD-ld} -m elf64ppc" ;; s390*-*linux*|s390*-*tpf*) @@ -7391,7 +7628,7 @@ *-*-sco3.2v5*) # On SCO OpenServer 5, we need -belf to get full-featured binaries. - SAVE_CFLAGS="$CFLAGS" + SAVE_CFLAGS=$CFLAGS CFLAGS="$CFLAGS -belf" { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5 $as_echo_n "checking whether the C compiler needs -belf... " >&6; } @@ -7431,13 +7668,14 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5 $as_echo "$lt_cv_cc_needs_belf" >&6; } - if test x"$lt_cv_cc_needs_belf" != x"yes"; then + if test yes != "$lt_cv_cc_needs_belf"; then # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf - CFLAGS="$SAVE_CFLAGS" + CFLAGS=$SAVE_CFLAGS fi ;; *-*solaris*) - # Find out which ABI we are using. + # Find out what ABI is being produced by ac_compile, and set linker + # options accordingly. echo 'int i;' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 @@ -7449,7 +7687,7 @@ case $lt_cv_prog_gnu_ld in yes*) case $host in - i?86-*-solaris*) + i?86-*-solaris*|x86_64-*-solaris*) LD="${LD-ld} -m elf_x86_64" ;; sparc*-*-solaris*) @@ -7458,7 +7696,7 @@ esac # GNU ld 2.21 introduced _sol2 emulations. Use them if available. if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then - LD="${LD-ld}_sol2" + LD=${LD-ld}_sol2 fi ;; *) @@ -7474,7 +7712,7 @@ ;; esac -need_locks="$enable_libtool_lock" +need_locks=$enable_libtool_lock if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}mt", so it can be a program name with args. @@ -7585,7 +7823,7 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&5 $as_echo "$lt_cv_path_mainfest_tool" >&6; } -if test "x$lt_cv_path_mainfest_tool" != xyes; then +if test yes != "$lt_cv_path_mainfest_tool"; then MANIFEST_TOOL=: fi @@ -8088,7 +8326,7 @@ $as_echo_n "(cached) " >&6 else lt_cv_apple_cc_single_mod=no - if test -z "${LT_MULTI_MODULE}"; then + if test -z "$LT_MULTI_MODULE"; then # By default we will add the -single_module flag. You can override # by either setting the environment variable LT_MULTI_MODULE # non-empty at configure time, or by adding -multi_module to the @@ -8106,7 +8344,7 @@ cat conftest.err >&5 # Otherwise, if the output was created with a 0 exit code from # the compiler, it worked. - elif test -f libconftest.dylib && test $_lt_result -eq 0; then + elif test -f libconftest.dylib && test 0 = "$_lt_result"; then lt_cv_apple_cc_single_mod=yes else cat conftest.err >&5 @@ -8145,7 +8383,7 @@ fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext - LDFLAGS="$save_LDFLAGS" + LDFLAGS=$save_LDFLAGS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5 @@ -8174,7 +8412,7 @@ _lt_result=$? if test -s conftest.err && $GREP force_load conftest.err; then cat conftest.err >&5 - elif test -f conftest && test $_lt_result -eq 0 && $GREP forced_load conftest >/dev/null 2>&1 ; then + elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then lt_cv_ld_force_load=yes else cat conftest.err >&5 @@ -8187,32 +8425,32 @@ $as_echo "$lt_cv_ld_force_load" >&6; } case $host_os in rhapsody* | darwin1.[012]) - _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;; + _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;; darwin1.*) - _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; + _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; darwin*) # darwin 5.x on # if running on 10.5 or later, the deployment target defaults # to the OS version, if on x86, and 10.4, the deployment # target defaults to 10.4. Don't you love it? case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in 10.0,*86*-darwin8*|10.0,*-darwin[91]*) - _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; - 10.[012]*) - _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; + _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; + 10.[012][,.]*) + _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; 10.*) - _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;; + _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; esac ;; esac - if test "$lt_cv_apple_cc_single_mod" = "yes"; then + if test yes = "$lt_cv_apple_cc_single_mod"; then _lt_dar_single_mod='$single_module' fi - if test "$lt_cv_ld_exported_symbols_list" = "yes"; then - _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym' + if test yes = "$lt_cv_ld_exported_symbols_list"; then + _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym' else - _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}' + _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib' fi - if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then + if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then _lt_dsymutil='~$DSYMUTIL $lib || :' else _lt_dsymutil= @@ -8220,6 +8458,41 @@ ;; esac +# func_munge_path_list VARIABLE PATH +# ----------------------------------- +# VARIABLE is name of variable containing _space_ separated list of +# directories to be munged by the contents of PATH, which is string +# having a format: +# "DIR[:DIR]:" +# string "DIR[ DIR]" will be prepended to VARIABLE +# ":DIR[:DIR]" +# string "DIR[ DIR]" will be appended to VARIABLE +# "DIRP[:DIRP]::[DIRA:]DIRA" +# string "DIRP[ DIRP]" will be prepended to VARIABLE and string +# "DIRA[ DIRA]" will be appended to VARIABLE +# "DIR[:DIR]" +# VARIABLE will be replaced by "DIR[ DIR]" +func_munge_path_list () +{ + case x$2 in + x) + ;; + *:) + eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\" + ;; + x:*) + eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\" + ;; + *::*) + eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\" + eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\" + ;; + *) + eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\" + ;; + esac +} + for ac_header in dlfcn.h do : ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default @@ -8248,14 +8521,14 @@ *) enable_static=no # Look at the argument we got. We use all the common list separators. - lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, for pkg in $enableval; do - IFS="$lt_save_ifs" + IFS=$lt_save_ifs if test "X$pkg" = "X$p"; then enable_static=yes fi done - IFS="$lt_save_ifs" + IFS=$lt_save_ifs ;; esac else @@ -8284,14 +8557,14 @@ *) enable_shared=no # Look at the argument we got. We use all the common list separators. - lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, for pkg in $enableval; do - IFS="$lt_save_ifs" + IFS=$lt_save_ifs if test "X$pkg" = "X$p"; then enable_shared=yes fi done - IFS="$lt_save_ifs" + IFS=$lt_save_ifs ;; esac else @@ -8316,14 +8589,14 @@ *) pic_mode=default # Look at the argument we got. We use all the common list separators. - lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, for lt_pkg in $withval; do - IFS="$lt_save_ifs" + IFS=$lt_save_ifs if test "X$lt_pkg" = "X$lt_p"; then pic_mode=yes fi done - IFS="$lt_save_ifs" + IFS=$lt_save_ifs ;; esac else @@ -8331,8 +8604,6 @@ fi -test -z "$pic_mode" && pic_mode=default - @@ -8348,14 +8619,14 @@ *) enable_fast_install=no # Look at the argument we got. We use all the common list separators. - lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, for pkg in $enableval; do - IFS="$lt_save_ifs" + IFS=$lt_save_ifs if test "X$pkg" = "X$p"; then enable_fast_install=yes fi done - IFS="$lt_save_ifs" + IFS=$lt_save_ifs ;; esac else @@ -8369,11 +8640,63 @@ + shared_archive_member_spec= +case $host,$enable_shared in +power*-*-aix[5-9]*,yes) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking which variant of shared library versioning to provide" >&5 +$as_echo_n "checking which variant of shared library versioning to provide... " >&6; } + +# Check whether --with-aix-soname was given. +if test "${with_aix_soname+set}" = set; then : + withval=$with_aix_soname; case $withval in + aix|svr4|both) + ;; + *) + as_fn_error $? "Unknown argument to --with-aix-soname" "$LINENO" 5 + ;; + esac + lt_cv_with_aix_soname=$with_aix_soname +else + if ${lt_cv_with_aix_soname+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_with_aix_soname=aix +fi + + with_aix_soname=$lt_cv_with_aix_soname +fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_aix_soname" >&5 +$as_echo "$with_aix_soname" >&6; } + if test aix != "$with_aix_soname"; then + # For the AIX way of multilib, we name the shared archive member + # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o', + # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File. + # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag, + # the AIX toolchain works better with OBJECT_MODE set (default 32). + if test 64 = "${OBJECT_MODE-32}"; then + shared_archive_member_spec=shr_64 + else + shared_archive_member_spec=shr + fi + fi + ;; +*) + with_aix_soname=aix + ;; +esac + + + + + + + # This can be used to rebuild libtool when needed -LIBTOOL_DEPS="$ltmain" +LIBTOOL_DEPS=$ltmain # Always use our own libtool. LIBTOOL='$(SHELL) $(top_builddir)/libtool' @@ -8422,7 +8745,7 @@ -if test -n "${ZSH_VERSION+set}" ; then +if test -n "${ZSH_VERSION+set}"; then setopt NO_GLOB_SUBST fi @@ -8461,7 +8784,7 @@ # AIX sometimes has problems with the GCC collect2 program. For some # reason, if we set the COLLECT_NAMES environment variable, the problems # vanish in a puff of smoke. - if test "X${COLLECT_NAMES+set}" != Xset; then + if test set != "${COLLECT_NAMES+set}"; then COLLECT_NAMES= export COLLECT_NAMES fi @@ -8472,14 +8795,14 @@ ofile=libtool can_build_shared=yes -# All known linkers require a `.a' archive for static linking (except MSVC, +# All known linkers require a '.a' archive for static linking (except MSVC, # which needs '.lib'). libext=a -with_gnu_ld="$lt_cv_prog_gnu_ld" +with_gnu_ld=$lt_cv_prog_gnu_ld -old_CC="$CC" -old_CFLAGS="$CFLAGS" +old_CC=$CC +old_CFLAGS=$CFLAGS # Set sane defaults for various variables test -z "$CC" && CC=cc @@ -8488,15 +8811,8 @@ test -z "$LD" && LD=ld test -z "$ac_objext" && ac_objext=o -for cc_temp in $compiler""; do - case $cc_temp in - compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; - distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; - \-*) ;; - *) break;; - esac -done -cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` +func_cc_basename $compiler +cc_basename=$func_cc_basename_result # Only perform the check for file, if the check method requires it @@ -8511,22 +8827,22 @@ else case $MAGIC_CMD in [\\/*] | ?:[\\/]*) - lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. + lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path. ;; *) - lt_save_MAGIC_CMD="$MAGIC_CMD" - lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + lt_save_MAGIC_CMD=$MAGIC_CMD + lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR ac_dummy="/usr/bin$PATH_SEPARATOR$PATH" for ac_dir in $ac_dummy; do - IFS="$lt_save_ifs" + IFS=$lt_save_ifs test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/${ac_tool_prefix}file; then - lt_cv_path_MAGIC_CMD="$ac_dir/${ac_tool_prefix}file" + if test -f "$ac_dir/${ac_tool_prefix}file"; then + lt_cv_path_MAGIC_CMD=$ac_dir/"${ac_tool_prefix}file" if test -n "$file_magic_test_file"; then case $deplibs_check_method in "file_magic "*) file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` - MAGIC_CMD="$lt_cv_path_MAGIC_CMD" + MAGIC_CMD=$lt_cv_path_MAGIC_CMD if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | $EGREP "$file_magic_regex" > /dev/null; then : @@ -8549,13 +8865,13 @@ break fi done - IFS="$lt_save_ifs" - MAGIC_CMD="$lt_save_MAGIC_CMD" + IFS=$lt_save_ifs + MAGIC_CMD=$lt_save_MAGIC_CMD ;; esac fi -MAGIC_CMD="$lt_cv_path_MAGIC_CMD" +MAGIC_CMD=$lt_cv_path_MAGIC_CMD if test -n "$MAGIC_CMD"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 $as_echo "$MAGIC_CMD" >&6; } @@ -8577,22 +8893,22 @@ else case $MAGIC_CMD in [\\/*] | ?:[\\/]*) - lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. + lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path. ;; *) - lt_save_MAGIC_CMD="$MAGIC_CMD" - lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + lt_save_MAGIC_CMD=$MAGIC_CMD + lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR ac_dummy="/usr/bin$PATH_SEPARATOR$PATH" for ac_dir in $ac_dummy; do - IFS="$lt_save_ifs" + IFS=$lt_save_ifs test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/file; then - lt_cv_path_MAGIC_CMD="$ac_dir/file" + if test -f "$ac_dir/file"; then + lt_cv_path_MAGIC_CMD=$ac_dir/"file" if test -n "$file_magic_test_file"; then case $deplibs_check_method in "file_magic "*) file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` - MAGIC_CMD="$lt_cv_path_MAGIC_CMD" + MAGIC_CMD=$lt_cv_path_MAGIC_CMD if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | $EGREP "$file_magic_regex" > /dev/null; then : @@ -8615,13 +8931,13 @@ break fi done - IFS="$lt_save_ifs" - MAGIC_CMD="$lt_save_MAGIC_CMD" + IFS=$lt_save_ifs + MAGIC_CMD=$lt_save_MAGIC_CMD ;; esac fi -MAGIC_CMD="$lt_cv_path_MAGIC_CMD" +MAGIC_CMD=$lt_cv_path_MAGIC_CMD if test -n "$MAGIC_CMD"; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 $as_echo "$MAGIC_CMD" >&6; } @@ -8642,7 +8958,7 @@ # Use C for the default configuration in the libtool script -lt_save_CC="$CC" +lt_save_CC=$CC ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' @@ -8704,7 +9020,7 @@ lt_prog_compiler_no_builtin_flag= -if test "$GCC" = yes; then +if test yes = "$GCC"; then case $cc_basename in nvcc*) lt_prog_compiler_no_builtin_flag=' -Xcompiler -fno-builtin' ;; @@ -8720,7 +9036,7 @@ lt_cv_prog_compiler_rtti_exceptions=no ac_outfile=conftest.$ac_objext echo "$lt_simple_compile_test_code" > conftest.$ac_ext - lt_compiler_flag="-fno-rtti -fno-exceptions" + lt_compiler_flag="-fno-rtti -fno-exceptions" ## exclude from sc_useless_quotes_in_assignment # Insert the option either (1) after the last *FLAGS variable, or # (2) before a word containing "conftest.", or (3) at the end. # Note that $ac_compile itself does not contain backslashes and begins @@ -8750,7 +9066,7 @@ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5 $as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; } -if test x"$lt_cv_prog_compiler_rtti_exceptions" = xyes; then +if test yes = "$lt_cv_prog_compiler_rtti_exceptions"; then lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions" else : @@ -8768,17 +9084,18 @@ lt_prog_compiler_static= - if test "$GCC" = yes; then + if test yes = "$GCC"; then lt_prog_compiler_wl='-Wl,' lt_prog_compiler_static='-static' case $host_os in aix*) # All AIX code is PIC. - if test "$host_cpu" = ia64; then + if test ia64 = "$host_cpu"; then # AIX 5 now supports IA64 processor lt_prog_compiler_static='-Bstatic' fi + lt_prog_compiler_pic='-fPIC' ;; amigaos*) @@ -8789,8 +9106,8 @@ ;; m68k) # FIXME: we need at least 68020 code to build shared libraries, but - # adding the `-m68020' flag to GCC prevents building anything better, - # like `-m68040'. + # adding the '-m68020' flag to GCC prevents building anything better, + # like '-m68040'. lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4' ;; esac @@ -8806,6 +9123,11 @@ # Although the cygwin gcc ignores -fPIC, still need this for old-style # (--disable-auto-import) libraries lt_prog_compiler_pic='-DDLL_EXPORT' + case $host_os in + os2*) + lt_prog_compiler_static='$wl-static' + ;; + esac ;; darwin* | rhapsody*) @@ -8876,7 +9198,7 @@ case $host_os in aix*) lt_prog_compiler_wl='-Wl,' - if test "$host_cpu" = ia64; then + if test ia64 = "$host_cpu"; then # AIX 5 now supports IA64 processor lt_prog_compiler_static='-Bstatic' else @@ -8884,10 +9206,29 @@ fi ;; + darwin* | rhapsody*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + lt_prog_compiler_pic='-fno-common' + case $cc_basename in + nagfor*) + # NAG Fortran compiler + lt_prog_compiler_wl='-Wl,-Wl,,' + lt_prog_compiler_pic='-PIC' + lt_prog_compiler_static='-Bstatic' + ;; + esac + ;; + mingw* | cygwin* | pw32* | os2* | cegcc*) # This hack is so that the source file can tell whether it is being # built for inclusion in a dll (and should export symbols for example). lt_prog_compiler_pic='-DDLL_EXPORT' + case $host_os in + os2*) + lt_prog_compiler_static='$wl-static' + ;; + esac ;; hpux9* | hpux10* | hpux11*) @@ -8903,7 +9244,7 @@ ;; esac # Is there a better lt_prog_compiler_static that works with the bundled CC? - lt_prog_compiler_static='${wl}-a ${wl}archive' + lt_prog_compiler_static='$wl-a ${wl}archive' ;; irix5* | irix6* | nonstopux*) @@ -8912,9 +9253,9 @@ lt_prog_compiler_static='-non_shared' ;; - linux* | k*bsd*-gnu | kopensolaris*-gnu) + linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) case $cc_basename in - # old Intel for x86_64 which still supported -KPIC. + # old Intel for x86_64, which still supported -KPIC. ecc*) lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-KPIC' @@ -8939,6 +9280,12 @@ lt_prog_compiler_pic='-PIC' lt_prog_compiler_static='-Bstatic' ;; + tcc*) + # Fabrice Bellard et al's Tiny C Compiler + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-fPIC' + lt_prog_compiler_static='-static' + ;; pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*) # Portland Group compilers (*not* the Pentium gcc compiler, # which looks to be a dead project) @@ -9036,7 +9383,7 @@ ;; sysv4*MP*) - if test -d /usr/nec ;then + if test -d /usr/nec; then lt_prog_compiler_pic='-Kconform_pic' lt_prog_compiler_static='-Bstatic' fi @@ -9065,7 +9412,7 @@ fi case $host_os in - # For platforms which do not support PIC, -DPIC is meaningless: + # For platforms that do not support PIC, -DPIC is meaningless: *djgpp*) lt_prog_compiler_pic= ;; @@ -9097,7 +9444,7 @@ lt_cv_prog_compiler_pic_works=no ac_outfile=conftest.$ac_objext echo "$lt_simple_compile_test_code" > conftest.$ac_ext - lt_compiler_flag="$lt_prog_compiler_pic -DPIC" + lt_compiler_flag="$lt_prog_compiler_pic -DPIC" ## exclude from sc_useless_quotes_in_assignment # Insert the option either (1) after the last *FLAGS variable, or # (2) before a word containing "conftest.", or (3) at the end. # Note that $ac_compile itself does not contain backslashes and begins @@ -9127,7 +9474,7 @@ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5 $as_echo "$lt_cv_prog_compiler_pic_works" >&6; } -if test x"$lt_cv_prog_compiler_pic_works" = xyes; then +if test yes = "$lt_cv_prog_compiler_pic_works"; then case $lt_prog_compiler_pic in "" | " "*) ;; *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;; @@ -9159,7 +9506,7 @@ $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_static_works=no - save_LDFLAGS="$LDFLAGS" + save_LDFLAGS=$LDFLAGS LDFLAGS="$LDFLAGS $lt_tmp_static_flag" echo "$lt_simple_link_test_code" > conftest.$ac_ext if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then @@ -9178,13 +9525,13 @@ fi fi $RM -r conftest* - LDFLAGS="$save_LDFLAGS" + LDFLAGS=$save_LDFLAGS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5 $as_echo "$lt_cv_prog_compiler_static_works" >&6; } -if test x"$lt_cv_prog_compiler_static_works" = xyes; then +if test yes = "$lt_cv_prog_compiler_static_works"; then : else lt_prog_compiler_static= @@ -9304,8 +9651,8 @@ -hard_links="nottested" -if test "$lt_cv_prog_compiler_c_o" = no && test "$need_locks" != no; then +hard_links=nottested +if test no = "$lt_cv_prog_compiler_c_o" && test no != "$need_locks"; then # do not overwrite the value of need_locks provided by the user { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5 $as_echo_n "checking if we can lock with hard links... " >&6; } @@ -9317,9 +9664,9 @@ ln conftest.a conftest.b 2>/dev/null && hard_links=no { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5 $as_echo "$hard_links" >&6; } - if test "$hard_links" = no; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&5 -$as_echo "$as_me: WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2;} + if test no = "$hard_links"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5 +$as_echo "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;} need_locks=warn fi else @@ -9362,9 +9709,9 @@ # included in the symbol list include_expsyms= # exclude_expsyms can be an extended regexp of symbols to exclude - # it will be wrapped by ` (' and `)$', so one must not match beginning or - # end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', - # as well as any symbol that contains `d'. + # it will be wrapped by ' (' and ')$', so one must not match beginning or + # end of line. Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc', + # as well as any symbol that contains 'd'. exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*' # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out # platforms (ab)use it in PIC code, but their linkers get confused if @@ -9379,7 +9726,7 @@ # FIXME: the MSVC++ port hasn't been tested in a loooong time # When not using gcc, we currently assume that we are using # Microsoft Visual C++. - if test "$GCC" != yes; then + if test yes != "$GCC"; then with_gnu_ld=no fi ;; @@ -9387,7 +9734,7 @@ # we just hope/assume this is gcc and not c89 (= MSVC++) with_gnu_ld=yes ;; - openbsd*) + openbsd* | bitrig*) with_gnu_ld=no ;; esac @@ -9397,7 +9744,7 @@ # On some targets, GNU ld is compatible enough with the native linker # that we're better off using the native interface for both. lt_use_gnu_ld_interface=no - if test "$with_gnu_ld" = yes; then + if test yes = "$with_gnu_ld"; then case $host_os in aix*) # The AIX port of GNU ld has always aspired to compatibility @@ -9419,24 +9766,24 @@ esac fi - if test "$lt_use_gnu_ld_interface" = yes; then + if test yes = "$lt_use_gnu_ld_interface"; then # If archive_cmds runs LD, not CC, wlarc should be empty - wlarc='${wl}' + wlarc='$wl' # Set some defaults for GNU ld with shared library support. These # are reset later if shared libraries are not supported. Putting them # here allows them to be overridden if necessary. runpath_var=LD_RUN_PATH - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - export_dynamic_flag_spec='${wl}--export-dynamic' + hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' + export_dynamic_flag_spec='$wl--export-dynamic' # ancient GNU ld didn't support --whole-archive et. al. if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then - whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' + whole_archive_flag_spec=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' else whole_archive_flag_spec= fi supports_anon_versioning=no - case `$LD -v 2>&1` in + case `$LD -v | $SED -e 's/(^)\+)\s\+//' 2>&1` in *GNU\ gold*) supports_anon_versioning=yes ;; *\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... @@ -9449,7 +9796,7 @@ case $host_os in aix[3-9]*) # On AIX/PPC, the GNU linker is very broken - if test "$host_cpu" != ia64; then + if test ia64 != "$host_cpu"; then ld_shlibs=no cat <<_LT_EOF 1>&2 @@ -9468,7 +9815,7 @@ case $host_cpu in powerpc) # see comment about AmigaOS4 .so support - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' archive_expsym_cmds='' ;; m68k) @@ -9484,7 +9831,7 @@ allow_undefined_flag=unsupported # Joseph Beckenbach says some releases of gcc # support --undefined. This deserves some investigation. FIXME - archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' else ld_shlibs=no fi @@ -9494,7 +9841,7 @@ # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless, # as there is no search path for DLLs. hardcode_libdir_flag_spec='-L$libdir' - export_dynamic_flag_spec='${wl}--export-all-symbols' + export_dynamic_flag_spec='$wl--export-all-symbols' allow_undefined_flag=unsupported always_export_symbols=no enable_shared_with_static_runtimes=yes @@ -9502,61 +9849,89 @@ exclude_expsyms='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname' if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' - # If the export-symbols file already is a .def file (1st line - # is EXPORTS), use it as is; otherwise, prepend... - archive_expsym_cmds='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then - cp $export_symbols $output_objdir/$soname.def; - else - echo EXPORTS > $output_objdir/$soname.def; - cat $export_symbols >> $output_objdir/$soname.def; - fi~ - $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + # If the export-symbols file already is a .def file, use it as + # is; otherwise, prepend EXPORTS... + archive_expsym_cmds='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then + cp $export_symbols $output_objdir/$soname.def; + else + echo EXPORTS > $output_objdir/$soname.def; + cat $export_symbols >> $output_objdir/$soname.def; + fi~ + $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' else ld_shlibs=no fi ;; haiku*) - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' link_all_deplibs=yes ;; + os2*) + hardcode_libdir_flag_spec='-L$libdir' + hardcode_minus_L=yes + allow_undefined_flag=unsupported + shrext_cmds=.dll + archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + prefix_cmds="$SED"~ + if test EXPORTS = "`$SED 1q $export_symbols`"; then + prefix_cmds="$prefix_cmds -e 1d"; + fi~ + prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ + cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' + enable_shared_with_static_runtimes=yes + ;; + interix[3-9]*) hardcode_direct=no hardcode_shlibpath_var=no - hardcode_libdir_flag_spec='${wl}-rpath,$libdir' - export_dynamic_flag_spec='${wl}-E' + hardcode_libdir_flag_spec='$wl-rpath,$libdir' + export_dynamic_flag_spec='$wl-E' # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. # Instead, shared libraries are loaded at an image base (0x10000000 by # default) and relocated if they conflict, which is a slow very memory # consuming and fragmenting process. To avoid this, we pick a random, # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link # time. Moving up from 0x10000000 also allows more sbrk(2) space. - archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' - archive_expsym_cmds='sed "s,^,_," $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-h,$soname ${wl}--retain-symbols-file,$output_objdir/$soname.expsym ${wl}--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + archive_expsym_cmds='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' ;; gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) tmp_diet=no - if test "$host_os" = linux-dietlibc; then + if test linux-dietlibc = "$host_os"; then case $cc_basename in diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn) esac fi if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \ - && test "$tmp_diet" = no + && test no = "$tmp_diet" then tmp_addflag=' $pic_flag' tmp_sharedflag='-shared' case $cc_basename,$host_cpu in pgcc*) # Portland Group C compiler - whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' + whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' tmp_addflag=' $pic_flag' ;; pgf77* | pgf90* | pgf95* | pgfortran*) # Portland Group f77 and f90 compilers - whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' + whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' tmp_addflag=' $pic_flag -Mnomain' ;; ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64 tmp_addflag=' -i_dynamic' ;; @@ -9567,42 +9942,47 @@ lf95*) # Lahey Fortran 8.1 whole_archive_flag_spec= tmp_sharedflag='--shared' ;; + nagfor*) # NAGFOR 5.3 + tmp_sharedflag='-Wl,-shared' ;; xl[cC]* | bgxl[cC]* | mpixl[cC]*) # IBM XL C 8.0 on PPC (deal with xlf below) tmp_sharedflag='-qmkshrobj' tmp_addflag= ;; nvcc*) # Cuda Compiler Driver 2.2 - whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' + whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' compiler_needs_object=yes ;; esac case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C 5.9 - whole_archive_flag_spec='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' + whole_archive_flag_spec='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' compiler_needs_object=yes tmp_sharedflag='-G' ;; *Sun\ F*) # Sun Fortran 8.3 tmp_sharedflag='-G' ;; esac - archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' - if test "x$supports_anon_versioning" = xyes; then + if test yes = "$supports_anon_versioning"; then archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ - echo "local: *; };" >> $output_objdir/$libname.ver~ - $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-version-script ${wl}$output_objdir/$libname.ver -o $lib' + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + echo "local: *; };" >> $output_objdir/$libname.ver~ + $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' fi case $cc_basename in + tcc*) + export_dynamic_flag_spec='-rdynamic' + ;; xlf* | bgf* | bgxlf* | mpixlf*) # IBM XL Fortran 10.1 on PPC cannot create shared libs itself whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive' - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib' - if test "x$supports_anon_versioning" = xyes; then + if test yes = "$supports_anon_versioning"; then archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ - cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ - echo "local: *; };" >> $output_objdir/$libname.ver~ - $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + echo "local: *; };" >> $output_objdir/$libname.ver~ + $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' fi ;; esac @@ -9616,8 +9996,8 @@ archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' wlarc= else - archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' fi ;; @@ -9635,8 +10015,8 @@ _LT_EOF elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then - archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' else ld_shlibs=no fi @@ -9648,7 +10028,7 @@ ld_shlibs=no cat <<_LT_EOF 1>&2 -*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 can not +*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot *** reliably create shared libraries on SCO systems. Therefore, libtool *** is disabling shared libraries support. We urge you to upgrade GNU *** binutils to release 2.16.91.0.3 or newer. Another option is to modify @@ -9663,9 +10043,9 @@ # DT_RUNPATH tag from executables and libraries. But doing so # requires that you compile everything twice, which is a pain. if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' else ld_shlibs=no fi @@ -9682,15 +10062,15 @@ *) if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then - archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' else ld_shlibs=no fi ;; esac - if test "$ld_shlibs" = no; then + if test no = "$ld_shlibs"; then runpath_var= hardcode_libdir_flag_spec= export_dynamic_flag_spec= @@ -9706,7 +10086,7 @@ # Note: this linker hardcodes the directories in LIBPATH if there # are no directories specified by -L. hardcode_minus_L=yes - if test "$GCC" = yes && test -z "$lt_prog_compiler_static"; then + if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then # Neither direct hardcoding nor static linking is supported with a # broken collect2. hardcode_direct=unsupported @@ -9714,34 +10094,57 @@ ;; aix[4-9]*) - if test "$host_cpu" = ia64; then + if test ia64 = "$host_cpu"; then # On IA64, the linker does run time linking by default, so we don't # have to do anything special. aix_use_runtimelinking=no exp_sym_flag='-Bexport' - no_entry_flag="" + no_entry_flag= else # If we're using GNU nm, then we don't want the "-C" option. - # -C means demangle to AIX nm, but means don't demangle with GNU nm - # Also, AIX nm treats weak defined symbols like other global - # defined symbols, whereas GNU nm marks them as "W". + # -C means demangle to GNU nm, but means don't demangle to AIX nm. + # Without the "-l" option, or with the "-B" option, AIX nm treats + # weak defined symbols like other global defined symbols, whereas + # GNU nm marks them as "W". + # While the 'weak' keyword is ignored in the Export File, we need + # it in the Import File for the 'aix-soname' feature, so we have + # to replace the "-B" option with "-P" for AIX nm. if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then - export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' + export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols' else - export_symbols_cmds='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' + export_symbols_cmds='`func_echo_all $NM | $SED -e '\''s/B\([^B]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && (substr(\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' fi aix_use_runtimelinking=no # Test if we are trying to use run time linking or normal # AIX style linking. If -brtl is somewhere in LDFLAGS, we - # need to do runtime linking. + # have runtime linking enabled, and use it for executables. + # For shared libraries, we enable/disable runtime linking + # depending on the kind of the shared library created - + # when "with_aix_soname,aix_use_runtimelinking" is: + # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables + # "aix,yes" lib.so shared, rtl:yes, for executables + # lib.a static archive + # "both,no" lib.so.V(shr.o) shared, rtl:yes + # lib.a(lib.so.V) shared, rtl:no, for executables + # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables + # lib.a(lib.so.V) shared, rtl:no + # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables + # lib.a static archive case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*) for ld_flag in $LDFLAGS; do - if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then + if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then aix_use_runtimelinking=yes break fi done + if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then + # With aix-soname=svr4, we create the lib.so.V shared archives only, + # so we don't have lib.a shared libs to link our executables. + # We have to force runtime linking in this case. + aix_use_runtimelinking=yes + LDFLAGS="$LDFLAGS -Wl,-brtl" + fi ;; esac @@ -9760,13 +10163,21 @@ hardcode_direct_absolute=yes hardcode_libdir_separator=':' link_all_deplibs=yes - file_list_spec='${wl}-f,' + file_list_spec='$wl-f,' + case $with_aix_soname,$aix_use_runtimelinking in + aix,*) ;; # traditional, no import file + svr4,* | *,yes) # use import file + # The Import File defines what to hardcode. + hardcode_direct=no + hardcode_direct_absolute=no + ;; + esac - if test "$GCC" = yes; then + if test yes = "$GCC"; then case $host_os in aix4.[012]|aix4.[012].*) # We only want to do this on AIX 4.2 and lower, the check # below for broken collect2 doesn't work under 4.3+ - collect2name=`${CC} -print-prog-name=collect2` + collect2name=`$CC -print-prog-name=collect2` if test -f "$collect2name" && strings "$collect2name" | $GREP resolve_lib_name >/dev/null then @@ -9785,35 +10196,42 @@ ;; esac shared_flag='-shared' - if test "$aix_use_runtimelinking" = yes; then - shared_flag="$shared_flag "'${wl}-G' + if test yes = "$aix_use_runtimelinking"; then + shared_flag="$shared_flag "'$wl-G' fi + # Need to ensure runtime linking is disabled for the traditional + # shared library, or the linker may eventually find shared libraries + # /with/ Import File - we do not want to mix them. + shared_flag_aix='-shared' + shared_flag_svr4='-shared $wl-G' else # not using gcc - if test "$host_cpu" = ia64; then + if test ia64 = "$host_cpu"; then # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release # chokes on -Wl,-G. The following line is correct: shared_flag='-G' else - if test "$aix_use_runtimelinking" = yes; then - shared_flag='${wl}-G' + if test yes = "$aix_use_runtimelinking"; then + shared_flag='$wl-G' else - shared_flag='${wl}-bM:SRE' + shared_flag='$wl-bM:SRE' fi + shared_flag_aix='$wl-bM:SRE' + shared_flag_svr4='$wl-G' fi fi - export_dynamic_flag_spec='${wl}-bexpall' + export_dynamic_flag_spec='$wl-bexpall' # It seems that -bexpall does not export symbols beginning with # underscore (_), so it is better to generate a list of symbols to export. always_export_symbols=yes - if test "$aix_use_runtimelinking" = yes; then + if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then # Warning - without using the other runtime loading flags (-brtl), # -berok will link without error, but may produce a broken library. allow_undefined_flag='-berok' # Determine the default libpath from the value encoded in an # empty executable. - if test "${lt_cv_aix_libpath+set}" = set; then + if test set = "${lt_cv_aix_libpath+set}"; then aix_libpath=$lt_cv_aix_libpath else if ${lt_cv_aix_libpath_+:} false; then : @@ -9848,7 +10266,7 @@ rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test -z "$lt_cv_aix_libpath_"; then - lt_cv_aix_libpath_="/usr/lib:/lib" + lt_cv_aix_libpath_=/usr/lib:/lib fi fi @@ -9856,17 +10274,17 @@ aix_libpath=$lt_cv_aix_libpath_ fi - hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath" - archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" + hardcode_libdir_flag_spec='$wl-blibpath:$libdir:'"$aix_libpath" + archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag else - if test "$host_cpu" = ia64; then - hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib' + if test ia64 = "$host_cpu"; then + hardcode_libdir_flag_spec='$wl-R $libdir:/usr/lib:/lib' allow_undefined_flag="-z nodefs" - archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$exp_sym_flag:\$export_symbols" + archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols" else # Determine the default libpath from the value encoded in an # empty executable. - if test "${lt_cv_aix_libpath+set}" = set; then + if test set = "${lt_cv_aix_libpath+set}"; then aix_libpath=$lt_cv_aix_libpath else if ${lt_cv_aix_libpath_+:} false; then : @@ -9901,7 +10319,7 @@ rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test -z "$lt_cv_aix_libpath_"; then - lt_cv_aix_libpath_="/usr/lib:/lib" + lt_cv_aix_libpath_=/usr/lib:/lib fi fi @@ -9909,21 +10327,33 @@ aix_libpath=$lt_cv_aix_libpath_ fi - hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath" + hardcode_libdir_flag_spec='$wl-blibpath:$libdir:'"$aix_libpath" # Warning - without using the other run time loading flags, # -berok will link without error, but may produce a broken library. - no_undefined_flag=' ${wl}-bernotok' - allow_undefined_flag=' ${wl}-berok' - if test "$with_gnu_ld" = yes; then + no_undefined_flag=' $wl-bernotok' + allow_undefined_flag=' $wl-berok' + if test yes = "$with_gnu_ld"; then # We only use this code for GNU lds that support --whole-archive. - whole_archive_flag_spec='${wl}--whole-archive$convenience ${wl}--no-whole-archive' + whole_archive_flag_spec='$wl--whole-archive$convenience $wl--no-whole-archive' else # Exported symbols can be pulled into shared objects from archives whole_archive_flag_spec='$convenience' fi archive_cmds_need_lc=yes - # This is similar to how AIX traditionally builds its shared libraries. - archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' + archive_expsym_cmds='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d' + # -brtl affects multiple linker settings, -berok does not and is overridden later + compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([, ]\\)%-berok\\1%g"`' + if test svr4 != "$with_aix_soname"; then + # This is similar to how AIX traditionally builds its shared libraries. + archive_expsym_cmds="$archive_expsym_cmds"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname' + fi + if test aix != "$with_aix_soname"; then + archive_expsym_cmds="$archive_expsym_cmds"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp' + else + # used by -dlpreopen to get the symbols + archive_expsym_cmds="$archive_expsym_cmds"'~$MV $output_objdir/$realname.d/$soname $output_objdir' + fi + archive_expsym_cmds="$archive_expsym_cmds"'~$RM -r $output_objdir/$realname.d' fi fi ;; @@ -9932,7 +10362,7 @@ case $host_cpu in powerpc) # see comment about AmigaOS4 .so support - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' archive_expsym_cmds='' ;; m68k) @@ -9962,16 +10392,17 @@ # Tell ltmain to make .lib files, not .a files. libext=lib # Tell ltmain to make .dll files, not .so files. - shrext_cmds=".dll" + shrext_cmds=.dll # FIXME: Setting linknames here is a bad hack. - archive_cmds='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames=' - archive_expsym_cmds='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then - sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp; - else - sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp; - fi~ - $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ - linknames=' + archive_cmds='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames=' + archive_expsym_cmds='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then + cp "$export_symbols" "$output_objdir/$soname.def"; + echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp"; + else + $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp; + fi~ + $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ + linknames=' # The linker will not automatically build a static lib if we build a DLL. # _LT_TAGVAR(old_archive_from_new_cmds, )='true' enable_shared_with_static_runtimes=yes @@ -9980,18 +10411,18 @@ # Don't use ranlib old_postinstall_cmds='chmod 644 $oldlib' postlink_cmds='lt_outputfile="@OUTPUT@"~ - lt_tool_outputfile="@TOOL_OUTPUT@"~ - case $lt_outputfile in - *.exe|*.EXE) ;; - *) - lt_outputfile="$lt_outputfile.exe" - lt_tool_outputfile="$lt_tool_outputfile.exe" - ;; - esac~ - if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then - $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; - $RM "$lt_outputfile.manifest"; - fi' + lt_tool_outputfile="@TOOL_OUTPUT@"~ + case $lt_outputfile in + *.exe|*.EXE) ;; + *) + lt_outputfile=$lt_outputfile.exe + lt_tool_outputfile=$lt_tool_outputfile.exe + ;; + esac~ + if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then + $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; + $RM "$lt_outputfile.manifest"; + fi' ;; *) # Assume MSVC wrapper @@ -10000,7 +10431,7 @@ # Tell ltmain to make .lib files, not .a files. libext=lib # Tell ltmain to make .dll files, not .so files. - shrext_cmds=".dll" + shrext_cmds=.dll # FIXME: Setting linknames here is a bad hack. archive_cmds='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames=' # The linker will automatically build a .lib file if we build a DLL. @@ -10019,24 +10450,24 @@ hardcode_direct=no hardcode_automatic=yes hardcode_shlibpath_var=unsupported - if test "$lt_cv_ld_force_load" = "yes"; then - whole_archive_flag_spec='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience ${wl}-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`' + if test yes = "$lt_cv_ld_force_load"; then + whole_archive_flag_spec='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience $wl-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`' else whole_archive_flag_spec='' fi link_all_deplibs=yes - allow_undefined_flag="$_lt_dar_allow_undefined" + allow_undefined_flag=$_lt_dar_allow_undefined case $cc_basename in - ifort*) _lt_dar_can_shared=yes ;; + ifort*|nagfor*) _lt_dar_can_shared=yes ;; *) _lt_dar_can_shared=$GCC ;; esac - if test "$_lt_dar_can_shared" = "yes"; then + if test yes = "$_lt_dar_can_shared"; then output_verbose_link_cmd=func_echo_all - archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}" - module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}" - archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}" - module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}" + archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil" + module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil" + archive_expsym_cmds="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil" + module_expsym_cmds="sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil" else ld_shlibs=no @@ -10078,33 +10509,33 @@ ;; hpux9*) - if test "$GCC" = yes; then - archive_cmds='$RM $output_objdir/$soname~$CC -shared $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + if test yes = "$GCC"; then + archive_cmds='$RM $output_objdir/$soname~$CC -shared $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' else - archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' fi - hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' + hardcode_libdir_flag_spec='$wl+b $wl$libdir' hardcode_libdir_separator=: hardcode_direct=yes # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. hardcode_minus_L=yes - export_dynamic_flag_spec='${wl}-E' + export_dynamic_flag_spec='$wl-E' ;; hpux10*) - if test "$GCC" = yes && test "$with_gnu_ld" = no; then - archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + if test yes,no = "$GCC,$with_gnu_ld"; then + archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' else archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' fi - if test "$with_gnu_ld" = no; then - hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' + if test no = "$with_gnu_ld"; then + hardcode_libdir_flag_spec='$wl+b $wl$libdir' hardcode_libdir_separator=: hardcode_direct=yes hardcode_direct_absolute=yes - export_dynamic_flag_spec='${wl}-E' + export_dynamic_flag_spec='$wl-E' # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. hardcode_minus_L=yes @@ -10112,25 +10543,25 @@ ;; hpux11*) - if test "$GCC" = yes && test "$with_gnu_ld" = no; then + if test yes,no = "$GCC,$with_gnu_ld"; then case $host_cpu in hppa*64*) - archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_cmds='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' ;; ia64*) - archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' + archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' ;; *) - archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' ;; esac else case $host_cpu in hppa*64*) - archive_cmds='$CC -b ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_cmds='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' ;; ia64*) - archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' + archive_cmds='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' ;; *) @@ -10142,7 +10573,7 @@ $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler__b=no - save_LDFLAGS="$LDFLAGS" + save_LDFLAGS=$LDFLAGS LDFLAGS="$LDFLAGS -b" echo "$lt_simple_link_test_code" > conftest.$ac_ext if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then @@ -10161,14 +10592,14 @@ fi fi $RM -r conftest* - LDFLAGS="$save_LDFLAGS" + LDFLAGS=$save_LDFLAGS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&5 $as_echo "$lt_cv_prog_compiler__b" >&6; } -if test x"$lt_cv_prog_compiler__b" = xyes; then - archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' +if test yes = "$lt_cv_prog_compiler__b"; then + archive_cmds='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' else archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' fi @@ -10176,8 +10607,8 @@ ;; esac fi - if test "$with_gnu_ld" = no; then - hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' + if test no = "$with_gnu_ld"; then + hardcode_libdir_flag_spec='$wl+b $wl$libdir' hardcode_libdir_separator=: case $host_cpu in @@ -10188,7 +10619,7 @@ *) hardcode_direct=yes hardcode_direct_absolute=yes - export_dynamic_flag_spec='${wl}-E' + export_dynamic_flag_spec='$wl-E' # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. @@ -10199,8 +10630,8 @@ ;; irix5* | irix6* | nonstopux*) - if test "$GCC" = yes; then - archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + if test yes = "$GCC"; then + archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' # Try to use the -exported_symbol ld option, if it does not # work, assume that -exports_file does not work either and # implicitly export all symbols. @@ -10210,8 +10641,8 @@ if ${lt_cv_irix_exported_symbol+:} false; then : $as_echo_n "(cached) " >&6 else - save_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null" + save_LDFLAGS=$LDFLAGS + LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int foo (void) { return 0; } @@ -10223,24 +10654,34 @@ fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext - LDFLAGS="$save_LDFLAGS" + LDFLAGS=$save_LDFLAGS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5 $as_echo "$lt_cv_irix_exported_symbol" >&6; } - if test "$lt_cv_irix_exported_symbol" = yes; then - archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib' + if test yes = "$lt_cv_irix_exported_symbol"; then + archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib' fi else - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' - archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib' + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' + archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -exports_file $export_symbols -o $lib' fi archive_cmds_need_lc='no' - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' hardcode_libdir_separator=: inherit_rpath=yes link_all_deplibs=yes ;; + linux*) + case $cc_basename in + tcc*) + # Fabrice Bellard et al's Tiny C Compiler + ld_shlibs=yes + archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + ;; + netbsd*) if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out @@ -10255,7 +10696,7 @@ newsos6) archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' hardcode_direct=yes - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' hardcode_libdir_separator=: hardcode_shlibpath_var=no ;; @@ -10263,27 +10704,19 @@ *nto* | *qnx*) ;; - openbsd*) + openbsd* | bitrig*) if test -f /usr/libexec/ld.so; then hardcode_direct=yes hardcode_shlibpath_var=no hardcode_direct_absolute=yes - if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then + if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags ${wl}-retain-symbols-file,$export_symbols' - hardcode_libdir_flag_spec='${wl}-rpath,$libdir' - export_dynamic_flag_spec='${wl}-E' + archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols' + hardcode_libdir_flag_spec='$wl-rpath,$libdir' + export_dynamic_flag_spec='$wl-E' else - case $host_os in - openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*) - archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' - hardcode_libdir_flag_spec='-R$libdir' - ;; - *) - archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' - hardcode_libdir_flag_spec='${wl}-rpath,$libdir' - ;; - esac + archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + hardcode_libdir_flag_spec='$wl-rpath,$libdir' fi else ld_shlibs=no @@ -10294,33 +10727,53 @@ hardcode_libdir_flag_spec='-L$libdir' hardcode_minus_L=yes allow_undefined_flag=unsupported - archive_cmds='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~echo DATA >> $output_objdir/$libname.def~echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' - old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' + shrext_cmds=.dll + archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + prefix_cmds="$SED"~ + if test EXPORTS = "`$SED 1q $export_symbols`"; then + prefix_cmds="$prefix_cmds -e 1d"; + fi~ + prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ + cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' + enable_shared_with_static_runtimes=yes ;; osf3*) - if test "$GCC" = yes; then - allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' - archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + if test yes = "$GCC"; then + allow_undefined_flag=' $wl-expect_unresolved $wl\*' + archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' else allow_undefined_flag=' -expect_unresolved \*' - archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' + archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' fi archive_cmds_need_lc='no' - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' hardcode_libdir_separator=: ;; osf4* | osf5*) # as osf3* with the addition of -msym flag - if test "$GCC" = yes; then - allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' - archive_cmds='$CC -shared${allow_undefined_flag} $pic_flag $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' - hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + if test yes = "$GCC"; then + allow_undefined_flag=' $wl-expect_unresolved $wl\*' + archive_cmds='$CC -shared$allow_undefined_flag $pic_flag $libobjs $deplibs $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' + hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' else allow_undefined_flag=' -expect_unresolved \*' - archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' + archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' archive_expsym_cmds='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~ - $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp' + $CC -shared$allow_undefined_flag $wl-input $wl$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~$RM $lib.exp' # Both c and cxx compiler support -rpath directly hardcode_libdir_flag_spec='-rpath $libdir' @@ -10331,24 +10784,24 @@ solaris*) no_undefined_flag=' -z defs' - if test "$GCC" = yes; then - wlarc='${wl}' - archive_cmds='$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + if test yes = "$GCC"; then + wlarc='$wl' + archive_cmds='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' + $CC -shared $pic_flag $wl-z ${wl}text $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' else case `$CC -V 2>&1` in *"Compilers 5.0"*) wlarc='' - archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' + archive_cmds='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags' archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp' + $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp' ;; *) - wlarc='${wl}' - archive_cmds='$CC -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $compiler_flags' + wlarc='$wl' + archive_cmds='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $CC -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' + $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' ;; esac fi @@ -10358,11 +10811,11 @@ solaris2.[0-5] | solaris2.[0-5].*) ;; *) # The compiler driver will combine and reorder linker options, - # but understands `-z linker_flag'. GCC discards it without `$wl', + # but understands '-z linker_flag'. GCC discards it without '$wl', # but is careful enough not to reorder. # Supported since Solaris 2.6 (maybe 2.5.1?) - if test "$GCC" = yes; then - whole_archive_flag_spec='${wl}-z ${wl}allextract$convenience ${wl}-z ${wl}defaultextract' + if test yes = "$GCC"; then + whole_archive_flag_spec='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract' else whole_archive_flag_spec='-z allextract$convenience -z defaultextract' fi @@ -10372,10 +10825,10 @@ ;; sunos4*) - if test "x$host_vendor" = xsequent; then + if test sequent = "$host_vendor"; then # Use $CC to link under sequent, because it throws in some extra .o # files that make .init and .fini sections work. - archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' + archive_cmds='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags' else archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' fi @@ -10424,43 +10877,43 @@ ;; sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*) - no_undefined_flag='${wl}-z,text' + no_undefined_flag='$wl-z,text' archive_cmds_need_lc=no hardcode_shlibpath_var=no runpath_var='LD_RUN_PATH' - if test "$GCC" = yes; then - archive_cmds='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - archive_expsym_cmds='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + if test yes = "$GCC"; then + archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' else - archive_cmds='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - archive_expsym_cmds='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' fi ;; sysv5* | sco3.2v5* | sco5v6*) - # Note: We can NOT use -z defs as we might desire, because we do not + # Note: We CANNOT use -z defs as we might desire, because we do not # link with -lc, and that would cause any symbols used from libc to # always be unresolved, which means just about no library would # ever link correctly. If we're not using GNU ld we use -z text # though, which does catch some bad symbols but isn't as heavy-handed # as -z defs. - no_undefined_flag='${wl}-z,text' - allow_undefined_flag='${wl}-z,nodefs' + no_undefined_flag='$wl-z,text' + allow_undefined_flag='$wl-z,nodefs' archive_cmds_need_lc=no hardcode_shlibpath_var=no - hardcode_libdir_flag_spec='${wl}-R,$libdir' + hardcode_libdir_flag_spec='$wl-R,$libdir' hardcode_libdir_separator=':' link_all_deplibs=yes - export_dynamic_flag_spec='${wl}-Bexport' + export_dynamic_flag_spec='$wl-Bexport' runpath_var='LD_RUN_PATH' - if test "$GCC" = yes; then - archive_cmds='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - archive_expsym_cmds='$CC -shared ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + if test yes = "$GCC"; then + archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' else - archive_cmds='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' - archive_expsym_cmds='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' fi ;; @@ -10475,10 +10928,10 @@ ;; esac - if test x$host_vendor = xsni; then + if test sni = "$host_vendor"; then case $host in sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) - export_dynamic_flag_spec='${wl}-Blargedynsym' + export_dynamic_flag_spec='$wl-Blargedynsym' ;; esac fi @@ -10486,7 +10939,7 @@ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5 $as_echo "$ld_shlibs" >&6; } -test "$ld_shlibs" = no && can_build_shared=no +test no = "$ld_shlibs" && can_build_shared=no with_gnu_ld=$with_gnu_ld @@ -10512,7 +10965,7 @@ # Assume -lc should be added archive_cmds_need_lc=yes - if test "$enable_shared" = yes && test "$GCC" = yes; then + if test yes,yes = "$GCC,$enable_shared"; then case $archive_cmds in *'~'*) # FIXME: we may have to deal with multi-command sequences. @@ -10727,14 +11180,14 @@ { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5 $as_echo_n "checking dynamic linker characteristics... " >&6; } -if test "$GCC" = yes; then +if test yes = "$GCC"; then case $host_os in - darwin*) lt_awk_arg="/^libraries:/,/LR/" ;; - *) lt_awk_arg="/^libraries:/" ;; + darwin*) lt_awk_arg='/^libraries:/,/LR/' ;; + *) lt_awk_arg='/^libraries:/' ;; esac case $host_os in - mingw* | cegcc*) lt_sed_strip_eq="s,=\([A-Za-z]:\),\1,g" ;; - *) lt_sed_strip_eq="s,=/,/,g" ;; + mingw* | cegcc*) lt_sed_strip_eq='s|=\([A-Za-z]:\)|\1|g' ;; + *) lt_sed_strip_eq='s|=/|/|g' ;; esac lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq` case $lt_search_path_spec in @@ -10750,28 +11203,35 @@ ;; esac # Ok, now we have the path, separated by spaces, we can step through it - # and add multilib dir if necessary. + # and add multilib dir if necessary... lt_tmp_lt_search_path_spec= - lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null` + lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null` + # ...but if some path component already ends with the multilib dir we assume + # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer). + case "$lt_multi_os_dir; $lt_search_path_spec " in + "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*) + lt_multi_os_dir= + ;; + esac for lt_sys_path in $lt_search_path_spec; do - if test -d "$lt_sys_path/$lt_multi_os_dir"; then - lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir" - else + if test -d "$lt_sys_path$lt_multi_os_dir"; then + lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir" + elif test -n "$lt_multi_os_dir"; then test -d "$lt_sys_path" && \ lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path" fi done lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk ' -BEGIN {RS=" "; FS="/|\n";} { - lt_foo=""; - lt_count=0; +BEGIN {RS = " "; FS = "/|\n";} { + lt_foo = ""; + lt_count = 0; for (lt_i = NF; lt_i > 0; lt_i--) { if ($lt_i != "" && $lt_i != ".") { if ($lt_i == "..") { lt_count++; } else { if (lt_count == 0) { - lt_foo="/" $lt_i lt_foo; + lt_foo = "/" $lt_i lt_foo; } else { lt_count--; } @@ -10785,7 +11245,7 @@ # for these hosts. case $host_os in mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\ - $SED 's,/\([A-Za-z]:\),\1,g'` ;; + $SED 's|/\([A-Za-z]:\)|\1|g'` ;; esac sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP` else @@ -10794,7 +11254,7 @@ library_names_spec= libname_spec='lib$name' soname_spec= -shrext_cmds=".so" +shrext_cmds=.so postinstall_cmds= postuninstall_cmds= finish_cmds= @@ -10811,14 +11271,16 @@ # flags to be left without arguments need_version=unknown + + case $host_os in aix3*) version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a' + library_names_spec='$libname$release$shared_ext$versuffix $libname.a' shlibpath_var=LIBPATH # AIX 3 has no versioning support, so we append a major version to the name. - soname_spec='${libname}${release}${shared_ext}$major' + soname_spec='$libname$release$shared_ext$major' ;; aix[4-9]*) @@ -10826,41 +11288,91 @@ need_lib_prefix=no need_version=no hardcode_into_libs=yes - if test "$host_cpu" = ia64; then + if test ia64 = "$host_cpu"; then # AIX 5 supports IA64 - library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}' + library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext' shlibpath_var=LD_LIBRARY_PATH else # With GCC up to 2.95.x, collect2 would create an import file # for dependence libraries. The import file would start with - # the line `#! .'. This would cause the generated library to - # depend on `.', always an invalid library. This was fixed in + # the line '#! .'. This would cause the generated library to + # depend on '.', always an invalid library. This was fixed in # development snapshots of GCC prior to 3.0. case $host_os in aix4 | aix4.[01] | aix4.[01].*) if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' echo ' yes ' - echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then + echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then : else can_build_shared=no fi ;; esac - # AIX (on Power*) has no versioning support, so currently we can not hardcode correct + # Using Import Files as archive members, it is possible to support + # filename-based versioning of shared library archives on AIX. While + # this would work for both with and without runtime linking, it will + # prevent static linking of such archives. So we do filename-based + # shared library versioning with .so extension only, which is used + # when both runtime linking and shared linking is enabled. + # Unfortunately, runtime linking may impact performance, so we do + # not want this to be the default eventually. Also, we use the + # versioned .so libs for executables only if there is the -brtl + # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only. + # To allow for filename-based versioning support, we need to create + # libNAME.so.V as an archive file, containing: + # *) an Import File, referring to the versioned filename of the + # archive as well as the shared archive member, telling the + # bitwidth (32 or 64) of that shared object, and providing the + # list of exported symbols of that shared object, eventually + # decorated with the 'weak' keyword + # *) the shared object with the F_LOADONLY flag set, to really avoid + # it being seen by the linker. + # At run time we better use the real file rather than another symlink, + # but for link time we create the symlink libNAME.so -> libNAME.so.V + + case $with_aix_soname,$aix_use_runtimelinking in + # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct # soname into executable. Probably we can add versioning support to # collect2, so additional links can be useful in future. - if test "$aix_use_runtimelinking" = yes; then + aix,yes) # traditional libtool + dynamic_linker='AIX unversionable lib.so' # If using run time linking (on AIX 4.2 or later) use lib.so # instead of lib.a to let people know that these are not # typical AIX shared libraries. - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - else + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + ;; + aix,no) # traditional AIX only + dynamic_linker='AIX lib.a(lib.so.V)' # We preserve .a as extension for shared libraries through AIX4.2 # and later when we are not doing run time linking. - library_names_spec='${libname}${release}.a $libname.a' - soname_spec='${libname}${release}${shared_ext}$major' - fi + library_names_spec='$libname$release.a $libname.a' + soname_spec='$libname$release$shared_ext$major' + ;; + svr4,*) # full svr4 only + dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o)" + library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' + # We do not specify a path in Import Files, so LIBPATH fires. + shlibpath_overrides_runpath=yes + ;; + *,yes) # both, prefer svr4 + dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o), lib.a(lib.so.V)" + library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' + # unpreferred sharedlib libNAME.a needs extra handling + postinstall_cmds='test -n "$linkname" || linkname="$realname"~func_stripname "" ".so" "$linkname"~$install_shared_prog "$dir/$func_stripname_result.$libext" "$destdir/$func_stripname_result.$libext"~test -z "$tstripme" || test -z "$striplib" || $striplib "$destdir/$func_stripname_result.$libext"' + postuninstall_cmds='for n in $library_names $old_library; do :; done~func_stripname "" ".so" "$n"~test "$func_stripname_result" = "$n" || func_append rmfiles " $odir/$func_stripname_result.$libext"' + # We do not specify a path in Import Files, so LIBPATH fires. + shlibpath_overrides_runpath=yes + ;; + *,no) # both, prefer aix + dynamic_linker="AIX lib.a(lib.so.V), lib.so.V($shared_archive_member_spec.o)" + library_names_spec='$libname$release.a $libname.a' + soname_spec='$libname$release$shared_ext$major' + # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling + postinstall_cmds='test -z "$dlname" || $install_shared_prog $dir/$dlname $destdir/$dlname~test -z "$tstripme" || test -z "$striplib" || $striplib $destdir/$dlname~test -n "$linkname" || linkname=$realname~func_stripname "" ".a" "$linkname"~(cd "$destdir" && $LN_S -f $dlname $func_stripname_result.so)' + postuninstall_cmds='test -z "$dlname" || func_append rmfiles " $odir/$dlname"~for n in $old_library $library_names; do :; done~func_stripname "" ".a" "$n"~func_append rmfiles " $odir/$func_stripname_result.so"' + ;; + esac shlibpath_var=LIBPATH fi ;; @@ -10870,18 +11382,18 @@ powerpc) # Since July 2007 AmigaOS4 officially supports .so libraries. # When compiling the executable, add -use-dynld -Lsobjs: to the compileline. - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' ;; m68k) library_names_spec='$libname.ixlibrary $libname.a' # Create ${libname}_ixlibrary.a entries in /sys/libs. - finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' + finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' ;; esac ;; beos*) - library_names_spec='${libname}${shared_ext}' + library_names_spec='$libname$shared_ext' dynamic_linker="$host_os ld.so" shlibpath_var=LIBRARY_PATH ;; @@ -10889,8 +11401,8 @@ bsdi[45]*) version_type=linux # correct to gnu/linux during the next big refactor need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' shlibpath_var=LD_LIBRARY_PATH sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" @@ -10902,7 +11414,7 @@ cygwin* | mingw* | pw32* | cegcc*) version_type=windows - shrext_cmds=".dll" + shrext_cmds=.dll need_version=no need_lib_prefix=no @@ -10911,8 +11423,8 @@ # gcc library_names_spec='$libname.dll.a' # DLL is installed to $(libdir)/../bin by postinstall_cmds - postinstall_cmds='base_file=`basename \${file}`~ - dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~ + postinstall_cmds='base_file=`basename \$file`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ dldir=$destdir/`dirname \$dlpath`~ test -d \$dldir || mkdir -p \$dldir~ $install_prog $dir/$dlname \$dldir/$dlname~ @@ -10928,17 +11440,17 @@ case $host_os in cygwin*) # Cygwin DLLs use 'cyg' prefix rather than 'lib' - soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' + soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api" ;; mingw* | cegcc*) # MinGW DLLs use traditional 'lib' prefix - soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' + soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' ;; pw32*) # pw32 DLLs use 'pw' prefix rather than 'lib' - library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' + library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' ;; esac dynamic_linker='Win32 ld.exe' @@ -10947,8 +11459,8 @@ *,cl*) # Native MSVC libname_spec='$name' - soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' - library_names_spec='${libname}.dll.lib' + soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' + library_names_spec='$libname.dll.lib' case $build_os in mingw*) @@ -10975,7 +11487,7 @@ sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` ;; *) - sys_lib_search_path_spec="$LIB" + sys_lib_search_path_spec=$LIB if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then # It is most probably a Windows format PATH. sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` @@ -10988,8 +11500,8 @@ esac # DLL is installed to $(libdir)/../bin by postinstall_cmds - postinstall_cmds='base_file=`basename \${file}`~ - dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~ + postinstall_cmds='base_file=`basename \$file`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ dldir=$destdir/`dirname \$dlpath`~ test -d \$dldir || mkdir -p \$dldir~ $install_prog $dir/$dlname \$dldir/$dlname' @@ -11002,7 +11514,7 @@ *) # Assume MSVC wrapper - library_names_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext} $libname.lib' + library_names_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext $libname.lib' dynamic_linker='Win32 ld.exe' ;; esac @@ -11015,8 +11527,8 @@ version_type=darwin need_lib_prefix=no need_version=no - library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext' - soname_spec='${libname}${release}${major}$shared_ext' + library_names_spec='$libname$release$major$shared_ext $libname$shared_ext' + soname_spec='$libname$release$major$shared_ext' shlibpath_overrides_runpath=yes shlibpath_var=DYLD_LIBRARY_PATH shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' @@ -11029,8 +11541,8 @@ version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext' - soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' shlibpath_var=LD_LIBRARY_PATH ;; @@ -11048,12 +11560,13 @@ version_type=freebsd-$objformat case $version_type in freebsd-elf*) - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' need_version=no need_lib_prefix=no ;; freebsd-*) - library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix' + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' need_version=yes ;; esac @@ -11078,26 +11591,15 @@ esac ;; -gnu*) - version_type=linux # correct to gnu/linux during the next big refactor - need_lib_prefix=no - need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - shlibpath_var=LD_LIBRARY_PATH - shlibpath_overrides_runpath=no - hardcode_into_libs=yes - ;; - haiku*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no dynamic_linker="$host_os runtime_loader" - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' shlibpath_var=LIBRARY_PATH - shlibpath_overrides_runpath=yes + shlibpath_overrides_runpath=no sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib' hardcode_into_libs=yes ;; @@ -11115,14 +11617,15 @@ dynamic_linker="$host_os dld.so" shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' - if test "X$HPUX_IA64_MODE" = X32; then + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + if test 32 = "$HPUX_IA64_MODE"; then sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" + sys_lib_dlsearch_path_spec=/usr/lib/hpux32 else sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" + sys_lib_dlsearch_path_spec=/usr/lib/hpux64 fi - sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; hppa*64*) shrext_cmds='.sl' @@ -11130,8 +11633,8 @@ dynamic_linker="$host_os dld.sl" shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; @@ -11140,8 +11643,8 @@ dynamic_linker="$host_os dld.sl" shlibpath_var=SHLIB_PATH shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' ;; esac # HP-UX runs *really* slowly unless shared libraries are mode 555, ... @@ -11154,8 +11657,8 @@ version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no @@ -11166,7 +11669,7 @@ case $host_os in nonstopux*) version_type=nonstopux ;; *) - if test "$lt_cv_prog_gnu_ld" = yes; then + if test yes = "$lt_cv_prog_gnu_ld"; then version_type=linux # correct to gnu/linux during the next big refactor else version_type=irix @@ -11174,8 +11677,8 @@ esac need_lib_prefix=no need_version=no - soname_spec='${libname}${release}${shared_ext}$major' - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}' + soname_spec='$libname$release$shared_ext$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext' case $host_os in irix5* | nonstopux*) libsuff= shlibsuff= @@ -11194,8 +11697,8 @@ esac shlibpath_var=LD_LIBRARY${shlibsuff}_PATH shlibpath_overrides_runpath=no - sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" - sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" + sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff" + sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff" hardcode_into_libs=yes ;; @@ -11204,13 +11707,33 @@ dynamic_linker=no ;; +linux*android*) + version_type=none # Android doesn't support versioned libraries. + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext' + soname_spec='$libname$release$shared_ext' + finish_cmds= + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + + # This implies no fast_install, which is unacceptable. + # Some rework will be needed to allow for fast_install + # before this can be enabled. + hardcode_into_libs=yes + + dynamic_linker='Android linker' + # Don't embed -rpath directories since the linker doesn't support them. + hardcode_libdir_flag_spec='-L$libdir' + ;; + # This must be glibc/ELF. -linux* | k*bsd*-gnu | kopensolaris*-gnu) +linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no @@ -11254,7 +11777,12 @@ # before this can be enabled. hardcode_into_libs=yes - # Append ld.so.conf contents to the search path + # Ideally, we could use ldconfig to report *all* directores which are + # searched for libraries, however this is still not possible. Aside from not + # being certain /sbin/ldconfig is available, command + # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64, + # even though it is searched at run-time. Try to do the best guess by + # appending ld.so.conf contents (and includes) to the search path. if test -f /etc/ld.so.conf; then lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '` sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" @@ -11274,12 +11802,12 @@ need_lib_prefix=no need_version=no if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' dynamic_linker='NetBSD (a.out) ld.so' else - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' dynamic_linker='NetBSD ld.elf_so' fi shlibpath_var=LD_LIBRARY_PATH @@ -11289,7 +11817,7 @@ newsos6) version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes ;; @@ -11298,58 +11826,68 @@ version_type=qnx need_lib_prefix=no need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes dynamic_linker='ldqnx.so' ;; -openbsd*) +openbsd* | bitrig*) version_type=sunos - sys_lib_dlsearch_path_spec="/usr/lib" + sys_lib_dlsearch_path_spec=/usr/lib need_lib_prefix=no - # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs. - case $host_os in - openbsd3.3 | openbsd3.3.*) need_version=yes ;; - *) need_version=no ;; - esac - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' - finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' - shlibpath_var=LD_LIBRARY_PATH - if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then - case $host_os in - openbsd2.[89] | openbsd2.[89].*) - shlibpath_overrides_runpath=no - ;; - *) - shlibpath_overrides_runpath=yes - ;; - esac + if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then + need_version=no else - shlibpath_overrides_runpath=yes + need_version=yes fi + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes ;; os2*) libname_spec='$name' - shrext_cmds=".dll" - need_lib_prefix=no - library_names_spec='$libname${shared_ext} $libname.a' + version_type=windows + shrext_cmds=.dll + need_version=no + need_lib_prefix=no + # OS/2 can only load a DLL with a base name of 8 characters or less. + soname_spec='`test -n "$os2dllname" && libname="$os2dllname"; + v=$($ECHO $release$versuffix | tr -d .-); + n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _); + $ECHO $n$v`$shared_ext' + library_names_spec='${libname}_dll.$libext' dynamic_linker='OS/2 ld.exe' - shlibpath_var=LIBPATH + shlibpath_var=BEGINLIBPATH + sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + postinstall_cmds='base_file=`basename \$file`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~ + dldir=$destdir/`dirname \$dlpath`~ + test -d \$dldir || mkdir -p \$dldir~ + $install_prog $dir/$dlname \$dldir/$dlname~ + chmod a+x \$dldir/$dlname~ + if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then + eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; + fi' + postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~ + dlpath=$dir/\$dldll~ + $RM \$dlpath' ;; osf3* | osf4* | osf5*) version_type=osf need_lib_prefix=no need_version=no - soname_spec='${libname}${release}${shared_ext}$major' - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + soname_spec='$libname$release$shared_ext$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' shlibpath_var=LD_LIBRARY_PATH sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" - sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec ;; rdos*) @@ -11360,8 +11898,8 @@ version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes @@ -11371,11 +11909,11 @@ sunos4*) version_type=sunos - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix' + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes - if test "$with_gnu_ld" = yes; then + if test yes = "$with_gnu_ld"; then need_lib_prefix=no fi need_version=yes @@ -11383,8 +11921,8 @@ sysv4 | sysv4.3*) version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' shlibpath_var=LD_LIBRARY_PATH case $host_vendor in sni) @@ -11405,24 +11943,24 @@ ;; sysv4*MP*) - if test -d /usr/nec ;then + if test -d /usr/nec; then version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}' - soname_spec='$libname${shared_ext}.$major' + library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext' + soname_spec='$libname$shared_ext.$major' shlibpath_var=LD_LIBRARY_PATH fi ;; sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) - version_type=freebsd-elf + version_type=sco need_lib_prefix=no need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes hardcode_into_libs=yes - if test "$with_gnu_ld" = yes; then + if test yes = "$with_gnu_ld"; then sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' else sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' @@ -11440,7 +11978,7 @@ version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no hardcode_into_libs=yes @@ -11448,8 +11986,8 @@ uts4*) version_type=linux # correct to gnu/linux during the next big refactor - library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' - soname_spec='${libname}${release}${shared_ext}$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' shlibpath_var=LD_LIBRARY_PATH ;; @@ -11459,20 +11997,35 @@ esac { $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5 $as_echo "$dynamic_linker" >&6; } -test "$dynamic_linker" = no && can_build_shared=no +test no = "$dynamic_linker" && can_build_shared=no variables_saved_for_relink="PATH $shlibpath_var $runpath_var" -if test "$GCC" = yes; then +if test yes = "$GCC"; then variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" fi -if test "${lt_cv_sys_lib_search_path_spec+set}" = set; then - sys_lib_search_path_spec="$lt_cv_sys_lib_search_path_spec" +if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then + sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec fi -if test "${lt_cv_sys_lib_dlsearch_path_spec+set}" = set; then - sys_lib_dlsearch_path_spec="$lt_cv_sys_lib_dlsearch_path_spec" + +if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then + sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec fi +# remember unaugmented sys_lib_dlsearch_path content for libtool script decls... +configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec + +# ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code +func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH" + +# to be used as default LT_SYS_LIBRARY_PATH value in generated libtool +configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH + + + + + + @@ -11569,15 +12122,15 @@ hardcode_action= if test -n "$hardcode_libdir_flag_spec" || test -n "$runpath_var" || - test "X$hardcode_automatic" = "Xyes" ; then + test yes = "$hardcode_automatic"; then # We can hardcode non-existent directories. - if test "$hardcode_direct" != no && + if test no != "$hardcode_direct" && # If the only mechanism to avoid hardcoding is shlibpath_var, we # have to relink, otherwise we might link with an installed library # when we should be linking with a yet-to-be-installed one - ## test "$_LT_TAGVAR(hardcode_shlibpath_var, )" != no && - test "$hardcode_minus_L" != no; then + ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, )" && + test no != "$hardcode_minus_L"; then # Linking always hardcodes the temporary library directory. hardcode_action=relink else @@ -11592,12 +12145,12 @@ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5 $as_echo "$hardcode_action" >&6; } -if test "$hardcode_action" = relink || - test "$inherit_rpath" = yes; then +if test relink = "$hardcode_action" || + test yes = "$inherit_rpath"; then # Fast installation is not supported enable_fast_install=no -elif test "$shlibpath_overrides_runpath" = yes || - test "$enable_shared" = no; then +elif test yes = "$shlibpath_overrides_runpath" || + test no = "$enable_shared"; then # Fast installation is not necessary enable_fast_install=needless fi @@ -11607,7 +12160,7 @@ - if test "x$enable_dlopen" != xyes; then + if test yes != "$enable_dlopen"; then enable_dlopen=unknown enable_dlopen_self=unknown enable_dlopen_self_static=unknown @@ -11617,23 +12170,23 @@ case $host_os in beos*) - lt_cv_dlopen="load_add_on" + lt_cv_dlopen=load_add_on lt_cv_dlopen_libs= lt_cv_dlopen_self=yes ;; mingw* | pw32* | cegcc*) - lt_cv_dlopen="LoadLibrary" + lt_cv_dlopen=LoadLibrary lt_cv_dlopen_libs= ;; cygwin*) - lt_cv_dlopen="dlopen" + lt_cv_dlopen=dlopen lt_cv_dlopen_libs= ;; darwin*) - # if libdl is installed we need to link against it + # if libdl is installed we need to link against it { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 $as_echo_n "checking for dlopen in -ldl... " >&6; } if ${ac_cv_lib_dl_dlopen+:} false; then : @@ -11671,10 +12224,10 @@ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 $as_echo "$ac_cv_lib_dl_dlopen" >&6; } if test "x$ac_cv_lib_dl_dlopen" = xyes; then : - lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" + lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl else - lt_cv_dlopen="dyld" + lt_cv_dlopen=dyld lt_cv_dlopen_libs= lt_cv_dlopen_self=yes @@ -11682,10 +12235,18 @@ ;; + tpf*) + # Don't try to run any link tests for TPF. We know it's impossible + # because TPF is a cross-compiler, and we know how we open DSOs. + lt_cv_dlopen=dlopen + lt_cv_dlopen_libs= + lt_cv_dlopen_self=no + ;; + *) ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load" if test "x$ac_cv_func_shl_load" = xyes; then : - lt_cv_dlopen="shl_load" + lt_cv_dlopen=shl_load else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5 $as_echo_n "checking for shl_load in -ldld... " >&6; } @@ -11724,11 +12285,11 @@ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5 $as_echo "$ac_cv_lib_dld_shl_load" >&6; } if test "x$ac_cv_lib_dld_shl_load" = xyes; then : - lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld" + lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld else ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen" if test "x$ac_cv_func_dlopen" = xyes; then : - lt_cv_dlopen="dlopen" + lt_cv_dlopen=dlopen else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 $as_echo_n "checking for dlopen in -ldl... " >&6; } @@ -11767,7 +12328,7 @@ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 $as_echo "$ac_cv_lib_dl_dlopen" >&6; } if test "x$ac_cv_lib_dl_dlopen" = xyes; then : - lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" + lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5 $as_echo_n "checking for dlopen in -lsvld... " >&6; } @@ -11806,7 +12367,7 @@ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5 $as_echo "$ac_cv_lib_svld_dlopen" >&6; } if test "x$ac_cv_lib_svld_dlopen" = xyes; then : - lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld" + lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5 $as_echo_n "checking for dld_link in -ldld... " >&6; } @@ -11845,7 +12406,7 @@ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5 $as_echo "$ac_cv_lib_dld_dld_link" >&6; } if test "x$ac_cv_lib_dld_dld_link" = xyes; then : - lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld" + lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld fi @@ -11866,21 +12427,21 @@ ;; esac - if test "x$lt_cv_dlopen" != xno; then - enable_dlopen=yes - else + if test no = "$lt_cv_dlopen"; then enable_dlopen=no + else + enable_dlopen=yes fi case $lt_cv_dlopen in dlopen) - save_CPPFLAGS="$CPPFLAGS" - test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" + save_CPPFLAGS=$CPPFLAGS + test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" - save_LDFLAGS="$LDFLAGS" + save_LDFLAGS=$LDFLAGS wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" - save_LIBS="$LIBS" + save_LIBS=$LIBS LIBS="$lt_cv_dlopen_libs $LIBS" { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5 @@ -11888,7 +12449,7 @@ if ${lt_cv_dlopen_self+:} false; then : $as_echo_n "(cached) " >&6 else - if test "$cross_compiling" = yes; then : + if test yes = "$cross_compiling"; then : lt_cv_dlopen_self=cross else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 @@ -11935,9 +12496,9 @@ # endif #endif -/* When -fvisbility=hidden is used, assume the code has been annotated +/* When -fvisibility=hidden is used, assume the code has been annotated correspondingly for the symbols needed. */ -#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) +#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) int fnord () __attribute__((visibility("default"))); #endif @@ -11967,7 +12528,7 @@ (eval $ac_link) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then + test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then (./conftest; exit; ) >&5 2>/dev/null lt_status=$? case x$lt_status in @@ -11987,14 +12548,14 @@ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5 $as_echo "$lt_cv_dlopen_self" >&6; } - if test "x$lt_cv_dlopen_self" = xyes; then + if test yes = "$lt_cv_dlopen_self"; then wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5 $as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; } if ${lt_cv_dlopen_self_static+:} false; then : $as_echo_n "(cached) " >&6 else - if test "$cross_compiling" = yes; then : + if test yes = "$cross_compiling"; then : lt_cv_dlopen_self_static=cross else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 @@ -12041,9 +12602,9 @@ # endif #endif -/* When -fvisbility=hidden is used, assume the code has been annotated +/* When -fvisibility=hidden is used, assume the code has been annotated correspondingly for the symbols needed. */ -#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) +#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) int fnord () __attribute__((visibility("default"))); #endif @@ -12073,7 +12634,7 @@ (eval $ac_link) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then + test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then (./conftest; exit; ) >&5 2>/dev/null lt_status=$? case x$lt_status in @@ -12094,9 +12655,9 @@ $as_echo "$lt_cv_dlopen_self_static" >&6; } fi - CPPFLAGS="$save_CPPFLAGS" - LDFLAGS="$save_LDFLAGS" - LIBS="$save_LIBS" + CPPFLAGS=$save_CPPFLAGS + LDFLAGS=$save_LDFLAGS + LIBS=$save_LIBS ;; esac @@ -12140,7 +12701,7 @@ # FIXME - insert some real tests, host_os isn't really good enough case $host_os in darwin*) - if test -n "$STRIP" ; then + if test -n "$STRIP"; then striplib="$STRIP -x" old_striplib="$STRIP -S" { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 @@ -12168,7 +12729,7 @@ - # Report which library types will actually be built + # Report what library types will actually be built { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5 $as_echo_n "checking if libtool supports shared libraries... " >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5 @@ -12176,13 +12737,13 @@ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5 $as_echo_n "checking whether to build shared libraries... " >&6; } - test "$can_build_shared" = "no" && enable_shared=no + test no = "$can_build_shared" && enable_shared=no # On AIX, shared libraries and static libraries use the same namespace, and # are all built from PIC. case $host_os in aix3*) - test "$enable_shared" = yes && enable_static=no + test yes = "$enable_shared" && enable_static=no if test -n "$RANLIB"; then archive_cmds="$archive_cmds~\$RANLIB \$lib" postinstall_cmds='$RANLIB $lib' @@ -12190,8 +12751,12 @@ ;; aix[4-9]*) - if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then - test "$enable_shared" = yes && enable_static=no + if test ia64 != "$host_cpu"; then + case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in + yes,aix,yes) ;; # shared object as lib.so file only + yes,svr4,*) ;; # shared object as lib.so archive member only + yes,*) enable_static=no ;; # shared object in lib.a archive as well + esac fi ;; esac @@ -12201,7 +12766,7 @@ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5 $as_echo_n "checking whether to build static libraries... " >&6; } # Make sure either enable_shared or enable_static is yes. - test "$enable_shared" = yes || enable_static=yes + test yes = "$enable_shared" || enable_static=yes { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5 $as_echo "$enable_static" >&6; } @@ -12215,7 +12780,7 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu -CC="$lt_save_CC" +CC=$lt_save_CC @@ -12239,8 +12804,8 @@ # Only expand once: -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking which extension is used for runtime loadable modules" >&5 -$as_echo_n "checking which extension is used for runtime loadable modules... " >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking what extension is used for runtime loadable modules" >&5 +$as_echo_n "checking what extension is used for runtime loadable modules... " >&6; } if ${libltdl_cv_shlibext+:} false; then : $as_echo_n "(cached) " >&6 else @@ -12267,13 +12832,20 @@ _ACEOF fi +if test -n "$shared_archive_member_spec"; then -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking which variable specifies run-time module search path" >&5 -$as_echo_n "checking which variable specifies run-time module search path... " >&6; } +cat >>confdefs.h <<_ACEOF +#define LT_SHARED_LIB_MEMBER "($shared_archive_member_spec.o)" +_ACEOF + +fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking what variable specifies run-time module search path" >&5 +$as_echo_n "checking what variable specifies run-time module search path... " >&6; } if ${lt_cv_module_path_var+:} false; then : $as_echo_n "(cached) " >&6 else - lt_cv_module_path_var="$shlibpath_var" + lt_cv_module_path_var=$shlibpath_var fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_module_path_var" >&5 $as_echo "$lt_cv_module_path_var" >&6; } @@ -12290,7 +12862,7 @@ if ${lt_cv_sys_dlsearch_path+:} false; then : $as_echo_n "(cached) " >&6 else - lt_cv_sys_dlsearch_path="$sys_lib_dlsearch_path_spec" + lt_cv_sys_dlsearch_path=$sys_lib_dlsearch_path_spec fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_dlsearch_path" >&5 $as_echo "$lt_cv_sys_dlsearch_path" >&6; } @@ -12298,9 +12870,9 @@ sys_dlsearch_path= for dir in $lt_cv_sys_dlsearch_path; do if test -z "$sys_dlsearch_path"; then - sys_dlsearch_path="$dir" + sys_dlsearch_path=$dir else - sys_dlsearch_path="$sys_dlsearch_path$PATH_SEPARATOR$dir" + sys_dlsearch_path=$sys_dlsearch_path$PATH_SEPARATOR$dir fi done @@ -12320,6 +12892,7 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu +lt_dlload_save_LIBS=$LIBS LIBADD_DLOPEN= { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing dlopen" >&5 @@ -12378,10 +12951,10 @@ $as_echo "#define HAVE_LIBDL 1" >>confdefs.h - if test "$ac_cv_search_dlopen" != "none required" ; then - LIBADD_DLOPEN="-ldl" + if test "$ac_cv_search_dlopen" != "none required"; then + LIBADD_DLOPEN=-ldl fi - libltdl_cv_lib_dl_dlopen="yes" + libltdl_cv_lib_dl_dlopen=yes LT_DLLOADERS="$LT_DLLOADERS ${lt_dlopen_dir+$lt_dlopen_dir/}dlopen.la" else cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -12402,7 +12975,7 @@ $as_echo "#define HAVE_LIBDL 1" >>confdefs.h - libltdl_cv_func_dlopen="yes" + libltdl_cv_func_dlopen=yes LT_DLLOADERS="$LT_DLLOADERS ${lt_dlopen_dir+$lt_dlopen_dir/}dlopen.la" else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5 @@ -12445,7 +13018,7 @@ $as_echo "#define HAVE_LIBDL 1" >>confdefs.h - LIBADD_DLOPEN="-lsvld" libltdl_cv_func_dlopen="yes" + LIBADD_DLOPEN=-lsvld libltdl_cv_func_dlopen=yes LT_DLLOADERS="$LT_DLLOADERS ${lt_dlopen_dir+$lt_dlopen_dir/}dlopen.la" fi @@ -12454,9 +13027,9 @@ conftest$ac_exeext conftest.$ac_ext fi -if test x"$libltdl_cv_func_dlopen" = xyes || test x"$libltdl_cv_lib_dl_dlopen" = xyes +if test yes = "$libltdl_cv_func_dlopen" || test yes = "$libltdl_cv_lib_dl_dlopen" then - lt_save_LIBS="$LIBS" + lt_save_LIBS=$LIBS LIBS="$LIBS $LIBADD_DLOPEN" for ac_func in dlerror do : @@ -12469,7 +13042,7 @@ fi done - LIBS="$lt_save_LIBS" + LIBS=$lt_save_LIBS fi @@ -12522,7 +13095,7 @@ $as_echo "#define HAVE_SHL_LOAD 1" >>confdefs.h LT_DLLOADERS="$LT_DLLOADERS ${lt_dlopen_dir+$lt_dlopen_dir/}shl_load.la" - LIBADD_SHL_LOAD="-ldld" + LIBADD_SHL_LOAD=-ldld fi fi @@ -12544,7 +13117,7 @@ beos*) LT_DLLOADERS="$LT_DLLOADERS ${lt_dlopen_dir+$lt_dlopen_dir/}load_add_on.la" ;; -cygwin* | mingw* | os2* | pw32*) +cygwin* | mingw* | pw32*) ac_fn_c_check_decl "$LINENO" "cygwin_conv_path" "ac_cv_have_decl_cygwin_conv_path" "#include " if test "x$ac_cv_have_decl_cygwin_conv_path" = xyes; then : @@ -12622,6 +13195,7 @@ LIBADD_DL="$LIBADD_DLOPEN $LIBADD_SHL_LOAD" +LIBS=$lt_dlload_save_LIBS ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' @@ -12676,112 +13250,105 @@ sys_symbol_underscore=$lt_cv_sys_symbol_underscore -if test x"$lt_cv_sys_symbol_underscore" = xyes; then - if test x"$libltdl_cv_func_dlopen" = xyes || - test x"$libltdl_cv_lib_dl_dlopen" = xyes ; then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we have to add an underscore for dlsym" >&5 +if test yes = "$lt_cv_sys_symbol_underscore"; then + if test yes = "$libltdl_cv_func_dlopen" || test yes = "$libltdl_cv_lib_dl_dlopen"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we have to add an underscore for dlsym" >&5 $as_echo_n "checking whether we have to add an underscore for dlsym... " >&6; } if ${libltdl_cv_need_uscore+:} false; then : $as_echo_n "(cached) " >&6 else libltdl_cv_need_uscore=unknown - save_LIBS="$LIBS" - LIBS="$LIBS $LIBADD_DLOPEN" - if test "$cross_compiling" = yes; then : - libltdl_cv_need_uscore=cross -else - lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 - lt_status=$lt_dlunknown - cat > conftest.$ac_ext <<_LT_EOF + dlsym_uscore_save_LIBS=$LIBS + LIBS="$LIBS $LIBADD_DLOPEN" + libname=conftmod # stay within 8.3 filename limits! + cat >$libname.$ac_ext <<_LT_EOF #line $LINENO "configure" #include "confdefs.h" +/* When -fvisibility=hidden is used, assume the code has been annotated + correspondingly for the symbols needed. */ +#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) +int fnord () __attribute__((visibility("default"))); +#endif +int fnord () { return 42; } +_LT_EOF + # ltfn_module_cmds module_cmds + # Execute tilde-delimited MODULE_CMDS with environment primed for + # $module_cmds or $archive_cmds type content. + ltfn_module_cmds () + {( # subshell avoids polluting parent global environment + module_cmds_save_ifs=$IFS; IFS='~' + for cmd in $1; do + IFS=$module_cmds_save_ifs + libobjs=$libname.$ac_objext; lib=$libname$libltdl_cv_shlibext + rpath=/not-exists; soname=$libname$libltdl_cv_shlibext; output_objdir=. + major=; versuffix=; verstring=; deplibs= + ECHO=echo; wl=$lt_prog_compiler_wl; allow_undefined_flag= + eval $cmd + done + IFS=$module_cmds_save_ifs + )} + + # Compile a loadable module using libtool macro expansion results. + $CC $pic_flag -c $libname.$ac_ext + ltfn_module_cmds "${module_cmds:-$archive_cmds}" + + # Try to fetch fnord with dlsym(). + libltdl_dlunknown=0; libltdl_dlnouscore=1; libltdl_dluscore=2 + cat >conftest.$ac_ext <<_LT_EOF +#line $LINENO "configure" +#include "confdefs.h" #if HAVE_DLFCN_H #include #endif - #include - -#ifdef RTLD_GLOBAL -# define LT_DLGLOBAL RTLD_GLOBAL -#else +#ifndef RTLD_GLOBAL # ifdef DL_GLOBAL -# define LT_DLGLOBAL DL_GLOBAL +# define RTLD_GLOBAL DL_GLOBAL # else -# define LT_DLGLOBAL 0 +# define RTLD_GLOBAL 0 # endif #endif - -/* We may have to define LT_DLLAZY_OR_NOW in the command line if we - find out it does not work in some platform. */ -#ifndef LT_DLLAZY_OR_NOW -# ifdef RTLD_LAZY -# define LT_DLLAZY_OR_NOW RTLD_LAZY +#ifndef RTLD_NOW +# ifdef DL_NOW +# define RTLD_NOW DL_NOW # else -# ifdef DL_LAZY -# define LT_DLLAZY_OR_NOW DL_LAZY -# else -# ifdef RTLD_NOW -# define LT_DLLAZY_OR_NOW RTLD_NOW -# else -# ifdef DL_NOW -# define LT_DLLAZY_OR_NOW DL_NOW -# else -# define LT_DLLAZY_OR_NOW 0 -# endif -# endif -# endif +# define RTLD_NOW 0 # endif #endif - -/* When -fvisbility=hidden is used, assume the code has been annotated - correspondingly for the symbols needed. */ -#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) -int fnord () __attribute__((visibility("default"))); -#endif - -int fnord () { return 42; } -int main () -{ - void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); - int status = $lt_dlunknown; - - if (self) - { - if (dlsym (self,"fnord")) status = $lt_dlno_uscore; +int main () { + void *handle = dlopen ("`pwd`/$libname$libltdl_cv_shlibext", RTLD_GLOBAL|RTLD_NOW); + int status = $libltdl_dlunknown; + if (handle) { + if (dlsym (handle, "fnord")) + status = $libltdl_dlnouscore; + else { + if (dlsym (handle, "_fnord")) + status = $libltdl_dluscore; else - { - if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; - else puts (dlerror ()); - } - /* dlclose (self); */ + puts (dlerror ()); } - else + dlclose (handle); + } else puts (dlerror ()); - return status; } _LT_EOF - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 (eval $ac_link) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } && test -s conftest${ac_exeext} 2>/dev/null; then - (./conftest; exit; ) >&5 2>/dev/null - lt_status=$? - case x$lt_status in - x$lt_dlno_uscore) libltdl_cv_need_uscore=no ;; - x$lt_dlneed_uscore) libltdl_cv_need_uscore=yes ;; - x$lt_dlunknown|x*) ;; - esac - else : - # compilation failed - - fi -fi -rm -fr conftest* - - LIBS="$save_LIBS" + test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then + (./conftest; exit; ) >&5 2>/dev/null + libltdl_status=$? + case x$libltdl_status in + x$libltdl_dlnouscore) libltdl_cv_need_uscore=no ;; + x$libltdl_dluscore) libltdl_cv_need_uscore=yes ;; + x*) libltdl_cv_need_uscore=unknown ;; + esac + fi + rm -rf conftest* $libname* + LIBS=$dlsym_uscore_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $libltdl_cv_need_uscore" >&5 @@ -12789,7 +13356,7 @@ fi fi -if test x"$libltdl_cv_need_uscore" = xyes; then +if test yes = "$libltdl_cv_need_uscore"; then $as_echo "#define NEED_USCORE 1" >>confdefs.h @@ -12808,7 +13375,7 @@ case $host_os in aix3*|aix4.1.*|aix4.2.*) # Unknown whether this is true for these versions of AIX, but - # we want this `case' here to explicitly catch those versions. + # we want this 'case' here to explicitly catch those versions. lt_cv_sys_dlopen_deplibs=unknown ;; aix[4-9]*) @@ -12821,6 +13388,9 @@ ;; esac ;; + bitrig*) + lt_cv_sys_dlopen_deplibs=yes + ;; darwin*) # Assuming the user has installed a libdl from somewhere, this is true # If you are looking for one http://www.opendarwin.org/projects/dlcompat @@ -12858,7 +13428,7 @@ osf[1234]*) # dlopen did load deplibs (at least at 4.x), but until the 5.x series, # it did *not* use an RPATH in a shared library to find objects the - # library depends on, so we explicitly say `no'. + # library depends on, so we explicitly say 'no'. lt_cv_sys_dlopen_deplibs=no ;; osf5.0|osf5.0a|osf5.1) @@ -12867,14 +13437,14 @@ # that the library depends on, but there's no easy way to know if that # patch is installed. Since this is the case, all we can really # say is unknown -- it depends on the patch being installed. If - # it is, this changes to `yes'. Without it, it would be `no'. + # it is, this changes to 'yes'. Without it, it would be 'no'. lt_cv_sys_dlopen_deplibs=unknown ;; osf*) # the two cases above should catch all versions of osf <= 5.1. Read # the comments above for what we know about them. # At > 5.1, deplibs are loaded *and* any RPATH in a shared library - # is used to find them so we can finally say `yes'. + # is used to find them so we can finally say 'yes'. lt_cv_sys_dlopen_deplibs=yes ;; qnx*) @@ -12891,13 +13461,12 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_dlopen_deplibs" >&5 $as_echo "$lt_cv_sys_dlopen_deplibs" >&6; } -if test "$lt_cv_sys_dlopen_deplibs" != yes; then +if test yes != "$lt_cv_sys_dlopen_deplibs"; then $as_echo "#define LTDL_DLOPEN_DEPLIBS 1" >>confdefs.h fi -: for ac_header in argz.h do : @@ -12934,7 +13503,7 @@ fi -ARGZ_H= +LT_ARGZ_H= for ac_func in argz_add argz_append argz_count argz_create_sep argz_insert \ argz_next argz_stringify do : @@ -12946,15 +13515,15 @@ _ACEOF else - ARGZ_H=argz.h; + LT_ARGZ_H=lt__argz.h; - _LT_LIBOBJS="$_LT_LIBOBJS argz.$ac_objext" + _LT_LIBOBJS="$_LT_LIBOBJS lt__argz.$ac_objext" fi done -if test -z "$ARGZ_H"; then : +if test -z "$LT_ARGZ_H"; then : { $as_echo "$as_me:${as_lineno-$LINENO}: checking if argz actually works" >&5 $as_echo_n "checking if argz actually works... " >&6; } if ${lt_cv_sys_argz_works+:} false; then : @@ -12963,7 +13532,7 @@ case $host_os in #( *cygwin*) lt_cv_sys_argz_works=no - if test "$cross_compiling" != no; then + if test no != "$cross_compiling"; then lt_cv_sys_argz_works="guessing no" else lt_sed_extract_leading_digits='s/^\([0-9\.]*\).*/\1/' @@ -12974,11 +13543,11 @@ lt_os_major=${2-0} lt_os_minor=${3-0} lt_os_micro=${4-0} - if test "$lt_os_major" -gt 1 \ - || { test "$lt_os_major" -eq 1 \ - && { test "$lt_os_minor" -gt 5 \ - || { test "$lt_os_minor" -eq 5 \ - && test "$lt_os_micro" -gt 24; }; }; }; then + if test 1 -lt "$lt_os_major" \ + || { test 1 -eq "$lt_os_major" \ + && { test 5 -lt "$lt_os_minor" \ + || { test 5 -eq "$lt_os_minor" \ + && test 24 -lt "$lt_os_micro"; }; }; }; then lt_cv_sys_argz_works=yes fi fi @@ -12988,15 +13557,15 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_argz_works" >&5 $as_echo "$lt_cv_sys_argz_works" >&6; } - if test "$lt_cv_sys_argz_works" = yes; then : + if test yes = "$lt_cv_sys_argz_works"; then : $as_echo "#define HAVE_WORKING_ARGZ 1" >>confdefs.h else - ARGZ_H=argz.h + LT_ARGZ_H=lt__argz.h - _LT_LIBOBJS="$_LT_LIBOBJS argz.$ac_objext" + _LT_LIBOBJS="$_LT_LIBOBJS lt__argz.$ac_objext" fi fi @@ -13017,7 +13586,7 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $libltdl_cv_preloaded_symbols" >&5 $as_echo "$libltdl_cv_preloaded_symbols" >&6; } -if test x"$libltdl_cv_preloaded_symbols" = xyes; then +if test yes = "$libltdl_cv_preloaded_symbols"; then $as_echo "#define HAVE_PRELOADED_SYMBOLS 1" >>confdefs.h @@ -13041,7 +13610,7 @@ fi -if test "x$with_included_ltdl" != xyes; then +if test yes != "$with_included_ltdl"; then # We are not being forced to use the included libltdl sources, so # decide whether there is a useful installed version we can use. ac_fn_c_check_header_compile "$LINENO" "ltdl.h" "ac_cv_header_ltdl_h" "$ac_includes_default @@ -13117,7 +13686,7 @@ if test -n "$with_ltdl_include"; then if test -f "$with_ltdl_include/ltdl.h"; then : else - as_fn_error $? "invalid ltdl include directory: \`$with_ltdl_include'" "$LINENO" 5 + as_fn_error $? "invalid ltdl include directory: '$with_ltdl_include'" "$LINENO" 5 fi else with_ltdl_include=no @@ -13133,7 +13702,7 @@ if test -n "$with_ltdl_lib"; then if test -f "$with_ltdl_lib/libltdl.la"; then : else - as_fn_error $? "invalid ltdl library directory: \`$with_ltdl_lib'" "$LINENO" 5 + as_fn_error $? "invalid ltdl library directory: '$with_ltdl_lib'" "$LINENO" 5 fi else with_ltdl_lib=no @@ -13146,16 +13715,16 @@ "") enable_ltdl_convenience=yes ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;; esac -LIBLTDL='${top_build_prefix}'"${lt_ltdl_dir+$lt_ltdl_dir/}libltdlc.la" +LIBLTDL='$(top_build_prefix)'"${lt_ltdl_dir+$lt_ltdl_dir/}libltdlc.la" LTDLDEPS=$LIBLTDL -LTDLINCL='-I${top_srcdir}'"${lt_ltdl_dir+/$lt_ltdl_dir}" +LTDLINCL='-I$(top_srcdir)'"${lt_ltdl_dir+/$lt_ltdl_dir}" # For backwards non-gettext consistent compatibility... -INCLTDL="$LTDLINCL" +INCLTDL=$LTDLINCL ;; @@ -13170,15 +13739,15 @@ LTDLINCL= ;; ,no*,no,*) - as_fn_error $? "\`--with-ltdl-include' and \`--with-ltdl-lib' options must be used together" "$LINENO" 5 + as_fn_error $? "'--with-ltdl-include' and '--with-ltdl-lib' options must be used together" "$LINENO" 5 ;; *) with_included_ltdl=no LIBLTDL="-L$with_ltdl_lib -lltdl" LTDLDEPS= - LTDLINCL="-I$with_ltdl_include" + LTDLINCL=-I$with_ltdl_include ;; esac -INCLTDL="$LTDLINCL" +INCLTDL=$LTDLINCL # Report our decision... { $as_echo "$as_me:${as_lineno-$LINENO}: checking where to find libltdl headers" >&5 @@ -13198,12 +13767,12 @@ fi -case ,${enable_ltdl_install},${enable_ltdl_convenience} in +case ,$enable_ltdl_install,$enable_ltdl_convenience in *yes*) ;; *) enable_ltdl_convenience=yes ;; esac - if test x"${enable_ltdl_install-no}" != xno; then + if test no != "${enable_ltdl_install-no}"; then INSTALL_LTDL_TRUE= INSTALL_LTDL_FALSE='#' else @@ -13211,7 +13780,7 @@ INSTALL_LTDL_FALSE= fi - if test x"${enable_ltdl_convenience-no}" != xno; then + if test no != "${enable_ltdl_convenience-no}"; then CONVENIENCE_LTDL_TRUE= CONVENIENCE_LTDL_FALSE='#' else @@ -14036,6 +14605,211 @@ fi +for ac_prog in flex lex +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_LEX+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$LEX"; then + ac_cv_prog_LEX="$LEX" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_LEX="$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +LEX=$ac_cv_prog_LEX +if test -n "$LEX"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LEX" >&5 +$as_echo "$LEX" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$LEX" && break +done +test -n "$LEX" || LEX=":" + +if test "x$LEX" != "x:"; then + cat >conftest.l <<_ACEOF +%% +a { ECHO; } +b { REJECT; } +c { yymore (); } +d { yyless (1); } +e { /* IRIX 6.5 flex 2.5.4 underquotes its yyless argument. */ + yyless ((input () != 0)); } +f { unput (yytext[0]); } +. { BEGIN INITIAL; } +%% +#ifdef YYTEXT_POINTER +extern char *yytext; +#endif +int +main (void) +{ + return ! yylex () + ! yywrap (); +} +_ACEOF +{ { ac_try="$LEX conftest.l" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$LEX conftest.l") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking lex output file root" >&5 +$as_echo_n "checking lex output file root... " >&6; } +if ${ac_cv_prog_lex_root+:} false; then : + $as_echo_n "(cached) " >&6 +else + +if test -f lex.yy.c; then + ac_cv_prog_lex_root=lex.yy +elif test -f lexyy.c; then + ac_cv_prog_lex_root=lexyy +else + as_fn_error $? "cannot find output from $LEX; giving up" "$LINENO" 5 +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_lex_root" >&5 +$as_echo "$ac_cv_prog_lex_root" >&6; } +LEX_OUTPUT_ROOT=$ac_cv_prog_lex_root + +if test -z "${LEXLIB+set}"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking lex library" >&5 +$as_echo_n "checking lex library... " >&6; } +if ${ac_cv_lib_lex+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ac_save_LIBS=$LIBS + ac_cv_lib_lex='none needed' + for ac_lib in '' -lfl -ll; do + LIBS="$ac_lib $ac_save_LIBS" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +`cat $LEX_OUTPUT_ROOT.c` +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_lex=$ac_lib +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + test "$ac_cv_lib_lex" != 'none needed' && break + done + LIBS=$ac_save_LIBS + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_lex" >&5 +$as_echo "$ac_cv_lib_lex" >&6; } + test "$ac_cv_lib_lex" != 'none needed' && LEXLIB=$ac_cv_lib_lex +fi + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether yytext is a pointer" >&5 +$as_echo_n "checking whether yytext is a pointer... " >&6; } +if ${ac_cv_prog_lex_yytext_pointer+:} false; then : + $as_echo_n "(cached) " >&6 +else + # POSIX says lex can declare yytext either as a pointer or an array; the +# default is implementation-dependent. Figure out which it is, since +# not all implementations provide the %pointer and %array declarations. +ac_cv_prog_lex_yytext_pointer=no +ac_save_LIBS=$LIBS +LIBS="$LEXLIB $ac_save_LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + #define YYTEXT_POINTER 1 +`cat $LEX_OUTPUT_ROOT.c` +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_prog_lex_yytext_pointer=yes +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_save_LIBS + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_lex_yytext_pointer" >&5 +$as_echo "$ac_cv_prog_lex_yytext_pointer" >&6; } +if test $ac_cv_prog_lex_yytext_pointer = yes; then + +$as_echo "#define YYTEXT_POINTER 1" >>confdefs.h + +fi +rm -f conftest.l $LEX_OUTPUT_ROOT.c + +fi +if test "$LEX" = :; then + LEX=${am_missing_run}flex +fi +for ac_prog in 'bison -y' byacc +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_YACC+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$YACC"; then + ac_cv_prog_YACC="$YACC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_YACC="$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +YACC=$ac_cv_prog_YACC +if test -n "$YACC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $YACC" >&5 +$as_echo "$YACC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$YACC" && break +done +test -n "$YACC" || YACC="yacc" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5 $as_echo_n "checking whether ln -s works... " >&6; } @@ -14124,7 +14898,7 @@ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_mw__mwvalidcheckl" >&5 $as_echo "$ac_cv_lib_mw__mwvalidcheckl" >&6; } if test "x$ac_cv_lib_mw__mwvalidcheckl" = xyes; then : - LIBM="-lmw" + LIBM=-lmw fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for cos in -lm" >&5 @@ -14206,7 +14980,7 @@ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_m_cos" >&5 $as_echo "$ac_cv_lib_m_cos" >&6; } if test "x$ac_cv_lib_m_cos" = xyes; then : - LIBM="-lm" + LIBM=-lm fi ;; @@ -14214,7 +14988,7 @@ -for ac_header in stdint.h unistd.h sys/int_types.h dlfcn.h inttypes.h sys/inttypes.h sys/times.h memory.h ndir.h stdlib.h strings.h string.h sys/mman.h sys/param.h sys/stat.h sys/types.h malloc.h poll.h limits.h sys/filio.h sys/uio.h termios.h stdbool.h pwd.h grp.h +for ac_header in stdint.h unistd.h sys/int_types.h dlfcn.h inttypes.h sys/inttypes.h sys/times.h memory.h ndir.h stdlib.h strings.h string.h sys/mman.h sys/param.h sys/stat.h sys/types.h malloc.h poll.h limits.h sys/filio.h sys/uio.h termios.h stdbool.h pwd.h grp.h sys/queue.h sys/cdefs.h do : as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" @@ -15868,35 +16642,232 @@ if test "$enable_check_ut" != "no" ; then -case "$host_os" in - *linux*) - save_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS -pthread -Wl,--no-as-needed -lm -Wl,--as-needed -lrt" - ;; -esac - if test "X$prefix" = "XNONE"; then - acl_final_prefix="$ac_default_prefix" - else - acl_final_prefix="$prefix" - fi - if test "X$exec_prefix" = "XNONE"; then - acl_final_exec_prefix='${prefix}' - else - acl_final_exec_prefix="$exec_prefix" - fi - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - eval acl_final_exec_prefix=\"$acl_final_exec_prefix\" - prefix="$acl_save_prefix" -# Check whether --with-gnu-ld was given. -if test "${with_gnu_ld+set}" = set; then : - withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes -else - with_gnu_ld=no + + + + +if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. +set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_PKG_CONFIG+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $PKG_CONFIG in + [\\/]* | ?:[\\/]*) + ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + + ;; +esac +fi +PKG_CONFIG=$ac_cv_path_PKG_CONFIG +if test -n "$PKG_CONFIG"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5 +$as_echo "$PKG_CONFIG" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_path_PKG_CONFIG"; then + ac_pt_PKG_CONFIG=$PKG_CONFIG + # Extract the first word of "pkg-config", so it can be a program name with args. +set dummy pkg-config; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_ac_pt_PKG_CONFIG+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $ac_pt_PKG_CONFIG in + [\\/]* | ?:[\\/]*) + ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + + ;; +esac +fi +ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG +if test -n "$ac_pt_PKG_CONFIG"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5 +$as_echo "$ac_pt_PKG_CONFIG" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_pt_PKG_CONFIG" = x; then + PKG_CONFIG="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + PKG_CONFIG=$ac_pt_PKG_CONFIG + fi +else + PKG_CONFIG="$ac_cv_path_PKG_CONFIG" +fi + +fi +if test -n "$PKG_CONFIG"; then + _pkg_min_version=0.9.0 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5 +$as_echo_n "checking pkg-config is at least version $_pkg_min_version... " >&6; } + if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + PKG_CONFIG="" + fi +fi + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CHECK" >&5 +$as_echo_n "checking for CHECK... " >&6; } + +if test -n "$CHECK_CFLAGS"; then + pkg_cv_CHECK_CFLAGS="$CHECK_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"check\""; } >&5 + ($PKG_CONFIG --exists --print-errors "check") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_CHECK_CFLAGS=`$PKG_CONFIG --cflags "check" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$CHECK_LIBS"; then + pkg_cv_CHECK_LIBS="$CHECK_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"check\""; } >&5 + ($PKG_CONFIG --exists --print-errors "check") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_CHECK_LIBS=`$PKG_CONFIG --libs "check" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + CHECK_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "check" 2>&1` + else + CHECK_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "check" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$CHECK_PKG_ERRORS" >&5 + + HAVE_LIBCHECK= +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + HAVE_LIBCHECK= +else + CHECK_CFLAGS=$pkg_cv_CHECK_CFLAGS + CHECK_LIBS=$pkg_cv_CHECK_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + HAVE_LIBCHECK=yes +fi + +if test "X$HAVE_LIBCHECK" == "Xyes"; then + CHECK_CPPFLAGS=$CHECK_CFLAGS +else + +case "$host_os" in + *linux*) + save_LDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS -pthread -Wl,--no-as-needed -lm -Wl,--as-needed -lrt" + ;; +esac + + + if test "X$prefix" = "XNONE"; then + acl_final_prefix="$ac_default_prefix" + else + acl_final_prefix="$prefix" + fi + if test "X$exec_prefix" = "XNONE"; then + acl_final_exec_prefix='${prefix}' + else + acl_final_exec_prefix="$exec_prefix" + fi + acl_save_prefix="$prefix" + prefix="$acl_final_prefix" + eval acl_final_exec_prefix=\"$acl_final_exec_prefix\" + prefix="$acl_save_prefix" + + +# Check whether --with-gnu-ld was given. +if test "${with_gnu_ld+set}" = set; then : + withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes +else + with_gnu_ld=no fi # Prepare PATH_SEPARATOR. @@ -16570,6 +17541,8 @@ esac fi +fi + if test "X$HAVE_LIBCHECK" = "Xyes"; then @@ -16839,7 +17812,7 @@ $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lxml2 $LIBS" +LIBS="-lxml2 $XML_LIBS $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -16947,7 +17920,7 @@ save_CFLAGS="$CFLAGS" save_LIBS="$LIBS" -SSL_LIBS="-lssl -lcrypto" +SSL_LIBS="-lssl -lcrypto -lz" if test "$LIBSSL_HOME" != "/usr"; then SSL_LDFLAGS="-L$LIBSSL_HOME/lib" @@ -16968,7 +17941,7 @@ $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lssl -lcrypto $LIBS" +LIBS="-lssl -lcrypto -lz $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -17011,7 +17984,7 @@ $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lcrypto $LIBS" +LIBS="-lcrypto -lcrypto -lz $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -17054,7 +18027,7 @@ $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lssl -lcrypto $LIBS" +LIBS="-lssl -lcrypto -lz $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -17311,74 +18284,443 @@ -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5 -$as_echo_n "checking whether to enable maintainer-specific portions of Makefiles... " >&6; } - # Check whether --enable-maintainer-mode was given. -if test "${enable_maintainer_mode+set}" = set; then : - enableval=$enable_maintainer_mode; USE_MAINTAINER_MODE=$enableval -else - USE_MAINTAINER_MODE=no -fi - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_MAINTAINER_MODE" >&5 -$as_echo "$USE_MAINTAINER_MODE" >&6; } - if test $USE_MAINTAINER_MODE = yes; then - MAINTAINER_MODE_TRUE= - MAINTAINER_MODE_FALSE='#' +# Check whether --with-pcre was given. +if test "${with_pcre+set}" = set; then : + withval=$with_pcre; pcreser=$withval else - MAINTAINER_MODE_TRUE='#' - MAINTAINER_MODE_FALSE= + pcreser="yes" fi - MAINT=$MAINTAINER_MODE_TRUE - - - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for zlib installation" >&5 -$as_echo_n "checking for zlib installation... " >&6; } - -# Check whether --with-zlib was given. -if test "${with_zlib+set}" = set; then : - withval=$with_zlib; -if test "$withval"; then - ZLIB_HOME="$withval" - { $as_echo "$as_me:${as_lineno-$LINENO}: result: using $ZLIB_HOME" >&5 -$as_echo "using $ZLIB_HOME" >&6; } -fi +case "$pcreser" in +no) + pcreconfig="" + ;; +yes) + # Extract the first word of "pcre2-config", so it can be a program name with args. +set dummy pcre2-config; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_pcreconfig+:} false; then : + $as_echo_n "(cached) " >&6 else + case $pcreconfig in + [\\/]* | ?:[\\/]*) + ac_cv_path_pcreconfig="$pcreconfig" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_pcreconfig="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS -ZLIB_HOME=/usr/local -if test ! -f "$ZLIB_HOME/include/zlib.h" -then - ZLIB_HOME=/usr + ;; +esac fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ZLIB_HOME" >&5 -$as_echo "$ZLIB_HOME" >&6; } - +pcreconfig=$ac_cv_path_pcreconfig +if test -n "$pcreconfig"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $pcreconfig" >&5 +$as_echo "$pcreconfig" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi -CLAMDSCAN_LIBS="$FRESHCLAM_LIBS" + if test "x$pcreconfig" = "x"; then + # Extract the first word of "pcre-config", so it can be a program name with args. +set dummy pcre-config; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_pcreconfig+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $pcreconfig in + [\\/]* | ?:[\\/]*) + ac_cv_path_pcreconfig="$pcreconfig" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_pcreconfig="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS -# Check whether --enable-zlib-vcheck was given. -if test "${enable_zlib_vcheck+set}" = set; then : - enableval=$enable_zlib_vcheck; zlib_check=$enableval + ;; +esac +fi +pcreconfig=$ac_cv_path_pcreconfig +if test -n "$pcreconfig"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $pcreconfig" >&5 +$as_echo "$pcreconfig" >&6; } else - zlib_check="yes" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } fi -if test ! -f "$ZLIB_HOME/include/zlib.h" -then - as_fn_error $? "Please install zlib and zlib-devel packages" "$LINENO" 5 + if test "x$pcreconfig" = "x"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: cannot locate libpcre2 or libpcre within PATH" >&5 +$as_echo "$as_me: cannot locate libpcre2 or libpcre within PATH" >&6;} + else + pcrelib="pcre" + fi + else + pcrelib="pcre2" + fi + ;; +"") + as_fn_error $? "cannot assign blank value to --with-pcre" "$LINENO" 5 + ;; +*) + # Extract the first word of "pcre2-config", so it can be a program name with args. +set dummy pcre2-config; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_pcreconfig+:} false; then : + $as_echo_n "(cached) " >&6 else - - vuln=`grep "ZLIB_VERSION \"1.2.0" $ZLIB_HOME/include/zlib.h` - if test -z "$vuln"; then - vuln=`grep "ZLIB_VERSION \"1.2.1" $ZLIB_HOME/include/zlib.h` - fi - + case $pcreconfig in + [\\/]* | ?:[\\/]*) + ac_cv_path_pcreconfig="$pcreconfig" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $pcreser/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_pcreconfig="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + + ;; +esac +fi +pcreconfig=$ac_cv_path_pcreconfig +if test -n "$pcreconfig"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $pcreconfig" >&5 +$as_echo "$pcreconfig" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + if test "x$pcreconfig" = "x"; then + # Extract the first word of "pcre-config", so it can be a program name with args. +set dummy pcre-config; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_pcreconfig+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $pcreconfig in + [\\/]* | ?:[\\/]*) + ac_cv_path_pcreconfig="$pcreconfig" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $pcreser/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_pcreconfig="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + + ;; +esac +fi +pcreconfig=$ac_cv_path_pcreconfig +if test -n "$pcreconfig"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $pcreconfig" >&5 +$as_echo "$pcreconfig" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + if test "x$pcreconfig" = "x"; then + as_fn_error $? "cannot locate libpcre2 or libpcre at $pcreser" "$LINENO" 5 + else + pcrelib="pcre" + fi + else + pcrelib="pcre2" + fi + ;; +esac + +found_pcre="no" +if test "x$pcreconfig" != "x"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking pcre-config version" >&5 +$as_echo_n "checking pcre-config version... " >&6; } + pcre_version="`$pcreconfig --version`" + + if test "x$pcre_version" = "x"; then + as_fn_error $? "$pcreconfig failed" "$LINENO" 5 + fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $pcre_version" >&5 +$as_echo "$pcre_version" >&6; } + + case $host_os in + darwin* ) + pcrever_major=`echo "$pcre_version" | sed -Ee 's/([0-9]+).*/\1/'` + pcrever_minor=`echo "$pcre_version" | sed -Ee 's/[0-9]+\.([0-9]+).*/\1/'` + ;; + *) + pcrever_major=`echo "$pcre_version" | sed -re 's/([0-9]+).*/\1/'` + pcrever_minor=`echo "$pcre_version" | sed -re 's/[0-9]+\.([0-9]+).*/\1/'` + ;; + esac + + if test "$pcrelib" = "pcre"; then + if test $pcrever_major -lt 6; then + as_fn_error $? "This pcre version is missing features used by ClamAV. Please upgrade to a newer version: http://www.pcre.org." "$LINENO" 5 + fi + if test $pcrever_major -eq 6 && test $pcrever_minor -lt 5; then + as_fn_error $? "This pcre version is missing features used by ClamAV. Please upgrade to a newer version: http://www.pcre.org." "$LINENO" 5 + fi + fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for CVE-2015-3210" >&5 +$as_echo_n "checking for CVE-2015-3210... " >&6; } + if test "$pcrelib" = "pcre2"; then + if test $pcrever_major -eq 10 && test $pcrever_minor -eq 10; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: The installed pcre2 version may contain a security bug. Please upgrade to 10.20 or later: http://www.pcre.org." >&5 +$as_echo "$as_me: WARNING: The installed pcre2 version may contain a security bug. Please upgrade to 10.20 or later: http://www.pcre.org." >&2;} + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5 +$as_echo "ok" >&6; } + fi + else + if test $pcrever_major -eq 8 && + test $pcrever_minor -gt 33 && test $pcrever_minor -lt 38; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: The installed pcre version may contain a security bug. Please upgrade to 8.38 or later: http://www.pcre.org." >&5 +$as_echo "$as_me: WARNING: The installed pcre version may contain a security bug. Please upgrade to 8.38 or later: http://www.pcre.org." >&2;} + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5 +$as_echo "ok" >&6; } + fi + fi + + found_pcre="yes" + PCRE_HOME="`$pcreconfig --prefix`" + PCRE_CPPFLAGS="`$pcreconfig --cflags`" + if test "$pcrelib" = "pcre2"; then + PCRE_LIBS="`$pcreconfig --libs8`" + else + PCRE_LIBS="`$pcreconfig --libs`" + fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: CFLAGS from pcre-config: $PCRE_CPPFLAGS" >&5 +$as_echo "$as_me: CFLAGS from pcre-config: $PCRE_CPPFLAGS" >&6;} + { $as_echo "$as_me:${as_lineno-$LINENO}: LIBS from pcre-config: $PCRE_LIBS" >&5 +$as_echo "$as_me: LIBS from pcre-config: $PCRE_LIBS" >&6;} +fi + +have_pcre="no" +if test "x$found_pcre" != "xno"; then + save_CPPFLAGS="$CPPFLAGS" + CPPFLAGS=$PCRE_CPPFLAGS + save_LDFLAGS="$LDFLAGS" + LDFLAGS=$PCRE_LIBS + + if test "$pcrelib" = "pcre2"; then + + have_pcre="yes" + else + ac_fn_c_check_header_mongrel "$LINENO" "pcre.h" "ac_cv_header_pcre_h" "$ac_includes_default" +if test "x$ac_cv_header_pcre_h" = xyes; then : + have_pcre="yes" +else + have_pcre="no" +fi + + + if test "x$have_pcre" = "xno"; then + ac_fn_c_check_header_mongrel "$LINENO" "pcre/pcre.h" "ac_cv_header_pcre_pcre_h" "$ac_includes_default" +if test "x$ac_cv_header_pcre_pcre_h" = xyes; then : + have_pcre="yes" +else + have_pcre="no" +fi + + + fi + + if test "x$have_pcre" = "xyes"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pcre_compile in -lpcre" >&5 +$as_echo_n "checking for pcre_compile in -lpcre... " >&6; } +if ${ac_cv_lib_pcre_pcre_compile+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lpcre $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char pcre_compile (); +int +main () +{ +return pcre_compile (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_pcre_pcre_compile=yes +else + ac_cv_lib_pcre_pcre_compile=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pcre_pcre_compile" >&5 +$as_echo "$ac_cv_lib_pcre_pcre_compile" >&6; } +if test "x$ac_cv_lib_pcre_pcre_compile" = xyes; then : + have_pcre="yes" +else + have_pcre="no" +fi + + fi + fi + + CPPFLAGS="$save_CPPFLAGS" + LDFLAGS="$save_LDFLAGS" +fi + +if test "x$have_pcre" = "xyes"; then + +$as_echo "#define HAVE_PCRE 1" >>confdefs.h + + + if test "$pcrelib" = "pcre2"; then + +$as_echo "#define USING_PCRE2 1" >>confdefs.h + + { $as_echo "$as_me:${as_lineno-$LINENO}: Compiling and linking with pcre2 from $PCRE_HOME" >&5 +$as_echo "$as_me: Compiling and linking with pcre2 from $PCRE_HOME" >&6;} + else + { $as_echo "$as_me:${as_lineno-$LINENO}: Compiling and linking with pcre from $PCRE_HOME" >&5 +$as_echo "$as_me: Compiling and linking with pcre from $PCRE_HOME" >&6;} + fi +fi + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5 +$as_echo_n "checking whether to enable maintainer-specific portions of Makefiles... " >&6; } + # Check whether --enable-maintainer-mode was given. +if test "${enable_maintainer_mode+set}" = set; then : + enableval=$enable_maintainer_mode; USE_MAINTAINER_MODE=$enableval +else + USE_MAINTAINER_MODE=no +fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_MAINTAINER_MODE" >&5 +$as_echo "$USE_MAINTAINER_MODE" >&6; } + if test $USE_MAINTAINER_MODE = yes; then + MAINTAINER_MODE_TRUE= + MAINTAINER_MODE_FALSE='#' +else + MAINTAINER_MODE_TRUE='#' + MAINTAINER_MODE_FALSE= +fi + + MAINT=$MAINTAINER_MODE_TRUE + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for zlib installation" >&5 +$as_echo_n "checking for zlib installation... " >&6; } + +# Check whether --with-zlib was given. +if test "${with_zlib+set}" = set; then : + withval=$with_zlib; +if test "$withval"; then + ZLIB_HOME="$withval" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: using $ZLIB_HOME" >&5 +$as_echo "using $ZLIB_HOME" >&6; } +fi + +else + +ZLIB_HOME=/usr/local +if test ! -f "$ZLIB_HOME/include/zlib.h" +then + ZLIB_HOME=/usr +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ZLIB_HOME" >&5 +$as_echo "$ZLIB_HOME" >&6; } + +fi + + +CLAMDSCAN_LIBS="$FRESHCLAM_LIBS" + +# Check whether --enable-zlib-vcheck was given. +if test "${enable_zlib_vcheck+set}" = set; then : + enableval=$enable_zlib_vcheck; zlib_check=$enableval +else + zlib_check="yes" +fi + + +if test ! -f "$ZLIB_HOME/include/zlib.h" +then + as_fn_error $? "Please install zlib and zlib-devel packages" "$LINENO" 5 +else + + vuln=`grep "ZLIB_VERSION \"1.2.0" $ZLIB_HOME/include/zlib.h` + if test -z "$vuln"; then + vuln=`grep "ZLIB_VERSION \"1.2.1" $ZLIB_HOME/include/zlib.h` + fi + if test -n "$vuln"; then if test "$zlib_check" = "yes"; then as_fn_error $? "The installed zlib version may contain a security bug. Please upgrade to 1.2.2 or later: http://www.zlib.net. You can omit this check with --disable-zlib-vcheck but DO NOT REPORT any stability issues then!" "$LINENO" 5 @@ -18398,109 +19740,369 @@ bzip_check="link failed (CVE-2010-0405)" fi - case "$ac_cv_c_cve_2010_0405" in - ok|bugged|linkfailed) - LIBCLAMAV_LIBS="$LIBCLAMAV_LIBS $LTLIBBZ2" + case "$ac_cv_c_cve_2010_0405" in + ok|bugged|linkfailed) + LIBCLAMAV_LIBS="$LIBCLAMAV_LIBS $LTLIBBZ2" + +$as_echo "#define HAVE_BZLIB_H 1" >>confdefs.h + + ;; + *) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ****** bzip2 support disabled" >&5 +$as_echo "$as_me: WARNING: ****** bzip2 support disabled" >&2;} + ;; + esac + + else + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ****** bzip2 support disabled" >&5 +$as_echo "$as_me: WARNING: ****** bzip2 support disabled" >&2;} + fi +fi + + if test "x$HAVE_LIBBZ2" = "xyes"; then + HAVE_LIBBZ2_TRUE= + HAVE_LIBBZ2_FALSE='#' +else + HAVE_LIBBZ2_TRUE='#' + HAVE_LIBBZ2_FALSE= +fi + + +# Check whether --enable-unrar was given. +if test "${enable_unrar+set}" = set; then : + enableval=$enable_unrar; want_unrar=$enableval +else + want_unrar="yes" +fi + + if test "$want_unrar" = "yes"; then + ENABLE_UNRAR_TRUE= + ENABLE_UNRAR_FALSE='#' +else + ENABLE_UNRAR_TRUE='#' + ENABLE_UNRAR_FALSE= +fi + + +# Check whether --enable-getaddrinfo was given. +if test "${enable_getaddrinfo+set}" = set; then : + enableval=$enable_getaddrinfo; want_getaddrinfo=$enableval +else + want_getaddrinfo="yes" +fi + + +if test "$want_getaddrinfo" = "yes" +then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for getaddrinfo" >&5 +$as_echo_n "checking for getaddrinfo... " >&6; } + if ${have_cv_gai+:} false; then : + $as_echo_n "(cached) " >&6 +else + + if test "$cross_compiling" = yes; then : + have_cv_gai=no +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + #include + #include + #include + #include + int main(int argc, char **argv) + { + struct addrinfo *res; + int sd; + + if(getaddrinfo("127.0.0.1", NULL, NULL, &res) < 0) + return 1; + freeaddrinfo(res); + + return 0; + } + +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + have_cv_gai=yes +else + have_cv_gai=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + + +fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $have_cv_gai" >&5 +$as_echo "$have_cv_gai" >&6; } + if test "$have_cv_gai" = yes; then + +$as_echo "#define HAVE_GETADDRINFO 1" >>confdefs.h + + fi +fi + + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for SYSTEMD" >&5 +$as_echo_n "checking for SYSTEMD... " >&6; } + +if test -n "$SYSTEMD_CFLAGS"; then + pkg_cv_SYSTEMD_CFLAGS="$SYSTEMD_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd\""; } >&5 + ($PKG_CONFIG --exists --print-errors "libsystemd") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_SYSTEMD_CFLAGS=`$PKG_CONFIG --cflags "libsystemd" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$SYSTEMD_LIBS"; then + pkg_cv_SYSTEMD_LIBS="$SYSTEMD_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd\""; } >&5 + ($PKG_CONFIG --exists --print-errors "libsystemd") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_SYSTEMD_LIBS=`$PKG_CONFIG --libs "libsystemd" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + SYSTEMD_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libsystemd" 2>&1` + else + SYSTEMD_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libsystemd" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$SYSTEMD_PKG_ERRORS" >&5 + + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for SYSTEMD" >&5 +$as_echo_n "checking for SYSTEMD... " >&6; } + +if test -n "$SYSTEMD_CFLAGS"; then + pkg_cv_SYSTEMD_CFLAGS="$SYSTEMD_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd-daemon\""; } >&5 + ($PKG_CONFIG --exists --print-errors "libsystemd-daemon") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_SYSTEMD_CFLAGS=`$PKG_CONFIG --cflags "libsystemd-daemon" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$SYSTEMD_LIBS"; then + pkg_cv_SYSTEMD_LIBS="$SYSTEMD_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd-daemon\""; } >&5 + ($PKG_CONFIG --exists --print-errors "libsystemd-daemon") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_SYSTEMD_LIBS=`$PKG_CONFIG --libs "libsystemd-daemon" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + -$as_echo "#define HAVE_BZLIB_H 1" >>confdefs.h - ;; - *) - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ****** bzip2 support disabled" >&5 -$as_echo "$as_me: WARNING: ****** bzip2 support disabled" >&2;} - ;; - esac +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } - else - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: ****** bzip2 support disabled" >&5 -$as_echo "$as_me: WARNING: ****** bzip2 support disabled" >&2;} - fi +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no fi + if test $_pkg_short_errors_supported = yes; then + SYSTEMD_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libsystemd-daemon" 2>&1` + else + SYSTEMD_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libsystemd-daemon" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$SYSTEMD_PKG_ERRORS" >&5 - if test "x$HAVE_LIBBZ2" = "xyes"; then - HAVE_LIBBZ2_TRUE= - HAVE_LIBBZ2_FALSE='#' + { $as_echo "$as_me:${as_lineno-$LINENO}: result: systemd is not supported" >&5 +$as_echo "systemd is not supported" >&6; } +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: systemd is not supported" >&5 +$as_echo "systemd is not supported" >&6; } else - HAVE_LIBBZ2_TRUE='#' - HAVE_LIBBZ2_FALSE= -fi + SYSTEMD_CFLAGS=$pkg_cv_SYSTEMD_CFLAGS + SYSTEMD_LIBS=$pkg_cv_SYSTEMD_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +$as_echo "#define HAVE_SYSTEMD /**/" >>confdefs.h -# Check whether --enable-unrar was given. -if test "${enable_unrar+set}" = set; then : - enableval=$enable_unrar; want_unrar=$enableval -else - want_unrar="yes" fi +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } - if test "$want_unrar" = "yes"; then - ENABLE_UNRAR_TRUE= - ENABLE_UNRAR_FALSE='#' +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for SYSTEMD" >&5 +$as_echo_n "checking for SYSTEMD... " >&6; } + +if test -n "$SYSTEMD_CFLAGS"; then + pkg_cv_SYSTEMD_CFLAGS="$SYSTEMD_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd-daemon\""; } >&5 + ($PKG_CONFIG --exists --print-errors "libsystemd-daemon") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_SYSTEMD_CFLAGS=`$PKG_CONFIG --cflags "libsystemd-daemon" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes else - ENABLE_UNRAR_TRUE='#' - ENABLE_UNRAR_FALSE= + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$SYSTEMD_LIBS"; then + pkg_cv_SYSTEMD_LIBS="$SYSTEMD_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libsystemd-daemon\""; } >&5 + ($PKG_CONFIG --exists --print-errors "libsystemd-daemon") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_SYSTEMD_LIBS=`$PKG_CONFIG --libs "libsystemd-daemon" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried fi -# Check whether --enable-getaddrinfo was given. -if test "${enable_getaddrinfo+set}" = set; then : - enableval=$enable_getaddrinfo; want_getaddrinfo=$enableval + +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes else - want_getaddrinfo="yes" + _pkg_short_errors_supported=no fi + if test $_pkg_short_errors_supported = yes; then + SYSTEMD_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libsystemd-daemon" 2>&1` + else + SYSTEMD_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libsystemd-daemon" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$SYSTEMD_PKG_ERRORS" >&5 - -if test "$want_getaddrinfo" = "yes" -then - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for getaddrinfo" >&5 -$as_echo_n "checking for getaddrinfo... " >&6; } - if ${have_cv_gai+:} false; then : - $as_echo_n "(cached) " >&6 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: systemd is not supported" >&5 +$as_echo "systemd is not supported" >&6; } +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: systemd is not supported" >&5 +$as_echo "systemd is not supported" >&6; } else + SYSTEMD_CFLAGS=$pkg_cv_SYSTEMD_CFLAGS + SYSTEMD_LIBS=$pkg_cv_SYSTEMD_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } - if test "$cross_compiling" = yes; then : - have_cv_gai=no +$as_echo "#define HAVE_SYSTEMD /**/" >>confdefs.h + +fi else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ + SYSTEMD_CFLAGS=$pkg_cv_SYSTEMD_CFLAGS + SYSTEMD_LIBS=$pkg_cv_SYSTEMD_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } - #include - #include - #include - #include - int main(int argc, char **argv) - { - struct addrinfo *res; - int sd; +$as_echo "#define HAVE_SYSTEMD /**/" >>confdefs.h - if(getaddrinfo("127.0.0.1", NULL, NULL, &res) < 0) - return 1; - freeaddrinfo(res); +fi +CLAMD_LIBS="$CLAMD_LIBS $SYSTEMD_LIBS" +CFLAGS="$CFLAGS $SYSTEMD_CFLAGS" - return 0; - } -_ACEOF -if ac_fn_c_try_run "$LINENO"; then : - have_cv_gai=yes +# Check whether --with-systemdsystemunitdir was given. +if test "${with_systemdsystemunitdir+set}" = set; then : + withval=$with_systemdsystemunitdir; else - have_cv_gai=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ - conftest.$ac_objext conftest.beam conftest.$ac_ext + with_systemdsystemunitdir=auto fi +if test "x$with_systemdsystemunitdir" = "xyes" -o "x$with_systemdsystemunitdir" = "xauto"; then : + def_systemdsystemunitdir=$($PKG_CONFIG --variable=systemdsystemunitdir systemd) + if test "x$def_systemdsystemunitdir" = "x"; then : + if test "x$with_systemdsystemunitdir" = "xyes"; then : + as_fn_error $? "systemd support requested but pkg-config unable to query systemd package" "$LINENO" 5 +fi + with_systemdsystemunitdir=no +else + with_systemdsystemunitdir=$def_systemdsystemunitdir +fi fi +if test "x$with_systemdsystemunitdir" != "xno"; then : + systemdsystemunitdir=$with_systemdsystemunitdir - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $have_cv_gai" >&5 -$as_echo "$have_cv_gai" >&6; } - if test "$have_cv_gai" = yes; then +fi + if test "x$with_systemdsystemunitdir" != "xno"; then + INSTALL_SYSTEMD_UNITS_TRUE= + INSTALL_SYSTEMD_UNITS_FALSE='#' +else + INSTALL_SYSTEMD_UNITS_TRUE='#' + INSTALL_SYSTEMD_UNITS_FALSE= +fi -$as_echo "#define HAVE_GETADDRINFO 1" >>confdefs.h +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: checking for systemd system unit installation directory... $with_systemdsystemunitdir" >&5 +$as_echo "checking for systemd system unit installation directory... $with_systemdsystemunitdir" >&6; } - fi -fi # Check whether --enable-ipv6 was given. if test "${enable_ipv6+set}" = set; then : @@ -22347,6 +23949,36 @@ fi + +# Check whether --with-llvm-linking was given. +if test "${with_llvm_linking+set}" = set; then : + withval=$with_llvm_linking; +if test "x$system_llvm" = "xbuilt-in"; then + as_fn_error $? "Failed to configure LLVM, and LLVM linking was specified without specifying system-llvm" "$LINENO" 5 +else +case "$withval" in + static) + llvm_linking="static" + ;; + dynamic) + llvm_linking="dynamic" + ;; + *) + as_fn_error $? "Invalid argument to --with-llvm-linking" "$LINENO" 5 +esac +fi + +else + +if test "x$system_llvm" = "xbuilt-in"; then + llvm_linking="" +else + llvm_linking="auto" +fi + +fi + + # Check whether --enable-llvm was given. if test "${enable_llvm+set}" = set; then : enableval=$enable_llvm; enable_llvm=$enableval @@ -22375,6 +24007,7 @@ else system_llvm="none" + llvm_linking="" fi # Check whether --enable-sha-collector-for-internal-use was given. @@ -22391,6 +24024,46 @@ fi +# Check whether --enable-yara was given. +if test "${enable_yara+set}" = set; then : + enableval=$enable_yara; enable_yara=$enableval +else + enable_yara="yes" +fi + + +if test "$enable_yara" = "yes"; then + +$as_echo "#define HAVE_YARA 1" >>confdefs.h + + +fi + + + +# Check whether --enable-libfreshclam was given. +if test "${enable_libfreshclam+set}" = set; then : + enableval=$enable_libfreshclam; enable_libfreshclam=$enableval +else + enable_libfreshclam="no" +fi + + +if test "$enable_libfreshclam" = "yes"; then + +$as_echo "#define ENABLE_LIBFRESHCLAM 1" >>confdefs.h + +fi + if test "$enable_libfreshclam" = "yes"; then + ENABLE_LIBFRESHCLAM_TRUE= + ENABLE_LIBFRESHCLAM_FALSE='#' +else + ENABLE_LIBFRESHCLAM_TRUE='#' + ENABLE_LIBFRESHCLAM_FALSE= +fi + + + case "$host_os" in freebsd*) { $as_echo "$as_me:${as_lineno-$LINENO}: checking for kinfo_getvmmap in -lutil" >&5 @@ -22491,7 +24164,7 @@ $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lcurl $LIBS" +LIBS="-lcurl $CURL_LDFLAGS $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -22569,6 +24242,9 @@ + + + if test "$have_curl" = "yes"; then ENABLE_CLAMSUBMIT_TRUE= ENABLE_CLAMSUBMIT_FALSE='#' @@ -22578,7 +24254,7 @@ fi -ac_config_files="$ac_config_files clamscan/Makefile database/Makefile docs/Makefile clamd/Makefile clamdscan/Makefile clamsubmit/Makefile clamav-milter/Makefile freshclam/Makefile sigtool/Makefile clamconf/Makefile etc/Makefile test/Makefile unit_tests/Makefile clamdtop/Makefile clambc/Makefile Makefile clamav-config libclamav.pc platform.h docs/man/clamav-milter.8 docs/man/clamav-milter.conf.5 docs/man/clambc.1 docs/man/clamconf.1 docs/man/clamd.8 docs/man/clamd.conf.5 docs/man/clamdscan.1 docs/man/clamscan.1 docs/man/freshclam.1 docs/man/freshclam.conf.5 docs/man/sigtool.1 docs/man/clamdtop.1 docs/man/clamsubmit.1" +ac_config_files="$ac_config_files clamscan/Makefile database/Makefile docs/Makefile clamd/Makefile clamd/clamav-daemon.service clamd/clamav-daemon.socket clamdscan/Makefile clamsubmit/Makefile clamav-milter/Makefile freshclam/clamav-freshclam.service freshclam/Makefile sigtool/Makefile clamconf/Makefile etc/Makefile test/Makefile unit_tests/Makefile clamdtop/Makefile clambc/Makefile libfreshclam/Makefile Makefile clamav-config libclamav.pc platform.h docs/man/clamav-milter.8 docs/man/clamav-milter.conf.5 docs/man/clambc.1 docs/man/clamconf.1 docs/man/clamd.8 docs/man/clamd.conf.5 docs/man/clamdscan.1 docs/man/clamscan.1 docs/man/freshclam.1 docs/man/freshclam.conf.5 docs/man/sigtool.1 docs/man/clamdtop.1 docs/man/clamsubmit.1" cat >confcache <<\_ACEOF @@ -22772,6 +24448,10 @@ as_fn_error $? "conditional \"ENABLE_UNRAR\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${INSTALL_SYSTEMD_UNITS_TRUE}" && test -z "${INSTALL_SYSTEMD_UNITS_FALSE}"; then + as_fn_error $? "conditional \"INSTALL_SYSTEMD_UNITS\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${BUILD_CLAMD_TRUE}" && test -z "${BUILD_CLAMD_FALSE}"; then as_fn_error $? "conditional \"BUILD_CLAMD\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -22784,6 +24464,10 @@ as_fn_error $? "conditional \"HAVE_CURSES\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${ENABLE_LIBFRESHCLAM_TRUE}" && test -z "${ENABLE_LIBFRESHCLAM_FALSE}"; then + as_fn_error $? "conditional \"ENABLE_LIBFRESHCLAM\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${ENABLE_CLAMSUBMIT_TRUE}" && test -z "${ENABLE_CLAMSUBMIT_FALSE}"; then as_fn_error $? "conditional \"ENABLE_CLAMSUBMIT\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -23185,7 +24869,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by ClamAV $as_me 0.98.6, which was +This file was extended by ClamAV $as_me 0.99.2, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -23252,7 +24936,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -ClamAV config.status 0.98.6 +ClamAV config.status 0.99.2 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" @@ -23387,6 +25071,7 @@ enable_shared='`$ECHO "$enable_shared" | $SED "$delay_single_quote_subst"`' pic_mode='`$ECHO "$pic_mode" | $SED "$delay_single_quote_subst"`' enable_fast_install='`$ECHO "$enable_fast_install" | $SED "$delay_single_quote_subst"`' +shared_archive_member_spec='`$ECHO "$shared_archive_member_spec" | $SED "$delay_single_quote_subst"`' SHELL='`$ECHO "$SHELL" | $SED "$delay_single_quote_subst"`' ECHO='`$ECHO "$ECHO" | $SED "$delay_single_quote_subst"`' PATH_SEPARATOR='`$ECHO "$PATH_SEPARATOR" | $SED "$delay_single_quote_subst"`' @@ -23436,10 +25121,13 @@ GCC='`$ECHO "$GCC" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`' +lt_cv_sys_global_symbol_to_import='`$ECHO "$lt_cv_sys_global_symbol_to_import" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`' +lt_cv_nm_interface='`$ECHO "$lt_cv_nm_interface" | $SED "$delay_single_quote_subst"`' nm_file_list_spec='`$ECHO "$nm_file_list_spec" | $SED "$delay_single_quote_subst"`' lt_sysroot='`$ECHO "$lt_sysroot" | $SED "$delay_single_quote_subst"`' +lt_cv_truncate_bin='`$ECHO "$lt_cv_truncate_bin" | $SED "$delay_single_quote_subst"`' objdir='`$ECHO "$objdir" | $SED "$delay_single_quote_subst"`' MAGIC_CMD='`$ECHO "$MAGIC_CMD" | $SED "$delay_single_quote_subst"`' lt_prog_compiler_no_builtin_flag='`$ECHO "$lt_prog_compiler_no_builtin_flag" | $SED "$delay_single_quote_subst"`' @@ -23504,7 +25192,8 @@ finish_eval='`$ECHO "$finish_eval" | $SED "$delay_single_quote_subst"`' hardcode_into_libs='`$ECHO "$hardcode_into_libs" | $SED "$delay_single_quote_subst"`' sys_lib_search_path_spec='`$ECHO "$sys_lib_search_path_spec" | $SED "$delay_single_quote_subst"`' -sys_lib_dlsearch_path_spec='`$ECHO "$sys_lib_dlsearch_path_spec" | $SED "$delay_single_quote_subst"`' +configure_time_dlsearch_path='`$ECHO "$configure_time_dlsearch_path" | $SED "$delay_single_quote_subst"`' +configure_time_lt_sys_library_path='`$ECHO "$configure_time_lt_sys_library_path" | $SED "$delay_single_quote_subst"`' hardcode_action='`$ECHO "$hardcode_action" | $SED "$delay_single_quote_subst"`' enable_dlopen='`$ECHO "$enable_dlopen" | $SED "$delay_single_quote_subst"`' enable_dlopen_self='`$ECHO "$enable_dlopen_self" | $SED "$delay_single_quote_subst"`' @@ -23555,9 +25244,12 @@ compiler \ lt_cv_sys_global_symbol_pipe \ lt_cv_sys_global_symbol_to_cdecl \ +lt_cv_sys_global_symbol_to_import \ lt_cv_sys_global_symbol_to_c_name_address \ lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \ +lt_cv_nm_interface \ nm_file_list_spec \ +lt_cv_truncate_bin \ lt_prog_compiler_no_builtin_flag \ lt_prog_compiler_pic \ lt_prog_compiler_wl \ @@ -23592,7 +25284,7 @@ striplib; do case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in *[\\\\\\\`\\"\\\$]*) - eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" + eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes ;; *) eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" @@ -23619,10 +25311,11 @@ postuninstall_cmds \ finish_cmds \ sys_lib_search_path_spec \ -sys_lib_dlsearch_path_spec; do +configure_time_dlsearch_path \ +configure_time_lt_sys_library_path; do case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in *[\\\\\\\`\\"\\\$]*) - eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" + eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes ;; *) eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" @@ -23631,19 +25324,16 @@ done ac_aux_dir='$ac_aux_dir' -xsi_shell='$xsi_shell' -lt_shell_append='$lt_shell_append' -# See if we are running on zsh, and set the options which allow our +# See if we are running on zsh, and set the options that allow our # commands through without removal of \ escapes INIT. -if test -n "\${ZSH_VERSION+set}" ; then +if test -n "\${ZSH_VERSION+set}"; then setopt NO_GLOB_SUBST fi PACKAGE='$PACKAGE' VERSION='$VERSION' - TIMESTAMP='$TIMESTAMP' RM='$RM' ofile='$ofile' @@ -23666,9 +25356,12 @@ "database/Makefile") CONFIG_FILES="$CONFIG_FILES database/Makefile" ;; "docs/Makefile") CONFIG_FILES="$CONFIG_FILES docs/Makefile" ;; "clamd/Makefile") CONFIG_FILES="$CONFIG_FILES clamd/Makefile" ;; + "clamd/clamav-daemon.service") CONFIG_FILES="$CONFIG_FILES clamd/clamav-daemon.service" ;; + "clamd/clamav-daemon.socket") CONFIG_FILES="$CONFIG_FILES clamd/clamav-daemon.socket" ;; "clamdscan/Makefile") CONFIG_FILES="$CONFIG_FILES clamdscan/Makefile" ;; "clamsubmit/Makefile") CONFIG_FILES="$CONFIG_FILES clamsubmit/Makefile" ;; "clamav-milter/Makefile") CONFIG_FILES="$CONFIG_FILES clamav-milter/Makefile" ;; + "freshclam/clamav-freshclam.service") CONFIG_FILES="$CONFIG_FILES freshclam/clamav-freshclam.service" ;; "freshclam/Makefile") CONFIG_FILES="$CONFIG_FILES freshclam/Makefile" ;; "sigtool/Makefile") CONFIG_FILES="$CONFIG_FILES sigtool/Makefile" ;; "clamconf/Makefile") CONFIG_FILES="$CONFIG_FILES clamconf/Makefile" ;; @@ -23677,6 +25370,7 @@ "unit_tests/Makefile") CONFIG_FILES="$CONFIG_FILES unit_tests/Makefile" ;; "clamdtop/Makefile") CONFIG_FILES="$CONFIG_FILES clamdtop/Makefile" ;; "clambc/Makefile") CONFIG_FILES="$CONFIG_FILES clambc/Makefile" ;; + "libfreshclam/Makefile") CONFIG_FILES="$CONFIG_FILES libfreshclam/Makefile" ;; "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; "clamav-config") CONFIG_FILES="$CONFIG_FILES clamav-config" ;; "libclamav.pc") CONFIG_FILES="$CONFIG_FILES libclamav.pc" ;; @@ -24384,55 +26078,53 @@ ;; "libtool":C) - # See if we are running on zsh, and set the options which allow our + # See if we are running on zsh, and set the options that allow our # commands through without removal of \ escapes. - if test -n "${ZSH_VERSION+set}" ; then + if test -n "${ZSH_VERSION+set}"; then setopt NO_GLOB_SUBST fi - cfgfile="${ofile}T" + cfgfile=${ofile}T trap "$RM \"$cfgfile\"; exit 1" 1 2 15 $RM "$cfgfile" cat <<_LT_EOF >> "$cfgfile" #! $SHELL - -# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. -# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION +# Generated automatically by $as_me ($PACKAGE) $VERSION # Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: # NOTE: Changes made to this file will be lost: look at ltmain.sh. + +# Provide generalized library-building support services. +# Written by Gordon Matzigkeit, 1996 + +# Copyright (C) 2014 Free Software Foundation, Inc. +# This is free software; see the source for copying conditions. There is NO +# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +# GNU Libtool is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of of the License, or +# (at your option) any later version. # -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, -# 2006, 2007, 2008, 2009, 2010, 2011 Free Software -# Foundation, Inc. -# Written by Gordon Matzigkeit, 1996 -# -# This file is part of GNU Libtool. -# -# GNU Libtool is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License as -# published by the Free Software Foundation; either version 2 of -# the License, or (at your option) any later version. -# -# As a special exception to the GNU General Public License, -# if you distribute this file as part of a program or library that -# is built using GNU Libtool, you may include this file under the -# same distribution terms that you use for the rest of that program. +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program or library that is built +# using GNU Libtool, you may include this file under the same +# distribution terms that you use for the rest of that program. # -# GNU Libtool is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of +# GNU Libtool is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License -# along with GNU Libtool; see the file COPYING. If not, a copy -# can be downloaded from http://www.gnu.org/licenses/gpl.html, or -# obtained by writing to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# along with this program. If not, see . # The names of the tagged configurations supported by this script. -available_tags="" +available_tags='' + +# Configured defaults for sys_lib_dlsearch_path munging. +: \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"} # ### BEGIN LIBTOOL CONFIG @@ -24452,6 +26144,9 @@ # Whether or not to optimize for fast installation. fast_install=$enable_fast_install +# Shared archive member basename,for filename based shared library versioning on AIX. +shared_archive_member_spec=$shared_archive_member_spec + # Shell to use when invoking shell scripts. SHELL=$lt_SHELL @@ -24569,18 +26264,27 @@ # Transform the output of nm in a proper C declaration. global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl +# Transform the output of nm into a list of symbols to manually relocate. +global_symbol_to_import=$lt_lt_cv_sys_global_symbol_to_import + # Transform the output of nm in a C name address pair. global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address # Transform the output of nm in a C name address pair when lib prefix is needed. global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix +# The name lister interface. +nm_interface=$lt_lt_cv_nm_interface + # Specify filename containing input files for \$NM. nm_file_list_spec=$lt_nm_file_list_spec -# The root where to search for dependent libraries,and in which our libraries should be installed. +# The root where to search for dependent libraries,and where our libraries should be installed. lt_sysroot=$lt_sysroot +# Command to truncate a binary pipe. +lt_truncate_bin=$lt_lt_cv_truncate_bin + # The name of the directory that contains temporary libtool files. objdir=$objdir @@ -24671,8 +26375,11 @@ # Compile-time system search path for libraries. sys_lib_search_path_spec=$lt_sys_lib_search_path_spec -# Run-time system search path for libraries. -sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec +# Detected run-time system search path for libraries. +sys_lib_dlsearch_path_spec=$lt_configure_time_dlsearch_path + +# Explicit LT_SYS_LIBRARY_PATH set during ./configure time. +configure_time_lt_sys_library_path=$lt_configure_time_lt_sys_library_path # Whether dlopen is supported. dlopen_support=$enable_dlopen @@ -24765,13 +26472,13 @@ # Whether we need a single "-rpath" flag with a separated argument. hardcode_libdir_separator=$lt_hardcode_libdir_separator -# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes +# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes # DIR into the resulting binary. hardcode_direct=$hardcode_direct -# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes +# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes # DIR into the resulting binary and the resulting library dependency is -# "absolute",i.e impossible to change by setting \${shlibpath_var} if the +# "absolute",i.e impossible to change by setting \$shlibpath_var if the # library is relocated. hardcode_direct_absolute=$hardcode_direct_absolute @@ -24823,13 +26530,72 @@ _LT_EOF + cat <<'_LT_EOF' >> "$cfgfile" + +# ### BEGIN FUNCTIONS SHARED WITH CONFIGURE + +# func_munge_path_list VARIABLE PATH +# ----------------------------------- +# VARIABLE is name of variable containing _space_ separated list of +# directories to be munged by the contents of PATH, which is string +# having a format: +# "DIR[:DIR]:" +# string "DIR[ DIR]" will be prepended to VARIABLE +# ":DIR[:DIR]" +# string "DIR[ DIR]" will be appended to VARIABLE +# "DIRP[:DIRP]::[DIRA:]DIRA" +# string "DIRP[ DIRP]" will be prepended to VARIABLE and string +# "DIRA[ DIRA]" will be appended to VARIABLE +# "DIR[:DIR]" +# VARIABLE will be replaced by "DIR[ DIR]" +func_munge_path_list () +{ + case x$2 in + x) + ;; + *:) + eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\" + ;; + x:*) + eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\" + ;; + *::*) + eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\" + eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\" + ;; + *) + eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\" + ;; + esac +} + + +# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. +func_cc_basename () +{ + for cc_temp in $*""; do + case $cc_temp in + compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; + distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; + \-*) ;; + *) break;; + esac + done + func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` +} + + +# ### END FUNCTIONS SHARED WITH CONFIGURE + +_LT_EOF + case $host_os in aix3*) cat <<\_LT_EOF >> "$cfgfile" # AIX sometimes has problems with the GCC collect2 program. For some # reason, if we set the COLLECT_NAMES environment variable, the problems # vanish in a puff of smoke. -if test "X${COLLECT_NAMES+set}" != Xset; then +if test set != "${COLLECT_NAMES+set}"; then COLLECT_NAMES= export COLLECT_NAMES fi @@ -24838,7 +26604,7 @@ esac -ltmain="$ac_aux_dir/ltmain.sh" +ltmain=$ac_aux_dir/ltmain.sh # We use sed instead of cat because bash on DJGPP gets confused if @@ -24848,165 +26614,6 @@ sed '$q' "$ltmain" >> "$cfgfile" \ || (rm -f "$cfgfile"; exit 1) - if test x"$xsi_shell" = xyes; then - sed -e '/^func_dirname ()$/,/^} # func_dirname /c\ -func_dirname ()\ -{\ -\ case ${1} in\ -\ */*) func_dirname_result="${1%/*}${2}" ;;\ -\ * ) func_dirname_result="${3}" ;;\ -\ esac\ -} # Extended-shell func_dirname implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_basename ()$/,/^} # func_basename /c\ -func_basename ()\ -{\ -\ func_basename_result="${1##*/}"\ -} # Extended-shell func_basename implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_dirname_and_basename ()$/,/^} # func_dirname_and_basename /c\ -func_dirname_and_basename ()\ -{\ -\ case ${1} in\ -\ */*) func_dirname_result="${1%/*}${2}" ;;\ -\ * ) func_dirname_result="${3}" ;;\ -\ esac\ -\ func_basename_result="${1##*/}"\ -} # Extended-shell func_dirname_and_basename implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_stripname ()$/,/^} # func_stripname /c\ -func_stripname ()\ -{\ -\ # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are\ -\ # positional parameters, so assign one to ordinary parameter first.\ -\ func_stripname_result=${3}\ -\ func_stripname_result=${func_stripname_result#"${1}"}\ -\ func_stripname_result=${func_stripname_result%"${2}"}\ -} # Extended-shell func_stripname implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_split_long_opt ()$/,/^} # func_split_long_opt /c\ -func_split_long_opt ()\ -{\ -\ func_split_long_opt_name=${1%%=*}\ -\ func_split_long_opt_arg=${1#*=}\ -} # Extended-shell func_split_long_opt implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_split_short_opt ()$/,/^} # func_split_short_opt /c\ -func_split_short_opt ()\ -{\ -\ func_split_short_opt_arg=${1#??}\ -\ func_split_short_opt_name=${1%"$func_split_short_opt_arg"}\ -} # Extended-shell func_split_short_opt implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_lo2o ()$/,/^} # func_lo2o /c\ -func_lo2o ()\ -{\ -\ case ${1} in\ -\ *.lo) func_lo2o_result=${1%.lo}.${objext} ;;\ -\ *) func_lo2o_result=${1} ;;\ -\ esac\ -} # Extended-shell func_lo2o implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_xform ()$/,/^} # func_xform /c\ -func_xform ()\ -{\ - func_xform_result=${1%.*}.lo\ -} # Extended-shell func_xform implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_arith ()$/,/^} # func_arith /c\ -func_arith ()\ -{\ - func_arith_result=$(( $* ))\ -} # Extended-shell func_arith implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_len ()$/,/^} # func_len /c\ -func_len ()\ -{\ - func_len_result=${#1}\ -} # Extended-shell func_len implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - -fi - -if test x"$lt_shell_append" = xyes; then - sed -e '/^func_append ()$/,/^} # func_append /c\ -func_append ()\ -{\ - eval "${1}+=\\${2}"\ -} # Extended-shell func_append implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_append_quoted ()$/,/^} # func_append_quoted /c\ -func_append_quoted ()\ -{\ -\ func_quote_for_eval "${2}"\ -\ eval "${1}+=\\\\ \\$func_quote_for_eval_result"\ -} # Extended-shell func_append_quoted implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - # Save a `func_append' function call where possible by direct use of '+=' - sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") - test 0 -eq $? || _lt_function_replace_fail=: -else - # Save a `func_append' function call even when '+=' is not available - sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") - test 0 -eq $? || _lt_function_replace_fail=: -fi - -if test x"$_lt_function_replace_fail" = x":"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unable to substitute extended shell functions in $ofile" >&5 -$as_echo "$as_me: WARNING: Unable to substitute extended shell functions in $ofile" >&2;} -fi - - mv -f "$cfgfile" "$ofile" || (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") chmod +x "$ofile" @@ -25202,6 +26809,11 @@ if test "$enable_llvm" = "yes" && test "$subdirfailed" != "no"; then as_fn_error $? "Failed to configure LLVM, and LLVM was explicitly requested" "$LINENO" 5 fi +if test "$enable_llvm" = "auto" && test "$subdirfailed" != "no"; then + system_llvm="MIA" + llvm_linking="" +fi + if test "$subdirfailed" != "yes" && test "$enable_llvm" != "no"; then ENABLE_LLVM_TRUE= ENABLE_LLVM_FALSE='#' @@ -25210,7 +26822,16 @@ ENABLE_LLVM_FALSE= fi + if test "$enable_yara" != "no"; then + ENABLE_YARA_TRUE= + ENABLE_YARA_FALSE='#' +else + ENABLE_YARA_TRUE='#' + ENABLE_YARA_FALSE= +fi + no_recursion="yes"; + ac_config_files="$ac_config_files libclamav/Makefile" cat >confcache <<\_ACEOF @@ -25404,6 +27025,10 @@ as_fn_error $? "conditional \"ENABLE_UNRAR\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${INSTALL_SYSTEMD_UNITS_TRUE}" && test -z "${INSTALL_SYSTEMD_UNITS_FALSE}"; then + as_fn_error $? "conditional \"INSTALL_SYSTEMD_UNITS\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${BUILD_CLAMD_TRUE}" && test -z "${BUILD_CLAMD_FALSE}"; then as_fn_error $? "conditional \"BUILD_CLAMD\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -25416,6 +27041,10 @@ as_fn_error $? "conditional \"HAVE_CURSES\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${ENABLE_LIBFRESHCLAM_TRUE}" && test -z "${ENABLE_LIBFRESHCLAM_FALSE}"; then + as_fn_error $? "conditional \"ENABLE_LIBFRESHCLAM\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${ENABLE_CLAMSUBMIT_TRUE}" && test -z "${ENABLE_CLAMSUBMIT_FALSE}"; then as_fn_error $? "conditional \"ENABLE_CLAMSUBMIT\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -25428,6 +27057,10 @@ as_fn_error $? "conditional \"ENABLE_LLVM\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${ENABLE_YARA_TRUE}" && test -z "${ENABLE_YARA_FALSE}"; then + as_fn_error $? "conditional \"ENABLE_YARA\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi : "${CONFIG_STATUS=./config.status}" ac_write_fail=0 @@ -25825,7 +27458,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by ClamAV $as_me 0.98.6, which was +This file was extended by ClamAV $as_me 0.99.2, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -25892,7 +27525,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -ClamAV config.status 0.98.6 +ClamAV config.status 0.99.2 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" @@ -26027,6 +27660,7 @@ enable_shared='`$ECHO "$enable_shared" | $SED "$delay_single_quote_subst"`' pic_mode='`$ECHO "$pic_mode" | $SED "$delay_single_quote_subst"`' enable_fast_install='`$ECHO "$enable_fast_install" | $SED "$delay_single_quote_subst"`' +shared_archive_member_spec='`$ECHO "$shared_archive_member_spec" | $SED "$delay_single_quote_subst"`' SHELL='`$ECHO "$SHELL" | $SED "$delay_single_quote_subst"`' ECHO='`$ECHO "$ECHO" | $SED "$delay_single_quote_subst"`' PATH_SEPARATOR='`$ECHO "$PATH_SEPARATOR" | $SED "$delay_single_quote_subst"`' @@ -26076,10 +27710,13 @@ GCC='`$ECHO "$GCC" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`' +lt_cv_sys_global_symbol_to_import='`$ECHO "$lt_cv_sys_global_symbol_to_import" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`' lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`' +lt_cv_nm_interface='`$ECHO "$lt_cv_nm_interface" | $SED "$delay_single_quote_subst"`' nm_file_list_spec='`$ECHO "$nm_file_list_spec" | $SED "$delay_single_quote_subst"`' lt_sysroot='`$ECHO "$lt_sysroot" | $SED "$delay_single_quote_subst"`' +lt_cv_truncate_bin='`$ECHO "$lt_cv_truncate_bin" | $SED "$delay_single_quote_subst"`' objdir='`$ECHO "$objdir" | $SED "$delay_single_quote_subst"`' MAGIC_CMD='`$ECHO "$MAGIC_CMD" | $SED "$delay_single_quote_subst"`' lt_prog_compiler_no_builtin_flag='`$ECHO "$lt_prog_compiler_no_builtin_flag" | $SED "$delay_single_quote_subst"`' @@ -26144,7 +27781,8 @@ finish_eval='`$ECHO "$finish_eval" | $SED "$delay_single_quote_subst"`' hardcode_into_libs='`$ECHO "$hardcode_into_libs" | $SED "$delay_single_quote_subst"`' sys_lib_search_path_spec='`$ECHO "$sys_lib_search_path_spec" | $SED "$delay_single_quote_subst"`' -sys_lib_dlsearch_path_spec='`$ECHO "$sys_lib_dlsearch_path_spec" | $SED "$delay_single_quote_subst"`' +configure_time_dlsearch_path='`$ECHO "$configure_time_dlsearch_path" | $SED "$delay_single_quote_subst"`' +configure_time_lt_sys_library_path='`$ECHO "$configure_time_lt_sys_library_path" | $SED "$delay_single_quote_subst"`' hardcode_action='`$ECHO "$hardcode_action" | $SED "$delay_single_quote_subst"`' enable_dlopen='`$ECHO "$enable_dlopen" | $SED "$delay_single_quote_subst"`' enable_dlopen_self='`$ECHO "$enable_dlopen_self" | $SED "$delay_single_quote_subst"`' @@ -26195,9 +27833,12 @@ compiler \ lt_cv_sys_global_symbol_pipe \ lt_cv_sys_global_symbol_to_cdecl \ +lt_cv_sys_global_symbol_to_import \ lt_cv_sys_global_symbol_to_c_name_address \ lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \ +lt_cv_nm_interface \ nm_file_list_spec \ +lt_cv_truncate_bin \ lt_prog_compiler_no_builtin_flag \ lt_prog_compiler_pic \ lt_prog_compiler_wl \ @@ -26232,7 +27873,7 @@ striplib; do case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in *[\\\\\\\`\\"\\\$]*) - eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" + eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes ;; *) eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" @@ -26259,10 +27900,11 @@ postuninstall_cmds \ finish_cmds \ sys_lib_search_path_spec \ -sys_lib_dlsearch_path_spec; do +configure_time_dlsearch_path \ +configure_time_lt_sys_library_path; do case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in *[\\\\\\\`\\"\\\$]*) - eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" + eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes ;; *) eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" @@ -26271,19 +27913,16 @@ done ac_aux_dir='$ac_aux_dir' -xsi_shell='$xsi_shell' -lt_shell_append='$lt_shell_append' -# See if we are running on zsh, and set the options which allow our +# See if we are running on zsh, and set the options that allow our # commands through without removal of \ escapes INIT. -if test -n "\${ZSH_VERSION+set}" ; then +if test -n "\${ZSH_VERSION+set}"; then setopt NO_GLOB_SUBST fi PACKAGE='$PACKAGE' VERSION='$VERSION' - TIMESTAMP='$TIMESTAMP' RM='$RM' ofile='$ofile' @@ -26307,9 +27946,12 @@ "database/Makefile") CONFIG_FILES="$CONFIG_FILES database/Makefile" ;; "docs/Makefile") CONFIG_FILES="$CONFIG_FILES docs/Makefile" ;; "clamd/Makefile") CONFIG_FILES="$CONFIG_FILES clamd/Makefile" ;; + "clamd/clamav-daemon.service") CONFIG_FILES="$CONFIG_FILES clamd/clamav-daemon.service" ;; + "clamd/clamav-daemon.socket") CONFIG_FILES="$CONFIG_FILES clamd/clamav-daemon.socket" ;; "clamdscan/Makefile") CONFIG_FILES="$CONFIG_FILES clamdscan/Makefile" ;; "clamsubmit/Makefile") CONFIG_FILES="$CONFIG_FILES clamsubmit/Makefile" ;; "clamav-milter/Makefile") CONFIG_FILES="$CONFIG_FILES clamav-milter/Makefile" ;; + "freshclam/clamav-freshclam.service") CONFIG_FILES="$CONFIG_FILES freshclam/clamav-freshclam.service" ;; "freshclam/Makefile") CONFIG_FILES="$CONFIG_FILES freshclam/Makefile" ;; "sigtool/Makefile") CONFIG_FILES="$CONFIG_FILES sigtool/Makefile" ;; "clamconf/Makefile") CONFIG_FILES="$CONFIG_FILES clamconf/Makefile" ;; @@ -26318,6 +27960,7 @@ "unit_tests/Makefile") CONFIG_FILES="$CONFIG_FILES unit_tests/Makefile" ;; "clamdtop/Makefile") CONFIG_FILES="$CONFIG_FILES clamdtop/Makefile" ;; "clambc/Makefile") CONFIG_FILES="$CONFIG_FILES clambc/Makefile" ;; + "libfreshclam/Makefile") CONFIG_FILES="$CONFIG_FILES libfreshclam/Makefile" ;; "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; "clamav-config") CONFIG_FILES="$CONFIG_FILES clamav-config" ;; "libclamav.pc") CONFIG_FILES="$CONFIG_FILES libclamav.pc" ;; @@ -27026,55 +28669,53 @@ ;; "libtool":C) - # See if we are running on zsh, and set the options which allow our + # See if we are running on zsh, and set the options that allow our # commands through without removal of \ escapes. - if test -n "${ZSH_VERSION+set}" ; then + if test -n "${ZSH_VERSION+set}"; then setopt NO_GLOB_SUBST fi - cfgfile="${ofile}T" + cfgfile=${ofile}T trap "$RM \"$cfgfile\"; exit 1" 1 2 15 $RM "$cfgfile" cat <<_LT_EOF >> "$cfgfile" #! $SHELL - -# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. -# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION +# Generated automatically by $as_me ($PACKAGE) $VERSION # Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: # NOTE: Changes made to this file will be lost: look at ltmain.sh. + +# Provide generalized library-building support services. +# Written by Gordon Matzigkeit, 1996 + +# Copyright (C) 2014 Free Software Foundation, Inc. +# This is free software; see the source for copying conditions. There is NO +# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +# GNU Libtool is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of of the License, or +# (at your option) any later version. # -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, -# 2006, 2007, 2008, 2009, 2010, 2011 Free Software -# Foundation, Inc. -# Written by Gordon Matzigkeit, 1996 -# -# This file is part of GNU Libtool. -# -# GNU Libtool is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License as -# published by the Free Software Foundation; either version 2 of -# the License, or (at your option) any later version. -# -# As a special exception to the GNU General Public License, -# if you distribute this file as part of a program or library that -# is built using GNU Libtool, you may include this file under the -# same distribution terms that you use for the rest of that program. +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program or library that is built +# using GNU Libtool, you may include this file under the same +# distribution terms that you use for the rest of that program. # -# GNU Libtool is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of +# GNU Libtool is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License -# along with GNU Libtool; see the file COPYING. If not, a copy -# can be downloaded from http://www.gnu.org/licenses/gpl.html, or -# obtained by writing to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +# along with this program. If not, see . # The names of the tagged configurations supported by this script. -available_tags="" +available_tags='' + +# Configured defaults for sys_lib_dlsearch_path munging. +: \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"} # ### BEGIN LIBTOOL CONFIG @@ -27094,6 +28735,9 @@ # Whether or not to optimize for fast installation. fast_install=$enable_fast_install +# Shared archive member basename,for filename based shared library versioning on AIX. +shared_archive_member_spec=$shared_archive_member_spec + # Shell to use when invoking shell scripts. SHELL=$lt_SHELL @@ -27211,18 +28855,27 @@ # Transform the output of nm in a proper C declaration. global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl +# Transform the output of nm into a list of symbols to manually relocate. +global_symbol_to_import=$lt_lt_cv_sys_global_symbol_to_import + # Transform the output of nm in a C name address pair. global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address # Transform the output of nm in a C name address pair when lib prefix is needed. global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix +# The name lister interface. +nm_interface=$lt_lt_cv_nm_interface + # Specify filename containing input files for \$NM. nm_file_list_spec=$lt_nm_file_list_spec -# The root where to search for dependent libraries,and in which our libraries should be installed. +# The root where to search for dependent libraries,and where our libraries should be installed. lt_sysroot=$lt_sysroot +# Command to truncate a binary pipe. +lt_truncate_bin=$lt_lt_cv_truncate_bin + # The name of the directory that contains temporary libtool files. objdir=$objdir @@ -27313,8 +28966,11 @@ # Compile-time system search path for libraries. sys_lib_search_path_spec=$lt_sys_lib_search_path_spec -# Run-time system search path for libraries. -sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec +# Detected run-time system search path for libraries. +sys_lib_dlsearch_path_spec=$lt_configure_time_dlsearch_path + +# Explicit LT_SYS_LIBRARY_PATH set during ./configure time. +configure_time_lt_sys_library_path=$lt_configure_time_lt_sys_library_path # Whether dlopen is supported. dlopen_support=$enable_dlopen @@ -27407,13 +29063,13 @@ # Whether we need a single "-rpath" flag with a separated argument. hardcode_libdir_separator=$lt_hardcode_libdir_separator -# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes +# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes # DIR into the resulting binary. hardcode_direct=$hardcode_direct -# Set to "yes" if using DIR/libNAME\${shared_ext} during linking hardcodes +# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes # DIR into the resulting binary and the resulting library dependency is -# "absolute",i.e impossible to change by setting \${shlibpath_var} if the +# "absolute",i.e impossible to change by setting \$shlibpath_var if the # library is relocated. hardcode_direct_absolute=$hardcode_direct_absolute @@ -27465,13 +29121,72 @@ _LT_EOF + cat <<'_LT_EOF' >> "$cfgfile" + +# ### BEGIN FUNCTIONS SHARED WITH CONFIGURE + +# func_munge_path_list VARIABLE PATH +# ----------------------------------- +# VARIABLE is name of variable containing _space_ separated list of +# directories to be munged by the contents of PATH, which is string +# having a format: +# "DIR[:DIR]:" +# string "DIR[ DIR]" will be prepended to VARIABLE +# ":DIR[:DIR]" +# string "DIR[ DIR]" will be appended to VARIABLE +# "DIRP[:DIRP]::[DIRA:]DIRA" +# string "DIRP[ DIRP]" will be prepended to VARIABLE and string +# "DIRA[ DIRA]" will be appended to VARIABLE +# "DIR[:DIR]" +# VARIABLE will be replaced by "DIR[ DIR]" +func_munge_path_list () +{ + case x$2 in + x) + ;; + *:) + eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\" + ;; + x:*) + eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\" + ;; + *::*) + eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\" + eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\" + ;; + *) + eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\" + ;; + esac +} + + +# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. +func_cc_basename () +{ + for cc_temp in $*""; do + case $cc_temp in + compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; + distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; + \-*) ;; + *) break;; + esac + done + func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` +} + + +# ### END FUNCTIONS SHARED WITH CONFIGURE + +_LT_EOF + case $host_os in aix3*) cat <<\_LT_EOF >> "$cfgfile" # AIX sometimes has problems with the GCC collect2 program. For some # reason, if we set the COLLECT_NAMES environment variable, the problems # vanish in a puff of smoke. -if test "X${COLLECT_NAMES+set}" != Xset; then +if test set != "${COLLECT_NAMES+set}"; then COLLECT_NAMES= export COLLECT_NAMES fi @@ -27480,7 +29195,7 @@ esac -ltmain="$ac_aux_dir/ltmain.sh" +ltmain=$ac_aux_dir/ltmain.sh # We use sed instead of cat because bash on DJGPP gets confused if @@ -27490,165 +29205,6 @@ sed '$q' "$ltmain" >> "$cfgfile" \ || (rm -f "$cfgfile"; exit 1) - if test x"$xsi_shell" = xyes; then - sed -e '/^func_dirname ()$/,/^} # func_dirname /c\ -func_dirname ()\ -{\ -\ case ${1} in\ -\ */*) func_dirname_result="${1%/*}${2}" ;;\ -\ * ) func_dirname_result="${3}" ;;\ -\ esac\ -} # Extended-shell func_dirname implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_basename ()$/,/^} # func_basename /c\ -func_basename ()\ -{\ -\ func_basename_result="${1##*/}"\ -} # Extended-shell func_basename implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_dirname_and_basename ()$/,/^} # func_dirname_and_basename /c\ -func_dirname_and_basename ()\ -{\ -\ case ${1} in\ -\ */*) func_dirname_result="${1%/*}${2}" ;;\ -\ * ) func_dirname_result="${3}" ;;\ -\ esac\ -\ func_basename_result="${1##*/}"\ -} # Extended-shell func_dirname_and_basename implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_stripname ()$/,/^} # func_stripname /c\ -func_stripname ()\ -{\ -\ # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are\ -\ # positional parameters, so assign one to ordinary parameter first.\ -\ func_stripname_result=${3}\ -\ func_stripname_result=${func_stripname_result#"${1}"}\ -\ func_stripname_result=${func_stripname_result%"${2}"}\ -} # Extended-shell func_stripname implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_split_long_opt ()$/,/^} # func_split_long_opt /c\ -func_split_long_opt ()\ -{\ -\ func_split_long_opt_name=${1%%=*}\ -\ func_split_long_opt_arg=${1#*=}\ -} # Extended-shell func_split_long_opt implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_split_short_opt ()$/,/^} # func_split_short_opt /c\ -func_split_short_opt ()\ -{\ -\ func_split_short_opt_arg=${1#??}\ -\ func_split_short_opt_name=${1%"$func_split_short_opt_arg"}\ -} # Extended-shell func_split_short_opt implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_lo2o ()$/,/^} # func_lo2o /c\ -func_lo2o ()\ -{\ -\ case ${1} in\ -\ *.lo) func_lo2o_result=${1%.lo}.${objext} ;;\ -\ *) func_lo2o_result=${1} ;;\ -\ esac\ -} # Extended-shell func_lo2o implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_xform ()$/,/^} # func_xform /c\ -func_xform ()\ -{\ - func_xform_result=${1%.*}.lo\ -} # Extended-shell func_xform implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_arith ()$/,/^} # func_arith /c\ -func_arith ()\ -{\ - func_arith_result=$(( $* ))\ -} # Extended-shell func_arith implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_len ()$/,/^} # func_len /c\ -func_len ()\ -{\ - func_len_result=${#1}\ -} # Extended-shell func_len implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - -fi - -if test x"$lt_shell_append" = xyes; then - sed -e '/^func_append ()$/,/^} # func_append /c\ -func_append ()\ -{\ - eval "${1}+=\\${2}"\ -} # Extended-shell func_append implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - sed -e '/^func_append_quoted ()$/,/^} # func_append_quoted /c\ -func_append_quoted ()\ -{\ -\ func_quote_for_eval "${2}"\ -\ eval "${1}+=\\\\ \\$func_quote_for_eval_result"\ -} # Extended-shell func_append_quoted implementation' "$cfgfile" > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") -test 0 -eq $? || _lt_function_replace_fail=: - - - # Save a `func_append' function call where possible by direct use of '+=' - sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") - test 0 -eq $? || _lt_function_replace_fail=: -else - # Save a `func_append' function call even when '+=' is not available - sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \ - && mv -f "$cfgfile.tmp" "$cfgfile" \ - || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") - test 0 -eq $? || _lt_function_replace_fail=: -fi - -if test x"$_lt_function_replace_fail" = x":"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unable to substitute extended shell functions in $ofile" >&5 -$as_echo "$as_me: WARNING: Unable to substitute extended shell functions in $ofile" >&2;} -fi - - mv -f "$cfgfile" "$ofile" || (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") chmod +x "$ofile" @@ -27850,8 +29406,8 @@ pthreads : $have_pthreads ($THREAD_LIBS) EOF -{ $as_echo "$as_me:${as_lineno-$LINENO}: Summary of miscellaneous features" >&5 -$as_echo "$as_me: Summary of miscellaneous features" >&6;} +{ $as_echo "$as_me:${as_lineno-$LINENO}: Summary of miscellaneous features" >&5 +$as_echo "$as_me: Summary of miscellaneous features" >&6;} if test "x$CHECK_LIBS" = "x"; then check_libs="no" else @@ -27968,8 +29524,8 @@ fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: Summary of engine performance features)" >&5 -$as_echo "$as_me: Summary of engine performance features)" >&6;} +{ $as_echo "$as_me:${as_lineno-$LINENO}: Summary of engine performance features" >&5 +$as_echo "$as_me: Summary of engine performance features" >&6;} if test "x$enable_debug" = "xyes"; then @@ -28003,6 +29559,7 @@ if test "$subdirfailed" = "no"; then have_jit="yes" fi +if test "x$llvm_linking" = "x"; then $as_echo_n " llvm : " @@ -28016,6 +29573,21 @@ $as_echo "$have_jit, from $system_llvm ($enable_llvm)" fi +else + + + $as_echo_n " llvm : " + if test "x$enable_llvm" = "xno"; then : + $as_echo "$have_jit, from $system_llvm ($llvm_linking) (disabled)" +elif test "x$enable_llvm" = "xyes"; then : + $as_echo "$have_jit, from $system_llvm ($llvm_linking)" +elif test "x$enable_llvm" = "x"; then : + $as_echo "$have_jit, from $system_llvm ($llvm_linking)" +else + $as_echo "$have_jit, from $system_llvm ($llvm_linking) ($enable_llvm)" +fi + +fi $as_echo_n " mempool : " @@ -28118,7 +29690,7 @@ if test "x$XML_LIBS" = "x"; then - $as_echo_n " dmg and xar : " + $as_echo_n " libxml2 : " if test "x" = "xno"; then : $as_echo "no (disabled)" elif test "x" = "xyes"; then : @@ -28132,7 +29704,7 @@ else - $as_echo_n " dmg and xar : " + $as_echo_n " libxml2 : " if test "x" = "xno"; then : $as_echo "yes, from $XML_HOME (disabled)" elif test "x" = "xyes"; then : @@ -28145,6 +29717,19 @@ fi + + $as_echo_n " yara : " + if test "x$enable_yara" = "xno"; then : + $as_echo "$enable_yara (disabled)" +elif test "x$enable_yara" = "xyes"; then : + $as_echo "$enable_yara" +elif test "x$enable_yara" = "x"; then : + $as_echo "$enable_yara" +else + $as_echo "$enable_yara ($enable_yara)" +fi + + # Yep, downgrading the compiler avoids the bug too: # 4.0.x, and 4.1.0 are the known buggy versions # 3.4 doesn't have the bug diff -Nru clamav-0.98.6+dfsg/configure.ac clamav-0.99.2+addedllvm/configure.ac --- clamav-0.98.6+dfsg/configure.ac 2014-12-18 21:43:18.000000000 +0000 +++ clamav-0.99.2+addedllvm/configure.ac 2016-04-22 16:19:09.000000000 +0000 @@ -20,7 +20,7 @@ AC_PREREQ([2.59]) dnl For a release change [devel] to the real version [0.xy] dnl also change VERSION below -AC_INIT([ClamAV], [0.98.6], [http://bugs.clamav.net/], [clamav], [http://www.clamav.net/]) +AC_INIT([ClamAV], [0.99.2], [http://bugs.clamav.net/], [clamav], [http://www.clamav.net/]) AH_BOTTOM([#include "platform.h"]) dnl put configure auxiliary into config @@ -61,7 +61,7 @@ m4_include([m4/reorganization/linker_checks.m4]) AC_ARG_ENABLE([experimental], -[ --enable-experimental enable experimental code], +[AS_HELP_STRING([--enable-experimental], [enable experimental code])], enable_experimental=$enableval, enable_experimental="no") if test "$enable_experimental" = "yes"; then @@ -81,11 +81,13 @@ m4_include([m4/reorganization/libs/xml.m4]) m4_include([m4/reorganization/libs/openssl.m4]) m4_include([m4/reorganization/libs/json.m4]) +m4_include([m4/reorganization/libs/pcre.m4]) AM_MAINTAINER_MODE m4_include([m4/reorganization/libs/libz.m4]) m4_include([m4/reorganization/libs/bzip.m4]) m4_include([m4/reorganization/libs/unrar.m4]) +m4_include([m4/reorganization/libs/systemd.m4]) m4_include([m4/reorganization/code_checks/ipv6.m4]) m4_include([m4/reorganization/code_checks/dns.m4]) m4_include([m4/reorganization/code_checks/fanotify.m4]) @@ -122,6 +124,8 @@ m4_include([m4/reorganization/distcheck.m4]) m4_include([m4/reorganization/llvm.m4]) m4_include([m4/reorganization/sha_collect.m4]) +m4_include([m4/reorganization/yara.m4]) +m4_include([m4/reorganization/libfreshclam.m4]) m4_include([m4/reorganization/bsd.m4]) @@ -137,9 +141,12 @@ database/Makefile docs/Makefile clamd/Makefile +clamd/clamav-daemon.service +clamd/clamav-daemon.socket clamdscan/Makefile clamsubmit/Makefile clamav-milter/Makefile +freshclam/clamav-freshclam.service freshclam/Makefile sigtool/Makefile clamconf/Makefile @@ -148,6 +155,7 @@ unit_tests/Makefile clamdtop/Makefile clambc/Makefile +libfreshclam/Makefile Makefile clamav-config libclamav.pc @@ -172,9 +180,17 @@ if test "$enable_llvm" = "yes" && test "$subdirfailed" != "no"; then AC_MSG_ERROR([Failed to configure LLVM, and LLVM was explicitly requested]) fi +if test "$enable_llvm" = "auto" && test "$subdirfailed" != "no"; then + system_llvm="MIA" + llvm_linking="" +fi + AM_CONDITIONAL([ENABLE_LLVM], [test "$subdirfailed" != "yes" && test "$enable_llvm" != "no"]) +AM_CONDITIONAL([ENABLE_YARA], + [test "$enable_yara" != "no"]) no_recursion="yes"; + AC_OUTPUT([libclamav/Makefile]) # Print a summary of what features we enabled @@ -185,7 +201,7 @@ pthreads : $have_pthreads ($THREAD_LIBS) EOF -AC_MSG_NOTICE([Summary of miscellaneous features]) +AC_MSG_NOTICE([Summary of miscellaneous features]) if test "x$CHECK_LIBS" = "x"; then check_libs="no" else @@ -205,7 +221,7 @@ CL_MSG_STATUS([milter ],[yes],[$have_milter]) CL_MSG_STATUS([clamsubmit ],[$have_curl],[$curl_msg]) -AC_MSG_NOTICE([Summary of engine performance features)]) +AC_MSG_NOTICE([Summary of engine performance features]) if test "x$enable_debug" = "xyes"; then CL_MSG_STATUS([release mode],[no],[debug build]) else @@ -215,7 +231,11 @@ if test "$subdirfailed" = "no"; then have_jit="yes" fi -CL_MSG_STATUS([llvm ],[$have_jit, from $system_llvm],[$enable_llvm]) +if test "x$llvm_linking" = "x"; then + CL_MSG_STATUS([llvm ],[$have_jit, from $system_llvm],[$enable_llvm]) +else + CL_MSG_STATUS([llvm ],[$have_jit, from $system_llvm ($llvm_linking)],[$enable_llvm]) +fi CL_MSG_STATUS([mempool ],[$have_mempool],[$enable_mempool]) AC_MSG_NOTICE([Summary of engine detection features]) @@ -231,10 +251,11 @@ CL_MSG_STATUS([pcre ],[$PCRE_HOME],[$have_pcre]) fi if test "x$XML_LIBS" = "x"; then - CL_MSG_STATUS([dmg and xar ],[no],[]) + CL_MSG_STATUS([libxml2 ],[no],[]) else - CL_MSG_STATUS([dmg and xar ],[yes, from $XML_HOME],[]) + CL_MSG_STATUS([libxml2 ],[yes, from $XML_HOME],[]) fi +CL_MSG_STATUS([yara ],[$enable_yara],[$enable_yara]) # Yep, downgrading the compiler avoids the bug too: # 4.0.x, and 4.1.0 are the known buggy versions diff -Nru clamav-0.98.6+dfsg/COPYING.pcre clamav-0.99.2+addedllvm/COPYING.pcre --- clamav-0.98.6+dfsg/COPYING.pcre 1970-01-01 00:00:00.000000000 +0000 +++ clamav-0.99.2+addedllvm/COPYING.pcre 2016-04-22 15:02:18.000000000 +0000 @@ -0,0 +1,68 @@ +PCRE LICENCE +------------ + +PCRE is a library of functions to support regular expressions whose syntax +and semantics are as close as possible to those of the Perl 5 language. + +Release 7 of PCRE is distributed under the terms of the "BSD" licence, as +specified below. The documentation for PCRE, supplied in the "doc" +directory, is distributed under the same terms as the software itself. + +The basic library functions are written in C and are freestanding. Also +included in the distribution is a set of C++ wrapper functions. + + +THE BASIC LIBRARY FUNCTIONS +--------------------------- + +Written by: Philip Hazel +Email local part: ph10 +Email domain: cam.ac.uk + +University of Cambridge Computing Service, +Cambridge, England. Phone: +44 1223 334714. + +Copyright (c) 1997-2006 University of Cambridge +All rights reserved. + + +THE C++ WRAPPER FUNCTIONS +------------------------- + +Contributed by: Google Inc. + +Copyright (c) 2006, Google Inc. +All rights reserved. + + +THE "BSD" LICENCE +----------------- + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + + * 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. + + * Neither the name of the University of Cambridge nor the name of Google + Inc. nor the names of their 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. + +End diff -Nru clamav-0.98.6+dfsg/COPYING.sha256 clamav-0.99.2+addedllvm/COPYING.sha256 --- clamav-0.98.6+dfsg/COPYING.sha256 2014-12-18 21:42:47.000000000 +0000 +++ clamav-0.99.2+addedllvm/COPYING.sha256 1970-01-01 00:00:00.000000000 +0000 @@ -1,23 +0,0 @@ - Copyright (c) 2001-2003 Allan Saddi - 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 ALLAN SADDI AND HIS 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 ALLAN SADDI OR HIS 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. diff -Nru clamav-0.98.6+dfsg/COPYING.YARA clamav-0.99.2+addedllvm/COPYING.YARA --- clamav-0.98.6+dfsg/COPYING.YARA 1970-01-01 00:00:00.000000000 +0000 +++ clamav-0.99.2+addedllvm/COPYING.YARA 2016-04-22 15:02:18.000000000 +0000 @@ -0,0 +1,206 @@ +Modified files from the YARA project exist in libclamav. These have file +names with "yara_" prefixing the original yara file names. The YARA project +uses the license below: + + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff -Nru clamav-0.98.6+dfsg/database/Makefile.in clamav-0.99.2+addedllvm/database/Makefile.in --- clamav-0.98.6+dfsg/database/Makefile.in 2014-12-18 21:43:18.000000000 +0000 +++ clamav-0.99.2+addedllvm/database/Makefile.in 2016-04-22 16:19:52.000000000 +0000 @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.14 from Makefile.am. +# Makefile.in generated by automake 1.14.1 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2013 Free Software Foundation, Inc. @@ -101,14 +101,13 @@ DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/acinclude.m4 \ - $(top_srcdir)/m4/argz.m4 \ $(top_srcdir)/m4/ax_check_uname_syscall.m4 \ $(top_srcdir)/m4/fdpassing.m4 $(top_srcdir)/m4/lib-ld.m4 \ $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/llvm.m4 \ - $(top_srcdir)/m4/ltdl.m4 $(top_srcdir)/m4/ltoptions.m4 \ - $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ - $(top_srcdir)/m4/lt~obsolete.m4 \ + $(top_srcdir)/m4/ltargz.m4 $(top_srcdir)/m4/ltdl.m4 \ + $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ + $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ $(top_srcdir)/m4/mmap_private.m4 $(top_srcdir)/m4/resolv.m4 \ $(top_srcdir)/m4/reorganization/version.m4 \ $(top_srcdir)/m4/reorganization/build_tools.m4 \ @@ -123,9 +122,11 @@ $(top_srcdir)/m4/reorganization/libs/xml.m4 \ $(top_srcdir)/m4/reorganization/libs/openssl.m4 \ $(top_srcdir)/m4/reorganization/libs/json.m4 \ + $(top_srcdir)/m4/reorganization/libs/pcre.m4 \ $(top_srcdir)/m4/reorganization/libs/libz.m4 \ $(top_srcdir)/m4/reorganization/libs/bzip.m4 \ $(top_srcdir)/m4/reorganization/libs/unrar.m4 \ + $(top_srcdir)/m4/reorganization/libs/systemd.m4 \ $(top_srcdir)/m4/reorganization/code_checks/ipv6.m4 \ $(top_srcdir)/m4/reorganization/code_checks/dns.m4 \ $(top_srcdir)/m4/reorganization/code_checks/fanotify.m4 \ @@ -162,6 +163,8 @@ $(top_srcdir)/m4/reorganization/distcheck.m4 \ $(top_srcdir)/m4/reorganization/llvm.m4 \ $(top_srcdir)/m4/reorganization/sha_collect.m4 \ + $(top_srcdir)/m4/reorganization/yara.m4 \ + $(top_srcdir)/m4/reorganization/libfreshclam.m4 \ $(top_srcdir)/m4/reorganization/bsd.m4 \ $(top_srcdir)/m4/reorganization/libs/curl.m4 \ $(top_srcdir)/m4/reorganization/substitutions.m4 \ @@ -197,7 +200,6 @@ AMTAR = @AMTAR@ AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ AR = @AR@ -ARGZ_H = @ARGZ_H@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ @@ -207,6 +209,7 @@ CCDEPMODE = @CCDEPMODE@ CFGDIR = @CFGDIR@ CFLAGS = @CFLAGS@ +CHECK_CFLAGS = @CHECK_CFLAGS@ CHECK_CPPFLAGS = @CHECK_CPPFLAGS@ CHECK_LIBS = @CHECK_LIBS@ CLAMAVGROUP = @CLAMAVGROUP@ @@ -253,6 +256,7 @@ GETENT = @GETENT@ GPERF = @GPERF@ GREP = @GREP@ +HAVE_YARA = @HAVE_YARA@ INCLTDL = @INCLTDL@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ @@ -265,6 +269,9 @@ LCOV = @LCOV@ LD = @LD@ LDFLAGS = @LDFLAGS@ +LEX = @LEX@ +LEXLIB = @LEXLIB@ +LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@ LIBADD_DL = @LIBADD_DL@ LIBADD_DLD_LINK = @LIBADD_DLD_LINK@ LIBADD_DLOPEN = @LIBADD_DLOPEN@ @@ -287,9 +294,11 @@ LTDLOPEN = @LTDLOPEN@ LTLIBBZ2 = @LTLIBBZ2@ LTLIBOBJS = @LTLIBOBJS@ +LT_ARGZ_H = @LT_ARGZ_H@ LT_CONFIG_H = @LT_CONFIG_H@ LT_DLLOADERS = @LT_DLLOADERS@ LT_DLPREOPEN = @LT_DLPREOPEN@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ MANIFEST_TOOL = @MANIFEST_TOOL@ @@ -308,6 +317,11 @@ PACKAGE_URL = @PACKAGE_URL@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PCRE_CPPFLAGS = @PCRE_CPPFLAGS@ +PCRE_LIBS = @PCRE_LIBS@ +PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ RANLIB = @RANLIB@ SED = @SED@ SET_MAKE = @SET_MAKE@ @@ -317,6 +331,8 @@ SSL_LDFLAGS = @SSL_LDFLAGS@ SSL_LIBS = @SSL_LIBS@ STRIP = @STRIP@ +SYSTEMD_CFLAGS = @SYSTEMD_CFLAGS@ +SYSTEMD_LIBS = @SYSTEMD_LIBS@ THREAD_LIBS = @THREAD_LIBS@ TH_SAFE = @TH_SAFE@ VERSION = @VERSION@ @@ -325,6 +341,8 @@ WERR_CFLAGS_MILTER = @WERR_CFLAGS_MILTER@ XML_CPPFLAGS = @XML_CPPFLAGS@ XML_LIBS = @XML_LIBS@ +YACC = @YACC@ +YFLAGS = @YFLAGS@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ @@ -367,6 +385,7 @@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ +pcreconfig = @pcreconfig@ pdfdir = @pdfdir@ prefix = @prefix@ program_transform_name = @program_transform_name@ @@ -377,6 +396,7 @@ subdirs = @subdirs@ sys_symbol_underscore = @sys_symbol_underscore@ sysconfdir = @sysconfdir@ +systemdsystemunitdir = @systemdsystemunitdir@ target = @target@ target_alias = @target_alias@ target_cpu = @target_cpu@ diff -Nru clamav-0.98.6+dfsg/debian/changelog clamav-0.99.2+addedllvm/debian/changelog --- clamav-0.98.6+dfsg/debian/changelog 2015-01-30 14:02:09.000000000 +0000 +++ clamav-0.99.2+addedllvm/debian/changelog 2016-09-20 18:58:56.000000000 +0000 @@ -1,3 +1,45 @@ +clamav (0.99.2+addedllvm-0ubuntu0.12.04.1) precise-security; urgency=medium + + * Updated to 0.99.2 to fix multiple security issues + - CVE-2016-1371 + - CVE-2016-1372 + - CVE-2016-1405 + * Removed patches no longer required + - 0003-unit_tests-increment-test-timeout-from-40secs-to-5mi.patch + - 0006-remove-unnecessary-harmful-flags-from-libclamav.pc.patch + - 0010-hardcode-LLVM-linker-flag-because-llvm-config-return.patch + - 0018-llvm-don-t-use-system-libs.patch + * debian/clamav-base.postinst.in: updated to handle new options + - OnAccessMountPath + - OnAccessDisableDDD + - OnAccessPrevention + - OnAccessExtraScanning + - PCREMatchLimit + - PCRERecMatchLimit + - PCREMaxFileSize + - ScanXMLDOCS + - ScanHWP3 + - MaxRecHWP3 + * debian/*: rename libclamav6 to libclamav7. + * debian/control: add libpcre3-dev to Build-Depends as new signatures + rely on PCRE support. + + -- Marc Deslauriers Tue, 20 Sep 2016 14:58:40 -0400 + +clamav (0.98.7+dfsg-0ubuntu0.12.04.1) precise-security; urgency=medium + + * Updated to 0.98.7 to fix multiple issues + - CVE-2015-2170 + - CVE-2015-2221 + - CVE-2015-2222 + - CVE-2015-2305 + - CVE-2015-2668 + * Refreshed patches for 0.98.7: + - d/p/0010-hardcode-LLVM-linker-flag-because-llvm-config-return.patch + - d/p/0018-llvm-don-t-use-system-libs.patch + + -- Marc Deslauriers Mon, 04 May 2015 15:50:41 -0400 + clamav (0.98.6+dfsg-0ubuntu0.12.04.1) precise-security; urgency=medium * Updated to 0.98.6 to fix security issues, including CVE-2014-9328. diff -Nru clamav-0.98.6+dfsg/debian/clamav-base.postinst.in clamav-0.99.2+addedllvm/debian/clamav-base.postinst.in --- clamav-0.98.6+dfsg/debian/clamav-base.postinst.in 2014-11-24 19:51:21.000000000 +0000 +++ clamav-0.99.2+addedllvm/debian/clamav-base.postinst.in 2016-09-19 20:01:02.000000000 +0000 @@ -317,6 +317,12 @@ [ -z "$MaxQueue" ] && MaxQueue=100 [ -z "$ExtendedDetectionInfo" ] && ExtendedDetectionInfo=true [ -z "$OLE2BlockMacros" ] && OLE2BlockMacros=false + [ -z "$PCREMatchLimit" ] && PCREMatchLimit=10000 + [ -z "$PCRERecMatchLimit" ] && PCRERecMatchLimit=5000 + [ -z "$PCREMaxFileSize" ] && PCREMaxFileSize=25M + [ -z "$ScanXMLDOCS" ] && ScanXMLDOCS=true + [ -z "$ScanHWP3" ] && ScanHWP3=true + [ -z "$MaxRecHWP3" ] && MaxRecHWP3=16 if [ -n "$TemporaryDirectory" ]; then cat >> $DEBCONFFILE << EOF @@ -392,6 +398,12 @@ MaxFiles $MaxFiles MaxPartitions $MaxPartitions MaxIconsPE $MaxIconsPE +PCREMatchLimit $PCREMatchLimit +PCRERecMatchLimit $PCRERecMatchLimit +PCREMaxFileSize $PCREMaxFileSize +ScanXMLDOCS $ScanXMLDOCS +ScanHWP3 $ScanHWP3 +MaxRecHWP3 $MaxRecHWP3 StatsEnabled $StatsEnabled StatsPEDisabled $StatsPEDisabled StatsHostID $StatsHostID @@ -449,6 +461,10 @@ [ -n "$OnAccessIncludePath" ] && echo "OnAccessIncludePath $OnAccessIncludePath" >> $DEBCONFFILE [ -n "$OnAccessExcludePath" ] && echo "OnAccessExcludePath $OnAccessExcludePath" >> $DEBCONFFILE [ -n "$OnAccessExcludeUID" ] && echo "OnAccessExcludeUID $OnAccessExcludeUID" >> $DEBCONFFILE + [ -n "$OnAccessMountPath" ] && echo "OnAccessMountPath $OnAccessMountPath" >> $DEBCONFFILE + [ -n "$OnAccessDisableDDD" ] && echo "OnAccessDisableDDD $OnAccessDisableDDD" >> $DEBCONFFILE + [ -n "$OnAccessPrevention" ] && echo "OnAccessPrevention $OnAccessPrevention" >> $DEBCONFFILE + [ -n "$OnAccessExtraScanning" ] && echo "OnAccessExtraScanning $OnAccessExtraScanning" >> $DEBCONFFILE [ -n "$ClamukoScanOnAccess" ] && echo "ClamukoScanOnAccess $ClamukoScanOnAccess" >> $DEBCONFFILE [ -n "$ClamukoScanOnOpen" ] && echo "ClamukoScanOnOpen $ClamukoScanOnOpen" >> $DEBCONFFILE [ -n "$ClamukoScanOnClose" ] && echo "ClamukoScanOnClose $ClamukoScanOnClose" >> $DEBCONFFILE diff -Nru clamav-0.98.6+dfsg/debian/clamav-config.1 clamav-0.99.2+addedllvm/debian/clamav-config.1 --- clamav-0.98.6+dfsg/debian/clamav-config.1 2014-03-17 22:40:42.000000000 +0000 +++ clamav-0.99.2+addedllvm/debian/clamav-config.1 2016-09-19 20:01:14.000000000 +0000 @@ -19,7 +19,7 @@ .\" .TH CLAMAV-CONFIG 1 "June 2004" "Debian Project" "Debian GNU/Linux" .SH NAME -clamav-config \- script to get information about libclamav6 +clamav-config \- script to get information about libclamav7 .SH SYNOPSIS .B clamav\-config .BI [\-\-prefix[= DIR ]] @@ -30,27 +30,27 @@ .B clamav\-config is a tool that is used to configure to determine the compiler and linker flags that should be used to compile and link programs that use -.BR libclamav6 . +.BR libclamav7 . .SH OPTIONS .TP .B \-\-version Print the currently installed version of -.B libclamav6 +.B libclamav7 on the standard output. .TP .B \-\-libs Print the linker flags that are necessary to link a program with -.BR libclamav6 . +.BR libclamav7 . .TP .B \-\-cflags Print the compiler flags that are necessary to compile a program with -.BR libclamav6 . +.BR libclamav7 . .TP .BI \-\-prefix= PREFIX If specified, use .I PREFIX instead of the installation prefix that -.B libclamav6 +.B libclamav7 was built with when computing the output for the .B \-\-cflags and diff -Nru clamav-0.98.6+dfsg/debian/clamav.links clamav-0.99.2+addedllvm/debian/clamav.links --- clamav-0.98.6+dfsg/debian/clamav.links 2014-03-17 22:40:42.000000000 +0000 +++ clamav-0.99.2+addedllvm/debian/clamav.links 2016-09-19 20:01:22.000000000 +0000 @@ -1,6 +1,6 @@ -/usr/share/doc/libclamav6/AUTHORS /usr/share/doc/clamav/AUTHORS -/usr/share/doc/libclamav6/BUGS /usr/share/doc/clamav/BUGS -/usr/share/doc/libclamav6/FAQ /usr/share/doc/clamav/FAQ -/usr/share/doc/libclamav6/README.gz /usr/share/doc/clamav/README.gz -/usr/share/doc/libclamav6/README.Debian.gz /usr/share/doc/clamav/README.Debian.gz -/usr/share/doc/libclamav6/NEWS.Debian.gz /usr/share/doc/clamav/NEWS.Debian.gz +/usr/share/doc/libclamav7/AUTHORS /usr/share/doc/clamav/AUTHORS +/usr/share/doc/libclamav7/BUGS /usr/share/doc/clamav/BUGS +/usr/share/doc/libclamav7/FAQ /usr/share/doc/clamav/FAQ +/usr/share/doc/libclamav7/README.gz /usr/share/doc/clamav/README.gz +/usr/share/doc/libclamav7/README.Debian.gz /usr/share/doc/clamav/README.Debian.gz +/usr/share/doc/libclamav7/NEWS.Debian.gz /usr/share/doc/clamav/NEWS.Debian.gz diff -Nru clamav-0.98.6+dfsg/debian/control clamav-0.99.2+addedllvm/debian/control --- clamav-0.98.6+dfsg/debian/control 2014-11-21 15:02:55.000000000 +0000 +++ clamav-0.99.2+addedllvm/debian/control 2016-09-20 18:59:03.000000000 +0000 @@ -7,7 +7,7 @@ Michael Tautschnig , Scott Kitterman Build-Depends: debhelper (>= 6.0.7), po-debconf, zlib1g-dev, libbz2-dev, libmilter-dev, perl, bc, check, libtommath-dev, libltdl-dev, libncurses5-dev, python, - libxml2-dev, dh-autoreconf, automake1.11, pkg-config, libssl-dev + libxml2-dev, dh-autoreconf, automake1.11, pkg-config, libssl-dev, libpcre3-dev Standards-Version: 3.9.5 Vcs-Git: git://anonscm.debian.org/pkg-clamav/clamav.git Vcs-Browser: http://anonscm.debian.org/gitweb/?p=pkg-clamav/clamav.git;a=summary @@ -25,7 +25,7 @@ multi-threaded daemon in the clamav-daemon package, a command-line scanner in the clamav package, and a tool for automatic updating via the Internet in the clamav-freshclam package. The programs are based - on libclamav6, which can be used by other software. + on libclamav7, which can be used by other software. . This package mainly manages the clamav system account. It is not really useful without the clamav package. It also handles the configuration @@ -42,13 +42,13 @@ multi-threaded daemon in the clamav-daemon package, a command-line scanner in the clamav package, and a tool for automatic updating via the Internet in the clamav-freshclam package. The programs are based - on libclamav6, which can be used by other software. + on libclamav7, which can be used by other software. . This package contains the documentation for the ClamAV suite. Package: clamav-dbg Architecture: any -Depends: libclamav6, clamav (= ${binary:Version}), ${shlibs:Depends}, ${misc:Depends} +Depends: libclamav7, clamav (= ${binary:Version}), ${shlibs:Depends}, ${misc:Depends} Priority: extra Section: debug Description: debug symbols for ClamAV @@ -58,7 +58,7 @@ multi-threaded daemon in the clamav-daemon package, a command-line scanner in the clamav package, and a tool for automatic updating via the Internet in the clamav-freshclam package. The programs are based - on libclamav6, which can be used by other software. + on libclamav7, which can be used by other software. . This package contains the stripped debugging symbols for the ClamAV suite. @@ -74,7 +74,7 @@ multi-threaded daemon in the clamav-daemon package, a command-line scanner in the clamav package, and a tool for automatic updating via the Internet in the clamav-freshclam package. The programs are based - on libclamav6, which can be used by other software. + on libclamav7, which can be used by other software. . This package contains the command line interface. Features: - built-in support for various archive formats, including Zip, Tar, @@ -97,7 +97,7 @@ Package: libclamav-dev Section: libdevel Architecture: any -Depends: libclamav6 (= ${binary:Version}), libssl-dev, libidn11-dev, libc6-dev | libc-dev, zlib1g-dev, libbz2-dev, libtommath-dev, ${misc:Depends} +Depends: libclamav7 (= ${binary:Version}), libssl-dev, libidn11-dev, libc6-dev | libc-dev, zlib1g-dev, libbz2-dev, libtommath-dev, ${misc:Depends} Description: anti-virus utility for Unix - development files Clam AntiVirus is an anti-virus toolkit for Unix. The main purpose of this software is the integration with mail servers (attachment @@ -105,14 +105,14 @@ multi-threaded daemon in the clamav-daemon package, a command-line scanner in the clamav package, and a tool for automatic updating via the Internet in the clamav-freshclam package. The programs are based - on libclamav6, which can be used by other software. + on libclamav7, which can be used by other software. . The package contains the needed headers and libraries for developing software using the libclamav interface. . This library can be used to develop virus scanner applications. -Package: libclamav6 +Package: libclamav7 Section: libs Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends} @@ -124,7 +124,7 @@ multi-threaded daemon in the clamav-daemon package, a command-line scanner in the clamav package, and a tool for automatic updating via the Internet in the clamav-freshclam package. The programs are based - on libclamav6, which can be used by other software. + on libclamav7, which can be used by other software. . For programs written using the libclamav library. Libclamav may be used to add virus protection into software. The library is thread-safe, and automatically @@ -142,7 +142,7 @@ multi-threaded daemon in the clamav-daemon package, a command-line scanner in the clamav package, and a tool for automatic updating via the Internet in the clamav-freshclam package. The programs are based - on libclamav6, which can be used by other software. + on libclamav7, which can be used by other software. . This package contains the daemon and its command line interface, featuring: @@ -162,7 +162,7 @@ multi-threaded daemon in the clamav-daemon package, a command-line scanner in the clamav package, and a tool for automatic updating via the Internet in the clamav-freshclam package. The programs are based - on libclamav6, which can be used by other software. + on libclamav7, which can be used by other software. . This package contains files 'infected' with a test signature. The test signature (ClamAV-Test-Signature) should be detectable by all @@ -181,7 +181,7 @@ multi-threaded daemon in the clamav-daemon package, a command-line scanner in the clamav package, and a tool for automatic updating via the Internet in the clamav-freshclam package. The programs are based - on libclamav6, which can be used by other software. + on libclamav7, which can be used by other software. . This package contains the freshclam program and scripts to automate virus database updating. It relies on an Internet connection, but can be @@ -200,7 +200,7 @@ multi-threaded daemon in the clamav-daemon package, a command-line scanner in the clamav package, and a tool for automatic updating via the Internet in the clamav-freshclam package. The programs are based - on libclamav6, which can be used by other software. + on libclamav7, which can be used by other software. . This package contains the ClamAV milter for use with sendmail. It can be configured to be run either standalone, or using clamav-daemon. diff -Nru clamav-0.98.6+dfsg/debian/libclamav6.docs clamav-0.99.2+addedllvm/debian/libclamav6.docs --- clamav-0.98.6+dfsg/debian/libclamav6.docs 2014-03-17 22:40:42.000000000 +0000 +++ clamav-0.99.2+addedllvm/debian/libclamav6.docs 1970-01-01 00:00:00.000000000 +0000 @@ -1,6 +0,0 @@ -AUTHORS -BUGS -FAQ -README -debian/README.Debian -debian/NEWS.Debian diff -Nru clamav-0.98.6+dfsg/debian/libclamav6.install clamav-0.99.2+addedllvm/debian/libclamav6.install --- clamav-0.98.6+dfsg/debian/libclamav6.install 2014-03-17 22:40:42.000000000 +0000 +++ clamav-0.99.2+addedllvm/debian/libclamav6.install 1970-01-01 00:00:00.000000000 +0000 @@ -1,2 +0,0 @@ -debian/tmp/usr/lib/libclamav.so.6.1.* -debian/tmp/usr/lib/libclamav.so.6 diff -Nru clamav-0.98.6+dfsg/debian/libclamav6.lintian-overrides clamav-0.99.2+addedllvm/debian/libclamav6.lintian-overrides --- clamav-0.98.6+dfsg/debian/libclamav6.lintian-overrides 2014-03-17 22:40:42.000000000 +0000 +++ clamav-0.99.2+addedllvm/debian/libclamav6.lintian-overrides 1970-01-01 00:00:00.000000000 +0000 @@ -1 +0,0 @@ -libclamav6 binary: embedded-library usr/lib/libclamav.so.6.1.20: zlib diff -Nru clamav-0.98.6+dfsg/debian/libclamav7.docs clamav-0.99.2+addedllvm/debian/libclamav7.docs --- clamav-0.98.6+dfsg/debian/libclamav7.docs 1970-01-01 00:00:00.000000000 +0000 +++ clamav-0.99.2+addedllvm/debian/libclamav7.docs 2014-03-17 22:40:42.000000000 +0000 @@ -0,0 +1,6 @@ +AUTHORS +BUGS +FAQ +README +debian/README.Debian +debian/NEWS.Debian diff -Nru clamav-0.98.6+dfsg/debian/libclamav7.install clamav-0.99.2+addedllvm/debian/libclamav7.install --- clamav-0.98.6+dfsg/debian/libclamav7.install 1970-01-01 00:00:00.000000000 +0000 +++ clamav-0.99.2+addedllvm/debian/libclamav7.install 2016-09-19 20:04:10.000000000 +0000 @@ -0,0 +1 @@ +debian/tmp/usr/lib/libclamav.so.7* diff -Nru clamav-0.98.6+dfsg/debian/libclamav7.lintian-overrides clamav-0.99.2+addedllvm/debian/libclamav7.lintian-overrides --- clamav-0.98.6+dfsg/debian/libclamav7.lintian-overrides 1970-01-01 00:00:00.000000000 +0000 +++ clamav-0.99.2+addedllvm/debian/libclamav7.lintian-overrides 2016-09-19 20:04:15.000000000 +0000 @@ -0,0 +1 @@ +libclamav7 binary: embedded-library usr/lib/libclamav.so.7.*: zlib diff -Nru clamav-0.98.6+dfsg/debian/libclamav-dev.links clamav-0.99.2+addedllvm/debian/libclamav-dev.links --- clamav-0.98.6+dfsg/debian/libclamav-dev.links 2014-03-17 22:40:42.000000000 +0000 +++ clamav-0.99.2+addedllvm/debian/libclamav-dev.links 2016-09-19 20:01:59.000000000 +0000 @@ -1,6 +1,6 @@ -/usr/share/doc/libclamav6/AUTHORS /usr/share/doc/libclamav-dev/AUTHORS -/usr/share/doc/libclamav6/BUGS /usr/share/doc/libclamav-dev/BUGS -/usr/share/doc/libclamav6/FAQ /usr/share/doc/libclamav-dev/FAQ -/usr/share/doc/libclamav6/README.gz /usr/share/doc/libclamav-dev/README.gz -/usr/share/doc/libclamav6/README.Debian.gz /usr/share/doc/libclamav-dev/README.Debian.gz -/usr/share/doc/libclamav6/NEWS.Debian.gz /usr/share/doc/libclamav-dev/NEWS.Debian.gz +/usr/share/doc/libclamav7/AUTHORS /usr/share/doc/libclamav-dev/AUTHORS +/usr/share/doc/libclamav7/BUGS /usr/share/doc/libclamav-dev/BUGS +/usr/share/doc/libclamav7/FAQ /usr/share/doc/libclamav-dev/FAQ +/usr/share/doc/libclamav7/README.gz /usr/share/doc/libclamav-dev/README.gz +/usr/share/doc/libclamav7/README.Debian.gz /usr/share/doc/libclamav-dev/README.Debian.gz +/usr/share/doc/libclamav7/NEWS.Debian.gz /usr/share/doc/libclamav-dev/NEWS.Debian.gz diff -Nru clamav-0.98.6+dfsg/debian/patches/0003-unit_tests-increment-test-timeout-from-40secs-to-5mi.patch clamav-0.99.2+addedllvm/debian/patches/0003-unit_tests-increment-test-timeout-from-40secs-to-5mi.patch --- clamav-0.98.6+dfsg/debian/patches/0003-unit_tests-increment-test-timeout-from-40secs-to-5mi.patch 2014-11-20 19:34:23.000000000 +0000 +++ clamav-0.99.2+addedllvm/debian/patches/0003-unit_tests-increment-test-timeout-from-40secs-to-5mi.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,30 +0,0 @@ -From 131182293cbed933fd608761e6854e90bde28403 Mon Sep 17 00:00:00 2001 -From: Sebastian Andrzej Siewior -Date: Fri, 25 Apr 2014 22:06:23 +0200 -Subject: unit_tests: increment test-timeout from 40secs to 5mins - -I see now and then that tests on the slower archs (arm*, mips) fail due to -the timeout restriction. Often a second build even on the same buildd -succeeds. I think that the buildd is either close to the limit or has -something else (another sbuild running) going so it does not finish the -test in 40secs. -Therefore I raise the bar to a 5 minutes limit. The worst thing that can -happen is, that it takes more than 4 minutes before an enless loop will -be detected. - -Signed-off-by: Sebastian Andrzej Siewior ---- - unit_tests/preload_run.sh | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/unit_tests/preload_run.sh b/unit_tests/preload_run.sh -index 8b8c8e3..365b3a8 100755 ---- a/unit_tests/preload_run.sh -+++ b/unit_tests/preload_run.sh -@@ -5,5 +5,5 @@ - ulimit -c 0 || true - LD_PRELOAD=$LIBPRELOAD - export LD_PRELOAD --export CK_DEFAULT_TIMEOUT=40 -+export CK_DEFAULT_TIMEOUT=300 - exec $@ diff -Nru clamav-0.98.6+dfsg/debian/patches/0006-remove-unnecessary-harmful-flags-from-libclamav.pc.patch clamav-0.99.2+addedllvm/debian/patches/0006-remove-unnecessary-harmful-flags-from-libclamav.pc.patch --- clamav-0.98.6+dfsg/debian/patches/0006-remove-unnecessary-harmful-flags-from-libclamav.pc.patch 2014-11-20 19:34:37.000000000 +0000 +++ clamav-0.99.2+addedllvm/debian/patches/0006-remove-unnecessary-harmful-flags-from-libclamav.pc.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,22 +0,0 @@ -From 0fd50756af998fabc3393f67ff8b78a4855303d9 Mon Sep 17 00:00:00 2001 -From: Andreas Cadhalpun -Date: Mon, 4 Aug 2014 22:44:40 +0200 -Subject: remove unnecessary/harmful flags from libclamav.pc - ---- - libclamav.pc.in | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/libclamav.pc.in b/libclamav.pc.in -index 27db30e757ff..19ef1e4e0399 100644 ---- a/libclamav.pc.in -+++ b/libclamav.pc.in -@@ -6,6 +6,6 @@ includedir=@includedir@ - Name: libclamav - Description: A GPL virus scanner - Version: @PACKAGE_VERSION@ --Libs: -L${libdir} -lclamav @LIBCLAMAV_LIBS@ --Cflags: -I${includedir} @CFLAGS@ -+Libs: -L${libdir} -lclamav -+Cflags: -I${includedir} - diff -Nru clamav-0.98.6+dfsg/debian/patches/0010-hardcode-LLVM-linker-flag-because-llvm-config-return.patch clamav-0.99.2+addedllvm/debian/patches/0010-hardcode-LLVM-linker-flag-because-llvm-config-return.patch --- clamav-0.98.6+dfsg/debian/patches/0010-hardcode-LLVM-linker-flag-because-llvm-config-return.patch 2014-11-20 19:34:44.000000000 +0000 +++ clamav-0.99.2+addedllvm/debian/patches/0010-hardcode-LLVM-linker-flag-because-llvm-config-return.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,26 +0,0 @@ -From ff372c3f031462899b76beef71548b25fe78265a Mon Sep 17 00:00:00 2001 -From: Andreas Cadhalpun -Date: Mon, 25 Aug 2014 22:54:37 +0200 -Subject: hardcode LLVM linker flag, because llvm-config returns only flags for - linking statically - -this reduces the size of libclamav by more than 80 percent ---- - libclamav/c++/configure.ac | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/libclamav/c++/configure.ac b/libclamav/c++/configure.ac -index a6697ddd8e82..3c7c7e26fbf8 100644 ---- a/libclamav/c++/configure.ac -+++ b/libclamav/c++/configure.ac -@@ -121,8 +121,8 @@ if test "x$llvmconfig" != "x"; then - else - AC_SUBST(LLVMCONFIG_LDFLAGS, [`$llvmconfig --ldflags`]) - fi -- AC_SUBST(LLVMCONFIG_LIBS, [`$llvmconfig --libs jit nativecodegen scalaropts ipo`]) -- AC_SUBST(LLVMCONFIG_LIBFILES, [`$llvmconfig --libfiles jit nativecodegen scalaropts ipo`]) -+ AC_SUBST(LLVMCONFIG_LIBS, [-lLLVM-$llvmver]) -+ AC_SUBST(LLVMCONFIG_LIBFILES, []) - AC_MSG_NOTICE([CXXFLAGS from llvm-config: $LLVMCONFIG_CXXFLAGS]) - AC_MSG_NOTICE([LDFLAGS from llvm-config: $LLVMCONFIG_LDFLAGS]) - AC_MSG_NOTICE([LIBS from llvm-config: $LLVMCONFIG_LIBS]) diff -Nru clamav-0.98.6+dfsg/debian/patches/0018-llvm-don-t-use-system-libs.patch clamav-0.99.2+addedllvm/debian/patches/0018-llvm-don-t-use-system-libs.patch --- clamav-0.98.6+dfsg/debian/patches/0018-llvm-don-t-use-system-libs.patch 2014-11-20 19:35:04.000000000 +0000 +++ clamav-0.99.2+addedllvm/debian/patches/0018-llvm-don-t-use-system-libs.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,26 +0,0 @@ -From 1e6bc6dd2b0b8eaf78e7dadf47790f97daf9b110 Mon Sep 17 00:00:00 2001 -From: Sebastian Andrzej Siewior -Date: Wed, 19 Nov 2014 23:04:32 +0100 -Subject: llvm: don't use --system-libs - -this continues the saga of not linking the .a files so we don't care -about the libs llvm links against (like -ledit) - -Signed-off-by: Sebastian Andrzej Siewior ---- - libclamav/c++/configure.ac | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/libclamav/c++/configure.ac b/libclamav/c++/configure.ac -index 43e187ff1f56..2d2d47b9d24c 100644 ---- a/libclamav/c++/configure.ac -+++ b/libclamav/c++/configure.ac -@@ -115,7 +115,7 @@ if test "x$llvmconfig" != "x"; then - if test $llvmver_test -ge 350; then - dnl LLVM 3.5.0 and after splits linker flags into two sets - ldflags=`$llvmconfig --ldflags` -- syslibs=`$llvmconfig --system-libs` -+ syslibs= - AC_SUBST(LLVMCONFIG_LDFLAGS, ["$ldflags $syslibs"]) - else - AC_SUBST(LLVMCONFIG_LDFLAGS, [`$llvmconfig --ldflags`]) diff -Nru clamav-0.98.6+dfsg/debian/patches/series clamav-0.99.2+addedllvm/debian/patches/series --- clamav-0.98.6+dfsg/debian/patches/series 2015-01-30 14:02:15.000000000 +0000 +++ clamav-0.99.2+addedllvm/debian/patches/series 2016-09-19 19:52:40.000000000 +0000 @@ -1,5 +1 @@ 0001-Change-paths-in-sample-conf-file-to-match-Debian.patch -0003-unit_tests-increment-test-timeout-from-40secs-to-5mi.patch -0006-remove-unnecessary-harmful-flags-from-libclamav.pc.patch -0010-hardcode-LLVM-linker-flag-because-llvm-config-return.patch -0018-llvm-don-t-use-system-libs.patch diff -Nru clamav-0.98.6+dfsg/debian/rules clamav-0.99.2+addedllvm/debian/rules --- clamav-0.98.6+dfsg/debian/rules 2014-03-19 13:01:48.000000000 +0000 +++ clamav-0.99.2+addedllvm/debian/rules 2016-09-19 20:02:25.000000000 +0000 @@ -204,14 +204,14 @@ touch install-arch-stamp -clamav-dbg: libclamav6 +clamav-dbg: libclamav7 dh_testdir dh_testroot dh_installdocs -p$@ dh_installchangelogs -p$@ ChangeLog dh_compress -p$@ dh_md5sums -p$@ - dh_shlibdeps -l debian/libclamav6/usr/lib -p$@ + dh_shlibdeps -l debian/libclamav7/usr/lib -p$@ dh_installdeb -p$@ dh_gencontrol -p$@ dh_builddeb -p$@ @@ -231,7 +231,7 @@ dh_compress -p$@ dh_md5sums -p$@ dh_installdeb -p$@ - dh_shlibdeps -l debian/libclamav6/usr/lib -p$@ + dh_shlibdeps -l debian/libclamav7/usr/lib -p$@ dh_gencontrol -p$@ dh_fixperms -p$@ dh_builddeb -p$@ @@ -254,7 +254,7 @@ dh_installdebconf -p$@ dh_md5sums -p$@ dh_installdeb -p$@ - dh_shlibdeps -l debian/libclamav6/usr/lib -p$@ + dh_shlibdeps -l debian/libclamav7/usr/lib -p$@ dh_gencontrol -p$@ dh_fixperms -p$@ -Xclamav-freshclam-ifupdown chmod +x debian/clamav-freshclam/etc/network/if-up.d/clamav-freshclam-ifupdown @@ -279,7 +279,7 @@ dh_compress -p$@ dh_md5sums -p$@ dh_installdeb -p$@ - dh_shlibdeps -l debian/libclamav6/usr/lib -p$@ + dh_shlibdeps -l debian/libclamav7/usr/lib -p$@ dh_gencontrol -p$@ dh_fixperms -p$@ dh_builddeb -p$@ @@ -303,12 +303,12 @@ ${STRIP_OPTS} dh_md5sums -p$@ dh_installdeb -p$@ - dh_shlibdeps -l debian/libclamav6/usr/lib -p$@ + dh_shlibdeps -l debian/libclamav7/usr/lib -p$@ dh_gencontrol -p$@ dh_fixperms -p$@ dh_builddeb -p$@ -libclamav6: install +libclamav7: install dh_testdir dh_testroot dh_installdirs -p$@ @@ -321,7 +321,7 @@ dh_makeshlibs -V -p$@ dh_md5sums -p$@ dh_installdeb -p$@ - dh_shlibdeps -l debian/libclamav6/usr/lib -p$@ + dh_shlibdeps -l debian/libclamav7/usr/lib -p$@ dh_gencontrol -p$@ dh_fixperms -p$@ dh_builddeb -p$@ @@ -349,7 +349,7 @@ binary-indep: build install clamav-base clamav-testfiles clamav-docs # Build architecture dependant packages using the common target. -binary-arch: build install libclamav6 clamav clamav-daemon clamav-freshclam clamav-milter libclamav-dev clamav-dbg +binary-arch: build install libclamav7 clamav clamav-daemon clamav-freshclam clamav-milter libclamav-dev clamav-dbg binary: binary-indep binary-arch .PHONY: build clean binary-indep binary-arch binary install Binary files /tmp/tmpRuVyhG/159W4kjz6D/clamav-0.98.6+dfsg/docs/clamdoc.pdf and /tmp/tmpRuVyhG/pcorXIhabH/clamav-0.99.2+addedllvm/docs/clamdoc.pdf differ diff -Nru clamav-0.98.6+dfsg/docs/clamdoc.tex clamav-0.99.2+addedllvm/docs/clamdoc.tex --- clamav-0.98.6+dfsg/docs/clamdoc.tex 2014-12-18 21:43:18.000000000 +0000 +++ clamav-0.99.2+addedllvm/docs/clamdoc.tex 2016-04-22 16:19:09.000000000 +0000 @@ -1,6 +1,6 @@ % Clam AntiVirus: User Manual % -% Copyright (C) 2014 Cisco Systems, Inc. +% Copyright (C) 2016 Cisco Systems, Inc. % Copyright (C) 2008-2013 Sourcefire, Inc. % Copyright (C) 2002 - 2007 Tomasz Kojm % Version 0.2x corrected by Dennis Leeuw @@ -68,11 +68,11 @@ \setcounter{page}{0} \pagestyle{empty} - \includegraphics[width=353pt]{clam} + \includegraphics[width=353pt]{html/demon.png} \vspace{3cm} \begin{flushright} \rule[-1ex]{8cm}{3pt}\\ - \huge Clam AntiVirus 0.98.6\\ + \huge Clam AntiVirus 0.99.2\\ \huge \emph{User Manual}\\ \end{flushright} @@ -84,7 +84,7 @@ \noindent \begin{boxedminipage}[b]{\textwidth} ClamAV User Manual, - \copyright \ 2014 Cisco Systems, Inc. + \copyright \ 2016 Cisco Systems, Inc. Authors: Tomasz Kojm\\ This document is distributed under the terms of the GNU General Public License v2.\\ @@ -336,6 +336,24 @@ \end{verbatim} See section /ref{sec:clamavmilter} for more details on clamav-milter. + \subsection{Using the system LLVM} + Some problems have been reported when compiling ClamAV's built-in LLVM with recent + C++ compiler releases. These problems may be avoided by installing and using + an external LLVM system library. To configure ClamAV to use LLVM that is installed + as a system library instead of the built-in LLVM JIT, use following: + \begin{verbatim} + $ ./configure --with-system-llvm=/myllvm/bin/llvm-config + $ make + $ sudo make install + \end{verbatim} + The argument to \verb+--with-system-llvm+ is optional, indicating the path name of + the LLVM configuration utility (llvm-config). With no argument to \verb+--with-system-llvm+, + \verb+./configure+ will search for LLVM in /usr/local/ and then /usr. + \\\\ + Recommended versions of LLVM are 3.2, 3.3, 3.4, 3.5, and 3.6. Some installations have + reported problems using earlier LLVM versions. Versions of LLVM beyond 3.6 are not + currently supported in ClamAV. + \subsection{Running unit tests}\label{unit-testing} ClamAV includes unit tests that allow you to test that the compiled binaries work correctly on your platform. \\\\ @@ -719,7 +737,9 @@ \subsection{On-access Scanning}\label{On-access} There is a special thread in \verb+clamd+ that performs on-access scanning under Linux and shares internal virus database - with the daemon. \textbf{You must follow some important rules when + with the daemon. By default, this thread will only notify you when + potential threats are discovered. If you turn on prevention via + \verb+clamd.conf+ then \textbf{you must follow some important rules when using it:} \begin{itemize} \item Always stop the daemon cleanly - using the SHUTDOWN command or @@ -730,14 +750,36 @@ files will be automatically blocked and the scanner (including \verb+clamd+!) will not be able to detect any viruses. In the result \textbf{all infected mails may be delivered.} - \end{itemize} - For example, to protect the whole system add the following lines to + \item Watch your entire filesystem only using the \verb+clamd.conf+ + OnAccessMountPath option. While this will disable on-access prevention, + it will avoid potential system lockups caused by fanotify's blocking + functionality. + \item Using the On-Access Scanner to watch a virtual filesytem will result + in undefined behaviour. + \end{itemize} + The default configuration utilizes inotify to recursively keep track of + directories. If you need to protect more than 8192 directories it will + be necessary to change inotify's \verb+max_user_watches+ value. + \\\\ + This can be done temporarily with: + \begin{verbatim} + $ sysctl fs.inotify.max_user_watches= + \end{verbatim} + Where \verb++ is the new maximum desired. + \\\\ + To watch your entire filesystem add the following lines to + \verb+clamd.conf+: + \begin{verbatim} + ScanOnAccess yes + OnAccessMountPath / + \end{verbatim} + Similarly, to protect your home directory add the following lines to \verb+clamd.conf+: \begin{verbatim} ScanOnAccess yes - OnAccessIncludePath / - OnAccessExcludePath /proc - OnAccessExcludePath /temporary/dir/of/your/mail/scanning/software + OnAccessIncludePath /home + OnAccessExcludePath /home/user/temp/dir/of/your/mail/scanning/software + OnAccessPrevention yes \end{verbatim} For more configuration options, type 'man clamd.conf' or reference the example clamd.conf. @@ -909,8 +951,8 @@ scans within archives, mail files, MS Office document files, executables and other special formats. - \subsection{Licence} - Libclamav is licensed under the GNU GPL v2 licence. This means you are + \subsection{License} + Libclamav is licensed under the GNU GPL v2 license. This means you are \textbf{not allowed} to link commercial, closed-source software against it. All software using libclamav must be GPL compliant. @@ -1777,6 +1819,9 @@ \item Samir Sapra \email{}, USA\\ Role: ClamAV developer + \item Mickey Sola \email{}, USA\\ + Role: ClamAV developer + \item Alain Zidouemba \email{}, USA\\ Role: manager, virus databases diff -Nru clamav-0.98.6+dfsg/docs/clam.eps clamav-0.99.2+addedllvm/docs/clam.eps --- clamav-0.98.6+dfsg/docs/clam.eps 2014-12-18 21:43:18.000000000 +0000 +++ clamav-0.99.2+addedllvm/docs/clam.eps 2016-04-22 15:02:19.000000000 +0000 @@ -1,1049 +1,19960 @@ %!PS-Adobe-3.0 EPSF-3.0 -%%Creator: GIMP PostScript file plugin V 1.17 by Peter Kirchgessner -%%Title: ClamAVLogo_med.eps -%%CreationDate: Thu Aug 28 12:34:51 2014 +%%Creator: (ImageMagick) +%%Title: (clam.eps) +%%CreationDate: (Thu Jul 8 21:45:41 2004) +%%BoundingBox: 0 0 353 347 +%%HiResBoundingBox: 0 0 352.67 347 %%DocumentData: Clean7Bit -%%LanguageLevel: 2 +%%LanguageLevel: 1 %%Pages: 1 -%%BoundingBox: 14 14 265 265 %%EndComments + +%%BeginDefaults +%%EndDefaults + %%BeginProlog -% Use own dictionary to avoid conflicts -10 dict begin +% +% Display a color image. The image is displayed in color on +% Postscript viewers or printers that support color, otherwise +% it is displayed as grayscale. +% +/DirectClassPacket +{ + % + % Get a DirectClass packet. + % + % Parameters: + % red. + % green. + % blue. + % length: number of pixels minus one of this color (optional). + % + currentfile color_packet readhexstring pop pop + compression 0 eq + { + /number_pixels 3 def + } + { + currentfile byte readhexstring pop 0 get + /number_pixels exch 1 add 3 mul def + } ifelse + 0 3 number_pixels 1 sub + { + pixels exch color_packet putinterval + } for + pixels 0 number_pixels getinterval +} bind def + +/DirectClassImage +{ + % + % Display a DirectClass image. + % + systemdict /colorimage known + { + columns rows 8 + [ + columns 0 0 + rows neg 0 rows + ] + { DirectClassPacket } false 3 colorimage + } + { + % + % No colorimage operator; convert to grayscale. + % + columns rows 8 + [ + columns 0 0 + rows neg 0 rows + ] + { GrayDirectClassPacket } image + } ifelse +} bind def + +/GrayDirectClassPacket +{ + % + % Get a DirectClass packet; convert to grayscale. + % + % Parameters: + % red + % green + % blue + % length: number of pixels minus one of this color (optional). + % + currentfile color_packet readhexstring pop pop + color_packet 0 get 0.299 mul + color_packet 1 get 0.587 mul add + color_packet 2 get 0.114 mul add + cvi + /gray_packet exch def + compression 0 eq + { + /number_pixels 1 def + } + { + currentfile byte readhexstring pop 0 get + /number_pixels exch 1 add def + } ifelse + 0 1 number_pixels 1 sub + { + pixels exch gray_packet put + } for + pixels 0 number_pixels getinterval +} bind def + +/GrayPseudoClassPacket +{ + % + % Get a PseudoClass packet; convert to grayscale. + % + % Parameters: + % index: index into the colormap. + % length: number of pixels minus one of this color (optional). + % + currentfile byte readhexstring pop 0 get + /offset exch 3 mul def + /color_packet colormap offset 3 getinterval def + color_packet 0 get 0.299 mul + color_packet 1 get 0.587 mul add + color_packet 2 get 0.114 mul add + cvi + /gray_packet exch def + compression 0 eq + { + /number_pixels 1 def + } + { + currentfile byte readhexstring pop 0 get + /number_pixels exch 1 add def + } ifelse + 0 1 number_pixels 1 sub + { + pixels exch gray_packet put + } for + pixels 0 number_pixels getinterval +} bind def + +/PseudoClassPacket +{ + % + % Get a PseudoClass packet. + % + % Parameters: + % index: index into the colormap. + % length: number of pixels minus one of this color (optional). + % + currentfile byte readhexstring pop 0 get + /offset exch 3 mul def + /color_packet colormap offset 3 getinterval def + compression 0 eq + { + /number_pixels 3 def + } + { + currentfile byte readhexstring pop 0 get + /number_pixels exch 1 add 3 mul def + } ifelse + 0 3 number_pixels 1 sub + { + pixels exch color_packet putinterval + } for + pixels 0 number_pixels getinterval +} bind def + +/PseudoClassImage +{ + % + % Display a PseudoClass image. + % + % Parameters: + % class: 0-PseudoClass or 1-Grayscale. + % + currentfile buffer readline pop + token pop /class exch def pop + class 0 gt + { + currentfile buffer readline pop + token pop /depth exch def pop + /grays columns 8 add depth sub depth mul 8 idiv string def + columns rows depth + [ + columns 0 0 + rows neg 0 rows + ] + { currentfile grays readhexstring pop } image + } + { + % + % Parameters: + % colors: number of colors in the colormap. + % colormap: red, green, blue color packets. + % + currentfile buffer readline pop + token pop /colors exch def pop + /colors colors 3 mul def + /colormap colors string def + currentfile colormap readhexstring pop pop + systemdict /colorimage known + { + columns rows 8 + [ + columns 0 0 + rows neg 0 rows + ] + { PseudoClassPacket } false 3 colorimage + } + { + % + % No colorimage operator; convert to grayscale. + % + columns rows 8 + [ + columns 0 0 + rows neg 0 rows + ] + { GrayPseudoClassPacket } image + } ifelse + } ifelse +} bind def + +/DisplayImage +{ + % + % Display a DirectClass or PseudoClass image. + % + % Parameters: + % x & y translation. + % x & y scale. + % label pointsize. + % image label. + % image columns & rows. + % class: 0-DirectClass or 1-PseudoClass. + % compression: 0-none or 1-RunlengthEncoded. + % hex color packets. + % + gsave + /buffer 512 string def + /byte 1 string def + /color_packet 3 string def + /pixels 768 string def + + currentfile buffer readline pop + token pop /x exch def + token pop /y exch def pop + x y translate + currentfile buffer readline pop + token pop /x exch def + token pop /y exch def pop + currentfile buffer readline pop + token pop /pointsize exch def pop + /Times-Roman findfont pointsize scalefont setfont + x y scale + currentfile buffer readline pop + token pop /columns exch def + token pop /rows exch def pop + currentfile buffer readline pop + token pop /class exch def pop + currentfile buffer readline pop + token pop /compression exch def pop + class 0 gt { PseudoClassImage } { DirectClassImage } ifelse + grestore +} bind def %%EndProlog -%%Page: 1 1 -% Translate for offset -14.173228346456694 14.173228346456694 translate -% Translate to begin of first scanline -0 249.95905511811029 translate -249.95905511811029 -249.95905511811029 scale -% Image geometry -250 250 8 -% Transformation matrix -[ 250 0 0 250 0 0 ] -% Strings to hold RGB-samples per scanline -/rstr 250 string def -/gstr 250 string def -/bstr 250 string def -{currentfile /ASCII85Decode filter /RunLengthDecode filter rstr readstring pop} -{currentfile /ASCII85Decode filter /RunLengthDecode filter gstr readstring pop} -{currentfile /ASCII85Decode filter /RunLengthDecode filter bstr readstring pop} -true 3 -%%BeginData: 46756 ASCII Bytes -colorimage -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -k5PGZJcERds8(jWJ,~> -k5PJJrIP!crrM!1jo9i~> -k5PJLrIP!crrM*7jo9i~> -k5PJSq18R_rrMW_jo9i~> -k5PIgdXhG8rrJ7qjo9i~> -k5PIneq*k -k5PJRmXbDUrrW#\q;qX,~> -k5PI\M1P]ErrUSVe)gU[~> -k5PIcPC`bOrrU_hfB*$_~> -k5PMXjSaZ0`;]l'lfA(r~> -k5PM-6LfX,`;]jQEod7N~> -k5PM1;Y#D=`;]j^IcUNZ~> -k5PM^iU;?t`W$#;i:>t/J,~> -k5PMV/!,>^`W$#),GjK$J,~> -k5PMW4dgm$`W$#+2Qc'?J,~> -jo5DFi;J6,`r?,*i;)I6J,~> -jo5B[-1ZWe`r?*U,LkfSJ,~> -jo5Bj3:h_$`r?*b2V@*jJ,~> -jo5DMi:) -jo5C:,EdWXa8Z7u,;/KHs*t~> -jo5CE2Oo?ua8Z8#2F-ios*t~> -jo5GUi8OWcs2b3Al/:abs*t~> -jo5Fm,:r86s2b3AAg:F -jo5Fs2EpS\s2b3AF#IXjs*t~> -jo5GZi8F!Rs2k9CpYausj8XW~> -jo5G=,U7eis2k9C_]pCTj8XW~> -jo5G@2`?PEs2k9CaYl&6j8XW~> -jo5J_jP\tmJcEmm"6JJ!o&Kb#~> -jo5JV4X23(JcEmm"%OR\U>u9(~> -jo5JW:,Y#cJcEmm"'7B=WoO,0~> -jSo>Ii8EdLs3(EBnc%GHpuDC)~> -jSo -jSo=(2E#,ts3(EBUAd%NdGt7W~> -jSo5KrnmeLJcF!p"o[E -jSo4?rZ_ENJcF!p"n!re,<#5Ts*t~> -jSo4Ir\abgJcF!p"n+Z62FmK$s*t~> -jSo5Qrnmh;rIP!orrD?`huN$$s*t~> -jSo4irZ_G%mt(Marr?j6,62<7s*t~> -jSo4or\adInU^_crr@9B2?7gXs*t~> -jSo8XiVqa8m",2_rrD]ihuN9+s*t~> -jSo8@/,ganH\)4CrrBA',64"gs*t~> -jSo8B4oR>>L4TBNrrBV.2?9?.s*t~> -j8T,@rSR\M[/UF0q=sXRn*fW-qW\@Nm-jE6p%\C^\,Q[2j5AkQiqMI4J,~> -j8T*Or?D<[[JpR2le'ChVN-X\C&2WPB7,c'Vn1+-mesZq!V/,H,65F:s*t~> -j8T*^rAFYt[JpR2m+]gsX-AftEVab`DhF=BXM3$;n,9cr!V8h[2?:YSs*t~> -j8T>Pj58eQj8HUi#6";emH`oplJVs.kNhR-q#.o+!:0XB!oi>=ir=N~> -j8T+1r?D>'o"=u-rU7q+JoF[Rl7N9. -j8T+ -j8T2Se`6Ye!:@Q$"Sq]Xki:OY"Q\h9p%uW+!;6 -j8T+gr$)2k^]+Gh[#83Qh_#'d5\,qfiPPTp\GRQP9DmfLJ,~> -j8T.o2#T<4MSK/ogUNAW8)H<14%a=S^Z*-1!5ACi!]O*Vir=N~> -j8T25[dsCT!;4;1"8qiYkLJMoiof_&r5\g -j8T,(q]c*P`;]u)\Tq:2eh.(`>Cs`Xa8Z2)1]/Ht>N,U4~> -j8T2+0KB"h!5QPQ"R<[N@6<%#"@6RS`U(YF!UE/Q2?Gfo?K(p7~> -j8T5'P4%?/huVm:aSuA>o'58\i -j8T,+q]c,!n]:_4iMCKRc7T2]GcU2Rrr?X-,62K;s*t~> -j8T2-.ldJc!Cu_%rr_;]G=0Y9"%IdEmE5G/Er@lt3A,%)s*t~> -j8T5A9AJ\.huN#brr`2kl/TkD"6Ab?rQbECo)7JKkN,HgiW"E~> -j8T/A/,LOkA]t)Ukd"YYa=[Q]CUrlYrrAnm,68sHiW"E~> -j8T5C/iGZe2?7d@rr_MoCIQ<)"&*aJn':q5Xo10X2ZY4`iW"E~> -j8T8Z3Nqu1rSR\GcMmt>m,PtA!p&bDdJj4ArSRh9nuE7tiW"E~> -j8T2Y7NqXR!1_C8"9-/b4i/fQ6\Ee6rrLInr$24b!2nfUJ,~> -j8T5Z7P?b!2?9Q!rr`8?K1Ed=!_nR%dJj6s3W1i<3%lDPiW"E~> -ir9*IEUr,fhuVg4df0CIoB3gG"6/S -ir9$^+o -ir9']-oh,_!BSi\rrVht@(eQ&4_qe.ec,[K;uANU3$o`eiW"E~> -ir9*t+O'9OhuVp -ir9%#+o3Da5P -ir9+%+Yu+U2??YJec,^7Q;P.P!`u,dfDbhpr&+[;0HVS&iW"E~> -ir9+I"-i?QhuN)prrW&bij@YGjR<$#rrDTei!&0.DZN,piW"E~> -ir9%F+o*>_DV+mihhO1u/cnD(mFqR?S,"91+[>SWs*t~> -ir9+H+"]JL2?8*UrrV/>6F8`S9ptG'rrAkl2?Yre+$]AUs*t~> -ir9.k%7/h3qqqJCgA_6Pmc(J0!p&kLh>[KLr87b9m_U%_@,V'8~> -ir9(i+X-Y+!0Q"8!pk_&YV#uDPk -ir9.k+=&d&q_eGCgA_6AN^Bs1!_f'Uh>[Juq_eR:1*IcJi;\<~> -ir92<+9eh,`MrUJsMi;r*4hu<`Sir%^ -ir9)9,U)q-!574g!q_sKX=aNKXPa$Yj"pNVrZM8ni;\<~> -ir9/;,Te[!qDJ>jh>[QLTM2FI!EZP`rrM7Nq_eR:.3B^bi;\<~> -ir92V3sAgPjnms:iqqX5!VPQQi;r-9iVro?qqqYGdN]JMVr7T*~> -ir9)S3?e/B!AiZkrrKZ(W%J*Tb2WF%r(Zu3rZM9>i;\<~> -ir92V3?KS,2u>K67-!2)!PDF23<<[8ir9&X?2HM`2_uU"+fF8uJ,~> -iVs'i*>5sQhtu=4jSe* -iVrsf+X-V*!C-&4rrLV_Ub2[ij5g4?CAB+R+TWe1i;\<~> -iVs$h+WrHtqDJ@NnDaHKf5RNG!IX"irr@9>2?c&i+!DiOi;\<~> -iVs(A+U2`MiVMI4l/VdDn=eeAj7DF5!:]mD#N+jn-kda[n_jFt~> -iVrn -iVs%@+Wi*lq)/4mjSo;[S33N+!D0KWrrASc2?l)r+Wqpan_jFt~> -iVs+k+Vkm8n)+!"!:AqK!VkiLi;r3?l2LbSqVVS:oo&kn+^3e'J,~> -iVrnerZV"\!.F#0!RXo=/cf\Hl2LaZp`o_\!*\:[J,~> -iVs(j+Wqm`3;GH4M!"^ -iVs,9-6iP>n)F0$!:]4P!Uo'=i;r$2li-tYq;;JCfesHf+c5+VJ,~> -iVs#6-6XQ+,64%nrrJEAS1Xh-WpBZc^*NIur?2/thuA3~> -iVs)8-6XH[3;>B3TBQ:US3EH'!D9N\rrL%sqDJO:1aF1e+c5+VJ,~> -i;X!J+VuEHm,.Ws!;5[X!rD*>RGe25rpKdeqVh;/#N#'9"=#'5\DR=:~> -i;WdDrZUt[!4M4n!Tn-a/cg=mmf*=B.ek7d+TT%0s*t~> -i;WsI+Wqpa3;>B3]^,Ruk]3%N!J:%5rrLt=q)/:6.j+a6!4^qdJ,~> -i;X!r+X$l2o&BH&!;>g["7k=-igA[*k4\ -i;Wdlr?:n[!@GJHrrKYsQ7`26amf<2gc+sPr?21jkMQ;i~> -i;Wsq+X%pV3;>B43Pt1`!PD'k3<<7+nG`OH8GP.K2`;m&+X&;thuA3~> -i;X%S+X%R@d-olfhuVg4n,ELSg>LtWi<&#snFHS[rT3k5"6&m -i;WeLr?:kZ!@uairrA7G/c_j@rrM[^p*9MZ!)MJOJ,~> -i;X"R+X%sO1H>.f!Bo0*rrJKHP;rWEo)Aa^=njlV3%Z6O+TP -i;X&8+X&*2Hg]nghuVj5o)Agji7HhMi<&#qkOecTr8m_3#O0hu&L/GBIbt*T~> -i;Wf1r#tbY!ADmlrrMe-O=gN]o`"sW9(jM-+TQuJs*t~> -i;Wf1rZM=b.QI/\!C><-rrVn630?3$KCo0Elrj*A"#i%]+T -i;X)\7Nioj(rPh"ptu25q=O[ipY+6Sifi='inWPip\t9lk4mj;ht<0:+T -i;WiU7f=M',69gUo`"sM=cP*8BBo6k!UWYU,PrVaYhoD1~> -i;WiU7f=J21-#"d!D;)[J,~> -hu -hu<\&r#t_X!A<(!rrL(uN%P-&g\LjMmnEC!r#l(jlJDPk~> -hu<\&rZM=b-ogoY!C5H6rr^>.3&lsZ!]X*5q>UKc>k^,Y2`;m'rZM:llJDPk~> -hu<\ZrZMC`'>!_jpYZ)4p\=akm*4#3hN6\!ini>>oDAOgq;q>."7h`Y,Q8hd=Pa"-~> -hu<\Zr#t\W!BJ-orrT_e/W24^5gB3+!S9j7,PrVa=Pa"-~> -hu<\ZrZV:a!AHJ+2??Fmq#:H/4?,<[3`!~> -hu=#G.Nor[#$'pLhtGt.pA4dnkf_?(gYh,kjT+;2i=4o5lK[Wsjl57XgXagBrVlooj7hI7hrrfT -&,dXOQ/2Ij~> -hu<`?.f:I^,69((qYpVu/M32>r@e""!B%[krrL\2oHX5V!0uC?J,~> -hu<`?.fLRm+!rr>2?>bTqYpc(2`E]U3B@("S2pF,r]1! -hZ!RXrZM@`"K1h_huN?Grsn)2cICe?p?q)(jmhcti1]*Cn)i0Le(*=?)4 -nrEnqr?20ih>`!~> -hZ!RXr#tVU!2]Vn".Lko0)[I&0)mSs/cdUXr@S%%r\+7'"YI+]s/d^A,PiP`e(t%S~> -hZ!RXr?24a00&S^!3Q2!%%oO<3&s)a4?>J_4?T5r!B`FB2\%f-3]oMc3B/uW\GuT947tK53%H*K -+TU!Is*t~> -hZ!SGrZMFi%6`M3ht>n-mJd+sjO2]`!~> -hZ!SGq]YMT!.b(K!1Eg=">;>W.45$?![oQPTe6C".jb-="=,9B.P:WQ""l7:V",c-+TX\#h>`!~> -hZ!SGr?27b,W7UR2?8[7rrAYi3=@l,1b^L2-n-c*4?B2s&j/!!,9\9W-7UZ)2`s2`3&eLNoJQe2 -1a+"?+TX\#h>`!~> -hZ!T0r#l.BK(S$oi"PJShP[WRJlt)N!!*B5#QP:&mGau$']SPe$ih%Z(D[Jd!"q7lFa^1;gYqe_ -"7^pC,Q/bcIbasR~> -hZ!T0qB>DS$"2qi.Olko,U4K1+9N]..5.GK""u,H+T3J^+9s,:-7CGt,pDk)qB5ifh#Dm~> -hZ!T0r#l+`.QI#X$?,1)1,CU9-6s`Tr>u+^+"oaO3 -hZ!WS8,aY8,8D$9nDEos$0($gGnpA_#n@gM+U')""gIRUVVq[Bf.[IUq]Q4i)uosGF2m>$p##u1 -m`QO_r#l'\h#Dm~> -hZ!WS8,FJ",6KVK.3\X4qB>k]!@fb!/d!aY,9Zb)"s=p0-7L2`ng!uS!6 -hZ!WS8,XS5+<`O#o/6_=2CfmjrZ;+_q]Yt]!AZd63cnqB5jZh#Dm~> -h>[J/r?2=i"C16RhtGt8hr -h>[J/qB>DS"sG3<.OH;\p`TY\,c!$o0.A%>+o`Yg+Xeii,9cS%q]Pu)q:u"#~> -h>[J/r#l+`-9(KRs#1':.3K]Tq&oh^-9=2b3 -h>[K$r#l1_"J,2DoABo9lfGs#*s<0#r#l.Z-I2"Uib_Uo'PGoo\]l/o!K&K -r#l&mg])d~> -h>[K$q'#8Q#9b?C/LDV`+Sd/]/MEtR!\YlBq]Yt^"X>EI.jQ;.,P`J_KA6EV~> -h>[K$q]Q"_/NE8Y"unV$.NolVq]Q%a+ZDHZ3 -h>[NT8,XS7,7u9Omb[Qn&E2X:lc+<$!sf;F%LiD+i97&s%I;+m!!il8"<^R%ddleqhuqs#l:qW^ -+TTC6s*t~> -h>[NT8,=Cu,QAni-n[)"+o"q&oaTg])d~> -h>[NT8,OM4+ -h#@ABr#l4h!FG*RhsoV6j6lNhY^p:T3C\DBlenZ!%H-R(UQCS/YfQ#"lJg^jhuiV=!$M1_!C6V< -s*t~> -h#@ABq'#2O%3ZrE/M8P%,pX]\-7pmH/dsBb.4?Sn.kWJ,-6j]%,PiPa5lKI;J,~> -h#@ABq]Q"_-9(?N$TU=/1+Ob!,UFs"3i"bC3]JfG/h\t<3]oCi2?Gig+8[2^5lKI;J,~> -h#@E2,lAef*!)l.n)+T2i9^%"jl,+Um-EQ*iW%gAlgjE/n+,o.hs]J,hsec2&gR;t!0,_4J,~> -h#@E2,l/\P,QAnh,:G&pr@\1*0;:'"0/3AY">)&K,9cG!q&o`tgAc[~> -h#@E2,lAef+&+1Edn<+TRMUs*t~> -g]%7Sr#l4g&LGZkhX05%ioC%"!90X0ro3;&"lJV.8d6O;+TU -g]%7Sq'#)LruhOk-7LGq/YXj'0.S@t,pX]Y+m^HK+TU -g]%7Sq]Q%a,;M7F2ZG]931`,13;tl%2ZG]:,p<%-!8Q<.J,~> -g]%8Uq]Q+f"&J.EhripliTT2&hrF6U!;[i==5!V(~> -g]%8Up`\rJq]Ptj0;U9&0.nRL+mL -g]%8UqB5q_,r[dG2PE.n2?Gif+8R,\=5!V(~> -g]%b:n"7rc))#>BUVqM*#~> -g]% -g]%62?5\23<2&%2?Prm+<^M(!2nNMJ,~> -gA_/*q]Q(e((R\BkMW,okhlX$n]W-d,l8_c3VM/+J,~> -gA_/*pEA]E![0'IV(Mco+m1*F+TXUsg&HR~> -gA_/*q&oe^00/2R!'$c7k;EE%1Edn;+TXUsg&HR~> -gA_3-,PrVf,7Z6SnD -gA_3-,PWGF,6B#80;gE(0.S4/,PN>]P1]eb~> -gA_3-,PiPc+ -g&D%`qB6"f!DV\@hs''qiT]8'hra?F!;Rc=.d5ObJ,~> -g&D%`pEA`F![/g@VChlr+m:0F+TX(Vf`-I~> -g&D%`q&oh^,r[dH2PiD62s<.$3%5sF+TX(Vf`-I~> -g&D&sq&on`!-dkohs0-riTf>*hrXHi"WJ]_+TR&Es*t~> -g&D&sp*&WE![0$HV_.uq+mC6F+TR&Es*t~> -g&D&sp`T_].5s3M2?5_63U&F)2`N<0+Sd/\JCjgO~> -f`(q[qB6%f*!D8pjPT:]V;^au#2eG5V[4.aqB5knlIZ&d~> -f`(q[p*&ZF![/sFW@e3)/*A/O+TX:^fDg@~> -f`(q[p`T_].lfQR2?5\63<2&(2?Yru/fu53+TX:^fDg@~> -f`)!80_ups,8LKXoAnfpi2>Q"i!/*!o;)d,,l&S`Xk*N&~> -f`)!80_ZaT,68r5W%J-)-m@h"p)sF -f`)!80_ljo+ -fDbiDq&oqf&eUr4khb[aVr@"##2\M;W"0Ldq&o`Gec1.~> -fDbiDp*&WE!A,t)/cm[S+mL -fDbiDp`]Y[!\QGklSbY$!&s4%"#qnT+S[)[@+G:-~> -f)G_Iq&oqf&dXEale_$eVr@%$#2\_7P6_dHq]Yta!?pOSs*t~> -f)G_Ioc`TF!@oh'/cm[Q+mUBH+TX1Xec1.~> -f)G_Ip`]Y[!\-/glo"i'W&Xi:m5Fu'!\5?8p`TYik10K^~> -f)Gd&,l&Sg,S^H!h=KX`mbk&&n)+H.iUYlD"qr9Y+T`c%UX] -f)Gd&,k`DI,6B#;0<6]-0.nLnm3D6H!0l"5J,~> -f)Gd&,krMc+ -ec,Z#+8I&b,9HnF`:W0Kn)1/'nDFQ/jn6YW!$*<\+Tir%2TaJKJ,~> -ec,W%oHETH![0!GX"FK-/gMV.,P<2]+ -ec,W$p)sP\,Vh> -ec,^J4!=8@"UGj+mH`X!i2>Q(i!&!$n!k=#pE9Y[&V[LTec1.~> -ec,[I5P$&e,6B#;0<-W+0.%k3,P*&\+=Jnlec1.~> -ec,[I5P?6'+!E-n2t/^*32eh;2t8d/2`NB4+8-i[+"fP&ec1.~> -eGfSs'-m8q"saraFQW#Ko&-G)o&'`/lfs0('.!;q":mu+Vmt:WJ,~> -eGfPA+S-cF,69ALW\+?+.3\1*oH=>[,V(BUec1.~> -eGfPD+SHr]+ -ec,d*Tf*W1p`Thd)? -ec,`O.jH2.+n?iZ+=Jn@/cd7Ao- -ec,`R1F++:+Tro0,r@UQ2?5\53<2#12ZG];-6FB&+TsJU1G[2*s*t~> -f)GpPV5nYM+86o_,9QtUhd,7[JXY,.f"f)L7~> -f)GmN8M)>5nfdWM"!AjA0;pK*0.nLnoHWrN![&a?r[Rt[f)L7~> -f)GmN:GaREoH=;Y,rRaT2P`>52tf-32`<')oH=D\-8m\:12>D?J,~> -f)Gp&Q_L*.(\AjR!*&(DhtQ''iV276j77a$*$b/##TXM7^oOB,S)r9%J,~> -f)GlO.k<(onKITN"!Aj@0;^?(0.eFlpET2O![&mCr@7ljfDg@~> -f)G`Nr\=L"+S6fZ+!ij)p,8X*!&sX1!]VYMo-"/X/iWbc!A_mNs*t~> -fDc*RTp_OVB+?0Z+TrkeKCRssi1Ap(i!&$,[Lj?$ocXSQ2RTupVkT`efDg@~> -fDc'O7Oou@-6Vh%q'5n_![]NQUb2d'/gqqfqBPMR!?`Wa.f`u/s*t~> -fDc'O9JS@[.Ne7*!Z`aMpbi+2TK*!2q)/=60-DD0+Tii41cG=h!A\6 -fDc*4Q'n5KNYW`0+Ts#)(s;:Bi18j(hur$) -fDbidr[S%%.3S.(q]l+a"!f?L0;:*!0*<^N+X-b.nK@rV,q]!E!8#m'J,~> -fDbier\=O5/g0a/ru_=u2u5E431`,23&g^m!]MGJo-"2Y-oNp]1]K31f\$4S~> -fDc)RQC=JHV`>La+Ts%mL[=%!i0WF%hui;g-kc.q$6U(E_R$DEUn4$df`-I~> -fDbhOr$qdm+RpWS,6]58,q1H"Sh::%/h/7o+X&'TnK@rV.5(KJ!-d)qJ,~> -fDbhTr\=R41F++7+T``83;bZ731;i.3&ggp"#i"\+S-`Y+>,Q/r\OR0!.3AuJ,~> -f`)6=P*VT1VRK8/o-"8G?fg;*i0<4#huiJU%ik3b$Qp1Z`NubJUn=*Bn_*qm~> -f`(uu.fCk!/L2J0+U9,5+XABa/h`YG"YVJY.4$5.+T`c90)I."0'(^cJ,~> -f`)!!0`Eg01H$R%o-";\-9!h@2`R*`"ZSG"3%lEF+TiiB2`1Lis"XU4jk9Za~> -f`)8bPF%f5VRU+J+S6fZ$tAAZOPp -f`(tl.fCk!/LDV2+U')=.P3;,Q7i.i!A,bi+TX)GqC;Q+g&HR~> -f`)5"0JYC>1H$[)o-"2X-oa2J3 -g&DENP*;9'U8PJ9'-Qrk"=+,5mc'>e"6AT9#4s&I)Cr&0['-L,Tq%FAr7_1$~> -g&D-<0e3,P!\G`Ao-"5Z-nm;-OY6Ye!@/fY+TX)GqC;S9qV(t"~> -g&DBD2D?mA1G^p>+S-`X*A'C73WD,@,p2b Y6I2`*?I1]B-19D[BBJ,~> -g&DE(O-H''U8PV3%NtHg"="g"aRG8L"Q/d;" -g&D,M.OtBI!\G]@o-"/X.kco8!\YrEo-"/X.PCNI!5I7fJ,~> -g&DAV0JG7;1G^p<+S6iW+9=A_N]@/(0-Bd/"s>Z[1c.!ErA"AggAc[~> -g&DAOOHl6*UStUm%eLnH!-RhlNo:-*i^*qrp)she'8si;YcF[rSX>YHgAc[~> -g&D(L.f1^s,Tu_&!ZraBM_5#T+S6fY+=Jl<.faA=s*t~> -g&D(Q0`Ej-1BKB[+7p]X*@a123NW1c.!ErA"@kgAc[~> -gA_NBMij9mStiNc0,O=*"XFL.d-]bNi<8_\$l1)]+Ueim`j;nNVkTcMQ'M!rs*t~> -gA_6'.OtBI""buI+S?l[+ -g]%ZZQ]7,nR\$@\=:ZYM+Tqdko&S_fi -g]%BO7Ofnd.fq:K+S?lZ+=8au/d!aZ,Tl\&![&pEqC;RrAD@-7~> -g]%BO9JA1"1'9 -g]%W@LQ.I_S"?aJ,9$;""X=+Dk3Cl^iXJ_hcR[0(rn_F.p~> -g]%9"r[Rmt!A,en+Tii4/h`#5""u5N+SHrZ+=-b5!\,e`h#Dm~> -g]%9#r\4=,"#MYS+SHr\+!is/LcGQ"2^9F<+Tif52E(Ojr\=O/1ZmKmJ,~> -g]%SmM2d[aS"R&p%JM"L,RtsAo&,>_"lT$\$5Xr^+UfA1QFs>tUS"!@Oc7Q?s*t~> -g]%84r[Rmt!\G]@p)sM\+Y>@%/cm^V+S6fX.4tEIs!e#Gh#Dm~> -g]%86r\4=,!]DJLp)sM[+ZDN<3 -g]%SKM2mabS#)oC'DN^S,9-odp#(Va"lSD4JcHqg+UfG*EPAQRUS"!@Oc6Bss*t~> -g]%7Nr[Rjs!@&`\+T`c90SD%[0.%h8+T`c5/c.'u.KF;?s*t~> -g]%7Rr\4@-s"a[%+SHr[*ABX03o*VLWX+"B2J1]B000E?(Is*t~> -h#@`IKSb_PQCFk;,96J%"<[_jp#Und"lS\1;?eB@+UecZ_6'Z3T:)".NKEqks*t~> -h#@E3/cI7".fh4OocXAY-81!(""u8P+SR#\+=/W:/,q("47_5-J,~> -h#@E31&`m,1''3cocXAY.m8MF"$AUk+86o[+"0)I1]B000EFH1h>`!~> -h#@`-KSb_QQ^b%7(EiMs"XFL9fBhCJi`!~> -h#@AWr@7gt!\GiDpE9V],:tR#/cm[V+SR#\+=&Q9/,h!uaPHlH~> -h#@DZ0E*[*1'09c+SR#]+!`g,JiNoq2BX+:+T``42uYW41B&s-akcuI~> -h#@_aKSb_QQ^b%7(*NDr";hHPmbiZT"8.cW,P`Jk%n="2Vk]lPQBI5_^YSp?~> -h#@@ur@7gt!\GiDpE9S\.kcH+""l8U+8?u[+=-e6r[Io2h>`!~> -h#@D$0E*[*1'09c+SR#\+#5s03 -h>[l]O+iIOPF%c>M\[H3+U'(oDs6'9J`-ark`!~> -h>[NR7K"_9.fq:O+S[)]+=8am0)mO+0.nIlq&oe^,VAmDr[InPh>`!~> -h>[QT8MC&ss"XX40-L$5!ZrmSJN<`js#L0,+8I&]+"0)I1]B0/0E>J9s*t~> -h>[lFJ;&l@PEq]=N>`r:+U0/+.ECK'hgs_hht=2^)u:]e$rk!CVk]lPQBI5aM>,m,J,~> -h>[K*r$q^s!\GiDpE9Ph07bbT/cm^V+Sd/^+=&Q9/,h"!2=fW(J,~> -h>[Q-0/*;Ys"XX40-L'6"<\pI3B2RMs#C-D1*?<8!ZrgLr\OO/r\+@6o%sCs~> -h>[l$J;&l@P*VT9PpdUK+U0%lMWWOFhLXVhiT991"sa$h%NlC!]W7s*T:)".NJW;@hZ&*~> -h>[JIr$q^s!A,er+T`c707bbQ/cd7@qB5n_-8#*Fr@.f_hZ&*~> -h>[PM0/*;Ys"XX40I-B:"3B~> -h>[kcJ;&l@P*VT6U-07h+U95&2p9q+g>7D>s5=(JYm;?I+V#S1M7]gdUS"!@Oc>3M^>Am?~> -h>[J%r$qXq!@&`a+T`c2.tK>M/cm[U+Sd/]-nY -h>[P*0/*;Ys"X[41*n(?+U&r52`WiWJN<]i!^&4[qB5n_/iN\br\FI,!AB\os*t~> -h>[kPJ:rc>P*VT/ZWdk8+U8=8hpL!-h;EkC"QA;#>6XpJ%N6gq\#Q@#Ssbn,NJW:dhZ&*~> -h>[I\r$q[r!\G]@q]Q%a.5!3'0)I7&0-qb<+T`l -h>[Ob0/*;Yr\=O5-m/=0!Zs$Tr]#HhrAap?-m/@1"!AgE2Z>N31B&s.065qLJ,~> -hZ"&VL4Fu7Nfo]sT!3b]*W@2h,7HTUe^2k!gu.1Di>LS.kIMQH,9\3T#[+jGWhuM^R?itpLP(rl -huA3~> -hZ!WD3rCK,.fq:N+T*Ac+ -hZ!]F5;+\h0`Eg/2D$'L+T``32uP^e3W;#A3'&i<+T3Gc+"0$(r\OO/r\+C, -hZ"MRI"6p-NKTTrSu/GI%jN5B(Cd%jbg4ejgYRM?);j3%jG -hZ!T'q^VLo!@&`c+Tro:/hJZ+0)@1%0.7tA+T`c9/c%!r.KM -hZ!T(r\+7)r\FL0!@8ie+U&u10KD'Nr]#Hhs#L*=#s'XY+<_mN+>>bR1]9*.0ENmdkMQ;i~> -hZ"M>I"-g+NKTQpSYEBK&JHB%"bP4GbKnYgg>7D>);a)uf@k'D#n-u[_m->CV4jHIQ'%#\K7Dh: -s*t~> -hZ!S^q^VOp#V@JJ+<_jM-nbKNJM-^M"stE7+ -hZ!S`r\+7)r\=d91bTpn+WqjY3;tl93.X*i3WD&?3B/Me*s*rN2#]<01B'!-0*';Ts*t~> -hZ"P,H[g['NKKKoSY;sgG8gZ,I*TdQbKnVfg"kS=i>UY1g"+R$dtL(MHbd1rXf8.jSX5S&N/*%8 -c/8PO~> -hZ!S?q^VIn"XYB8+XeuA/V,PN0)dF+-mKr`/hQlLr$h]MhuA3~> -hZ!SBr\+7)r\FL0"u[qR+!<'nrAX^8JN<`jr\t0B3%ZF%.lK4@r\OL.r\4@*!3tG]J,~> -hZ"RmH[g['N0'`f\> -hZ!Rtq^VIn">))O.k^]NJM-gPr[e7*/M/S,pac7l!0H+ -hZ!S"r\+7)rA"X71c@*A1,q3Nr\sg9JN<`jr]'p:"$&:u3;tc61]9*.0`Nd+PMcCj~> -hZ"OYH[g['N0'US-f@8-kai;<:]=5,NXJ_hcS!TA#MhZh4 -W8IW*~> -hZ!RVqC;@ms"+4'qCR7Nq_%[rpac7l!-I,uJ,~> -hZ!RYr\+4(r\FI/!B)n82Z>Z73.X'i3W;#;2ubc:2`CXlr\OL.r\4@*!-mE$J,~> -hu=_pKmS9#L5V.XQ^aVCVlR#,\%98h`Q??Me(<=/i.^,/i8*, -hu<`R6M`2-/,1]I0)R?t/bgjo.KEZ0s*t~> -hu<`R7fG(>0`Ej,1]9002Z>Z73.X*h3;tl82Z>Q41]9*.0`Nd+?/P[4~> -hu=_cIsQQqL5V+VQ^aS@VQ-f([^s/f`5p-IdFR"*hhL)1io&SDe^;^da2Gg-\[A]FWMcJ^R[0.u -MM6V0MYuE4J,~> -hu<`>3r1?%/,1]I0)[Et/bppo.KN!7i;\<~> -hu<`>55d/60`Ej+1]B612Z>Z63.a0i3;tl82Z>Q41]B0.0`Nd,8c%BFJ,~> -hu=_UG'\UhL5V+VQC=D>VQ$]&[CEoc_oKpEd+$\$hM'o.hV6Z2dEThS_nWjo['6[3VP0QKQBI8c -Kn4Z*o&0Ou~> -hu<`*/c$sm/,1]I0)[Eu/bgjn.KMZti;\<~> -hu<`+0`<[(0`Ej+1]B612Z5T63.a0i3;tl92Z>Q31]B0.0`Nd,60mJ/J,~> -hu=eJFaAIfKo1nRQC4;cdUItgu%+Ii>ph2g"+WubfRi@^:Le[YcOe"TU_C7 -Oc>3NJ:2k.i;\<~> -hu<\kq'u.ipaq%Ls"='upac4k!A` -hu<_m0)[I&0`Ej+1]B612Z5T63.j6j3;kf82Z>Q41]9*.0`E^+2V?sfJ,~> -hu=b@FEr:cKo(eOQ'e)7Uo:B!Za[NZ_8OC;cI17pgYR_E*T#Q'e^DdeaMbp.]!o#LX/DeeS=#S( -NJE.:I!FK*s*t~> -hu<\\q'u.ipaq%Ls"='upac1j!6a=#J,~> -hu<__0)[I&0`Ej+1]B612Z5T63.s -hu=e(VCi?$q5g"4^"c-")E^qI7cZ*(+)US"$B -P`UiZK7A5le_pIX~> -hu<\Vq'u+hq(7.Ms"='uq()7j!5IIlJ,~> -hu<_X0)[I&0`Q31]B0.0` -hu=e-F*N%^K85DIPEqZ/USk)nZ*h*S^V[q2bg4_gg"YEDi -hu<\?q'u+hq(:AS">;Ga0JBCXpau:lq'lBHi;\<~> -hu<_B0)[I&0`Q31]B0.0`E^+0!F45J,~> -hu=h-F*Dt\Jqf5FPEqZ/Tr+fjYd:gM]tqY-bKeJaf@o*>jl$R)jRqriaOK_Pk2=hL"68M)j5Al; -hV6Z3dE]qU`50-u\$N -hu<\>paZ%hpatAU#VRth.Ocl'1G@61s"E+Zpau7kq'lBKi;\<~> -hu<_A0)[I%0`Ej+1]9002Z>Z638uq(3^5ed1,_<\3n67h3o;sr3;tl82Z>Q31]B0/0` -hu=h/Ed)hYJq])BP*VN+TVSKdYHkUH]YDA(air)Ze_&X5k2?d,md$cO+:95pT]>Y'i7m2shrj\# -kihI+inrhU+5Yc)f$hshai;34]t(PUY,eIrTU_C7Oc>3NJUVofa5HuJ~> -hu<\BpaZ%hpFY>V$8O:Y&demO'-Ak_fId@]1GUU:1,I`=q(;=kq'lBEi;\<~> -hu<_E0)[I%0` -hu=k%Ed)eWJq])AOd2<(TVSKcY-GCE]YD>&aNMlVeCWF2i90&#p"*UJ!!G[&o]b;ji=+Z,p#WK2 -B4?>%nEo/ri?7(8g=Om&ccaDJ_S3[m[BZm7Vk]lRQ^*\mM1gG.H$$RSs*t~> -hu<\3paZ%hpFYAW%5TLJ!s&N."9AT7-8R@2/da6f0-hGN'c88R0]4SY/b^dk.KG^ks*t~> -huQ31]9*.0` -hu>!qEHHMTJ:rc/2!!)p#rW!%Jlg3Ne -i<8',lCKj0!!?rin_iTh+Pto,f$hsib/_E8]t1\ZYcOe"Tq7^=PE1ZXKR\>oF11$,J,~> -hu<[upF>qgpauFsr@dIh">_J5! -hu -hu>."E-$;QJ:iW8O->ltSY;mYXK]%>\\5bp`lZEMdaR(9`N$8jlgX6"i:>h0ht52:!;H`t!!6-O -kMkG4i8XIV;ucn!"pG/7!!"h,o\f/r-KO:Ki8NVMg=Om&ccaDL_S -hu<\$pF>qgpFZCt">;8S.P:WQmk+\u.L?.N"p>&0&h>Wn/d*sZ&d&76"p>)0%4a6p0)$sm/,1Ro -PMlIk~> -hu -hu>0uDf^,LItEE4O-5cqS=l[UWiiV6\%BAk_oKpEceR?)*=3B2?_lHKlf.Qq"lJb-/cZ%L"U,)1 -!,h;dj5C1!o"Ph -hu<\!pF>nfpalk+0.%hb+">V;0! -hu<\$r\"1'r@n1*rA4F0rAOU5s#CB8+WhgO-ndPC3q>954ZNrOp&tR$!#n*_i].-*0*hO\q#pj# -$o^E?3Se3B@$trAX[5rA=L0rA+@+r%A('Q/M[m~> -hu>:*DKBrHIY!30NffQmR\$7NW3!5/[^j)e_T'[>f%FO5&KMc##RNGEe+2qci:u77i90N-!!N*$ -"pP52!-?NNio(%0YQ+Y-pB:["/_ojQp>IR\iU66_Qtp;S_=-I;f@83obK.]?^V%+cZEL@.V4sQM -QB[JiM1gD-H$=;9i;\<~> -hu<\+pF>nfpFQLo+!;^MrZD=g-nR)*oe$>"1(jW]"p>#2(F_#s/d!jR!sA6$!s&f^1@m-u0*a'X -,palg0/*;Wpau4jpF60*i;\<~> -hu<\.r\"1'r@n1*rA4F0rAOX6%QHHt*?ZLJ+ -hu=h+DK9lGI=['.NKB?iR\$4LVlR#,[CEi__SjL=gjT5DrZV:[#pBl\/W&*PlJgaui<808NrT:W -"oeQ*)QNPthr -hu<\?p+#hfq(2Y#-6N10ru)+c+ -hu<\Ar\".&r@n1*r\OL0rAO[7!]_bOr?;1Z#9b31,:ti;3qkW:5p642p]Ug(!!k&?4lJC(4YI#W73&pjqrAOU2rA4F.r@n1's"4;Fi;\<~> -hu=e+D/aTBI"-d'MiX$eR%0hEVl?f&Za[KY^r"(CV@aXD,7Otp('Pd)&ca29g%4Car8@e9oXY#& -q#q!-!!$'Sp>t5ki'`_@_iR#ooaMu*4]XbMX -YcOh$US"$CQ'./bL4Xo%G][lHi;\<~> -hu<_A.JG=d/,Ln3/h.td+X83='c$rn,9S'O-7pl(qCVk+,R">G"pG/2&hPmmh_#$c1*$Q"p'(U! -(G[Z=/e0Ne-m9ZT+WqO=+Whs^0)$sl/,(LnZ/GY4~> -hu<\Br\".&r@n1*rA4C/r\bHL3AM[!+X83='c$rn,9S'O/iYsSqDeXB/HZ+M"U+u.'f\K?h`1g& -4sU:3pB:[&!#n*_pc/gI3@uBr+<_jD)^$.J2`gjqrAOX3rA4C-r@n4(r[n2Wi;\<~> -hu>^BD/aQ@H[gX%MiNpbQ^aVAVPpT#ZF79T^;A"=8dZdg)urpO^hO#T*$l1!2kf@)jl#+Vi9TPT -!;H`t!!@W6nDE*]#2eV<`AR\rq#pp+!IX?3YDoU`8J,~> -hu<_=.JG=d/,Ln4/gMP_,THe_^;+Ie!urO.+!W3f0DmF)0J -hu<\?r\".&r@n1*rA4C/r\bNN3$fXi,THe_^;+Ie!urO.+!`L#4?EF$"$JaT!;H^#!<=-&528.% -3^5A0!!N'#!sATP62ESR4?YGG*?ZRK#mi"!#Tt382`^jrrAOU2rA4C-r@n4(r[n2Ri;\<~> -hu=q6CN"6;H@CEuM2[O[QC=A;Uo15qYd:gM]ti$a$6UQ5!-e>>rt<=P!"'qn%KT20nF#5niUq^$ -"Si6$!!B+nkht7T#N4S5l"pD##5JE_!"@KJi8NYQjn7>O":-+p%KJo+jkaAF+9=gVeAoPF^qI:f -['6^5VkfuVR?j%tN/<4 -hu<_L.JG=c/,_%*/h%nd,9-]-qu6U'``<'H+X%sN,UtH#r[n7.)?KU;"9ScM1bdT8">__I!!(= -hu<\Nr@\%%r\47*rA4F0r\b$A0-;>^)ut3[rr3AG -hu=k=C2\*7H$t0pM2RCWQC458USb#mYd1^J]"lB]$mZnpIes'TZp"Hs,Td4#E6n4@nAGS4q#pp% -(9[Mqi7[&mhsBou!!)ct&HGu%jl#+cm]82F(a]an0;nLBs!.;W!$))Uf?2"J^:Uk^ZEUF/VP9]Q -R$ -hu<_Z.J>7c/,Ut&,TnR@C -/hSe1.O-&Z,S'l.VtL&h#5E*:*?Z[]qCVFlpF61mal*2L~> -hu<\[r@\%%r@n1*rA4C/s#('?-6ONT!.OeE&%"M#$6p]9+=T643^,5#"8N*'!!Xo=3nH@p4[((k -!Vcg1!#@aZ3B92a1*[e^,S'l.VtL&h#l&<<*?Q^j2`L^orA=I/rA+=*r@e.&!6a=#J,~> -hu=hBBl7m3G^P!mL5LtQPa@i1TqnTeY-G@C\]LWa)Bf)nq#:isSL=IQ,96b-QL+TF!!N-%"TSnH -pu:5`iE"q;gr!#gjaqYq^K!$)K5f>>>9]!o&NY,\CqTq.X -hu<_b.J>7b/,q1%/h6iD!+Yt`( -/LDS_,8pP#NU?TB"_.NU+Xo&A/bU^h.KM*Hi;\<~> -hu<\cr@\%%r@n1*rA4@."un@\+<^_tq#:frSL=IQ+X%jL00DN6!;Qd#!!P&Be2[Xm5q)p:q#q93 -!%:&m4ZFo5+ -hu=hRBPVO-GC"[gKo(bLPEqW,T;/<`XK\t<]#eUi,QpL.pAYNdN#r$<,S:,cK)c#M"U+l=_YE-K -e_p\hjnQ=l!;Qd,!$UOpTdU!^*rm((i;!8SYH4_#U7[sCQ'.2eLP(,*H?F4F -FmS&dJ,~> -hu>G/bU^g.KMNii;\<~> -hu<]%r%@q$r@n1*rA4C/"un(S,QpL.pAYKcN#r$:,Tn*X,Q[]E!rrKY6..as3^GA$!!`9'$igVq -4YJ$%,96b"I,Of"#l@j,+ -hu=eZDJO03FaAIdKSPJGP*VK)StW!ZX0/\6^9f^6(D#9lrs7A*$31tj%0-M,"U"f+WqbT%i(\[JiKY,eIrTq7a?P`^uaL4au'H$++EHM?@tJ,~> -hu"/L)DS&)6^U#hsY4!#R"*#mC)/rr`?I1X@ZU1F*,,q$%--)CQ^O* -hu<`32uPB-0E!U'1As$.1^5ip,U!p6g[kFNgNj2,(aU:1"8W0'!6].g[@K2`CRjrA4C-r@n1'r[n4>o\fb"~> -hu=bjG%tl6FEi.]Jq]&@OHc'!S=l[UWN<;/^l]9P!1<9U"kR5m#o*I;"U5/5!1N`Ci6gKfi8aU= -!rrQ&"U>,0"sFBT<5nG.*m=fu.'URt[BZp:WMZG_S=,\,OGo$MJUVriFDu)NhuA3~> -hu/4*$kpl<5nG. -"j@,g,;V:W2#T6/1Arp*0E!L' -hZ"UFBl.g1GC+diKo(bLPEqT*St`'[X0/\BAJ#G/o'ZM[_Ft+6qZR-*!+tibi6U?ci8aU$!!)j! -"T]5F5-XtSruH=a$%0k'['6^6Vkg#XS!]M)Nf/XFJ:2`fF)PiYhuA3~> -hZ!XM.4Os?pF?D!,p3^So'ZM[_Ft.9q?@$&'f%Gd/d!pP!sSN*"ToAH5-XtSrrdQH+=Jl8/+tFn -.;.Q -hZ!ROr@\"$r@n1*rA4I1"Z@hQ%l5i*Yl+"j"F'ng -/N -hZ"RWBPVO,Fa8@bK8,8COd)0"S=lXTWN -hZ!Xi.4Op>pF?=j+TS2%rrTA("8`9)!tHq;b:WlM1D^)g#6+])MtZT="l^L:,V:VB/+tIm.0+tW -s*t~> -hZ!Rjr%@q$r%S()rA+U62C0IGT^;[[XoJM""Tn`83^(YH"$/^f!;Zj$!!/#Omf*OO*#0bV2Dd8h -1]9*-0`3U&/c^R^s*t~> -hZ"RmB5)7'FEi.]JVAl -hZ!S0r[IOjq'uV#.3T3Hm-O`Q;?6Ru!sJfQ1s%?P0J="?qZ[*)!0-@F"GHh$.P:BFp+$(k!2ABN -J,~> -hZ!V4/c@="0E!U&1B''52D?9b,OFds!Drjo"Tnl..mh?<"$J[Y!;cp$!s";Hrrn)V,;;#4r%n:, -r@n1'r%7uFhuA3~> -hZ"P,Anc+$F*DqZJ:iW7NffQlR[p+HVPq+U$ikG:rrUjR!W*$*!!kKMmdT5oc/Afks.02kqum0, -!"SD`ruBSq$@9ChX/MnjTU_F9P`^r_L4b#(H$+.GCM;5Ts*t~> -hZ!SNr[IOjq'uS"-m&G3m/I.@!!2s$"TT&[.5*?t/d*g`,m=JM"p5,3&+8ib"P*hs-8#!Cod]tj -!5m^oJ,~> -hZ!VP/c@="0E!U&1B''42D$!NFmT,0f`2'M"U+l9-8.JDb;f\d5qN*?qum0,!"SD`rrpsZ(b7L$ -rA4C-r%S(&r%7ughuA3~> -hZ"PF@q]XqEHHGQItEB2NKB?iR%'\@UoCY.$4OT6rrIKIqumE3"98Q:!EmV=k24SF#N4Y6giXbI -!;Zj"!35Dc)d*/<\uhs0UnOBKQ^*_pMhct:IX?<]EGfK(kMQ;i~> -hZ!Srr@.Fiq'uOn*=TUIrrRQJ#lOr5#R(22+ -hZ!Yu/M6oRr@e(&rA+@.">hPI%(ts,!IOnF"UPA9!!FAc-oO1Kc8c%k3%H -hZ"P\AnGdqEHHDOIY!0-N/j$bQC=A;UT(4`%3ap%rrVs -hZ!W;0E*Eo.etRs,T7ihmJd7_+TVEE$3U?WJHc2q,:P9!d4YGP"t:f<$4d+:qZ['$9'lQZU]_k8 -/+tIm.02a,huA3~> -hZ!Z=1G/PXr%J"&r%e7-"!nd-kO&9Np`KS7"UY>3I=VS)(aLaq4OH1h49dPe*"!8X!;cp#!(lPW -"/H#D2#T6.1Arp)0E!L(7.fC:J,~> -hZ"MkH"C]*DfTuHI"-a%MN*^\Q'e&4TrO\6"(pp"!keR6qum6(0E;'f;uQb"?Hi*)i7Hori8jO^ -E!W3*&!!D*Fru0f+-(V9;US+0HQ^*_pN/*+=IscK_EGfQ)MVeA`~> -hZ!WQ9)^:4.f1^u.No(0m/I.#!!3$&$jZhes8Tl5!!s_n/MPX+$83tX+:eH:aL;-Mr!!3&"Q&PG -"Q11<.P:KIp+$%j!++O^J,~> -hZ!ZR9eH8qr%J"&rA"O41bp9]B'fO!]`8'1"UkAas8Tl5!!sYp2Ea+O3=@l23%?$\!'eT7!!3!$ -!WW>ZmJdCK)B:Ff1Geqar%S(&r@S+&@G_$7~> -h>\@T@qTOoE-$;OI=Qs*MiNm_QC487WfJ;'MsUHEGl[aG!WrG2rVm/056([/T^2()g>W(i%. -h>[Ijr@.Chr@8"&.3S\Km/I*4!;m$&"TZ%1rs,ko!!sl"0/(p0s"=^.,n9o)V=OZdDZK\>!X&Lm -mJd=g -h>[Oo/M6oRr%It%rA"L40-L=Qm/I*3!;m!%!s#e.rs,ko!!jf'4?V4Us#^WB,n0i(V=OZdDZK\= -!WrFkmJdCi;[b9:1Getbr%S(&r%8"%L>Mr\~> -h>\Cs@V0=kE,p/KI=Hj'M2[LYQ'[r1Wd>]cMYZ]?!r+5Fr<39-!&+9JrsA@h-3+$Yg@aObh;J[u -jnIDI!!"%#mf!.ei;iuX"Tel.:$hltM#`77US+0HQ^!YoN/<4>IscNaF)Pi.A]*C)J,~> -h>[J=r@.Chr@8%'-m8SIq -h>[PA/M6lQr@e(&rA"O5/Kk+Nq4kVh#4ZFo,!#gg]rVlrX -! -h>\G@?tF"dDfTrEH[^KuLPh(QPa7]+W,r[fYNPWJrrUXL!W<0'! -h>[Jjr@.@gr[S1)-lqYpS!!;m$& -!sRcQrr]G)-8#-God]qi!A*'`s*t~> -h>[Jkr[n%#r@e(&r\=[6.i9,+k4\9D!n.,Mr<36'!1s#d#O@Km!#dXU3o)e$4?>5qYpRu -!;m!%! -h>\G`B4GRhD/aQ?H@:9qKo(bLP*MB&VfN@l]]88FrrT(u"T8K*!!qZ[rs7A+!!$rso]+lii<\?' -pXNaR!,9dSrrTD)!^oru&KMDmH"*R?j,#Nf8gKJU`&mGB.V=BkDbkhZ&*~> -h>[NA1]Aiq.fLq&/LV>Z]Ai)DrrT(u"oSW,!"%`\rs%5'$32&!0AeD^0*EF!"_,[MrrTD)!W<3( -"TYjqrr]n@+YEUBod]qi!DNFJs*t~> -h>[TC2_?WZ0)RC$0`Eg31Fj1c]Ai)DrrT(u"T8K*!!qZ[rs%5'#ll,04lA=*3^#GJ!!HcSq#:E" -!!)s$!X&M.mJd:$#phM-1Aij)0DmF(/PuE&s*t~> -h#A=K@V'4gDK9iDH[UHuL5LtPPEqQ3GRl7AjP9S#rrR0?"T8K)!*Jmn#MEJb)S>\*i8ro&i:$*1 -!ruHIpAY3e*ru6C!X&LAn,F=*pTO[>Y+1rIQ'78fMM?b6I -h#@@^r@.@gs!n=+-ke,Lj4sM#rrR3@"oSW+!*Jmn#2!Mo"=c)Yj"C?b"=aZW -h#@Fc/M6lQr%It%s"Xg8.haGOj4sM#rrR0?"T8K)!*Jmn#2!Ml"Z&;&j#R-%">C)] -h#A=t@:NnaD/jW@H@16pKo(bLP*D9+KG#cTjk&bdrrG4^qum*$U[nEi`AdjEkj[Qhl/;m)kk3=u -!&h7VrrI`!~> -h#@A@r$h:gs!n=+.2+>SjO`YcrrG4^r!!0%V"4Nh`D6LE/MQ9="Y_P=!(='_rrRBE#lOr/!'1#I -rrquXY7`'3r[[Ujr@%`Oh>`!~> -h#@ABr[n%#r@e(&s"Xg8/e]kXjO`YcrrG4^qum*$U[nEg`D-CJ3'HCa#!+q,&HG5'oD\i8!;m!% -!''rHrrquXY7`0`!~> -h#AAE?XdS[D/XH:G^FmiK8,5BOHPm"O<5.?leC1ko)AdZ*t6!i<\B# -n`uA=&YAmjrrTk6"T8K*!"S&Yru0n^XVcehR?j,$O,SpLK7JArGB@hBC1h*gl.uAi~> -h#@Aqr$h7f#qISW)Ao^Dg=uMqrrVU1! -h#@Arr[n%#r%It%#r4:j)B,jFg=uMqrrVU/!`!~> -h#AAhDI?seC2Ip1Fa8@aJV8c9NKB?lQokJGmbHFYo)AdC"p"T*!WXD9n,EU_P<=idn)3Wm#N+_; -a"n'Zo'lY\mM,a#"oeQ&a790Jn^m?,*1*7_Q'.5gMM?e8IX?<^Ec5f/An$;Gs*t~> -h#@EK5Puu&.fV"'*t>"4gXkZ[rrUdX! -h#@EK6N/S70)RC#0F0Hi+:P%4gXkZ[rrUdV!825:Z^WORDW -g]&7U?XdV\CN"68G^FjhK8#2AO-,a"=9+TVgtUNUoD\m4!!)s$!h3i8X=l -K,/1[mJd2_!;m!$!2oDf)u\XGplQYpR$NquNf/[HJq&2pGB7bACM79fX5*`*~> -g]%7lr$h4e#V@>'Pk*S`f_+k9!lt?Ar<<9& -g]%7nr[n%#r%It%#r4=c!L300gXu2jrrU4@! -g]&;6?=78UC2Ip1Fa8=_JV/`8N/s-qE<(a^h;$ZArq-3lYQ+h*"Tec+L?edBc]"@Amc*lt#2eV: -ZURmAli.$K!!E0'! -g]%8\q^M.e#q[P*L@3jOfAQZ#rrTD)"TAT,"9=2ArrqD:+UBPNo.L%r!t#WTf^&P=O8oF^"p"^` -o)AsYf&5\/$nX"$.f:^qceSPN~> -g]%8^r@Rq"r%It%#rF46L@3jOfAQZ#rrTD)"TAQ+!s")@rrqD:.2=d&o/Qt:4V\WEfB`G -g]&;cAmf(ZBkqX,FEi+[J:`K1MiNjeKah/AinW>@lh(2YV>pi""oeQ&[HRVn_4SEuiqMC9i8sI] -I8mN:rrU%;! -g]% -g]%i+GogXk`_rrT%t#6"f+!!'Fjrrpbn*ud!spGiC>3$/`3`9I:'_>jT7 -"T\UBoD]*gf\>N>0.&J1r%S%%q_%n#!D<.Bs*t~> -gA`1X?=@>VC2Im0Fa/7^J:iQ4N/j'j3Yp!(gt^Z:p%A=cWW;u$rr<&RkPk\]_TLioqV_\;ipGp+ -EMWBnrrV -gA_.pq^M.e#qI#@bida8g=PuirrK,"rbo&Lo=&.f:^qMVJ/]~> -gA_.rr@Rq"q_.n%#rbo'/26?0`*O$0)dF&N8+A_~> -gA`#/>[LrOBPMF(F*2bTIXm'+MN!RcAHo:%rnIS/h"^UC!Mf_o"TeZEn`BcQq!mJ&qr%_=ke2qT -kN;dGq`Y#Y"T\U4p&?'3in*#@mSZ`TPE:f`M1pS4I=-9]F)Yu3B4G@VgY;aY~> -gA_/[q^M.e"=k`1XQf`=!nl?'pAY/h! -gA_/]r%7h!r%J"&">VAIR9ZhEP]!rG.]r<33% -@eKa,ro2Pbg[AMZ2#K')0DmI$/HF/Ps*t~> -gA`&_B3ntUAnc+#EHHGOI=Hj&L5LtVM$e"dg]#t0g"uZ$rrJhor<36&:&a2Q!rV0:r8@bARuu^j -rrHm8r<33%@eKa@kh"VEmD']rR$*MhM2$\7IscQdF)Z#4BkCg^GM<(I~> -gA_3D3;Y/t.Kh7N#&s#/gB-$`r:g3lU&b,r!WZ$qj8T2L8K@X\"">.No&K`NCB4;;! -gY;)6(*P4".f:^q9\TMs~> -gA_3D4T-l00)I=$0Ea-`#&s#/gB-$`r:g3lU&b,q!WYsoj8T2M;CMH'"#_gY;)6(+:s90`3U$0)dF&:tkr"~> -g&Dq[>[ClNB52:&EclVRI=Qp'LPq1_9c27?g]#t0fAZW%rrK,"r<33%GiAZ(mG6_"i -g&D&%qC2(e"=k39d,t;]!nZB-q#:Ap! -g&D&(r%7h!r%J"&">^lCd,t;]!nZB-q#:Ap! -g&DoB>@(`JAnc$uEH?>MI"$X"Ko(_PM[>U9r7hA*iqrQO!N,qr"T\UgiVrrBgATk0im6H>rrTD) -"9&H)!+P^&*q%\8gtV2,(PS??NJiRHJq/8rH$+1IDJNos@UEL/gAc[~> -g&D&tqC2"c!We_Wr7_;)iVWHN!N,qr"p"^iiVrq)'DsH`&&dH,!jDY-rWWB'A,$!0mFU+Ig?ZHi -,:iC9q^DOskM#rd~> -g&D&ur%7h!q_.q&">VV2R-sn,!nZE.q>UJn! -f`)e7>@(`JB5)."EccMNI"$TuL5ChW<&!(dr7hA*h>$jH#H[t/"U+o,YN#Q`n^lLngB60acMli' -!m:QDrWN<&@/0aCl.=\Fgu.Nj31u@mMi!.?J:;ijGB7bACM7 -f`(qMqC2(e"=k3Og>`%b!nZ9&qYpf&!!NQ2!s#RbrrVON*;hDi';=Cb!m:QDrWWB'@JKj/kh"PC -gY_=!"YK -f`(qPr@Rjur%J%'">^iXg>`%b!nZ9&qYpf&!!EH/! -f`)i$>$PHDAnYstE-$,FH[L?qKSGAHO;jJTg\fh.f\>rnrs-C@!!NN+"3KR&!V"P7fE0[:pu;;T -h[okf"T\U8qYq]9k1AACgtV:u&rDs8Mi!1AJq&2pG]e%FD/*]p@UNHhg&HR~> -f`(rMq'ktd"=OSIn(R]o!nZ2squ6o -f`(rNr%7duq_.t'"Yq\:SaY;1gB-!]nb`=k_>jQ>"TSYHir9(o)Dq@O!?kk0rrV'i!<*-&!+u*- -!rV03rS%JCYRE$ -f`)i`AQrJK@qKCiDK0`?H$b!jJqSo9R9VB%jnmg8g=PWhrVm,K!!!0+!"IcErrMuEqUP`%^"23C -!qR] -f`)!F3r1;u.Kh=838ioqgB6-\l2LY]#L -f`)!F4o?o/0)I=%0Ea3J2rNfpgB6-\l2LY]#L -fDc_e>$PEC@qKFjDfKlAH$asiJqSo!$L^irrV8ig&'5"gTdd; -rrG"XrWN<&Pl1O_n(ZLng`#&>K*mX'Mi*7BJq&2qG]e(IDJEls@piVI`7Y*?~> -fDbi5q'ktd""aPCo(q)Cg=P3Qrr35b('"OC!$UdjrrhF4-nR%K/cc*BiVrp;!<*0'!0mE]!q4mq -rS%J2mu.8qoIBYc!41>XJ,~> -fDbi6q^q[tq_.t'"#L+Ko(q)Cg=P3Qrr35b'*&1>!$L^irrV:;1]'-53=hP:rrG"XrWN<&Pl1O_ -n(ZImgBHF%MubOdr\44&q_%du!4:DYJ,~> -fDccX>[(NB@V'4fDJsQ;G^=aeJ:iQ2P]7tom+_Bl%,'@uq>^:E!!NN+1Ap24!jKDfqpGGm!K$%" -rru@$"U,#/WrE#$q;p5^h>Z1Kg[)up>b-e1LP:>1IXHEbFE2;:BkM!d?X.=Af`-I~> -fDbm;0)@$i.Kq=A.a[M8qV)G1g#r/1qChmR"opIWj8T1K#ql*,""kNWpu;;X;ZI"+"TYS%rri/Z -f@esYgBH -fDbm;1A`[$0)I=%0Ej3R.a[M8qV)G1g#r/1qC_gP"TU=Uj8T.K(A]um3@I;iir93\!!NN/!36%u -"Sq02g"cS]"kr:`+<<<<0`*O"0)[@&5ks"3J,~> -f)HYT=^,3?@V0:hD/aN;G^=deJ:iQ2Qo$qbjkKXe$JX1elMk)h"U+lmj8T5BJ^)ONKVd]. -$uZ+L"TSPBs82-:fA$8Z)r'E75:MnZMM?e9J:;ijGB@kDD/*]p@UNGEYh/o*~> -f)G_spaPnd">0sPi8sag$.mnrs',O."oq$NrrVUA)Ykrd0*\cBrsN`F"pP&-a8c&&g=Q5V"QJN: -#VGZuq'c<4fDg@~> -f)G_tq^q[tqC`"+1^Ze3jnRR:f@oNi>Q=p2!(,`G!q%iiq)8@9%C5!n$Z?"K"TSPBs82-9fDF;* -ioE]<2#]3+0DdC!/HD -f)H]M>?Y??@:a(cCN"35Fa/4\It<6+O,"$ZnDN'sg^)Zfl?*(0"TW#lrrS+?g%iendBQgKj8TL@ -!!NN+'&N?=fA#-[g`5)*n:_4(PDP'KK7SK!H?aRQE,BB(An,7V>\Ni_s*t~> -f)Gd,/GUag.Kq=P!H[\dptH).f]dMY"U4s:j8T1I">9I$!YS'%j8TL@!!WW-(#JZ@f@esWgBHI% -N<(@Vod]bd!Bg#+s*t~> -f)Gd,0)I6t0)I:+0JY<_F7.r\gBcNcl#ct/"TW#lrrSJp3VbT93#bHej8TL@!!NN+'AiH>f@esW -gBZU'N<(Ud0JN>Vq_%du!C6;/s*t~> -ec-SQ=Bf$;@V'1dD/O?7Fa/4\It<6+Q!XNVo%r-rg]m);!!EH*DWq**rV?!V`_=Fuq8ii^ek_S2 -pAX4S#aYMp"TTt,hV.e\)Y0p5Bpjg5Kn=i(I!U$[Ec>o3BkCj`?X-d>f)L7~> -ec,VppaPnd"Y1\qQL`o,gBQr8!!NQ,DWq**rV?!UdO$(hpFQLJW;ZGhk5P^R!!WW-.GWb4q:c&A -XUcF(oIBYc!1_X?J,~> -ec,Vqq^qXsqC`".,QO/$hY5b/lC\+["TWH(rs/Munat3W.ld8^"9k_&pAX4S#aYMp"TTt,h:_VY -#4S`*,;_).qCh^uq^hf=f)L7~> -ec-WT>?Y3:?XdSZCMRj.F*2_RI=Hg#LQan%T(Lmoq:l>C`sDbM!-n)(pAFI\%/fnkm-*H`hW[RQ -f>[O*#h,Oqe*,]So)%\O#-\(1"TV9\q:ltEm`?))R#HfRJq/;tH?aOPE,KN,B4G@W>Ztb5f)L7~> -ec,[41&*3k.KqFA#+kGCptH/@`X)YM!-n)(p&+@[$iKbim-!?]hWe8O0D@%(0GlFnk2,CoqW\"a -YQ+h2!);YOgB?oc*t^*t.ekFn47q,(J,~> -ec,[41AWU"0)I:+0Jj^QT(Ch6gC!5c#lt20Gk1@sr:0dpr:fdKkMb.Ol<+WYpGW@=+>27-hWj\. -l2Lsl!!EH*9]l-)#49MS&i;?tqCh^uq^hh4o[a%m~> -eGgM_=BSm8@:Nn`C2Im/FE`"VI"-^"NJf"]WqG9(qV3IZgc,9;!.3h\gtq&RlL+32oC_bFnF,`. -jl51Rg=Os0h"?aI]ZJ(d`!sc55$7C4f@o*AlgsoLnGiOa#H%P)"9=2Ah>>tIg[3ZH*06/8KS+i) -I=$3]F)c,8BkM$e?s[&?]@Hq3~> -eGfN+pF5ec"Y1;jWUo!BgEtq73<06`HfWl7hW!\^mdT]9p%7bCn*B3!iSNACf%8R/oUH%50(pk* -/d6.`h:C98j6Q=3r:'adq$3et"U+m[l.l-i"RF]'#VPa!paH3Bec1.~> -eGfN,qCVOrq_&.-1)C(loA9;t-K!!N@KjOr;Eio]LnnF,r@o^MA=lfdHhhV?f8f@\jMRftQ+ -p,3==$#T7hf%Jm>lgsoLnGiOa#GqJ("9=/?h"ob0le"?,1GUZ\0DdBu/HDd#s*t~> -eGgQ_A6)lUe"9=)=gtUQ^g%X.ufaQThgYCT? -or.qHdD3Qm_%OQ.WW8%Lh:pZ:f[nm9jll%"o`"Rsr;66`p%%M6j4rt(!!EB(\*X"I*8Bf41^\r" -L4k//IXHKeF`VP@D/*`q@piVI=`W$lJ,~> -eGfRA4ngE".fV"&&dFfninF:a%,CDp!!N@TkhFhEf\#oLrn%8)gA]h1h".QP*&$t:&M>C1QLWba -g"=p.g>CrRlgOEDpC[?#p\=FPmHEQal)k!i"9>psqqD>.ldn?(.P(0ApaH2:eGk%~> -eGfUB5:cU_qC_Xu#;RtG"e+o>gABV5h"#Ld"9=&;gY1?5f_3qrfE'[Zrn@V3o;`'?3qYBC3%k8t -n_DjOf[na/hrEncn+-JP&cDP#q"=4Fki1@]XoJS,!4V:kgBZEtf09Em1GJYYqC_Xs!)D&DJ,~> -e,LGp/;gcPU^QA1'EJUW#nH$==L -Df0<'An,7V>Zt7SeGk%~> -e,KEApF5ec"tM/<#)_X0qV)&;WVul!Rd/\ogBHF(\/Gu6o.:,!)A9OMh>H"2g"4g,g"QG[s5!\/% -,0@cf@oZ%!!N?Of&ce`"mju3"">bm.ekFm^srC7~> -e,KHC/,Cjp0)@4*1+j:FMWj@%gB$Z?rW!"glJ1^[#2Sj[(_o%ioJQk5*>5jPh>H"2g"4g,g"QG[ -s5!\/%,0@cf@oZ%!!E9Mf&ce`#41)3""lA`qCh[tqCM]`eGk%~> -df1A2<`rX3?XdMXBkqU*EccMNH@:9nK99XR!*[kChV8"a#NFJa!!&PThDH;!4_[Xg\T^ug]#t5m( -df0;FpF5ec#:h2>!*Rb@hYc+5iRoOX!1W9/m+Va&oW&B1/hZ]H"Y^H"\+AJNg\TY$gB[&W!s8O7 -mb[os#2J[n4TQr_od]\b!,C!_J,~> -df0>I/,Cjo0)I:,1+O.@>12uur7_J8fd-UuS*JeqgBQU.WsT=n3:f$42`VH^\+AJNg\TY$gB[&V -!s&C3mb[os#Medo4THug0`!I!0)@."Ct&E7~> -df1fJ?P.re,Op~> -df09leMKo#Mn]j!!&JQh!Ni#kj+HA%kB='/cRF,$l,W*k1]1V#3a)>!!&\[ -rn@\3ipOK1"=Ykn.ekFn0B^gaJ,~> -df0Bm.kCKKqC_Ut#VmnN!%k>9leMKo#Mn]j!!&JQh!Ni%kj+H?%PTgu2"W[31cI6"';b'Xg?dPu -kf426!2&]YgBcNmm_(+Q.l/mU0D[ -dJkYV?P"*df4g~> -dJj2gp*o\b&h>@U%Kp7]o',#cg[2ZT!1)m)n(S*+o%%FR'dt^'/I*mY&I!OEmb[?c&Eq.H!$BhO -gY:NLmZS:k.P(0Ap*g!)df4g~> -dJj5i/,:dn0)I:70J+OZ"CfFBl/(1LmC`K"QKd2ngBZ^.en4sr/N<,T#<+CK"afG#hX0&/kf4/5 -*S03(gYD,_P7e3U1\i^#0)@.#/!JE]J,~> -dJkWc@T?H3>[CfIAS5^mDK'W;Fa&.ZIXcs1GrZ95*,rUQnEA`p8-#dYn_=]1i9oTs0E;Dt^UUSU -Za@'Frj;^5rj30A['[0H_M\p)6F#nEh:qGS.-\bb!.!qegZ\.IFY?<^Q5FT0_gJ,~> -dJj7948(,s.M+*Z,T6b(DnP0"kMGJq!3GMUgBc^(iL__&)^m<*.gR^V(]Zk,m-EHqgCNMg&cd1B -gtLu\```?X.P(0Ap*g#>rmLgs~> -dJj::4Y-=[qC_Xu&25[_(]t^q]]APEhWdW3XR#B1$/b./T.U*^/N5TU1^H#o(]Zk,m-EHqgCNMg -&HI(AgtLu\``W9X1,AYYqC_Ur!\74Kdf4g~> -d/PK3<)m%)>[LlJAnPjqDK'T:Fa/4ZI=Hd,LJf-$!#T(:c0bM7!4q[kg^`<*mcUfW"996c]!SZF -Yl1j'ZN%0@Yd(I;ZG2MN!"*SZlg3`ig[j2Jk0kFQ^%:LWdt8;69SSX^Jq/?!H[0gXF)c,8CM@Em -@piVJ>$+e\dJn^~> -d/O*SodTSa%kB+U,8^Ct?_GX0rNH:5n+59?i8s@gYZM)=,:Mh-$8!\P"qGLclKdQgo%OZ9die_) -o'#MjKc^CB.P(-@p*g!ldJn^~> -d/O0V.kCEIqC_Xus"Fm1,8^Ct?_GX0ricC6n+59Ai8s@gYZM)<,:b]2lnf&.0I-f3D8>H&jkfR_% -cu._!57semaHk3""#]Wq(MOrqCM^ue^=DI~> -ci5JR<)m()>[CfJAS5^mDJsN9Fa/1YI=?^%OEE`*$4$V`>Ed&PYlF4Yjl69r']%X&hrX4ojNX)j -$31>qPJ"-$Xf_T*p94Ft&?W+JVG@O!&lu!_lgX#mh;.h\-K`qn7fVP`F;k33F-;K6JUi/rH?j^W -F)Z&7CM@Bl@UNMH>#nV$d/SU~> -ci3uboI9J`,qCDi+;bLe.pJ4V,d@=:l/gm\h;-lBh;75Yn)MWZ;$mLI,Uk>0.h4-\,oQau=K0j9 -n)W<[h"TP3jOY&8s5Ue8-ib)5/+b=a.0,RYs*t~> -ci4&f.kCEIqC_Xus"G`N-6O*5!%V9;`?_\fmciilhVI#Ch;-rKlgNlXQr+1p)^R-q2#T6#2#]9@ -2DQ[!!#&J6e`uVah;$f[gC<5r'1W#^]lb_')D3g"qChXsqCV^t!0kk1J,~> -ci6<&@T6B2>@(ZF@qK@fCMn*1F*2\PH[L9kJrP\(7O/lV!"(2$YA'bN.mNlKmcukih3olg"&r.XS'b%0J1pMNNUEJUi2sH -['aVEcH#8CM@Ek@UNMI>$+dHr6YIo~> -ci4%84S1)r.O-Gn-m^#]&ciFk,ZTu"[)UYTj5f=^jP7h^P@cEU"rnm:.kTp7,:tDo,o?Xp2LDCF -j6,XjlfdKokN;!ol1!FXI&^-_";<77/+Y7a.03?Ed/SU~> -ci4+:4tA/[/bq$q0E3^L.jZ>^&c`=i,ZTu"[)UYTj5f=^jP7h^P@cBT"WJa<1H+DPs"klN-5Zao -1jc1Dj6,XjlfdKokN;!ol1!IXI&^*^";NLB1AEO!0)7(#.ocGns*t~> -cMp#T;H-\">?kNC@qK@fC2Ij.F*)VNH@1-jJ:ruEI:GPk&d]B`!!F2m5"nOTDc0.o/J.s_#q/;g -TXChtrho^nql0Uqql0RnrhhlX[&S^U.Lc@X-qncOXh;^!bKJ,M]r73&$lT6o=aH*mM1^A0IXQQh -G]e+KE,TT.BP1mc?s[)A=B8M`ci8L~> -cMmmco-s>^s!o*=-6sfV(a0Ci"rf0Y8kE?-;bBM4('"OT+=&?c/`SA]/KH8d*u+b^02Hh\Xh;]u -bKJ,M]r@ -cMmmcr[[drq(DLss"GKI.O?;Z(Ea4g"rf0Y8kE?-;G'D3('"LR+=8Zr2DjJN+>u&/-m06)#VStt -RB=-Bbfe2Ra1\I<@i-Tp%4*V^1GJVXq(DIp!\5t\ci8L~> -c2T/m;H-\">$PBA@V'1cC27^,EHH>IH@('hIt<94OH4m);)ojA(CgWF!"T8G+\-!eQDq$eUSFW\ -V5=0gnYcDarhV]PUT(DtRt,-C+UA>X"TT8^+!2aI#n7:_6sb8&PE:ZSJq8E#I!^-_F`VSBD/3j! -An>FZ?<^T8 -c2Rd4o-s;]s!nm8.4->c+X%jB&e,-Q#mptE$kaI(-7CAC/`8/Z/J]ic-m0-/$k(hZ-NB"~> -c2Rd5r[[drq(DIrr\>?E.OZPc+WV@2$j[%C$4$nE&fW,G.kib91uU7i1_qhu.jG]6$k -bl9YL;cQq&>?kND@V'.cCMe!/EcZAJG^=adIt3-'KoD:\ML]YS=AD1P7RTpR@rd`K`StDXJ -rh0=drhKIgpn\"eV>d:iU]-uJTqJ'NUT:DfQA^$#>#IOH4ZYo*>]+qHPF%AgKnP)0JUW#pH?j^V -F)c/:CMINq@prbO>Zt92<0>H*J,~> -bl7ZMo-s2Zs!n7&.4?Mh-2f(p,pjre.Olr#/_MZS/I*dU.OZSg,out'#8eI--7C;n/+4t[.0+S: -s*t~> -bl7`P.kCBHq(DCp#V\%i0J=q+-n,!?#Uq5T0/,.<1c,(ci\UNg$8XLo0J=q*-7BrTrYu4f-n6f% -1G^d?0_d -bl9-_BN%o3=^#';?t*VXBPD7!DfB`>Fa/1YI=6WsJqJ`5N00?jQ^F84Sc58]T`:VgS=,e6S"#rI -Sc>8]TDbG]U&1S`U&CY`TDtM_SH,2ZRf].RT`(Q6TV%gHS!fY0P`UfYKnY/2JU`,rH[9p\F)l8< -D/*fuARf.V?<^T8<`F:es*t~> -bl7_47Ihns.ebIk/^l6I/bgja.e>(h -bl7_47fFq5/bq$n0*!^$1AN`q1A*Hn1B'*02#]<,1B'!%0DI0q/cR=$=Npeq~> -bPsTV;H$Rr=^,3>@:EeZBPM=#DfB`-rg#.#PEV/lOH5E\N/ELJL4t83JU`,sH[9p\FE;JADf'9( -B4bX_?sd/B=]SL.kfj'W~> -bPqUk.e>+M.a'@(.e>(i2r`']J,~> -bPq[m/1W7G/bgsm0D$sA1A!9p0DR6q/cR=%3TJ?`J,~> -b5X-2;,U@o=^,-;?X[DTB5)*rDK'T:FE_tTH[L6jJ:W<*KnbA>MMmFRNfT9aP*;.0Q2['PQ^F/. -RJrZQS,&TORfJoUR0&bBQi<:)Q'@JrP*(ieNfB!UMM[+CKnFu.J:;ooH?jaXFE2A>D/3m"An,=Z -?s[)A=B8C!e'%cA~> -b5VIJnL -b5VIKr@@[qpFc1nnhANJo.]kkpb)=ns!n+$b00g8~> -ao=2o:K(4m=B\p6?XR>SAnYppDJsN8F*2\PH$apeIt3*&K8##7M2I4MNK&s[OHG]hPE_;sr0IAL -rL!8GrL!SNrK]7)Pa%ApP*(ifO,f0XMM[+CKnP,2J:N)sI!U'_GB@nHE,TT/BkV*g@:3DH>?Y'- -<)L9Ms*t~> -ao;@)n1!6Eh(.A4nL4I?b5Zt~> -ao;@*r@@XppFc+lnM&cSnM'Vhpb)=nr@7lNb5Zt~> -aT"/];,U@o=B\p8?X[GSAnPgnD/XB5F*)VMH$XgcIXcm!K7el3L5CbFMiKS+l-J:;rpH[9p\F`_YDE,KN-BkM$h@UNPJ>?P'.;c9U: -s*t~> -aSu6en1!0Cj"&q8nL4I)ao?k~> -aSu6fr@@XppFc+lmkEcWmkFDfpFc4mr[Ru9ao?k~> -a8[rG:Jt.l=BSj5?=72OAS5^lCMe!0EH?5EG^4U^I=?ZrJ:`E,KnY;=M2I4MN/`gWO,oD%OoLUE -P6$o3o99NEPa%ApP*(oirf8^mNK&mTMi*@HL5(D8K7\Z(IXQTjH?j^WFE2D@DJa0(BP(gb@:*>G ->$4m+;c/k%s*t~> -a8Z-NmjZ[7r%$8HmjS6daT$b~> -a8Z-Pr@@UopFc%jjtQ]gjtQH]p+H+lr@7l!aT$b~> -a8[^eIo0-D<`W@,>[LlI@V'1bBkhL&DfKf>Fa&(UH@($gIXcm!K7ei1L51P@regoN@p0JMMd7IL4t>7K7\Z)IsufnH[0m\GBItIEGo`1CM@Ho@q&hR? -a8Z29Aa_(A.e"keG/sW5~> -a8Z29B)O7S/bUgh0?Gp?0D7$m/cI7#GK9`6~> -`r@XiE)BM3<*!+)>[1WD@Uit^BPM="DK'T9FEM_NH$XgaI=6QpJ:W<)KS>,7L]3,1MZ/P6N;eh9 -NqJJ4Nr=t;N;neiMM[1FL5(D9KS+l-J:E#sI!g6cG^":PFE2>=DJa-&BP(gc@UNMI>?Y-/<)QSE -rl>%h~> -`r?)<;XQ!2.de_dB)]jNJ,~> -`r?)<<;\9@/bUgf0@DQF0D-sl/c@1#B`?'PJ,~> -`W%UWCemo,$bNC@Uit]BPD3sD/XB5F)uGIG^4R]H[L9kIt3'#JqJ`0Knb?]LB*20M?&S( -N;eb7MZ8M5L]3#ZKnP)1Jq8K&IsufnH[:!_GBJ"KEcH&9D/3m"B4bX_@:*>G>$4s.<)ZSAq8WGb~> -`W#u&:$jC..dneeA,""CJ,~> -`W#u&:])a;/bUgd0@qoJ0D-sl/c@1#AGF1EJ,~> -`;_R^H;@C:<)m%'>?bEA?t*VWB4u!oD/O92EH6,BFa&(UH@($fI=?ZrJUrE*K7no3L&Qi+L]!#* -MY`/0L])u-KeA%2K7\Z*J:N,uI=-EhH?jaZF`_\FEGo`3CMIQsAn>I\?sd/C>$4m*<)QSHrl+nf~> -`;]l+@-oDE.d\YcCAu3PJ,~> -`;]l+@JhYL/bC[a0B+\R0D$mk/c7+"D#VERJ,~> -_uDIfHVRF8;cQk#>?b?=?smGTAS5[jC27^)E,fo>FEM_MH$O^_I!pElIt*!!JUrE*KDpQ%L%^9! -L&Qc*KDpHQJUi9#IsufnH[C'aG^":PFE2DADf0E-C2%?nARf1X?X?uA>$+g);Gg5P_uG5~> -_uBc5@-]8H.dSSaHGfc5~> -_uBc5@f%\K/bC[Y0D@0`0Cpgj/c.$uI)Gu7~> -_Z(nWKhbEA<)cn#=^,-;?XR>QAS,RhC27['DJsK6EccGHGBeCYrd4ZmrdFp!It7KK!.t*#re1<( -re16&$%de]Jq8K'J:E(JIfFfqHR!i^G^"@SFE;JBEGo`3D/*g!AnGO_@:3GI>Zt92 -_Z'Z3D!EIW.dJM`KYmb>~> -_Z'Z3DYksX/b1O60D$mi/c7+!Ku3k?~> -_#GgF9i"Va<)cn#=^,-;?XR;OAS,RhBkhF#DJsK6EcZ>FFa&%SH$Xd`rd=]n!.Olrq1/KrrdY!" -rIFot"b(rMIXQYDI/\F;H$FOWF`__GEH,r9DJa0(BkM$h@q&kS?X?u@=]e[(;c6CeVnrC`~> -_#FC]kpa1nkpZUt_>f#~> -_#FC^qCD4jnh/3@nLjJdq^VZ4_>f#~> -^],dc9i"Va;cQk#=^,-;?=72N@qB7bBPM9tD/O60E,fo>F*)PKGBe@XH$]I:rd=]nnUCIcrd=]l -.=-8bG^+FTFEDSFEcH&;Df'?,C2%?oAn>I\@:*>G>?Y03 -^]+;)kUF4qkpZWdZ,$Bi~> -^]+;*qCD4jn1N0Cn1OAcr$qe&ZG?Kj~> -^Afe$:JO\_;H-Xs=BSj4?=%#J@Uin[B4kpmCMRd)Df9T7EH6,AFEM_MGBe@XH2W'cHi8?gHi89j -H2i-hGQ2e2FE;MDEcH&:Df0E-C2.EpAn>O_@:3GK>[(B7=B/@";Gg1me%bp5~> -^Ae5B/E\J#.d&5]36T):J,~> -^Ae5C/c%!i/ab7I0CCIb/c.%!3m5; -^&KG3DG?kKA@:&s)n9a!dK!8o6L=[!dAm5 -rcS3^s)S-Zs)9&uDJj<,C2%BqB4b^b@U`_P?$+d(;c6Ig:3bp8s*t~> -^&J,\;<01M.c`#Z?K&WuJ,~> -^&J,\;u%s8/a4nT0Bt1]/bpmt?fAa!J,~> -]`0#GJP8g7;,U=m<`iL.>?kK@?X[DQ@qB7bBPD0qC]8/PDJsLnEW:(YF8p@[FnKtVFoQR_F8p:\ -EZt<5=B/=!;Gg4aQb -]`/$)C>p\i.cVrXK=q57~> -]`/$)D##UP/\s(1/c$stKY7>8~> -])O(Y9MJ8X;,U@m<`W@,>?b?=?XR;O@q0(^B4tsmC2.O"D/F0/DuO_TEW'qLF8^.YE<'tWDuOYR -CE7/(BP;$jAS#@\@UWYO? -])Mc%hC72/i$e[e[(H?g~> -])Mc&pFGbcaY**8q'uJ-[CcHh~> -\c3f!Bh_>u;,U=l$>0;?=.)K@:E_VAS,RfBPD3rrbMONrbh[QqJcCQs)7sXrG_^RrbhaQ -s(hXL*bf;$B4kgf@q/tV?sm>J>[(B7=B8F%;c?Oh:JGrh])R9~> -\c2]O9AM&U.c)TT=k^IeJ,~> -\c2]O:&$7./^5p;/bpmt>2$RfJ,~> -\Gm??SP2aQ:Jk"f<)lq!=BSg3>[C`D?t'%D$Y*aZAnPaiBPD0qCAr#HD=_ZDD>e8MCB&#JB`D]I -An>O`raHRL?XI,E>?b96=B8F$;c6Ii:/+N_\Gq'~> -\GlU)Mpj-L.b,sK/=F$JJ,~> -\GlU)N:ndj/_2QB/bggs/t0 -[f7MpCJ%>r:JXhc;cQk!=BSg3>?kE>?XR;N@U`hWAS#IdBDuTEC&Mf:C]/#JC&_lGBE)QH@qB.[ -@fBaL?X?uA>?Y03<`N1"<)Z[j:JFN,fXLm2~> -[f6BG:nT6 -[f6BH;YM^//_huG/b^ar@*uI`J,~> -[Jq!;UJ4EV:/=_a;c?Xq<`iI,>$G39?N+:6?t!JQraYt>rau+Arb2">rFl.Brau1As'u( -[Jp=&P:E@W!B$FUs*t~> -[Jp='PUuMYkUl-RkUlKY!B6UXs*t~> -Zi:otKM"p4:/4S^;H$Op[1TB?iFI5@K0g9A,Kp1B)H6=A,g$<@K0a8?N=F3>lS"? ->$5!1<`N*u;c6Ig:/+DUO63hLJ,~> -Zi:'UDPei`HK)=3J,~> -Zi:'VDtGQq/bCOoI,_O5J,~> -Z2Y?JCJ%8p:/=Y_;H$Ln?kG4?N4C3@/aU6@KL%K@eX@8@UinW@fBg8@/aO5?N4:0 ->7t+B=]e^) -Z2Xj1;5u&G>JRQEJ,~> -Z2Xj2;tMTY/bCOo>f!`GJ,~> -YQ#?@?V4!c9hnJ];,U:j<)lq!<`iL.>5hb*>lA".?i=C,@K'[5?iFC2>lIt->5q_*=T2>1 -YQ"Ws6`qj=;7!M,J,~> -YQ"Wt7I_nQ/b1Cm;mW_.J,~> -Y5\auXBnIl9heC^:]F;p;cHasr`9&$s&oA*r`fA,lsBWqs',J+s&oA(s&T/""B8;t;GmEh##7le -8ntj6YQ'+~> -Y5\RnSjK_3!`5opYQ'+~> -Y5\RnT1&3"d4Oo>!`?#sYQ'+~> -XT&t(X(4gp9MA/U:JXhb;H$Ln<)lrtPq\)=oMP'Rue9M/p- -qQ9dJ~> -XT&@jSOp7=!_]]lXoEn~> -XT&@jSkJH$h(A%F!_oinXoEn~> -WrE\0\T:>78k_oQ9hnJ[;,L4h;uK\q -WrE.uX]r@c!G]0Fs*t~> -WrE/!Y$L0?mk*]Q!Gf6Gs*t~> -W;dJ/cA>Lm8k_oQ9hnGZ:Jjte;Z9Vo<;T\e -W;ctu`cX2T.0;ede#<:s~> -W;ctu`ca;V.fr%he#<:s~> -V>ghc[W,&68kMcNr_3AfrD3Gjr_iYmoMk`erDNYmr_NPhr_ -V>gYZWECpp.0DA;ZLOglJ,~> -V>gYZW`h0t.g%YAZgjpmJ,~> -U]1Suh4f!^8P2VS9`Iid:Amud;=mca;>a5i:B!uf9`I`b8HO: -U]1GqfTKR`.0=(Ki1p=&~> -U]1GqfTT[b.fs@Pi1p=&~> -TDo,NZZ]PD8P/nRr_38bq+gf_q+gl_r_3>ar^d2tJ%FR2s*t~> -TDo#EVdMd<.0DkMY1oWLJ,~> -TDo#EW*r!?.g&.RYM5`MJ,~> -SGr``_4Z'Pr^[/a8P)NJr_!2bqb7#ar(R)as%<;b!)!5^s%!8qJ>UH]Sc=3~> -SGr`_[ub)Xg*m.eCR;j.Sc=3~> -SGr`_\<1;\g+*:iD4&02Sc=3~> -R/[EXfW9jI>>%Na8b>XQ8cM -R/[BSd[kP`5qM.I"u/JMH_]-XRK%d~> -R/[BTd[tYc68%CN"u8VRI&, -PQ)'^hSussOF(eO;,U+Zr(.;f9i=kuDLIP@\B*Y%PlH7~> -PQ)'\fY+8IIUuJJ2)R$9r$r1)0/YUY -PQ)'\ftFDKIV)SN2`EHAr%/=-0fM$a=D -NW04Tlf?dRbImbe#/&.5g?.bqNrOV~> -NW04Rkhst?_m0-H#-l(qeDf`cNrOV~> -NW04Rkht"A_m0-I#-l(re`,idNrOV~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -JcCN*J,~> -%%EndData -showpage -%%Trailer +%%Page: 1 1 +%%PageBoundingBox: 0 0 353 347 +userdict begin +DisplayImage +0 0 +352.67 346.912 +12.000000 +490 482 +0 +0 +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE +FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFF +FEFEFEFEFEFDFEFEFDFEFEFFFDFCF4FCFBF0FDFCF4FCFBF1FCFBEFFCFBF1FDFCF7FEFDF9 +FEFEFBFEFEFFFEFEFEFEFEFEFEFEFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFDFEFEFDFFFFFF +FEFEFCFCFBF5FAF7DBF9F6D5FAF8DEF9F6D8F9F5D3F9F6D7FBF8E3FCF9E8FCFBF1FDFDFB +FEFEFEFFFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFEFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFFFEFEFEFEFEFDFFFFFFFDFDF7FCFAE7F8F1B4F6E981 +F7EB88F9F0A7FAF2B4FAF3BBFAF3BEFAF3B7FAF2B2FAF1B2FAF3BCF9F4C2FBF8DEFEFEFD +FEFFFFFEFEFEFFFFFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFF +FEFEFEFEFEFEFFFEFEFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFFFFFFFFFFFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFEFEFEFEFEFEFEFEFEFEFEFDFEFEFD +FEFEFEFEFEFEFEFEFEFEFEFDFEFEFDFEFEFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE +FEFEFEFEFEFDFEFEFCFEFEFDFEFFFFFBF9E4F7EC97F6E87BF5E76FF5E772F6E981F8EFA3 +F9F1B3FBF4C0FBF5C3FBF3BFFAF3BCF9F3BAFAF2B6FAF2B5F9F2B5FBF7D7FCFAEDFEFEFE +FEFEFEFEFEFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFEFEFEFEFEFDFFFFFE +FEFEFBFCFBF1FBF8E3FDFCF5FEFFFFFEFEFDFEFEFEFFFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFEFFFFFEFEFEFEFEFEFFFFFFFEFFFEFFFFFFFEFFFFFEFFFFFEFFFF +FEFFFFFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE +FFFFFFFDFDFAFBF9E7F8F1B7F5E66FF5E66FF5E877F6E778F6E982F8EE9DF8F0A7FAF3BC +FBF5C7FBF4C3FAF3BDF9F3BAFAF2B8FAF2B8F9F2B7FAF4C4FBF7D8FEFEFCFFFFFFFEFEFE +FEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFCF9E7F9F5CF +F9F1BEFBF6D9FDFBF0FEFEFEFFFEFEFEFEFEFFFFFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE +FEFFFFFEFEFEFFFEFEFEFEFEFEFEFDFDFCF4FCF9E1FBF8DAFBF6CEFBF6D0FBF6D4FCF9DC +FCF9DDFCF9E6FCFBF2FCFBF4FCFAF1FBFAEEFBFAEFFCFBF1FBF9EBFAF7D7FAF5CAF7EE9E +F5E979F6E875F5E877F5E878F6E879F5E879F6E984F8EC95F8ED97F8EC93F8ED9AF9F1AF +FAF3BCFAF3BBF9F2B6F9F1B3F9F2B3FAF2B5FAF2B5FBF7D5FEFEFDFEFEFEFEFEFEFEFEFE +FFFFFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE +FFFFFFFEFEFEFEFEFEFEFEFDFFFFFEFEFEFDFBF6D8F9F2C0F8EDA5F8EC9BF7EC99F7EA97 +F8EA9AFAF5D0FCFBF3FEFEFCFEFEFEFFFFFFFFFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFEFEFEFEFEFE +FFFFFFFEFDF8FDFBEEFCF8DFFAF4C1F9F3B9F9F1ADF9F1AEF9F1B1F9F3B6FAF3B8F9F3C4 +FAF5D4FAF6D4F8F3CBF7F2C7F7F3C8F9F4CCF7F2C1F6EEA3F6EB8DF5E76DF5E974F6E878 +F6E879F6E87AF6E87BF5E97AF6E982F8EC96F9EEA0F7EA89F6E879F8EC94F9F1B1F9F2B8 +FAF3B9FAF2B7FAF1B0FAF1B3FAF1B3FAF3BDFCFBF1FEFEFDFFFFFFFEFEFEFEFEFEFFFFFF +FFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFEFEFEFEFEFE +FFFFFFFEFEFEFEFFFFFCF9EBF8EEACF7EB92F8EC9DF9EDA5F8EDA3F8EB99F7E98CF8EEA8 +F9F4D7FEFDFBFFFFFFFEFEFEFFFFFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFFFFFFFDFCF6FCF9E8FAF3BC +F9F1ABF9F1ABF9F1ACF9F1ABF9F1AAF8F1A8F8F1A8F9F1ABF9F1ABF9F0A5F8EE96F7EC8D +F6E978F6E873F6E76EF5E76FF6E770F6E773F6E874F6E878F6E97AF6E87CF5E87DF5E97D +F6E87DF5E87CF6E980F7EC8FF8EE9BF8EFA8F9EFA3F6E87FF4E779F5E981F7ED99F8EFA6 +F9F1AFF9F0ADF9F0ACF9F1B1FAF2BAFBF5CAFDFDF8FEFEFFFFFEFEFEFEFEFEFEFEFEFFFF +FFFFFEFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFEFEFEFEFEFDFFFEFDFEFEFEFDFEFFFAF5D4 +F7EEAFF7E98FF7E88AF8EB96F7EB9DF7EDA1F8EDA3F7EC9DF8EB99F8EA95F7E992F9F3CA +FEFEFFFFFEFEFEFEFEFFFFFFFFFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFEFFFFFFFEFEFEFFFFFEFEFEFCF9F4C1F9F0A8F9F0A7F8F0A8F8F0A6 +F8F0A5F8F0A5F8F0A6F9F1A7F9F0A6F8F0A8F8F1AAF8F0A6F8EF9FF8EE9AF7EC8FF6EA86 +F5E875F6E876F6E877F6E776F6E878F6E87AF6E979F6E97EF6E87FF6E87BF6E879F5E779 +F6E980F7EB8DF8EC93F9EFA5FAF3B7F8EFA1F5E772F4E66EF4E66EF5E56CF7E982F8EFAA +F9F0AFF8EFACF9F0ADF9F0ABF9F0B3F9F3C4FDFDF7FFFFFFFEFEFDFEFEFDFEFEFDFEFEFE +FEFEFEFEFEFEFEFEFDFEFEFDFEFEFEFFFFFEFEFEFFF9F3C8F6EB9AF5E67FF5E575F6E782 +F7E98FF8E992F7EB9CF7EDA2F8EDA4F8ECA2F7ECA0F8EB9BF8EA97F7EA93FAF4D1FCFAF2 +FFFFFEFEFEFEFFFFFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFFFFFFFFFEFEFEFEFEFFFFFBF8DEF8F0A8F9F0A3F8F1ABF9F1A9F9F0A7F9EFA4F9EFA4 +F9F0A6F9F1A6F9F1A6F9F1A8F9F1A9F9F0A7F8EFA0F8EE9CF7EC92F6EB89F6E877F5E775 +F6E876F6E775F5E878F5E97BF6E879F6E87BF5E87EF5E87CF5E779F5E778F6E980F7EB8D +F7EB90F8EE9FF9F1ADF9F1AEF5E97FF4E66EF5E670F4E46AF5E56BF7EB91F8EEA3F9F0AF +F9F0AFFAF1B0F9EFA8F8EFABFBF6D5FDFDFBFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFF +FEFEFEFFFFFFFEFEFCFCFAEAFBF6D9F7EB9EF5E67DF6E77FF5E784F6E786F7E98CF7EA91 +F8EC9CF7EDA3F8EDA4F8ECA3F8EDA2F8EB9CF8EB9AF7EA94F8EFB0F9F4D2FEFEFDFFFFFE +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFF +FDFCF0F9F4CCF7EB89F7ED93F8EFA1F8F0A7F8F1A9F9F0A8F9F0A7F9F0A5F9EFA5F9F0A5 +F9F0A5F9F0A5F9F0A6F8F1A7F9EFA4F8EFA0F7ED96F7EC91F6E87DF5E777F6E877F5E875 +F6E776F6E879F6E87AF5E879F6E97DF6E980F6E980F6E87EF6E982F7EA89F6EA89F8ED97 +F9EFA3FAF1B2F8EFA7F7EB8CF5E670F5E771F4E466F4E25CF4E361F6EA8FF9F1B2FAF0B1 +F9F1AFF9F0ABF7EC9BF7EEA4F7EFAFFAF5D0FAF7DDFBFAF4FCFBF9FBF9EEFAF6DAFAF3CB +F7EB9CF5E782F5E57AF6E77DF6E887F6E886F6E786F6E784F6E888F6E98CF7EA98F8ECA0 +F8EDA3F9ECA4F8EDA3F7ECA0F8EB9DF8EB9BF8EA97F7EA93FBF5D7FFFFFFFEFEFDFEFEFF +FFFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFEFEFDFFFFFFFCFAE5F6ED9F +F6EA7FF7ED93F8EF9CF8F0A5F9F0A9F9F1A9F9F0A8F9F0A6F9EFA4F9EFA4F9EFA5F9EFA4 +F9F0A5F9F0A6F8F0A5F9EFA1F8ED98F7EC92F6E97FF5E879F6E878F6E776F5E775F5E877 +F6E97AF5E87AF6E97DF7EA81F7EA83F7E982F7E982F6E987F6E987F8EC94F8EEA1F9F0AD +F9F1B2F9EFA5F4E773F4E66CF5E56BF5E35FF4E157F4E571F9EFAAFAF1B1FAF1B0F9F0AE +F8EEA3F7EA8CF6E988F6EC9DF7EEADF8F2C9F8F3CFF8F1C3F7EEABF6EA97F5E472F6E573 +F6E67AF6E784F7E886F7E785F7E886F6E784F6E786F7E88AF7EA95F8EB9CF8ECA1F9EDA4 +F8EDA4F8ECA1F7EC9FF8EB9BF8EB9CF7E993F9F1BDFEFEFFFFFFFEFEFEFEFFFFFFFFFFFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFEFEFEFEFEFDFFFFFFF9F2B9F5E871F6E979F7EB89 +F8ED93F9EFA0F8EFA7F9F1AAF9F0A7F9EFA6F9F0A3F9F0A2F9F0A2F9F0A1F9EFA2F9EFA5 +F8F0A6F9F0A5F8EF9AF7ED94F6EA85F5E97CF5E878F6E775F5E875F5E877F6E87AF5E87C +F6E980F7EA82F6E984F7EA86F6E982F6E983F6EA87F7EC92F7EE9BF8EFA6F9F1B2FAF2BA +F7ED99F5E778F5E56BF4E364F5E362F4E25BF5E56AF7E981FAF0AEF9F0AEF8EFA6F8ED9E +F7EB94F6E679F5E574F5E571F5E470F5E572F5E574F6E575F6E67BF6E67BF5E67DF6E782 +F7E785F6E785F7E886F6E783F6E782F6E785F7E98FF8EA95F8EB9CF9EDA5F9EDA6F8EDA5 +F8ECA2F8EB9FF7EB9DF8EB9EF7EB9CFBF6DCFDFCF6FFFFFFFEFEFEFFFFFFFFFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE +FEFEFEFEFEFEFEFEFDFFFFFFFCFBEFF8F4CDF6EA82F6E879F5E878F6EA82F7EC8BF8EF9C +F9F0A3F8F1A8F9F0A7F9EFA6F9F0A2F9EF9FF9EF9EF9EFA0F9F0A1F9F0A4F8F0A7F9F0A5 +F8EF9CF7ED96F7EA88F6E97EF6E879F5E775F6E775F6E878F5E87CF6E87FF7E982F7E982 +F6E983F6EA86F6E983F6E982F7EA85F7EB90F8ED97F9EEA1F9F0AEFAF2B5F9F2B6F8EFAB +F5E572F4E363F4E263F5E363F4E25EF4E25BF6E87CF8ED98F9EFABF8ED9DF7EC97F6E886 +F5E77FF6E679F6E67AF6E67BF6E67BF6E67AF6E67AF6E57BF5E67DF6E782F6E684F6E785 +F6E785F6E681F5E67FF5E682F7E88DF7EA92F8EB9AF9EDA4F8EEA6F9EDA6F9ECA4F7ECA2 +F8EB9FF7ECA1F8ECA1F7ECA1F9F2C3FEFEFFFFFFFEFEFEFEFEFFFFFEFEFEFEFEFEFEFEFE +FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFEFEFEFEFEFEFEFEFDFEFEFD +FEFEFEFEFFFFFAF5CDF6EC99F6EA7FF6E97DF5E97AF6EA81F7EC89F8EF99F8EFA0F8F0A7 +F9F0A8F9F0A6F9F0A2F9EF9FF9EE9EF9EFA0F9F0A1F9EFA4F8F0A7F9F0A5F8EE9DF8ED97 +F7EB8AF6E980F6E87AF5E775F6E775F6E879F5E97DF5E97FF6E982F7E983F6E984F6E986 +F6E984F6E982F6EA84F7EB8FF8ED97F9EEA0F9F0AEFAF1B3F9F2B6F9F1B7F6E983F4E362 +F5E364F4E362F5E364F4E260F5E467F6E87BF8EFA7F8EDA0F7EB97F6E887F6E781F5E579 +F6E679F6E679F6E67AF6E57AF6E67BF6E67CF6E67DF5E781F5E783F5E784F5E684F6E680 +F6E67FF6E781F6E88BF6E990F7EB99F8EDA3F9EDA6F8EDA6F8ECA5F8ECA2F7ECA1F8ECA2 +F8ECA4F7EB9EF8EDAAFCFBF1FEFEFFFEFEFDFEFEFEFFFFFFFFFFFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFD +FFFEFEFEFEFEFFFFFFFFFFFEFFFEFEFFFFFFFEFEFEFEFEFEFEFEFEFFFFFFFFFFFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFFFEFEFEFEFEFEFEFEFEFEFEFEFE +FEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFEFEFDFEFEFDFEFEFEFEFFFFFDFDFAFBFAEEF8F1B7 +F5E877F5E871F6E97CF6EA7FF5E97DF6E97FF7EB84F7ED93F7EE9AF8F0A4F9F1A9F8F1A8 +F9F0A2F9EFA0F9EFA0F9EFA1F9F0A2F9F0A4F9F0A6F8F0A5F9EEA0F8EE9CF6EC8FF6EB84 +F6E97EF6E775F5E875F5E878F5E87BF6E87FF7EA84F6E986F7EA86F7EA87F7EA87F7E985 +F6E985F7EA8BF8EC93F8ED9DF9F0ACFAF1B0F9F2B5FAF3BCF9F0ADF5E56DF4E363F5E364 +F4E262F5E363F4E25FF4E15AF5E575F8EDA3F8EC9CF7EA8DF6E989F6E67AF5E578F6E679 +F6E67AF6E57AF6E67BF6E67DF6E67DF6E67EF6E780F5E783F5E784F5E682F6E67FF5E67E +F6E785F7E88BF7EA94F8EBA0F9ECA3F8ECA5F9EDA6F8EDA4F8EDA4F8EDA4F9ECA4F9EDA7 +F7EA96F6E584F7ECACFDFDFFFEFDFBFEFDFCFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE +FEFEFEFFFFFFFEFEFEFFFFFFFFFFFEFFFFFFFEFEFEFEFEFDFFFFFEFEFEFFFDFDFFFDFBF3 +FDFAEDFCF9E9FCF9E8FDFAEDFEFDFCFFFFFFFEFEFEFEFEFEFEFEFEFFFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFFFFFEFEFEFFFFFFFDFDF7FBF9E8FAF6CFF8F2B8F6EB8CF5E872F6E97A +F6E97BF6EA7FF5E97DF6EA7FF7EB83F7ED91F8ED99F9EFA3F9F1A9F9F1A8F9F0A4F9EFA1 +F9F0A0F9F0A2F9F0A2F9EFA3F9EFA5F8F0A5F9EFA2F8EE9EF7EC90F7EB86F6E97FF5E775 +F5E875F5E877F5E77AF6E87FF7EA84F6E986F6EA86F6EA88F6EA87F6EA86F6E985F7EA8A +F7EB90F7ED9AF9EFAAF9F1AFF9F2B4F9F2B7FAF2B6F6E87DF4E465F5E264F5E362F4E262 +F5E364F5E260F4E160F7E98DF8EB98F7EB93F7E98BF6E67BF5E578F6E679F6E67AF6E679 +F6E57AF6E57CF6E57DF6E67EF5E780F6E683F6E685F6E784F6E680F5E57EF6E784F6E889 +F7E992F8EB9EF8ECA1F9EDA5F8ECA6F9ECA5F9ECA4F9ECA5F8ECA4F9EDA7F8ECA2F4E069 +F3E06CFAF7E3FFFFFFFEFEFDFDFEFEFDFEFEFDFDFEFDFDFDFDFDFDFDFDFDFEFEFEFEFEFE +FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFDFDF8FCF7E1FBF5DCFAF4D5FAF3CFFAF2CB +FAF2CBFAF4CFFCF8E5FDFBF2FEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE +FFFFFEFEFEFEFEFEFDFEFEFEFEFEFBFDFCF2FCFAECFCF9EAFDFBF0FDFBF0FCFAEEFBFAEA +FAF7DCF9F3C7F9F1B5F6EB8FF5EA7FF5E873F5E76FF6E875F6E978F5E876F6E97AF6EA7E +F5E97EF6EA81F6EB83F7EC8EF8EC95F8EF9FF9F1A8F8F1A9F9F0A7F9EFA2F9F0A1F9F0A2 +F9EFA2F9EFA1F9EFA3F8F0A5F9F0A5F8EFA2F7ED95F7EB8BF6EA83F6E776F6E876F5E877 +F5E77BF6E97FF6EA85F7E986F7EA86F7E986F7EA87F7EA86F7E985F6E987F6EA89F7EC92 +F8EFA4F9F0ABFAF1B3F9F1B5FAF2BBF9EFAAF7EB8FF4E363F5E362F4E263F5E363F4E262 +F3E057F2DD4BF4E264F7EB95F7EA93F6E782F5E57AF6E67AF5E67AF6E679F6E67AF6E67B +F6E67CF6E680F5E783F6E785F7E788F6E788F5E683F6E680F5E681F5E785F7E98DF8EB9A +F7EC9EF8ECA3F9EDA6F8EDA6F8EDA5F8EDA4F8EDA5F9ECA4F8EDA7F6E994F4E069F2D94D +F6EBABFAF4D5FEFDFEFDFCF9FDFDFBFDFDFBFDFDFBFDFDFBFDFDFCFDFDFCFDFDFCFDFDFC +FDFDFBFDFEFDFBF8EAF9F0C6F7EBA9F6E795F7E99AF8EBA6F8ECAAF8EBABF8ECACF8ECAB +F8ECAFF8EDB4FBF3D0FDFCF6FEFEFDFEFEFDFEFEFEFFFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFEFEFEFFFEFE +FEFEFEFBFAEBFAF6CFF9F1AAF8F0AAF8EFA4F9EF9FF8EE9BF7ED8FF6EC88F5E978F5E76D +F5E66CF5E76EF6E975F6E977F6E97AF6E97AF5E879F6E878F6E97AF5EA7DF6EA7FF7EA84 +F6EB84F7EC8CF8ED91F8EE9CF9F0A8F8F1A9F9F0A8F9F0A5F9EFA3F9EEA0F9EFA0F9F0A3 +F9F0A5F9F0A7F8F0A8F9F0A4F8ED98F7EC8EF7EA86F6E779F5E777F5E878F5E77CF6E881 +F7E986F6E986F7E987F7E985F7EA86F7E985F7E882F7E984F6E885F7EB8EF8EEA0F9EFA8 +F9F1B2FAF2B6F9F1B6FAF3BBF9F2B5F6E570F4E25FF5E364F4E362F5E262F3E15DF2DE4F +F2DC44F4E46CF6E98AF7E98EF5E67CF5E67CF6E579F6E679F6E67BF6E67CF5E57EF6E783 +F6E785F6E888F7E98BF6E889F5E683F6E581F6E681F5E582F7E88AF8EA98F7EB9CF8ECA3 +F9EDA7F8ECA6F9EDA7F8EDA6F9ECA4F8EDA4F7ECA2F8ECA7F8ECA2F1D73DEECE16EFD32D +F6E790F8EFBCF9F7EDFBFBFAFCFCFDFCFBFEFDFDFEFDFEFFFDFEFFFDFDFCFBFAF9F9F4D9 +F6E692F5E281F6E588F7E99BF8EAA3F9ECAAF9EDAEF9EDB0F9EDB0F9EDAFF9ECAEF9EBAC +F8EBA9F8EDB6FAF1CCFEFEFEFFFFFEFEFEFEFFFFFFFFFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFEFEFEFFFCFAE7FAF4C5 +F9F3B8F8F0A5F9F0A5F9EFA2F9EF9DF8EE9AF7ED8FF7EC89F6E97BF6E772F6E874F6E876 +F6E877F6E877F6E877F6E97AF6E97CF6E97BF6E97AF5E97CF6EA80F7EB85F6EB86F7EC8D +F7EC8FF8EE9AF9F0A6F8F1A9F9F1A8F9F0A6F9EFA4F9EFA2F9EFA2F9F0A4F9F0A6F9F0A8 +F8F0A7F9F0A5F8ED9AF8EC90F7EB89F6E87CF5E879F5E878F5E87DF6E981F7EA87F6EA87 +F7EA87F7EA86F7EA86F7E984F7E982F7E983F6E885F7EA8DF8ED9EF9EEA6FAF1B1F9F2B5 +F9F1B5F9F2B7FAF2B8F7E884F4E25CF4E361F4E363F5E263F4E160F2DE53F2DD49F2DD49 +F4E269F7EA93F6E782F6E67DF5E579F6E679F6E67BF6E57DF5E680F6E785F7E887F6E889 +F7E98BF6E88AF5E684F6E681F6E681F5E682F6E78AF7EA97F7EB9AF8ECA3F9EDA6F8ECA6 +F9EDA7F8ECA6F9EDA4F8EDA4F7ECA3F7EBA1F8ECA3F4DE62EED120EED11FF0D53BF1DB5A +F6EAA6F8EFB9F8EFB8F8EFC2F9F2CCFAF4D6F9F3D3F9F1C7F9EEB8F7EAA4F6E486F6E488 +F6E68EF7E89BF8EAA1F8EBA8F9EDACF8ECAFF9ECAFF9EDAFF9ECAEF9ECAEF9ECACF8EBAC +F8ECB0FCF7E2FEFEFCFEFEFEFFFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFFFFFFFCF9E1FAF5CBF9F1AFF9F0A7F9F0A7F8F0A3 +F9EFA3F9F0A4F9F0A4F9F0A3F8EE9BF8EE96F7EC8AF5E879F6E876F6E774F6E774F6E875 +F6E976F6E97AF6EA7FF6EA7FF6E97CF5E87AF6E97DF7EA84F6EB86F6EB89F6EB8AF7ED93 +F8EFA1F9F0A6F8F1A9F9F0A7F9F0A6F9F0A5F9F0A5F9EFA5F9F0A6F9F0A8F8EFA9F9EFA7 +F8EF9FF8ED97F7EC90F6EA82F6E87DF6E77AF5E97DF6E982F7EA88F6EB89F7EA89F7EA87 +F7E986F7E985F7EA84F7E983F7E882F6EA89F7EC99F8EEA1F9F0ADFAF1B2F9F1B4F9F1B3 +FAF1B5F9F0ACF5E571F5E364F5E263F5E364F4E263F3DF5AF3DE51F1D934F0D832F4E36C +F7EA90F6E786F5E57BF6E67AF6E67BF5E67DF6E683F6E787F7E788F6E889F7E88AF6E788 +F5E684F6E680F6E680F6E680F6E787F7EA94F8EA97F8EB9EF8EDA2F8ECA6F8ECA6F9EDA5 +F8ECA4F7ECA2F8ECA2F7EBA1F8ECA3F7E997F2D94CF0D433EECB0EEDC901EFCF1EF4DD62 +F5E06FF5E37AF5E27AF5E27EF5E27EF5E381F5E381F5E382F5E485F5E488F6E58CF7E897 +F7E99CF8EBA5F9ECABF8ECADF9ECB0F9EDB0F9ECAFF9EBAEF8EBADF9EAAAF8EAA5F8EAA5 +F8EDB7FDFBF4FFFFFFFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFE +FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFFFFFEFEFEFFFAF4C1F9F0ABFAF1AFF9F1AAF8F0A7F9EFA2F9F0A3F9EFA4 +F8EFA5F9F0A4F8EF9FF7EF99F7ED8FF5E980F5E878F6E774F6E875F6E875F6E977F6E978 +F6EA7EF6EA7FF6E97CF5E87BF6E97DF7EA83F6EB85F6EA85F7EB87F7ED8FF8EF9EF9F0A3 +F8F1A9F9F1A8F9F0A6F9EFA5F9EFA6F9EFA5F9EFA5F9EFA7F9EFA9F9F0A8F8EFA2F7EE9A +F7EC93F7EA86F6E881F5E77BF5E87EF6E982F7EB88F6EB8AF7EA8AF7E987F7EA86F7EA86 +F7EA86F7E983F7E882F6E987F7EC96F8ED9CF9EFAAFAF1AFF9F2B3FAF1B4F9F0B1FAF1B5 +F7EA90F5E572F4E25FF5E365F5E264F4E161F3DE56F1DB41F0D933F1DA3DF7EA91F6E98D +F5E57EF6E57BF6E67BF5E77DF6E782F7E886F7E887F7E787F7E789F6E787F5E683F6E580 +F6E680F5E57FF6E685F7E991F8EA94F7EB9BF8ECA0F9ECA4F8ECA5F9EDA4F8ECA4F7EBA2 +F8ECA1F8ECA2F7EBA1F7EBA2F6E37EF2D94DEECF1CEECE19ECC805EFCD1CF4DC5DF6E68E +F6E481F6E37FF6E482F6E586F6E58CF6E58BF6E487F5E386F6E588F7E794F8E89AF8EAA3 +F9ECA8F9EBACF8ECAEF9ECAFF9EBAFF9EBAFF9ECAEF8EBABF9EBACF8EAA3F7E79BFBF4D8 +FFFFFFFEFEFDFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE +FFFFFFFEFDFBFAF3BFFAF1ADF9F1AEF8F1A8F9F0A6F9EFA3F9F0A3F9F0A4F8EFA4F9F0A5 +F8EFA0F8EF9BF7ED93F6EB89F6EA7FF5E774F6E875F6E875F6E875F6E877F6E97BF6EA7C +F6E97CF5E97DF6E97EF7EA82F6EB83F7EA83F6EA85F7EC8CF8EF9BF9F0A1F8F0A9F9F0AA +F9F0A8F9F0A6F9F0A6F9EFA6F9F0A6F9F0A7F9F0A9F9F0AAF8EFA4F8EE9DF8ED97F7EB8B +F6E985F5E87BF5E87EF6E981F7EA87F6EB8AF7EA8AF7E988F7E985F7E983F7E984F6E983 +F6E881F6E983F7EB92F8EC99F9EEA7FAF0AEF9F1B3FAF1B4F9F1B2FAF0B1F9EFA8F7EA8D +F4E261F5E363F4E264F4E263F3E05AF1DD46F1DB3DF1D831F4E05AF5E579F6E786F5E67D +F6E67BF5E67DF6E782F6E786F6E785F6E786F7E889F6E787F5E684F6E580F6E57FF5E57E +F6E681F7E88DF7E992F7EA99F7EB9DF8ECA1F9EDA4F9EDA5F8ECA4F7EBA3F8EBA2F8ECA1 +F8EBA1F7EA9FF7E998F4DF6CEFD022EECF1DEDCA09EDC805EFCF25F5DF71F5E27CF6E382 +F6E381F6E484F6E588F6E588F6E486F6E386F5E486F6E690F7E797F8E9A0F8EAA5F8EBAA +F9ECAEF8ECAEF9EBAEF9EBAEF9ECADF8EBABF9EBABF8EAA8F7E9A2F8EDB9FDFBF4FEFEFB +FEFEFDFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFEFEFFFFFFFEFEFEFEFEFEFEFEFEFEFDFBFDFDF9FEFDFAFEFEFBFEFEFCFEFEFE +FEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFDFBF3 +F9F2B5FAF2ABF9F1ADF8F1A8F9F0A6F9EFA4F9F0A4F9F0A3F9EFA3F9F0A4F8EFA2F9EE9E +F8EE98F8ED90F7EB87F5E775F6E774F6E775F6E774F6E875F6E977F6E877F6E97BF5EA7E +F6E97FF7EA81F6EB81F7EB83F6EA84F7EB88F8EE97F8EF9DF9F0A8F8F0ABF9F1AAF9F0A8 +F9F0A7F9F1A7F9F0A6F9EFA7F9F0AAF9F1ABF8F0A8F9EFA2F8ED9BF6EC8EF6EB89F6E87D +F5E77CF6E87FF6EA86F7EB89F7EA8BF7E989F7E985F6E882F7E983F6E984F5E781F6E782 +F7E98CF7EB92F8EDA1F9EFAAF9F1B2FAF2B5FAF1B4F9F0B0FAF2B8F9F0ACF5E46AF4E25F +F5E366F5E263F3E15EF3DE50F2DC47F0D82FEED319F2DD50F7EA92F6E784F5E57AF6E57D +F6E680F6E785F5E684F6E786F7E887F6E788F5E683F6E580F6E47EF6E47DF5E47EF6E788 +F6E88DF7EA97F8EB9BF7EC9FF8EDA4F9ECA4F9EDA5F8ECA3F7EBA2F8ECA1F8EBA2F7EA9F +F8EDA7F7E793F0D333EFD022EDCB10ECC600ECC601EFCD1EF3DA57F6E48AF5E27DF5E383 +F6E587F6E586F6E485F6E384F5E385F6E58EF7E792F7E99CF7E9A1F8EAA7F9ECAEF8EDAF +F9EBAEF9ECACF9EBABF8EBACF9ECADF8EBAAF7EBA8F7E79BF9EDBCFBF5E0FEFFFFFFFEFE +FEFEFEFEFEFEFEFEFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE +FEFEFEFEFEFEFFFFFFFEFEFEFAF5DEF9F0CDF9F1D0FBF5D9FCFBF3FEFFFFFFFEFEFEFEFE +FEFEFEFFFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFDFFFFFFFCFAECF8F1AEF9F1AB +F9F1ADF8F1A8F9F0A6F9EFA4F9F0A4F9F0A1F9EFA1F9F0A2F8EFA1F9EF9FF8EE9AF8ED92 +F7EC8BF5E979F6E874F6E875F6E775F6E775F6E877F6E877F6E97AF5EA7CF6E97FF7EA82 +F6EB82F7EB84F6EA84F7EB88F7ED94F8EE99F8F0A5F9F1ABF8F0AAF8F0A8F8F0A8F9F0A7 +F9F0A6F9EFA7F9F0AAF9F1ABF8F0A8F9EFA3F8EE9EF7EC92F7EB8CF6E87FF5E77BF6E87E +F6EA84F7EA88F7EA8BF7E989F7E984F6E984F7E986F6E984F5E880F6E881F6EA89F7EB90 +F8ED9FF9EFA8F9F1B1FAF2B6F9F1B6F9F1B2F9F1B2FAF1B2F6E87FF5E367F4E263F5E262 +F3E05DF2DE4FF2DC47F0D832EFD522F0D836F6E67EF6E886F5E67CF6E57AF6E67FF6E784 +F5E785F6E785F6E786F6E787F6E685F5E583F5E57FF6E47DF5E57DF6E686F7E78BF7E995 +F8EA9AF7EB9FF8ECA4F9EDA5F9EDA5F8ECA3F7ECA2F8ECA1F8EBA2F7EBA0F7EBA0F7EA9B +F2D952F0D230EDCC12EDC905EDC803EDC706F0CF29F6E27FF6E486F6E384F5E587F6E486 +F6E385F6E485F5E386F6E58EF7E792F7E89BF8EAA0F8EAA5F9EBACF8ECAEF9EBAEF9ECAD +F9EBABF8EBACF9ECAEF8EBAAF8EAA8F8E8A1F8E8A2F7E9A9FAF5DCFEFEFEFEFEFDFFFFFF +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFD +FDFDFCFCF6E0FAEEC2F9EEBFF9EEBFF9EEC1F9F0C9FCF8E7FEFCF8FEFEFEFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFDFEFEFFFCF8DDF8EE9CF8F0A5F9F1AAF8F1A8 +F9F0A6F9EFA5F9F0A4F9F0A1F9F0A0F9EFA0F8F0A1F9F0A1F8EF9EF8EE99F7EC93F6EA82 +F5E977F6E875F6E774F6E774F6E876F6E977F6E979F5E97BF6E97FF7EA82F6EB83F7EA84 +F7EA84F6EB86F7EC8EF7ED92F8EF9DF9F0A8F8F0AAF9F0AAF9F0AAF8EFA8F9F0A7F9F0A8 +F9EFA9F9F0AAF9F0ABF9EFA7F8EEA3F8ED9AF7EC94F6E984F5E87DF6E87DF6E983F7E987 +F7EA8BF7EB8BF7E988F7E987F7E987F6E986F6E984F6E880F6E984F7EA8AF8EC99F9EEA3 +F9F0ADFAF1B6FAF2B7FAF1B5F9F0B0FAF1B4F9EFABF7EA91F4E263F5E365F4E262F3DF57 +F2DD50F1D93AF1D730F0D526F0D732F3E05DF6E783F5E579F6E57BF6E681F6E684F6E682 +F5E684F6E787F7E78AF6E789F6E683F6E57EF5E47CF6E581F6E685F7E992F8EA98F7EB9E +F8ECA4F9ECA5F9ECA5F8ECA3F7EBA1F8EBA0F8EBA1F8EBA1F7EA9DF8EB9FF7E790F3DE66 +EECE1CEDCB0FEDC806ECC600ECC500F0D235F5E27DF5E382F6E589F5E486F6E385F6E486 +F5E386F6E48CF7E690F7E798F8E89DF8E9A2F9EBABF8EBADF9EBAEF9EBADF9EAAAF9EBAC +F8EBADF9EBABF8EAA8F8E8A2F7E698F6E48EF5E183F6E597F6E8A8F8F0CBFAF3D7FCFAEE +FDFBF4FDFCF6FDFCF8FDFCF6FDFAEFFDFAECFCF8E9FBF6E1FBF5DDF9EEC1F8E8ABF8E8A8 +F8EAB0F9EBB5F9EBB7F9EAB6F9EAB3F9EBB5F8ECBAFBF7E7FEFEFEFEFEFDFFFFFFFFFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFEFEFFFEFDFDFDFFFAF6D5F7ED92F8EF9FF9F1A8F8F0A8F9F1A7F9F0A6 +F9EFA5F9EFA1F9F0A0F9F0A0F8EFA2F9F0A2F8EFA0F7EF9CF8ED96F6EB86F5E97AF6E875 +F6E774F6E774F6E876F6E977F6E879F5E87CF6E97EF7EA82F6EB83F7EA85F7EB85F6EA84 +F7EC8BF8EC8FF8ED99F9EFA5F8F0A8F9F1ACF9F0ABF8EFA8F9F0A8F9F0A7F9EFA8F8F0A9 +F8F1ABF8EFA9F9F0A5F8EE9DF8ED97F7EA88F5E97FF6E87EF6E983F7EA87F7EA8BF7EB8D +F7EB8BF7EA88F7E987F7E886F7E886F6E881F6E985F7E989F8EC97F9EEA0FAF0ACFAF1B6 +F9F2B7FAF1B6FAF0B3F9F0B1FAF1B7F9EFA9F4E367F4E264F5E366F3E05DF2DF56F2DB41 +F1D834F0D72EEED113F1D836F6E783F5E579F5E57AF6E57FF6E57FF6E680F5E783F6E787 +F7E88BF7E88CF6E787F5E580F6E47CF5E47FF5E584F7E891F8EA98F7EB9EF8ECA3F9ECA5 +F9ECA5F8EBA2F7EAA1F8EAA0F8EAA0F8EAA0F8EB9FF7EA9CF8EBA2F6E584EFD025ECCC13 +EDC909EDC603ECC700EDC90AF2D955F5E37FF6E58DF5E486F5E486F6E385F5E385F6E48A +F7E58EF7E796F8E79CF8E9A2F9EBAAF8EBACF9ECADF9ECABF9EBABF9EAACF8EAACF9EBAB +F8EAA9F8E8A3F7E79DF6E799F4DC6EF5DF7DF6E186F5DF7FF6E086F6EAB3F7F1D5F8F3E0 +F8F5EAF8F2DEF7ECBCF7E9ABF6E7A4F6E69DF6E396F6E291F6E49AF7E6A4F9EAB0F8EBB2 +F8EBB5F8EBB5F9EBB7F9EBB6F8E9ADFAF0CCFDFDFBFEFEFDFFFFFFFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFEFEFFFEFDFCFCFBF9F4CBF7EB89F8EE98F9F0A4F8F0A7F8F1A8F9F0A8F9F0A7F9F0A4 +F9F0A2F9F0A2F9EFA2F9F0A2F8EFA2F8EFA0F8EE9AF7EC8DF6EA83F6E979F5E774F6E875 +F6E877F6E979F6E97CF6E97EF6E97EF6EA80F7EA82F6EB84F7EB85F6EA84F7EB88F7EC8B +F8ED96F8EFA1F8EFA5F9F1ACF9F0ACF9F0AAF8EFA8F9F0A7F9EFA8F9F0A9F9F1ACF9F0AB +F9F0A8F8EE9FF8ED99F7EA8AF6E980F6E87FF6E983F7EA87F7EA8BF7EB8DF7EA8CF7E988 +F7EA87F6E986F7E886F6E882F6E883F6E985F7EB94F8ED9CF9EFA9FAF1B4F9F1B5F9F1B6 +FAF1B4F9F1B2FAF0B2F9F1B2F6E881F4E268F5E36CF4E264F4E15FF2DC4AF1D939F0D731 +EFD522EFD422F4E164F6E783F5E57DF6E57EF6E680F6E681F5E785F6E786F7E789F7E78A +F6E787F6E683F6E57EF5E47DF6E480F6E88EF7E996F7EB9DF8ECA2F8ECA3F8EBA3F8EBA2 +F7EBA1F8EAA0F8EBA1F8EBA1F8EB9FF7EA9DF8EA9EF7E896F1D641EDCB13EDCA0CECC702 +ECC702EDC706EECB15F2D955F6E58FF5E488F6E488F6E388F5E386F6E487F6E48AF7E692 +F7E799F7E99FF8EBA9F9EBABF8EBACF9EBABF9EBABF8EAABF9EBABF8EAA9F8EAA8F8E8A3 +F7E79BF7E79DF4DC72F0CE38F2D556F5E084F5E085F6E28DF6E392F6E494F6E495F6E494 +F6E391F6E291F6E393F7E395F7E495F7E498F6E49BF7E6A1F8E9ACF8EAAFF8EAB2F9EAB3 +F9EAB2F9EAB1F8E9B0F9EBB8FAEEC5FDFBF2FFFFFFFEFEFEFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFE +FBFBF6F9F2C2F6E980F7ED91F8EFA1F9F0A8F8F1A8F9F1A9F9F1A9F9F0A7F9EFA4F9EFA5 +F9F0A3F9EFA2F8EFA4F9F0A2F8EF9EF7ED92F6EB8CF6E97DF5E773F6E874F6E979F5EA7D +F5EA7EF5EA7EF6EA7FF7E980F6E982F7EB85F7EA85F7E982F6EA84F6EB87F7ED91F8EE9E +F9EFA3F8F0ACF9F1ADF9F1ABF8F0A9F9EFA7F8EFA8F9F0ABFAF1ADFAF1AEF9F0AAF9EFA2 +F8EE9CF7EB8BF7EA82F6E980F6E983F7EA87F7EA8BF7EB8DF7EA8CF7E988F7EA86F6E987 +F7E887F6E883F5E782F6E883F7EA91F8EC97F8EFA5F9F0B2FAF1B4F9F2B6FAF2B5FAF1B4 +F9F0B0FAF2B7F8EC9EF5E169F4E26BF5E36CF4E369F3DE54F2DA3FF1D836F0D62AEED319 +F1D93AF6E88CF5E680F5E57EF6E781F6E683F5E786F6E686F7E687F6E687F7E688F7E788 +F6E581F5E47CF5E47EF6E78CF7E995F7EB9BF7ECA1F7EBA1F7EAA1F7EBA2F8EBA1F8EAA0 +F8EBA1F8EBA1F8EA9FF8EB9EF7E99BF8EBA3F3DD63EDCB16EDCA10ECC601EDC602EDC703 +ECC500EFCD20F5E487F5E58AF6E489F5E38AF6E488F5E386F5E387F6E691F6E697F7E89F +F8EAA9F9EBABF8EAAAF9EAAAF9EBABF8EAABF9EBAAF8EAA8F7E9A7F8E8A3F8E79DF7E69B +F5E28AEEC71BEDC40EF3D75CF5DF80F6E189F5DF81F5E084F5E084F5E084F5E087F5E08B +F5E18FF6E291F7E292F7E496F6E398F7E59EF8E8A9F8E9ADF8E9AFF9EAB1F9E9AFF8E8AE +F9E8AFF9E8ADF8E7A7FAF1D2FFFFFFFEFEFDFEFFFFFFFFFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFEFDFCFCFEF9F3C6 +F6E97BF7EC8DF8EF9FF9F0A6F9F0A7F8F1AAF9F0AAF9F0A8F9F0A6F9F0A5F9EFA2F9F0A2 +F8EFA4F9F0A2F8EFA0F7EE95F7EC8FF6EA82F5E876F6E874F5E979F6EA7DF6E97FF6EA80 +F6E980F7EA82F6EA83F7EA85F7EB85F7EA82F7EA82F6EB84F7EC8DF8ED98F8EE9EF9F0AA +F9F1ADF9F1ADF9F0AAF9F0A9F8EFA9F9F0ABFAF1ADFAF1AFF9F1ACF9EFA3F8EE9CF7EB8C +F7E984F6E981F6E982F7EA86F6EA8AF7EB8DF7EA8BF7E987F7E986F6E985F7E884F6E882 +F5E780F6E881F7EA8DF7EC94F8EEA2F9F0B1FAF1B4F9F2B7FAF1B5FAF1B4F9F0B1FAF1B3 +F9EFAAF5E475F4E36DF4E36DF5E26BF3DF58F2DA45F1D93BF0D62DEFD424EFD627F3E061 +F5E57BF6E682F5E781F6E685F5E786F6E787F7E688F6E788F6E788F7E788F6E585F5E47E +F5E47CF6E687F7E88FF7EA99F8EBA1F8EBA1F8EBA1F8EBA2F8EBA1F8EAA0F8EBA1F8EAA1 +F8EB9FF8EA9FF7E99CF8EAA0F5E37CEECE22EDCB13ECC703ECC703EDC703ECC604EDCA12 +F1D850F4E17AF6E58EF5E388F6E488F5E487F6E387F7E591F7E796F7E89EF8EAA8F9EBAA +F8EAABF9EBABF9EBABF8EAAAF9EBAAF8EAA8F7E9A7F8E8A3F8E79DF7E69AF6E38DF2D454 +EFC926EEC619F1CF3FF5E086F6E28EF6E189F6E188F6E088F6E088F6E08AF6E18EF6E392 +F7E293F7E396F6E398F7E59FF8E8A9F8E8ACF8E9AFF9E9AFF9E9AEF9E9AEF8E9AEF9E9B0 +F8E8AFF9ECBDFDFCF6FFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFCFFFFFFFBF7D3F6E876F6EA81 +F8EE98F8EFA1F8F0A4F9F1A9F8F0AAF9F0A9F9F1A7F9F0A6F9EFA1F9F0A0F9F0A1F8EFA4 +F9F0A3F8EF9DF8EE99F7EC8DF6E97FF6E877F5E978F6E97CF7EA80F7EB82F7EA83F6EB83 +F7EB84F7EA85F7EA86F7EB85F7EA82F7EA81F6EA85F7EC91F8ED98F8F0A9F9F1ABFAF1AE +FAF0ADF9F1ACF8F0AAF9EFA9F9F0A9F9F0ABF8F0A9F9EFA5F8EEA0F7EB90F7EA86F6E981 +F6E881F7E986F6EA88F7EA8BF7EA8BF7E988F7E987F6E985F7E984F6E882F5E77FF6E77E +F6E886F7EA8DF8EC9BF9F0ACFAF0B2F9F1B6FAF1B6FAF1B6FAF0B3F9F0B2FAF1B4F8EDA0 +F6E783F4E26AF5E36DF4E162F3DD52F2DC48F1D736F0D631EFD31BEDD00EF2DC4DF6E786 +F5E682F6E685F5E786F6E786F7E687F6E788F6E789F7E789F6E689F5E581F6E47EF6E581 +F5E685F7E994F8EBA1F7ECA3F8EBA2F8EBA2F8EAA1F8EBA0F8EBA1F8EBA0F8EAA1F8EBA0 +F7EAA0F8E99FF7E899F3DD62F0D232EDC90BEDC90AECC603EDC807ECC90CECC90CF0D33A +F5E389F5E38AF5E389F5E488F6E387F6E58EF7E694F7E79BF8EAA6F9EBA9F8EAABF9EBAB +F9EAABF8EBAAF9EAA9F8EAA9F8EAA9F7E9A5F8E79EF7E69BF6E38EF6E28CF2D65DECC105 +ECC003F0CC36F4DD79F5DF82F6E088F5E087F6E18BF5E18DF6E18FF6E292F7E292F7E294 +F6E398F7E59DF8E7A8F8E8ACF8E9AEF9E9AEF9E8AEF9E8ADF9E8AEF8E9B0F9EAB4F8E7AA +FAF0CCFCF8ECFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFDFFFFFFFCF8DAF5E874F6E978F7ED93F7EE9E +F8EFA1F9F0A8F8F1A9F9F0A9F9F1A8F9F0A6F9EFA1F9F0A0F9F0A1F8EFA5F9F0A4F8EFA0 +F7EF9CF7EC8FF7E982F6E979F5E877F6E87AF6EA80F7EB82F6EB84F7EA84F7EA84F7EB85 +F7EB86F7EB87F7EB85F7EA83F6EA82F7EC8EF7ED97F8EFA8F9F0ABFAF1ADFAF0ADF9F1AD +F8F0AAF8EFA8F8EFA7F8EFA7F8EFA7F9F0A6F8EFA2F7EC94F7EB8AF6E983F6E880F7E884 +F6E988F7E98AF7EA8CF7EA8AF7E987F6E986F7EA86F6E883F5E77FF5E77DF6E884F7EA8B +F8EB98F9EFAAFAF0AFF9F1B6FAF1B5FAF0B5FAF1B4FAF1B3F9F0B1FAF1B3F8EA92F4E266 +F5E36CF4E266F3DF59F3DD50F1D83AF0D734EED21DECCD01EFD52AF6E786F6E583F5E685 +F5E786F6E685F7E787F7E688F6E68AF7E68BF6E689F5E582F6E47FF6E581F5E584F7E892 +F8EBA1F7ECA5F8EBA4F8EAA1F8EBA1F8EAA0F8EBA0F8EBA0F8EAA0F8EBA1F7EAA0F8EA9F +F7E99AF5E486F1D644EDCA0EEDC90FECC704EDC908EDC90FECC90EEDCC19F4E17DF6E490 +F5E389F6E388F5E388F6E58EF7E593F7E79AF8EAA6F9EBA9F8EAAAF9EAAAF9EAABF9EBAA +F8EAA9F9EAAAF8EAA9F7E9A6F8E79FF7E69DF6E38FF6E28FF4DC75EDC414ECC008ECC20E +F1D048F4DC77F6E38FF5E087F5E18CF5E291F6E292F6E391F7E292F7E395F6E499F7E59D +F8E7A7F8E8ABF8E8AEF9E8AFF9E8AEF9E7ADF9E7ADF9E8AFF8E9B1F9E9AFF8E9B1F9EFC9 +FEFFFFFFFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFEFEFDFFFFFFFCFAE9F5E97EF5E86FF7EB87F8ED98F8EE9CF9EFA5 +F8F0A6F9F1A8F9F0A9F9F0A8F9F0A4F9EFA2F9F0A2F9EFA4F9F0A4F8EFA1F8EF9EF7ED94 +F6EB8AF6EA81F5E978F5E877F6E97CF6EA7FF6EA83F7EA82F6EA81F6EA83F6EA84F7EA86 +F6EA85F7EA83F6E980F7EB8DF8EC95F9EFA4F8F0A7F9F0ACFAF1ADF9F1ADF9F0ABF9F0AA +F9F0A9F9F0A9F9F0A9F9F0A8F9EFA6F8ED9BF7EC92F7EA8BF6E987F7EA89F7EA8CF7EA8D +F7EB8DF7EA8DF7EA8CF7EA8CF6EA8BF7E989F6E883F6E780F6E883F7E988F7EB94F8EEA7 +F9EFACFAF1B4F9F1B6FAF0B5FAF1B5FAF1B5F9F0B2FAF1B6F9EFA7F5E372F4E26BF4E269 +F5E062F3DE56F1DA3FF0D838EED31EEDCF0DEDCE0BF3DF61F6E786F5E681F5E784F6E685 +F7E788F6E789F6E78CF7E88CF6E78BF5E684F5E582F6E686F6E689F7E893F8EB9FF7EBA3 +F8ECA5F8EBA3F7EAA2F8EBA2F8EBA2F8EBA3F8EBA3F8EAA2F8EBA0F8EAA0F7E99BF8E99C +F3DD68EECD1AEECB16ECC90CEDC80DEDC911EDC915ECC80FF1D64EF5E48CF5E388F6E387 +F5E285F6E38AF6E58FF7E698F8EAA5F8EBA8F9EBABF9EBACF9EBABF9EBAAF8EAA9F9EAAA +F8EAA9F7E9A6F8E8A1F7E79EF6E491F5E188F5E086EFCD37EDC518EDC20EEDC312F0CD3C +F5E085F5E088F6E18EF6E292F6E292F6E293F6E292F7E295F6E398F7E59DF8E7A7F8E8AB +F8E8AEF9E9AFF9E9AFF9E8AEF9E8ADF9E8AEF9E9B0F9E9B0F9E8AEF9E9B3FCF7E9FDFCFA +FDFDFCFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE +FEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFEFFFFFEFEFEFEFEFEFEFEFEFEFEFEFE +FEFEFEFFFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFFFFFFFCFBF4F5EA87F5E76AF6E97CF8EC92F7EE98F8EFA4F9F0A5F8F1A8 +F9F0A9F9F1A9F9F0A6F9EFA3F9EFA4F9F0A5F9EFA5F8EFA2F9F0A0F7ED98F6EB90F6EB87 +F5E97AF6E875F5E979F5EA7DF6EA80F7EA81F7E97FF7E981F7E983F6EA85F7EA85F7E983 +F7E980F6EB8AF7EC93F9EFA2F8F0A4F9F0ACFAF1AFF9F0AEFAF0AEF9F1ADF8F0ABF8F0AD +F8F1ACF8F0ACF9EFAAF8EDA1F8ED99F7EB93F6EA8EF6EB8FF6EA8FF6EA8EF6EA8EF6EA90 +F6EA91F6EB8FF6EB8FF7EA8CF7E887F6E783F6E884F7E986F7EB91F8EEA3F9EFA9FAF1B2 +F9F0B5FAF0B5FAF1B6FAF0B5F9F0B3FAF0B4F9F1B6F5E77FF4E36DF5E26BF5E268F3E05C +F2DA47F1D83CEED320EED011ECCB00F1D83CF6E88BF5E57FF5E782F6E685F7E788F7E88A +F6E78CF7E88DF6E78CF5E686F5E585F6E688F7E78BF7E993F8EA9EF7EBA1F8ECA5F8EBA4 +F7EAA3F7EAA2F7EAA2F7EAA3F7EAA3F7EAA3F8EBA1F8EAA0F7E99DF8EBA4F5E384EFD025 +EECC1AEDC910ECC810ECCA15ECCA19ECC810EECD29F4E07AF5E387F6E387F5E284F6E386 +F7E58BF7E695F8EAA4F8EBA7F9EBABF9ECADF9EAABF9EAAAF8EBAAF9EBAAF8EAA9F7E9A7 +F8E8A2F7E79FF6E493F5E086F6E28CF2D65DEFCA2DECC108ECC10EEDC212F3D767F5DF85 +F6E292F6E192F7E293F6E293F7E192F7E295F6E297F7E59DF8E7A7F8E8ABF8E8AEF9E8AE +F9E8AFF9E9AFF9E8ADF9E8AEF9E9AFF9E8B0F9E9B2F8E7A9F9EDC6FAF7EDFEFEFEFDFDFD +FDFDFDFDFDFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFDFEFEFDFEFEFDFEFEFDFEFEFDFEFEFDFEFEFD +FEFEFEFFFEFFFFFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE +FFFFFFFCFCF7F6EB89F5E76AF6E878F6EB87F7ED91F8EFA0F8F0A3F9F1A8F8F0A9F9F1A9 +F9F0A7F9F0A5F9F0A5F9EFA4F9F0A5F8EFA3F9F0A3F8EE9BF7EC94F7EB8DF6E97CF5E978 +F6E978F6E97AF6E97EF6EA7FF6E97FF6EA80F6EA81F7EA84F6EA85F6EA84F7E981F6EB89 +F7EC90F8EFA0F8EFA4F9F0ADFAF1B0F9F1B1FAF1B1F9F1B0F9F1B0F9F0B0F9F1B0F9F1B0 +F9F0AFF8EFA7F8EE9FF8EC9AF7EB94F7EB94F7EB93F7EB92F7EB92F7EB93F7EB93F7EB91 +F7EA8FF6EA8EF6EA8BF6E989F6E989F7E98AF7EB91F8EDA2F9EEA8FAF1B3F9F1B7FAF1B6 +FAF0B5FAF1B6F9F1B5F9F0B5FAF1B7F7EC9AF6E680F4E26AF5E269F3E05FF2DC4AF1D940 +EFD425EED116EDCD05EED21DF3DE5EF5E57FF5E683F6E685F7E789F6E88BF7E78CF6E78C +F7E78CF6E689F5E687F6E689F7E78CF7E891F8EA9DF8EBA1F8ECA6F8EBA6F8EBA6F8EBA4 +F8EBA4F8EBA5F8EBA5F8EBA4F7EAA2F7EAA2F7EA9FF8EAA0F7E795F0D541EECE24EDCA11 +EDCA14EDCA17EECB1AEDC917EDCB1FF0D23EF4E07CF6E48AF5E283F6E386F6E38AF7E694 +F8E9A3F8EAA7F9EBACF9EBADF9EBACF8EAAAF9EAA9F8EAAAF8E9A9F7E9A7F8E8A2F7E79F +F6E494F6E189F5E189F5DE7BF1D14AECC006EDC210EDC211EEC727F2D357F6E498F6E291 +F6E292F7E193F6E292F6E293F7E295F7E49CF8E7A8F8E8ADF8E9B0F9E9B0F9E9AEF9E8AE +F9E8AEF9E8AFF9E9AFF8E8B0F9E9B2F8E8B0F8E7ADF8E8B1FBF5E4FDFEFFFEFEFEFEFDFD +FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE +FEFEFEFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFEFEFFFE +FFFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFDFFFFFFFCFAEB +F5E980F6E76DF6E876F5E877F6EA82F7EE97F8EF9CF9F0A6F8F1A9F9F0A9F9F1A7F9F1A6 +F9F0A5F9EFA4F9F0A4F8EFA4F9F0A5F8EFA0F7EE9BF7ED94F6EA84F6E97DF6E978F5E878 +F5E97BF5E97EF5E97EF5EA7FF5E97FF7EA82F6EA85F6EA84F6E980F6EA83F7EB8AF8EE9C +F8EEA3F9F1B0FAF3B7F9F3B7FAF2B7FAF2B8FAF2B7FAF2B7FAF2B7FAF2B6FAF2B5F9F1AF +F9F0AAF9EFA5F8ED9EF7ED9CF8ED9AF8ED98F8ED98F8EC98F8EC98F8EB96F8EB94F7EB92 +F7EB92F7EB92F7EB94F8EB95F7EB94F8ED9DF9EEA5FAF1B4F9F2B8FAF1B7FAF0B5FAF1B6 +FAF2B8F9F1B9F9F1B8F9F2BCF8EEA5F5E370F5E26AF4E165F3DE56F2DB4CF0D632EFD426 +EFD21CEDCF0DEECF10F3E168F6E88CF6E786F7E88BF6E78DF7E88EF7E88FF7E88EF7E88D +F7E78DF7E78EF6E88EF7E892F8EA9FF8EBA4F9EDAAF9EDABF9EDABF9EDA9F9ECA9F9ECA8 +F9ECA7F9ECA7F8EBA7F8EBA6F8EBA4F7EAA1F8EAA1F6E380F2D74EEECB19EECC1BEECC1D +EFCC22EECB1FEDC917ECC60CF1D64EF6E48EF5E385F5E387F5E388F7E593F8E9A2F8EAA6 +F9EAABF9EBADF9EBADF8EAABF9EBAAF8EAAAF8E9A9F8E9A7F8E8A2F7E7A0F6E496F6E28D +F5E187F6E390F4DC78EDC418ECC10CEDC212ECC10DEDC317F3DA74F7E49AF6E294F7E293 +F6E191F6E190F6E192F6E49AF8E7A6F8E7ABF8E9AFF9E9B2F9E8AEF9E7AEF9E8AFF9E9B0 +F9E8AFF8E9B1F9E9B2F8E8B1F7E5A6F7E39CF6DF93F9F2DBFCFBF7FDFDFDFDFDFDFDFDFD +FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFD +FCF9EFFCF6E5FAF1D7FAEDCAFAEDC9FAEFCFFAF0D5FCF6E6FEFDFCFFFEFFFEFEFEFEFFFF +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFDFFFFFFFBF9E2F5E879F6E770 +F6E876F5E772F6E97BF7ED92F8EE99F9F0A4F8F1A9F8F1A9F9F1A7F9F0A5F9F0A5F9EFA4 +F9F0A4F8EFA4F9F0A5F8EFA1F8EF9CF7EE95F7EB86F7E97FF5E979F5E878F6E97AF6EA7D +F5EA7EF5EA7FF6E97FF7EA82F7EA85F7E984F6E97FF6EA81F7EB88F8ED9BF8EEA2F9F1B1 +FAF2B9F9F2B9F9F2B9F9F3BAF9F2B9FAF3BAFAF3B9F9F3B8F9F2B7FAF1B1FAF1ADF9F0A9 +F8EEA2F7ED9FF8ED9CF7ED9AF7ED99F7ED99F7ED99F7EC97F7EC96F8EC94F8EC94F8EC94 +F8EC98F8EC98F7EB96F8ED9CF9EEA4FAF1B3F9F2B8FAF1B7FAF0B5FAF1B6FAF2B9FAF2BB +F9F1BAFAF3BFF9F1B2F5E375F4E269F5E168F3DE5AF2DC53F1D839F1D62BEFD426EECF12 +EDCC03F3DC54F7E994F7E788F6E78BF7E78EF6E890F6E991F6E891F6E88FF6E88FF6E890 +F6E78EF7E994F8EBA1F8ECA6F9EDACF8EEADF8EDACF8ECACF9EDACF8EDA9F8ECA9F8ECA8 +F9ECA8F9ECA7F8EBA5F7EBA3F7EAA0F8E796F3DC61EECD1EEFCD20EFCD20EECD24EFCC21 +EDC918ECC710EFD035F6E48CF5E48AF6E387F5E388F7E593F8E9A1F8EAA6F9EAABF9EBAD +F9EBADF9EAABF8EBABF9EAABF8E9ABF7E9A7F8E8A2F7E7A0F6E497F6E28DF5E188F6E18B +F5DF84EEC724ECBF09EDC111EDC317ECC00EF1D255F7E6A0F6E397F7E194F6E192F5E08E +F5E091F6E399F8E6A6F8E7AAF8E8AEF9E8B1F8E8AEF9E7AEF9E8AFF9E9B0F9E9AFF8E8B0 +F9E9B3F8E9B3F7E5A8F8E4A4F6DD89F7E8B5F9F5E3FDFEFFFCFCFBFCFCFCFDFDFDFDFDFD +FDFDFDFDFDFDFDFDFDFEFEFDFEFDFDFEFDFCFEFEFEFEFEFEFEFEFFFCFAF7F8EDCDF7E6B5 +F5DE9FF5DA8EF5DA8FF5DB94F5DC9BF7E5B8FCF8F1FEFEFFFEFEFEFEFEFEFFFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFCFEFFFFFAF6CFF5E770F6E875F6E875F6E874 +F5E775F7EB85F7ED8FF8EF9FF9F0A6F9F0A6F8F0A6F9EFA4F9F0A5F9F0A5F9F0A4F9EFA2 +F9F0A2F8EFA1F9EE9FF8EE9AF7EC8DF6EA86F6E97DF5E979F6E87AF6E97DF5EA7FF6E97F +F6E981F6EA83F7EA83F7EA83F6E87DF6E97EF7EA85F7ED9AF8EEA1F9F1B1FAF2B9F9F3BA +FAF3BBFAF3BBFAF3BBF9F2BBF9F2BBFAF3BAFAF2B9F9F1B4FAF1B1F9F0ADF8EEA6F9EEA5 +F8EEA1F8ED9EF8ED9BF7EC99F8ED98F8EC98F8EC98F7EC97F7EB96F7EB96F7EC98F8EC9A +F7EB99F8ED9DF9EEA3F9F0B0FAF1B7F9F1B7FAF1B7FAF1B7FAF2BAFAF1BCFAF1BCF9F2BC +FAF2BDF6E889F4E268F5E168F3E060F3DF5CF2DB49F1D83BF0D634EFD321EECF13F0D531 +F6E57EF6E789F7E88FF6E990F7E892F7E894F7E894F7E894F7E995F7E894F7E894F7EA98 +F8EBA4F9ECA8F9EEAFF9EFB1F9EEB1F9EEAFF8EDADF9ECABF8ECABF9ECABF8ECABF8ECAB +F8ECA9F8EBA6F7EAA3F8EBA6F6E384EFD030EECD27EFCD26EFCE27EECE28EECD25EECC20 +EFCC23F4DE72F7E696F5E388F5E389F6E592F7E89FF8E9A4F9EAAAF9EBACF9EBADF9EAAD +F9EAADF9EAABF8EAABF8E9A8F7E8A4F8E8A1F7E599F5E28FF5E18BF5E086F6E28DF0CF43 +ECBF08EDC112EDC316ECC215EFC831F3DB74F6E190F7E397F6E190F5E08CF5DF8DF6E296 +F8E6A4F8E7A8F9E8ADF9E9B0F9E9AFF9E8AFF9E8AEF9E8AFF8E9AFF9E9B1F8E6A8F8E6A5 +F8E7ADF8E6A9F6DF95F5DD8BF6E09BFAF5E8FCFFFFFCFDFEFDFDFEFDFDFDFDFDFDFDFDFD +FDFDFDFDFDFDFDFEFEFDFEFEFDFDFEFBF5E3F8EAC2F7E4AEF6DE98F6DE98F6DE99F6E0A0 +F7E2A5F7E1A6F7E1A6F7DF9DF6DEA0F7E3B1FCF8EEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFEFEFEFFFEFEFDFFFFFFF9F2BEF6EC93F5E978F6E97AF6E774F6E875F6E874F6E876 +F6E97DF8ED94F8EF9FF8EFA2F9EFA5F8EFA4F9EFA4F9F0A4F9F0A5F9EFA2F9F0A1F8EFA1 +F9EFA0F8EF9FF7ED95F7EC8FF6EA81F5E878F6E877F5E87BF6E97FF6E981F7EA82F6EA84 +F6EA84F6EA84F6E980F6E97FF7EA84F7ED97F8ED9EF9F1AEFAF2B9F9F3BBFAF4BEFBF4BE +FBF4BDFAF3BDFAF3BCF9F2BBFAF3BBFAF2B6FAF2B3FAF1B1F9F0ABF8EFA9F9EFA5F9EEA2 +F8ED9EF7EC9AF8EC98F8EC99F8ED99F8EC99F8EC96F8EC96F8EC98F8EC99F7EC9AF8ED9F +F8EDA1F9EFABF9F0B2FAF0B5F9F2B9FAF2B9FAF1BAF9F2BBFAF2BCF9F1BCFAF2C0F8EEA9 +F4E26FF4E26DF5E16AF4E168F3DE5BF2DC4EF1DA43F0D530EFD426EFD224F0D637F5E47E +F7EA97F6E993F7E996F8E998F8E999F8EA9AF8EA9BF8E99AF8E999F7EA9CF8ECA5F8EDAA +F9EEB1FAEFB5FAEFB6F9EFB5F9EEB3F8EDAFF9EDAEF9EDAEF9EDAEF9EDAEF9EDACF9EBAA +F8EBA8F7EBA7F8EAA3F2D64CEECE2BEFCF2FEECF2FEECF32EFCF31EFD02EEECC22F1D346 +F5E17EF6E48EF6E48CF6E592F7E89EF8E9A2F9EBAAF8EAACF9EBADF9EBB0F9EBAFF8EBAE +F9EBADF8E9ABF7E8A6F8E8A4F7E69CF6E393F6E28EF5DF85F6E18DF3D96EECC316ECC316 +EDC317ECC218EDC424EEC62FF3D76BF7E49BF6E192F5DF8DF5DF8CF6E192F7E5A1F8E6A6 +F8E8ADF9E9B0F8E8B0F9E9AFF9E8AEF9E8AEF8E8AEF9E9B3F8E6A8F6E092F4DC85F6E29C +F6E09AF5DC8AF5DB86F6DF96F8EBC4F9F2DDFBFBFCFBFBFBFCFCFEFCFCFEFCFCFDFCFCFC +FCFBFAF8EED0F7E4ACF6DF9DF6DE97F7E1A2F8E6B1F8E7B6F8E8B6F8E6B5F8E6B3F8E6B6 +F9E7B9F9E8BCF8E2A9F6DA91F7E4B3FCF8EFFEFDFBFFFFFFFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFE +FFFFFEFEFDFDF6EC97F5E97BF6EA7DF5E97BF6E775F6E874F6E875F5E773F6E877F7EC8E +F7EE9CF8EFA0F9F0A5F8EFA4F9F0A4F9F0A5F9F0A5F9F0A2F9F0A0F8EFA0F9EFA0F8EFA0 +F7EE97F8ED92F6EA83F5E778F6E876F6E879F5E97EF6E981F7EA83F6EA85F6EA85F5EA85 +F6EA83F7E981F7EA86F8EC96F8ED9BF9F1ACFAF2B8F9F3BAFAF4BEFBF3BEFAF3BEFBF4BE +FAF3BCF9F2BBFAF3BBFAF2B6FAF2B3F9F1B1F9F0ADF8F0ABF8EFA6F9EEA3F8ED9EF7EC99 +F8EC99F8ED99F8EC9AF8EC98F7EB96F7EB95F7EC97F7ED98F8EC9AF7EC9EF8EDA0F9EFAA +F9EFB1FAF0B4F9F2B9FAF1BAFAF2B9FAF2BAF9F1BAF9F1BCFAF2BEF9EFB1F5E376F5E26E +F4E068F5E067F4DE5CF2DC50F1DA44F0D52FF0D426EFD223EFD11FF5E271F7EA99F7E892 +F8EA97F7EA99F7EA9BF7EB9DF7EA9DF7EA9CF8EA9BF7EA9DF8ECA5F8EDAAF9EEB2FAEFB6 +F9EFB6FAEFB7F9EFB5F8EEB1F8EDAFF8EEAFF9EDAFF8EDAFF9ECADF8ECABF9ECAAF8ECA7 +F8ECA8F3D959EFCF2CEFD030EFD031EFD032EED032EED032EECD27F0D139F3DB65F6E591 +F7E48EF6E592F7E89EF8E9A3F8EAAAF9EBACF8EBADF9ECB0F9ECB0F8EBAFF9EBAEF8EAAC +F7E8A7F8E9A4F7E69EF7E495F6E290F5E087F6E18AF4DC79EDC520EDC318ECC217ECC219 +EEC525EEC425F1D156F7E49CF6E295F5E08EF5DF8CF6E192F7E49FF8E6A5F8E7ADF9E9B0 +F8E8B0F9E8AFF9E8AEF9E8AEF8E8AFF9E9B1F8E9B2F6E39CF2D46AF4D87AF6E19AF6DD8E +F5DD8BF6DC88F6DE95F7E7B5F9F4E0F9F4E4FAF7F1FBF8F4FAF6EEFAF5E3F9F2DCF6E2A8 +F6DA8BF7DE99F7E2A5F7E3A8F8E6B1F9E7B8F9E8B9F9E8B9F9E7B8F9E7B6F8E7B7F9E8BB +F8E6B6F7E0A5F7DFA3F9ECCDFEFDFBFFFFFFFEFEFEFFFFFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFDFEFEFCFEFEFEFEFDFDF8F0AE +F5E873F6E978F5E97AF6E97AF6E876F6E874F5E875F6E874F5E773F6EA80F7ED92F8EE97 +F8F0A2F9F0A5F8EFA4F9F0A4F9F0A3F9EFA1F9F0A1F8EFA0F9EE9FF8EF9FF8EE9AF7EE96 +F6EB89F5E97FF6E877F6E876F5E97AF6E980F6EA83F6EA86F7EB89F7EB8AF7EB8AF6EB89 +F7EB8BF8EC93F8ED97F9EFA7FAF2B3F9F2B7FAF4BEFBF4BEFAF3BEFBF4BDFAF3BBF9F2BA +FAF3BAFAF2B7F9F2B4FAF1B3F9F0AFF8EFADF9EEA8F9EDA2F8ED9EF7EC99F8EC98F8EC98 +F8EB97F7EC96F8EB94F8EB94F8EB94F8EB96F8EB97F8EC99F8EC9BF8EEA5F9EFAEFAF0B1 +F9F1B9F9F1BAFAF1BAF9F1BBFAF2BBFAF2BFFAF2BFFAF2BEF8EDA4F6E785F5E375F5E375 +F5E16BF3E062F3DE5AF1D941F1D735F0D630EFD221F1DB4CF7EA9AF8E999F7EA9AF7EB9C +F7EA9DF7EA9DF7EA9DF8EA9DF8EA9CF7EA9DF8EBA4F9ECA9F9EEB2FAF0B9FAF0BBF9F0B9 +FAEFB8F9EEB5F9EEB1F9EEB1F8EEB1F9EDB0F9ECAFF9EDAFF8EDAEF9EBAAF9ECAEF6E27F +F0D139F0D137F0D035F0D135F0D034EFCF33EFCF30EFCE2DEFCF33F5E282F7E697F6E592 +F7E79CF8E8A0F8EAA7F8EAAAF8EAACF9EBAEF9ECAFF9ECB0F8EBAFF9EAADF8E9A9F7E9A7 +F8E7A0F7E599F7E395F6E28BF6E18AF5DF86F1D14CEEC725ECC114EDC31AEDC522EEC526 +EFC832F4D974F6E08DF6E193F5DF8BF6E191F7E49DF8E6A4F8E7ABF9E9B0F8E9B0F9E8AE +F9E7ADF9E8AEF9E9B0F8E8B0F8E9B5F9EAB6F3D56EEFC944F1CE5BF5DB88F6DD8EF5DC8C +F6DB8BF5DA88F5DB8BF5DC90F6DF9CF6E0A0F6DF9BF5DB90F5DB8DF6DB8DF5DD94F6DE99 +F7E1A3F7E2A7F8E5AFF9E5B2F9E6B3F9E6B5F9E7B6F8E7B5F8E6B5F8E6B6F9E6B6F9E5B2 +F6DC98F5D88CFBF3E1FFFFFFFEFEFEFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE +FFFFFEFEFEFFFEFEFEFEFEFDFFFFFEFEFEFEFFFFFFFDFCF8FBF8E4F5EA83F6E873F6E97A +F6E878F6E879F6E977F6E874F6E774F6E875F5E773F6E97BF7EC8DF7EE95F8EFA1F9EFA4 +F8EFA4F9F0A4F9F0A2F9EFA0F9F0A1F9EFA0F8EFA0F9EFA0F8EE9AF7EE97F6EB8CF5EA83 +F5E879F6E876F5E979F6E97FF7EA83F6EA86F7EB8AF6EB8BF7EC8DF7EC8DF7EB8EF8EC93 +F7ED96F8EFA4FAF1B1FAF2B6FAF3BDFAF3BDFAF3BDFAF3BDFAF3BBF9F2B9FAF3BAFAF2B7 +F9F1B5FAF1B3F9F0B0F8EFAEF9EEA8F9EDA3F8ED9EF7EC98F8EB98F8EC98F8EC97F8EC95 +F7EB92F7EA91F7EA91F7EA91F7EA93F7EA95F7EA97F8EDA1F9F0ADFAF0B2FAF2BBFAF2BC +FAF2BEF9F2C0FAF2C1FBF3C5FBF3C5FBF4C6F9F2BEF7EB9CF6E787F6E788F6E67FF5E478 +F5E373F3DE5AF2DB4EF1DB47F1D83BF2DB4CF7EA9CF8ECA3F8EB9FF8ECA1F8EBA1F8EB9E +F8EB9EF7EA9DF7E99BF7E99BF8EBA2F8EBA7F9EEB0FAF0B9F9F1BBFAF0BAFAEFB9FAEFB6 +FAEFB3F9EEB3F8EEB1F8EDB1F8ECB0F9ECB0F9ECB0F8ECACF9ECAFF6E58DF0D341F1D23A +F1D136F1D136F0D036F0D033EFCF33EECE2DEECC29F4DF76F7E89DF6E593F7E69BF8E89F +F7E9A6F7E9A9F8EAABF9EBAEF8ECAFF9ECB0F8EBAFF9EAADF8E9A9F7E8A7F8E7A1F7E59B +F7E497F6E28DF6E18AF5DF87F2D65FEEC82CECC112EDC31BEDC421EFC526EFC62BF1D257 +F5DE85F7E297F5DF8AF5E08FF7E49CF7E6A3F8E7ABF9E9B0F8E9AFF9E8AFF9E7ADF9E8AE +F9E9B0F8E8B1F8E9B3F9EBB8F4DA7EF0CB4DEEC337F4D675F6DD90F6DD8EF5DC8CF6DC8E +F6DB8CF6DA89F5DA85F5DA87F5DA89F6DB8DF6DB90F6DC91F5DC90F6DD96F6E0A0F7E2A6 +F8E6AFF8E6B0F8E5B0F8E5B1F8E6B3F9E6B4F9E7B4F9E6B5F8E6B5F9E6B4F7DE9DF5D687 +F8EAC6FFFFFFFEFEFCFEFEFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFE +FEFEFEFFFFFFFDFCF8FBF8DBFAF6CFF6EC95F5E97CF6E979F5E97AF6E879F6E979F6E979 +F6E878F6E877F6E875F6E774F5E774F6E875F6E980F7EB8BF8EF9CF9F0A0F9EFA2F8EFA3 +F9F0A2F9F0A0F9F0A0F9F0A1F8F0A1F9F0A2F8EFA0F8EE9CF7EC93F7EB8CF6E980F5E877 +F5E878F6E97FF7EA83F6EA87F6EB8CF6EC8DF7EB8FF7EC91F7EC92F8EC94F7ED95F8EE9F +F9F0ACF9F1B1F9F2BBFAF3BDFBF4BEFAF3BCFAF3BAF9F2B9FAF2BAFAF2B7F9F2B5FAF1B3 +F9F0AFF8EFADF9EEA7F9EEA2F8ED9EF7EC98F7EB97F7EB95F7EB94F7EB92F7EA92F7EA94 +F7EB97F7EC99F8ED9FF9EFABF9F0AEFAF2B9FBF5C7FBF5CBFBF6D3FBF6D5FBF6D7FBF6D7 +FBF7D8FCF7D9FBF7D9FBF7DAFCF7DCFAF5CBF8F0AEF9EFAEF9EEAAF9ECA4F8ED9FF7EA92 +F7EA8CF6E884F7E881F6E77CF8EFA8FAF4C5FAF2C0FAF3C1FAF3C1FAF2BFFAF2BEF9F1B9 +F9F1B7F9F0B4F9EFB5F9EFB7FAF0BBFAF1BFFAF2C0F9F1C0F9F1BEF9EFB8F9EEB3F9EEB2 +F9EEB2F9EEB2F9EDB2F9EDB1F9EDB0F8ECAFF9EDAFF7E99FF3DB65F1D444F0D134F1D139 +F0D139EFCF33EFCF34EFCE31EECC2AF1D655F6E592F6E595F7E79DF8E8A0F7E9A6F7E9A9 +F8EAAAF9EAACF8EAADF9EBAFF8EBB0F9EAAFF8E9AAF8E9A8F8E7A2F7E69CF7E599F6E290 +F5E18CF5DF86F5DF84F0CF45ECC00FEDC217EDC31FEEC426EFC62DEFC62FF2D563F7E398 +F5DF8CF6E08DF7E399F6E4A0F8E7A9F9E8AFF8E8AFF9E8AFF9E8AFF9E8AFF9E8AFF9E8B0 +F8E8B0F9E9B5F6E198F3D674EEC233EEBF28F0C746F5DC8DF6DC8DF5DB8CF6DC8DF5DC8D +F6DD90F6DD92F6DD92F5DC91F6DC91F6DC93F5DC94F5DD95F6DE9BF7E0A1F7E4ABF7E4AD +F7E4AEF7E4AEF7E4AEF8E4AFF8E5B1F8E6B5F9E5B3F9E5B1F7DFA1F5D990F5DD9DFCF9F2 +FFFFFFFEFEFDFEFFFFFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFFFEFEFEFFFEFCFFFFFFFAF7DCF8F2B6 +F6EB8EF5E875F5E76EF5E76FF6E976F5E97DF6E97EF6E97BF6E878F6E978F6E879F6E979 +F6E876F6E774F6E875F6E875F5E775F6E97FF7EE97F8EF9FF8EFA1F9F0A3F8EFA2F9F0A1 +F9F0A0F9EFA1F9EFA1F8F0A4F9EFA3F9EFA0F8ED98F8EC92F6EB87F5E87BF6E879F6E981 +F6EA86F7EB8CF7EB90F7EC91F7EC93F7EC94F7EC95F8EC97F7EC96F8ED99F8EEA3F9F0A9 +F9F2B7FAF2BAFAF3BEFBF4BDFAF3BBF9F3B9FAF2B8FAF2B6F9F2B4FAF1B3F9F0AFF8F0AD +F9EEA6F9EDA0F8ED9CF8EC9AF8ED9CF8EEA1F8EFA4F9F0ACFAF2B5FAF2B7FAF2BBFAF3BD +FBF4C0FBF5C5FBF5C6FBF6CDFCF7D3FCF7D5FCF8DAFCF8DCFCF8DCFCF8DBFCF8DBFBF8DA +FCF8DAFBF8DBFBF8DCFBF7D8F9F2B9F9F0B2F8EEACF9EFA9F8EDA1F7EA94F6EB8FF7E98C +F7E989F6E882F8EC95FAF2B7FAF3C6FBF4C8FBF4C9FBF5C9FBF5C9FBF4C9FBF4C9FBF4CA +FBF5CCFBF5CEFBF6D2FBF6D6FBF6D7FBF7D7FBF6D6FBF4CEFAF3C8FAF2C4FAEFBBFAF0BA +F9EEB5F8EEB1F8EDB0F8ECAFF9EDAFF8EBA8F7E593F2D857F0D134F1D13BF0D038F0D035 +EFCF35EFCE33EECD2CEFD03BF2D964F6E493F7E8A0F8E9A3F8EAA9F8EAABF8EAABF9EBAE +F9EBAFF9EBB0F9ECB1F8EBB1F9EAADF8E9ABF7E8A4F7E69FF6E59BF6E392F6E28EF5E087 +F6E394F3D766EDC010ECC012EDC21DEDC426EEC62BEEC52AEFC939F5DE87F6E090F6DF8C +F7E298F6E49FF8E7A8F9E8AEF8E8B0F9E9B0F9E9AFF9E9B0F9E8AFF9E8B0F8E7AFF9E8B0 +F8E7ABF7E29EF0C745ECBA16ECB810F1CB53F6DD93F5DC8EF5DC8DF6DC90F6DC92F6DD92 +F6DC92F6DC91F5DC92F6DD96F6DD98F6DE98F7DE9AF6DF9DF7E2A7F8E4ABF7E3ADF8E3AD +F8E3ACF7E3ACF7E3ADF9E5B2F8E5B1F8E4AFF6DFA0F5DC97F4D688F7E4B5FAF3E2FEFEFF +FEFDFDFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFEFFFEFFFEFEFEFEFEFEFEFEFEFEFFFFFDFCF4F8F0ACF5EA85F5E76FF6E872 +F6E874F6E877F5E877F6E97CF6EA7FF6E97DF6E879F6E878F6E979F6E979F6E877F6E874 +F6E875F6E875F5E774F6E97BF8ED94F8EE9DF8EFA1F9F0A4F8EFA3F9F0A1F9EFA0F9F0A1 +F9F0A0F9EFA3F9F0A2F8F0A1F8EE99F8ED92F7EB89F6E87DF6E97CF7E983F6EA88F7EB8E +F8EC92F8EC93F8EC93F8EC94F8ED95F7ED97F8ED97F7ED98F8EE9FF8EFA6F9F1B5F9F2B9 +FAF3BDFBF4BDFAF3BCF9F2B8FAF2B8FAF2B6F9F2B4FAF1B2F9F0ADF8EFAAF8EEA5F8EDA2 +F7EDA1F7EEA6F8EEAAF8EFB1F8F0B5F9F2BCFBF4C1FBF4C0FBF4C1FBF4C1FAF4C2FAF5C4 +FAF4C4FBF5C9FBF6D0FBF7D3FBF8D8FBF7DAFBF7DBFBF7DAFBF7DAFCF7D9FCF7DAFCF7DB +FBF7DBFCF8DAFAF3BFF9F1B4F8EEABF9EFAAF8EDA2F7EA93F6EB8EF6E98BF7E887F6E883 +F7EB8EF8EFA7FAF3C4FBF3C5FAF3C7FAF4C7FAF4C6FAF3C6FAF3C6FAF4C7FAF4CAFBF4CC +FBF6D2FCF7D9FCF7DBFCF8DDFCF8DDFCF6D8FBF5D5FBF5D0FBF3C8FBF2C6FAF1BFF9F0B8 +F9EEB6F9EDB1F9EDB0F8EBA8F7E89EF2DA5EF0D032F1D13AF0D039F0D036EFCF35EECD33 +EECD2EEFCE36F0D34DF6E38DF7E8A1F8E9A3F9EAAAF9EAACF9EAACF9EBAFF9ECB0F9EBB1 +F9ECB2F8EBB2F9EAAFF8EAACF8E8A5F7E69EF6E59AF6E392F6E18EF5E088F6E293F4DA72 +EDC116ECC012EDC21CEDC425EEC529EFC62EEFC62FF4DA79F6E193F6DE8CF7E298F6E49F +F8E7A8F9E8AEF8E8B0F9E9B1F9E8B0F9E9AFF9E9B0F9E8B0F8E7B0F9E7AFF8E7ADF7E5A8 +F0CA4FEDBB1BECB915EFC233F5DB89F5DC90F5DD90F6DD91F6DD93F6DD93F6DC92F6DD92 +F5DD93F6DD96F7DE98F7DD99F7DE9AF6DF9CF7E2A5F8E3AAF7E4ADF8E3ADF8E2ACF8E2AB +F7E2ACF8E4B0F8E5B1F8E4B0F6DEA1F5DB98F4D88CF5DD9DF7E6BBFDFCFBFEFEFFFEFEFE +FEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFF +FEFEFEFEFEFDFFFFFFFBF9E5F9F3C1F7EFA0F6E97AF6E877F6E876F6E877F6E977F6E875 +F6E774F6E877F6E97BF6E97CF6E97DF6E97CF6E879F6E979F6E978F6E875F6E774F6E875 +F6E773F5E977F7EC8BF8ED96F8EE9DF8F0A3F8EFA4F9EFA3F9F0A1F9EFA1F9EFA0F8EFA0 +F9F0A1F8EFA1F7EE9AF7ED95F7EC8FF7EA86F7EA85F6EB8AF7EC8EF8EC93F7ED96F7ED95 +F7EC94F8EC94F8ED95F7EC97F8ED97F8ED97F7ED99F8ED9FF9F0ADF9F1B3FAF3BCFBF4BD +FAF3BCF9F1B7FAF2B7F9F2B5F9F1B3F9F1B2FAF2B6FAF3B9FAF4BDFCF4C1FEF9C6FFFBC8 +FEFBC9FEFBCAFFFBC9FDF7C7FAF4C1FBF4C0FAF4BFFAF4C0FAF4C3FBF5C3FBF4C4FAF5C8 +FBF6CEFCF6D1FBF7D8FCF8D9FCF7DBFCF8DBFCF8DAFCF8DAFCF8DAFCF8DBFCF8DCFBF7DB +FBF7D2F9F3BFF8EFABF9EFADF8EDA4F7EA93F6EA8CF7E987F6E984F7E985F6E884F6E886 +FAF1B7FBF4C6FAF3C4FBF3C5FBF3C5FBF3C6FBF4C6FBF3C6FBF3C6FAF4C7FBF5CEFCF6D5 +FBF6D7FBF7DBFBF8DCFBF7DBFCF7DCFCF7DBFCF7D9FCF7D8FCF6D6FBF5D4FBF5D1FBF3CC +FAF2C9F9F0BCF9EEBAF5E284F0D13BF0D13AF0CF34F0CF33EFCF34EFCD32EFCD32EFCD31 +EECB2BF4DB6BF7E9A4F8E9A3F8EBADF8EBAFF8EBB0F8ECB3F8ECB5F8ECB4F9EBB3F9EBB3 +F8ECB2F9EBB1F8E9A9F7E6A0F7E59CF6E291F5E08CF6E087F6E18CF5DF85EEC72EEDC219 +ECC11AECC324EEC426EFC52CEEC324F1CE50F5E091F5DF8CF7E197F6E39EF8E6A8F9E8AE +F8E8B1F9E9B3F9E9B2F9E8B0F9E8AFF9E7B0F8E7B0F9E7B0F8E6ADF8E7B0F3D46FECBB1D +EDBA1DECB817EFC23CF3D16CF6E099F5DE94F6DD94F6DC92F6DC93F6DE94F5DE95F6DE97 +F7DD99F6DE9AF7DE9AF6DF9CF7E2A5F8E2AAF7E3ADF8E3AEF8E3ADF8E2ACF7E3ADF8E4B0 +F8E5B0F8E4B0F7DFA3F5DC99F5D992F4D78DF4D587F9EBCCFDFCFBFDFDFBFDFDFDFEFEFE +FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFEFEFEFEFEFE +FEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFDF9 +FDFCF3F9F3C2F7EC93F7ED8FF7EB88F6EA81F5E875F6E875F5E976F6E875F6E774F6E875 +F6E878F5E97BF6EA7EF5E97EF5E97BF5E878F6E877F6E875F6E875F6E774F6E773F5E876 +F6EB87F7EC92F7EE9AF9F0A1F9EFA4F8EFA3F9F0A2F9EFA0F9EE9FF9EF9FF9EFA0F8EFA1 +F8EE9BF8EE97F7ED91F6EB89F6EB88F7EC8DF7EC90F7ED95F8EC97F7EC96F8ED94F7ED94 +F7EC95F8ED97F7ED98F8EC98F7ED99F8ED9EF9F0ABF9F1B0FAF3BBFAF3BDFAF3BBF9F1B5 +F9F2B5FAF2B5FAF2B6FAF2B8FAF5C3FBF6C8FAF5CBF8F2CAE9E3C3E3DDBEE4DEBDE4DDBB +E3DBBAF1EAC0FBF6C2FAF4C0FBF4C0FBF5C1FBF4C3FBF5C4FBF4C4FAF5C7FBF5CDFCF6D1 +FBF7D7FCF8D9FCF7DBFCF8DAFCF8DAFCF8DAFCF8D9FCF8DAFCF8DBFBF7DAFBF7D9FAF4C5 +F8EFACF9EFACF8EDA5F7EA94F6E98CF7E985F7E883F7E985F7E883F7E77FF9EFADFBF4C8 +FAF3C2FAF4C4FBF4C4FBF4C5FBF3C5FBF4C5FBF4C6FAF4C6FBF5CDFCF6D4FBF7D6FCF7DB +FCF8DBFCF7DBFBF6DAFBF6D9FBF6D7FBF6D7FBF6D6FCF6D7FCF6D7FCF5D6FBF5D4FBF3CB +FAF2C9F7E99FF2D853F1D64BF1D138EFCE32EECD2FEECC2BEECD2DEECD2FEECA25F2D75B +F7E9A5F8E9A4F9EBAEF8ECB0F9EBB2F9ECB5F9EDB6F9ECB5F8ECB4F8ECB3F8ECB2F8EBB2 +F8E9AAF8E6A2F7E59DF6E292F6E18CF5DF87F6E089F5E089F0CB3BEEC31EECC119EDC324 +EDC326EFC52CEEC325F0CB42F5DE88F5DF8CF6E197F6E29DF8E6A7F8E8AEF8E8B1F9E9B3 +F9E9B2F9E8B1F9E8B0F9E8B0F8E8B0F9E8B0F8E6ACF8E7B0F4D77BECBC20ECBA1CEDB91B +EDB81DF1C84FF6E09CF6DE98F5DD93F6DD93F6DD93F6DD94F6DD96F6DD98F7DE99F6DE9A +F7DE9AF6DF9DF7E2A5F8E3AAF7E3ADF8E4AEF8E3ADF8E3ADF7E4AFF9E4B0F8E4B0F8E4B0 +F7DFA3F5DC97F5DA92F5D993F4D587F7E2B0FAF3E2FEFEFEFEFEFEFEFEFDFDFDFDFDFDFD +FDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFFFFFEFEFEFFFFFFFDFCF7F8F0ABF8ED95F7ED91 +F8EE96F8EE94F7EC8CF6EB89F6E97BF5E876F6E977F6E875F6E874F6E875F6E877F6E97A +F5EA7FF6E97FF6EA7FF6E97CF5E97AF6E978F6E877F6E875F6E875F5E774F6E97AF6EA85 +F7ED92F8EF9EF8EFA1F9F0A3F8F0A1F9EFA0F9EE9EF9EE9EF9EFA0F9F0A2F9EFA1F9EFA0 +F8EE9AF7EC93F7EC91F8ED92F8ED95F8ED97F8EC97F7ED97F8EC94F7EC93F7ED94F8EC97 +F7ED97F8EC98F7ED99F8EE9DF8EFA7F9F0ACFAF2B7F9F2BAF9F3BAFAF3BEFAF4C1FBF6CB +FBF6D0FBF7D2FBF7D3FEF9D4F2ECCBD7D0BB57487E301F6B39287038276F301E6B9E939C +FFFDC7F9F3C2FBF4C2FBF4C2FBF5C2FBF5C3FBF5C3FAF4C5FBF5CBFCF6CFFBF7D6FCF8D8 +FCF7DBFCF8DBFCF8DAFCF8D9FCF8D9FCF8DAFCF8D9FBF7D9FCF8DCFBF6D1F9F0B1F8EEAC +F8EEA9F7EB96F6EA8DF7E985F7E884F7E884F7E681F6E57CF8EA94FAF2BBFAF2C0FBF4C3 +FAF3C2FBF3C3FBF4C4FBF4C5FBF4C5FAF4C5FBF4C9FBF6D1FCF6D4FBF6D9FCF7DAFCF7DB +FCF6D9FCF7D9FCF6D7FCF6D6FCF5D6FBF5D5FBF5D5FBF5D5FCF5D5FBF5D3FBF5D1FAF3C7 +F8EA9BF6E78EF5E17AF4DF70F3DB63F0D348F0D142EFCE33EECA22F0CE35F7E598F8E9A7 +F8EAAEF8ECB1F9ECB5FAEDB7FAECB7F9EDB7F9EDB7F9ECB7F9EDB7F9ECB7F9EBB0F8E8A5 +F7E7A2F7E49AF6E395F6E089F5DF86F6E08BF2D565EFC833ECBF12EDC220EDC323EEC52C +EEC52CEEC530F0CE52F4DB83F6E297F7E39BF7E5A5F7E7ACF8E8AFF9E9B3F8E8B3F9E9B2 +F9E9B2F9E9B2F8E8B2F9E7B1F8E6ACF8E7AEF6E097EEC030EDB919EDB91BECB715EDB91F +F3D374F5DB8DF6DD94F5DC92F6DC93F5DD96F6DD97F7DE9AF6DF9AF7DF9BF7DE9BF6DF9E +F7E2A5F8E3AAF7E3ACF8E4AEF8E3ADF8E4AEF7E3AEF8E4B0F8E4B0F8E4AFF7E0A7F6DC9C +F2CE72F4D58AF5D894F4D68DF4D791F9F0DBFDFEFFFDFCFCFDFDFDFEFEFEFEFEFEFEFEFE +FEFEFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE +FFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFDFFFFFFF8F1B7F6E979F8ED92F7EE9AF7EE9BF8ED97 +F7EC90F7EC8EF6EB87F6E97CF5E879F6E875F6E875F6E976F6E879F5E97CF6EA80F7E980 +F7E981F6EA80F5EA7FF6E97AF6E879F6E977F6E875F6E874F6E875F5E87AF7EB8AF7EE99 +F8EE9CF8F0A0F9F0A0F9EFA0F9EEA0F9EFA1F9F0A5F9EFA7F9F0A9F9F0A9F9EFA4F8EE9A +F8ED97F8ED95F7ED95F8ED97F8EC97F8ED97F7EC94F8EB93F8EC94F7ED96F8EC97F8EC98 +F8ED99F7ED9AF8EDA1F8EEA3FAF1B5FAF5C5FBF6CDFBF8D8FCF8D8FCF8D8FCF8D8FCF8D5 +FBF7D2FEFAD3F0EACBD1C9BA3A29710B005A15015F14015F0C005B8E8294FFFFC8F9F2C2 +FBF4C2FBF3C1FBF4C1FBF4C2FBF4C2FBF5C3FBF5C8FBF6CCFCF7D5FBF7D7FCF8DAFCF7DB +FCF8DBFCF8D9FCF8D8FCF8D9FCF8DAFCF7D9FBF7D8FCF8D9F9F2BAF8EEACF9EEABF8EC9C +F6EA92F7E989F7E986F7E885F7E884F6E77FF7E784F8EC9DFAF2BDFBF3C2FAF3C1FBF3C2 +FBF3C2FBF3C4FBF3C5FBF3C3FAF4C5FBF4CCFCF5D0FBF6D7FCF6D8FCF6DAFCF7D8FCF6D7 +FCF5D6FCF5D7FCF6D6FCF5D6FCF6D6FCF5D5FCF6D5FBF5D2FBF5CFFBF3CBF8EFB0F7EA9C +F7E792F7E894F7E791F6E489F6E386F4DF70F3DB62F2D248F5E081F8E9A7F8EAA9F8ECB1 +F9EDB5FAEDB8F9EDB9FAECB8FAEDB8FAEDBAFAEDBAFAEDBAF9ECB5F8EAABF8E9A8F7E6A3 +F7E59FF6E291F5E18BF5E18EF5DE8AF1CF4FECBE10EDC21EEDC322EEC429EFC42BEEC228 +ECBF20F3D46CF6E196F7E297F8E4A3F8E7AAF8E7AFF9E9B2F8E9B2F9E8B2F9E8B4F9E9B3 +F8E8B3F9E7B3F8E7AEF8E6ACF8E4A7F0C749EDBA20EDB819EDB91CECB819EDBD2BF1CC5A +F6DE97F5DC92F5DD95F6DE96F6DD98F7DE9BF6DF9BF7DE9AF7DE9BF6DF9DF7E1A4F8E2A8 +F7E2AAF8E4AEF8E3ADF8E3ADF8E3ADF7E4AFF7E3AEF7E3ADF7E1A8F7E2ABF0C75FEFC04D +F3D281F4D894F3D58BF3D791FAF3E4FCFCFDFDFDFDFDFCFCFDFDFDFDFDFDFDFDFDFDFDFD +FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFE +FFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFEFEFFFFFFFEFEFCFEFFFFF7EE9EF7EB84F8ED98F8EE9BF8EF9DF8ED98F8ED92F7ED91 +F7EC8AF6E97FF5E97BF6E875F6E875F6E875F6E978F5E97AF6E980F6EA80F7E980F6E97F +F5EA7FF6E97BF6E879F6E878F6E975F6E875F6E875F5E876F6EA86F8ED96F8EE99F9EF9F +F9F0A1F9EFA1F9EFA1F8F0A4F8F0A8F8F0AAFAF1ACFAF1ABF9F0A8F8EE9EF7EE9AF8EC96 +F8EC95F8ED97F8EC98F8ED97F8EC95F7EB93F7EC94F8ED96F8EC97F8ED98F7EC97F7EC98 +F9EDA1F9EFA8FAF4C1FBF6D1FBF7D5FCF9DBFBF8D9FBF7D6FBF7D6FBF7D4FBF7D3FEFAD4 +F0EBCCD3CBBB41317412005D1C09621C096213005E938697FFFEC8F9F3C2FBF4C2FBF3C1 +FBF4C0FBF4C1FBF4C1FBF5C4FAF5C8FBF6CCFCF6D4FBF7D6FCF8DAFCF7DBFCF8DBFCF8D9 +FCF8D8FCF8D9FCF8D9FCF8D9FBF7D8FCF8DAF9F3BFF8EEAAF9EEACF8EC9FF7EB95F7E98C +F6E886F7E985F7E884F6E77FF7E781F8E98FFAF1B9FBF3C3FAF2C1FBF3C1FBF2C1FBF3C2 +FBF3C3FBF2C3FAF3C5FBF4CBFBF5CFFCF6D6FBF7D8FCF6D9FCF7D8FCF6D7FCF6D6FCF6D7 +FCF5D7FCF6D7FCF6D6FCF5D5FCF6D5FBF5D3FCF5D0FBF3CCF9F0B8F7EB9EF6E68DF6E68D +F6E68CF7E58BF7E58BF6E381F6E27CF4DB66F6E48CF9ECB0F9ECB1F9ECB4F9ECB5FAECB7 +F9ECB8FAEDB9F9EDBAF9EEBBF9EEBBFAEDBBF9ECB6F9EAAEF8E9ACF8E6A5F7E6A2F7E396 +F6E290F6E192F6E193F2D35CECC015ECC220EDC324EEC329EFC329EDC227EBBF1CF2D160 +F6E197F6E195F7E4A3F8E7AAF8E8AFF9E8B1F8E8B0F9E9B2F9E8B4F9E9B4F9E8B3F8E7B2 +F9E7AFF8E6ABF8E4A9F1CB57EDBE2BECB818EDB91BEDB91CECB91DEFC442F5DD92F6DC94 +F5DD94F6DD96F7DE98F6DE9BF7DE9BF7DE9AF7DE9BF6DF9DF7E0A3F8E1A7F7E2AAF8E4AE +F8E3ADF8E4AEF8E4AEF8E4AEF8E3ADF8E2ADF7E0A6F7E2AAF2CD71ECB631EFC255F4D791 +F4D894F3D68EF7E5BAF9EFD8FCFCFBFDFEFFFDFDFEFCFCFDFCFCFDFDFDFDFDFDFDFDFDFD +FDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFEFEFEFEFEFEFEFEFE +FEFEFEFFFFFFFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFF +FDFBEDF7EFA4F6E97EF7EC8EF8EF9BF9EF9FF9EE9EF8EE99F7EE96F8EE96F7EC8FF6EA84 +F6E97FF5E876F6E774F6E875F6E874F6E876F5E97CF5EA7EF6E980F6E97FF5EA7FF6E97C +F6E87AF6E978F6E976F6E877F6E875F5E772F6E97BF7EC8AF7ED92F8EF9EF9F0A1F9F0A5 +F8F0A6F9F0AAF9F1AEF9F1B0F9F2B1FAF2B1F9F1AEF8EFA4F8EE9EF8EC97F8EC96F8ED97 +F8ED98F8EC98F8ED96F8EC94F8EC94F8ED96F8ED96F7EC96F8EE9CF9F0A6FAF4BDFBF5C4 +FCF7D2FCF8D7FCF8D7FBF9D9FCF8D8FCF7D6FCF8D5FCF7D4FBF7D2FEFAD4F0EBCCD3CBBB +402F7410005C1A07611A076111005D928597FFFFC8F9F3C2FBF4C1FBF3BFFBF3C0FBF3C0 +FBF4C0FBF4C3FAF5C7FBF5CAFCF6D2FBF7D4FCF8D9FCF7DAFCF8D9FCF7D9FCF7D9FCF7D8 +FCF8D8FCF7D9FBF8D8FCF7DAFBF5CEF8EFB1F9EFAEF8EDA5F8EC9DF7EA93F6E888F7E886 +F7E884F6E784F7E681F7E57EF9EEA9FBF4C6FAF3C2FBF3C1FBF3C0FBF2BFFBF2C1FBF2C2 +FBF3C5FAF4C9FBF4CBFCF5D3FBF6D5FCF7D8FCF7D8FCF6D7FCF6D6FCF6D7FCF5D6FCF6D6 +FCF6D7FCF5D5FCF6D5FBF5D3FCF5D0FBF4CEFBF4CBF8EDADF6E68DF7E78EF6E58CF6E488 +F6E486F7E486F7E486F5E37EF7E897F9EEB8FBF3CDFBF3CEFBF1CAFAEFC1FAEEBEF9EEBC +F9EDBBF9EDBCFAEEBDFAEEBDF9EDBAF9EBB5F9EBB2F8E8AAF8E7A6F7E59EF7E39BF7E399 +F7E5A1F4DB7DEEC528EEC427EEC429EFC228EFC228EDC327ECC01FF0CA45F6E194F5E092 +F7E4A0F8E6A9F8E8ADF9E8B0F8E7AFF9E8B2F9E9B3F9E8B4F9E8B4F8E8B3F9E7B0F8E7AD +F8E6ACF4D87FF1C94DECB714EDB91CEDB81BEDB81CECB81EF2D270F6DF9BF6DD95F7DD98 +F6DE9AF7DF9BF7DD9AF7DE9AF7DD99F6DD9BF7E0A2F8E1A6F7E2AAF8E4AEF8E4ADF8E3AD +F8E3ACF8E4AEF7E3AEF8E2ADF7DFA5F7DFA6F5D890EBB32BE8A911EEC35CF3D387F3D793 +F4D892F4D996F6E4B9F8F2E2FAF7F0FCFCFCFBFBFCFCFDFFFDFDFFFDFDFEFCFCFDFCFCFD +FDFCFDFDFDFDFDFDFDFEFDFDFEFEFDFEFEFEFDFDFEFDFDFDFDFDFDFDFDFDFEFEFEFEFEFE +FEFEFEFFFFFFFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFDFFFFFFFCFAE5F6E87D +F6E97CF7ED91F8EF9CF8EFA0F8EF9DF8EE98F7ED96F8ED96F7EC8FF7EA85F6E981F5E878 +F5E774F6E775F6E774F5E875F6E97AF5E97DF6EA80F6E97FF5EA7FF6E97BF6E879F6E977 +F6E876F6E876F6E875F5E773F6E878F6EB85F7ED91F8EF9EF9F0A2F8F0A6F8F0A9F9F1AC +FAF1B0FAF2B2F9F1B2FAF2B2F9F1AFF8EFA4F8EE9FF7ED98F7ED96F7EC97F8EC97F8ED98 +F8EC97F8ED95F7EC95F7EC93F7EC93F8ED9BF9F1ABFAF3B5FBF6C8FBF6CAFCF7CFFBF8D3 +FBF7D6FCF8D8FCF8D8FCF7D6FCF8D5FCF8D4FBF7D2FEF9D4F0EBCCD3CBBB40307410005C +1A07611A076111005D928597FFFFC8F9F2C2FBF4C1FBF3BFFBF4C1FBF4C1FBF3C1FBF4C3 +FAF4C6FBF5C9FBF6D1FCF7D3FBF7D7FCF7D9FCF8D9FCF8D8FCF8D8FCF8D8FCF8D8FCF7D8 +FBF8D8FCF7D9FBF6D2F9F0B6F9EFB0F8EDA7F9EDA0F7EB94F6E989F7E886F7E783F7E784 +F7E783F6E67EF8EDA1FBF4C7FAF3C3FBF2C1FBF3BFFBF3BEFBF3C0FBF3C2FBF3C5FAF3C9 +FBF4CBFBF5D2FCF6D4FBF6D7FCF6D7FCF6D7FCF5D6FCF5D7FCF6D6FCF6D7FCF6D6FCF5D5 +FCF6D5FBF5D3FCF5D1FBF4CEFBF4CEF9EEB2F6E68EF7E78FF7E68DF7E489F7E586F6E485 +F7E482F4E278F6E68FF9ECAEFBF4D2FCF5D4FBF4D4FBF2CEFBF1CBFAEFC4FAEEC0FAEEBC +F9EDBBF9EDBBFAEDBAF9ECB7F9EBB3F8E8ABF7E7A7F7E59FF6E49CF6E49AF7E5A3F5DE88 +EFC731EFC529EFC52BEFC32AEEC329EDC229EEC124F0C73CF6DF8FF6E194F7E39FF8E6A8 +F8E7ADF9E8B0F8E8B0F9E8B1F9E8B3F9E9B4F9E9B4F8E8B4F9E8B2F8E7AFF8E5ABF6DC8C +F2CD5DECB614EDB91CECB81BEDB921ECB71CF1CB5CF6E19FF6DE98F7DD99F6DE9AF7DE9B +F7DE9BF7DD9AF7DC98F6DD9BF7E0A2F8E2A5F7E2AAF8E3AEF8E3AEF8E2ACF8E2ABF8E3AD +F7E3AEF8E2ADF7E0A6F7DFA5F5DA96EDB839E8AA15EBB83EEFC768F4D894F4DB9CF5DB9B +F5DC9FF5E5BFF7EBCEF9F1E0F9F2E4FBF7EFFCF9F4FCFBFBFDFEFFFDFEFEFDFEFFFDFDFF +FDFDFEFDFDFEFDFDFEFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFEFEFEFEFEFE +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFDFFFFFFFAF5D1F5E66EF6E87AF7ED92 +F8EF9DF8EE9DF7EE99F8EE97F7EE96F8ED94F7EC8FF6EB8AF6EB89F6EA81F6EA7DF5E877 +F6E774F6E875F6E876F5E877F6E97DF6EA7FF5E97FF6E97CF6E97BF6E877F6E875F6E875 +F6E774F5E774F6E875F6E979F7EB87F8EF9CF9F0A3F9F1AAF9F1AEF9F1B0FAF2B2FAF1B2 +FAF1B2FAF1B1F9F1AFF9F0A9F8EFA5F8EE9FF8EE9CF8ED9AF7ED99F7EC98F8ED97F8ED95 +F8EC96F9EEA1F9EFA9FAF3BCFBF5C5FBF5C4FAF5C5FBF5C7FBF6CBFCF7D1FBF7D4FCF7D7 +FCF7D7FCF8D7FCF7D6FCF8D5FBF7D3FEF9D4F0EBCCD3CBBB40307410005C1A07611A0761 +11005D928595FFFFC6F9F2C1FBF3C0FBF4BFFBF4BFFBF3C0FBF4C0FBF3C1FBF4C3FAF4C5 +FBF5CCFCF6CFFBF6D5FCF7D8FCF8D8FCF7D7FCF7D7FCF7D7FCF7D7FCF8D8FBF7D9FCF7D9 +FBF7D7FAF4C9F9F0B6F8EDA8F9EDA5F7EB98F6EA8DF7E886F6E67EF6E680F7E784F6E782 +F7E98DFAF3C0FBF4C6FAF3C2FBF2C1FBF3C0FBF2C2FBF3C3FBF3C5FBF4C7FAF4C9FBF5CE +FCF5D0FBF6D5FCF5D7FCF5D6FCF6D7FCF6D7FCF6D6FCF6D7FCF6D6FCF5D5FCF6D4FBF5D3 +FCF4D1FBF4CFFBF4D0F9F1C1F7E896F6E691F7E78FF7E58AF7E588F6E484F7E382F5E27C +F6E384F7E793FAF3CAFCF5D4FBF5D7FCF6DCFCF6DDFBF5DBFBF4D9FBF3D2FBF0C8FBF0C5 +FAEEBEF9ECB9F9EBB4F8E9ABF8E8A8F7E59FF6E59DF6E49CF7E5A0F6E49BF0CD4BEEC630 +EFC633EFC531EFC530EFC430EFC42EEEC32DF4D875F7E39DF7E3A0F8E6A8F8E7ADF9E8B1 +F8E8B2F9E8B2F9E8B3F9E8B2F9E8B4F8E9B6F9E8B5F8E8B3F8E5ABF7E2A3F4D880EDB91D +ECB819EDB91CEDB921ECB71FEDBF34F4D884F6DC94F7DF9CF6DE9AF7DE9CF7DE9CF7DD9A +F7DC99F6DD9AF7E0A1F8E1A6F7E2A9F8E3AEF8E2ADF8E2ABF8E1AAF7E2ABF8E2AEF7E3AE +F6E1A9F6DFA6F6DDA0EEC257EAB32CE9AD1EE8AE21F0CA6DF5DCA0F4DB9DF4DCA0F5DA9A +F4D997F3D898F3D99BF4DDA5F6E1B0F6E6BEF8ECD4F9EFDAFAF4E8FBF6ECFBF8F2FCFBFB +FCFCFCFCFCFDFDFDFDFDFDFDFEFEFEFEFEFDFDFDFEFDFDFEFDFDFEFDFDFDFDFDFDFEFEFE +FFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFFFFFFF9F4C5F5E671F6E877F7EC8EF8EE9AF7EE97 +F8EE96F8EE95F7EE95F8ED93F7EC8FF6EB8CF6EC8CF7EB89F7EA86F6E97DF5E776F6E775 +F5E774F6E875F5E97AF5EA7FF6EA7FF6EA7DF6E97BF6E878F6E978F6E876F6E774F6E875 +F6E875F5E774F6EA7EF8EE97F9F0A2F9F1AAFAF2B0FAF1B0F9F2AFF9F2AEF9F2AEF8F2AF +FAF1AFF9F0ACF8EFAAF9EEA5F9EEA2F7EE9EF8ED9BF8EC99F7ED95F8EFA1F9F1ACFBF4C1 +FBF5C4FBF5C2FAF4C1FAF4C2FBF5C5FAF6C6FBF6CAFCF6CFFBF7D2FCF8D6FCF7D7FCF8D7 +FCF8D6FCF7D6FBF7D4FEFAD5F0EBCDD3CBBC40307410005C1A07611A076111005D928595 +FFFFC5F9F2BFFBF3BFFBF4BFFBF3BCFBF3BDFBF3BDFBF4BFFBF3BFFAF4C1FBF5C8FCF6CB +FBF7D3FCF6D7FCF7D7FCF7D6FCF6D5FCF6D6FCF7D6FCF7D8FBF8D8FCF7D8FBF6D7FBF6D5 +F9F1BAF8EEA8F9EEA8F7EB9AF6E98FF7E785F7E77BF7E77CF7E782F6E685F7E683FAF0B3 +FBF4CAFAF3C3FBF2C4FBF3C3FBF3C2FBF2C3FBF3C5FBF4C7FAF3C8FBF4CDFCF5CFFBF6D3 +FCF5D7FCF6D7FCF5D6FCF6D6FCF6D6FCF6D7FCF6D6FCF5D5FCF6D4FCF5D2FCF4D2FBF4D0 +FBF5CFFAF3CAF7EA9EF6E692F7E792F7E58BF7E588F6E484F7E382F6E380F5E380F6E485 +F9F0BFFBF5D6FBF5D7FBF6DBFBF6DCFCF6DDFCF7DDFCF6DEFCF6DDFCF5DCFBF2D2F9F0C3 +F9EDBBF8E7AAF7E6A5F7E59CF6E499F7E49BF6E39CF7E5A1F1D35CEEC634EFC736EFC736 +EFC738EEC739EFC638EEC32CF2D15FF6E29DF7E4A4F7E6ACF8E7AFF9E8B3F9E8B4F9E8B4 +F9E9B3F9E7B1F9E8B3F9E8B5F8E8B4F9E8B4F8E5ACF8E3A7F6DD94EEBE2BECB617EDB91E +EDB91FECB921EDBB2BEFC74FF4D682F7DFA0F6DE9AF7DF9CF7DD9DF7DD9BF7DD99F6DD9B +F7DFA2F8E0A5F7E2A9F8E3ADF8E2ACF8E2AAF8E1AAF8E2ABF7E3AEF8E2AEF7E1AAF6E0A6 +F6DDA1F1CB71EDBC46E9AE1EE8AC1CEAB534F3D996F4DDA2F4DB9DF5DB9FF4DB9FF3DA9B +F3D899F3D99CF3DCA2F4DDA6F5E0AFF5E0AFF5E1B2F5E1B3F6E3B8F7E7C2F7EBCDFBF8F3 +FDFEFFFCFCFDFDFCFDFDFDFDFEFEFEFEFEFDFEFEFEFEFEFEFDFDFDFDFDFDFEFEFEFEFEFE +FFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFEFEFEFEFEFFFFFFF9F3C0F5E670F6E876F7EC8CF8ED96F8ED95F8ED94F8ED94 +F7EE95F8ED94F7EC90F7EC8DF7EC8DF7EB8BF6EB8AF6EA82F6E877F5E875F6E774F6E875 +F6E978F6E97DF6E97EF6EA7EF6E97CF6E879F6E97AF6E877F6E774F6E775F6E875F5E773 +F6E97AF7ED94F8EF9FF9F0A9F9F2B0F9F2AFF9F1AEF9F1ADF9F1ADF9F1AEF9F1AEF9F1AE +F9F0ACF8EFA6F9EFA3F8EE9FF7ED99F7ED96F8EE9FF9F3B5FAF4BBFBF4C2FAF4C2FAF4C0 +FBF5C0FBF4C1FBF5C5FAF6C6FBF6C9FCF6CFFBF7D1FCF8D6FCF8D7FCF7D7FCF8D7FCF8D6 +FBF7D4FEFAD5F0EBCDD3CBBB40307410005C1A07611A076111005D928594FFFEC4F9F2BF +FBF3BFFAF4BDFBF4BBFBF4BBFAF4BCFBF4BDFBF4BEFAF4C0FBF5C6FBF5C9FCF6D2FBF6D6 +FCF7D6FCF7D6FCF6D5FCF7D6FCF6D6FCF7D7FBF7D7FCF7D7FBF6D6FBF6D8FAF2BFF8EEA7 +F9EEA8F8EC9BF6EA90F6E784F5E578F6E679F7E680F7E784F6E67FF9EDA9FAF3C5FAF3C3 +FBF2C3FBF3C3FBF3C3FBF2C3FBF3C5FBF4C7FAF3C8FBF4CCFBF5CFFCF6D4FBF5D6FCF6D7 +FCF6D6FCF6D7FCF6D7FCF6D6FCF6D6FCF5D5FCF6D4FCF5D3FCF4D2FBF4D0FBF5CFFAF4CC +F7EAA2F6E591F7E692F7E58BF7E489F6E485F7E484F6E280F5E27FF6E384F9EEB9FBF5D6 +FBF5D6FCF6DCFCF6DDFBF6DCFBF6DDFBF6DCFBF5DCFCF5DCFBF4D9FBF3D1FBF1CAF9ECB9 +F8EAB0F6E59CF6E295F6E396F6E399F7E5A1F2D564EEC530EFC734EFC838EFC839EFC83A +EFC63CEEC32FF1CF58F6DF94F7E5A7F8E8AEF8E8B2F8E9B6F8E9B6F8E9B5F8E9B5F8E8B3 +F8E8B3F8E8B5F8E7B4F9E8B4F8E5ACF8E2A5F7DF98EEC033ECB515EDB81DEDB820ECB923 +EDBC2CEEC03AF3D171F7E0A1F6DE9AF6DE9DF7DE9DF7DE9BF7DD9AF6DE9CF7E0A3F8E1A6 +F7E1AAF8E3ADF8E2ADF8E2ABF8E1AAF8E2ABF7E3ADF8E3AEF7E1ABF6E0A7F6DDA0F2D07D +EEC257E8AE1FE9AE21E9B027F0CF7BF3DA9AF5DCA0F5DA9DF4DB9EF3DA9DF4DA9DF4DBA1 +F4DEA7F4DFACF6E1B4F6E1B3F5E1B1F4E0AFF5E1B2F5E3B7F5E3BBF8EDD5FBF8F0FCFCFB +FDFDFFFDFDFEFDFDFDFDFDFEFDFDFEFEFEFEFEFEFEFEFEFEFDFDFDFEFEFEFFFFFFFEFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFE +FEFEFEFFFFFFF9F2B2F5E66FF6E875F7EA84F7EC8BF7EC8EF7EC90F7ED92F8ED95F7EE95 +F8ED93F8ED91F8ED91F7ED92F7ED92F7EC8DF6EA83F6E97EF5E875F6E774F6E875F6E879 +F6E97CF6EA7FF6E97FF6E97CF6E97AF6E978F6E875F6E875F6E875F6E875F5E875F7EB87 +F7ED93F8EFA1F8F1ABF9F1ADFAF1AEFAF0ACF9F1ADF9F0AEF9F1AEFAF1B0F9F1B0F8F0AA +F9F0A7F9EFA4F9F0A8F9F1AFFAF5C1FBF6C6FBF5C4FAF4C1FBF5C1FBF5BFFBF5BEFBF5BF +FBF5C2FAF5C3FBF6C7FBF6CAFBF6CEFCF7D3FCF7D5FCF8D8FCF7D8FCF8D7FBF7D5FEFAD5 +F0EBCDD3CBBB40307410005C1A07611A076111005D928593FFFDC2F9F1BDFBF3BCFBF4BB +FAF3BAFAF3B8FBF3B9FBF3BBFBF3BBFBF3BCFAF3C1FBF4C4FCF5CEFBF6D4FBF6D4FCF6D6 +FCF7D5FCF6D5FCF7D5FCF6D5FCF6D6FBF6D5FBF6D5FCF7D8FBF5CDF9EEABF9EDA8F8EC9D +F6EA93F6E785F4E46FF4E36BF5E576F7E77EF6E67AF7E98EF9EFAAFAF3C4FAF2C3FBF3C2 +FBF3C2FBF2C2FBF3C4FBF3C6FBF3C6FAF4CAFBF4CCFCF5D2FBF6D6FBF5D6FCF6D7FCF6D6 +FCF6D6FCF6D6FCF6D6FCF5D5FCF6D5FCF5D4FCF4D3FBF5D2FCF4CEFBF5D1F8EDAFF6E58F +F7E691F7E68EF7E58DF6E586F7E585F5E27EF5E27EF5E281F8EAA7FBF2CAFBF5D6FCF5DC +FBF6DDFCF7DDFCF7DEFCF7DEFCF6DDFBF6DCFCF6DDFCF6DCFCF5DAFCF4D4FBF3CFF9EDBC +F8E9ACF8E7A6F7E49CF7E6A3F4DB7BEEC62FEFC734EFC737EFC739EFC73BEFC73CEEC431 +F0C945F3D56EF8E6A8F9E9B3F9EAB7F9EBBCF9EBBBF9EBBAF9EABAF9EAB8F9E9B6F9E9B6 +F8E8B5F9E8B4F8E5ADF7E19FF7E19FF1C951ECB514EDB71CEDB821EDB924EDBB2BECB825 +EFC346F6DC96F6DD9BF6DE9DF6DE9DF7DE9CF7DD9BF6DE9DF7E0A2F7E0A5F7E1AAF8E3AE +F8E3AEF8E3ADF8E1AAF8E2ACF7E3AEF8E3AFF7E1ACF6E0A9F5DC9EF4D791F2CF7CE9B027 +E9AD1EE8AE22EAB73CEDC562F4DB9FF4DA9EF4DA9EF4DB9FF3DB9EF4DBA2F5DCA7F4DEAB +F5E0B1F6E1B2F5E1B2F4DFAFF4E0B0F4E1B2F4E0B2F4E0B3F5E2B9F7ECD3FAF9F6FCFBFA +FDFDFEFCFCFDFDFDFDFDFDFEFDFDFEFDFDFEFEFEFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFE +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFFFFFF +F9F3B7F5E569F5E774F6E980F7EB84F6EC8AF6EC8DF7EC90F8ED95F7EE97F7EE95F7ED93 +F7ED94F8EE93F8EE94F8ED90F7EB8AF7EA84F6E975F5E874F6E775F6E877F6E97AF5EA7E +F5E97FF5EA7EF5EA7CF5E979F6E876F6E976F6E876F6E876F5E774F6E97FF7EC89F8EE9B +F9F0A8F9F0ABFAF2AFF9F2AEF9F2AFFAF2AFFAF2B1FAF1B2F9F2B1F8F0ABF8EFA6FAF1AE +FBF5C5FBF6C9FBF6C5FAF5C2FAF4C2FBF5C2FBF5C2FBF5BFFBF5BEFBF5BEFBF4C0FAF5C2 +FBF6C6FCF5C8FCF6CCFBF7D1FCF7D4FCF8D8FCF7D8FCF8D7FBF7D4FEF9D4F0EACCD3CBBB +40307410005C1A07611A076111005E928592FFFEBFF9F2BBFAF4BBFBF3BCFAF3B9FAF2B8 +FBF2B9FAF2BAFBF2BAFAF2BAFBF3BFFAF4C2FBF5CBFCF6D3FBF7D5FCF7D6FCF7D5FCF7D5 +FCF6D4FCF7D4FCF7D4FCF7D5FBF6D6FBF6D6FCF7D4F9EFB0F8ECA6F8EC9EF6E994F6E886 +F5E46DF4E267F5E470F6E578F6E67AF7E883F8EB94FBF2C3FAF3C2FBF2C0FBF3BFFBF3C0 +FBF2C3FBF3C5FAF2C5FBF3C9FAF4CBFBF5D1FCF6D7FBF5D7FCF6D7FCF6D6FCF6D5FCF6D7 +FCF6D7FCF5D6FCF6D6FCF5D4FCF4D2FBF4D2FCF4CFFBF4D1F9EFB8F6E691F7E792F7E68F +F7E58FF6E488F7E384F5E280F5E27FF6E27FF8E89EFAEFBCFBF5D7FCF6DCFBF5DCFCF6DD +FCF7DEFCF6DEFCF7DDFCF7DEFBF6DDFBF5DAFBF6D9FCF4D4FBF3D1FBF2CBFBF1C7FBF0C3 +F9ECB7F9EAB4F5DC85EEC62DEEC630EEC634EEC736EFC536EFC534EEC430EFC63BF1CD51 +F7E4A4F9E9B5F9EAB9FAECBCFAEBBCFAECBEFAEBBEFAEBBCFAEABBF9E9BAF8E9B7F9E8B5 +F8E5ADF6E19EF7E1A1F2CE64ECB615EDB71AEDB720EDB823EDBA28ECB928EDBB30F5D683 +F6DD98F7DF9EF6DD9CF7DE9CF7DD9BF7DE9DF7E0A2F6DFA3F7E1A9F8E4B0F7E3B1F8E3AE +F8E3ACF8E3ADF7E2AFF8E3B0F7E2ADF7E1ABF5DC9EF4D895F3D48AEAB330E8AB1AE9AF28 +E8B12CEAB63BF2D693F4DCA2F3DA9EF4DB9FF4DA9EF3DBA2F3DCA6F4DEAAF4E0B0F5E1B1 +F6E0B2F4E0B0F5E0B1F5E0B3F5E1B3F5E1B5F4E1B5F5E0B3F5E8CAFAF7F0FDFEFFFDFCFD +FCFCFEFCFCFEFDFDFEFEFEFEFEFEFEFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFFFFFFF9F2B6F5E566 +F6E875F6E97CF6EA7EF6EB84F6EB88F7EC8CF8ED91F7EE94F7ED94F8ED94F8ED94F7ED94 +F7EE94F8ED92F7EB8DF7EB88F6E97BF5E877F6E875F6E877F5E97AF6EA7FF6E97FF6E97E +F6EA7EF6E97CF6E878F6E978F6E877F6E875F5E774F6E879F6EA80F7ED94F9EFA3F9F0AA +FAF2AFF9F1AEF9F2B0FAF2B2F9F2B3FAF2B3F9F1B1F9F1B2F9F2B5FBF4C3FBF6C8FAF5C6 +FAF6C4FBF5C2FBF4C2FBF5C1FBF5C1FBF5BFFBF5BEFBF4BEFBF4BFFAF5C0FBF5C3FBF5C6 +FBF6C9FCF6CFFBF7D2FCF8D6FCF7D7FCF8D6FBF7D3FEF9D4F0EBCBD3CBBB40307410005C +1A07611A076111005E928590FFFDBDF9F1BAFAF4BCFBF3BCFAF3B9FAF3B8FBF3B9FAF3BB +FBF3BBFAF2BBFBF3BEFAF4C1FBF5CBFCF6D2FBF6D4FCF7D6FCF7D6FCF7D5FCF7D5FCF7D5 +FCF7D4FCF7D5FBF6D5FCF6D5FBF7D7F9F1B7F8ECA4F8ECA0F6EA96F6E88AF4E470F4E268 +F5E36DF5E573F6E67BF7E77FF7E886FAF1B9FBF3C4FAF2BFFAF2BFFAF2BFFAF2C2FAF2C3 +FBF2C4FBF3C7FAF3C8FBF5CEFCF6D5FBF5D6FCF6D6FCF6D6FCF6D6FCF6D6FCF6D6FCF6D6 +FCF6D6FCF5D5FCF5D3FBF5D2FCF4CFFBF4D1FAF0BEF7E799F7E793F6E68FF7E58FF6E589 +F7E485F6E383F5E27FF5E27DF7E797F9EBAFFBF4D4FCF6DCFBF5DCFCF6DDFCF7DEFCF6DE +FCF6DEFCF7DEFCF6DDFCF6DCFBF6DAFCF5D5FBF4D2FAF2CAFAF0C7FAF0C5FAEFC3FAEFC5 +F8E7A8F1D35DF0CB47EFC635EFC736EFC534EFC534EEC432EFC536EFC842F6E197F9E9B5 +F9EAB8FAECBEF9ECBFF9ECC0F9EBC1F9EBBFF9EBBDFAEABDF9E9B9F9E8B7F8E6AFF7E2A1 +F7E2A3F3D372EDB71BECB61AEDB71FEDB820EDB925ECB929EDBA2DF2CC66F5D889F7DFA0 +F6DD9BF7DE9CF7DD9BF7DE9CF7DFA1F6DFA3F7E1A9F8E4B0F7E4B1F8E3AEF8E3ADF8E3AE +F7E3AFF8E3B0F7E2AEF7E1ABF5DDA0F3D894F3D68FEBB73CE8AA19E9B028E9B332E9B334 +F0CD7AF5DDA4F4DA9FF3DA9FF4DA9FF4DBA1F3DCA5F4DEA9F4E0B0F5E1B2F5E0B2F4DFB0 +F4E0B0F5E0B2F4E0B2F4E1B4F5E2B7F4E1B6F4E0B5F9F2E5FCFDFFFCFBFCFCFCFDFCFCFD +FCFCFDFDFDFEFEFEFEFDFDFEFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFFFEFFFEFEFDFFFFFFF7F0ADF5E566F6E878F5E978 +F5E875F6E97CF6EA80F6EB85F7EC8CF8ED90F8ED94F7ED94F8ED94F8EE94F8EE95F7ED95 +F8EC91F7EC8FF6EB86F6EA81F5E877F6E977F5E879F6E980F7EA81F6E980F7E980F6E981 +F5E97AF6E878F6E877F6E975F5E874F6E875F5E876F7EC8CF9ED9DF9F0A7FAF2B0FAF1AF +FAF1B1F9F1B4FAF3B5F9F2B2F9F1B2FBF6C9FCF8D3FCF7D1FBF6C9FAF5C7FBF6C4FBF5C2 +FBF4C1FBF5BFFBF5BEFBF5BFFBF4BEFBF5BDFBF5BDFBF5BEFBF4C0FAF4C3FAF5C6FBF5CC +FCF7CFFBF8D5FCF7D6FCF8D5FBF6D3FEF9D4F0EACBD3CBBC40307410005C1A07611A0761 +11005E91848EFFFDBBF9F2B9FAF3BCFAF4BDFBF3BAFBF2B9FAF3BAFBF4BCFAF3BCFBF2BB +FBF3BCFAF4BFFBF5C8FBF5D1FCF6D4FBF7D7FCF6D6FCF7D5FCF7D6FCF7D6FCF7D5FCF7D4 +FBF6D5FBF6D5FCF7D9FAF3C3F8EEA7F8ECA2F8EC9AF6E98EF4E471F5E268F4E36CF4E571 +F6E67CF7E67DF6E57BF9EFAAFBF4C7FAF2BEFBF1BCFBF1BDFBF2BFFBF2C0FBF2C0FBF3C3 +FAF3C5FBF4CCFCF5D2FBF5D4FCF6D5FCF5D5FCF6D6FCF6D6FCF6D6FCF5D5FCF6D6FCF5D5 +FCF4D4FBF4D2FCF5D0FBF4D1FAF2C5F7EAA5F7E795F6E68FF7E48FF6E58BF7E586F6E485 +F5E380F4E17CF7E58EF7E89EFBF3CFFCF6DEFBF6DCFCF6DCFCF5DCFCF7DEFCF7DFFCF6DE +FCF7DEFCF6DDFBF5DBFCF5D7FBF4D5FAF2CCFBF2C8FAF1C8FBF1C8FBF2CBFAF1C8F8E7A6 +F5E087F2D463F1CD4FEEC32EEEC32CEFC431EFC333EEC231F5DA85F9E9B7F9E9B5FAEBBE +F9ECC0FAEDC2FAECC3FAEDC4F9ECC2FAEBC1FAEABCF9E9BBF8E8B6F8E4A8F7E4A7F5D987 +EDB925ECB61BEDB71DECB71EEDB721ECB929EDBA2DF0BF3FF4D071F7E0A2F6DD9AF7DE9B +F7DE9CF7DD9BF7DF9FF6DFA3F7E1AAF8E4B1F7E4B2F8E3B0F8E3AFF8E3AFF7E4B1F8E3B2 +F7E2AFF6E2ACF5DDA1F4D894F4D896EDBC4EE7AA1EE8B12CE9B437E8B12EECBF56F4DCA2 +F4DBA2F3DA9FF4DA9FF4DAA0F3DBA4F4DDA9F5E1B0F4E1B2F4E0B2F5E0B1F4DFAFF4DFB1 +F4E0B3F4E1B5F5E2B7F4E1B6F3DBA8F6EAD1FCFCFFFCFBFCFBFBFCFCFCFDFDFDFEFCFCFD +FCFCFEFDFDFDFEFEFEFDFDFDFDFDFDFDFDFDFEFEFEFFFFFFFEFEFEFEFEFEFEFEFEFEFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFEFEFFFFFFFEFEFDFEFEFFF7EFA6F5E568F6E97AF6E878F6E873F5E879 +F5E97CF6EA80F7EC88F7EC8CF7EC91F8ED92F7ED92F8ED93F8ED93F7ED95F8ED93F7EC91 +F7EB8AF6EB86F6E97DF5E879F5E87AF6E980F7E981F6EA81F7EA82F6EA82F6E97AF5E876 +F6E878F5E979F6E876F5E875F5E874F6EA86F8EE98F8EFA3FAF1B0F9F2B2F9F2B3FAF2B4 +F9F2B3FAF3BCFAF4C4FBF7D1FCF8D3FCF7CFFBF6CAFBF5C9FAF6C5FBF5C3FBF4C1FBF5BF +FBF5BEFBF4BEFBF5BDFBF4BCFBF4BBFBF4BCFBF4BEFBF5C2FBF5C4FBF5CAFBF6CDFCF8D3 +FBF8D4FCF7D4FBF6D3FEF9D4F0EBCCD3CBBD40307410005C1A07611A076111005E91848E +FFFDBCF9F1BAFAF3BCFBF4BDFAF3BBFAF3BAFBF2BAFAF3BCFBF3BBFAF3BAFAF3BAFBF3BD +FAF4C7FBF5D0FCF6D3FBF7D7FCF6D6FCF7D5FCF7D6FCF7D5FCF7D4FCF7D5FCF7D5FBF6D4 +FCF7D9FAF4C9F8EFAEF8EDA4F8EC9BF7E98FF5E471F4E268F5E36CF4E470F6E67AF7E77F +F6E67BF9EDA1FBF3C3FBF2BEFAF1BCFAF1BCFAF2BDFAF2BDFBF2BEFBF2C2FAF3C3FBF4CA +FBF4D0FCF5D2FBF5D4FCF6D5FCF5D5FCF6D5FCF6D6FCF5D6FCF6D6FCF5D5FCF5D4FBF5D2 +FCF4D0FBF4D0FAF2C7F8ECADF7E796F6E58EF7E48FF6E58CF7E587F6E486F6E282F6E27F +F6E58EF7E799FBF2CAFCF7DEFBF6DCFCF6DDFCF6DDFCF7DEFCF7DFFCF7DFFCF7DEFCF6DD +FBF6DBFCF5D7FBF4D5FBF2CDFAF1C9FBF1C8FAF0C7FBF1C9FAF0C6F8E9ABF6E394F5DE83 +F4DB7BF2D059F0C943EFC536EEC22EEEC12DF4D777F8E9B5F9E9B5FAEBBEF9ECC0FAECC2 +FAECC3FAEDC4FAECC3F9EBC2F9EBBEFAEBBDF9E9B9F8E5ADF8E4AAF6DC92EEBC2FEDB71E +ECB61BEDB61DEDB720ECB927EDBB2EEFBC36F2CB64F7DFA1F6DD9BF6DD9BF7DD9CF6DD9B +F7DF9FF6DFA4F7E1AAF8E4B1F7E3B2F8E4B1F8E3B0F8E3B0F7E4B1F8E4B2F7E2B0F6E1AE +F5DEA4F4D894F4D997EEC158E9AD24E8B02BE9B337E8B234EABA48F2D793F3DB9FF4DAA1 +F3DA9FF3DAA0F3DBA4F4DDA9F5E0B0F4E0B2F4E0B2F4DFB0F4DFAFF4DFB1F5E0B3F4E1B6 +F5E2B7F4E1B6F3DDADF5E5C4FBFBFCFBFBFCFBFBFCFCFCFDFCFCFDFDFDFEFCFCFEFDFDFE +FDFDFDFEFEFEFEFEFEFEFEFDFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFEFEFFFFFFFEFEFCFDFDFAF6EC98F5E76AF6E878F6E97AF6E876F6E875F6E776F5E877 +F6E97DF6E980F6EB89F7EC90F8ED90F7EC92F8ED93F8EE94F7ED96F8ED97F8ED92F7EC90 +F6EB88F6EA80F6E97EF5E97EF6E97FF7EA83F6EB85F7EA82F6E97CF5E878F6E87AF5E97F +F6E97CF5E876F4E773F6E87AF7EA88F7ED97F9F0AEFAF2B2FAF2B5F9F2B5FAF4BFFBF7D4 +FBF8D8FCF8D5FBF8D3FBF7D1FCF6CCFCF6CBFBF5C7FAF5C4FBF5C3FBF4C0FBF5BFFBF5BE +FBF4BBFBF3BAFBF3B9FBF3B9FBF4BBFBF4BDFBF4BFFAF5C5FBF5C9FCF6D0FBF8D3FCF7D2 +FBF6D3FEF9D5F0EBCED3CBBF40307410005C1A07611A076111005E91848EFFFDBDF9F1BB +FAF3BCFBF3BCFBF4BCFBF3BBFBF3BBFAF4BCFBF3BCFAF3BAFAF2B9FBF2BAFAF3C3FBF5CB +FBF6CFFCF7D6FBF6D6FCF7D6FCF7D5FCF7D5FCF7D4FCF7D4FCF7D5FBF6D5FCF7D8FBF6D3 +FAF3C5F9EEAAF8ECA1F7EB95F6E575F4E369F5E36BF4E36DF6E476F7E680F6E67DF7E98D +F9EFAAFAF2BEFAF2BCF9F1BBF9F1BBFAF1BBFAF2BCFBF2C0FAF2C1FAF3C6FAF4CCFBF4CF +FCF5D3FBF6D4FCF5D4FCF6D5FCF6D5FCF5D5FCF6D6FCF5D4FCF5D3FBF5D2FCF5CFFBF4CF +FAF3C9FAF1C1F7E89BF6E48BF7E58FF7E48CF6E589F7E486F7E283F7E385F7E590F6E696 +F9EFBDFCF7DFFBF6DDFCF7DDFCF7DEFCF6DEFCF7DFFCF7DFFCF7DEFCF6DDFCF6DCFBF5D8 +FCF4D5FBF2CEFAF1C9FBF1C9FAF1C9FBF1CAFAF1CAFAEEBEF7E6A0F7E393F7E499F6E397 +F5E290F5DA7BF2CE53F0C842F2D266F7E4A4F8E9B4FAECC0F9ECC2FAEDC4FAECC4FAEDC3 +FAECC2FAEBC1F9ECC0FAECC0FAEBBFF9E9B8F8E7B2F8E1A2F1CA5AEEBD34ECB51DEDB721 +EDB722EDB727EDBA2CEEB92DEFBF41F6DB93F7DE9EF6DD9CF7DF9DF6DD9BF7DE9EF7DFA3 +F7E1A9F8E4B1F7E3B2F8E3B1F8E3B1F8E3B1F7E3B3F8E4B4F7E3B1F6E2AFF5DFA7F4D793 +F4D997F0C970EBB73EE7AE26E9B335E9B438E8B539ECC25DF0D185F4DCA6F3DA9FF3DAA0 +F3DBA4F4DDA9F5E0B0F5E0B2F4E0B2F4DFAFF4DFAFF4DFB2F5E0B4F4E2B8F5E2B9F4E1B7 +F4DFB1F2DDAEF9F5EEFAFBFDFAFAFBFBFBFCFBFBFCFCFCFDFCFCFDFCFCFDFDFDFEFDFDFD +FDFDFDFDFDFEFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFF +FEFEFBFEFDF6F6EC92F5E76BF6E876F5E97DF6E87AF6E875F6E774F6E875F5E978F6E878 +F6EA85F7EC90F8ED91F7EC93F8ED94F8EE94F8EE96F7EE97F8ED95F7ED92F6EC8BF7EB84 +F6EA81F5E97DF6EA7EF7E982F6EB85F7EA82F6E97DF5E87AF6E97BF6EA7EF5EA7EF6E878 +F6E775F6E877F7E87EF7ED92F9F1ABFAF2B0F9F2B4F9F2B9FBF8D0FCF8D8FBF7D5FBF7D3 +FCF8D4FCF7D2FBF6CDFCF6CBFBF6C8FAF5C4FBF4C3FBF5C0FBF5BFFBF5BEFBF4BBFBF3BA +FBF4B9FBF4B9FBF4BAFBF3BBFBF4BEFAF6C5FBF5C8FCF6D0FBF8D2FCF7D3FBF6D4FEF9D5 +F0EACED3CBBF40307410005C1A07611A076111005E91848FFFFDBCF9F2B9FAF4BDFAF4BD +FBF3BBFBF2BAFBF3BAFBF4BDFAF3BCFBF2BBFBF3BAFAF2BBFBF3C1FAF4C9FBF6CDFCF7D5 +FBF6D6FCF7D6FCF7D4FCF7D4FCF7D5FCF7D4FCF7D5FCF6D7FBF7D7FCF6D5FCF6D0F9EFAE +F9ECA3F7EB99F6E57BF4E36BF5E36BF4E46BF5E474F7E67FF6E67FF7E885F8EB97FBF1BC +FAF2BCF9F1BBF9F2BCFAF2BDFBF2BEFAF1C0FBF2C1FBF3C6FAF3CBFBF4CEFCF5D3FBF6D4 +FCF5D5FCF6D4FCF6D4FCF5D4FCF6D5FCF5D5FCF4D2FBF4D2FCF5D0FBF4CFFAF2C9FBF2C9 +F7E89FF6E48AF7E58EF7E58BF7E589F6E386F6E284F7E386F7E691F6E697F9ECB6FCF6DE +FBF5DDFCF7DDFCF6DEFCF7DFFCF7DEFCF7DEFCF7DFFCF6DDFCF6DBFBF5D8FCF4D5FBF2CD +FAF1C8FBF2C8FAF2C9FBF2CAFAF1CAFAEFC5F7E7A3F6E28DF6E292F6E297F7E399F7E49A +F6E08BF4DB7AF3D877F5E099F8E8B3FAEBC0F9ECC3FAEDC4FAECC4FAEDC3FAECC2FAEBC1 +FAEBC1F9EBC0FAEBC0F9E9BAF8E7B5F7E3A7F3D274EFC246ECB721EDB928ECB726ECB82A +ECB92DEEB930EEBB33F5D686F7DFA1F6DD9CF6DF9EF7DD9BF7DD9EF6DEA2F7E1A8F8E3B0 +F7E4B2F8E3B1F8E4B1F8E4B2F7E3B3F8E4B5F7E3B2F6E3AFF5DFA6F4D793F4D897F0CE7B +EBBD50E7AC24E8B334E9B439E9B53CE8B640EEC971F5DEA9F4DAA0F2D9A0F3DBA4F4DDA9 +F5E0AFF4E0B1F5E0B2F5DEAFF5DFB0F5E1B2F5E1B4F4E2B9F5E1BAF4E1B8F4DFB3F2DBAA +F6F0E0FAFBFFFAF9FAFBFBFBFBFBFCFCFCFDFBFBFCFCFCFDFDFDFEFDFDFEFCFCFEFDFDFE +FEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFAFEFCF2 +F6EB8DF5E76DF6E877F6E97EF5E87BF6E875F6E774F6E875F6E876F5E876F6E97EF7EC8B +F7ED8FF7ED94F7ED94F8ED94F8ED95F7ED96F7ED95F8ED94F7EC8EF6EB88F6EB84F6EA7F +F6E97FF6EA81F7EA83F7EA83F6EA80F5E97DF6E97BF6E97CF6E97FF6E87BF5E876F5E876 +F6E778F6EB88F8F0A5FAF1ADFAF4C1FBF6D0FBF7D4FCF8D6FBF7D5FCF8D3FCF7D4FCF8D3 +FBF7CEFCF6CCFBF6C7FAF5C3FBF4C2FBF4BFFBF5BEFBF4BBFBF3BBFBF4BAFBF4B9FBF4BA +FAF4BAFAF3BAFAF4BCFAF4C3FBF5C7FBF6D1FBF7D3FBF7D4FBF6D4FDF9D5F0EBCED2CBBF +40307410005C1A07611A076111005E918490FFFCBBF7F0B7FAF3BAFAF3BCFAF3BBFAF2BB +FAF2BBFAF3BCFAF2BDFAF2BCFAF2BBFAF2BBFAF3C0FAF4C7FBF5CCFCF6D5FBF7D6FCF6D6 +FCF7D5FCF7D5FCF7D4FCF7D5FCF7D6FCF6D6FCF7D7FBF6D6FCF7D6F9F0B4F8ECA1F7EB9B +F6E781F5E472F5E36BF4E36AF5E472F6E57DF7E67EF7E681F7E787FAF0B5FAF2BEF9F1BB +FAF1BDFBF2BEFAF1BFFBF2C1FBF2C1FBF3C5FAF3CBFBF4CDFCF5D2FBF5D3FCF6D4FCF5D5 +FCF6D5FCF5D5FCF6D5FCF5D5FCF5D3FBF4D2FCF4D0FBF4CEFAF2C9FBF3CAF8EAA3F6E488 +F7E58DF7E489F6E487F7E386F6E284F6E283F6E48EF6E595F9EBAEFCF5DAFBF6DDFBF6DD +FCF6DEFCF6DEFCF7DEFCF6DFFCF7DEFCF6DDFCF6DCFBF5D9FCF4D7FBF2CFFAF1CAFBF2CA +FBF1CAFBF2CBFAF1CAFBF1CBF8E8A9F6E28EF7E393F6E296F6E296F6E295F6E291F6E08C +F6E296F7E8AEFAEEC4FAEDC5FAEDC4FAEDC5FAEDC5FAEDC5FAECC4FAECC3FAECC3F9ECC3 +FAECC1F9EABBF8E8B7F7E4A9F4D887F0C854ECB825EDBA2CEDBA2DEDBA30EEBA31EFBC35 +EEBB32F4D073F7E0A3F6DE9DF7DE9CF6DE9CF7DE9FF6DEA3F7E0A8F8E3B0F7E4B2F8E3B2 +F8E4B2F8E3B1F7E4B4F8E5B6F7E4B3F6E2B0F5DFA7F4D794F4D795F1D184EDC462E7AD25 +E8B336E9B53BE9B53EE8B53EECC25FF3DBA2F3DBA2F2D9A0F3DCA4F4DDA9F4DFAEF4E0B1 +F4E0B3F4DFB1F4E0B2F5E1B2F4E1B4F4E2B9F5E3BBF4E1B7F3E0B5F2DBA8F3E4C2F8F8F6 +F9F8F8FAFAFBFAFAFBFBFBFCFBFBFCFBFBFCFCFCFDFCFCFDFCFCFDFCFCFDFDFDFDFDFDFE +FDFDFEFDFDFEFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEF8FEFBEBF6EB88F5E76E +F6E978F6E97FF5E87BF6E875F6E774F6E774F6E775F6E774F5E877F6EA86F7EB8AF8ED92 +F8ED93F7EC93F8EC92F8ED93F7EE94F8ED95F8EC92F7EC8CF6EB89F7EA81F6E980F6EA82 +F6EB84F7EB85F6EA83F5E97DF6E97AF6E87BF6E97FF6E97EF6E879F5E875F6E775F5E87D +F8EE9EFAF2B5FBF7D1FCF8D8FCF7D5FBF7D3FCF8D3FCF8D3FCF7D4FCF8D3FBF7CEFCF6CC +FBF6C8FAF5C2FBF4C0FBF5BDFAF4BCFAF3B9F9F2BAF9F2BAF8F1B9F8F1B8F8F1B9F8F1B8 +F9F2BBF9F3C0F9F4C4FBF6CFFCF7D4FDF8D5FDF9D5FFFCD7F2EED0D5CDC040307510005C +1A07611A076111005E938690FFFFBCFAF3B7FCF5B9FDF5BCFDF6BCFCF5BCFCF4BCFCF3BD +FBF3BEFAF2BDF9F1BCF9F1BCF9F1BDF8F2C2F8F2C7F9F4D2F9F4D4FAF5D5FBF6D5FBF6D5 +FBF6D4FCF7D5FBF6D6FCF7D6FCF6D5FBF7D6FCF8DAFAF2BCF8ECA0F8EB9DF6E786F7E478 +F5E36CF5E26BF4E471F6E57BF7E57CF6E47CF6E377F9EDAAFBF3C1FAF1BDFBF2BFFBF1BF +FAF2C0FBF3C2FBF2C1FBF2C5FAF3CAFBF4CDFCF4D1FBF5D2FCF6D4FCF5D5FCF6D6FCF5D6 +FCF6D5FCF5D5FCF4D5FBF4D3FCF5D0FBF4CEFAF2C8FBF3CAF9ECAAF6E486F7E58AF7E387 +F6E285F7E385F6E383F4E280F6E489F6E690F8E9A5FBF4D5FBF7DEFBF5DCFCF6DDFCF7DE +FCF6DFFCF6DFFCF7DEFCF6DCFCF6DDFBF5DAFCF4D8FBF3D2FAF1CDFBF2CBFBF1CAFBF1CB +FAF1CBFBF3CFF8E9AEF6E18EF7E293F7E397F7E297F6E297F7E396F7E293F7E5A2F8ECB6 +FBF4D7FBF3D5FAF1CEF9EEC7F9EDC4F9EDC5F9EEC7F9EDC6F9ECC5F9EDC6F9ECC2FAEABE +F9E9BAF8E4ACF6DF9BF2CD64ECB726EDBA2FEEBC32EFBC34EFBC34EFBD3AEEBB33F1C95E +F7E1A6F6DFA0F7DE9EF7DE9EF7DEA1F6DEA3F7E0A8F8E3B0F8E4B2F8E3B2F8E4B3F8E3B1 +F7E4B4F8E5B6F7E4B3F6E2B0F5DFA7F3D795F2D793F2D58EF0CD79E7AF29E8B337E9B53D +E9B640E8B641EABA4CF2D696F4DBA3F3DAA2F3DBA4F4DCA8F3DEADF4E0B0F5E1B3F5DFB2 +F5E0B3F5E0B3F5E1B5F4E2B9F5E4BCF2DEAFF2DEB0F2DDACF0D9A5F2E6C8F8F8F6F9FAFB +F9F9FAFAFAFBFBFBFCFAFAFBFBFBFCFCFCFDFBFBFCFCFCFDFDFDFEFCFCFEFDFDFDFEFEFD +FEFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFBFEFDF4F6EA83F5E770F6E978F5E97C +F6E878F6E875F6E774F6E875F6E875F6E774F6E875F6E97DF6EA82F7EC8DF7EC90F8ED93 +F7ED93F8ED93F8ED94F7EE95F7ED93F7EC8EF7EC8CF6EA85F7EA83F6EA83F7EB85F6EB85 +F6EA83F5EA7FF6E97DF5E87BF5E97EF5E97FF5E87BF5E876F5E774F5E876F8F0A7FBF5C4 +FBF7D1FBF8D4FBF7D4FCF8D4FCF8D3FCF7D3FCF8D4FCF7D2FBF7CDFCF6CBFBF5C8FAF5C2 +FBF5C0FAF4BCFBF4BAFDF7B9FFF8BCFEFABDFEFEBFFFFFBEFFFEBDFFFEBDFFFCBEFEFBC1 +FFFBC5FEF9CEFBF6D3F9F5D3F5F1D3F7F3D3E9E4CCCCC4BC3E2E7411005C1A07611A0761 +12005E8D8090FBF4B9EFE8B4F2EBB6F3EBB7F3ECB9F5EDBBF6EEBBF8F1BCFCF4BEFEF6BF +FFF9C0FEF9BFFFFCC0FFFEC7FFFFCCFFFED6FFFFD8FEFCD8FFFAD7FEF9D6FCF7D5FBF6D5 +FBF6D6FBF6D6FBF6D5FBF7D5FCF7D9FAF3C3F8EDA2F8ECA0F6E88AF6E67BF5E36CF5E26A +F4E370F5E579F6E57BF7E57CF6E478F9ECA1FBF3C4FAF1BEFAF2BFFBF1BFFBF2C0FBF3C2 +FBF2C1FBF2C4FAF4C9FBF4CCFBF4D0FCF5D2FBF5D5FCF6D6FCF5D6FCF6D6FCF6D6FCF5D6 +FCF5D5FBF5D4FCF5D1FBF4CEFAF2C7FBF2CAF9EDAFF6E485F7E487F6E387F7E285F7E285 +F5E17FF4E17AF6E285F7E48DF7E89FFBF3CFFCF6DDFBF5DCFCF5DCFCF6DDFCF7DEFCF7DE +FCF7DEFCF6DDFCF6DCFBF5DAFCF4D8FBF3D1FAF1CDFBF2CCFBF2CAFBF2CBFAF1CBFBF2CF +F9EAB2F6E18FF7E293F7E395F7E296F7E296F7E395F6E292F7E49FF7E8ADFBF2D2FBF5DD +FBF4DAFBF2D5FAF0D0FBEECAFAEDC7FAEDC7F9EDC6FAEDC6F9EDC4FAEBBFF9EABCF8E4AC +F7E0A0F3D06CECB725EDB92CEEBB32EFBB33EEBB34EFBD39EEBC35F0C655F7DE9EF6DEA0 +F6DFA1F7DFA0F7DFA2F6E0A5F7E1A9F8E3B1F7E4B2F8E3B2F8E3B3F8E3B2F7E4B4F8E5B5 +F7E3B3F6E2B1F5DFA9F4D997F3D793F3D48EF0CE7DE8B02FE8B437E9B63EE9B642E9B845 +E9B846F0D085F3D99DF3DBA4F4DBA3F4DCA8F4DEADF4E0B0F4E1B3F4DFB2F4E0B3F4E0B3 +F4E1B5F4E2B9F5E3BEF2DDADEDCF8BF0D8A1F0D8A4EDD49BF5EEDDF9FCFFF9FAFDFAFAFB +FAFAFBFAFAFBFBFBFCFBFBFCFCFCFDFBFBFCFCFCFDFCFCFDFDFDFEFDFDFEFDFDFEFEFFFF +FEFEFFFEFFFFFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFEFEFFFFFFFEFEFCFDFCF7F6E97EF5E771F6E877F6E876F6E774F6E875 +F6E875F6E875F6E774F6E875F6E774F5E774F6E875F6EA81F7EB86F7EC90F8ED94F7ED94 +F7ED95F8EE95F7EE95F8ED93F8ED93F7EB8CF6EB88F7EA82F7EA84F6EA84F6EA86F6EB85 +F6EA83F6E97FF6E97FF6E980F6E97EF6E878F6E876F7EC8AFAF4B6FBF6C2FBF6CCFCF7D1 +FBF7D3FCF7D3FCF7D3FBF7D2FBF7D1FBF6CFFAF5CBFAF4CAF9F4C8F9F3C3F9F3C1FAF3BC +F8F1B8EDE6B2E6DFB3DCD6B1C9C2ABC6C0AAB5AFA39792998983957771927571935E5A8E +4945883E3B842A277C2521791F1B761B1571190964180560190661180661190560180E6A +1816731915721A17731C1874201D752A26792F2B7A403C8059558865608C767192787392 +8E8899B1AAA7BBB5AEC7C2B9CCC7BDE2DDCAECE7CFF0EBD0FAF5D5FBF6D5FAF5D5F9F4D5 +FAF5D5FAF5D5FBF6D6FBF5D0F9EFB6F9EDA7F7E991F6E887F5E474F4E36CF4E36EF5E477 +F6E57AF7E680F6E67EF8E990FBF2C2FAF3C4FAF2C0FBF1BFFBF2C0FBF3C3FBF2C3FBF2C4 +FBF3C8FAF3CAFBF4CFFCF5D2FBF5D5FCF6D7FCF5D6FCF6D6FCF5D7FCF5D6FCF6D6FBF5D4 +FCF5D1FBF4CEFAF2C7FBF2C7FAF0BBF7E488F6E381F6E386F7E287F6E285F5E17AF4E075 +F5E17DF6E285F7E695FAEFC0FCF4D4FBF5DAFBF5DAFCF6DCFCF6DCFCF6DCFCF6DDFCF5DD +FCF6DCFBF5DAFCF5D8FBF3D3FBF1CFFAF1CCFBF1C9FBF1C9FAF1C9FBF2CEF9EDBAF6E291 +F6E293F7E395F7E395F7E293F7E190F7E190F7E299F6E4A0FAEFC7FCF6DFFBF5DFFCF6E1 +FDF6E2FCF5DEFBF2D5FBF1D1FBEECBFAEEC9FAEDC7FAEBC4F9EABFF8E5ADF7E3A8F4D680 +EDB92BEDB92AEEBB33EEBA32EEBA33EFBC38EEBC38EFC147F4D37FF6DD9BF7E1A8F6E0A5 +F7E0A5F6E0A8F7E1ACF8E4B2F7E4B3F8E4B4F8E4B3F7E4B3F8E3B4F7E4B5F7E3B3F6E2B1 +F5E0ABF4DA9CF3D794F3D691F2D38BE9B73FE8B336E9B63FE8B846E9B947E8B742EBC15D +EFCE83F3DCA8F3DBA3F3DCA8F4DEADF4E0B0F4E1B3F3DFB2F3E0B3F4DFB3F4E1B5F4E1B9 +F5E2BCF3DFB3EBCB82E9C473ECCE8CECCE8CEDD297F4ECD9F6F4EEF8F9F9F8F9FAF9F9FA +FAFAFAFAFAFBFAFAFBFBFAFBFBFBFBFBFBFCFBFBFBFBFAF9FBFAF9FAF6F0F9F5EBF9F4EB +F9F5ECFAF6EDFAF6EFFAF7F1FBF9F4FDFDFCFEFEFEFEFEFEFFFFFFFEFEFEFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFEFEFFFFFFFEFDF9FBF9EEF6E97EF5E771F6E875F6E774F6E775F6E774F6E875F6E875 +F6E875F6E774F5E875F6E875F5E775F6E97DF7EA82F7EC8DF8ED93F8EE95F8EE97F7EE97 +F8ED97F7EE95F8EE95F7EC91F6EB8CF6EA82F6E980F7E984F7EA88F7EA88F7EA86F7EA83 +F7E981F7E980F6EA7FF6E879F6E980F8F0A1FAF4B5FAF4B9FBF6C8FCF7D0FBF7D2FCF8D3 +FBF8D2FCF8D0FCF8D1FEF9CFFFFDCEFEFDCDFFFFCCFFFDC9FEFCC6FFFCBFF8F3B9CCC5A8 +B1ABA28D8897433F8036327C15127101006B00006A00006900006900006900006A01006A +03006B04016C05026B08026A1505621906601805611805611906600E046704026D05026C +05026C05026C04016C03006C03006C01006B00006A00006A00006900006901006A0F0C70 +1C18743A36804D49899F9AAEC5C0BED4D0C5FDFBD6FFFDD8FEFED9FFFFDAFFFFDBFEFDD9 +FFFCD9FDF8D4FAF2C1F9EEABF7E995F6E88CF5E57AF4E36FF4E36DF5E477F6E57CF7E682 +F6E681F7E88BFAF2BFFBF4C8FAF2C1FBF1BFFBF2C0FBF3C4FBF2C5FBF3C5FBF2C7FAF3C9 +FBF4CFFCF4D1FBF5D4FCF6D7FCF5D6FCF5D6FCF6D7FCF5D6FCF6D6FBF5D4FCF5D1FBF4CE +FAF2C7FBF2C5FAF1C0F7E58AF6E27EF7E385F7E387F6E284F4E17AF4E075F5E17AF6E281 +F6E491F9EEB7FBF3CDFBF5DAFBF6D9FCF5DBFCF5DCFCF5DBFCF5DCFCF6DDFCF6DDFCF5DA +FCF5D8FBF3D3FBF1CEFAF2CCFBF1C8FBF0C8FAF0C8FBF2CCFAEEBEF7E394F6E293F7E394 +F7E395F7E293F7E08EF7E08CF7E196F6E39CFAEEC2FCF5DEFBF4DCFCF6E0FDF5E2FDF6E3 +FDF7E2FDF5DFFBF0D2FAEECBFAEDC8F9ECC3F9EABFF8E5AFF8E3AAF5D889EDBB2FEDB92C +EEBB33EDBA31EEBB32EFBC37EEBD39EFC044F2CD6BF6DB96F7E2AAF6E0A6F6E0A6F6E0A8 +F7E1ADF8E4B3F8E5B5F8E5B6F8E4B6F8E4B5F7E3B5F8E4B4F7E3B3F6E2B1F6E0ACF4DB9E +F3D897F3D692F2D58FEABA46E7B234E9B63FE9B945E9B846E9B644E9BA4EEEC874F3DCA9 +F2DAA3F3DCA7F3DEADF4E0B0F5E1B4F3DFB2F4E0B3F3DFB3F4E0B5F4E1B9F5E2BAF4E0B7 +EFD49AE6BC62E7C26FEED59EECCD8AEED7A5F2E7CEF8F9FAF9FBFFF9FBFEFAFBFDFAFAFD +FAFBFEFBFCFFFBFCFEFCFEFFFBFBFAF9F5EFF9F5EEF2E6CDEEDDBAEFDDB9F0DFBFEFE2C2 +F1E4C7F2E6D0F4EBDAFBFAF7FEFEFFFEFEFEFFFFFFFEFEFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFF +FDFCF6F9F7E2F6E97EF5E771F6E875F6E875F6E774F6E875F6E875F6E875F6E875F6E875 +F6E875F6E875F6E774F6E877F6E97AF6EB86F7EC8FF7EC91F7ED95F8ED95F7EE96F8ED96 +F7ED95F7ED95F7ED92F7EB89F7EB84F7EA85F6EB89F6EB8CF6EB8AF7EB89F6EA86F6EA82 +F7EA82F7EC91F9F0A6F9F2ABFAF3AFFAF3B0FBF5C2FBF6CCFBF6D1FAF6D2FAF5D1F9F4CE +F8F3CDEEE9C8DFDAC0D9D4BDBDB8B2938FA07975964F4B85433F80221F751B18731A1673 +131071120F710F0C700D0A6F0C096F0B086E0B086F0B086E0A076E0A076E0A076E09066E +0A066D0C066B16066319056018066118066119056010066709066E09066E09066E09066E +09066E0A076E0A076E0A076E0B086E0B086E0B086E0B086E0C096F0F0C70100D70130F71 +1411721B18751C197628257B474488534F8D8985A5B5B0B8C1BCBDDFDACAE5E0CDF0EBD0 +F8F2CEF7ECB1F6E999F5E891F5E580F4E474F4E36EF5E477F6E57CF7E684F6E686F7E788 +F9EFB3FBF3C6FAF2C3FAF2C2FBF2C2FBF2C5FBF3C5FBF3C6FBF3C7FAF3C9FBF4CFFCF4D0 +FBF5D4FCF6D6FCF5D6FCF6D6FCF5D6FCF5D6FCF5D6FBF5D4FCF5D1FBF4CEFAF2C8FBF2C5 +FAF1C2F8E691F6E17CF7E383F7E385F6E284F5E17CF4E077F5E077F6E27DF6E48EF8EAAE +FAEFC2FCF5D8FBF4D7FCF5D9FCF5DAFCF5D9FCF5DAFCF5DBFCF5DBFBF5DAFCF4D9FBF3D3 +FBF2CEFAF2CCFBF1C8FBF0C8FAF0C9FBF1CCFAEFC2F7E499F6E394F7E294F7E295F7E395 +F7E292F7E08FF7E193F6E297F9EAB8FCF5DDFBF4DBFCF5DFFCF6E1FCF6E1FCF5E2FCF5E2 +FCF5DFFCF4DCFBF1D4FAEDC6F9EBC1F8E5B1F8E3A9F6DC94EFBD39EEB92EEDBA31EDBA2F +EEBA32EFBC36EEBC37EFBE43F0C555F5D78BF7E1ABF6DFA5F7E0A8F7E1AAF7E2AEF8E5B6 +F8E5B7F8E5B7F8E5B6F8E4B6F7E4B6F8E5B7F7E4B4F6E2B2F6E0ACF4DBA0F3D999F2D693 +F3D795EBBE52E6AF30E8B43CE8B642E8B746E9B746E8B544EBBF5EF2DAA1F3DBA6F3DCA8 +F4DFAFF4E0B1F4E1B4F3E0B3F4E0B3F3E0B4F4E0B6F4E1B8F5E2BAF4E1B8F1DBAAE8C26F +E0B14AE5BC64EBCC8AECD095ECD094F0DDB5F3E8D1F5EEE1F6F3ECF7F4EFF7F4EDF7F3EB +F7F1E5F2E6CCEFDEBBEAD29FEAD19DEAD2A1EAD6AAEBD7ABEBD6ACEDDAB2EDDAB4EDDAB6 +ECD9B3EFE0C2FAF9F5FCFCFBFEFEFEFEFEFEFFFFFFFEFEFEFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFDFCF4F9F5D8 +F6E97DF5E772F6E875F6E774F5E875F6E875F6E875F6E875F6E875F6E874F6E875F6E875 +F6E875F6E774F5E774F6E97DF7EC8AF6EB8CF7EC92F8ED94F7EE96F8ED97F8EE97F8EE97 +F8EE97F8ED90F6EC89F6EB86F7EB89F7EC8DF6EC8EF6EC8EF6EB8BF7EA85F7EA8BF9F1AC +FAF4B8F9F2AFF7F0ACF6EFACF9F3BDFBF5C8FEFAD0FFFED4FEFFD4FEFDD1FFFFD0C8C4B7 +6B6793504B890C0A6E00006900006A00006B01006B03006C04016C05026C06046D07046D +08056D08056E09066E09066E09076E0A076F0A086F0A086F0B096F0B086F0B086E0D076C +16066319056018066118066119056011066809076F0A076F0A086F0A086F0B086F0B086F +0B086F0A086F0A076F0A076F09076E09066E09066E08056D08056D07046D06036D04016C +03006B02006B00006A00006A0000690000671311726A66988F8AA7D6D3C6FFFFDFFEF9BD +FEF2A0FEF19AF9E985F5E277F2E070F2E176F4E47CF6E686F7E78AF6E686F8EEA9FAF3C2 +FAF2C6FAF3C5FBF3C4FBF3C5FBF3C6FBF2C6FBF3C8FAF4CAFBF4CFFCF4D0FBF5D3FCF6D5 +FCF5D5FCF6D5FCF5D5FCF5D6FCF5D6FBF4D5FCF5D2FBF4CFFAF2CAFAF1C6FBF2C5F8E899 +F6E27DF7E382F7E382F6E283F5E17EF4E079F4E077F5E07BF6E38CF8E9A6F9ECB7FCF4D7 +FBF4D6FCF4D8FCF4D9FCF4D8FCF4D8FCF4D9FCF4D9FCF4DAFCF5D9FCF3D3FBF1CDFAF1CB +FBF0C9FBF1C9FAF0C9FBF1CAFAEFC4F7E59DF6E395F7E294F7E295F7E395F7E294F7E090 +F7E191F6E294F8E8AFFCF4DAFBF3DAFCF5DEFBF6E0FCF5E1FDF5E2FCF6E1FDF6E2FDF6E4 +FCF6E3FBF1D4FAEEC9F9E6B1F8E3A8F7DF9CF0C144EEBB31EDBA31EFBB33EFBA32EFBC37 +EEBC38EEBE41EEBE43F3D27EF7E2ACF6E0A6F7E1A9F8E2ACF8E3B0F8E5B7F8E6B9F7E6B9 +F8E6B7F8E5B7F7E4B6F8E5B7F7E4B5F6E2B3F6E0ADF5DCA1F4D99CF2D693F3D897ECC15C +E7AE2DE8B338E8B541E8B646E8B748E6B340E8BA4EF1D69AF3DCA9F3DDA9F5DEB0F5DFB2 +F4E1B4F3E1B3F3E0B4F4E0B5F3E1B6F4E1B8F5E2BBF3E1B9F2E0B6EAC77DDDA734DAA126 +E9C67CECD095EBCC8DEACB8AEACA8AEBD29BEEDEB9F0E1C1F0DFBDEFDCB7EBD3A1E8CD94 +E9CC94E7CC93E7CC93E9CF9BEAD5A7EBD7AAE6CD98EAD5A9ECDAB3EBD9B3EAD8B0EBD8B2 +F5EFE2FBF9F6FEFEFFFDFDFDFEFEFEFFFFFFFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFDFCF0F9F4CCF6E97EF5E772 +F5E874F5E874F6E774F6E875F6E875F6E875F6E875F6E875F6E874F6E874F6E875F6E875 +F5E774F6E978F6EA81F6EB85F7EC8FF7ED91F7EE96F7ED97F8EE96F7ED98F7ED98F7ED94 +F7ED8EF7EC8BF6EB8AF6EB8DF7EC8FF7EC91F7EB8BF7ED93F9F0A8FAF3B3F9F3B5FBF4AF +FFFBAFFFFFAFFEFCBBFEF8C6F0EBC6C0BCB6A5A1AC6C6895494687312D7D1D1A75191674 +0E0A6F0A076E0B086E0A076E0A076E0A076E09066E09066E09066E09066E09066E08056D +08046D06026B05016B030069010068000067000065000066010066040066140461190660 +1805611805611906600C0265000068010068010067010067000066000065000066010067 +02006903006905016B06036C08056D09066E09066E09066E09066E09066E09066E0A076E +0A076E0A076E0B086F0B086E0F0C701E1A77221F793733814D4A8C756F92BDB294DACD96 +ECDE88FAE97CFEEE74FEEE78FDEB7EF7E787F6E68AF6E687F8EBA0F9F0B8FBF3C8FAF2C5 +FBF2C5FBF3C5FBF3C5FBF2C7FBF3C9FAF3CAFBF4CFFCF5D0FBF5D3FCF5D5FCF6D6FCF6D6 +FCF5D6FCF5D6FCF5D6FBF4D5FCF5D3FBF4D1FBF3CBFAF1C7FBF2C8F8E9A1F6E17FF7E382 +F6E282F7E383F6E280F5E17BF4E078F5E07BF6E38CF7E7A2F9EBB0FCF4D4FBF5D7FCF4D7 +FCF5D8FCF5D8FCF5D8FCF5D9FCF4DAFBF5DAFCF4D8FBF3D2FAF2CDFBF1CAFBF0C7FBF0C7 +FAF1C8FBF1CAFAF0C6F7E59EF7E293F6E292F7E395F7E395F7E293F7E090F7E191F6E192 +F7E7A9FBF3D8FCF4DBFBF5DEFBF6E0FCF5E1FDF6E2FCF5E1FCF5E2FDF5E1FCF5E2FBF4DD +FBF3D9FAECC4F8E4ACF7E0A1EFC043EDB82BEEB930EFBB35EEBB35EFBC39EEBD3BEFBF43 +EEBD40F2CF73F7E2ACF6E0A7F7E1A9F7E2ACF7E3B0F7E5B7F7E6BAF8E5B9F7E5B7F7E4B7 +F7E5B7F8E5B8F7E5B7F7E4B6F6E1B0F5DDA4F4DA9FF3D796F3D99BEDC466E7B031E8B43A +E8B43FE9B646E8B747E7B544E8B749F0D391F4DDAAF3DCA9F4DFB1F4E0B2F4E0B4F4E0B4 +F4E0B4F4E1B6F3E1B6F4E1B9F5E2BCF4E2BAF4E2BCEBCC87DDA939D89E21E1B455ECD196 +ECCE92EACE91EBCF93EBD199ECD39EEBD29EEBD29EEBD29EEAD19DEAD19DE9D09CE8CE98 +E8CE98E9D09EEAD4A6EBD7ADE6CE9ADFBF7CE6CF9DEEDEBDECDBB6EBD8B3EEDFC1FAF6EE +FFFFFFFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFDFBEBFAF3B7F6E97BF5E771F6E97CF6E97C +F5E874F6E875F6E775F6E874F6E875F6E874F6E875F6E775F6E774F6E875F6E875F5E774 +F5E874F6E978F6EB86F7EB8BF8ED93F7EE96F8ED97F8EE9AF7EE9AF8EE99F8EE97F8ED94 +F7EC8FF7EB8FF7EC91F8ED92F8ED96F8F1B3F8F2BDF9F2B6FAF4B4F3EDAFCBC5A0B7B19B +837E90625E8B322F7C07046D01006A00006A00006900006A04016C05026C08056D09066E +09066E09066E0A076E0A086F0A086F0A076F09066E09066E08056D0B086F0D0B71141577 +191A7B2429842A32892F378D3D4796434E9B48529D49509922156D16025E190661190661 +16025E41428D6174B2596BAC5061A74B5BA343519E3945953641932E368C252B85222682 +1719791313760C0A7008056D08056D09066E09076E0A086F0A086F0A076F0A076E09066E +09066E09066E08056D04016B02006B00006A00006900006B09066E110E703D3774645D77 +8B8073C8BA79DACA7DF2E286F7E78BF4E489F5E58FF7EAA1FBF3C8FAF3C6FAF3C6FBF2C6 +FBF3C6FBF2C7FBF3CAFAF3CBFBF4CFFCF5D0FBF5D3FCF5D5FCF6D6FCF5D7FCF6D7FCF5D6 +FCF4D6FCF4D5FBF5D4FCF4D3FBF3CDFAF2C8FBF3CBF9EDB0F7E58DF7E383F6E282F7E384 +F6E282F5E17EF4E17BF5E07DF6E38CF7E69EF8E9A7FBF3CEFCF5D8FBF4D6FCF5D7FCF5D6 +FCF5D6FCF5D7FCF4D8FBF5D8FCF4D7FBF3D2FAF2CDFBF1C9FBF0C5FBEFC5FAF0C6FBF1C8 +FAF0C7F8E8ABF7E295F6E08EF7E293F7E294F7E191F7E08DF7E08FF6E08FF7E49EFBF1D0 +FCF5DDFBF5DCFCF6DFFBF5E0FCF6E1FDF6E2FCF6E1FDF5E1FCF6E2FBF5E1FCF4DFFCF2D6 +FAEFC8F9EBBFF2CE6BEFC143EEB92EEFBC38EFBC39EFBD39EFBD3BEFBF43EEBC3FF1C75E +F6E0A6F7E0A7F7E2ABF7E3AEF7E3B2F8E5B8F8E6BAF8E6BBF8E6BBF8E5B9F7E5BAF8E6BB +F8E5BAF8E5BAF6E2B4F5DEA9F5DCA5F3D99CF4DBA0EFCB79E8B338E8B33BE7B542E8B646 +E7B647E6B543E6B23DEDCA79F4DEADF3DDAAF3DFB1F4E0B3F4E0B4F4E0B4F4E1B6F4E1B7 +F3E0B7F4E2BBF5E3BDF4E2BCF4E5C1EED399DEAA3BD99F23D89F23E6C276EBCF95EACE92 +EBCF95EBD199EBD19AEAD099EAD099E9D099E9D09CEAD19EE9D09DE8CF9AE8CF99E8D09F +E9D4A6EBD6ADEAD5AADCB972DDBB75E6CF9FEAD7AFEBD9B4E7D0A3F0E5CCFDFEFEFDFDFD +FDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFEFEFFFFFFFDFBEBF9F3B8F6E87AF5E770F6EA83F6EA81F5E875F5E875 +F6E875F6E875F6E875F6E874F6E775F6E875F6E774F6E774F6E875F6E875F6E775F5E874 +F6EA80F7EB87F8ED92F7EE97F7ED97F7EE9AF8EF9BF7EE9CF8ED99F7EE97F8EC92F8EC91 +F6EB91F4E98CF6EB9FFEFAC1FFFFBFFDFAB9FDF6B5DFDAAB706C8837337A08076D000068 +03006B09066E0A076E0A076E0B086E0A076E0A076E0A076E0A086F0B09700A086F07046D +06026B02006800006701006804006A06026B0B086F1415761C1F7D313B8E3D49985B71B2 +6B86BE7997C999BADEA2C5E4A3C2E298B0D433297913005B1A076219076113005C717DB2 +C0E9FCB3DBF2A7D1EDA0CBEA98C1E48FB5DD8AAFD97491C65E75B45468AC3945952E378C +181A7A0C0A6F09066E05016B04006A01006701006702006906036C08056D0B096F0B086F +0A086F0A076E0A076E0A076E0B086E0A076E09066D07046D02006D00006C09076D696174 +9D9179E3D485FBEA8BFEEF8BFCED8CF9EB99F8F0C5F9F2C6FAF3C7FBF2C7FAF3C6FBF2C7 +FBF3CAFAF3CBFBF4CFFCF5D0FBF5D3FCF5D5FCF5D6FCF6D7FCF6D7FCF5D6FCF4D6FCF5D5 +FCF4D5FCF5D4FBF3CEFAF2C9FBF3CAF9EEB4F7E696F7E283F6E382F7E385F6E282F5E17F +F4E17DF5E17EF6E38CF7E69EF8E9A5FBF2CCFCF5DAFBF4D6FCF5D7FCF5D6FCF5D5FCF5D6 +FCF4D7FBF5D7FCF4D6FBF3D2FAF2CDFBF1C9FAF0C4FAEFC5FBF0C6FBF1C8FAF0C7F9EAB1 +F7E397F6E08CF7E192F7E092F7E190F7E08DF7DF8EF6DF8FF7E29BFBF0CCFCF4DCFBF5DC +FCF6DFFBF6E0FCF5E1FDF6E2FDF6E1FDF5E1FCF6E2FBF5E0FCF4DEFBF2D4FBF0CCFAEFCB +F5DD94F2CF69EEBB33EEB932EEBB35EEBD39EFBD3BEFBF43EEBD40F0C558F6DEA1F6E0A7 +F7E2ACF8E2B0F7E3B3F8E6B9F9E7BBF8E7BCF9E8BDF8E6BAF7E6BBF8E6BCF8E6BBF7E6BB +F6E3B5F5DFABF5DDA7F3DA9EF3DBA1F0CE7FE9B33AE8B23BE9B646E8B747E7B646E7B442 +E6B13AECC56EF3DEAEF3DDACF3DFB2F4E0B3F4E0B4F3E0B4F3E1B6F4E1B7F3E0B6F4E2BB +F5E3BEF3E2BCF4E4C0EED59DDDA938D99F23D79A1BE1B65DEACD93EACE93EACF95ECD19A +EBD29DEBD19DEAD29DE9D29DE9D19EEAD19EE9D09EE9D09BE9CF9AE8D1A0EAD4A7EBD6AC +EBD7AFE0C384DBB86FDDBE7FE6CFA2ECDAB8E7D1A5EAD8B6FCFCFAFDFEFDFEFEFEFDFDFD +FDFDFEFDFDFDFEFEFEFFFFFFFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFEFDFFFFFFFCFAE5F7EEA0F6E878F5E774F7EB89F6EB8AF6EA81F6E877F5E774F6E774 +F6E875F6E874F6E775F6E876F6E876F6E875F6E774F6E875F6E875F6E774F6E978F6E97D +F7EC8CF8ED95F8ED97F7EE9CF8EF9DF8EF9FF8EF9FF8EF9DF7ED96F6EB92F9EF93FEFAA2 +FFFEB9E0DBB7C4BEA9858093524E832925770D0A6F0F0C6F0D0A6F0C096F0A076E09066E +08056D09066E09066E0A076E08056D07036C0200680000650100670D0B71141476262B84 +39439446559F5D73B2647DB97D9ECE8AAFD891B8DE9BC5E69BC5E69CC5E79CC6E79DC6E7 +A4CAE8AACFEBA5C5E495ADD332297913005B1A076219076114005C6A73ACB4D9F2AACEEA +A5CBEAA1C9E99DC7E89BC6E79BC6E79CC6E79CC5E79BC5E79CC5E69DC5E692B6DD85A4D2 +7B99CA637AB75C70B1424C9A2B30882427821211750B097000006600006602006908056D +0A076E09066E09066E09066E09066E09066E0A076E0C096E0D0A6E100D6E0E0B6E342E72 +564F7690867FDCCD86EEDF8CFFFCC1FDF8CDFBF4C8F9F2C7FAF2C7FBF3C8FAF3C9FBF3CB +FAF4CEFBF4CFFCF5D3FBF5D5FCF6D6FCF5D6FCF5D6FCF5D5FCF4D6FCF4D5FBF4D6FCF5D5 +FBF4D0FAF2CBFBF2CAFAEEB9F8E8A0F6E383F6E283F7E387F6E282F5E17FF4E07BF5E07C +F6E38CF7E69EF8E8A2FBF0C6FCF4D8FBF4D7FCF5D7FCF5D6FCF5D6FCF5D6FCF4D7FBF5D7 +FCF4D7FBF3D2FAF2CDFBF1C9FBF0C3FBF0C3FAF0C6FBF0C7FAF0C7F9ECB8F7E49BF6E08C +F7E193F7E192F7E08FF6E08BF6DE8BF6DE8CF6E093F9EDC3FCF3D9FBF4DAFCF4DEFBF5DF +FCF6E1FCF5E1FCF5E2FCF5E2FCF6E1FBF5DFFCF4DEFBF2D5FBEFCAFAEEC7F7E5A7F6DE93 +F4D376F2CB5EF0C34AEEB930EDB932EEBC3CEFBE43EFC250F5D893F6DFA5F7E3AFF7E3B0 +F7E4B5F8E7BCF9E7BDF8E8BFF7E8BEF8E7BDF7E6BDF7E6BCF8E6BCF7E5BBF7E3B6F6E0AC +F5DEA9F4DBA1F4DCA4F1D289E8B743E8B540E9B848E7B747E7B747E7B646E6B440EAC061 +F3DBA9F3DEACF4E0B2F4E0B3F4E1B5F4E1B5F4E0B6F4E0B7F3E0B7F4E2BAF4E2BDF4E2BC +F4E4BEF0D9A7DCA93BD79C1DD69B1EDAA73AE1B962EBCF95EBD097EBD29BEAD29CEBD29C +EBD29EEAD19EEAD29FEAD2A0E9D19FE8D09CE8D09CE9D1A0EAD4A8EBD6ACECD9B3E4CA95 +DEBD7BD7B369DDBD7EEAD6B0E8D5AEE7D3AAF7F4EEFCFBFAFEFEFEFEFDFDFEFEFEFEFEFE +FEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFDFFFFFF +FAF7D8F5E983F6E877F5E87BF7EC8DF8ED94F7EC90F6EA84F6E87CF6E877F5E774F6E875 +F6E774F6E875F6E875F6E875F6E774F6E875F6E874F6E875F6E774F5E774F6EA7FF7EC8F +F7ED94F7EE9CF8EF9DF9F0A3F7EEA4F5ECA2F7ED9CFFF596E2DA9DADA7A47E7A95292679 +08056D02016A00006B04016C07046D08056D08056D09066D09066E0A076F0B086F0A076F +09066E05016B0C0A70161678373F915869AB677BB686A1CE8FACD5A4C7E6B0D8F1B1DAF3 +AED8F2ABD6F1A5D2EEA3D0EDA1CEECA1CDECA2CDECA2CDEBA1CDEBA1CCEBA6CEEBACD3EE +A7C9E797B0D5332A7913005B1A076219076114005C6C75ADB8DDF4AED2ECAAD0EDA6CEEC +A1CCEB9ECAEA9ECBEAA1CCEBA1CDEBA2CDEBA5CFECA6CFEDA7D1EEA9D3EFAAD4F0ADD8F2 +AEDAF3B1D9F2ACCEEBA6C5E494ADD58AA1CD6372B047519C343A8E0E0B7103006A07036C +09076E0B086F0A086F09076E09066E08056D08056D07046D07046D03016D00006C00006C +272271403A72898193DFD8C0F2EDC6FDF6C9F8EFC6F8F0C7FBF3C9FBF3CAFAF3CDFBF4CE +FCF5D2FBF6D5FCF5D6FCF5D6FCF5D5FCF4D5FCF4D5FCF5D6FBF5D6FCF5D5FBF4D1FAF2CD +FBF2CAFAF0BDF8ECAEF5E383F7E283F7E388F6E284F6E281F4E07AF5DF7AF6E38AF7E79F +F8E7A2FAEEBDFBF4D3FBF4D9FCF4D8FCF5D8FCF5D7FCF5D6FCF4D7FBF5D7FCF4D6FBF3D2 +FAF2CDFBF1CAFAEFC2FAEFC2FBEFC5FAEFC6FAF0C7FAEFC3F8E6A3F6E08DF7E194F6E193 +F7E08DF6DE8AF5DD87F5DC88F6DD8BF9EAB6FBF2D1FBF3D8FBF3DCFCF4DDFBF5E0FBF6E0 +FBF6E1FBF6E1FBF5E1FCF4DEFBF3DCFCF2D5FBF0CCFBEEC9F8E8B2F6E09BF6DA8BF6DE95 +F5D986F2CD65F0C553EDBA3AEEBD40EFBF49F3D07AF5DC9DF8E4B3F7E3B1F8E5B7F9E8BF +F9E8C1F8E9C3F8E9C2F8E8C1F8E7C0F8E7BFF8E6BDF8E6BCF6E4B7F5E0AEF5DFABF4DCA4 +F4DDA6F2D796E9BB50E8B746E9B94BE8B84BE7B84AE6B74BE6B648E8BC58F1D79DF3DDAC +F5E1B7F5E2B7F4E1B7F3E0B5F4E0B6F4E0B6F4E0B7F3E1BAF3E1BBF3E2BCF4E1BCF2DEB3 +DFB04BD79A1BD79D23D49B20D59F28E7C886ECD4A0EBD19BEAD29DEBD39EEAD29FEBD29F +EAD2A0EAD29FE9D29FE8D09EE8D09EE9D1A1EAD4A8EBD6ACECD9B4EAD5ADE0C38AD7B369 +D8B369E0C38BE9D6B0E6D1A6EDE1C8F7F3EBFEFEFFFDFCFDFDFDFDFEFEFEFEFEFDFDFDFD +FDFDFDFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFDFFFFFFFAF6D3F5E980 +F6E877F5E97BF7EC8DF8ED96F8ED93F7EB8AF6EA82F6E97AF5E774F6E875F6E875F6E774 +F6E875F6E875F6E774F6E875F6E875F6E774F5E875F6E773F5E97AF6EB8CF7EC93F7EE9B +F8EF9DF8EFA3FEF4A6FFFDA7F6EF9EE4DA95A6A096504C881E1B7400006A0A076E0B086E +0B086E09066E09066E09066E09066E09066E08056D03006900006602016806026C131376 +32388D434E9A7288BF9FC1E1AACFEAB6DDF4B5DCF3B0D6EFABCFEBA8CDEAA4CBEAA3CBEA +A0CBEA9FCBEA9ECAEA9FCBEAA0CBEAA0CBEAA0CBEAA0CBEAA4CDEBA9D1EEA6C8E797AFD5 +332A7913005B1A076219076114005C6C75ADB8DDF4AED2EDAAD1EDA6CEEBA1CCEA9ECAEA +9ECBEAA0CBEAA0CBEAA1CCEAA4CDEBA4CDEBA3CDEBA3CCEAA3CCEAA4CCEAA4CCEAA8CEEB +AFD4EEB6D9F1C0E2F5C1E3F6ACC9E68CA3CF7183BB363B8F20217F12117404006B000067 +01006805016B08056D09066E09066E09066E09066E0A076E0B086E0C086E04036D00006B +2A25789691A3BEB8B3FBF4C8FFFBCBFEFBCBFAF2C7FAF2C9FAF4CDFBF4CFFCF5D2FBF5D5 +FCF5D5FCF5D5FCF5D5FCF5D6FCF5D6FCF5D6FBF5D6FCF5D5FBF3D1FAF3CEFBF2CAFAF0BE +F8EDB2F5E283F7E281F6E288F7E387F6E285F4E07CF4E07BF6E38AF7E79FF7E7A2F9EEBA +FBF3D0FBF4D9FBF4D8FCF5D8FCF5D7FCF5D7FCF4D7FBF5D7FCF4D6FBF3D2FAF2CDFBF1C9 +FAEEC2FAEEC2FBEFC4FAF0C5FAF0C7FAEFC6F8E7A7F6E08EF7E193F6E192F7E08DF6DE8A +F5DD87F4DD86F5DD89F8E9B2FBF1CFFBF3D8FCF4DAFBF4DDFCF5DFFCF5DFFCF5E0FCF5E0 +FCF5E0FBF4DDFCF3DCFBF2D5FBF0CCFAEFC9F8E8B6F6E09BF5D883F5DB8FF6DC8EF4D987 +F3D274EEC048EEBC3DEFBD44F2CB6EF5DB98F8E4B4F8E3B1F8E5B7F9E8C0F8E9C2F9E9C4 +F9EAC4F9E9C3F9E8C1F8E8C1F7E7BFF8E7BCF7E4B8F6E0AFF5DFACF4DCA5F4DDA6F2D899 +EABC52E8B746E9B94DE9B94DE8B84CE7B84DE6B74CE8BC58F1D596F3DDABF4E2BAF4E2B9 +F4E2B9F4E0B7F3E1B7F3E1B6F3E1B7F4E1BAF4E1BCF3E2BBF3E0BAF2DFB5E0B453D79B1E +D79E24D49B1FD49B1FE5C37AEDD6A4EBD19BEAD29EEBD3A0EAD3A0EBD3A0EAD29FE9D19E +E9D19EE8D09EE8D09EE9D1A2E9D4A8EAD6ACECD9B4EBD9B4E1C68FD8B369D8B36BDBBB7B +E7D3A9E6D0A5E9D8B5F6F1E5FEFFFFFCFCFCFDFDFEFDFDFDFDFDFEFEFEFEFEFEFEFDFDFD +FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFDFFFFFFFAF5CAF6E877F6E877F5E97B +F7EC8DF8EE99F8EE97F7ED91F7EC8EF6EB86F5E877F6E775F6E875F6E875F6E775F6E774 +F6E875F6E875F6E875F6E874F5E875F6E774F6E875F6EA80F6EB89F4EA96F5EB99F8EFA1 +DDD59EBAB29658537F2522760A086E04016C0A076E0B086E09066E09066E08056D09066E +0A086F0B086F09066E07036C0A086F262D87323E92576CAF6F88BF8DABD5AFD3EDB3D8F0 +B2D7F0AED2EDADD2ECACD1ECADD1ECAED2EDADD2EDABD1EDA8CFECA6CFECA2CDEBA0CCEA +A0CCEBA1CCEBA0CBEAA0CBEAA1CCEBA0CBEAA3CCEBA7D0EDA4C7E695AFD432297913005B +1A076219076113005C6C75ADB9DEF5AFD3EDACD1EDA8CFECA4CEEBA0CCEBA0CCEBA0CBEB +A2CCEAA3CDEBA5CEECA4CDEBA3CDEBA4CDEBA5CDEBA5CEECA6CFECAAD0ECAFD2EDB1D4ED +B5D6EEB6D6EEB9D7EFBADAF0BDDEF3B7D7EEAECCE890A8D2788CC15D6BAC2D31881B1C7B +0A086F07046C0A076F0A086F09076E09066E08056D09066E0A076E0C096E09066E00006A +0D0A6F504C89726D95C8C1B5FDF5C9FCF4CAF7F0CBF8F1CDFCF5D2FCF4D4FBF5D5FCF5D6 +FCF5D6FCF6D6FCF6D7FCF5D7FBF6D8FCF5D7FBF4D3FAF4D0FBF2CBFAF1C2F9EFBBF6E489 +F5E17DF6E286F7E389F6E288F6E184F5E182F7E38AF6E69CF7E7A0F9EDB4FAF1C6FCF4D9 +FBF4D9FCF5D9FCF5D9FCF4D8FCF5D8FBF4D7FCF4D7FBF3D3FAF2CDFBF1CAFBEFC4FBEFC3 +FAEFC4FBF0C5FAF0C7FBF0C9F8E8ACF6E08EF7E191F7E191F7DF8DF6DD8BF5DC85F4DC80 +F5DB84F8E6A9F9EEC6FCF3D6FBF3D8FCF4DBFCF4DCFCF4DDFCF4DDFCF5DEFCF4DEFBF4DC +FCF3DBFBF1D4FAF0CCFAEEC8F9EBBEF7E3A3F4D77DF4DA89F5DA8BF5DA8CF5DB8DF4D785 +F3D076F1CA65EFC55AF4D68BF7E4B4F7E3B0F8E5B7F9E8C1F8E9C3F8EAC6F8EAC7F8EAC7 +F8E9C4F8E9C4F8E8C1F7E7BEF7E5BAF6E1B0F5E0ADF4DDA7F4DDA7F3DA9FEABE5AE8B749 +E9B94FE8B94FE8BA50E8BA52E8BA52E8BC59EECD84F3DCA9F5E5C1F5E4BEF5E4BFF5E2BC +F4E2BBF4E2BAF4E2BBF3E2BCF4E2BDF3E1BBF2DFB6F2DFB6E2B85ED59B1FD59D24D49B22 +D3981CDEB356E9CC91EAD19AEAD29FEBD3A1EBD2A1EAD2A1E9D09DE8D09DE8D09EE8CF9D +E8D09EE8D2A2E9D4A9EAD6ADEBD9B3EDDDBBE5CC9AD7B36AD7B36CD4B067D7B670E0C692 +DFC592EDE1C8FDFEFFFCFBFCFCFCFDFCFCFEFCFCFDFDFDFDFDFDFEFDFDFEFEFEFDFDFDFD +FDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFEFEFEFEFEFEFEFEFEFEFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFEFEFEFEFEFDFFFFFFFAF5C8F6E770F6E877F5E87AF7EC8DF8EE99 +F7EE97F8ED93F8ED91F7EC8CF5E97BF6E776F6E875F6E875F6E874F6E875F6E875F6E875 +F6E875F5E875F6E774F5E875F5E774F2E678F5E983FDF695FFFA9AEAE19FA0999158537F +00006A04016C09066E0A076E09066E08066E09066E09076E0A086F09066E030069000066 +06036B0B09701C207E566FB16E90C69CC6E8B0DCF4AED6F0AFD3EDAED2EDADD2EDAED3ED +AED3EDAED3EDAFD4EEB0D3EDAED3EEACD2EDA8D0ECA7CFECA3CCEBA0CBEAA0CBEBA1CBEA +A1CCEBA1CCEBA1CCEBA0CBEAA2CCEBA7CFEDA3C6E693AED432297913005B1A0762190761 +13005C6C75ADB8DEF4AFD2EDADD2EDA9D0ECA5CEEBA1CCEAA1CBEBA0CBEBA2CCEAA3CDEB +A5CEECA5CEECA4CDEBA4CDEBA5CEECA5CFEBA6CFECABD1EDAFD3EDB2D5EEB7D8EFB8D8F0 +B9D8EFB9D8EFB8D7EFB8D8F0B9D9F1BDDFF4C5E9F9B1CFEA6B7BB647509C1C1D7C0A076F +03016902006806016B09076E0A086F09066E08056D08056D09066E0B086E09056E000068 +05046A726C95E8E0C2F6EFC8FFFFD1FEFBD1FAF2D0FAF3D4FBF5D5FCF6D6FBF6D7FCF5D7 +FCF5D8FCF6D8FBF5D9FCF6D8FBF4D3FBF3D1FBF2CCFAF1C3F9EFBFF6E58DF4E07BF6E284 +F7E289F6E388F7E287F7E286F7E48BF6E59AF7E69FF9ECB1FAEFC1FBF4D9FCF5DAFCF4DA +FCF5D9FCF4D7FCF5D7FCF3D7FCF3D7FCF3D3FBF2CEFAF1CBFAF0C5FAEFC4FBEFC4FBF0C5 +FAEFC7FBF1CBF9E8AEF6DF8EF7E191F7E192F7DF8EF6DD8CF5DC84F4DA7EF5DB82F8E5A5 +F9EDC1FBF2D6FCF2D8FBF3DAFCF3DBFCF3DBFCF4DCFCF5DCFCF4DDFBF3DBFCF3DAFBF1D4 +FBF0CBFAEEC7F9EBC1F7E4A7F5D77DF5D988F4DA8BF4DA8CF4D98AF5DB90F5DC96F3D684 +EFC761F3D589F7E3B0F6E2B0F7E5B7F9E9C1F8EAC4F8EBC7F9EBC8F9EAC8F8EAC6F9EAC6 +F8E8C2F7E8C0F6E5BAF5E1B0F5E0ADF4DDA7F4DDA6F3DAA0EBBF5DE8B74AE9B94EE9B950 +E9BA51E9BB53E8BA54E9BD5AECCA7EF2DBA8F6E6C4F6E5C0F5E5C1F5E4BEF5E3BDF5E3BD +F4E3BDF3E3BDF3E3BEF3E1BBF2DFB5F2E0B7E2B960D49A1DD59D24D49B23D2981CDBAB46 +E6C37EEAD19AEAD29FEBD3A1EBD2A1EAD1A0E8D09CE9D09DE8D09EE7CF9EE8D09EE8D1A2 +E9D4AAEAD6ADEBD9B4EEDCBCE6CE9FD7B46CD6B26BD3AD62D1A857DCBF85DEC38EE8D7B4 +FCFDFEFBFBFBFCFCFDFCFCFDFDFDFEFCFCFEFCFCFDFDFDFDFEFEFDFEFEFEFEFEFEFEFEFE +FDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFEFEFEFEFEFEFEFEFE +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFFFEFDFEFFFFFAF4CAF5E666F6E876F5E879F7EC8EF8EE99F7ED96F7ED96 +F8EE94F7ED90F6EB84F5EA7DF5E875F6E774F5E875F6E774F6E875F6E875F5E775F5E875 +F5E774F4E775F4E774FFF274F8EC79C9BF86A39B8638347806036D0B086E0C096E0A076E +09066E08056D09066E09076E0A076F06036C01006706036B252B86333F925A74B47497CA +89B4DD97C7EA93C3E797C5E79CC7E8A4CCEAAED2EDAFD4EEAFD3EDAFD4EEAFD4EEAED4EE +AFD4EEAFD3EDB0D4EEAED3EDA9D0ECA7CFEBA3CDEBA1CCEAA1CCEBA0CCEBA0CBEAA0CBEA +A1CCEBA0CBEAA2CCEBA6D0EDA0C5E592AED432297913005B1A076219076113005C6C75AD +B9DDF4B0D2EDAED3EDACD2EDA7CFEBA1CCEAA0CBEAA1CCEBA2CCEAA3CDEBA5CEECA4CDEB +A4CDEBA4CDEBA5CEEBA5CFEBA6CFECAAD0EDADD2EDB0D4EEB6D7F0B8D8EFBAD9EFB9D8EF +B9D9F0B8D8EFB6D7EFB5D5EEB5D5EDB6D5EDB7D7EFBBDBF19FBBDD839DCC5369AD212984 +16197A06026B03006807046D09076E09066E09066E09056E09066E0C096F0D0A6F0A076E +221E774E4988B2ADB0D5CEBEFFFDD5FCF6D5FAF4D4FBF5D6FBF5D7FCF6D8FBF5D9FCF6D8 +FCF5D9FCF6D8FBF4D5FCF4D2FBF3CDFAF1C5FAF1C3F7E693F4DF77F6E183F7E287F7E286 +F6E285F6E183F7E38BF6E598F7E69CF9EAADF9EDBBFCF4D8FBF5DAFCF4D9FCF4D9FCF5D7 +FCF4D6FBF4D7FCF4D7FBF3D4FAF3D0FAF2CDFBF1C7FBF0C5FBEFC5FBF0C5FAEFC7FBF0CD +F9E9B1F6DF8DF7E192F7E193F7DF8FF6DE8DF5DC84F4DB7FF5DA7FF7E29DF9EAB7FBF2D4 +FCF2D6FBF3D8FCF4DAFCF4DAFCF4DBFCF3DBFCF4DAFBF3DAFCF2D8FBF1D2FBEFCBFAEDC7 +FAECC4F8E6ADF4D881F5D988F5DA8BF5DA8CF4D98BF5D88DF5DB92F5DC97F5DA93F7E1A8 +F8E6B8F7E3AFF7E4B4F8E8C0F9E9C4F8EAC7F9EBC9F9EBC9F8EAC8F9E9C6F8E8C4F7E7C1 +F7E5BCF6E0B1F5DFADF4DDA7F4DDA6F3DBA2EAC05EE8B748E9B94EE8B950E8BA51E8BA53 +E8BA54E9BD5BEBC775F1D9A3F7E7C9F6E6C4F6E7C5F6E6C3F5E5C2F4E5C2F4E5C2F4E4C1 +F4E3C0F3E2BDF2E0B9F2E0B9E2BB66D4981AD59C24D49B22D3991ED7A337DDB256E9CE95 +EAD3A0EBD2A0EBD3A1EAD2A1E8D09DE8D09DE8CF9DE8D09EE8D09FE7D1A2E9D4A9EAD6AD +EBD9B4EDDDBBE7D3A8D9B672D7B36DD3AD61CCA24DD1AB5FDEC491DEC390F1EADBFDFFFF +FBFBFBFBFBFCFCFCFDFCFCFDFDFDFEFDFDFEFDFDFEFDFDFDFDFDFDFDFDFEFEFEFEFEFEFE +FDFDFEFDFDFDFDFDFEFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFEFEFEFEFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE +FFFEFEFEFEFFF9F2BBF5E669F6E877F5E97CF7EC91F8EE97F7ED95F7ED95F7EE95F8ED93 +F7EC8CF6EB89F6E97CF5E874F6E775F6E875F6E874F5E775F6E875F5E774F2E474F7E975 +EEE0749C9271645D70100D6E08066C01006C09066E09066E09066E08056D09066E0A086F +0B086F07036C020068252B85495BA36986BF92BDE29DCBEBA0D1EF9DCEED98C8EA95C5E8 +95C5E896C6E998C6E9A2CCEBABD1ECAED3EDB0D4EEAFD3EDAED4EEAED4EEAFD4EEB0D4EE +AFD3EDAFD4EEACD1EDA9CFECA5CEEBA3CDEBA2CCEAA0CCEB9FCAEA9ECAEAA1CCEBA0CBEA +A2CCEBA5D0ED9EC4E590ACD332297913005B1A076219076114005C6C75ADBADEF5B1D3ED +AFD4EDB0D4EEA9D0ECA3CDEBA1CCEBA1CCEAA2CCEAA3CDEBA5CEECA5CEEBA5CEECA4CDEC +A5CEECA6CFECA6CEEBA8D0ECABD1ECAFD3EDB5D6EFB7D8F0B9D8EFB9D8EFB9D8EFB9D9F0 +BAD9EFB9D9F0B9D9F0B9D8F0B9D9F0B8D9F0BBDCF2C0E1F5A4D4F17BB1DC6CA1D3426AB1 +2E499B151A7B06006A08056D09076F09066E09066E08056D09066E09066E04016C010069 +09076D191574807B9FEAE3CDF6F2D5FBF6D8F9F2D6FBF5D8FCF5D8FBF5D8FBF5D8FBF6D8 +FBF5D6FCF3D4FBF3CEFAF1C6FBF1C7F7E89DF4DF77F6E185F7E286F6E185F6E183F5E082 +F6E28AF6E598F7E69DF9E9ABF9EBB4FBF3D5FCF5DBFBF4D9FCF4D9FCF5D9FCF4D8FCF5D8 +FCF4D8FBF3D5FBF3D2FBF2CEFAF1C8FBF0C8FBEFC6FBF0C6FAEFC6FBF1CCF9EBB5F7E08F +F6E093F7E193F7E091F6DE8FF5DC87F4DA80F4DA80F7E197F8E7ACFBF2D3FCF3D6FBF3D8 +FCF3D9FCF3D9FCF4DAFCF4DAFBF3D9FCF3D8FBF2D7FBF1D1FBEFCBFAEDC6FAECC3F8E7B2 +F5D883F4D988F5DA8CF5DA8DF5DA8DF5DA8FF4DA93F6DC97F6DD99F8E4AEFAEFD0FAECCA +F8E9C2F8E7BDF9E8C0F9EAC6F9EAC8F9EAC8F8EAC7F9EAC6F8E8C4F7E7C1F6E5BCF6E1B2 +F5E0AFF4DDA8F3DCA5F4DDA5EBC264E7B749E7B84CE7B94FE7B94FE7B94FE7B951E8BC5B +E9C16AF0D499F6E9CBF6E7C7F6E8C9F5E7C8F5E7C8F5E7C8F5E7C7F5E6C6F5E5C5F4E4C2 +F3E2BDF3E2BDE6C177D69D26D49B24D29A21D29A21D49F2ED6A437E5C786EBD5A5EAD29F +EAD2A1EAD2A1E9D19FE7CF9DE8CF9CE7CF9DE7CF9EE8D1A1E8D4A9E9D6ADEBD9B5ECDCBA +EAD7B0DABA79D7B56FD2AD63CDA552C99E46D1AD66D8BA7DE0CA9DEDE3D0F8F5F2FBFBFD +FAFAFAFCFBFCFCFCFDFCFCFDFCFCFDFDFDFEFCFCFEFCFCFDFDFDFDFDFDFDFDFDFDFDFDFD +FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFEFEFE +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFEFEFEFF +F8F1B4F5E66AF6E877F6EA80F7ED92F8EE97F7ED95F8ED94F7ED94F8ED94F7EC8FF7EC8C +F6EA81F6E875F6E874F5E875F6E875F6E875F4E674F6E875FFF275FAEE75AFA472443E6F +1B186E01006D0B086E0B086E08056D09066D09066E0A076E08056D020069000066181A7A +2B3289596DAF80A3D097C2E59FCEED9AC7E997C5E896C5E795C5E896C6E995C6E896C5E8 +96C5E8A0CBEAABD1ECADD2EDAFD4EEAFD3EDAFD4EEAED4EEAFD4EEAFD4EEAFD3EDB0D4EE +ADD2EDABD0ECA6CEEBA3CDEBA2CCEBA1CCEB9FCBEA9FCBEAA1CCEBA1CBEAA2CCEAA5CFED +9EC4E58FACD332297913005B1A076219076114005C6C75ADBADEF4B1D3EDB0D4EEB0D3EE +AAD0ECA4CEEBA2CCEBA0CBEAA2CCEAA3CDEBA6CEECA6CEEBA6CFECA5CEECA5CEEBA5CEEB +A5CEEBA8CFEBABD1ECAFD3EDB6D7EFB8D8F0BBD9F0BBD9F0BAD9F0B9D8EFB9D9F0B8D9EF +B6D7EFB5D6EFB4D6EEB3D6EEB2D4EEB3D4EE92C2E674B4E26FB6E44E95D13C7ABE21469C +0C13780A097007006908046D09066E09066E09066E09066E09066E0B086F0A076E000069 +2E2B7D948FA9C5BFBFFFFFDDFEFEDCFBF6DAFBF5DAFCF6DAFCF6D9FCF6D9FBF5D7FCF4D3 +FBF3CFFAF1C7FBF1C8F7E9A2F4E07AF7E185F7E286F6E185F5E183F6E082F6E289F6E597 +F7E69EF8E9ABF9EAB3FBF3D4FCF5DBFBF4D9FCF5DAFCF4DAFCF5D9FCF5D9FCF4D8FBF3D5 +FCF3D2FBF2CFFAF1C9FBF0C8FBF0C7FBF0C7FAEFC7FBF1CCF9EBB7F7E190F6E092F7E193 +F6E092F7DF90F6DC88F4DB81F5DA80F6E095F8E6A8FBF2D2FCF3D8FBF4D9FCF3D9FCF3D9 +FCF4D9FCF4DAFBF3D9FCF2D8FBF2D7FAF1D1FBEFCBFAEDC5FAECC3F9E7B4F5D883F4D988 +F5DA8DF5DB8EF5DB8EF5DB90F4DB94F6DC98F6DD98F7E2A9FAF0D2FBF0D3F9EECDF8E9C3 +F9E8C1F8E9C5F8E9C7F9EAC7F8EAC6F9EAC5F8E8C3F7E8C1F7E5BCF6E1B2F5E0B0F4DDA8 +F3DBA5F4DDA6EBC367E7B84BE6B84BE6B94FE6B84EE6B84EE6B84FE8BB5AE8C067EFD395 +F6E9CAF6E7C8F6E8C9F6E8C9F6E8C9F6E8C9F6E8C8F5E7C7F5E6C7F4E5C4F3E3BFF3E3BF +E7C57ED7A02DD49C24D29A21D39A21D49F2DD5A233E3C27CECD6A8EAD2A0EAD2A2EAD2A1 +E9D1A0E7CF9DE8CF9CE7CE9CE6CF9DE7D1A1E8D4A9E9D6ACEBD9B4EBDCB9EAD7B1DBBB7C +D7B56FD2AD62CEA554C99D45C99D49D5B575DEC695E1CCA4F0E9DAFDFFFFFBFCFEFBFBFC +FBFBFCFBFBFCFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFEFEFFFEFEFEFEFEFFFEFEFFFEFEFE +FFFFFFFEFEFEFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFEFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFEFEFEFEFEFFF7EEA0F5E66A +F6E879F7EB89F7ED94F8EE97F7ED96F8EE95F8EE95F7ED95F8EC92F8ED91F7EC8BF6EA7D +F5E978F6E774F5E775F2E474FDEE75EEE0748A81715C55700B0A6D01006D09066E0B076E +09066E08056E09066E0A076F0A076F05016B11107430368C5361A693B2D9A7CDEBAAD4EF +A4D0EC9DCAEA98C6E899C7E999C7E999C6E898C7E996C5E996C6E995C6E994C5E89CC9EA +A7CFECAAD1ECAFD3EEB0D4EDAFD3EEAFD4EEAED4EEAFD4EEB0D3EDAFD3EEAFD3EDADD2ED +A8CFECA4CEECA3CDEBA1CCEAA1CCEBA1CCEBA0CCEAA1CCEBA2CCEAA3CEEC9DC4E58EAAD3 +31297913005B1A076219076114005C6C75ADBADEF4B2D4EDB1D4EEAFD3EDACD2ECA5CEEC +A4CDEBA1CCEAA2CCEAA3CDEBA4CDEBA4CDECA5CEEBA5CEEBA5CEEBA6CFEBA6CFEBA7D0EC +A9D0ECABD1EDAFD3EDB0D4EEB1D4EEAED3EDABD1EDA8D0ECA8CFECA6CFECA4CDEBA4CDEB +A2CCEBA1CCEBA2CCEBA6CEEC88BEE553A0D9499BD8318ED2288ACE2B8CCE297AC4256CB9 +1639930A0D7309066F09066E09086F09066E08056D08056E09066E0B086E07046D000067 +1A18746862959F99AAFCF6D0F9F2D1F8F2D3FBF4D6FBF5D7FCF6D7FCF5D5FBF4D2FAF2CA +FBF2CAF8EBAEF5E286F6E183F7E286F6E285F6E083F5E182F6E287F6E496F7E69DF8E9A9 +F9EAAEFBF1CEFCF5DCFBF4DAFCF5DAFCF5D9FCF4DAFCF5D9FCF4D8FBF3D5FCF3D3FBF3D0 +FAF1CBFBF1CAFBF0C8FBEFC8FAEFC8FBF1CDFAEDBEF7E193F6E092F7E193F6E092F7E092 +F6DE8CF4DC86F5DB84F7DF93F7E4A2FBF1D0FCF3D9FBF3D9FCF4DAFCF4DAFCF3DAFCF4DA +FBF3D9FCF2D8FBF2D7FAF1D1FBEFCBFAEDC5FAECC3F9E9B8F5D987F4D885F5DA8DF5DB91 +F4DA91F4DB91F4DB94F5DC97F5DC97F6E0A3FAEECEFAF0D3FBF1D6FBF1D9FBF0D7F9EDCE +F9EAC7F9E9C6F9E9C5F8E9C5F7E8C2F7E7C0F6E5BBF6E1B2F5E0B0F4DDA8F3DBA4F3DCA7 +ECC56DE8B94FE6B74BE7B84FE7B74DE7B74DE6B74EE7BB5AE8BE63EECE8CF7E8C8F6E8C8 +F6E8C9F6E8C9F6E8CAF5E7C9F5E8CAF5E8CBF6E8CCF5E8CAF4E6C4F4E5C5E9CC8DD9A83F +D39C24D29920D29922D39D2DD39E2EDCB35EECD4A5EBD3A2E9D3A2EAD2A3E9D2A1E8D09D +E7CF9CE6CF9DE7CF9DE8D0A2E8D4A9E9D5ACEBD8B3EBDAB7EAD9B5DDC187D7B673D0AA5D +CCA453C79C42BA851ACAA150DDC492D9BD85DCC594E6D6B7F0E8DAFBFBFEFBFBFDFBFBFD +FBFBFCFBFBFCFCFDFEFDFEFFFCFCFCF8F4F0F8F4EFF8F5F0F8F5F1F6F2EBF4F0E6F7F4EE +FEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFEFEFEFEF8ED9BF5E56AF6E879F6EC8A +F7ED94F8EE97F7ED96F8ED94F8ED94F8ED94F7EC93F8ED93F7EC8EF6EA82F6E97CF4E674 +F5E774FFF075EADC74BEB3732A256E08056E08056D0B086E09066E08056E09066D09066E +09076E04016A04036A0E0C72333A8E6A7EB896B3D9B5DCF3A9D0ECA5CDEAA1CBEA9ECAEA +98C7E998C6E899C7E89AC7E999C7E996C6E995C6E995C6E994C5E99BC8E9A5CEEBA9D0EC +AFD3EDB0D4EDB0D3EDAFD4EEAED4EEAFD4EEB0D4EEAFD3EDAFD4EEADD3EDA8CFECA5CEEB +A3CDEBA2CDEAA1CCEBA1CBEAA1CBEBA0CCEBA1CCEAA2CDEC9CC3E48DAAD331297913005B +1A076219076114005C6B75ADBADEF4B2D4EDB1D4EEB0D4EEADD2EDA5CEECA4CDEBA2CCEB +A2CCEBA2CCEAA3CDEBA4CDEBA6CFECA7CFECA7CFECA8D0ECA7D0ECA4CEEBA2CCEAA3CDEB +A6CEECA7CFECA7CFECA4CEEBA2CCEBA1CBEBA0CBEAA0CBEAA0CBEAA0CBEAA0CBEA9FCBEA +A1CCEAA6CFEB8EC1E656A4DB4F9FDA3691D32B88CD2A84C72F91D43196D8246EBA132D8B +0F1C7E07016A05006807036C0A076F09066E08056D08056D09066E0C096F07056D07046C +433E80DCD3B9FFFCCAFDF9CCF9F1CDFAF2CFFBF4D2FBF4D2FBF3D0FAF2CBFBF2CCFAEDB5 +F7E48EF5E388F7E389F7E388F6E084F6E082F6E187F6E495F7E69CF8E8A7F9E9ACFAF1CB +FCF5DDFBF4DAFCF5DAFCF5D9FCF4DAFCF5D9FCF4D8FBF3D6FCF4D4FBF3D1FAF1CCFBF0CA +FBF0C7FBEFC7FAEFC8FBF1CCFAEDC0F7E195F6E092F7E193F6E192F7E192F6DE8DF5DC89 +F5DC86F7DF92F7E39FFBF1D0FCF3D9FBF3D9FCF4D9FCF3D9FCF3D9FCF4D9FBF3DAFCF2D8 +FBF2D7FAF1D1FBEFCCFAEDC5FAECC2F9E9BAF5D988F4D885F5DA8CF4DB92F5DB92F5DB91 +F4DA93F5DC97F5DC98F6DFA0FAEDCCFBF0D3FAF0D5FBF2DCFCF3DFFBF0D7FAEDCFF9EAC8 +F8E8C3F8E8C4F8E8C2F7E6C1F7E5BBF6E1B2F5E0AFF4DCA8F3DBA4F4DCA7ECC66FE8B950 +E7B64BE6B74EE6B74CE6B64DE6B64EE7BB5AE8BD62EDCD88F6E7C6F6E7C7F6E8C9F5E7CA +F5E7CAF6E7C9F6E8CBF5E9CCF5E8CDF6E8CBF5E6C6F4E6C7E9CD92DBAC4AD39B24D29920 +D39A24D39D2CD39D2DDAAE54EBD2A2EBD3A3E9D2A1EAD2A2E9D2A1E8CF9EE7CE9CE6CF9D +E7CF9EE8D0A2E8D4A9E9D5ADEAD8B3EADAB6EBD9B5DEC38AD7B774CFAA5CCCA453C69B40 +B88113C69941DCC290DBC18EDABF8AD8BD88E4D4B3F5F1EAF8F5F0F9F8F8FAFBFCFAFAFB +F9F7F4F8F5F0F3EEE5ECE2D0EDE2D0EEE5D4EEE5D4EBE1CDE8DEC8ECE3D1F9F7F2FDFCFB +FFFFFFFDFDFDFDFDFDFEFEFEFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFFFFFFFEFEFEFEFEFEFDFDFDF7ED96F5E66BF6E979F6EB89F7ED91F8EE97 +F7EE96F8ED93F8EC92F8EC92F7EC92F7EC92F7EC91F5EA8BF4E888FAED7CF9EB789C9272 +2E296F14106E06036D0C096E09066E08056E09066D09066E0A076F08056D07036C181B7B +5C70B086A4D0A4C6E5B5DAF2AFD3EDACD0ECACD1ECA9D0ECA5CEEC9FCBEB98C7E999C7E9 +98C7E898C7E898C7E997C6E995C5E996C6E995C5E897C7E9A2CCEAA6CFEBACD2EDB0D4EE +AFD3EDAFD3EEAED4EEAFD4EEB0D4EEAFD3EEB0D3EDB0D4EEACD1EDA8CFECA6CEEBA3CDEA +A3CDEBA2CCEBA2CCEBA2CCEBA0CBEAA2CDEC9AC2E48AA9D231287913005B1A0762190761 +14005C6B75ADBADEF4B2D4EDB3D5EFB3D5EFAFD3EEA9D0ECA6CFECA3CDEBA3CDEAA3CDEB +A2CCEBA3CDEBA0CCEB9BC8E998C7E992C3E78FC2E688BEE586BDE589BFE591C3E897C6E9 +A0CCEAA0CBEBA0CCEBA1CCEBA1CCEBA1CCEBA1CCEBA1CCEBA1CCEBA1CCEBA2CCEAA5CEEB +99C7E961A9DD54A2DA3F96D63290D32C8BCF2E8CD02F8DD12E8ED22C8CD02B81C82054A7 +1F429911137605006A08066E0A076F09066E08056D09066E0A076E0C096F02006C272377 +6D678DB1A7A2FFF7BEFBEFBBF8EBBAF9EDBBF9ECB9F9EBB2F9EBB2F7E8A4F4DF7FF3DA6E +F6DF7EF6E184F6E187F7E189F7E28BF6E496F7E59BF8E8A7F8E9A9FAEFC4FCF5DDFBF4DA +FCF4DAFCF5D9FCF4DAFCF5D9FCF4D9FBF4D6FCF4D4FBF3D2FAF2CEFBF1CBFBEFC6FBF0C6 +FAEFC6FBF0CAFAEEC2F7E197F6E091F7E193F7E093F6E193F7DE8FF7DC8CF6DC89F6DF8F +F7E299FAEFCBFCF3DAFBF3D9FCF4DAFCF3DAFCF3DAFCF4DAFCF3DAFBF3D8FCF2D7FBF0D1 +FBEECBFAEDC6F9ECC2F9EABDF6DA8CF4D884F5D98BF4DB90F5DB91F5DA92F4DA92F5DB94 +F4DB96F5DC99F9EBC5FAEFD4FAF0D4FBF2DAFBF3DDFBF3DFFCF3E1FBF1DAF9EBCCF8E9C7 +F7E8C1F8E7C0F6E5BBF5E1B1F5E0ADF3DCA7F3DAA3F4DDA8ECC873E8BB53E7B54AE6B64A +E5B549E5B549E5B54BE6BA59E7BD61EBC97EF5E5C2F6E7C6F5E7C7F6E8C9F6E8C9F5E7C9 +F5E8CAF6E9CCF6E9CEF6E9CDF4E7CAF4E6C8EBD29CE0B75FD6A030D39D2BD4A02FD39F2F +D29E2FD5A641E7CD95EBD5A7E9D2A1EAD2A3E9D1A2E8D09FE7CF9EE6CE9DE7CF9EE7D1A3 +E8D4AAE9D5ADEAD8B3EAD9B5EBD9B6E1C895D9BB7ACFA95CCCA453C4973CB78215BC8A26 +D6B97EDCC290DAC08CDAC28FD9C08DDCC496DECA9FE2D0ADE3D4B5E2D2B2DDC79FD8C194 +D5BC8CD4BB8BD4BC8DD9C49BDAC8A1DCC9A3DDCAA8DCCAA7E1D2B5E5D8C0F3EEE5FEFFFF +FEFEFEFDFDFDFEFEFEFEFEFEFDFDFDFDFDFDFEFEFEFFFFFFFEFEFEFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE +FFFFFFFEFEFEFEFEFEFDFDFBF6EB8DF5E66CF6E879F7EB86F7EC91F8EE97F7EE94F8ED92 +F8ED90F7EC91F7ED93F8EE94F5EA93FAEF92FEF391958C7C504A7309086D01006D07046D +0A076E09066E09066E09066E09076F08056D03006826318A6C8DC37FA9D6A5D4F0ADD6F0 +ADD2EDAED1EDAFD3EDAED2EDADD2ECA9CFECA6CDEBA1CCEB9DCAEA9CC9E999C8E997C6E8 +97C6E996C6E995C6E996C6E995C5E996C6E89FCBEAA3CDEBAAD0ECAFD3EDAFD4EEAFD3ED +AFD4EEAFD4EEB0D4EEB0D4EEAFD3EDB0D4EEAED3EDABD0EDA8D0ECA3CDEBA3CCEAA3CDEB +A3CDEBA3CDEBA0CBEAA2CDEC9AC2E489A9D230287914005B1A076219076113005C6C75AD +BBDFF4B3D5EDB4D6EFB4D5EEB0D4EEABD1EDA9CFEDA5CEEB9FCBEA9AC8E98FC1E68BC0E6 +84BDE581BAE480B9E47DB8E37EB9E380BAE383BCE487BDE590C2E795C5E9A0CBEBA1CCEB +A1CBEBA1CCEBA0CBEBA1CCEBA1CCEBA1CCEBA1CCEBA1CCEBA2CCEAA3CDEBA2CCEB6EB0E0 +57A3DB469AD73893D42F8ED22D8CD02F8DD1308DD12C8BCF308FD23396D83D9BD96393CB +3B4C9B1A1F7E03006809066E0A076F08056D09066E09066E0A076E05036D000068161472 +5B5589B0A7A4FFF6BCF4E7B6F8EAB1F8E7A4F8E5A3F6E08CF2D45FEDC62CF0CA36F1CD41 +F2D151F3D45BF4DA70F6E28BF6E494F8E9A8F9E9ABF9EEC1FBF5DCFBF4DAFBF4D9FCF4D9 +FCF4D9FCF4DAFCF5D9FBF4D7FCF4D5FBF3D2FAF2CEFBF1CBFBF0C7FBEFC5FAEFC5FBEFC7 +FAEDC3F7E196F6DF8DF7E091F7E193F7E195F6DE90F6DC8EF7DC8BF7DE8FF6E196FAEEC6 +FCF3D8FBF3D7FCF4DAFCF3DBFCF4DBFCF3DBFCF4DBFBF3D9FCF2D8FBF1D2FBEFCBFAEDC7 +F9ECC3F9EBC0F6DB90F4D883F5D98CF5DA91F4DA92F4DB92F5DB91F5DA91F5DA93F4DA94 +F8E8BEFAEFD3FAEFD0FBF1D7FAF2DAFBF3DEFCF4E0FCF4E2FBF3DFFBF2DCF8EBC9F7E7C0 +F6E5BCF5E0B1F4DEACF3DBA6F2DAA3F3DCA7EDCA78E9BD5AE6B549E5B548E5B448E4B448 +E4B54AE6B956E6BD62EAC779F4E2BCF5E6C5F6E7C6F5E7C6F5E7C7F6E8C9F6E7CAF5E9CD +F6EACFF5E9CDF4E7CBF4E6C9ECD5A4E2BE71D9A840D5A236D5A238D4A137D3A136D3A038 +E3C484EAD3A4E9D2A1EAD3A3E8D1A2E7D1A0E7D0A0E6CF9FE6D09FE7D1A4E8D5ADE9D6AF +EAD8B5EBD8B4EAD9B5E5CCA0DBBC81CEA75ACCA452C39438B88219B78115CCA960DCC596 +D9C08CDAC18FDAC292DAC293DAC191D8C090D7BE8ED7BE8DD6BD8DD5BD8CD4BB8BD7C094 +D2B98ACEB481D8C49CDDCBA8DDCCAADECEADDECEAEDECDADDFD1B4EBE1D0F4EFE7FFFFFF +FDFDFDFEFEFEFEFEFEFEFEFEFDFDFDFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFE +FEFEFEFDFCFAF6EA8BF5E66CF6E878F6EA84F7EC90F8ED96F7ED94F8EC92F7EC90F8ED90 +F7EC92F5EB93FCF496E9E091C5BC8A413C7415126F09066E0C086E09066E08056E09056D +09066E08056D06016A0D0C72161D7E5475B791BFE392C3E698C7E8A2CAE9A8CFECAED2ED +AFD3EEAED2EDADD1ECA9D0ECA6CEECA2CCEB9ECBEA9ECAEA9AC8E997C6E897C6E996C5E9 +96C5E995C5E995C6E996C5E89DCAEAA2CCEBA9D0ECAED3EDAFD3EEB0D4EDB0D3EEB0D4EE +AFD4EEB0D4EEAFD3EEB0D4EEAFD3EDABD1EDA8D0ECA4CDEBA3CDEBA2CCEBA3CCEBA2CCEB +A0CBEAA2CDEC9AC2E489A8D230287914005B1A076219076113005C6C75ADBBDFF4B3D5ED +B4D6EEB4D6EEB2D5EEABD1EDA7CFEC9CC9E991C3E88DC1E684BCE482BBE480BAE47FB9E3 +7FB9E37FB9E480BAE482BBE484BCE487BEE590C3E795C5E89FCBEAA1CCEBA0CBEAA1CCEB +A0CBEBA1CCEBA1CCEBA1CCEBA0CBEBA0CBEBA1CCEAA2CCEBA3CDEB74B3E159A5DC489BD7 +3993D42F8DD12C8BCF2E8DD12F8ED22C8BD02F8CD1328ED13793D472B0DF6B90C64963AA +16187A0B0B7005016A0A086F09066E08056D08056D0A076E0C096F0A076E181573595388 +E0D5B2FFFCBEF9EDB6F7E7A8F8E7A7F6E190F3D668EDC62AEFC528EFC730F0C938F0CB3D +F1D04DF3D86DF4DB79F6E295F8E59FF9EDBBFBF5DDFCF5DCFBF5DAFBF4DAFBF4DAFBF4D9 +FBF5D9FBF4D7FCF4D5FBF3D3FAF2CEFBF1CCFBF0C8FBF0C5FAEFC6FBEFC7FAEEC4F8E297 +F6DF8CF7DF91F7E194F7E194F7DE90F7DC8EF6DC8BF6DE8FF6E195FAEDC4FCF3D8FBF3D7 +FCF4DAFCF3DBFCF4DAFCF3DAFCF4DBFBF3D9FCF2D8FBF1D3FAEFCCFAEEC8FAECC3F9EBC1 +F6DC93F4D883F5D98CF4DB92F5DA93F5DA93F5DB90F5DB91F5DB92F4DA92F8E7BAFAEFD2 +F9EECFFAF1D6FBF1D9FBF2DCFBF3DFFCF3E0FBF4E1FBF4E1F9EED4F9EACAF6E6BEF5E0B0 +F4DFADF3DCA7F2DAA3F3DCA6EDCA7AE9BE5CE6B64AE5B548E4B447E5B448E4B54AE5B855 +E6BD63E9C679F4E1BAF5E5C3F6E7C6F5E6C6F6E7C7F5E7C9F5E7CAF6E8CCF6E9CFF5E9CD +F4E7CAF4E7C9EDD6A5E3BF73D9A944D6A338D5A33AD5A23AD4A239D2A038E1C17DEAD2A2 +E9D2A2E9D2A2E8D1A2E8D0A0E7D09FE6CF9FE6D0A0E7D1A5E8D5ACE9D6AFEAD8B5EAD8B4 +EAD9B5E5CEA4DABC82CDA659CBA351C29437B88219B68014C8A253DCC494D9C08DD9C290 +D9C291DAC294DBC394DAC397DAC498DAC498D7C194D7C091D4BC8CD7C195D4BC8EC6A86C +CCB17CDDCBA8DDCCAADECDABDFCFB1E0D1B4E0D2B5E1D2B7EBE2D2FDFEFFFDFDFDFDFDFD +FEFEFEFDFDFEFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFEFEFFFCFCF6 +F6EA86F5E76EF6E876F5E97DF7EB8BF8ED91F7EC91F7EC91F8ED90F6EC90F5EA91FFF493 +CCC38D3A367617147001006C08046D09066E08056E08056D09066E0A086F08056D0F1075 +25368E5489C666A1D595CBEC96C6E893C4E795C5E89AC8E9A1CCEBA8CFECABD1EDADD2ED +ADD2EDA9D0ECA6CFECA4CDEBA1CCEBA1CCEB9CC9E997C6E897C7E997C6E998C6E997C6E9 +96C5E995C5E89BC8E99FCBEAA7CFECACD2EDAED3EEB0D4EDAFD3EEAFD4EEAFD4EEAFD4EE +AFD3EDB0D4EEAFD3EDADD2EDA9D0ECA4CEEAA3CDEAA2CCEBA3CDEAA2CCEBA0CBEAA2CDEC +9AC2E488A8D230277914005B1A076219076114005C6B75ADBBDFF4B4D5EDB5D6EFB4D6EF +ACD2ED99C7E990C2E782BBE47EB9E37FB9E37EB9E37EB9E380BAE480BAE480BAE480BAE4 +81BAE382BBE484BCE487BDE58EC1E794C4E79FCBEAA1CCEBA0CBEAA1CCEBA1CCEBA0CBEB +A0CBEBA1CCEAA2CCEBA2CCEBA1CCEAA1CCEAA6CEEB82BBE363AADD4B9DD83B95D52E8CD0 +2C8ACE2F8DD12F8ED22F8DD2318FD33792D5328FD463AADD94C9EC8DC5EA7CAAD8688CC4 +21298403006808056D0A086F09066E08056D09066E09066E07046D00006935317C867E95 +DCD0AFFDEEAFF3E5A8F7E49AF5DE85EEC834EEC529EFC630EEC62DEEC52DEEC52CEFC93C +F0CC44F2D15DF3D567F5DE88FAEFC8FBF1D0FBF3D4FCF4D9FCF5DAFCF5DBFCF5DAFBF4D7 +FBF3D5FCF3D3FBF2D0FAF1CDFBF0C7FBEFC5FBEFC6FAF0C7FBEFC7F8E39BF6DE8BF7DF90 +F7E194F7E194F7DE90F7DC8DF7DC8AF7DE8FF6E093F9ECBFFCF4D9FBF3D7FCF4DAFCF3DB +FCF4DAFCF3DBFCF4DBFBF3D9FCF3D8FBF1D3FAEFCEFAEECBFAECC5F9ECC5F6DE98F4D885 +F5D98DF5DA91F5DB93F5DB92F5DA90F5DA91F5DB91F4D98FF8E4B2FAEDCFF9EDCDFAF0D3 +FBF1D5FAF2DAFAF3DDFBF3DEFBF3DFFAF3DFFBF3DFFBF2DEF9EED2F5E3B8F5E0B0F3DCA6 +F2DAA2F3DCA7EECC7FE9BF60E6B548E5B347E5B246E5B347E4B349E5B755E6BE65E9C576 +F2DFB5F4E5C1F5E6C6F6E6C6F5E6C6F4E7C8F5E7CAF6E8CCF6E8CCF5E8CCF4E7CAF4E5C7 +EDD6A6E5C37BD9AA48D6A53FD6A744D6A642D5A542D3A13BDEB96FE7CD96EAD2A4E8D1A1 +E8D1A2E7D0A0E7CF9EE5CF9EE6D0A0E7D1A5E8D5ACE9D6B0EAD8B5E9D8B5EAD9B6E5D3AC +DBC088CCA555C89F4BC09133B78218B57F13BF9137D7B982DAC18DDAC494DAC291D9C192 +D9C292DAC395DAC499D9C499D8C195D6BF91D3BC8BD6C194D9C69EC5A66BB79149D1BA8D +E0D1B2DECDAEDFCFB1DFD0B3E1D3B8DECDAFDCCCADF5F2ECFEFFFFFCFCFCFEFEFEFEFEFD +FDFDFEFEFEFEFDFDFDFEFEFEFEFEFEFFFFFFFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFDFEFEFFFCFCF5F6EA85F5E76E +F6E876F5E87BF6EB88F7ED8FF8ED90F8ED91F7EB91F9F091F7EF91EFE4907C758003016D +04026D0C096E09066E08056E08056D09066E07026C0300680E0F742D4599466FB66BB3E2 +76B7E393C2E693C4E793C4E794C5E895C5E89DCAEAA5CEEBA9D0ECADD2EDADD2EDA9D0EC +A7CEEBA5CEEBA1CCEAA0CBEB9CC9EA98C6E997C7E898C7E999C7E898C6E897C6E995C5E8 +9AC8E99ECAEAA6CEECACD2EDAED3EDB0D4EEAFD3EDAFD4EEB0D4EEB0D4EEAFD3EEB0D4EE +AFD3EDAED2EDAAD1ECA4CEEBA3CDEBA2CCEAA2CDEBA2CCEBA0CBEAA2CDEC9AC2E488A8D2 +30287914005B1A076219076113005C6C75ADBDE0F5B5D5EEB2D4EEAED2EEA3CDEB90C2E7 +89BEE680BAE481BAE382BBE47FBAE47EB9E47FBAE481BAE481BAE481BAE481BBE383BBE4 +84BCE486BDE58EC1E693C4E79FCBEAA1CCEBA0CBEAA1CCEBA1CCEBA1CCEBA0CBEAA1CCEB +A3CDEAA2CCEAA2CDEAA2CCEAA7CFEB87BEE569ADDE4B9DD83E96D62F8CD02C8ACE2F8DD1 +308ED3308ED33290D33892D4318FD45DA6DC8EBFE689BCE490C6EA8CC0E64E68AD181C7C +0B0B7002006807036C09066E08056D09066E0A076E09066E0E0B6F2A2578988F9AFDF1B1 +FEF4AEF6E59CF5E08CEFC938EEC528EFC731EFC730EFC731EFC732EFCA3EF0CC44F2D057 +F2D25CF3D876F9EBBAFAEEC5FBF0C9FBF2D0FBF2D3FBF4D9FBF5DAFCF4D9FCF4D8FCF3D5 +FBF2D0FAF1CDFBF0C7FBEFC5FBEFC6FAEFC7FBEFC7F8E39DF6DE8AF7DF90F7E194F7E093 +F7DD8FF6DC8CF6DC89F7DE8FF6E093F9EBBDFCF3D9FBF3D7FCF4DAFCF3DAFCF4DAFCF3DB +FCF4DCFBF3D9FCF2D8FBF1D3FBEFCEFAEECBF9ECC5FAECC5F6DE99F4D785F5D98DF5DA92 +F5DB93F5DB92F5DA90F5DA91F5DA91F4D98FF7E3B0FAEDCFF9EDCCFAEFD2FBF0D4FAF1DA +FBF2DDFAF3DDFAF3DEFBF2DEFAF2DEFBF3DEFAF1DAF7E7C4F6E3B9F3DCA6F2D99FF3DCA7 +EECC80EABF5FE5B447E5B348E4B346E5B347E5B248E5B856E6BE65E9C475F1DEB2F4E4C0 +F5E6C6F5E6C6F5E7C7F5E8C9F5E8CAF6E7CCF5E7CBF5E8CCF5E7C9F4E5C6EDD7A7E5C57F +D9AA48D6A540D7A947D6A745D6A644D3A13EDDB769E5C98FEAD3A5E8D1A1E8D1A2E7D0A0 +E6CF9EE5CE9EE6D0A0E7D1A5E8D5ACE9D7B0EAD8B5EAD9B5EAD9B7E6D4AEDCC28CCCA454 +C79D48C09032B68119B47F14BC8D30D3B478D9C18EDBC596DBC292D9C191D8C191D9C395 +DAC398DAC498D8C195D6BF91D3BC8BD5C194DAC79FC9AD77B8954FC9AD77E0D1B3E0D1B3 +DFCFB1DFD1B3E0D2B6DFD0B3DAC9A8EFE9DCFFFFFFFCFCFDFDFDFDFDFDFEFEFEFEFDFDFE +FEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFDFEFEFFFCFAF3F6E982F5E76FF6E875F5E878 +F6EA80F7EB89F7EC8CF5EA8FF6EB92F4E99277707E332E7406036D0A066E0A076E08056E +08056D09066E0B097008046D161B7C27388F5386C46DB3E36AB0E170B0DF83BAE39AC8E9 +96C6E895C5E894C5E894C5E896C6E89CC9EAA2CCEBA9D0ECABD1EDA9D0ECA8CFECA7CFEC +A3CDEBA2CCEB9ECBEA9CC9EA99C7E999C7E89AC8E999C8E998C7E896C6E899C8E99CCAEA +A2CCEBAAD0ECADD2EDB0D4EEAFD3EDB0D4EEAFD4EEAFD4EEB0D3EEB0D4EEAFD3EDAED3EE +ABD1EDA5CFECA4CEEBA2CDEBA1CDEAA1CCEBA0CBEAA2CEEC99C1E485A6D130277814005C +1A076219076114005C6A74ACB0D9F2A4CCEB9ECBEA9BC9EA97C6E891C2E790C2E787BDE5 +81BAE482BBE480BAE47FB9E480BAE482BBE482BBE482BBE482BAE382BBE482BBE485BCE5 +8BBFE690C2E79DCAEAA1CCEBA0CBEAA1CCEBA0CCEBA1CCEBA1CBEBA2CCEAA3CDEBA3CDEB +A3CDEBA2CCEAA6CEEB95C5E87DB8E351A0DA449AD7328FD22B8BCF2D8DD1328FD33490D4 +3490D33792D43390D34C9DD88ABEE68CBFE689BDE48BBFE58FC4E880AFDA6385BF29328A +15177807046C0B086F09066E08056D09066E0A076E06036D03006C6D668ABDB09FF2E1A0 +F4E29BEFCD48EEC527EFC731EFC72FEFC62FEEC632EFC940F0CB45F2D057F3D15EF3D56D +F8E8ADFAECBDF9EAB9FAEBBAFAEBBCFAEDC1FAEEC4FAF0CCFBF1D0FBF1D0FBF2D0FAF1CD +FAEFC7FAEFC5FAEFC5FAEEC5FBEFC8F8E4A1F6DE8AF7DE90F7DF91F6DE8FF6DD8DF6DD8B +F6DC8AF7DE91F6DF93F8E9B9FBF3D7FBF2D8FCF4DAFBF3DAFCF3DBFCF4DAFCF3DAFBF3DA +FCF2D9FBF1D4FBEFCEFAEECBF9EBC4FAECC6F7DF9CF4D682F5D88AF5DA91F5DA91F5DA91 +F5DB90F5DA91F5DA93F4D992F6E2ACFAEDCDF9ECCCFAEED1FAF0D3FAF1D8FBF2DBFBF2DC +FBF2DCFBF2DCFAF2DCFBF2DCFAF1DAF9EFD5F9EED2F6E4BAF4DEABF2DBA5EDCC81E9BE5F +E4B242E4B242E3B242E4B247E4B248E5B958E7BF69E9C475F1D9A6F3E1BBF5E7C9F4E6C6 +F5E7C8F5E7CAF5E8CAF5E8CBF5E8CCF5E8CCF4E6C7F3E4C4EDD7A7E5C785D8A948D6A743 +D7AA4AD6A747D5A747D4A442D8AF5ADFBE7AE9D4A7E8D2A4E8D0A2E7D0A0E6CF9FE5CE9E +E6CFA0E7D2A7E9D6AFEAD7B2EAD9B6EBD9B8EADAB8E8D7B3DDC390CAA252C69C46BD8E2D +B68118B58017B78622C6A254D7BC88DBC498DAC394D9C294D8C193D8C295D9C296D9C296 +D7C094D5BF91D4BD8FD6C196DBC8A1D1BA8BC4A66BBD9C5AD1BB8EDCCAA9E0D2B5DFD1B3 +DFD0B4DDCEB1DAC9AAD9C8A8F6F5F1FBFBFBFDFDFEFDFDFDFDFDFDFEFEFEFEFEFEFEFEFE +FDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFFFFFFFEFEFDFEFEFFFCFAF0F6E980F5E770F6E875F5E977F6E97AF5E982 +F6EA87F3E88CECE28E605A7A00006C01016C0A076E09066E08056E09066E0A076F08056D +0B087025318B6BA1D475B4E173B7E469ACDD67ABDD84BBE492C3E799C7E999C7E997C6E9 +94C5E895C5E895C5E895C5E99AC8E9A3CEEBA6CFECA7CFECA8CFECA8CFECA6CEEBA4CDEA +A1CCEA9FCAEA9DC9EA9BC8E99BC9EA9AC8E998C6E898C7E998C6E99AC7E9A0CCEBA8CFEC +ACD1EDAFD4EEB0D3EDAFD3EDAFD4EEAED4EEAFD4EEB0D4EEAFD3EDAFD4EEACD2EDA7CEEC +A6CEECA2CCEBA1CBEAA2CCEBA0CBEAA2CEEC98C1E384A5D030277814005C190762190761 +14005C5F6FAA9FD1EF99C7E89AC8E99AC8EA99C7E895C5E794C4E789BFE582BBE481BBE3 +82BAE481BAE480BAE482BBE482BBE481BAE482BAE481BBE481BAE384BCE48AC0E58FC2E6 +9CC9E9A1CCEBA0CBEAA1CCEBA0CBEBA1CCEBA1CCEAA3CDEBA4CDEBA5CEECA3CDEBA2CCEA +A4CDEB9ECAE98FC2E658A3DB4A9CD83490D32B8BCF2E8CD03692D43792D43691D33793D4 +3691D44197D682BAE58BBEE68ABFE58ABEE58ABDE590C6E994C8EB92C3E7789DCE1B1D7D +01006809066E0A076F09066E09066E0A076E08056D05046C07036E847A88F4E3A2EFCE55 +EDC429EEC731EEC631EFC531EEC531EFC93EF0CB43F1CF52F2D05AF3D46AF7E5A5F9EBBA +FAEBBCF9EAB9F9EAB9F9EAB9F9EAB9F9EAB9F8EAB9F9EAB9F9EAB9F9EABBFAEDC1FBEEC6 +FBEFC7FAEFC7FBEFC9F8E4A3F6DC88F7DE8EF6DD8EF7DC8DF6DC8BF6DC89F6DC8CF7DF93 +F6E094F8E9B7FBF2D5FBF2D8FCF3DAFCF4DBFCF3DBFCF3DBFBF4DBFCF3DAFBF2D9FAF1D4 +FBEFCEFAEDCBF9EBC4FAECC7F7E0A0F4D781F5D889F5DA90F5DB90F5DA90F5DA90F4DA90 +F5DB94F4DA93F6E0A9F9EBCBF9ECCBFAEED0F9F0D3FAF0D6FBF1D9FAF1DAFBF1DBFAF1DB +FAF1DAFAF1DAFAF0D8FAEFD3F9EED2F9ECCDF8EBC9F5E3B9EDCB80E8BC5BE3B03DE3B03E +E3B040E2B247E3B349E5BA5AE7C16DE9C476F0D6A1F3E0B9F5E8CAF4E6C6F4E7C7F4E7C8 +F4E6C9F5E8CCF6E9CDF5E8CCF3E6C6F3E3C2EDD6A6E6C786D8A947D6A746D6A94BD5A647 +D4A747D4A647D6AA51DBB66AE9D3A6E9D1A4E8D1A3E6D0A0E6CFA0E5CFA0E6D0A1E7D3A9 +E9D7B1EAD8B4EBD9B7EAD9B9E9D9B7E9D8B5DEC493C9A150C39943BC8C2BB48017B48017 +B5831DBC9035D3B67CDCC699DAC394D9C296D9C295D9C295D8C295D7C094D6BF92D5BE90 +D6BF93D7C299DAC7A1D6C29ACDB583BE9C5DC0A167CBB382E1D3B7E0D2B6DFD1B5DDCEB1 +DBCBACD1BD97ECE6DCF7F6F4FCFDFEFCFCFDFDFDFEFDFDFDFDFDFDFEFEFDFEFEFEFDFDFD +FDFDFDFEFEFEFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE +FFFFFFFEFEFDFEFEFFFCFAEFF6E980F5E770F6E875F5E978F5E879FAEE81FFFA85CAC084 +7B757E29257205036D0D096E09066E08056E08056D07036C0300680D0E723C54A1557ABA +7AB7E27AB7E372B1DF6BAFDF6CAFDF8ABFE694C5E897C7E898C6E898C6E995C5E894C4E7 +95C5E895C5E997C6E89FCBEAA4CEEBA7CEEBA8CEEBA8CFECA7CFEBA5CEEBA2CCEBA0CBEB +9ECAEA9BC9E99AC8EA9AC8E999C7E998C7E898C6E898C7E99FCBEBA7CEECA9D0ECAFD3EE +AFD3EEB0D4EEAFD3EEAED4EEAFD4EEB0D4EEAFD3EDAFD4EEADD2EDA9CFEBA7CEEBA3CDEB +A2CCEAA1CCEBA0CBEAA2CEEC99C1E486A6D130277914005B1A076219076114005C5E6EAA +A1D2EF9CC8E89CC9EA9CC9E99AC8E996C5E895C5E88ABFE581BAE381BAE381BBE481BAE4 +80BAE481BAE481BAE482BBE482BBE481BAE481BAE384BBE48AC0E68FC2E79CC9E9A1CCEB +A0CBEAA0CCEBA0CBEBA1CCEBA2CDEAA3CDEBA4CEECA5CEECA3CDEBA2CCEAA3CDEBA1CBEA +96C5E75CA6DC4D9ED93792D32C8BCF2E8CD13692D43993D43792D43792D43792D43D95D5 +79B6E287BDE58ABFE689BEE58BBEE58CC0E58EC0E595C7EA90BEE3546BAE1F23800B0B6F +02006807036C09066E08056D0A076E0B086E02006C3E3778867C8CDCBD58F8CE27F0C831 +EFC632EFC531EEC530EFC83CF0CB42F1CE51F2CF58F2D367F7E4A1F9EBB8F9EBBCFAEAB9 +FAEBBAFAEBBBFAEBBBF9EABBF9EAB9F9E9B5F8E7B0F8E6AEF8E7B0F9E9B6FAEBBBFBEEC3 +FBEFC9F9E6A9F7DE8DF7DF90F7DD8EF7DC8CF6DC8AF5DC89F6DC8BF7DF93F6E095F8E9B6 +FBF1D4FBF2D7FCF3DAFCF4DBFCF3DBFCF4DCFBF3DCFCF3DAFBF2D9FAF1D4FBEFCEFAEECB +F9EBC4FAECC7F7E1A2F4D783F5D88AF5DA90F5DB90F5DA90F5D98FF5D990F5DB94F4DA93 +F6DFA7F9EBC9F9ECCBFAEED0F9F0D2FAF0D6FBF1D9FAF1DAFBF2DAFBF2DAFBF1DAFBF0DA +FAF0D7F9EFD3F9EED1F8EBCBF8EBC9F7E9C5F0D392EAC165E2AD36E2AF3DE2AF40E3B246 +E3B349E5BA5BE8C26FE9C577EFD6A0F3E1B8F5E8CAF4E6C6F5E7C7F5E6C8F4E7C9F5E8CC +F6E8CDF5E8CBF4E6C7F3E3C2EDD6A6E6C887D8AA4AD6A747D6A94BD4A646D5A747D4A748 +D5A950DAB365E8D2A5E9D2A6E8D1A3E6D0A1E6D0A1E6CFA2E5D0A3E8D3AAEAD7B2EAD8B5 +EBDAB8E9DAB9E9D9B7E9D8B6DEC594C8A14FC39842BB8B29B47F17B48018B4821CB88A2B +D1B277DBC699D9C292D8C194D9C195D9C396D8C195D7C094D6BF92D5BE91D6BF94D8C39B +DAC7A2D8C59ED0BA8BBF9E60BF9F64C5AA74DECFB0E2D4BADFD1B5DDCFB2DBCBACD1BE98 +ECE6DCF7F6F3FCFDFFFCFBFCFDFDFEFDFDFEFDFDFEFDFDFEFDFDFEFEFEFEFEFEFEFEFEFE +FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFD +FEFEFFFBF9EAF6E87EF6E771F5E876F4E778F7EA78CCC17899907728257000006C06036D +09066E08056D09066E09076F0A086F15197B222D885E8AC482C1E882C0E87EB9E37CB7E2 +7BB7E376B5E282BBE49CC9EA9BC8E998C6E998C6E89AC8E998C7E995C5E895C5E896C6E9 +95C5E897C6E99DC9EAA3CDEBA7CEECA7CFECA9D0ECA7CFECA5CEEBA2CCEAA0CCEA9DCAE9 +9CC9EA9CC9EA9CCAEA9BC8E998C7E997C6E89AC8E9A2CDEBA5CEEBABD0ECADD1EDAFD3ED +AED4EDAFD3EEAFD4EEAFD4EEB0D3EDB0D4EEAFD3EDABD1EDA9D0ECA5CDEBA2CCEBA1CCEB +A0CBEAA2CDEC99C1E384A5D12F277914005B19076219076114005C5E6EAAA3D2EF9DC8E8 +9ECAEA9DCAEA9DCAEA9AC8E998C6E98CC0E683BBE482BBE480BAE480BAE47FB9E47FB9E4 +80BAE481BAE481BBE481BAE480BAE382BBE48AC0E68FC2E79CC9E9A1CCEBA0CBEAA1CCEB +A1CCEBA3CCEBA3CDEAA3CDEBA3CDEBA3CDEBA3CDEBA2CCEAA3CDEBA5CDEBA3CCEA6BAFDF +50A0DA3E96D52E8DD2308ED23692D43993D53893D53792D53893D53892D45FA8DC7CB7E3 +8DC1E688BEE58ABFE68DC1E68FC2E790C1E795C6E99BCBEB92BCE26782BD232884171879 +09066E09066E09066E09066E09066E04026C00006D3A3066C6A339E7C035EBC434EEC530 +EEC531EFC83DF0CA42F1CE4FF2CF57F2D161F6E094F9E8B1FAECBEF9EABAFAEBBAFAEBBB +F9ECBBFAEBBCFAEABAF9E9B6F7E6ACF7E4A6F6E09CF6DF98F7DF99F7E19EF8E5ABF7E097 +F5D87AF6DB87F6DC8BF6DC8AF5DB89F4DB88F5DB89F7DE92F6DF95F8E7B2FBF0CFFBF2D6 +FCF3DAFCF4DBFCF3DBFCF4DCFBF3DCFCF2DBFCF2DAFBF1D4FAEFCEFAEECCFAECC3FAEDC7 +F7E3A8F4D786F5D98CF5DB90F5DB91F5DA90F5D88EF4D990F5DB93F4DA93F5DEA1F9EAC3 +F9ECCAFAEED0F9F0D2FAF0D6FBF1D9FAF1D9FBF1DAFAF1D9FAF1D9FAF0D9FAF0D6F9EED1 +F8EDCFF8EAC9F7E9C5F8EBCBF6E4B8F2D99BE8BD5CE3B042E3B043E3B146E2B34AE4B95A +E7C06CE8C476EDD298F2DEB3F5E7C9F4E6C5F5E6C7F5E6C8F4E7C9F5E7CBF5E7CCF4E7CA +F4E6C8F2E2C2ECD6A7E5C88AD9AC4FD6A746D6A848D4A647D4A748D5A84CD3A74CD6AD59 +E7CF9FEAD5ABE8D2A5E7D1A4E7D1A4E7D2A7E7D2A9E9D6B0EBDAB9EBDBBAECDCBCEADBBB +E9D9B9E9DABADFC798C79F4EC0963CB98926B47F17B48018B27F19B27F1ACAA764DBC498 +D8BF8FD8C091D9C295D9C397D8C296D7C194D5BF93D5BF92D6C196D9C59EDAC8A3DBC9A6 +D7C39BC1A268BFA164BF9F63D0BB91DDCDAFE0D2B7DDCEB1DAC9AACFBB93E3D9C5F3F0EB +FCFDFFFBFAFBFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFDFDFDFDFDFEFDFDFDFDFDFDFDFDFD +FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFDFEFEFFFAF9E7 +F5E87DF5E772F5E775F8EA74F9ED774C467100006C06046D0C096E0A076E08056D09066D +09066E04006807056C5379BA75AEDD7FBDE67AB6E27BB6E17EB9E37EB9E47CB8E380B9E3 +91C2E8A3CDEB9FCBEA9AC8E998C6E89AC8E99AC8E998C6E895C6E895C5E896C5E996C6E8 +96C6E8A1CCEBA5CEECA7CFECA9D0ECA8CFEBA5CEEBA2CCEAA0CCEA9DCAE99CC9EA9DCAE9 +9DC9E99CC9EA99C7E998C6E898C7E89ECBE9A2CCEAA9D0ECAAD1ECADD2ECAED3EDAFD4EE +AED3EDAED4EEAFD4EEB0D3EDAFD3EEAED3EEACD1EDA5CDEBA0CBEAA0CBEBA1CBEAA4CFEC +91BDE27099CC2C257815005C19076119076114005C5D6DAAA3D2EF9EC9E89FCBEB9ECAEA +9FCBEB9CC9EA99C7E98FC2E684BDE583BCE480BAE37FB9E480BAE47FBAE47FBAE47FB9E4 +80BAE480BAE480BAE481BBE487BDE58DC0E69AC8E9A0CCEBA0CBEAA1CCEBA3CDEBA2CCEB +A2CCEAA3CDEBA3CDEBA2CCEAA3CDEBA2CCEAA3CDEBA5CEECA7CFEC75B3E152A1DB4398D7 +318FD33290D43590D43892D53792D43892D43993D53792D44D9DD972B1E08FC1E788BEE5 +8ABFE68EC1E68EC2E690C2E791C2E795C5E89ECCEC9FCCEC96BEE35568AC00006608046D +08056D09066E08056D0A076E0E0A6D0000713B3060947B4AF5CD32EFC730EFC733EFC940 +F0CA44F1CE50F2CF59F2D262F6DE8EF8E6ABFAEDBFF9EBBBFAECBCFAEBBCFAEABCF9EABB +FAE9BBF9E9B7F7E7AFF8E5AAF7E29FF7E098F6DF96F5DC91F6DF9AF3D16EEFC23BF2CB5A +F6D881F7DD8EF5DD8EF5DC8DF5DB8AF6DD91F6DE95F8E6B0FBEECCFBF2D6FCF3DAFCF4DB +FCF4DCFCF3DBFCF2DCFBF3DAFCF2D9FBF1D4FAF0CFFAEECCF9EBC4FAEDC7F7E4ACF4D787 +F5D98CF5DB91F5DB91F4DA91F5D88EF4D98FF5DA91F4D992F5DD9FF9E8BFF9ECC9FAEFD1 +F9F0D3FAF0D7FBF1D9FAF1DAFBF0D9FAF0D8F9F0D8F9F0D8FAEFD6F9EDD1F9ECCFF8EAC9 +F7E9C5F8EAC8F5E4B7F3DEA5F0D48FE9C36CE5B853E2AE40E2B147E4B858E6BE67E7C171 +ECD091F1DCAFF5E7C9F4E5C5F5E6C6F5E7C9F5E6C9F4E7CBF4E8CCF4E6C9F4E5C7F2E2C1 +ECD5A6E6C98CD8AC4ED5A644D4A647D5A647D5A749D5A94DD3A74CD5AB54E6CC9BEAD6AE +E8D3A6E7D2A7E7D2A8E7D3AAE8D4ACEAD9B5EBDCBDECDDBFECDDC0EBDBBCE9DBBAEADCBD +E1C99CC89F4EC0933AB98725B38016B38018B37F1AB07B16C7A35BDBC69AD7BF8FD6BF91 +D8C295D8C397D8C397D7C396D5C093D5BF93D6C298D9C69FDBC8A3DCCCABDAC7A4C2A56C +BFA166BFA066C6AB78D1BD93E1D3B9DCCDAED9C9A9CEB990D9CBAFEFEAE2FDFEFFFAFAFA +FBFBFCFCFCFDFCFCFDFBFBFCFCFCFDFDFDFEFCFCFDFDFDFEFEFEFEFEFEFEFDFDFDFDFDFD +FDFDFDFDFDFDFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFDFEFEFFFBF8E4F5E87CF5E772 +EFE175F2E575948B7317136E08056E0B076E09066E09056D09066E0A076F0A086F25338C +405DA872A9D978B3DF7AB6E27BB7E27CB7E27DB9E37EB9E47EB9E38BC0E699C8E9A3CDEB +A0CBEA9CC9EA98C6E899C7E99AC8E99AC7E997C6E895C5E896C5E996C6E996C6E89CC9EA +A2CCEBA5CEEBA9D0ECA9D0ECA6CEEBA4CDEBA1CCEA9DCAE99CC9EA9BC9E99CC9E99BC9EA +99C7E998C6E898C7E99BC9E99FCBE9A7CFECA9D0EDADD2ECAFD3EDAED4EEAFD3EDAED4EE +AFD4EEB0D4EEAFD3EDAED3EEACD1EDA5CEEBA1CBEAA1CCEB9BC9E994C6E980B3DE6A98CB +2A257715005C19076119076114005C5D6DAAA3D2EF9DC8E89FCBEB9FCBEA9FCBEB9DC9EA +9BC8E992C3E787BEE584BCE480BAE37FBAE47FBAE47FB9E480BAE47FB9E480BAE481BAE4 +80BAE481BBE487BDE58BBFE697C7E9A0CCEBA0CCEAA2CCEBA3CDEBA2CCEBA2CCEAA3CDEB +A4CDEBA3CCEAA3CDEBA2CCEAA3CDEBA4CDEBA7CFEC7EB8E35BA6DC499BD83390D3328FD3 +3490D33792D43792D43893D43993D53893D4459AD769AEDF8EC2E688BEE58ABFE68DC1E6 +8DC1E690C2E791C3E796C6E899C6E99CC7E99CC6E78DB2DB3C49980D0C710D0C7109066E +08056D09066E0A066D08056E1813692E2564AB8E46EEC635E9C237EFC93EF0CA43F1CD50 +F2CF59F3D366F6DD8AF8E5A5FAECC0F9EBBBFAEBBCFAEBBBFAEBBCF9EABBFAEABCF9E9B8 +F8E7AFF8E5AAF7E19EF7E099F6DE97F6DE95F7E19EF3D270EEBF35F0C342F1C852F2CC5B +F3D26FF4D67BF5D984F6DD90F6DD92F8E5ABFAEDC7FBF2D6FCF3DAFBF4DBFCF4DCFCF3DB +FBF2DCFCF3DAFBF2D9FBF1D4FBEFCFFAEECDF9EBC5FAEDC8F8E4ACF4D786F5D98BF5DB91 +F5DB91F4DA91F5D88EF4D98FF4D992F4D991F5DD9EF7E7BBF9EBC8FAEED0F9EFD2FAF0D7 +FBF1DAFAF1DAFAF1D9FAF1D9FAF1D9F9F0D9F9EFD6F9EDD1F9ECCFF8EAC9F7E9C5F7EAC8 +F5E3B7F3DCA3F0D48FEED28DECCB7EE6B958E4B54FE4B755E6BE66E7C16FEBCD8CF0DAAA +F5E6C7F4E5C4F4E5C6F4E6C8F4E6C9F4E7CBF5E8CCF4E6C9F3E4C5F2E1C0ECD5A5E6CA8D +D9AB4FD4A544D5A747D4A748D4A64AD5A84DD3A74ED4AB54E5CB97EAD7AFE8D3A7E7D2A8 +E7D3A8E8D4ACE9D5AFEBDAB8EDDEC0EDDFC2EDDFC3ECDDC0EBDCBEEBDCBEE1CB9FC7A050 +BF9339B88724B27F16B37F18B27F1AB07D18C39D52D9C395D7BF8ED7C092D8C295D8C397 +D8C297D7C297D6C195D6C196D7C399D9C7A1DAC9A4DCCCACDBCBA9C4A770BE9F63BFA168 +C2A670C9B181DDCFB3DBCBADD7C7A5CCB78ED0BD99EAE3D7FDFEFFF9F9F9FAFAFBFBFBFC +FBFBFCFBFBFCFCFCFDFCFCFDFCFCFEFDFDFDFDFDFDFDFDFDFDFDFEFDFDFEFDFDFEFDFDFD +FEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFDFDFDFEFEFFFBF7E2F3E67BFEF072D9CC745A5370 +15116E00006D0A076E08056E08056D09076E09066E02006725348C72AEDD7BBBE67CBAE5 +7AB7E37AB7E37AB7E37BB7E37CB7E27DB8E381BAE39CC8EAA4CDEBA6CEECA3CDEB9ECAEA +98C6E898C6E899C7E99AC8EA98C7E996C5E896C6E995C6E995C5E897C6E99CC9EAA2CCEA +A8D0ECAAD1EDA8CFECA6CEEBA3CDEB9DCAEA9CC9E99AC8EA9AC8EA9AC8E999C7E898C6E9 +98C7E997C6E89AC8E9A5CEEBA7CFECABD1EDADD2EDADD2EEAED3EDAED4EDAFD3EEB0D4EE +AFD3EDB0D4EEADD2EDA7CFEBA7CFEB9ECAEA82BBE47AB7E475AEDC6997CA2A247715005C +19076119076114005C5B6CA9A2D1F09EC9E99FCBEA9FCCEAA0CCEB9ECAEA9DC9E995C4E8 +8BBFE687BDE580BAE47FB9E37EBAE47FBAE480B9E481BAE482BBE482BBE481BBE482BBE4 +85BCE488BEE594C5E89ECAEAA0CCEAA3CDEBA2CCEAA3CDEBA2CCEAA3CDEBA4CDEBA4CCEA +A3CDEBA3CDEAA2CCEBA2CDEAA7CFEB89BEE565ABDD4F9FD93791D4338FD33490D43590D3 +3591D43993D53A94D43A94D53691D45DA6DC8EC1E689BFE589BEE58ABFE58CC1E68FC3E7 +91C3E797C6E89AC7E99ECAEAA0CCEBA8D5F19BC1E4738DC32227820200680B096F09066E +08056E09066D07046E000071241C68695759E9C33AF0C93BEDC73FF1CD4FF2CF59F3D368 +F5DB83F7E39DFAEDC2F9EABBFAEABBFAEBBCFAEBBBF9EABBFAEBBCF9E9B9F9E7B0F8E5AC +F7E19FF7E098F6DE97F6DE95F7E19FF4D376EEBF34EEC13BEEBD35EEBC31EFBE35EFBF3A +F1C854F6D982F7DD90F7E6ACF9EDC5FBF2D7FCF2DBFBF3DBFBF4DBFCF4DBFBF3DCFCF2DA +FBF2D9FAF1D4FBEFCFFBEECDFAEBC6FAEDC9F8E4AEF4D787F4D88CF5DA91F5DA91F4D990 +F5D98FF4D88FF4D991F3D88FF4DB99F6E4B4F9EBC7FAEED0F9EED1FAF0D6FBF1DAFBF1DA +FAF1DAF9F0D9FAF0D9FAF0D8F9EFD6F8EDD1F8ECCFF8EBC9F8E9C5F8EAC7F6E3B7F3DCA3 +F0D591F1D89CF1D89DEFD495EBCA7FE3B653E3B95BE5BF6AE8CA85EFD7A4F4E5C6F3E4C3 +F4E5C4F5E4C5F5E5C7F5E7CBF5E7CBF4E6C8F3E3C3F1E0BCEBD4A5E6CA90D8AB50D4A442 +D5A747D4A74AD2A74AD3A74BD2A74CD2A94FE2C891EAD8B1E8D2A9E8D2A8E7D2A8E9D5AE +EAD7B2EBDBBBEEE0C5EFE1C7EEE2C8EEDFC5EDDEC4ECDDC1E3CEA4C8A255BE953CB78725 +B27F16B37F18B07F1AAF7E1ABE9747D7BE8ED6BD8ED8C193D7C296D9C297D8C398D7C298 +D7C298D6C197D7C39BDAC8A3DAC8A5DDCDADDDCEAFC7AC77BD9F63C1A36BBFA26BBFA46D +D7C6A3DACBAED5C3A1CBB58BC4AC7DE4DAC8FBFEFFF8F8F8FAFAFBFAFBFCFBFBFCFAFAFB +FBFBFCFCFCFDFBFBFCFCFCFDFDFDFEFCFCFEFDFDFDFDFDFDFDFDFDFEFEFEFDFDFDFDFDFD +FDFDFDFDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE +FFFFFFFEFEFEFDFDFDFEFDFDFDFEFFFEFBE3F7EA7BF1E3727E76711D186E110D6E08056E +09066E08056D09066E0500690E0E731A24834E7BBC74B4E175B3E177B4E179B6E27AB7E3 +7AB6E27BB7E27DB8E37DB8E384BCE4A1CBEBA6CEEBA5CEECA3CDEB9ECBEA9AC8E997C6E9 +97C6E999C7E998C6E997C5E896C6E995C6E995C5E896C6E998C7E99FCAEAA7CFECA9D0EC +A9D0ECA8CFECA5CEEBA0CBEA9ECAEA9AC8E999C7E999C7E998C7E898C6E998C7E997C6E8 +99C7E9A2CCEBA5CEEBABD1EDAED3EDAED3EEAED3EEAFD4EEAFD4EEB0D4EEAFD3EDB0D4EE +B0D4EEA7CFEC9DCAEA90C2E77CB7E37CB9E477AFDC6A97CA2A247715005C190761190761 +14005C5A6CA9A1D1EF9EC9E9A0CBEAA0CBEAA0CCEB9FCBEA9ECAEA96C6E88CC0E688BEE5 +80BAE47FB9E37FBAE47FB9E480BAE482BAE481BBE481BAE381BAE382BBE484BCE487BDE5 +93C4E89CC9EAA0CBEAA2CCEBA2CDEAA2CCEBA2CDEBA3CCEAA3CCEAA3CDEBA3CDEBA3CDEB +A2CCEAA2CCEAA7CFEB8EC2E76CAFE04FA0D93692D4328FD33490D33490D33691D43993D5 +3994D53B94D53591D456A3DA8CC0E68ABFE688BEE68ABFE58CC0E68FC2E891C3E796C6E8 +9AC7EA9DCAEAA0CBEAA0CBEA9FC7E798BCE1667DB911117401006706036C08056D08056D +0A076D08056D140F6B231C6899804DF9D03AF5CE3DF1CD4FF2CE58F3D367F5DA7FF7E299 +FAEDC2F9EBBCFAEBBCFAECBBFAEBBCF9EABCFAEBBCF9EAB8F8E7B0F8E5ACF7E1A0F7E09A +F6DE97F6DD95F7E19FF4D478EEC038EFC23FEFC03BEFBE38EEBE36EEBD35EFBF3BF2C956 +F3CD64F6DE97F9EBBEFBF2D8FCF3DDFCF3DCFCF4DCFBF4DCFBF3DCFCF2DBFBF2D9FBF1D4 +FBEFD0FAEECDF9ECC7FAEDCAF8E5AFF5D787F5D88CF5DB91F5DA91F4D990F5D890F4D98F +F3D990F3D890F4DA98F6E3B1F9EBC7FAEED1F9EFD2FAF0D7FBF1DAFBF1DAFAF1DAF9F1DA +F9F1DAFAF0D9F9EFD6F8EED1F8EDCFF7EBC9F7E9C4F7EAC7F5E3B7F3DBA2F0D491F0D698 +F0D698EFD699EED392E9C472E4BA5EE4BD65E7C77DEED6A1F4E5C6F3E4C2F4E5C4F4E5C5 +F4E5C7F4E7CAF4E7CAF3E6C7F2E2C2F1E0BCEBD4A5E6CA90D8AB4ED4A443D5A648D3A74A +D2A749D3A74BD2A64CD1A64CE1C68DE9D7AFE8D3A9E8D3A9E7D3A9E9D6AEEAD7B2ECDCBC +EEE1C5EFE2C7EEE2C8EEE1C7EDDFC5ECDFC3E3CFA7C9A459C19741B88928B17D14B27E18 +B07E19AE7C19BC923FD5BC89D7BE8FD8C195D7C196D8C297D8C298D7C297D7C298D7C299 +D7C49DDAC8A3DBC9A6DDCDADDECEB0C8AE7ABD9E62C0A36BC0A46DBFA36BD2BD97DACAAC +D3C19ECAB48AC3AB7CDCCFB7FBFDFFF9FAFCF9F9FAFAFAFBFAFAFBFAFAFBFBFBFCFBFBFC +FCFCFDFCFCFDFCFCFDFCFCFDFDFDFEFDFDFEFDFDFEFDFDFDFEFEFEFEFEFEFEFEFEFEFEFE +FEFEFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFE +FDFDFDFDFCFCFBFBFFF9F4D7958C74332E6E0A086E01006D08056D09066E08056D0A086F +09076F151C7D4C7DBE64A5D96DB3E26FB1E171B1E075B4E177B5E279B6E279B6E37AB7E2 +7DB8E37CB8E38FC2E7A8D0ECA7CFECA6CEEBA4CEECA0CBEB9ECAEA9AC8E997C6E896C6E8 +96C6E896C6E996C6E995C6E996C6E996C6E995C5E898C7E9A3CDEBA6CDECA9D0ECAAD1ED +A8D0ECA3CDEBA2CCEB9CC9E998C7E898C6E897C6E998C7E998C7E998C6E899C7E99ECAEA +A1CCEBA8D0ECACD2EDADD2EDACD1EDACD1EDAED3EDAFD3EDAFD3EDAFD2EDADD2ED95C5E7 +82BAE37DB7E279B5E17BB8E276ADDB6B96CA2A247715005C19076119076115005C5669A7 +9CCDED9AC6E79EC9E99FC9E99FC9E99FCAE99FCAE998C6E890C1E68BBFE682BBE480BAE3 +7FB9E380BAE481BAE482BBE482BAE382BBE482BBE482BBE482BAE385BCE490C2E798C7E9 +9DC9EAA1CCEBA3CDEAA2CCEBA2CCEBA2CCEBA2CCEBA2CCEBA2CCEBA3CDEBA3CDEBA2CCEA +A5CEEB9AC8E983BCE452A0DA3692D43390D33590D33591D43591D43692D43692D43A94D4 +3691D4469AD884BCE48ABFE587BEE589BEE58BC0E68FC2E790C2E795C4E899C6E99DC9EA +A1CCEBA0CBEAA4CEECA7D1EEADD9F37B99CB4C5DA4191A7B0A076E0A076E08056D09066D +07056E01006F08056E856F54C4A449ECC84EF0CC54F2D265F4D777F6DE8EFAECBEF9EBBC +F9EBBCFAEBBBFAEBBCF9EBBDFAEBBDF9EAB9F8E7B2F8E6ADF7E2A2F6E09DF6DF99F6DD95 +F7E09DF4D57BEEC03AEFC13EEFBF3BEFBE39EFBE37EFBE37EEBB32EEBA30EEBB32F1CA5D +F4D98AF9EAC2FBF1D4FBF1D7FBF3DAFBF3DBFBF3DCFBF3DBFCF2DAFBF1D5FAF0D0FAEFCE +FAECC7FAEDCAF8E5B2F4D788F4D88CF5DA91F5DA91F4D990F3D890F3D990F3D991F3D890 +F4DA96F5E1AAF9EAC5FAEED1F9EFD2FAF0D7FAF1D9FAF1DAFAF2DBFAF2DBFAF1DAFAF0DA +F9EFD7F9EED1F8EDCFF7EAC8F7E9C4F7EAC7F5E2B7F2DAA2EFD491EFD799EED698EED698 +EFD79AEFD79EEED294EACC86E8C57AEED49DF3E4C3F3E3BFF3E3C2F3E4C4F3E5C6F4E6C9 +F3E7CAF3E4C6F1E1C1F0DFBBEBD4A3E6C98DD6A84AD3A442D4A648D3A64AD2A64AD3A74D +D3A64DD2A44ADFC184E9D4ABE8D3A9E7D3A9E7D3AAE9D6B1EAD8B5ECDDBFEEE1C6EEE2C7 +EEE2C9EEE3C9EEE1C8EDE2C8E6D4B0CDAA65C59D4EBD9037B17F1AB07E1AB07E1BB07E1B +B68930D0B47CD6BE8ED8C397D8C297D7C297D7C298D7C197D7C29AD8C49CD9C5A0DBC9A6 +DBCAA8DDCDADDFD1B3CBB384BC9F64C0A46DC0A56EBDA169C2AA77D4C3A1D0BD98C7B085 +C6AF83C9B48BECE8DEF5F4F2F8FAFBF8F9FAF8F9FAF9FAFBF9FAFBFAFAFBFAFAFBFBFBFC +FBFBFCFBFBFCFCFCFDFCFCFDFCFCFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFDFDFEFEFEFE +FDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFCFCFCFCFBFB +FFFFFFDCD5BE1C186900006E0A076E0A076E09066E08056D08046D08046D06026B436BB3 +6FB9E769ADDF68ABDD6BAEDF6DAFE072B2E175B3E278B6E27AB7E37AB7E37BB7E27BB7E2 +96C5E8A9D0ECA6CFEBA6CFEBA5CEECA1CBEBA1CCEB9ECAE998C6E895C5E995C5E995C6E9 +95C5E995C5E995C6E996C6E996C6E995C6E89FCBEAA4CDECA8D0ECAAD1EDA9D0ECA4CDEB +A2CCEC9CC9EA98C7E898C7E997C7E998C7E998C7E997C6E998C7E89ECAEAA1CBEBA7CFEC +AAD0EDABD0ECABD0ECABD1ECAED3EDB0D5EEB3D6EFAFD5EFA3CEED8FC5EA88C2E884C0E8 +80BFE882C2EA7DB8E371A0D22B267915005B19076219076114005C596FACA4DBF7A2D3F0 +A8D6F2A8D6F2A8D5F1A7D4F0A6D3F09FCEED95C8EB91C5EA86BEE582BCE580BAE481BAE3 +82BBE481BBE482BAE383BBE483BCE582BBE482BAE384BCE48FC2E697C6E99CC9E9A1CCEB +A3CDEBA2CCEAA3CDEBA2CDEBA3CDEBA3CDEBA3CDEBA2CDEBA3CDEBA2CCEAA4CDEB9DCAEA +8FC2E755A3DB3792D43490D33491D43591D33692D33591D33591D33893D43792D43E96D6 +7EB9E389BFE587BDE489BEE58BC0E68EC1E68FC2E794C4E898C6E89DC9EAA0CCEBA1CBEA +A3CCEBA4CCEBA3CCEAA6D2EEACD9F24C5BA402006708056D08056D08056E09066D0B086D +06046E0D096D423663EDC84DF8D352F1D265F4D675F6DD8AF9EBBCFAEABCF9EBBBFAEBBC +FAEABCF9EABBFAEBBDF9EABAF8E7B1F8E5ADF7E1A1F6E19EF7E09BF6DE96F7E09DF4D57C +EEC03AEFBF3CEFBE3AEFBD38EFBE37EEBF38EFBD36EFBD37EEBD39F1C756F4D27BF8E5B1 +F9E9C0FAEBC5FBF0D4FCF2DAFCF4DEFCF3DDFBF2DBFAF1D6FBF0D1FBEFCEFAECC7FAEDCA +F9E5B2F3D787F4D88BF5D991F5DA90F4D990F2D890F2D891F4D993F3D891F4D995F6DFA8 +F9EBC5FAEED1F9EFD1F9F0D7F9F1D9FAF1DAF9F2DBFAF1DAF9F0DBFAF1DAF9EFD7F8EED3 +F8EDD0F7EAC7F6E8C3F7EAC7F4E3B7F1DAA2EFD490EFD799EED798EFD597EED496EFD79D +F1DBA8F1DBA9EBD197EED8A6F3E2BEF2E1BEF2E2C0F3E3C3F2E4C5F3E6C8F4E6C9F3E4C5 +F2E2C1F0DFBBEAD3A2E3C789D5A748D3A342D4A548D2A549D3A54BD3A74DD3A74ED2A449 +DEBE7FE7D2A7E8D4AAE7D3A9E7D3AAE9D6B1EAD8B5ECDCBFEDE0C6EDE0C7EDE1C8EFE3C9 +EEE1C7EDE1C9E5D5B1CEAD6BC6A054C09643B68626B2811FB18021B18324B58831CCAD73 +D5BD8CD9C499D7C297D7C297D6C198D6C197D7C29AD9C49DD9C6A0DBCAA7DCCBA9DDCEAE +E0D1B4CDB689BDA067C0A56EC0A56FBEA36CBCA067CFBC96CFBB95C7B084C7B187C5AF83 +D2C2A2E8E3D8FBFEFFF7F7F8F8F9FAF8FAFBF9FAFBFAF9FAF9F9FAFAFAFBFBFBFCFAFAFB +FCFCFDFCFCFDFCFCFDFDFDFEFDFDFEFCFCFEFDFDFEFCFCFEFDFDFEFEFEFEFEFEFEFEFEFE +FEFEFEFDFDFDFDFDFDFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFDFDFEFCFCFDEFEEF5D3D2E76D6899 +0905680B086F09066E08066E08056D0A097009066E22328C436CB35D98D169AEDF68ABDE +69ADDE6AADDF6AADDF6CAFDF6EB0E073B3E176B5E277B5E279B6E27DB8E39CC9E9A9D0EC +A7CEEBA5CEEBA4CEECA2CDEBA1CCEAA0CBEA9AC8E996C5E896C6E996C6E996C6E996C6E9 +96C6E996C6E996C6E995C5E89CC9E9A1CCEBA6CFECAAD1EDAAD0ECA6CEECA4CDEC9ECAEA +9AC8E998C7E997C6E898C7E998C7E997C7E998C6E89BC8E99ECAEAA5CEEBA9D0ECA9CFEC +AACFEBAACFEBABCFEAAACDE9A2C7E690BAE08DB9DF779FCF658BC15A7FB94460A43E579E +3548932D36851D106818035F19066119066118045F211D72333D8936408B414D94475599 +5162A2657DB56E88BC7A9BCA86B2DB86B4DD7FB3DD7DB3DE7CB5E07FB7E180B8E280B9E2 +81B9E382BAE382BBE482BAE383BBE484BCE48DC1E696C6E89AC8E9A1CCEBA2CCEAA2CCEA +A2CCEBA1CCEBA1CCEBA2CCEBA2CCEBA3CCEBA3CDEBA2CCEAA3CDEBA0CBEA98C8E961A9DD +3D96D53792D43390D43591D43591D43591D43591D33893D43993D53C95D574B4E185BDE4 +89BEE589BEE58BC0E68EC2E68FC2E795C5E89AC8E99DC9EAA0CCEBA1CBEAA3CDEBA5CEEC +A4CDEBA3CBEAA6CFEC87A8D46078B523288308056D09076E09066E09066D09066D0E0B6D +110D6B87725CD0B255EBCC66F4D673F6DC84F9EBB9FAEBBDF9EBBBFAEBBCFAEBBCF9EABC +FAEBBCF9EABAF9E8B4F8E6AFF7E2A4F7E19EF7E09BF6DE97F7E09EF4D680EFC13EEFC03C +EEBE3AEFBE3AEFBE3AEFBF3AEFBD36EFBD39EEBE3BF1C758F3D27AF8E5B3F9E8BEFAE8BF +FAEBC4FAEBC7FAEFD0FBF2D8FBF2D9FBF1D6FAF0D1FAEFCEF9ECC7FAEDC9F9E6B4F4D788 +F4D88BF5D991F4D991F3D991F3D991F3D991F4D994F3D892F3D995F4DEA5F8EAC4FAEED1 +F9EFD2F9F0D6FAF1D9FAF1DAF9F2DBFAF2DAF9F1DAFAF0DAF9EFD7F9EDD2F8ECCEF7EAC6 +F6E8C3F7EAC8F5E3B6F2DAA1EED491EFD798EED798EFD699EED698EFD79DF0D8A3F0DAA7 +F0DBACF3E2BCF4E5C5F2E1BDF2E2BFF2E3C1F2E3C3F3E4C7F3E5C7F2E3C4F1E1C0F0DEB9 +EAD29FE3C586D4A747D2A341D3A545D2A648D2A64BD2A74DD3A74FD1A54BDCBB7AE7D0A3 +E7D3A9E6D2A9E7D3AAE9D7B2EAD9B6ECDDBFEDE0C5EEE0C6EEE1C8EEE2C8EDE0C7EEE1CA +E5D4B1CEAE6CC7A258C29A4ABA8D33B7892FB5872CB3872BB68B35C9AA6CD5BC8CD9C49A +D7C297D7C297D6C198D6C198D7C29BD8C49ED9C7A2DBCAA8DCCBAADDCFAFE0D2B5CEB88D +BEA168C0A46EC0A670BFA46EB6985CC5AE7FCAB58BC7B286C6B185C6B186C7B188D4C6A8 +F3F2F0F6F7F7F7F7F8F8F9F9F8F9FAF9F9FAF9F9FAFAFAFBFAF9FAFAFAFBFAFAFAFAF9F9 +FAFAFBFBFBFBFBFBFCFCFCFDFCFCFDFCFCFDFDFDFDFDFDFEFDFDFEFDFDFEFDFDFEFEFEFE +FEFEFEFEFEFEFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFCFCFDFFFFFFD0CFE327237F0C0B7204026C09066E +09066E09076E08056D0A097014197B5890CB6EB7E66AAFE068ACDE69ADDF6AADDF68ACDE +67ACDE67ACDE67ACDE6BAEDF71B1E173B2E076B4E27EB9E4A2CCEAA9CFECA8CFECA6CFEC +A5CEECA5CDECA3CDEAA2CCEB9CCAEA96C6E895C5E895C5E895C5E896C6E895C5E896C6E9 +96C6E995C6E997C7E99CC9EAA4CDEBA8D0ECABD1ECA9D0ECA6CEEBA1CBEA9DC9E998C7E8 +97C6E998C6E897C6E897C4E796C4E797C5E79AC7E9A3CDEBAAD2EDADD5F0B5DCF3B9E1F6 +B2D8F18FB5DC6C8CC13B4B93272E7F05005D05005C04005C03005A02005A03005A06005A +15045F1906611805601805601906610B005C00005800005800005901005901005A03005B +03005C04005C110D682226794F69A95D81BA7CB6E18AC8EE89C6EC86C1E885C0E782BCE4 +82BBE481BAE382BAE383BAE38ABEE593C4E798C7E9A0CCEBA2CBEAA2CCEBA2CBEBA1CBEB +A0CBEBA0CBEBA1CCEBA3CDEBA3CDEBA2CCEBA1CBEAA1CCEAA0CCEB6CAFDF4599D73C95D5 +318FD43490D43591D33591D33591D33792D43D96D63993D568AEDF80BBE48ABFE689BEE5 +8BBFE58DC1E68FC2E794C5E89BC9EA9DC9EA9FCBEAA1CCEAA3CDEBA5CEECA5CEEBA5CDEC +A5CEECA7D1EDADDAF3708DC306036C06026B09076F09066E09066E09066E03016E0F0C6D +3B3167E4C666F6D772F3D780F9EAB6FAECBDF9EBBBFAEBBDFAEABCF9EABCFAEBBCF9EABA +F9E8B6F8E7B2F7E3A6F6E2A0F6E09DF6DE98F7E09FF4D783EFC13FEFC13FEEC03CEFBF3B +EFBF3CEFBF3DEFBD37EFBE3BEEBE3DF1C758F3D075F8E4B1F9E7BDF9E7BCF8E8BDF8E8BD +F8E8BFF9EBC7FAEDCCFBF1D5FBF0D4FBEFD1FAEBC7FAECC8F8E5B4F5D78AF5D88CF5D990 +F3D891F3D891F3D892F4D995F4DA98F3D995F3D995F3DDA1F7E9C3F9EED1FAEFD3F9F0D6 +FAF1D9FAF1DAF9F1DBFAF2DBF9F1DAFAF0D9F9EFD7F8EDD1F8ECCEF7E9C6F6E8C3F7EAC9 +F5E3B6F2DAA1EED391EFD698EFD698EFD799EED799EFD79EEFD8A3F0DAA8F1DEB1F4E6C7 +F7EDD7F3E5C3F2E1BEF1E1BDF2E2C1F3E4C5F3E4C5F2E2C2F1E0BDEFDDB8E8CF9CE2C17F +D3A544D1A23FD2A443D2A547D3A64BD2A64CD2A851D0A54CDAB977E6CFA1E7D2A8E6D2A8 +E7D3AAE9D6B2EAD8B7ECDDBEEDDFC5EEE0C6EDE1C8EDE0C7EDE0C7EDE2CAE4D4B0CEAE6C +C8A359C39C4EBC923FBB913EB89039B68D34B78E3AC6A664D4BC8CD9C49BD7C197D7C297 +D7C198D6C299D7C39CD7C39ED9C7A2DBCBA9DBCBABDDCEB1E0D2B7D0BC93BDA26ABFA46F +BFA571BEA570B19052B79A61C2AA7BC8B389C5B085C6B086C5AF85C3AD81DFD6C2F9FBFF +F8F9FBF8F9FBF8F9FBF8F9FAF8F9FAF9FAFBFAFAFBFBFBFDFBFBFDF8F8F8FBFCFDFEFFFF +FEFEFEFBFCFDFBFBFBFDFDFEFDFDFEFCFCFEFCFCFEFCFCFDFDFDFEFEFEFEFDFDFEFDFDFE +FDFDFDFDFDFDFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFFFFFFF7F6FAE7E7F16F6DAA0C09700E0B7008056D09066E08056D06036C +0300682A41954B7BBD61A1D767ACDF67ACDE69ADDF69ADDE6AADDE68ADDE67ACDE68ADDF +68ADDE69ADDF6DB0DF70B1E076B4E282BAE5A4CDEBA6CEEBA5CDEBA4CDEBA3CDEBA3CDEB +A2CCEAA1CCEB9ECAEA99C7E997C6E997C6E997C6E997C6E997C6E895C5E893C4E892C4E8 +93C4E896C6E8A1CCEAA7CEECAAD0ECA9D0ECA7CFECA2CCEB9FCBEA99C8E997C6E898C7E9 +9BCAEBA0D1F0A0D2F09ECDED9ECCECA0CBEA9BBFE18DACD46E82B76171AB3C438C2D3382 +24297B16166E100D6806005F07005F07005F07015F07015F08015F0B025F160560190661 +1805601805601906610F036007016008016008016008016007015F07005F07005F07005F +0A03610F0B661B1E74202579293585384C95455FA26086BE6A96CA7FB6E182BCE584BEE6 +88C3EA8AC6EB8EC5EA93C6E998C7E9A0CBEAA2CCEBA2CCEAA1CBEBA1CCEBA1CCEBA0CBEB +A1CCEBA2CCEBA2CDEBA2CCEBA1CBEAA1CCEBA4CDEB73B3E1479BD73F96D5328FD33390D3 +3692D43A94D53893D43691D43C95D53893D45EA7DC7AB7E28BC0E688BEE58ABFE68DC1E6 +8EC2E793C4E899C7E99CC9E99FCCEBA1CCEAA3CDEBA5CEECA4CDEBA5CEEBA5CEECA3CCEA +A3CCEB93BDE240529E16187907026B08036C08056D09066D09066D0F0B6D110D6C897769 +FEDE70FBDE7DF8E8B4FAECBFF9EBBBFAEBBCFAEABCF9EABCFAEABBF9EABAF8E8B5F8E7B2 +F8E3A8F7E2A2F7E09EF6DE99F7E09FF4D885EFC344EFC241EEC13FEFC03FEFC03EEFBE3C +EFBD38EFBE3CEEBF3EF1C757F3D072F8E4B1F9E8BEF9E8BDF8E9BFF9E9C0F9E9C1F9E9C0 +F9E8C0F9EAC2FAECC7FAECCAFAEDC9FAEECBF8E7B8F3D88BF4D88CF4D890F3D991F4D992 +F4D994F4DA96F4DA98F4D996F3D997F3DD9FF7E9C2F9EED1FAEFD3F9F0D7FAF1D9FAF1DA +F9F2DBFAF2DBF9F1DAFAF0D9F9EFD7F8EDD1F8ECCEF7E9C6F6E8C3F7EAC9F4E2B5F1DAA1 +EED391EFD699EFD698EFD79BEED69BEFD79EEFD9A3F0DAA8F1DDAFF4E5C4F7EFDBF6ECD3 +F4E7CAF1E1BFF2E1BFF2E2C2F2E2C3F1E2C0F0DFBCEEDCB5E8CE9AE1C17ED3A442D0A03D +D1A343D1A446D1A54AD1A64CD1A750D0A44DDAB875E4CD9DE7D2A9E6D2A9E7D3ABE9D7B3 +EAD9B7ECDDBFEDDFC5EDE0C6EEE1C8EEE0C8EDE0C7EDE0C8E4D3AFCDAD6CC6A157C29B4C +BC9240BC923FBA903CB78D38B88F3CC4A360D3BB8AD9C59CD7C297D6C297D6C198D6C299 +D7C39DD8C49FD9C7A3DCCBAADCCCACDDCEB0E0D2B6D2BE96BEA26ABFA46FBFA46FBEA26C +AF8F4EAC8C4BBBA06AC8B48AC5B084C5B086C5B088C6B289D0BF9FDACEB8E7E1D5F4F4F2 +F4F4F3F8F9FAF9FAFBF7F8F9F6F5F4F4F2F0E4DDCFDDD3C0DFD5C3DED5C4E4DDCFFCFCFC +FEFFFFFCFCFDFCFCFDFDFDFEFDFDFEFDFDFEFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFE +FDFDFDFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFFFFFFFFFEFEFEFCFCFD +FFFFFFA5A4CA25227F0B0A6F04016B08056D09066E08056D0C0A711010753B4F9D73B1E0 +70B8E56BAFE06AADDF69ADDF68ACDF69ACDE6BAEDF6CAFDF6BAEDF69ADDE69ADDF69ADDF +6BAEDE6DAFDF7CB7E38DC1E7AAD1EDAFD3EDB3D5EEBDDBF1C1DDF1CCE3F3D2E6F5D5E8F5 +DAEBF7DBEBF7DAEAF7D9EAF7D7E9F7D1E6F5CEE4F4C6E0F3BCDAF1B5D6EFA5CEECA0CBEB +A2CCEBA4CEECA8CFECABD1EDAAD1EDA5CDEBA3CBEA9DC8E997C5E896C4E78BB4DC799BCA +6E8DC15164A545549924277A0D09650B056204005D02005A00005500005600005803005B +04005C07005F07005F07005F07005F06005F07005F0A005E160560190661180560180560 +1906610F025F06005E07005F07005F07005F07005F07005F07005F07005F06005E05005D +02005A01005900005600005702005A08016008026015166F293585384A945272B05B7FB9 +77A5D486B6DF92C1E59ECAE99FCAE9A0CAEAA0CBEAA0CBEAA0CCEBA0CCEAA1CBEBA1CBEB +A2CCEBA2CCEBA1CBEAA1CCEBA6CFEC83BBE44C9ED8459AD63490D33290D33692D43D96D6 +3B95D53692D33A94D43A94D54A9CD86AAEDF8CC0E684BDE589BFE58DC1E68DC1E693C4E7 +97C6E89CC9E9A0CCEBA1CCEAA3CDEBA5CEECA4CDEBA5CEECA5CEEBA4CDECA3CCEBA4D1EE +94C3E77FABD825378E080B720A086F08056D09066D08056E04026E07056D8B786ECCB376 +F9E7AEF9EAC0F9EABCF9EABCFAEBBCF9EABCFAE9BBF9E9B9F8E8B5F9E7B3F8E4A9F8E2A4 +F7E09FF6DE9AF7E09FF4D98BEFC64CEFC343EEC141EFC142EFC141EFBF3DEFBD39EFBE3C +EEBF3FF0C756F2CE6DF8E5B1F9E9BFF9E9BEF9E9C1F9EAC2F9E9C1F8E7BDF8E7BBF8E5B3 +F7E2AEF6E1ADF7E3B1F7E6B7F7E4B1F2D78BF3D88CF4D990F4D890F5D993F5DB97F4DB98 +F5DB97F4DA97F3D998F3DB9DF7E8C1F9EED2FAEFD2F9F0D7FAF1D9FAF1DAFAF1DBFAF1DA +F9F0D9FAF1D9F9EFD7F9EDD1F8ECCFF7E9C7F6E7C3F7E9C7F3E1B4F0D99FEED391EFD698 +EFD698EFD799EED598EFD79DEFD9A3F0DBA9F0DCAFF3E5C2F8F0DCF8EFDBF7EEDAF6ECD5 +F4E7CCF2E1BFF1E0BEF0DFBCEEDBB5ECD8ADE6CA92DFBD76D19F39CF9E3AD0A242D0A344 +D0A346D0A349D0A64FCFA44CD7B56EE2C995E7D3AAE6D2AAE7D3ACE9D8B5EADAB9ECDEC1 +EDE0C6EDE0C7EEE1C7EEE1C7EDDFC6ECDFC5E3D0AACAA762C39A4DBE9543B98F3ABA913E +BA9241BA9241BA9241C19D58D2BA89DAC69ED6C197D6C197D5C197D6C198D7C49ED9C5A1 +DAC9A6DCCCACDDCDAEDDCEB0E0D2B6D4C19BBDA26BBEA470BCA26CBA9E66AA8744976E1E +AA8948C9B58CC5B084C5AF86C6B28AC8B48EC7B38DC5B28BC9B793CEBFA0D2C4A8D9CEB7 +D9CDB7D4C7ACCFC0A3CEBFA1CEBFA1CFC1A4CFC1A5C7B797C1B08BD9CEB9EFECE6F9F9F9 +FCFCFDFBFBFCFCFCFDFCFCFDFCFCFDFCFCFDFDFDFDFDFDFEFDFDFEFEFEFEFEFEFEFDFDFD +FEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFFFFFF403E8E +0000650B086F09066E09066E09066E05016A0E0D732C3A9073A2D47FBEE76FAFDE6EB0DF +6EB0E06AADDF68ACDE69ACDE6CAEDF6FB1E16EB0E06AADDE69ADDF6AAEDF6AADDE68ACDE +7CB8E38EC2E7B0D4EFC8E2F3D5E9F6E6F2F9E7F1F9E7F1F9E6F1F9E6F1F9E5F0F9E4F0F9 +E2EFF9E2EEF9E2EEF9E3EFF9E3F0F9E4F0F9E5F1F9E3F0F9D0E5F5C1DDF1AAD1EC9FCCEB +A4CDEBA9CFECAAD0ECACD4EFADD7F1A7D2EF9ECEEE98C8E96885BB120F6A010059000057 +00005802005B04005D05005D07005F07015F09026109026008026007015F07005F06005F +07005F07005F07005F06005F07005F0A005E1605601906611805601805601906610F025F +06005E07005F07005F07005F07005F07005F07005F06005E07005F07005F080160080160 +08026008026007015F06005E06005E04005C02005A01005900015600005541549B739CCD +8EBCE2A6D5F1A7D3F0A6D2EFA3CEECA1CCEB9FCBEA9FCCEBA1CCEBA2CBEBA3CDEBA2CCEB +A0CBEBA1CCEAA5CEEB89BFE54F9FDA499CD83792D43290D33592D43C95D53C96D53993D4 +3993D43C94D54297D662A9DD8BC0E684BBE487BEE58CC0E78DC1E693C4E798C6E89DC9EA +A1CCEBA2CCEAA4CEEBA5CEECA4CEEBA4CDECA5CDECA5CEEBA4CEECA0CAEA95C4E797CFEF +4D7FBE0B22830A066E08056D09066E09066D0B076D07046E18136D6C5D72FFF5ADF8EAC0 +F9EABBFAEBBDFAEBBDF9EABCFAEABBF9EAB9F8E8B5F9E7B2F8E4A9F8E1A4F7E1A0F6DE99 +F7E09EF4DA8DEFC753EFC345EEC040EFC142EFC040EFC03DEFBD38EEBD3AEEBE3FF0C757 +F2CE6BF9E5B3F9E9C0F9E9C0FAEAC2F9EAC2F8E9C0F8E7BDF9E8BCF8E5B5F7E2B0F6DFA9 +F4DA9DF4DC9FF4DC9DF2D282F4D88DF5DC97F4DA94F4D993F5DA98F4DA97F5DB96F4DA97 +F3DA98F3DB9EF7E8C0F9EED2FAEED2F9F0D7FAF1DAF9F1DAFAF1DBFAF0DAF9F1D9FAF1D8 +F9EFD6F8EDD1F8ECCFF7E9C7F6E8C3F7E9C7F3E1B3F0D99EEED391EFD699EFD699EED697 +EFD596EFD79DEFD8A4F0DBAAF0DCB1F3E4C3F8EFDCF7EED9F7EED9F8F0DEF7EFDBF3E4C6 +F0DFBBEFDDB8ECD9B0EBD6AAE4C78DDDB86FCE9B32CE9E38D0A241CFA244D0A344CEA347 +CFA54FCEA34AD7B36DE2C793E7D3ABE6D3A9E7D4ACE9D8B7EADABAECDEC2EDE1C7EEE1C8 +EDE0C7EEE1C7EDDFC5EBDEC3E1CEA7C7A35BC19747BC913CB78C33B88F3ABA9242BB9445 +BA9344C19D58D2BA8ADAC6A0D7C298D5C196D5C097D6C199D8C49FD9C6A2DBCAA7DCCCAD +DDCDAFDECFB1E0D2B6D4C09ABDA26CBEA470BBA06AB89B63A7844090660FA3803AC8B48C +C4AF85C4AF86C7B38CC8B48FCAB793CAB895CAB896CAB897CAB896C7B592C4B18DC4B28C +C6B491CABA9AD2C4AAD5C8AED6CAB2D3C5ADCDBDA1C5B594CEC1A6F9F9F9FCFCFDFCFCFC +FBFBFCFCFCFDFDFDFEFDFDFEFDFDFEFCFCFDFDFDFEFEFEFEFDFDFEFDFDFDFEFEFEFEFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFFFFFFF8F8FBEBEAF38F8EBD0E0B710A076E09066E +08066E08056D0B0A700A0A713951A079A9D883B6DF80BAE47BB7E277B5E274B3E16FB1E0 +68ADDE68ACDF69ADDE6EB0E06FB1E06CAEDF6AADDF6AADDF70B1E074B3E1A5CEEBBFDCF1 +DBEBF7E0EEF8E1EFF8E3F0F8E3EFF8E3EFF8E3EFF8E3EFF8E3EFF8E3EFF8E2EFF8E0EEF8 +E0EDF8E0EDF8E0EDF8E0EEF8E0EEF8DFEDF8DDECF8DCEBF8D7E9F6D0E6F5C2DDF1B0D3ED +AED2EC9BBDDF90B0D6728CBF2F36851A1A7115136C0B066309036108026008026007015F +07005F07005F07005F07005F07005F06005E07005F07005F07005F07005F07005F07005F +07005F06005F07005F0A005E1605601906611805601805601906610F025F06005E07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07015F080160080260080261100D6815146D1B1C72586EAA +7694C48AADD598C0E29DC6E79FCBEA9FCBEAA0CBEAA1CCEBA2CCEAA1CCEBA0CBEAA0CBEA +A4CDEB92C4E858A4DB4D9ED93893D43290D33591D43A94D43B95D53C95D53D95D53F96D6 +3E96D558A4DB89BFE686BDE487BEE58BBFE68CC0E692C4E897C6E89CC9EAA1CCEBA2CCEA +A3CDEBA5CEECA5CEEBA5CEECA5CEECA5CEEBA5CEECA2CCEB95C5E894C5E85DA0D62B7BC3 +16308D08056D09076E09066E09066E09066E0E0A6E1B156BAC9F9AFDEEBFF6E7BBFAEBBC +F9EABDF9EABCFAEABBF9E9BAF8E8B6F9E7B3F8E4AAF8E2A4F7E1A0F6DF9CF7E1A1F5DB90 +F0C752EFC345EEC140EFC042EFC042EFC041EEBE3CEFBE3EEFBF42F1C657F3CD6CF8E4B1 +F9EAC1F9E9C1FAE9C1F9EAC2F8E9BFF8E7BCF9E6BBF8E5B5F7E2B0F6E0AAF5DC9FF5DCA1 +F2D489EBBB48EEC358F1D17DF1D385F3D892F3DA97F4DA97F4DA98F3DA98F3DA98F3DB9B +F7E8BFF9EED2FAEFD2F9F0D7FAF1DAFAF1DAFAF1DAFAF0DAF9F1D9FAF1D9F9EFD6F8EDD1 +F8ECCFF7E9C8F6E8C4F7EAC9F3E1B1F0D99DEED492EFD598EED698EFD698EED598EED69C +EED8A4F0DAAAF0DCB1F4E4C3F8EFDCF7EED9F7EEDAF7EFDBF8EEDCF6EBD5F4E8CDF0DFBD +ECD7ADEAD4A5E3C588DBB569CC982CCD9A33CE9E3CCFA142CFA244CEA247CFA44DCDA249 +D6B26AE0C58FE7D3AAE6D3AAE7D4AEEAD9B9EBDBBCECDFC2EDE0C6EEE0C7EDE0C7EDE1C7 +ECDFC4EBDEC3E1CDA5C5A055BD9340B98E37B68A31B78C36B99240BA9444B99445BF9D56 +D2BA89DBC8A3D8C49DD7C39BD6C29AD6C29BD8C5A0D9C7A3DAC9A8DDCDAEDDCEB0DDCEB1 +DFD2B6D4C19DBDA26DBEA36EB99D65B6985EA27E378B5F069C772CC6B186C5B086C5B086 +C7B48EC9B590CAB792C9B793CAB896CCBA9ACCBB9ACABA99C9B896C8B795C9B897CCBD9D +D1C4A8D3C6ACD4C7AED5C7B0D4C6ADCBBC9EC6B697EAE5DBFCFDFFFAFAFBFBFBFCFBFBFC +FCFCFDFCFCFDFCFCFDFDFDFDFCFCFDFDFDFEFEFEFEFDFDFEFEFEFEFEFEFEFEFEFEFFFFFF +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFEFEFFFFFFFDFDFEFFFFFFF6F6FA6D6BA823227D0000680B076F08066E09076E08046C +0C0E731D2D896AA1D68EC6EA8ABFE582BBE481BAE47CB8E379B7E373B3E169AEDF67ACDE +68ADDE6BAFDF6EB0E06DAFE069ADDF66ABDE8BBFE7ACD1EDE0EEF7E3F0F9E5F0F9E4F0F9 +E5F0F9E5EFF9E4EFF9E3F0F9E4F0F9E3F0F9E3EFF9E4F0F9E3EFF9E0EFF9E0EEF9E1EDF9 +E0EDF9E1EEF9E0EFF8E1EEF9E1EEF9E1EFF8E2EEF9E2F0F9E7F3FAD3E8F7C3E1F54B5799 +00005A03035B02005A02005A03005B06005E06005E07005F06005E07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F06005F +07005F0A005E1605601906611805601805601906610F025F06005E07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F06005E06005E06005E04005C03005B02005A01015A000054222477 +7591C29DC7E7A7D6F2A3D0EDA0CBEA9EC8E89FCAEAA1CCEBA0CBEAA0CBEAA2CDEB9AC7E9 +60A9DD50A1DA3B95D53390D33591D33994D53B95D63D96D63F96D54198D63C95D551A0D9 +86BDE587BEE587BEE589BEE58AC0E691C3E896C6E89CC9EAA2CDEBA2CDEAA4CDEBA4CDEC +A5CEEBA6CFECA6CFECA5CEEBA6CFECA3CDEB96C6E895C5E869ADDF3E9DDC2B73BE0A086F +07016B09076F08066E09066E0A076E00006B35307BF5E7BCFFF0BFF7E8BCF9EABCFAEBBC +FAE9BBF9E9B9F8E9B7F9E8B4F8E4AAF8E3A4F7E1A2F6DF9EF7E1A3F5DB90F0C952EFC344 +EEC140EFC042EFC143EFC143EEC040EFC043F0C046F1C558F2CC6AF7E4B1F9EAC3FAE9C1 +FAE9C2F9E9C1F8E8BFF9E7BCF8E6BBF7E4B7F7E2B0F6E0ACF5DC9FF5DDA1F2D284E9B130 +E9B230EABA44ECC158F2D489F4DE9EF4DC9BF4DA99F3DA98F3DB98F3DB99F7E8BEF9EFD3 +FAEFD2F9F0D8FAF1DAFAF1DAFAF0DAFAF1D9F9F0D9FAF1DAF9EFD7F8EDD1F8ECCFF7EAC9 +F6E9C7F7EBCBF3E0B0F0D89CEED492EFD599EED599EFD599EED498EED59CEFD8A3EEDAA8 +F1DDB1F4E5C4F8EFDCF7EDD9F8EED9F7EFD9F8EED9F7EEDBF7EFDEF3E6CAECD8ABE9D1A0 +E2C486DAB467CA9528CB982FCD9C39CF9F40CFA144CDA146CEA34CCDA247D4B165DEC38C +E6D2A9E6D3AAE7D5AFEADABAEBDCBEEDE0C4EEE1C8EEE0C8EDE0C7EDE1C7ECDEC3EADDC3 +E0CBA2C39C50BA8F3AB68A32B4872DB48931B8903DB89143BA9346BF9C54D2BA89DCCAA7 +D9C6A1D9C49FD7C39CD7C49DD9C7A2DAC9A5DBCAAADCCDAFDCCEB0DDCEB1DFD1B6D5C29F +BDA36DBCA26CB79A61B3955A9D782C895B00966F20C2AC80C6B086C5B087C8B58FC9B791 +C9B793C9B794CAB896CBBB9ACCBB99CAB997C9B896C9B796C9B898CCBC9DD1C3A8D1C5AB +D3C6ACD6CAB3D7CDB8D2C6ACC7B899D6CBB5FEFFFFF9F9F9FAFAFBFBFBFCFCFCFDFBFBFC +FCFCFDFDFDFEFDFDFDFCFCFDFDFDFEFEFEFEFDFDFEFDFDFDFDFDFDFEFEFEFFFFFFFEFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE +FCFCFDFFFFFFA9A7CC1B1979120F7308056D09066E08056D08056D0200673346984D89C8 +6DAADB85BDE587BDE584BCE481BAE37EB9E37BB7E377B5E26DAFDF69ADDE68ADDE6AAFDF +69AEDF6BAEDF71B1E09DC9E9C3DEF2CAE2F3DCECF7E0EEF8E2EFF8E3EFF8E3EFF8E4F0F9 +E4F0F9E3F0F9E4F0F9E4F0F9E3F0F9E4F0F9E3EFF9E2EFF9E1EEF9E0EDF9E1EDF9E1EEF9 +E1EFF9E0EEF8E1EEF9E2F1FAE2F1FAE0EEF8DDE8F3C3C9DFBABED87273A838337F0B0762 +01005B06005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F06005F07005F0A005E +1605601906611805601805601906610F025F06005E07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07015F08016007005F0F0A661D1E73292D7E +7695C593BADEA2CEECADDCF6A5D2EFA0CBEAA1CCEBA0CBEAA2CCEB9FCAEA65ABDE51A0D9 +3C95D53490D33490D33993D53C95D63C95D53F96D54198D63B95D5489CD881BBE489BEE5 +88BEE589BEE68BC0E690C3E795C6E89BC9E9A2CCEBA2CCEAA4CDEBA5CEECA5CEEBA6CFEC +A5CEECA5CEEBA6CFECA4CDEB98C6E898C6E870B0DF3F96D5338CD01E429A0F167A07026B +08056D08056D09066E08056D161272756D92C6BAACFFF8C1FAEBBDF9EABCFAEABBF9EABA +F8E8B7F9E7B5F8E5ACF8E3A6F7E1A3F6E09EF7E1A3F5DC91F0C954EFC345EEC140EFC142 +EFC142EFC042EEC042EFC045F0C047F1C659F1CC6BF8E4B0FAEAC3F9E9C1F9EAC1F9E9C1 +F9E8BEF8E7BCF8E6BAF8E5B6F7E2AFF6E0ABF5DC9FF5DDA2F3D388EAB436EAB434E9B63C +E9B840ECC157EECB70F1D283F4DC9AF4DC9CF3DC9CF2DA99F7E7BEFAEFD4F9EED4F9F0D8 +FAF1DAFAF1DAFAF1DAFAF0D9F9F0DAFAF1DAF9EFD7F9EDD2F8ECCFF7EACAF6E9C7F7EBCB +F3DFAFF0D89BEED493EFD599EFD598EED598EED498EED59CEFD8A3EFD9A8F1DCB0F4E4C2 +F8EFDCF7EDD9F7EED9F8EFDAF8EED9F7EDD9F7EED9F5EAD2F2E4C5EDD9B0E1C283D7AE5E +CA9427CA972ECC9B37CD9F3ECEA042CDA045CEA24ACCA045D3AE62DDC086E6D1A7E6D2AA +E7D4AEEADABAEBDCBEECDFC4EDE1C6EDE0C7EDE0C7EDE0C6EBDEC3EADCC1DEC99EC29C4F +BB8F3BB68A32B3852AB4882FB78E3BB78F3DB89143BE9A54D1B887DCCAA7DAC7A2DAC6A1 +D8C49FD7C59FD9C7A3DAC9A6DBCBABDDCEB0DDCEB0DCCDB1DFD1B7D5C4A1BEA36EBCA16B +B5985FB192559B7326885B02926918BFA779C6B188C5B088C9B792C9B792C9B793C9B794 +C9B896CCBB9ACBBA99C8B694C7B693C9B796CAB999CCBC9ED1C3A8D1C4AAD2C5ABD6CAB2 +D8CDB6D6CBB5D1C4ABCFC1A7F4F2F0FCFDFFFAFAFBFAFAFBFBFBFCFCFCFDFCFCFDFCFCFD +FDFDFEFDFDFEFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFCFCFDF6F6F9C2C1DB +16147600006808056D09066E08056D0C097008066E4B4C9795C1E560AEE170B2E07DB8E2 +82BBE484BCE481BAE37FB9E47EB9E47CB8E376B4E171B2E16CAFDF70B0E077B5E2A9D0EC +C1DDF1D7E9F6D6E8F6D7E9F6E0EDF8E1EEF9E1EEF8E2EFF9E3F0F9E3EFF9E3EFF9E4F0F9 +E3F0F9E4F0F9E4F0F9E3F0F9E3EFF9E4F0F9E2EFF9E0EEF8E1EDF9E0EDF8E0EDF8E1EFF9 +DEEBF6DAE4F2CDD4E6C4C7DDB8B7D2B5B2CFB6B2CFB7B4D0B9B7D27975A91E186E0E0764 +08015F07005F06005E07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F06005F07005F0A005E160560190661 +1805601805601906610F025F06005E07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F06005E07005F05005D01005900005804005C06005E +465498677FB689ACD5A3CFED9FC9E9A0CAE9A3CCEBA5CDEB72B3E057A4DB4097D63390D3 +3591D33993D53A94D53A94D53B94D53E96D53D95D54096D679B6E28ABFE587BDE589BEE5 +8BC0E690C3E795C6E89BC9E9A2CBEAA3CCEBA5CEEBA5CEECA5CEEBA5CFECA5CFECA6CEEB +A6CFEBA4CEEC9AC7E999C7E977B5E1499BD73291D53892D3347FC5121F8009066E09076F +08056D09066E08056D000068312D7BD7CAB1F0E2B9FAEABCF9EABCF9EABBF9E9B7F9E8B5 +F8E5ADF7E4A8F7E2A5F6E09FF7E2A3F5DB92F0C859EFC245EEC142EFC144EFC143EFC043 +EEC043EFC147F0C149F0C75BF1CC6BF8E3B0F9EAC3F8E9C1F8EAC1F8EAC1F9E8C0F8E7BE +F8E8BDF8E5B7F7E1AFF6DFA9F5DBA0F5DDA4F2D48BEAB63AE9B435E8B437E8B437E8B336 +E8B337E9B844ECC360EECA72F1D690F2D997F7E6BCF9EFD5F9EFD4F9F0D9FAF1DAFAF1DB +FAF0DAFAF0DAF9F0DAFAF0DAF9EFD8F9EDD2F8ECD0F7EACAF6E9C8F7EBCBF2DFACEFD799 +EED494EFD598EFD497EED598EDD498EED69DEFD7A3EFD9A8F0DBAEF4E3C1F8EEDCF8EDD9 +F7EDD9F7EDD9F7EEDAF6EEDAF5EDD8F5ECD4F5EAD0F4E7CAE7CF9BD9B463C99529C9962D +CB9A36CC9D3FCC9F41CCA044CDA148CB9E42D1AA5CDBBD80E4D0A5E5D1A8E6D3ACE9D9B8 +EADBBCECDDC1ECDFC5EDDFC6ECDFC6ECDFC5EADDC3E8DBBEDCC799C19A4CBA903BB68A32 +B28429B3872FB58C38B58C39B58D3DB9944ACEB581DCCAA7DAC7A1D9C7A2D9C6A3D9C7A3 +DBCAA8DCCBABDDCEB0DDD0B2DDCFB1DCCDB1DED0B5D5C4A1BDA16CBA9E68B19459AA8A49 +936A18895D068C620EB79D6AC7B38CC6B28ACAB793C9B793C9B794C8B793CAB996CAB999 +CAB997C7B693C6B493C9B998CCBD9ECDBEA1D1C3A8D2C5AAD0C3A8D4C8B0D7CBB4D9CFBA +DBD1BEC9BA9CDED6C7F7F7F7F9F9FAF9F9FAFAFAFBFBFBFCFBFBFCFBFBFCFCFCFDFCFCFD +FDFDFEFCFCFDFDFDFDFEFEFEFEFEFEFDFDFDFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFBFBFCFDFDFEDAD9E97371AC0000640E0B71 +09066E09066E0A076F0B086F0F0D72959DC7AAD7F15CA4DA6DAFDF79B7E381BAE383BBE4 +81BAE37FBAE47EBAE47DB9E379B6E276B5E26DAFE077B4E296C5E8D6E8F6D8EAF6D3E7F5 +D2E7F5D6E9F6E0EEF8E0EEF9E1EEF8E3EFF9E3EFF9E2F0F9E3F0F9E4EFF9E3F0F9E3F0F9 +E4F0F9E4F0F9E3F0F9E4EFF8E3F0F9E0EEF8E0EDF8E1EEF9E2F0FAE4F1FBD9E3F0C8CEE2 +B5B2CFB4B1CEB6B4D0B7B5D1B7B5D1B6B4D0B7B5D1BDBBD55954941C176D03005C080160 +07005F06005E07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F06005F07005F0A005E160560190661180560180560 +1906610F025F06005E07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F06005E07005F08016008026007005F06005E01015700004E +586CA8A8D5F1A6D2EFA7D3EFA3CDEBA5CDEB78B6E25AA6DC4298D63390D43491D33893D4 +3894D43893D43A93D43C95D53F96D63E96D575B4E18AC0E586BDE488BEE58ABFE590C3E6 +96C6E89BC9E9A1CBEAA3CDEBA5CEECA4CDEBA5CEECA6CFECA6CEECA6CEEBA7CEECA4CEEB +9AC8E999C7E977B5E24B9ED8308ED23791D33D9CDA224BA009086F09066E09066E08056D +09066E0C096F00006A91889ADED1B4FEEFBEF7E8BCFAEABBF9E9B7F9E8B5F8E5ADF7E4A8 +F7E2A5F6E0A0F7E2A3F5DC93F0C859EFC346EEC143EEC045EEC045EEC045EEC045EFC148 +EFC149F0C75DF1CD6DF7E3B0F9EAC3F9E9C1F9E9C2F9EAC2F8E9C1F9E8BFF9E8BEF8E6B8 +F7E2B0F6E0AAF5DBA0F5DDA4F2D58CEAB73DE9B436E8B438E9B437E9B438E9B43BE8B43C +E8B43EE9B948EECB78F1D694F7E7BDFAF0D7F9F0D4F9F0D8F9F1D9F9F1DBFAF0DBFAF1DB +F9F1DAFAF0D9F9EFD8F8EDD2F7ECD0F7EACBF6E9C9F7EBCBF2DEACF0D798EED494EFD597 +EFD496EDD597ECD497EED69DEFD6A3EFD8A8F0DBAEF3E3C2F8EEDCF7EDD9F7EDD9F6EDD9 +F7EEDAF6EEDBF5EDD8F5EBD3F4E8CBF3E7CBEDDAB1E1C37FCB982EC89329CC9B37CD9D40 +CC9F41CDA044CDA148CB9E42D0A859DABC7EE4CFA4E5D0A7E6D2ABE9D8B7EADABAECDDC0 +ECDEC5EDDFC6ECE0C5EBDFC5EBDDC3E8DBBDDBC698C09A4CBA913CB68A33B18429B38830 +B58B38B48A37B58B3BB79145CDB27EDCCAA6D9C7A1D9C7A2D9C7A3DAC7A5DBCAAADDCDAE +DFCFB3DED1B4DED0B3DDCDB1DED0B4D4C29FBC9F6ABA9D67AF9155A78542916815895E08 +8A600CB39964C6B38DC6B28BC9B692CAB793C9B794C8B793C9B996C9B998CAB897C7B794 +C6B594C9B999CDBEA0CEBFA2D1C4AAD1C6ACCFC1A5D5C9B1D6CAB3D9CEB9DBD2BFCDBFA4 +D7CCB9EDEAE4F9FAFBF9F9FAFAFAFBFBFBFCFAFAFBFBFBFCFBFBFCFCFCFDFDFDFEFDFDFE +FCFCFEFDFDFDFEFEFEFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFEFEFEFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFFFFFFFDFDFDFFFFFFE6E5F0413E8E18157609066E09066E09066E08066D +0000652D2F869FADD2CAD7EAA8D0ED60A7DC6DAFE07BB7E381BAE481BAE47FB9E37FBAE3 +7EB9E47FBAE37CB8E375B4E181BAE4BDDBF1CCE3F4D3E6F5D4E7F5D4E7F6D4E7F6D9EAF6 +E1EFF8E0EEF9E1EEF8E1EFF9E1EFF9E2EFF9E3EFF9E4F0F9E4EFF9E4F0F9E3F0F9E4F0F9 +E3EFF9E4F0F9E3EFF8E2F0F9E3F2FBDEEBF6D8E2F0CCD2E5B8B7D2B8B7D2B7B6D1B7B5D1 +B7B5D1B6B4D0B7B5D1B6B4D0B6B4D0B5B3CFAAA7C89793BC28227400005906015E07005F +06005E07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F06005F07005F0A005E1605601906611805601805601906610F025F +06005E07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F0902600B0562080260323986 +5A6EAA8DB0D7A4CFECACD4EF81B9E364ABDE459AD73492D43492D33893D43A94D53B94D5 +3A93D43B94D54197D63C94D569ADDF8CC0E587BEE487BDE589BEE58FC2E794C4E99AC8E9 +A0CCEBA2CCEBA5CDEBA4CDECA5CEEBA6CFECA6CEECA6CEEBA6CFECA4CEEB9CC9EA9DC9EA +7EB8E355A3DB308FD23791D33C97D63683C82C66B30C0F7407026B09076E09056D09066E +0C086F1714725C5589F8ECBDFBECBDF8E8BBF9E9B9F9E8B6F8E4AEF7E4A9F7E2A6F6E0A0 +F7E1A4F5DC95F0CA5EEFC448EFC144EFC147EFC146EFC146EFC146EFC149F0C24CF0C75D +F2CB6BF7E3AEF9EAC4F9E9C1F8EAC1F9E9C1F9E9C1F8E9C1F9E8C0F8E6BAF7E3B3F6E1AD +F4DDA3F5DEA5F2D58CEAB73DE9B539E8B438E9B336E8B336E8B43BE9B53EE8B744E8B745 +E9B94DE9BD55F2D99CFAEFD3FAF0D6FAF1DAFAF1DBF9F1DBF9F1DBFAF1DCF9F1DBFAF1DA +F9EFD8F8EDD2F8ECCFF7EACBF6E9C9F7EACAF1DDA7EFD696EFD496EED597EED597EDD597 +ECD497EED59DEFD6A3EFD9A9EFDCB0F3E4C3F8EEDCF7EED9F7EED9F7EDDAF7EEDBF6EEDB +F6EDD8F5EBD4F4E8CCF3E7C8EEDCB4E8CF98DBB86BCD9D3CCA9935CC9D3ECD9F43CC9F44 +CCA047CA9E42CFA859D9BA7BE4CEA2E4CFA6E5D1A9E8D6B4E9D8B8EBDDBFECDEC4ECDFC5 +ECDFC5ECDEC4EADCC2E8D9BCDAC396C0994BBA903DB68B34B38730B48A35B58C3AB48939 +B48B3BB58D3FCCB17CDBC9A5D8C59ED9C6A0D9C7A4DAC8A6DCCCAEDECFB2DFD2B6E0D3B8 +E0D2B8DED0B5DFD2B8D4C3A1BB9F69B99D66AE8F51A3803B8E641089600A885D08AE9259 +C8B590C6B38DC8B792C9B793C9B794C9B895CAB897CAB997C9B997C8B896C8B796CABA9A +CDBEA0CEC0A3D1C5ABD5C8B0C2B18FC9BB9CD8CDB7D6CBB5D9CFBBD0C3AACBBFA5DCD5C5 +FAFBFDF8F9FAF9FAFBFAFAFBFAFAFBFBFBFCFBFBFCFBFBFCFCFCFDFCFCFDFDFDFEFDFDFE +FDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFF +FEFEFEFCFCFDCCCCE16764A500006508056D09066E09066E07036C141275333589A3B1D4 +E2F7FEDEEEF8A8CFEB60A8DD6FB0E07FB9E383BBE481BAE47FB9E37FBAE47FBAE47FB9E4 +83BBE48CC0E6C6E0F3DBEBF7D5E8F6D3E7F6D3E6F6D3E6F5D6E8F6DBEBF7E1EFF9E0EEF8 +E0EFF9E0EFF9E0EFF9E1EEF9E1EFF9E2EFF9E3F0F9E3EFF9E4EFF9E3F0F9E3EFF8E3EFF8 +E4F0F9E0EBF6D5DEEDC2C5DBB5B2CEB5B2CFB6B4D0B6B4D0B6B4D0B7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D1B7B5D1B6B4D0B7B6D1BFBDD6A19EC22B2576110A6506005E07005F06005E +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F06005F07005F0A005E1605601906611805601805601906610F025F06005E07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F06005E07005E05005E02015A00005416166D +353D8987A4CE96CAEC73B0DE499CD73893D43591D33893D43C94D54097D63D95D53D95D5 +3F97D63993D45AA6DC8CC0E688BEE586BDE486BDE58DC1E692C4E898C7E99FCBEAA1CCEA +A5CEEBA5CEECA6CEECA6CFECA6CEEBA6CEEBA6CFECA4CEEB9FCBEAA0CBEA87BDE565ABDE +2E8ED23692D43C95D53D97D7409FDC2960AF09076F08056D09066E08056D09066E06036D +00006A8B8198FFF2BFF8E8BCF8E8B9F9E8B8F8E5AFF7E4AAF7E2A6F6E0A0F7E1A3F5DD96 +F1CB61F0C34AF0C248F1C34AF0C249F0C249F0C148EFC149F0C24EF1C75EF2CB6BF7E2AD +F9EAC4F8E9C1F9E9C2F9EAC3F8E9C2F9E8C1F8E8C0F8E6BCF7E5B6F7E3B1F5DEA7F5DFA8 +F2D48CE9B43AE8B337E9B337E8B236E7B236E9B53CE8B53FE9B745E9B745E7B441E6B23C +EFCD80F5E3B9F6E4BDF8ECCEF9F0D9F9F1DCF9F1DCF9F1DBFAF0DBF9F1DBF9EFD7F8ECD1 +F7ECCEF7EACAF6E9C9F7EACAF1DBA4EFD594EED597EDD597EDD598ECD598ECD498EDD69F +EED8A5EFDAAAF1DDB3F4E4C5F8EFDCF8EED9F7EEDAF6EDDAF6EEDBF6EDD9F6EDD7F5EAD3 +F3E7CDF3E6C8EEDBB2E7CA90E4C98BE0C281DAB96FCFA249CB9C3ECB9E44CB9F47C99C42 +CFA858D8B97BE4CEA3E3CFA4E3D0A8E7D5B2E8D7B5E9DBBDEBDDC2ECDEC3EBDEC4EBDEC3 +EADBC0E6D6B7D7BE8DBD9445B78D38B48A33B58B37B68D3AB48C3BB38B3BB38B3BB48C3F +CAAF7ADAC7A3D6C39DD8C5A0D9C7A4DAC8A6DDCEAFDFD1B4E1D4B9E2D6BCE2D6BCE1D4BB +E2D7C0D7C7A7BBA06DB99E68AA89499E792F8C610C8A5F0C865A04A7894CCAB894C7B590 +C8B692C8B692C8B794CAB997CAB897CAB997C9B897C8B897C8B898CABB9CCEBEA2CFC2A6 +D2C5ABD6CAB3C2B18FB5A178C9BA9DD4C9B3D5CAB4CEC1A7CCC0A7DDD6C7F9FAFCF8F9F9 +F8F9FAF9FAFBF9F9FAFAFAFBFAFAFBFBFBFCFBFBFCFBFBFCFCFCFDFDFDFEFCFCFEFDFDFD +FDFDFDFEFEFDFDFDFDFDFDFDFEFEFEFEFEFEFFFFFFFEFEFEFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFFFFFF +7573AE2C29830200690B086F08056D0A076E0200691F1E7C7D87BBC7D8ECD7EBF7DCEBF6 +A8CFEC5FA8DD71B1E081BAE483BCE482BAE480B9E37FBAE37FBAE47CB8E38CC1E6A9D0EC +D6E9F6D5E8F5D5E8F5D3E7F5D3E7F6D2E6F5D7E9F6DCECF7E1EFF9E0EEF8E1EEF9E1EEF9 +E1EEF9E0EFF9E0EEF9E1EFF9E2EFF9E3EFF9E4F0F9E4EFF8E4F0F9E5F1FAE7F4FCD8E1EE +C4C7DDB7B5D1B6B4D0B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1 +B6B4D0B7B5D1B6B4D0B4B2CFBBB9D364609B28247400005A08015F07005F06005E07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F06005F +07005F0A005E1605601906611805601805601906610F025F06005E07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F08015F09026105015C0000535765A3 +9DCDED84C2E94C9FD93892D43591D33892D43C95D54197D64096D63E96D63E96D63993D4 +55A3DB8CC0E688BEE585BDE486BDE48CC0E691C3E797C6E99ECAEAA1CCEAA5CEEBA6CFEC +A5CEEBA6CEEBA7CFECA5CEEBA5CFECA4CEEB9FCBEAA1CCEA89BFE56AAEDE2F8ED23592D3 +3C95D53C94D43E99D83786CA0F167906006A09066E09066E08056D0B086E00006B484182 +F9EABCFCECBDF9E9BBF8E8B8F8E6B0F7E4AAF7E2A6F6E0A0F7E1A3F6DD97F2CB62F0C34B +F0C248F0C249F1C24AF1C24AF0C148EFC149EFC14DF1C75EF2CB6BF7E2ADF9EAC4F8E9C1 +F9E9C3F9EAC4F8E9C2F9E8C1F8E7C0F7E6BCF8E5B7F7E3B2F6DFA8F6DFA9F2D48BE8B338 +E8B235E8B236E8B235E7B237E9B53CE8B540E8B846E8B745E7B542E7B441EFCE83F4E0B2 +F4DFB0F6E7C3F8EED1F9F1DAFAF2DEFAF2DDF9F0DBF9F0DAF9EFD7F8ECD1F7EBCFF6EAC9 +F6E9C8F7EACAF1DBA3EFD593EED596EDD598EDD498EDD599ECD499EDD6A0EED8A5EFDAAA +F1DDB3F3E5C6F7EFDCF8EDD9F7EDDAF6EEDAF7EDDBF6EDD9F6EDD7F5EAD2F4E8CCF3E5C8 +EEDBB1E7CA8EE3C685E5CA90E4CA90D4AC5CCC9C41CA9C40CA9E47C89B42CFA859D9BA7C +E3CDA3E2CEA3E3D0A7E7D4B1E8D7B5E9DABCEBDDC2ECDEC3EBDDC3EBDEC3E9DBC0E5D5B5 +D6BB88BB9342B68C37B48933B58C38B68D3BB58C3CB38C3CB38B3BB48D41CAAF7AD9C7A3 +D6C39CD7C5A0D8C6A4DAC8A6DDCEAFDFD1B4E1D4B9E2D6BEE2D6BEE1D5BDE3D8C2D8C8A8 +BCA26EB99F6AA786449B752A8B600B8B5E0B865903A58648CAB894C8B590C8B791C8B691 +C8B694CBB897CAB997C9B896C9B896C8B897C9B898CBBC9DCDBFA3D0C2A7D2C5ACD6CAB3 +C6B696B0996EBCAB87D4CAB2D5CAB3CBBEA3D1C6AFE4DED3F8F9FBF7F8F9F8F9FAF9FAFB +F9FAFBFAF9FAFAFAFBFAFAFBFBFBFCFBFBFCFBFBFCFCFCFDFDFDFDFCFCFEFDFDFEFDFDFD +FEFEFEFEFEFEFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFBFBFCFFFFFFA09FC706036C08056D +0A076E08056D09066E0A076F09066E838DBFDCEFFAD2E5F4D4E8F5DDEDF7ADD2ED64AADE +73B3E181BBE481BAE381BAE480B9E380BAE47EB9E384BCE5C2DEF1DAEBF7D6E8F6D6E9F6 +D6E8F6D5E8F6D4E8F5D3E7F5D9EAF7DEEDF8E2EFF9E2EFF8E2EFF9E2EFF9E2EFF9E1EEF9 +E1EEF9E1EEF9E1EEF8E2EFF9E3EFF8E3EFF8E2EEF8DDE7F3D0D6E7B9B8D3B6B3D0B7B5D1 +B7B5D1B7B5D1B6B4D0B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B6B4D1 +B6B4D0B7B5D1B4B2CFB8B6D29593BB1A146B07005F08015F06005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F06005F07005F0A005E +1605601906611805601805601906610F025F06005E07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F06005E08016009036106005E343D894D66A7 +4E97D23994D5348FD23592D43A94D44298D64498D74097D63E96D63B94D54C9DD886BDE4 +87BEE585BCE585BDE48ABFE590C2E794C5E89BC8E99FCAEAA5CEECA5CEEBA8CFECA7CFEC +A6CEEBA6CFECA7CFECA5CEEBA0CBEAA0CBEA8CC1E674B4E13692D43390D33993D43D96D6 +3C94D53E98D7326FB920409708046C09066E09066E09066E08056D0E0B6F5A5288BAADA8 +FFF1BEF6E6B9F8E6B2F7E4ABF7E2A7F7E0A1F7E2A4F5DD97F1CC63EFC349EFC044EFC046 +F0C149F1C14CEFC047EEC049EEC14DF0C75DF1CB6BF7E2ACF9EBC5F8E9C2F9E9C3F9EAC4 +F8E9C3F9E8C1F8E7C0F7E7BCF8E5B8F7E3B4F5DFA9F6DFABF2D48DE9B43BE8B337E8B336 +E7B438E8B43BE9B43CE8B43EE7B642E7B540E7B541E6B541EECE82F4E1B4F5DFB2F5E3BA +F5E5BEF6E7C5F8EDD2F8EFD7FAF0DBF9F1DBF8EFD7F8ECD0F7EBCEF6EAC9F6E9C9F7E9C9 +F1D9A1EED292EDD496EDD598EDD498ECD49AECD59BEDD6A1EFD8A7EFDAACF0DDB5F3E5C6 +F7EFDCF7EDD9F7EDD9F6EDDAF7EEDAF6EDD9F6EDD8F5EAD2F3E7CAF2E5C6EDD9AEE3C889 +E2C787E4C98EE4CA91E1C78CDFC182D1AA59C99C42C8993ECDA657D8B97BE2CDA1E2CEA3 +E3CFA6E5D4B0E7D6B4E9D9BBEADCC0EADCC0EADCC1EADBC0E8D9BDE0CDA9D0B47AB78D38 +B3872FB48832B48C3AB58C3BB48C3CB38C3CB38C3EB58F44CBB07CD9C7A3D7C39DD7C5A0 +D9C7A5DAC9A7DDCEB0DFD1B6E1D4BAE2D6BFE2D6C0E2D6C0E5DAC5D8C9ABBDA473B99F6A +9F7B349269198A5F0A895F0D835803A28141CAB895C8B590C7B691C8B693CAB897CBBA99 +CAB998C8B794C7B693C8B897C9BA9ACDBEA0CFC2A7D1C4A9D3C6ADD6CAB3CBBD9FAB9566 +AA9466C8B99CD5C9B3C7B99ADCD4C3F0EFECF5F6F8F6F7F8F7F8F9F8F9FAF8F9FAF9F9FA +F9F9FAFAFAFBFAFAFBFAFAFBFBFBFCFBFBFCFCFCFDFCFCFDFCFCFDFDFDFEFDFDFDFDFDFE +FEFEFEFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFEFEFFFFFFFDFDFEFDFDFEFFFFFF5A599E0000660C097008056D08056D +0A076F010068181678BDCEE5DAEDF8D5E7F5D4E8F5DDEDF7AFD4EE67ACDF71B1E17FBAE4 +81BAE381BAE380B9E480BAE47AB7E391C3E7D6E8F6D9EAF7D8E9F6D7E9F7D6E9F7D6E8F6 +D5E8F5D3E7F5DBEAF7DFEDF8E2EFF9E2EFF8E3F0F9E3F0F9E2EFF9E1EFF9E0EEF9E1EDF8 +E0EFF9E1EEF8E3F0F9E6F4FCE0ECF6CFD6E7BCBBD4B4B1CEB7B5D1B7B5D1B6B4D0B7B5D1 +B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B6B4D1B7B5D1 +B6B4D0B6B4D0B8B6D13C368108015F06015E07005F06005E07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F06005F07005F0A005E160560190661 +1805601805601906610F025F06005E07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F06005E07005F070160000056090B5F457FBF40A1DF +3796D83490D23993D34399D74499D74097D63E97D53C95D5499BD883BBE487BDE585BDE4 +85BDE489BFE58EC1E693C4E89AC7E89ECAEAA5CEECA5CEEBA9D0ECA9D0ECA6CEEBA6CEEC +A8CFECA6CEEBA0CBEAA0CBEA8EC1E678B7E23994D53390D33893D43D96D63D95D53C94D5 +4198D73471BA08046C09066E09076E08056D08056D0E0A6F02006B847A96FFF9C1F9E9BA +F7E4B2F8E4ACF7E2A8F6E0A1F7E2A5F5DD98F0CB63EFC349EEC043EEC146F0C149F1C04B +EFC047EEC049EFC14DF0C65DF1CA6BF7E1ABF9EBC5F8E9C2F9E9C4F9EAC4F8E9C3F9E8C1 +F8E8C0F7E7BDF8E5B9F7E4B5F6DFAAF5DFACF2D48DE9B63DE9B439E8B439E8B53BE9B43C +E8B33BE8B43DE7B53EE6B43DE7B441E6B541EECE83F4E0B4F5E0B3F6E4BBF6E5BEF5E4BD +F6E7C5F6EACDF9F0DAFAF2DDF8F0D9F7ECD0F7EBCDF6E9C9F6E9C9F7E9C8F1D8A0EED292 +ECD496ECD599ECD498EDD49AECD59CEDD7A1EFD8A8EFDAADF0DDB6F3E4C6F8EEDCF6EDD9 +F6EDD9F6EDD9F7EEDAF6EDD9F6EDD8F5EAD2F2E6C9F2E5C6ECD8ABE2C686E2C687E3CA8E +E3C98EE3CB92E5CF9ADABB78C89C41C69639CCA555D7BA7AE2CCA1E2CDA3E3CFA6E5D4AF +E6D6B4E9D8BAE9DBBEE9DBBEE9DBC0E8D9BDE7D8BBDFC9A2CDAF74B58A33B18329B38731 +B58D3AB58C3AB38C3BB28B3BB28B3DB49045CBB07DD9C7A3D7C49ED7C4A0D9C8A5DBCAA8 +DDCFB1E0D2B6E1D5BBE3D7C0E3D8C1E3D8C1E5DBC6D8C8ACBEA574B89F6A9C772D8F6513 +895E0B885F0D825803A07F3FC9B794C7B591C7B592C9B694CBBA99CBBB9ACAB998C8B794 +C7B692C8B796CABB9BCDBFA2D1C3A9D2C4AAD3C7AED6CAB2CCBEA1AB9468A68E5EC0AE8E +D4C9B3C5B697E0DACEF6F7F9F4F5F7F6F7F9F6F7F9F7F8F9F7F8F9F8F9FAF8FAFBF9F9FA +F9F9FAFAFAFBFBFBFCFBFBFCFBFBFCFBFBFCFCFCFDFDFDFEFCFCFDFDFDFDFEFEFEFEFEFE +FDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFEFEFEFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFEFEFEF4F4F8B2B1D10F0C7108056D09066E08056D09066E0A076F1E1E7B +7D86BBDBEEF9D4E7F4D5E8F5D4E8F5DCECF7B5D6EF6EB0E06BAFDF73B3E17DB8E381BAE4 +7FB9E381BAE484BCE5BFDCF1DBEBF7D8E9F6D9EAF6D8E9F6D8E9F7D7E9F6D7E9F6D5E8F6 +DDECF7E0EEF8E2EFF9E2F0F8E3EFF9E3EFF9E3F0F9E1EFF9E1EEF9E0EEF9E0EDF8E2EFFA +DEEAF6D7DFEEC5C8DDB6B4D0B7B6D1B7B5D1B6B4D0B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B6B4D0B6B4D0B6B4D0 +B7B5D19B98BF64609B03005C08015F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F06005F07005F0A005E160560190661180560180560 +1906610F025F06005E07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F06005E07005F09036107005F0F126D2B5FA9307AC03697D8 +3996D64297D64499D74197D64097D64097D64498D779B6E284BCE486BDE584BCE487BEE5 +8DC0E792C3E799C7E89DCAEAA4CEECA7CFECA9D0ECAAD0ECA9D0ECA8CFEBA7CFEBA7CEEC +A2CCEBA1CCEB93C3E781BAE43F96D63390D33994D43D96D63C95D53D95D53F95D54499D7 +25459A05006808056D09066E08056D0A066E08056D231F76CBBEADF0E0B8FBE8B3F7E3AC +F7E3A8F7E0A1F7E1A5F5DD97F1CB64EFC249EEC044EFC147F0C14AF0C149EFC046EEC049 +EEC14CF0C65EF1CA6BF7E1AAF9EAC6F8E9C2F9E9C3F9EAC4F8E9C3F9E8C1F8E8C1F8E7BE +F8E6BBF7E4B7F6E0ACF6E0ADF3D48EE9B53EE9B43BE8B43CE9B53CE8B43CE7B33BE7B43D +E7B43FE7B33DE7B33EE5B23DEECD81F5E1B4F4E0B3F5E4BCF6E5BFF5E5BFF5E4BEF5E4BD +F5E7C3F6E9C8F8ECD0F8ECD1F8ECCEF6E9C8F7E9C9F6E9C7F0D79DEDD291EDD496EDD599 +EDD598EDD49CECD59EEED8A3EFDAAAEFDBAEF0DDB6F4E6C8F7EFDCF6EDD9F7EDD9F6EDD9 +F7EEDAF6EDDAF6ECD7F4E9D1F2E5C9F2E4C6EBD7A9E2C584E3C687E3C98EE2C98FE3CA91 +E3CA93E3CB96D9BA77CFAA59CCA555D6B779E2CCA1E2CEA4E3D0A8E6D4B1E7D6B4E8D8B9 +E8D9BCE8D9BCE8D9BCE6D7BAE5D6B7D9C296C8A765B08329AE8026B0852EB38936B38A39 +B28939B08737B08839B38C41CAAF7BD9C7A3D6C49FD7C5A1DAC8A7DBCAAADED0B3E0D2B7 +E2D5BCE3D7C0E3D7C0E4D9C4E6DCC9D9C9ADBCA270B59861956E218B600C885E0B875E0C +8257039E7E3CCAB894C8B692C9B795CAB896CBBA99CABA99CAB998C8B896C7B694C8B898 +CBBC9DCEC1A4D1C5AAD2C6ABD3C7AED5CAB1CEC1A6AE986CA58D5DB09C72C1B190C6B799 +E6E1DAF6F8FCF3F4F5F4F5F7F5F6F8F6F7F9F7F8F9F7F8F9F7F8F9F8F9FAF9FAFBF9F9FA +FAFAFBFBFBFCFBFBFCFBFBFCFBFBFCFCFCFDFDFDFEFDFDFEFDFDFDFDFDFDFEFEFEFEFEFE +FEFEFEFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFCFCFD +FFFFFF6866A619177705026B0A076E08056D09076E04016B292A83B6C5E0D0E2F2D8ECF7 +D5E8F5D6E9F6D4E8F5DCECF7BBDAF075B4E269ADDF69AEDF79B6E27FBAE379B6E291C3E7 +C0DDF1D8E9F6DAEBF7D9EAF6D8E9F7D9EAF7D9EAF6D8EAF7D7EAF7D7EAF6E0EDF8E1EEF8 +E1EFF9E2EFF8E3F0F9E4EFF9E3F0F9E2EFF9E2EFF8E0EDF8E3F0FBDAE5F3BFC0D9B5B2CF +B5B3CFB6B4D0B6B4D0B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B5B3D0BDBBD5 +B5B3D0342E7B00005A09026007005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F06005F07005F0A005E1605601906611805601805601906610F025F +06005E07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F06005F06005E07005F05005D05005A0908642053A22E79C0429AD8 +4497D54499D74298D74197D63F96D565ABDD7EB9E389BEE584BCE487BEE58BC0E690C3E7 +99C7E89CC9EAA5CEECA8D0EDABD1ECACD1ECACD1EDA9D0ECA7CEEBA8CEECA3CDEBA1CCEB +95C5E888BEE64298D6328FD23993D43D96D63D96D63D95D53D95D5429AD84995D31E2F8A +0F127608046C09066E08056D09066E08056D1C1974897F97FFEFB5F5E1ABF7E2A8F8E1A4 +F7E1A6F5DD98F1CC66EFC249EEC043EFC146EFC049EFC147EEBF46EFC049EFC14CF0C65E +F1CA6AF7E1A9F9EAC6F8E9C3F9E9C3F9EAC4F8E9C3F9E9C1F8E8C1F7E6BEF8E7BDF7E5B9 +F6E0AEF6E1AFF2D58FE8B53DE8B43BE9B53BE8B43BE8B43CE6B23CE6B43EE7B441E6B442 +E7B543E6B33FEECD83F4E1B4F5E0B3F5E4BBF6E5BEF5E4BEF5E4BEF6E5BFF4E3BCF4E1B9 +F3E0B7F4E2BAF5E4BFF6E9C7F7EACBF5E7C4EED599ECD191EDD498ECD598EDD499EDD49C +ECD59DEDD7A4EFDBAAEFDBAEF0DEB6F4E7C9F7EFDCF6EDD9F7EDDAF6EDD9F7EEDAF6EDDA +F6ECD7F4E9D0F2E5C7F2E4C6EAD5A5E0C27FE2C586E3C98DE2C88FE2C992E2CB94E3CA95 +E4CD98E2CA91DABD80DBC08AE1CBA0E3CEA7E4D1ABE6D5B2E7D6B4E7D6B8E7D8B9E7D8B9 +E7D7B9E5D4B5E3D3B2D3BA86C19D54A97918AA7D20AE8129B08532AF8532AE8533AE8330 +AE8433B18A3FC9AF7BD9C7A3D6C49FD7C6A2DACAA9DCCCADDFD0B6E0D2B9E2D5BDE3D7C1 +E3D8C2E4D9C5E6DDC9D8C9ACB79D68AD8F538F6615885C07875E0B865D0B8259049D7C3B +C9B793C8B793CBB897CBB998CABA99CABA99C9B897C7B795C6B694C9B999CBBD9FCFC1A5 +D1C4AAD1C5ACD3C6AED5C9B1D0C4AAAF9A6FA68F60A28B5AA18956C2B495EBEBE9F2F3F7 +F2F3F5F3F4F6F3F4F6F4F5F8F5F6F8F6F7F8F6F7F8F7F8F9F8F9FAF8F9FAF9FAFBFAFAFB +FAFAFBFAFAFBFBFBFCFBFBFCFCFCFDFCFCFDFDFDFEFCFCFDFDFDFDFEFEFEFDFDFEFDFDFD +FDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFDFDFDFFFFFFECEBF3312F85 +0100690C096F08056D08056D0B086F0000664F539CDBEEF9D6E8F6D5E8F5D6E9F6D6E9F5 +D4E8F5DCECF7BEDBF177B5E269ADDF69AEDF76B5E27DB8E376B4E19CC9E9D5E8F5D7E9F6 +DAEBF7D9EAF6D8EAF7D9EAF7D9EAF7D8EAF6D7E9F7D8EAF7E1EEF8E2EFF9E1EEF8E2EFF9 +E3F0F9E3EFF9E3EFF9E2F0F8E2EFF8E2F0FADEEBF6CED5E7B5B2CFB7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B6B4D0B6B4D0B4B2CFBCBBD4534D8F +00005908015F07005F06005E07005F07005F07005F07005F07005F07005F07005F07005F +07005F06005F07005F0A005E1605601906611805601805601906610F025F06005E07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005E06005F07005E07005F07016105005A1020771F4C9C429CDA469CD84499D6 +4298D64197D63F96D55EA7DC7CB8E289BFE584BCE487BEE58BBFE590C2E798C7E89CC9EA +A5CEECA9CFEDABD1EDADD2EDADD2EDA9D0ECA8CFECA7CEECA3CDEBA2CDEB96C6E88AC0E6 +4499D7318ED23892D43D95D53E96D63D95D53C94D53E95D54C9ED93861AC1A2784050069 +0A086F08056D08056D0D0A6F000069554E86FCE9B3F8E4ABF7E1A7F8E1A5F7E2A7F6DC98 +F1CC66EFC24AEEC044EFC146EFC149EFC148EEBF46EFBF49F0C04CF0C65DF1CA6BF7E1A9 +F9EBC6F8E9C3F9E9C3F9EAC4F8E9C3F9E9C1F8E8C1F7E6BFF8E7BDF7E5B9F6E1AEF6E1AF +F1D48EE9B53CE8B43BE9B53CE8B43BE7B33BE7B23CE6B43FE6B544E7B645E7B546E6B441 +EECE84F4E1B5F5E0B5F5E3BBF6E4BEF6E4BEF6E4BEF5E4BFF4E4BEF4E3BCF2DFB4F1DCAC +F2DDAFF5E5C1F6EACAF5E8C6EED59AECD192EDD497EDD598EDD49AEDD49CECD59DEDD7A4 +EFDAAAEFDBAEF0DEB6F4E7C9F7EFDCF6EDD9F7EEDAF6EDDAF7EEDAF6EDD9F5EBD7F4E8D0 +F2E4C7F2E4C6E9D4A3DFC17CE2C586E3C98DE2C88FE3C991E3CB94E2CA94E2CA94E2CA92 +E1CA96E2CD9FE1CCA2E2CDA6E4D1ACE6D5B3E6D5B4E7D7B7E6D7B8E7D7B9E6D6B8E4D3B3 +E3D1B0D1B780BE984CA77614A97C1FAD8028B08532AF8430AD8430AD822EAE8432B18B3F +C9AF7CD9C7A4D6C49FD7C6A2DACAAADCCCAEDFD1B7E1D3BAE2D6BEE2D7C1E3D8C2E4DAC4 +E6DCC9D7C8ABB69B64AA8C4E8E6413885C08875D0B865D0A835A059C7C3BC8B692C8B793 +CAB998CABA98CABA99C9B999C9B897C7B694C6B693C9B99ACCBEA0CFC1A5D1C3AAD1C5AC +D4C7AED6C9B2D0C4ABAF996FA68F609F8755977C46BFB090EEEEEDF1F2F6F2F2F5F3F4F6 +F3F4F6F4F5F7F5F6F8F5F6F8F5F6F8F7F8F9F8F8F9F8F9FAF9FAFBF9F9FAF9F9FAFAFAFB +FAFAFBFBFBFCFBFBFCFCFCFDFCFCFDFCFCFDFDFDFEFDFDFDFEFEFEFEFEFEFEFEFEFEFEFE +FEFEFEFDFDFDFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFED5D5E77978B00000680C097009066E +08056D0A086F04016B22227FB8C8E2DAEDF8D3E6F4D6E9F6D5E8F5D6E9F6D4E8F5DCECF7 +C2DEF17DB9E369ADDF67ACDE6EB0E074B4E17AB7E2C2DEF2DBEBF7D8EAF6DAEBF6DAEBF7 +D9EBF7D9EAF7DAEBF7D9EAF7D8E9F6DBEBF7E3EFF8E3F0F9E2EFF8E2EFF9E3F0F8E2F0F9 +E3EFF8E3EFF8E4F1FAD5DDECBCBDD6B9B7D1B6B4D0B7B5D1B7B5D1B6B4D0B7B5D1B7B5D1 +B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B5B3D0BBB9D39C99BF18116A08015F +06005E07005F07005F07005F07005F07005F06005E07005F08015F080160090260090361 +0A03610D03601605611906611805611805611906601105610A04610A04610A03610A0361 +09026008026008016007005F07005F06005E07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005E +05005F0C015D10025B05005F08016006005C05005B2142934496D44598D64398D64197D6 +3F96D54B9DD974B3E18AC0E684BCE487BEE58CC0E690C2E796C5E89BC9EAA5CEECAACFED +ACD1EDAED3EEAED3EEACD1EDAAD1EDA8CFECA3CDEBA1CCEB97C6E98FC2E7499CD8308ED2 +3691D43C95D53F96D63C95D53993D43993D54799D65EAADF497CBE0D0C7208056D09066E +08056D09066E0B086E06036DA19399FFEAAEF5E1A8F7E1A4F8E2A7F6DD9AF1CC68EFC24B +EFC045EFC149F0C04BEFC14AEFBF47EFBF49EFC04DF0C65CF1C967F6DFA8F9EAC6F8E9C2 +F9EAC3F9EAC4F8E9C3F9E8C1F8E8C1F7E8C1F8E7BEF7E5BBF6E1AEF6E1B0F2D38BE8B53C +E8B53CE8B43DE7B33AE6B239E6B23CE7B441E7B747E6B646E7B648E6B545EFCF86F5E1B7 +F4E1B5F5E3BCF6E3BEF6E4BEF5E4BFF5E4BFF4E3BDF3E2BCF2DFB4EFD8A4EED59DEFD6A0 +F0DAAAF1DEB3EDD69AECD495ECD396ECD498ECD599EDD49DECD59EEDD7A4EFD9AAEFDAAD +F0DEB8F4E7CBF7EFDCF6EDD9F7EEDAF6EDDAF7EEDBF6ECD8F4EBD5F3E8CEF1E4C5F1E3C4 +E8D19EE0C17AE1C485E3C88EE2C990E3CA93E2CB94E3CB94E1C993DFC68FE5D0A2EBDDBB +ECDEBFE5D1ADE5D2ADE6D5B4E6D5B6E7D7B7E6D6B7E6D7B8E4D3B4E1D0ACE0CDA7C7A868 +B58A36A6730FA9781AAB7C22AF842FAE842FAC812EAA802DAC8332B38D45CAB280D9C7A5 +D6C4A0D7C6A3DACAABDBCDAFE0D2B8E1D4BCE2D6BFE3D7C2E3D8C3E4D9C5E6DDCAD3C3A3 +AF9157A3823F895F0C875D08865D0B865D0C845B089D7D3DC8B693C9B794C9B998CABA99 +CAB998C8B897C8B796C6B694C7B795CABC9ECDBFA3CFC2A6D0C3A9D2C5ABD4C8AFD5CBB4 +D0C4ABAC976CA48D5E9B804C8B6C31AB966DEDEDEEEFF0F4F0F0F3F0F1F4F1F2F5F3F4F6 +F3F4F6F4F5F7F4F5F7F5F6F8F7F8F9F7F8F9F8F9FAF8FAFBF9FAFBF9F9FAFAFAFBFAFAFB +FBFBFCFBFBFCFBFBFCFCFCFDFDFDFEFCFCFDFDFDFDFDFDFEFDFDFEFEFEFEFDFDFEFEFEFE +FEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFFFFFFFDFDFDFFFFFF9594C0403E8E0000680B086F08056D09066E0A086F +010069464A96D6E8F6D5E9F5D5E8F5D6E9F6D6E9F6D6E9F6D4E8F5DBECF7C3DFF180BBE3 +69ADDF67ACDE6AADDF73B3E181BBE4CFE4F4D9EAF7D8E9F7D9EAF7D9EAF6DAEBF7DAEAF7 +DAEBF7D9EAF7D8E9F6DBECF7E3EFF8E3EFF9E3F0F8E3F0F9E2F0F9E2EFF8E3F0F9E5F1FA +E3EFF8C6C9DEB4B1CEB8B5D0B7B5D0B6B4D1B7B5D0B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D1B7B5D1B7B5D1B6B4D0B6B4D0B7B5D1B2AFCD2D27770E076305005E07005F +07005F07005F08015F08026009026007005F04005D02005C000058000057000056000056 +13045E1A066118056018056019066108005900005300005400005500005600005701005A +02005B05005E09026009026008016008015F07005F06005E07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005E05005F0D025C +15045A04005F07005E07016005005C0D116B3673B94290CF459EDB4298D63F96D54599D8 +6FB0E18BC0E684BCE487BDE58CC0E790C2E796C5E89BC9EAA5CDECA9CFECACD1EDAFD4EE +AFD3EDACD1ECAAD1ECA9D0ECA3CDEBA1CCEA98C7E991C3E84A9CD82F8DD23590D43D95D5 +3F96D63C95D53793D43792D4479AD75CA8DE5D9ED51A217F07036C08066E09066E08056D +0B086E00006A696089FFEEB0F7E2A9F7E0A3F8E1A6F6DD9AF1CC68EFC24BEFC047F0C14B +EFC14AEEC14BEFBF48EFBF48EEC14CEFC55BF1C864F5DFA7F9EAC6F8E8C2F9EAC4F8EAC4 +F9E9C3F9E8C0F8E8C1F8E9C2F8E7C0F7E5BCF6E1AEF5E1B0F1D38BE9B63DE8B53CE8B43C +E7B33AE6B33AE6B23CE7B541E7B747E6B646E7B648E6B647EFCF87F5E2B7F4E1B6F5E3BD +F6E4BFF6E4BEF5E4BEF4E4BFF4E3BDF3E3BBF2DEB3EFD8A5EED6A0EDD299EDD39DEED4A0 +EBD08EECD391EDD69BECD498ECD499ECD49DECD59EEDD7A4EED9AAEFDAADF0DFB9F4E7CC +F7EFDCF6EDD9F7EEDAF6EDDAF7EEDBF5ECD8F5EBD5F3E8CEF1E3C5F1E3C4E8D09CDFC17A +E1C485E3C88FE2C991E2CB93E2CA94E3CB93E2CA93E0C78FE5D0A2EBDBBAF0E4CBE8D9B9 +E6D4B1E6D4B2E6D6B6E6D7B7E7D7B7E6D6B8E4D3B2E0D0ABDECBA4C3A15DB3862FA6720F +A77517A97A1FAE832DAE822DAB802DAA7F2DAC8332B48E47CAB281D9C7A5D6C49FD7C6A3 +DACBACDCCDB0E0D2B9E1D4BCE2D6BFE3D8C2E4D9C4E4DAC5E6DDCAD2C1A0AB8D51A07E39 +895E0B875C09855D0B865E0D855C0A9D7E3EC9B793C9B794C9B997CABA98CAB998C8B797 +C8B796C6B795C8B896CBBC9FCEC0A4CFC2A7D1C4AAD2C5ACD4C8B0D6CBB5D0C4ABAC966C +A48C5D997E4989692DA0895AEBEBEAEDEFF4EEEFF3EFF0F3F1F2F5F2F3F6F3F4F6F3F4F6 +F4F5F7F5F6F8F6F7F9F6F7F8F7F8F9F8F9FAF8FAFBF9FAFBF9F9FAFAFAFBFAFAFBFBFBFC +FCFCFDFCFCFDFCFCFDFDFDFEFDFDFEFCFCFDFDFDFDFDFDFEFEFEFEFDFDFEFEFEFEFDFDFD +FEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFF +FCFCFDFFFFFFD4D3E51F1C7A07046C0A076E08056D09066E0A086F08056D6D75B0AEBCDB +DBEFF9D4E7F4D6E9F6D6E9F6D6E9F6D6E9F6D4E8F5DBEBF7C6E1F28EC2E76AAEDF69ADDF +63AADD84BBE4B4D6EFD2E6F5D6E8F6D6E9F6D7E9F6D8EAF7D9EAF6D9EAF6D9EBF7D9EAF7 +D8E9F6DDECF8E4F0F9E4F0F8E4F0F8E4EFF9E3EFF8E3F0F9E2EEF8D1D7E8C5C7DDB6B4D0 +B7B5D1BDB7CEB8B5D0B6B4D1B7B5D0B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D1B7B5D1B6B4D0B6B4D0B5B3CF8581B03C37810000590A046109026007005F +04005D00005A00005708025F130D681D186E3533803E3D8645448A46438A22126917035F +19066119066116035F3D3681595D9C5355964A4B9044458C3B3A852723751E1A6F0E0864 +00005700005701005B04005C08016009026008016007005F07005F06005E07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005E07005E03005F17065A320F5405005F +07005E07005E07005F07016009056317287E3B83C54093D24198D73E95D568ACDE8CC1E5 +86BDE488BEE58DC1E690C3E795C5E89AC8E9A3CDEBA8D0EDABD1EDAFD4EEAFD4EEADD2ED +AAD0EDA9D0ECA4CEEBA3CDEB9BC8E996C6E84E9ED92A8BD1318FD33B94D53F96D63B94D5 +3893D43893D4469AD758A3DB61AADE6C92C841509D0300690A086F09066E09066E05026D +1D1873918593DCC9A2FEE6A5F5DFA5F5DC98F1CC68EFC24CEFC148EFC14CEFC14CEFC04A +EFBF47EFBE48EEBE4AEFC45AF0C863F6DFA6F9EAC6F8E8C2F8EAC4F9E9C3F8E9C2F8E8C1 +F9E8C1F8E8C1F8E7BFF7E5BBF6E0AEF6E1B0F1D28AE8B43BE8B43CE7B43DE7B33BE6B23C +E7B23DE7B33FE6B645E7B645E7B548E5B546EECF88F5E2B8F4E1B7F5E4BDF6E5BFF5E4BE +F4E3BEF5E4BFF4E3BDF3E2BBF2DEB1EFD7A1EED49BECD095EDD39CEACB8BDFB250E0B557 +E8CA85EDD49BEDD49AECD49CECD49DEDD7A4EDDAAAEEDAADF1E1BCF4E8CEF7EEDCF6EDD9 +F7EEDAF6EDDCF7EEDBF5ECD7F5EBD4F3E8CDF1E3C5F1E3C3E6CE95DFBF79E1C688E3C990 +E2C991E3CA93E3CB92E2CA93E1CA95DFC68FE4D0A2EBDCBBEFE4C9F0E5CFEFE4CDE8DABC +E6D7B7E6D7B7E6D7B9E6D6B8E3D2B1E0CEABDCC79FBA9345AD7E23A57211A67515A7781B +AA7F29AB7F28AA802BA97F2DAB8333B6924FCCB485D8C7A4D6C39ED7C5A3DBCBADDDCEB1 +DFD2B8E1D4BCE1D6BFE3D8C3E3D8C3E3DAC5E6DDCACCB995A584429A752C875C09875C0A +855C0A886111875F109E7D3FC8B694C9B895CAB998CABA98C9B998C7B796C7B796C7B796 +C8B999CDBFA3D0C2A8D0C3A9D2C4ACD2C5ADD4C8B0D6CBB5D1C4ACAB956AA18857947841 +836425866628DED9D0F0F3F9EDEDF1EEEFF3EFF0F4F1F2F5F1F2F5F3F4F6F3F4F6F4F5F6 +F5F6F8F6F7F8F6F7F9F7F8F9F8F9FAF8F9FAF9F9FAF9FAFBFAFAFBFAFAFBFBFBFCFBFBFC +FCFCFDFCFCFDFCFCFDFDFDFEFCFCFEFDFDFDFDFDFEFDFDFEFDFDFEFEFEFEFDFDFDFDFDFD +FEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFDFDFDFFFFFF +6563A40000650C097009066E08056D0B096F0000663B3D8FD3E6F4DAEEF9D4E7F4D6E9F6 +D5E8F5D6E9F6D6E9F6D6E9F6D5E8F5D9EBF6CAE2F3A0CAEB6CAEDF68ACDE64AADE9FCAEA +D9EAF6D2E6F5D3E7F5D4E7F5D6E8F6D6E9F6D7E9F7D8EAF7D9EAF6D9EBF7D9EAF6DEEDF7 +E5F1F9E4F1F8E5F0F9E4F0F8E3EFF8DEE9F4CED3E6B5B2CFB5B3D0B7B5D0BBB6CFC7BACC +BBB6CFB6B4D1B7B5D0B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D1B6B4D0B4B2CFC0BED6716DA300005A03015C03025C140E6831307E6165A0 +747BAEA5B0D1B8C4DEBFCDE3CFDFEED7E7F4D1E0EFBDC7DE3B2E7B11005B1A07621A0761 +12005B8486B6E6FCFFDAEEFAD6EAF7D3E7F5CEE0F1C6D4E8C3D0E4B2BDD8949AC28085B5 +4E4E9138368209046000005802005B08016009026008016007005F07005F06005E07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005E07005E03005F280C56541C4B04005F07005F07005E +06005E07005F06005E05005B0F166F2245954399D73A93D45FA7DC8FC1E78BBFE68BC0E6 +8FC2E692C3E797C6E99AC7E9A1CCEBA6CFECAAD0ECAFD4EEB0D4EEAED3EDABD1ECABD1ED +A6CFEBA3CDEB9CCAEA98C8E954A2DA2789CF2E8DD03893D43C94D53E95D63A93D53A94D5 +4499D756A3DA5AA4DA90C8EB89B2DB1A1C7B04006A0A076F08056D08056D0C096E00006B +8D7F8FFFE8A6F5DFA4F5DC97F1CC68EFC24BEEBF45EEC149EFC14CEFC14BEFBF47EFBE47 +EEBF49EFC55AEFC864F6DFA7F9EAC5F8E8C1F8EAC4F9E9C3F8E9C2F7E8C1F8E7C1F7E8C2 +F8E7BFF7E5BBF6E0AFF6E1B1F1D087E8B33AE7B43BE6B33DE6B33DE6B33DE7B23EE6B23E +E7B541E7B541E6B446E5B345EECF88F4E2B9F4E1B8F5E4BDF6E5BFF5E4BEF4E3BEF5E4BF +F4E2BCF3E0B8F1DCAFEED69FEDD299EBD093ECD49BE9CA87DCAC43DAA83EDCAD4BE2BB68 +E6C67EEDD6A0EDD5A0ECD6A3EDD9AAEEDAADF1E2BFF4E9CFF7EFDCF6EDD9F6EDDAF7EDDC +F6EEDBF5ECD7F4EAD3F3E7CEF2E4C6F0E2C1E4CA90DEBF7AE1C68AE2C990E3C890E2C993 +E2CA92E1C994E1C996E0C690E5D0A5ECDDBFEFE3C9F0E6CFF1E8D3F1E7D4EEE4CEE7D8B9 +E6D5B7E5D6B7E2D1AEDFCEAADAC59AB48935A9791BA67413A57416A7791DA97F28A97E27 +A97F2CA87F2EAA8233B69451CCB487D7C6A3D5C39FD7C5A3DACBADDCCEB1DFD2B8E1D4BC +E1D6BEE3D8C2E3D8C3E3D9C5E6DBC9C6B1899D7933936D21865B08865D0B855C0A8B6417 +8A62159E7E3FC9B897CAB998CBB998CAB999C9B999C8B898C8B897C7B897C9BA9BCEC1A5 +D0C4A9D1C4AAD3C5ADD2C5ADD3C7AFD5C9B3CFC3AAA790619B824D8D70367F5D1C6F4C05 +CAC0AAF0F2F5EBECEEEDEFF2EEEFF3F0F1F4F0F1F4F1F2F4F1F2F5F2F3F6F4F5F6F4F5F7 +F5F6F8F6F7F8F6F7F9F7F8F9F7F9FAF8F9FAF9F9FAF9FAFBFAFAFBFAFAFBFBFBFCFCFCFD +FBFBFCFCFCFDFCFCFDFDFDFEFCFCFDFDFDFEFEFEFEFDFDFEFEFEFEFEFEFEFDFDFDFEFEFE +FFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFDFDFEFFFFFFEFEFF5383689000068 +0B086F08056D09066E0B086F0C096F656BAADBEFF9D3E6F4D5E8F5D5E8F5D6E9F6D6E9F6 +D6E9F6D6E9F6D5E8F5D9EAF6CCE3F3A5CDEB6CAFDF67ACDE67ACDEAAD1ECD9EAF6D1E6F5 +D2E6F6D3E7F6D6E8F5D6E8F6D7E9F6D8E9F6D8EAF7D9EAF7D9EAF6DFEDF8E5F1F9E4F0F8 +E4F0F8E5F1F9E3EEF7D0D6E7C2C3DBB5B3CFB7B5D1B7B5D0BCB6CFCBBCCBBCB6CFB5B4D1 +B7B5D0B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B6B4D1B7B5D1B7B5D1 +B7B5D1B4B2CFBCBAD47F7BAC100A6518146C42438B6268A27C85B6A6B4D4B8C7E0D9EAF6 +E0F1FBE0F1FBDEEEF8DFEFF9D2E0EFB8C1DA3A2D7A11005B1A07621A076113005C7B7CAF +D9EDFAD0E2F3D3E6F5D4E8F6D7EAF7DEF0FAE2F3FBE1F0F9D4E1F1C6D1E69CA4C88A90BC +5556962F2C7B201B7001005A00005702005B08016008015F07005F07005F06005E07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005E06005E06005F331054591E4901006008005E07005E07005F07005F +07005F070160070160121C743B83C63D9AD95BA6DB8EC1E78CC0E68CC0E68EC1E692C3E7 +98C7E89AC8E9A2CCEBA5CFEBAAD0ECAFD4EEAFD4EEAED3EDABD1ECABD1EDA7CFECA4CDEB +9DCAEA9AC9EA57A3DB2788CF2D8CD03792D43B94D53E95D63B94D53B94D44499D754A2DA +5BA5DB87BDE597C5E7353E910100680A076F09066E09066E0B086E00006B5A5082FCE5A4 +F8E1A5F5DC97F1CC67EFC14AEEBF44EFC047EFC04BEFC14CEEBF48EFBE47EEBF49EFC45A +F0C865F6E0A8F9EAC6F8E9C2F8E9C4F9E9C3F8E9C1F8E8C1F8E8C1F7E7C1F8E7BFF7E5BB +F6E0AFF6E1B1F0D085E7B339E7B43BE7B33DE7B33DE6B43EE7B33FE6B33FE6B440E6B441 +E6B547E5B345EECF88F5E2B9F4E2B9F5E4BDF5E4BFF5E4BEF4E3BEF5E4BFF4E2BCF4E0B8 +F1DCAEEED59FEDD299EBD094EDD49DE8C984DCAC43DBAB43DBAA46DCAF4FE0B862E9CC8D +EBD299EDD8A7EDD8AAEEDAADF1E2C0F4EAD0F7EEDCF6EDD9F6EEDAF7EEDBF6EDDAF5EBD7 +F3EAD3F2E7CEF2E4C6F0E1C0E3C98EDEBF7CE1C68BE2C98FE2C88FE2C992E1C992E0C994 +E1C995DFC790E5D1A6ECDDC0EFE4CAF0E6CFF1E7D2F1E9D6F1E8D5EADDC3E5D5B5E5D4B4 +E1D0AEDFCEAAD9C397B18630A97819A57413A57517A8791FAA7F28A97E27A97F2CA87E2D +AA8233B79653CCB587D7C5A3D5C39FD7C5A3DACBADDCCEB2DFD2B8E0D3BBE0D5BDE2D8C2 +E3D8C3E3D8C4E5DAC7C3AE839A752D90691C855B09865C0B865D0C8C65198A63179E7F41 +CAB898CAB999CBBA99CABA99C9B999C9B999C8B897C7B896C9BB9BCEC1A6D0C4A9D1C4AB +D3C6ADD2C6ADD2C6AED4C8B2CEC1A7A58D5D997F498A6D317C5A186D4902BDAF91E6E4DF +EBEDF1ECEEF0EDEFF2EFF0F3EFF0F3F0F1F4F0F1F4F2F3F5F3F4F6F4F5F7F4F5F7F5F6F8 +F6F7F8F7F8F9F7F8F9F8F9FAF9FAFBF9F9FAFAF9FAFAFAFBFBFBFCFBFBFCFCFCFDFBFBFC +FCFCFDFDFDFEFCFCFDFDFDFEFDFDFEFDFDFEFEFEFEFEFEFEFDFDFDFEFEFEFEFEFEFFFFFF +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFEFEFFFDFCFDFFFFFFCDCCE17C7AB202006A0B086F08056D09066E +08056D0D0B718994C3BFD0E7DBEFF9D4E7F4D6E9F6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6 +D5E8F5D8EAF6CEE4F4AFD4ED6EB0E064AADE71B2E0C5DFF2D4E7F6D2E6F5D2E7F6D3E6F6 +D4E7F6D4E8F6D4E8F5D6E9F6D6E9F6D7E9F7D7EAF6E0EEF7E4F0F9E4F0F8E4F0F8E5F1F9 +CDD3E4B5B3CFB6B4D0B7B5D1B6B5D1B7B5D0B9B5CFD2BEC9C1B9CEB5B4D1B7B5D0B7B5D1 +B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B6B4D0B7B5D1B7B5D1B7B5D1B6B4D0B5B2CFBBBAD4 +CDCEE1CACBDFABB9D7AEC0DCCFE4F4DDF4FEDCF2FDDAEEFAD8ECF8D8E9F6D8E9F5D9E9F5 +DAEAF5DCEDF7D1DFEEB8C1DB3A2D7A11005B1A07621A076113005C7D7EB0DBF0FCD2E5F4 +D3E7F5D3E7F5D4E7F5D7E8F5D8E9F6DDECF7E0EEF9E3F1FBE9F8FEECFBFFE8F6FCD1DEED +C2CDE39098C1777DB02F2D7C01005A03005C08026009026007015F06005E07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +08005E02005F240B59622148521A4800006209005E07005E07005F07005F06005E07005F +07015F04005A15237A357BC15299D38DC3E78EC1E58EC1E68FC1E692C4E797C6E99AC8E9 +A1CCEBA4CEECA9D0ECAED3EDAFD4EEAED3EDACD1ECACD1EDA8CFECA6CEEB9ECBEA9DC9EA +60A8DD298AD02D8BD03591D33B94D53D95D53E96D53E96D54498D653A1DA5AA5DC83BAE4 +9ECEEE84A3D01010740B097008056D09066E09066E08056D100C6F8F818CD5C29EFCE29A +F0C965EFC14AEEBF45EFC048EFC04BEEC14DEFBF4AEFBE47EEBE47EFC256F0C661F6DFA7 +F9EBC7F8E9C3F8E9C3F9E8C2F8E8C2F8E8C2F8E8C2F7E7C1F8E7BFF7E5BBF6E0AFF6E1B1 +F0CF81E6B134E7B23AE7B33EE6B33EE6B33FE6B33EE6B33FE6B443E6B444E6B548E5B448 +EED08EF5E3BAF4E2B9F4E4BDF4E4BFF4E3BEF5E3BEF5E4BFF3E2BBF3E0B8F1DCAEEED49C +ECD096ECD197EED7A2E6C379DAA73DDBAA42DBAB47DAAA46D9AA47DBAE52DEB660E8CE93 +EDD9ADEDDAADF2E2C2F5E9D2F7EEDBF6EDD8F6EDD9F6EDDAF6EDDAF5EBD7F4EAD2F3E7CD +F2E4C7EFE0BDE2C689DFC081E1C78CE0C88FE0C88EE0C88FE0C890E1C893E1C994E0C790 +E6D3AAEDDFC3EFE3CAF0E6D0F1E7D2F1E9D6F2EAD7F1E9D8EBDFC6E7D9BCE0CFACDFCDAB +D4BB8BAB7E21A67615A57415A5771AA87C22AA7E28A97D28A87F2CA77E2CAB8335BC9D5E +CEB78BD6C4A1D5C39ED6C5A3DACBADDCCEB2DED2B8DED2B8E0D5BDE2D7C1E1D7C2E2D7C3 +E1D6C1B89F6D90691B8A6211845B09855C0A8A62138E691F8B651BA28449CCBA9ACBBA9A +CABB9BCBBB9CCABA9BC9B999C8B897C8B999CBBC9ECFC2A7D1C4A9D1C4ABD2C6ADD2C6AE +D2C6AED4C9B2CBBEA4A0865594774082632373520C6C48009B8251C1B195EAEBEDE9EBEF +EBEDF0ECEEF1EDEEF2EEEFF3EFF0F3F0F1F4F2F3F5F2F3F6F3F4F6F4F5F7F4F5F7F6F7F8 +F6F7F9F7F8F9F8F9FAF8F9FAF9FAFBF9F9FAFAFAFBFAFAFBFBFBFCFCFCFDFBFBFCFCFCFD +FDFDFEFCFCFDFCFCFEFDFDFEFEFEFEFDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFEFEFFFFFFFBFBFCFFFFFF9C9BC53A378B08056D09066E08056D0A076E04016B1B1A7A +B9CAE2D1E4F3D6E9F6D5E8F5D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D8EAF6 +CEE4F4B2D5EF6EB0E064AADE77B5E2CDE4F4D3E7F6D2E6F5D2E7F6D3E6F6D3E7F6D3E7F6 +D4E7F6D5E8F5D5E8F6D6E9F6D6E9F6E0EEF8E4F0F9E3EFF8E5F2F9E1ECF6C0C1D9B5B3CF +B7B5D1B7B5D1B6B4D1B7B5D0B6B4D0D2BEC9C5BACDB4B4D1B7B5D0B6B5D1B7B5D1B7B5D1 +B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1 +B7B5D1B6B4D0B7B5D1B7B5D1B7B5D0B4B2CFB3B1CEB8B6D2BCBAD4CDCFE1E1E5EFE8EDF5 +DFF2FCD6EDFACEE4F4CDE2F2CFE3F3D3E5F4D4E6F5D8E9F6DAEAF7DAEBF6DBEBF6DDEEF8 +D2E0EFB9C2DC3A2D7A11005B1A07621A076113005C7D7EB0DBF1FCD2E6F4D4E7F6D3E7F6 +D5E8F5D7EAF6D9EBF7DDEDF7DFEDF8DFEDF8DEECF7DEEBF6DFEDF7E2F1FAE6F5FCD9EAF6 +C4D3E7757BAF33307F1F1B7000005800005704005C08005F07005F06005E07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F06005F08005E000060 +3310567427434B174800006309005E07005F07005F07005F07005F06005E07005F06005E +0B0A66244B9B4988C790C7EB90C2E68DC1E68FC1E692C3E796C5E899C7E9A1CCEBA4CDEC +A9D0ECADD2EDAFD4EEAED3EDACD1ECACD2EDA8D0ECA6CFEB9FCBEA9ECAEA63AADE2A8BD1 +2D8CD13591D33C94D53D95D53E96D63E96D54498D654A1DA5AA5DC84BBE49AC9EA98BDE1 +2A328910107406026B09066E09066E08056D0F0C6F433B7BB9A898FFE89BEEC764EFC14A +EEBF46EFBF49EEC04CEFC04DEEBF4AEEBE47EEBE47EFC154EFC560F6DFA7F9EAC7F8E9C3 +F8E8C3F9E9C1F9E8C2F8E7C2F7E7C2F8E8C2F8E7BFF7E5BBF6E1AFF6E1B1F0CE80E6B133 +E6B239E6B43EE7B33EE6B23FE5B23EE6B340E7B545E7B446E6B549E5B449EED18FF4E2BB +F5E1B9F5E4BDF5E5BFF5E4BEF5E3BEF4E4BFF3E2BBF2E0B8F0DCADEDD49CECD095ECD299 +EDD7A3E5C176DAA73CDBA943DBAB47DBAC4ADAAC4DD9AB4CDAAD4FE3C17AEBD3A2EDD9AB +F3E5C6F6EAD3F7EDDBF5ECD8F6ECD9F5ECD9F6EDDAF4EBD6F4E9D1F2E6CCF2E4C8EFDFBC +E1C587E0C182E0C68CE1C78FE1C78EE1C78FE1C891E1C893E1C993E0C790E7D4ACEDE0C5 +EFE3CAF0E6D0F1E7D3F2E9D6F1E9D6F2EAD8EFE5D2EBDFC7DFCEABDFCCA9D2B987A97B1D +A57414A47415A5771BA87C22A97D27A97D28A87E2CA67D2CAB8336BE9E63CEB88DD6C4A0 +D5C39ED7C5A3DACBADDCCEB2DED2B8DED2B9E0D4BDE1D6C1E2D7C2E1D7C2DFD4BFB49A65 +8D651589600E845B09855C0A8A64168F6A208C671CA3874CCCBC9ACBBB9ACBBB9CCBBC9C +CABA9BC8B898C8B898C9BA9CCBBD9FCFC2A7D1C3A8D1C4ABD1C5ACD2C6AED2C7AED4C9B2 +CBBEA39E845292753D7E601E704F076A4700947945B4A27EE4E2DEECEFF5EAECEFECEEF1 +EDEEF1EEEFF3EEEFF3F0F1F4F1F2F5F2F3F5F3F4F6F4F5F7F4F5F7F5F6F8F6F7F8F7F8F9 +F7F8F9F8F9FAF9FAFBF9F9FAFAFAFBFAFAFBFBFBFCFBFBFCFBFBFCFCFCFDFCFCFDFDFDFE +FDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFDFDFDFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFDFDFE +FFFFFFEAEAF23532870000680B086F08056D09066E0B086F03006A7A83B8DDF1FBD4E7F4 +D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D7EAF6D1E6F5BFDCF1 +72B2E062A8DD8CBFE6D5E8F6D2E6F5D2E6F5D3E6F6D2E7F6D3E6F6D3E6F6D3E6F5D3E7F6 +D4E7F6D5E7F5D5E8F5DFEEF8E3EFF8E4F1F9D3DAEAC4C6DCB6B3D0B7B5D1B7B5D1B6B4D0 +B6B4D1B7B5D0B5B4D1CFBDC8D1BEC9B4B4D1B7B5D0B6B4D1B7B5D1B7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B6B4D0B7B5D1 +B7B5D1B7B5D1B7B5D1C5C4DBCECFE1E3E7F0E9EEF5F4FAFDF4F9FDF3F8FCDCEBF6D2E5F4 +CEE3F4D0E5F4D0E6F4D3E6F5D4E7F6D7E9F6D8EAF6D9E9F5DAE8F3DCEBF5D0DDECB7BED8 +3A2C7A11005B1A07621A076113005C7B7CAED9EDF7D0E2F0D2E4F2D2E5F2D3E5F3D6E8F5 +D8E9F6DCECF7DFEDF8E0EEF8E1EFF9E1EEF9E0EEF8DEECF8DDEBF7DBEAF5DBEBF7DCEFFB +D2E5F4B7C7E0828AB96267A216126A02005B08026009026007005F07005F06005E07005F +07005F07005F07005F07005F07005F07005F07005F07005E09005E00006165224BA63936 +43144701006108005E07005E07005F07005F07005F07005F06005E07005F07016005005C +1A2C8080B3DD8CBFE48DC1E68EC1E690C2E794C5E799C8E9A1CCEBA4CDEBA9D0ECAED3ED +AFD4EEAED3EDAED3EDACD2EDA9D0ECA7CFECA1CCEBA2CCEB6BAEDF2E8DD22E8DD13490D3 +3A93D43D95D53E96D63D95D5459AD755A2DB5BA6DC80BAE395C6E8A2CAE893B8DE45549F +0200680B086F09066E09066E0C086E00006A574E82F4DB98F1CA61EEC048EEBE46EFBF49 +EEC04CEFC04CEEBE49EEBD47EDBE49EEC257EFC661F6DFA7F9EAC6F8E9C3F9E9C3F8E8C2 +F8E8C2F8E8C3F8E8C3F8E9C3F8E7C0F7E5BBF6E0AFF6E1B2EFCC7CE6B034E7B23BE7B33D +E7B33DE6B33EE6B23EE6B442E6B547E5B547E5B64BE6B850EFD292F4E2BAF5E1B9F5E4BE +F4E4BFF5E4BFF5E3BFF4E4BFF3E2BCF2E0B8F0DBACEDD39BECD096ECD29BEED5A3E3BD6D +D9A63ADAAA43DAAB47DAAB4BDAAC4EDAAE53DAAE54DBB15ADDB768E2C27FF0E1BFF4EAD1 +F6EEDBF5ECD8F5EDD9F6EDD9F6EDDAF4EBD6F4E8D0F2E6CAF1E4C6EDDDB8E1C487E0C386 +E1C58AE0C78EE1C68FE1C68FE0C890E1C993E0C892DFC790E7D6B0EDE1C8EFE3CBF0E6D1 +F1E7D3F2E9D5F1E9D6F1E9D7F1E9D7F1E9D8E8DABFDFCDAACCB078A67414A47312A47416 +A5771CA67A22A87B26A77C27A77F2DA57D2BAC8539C2A46ECFBA90D6C3A0D5C29ED7C6A5 +DBCDB1DDCFB4DFD2B9DFD3BBE0D4BDE1D6C0E2D7C2DFD3BCDACDB3AA8B50885F0C875E0C +845B0A865D0D8D671C916C258E6A21A68A53CCBC9DCBBC9BCBBB9CCBBC9DCBBC9DC8B99A +CABB9CCBBDA0CDC0A4D0C3A9D0C3A9D1C5ACD2C6ADD2C7AFD2C7B0D4C8B3C8B99E967C46 +8B6E337756126D4A006844008A6F36A59064C3B69BD4CEBEEAECEFEAECEFEBECEFECEEF1 +EDEEF2EEEFF3F0F1F4F0F1F4F2F3F5F3F4F6F3F4F6F4F5F7F4F5F7F6F7F8F6F7F8F7F8F9 +F8F9FAF8F9FAF9FAFBF9F9FAFAFAFBFAFAFBFBFBFCFCFCFDFBFBFCFCFCFDFDFDFEFCFCFD +FDFDFDFDFDFEFDFDFEFEFEFEFDFDFDFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEF1F0F79C9BC5 +0000660C0A7009066E08056D0B086F010069282882C7D9ECD9EDF8D4E6F4D6E9F6D5E8F5 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D7E9F6D3E7F5C9E2F277B5E25FA7DD +9ECAEAD6E8F6D2E6F5D2E6F6D2E7F6D3E7F6D2E7F6D2E7F6D3E6F6D3E6F6D2E7F6D3E7F6 +D4E7F6DFEDF7E8F4FCDCE6F2B9B7D2B5B3CFB7B5D1B7B5D1B6B4D0B7B5D0B6B4D1B7B5D0 +B9B5D0CEBDC8DEC2C7B9B5D0B8B5D0B6B4D1B7B5D0B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B6B4D0B7B5D1B7B5D1B6B3D0B8B6D1BEBDD6 +DDE0EDF0F6FBF3F8FCF6FCFEF4FBFDF2F8FBF2F7FBF2F7FBE7F2F9DAEAF7CDE4F4CFE4F5 +CFE4F4D1E5F3D1E5F3D4E6F3D9EBF7DCEEFBE1F4FEE4F9FFD9EDF8C0CFE93C307D11005A +1A07621A076112005C8289B9E5FFFFDBF5FDDBF4FEDAF2FFD8EFFDD7EBF9D7EAF7DAE8F4 +DDEBF5DFEDF6E1EEF8E0EEF8E1EFF8E0EEF9DFEDF8DDECF7DAEBF7D4E7F4D3E8F5D8EDF9 +E0F4FEDDF1FBAEBCD9696EA62C2A7A00005709026007005F06005E07005F07005F07005F +07005F07005F07005F07005F07005F07005E05005E0E035F862A3DA934293E1146040060 +07005E07005E07005F07005F07005F07005F07005F06005E07005F07005F06015E2C3987 +6A8FC397CEEF8CBEE490C3E794C5E798C7E9A1CBEBA4CDEBA9D0ECAFD3EEAFD4EDAFD4EE +AFD4EEADD2EDAAD0EDA8CFEDA3CDEBA4CEEC70B0E02F8DD12E8CD23390D33792D43D95D6 +3E96D53E96D6479BD855A3DB5CA6DC7EB8E393C4E7A4CCEAACD7F186A6D20F0E7207036C +09066E08056D09066E0A066D070570C3AD8CF7CE63EDBF48EEBE45EFBF47EFBF4AEEBF4B +EFBE47EEBE48ECBF4BEEC35BF0C767F6E0A9F9EAC7F8E9C4F9EAC5F8E9C4F8E8C2F9E9C4 +F8E9C5F8E8C5F7E7C0F7E5BBF5E0AEF5E1B1EFCB78E5B036E6B23CE7B33DE7B23CE6B13D +E6B13EE5B444E5B549E4B448E6B74DE7BA57EFD495F4E3BBF4E2BAF4E3BEF5E3BFF4E3BF +F5E3C0F4E4C0F3E1BAF2DFB7F0DAAAECD299ECD096EDD39DEED5A3E0B964D7A53BD9AA45 +D9AB48DAAD4FDAAE50DAAF54DAAF57DBB25DDBB360DCB565E8D09FEFDEBAF5ECD8F6EDDA +F5ECD9F5ECD9F6EDDAF4EBD6F4E9D2F2E6CBF0E3C6EBD9B1DFC385E1C589E1C58AE1C68E +E0C58EDFC68FE1C991E1C994E0C894DFC691E7D7B3EFE2C9EFE3CBF0E6D1F1E7D3F1E9D6 +F2E9D7F1E9D7F0E8D5F0E8D6EEE4CEEBE0C7CFB47EA26F0AA37110A47517A4781CA67A21 +A77C26A77D29A87F2FA77E2EAC873DC4AA75D0BB91D5C3A0D4C3A0D8C7A7DCCEB2DED0B5 +DFD2BAE0D4BCE0D4BDE1D5BEE1D5BFDBCEB6D5C6A8A18040835B07845C08865D0C886011 +8E691F916E278E6B23A78C54CCBD9FCCBC9DCABB9CCBBC9DCBBC9ECABB9DCDBEA1D1C4A8 +D2C5ABD2C6ADD2C6AED2C6ADD2C6AED2C7AFD2C6AFD4C9B4C6B69891753E86682C714F09 +6C4900674400826529A0895BB7A784B3A27DD0C6B2EDEFF2EDEFF5EBEDF1ECEEF1EDEEF1 +EEEEF2EEEFF3F1F2F5F2F3F6F2F3F6F2F3F5F3F4F6F5F6F8F6F7F9F6F7F8F7F8F9F8F9FA +F8F9FAF9FAFBF9F9FAFAFAFBFAFAFBFBFBFCFCFCFDFBFBFCFCFCFDFCFCFDFCFCFEFCFCFD +FEFEFEFDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFDFFFFFFBCBBD86563A50000680B086F +09066E09066E09066E1411754F539CD5E8F5D5E8F5D5E8F5D5E8F5D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D7E9F6D3E7F5CAE2F379B6E25FA7DDA3CDEBD6E9F6 +D2E6F5D2E6F5D3E7F6D2E7F6D3E6F6D3E7F6D4E7F6D3E7F6D3E7F6D3E6F6D3E7F5E0EFF8 +DEE8F3CED3E5B6B4D0B7B5D1B7B5D1B6B4D0B7B5D1B7B5D0B6B4D1B7B5D0BAB6CFCCBCC7 +DFC2C5C0B8CEB9B5D0B6B4D1B7B5D0B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D1B6B4D0B7B5D1B7B5D1B7B5D1B5B3D0B8B6D1CECFE1D8DAE9EBF0F7F3F9FC +F1F7FBF2F7FBF2F8FBF2F8FBF2F7FBF2F8FCE9F3FADCEBF6CBE1F1CDE1F1CFE5F4D4EBFA +D7F0FDDBF2FDD4E3F0CED6E1BFBBC4BBB3BAAB9DA9907D93321F6B13005E1A0761190661 +14015F604B7AA9989DA596A0AFA7B1B4AFBABDBFCBCEDAE7D5E6F3E3F8FFE3F4FEE1F2FC +DFECF6DEEBF5DFECF6E0EEF8DFEEF8DDEDF8DCECF7D7E9F6D3E7F5D2E6F4D1E4F3D6E9F6 +CFE1F1AEBBD88189B822207301005B06015E09026007005F06005E07005F07005F07005F +07005F07005E06005F08005E01005F250C5B973138992D293D114604006007005E07005E +07005F07005F07005F07005F07005F07005E07005F07005F0802610F0E6943569B92C7EA +8DC0E690C2E694C5E798C7E9A0CBEBA4CDEBA9D0ECAFD3EEB0D4EDAFD3EDAFD3EDADD2ED +AAD0ECA8D0ECA3CDEBA5CEEC71B2E02E8DD12F8DD23491D33892D43E96D63E96D53E96D6 +479BD854A2DB5BA5DC7CB7E392C3E7A5CEEBA4CDEB98BDE12B318911107407046D09066E +09066E0A076D03016F948281FDD362EDBF49EEBE45EFBF47EFBF49EEBF4AEEBE47EDBE48 +EDBF4BEEC45CEFC767F6E0ABF9EBC7F8E9C4F9EAC6F8EAC5F8E9C3F9E9C4F8E9C5F9E9C5 +F7E7C0F7E5BCF5E0AEF5E1B1EECB77E5B138E6B33DE7B23DE6B23CE5B13DE5B13EE5B444 +E5B549E4B447E6B74EE7BA59EFD498F4E4BCF4E3BBF4E3BEF5E4BEF4E3BFF5E3C0F5E4C0 +F3E1BAF3DFB6F0D9AAECD29AEBD197EDD39CEDD5A1E0B862D7A63DD9AA46DAAB4AD9AD4F +DAAE51DBAF55DBAF56DBB25EDBB563DDB769E8CF9FECDAB4F2E5CCF4EAD5F5ECD8F6EDDA +F5EDD9F4EBD6F4E9D3F2E6CBF1E4C7EAD8ADDEC182E0C489E0C58AE0C58DE0C58DE0C68F +E1C992E1C995E0C894DFC792E8D8B5EEE3CAEFE4CBF0E6D2F0E7D3F1E8D6F2E8D7F1E8D6 +F0E8D6F0E7D5EDE3CDEDE4CDD6BF8FA7791BA37314A27316A5791EA67A23A77E29A77E2B +A88030A87F30AD883FC5AC78D0BB92D5C3A0D5C4A0D7C7A7DCCEB2DDCFB5DFD2BAE0D4BC +E0D4BDE0D4BEE0D4BFD9CCB2D1C1A09D7A37835A07845C09865D0C8861118D691F916E27 +8F6B23A88D56CDBE9FCCBC9CCABB9CCBBC9DCBBC9ECBBC9FCEC0A4D2C6ABD3C7AED4C8B0 +D3C8B0D3C7AFD2C7AFD2C7AFD2C6AFD4C9B4C4B4958F7239846526704E076C4900674400 +8063279C8556B8A988B6A684C2B497D9D3C7DEDAD3E8E8E7EBEDEEEFF1F6EDEEF3EEEEF2 +EFF0F3F0F1F4F1F2F5F2F3F6F3F4F6F4F5F7F5F6F8F6F7F8F7F8F9F7F8F9F8F9FAF9FAFB +F9FAFBFAF9FAFAFAFBFBFBFCFBFBFCFCFCFDFBFBFCFCFCFDFDFDFEFCFCFDFDFDFEFEFEFE +FDFDFEFDFDFDFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFCFCFD44429101006A0B086F09066E09066E0B096F +0000687078B2B9C8E2DAEDF8D4E7F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D5E8F5D6E9F6D4E8F5CEE5F47DB8E35DA7DCAED3EDD7E9F6D2E6F5D2E6F6 +D3E7F6D2E7F6D3E7F6D3E6F6D4E7F6D4E7F6D4E6F6D2E6F5D4E8F6DAE6F3BDBDD6B6B4D0 +B6B4D0B7B5D1B6B4D0B7B5D1B7B5D1B7B5D0B6B4D1B7B5D0BAB6CEC9BAC7E0C2C2E2C6C9 +C0B8CEB5B4D1B7B5D0B6B4D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B6B4D0 +B7B5D1B7B5D1B5B3D0BAB9D3C4C4DBDFE3EFF2F9FDF4FAFEF1F7FCF0F6FBF1F7FBF2F7FC +F3F8FBF2F9FBF2F8FBF2F7FBEEF5FAE0EEF9D3EDFCD7F3FFC7D4E3ACA3AD997F87703437 +69282A6420225A0E0F5708074F010544000B22044E170664190560190560170663320026 +4E00004E00005303035709095C131466242668272A7B474AAA959CBBB0B9E0EFF6E9FDFF +E5F6FDDFECF6DEEBF4DDEAF5DCEBF6D8E9F6D4E7F5D5E7F5D5E8F5D5E8F5D7E9F6DDF0FA +E3F7FFB9C7E08E97C135358000005407025F08016006005E07005F06005F07005F06005F +07005E07005E00006069244CA8352C8929293B104405006007005E07005E07005F07005F +07005F07005F07005F07005F07005F06005E07005F04015C02005A5773B093C9EC8FC1E6 +94C4E797C6E8A0CBEBA4CDEBAAD0ECAFD4EEB0D3EDAFD3EDB0D4EEAED3EDABD1ECAAD1ED +A6CEECA7CFEC7CB7E3338FD3328FD33692D43A94D43E96D63D96D53D95D64398D650A0D9 +57A4DB79B5E290C2E7A7CFECA3CDEBA5CEEC8AABD6424F9B0000660B086F09066E0A076D +00006E32296DCEAD67E4B64AF0C045EEBE47EEBE47EEBE47EEBD46EDBD4AEEBF4EEFC55E +EFC969F6E1ADF9EBC8F8E9C6F8E9C7F9E9C6F9EAC6F8E9C5F8EAC6F9E9C5F7E7C2F7E5BD +F5E0AEF5E1B1EDC973E6B037E6B23DE7B23DE6B13CE4B13DE4B13FE5B444E5B549E4B448 +E5B74FE7BC5BF0D69AF4E4BEF4E4BCF4E3BEF4E4BEF5E4C0F4E4C0F4E4BFF3E0BAF2DFB5 +EFD9A9ECD29AEBD098ECD29CECD29EDEB45AD8A740D9AB47DAAB4BDAAC50DAAD52DAAF56 +DAAF57DAB25EDAB461DCB76AEAD3A7ECDAB5EEDDBAEEDEBDF1E4C8F5ECD9F6EDD9F4EBD6 +F4E8D2F2E5CBF1E3C7E8D4A5DCBF7DDEC387E0C48ADFC58ADFC48BE0C791E1C995E1C996 +DFC793DEC792E9DAB9EFE4CCEFE4CDF0E7D3F1E8D4F2E8D6F1E9D6F0E9D6F1E8D6F0E7D4 +EDE2CDEBE0C6DDC99FC8AA6AB89245A17113A67922A77C27A97F2EA87F2EA98333A88133 +AE8A42C9B284D0BD95D4C3A0D6C5A2D7C8A8DBCDB2DCCFB4DED2B9E0D4BCDFD4BDDFD3BC +DFD3BDD4C6A8C6B28B906A1F835906845B09855E0E8861148D671E92702A916E28AC9260 +CEBEA1CCBC9CCBBB9CCBBC9DCCBD9FCEC0A4D1C4AAD6CAB3D6CBB4D6CBB5D5CAB5D4C9B3 +D3C8B2D2C7B0D1C5AED5C9B3BDAE8D886B307C5C1B6D4A016C49016846007C5D20947C4B +BAAA89BAA989BBAC8DBBAB8CBCAD8EC0B499C0B59AD1C8B9E8E7E4ECEDEEEFF1F6EEEFF3 +EFF0F3F1F2F4F1F2F5F3F4F6F4F5F7F4F5F8F6F7F8F6F7F9F8F9F9F8F9FAF8F9FAF9FAFB +F9F9FAFAFAFBFAFBFCFBFBFCFCFCFDFBFBFCFCFCFDFDFDFEFCFCFDFDFDFEFEFEFEFDFDFE +FDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFCFCFDFFFFFFE0DFEC26247F0100690B086F08056D09066E07046C07056D97A4CC +D1E3F2D4E7F5D5E8F5D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D5E8F5D6E9F6D4E8F5D1E6F47FB9E35CA6DBB1D5EED7E9F7D1E6F5D2E6F6D3E7F6D3E7F6 +D2E7F6D2E6F6D3E7F6D3E7F6D3E6F5D2E6F5D6EAF8D1DAEAB7B4D0B6B4D0B7B5D1B6B4D0 +B7B5D1B7B5D1B7B5D1B7B5D0B6B4D1B7B5D0BAB6CFC8BAC7E1C2C2E9C7C6C7BBCDB3B3D1 +B6B4D0B7B5D0B6B4D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B6B4D0B7B5D1B6B4D0B5B3CF +B5B3CFCBCCE0DBDEECECF2F9F0F7FCEFF5FBF0F6FBF0F6FCF1F7FBF2F8FCF2F8FCF3F9FC +F4FBFEF4FBFEF3FCFFE1EEF7B2B1BEA2929C957A837E4F556D2F324C00004C00004D0000 +4F00005100004E000548021323055016066419056019056017066338042E550200520102 +5100005000004F00004D00004A0000530708794043875A5EA68E93AF9CA2CCCCD5E8FAFF +E9FDFEE4F8FFE0F1FCD8EAF7D5E8F6D5E8F6D5E8F5D6E9F6D6E8F5D4E6F4D5E7F5D4E5F3 +CCDDEE7A80B22E2B7B0C0A6200005907005F06005E07005F06005F07005E05005F09015E +16065E8C2F439E312C872A293B104406005F07005E07005E07005F07005F07005F07005F +07005F07005F07005F07005F06005E08026101005933408B8DC0E68EC0E595C5E897C5E8 +A0CCEBA5CDECAAD0ECAFD4EEB0D3EDAFD3EDB0D4EEAED3EDACD1ECABD0EDA7CFECA8D0EC +80BAE43893D43390D33692D43B94D53F96D53D95D63B94D54197D650A1D958A4DB77B5E2 +90C2E6A8CFECA4CDEBA2CAE9A3CBE95D71B10100680A076F09066E0A076D02006E221B6C +8C756BDEB24CF3C245EDBE47EFBE46EFBE46EEBD46EDBE4BEEBF4FEFC55FF0CA6CF6E1AD +F9EBC9F8E9C6F9EAC8F8EAC7F8E9C6F8E9C6F9EAC6F8E9C5F7E7C1F7E5BCF5E0AEF5E1B1 +EDC871E6AF35E7B23DE6B23EE6B13DE5B13DE4B13FE5B445E5B448E4B447E5B74FE8BD5D +F0D69BF4E3BDF4E3BCF4E3BEF4E4BEF5E4C1F4E3BFF4E3BFF3E0BAF1DEB4EFD9A9ECD19A +EBD097ECD29BECD19BDDB257D8A741D9AA46D9AB4BD9AC51DAAE52DAAF56DAAF57DAB25E +DAB462DCB86CEBD4AAEDDBB7EEDDBBEDDCB9EFE0C0F2E6CDF4EAD4F5ECD7F3E9D2F1E5CA +F0E3C6E7D2A3DCBF7CDEC387E0C48BDEC489DEC48ADFC791E1C995E1C996DEC792DEC792 +EADABBEFE5CDF0E5CEF1E7D3F1E8D4F1E9D6F1E8D6F0E8D6F1E8D6F0E7D4EDE2CCEADEC3 +DBC69ACFB378C5A564A77B23A3751AA77B26A97F2EA87F2EA98334A88133AF8B44CBB589 +D1BE97D4C2A0D5C4A2D7C7A8DBCDB1DBCFB3DED2B9DFD3BBDFD4BDDFD3BCDFD3BDD2C2A3 +C1AC818D6618835907845B09865F0F8962168C671E92702B916F29AF9564CEBFA2CCBD9D +CCBC9CCBBC9DCCBDA0CEC0A4D2C5ABD7CBB5D7CCB6D7CCB7D6CCB6D5CAB4D4C9B3D2C7B1 +D1C5AED4C9B3BCAB8986692C7B5A186D49016B49026946007A5C1D927A47BAAA8AB9A988 +BDAF91BEB093BCAD8FB6A786B4A482BEB095D5CEC0DCD8CEE9E8E6EEEFF1F0F1F5F0F1F5 +F1F1F4F2F3F6F3F4F6F4F5F7F5F6F8F6F7F8F7F8F9F8F9FAF8F9FAF9FAFBF9F9FAFAFAFB +FAFAFBFBFBFCFBFBFCFBFBFCFCFCFDFDFDFEFCFCFDFDFDFEFEFEFEFDFDFEFDFDFDFEFEFE +FFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFCFCFD +FFFFFF8280B50000660C097009066E09066E0B086F0A086F4E529BD7EAF6D7EAF6D5E8F5 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5 +D6E9F6DCECF78EC1E759A4DBB8D8F0D8E9F7D2E6F5D3E7F6D2E6F6D3E7F6D3E6F6D2E7F6 +D3E6F5D3E6F6D2E6F5D3E7F5D1E2F1BCBBD5B5B3CFB7B5D1B6B4D0B7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D0B6B4D1B7B5D0BBB6CEC7BAC7DEC2C1E7C4C3E0C3C8C3B9CFBBB6D0B6B4D1 +B7B5D0B7B5D1B7B5D1B7B5D1B7B5D1B6B4D0B7B5D1B7B5D1B8B6D2D2D3E4E1E4EFF0F6FB +F4FBFEF0F7FCF0F6FBF0F7FCF1F7FBF0F6FBF1F7FBF1F6FAF1F6FAF2F7FBEBEAEDE2DBDE +DBCED0A986894E00004800004900004C0000500000550303560404560303550203550201 +51020649021323055016066419056019056017066438032D560100540102550101550202 +5502025502035503035201014C00004A000046000047000062191A7B4548875A5EB2A2A9 +C8C9D2DAECF8D2E2EFD3E4F2D5E8F5D6E8F5D7E9F6D7E9F6D6E8F5D6E8F5D9EBF7DBEEF9 +D0E1F097A1C724207406005E0A046107005F07005F09005E03005F471754943347AF3B38 +8D2E2B7D2727320D4706005F07005E07005E07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F06005E0A09612F3A87759BCC97CAEC94C3E6A1CCEBA6CDEB +ABD0ECAFD4EEB0D3EDAFD3EDAFD3EEAFD4EDADD2ECACD1EDA7CFECA8CFEC87BEE54197D6 +3792D43591D33A94D53E96D53D95D63A94D53E96D650A0D95AA5DC77B5E28EC1E6A7CFEC +A3CDEBA4CDEBAAD3EE9DC2E3252B8404006A0A076E09066D08056E0D096D08066FA18157 +F7C549EDBD48EEBE47EEBD47EDBD47EDBE4CEEBE50EFC561F0CA6FF7E1B0F9EBC9F8EAC7 +F9EBC9F9EBC9F8EAC9F9E9C8F8EAC8F8E9C5F7E7BFF6E4BBF5DFADF5E0B0EDC66DE6AF34 +E7B33EE5B441E5B23EE5B03DE4B03EE4B344E5B448E4B346E5B750E8BD61F1D7A0F4E3BE +F4E3BDF4E3BFF4E3BFF5E3C0F4E3C0F4E3BFF2E0B8F1DDB3EFD8A8ECD199EBCF96EBD199 +EBCF95DBAE50D8A943D9AB47D8AB4AD8AC50D9AE52D9AF57DAB059DBB462DAB463DDBB73 +ECD9B2EDDDBAEEDDBBEEDDBBEDDDBBECDCB9EDDDBCF0E3C7F2E6CCF0E3C6F0E1C3E5CD9A +DBBE7DDEC487DEC489DCC389DDC38AE0C792E1C995E0C996DEC692DFC796EBDDC1EFE5CD +F0E5CFF1E7D4F1E8D5F1E9D6F0E8D6F1E8D6F0E7D5EFE6D3ECE2CBE5D6B6D7C08FCBB073 +CFB67DC6A869B58F44AB8333A67E2BA8802FA98336A67F31B39251D0BD95D2BF9AD4C29F +D4C3A2D7C6A7DACBAFDBCCB1DDD0B7DED1B8DFD3BCDDD1B9DED2BBC9B792B19762875E0E +845A08845B0A8760138A63198E692293722E91712CB29A6ACEC0A3CCBD9ECBBD9FCBBD9E +CDBEA2D0C3A8D4C7B0D8CDB8D9CEB9DAD0BCDAD0BCD8CDB9D5CBB5D4CAB3D1C5AED3C8B2 +B5A27C7F60207654116C49016B4901684500765818907743BEAF91BCAE8FBEB193BFB194 +BEB093B8A98AB6A686B5A686BAAC8FBFB196CABFA9CDC3AFD7D1C2EFEFF1F0F1F4F1F2F5 +F2F3F5F3F4F6F4F5F7F4F5F7F6F7F9F7F8F9F7F8F9F8F9FAF8F9FAF9FAFBF9F9FAFAFAFB +FAFAFBFBFBFCFCFCFDFCFCFDFCFCFDFDFDFEFDFDFEFEFEFEFDFDFDFEFEFEFEFEFEFFFFFF +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFFFFFFFFFEFDFEFFFFFFF2F2F7312D85 +0100690A076F08056D0A076E05026C464A9795A1CBE0F4FCD2E5F3D6E9F6D5E8F5D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D7E9F6E1EEF7 +A0CBEA59A4DBBBDAF0DAEBF7D4E8F5D3E7F6D3E7F6D3E7F6D2E7F6D3E6F5D4E7F6D2E6F5 +D4E9F7CBD9EBC0C5DCB6B3D0B7B5D1B6B4D0B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D0 +B6B4D1B7B5D0BAB5CEC5B8C8DCC1C0E2C4C3E6C6C5E6C5C9C7BBCDB4B4D1B7B5D0B7B5D0 +B6B4D1B7B5D1B7B5D1B7B5D1B7B5D0B6B4CFD7DAE8F6FBFEF5FAFDF1F8FBF1F6FBF0F6FB +F0F6FBF0F6FBF0F6FBF0F6FBF1F8FDF2FAFEEDF1F5D6C6C7CDB5B5CAB1B1CFB7B6956565 +4700005808085404045101014E0000460000420000490000670A0978100D8B1719901C29 +320A551305631A066019066014056367163E8E1C16761615590D0B4907073A0201360000 +3D00005000005601025602035605055503034F0000480000490000520202550505906C71 +D8EBF8DAEFFBD7EAF8D5E7F4D5E7F4D6E8F5D6E8F5D6E8F5D5E7F5D5E7F4D8EBF6E7FAFF +B4BFDA6C6FA60F096403005B08015F08005E17065E9E3846C24238A23735832926712225 +24084B05006007005E07005E07005F07005F07005F07005F07005F07005F07005F07005F +07005F06005E07005F09036100005438468F99CCEE97C7E9A0CBEAA6CEECAAD0ECAFD3EE +B0D4EDAFD3EEAFD3EEAFD4EDAED3EDADD2EEA7CEECA8D0EC8ABFE54398D63994D53691D3 +3893D43C95D63D96D63C95D54097D64E9FD95AA5DB77B4E18DC0E6A7CFECA2CCEAA4CEEB +A5CCEAB0D9F2586AAD02006909076E09066E09066D0A076D00006F514064F4C54BECBD49 +EEBD47EDBC46ECBC47EDBE4CEEBF4FEFC660F0CB70F6E2B1F9EBC8F8EAC7F9EBCAF9EACA +F8EBCAF8EAC9F9EAC8F8E8C5F7E6BFF6E4BAF4DEADF5E0B0EBC46AE6B035E6B33DE6B23D +E5B13CE4B03DE5B13FE5B344E5B449E4B448E5B752E8BF66F0D8A3F4E3BFF4E3BDF4E3BF +F5E3C1F5E4C1F4E4C1F3E4C0F2E0B9F1DDB4EED8A7EBD096EBCF94EBD199E8CC8FDAAC4D +D8A944D9AA47D9AA4AD9AC50D8AE53D8B058D9B05ADBB464DAB365DFBE79EDDCB7EEDDBB +EDDCBAEDDEBCEEDDBCEDDDBCECDBB8E9D6AFE9D5AEEDDCB9EFE1C1E3CB94DCBF7DDEC489 +DDC388DDC38BDEC58EE0C894E1C997E0C996DDC692DFC899ECE0C5EFE4CDF0E5D0F1E7D5 +F1E8D6F1E9D7F0E9D7F1E9D7F0E7D3EFE6D2EBE0CAE0CDA7D4BB87CBB075CCB277D0B67E +D3BD8BC0A263A57B29A77E2EA98337A57E30B69658D3C19CD2BF9BD4C2A0D5C4A3D6C6A7 +D9CAAEDACCB0DCCEB4DDD0B7DED2BADBCFB5DCD0B8C2AD83A58749845A09835A09835B0A +8760138963188E6B2492712F916E2BB29A6CCCBEA1CABB9CCCBD9FCBBDA0CDC0A4D1C4AB +D5C9B1D8CEB9DAD0BCDCD2BFDCD1BFDAD0BCD7CDB8D6CBB6D2C7AFD1C7B0AD9A717B5C1B +74530E6B49006B4902674500765717907744C1B396C0B295BFB195BDAE92BAAC8EB6A687 +B6A687B9AB8EBFB297C2B59BC5BAA3C4BAA2C5BAA2EAE9E6F0F0F3EFF0F4F0F1F4F2F3F5 +F4F5F7F3F4F6F5F6F8F6F7F9F7F8F9F8F8F9F8F9FAF9FAFBFAF9FAFAFAFBFBFBFCFBFBFC +FCFCFDFBFBFCFDFDFEFCFCFEFDFDFEFEFEFEFDFDFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFF6F5F9CECDE217147607046C09066E +09066E09076E04016B7D87BBB9C9E3D9ECF8D4E7F5D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D6E9F6DEEDF8A8D0EC5AA5DB +BCDAF0DCECF7D6E8F6D3E7F5D2E6F5D2E7F6D2E7F6D3E7F6D3E6F5D4E8F6D3E8F6C2C9DF +B9B9D3B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D0B6B4D1B7B5D0 +B9B5CFC2B8C9DAC0C0E0C3C2E5C5C5EAC7C7D7C0CBB6B5D1B5B4D1B6B4D1B7B5D0B6B5D1 +B5B3D0B3B0CEC1C1D8D3D5E5E7ECF4F3F9FCF2F6FBF2F7FBF1F8FCF1F7FBF0F7FCF1F8FD +F2F9FEF1F7FCEDEFF3DED4D6D9CCCECFB9BACCB3B3CBB2B2D0BBBC9668684200004E0303 +4F00005D05056F09089125239C312F9F312EAB3431B43733B63738AA323F370F59120462 +1A0660190660130462771F47BF3129AF2B29A225229A221F931E1B821816771412560908 +4201014100004900004D00005000005403035402035201014F000067252785595E9D858D +D1E0EED7EBF9DBF1FED9EDFAD7EAF7D6E8F5D7E9F6D6E8F5D5E7F4DAEBF7CFDDEDBAC5DE +5758980F0A65000161270C5A5E2154AF3D40B43E399E34327F27236D202321074E040060 +07005E07005E07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +06005E07005F05005D1C1D737196C78EBBE0A3D0EDA5CCEBA9D0ECAFD3EEB0D4EDAFD3EE +AFD3EDAFD4EEAED3EDADD2EDA8CFECA9D1EC8BBFE6459AD73A94D53691D33892D43E96D5 +3E96D53D96D54198D64E9FD958A4DB74B3E08CC0E6A8D0ECA1CCEAA4CEEBA7CDEBACD5F0 +7792C60A076E0A076F08056D09066E0A076D04016E2F2569E3B74EF1C048EDBC47EEBD47 +EDBC47EDBE4CEDBE4FEEC560F0CB70F6E2B1F9EAC8F8E9C7F9EBCAF9EAC9F9EBC9F8EAC9 +F9EAC9F8E8C4F7E6BEF6E4BAF5DEAEF5E0AFEBC368E6AE35E6B23CE5B13DE5B13CE4B13E +E5B344E5B447E5B449E4B449E5B854E9C16AF1D8A4F4E3BEF4E2BDF4E3BFF5E3C1F5E4C2 +F4E4C1F3E3BFF2E0B8F1DDB4EED7A6EBD095EBCF94EAD099E8CB8DDAAB4AD8AA45D9AA46 +D8AA4AD8AC51D9AE53D9AF58D9B05BDBB465DAB366DFBF7DEEDCB9EEDDBBEDDDBBEEDEBC +EDDDBBEDDDBCECDCBAE9D6AFE6D0A6E7D2A8E8D4AAE1C68CDEC384DEC58BDDC388DDC48B +DEC68FE0C894E1C996DFC995DDC693DFC99BECE0C6EFE4CDF0E5CFF1E8D5F0E8D6F0E8D6 +F1E8D6F0E8D6EFE6D3EEE5D2EBDFC8DDC9A0D3B985CCB175CDB377CDB47BD1BA87CAB079 +B79350AD853AA67F31A57E2FB69759D3C29DD2BF9BD4C2A0D4C4A3D7C7A8D9CAAEDACCB0 +DBCEB3DCCFB6DDD1B9D9CDB3DBCFB6BEA97DA18142835A08835B09825A09865E0F886115 +8D6A23916E2B8F6C28B29C6ECCBEA1CABB9CCBBC9ECBBC9FCEC0A5D2C5ABD5C9B2D8CFBA +DAD1BDDCD3C0DCD3C0DAD1BDD8CFBAD7CCB7D1C6AFD1C7AFA89469765512704E086B4800 +6B49016745007556168D7440C0B295C0B295BFB194BBAD8FB8A98AB3A383B4A485BAAC8E +BFB298C1B59BC6BCA4C9BFAAC8BEA8E4E0D8ECEBEBEFF1F5F0F1F3F1F2F5F3F4F6F3F4F6 +F5F6F8F5F6F8F6F7F8F7F8F9F8F9FAF9FAFBF9FAFBFAFAFBFAFAFBFAFAFBFBFBFCFCFCFD +FCFCFDFDFDFEFDFDFDFDFDFEFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFEFEFBFBFDFFFFFFA8A7CC3F3D8E07046D09066E08056D0B086F010069 +3A3C8ECFE2F1DBEEF9D4E7F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D5E8F5DBECF7BDDBF065AADEB8D8EFDDECF7 +D9EAF6D7E9F6D4E7F5D3E7F6D2E7F5D2E6F5D3E7F6D0E0F0C7D0E5B5B2CFB6B3D0B7B5D1 +B6B4D0B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D0B6B5D1B7B5D0B7B4D0BFB7CB +D6BFBFDBC1C0E1C3C2E8C6C5ECC8C6D2BFCCBCB6CFB9B5D0B7B5D1B6B4D0C1C1D8CDCEE0 +E8EDF5F4FAFEF2F8FCF2F7FBF2F8FCF2F7FBF2F7FBF1F7FBEEF3F7EEF2F7E4E0E3D2C0C0 +D0BABBCAB0B0CAB0AFCCB4B4CDB5B5CDB4B4CEB2B29F686882100EB3413DBF4845CE514D +D3514EE15955E65C58E55A56E15652E25550D44F50B843503A135D1103611A06601A0660 +1204627F254DE23F37D93A37DC3732DD3530DC3430D4332ECC312DB72B27AC28249E2421 +6D16135D100E4A06064E02024F01015000005100004D00004500004F0202601819764044 +BDBDC7CDD8E4D2E0EDD7E9F6D6E8F5D7E9F5D7E9F6D8E9F6DDEDF8E8F8FFD9E2EFB7B9D2 +6049829A3244CA4941B03C37A135318E2C2971201E5F1A2417045304006007005E07005E +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F06005E06005E +07005F06035E05005D4D60A2A3D0EEA4CCEAA9D0ECAFD4EEB0D3EDAFD3EEB0D3EDAFD4EE +AED3EDAED3EDAAD0ECABD1ED90C3E8499CD83B95D53692D43893D54197D64197D63F96D5 +4399D64E9FD958A4DB72B3E18BC0E6A8CFECA3CDEBA4CEEBA6CEEBA9D1ED9FC5E65E72B2 +22268204006A0A076E09066D09066D01006F8D7059F3C147E9BA49EDBC46ECBB45EDBE4B +ECBE4FEEC561F1CB72F7E3B3F9EAC8F8EAC7F9EBCAF9EAC9F9EBCAF8EAC9F9E9C8F8E8C3 +F7E5BCF6E3B8F5DFAEF5E0AEEAC163E5B037E5B13DE4B03DE4B03CE5B343E5B549E4B549 +E5B54BE4B54AE5B856E9C372F1D9A5F4E3BEF3E2BCF4E4C0F5E4C1F5E4C2F4E3C0F3E3C0 +F2DFB8F0DCB1EDD5A3EACE93EBD097E9CF95E5C580D9A944D8AA46D8AA47D8AA4CD9AD51 +D8AD54D9B05ADAB15EDBB568D9B467E0C284EEDDBCEEDDBCEDDDBBEDDDBCEDDCBBECDDBC +ECDBB9E8D4ACE5CFA4E0C794D5B26FC99D46D4B269DCC287DCC287DDC58DDEC690E0C995 +E0C995DEC794DDC695E0CCA1EEE3C9EFE4CDF0E6D1F1E8D5F0E9D6F0E8D5F1E7D5F0E7D5 +EFE6D2EEE5D1E9DDC3D6C08FD0B67ECCB175CDB377CDB47CCEB782D0B988D2BB8DC7AE76 +AD8940A27A2BB99C60D4C3A0D2C09CD4C3A2D5C5A5D7C8AAD9CBAED9CBAFD9CCB0DBCDB3 +DBCEB5D6C8ADD8CAAFB19663906B22835A09825B09815908825A0B845E108B671F8C6923 +8C6A23B6A175CCBEA0CABB9BCABC9DCBBC9ECFC2A7D3C7AED6CAB4D9D0BCDBD2BEDDD4C1 +DDD4C1DBD2C0DAD0BDD8CEBAD0C5ADCDC2A89B83516B49016947006A47016A47016A4803 +7A5C1F8F7743BEAE92BEAF92BDAE91B9AA8BB6A786B3A483B5A687BDB094C2B69DC3B89F +C6BBA4C8BEA8CAC0ABD1C8B5E1DED6F0F2F7EEEEF2F0F1F4F1F2F5F2F3F5F4F5F7F4F5F7 +F5F6F8F6F7F8F6F7F8F8F9FAF8F9FAF9F9FAF9F9FAFAFAFBFBFBFCFBFBFCFBFBFCFCFCFD +FCFCFEFDFDFDFDFDFEFDFDFEFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFEFEFCFCFDFFFFFF6F6DAA0000630E0B7108056D09066E0B096F0000656C74B0E1F5FD +D2E5F3D5E8F5D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D5E9F6D5E8F5DBEBF6C6E0F278B5E1B5D6EFDBEBF7DAEAF7D9EAF6 +D6E8F5D3E7F5D2E6F6D2E6F5D5EBF9C4CDE3BABAD4B6B4D0B7B5D1B6B4D0B7B5D1B7B5D1 +B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D0B6B5D1B7B5D0B7B4D0BEB6CBD4BEBEDAC0BE +DFC1C1E4C4C4EAC7C5E8C7C9D6C0CDBAB6D0B3B3D1B4B2CFDDE0ECF4FAFDF0F7FCEFF6FB +F0F6FBF2F8FCF2F7FBF3F8FCF2F7FBF4FCFFE9E8EADCD1D3CDB5B5CBB2B2CCB3B3CDB5B5 +CDB5B6CBB4B4CAB3B3D2B6B6E1B8B6E1918EE05854E05F5BDF5E5ADE5C58DC5C58D85551 +D7524FD7534FD7504DD8504BCE4B4CB5404D39125C1203611A06601A06601304627E254D +DA3D35D03835D13531D0322ECD302CCB2F2BC92F2BC82F2BC42E2AC22E2AB82C28BB2D29 +932320430C0B3504043A00004900005601015504055301014E00004A0000621D1F96777E +CAD2DBDEF5FFD7E9F6D7E9F6D8EAF5D8EAF7DBEDF9DCF3FFDFE5EDE1C2C7D78787C7413B +BE423EA636339A302D8528246B1D1E5616280F025905005F07005E07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F06005E080260 +02005A18196F9BC5E6A8D2EFA9D0ECAFD4EEB0D3EDAFD4EEAFD4EEAFD3EDAFD4EEAFD4EE +ACD1EDADD2ED93C4E84A9CD83B94D43591D43892D54499D74198D63F96D54499D64F9FD9 +59A4DB73B3E18AC0E6A8CFECA4CDEBA4CDECA6CEEBA8D0ECA2C9E8A1C9E8384394000067 +0A086F09066E0C086D000070544261DEB04BE7B849EDBA45ECBB44EDBE4CEEBF50EEC663 +F0CB73F7E3B5F9EAC8F8E9C7F9EBCAF9EAC9F8EBCAF9EAC9F8E9C8F7E7C3F7E5BBF6E2B7 +F5DFAFF5DFAEEAC164E5B23CE5B23FE4B03CE5B03CE5B245E5B549E4B44AE5B54DE4B44A +E5B755E9C473F1DAA8F4E3BEF3E4BDF4E4C0F5E5C2F4E4C1F3E3BFF4E3BFF2E0B8F0DCB1 +EDD4A1EACE93EBD29BE8CE94E3C178D8A843D7A946D8A849D9AB4FD9AC53D8AD54D8B05A +D9B15DDBB569D8B366E0C488EFDFBEEEDEBCEDDDBBECDDBCECDCBBEDDDBBECDBB8E7D4AB +E4D0A3DFC794D0AB60BD8A23C19233D1AE65DBC187DFC893DFC791DFC994DFC995DDC693 +DDC696E2CEA5EEE3CCEFE4CDF0E6D2F1E8D5F0E8D6F1E7D6F0E7D5EFE6D4EFE6D2EEE5D1 +E8DBC0D2BA85CDB47BCCB276CDB377CDB47DCFB783CEB885CFB888D3BF90C0A46BA1792B +BCA067D5C4A2D2C09DD5C4A4D7C7A8D8C9ABD9CBAED9CAAED8CAAED9CCB1D9CCB2D5C6A9 +D5C7ABA88A50885E0F825B09825A09815908815A0A845C0E8A661E8A661F8D6924BAA47B +CDBFA1CABB9CCBBC9ECBBD9FD0C3A8D3C8B0D6CBB6DAD0BCDCD2BFDCD3C1DBD2C1DBD2C0 +DAD0BDD7CDBACFC4ACCABEA4947B456A48006A48006947016846016D4B097F6328937D4B +BEAF91BDAE8FBBAD8EB9AA8DB7A98BB8AA8BBAAB8EBEB297C4B8A0C6BAA2C7BCA5C8BDA8 +CBC0ACC8BEA9DCD7CBF0F2F6EDEEF2EEEFF3F0F1F4F1F2F5F3F4F6F4F5F7F4F5F7F6F7F9 +F6F7F8F7F8F9F8F9FAF8F9FAF8FAFBF9FAFBFBFBFCFBFBFCFBFBFCFCFCFDFDFDFEFCFCFD +FDFDFEFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFEFFFFFF +EFEFF5403D8E0200690B086F09066E09066E09066E0F0D7298A5CDDEF2FBD3E6F4D5E8F5 +D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D5E9F6D5E8F5D9EAF6CCE3F38DC0E6B0D4EEDAEBF6DCEBF7DAEBF6D8EAF6D6E8F6 +D4E7F5D4E8F6CEDFF0BBBDD7B7B6D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D1B7B5D1B7B5D1B6B5D1B7B5D0B6B4D1BBB6CDD1BDBFD7BFBDDCC1C0E2C3C2 +E6C5C4EBC7C8E9C7C9D4C0CDC5B9CDD1CDDEEDF1F8F0F6FBEFF6FBEFF6FBF0F6FBF1F7FB +F2F8FBF1F5F9F1F6FAE9E9ECD5C3C4D0BBBBCDB6B6CDB5B5CDB5B5CEB5B5CEB6B6D9BBBB +E7C6C5EBCAC8ECBAB8E38D8AD95450DA5B57DA5A56DA5955DA5955DA5854DA5551DA5551 +D9534FDB534ECF4D4DB5414E3A125C1203611A06601A06601204627E254DDC3F37D33A37 +D33632D23430D0312DCC302CCA2F2BC52E2ABE2C28BB2C28B52A26B42A26A6272392211E +851D1B58100E4609083F0000500000500000520101510000580A0B5F1819825459C8D0DB +D2E0EDD5E4F1D7E6F3D8E7F4D9D8E2DBC9D0D38F92CD605FC85655BB3E3AB53B379F322E +922C297F2522601A2248123109005D06005F07005E07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F06005E07005F07005F080260 +6279B2A4CDECA7CDEAAFD3EEAFD3EDAFD3EEAFD4EEAFD3EEAFD3EDAFD4EEACD1EDADD2ED +94C4E84C9DD93C95D53691D43993D5449AD74198D63E96D54298D64E9FD959A5DB71B2E0 +88BEE5A8D0ECA4CDEBA5CEEBA7CFECA9D0EDA6CDEAA8D1EE5D73B207036C0A076F08056D +0B076D00006F352966886B59E4B548EEBC44ECBB45EDBE4DEDBF51EEC665EFCC75F7E4B7 +F9EBC8F8EAC7F9EACAF8EAC9F9EBCAF8EAC8F8E9C7F7E7C1F7E4BBF6E2B7F5E0B0F4DFAD +EAC061E6B33FE5B340E4B03CE4B03DE4B245E5B549E4B44AE4B54DE3B44AE5B857EAC77A +F1DBA8F4E3BDF3E3BDF4E4C0F5E5C2F4E4C1F3E2BFF3E3BFF2E0B9F0DCB2EDD4A1E9CE93 +EBD29BE8CB8EE1BC6ED7A843D8A948D8A94BD9AC51D8AD54D8AE56D8AF5BD9B05DDBB568 +DAB569E2C78DEFDFBFEEDDBCEDDDBBEDDDBCECDCBBEDDCBBEBDAB8E6D2A9E4CFA3DEC490 +CBA250BE8C26BD8B27C29439CCA85ADBC28ADFC793DFC894DFC895DCC693DEC899E4D1A9 +EEE4CDEEE3CDF0E6D2F1E8D5F0E8D5F1E8D5F0E7D5EFE6D4EEE5D1EEE5D1E6D7B9CFB67F +CDB379CCB276CCB277CDB47DCEB682CEB885CEB888D0BB8BCBB482BBA064C7B080D4C29F +D3C19ED5C5A5D7C7A9D8CAACD9CBAFD8CAAED8CAAFD9CCB1D8CAAFD3C4A7D1C2A49F8040 +825906835B0A815909805808825B0C845E118A661E8A661F8F6D29BDA983CDBEA0CABB9C +CABC9FCBBDA1D1C4AAD5C9B3D7CCB7DBD2BEDCD3BFDCD3C1DCD3C1DBD1BFD9CFBCD7CDB9 +CEC2AAC6B89D9176406C49016A47006947016947016F4E0B81662C967E4FBFB194BEB093 +BBAC8EB7A989B6A889BBAC8FBDAF93BFB399C4B7A0C5BAA2C7BCA5C8BDA8CAC0ABC8BDA7 +D7D0C2EDEFF1ECEEF2EDEFF2F0F1F4F0F1F4F2F3F5F3F4F6F4F5F7F5F6F8F5F6F8F7F8F9 +F7F8F9F8F9FAF8FAFBF9F9FAFAFAFBFAFAFBFBFBFCFCFCFDFCFCFDFDFDFEFDFDFDFDFDFE +FDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFCFCFDFFFFFFC8C7DE05026C +09066E09066E09066E0A076E04016B2C2C85D1E4F2D7EAF6D5E8F5D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D5E8F5D8EAF6D1E7F5A4CDECAAD1EDD8EAF6DCECF7DBEBF6D9EAF7D9EAF7D6E8F6D6EAF7 +C4CBE1B4B0CDB7B5D1B7B5D1B6B4D0B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D1B7B5D1B7B5D0B6B4D1B7B5D0CCBBC1D5BEBDD9BFBFE0C1C0E3C3C2EBC6C5 +EEC8C7F0CBCAF0C9C8F4DDDEF3F6FAEFF9FFF0F7FCEFF6FBF0F6FBF1F6FBF4FBFFEDEFF2 +E0D8DAD0BBBBCBB1B1CCB3B3CDB4B4CBB4B4CAB3B4DABABAE6C3C2F4D1D0F6D1D0F6D3D2 +EFB2AFE58683DA5854DB5C58DA5A56DB5B57DB5A56DA5955D95551D95551D95450DC534E +CF4D4EB543503A125D1203611A06601A06601204627E254DDC3F37D33B38D33733D33430 +D0312CCD2F2BCC2F2BC52E2ABE2D29BC2C28B82B27B52A26AF2925AB2925A728249D2522 +8A211E370B0A2100003900005700005600005200004F01014A000071373A9F8990D3E6EF +D9F7FFD7D7E1D18384CE5A57C84641C5403CC1403DB13935AA3531952C2888272376211E +4F152C330C4004006107005E06005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F06005E0801600000581B1E70809FCC +9EC3E3AFD5EFAED3EDAFD3EDB0D4EEB0D3EEAFD3EDB0D4EEACD1EDADD2ED96C6E84D9ED9 +3D95D53793D43A94D54298D74197D63F96D54198D64E9FD959A5DB6FB0E087BDE5A9D0EC +A5CEEBA6CFEBA8CFECAAD0EDA9D0ECAAD3EF90B3DB0F0F7409066E09056D09066D07056E +0D096D221A6AD9AC4AEFBC43EBBA46EDBE4FECBF53EEC767F1CD7AF7E5B8F9EBC9F8EAC8 +F9E9C8F8EAC9F9EAC9F8EAC8F7E9C6F7E7C0F6E4BCF6E2B6F5E0B0F4DEABE9BF5FE5B442 +E5B342E5B03DE4B03EE4B345E5B348E5B44BE3B64CE4B54AE5B95BEBC980F1DCABF4E3BE +F3E2BEF4E4C0F5E5C2F3E3C1F2E2BFF3E2BFF1E0B9EFDCB2ECD4A1E9CE93EBD19AE6C787 +DEB663D6A743D8A94BD9AA4ED8AD52D9AE56D7AF57D8AE5BD9AF5ED9B468DAB76DE5CA96 +EFDFC0EEDDBBEDDDBBECDCBCECDCBBECDBBAEAD9B7E6D1A7E3CDA1DDC28BC5993DBC8B23 +BB8923BC8C2BBC8C2DCDA960D9BD84E0CA98E0C997DCC592DECA9DE4D4B0EEE4CEEDE3CC +F0E6D2F0E7D4F0E7D4F0E8D6EFE7D5EFE6D4EEE4D0EEE4D1E2D3B1CCB278CDB376CBB174 +CAB176CCB37CCEB580CEB684CEB889CFB989D2BD90D3C095D9CAA8D5C4A3D3C19FD6C6A6 +D8C9ABD9CBAED9CBB0D8CAAFD8CBAFD9CCB1D6C7ACD1C2A4CDBC9B96732D7E5500835A0B +815809815808835C0F8460158B67228A6720937332C0AF8ACBBC9FC9BA9BCABC9FCCBEA1 +D2C5ACD6CAB5D8CDB9DCD3BFDCD3BFDBD2C0DCD3C0DAD1BDD6CDBBD6CCB7CCC0A6C0B193 +8C71386C49036945006A47016949036F4E0C82652C967F51BFB296C0B396BBAD8FB5A686 +B5A686BBAD90BEB195C0B39AC4B8A0C5B8A0C8BDA6CAC0AAC9BFAAC6BBA5D1C8B7EAEBEC +ECEEF1ECEEF1EEEFF4EFF0F3F1F2F5F2F3F6F2F3F6F3F4F6F4F5F7F6F7F9F7F8F8F8F9FA +F9FAFBF9F9FAFAF9FAF9F9FAFBFBFCFCFCFDFCFCFDFDFDFEFCFCFDFDFDFEFEFEFEFDFDFD +FEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFDFDFDFFFFFF9F9DC60100690A076E09066E +0A076E04006A22227F5E65A6D7EAF6D5E8F5D5E8F5D5E8F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D7E9F6 +D2E7F5B2D5EFA4CDEBD7E9F6DCECF7DBEBF6DAEBF7D9EAF6D8EBF7D6E8F5BCBED7B6B3D0 +B7B5D1B6B4D0B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D0B7B5D0B6B4D1C9BAC3D3BDBDD8BFBEDEC1BFE1C2C1E9C5C4EAC6C5EDC9C8 +EECAC8F0CFCEF0DFE1EFE8EBF0F2F6F0F8FDF0F8FDF0F7FCEFF4F8DBD0D2D1BDBECEB7B7 +CCB4B4CBB4B4CBB4B4D6B8B8DDBEBEECCAC9F0CCCBF4D1D0F4CFCEF5D3D2EAA3A1E27C78 +DB5A56DB5F5BDB5B57DA5A56DB5A56DA5955DA5854DA5652D95450DB5550CF4E4FB5424F +3A125D1203611A06601A06601204627E254DDC3F37D33B38D33733D23430D1312DCC302C +CB2F2BC62E2AC02D29BD2C28B62B27B42A26AD2925A42723A025229A23208D211E4C110F +3509082E05042D00003A00004C00004F00004E00005D1213712E30AF8085D3AAB0CD8183 +C95654C94C49C44541C14440BC3F3BAA3531A3312D8E29258325216F1E1B431032290948 +05006007005E07005E07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F05005D120E69323A8795B7DBB2D9F2 +AED2EDAFD3EDB0D4EEAFD3EEAFD3EDB0D4EEACD1EDADD2ED97C6E84F9FD93E95D53792D4 +3993D54097D64197D63E96D54198D64D9FD858A4DB6FB0E086BDE5A8D0ECA5CEEBA6CEEB +A9D0ECAAD0EDA9D0ECA8D0ED99BFE239449616177905016B0A076E08056E0B076D120D6C +B89150F7C445EBBA46EDBD4EECBF53EEC667F1CD7AF7E5BAF9EBC9F9EAC9F8E9C8F8EAC9 +F9EAC9F8E9C8F8E9C7F7E7C1F6E4BBF6E2B6F5E0B1F3DDAAE9BE5DE5B23EE5B241E4B13F +E4B141E4B347E5B44AE4B54CE4B64EE4B44CE5BA5DECCB85F2DCADF4E3BEF3E2BEF4E3C0 +F5E4C2F4E3C1F3E2C0F3E2C0F1DFB7EFDBB0ECD4A1E9CD93EBD09AE5C581DDB45DD6A844 +D8AB4DD9AB4FD9AD53D8AE57D7AE56D7AE5BD8B05FDAB56ADBB971E5CC99EFDFC0EEDDBB +EDDDBBECDDBCECDCBBECDBB9EBD9B6E6D1A7E3CDA1DBBF86C19230BB8921BC8B27BE8F30 +BE8F33C49B48CAA457D7BB81DEC796DDC695E0CCA0E6D6B3EEE4CDEEE3CDF0E6D2EFE6D3 +F0E7D4F0E8D6EFE7D5EFE6D3EDE4CFEDE4D0E0D0ACCCB175CCB276CBB074CAB076CCB37C +CEB680CEB683CEB888CFB989D0BB8DD0BE91DFD1B3E1D5BCD8C8A9D4C3A3D8C8ABD9CAAD +D9CBB0D8CAAFD9CBB0D9CCB2D6C7ACD1C1A3CAB895916E267D5400825A0A815809805809 +835D108561168C69238C6A24967738C2B08DCBBB9EC9BA9BCABC9FCCBDA1D2C5ACD5CBB5 +D8CEB9DCD2BFDBD2BFDBD2C0DBD2BFD9D0BDD6CDB9D6CCB7C9BCA1B7A582876C326B4902 +6A45006B49046D4A0770500E80642B957E4FBFB195BFB194BAAC8EB4A585B4A484B9AB8D +BCB092C0B49AC5B9A1C4B89FBEB196CAC0ABCAC0ACC3B8A1D1C9B8E9EBEDEBEDF1ECEDF1 +EEEFF3EEEFF3F0F1F4F1F2F5F2F3F6F4F5F7F4F5F7F5F6F8F6F7F9F7F8F9F8F9FAF8F9FA +F9FAFBFAFAFBFBFBFCFBFBFCFCFCFDFCFCFDFDFDFEFDFDFDFEFEFEFDFDFDFEFEFEFFFFFF +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFEFEFFFFFFF8F8FBEFEFF53A378B0000690A076E09066E0B086F000068 +7780B7C7D9ECD6E9F6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D6E9F6D5E8F5D3E7F5 +9AC8E9CEE4F4D9EAF7DBEBF6DBEBF6DCEDF8D1DEEEC5CBE0B6B3D0B7B5D1B6B4D0B7B5D1 +B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1 +B7B5D0B6B4D1C2B8C8CEBBBFD4BDBDD9BEBDDCC0BFE4C3C2E6C4C3EAC5C4EBC7C5ECC6C5 +EDC7C6EDC8C6EED0D0EFD8D9F0E2E4E3D5D7D8C3C3CFB5B5CEB4B3CEB5B5D0B7B7D3B8B8 +E3C4C3F3CFCEF5D0CFF6D1D0F5D1D0F4D0CFF4D0CFF5D2D1E38481DD6763DB5E5ADC605C +DB5D59DA5A56DB5B57DB5A56DB5A56DA5955D95652DB5651D04F50B542503A125D120361 +1A06601A06601203627E264FDD4139D33B38D43935D33531D2332FCD302CCB2F2BC62E2A +BF2D29BD2C28B52B27B32A26AD2925A32723A52926AD312DA9302C8125226E201D671E1B +5619175317156C1817891E1D902321A52C29AF2D2ABB3530C33C38C03732BE3733BE3935 +B93935B53733AD332F992A279027257C211E721D19631D1E2F0F4914035606005F07005E +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F06005E07005F07015F0000535161A0B2D8F1AED3EDAFD3ED +B0D4EEB0D3EEAFD3EDAFD4EEACD1EDACD1ED9AC8E955A2DA4197D63691D33591D43D95D5 +3F97D63D96D64097D64B9DD856A3DB6DAFDF84BCE4AAD0ECA6CEEBA7CEEBA8CFECAAD0ED +AAD0ECA7CFECA2CAE992B9DF41509D0100670A086F09066E0A076D00006F5B4860E9BA49 +E7B748EDBE4EECBE52EEC668F1CF80F8E6BDF9EAC9F8E9C8F9EAC8F8E9C8F9EAC8F8E9C8 +F8E9C7F7E7C3F6E5BCF5E3B7F5E0B2F3DBA6E7BB55E4B03CE5B140E4B344E4B447E5B449 +E5B54CE4B64EE4B54FE3B44DE6BC62EED092F2DDB0F4E3BEF3E2BEF4E3C0F4E3C1F4E3C1 +F3E3C0F3E2BFF0DCB4EED9ABEBD39FE9CE95EBD19CE2BF76D8AD4FD6A947D8AC50D8AD52 +D8AE56D7AD57D7AC57D7AF5BD8B160DAB56CDDBC7AE7D1A2EFE0C1EDDDBBECDCBBEDDCBC +ECDBBBEBDBB8E9D8B3E4CFA5E4CFA4D6B677BB871FBA8720BC8C2BBD9032BF9137C0943D +BF933BC19947C6A157D2B478E2D0A8E9DCBEEFE4CFEFE4CFEFE6D3F0E7D4F0E7D5EFE7D6 +F0E6D5EFE6D3ECE3CEEDE2CEDAC79DCAB071CCB175CBB075CBB177CCB37CCCB580CDB683 +CFB887CEB988D0BC8FD5C29BE3D8BEEAE1CFE6DBC6DBCDB1D8C8ABD8C9ADD8CAAFD9CBB0 +D9CCB2D9CCB3D5C8ACCDBD9DC0AB818861137F5402815A0A7F58087F5709835E10856115 +8C69238E6C289D8047C7B696C9B99AC8B899CABB9DCBBDA0D2C5ADD6CBB5D8CEB9DBD1BF +DAD1BEDAD1BEDAD0BDD8CEBBD5CBB6D6CBB7C0B193A18B5E8063266F4D096F4E0A71500E +73511273541482682F988354BFB195BCAE91B8AA8BB5A686B4A586B9AB8EBCB093C1B59C +C4B9A2C6BBA4AA9977BAAC91C5BBA5BFB39BCDC4B2E8E9ECE9EBF0EAECF0ECEEF1EDEEF2 +EEEFF3EFF0F3F1F2F5F2F3F6F3F4F6F4F5F8F5F6F8F6F7F8F6F7F8F7F8F9F8F9FAF9F9FA +FAFAFBFAFAFBFBFBFCFCFCFDFCFCFDFCFCFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFF +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFEFEFFFFFFEBEBF3BBBBD71B197904016B09066E09066E07046D09076EA0ACD1E2F5FD +D2E5F3D6E9F6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D5E9F6DDEDF798C7E9C6E0F3 +D8EAF6DAEBF6DBEAF6DEF1FAC9D0E4B2AFCCB7B6D2B6B4D0B7B5D1B7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D0B6B4D1 +BFB7CACAB9C1D1BCBDD7BEBCDABEBEE1C1C0E5C3C2E7C4C3EAC6C3EBC6C5EDC6C5ECC6C5 +EDC6C5EEC6C5EDC5C4E7C2C1E3C0BFDCBEBDD9BCBCD1B7B7DBBDBCE8C6C5F6D2D1F5D0CF +F4CFCFF2CDCDF2CDCCF4CFCEF5D1D0F4CECDE07572DB5F5ADC5F5BDB5E5ADC5F5BDB5B57 +DA5A56DB5A56DA5955DB5A56DA5855DB5651D05051B542503A125D1203611A06601A0660 +1204627E264FDD423AD33D39D33834D43632D2332FCE302CCC2F2BC62E2ABF2D29BD2C28 +B52B27B32A26AE2925A52824AD2E2BC43F3BC6403CCB433FCC4541CD4540CF4440CD433E +C9413DC8423EC7403CC33E3AC23E3AC03B37BF3935BD3A36BA3733BA3430B43430AF312E +A52E2B902624882321751F1C6817156625262C185601005307015F07005E06005E07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F06005E08015F03005B19186FB4DBF3AED3EDB0D4EEAFD3EDB0D3EE +AFD3EDAED4EEACD1EDACD1ED9CC8EA55A2DB4298D63591D3318FD23C95D53F97D63D96D5 +3F96D64A9CD855A3DB6BAEDF84BCE4ABD1ECA7CEEBA7CEEBA8CFECAAD0EDAAD0ECA8CEEB +A3CAE9AAD9F45C74B30300690A076E09066E0B086D00006F372B66BD9650E3B54AEEC04F +ECBE52EEC86AF2D083F8E6BEF8EAC8F7E9C6F9E9C8F8E9C9F9E9C8F8EAC9F7E9C8F8E7C4 +F7E5BEF5E3B8F5E1B1F3DAA2E6B951E5B13DE5B342E4B347E5B448E5B44AE5B44DE4B54D +E3B54EE3B44DE5BC63EED196F2DDB2F4E3BEF3E2BDF3E3C0F3E4C0F4E3C1F3E2C0F3E1BF +F0DCB3EED8A9EBD39EE9CE95EBD19DE1BD73D8AA4AD6A948D9AB4FD8AD52D7AE57D6AC56 +D7AC57D8AF5CD8B060DAB66DDEBD7FE8D2A5EFDFC1EDDCBBECDCBBEDDCBCECDBBAEBDAB7 +E9D7B2E4CFA4E4CFA5D4B371B9861DBB8822BC8D2CBC9033BE9136C19641C19744BF9642 +BC933BC19A4BE1CDA4ECE0C6EFE5D0EFE5D0EFE6D3F0E7D5F0E8D6EFE7D5F0E6D6EFE5D3 +ECE2CDECE1CCD8C497C9B071CBB175CBAF75CAB177CBB47CCCB481CEB685CFB989CEB988 +CFBC90D6C6A1E3D8BFE8DECAE9E0CDE3D9C3DACDB1D7C9ADD8CAAED9CBB0D9CCB3D8CBB2 +D5C7ABCBBB99B9A476835A0A7F55048159097F57087F5709825D108460158B68228C6A26 +9F834BC9B999C8B798C7B798C9BA9CCBBC9FD2C5AED7CAB4D9CEBADAD1BEDAD1BEDAD1BE +DACFBDD7CEBAD4CAB5D4CAB4BBAB8B9780507F6023735210745412735312745415745616 +856B339C865ABEB094BBAD8FB7A889B4A587B5A689BBAC91BDB095C3B79EC4B9A1C8BEA8 +A79773A79673C0B49CC0B49CCABFACE6E7E9E9EBEFE9EBEFEAECF0ECEEF1EEEFF3EEEFF4 +F0F1F4F2F3F6F2F3F5F4F5F7F4F5F8F6F7F8F7F8F9F7F8F9F8F9FAF9FAFBF9F9FAFAFAFB +FBFBFCFCFCFDFCFCFDFCFCFEFDFDFDFEFEFEFDFDFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFCFCFDFFFFFF +D1D1E46261A217147606036C09066E0A076E05026B2B2B84C1D1E8D8ECF7D4E7F5D5E8F5 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D6E9F6DEEDF7A3CDEBB3D5EFDAEAF6D9EAF6 +DBECF7D9E9F5C0C2DAB5B3CFB7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D0B6B4D1BCB6CCC5B9C5 +CEBBBDD5BDBCD7BDBDDEBFBFE1C1C0E5C2C1E8C4C3E9C4C2EBC4C3EBC5C4EBC6C4ECC6C4 +ECC6C5EBC5C5EAC5C4EAC5C4E9C4C4E8C4C3EAC5C4ECC7C5EEC8C7EEC9C8EEC8C7EEC8C7 +EEC9C8F2CDCCF5D4D3F0BCBADE6A67DC5F5CDC605DDB5F5BDB5F5BDB5E5ADB5D59DA5A56 +DA5A56DB5A56DA5854DC5752D05151B645523A135D1103611A06601A06601204627E274F +DD4239D33D3AD43A36D43834D2332FCD302CCC302CC72E2ABF2D29BD2C28B52B27B32A26 +AB2824A52824A52925AA2D2AAE302DB23531B83935BA3935BC3834BB3834BB3733BB3733 +BB3633BA3531B93430BA3430BA3430B8332FB5322EB4312DAD2E2BA82C299D2A26862320 +7E201D6D1C1A5C110F814D4A7D76A13D3B8509015F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F06005E07005F05005D0C0763809AC7B3D9F1AED1ECB0D4EEAFD3EDAED3EDAFD4EE +ACD2EDADD1ED9ECAEA59A5DB459AD73591D4328FD33C95D53E96D63C96D53E96D64B9DD9 +55A3DB6BAEDF83BBE4AAD0ECA7CEECA7CEECA8CFECAAD0EDAAD0ECA9D0ECA4CCEAA5D1EE +7EA0CF10107407036C09066E0A076D03016E241C6969535DD9AD4DF1C251EBBD51EEC76A +F2D185F8E7BFF9EAC8F8E9C7F9EAC9F8EAC9F8EAC9F8E9C8F7EAC9F7E8C5F7E5BEF5E3B9 +F5E1B4F2D9A0E6B74EE5B242E5B446E4B447E4B448E4B349E4B34AE3B44AE3B44DE2B34B +E5BD64EFD49AF2DEB2F3E3BEF4E2BEF3E3C0F3E3C1F4E3C2F3E3C0F3E1BEF0DCB3EED8AA +EBD29DE9CE96EAD19DDEB96AD6A642D6A949D7AB4FD7AC52D7AD56D7AC57D7AC57D7AF5D +D8B161D9B76EE1C388E9D4A9EEDFC1EDDDBCECDCBBECDCBCEBDBBAEAD8B6E8D5B1E3CEA2 +E3CEA3CFAC64B8841ABA8821BC8D2FBC9134BF9238C09540C09542BF9643BF9643BB923D +D4B984E5D4B2EDE2CBEEE5D0F0E6D3F0E7D5F0E7D6F0E6D5EFE6D5EEE4D1ECE1CCEADFC9 +D5BF8EC9AE71CAB075CBAE75CAB077CBB47DCDB481CDB684CEB888CEB787D0BC91DACAA8 +E5DAC2E8DECCE8DFCBE8DFCDE6DDCADED2B9D8CAAED9CCB0D9CCB2D7CAB1D6C7ACC6B38E +B096628057068058078059097E57087F5709815B0E825D1288651E8E6D2BA48A54C9BA9B +C6B697C7B798C8BA9BCABC9FD2C6AED7CBB5D8CEB9D9D0BDDAD1BEDAD1BED9D0BCD7CDB9 +D2C8B2D3C8B2B5A3808E743F7C5D1F74541375561575561677571A755618866C359E885D +BCAE92B9AB8CB5A788B4A586B5A688BBAF93BEB298C3B79FC5BAA3C8BDA8A59572947F56 +B3A587C1B69FC1B69EE2E1E1E8EAF0E8EAEEE9EBEFEBEDF0EDEFF2EEEFF3EFF0F4F1F2F5 +F1F2F5F3F4F6F4F5F7F5F6F8F6F7F8F6F7F9F8F9FAF8F9FAF9F9FAFAFAFBFAFAFBFBFBFC +FCFCFDFCFCFDFDFDFEFDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFBFBFDFFFFFFB1B0D104026C +0E0B7108056D09066E0A076E0C097052569EE1F5FDD3E6F4D5E8F5D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D5E8F5D6E9F6E0EFF8ACD2ED9DCAEADCECF6D7E9F6DCEDF8D3E0EF +B4B0CEB7B5D1B6B4D0B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D0B6B4D1B8B5CEC1B8C9CBBABED2BCBB +D4BCBCDBBFBEDDBFBEE2C1C0E6C1C1E7C2C0E9C3C2E9C4C3EAC3C2EBC3C3EAC3C2EBC4C3 +EBC5C4ECC5C4ECC5C4EDC5C4ECC6C4ECC6C4EBC5C4EBC5C4EBC5C4EEC9C8F0CBCAF3CDCC +F6D8D7ECA9A8DC5E5CDD615EDD615EDC605CDB5F5BDC605CDC5F5BDB5B57DA5B57DB5A56 +DA5955DC5B56D05152B746533A135D1103611A06601A06601204627E274FDD4139D33D3A +D43A36D43632D23430CE302CCC2F2BC52E2ABF2D29BD2C28B62B27B42A26AB2824A32723 +9F252295221F9824218B2320A92E2AB5332FBB3531B93430B8322EB8312DB8322EB7312D +B52F2BB52F2BB42E2AB42E2AB12D29B02E28A62B279F28249425227D1F1C741D1A641917 +550E0D906C6EE2EDF7B1BAD70B056106005F08016006005E07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +06005E0A0461000052445293BEE6FAABCEEAB0D4EEAFD3EDAED3EDAED4EEADD1EDAED1ED +9FCBEA5DA7DC489BD83691D43390D43D96D63F97D53E96D63E95D54B9DD855A2DA6BAEDF +83BBE4AAD1EDA8CFEDA8CFECA9D0ECAAD1EDAAD0ECAAD1EDA6CEECA3CDEB9FCBEA222783 +05006A09076E09066D08056E0D096D120E6BCAA252F3C453EBBD52EFC86DF2D289F8E7BF +F9EAC9F9E9C9F8EAC9F8EBCAF9EAC9F8E9C8F7EAC8F8E8C6F7E6C0F5E3B9F4E0B4F1D89D +E6B84DE4B344E5B447E5B447E4B448E3B347E2B147E2B248E3B34BE2B249E5BD64EFD69F +F2DEB2F3E2BEF4E3BFF3E3C0F3E2C0F4E4C2F3E3BFF2E1BDEFDBB2EDD8AAEBD29DE9CF97 +EAD19CDCB461D4A33AD7A848D6AA50D6AB51D6AD56D7AC57D7AD57D6B05ED7B161D9B76E +E2C793EAD6B0EDDFC1ECDDBCECDCBBECDCBCEBDBBAE9D8B5E7D5AFE3CDA0E2CCA0CCA557 +B78317BA8722BD8E30BC9135BF923AC09440BF9541BF9642BF9543BA903CCFB279DDC8A0 +E7D8BBEDE3CDF1E8D5F0E7D5EFE7D5F0E6D5EFE7D5EDE4D1ECE1CBE9DDC3D1B985C9AD72 +CBAF75CBAE76CAB078CBB37ECDB582CCB583CCB687CCB787D2BF93DED0B1E5DBC4E8DECA +E8DFCBEAE1D1ECE4D5E7E0CDD8CCB1D7CAADD8CBB1D6C9AFD5C7ABC0AB82A88A507F5504 +8158098058097E57087F5707815A0D825C1287621C927232A9905ECABB9DC6B696C6B798 +C8BA9BCABC9FD2C6AED7CCB6D7CDB8D9CFBDDAD0BDD9D0BDD9D0BCD6CDB8D1C7B0D1C7B0 +AD997384672C795A1975561677581978591B7A5B1E755718896E39A18D62BBAE91B8A88A +B5A787B4A586B6A788BCAF94BFB298C3B7A0C6BBA4C8BDA7A3916E887042A79674C2B8A2 +B8AB90DFDEDBE7EAF0E6E8ECE8EAEEEAECF0ECEEF1EEEEF3EEEFF3F0F1F3F0F1F4F2F3F6 +F4F5F7F4F5F7F4F5F8F5F6F8F7F8F9F8F9FAF9F9FAFAF9FAFAFAFBFBFBFCFCFCFDFCFCFD +FDFDFEFDFDFDFEFEFEFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFDFDFEFFFFFF8886B80000690C097008056D +0A076F03006A35378B7E87BBDDF1FAD3E6F4D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D5E8F5D6E9F6E0EEF8B3D6EF8FC2E7CCE3F4D7E9F6DDEEF9CAD2E5B5B2CFB7B5D1 +B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D1B7B5D1B7B5D1B7B4D0B6B5D1B8B5CFBAB4CBC7B9C1D0BABAD2BCBBD9BEBD +DCBFBEE0C0BFE3C1C0E6C2C0E8C2C1E9C2C1E9C3C1EAC3C1EAC3C2EAC3C2EAC4C2EAC4C2 +EBC4C2EBC4C3EAC3C2EAC3C2EBC5C4EEC9C8F0CACAF3CECDF4CFCEF4CFCEF4CBCAE89695 +DB5B58DD625FDC615EDC605CDC605CDB5F5BDB5F5BDB5D59DA5A56DA5A56DA5956DC5A55 +D05152B646533A135E1103611A06601A06601204627E274FDD423AD33D3AD43935D43632 +D2332FCD302CCC2F2BC62E2ABF2D29BD2C28B62B27B32A26AA2824A32723A02622982421 +9A2421681A17671A197E211FAF2F2BB8312DB9302CB62F2BB62F2BB52E2AB42E2AB32D29 +B32C28B12C29AC2B27AB2A27A128249926218E231F751D1A6C1B185E171554110EA48C90 +E3F0FBD9E5F154549400005505025D07005F06005E07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F080260 +0000582F32807990C0AED2ECB0D4EEAFD3EDAFD4EDAFD3EEACD2EDAED2EDA1CCEA60A9DD +4C9DD93993D43591D43C95D63F97D63F96D53F96D64B9DD854A2DA6AAEDF83BBE4AAD1ED +A9D0ECA8D0ECAAD0ECAAD1EDAAD0ECAAD1EDA6CEECA2CCEBA2CEEC3C4C9A01006709076E +09066E08056E0B086D08056DA58458F6C652EABD52EFC96FF1D38CF8E7BFF9EAC8F8EAC9 +F9EACAF8EBCAF9EAC9F8EAC9F7EAC9F7E8C6F7E6C0F5E3B9F4E0B3F1D599E5B64AE4B140 +E5B344E4B347E3B246E3B246E2B146E2B248E2B34AE1B147E6BE67EFD7A3F2DEB3F3E2BE +F4E2BFF3E3C1F3E3C1F4E4C2F3E3C0F2E1BDEFDCB2EDD8AAEAD19BE9CF99E9D09BDBB15A +D5A23BD6A849D7AA4FD6AB51D7AC55D7AC57D7AC57D6B060D7B163DAB76FE4CA98EAD7B2 +EDDEC0ECDCBDECDCBCECDCBCEBDAB9EAD8B5E7D5B0E2CC9FE0CA9BC8A04FB68319B98824 +BC8E31BD9035BF923ABF9440BF9541BF9645BE9545BB923FD3B985DFCCA6E1D0AEE5D6B7 +EDE2CCF1E8D8F0E7D7F0E7D5EFE6D4EDE3CFECE1CCE7DABECFB67FCAAE72CBAF75CBAF77 +CAB178CCB47ECDB582CCB583CDB687CCB685D2BF94E0D3B8E6DBC5E8DFCAE8DFCCEAE1D0 +EBE2D1EAE3D3E1D7C1DBCFB6D6C9AED4C7ACD4C7ABB9A1749D7D3E7F550481590A7F5708 +7E56077E5708805B0F825E1488651E957739AD9565CABB9EC6B696C6B798C9BA9CCBBDA1 +D2C7B0D6CBB6D7CDB8D9CFBCD9CFBCD9CFBCD8CEBAD5CAB6D1C5AED0C5AEA48E647B5C1D +765717765819785A1B795B1D7A5D2076571A8B713EA49169BBAD8FB7A889B5A687B5A687 +B7A98BBEB196C0B39AC3B8A0C6BCA6C9BEA9A3916D856F409B8862C0B59EB4A78AD2CCC1 +EAEEF6E7E9EEE8E9EDE9EBEFEBEDF1EDEFF2EEEFF3EFF0F3EFF0F4F2F3F6F3F4F6F4F5F7 +F4F5F7F5F6F8F7F8F9F8F9FAF8F9FAF9FAFBFAFAFBFBFBFCFBFBFCFBFBFCFCFCFDFDFDFE +FDFDFDFEFEFEFDFDFEFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFEFEFFFFFFFCFCFDEFEFF53431870100690A076E09066E0A076E04006A +8B96C4CCDDEFD6E9F6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F6 +D5E8F5DAEBF6CAE2F37EB8E38CC0E7CFE3F2D6E3F0B9B9D4B6B3D0B7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D1B7B5D1B6B4D0B9B7D2BEBCD6D5CDD5D1BEBCCFBCBBD4BCBBD8BDBCDCBEBD +DFBFBEE2C0BFE6C0BFE6C0BFE7C1C0E8C1C0E8C1C0E9C1C0E9C1C0E9C2C0E9C2C1E9C2C1 +EBC5C4EDC7C6F2CDCCF5D1D0F5D1D0F5D1D0F5D1D0F4CECDE7918FE0716EDC5D5ADD615E +DC605DDC605DDC605DDC605CDC605CDB5F5ADB5C58DB5B57DA5A56DC5A55D05353B64653 +3A135E1103611A06601A06601204627E2750DD423AD33D3AD43A36D33733D2332FCD302C +CB2F2BC62E2ABF2D29BD2C28B52B27B22A26AA2824A226239F2522952320982320541312 +350C0B3A0D0C45110F6C1A18AC2A26B12C28B12B27B22A26B22A26B02A26AD2A26AB2825 +A327239F26229423208A211D7D1E1B6719175B1311602322774142CBC8D0E6F5FEE9F6FC +D0DCEC373481120C6706005E07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F06005E07005F04005C +07045F96B4D8B3D7F0AFD2EDAFD4EDAFD4EEADD2EDAED3EDA4CDEB64AADD4F9FD93D96D6 +3692D43993D54097D63F96D54097D6499DD852A2DA69ADDE81BAE4ABD2EDAAD1ECAAD0ED +AAD1EDABD1ECAAD0ECAAD1EDA8CFECA3CCEBA7D4F07193C70F0F730C0B7108056D09066E +0A076D00006F534162F2C350EABE53EECA72F2D693F7E7C1F9EAC9F8EBCAF9EACBF8EACB +F9EBCAF8EAC9F7EACAF7E8C7F7E6C0F5E3B9F4DFB2F0D292E4B243E3AF3CE3B141E2B145 +E2AF41E1AF42E2B147E2B248E2B249E1B046E7BF6CF0DBACF1DFB4F3E2BFF4E3C0F3E3C2 +F4E4C2F3E4C2F2E2BFF2E1BDEFDAB0EDD6A7E9D099E9D09BE8CD95D8AB4DD4A23BD5A849 +D6AA4FD7AB52D6AC56D5AB56D5AB58D6AF5FD7B062DAB874E7D2A6ECDAB6EDDEBEECDCBC +ECDCBCECDCBCEADAB9E8D7B4E7D5B0E0CA9CD9BF87C09337B5821ABA8928BB8F33BD8F36 +BE923ABE9440BE9542BE9647BC9442BC9444D8C194E0CEABDFCDA9E0CFACE2D2B4EADDC7 +ECE2CEEFE7D4EFE6D4EBE2CCE9DEC6E1D2B0CBB076CAAE74CBAF75CBB077CAB179CBB37F +CBB481CCB584CDB787CBB584D4C19AE5DAC3E6DCC7E8DFCBE8DFCCEAE1D0EAE1D0EBE4D4 +EBE4D5EAE2D3DCD0B9D4C6AAD2C4A6A88B548A651C7F57068059097E56087D57077D5709 +845F1788641F8B6926A1864FB7A278C9BA9DC5B596C6B798CABB9FCDBFA4D3C8B1D6CBB5 +D6CCB7D7CDBAD7CDB9D6CCB7D5CBB6D1C6B0CDC1A9C9BDA291774371500C7656167A5C1F +7B5D217D61267E6328785C20937C4DAD9C78B9AB8DB5A787B5A688B9AB8EBCAE92C0B49A +C2B69EC4BAA3C7BCA7C8BEA99D8B6581693A846D3EAB9C7DAD9E7FB1A488DCD9D5E3E3E5 +E6E8EDE7E9EDEAECEFEBEDF0ECEEF1EDEEF2EFF0F3F1F2F4F1F2F5F2F3F6F4F5F7F4F5F7 +F6F7F8F6F7F8F7F8F9F8F9FAF9F9FAFAFAFBFAFAFBFBFBFCFCFCFDFCFCFDFCFCFEFDFDFD +FEFEFEFDFDFDFDFDFDFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFEFEFFFFFFF6F6F9D9D9E818167705026C09066E09066E08046D0D0B71ACBADADFF3FC +D3E6F4D6E9F6D5E8F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D7E9F6 +D5E8F57AB6E26AAEE0C9DEF0CBD2E4B8B8D3B6B4D0B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1 +B7B5D1B5B3D0BAB8D3D0D1E3E3E0E4D4C3C1CFBCBCD2BBBAD6BDBCDABEBDDEBFBDE1BFBE +E5C0BFE6C1C0E7C0BFE8C1C0E8C0BFE9C1C0E8C1C0E8C1C0E8C1C1E8C1BFEFC9C9F3CFCF +F5D1D0F4D0CFF4D0CFF4D0D0F5D2D2F3CCCBE0726FDD635FDD615EDD615EDD615EDD615E +DC605DDD615EDC605DDB5F5ADC5F5BDB5C58DA5A56DD5A56D15556B646533A135E110361 +1A06601A06601204627E274FDD433BD33E3AD43B37D43A36D23430CE302CCD2F2BC52E2A +C02D29BC2C28B52B27B32A26AA2824A226239E242293221F962320541412390D0C3B0D0C +300B0A3B0D0D93231FB82C28B32B27B02925B12925AE2925A92824A828249F25219A251F +8D211E841E1B771D1A621816530F0D673130976B6ED7DCE4E5F2FCE0ECF6ECFAFF8184B5 +32327D00005809026006005E06005E07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F05005D7388BB +BAE1F7AED2ECAFD3EDAED4EEAED3EDAFD3EDA4CDEB65AADE4F9ED93D96D63692D43A93D5 +3F97D63F96D54197D5489BD851A0DA69ADDE81BAE3ABD1ECAAD1ECAAD0ECAAD1ECAAD0ED +ABD1ECABD1EDA9D0ECA3CBEBA6D3EF83A9D6232A85100F7407036C09066E0A076D00006F +332966E9BD52EBBF54EECA74F3D897F7E7C2F9EBCAF8EACAF9EBCBF8EBCBF9EBC9F8EAC9 +F7EACAF8E8C7F7E6C0F5E4BAF4DFB0EED18DE3B140E2AD3AE2AF3FE2B042E1AF3FE1AF42 +E2B249E2B249E2B34AE2B048E7C06FF1DCB1F1DFB5F3E3BFF4E4C1F3E3C1F4E3C1F2E3C1 +F1E1BEF0E0BCEED9AEECD5A5E9CF99E9D09AE6CB90D6A949D3A33FD4A748D6AA4FD7AB52 +D6AD57D4AB56D4AB58D6AE5DD7B061DABA76E9D4ABECDBB8ECDDBDEBDCBBEBDBBBECDCBC +EADAB9E7D7B3E7D5B1E0C99BD5B678BE8E2FB58218BA8827BB8D33BD9036BD913ABD9540 +BE9644BE9647BA923EBD9546DAC49AE1CEACE0CEABE1D0AFE1D0B0E2D3B5E6D9BEEFE6D4 +EFE7D5EBE2CDE8DDC4DECDA9CAAE74CAAE74CBAF76CBB078CAB27BCBB480CCB381CCB584 +CDB887CBB684D5C49EE6DCC6E6DDC7E9DFCBE9DFCCE9E1D0E9E1D1EAE2D2EBE4D5EDE6D9 +E3DAC6D8CAB0D0C0A2A08246845E108057088058097E56077D57087E580A87631B8B6824 +8C6B2AA78D5BBAA680C8B99CC5B595C6B798CBBDA0CDC0A5D3C8B1D6CBB5D5CBB6D8CEB8 +D6CDB8D4CAB6D4CAB4CFC4ACCBBFA5C5B89C896E356E4D097658187B5F227D60267F6329 +7F652B795D22968255B0A17EB9AA8CB6A786B5A788BBAD90BEB094C1B59CC3B7A0C5BAA3 +C7BDA8C8BEA89A87608169387D64329E8D68A99A7AAB9D7EBDB29ADDDBD7EBEEF7E7E9EE +E9EBEFEBEDF1EBEDF1EEEFF3EEEFF3F0F1F4F0F1F4F2F3F6F4F5F7F3F4F6F5F6F8F6F7F9 +F7F8F9F8F9FAF9FAFBF9F9FAF9F9FAFBFBFCFBFBFCFCFCFDFDFDFEFDFDFDFEFEFEFEFEFE +FEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFFFDFCFDFFFFFF +D6D6E78785B8120F7307046C09066E0B086F01006834358AC8D9ECD8EBF7D4E7F5D5E8F5 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E9F6D5E8F5D6E9F6D9EAF68ABFE5 +5FA8DE9AB7DAB3AECBB5B4D0B7B5D1B6B4D0B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B5B3CF +CCCCDFEFF3F9EDEDF1DFD3D4D0C1C1CEB9B9D3BCBBD7BDBCDBBDBDDDBEBDE2BFBEE3C0BF +E5C0BFE5C0BFE7C0BFE8C1C0E8C1C0E9C1C0E9C1C0EDC7C6F4CFCEF4D0CFF4D0CFF4D0D0 +F4D0D0F4CFCFF5D4D4ECA7A6DD625FDD625FDD615EDD605DDD615EDD615DDD615DDC605D +DD615EDC5F5CDC5F5BDB5C58DA5A56DD5B56D15555B646533A135E1103611A06601A0660 +1204627E2750DD433BD33D3AD43A36D43834D2332FCE302CCC2F2BC62E2ABF2D29BC2C28 +B42B27B22A26A92824A226229E2421942220942320501211350C0B370D0C340C0B310C0B +50131185201D9C2522AF2925AD2925A92824A52623A0262294221F8E201E801E1B761C19 +6A19175917154909076D3F40B4989DDEE7F0E4F1FAE3EFF8E1EDF7D5E1EF9399C10C0562 +07015F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F0902600000573A408AADD1ECABCEEA +B0D4EEAFD3EDAED3EDB0D4EEA6CFEB67ACDE4F9FD93B94D53290D33994D54097D63F97D5 +4097D6469AD750A0D967ACDE7FB9E3ABD1EDABD1ECABD0ECAAD0EDABD1EDACD1ECACD1ED +A9D0ECA3CCEBA4D0ED8CB6DE5F7AB81B1E7D05006A09076E0A076D05026E1A146AC29D58 +F3C453ECC975F3D89AF7E8C2F8EACAF9EBCAF9EACBF8EACBF8EAC9F8E9C9F7EAC9F7E8C6 +F6E5BFF5E3BAF3DFB0EECF8AE3AF3CE2AF3CE3AF40E1AF3FE1AE3FE2B145E1B349E1B248 +E1B249E0B046E7C274F1DDB3F2DFB6F3E3C0F4E4C2F3E3C1F3E4C2F2E3C1F1E1BDF1E0BB +EED8ACECD4A3E9D09BE8CF98E5C687D5A643D4A240D4A748D6AA51D7AB54D6AC57D5AB56 +D5AC58D6AE5FD6AF61DCBC7BEAD9B4ECDCBAECDDBCEBDCBBEBDBBBEBDCBBEAD9B8E8D6B2 +E7D5B0DEC695CEA961BA8A27B6831CBA8928BB8D32BC8F35BD9139BD933FBD9442BD9443 +BA8F3BC19B51DDC8A2E0CEABE0CFACE1D0AFE1D1B2E1D1B2E1D1B2E5D9BEE8DDC4EAE0C9 +E6DABDDBC8A0C9AC71CAAF75CAAF75CAB079CBB17CCBB380CBB482CCB584CDB787CBB585 +D8C8A5E7DDC8E6DCC8E9DFCBE9DFCCE9E1D1EAE2D2EAE3D4EBE3D5EBE4D5E7DFCEE5DCC8 +D4C5A89675327F57078057097F57097E57077D56077E580B88641F8C69268E6D2BAF976A +C0AD8AC7B899C5B696C7B89ACCBEA2CEC2A8D4C9B2D5CAB4D5CAB5D5CBB6D5CBB6D3C8B3 +D0C6B0CCC0A8C9BCA1BBAC8B7C5F206F4D0A785A1C7F632980642A80642C80642C7B5F25 +9D895FB4A585B8A98AB6A788B8A98CBDAF94BFB298C3B79FC4B9A2C6BAA4C9BEA9C6BAA5 +9581587D6635755C298A7449A08F6CAC9F80A79878BCB19BDDDAD7E2E2E2E8EAEEE9EBEF +EAECF0ECEEF1EDEEF2EFF0F3F0F1F4F1F2F5F2F3F6F3F4F6F5F6F8F5F6F8F6F7F9F8F9FA +F8F9FAF9F9FAFAFAFBFAFAFBFBFBFCFCFCFDFCFCFDFDFDFEFDFDFDFEFEFEFDFDFEFEFEFE +FDFDFDFEFEFEFFFFFFFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFCFFFFFFB9B8D639368A +0F0C7108056D09066E0C097000006551559DDDF1FBD4E7F4D5E8F5D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D5E8F5DCECF795C6E954A1DA6986BB +A099BDB3B1CFB7B5D1B6B4D0B6B4D0B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B6B4D0B7B4D0B7B5D1B5B2CFE1E3EEF9FDFF +F2F5F9E7DEE0D1C4C4CCB8B7D1BBBBD4BCBCD7BCBDDBBDBCE0BFBEE2C0BFE4BFBEE5BFBE +E6C0BFE7C1C0E8C0BFE9C2C1EAC5C4F2CECDF5D1D0F4D0CFF5D0CFF5D1D0F4D0D0F4D0D0 +F5D4D4E58784DB5B57DD6360DD615EDD605DDD605DDD615EDD615EDC605DDD615EDC5F5C +DC5F5BDB5C58DA5A56DD5C57D15555B646533A135E1103611A06601A06601203617E2850 +DD433BD33C39D43A36D43834D2332FCE302CCC2F2BC62E2ABF2D29BC2C28B32A26B02925 +A92824A025229C242194232092221F4C1210300C0B330C0B300C0B2D0B0A2C0B0A451010 +7B1D1AB12A26AB2825A62723A126219924208A201D841E1D751B19691816601615521614 +410604704849C5B3B8DFE9F2E4F0F9E3EFF8E2EEF7E9F6FDD8E4F12A29770000570A0361 +06005E07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F06005E0802600000582629798098C5A7C9E7B1D5EFAFD3ED +AFD3EDB0D4EEA8D0EC6AADDE52A0D93993D42F8ED23993D54097D64097D53F96D64499D6 +4FA0D965ABDD7EB9E3ABD1EDABD0ECABD0ECABD0EDABD1ECACD1ECADD0EDA9D0ECA4CDEB +A2CEEC93C1E489B4DD232A850300690A076E09066D09066E05026D9E7F5FFCCB53EBC875 +F3DA9DF7E8C2F8EAC9F9EBCAF8EACAF8E9C9F7E9C9F7EACAF8E9C9F7E7C4F6E5BEF5E3BA +F3DFAEEDCE86E3AE3AE2AF3EE3B041E1AE3FE1AF3FE2B248E0B349E0B248E1B149DFAF46 +E7C578F2E0B8F1E0B8F3E3C0F4E4C2F3E3C1F2E4C2F2E3C1F1E0BCF1DFB9EDD8AAEBD4A0 +E9D09BE7CD95E2C37FD4A440D5A441D4A747D6AB52D7AC55D6AB57D5AB57D4AD59D5AF60 +D6AF61DCBE7FEBDBB8ECDCBBECDCBCEBDBBBEBDBBBEBDCBBEADAB8E8D6B2E7D5B0DCC390 +C79F4DB98823B8841EB98928BB8D32BC8E34BC9037BD933FBD9341BB9240B88D38C3A058 +DECCA7E0CEACE0CFADE1D1AFE1D2B2E0D1B2E1D0B1DFCFAEDECFAEE7DBC1E6D8BBD8C399 +C8AA6FCAAF75C9AF75CAB079CBB27BCAB380CAB481CCB684CDB688CBB485DBCCACE8DECA +E7DCC8E9DECCE9DFCDE9E1D0E9E3D3EAE4D4EBE3D5EBE2D3E8E0CFE9E3D1DBCFB58E6A22 +7A4F0080580B7F57097C56067C55077E580C8865218B6A28906F2EB5A077C3B391C6B797 +C5B698C7B99CCCC0A5CEC3A9D4C9B2D5C9B3D5CAB5D5CAB5D4C9B4D2C7B1CFC4ACCABDA3 +C8BA9FB3A17D7353106E4E097A5D1F81652B81652B81662F81662E7C6027A38F67B9A98A +B6A889B5A788B8AA8DBEB298C0B59CC5BAA2C6BBA4C5BAA4C9BEA9C3B9A1907C537C6333 +6E551F775F2D988560AE9F82A79878A79777AFA185D1CBC0EEF0F7E9EBF0E9EBEFEBEDF0 +ECEEF1EEEFF3F0F1F4F1F2F5F2F3F6F2F3F5F4F5F7F5F6F8F6F7F8F7F8F9F8F9FAF9FAFB +FAF9FAFAFAFBFBFBFCFBFBFCFCFCFDFDFDFEFCFCFDFDFDFEFEFEFEFDFDFEFEFEFEFDFDFD +FEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFBFBFDFFFFFF9E9CC6110E730E0B7108056D +09066E09066E0200697881B7E1F5FDD3E6F4D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D4E8F5DDEDF7A3CEEC5DA3D82C307F453F86A9A7C8 +BBB9D4B6B4D0B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D1B7B5D1B6B4D1B7B5D1B7B5D1B3B1CEC3C2D9EFF3F8F5FAFEF2F5F9EBE7E9 +D1C5C5C9B7B7CEBBBBD1BCBBD4BCBCD7BCBCDDBEBDDEBFBEE1BFBEE4BFBFE5C0BFE7C0BF +E8C0BFEEC8C6F1CCCBF4D0CFF5D1D0F4D0CFF5D1D0F4D0CFF4D0D0F5D4D4F1BEBEDF6D6A +DC605DDD625FDD615EDD625FDD615EDD605DDD615EDC605DDD615EDC605CDB5F5BDB5E5A +DA5A56DC5B56D15555B646533A135E1103611A06601A06601204627E2750DD433BD33E3A +D43A36D33632D2332FCD302CCC2F2BC52E2ABC2C28B92B27B32A26B02925A72824A02522 +9C24219423208E211E46110F310C0B320C0B2D0B0A2B0A092A0A092A0A0946100F93221E +AA2924A0262299242090221F7E1E1B771C1A6919166017145714124C15133B01007E5E5F +E0E6EEE1ECF4E4F0F9E3EFF8E3EFF8E1EEF7E5F2FB7D7FB133327D00005A08016006005E +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F05005D100B66252578A1C1E1B3D8F1AFD3EDAED3EDAFD3ED +A9D0EC6DB0DF56A3DA3B94D42F8DD23692D43F96D54097D63E96D64197D64D9ED966ACDE +7FBAE3ABD1EDABD0ECAAD0ECAAD0ECABD1EDACD1EDADD1EDA9D0ECA4CEEBA2CDEB97C4E7 +98C8EA3548990300690A076E09066D0B086D00006E7F6763EDBF54ECC878F4DBA1F7E8C2 +F8EACAF9EBCAF9EACAF9EACAF8E9CAF7EAC9F7E9C8F7E7C3F6E5BDF5E3B9F2DBA7ECCA7E +E2AF3CE3B143E3B143E1AF40E1B042E2B148E1B249E1B148E0B14ADFAE44E8C57AF2E0B8 +F2E0B8F3E3C1F4E3C2F3E3C2F2E4C1F2E3C1F1E0BCF1DEB8ECD7AAEAD3A0E9D09CE6CA90 +E0BE76D3A33FD4A542D4A647D6AA52D6AB55D5AB57D5AB57D5AC59D6B062D6B063DEC085 +ECDDBDECDDBCEBDCBBECDCBBEBDBBBEBDCBBEAD9B8E7D5B0E6D4B0DABE88C09337B88621 +B88522BA8A2BBB8E34BB8E35BB9039BC923EBC933FBA903EB78B36C6A461DFCEABDFCEAA +E0D0AEE1D1B0E1D1B2E0D1B2E1D1B3DFCFAFDDCCAADCCAA9D7C49AD1B987CBB076C9AF75 +C8AE75CAAF78CAB17BCBB37FCBB482CCB685CDB789CCB688DDD0B2E7DFCAE6DDC9E8DECB +E8DFCDEAE1D0EAE2D2EAE3D4EAE3D4EAE3D3E7DFCCE6DDCADFD3BBA486498963197C5405 +7D55057D56077C55087F590E8A67248B6A28917131BAA680C5B595C5B696C6B799C9BB9D +CDC0A6CFC3AAD4C9B2D4CAB3D4C9B4D4C9B3D4C9B4D1C5AFCDC0A8C7B99EC5B79BA79269 +6E4B0971500F7A5D2082662D83672F82673180652F7D622AA7946FBAAC8FB5A788B5A788 +B9AB8FBFB399C2B59DC6BBA4C6BCA5C6BCA5CABFABC2B69F8E794E785F2D6A50186B501E +917D57AEA183A79879A99A7BAA9B7EAC9F82C6BFAFE6E6E6EAEBEFEBEDF1EBEDF0EEEFF3 +EFF0F4F0F1F4F1F2F5F2F3F5F4F5F7F5F6F8F6F7F8F7F8F9F8F9FAF9FAFBF9FAFBFAFAFB +FBFBFCFBFBFCFCFCFDFCFCFDFDFDFEFDFDFDFEFEFEFEFEFEFDFDFEFEFEFEFEFEFEFEFEFE +FFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFE5A589E0000640B086F09066E09066E08056D +181778B6C5E0DBEEF9D4E7F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F5D3E7F4E0F1FAA7C1DF4E73B20A08610000574F4B8EB6B4D0B5B3CF +B6B4D0B7B5D1B6B4D0B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1 +B7B5D1B7B5D1B6B4D0B8B6D2C2C2D8E1E3EEF8FCFFF4F8FCF4F7FBF7FCFFD9D0D1C7B6B5 +CABBBACCBABACFBBBAD1BBBBD7BCBCD9BDBCDDBEBDE0BFBEE2BFBEEAC5C4EEC9C8F4D0CF +F5D1D0F5D1D0F4D0CFF5D1D0F4D0CFF4CFCFF5D1D0E99C9AE17875DC5D5ADD625FDC625F +DD615EDD615EDD625FDD615EDD605DDC605DDD615EDC605DDC605CDB5C58DA5A56DD5A55 +D15555B646533A135E1103611A06601A06601204627E274FDD423AD33E3BD43935D33632 +D2322ECC302CCA2F2BC32D29BB2C28B92B27B32A26B02925A628249F25229A2421952320 +841F1C3B0E0D2C0B0A2D0B0A2809082809082509082108071B070642100E701B1788201D +8C211D7E1E1A6818166017155314124B121046110F3F110F3D09076625258A5B5FDAE1E9 +E5F1FAE3EFF8E4F0F9E3EFF8E3F0F9E4F1F9AFB7D5110C6705005D08015F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F06005E07005F06005E000057788EBFB5DBF3AED2EDAED3EDAFD3EDA9D0EC6FB1E0 +58A4DB3C94D5308ED2318FD33F96D54097D63E96D64499D74E9ED966ADDE7FBAE3ACD1EC +AAD1ECABD0ECABD1ECACD2EDADD2EDADD2EDAAD0ECA5CEECA2CCEB98C7E99BCDEE517EBE +05026C09066E09066E0B086D00006F4537699F805CEECC7DF5DDA9F7E7C2F8EAC9F8EBCA +F8EAC9F8E9C9F7EACAF8E9C9F7E9C8F7E7C3F6E3BBF5E3B9F1D8A0EBC775E2B040E3B348 +E3B246E1B045E1B146E1B248E0B148E1B14AE1B24EDFAF49E9C984F2E0BBF2E0BBF4E4C3 +F4E4C4F3E4C3F2E3C2F2E3C1F1DFBAF0DDB6ECD6A8EAD19FEAD19EE3C484DCB463D2A23D +D3A543D3A649D5AB54D5AB56D4AA57D4AA58D4AB59D5B064D5B066E1C793EDDFC0ECDCBC +EBDBBBEBDCBCEBDBBBEBDBBAE9D8B7E6D4AEE6D4AFD3B375B6831DB6841EB78524B98A2C +BB8F36BA8F37BB913CBB923FBB913FBA8F3DB68C36CCAF74E0D0AEDECDA9E1D0B0E1D2B2 +E0D1B2E1D1B2E0D1B2DDCDACDBCAA8D4C099B39049AB8232BD9D5ACAB077C9AE76C9B07A +CAB17CCBB480CBB484CCB686CCB789CEBB8FE1D6BCE6DDC9E6DDC9E7DECBE8DFCDEAE1D0 +EBE3D3EBE4D3EAE3D3E9E1D2E5DCCAE5DBC8D7C9ABBCA471B79D67906E27805A0C7C5406 +7C560A7F5A118A69268B692696783DC2B18FC7B899C4B595C7B899C9BC9FCFC2A9D0C4AC +D2C7B0D3C9B2D3C9B2D2C7B0D1C7B0CDC1A8C8BCA3C2B396BCAC8E8F7441674401745516 +7A5D2182662E83683282683280652D806630AD9C7ABBAD91B5A788B6A88ABBAE92C1B59C +C3B79FC7BCA6C7BDA7C7BDA7C9BFABBCAF95836D3D6E551E61460D5C3F0B867249AEA183 +A79878AA9B7CAB9E81AB9D80A99B7EAB9D80D3CFC6EBEEF3E9EBEFECEEF1EDEEF2EEEFF3 +EFF0F3F1F2F5F3F4F6F3F4F6F4F5F7F6F7F8F6F7F8F8F9FAF8F9FAF9F9FAFAFAFBFAFAFB +FBFBFCFCFCFDFCFCFDFCFCFEFDFDFDFDFDFEFEFEFEFDFDFEFDFDFDFDFDFDFEFEFEFFFFFF +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFFFFFFF6F6FA413E8E0100690B086F09066E08056D0A076E252681CADCEE +D7EAF7D5E8F5D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D2E6F4E3F5FDA2B3D53446910E086402005B1E176EABA9C9BFBDD6B4B2CFB7B5D1 +B6B4D0B6B4D0B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1 +B6B4D0B8B6D1D6D8E6EBEEF5F7FBFEF4F8FCF4F8FCF7FCFFE1DADBC7B7B6C8BAB9CABAB9 +CCBAB9CEBABAD4BCBBD6BCBBDBBEBDDFBFBDE1BFBEEDC9C7F2CFCDF4D0D0F4D0CFF4D0CF +F5D0CFF5D1D0F4CFCEF5D5D4F4CFCEE27775DC5D5BDD625FDD615EDD625FDD615EDD615E +DD625FDD615EDD605DDC605DDD615EDC605CDC605CDB5C58DA5A56DC5B56D15455B64653 +3A135E1103611A06601A06601204627E2750DD433BD33D3AD33834D33632D1312DCC302C +CA2F2BC22D29BA2C28B92B27B32A26B02925A527239E252299232094221F7F1D1B380D0C +2B0A092B0A09270908280A092409082109081C070625090845100E781C1987221C761C18 +6016145815134C121045100F410F0D3A0F0D3E0E0D5708085D1213D2D4DBE8F7FFE2EEF7 +E4F0F9E4F0F9E1EEF7E7F5FCD4E0EF2E2D7A00005909026106005E07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +06005E08016002005A5D6BA7B8DEF4AED1ECAFD3EDB0D4EEAAD0EC70B1E058A4DB3D95D6 +3190D3308FD33F97D54198D63E96D5469BD74E9FD965ACDE7FB9E3ACD1EDABD0ECABD0EC +ABD1ECADD2ECADD2EDADD2EDABD1EDA6CEECA2CCEB98C7E99ACCEC5B92CB06066E09066D +09066E0A076D01006E32276A79605FF1CE7FF5DFADF7E7C3F8EAC9F8EACAF7E9C9F7EAC9 +F7EACAF8E9C9F7E9C8F6E7C3F6E3BBF5E3B9F0D69DEAC574E2B142E3B348E3B247E2B047 +E2B247E1B348E0B048E0B14AE1B34FDFB04BE9CB89F2E0BBF2E0BBF3E4C3F4E5C5F3E4C4 +F2E3C3F2E3C1F0DEB9EFDCB4ECD6A7EAD19FEAD2A0E2C17FDAAF5AD1A03CD3A443D3A649 +D4AB54D5AB56D4AA57D3AA57D3AB59D5B065D6B067E2CA97EDDFC0ECDCBCECDBBBEBDCBC +EBDBBBEBDBBAE8D8B6E6D3AEE6D4AFD0AF6CB47E16B5831DB68522B98A2BBB8F37BA9038 +BB923EBB923FBB913FB9903DB68C37CFB37BE0D0AEDECDAAE1D1B1E2D2B3E0D0B2E1D0B1 +E0D1B1DDCCABDBCAA8D3C097AB85389B6D12AB8436C9AF75CBB07ACAB17DCAB17CCBB381 +CCB485CCB686CBB688CFBB91E3D7BFE6DDC8E6DDC9E7DFCCE8DFCDE9E1D0EBE3D3EBE3D3 +EAE3D3E9E1D2E5DBC8E5DBC8D2C4A2B9A16CBEA775A4884A8B691F7951027D570B7F5B12 +8B69268B6826997C44C4B493C6B799C5B595C7B89AC9BBA0CFC3AAD0C4ADD2C7B0D4C8B1 +D3C8B1D2C7B0D0C5AECBBFA6C7BAA0C0B193B6A5848669336644007455177A5D2181662E +83683283683280632B836833AFA07EBAAC90B6A88BB6A98CBBAE92C2B59DC3B8A0C7BCA7 +C8BEA8C7BDA7C9BFAAB9AC917E68376A51195E410B5A3E09847046AEA082A79878AA9C7E +ADA184B1A489AEA187A09070C0B7A4EDF0F5E9EBEFECEEF1ECEFF1EEEFF3F0F1F4F0F1F4 +F2F3F5F3F4F5F4F5F7F5F6F8F6F7F9F7F8F9F8F9FAF9FAFBF9F9FAFAFAFBFBFBFCFBFBFC +FCFCFDFDFDFEFCFCFEFDFDFDFEFEFEFEFEFEFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFE +FFFFFFE2E1ED16137506036C09066E0A076E03006A2525805E65A6D4E7F5D6E9F5D5E8F5 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D2E5F3 +E5F9FF858CBA0000580B056208015F04005D534E909593BBB9B7D2B6B4D0B6B4D0B7B5D1 +B6B4D0B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B6B4D0B7B5D1B4B2CFC4C2D9 +F0F4F9F3F7FCF5F9FDF4F8FCF4F8FCF6FBFFE6E1E4C6B8B8C6B9B8C7B9B9C9B9B9CABAB9 +D0BBBAD2BBBBD7BDBCDBBEBCE5C4C3F3CFCDF5D1CFF4D0CFF5D1CFF5D1D0F5D1D0F4D0CF +F5D3D2F1BEBDE89896DD615EDD625FDD615EDD625FDD615EDD615EDD625FDD615EDD615E +DD615EDC605DDD615EDC605CDC5F5BDB5C58DA5A56DC5B56D05253B646533A135E110361 +1A06601A06601204627E2750DD423AD33D3AD43835D23430D1312DCC302CCA2F2BC02D29 +BA2C28B72B27B02A26AD2925A326239D2421982320942320761C192E0B0A2B0A09290A09 +2409082209082008071E08071B07061B07061A060646100F711B176718165413124C1110 +430F0E3E0E0D3A0E0D370D0C3A0C0C5405064E00008A5D60E4F1FAE3EEF7E3EFF8E3EFF8 +E3EFF8E0ECF7EBF9FF747BAE00005907015F07005F06005E07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F080160 +0000582B2D7DB4DAF2AED2EDAFD3EDB0D4EEACD1EC71B1E058A4DB3E95D5318ED2308ED2 +3C95D53D95D53E96D6459AD74D9ED965ABDE7FB9E3ACD1EDACD1ECABD1ECACD2EDACD2ED +ADD1EDADD2ECABD1ECA6CEECA3CCEB9AC8E999C9EA62A3D8101F8007026B09076E09066D +07046E100C6E382B66ECCC84F6E1B1F7E7C3F8EAC9F9EACAF8E9C9F7E9C9F8EACAF7E9C9 +F8E9C9F7E7C4F5E4BDF5E3BCEFD598EAC470E2B041E2B244E2B145E1B248E2B248E2B24A +E0B149E0B14BE0B14BDFB14DEBCE92F2E0BAF2E0BAF3E4C3F4E5C5F3E4C4F2E3C4F2E3C1 +EFDEB8EEDBB3EBD5A6EAD19FEAD2A1E0BD77D7AA50D1A03CD2A342D3A64AD4AA54D4AA56 +D3AB56D3AB58D4AD5CD6B167D7B269E4CEA0EDDFC1ECDDBDEBDCBCECDCBDEBDBBBEADABA +E8D8B6E5D2ACE5D2ACC9A458B17C10B4811AB58522B88A2CBB8F37BA8F39BB913EBB913F +BB913EB88F3DB78D3BD2B987E1D0AFE0CEACE1D1B2E1D1B3E0D0B1E0D0B1DFD0B0DBCAA9 +DACAA8D0BA8FA57B299A6C129B6D14A37A2AB5934ECBB480CBB380CBB382CBB485CCB687 +CAB487D1BE96E4D9C3E6DCC7E6DCC8E6DECBE8DFCDE9E1D1EAE3D3EAE3D3E9E1D1E8E0D0 +E4DAC6E2D9C4CDBC95B8A06ABAA36FB7A06BB39B658B6923795206815D148C6C2B8B6928 +A18753C6B696C5B595C5B596C8BA9DCBBDA2D0C3ACD0C4ADD2C7B0D2C7B0D2C6AFCFC5AE +CEC3ABC8BBA0C4B79BBBAB8BA691677A5C1F674601745717795D2080652D826830816831 +7D63298A713FB8A98CBCAE93B8AA8EBAAC90BEB196C3B89FC4B9A2C6BBA6C7BCA7C6BCA6 +C8BEA9B2A487755D2A62470D593C075439047D693EAEA083A99B7DAD9F82B0A487B2A68A +AFA388A69779AB9F83DDDAD4E5E6E7EBEEF2EBEDF0EDEFF2EEEFF3EFF0F4F1F2F5F2F3F6 +F3F4F6F5F6F8F5F6F8F7F8F9F7F8F9F8F9FAF9FAFBFAFAFBFAFAFBFBFBFCFBFBFCFCFCFD +FCFCFDFDFDFEFDFDFDFDFDFEFEFEFEFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFFFFFFFFFDFDFDFFFFFFA6A5CA +0100690A076E09066E0C096F00006551569EAFBEDCD4E6F4D5E8F5D5E8F5D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D5E8F5D8EBF7555897 +00005509036007005F05005E07025F1109658480AFBCBAD4B3B1CEB6B4D0B7B5D1B6B4D0 +B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B7B5D1B5B2CFDEE1ECF8FDFFF4F8FC +F4F8FCF5F9FDF4F7FBF8FEFFDDD1D3C3B5B4C5B9B8C5B8B8C6B8B8C7B9B8CBBAB9CCBABA +D6BDBDE0C2C1EFCCCBF5D1CFF4D0CFF5D0D0F5D1D0F4D0CFF4CECDF5D4D3F0B8B7DF6B68 +DC605EDC605DDD615EDC615EDD615EDD615EDD615EDD615EDD615EDD605DDD615EDD615E +DD615EDC5F5BDC5F5BDB5C58DA5A56DC5A55D05252B646533A135E1103611A06601A0660 +1204627E264FDD4038D33C38D33733D23430D0312DCB2F2BC82F2BC02D29B92C28B62B27 +AE2925AB2925A226229923209523208B211E6117142208072A0A092509081F08071F0807 +1B07061B07061907061605051104041805052E0B0A5113124A110F400E0D3A0E0C360D0B +340C0B390E0D410D0B5200005100004E0000BBACB2EDFEFFE1ECF4E4F0F9E4EFF9E2EEF8 +E7F4FBC7D6EA2422760B056206005E07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F08015F03005B15126A +96B3D8B4D8F1AED2ECB1D4EEABD2ED73B3E15CA6DC3D95D52E8CD1308ED23A93D53A94D5 +3F96D6469BD74E9FD966ACDE80BAE3ACD1EDACD1ECADD2EDADD2EEADD2EDACD1ECADD2ED +ACD1ECA7CEECA4CDEB99C8E994C4E862ADE020449B06006809086F08056D09066D05036F +100A69C1A989FDE9B7F5E5C2F8EAC9F8EAC9F7E9CAF8E9C9F8EACAF7E9C9F8E9C9F7E7C4 +F5E5BDF6E4BEEED18FE9C169E2B043E1B145E2B147E2B349E2B24AE1B14BE0B14AE1B14B +E0B14BE0B250ECD29AF2E1BCF2E1BCF3E4C4F3E4C4F3E4C4F2E4C3F2E1C1EFDFB9EEDDB5 +EBD5A6EAD19FEAD1A0DBB568D2A343D1A13ED2A243D2A64AD3A953D3AA54D3AA56D3AB58 +D4AD5ED5B167D7B46DE7D2A9ECDEC0EBDCBCEBDBBCECDCBDEBDBBBEADABAE8D6B4E5D1AA +E2CEA5C1963FB17B0FB4811BB58625B88B2FBB8F38BA8F3ABA903DBA903EB98F3BB98F3E +BB9449D8C398E0CFAEE0CFAEE0D1B2E0D0B2E0D1B2DFCFB0DECEAFDAC9A7DACAA8C7AF7C +9D6F1698690E976A10936409976A14AA873DBA9C5ECCB788CAB385CBB588C9B385D4C39E +E6DBC6E5DBC5E5DCC8E7DECCE7DFCEE9E2D2E9E3D3EAE2D3E8E0D0E7DFCDE2D8C3DED4BC +C5B185B8A06AB9A36FB9A26FBCA574B49C698C6B2886621D8D6C2D8B6A2AAA9364C7B89A +C3B392C6B798CABCA1CDC0A6D1C5AED1C6AFD1C6AFD1C6AFCFC4ADCEC3ABCCBFA7C3B699 +C0B194B3A27F9075427050116A4A077557197B5F2480642D80652E8068317D642A927C4E +BDAF95BDAF94BCAF93BDB196C1B59CC5BAA3C5BAA4C6BBA6C6BCA6C7BDA6C2B6A0A79676 +6C531C583C015539024F3200776035B1A488AFA386B0A488B2A68BB3A78CAFA287A89A7C +A7997BAB9F83D9D6D0EDF0F5E9EBEEECEEF1EDEEF2EEEFF3F0F1F4F1F2F5F2F3F5F3F4F6 +F4F5F7F6F7F9F7F8F8F8F9FAF9F9FAF9F9FAFAFAFBFAFAFBFBFBFCFBFBFCFCFCFDFDFDFE +FCFCFDFDFDFEFDFDFEFEFEFEFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFCFDFFFFFF908FBD0100690A076E +09066E0C09700000646268A9C8DAEDD2E5F3D5E8F5D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D7EAF7D1E4F2393883000059080260 +06005E07005F08015F00005A4D488CBCBAD4BDBBD5B6B4D0B6B4D0B7B5D1B6B4D0B7B5D1 +B7B5D1B7B5D1B7B5D1B6B4D0B7B5D1B6B4D0B8B6D1E7EAF2F7FDFEF4F8FCF4F8FCF5F9FD +F4F7FBF3F6F9D8CACBC3B5B4C4B9B8C4B8B8C5B9B7C6B8B8CABAB9CABAB9D7BEBEE7C8C6 +F2CFCDF5D1CFF4D0CEF5D1CFF4D0CFF4D0CFF5D4D3F6D7D6E99795DC5D5ADD615EDD615E +DC605DDD605DDD605DDD605DDD605DDD605DDD605DDD615EDD605EDC605DDC605DDC5F5B +DC5F5BDB5C58DA5A56DC5A55D05253B646533A135E1103611A06601A06601204627E264E +DC3F37D33A37D33733D23430CF312DCA2F2BC72E2AC02D29BA2C28B62B27AD2925AB2924 +A12622992421962320821F1C561513210807290A092309081D07061D07061A0706190706 +19060515040413040414040415050441100E49110F3C0E0C380D0C350C0B320B0A3B0E0D +470E0C5200005303034A0000A5878CE1EBF3E3EEF7E3EFF8E3F0F9E3EFF8E5F0F9D6E7F5 +44478E16136B03005C08015F06005E07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F05005E0B0562849CC9BBE1F6 +AED1ECB2D4EEACD2ED74B3E15DA6DD3D96D62E8DD2308ED23993D43B94D53F96D6469AD7 +4FA0D967ACDE80BAE3ACD1EDACD0ECADD1EDAED2EDADD2EDACD1ECADD2EDABD1ECA7CFEC +A4CDEB99C8E993C3E760AEE22451A40600690A086F08056D09066E08056F0C0768AF9A8A +FFEDB9F5E5C2F7E9C9F7E9C9F8E9CAF7E9C9F8EACAF7E9C9F8E8C9F7E7C4F5E5BEF5E4BD +EECF8BE8C067E2B044E2B046E2B248E2B34AE2B24BE1B14BE1B04AE0B14CDFB14CE0B352 +EDD39DF2E1BCF2E1BDF3E4C4F2E3C3F2E3C3F3E3C2F2E1C0EFDEBAEEDDB6ECD5A7EAD29F +E9D19FD9B261D0A23ED1A140D1A244D2A74BD3A953D2AA55D3AA56D2AB58D4AD5ED5B066 +D7B56EE7D3ADECDEC0EBDBBCECDBBCECDCBDEADABBEADABAE8D6B3E5D1ABE2CCA2BF9238 +B17C10B4821BB58728B88B30BB8F38BA8F3BBA913EBA903EB98E3BB9903FBD984EDAC59C +E0CFAEE0CFAEE1D1B2E1D0B1E0D1B2DFCFB0DECEAFDAC8A6DBCAA8C3A9739A6B1197680E +976A119769119669129A721EAA863EC9B383CEB88CCBB68AC8B285D6C4A2E6DBC6E4DAC4 +E6DCC8E8DFCDE8DFCEE9E2D2E9E2D3EAE2D3E8E0CFE6DECDE2D8C2DED3BAC3AE7FB8A06B +B9A36FB8A06EB8A06EBBA473A0844B9070318B68288C6A2AAD976AC7B99AC2B393C6B899 +CABDA2CDC1A7D0C6AFD1C6AFD1C7AFD0C5AECFC4ACCDC1A9CABEA5C2B497BEAF90B19E7A +876B346E4D0E6C4C0A75571A7B602580642D80652E8168317D632A957F53BEB096BDAF94 +BCB095BEB297C2B69EC5BAA4C6BBA4C6BBA5C6BBA5C7BDA7C0B39CA392706A5019563A00 +5538024F3100765F34B2A68AB0A489B1A589B3A68CB2A68CAEA186A89B7DA7997B9F9070 +D0CCC1EDEFF5E8EAEEEBEDF1ECEEF1EDEFF2F0F1F4F0F1F4F1F2F5F3F4F6F4F5F7F6F7F9 +F7F8F9F7F8F9F8F9FAF9FAFBF9F9FAFAFAFBFBFBFCFCFCFDFCFCFDFDFDFEFDFDFEFCFCFD +FDFDFEFEFEFEFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFAFAFCFFFFFF5D5A9F0000680A076F09066E09066E +07036C8D98C5DFF3FCD2E5F3D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D4E7F5DCF0FAB4C2DD04005D07005F07005F07005F06005E +07005F07015F06005E4A448A7976A9B5B3CFB6B4D0B5B2CFB7B5D1B7B5D1B6B4D0B7B5D1 +B7B5D1B7B5D1B7B5D1B6B4D0CBCBDFF5F9FCF6F9FCF5F9FCF4F8FCF5FAFEF0F0F4D3C1C1 +CFB8B8C8B8B7C3B8B8C4B8B7C4B8B8C5B8B8C8B9B9CABAB9E7C8C7F5D1CFF4CFCEF5D0CE +F5D1CFF4CFCDF4CFCDF5D1D0ECACAAE68E8BDC625FDC605CDC615DDD605EDC605DDC615D +DD615EDD615EDD615EDD615EDD615EDC605DDD615EDC605CDB5F5BDB5F5BDB5C58DB5B57 +DA5956DC5B56D05152B646533A135D1103611A06601A06601204627E264EDC3E36D23936 +D33631D2322DCF312CC82F2BC52E2ABE2C28B72B27B42B27AB2824A828249F2522972320 +95232064181640100E2008072209082008071A0605190605190605160605150505110303 +1103031004040D03031605043E0F0D370D0C340C0B320B0A310C0B2F0B0A2D0807420000 +5500005000005C1111835154E6F4FDE3EEF7E3EFF8E3EFF8E4F0F9D8E8F5ACC0DE555B9B +00005709026007005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F0A04610000535662A1B3D7F0ADD0EBB1D4EE +ADD2ED75B3E15CA6DC3D96D6328FD33491D33D95D54198D74398D6479BD850A0DA67ADDE +81BAE3ACD2ECABD0EDABD1ECADD2ECADD2ECACD1EDADD2EDAAD1ECA7CFECA4CDEB98C7E9 +8DBFE55DADE12D6CB71424830A097008056D09066E0A086F00006882748AFEEABAF3E4C2 +F8E9C8F7EAC9F8EACAF8E9C9F7EACAF8E9C9F7E8C9F7E7C4F6E5BFF5E4BDECCB82E7BD60 +E2B145E2B248E2B249E2B34CE1B24DE0B14BE0B04ADFB04BDEB04BE0B457EED7A6F2E1BC +F2E1BEF2E3C3F3E4C4F2E3C3F2E2C1F2E1C0EFDEB9EEDCB4EBD4A6E9D19EE7CE98D5AA4F +CF9D36D1A242D0A343D2A64CD3A953D3AA54D3AA57D2AB5AD3AD5ED5AF65D9B774EAD8B4 +ECDDBFEBDBBCEBDBBCEBDCBDEADABBE9D9B9E7D5B2E5D2ADDDC393B88725B17D13B3811D +B7892CB88B31B98E38BB903CB98F3DBA903DB88D37BB9548C4A766DCC8A3DFCFAEE0D0AF +E1D0B1E0D1B2E0D0B2DFCFB0DECEAED9C7A4D9C7A5B8975796670A976A10976910966A13 +976B16986F1D986E1DA88642BEA46DC7B182CFBA92DACAACE6DCC7E4DAC4E6DCC9E7DECC +E8E0CFEAE1D2E9E1D3E9E2D3E7DECDE6DDCBDED4BCD6C8AABEA775B8A16DB9A16FB8A16F +B8A06EB9A171BEAA80BAA67B977A3F8E6F31B5A27AC6B798C2B292C8BA9DCCBFA5CFC3AA +D1C7B0D1C7B0D1C5AECFC4ACCEC2AACABEA4C7BAA0BEAF90BAAA8AA58F656E4D0B684603 +715112785C207D61277F632C7F642D7F652E7D612AA18E67C2B69EBEB197C0B49AC2B69D +C5BAA3C6BBA6C6BBA6C7BCA6C6BCA5C8BEA9B4A78C97855E63480F533700533602523400 +786236B4A88DB2A68BB2A68BB2A68BB1A589AB9E81A6997BA5987AA19273B0A48BE8E9EB +E8EAEFEAECF0EBEDF0EDEEF2EEEFF3EFF0F3F1F2F5F3F4F6F3F4F6F4F5F8F5F6F8F6F7F9 +F8F9FAF8F9FAF9FAFBF9FAFBFAFAFBFBFBFCFBFBFCFCFCFDFCFCFDFDFDFEFDFDFDFDFDFE +FEFEFEFDFDFDFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFFFFFFF9F9FBFBFAFC4441900000670B086F09066E07046D0E0C719FACD1 +E0F4FCD3E6F4D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D4E7F5DCF0FBA4B1D102005B07005F07005F07005F07005F06005E07005F +06005E0E0864332D7CA7A4C6BBB9D4BBB9D3B4B2CFB5B3D0B7B5D1B6B4D1B6B4D1B7B5D1 +B7B5D1BAB8D3D4D4E5F9FDFFF5F9FCF6F9FCF4F8FCF6FBFFECEBEECBB2B2CDB5B5CAB8B7 +C3B7B8C4B8B8C3B7B8C4B8B8C8BAB9CEBCBBEFCECCF5D1CFF4CECDF4CFCDF4CFCDF5D2D1 +F6D8D6F3CBC9E3837FDD6560DB5F5BDB605CDC605CDD615EDD615EDD615EDC605DDC605D +DC605DDC605DDC605DDD615EDC615DDC605CDC605CDB5E5ADA5A56DA5A56DA5955DC5A55 +D05152B746533A135D1103611A06601A06601204627E254DDC3E36D23835D33430D2312C +CE302CC52E2AC22E2ABA2B27B22A26AF2A26A82824A527239F252296221F942320571513 +360D0C2008072109081F08071A07061A07061806051304041304041204041204040F0404 +0D03031104043A0E0D3B0E0D330C0B310B0A310C0B290A091E0606350000550000520202 +4B0000672426E1EBF4E4F0F9E3EFF8E3EFF8E4F0F9D8E8F4CCE6F6707BB0000058090260 +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F0A03610000544B5598A2C0E1AED1ECB0D4EDAED2ED75B3E0 +5BA5DB3D95D53390D33691D34097D6449AD74499D7499BD851A1D968ADDE81BBE3ACD2ED +AAD0ECABD1ECACD1EDACD1EDACD1ECADD2EDAAD1ECA7CFECA5CDEB98C7E98ABEE55CABE0 +3175BE1C39920A0A7008056D09066E0C096F0000686C6189FBE7BAF2E3C2F8E9C8F7E9C9 +F8E9C9F8E9C9F7EACAF8E9C9F7E8C9F6E7C3F6E5BEF5E4BCEBCA7EE6BB5EE2B146E2B349 +E2B34AE2B34EE1B24EE0B04ADFAF49DFB04BDEB04BE0B558EED8AAF2E1BDF2E1BEF3E3C3 +F3E4C4F2E3C3F1E2C1F1E2C0EFDDB7EEDBB2EAD3A4E9D19EE6CC95D4A648CF9C33D1A243 +D0A342D2A54BD3A953D2A954D3AA58D3AB5AD3AD5ED4AE64DAB878EBDAB7ECDCBEEBDBBC +EBDBBDEADCBDEADBBBE9D9B9E7D5B1E5D2AEDABE8AB5831EB17D14B3811EB88A2EB88B31 +B98E38BA913DB98E3CB88F3CB78C36BD974CC9AD72DCCAA6DFCFAEE0CFAFE0D0B1E0D1B2 +E0D0B2DFCFAFDECDADD9C7A5D8C6A3B28F4B966609986A1096680F966A14966B169A7121 +9970219C7529AA8A46C0A774D4C29DDDCFB2E5DCC7E4DAC5E6DCC9E7DECCE8E0CFEAE2D2 +EAE1D3E9E2D2E6DECCE6DDCBDCD1B8D2C2A1BBA572B8A16DB9A16FB8A16FB7A06EB9A272 +BFAB82C5B18CA78E5B967A3FB7A57EC5B697C3B293C9BB9ECDC1A6D0C4ACD2C7B0D2C7B0 +D0C5ADCFC4ABCDC1A9CABCA3C6B99EBBAC8CBAA9899E885A664500674501735416795C22 +7D622A7E632B7D622C7F642C7D622BA79571C4B9A0BFB398C2B69EC4B7A1C6BCA5C7BCA7 +C7BBA7C7BCA7C6BCA6C8BFAAAFA183917E5460440A533700533602523400796336B5A98F +B2A68BB2A58BB1A58BAFA488A89B7EA6987AA5987AA39577A6997CE5E5E5E8EAEFE9EBEF +EAECF1ECEEF1EEEFF3EEEFF4F1F2F5F2F3F6F3F4F6F4F5F7F4F5F8F6F7F8F7F8F9F8F9FA +F8FAFBF9F9FAFAFAFBFAFAFBFBFBFCFCFCFDFCFCFDFDFDFEFCFCFEFDFDFDFEFEFEFDFDFD +FEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE +FFFFFFF1F1F7CBCAE02E2B840000680A076F0A076E03006A1F1E7DBFD0E7D9EDF8D4E7F5 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D6E9F6 +D4E6F4DEF2FB7981B200005A08015F07005F07005F07005F07005F06005E07005F090260 +05005D2922754E498D9E9BC0BEBCD5B9B7D2B4B2CFB5B3D0B6B4D0B7B5D1B5B3CFD3D4E4 +E8EBF3F7FBFEF5F9FCF6FAFDF4F9FCF6FBFFDACCCECBB2B2CEB5B5C9B6B6C2B8B8C3B7B7 +C4B8B8C1B7B7D0BDBDE5C7C7F3CFCDF5CFCEF4CDCCF5D0CFF6D4D3F1C0BFECADABE17976 +DB5B57DB5E5ADB5E5ADC5F5BDB5F5BDC605CDC605DDC605DDD615EDD615EDD615EDD615E +DD615EDC605DDC5F5CDB5F5BDB5E5ADB5B57DB5A56DB5A56D95753DB5651D05050B64451 +3A135D1103611A06601A06601204627E244CDC3C34D23835D2332FD0312CCC2F2BCA2F2B +CA2F2BC72F2ABE2D28B82B27AB2925A627239A23209723208A201D380D0C2308071D0806 +1C07061A07061706051605051304041104031204031003030E03030E03030D02020C0203 +2B0A09400F0D320C0A310B0A350C0B2308070903031900003A00005000005302024F0000 +AC949AEDFFFFE1ECF4E3EFF8E4F0F9DCEAF6D0E8F7A7BBDA15116A03005B08015F06005E +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F0802600000583034826F83B7B0D3EEB1D4EEADD2ED74B3E15AA5DC4097D6 +3692D33893D44499D7469BD84499D74B9DD853A2DA69ADDE81BBE4ACD2EDACD2ECACD1EC +ADD2EDADD2EDACD1EDACD1EDAAD1ECA6CEECA4CDEB98C7E989BEE557A6DD3987CB3066B2 +0B0B7108046D09066E0C096F0000694F4885D0C1B0F1E1C1F8EAC8F7E9C9F8E9C9F8EACA +F7EACAF8E9C9F7E8C8F6E6C3F5E4BEF4E1B9E9C574E5BA59E2B249E3B34CE2B24DE1B34F +E1B34EDFAF49DFAE48DEAF4ADDAE4BE1B75EF0DCB0F2E0BEF2E2C0F3E4C4F3E4C4F2E3C3 +F1E3C1F1E1C0EEDCB4EDD8ADE9D1A0E9D19FE4C78BD1A13CCF9C34D1A242D0A243D1A549 +D2A954D3A955D2A957D2AA59D2AB5CD4AF66DBBE82ECDCBDECDCBDEBDCBDEBDCBEEBDCBD +EADBBCE9D8B9E5D3B0E4D2ACD3B578B37F17B27D17B48321B88A2FB88B32B88F39B8903D +B88F3CB78F3CB48B36C09F5AD3BB8BDDCCA8E0CFAFE0CFAFDFD0B1DFD0B2DFD0B2DECEB0 +DCCCACD9C6A3D5C19BA88235946509976A11956810956913976C1799701F9971229B7428 +997226A3803BC8B287DBCEB1E7DFCBE5DBC7E7DECBE8E0CEE9E0D0EAE2D3EAE1D3E9E1D2 +E5DDCAE5DCCAD8CAADC9B68CB9A370B8A06EB9A16FB7A16FB7A06EBBA678C1AE84C3B088 +BFAD86BFAC85C3B393C2B191C3B494CABCA1CFC3AAD0C5AED2C7B0D2C7B0D0C4ADCDC2AA +CBBFA6C7BA9FC4B69AB7A785B7A6858E7440613E0068470676581B7B5E247C60287D612A +7C5F297D622B806731B0A181C4B9A2C2B69DC6BBA5C8BDA7C9BFAAC9BFAAC9BEA9C8BEA9 +C7BDA8C6BDA79E8C6881693A583B025235005336025438007E693CB6AB91B2A68BB1A58B +B0A489AC9F83A5977AA49879A5987AA5977AA29476D3CFC7E8EBF2E8E9EDE9EBEFEBEDF0 +EDEEF2EDEFF2EFF0F3F1F2F5F1F2F5F3F4F6F4F5F7F6F7F8F6F7F8F7F8F9F8F9FAF9FAFB +F9F9FAFAFAFBFBFBFCFBFBFCFCFCFDFCFCFDFDFDFDFCFCFDFDFDFEFEFEFEFDFDFEFDFDFD +FEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFEFFFFFFE2E1ED +6E6CAA1E1B7A04016B0A076E0A076F000068424594DBEFF9D4E7F5D5E8F5D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D3E6F4E1F6FE +46478D00005808016007005F07005F07005F07005F07005F06005E07005E07005F02005B +0000581C156D69649E8F8CB7BEBCD5BAB8D3B4B2CFB4B2CFBAB8D2ECEFF6F7FBFEF5F9FC +F5F9FCF6FBFEF2F3F6E6E0E1D0BBBBCBB2B2CEB5B5CFB7B7C5B9B9C4B8B8C4B7B8C2B7B7 +E0C5C4F3CECDF3CDCCF4CDCDF6D4D3EFB8B6EA9E9CDF6D6ADA5A56DA5753DA5A56DA5A56 +DB5B57DB5E5ADC5F5BDB5F5BDB5F5BDC605CDC605CDC605CDB5F5BDA5F5BD85E5AD75D59 +D85D59D95E5AD95B57DA5A56DB5955DB5A56D95652DB5550D04F4FB543503A125D120361 +1A06601A06601204627D244BDB3A32D13531D1322ED1312DC72F2B841F1C6A19163C0E0D +400F0E5113117F1E1B93221F9C2421972320741B192208071E07061B0706190605190706 +1906051505051104041204031104040E03030C02020C02020D0303070202170605350D0B +340C0B310C0A380D0C1D07070000000801010F0000460000550303480000784346E0E9F2 +E3F0F9E3EFF8E4F0F9DFEDF8CBE2F3CDE8F84C529617136C05005D07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F05005D100C66343985B3D7F0B2D5EEADD3ED77B4E25EA7DC449AD73994D53893D4 +4499D74399D74399D74C9ED854A2DA69AEDF81BBE4ACD1EDACD1ECACD1ECADD2EDADD1ED +ACD1ECABD0EDA9D0ECA5CDEBA4CDEB98C7E883BBE456A3DB4297D5408FCF10197C07026B +09066E0A076E01006B2E297B7B7296EFE0C0F9EAC8F7E9C9F8E9C9F8EAC9F7EACAF8E9C9 +F7E8C8F6E6C2F5E4BEF3E0B5E8C068E4B753E2B34CE3B24BE1B34CE0B24DE0B14CDEAF49 +DEAE48DEAF4ADDAD49E2BA66F0DEB5F2E1BDF2E2C1F3E4C5F3E4C5F2E2C3F1E2C2F1E1BF +EEDBB2ECD7ABE8D09FE9D2A1E0BF7DCE9C35CD9D38D0A142D1A344D1A44BD3A854D2A855 +D1A955D0A856D1A95AD4B26BDDC38CEDDDC0EBDCBEEBDCBEEBDCBEEBDCBEEADABCE8D8B8 +E5D2ADE2CDA4CCA762B07B12B17F19B38323B7882FB88B32B88E3AB98F3DB88F3DB78F3E +B58B38C6A86CDAC7A0DECDAAE0CFB0DFD0B1DFD1B1E0D0B1DFD0B2DDCEAFDCCBABD6C49F +CDB78B9E731F95660B966910946810946913966B17996F209971239B75299A762C9E7A32 +BDA575CEBD99E4DBC6E8DFCDE8DFCEE8E0D0E9E1D1EAE1D2EAE2D3E8E1D1E4DBC8E4DBC9 +D1C19FBDA876B9A26FB9A06FB8A16EB8A16FB8A172BEA97EC3AF88C2AE89C3B28CCDBD9E +DACEB9C5B698C5B597CCBFA5D0C5AED1C6AFD2C7B0D1C7B0CFC4ACCDC1A9CABDA4C5B89B +C0B294B2A17EB09E797E61285F3C006B4C0B795D217B61267B5F267B5E26795C247D632C +866F3DB9AB8FC5BAA3C4B9A1C9BEA9CBC1ADCCC2AEC9C1ACCAC1ACC9BEAAC7BEAAC2B8A2 +8973486D531E5235005134005538015F460D88754CB8AD95B1A58AB1A58BAEA387A99C7F +A59779A5977AA5987AA5977BA09273C4BDADEBEDF2E6E8ECE8EAEEE9EBEFEBEDF1ECEEF1 +EEEFF3EFF0F4F0F1F4F2F3F6F3F4F6F4F5F7F6F7F8F6F7F9F7F8F9F8F9FAF9FAFBFAFAFB +FAFAFBFBFBFCFBFBFCFCFCFDFCFCFDFDFDFEFDFDFDFEFEFEFEFEFEFEFEFEFDFDFDFEFEFE +FFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFEFFFFFFDEDEEB57559C1A1878 +05026B09066E0A076F01006851569EDEF2FBD4E7F4D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D6E9F6D2E5F3DBEFFA363681000058 +08026007005F07005F07005F07005F07005F07005F07005F06005E08016009026005005E +2B2576504B8E9794BCA7A5C6C0BED6BCBAD4C3C2D9F0F4F9F7FBFEF5F9FCF5F9FCF7FCFF +F1F2F4D8C9CACFBABACCB3B3CDB5B5D5BBBBCDBCBCC4B7B7C2B7B6C4B7B7E7CAC9F7D5D4 +F5D3D3F5D0CFF1BFBEE68E8BE07571DB5B57DA5A56DB5B57DB5B57DB5B57DA5A56DB5D59 +DB5D59DB5E5ADC5F5BDB5F5BDB5F5BDB5F5BDC635FE06561EA6560EF6561EC6560E5635F +E1615DDA5A56DB5A56DA5955D95551DC5550D04E4FB5424F3A125D1203611A06601A0660 +1204627D234BDB3931D13431CF312DD2312DA12622380D0C240807050101070201150504 +44100E61171596232094231F6618161E07061E08071B0706190605180605170605140504 +1103031104040F03030E03030C02020C03030C03030702021305042B0B0A370D0B310C0A +350C0B1806050201010501010500003D00005601014E0000641E1FD8DDE4EAFAFFE2EDF6 +E4F0F9E0EEF8CBE2F3CDE7F76B77AE2D2D7D01005A08016006005E07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F06005E +07015F232376B1D4EEB3D5EFADD3ED77B5E15FA7DC459AD73A94D53994D44198D64097D6 +4298D74B9DD854A2DA69AEDF81BBE4ADD2EDABD0ECACD1ECADD2EDADD2EDACD1ECABD1ED +A9D0ECA4CEECA3CDEB97C6E881BAE355A2DA4399D74396D414238207016B09066E0A076E +02006B262178665E8DF1E1C1F9EAC8F7E8C9F8EACAF7E9C9F7EACAF7E9C9F7E8C8F6E6C2 +F5E4BEF3DFB3E7BE65E4B652E2B34CE3B34CE1B24CE0B14CDFB04BDEAE48DDAF48DEAF4A +DDAD48E3BB68F0DEB7F2E1BCF2E2C1F3E4C5F3E4C5F2E2C3F1E1C1F1E0BFEEDBB2ECD7AB +E8D09FE9D1A0DFBD79CD9B34CE9D38D0A142D0A344D1A44BD2A854D2A954D1A855CFA755 +D0A959D5B46DDEC58FEDDEC1EBDCBEEBDDBEEBDBBDEBDBBEE9DABCE8D8B7E4D2ACDFC99D +C8A157B07A11B17F19B38323B7882FB88B33B88E3AB98E3CB88F3EB79040B58D3BC9AC73 +DCCBA6DECDABE0CFB0DFD0B1DFD0B2E0D0B1DFD0B2DDCDAEDBCBAAD5C29DC9B1829B6F19 +95670B96690F946710946913966C189970219971239B752A9B772DA1803AC3AD81CCB994 +DDD2B9E6DDCBE8E0CFE9E1D1E9E1D1EAE2D2EAE2D3E8E0D1E3DBC7E3DBC7CEBE9ABAA471 +B9A26FB8A06FB8A06EB8A170B9A374BEAA7FC2AF89C2AE88C3B28DCCBD9EDED4C1CFC2A7 +C9BB9ECBBFA4D1C6AFD1C6AFD2C7AFD1C7B0CEC3ACCDC1A8C9BDA3C3B79ABFB193B2A07C +A9966F795B1F603E006D4E0D795D227A60267B5F267A5E26775B227E632D8A7444BBAD92 +C6BBA3C5BAA3CABFAACCC2AECCC2AFCAC1ADCAC2ADC8BEAAC7BEAAC0B59E816B3E684E17 +533500523500563B02644B148C7A51B8AD96B1A58AB1A58AACA083A89A7DA59779A4967A +A4977AA5987B9F9172BFB7A5ECEEF2E5E7EBE7E9EEE8EAEEEBEDF0EBEDF1EDEFF2EFF0F3 +F0F1F4F2F3F5F2F3F6F4F5F6F5F6F8F5F6F8F7F8F9F7F8F9F8F9FAF9F9FAFAFAFBFAFAFB +FBFBFCFBFBFCFCFCFDFCFCFDFDFDFEFDFDFDFDFDFEFEFEFEFDFDFDFEFEFEFFFFFFFEFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFDFDFDFFFFFFC9C9DF201E7B110E7307046D09066E +0A076E03006A7B84BADEF2FBD4E7F4D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D8ECF8C9DAECA0ACCE23207300005908016007005F +07005F07005F07005F07005F07005F07005F07005F06005E07005F08005F02005C00005A +120D66231D715B56958683B2BBBBD5FAFFFFF5F9FCF6F9FCF5F9FCF7FCFFE5DFE0C8ADAD +CBB2B2CAB1B1CFB5B5E9C9C8E7C9C8C9BBBBC5BBBBCCBEBDEBBCBBEFB2B0E79491E27D7A +DD6763D95450DA5753DB5A56DB5A56DA5955DA5A56DA5A56DB5B57DA5A56DA5A56DB5B57 +DB5C58DB5D59D95F5BDB605CD14642B83A36732A274F211F62252391302EB13633DD5551 +DA5854D95551D9524FDB524DCE4B4BB53F4C3A125C1203611A06601A06601304627D2149 +DA362ED0322ECD302CD1302C9C24212609080D0303010000010000000000000000000000 +3E0E0D6719163A0E0D1505051C07061805051304041204041103031103030F03030D0303 +0D03030C02020C03030902020802020802020802020B0303320D0B320C0A300B0A0C0303 +0301010401010000002100005300005302024B0000A99096D4D6DFE5F2FCE3EEF7E1EFF8 +CFE4F4C8E0F2B0C9E4646FA800005609036107005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F06005E07005F03005C0F0B65 +97B2D7B7DAF2ADD1EC79B6E262AADD489BD73C95D53B94D53E96D63D95D64298D74B9DD9 +55A3DB6AAEDF83BBE4ACD2EDAAD0ECAAD1ECABD1EDABD1ECAAD1EDAAD1EDA8CFECA2CDEB +A2CDEB94C5E879B5E251A0DA449AD7469DD920409706006909076F09066E06036D131071 +312C7BE3D5BCFBECC9F7E8C9F8EACAF7E9C9F8EACAF7E9C8F6E8C7F6E5C0F5E4BFF2DCAA +E4BB5DE2B651E2B34DE1B24CE1B14BDFB049DFAF49DEAE48DCAE49DDAE49DCAC47E4BF71 +F1E0BAF1E1BEF2E2C1F3E4C6F3E3C5F2E2C3F1E2C3F1E0BEEDD9B0EBD6A9E8D09EE8D19F +DAB467CC9931CE9D39CEA040CFA244D0A54CD1A854D1A855D0A754D0A857D0AA5AD8BA7A +E1CB9CECDEC1EBDCBEEBDCBEEADABCEBDBBDE9DABBE7D6B7E3D0ABD5BA82BF9540AE7A11 +B17E1CB38426B78B33B78C35B78D3AB78F3CB78E3CB78F40B79042D1B887E0D0B0DFCEAD +E0D0B1DFD1B1E0D0B1DFCFB2DECFB1DBCBAADACAA9CDB689BA9C6196670E95680E94670F +936710946916966D1B9870229972259C782F9A762CA8884ACDBB97CEBD9BD1C2A3D6C9AD +E1D7C3EBE3D4E9E1D2E9E1D2EAE2D3E8E0CFE2D9C5E1D6C0C6B48AB69E69B9A16FB7A06E +B6A16EBBA575BCA77AC0AB82C3B18BC1AE87C9BA98D4C9AEDFD6C3E1D8C6DDD3C0D0C4AB +D1C6AFD2C7B0D2C7B0D1C6AFCDC2AACBBFA6C6BA9FC0B395BDAE90AB99738C75406D4C0E +664502715314795D247B5E287B5E26785C2373571C836A369C885FBFB39AC6BBA6C8BDA8 +CCC3B0CEC5B2CEC4B2CCC3B0CCC2AFC7BDA9C8C0ABB2A58A6C531E5D4108563A005B3F05 +5D430A6C552192815BB8AD96B0A389AEA185A6987BA5987AA4977AA5987BA7997DA6987C +9F9172B1A891E2E1DFE2E4E8E6E8EDE7E9EEE9EBEFEAECF0ECEEF1EDEFF3EEEFF3F0F1F4 +F1F2F5F2F3F6F4F5F7F5F6F8F6F7F8F7F8F9F8F9FAF9F9FAF9F9FAFAFAFBFAFAFBFBFBFC +FBFBFCFCFCFDFCFCFDFCFCFEFDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFEFEFDFCFDFFFFFFBAB9D60B086F0E0B7108056D09066E09066E020069 +8B96C4DDF1FBD4E7F4D5E8F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D5E8F5DAEDF8C4D4E8838BB91F1B7101005A08015F07005F07005F07005F +07005F07005F07005F07005F07005F07005F06005E07005F08015F09016004015D00005A +18136A514D90A5A7C9FBFFFFF0F5FAF4F9FCF5F9FCF7FCFFE7E0E1D4C0BFD6C3C3D5C2C2 +D8C2C2EECFCEE9CAC9C1B2B1B1A5A5BEA4A3E79A98E58987DD6864D95551DA5854DB5A56 +DB5A56DB5955DA5955DB5A56DB5A56DB5A56DA5A56DB5A56DB5A56DA5B57DA5A56DA5D59 +E45E5ADD59549C27237316131C04030000000C01013B0B0A601210C8423FDC5652D95450 +D9514DDA504BCE4A4BB63E4C3A125C1203611A06601A06601304627D2049DA352CCF302C +CE302CCE302CC42E2A661816350D0C00000001000001000002000000000018050543100F +2C0B0A1606051A07061605051103031103031104041004040E03030C02020D02020B0303 +0B03030A02020802020802020601010602022D0B0A370D0C300C0A090303040101050101 +0000001500004F00005301014F0000885A5DBBAEB6E9F9FFE2EDF6E2EFF9D0E5F4C8DFF1 +C3DFF27987B800005808026007005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F05005D0C066389A1CBB8DCF4 +ADD1EC7BB7E365ABDD4A9CD83E96D53B94D53D95D53E96D64399D74C9ED957A3DB6BAFDF +83BCE4ACD1EDAAD0ECAAD0ECAAD0ECAAD0EDAAD0ECAAD0ECA7CFECA1CCEAA2CDEB94C4E8 +75B3E1509FD94399D6469ED9244A9E05006709076F09066E08056D0C096F1C1874D8CAB9 +FCEDCAF7E8C8F8EACAF7E9C9F7EACAF7E9C8F7E8C7F6E4BFF5E4BFF2DAA8E4B95AE2B551 +E2B34EE0B14CE0B14BDFAF49DFAF49DEAE48DCAE48DDAD49DBAC48E4C175F1E0BCF2E1BF +F2E3C2F2E4C5F3E3C4F2E2C3F1E2C4F0E0BEEDD9AFEBD5A8E8D09EE8D09FD8B160CC9830 +CE9E39CEA040CFA244D0A54DD1A854D1A755D0A655D1AA59D0AA5BDABD82E3CEA2ECDEC0 +EBDCBDEBDCBEEADBBDEBDBBEE9D9BAE7D6B7E3D1ACD1B477BD9139AD7A12B17E1EB48528 +B78C34B78C35B68D3AB68F3CB78E3BB78F3FB89045D3BC8EE0D0B1DFCEAEDFD0B1E0D0B2 +DFD0B1DFCFB2DED0B1DACAA9DAC9A9C7AF7FB3915095660C95680F93670E936710946A17 +976D1C9971249A73289D793099752CAB8D51CFBF9CD0BF9ED0C1A2D1C2A3DCCFB8E8E0D1 +E9E1D3EAE2D3E9E1D2E7DFCEE2D8C3DFD4BCC3AF83B69D67B9A16FB7A16EB7A16EBBA678 +BDA87CC0AB84C3B18CC0AE87CCBD9DD8CDB4DED5C2E2D9C8E2DACAD5CAB5D0C4ABD1C6AF +D2C7B0D1C6AECCC1A9C9BFA4C5B99EBFB193BCAC8EA8956D81662C6A490B6A4907725516 +7A5E257B5F287A5E26775B2272551A866E3BA4926DC1B59CC7BCA6C9BEA9CDC3B1CEC5B3 +CEC5B2CDC4B1CDC4B1C6BDA8C8BFACAC9E81654C145A3E04573A005E42095F450D6E5825 +95835FB8AD96B0A289AC9F83A5977AA5977AA5977AA6997CA99D82A89A7FA19274AEA38A +D7D4CCE1E2E6E6E8EDE6E8EDE9EBEFE9EBEFEBEEF1EDEEF2EEEFF3F0F1F4F0F1F4F2F3F6 +F4F5F7F5F6F8F6F7F9F7F8F9F7F8F9F8F9FAF9FAFBF9F9FAFAFAFBFAFAFBFCFCFDFBFBFC +FCFCFDFDFDFEFDFDFDFEFEFEFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFEFEFDFDFDFFFFFFA2A1C80000660B086F09066E08056D0C09700F0C72ACBADADCF0FA +D4E7F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D4E7F4DDF1FBB7C7E0393883130D6804005D07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F06005F07005F08015F09026008015F535494 +A7AFD0EBF9FFDFECF6E4F0F9E6F1FAE6EFF7916061854B4B8A5151824B4BB66F6EE68A87 +DE807E693D3C4A23239C413EDF5954D95652DA5955DB5B57DA5955DA5652D95652DA5753 +D95551DA5753DA5753DA5854DB5A56DB5A56DB5A56DB5A56DA5B57D8534FB033306B1B19 +0000000000000100000502010301010C0404370C0ABE3B37DD5450D8514DD84F4BD94E49 +CE4849B53D4B39115C1203611A06601A06601304627C1F46D9342BCD302DCA2F2BC72E2A +C22D29B42A26A6272345100F0000000000000000000000000000000501010E0303190706 +1906051304041203031004040F04040F04040E03030D02020B0303090303090303090202 +0902020702020502020201011E0707461010340C0B000000050202030101010000050000 +3F00005400005303035000008F656AEDFFFFE1EBF4E3EFF8D4E8F6CAE1F2C8E6F7A2B8D9 +17136B03005C08016007005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F08015F01005A6676AFBDE3F8ACD0EB7EB9E3 +68ACDE4D9FD94298D73C95D54097D64298D7469AD851A1DA5AA5DC6DAFDF84BCE4ACD2ED +AAD0ECAAD0ECAAD1ECABD1EDA9D0ECA8D0EBA6CEEBA1CCEBA2CCEB91C3E76DAFDF4E9FD9 +4398D649A1DC2F63B007036B0A097008056D09066E07046D0A076EC4B7B2FFEFCBF6E7C8 +F8EACAF7E9C9F6EACAF6E8C9F7E8C8F6E5C1F5E4C0F0D7A0E4B857E3B553E1B24FE0B24E +E1B24DDFB14CDFB04BDDAE4ADCAD48DDAD49DCAE4CE6C580F2E1BFF2E2BFF2E3C4F3E4C6 +F2E3C5F1E3C3F2E1C1EFDEBCEBD7ADEAD5A7E7CF9DE6CD99D4A94FCB9931CE9E3BCFA143 +CEA246D0A54ED1A855D0A854CFA655D0AA5BD0AA5EDFC592E7D4ADECDDBFEADCBCEBDBBD +EBDBBDEADBBDE8D9B9E7D6B5E1CDA5C7A258B7892BAD7A13AF7D1BB38528B78C35B78D38 +B68D3AB78D3BB68D3BB78F41BB974FD8C49CDFCFB0DFCEAFE0D0B1E0CFB2DFCFB1DED0B2 +DECFB1D9C7A6D9C8A7BA9C62A47B2D94660B93671092660E936812976D1C9870209A7429 +9C772C9F7C349C7731B59B67D2C3A5D0C0A0D2C3A5D3C5A8D5C7ABD8CCB4DFD5C1E9E2D3 +E8E0D1E5DDCCDFD4BDD8CBAEBDA677B79F6BB8A16FB7A16FB9A371BCA87CBDA97FC1AE86 +C1B089C0AE86D3C6ABDDD4C0DFD6C2E1D9C7E3DCCCE4DCCDD8CEBAD3C8B2CFC4ADCFC4AD +CBBFA6C7BA9FC2B498B9A989B9AA899C85596A480769490770511275571A7A5E257B5F27 +7A5E2674581F6D50158E794BB3A687C1B59CC9BEA8CBC1ACCFC5B3D0C7B5D0C7B5CEC6B3 +CDC5B1C6BCA7C8BFAB9D8C685B3F04563A00583D0460450D6147107861339C8B69B6AB93 +AEA185A99C7FA49779A59779A7997DACA085B2A68EB5AA94A89B7FA6997CB5AB94DEDFE1 +E5E7EDE5E7EBE7E9EEE8EAEEEAECF0ECEEF1EDEFF2EEEFF3EFF0F4F1F2F5F3F4F6F3F4F6 +F5F6F8F5F6F8F6F7F9F8F9FAF8F9FAF9FAFBF9F9FAFAFAFBFBFBFCFBFBFCFCFCFDFDFDFE +FCFCFEFDFDFDFDFDFEFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFDFDFE +FFFFFF7876AF0000680B086F09066E05026B171577393C8EC4D5EADAEDF8D5E8F5D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E8F6D4E6F4DFF3FC +A8B5D400005809036006005E07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F06005E090260A3ACCDD0DEEDE2F0F9 +DEECF7DEEBF6E2F3FFC5C2CC4F0B0C4400004D03035F0000B6413EE25F5BDD5A57621A18 +521312BD4946E05E5ADA5A56DA5955DA5652D95551D95450DA5551D95450DA5551D95450 +D95551D95652DA5652DA5652DA5854D95955E25E5AB03936100000010000000000010000 +030000000000230908A9221FCD3B37E05753D8504CD9504CD74D49D94C47CD4546B43B47 +39115B1203621A06601A06601304627B1E46D7322ACC2F2CC72E2AC42E2ABD2C28B62B27 +B82C27A326233C0E0D150505000000010000000000000000020001110404140404100303 +0F03030F04040D03030D03030C02020C02020A0303080202080202070101070101060101 +050202010101140505471110360C0B000000030101020000040101000000250000470000 +530303480000733A3CDDE7F1E3EFF9E2EEF7D7E9F6CDE3F4C1DDF1BFDBF0333482000058 +09026007005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F0A0361000054475095B9DEF5ADD0EB7DB8E365ABDE4E9FD9 +469AD73F96D6459AD7479BD8499CD854A2DA5BA5DB6FB0E086BCE5ACD1EDAAD1ECAAD0EC +ABD0ECAAD1EDA9D0ECA8D0ECA5CEEBA1CCEBA1CCEA8FC2E665ABDE4E9FD94498D64AA2DD +397AC0131F800B0B7208056D09066E09066E05026C9C92A3FFF3CCF5E6C8F7EAC9F8E9CA +F7EACAF6E9C9F7E8C8F6E6C2F5E5C1EFD59CE3B755E2B553E1B350E0B24EE1B34FDFB24E +DEB14EDEAF4BDDAC48DCAE4ADDB255E7C988F2E2C0F1E1C0F2E3C5F3E4C6F2E4C4F1E3C3 +F2E2C0EFDEBBEBD7ACEAD4A7E6CC99E3C68DD0A242CB9A35CD9E3DCFA145CFA248D0A551 +D1A756D0A655CFA755CEA959D1AC61E4CCA0EAD8B5EBDCBDEADBBCEADBBCEADBBDEADBBD +E7D8B8E7D5B5DCC598BD913DB48323AE7B16AE7C1BB28428B58B33B68D37B78D3BB78D3B +B48C3AB89347C1A261DCCBA7DFCFAFDECFAEDFD0B1DFCFB2DECFB1DFD0B2DDCDAFD7C6A4 +D6C5A3AF8C48986D1693670D93660F92660E936915976F1E9871219B762B9C782F9F7B36 +9F7D3ABDA779D2C4A7D0C1A2D3C4A7D4C6AAD5C7ACD5C8AED4C7ADDFD5C0E6DECDE5DCCA +DACEB4D0C09EB8A06FB79F6EB7A06EB8A170BAA474BDAA7FBFAB81C2AF88C1AF86C1AE87 +D7CCB4E0D8C4DFD7C4E2DBCAE3DCCCE6E0D2E7E2D5DDD5C4CEC3ABCDC2AAC9BDA2C4B69B +BEB092B4A380B8A8868B703D5E3B006C4D0C73561876581D7A5E277A5E27775C2470551B +6C50139A865EBEB298C1B69DCABFAACCC2AED0C7B5D1C9B7D1C8B7CFC6B5CDC4B1C6BCA7 +C5BCA78B774E543700563B005C4109624911634912836E44A29373B4A88FAA9D81A89A7C +A49779A49678A99B80B1A68DB7AC95BBB19CAFA38BA29478A3967BD9D7D4E3E7EDE3E5EA +E6E8EDE7E9EEE9EBEFEAECF0EBEDF1EDEFF2EEEFF3F0F1F4F1F2F5F2F3F5F3F4F6F4F5F7 +F5F6F8F6F7F9F7F8F9F8F9FAF8FAFBF9FAFBFAFAFBFBFBFCFBFBFCFCFCFDFCFCFDFCFCFE +FDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFDFDFEFFFFFF6361A3 +0000680A076F09076E04016B1C1B7A4D519BC5D6EBD9EDF8D5E8F5D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D4E7F4DEF2FC96A2C7000057 +09026007005F06005E07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F05005D100A65B5C1DBD8E7F3E0EFF8DFEDF7DEEBF5 +E7F9FFB19FA65404045202025C0909862726C75654E26663DC615E7C2B296D2220C64F4C +DF5C58D95753DA5753D95551DA5551DA5551DA5551DA5551DA5551DA5551DA5551D95551 +D95551D95551D95551D85A56E05753772220000000010000010000000000030000130404 +601513D43C37D64A46D8524ED8504CD84F4BD74B47D94A45CD4445B53A4839115B120362 +1A06601A06601304627C1E45D53129C92F2BC42E2AC22D29BC2C28B42A26B12A26A82824 +6C19173A0E0C0000000000000000000000000000000C03031003031104030F04040E0303 +0D02020C02020C03030E04040B0404080202070101070202060202060202050202010101 +1706054A1210310B0A0000000301010201010301010000001C00003B00005301024E0000 +641F20CFD0DAE5F4FEE1EDF6D8EAF6CEE4F4C0DCF0C6E3F541458D00005708026007005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F0903610000553E458DA5C5E3ACCFEA7DB8E365ABDE4E9FD9469AD74298D6 +469BD7479CD7499CD854A2DA5BA5DB6FB0E087BDE5ADD2EDAAD0ECAAD0ECAAD0ECAAD1ED +A9D0ECA8D0EBA5CEEBA1CCEBA2CCEA8EC2E662A9DD4E9ED94598D64AA2DC3A7DC3192E8A +0B0C7208046D09066E0A076E02006B887F9CFFF5CCF5E6C8F8EAC9F8EACAF7E9CAF6E8C9 +F6E8C8F6E6C2F5E5C1EFD59BE3B654E2B451E1B34EE0B350E1B350DFB250DFB14FDEAF4B +DCAC46DCAD4ADEB359E8CA8CF2E2C1F1E1C0F2E4C5F3E4C6F3E4C5F2E3C4F1E2C0EFDEBB +EBD6ABEAD4A6E6CB96E2C387CFA03FCC9B37CD9F3FCFA146CEA249D0A652D0A856D0A755 +CFA755CEA859D2AD63E5CFA5EAD9B8EBDCBDEBDBBCEADBBDEADCBEEADBBDE7D7B7E6D6B5 +DAC192B98B32B38020AE7C16AE7D1CB2842AB58B34B68D37B78D3BB68D3CB48B39B9954B +C5A769DDCCAADFCFAFDECFAEDFCFB1DFD0B2DECFB1DFD0B2DCCCADD7C7A4D5C39FAA853E +95680F93670E92660F92650F946B17976F209871239B772D9C79319F7C38A48445C1AC81 +D3C4A7D1C2A2D3C4A7D3C5A9D5C7ACD6C9AFD5C8AED8CCB4DDD3BCE3D9C6D8CBAFCBB994 +B8A06EB8A06EB6A06EB9A271BAA476BEAB80C0AD83C2AF88C0AD85C2B08AD9CFB9E0D7C5 +E0D7C4E3DBCBE4DDCEE6E0D2E7E2D5E2DBCDD3C8B3CEC3ACC8BBA1C3B69ABCAE8FB3A27F +B6A58382662F603E006D4F0E73561976581D7A5E267A5E26775B236F54196D5116A08D67 +C1B59BC1B69DCAC0ABCCC3AFD0C7B6D1C9B7D1C8B7CFC6B4CCC3B0C6BCA7C3B8A3826D41 +553900593D035E440C634B13644B1588744CA59677B3A78DA89B7FA7997BA49879A49678 +AA9D82B3A890B8AE97BBB29CB3A890A29578A09276D5D2CDE3E7EDE2E4EAE5E7ECE6E8ED +E8EAEEEAECF0EAECF0EDEEF2EDEFF2EFF0F4F1F2F5F1F2F5F3F4F6F4F5F7F5F6F8F6F7F8 +F7F8F9F8F9FAF8F9FAF9F9FAFAFAFBFAFAFBFBFBFCFBFBFCFCFCFDFDFDFEFDFDFDFDFDFE +FDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFFFFFF4543910000690A076E +0A076F0100692929837F89BBC9DBEDD8EBF7D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D4E7F5DCF0FA666BA400005808026006005E +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F08016000005A34327FD4E3F1E0EFF9DEEDF7DFEEF7DCE8F3E9FFFF895E62 +4700005102025E0808B74B49D25D5BDE625EDD605C9D39357F2824CA514DDE5854D95450 +D95551DA5551D95551DA5450DA534FD9534FD95450D9514DDA5652DA5652DA5450DA5450 +D85551E04B47BC35321702020000000200000200000000002E0B0AB72926D43F3BDC5450 +D74F4BD84D49D84D49D74A46D64642D84742CD4243B4374439105B1203621A06601A0660 +1304627A1C45D13129C62E2BC12D29BE2C28B82B27B12A26AF2925A72724A126238C201E +1F07060400010000000000000000000401010A03031004040D03030C03030D03030F0404 +0804040000000B00000401010702020502020401010401010602020000011C0706591514 +1705050000000201010201010301010001010B0000220000540000530303470000B5A7AE +E7F9FFE0EBF4DBEBF6D1E6F5C0DCF0CCEAF96B77AD01005A07015F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +08026000005928297A6A7AB1AACDE980BBE469ADDF50A0D9459AD7479AD74B9DD8489CD8 +499CD853A1DA5BA6DC6FB1E088BFE5ADD2EDAAD0ECAAD1EDA9D1EDAAD1EDA9D0ECA8CFEB +A5CEEBA0CCEBA2CCEA8BC0E65CA7DC4D9ED9479AD74AA0DB3E87C92952A40D0F7508036C +09066E0B086E0000696D6492FFF7CDF4E5C8F7EAC9F7E9CAF7E9CBF6E8CAF6E8C8F5E5C2 +F4E2BBEDD092E2B550E1B34EE0B24DE1B352E0B352DFB251DFB150DDAE4BDCAC45DCAD4A +E0B862EAD098F2E3C3F1E2C1F2E4C6F3E4C7F3E3C7F1E2C4F0E1C0EFDDBAEAD5A9EAD3A6 +E4C991DCBB75CD9C38CD9E3CCEA142CEA349CFA54CD1A855D0A958CFA855CFA757CFA85A +D4B16DE7D6B1EADBBCEADBBDEADABCEADBBDEADBBDEADABDE6D5B4E6D5B3D2B57CB2811E +AF7E19AD7D19AF7F20B3852DB68B36B68D39B68E3DB68E3EB28937BE9C57CEB481DECDAC +DFCFAEDECEAEDECFB1DED0B2DECFB1DFCFB2DBC9A9D7C5A2CFBA909E762591630893670F +91660E926610966E1E9870239A72279C79319D7832A27F3DB59A66CAB793D3C5A7D2C2A4 +D3C5A9D4C6AAD5C7ACD6C9AFD6C8AFD1C2A6CCBC9CD1C2A5D0C19FC2AE83B79F6DB7A16F +B69F6EB9A475BBA77BC0AC83C1AE87C3B089BFAC85C6B694DED5C2E0D7C4E2D9C8E5DECE +E6DFD0E7E1D4E6E0D3E7E1D4E3DBCDD9CFBDC5B79CBFB293B7A887B5A482AC9A75705111 +68480472531575571B775A1F7A5E267A5E2675592070531A745921AE9F7EC2B79FC3B8A1 +CBC2AECEC4B1D0C8B6D1C9B7D1C8B7CEC4B2CBC2AEC4BAA4B8AB927259285B40055E430A +624911664D1768501C948462AA9D81AFA288A59779A5977AA4977AA4977BAEA38AB7AD97 +BBB39DBFB7A4BCB39FA6997F998B6CCAC5BAE3E7EDE1E4E9E4E6EBE5E7ECE6E8EDE8EAEE +E9EBEFEBEDF1ECEEF1EEEFF3EFF0F4F0F1F4F3F4F6F3F4F6F4F5F7F6F7F9F6F7F9F7F8F9 +F8F9FAF9FAFBF9F9FAFAFAFBFBFBFCFCFCFDFCFCFDFDFDFEFCFCFEFDFDFDFEFEFEFEFEFE +FDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFDFDFEFFFFFF3F3D8E0000690A076E0A086F000068 +2E2F8694A0CACBDDEFD8EBF7D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D5E8F5D5E7F5DCF0FA55589800005908016007005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F06005E +09026000005843438AD8E7F4DDEDF8DDECF7DFEEF8DCE8F2DFEDF8845458480000500101 +670E0ECC5A57D8615EDD615DDE615DAC403D78231FC84F4BDE5753D95450DA5551D95551 +DA5450D9524ED94F4BDD625FE0726FDC5F5BD84F4BD84E4AD9524ED9524ED95652D4403C +992623040101000000000000010000000000631714DE3D39D74A46D64E4AD74D49D84D49 +D74B47D74945D64642D84641CC4041B3364239105A1203621A06601A0660130462791C45 +D03129C52E2BC02D29BC2C28B72B27AF2A26AE2925A527239D2421972320340C0B0B0202 +0000000000000000000100000702020E03030C02020B0202060101000000140202471210 +5C28261F06050000000501010502020502020502020000001806064F12120C0303000000 +020101020000020000010101040000170000510000540304470000AC979FDFECF6E1EDF6 +DCEBF7D1E6F5C1DCF0CBE9F97988B903005C07005F07005F06005E07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F08016001005A +1F1E7354609FA9CCE981BCE56BAFDF51A0DA469BD7479BD74C9ED9499DD8489BD751A0DA +5AA5DC70B1E189BFE6ADD2EDAAD0ECA9D0ECA9D0ECAAD1EDA9CFECA8CEEBA5CEEBA0CBEB +A2CCEA8AC0E65BA6DC4D9ED9479AD74A9FDA408BCC2F61AF0D107507036C09066E0B086E +000069675F90FFF7CDF4E5C8F7EAC9F7EACAF7EACBF6E9CAF6E8C9F5E5C2F4E0B8ECCE8D +E1B44FE1B34FE0B24DE1B351E0B353DEB251DFB150DDAF4CDDAD47DCAE4BE1BB68EAD19B +F2E2C3F2E2C2F2E4C6F2E4C7F2E3C7F1E2C3F1E0C1EEDEBAEAD4A8EAD3A6E3C88EDAB76D +CC9B37CD9F3ECDA143CFA34ACFA64ED1A957D0A959CFA755CFA858CEA85AD5B471E8D8B5 +EBDCBDEADBBCEADBBDEADBBDE9DABDE9DABCE6D4B3E5D3B2CFAF71B17E1AAF7E19AD7D19 +B07F23B3862DB68C36B68D3AB68E3EB68D3EB28936C09F5ED2BA8CDDCDABDECEAEDFCEAF +DECFB1DED0B1DECFB1DECEB1D9C8A7D6C4A1CBB5899A711D91640992671091660F926711 +976E1E9871239A73289D78329D7831A2813FBBA373CBBA97D3C5A7D2C3A4D3C5A9D5C7AB +D5C7ACD5C9AFD6C8AFD1C1A5CBBB9BC8B795C4B189BCA677B9A371B6A16FB69F6EB9A475 +BCA87CC0AD84C1AF88C2AF89C1AE87C9BA99DFD7C4E0D7C4E2DAC9E5DECFE6DFD1E7E1D3 +E7E1D4E6E0D3E6DED1DFD6C6C6B99EBCAD8DB5A584B7A786A5926B6B4B0A6B4C0A735418 +76581D785C217A5D27795D2674591F70541B795E28B4A587C2B69EC4BAA3CCC2AFCEC5B2 +D0C8B6D1C8B6D0C7B6CDC4B1CAC1ADC2B7A1B1A4896E55225D42095F440C644A13674E19 +6A521F998A68AC9F83AEA186A49678A5977AA4977AA6997DB1A58DB8AE98BCB49FC1B9A7 +BFB6A2A99D83998A6CC4BDAFE3E6EDE0E3E8E3E5EBE4E6ECE6E8ECE8EAEEE9EBEFEBEDF1 +EBEDF1EEEFF3EFF0F3F0F1F4F2F3F6F2F3F6F4F5F7F5F6F8F5F6F8F7F8F9F8F9FAF8FAFB +F9F9FAFAFAFBFBFBFCFBFBFCFBFBFCFCFCFDFCFCFDFDFDFEFEFEFDFEFEFEFDFDFDFEFEFE +FFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFFFFFFF3F3F8D9D8E829268102006A0A076E0B086F0000673F4191BECEE6 +CFE1F1D7EAF6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D5E8F5D6E9F6D4E7F5D6E9F626237500005A08015F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F0A0361000054 +6A6EA6E4F5FDDAEAF6DCECF7DEEEF9DBE7F0AF9CA37236384C00004E0000892828E46B68 +DD6562DC605CDE605CD25552A73A37D15450DC5652D95450D9534FDA5450D9514DDA5854 +DD6460E89795ECABA9E99D9AE37F7CE0716ED95551D6504CE1524E7F2320330A09000000 +0100000100000E0403440F0DD03C38D9504CD64C48D84C48D74C48D74945D64642D64541 +D5433FD7403CCB3B3BB23340390F5A1203621A06601A0660130462761C44CA2F27C02C29 +BB2B27B72B27B22A26AB2824A828249F25229A2320871F1C290A090E0303010000000000 +0000000000000100000E03031006060C05052908075E1D1BBE6B69F58C89FFA09EA34846 +320A080F05050100000502020401010100000601010F0403030101020000020101010000 +0000000100000000000600004300005502024B0000885B60B9AFB7E4F3FDDDEBF6D3E7F5 +C3DEF2C8E4F69CB1D40B056206005E07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F06005E09026019166D +A6C9E681BCE56CAFDF55A2DB499CD8479CD84A9DD84B9DD8499CD84F9FD959A4DB76B4E1 +8DC1E6ADD2EDA9D0ECAAD0ECA9D0ECAAD1EDA9D0ECA8CFEBA6CEEBA0CBEBA2CCEA86BDE5 +52A2DA4D9ED8479AD7479CD94393D23C80C510177A07026B09066E0B086E000069474185 +F7E9C8F6E8C9F6E9C9F7E9CAF6EACCF7E9CBF6E8CAF5E6C4F2DCAFEBC982E1B24EE1B351 +E0B34FE0B254E0B455DFB252DEB150DDAF4FDCB050DCB051E5C37BECD5A4F2E2C3F2E2C3 +F3E3C6F2E4C7F1E3C6F1E2C2F1E1C0EEDCB7E9D3A4E9D2A5E0C285D4A954CB9A36CC9F41 +CDA145CFA44ECFA652D0A857CFA757CEA655CFA95ACFAA5ED8BB7FEADCBDEBDCBDEADABC +EBDCBEEADCBEE9DABCE8D9BBE4D2AFDFCCA4C5A158AE7A13AE7C17AD7C1BB18127B38730 +B68C39B68E3CB68E3EB58D3DB18937C8AB73DAC7A1DDCCAADECDAEDFCFB1DECFB1DDCFB0 +DDCEB0DCCDAED8C8A6CFBA92BDA16A93670E92650B92660F926611936915966F20977125 +99742A9D79349C7832A88A4EC9B792D0C09FD3C4A7D2C4A5D3C5A9D4C7AAD4C7ACD6C9AF +D4C7ADCDBD9FC9B898BFAB8695753688641EAD945EB9A472B59F6DBAA476BDA97DC0AF86 +C2B08AC0AD86C5B593D2C5A9E1D8C6DFD7C5E3DBCBE5DFD0E6E0D2E7E1D4E7E1D4E5DFD2 +E3DCCDE4DCCDD4C9B3BCAD8EB5A381B6A58490774664430071541674571B785D237B5F27 +7A5F287A5E2671551B795E298E784ABCB095C1B59CC6BBA5CCC4B0CEC5B2D0C7B5D1C8B7 +D0C7B6CAC1ADCAC0ADB6AA909D8C69674E19624911624911654C17674E1A6D5625A29576 +AEA086A99C80A49779A5977AA4977AAA9D83B6AC95B9B09BBFB5A1C4BBA9C2BAA7ADA38A +9F9275B4AA96E5E7ECDFE1E6E1E4EAE3E5EBE4E6ECE6E8EDE7E9EEE9EBEFEAECF0ECEEF1 +EEEFF3EFF0F4F0F1F4F1F2F5F3F4F6F4F5F7F5F6F8F6F7F8F7F8F9F8F9FAF8F9FAF9F9FA +FAFAFBFAFAFBFBFBFCFBFBFCFCFCFDFDFDFEFDFDFDFDFDFEFEFEFDFDFDFDFEFEFEFFFFFF +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFE +FFFFFFE9E8F2B0AFD01C197904016B09066E0B086F0000664E529CD7EBF7D1E4F3D6E9F6 +D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D7EAF7 +CEE1F0BFD0E519166C01005B07015F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F0902600000588C92BDEAFAFF +DAE9F5DCEBF7DEEEFAD9E5EF7A44475D14145000004C0000A03B39E26A67DC6360DC605C +DB5E5ADB5B57DC5A56DA5753D95350DA534FD9524ED9514DD84C48DE6966E58A87EAA3A1 +EAA4A1ECA8A6ECA8A6EBA6A4E69390DD625ED548442D0807000000020000020000000000 +5F1210A92F2BDF504CD44743D74945D74743D74743D64642D64440D6423ED43E3AD63C37 +CB3939B12E3B390E591204621A0660190660130462751B44C52E26BA2B28B62B27B42B27 +AE2925A42723A126229D25227A1D1A45100F0A0202120404060101000000000000000000 +000000060201300000912B28E89290ED9D9BF7ABA9E6A6A4EAABA9E4817ECE221E1B0808 +000000040101030101030101020000000000020000020000020101010000000000010000 +0000000000003900005700014F0000611A1C926D74E6F9FFDCE9F3D5E8F5C5DEF2C6E1F4 +B2CBE62220740D076405005D07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F06005E07005F04005C0A06619BBBDD81BCE5 +6BADDE56A3DB499CD8479BD8499CD74B9DD84C9ED950A0DA59A5DB73B3E08DC1E6AED2ED +AAD0ECABD1EDAAD0EDAAD0ECAAD0ECAAD1ECA6CEECA0CBEAA2CCEB84BCE44C9ED94C9DD8 +479BD7469BD84598D64494D313208007016A09066E0B086E00006A312C7CE7DAC2FAECCA +F5E8C9F7E9CAF7EACBF7E9CBF6E8CAF5E6C5EFD7A3E8C578E1B24FE1B452E0B250E0B255 +E1B354DFB153DEB051DDAF50DCB051DCB154E7C98AEDD7AAF2E2C2F2E3C4F3E4C6F2E4C7 +F2E4C7F1E2C2F0E0BEEDDBB5E9D2A3E9D2A5DDBB77CD9D3ACC9A38CC9F43CDA145CFA551 +D0A755D0A857CFA653CEA553D0A85DD0AE67DBC28DEBDEC1EADCBDEADCBEEBDDC0EADBBD +E8DABAE8D9BAE3D0ACD8BF8CBE9542AC7912AD7C16AE7F1EB1852CB38832B78C3BB68E3D +B48D3DB48D3DB28A3BCDB582DECDABDCCCAADDCCAEDFCFB1DECFB1DDCEB0DCCDAEDBCBAB +D8C7A6C6AE7FB08E4D90630892660F91660E926713936A19966F2198722699742B9D7B36 +9C7933AF945ED1C1A1D1C2A3D3C5A7D2C4A7D3C5AAD3C5AAD5C7ADD6C9AFD4C6ABCABA9A +C5B391BBA67D835E1870460087651FA1844AB69F6DBCA77ABEAA80C1AF88C2B08BBEAC82 +CBBD9ED8CDB6E1D8C7E0D7C6E3DCCDE6DFD1E7E0D2E6E0D4E6E0D3E4DED0E2DBCBE0D9C9 +DBD1BED1C5AEBCAD8EA6916A7E6129634200735618775A1F7C612A7C61297A60287A5F27 +705319856D3DA49370BFB39AC2B69DC7BCA6CCC3B0CEC5B2D0C7B5D1C8B7CEC5B4C8BFAA +CAC1ADA8997A8A764B694F1B654E17644D16664D196249136E5827AB9C81ADA085A5977A +A49679A5977AA5967AAB9E84B8AE98BBB29EBFB6A2C2B9A7C3BBA9A4987D9E8F72AA9F88 +D9D7D0DCDEE1E0E4EAE1E3E8E3E5EBE5E7ECE6E8EDE8EAEEE9EBEFEBEDF0EDEEF2EEEFF3 +EFF0F3F0F1F4F2F3F6F4F5F6F4F5F7F5F6F8F6F7F9F7F8F9F9FAFBF9FAFBF9FAFBFBFBFC +FBFBFCFBFBFCFCFCFDFCFCFDFCFCFEFDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFEFFFFFFE6E6F0 +A8A7CB1C197904016B09066E0B086F000067595FA3DFF3FCD2E5F3D6E9F6D5E8F5D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D8EBF7CADCEDAFBED9 +1A156D02005B07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07015F02005C969EC5EAFAFFDAE9F5DCECF7 +DEEFFAD7E2ED641F215506065200004C0000AB4341E36A67DC625FDC605CDB5F5BDA5B57 +DA5A56DA5652D95450DA524ED9514DD9504CD84D49E27C79EA9E9CEFB6B5F1C2C1F2C8C7 +F0BEBCEFB7B5E9A19EE88F8CD3615E2501000000000300000000000F02029C2D29C7403C +D84A46D64743D74743D74642D64541D6433FD5413DD5413DD43C38D63B36CB3637B12D3A +390E591204621A0660190660130462731B43C42E26B92B28B42A26B12A26AA2824A22622 +A326229623205013112B0A090D0303120404070101000000000000010000000000511514 +A35B59CC7270F2A4A2E9A5A3E7A09EEAA09EEBA5A3E69391E66D6A471614000000040101 +020101030000030101030101020101010001020101010000000000000000000000000000 +330000570000510101520101825257E6FBFFDDE9F4D6E8F5C5DEF2C5E0F4B5CFE9313280 +120D6804005C07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F05005E0B056292B0D681BDE76BADDE55A2DA +4A9DD8479AD84A9CD84C9DD84B9DD952A1DA5AA5DC72B2E08DC1E6AED3EDAAD0ECAAD0EC +ABD1ECABD1EDABD1ECAAD1EDA7CEECA0CBEAA2CCEB80BAE44C9ED94C9ED8489BD7479BD8 +4699D6479AD716278506016A09066E0B086E00006A2F2A7CE4D6C1FAECCAF5E8CAF7EACB +F6EACCF7E9CBF6E8CAF5E5C4EED59EE7C475E1B250E1B352DFB251E1B455E0B354DEB153 +DDB052DDB051DCB050DCB255E9CC92EED9ADF2E2C3F2E3C4F2E4C7F2E4C7F2E4C7F1E2C2 +EFE0BFEDDAB3E8D1A2E8D2A4DAB76FCB9A35CC9C3ACDA044CDA146CFA551D0A755CFA756 +CEA654CEA554CFA85ED3B06DDEC594ECDEC2EADCBEEADCBFEBDCC0EADBBDE8D9BAE7D9BA +E2CEA9D2B67DBB903BAB7812AC7B17AF7F21B2862EB48934B78E3CB68E3DB48D3DB38C3B +B38C3ED1BA8BDECEADDCCCABDDCEAFDFCFB1DECFB1DDCFB0DCCCADDACAAAD8C7A7C0A571 +AA853F90630992660F91660F936A16946C1B966F219972279A752C9D7B369B7933B49966 +D2C3A5D2C2A4D3C5A8D3C5A8D3C6AAD3C6AAD5C7AED5C8AFD3C5AAC9B999C5B491B7A076 +805A10764E007D590F86631EA88E56BFAB81C0AD84C1AF88C2B08ABEAB83CFC2A5DBD1BB +E0D8C7E1D8C7E4DCCDE6E0D2E7E0D3E6E0D3E6DFD2E4DDCFE1DACAE0D8C7DAD1BCD5CAB4 +C8BA9F9B865A75571E65440274581B785C237C612A7B612A795E27785E276F54188B7648 +AD9E7EBFB49BC2B79FC7BCA6CCC3B0CDC5B2CFC7B5D0C7B6CDC4B2C7BEA9C9C0ABA1916F +836E416B521E674F19664F19674F1B5F4710715B2BAC9E83AC9E83A49779A5967AA5977A +A6987CAB9F85B7AD97BBB29DBFB6A2C2B9A7C6BDAC9E91748F7E5EA79C83CECAC0D9DBDE +E0E4EAE0E3E8E2E5EAE5E6ECE5E7ECE8EAEEE8EAEEEAECF0EDEEF2EDEFF2EFF0F3EFF0F4 +F2F3F5F3F4F6F3F4F6F5F6F8F5F6F8F7F8F9F8F9FAF8F9FAF9FAFBFAFAFBFAFAFBFCFCFD +FBFBFCFCFCFDFDFDFEFDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFEFFFFFFE0DFEC8F8DBD1A1778 +05016B09066E0A076E03006A7780B7E2F6FDD3E6F4D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D4E7F5DBEEF9BFCFE5838BB916116A03005C +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F08015F04005D120B66AEB9D6E7F7FEDBEAF6DDEBF6E1F3FEC5C4CD +5204044E0000580505671010C65653E36A67DC625FDC5F5CDB5E5ADB5A56DA5955DA5551 +D9534FD9524ED9514DD84D49DA5956EFB6B5F5D6D5FBEEEEFDF7F6FDF8F8FCF5F5FBF1F1 +F0C9C7F7AEABAF68660500000002020300001E0807701D1BE24945D94945D54440D6433F +D6433FD6423ED5403CD43D39D43B37D43A36D33733D43530C93132AF2936380D58120462 +1A0660190660130462701A43BD2D25B22A27AE2925AA2824A4272399232194221F551412 +110404100303110404100404150606150606090202020000000000972825FFAEACEDACAB +E9A2A0EAA2A0EBA2A0EBA3A1EAA2A0E9A4A2F6B2B0AF4643030000070202010000020101 +020000010000010000010000000000000000000000000000010000000000200000540000 +5302024900006D3134D9E6F2DEECF7D5E6F4C6DFF2C5DFF3BBD6ED59609F211F7301005A +08016007005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F06005E07005E7A93C284C0E86BADDE55A2DA4A9CD8459AD7 +4B9DD84C9DD8499CD855A2DA5CA6DC76B4E290C2E7AFD3EDAAD0ECAAD0EDABD1EDABD1ED +ACD1ECAAD1EDA7CFECA0CBEAA2CDEB7AB6E2499CD84C9ED9499BD8499BD7489BD749A0DB +203D9506006909076E0A076E02006B262279D9CCBEFCEECCF5E8CAF6E9CCF7EACEF6E9CB +F5E8CAF5E5C3EBCD8EE5BE6CDFB24FE0B351DFB352DFB455DFB455DEB254DDB154DCB052 +DCAE4DDEB45CECD3A2EFDBB3F2E2C2F3E3C5F2E4C7F1E4C7F2E4C6F1E1C2EFDFBDEBD8B0 +E7D0A1E6D0A0D5AD5BC9962FCC9D3ECDA147CDA249CFA551CFA655CEA654CDA453CDA554 +CEA95FD8BB81E3CEA4ECDFC3EADCBFEADCBFEADCC0E9DABDE7D8BAE8D8BADDC79DC39E54 +B4862BAA7812AB7917B08328B58935B68C3AB68E3EB68E3FB48D3EB08838B9944DD8C49E +DDCDADDECDAEDFD0B1DFCFB1DECEB1DDCEB1DACAABD8C8A7D6C5A2AD8B48996F1C90640C +91650F926713966D1E966E1F9670249973299A772F9E7B389E7B38C0AC81D4C7ABD2C4A7 +D4C6A9D4C6AAD4C6ABD4C7ACD5C7AED4C7ADD1C2A7C6B694C4B490A58A55764E01795308 +775004724B007E5A13AB9463BBA77EC2AF89C0AD87BFAD88D8CDB7E0D7C4E1D8C7E2DACA +E5DECFE6E1D3E7E1D4E6E0D3E5DED0E3DCCDDFD8C7DED6C4D8CEB9D6CDB6D2C7AFA79366 +7F632A6A4B0C775B217A5E277D612B7B602A755A2171551B6F5419A08F6ABEB298C0B59C +C3B8A1C7BCA6CBC3AFCDC5B2CDC5B3CEC5B3CAC1AEC6BCA8C2B7A28C794F745D2C6F5725 +6C54226C54226A52205F450F7D693EAC9F84A79A7DA49679A5977AA5977BA89C81ADA289 +B8AF99BDB5A0BFB7A3C3BAA9C7BFAE8D7E5D6E5A329D9074B2A891D3D3D3E0E3EBDEE1E7 +E1E4E9E3E5EBE4E6ECE6E8EDE7E9EDE9EBEFEBEDF0ECEEF1EEEFF3EFF0F3F0F1F4F2F3F5 +F3F4F6F4F5F7F5F6F8F6F7F8F7F8F9F8F9FAF9FAFBF9F9FAFAFAFBFBFBFCFBFBFCFCFCFD +FCFCFEFDFDFDFDFDFEFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFDFFFFFFD9D9E97573AE17157605026C09066E +09066E05026B8590C0DFF3FCD3E6F4D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D4E7F4DDF1FBB6C5DF6267A2130E6804005C07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F08016001005B1D186EBCC9E0E3F2FCDBEAF6DDEBF6E3F5FFB7ACB45301014F0000 +5C0707802221CC5B58E26966DC625FDB5E5ADA5A56DA5955D95450DA5551D9534FD94F4B +D8504CD74A46DF706DF7DBDBFCF1F1FDF7F7FCF7F7FCF6F6FCF6F6FDFAFAF5E8E7F68B88 +874341000000050202000000811512BF3D39DA4440D23B36D6413DD43E3AD5403CD53E3A +D53D39D43A36D43935D43733D23430D5342FC72F2FAE2936380D581204621A0660190660 +1304626F1A42B92C24AD2926AB2824A52723A325228F221F731C191F07060C03030F0303 +0A0101000000290403831A163B0C0B0000000000006F1E1CEE9D9BE8A19FEBA2A0EAA3A1 +EBA2A0EAA2A0EBA3A1E9A09EF1A7A5CD8886490B09120605000000020101020101020101 +0000000100000201010000000000000000000100000000001900005100005302024D0000 +672426CDD3E0E0EEFBD5E5F3C6DFF2C5DFF2BCD7ED7581B52C2B7C00005808026007005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F06005F05005C6B7FB586C3EA6AADDE54A2DB489BD8459AD74B9DD84B9DD9 +4B9DD855A3DA5CA7DC7AB6E292C3E7AFD3EDAAD0ECAAD0EDAAD0EDABD0EDABD0ECABD1ED +A7D0ECA0CBEAA3CDEB77B6E2489BD84C9ED94A9CD8489BD7489BD749A0DB25489C060069 +09076E0A076E04016C1E1975CFC2BAFFF1CDF4E7CBF6E9CDF7EACEF6E9CBF5E8C9F5E4C1 +E9C884E4BC67DFB34FDFB350DEB453DFB457E0B356DEB356DDB255DCB052DBAD4CDEB761 +EDD7ABEFDCB5F2E2C2F3E3C7F2E4C7F1E4C7F2E4C6F0E0C1EFDEBCEBD8AFE7D1A2E6CE9D +D2A750C8962FCC9F41CDA249CEA34BCFA652CFA755CEA654CDA453CCA555CEAA60DDC38E +E5D2ACEBDEC3EADCBFEADCBFEADCC0E9DABEE8D8B9E8D9BBDAC294BC923EB28325AB7813 +AB7A17B08429B58936B68C3BB58E40B68E40B38C3EB08737BC9A56DBC9A6DDCCADDECEAF +DFD0B2DECFB1DDCEB0DDCEB0DAC9A9D9C9A8D3C19CA27C3192660E90650D91640C926815 +966E21976E2197702498752C9A78319C7934A07E3EC8B691D4C7AAD3C5A7D4C5A9D3C6AA +D4C6ABD5C6ADD5C8AED3C6ABD0C2A4C6B593C4B391987B3F744D00795408775105785106 +79540A8C6D2EA28753C4B28FC2B08AC2B18EDCD3BFE1D8C6E1D9C8E2DBCCE5DFD1E6E0D3 +E7E1D4E6E0D2E4DDCEE2DBCBDED6C5DCD4C2D6CCB6D6CDB7CCC0A5B2A0769D8856715417 +77591E7B5F287C612A7A5F2973581F6C5115725820AFA080C4B8A1C0B69DC3B9A0C7BCA7 +CCC2AFCDC4B1CEC5B3CDC4B3C8BFABC6BCA8BCB098806A3D7058267059286F57256E5725 +6A532160471286734BACA185A6997CA49679A4977AA79A7EAC9F86B0A58CBAB19BC0B7A4 +C1B9A6C4BBAAC2B9A8806E49604A1C998C6EA29679CDCCC9DFE3EBDDE0E6E0E3E9E2E5EA +E3E5EBE5E7ECE6E8EDE8EAEEEAECF0EBEDF0EDEEF2EEEFF3EFF0F3F1F2F5F2F3F6F3F4F6 +F4F5F7F5F6F8F6F7F8F7F8F9F9F9FAFAFAFBFAFAFBFAFAFBFBFBFCFCFCFDFDFDFEFDFDFE +FCFCFDFDFDFEFEFEFDFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFFFFFFFEFEFEFDFDFEFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD +FDFDFDFDFDFDFDFDFDFBFBFCFFFFFFD0CFE357559B15127506036C09066E09056D07046C +909CC7DDF0FAD2E5F3D4E7F5D4E7F5D4E7F5D4E7F5D4E7F5D4E7F5D4E7F5D4E7F5D4E7F5 +D4E7F5D4E7F5D4E7F5D4E7F5D4E7F5D4E7F5D4E7F5D4E7F5D4E7F5D4E7F5D4E7F5D4E7F5 +D4E7F5D4E7F5D2E5F3DCF0FAB0BFDA505294120C6704005D07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F080260 +00005A231F73C3D0E5E0F0FADAE9F5DBE9F4E2F5FFAC9AA25000004E00005E0A0B903333 +CD5C5ADF6664DB615FDA5D5AD95A56D95855D85451D85451D8504DD64D4AD74E4BD54744 +E2817FF7E4E4FAF0F1FBF4F5FBF5F5FBF5F5FBF4F5FBF5F6F6EEEFF2827F883837000000 +0001011B0707BC5250DB7976E38280DC6966D54340D43E3BD43E3BD33C39D33A36D23633 +D13532D13431D0322ED1312DC32D2FA92735370D581204621A06601906601404626C1942 +B52A23AA2826A42724A126239923216017153D0E0E16050615060713060735100F631F1E +B76867D05F5C6D2927000000000000591918ED9E9DE9A3A1E9A1A0E9A1A0E9A1A0E9A1A0 +E9A1A0E8A09FEEA8A6D48886891B191C0808000000030101010001000000000000000000 +0000000000000000000000000100000000001400004E00005301024D0000601A1CC4C6D3 +DFEEFCD3E2F2C4DDF1C3DDF1BBD6EC8494C132328000005709026007005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F03005B6072AC86C3EA6AABDD53A0D94699D64599D64B9DD84B9CD84C9DD854A1D9 +5BA5DB79B5E191C2E6ADD1ECA9CFEBAAD0ECAAD0ECAAD0ECAACFECAACFECA6CEEB9FCAE9 +A2CCEA73B2E0499BD74C9DD84A9CD74A9BD7489AD64AA0DA2950A206006909076E0A076E +06036D141071C1B5B5FFF1CEF2E5CAF5E8CDF5E8CDF4E7CAF4E7C9F3E1BEE7C57CE2BA64 +DEB14FDEB150DDB254E0B457DFB357DEB356DDB256DCAF53DBAC4BDFBA68EEDAB1EFDDB8 +F2E2C3F3E4C8F2E4C8F1E4C7F2E4C7EFE0C0EEDDB9EBD7ADE7CF9FE4CA96CFA247C99732 +CC9F41CDA148CEA34CCEA653CFA755CEA553CCA453CCA454CEAA61E0C99AE7D5B2EBDEC2 +EADCBFEADCBFEADCBFE9DBBEE7D8B9E8D9BBD5BA86B88C34B08122A97714AB7A19B1842C +B58A38B58D3CB68E3EB68E3FB38B3DB08636C0A163DCCBAADCCCAADECEB0DFD0B2DECFB2 +DECFB1DDCEB0D9C8A8D9C9A9CDB98F9C732391630B90650E90640D936A18976F22966E22 +9773289A78309B79349B7834A58549CCBC9AD3C5A9D3C5A8D4C6AAD4C6ABD4C7ACD5C7AD +D4C7ADD2C4A9CFC0A3C3B18DBCA7818D6D2C754D007851077751067854097F5C168A6A2B +907135AE986AB9A67DC7B695DFD6C3E0D8C6E2DACAE3DCCDE5DFD1E6E0D3E6E0D3E5DFD1 +E3DCCDE1DACADDD4C3DBD2BFD5CBB4D7CDB8C5B799A99467AA976A8E7642795C247B6129 +7B60297A5E2773581F6E52177D6531B8AB8FC3B8A0C2B79FC3B9A2C6BCA6CAC1ADCBC2AF +CCC3B1CCC2AFC6BDA8C2B7A2B2A4897963347159287059276F58266F5826695220674F1E +8D7C56ABA083A5987AA49779A4977AAA9D82B0A68DB2A891BCB29EC1B9A6C2BAA7C5BCAC +BDB4A0736038553D0F9283659C8F71CFCDC9DFE3EBDCDFE5DFE2E8E1E4E9E2E5EAE4E6EC +E5E7ECE7E9EEE9EBEFEAECF0ECEEF1EDEEF2EFF0F3F1F2F4F1F2F5F3F4F6F3F4F6F5F6F8 +F6F7F9F7F8F9F8F9FAF9F9FAF9FAFBFAFAFBFBFBFCFBFBFCFCFCFDFCFCFDFCFCFEFDFDFD +FEFEFEFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFCFCFDFFFFFFC9C8DF36358912107406046D09066E07056D09076FA6B5D7E2F6FE +D9EDF9DBEFFADBEFFADBEFFADBEFFADBEFFADBEFFADBEFFADBEFFADBEFFADBEFFADBEFFA +DBEFFADBEFFADBEFFADBEFFADBEFFADBEFFADBEFFADBEFFADBEFFADBEFFADBEFFADBEFFA +D9ECF8E5FAFFAFBEDA3838830F0A6504005D06005F06005E06005E06005E06005E06005E +06005E06005E06005E06005E06005E06005E06005E06005E06005E0802600000582D2B7B +D6E5F3E4F6FDE1F2FBE1F0F9EBFFFFA3868A5000004F0000651110B05955D96A64E46661 +E1645EE16059E05D56E05B55DF5851DF5750DE524BDE514BDD5049DC4942EE9A95FFF5F2 +FEFCF9FEFDFAFFFDFBFFFDFBFFFDFAFEFCFAFCFFFEF6756F8A2B2500000000000060120F +F99F99F2AEAAF0AAA6F1ACA7EB8E89DE524BDA3F38D7322CD8362FD8352ED5322BD5322B +D2312AD13129C42E2CAF2931380D561204631A06601906601404626D193FB32B20A92822 +A52720A62621741B161A05030D020005020134040187231DF5948FF3A9A4F9AAA5FFB7B3 +B6625D0900000000003B120FEFA29EF1A8A4F0A7A2F0A7A2F0A7A2F0A7A2F0A7A2F0A6A1 +F1ACA8EA908CE6322B2B0C0A000000030100010000010000010000000000000000000000 +0000000000000000000000000D00004C00005601015100005B0D0DBEBAC4E4F8FFD8E9F6 +CAE3F5C7E3F5C0DDF19DB3D53B3E8800005609036006005E06005E06005E06005E06005E +06005E06005E06005E06005E06005E06005E06005E06005E06005E06005E07015F010059 +5666A48CCBF06DB2E155A6DD479FDA48A0DB4DA2DB4EA1DC4FA3DD57A7DE5DAADF7DBCE6 +98CAECB3D8F1AED7F0B0D7F0AFD6F0AFD6F0AFD6F0AED6F0AAD4F0A4D1EEA6D2EF72B6E4 +4EA2DC4EA2DC4CA2DC4CA2DC4A9FDA4EA5DF3061AE05006909076F09066E08066E08056E +B8AEB3FFFED4F9ECCFFDF0D1FDF0D0FCEECDFCEECDF9E7BEECC875E9C061E4B751E5B752 +E3B755E0B559DFB359DFB258DEB257DCAF53D9AC4CE0BE72F0DCB5F0DFBAF2E3C5F3E5C9 +F2E4C9F1E3C7F2E4C7EFDFBEECDBB6EAD5AAE6CD9CE0C58BCB9C3ACB9936CD9E42CDA048 +CCA24CCDA654CFA655CDA554CCA352CBA251CFAD67E4D1AAE9D9B8EBDCC0EBDBBFEADBBF +EADCC0E9DBBEE6D7B7E8D9BBCEB074B4862BAE7E1FAA7713AC7B1AB1852DB48C38B48D3C +B68F40B58D3FB38A3CB08636C8AD78DECFAFDCCCABDFCFB1DED0B3DFD0B3DDCEB1DBCDAF +D8C7A7D9C9AAC3AA799367108F630A90650E8F650E946B1B966F2296702299752B9B7A34 +9D7A369B7936AD915AD2C2A5D3C5A8D3C5A9D3C6ABD5C7ADD5C7AFD4C7AFD3C6ACD1C2A7 +CEBEA1BDAB85AD9668805C15754F027651077A550B7E5A1183621E8A6C2C886B2B8C6F32 +967941C9BA9BE3DCCBE0D6C5E3DCCCE5DECEE6E0D3E7E1D4E6E0D3E4DDCFE2DBCBE0D8C7 +DBD2BFD8CFBAD3CAB2D4CAB3BBAB86A69163B2A078B2A17C927C4D7D632C795E27785D25 +73582070551C8D784AC2B79FC1B79FC4B9A2C4B9A4C6BBA6C7BEA9C8BFAAC9C0ADC8BFAB +C5BBA6B7AC949F8F6F705927715A286F57266E58286F592868511F745E31988866AA9E82 +A49679A4977AA3977AADA187B5AB94B6AB95BDB4A0C2B9A7C3BAA8C5BCACB3A992604B1D +442A008777589E9072C8C4BBDEE1EADBDEE5DEE1E7E0E3E8E1E4E9E3E5EBE4E6ECE6E8ED +E8EAEEE9EBEFEBEDF1ECEEF1EEEFF3EFF0F3F0F1F4F2F3F6F3F4F6F4F5F7F6F7F9F6F7F8 +F8F9F9F9FAFBF9FAFBF9F9FAFAFAFBFCFCFDFBFBFCFCFCFDFDFDFEFDFDFDFDFDFEFEFEFD +FDFDFDFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFF8F7FA +D7D3E3D3D0E1D4D1E2D4D0E1D4D1E1D4D1E1D4D1E1D4D1E1D4D1E1D4D1E1D4D1E1D2CEE0 +DFDBE8A6A2C628227D130D6F0A046A0C066B0B056B0D086C8F98C3B7C4DDB1BED9B2BFDA +B2BFDAB2BFDAB2BFDAB2BFDAB2BFDAB2BFDAB2BFDAB2BFDAB2BFDAB2BFDAB2BFDAB2BFDA +B2BFDAB2BFDAB2BFDAB2BFDAB2BFDAB2BFDAB2BFDAB2BFDAB2BFDAB2BFDAB1BDD8BBC8E0 +8E95BF29247611086409005E0A015F0A015F0A015F0A015F0A015F0A015F0A015F0A015F +0A015F0A015F0A015F0A015F0A015F0A015F0A015F0C036002005A2C2677B3BBD7BAC3DC +B8C1DBB8BFD9C0CDE782647944000C44000F5710219A5463B5616FBB5967B85260B74D5B +B74B58B74957B64654B64553B5424FB5414EB5404DB43B48C17D8CD0C0D1D2C8D9D2C9DA +D2CADBD2CADBD2C9DAD2C9DAD0CBDCBF505E6B192800001000000F682332CB8190C18695 +C38493C48695C27E8DBE6A78BB5A69B33947B1313EAE2936AD2836AD2836A92735A92735 +A025368C203B310B581304621A06601906601505625B154692222C8A202F7E1E2C711A29 +400F1E1405151403144F1A29884A59A15A68C7818FC28796C08190C78E9DA9536218000E +0000102B0E1EC18290C58796C38594C48594C48594C48594C48594C48594C48998BF7887 +BE4451280F1F00000F070213060212050112050112040112040112040112040112040112 +0501120301120D01124101124902134600104B0719988FAABAC6E3B0B9D7A5B5D6A3B5D6 +9DB0D38897C23735820100580C03610A015F0A015F0A015F0A015F0A015F0A015F0A015F +0A015F0A015F0A015F0A015F0A015F0A015F0A015F0A015F0B026005005A454D9373A2D2 +5B8DC64985C33D80C13E80C24382C24482C34482C34985C44F88C56A97CB7FA2CF93ADD3 +90ACD291ABD290ABD291ACD390ABD38FABD38CA9D287A6D188A7D15E90C84382C34382C2 +4281C24181C23F7EC14285C52C53A10900670C076C0C066B0C066B09036A9488A1D9CBBC +CABCB8CDBFBACDBFB9CDBEB6CDBEB7CAB8A9C09F6FBE9861BB9355B99156C39A57DFB458 +DFB358DEB358DDB256DCB055D9AD4EE2C078F0DEB9F0DFBBF2E3C5F3E5C9F3E5C9F2E4C7 +F1E3C7EFDFBDECDBB5E9D5AAE4CA97DDBE7FCA9B38CB9C39CC9E42CDA149CCA24CCEA553 +CFA655CDA454CBA352CAA351D2B16DE6D4B0E9DABAEBDCBFEADBBFEADBBFEADCC0E9DBBE +E7D7B8E7D7B8CAA968B38529AE7D1EA97814AB7B1CB1852FB48B38B48C3CB68E41B48C3F +B28A3CB0893ACCB381DECEAFDCCCACDFCFB1DECFB3DFD0B3DCCEB1DBCCAED8C7A7DAC9AA +BCA06A90630C8F630C90650E906510946C1C96712396712399752D9C79349D7A379E7C3B +B29864D3C4A7D2C5A9D4C6AAD5C8ADD6C8AED6C9AFD6CAB0D3C6ACCFC1A5CDBEA0BBA780 +A288547E5910764F047651067B580E7F5D168563218A6C2D8B6E30896B2C87682ABEAD8A +E5DECEE1D9C7E4DDCDE5DECFE6E0D3E6E1D4E6E0D3E3DCCEE1DACADFD7C6DAD0BDD8CEB8 +D4CAB2CEC2A8B6A47EA99468B19F77B5A581AF9D778B744273571F755A227358206F551A +968258C4B9A2C2B79FC4B9A3C5BAA4C6BCA7C8BEAAC8BEAAC7BEAAC6BCA7C5BBA7AD9F83 +917F596D55237058277058276F58276E5727674F1C7B673C9A8B6BA99D81A39679A4977A +A5997DAEA389B6AC95B7AD96BEB5A1C1B8A7C1B8A6C4BCACA99E83523B0D3E2400837354 +A19477BFB9ACDCE0E8DBDEE4DDE0E6DFE2E8E0E3E9E2E5EAE3E5EBE6E8EDE8EAEEE8EAEE +EBEDF0EBEDF1EEEFF2EFF0F3F0F1F4F2F3F5F2F3F6F4F5F7F5F6F8F5F6F8F7F8F9F8F9FA +F8F9FAF9F9FAFAFAFBFBFBFCFCFCFDFCFCFDFDFDFEFDFDFEFDFDFDFEFEFEFEFEFEFDFDFD +FEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFCFDFFFFFFDBD8E63322721F0C65 +2412682210672210672210672210672210672210672210672210672210672311681F0D66 +170561180661180561180661180561180661200F66210F67200F67200F67200F67200F67 +200F67200F67200F67200F67200F67200F67200F67200F67200F67200F67200F67200F67 +200F67200F67200F67200F67200F67200F67200F67200F67200F672110671E0C65180560 +180661180560180560180560180560180560180560180560180560180560180560180560 +1805601805601805601805601805601805611705601A0862211067210F67210F67210F67 +2110681D09601B055C1B055C1C075E210C63210C63210B62210A61210960210960210960 +21096021096021096021085F21085F21085F210C63220F66220F67221067221067221067 +2210672210672210671F065D1B045C17065D18055C210B62230D64210C63210C63210C63 +220E6523136A231269210B6221096020075E20075E20075E1F075E20075E1F075E1E075E +1A06601805611906601906601805611C065F1E075E1E075E1C065D18055D14045C17055C +18055C290B6230176E28166D210D64210C63210C63210C63240A611B065D17055C18055D +210C63220C63210C63210C63210C63210C63210C63210C63210C63210C63220E6519075E +17055C18055C17055C17055C17055C18055C18055C18055C18055C18055C18055C18055C +17055C1A055C1B055C1B055D1B055C1E0B63210F67200F67200F67200F671F0E66200F67 +1B0963170560180561180560180560180560180560180560180560180560180560180560 +1805601805601805601805601805601805601805611705601A08621D0E661C0C661B0C66 +1A0C661A0C661B0C661B0C661B0C661B0C661B0C661D0D661E0E661F0E661F0E661F0E66 +1F0E661F0E661F0E661F0E661F0E661E0E661E0E661C0D661B0C661B0C661B0C651B0C66 +1A0C661A0C661A0B651805611806611806611806611705611E0C64231065220F65220F65 +220F65220F65220F65220F64210D61210D60220E601B08604C325EDDB158DFB358DCB257 +DCB155DCB156D9AE52E5C788F0E1BEF0E0BEF2E4C7F3E5CAF3E5CAF1E4C7F0E2C5EEDEBB +ECD8B1EAD5ABDFC185D4AD5EC99835CB9B3CCB9E44CCA24BCDA34DCDA552CDA554CCA453 +CBA455CAA355D7BA7FEADBBDEADBBEEADBBFEADCC0E9DBBFEADCC0E8DABDE6D8B9E2CFAB +BF984CB08021AC7C1CAA7A1AAC7E21B28732B48A3BB48C3CB58D41B28A3DB38C40B7944E +D4BF95DECEAFDDCEAEDECFB2DFD0B3DED0B4DCCDB0DBCBADD7C7A7D6C5A4AA87448C5F05 +90650E90640F906512956D1E9771259773289A77329C7A379C7A38AA8C54BFA97FD4C7AB +D3C4A9D4C6ABD6C9AED6C9AFD7CBB2D7CBB2D3C5ABCDBEA0CCBD9EAE976885631D795308 +7751067852087E5C1683621F8868288C6D308C6D3087692A886B2EB9A884D5CBB5DCD2BF +E5DFD0E5E0D2E7E0D3E6E0D3E5DFD1E2DACBDFD7C6DCD3C1D6CCB6D6CCB6D0C5ACB7A881 +AD9A6FAE9C73B3A27CB9A886BFAE8DB09E798C75457B612B745A2378602BAC9C7CC5BAA4 +C2B7A0C5BBA5C7BDA6C7BDA9C7BDA8C6BDA7C3B8A3C1B6A0BFB59E8E7B53745D2C6D5422 +6F5726715A2A715A296C562366501D92835FA19475A6997CA4977AA79B7FABA086B1A68E +B7AD97BAB09BBEB5A2BEB5A2BAB09CBDB4A08A7A583E25003A21007C6B4BA3977BB3AB9A +DADEE6D9DCE3DBDEE5DEE1E7DFE2E8E1E4E9E1E4E9E4E6ECE6E8EDE7E9EDE9EBEFEAECF0 +ECEEF1EEEFF3EFF0F3F0F1F4F1F2F5F3F4F6F4F5F7F5F6F8F6F7F9F7F8F9F8F9FAF9FAFB +F9F9FAFBFBFCFBFBFCFBFBFCFCFCFDFCFCFDFDFDFEFEFEFDFDFDFEFDFDFDFEFEFEFFFFFF +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFCFDFFFFFFD9D6E528176B12005C17046016025F +16025F16025F16025F16025F16025F16025F16025F16035F16025E17035F190660190560 +19066019056019066019056016035F16035F16035F16035F16035F16035F16035F16035F +16035F16035F16035F16035F16035F16035F16035F16035F16035F16035F16035F16035F +16035F16035F16035F16035F16035F16035F16035F16035F17035F190661190560190661 +190661190661190661190661190661190661190661190661190661190661190661190661 +19066119066119066119066019066118056016035F16035F16035F16035F16035E170561 +180662180662170561160460160460160460160460160461160461160561160561160561 +16056116056116056116056116046016035F16035F16035F16035F16035F16035F16035F +16035F16056118066219066219066216046016036016046016046016046016035F16025E +16025E160460160561160561160561160561160561160561170561170561180561190660 +1805611805611906601805611705611705611705611805621A0662190662190662140460 +13015D14015D16035F160460160460160460150460180562190662190662160460160460 +16046016046016046016046016046016046016046016046016035F180561190662190662 +190662190662190662190662190662190662190662190662190662190662190662180662 +18066218066218066217046016035F16035F16035F16035F17035F16035F180560190661 +190660190661190661190661190661190661190661190661190661190661190661190661 +19066119066119066119066119066019066118056017035F18045F18045F18045F18045F +18045F18045F18045F18045F18045F17035F17035F17035F17035F17035F17035F17035F +17035F17035F17035F17035F17035F18035F18045F18045F18045F18045F18045F18045F +18045F19066019056019056019056019066017046016035F16035F16035F16035F16035F +16035F16035F160360160361170561100061452C5EDDB159DFB358DCB156DCB154DBB156 +D9AF55E6CA90F0E0BFF1E1BFF3E5C9F2E4C9F3E5CAF1E3C7EFE2C3EEDDB9EBD6AFE9D4AA +DCBC7BCFA54DC89834CB9B3DCB9F44CDA34CCDA44ECDA453CDA554CCA452CCA558CCA457 +DABF88EBDCC0EADBBDE9DBBFE9DCC0E9DBBFEADCC0E8D9BBE7D8BBDEC9A1BA9140AE7D1E +AB7C1BAB7B1DAD7F23B28834B48D3DB38D3EB58D41B2893CB48E44BF9F60D7C39DDDCEAF +DECEB0DED0B3DFD1B4DED0B3DBCCAFDACBACD7C8A6D3C39EA17A308C600690650E906511 +916815946D1F96712598752A9C78349D7C399C7A38B39967C6B38ED5C7ABD3C5A8D4C7AC +D5C8AED6CAB0D7CBB3D7CAB2D2C4AACBBC9FCBBC9EA58B57785205795307775207785309 +805E1A856321896A2A8D6F338B6D30896B2E957943C1B292C8BB9FCFC4ACE5DED0E8E2D6 +E6E0D3E6E0D2E4DED0E1D9C9DED6C4DBD2BED5CAB3D7CDB6CDC1A5AB996CAB976BB19E76 +B3A37DB8A885B8A784B8A885B2A47F88713F725822846E3EB6A88CC4BAA3C3B8A1C5BBA5 +C7BDA7C7BDA9C5BBA6C4BAA4C0B59FBFB49DBCB0987F6B3E6B54206F57246E5725705A2B +715A2A6B53216A5423A09274A5987AA5977AA6997CAA9E83ADA187B3A790B8AF99BCB29D +BEB5A1BCB29EB7AC97B5AD957966413B21003B23007A6848A3967AAFA693DDE0E8D8DBE3 +DBDEE5DDE0E6DEE1E7E0E3E9E1E4E9E3E5EBE5E7ECE6E8EDE8EAEEE9EBEFEBEDF1EDEEF2 +EEEFF3F0F1F4F1F2F5F2F3F6F3F4F6F4F5F7F6F7F8F6F7F8F7F8F9F8FAFBF9F9FAFBFAFB +FAFAFBFBFBFCFBFBFCFCFCFDFDFDFEFEFEFDFDFDFEFDFDFDFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFCFCFDFFFFFFDAD7E52C1A6D16035F1B08621A07611A07611A0761 +1A07611A07611A07611A07611A07611907611A0761190661190661180661180561180561 +180661190661190661190761190661190761190761190761190761190761190761190761 +190761190761190761190761190761190761190761190761190761190761190761190761 +190761190761190761190761190661190761190661190661180661180560180560180560 +180560180560180560180560180560180560180560180560180560180560180560180560 +180560180561180560190661190761190761190761190761190761190661190560190560 +190660190661190661190661190661190661190660190660190660190660190660190660 +190660190660190661190661190661190661190661190661190661190661190661190660 +190660190660190660190660190661190661190661190661190661190661190661190661 +190660190660190660190660190660190660190660190660190660180561190661190661 +180561190660190660190660190660190660190660190660190660190661190661190661 +190661190661190661190661190661190660190660190660190661190661190661190661 +190661190661190661190661190661190661190660190660180560180560180560180560 +180560180560180560180560180560180560180560180560180560190560190560190560 +190560190661190761190661190661190661190661190661190661180560180561180560 +180560180560180560180560180560180560180560180560180560180560180560180560 +180560180560180561180560190661190661190661190661190661190661190661190661 +190661190661190661190661190661190661190661190661190661190661190661190661 +190661190661190661190661190661190661190661190661190661190661190661180561 +1806611806611806611805611906611A0761190661190761190761190661190661190661 +1906611906601B0760130161472E5FDDB158DEB256DCB055DCB053DBB157DCB460E8CE97 +F1E1C0F1E1C0F2E5C9F3E5CAF3E5CAF1E3C6EFE1C3EDDBB7EAD6ADE8D3A8D8B46BCA9B3B +C99936CB9D40CCA047CDA24DCDA34ECDA453CCA554CBA453CCA65ACDA75DDEC696EBDDC1 +EADBBDE9DBBFEADCC0E9DBBFE9DABEE7D8BAE6D7B9D9C294B78D38AC7C1DAB7B1BAC7D20 +AD8128B28937B38D3DB48D3FB48D41B1893CB89550C8AE79D8C6A1DDCEB0DECFB1DED0B3 +DFD1B5DED0B3DACBAEDACBACD4C29ECAB48999701F8D61098F640E906513926918956E21 +97722799752C9B79359C7B389F7E3FBEA87DCBBA98D4C6ABD2C5A9D5C7ACD6C9AFD7CAB1 +D7CBB3D6C9B1D1C3A8CABB9DC8B89997793E754C0078530878530979540A81601C866525 +896B2C8B6D3187692B8F743BA38B5DC4B597C9BCA2CCBFA6DAD1BEE1D9CAE6E0D3E6DFD2 +E4DED0E0D8C8DCD4C1D9D0BAD4CAB3D7CDB8C4B696A89465AC996EB2A17AB4A37FB7A784 +B8A884B6A683B7A885A39168846F3E99875FBBAF94C5BAA3C4B9A2C5BBA6C7BDA8C7BDA8 +C3B9A3C2B7A1BBB098BCB199AD9F82755F2E6C5421705828715929715A2C6F5928664F1B +715C2EA5977AA5987BA5987BA89C80AEA38AB1A68FB6AB95BBB19CBDB4A0BDB4A0B9B09B +B1A790A3967B67522D3A21003B2100796647A4987DAAA18AD8DADFD8DBE3DADDE4DCDFE6 +DDE0E7DFE2E8E0E3E9E2E4EAE4E6EBE5E7ECE8EAEEE9EBEFEAECF0ECEEF1EDEEF2EFF0F3 +F0F1F4F2F3F5F3F4F6F4F5F7F5F6F8F6F7F8F7F8F9F8F9FAF9F9FAFAFAFBFBFAFBFBFBFC +FBFBFCFCFCFDFDFDFEFDFDFDFDFDFEFEFEFDFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFCFCFDFFFFFFDAD7E52B196D15015E1A0761180560180560180560180560180560 +180560180560180560180560180560180560190660190560190660190560190661190661 +180560180560180560180560180560180560180560180560180560180560180560180560 +180560180560180560180560180560180560180560180560180560180560180560180560 +180560180560180560180560180560190661190661190560190561190561190561190561 +190561190561190561190561190561190561190561190561190561190561190561190560 +190661180560180560180560180560180560180560180661180661180661180561180560 +180560180560180560180560180560180560180560180560180560180561180661180661 +180560180560180560180560180560180560180560180560180560190661190661190661 +190661180560180560180560180560180560180560180560180560180560180560180560 +180560180560180560180560180560170560180560190661180560190661180661180560 +180560180560180560180560180560180560180560180560180560180560180560180560 +180560180560180560180661180661190661180560180560180560180560180560180560 +180560180560180560180560170560180561190661190561190561190561190561190561 +190561190561190561190561190561190561190561180561180661180561180661180561 +180560180560180560180560180560180560180560190661190560190561190561190561 +190561190561190561190561190561190561190561190561190561190561190561190561 +190560190661190661180560180560180560180560180560180560180560180560180560 +180560180560180560180560180560180560180560180560180560180560180560180560 +180560180560180560180560180560180560180560180560180560190661190560190660 +190560190661180560180560180560180560180560180560180560180560180560180560 +1A0660120061462E5EDCB057DEB155DBB154DBAF52DBB057DEB969EAD2A0F0E1C2F1E1C1 +F3E5C9F3E6CBF2E6CBF0E2C5F0E1C1ECDBB6E9D5ACE7D2A5D4AA5AC7932DC99A3ACB9D42 +CCA14ACDA34ECDA350CCA553CBA453CAA352CDA75CCFAB63E1CDA3EBDDC1E9DBBDE9DBC0 +EADCBFE9DBBFE8D9BCE6D7B9E4D4B3D2B883B58832AD7D1DAB7B1CAB7E22AD822AB38B3A +B48D3EB48D41B38C41B0893BBC9B5AD3BE94DAC8A6DDCEB1DECFB2DED0B3DFD1B5DECFB3 +DACAABDACBACCEBA93BEA36E9166128D630B8E640D906716926A1B956F2298742B99762F +9C7A389C7936A38447CBB794D1C0A2D3C5A9D3C5AAD5C7ADD5C9AFD7CBB1D7CCB3D5C9B0 +CFC2A6CABA9BC4B291886623714A0077520679540B7A560E83611E876728896A2B8A6B2F +83642599804CB5A27FC6B99BCABEA4CCC0A8CFC4ADD3C8B4E4DED0E6DFD2E3DCCDDFD7C6 +DAD1BED6CDB7D5CAB3D7CEB9B9A984A69161AE9B71B4A37EB5A581B7A784B5A682B5A783 +B6A783B8A986A79771AD9E7EC0B49BC5BAA3C4B9A3C6BCA7C8BEAAC6BCA7C1B59FBFB29B +B6AA90B9AD949A8A676B511D6D5523725A2B735B2C715A2B6D5725614A147B673CAA9D82 +A6987CA79A7EAA9F85B3A991B7AC96BAB09BBEB5A1BFB5A2BCB29EB8AF99ACA1898B7A5C +533E193B21003B2000776545A79B81A59A82D0D1D3D8DBE4D8DBE3DBDEE5DCDFE6DEE1E7 +DFE2E8E1E4E9E3E5EBE4E6ECE7E9EDE8EAEEEAECF0EBEDF0ECEEF1EEEFF3EFF0F3F1F2F5 +F3F4F6F3F4F6F5F6F8F5F6F9F6F7F9F7F8F9F8F9FAFAFAFBFBFBFCFBFBFCFCFCFDFCFCFD +FCFCFDFCFCFEFDFDFEFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFCFD +FFFFFFD8D5E428166B14015E190661180560180560180560180560180560180560180560 +180560180560180560180560190560190560190560190660180560180560180560180560 +180560180560180560180560180560180560180560180560180560180560180560180560 +180560180560180560180560180560180560180560180560180560180560180560180560 +180560180560180560180560190560190661190661190661190661190661190661190661 +190661190661190661190661190661190661190661190661190661190661190661190661 +180560180560180560180560180560180560180661180661180661180661180561180560 +180560180561180561180561180561180561180561180560180560180560180661180560 +18056018056018056018056018056018056018056017056018056117046016045F180560 +180560180560180560180560180560180560180560180560180560180560180560180560 +1805601705601905611E07631906611805601906611805601906611A0661180560180560 +180560180560180460180560180560180560180560180560180560180460180460180560 +18056017035F18045F170561170560180560180560180560180560180560180560180560 +1705601905611D0762190661180661190661190661190661190661190661190661190661 +190661190661190661190661190661180661180661180661180561180560180560180560 +180560180560180560180560180561190661190661190661190661190661190661190661 +190661190661190661190661190661190661190661190661190661190661190661190661 +180560180560180560180560180560180560180560180560180560180560180560180560 +180560180560180560180560180560180560180560180560180560180560180560180560 +180560180560180560180560180560180560180560180560190660190560190560190660 +180560180560180560180560180560180560180560180561180561180561190661120061 +432B5EDBAF55DEB155DBAF53DBAE51DAB057E0BC72EBD4A5F0E1C2F0E1C2F3E5CAF3E6CB +F2E5CAF0E2C5EFE1C2EBDAB4E9D4AAE6D0A1D0A650C59128CA9B3DCB9F45CCA24BCCA351 +CDA452CCA453CBA352CBA354CDA75DCFAD68E4D1ABEBDDC1EADBBEEADBC0E9DCC0E9DBBF +E8D8BBE6D7B9DFCCA6CEB075B2852DAA7B1AAA7A1BAB7D22AE822BB38B3AB38C3DB48D40 +B38C41B0883BC0A265D9C6A1DBCAA8DECFB1DECFB2DED0B4DFD1B5DDCEB3D9C9AADACBAD +C8B185B292548F650E8D630C8D630D916817946C1D956F2399742D9A77319C7B389A7835 +A88B51CEBD9DD1C2A4D2C4A8D3C5ABD4C8AED5C9B0D7CBB3D7CBB3D4C8AFCFC1A4CABC9D +BEAB86805C15744C0076510578540B7B5710846321886929886A2B86682A816221A18959 +BEAD8DC6B89CCBBFA6CDC2A9D1C6B0D2C6B2DAD1BEE4DECFE4DDCFDED7C5D8CFBAD6CCB5 +D6CCB5D3CAB3B2A179A99569B09E76B4A37FB6A582B6A783B5A682B5A683B5A683B4A582 +BDAF92C6BBA5C1B69EC4B9A3C5BAA5C6BCA7C8BEAAC5BBA6BFB49DBCB098B5A98FB5AA90 +8A784F69501C6F5726725A2B725B2C6F592867501E5D450F84724AAA9E83A6987CA99D82 +AEA288B6AB94BAB09BBDB4A0BEB6A2BEB5A1B8AE9AB5AA95A79B827866444E36133D2300 +3D23007A6949A69B81A2967DD4D6D9D6DAE3D8DBE2DADDE4DBDEE5DDE0E7DEE1E7E1E4E9 +E3E5EBE3E5EBE6E8EDE7E9EEE9EBEFEBEDF0EBEDF1EEEFF3EEEFF3F0F1F4F2F3F5F3F4F6 +F5F6F7F5F6F8F6F7F9F7F8F9F8F9FAF9FAFBFAFAFBFBFBFCFBFBFCFCFCFDFCFCFDFCFCFE +FDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFF2F2F6 +B9B3CEB4AECBB6B0CCB5AFCCB5AFCCB5AFCCB5AFCCB5AFCCB5AFCCB5AFCCB5AFCCB3ADCB +C0BAD28780B108006611096B0E06690B0367191271343083949BC39AA1C799A0C699A0C6 +99A0C699A0C699A0C699A0C699A0C699A0C699A0C699A0C699A0C699A0C699A0C699A0C6 +99A0C699A0C699A0C699A0C699A0C699A0C699A0C699A0C699A0C699A0C6979EC5A1AACC +7376AB0D03601006620C015F0C025F0C025F0C025F0C025F0C025F0C025F0C025F0C025F +0C025F0C025F0C025F0C025F0C025F0C025F0C025F0E0461040059322B7AA6AACC9EA2C6 +9FA3C79FA1C5A8B0D55E34543A00153C001D51132FA45F7AA05975A25873A25771A1526D +A04F6A9F4B669E47629E445F9C3E599C3A549A334D982C469F4C67A8738FA7708BA7708C +A7708CA7708CA7708CA56F8BAE76923A1C3802001A6518339F3F59A77591A76F8AA7708C +A7708CA7708CA7708CA7708CA7708CA7708CA7708CA7708CA7708CA7708CA66F8BAA748F +9A5F7E67183E290B5B1504621906601A066113015E4E2059AE768FA56E8AA97793AB829E +B1A0BDB4ABC8B4A9C6B4A9C6B4A9C6B4A9C6B4A8C5B2A3C0AA7E9AA76E8AA5718DAF5D78 +5E2D49290925AB6F8BA7718DA7708CA7708CA7708CA7708CA7708CA66F8BAB7490975E7A +5A112D18062304011E08021F08021F08021F08021F08021F08021F08021F08021F08021F +08021F08021F06021F35021F42021F400422390012735F859AA4D09297C08C96C28894C1 +8390BF8A97C23937820300580F04610C025F0C025F0C025F0C025F0C025F0C025F0C025F +0C025F0C025F0C025F0C025F0C025F0C025F0C025F0C025F0E036007005A2F307F6388C0 +4F76B54270B33A6CB2386BB2396CB23A6CB23C6DB24270B44773B46584BB748CBE7D91C0 +7C90C07E91C07E91C07E91C07E91C07D8FC07A8FBF7A8FBF6A87BC3F6FB33A6BB23A6CB2 +396BB2396BB2396BB13B6FB4345FA8110D6E0D04680E066911086A010064736792BCADB0 +AC9EA9AFA1A9AFA0A8AF9FA7AE9EA5A68B7AA07E60A07D5F9F7B599B7859AB8558DCB054 +DDB154DBAF53DAAE52DBB25AE5C78BECD8AEF0E1C1F1E2C2F2E5CAF2E6CBF2E5C9F0E1C3 +EEDFC0EBD8B1E9D3A9E2C995C99A3CC49028CB9D42CCA04ACCA34FCDA554CDA555CCA455 +CBA354CCA557CEAB64D4B579E8D9B9EADCC2EADCC0EADCC1E9DBC0E8DABDE7D8BAE5D5B6 +D2B680C39E58AD7F21A87817A97A1AAC7E24AF842EB2893AB28A3CB28B3FB28D41B18A3E +CBB280DDCEB0DCCCACDECFB2DFD0B3DED0B3DED0B4DDCEB1D7C7A8D8C9AAB79B629B7324 +8E630B8D630D8D630F936B1D956D21966F269A76309B77339C7B3A9C7C3BB59D6CD3C6A9 +D1C3A6D3C4A9D5C6ACD5C8AED7CAB2D8CCB4D6CAB2D3C6ACCCBEA0CABB9DA9905F744D00 +7750067650047B58107F5C18866625896A2B88692C826322826423B4A27DC9BBA0C8BB9F +CDC1A9CFC3ABD1C6B0D0C5AFCEC3ACD1C5B0D6CDB9DCD3C0D5CBB5D4CAB3D5CDB6C6BA9C +AB976BB09F76B3A27DB6A582B6A682B5A783B4A682B5A783B4A683B5A786D4CBB8E3DDD1 +D2C9B7C5BAA4C6BBA6C7BCA8C6BCA8C3B8A2BAAE96B6AA90AEA184A69778715A286A5320 +705A29725A2C715B2B6B55235B420C5F4612998A6AAB9E83A99C81B0A58CB3A890BAB09B +BFB6A3C0B7A5BFB7A3BBB29EAFA48DAC9F8795886B523B14442B06422900442C00807050 +A499809E9277D0D0CED5DAE3D6D9E1D8DBE3DADDE4DCDFE6DCDFE6DFE2E8E1E4E9E2E4EA +E5E6ECE5E7ECE7E9EEE9EBEFEAECF0EDEEF2EDEFF3EFF0F3F1F2F5F2F3F5F3F4F6F4F5F8 +F5F6F8F6F7F9F7F8F9F9F9FAF9F9FAFAFAFBFBFAFBFBFBFCFCFCFDFDFDFEFDFDFDFEFEFE +FDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFCFFFFFFBBBAD7 +0100690D0B7109066F04016B1B1A7A474B98D6EAF7DFF4FDDDF1FBDDF2FCDDF2FCDDF2FC +DDF2FCDDF2FCDDF2FCDDF2FCDDF2FCDDF2FCDDF2FCDDF2FCDDF2FCDDF2FCDDF2FCDDF2FC +DDF2FCDDF2FCDDF2FCDDF2FCDDF2FCDDF2FCDDF2FCDDF2FCDAEFFAEAFFFFA5B3D30B0663 +0B066305005E06005E06005E06005E06005E06005E06005E06005E06005E06005E06005E +06005E06005E06005E06005E06005E0903610000553E3E86EFFFFFE6F5FCE7F6FDE6F4FA +F4FFFF8450504C00004F00006F1917EA8981E8847EEB847DEA817AE87972E8756EE76E68 +E66963E4645DE25B53E15850DF5048DD453DE56A63F4AFA9F3A8A2F3A9A3F3A9A3F3A9A3 +F3A9A3F1A7A1FEB2AC562A250000009B2B26F4675FF2B0AAF3A7A1F3A9A3F3A9A3F3A9A3 +F3A9A3F3A9A3F3A9A3F3A9A3F3A9A3F3A9A3F3A9A3F3A9A3F2A8A2FAB0A9D98E8C5D0F16 +280A541505631906601A07610F005C5D2C51FFB3A9F0A5A0F6B5AFFAC8C3FEF5F1FFFFFE +FEFEFCFFFFFDFFFEFDFFFEFCFEFFFCFFFAF6F8C2BDF2A6A0EFA9A3FF9A93844D493F0C08 +FBA8A2F3AAA5F3A9A3F3A9A3F3A9A3F3A9A3F3A9A3F2A7A2FBB0AAD68D884C0C06110504 +000000000000000000000000000000000000000000000000000000000000000000000000 +0000004500005800005503044B0000A4919ADEF7FFD3E3F4C8E2F5C2DFF4BBDAF1C2DFF3 +494F9300005309036106005E06005E06005E06005E06005E06005E06005E06005E06005E +06005E06005E06005E06005E06005E06005E0702600000563D49918BCDF36DB1E256A8DF +4BA3DD49A1DC4AA1DC4BA2DC4EA3DD57A9DF5EACE18FC7EBA6D4F0B2DAF3B2D9F2B3DAF2 +B3DBF3B4DCF3B4DCF3B2D9F2AED8F1AED8F293C9EC54A7E04DA2DD4BA2DD4BA2DC4CA2DC +4BA1DC4EA6E0438FCF0E127707036D08066F0C0A70000066A39BADFFFFDBFAEED0FEF3D1 +FEF1CEFEF0CCFDEEC7F0CF83E8BD5EE8BC5DE5B954E5B954E3B654DDB154DCB154DBAF55 +DAAE52DBB35EE7CD95EDDAB1F1E1C2F1E2C3F2E5C9F1E6CBF2E5C9F0E1C3EFDEBFEAD7B0 +E8D4AAE0C58DC79635C4912CCB9D44CCA14CCDA350CEA656CEA758CBA658CAA456CCA65A +CFAC67D7B97FEADBBEEADCC1E9DCC0EADCC1E9DBC0E8DABDE7D8BBE5D4B5CCAD6FBE984B +AB7C1CA87817A9791BAD8029B08530B28A3AB38B3CB28B3FB18B42B28B41D0B98BDDCEAE +DDCCADDFD0B4DFD1B5DED0B3DDCFB4DCCDAFD7C8A7D8C8A9AE90519268128E630D8D630E +8E6510936C1E956E239671289A76309A77339C7B3AA18144BBA579D5C7ABD1C3A6D3C5AA +D5C6ACD5C8AED7CBB3D8CDB5D5C9B0D2C5ABCBBC9ECAB99B9E814A734B00775105775105 +7E5A14815F1B866727896A2B88692B81612086682BBCAC8CC8BCA1C9BCA1CEC2AACFC3AC +D0C6AFD0C6B0CFC4ADC6B9A0C9BDA4D9CFBBD6CCB7D5CBB4D4CAB3C0B291AA966BB3A17A +B4A37EB7A783B7A782B5A682B4A782B5A783B4A682B8AA8AD8D0BFE1DACDDED7C8C7BDA8 +C3B8A3C7BDA8C6BAA5C2B6A0B8AC93B5A98EA99C7D9A8A676A521E6E5725715A29715A2D +705B2C695320553C04624B18A19377AA9E84AB9F84B3A891B5AB94BCB39EC0B7A4C0B7A5 +BFB5A3BAB09CAB9F87A79A808C7D5F452E05412802442C00493300857554A4997F9E9176 +CBCAC7D5DAE3D5D9E0D8DBE3D9DCE4DBDEE5DCDFE6DEE1E7E0E3E9E1E4E9E4E6EBE5E7EC +E6E8EDE9EBEFEAECF0ECEEF1EDEEF2EFF0F3F0F1F4F1F2F5F3F4F7F5F6F7F5F6F8F6F7F8 +F7F8F9F8F9FAF8FAFBF9FAFBFBFAFBFBFBFCFCFCFDFDFDFEFDFDFDFEFEFEFEFEFEFDFDFD +FDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFCFDFCFCFDFCFCFDFCFCFD +FCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDF9F9FBFFFFFFB9B8D50100680E0B71 +09066E05016B1B1A7A474A96CDDFF0D6E8F5D4E6F4D4E6F4D4E6F4D4E6F4D4E6F4D4E6F4 +D4E6F4D4E6F4D4E6F4D4E6F4D4E6F4D4E6F4D4E6F4D4E6F4D4E6F4D4E6F4D4E6F4D4E6F4 +D4E6F4D4E6F4D4E6F4D4E6F4D4E6F4D4E6F4D1E4F2DFF3FDA2AED01A156D0D076306005E +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F090260000057383581DFEDF7DDEBF6DDEBF6DBE8F3E8FDFF86585D +4B00004D0000691516D47573DC7977E17A78DF7775DE716FDD6D6BDC6563DB605DDA5D5A +D7524ED74E4BD54845D4413ED54845E59290E9A3A2E8A09FE9A1A0E9A1A0E9A1A0E79F9E +F0A9A7743130150000964645F0807EE6A4A3E8A09FE9A1A0E9A1A0E9A1A0E9A1A0E9A1A0 +E9A1A0E9A1A0E9A1A0E9A1A0E9A1A0E9A1A0E7A09FF0A4A2AC484A1E03141D0753180564 +1906601A0661110463370A33E07670E9A6A6EAA9A8EEB9B9F7E5E5FBF6F7FAF4F5FAF4F5 +FAF4F5FAF4F5FAF1F2F8E9E9EDB5B4E89F9EE49F9EFDA5A47F56565E1211F5A2A1E7A2A1 +E8A1A0E9A1A0E9A1A0E9A1A0E9A1A0E6A09FF1A4A3A2403E000000040102000000000000 +000000000000000000000000000000000000000000000000000000000000010000440000 +5400015202034C0000A191A0D3E9FFCAD8ECC0D7EEBAD4EDB2CEE9AEC6E342468D000054 +0A036107005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F080160000058414E9584C3EB69AADC53A0D9499BD74398D5 +489AD6499AD7499BD655A1D95DA6DB8EC1E5A0CAE9AACFECAACEEBABCFEBACD1ECADD1EC +ADD1ECAACFEBA5CDEAA7CEEB89BDE4519FD94C9CD84B9BD7499AD6499AD64899D64A9FDA +4188CA0E127708036C09066E0D096F0000669D94AAFFFAD5F0E3CBF4E7CCF3E6C9F3E5C7 +F1E0BCE4C178DEB45CDDB35ADBAF54DBAF55DBB056DCB156DBB156DAB056D9AD50DBB461 +EAD3A4EEDCB6F1E2C3F1E3C5F2E5CAF2E5CAF1E4C8EFE1C2EEDEBDE9D6AEE7D4A9DCBE7F +C69531C59532CB9E46CCA14CCCA350CDA657CDA659CCA659CCA557CCA75CD2B273DBC18F +EADDC0E9DCC0E9DCC0EADCC0E9DBC0E7D9BBE7D9BCE0CEA8C39F58B9903EAA7A1BA67615 +A8791BAD822AAF8531B28A3BB28A3FB28C41B18B3FB6924CD5C19ADCCCADDCCDAEDFD0B4 +DFD1B6DED1B5DDCFB3DBCBAED6C6A5D2C09CA27E378D61098E630E8E6411906716936C20 +936D2297722A9A77329A78349D7D3CAD935CC3B089D4C6ABD1C3A7D4C6ADD4C8AED5C9B0 +D7CCB3D8CCB5D4C8AED1C3A7C8B898B9A57D8E6E2F734C0077510678540A815E1A846220 +87672989692B85672886682B957B46C4B699C8BBA0CABDA3CEC2ABCFC4ADD0C5AFCFC4AE +CCC1AAC6BA9FC2B498C3B599D1C7AFD3C9B2C7BB9DB6A57EAC986EB3A17DB5A380B6A784 +B5A783B5A682B4A582B5A683B3A481C0B397DCD6C6DFD9CAE0DACDD4CDBCCBC2AEC6BCA7 +C4BAA4BFB49CB4A78DB4A88E9B8A677F693D654C176F5827705A29715A2A705A29654E1B +593E08715B2DAA9E83ACA086AEA38AB6AB95B8AE98BEB5A2C2BAA7C0B7A4BCB39EB7AD98 +A89C84A69B807B6A4A3D24004027004A3103523B0A8E7F60A2977D9E9176CDCCCAD4D8E2 +D4D8E0D7DAE2D8DBE3DADDE4DBDEE5DDE0E7DFE2E8E0E3E8E3E5EBE4E6EBE5E7ECE8EAEE +E9EBEFEBEDF0ECEEF1EEEFF3EFF0F3F0F1F4F3F4F6F4F5F6F4F5F7F6F7F9F6F7F8F8F9FA +F8FAFBF9FAFBFAFAFBFBFBFCFCFCFDFCFCFDFCFCFDFDFDFEFDFDFDFEFEFDFEFEFEFEFEFE +FFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFCFFFFFFBBBAD60100680E0B7109066E05016B +1A1979454896CFE1F1D7EBF7D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D3E6F4E0F5FDA6B3D32521740E086405005E07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F09026000005734317EDBE9F5E0EEF8DFEDF7DDEAF5E9FEFF8D64684C00004D0000 +681313CB6A68DC7875E37B78E17673DF6D6ADD6865DC625FDB605CDB5B57D9514DD74B47 +D64440D43D39D43A36E48481ECABA9EAA19EEAA2A0EAA2A0EBA3A1E9A19FEFAAA8933937 +2B0000995A58F79693E8A3A1EAA2A0EBA3A1EBA3A1EBA3A1EBA3A1EBA3A1EBA3A1EBA3A1 +EBA3A1EAA2A0EBA3A1EAA2A0E9A3A2F4ACA984282A1602121C07521805641906601A0660 +160866200025BE635DF5B4B3E8A6A4EEB2B0F8E0E0FDFAFAFCF6F6FCF6F6FCF6F6FDF7F7 +FCF3F3F9E4E4EDAFAEEAA19FE6A09EFFB2AF7E5E5D7E1512FCA4A2E8A3A1EAA2A0EBA3A1 +EAA2A0EBA3A1EAA2A0E9A4A2F6ADAB702422000000020101000000000000000000000000 +000000000000000000000000000000000000000000000000040000460000550000510001 +4F0000A698A8D3EAFFCBDAEDC2D8EFBBD5EEB2CFE9A4BCDC3E428A00005509036107005E +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F08016001005847569A85C5EC6CADDD53A2DA489CD84198D6499CD84A9CD8 +489BD755A2DA60A8DD92C3E7A3CCEAACD1EDABD0ECACD1ECAED3EDAFD4EEAED3EDABD1ED +A6CEECA6CFEB86BDE451A0D94FA0DA4D9ED9499BD74A9CD8489AD749A0DB4089CB0E1276 +08036C09066E0D0A6F0000669E96AAFFFCD6F2E5CCF5EACDF5E7CAF4E6C6F1E0B7E4C073 +DFB55CDFB359DCB054DDB154DDB057DCB057DBB056DAB057D8AD4FDCB563ECD9B0EEDEB9 +F1E3C4F1E3C6F2E5CAF2E4C9F1E4C8EFE0C1EDDCBBE9D6ADE7D3AADAB774C5942EC79838 +CC9F49CDA14DCCA453CDA657CCA658CCA558CCA557CCA75DD5B87EDFC99DEBDDC2E9DCBE +E9DCC0EADCC0E9DBBFE6D8BAE7DABEDBC79EBD9649B58935A87817A67513A8791CAC822C +AE8531B18B3CB28A40B28C44AF8A3FBA9957D9C8A5DCCCABDDCDAFDFD1B4DFD2B5DED1B5 +DDCFB3DACBADD5C4A2CCB88F9871218A5E058E640F8F661492691A946D22936E2298742D +9B78349A78359E7F3FB9A374C9B995D3C6AAD2C4A9D5C7AED4C8AED6CAB1D8CDB5D8CCB5 +D3C6ADCFC2A5C6B595A88E5D835F1A734C007650057B570F82611F84652487682A886A2C +8364258D7139A48D60C8BBA0C7B99ECBBEA6CFC3ACD0C4AFD0C5AFCFC4AECBC0A8C4B79D +BFB093B2A17FC3B498D0C5ADBDAF8AAD9B6FAC9B70B3A27FB5A480B6A783B5A782B4A683 +B5A482B4A684B4A583C8BCA4E0D9CCDED8CAE0DACDDFDACDD9D3C4C4BAA4C1B6A0BDB199 +B0A489B3A68C8B7850664C18644B156E5828705929705A296E5826634A165F4613806D45 +B1A58CACA186B1A68EB8AF98BBB19CC1B7A4C2BAA7BFB6A3B9AF9AB3A993A5997FA59A7F +6C59363A1E003F26004E38075B4516948668A2957D9E9277CECDCCD3D8E1D4D8DFD6DAE2 +D7DAE2D9DCE4DADDE4DCDFE6DEE1E7DFE2E8E2E4EAE3E4EBE4E6ECE7E9EDE8EAEEEAECF0 +EBEDF1EDEFF2EFF0F3F0F1F4F2F3F6F4F5F6F4F5F7F5F6F9F6F7F8F8F9FAF9FAFBF9FAFB +F9F9FAFAFAFBFCFCFDFBFBFCFCFCFDFCFCFEFDFDFDFEFEFDFEFEFEFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFBFBFCFFFFFFBBBAD60100690E0B7109066E05026B191778404493 +CFE1F1D7EBF7D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D3E6F4DFF4FDAAB8D634337F0F096505005D07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F090260 +0000582E2B7BD5E2F0E2F0F9DEECF7DDEAF5E9FDFF9570744D00004E0000661211BF5F5D +D97370E27774E07370DE6A67DD6663DC5F5CDB5B57DA5652D84E4AD74A46D5413DD53E3A +D2322EDB5C59E68885EBA3A2EAA3A1EBA3A1EBA2A0E9A19FECA9A7B53E3A430100986766 +FBA3A1E7A19FEAA2A0EBA3A1EBA3A1EBA3A1EBA3A1EBA3A1EBA3A1EBA3A1EBA3A1EBA3A1 +EAA19FECA9A7E78D8BD74D484B171A1A05161B06521805641906601906601B07640C012B +812A24E55B58ECA7A5EBA9A7F3CBC9FCF3F3FDF7F7FDF9F9FDF8F8FCF6F6F8DEDEF3CBCA +EBA7A5EAA2A0E6A09EFFA9A77C5453873735FDA9A7E8A2A0EAA2A0EBA3A1EBA3A1EAA19F +EDAAA8E78987D2413D2E0F0E000000010000000000000000000000000000000000000000 +000000000000000000000000000000000000070000480000540000510000530202AAA0B0 +D2E8FECBD9EEC3D9EFBCD6EEB1CFEA97ACD2393C8600005609026007005F07005E07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07015F02005A4D5EA082C3EB6AADDE51A0D9469AD74298D6489CD7479BD8499CD855A2DA +60A8DD94C4E8A4CDEBACD1EDAAD0ECACD1EDAED3EDAFD4EEAED3EDABD1EDA6CEEBA8CFEC +83BBE44F9FD94F9FD94D9ED9499BD84A9CD7489AD7499FDB3F88CA0D107508046C09066E +0D0A6F0000669E95AAFFFCD6F2E5CCF5E9CDF5E8CAF4E5C6F1DDB3E4BE6EDFB55CDEB359 +DDB155DCB155DCB156DBB157DBB056DAAF57D8AB4FDDB96CEDDCB5EEDEBAF1E2C4F1E4C7 +F2E5CAF1E4C9F1E4C9EEDFC0EDDBB9E9D4ABE8D3A9D5B268C4932FC89A3CCBA049CBA24E +CCA452CCA556CBA557CAA355CAA356CCA75FD9BF89E2CFA7EADDC2E9DBBFEADCC0E9DBBF +E8DABEE6D8BAE8DABED7BF8FB89140B28731A87717A57514A97B1FAD832FAE8532B1893C +B18B40B28D44AE893BBEA164DBCBABDCCBACDDCEB0DFD1B5DFD1B6DED0B4DCCEB2DACBAD +D1BF9BC3AB7D946A188C60098E620E906718926A1D946E24946F2598752E9B78359A7734 +A28447C4B18BCEBE9FD3C5ABD3C5ABD5C9AFD5C9B0D6CBB2D8CDB5D7CCB4D2C4AACEC0A4 +C1AF8C9274377D5911744E017650057D591484642386662687682B886A2C816223987E4B +B2A079C8BCA1C8BBA1CCBFA7CFC4ADD0C4AECFC4AECFC4ADC9BDA4C1B599BCAE8FB1A17F +B6A687B8A988AD9A70AC996DB09E76B3A37FB5A581B5A783B5A782B5A683B4A482B5A784 +B8A98ACFC4B0E0DACDDED8CBE0DACDE0DACDE0DACECDC4B2BFB49CB9AD93B1A488B0A388 +7B6537593F05654D196E57256E57256D56256C55245F46126E5A2C8F7F5CB1A58CAEA389 +B3A991BAB19BBDB39EC1B9A6C1B8A5BDB4A0B6AD96B2A790A2967C9C90745B45213B2000 +422800503A095E4A1C95886BA0937B9E9277CFCFCED2D7E1D3D7DFD5D9E1D6DAE2D8DBE3 +D9DCE4DBDEE5DEE1E7DEE1E7E1E4E9E2E5EAE4E6ECE6E8EDE7E9EEEAECEFEAECF0EDEEF2 +EEEFF3EFF0F4F2F3F5F3F4F6F4F5F7F5F6F8F6F7F8F8F9FAF8F9FAF9F9FAFAF9FAFAFAFB +FBFBFCFCFCFDFCFCFDFDFDFEFDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFBFBFCFFFFFFBBBAD703006A0E0B7109066E06036C15137636388CCADCEED8EBF7 +D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D4E7F4DDF1FBB3C1DC555898120D6704005D07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F08026000005A221E72 +C5D1E5E5F3FBDEECF6DEEBF6E7FAFFA68D934F00004E0000620D0DA14341D36A67E37370 +DE6B68DD6460DC5F5CDA5955D95450D8504CD74743D6433FD43C38D43935D0312DCC332F +D03F3BE58986EAA4A2EAA19FEAA2A0EAA19FE8A6A5EE5E5A6D1715936B6AFEACA9E7A09F +EAA2A0EBA3A1EBA3A1EBA3A1EBA3A1EBA3A1EBA3A1EAA2A0EBA3A1EAA2A0E8A19FEFA19F +A54542470805270A0E1C07171A06511805641906601805601A06640E042E1F05004B0C0B +D0716FEBA2A0EAA6A4F1C0BFF3CAC9F6D6D5F4D2D0F3CAC8EDAFADEBA7A5EAA2A0EAA2A0 +E9A3A1F08987A44442B87270F6AEACE8A09EEAA2A0EBA3A1EAA2A0E8A19FF0A09E963E3C +270000070202000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000F00004C00005401014F00005B1012B3B3C4CFE3F9CADAEE +C3D9EFBDD6EFB0CCE97B8BBB2F2F7E00005708026007005F07005E07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F05005C +5C72AD7BBDE865AADD4E9ED94399D74499D7489BD8479BD74A9CD850A0D95CA7DC96C6E9 +A6CEECACD1EDACD1ECADD2EDAED3EEAFD4EEAED3EDABD1EDA7CFECA2CCEB7AB6E24C9ED9 +4E9ED94D9ED9499BD84A9CD7489AD749A1DB3D83C60B0C7208046D09066E0D096F000067 +9F96ABFFFBD6F1E4CBF6E8CCF5E8CAF3E3C0EED7A6E2BB68DFB55DDEB45ADDB256DCB157 +DBB156DAB056DAAF56DAAE57D7AB50E2C17FEFDEBCEFDFBDF1E3C6F1E4C8F2E5CBF2E5C9 +F1E4C9EEDEBEECDBB8E7D3A8E5CE9FCFA653C59636C99C42CBA14CCBA351CCA454CAA456 +C9A354C9A253CBA357CDAA64DFCA9FE7D8B7EADDC1E9DBC0EADBC0E9DBBFE8DABFE6D7BA +E1D0ABCDAF75B48A36B0852DA77717A77718AA7D24AE8431AE8433B1893DB18C42B28E45 +B18C44C9B07FDDCEB0DCCCAEDDCFB2DFD1B6DED1B6DCCEB2DACBAEDACBADC3AB7CAC8C4C +8E630E8D630E8C620E916A1C936D219671279671299976319A7A37987734AD935ED2C4A7 +D2C4A8D3C6ACD4C7ADD6CAB1D7CAB3D7CCB4D6CCB4D5C9B0CEC0A4CDBEA2B0986B754F03 +7651057550047752097F5D1985662687672987692B86682B826325AF9B73C6B99CC8BCA1 +CABEA5CEC2AACFC4AECEC3ADCDC2ABCCC1A9C5B89EBBAD8FB6A686AF9F7CB1A1808F7748 +6C4D0E89703BB4A37EB5A682B5A683B5A783B4A682B5A683B4A583B9AB8BCABFA8D9D2C1 +E1DBCEE0DACDE0DBCEE0DACEE1DBCFDBD5C6D2CBB9B8AB92AB9E819F906F614812594006 +66501C6B54226B5422685220664F1D5D451091825FA79B7EAFA48CB2A890B7AD96BEB5A1 +C0B7A4C0B7A5BDB4A0B8AF9AB0A68EAEA38B9A8D7175624148300D3F2600452D00574211 +7261399F93789F947A9E9378D0D1D2D0D5DFD2D6DED4D8E0D5D9E1D7DAE2D8DBE3DADDE4 +DDE0E6DDE0E7DFE2E8E0E3E9E3E5EBE5E7ECE6E8ECE9EBEFE9EBEFECEEF1EDEEF2EEEFF3 +F1F2F4F2F3F5F3F4F6F4F5F7F5F6F8F7F8F9F7F8F9F8F9FAF9FAFBF9F9FAFBFBFCFCFCFD +FCFCFDFDFDFEFDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFC +FFFFFFBCBBD704016B0E0B7109066E06036C141175323289C7D9EDD8ECF7D5E8F5D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D4E7F4DDF0FB +B6C6DF6469A3130E6804005C07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F08016001005B1C186EBECAE1E6F5FC +DDEBF6DEEBF6E6F9FFAD999F5000004E0000600B0B953836D16663E37471DD6966DD635F +DB5E5ADA5955DA524ED84E4AD64541D5413DD43B37D33834D0322EC52E2AC22824E06D69 +EDA4A2EAA4A2EAA19FEAA19FE7A4A2F77E7B74302E916160FDA6A4E7A19FEAA2A0EBA3A1 +EBA3A1EBA3A1EBA3A1EBA3A1EAA2A0EBA3A1EAA19FE9A2A0ECACAAF19492721816130504 +23090C1D081719065118056419066018056019066315052F090401080000AA4543F79996 +EAA4A2EAA9A7EDACAAEEB5B3EEB3B0EDAEACEBA4A2EAA3A1EBA3A1EAA2A0EAA5A3E77875 +BA3B38CC7774F2ADABE9A19FEBA3A1EAA19FE9A3A1EEACABF0928F561210000000030000 +000000000000000000000000000000000000000000000000000000000000000000000000 +0000000000001300004E00005301014E00005E1719B7BACCCEE1F7CADAEEC3D9EFBDD6EE +B0CCE86E7DB02A2A7A00005808025F07005F07005E07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F06005F06005D637BB478BBE7 +63A8DC4C9ED94298D74499D7489BD8479BD74A9CD84F9FD95BA6DB96C6E8A6CEECABD1ED +ACD1ECADD2EDAED3EEAFD4EEAED3EDACD1EDA8D0EC9CC9EA77B4E14C9DD94D9ED94B9CD8 +499BD74A9CD8489AD74AA1DB3C80C40B0A7108056D09066E0C096F0000679F96ABFFFBD6 +F1E4CBF6E8CCF5E7CBF2E1BCEDD5A0E1BB68DFB55DDEB45ADDB256DCB157DBB057DAB057 +DBB056D9AF58D7AC51E3C587F1DFBFF0DFBEF0E4C6F1E4C9F2E5CBF2E5C9F1E4C8EDDDBD +EBDBB8E7D3A7E4CB9ACCA04AC69738C99D44CAA14DCBA351CBA555CAA456C9A353CAA354 +CBA457CDAB67E2CEA9E9DBBEEADCC1EADCC1E9DCC1E9DBBFE8DABEE5D6B9DDC8A0CAA96D +B38936AF842CA77617A7781BAB7F26AD842FAF8533B18A3EB28D41B28E45B4904DCDB689 +DDCEB1DCCDAFDED0B4DFD1B6DED0B5DCCDB1DACAAEDACAADBCA26EA380398D620D8C620D +8C620E906A1C936D2196712896722A9976329B7B39987734B39A69D5C7ACD3C5A9D3C6AC +D5C8AED7CAB2D6CAB2D7CCB4D6CBB3D4C8AFCDBEA1CDBEA2A58B59714900755004755005 +78540C7F5E1B85662686682987692B866629846628B7A581CABDA2C9BCA2CBBFA6CEC2AA +CFC4AECEC3ADCCC1A9CABFA7C3B69BB9A98AB5A482B09F7DAD9D7A846A35573500705319 +B1A17ABAAB88B6A683B4A682B4A682B5A683B4A684BBAE90D3CBB7DCD5C6E1DBCDE0DACD +E1DBCFE1DBCFE0DACDDDD7C9DDD6C7BCB199A698799484605C420A60491166501C695322 +69532266501E624A175F47149E9071ADA187AFA48CB4AA93B8AE98BFB6A2C0B8A4BFB6A4 +BCB29EB6AC97AEA38BADA28A96886B604A27462E09422A00472F005944157D6E49A4997F +A0967B9F9379D1D3D6CFD4DED2D5DED4D8E0D5D9E1D6DAE2D8DAE3D9DCE4DCDFE6DDE0E6 +DFE2E8E0E3E9E3E5EBE4E6EBE5E7ECE8EAEEE9EBEFEBEDF1EDEEF2EEEFF3F0F1F5F1F2F6 +F2F3F6F3F4F6F5F6F8F7F8F9F7F8F9F8F9FAF8FAFBF9F9FAFBFBFCFBFBFCFCFCFDFDFDFE +FDFDFEFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFDFFFFFFBCBCD8 +07056D0E0C7108066E07046C100E73272882C2D2E8D9ECF8D5E8F5D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D4E7F5DAEEF9C0D1E68993BD +16116A03005C07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F08015F05005D0F0964AEB8D5EAF9FFDDEAF6DEECF7 +E5F6FFBCB1B85301014F00005C08087D2423CD615EE36E6ADD6663DC5F5BDB5B57DA5753 +D8504CD74A46D5413DD43D39D33733D2312CCD302CC32E2ABE2B27C23935D14D49E78A88 +ECA9A7EBA5A4E79F9DF8AAA8A25D5BAA504EF29390E9A4A2EAA2A0EBA3A1EBA3A1EBA3A1 +EAA2A0EBA3A1EAA2A0EAA09EEBA7A6EC9D9AE47C799D3B38290706280A0820080C1C0716 +19065118056419066018056019066413042E0E0300060102350E0D79201ED97A78F2ADAB +E9ADABEAA4A2EBA6A4EBA5A3EBA3A1EBA3A1EAA3A1EAA19FECA8A6DA5450D33F3BE58F8D +ECA7A5EAA19FE9A09EEAA9A7EC9B99DE7875863532010000010101000000000000000000 +000000000000000000000000000000000000000000000000000000000000010000000000 +1A00005200005302024D0000652427C0C9DECBDDF3CADAEFC5D9EFBFD7EFB0CBE8505798 +1E1B7002005908015F07005F07005E07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F05005E09015F7493C476B9E565AADD4D9FD9 +449AD74499D7479AD7469BD8499CD8509FD95DA7DB99C8E9A7CFECAAD1EDACD1ECADD2ED +AED3EDAFD4EEAED3EDACD1EDA6CEEC97C6E970B1E04B9DD94D9ED94A9CD8499BD7499CD8 +479AD74AA1DB3A7AC009076F08056D09066E0C096F000067A198ABFFFBD6F2E5CCF5E8CB +F5E8CBF0DDB4EBD097E1BA66DEB65FDEB45BDDB156DCB157DAB057DBAF56DAAF57D9AF56 +D7AC52E6CB93F0E1C1EFE0C0F0E3C7F1E4C9F2E5CBF1E5CBF0E4C9EDDDBCECDBB8E5D0A3 +DDC086CA9C42C79A3DC99E46CAA14DCAA251CCA557CBA558C9A354CAA356CAA459D0B070 +E6D4B2EADCC0E9DCC2E9DCC2EADDC3E8DBC0E8DABFE5D5B7D2B886C3A05DB28631AE8128 +A67718A97C23AC812BAD8430AE8636B18B40B28D42B28E47BFA368D2BE96DDCFB1DDCFB1 +DED0B4DED1B6DDD0B5DBCCB1DACBAED8C9A9AE8F52956D1E8C620C8B610C8C6412916B1E +926D2197732B98752F9976339A7736997836BDA97ED5C8AED3C5A9D4C6ADD5C8AED6C9B1 +D7CBB4D6CAB3D5C8B0D2C5ACC9B99AC4B594927437714900744F027652077A5711805F1C +84652585672887682B83632590733CC3B395C9BCA2CABDA4CCC0A8CEC3ACCFC3AECEC3AD +CABFA7C8BCA3BFB195B4A482B2A27FB09F7D92794C72561A6545046B4D0F8E7746B3A380 +B6A784B5A783B4A582B5A685B5A686C3B89EDDD6C7DED8CAE0DACDDFD9CDE1DBCEE0DACD +DFD9CBDBD4C5D8D1C1D0C8B5968460725B2B5F4610664F1B68511F68522067501F624917 +5A400B6C5627AA9E83AFA48AB2A88FB8AD98BBB19DC0B7A4C0B7A4BDB4A0B8AE99B3A992 +ABA087ADA189867656472F05462D03493101483200614D218F8263A89E86A3987F9F937A +CCCDD0D0D4DFD1D4DDD3D7DFD3D7DFD5D9E1D7DAE2D9DCE3DBDEE5DCDFE6DEE1E7DFE2E8 +E1E4E9E4E6EBE5E7ECE7E9EEE8EAEEEBEDF0EDEFF1EDEFF2F0F1F4F1F2F5F2F3F6F4F5F6 +F4F5F7F6F7F9F7F8F8F7F8F9F8FAFBF9F9FAFAFAFBFBFBFCFCFCFDFCFCFDFCFCFDFDFDFE +FEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFDFFFFFFBFBED9110E730F0C72 +08056D08056D0B086F181778B9C9E3DAEDF8D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D8EBF7CBDDEEB2C1DB1A166D02005B +07015F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F08015F01005B959CC4ECFBFFDCEAF5DFEDF7E2F2FDD2D7E0 +5506074F0000560303580403BD504EE36966DB615DDB5A56DA5652D84E4AD74945D74642 +D43C38D43732D0322DCC302CC92F2BBE2C28BA2C28B02824A9231FC0332FE3706DE78D8B +E9A5A3EDABA9D77471CB3632E06B68ECA8A6EAA19FEAA2A0EAA2A0EAA19FEAA09EE89F9D +E8A19FEBADABEE8F8CA83E3B560B092E08072108082309071F080B190615190651180564 +19066018056019066412042E0B02000B0203040101000000430F0ECD5450EC7470E9AAA8 +E69F9DE89F9DEAA09EEAA09EEAA2A0EAA19FECA9A7D84E4ADE6461EBAAA8E79D9BE7A2A0 +ECAEACF189869433302701000D0100000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000010000000000280000560000 +5202034A00006F373DCDE2F9C8D8EDCADBF0C5D9F0BFD8F0A9C4E32C2C7B110C6504005C +07005E07005E07005F07005E07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F05005E0D066386ABD574B6E366ABDD4F9FD9479BD74399D6 +469BD7479BD8499CD852A0D962A9DDA0CBEAAAD1ECAAD0ECACD1ECACD1ECAED3EDAFD4EE +AED3EDABD1EDA5CEEB8FC2E768ADDF499CD84C9DD84A9CD8499BD74A9CD8489BD749A1DC +3671BA07026B09066E09066E0B086F000068A59CADFFFAD6F2E5CCF5E8CBF5E8CCEED7A7 +E7C987DFB863DEB35CDDB259DBB056DBB157DAAF57DAAE56D9AF57D8AD53D9AF59E9D1A2 +EFE0C0EFE0C1F1E4C8F1E4CAF1E4CAF0E5CAF0E2C6EBDBB8EBD9B6E1C996D2AE62C89A3D +C89B42C99D45CA9F4CCBA150CBA556CAA356C8A152C9A459C9A55BD5B87FE9DABCEADCC0 +E9DCC1E9DDC2EADCC3E8DBC0E9DCC1E0CFACC5A565BB964BAF822AAB7C20A7781BAB7F29 +AC822DAD8434AF8739B18B41B08A40B5924DD0BB8FD7C6A2DDCEB1DECEB2DED0B6DED1B6 +DDD0B5DACBAEDACBADD0BE999D772D8C610B8C610C8B600B8D6514926C21936E2497732D +987531997635987633A18245CBBB9AD4C7ACD3C5A9D4C7AED5C8AFD7CAB2D7CBB4D5C9B1 +D2C5ABD0C3A8C2B190AA9263805C16724B00744E0377530A7D5B1681601D836423846525 +856629806023A28B5ECBBEA4C8BAA0CCC0A7CDC1A9CEC3ACCDC2ACCCC1AAC7BBA2C5B89E +BAAC8EB0A07DB3A382A6936D6B4C0F6749096D501470551A775C25826A379C885CB7A986 +B4A582B7A888BAAB8DD1C8B3E2DCCFE0D9CCE0DACEE0DACEE0DACEDED8CADCD6C8D6CFBE +D1CAB7D5CCBA9C8B65735C2A664F1B6A5422695220634D1860491559400A52390185744D +B4AA92B1A68EB7AD97BCB29EBEB5A1C0B7A4BFB6A3B8AF9AB2A891AEA38CA99C83AB9F86 +6B58323F23004830014D37054A3301705E37A89D86AAA089A0947B9F947CC1C2C3D0D4E0 +CFD3DCD2D6DED3D7DFD5D9E1D6DAE2D7DAE2D9DCE4DADDE4DDE0E7DEE1E7E0E3E9E2E5EA +E4E5EBE6E8EDE7E9EEE9EBEFECEEF1EDEEF2EFF0F4F0F1F4F1F2F5F3F4F6F3F4F6F5F6F8 +F7F8F8F7F8F9F9FAFBF9F9FAFAFAFBFBFBFCFBFBFCFBFBFCFCFCFDFDFDFEFEFEFEFDFDFD +FEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFDFFFFFFC0BFDA161375100D7208056D09066D +09066E121074B7C7E1DAEEF9D5E7F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D7EAF7CFE1F1C1D2E618166B01005B07015F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F0902600000578A90BCECFBFFDDEAF6DFEDF8E2F1FCD9E2EB580B0B500000 +5401014D0000B24745E26764DB605CDA5854D95450D74D49D64642D64440D43A36D43632 +CF312CCA2F2BC72E2ABD2C28B92B27B02925A92A26AB231FCC413ED66461EF9694F1B1AF +EA918FD63A36DC5E5BECADABE9A09EEAA3A1EBA5A3EBA7A5EEACAAF4B0AEF5A09EE99391 +D563606A110E220B0B2A0B0A2609082208061E070B190716190651180564190660180560 +19066412042E0B02000B02030902020702020A0202861714BC3B37ED9491FBAAA8F5B0AE +EDADABEBABA9EAA5A3E9A19FEBA9A7DC6864E07A77F2B4B3F8B0AEF99E9BE69491CD5855 +460402000001030000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000003000005700005202034B0000 +733E45D0E8FFC7D7ECCADBF0C5D9EFC0D9F0A5BFE01E1C6F0C066105005D07005E07005E +07005F07005E07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +06005E07005F03005C0A06608DB4DB74B6E366ACDD4E9ED9479AD74399D6469BD7479BD8 +499CD853A1DA64AADDA1CCEAABD1ECABD0ECACD1ECADD2EDAED3EDAFD4EEAED3EDABD1ED +A5CFEB8CC1E667ACDE499BD74B9DD84A9CD8489BD8499CD7489BD749A1DC356EB806006A +09076E09066E0B086F000069A79DAEFFF9D5F1E5CCF5E8CBF5E8CCEDD5A1E6C681DFB761 +DEB25ADCB158DAB056DBB157DAAF57DAAE56D9AF57D7AD52D9B05CEAD3A7EFE0BFEFE0C0 +F2E4C8F2E4CAF1E4CBF1E5CAF0E2C5EBDAB7EAD8B5E0C692CFA755C89A3DC89C43C89D45 +C9A04CCAA151CBA456CAA254C8A151C9A459CAA55BD6BC85E9DBBFEADBBFE9DCC1EADDC3 +EADCC3E8DABFE8DCC2DECCA7C2A05CB99447AD8128A97B1FA7791DAC802AAC822EAD8434 +AF8739B18C42AF883EB69553D5C29CD9C8A5DCCEB1DDCFB3DED1B7DED1B6DECFB4DACBAE +DACCAFCCB9919770218C610A8B600C8A5F0B8E6615926D23936F2697732E987531997735 +977634A5884ECFC0A2D4C6ABD3C5A9D4C7AED6C9B0D7CAB2D7CBB4D5C9B0D1C4A9D0C2A7 +C0AE8C9E824C7C5710734C01744E0378550C7E5D1781611E8363238364248465277F6021 +A9956ACCBEA5C8BAA0CCC0A8CDC2AACEC2ABCDC2ABCCC0A9C6B9A0C3B69CB9AB8CAF9E7B +B5A585A08B626343026748096E521672571C795E27755A22897140B09F7CB5A683B9AB8B +BDAF92D5CDB9E2DBCFDFD9CBE0DACEE0DACEE0DACEDDD7CADBD5C6D4CCBBD0C9B4CFC7B2 +A697728B784B69521F66501D685220624B165F4812553C0552390390805CB5AB94B2A68F +B9AE99BEB4A0BFB6A2C0B7A4BEB5A2B7AD97B0A68FACA18AA89C83A99D84624E24422700 +4932014E38064A340175653FAFA590A99E889E9278A0947CC3C3C5CFD4DFCFD3DCD2D6DE +D3D7DFD4D8E0D6D9E1D7DAE2D9DCE4DADDE4DDE0E6DEE1E7E0E3E8E2E4EAE3E5EBE6E8ED +E7E9EEE9EBEFEBEDF0ECEEF1EEEFF3EFF0F3F1F2F5F3F4F5F3F4F6F5F6F8F6F7F8F7F8F9 +F8F9FAF8F9FAFAFAFBFBFBFCFBFBFCFCFCFCFCFCFDFDFDFEFEFEFEFDFDFDFEFEFEFFFFFF +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFCFCFDFFFFFFC6C6DD2C2A83120F7307046D09066E07046D0A086F +A9B8D9DCEFF9D4E7F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D5E8F5D6E9F6D5E7F5D8EBF82C2A7A00005A08015F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +0A03610000556266A1E5F4FDDEECF8DFEDF8E1EFFADCE7F090676B6621224E00004D0000 +973130E06360DA5C59D9514DD84E4AD74945D64440D53E3AD33531D2332ECC302CC82F2B +C22D29B92B27B42A26AB2824A62723A02623932320981E1BB0312EC8605DD96E6BD13E3A +D24B47EEA19FEEA5A3EEA2A0EA9491EA8A87D96A67BB646199413E69110E490F0D270B0A +2B0A09290A092209081E07051D070B19071619065118056419066018056019066412042E +0A0200080203070102080201070202000202080202520F0D97504DAE605EDF6A67E77471 +ED9593F1A7A5EF9C9AE8827FE97875CC6360A4615E7E34323D04031B0404000000030000 +000000000000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000000000000000300003C00005601014E00006C3136967E8BCEE4FB +C7D8EDC9DBF0C6D9EFC3DCF28BA1CB09025E06005D07005E07005D07005E07005F07005E +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F05005D +0C066322207496C1E473B5E268ADDE4D9ED9459AD7469AD8499CD8489BD7499CD853A1DA +67ACDFA2CDEBAAD0ECACD1EDADD2ECAED3EDAED4EEAFD4EEAED3EDABD1EDA3CDEB80BAE3 +64AADD4A9CD84A9CD8499CD8479BD8479CD7479AD749A1DC2F63B005006809076F09066E +09066E05026CB0A6B2FFF7D4F2E4CBF5E7CBF4E6C9E9CE93E4C177DFB55FDCB156DBB056 +DAB156DBB057DAAE56D9AF56D9AF57D6AA51DAB464EBD8B0EFDFBEEFE1C2F2E3C9F2E4CA +F1E6CCF1E5CAEFE2C5EAD9B5E9D8B3DABC7FC7993DC7993EC79C45C89E48C9A250CAA353 +C9A354C9A153C9A153C9A55BC9A65EDCC596EADDC2E9DABEE9DBC0E9DCC1E9DCC1E7D9BF +E9DBC3D6BF91BC974DB58D3EA97B1FA67719A87A20AC802CAC822FAE8638AE883BB08B42 +AD863DC0A36ADACAA9D9C9A9DDCEB2DED0B4DFD1B7DED1B6DDCFB4D9CAADDACBAEBDA371 +8E65118B610C8B5F0C8A5F0D8F671A936F2695712A997531997533987735A08245B49C6C +D3C6ABD3C6AAD4C7ACD5C8AFD5C9B0D7CBB3D7CAB3D4C7AECEC0A4CEC0A4B29C71805C15 +775108744E02744E037B5812805F1C8162218363248362238466298A6E34BBAA88CBBEA5 +C9BDA3CDC1A9CEC3ABCDC2ACCBC0A8C9BEA5C3B79CBFB296B4A484B0A07EB3A383836935 +6243006C4F1073581D755A20775D26765C24755B257E6531978358BFB195CBC2ABDBD5C4 +E0DBCDDFD9CCDFDACEDFD9CDDFD9CDDBD4C5D9D2C2D1C9B6D0C8B4C2B69CA69773AB9D7B +8D7B52745E2E654F1C5B420C553B06533905644D1CA99D81B6AB95B6AB95BDB4A0C0B7A4 +C0B7A3BDB4A2BBB29EB3A892ADA28AAA9E85AEA28B96896B4E39074A33004D3705503A09 +4D3706877857B6AD99A69B849B8F74A0967DC5C5C8CED3DECED2DBD0D4DDD1D5DED3D7DF +D4D8E0D6DAE2D9DBE3D9DCE4DBDEE5DCDFE6DFE2E8E2E4EAE3E5EBE5E7ECE5E7ECE8EAEE +EAECF0EBEDF1EDEFF2EFF0F3F0F1F4F2F3F5F3F4F6F5F6F8F5F6F9F6F7F9F7F8F9F8F9FA +FAFAFBFAFAFBFBFBFCFCFCFDFCFCFDFDFDFEFDFDFEFDFDFDFEFEFEFEFEFEFFFFFFFEFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFCFCFDFFFFFFC9C8DF37358912107307046C09066E08056D09076EA1AFD3DCF0FA +D4E7F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D5E8F5D5E8F5DBEEF941418900005908016007005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F090360000056 +515495E0EFF9E0EEF9DFEDF8E1EFFADCE7F1AC979D7134364C00004D00008C2827E26460 +DA5A56D84F4BD84C48D64541D5413DD53D39D2342FD1312CCA2F2BC42E2AC02D29B52A26 +B02925A92824A628239E242193221F8E221F7F1D1A9B1B17B82420B82622BA3B37DA807E +DA9290D98A88D2706DD05D5AB0252175100D430B09250A0A2F0C0B2E0B0A280908280A09 +2108071E07061D070B19061619065118056419066018056019066312042E090200070102 +0802020701010502020602020502020000002B0301540A08AF201CBF332FC9706DD1918F +CC7B79C45D5AC546438C13103E0504160101000000010000010000000000000000000000 +000000000000000000000000000000000000000000000000000000000000000000000000 +0000000000000000000500004200005502024C00007D5159A79DAECCE0F6C8D9EEC9DAF0 +C6D9EFC4DEF37C8FC006005C06005D07005E07005D07005E07005F07005E07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07015F03005C15126B3C408A +96C2E573B4E268ADDE4E9ED9469AD7479BD84B9DD8499CD7499CD854A1DB69AEDFA3CDEB +A9D0ECACD1EDAED2ECAED3EDAFD4EEAFD4EEADD2EDAAD1EDA3CDEB7CB8E263AADD4B9CD8 +499BD7489CD8479BD8489CD7479AD749A0DB2C5CAB06006909076F09066E08056D09066E +B5ABB4FFF6D4F1E5CBF4E7CBF4E6C8E7CB8DE3BE72DFB45EDBB156DAB055DAB056DBB057 +D9AE56D8AF56D9AF58D5A94FDBB568EDDAB4EFDFBEF0E1C3F2E4CAF1E5CBF1E6CCF0E5CA +EFE1C4EAD8B3EAD7B3D8B876C59534C79A3FC89D46C99F4BCAA251CBA353C8A352C8A253 +C8A254C9A65DCAA761DEC99EEADDC3E8DABFE8DBBFE8DCC0E8DBC0E8D9BFE9DBC2D2B886 +BA9449B48B3AA7781AA57617A77B22AB7F2CAC822FAF873AAF893CB08B43AD863CC5A975 +DBCCABDACAAADDCEB2DFD1B5DFD2B7DDD1B6DCCFB4D9CAACD9CBADB599618C620E8C620F +8B5E0B8B5F0D90681C936F2795722B997532997534987735A5884EBAA378D4C7ADD3C6AA +D4C7ADD6C8AFD5C9B0D7CBB4D7CAB3D3C6ADCCBEA2CDBFA4A99162754E00765005744E02 +754F047D5A1580601D81612183642481622286692D927843C1B193CABEA4CABEA4CDC1AA +CEC3ACCDC2ABCABEA7C8BCA4C2B599BEB092B2A180B3A282B09E7D75581E6446056E5215 +765B21775C23775C25775C25755B256E541B826A39BEB095D7D0BDDDD6C8E0DACCDFD9CD +E0DACDE0DACDDFD9CCDAD3C4D7D0C0D1C9B5D1CAB6BBAF92A4946FAFA282A1926E877348 +624A17573E065035005339076D5728B2A68EB6AC95B7AD97BFB5A2C1B8A5C0B7A4BCB3A0 +BAB09CB2A791ABA087A89C83B1A58F8B7D5C4932014D36044E3806513D0B4E39088F8163 +B6AD99A599829B8E74A1967EC6C6C9CDD2DDCED2DBD0D4DDD1D5DED3D7DFD4D8E0D6D9E1 +D8DBE3D9DCE4DBDEE5DCDFE6DEE1E7E1E4E9E2E5EAE4E6EBE5E7ECE8EAEEEAECF0EBEDF0 +EDEFF2EEEFF4F0F1F4F1F2F6F3F4F6F5F6F8F5F6F8F6F7F9F8F9FAF8F9FAF9FAFBF9F9FA +FBFBFCFCFCFDFCFCFDFCFCFEFCFCFDFDFDFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFCFCFD +FFFFFFD2D2E45B589E15127506036C09066E09066E07036C909BC7DEF2FBD4E6F4D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5 +D4E7F5DCF0FA696FA600005808026006005E07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F08016000005A2F2D7DD2E0EF +DFEFF8DEECF7DFEEF8DDE9F2D4D8E17F4C4F480000500001701312D35551D7524FD84D49 +D74A46D5423ED43C38D43935D0312DCB2F2BC62E2AC32E2ABD2C28B22A26AE2925A52723 +A327239B242190221F8B211E85201D7C201D791F1C6B1A186618166015135B1311571311 +4E12104B12104212103E100F3C0F0E370D0C340C0B290A09280908270A092008071E0806 +1A070A18071619065018056419066018056019066312042E080200070102070202050101 +050202040101040101070202040303020303000202000101000000000000000000000000 +000000000202010202030101030000010000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000000000000000000000000000 +0000001000004E0000540303490000957C8ABFCADFC9DBF1C8D9EFC9DAF0C6D8EEC9E1F6 +5F6BA602005808015E07005E07005D07005E07005F07005E07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F080260000058292B7C6F80B496C2E572B3E1 +6AADDF4E9FD9469BD7499BD8499CD8479BD74B9DD856A3DB6DAFE0A5CEEBAAD1ECACD1ED +ADD2ECAED3EDAFD4EEAFD4EEADD2EDA9D0ECA1CCEB75B4E15FA8DC4A9DD84A9CD8489CD8 +479BD7479BD8479AD74AA1DB274FA206006909076E0A076E06036C151172C3B9BAFFF3D3 +F2E5CAF5E8CCF3E3C4E5C480E0B968DDB25ADAAE52DAAE53DBAF56DAAF57D9AE57D9AF57 +D9AE58D5AA50DEBC75EEDDBBF0DFBFF0E2C4F0E4CAF1E5CCF1E5CDF1E3C9EEE0C3E9D7B2 +E8D5AED2AC61C3922EC69A3FC79E49C9A04EC9A252C9A252C8A252C7A153C8A254CAA75F +CDAC6AE2D0ACE9DCC2E8DABEE9DBBFE8DBC1E8DBC0E9DBC1E7D9BDCBAE73B99245B28836 +A47415A47415A87B23AA7E2AAC8231AF883AAF893EB08B44B08C45CDB68ADBCBACDACAAB +DDCFB3DFD1B5DFD2B7DDD0B5DCCEB3D7C8A9D4C3A2A785438A600C8B600D8A600D8B6312 +916B1F95722B97742E997633997735987735B49C6CC5B490D4C7ACD4C6ABD4C7ADD5C9B1 +D6C9B2D6CAB2D5C8AFD1C4AACABC9FC9BA9B937539704900754F04744F037651087E5D1A +81621F8263238265267F6120917640AD9971C5B79BCABDA4CBBFA7CDC2ABCEC3ACCDC1AA +C8BCA3C6B9A0BEAF93B9AA8BB09F7DB4A3839F8A61684A0B6D501472571D775C24775C24 +755B24725820745A23765D28745A25AC9C7BDFDACCDFD8CAE0DACCDFD9CDDFD9CCDFD9CC +DDD7C9D7D0C0D4CDBBCFC7B3CEC5B0AEA07FA79977ADA080AEA080AA9D7C725C2B4D3200 +482C00644C21887650B5AB94B9AF99BCB29EC0B8A5C1B8A7C0B7A5BAB29DB7AE98AFA38B +A99D85A79C83A3977E736139493100503A09513B0A523C0C5844169F9379B2A793A3987F +9A8D73A29780C7C8CCCDD1DCCDD1DBD0D4DDD0D4DDD2D6DFD3D7DFD5D9E1D7DAE2D8DBE3 +DADDE5DCDFE6DEE1E7E0E3E8E1E4E9E4E6EBE5E7ECE8EAEEE9EBEFEAECF0EDEFF2EEEFF3 +EFF0F3F1F2F5F2F3F5F4F5F7F4F5F7F6F7F8F7F8F9F8F9FAF9FAFBFAF9FAFAFBFCFBFBFC +FCFCFDFDFDFEFDFDFDFDFDFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFEFFFFFFDFDFEC +8C8ABB19177705026B09066E09066E03006A7A83B9E0F4FDD3E6F4D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D4E6F4DFF3FC +9CA7CB00005609026007005F06005E07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F06005E0C0763AFBBD8D4E3F1DDEDF8 +DCEBF7DDE9F3EEFFFF9570754900005101015A0605A2312EC94642D94743D43E3AD53C38 +D33733D1322ECC2F2BC82F2BC22D29BC2C28B62B27AE2925AA2824A22622A02422972320 +8C211E8A201D831E1B791C19761C196D19176718166017155C15135614124B1210491110 +42100F3B0E0D380D0C330C0B300B0A2A0A09280A092509081D07061B070519060A170515 +18055019066418056018056019066311042E080200070102060202060202050202050202 +040202020101020101020101020101010000010000000000000000000000000000000000 +000000000000000000000000000000000000000000000000000000080202000000000000 +0000000000000000000000000000000000000000000000000000000000001100002C0000 +5400005201014F0000ACA6B7CFE7FFC7D8EDC9D9F0C8D9EFC7D9EFC4DBF2383C86000055 +08025F07005E07005D07005E07005F07005E07005F07005F07005F07005F07005F07005F +07005F07005F07005F06005E09036100005441488FAECDE996C3E672B2E16AADDF4F9FD9 +489BD74B9CD8489BD8469AD74D9ED957A3DB70B1E0A8D0ECACD2EDACD1ECADD2ECADD2ED +AED3EDAFD4EEACD1EDABD0ED9ECAEA67ACDE5AA5DC4C9DD84C9ED9489CD8479BD7479BD7 +479AD74BA0DB213E9606006909076E0A076E02006B252179D7CCC2FBEED0F2E5C9F4E8CC +F1DFBAE3BE71DFB560DCB156DAAD4FD9AE53DAAF57D9AE56D8AE56D7AE57D6AD56D7AE5B +E1C386EEDFBFEFE0C1F0E2C7F1E5CCF1E6CDF1E4CBF0E3C7EEDFC2E8D4ADE3CEA0CAA04B +C29331C69A3EC8A04CC9A250C9A253C9A154C8A153C8A256C8A358CDAB69D2B67EE7D8BB +E9DBC0E8DBBFE9DBC0E9DAC1E8DAC0E7DBC1E1D0AFC3A361B78E40AF842FA37213A57619 +A97D27A97F2BAC8433AF8A3EAF893EB18E48BEA167D4C19BD9CAABDACAABDDCFB4DFD2B7 +DFD1B7DCCEB2DCCEB2D1C09DC3AC809872278A5E0B8A5E0C8B63118D6718926D2497732E +9875309977359875339C7D3EC4B38ECFC0A2D3C5AAD4C7ADD4C8AED5C9B1D6CAB2D6CAB1 +D3C6ADCEC1A5CABC9FBBA8827B5810724C00744F0373500679571180601F816121846528 +8365287D5D1DA1895CC4B699C7B99ECBBFA6CCC0A8CDC2ABCDC3ACCBC0A8C6B99FC3B69B +B9AB8BB3A482B2A280A4916A836A36674708745A20755B22775D25775D25745A22715720 +755B24775D287C6332B1A386CCC2AED7D0BFE1DBCEDFD9CDDED8CBDDD7C9DBD4C5D3CCBA +D1CAB7CAC0ABBEB196A89875AD9F80AEA182AD9E7FAFA183998961503609412500867450 +AB9E83B6AB95BEB4A1C0B7A4C2B9A7BFB7A4BCB3A0B6AC97B3A993AB9F87A99D84A69A81 +7B6A445B45174E370455400F553F10513C0C6A572FABA18AABA18BA1967D9A8D72A49982 +C9CACFCCD0DBCCD0DACFD3DCD0D4DDD2D6DED3D7DED4D8E0D6DAE1D7DAE2D9DCE4DADDE4 +DDE0E6E0E2E8E0E4E9E2E5EAE3E5EBE6E8EDE9EBEFEAECF0ECEEF1EDEEF2EEEFF3F0F1F4 +F1F2F5F4F5F7F5F6F8F5F6F8F6F7F8F7F8F9F9FAFBFAF9FAFAFAFBFAFAFBFBFBFCFDFDFE +FDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFEFFFFFFE2E1EE9694C11A1778 +04016B09066E0A076E020069727AB4E2F6FED3E6F4D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D4E6F4DFF3FCA9B6D501005B +0A036106005E07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F06005E08026098A2C8C9D7EADFEFF9DBEBF6DDE9F4 +EAFDFFA58A904F00005000005A05058F2623C6433FDA4642D33D39D43A36D43632D1322E +C92F2BC62E2AC02D29B82B27B52B27AD2925AA2824A025229F24219523208A201D89201D +821E1B791D1A751C196B19176818166017155814125414124B121047110F400F0E3A0E0D +370D0C310C0B2F0B0A2A0A09270A092309081D070619060519060A170414180550190664 +18056018056019066311042E080200070102070202060202050101040101040101020101 +010101010000010000000000010000000000000000000000000000000000000000000000 +000000000000000000000000000000000000030000170605000000000000000000000000 +000000000000000000000000000000000000000000000000170000350000530101500000 +590E0FB3B3C6CCE2F9C7D8EEC8D9F0C8D9EFC9DBF0BCD1EB2D2E7D00005608025F07005E +07005D07005E07005F07005E07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F0903610000544A5397BCE0F596C4E673B2E16AAEDF50A0D9499CD84B9DD8 +489BD8469BD74D9ED957A3DB71B1E0A9D0ECACD2EDACD1ECADD1EDACD1ECAED3EDAFD4EE +ACD1EDABD0ED9DC9EA65ABDE59A5DC4C9ED94B9DD8489CD8479BD7479BD7479AD74CA1DC +1E389206006909076E0B076E01006A28247BDBD0C3FBEDCFF2E5C9F4E7CCF0DDB6E2BC6E +DFB55FDBB055DAAE51DAAE54D9AF57D9AF56D8AF57D7AE58D6AD56D8B161E2C58BEEDFC0 +EFE0C2F0E3C8F2E6CDF2E6CDF1E4CBF0E2C7EEDFC1E7D3AAE1C996C89D44C39534C59A3E +C8A04CC9A251C9A254CAA256C8A153C8A358C9A258CEAE6ED6BD88E8DABDE9DABFE9DBBF +E8DBC0E8DAC1E8DABFE7DABFDECCA8C19F5BB68E3EAE832DA37315A6781DAA7F2BAA812D +AC8534AF8A3EAE883DB28F4AC5AB78D4C29DDACBABDACBACDDD0B4DFD2B7DFD1B8DBCDB1 +DBCEB2CDBA95B9A06C956E208A5E0B8A5E0B8C64138E681A926D2597732E987531987735 +9674309F8144C9B997D0C2A5D2C4A9D4C8AED4C8AFD5C9B1D6CAB2D5C9B1D2C5ADCDBFA3 +CCBDA0B39E75765107734E00734F037551087B581281602082622284662A8263277D5D1C +A79267C7BA9FC7BA9FCBBFA7CCC0A8CEC2ABCDC2ABCBBFA8C5B89EC2B499B7A888B2A280 +B4A383958054775C236A4A0C765C23765B23775D25765C24745A22735922755C26765D28 +816B3BB9AD93C5BBA4CFC7B4DFD8CBE0DACDDED8CADCD6C8DAD3C4D2CAB8D2CAB6C7BDA6 +B4A788A89976ADA081AEA182AC9E7EAA9B7CA2936D5E47184A2F00918161B2A78EB6AB95 +C0B6A3C1B8A6C2B9A7BEB5A2BAB19DB4AA94B2A891AB9F87AA9F86A3977D6A562C564010 +503A08554010574213513C0C72603AACA28DA89F87A0957C998C71A49A83CACBD0CCD0DB +CDD0DACFD3DCCFD3DDD1D5DED3D7DFD4D8E0D6D9E1D7DAE2D9DCE3DADDE4DDE0E6DFE2E8 +E0E3E9E2E4EAE3E5EBE6E8EDE8EAEEE9EBEFECEEF1EEEEF3EEEFF3F1F2F5F1F2F5F3F4F6 +F4F5F7F5F6F8F7F8F8F7F8F9F9FAFBF9F9FAFAFAFBFAFAFBFBFBFCFCFCFDFDFDFEFDFDFE +FDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFEFFFFFFE6E6F0A8A7CC1C197904016B09066E +0B086F000067575CA2DEF2FBD2E4F3D6E9F6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D4E7F4DCF0FABAC9E142428A150F6903005C +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F08015F484A909FA9CCE7F8FED8E8F4DCEBF6E1F1FBD3D8E1 +5C11124E0000560202590404A72D2ADB433FD33C38D23632D1312DCD302CC62E2AC12D29 +BB2C28B92C28B22A26A82724A326239C242197232091221F88201D851F1C7C1D1A741C19 +721B186A19176618165C16145514125214124A121048110F3E0E0D3A0E0C370D0C2F0B0A +2E0B0A290A09260A092309081D070619070518060A130415180550190664180560180560 +19066411042E070200080202060101040202040101030101040101030101010000010000 +000000010000000000000000000000000000000000000000000000000000000000000000 +000000000000000000000000060101421211050101020000000000000000000000000000 +0000000000000000000000000000000000003000004E00005303034A000076434ACADFF5 +C7D8EEC7D9EFC8D9EFC6D8EECFE3F59EAED2100D6604005A08015E06005E07005D07005E +07005F07005E07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F02005B6C7DB3C0E4F995C3E673B3E16BAFDF53A2DA4D9ED84B9DD8499CD8489BD7 +4E9FD957A3DB75B3E0AAD1ECABD1EDACD1ECADD2EDACD1ECAED3EDAFD4EEACD1EDACD1ED +95C5E861A9DD58A4DB4C9FD9499CD7489CD8479BD7479BD84699D6479AD716258406016A +09066E0B086E00006A2F2A7DE3D7C5F9ECCEF3E5C8F5E8CCEED8ADDFB867DDB45EDBB055 +DBAF54DAAF56D9AF56D8AF58D9AF5BD8AF5AD7AD56DCBA72E5CD9AEFE0C2EFE1C3F0E3C8 +F1E6CEF2E6CEF0E3CAEFE1C5EDDEC0E3CC9DD8B776C4973AC29436C4983EC89F4DC9A253 +CAA357CAA459C7A255C9A45BC8A35AD4B780DFCAA2E9DABFE8DABEE9DBBFE8DBC0E7DAC0 +E8DBC1E1D2B2D5BE90BB964EB28938AA7E27A5771BA87C25AB8230AD8536AD873AAF8A40 +AC873CB8985AD4C09CD7C6A4DACAABDBCCAEDDD0B5DFD2B8DDD0B6D9CBAEDACDB1BEA778 +A17D398E6614885E0A895F0B8E661890691E936F2697742F98753298763494712EAC935F +D0C2A6D0C2A5D2C4A9D5C7AED5C8AFD5C9B1D6CAB1D4C7AED0C3A8CABC9EC4B4929D824C +704900744F0374500679550F7D5C1982632383642684662A836528876A2EBAAA89C9BDA2 +C8BCA3CDC1AACDC2ABCDC2ABCDC2A9C8BCA3C2B599BEB093B3A281B1A17FAD9C78705318 +64440471551A785D26785E27775D25755C24735922745B24785E2A785F2C96835CC5BBA5 +C3B9A3C4BAA4CAC0ADD6CEBEDED7C9DBD4C5D6CFBED1C8B5D2C9B6BAAD91A49570AB9D7C +AFA181AEA181A89978A3936F9E8E688E7D528A7950A99C82B4A891B9B09BC1B9A5C2B9A7 +BFB6A3BAB19DB6AD97B0A68EAEA48CAA9E86AFA48D8F8061503805513B09554010584315 +5B481B574316877858ACA18CA399819F937A998D72A59C85CBCDD3CACFDBCCD0DACED2DC +CFD3DDD0D4DDD1D5DED3D7DFD5D9E1D6DAE2D8DBE3D9DCE4DCDFE6DEE1E7DFE2E8E2E4EA +E3E5EBE5E7ECE8EAEEE9EBEFEBEDF1EDEEF2EEEFF3F0F1F4F1F2F5F3F4F6F3F4F6F5F6F8 +F6F7F8F7F8F9F9FAFBF8F9FAFAFAFBFBFBFCFBFBFCFCFCFDFDFDFEFDFDFDFEFEFDFEFEFE +FFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFDFDFEFFFFFFE9E9F2B2B1D11D1A7904016B09066E0B086F000066 +4D519BD6E9F6D1E3F2D6E9F6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D4E7F5DBEFF9BECEE46064A01A156C02005B07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F0902602825788E95C0EAFBFFD8E8F4DCECF7DEEEF8DEEBF56118194E0000 +5402024A0000952220DA413DD33935D23430CF302CCC302CC42E2ABF2C28B92B27B72B27 +AF2925A62723A025229A242194221F8F211E87201D831F1C7B1D1A721B18701A18691917 +6518165A151355141251141248110F46110F3E0E0D390D0C360D0C2E0B0A2D0A09280A09 +2509082309081C070619070518060A12031517055019066418056018056019066410042E +070100080202060101040202040101040101040101020000010101010000010000010000 +000000000000000000000000000000000000000000000000000000000000000000000000 +000000000000090202561817150606050101000000000000000000000000000000000000 +0000000000000000000100003C00005500005303044900007E5159D0EAFFC5D6EBC7DAEF +C8D9F0C6D7EDD2E7F8919FC706015D07005C07005E07005E07005D07005E07005F07005E +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F06005E07005F +798EBFBDE0F795C3E773B3E16BAFDF53A2DA4E9ED84A9CD74A9CD8499BD74F9FD957A4DA +76B5E1ABD1ECAAD0EDACD1ECADD2EDACD1ECAED3EDAFD4EEACD2EDACD2ED93C4E85FA8DC +57A3DB4C9ED9489CD7489CD8479BD7479BD84597D54393D2141F8007016A09066E0B086E +00006A322D7EE7DBC7F8EBCDF3E5C8F5E8CCEDD7AADFB866DDB45FDBB055DBAF55DAB056 +D9AF56D9AE58D8AE5BD8AE59D6AC55DEBE7AE7D09FEFE0C2EFE1C3F0E3C8F2E6CEF2E6CE +F0E3C9EEE0C5EDDEC0E1C998D4B26BC49639C29435C4973EC89F4DC9A253CBA458CAA558 +C8A255C9A45CC8A35AD5BA86E2CFABE9DABFE8DBBFE9DBBFE8DBC1E7DAC0E8DBC2DFCEAA +D1B886B9934AB08635A97C24A5781DA87D27AB8232AE8538AE873BAF8A42AC863BBC9D64 +D9C7A7D8C7A5D9CAACDBCCAEDDD0B5DFD1B8DCCFB4D8CAADD9CCB0B89E6A9973288C6412 +885E0A895F0C8F681A916A1F936F2796742F97753297763494722EB29B6BD1C4A8CFC1A5 +D2C5AAD4C8ADD4C7AFD5C9B0D6CAB1D3C7ADD0C3A7CABB9CBDAB8694763B704800744F03 +7551077B58147E5E1C82632482652784662985682B8E733CC0B294C8BCA1C9BDA4CDC2AB +CEC3ACCDC2AACCC1A9C7BAA1C0B396BCAE90B1A07FB3A382A6946E65470962420274581E +785E26785E27775D26755B24735923745B2579602C7C6432A08F6BC7BDA9C3B9A3C3B9A3 +C3B8A2CEC5B3DDD6C9DBD4C5D5CDBCD1C8B5D2C9B6B4A687A3936EAD9F7EAFA182AEA182 +A69775A2916D9A89619B8B63A69876B2A78FB0A48CBBB29DC1B9A6C1BAA7BEB5A2B9B09B +B5AB95AEA48CACA28AAA9E86B1A7918474514A3300513B0A5843145B47185C481C5B481C +8E8062AAA08AA2977F9E92789A8D71A69D86CCCFD4CACFDACCD0D9CED2DCCFD3DCD0D4DD +D1D5DED3D7DFD5D9E1D6DAE2D8DBE3D9DCE4DBDEE5DEE1E7DFE2E8E2E4EAE3E5EBE5E7EC +E7E9EDE8EAEEEBEDF1ECEFF1EEEFF3EFF0F3F1F2F4F3F4F6F3F4F6F4F5F7F5F6F8F7F8F9 +F8F9FAF8F9FAFAFAFBFBFBFCFBFBFCFCFCFDFDFDFEFDFDFDFEFEFDFEFEFEFEFEFEFFFFFF +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFFFFFFF5F4F9E0DFEC2C298202006A0A076E0B086F0000673C3E90B9C8E2 +CEE0F1D7EAF6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D5E8F5D8EBF7CADBEDA8B6D425227500005908016007005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +0A0361000059575999E0F0F9DBEAF5DBEBF6DBEBF6E1F3FE885C604D00005402024E0000 +720F0DCE3632D33430CF312CCC2F2BC82F2BBF2D29BC2C28B52B27AF2925AC2925A32623 +A1252299242193221F8C211E831F1C801E1B781D1A701A186D1917651816621715581513 +5214124E131145100F420F0E3C0E0D360C0B340C0B310C0B2C0B0A260908250908200807 +1906061A070518060A14041518055019066418056018056019066411042E070100070202 +060202050101040101030101020000010101020101010000000000000000000000000000 +000000000000000000000000000000000000000000000000000000000000000000070101 +1C0706952E2B782524150606000000010000000000000000000000000000000000000000 +0000001000004B0000530001500000723B419E8D9CCDE5FCC6D7ECC8DAF0C8D9EFC8D9EF +AEBDDC5F65A000005409035E07005D07005E07005D07005E07005F07005E07005F07005F +07005F07005F07005F07005F07005F07005F06005E07005F04005C110C679BB8DAB9DBF2 +95C4E872B2E16BAEDF54A2DA4E9FD94C9DD84C9DD84A9CD84D9FD95AA6DB7BB8E2AAD1ED +A9D0ECACD1ECADD1EDACD1ECAED3EDAFD4EEADD2EDADD2ED8EC1E75CA6DB56A3DB4A9DD8 +479BD7479BD8469AD7479CD94392D13B7CC20F167907026B09066E0B086F0000694C4689 +F9ECCFF4E7CDF3E6CAF4E7CCEBD39FDFB766DEB562DAAF56DAAE57D9AE57D8AE56D9AF58 +D7AE5AD6AD56D6AC56E3C88FEAD6ABEFE0C2F0E2C5F1E3CAF1E5CDF1E5CDF0E2C8EEDFC2 +EDDEC0DCC087CBA34FC39539C29235C4983FC8A04FC9A253C9A458C8A456C8A257C9A45C +C9A45CDBC395E7D8BCE8D9BDE9DBC0E8DBC1E8DAC0E7DBC1E7DAC1D6BE8FC9AC71B59043 +AA7E27A6791FA67A23A87D28AB8232AD8639AE883DAF8C42AD893EC7AF7EDACBABD8C7A7 +D9CAABDBCCAFDDCFB4DED0B5DBCEB3D7C8A9D4C4A3A786468D65138A620F885F0C8A6210 +906A1E916C21947029977531977633957430977734C0AC84D1C3A7CFC1A4D3C6ACD4C8AE +D3C7AED5C8B0D5C9B1D1C4AACDC0A4C5B4949A7E467F5D18714B00734E0277540C7F5F1E +806020816323826525816224927842A9966CC7B99EC8BBA0CBBFA7CDC2ABCEC3ADCBC0A9 +CABEA5C3B69CBAAB8DB6A686B1A07EB6A5858A72425F4000684B0D755A21785E26765D25 +745A23735820745A23775D287C633297845EB4A68AC7BDA8C3B8A2C4B9A4C4B9A5C1B69F +CAC1ADD5CEBDD3CBB9CEC5B0C7BCA4AA9C79A89A78ADA181AC9F7FAA9C7BA1916D9E8D66 +96855CAB9F7EC3BAA3CDC5B5C0B7A4BDB49FC0B8A6C0B7A4BBB19DB5AB95B2A891ACA28A +ABA088A79C839B8E726753274B3300553F105D491B5B48195A461972613D968A6EA49981 +9F957C9C9177988C71A89F89CFD2D9C9CED9CBCFDACDD1DBCED2DCCFD3DDD0D4DDD2D6DF +D4D8E0D5D9E1D8DAE2D8DBE3DADDE4DDE0E6DEE1E7E0E3E9E1E4E9E4E6ECE7E9EDE8EAEE +EAECF0ECEEF1EDEEF2EFF0F3F0F1F4F2F3F6F4F5F7F4F5F7F5F6F9F6F7F8F8F9FAF9FAFB +FAFAFBFBFBFCFAFAFBFCFCFDFDFDFEFDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFEFEFEFEFEFFFFFF403E8F0000690A076E0A086F0000682D2E86919DC7CBDDEED8EBF7 +D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D5E8F5D6E9F6D3E6F4DFF3FC38378300005808026007005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F08016001005A +232073CAD7EAE2F2FBDAEAF5DAE9F4E3F7FFC1BAC24D0000540303510000520000AD2422 +D5332FCB2F2BC92F2BC42E2ABB2C28B72A26B12925AD2925A728249F2320A023209B2723 +91231F89211E7E1E1B7C1E1B751C196C19176B19176117155C15135715135013114C1210 +45100F410F0E3A0D0C360D0C330C0B2F0B0A2C0A092709082209082008071C0706190705 +18060A14041518055019066418056018056019066410032D060100070202050101050202 +040101020000020101010000010000020101000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000000001003033E0D0CA73733 +A63835240C0B0000000100000000000000000000000000000000000000000000002B0000 +5600005201024D0000ADA9BACADEF4C7D8EEC7D9EFC8DAF0C7D8EECFE1F4686EA8282777 +00005808015E07005D07005E07005D07005E07005F07005E07005F07005F07005F07005F +07005F07005F07005F07005F07005F06005E080160242577B5D8F0B5D7EE94C5E873B2E1 +6AAEDF53A1DA4D9DD84D9ED94C9DD94A9CD84E9FD95FA8DC80BAE3A9D0ECA8D0ECADD2ED +ADD2ECAED3EDAFD3EEAFD4EEACD1EDACD2ED87BDE558A4DB55A3DB499CD8479BD7479BD8 +469AD7489EDA408ACC2F5FAD0D107507036C09066E0B086E000069686195FFF8D5F2E5CC +F4E7CBF4E7CBE9CD94DFB765DEB561DAAF56D9AE57D9AF56D8AF58D8AE59D7AF5DD5AB55 +D7AF5DE7D0A0EBD8B2EFE0C2F1E2C7F1E4CAF0E5CCF0E4CBEFE1C7ECDDBFECDDBDD6B572 +C59638C39439C29335C49942C8A051C9A254C7A255C6A054C7A155C7A35AC9A763E0CDA8 +E9DCC1E7D9BCE8DBC0E8DAC1E7DAC0E8DBC3E4D5B9CBAE77C2A160B28B3CA77A1FA6781E +A67B25A77E2AAA8233AD863BAE893FAD8941B18D48D2BE97DAC9AAD8C8A8D9C9ACDBCCAF +DDCFB4DDCFB3DBCDB2D3C3A3C9B68E99742A8B620E88600D8963128D6719926D24936F27 +96732E977632967532987535A28449CBBB9BD1C3A6D1C2A6D3C7ACD3C7ADD4C7AED5C9B1 +D4C8B0CEC1A5CDBEA2B9A6807A570E745004724E02734D037A5813816121806121806222 +816122806022A58E62C2B396C7BBA1CABDA4CDC1A9CEC2ACCDC2ACCABEA6C7BBA1C0B296 +B4A484B0A07EB3A382AE9D7A6E511867480972561B785E28785E27755B2370551C6F541B +745923765C27846D40B6A98EC1B69EC5BAA5C3B8A3C3B8A3C3B8A2BEB39BB5A98EB6AA8F +CEC5B2C5BAA3B1A283A99A78ADA07FAC9F80A89977A495719C8B64998860998960C4BCA5 +D4CEBFD9D3C6D9D3C6C4BCAABDB3A0BDB3A0B7AD97B1A790AFA48DAA9F87ABA088A1957B +6C572C553F0E513A0A5A44165E491C5843155B471B8D7F629A8E74A1967DA0947C9C9177 +968B70ABA28ED1D5DCC8CDD8CBCFD9CCD0DACDD1DBCFD3DDCFD3DCD1D5DED3D7DFD4D8E0 +D7DAE2D8DBE3DADDE4DCDFE6DDE0E7E0E3E8E1E4E9E4E6EBE6E8EDE7E9EEEAECF0EBEDF0 +EDEEF2EEEFF4EFF0F4F2F3F5F3F4F6F4F5F7F6F7F9F6F7F8F8F9FAF9FAFBF9FAFBFAFAFB +FAFAFBFCFCFDFDFDFEFDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFE +FFFFFF4745930000690A076E0A076F0100692828827A84B8C9DAEDD8ECF7D5E8F5D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5 +D3E6F4E0F4FD4A4C9000005808016007005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F05005E100A66B5C0DB +DDEDF7DBEBF6DAE9F4E2F5FFC9C9D2662425590B0C5100004F00009A1C1AD3312EC92E2A +C72E2AC22D29BA2B27B52A26AF2925AA2824A427239E221FA1221F9D29258F231F87201D +7D1E1B7A1D1A741C196B19176918165F16145B15135614124F13114C121045100F410F0E +390D0C360D0C320C0B2B0A092A0A092609082009081F08071B070618070518060A140415 +18055019066418056018056019066410032D060100050202040101040202040101020000 +020101020000020101010000000000000000000000000000000000000000000000000000 +000000000000000000000000000000010000000000160505501412AC3834B73E39321211 +000000010000000000000000000000000000000000000000000000360000550000500000 +580B0CB8BDD0CCE2F9C6D8EDC7DAF0C8DAF0C7D8EFCBDDF2484A8E14106704005B07005D +07005D07005E07005D07005E07005F07005E07005F07005F07005F07005F07005F07005F +07005F07005F07005F04005D1310693A408AB6D8F0B5D6EE93C4E773B3E16AAEDF53A1DA +4C9DD84E9FD94C9DD94A9CD84F9FD960A9DC81BAE4AAD1ECA8D0ECACD2EDAED3EDAED3ED +AED4EEAFD3EEACD1ECAAD1ED83BCE558A4DB54A2DA489CD8489CD7479BD84699D7489FDB +3E86C9284FA10D0F7408036C09066E0B086E0000696F6798FFF7D5F1E5CDF4E7CBF3E6CA +E8CB90DEB766DDB561DAAF56D9AE57D9AF57D8AE58D8AF5AD7B05ED5AC57D8B263E8D2A4 +EBD9B3EFE0C2F1E3C8F0E4CAF1E5CCF0E4CBEEE1C6EDDEBFEBDBBAD3B06AC59638C39439 +C19437C49943C8A051C9A254C7A153C69F53C6A054C7A35BCAAA67E2D0ADE9DBC0E7DABC +E8DAC0E8DAC0E7DAC0E9DCC4E2D2B3C8AA6FC09F5DB1893AA5791DA5781FA67C25A77E2A +AB8335AD863BAE8940AD873FB49250D5C29ED9C8A9D9C8A9DACAADDBCCB0DCCFB4DCCEB3 +DBCEB3D1BF9DC3AD809771258B621088600D8B65158F691C936E2694702A967430977733 +9675329B7A3CA98E58CDBEA0D0C2A5D1C3A7D3C7ACD3C6ADD4C7AFD5C9B2D4C8B0CDBFA3 +CCBFA1B19D71765006734E03734E02744F057B5915816122806121806222806022816224 +AC986FC6B89DC8BBA1CABEA6CDC1A9CEC2ACCDC2ACC9BDA4C6BAA0BEAF93B2A281B1A07E +B1A17FA4926B66490B6C4F1175591F795F2A785E27755A226F541B6F551C755B24765C27 +8B774CBEB39BC3B8A1C4BAA4C3B9A3C3B8A3C1B6A0BDB29BB2A68BAC9E81C4BAA5C1B59C +AA9B78AB9C7BADA081AC9E7FA79774A2936E9B8B6398865D9D8E67CBC4B0D6D0C1D8D2C4 +DBD6C9CBC4B5BAB19DBAB19DB5AB95B0A68FAEA38CA99E86ACA28A9A8D705C4617543E0D +543E0F5B45185C471A553E10604D2296896E9B8F75A2967EA0957D9C9177968A6FAEA694 +CFD3DDC9CED8CBCFD9CCD0DACDD1DBCFD3DCD0D4DDD1D5DED3D7DFD4D8E0D7DAE2D7DAE2 +DADDE4DCDFE6DDE0E7E0E3E8E1E3E9E3E6EBE6E8EDE7E9EEEAECEFEBEDF0EDEEF2EFF0F4 +EFF0F3F2F3F5F2F3F5F3F4F6F5F6F8F6F7F8F8F9FAF9FAFBF9F9FAF9F9FAFAFAFBFCFCFD +FCFCFDFDFDFDFDFDFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFFFEFEFEFDFDFEFFFFFF6664A5 +0000680A076F09076E04016B1B1A79494D98C5D6EBDAEDF8D5E8F5D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F6D6E9F6D4E7F4DEF2FB +7D85B500005A08015F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F06005E08016000005A60639EA9B3D3E3F3FC +DBEAF5DEEEFAD7E2ECCAC9D36625274D00004E00006C0A09AA2220BF2B28C22D29BB2C28 +B22A26B02A26AB2824A62823A125229D2623A82E2AAB302C93221F851F1C7B1D1A7C1E1B +731B196A19176518165C16145A15135214124B121048110F43100F410F0E370D0C360D0C +330C0B2C0A092A0A092308071F08071E08071906061A0705170509120415180550190664 +18056018056019066410032D060100060202050101050202040101020000030101020000 +020101010000010000010000000000000000000000000000000000000000000000000000 +000000000000000000010000000000260B0A8F2A27BA3D39D64B46642625000000010000 +0000000000000000000000000000000A00001F00004D000055030448000080565FCCE1F8 +C6D7EDC7D9EFC7DAF0C7D8EECFE0F4A5B1D4110F6401005807015D06005C07005D07005E +07005D07005E07005F07005E07005F07005F07005F07005F07005F07005F07005F07005F +0902600000583337847589BBB3D4EEB3D5EE90C2E774B4E26BAFE052A1DA4B9DD84E9ED9 +4C9ED94A9DD84FA0D964ABDE86BDE5ABD1ECA8CFECACD1EDAFD4EEAED4EEAFD4EDAFD3EE +ABD1ECA6CEEC7BB7E257A4DB52A1DA469BD7479BD8479BD84699D649A1DC3B7CC2192B88 +0B0C7208046D09066E0A076E02006B8B83A3FFF5D5F2E6CEF4E7CCF3E4C6E6C789DEB768 +DCB563D9AF58D9AE56D8AE56D7AF5AD8AF5CD7AF5CD5AB56DBB86FEBD8B0ECDAB6EEE0C2 +F1E4CAF0E4CBF1E5CCF0E4CBEDDFC3ECDDBEE8D4AFCCA454C29437C19438C0953BC59A45 +C8A051C8A153C59F52C49F51C59E53C9A561CFB277E6D7B9E8DABEE7D9BEE7D9BEE7DABF +E7DAC0E8DAC1DCC8A2C1A260BC9A54AE8432A4771CA4781FA67A25A77D2AAC8437AE883D +AE8A41AC863EBEA167D8C9A9D8C7A7DACAAADBCCAFDBCDB1DCCEB3DBCDB2DBCEB4C5AF86 +AE9055926B1E8C641489600E8D6619906B2094702A96722E977532987736957331A98E58 +BDA880D0C2A6D0C2A7D2C4AAD3C7ADD4C7AFD5C8B0D4C8AFD2C5ACC9BB9DC5B697997D47 +6F4800724E02744F0577540D7E5D1B8062228061217F60227E5E1F8A6F35BFB192CABEA3 +C9BDA3CCC0A8CDC1AACDC2ACCCC1ABC6BAA0C4B69BB8A88AAF9E7BB4A4839E8A62806533 +61410273581E775D257A612C765C277358216F531B71561F79612D7E6634A49472C6BDA8 +C3B9A3C4B9A3C4BAA5C3B8A2BEB39CB9AE95AEA184AA9C80A6987A9F8E6AA59672ADA080 +AC9F81AB9B7AA2916E9F8D679A886095845BB0A384D7D1C2D7D1C2D9D4C6DCD6CADAD3C8 +BFB7A3B7AD98B2A790AFA48DACA189A99E85AEA48D7D6C474D36045640125C471A5D491C +56411447320172603CA3977F9F937AA2987F9F957B9C907795896EB3AD9FCACFDBC9CED7 +CACED9CCD0DACDD1DBCED2DCCFD3DDD1D5DED3D6DFD3D7DFD6D9E1D7DAE2D9DCE3DBDEE5 +DCDFE6DFE2E8E0E3E9E3E5EBE5E7ECE6E8EDE9EBEFEAECF0ECEEF1EEEFF3EFF0F3F1F2F5 +F3F4F5F3F4F6F4F5F7F5F6F8F7F8F9F8F9FAF9F9FAFAF9FAFAFAFBFCFCFDFBFBFCFCFCFD +FDFDFEFEFEFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFDFDFEFFFFFF7C7AB20000670B086F +09066E06026C16147636388CC3D4E9DAEEF9D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D4E7F4DDF1FB8F99C200005A +08015F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F05005E3736828B93BEE9F9FFDBE9F5DDEDF8 +DBE9F3E0EFFA73373A4C00004F00006006058A1715BB2A26C22D29B92B27B12A26AE2925 +AA2824A72824A025219D2824AC332EB13330962220831F1C7A1D1A7A1D1A711A18681816 +6417155B15135A15135214124A121047100F400F0E3F0E0D370D0C350C0B310C0B2D0A09 +2A0A092309081F08071F0807190606190604150409120315170550190664180560180560 +19066410032D070200060102040101050202040101020000030101020000010101010000 +010000010000000000000000000000000000000000000000000000000000000000000000 +000000010000000000391110AC322EBC3E3AD34B477B2F2D000000000000000000000000 +0000000000000000001100003100005000005403034A00008F707BD0E9FFC5D6EBC7D9EF +C7D9EFC5D6EDD4E6F88E98C308025D05005B06005D06005C07005D07005E07005D07005E +07005F07005E07005F07005F07005F07005F07005F07005F07005F06005E090361000056 +3E458D8AA3CCB1D3EDB1D4EE8FC2E774B3E16BAEE052A1DA4B9DD84C9DD84C9DD84B9DD8 +4FA0D967ACDE88BEE5ACD1ECA9CFECACD1EDAFD3EDAFD3EEB0D4EDB0D3EEAAD0ECA3CDEB +78B5E257A4DB52A1DA469AD7469AD8479BD84699D64AA2DD3979BF131D7F0B0B7208056D +09066E09066E06036C9F96ABFFF3D4F3E6CEF4E7CCF3E3C4E6C586DDB768DCB463D9AF58 +D8AE56D8AF57D7AF5BD7AF5DD7AE5BD4AA53DCBA73EBD9B3ECDBB7EEE0C2F1E4CAF0E4CB +F1E5CCF0E4CBEDDFC2ECDCBDE6D2AACAA04DC29336C19438C1963DC59B47C7A052C7A053 +C59E52C49E51C49D51CAA866D3B780E7D8BCE7DABEE8DABEE7D9BFE7DABFE7DABFE6D8BD +D9C49BC09F5DBC9953AD822EA4771CA4781EA67A26A77D2BAC8538AE883EAE8A42AC8840 +C1A670D9C9AAD8C7A7DACAABDACCB0DBCDB2DBCEB3DBCDB1DBCEB4BFA779A68545916B1C +8B641389600F8D671A8F6A2095712A96732F977532987635957331AF9765C4B28ED0C2A6 +D1C3A9D2C4ABD4C7ADD5C8B0D5C8B0D3C7AED1C4ABC8B99BBEAD8A9072366E4900724E02 +734F067857127F5E1D8062218061217F60217D5E1E907640C5B79BC9BCA1CABEA4CCC0A8 +CDC1AACDC2ACCCC1AAC4B89EC2B499B6A686AF9E7BB6A686927C4F70531B644406755A21 +775D267A602B765C267258206F541C7157207B6330877143AE9F80C6BDA8C3B9A3C4B9A4 +C5BAA5C2B7A1BDB29BB8AC92AD9F82ADA0839D8D6C8471459B8B64AFA283ADA081A89978 +A08F6A9E8B6499875F96845CB9AE93D9D3C6D7D1C2DAD5C8DBD6C9DAD5C8C7BFAEBAB09C +AFA48DAFA48DACA189AAA087ADA38C715F375139095843155D491B5D481B543F12463100 +7B6B4AA1967DA0957CA499819E93799B907694896EB7B2A6CACFDBC8CDD7CACED9CCD0DA +CCD0DACED2DCCFD3DDD1D5DED2D6DED3D7DFD6D9E1D6DAE2D8DBE3DBDEE5DCDFE6DFE2E8 +E0E3E8E3E5EBE5E7ECE6E8EDE9EBEFEBEDF1ECEEF1EDEEF2EEEFF3F1F2F5F2F3F5F3F4F6 +F5F6F8F5F6F8F7F8F9F7F8F9F9F9FAFAF9FAFAFAFBFBFBFCFCFCFDFCFCFDFDFDFEFDFDFD +FEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFDFDFDFFFFFFA7A6CB0000670B086F09066E08056D +0B086F0B086FA7B5D7DCF0FAD4E7F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D4E7F5DBEFFABAC9E108016006005E07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F09026000005A3F3F87D6E4F2DFEEF8DCEBF7DDEBF6E4F6FF +B6A9B0510000530202530000540101971D1ABF2D29B62A26AF2925AC2925A42723A32723 +9A2320A22A26B73733B93B37A42B2983201C771C19751C196C19176518166217155A1513 +5714125013114A121047110F3D0E0D3D0D0C380D0C310B0A2F0B0A280908280A09230908 +2008071C070619060517050415050912031517055019066418056018056019066410042E +070200070102050202050202030101020000020101020000020101010000000000000000 +000000000000000000000000000000000000000000000000000000000000000000000000 +0D03038D2724C33834C03D39CD4844AF403D100303000000000000000000000000000000 +0000003000005000005101014F0000611C1FBDC6DAC9DDF3C7D8EEC7D9EFC7DAF0C5D6ED +A0ADD14B4D9000005308025D06005C06005C07005D07005E07005D07005E07005F07005E +07005F07005F07005F07005F07005F07005F07005F07005F0A03610000545D6AA6BBDFF4 +B0D1EBAFD3ED8DC0E670B1E067ACDE51A0DA4C9DD84C9ED94D9ED94E9FD952A1DA6EB0E0 +8DC1E6ACD2EDA9D0ECADD2EDAED4EDAFD3EEB0D4EDB0D3EEA9D0EC98C7E971B2E054A2DA +4FA0D9469AD7479BD8479AD74699D64AA2DC2F60AD0600690A086F08056D09066E07046D +0C096FC7BDBDFBEFD1F3E8CFF3E5C8EFDDB8E3C37FDCB766DBB35FD9AF57D7AE56D7AE58 +D7AF5AD7AF5BD6AC59D3A954DFC182EDDCB8EDDBB8EFE1C4F1E4CBF0E4CBF1E5CCF0E3CA +ECDEC1EDDDC1E1C999C59940C19336C1943AC3963FC69D4BC6A153C69F53C49E51C39D4F +C39C4ED1B57ADDC89EE8DBBFE7DABEE7DABFE6D9BFE6DAC0E7DAC0DDCAA7D0B786BD9955 +B9934CA97D27A2751BA4771FA67C29A8802FAC873BAC8740AE8943B7995CCCB68ADACAAC +D8C8A8DACCAEDBCDB2DCCEB3DBCDB2DBCDB1D7C9ABAD8F549771278E661688600D896110 +8E691E8F6B2294722D9674319674329775349A7A3AC0AE87D0C2A5D0C2A6D2C5ABD3C6AD +D4C7AFD5C9B1D4C8B0D1C4AAD0C2A9C2B08F9D814B7E5B156F4A00734D027451097C5B19 +7F6020806122806122826326816426A79267CABEA5C8BAA1CBBFA7CBC0A8CCC2ABCBC0A9 +C9BEA7C0B398BBAD8FB1A17FB2A281AE9C7A71551D5C3B006D4F14785E28785F29765D27 +755B25735923735A23745B25856F42AC9D7FBDB29AC5BCA6C4BAA4C3B8A3C2B8A3BEB49D +B9AD94B3A68BA99C7FAEA085816C415E460F6D5726998964AA9C7DA2936E9C8A629A8860 +9B8B64A39471CEC6B4DAD4C7D9D3C6DAD4C8DAD3C7D7D1C4D5CFC0CBC4B3B1A68FADA28C +ACA18AAFA58E9A8D705E491C5A46185E4A1D5F4A1E5A4417513C0E5F4C25928569A3977E +A89D86AAA08BA298809B9177918468C4C3BECBD0DCC8CDD7CACED9CBCFDACCD0D9CDD1DB +CED2DCD0D4DDD2D6DED3D7DFD5D9E1D6DAE2D8DBE3DADDE5DCDFE6DEE1E7DFE2E8E2E4EA +E4E6EBE5E7ECE8EAEFEAECF0EBEDF0EDEFF2EEEFF3F1F2F5F1F2F5F3F4F6F5F6F8F5F6F8 +F7F8F9F8F9FAF9F9FAFAF9FAFAFAFBFBFBFCFCFCFDFCFCFDFDFDFEFEFEFDFEFEFEFEFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFEFEFDFCFDFFFFFFBBBBD70C0A700E0B7108056D09066E09066E020069 +8994C3DDF1FBD4E7F4D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D7EAF6D2E5F33F3E8700005909026006005E07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F06005E07005F06005E080160AAB4D3E7F7FEDBEAF6DEEDF7E1F1FBD6DFE8845457 +5F17184F00004E0000680A09A52420AF2825AB2824A62823A327239E252295221FA52F2C +BC3F3BC23F3BBE3A358F2520731A18721A186A19176217155F16145915135514124D1311 +46100F420F0E3D0E0D3B0D0C320C0B2F0C0B2E0B0A290A092609082208071F07061B0706 +19070619070513040811031517055019066418056018056019066410032D050100050202 +040101020000020000030101020101010000020101010000000000000000000000000000 +000000000000000000000000000000000000000000000000020000000000471211BB322E +BA3430BF3C38C94541C34743280F0D0000000100000000000000000700001700004B0000 +5401014E00006525298C6C78CDE3FAC6D7EDC8DAF0C7D9EFC7D9EFC6D8EE3D3E85130F65 +03005A06005C06005C07005C06005D07005E07005D07005E07005F07005E07005F07005F +07005F07005F07005F07005F07005F07005F05005D0D08648AA3CCBEE2F6B1D3ECAFD3ED +8CC0E66EB0E064AADE51A0D94D9ED84B9DD84D9FD94FA0D956A2DA74B3E191C3E7ABD2ED +A9D0ECADD2EDAFD4EEAFD4EEAFD3EDB0D4EEA8CFEC8FC2E66CAEDF50A0D94C9ED8469AD7 +479BD8469AD7479AD7499EDA25499E05006709076F09066E08056D0D096F1E1A76D8CDC3 +F9EDD0F4E9D1F2E1C0EDD6A8E2C07ADBB561DAB15BD9AE56D7AD56D6AD57D7AE59D6AD59 +D5AB58D6AF60E2C790EEDCBBEDDBB9EFE1C6F1E3CBF0E4CBF1E4CCEFE3C9ECDDBFECDDC0 +DBBE86C2953AC09437C2963DC39842C69D4DC6A054C59E52C49D51C29C4FC49E52D8C08F +E3D3B2E8DBC0E8DABFE7DAC0E7D9C0E7DAC1E5D9BED6BE93CAAE77BA9751B48F44A47820 +A07417A3771FA77E2DA98232AC873CAC873FAE8B44C5AE7CD2BF98DACAABD9CAABDACCB0 +DDCFB4DCCFB4DBCDB2DBCEB2D0C09EA07E3A926C1F8C6313885E0A8A6212906C22926E26 +95722F967331977433977634A18449CABA9BD1C3A8D2C3A8D2C5ADD3C6AED4C7AFD5C9B1 +D4C7AFCFC2A7CFC2A7B6A27A7D5911755106724C01714D0277550F805E1F806122816425 +82632687692E8C703ABAA989CBBFA7C9BDA4CBC0A8CBC1A9CDC2ABCABEA7C8BBA3BDAE91 +B6A686B1A07EB09F7E99845A603F0062420373581F795F28785F28755C26745A22755B23 +785E2A775D2A96835CC5BAA5C4B9A3C4BBA5C5BBA6C2B7A2C0B59FBAAF97B3A78CAFA186 +A8997CA395766B5220634916654E1B715B2B88754A9D8D669A896196865CA49673B9AD93 +D7D1C2D9D4C7DAD4C9D9D3C6D9D2C4D5CFC0D4CDBED6CFC1C0B7A4ACA089AEA38DA79A83 +7F6E4B584415604D215E4B1F5E491E533F10543E1385775A9D9177AAA089B0A691B0A793 +A99F8A9F947B95896EC0C1C1CAD0DCC7CCD6C9CED8CBCFDACCD0DACDD1DBCDD1DCCFD3DD +D1D5DED2D6DFD5D9E1D6DAE2D7DAE2DADDE4DBDEE5DEE1E7DFE2E8E2E4EAE3E5EBE4E6EC +E8EAEEE9EBEFEBEDF0EDEFF1EEEFF3F0F1F4F2F3F6F3F4F6F4F5F6F5F6F8F7F8F9F7F9FA +F9F9FAFAFAFBFAFAFBFBFBFCFCFCFDFCFCFDFDFDFEFEFEFEFDFDFDFEFEFEFFFFFFFEFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFEFFFDFDFDFFFFFFCCCBE123217D120F7307046D09066E0A076E0200697881B8DFF3FC +D4E6F4D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D5E8F5D5E8F5D9ECF8575B9900005309036107005F06005E07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F09026000005A868DB9E9F9FFDEEDF7DEEDF7E0F0FAD8E2ECBDB4BC7033354B0000 +5101015F0605881715A92623AC2925A62723A126229E252294211EAB3430C54541C3403C +C23C379B2A25701A18711A186718166017155E16145714125314124C121047110F43100F +3D0E0D3C0D0C330C0B300C0B2D0B0A2809082709082108071E08071B0706190605180504 +13040911031517055019066418056018056019066410032D050100040202040101030101 +030101030000020101020000020101010000000000000000000000000000000000000000 +0000000000000000000000000000000000000601011D0706711C19BC312DB8322EBF3C38 +C6433FCC4A464C1B190000000200000000000000001100002B00004E00005302034A0000 +835D66B1B2C4C7D9EFC8D9EFC8DAF0C6D8EFCCDFF3B2C1DF201D6F09045E05005B06005C +06005C07005C06005D07005E07005D07005E07005F07005E07005F07005F07005F07005F +07005F07005F07005F08015F02005B15146B9DB9DBB8DBF1B1D4EDAED3ED8BC0E66FB0E0 +65ABDE52A1DA4C9DD84A9DD84FA0D950A0D957A3DB78B5E294C4E8ABD2EDA9D1ECADD2ED +AED3EDAFD3EDB0D4EDB0D4EEA8CFEC8ABFE669ADDF4F9FD94D9FD9479BD7479AD8469AD7 +479BD8499EDA203D9506006909076F09066E06036C141172353080E4D9C9F8ECCFF5E9D1 +F1DFBCEBD3A1E1BF77DBB360DAB05AD8AE56D7AE58D7AE59D7AE5AD6AC59D4AA57D8B367 +E3C994EDDDBBECDCBAEFE2C7F1E4CBF0E4CBF0E4CCEFE2C9EBDCBDEBDCBDD8B97DC29439 +C19337C3973FC49944C59D4CC59F53C49E52C39D4FC29C4DC49F55DBC597E5D6B7E7DABF +E7DBC0E7DABFE7D9C0E7DAC2E4D7BBD1B989C8AB72B9964FB38C40A3771EA07317A37720 +A8802FA98334AC873DAB873DB08D48CCB68AD3C19CD9C9AAD9CAACDBCDB1DDCFB4DCCEB4 +DBCDB1DBCEB3CCB9949C7831926C1E8B6312875E0B8B6315916C23926F2795722F957230 +967432997939A78C55CEBFA1D0C3A7D2C4AAD3C6ADD3C6AED4C7AFD5C9B1D3C7AFCEC1A5 +CFC2A8AD976B765106744F04724C02714C037856127F6020806122836528836427886C32 +967D4DBFAF91CBBEA6CABEA5CCC0A9CCC1ABCDC2ACC9BCA5C7B9A0BBAC8EB3A382B3A282 +A7946F897142604001694A0B745921795F2A785F2A755C26745A23755B24795F2C785F2C +A1916DC7BDA8C4B9A3C4BAA5C4BAA6C2B7A1BFB49EB9AD95B0A388AEA185A596788F7E58 +684F1D664E1B68511F664F1C6B55228E7C519D8E6795855BAC9F7EC5BBA5D7D1C3D9D4C7 +DAD4C8D8D2C5D7D1C3D5CDBFD2CBBBD4CDBEC9C1B1B0A58FB0A59094866A73613B5A4617 +604D215E4A1E5B471A4E39095E4A20968A70A1977EAEA48EB3AA96B3A996ACA28DA0957E +9D9279C0C1C0C9CFDCC7CCD7C9CED8CBCFD9CBCFDACDD1DBCED2DCCFD3DDD1D5DED2D6DF +D5D9E1D5D9E1D8DAE3DADDE4DBDEE5DEE1E7DFE2E7E1E4EAE3E5EBE4E6ECE8EAEEEAECF0 +EBEDF0ECEEF1EEEFF3F0F1F4F2F3F6F2F3F6F3F4F6F5F6F8F7F8F9F8F9FAF9F9FAF9FAFB +F9FAFBFBFBFCFCFCFDFCFCFDFDFDFEFEFEFEFDFDFDFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFE +FFFFFFE1E0ED6664A41D1A7904016B09066E0A076F010068494D98DBEFF9D4E7F5D5E8F5 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D5E8F5D2E5F3E4F9FF8A93BE0801600B056206005E07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F06005E08015F +00005A292677C3CFE4D7E5F2E1EFF9DFEDF8DFECF7EEFFFFAD999E530203520000530100 +5000007F1412A72824A427239C2421992320942320BB3F3BD04E4AC3403CC13B37B5322F +801E1C6F1A186618165E16145D16145615135214124A121046100F420F0E3D0E0D3B0D0C +310C0B300C0B2B0A092709082609082008071E08071B0706180605160403130409120315 +17055019066418056018056019066410042E060100070202050202040101030101020000 +020101020000000000000000000000000000000000000000000000000000000000000000 +000000000000010000000000390D0CA12723AF2A26B72F2BB8312DBD3935BF3E3AD84C48 +82302E0000000401010000000400003A0000530000520101500000601A1DB7BCD0CFE8FF +C6D7ECC9DAF1C8DAF0C5D7EECEE1F46065A000005506015C06005C05005C06005D07005C +06005D07005E07005E07005F07005E07005E07005F07005F07005F07005F07005F07005F +07005F080160000058323683BCE0F5B4D5EDB2D5EEAAD1EC89BFE570B2E067ADDE53A1DA +4B9CD8499CD84E9FD950A0DA5BA5DB82BBE498C7E9AAD1EDA9D1ECACD2EDAED3EDAFD3ED +AFD3EDB1D4EEA6CEEB7EB8E365ABDD4E9FD94C9DD9479BD7469AD7479BD84699D64392D1 +131E7F07026B09066E0A076E01006A2B277C736C9AEFE4CDF6EACEF5E9D1EDD9AFE7CA8F +E0BB71DAB15AD9AF57D7AE57D8AF5BD7AF5CD6AE5BD5AC58D4AB57DDBE7EE6D0A2ECDDBC +ECDDBCEFE3C8F1E5CCF0E4CBEFE3CAEFE2C7E9D9B8E4CFA6CEAA60C19337C2943BC39842 +C49A46C49D4CC59E52C49E51C29B4CC19849C8A561E3D1AFE9DBC0E7DABFE7DBC1E6D9BF +E6D8BEE8DBC2DECDAAC8AC74C3A366B48F44AD8534A2751BA2741CA57B26AA8437AA8439 +AD873FAA833AB99B5FD7C7A5D6C6A5D8C9AADACCAFDBCEB2DDCFB5DCCEB4D9CAAFD9CBAF +B89F6C926C208F681988600F875F0E8D671A926D2693702A967430967432957431A98E5A +BDA880D2C5AAD0C2A6D2C6ACD4C7AED3C6ADD3C7AFD5C9B0D2C5ACCDBFA4CBBC9F917438 +6E4700724D03714D02724E057C5C1A80632282642685672C826326967D4AB8A785C7BA9F +CCC0A9CDC1AACDC1ABCCC2ABCBBFA8C4B79CC0B296B4A484B09F7CB2A28181673468490C +6A4C0F72551C775D26795F2A775E29755C25765C27795F2B7B6331877144BBAF96C7BEA9 +C4BAA5C5BAA5C4B9A4BFB49DBCB098B4A88EA99B7EAD9F848E7C56644C1767511E67501E +644C19563C08492E00573F0D8B7A4F998962C3B9A3D8D1C3D9D3C5DAD4C7D9D3C6D5CFC1 +D4CDBED0C9B9D0C9B9D1CABAD3CCBECFC7B8B3A9946653295D491C5D4A1C5D491C594518 +523C0E4A3403837453AFA590ACA38DB3AB98B9B19EB8AF9CAEA58F9F957EB0A996C4C6CA +C8CEDAC7CCD7C9CED8CACED9CBCFDACCD0DACDD1DBCFD3DCD1D5DED2D6DFD4D8E0D5D9E1 +D7DAE2D9DCE3DADDE4DDE0E6DEE1E7E1E4E9E3E5EBE4E6ECE7E9EEE9EBEFEAECF0ECEFF1 +EDEFF2F0F1F4F1F2F5F2F3F5F4F5F6F4F5F7F6F7F9F8F9F9F8F9FAF8FAFBF9FAFBFBFBFC +FCFCFDFCFCFDFDFDFEFDFDFDFDFDFDFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFE9E9F2 +9C9AC525237F0200690A076E0A076F0100692B2C85D0E3F2D6E9F6D5E8F5D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D3E6F4 +DEF2FCADBBD85D609D0C066305005E07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F06005E0B0762 +6F73A9BCC8DFE9F8FEDFECF7DFEDF8DFEDF7E1EFF96E31344C00005301014F0000590503 +97211EA2262399232092221F932320BE413ECF4D49C33F3BBD3935BC34309D2723801E1B +6217155E16145C15135314125013114B121044100F400E0D3D0D0C3B0D0C310C0B2D0B0A +2A0A09280A092609082008071E08071B0706170605130404120408110315170550190664 +18056018056019066410032D050100050202040101020000020000020000030101000000 +010000010000000000000000000000000000000000000000000000000000000000000000 +0000000802018C211EBA2C27B02A26B42E2AB8312DBB3632BD3B37D44A458F36331B0809 +0501010000001B00005000005300005201024B000087656FCEE7FFC4D3E9C8DAF0C8DAF0 +C7D9EFCEE1F5BBCCE727277500005608025D05005B05005C06005D07005D06005E07005D +07005E07005F07005E07005F07005F07005F07005F07005F07005F06005E07005F08015F +01005A6272ABBCE0F5B4D5EDB1D5EEA8CFEC87BEE571B3E067ADDF53A1DA4B9DD84A9CD7 +4D9FD950A0DA5BA6DC87BEE59BC8E9AAD1EDA9D0ECACD1EDADD2ECAFD3EDAFD3EEB1D5EE +A2CCEB77B4E164ABDE50A0DA4B9CD8469AD7479AD7479CD94393D33A7FC40C0D7308046C +09066E0B086F0000693E3984A49CAEEDE2CCF5E9CDF5EAD1ECD5A7E4C583E0BA6FD9B058 +D7AF55D8AE5AD9B15DD8B05DD6AE5BD5AC58D4AB57E2C690E9D4ABECDCBCECDDBEEFE2C8 +F1E5CCF0E4CBEFE2C9EEE2C8E9D7B5DEC38FCAA254C09338C2963DC39842C49B48C59D4F +C59E53C49D51C29A4CC09849CCAC6CE6D8BBE8DBC2E8DAC0E7DAC0E7D9BFE6D9BEE8DCC4 +D8C49CC5A76BC0A061B0883BAA802EA2751CA37720A67D2AAA843AAB853AAD8740A9833A +C1A774D8C8AAD6C5A4D9CAACDCCEB2DCCFB4DDCFB5DCCEB4D7C9ACD4C4A4AA8C528E6719 +8C6414875F0D875F0F8D681D926F2793702A967431977533967434B8A278CABA9AD1C4A8 +D0C3A8D3C7ADD4C7AED3C6ADD4C8AFD4C7AED1C3AACDC1A6C3B392805E1A6F4A00724D03 +714D037551097F601F82652684662984672B7F6224A48E63CABDA4C8BCA2CDC1AACEC3AC +CDC1ABCBC1A9C9BEA4C1B397BCAD90B1A07DB3A280AA98746749105E3E0070541972571F +775E27775F29755D27755C26775D287B62317D653597845DC6BCA7C4BBA5C4BAA5C5BAA5 +C3B8A3BDB19BB8AC93B0A387A8987AAC9E827762335C440B695321654E1B5F4711503602 +4B2F01432800665021917F58D4CDBED8D2C4DAD3C6D9D4C7D8D2C5D4CDBED2CABACEC6B6 +D0C9B9D0CABAD1CABBDFD9CEB6AB945742125844145D491C5945175440124A3404513B0D +9C9176AFA792B0A793B4AC99BAB2A0B9B19FADA48FA09680BAB6AAC3C6CDC7CDD9C7CCD7 +C9CED8CACFD9CBCFD9CCD0DACDD1DBCFD3DCD1D5DED2D6DFD4D8E0D5D9E1D6DAE2D9DCE3 +DADDE4DDE0E6DEE1E7E0E3E9E2E5EAE3E5EBE7E9EDE8EAEEEAECF0EDEFF2EDEEF2F0F1F4 +F0F1F4F2F3F5F4F5F6F4F5F7F6F7F9F7F8F8F8F9FAF9FAFBF9FAFBFBFBFCFCFCFDFCFCFD +FDFDFEFDFDFDFEFEFDFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFF2F2F7D0D0E4302E85 +0000680A076F0A076E04006A1E1E7CBBCCE4DAEDF8D4E7F5D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F6D4E7F5DAEDF8C2D2E7 +95A0C7100A6505005D07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F06005E0C05622622758B91BC +E7F6FEDFECF7E0EEF8E0EDF7E4F5FF9E8187560A0A5506065100005301017E151499211F +96232092221F932421BE423FCF4B47C13E3ABD3935B9332FAD2A279D25226B19175D1514 +5C15135213114E121048121044100F400E0D3B0D0C380D0C300B0A2D0B0A2A0A09280A09 +2509082008071E08071B0706170605130404120408100315170550190664180560180560 +19066410032D050100050202040101040101030101030101020000010000010000010000 +0000000000000000000000000000000000000000000000000000000300000C030344100F +A72724AF2925AF2925B42D29B7302CBA3531BE3A36CD4642AF413E7128250A0202070000 +3200005200005000005608095E1719AAA6B8C9DFF6C6D7EEC7D9EFC8DAF0C8DAF0BECEE9 +8D97C30C076105005B06005C06005B05005C06005D07005D06005E07005D07005E07005F +07005E07005F07005F07005F07005F07005F07005F07005F06005E08016005005D8298C5 +BADEF3B5D6EEB0D4EDA6CEEB87BEE572B3E168ADDF52A1DA4B9DD84A9CD74D9ED84FA0D9 +5BA6DC8DC1E79DCAEAA9D1EDA9D0ECADD2EDAFD3EDAFD3EDAFD3EDB1D5EE9ECAEA71B2E0 +61A9DD509FDA4A9DD8469AD7469AD7489EDA3F88CA2E62AF0B0B7208046D09066E0C096F +000067524C8CD4C9C1EFE3CCF5E9CEF5E9D0EAD2A0E3C37FDEB96DD8AF58D6AE56D8AF5B +D9B160D8B260D6AF5CD4AB57D4AE5CE5CD9CE9D6AFECDCBBEDDEBEF0E3C9F1E5CCF0E4CB +EEE2C8EEE2C8E6D2ADD6B779C89F4EC09339C2963EC39843C49A48C49D4FC49E51C39C4E +C29B4DC19A4BD0B37AE7DABEE8DABFE8DAC0E7DAC0E6D9BFE7DAC0E7DAC0D3BD90C3A367 +BE9C5BAD8536A87D2AA2761EA47B26A7802FAB853AAB853AAD8841AF8C49C7AF80D7C7A8 +D6C5A4DACBAEDCCEB3DCCFB5DCCEB4DCCFB5D4C4A5C8B58DA484448D65178A6111886010 +8962158F691F936F2A93712D9674329674339B7B3EC1AE89CEBFA1D1C4A8D1C4AAD3C6AD +D3C7AED3C7AED4C8B0D3C6ADCFC2A8CCBFA3B6A37B78540C714B00724E04734F07785510 +81622383662985672B84662A83662AB09D78CABEA5C9BDA4CDC2ABCEC3ADCCC1ABCBC0A8 +C6BBA1BCAE90B7A788B09F7DB4A48499845A63430464450672561D755A21775E28775E28 +755C26765C277A602D7D65348B774BA69776C7BEAAC4BAA5C4BAA5C4B9A4C2B7A1BAAF97 +B5A98FAD9F82A99B7DA192736C5523634C16695321624A175B430D4D3200492E01452B00 +664F228D7C57D4CDBED9D2C6D9D3C6D8D2C4D6D0C2D1CBBBD0C8B8CDC6B5D0C9B9D1CABA +D1CBBBD2CBBCB5A992725F36645124594517564215543F114A3303624F25A89E87B1A894 +B2A995B5AD9ABCB4A3BAB3A1ADA38EA29983BEBAB0C4C7CEC7CDD9C7CCD7C9CED8CACFD9 +CBCFD9CCD0DACDD1DBCED2DCD0D4DDD1D5DED3D7DFD4D8E0D7DAE2D9DBE3D9DCE4DCDFE6 +DDE0E7E0E3E8E2E4EAE3E5EBE7E9EDE8EAEEEAECF0ECEEF1EDEEF2EFF0F4F0F2F4F2F3F5 +F3F4F6F4F5F7F6F7F9F7F8F8F8F9FAF9FAFBF9FAFBFBFBFCFBFCFDFCFCFDFDFDFEFDFDFD +FEFEFDFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFF9F9FBFDFCFD4643920000670B086F +09066E07046D0D0A709DAAD0E0F4FCD3E6F4D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D9ECF8D2E4F3140F68 +05005D07005F06005E07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F06005E07005F08016000005535357FDAE7F5E3F0F9 +E1EEF8DFECF6E6F8FFCBCDD5886066570E0E5100004F00005B050575111092211F90201D +922724BF4642CD4944C03C38BD3834B8322EB32C28B92D298B211F561514591614511311 +4D121047110F400F0E3E0E0D380D0C360D0C300C0B2D0B0A2A0A09260A09240908200807 +1E08071B07061604051705041204081103151705501906641805601805601906640F032D +060100060202040202050202040101020000030101010000000000000000000000000000 +000000000000000000000000000000000000000000070101751B199A2420AD2824AB2824 +AF2925B22C28B32D29B9342FBF3A36C5423EC74945AE413E1402022D00004E0000550203 +4D00006325298E717DC4D6EDC7D9F1C7D9EFC8DAF0C5D6EED2E5F87B82B532327D000056 +07015D05005B05005B06005C07005D06005D07005E07005D07005E07005F07005E07005F +07005F07005F07005F07005F07005F07005F06005E0903610B0563A5C3E2B9DCF2B5D6EE +AFD4EDA1CCEB88BEE572B3E168ADDF51A0DA4A9DD8489CD74C9ED9509FDA5CA6DB93C4E7 +A0CBEAA8D0ECA9D0EDACD1EDB0D4EEB0D4EEAFD3EEB1D4ED99C7E96AAEDF5DA7DC4D9ED9 +489CD8469AD74699D64AA2DD3878BF1C36910A097008056D09066E0C096F0000686E6797 +FAEED1F0E4CCF5E8CFF4E6CCE8CE96E2C27CDDB86AD8AD56D7AC57D8B05FD9B364D8B262 +D6AF5CD3AA54D6B264E9D6AEEAD8B3EBDCBBEDDEC0F0E3C9F1E5CDF0E4CCEEE3C7EFE2C8 +E2CCA0CDAB5FC49A45BE9137C0943DC39844C29B49C49D4EC39C4FC19A4AC19C4EC29D52 +D8C090E9DCC4E7D9BFE8DBC1E7DAC0E7DAC0E8DCC3E5D7BBCDB37FC09F60BA9752AA7F2D +A57A25A37721A67E2EA98235AB853BAB853BAD8943B99C62CEBA91D6C7A5D6C5A4DBCDB0 +DBCFB5DCCFB5DBCEB4DCD0B7CDBB98B59A659B78328A6212875D0C8A61138D661B906B23 +94712E957330967533937230A3874FCDBEA0D2C4A9D1C4A9D2C5ABD4C6AED3C7AFD4C8B0 +D4C8B0D2C4ABCEC0A5C5B596A189576E4800724D03734E067955117D5C1B84662986682C +86682D8165288D723CC2B396CBBEA6CBBFA7CFC3ADCFC4AECBC0A9CABEA5C2B59AB5A586 +B0A07EB1A180B4A6867E64316141006D5013755A22775D26775E28755B26745B24765D29 +7C633280693AA79876BCB197C7BEAAC4BAA4C4BAA5C2B8A1BFB59FB6AB92AFA285A89B7D +B0A3898C79536047126A54236951205C430E533A044A2F00492F01452B007B683FA09376 +C8C0ADD6CFC1D9D3C6D5CEC0D4CDBECFC8B8CDC6B5CCC5B4D0C9B9D0CABAD2CBBCBBB09B +AC9F85A09174816F4A533F0F544012543E12523D0F837554B7AE9CB3A995B3AB97B7AF9C +BEB7A6BDB5A4ADA48EA69D8AD2D2D1C7CBD3C6CCD7C8CCD7C8CDD8CACFD9CBCFDACCD0DA +CDD1DBCED2DCD0D4DDD1D5DED3D7DFD4D8E0D7DAE2D8DBE3D9DCE4DCDFE6DDE0E7E0E3E8 +E2E4EAE3E5EBE7E9EDE8EAEEE9EBEFEBEDF0EDEEF2EFF0F4F0F2F4F1F2F5F4F5F7F4F5F7 +F6F7F9F7F8F8F8F9FAF9FAFBF9FAFBFBFBFCFCFCFDFCFCFDFDFDFEFDFDFDFEFEFDFEFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFBFBFCFFFFFF605EA10000680A076F09066E09066E +05016B8A95C3E0F5FDD2E5F3D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D5E8F5D5E8F5D7E9F6484B8E00005408025F +07005F06005E07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F06005E07005F06005E151069B3BED9ECFBFFE1EEF8E0EEF8 +E3F2FCD5DDE8BDBCC76F35384900005000005602025D0505831A1891221F952724C24844 +CA4844C13D39BD3834B7312DB22C27B42B28A328247016145E13114C13114D121048120F +400F0E3D0E0D380D0C370D0C310C0B2D0B0A2A0A09260A092509081F08071B07061A0706 +1705051504041204081103151705501906641805601805601906640F032D060100070202 +040101040101030101020000020101010000000000000000000000000000000000000000 +000000000000000000010000060101310B0B89201D93221FA32622A92724AC2824B22B28 +B42D2AB83330BE3935C4403CC64946B144403707064500005000005001014B0000845E68 +B5BBCFC2D2E9C6DAF0C7D9EFC6D8EFCDE0F4C9DBF146488D120E6506005C06005C06005B +05005C06005C07005D06005D07005E07005E07005E07005F07005E07005F07005F07005F +07005F07005F06005E08015F01005A191A6E5660A0A9C8E5B7DAF1B6D7EEAED3ED9FCBEA +87BDE571B2E067ACDE51A0DA4B9DD8489BD74E9FD950A0DA5FA8DD96C6E8A1CCEAA9D0EC +A9D0EDACD1EDAFD4EDAFD3EEAFD3EDB1D4EE96C6E866ACDE5BA6DC4B9DD8489CD8469AD7 +4698D64AA3DE336EB8131F800A097008056D09066E0A076E00006A867EA1FEF2D2F1E4CD +F4E8CEF3E6CAE7CB93E1C07BDCB668D8AE58D8AE5AD8B160D9B363D8B161D6AF5DD3A952 +D8B46BE9D7B1EAD8B3ECDCBCEDDFC1F0E3CAF0E4CCF0E3CAEEE1C7EEE2C8DFC798CAA456 +C49943BE9136C0923AC29844C39B4AC39D4EC29B4DC0994AC29C50C4A057DBC59AE9DCC4 +E8DAC0E8DBC1E7DAC0E7DAC0E8DBC3E3D3B5CAAE78BF9F5FB8954FA97E2BA47923A27720 +A87F2FA98236AB863CAA853BAE8A46C4AA78D0BD97D6C6A5D7C6A6DBCDB1DCCFB5DCCFB5 +DBCEB4DCD0B8C8B48DAB8C5098742D896011865D0B8A63158E681E916C2594722F957331 +96753493722FAA905CD0C2A5D0C3A7D2C5AAD3C6ACD4C7AFD3C7AFD4C8B0D3C7AFD1C3AA +CEC0A6B7A57E94793F6E4700714D03724F067957137E5E1C84672A86682C85692D816427 +977F4DC7BA9FCABEA6CCC1A9CFC4AECEC4AECBBFA8C8BCA4BFB297B2A281B09F7DB2A281 +AD9D7B73561C6748096F5217755B22775D25755C26745923735922765E2A7A6130856F42 +B5A88CC1B69FC5BCA7C4BAA5C4B9A4C0B69FBDB39CB4A88EAC9F82A89A7CA295767B663A +624A166A552466501D573E094F34014A2F00472D004B310091815EB0A58DBDB39FC7BEAD +D8D1C4D4CDBED1CBBACFC8B7CEC6B5CDC6B5D0C9B9D2CCBCCEC7B7AFA28AA89A7FA7997D +9585655A4518523E1057421668562E94876BB8B09EB4AA97B5AC99B8AF9EBFB8A8BEB7A6 +B1A893ABA391D2D5DBC7CBD5C6CCD7C8CDD8C8CDD8CACED9CACFD9CCD0DACDD1DBCED2DC +D0D4DDD1D5DED3D7DFD4D8E0D6DAE2D8DBE3D9DCE4DCDFE6DDE0E7E0E3E8E2E4EAE3E5EB +E7E9EDE9EBEFE9EBEFEBEDF0EDEEF2EFF0F4F1F2F5F1F2F5F3F4F6F4F5F7F6F7F9F7F8F8 +F8F9FAF9FAFBF9FAFBFBFBFCFBFBFCFCFCFDFDFDFEFDFDFDFEFEFDFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFDFDFDFFFFFF9F9EC602006A0A076E09066E0C0970000065565CA1 +B7C7E2D3E6F4D5E8F5D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D3E5F3E2F6FEA1AED00F09650D066306005E07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F06005E0801600000573D3D86BBC6DFD5E2F0E4F1FAE1EEF8DFEFF9 +E2FCFFBCBDC878454A5E15174F00004E00005B06056F100EA12C29CC4E49C74642C03C38 +BB3632B6302CB22B27B02A26B02925A9282491211F59151351131147100F410F0E3D0E0D +390D0C360D0C2E0B0A2B0B0A290A092509082409081E07061906051A0706170605120403 +1204081103151705501906641805601805601906640F032D060100060202050202040101 +030101030000020000020101000000000000000000000000000000000000000000010000 +0100001D06054B1310601715751B197A1D198E211E992321A02522AC2A26AF2C28B4302C +B73531BE3C38CA4946D1504C87221F4F00005200006423277F5660C1D2E8C9E2FAC5D8EF +C6D9EFC6D9EFC6D8EEB3C3E07278AE00005603005906005C05005B06005B05005C06005D +07005D06005E07005D07005E07005F07005E07005F07005F07005F07005F07005F07005F +07005F090260000057464E93C3E8FAB2D3ECB4D6EEB6D7EFACD1ED9CC9EA85BCE46EB0E0 +65ABDE52A1DA4B9ED84A9DD850A0D950A0D964ABDE9BC9E9A3CCEBA9D0ECAAD0EDACD1ED +ADD3EDAED3EDAFD3EDB1D5EE8DC0E661A9DD59A5DB489BD8479BD8469AD74699D7489FDB +244A9E05006809086F09066E09066E07046D110E71BDB4B8FEF1D2F3E6CEF4E7CDF1E2C2 +E4C687E0BD76DBB463D8B05BD9B15ED8B262D8B263D7B061D5AD5BD2A852DDBF81EADAB5 +EAD8B3ECDCBCEEDFC2EFE3CAEFE4CBEFE2CAEDDFC5EDE0C5D7B97EC59A44C1953CBD9035 +BE933AC19846C39C4DC29C4DC1994AC09747C4A158CBAB6CE2D1B0E9DCC3E8DCC1E7DAC1 +E6D9BFE8DBC3E2D4B6D9C59CC3A569BA9854B38E44A57A24A1751DA0761FA88032AA8338 +AD8942AA853CB5965AD4C29ED3C29FD5C5A5D8C9ABDCCEB4DDD1B7DCCFB5DBCDB3DACDB3 +B59B689A762F926D22875E0D875E0D8C671C8F6B22926F29957332967433967534967737 +BEAA82D2C5ABCFC1A6D3C6ADD4C7AFD5C9B0D4C8B1D5C9B1D2C6ADCFC2A8C6B79992763D +7D5B156F4A00714D0575520B7C5C1A7F612186682C86682C866A308D723BB19F79CEC3AC +CBC0A8CEC3ACCEC4AECDC2ACC7BAA2C3B59BB8A98AAF9E7BB3A382A08D66846C3B664707 +71541A72561D755B24755C25745A2372561F7258217962307E66369D8B66C8BFAAC6BCA6 +C4B9A4C4B9A4C1B6A0BCB199B8AC93ADA083AA9C7FA09170766133664F1B664F1D68511F +5E46114D3201492D004A3001472C006E592CB5AA94BAB19CB7AC96B5AA94C1B8A4CFC7B6 +CEC6B5CEC6B5CDC6B6CEC7B6D0C9B9D2CCBDBBB19BA39477A6977BA7997DAC9E84857551 +58431867552DA39880B2A995B9B19FB7AF9CBAB2A0BFB6A7C4BDAEC1BBABB8AF9DBAB5A8 +C9CDD7C6CAD5C7CCD7C7CCD7C8CDD7C9CED8CACFD9CCD0DACDD1DBCED2DCD0D4DDD1D5DE +D3D7DFD4D8E0D5D9E1D8DBE3D9DCE4DCDFE6DDE0E6DFE2E8E2E4EAE3E5EBE6E8EDE8EAEE +E9EBEFEBEDF0EDEEF2EFF0F4F0F1F4F1F2F5F2F3F5F3F4F6F6F7F9F7F8F8F8F9FAF9FAFB +F9FAFBFAFAFBFAFAFBFCFCFDFDFDFEFDFDFDFEFEFDFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFF +FFFFFFFDFDFEFFFFFFC6C5DD04016B09066E09066E0B086F0000673B3E8F8893C1D5E8F5 +D5E8F5D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D4E7F5DCEFFABBCBE2747CAF130F6703005C07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F04005C151269505093CAD5E9EBF7FEE1EEF8DEEDF7DAEBF6D2E2EF +C7D0DC723A3E4C00005302025100004B0000A0312FD04E4AC74743BF3A36BB3531B62F2C +B12A27AF2925AB2724A62723A72724801E1C64181644100E3F0F0E3C0E0D360D0C340C0B +2E0B0A2D0B0A2A0A092408072209081E08071906051A0706170605110302120408110315 +17055019066418056018056019066410032D050100040202050101050202040101020000 +0201010201010000000000000000000000000000000000000000000000000F0202410E0E +4E12125113115F1614671816801F1B8F231D982420A72824AB2B25B12F2BB63531BC3B37 +C84845D4524E972C2A4A00004D00008A6A76BDCCE2C3D6ECC3D5ECC5D8EFC6D9F0C5D7EE +D1E5F76C72A928297500005708025E05005B06005C06005B05005C06005C07005D06005E +07005D07005E07005F07005E07005F07005F07005F07005F07005F06005E07005F06005E +03005B7A8FBEBCDFF4B3D5EDB4D6EEB7D7EFABD1ED9AC8E983BCE46EB0E065ABDE53A1DA +4C9ED84C9ED951A0D950A0D966ACDE9DC9E9A2CCEBA9CFECAAD0EDACD2EDADD2ECAFD3ED +AFD3EEB1D4EE86BDE55EA7DC56A3DB469AD7479AD7469AD7479BD84599D71C338E060069 +09076F09066E09066E05016C1C1776DED3C6F8EACFF4E7CFF4E7CBF1DFBCE2C281DFBC75 +DAB360D8B05BD8B05DD7B261D7B263D7B061D4AC5BD2A956DFC48CEAD9B5EAD8B4ECDDBD +EDDFC2EFE3C9F0E4CBEFE3C9EEE0C5ECDEC1D2B26FC59B45C0953ABD9136BF953DC19847 +C39C4CC29B4CC09849BE9645C5A35DD0B47DE6D7BAE8DCC2E8DCC2E7DBC0E6D9BFE9DCC5 +DDCCA7D2BC8BC1A264B7934DB0893DA37820A07419A27622A88135AA843AAE8B44AA853C +BDA06BD6C6A4D4C3A1D6C6A6D8C9ADDCCFB4DDD0B5DBCEB4DBCEB5D8CAADAA8C51967128 +906B1E875F0E8860108E691F916D2492702A9674329674329676349C7E40C7B694D1C3A9 +D0C2A6D4C7AED5C8B0D4C8B0D4C9B2D5CAB2D1C5ACD0C4ABBFAE8B805F1C755108704C02 +724F087855117D5F1D81632486692D84682B876B319C8354BCAC8DCEC3ACCCC1AACEC4AE +CEC3ADCCC2AAC4B89DBFB195B4A382B09F7CB6A7878D7749684A0D6A4C0E73581F745820 +755B24755C2573582271571F745A237C6433897447AE9F81C8BFABC4B9A3C3B8A3C2B8A3 +BEB49DB9AD94B4A88EAA9D80AEA084978663604611664E1B67501F644C19583F0A4A2E00 +492D004A30004B3100897955BDB39FB6AC96B8AE99B6AC96AEA38BC5BCA9CFC7B6CEC7B6 +CDC6B5CEC7B6D3CCBDD0C9BAADA187A6967AA5977AA29477A6997DA296796A59337A6A48 +B9B19EB9B19FB9B1A0B8B09FBDB6A5C2BBACC6C0B1C4BDAEBAB2A0C3BFB5C8CCD5C6CBD5 +C6CCD7C6CBD6C8CDD7C9CED8CACED9CCCFDACDD1DBCED2DCD0D4DDD1D5DED2D6DED3D7DF +D5D9E1D8DBE3D9DCE3DBDEE5DCDFE6DFE2E8E1E4E9E2E5EAE5E7EDE7E9EDE9EBEFECEEF1 +ECEEF1EFF0F3EFF0F3F1F2F5F3F4F6F3F4F6F6F7F9F7F8F8F8F9FAF9FAFBF9F9FAFAFAFB +FBFBFCFCFCFDFDFDFEFDFDFDFEFEFDFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFE +FFFFFFE2E2EE1B187806036C09066E0A076E04006A23237F5A60A3D3E6F4D6E9F6D5E8F5 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D5E8F5D7EAF7CEE0F0BFCFE523207401005B08015F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F06005E0C0663100A658186B5E1EEF8DEEBF6E0EEF8DCECF7D3E4F1D3E5F39D878F +5303035302025301014E0000982D29D04D49C64440BE3935BA3430B62F2CAE2926AC2824 +A627239A232094221F7D1D1A721A185614123F0E0D3C0E0D350C0B320C0B2F0B0A2B0B0A +290A092509082409081E0807190605190606160505130403120408110315170550190664 +18056018056019066410032D050100050202050101050202040101020000020101010000 +0000000000000100000100000300000601010C03022308072D0B0A3B0E0C400F0D45100E +511311581412701B18801F1B8A201D9D2622A22823A92C28B0322EB73834C44541CF4F4A +A434325E0504621A1DAAA8BBC3D6EDC3D5ECC5D8EFC5D8EFC5D7EECADCF2A7B4D6262473 +0C076005005C06005C06005C06005B05005C06005D06005C07005D06005E07005E07005E +07005F07005E07005F07005F07005F07005F07005F07005F06005E09036116136BA0BEDE +B7DAF1B4D6EEB4D5EEB5D7EFAAD0ED98C7E984BCE46FB0E065ABDE53A2DA4D9FD94D9FD9 +52A1DA509FD968ADDF9ECBEAA3CDEBA8CFECAAD0EDADD2EDAED3EDAFD3EDAED3EDB0D3EE +80B9E35EA7DC54A2DA469AD7479BD8469AD7479DD94290D0131F7F07026B09066E09066E +06036D151173423D85F0E3CDF5E8CEF5E8D0F2E4C7EDDAB2E1C07DDFBB73DAB260D8AF5B +D7AF5DD7B161D7B263D6B062D4AC5BD3AB5AE3C996EAD9B5EAD8B4ECDDBEEEE0C3EFE3CA +EFE3CAEEE2C9EEE0C7E9D9B9CEAA63C49A44BF9339BD9138C09640C19948C39C4CC29B4C +BF9849BD9645CAAA6AD9C395E6D8BBE8DBC1E8DBC1E7DAC0E7DAC0E8DBC2D7C39ACDB482 +BF9F60B48E45AE8537A0751C9F7319A47927A98337AB853CAD8A43AB8841C5AD7DD7C6A6 +D5C4A3D7C8A9D9CBAEDCCFB5DDD0B7DBCEB3DBCFB5CFBF9DA1813F946F248D671A875F10 +8860138F6A21926E2794712E9675339573319C7D41A98E5ACBBC9DD1C3A9D1C4A9D4C7AE +D5C8B0D4C8B0D5C9B2D4C9B2CFC2A8CBBEA2AE996D77540C734E05714D0475520C7A5916 +81622383652886682D8265288D723CB19F7AC3B498CEC2ABCDC1ABCEC4AECCC1ABCABFA7 +C0B397B8A98BB1A07FB1A17FAE9F7D7A602A6243036E5116745A21755B22755B25745A24 +70551E725922745C26816A3BA39371B9AD93C6BDA8C3B9A3C2B8A3C0B6A0BCB199B5A98F +B0A489A89B7DA99C7F816E4360461167501E644C195D450E513704492E00482D00513707 +5E4615A09275BBB19CB7AD96B5AB95B3A993AA9E85AFA48CBCB29ECFC7B6CEC7B6CFC7B7 +D1CABBC4BCA9A6987CA49679A39578A29477A4977BA79C819A8E70A2967EBAB2A0BAB2A1 +BBB3A1B9B2A1C0B9A9C7C0B2C9C3B6C2BCADB6AE9BC3C1B9C7CDD7C6CAD5C6CBD6C7CCD7 +C8CDD7C9CED8CACED9CBCFDACDD1DACED2DCCFD3DDD0D4DDD2D6DFD3D7DFD6D9E1D8DAE3 +D8DBE3DBDEE5DCDFE6DFE2E8E1E4E9E2E5EAE6E7EDE7E9EDE9EBEFEBEDF1ECEEF1EFF0F3 +EFF0F3F1F2F5F3F4F6F3F4F6F5F6F8F7F8F9F8F9FAF9FAFBF9F9FAFAFAFBFBFBFCFCFCFD +FDFDFEFDFDFDFEFEFDFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFF7F7FA +4341900000690B086F09066E09066E08056D22227FC9DAEDD7EAF7D5E8F5D5E8F5D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D5E8F5D6E9F6E1F5FE676CA500005808026007005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F06005E07005F +07015F000057242174C0CAE1DAE5F2E2EFF9DDECF7D5E8F6D6EAF8D5EAF9784A4E450000 +5403034E0000952927CE4B47C4423EBD3935B93430B32E2BAB2826AA2825A026228B211D +811E1C721B196D19175D17134B120F3F0F0D330C0B320C0B2D0B0A2B0B0A290A09240908 +2309081E08071906051A0606150404110303120408110315170550190664180560180560 +1906640F032D040100050202040202040101050202030101020000020101000000000000 +0000000000001404032E0B0A360D0B360E0B330C0B350C0C370C0B3A0E0C420F0E481110 +5F16146F1916781D198F231F9623219E2925A72E2AAE3430BE413DCC4B47B8403D7A100C +99808EC8E3FCC3D7EEC4D8EFC5D8EFC4D7EFC5D7EFD1E4F75F639E00005106025C06005C +05005B05005C06005B05005C06005D07005D06005E07005D07005E07005F07005E07005F +07005F07005F07005F07005F07005F08026000005928297B6B7CB2B2D3ECB5D7EFB4D6EE +B2D5EEB5D7EFA9D0EC96C6E885BDE56EB0E065ABDE52A2DA4E9FD950A0DA52A1DA4F9FD9 +6CAEDFA0CCEAA3CDEAA7D0ECAAD1EDACD2EDAED3EEAFD3EDAED2EEAED3ED79B6E259A5DB +51A1D9459AD7469BD8469AD7479FD93B7FC409076E08056D09066E0B076E01006A353080 +817A9FF6EACFF4E8CFF5EAD2F0DFBEEAD3A5E0BE78DEBA71D8B160D6AE5CD7AF5DD7B162 +D6B062D7B163D3AC59D4AE5EE6CFA3EAD9B5EAD9B6EDDFC0EEE1C5EFE3CAEEE2C9EEE1C8 +EEE1C8E5D2ACCAA256C39843BF9137BD923AC09744C19A4AC29C4DC0994ABF9849BD9647 +D0B47BE2D2AFE7D8BDE8DBC2E7DAC1E7DAC0E8DBC3E6D9BFCFB787C7AB73BC9B59B0883C +AA80309F73199F7219A57D2EAC863DAC8840AA863FAC8B46CDBB93D7C5A5D6C5A5D8C9AC +DACDB0DDD0B7DDD0B7DBCDB3DBCEB5C2AE8397752D916D248A63148760108A6417906B24 +926F2995733096763593722EA58A53BCA980CFC1A5CFC2A7D1C4AAD4C8AFD5C9B0D4C8B0 +D5C9B2D4C8B1CDBFA4C0AF8E987D47704800724D037350087856127D5C1C84662A85672C +85672D806024987F4FC8BBA1C9BDA4CDC2ABCDC2ABCEC4AECBBEA8C9BBA5BBAE91B2A381 +B09F7DB1A281A4926D68490B62430171551A765B24775C25755B257459236F551D745B26 +755D288B764BBFB49CC3B9A3C4BAA4C3B9A3C1B7A1BEB39CB9AD94AFA387ACA083A7997C +998B686C5524634A1768501E5F4711543A034C3000492E01452B005E47157D6C43B6AB94 +B9AF99B7AD97B2A791AFA48DA79B819F9276A5997ECAC2B0D2CBBAD0C9B9C7C1ADB3AA8F +9F9171A39578A29476A39579A4987CAEA38AC0B7A4CBC4B4BBB3A2BAB3A1BEB7A6BFB7A7 +C4BDAECAC4B7CCC6B9C0B9A9AFA692C1BEB8C6CCD7C5CAD5C6CBD6C7CCD7C8CDD7C9CED8 +CACED9CBCFDACCD0D9CDD1DBCFD3DDD0D4DDD2D6DFD3D7DFD6D9E1D7DAE2D8DBE3DBDEE5 +DCDFE6DFE2E8E1E4E9E2E5EAE6E7EDE7E9EDE9EBEFEAECF1ECEEF1EFF0F3EFF0F3F1F2F5 +F3F4F6F3F4F6F5F6F8F7F8F9F8F9FAF9FAFBF9F9FAFAFAFBFBFBFCFCFCFDFDFDFEFDFDFD +FEFEFDFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFFFFFF615FA2000064 +0C096F09066E09066E08056D151476B0C0DDDCF0FAD4E7F4D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D6E9F6D3E6F4 +DDF1FB94A0C600005608026006005E07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F06005E07005F05005D +1610694C4C8FB0B9D6EDFCFFDDEBF6D6E8F6D3E5F4D7ECFAAA9EA87D4E535406064D0000 +A13230CD4A46C4423EBD3935B7332FB02D29A82824A627249624207F1E1B791C1A651816 +5B16144A110F440F0E430F0E3C0E0D390D0C300B0A2A0A092809082409082008071C0706 +1907061906061504041103021104081103151705501906641805601805601906640F032D +0401000502020501010502020401010301010201010200000C03021605042F0A0A340B0B +320C0B330C0B340C0A310B0A310C0A340C0B360C0B370D0C3D0F0D430F0F561413621714 +6C1917801F1C87211E9125219B2925A52F2CB83E3AC44540BF4B49A34545B5B2C5C4DBF3 +C3D6EDC4D8EFC3D7EEC7DBF1C5D8EFA9B7D826247303005907015D05005B06005C06005B +05005C06005C07005C06005D07005E07005D07005E07005F07005E07005F07005F07005F +07005F07005F06005E0903610000543D458CA5C3E2B0D1EBB5D7EFB4D6EEB3D5EEB6D7EF +A9D0EC95C5E785BCE46CAFDF62A9DD52A1DA4E9FD94FA0DA51A1DA4F9FD96DAFDFA0CBEA +A2CCEAA8D0ECAAD1EDADD2EDAFD3EDAFD3EDB0D4EEABD1ED75B4E15AA5DB51A0DA459AD7 +479BD7469AD749A1DC326AB408036C09066E09066E0C096F0000684C4689AFA5B2F3E7CF +F4E8CFF5EAD2EEDCB8E8D09DDFBD77DDB96FD8B160D6AE5CD7AF5FD7B164D6B164D7B164 +D3AB59D5B267E7D2AAEAD8B5EAD9B7EDDFC2EEE1C6EFE3CAEFE3CAEEE1C7EDE0C7E2CDA3 +C8A051C2953FBE9036BE933CC19845C19A4AC29B4CBF9848BF9849BE984AD3BA87E5D6B6 +E6D9BDE8DBC1E7DAC0E7DAC0E8DCC5E2D4B6CBB17EC6A971BA9856AD8638A77E2B9E7118 +9F731CA77F31AC863EAC8841A8843CB19252D2C09BD5C5A3D6C6A6D9CBAEDBCDB1DDD0B6 +DDD0B7DACDB2D8CAAFBBA3739571288F6A1E8961128861128B671A906D2693702B957431 +96753493712FAE9563C6B492CEC0A4D1C4A8D2C5ABD4C8AFD5C9B0D4C8B0D4C8B0D3C7AF +CCBDA2AF9B708D6F336F4900714D0376520C7B5A177F5F2085672A86682C85682D806024 +A48E63CBBFA6CABEA6CEC3ACCEC3ACCEC4AEC8BDA5C6B9A0B9AA8CB09F7EB3A382A5956F +8E77496848096B4D0E72571D755C25755B2573582171561F70561E765D29755B27988660 +C5BBA5C4BAA4C4BAA4C4B9A4C0B6A0BDB19AB7AA91AC9E82ADA085A394767E6B3F695120 +644C19654D1A593F0B4E33004B2F004A2F01462C006F5A2E9C8E70B6AC95B8AE98B6AC95 +B0A48DADA088A5997FA3977CA4997EBAB19BC9C1AED4CDBFB7AD95A89C7FA09274A39577 +A39578A69A7DA69A7FB1A790CCC4B5D4CEC1C6BEAFBEB6A6C0B9A8C2BBADC5BFB1C8C2B5 +C9C3B6B9B2A1A59A83C2C0BBC6CBD7C5CAD5C6CBD6C7CCD7C8CDD7C9CED8CACED9CBCFDA +CCD0D9CDD1DBCFD3DDD0D4DDD2D6DFD3D7DFD6D9E1D7DAE2D8DBE3DBDEE5DCDFE6DFE2E8 +E1E4E9E2E5EAE6E7EDE7E9EDE9EBEFEAECF1ECEEF1EEEFF3EFF0F3F1F2F5F3F4F6F3F4F6 +F5F6F8F7F8F9F8F9FAF9FAFBF9F9FAFAFAFBFBFBFCFCFCFDFDFDFEFDFDFDFEFEFEFDFDFD +FEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFBFBFCFFFFFFA4A3CA1714770E0B7108056D +09066E0A076E0000687078B2E1F5FDD3E6F4D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D6E9F6D7EBF7 +48498E00005909036106005E07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F06005E07005F06015E000055 +2B2A78C2CBE2E3F1FAD5E7F5D3E6F5D5E8F6D6EBFBD5EDFD9B7980791F1DC14947C84743 +C2413DB53531AC2F2BA62A2699242192231F7E1E1B6B19166317144A121042100E390D0B +370C0C360C0B340D0B380D0C3B0F0D390C0B360C0B330C0B360D0C2C0A09190605190706 +16050512040312040811031517055019066418056018056019066410032D050100040202 +0502020502020301010200000201010200000D0302170505260908260908290A092D0A09 +2909082A09092C0A092B0A092C0908310C0A390E0C3A0E0C44100F4C11105213125F1715 +6418166F1B197A201D8526239F3431AA3936BB4A48C35957C3BDD0C3DBF3C4D7EEC3D7EE +C2D6EEC2D5ED5D629F201F6F01005706005C05005B05005B06005C06005B06005C06005D +07005D06005D07005E07005E07005E07005F07005F07005F07005F07005F07005F06005E +07005F05005D0F0A6691ACD3BEE2F7B3D5EDB5D7EEB4D6EFB3D5EEB6D7EFA5CEEB8FC1E7 +84BBE469ADDE5EA7DC4D9FD94B9DD84D9ED951A1DA4E9FD972B2E1A1CCEBA1CCEAA8D0EC +ABD1EDAED3EDB0D4EEAED3EDAFD3EDA4CDEB6CB0E059A5DB51A0DA469AD7479BD84598D6 +469AD81D379106006909076E09066E0B086F0000698A83A3FBEED1F1E5CFF4E8D0F5EAD2 +EBD5A9E4C88DDEBA73DAB569D7AF5ED6AE5ED7B061D7B266D6B265D6B064D3AB5CDABA79 +E9D7B1E9D7B4EBDBBAEEE1C5EEE2C8EEE3CAEFE3CAEDE0C6E9D8B9D9BF89C39945BE9139 +BB8E33BF9440C19847C29A4BC19A4CBE9747BF9A4EC29F56DCC9A1E7DABFE6D9BEE7DAC0 +E6D9BFE6DAC1E8DDC5DAC7A1C5A870C2A46BB4914AA67E2BA276209C7017A07621A98338 +AC8741AB8842AC8B46C0A672D7C7A7D4C5A2D7C8A9DBCCB1DBCEB4DCCFB6DDD0B7D7C9AD +C6B28BAA8C518E681C896212865D0E8B661B8E6B22926F2A957330957532957534987A3B +C0AE87D0C2A6CFC0A4D2C5ABD3C6ACD4C8B0D5C9B1D4C8B0D2C6ADD2C6AEBEAD8B866626 +78530D6E4A00714D047756127E5E1C82632487692D85672B866A31917845BAAB8ACDC3AB +CCC0A9CEC4ADCEC5AECDC1ABC3B79CBEB194B2A281AF9E7CB2A281826A36684A0B6C4E11 +72551B755B23755B257359236F541C6E531B72582379602E826B3CB7AA90C7BDAAC4BAA4 +C4B9A4C3B9A4BEB39DB8AC93B0A388A8997CAEA08588764D614813664E1B634C195D440F +4E33004A2E00492E0050370459400C9B8C6DBEB6A2B8AE98B4A993B1A690AA9F85A79B81 +A4987EA79C81A79C83A89D84AFA68EBBB29DA092729D8E6DA19375A39578A5997DACA188 +ACA188C2B9A7DDD9CEDDD9CFDCD8CED0CABDC3BCADC5BFB0C5BEB0C1BBACBDB7A7ACA38E +9A8F75ACA8A1C6CCD9C5CAD4C6CBD6C7CCD7C8CDD7C9CED8CACED9CBCFDACCD0D9CDD1DB +CFD3DDD0D4DDD2D6DFD3D7DFD5D9E1D7DAE2D8DBE3DBDEE5DCDFE6DFE2E8E1E4E9E2E5EA +E6E7EDE7EAEDE8EAEEEAECF0ECEEF1EEEFF3EFF0F3F1F2F4F3F4F5F3F4F6F5F6F8F6F7F9 +F7F8FAF9FAFBF9F9FAFAFAFBFBFBFCFCFCFDFDFDFEFDFDFDFEFEFEFDFDFDFEFEFEFFFFFF +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFBFBFDFFFFFFBABAD63C3A8C0E0C7108056D09066E0C0970 +0000654F539CDDF0FAD4E7F4D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D0E3F2EAFFFF747BAF000052 +0A056107005F06005E07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F06005E07005F0A03610000587F83B3 +F3FFFFDAEBF7D3E6F5D4E7F5D2E3F2D5EFFDCACBD7AB696ECB5552C64440C03F3BAF322E +A82E2AA129258D221E85201D751C18631714581512420F0E3D0E0D350D0B320B0A300B0A +2E0B0A2E0B0A310C09340C0B410F0F4E1210521312410F0E1906051A0706170605130404 +12040811031517055019066418056018056019066410032D050100040202050101050202 +040101020000010101010101010000000000000000000000010000020100010100130404 +1906061C0705230907340C0B3F0F0C3B0F0C40100E48110F4912104E14115415135F1715 +691A186F1A188C2723992E2AB13B38BD3D3ABDABBBC3DCF5C3D5EDC3D7EECEE4F7ACBCDC +15156700005408025D05005B06005B06005C06005C05005B06005C07005C06005D07005E +07005D07005E07005F07005E07005F07005F07005F07005F06005E07005F07015F000059 +1C1970B9DDF4B2D3EDB5D7EFB5D7EFB3D6EEB2D5EEB6D7EFA2CCEB8CC0E683BBE46AAEDF +5FA7DD4C9ED94A9CD84C9DD853A1DB4F9FDA75B3E1A2CCEBA1CCEAA9D0ECACD1EDAFD3EE +B0D4EDAED3EDAFD3EDA1CBEB6AAEDF58A4DB51A0DA469AD7469CD84495D4418BCD142181 +06006909076E09066E09066E05036CA59CAEFFF8D6F1E6D0F4E8D0F5E9D2EAD3A3E3C589 +DDB971DAB365D7AF5DD6AF5FD6B062D6B265D6B164D5AF62D3AD62DCBE81EAD7B2EAD8B5 +ECDBBBEDE1C6EEE2C8EFE3CAEFE3CAEEE0C6E6D1ACD6B97DC19741BE8F35BB8E33BF9541 +C19846C19A4BC09B4DBF9648C09B51C3A35EE0CFADE8D9BEE6D8BDE7DAC0E6D9BFE7DBC2 +E8DDC4D6C198C4A66EC2A368B28D45A47A269F731C9D711AA17824A9843AAC8843AA8741 +B29252C6AE80D7C7A8D5C4A3D7C8ABDACCB3DBCEB4DCCFB6DDD0B6D6C7AAB8A170A48445 +8C6419855D0E865E0E8D681E906B23926F2B9674339575339575349C7F43C8B897CFC2A6 +CFC1A6D2C5ACD3C6ADD4C8B0D5C9B1D4C8B0D0C4ABD3C7B0B4A17876510A724E05704B01 +724C047959157F601F82642786682E83652A886C33A38F64C2B599CDC1ABCDC1ABCEC4AE +CDC4AECCC1A9C0B498BAAC8DB09F7DB2A280AD9C7A71541963420170541A72561E765C25 +745A247257216F531C6E531C745B2679602E8D784EC2B7A1C4BAA5C4BAA4C4B9A4C3B9A3 +BDB29BB6A991ADA085AA9B7EAC9E82756031654E19664F1C614A165840094B30004A2E00 +482E00543D09675021AEA389BCB49FB8AD98B3A790AFA48DA99D84A79B82A5997FA89C82 +A99E84ACA189ABA1899C8F71A19372A093739F9273A4987BA89B81AEA38BAEA38CCCC5B6 +DEDAD1DDD9CEE1DDD3DBD6CCC5BDB0C4BDAFC3BCADBDB6A6B6AE9DA69D879B8F76989185 +C7CDDAC5C9D4C6CBD6C7CCD7C8CDD7C9CED8CACED9CBCFDACCD0D9CDD1DBCFD3DDD0D4DD +D2D6DFD3D7DFD5D9E1D7DAE2D8DBE3DBDEE5DCDFE6DFE2E8E1E4E9E2E5EAE6E7EDE7EAED +E8EAEEEAECF0ECEEF1EEEFF3EFF0F3F1F2F4F3F4F5F3F4F6F5F6F8F5F6F9F7F8FAF9FAFB +F9F9FAFAFAFBFBFBFCFCFCFDFDFDFEFDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFFFDFDFDFFFFFFDCDCEA9694C113107406036C09066E0A086F0200692E2E86 +C3D4E9D8ECF7D4E7F5D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D4E7F4DBEFFAB1BFDB747AAE0A036106005E +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F06005F07005F08015F02005B2D2A7A7275AABECCE2 +D5E8F7D2E6F5D3E6F4D3EBFBCDCDD9C59197CA5754BB3E3AB33935A42F2B9D2A278D2421 +791C1A741B186719165313124C11103E0F0D3A0E0C350D0B320C0B310C0B340C0B360D0B +370D0B370D0B380D0C320C0B310B0A280A09190605190605160505130404110408100315 +17055019066418056018056019066410032D060100060202040101030101040101020000 +020101020000020101010000000000000000010000010000010000030000030000040000 +0501000701010801010701012205043E08074A0606580A09590F0E5D1212621A1A743032 +8A4446934B4EA64F51B14947BA9CA9C3DCF5C4D6EEBBCEE8B2C4E14D509204005907015C +06005C06005C06005C06005C05005B06005C06005D07005D06005D07005E07005E07005E +07005F07005F07005F07005F07005F07005F07005F06005E09036104005C6273ADB7DAF2 +B3D4EEB3D6EEB4D6EFB3D5EEB3D5EEB6D7EF9FCAEA89BFE580BAE36AAEDF61A9DD4E9FD9 +499CD74C9DD850A0DA4D9ED979B6E2A2CCEBA1CCEBAAD1ECADD2EDB0D4EEAFD4EEADD2ED +AED2ED9AC8E966ACDE57A3DB50A0D9469AD7479EDA408CCD2A56A610177A07026B09066E +0A076E03016B201C77D1C6C1FAEED3F2E7CFF4E9D0F4E8CEE7CE99E1C282DCB86FDAB364 +D7AF5DD6B060D7B163D6B165D5AF64D3AD5FD7B46EE0C48CEAD8B4EAD9B7ECDCBDEDE0C6 +EEE2C8EEE2C9EEE2C9ECDEC2DEC596D0B170C0943DBA8C2EBC8F35C09745C1994AC09A4C +C09A4CBE9648C4A15CCDB177E3D5B6E6D9BDE6D9BFE6D9C0E7DAC0E6D9C0E4D7BCD0B889 +C2A46ABE9F62AE883DA1751F9D70189E731DA37B29AA853CAB8842AB8842BFA672CDB991 +D6C6A6D6C7A7D9CAADDBCDB3DCCFB5DBCFB5DCD0B6CCBA97A98B4F9C7B398A6416855D0C +8861138F6B23906D2693712C9574319474339E8045AC9462CDBEA1CEC0A4D0C2A7D2C6AD +D3C7AFD5C9B1D5C9B1D3C8AFD0C3AACFC2A99E8551704B00724D03704A01724D067A5917 +7F5F2082642785682E816327967D4CBDAD8FC7BAA1CDC2ACCEC3ADCEC4ADCDC2ACC8BDA4 +BBAE90B5A585B09F7DB4A38496815668490B6A4C0F73571F755A22765C2571561F6F541C +6F551D70561F775E2A8C774CA49472C6BCA7C4BAA4C4BAA4C1B7A1BFB59EB8AD94B1A58A +AB9D81AEA18698886568511E685120634C185D450D533904492E00482E004A31006E5A2C +8D7D5AB6AC95B9AF99B6AB95AEA38BAB9F87A89C82A79C82A79B82A99D85AA9E86ABA088 +A094796450257F6D47938462A29577A79B80ACA187B0A68FB9B09BD8D2C7DEDAD1DFDBD1 +E0DBD2E0DCD3CEC8BBC0B9A9BCB5A4B6AE9CB2AA979D927B817356928C7EC8CEDBC4C9D3 +C6CBD6C7CCD7C8CDD7C9CED8CACED9CBCFDACCD0D9CDD1DBCFD3DDD0D4DDD2D6DFD3D7DF +D5D9E1D7DAE2D8DBE3DBDEE5DCDFE6DFE2E8E1E4E9E2E5EAE6E7EDE7EAEDE8EAEEEAECF0 +ECEEF1EEEFF3EFF0F3F1F2F4F3F4F5F3F4F6F5F6F8F6F7F9F7F8FAF9FAFBF9F9FAFAFAFB +FBFBFCFCFCFDFCFCFEFDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFEFEFFFFFFF7F7FADBDBE919177706026C09066E09066E08056D0C0970AAB8D9DFF3FC +D3E6F4D6E9F6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D4E7F4DFF3FCC9DBED0B056206005E08015F06005E +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F06005E06005E07005F04015C0000537C83B3E6FCFFD3E7F5 +D1E3F3D3ECFBCFCFDAC99195C85653B13936A936339A2E2B8E282579211E671816641715 +54141343110F40100E380D0B370D0C3E0D0D3D0E0C3F0F0C3E0F0E3A0D0D320B0A280A09 +2709082208072008071D0706190605190605160505130504100408110315170550190664 +1805601805601906640F032D060100070202050202040101020000020000030101020000 +020101010000000000000000000000000000000000000000000000000000000000000000 +0000000600003100005400005200005301024F0000530A0B66282C9F8C9CB3B0C2B0AEC0 +AF99A9AA7781B8A9BAC1D7F1CCE1F5A5B4D75A5F9C06065A04005A06005C05005B06005B +06005C06005C05005B06005C07005C06005D07005E07005D07005E07005F07005E07005F +07005F07005F07005F07005F07005F06005E0A056209036195B3D8BADFF5B2D4EDB3D5EF +B4D6EFB3D5EEB3D5EEB6D6EF9BC9EA87BDE57EB9E369ADDF61AADD50A0D9499BD74A9CD8 +4D9FD94B9ED97EB8E3A2CCEAA2CCEAACD1ECAED2EDB0D4EEAED4EEACD2EDADD2ED94C4E8 +63AADD56A3DB4F9FD94699D748A0DB3C84C71420800C0D7308046C09066E0B076E00006A +373280F3E8CFF4EAD2F3E8CFF4E9D1F2E6CAE5CA90E0C17FDBB66CD9B160D7AE5CD6B061 +D7B164D6B065D4AE63D2AB5CDBBA78E3CA97E9D8B5EBDAB8ECDDBFEDE0C7EEE2C9EEE2C9 +EEE1C9EADBBDD7BE85CDAB67BD9138B88829BB8F36C09746C1994AC09A4CC0984BBD9647 +C8AA6AD6C091E6D8BCE5D7BBE6D9BFE6D9BFE7DAC1E4D7BCDFCEAFCAB07DC1A367BD9B5B +AA82349C70179B6E159F7622A57D2DAA863FA98740AC8A44CEBA93D4C3A0D5C5A5D7C8AA +D9CCAFDBCFB3DCCFB5DACEB4DCD0B8C1AB819E7D3B96732D896113865D0D8B641A916D26 +916E2794732E957633947331A9915CBEAC85CFC1A4CDBFA2D1C5AAD3C7AFD4C8B0D5C8B0 +D4C9B1D2C6AED0C4AAC8BB9D88692A6C4800714D03704A02724E087C5B1B826123846428 +84682D806226A69067CDC1AACBBFA6CEC2ADCEC4AECDC3ADCDC2ABC5B9A0B6A788B09F7E +B0A17FB4A5867D632F64450771551C765A23775C25755B246D521A6B501870571F745B25 +7A612FA49371BAAE94C6BDA8C4BAA4C3B9A3BFB59EBCB29BB3A78DAC9F83AA9C80ADA185 +84734A624B16685220614916583E084F3302492D00492F014E350087754FB2A68EB9AE98 +B7AD97B4A891AA9F85A89D83A89B83A79C82A89D84AA9E86ADA28BA4987E8A7B57432B00 +4E370C74613AA99D80AA9F85AFA68DB3AA93C5BDADDFDBD2DEDAD1E0DCD3E1DDD3E2DED6 +D6D2C6BFB7A7B5AD9BAFA792AFA6929589726554378F897DC9CFDBC4C8D3C6CBD6C7CCD7 +C8CDD7C9CED8CACED9CBCFDACCD0D9CDD1DBCFD3DDD0D4DDD2D6DED3D7DFD5D9E1D7DAE2 +D8DBE3DBDEE5DCDFE6DFE2E8E1E4E9E2E5EAE6E7EDE7EAEDE8EAEEEAECF0ECEEF1EEEFF3 +EFF0F3F1F2F4F3F4F5F3F4F6F5F6F8F5F6F9F7F8FAF9FAFBF9F9FAFAFAFBFBFBFCFBFBFC +FCFCFDFDFDFEFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFF +FDFDFDF4F4F83C398C0000680A076E09066E0A076F020069838DBEC5D6EBD7EAF6D5E8F5 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D5E8F5D5E8F5D5E8F5D5E8F551539500005406025E07005F06005E07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F06005E08026004005C2F2D7C7B83B4C1D2E8DDF1FBD3ECFB +CFCDD9C5888CBE4F4CA4312D9C2D2A811D1A71161263120F5C15135A15135012114B110F +48100E48110F481110400F0E3C0F0D3A0E0C350C0B330C0B2E0B0A290A09280A09240908 +2108071D07061A0705190606150404110403110408100315170550190664180560180560 +19066410032D050100050202050202040101030101020000020000020101000000010000 +000000000000000000000000000000000000000000000000000000080000200000300000 +4C00005200004F00004E010150000080565FB3B5C8BBC4D9BDCCE3BBCAE2BBC7DEBAC0D6 +C1CFE5C7DCF3BED2EB4E5293120E6509045D05005B06005C06005B06005C06005C06005C +05005C06005C07005C06005D07005E07005D07005E07005F07005E07005F07005F07005F +07005F06005E0801600100591A196F6B80B59FC0E1B5D9F1B2D5EEB3D6EFB3D6EFB2D5EE +B3D5EEB5D6EF9AC8E984BCE47CB8E266ABDE5EA7DC4E9FD9499BD74A9CD84C9ED84D9FD9 +82BAE4A2CCEAA1CCEAACD2EDAED3EDB0D3EDADD2EDABD1ECABD1ED8FC2E75FA8DC55A2DB +4D9ED94698D648A0DB336DB70A0A700A097008056D09066E0A076E0000695E5790FCF0D3 +F3E7CFF4E8CFF4EAD2F0E3C5E3C68BE0C07FDAB66AD8B15FD6AE5BD6B163D7B165D5B064 +D4AE62D3AB5CDEC085E5CEA0EAD8B5EBDBBAEDDEC1EEE1C9EEE2C9EEE2C9EEE2CAE8D7B5 +D4B579CCA962BD9036B88A2ABC9037C09747C19A4BC09A4CBF984BBE974BCEB27ADDCBA5 +E5D8BBE6D8BDE6D9BFE6D9BFE8DBC2E2D3B6D9C6A1C9AF7BBEA062B99755A87F2F9A6D12 +9A6D14A27927A67F31AB8741A8843DB39455D3C29ED4C4A2D5C6A5D7C9ABDACCB0DCCFB5 +DCD0B6D9CCB2D6CAADB69D6B9B7835946F28876011865F108C671D916E28926F2A947330 +957533947533B49F71C8B897CEBFA3CEC0A4D2C5ABD4C8B0D5C8B0D4C9B0D4C9B1D1C5AD +CFC3A9BDAC897D5C186E4A00704C02704D0574510C7D5C1C82632483652884672C84672D +B3A27FCCC0A9CCC0A9CEC4AECFC4AECCC1ABCABFA8C2B59BB3A383B0A07EAF9E7CA5936F +6F52186B4E1173571E755C24755D267258226C50176C5019745B25755C27836C3EB6A98E +C2B7A1C5BAA5C5BAA4C2B8A2BEB39CBBAF98B0A388AB9E81AC9F8392825D786336674F1D +68511F5D44105035014C3100492E00482F0057400C9E9072BAAF9BB6AC95B6AB95B0A58D +A89C82A79B81A79C83A89C82A99E85ABA088B1A790887957645124442D01422901553F16 +9F9273B3AA93B2A890C0B8A5D0CABDDFDBD2DFDBD2E0DCD3E0DCD3DFDAD2D6D2C6CBC4B6 +B5AD9AA9A08CAEA6918A7D65473213928C80C9CFDCC4C8D3C6CBD6C7CCD7C8CDD7C9CED8 +CACED9CBCFDACCD0D9CDD1DBCFD3DDD0D4DDD2D6DED3D7DFD5D9E1D7DAE2D8DBE3DBDEE5 +DCDFE6DFE2E8E1E4E9E2E5EAE6E7EDE7EAEDE8EAEEEAECF0ECEEF1EEEFF3EFF0F3F1F2F4 +F3F4F5F3F4F6F5F6F8F5F6F9F7F8FAF9FAFBF9F9FAFAFAFBFBFBFCFBFBFCFCFCFDFDFDFE +FEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFDFDFDFFFFFF +918FBE0100690D0A7008056D0A076E04016B2D2E85757DB5DEF1FBD3E6F4D5E8F5D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D4E7F4DAEEF9C8DAEC3534800D076308015F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F06005E07005F03015C000056404189BCCBE2D4EEFDC5A6AEB84944 +AA423F923A3A8B3D3E80474978474A713A3E580E0E5507065707075503025202014C0404 +4A0606410B0A3A0C0B380C0C310B0A300B0A2B0A092809082809082309082008071D0706 +1A07061906061404051204031104081003151705501906641805601805601906640F032D +050100050202040101050202030101020000020101010000010000010000010000000000 +000000000000000000020000060000190000330000400000540000540000540202510000 +590E0F896672A59BABC4D5ECCBE3FBC6DBF3C1D8F1BFD7F0BED6F0BED7F1BED5EE6C74AB +31327D01015701005705005B06005C05005B06005C06005C06005B05005C06005D07005D +06005D07005E07005E07005E07005F07005E07005F07005F07005F07005F06005E07005F +07005F080462758DBFB7E0F6AED3EDB2D5EEB3D6EFB3D5EFB2D5EFB2D5EEB2D5EFB3D6EE +95C5E882BBE47AB6E262A9DD5AA5DB4B9DD8489BD74A9CD84A9DD850A0DA8ABFE6A2CDEB +A1CCEBACD2EDAED3EDAFD4EDADD2EDACD1EC9FCBEA83BCE45AA5DC53A1DA4A9CD84499D7 +469CD81C358F06006909066E09066E08056D0B086F0B076EB3A9B4FDF1D3F3E7CFF3E8CF +F4EAD3EEDCB7E1C283DEBE7AD9B364D7AF5CD6AF5ED7B165D7B166D5B064D3AD5FD4AE61 +E3CC9DE8D4AEE9D8B5ECDDBFEDE0C4EFE2CAEFE2CAEDE1C7EDE2C8E1CCA0CEAA65C8A256 +BB8E33B88B2DBC8F38BF9748C19A4DBF994DBF994EC09C54D8C298E5D7BBE5D7BCE7D9BF +E6D9BFE6D9BFE8DCC4DBC9A4CFB787C6AC76B99857B28E48A17621976A0E9B6F18A57D2F +A88237AB8943AB8945C1A775D6C7A7D4C4A2D7C8A9D9CBAFDBCEB3DDCFB7DCD0B8D4C5A8 +C2AD83A5874B95712A8E681E865F118863178F6C2392702B93712E9575339473319C7F43 +C6B594D0C2A6CEC0A4D0C3A8D3C6ADD5C9B2D5C9B2D4C8B0D3C8B0D1C5ADBCAB889E8553 +714C02714C01704C0274510C7856137E602283652885682C83662C98804FC8BCA2CCC1A9 +CDC3ADCFC5AFCEC3ADC9BDA5C5B89FBBAC8EAF9E7CB4A58499845B74582167490B73581F +755B23755C25745B256F531B6B4E156E531B7A612F7C6231A1906DC9BFACC6BCA7C4B9A4 +C2B8A3BFB49DB8AD95B6AA90ADA084AFA4889C8D6B6B55226B542269511F614916543A05 +492D00482E00513906573E097E6C44BAB19BBAB09BB4AA94B1A790AA9E85A4997EA69B80 +A99D85A99F86AA9F87ACA28AA09478533E133F2700412901452E014A3303786741ADA38C +B9B09BD9D4C9DDD9CFDFDBD1E0DCD3DEDBD1DCD8CEDAD5CAD3CEC1D3CEC1C3BDADABA18E +B0A7926B5B3E2A1200A8A5A1C9CFDCC4C8D3C6CBD6C7CCD7C8CDD7C9CED8CACED9CBCFDA +CCD0D9CDD1DBCFD3DDD0D4DDD2D6DED3D7DFD4D8E0D7DAE2D8DBE3DBDEE5DCDFE6DFE2E8 +E1E4E9E2E5EAE6E7EDE7EAEDE8EAEEEAECF0ECEEF1EEEFF3EFF0F3F1F2F4F3F4F5F3F4F6 +F5F6F8F5F6F9F7F8FAF9FAFBF9F9FAFAFAFBFBFBFCFBFBFCFCFCFDFDFDFEFEFEFEFDFDFD +FEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFBFBFDFFFFFFB3B2D209076E +0F0C7108056D09066E0A076E0B086F50539CDFF3FCD2E5F3D5E8F5D5E8F5D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5 +D6E9F6D2E4F3E5FAFF7277AC201F7103005C0A026106005E07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F06005E08015F0801600000588088B7D6EFFDC39295AD332EA03F3C96565A +9A6B72AA99A5ABA2B09E88955B12154C00004E0101530203530203530000500000440404 +3B0A09380B0A300C0B300C0B2A0A092809082809082409082108071D07061A0706190605 +1604051305041204081103151705501906641805601805601906640F032D050100070202 +040202040101020101030101020101020000030101020000020000010000000000000000 +0000000800001500003F00005600005401015304045101024D01014C00006F383FC3D5EC +CCE4FCC5D8EFC4D6EDC5D7EFC0D5EDBCD1EBBFD5EDCAE1F6AABBDC1E1E6C00005008025D +06015B06005C05005B06005C06005C06005B05005B05005C06005C07005D06005E07005D +07005E07005F07005E07005F07005F07005F07005F07005F06005E080260010058161B71 +A4C9E8ADD3EEADD2EDB2D5EFB3D6EEB3D5EFB3D4EFB2D4EEB3D5EFB2D5EE94C4E783BCE4 +7AB6E262A9DD59A5DB4A9DD8489BD74A9CD8499CD851A1DA8CC0E7A2CCEBA1CDEBABD1EC +AED2EDAFD4EEAFD4EEADD2ED99C7E97EB9E359A4DB51A0DA499CD84499D64498D6131E7F +07026B09066E09066E07056D0F0B70181473D3C7C1FBEFD2F3E7CFF3E8D0F4E9D4EDD9B1 +E0C17FDDBC77D8B262D6AF5BD7B060D6B166D7B065D5B064D3AC5DD5B064E5D0A6E8D6B1 +E9D9B6ECDDC0EEE0C4EFE3CAEFE3CCEDE0C7EDE0C5DEC696CBA75FC69F51B98C32B88A2F +BB8F38BF9747C1984CBF994EBF9A4FC19F59DCC8A2E6D8BEE5D7BCE7D9BFE6D9BFE6DAC0 +E7DCC4D7C39BCBB27FC5AA74B79450B08A419F731D986A0F9C711AA67F32A88339AB8943 +AF8E4FC6AF82D7C7A8D4C3A2D8C9AAD9CDB1DBCEB4DCCFB6DDD1B9D1C1A1B59B69A18142 +946F278D671C8660128A651B906D2592702D93722F967534947230A2864ECBBC9ECEC1A4 +CFC1A6D1C3A9D3C7AED5C9B2D4C9B2D4C8B0D3C7B0D2C5ADAE9B6F90753B6F4900714C02 +714C037755107958157E602382642B85672E84672EA48F65CEC2ABCCC0A9CEC3ADCFC4AF +CDC2ACC6BBA2C1B49AB7A788AF9F7DB6A8898972425E3D006C4E12745A22765C24755B24 +745A246C4F186C4F1770551D79612E7E6636B0A184C9C0ABC4BAA5C3B9A4C1B7A1BDB39B +B6AA91B3A78DADA084B5AA908E7D56654E196C552267501D5C440F4F35034A2D00492E00 +58420D604916958766BCB49FB6AC96B4AA93B0A68EA89C82A5997FA89C83AA9F86AA9F87 +ABA088AA9F888E805F432C004028004128004A3405533F0F6A573096886CBBB29FE2DFD5 +DEDAD0DEDAD1E0DCD3DDD9CFDAD6CBD7D2C6D0CBBDD0CBBDCDC7B9B4AB9AB0A7925C4A2B +2B1400B7B6B6C9CEDBC4C9D3C6CBD6C7CCD7C8CDD7C9CED8CACED9CBCFDACCD0D9CDD1DB +CFD3DDD0D4DDD2D6DED3D7DFD4D8E0D7DAE2D8DBE3DBDEE5DCDFE6DFE2E8E1E4E9E2E5EA +E6E7EDE7EAEDE8EAEEEAECF0ECEEF1EEEFF3EFF0F3F1F2F4F3F4F5F3F4F6F5F6F8F5F6F9 +F7F8FAF9FAFBF9F9FAFAFAFBFBFBFCFBFBFCFCFCFDFDFDFEFEFEFEFDFDFDFEFEFEFFFFFF +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFDFDFDFFFFFFD5D5E66C6BA815127505026C +09066E0A076F04016B252681C0D0E7DDF0FAD4E7F4D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D5E8F5 +D5E8F5C6D7EB8B94BF01005B01005B08005F06005E07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +06005F07005F07005F05005E1F1B703F4089A195B2C9B1B7C4B5BEC7CFDECBD8E9C8DAEB +C5D7E9C5DBEFA6A4B68F798766282D4A00004B00005101015201025100004B0001470202 +3F06053A07072B0908270A08250A092109081F08071D07061A06051A0706160505110302 +1104081003151705501906641805601805601906640F032D040100050202050202050101 +0300000200000200000001010001010000000000000100000A00001F00002A0000410000 +4800005000005201024F00014800004E010177454D978392B4B8CDC5D8F0C4D6ECC5D8EF +C6D9F0C4D7EFC2D7EFC9E0F5B1C4E28B99C538398205005A08025C06005B06005C06005B +06005C06005C06005C05005C06005C06005C07005C06005D07005E07005E07005E07005F +07005E07005F07005F07005F06005E06005E07005F07035F0A08654665A8A8D3EFABD0EC +AED3EDB3D5EFB4D6EEB3D5EFB3D5EFB2D5EEB2D5EFB2D5EE91C2E782BBE478B5E262A9DD +59A5DB4D9ED94B9CD84A9CD8469AD751A1DA8EC2E6A1CCEBA3CDEBACD1ECAED3EDAFD4EE +ADD2EDABD1EC92C4E77AB7E259A4DB4E9EDA469AD647A0DC3677BE0B0B7208046D09066E +0A076E01006B252179766F99E2D7C7F8ECD1F4E7CFF3E7CFF4E8D1EAD4A8DFBE7BDDBA74 +D6B060D5AE5BD7B062D6B165D6B164D5AF63D1A959D7B571E8D5ADE8D7B2EADAB9EDDEC2 +EEE0C6EFE3CCEEE3CCECDFC5E8D7B6D8BD87C9A55BC49B4DB98C31BA8C33BB903BBE9748 +BF984CBF9A4FBE994EC6A665E1D1B0E6D7BDE6D8BEE7DAC0E6D9BFE6DAC1E5D7BED0BA8C +C9B07BC2A66DB28F49AC85399C6F17996D149E7420A68137A8843CAC8946BFA472CEB993 +D5C5A6D4C4A3D9CAADDBCDB3DBCFB5DBCFB5DDD2B9C6B48DA5884C9C7A38906B228B6417 +8862168D6B21906E2792712E93723094743392712FB0996AD0C2A6CDBFA2D0C3A8D1C5AB +D4C8AFD4C8B1D4C8B1D3C7B0D4C8B1CABDA29378417E5E1B6F4B016F4B01734F097B5B19 +7D5E1F826528836429866930998152B6A684CEC4AECDC2ACCEC4AECEC3ADCCC1AAC3B69C +BBAD91B2A282B0A07FAB9A7871551C5F410170541A775B24765C25745A247358216C4E16 +6F541D735924806A3B907D53C0B59EC6BCA8C5BAA5C2B8A2BEB49DBAAF97B2A68AB1A489 +ADA08399886679653869521F6B54235E4612533A044D3101482C004B31006651207E6C43 +ADA187B8AD99B3A892AFA38CABA087A5997FA79A81AA9E85ABA088AA9F86AFA58F877856 +655026432A00422A00412900513C0E5B471B70603A867656B5AC98E5E2DADFDBD1DDD9CF +DCD9CFDAD5CAD6D1C5D3CEC2CFC9BBCEC9BACFC9BCD2CCC1AEA59044310E331D00B9BAC0 +C8CEDAC4C9D3C6CBD6C7CCD7C8CDD7C9CED8CACED9CBCFDACCD0D9CDD1DBCFD3DDD0D4DD +D2D6DED3D7DFD5D9E1D7DAE2D8DBE3DBDEE5DCDFE6DFE2E8E1E4E9E2E5EAE6E7EDE7EAED +E8EAEEEAECF0ECEEF1EEEFF3EFF0F3F1F2F4F3F4F5F3F4F6F5F6F8F5F6F9F7F8FAF9FAFB +F9F9FAFAFAFBFBFBFCFCFCFDFDFDFEFDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFF7F7FAEBEBF3312F8602006A0A076E09066E +0A086F0000677F88BCCFE1F1D3E6F4D5E8F5D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D8EBF7 +DEF2FC676DA51F1B7007015F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F06005E +06005E07005F04015D000056201F75565EA0A9BCDCD8EEFDCDE2F4CDE3F5CDE3F5CAE0F2 +C7E0F5CAE8FFB7C8DE8E7B8A7E58635207084D0000530203540303540101530000500000 +4801014403023A04032D05052A05051F0706180706190706150505110302100408120315 +17055019066418056018056019066411032D060100050102050202040101030101000101 +0001010900001600001C0000310000390000480000550000550000550202550303520202 +4B00005E1C1F8869769A8B9CC4DCF5C9E2FBC5DBF3C5D8EFC5D8F0C5D8EFC3D6EEC7DAF1 +B6C8E498A7CD3B3D8503005803015805005A06005B05005C06005C06005C06005B05005C +06005B05005C06005D07005D06005D07005E07005D07005E07005F07005E07005F07005F +07005F07005F06005E07005F05005C171E75518FCA6EACDCA7D0EDAAD0ECADD3EDB2D5EE +B3D6EFB2D4EEB2D4EFB3D5EEB3D5EFB0D4EE8EC2E781BBE477B5E161A9DD58A4DB4D9ED9 +4B9DD84A9CD8449AD754A2DA93C4E7A0CBEAA4CDEBADD2ECAED3EDAED3EEADD2EDA9D0EC +84BCE570B1E057A3DB4A9DD84597D44293D221419805006809076F09066E0B086F000069 +554E8CEDE0CAEFE3CDF5E9D0F4E8D0F3E7CFF3E7CDE6CD99DDBB76DBB76ED5AE5DD4AD5C +D7B063D5AF63D5AF62D4AE62D2AA5DDBBD82E9D7B4E8D6B2EBDBBBEEDFC4EEE1C8EFE3CB +EEE2CBEBDCC0DEC89BD2B376C6A054C19847B88C32B88C33BB913DBF974ABE984CBF9A50 +BE994FCFB47EE6D9BEE4D6BAE6D9BFE6D9BFE6DAC1E4D5BBDDCCABCAB17EC8AC79BD9F62 +AC873BA57D2C996D139C711CA27929A9863EA8853EB39356D1BE9AD3C2A0D4C4A3D6C6A6 +DACCB0DCCFB4DBCFB6DBCEB6DBCEB5B49B699C7B3A95722C8B66198962148C681E906F28 +906E2992702F93702F9575369B7E41C3B28FCFC2A5CDBFA2D1C5AAD2C7ADD4C9B1D5CAB2 +D5CAB2D3C6AFD5C8B2B4A17B7B5A1674510A704B02714D0678551281622583652985672D +8264298D733DBBAC8CC7BAA0CEC4AECEC4AECEC3ADCCC0ABC9BEA6BDAE91B3A281B3A383 +A08E66846C3A6646086E5115745920765C26755A2470561F6E531C6D5119755C27765E2A +9A8863B5A88DC7BEAAC5BAA6C5BAA6BFB59EB9AD94B5A98FACA083B1A5899D8E6C6D5626 +6B542367501E6149155137024A2D004A30004D3401543B0682704AB1A68EB7AD97B2A790 +ADA28AA69C81A5997FA69980AA9E86ACA189ACA189AEA48E9F9278553F0F452F00422B01 +4028004730035D491C6250267B6C4AADA48EBDB5A4D1CCBFD7D3C8DCD8CDD8D3C7D4D0C4 +D1CCBED0CABCCEC9BAD0CABDD1CBBEDDD8CDAAA089402B094D3B1BB4B5BCC8CEDAC4C9D4 +C6CBD6C7CCD7C8CDD7C9CED8CACED9CBCFDACCD0D9CDD1DBCFD3DDD0D4DDD2D6DFD3D7DF +D5D9E1D7DAE2D8DBE3DBDEE5DCDFE6DFE2E8E1E4E9E2E5EAE6E7EDE7EAEDE8EAEEEAECF0 +ECEEF1EEEFF3EFF0F3F1F2F4F3F4F5F3F4F6F5F6F8F6F7F9F7F8FAF9FAFBF9F9FAFAFAFB +FBFBFCFCFCFDFDFDFEFDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFFFFFF4B49950000680A076F08056D0C0970000065 +6269A9B7C7E2D7EAF6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D6E9F6D2E5F3DEF3FCA3AFD0 +565A9800005A08016006005E07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F06005E +07005F08015F08015F05005B6B71A8D6EBF8DBF1FCD0E6F6CBE0F2CADFF2C5DBEFC2D7EC +C0D8F0BFDCF7AAB2C9692F365C14174E01024B00004E0000520000520000530000520000 +4B00003E01013902022B05041F05051D05051604041203020F03080F0415170550190664 +1805601805601906640D032D0002000202020401010501010801010B01010C00001F0000 +3300003B00005100005500005300005100005000004C00004900005307085E17197B525B +BDD0E8C3DBF4C1D6EEC1D4EBC3D6EEC5D8EFC4D7EFC6D9F0CADDF3D3E8FA94A2CA535897 +0D076004005907015B06005B05005B06005C06005B06005C05005C06005B05005B06005C +06005C07005D06005E07005D07005E07005E07005F07005E07005F07005F07005F06005E +07005F0702600000552A439062AFE270B1E1A5CDEBAAD0EDADD2EDB1D4EEB2D6EFB2D5EE +B2D5EEB3D5EEB3D5EFB0D4EE8DC1E781BBE475B4E160A8DC58A4DB4D9ED94A9CD84A9CD8 +459AD756A3DB94C5E8A0CCEAA3CDEBACD1ECADD2EDAED3EEADD3EDA7CFEC7FBAE46EB0E0 +56A3DB4A9DD84598D53A7EC31A308C05006709086F09066E0A076E000069716A97FFF6D3 +F1E5CEF4E8CFF3E7D0F3E7CFF2E6CBE5CB95DCBA74D9B56BD5AE5CD5AE5ED6AF63D5AF63 +D5AF62D4AD61D3AD62DDC088E9D7B5E8D5B2EBDBBCEEE0C5EEE1C9EFE3CBEFE2CBE9DBBE +DAC290D0B172C69E51C09644B88B32B98D33BB923EBF974ABE984CBF9A50BE984ED3BA89 +E6D9BFE4D6BAE6D9BFE6D9BFE6DAC2E2D2B6D9C7A2C8AE7BC7AB77BC9C5EAA8336A47927 +996C119D7320A27A2CAA8841A8853EB69960D4C4A1D4C3A1D4C4A4D6C6A7DACCB0DCD0B5 +DBCFB6DBCEB7D8CCB1AE935C9C7A399570298A64168862158E6A21916F28906E2993712F +926F2D97783AA38951C7B897CEC1A4CEC0A3D2C5ACD3C7AED4C9B1D4CAB3D4CAB3D3C7AF +D4C8B2AA946877540E7450096F4B02734F0A79571583642784662B85672E7F6226927A46 +C5B89BCABEA5CEC3AECFC5AFCDC3ADCBBFA9C8BDA5BAAC8EB09F7CB5A68796805571551C +694A0C72541A745A21765C26745A236E541B6D51196E521B765D29775F2CA69676C0B59E +C5BCA7C5BBA6C5BAA6BEB49DB8AC92B3A78CAB9E81B3A78D91815B67501C6B5422664E1B +5C440E4D33004A2C004B3100533A0458400B90805EBCB29DB5AB95B0A58DACA187A59A7F +A4987DA79B82AB9F87ACA189ADA28AB3A9949182644A3301463000412A003F2700493305 +604C21635028847555BDB6A4C1BAA9C4BEAECFCBBEDCD7CDD6D1C4D3CEC1D0CABCCFCABB +CFCABBD0CABDD1CCBFD7D2C6AAA0874E3B175B4B2CB6B7BDC8CDD9C4C9D4C6CBD6C7CCD7 +C8CDD7C9CED8CACED9CBCFDACCD0D9CDD1DBCFD3DDD0D4DDD2D6DFD3D7DFD5D9E1D7DAE2 +D8DBE3DBDEE5DCDFE6DFE2E8E1E4E9E2E5EAE6E7EDE7EAEDE8EAEEEAECF0ECEEF1EEEFF3 +EFF0F3F0F1F4F3F4F5F3F4F6F5F6F8F5F6F9F7F8FAF9FAFBF9F9FAFAFAFBFBFBFCFCFCFD +FDFDFEFDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFEFEFFFFFFFCFCFDFFFFFFA7A6CB02006A0A076E09066E09066E06036C1E1D7C545AA0 +D6E9F6D5E8F5D5E8F5D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D6E9F6D3E6F4DAEEF9CBDDEE2E2C7B +00005A0A036106005E07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F06005E +08016009026004005C4F52948089B8BFD0E7D4E8F7CBDFF1C8DDF1C8DDF1C2D9EEBCD2EA +BDD4EDBCD6F1B4C6DF8D788871404864262A4F0000500000520101530304530303530202 +5401015100004C00004800004000003E00003701053002131E0550170664190560190560 +18066423032D3100003201013700003A00004000004A00004E0000540000540102530202 +5203045203035101014E00005406076C32387A4C54A096A7BED4ECC0D7F0BED4ECBED2EA +C1D6EEC3D7EFC3D7EEC3D5EDC4D7EFC0D2EBADBDDD757DB113116500005608025C06005B +06005B05005B06005C06005B06005B05005C06005B05005C06005C06005D07005D06005D +07005D07005E07005F07005F07005E07005F07005F07005F07005F07005F06005D0C0A66 +2B45925390CA63ADE16FB0DFA5CEEBAAD0EDADD2EDB1D4EEB3D6EFB3D6EEB3D5EEB3D5EF +B3D5EEAFD3ED89BEE67FB9E472B2E05FA7DC57A4DB4C9DD84A9BD7499BD7489BD85EA7DC +98C7E89FCAEAA3CDEBACD1ECADD2EDAED3EDADD2EDA4CDEB76B4E268ADDE52A0DA499CD9 +428FCF182D8A0D127608036C09066E08056D0B086E151172C2B7B7F9EDD1F3E7CFF4E8D0 +F4E9D2F2E4C9EEDDB9E2C58BDAB66CD7B162D5AD5CD5AE60D4AE63D5AE62D4AF62D1AB5E +D7B675E1C897E8D7B4E8D6B2EBDCBEEDE1C7EEE2C9EFE2CAEFE4CDE6D4B1D3B57ACDAC69 +C39C4DBE9441B98D34B98E38BC9241BD974BBD974BC09C55C3A25FDCC8A2E6D9BFE5D7BC +E5D9BEE5D9BFE7DBC3D9C8A3CFB98BC6AB75C3A76FB79654A47C2B9E721B996C13A17B2A +A58034AB8744A98642C2AA7CD5C5A6D3C3A2D5C5A6D7C8ABDACDB3DCD0B7DACEB5DCD0B7 +CCBA97A28244987533906C23876213886317906C26926F2A916F2C9271308F6E2BA2874F +BAA77FCBBB9DCEC1A4CFC2A7D3C7AED4C8B1D5CAB3D4C9B2D4C8B1D1C5ADCABEA290743B +704B02704C03714D057855127C5C1C83662A84672B85682F866A31AA976FCDC2ABCCC0A9 +CEC4AECFC5B0CCC1ABC6BAA1C1B59AB3A484B0A07EAC9C797459215F40006F5318745921 +765B2473582170551C6D511A6D51197259237C65348B764BBEB29AC6BCA7C4BBA5C3B9A4 +C1B7A1BAAF97B3A78CAEA286AFA388A89A7C745F306A532068501D5A410B513704492E00 +4A2E00543B075C4512705C30AFA48BB7AD97B2A790ABA086A89C82A79B81A89C82AA9E85 +ADA189ADA28BADA28AA79B82624E22402800422A01432C00462F005641136451296A5932 +A49A81C4BDAEC0B9A9BCB4A4BAB2A1C9C3B4D2CDC0D0CABCCEC9B9CFCABCD0CBBED2CDC0 +CFC9BBBAB29F9D91758374539D9583BFC2CAC6CBD7C5CAD5C6CBD6C7CCD7C8CDD7C9CED8 +CACED9CBCFDACCD0D9CDD1DBCFD3DDD0D4DDD2D6DFD3D7DFD5D9E1D7DAE2D8DBE3DBDEE5 +DCDFE6DFE2E8E1E4E9E2E5EAE6E7EDE7EAEDE8EAEEEAECF0ECEEF1EEEFF3EFF0F3F1F2F5 +F3F4F6F3F4F6F5F6F8F6F7F9F8F9FAF9FAFBF9F9FAFAFAFBFBFBFCFCFCFDFDFDFEFDFDFD +FEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FCFCFDFFFFFFCAC9DF09066E0A076E09066E09066E0A076E04006A2A2A83CEE0F0D7EAF6 +D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D5E8F5D3E5F3DDF2FB5C609D000051080460 +07005F06005E07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F06005E06005E07005F +05005E08055F1A156C9CA9CDD2E6F6D4E9F8CCE1F3C7DCF0C4DAEFBFD7EFBED6EEBAD2EC +BBD4EFC0E0FCA1A4B88568755A1113580B0C4F00004900004B00004D00004F0000530303 +5403035402035501025601005301064C01122405501606641905601905601606643B022C +5A00005700015701015601015602025402035403045202024E00004D0000490000490000 +520304580B0D652428978493B4BCCECAE8FFBDD2ECBFD4EDBFD5EDC0D5EDC1D6EEC1D5ED +C2D5EDCADDF3D0E5F9B1C2E0767EB323227200005408025D06005A05005B06005B06005C +06005B06005C05005C06005B05005B05005C06005D07005C06005D07005E07005D07005E +07005F07005E07005F07005F07005F07005F06005E08016004005A0F106A508CC85CA0D6 +61AADE71B1E0A5CEEBAAD1EDADD2ECB2D4EEB4D6EFB4D5EEB3D5EEB3D5EFB3D5EEADD2ED +86BDE57DB8E371B1E05EA7DC57A3DB4B9DD84A9CD8489BD74A9CD863AADD9AC8E99ECAE9 +A3CCEAACD1ECAED2EDAED3EEAED2EDA4CDEB70B1E165ABDE50A0D9479EDA3D84C70B0C72 +08066E09056D09066E07046D100C70272278DFD3C3F7EBD1F4E8D0F4E8D1F4EAD4F1E2C5 +ECD8AFE1C388D8B469D6B05FD4AD5DD4AE60D4AE63D4AF62D4AF62D1AA5DDABB7EE3CB9C +E8D7B3E8D6B2EBDDBFEDE2C9EEE2CAEEE2CAEFE4CDE4D0AAD1B071CCA965C29A4ABE933F +B98C34BA8E39BC9241BD974ABD954AC19D57C9AA6DDFCDAAE6D8BDE5D8BDE5D9BFE5D8BF +E7DBC2D5C299CAB381C5AA74C2A56DB5934FA177249B6F17996E16A37E30A78237A98644 +AA8745C9B388D5C5A5D3C3A1D5C6A8D7C8ACDBCEB4DCD0B7DBCEB4DCCEB5C4AF879D7D3C +96732F8E6920856010896319906D2993702B92702D9171308E6D2AA98F5BC5B593CBBC9E +CEC1A5CFC3A8D4C8AFD5C9B1D5CBB4D4C9B2D4C8B1D0C3ABC4B5968263236E49006F4B02 +714E077A58167E5E1F83682B84672B85682F8F7540B6A583CEC3ADCCC0AACEC4AFCFC6B0 +CBBFA9C5B79DBEAF93B0A07EB2A482A3916B65480961420070551C745C24765C2670551E +6D52186D511A6E531D745B26816B3C98865FC6BCA7C5BBA6C4BAA5C2B7A2C0B5A0B8AC93 +B0A388AC9F83B3A88E9D8E6C6A521F6D5524644C195137014D31004A2E004B300059410D +5D4714806E47B9B099B4A891B0A58DA99D83A59A7FA79B82A99D84AB9F86ADA18AAFA58E +AA9E8796886B4E37074027003F2700462F004C35035D4A1D65532B71613DB3AB96C3BCAC +C0B9A8BCB5A4B4AB98BBB3A1D2CCBFCFC9BBCEC9BAD0CBBCD1CBBFD4CFC4CCC5B7ABA08A +95876895876AC2BDB5C2C6CFC5CAD6C5CAD5C6CBD6C7CCD7C8CDD7C9CED8CACED9CBCFDA +CCD0D9CDD1DBCFD3DDD0D4DDD2D6DFD3D7DFD5D9E1D7DAE2D8DBE3DBDEE5DCDFE6DFE2E8 +E1E4E9E2E5EAE6E7EDE7E9EDE8EAEEEAECF0ECEEF1EEEFF3EFF0F3F1F2F5F3F4F6F3F4F6 +F5F6F8F7F8F9F8F9FAF9FAFBF8F9FAFAFAFBFBFBFCFCFCFDFDFDFEFDFDFDFEFEFEFDFDFD +FEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFEFFFFFF +F5F4F94542910000650C096F09066E09066E09066E0B086F939FCAE0F4FDD3E5F4D6E9F6 +D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D4E7F5D9ECF8BCCBE32F2D7D0C086305005D08005F +06005E07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F06005E07005F0A0361 +07005E19156C363682838EBCCCE1F3D5EBF9CAE0F3C2D9EEC1D8EFBED5EEBCD4EDB8CEE8 +B7CEE8B7CFEAB6CCE5AFBCD38A7280764952703C446323275A10124A00004A00004C0000 +4D00004F00004C000446001022044F17066419056019056017066437032D5200004F0000 +4E00004E00004D00004B00004900004D00005F181C66282D76444C7B4F589D8E9DBECCE1 +C2D2E9C3D6EDC1D3EAC0D3EBC0D5EDC0D5EDC0D5EDBFD4EDC1D6EEC7DCF2CCE1F59CAAD0 +7178AF30307C04005909045D06015B05005A06005B06005C06005B06005B06005C06005C +06005B05005B06005C06005D07005D06005D07005E07005D07005E07005F07005E07005F +07005F07005F07005F06005E07005F05005C06015E3C68AD60AADF60A7DC61A9DD73B3E1 +A6CFEBABD1EDADD3EDB1D4EEB2D5EFB3D5EEB3D5EEB4D6EFB1D4EEA8CFED84BBE47CB7E2 +71B1E05EA8DC58A4DB4B9DD8499BD7469AD74E9FD96BAEDF9AC8E99DC9E9A2CDEAACD1EC +ADD2EDADD2EDAFD3ED9CC9E96AAFDF62AADD4D9CD847A1DB2751A307026B09076E08056D +0B086E00006A38327F988EA2EBDFC9F5E9D0F4E8D1F3E8D1F4EAD5EFE0BFE8D2A3E0C181 +D7B164D5AD5DD4AE5FD5AF62D5AF62D4AE61D3AD60D2AC61DFC691E5D0A6E8D6B2E8D6B3 +EBDDC1EDE2C9EEE2CBEEE1CAEDE2CBDDC698CFAE6FCAA660C09745BC913DB98D37BA913E +BC9343BD974BBC954AC5A361D3BA89E2D1B1E6D8BEE6D8BEE5D8BEE6D9C2E3D5BACEB689 +C8AF7CC3A770BFA066B18E489E721D986C129D7220A68136A9843DA8843FB19154D1BE9C +D4C3A2D4C3A3D6C7AAD8CAAEDBCEB5DBCFB7DACDB3D2C1A2B8A071987633916D268A651A +855F118A651B906E2A916F2B92712E91702F927130B8A47BCDBFA1CBBD9FD0C3A8D1C5AB +D4C8B1D5CAB3D6CAB4D3C7B0D4C9B3C0AF8EA58E6074510A6F4A006E4A0073510C7C5E1D +7F622485672E83652A896E37AE9B75C2B498CDC2ACCDC1ABCEC4AECDC2ADC7BBA2BFB095 +B5A686AF9F7DB5A687876F3F6445066F5217745820765D25745A246E531A6C50176F541D +725821785F2C9D8C68B4A78CC5BCA6C3BAA4C4B9A4BFB49EBCB19AB4A88DADA084AEA185 +9D8E6C806C41664F1C68521F5B420D4A2F004A2D004D3202573E09614A1A715D319E9072 +B8AE98B0A58DACA087A79B81A69B80AA9E85ACA189AEA38CAEA48DB4AB968879575E4A1B +4831023E26003F27004F3A0A57441565522A73633F908367BEB7A6BDB6A5BDB5A4B6AE9C +AFA792A9A089B9B19FC9C3B4D2CDBFD1CBBED2CDC1D7D2C7BFB6A4A1957A8F805E968B71 +CBCCCEC3C7D1C4CAD5C5CAD5C6CBD6C7CCD7C8CDD7C9CED8CACED9CBCFDACCD0D9CDD1DB +CFD3DDD0D4DDD2D6DFD3D7DFD6D9E1D7DAE2D8DBE3DBDEE5DCDFE6DFE2E8E1E4E9E2E5EA +E6E7EDE7E9EDE9EBEFEAECF1ECEEF1EEEFF3EFF0F3F1F2F5F3F4F6F3F4F6F5F6F8F7F8F9 +F8F9FAF9FAFBF9F9FAFAFAFBFBFBFCFCFCFDFDFDFEFDFDFDFEFEFDFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFBFBFCFFFFFF9B9AC3 +24227E0D0A7008056D09066E0B096F000066464996D3E6F4D6E9F6D5E8F5D5E8F5D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D4E7F5DAEDF8C9DBED8088B704005D07015F07005F06005E +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F06005E07005F04005D +00005904025C42438B646AA4B5C7E2CFE5F6C7DCF1BFD5EDBED5EEBCD4EDBAD3EDBAD2ED +B8D2EDBAD5EFC0DFFBC3E4FFBCD6F1B1BFD7AAB0C6948799897180805F6C6F3C44692F35 +5D1E274E0D2024085316056319066019066017066436012B5A0B095A121664262B6A3138 +74464F8669768D76849D95A7B0B9CFB6C5DCC7E2FACCE8FFC9E2FAC5D9F1C5D9F0C4D8EF +C3D7EFC2D6EEC0D5EDBFD4ECBED2EBC2D8EFBDD0EA97A5CC666CA6121064000053010057 +05005B05005A06005B05005B06005C06005B06005C06005B05005C06005B05005B06005C +06005D07005D06005D07005E07005D07005E07005E07005F07005E07005F07005F06005E +07005F07005F0802600F106B34559E61B0E45DA6DC61A8DD60A8DD75B4E1A7CFEBACD1ED +AED3EDB0D4EEB1D5EFB3D5EEB3D5EEB5D6EFAED2EDA2CCEB81BAE47CB7E271B2E05DA7DC +57A4DB4D9FD94C9ED8459AD75BA6DC78B5E29AC8E99CC9E9A2CCEAABD1EDACD1ECACD1EC +B0D4EE91C3E864AADD5EA9DD4695D2306AB513218106006909076E09066E0B076E00006A +7F779AFCEECAEFE3CBF4E8D0F4E8D1F3E8D1F4EAD5EDDAB6E4CA95DEBD7AD5AE5DD3AB58 +D3AD5FD4AE62D4AE61D4AE63D2AC5FD3B068E5D0A6E7D4ADE7D5B1E8D7B5ECDEC2EDE2CA +EEE2CAEEE3CCEBDFC5D7BC86CDAB6BC7A259BD9341BB903AB98F3ABB9242BC9547BE984E +BD964CCBAE74DFCDABE3D4B6E5D8BDE5D8BDE5D8BFE7DBC3DBCAA8C8AE7BC7AE7AC0A36A +BC9C5FAC883F9A6D17986B13A1792BA8843CA98640AF8D4EBFA573D6C6A7D3C2A1D5C5A6 +D8C9AED9CBB0DACDB4DBCFB6D6C9ADB9A172A98C54926F28896418875F11865F128B671F +906F2B92702D906F2C967638A38750C8BA9ACCBDA0CDBFA3D1C5ABD3C6ADD5C9B3D5CAB4 +D4C9B2D2C6AFD2C7B0A18A58826221704A016E4A016E4A017857137F612482652885682E +8063279B8657C8BCA2C9BEA5CDC2ABCDC2ACCCC2ABC9BEA6C2B69AB7A889B3A382AB9A76 +9A885F6E50156E5116755A21775C26765B2671561F6C50186D5119745B26755C28877143 +BCB299C6BDA8C3B8A3C4B9A4C1B6A1BAAF97B7AB92AFA185AEA286A6987A725B2B68511E +644E1B5D450F513704482D004B2F0059400C604917715D32A6997EB2A78FB0A58EABA087 +A89C82A79B81A99D84ADA38BAFA48EB0A58FB0A690A69980574115422900442C01452E01 +4A34055B471A624E246B59339F937AB4AB97BAB2A1B6AE9CB4AB99ACA38DA79D87A49982 +A59C85B7B09DD2CDC1D4CDC2D1CCBFC9C3B4ABA38B9D91768E7F5D9B9179C2C3C5C2C6D0 +C5CAD5C5CAD5C6CBD6C7CCD7C8CDD7C9CED8CACED9CBCFD9CCD0DACED2DCCFD3DDD0D4DD +D2D6DFD3D7DFD6D9E1D7DAE2D8DBE3DBDEE5DCDFE6DFE2E8E1E4E9E2E5EAE6E7EDE7E9ED +E9EBEFEBEDF1ECEEF1EFF0F3EFF0F3F1F2F5F3F4F6F3F4F6F6F7F8F7F8F8F8F9FAF9FAFB +F9F9FAFAFAFBFBFBFCFCFCFDFDFDFEFDFDFDFEFEFDFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBFBFDFFFFFFBCBBD759579D07046C +09066E08056D0A076F03006A292A83C6D8ECDBEFF9D4E7F5D6E9F6D5E8F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D5E8F5D6E9F6D2E4F3E2F7FFB8C7E018146B02005B07015F07005F06005E07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F06005E07005F09026005005D +0A07611C186E7982B4BACDE6C4D9EFCEE7F8C8E0F5BDD4EEBAD2ECBAD2ECB8D1ECB7D0EB +B8CEE9B8CEE8BAD1EBBCD6F1BFDBF7BBD7F3AFBFD8A6ACC39385978D79887E62736A4660 +2A14611503601906611906601603614826547E535A7D5764876E7C8D7A8A9890A3ADB7CD +B6C7DFC2DEF9C0D9F3BFD7F0BFD3EBC0D3EAC2D5ECC4D7EEC4D7EEC4D7EEC3D7EEC1D5EE +C2D7EFC6DCF2CBE1F6C3D8EF8F9BC654589724227200005508035D07015B06005A06005B +05005B06005C06005B06005C06005C05005C06005B05005C05005C06005C07005D06005D +07005E07005D07005D07005E07005F07005E07005F07005F07005F07005F07005F06005E +07005F2A408E4B82C060AEE25CA4DB61A9DD60A8DD75B3E1A7CFEBACD2EDAED3EDB1D4EE +B2D5EFB3D5EEB3D5EEB4D6EFACD1ED9FCAEA80BAE37DB7E271B2E05DA7DC57A3DB4EA0D9 +4D9FD9469BD761A9DD7DB7E39AC8E99DCAE9A2CDEBAAD0ECACD1EDACD1ECAFD3ED8EC1E7 +62A9DD5DA8DE4491D01F41980F167907026B09066E09066E08056E05026CA298A7FEF0CC +F1E4CCF4E7D0F3E8D1F3E8D1F4EAD5EBD8B1E2C790DCBB78D5AD5BD3AB57D3AD5DD4AE61 +D4AE61D3AD63D2AB5FD4B26DE6D2ABE7D4AFE7D5B1E9D8B6ECDFC4EDE1CAEEE1C9EEE4CD +EADDC0D6B981CCA968C6A057BD9341BA903AB98F3BBC9344BC9548BD984FBD974DCEB37B +E2D2B3E3D4B7E5D8BEE4D8BEE5D8BFE8DCC3D8C5A0C7AC78C7AD79BEA167BA9A5CAA853A +9A6C16996C15A27B2DA9853EA8853FB4965BC5AD7FD5C6A7D3C2A2D6C6A8D9CAAFD9CBB0 +DACDB4DCCFB7D4C5A7AF9460A5864B906E25876214865E0F8660138C6820906E2B92702E +8F6D2A9A7C40AC9463CBBD9ECCBC9FCDC0A4D2C5ACD3C6ADD5CAB3D6CBB4D3C8B1D2C7B0 +CFC3AA957B447A5913704B016E4A006E4A0279591780622682652984672E806327A6936A +CCC0A7CABFA6CDC2ABCDC2ADCBC0AAC8BCA4C0B398B4A483B4A484A5936E836C3A6A4C0F +71551B755B22765C26755A2570551D6C51196E541C765D29755D29907C52C2B9A2C5BBA6 +C3B8A3C4B9A4C0B59FB9AD95B5A98FAD9F83B1A58B9B8C6A674F1C654E1A624B17583F08 +4F3402482D004D32005D46125F48167D6B42B5AA94B3A891ADA289A99E84A79B81A89C83 +AB9F87AFA48DB0A48EB2A792AA9E879283644A3304432B00422A004933044F3A0A614D23 +645127705F3AAFA590BAB19FB6AE9CB4AC9AB1A895A99F88A59A84A59B84A89F89B1A895 +CCC6B9D4CDC2D1CBBEBEB6A4A79E869A8F728D7E5B9E957EC5C6C9C3C7D1C5CAD5C5CAD5 +C6CBD6C7CCD7C8CDD7C9CED8CACED9CBCFDACCD0DACED2DCCFD3DCD0D4DDD2D6DFD3D7DF +D6D9E1D7DAE2D8DBE3DBDEE5DCDFE6DFE2E8E1E4E9E2E5EAE6E7EDE7E9EDE9EBEFECEEF1 +ECEEF1EFF0F3EFF0F3F1F2F5F3F4F5F3F4F6F6F7F9F7F8F8F8F9FAF9FAFBF9F9FAFAFAFB +FBFBFCFCFCFDFDFDFEFDFDFDFEFEFDFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFFFFFFF9F9FBD6D6E71B187906036C09066E +09066E0A076E05016B747DB5B3C2DEDAEDF8D4E7F5D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D5E8F5D6E9F6D2E4F3DBEEF99AA6CA54589805005D08026007005F06005E07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F06005E07005F08006005005D +02005B252275404189828EBC9AAACEC1D8EFC0D8F0BBD3EDB8CFEBB7CFEBB8D1EBBAD2EC +BAD2ECBAD1EBBAD0EAB9D0EAB8D1ECB9D3EEBAD7F3BDDBF6B4D0EFA1B6DE352B7B12005B +1A076219076113005C727AB4C8E7FFBFDCF9BEDAF7BCD8F4BBD6F2BCD4EEBCD2ECBBD0E9 +BCD1EABDD3EBC0D5EDC1D6EEC3D7EEC3D6EDC2D5EDC2D5ECC3D6EEC4D8F0B6CAE699A8CF +6168A245488C0A045E00005404005907015C06005B06005B05005B06005B06005C06005B +06005C06005C05005C06005B05005B06005C06005D07005D06005D07005E07005D07005E +07005E07005F07005E07005F07005F07005F06005E07005F08036107005F23388A5EA6DC +5DA6DC5BA5DB5EA7DD63AADD63AADD77B5E1A7CFEBACD2EDAFD3EDB2D5EFB3D6EEB3D5EE +B3D5EEB4D6EFA8CFEC97C6E87FB9E37EB8E371B2E05DA7DC58A4DB4FA0D94EA0DA489BD8 +6EB0E088BEE599C7E99FCBEAA3CDEBAAD1ECACD1EDACD1ECA6CFEB85BDE45FA7DC5AA9DE +3068B308056D09076F08056D08056E0A076E03016C342F7CEADCC3F3E6CAF3E7CFF4E8D0 +F3E8D1F4E9D2F4E8D2E7D0A1E0C284DAB770D3AC5BD2AB5AD3AC5ED3AD5FD3AD62D2AD62 +D0A95BD8BB7DE8D5B1E6D3AEE8D7B4EADABAEDE0C6EEE2CAEDE1C9EEE2CAE5D3B0D0B274 +C9A661C39C51BB913EB98F3ABA9240BD9648BC9549BD9950BE9B53D7C297E5D8BCE4D6B9 +E6D8BEE6D8BFE5D9C0E4D7BDCFB88BC5AA75C5AB76BB9C60B49452A57D2F996C169B701C +A47E34A8853FAA8743C4AD80CFBC98D4C4A5D5C5A6D7C8ABDACCB1DACDB3DACDB4DBCFB7 +C3B088A383469E7C3D8C671D855E0E845D0E8862188C6821906E2A92702E8E6D29AA9261 +C2B390CCBDA0CDBEA1CFC2A7D3C7AED4C8AFD5CAB3D5CAB3D2C7AFCEC1A7BCAB887D5B19 +714D056F4B026E4B027250097D5E1F82642884662B8164288A7039BFB294CCC1A9CCC0A9 +CDC2ABCDC2ABC8BBA3C2B69CB9AB8DAF9E7DB3A383876F3F5F3E006C4F14745A22775D25 +745A247258226E521A715720745C267B63327F6839AFA183C7BEAAC4B9A4C3B8A3C2B7A2 +BBB099B4A78CAFA286AA9C809B8B69796538614A15634C18573F084D33004C3200503602 +583F0A6751226D5A2D9F9275B8AD98B0A48CA99D83A79B80A89C82ACA189AFA48DB0A58F +AFA58FB2A892786740533D0F432B00442C004B35055844165D491E68562E66542D918367 +BAB2A1B5AC99B1A894B0A792ADA38EA49A84A39983A99F8AADA48FADA590B2A996C5BFB0 +C6BFAFAAA08AA49A81948768887955A49B88D2D7E1C4C8D3C4C9D4C5CAD5C7CCD7C6CBD6 +C8CDD7C9CED8CACED9CCCFDACDD1DBCED2DCD0D4DDD0D4DDD3D7DFD3D7DFD6D9E1D8DBE3 +D9DCE3DCDFE6DCDFE6DFE2E8E2E4EAE3E5EBE5E7EDE7E9EDE9EBEFEBEDF1ECEEF1EFF0F3 +EFF0F3F1F2F5F3F4F6F3F4F6F6F7F8F7F8F8F8F9FAF8FAFBF9FAFBFBFBFCFAFAFBFCFCFD +FDFDFEFDFDFDFEFEFDFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFF4F3F83532880000690B086F08056D0A076E +06036C414493909CC8E1F5FDD2E5F3D6E9F6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5 +D5E8F5D5E8F5CBDDEE96A1C708066004005D08015F07005F06005E07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F06005E07005F07015F08015F000058 +020059363581595F9CA4B7D8BED6EEC1DAF1C7E1F6C3DDF4BBD4EDB9D1EAB9D1EBBAD2EC +BAD2ECBAD2ECB7D0EBB7CFEAB6CEE9B8D0EAAEC4E29AA9D034287813005C1A0762190761 +13005C6D71A9BFD7EFB8CDE8B9CFE9B7CEE9B7CFEABAD1ECBCD2ECBCD2ECBDD3ECBDD3ED +BFD4ECBFD4ECC3D7EEC9DDF2CCE0F5CFE4F7CBDFF4B1C4E28895C25D64A0100A6306035A +03005808025D06005B05005A06005B06005B06005C06005B06005B06005C06005C05005C +06005B05005C05005C06005D07005C06005D07005E07005D07005D07005E07005F07005E +07005F07005F07005F06005E07005F07005F06035E0F146E3864AB5EACE05AA3DA5CA6DC +5EA7DC63AADD63AADD78B6E2A8CFECACD2EDAFD3EDB2D5EFB2D6EEB4D5EEB3D4EEB5D6EF +A5CEEC94C4E780B9E47EB9E470B1E05DA8DC57A4DB4FA0D94FA0DA479AD771B1E08CC0E6 +99C7E99FCBEAA4CDEBABD1ECACD2EDACD1ECA2CCEA81BBE45EA5DB5AABE0254DA0060069 +09066E08066E09066E0A076E000069564E88F8EAC8F1E5CAF3E8CFF4E9D1F3E8D1F4E9D2 +F4E8D2E6CD9ADFC180DAB66ED3AC5CD2AC5CD3AD5FD3AC5FD2AC61D2AD62CFA859DABE83 +E7D5B1E6D3ADE8D7B5EADBBBEDE0C6EEE1CAEDE2C9EDE0C7E3CFA8CEAF70C8A65EC19C4E +BA903BB88F39BB9342BD9648BC9649BD9A51BF9D57DBC8A3E4D7BCE4D6BAE5D7BEE6D8C0 +E4D7BEE0D2B6CBB383C5AB75C4AA74B99A5CB3914EA37B2B996D179C721FA58036A6843E +AB8947CBB68ED3C1A0D4C4A4D5C6A8D7C9ACDACDB3DACDB4DACCB3DACCB4BCA67AA08041 +9C7A398A6519855E0F855D0F8863198C68218F6E2A91702D8E6D2AB29C6FCABC9DCBBD9F +CCBFA2D0C3A9D3C8AFD4C9B1D5CAB4D5C8B2D3C7B0C8BA9EB09C7376530D714C036E4A01 +6F4C0474520E7F602282642784672B7E6224927A46C6BBA1CBC0A9CCC1AACDC2ABCCC1AA +C6BAA1C0B398B6A788AF9F7DB1A180795E285D3C006E5319765C23775D25745923725721 +6E521B735822765D287E6637877247BCB097C6BDA8C4BAA4C3B8A3C1B6A0B9AE96B1A488 +AEA084AA9C8087734A6E5828634B18624A165239034A31004D3300553D075D44106A5527 +7E6E47A99D83B4A892AEA289A79B81A69A80A99D84AEA38CB0A58FAFA58EB0A791AEA48D +624E22442B00442D02462E00503A0A5E4B2063512767552D67552EA0957DB8B19FB1A994 +AFA691ADA38EAAA18BA59B85A59B85AAA18BADA490ADA691ACA38FBDB5A5BEB6A4AAA08A +A59A82938566887854A69F8DCFD5E2C4C8D3C4C9D4C5CAD5C7CCD7C7CCD7C8CDD7C9CED8 +CACED9CCD0DACDD1DBCED2DCD0D4DDD1D5DED3D7DFD4D8E0D5D9E1D8DBE3D9DCE4DCDFE6 +DDE0E7DFE2E8E2E4EAE3E5EBE6E8EDE8EAEEE9EBEFEBEDF0ECEEF1EFF0F3F0F1F4F1F2F5 +F2F3F5F3F4F6F6F7F9F7F8F8F8F9FAF9FAFBF9FAFBFBFBFCFAFAFBFCFCFDFDFDFEFDFDFD +FEFEFDFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFEFEFEFBFBFDFFFFFF908FBE0000680C097009066E09066E0B086F06026B +424694D1E4F3D7EAF7D5E7F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D6E9F6D5E8F5 +D4E7F5D7EAF67B83B40A046209026007005F07005F06005E07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F06005E07005F08026009026006015D +01005A1411683D3F875156978291BF91A2CBB4CAE6C1DBF3C0D9F1BED6EFBDD4EDB9D0EB +B8D0EBB7CFEAB6CEEAB8D1ECAFC5E49AABD234297913005B1A076219076113005C6E72AB +C0D9F2B9CFEBB9D0EBB7CFEAB7CFEBB9D0EBBAD0EBBAD0EBBCD2ECBED4EEC4DAF1C8DEF3 +C3D7EEABBCDB9BA9CF6D74AB595E9B23227202005803005907015C08025C06005B05005A +06005B06005B06005C06005C06005B06005B06005C06005C06005B06005B05005C06005C +06005D07005D06005D07005E07005D07005D07005E07005F07005E07005F07005F07005F +06005E07005F08016004005B2533844489C8519AD45CA7DD5AA5DB5BA6DC5FA7DC62AADD +63ABDD7AB7E3A9D0ECACD2ECB0D3EDB3D5EFB3D6EEB3D5EEB3D5EEB5D7EFA4CDEB92C3E7 +81BAE47DB8E36FB1E05CA6DC56A3DB4F9FD94E9ED94A9CD879B6E291C3E799C7E9A1CCEA +A4CDEBACD1ECAED3EDACD2ED98C7E97AB6E25DA9DE4C91CF101A7C07026B09076E09066E +08056D0F0C70120F70AFA2A8FAECCBF1E5CBF3E8CFF3E9D2F4E9D2F3E7CFF1E4C8E2C68F +DDBD7CD8B36AD3AD5FD3AD5FD3AC5FD2AD60D3AD61D1AB5DCFA95BDFC694E7D5B0E6D3AC +E8D8B7EADBBDEDE0C7EEE1C9EEE2CAE6D6B4DCC597CCAA68C49F54BF9747B88E38B88F3A +BB9344BD954ABC9549C1A05CCBB077E1D1B1E4D6BAE5D7BCE5D8BEE7DAC3DFD1B4D4C19A +CAB07EC4AA73C2A76FB49351AE89429E74229B701D9F7728A6833BA78540B5985ED3C3A2 +D4C4A4D4C4A5D7C8ABD8CAAEDACDB4DBCEB5D7CAB0CAB895B095619C7A3896742F866013 +835C0E8660148B661F8C6923906F2C8E6F2B967838C2B18ECDBFA2CCBEA1CDC0A5D1C5AB +D4C9B1D4C9B2D4C9B3D3C7B1D2C6AFAC976D91753D704C036E4A01704C037754127A5919 +80612383652A83652A8E7440AC9973CDC2ABCBC0A9CCC1ABCCC1AACABFA7C0B398B9AB8D +B2A281B4A48598845B6546086A4D1072571D765C25765A2472571F70551D6F551E765D28 +765D29927E55AC9E7FC4BAA3C5BBA6C4BAA5C1B69FBEB39BB3A68CA99B7EADA08594835F +644B16654D19604813583F084B31004B2F00533A06614A17614A19806F48AEA289AEA289 +AB9F85A89C82A79B81A89C83ACA189B1A690B0A58FB0A58FB4AA95867654432C003F2800 +493204503A095D481C68562F68572F71603C857758B3AA97AEA590ACA28CA99E88A89E87 +A89E88A89F89A9A08AABA38EAEA692AEA693B5AE9BA2998291856AAFA691A2977D8C7E5C +8A7B58C1C0BFC4CAD7C4C9D4C4C9D4C5CAD5C7CCD7C8CDD8C8CDD7C9CED8CACFD9CCD0DA +CDD1DBCED2DCD0D4DDD1D5DED3D7DFD4D8E0D6D9E1D8DBE3D9DCE4DCDFE6DDE0E7E0E3E8 +E2E4EAE3E5EBE7E9EDE9EBEFE9EBEFEBEDF0EDEEF2EFF0F4F1F2F5F1F2F5F3F4F6F4F5F7 +F6F7F9F7F8F8F8F9FAF9FAFBF9FAFBFBFAFBFAFAFBFCFCFDFDFDFEFDFDFDFEFEFDFEFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFDFDFDFFFFFFE6E6F02A27810000680B086F08056D09066E09066E04006A929EC9 +D0E2F2D4E7F5D5E8F5D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D6E9F6D5E8F5D7EAF7 +D5E8F58C97C043448B00005A09036107005F06005E07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005E06005F07005F07005E08015E04005C +00005600005406015B0D07622B2A79474B90626BA58C9DC79FB1D5BED5EEC5DCF4C3DBF3 +BCD5EFBCD6EFB1C8E69AACD334297913005B1A076219076114005C6C71AABDD8F0B7CEEA +BAD2EDBAD2EEBCD5EFC1D9F2C4DBF3C1D8F0B2C8E5A4B7D97B86B86972A93738821A176A +100B6300005300005201005606015B06005B06005B06005A05005B06005B06005C06005C +06005B06005B06005B06005C06005B06005B05005C05005C06005D06005C07005C06005D +07005E07005D07005E07005E07005F07005E07005F07005F07005F06005E07005F080260 +06005F282B7D6FA5D651A4DE55A3DB5CA6DB5BA5DB5BA6DC5DA6DC61A9DD62AADD7AB6E2 +A9CFECACD2ECAFD3EDB3D5EFB3D6EEB2D5EFB2D5EEB6D7EFA2CCEB90C2E781BAE37CB7E2 +70B1E05EA7DD59A4DC4F9FD94C9DD84F9FD97FBAE492C3E798C7E9A1CCEAA4CDEBACD1EC +AED3EDAAD1ED8CC1E672B0DE549FD82F55A40400670A076F09066E0A076E02006B241F77 +998E9EE1D3BBF7E9CBF2E5CDF3E8D0F3E8D1F4E9D3F1E4C9ECDBB8DFC184DCBB77D7B268 +D4AE62D4AE61D3AC5FD3AC60D3AD62CEA758D0AC63E4CFA5E6D3AEE6D4AFEADABBEBDDC0 +EDE1C9EEE2CAECE0C8DEC79CD6BC86C8A761C19A4DBC9342B78D36B98F3CBC9447BD964B +BB9548C8AB70D9C5A0E2D3B5E4D6B9E5D7BCE5D8BFE7DBC4D9C8A4CCB282C9B07DC2A76F +BEA166AE8A45A67F359A6F1A9E7526A27C31A7843EB19253C3AC7ED6C7A9D3C3A2D6C6A8 +D8CAAED9CCB1D9CDB4DBD0B7D2C3A5B49B68A6874C9673308F6B23845E0F855D1089641B +8E6B268E6B2690702D8D6B26A88E5ACBBDA0C9BB9DCEC0A5D1C4A9D2C5ADD5C9B2D6CBB4 +D3C8B1D3C9B2C9BB9F8E72367A59156E4A006D490073500A7C5D1D7D5E1F7F6124826528 +83682CB09D78C2B397CDC2ABCCC1ABCCC0AAC9BEA6C5BAA1BAAC8FB2A382AE9E7CA4926E +765B2565470773581E765A23755A247157206E541C6E531C735A23775F2C7B6433B0A385 +C7BDA8C4BAA4C4BAA5C3B9A3BCB099B8AC94AD9F83AA9D7FA7997B6E57265E4510614915 +563D054F35014B30005035015C430F6750206C5627A5987BB6AA95A99D83A4977DA5987E +AA9F86ADA28AB0A58EB0A58FB1A690A99E869B8E71533D11422A00473000533E0E5B481A +68552C6C5A3367562E93866AAEA591ADA48EA69C85A69B84A49A82A59C85A89F88AAA18C +AAA18CACA38FAFA693B1A795AFA79484775A67573386795B92866882744E9D9279C9CDD9 +C3C8D4C5C9D4C4C9D4C5CAD5C7CCD7C8CDD8C8CDD7CACED9CBCFD9CCD0DACDD1DBCED2DC +D0D4DDD1D5DED3D7DFD4D8E0D6DAE2D8DBE3D9DCE4DCDFE6DDE0E7E0E3E8E2E4EAE3E5EB +E7E9EDE8EAEEE9EBEFEBEDF0EDEEF2EFF0F4F0F1F4F2F3F5F4F5F7F4F5F7F6F7F9F7F8F8 +F8F9FAF9FAFBF9FAFBFBFBFCFBFBFCFCFCFDFDFDFEFDFDFDFEFEFDFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFE +FEFEFEFDFDFE4D4B9608056E0A076F09066E09066E0B086F010068676EACAFBEDCDAEEF9 +D4E7F4D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D6E9F6D5E8F5D3E6F4C1D2E6 +8088B707025F04005C07015F07005F06005E07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005E07005F07005E06005E07005E09026009035F +07005D04005B05015B120D65272676494E91565E9C7D89BA8E9DC895A6CEA4B9DBAAC2E1 +A8BEDF9AABD234297813005B1A076219076113005C7379AFC4E0F6B9D2EDB4CCE9B0C7E6 +A9BFE09BAED396A7CE8694C16973AA5B639F3A3B842B2A7809045D01005703005908025C +08035D07015C06005A06005B05005B06005B06005B06005C06005B06005B06005C06005C +05005C06005B05005C05005C06005C06005D06005C07005D06005D07005E07005D07005D +07005E07005F07005E07005F07005F07005F06005E07005F06005E04005C24297A5467A6 +7CB7E34C9CD855A2DA5DA7DC5CA6DC5BA6DC5DA6DD61A9DE62AADD7AB6E2A8D0ECACD2EC +AFD3EDB3D5EFB3D6EEB3D5EFB2D5EEB5D6EFA0CBEB8DC1E681BAE37CB7E370B1E05FA8DD +5BA6DC51A0D94C9DD850A0D983BBE493C4E798C7E9A1CCEAA4CDEBACD1ECAED3EDA9D0EC +88BEE572B2E0437DC1223A920400680A086F09066E0A076E00006B39337DD4C5B1E6D8BD +F4E6CBF2E6CDF3E8D1F3E8D1F4E9D4F0E2C4EAD7AFDEC081DBBA75D7B268D4AE61D4AE60 +D2AB5FD2AB5FD1AC61CDA658D2AF68E5D1A9E6D3AEE7D4B1EADBBDEBDEC1EDE1C9EEE4CC +EBDFC4DBC293D5B981C8A65FC0994BBC9342B78D37B9903DBC9547BD964BBB9548CBB079 +DECDAAE3D4B6E4D6BAE4D7BDE5D9C0E6DBC4D6C39CCAAF7CC8B07CC0A46CBB9F63AC8840 +A47C2F996E19A0782AA37E34A7843FB89D64C8B48AD5C6A8D3C3A2D6C7A9D8CBAFD9CCB2 +DACDB4DCD0B9CEBD9BAC9058A2834693702B8D681E845D0F8660158B661E8E6C278F6D29 +90702E8D6C27B19A6CCCBDA0CABB9ECFC1A7D1C4AAD3C6AED5C9B3D5CAB4D3C7AFD4C9B3 +C1B1918667287856106D4A006D4A0174520D7C5E1E7D5E1F8062267F6225886D34BAAA8A +C5B89ECCC1AACDC2ABCBBFA9C7BCA4C3B89EB8A98AB1A281AD9C7A8F794D6E5116694D0F +73581F765A237358216F551C6E531B6F541D745B2579612F846E41BAAE95C7BDA8C4BAA4 +C3B9A4C0B7A1B9AE96B6AA91AB9D80AC9E829C8D6B634B166147145F46115239024D3200 +4B3100543B055F4815634D1C756136AEA389AFA38CA69A80A3957BA5987EACA188AFA48D +B0A68FAFA48EB3A8939F92777E6E494D36074831014B3403594416604C216A583068572E +6B5A33A1957DB2A895A89E87A59A82A49982A49A83A69D86A9A089AAA18CA9A08CADA490 +B0A794B2A9979D937C7B6D4E65553068583480724F84754FADA696C7CCD9C3C8D4C4C9D4 +C4C9D4C5CAD5C7CCD7C8CCD8C8CDD7CACED9CBCFDACCD0DACDD1DBCED2DCD0D4DDD1D5DE +D3D7DFD4D8E0D6DAE2D8DBE3D9DCE4DCDFE6DDE0E7E0E3E8E2E4EAE3E5EBE7E9EDE8EAEE +EAECF0EBEDF0EDEEF2EFF0F4F0F2F4F1F2F5F3F4F6F4F5F7F6F7F9F7F8F8F8F9FAF9FAFB +F9FAFBFBFBFCFCFCFDFCFCFDFCFCFEFDFDFDFEFEFDFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFEFFFFFF +C8C7DF716FAB0000670C096F08056D09066E09066E0C096F454895D4E7F4D5E8F5D5E8F5 +D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D6E9F6D5E8F5D9EDF8D6E9F6939DC5 +54579703005C09036008015F06005E07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005E07005F07005E07005E06005D07005E07005E07015E +07015D05005C02005900005500005202005708025D0E0A621E1D6F2323742928772C2978 +1C0D6518045F19066119066117045F2A2374373A833335802D2E7B292A77222172151167 +0F0A6204015A00005100005100005501005706005B07015C06015B06005B06005B05005B +06005B06005B06005C06005C06005C06005B06005C06005C06005C06005C06005B05005B +06005C06005D06005D07005C06005D06005E07005E07005E07005E07005E07005F07005E +07005F07005F07005F06005E07005F0802600E096439418B91BADF9BC7E87EB9E44C9DD9 +55A3DB5DA7DC5CA6DC5BA6DC5BA5DC61A9DD61A9DD7BB7E3A8D0ECABD1ECAED3EDB1D4EE +B2D5EFB3D5EEB3D5EEB4D6EF9DC9E98ABFE680BAE47BB6E26EB0DF60A8DD5DA6DC55A2DA +50A0D953A1DA8DC0E697C6E899C8E9A2CCEBA5CEEBACD1EDAED2EDA6CEEB7DB9E3649FD5 +151F7F0B0A7008056D09066E09066E0A076E02006B9B8E9DFEECC1F0E0C0F2E5CBF3E7CE +F3E8D0F3E8D0F4E9D3EDDCB9E6CE9DDDBD7DD9B871D6B266D3AC5FD3AB5DD1AA5DD0AB5F +CFA95CD0AA5FD8B97BE7D4AFE6D3AEE8D7B5ECDEC1ECE0C5EDE2CAEFE4CEE7D7B7D5B881 +D1B378C5A259BD9545BB9240B88F3BBA9241BC964BBD984DBC974ED5BF92E4D5B9E3D5B8 +E3D7BCE4D7BFE5D9C0E3D6BCCEB688C8AE7BC7AD79BA9D61B59555A67F329D74209A6F1C +A37D32A58038AB8C4ACAB68ED2C09ED4C4A5D4C4A4D7C9ADD8CBB1DACDB3DACEB5DACEB6 +BBA477A081439A7837896416855E10865E138A651D8D6B2591702D8F6F2C947535A0844C +C2B08DCCBDA1CCBDA1D0C3A9D3C6ACD4C8B0D4C9B2D3C8B1D0C5ACD2C6AEA58F6174510A +724E056D49016D4B037756147E5F217E5F218164287E61259D8759C9BEA5C9BDA4CCC1AA +CCC1AAC9BCA4C3B79CBEB094B1A180B4A58598845A62440568490C72561D74592071581F +6D52196B4F166F531B735922745B288E7B51A89979C6BCA8C4BAA5C4BAA5BFB59EBDB29A +B5A98FB0A488AC9F8293815D745E305A40085F4712563D064D32004C3100553B07624B18 +685122725E31988969B3A891A5997DA3967BA2967BA79B81AFA58DB2A791B1A690AEA38C +AEA48C6F5E37442E004D360656411158441663502669562E6B5831715F3A88795BADA48F +A79C86A0957DA2977FA39981A69C86AAA18CABA28DAAA18CA9A08BADA491B6AE9CA79D88 +6F603E6F613E6554304531074632168C7E60BABAB9C8CEDCC3C7D3C4C9D5C4C9D4C5CAD5 +C7CCD7C8CDD8C8CED8CACFD9CBCFD9CCD0DACDD1DBCED2DCD0D4DDD1D5DED3D7DFD4D8E0 +D7DAE2D8DBE3D9DCE4DCDFE6DDE0E7E0E3E8E2E4EAE3E5EBE7E9EDE8EAEEEAECF0ECEEF1 +EDEEF2EFF0F4F0F1F4F2F3F5F4F5F6F4F5F7F6F7F9F7F8F8F8F9FAF9FAFBF9FAFBFBFBFC +FCFCFDFCFCFDFDFDFEFDFDFDFDFDFDFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEF3F2F8A2A0C8 +0000670B086F09066E08056D0A086F03006A252580C3D4E9DBEFF9D4E6F4D6E9F6D5E8F5 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F6D6E9F6D4E7F4D5E8F5CADCED9AA6CB16116A +00005705015D07005F06005E07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005E07005F07005F07005E07005E07005D06005E07005D07005D +08015E08025E09035E07015D05005B04005A00005700005600005601005613045E1A0661 +18056018056019066109005900005100005300005400005400005502005804005906005B +08035D08035D07025C07015C06005B05005B06005B06005B06005B06005C06005C06005C +06005B06005B06005B06005C06005C06005B06005B05005B05005C06005C06005D07005C +07005D06005D07005D07005D07005D07005E07005F07005F07005E07005F07005F07005F +06005E08005F04005D06025E3A408A6E85B9A1CFEE9CC8E97DB8E34C9ED955A3DB5EA7DC +5CA6DB5BA5DC5CA5DC61A9DD61A9DD7CB7E3A8D0ECAAD0ECADD3EDB1D4EEB2D5EFB3D5EE +B3D5EEB4D6EF9CC9E98ABFE680BAE47AB6E26DB0DF5FA8DD5BA5DC56A2DB50A0DA56A2DB +8FC1E797C6E999C8E9A2CCEBA6CEEBACD2EDAED2EDA3CBEA7EC0E95689C60A0A7108056D +09066E09066E09066E08056D0B086EC2B2A9F5E3BEEFE0C1F3E6CBF3E7CEF3E8D0F3E8CF +F4E9D3ECDAB5E4CB98DCBD7BD9B76FD5B165D3AC5FD2AA5CD1AA5CD0AB5ECEA759D1AD65 +DABD83E7D4AFE6D4B0E8D7B6ECDEC3EDE0C6EDE2CAEFE3CDE5D3B1D3B67ED0B276C4A056 +BC9443BA913FB98F3CBA9241BC964CBC984EBD9A52D8C49BE4D5BAE3D5B9E4D6BCE5D8BF +E4D8BFE0D2B5CCB383C8B07EC5AC78B99A5DB39150A37A2C9B701B9B711DA37F35A48038 +AE9051D0BC98D4C2A2D4C4A4D4C5A6D7CAAED9CCB2D9CDB3DACEB7D8CBB2B39A689F7E40 +977532855F10835C0C865F138B661F8E6B2791722F8F6E2B97783AAC9462C4B492CCBDA1 +CDBEA2D0C3AAD3C6ADD4C8B1D4C9B2D3C7B0D0C5ACD0C3AA99804B714C03704B026D4A01 +6F4C057857177E5F217E5F2180632784692EA8946ACBBFA7C9BDA4CCC1A9CCC0A9C8BBA3 +C1B499BBAC8FB0A07EB5A7878A73435D3E006B4C1174592174592170561D6C50166A4E15 +6F541D745B25745B299B8A64B7AB90C6BCA8C4BAA5C3B9A4BEB39BBBB098B2A68CAFA386 +AC9F847E6A40654D1A5B420B5D450D543A044B30004D32005A410C66501F69522484734D +A5977BAFA38BA2967AA2967AA4987DA99D83B0A68EB2A791B1A690ADA28BA4997F5A451B +412A00513A095A46185D491D66532B6A593167542B7E6E4D998C72AAA08AA2967E9D937A +A29880A59B83A89E88AAA28DABA28DAAA18CA9A08BADA491B9B3A19B907868593571623F +655330422E053722129B937FB9BABCC6CCDAC3C8D3C4C9D5C4C9D4C5CAD5C7CCD7C8CDD8 +C9CED8CACFD9CBCFD9CCD0DACDD1DBCED2DCD0D4DDD1D5DED3D7DFD4D8E0D7DAE2D9DBE3 +D9DCE4DCDFE6DDE0E7E0E3E8E2E4EAE3E5EBE6E8EDE8EAEEEAECF0EDEFF2EDEEF2F0F1F4 +F0F1F4F2F3F5F4F5F6F4F5F7F6F7F9F6F7F8F8F8FAF9FAFBF9FAFBFBFBFCFCFCFDFCFCFD +FDFDFEFEFEFDFDFDFDFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFEFFFFFFF2F2F742408F02006A +0B096F09066E09066E0B096F0000686C74AFDAEEF9D4E6F4D5E8F5D5E8F5D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D6E9F6D5E8F5D5E7F5DDF1FBA9B6D538388317136B +05005E08016007005F06005E07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005E07005E07005F07005E07005E07005D07005E06005E06005D07005C +07005C07005D07005D07015D07015D07025D08025D0B035E150560190661180560180560 +19066110045F07025E08025E08025D08025D07025D07015C07015C06005C06005B05005B +06005B06005C06005C06005C06005C06005C06005C06005B06005B06005B06005C06005C +06005C06005B06005B05005C05005C06005C06005D06005C07005D06005D06005E07005E +07005D07005E07005E07005F07005E07005E07005F07005F07005F07005F09026006005E +0803606372ACB2D7F1ACD2EE9CC8E99DC9E97FB9E44D9ED856A3DA60A8DD5EA7DC5CA7DC +5DA6DD62A9DE60A9DD7EB9E3A9D0ECAAD0ECAED3EDB1D4EEB2D5EFB3D5EEB4D6EFB4D6EE +98C6E887BDE57EB9E378B6E26BAEDF5DA7DC59A5DB55A2DB4F9FDA5DA7DC92C3E795C5E8 +9AC9EAA4CDEAA7CFEBACD1ECAFD4EE99C4E65D93CC2A3E940400680A086F09066E08056D +0C096F00006B625888F2E0B9EFDFBDF1E2C3F3E6CBF3E7CEF3E7CFF2E7CFF3E8D1E8D3A8 +E0C58BDABA78D6B46DD4AF63D2AB5DD1AA5DD0A95BCFA95BCDA554D6B779DFC798E6D3AE +E6D6B3E8D9B9ECDFC5EDE1C8EDE2CAEBDCC3DFC9A0D0B377CDAE6FC09A4DBA913FB98F3C +B9903EB99242BC974DBC974FC5A566E0CFAFE2D4B7E3D5BAE4D6BCE6DAC3DECFB1D4C099 +C9B17FC8B17FC2A772B39251AC88419C721F976B139D7524A4823AA4813ABCA26DD6C5A6 +D4C4A4D4C5A5D5C7A8D8CBB0DACDB3D9CCB3DACDB5CCBB9AA4874D9A79378E6A21805808 +8259098963198F6B26906E2B9171308D6C29A48A55C3B390C8B797CCBEA2CFC1A6D2C5AD +D3C7AFD3C8B0D2C7B0D3C8B2C8B99DB8A5807F601D6D49006D4A00704E0673520D7C5E1F +7F5F217D5E2084692EAB976FBEAF91CBBEA7CABEA6CBC0A8C8BCA5C3B69CB9AB8DB5A686 +AB99759681566F521868490B71551C765B257357206E5219694D126A4E14735823755D29 +856E40BAAE95C7BDA8C4BAA4C4BBA5C1B7A0B9AD95B5AA90AC9F82AEA1859786635D440E +5A400A5B420C5338014F3400503601563D08644D1C654F1F7B6840AFA48CAFA38BA5987C +A09377A4977CAA9F85AEA38BB1A68FAFA58EB3A9938D7E60644F2A462E024E37065C481A +66522867542B69572F66542B6B5933A0957DABA18A9F947B9D9278A0947CA69C86A99F89 +AAA18CAAA18CAAA18CAAA18CACA38FAFA693A0957F7C6E4F6D5F3C7365435746222A1300 +53422FCACED4C3C8D2C3C8D5C4C9D4C5CAD5C5CAD5C5CAD5C7CCD7C8CDD8C9CED8CACFD9 +CBCFD9CCD0DACDD1DBCFD3DCD1D5DED1D5DED4D8DFD4D8E0D6DAE2D9DCE3DADDE4DDE0E6 +DEE1E7E1E4E9E3E5EBE4E6EBE7E9EDE8EAEEEAECF0ECEFF1EDEEF2F0F0F4F0F1F4F2F3F5 +F4F5F6F4F5F7F6F7F9F7F8F9F8F9FAF9FAFBF9FAFBFBFBFCFCFCFDFCFCFDFDFDFEFEFEFD +FDFDFDFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFAFAFCFFFFFFA2A1C8423F8F06036C0A076E +08056D09066E06026C161476B6C6E1D1E5F3D6E9F6D5E8F5D5E8F5D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D5E8F5D6E9F6D5E8F5D4E7F4DAEEF9D8ECF78993BE02005806005E +08015F07005F06005E07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005E07005F07005E07005E07005E07005D07005E06005D06005D07005D +07005C06005D06005D05005C06005C09005C1505601906611805601805601906610F025E +05005B06005C06005B06005B06005B06005C06005C06005C06005C06005C06005C06005B +06005B06005B06005B06005B06005C06005C06005C06005C06005B06005B06005C05005C +05005C06005D06005D07005D07005C07005D06005E07005E07005D07005D07005E07005F +07005F07005E07005F07005F07005F06005E07005F0801600000563037816B7DB4B9E0F6 +AFD4EEAAD0EC9ECAEA9ECAEA81BAE451A0D959A5DB5FA8DD5EA7DC5FA8DC5FA8DC63AADD +62A9DC82BAE4AAD1EDAAD0ECAED3EDB1D4EEB3D5EFB3D5EEB3D6EFB3D5EE94C4E886BCE5 +7CB7E374B3E168ACDE5CA7DC59A5DB56A2DB4E9FD964ABDE94C5E893C5E79DC9EAA6CEEB +A8D0ECACD1ECB1D5EF8BB6DE1822810C0C7208046C09066E09066E08056D0E0B70494280 +B7A8A3FBE9BDECDDBDF1E3C4F3E6CCF3E7CFF3E7CFF3E8D0F3E6CDE5CD9BDEC285DAB976 +D6B36DD4AE62D0AA5CD0AB5FCFA95BCFA85BCCA455DCC18CE4CFA6E5D3ACE7D6B5E9DABB +EDE0C6EDE1C9EDE1CAE3D1AED8C091CFAF73CAAA69BD9647B88D3AB78D39B88F3EB99244 +BC984FBA964DCDB27DE3D4B9E1D2B6E3D6BAE4D7BDE6DBC3D7C49FCBB382C9B17FC8AE7B +BEA168AD8A43A68034986D17946912A0792DA5813AA7843FC9B58CD5C6A8D2C2A2D5C6A8 +D6C8ABDACCB2DACEB4D9CDB4D4C5A8BEA97F9C7C3D94712B8761147F5706815A0B8B671F +916F2C90702E91702D8F6D2AB6A176CCBEA0C8B99ACDC0A4D0C3A9D2C6AED3C7B0D3C8B0 +D1C5AED4C9B4B3A0799479427754106C49006C490074530E795A188163258162267C5D20 +967E4DC8BAA0C8BBA1CABEA6CBBFA7C9BEA6C6B9A0BEB195B0A07FB4A5859B875E66470A +6A4C0F71541C755A22755A2471551E6B5016694F156C521B765D2978602DA2916FC9C0AD +C5BCA7C4BAA5C4B9A4BDB29BB3A78DAFA186AD9F83AC9E83715B2B573D035C430B543A02 +4C31004F34005A420B624A176B55276D572B998A6BB5AB94AA9E84A19377A19478A89C82 +AEA48CB1A78FAFA58EAEA38DA99E855A4420391F00503B0B5945156551266D5B336D5D35 +67542B5D481D857657AAA08AA1967E9D92799E947AA59A83ABA18CACA38DABA18CA9A08B +AAA18CAAA08BB0A895A69C8772624170603F7263436F613D45320F1901009B958FCAD0DE +C1C6D2C3C8D4C3C8D4C5CAD5C6CBD6C6CBD6C7CCD7C8CDD8C9CED8CACFD9CBCFD9CCD0DA +CDD1DBCFD3DCD1D5DED2D6DFD4D8E0D5D9E1D7DAE2D9DCE3DADDE4DDE0E6DEE1E7E1E4E9 +E3E5EBE4E6ECE8EAEEE8EAEEEAECF0EDEFF2EDEEF2F0F1F4F1F2F5F2F3F6F3F4F6F4F5F7 +F7F8F9F8F9FAF8F9FAF8FAFBF9FAFBFBFBFCFCFCFDFCFCFDFDFDFEFEFEFEFDFDFDFEFEFE +FFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFEFEFEFDFDFEFFFFFFD5D4E68A88BA05026B0A076E09066E09066E +08056D0E0B717B85B9B7C7E1DCEFFAD4E6F4D6E9F6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D5E8F5D5E8F5D5E9F6D2E5F3DBEFFABDCDE444458C06005E06025E090260 +07005F06005E07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005E07005F07005F07005E07005E07005E07005D07005E06005D06005D07005D +06005C06005C07005D09005D1505601906611805601805601906610F025E05005B06005C +06005C06005C06005C06005C06005B06005B06005B06005B06005C06005C06005C06005C +06005C06005B06005B06005B06005B05005B05005C05005C05005C06005D06005C07005C +07005C06005D06005D06005D07005E07005D07005E07005E07005E07005F07005E07005F +07005F07005F06005E07005F07025F05005E1A186F7489BC98B6DAB1D6EFADD2ECABD1ED +9ECAEA9ECAEA81BAE451A1D959A5DB5FA7DD5EA7DC5FA8DD60A8DD64ABDE63AADD83BBE4 +AAD1EDAAD0ECADD3EDB1D4EEB3D5EFB3D5EEB3D6EFB2D5EE92C3E885BCE57CB8E374B3E1 +67ACDE5AA6DB58A4DB56A3DB4E9FDA68ADDE96C5E893C4E89DC9EAA6CFEBA8D0ECAACFEB +B4DAF27193C80B0C720B097008056D09066E09066E07046D141070978A99D2C1ACF5E4BD +EFDFBFF1E3C5F3E6CDF3E7CFF2E7CFF3E8D1F2E5CBE3CB97DFC286D9B875D6B36BD3AD61 +D0AA5DD0AA5ECFA85BCEA75ACDA557DEC593E4D0A9E4D2ADE8D7B8EADBBDECE1C7EDE2CA +ECE0C8DFCAA3D6BD8BCEAE71C9A765BC9444B68C36B78D39B88F40B99345BC9850BC9851 +D1B889E3D4B9E2D3B6E4D6BBE4D8BEE5D9C1D4C097CAB27FC9B07EC6AC79BB9E64A9853D +A27B2D976B16956A15A0792EA5823BAB8A49CEBB96D4C4A6D2C1A3D5C7A9D7C9ACDACCB3 +D9CDB4DACDB4CCBA99B8A0729A7A398F6B24855E10805707825B0D8C692392712E91702E +8F6F2B937332BEAA84CABB9DC9B99BCEC1A5D0C4AAD3C6AED3C6B0D3C7B0D1C6AED2C6B0 +A89165896C2F74510C6C49006D4B017756137C5C1C8163278164277D5F22A28C62CABEA4 +C9BDA3CBBFA8CBBFA8C8BCA4C4B79DBCAE92AF9F7DB3A4848C75475F3F006D5014735820 +765C24745A2370551D6B50176C51196F551E79612F806839AEA082C8BFABC5BBA6C3B9A3 +C1B7A1BAAF97B0A488ADA084A99B7F9D8D6D634A16583E05583E065036004B3100513703 +604814644E1C6C572A83714CA29578AEA28AA69A7FA29578A4977BAA9E85B0A68EB1A790 +AFA48DB0A58F95886B4C350B442C005742135F4B1E68542B6D5B336D5C34645128614E24 +93866BA499829E937A9F947CA1967DA69C86ABA28DACA38EAAA18CAAA08BAAA18CABA18D +B3AA99968B726C5C396F603F7162416959343F2B0C311C04A9A7A6C9CFDCC1C6D2C3C9D5 +C3C8D4C5CAD5C6CBD6C5CAD5C7CCD7C8CDD8C9CED8CACFD9CBCFD9CCD0DACDD1DBCFD3DC +D1D5DED2D6DED4D8E0D5D9E1D7DAE2D9DCE3DADDE4DDE0E6DEE1E7E1E4E9E3E5EBE4E6EC +E7E9EEE9EBEFEAECF0ECEFF1EDEFF2F0F1F4F2F3F6F2F3F6F3F4F6F4F5F7F7F8F9F8F9FA +F8F9FAF9FAFBF9FAFBFBFBFCFCFCFDFCFCFDFDFDFEFEFEFDFEFEFEFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFFFFFFFDFDFEFFFFFFF3F3F83F3C8D0000670C096F08056D09066E0B086F +0300695D63A5DBEEF9D4E6F4D5E8F5D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D3E6F4DCF0FAD0E3F2B5C4DE4D509200005308035F080160 +06005E07005F06005E07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005E07005E07005F07005F07005E07005D07005D07005E07005E06005D07005D06005D +07005D0A005D1605601906611805601805601906610F025E05005C06005B06005B06005B +06005B06005B06005B06005B06005B06005B06005B06005B06005B06005B05005B05005C +05005C05005C05005C06005C06005D06005D06005D07005C07005D06005D06005D07005E +07005E07005D07005E07005E07005F07005F07005F07005E07005F07005F06005E07005F +0A036104005C14156A8198C6A1C1E1B8DEF4B4D9F1AED2EDAFD4EEABD1ED9ECAEA9DCAEA +82BAE452A1DA58A4DB5FA8DD5EA7DD5FA8DD61A9DE67ACDE66ABDD87BDE5ACD2EDABD1EC +AED3EDB1D4EEB3D5EFB3D5EEB2D5EFB1D4EE90C2E783BCE47AB6E371B1E065ABDD57A4DB +55A3DA53A2DA4E9FD973B2E196C6E895C5E89FCAEAA7CFEBA8CFECABD1EDA6CCE92D348B +0100670A076F09066E09066D0B086E00006C5D527EF7E3B7F0DEB8EFDEBDF1E1C3F1E4C7 +F3E7CDF2E6CFF2E7CFF3E9D2EFE1C3E0C58DDEC185D8B773D5B26AD2AC61D0AA5ED0AA5D +CFA85BCDA557CFAA60E2CEA3E5D3ADE5D3AEE8D9BBEADCC0ECE0C8EEE2CCE9DBBFD8BE8E +D3B781CAA969C5A15BBA8F3EB58A33B78D3AB99142B99245BC9851C3A263DAC59FE2D5B9 +E2D4B8E3D6BCE5D9C0E2D3B8CCB484C8B07DC6AC7AC2A671B6985AA37E319C7320956915 +986F1CA07B31A88745B89D67D5C5A6D2C1A1D3C3A4D6C7ABD7C9AED9CCB3DBCFB6D7CBB0 +B79E6EAA8E56957430875F1182590B80590A8660158F6E2B91712F91702F8B6A23A48954 +CABB9CC8B899CBBC9FD0C4A9D2C6ACD3C7AFD4C7B0D2C7B0CFC4ACC8B99D8F72397A5915 +6E4C036C4A01714F087D5E1F80612482652A7E6125866B33BBAC8CCBC0A9CBBFA7CCC1AA +CABFA8C3B79DBDB094B5A787B2A282A795726A4C1262430271551C785F28775E27735921 +6F541B6D5119725822725923877044A18F6CC2B7A1C6BCA8C5BBA7C0B69FBCB29AB5A98F +A99C7EADA1848F7D586D5626553A015339024E33004E33005239035B440F6A5525664F1F +7C6A42B0A58CAA9E83A39579A29579A5997EAB9E86AFA48CB1A790B1A790ABA088A79D83 +604B2548310359451463502569562D6D5B336C5A336450276C5B34887B5BA2977F9C9177 +9E937AA49982A69B85A9A08AACA38DABA28DAAA18DAAA18DABA28EB5AE9BACA490756645 +6C5C386C5E3A6D5E3A5240193E2B1CA9A49ABCBFC7C4C9D7C2C7D3C3C8D4C3C8D4C5CAD5 +C6CBD6C6CBD6C7CCD7C8CDD8C9CED8CACED9CBCFDACDD1DBCED2DCCFD3DDD1D5DED2D6DE +D4D8E0D5D9E1D7DAE2D9DCE3DADDE4DDE0E6DEE1E7E1E4E9E3E5EBE4E6ECE8EAEEEAECF0 +EBEDF0ECEEF1EEEFF3F0F1F4F2F3F6F2F3F6F3F4F6F5F6F8F7F8F9F8F9FAF9F9FAFAFAFB +F9F9FAFBFBFCFCFCFDFCFCFDFDFDFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFEFEFEFEFEFCFCFDFFFFFF6E6CA90000650B086F09066E08056D0B086F00006835378B +CEE0F0DAEEF9D4E7F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D5E8F5D6E9F6D4E7F4D5E7F5E5FAFF8E99C12A27790D0D6000005907005F06005E +07005F06005E07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005E07005E07005F07005E07005E07005D07005D07005D07005E06005E07005D0A005E +1605601906611805601805601906610F025E05005C06005C05005C05005C05005C05005C +05005C05005C05005C05005C05005C05005C05005C05005C06005C06005C06005D06005C +06005C06005C07005C07005D07005D06005D06005D07005E07005D07005D07005D07005E +07005E07005F07005E07005E07005E07005F07005F06005E07005F06005E000057000056 +485297B0D3EDB5DAF2ADD0EBAED2EDB0D4EEAFD4EEABD1ED9DCAEA9DCAEA82BAE452A1DA +57A3DB5DA7DC5DA7DC5EA7DD61A9DD67ACDE67ABDE88BEE5ACD2EDABD1ECAED3EDB0D4EE +B2D5EFB2D5EEB2D5EFB0D3EE8EC1E683BCE479B6E270B1E063AADD56A3DA56A3DB52A1DA +4E9FD977B4E297C6E895C5E89FCBEAA8CFEBA7CEEBB3DAF292B2D917187905016B0A076F +09066D08056E0C086E0501688B7C89F6E2B6ECDAB6F0DFBEF0E2C4F2E4C8F3E7CEF2E7CF +F2E7CFF3E9D3EEDEBFDFC48ADEC084D8B772D5B26AD2AC61D0AA5ED0AA5DCFA75BCDA455 +D1AD66E3D0A7E5D2ACE6D3AFE8DABCEADDC2EDE0C8EEE3CDE7D7B9D6BC89D2B67FC9A765 +C39F57B88E3BB58A35B78D3BB89043B99245BD9A54C9AC74DBC8A4E3D5B9E3D5B9E4D6BC +E6DAC2DFCFB1CAB17FC9B17FC5AA77C1A56FB49555A17B2C9A701C966A169A7120A17B30 +AE8F51BFA676D5C5A6D1C0A0D3C3A3D6C8ACD8CAAFD9CDB3DCD1B9D3C5A7B09662A78A51 +93712B835C0B81590A815A0C87621890702D91712F91702E8D6C28AC9564CBBD9FC8BA9A +CCBEA1D0C4AAD2C6ADD3C7B0D3C7B0D3C8B2CDC0A7BFAF8E87692B7755116D4B016E4C04 +73520D7F602282632782662B7E61258F7641C2B599CABFA7CBC0A8CCC1AACABEA7C1B49A +BAAC8FB4A483B4A58699845C634406694B0D72571E785F29765E277359216F541C6E521A +735A24735924927D54B3A587C3B9A3C5BBA7C5BBA6BEB39DBBAF97B3A68AAB9D80AFA286 +7E6A3F5D440E563C035036014D310051360159400A6049166A5425654E1E8B7A57B1A68E +A69A7FA19477A29579A79C82ADA18AB0A58EB0A68FB2A892A79B828E7F61533C11513B0B +5D491B6653296B59306E5D3567542C5C471D7A6B479B90769F937A9D9279A0957CA79B85 +A89D88A9A08AABA28DABA28DABA28EABA28EADA591B8B19FA0967F6D5E3B6D5E396A5B36 +695A3347330E4C3B2AC8CACCC0C4CDC3C8D4C3C7D3C3C8D4C3C8D4C5CAD5C6CBD6C6CBD6 +C7CCD7C8CDD8C9CED8CACFD9CBCFDACDD1DBCED2DCCFD3DDD1D5DED2D6DFD4D8E0D5D9E1 +D8DBE3DADDE4DBDEE5DDE0E7DEE1E7E1E4E9E4E6EBE5E7ECE8EAEEE9EBEFEBEDF0EDEFF2 +EEEFF3F0F1F4F2F3F6F2F3F6F3F4F6F5F6F8F7F8F9F7F9FAF9F9FAFAFAFBFAFAFBFBFBFC +FCFCFDFCFCFDFDFDFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFF +FDFDFDFFFFFFDFDEEC2C2A820B086F09066E09066E09066E0A086F05026B5B61A4A0ADD2 +DBEFF9D4E7F4D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D5E8F5D6E9F6D5E8F5D4E6F4D9EDF8CCDEEF919CC4201C710801600A036107005F07005F +06005E07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005E07005F07005F07005E07005E07005E07005E06005D07005E0A005F160560190661 +1805601805601906610F025E06005C07005D06005D06005D06005D06005D06005D06005D +06005D06005D06005D06005D06005D06005D06005D07005D07005C07005D07005D07005D +06005D06005D06005E07005E07005D07005E07005E07005E07005E07005F07005F07005E +07005F07005F07005F07005F06005E0802600902610B06634A56997289BCADD2EDB1D5EF +ADD1ECB0D4EEB0D4EEAFD3EDAFD4EEABD1ED9ECAEA9DCAEA81BAE44F9FD954A2DA5AA5DB +5AA5DB5EA7DC63AADE67ACDE69ADDF8AC0E6ACD1ECABD1ECAED3EDB0D4EEB1D5EFB1D5EE +B3D5EFACD2ED89BFE583BBE477B5E16DB0E061A9DD55A3DA55A3DB51A0DA51A0DA81BAE4 +97C6E895C5E89FCBEAA7CEEBAAD1ED768EC33C45950200680A086F09066E09066D05026E +211B6E957966D7C09BF3E1B8EDDBB6F0E1C0F0E3C5F2E5CAF3E8D0F3E8D0F2E7D0F3E8D3 +EAD6AFDEC186DCBE81D7B56FD4AF65D2AD61D0AA5ED0A85DCDA659CBA251D7B87BE5D3AD +E4D1A9E7D6B3EADCC0EBDFC5EEE2CBEFE4CEE0CCA5D3B77FCFB277C3A15ABF9A4EB68C37 +B58C38B68E3CB89145B89146C3A466DCC9A5DFCEAFE2D5B9E3D6BBE4D7BDE5D9C2D4BF97 +C7AD79C8AF7EC0A56FBC9F66AF8C499A711E95691299701F9E772BA27E37C0A97ACEBC98 +D2C2A1D2C2A2D4C4A6D7C9AED8CBB1DACDB4D8CBB1C3AE86A4874CA081448B661D7F5706 +80590A8560158B682193733290702D937334A78D5ABFAC87CBBDA0CABC9ECEC0A4D1C5AD +D2C7AED3C7B0D2C7B0D5CAB4B6A27C9C824E775511704C046C49007553107B5B1B836427 +84662B82652A957E4CAF9D78CCC1AACBC0A8CCC1AACABDA7C7BAA2BCAD90B2A382AE9E7C +968256755A2066470972561D745820755C24745A237157206F551D70561F79612E836C3E +B5A78CC8BEAAC4BAA5C3B9A3C0B6A1B8AC93B3A68BAC9F81A4957791815C563D08503500 +5338014C30004E32005D440F67501E685222654F1E756236A6997EA5987CA29478A2957A +A69A80AFA48BB1A68FB0A68FAFA48EB0A68F7C6B49482F03523B0C614D216551276B5830 +6C5A3368562D5D491D6452299B9075A399819F937AA59A83A69B84A9A089AAA08AA89F89 +ABA28DACA38EAFA692B0A794B2A99694886F7A6C4C65553165552F5F4E284E3C13331E00 +928B82CAD0DDC2C6D2C2C7D3C3C8D4C4C9D4C4C9D4C5CAD5C5CAD5C6CBD6C8CDD8C8CDD7 +C9CED8CBCFD9CCD0DACDD1DBCED2DCCFD3DDD1D5DED2D6DFD5D9E1D5D9E1D7DAE2DADDE4 +DBDEE5DEE1E7DFE2E8E2E4EAE4E6EBE5E8ECE8EAEEE9EBEFEBEDF0EEEFF3EEEFF3F1F2F5 +F1F2F6F3F4F6F4F5F7F5F6F8F7F8F9F8F9FAF9F9FAFAF9FAFAFAFBFBFBFCFCFCFDFCFCFD +FDFDFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFDFDFD +FFFFFF9E9DC64543920000680C097008056D09066E0B096F000066404392D5E7F5D5E8F5 +D4E7F5D6E9F6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D5E8F5D5E8F5D4E7F5D7EAF6E5FAFFAEBCD95153940D0C6003005C08016008016007005F +07005F06005E07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005E +07005E07005F07005F07005F07005E06005E07005E0A005E160560190661180560180560 +1906610F025F06005D07005D07005D07005D07005D07005D07005D07005D07005D07005D +07005D07005D07005D07005D07005D06005D06005D06005E06005E06005E07005E07005D +07005D07005D07005E07005F07005F07005F07005F07005E07005E07005F07005F06005E +07005F08015F08016004005B0000525B6FAAB3DEF6B1DAF2ADD2EDAFD2EDB0D4EEAFD3ED +AFD3EEAFD3EDAED3EEABD1ED9ECAEA9ECAEA7FB9E44C9ED854A2DA5BA6DC5AA5DB5EA8DC +64ABDD69ADDE6BAEDF8BC0E5ACD1ECABD1ECAED3EDB0D4EEB1D5EFB1D4EEB4D5EFA9D0ED +87BDE582BBE475B4E16CAFDF60A9DD54A2DA53A1DA50A0D955A2DA87BEE696C5E895C5E8 +9ECAE9A9D3EE9BBFE11D1E7D04006A0A076E09066E08056E0B086D00006E644F67EEC673 +EAD3A3EEDDB9EEDCB8F0E2C2F1E3C7F2E6CCF4E8D1F4E8D2F2E7D0F2E7CEE7D1A6DFC285 +DCBE7FD5B36DD2AF64D0AD60CEA85BCDA75BCCA557CAA252DBC28CE5D3ADE3D0A8E7D8B7 +EBDEC3ECDFC7EFE4CFEDE1CBDBC396D0B57CCCAE70C19B51BC9548B58B37B68D3BB78F3E +B99247B79145CCB07CE2D3B6E0D1B2E2D5B9E3D7BCE3D5BCE0D1B5CCB486C5AB79C6AC7B +BDA269B8995DAA843E966C179367119C75279F7A2FA88744CCB994D2C2A2D1BF9DD3C3A3 +D4C5A8D8CBB1D9CCB3D9CCB3CAB997B59D6DA081449B7C3C855E117E5505815A0C8A651E +8E6C279373338E6E2A9A7D43BFAD89C6B696CBBDA1CCBEA1CFC2A7D3C7AFD4C8B1D2C7B0 +D3C8B3D0C4AC9C8350846527724F096B48006E4B047B5B1A7F602283662B82662B83672C +B4A27FC5B79CCCC1A9CDC2ABCBC0A9C7BAA1C3B59CB6A789B2A383A896726C501367490A +70541A71571F70551E70541C6F521B6E541C7157207259238670429E8D69C4B9A4C4BBA6 +C5BAA5C0B59FBDB29AB3A68AAD9E81AD9F8486734A654D1E4E33005439014F34004B2F00 +513703654F1C6B56276650206B56278D7D59A99D82A09376A29579A79B81ACA188B1A78F +B2A790AFA48DB0A68FA2967C503A0C4832005D4A1B69562E6B58316B59316A572F584317 +6C5B338E8262A1977E9B9077A2977FA89E88A89F89A89F89A79E88A89F89ACA38FAEA592 +B0A895B8B2A1A69C866E5D3A6C5B38645530594A215341182F19003C280CBFBFBDC3C9D6 +C2C6D2C3C8D4C3C8D4C4C9D5C5CAD4C5CAD5C5CAD5C6CBD6C8CCD8C7CCD7CACED9CBCFDA +CCD0DACDD1DBCED2DCD0D4DDD2D6DED3D7DFD5D9E1D6DAE2D8DBE3DADDE4DBDEE5DEE1E7 +DFE2E8E2E4EAE4E6EBE5E7ECE9EBEFEAECF0EBEDF1EDEEF2EEEFF3F1F2F5F1F2F5F3F4F6 +F5F6F8F5F6F8F7F8F9F8F9FAF9F9FAFAF9FAFAFAFBFCFCFDFCFCFDFCFCFDFDFDFEFDFDFD +FEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEDFDEEC +8685B800006606036C09066E08056D0A076F06046C1C1B7BB0BFDDE0F4FCD5E8F5D5E8F5 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D6E9F6 +D5E8F5D3E6F4D7EAF6C9DAECA9B6D552549608005F03025C00005903005C06005E07005F +06005E07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005E +07005E07005E07005F06005F07005E0A005E1605601906611805601805601906610F025F +06005D07005E06005D06005D06005D06005D06005D06005D06005D06005D06005D06005D +06005D06005D06005D07005D07005D07005D07005D07005D07005E07005E07005E07005E +07005E07005F07005E07005E07005E07005E07005F07005F06005E07005F03005B01015A +00005721227747559988A9D2ABD3EFA7CDEAADD1EDB0D4EEB0D3EDAFD3EEAFD3EEAFD3ED +ADD2EDA9D0EC9ECAEA9ECAEA7EB9E34C9ED856A3DA5CA7DC5BA6DB5FA8DC64AADD68ACDE +6CAFDF8CC0E6ABD1ECABD1ECAED3EDB0D4EEB1D5EFB1D4EEB3D5EFA8CFEC86BDE482BBE3 +75B4E16CAFDF60A9DD54A2DA53A1DB53A1DA58A4DB89BEE695C5E894C4E89FCBEAA9D2EE +748EC30D0A7009066E09066E08056D09066D04026E07046C987A61E8C780E9D3A6EEDDB8 +EEDCB8F0E2C4F1E4C9F2E6CDF3E8D1F3E8D2F2E6CFF1E3C9E5CFA1DEC185DBBD7FD5B36D +D2AF65D0AC60CEA85BCEA75BCBA456CBA456DDC695E5D2ADE4D1ABE8D9B9EBDFC5ECE0C8 +EFE4D0EBDFC6D9C091D0B47ACBAC6DC09A4FBC9445B58B37B68D3CB78F3FB99348B89247 +D1B98BE2D3B7E1D1B4E3D5BAE4D8BEE2D4B9DBC9A8CBB283C5AB79C5AB7ABB9F66B59658 +A78239966A149468129D772B9F792EAF8F52D0BE9CD2C1A0D1C19FD3C3A5D5C6A9D8CBB1 +D9CDB4D8CBB1C2AC85B197649E7F41977735835C0D7D5505815B0D8A661F8F6D29937332 +8C6B28A28752C6B594C8B899CCBDA1CDC0A3CFC3A8D2C7AFD3C8B1D2C7B0D4CAB5C9BB9F +91763E806121704D066B47006F4D067D5E1E80612483662C8063288A7039BEAF91C8BBA2 +CBC0A9CDC2AACABFA8C4B89FC0B398B4A484B6A88898845A644606684A0C71551B71571F +70551D6E521A6D51196F551D735823725923948058B1A386C3B9A3C5BBA6C4BAA5BFB49D +BBB098B0A386AD9E81A99B7E6F582A583E0A5135005237004E3300503601573E09675220 +675121644D1D84734D9A8C6CA5987DA09377A4977CAB9F87AFA38BB1A78FB1A58EAEA38C +B2A7918979584D36055641106250236C59326C5A3368552D634F26523D0F8173519B9176 +9E947A9F947BA39881A79E87A89F88A89F89A79E88A99F8AAEA592B0A794B4AB99B5AE9B +92876D6959356B5B38604F2A57461A49360E281200524025C5C6C8C3C9D6C2C7D3C2C7D3 +C3C8D4C4C9D5C5CAD4C5CAD5C5CAD5C6CBD6C8CDD8C8CDD7CACED9CBCFDACCD0DACDD1DB +CED2DCD0D4DDD2D6DED3D7DFD5D9E1D6DAE2D8DBE3DADDE4DBDEE5DEE1E7DFE2E8E2E4EA +E4E6EBE5E7ECE9EBEFEBEDF1EBEDF1EDEEF2EEEFF3F1F2F5F2F3F5F3F4F6F4F5F7F5F6F8 +F7F8F9F7F9FAF9F9FAFAF9FAFAFAFBFCFCFDFCFCFDFCFCFDFDFDFEFDFDFDFEFEFEFFFFFF +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFFFFFFFFFDFDFEFFFFFFF5F5F9525098 +15127509066E09066E08056D0B086F0000673B3E8FC2D2E8CEE0F0D7EAF6D5E8F5D5E8F5 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F6D6E9F6 +D5E8F5D8EBF7E1F5FED3E6F4C1D2E7858EBB201C7118136B0A046108026007005F07005F +06005E07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005E06005F07005F0A005E1605601906611805601805601906610F025F06005E07005E +07005E07005E07005E07005E07005E07005E07005E07005E07005E07005E07005E07005E +07005E07005E07005E07005E07005E07005E07005F07005F07005F07005F07005F07005E +07005F07005F06005E07005F07005F07005F0802600903610F0C67404D946983B996BEE1 +A6D3F0A8D2EFA7CEEBAAD0ECADD2EDAFD3EDB0D4EEAFD3EDAFD3EDAFD3EDADD2EDA9D0EC +9ECAEA9ECAEA7FB9E44F9FD957A4DB5EA8DC5EA7DC5FA8DD63AADD67ACDE6FB0E08EC2E7 +ACD2ECABD1ECAED3EDB0D4EEB1D5EFB1D4EEB4D5EFA2CCEA82BBE481BBE474B4E16BAFDF +5FA8DC55A2DA54A1DB57A4DB62AADD8EC1E692C3E794C5E996C0E34C5AA31E217F030069 +0A076F08056D09066D0C086D140E6D644E60E3BA5FE9D2A3ECD8AEEEDCB8EFDEBBF1E3C7 +F2E5CBF2E7CEF3E7D0F3E8D2F0E3CAEBD9B6E2CA97DBBE81D9B978D4B169D2AD64D0AA5F +CEA75ACDA658CBA557CFAD67E3CFA6E4D2AEE5D4B1EADBBEECE0C8EDE1CBEDE1CAE5D5B5 +D3B984CDAF72C6A461BB9346B88F3EB58C39B68E3EB79042B89347BF9C59DCCAA8E1D4B7 +E2D4B7E3D6BCE5D9C2DCCCACCCB586C7AE7DC3A976C1A773B6975AAE8C4A9F782B946914 +976D1BA07B32A27E36C2AA7AD4C5A6D1C09ED2C3A3D4C6A9D6C8ADD8CBB1DBCFB7CEBD9D +AD915CA5884D9676338D69207F5708805A0C8661188E6C27906F2C93743598793FB9A57C +CCBEA1CABB9DCDBFA4CFC2A7D1C4ABD2C7B0D2C7B0D2C6AFD4C8B2AE99707D5C1A76540F +6D4A016C490076551281632782642982662A806327A9956DCDC1AACABEA6CCC1ABCCC0A9 +C7BBA3BFB195BAAC8DAB9B7798835973571D65460870531872581F70551C6F531A6C5218 +6C5118735923765D29856E3FB9AC92C7BDA8C3B8A3C3B8A3C1B6A0B8AC93B3A78CA99B7E +AB9D80826E484D32004F34005134004F33005238015E4510654E1C6B5526634C1B7B6940 +A99C83A5987DA29579A5997FAA9F86B2A790B1A790AEA48CADA28AA3967C82714C5D4719 +59441568542B6C5A316A582F68552C5C491C4E390A6C5A34A1967DA0957BA1977EA39981 +A59B83A79D86A79D86AAA18BAAA18CACA490B1A997B5AD9BADA5918072526B5C375F4E29 +5E4D28503D134330043925085A48308F836CC7CAD1C2C7D4C2C7D3C2C7D3C3C8D4C4C9D5 +C5CAD4C5CAD5C5CAD5C6CBD6C8CDD8C9CED7CACED9CBCFDACCD0DACDD1DCCFD3DCD0D4DD +D2D6DFD3D7DFD5D9E1D6DAE2D8DBE3DBDEE5DCDFE6DFE2E8E0E3E9E2E5EAE5E7ECE6E8ED +E9EBEFEAECF0ECEEF1EDEEF2EFF0F3F1F2F5F3F4F5F3F4F6F4F5F8F5F6F8F7F8F9F8F9FA +F9F9FAF9F9FAFAFAFBFCFCFDFBFBFDFDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFBFBFCFFFFFFB9B8D55E5DA0000066 +0C086F08056D09066E08056D0B096F676FACB5C5E0DFF3FCD3E6F4D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D6E9F6D5E8F5 +D3E5F3D6E9F6DAEEF9E5FAFFB7C6DF696EA606075B00005702005B05005E07005F06005E +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F06005F +07005F0A005E1605601906611805601805601906610F025F06005E07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005E07005E07005E07005E07005E07005F07005F06005E +07005F06005E04005C03005C0101580000515771ADA7D9F5A4D1EFA3CFED9FCAE9A3CCEB +A8D0ECAAD1EDACD1ECAED3EDAFD4EEB0D3EDAFD3EDAFD3EDACD2EDA9D0EC9ECAEA9ECAEA +81B9E44F9FD955A2DB5EA8DD5EA7DD5FA8DD62A9DD66ACDE70B1DF90C3E7ACD2ECABD1EC +AFD3EDB0D4EEB1D5EFB1D5EEB4D6EF9ECAEA81BBE481BBE473B3E16AAEDF5EA8DC56A3DA +54A2DA58A4DB67ADDD91C3E790C1E69DD0EF7797CA06036C06026B0A076F08056D08056E +09066D05026E634F63B08B56E5BE69E9D5ADECDAB1EDDCB8EFDFBDF1E4C8F3E5CDF2E7CF +F2E6CFF3E8D2EFE2C6E8D5ACE1C894DABC7CD8B673D3AF66D1AC62D0A95ECDA75BCAA455 +CCA85DD4B678E4D1AAE5D3AEE6D6B3EADCC1ECE1CAEEE3CEEADCC2E0CEA9D0B57ECBAB6B +C3A15CB99242B68C3AB58B38B78F3EB89145B89146C4A669E0D1B2E3D4B7E2D5B9E4D7BF +E7DBC4D6C49FC4AB77C7AE7CC2A873BFA46EB39353AC89439C7324966B189A7222A17C35 +A78442CCB993D3C3A3D1C09FD3C4A5D6C8ACD8CAAED9CCB3DDD1BAC2AF87A78A51A28348 +906E278660147F58088460158A661F906F2D906E2D947436A8905DC4B290CBBC9FCBBC9E +CEC1A6D0C2A9D1C6ACD2C6AFD2C5AFD1C5AED0C3AB9C8350755410704D066D4A026F4C05 +7C5D1D8265298165297F632585692EBBAC8ECBC0A9CABEA6CDC2ABC9BDA6C4B89FBAAB8E +B8A98AA3916A6D5015684A0C6E531773581E73581F6E53196D51196C50176E531B765D28 +765C289A8761C7BEA9C3B9A2C2B7A1C0B59FBDB29AB3A68BADA083AA9C7FA6987A60481B +4D32005337014E32004E3300583D07654F1C6A5423685020715B2E968765A89C81A19377 +A5997EACA087AFA38BB2A790B1A68FACA289B1A790938465533C0A5943146754296C5B32 +6D5B33655228624F24513C0C483101908266A1967D9D9277A59A82A49982A59B84A69C85 +A69D86ABA28DACA38EB0A794B1A996B9B2A2998F765E4E2760502957471E524016453105 +331E00422F138D826AA79F8DC6C9D1C2C7D4C2C7D3C2C7D3C3C8D4C4C9D5C5CAD4C5CAD5 +C5CAD5C6CBD6C8CDD8C9CED7CACED9CBCFDACBD0D9CED2DCCFD3DDD0D4DDD2D6DFD3D7DF +D5D9E1D6DAE2D9DBE3DBDEE5DCDFE6DFE2E8E0E3E9E3E5EBE5E7EDE6E8EDE9EBEFEAECF0 +ECEEF1EDEEF2EFF0F3F1F2F5F2F3F5F3F4F6F4F5F7F5F6F8F8F9FAF9FAFBF9FAFBF9F9FA +FAFAFBFCFCFDFBFBFCFDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEF3F3F8BAB9D619167707046D0A076E +09066E08056D0D0B711D1C7A727AB3D7EAF6D5E7F5D5E8F5D6E9F6D5E8F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D6E9F6D5E8F5 +D4E7F4D6E9F6CBDDEEC0D0E68F9AC26065A01F1B700B05620B046109026007005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F06005F07005F0A005E +1605601906611805601805601906610F025F06005E07005F07005E07005E07005E07005E +07005E07005E07005E07005E07005E07005E07005E07005E07005E07005E07005E07005E +07005E07005E07005F07005F07005F07005F07005F07005F07005F07015F0902600A0461 +100C67120E685368A77295C684AED89BC9EA9EC9E9A0CBEAA0CBEAA3CDEBA8D0ECAAD1ED +ACD1ECAED3EDAFD4EEAFD3EDB0D3EEAFD3EDAED3EDA9D1EC9ECAEA9ECAEA80B9E44D9FD9 +55A3DB5FA7DD5EA7DC60A8DD63AADD67ACDE74B3E091C3E7ACD2EDACD2EDAFD3EDB0D4EE +B1D5EFB1D5EEB4D6EF9BC9E980BAE37FB9E370B1E166ACDE5AA5DB55A2DA53A1DA5CA6DC +71B1E091C2E790C1E691BFE4404F9C05016B0A086F09066E08056E0A076D08056E2A216A +B59159CEA451E1BE76EDDAB2EDD9B2EEDCB9EFDFBEF1E4C9F3E6CDF2E7CFF2E6CFF3E8D3 +EEDFC0E5CEA1E0C690D8B978D6B46FD2AE64D0AB60CFA85CCCA65AC9A251CFAE68DAC18C +E4D0AAE5D4B0E7D7B6EBDEC3EDE1CBEEE3CEE5D5B3DDC89ECFB37BC7A764C19D55B68E3C +B58B38B48C3AB68E3FB79146BA954ECBB07BE2D4B7E2D4B7E3D6BBE4D7BEE4D7BED0BB91 +C5AA77C7AD7BC1A671BDA16BB08E4DA7823B9A701F986F1E9C7527A68441B3965CD1C09E +D2C1A0D2C1A1D4C5A6D7C9AED8CBB0DACEB6D9CCB2B8A071A5874D9E7F428B661D835D0F +80590B88641C8C69249171318E6D2C9C7F45BBA881C6B695CABB9ECBBC9FCFC2A7D0C4AA +D1C5ACD1C5ADD2C7B0C9BBA0BAA8858F733A7250096D4A016F4D0673520D7F602383662A +806326876C3398804FC5B89DCBBFA8CCC0A9CBC1A9C6BBA1C1B59AB6A688B6A6878F784B +6242036B4D1072571C755A2172561E6D52186C50176D51186F541D7B6330856E3FAE9F80 +C6BCA8C3B8A2C0B69FBFB49DB9AE95ADA082AC9F809B8B6A85714B553A084F33004E3200 +4E34005238015C440F6751206852216D5829948462A19376A5987DA4977BA99E84AEA38A +AFA58DB1A68FAFA48DA89C83A3967B75633B574011604B1F69572D6C5A3269562D5E4A1E +5540115B471C7362409B8F75A1967DA2977EA49A82A49A82A59B84A69C87A79E89ACA38E +AEA590B1A996B5AD9BB0A895786A495C4C245B4A23503D1349350A402B0337230265553B +94886FABA495C5C9D4C2C7D3C2C7D3C2C7D3C3C8D4C4C9D5C5CAD4C5CAD5C6CBD6C6CBD6 +C8CDD8C9CED7CACED9CCD0DACCD0DACED2DCCFD3DCD0D4DDD2D6DFD3D7DFD6D9E1D6DAE2 +D9DCE3DBDEE5DCDFE6DFE2E8E0E3E9E3E5EBE5E7ECE6E8EDE9EBEFEAECF0ECEEF1EEEFF3 +EFF0F3F1F2F5F3F4F5F3F4F6F5F6F8F6F7F8F8F9FAF9FAFBF9FAFBFAF9FAFAFAFBFCFCFD +FCFCFDFDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFDFDFDFFFFFF605EA20000660D0A7009066E09066E +09066E010069131074BACBE4DBEEF9D4E7F4D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5 +D7EBF7DCF0FADEF2FBDDF1FBC8D8EC34377B00004A04025A04005D06005E080260090260 +08016007005F07005F06005E07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F06005F07005F0A005E160560190661 +1805601805601906610F025F06005E07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07015F08026008026007005F06005E04005C0000550404577891C2A4CDEB +9ECDED9CD1F097C9EB9BC8E99FCBEBA0CBEAA0CBEAA3CDEBA9D0ECAAD1EDACD1ECADD2ED +AED3EEB0D4EDAFD3EEAFD3EDAED3EEAAD1ED9ECAEA9FCAEA80B9E34C9ED855A3DA5FA8DD +5EA7DC5FA8DD62A9DD68ACDF77B5E294C5E8AED2EDAED2EDAFD3EDB0D4EEB1D5EFB1D4EE +B3D5EE98C7E87FB9E37DB8E26CAFDF61AADD56A2DA53A1DA4FA0D962AADD7CB8E390C1E7 +94C4E86D8EC405006A08056D09066E08056D09066D0D096D03016E796060E9BC54D8AD50 +E2C283EEDCB7EDDAB4EEDDBBF0E0BFF1E5CAF3E7CEF2E6CEF1E7D0F2E9D4ECDAB9E3C896 +DFC38CD7B674D4B16BD1AB61D1A85DCEA75BCBA659C7A04ED4B578E2CDA3E3CFA8E6D6B5 +E7D9BAEBDFC5EDE2CDEEE3CDDDC99FD7C08ECEB075C3A25CBE994FB48936B38934B38C3A +B48D3FB79248C0A060D3BD91E4D6BBE2D3B8E4D7BEE3D6BCDECFB1CAB383C7AF7CC7AE7D +BEA36DBA9C64AC8945A47D33986E1B9C74269D772CB19257C6B085D3C3A3D1C0A0D2C2A2 +D5C7A9D7CAB0D8CBB1DCCFB9D0C0A2AC9059A28449987837825C0E7F5708825D108B6821 +8E6D299373368D6B2BA9905DCDBFA1C8B999C9BA9CCABC9FCEC2A8D1C5ABD1C4ACD0C3AB +D3C8B2BDAC8A9E84528162236C4A016B4900714F0A77571681632783652B7E5F22998152 +B5A382CABFA7CCBFA8CDC2ABC8BEA6C2B79CBCAF93B4A483B2A2817257206142016F5218 +765C25765C2471551C6D52186C51186F551C715720836C3DA1906CC1B69FC5BAA5C2B7A2 +BEB39CBDB299B5A98FA99B7CADA0837F6A425439084F33014E32004B2F00503601583F07 +654E1C6B5526634C1B7F6E46B1A68DA89C81A4987BA79B81ADA28AB0A68EB0A68EADA28C +AEA38CA1947873623A5C4618604B1F68542A6B593069572E624E224F390A412900746341 +A89E87A2977EA39982A59C85A59B84A49982A59A83A79E88A9A08BAEA592B0A794B3AB98 +B7AF9F988D7557461E56451B503E12453103402B003F2B065A482B8C7F67998E76ACA799 +C4C9D4C2C7D3C2C7D3C2C7D3C3C8D4C4C9D5C5CAD4C6CBD6C7CCD7C6CBD7C8CDD8C9CED7 +CACED9CCD0DACDD1DBCED2DCCFD3DDD1D5DED3D7DFD4D8E0D6D9E1D7DAE2D9DCE4DCDFE6 +DDE0E6DFE2E8E0E3E9E3E5EBE5E7ECE6E8EDEAECEFEBEDF0ECEEF1EEF0F4EFF0F3F2F3F5 +F2F3F5F4F5F7F5F6F9F6F7F8F8F9FAF9FAFBF9F9FAF9F9FAFAFAFBFCFCFDFDFDFEFDFDFD +FEFEFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFEFEFEFCFCFDFFFFFFAFAECF06046C02006A09066E09066E09066E0A076F +08056D767FB6DCF0FAD7EAF7D6E9F6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D6E9F6D5E8F5D4E7F5 +D3E6F4D5E8F5D2E5F3A2AED08E98C144458C0E086407025F00005800005600005905005D +06005E07005F06005E07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F06005F07005F0A005E160560190661180560180560 +1906610F025F06005E07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F06005E06005F06005E +02005B00005800005704005C04005C1D1D72515E9F6E83B79BBFE1A6CEEC9AC7E993C3E7 +93C4E79CC9EA9FCBEBA0CBEAA0CBEAA3CDEBA9D0ECAAD1EDACD1ECADD2EDAED3EEB0D4ED +AFD3EDAFD3EDAED3EEAAD1ED9ECAEA9ECAEA7EB8E34E9ED958A4DB61A9DD5EA8DD5FA8DD +64ABDD68ADDF78B6E296C5E8AFD3EDAFD3EDAFD3EEB1D4EEB1D5EFB1D4EEB3D5EE95C6E8 +7FB9E37EB8E269AEDF5EA8DD53A2DA52A1DA4E9FD964AADE80B9E498CCEE6382BD364495 +08046D09076E09066E09066D06046E0A066D624E63AB885ADFB356D6AB54E5C98EEEDBB6 +EDDAB4EEDEBCF0E0C1F2E5CBF3E7CEF2E6CEF2E7D0F3E9D3EAD8B2E1C793DEC189D6B470 +D3AF67D0AA60CFA75CCDA75BCAA455C7A04DD8BC83E4D1ABE3D0A9E7D7B6E8DABBEBDFC6 +EFE4D0ECE0C8DAC496D5BC8ACCAD70C19E56BC964AB38933B38934B48C3BB48E40B8934A +CAAE78D8C49DE3D6BBE2D5B9E5D9C0E1D3B6D6C59FC9B281C7AF7EC5AD7BBCA16AB89B60 +A9853F9F792C976E1C9D772A9E792EB99F6BCEBD98D2C1A1D2C1A1D2C3A4D5C7ABD8CAB1 +D9CDB4D8CAB0C9B692A88C53A0814395733081590B7E5607845F148C69248F6E2B907030 +8E6D2CB5A075CABB9DC7B89ACABB9DCBBDA1CFC2A8D1C4ABD1C5ADD1C5AED4C9B2AF9A71 +91743C7D5D1B6B49006B490074520F7A5B1B8165298062267F6225AA9770C1B397CABEA5 +CCC1A9CCC1AAC6BBA3C0B398BAAC8EB6A7889F8C6467480C6B4C1071551C775D25765C24 +70541B6C50176D5119725921715721937F56B8AC91C2B8A1C3B9A3C2B7A1BDB299BAAE95 +B1A488AB9E80A69879654D214E32015135014D31004B2F00553C065E4610695323644D1B +644E1C928461AB9E84A6997EA79A80AA9E84AFA48CB0A68FAEA48CABA088B1A68F8A7A58 +5B45175F4A1D65512669562C68552C655226584314462F024B350B8E8164A79C85A49981 +A59B84A59B84A49A82A49981A69C85A9A08AAAA28CAFA793B1A996B8B09F998E777B6D4E +55431A4E3B0F4631073D29013923004C3A1382755B93887194876EB5B0A7C7CCD9C1C6D2 +C3C8D4C3C8D4C3C8D4C4C9D5C4C9D4C6CBD6C7CCD7C7CCD7C8CDD8C9CED8CACFD9CCD0DA +CDD1DBCED2DCCFD3DDD1D5DED3D7DFD4D8E0D6D9E1D7DAE2D9DCE4DCDFE6DDE0E7E0E3E8 +E1E4E9E4E6EBE6E8EDE7E9EEEAECEFEBEDF0EDEEF2EEEFF3EFF0F4F2F3F5F2F3F5F4F5F7 +F6F7F9F6F7F8F8F9FAF9FAFBFAFAFBFAFAFBFAFAFBFCFCFDFDFDFEFDFDFDFEFEFDFEFEFE +FFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFEFEFEFEFEFEA8A7CC53519A03006A0B086F09066E09076E04006A151376 +52579EACBBDAD9EDF8D4E7F4D6E9F6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5 +D6E9F6E1F5FDE6FBFFD4E6F4C9DBEDA9B6D55658983938832A27780F0965090361080160 +08016008016008016007015F07005F07005F07005F06005E07005F07005F07005F07005F +07005F07005F07005F06005F07005F0A005E1605601906611805601805601906610F025F +06005E07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F +07005F07005F07005F07005F07015F08016008016008016008016008016018186F232679 +2B31816C84BA8AAAD3A1C4E4B2D8F1B6DEF5ACD4EFA5CDEB9DC9EA96C5E895C5E89BC9EA +9ECBEAA1CCEAA2CCEBA4CDEBA8D0ECAAD1EDACD1ECAED3EDAFD4EEAFD3EDB0D4EEB1D4EE +AED3EEAAD1ED9CC9EA9CC9EA7CB8E352A0D95DA7DC64ABDE61A9DD62A9DD67ACDE69ADDF +7CB8E399C7E9AFD3EDAFD3EDB0D4EEB2D5EFB2D5EFB1D4EEB1D4EE91C3E77DB9E379B7E2 +64ABDE5AA5DC4FA0D94EA0D94C9ED96DAEDF90C4E96A8DC50E0D7204006909066E09066E +09066D0A076D06036E655063E0B553DBB054D8AD55D9B05BE9D2A3EDDAB3EDDBB5EFE0BF +F0E1C4F2E5CCF2E6CEF2E6CEF2E7D0F2E7D0E6D0A3DFC48EDBBD81D3B069D1AC61CFA85C +CDA65ACCA659C8A14EC9A455DFC99CE5D3AFE4D2AEE9DABCEADDC0EDE1CAEEE3CEE5D4B4 +D3BA85D1B680C6A563BC964AB88F3FB28934B38A37B38D3FB58F42BF9E5DDAC8A4DFCFAF +E3D5BBE3D6BCE5DAC1D7C5A0C9B180C7AF7FC7AF7FC3AA76B7995DB19150A27D32997121 +997020A07C33A68542CCB891D6C6A8D2C1A1D3C4A4D3C5A7D8CAAFDACDB5DBCEB7C5B38D +B69F6FA284489776348C681F7D55057F580A89651E8F6C2A906F2D8D6B289E8149C7B898 +C7B899C9BA9DCBBDA0CDC0A4D1C4ABD2C5ADD2C6AFCDC1A7C4B59790753C805F1F714F08 +6C4A016E4C05795A1A80622581652982662A937946C5B89ECBBFA7CBC0A7CBC0A9C9BDA6 +C1B499B9AA8CB3A484937D5173572064460674581F755A22775D26745A226E531A6D5219 +725822765D29826A3CBAAD93C9C0ACC4BAA5C0B59FBDB39BB5A98FAFA286AC9F8192805D +745D344A2E004D3100513500503501513602614A16685221675120675221806E45A89B80 +A29578A79A7FAEA28AB0A48DAFA58DADA28AAB9F86ABA087988A6C5E491B5B4517655127 +6A572D6653295A4619533D0D4129006553328E8165A69B84A69C85A89D87A79D86A69C85 +A49A83A59B84A9A08AADA490AEA591B1A896B5AD9C9E947C5F4E2755431A453108352100 +352000372200412D0684785AA09680998E78988E74B7B5B3C6CCDBC2C6D2C3C8D4C4C9D5 +C4C9D5C5CAD5C4C9D4C6CBD6C7CCD7C7CCD7C8CDD8CACFD9CBCFD9CCD0DACDD1DBCFD3DC +D0D4DDD1D5DED3D7DFD4D8E0D7DAE2D8DBE3DADDE4DCDFE6DDE0E7E0E3E8E1E4E9E4E6EB +E6E8EDE7E9EEEAECF0EBEDF0EDEEF2EEEFF4F0F1F4F2F3F6F3F4F6F4F5F7F5F6F9F6F7F8 +F8F9FAF9FAFBFAFAFBFBFBFCFBFBFCFCFCFDFDFDFEFDFDFDFEFEFDFEFEFEFFFFFFFEFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFF +FEFEFEFAFAFCFFFFFFA6A5CB00006705036B0A076E08056D09066E0A076E0000617079B2 +E4F9FFD7EAF7D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D6E9F6D5E8F5D3E6F4 +D2E4F3D6E9F6D9EDF8DBEFFAE3F7FEDFF4FC99A4C9201A7106015E000058000059000059 +00005902005A05005C05005D06005E07005F06005E07005F07005F07005F07005F07005F +07005F06005F07005F0A005E1605601906611805601805601906610F025F06005E07005F +07005F07005F07005F07005F07005F07005F07005F07005F07005F07005F06005E06005E +05005D03005B02005B01005901005901005A01005901005A4F62A385ABD69CC9E9AAD7F2 +A8D3EFACD3EEACD0ECAACFEBA8CFEBA5CFEB9DC9E996C5E895C6E99AC8E99DCAEAA1CCEA +A3CDEBA4CEEBA8D0ECAAD1EDACD1ECAFD3EDB0D4EEAFD3EDB1D4EEB3D5EFADD3EEA9D1ED +9CC9EA9CC9EA7CB7E353A1DA5EA8DC65ABDE63AADD63AADE66ACDF69AEDE7EB9E39AC8E9 +AFD3EDAED2EDAFD3EEB1D4EEB2D5EFB1D4EEAED2EE8FC2E67CB8E376B5E263AADD59A4DB +4FA0D94D9FD94C9DD97BBAE49ACCEC3342950000660B097009066E08056D0A076D02006E +0C096DB9945AE2B652D5AC56D7AC51DAB260EAD4A8EDDAB4EDDCB7EFE0C0F0E2C5F1E5CC +F1E5CFF1E7CFF1E7D0F0E4CCE3CB9CDEC38CD9BB7ED1AE66D0AC60CEA85BCCA75BCBA556 +C7A04ECCA85DE2CEA5E4D2ACE5D4B1E9DABDEADDC2EDE2CBEBE0C8E1CFAAD2B782D0B57E +C3A15DB99143B58C3AB38A37B48B3AB38D3EB48C40C4A56ADFCFB1E0D0B3E3D5BBE3D6BD +E5D9C1D3BE95C7AD7BC7AF7FC7AF7EC1A873B49558AE8D4B9F792C976D1D997122A37E38 +AE8E52D2C19FD5C3A3D2C2A1D3C5A6D4C7A9D8CBB1DCCFB8DACDB5BAA578AF9562A08145 +92702D89641A7D5504815B0E8B68238F6F2C906F2D8C6C2AAB9261CABB9CC8B898CABC9F +CCBEA4CFC1A6D2C5ADD2C6AED4C9B2C7B99CB2A07985682B7C5C1B6E4B026F4D0673510D +7C5D1F8163277F61268A7037A38E61CABEA5C8BCA3CCC0AAC9BFA7C7BBA3BEB095B7A989 +AF9F7D73561D6647076D5114755A22765C23765C257258206F551D70561F755C28725A26 +927E56C6BDA8C4BAA5C3B8A4BEB39DBBB098B1A489A99B7DAEA1847660365236054E3201 +4F3300513600553C03583F07664F1F6B55275F47137C6940988868A6997DA19478A89B80 +B0A68DB2A78FAEA48CAA9F86AA9F86AA9E867B694356401067542869552B69552B624F22 +523C0C462E003D24038A7C61AAA189A39881A89D87A79C85A69C85A59B84A69C85A89E87 +ACA38DAFA693B0A693B5AD9BB9B2A17F72525240175240153B2701301A00331D01331D00 +54431EA09780968B75968B74A59E86B7B8B5C4CAD8C2C7D2C3C8D4C3C8D5C4C9D4C4C9D5 +C4C9D4C6CBD6C7CCD7C7CCD7C9CED8CACFD9CBCFD9CCD0DACDD1DBCFD3DCD0D4DDD1D5DE +D3D7DFD4D8E0D7DAE2D8DBE3DADDE4DCDFE6DDE0E7E0E3E8E1E4E9E4E6EBE6E8EDE7E9EE +EAECF0EBEDF0EDEEF2EEEFF4F0F1F4F2F3F6F4F5F7F4F5F7F5F6F9F6F7F8F8F9FAF9FAFB +FAFAFBFBFBFCFBFBFCFCFCFDFDFDFEFDFDFDFEFEFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFDFDFE +FFFFFFEAEAF254529A221F7C07046D09066E08056D0A076E06036C2B2C848C97C5BBCBE4 +D9ECF8D5E8F5D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D6E9F6D5E8F5 +D5E8F5D4E7F5D3E6F4D2E4F3C9DAECBCCCE3B1BFDB868FBC747BAF43448B211F731A186F +0F0D690D0B6609036108026008026007016007015F07005F07005F07005F07005F06005F +08005F0A005E1605601906611805601805601906610F025F06005E07005F07005F07005F +07005F07005F07005F07005F07005F07015F0801600802600902610C07630F0B6616146C +17156D292D7E424E955366A57392C37DA0CD8FB9DF94C0E399C4E6A0CBEAA2CCEAA8CFEC +ACD1ECACD2EDAAD0ECA6CEEB9CC9E995C5E896C5E89BC8E99ECBEBA1CBEAA1CCEBA4CEEB +A8D0ECAAD1EDADD2EDAFD3EEB0D3EDB0D4EEB2D5EEB2D5EEAED3EEA9D0ED9CC9EA9CC9EA +7DB8E357A3DB5FA8DD64ABDE63AADD64ABDE67ACDE69ADDF82BAE49CC9EAAFD3EDAFD3ED +B0D4EEB1D4EEB2D5EFB0D4EEA9CFEC8DC1E67BB7E274B3E160A8DD56A4DB4E9FD9499BD7 +4FA1DA6696CD5B75B512147708046D09066E09066E09066E0B076D231B6E624F68D7AC57 +D8AC52D8AE56D6AA4FDCB86CECD8AFECDAB3EDDCB8EFE0C1F0E2C5F1E5CCF1E5CEF3E7D1 +F1E4CBEDDEBFE2C996DEC28AD8B979D1AC63D0AA5FCDA75ACDA759CAA354CAA458D1B170 +E3D1AAE3D0AAE5D4B2EADBC0EBDEC4EDE1CAE6D6B7DCC79CD0B37CCDAF76C09C54B78D3C +B38935B38A38B38B3BB48E41B79249CBB27EE0D1B4E0D1B4E3D6BCE5D8C1E2D5BACCB688 +C6AD7CC6AE7DC5AC7ABFA46EAF8F4EA986409C7627966D1B997225AC8D4FBDA473D3C2A3 +D2C1A2D2C3A3D4C6A9D5C8ACD8CBB2DCD0BAD1C2A5B09765AA8F589B7C3C8D6821865F14 +7F590A8560158D6B26906E2D906F2E9F834CB7A37ACABB9DC9B99BCCBDA1CEC1A7D0C3AA +D2C6AED2C7B0D4C9B2B5A27C9B83507F601F73500B6E4A037655137859187E6022816327 +7F6125A38E62B8A987C9BDA5CABEA7CCC1AAC8BCA3C4B89EB8A98CB3A383978157634505 +66480972571D775D25765B24755B24735820735921735A257A622F867042A99979C7BDA9 +C4B9A4C2B7A1BAAE96B6A990AB9E80AB9D7F978664593F104D31004F33004F3300563D05 +5D4510614815695221654E1D685221988968A29477A4967AA5997EAB9F85B1A68FB2A790 +ADA289AA9E86A3967B7C6A45675328604B1E68542A675329634F235843154730043E2500 +614E2C9F947BA39980A59B83A89D86A79C86A69C85A69D86A99F89ABA18CAEA591B0A794 +B2A996AAA18C998E75604F284E3C1148350A352000321C0038230354421B7E7053A39B85 +948971958B73BAB5A8C0C2C5C3C9D6C2C7D3C3C8D4C4C9D5C3C8D4C5CAD5C5CAD5C6CBD6 +C7CCD7C7CCD7C9CED8CACFD9CBCFD9CCD0DACDD1DBCFD3DCD0D4DDD2D6DED4D8E0D5D9E1 +D7DAE2D8DBE3DADDE4DDE0E6DEE1E7E1E4E9E2E5EAE5E7ECE7E9EDE8EAEEEAECF0ECEEF1 +EDEFF2EFF0F3F0F1F4F2F3F6F4F5F6F4F5F7F5F6F9F6F7F9F8F9FAF9FAFBFAFAFBFBFBFC +FBFBFCFCFCFDFDFDFEFDFDFDFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFE +E2E1EE7A78B00000630E0B7109066E08056D08056D0A076E0A076E8A94C3E1F5FDD1E4F3 +D5E8F5D6E9F6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D5E8F5D6E9F6D8EBF7DCF0FADDF1FBDDF1FBDDF1FBDFF2FBBCD4EB7C9ECC304C97293687 +04035B00005501005802005A03005A05005D05005D06005D07005F07005F08015F0B025F +16056019066118056018056119066110046007026008026007016007015F07005F06005E +06005E05005D04005B03005B00005800005800005614136B2E3483667DB47E9BC9A6D2EE +A7D4F0A5D2EFA2D1EFA1D1EF9DCCEC9BCAEB9DCAEAA1CCEBA4CEECA7CFECABD1EDABD1ED +A8D0ECA5CFEB9CC9E993C5E895C5E89CC9EA9FCBEBA0CBEAA0CCEBA4CEEBA8D0ECAAD1EC +AED2EDB0D3EEAFD3EDB1D4EEB3D5EFB2D5EEAED3EEA9D0ED9CCAEA9CC9EA7DB8E359A4DB +61A8DD64ABDE63AADD64ABDE66ABDE69ACDF87BDE59ECAEAAFD3EDAFD3EDB0D4EEB1D4EE +B3D5EFAED3EDA1CCEA8ABFE578B6E271B2E05EA7DC53A2DA4E9DD8469AD755A9DF3B55A2 +09056D08066E09066E08056D09066E0B076D00006E8B736CCBA664DFB255D7AB52D9AE56 +D6AB51DFBD77EDDAB5EBD9B2EEDCB9F0E0C2F1E2C7F2E6CDF1E5CEF3E8D2F0E2C6EAD8B2 +DFC592DCBF85D6B674D0AB62CFA95FCCA659CCA659C8A04FCEAA63D8BC85E4D1ADE2CFA9 +E5D6B5EADCC1EBDFC6ECE1CADFCAA4D7BE8FCDB178C9AB6FBC964AB38834B18732B38B3A +B38C3CB58F44BE9C5AD4BE93E1D2B5E0D1B4E3D6BDE5DBC4DDCFB0C7AE7DC6AD7EC6AD7C +C4AB78BCA069AC8948A68039997121966E1C9A7226B79C67CCB994D3C2A3D1C09FD2C3A3 +D6C8ACD7CAAFD9CDB4DBCFB8C7B592A78C55A58950967432886217835C0F835E1188641B +8E6C288E6C2B917031B6A278C2B18FC9BB9DCABB9ECCBFA4D1C4ABD1C5ACD2C7AFD3C8B1 +D2C5AEA08857876A2E7957156D49016E4B047A5B1B7C5E207F61247E5F2182652BBCAE8F +CABEA6CABDA5CCC0AACBC0A9C5B9A0C1B49AB4A585A4926D795E2A5F3D006B4C10765B24 +795F29765E28735A24735921755D26775D29806838A89875BEB29AC5BBA7C3B7A2BFB49E +B6AA90B1A388A99B7DAFA284766038472A004E32014F32005135005D440D644C1A67511F +66501D5A420C7C683FAB9E83A4967AA4977BABA087AEA38BB2A791B1A690AB9F86B0A68E +918262553E0F5E481C67542967532A624E235C47174C36073D2601412B048C7E62A9A087 +A49A81A79C86A79D87A69C85A79D86A89E87ACA38EAEA590B0A793B0A793B7AF9D8D8166 +6656314D390F4734073E2A02321D00341F003D29018D8163A69D88A1978192886F948A72 +CAC9C7C6C9D1C1C7D4C3C8D3C3C8D4C4C9D5C3C8D4C5CAD5C6CBD6C6CBD6C6CBD6C7CCD7 +C9CED8C9CED9CBCFDACDD1DBCED2DCCFD3DCD0D4DDD2D6DED4D8E0D5D9E1D7DAE2D8DBE3 +DADDE5DDE0E6DEE1E7E1E4E9E2E5EAE5E7ECE7E9EDE8EAEEEAECF0EDEFF2EDEFF2EFF0F3 +F0F1F4F3F4F6F4F5F7F4F5F7F5F6F8F7F8F9F9FAFBF8F9FAFAFAFBFBFBFCFBFBFCFCFCFD +FDFDFEFDFDFDFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFDFDFDF8F8FBD0D0E3 +22207D00006608056D09066E08056D0B086F09076E383A8DC5D6EAE2F6FDD6E9F6D5E8F5 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D6E9F6D5E8F5 +D5E8F5D4E7F5D4E7F4D4E7F4D4E7F4D4E6F4D2E3F2B8D1E96B9FD16096CC5985BF4F74B2 +425FA32B3A8820297C0D09650B06630A046205005D04005C03005A06005A15045F190661 +1805601805601906610B005B00005701005802005903005A04005C0801600903610C0764 +15156E20257A3F51984C62A46A89BE7FA1CD86A8D293B9DD99BFE1A1CBE9A0CAEA9EC9E9 +9CC8E89AC8E99AC8E99AC8E99CC9E9A1CCEBA3CDEBA8CFECACD1ECACD1EDA8D0ECA5CEEB +9DC9EA95C5E894C5E89BC8E99FCBEBA0CBEAA0CCEBA4CEEBA9D0ECAAD1ECADD2EDAFD3EE +AFD3EDB1D4EEB2D5EFB1D5EEAED3EEAAD1ED9DCAEA9DC9EA7DB8E356A3DA5DA7DC64ABDE +63AADD65ABDE68ACDE6AADDF88BEE59ECAEAAFD3EDAFD3EDB0D4EEB1D4EFB3D5EFAED2ED +9FCAEA89BFE577B5E270B1E05DA7DC53A1DA4EA1DB4696D43E7CC0191E7D0A086F09076E +08056D09066E07046D00006D3C3271C9A76BD6AF62DAAD56D8AC52D7AD54D7AE59E1C283 +EDDBB6ECDAB3EEDDBAEFE1C3F1E3C7F2E5CDF1E6CFF3E9D3EDDFC1E6D1A6DFC48EDBBD81 +D5B471CFAA5FCEA85DCBA558CBA558C79E4DD2B272DDC696E3D1ABE2D0ABE6D7B7EADCC2 +ECDFC7EADEC5DAC499D4BB89CCAE73C8A767BA9345B28631B28734B38B3CB28B3CB79249 +C9AE76D8C59EE1D2B5E1D2B5E4D7BEE6DBC4D7C6A3C6AE7EC8AF80C4AC7BC1A875BA9D64 +A98541A27C32986F20966E1D9E782FC3AC80D2C0A0D1C1A0D1C0A0D3C4A5D6C9AED8CBB1 +DBCEB6CFC1A1BEA97FA68950A2854A906D28835E12815B0E845F1688651E8D6B28896622 +9A7C42C1AF8CC4B392C9BA9CCBBDA0CEC1A6D0C4ACD1C5ADD2C7B0D4CAB4C8BA9E937942 +84672873510B6C4700714E097B5C1D7D5E207F61257A5C1E937B48C6BA9FC9BDA4CBC0A9 +CDC2ABC9BDA6C2B59BBFB296AF9E7C7F6532694B126545076F5217785E28775F28765E28 +745B24745A23765D28765C28917D53BEB198C1B69FC3B9A4C1B6A0BDB19AB1A388AEA084 +A799799B8A695E45174C2F004E3200523602563C0561491467511F67511F5D46115F4816 +958664A5997CA29578A89C82AEA38BAFA48CB1A68FB0A58EABA0879D907376643D5B4618 +6450256753296450255C47194F3A0A3E27004C35137766469A8E75A69C84A49A82A69C85 +A69C86A79D86A9A089AAA18BAEA590AFA693B0A793B5AC9BACA28E6555304F3C124A3609 +422D023C27003823013923005D4C27A69D88ABA28F958A7470634A938973CDD0D4C6CAD4 +C2C7D3C3C8D3C3C8D4C3C8D5C4C9D4C5CAD5C6CBD6C7CCD7C7CCD7C7CCD7C9CED8CACFD9 +CBCFDACDD1DBCED2DCCFD3DDD0D4DDD2D6DFD4D8E0D5D9E1D8DBE3D9DCE3DBDEE5DDE0E6 +DEE1E7E1E4E9E2E5EAE5E7ECE7E9EDE8EAEEEBEDF1ECEEF1EEEFF3EFF0F3F0F1F4F3F4F6 +F3F4F6F5F6F7F6F7F8F7F8F9F9FAFBF9F9FAFAFAFBFBFAFBFBFBFCFCFCFDFDFDFEFDFDFE +FDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDFDFDFFFFFFB9B8D627247F +15127507046D09066E08056D09066E000066444895A0ADD2C9DBEDD6E9F6D5E8F5D6E9F6 +D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D5E9F6D6E9F6D5E9F6D7EAF6DCEEF8C5E3F6A3D2EF7ABEE87DBEE87CBCE679B8E3 +79B8E36EA6D66697CC628FC55375B24E6DAC435CA13647911F146B17035E190661190661 +18035F27287A384F98394F983F5AA04360A54A6CAD5983BD608CC471A2D285BAE389BFE6 +8FC5E993C8EB9BCFEFA3D3F0A5D2F0A6D1EEA6D0EDA3CDEBA1CBEA9FCBEA9CC9E99BC9EA +9AC8EA9AC8E99CC9EAA1CCEBA3CDEBA9D0ECADD2EDADD2EDA8CFECA5CEEB9DCAE997C6E8 +94C5E89AC8E99DCAEAA0CBEAA1CCEBA4CEEBA9D0ECABD1ECADD2EDAFD3EEB0D3EDB0D4EE +B1D4EEB2D5EEB0D3EEAAD1ED9ECAEA9ECAEA7BB8E352A1DA5AA5DC63AADE63AADD66ACDE +68ACDE6DAFDF8EC1E6A0CBEAAFD3EDAFD3EDB0D4EEB0D4EEB3D5EFAAD1EC95C6E887BDE5 +74B3E16CB0DF59A4DB4F9FDA4594D21F39920D0F7406026B08056D08056D09066E07056D +19147082717EC1A57CE8C269DBB460D8AC53D7AB51D6AA50DDB972E6CC98EDDBB6EDDBB7 +EEDEBDF0E2C6F1E3C9F2E6CEF2E7D0F2E8D3E9D7B2E1C795DDC087D8B879D2B06ACDA75B +CBA558C9A354C8A252C8A050DBC28FE3D1ACE3D0ABE4D2AFE8D8BAEADDC4ECE1CAE3D3B3 +D3B986D0B57FC8A869C2A05BB58D3BB08530B28937B38C3EB28A3CC09F60DCCAA7DECEAE +E1D2B6E2D5BAE3D6BCDDCEAECCB78BC7AF80C9B184C2A977BEA36DB49559A17B31997224 +987122997224AC8D50D2C1A0D3C3A3D1C0A0D2C1A2D4C6A9D8CBB2DBCEB6D6C9AFB9A276 +AE94619E7F42977735856116805A0C825C1088651E8A67218C6A27907030B0996DC8B99A +C6B696CBBC9FCEC0A5D0C3AAD1C5ADD1C5AED1C6AED2C6AFAB966B8061207958156D4901 +6C48007755157D5E217D5F2180622782662CB6A583CDC1ABCABEA7CCC1AACBC0A9C4B89E +BAAB8EB8A98B8A72435937006141056F5317755921795F2A765F28755D25725922725922 +7F6736937E54B6A88CC8BEAAC4BAA4BFB49DBBB098B4A78CA99B7DAB9D80836E475A3F0F +4D3102503400513500593F085E461166501E654F1E5E4612715D318D7C59A79A7EA4977B +A79B80AEA38AB0A58DAFA48CACA289B0A58D928464634F23604C1F645025675329604C1F +5843134A33073B22003F280685765AA9A088A49981A69C85A79D86A79D86A79D86A9A08A +AEA590AFA692AFA792AEA591AFA6938C7F626958343E2900412C00432F01412D00402B00 +4B380D7567449A9078B3AA99ABA38E786A524C3A1FA39D91C9CFDBC1C6D2C3C8D3C2C7D3 +C3C8D4C3C8D5C4C9D4C5CAD5C6CBD6C7CCD7C8CDD8C8CDD7CACED9CBCFDACCD0DACDD1DB +CED2DCD0D4DDD1D5DED3D7DFD5D9E1D6DAE2D8DBE3D9DCE4DCDFE6DEE1E7DFE2E8E2E4EA +E3E5EBE6E8EDE8EAEEE9EBEFECEDF1EDEEF2EEEFF3F0F1F4F1F2F5F3F4F6F4F5F7F5F6F8 +F7F8F8F7F8F9F9FAFBFAF9FAFAFAFBFAFAFBFBFBFCFDFDFEFDFDFDFDFDFDFEFEFEFEFEFE +FFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFFFFFFF6F6FA7775AE27267F000067 +0B086F08056D09076E06036C13117434368BBCCDE5E2F7FED6EAF6D5E8F5D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D5E8F6D6E9F6D5E8F5D3E7F5DFEDF7C7DFF275B3E073B2E077B5E177B5E177B5E179B8E3 +7BBAE57EBDE686C3EA8AC7ED82BCE56FA1D22B277915005B19076219076115005C526CAC +87CDF381C3EB81C3EB81C2EB80C1EA7EBEE87FBDE785BEE787BEE687BEE68BBFE68DC0E6 +93C2E799C6E89DC8E9A2CCEAA3CCEBA3CDEBA1CBEB9FCAEA9BC8E99BC8EA9AC9EA9AC8EA +9BC9E9A1CCEBA4CEECA9D0EDAED3EEADD2EDA8CFECA5CFEB9DCAE996C6E895C5E89AC8E9 +9DCAEAA0CBEAA1CCEBA4CEEBA8D0ECAAD1ECADD2EDAFD3EEB0D4EEAFD3EDB0D4EEB2D5EF +B0D3EEAAD1ED9ECAEA9FCAEA7AB6E3509FD959A5DB63AADE63AADD67ACDE67ACDE6CAFDF +90C3E7A1CBEBAED3EDAFD3EDAFD3EDB0D4EEB4D6EFA8CFEC90C3E786BDE572B2E06AADDE +57A5DB52AAE13877BE09076F07036B09076F09066E09066E09056D00006B372F75E7C889 +E9C77EDAB566DAB35ED7AB51D7AB51D6A94FE1C07EE8D09EECDAB5EDDBB8EEDFBEF0E3C7 +F1E4CAF2E6CFF3E8D1F2E8D2E7D3ABE0C693DBBE84D7B776D2AF68CCA659CAA455C9A353 +C8A151C9A254DEC89AE4D3B0E3D0ACE5D3B1E8D8BAEADEC6ECE1CBE1CDA9D1B682D0B47D +C7A565C19E58B38B38B08531B28938B48D40B28B3CC5A86EE0D0B3DECEB0E0D2B7E3D6BC +E2D5B9D5C29DC9B285C7AF81C9B184C2A875BDA06AB192549E772D986F219972249A7328 +B59A64D4C5A5D1C09FD1C0A0D2C2A2D4C7ABD8CBB2DCD0B9D1C3A6B29968AA8F599B7C3C +92702C815D0F805A0C835D1289671F8A67208A68259B7F47BAA67FC8B89AC6B696CBBDA1 +CFC1A7D0C4ABD2C4ACD2C6AFD1C4ADCDC1A69D86537B5A1773500A6C49006D4A01795919 +7E60237D5F218063288B713CC2B699CBBFA8CBBFA9CCC0A9CABEA6C2B599B8A98BB3A483 +7357205A380068480B74581F775C2578602A775F29745B2470581F6F551D856E3FAE9F80 +C0B49CC4BBA5C3B9A3BDB29AB7AC94AEA185AA9D7FAB9F81684F244527004F3301513500 +5339005C440E6149156852215D4510553D06897955A69A7EA39578A79B80AB9F85AFA48C +AFA48BADA289ADA289B2A7917C6A44574213634F23685429655126594516503A08422A02 +2F17004F3919A1957CA59A82A49980A69C85A69C85A89D87A99F89ABA28CB0A793B1A894 +AEA691AEA692AFA893614F28422C013E2900402A00442F03443103422D0059471EA19781 +AAA28EACA38EABA28C685A40483619ADAAA5CAD0DEC0C5D0C3C8D4C2C7D3C3C8D4C3C8D5 +C4C9D4C5CAD5C5CAD5C7CCD7C8CCD8C8CDD8CACFD9CBCEDACCD0DACDD1DBCED2DCD0D4DD +D1D5DED3D7DFD5D9E1D6DAE2D8DBE3D9DCE4DCDFE6DEE1E7DFE2E8E2E4EAE3E5EBE6E8ED +E8EAEFE9EBEFEBEDF1EEEEF2EEEFF3F1F2F5F1F2F5F4F5F7F5F6F8F5F6F8F6F7F8F7F8F9 +F9FAFBFAF9FAFAFAFBFAFAFBFBFBFCFDFDFEFDFDFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFF9F9FBF8F8FBA4A3C914127409066E0A076E +09066E08056D0C0A700A076E51569EB1C0DEC8DAEDD7EAF6D5E8F5D5E8F5D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D5E8F5D5E8F6D5E8F5D8EAF6A9D1EC77B5E178B6E277B5E177B5E177B5E177B5E177B4E1 +7AB5E07EB9E37AAEDB6B97CA2A247715005C19076119076115005C4D63A57CBBE677B2DF +78B4E078B4E178B4E179B5E17AB6E281BAE385BCE487BDE58BBFE58CC0E694C5E89BC8E9 +9ECAEAA2CDEBA2CDEBA2CCEBA0CCEB9ECAEA9BC9EA9AC8E99AC8E99AC8EA9CC9E9A1CCEB +A3CDECA9D0EDAED3EEAED3EDA9CFECA5CDEB9DCAE997C6E897C6E99BC8E99ECAEAA0CBEB +A1CCEBA4CEEBA9D0ECAAD1ECADD2EDB0D3EEB0D4EDAFD3EDB0D4EEB1D5EFAED3EEA9D1ED +9CCAEA9DCAEA79B6E253A1D95CA6DB64ABDE63AADD65ABDE67ACDE6CAFDF94C5E8A3CDEB +AED3EDAFD3EDAFD3EDB0D4EEB4D5EFA5CDEB8ABFE682BBE46FB0E067ADDF4C93D03A7AC0 +18298608046C09076E09066E09066E09066E100C70262179B39E8EE7C986DEBD79DCB461 +DAB05AD6AB51D6AA4ED6AC53E5CA94EAD3A7ECDAB4EDDCBAEEDFC0F0E4C9F1E5CBF2E6CF +F2E7D1F1E5CDE3CC9EDEC38CD9BA7DD5B370D0AC65CBA558CAA456C9A354C79F4FCDAA63 +E1CEA6E3D1ACE4D2AFE6D5B4E8DABEEBE0C8EADFC6DAC499D0B57FCEB179C2A05CBD984E +B28734B18836B28B3CB48D41B58F43D0B889E0D0B2DFD0B2E1D3B8E4D7BEDCCCACCBB689 +C8B182C7AE7FC7B081BEA470B99B64AD8D4B9B7426956D1D9C772CA27F3AC5AF85D3C3A3 +D0BF9ED2C1A2D3C3A5D6C9ADD9CDB5DBCFB8C5B28DAC915DA68A5193712E8B671F805B0E +825C108561188A682388641E937436B6A178C2B08EC8B99AC8B99ACDC0A5D0C3A9D0C4AC +D0C4ACD3C8B2C7B89CAE9A728F733B75520D6E4A026E4C0572520D7A5C1D7D5F227B5C1F +947B4AAD9A75C7BAA1CCC1AACCC1AAC8BDA5C6BAA1BDAF92AF9F7D978257614206644505 +6D5014775D26785E27785E29755C26735B24735B24755C279F8D6AC2B8A1C2B8A1C3B9A4 +C1B6A0B7AB90AFA286ADA0829B8B69846F485337074D3000503400553B03583F07604815 +654E1C644D1B5F4815705C2FA29477A4977AA5977CACA086AEA289AFA38BACA188AB9F86 +AA9E8597896A675227644F246652286551255F4B1E4D3708422B00422A064D38157F6F52 +A89E86A49981A59B83A79D86A79D87ABA18BACA28DADA48FAFA691AEA692ACA38EADA590 +7D6F503C27033923023D2800402C014A360A4A370C4C3A0E86795CB0A796ADA492ACA38F +9E947F4C3A2473654FB2B1B2C7CDDBC1C6D1C3C8D4C2C7D3C3C8D4C3C8D5C4C9D5C6CBD5 +C6CBD6C7CCD7C8CDD8C8CDD8CACFD9CBCFDACCD0DACED2DCCFD3DCD0D4DDD2D6DED3D7DF +D5D9E1D6DAE2D9DCE3DADDE4DCDFE6DFE2E8DFE2E8E2E5EAE3E5EBE6E8EDE8EAEEE9EBEF +ECEEF1EDEEF2EFF0F3F0F1F4F1F2F5F4F5F7F4F5F7F5F6F8F6F7F8F7F8F9F9FAFBFAF9FA +FBFBFCFBFBFCFCFCFDFDFDFEFDFDFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFFFFFF4644910000640A086F0A076E09066E +09066E04016B100F733D3F90B4C3DFDFF3FBD1E4F3D5E8F5D6E9F6D5E8F5D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D5E8F5D9EBF6D1E6F586BDE577B5E177B5E179B6E277B5E178B6E277B5E178B5E17BB8E4 +7BB0DD6E9BCC2B257715005C19076119076115005C4F66A680BFE879B5E17AB7E27AB7E3 +79B7E37AB6E27BB7E381BBE485BDE487BEE58ABFE58BC0E694C5E89BC8E99ECAEAA2CDEB +A2CCEAA2CCEAA0CCEB9ECAEA9BC9EA9AC8E99AC8E99AC8EA9CC9E9A1CCEBA3CDECA9D0ED +ADD3EEAED3EDA9D0ECA4CDEB9DCAE997C6E898C7E99CC9EA9ECAEAA1CBEBA0CCEBA4CEEB +A9D0ECAAD1ECADD2EDB0D3EEB0D4EDAFD3EDB0D4EEB1D5EFADD3EEA9D0ED9CCAEA9CCAEA +78B5E255A3DA5EA8DC64ABDE63AADD65ABDE67ACDE6CAFE097C7E9A4CEEBAED2EDAFD3ED +B0D3EDB0D3EDB3D5EEA3CDEC88BEE67FB8E36DAFDF6AB8E63C72B913228309066E08056D +08066E09066E0B086E05026C1D1A7872688FF8DD9CE1C384E0BF79DBB35ED9AE57D6AA50 +D4A94BD7AE59E8D1A1EAD6ACECD9B4EDDCBBEFE0C2F1E5CBF1E5CCF1E7CFF2E8D1EFE3C9 +E0C795DCBF86D7B778D3B16DCFAB61CBA456CAA457C9A255C79D4DD1B070E4D2AEE2D0AB +E4D4B3E6D6B7E9DBBFEBE1C9E8DBC0D5BD8DCFB37DCBAE74C09B55BB9447B18731B2893A +B38B3EB38C40B7934CD6C39CDFD0B2E0D0B3E2D5BAE5D8C0D7C5A1C6AE7EC7AF7FC6AE7E +C6AE7EBBA06AB5965DA98743997124946C1BA07D35AD8F52CFBC99D1C1A1CFBF9FD2C3A3 +D4C5A7D7C9AFDCD0B9DACDB5BAA477A98C55A2844B8F6B25886217815B0D85601788651E +8C692586621C9E834CC8B897C7B696C8B89ACABB9ECEC2A7D1C4ACD1C5ADD0C4ABD4C9B3 +BCAB8A967C4687682C704C066B4600704F097759187C5E1F7B5D1E7A5A1DA7936AC6B99E +C9BCA4CDC1ABCCC1AAC6BAA2C2B59CBAAD8F9F8B627D622F5A39006B4C0F70541A795F29 +785F29765D27755B26735B24755B267E6534B7A98FC7BEA9C3B9A4C2B7A2BFB49DB2A589 +A79979AFA28488754E5C41124C2F015033005237005A41095C440E624B186751215C440F +6F5C2F8F805DA89C81A19377A79B7FAEA38AAEA38AAEA38AA99E84ACA1889A8C6E77653D +5E491B6A562C665228624D225A4516442D01382000442C0A7F70519E9279A89E86A59A82 +A59B84A89E88AAA08AADA38EAEA590AFA791ADA590ABA38EAEA591A89F874B39172E1A00 +3521003F2B024632064E3C1149360A5D4B25A9A18DB2AA99AEA593B2A9968E836B382417 +9C9687B8BABFC5CAD8C2C7D3C2C7D3C2C7D3C3C8D4C3C8D5C4C9D4C6CBD6C7CCD7C7CCD7 +C7CCD8C8CDD7CACFD9CBCEDACDD1DBCED2DCCFD3DCD1D5DED2D6DFD3D7DFD6D9E1D7DAE2 +D9DCE3DADDE4DCDFE6DFE2E8E0E3E9E3E5EBE4E6ECE7E9EDE8EAEEE9EBEFEDEEF2EDEEF2 +EFF0F3F0F1F4F2F3F5F4F5F7F4F5F7F5F6F8F6F7F8F7F8F9F9FAFBFAF9FAFBFBFCFCFCFD +FCFCFDFCFCFEFDFDFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFEFEFDFDFDFFFFFFB6B5D43A378B0F0E7103006A08056E09066E08056D +0D0A70100D724A4E99CADCEEE2F6FED7EAF7D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D6E9F6 +D4E7F5C4DFF298C7E96DB0E075B4E178B6E277B5E178B5E178B5E179B8E377AFDC6C98CB +2A257715005C19076119076115005C5066A783C0E87BB6E17AB7E379B6E27AB7E37AB6E2 +7AB7E381BBE485BDE487BEE589BFE58BC0E692C4E899C7E89DCAEAA2CDEBA2CDEAA1CCEA +A0CCEB9FCAEA9BC8E99AC8E99BC9E99BC9E99ECAEAA2CCEBA5CEECA9D0ECACD2EDAED3ED +A9CFECA4CDEB9DCAE998C6E898C6E99BC8E99DCAEAA1CCEAA1CCEBA5CEEBA9D0ECAAD1ED +ADD2EDAFD3EEAFD4EDB0D3EDB1D4EEB0D4EEAED3EEAAD1ED9BC9E99AC8E977B5E258A4DB +60A9DD64ABDE63AADD65ABDE67ACDE6DAFE09BC9EAA5CEEBAED2EDAFD4EEB0D4EEB1D4EE +B3D5EF9FCBEA85BCE483C0E866A7DA4E87C51929860A0A7109086F08056D09066E09066E +03016B0D0C6FA097A9D6C6B2E7CC93E3C482E0BE76DBB25DD9AE56D6AB52D3A74AD9B365 +EAD5A9EBD7ADECDAB6EDDEBDEFE0C3F0E4CBF1E5CCF2E6CEF2E8D1EDDEC1DEC490DCC188 +D6B676D1AF68CEAA5FCBA456CBA357C8A254C69D4DD5B981E5D3B0E3D1ACE6D5B4E7D7B9 +E9DCC2EADEC5E4D4B5D2B986CEB17AC9AA6DBD984EB89143B18735B28A3DB48D41B38C3E +BE9E5DDBCBA9DFCFB1E0D1B5E3D7BCE3D7BDD0BB91C6AE7DC7AF7FC5AD7DC4AB7ABA9D65 +B29255A6823B987022946C1CA88848BEA879CFBE9DD0C0A0CFBFA0D3C4A7D5C7ABD8CBB1 +DACEB6D2C3A6B29968A5874E9D7E4189641C856016845F1587641C896720896620886521 +B09A6DC8B99BC7B798C9BB9DCBBDA1D0C4A9D1C5AED1C5ADD1C4ADD3C7B1A892668C6E34 +805F206F4C056D49017453107A5C1D7B5C1E7A5B1C83672CB9AA89C7BBA1CABEA6CCC1AA +CABFA7C2B69BC0B398B3A4837B612B66480D61410470531973571E785F29775F29765E28 +755C26755C26785E2A948158C2B7A1C3B8A2C1B6A0BEB39CBAAE95AC9F81AA9D7EA59676 +644A1D4E3001523601523700573D055F4610604813634B186048155D4411918260A29578 +A39678A29578A99D84AEA38AAEA28AACA188AFA58DA3977C725F37675227655025685429 +624E225943145039093E2400361C006A5737A1967BA3987FA79C85A69B84A79D86AAA18A +ACA38CAEA590B0A793AFA691ACA48FB2A9958D81656455353923063A25003D2800443004 +4B370C4F3C1263532F85785CB2AA98B1A996B0A896AEA59275674E321E11C2C2C2C1C5CD +C3C8D5C2C7D3C3C8D4C3C8D4C4C9D4C4C9D5C4C9D4C6CBD6C7CCD7C7CCD7C8CDD8C8CDD8 +CACFD9CBCFDACDD1DBCED2DCCFD3DDD1D5DED2D6DFD4D8E0D6D9E1D7DAE2DADDE4DBDEE5 +DDE0E6DFE2E8E0E3E9E3E5EBE4E6ECE7E9EDE9EBEFEAECF0ECEEF2EEEFF3EFF0F3F1F2F5 +F2F3F5F4F5F7F5F6F8F6F7F8F7F8F9F8F9FAF9FAFBF9F9FAFBFBFCFCFCFDFCFCFDFDFDFE +FDFDFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFFFFFFFAFAFCF8F9FB8281B50E0B700F0C7108056D09066E08056D07046D +0000664144938690C0C5D6EAD6EAF6D4E7F4D6E9F6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E9F6D6E9F6D5E8F5D6E9F5DDEDF7 +D2E6F596C6E881BAE475B5E178B6E277B5E178B5E17AB8E474AEDC6897CA2A247715005C +19076119076115005C4F65A686C2E982BAE37EB9E47BB7E37AB7E37AB7E27CB7E382BBE4 +85BDE587BEE589BFE58BC0E692C3E798C6E89CC9E9A1CCEAA2CCEBA2CCEAA1CCEBA0CBEA +9CC9E99BC8EA9BC9EA9EC9E99FCBEAA2CCEBA4CDECA8CFECABD1ECAED3EDA9CFECA4CDEB +9DCAE998C6E896C5E89AC8E99DCAEAA0CBEAA1CCEBA4CDEBA8CFECA9D0ECABD1EDAFD3ED +AFD4EDB0D4EEB1D4EEB0D4EEAED3EEAAD0ED9DC9EA9DC9EA77B5E258A4DB60A8DD64ABDE +63AADD64ABDE65ABDE6FB1E0A0CBEBA7CFECAFD3EDAFD4EDB0D4EEB2D5EFB4D5EF97C5E7 +83BCE471A7D7273A900B0C7207036C08046D08056D09066E09066E0F0C701511719E94A8 +FEEDC6F2DEB1E6CA90E3C380DFBC72D8AF58D7AD54D6AB53D5A950DFBE7DEBD8B2EAD7AE +ECDBB7EDDFBFEFE1C5F1E3CBF1E5CCF1E5CEF2E7D0E8D6B1DCC189DBBF84D4B371D0AD65 +CDA75BCAA356CAA256C8A255C8A358DEC89BE4D3B1E4D2AEE7D7B8E8D9BDEBDFC7E3D1B1 +DAC49AD0B580CBAD71C4A462B89245B58D3EB28A3AB48C40B48D42BB9955CDB381E0D0B3 +DFCFB1E0D2B6E4D8C0DCCCACC6AF7EC6AE7DC7B081C3AA7ABFA572B39458AA88439D792E +976F21997326BCA473D2C3A3D0BF9FD1C0A1D1C1A3D5C7AAD6C9ADDACEB7CEBD9DBFAA81 +A88C569B7C3E91702B825B0E835E1287631B88661F8A672386641F997D42C6B696C7B899 +C8BA9CCCBEA2CEC1A6D1C5ACD2C6AFD1C4ACD3C8B1BFAF8F8B6E3480612176530F724F0A +74530F7A5B1B7B5E217656168F7743AA9871C8BCA2C9BDA4CCC1AAC9BDA6C6BAA1BCAE92 +B9AA8D8971415A39005D3D006C4E11745820765A22765D27765D27775E29775D287E6735 +A1916EB9AD93C5BCA7BFB49DBCB098B6A98FAFA185A79879AA9C7D745E34492B00503400 +573C045A4008604813654E1B654D1B5D4410563D07826F4AAA9D82A5977BA4977BA69A7F +ACA188ADA28AADA189AB9F86988B6C7967405E481B655025644F245D481B533E0F472F00 +3F27004D36157868479D9278AAA089A79D85A79E86A79D86A99F89ADA38EB0A690B1A893 +B1A894AEA590A79D87998E744531132B1400351E004430044935074D3A0F4C3A0F65552F +A79E88B2AA98B3AB99B4AC9CB3AB9A7E70563F2B185F5344CDD2DDC2C7D3C2C7D3C3C8D4 +C3C8D4C4C9D5C4C9D5C5CAD4C5CAD5C6CBD6C7CCD7C8CDD7C9CED7C9CED8CBCFDACCD0D9 +CDD1DBCFD3DCD0D4DDD2D6DED3D7DFD4D8E0D7DAE2D7DAE2DADDE4DBDEE5DEE1E7E0E3E8 +E1E4E9E4E6EBE4E6ECE7E9EEE9EBEFEAECF0EDEFF2EEEFF4F0F1F4F1F2F5F2F3F6F4F5F7 +F6F7F9F6F7F9F8F9FAF8F9FAFAFAFBFAFAFBFBFBFCFCFCFDFCFCFDFDFDFEFEFEFEFDFDFD +FEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFFFFFFFF +FEFEFEFCFCFDFFFFFFD6D5E6353287100F7206036C0A076F09066E09076E08056D0C0A70 +1C1C7AABBAD9E2F6FED7EAF6D4E7F4D6E9F6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F6D6E9F6D6E9F6D4E7F5D9EAF6C1DDF2 +93C5E76FB1E07AB7E278B5E179B5E27BB8E475AEDC6797CA29247715005C190761190761 +15005C4D65A686C2EA84BBE481BBE47FB9E37AB7E37AB7E27BB8E382BBE486BEE587BDE4 +8ABFE58CC0E691C3E797C6E89BC8E9A0CBEAA1CCEBA2CDEAA1CCEAA0CCEB9CC9EA9BC8E9 +9CC9EA9DC9E99FCBEAA2CCEBA4CEECA7CFECABD0EDADD2EDA9CFECA5CDEB9DCAE998C6E8 +95C5E89AC8E99DCAEAA0CBEAA1CCEBA4CDEBA7CFEBA9D0ECABD1ECAFD3EDAFD3EDB1D4EE +B2D5EFB1D5EFAED3EEAAD1ED9DCAEA9ECAEA78B5E256A3DB5EA8DD64ABDE63AADD64ABDE +64AADD71B2E0A2CCEBA8CFECAFD4EDAFD3EDB0D4EEB2D4EEB3D4ED99C9EA8AC7EB557ABA +06036C08046C09076E09066E09066E0B086E04026C141271463F81E7D9C3F2E2BEEAD6AA +E6CA8FE2C27EDFBB71D8AE57D7AC54D6AA53D6AC56E2C386EAD8B1EAD6AEECDBB8EDDEC0 +EFE1C6F1E4CBF0E5CCF0E5CEF1E6D0E6D3ACDCC087DABD82D3B26FCFAC64CDA65BCAA356 +C9A254C8A154CAA55DE0CDA4E3D2B0E4D2B0E7D8BAE7DABEEBDFC9DFCBA8D7BF91D0B57F +CAAA6EC3A15EB68F42B48C3DB38C3CB48D41B38D41C1A366D2BC90E0D1B3DFD0B2E1D3B7 +E4D8C1D8C5A3C5AD7CC7AE7EC8B183C2A978BEA36FB09254A6843D9B76299770229D792F +C5B186D4C6A5D0BF9FD1C1A2D2C2A4D6C8ABD7CAAEDACFB9C6B38EB7A072A58A52967636 +8C6922805A0C845E1386621A88651E8A6622896623A48A56CABA9DC7B898C9BB9DCDBFA4 +CFC1A8D1C5ADD2C6AFD0C4ABD3C9B3B3A17A8465287C5C1A73500B74520F7756157A5C1E +7C5F217252119F8A5EBEAF92C7BBA2C9BDA6CCC1AAC7BBA4C3B79EBBAD90B4A484735620 +5A39006344046F5317745920765A23755C25755B24785E2A765D28857041BBAE95C3B8A1 +C2B8A2BEB39CBAAE95B1A488AB9D7FA79879A0906F5D44154C30005338005A40095C430E +624B1768532167511F573E08563E099A8A6CA6997DA29477A79A7FA99D82ADA288ACA088 +AEA28AAB9F867A684167522765512468552A604B1F5641104B3505422A01381F00614D2B +A4997EA59A82A59B85A79D86A89E87A99F87ABA18BAEA48FB0A691B0A894AFA692B0A894 +9D927979694A331C00341C023620004632064C380C4F3D124A370B7B6E4EB7AF9EB2AA98 +B2AA98B6AE9EB4AC9B604F312C1602817971C8CEDAC1C6D2C3C8D4C2C7D3C3C8D4C4C9D5 +C4C9D5C4C9D4C5CAD5C6CBD6C6CBD6C8CDD7C9CED7C9CED8CBCFDACBCFD9CDD1DBCFD3DC +D0D4DDD2D6DED3D7DED4D8E0D7DAE2D8DBE3DADDE4DBDEE5DEE1E7E0E3E8E1E4E9E4E6EB +E5E7ECE8EAEEE9EBEFEAECF0EEEFF2EEEFF3F0F1F4F1F2F5F3F4F6F5F6F8F5F6F9F6F7F9 +F7F8F9F8F9FAFAFAFBFBFBFCFBFBFCFCFCFCFCFCFDFDFDFEFEFEFEFDFDFDFEFEFEFFFFFF +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFE +FFFFFFF6F5F9EAEAF3807EB401006908056D09066E09066E08056D0C097007046D313288 +727AB3BFCFE6DDF1FBD3E6F4D6E9F6D6E9F6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D6E9F6D4E8F5D9EBF6C8E1F380BAE3 +72B2E078B6E279B6E27AB8E475AEDC6797CA29247715005C19076119076115005C4D64A6 +80BFE87EB7E281BAE380BAE47CB8E37AB7E27AB7E380BAE486BDE586BEE589BEE58BBFE6 +91C3E797C6E89BC9E9A1CCEBA1CCEAA3CDEAA1CCEBA0CCEA9CC9EA9BC8E99CC9EA9ECAE9 +9ECAEAA1CCEBA3CDEBA7CFECABD1EDADD2EDA8CFECA5CDEB9CC9E996C6E894C4E899C7E9 +9CCAE99FCBEAA1CCEBA3CDEBA7CFECA9D0ECABD1EDAFD3EDB0D3EDB2D4EEB3D5EFB1D4EE +ADD2EDA9D0EC9BC9EA9DCAEA77B5E257A3DA5FA8DD64ABDE63AADD64ABDE62A9DD73B3E1 +A3CDEBA8CFECAFD3EDB0D4EEB0D3EEB3D7F0BDE3F7789ECF405AA4171B7C08056D09076E +08066E09066E09066E05026C0A076E9A8E9DE0D0B6EEE0C7EEDCB2EAD3A1E6C98EE0BF79 +DDB96CD7AE57D6AC55D6AA53D9B369E4C994EBD9B3EAD7B0EDDDBBEEE0C2F0E2C6F1E4CB +F1E5CDF0E4CBEDE0C5E3CDA0DABD82D8BB7DD1B06CCEA961CCA65ACAA457C7A152CAA55D +D3B57AE1CFA8E4D3B0E5D4B3E8D8BCE9DCC2E9DDC3D9C398D4BB8ACFB37DC5A564BF9C57 +B58C3DB38B3BB48C3FB48D41B59147D0BA8CD9C6A2DFD0B2E1D2B5E2D4BADDCEB0CFB98F +C6AD7DC7AF80C7B083BFA572B99D65AB8948A17C34976F209C7930AC8E52CDBC99D1C1A1 +D0C0A0D2C2A4D3C4A7D6C9AFDACDB4D7CAB0B8A173AF9562A183498E6B2585601580590C +835F1585611985621C86631EA18751B8A47BCABB9DC9BA9CCBBDA1CEC2A7CFC3AAD1C5AE +D2C6AECEC2A9BEAF8E9F87577D5C1C75530E73520D785817795B1A7A5C1D7556157F6326 +B9AA8AC5B99FC7BBA2CABFA8C9BEA7C2B69CC2B69BAC9B78927C4F6241046546076B4D10 +72561D71561D725720745A24755B257C632F826B3CA69573C7BEA8C3B9A3BFB49DBCAF98 +B5A88DAA9C7DAEA183907E5A614719533706523700553A025F4510624A15634C18634C19 +5A420C6A5526887753A39679A49679A6997CAA9F85AB9F87ACA088AEA289B2A7908C7B5A +604B1D655024675227644F23553F10483001432A02381F004D371296896EA79D84A69B84 +A89D86A99E87ABA08AACA28CACA28CAEA590AFA691ADA48FAEA591A89D865A47273B2506 +341E01331D003A26004B380B4C390E55431B675834A79E89B4AC9AB2AA98B4AD9CBEB7A7 +9A9078352008271000A7A5A4C8CEDCC1C6D1C3C8D4C2C7D3C3C8D4C4C9D5C4C9D5C4C9D4 +C5CAD5C7CCD7C7CCD7C8CDD7C8CDD7C9CED8CBCFDACCD0DACDD1DBCFD3DDD0D4DDD2D6DF +D3D7DFD5D9E1D8DAE3D8DBE3DBDEE5DCDFE6DEE1E7E1E4E9E2E5EAE4E6ECE5E7ECE8EAEE +EAECF0EBEDF1EEEFF2EFF0F3F0F1F4F2F3F5F3F4F6F5F6F8F5F6F9F6F7F9F8F9FAF8F9FA +FAFAFBFBFBFCFBFBFCFCFCFCFCFCFDFDFDFEFEFEFDFEFEFEFEFEFEFFFFFFFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE +FEFEFEFFFFFF7978B00F0C710E0B710A076E09066E08056D09056E06036C00006533358A +BACAE3DBEEF9D2E5F3D5E8F5D6E9F6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D4E8F5DDECF7BFDCF17DB9E379B7E2 +79B6E27BB8E475AEDC6797CA29247715005C19076119076115005C4D64A67DBEE878B5E1 +7BB7E37DB8E37BB7E37BB7E37BB7E27FB9E385BDE487BEE589BFE689BFE691C3E798C6E8 +9CC9E9A1CCEBA1CCEAA3CDEAA1CCEAA0CCEB9CC9EA9BC8E99CC9E99CC9E99DC9E9A0CCEA +A1CCEAA7CFECABD1EDACD1EDA8CFECA4CDEA9BC8E994C4E893C4E897C7E99BC9EAA0CBEA +A0CCEBA1CCEBA7CFEBA9D0ECABD1EDAFD3EDB0D3EDB2D4EEB3D5EFB1D5EEACD1EDA7CFEC +9CC9EA9DCAEA76B4E257A3DB60A9DD63AADD61A9DC63AADD62A9DD76B4E1A5CEEBA8D0EC +AFD3EDADD1ECB4D8F19BBADE7086BE1B207E00006608046D09066E08056D09066E0C086E +04016C605686AD9E9EF5E4BCF5E5C1F3E5C8EBD5A6E8CE98E6C88CDEBC74DCB668D7AC56 +D6AB53D6AC57E3C489E9D1A3EBD9B3EBD9B2EDDDBDEEE0C4EFE2C7F0E4CCF1E6CEEFE2C7 +E8D5B1DFC794D8BB7ED5B676D0AD68CCA75ECBA559CAA559C7A152D0B172DFCA9FE3D0AB +E4D4B2E5D6B6E8DABFEBDFC6E4D5B6D5BC8BD3B987CBAF75C0A05CBA974DB18939B28A3B +B48E42B18A3DBF9F61DBCBA9DCCCABDED0B2E3D6BAE0D2B6CDB78DC9B183C8B081C7AF82 +C6AE81BA9F67B29457A4803A9D762B946C1CAF9258C7B38CD0C09FCFBF9ED1C0A1D3C4A7 +D4C6AAD8CBB2DCD0BAC8B794AC915DA98E58977736825C0F7E5709825D1385611987631D +835F17917232C1AF8CC6B595C8B99BCCBDA2CFC1A7D0C4AAD0C4ACD1C5AED3C8B2C1B292 +99804D8C70357553106F4C067757157B5D1E7B5D1F77591870510DA18D61C9BEA5C5B99F +CABEA6CABEA7C5B89FBEB094BBAC8F8168346345076343056F511571541A72561D6F531A +6E541B735922755B25887244AE9F80C0B49CC6BBA7C2B7A0B9AD94B4A68BAC9E80A99B7D +A394746044174628004F3200563C045D430B644D19654F1D614916533904573E0C988969 +AA9E83A39679A89C81ABA085ADA289ACA188ACA087ADA18998896A634D20644E23644F24 +5E491C5943134730013F25003E250357431B887A5AADA48DA59A82A89E86AAA08AABA18B +ADA48EAEA48FADA38EACA28DABA28CA99F89ABA28B6453352D1600321B013722003A2500 +463307513F15513F15897B5EAAA18CB6AF9DB3AB99B4AD9BB7B09FAAA18C655538130000 +524132C1C5CAC2C7D5C2C6D2C3C8D4C2C7D3C3C8D4C3C8D5C4C9D5C4C9D4C5CAD5C7CCD7 +C8CDD8C8CDD8C9CED8CACED9CCD0DACDD1DBCED2DCD0D4DDD1D5DED3D7DFD4D8E0D6D9E1 +D8DBE3D9DCE4DBDEE5DDE0E6DFE2E8E2E4EAE3E5EBE5E7ECE6E8EDE9EBEFEBEDF0ECEEF1 +EEEFF3EFF0F3F1F2F5F3F4F6F3F4F6F5F6F8F6F7F8F7F8F9F9FAFBF8F9FAFAFAFBFBFBFC +FBFBFCFBFBFCFCFCFDFDFDFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFCFBFDFFFFFF +C2C2DB514F98110E7300006808056D09066E08056D0A076F0A076E06046C7E88BCC0D1E7 +DBEFF9D6E9F6D5E8F5D6E9F6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F5D5E8F5D8E9F6D0E6F59DCAE97DB9E376B4E17BB9E4 +75AEDC6797CA29247715005C19076119076115005C4D64A67EBEE879B5E17AB7E27BB7E2 +7BB7E37BB7E37BB7E27EB9E385BDE487BEE589BFE68ABFE690C2E797C6E89BC8E9A1CCEA +A2CCEBA2CDEAA2CCEBA0CBEA9CC9EA9BC8E99BC9EA9BC9EA9CC9EAA0CBEAA2CBEAA6CFEC +ABD0EDACD1EDA7CFECA2CDEA9AC8E994C4E993C4E898C7E99CC9EAA0CCEBA0CBEBA1CBEA +A7CEEBA9D0ECABD1ECAFD3EDB0D4EDB2D4EEB3D5EFB1D5EEABD1EDA6CEEB9CCAE99DCAEA +76B4E158A4DB60A9DD62A9DD61A9DD64ABDE61A9DD77B5E2A6CEECA8CFECAED3EEB2D7F0 +BBE0F57286BD30378C09076E0A076F09066E08056D09066E08056D00006C110D70AE9F9E +EBD8B1EEDEBBF1E1C1F3E4C7EBD3A3E8CD98E5C78CDEBC73DCB667D7AC56D6AA53D6AD58 +E5CA94EAD3A7EBD9B3EBD9B3EDDDBEEEE1C3EFE3C7F0E5CDF1E6CFEEE1C6E6D1A9DFC692 +D7BA7CD4B474CFAC67CCA75FCBA55AC9A559C7A153D4B67AE2CFA9E3D0ABE4D4B3E5D6B7 +E9DBBFEBE0C6E2D1B0D3BA87D2B885C9AC72C09D58B9954BB18938B28A3BB48E43B18A3F +C4A76EDCCDACDCCBAADFD0B3E4D8BEDECFB1C8B083C8B082C8B082C7AE81C5AE7FB89C63 +B09153A27E369A7427966E1FB79D69CFBE9BD0BF9ED0C09FD0C0A1D3C4A8D4C6ABD9CCB4 +DCD1BBC2AE88AA8F5AA88C5693722F80580A7E5708835E1586611A88651F825E179A7D43 +C7B696C6B696C8B99CCDBEA4CFC2A9D0C4ABD0C4ACD1C5AED5CAB5B8A78390753E886B2F +73510C6F4C057858187B5D207B5C1E765816745614AF9E78C8BDA4C6BAA0CABEA6C9BDA6 +C3B69CBEB095B3A3826E52185A3B0067490A70521870541A70551C6E52176E531A745A24 +745A24917D53BEB399C2B8A1C4B9A4C1B59EB6AA8FAFA184AA9B7CB0A386958360523403 +4D31004E3200583E06604710664F1C67511F5D440F533906675025A4977AA69A7EA5987C +AA9F84ACA187ADA189ACA087B0A48DA0937783714C604A1C675126624D215A4415543D0C +442C003A20004129067B6B489B8F73A99F88A69C83A89E87ABA18BABA28CADA48FAFA590 +ADA38FAAA18BABA28CA69C85988D72473416301900351E013A2500402B004B380D503E14 +59471FA1967FB6AE9DB4AD9AB4AD9BB4AD9CB9B2A292876B55442712000067594EC9CED7 +C0C5D2C2C7D3C3C8D4C2C7D3C3C8D4C3C8D5C4C9D5C5CAD5C5CAD5C7CCD7C7CCD8C9CED8 +CACFD9CACFD9CCD0DACCD0DBCED2DCD0D4DDD1D5DED3D7DFD4D8E0D6DAE2D8DBE3D9DCE4 +DCDFE6DDE0E7DFE3E8E2E4EAE3E5EBE5E7ECE6E8EDE9EBEFEBEDF0ECEEF1EEF0F3F0F1F4 +F1F2F5F2F3F5F3F4F6F5F6F8F7F8F8F7F8F9F9FAFBF9F9FAFAFAFBFBFBFCFBFBFCFCFCFD +FCFCFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFCFCFDFFFFFF +9694C123207D110F7308056D09066E09066E09076E08046D0E0C711E1E7C8792C2D7EAF6 +D6E9F6D3E6F4D5E8F5D5E8F5D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D5E8F6D6E9F6D5E8F5D6E8F6DBEBF7B2D5EE77B5E27BB9E475AEDC6797CA +29247715005C19076119076115005C4D64A67EBEE879B5E17AB7E37AB6E37AB7E37BB7E3 +7BB7E27EB9E384BDE486BEE589BFE688BEE58EC1E694C5E798C7E8A1CBEAA2CCEBA2CDEA +A1CCEB9FCBEA9CC9E99BC9EA9AC8E999C7E99BC8E99FCBEAA1CCEBA5CEECA9CFEDAAD1ED +A6CFECA2CCEA9AC8E993C4E893C4E897C6E99BC9EAA0CBEAA1CBEBA1CCEAA6CEEBA8D0EC +ABD1ECAFD3EDAFD3EDB1D4EEB2D5EFB0D4EEABD1EDA5CEEC9AC8E99CC9EA73B3E159A4DB +60A8DC62AADE62AADE65ABDE62AADD7DB8E3A8CFEBA8CFECA9CDEA9FBEE05F70B00C0A70 +05016A0A076F09066E08056E0A076D08056D1511702A2375AC9D9BF6E2B4EEDBB5F1E0BD +F3E4C5F2E1C1E9CF9BE7CD96E3C687DDB96FDAB464D6AC55D4A951D9B366EAD5AAEAD6AE +EBD8B3ECDAB5EEDEBFEEE2C6F0E3C9F0E5CDF2E7D1ECDCBEE0C797DDC28DD5B575D1B06C +CEA962CCA55BCBA65DC8A256C8A155DBC392E5D4B3E2D1ADE5D5B6E6D7B9E9DDC3EADEC4 +DCC79FD0B782CFB580C6A76ABC984FB79146B28A3BB38C3FB38D43BE9E5FD0B98CDDCEAE +DCCCACDFD1B6E3D6BDD4C19CC6AE7DC8B082C7B082C6AE80C2A978B19356A887449F7A30 +9871239F7D37CAB791D3C4A5D0C09FD1C1A1D0C1A2D4C6AAD7C9AFD7CAB0D0C2A5B49C6C +A78A53A2844A8A671F7C54047F590B87631B88641D8A672395773BB29D71C9B99CC6B696 +CBBDA1CFC2A8D0C4ABD1C5AED2C6AFCFC3ABC7B99CA18A5B896C3281622373510C775614 +7C5C1E7A5B1E75541582672C9E885BC0B296C8BDA4C9BDA6C7BAA2C5B89EC0B297A08C64 +8369365D3C006142036E521470541A6F53196E51176D511870551D775E29806A39B5A88C +C7BEA9C3B9A2BFB59DBBB097AEA083A89A7AA6977793815B674D1F4B2E004F3300533701 +614812664F1C67501E634C19583F0983714B9E9072A69A7EA79B80ACA187ADA189ADA188 +ACA087AFA48BA2967B6D592E634E21634E225F4B1C5842134A3203462D00442C03483107 +786745ADA28BA89D86A89D86A99F89ABA18BAEA48FAEA590AFA691AEA490ABA28CA69C85 +A99F887161443F2B0D341E02361F003721004732074D390E51401676674694896FB7B0A0 +B6AE9DB7B09FB5AE9DBBB5A5A49B864C3A14372309392409877F75CCD3E1C0C5D0C3C8D3 +C2C7D3C3C8D4C4C9D5C4C9D4C5CAD5C6CBD6C6CBD6C7CCD7C8CDD8C9CED8CACFD9CACED9 +CCD0DACDD1DBCED2DCD1D5DDD1D5DED3D7DFD4D8E0D7DAE2D9DCE3DADDE4DCDFE6DDE0E7 +E0E3E9E2E4EAE3E5EBE6E8EDE7E9EEEAECF0EBEDF0ECEEF1EFF0F4F1F2F5F1F2F5F3F4F6 +F4F5F7F6F7F8F6F7F8F7F8F9F8FAFBF9F9FAFAFAFBFAFAFBFCFCFDFDFDFEFDFDFDFEFEFE +FDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFDFDFDFFFFFFE2E1ED6D6BA9 +1B19780000680D0A7009066E08056D09066E09076E0000673A3C8EC4D6EAD9ECF8DAEDF8 +D4E7F4D5E8F5D6E9F6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D5E8F5D5E8F5DBEBF7CEE5F480BAE471B3E175AEDC6897CB29247715005C +19076119076115005C4D64A67EBEE879B5E17AB7E37AB7E37AB7E37BB7E37CB7E27EB9E3 +84BCE486BDE588BFE689BFE58FC2E694C5E798C7E8A0CBEAA1CCEBA2CDEAA1CCEB9FCBEA +9CC9E99BC9EA99C7E998C6E89BC8E99FCBEAA0CCEAA5CEECA9D0EDAAD1EDA6CFECA2CCEA +9AC8E993C4E792C3E797C7E99CC9EAA0CBEAA0CBEBA1CCEAA6CEEBA8D0ECABD1ECAFD3ED +AFD3EDB1D4EEB2D5EFB0D4EEABD1EDA5CEEC9AC8E89BC9E972B2E15AA5DB60A8DC64ABDD +64ABDD65ABDE62AADD80B9E3A8CEEBB1DAF39FC1E27085BC2225810300690B086F08056D +08056E0A076D08056E00006D2C2575766887E8D4ABF0DCB3EFDCB6F1E1BFF3E4C7F1E1BF +E8CE9AE8CC97E3C584DCB76CD9B262D6AC55D4A84FDBB76EEBD9B0EAD7B0EBD8B3ECDAB6 +EEDFC0EEE1C7EFE3C9F0E4CDF2E6D1EAD9B8DDC592DCC18AD4B472D0AD69CEA85FCBA559 +CAA65CC8A255C9A258DDC89CE4D3B1E3D2AEE6D7B7E7D8BBE9DDC3E9DCC3D9C398D0B682 +CFB47FC4A465BA964CB69044B28B3DB38D40B38D43C6AA73D5C098DDCDADDDCDADE0D2B7 +E0D1B6D0BB93C7AE7EC8B183C6AF81C6AE80C1A776AF9051A6833E9E782E976F21A68545 +D0BF9FD3C2A4D0C0A0D0C0A0D1C2A3D5C6AAD8CAB1D4C7ABC8B795B09763A5874F9E7F43 +8763197A54057F5B0E88641E89651F8A6825A48A57BBA882C8B89AC6B697CCBFA3D0C3A9 +D1C5ACD1C6AED3C8B1CEC2A9BAA98699804C876A2F7E5F1F7453107B5C1D7D5E2078591A +71500E8D743EB4A481C2B599C9BDA5CABEA7C5B9A0C3B69BBFB0958A72416C4E155E3D00 +6647067054197054196F53186C4F156D5119725720775F298C774BC2B7A1C5BBA6C2B7A0 +BEB39AB8AC92AB9C7EAB9C7FA49475745D2E583C0C4C30004F3300563B04644C18685120 +664F1D5D44105C44109B8C6CA99D81A6997EAA9E85ADA288AEA28AADA088ADA288B3A992 +9081615F491A614C1F624E215A4716533D0C442B00412700432C06624D22948769ADA38E +A89C85A99E88ABA18BADA38EAFA590B0A691AFA692ADA590AAA08BA69C85A1967E4F3B1F +2B1400341F013722003C27004C380D503D1354421993886EAEA693B7B09FB7AF9EB9B2A1 +B5AE9CBEB8A990856B3622002C170259483199948ECAD0DFC0C5D0C3C8D4C2C7D3C3C8D4 +C4C9D5C5CAD4C5CAD5C5CAD5C6CBD6C7CCD7C7CCD8C9CED8C9CFD8CACFD9CCD0DACDD1DB +CFD3DCD1D5DED2D6DFD4D8E0D5D9E1D7DAE2D9DCE3DADDE4DDE0E6DEE1E7E1E4E9E2E5EA +E3E5EBE6E8EDE7E9EEEAECF0ECEEF1ECEEF1EFF0F4F0F1F4F1F2F5F4F5F7F4F5F7F6F7F8 +F6F7F8F7F8F9F8FAFBF9FAFBFBFBFCFBFBFCFCFCFDFDFDFEFDFDFDFEFEFEFDFDFDFEFEFE +FFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFEFEFEFBFBFCFFFFFFAFADCF171576 +0000660B086F09066E08056D09066E0B086F07046D2C2E855A60A3C4D6EAD9ECF8D5E8F5 +D4E7F5D5E8F5D6E9F6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D4E8F5DAEBF6BAD9F090C4E876AEDC6696CA29247715005C190761190761 +15005C4D64A67EBEE879B5E17AB7E37BB8E37BB8E37CB8E37BB7E27CB8E382BAE484BCE4 +88BEE589BFE68FC2E794C5E798C7E8A0CBEAA1CCEBA1CCEAA1CCEB9FCBEA9CC9E99BC9EA +99C7E999C7E99BC9E9A0CCEBA0CBEAA5CEECA9D0EDAAD0ECA6CEEBA2CCEA9AC7E994C4E9 +92C3E899C8E99ECAEA9FCCEB9FCBEAA1CCEBA5CEECA7CFECABD1EDAFD3EDAFD3EDB1D4EE +B1D4EEAFD3EDA8D0ECA3CDEB98C7E89AC8E973B3E15DA7DC63AADD64ABDE63AADD65ABDE +63A8DD84BCE4ACD4EF90B1D932398D06026C0B097009066E08056D09066E0A076D05036E +140F6C322663B9A084F7E0B0EAD5ABF0DDB5F0DEB8F2E2C2F3E6C9EFDCB5E7CC95E7CC96 +E1C17FDBB566D9B15DD6AB54D3A74FDFC182EBD9B3EAD7B0EBD9B3ECDAB6EEDFC0EEE2C6 +EFE3C9F0E4CDF2E6D0E6D1AADCC28BD9BE84D2B06DCFAB64CBA65BC9A559C8A357C9A45B +CFAD6CE2CFAAE4D2AEE4D3B0E6D7BAE8DABFE7DABEE3D3B3D6BE8ED0B581CEB17CC2A15F +B58F43B38C3FB38D41B28C40B89551D6C29BD9C7A4DCCCADDECFB1DFD1B5D4C09ACAB387 +C7AF81C7B083C6AE80C4AC7DBDA16DA98845A17C349A752A967226BBA270D4C5A7D0C0A0 +D1C1A1D0C1A1D2C3A5D6C8ADDACDB6C8B692B79F71AD93609F8145977736815C107E580B +845F178A682486631D987B40C2B18FC4B494C7B798C8B99BCEC1A7D2C5ADD2C6AED1C5AD +D5CAB5BFAF8F9B83508F733B8263257A59177959188263277D5F20745312755617AE9C77 +C5B89EC6B99FCABEA6C9BDA5C2B59BC1B59BA8956F67480C5C3C0066480A6D511472561E +6F53196D50166B4F15735821765D27928056AD9F80C7BCA8C3B7A1BEB39CB8AC92B1A487 +A8997AAC9F807D693E4F3200523501533701583D055F471168511F6953215E4511533A03 +84724CA89C81A5987CABA085ADA288ACA187ACA087ADA28AACA0879D8F72675326604C1E +624D205741104C3504472E014127013D23006A5730A49980A79C83A99E87A89D87ACA28C +AEA48FAEA590B0A792AFA691ACA38DA89F89ADA38D7F7155534021351E01351F01392300 +422E02493509513E154F3C13817455B7B09FB8B1A0BAB3A2BBB4A4BAB3A2BBB4A5B0A895 +5443222B1600271000A9A4A2C2C5CAC2C7D4C2C7D3C3C8D4C2C7D3C3C8D4C4C9D5C4C9D4 +C5CAD5C5CAD5C6CBD6C8CDD8C8CDD7C9CED8CACED9CBCFD9CDD1DBCED2DCCFD3DDD1D5DE +D2D6DFD4D8E0D5D9E1D7DAE3D9DCE4DADDE4DDE0E7DEE1E7E1E4E9E3E5EBE4E6ECE7E9ED +E8EAEEEAECF0ECEEF1EDEFF2EFF0F4F1F2F5F2F3F5F3F4F6F4F5F7F6F7F9F7F8F9F8F9FA +F8FAFBF9F9FAFBFBFCFCFCFDFCFCFDFDFDFEFDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFFFFFFFFFEFEFEFCFCFDFFFFFFBBBAD76563A40D0A70 +09066E0A076E08056D08056D0A066E0302690000662E2E865B60A4C8DAEDD9ECF8D2E5F3 +D5E8F5D6E9F6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D5E8F5D8EAF6DDEEF8A4C7E66494CA2B257815005C19076119076115005C4D64A6 +7EBEE879B5E17AB7E37AB8E37BB7E37CB7E27BB8E37CB7E280BAE383BCE489BEE589BEE5 +8EC1E695C5E798C7E89FCBEAA0CBEBA1CCEAA1CCEB9FCBEA9CC9E99BC8EA9BC8EA9CC9EA +9CC9EAA0CBEAA0CBEAA5CEECA9D0EDA9D0ECA5CEEBA1CCEA99C7E893C4E893C4E899C7E9 +9DC9EA9FCBEAA0CBEBA1CCEBA5CEECA7CFECABD1EDAFD3EDB0D4EEB0D4EEB0D4EEAED3ED +A6CEECA1CBEA96C5E899C7E973B2E160A9DD64ABDE64ABDE63AADD65AADD6DB6E5719FD1 +414B991C1F7E0000670A076E09066E08056E09066E0B076D07056E0F0B6D9B7A57D4A84E +EED292EEDBB4EFDAAEF0DEB8F1DFBBF2E3C5F3E6CAEDD7ADE6CA92E5CA92DFBD77D8B15E +D7AE59D4A950D4AA53E5CC99EBD8B4EAD7B0EBD9B4ECDBB8EEDFC2EFE1C7EFE3C9F0E5CD +EFE3CBE0C99ADBC089D7BA7ECFAC66CDA75DCAA558CAA55AC7A154CEAD6BD8BF8DE4D2AF +E3D1AEE5D5B4E7D9BEEADDC5E4D3B2DBC69BD3BA89CEB27DCAAD75BD9A54B28A3CB28A3D +B38D43B18A3EC5A871DDCDADDBCAA9DCCCADDFD1B6DAC9ABC7AE7FC8B082C7B082C7AF82 +C5AC7DC1A878B79B63A27F399973279A752CA68747CBB994D2C3A4D0C0A0D1C2A3D0C1A2 +D2C4A7D8CBB3D6C9AFB7A274AE9461A98C569777378E6C277E590B825D1587631E896723 +886521B29B70CABC9EC7B797C8BA9CCABDA0D0C4ABD2C6AFD1C6AED2C7B0D1C5AFA48E60 +8D7137876A2E7C5D1D7858167C5B1C8163267656157E62279A8354C3B69BC4B99EC9BDA5 +C7BBA3C5B99FBEB094B9AB8C7D622C593800604002705317765C2373581F6E51186C4F15 +6F541C755B24897345BFB49CC4B9A2C1B69FBFB39BB9AD94AFA285ADA0839E8D6D745D31 +563B0A5135005338005C420B654D1868511F674F1D5E45106049187C6841A5987BA89C81 +A99E84AEA48AADA289AA9E84AEA289B1A68E83724E6652255E481A5E481B5A44144B3402 +4027004329023D2300564018A59A7FADA48DA99E87AAA088ABA18AAFA591B2A794B0A894 +AFA591ACA28DA69C85AAA0889083693D280A2F19003B26003E28004530044E3B0F4D3A10 +5D4C25776948B3AC9BBCB4A5BCB4A4BDB7A7BCB6A6B9B2A2AEA79284775A2F18001B0300 +554432C3C7CEC4C9D5C2C7D3C3C8D4C3C8D4C2C7D3C3C8D4C4C9D5C4C9D4C5CAD5C5CAD5 +C6CBD6C8CDD8C9CED7CACED9CBCFDACBCFD9CDD1DBCED2DCD0D4DDD2D6DFD3D7DFD5D9E1 +D6DAE2D8DBE3DBDEE5DCDFE6DEE1E7DFE2E8E2E4EAE4E6EBE5E7ECE8EAEEE9EBEFEBEDF0 +EDEEF2EEEFF3F0F1F4F2F3F6F2F3F6F3F4F6F4F5F7F7F8F9F8F9FAF8F9FAF9FAFBF9F9FA +FBFBFCFCFCFDFCFCFDFCFCFEFDFDFDFEFEFDFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFDFDFEFFFFFFEAE9F2C3C2DC3B388B00006607046D +09076E08056D08056D0B086F0A076E0C096F1A18798B97C5DBEFFADCEFFAD5E8F5D4E7F5 +D6E9F6D6E9F6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5 +D5E8F5DEEEF8BDD5EB7DA2D02F277814005C19076219076115005C4D64A67EBEE879B5E1 +7BB7E37BB8E37CB7E37CB8E37BB8E37CB7E27FB9E382BCE489BFE589BEE58EC1E695C5E7 +98C7E89FCAEAA0CBEBA1CCEAA1CCEB9FCBEA9CC9E99BC8EA9BC9E99BC8E99CC9EAA0CCEA +A0CBEAA5CEECA9D0EDAAD0ECA5CEEBA1CCEA99C7E892C4E793C4E898C7E99BC9E99FCBEA +A0CBEBA1CCEBA6CEECA7CFECABD1EDAFD3EDB0D4EEAFD3EDB0D4EEADD3EDA6CEECA0CBEB +96C5E899C7E973B2E161A9DD64ABDE63A9DC64ACDF66ACDE5C98D04865AC110E730B0870 +09066E09066E08056E09066E0A076E06036D00006E4B3B67CFA450E3B54EE7CD98EFDCB2 +EFDAAFF0DEB9F0DFBCF2E4C6F3E6CAECD5A9E6CA92E5C990DFBC75D8AF5CD6AD57D4A950 +D5AC57E6CF9FEBD8B3EAD7B0EBD9B5EBDBB9EEDFC3F0E2C8EFE3C9F0E6CEEEE1C6DFC695 +DBC088D7B87CCEAA63CBA65BC9A557CAA55AC6A053D0B173DDC69AE3D1ADE3D2AFE5D5B6 +E8DAC0EADEC6E1D0ACD8C293D2B988CCB07AC8AB71BB974FB1893AB28A3CB38D43B18A3E +CBB07EDCCBACDAC9A8DCCDAEE0D2B7D6C4A2C4AB7AC8AF81C7AF82C7AF82C4AB7BBFA572 +B4975DA07C359770229D7931B49964CEBB99D2C2A3D0C1A1D1C2A3D0C1A2D4C6AAD7CAB1 +D1C2A5B39B6BAD9461A689519372318A67207E580B85601A8965218765208D6C2BBBA883 +C9BA9CC7B798C9BC9ECBBEA2D0C4ABD2C6AFD1C5AED4C9B3CBBEA49A814F8C6F3684672A +7B5C1A7859177C5C1D7F612371510F8B733DAE9C76C4B79BC6BBA0CABDA6C5B9A0C3B79D +B9AB8CAC9A756D4F145B3B0062430473571D775D2573581F6D50166C4E147257207A612D +98865EC6BBA6C4B9A2BFB49DBDB198B7AB90AB9E7FAFA184907D59593D0D533705543800 +553B0260471168501E6A53216149155339026F5A2E978768A5997CAA9E83ACA086AEA389 +ADA288AA9E84B0A58CA89B816E5A305E48195E481A59431356400E493101412800402702 +462E046F5D37ADA38BA79D84A89E87ABA28AACA38CB0A692B2A895B0A893AEA490AAA08A +A49A82A9A087706044341E003A2501402B01432E024A36094F3C124B380D70613E968B72 +B7AF9FBCB5A5BEB6A8BDB6A7BBB5A5BBB4A591866A6253332C16001A020074695FCACFDA +C0C5D1C2C7D3C3C8D4C3C8D4C3C8D4C3C8D4C4C9D5C4C9D4C5CAD5C6CBD6C6CBD7C8CDD8 +C8CED7C9CED9CACEDACCD0DACED2DCCFD3DDD0D4DDD2D6DFD3D7DFD5D9E1D6DAE2D8DBE3 +DBDEE5DCDFE6DEE1E7DFE2E8E2E4EAE4E6EBE5E7ECE8EAEEE9EBEFEBEDF0EDEEF2EEEFF3 +F0F1F5F1F2F5F2F3F6F4F5F7F5F6F8F7F8F9F7F8F9F8F9FAFAFAFBFAFAFBFBFBFCFCFCFD +FCFCFDFCFCFEFDFDFDFEFEFDFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFCFCFDFFFFFFDEDEEB9897C22F2C8403006B0D0A70 +09066E08056D09066E0A076E05036B0A0A6E4E529C7F89BCD7EAF6DAEDF8D2E5F3D5E8F5 +D5E8F5D6E9F6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D6E9F6D5E8F5D6EAF7 +CEDFEFB6C2DB392D7A11005B1A076219076115005C4D64A67EBEE879B5E17BB7E37CB8E3 +7BB7E37CB8E37BB8E37CB7E27FB9E383BBE488BEE589BFE68EC1E692C3E796C6E89FCAEB +A0CBEBA2CDEAA1CCEB9FCBEA9CC9E99CC9EA9BC9E99BC9E99DCAEAA0CCEBA0CBEAA5CEEC +A9D0EDA9D0ECA5CEEBA1CCEA99C7E892C4E793C4E897C7E99AC8EA9ECBEA9FCBEBA1CCEB +A5CEECA7CFECABD1EDAFD3EDB0D4EEAFD3EDB0D4EEADD3EDA4CEEB9ECAEA94C5E899C7E9 +70B1E05FA7DC63A9DC66AFE160A4D9314F9F10137607076D07046C09066E09066E08056D +0A076E0A076E00006D42366F92786ED2AA5AE1B450DCB45DECD4A2EFDAAFEFDBB1F1DFBC +F1E1C0F3E5C9F2E5C8EAD2A2E6CB94E5C98FDEBB74D6AD5AD5AC56D3A850D8B368E9D5AC +EBD8B3EAD8B1EBDBB8ECDCBBEEE1C4F0E3C9EFE3CAF1E6D0EAD9B9DBC08AD9BC83D4B575 +CCA75DC9A456C9A458C9A459C6A054D8BD8BE4D1AEE3D1AEE4D3B2E6D7B9E9DDC4E9DEC5 +DAC69CD3BC89D0B683C8A96EC3A262B48E43B08737B28A3DB18A3FB7944FD6C39CDBCAA9 +DBCAA9E0D0B4E0D1B5CBB689C5AC79C7AF81C7AE83C7AF82BEA572B79A61AC8B4C9A742A +926A1AAE9055D0C09FD0BF9FD2C2A2D1C1A3D1C2A4D3C3A6D8CBB1CCBD9BBFAA81AE9360 +AB8F5A9D7F428B6720845E13805B0F8B67238B6824917232A88E5CCABB9DC7B99AC9BB9D +CCBFA5CFC1A7D1C6ADD2C6AFD1C4ADD0C4ACB3A0798A6E3385672B7F60217A5C1A7A5B1B +7A5D1E785917775919B1A17DC6B99EC4B79DC8BCA4C9BCA5C1B499C1B49998825675571E +5E3E016547076B4E10765D25775D2673561E6C50176C51177C6433A89776BCAF96C5BCA6 +C1B69EBBAE96B5A88EAFA285AB9D7DA495746147184A2C005438025A3F075F450E69511E +6D5625644D1958400B60481A9D8E6FAB9E82AA9D82AEA288AEA289ADA188AC9F85AFA48B +908160725F355A43135D4618543D0B4C3402493100462D00432900513A108F8163A2977D +ABA189A99E86ABA18BAEA48FAFA691B0A793AFA791ACA38DA69C85A79D858A7E635E4E30 +3924063E29004733044C380C4F3C11503E1456431B675632A9A08CB7AF9FB8B0A0BFB9A9 +C0B9AAB8B1A0BAB3A39C927A3A260A2C16002C1807938B80B9BABEC5CBD9C1C5D1C3C8D4 +C2C7D3C3C8D4C4C9D5C4C9D5C4C9D5C4C9D4C5CAD5C7CCD7C7CCD7C8CDD8C8CDD7CACFD9 +CBCFD9CCD0DACED2DCCFD3DDD0D4DDD3D7DFD4D8E0D6D9E1D7DAE2D9DCE3DCDFE6DCDFE6 +DFE2E8E0E3E9E2E5EAE5E7ECE6E8EDE8EAEEE9EBEFECEEF1EDEEF2EEEFF3F1F2F4F2F3F5 +F3F4F6F5F6F8F5F6F8F7F8F9F7F8F9F8F9FAF9F9FAFAFAFBFBFBFCFCFCFDFCFCFDFCFCFE +FDFDFEFEFEFDFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFFFFFFFEFEFEFDFDFEF9F9FBF5F5F97370AD02006800006509066E09066E +08056D09066E0A076F09066E0C0A7035378AAFBDDCCBDDEFDEF2FBD5E8F5D5E8F5D5E8F5 +D6E9F6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F6D5E8F5D7EBF7CCDDEEB6C1DB +3A2D7A12005B1A076219076115005C4D64A67EBEE879B5E17BB7E37CB8E37BB7E37CB8E3 +7BB8E37CB7E27FB9E384BBE489BEE58ABFE68EC1E792C3E796C5E89FCAEAA0CBEBA2CDEA +A1CCEB9FCBEA9CC9E99BC9EA9BC9EA9BC9E99DC9EAA0CBEAA0CBEAA5CEECA9D0EDAAD0EC +A5CEEBA1CCEA99C7E993C4E893C4E897C6E99AC8E99ECBEAA0CBEBA1CCEBA6CEECA7CFEC +ABD1EDAFD3EDB0D4EEAFD3EDB0D4EEADD2EDA3CDEB9DCAE995C5E898C6E96EB0DF62AEE0 +67B0E15D9FD6497CBE12177A05006A0A076E09066E09066E09066E0A076E06036D08076D +131072877174E0BA6DDCB159DDB154E0B964EDD5A5EFDAAEEEDBB2F1E0BDF2E1C1F2E5C8 +F1E4C6E9D1A1E6CA93E4C78EDDBA73D5AD5AD5AB57D3A851DAB76EEAD7B1EBD7B2EAD8B2 +EBDBB9EDDDBCEFE1C6F0E3CAEFE3CAF1E6D0E8D6B3DABE87D7BA81D3B372CBA65CC9A356 +C9A459C8A358C7A157DBC293E4D3B0E3D1AFE5D3B3E6D7BAEADEC6E8DCC3D8C396D3BA89 +CEB380C6A668C19F5CB38C3FB08637B28B3FB08A3EBB9A58D9C7A4D9C9A7DBCAA9E1D3B9 +DECEB1C8B182C6AE7DC7AF82C7AE83C6AF82BCA26EB3965BA88746977125916919B79D68 +D4C4A6D0C0A0D2C2A2D1C1A2D2C3A4D4C5A8D8CCB2C6B590B8A274AD925FA88C569A7B3C +88631A815B10815D138C69268A67239C7F46B49D71CBBC9FC8B99BCABC9FCEC1A6CFC3A9 +D2C6AED1C5AED1C5AEC7B99CA99367886B2E8364277D5F207A5D1B7B5C1C795C1D71530E +7F6428BCAE8FC4B79CC5B89FC8BDA5C7BBA2C1B59AC0B398866C396242036040026A4C0D +6F5318775D25775D2672561E6E531B6D5119856E40BBAE94C3B7A0C4BAA4C1B69EB8AB92 +B1A488AD9F81B0A38595845F5337044F3200563A035C430B6148126B53216E58275C450F +5E47167B6741A6987CA6997BADA186AEA289ADA189ACA187ADA187AFA48B78653D604B1B +5B44145A43134F3805462E00462D00462E01422900665229A89E85A89E86A89E86ABA089 +ADA38DB0A692B1A793B0A793AEA58FA89F88A1977EA79D85726347382305362102443003 +4A36084F3C115341184D3A1063522C847758B3AB9AB4AC9ABAB2A2BFB9A9BEB8A8B7B09F +BCB5A47F72562B16002710003C2916C7C8CBC5C9D2C0C5D2C2C7D3C3C8D4C2C7D3C2C7D3 +C3C8D4C3C8D4C4C9D5C5CAD5C5CAD5C6CBD6C7CCD7C8CDD8C9CED8CBCFD9CCD0DACCD0DA +CED2DCCFD3DDD1D5DED3D7DFD4D8E0D6DAE2D7DAE2D9DCE4DCDFE6DDE0E7DFE2E8E0E3E9 +E3E5EBE5E7ECE6E8EDE8EAEEE9EBEFECEEF1EEEFF3EEEFF3F1F2F5F2F3F5F3F4F6F4F5F7 +F5F6F8F7F8F9F8F9FAF8F9FAF9F9FAFAFAFBFCFCFDFBFBFCFCFCFDFCFCFEFDFDFDFEFEFE +FEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFEFEFDFDFEFEFEFEFEFEFE9291BF4B48950D0A700A076F0B086F08056D +08056D09066E0B086F04026A151576323389939FC9D7EAF7D6E9F6D3E5F4D3E6F4D5E8F5 +D6E9F6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D7EBF7CCDDEEB3BFDA392D7A12005B +1A076219076115005C4D65A67FBFE87AB6E17CB8E37BB7E37CB8E37CB8E37CB8E37BB7E2 +80BAE384BCE489BEE58ABFE68EC1E792C3E795C5E89FCBEAA0CCEBA1CCEAA1CCEB9FCBEA +9DCAE99CC9EA9AC8E99AC8EA9AC8E99FCBEAA1CCEBA4CDEBA8CFECA9CFECA4CDEBA0CBEA +99C7E994C4E892C4E897C6E99AC8EA9FCBEAA0CCEBA3CCEBA6CFECA8D0ECABD1ECAFD3ED +B0D4EEAFD3EDB0D4EEABD1ECA1CBEB9CC9E993C3E796C5E86CADDE4F8CCA3E65AF161E7E +0C0C7207036B0A086F09066E08056D09066E0B086E08056D0C096F7E6E83C6AE8DE7C478 +E2BA68DEB155DFB55EE4C179EDD8AAEDD8ADEFDBB3F1E0BFF2E3C4F2E4C6EFDFBCE8CF9D +E5C991E2C589DBB86ED5AD59D4AB57D6B061DFC184EBDAB7EAD7B2EBD9B5EBDCBAECDDBE +EFE2C7F0E3CBEFE3CBEDE0C5E3CEA4D8BB81D6B779D0AF6DCAA55AC8A457C8A359C7A155 +CBA864E0CDA6E3D2B0E3D3B2E4D4B6E8D9BFE8DAC0E2D2B1D4BB8BD2B988CCB079BF9D5B +B9944DB08737B0883CB1893EB89754C8AE79DBCAAAD9C8A6DCCCACE0D3B9D3C19CC4AB79 +C7AF83C6AF82C6AF81C4AD7EB89C65AE8F51A07D36987327A17F3BC9B690D2C2A3D1C1A2 +D1C1A3D1C1A2D3C4A7D6C8AED4C6ABBAA377B39969A88E57A1844993712E825C11805A0E +88641F8C6A278F6F2FB9A57EC5B594C9BB9DCBBDA0CDBFA5D0C4ABD1C5ACD1C6AED2C8B0 +CABDA2A48E5F967C478264277C5E1E7D5E1F7C5D1E7A5A1B76571671510FA28D62C6B99F +C4B79CC6BBA1C7BBA2C5B89FB5A5859F8A606444065C3C0065460771541973581F765C24 +755B23735A22725921775E29AB9C7CC7BDA8C3B8A2C0B59EBDB29AB2A489AB9D7DA79879 +86724A63491B4E30005639015D430C634C15664F1B67521F634C18563C088B7957A79A7E +A6987CAA9D82AFA48BADA188AB9F85ADA289B2A78E84744E5A42115B4413533C094E3703 +452C0042280042290050380A7E6D479C9073ABA18AA79D84ACA28BAFA590B1A793B2A996 +B1A894ACA28EA89E88A0957D9F957C8072583E28073D2700442E034B370A4E3B0F544219 +5340185C4A23A0967FB2AA97B3AC9AB6AF9EB9B3A2B8B1A0B7AF9EACA490968B743A270D +2C1702270F00938C87C9CEDBBFC4D0C1C6D2C2C7D3C3C8D4C2C7D3C3C8D4C3C8D5C4C9D4 +C5CAD5C6CBD6C6CBD6C6CBD6C7CCD7C9CED8CACFD9CBCFD9CBCFD9CCD0DACFD3DCD0D4DD +D1D5DED4D8DFD4D8E0D7DAE2D8DBE3DADDE4DDE0E6DEE1E7E0E3E8E1E4E9E4E5EBE6E8ED +E7E9EDE9EBEFEAECF0EDEEF1EEEFF3EFF0F4F2F3F5F3F4F6F4F5F7F5F6F8F6F7F8F8F9FA +F9FAFBF9FAFBFAFAFBFAFAFBFCFCFDFCFCFDFDFDFDFDFDFEFDFDFDFEFEFEFFFFFFFEFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE +FFFFFFFEFEFEFEFEFEFCFCFDFEFEFEFFFFFF8E8CBC0201690202690C086F09066E08056D +09066E0A076F07036C0000680C0C70464996808ABDE0F4FCDCF0FAD3E6F4D5E8F5D5E8F5 +D6E9F6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D7EBF7CCDDEEB3C0DA392D7A12005B1A0762190761 +15005C4A63A580BFE87BB6E17BB7E37CB8E37CB8E37CB8E37CB8E37BB7E280BAE384BCE4 +89BEE58ABFE68FC2E793C4E796C6E89FCBEAA0CCEBA0CBEAA1CCEB9FCBEA9CC9E99BC9EA +98C7E998C6E99AC8E99ECAEAA0CBEBA4CDEBA7CEEBA7CFECA4CDEBA1CBEA99C7E994C4E9 +93C4E796C6E89AC8EA9DCAEA9FCAEAA1CCEBA8CFECAAD0ECACD1EDAFD3EEB0D4EDAFD3ED +B0D4EEABD1EC9FC9EA9AC6E89FD1EF94C5E83955A20B0C7208066D05006908056D09076E +08056D09066E0A076E08056D0D0B6E2D287CA29192F7DA98F0D18DE2BD72E0B660DCAF51 +E0BA69E8CC8FEED9AEEDD8ADEFDCB4F1E0C0F2E3C6F1E1C0EDD9B0E7CF9BE4C88DE2C383 +DAB569D6AE5BD5AB57DCBB78E5CC9AECDBB9EAD9B4EBDAB7ECDCBCEDDDBFEFE1C6F0E3CA +F0E3CBE7D3AEDEC796D6B87BD3B372CEAC66C9A458C9A459C8A358C6A051D2B479E3D2B1 +E2D0AEE5D4B5E5D6B8E9DDC3E1D0AED8C397D1B785D0B583C8AA70BA964FB58E42AE8535 +B08A3FB08A3EC9AF7CD5C29BDACAA9DACAA9DECFB2D4C29EC9B385C5AC7DC7B082C6AE80 +C5AD80C3AA7BB2955AA786449A7429A38241BFA97CD0BF9FD1C1A2D1C1A2D2C3A4D2C3A5 +D4C6ABD9CCB4C9B997B19867B19867A3864D9B7B3E8C68227E580C805B108D6C298B6A27 +A18550C9B99CC9B99BCABB9FCDC0A5CFC3A9D1C5ADD2C6AED1C6AED4CAB4B5A37D92753C +8E71387E5F207B5D1C7D5F217C5D207555147C5F2197804FBBAD8EC6B9A0C7BAA2C6BAA0 +C4B89EC2B69B8B724169490C5D3C006040006D5114745820755A21755B23735A22755B25 +7A612C938056C6BCA6C2B8A0C0B49CBBAF96B6A98EA99A7CAFA2848E7A544D2F004E3000 +553A025C4208634B1669511F68511E5D440F4B300076623BAA9C82A4967AAA9D82AFA38A +B0A48CAA9E83ADA188A69A7F8F805E5D4614584210553E0B472E00442A00412900422A02 +3F2600786741B2A992ABA189AAA088ACA28BAFA690B3A995B3AA97B2A995AFA590A69B84 +A399839B90787061434430113E29004E3B0B4E3C0F4E3B104E3B1052411855431A958A70 +B6AE9CB0A896B7AF9EB9B3A2B5AE9DADA593B3AC9975684C412F132D18041B02005B4C42 +CFD5DEBFC4D1C1C6D2C2C7D3C2C7D3C3C8D4C2C7D3C3C8D4C4C9D5C4C9D4C5CAD5C5CAD5 +C6CBD6C7CCD7C7CCD7C9CED8C9CFD8CBCFDACCD0DACDD1DBCFD3DDD0D4DDD2D6DFD4D8E0 +D5D9E1D8DAE2D8DCE3DADDE4DDE0E6DEE1E7E1E4E9E2E4EAE4E6ECE7E9EDE8EAEEEAECF0 +EBEDF1EDEFF2EFF0F3F0F1F4F2F3F6F4F5F7F4F5F7F6F7F9F6F7F8F8F9F9F8FAFBF9FAFB +FBFBFCFBFBFCFCFCFDFDFDFEFDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE +FFFFFFFEFEFEFCFCFDFFFFFFD9D8E852509924237E0200690A076E0A076E08056D08056D +09076E0B086F09066E1614763A3D8E96A2CBB5C4E0DCF0FAD5E8F5D4E7F4D5E8F5D6E9F6 +D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D5E8F5D7EBF7CCDDEEB3C0DA392D7A12005B1A076219066116005C4F66A7 +7CBDE77BB6E27BB7E27BB7E37CB8E37CB8E37CB8E37BB7E280BAE383BCE489BEE589BFE6 +8EC1E793C4E796C6E89ECBEAA0CCEBA1CBEAA0CCEB9FCBEA9CC9E99BC9EA98C7E998C6E8 +99C7E99DCAEAA0CBEBA4CDEBA7CFECA7CFECA4CDEBA1CBEA99C7E993C4E892C3E796C6E9 +9AC8EA9DC9E99EC9E9A1CCEBA8D0ECAAD1EDACD1EDB0D4EEB0D4EDAFD3EDAFD3EDA9CFEB +A5D1EF9ECBEB7CA1D0607EBA19207F06016B09066E0A076F09066E08056D09066E0A076E +09066E00006A453F84978B9ED6C19FEED294E5C788E3BE6FE0B55DDCAE50E2BD70EACF98 +EED9AEEDD9AEEFDCB5F1E0BFF3E4C7F0DFBEEBD6A9E7CF9BE2C68AE0C181D9B467D5AD5B +D5AC5AE0C185E7D0A2EBDAB7EAD9B5EBDAB8ECDCBCEDDDBFEEE1C6EFE3CAEFE2C8E3CFA4 +DDC491D5B679D1B270CDAA64C8A358C8A358C7A257C5A052D5BA84E4D3B1E3D1AEE5D5B5 +E6D7B9E9DDC3DECBA6D6BE8FD0B684CFB381C6A86CB9934AB48C3EAE8536B0893DB28E44 +D0BA8DD8C6A2D9C8A7DCCCACDECFB1CDB98EC6B07FC5AE7FC8B184C6AF81C5AD7FC1A878 +AF9154A4823E987227AD8F54C9B691D0BF9ED2C1A2D1C2A2D2C3A5D2C3A6D5C8ADD9CDB4 +C3B08AAF9664AF9663A0814697773788651D7F590D825D148D6D2A937435AC9364CABA9D +C7B799CBBCA0CEC1A6D0C3AAD2C6AED2C7B0D0C5ADCCBEA4AB966B90733C8C6E347C5D1D +7C5E1E7D5F207A5C1E745311886D35AE9C77BEB093C6B9A0C7BAA2C5B89EC5B89FB9AA8B +765A225F3F0161410264440470541A755921755A22755B23745A23755B268A7447A59572 +C6BCA6C0B59EBEB29AB6A98FB1A387A89A7AA697777861364B2E00513500583D045E460E +654E1A695120644C18583E0A573D0C8D7C5AA99B80A4977BAB9F85AFA48BAEA28AAB9F85 +B0A58D918260715E325C4514553E0C4F3705462B00442A00432A013F26004C350A938666 +ADA38CAA9F87ACA28CAEA48EB0A792B2A996B2A996B0A792ABA28BA39981A89E88887A5F +4E3B17422D074531044D390D4E3D11513F144E3B105B4A22746644A69D88B2AA97B1A996 +B5AE9CB7B09FB1A997AEA693AAA28B544327311D022A1502422E1A857C73CCD2DFBFC3CF +C2C7D3C2C7D3C3C8D4C3C8D4C2C7D3C3C8D4C3C8D5C4C9D4C5CAD5C5CAD5C6CBD6C8CDD8 +C8CDD7C9CED8CACFD9CCD0DACDD1DBCDD1DBD0D4DDD1D5DED2D6DFD4D8E0D5D9E1D8DBE3 +D9DCE4DADDE5DDE0E7DEE1E7E1E4E9E2E5EAE4E6ECE7E9EDE8EAEEEAECF0EBEDF1EDEFF2 +EFF0F3F0F1F4F2F3F6F3F4F6F4F5F7F5F6F8F6F7F9F8F9FAF8FAFBF9FAFBFAFAFBFBFBFC +FCFCFDFDFDFEFDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFF +FEFEFEFEFEFEFFFFFFF6F6FADFDEEC4E4B9616137507046D0C096F09066E08056D09066E +09066E07036C02016809076D1817787881B8CFE0F1D6E8F5D5E8F5D3E5F4D5E8F5D6E9F6 +D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D5E8F5D7EBF7CCDDEEB3C0DA392D7A12005B1A076219076114005C757AAF8FC7EB72B1E0 +7CB8E37CB8E27BB7E27CB8E37CB8E37BB7E27EB8E381BAE488BEE588BEE58DC0E693C4E7 +96C5E89ECBEA9FCCEBA1CBEAA0CCEB9DCAEA9CC9EA9AC8E997C6E897C7E997C6E89ECAEA +A1CCEBA4CDEBA7CFECA7CFECA4CEEBA1CCEA99C7E893C4E792C3E795C5E898C7E99DCAEA +A0CBEAA2CCEBA8D0ECAAD0ECACD1EDAFD3EDAFD2EDADD1ECB1D5EEA6CDEA708EC4485AA3 +0E0D7207066C05016A0A076F09066E09056D08056D0A076E0C096F08066D181574666097 +ECDEC7FFEDB7F0D8A4E8CA8CE8C681E1BA66DFB156DBAE4FE5C480EED7A9EDD9ADEDD9B0 +EFDDB7F1E2C1F2E5C9EEDBB5E9D09FE7CD9AE1C384DEBE7BD8B163D4AC59D6AF61E7CEA0 +EAD7B0EBD9B5EBD9B6EBDBB9ECDEBEEDDFC2EEE1C7F0E3CDEBDCBFDBC18CDABD85D4B474 +CEAE69CBA860C8A257C7A155C7A156C9A55FDCC79CE4D3B3E4D2B2E5D7B8E7D9BEE7DABF +D7C094D1B787CEB380CCB07AC2A263B38D40B08737AF8739B0883BBD9C5CDAC9A8DAC9A8 +D9C9A6DFD1B5D7C6A3C4AB78C4AC7AC8B183C8B185C5AE81C2AA7BBCA26FA787469C772E +9A752BC3AE84D3C4A5D1C0A0D2C2A3D1C2A3D3C4A6D4C5A9D5C7ADD0C1A3B79F72AB915D +A88C569575348D6B24805C10825D1488651D917132B29B70C1AF8DC8BA9BC7B898CCBEA2 +CFC3A9D1C4ACD2C7AFD4C9B3CABEA3A79265987E49896D328366287B5B1B7F5F227C5D1E +755615765615AB9872C6BAA0C4B79CC7BAA2C5BAA1C1B49AC3B69C927A4C5B39005D3D00 +6647086E5115765B23765C24765C24755B25755A23826B3AB7A98EC3B7A0C1B69FBCB098 +B7AB91AA9B7DAB9D7F9C8C6A684F205539095336005B4008624A13654D17684F1C664D1A +553B04664F23988A6AA5997BAA9E82ACA086ADA288AEA28AAEA289ABA0869C8F705F4817 +563F0B58410F4A3101442B00432900462D00442B00624D24877856B0A68FAAA089AEA38C +B0A792B1A893B2A995B0A793AEA590A99E88A599829A8E75827355523E15402B004A3506 +4D390D4E3A0F513F14534219513E158F8367B4AC99B0A996B0A795B0A895AEA693ADA492 +B0A79491866D68583C2C16002C1701321E07ADABA9C6CAD4C0C5D2C2C7D2C1C6D2C2C7D3 +C3C8D4C3C8D4C3C8D4C3C8D4C4C9D5C4C9D4C6CBD6C6CBD6C7CCD6C7CCD8C8CDD7CACFD9 +CBCEDACCD0DACCD0DACED2DCD0D4DDD1D5DED3D7DFD5D9E1D6DAE2D9DBE3D9DCE4DCDFE6 +DEE1E7DFE2E8E2E4EAE3E5EBE5E7ECE8EAEEE9EBEFEBEDF0ECEEF1EEEFF3F0F1F4F1F2F5 +F3F4F6F3F4F6F5F6F8F6F7F9F7F8F9F9FAFBF9F9FAFAFAFBFAFAFBFBFBFCFCFCFDFCFCFE +FDFDFDFEFEFDFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFFFFFF +FCFCFDFDFDFDFFFFFFA7A6CB6867A6100F7100006705036C09066E08056D09066E09066E +0B086F09066E01006934368B8691C1A9B7D8DEF2FBDFF3FCD9ECF8D5E8F5D6E9F6D5E8F5 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D7EBF7 +CCDDEEB3C0DA392D7A12005B1A076219076112005C8080B1ADD8F282B9E378B6E27BB7E3 +7CB8E37CB7E27CB8E37CB8E27DB8E381BAE489BEE589BEE58DC0E693C4E795C5E89ECBEA +A0CCEBA0CBEAA0CCEB9ECAEA9BC8E999C7E997C6E898C7E998C7E89ECAEAA1CCEBA4CDEB +A7CFECA8CFECA4CEEBA1CCEA99C7E893C4E793C3E795C5E897C6E99DCAEAA0CCEAA2CCEB +A8D0ECAAD1ECADD2EDB1D5EEB3D8F0B8DDF4B2D6EF7B96C83845961C1F7E0400690A076F +0A076F08056D09066E08056D09066E04016B000066211D77706999B7AFB9FCEFCEEBD6AB +ECD4A1E9CA8BE7C47EE1B864DEB155DBAE4FE6C785EED9AEEDD8ACEDD9B0EFDDB7F1E3C3 +F2E5C9EDD9B1E8D09DE6CC98E0C183DEBC79D7B162D4AB58D8B165E8D1A6EAD8B3EAD9B4 +ECD9B6ECDBBAEDDEBFEDE0C3EEE2C8F0E4CEEAD9B9DABE87D9BC83D3B272CEAD68CAA75F +C8A258C7A155C7A258CCAB6ADECAA1E4D3B3E4D3B3E5D7BAE8DAC0E5D7BAD4BD8ED1B786 +CEB27ECBAE77C1A05FB28B3EAF8736AF883AB18B3FC1A469DBCAAAD9C8A5DAC9A8DFD2B5 +D2C19AC3A976C5AD7CC8B184C7B183C4AE80C1A979BAA06BA584419871259E7B34CAB893 +D1C2A2D1C1A2D1C1A3D1C2A3D3C4A6D5C7ACD3C4A8C8B693B49C6EAA8F5AA6895192712E +88651D7F590E85601888651E957639BEAA86C5B494C7B89AC7B99ACCBEA3D0C3AAD1C5AD +D2C6AED6CBB5C3B6979B8451937942876A2E8063247B5B1B7F5F237B5C1D704F0B7C5E20 +B6A686C4B79CC5B89EC6BAA1C5B9A0C1B499BEB1947E632E5B3A00603F00694B0D71561B +775C24765C24765C24755C26735922907C50C1B69EC4B8A1BFB39BBAAE94B4A78BA9997A +AFA1838C7952543704543803593D055F450E664F1A674F1B664D196046104F34017B6842 +A79B7EA4977AACA085AEA288ADA188ADA087B2A78F9E907281704A5A42105B4412553D0A +462C00422900442C00452C004930038273509C9074ACA18AACA28BAFA48EB1A893B2A894 +B2A894AFA691ACA28DA49A83A79D868B7C605B48234A35094B36064C380A4D3A0E4F3D11 +503D1258461E675733A39A84B3AC9AAEA794AFA693AEA592ABA28FA9A08CB0A794746747 +4B3817311C002510004A382AC1C4C8C4CAD7C1C5D1C2C7D3C1C6D2C2C7D3C3C8D4C3C8D4 +C4C9D5C4C9D5C5CAD5C4C9D4C6CBD6C7CCD7C7CCD7C7CCD8C8CDD7CACFD9CBCFDACCD0DA +CDD1DBCED2DCD1D5DED2D6DFD3D7DFD5D9E1D6DAE2D8DBE3DADDE4DCDFE6DEE1E7DFE2E8 +E2E5EAE3E5EBE5E7ECE8EAEEE9EBEFEBEDF1ECEEF1EEEFF3F0F1F4F1F2F5F3F4F6F4F5F7 +F5F6F8F7F8F9F7F8F9F9F9FAFAF9FAFAFAFBFAFAFBFBFBFCFDFDFEFCFCFDFDFDFEFEFEFD +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFDFDFE +FDFDFEFEFEFEFFFFFFBAB9D644429122207D09066E0D0B7009066E08056D09066E09066E +0A076F05026B0000681312756167A896A2CBBDCEE6D6E9F6D2E5F3D3E6F4D5E8F5D5E8F5 +D6E9F6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D7EBF7CCDDEEB3C0DA +392D7A12005B1A07621A076112005C7F7FB0DFF3FCCFE4F396C6E87AB7E27CB8E27CB8E3 +7BB7E37CB8E27DB8E380BAE488BEE588BEE58DC1E792C3E895C5E89DCAEA9FCBEAA1CCEB +A0CCEB9ECAEA99C8E898C7E897C6E997C6E899C7E99ECBEAA1CCEBA4CEEBA7CFECA9D0EC +A5CEEBA1CCEA98C7E892C4E792C3E795C4E897C6E99CC9E99ECBE9A1CCEBA6CDEBA8CDEA +ABD0EBA8CAE796B4DA5664A93C46950C0A7002006807046C0A076F09066E09056D09066E +0A076E0D0A6E06036C3733818880A2C3B9BCFFFBD8FAF2D7F2E3C4EFD6A5EDD59FE8C884 +E4C176DFB65EDCB053DCAE51E8CD94EEDCB4EDD9AEEEDAB2EFDDB9F2E4C7F2E5C9EAD3A7 +E7CD9AE5CA93DEBE7BDBB972D6AF61D4AC5BDBBA78EAD7B3EAD9B5EBD9B5EBDABAEBDCBC +EDDFC2EEE0C5EEE2C8F0E5CEE4D0A7D8BC83D7BA80CFAE6CCCA862CAA55DC8A45AC5A053 +CBA966D8C191E1CEA8E4D4B4E4D5B7E7D9BEEADDC5DFCCA8D0B684D0B784CAAD75C6A86E +BC9954B1893AAF8637B0893DC0A266CFB98CDBCAAAD8C7A5DBCCADD5C4A0C9B385C4AB7A +C8B082C7B084C5AE80C2AB7CBCA370B3965D9F7B35987024B59A65D2C3A5D0C0A0D1C1A2 +D0C1A2D2C3A4D4C6AAD7CAB1C5B38EB49D6EB09867A2864D9D7E428A6720815C10805B11 +8967228A6925AD9566CBBC9FC8B89AC8B99BCABB9FCEC1A7D0C4ACD1C5ADD2C7B0D2C6AF +A893678F733A896C328062237C5C1C7B5A1B7C5E207858197757189F8A5EC6B99FC4B69C +C6B9A0C4B79BC5B99EAA997489703E63420560400064440473561D775D26765A22745A23 +745B257B632F867041B9AC91C5BAA4C0B69EB9AD93B0A284AA9C7DAC9D7F9B8A675E440E +583C035C4108614812674E1A6A521F664E1B5D450F4D32006D562BA79A7DA7997CA89B7F +AEA288ADA188ABA085AFA48BA6997E69552859431157400E533B08493001432A00442B00 +4931014B3301806F4AAEA58EABA189ABA28AAFA690B1A791B3A995B2A894ACA28CA69B85 +A29880A2987F8F82684E3A123F28004935084E3B0E4C390D513F1455421957451D8E8267 +ADA490B0A795ADA592ACA38FA8A08BA99F8BA59C87A9A08D8D81674635093E2B002C1701 +2D1906A09D99C9CFDDBFC3CFC2C7D3C1C6D2C2C7D3C3C8D4C2C7D3C3C8D4C3C8D5C4C9D5 +C4C9D4C5CAD5C6CBD6C6CBD7C7CCD7C8CDD7C9CED8CBCFD9CCD0D9CDD1DBCED2DCCFD3DC +D1D5DED2D6DED4D8E0D6D9E1D7DAE2D9DCE4DADDE4DDE0E6DFE2E8E0E3E9E3E5EBE4E6EC +E6E8EDE9EBEFEAECF0ECEEF1EDEFF2EFEFF3F0F1F4F1F2F5F4F5F7F5F6F8F5F6F8F6F7F8 +F7F8F9F9FAFBF9F9FAFAFAFBFBFBFCFBFBFCFCFCFDFDFDFEFDFDFEFEFEFDFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFCFCFD +FCFCFDFDFDFEFDFDFED7D6E7302D8507056D06046C0B086F0A076E09066E09066E0A076E +0B086F05026B02016806036C2F3087757DB5B1C0DEE2F6FED7EAF6D4E7F5D4E7F4D4E7F5 +D5E8F5D5E8F5D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D7EBF7CCDDEEB3C0DA392D7A12005B +1A07621A076113005C7D7FB0DDF2FCDAEAF5D0E5F4B3D5EE7BB7E37BB7E27CB8E37BB7E2 +7DB8E380BAE486BDE588BEE58DC0E691C3E794C5E89CC9E99FCAEAA1CCEBA0CCEB9ECAEA +99C8E998C7E998C6E997C6E998C7E99ECBEAA1CCEBA5CDEBA7CEEBA9D0ECA5CEEBA1CCEA +98C7E892C3E791C3E795C5E899C7E99CC8E99CC8E9A0CAE9ADD7F0B4DDF5839ECD2E348B +1A1A7B01006701006708046D0A086F09066E09066D09066E0A076E0A076E06046E07046C +493F7CE7D9C3FFF8D7FCF1D4F4E9D1F5EBD5F3E2BFEED5A1ECD39DE6C57FE2BE6EDEB55C +DCAF52DDB359EBD3A0EEDAB0EDD9AFEEDCB4F0DFBBF2E4C8F0E3C4E8D0A0E7CD9AE3C891 +DDBB76DAB66DD6AF5FD5AE5FDFC388ECDBB8EAD8B3EAD9B7EBDCBCECDDBFEDE0C4EEE1C6 +EFE2C9ECDEC3E0C99BD7BB80D6B87CCEAC67CAA55DC9A55DC7A259C49C50CFB276E2D0AC +E1CFABE4D4B5E6D6B9E8DBC0E9DDC4D7C196CEB481CDB37FC7A86FC3A365B7934CAE8639 +AE8538B28E45CFB98DD7C5A1D9C9A6D9CAA8DBCBACC8B182C5AC7BC6AD7FC8AF83C6B083 +C3AC7DC0A777B79A64AC8D4F9C7830A68646C7B48CD2C3A4D1C1A2D1C2A3D1C1A3D2C4A6 +D6C8AFD5C7ADB8A276AF9667AD94619C7F43947434845F16805A0F86611A8B6926947537 +C1B08DC9BB9DC7B899CABB9FCCBEA2D0C4AAD1C5ADD0C4ABD4CBB6C3B4969277418A6C32 +8466297A5C1C7A5A1A7B5C1D765716795A1B9F8A5EBAAA8BC6BAA0C5B99FC5B89FC2B59A +C2B69B856B385D390062400168490A6E5014775D24785D2672581F765D27755B25937E55 +AE9F80C5BBA4BFB49DBEB39BB3A589A89878AB9D7E9888636F5729553800654C15644B15 +674F1868511D634B175C430A543A096D562D998A69ACA085A99D81AA9D82ADA187ADA288 +AFA38BB4A8917B67405B44145E48194E3504472D00452B00493001452C00574113746239 +ACA28BABA18AABA189AEA58EB0A893B1A893B0A792AFA590A499819C90769F947B87795D +5944203F29004C37084B370B4C380C4D390D544219503C13807354B6AF9DB1A997ADA390 +ACA390A69D87A49A84A39983A9A08DACA49166563449360A44320D2F1B005D4F3ACED4E0 +BEC3CFC2C7D3C2C7D3C1C6D2C2C7D3C3C8D4C2C7D3C3C8D4C3C8D5C4C9D5C4C9D4C5CAD5 +C6CBD6C6CBD6C7CCD7C9CED7C9CED8CBCFDACBCFD9CDD1DBCED2DCCFD3DDD2D6DED3D7DE +D4D8E0D7DAE2D8DBE3DADDE4DBDEE5DDE0E7E0E3E8E1E4E9E4E6EBE5E7ECE8EAEEE9EBEF +EAECF0EDEEF2EEEFF3EFF0F3F1F2F5F2F3F5F4F5F6F5F6F8F6F7F9F7F8F9F8F9FAF9FAFB +F9F9FAFAFAFBFCFCFDFBFBFCFCFCFDFCFCFEFDFDFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFFFEFEFEFFFFFEFEFEFEFBFBFD +FFFFFFF4F4F9A4A3C97876AF15127500006602006905026C07046D09066E09066E0A076E +0B086F06036C1311742F308751569EA5B3D5C9DBEDDAEEF9DEF2FBDCEFFAD8ECF7D7EAF6 +D6E9F6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D7EBF7CCDDEEB3C0DA392D7A12005B1A07621A0761 +12005C7E7FB0DDF2FCD4E7F4D5E8F5D0E5F493C4E874B3E17BB7E27CB8E27EB9E380BAE4 +85BDE586BDE58CC0E691C3E794C5E89DC9EA9FCBEAA1CCEBA0CCEB9ECAEA99C8E898C7E8 +97C6E997C6E898C7E99ECAEAA1CCEBA5CEEBA8CFECA9D0ECA5CEEBA1CCEA98C6E991C3E7 +91C3E798C8EA9DCCECA1D0EDA4D2EFA5D1EE85A3D07188BF3C45951110740B097009076E +0B086F09066E08056D09066E07046D05026D02016D00006D251E6F796572A8948CF7E9CC +F4E9D0F4E9D0F6EBD2F7ECD6F2E1BCEDD4A0ECD29BE6C37DE2BD6EDEB55CDCAF51DEB660 +EBD5A4EDDAAEEDDAB0EEDCB5F0DFBDF1E4C8F0E1C1E7CE9CE7CD9AE2C68DDBB974D9B46B +D5AE5DD6B266E1C690EBDAB9EAD7B3EBDAB8ECDCBDECDDC0EDE0C5EEE2C8EEE2C9E9D9B7 +DEC695D7BB7FD5B77ACDAB66CAA55CC9A55CC7A157C39C4FD3B881E3D2B0E2D0ACE4D5B6 +E6D7BBE8DBC0E6D9BCD5BD90CEB481CDB27DC5A669C09F5FB69148AF873BAD8637B69450 +D5C19BD8C7A4D9C8A6DBCBABD7C6A5C4AB7AC5AC7CC7AE81C8B083C5AF81C3AB7DBEA574 +B3975EA887479E7B35B79E6BCAB894D2C2A3D1C1A2D1C1A3D1C2A3D4C5A9D4C7ACCEBFA0 +B49C6EB09867AA8F5B99793B906E2B825E14825D1386621B8E6D2C9F824BC6B697C8B99B +C8B99ACBBDA1CDBFA4D1C5ACD0C4ADD1C6AECEC2A9B6A47F8D713884662A7F6122795A19 +7A5A1B7A5C1D70500B83672DB3A27FBDAE91C5B99FC5B89EC5B8A0BFB296B4A48272551B +5D3B006242026C4F1271551B765C23765B2372581F745B24785E29A69674BDB197C2B7A0 +BDB19ABBAF96AFA183AE9F81A89979755E325E43115D4108644C15654C1568501B69511C +5D430E4D30005F471991805EA09273AA9E83AB9F84AA9D82ACA086B1A68EA89C82968767 +6B55295B44125A4210493001432A00472D00452D00432B0075633C958769ABA089ACA28B +ADA38CAFA68FB1A792B0A792AEA590ABA28CA3977EA499808F82675C49244C370C473102 +4A35064B370B4E3A0E4D390D58461E6A5A379A9077B2AA97ADA490ABA28FA9A08CA29883 +A29882A99F8AA59B8793876F5847214B390C331E005C4D409D988FC4C9D6C1C5D1C2C7D3 +C2C7D3C1C6D2C2C7D3C3C8D4C2C7D3C3C8D4C3C8D5C4C9D5C4C9D4C5CAD5C6CBD6C7CCD7 +C7CCD7C8CDD7C9CED8CBCFDACCD0DACDD1DBCED2DDD0D4DDD2D6DFD2D6DED4D8E0D7DAE2 +D8DBE3DADDE4DBDEE5DEE1E7E1E4E9E1E4E9E4E6EBE5E7ECE7E9EEEAECF0EAEDF0EDEEF2 +EEEFF3EFF0F4F1F2F5F2F3F6F4F5F7F5F6F9F6F7F9F7F8F9F8F9FAF9FAFBFAFAFBFAFAFB +FBFBFCFCFCFDFDFDFEFDFDFDFDFDFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFEFEFEFEFEFE +FEFEFEFFFFFFCFCFE26F6DAA434090131074120F730A076E09066E09066E09066E09066E +07046C01006800006512107423227F585DA28994C2ACBBDACBDCEECDDFF0D2E5F3D4E7F4 +D5E7F5D5E8F5D5E8F5D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D5E8F5D7EBF7CCDDEEB3C0DA392D7A12005B1A07621A076112005C7E7FB0 +DEF2FCD4E6F4D6E9F6DBECF7D0E6F48EC1E67CB8E27CB8E37FBAE382BBE485BCE584BDE4 +8ABFE691C3E794C5E89ECBEAA0CCEBA0CBEAA0CCEB9ECAEA9AC8E999C7E997C6E998C6E8 +99C7E99ECBEAA1CBEBA5CEECA9D0EDA9D0ECA4CDEBA0CBEA97C5E88FC0E68DBFE58DB9E1 +90BAE17899CB637CB83A45960F0D7207056C00006707036C08056D09066E09066E09066E +0A076E0B076E120E6E130F6E514370A68C73C9AA76F7D27DF8DDA0F7EBD0F6EAD0F6EBD1 +F6EBD2F7ECD4F0DDB3ECD39DEACF95E4C176E1BA69DEB45DDBAF4FE1BE72EDD8AEECD7AB +EEDAB2EFDDB7F0E1C1F0E0C0ECD8B0E5CB95E6CC97E0C285D9B46AD7B063D4AC5BDEC186 +E6D0A4EAD9B7EAD8B4EBDBBAEDDDBEEDDFC2EDE0C7EFE2CAECE0C3DFC999D9C08AD5B77B +D2B272CBA75FC8A359C8A359C5A057C6A259DDC99FE3D2B1E3D2B1E5D7BBE8DCC3E4D5B7 +DAC69ED2B989CDB17CC9AD74BE9D5CB9964FB28B40AF883CAE883BC7AC78DBCBAAD9C8A5 +DAC9A8DCCDAECDB88DC2A876C5AD7EC7B083C7B083C2AA7CBFA676B79C67AA8B4C9E7B36 +B0935AD2C2A3CFBF9ED1C2A3D0C1A2D1C1A3D1C3A5D6C9AFC8B694B9A276AE9563AD9360 +A0844B8C6925845E16825D1386621B886520A88F5DBCA984CABB9EC8BA9BCABC9ECCBFA4 +CEC1A8D0C5ADD3C7B0CDC0A7AA956A9A804D816223755411755511745411745411785919 +7D5F22A8956CC4B79CC3B59AC5B99EC4B79DC3B79D97815474571C5E3E01603F006A4C0F +745920765B23755B2372571E7359218671409C8962C5BAA4C6BCA6BEB29AB6A98FB2A488 +A89979A0906E7A64384B2C00533600634A11674F19664E18664E196047105439095E451B +91805FADA185A89B7EAB9F84ACA085AB9F85ACA086AA9F847A663E5E471858410E4B3301 +483000462D00442B00482F00594414705D35A89D84ADA38BACA18AB1A791B0A791AFA690 +AEA38EABA18BA69C85A4998295896E7C6D4F57431C3F27004833054E3A0D4E390C513D12 +55421856441B887B5EAFA693B0A895AAA18CA99E8AA39984A096809D947DA59C87A9A08C +74654552401847340A311C013F2C17B4B5B7CED4E2BFC4CFC2C7D3C1C6D2C2C7D3C2C7D3 +C2C7D3C3C8D4C3C8D4C3C8D4C4C9D5C4C9D5C5CAD5C5CAD5C7CCD7C8CDD8C8CDD8C9CED8 +CACED9CCD0DACDD1DBCED2DCCFD3DDD0D4DDD3D7DFD3D8E0D6D9E1D8DBE3D9DCE3DBDEE5 +DDE0E6DEE1E7E1E4E9E2E5EAE5E7ECE6E8EDE8EAEEEAECF0EBEDF1EDEFF2EEEFF3F0F1F4 +F2F3F5F3F4F6F5F6F8F6F7F9F6F7F9F8F9FAF8F9FAFAFAFBFBFBFCFBFBFCFBFBFCFCFCFD +FDFDFEFEFEFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFBFBFDFCFCFD +FEFEFEFFFFFFE8E8F15F5DA125247D00006507046D07046C09066E08056D09066E0A086F +0B096F07036C0200690200690000671C1B7B8792C2BACAE4DAEEF9DFF3FCDAEEF9D7EAF7 +D7EAF6D6E9F6D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D5E8F5D7EBF7CCDDEEB3C0DA392D7A12005B1A07621A076112005C7E7FB0DDF2FCD4E7F4 +D5E8F5D3E7F5DDECF7BDDBF094C5E876B5E182BBE483BBE485BCE584BDE489BFE690C2E7 +94C4E89FCBEAA0CCEBA0CBEAA0CCEB9ECAEA9BC9EA9AC7E998C6E899C7E999C7E89ECBEA +A1CCEBA5CEECA8D0EDA9D0EDA5CFECA3CFEC9ACBEC96CBED92C7EB6281BD4455A1111175 +02006803006906036C09066E0B086F09066E09066E09066D08056D07046D03006B00006B +2B236E6E5B72EBC676F3CD75EDC979E7C67FECD5A2F7EAD2F7EAD0F6EAD1F6EAD2F7EBD3 +F0DBADEDD29AEACE92E3BF72E0B965DDB45CD9AE4EE3C37FEED9B1ECD6AAEEDBB3EEDCB7 +F1E2C3EEDCB8E9D2A5E4CA93E5CA94DEBF7FD7B266D6AF5FD3AC5BE3CA99E9D4ACEBD9B5 +EAD9B5EBDCBCECDDBFEDDFC3EEE1C8EFE4CBEBDBBDDBC28DD9BE85D3B477D0B06EC9A45B +C8A356C7A157C6A35BCDAD6CE1CEABE1D1AFE3D3B3E7D9BEEADEC6DFCEACD4BC8ED2B988 +CBAF79C7A970BB9852B69147B0883BAD8738B18D43D0BA90DACAA9D8C7A3DBCDAEDACBAC +C8AE80C4AB7CC6AE80C6AF82C5AE81C1A878BDA471B3975EA3833F9C7830C1AB7FD3C4A4 +D0BFA0D1C2A3D0C1A2D1C1A4D3C5A9D6C9AFBCA67CAF9563AD9460A78C579B7C3F856019 +7F580E855F1787621B8B6A28BDA984C9B99BC7B899C9BB9ECABDA0CDC1A7CEC2A9D0C4AC +D6CBB6C3B495977C4891763E7B5C1A6E4A04724F0B714F0B6D4B057858189E895CBAAA8A +C2B499C3B69BC5B89EC6BAA0BDAE9072551D59370063430365460372561A775B23765B23 +755B23735821745B23A3926EBDB097C6BBA5C2B7A0BCAF97AFA083AD9E80A99B7A735C2F +593C0E503200583B03634A1368501C674E19644C155438025B4114988766A59779A6997C +A89B80ACA085AA9E82B1A68EA79A7F8C7B585E4616604816533C09412800422900493000 +482E00432C00857651A3977DAA9F87A89D84AEA48DB3AA95B3A994AFA58FAAA089A69B83 +9F947BA79D85796A4D3A2300452F014E390A4E390B503D1054411657431A4F3A0F6F5F3B +B1A896B0A795AAA18DA69C86A399839E937D9A9078A29983A89F8B91866E524019503E14 +352105291300685B49D0D7E4BCC1CCC2C7D3C1C6D2C1C6D2C1C6D2C3C8D4C3C8D4C2C7D3 +C3C8D4C4C9D5C5CAD4C5CAD5C6CBD6C5CAD5C7CCD7C7CCD8C8CDD8CACFD8CACED9CCD0DA +CCD0DACED2DCD0D4DCD0D4DDD3D7DFD3D8E0D6DAE2D8DBE3D9DCE4DCDFE6DDE0E7DFE2E8 +E2E4EAE3E5EBE6E8EDE7E9EEE8EAEEEBEDF0ECEEF1EEEFF3EFF0F3F1F2F5F2F3F6F3F4F6 +F5F6F7F6F7F8F7F8F9F9FAFBF8F9FAFAFAFBFBFAFBFBFBFCFBFBFCFCFCFDFDFDFEFEFEFD +FDFDFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFEFEFEFDFDFDFEFEFE +F6F6FAD9D8E8BDBCD8504D97110E73120F730C09700A076E09066E08056D09066E09066E +0A076E0A076F09066E100D72292A8334358A6971AE909BC8B4C3DFD0E2F2CEE0F1D1E4F3 +D2E5F3D4E6F4D5E8F5D5E8F5D5E8F5D5E8F5D5E8F5D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D7EBF7 +CCDDEEB3C0DA392D7A12005B1A07621A076112005C7E7FB0DDF2FCD4E7F4D6E9F6D5E8F5 +D6E9F6D2E6F5C2DEF283BCE47CB8E384BCE487BEE585BDE48ABFE691C3E794C5E89ECBEA +A0CCEBA0CBEAA0CCEB9ECAEA9BC9E99AC8E998C7E998C6E899C7E99DCAEA9FCAEAA2CBEA +A4CCEAA5CBE99FC6E69BC5E6789DCE5F7FBB3F53A01D2280181B7B0C0B7109066E0A076F +09066E09066E09066E09066E09066E0C086F0D0A6F130F70332E7C615785BA9D78CBAB74 +E6C377E7C475E7C579EACA83F0D9A8F7EBD2F6EAD0F6EAD1F7EBD3F6EAD1EFD8A9EBD199 +E8CB8EE2BD70DFB863DCB259D9AD50E5C88AEDD9B0ECD6AAEDDBB4EEDCB7F0E2C3ECD8B0 +E7CF9CE4CA93E4C890DEBD7BD7B164D5AD5CD5B063E6D1A5E9D7B0EAD8B5EAD9B6EBDCBC +ECDEC1EDE0C5EEE1C8F0E4CDE7D6B3DABF87D8BB82D1B374CFAD6AC8A35AC7A359C5A055 +C9A864D5BA86E2D0ADE2D2B1E4D5B6E8DBC1E9DDC6DBC7A1D1B988D0B785C8AC73C4A66A +B8944DB38E43AF8639AF8A3FB99957D5C29CD9C8A7D8C8A6DBCBACD4C29DC4AB79C6AD7F +C6AE80C5AF81C4AD7FBEA573B89E68AF91569D7A33A48342CAB792D1C0A1D0C0A1D1C1A2 +D0C0A1D1C2A6D5C7AED0C1A2B49D6EB09664A98E58A3874F957636815C127E580D86631C +86631C9A7D44C4B494C8B89AC9BA9CCBBDA0CCBEA3CEC2A8CFC3AAD0C4ACCDC0A7B3A078 +90743D8C6F36775714704D0771500B704E0A6A4801886D34B7A684BDAE90C3B69CC4B79D +C3B69CC3B79EA18E656645065F3D006445066B4D0F765A20765A22755A21775D26745A22 +867040B8AB8FC2B79FC2B79FC0B59CB7AA90AB9C7DAE9E80907D575A3E0B573B05553900 +5A3E05654C16674F1A624A145A40085439047E6A44A59779A5977AA79A7EA99D81ACA085 +ACA186AEA38983724C6752245A431157400D4D3504432900442A00493001462E00655227 +A1957AA89C84ABA189ADA38CB0A690B2A893B2A893ACA28CA49981A0947B9F937992856A +56421B442E004B37094E3B0D503D1055421856441B5D4B246F5F3C93876DAFA794AAA18C +A79D88A096809E947E9D937C9D927BA2988380735667583555431C4F3D15291400776C60 +ADABA7C3C9D6C1C6D1C2C7D2C2C7D3C1C6D2C2C7D3C3C8D4C3C8D4C2C7D3C3C8D4C4C9D5 +C4C9D4C5CAD5C5CAD5C6CBD6C7CCD7C8CDD7C8CDD8CACFD8CACFD9CDD0DBCDD1DBCFD3DC +D0D4DDD1D5DED3D7DFD4D8E0D6DAE2D9DCE3DADDE4DCDFE6DDE0E7E0E3E9E2E5EAE3E5EB +E6E8EDE7E9EEE9EBEFEBEDF1ECEEF1EEEFF3EFF0F4F1F2F5F3F4F6F4F5F7F5F6F8F6F7F8 +F7F8F9F8FAFBF9F9FAFAFAFBFAFAFBFBFBFCFCFCFDFCFCFDFDFDFEFDFDFDFEFEFEFEFEFE +FEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFE +FFFFFFF8F8FAB3B2D26360A200006401006907056D0A076F0A076F0A076E09066E09066E +09066E07046D01006900006702016905016B1817787077B297A3CCD1E3F2E6FBFFDDF1FA +D7EAF7D6E9F6D5E7F5D4E7F4D4E7F4D4E7F4D4E7F5D5E8F5D5E8F5D5E8F5D6E9F6D5E8F5 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D7EBF7CCDDEEB3C0DA +392D7A12005B1A07621A076112005C7E7FB0DDF2FCD4E7F4D5E9F6D6E9F6D5E8F5D9EAF6 +E0EEF89DCAEA75B4E185BCE48ABFE688BEE58BC0E691C3E894C5E89ECAEAA0CBEBA0CBEA +9FCBEA9ECAE99AC7E999C7E998C5E896C5E898C6E89FCCEBA2CFEDA9D5F0B3DEF59FC3E5 +5A6DAE35409311117405016B03006903006905016A08056D09066E09066E0A076E0A076E +0A076E09066E07046D00006806046B786D8EF0DFBAF6E0AEF5CF7AF0CB75E9C679E8C476 +E9C679ECCD8AF2DCADF6EBD1F6EAD0F6EAD1F7ECD4F6E9CEEDD6A3EACF96E7C989E0BA6A +DEB55EDBAF55DAAE54E8CD97EDD9AFECD7ACEDDBB4EDDDB8F0E2C2E8D3A4E4CA92E4C890 +E2C58BDBBA75D5B061D2AB58D8B56FEAD7B3EAD8B4E9D8B4EADAB7ECDCBDECDFC3EDE0C6 +EEE2CAF0E4CEE2CEA4D8BA83D6B87DCFAF6ECCAA65C7A258C7A25AC49E52CEB074E0CCA7 +E2D1AFE3D4B2E6D7BAE9DDC3E7DAC0D5BE92D0B787CEB581C5A669C09E5EB48F44B18A3D +AD8536B69452C5AA76DACAA7D8C7A4DACAAAD6C5A3CAB487C1A773C7AF82C6AE80C4AE81 +C2AB7DBBA16EB4975FAA8B4D977127B39762D3C4A5D0C09FD0C1A2D1C1A2D0C0A1D3C5A9 +D8CBB3C3B08BAC9360AE9564A3874F9C7E428E6B277E580C7F5B0F87651F87651FB39C71 +CABCA0C6B798CABCA0CCBEA3CEC0A5CEC2A9D0C4ACCFC3ABB1A0799C84528B6D3185662A +72500B72500C72500D6E4C076B4904A7946BC2B699C1B498C5B99FC5B89FC0B297B8AA8B +795D255C3A005F3F00694B0C74581F785C2572561C72571E775D26775C25A89875C8BFA9 +C3B9A1BEB39ABCB097AE9F82AD9F81AB9C7C6449185235005B41065E440A60470E674E19 +654D185D440C452800675026A89C7EA79A7DA89B7EAA9D81AA9D81ADA287B5AB94948765 +5A421057400B513A044C3300482D00472D00472E01452D004B35069B8D70B0A590AAA089 +B0A690B2A894B2A894B0A691AFA590A79C859D9177A0957B8474595C49253F2800503B0B +503C0E523E1056431859471E503E13746543AEA692B0A795AAA18CA69C87A197819C917A +998E769E947CACA28F90846B4E3D1453421A53421B3724033A2517BBBDBECBD2E0BFC4D0 +C2C7D3C1C6D3C2C7D3C1C6D2C2C7D3C3C8D4C3C8D4C2C7D3C3C8D4C4C9D5C4C9D4C5CAD5 +C5CAD5C6CBD6C8CDD8C8CDD7C9CED8CACEDACBCFD9CDD1DBCDD1DCCFD3DDD0D4DDD2D6DE +D4D8E0D6DAE2D7DAE2DADDE4DBDEE5DDE0E7DEE1E7E0E3E9E3E5EBE4E6ECE7E9EDE8EAEE +E9EBF0ECEEF1EDEEF2EFF0F3F0F1F4F2F3F5F4F5F6F4F5F7F6F7F8F6F7F8F7F8F9F8FAFB +F9F9FAFBFAFBFAFAFBFBFBFCFDFDFEFDFDFEFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFCFCFDFCFCFDFCFCFD +E7E7F1CFCEE27372AD38368A120F7300006700006802016A07036C08056D09066E09066E +0A076F0B086F0A076E08056D0C0A70292A8336388C5E64A67881B79EABD1CCDEEFD4E6F4 +DBEFF9DEF2FBDEF2FBDDF0FADCEFFAD9ECF8D6E9F6D6E9F6D5E8F5D6E9F6D6E9F6D6E9F6 +D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D6E9F6D5E8F5D7EBF7CCDDEEB3C0DA392D7A12005B +1A07621A076112005C7E7FB0DDF2FCD4E7F4D6E9F6D6E9F6D5E8F5D6E9F5DCECF7A4CDEB +76B4E183BBE487BEE586BEE58ABFE690C2E794C5E89DC9EA9FCBEAA1CCEBA1CEECA1CEEC +9FCFED9FCFEE9ECEEE9CCDED9DCDED96C0E48DB3DB728EC35C70B045529D212581161779 +0B096F08056D0A076F0A076F09076E09066E09066E08056D03016B00006A01006A04016C +171373675F8D897E96CEBDA8F3E2BCF1DBACE8C478E7C475E8C678E9C476E8C579ECCE8E +F2DDAFF6EBD1F6EAD1F6EAD1F7ECD5F5E8CBECD4A0EACE95E7C887E0B968DEB45CDBB055 +DBB25CE9D09CEDD8AEEDD7ACEDDBB4EEDDB8F0E1C1E8D1A0E4C991E3C88FE1C488DAB972 +D5AF61D3AB58DBBB7AEAD8B4EAD7B3E9D8B4EADAB7ECDDBEEDDFC4EDE0C6EEE3CAEFE3CB +DFC89BD8BC83D5B77BCEAD6BCCA862C6A257C6A158C39E51D3B882E3D1AFE2D1AFE4D4B4 +E7D8BDE8DBC1E3D5B7D2BB8CD0B887CCB27DC2A263BD9B57B38C41B0873AAC8435BFA268 +CDB78BD9C8A5D8C7A6DBCBACCFBA92C5AC7CC1A876C6AE81C6AE80C3AE80C2AB7BB99E6A +B09258A68645A38342BCA576D2C3A3D0C1A0D1C2A2D0C1A2D1C1A3D4C6AAD4C7ACBCA57A +AC9360AC9360A08449997A3C8966207F5A0F835F15896823917132BDAA85C9BA9CC7B899 +CBBDA1CDC0A6CEC1A7CEC2A7D2C6AEC9BB9FA18A5A957A4586672B7F6021714E0A72500C +714F0B6642007A5C1FB6A684BFB294C2B599C4B79EC8BBA3B4A483937C4C6C4D11634403 +684A0A6E5115765920775C2471561D71561D7C632F897343B8AB90C4BAA3C1B69EBBAF96 +B7A98FAFA082AA9B7C907E58563A055C41065F460D614810644B14654D185F460E553A06 +5E451785714BA99C7FA6997CA99C81A89C81AB9F85AFA389A89B8078663D58410E563F0C +4C3201492F00482D00452C014026005C461B7A6943A3987EADA28BADA28BB2A792B2A994 +B1A792ADA38DAA9F88A49981A69D84918369543E1F49330B4934044F3C0D503D0F554217 +5542175B49206B5B3792876CB0A793ABA28DA69D88A399849E947D9A90799C927B9D937D +988C756A5B38503E1659491E43310F240D006C5E4FC7CCD5BFC4D1C1C6D2C1C6D2C2C7D3 +C2C7D3C1C6D2C2C7D3C3C8D4C2C7D3C3C8D4C3C8D4C4C9D5C4C9D4C5CAD5C6CBD6C6CBD6 +C8CDD7C8CDD7C9CED8CBCEDACBCFD9CDD1DBCED2DCD0D4DDD1D5DED2D6DED4D8E0D6DAE2 +D7DAE2DADDE4DBDEE5DDE0E7DEE1E7E1E4E9E4E6EBE5E7ECE7E9EDE8EAEEEAECF0ECEEF1 +EDEFF2EFF0F3F0F1F4F2F3F5F3F4F6F4F5F7F6F7F8F7F8F9F8F9FAF8FAFBF9F9FAFBFBFC +FBFBFCFCFCFDFDFDFEFDFDFDFDFDFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFFFFFF +FCFCFDFAFAFCC9C9DF8685B75A589D201D7B1311740C09700A076E0A076E09066E09066E +09066E09066E08046D0200690000670000670200690B096F25258135378B6269A98E9AC6 +9DAAD0B7C6E1BCCCE4C7D9ECD0E3F2D2E5F3D4E7F5D4E7F4D4E7F5D4E7F5D4E7F5D5E7F5 +D5E8F5D5E8F5D5E8F5D5E8F5D5E8F5D7EBF7CCDDEEB3C0DA392D7A12005B1A07621A0761 +12005C7E7FB0DDF2FCD4E7F4D5E8F5D5E8F5D5E8F5D4E8F5DCECF7B5D7EE76B4E17CB7E2 +83BBE382BBE387BDE48EC0E592C2E79BC7E89EC9E99DC7E898C1E493BBE087AFD982A8D5 +6887C0536BAE4354A01E22801111740A076F03006900006703006906016B08056D09066E +09066E09066E09066E0A076E0A076E0C096F211D772A267B625C92B8ADB2D4C7B9FCE9BC +FEEBB9FBE7B5F4E2BCF1DAA9E9C577E8C575E8C475E8C273E8C375EDD298F2DFB6F6EBD2 +F6EAD1F6EAD1F7ECD5F3E5C4EBD19AE9CC91E6C581DFB662DBAF54DBB15AE2BF78EBD4A4 +ECD7ACECD7ACEEDBB4EEDEBCEEDEBAE6CC9AE5CA96E1C78FDFC285D9B56DD3AC5CD3AB5A +E2C895EBD9B6E9D7B1E9D9B6EADAB9ECDDC0EEE0C5EDE0C6EFE4CEEBDCBEDABF8AD6BA7F +D2B374CBA762C9A55CC6A157C4A055C7A45CDDC9A0E4D4B3E3D4B3E6D6B9E9DCC3E1D1B2 +D7C298D0B785CFB682C8AB72BB9955B69249B0883BAD8334B28E46D2BE95D9C8A6D7C6A4 +DCCCADD6C5A3C0A672BFA46FC3AC7CC4AC7FC4AD80C1AB7CBFA777B3965EA58442A58443 +C3AD83CCBA97D1C1A2D0C1A2D1C1A3D1C1A3D3C5AACFBFA1BFAA81B19866A98E59A58952 +9676378D6C27815C1284601887641E9E824AB49F75C7B899C9B99CCABC9FCDC0A5CFC3A9 +CEC2A8CFC3A9D0C4ABAA966B8B6D3386672C78581673520D6F4C076F4E0A6F4E0A81652A +A59268C4B89DC1B398C3B69BC4B69CC1B398876E3A603E00603F016D4F1375581E745920 +765B22765C24785F297A612CA2916CBCAF95C5BAA3BEB299BBAF95AFA183AD9D7FA49373 +705829593E0C573C04654D15664D18674E19664E185E450F513501685025A19274A7997B +A89B7EAA9E83AB9F84A99D82AEA2898E7E5B6853245C4411503804493100452B00462C00 +472D004E37095D491C9C8F73AEA48DADA38CB0A690B1A892B1A791B0A690ACA28CA59A82 +A3987F978A6F7464435340193A2300432E02503B0C55431657441958461C5A481E877A5C +AEA591ADA490A9A08AA59B85A096809F957E9D927B9D937D9F96806D5E3C48350B4A370D +48360E402D063F2B115A4A36C3C5C9C4CAD8C1C5D1C2C7D3C1C6D2C2C7D3C1C6D2C2C7D3 +C3C8D4C2C7D3C3C8D4C4C9D5C4C9D5C4C9D5C5CAD5C5CAD5C7CCD7C7CCD7C8CDD8C9CED8 +CACED9CBCFD9CCD0DACED2DCCFD3DDD1D5DED2D6DFD3D7DFD5D9E1D7DAE2D8DBE3DBDEE5 +DCDFE6DEE1E8E0E3E9E2E4EAE4E6EBE5E7ECE8EAEEE9EBEFEBEDF1EDEEF2EEEFF3F0F1F4 +F1F2F5F3F4F6F4F5F7F5F6F8F7F8F9F8F9FAF8F9FAF9FAFBFAFAFBFBFBFCFCFCFDFCFCFD +FCFCFEFDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFFFFFFFFFEFEFEFDFDFEFCFCFDFDFDFDFFFFFF +FEFEFEFFFFFFF8F9FB807EB427257F07076C00006701006905016B06036C08056D09066E +09066E0A076F0B086F0B086F0A076E07046D04006A0200690000680000670F0D71454995 +5D63A59EABD1CCDFF0D7EBF7DFF3FCDDF1FBDDF1FADCF0FADCF0FADBEEF9DAEEF9D9ECF8 +D8ECF7D8EBF7D6E9F6D8ECF8CDDEEFB4C0DA392D7A12005B1A07621A076112005C7E7FB0 +DEF2FCD4E7F4D6E9F6D6E9F6D6E9F6D5E9F6DEEEF8C2DFF279B8E47BB9E488C1E788C1E8 +8AC4E893C8EA98CAECA2D1EEA6D4F09EC8E983A5D36E8AC13F4F9C2E378E06046C010067 +03006905016A06026C08056D0A076E0A086F0A076F09066E09066E09066D08056D05026C +03016C01006B00006A04036C706997AFA5B0F7ECCFFFF2CEFBECC7F4E1B8F2DEB4F1DCB2 +F4E3BBF1D9A6E9C475E9C474E8C373E6C171E7C273EED59CF3E1BAF7EBD3F6EAD1F6EAD1 +F7EDD6F3E2C0EAD097E7CB8EE4C37DDDB45FD9AC50DCB35EE5C788EBD4A5ECD7ABEDD8AD +EEDBB5F0DFBFEDDBB5E6CB98E7CC9BE2C78EDFC284D9B56DD2A957D3AB5DE5CEA1EBD8B4 +E9D6B0EAD9B7EBDAB9ECDEBFEDE1C5EDE1C6F0E4CEE8D6B5D8BD85D5B87DD0B170C8A65D +C7A259C5A057C29E52CAA967E1D0ABE2D3B0E4D5B7E6D7BBE9DDC5DCCAA5D1B988D0B786 +CFB47FC5A76CB99650B48F45B0873BAC8232B99755D8C6A3D8C8A4D7C7A4DDCEB1D1BD96 +BEA36CC0A774C4AD7EC4AC7EC3AC7EBFA878BCA473AF91559C7831AC8D53CEBC9BCEBD9C +D0C0A0D1C2A3D1C1A2D1C3A5D6C9AFC9B896B19765B19766A68A53A1824992713088641F +805A0E86621C896622B09B6EC8B89BC7B697CABB9FCBBDA2CEC0A7CEC3A9CEC1A7D3C8B1 +CBBEA3987E4B85682B7F602072500A704D076E4C076A4903704F0DA8946BB9AA89C3B79B +C3B89BC3B79BC7BBA3B5A5846D4D105E3D0062420270521674571E745820775B23765C24 +7A612C856F3EBCB095C9BEAAC0B59DBBAE94B6A88CAA9B7CB0A2858E7B544E3000533500 +634A1167501C69501D674E19634A13553B0656390A8D7B57AEA185A5987AA79B7FAB9F84 +AB9F85B1A58CA99D8269542757410E59420D4A3100452B00452C00492F0140270066532B +8E805FADA38CA89E86AEA48EB3A892B2A993AFA690AEA48EA79C85A2977EA99F87817154 +3A2100412B004B37064B3607503C0F58451B5A471D513F12695933ABA28EAFA693A79E88 +A49A84A298829F957F9E947D9F957FA49C87998F7849370C453106503F143722041F0800 +685944B4AFA3C3C8D4C0C5D1C2C7D3C1C6D2C2C7D3C2C7D3C1C6D2C2C7D3C3C8D4C2C7D3 +C3C8D4C4C9D5C3C8D4C4C9D5C6CBD6C6CBD6C6CBD6C7CCD7C9CED8CACFD9CACFD9CBCFD9 +CCD0DACED2DCD0D4DCD1D5DED3D7DED3D8E0D6DAE2D7D9E1D9DCE4DCDFE6DDE0E7DEE1E7 +E0E3E9E2E5EAE5E7ECE6E8EDE8EAEEE9EBEFECEEF1EDEEF2EEEFF3F0F1F4F1F2F5F3F4F6 +F4F5F7F5F6F8F6F7F9F7F8F9F8F9FAF9F9FAFAFAFBFBFBFCFBFBFCFCFCFDFCFCFEFDFDFD +FEFEFDFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFEFEFEFDFDFEFCFCFD +F9F9FCE5E5EFDADAE99F9EC66B6AA83D3B8D1714761412750E0B710B086F0A076F09066E +09066E09066E09066E09066E09076E0A076E0A086F0B086F0E0B7116147619187824237F +33358A444795636AAA6F78B2949FCAA6B4D6B1C0DDC1D2E8C2D3E9C6D8EBC9DAEDCADCEE +CDE0F0D0E3F2C6D7EAAFBBD8382C7A12005B1A07621A076113005C7C7DAFDAEFFAD0E3F2 +D1E4F3D0E3F2CFE2F1CDDFF0D1E1F1BBD3EB74ABDA70A8D97DADDA7BABD86D98CD6689C3 +617FBC5064A9495AA32F388D1E227F1B1E7D1414771111750B09700A076F0A076F09066E +09066E09066E09066E09066E09066E09066E0A076E0B086E0E0B6F1915731B1773484184 +6D6592A9A0ABE2D6C4E7DBC7F4E7CDF5E8C9F5E6C4F4E1B8F3DFB4F3DEAFF4E2BCF0D7A3 +E8C374E8C474E7C271E6C06EE7C272EFD8A5F3E2BEF6EAD1F6EAD1F6EAD1F6EBD3F1DFB9 +E9CD93E7CA8BE3C179DDB25CD8AB4EDEB767E9D09AEBD4A6EBD7ABECD8ADEEDCB8F0E0C1 +EBD7AFE5CB96E5CC99E0C58ADEBF80D8B36AD1A856D5B166E7D2AAE9D6B1E8D6B0E9D9B7 +EADABAEDDEC1EDE0C5EEE1C7EDDFC5E4D0A9D6B981D2B579CEAD6CC7A35AC7A258C5A057 +C39D51D0B47AE3D3B1E2D2B0E5D6B8E7DABEE8DAC1D7C197D0B786CEB582CAB07AC2A265 +B59047B18B3FAD8638AC8334C4A973D9C8A7D7C5A1D9C8A8D6C3A1C9B185BFA470C2A979 +C4AC7EC3AD7EC2AB7CBDA574B99F6CAB8B4DA17F3CB99F6DCEBE9CCEBD9BD0C0A1D1C1A2 +D1C1A2D2C4A7D3C6AABCA77CAF9461AE9462A1854C9B7D408B6823815D137F590F8B6A27 +987A3EBFAE89C7B89AC8B89ACBBDA0CCBFA3CFC3A9D0C4ABD0C4AAC9BCA1B6A47F8C6F35 +8061217959166F4D066E4B056E4C086C4A058A6F39BAAA8ABEB091C3B79BC4B79CC0B396 +BAAB8C927C4C63420062400065460570541972551C745820775C24765C24917C51A79775 +C2B79EC3B8A0BDB198B2A588AEA082A99A7AA293716B5122593C0360440C674E186B5220 +69501D634A125A40086148178E7B589E9070A79A7CA6987BA89C80AB9F84AA9D82A6987C +84744D5C451359410E513805462C00442A00482F014931005B461897896BA69B81AAA088 +ADA28CB1A791B2A893B1A891ACA28AA99E86A2967D9D92788C7F64513D16442E00483304 +4C38094E3A0C5542155A481D614F27786A4893886DABA18DA69C86A49983A19780A0967F +9F957F9F947EA2988381745761502A4A370D52401748350F352107422F15A59F95C9CBD1 +C0C5D0C1C7D3C2C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C3C8D4C2C7D3C3C8D4C4C9D5 +C4C9D4C5CAD5C5CAD5C6CBD6C7CCD7C7CCD7C9CED8CACFD9CBCFD9CCD0DACCD0DACFD3DC +D0D4DDD1D5DED3D7DFD4D8E0D6DAE2D8DAE2D9DCE4DCDFE6DDE0E7E0E3E8E1E4E9E3E5EB +E6E8EDE7E9EDE9EBEFEAECF0ECEEF1EEEFF3EFF0F3F1F2F5F2F3F5F3F4F6F4F5F8F5F6F8 +F7F8F9F8F9FAF9F9FAF9F9FAFAFAFBFBFBFCFCFCFDFCFCFDFDFDFEFDFDFDFEFEFEFEFEFE +FEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFFFFFFEEEEF57C7BB23E3B8E0B096F00006501006906036C08056D0A076E +0B086F0B086F0A076E0A076E09066E08056D08056D06026C05016B020069010068010068 +01006901006904006B0E0C7118177734358A4548967078B28691C098A4CCB9CAE3C2D4E9 +C0CFE6B1BCD9392C7A12005B1A07621A076112005B8587B5E9FFFFDCF0F9D5E8F6D0E2F2 +C7D9ECB9CAE3B3C2DF909CC84A65AC3B55A32C388E222A850F0F7406026A05006A030069 +03006903006903006904006A06026B07036C08056D08066E09066E0A076E0B076E0B086F +0B086F0A076E06036D04016C01006B0000690D0A6F73698FA89CA1EEDEBFFFF1CAFEF2CC +FEF0CFFCEECFF8ECCEF7E9C9F6E7C4F4E1B7F3E0B2F2DDADF4E3BBF0D69FE9C270E8C272 +E7C16FE6BF6DE7C272F0DBAEF4E4C2F6EAD1F5E9D0F5EAD1F5E8CEF0DCB2E8CB8FE7C785 +E1BF75DBB25AD8AB4AE0BB71EDD8AEEBD4A6EBD7ACEBD7AEEEDDBAF0E2C3EAD3A6E4CA95 +E5CC99DFC185DCBB7BD7B165D0A857D8B773E9D7B0E7D4ACE8D5B0E9D9B6EADBBAEDDEC3 +EDE0C6EEE1C8E9D9B9E0C99DD5B77DD1B373CCAB67C6A158C6A157C5A157C49E53D8BF8F +E4D5B6E2D3B2E6D7BBE8DCC1E4D6BAD2BA8BCFB685CCB27CC7AC73BE9E5EB28C40B0873A +AB8436AC863ACEB88DD9C8A6D6C39FDBCBABCAB286C1A774C1A775C3AB7AC3AC7CC3AD7E +C0A978BAA06DB49961A58444B0935AC5B188CEBF9ECEBE9DD0C0A1D0C0A1D1C2A4D2C3A6 +CCBC9CB19967AE9663AA915E9C7E439576378561197D570B7C570C96793CAE9667C9B99C +C6B798C9B99CCCBEA2CDC0A5D0C4ABD0C4ABD2C6AEB5A27D9E855382622476551172500B +6D4B056D4B056D4A06785A1BA8946BC4B69BC1B397C4B89DC4B89DBDAF91957F516E5216 +603F00654402694B0C72551B71541B755A23785E27795E29AFA182C7BDA8C3B7A0C1B69D +B8AB90A99A7AAD9F819F8E6B7F693F523300634910674D166B521E6E552469501C5B4006 +4D3000816D48B0A488A7997CA6997CA6997DA99C80B0A48BA79A7E78643A634E1D563F0B +513803472E00442A00452B01472E00462E008A7956B3A893ACA18AADA38DAFA590B2A893 +B2A892B0A690A79C84A1967DA499807E6E505541223A23004C36054C36074F3C0F534114 +59471D544016756543B0A895AEA692A49984A0947EA0957EA1977F9F957E9F957EA59B85 +9D937C4E3C153C27004F3D1458461E3622004E3D25897D64CBCED2C1C7D6C2C6D2C2C7D3 +C1C6D2C2C7D3C1C6D2C2C7D3C3C8D4C3C8D4C3C8D4C2C7D3C3C8D4C3C8D5C4C9D4C5CAD5 +C5CAD5C6CBD6C8CDD8C7CCD7C9CED8CBCFDACBCFDACDD1DACDD1DBCFD3DDD1D5DED2D6DF +D4D8E0D4D8E0D7DAE2D8DBE2DADDE4DDE0E6DEE1E7E1E4E9E2E5EAE3E5EBE6E8EDE7E9EE +EAECF0EBEDF1ECEEF1EEEFF3EFF0F4F1F2F5F2F3F6F4F5F7F5F6F9F6F7F8F8F9F9F9FAFB +F9FAFBF9F9FAFAFAFBFCFCFDFDFDFEFDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFEFDFDFDFDFDFD +FDFDFEF8F8FBDCDCEBD0CFE39F9EC67C7BB247459313107409066E020169000065000066 +01006903006A08056D09066E09066E09066E09066E0A076E0A076F0A076F0A076E0A076E +0A076F0C0A700E0C7115137619187923237F2929832D2D8536388C3C3F90424492434391 +21126B17035E19066119066116025E403A875E66A7585EA250559D4B509A42469436388C +33358A2B2C85191E7E161A7B1213761010740C0A700A076E09076E09076E0A076E0A076E +0A076E09076E09066E09066E09066E09066E07046D02006B00006A00006900006902006B +141171201C745148827C718FA3969BD7C6AEE1D0B3F2E1BFF6E7C4F5E8C8F7EACDF8EBCE +F7EBCEF7E8C9F6E6C3F4E1B5F3DFB1F2DDAEF4E3BBEED59DE7C16DE7C26FE7C16FE7BF6C +E7C274F1DDB2F4E4C4F6EAD0F6E9D0F5EAD1F4E6C8EFDAAFE8CB8FE6C583E1BD71DBB057 +D9AC4CE2C07BEDD8AFEBD4A7ECD7ACECD8AFEFDEBBF0E0C2E8D0A1E4C994E4CA96DEBF81 +DCB977D5AD5ED4AF63DCBF83E9D6B1E7D4ACE8D5B0E9D9B7EBDBBBEDE0C5EEE2C9EFE2CA +E4CFAADDC595D4B77CD0B070CBA963C69F55C6A057C6A25AC8A762DBC69AE4D5B5E3D4B4 +E6D8BDEADEC7E0CFAED0B786D1B886CAAF79C5A86DBB9956B08A3DAE8537AE883CB59450 +D4C09AD7C5A2D7C6A4D8C6A5C3A977C0A571C3AA7AC4AC7CC3AC7DC2AB7DBFA777B89D68 +AF9257A68747C0AA7FC9B691CEBE9ECFBE9ED0C0A1D0C0A0D3C5A8CCBC9CBEA97FAF9663 +AE9563A88D58977839906E2B825D137D570B7E5A10A99060BFAC87C6B697C6B697CABA9D +CDBFA5CDC1A7CFC3AAD4C8B2CDBFA5A189599377407E5F1F734F0A724F096F4D086A4700 +7252119B8558B3A27FC3B59AC3B69AC5B89EC8BCA4A9967074561A684708654504694B0B +6F511574581F74581F765C25745A228D7749BFB39BC4BAA3BFB49BBEB298B2A588AFA082 +AEA0827962365E420F593C03634A12664C1669501C69511D6148114E32006148189D8E6D +A7997CA5987AA89B7DA89B7FACA085ADA187877650604917604917533A08492F00462C00 +442A0040250058401476633AA09277AEA38DADA38CB0A690B0A691B1A792AFA58EACA18B +A69B83A99E858D7E624F3B16452F074732024D37084F3A0C5543165440145C491F776744 +968A6FADA490A79E88A0967F9C927A9E937C9F967FA19780A39A84A197826D5E3E473408 +4B390E4D3B1149360B3F2C0C867962ACA494C4C9D3C0C5D1C2C7D2C1C6D2C2C7D3C2C7D3 +C1C6D2C2C7D3C3C8D4C2C7D3C2C7D3C3C8D4C3C8D4C4C9D5C4C9D4C5CAD5C6CBD6C6CBD6 +C7CCD8C8CDD7C9CED8CACEDACBCFDACCD0DACED2DCD0D4DDD0D4DED2D6DFD3D7DFD5D9E1 +D8DBE3D8DBE3DBDEE5DEE1E7DEE1E7E0E3E9E2E5EAE4E6ECE7E9EDE8EAEEEAECF0EBEDF1 +EDEEF2EFF0F3F0F1F4F2F3F5F3F4F6F4F5F7F5F6F8F6F7F8F8F9F9F8FAFBF9FAFBFAFAFB +FAFAFBFCFCFDFDFDFEFDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFFFFFF +FFFFFFFFFFFFFEFEFEFEFEFEFFFFFFD8D7E7BEBDD88785B86663A446439127257F201E7B +0D0A7009066E0A076E0A076F0B086F0B086F0A076F0A076E09066E09066E09066E08056D +07046D06026C05016B020069010069000068000067000067010067030066140461190660 +1805611805611906600B0164000068000067000067000067000067000067000067010068 +05006A05016A06026C07036C08056D09066E09066E09066E09066E0A076E0A076E0A076E +0A076E0A076E0A076E08056D0F0B6F2722782F2A7B4C4585675F908C829BCFBEA8E9D5AB +F5E0B0FDE8B5FEEBB7FDEABBFAE8BBF7E6C0F6E7C2F7E9C9F8EBCEF8EBCFF8EACEF6E8C8 +F5E6C3F3DFB2F2DDAEF2DDAFF3E1B9EDD295E6BF69E7C16EE6C16FE6BF6CE8C57CF3E3BF +F5E7CAF6E9D0F6EBD2F5EAD0F1E0BAEDD7A7E7C98BE3C27DE0BA6BDAAE54D9AD53E6CA91 +ECD8AEEAD5A9ECD8AFEDDBB4EEDEBCEEDCB8E6CC99E3C993E2C790DBBC7AD9B770D2AA59 +DCBE81E5CEA1E8D5AFE7D4AEE8D6B2EADABAEBDCBEEEE1C8F0E4CEECDFC4DBC291D7BC86 +D1B274CCAA67C9A45DC4A056C5A056C9A664D8C192E1CFABE4D5B7E5D7BAE7DABFE7DBC1 +D6C196CEB480CEB582C5A86DC09F60B69249AD863AAA8133BA9A5BCDB689D7C6A3D6C4A1 +D9C9A8CBB58ABCA16AC0A773C4AD7FC4AD7EC2AC7CC0A879BAA16DAE9054A68544B79E6B +CEBE9ECDBD9BD0C0A0D0C0A1D0C1A2D1C2A4D2C4A8BAA479AB915DAC935FA98F5C9F8249 +8B6822835D147F5A107D580E957638C4B493C9BA9CC6B697C7B89ACBBCA0CEC1A8CFC3A9 +D0C4ACCABCA2B09B7486682B83642573510C6E4A04714E096F4C076B49039A8355C2B599 +C0B395C4B79CC6BAA0BCAD8FA6926B775A215B38006343036F521574571D785C237A5F28 +785E27826A388D774AB8AA8EC5BAA4BFB39BB7A98EB1A385AC9D7F9E8C69856E44543600 +563901634910674D19664D18614811593E075B400B7E6A42998968AB9E82A59779A89A7E +A99C80AC9F85978867725D315B4410513803523905472E00432900452A004E3608584214 +968869B1A791AEA48DB0A690B2A892B0A690AFA58FABA18AA59A81A59A8196896E837456 +4B350E432D00493303503C0E5542155744185A461B5D4A208D8163B0A894ABA28DA49983 +A197809E937C9D937B9F947E9F957FA399837C6F534E3B1B3E2A054C390F4D3C1247340E +4B3817847860C7C6C5CCD0DAC0C6D2C2C7D2C2C7D3C2C7D3C2C7D3C1C6D2C2C7D3C3C8D4 +C2C7D3C2C7D3C3C8D4C4C9D5C4C9D5C5CAD4C5CAD5C6CBD6C7CCD7C7CCD7C8CDD8C8CDD8 +CACFD9CBCFD9CCD0DACDD1DBCED2DCD1D5DDD2D6DFD3D7DFD5D9E1D6D9E1D9DCE3DADDE4 +DCDFE6DEE1E7DFE2E8E2E4EAE3E5EBE5E7ECE8EAEEE9EBEFEBEDF0ECEEF1EEEFF3F0F1F4 +F0F1F4F3F4F6F3F4F6F4F5F8F6F7F8F7F8F9F8F9FAF9FAFBF9FAFBFBFAFBFBFBFCFCFCFD +FDFDFEFDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFEFCFCFD +FCFCFDFDFDFEFEFEFEFFFFFFFEFEFEFEFEFEFFFFFFD1D0E37574AD5A599D131074010069 +02006A00006800006800006800006801006905026B06036C07046D08056D09066E09066E +09066E0A076E0A076F0A086F0B086F0B086F0B086E0D076C160663190560180661180661 +1905601107680A086F0B086F0A086F0B086F0B086F0B086F0B086F0A076F09076E09076E +09066E09066E08056E07046D07046D05036D05026C01006B00006B00006B00006B00006B +03016C03006C1B1773726991958A9EDACDB9FFF8CBFEF1C3FCE7B5F8E3AFF5E0B0F4DFB1 +F3E0B3F4E1B8F4E2B9F6E5BFF7E7C2F7E9C9F8EBCEF7EACFF8EACEF6E8C8F5E6C3F3DEB1 +F2DDADF2DEB0F3DFB5ECD192E6BE6AE7C06EE6C16FE5BF6DE8C882F4E5C5F5E8CCF6E9D0 +F5EBD2F5EAD0F0DDB3ECD5A4E6C88BE3C17BDFB969DAAD53DAAE56E8CD99ECD8ADEBD5AA +ECD8B0EDDCB7EEDDBAECD9B2E5CB96E3C893E1C58DDABA76D7B56BD1AA59DFC58FE7D3AA +E7D4ADE8D5B0E9D7B3EADBBBEBDDC0EEE1C8F1E5D1E9DBBDD8BE89D6B981CFAE6ECBA864 +C8A25BC4A056C49E55CAAA6BDFCEA8E1D0AEE4D5B7E6D8BCE7DABFE4D6B8D2BA8BCDB480 +CCB480C3A568BE9B59B48F46AC8638A98030C3A770D8C7A3D5C39FD8C8A7D9C9A8C4AB79 +BEA36DC2A977C4AC7FC3AD7EC1AB7BBDA574B79D68A68748A48241C2AD83CEBC9ACEBD9B +D1C2A3D1C1A2D1C1A3D2C4A7D1C2A4B29969AC925DAB925EA78D589C7E438562187E580D +805A127E580EA58B57C9BA9CC4B493C8B899C9BA9CCCBDA2CFC3A9D0C4AAD3C7B1BBA988 +A088588162227E5E1D6F4C056E4C0672500B68440071500EB3A27EC1B497C1B497C4B79C +C8BCA4B3A3817F642B67470A603E0067480673581C775B227B5F287D622D785D278D774A +AB9C7AC3B8A0BFB49BBDB197B1A385AB9C7CB0A28580693E6044125A3E0563480E664C17 +6A501D69501C5C430B492B00644A1DA89B7CA99C7EA59779A6997CAA9D81ADA086B0A48A +7C693F573E0858400B4C3300482E00452B00462C014026005C461A806F47AEA38CADA28B +AFA48DB2A893B3A993AFA58EADA38BA79C83A4987FA99F877A6B4A523E19422B01513D0C +503B0D5440135A471D59451B543E136F5D39ADA490A9A08CA49A84A0957E9F937C9E937C +9F957EA0967FA59D88A19780513F1C2F190048340A4E3C113E2A004B381C72634AAAA392 +C8CCD7BFC4D1C2C7D2C1C7D3C1C6D2C2C7D3C1C6D2C1C6D2C2C7D3C3C8D4C3C8D4C2C7D3 +C3C8D4C3C8D5C4C9D5C4C9D4C5CAD5C6CBD6C6CBD6C7CCD7C8CDD7C9CED8CBCFDACCD0D9 +CCD0DACDD1DBCFD3DCD1D5DED3D7DED4D8E0D6DAE2D6DAE2D9DCE4DBDEE5DCDFE6DFE2E8 +E0E3E9E3E5EBE4E6ECE6E8EDE8EAEEE9EBEFEBEDF1ECEEF1EEEFF3F0F1F4F1F2F5F3F4F6 +F4F5F7F5F6F8F6F7F8F7F8F9F9F9FAFAFAFBFAFAFBFAFAFBFBFBFCFCFCFDFDFDFEFDFDFD +FEFEFDFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFE +FEFEFEFDFDFEFDFDFDFBFBFCFAFAFCF5F5F9EEEEF5EBEAF2D6D5E6ADACCF9391BF6866A6 +5B5A9F3634882D2A8327247F191677171476100E720D0A700B086F0A076F0B086F0A076F +0A076F0A076E0A076E0A076F0B076E0C076C160663190560180661180661190560110668 +09076F0A076E0A076E0A076E0A076E0A076E0A076E0A076E0A076E0A076E0B076E0A076E +0C086E0F0C6F120E701713721B17732A24782F29793C357C5E55866A5F899E9099C9B9A7 +D2C2ACE8D8B8EBDBBBF0E0C0F3E5C2F4E3BDF4E0B3F4E0AFF4E0AFF4E0B1F5E1B4F5E2B9 +F5E3BAF6E5C0F7E7C3F7E9C9F7EBCEF8EBCFF7EACEF6E8C6F5E6C1F3DFB2F2DDAEF2DDAF +F2DEB1ECCF8EE4BD68E5C06DE6C16FE5BF6EEACB8AF4E6C8F5E8CCF6E9CFF6EBD3F5E9CD +EED8ABEBD3A0E6C686E2BF76DDB562D9AE55DCB463EAD2A2EBD6ABEAD6AAEBD8B0EEDCB9 +EDDBB7E8D2A6E4CA96E2C78FE0C288D8B670D4AF61D2AB5EE4CD9FE8D5AFE6D3ACE8D5B2 +E9D7B5EBDCBDECDEC2EEE1C9EFE4CEE5D3AFD7BB84D5B87FCCAB69C8A35DC6A158C5A158 +C39E54D1B67FE3D4B3E2D2B1E5D6B9E7DAC0E3D5B8D8C59CD1B887CBB27DCAB07ABF9F60 +B89651B18C41AC8537AE8A3FCEB88CD9C7A6D5C39FD7C6A5D1BE97BEA36EC1A773C2AA7A +C3AD7EC2AC7DC0A878BAA06DB3965EA3813FAF9259CBB995CDBC99CFBE9ED1C2A3D0C1A2 +D1C2A5D5C7ABC5B38EAD935FAD9561A78D58A2854C957536835E157F590E85611B8A6927 +B8A47BC8B99AC4B494C9BA9CCBBDA0CDC0A6CEC2A9D1C5AEC8BA9EA0865691743C7A5917 +74520D6D4A02704F09704F0A72510D8E743EBFB193C2B497C2B59AC4B79DC2B5998F7645 +6544016443036341006C4D0F785C23795D257C602A816734836B38AB9C7BC2B79FC0B59C +BAAD93B5A78BAC9D7DAE9F8094805B5E410C5A3E06654B13674E186A511D69501B644A14 +593E0A6D56298E7B57A99B7EA59779A6997CA99B7FAB9E83ABA085907F5C5B430F59400C +503704462C00462C00452B01432900553E10928363A79B82ACA18AAEA48DAFA58FB0A690 +AFA58FAAA088A79C84A2967D94866B7F7050513C0E4C3607503C0E56421657441859461B +59441B604E26877A5B9A8F75A79D88A39982A0967F9D927A9E937BA0957EA297819F957E +978D756B5B3B3E2A01412D024C390F47330F3F2B0C82765FA19986BFC0C1C2C7D4C2C7D2 +C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C3C8D4C3C8D4C3C8D4C4C9D5 +C4C9D5C5CAD5C5CAD5C6CBD6C7CCD7C8CDD7C9CED8C9CED8CBCFDACCD0DACDD1DBCED2DC +CFD3DDD2D6DED3D7DFD4D8E0D6DAE2D7DAE2DADDE4DBDEE5DDE0E7E0E3E8E1E4E9E3E5EB +E4E6ECE6E8EDE9EBEFEAECF0ECEEF1EDEEF2EFF0F3F1F2F5F1F2F5F3F4F6F4F5F7F5F6F8 +F7F8F9F7F8F9F9F9FAF9F9FAFAFAFBFBFBFCFBFBFCFCFCFDFCFCFEFDFDFDFEFEFDFEFEFE +FEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFBFBFDD7D7E8 +BCBBD79796C14C4A953D3B8D1B197907036C020169000067000068000068000068000068 +0100690000690200690500671504621906601805611805611906600C026500006A020069 +01006901006901006901006901006901006900006C00006C00006C00006B03026C151271 +221E76413A7F544D85A6999ECBBBA7DAC8AAFEECB4FFEEB4FEEAB5FEE9B5FDE9B8FAE8BD +FAE9C0F9E9C3F8E9C3F7E6BEF5E0B3F4DFAFF5E0AFF5DFB1F4E1B3F5E2B8F6E3BAF6E5C1 +F7E7C4F7E9C9F7EACCF8EBCEF7EACEF6E7C5F5E5C0F3E0B4F2DEAFF1DDADF1DCAEECCD8B +E4BC66E5BF6DE5C070E5BE6DEACE8FF4E7CAF5E8CCF6E9CFF6EBD4F4E7CAECD5A5EBD29E +E6C584E1BD72DCB35DD9B058DFBB72EBD5A8EBD5A9EAD5AAEBD9B1EEDEBBECD9B2E6CC99 +E5CA97E0C48BDDC082D6B26AD1A858D4AF63E7D2AAE7D5AFE7D4ADE8D6B3E9D8B6EBDDBF +ECDFC3EEE1CAEDE1CAE2CCA3D5B97FD4B77CCBA965C5A158C5A157C6A25AC39F55D8C091 +E5D6B8E3D3B3E6D7BCE8DCC4DFD0AFD0B888CEB684CAAF7AC8AC75BC9B5BB4914AAF883C +AE883CB79652D6C4A0D7C5A3D6C5A2D3C19DC8B183BBA068C2AA79C2AB7BC3AD7EC2AC7D +BEA675B69964AD8E53A58645BAA372CFBF9FCDBB9AD0BFA0D1C1A2D0C0A2D2C2A6D3C5AA +B9A378AB915DAD9361A488529C81438F6E2B815C128059108B6A279F844DC5B593C6B697 +C5B596CABC9FCDC0A4CEC2A9CEC2AAD3CAB3B9A7848C6E3485662874500B6F4B046C4901 +714E096C49038A7039AA9870C5B89DC3B59AC3B69BC8BCA4B6A6856D4D0E5E3C00634202 +6648077153177B5F277B5F287D622D856D3B947F53C3B79FC6BBA5BFB39BB4A589AD9D7E +AD9F81B2A58670552954360062460B684F1B6A511D6D55216950195C40095A3F0FA09171 +A89A7CA7997BA59779A6997CAC9F83AFA3899585626E58294F3600523802493000452A00 +462B004229013A210078673FB4AA93AFA48EAEA58EB0A68FB0A690AEA48DACA28CA49880 +A1957BA59A826B58354C360C483304503B0C5642165C491E5D4A1F59461B513E12786A47 +AFA792A9A08AA1967FA0947D9D937B9C917A9E947CA0967FA59B85A298836D5D3B45310F +3E2A0048360A48350946341256462BAAA391CDCDCBC1C6D2C1C6D3C2C7D2C1C7D3C1C6D2 +C2C7D3C1C6D2C2C7D3C3C8D4C2C7D3C3C8D4C2C7D3C3C8D4C4C9D5C5CAD4C5CAD4C5CAD5 +C5CAD5C6CBD6C7CCD8C8CDD8C9CFD8CACED9CCD0DACCD1DACDD1DBCED2DCD0D4DDD2D6DF +D4D8E0D5D9E1D7D9E2D7DAE2DADDE4DCDFE6DEE1E7E1E4E9E2E5EAE3E5EBE5E7ECE7E9EE +E9EBEFEAECF0EDEEF2EEEFF3F0F1F4F1F2F5F2F3F6F3F4F6F4F5F7F6F7F9F7F8F9F8F9FA +F9FAFBF9F9FAFAFAFBFCFCFDFBFBFCFCFCFDFCFCFEFDFDFDFEFEFDFEFEFEFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE +FEFEFEFEFEFEFEFEFEFDFDFEFCFCFDFCFCFCFBFBFCFAFAFCF9F9FBF2F1F7EDEDF4E7E7F1 +DBDBE9DADAE9CCCCE0AEAECFA1A0C78E8EBC8C8CBA7472AC5D5C9F5250983D3B8C373689 +322E842B257D1D0C6618045F19066119066118045F2217722B2A822A28812B29812D2A82 +302E843937883D3B8B4F4D936E607E7A6A7A8C7C868E7F89A49495C6B5A3CFBFA9D8C9B0 +DACBB1E6D5B4EBD9B0EDDAAFF4DFB0F4DFB0F4E0B1F5E1B3F5E2B5F6E5BCF7E6BFF7E7C1 +F8E8C2F7E6BDF5E1B3F4DFAFF5DFAFF5DFB1F4E1B3F5E2B8F6E3BAF6E5C0F7E7C4F8E9C8 +F7EACCF8EBCFF7EBCFF6E7C5F5E5C0F3DFB4F2DDAFF2DCADF1DBAAEACC87E4BC64E5BF6C +E5C171E5BF70EBD096F5E8CDF5E7CBF5E8CEF6EBD4F3E4C4EBD39FEAD09AE4C380E0BA6E +DBB059DAB35FE2C383EBD4A7EBD5A9EAD6ABECDAB4EEDEBDEAD6ADE4C993E4CB97DFC287 +DCBC7DD4AF63CFA651D8B572E7D5AEE6D3ABE7D4AFE9D7B4E9D9B8ECDEC1EDDFC5EEE1CA +E8D8B8DEC799D3B67BD1B376C9A660C49F55C5A156C39E54C6A25DDDC9A2E3D3B4E4D4B5 +E7D9BFE8DDC6DBC7A2CFB684CEB683C8AD76C5A86FB99753B38E44AC8537B69451C5AA75 +D7C6A2D6C39FD9C8A7C9B386BFA46EBEA46EC3AB7BC2AB7DC3AC7DC2AB7DBCA270B09259 +A88849B79D6AC5B188CEBE9DCEBD9CD0C0A1D0C0A1D1C2A4D0C1A4C4B18BB39B6BAB925E +AA905D9F834896773889661F805B117F5A0F9D8149BBA780C5B594C7B798C7B899CBBDA2 +CEC0A6CEC2A8D2C7B0D0C4ACA38C5D8161217A5916704C056F4C046C4A02694500795A1B +AB9871B7A685C4B79CC4B89EC4B79EBAAB8D947C4D6240006240006647066E4F1274571E +7B60297C612A7B612A9C8861B5A78AC2B79FC1B69EBAAC92AD9E7FB0A283A393718B774E +5E410A61450D674C166B521E6B521E6A511C5A3F05553901837049A99A7DA6987AA6987A +A6997AAA9D82AFA48A92815E654E1C5F47134F3502492E00462D00472C0040240050380F +705D359D9073B0A68FAEA48DB0A68FB0A690ADA28CA79B82A5997FA59A81A79C837A694B +4932094A3406533E10543F125A461B5E4A20584419614F268A7D5D9A8F75A49A83A1967E +9E947C9D927A9D927B9E937CA0957FA59B86A79D887B6D4E443007432F05433003402D00 +402D0370614490846BBDBBB8C4C9D3C1C6D1C2C7D3C2C6D2C2C7D2C2C7D3C1C6D2C1C6D2 +C2C7D3C3C8D4C3C8D4C2C7D3C3C8D4C3C8D4C4C9D5C4C9D4C5CAD5C5CAD5C6CBD6C7CCD7 +C8CDD8C8CDD8CACFD9CACFD9CCD0DACCD0DACED2DCCFD3DDD1D5DED3D7DFD3D8E0D6D9E1 +D7DAE2D8DBE3DBDEE5DDE0E6DEE1E7E1E4E9E2E5EAE4E6ECE6E8EDE8EAEEEAECF0EBEDF1 +EDEFF2EEEFF3F0F1F4F2F3F5F3F4F6F4F5F7F5F6F8F6F7F9F7F8F9F8F9FAF9FAFBFAFAFB +FAFAFBFBFBFCFCFCFDFCFCFDFDFDFEFDFDFEFEFEFDFEFEFEFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE +FFFFFFFEFEFEFEFEFEFDFDFDFEFEFEFDFDFDFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFEFFFEFFFFFFFEFEFEFDFEFDFCFDFCF9FAFAFBFDFBEDEDF1CECCDD +3F2F7B10005B1A07621A076112005C8B83AEF6F9F7EAECEFEAECEFE9EBEEE7EAEDE6E9EB +E4E7EBE7E9E8FAE1A2FDDE8FFEE299FEE49FFEE8AAFFECB5FEEDB9FFEEBEFEEDBEFBE8BA +F9E6B5F8E4B3F7E2B2F7E2B1F6E1B0F6E2B3F6E2B4F7E5BBF6E7BDF7E7C0F8E7C0F7E6BD +F5E1B4F4DFAFF5DFAFF4E0B1F5E1B4F5E3BAF5E4BBF6E5BFF7E7C4F7E9C8F8EBCEF8EBD0 +F7EACEF5E7C5F4E4C0F3DFB4F2DDB0F2DDAFEFD7A2E9C87FE4BA62E4BD69E5C072E6C278 +EDD5A2F5E9CFF5E8CCF5E8CEF6EAD4F0DEB9EACF98E8CC94E1BE76DDB564D8AC52DEBA71 +E8D1A1EAD4A7EBD4A8EAD6ACEEDDBAEFDFBFE6CFA0E1C790E3CA95DDBE80DAB875D1AA5B +CEA450DFC48FE8D6B0E6D2A9E7D5B1E9D9B7EADBBBECDFC5EEE2C9ECDFC6DEC89BD8BD88 +D0B173CDAD6CC6A259C49F54C4A057C29C53CEB178E3D3B3E2D2B2E5D7B9E6D9BFE4D5B8 +D3BB8DCDB581CDB37FC4A86DC0A062B49048AF883BAC8639C8AF7DD6C4A0D6C4A1D7C6A3 +D3C19CBBA067B89C62C0A876C3AD7EC4AD7FC1AA7AC0A878B49861A38341AE9158CCBA97 +CDBC9ACEBE9DD1C1A1D1C1A2D0C0A2D3C5A8C5B28DAD935FAF9664A78D58A2874F957536 +8B6923815B1186641E917233BDAA84CABB9EC6B697C9BB9DCBBCA0CEC1A7CFC2A9D1C5AD +C6B799B4A07A886B2F724E076E4A016E4C05704D076E4C07806327A38D62C1B397C0B294 +C5B89DC6BBA2B3A2817B602569490C613E006746066E4F12765A20785D267C622C7C622D +948054C1B59CC8BDA8BEB298B9AC91AEA081AA9B7BA797766E532354350060450A6A511C +6B521E69501B664D175B40086349187F6A42AC9F83A79A7BA89B7DA89B7FAC9F849D8F70 +7763385D44114F3400503602492E00452B00462B014227004E360B948464B2A890B1A68F +B0A58FAFA58FAEA38CADA28AA59A809E9277A2957B847457675435442E044D3708543F11 +5A471B5C481C5C491E5C4A1E66552D978C71ABA28CA399829C927A9C92799D927AA0957F +A0967FA0967FA49B8586785B5A48234430083D2800453105463209432F0F716245B4AEA2 +C6C6C6C4C9D5C1C6D3C2C7D3C2C6D2C2C7D3C2C7D3C1C6D2C2C7D3C2C7D3C3C8D4C2C7D3 +C2C7D3C3C8D4C3C8D4C3C8D5C4C9D5C4C9D4C5CAD5C6CBD6C6CBD6C8CDD8C8CDD7C9CED8 +CACEDACBCFD9CDD1DBCED2DCCFD3DDD1D5DDD2D6DED4D8E0D5D9E1D7DAE2D8DBE3DADDE4 +DDE0E6DEE1E7DFE2E8E2E5EAE3E5EBE6E8EDE7E9EEE9EBEFEBEDF0ECEEF1EEEFF3EFF0F4 +F1F2F5F3F4F6F3F4F6F5F6F8F5F6F8F7F8F9F8F9FAF8F9FAF9FAFBFBFBFCFBFBFCFBFBFC +FCFCFDFDFDFEFEFEFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFF +FEFEFEFDFDFDFDFDFDFDFDFEFEFEFDFCFCFDFCFCFDFBFBFCFAFAFBFAFAFCF9F9FBF8F8F9 +F8F8F9F7F8FAF7F8FAF6F7F9F5F6F8F5F6F8F3F4F6F5F6F7E7E7EEC9C7DA3E2E7A11005B +1A07621A076112005C8780ADF0F3F4E5E7ECE4E6ECE4E6EBE2E4EAE0E3E8DEE1E7DFE2E9 +F1DBA6F4D78FF4D996F4DB9CF4DEA7F6E2B2F6E3B6F6E5BBF6E5BBF7E4B9F6E3B5F6E3B3 +F6E3B2F7E2B0F6E1AFF5E1B1F6E2B4F7E5BBF6E7BDF7E6BFF8E7C0F7E5BDF5E1B4F4DFAF +F4DFAFF4DFB0F5E1B4F6E3BAF5E3BCF6E5C0F7E7C4F7E9C9F8EBCEF8ECD0F7E9CDF5E6C5 +F4E4C0F3DFB3F2DEAFF2DDB0EFD6A1E9C67CE4B961E4BD69E5C072E7C47BEED7A5F5E9D0 +F5E8CDF5E8CEF6EAD3EFDCB3E9CD95E7CB91E1BD74DBB360D7AB50E0BE79EAD5A9EAD4A8 +EAD4A8EBD7ADEEDEBBF0DFBFE5CD9BE1C890E2C994DCBC7DD8B673D0A959CFA654E2CA99 +E8D5AEE6D2AAE7D5B2E9D9B8EBDBBCEDE0C6EFE3CCEBDDC2DBC393D6BB85D0B071CCAB68 +C4A056C5A055C4A057C29E56D3B985E4D5B5E2D3B2E6D8BBE6D8BDDFCEADD0B887CDB482 +CCB17DC3A469BD9D5DB38E45AD8639AE8A3FCFBA8ED8C6A5D6C3A0D8C8A7CEB990B99C62 +BBA069C1A978C3AE7FC4AD7FC0A879BEA676B0935AA07E39B59B67CFBE9CCCBB99CFBE9E +D1C2A2D1C1A2D0C0A2D4C6AABDA77EAA8F5AAF9665A58B559F8248906F2E86631B7E580E +8C6C2AA18650C5B494C6B697C8B798CBBCA0CCBEA3CFC2A8CFC3AAD3C8B1B9A782A38B5C +836427704D056D4A006F4D076F4D086E4C079C8557B4A27EC1B395C0B396C5B89DCBBDA6 +A18C626545006343016442026A4A0A715317785D257A5F277A602A7C612CA99976C8BDA7 +C2B69FBBAF94B4A587AE9F7FAA9B7B94805A563802563900674C136B521D6C521E664E17 +614910513300816C469E8E6FA99C7FA69979A89B7EAC9F84B2A68D897852523903533B05 +5036014B3100472C00472D014529013A1E00645028AFA58CAEA38CAFA38CAFA58FAEA48E +ABA088A99E84A1957BA4997FA79B825E492A361D004832055843145945195D491F5E4A20 +564417605026807251AAA08B9F957C9E937A9C927A9C927A9E937CA19680A0967FA69E88 +A69E8661502C352100412D02473206432F0246320F5E4D3593856CBEBDBAC8CEDBC0C5D0 +C2C7D2C1C6D2C2C7D3C1C6D2C2C7D3C1C6D2C2C7D3C3C8D4C2C7D3C3C8D4C2C7D3C3C8D4 +C4C9D5C3C8D4C4C9D5C5CAD4C5CAD5C6CBD6C7CCD7C8CDD8C8CDD7C9CED8CBCFDACBCFD9 +CDD1DBCFD3DDD0D4DDD0D4DED2D6DED4D8E0D6DAE2D8DBE3D9DCE3DADDE5DDE0E7DEE1E6 +E0E3E9E3E5EBE4E6ECE5E7ECE7E9EEE9EBEFEBEDF1ECEEF1EEEFF3EFF0F4F1F2F5F3F4F6 +F4F5F7F5F6F8F6F7F8F7F8F9F9FAFBF9FAFBF9FAFBFAFAFBFBFBFCFCFCFDFCFCFDFDFDFE +FEFEFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFE +FEFEFEFDFDFDFEFEFEFDFDFEFCFCFDFCFCFEFCFCFDFCFCFDFBFBFCFAFAFBFAFAFBF9F9FA +F9F9FAF8F9FAF7F8F9F7F8F9F5F6F8F7F8F9E9E9EFCBC9DA3E2F7A11005B1A07621A0761 +12005C8982AEF2F5F5E7E9EDE7E9EDE5E7EDE4E6ECE2E4EAE1E4E9DFE3ECEFDDB1F4D996 +F5D790F5DA97F6E0A8F7E3B3F8E4B7F7E7BCF8E6BBF7E5B9F6E4B5F6E2B3F7E2B1F6E1B0 +F5E1AEF5E1B1F6E2B4F7E5BBF6E6BEF7E6BFF7E7C0F7E5BEF5E1B3F4DFAEF4DFAEF4E0AF +F5E1B5F6E3BBF5E4BBF6E5C0F7E7C4F7E9CAF8EBCFF7EBCFF7EACDF5E5C3F4E3BFF3DEB2 +F2DCAEF2DCB0EED399E7C377E2B962E3BC6AE5C073E6C781EEDAABF5E9D0F5E8CDF5E8CE +F4E8CDEDD8ABE7CA8FE6C88CDFBB6FDAB15CD7AC52E4C689ECD8AFEAD4A8EAD4A9EBD8AF +EEDEBBEDDCB8E3CA95E3C993E1C690DABA79D7B46CD1AA5DD4B066E5D1A6E6D3ADE6D3AC +E8D6B3EAD9BAEBDCBEEDE0C7EFE3CDE7D6B4D8BD87D5B87ECDAC6BCAA864C4A055C3A054 +C49F56CCAE71DAC398E4D4B7E3D4B5E7D9BFE0D0B0D4BF93CEB685CCB37ECAAF79BE9E5F +B89652AF8A3FAA8233B9995AD6C4A0D6C4A0D6C4A2D8C7A7C2A976BA9E65BFA571C1AA79 +C4AF81C3AC7EBEA575BAA06CA8894AB0935BC1AB7FCEBD9DCDBC9ACFBFA0D1C0A2D0C0A2 +D5C6ABCEBE9FB29968AF9562AD94619F814797783A8A6822815B117D570CA48955BEAB86 +C5B595C7B798C9BA9CCDBEA4CEC0A7CFC3AAD2C7B0CBBEA39F865591753E7D5D1C6C4900 +6E4B02704E09684500866A31BAAA8ABCAE8EC3B599C6B99EC1B396A28D627C5F26624000 +634200694A0B71541775591F7B5F28765B22876E3CA4916CBEB197C1B69DBEB298B2A487 +AC9D7EB0A2837C65395E42105D3F08644910694E19694F1B6950195B4008503300725B2F +A69779A6987AA7997BA99B7EAC9F84B1A58B988A675C45105339024F3501492E00492E00 +462B003E240050370E7B69439A8C6EAFA48DADA28AAFA48DADA38BABA189A59980A1947A +A69B8082725464502F432C04463004533D0F5A461A5C491E5B461C5641156C5B349A8F75 +A1967D9F947C9E937A9D937A9D937A9D937AA0967FA59B85A49B8492886E6A5B3B3C2800 +432F03422E023F2C004C3A0F7C6F52908469B2ADA3C5C9D4C1C6D1C2C7D3C1C6D2C2C7D3 +C2C7D3C2C7D3C1C6D2C1C6D2C2C7D3C3C8D4C3C8D4C2C7D3C2C7D3C3C8D4C3C8D5C4C9D4 +C5CAD4C5CAD5C6CBD6C7CCD7C7CCD7C8CDD8C9CFD8CACED9CBCFD9CCD0DACED2DCCFD3DC +D0D4DDD2D6DFD2D6DFD5D9E1D6D9E1D8DBE3DADDE4DBDEE5DEE1E7DFE2E8E1E4E9E3E5EB +E4E6ECE7E9EDE8EAEEEAECF0ECEEF1EDEEF2EFF0F3F0F1F4F2F3F5F3F4F6F4F5F7F6F7F8 +F6F7F9F7F8F9F8F9FAF9F9FAFAFAFBFBFBFCFBFBFCFCFCFDFCFCFDFDFDFEFEFEFDFEFEFE +FEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFEFEFE +FDFDFDFEFEFEFDFDFEFDFDFDFDFDFEFCFCFDFCFCFDFBFBFCFBFBFCFAFAFBFAFAFBF9F9FA +F8F9FAF8F9FAF6F7F8F8FAFAEAEAF1CCC9DC3F2F7B11005B1A07621A076112005C8A82AF +F4F7F7E8EAEFE9EBEFE8EAEEE6E8EDE4E6ECE3E5EBE1E4EBEBE3CFF2DDABF5D489F4D895 +F6E1AAF7E4B6F8E5B8F7E6BAF8E6BAF7E5B8F6E4B5F7E2B3F6E1AFF6E1AEF5E0ADF5E2B0 +F6E2B3F7E4BBF6E6BEF6E6BFF6E7C0F6E5BDF4E0B2F4DFADF4DFAEF5E0AFF5E1B5F5E3B9 +F6E3BAF6E5C0F7E7C5F7E9CCF8EBCFF7EACEF7E9CCF5E5C3F4E3BDF2DDB0F1DCADF1DCAF +EBCD8EE6C071E2BA62E4BD6AE5C175E9CD90F0DDB6F5E9CFF5E7CCF4E7CCF2E3C2EBD29F +E5C688E4C483DEB96ADAB15BD9B15CE8D09EEBD8AEEAD6ABEAD6ACECDAB5ECDBB7E8D3AA +E2C790E3CA95DFC38AD8B672D3AE62D4B16ADEC38BE7D4ADE6D3ACE7D4AEE8D8B5EADCBD +ECDDC1EEE2CAEEE2CBDFC99DD4B67CD1B175CAA763C8A45DC49F54C39E53C5A35DDCC79E +E0CEABE4D4B6E5D6BAE6D9BFD7C399CDB581CCB27FCAAF7BC5A86FB79450B18D43AD873A +AD873CCCB586D7C5A3D5C39ED3C09ACCB58BB7985DBDA36FBFA573C2AA7CC4AD80C0A979 +B9A06CB0935AAC8D51C5B189C9B792CFBE9DCFBE9ED0C0A1D0C1A2D0C2A4D1C3A6BDA97F +AC925DAF9765A78C579474358C6B27845F167C55088E6D2CC2B18FC9BA9BC6B798C8BA9C +CBBDA1CFC3A9CFC4ABD2C5ADD3C7B1AF997187692C826325714F086C4800704C066C4902 +765514B3A17EC3B698C2B396C4B89DC8BCA29C875B644501634202613F00674707775B20 +7B60287B60297B622B7D642FAD9E7DC9BFAAC4B9A1B9AD91B3A587AC9D7DB0A384867147 +523200573802684E156B511B674E1862480F5A3F065B3E0D6E552BA59779A99C7FA89A7C +A99C7FAFA289A79A7D7B683C654E1B5037004E3401492F00482E00472C00492F065A4419 +8E7F5EB5AB93B0A48CAEA38CACA18AAB9F87A79C83A59980A2957BA4997F796948412902 +3F2700503B0B5642135A461A5D491F59451A604E2573633FA2977FA69B859F947C9C9279 +9F957E9F947D9F947D9F947DA19780A2988178694A3C28043823023C2700422D01443106 +63542D85785BA8A090C0BFBAC6CAD4C1C7D3C2C6D2C1C7D3C2C7D3C2C7D3C2C7D3C1C6D2 +C2C7D3C2C7D3C3C8D4C3C8D4C2C7D3C3C8D4C3C8D4C4C9D5C4C9D5C4C9D4C5CAD5C5CAD5 +C6CBD6C8CDD8C8CDD8C9CED8CACFD9CBCFD9CCD0DACDD1DBCFD3DDD0D4DDD1D5DED2D6DE +D4D8E0D7DAE2D7DAE2D9DCE4DBDEE5DCDFE6DFE2E8E0E3E9E2E4EAE4E6ECE6E8ECE8EAEE +E9EBEFEBEDF0EDEEF2EEEFF3F0F1F4F1F2F5F3F4F6F4F5F7F5F6F8F6F7F9F7F8F9F8F9FA +F9FAFBF9F9FAFAFAFBFCFCFDFCFCFDFCFCFDFDFDFEFDFDFEFDFDFDFEFEFEFFFFFFFEFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFDFDFE +FEFEFDFDFDFEFCFCFDFDFDFEFCFCFDFCFCFDFBFBFCFBFBFCFAFAFBF9F9FAF9FAFBF8F9FA +F6F7F8F9FAFAEAEAF1CCCADC3F2F7B11005B1A07621A076112005C8A82AFF5F8F7E9EBEF +E9EBEFE9EBEFE7E9EEE5E7ECE4E6EBE2E4EAEBE7DEF1DFB4F5D487F4D997F6E0AAF7E4B6 +F7E5B8F7E5B9F8E6BAF7E5B9F6E4B5F6E2B3F5E0AFF5E0ADF6E0ADF5E1B0F6E1B4F7E4BB +F7E6BDF7E6BFF7E6C0F6E5BCF4E0B2F3DEAEF4DFAEF4DFB0F4E1B5F5E2B8F5E2B9F6E5C1 +F7E8C5F8EACCF8EBCFF7EACFF6E8CCF5E5C2F4E2BDF2DDB0F1DCADF0DCADEBCC8CE5C071 +E3BA63E4BE6BE5C276EBD097F1DFB9F5E9CFF4E7CCF4E7CBF0E0BDEAD09CE5C687E4C381 +DDB768D9B15ADBB362E9D3A4EBD7ACEBD6ADEAD6AFECDBB8EBD9B5E7CFA4E2C791E3CA94 +DEC188D8B56FD2AC5DD6B570E1CA99E7D3ABE6D3ADE7D5AFE8D8B6EADCBEECDEC2EFE3CC +EEE1C9DBC495D3B578CFB071C9A661C7A45CC4A055C19B50C7A664E0CDAAE1D0AFE4D4B6 +E6D7BCE6D8BDD4BE91CEB582CCB07CC9AE79C3A56BB6914CB0893FAE873BB28E48D1BC93 +D6C39FD7C5A2CFBB92C3A876B6985DBEA472BFA573C2AA7BC3AC7EBFA777B69B66AC8D51 +B29660C8B690CAB793CFBE9DCFBF9FD0C1A2D1C1A3D2C3A6C8B896B7A072AC935FAD9562 +A4885291702F896721835D147A52059A7C43C8B89AC5B595C8B899C9BB9DCDBFA3D0C4AB +D0C5ACD3C7AFD0C4ABA189598466287E5E1E6E4B026D4A016E4B046D4A0485682EBEAE8F +C2B497C2B498C8BCA3C5B89E866C375F3C006341016340006A4A0B7B5F267C632B7C622B +795F288A7344BEB198C8BDA8C3B89FB5A88BAFA081AEA080AEA07F6D522454350061440A +6A50196B511B664D155A3E054F32006E552A907D58AA9C7FA6987BA99B7EAC9F84B1A68C +978866604A155B430D513803492F00482E00492F01412500513911807049A4987DAFA48B +AEA28AAFA38CABA088A89C84A4987EA69A81A3977D998C705844224129004C3605544011 +5844175C481C574216513C0F73633E908467A69B859E927A9D92799E937BA0967FA0957F +9E937BA39982A1967F85795C55421F321C003B26013D28003923004B38108A7E6194886E +B2ADA2D3D7E1C1C6D1C1C6D2C2C7D3C2C7D2C2C7D3C2C7D3C2C7D3C1C6D2C2C7D3C3C8D4 +C2C7D3C3C8D4C2C7D3C3C8D4C4C9D5C4C9D4C4C9D5C5CAD5C5CAD5C6CBD6C6CBD6C7CCD8 +C8CDD7CACED8CACEDACBCFDACCD0DACDD1DBCFD3DDD0D4DDD2D6DED3D7DFD4D8E0D7DAE2 +D8DBE3DADDE4DCDFE6DCDFE6E0E3E8E1E4E9E3E5EBE5E7ECE6E8EDE8EAEEE9EBEFEBEDF1 +EDEFF2EEEFF3F0F1F4F1F2F5F3F4F6F4F5F7F5F6F8F6F7F8F7F8F9F8F9FAFAFAFBFAFAFB +FAFAFBFCFCFDFCFCFDFCFCFDFCFCFEFDFDFEFEFEFDFEFEFEFEFEFEFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFEFEFEFDFDFDFDFDFEFEFEFE +FDFDFEFDFDFDFCFCFEFCFCFDFCFCFDFBFBFCFBFBFCFAFAFBF9F9FAF9FAFBF7F8F9F9FAFA +EBEBF1CDCADD3F2F7B10005B1A07621A076112005C8B83AFF7F9F9EBEDF1EBEDF1EAECF0 +E9EBEFE7E9EDE6E8EDE4E5EBE6E7E9EDE0C1F5D58AF4D895F5DEA5F6E3B2F7E4B5F8E5B9 +F8E6BAF7E5B9F7E3B5F6E2B3F5E1AEF6E0ACF6DFACF5E1B0F6E1B4F6E5BBF7E6BDF7E6BF +F7E5BFF6E5BBF4E0B2F3DEADF4DEADF3DEB0F4E1B5F5E2B8F4E2B9F6E6C1F7E8C6F7EACB +F8EBCFF7EACFF6E9CBF4E4C1F3E2BCF2DCAFF1DBACF0DBADE8C986E4BE6EE2B964E3BC6B +E5C277EDD7A6F2E2BFF5E9CEF5E7CDF3E5C8EDD8ACE8CD95E4C482E2C07CDCB464D7AD53 +DEBC75EBD7ADEAD6ABEBD8B0EBD9B3EEDEBCE9D4AAE3C994E2C791E1C890DCBF82D5B169 +D1AB5DDDC189E7D4ADE6D2AAE6D4AEE7D5B0E9D9B8ECDEC2ECDFC5EEE3CCE9D9BBD5BA81 +CFAF70CCAA68C7A35BC6A259C4A057C19C52D1B680E2D2B3E2D1B1E4D5B8E8DAC1E0CEAC +CFB683CDB582C9AD77C6A971BD9D5EB18B41AB8233B59450C8AF7ED4C19BD5C39FD7C6A4 +C1A874B29253BA9E67BFA674C0A777C2AA7DBFA777BAA16EA9894BA98A4CC1AD82C9B692 +CBB996CFBF9FCFBF9FD0C1A2D3C5A8CCBC9CB39B6CB19866AC9360A78C579C7E4389651F +845F1685621B8B6928B8A379C9B99BC5B595CABB9ECBBDA2CEC2A8D0C4ABD3C8B1C5B597 +B09B738C6F35775511714E076D49006B48016D4C06977F4DAE9A73C2B498C3B79BC4B79C +BAAA8C9C85596645026341006545046B4E0E7255197C622B7B632C836A37948055B2A384 +C5BAA3C0B49CBAAD91AD9E7EAFA182927E566F55235839036449106B521B6B511C684E17 +593D06533706664D1FA39474AB9E81A6987AA99C7FADA186A5997A7B673B644D1A543A04 +543B054A3100482D00492E014226004E350D928364B0A58EACA088ADA289AEA38BABA087 +A69B81A1957AA1947AA1947A6B593649330E473003513C0B523C0D543E11574215554013 +68562F7D6D4B9F947CA1967F9C90779E937A9F937CA19780A29881A1967FA298819B9178 +6050313520003B2601422D033F2A004B380F68583585795D998E76A9A191C8CBD4BFC4D1 +C2C7D2C2C7D3C1C6D2C2C7D3C2C7D3C2C7D3C1C6D2C2C7D3C2C7D3C3C8D4C3C8D4C2C7D3 +C3C8D4C3C8D4C3C8D5C4C9D5C4C9D4C5CAD5C6CBD6C6CBD6C7CCD7C8CDD8C8CDD8CACFD9 +CBCFD9CCD0DACDD1DBCED2DCD0D4DDD1D5DED3D7DFD4D8E0D5D9E1D8DBE3D9DCE4DBDEE5 +DCDFE6DEE1E7E1E4E9E2E5EAE3E5EBE6E8EDE7E9EEE9EBEFEAECF0ECEEF1EEEFF3EFF0F4 +F1F2F5F2F3F6F4F5F6F5F6F8F5F6F8F7F8F9F7F8F9F8F9FAF9F9FAFAFAFBFBFBFCFBFBFC +FCFCFDFDFDFEFDFDFDFDFDFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFEFEFEFDFDFEFEFEFDFDFDFE +FCFCFDFDFDFEFCFCFDFCFCFDFBFBFCFAFAFBFAF9FAF9FAFBF8F9FAFAFBFBECECF1CDCBDD +3F307B10005B1A07621A076112005C8B83AFF7F9F9ECEDF1ECEEF1EAECF0EAECF0E7E9EE +E7E8EDE5E6EBE4E5E9ECE0C7F6D68BF4D792F5DDA2F6E2B0F7E3B5F8E6BAF8E5BAF7E5B9 +F7E3B5F6E1B2F5E0AEF6E0ACF5DFACF5E2B0F6E2B3F6E5BCF6E6BEF6E5BEF7E6BFF6E5BB +F4E0B1F3DEACF4DEADF3DFAFF4E0B4F5E2B8F4E2B9F6E6C1F7E8C6F7EACBF8EBCEF7EACF +F6E9CBF4E4C1F3E2BBF2DCAFF1DBACF1DBADE8C784E4BE6DE2B965E3BC6AE5C277EED9AD +F2E2C1F5E8CDF5E7CDF3E3C6EDD6A6E7CC91E3C380E1BF79DCB462D7AC51E1C17EEBD8AF +EAD6ABEBD8B1EBD9B4EEDEBEE8D2A6E1C68FE1C790E0C68EDCBE80D3B066D0AB5EE0C794 +E8D6B1E5D2AAE6D4AFE7D5B1E9D9B9ECDEC3EDE0C6EEE2CBE7D5B4D3B67BCDAD6CCAA864 +C6A259C5A158C39F57C39E56D5BD8CE3D3B4E2D1B1E5D6BBE9DCC4DCC8A4CDB480CDB581 +C8AC75C5A86EBB9A5AAE883CA87F2DBB9D5FD2BE96D3C19BD6C4A2D6C4A2BA9E66B08F4F +BBA16BBFA776C0A879C2AA7DBEA675B89F6AA1813EAA8D51C8B58FCAB793CCBA99D0BFA0 +CFBFA0D0C1A2D5C7ACC6B591AD9461B09766AC925FA4875098793B86621A825D14886721 +9C8047C1B08BC8B89AC7B798CABCA0CCBEA4CFC3A9D0C5ACD5CBB5BAA8859F865587692D +704D056D4A006D4A02664200725110AE9B74BAAA8AC2B497C5B99FC6BAA0A8956E846932 +603E006243006749076F541675591E7C612A785F26876F3EAD9C7CBEB298C2B89FBEB299 +B3A588AD9F80B2A586796031523200593C036950196F57236B511C654B134D3000604619 +826E44AB9E81A6987AA7997AAD9F83B4A88F9688665A410A583E075238024E3501482F00 +4A2F01462B013B210064502AADA288ACA088ACA188ADA389ADA28AA89C83A09479A3987D +A093798E7F6249330D3B23004E3706543F10543F12533E11513B0E4E390A867858A0947C +A297809B8F779C90779E937BA0957EA39882A29780A39984A89E87897C61382405342000 +3D2A01432E013B26005F4E29988C75998F7795896FB8B5AEC4C9D7C1C6D2C1C6D2C1C6D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C3C8D4C2C7D3C3C8D4C3C8D4C3C8D4C4C9D5 +C3C8D4C4C9D4C5CAD5C5CAD5C6CBD6C7CCD7C7CCD7C8CDD7C9CED8CBCFDACCD0DACCD0DA +CED2DCCED2DCD1D5DED2D6DFD3D7DFD5D9E1D6D9E1D8DBE3DADDE4DCDFE5DDE0E7DEE1E7 +E1E4E9E3E4EBE4E6ECE7E9EDE8EAEEEAECF0EBEDF1EDEFF2EEEFF3EFF0F4F1F2F5F2F3F6 +F4F5F7F5F6F8F6F7F8F7F8F9F8F9FAF9FAFBF9FAFBFAFAFBFBFBFCFBFBFCFCFCFDFCFCFE +FDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFDFDFDFEFEFEFDFDFEFCFCFDFDFDFE +FCFCFDFBFBFCFCFCFDFBFBFCFAFAFBFAFAFBF8F9FAFBFCFCEDEDF2CFCCDE3F307B10005B +1A07621A076112005C8C84B0F8FAFAEDEEF2EDEEF2ECEEF1EBEDF1E8EAEFE8EAEEE6E8EC +E3E7F0E9E4D9F4D792F3D58CF4DCA0F6E1B1F7E4B5F8E6BAF8E5BAF7E4B8F7E3B5F6E1B2 +F6DFACF5DFACF5DFACF5E0AFF6E1B3F7E4BBF7E6BEF7E5BEF7E5BEF6E3B8F4DEADF3DDAA +F4DEACF3DFAFF4E0B2F5E2B8F4E3BAF6E5C1F7E7C6F7EACCF7EBCFF7EACFF6E8C9F4E3BE +F3E1B9F2DCAEF1DBACF0DBADE7C47BE3BC69E2B963E2BB65E5C47AF0DEB9F3E4C5F4E7CB +F4E7CCF1E1C0E8CE99E5C88BE2C27DE0BC74DAB25FD6AD55E5C990ECD8B0EAD5ABEBD8B1 +EDDAB7EEDDBCE4CC9CE0C58EE0C58EDEC389DABA7AD2AD62D3B068E4D0A6E7D5B0E6D3AB +E6D5B1E7D6B4EADBBDECDFC4EDE1C8E8DABCE0CBA1D1B275CBA966C8A560C4A057C39F55 +C4A15ACEB27ADBC89FE3D3B3E3D3B4E5D7BBE4D5B7D5BF93CBB17ECAB17CC4A76EBE9E62 +B6944FAB8537AB8536C9B283D6C5A2D5C29DD4C19DCBB589B49558B6985EBDA26FC1A879 +C2AA7CC0A879BA9F6DB09259AB8E53BAA272CAB793CCBA98CFBE9ED0C0A1D0C0A1D0C1A3 +CBBB9AB8A275AD9461AF9765A78C589E81478F6E2B805B107F5A0F9E834BC1AF8BC4B492 +C8B99AC9BA9CCDBFA5D0C3A9D0C3ABD1C7AFCDC1A79F86548E72377B5A186C49006D4A01 +6A4701775716987F4DBFB092BDAF90C3B69AC7BCA3B1A07C7A5D206C4C0C634100674807 +725417765A20785C247E6530836B38A79673C5BAA3C2B69DBCAF94B4A688B2A3859B8963 +7F683A593C0657390164480F6C521D6E542062470F54370062481A9E8E6CA7997AA99A7C +A99B7DAC9F83AFA2879C8C6B6049145238005036014A30004A2F00492E01402400533A12 +8877559F9275AEA28AACA087ABA087ABA087A99D84A2967BA4987D9B8E72624D294A320B +4933044F3906523D0D574114543F124D38094F3A0C807151A59A83A2977F9D927A9E937A +A0957DA29781A1967FA39981ABA18C978C72604F2A4A36103620003926023E2A02493609 +6757339D937C93876EA49B8AC4C5C5C1C5CDC1C7D3C2C6D2C2C7D2C2C7D3C2C7D3C2C7D3 +C2C7D3C1C6D2C2C7D3C3C8D4C2C7D3C3C8D4C2C7D3C3C8D4C4C9D5C4C9D4C4C9D4C5CAD5 +C5CAD5C6CBD6C7CCD7C7CCD8C8CDD7C9CED8C9CED8CBCFDACCD0DACDD1DBCFD3DDCFD3DD +D2D6DED3D7DFD4D8E0D6D9E1D7DAE2D9DCE4DBDEE5DCDFE6DEE1E7E0E3E8E2E5EAE3E5EB +E5E7ECE8EAEEE9EBEFEBEDF0ECEEF1EDEFF2F0F0F4F0F1F4F2F3F6F3F4F6F4F5F7F6F7F8 +F6F7F9F8F9FAF8F9FAF9FAFBFAFAFBFBFBFCFBFBFCFCFCFDFCFCFDFDFDFEFDFDFDFEFEFD +FDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFEFEFEFDFDFEFCFCFDFDFDFEFCFCFD +FCFCFDFBFBFCFBFBFCFAFAFBF9F9FAFBFCFCEDEDF3D0CDDE3F307B10005B1A07621A0761 +12005C8D85B0FAFCFBEEEFF3EFF0F4EEEFF3ECEEF1EAECF0EAECF0E8EAEEE6E8EDE8EAEE +F2DBA1F4D486F5DBA1F6E3B2F7E4B7F8E6BCF8E5BAF7E4B7F7E2B4F6E1B1F5E0ACF5DFAB +F5DFABF6DFADF6E1B1F6E3B9F6E4BBF6E5BDF7E4BDF6E3B9F4DEAEF3DCAAF3DDACF3DFB0 +F4E0B4F5E2BAF4E3BBF6E5C1F7E7C6F7EACCF7EBCFF6EACEF6E7C9F3E3BDF2E0B8F1DBAD +F0DBACF0DBADE5BF70E1B861E0B863E1B863E6C681F2E3C1F3E5C6F3E6C9F4E7CDF0DDB7 +E5C88BE4C587E1C07BDEBA6FD9B15EDBB669E8D09FEBD8AFEAD6ADECD8B3EDDCBAECDBB7 +E2C792E0C48EDEC38ADCC084D7B571D3B16ADABD81E6D4AEE4D2A9E6D3ADE7D5B2E8D7B5 +EBDDC0EDE0C7EDE1CADFCCA2D8BF8BCEAE6FC8A560C6A35BC29D53C19C50C8A766DDC8A3 +E0CEACE3D4B3E5D6B9E2D3B5D6C197D0B887CBAF7BC8AD76C0A165B99756B08D43B08B42 +BC9D5FD4C29CD3C19CD7C6A4C7AE7FB7985DB6975EBB9E69BFA574C2AA7CC3AB7DBEA575 +AF9156AA8B4EC1AB7FC7B48DC8B590CEBE9DCFBF9FCEBE9FD1C1A3CCBB9AB39C6DAF9663 +AD9461AB915F9D7F45937433856118845F17907030BCA982C8B99BC6B696CABC9ECCBFA3 +D0C3AAD1C4ABD3C8B1C0B18FAB976A886A2D806020704D056D4A006A4600735311AD9B74 +BAAB8BC1B295C2B497C3B59AA5916882672E63410064420068480874581D795D247D6029 +795D258D7648B4A68AC3B79FC4B9A1BEB197B0A182AE9F7FA79775674B185130005C3F06 +64490E6B501B694F186348105539035C3F0E9C8D6AAC9F82A8997CAC9F82AFA388AC9E83 +786437614A154E33004C30004A2F00492F00482E004A3006644D24928262B5AB94AEA38A +AC9F87ABA086A79C82A3977CA2967B9D91749182645942203F2600493200513B09523E0E +544011503A0C4B350574643E928567A2967D9E927A9E937AA1977FA29880A49A83A29881 +A297809B91787364415442193A2500422E013F2B02311C0055431F968C72A39A84A09782 +B1A999C3C4C8C3C9D8C1C7D3C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C2C7D3 +C2C7D3C3C8D4C3C8D4C2C7D3C3C8D4C4C9D4C3C8D4C4C9D5C5CAD4C5CAD5C6CBD6C6CBD6 +C7CCD7C8CDD8C9CED8CACFD9CBCFD9CCD0DACDD1DBCED2DCCFD3DCD0D4DDD3D7DFD4D8E0 +D5D9E1D7DAE2D8DBE3DBDEE5DCDFE6DEE1E7DFE2E8E1E4E9E3E5EBE4E6ECE7E9EDE9EBEF +E9EBEFECEEF1EDEFF2EFEFF3F1F2F5F2F3F5F3F4F6F4F5F7F5F6F8F6F7F8F7F8F9F8F9FA +F9FAFBF9F9FAFAFAFBFBFBFCFCFCFDFDFDFEFDFDFEFEFEFEFEFEFDFEFEFEFEFEFEFEFEFE +FFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFEFEFEFEFEFDFDFDFEFDFDFDFDFDFEFCFCFDFBFBFC +FBFBFCFBFBFCF9F9FAFCFCFCEEEDF3D1CDDE3F307B10005B1A07621A076112005C8D85B0 +FAFCFBEFF0F3EFF0F4EFF0F3EDEEF2EBEDF1EBEDF0E8EAEEE7E8ECE8EBF3F1DBA6F3D386 +F5DCA1F6E3B3F7E4B7F8E6BCF8E5BAF7E3B6F6E2B4F6E1B1F5E0ACF5DFABF5DFABF6DFAD +F5E1B1F6E3B8F6E3BBF6E5BDF7E5BDF6E4BAF4DFB0F3DCABF3DDACF4DEAFF4E1B4F5E2BB +F4E3BCF5E5C1F6E7C6F7E9CCF7EBCFF6EACEF6E7C8F3E2BEF2E0B8F1DBACF1DAACF0DAAC +E3BD6BE1B75FE0B863E1B864E7C684F2E4C3F3E5C7F3E5C8F5E7CDEFDBB4E5C789E5C586 +E1BF7BDDB96DD9B15FDEBB76E9D1A2EBD7AFEAD6ADECD9B4EDDDBCEBD9B4E1C690E1C690 +DEC289DCBF83D6B36ED5B471DDC38DE6D4ADE4D1A8E6D3AEE7D6B3E8D8B6EBDDC0EDE1C9 +EDE1C8DCC798D6BC85CDAD6DC7A45EC5A158C29C52C09A4ECAAB6FE1CEACE0CFADE3D4B4 +E6D7BBE1D0B0D1BB8CCFB785CAAE79C8AC75BF9F62B89654AE8A3EB5934EC6AC79D4C29D +D3C09BD7C6A4C0A571B29152B89B63BCA06BBFA675C2AA7CC3AB7DBCA371A8894AAC8F54 +C5B28AC7B48DC8B691CFBF9ECEBF9ECEBE9ED2C3A5C5B38FAC925EAD9561AC9360A88E59 +987A3C8F6E2A815C118B6A27A38853C2B08DC6B696C7B697CBBC9FCDC0A4D0C4ABD1C5AD +D4C8B2B29E769C834F8465277A58156E4B026D4A0167420082652ABBAB8BBEAF90C0B294 +C5B79CBEAE908C733E7556196442006544026C4D0E795D247A5E277B5F28785C249C8860 +C4B8A1C3B79FC1B79EBAAD92AE9E7FB3A587938158593B05543400614409674C136B501C +664C135A3F045E4313796136A7987AA7997BA6987AAEA387B5AA919A89695F4813594009 +5035014A2E004A2F00492F01432700573E158C7B57A4977AADA28AABA087AB9F87AA9E83 +A4987E9F9378A79C818D7F61695534472D084731024E3906513B0B5440104F3A094F390B +59461A908365A2977F9C90769C91789E937BA29880A39981A49981A59A83A69C8685775A +4E3B0F463205443003453103402C0346330C756646ADA5919D947CA59D8BC7C6C5C2C6D0 +C1C6D3C1C6D2C2C7D3C1C6D2C2C7D3C2C7D3C2C7D3C1C6D2C1C6D2C2C7D3C3C8D4C2C7D3 +C3C8D4C2C7D3C3C8D4C4C9D5C3C8D4C4C9D4C4C9D4C5CAD5C6CBD6C7CCD7C7CCD7C8CDD7 +C9CED8CACEDACBCFD9CDD1DACED2DCCFD3DCD0D4DDD1D5DED3D7DFD4D8E0D6D9E1D7DAE2 +D8DBE3DBDEE5DDE0E7DEE1E7E0E3E8E1E4EAE4E6EBE5E7ECE7E9EEE9EBEFEAECF0ECEEF1 +EDEEF2EFF0F3F1F2F5F2F3F6F3F4F6F4F5F7F5F6F8F7F8F9F7F8F9F8F9FAF9F9FAFAFAFB +FAFAFBFBFBFCFCFCFDFCFCFDFCFCFDFDFDFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE +FFFFFFFEFEFEFEFEFEFDFDFDFEFEFEFEFEFDFDFDFEFCFCFDFDFDFEFCFCFDFCFCFDFBFBFC +FAFAFBFCFDFDEEEDF3D0CDDE3F307B10005B1A07621A076111005C8E86B1FCFEFCF0F1F4 +F1F2F5F0F1F4EEEFF3ECEEF1ECEEF1EAECF0E8EAEDE7EBF2EFE2C2F3DA9EF4DA99F6E3B4 +F7E4B6F7E5BAF7E5BAF7E3B5F5E2B2F5E1B1F5E0ACF5DFABF5DFAAF5DFADF5E1B1F6E3B8 +F6E4BBF6E4BDF6E5BDF6E4BAF4DFB1F3DDACF3DDABF3DDACF4E0B3F5E2BAF4E2BBF5E5C1 +F6E7C5F6E9C9F7E9CDF6E9CCF5E6C7F3E2BCF2DFB7F0DAACF0DBADEED8A7E1B962E0B65B +E1B862E0B762E9CC91F3E6C9F3E5C8F3E5C6F4E7CCECD6AAE5C788E3C483DFBD75DBB566 +DAB364E5CB95E9D4A7EAD7AEEAD7AEECDAB7EEE0C1E8D4AAE1C48EE2C793DDC085DABC7E +D3AF67DBBF86E4D0A5E5D1AAE4D0A8E6D3ADE7D6B5E8D8B8EBDDC1EEE2CBE9D9BBD6BB85 +D2B57ACAA967C6A159C39F55C09B50BF994ED5BC8DE2D2B2E1D1B0E3D4B8E5D8BDD8C49B +CDB481CDB481C6AA72C3A56BB99857B28E48AB8539C5AB78D7C6A3D4C19CD5C3A0CFBB93 +B49659B29355BBA06ABEA471BFA778C1A97AC1A979B49861AD9055BCA575C9B792C6B38D +CBBB99CFBFA0CFBE9ED0C1A3CFBFA0B29A69A98D59AB915DA68C56A0834A8B69247F590D +7E590EAC9465C8B999C5B493C5B596C8B99BCDBFA4CFC1A8D0C5ADD4C9B3C5B69892763E +87672A75540F6E4B036D4B0269460071510DAE9A73C1B397BFB193C4B79DC5B99F957E4E +6646016645026948076D4F0E775B207D612B7D612B795E258E7849BFB39BC4B8A1BFB49A +B8AC90B2A486A59471917C52614510593B0162460A674C14694F18684D165A3E055C4009 +978663AC9E82A8997BA8997BAB9D81AA9D809C8D6B624B175238015137034B2F004A2F00 +4A2F01452800563C129B8C6EB2A68FAB9F85AA9D84A99D83A5997FA1957AA09478A59A7E +8A7B5C4A310D3B20004730024F39064F39074F39084B35044F390B8476559A8F74A0957C +9C90769C90779E937BA0957DA39981A39881A49982A39982867759432E03422E00453103 +473206402B00665530A69C85AAA18D938970A39A86C5C7CCC2C8D6C1C6D2C2C6D2C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C2C7D3C2C7D3C3C8D4C2C7D3C3C8D4C2C7D3C3C8D4 +C4C9D5C4C9D4C4C9D4C5CAD5C5CAD5C6CBD6C6CBD6C7CCD7C8CDD8C9CED8CACED9CBCFD9 +CBCFDACDD1DBCED2DDD0D4DDD1D5DED2D6DED4D8E0D5D9E1D7DAE2D8DBE3DADDE4DDE0E6 +DEE1E6DFE2E8E1E4E9E2E4EAE5E7ECE6E8EDE8EAEEEAECF0EBEEF1EDEFF2EEEFF3F0F1F4 +F2F3F5F2F3F6F4F5F7F4F5F7F6F7F9F7F8F9F8F9FAF9FAFBF9F9FAFAFAFBFBFBFCFBFBFC +FCFCFDFDFDFEFDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFF +FEFEFEFEFEFEFDFDFDFDFDFEFEFEFDFDFDFEFDFDFEFCFCFDFCFCFDFCFCFDFAFAFBFDFDFD +EEEEF3D0CDDE3F307B10005B1A07621A076111005C8E86B1FCFEFCF1F2F4F1F2F5F1F2F5 +EFF0F4EDEEF2EDEFF1EBEDF0E9EBEEE8EBF1EFE6CFF3DDAAF4D996F6E3B4F6E3B5F6E4B9 +F6E4B9F6E3B5F6E1B1F6E1B1F5DFACF5DFAAF4DEAAF4DFACF5E1B0F6E3B8F6E4BBF6E4BD +F5E5BDF5E3BAF4DFB0F3DDACF2DCAAF2DDABF4DFB3F5E2B9F4E2BAF5E4C1F6E7C5F7E9C9 +F6E9CBF6E8CBF5E6C7F3E1BBF2DFB5F0DAABF0DBAEEED7A4E1B75FE0B55AE0B861E0B761 +E9CE96F4E7CAF4E5C8F2E4C7F4E7CDEBD4A5E4C788E2C382DFBC72DAB362DBB467E8D1A0 +E9D4A8EAD7AEEBD8B0ECDBB7EEE0C1E7D1A5E0C48DE2C692DCBF83D9BA7BD3AF65DDC48E +E6D3ABE5D0A8E5D1A8E6D3ADE7D6B5E8D8B9EBDDC2EEE3CBE6D6B4D4B880D1B479C9A865 +C6A059C39F55BF9A4FC09B53D9C499E1D1B0E1D1B1E4D6BAE5D7BCD4BE91CEB380CCB380 +C4A86FC1A266B79552B08A41AC873CCCB588D9C8A7D4C19DD7C5A4C9B487B39355B5975D +BBA16CBEA573C0A87AC1A979BFA776B09359B69D69C4AF84C9B691C7B48ECCBC9BD0C0A0 +CEBE9ED2C3A7CAB998AC925DAA905EAA905CA488509D7F4488641C795304815C13B9A57E +CBBC9EC4B493C6B697C9BB9DCFC1A7D0C2AAD1C6AFD6CCB7B9A8848A6D318363256F4D05 +6C4A006B49016C4903816325BAAA89C0B295C0B295C9BCA4C0B29681662D634100654401 +6B4C0C7053157A5E257D612B7B5F287F652FA18D67C5BAA4C1B59CBEB197B2A586B4A689 +9A88626F5521583B05614409684D13694E176A511A61450B5C400A71582AA89A7BAB9D80 +A69879AB9D81B2A58C9A8A697E6A3E5941095138024D32004A2E004A2E00462A014D3307 +715C35AFA389ACA187AA9F85A89C82A69A7FA2967AA2967BA3977C9A8D6F6957353C2100 +462C014B3404503A07513907483202402A00624F279E9379A499809C8F759C90769C9177 +9F947CA1967FA29780A39881A99F8A8F82666756313E28004935074430023D2800432F04 +85775AB5AD9BA49A85958A70B5AFA4C6CCD8C0C5D1C2C6D2C2C7D3C1C6D2C2C7D3C2C7D3 +C2C7D3C2C7D3C1C6D2C2C7D3C3C8D4C2C7D3C3C8D4C2C7D3C3C8D4C3C8D4C3C8D4C4C9D5 +C5CAD4C5CAD5C6CBD6C6CBD6C7CCD7C7CCD7C8CDD8C9CFD8CACFD9CCD0DACCD0DACED2DC +CED2DCD0D4DDD2D6DFD2D6DED5D9E1D6D9E2D7DBE3D9DCE3DADDE4DDE0E7DEE1E7E0E3E9 +E2E5EAE2E5EAE6E8ECE7E9EEE9EBEFEBEDF0ECEEF1EEEFF3EFF0F4F0F1F4F3F4F6F3F4F6 +F4F5F7F5F6F8F6F7F9F8F9F9F8F9FAF9FAFBFAF9FAFAFAFBFCFCFDFCFCFDFCFCFDFCFCFE +FDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFE +FEFEFEFDFDFDFDFDFEFEFEFEFDFDFEFCFCFDFDFDFEFCFCFDFBFBFCFDFDFEEFEEF4D1CEDF +3F307B10005B1A07621A076111005C8F87B2FEFFFEF2F3F6F3F4F6F2F3F6F1F2F5EEEFF3 +EEEFF3EDEEF1EAECF0E9EBF0ECECE9EFE3C5F4D791F6E1AFF7E2B2F7E4B7F7E4B6F7E3B3 +F6E0B1F5E0AFF5DFABF5DEAAF4DDA8F5DEABF4DFAEF6E2B7F6E4BBF6E4BCF6E5BDF5E3B9 +F4DFB0F4DDACF3DCACF2DDAEF4DFB3F4E1B8F4E2B9F5E5C1F6E6C4F6E8C9F6E8C9F5E7C9 +F4E5C3F2DFB7F1DDB2EFD9AAF0DCB0EDD49EE0B55CDFB458E0B862E0B863EBD29FF3E6CA +F3E4C6F4E6CBF3E5C9E8CE99E4C686E1C17EDDB86CD8AF5ADEBB75ECD8B0EAD5AAEAD7AF +EAD9B2EDDCBAEEDFC0E3CB99E0C48EDFC58FDABC7DD6B470D4B16BE3CDA1E6D3AEE4D0A8 +E4D1A9E6D3AFE8D8B7E9DABCEBDFC4E9DCBFDFCA9FD1B377CFB173C7A55FC3A057C39F56 +C09B51C9AA6CE0CEABE1D1AFE2D3B3E5D9BEDFCEADCDB582CCB280CAAF7BC1A166BB9B5B +B28E46AA8235B9995BD6C4A1D6C3A1D5C39FD6C39FB99C63B49559B99D65BDA36FBFA573 +BFA776BCA473B69C67B2965FC8B48EC9B692C9B792CAB995CEBE9DCFBFA0CEBFA0CAB998 +B9A276A78C56AB9260A58952997B3D91702E7F5A0F764E009C7F46C9BA9BC5B595C6B697 +C9BA9BCCBEA2D0C4AAD2C6AECFC2A9C7B89C9C814F7B5A1874520D6D4B006D4B006C4901 +977F4CAE9B74BEB092C2B498C4B79BAF9C77957D4D6B4A0963400067450473561976581D +7B5F27795D2688703EB3A484BEB197C0B49BBBAF93B4A687B0A181A79573674C18513300 +5F42086C511A6E511D684E1662480E5C4109917F5AA7997AA89A7BA69778A99B7EA69879 +9584605F4710563C025137024A30004B2F004A2F01452B005E481E9D8F72A99C81ACA187 +AA9F85A79C81A2967AA09478A19479A19579786746472E0C432A044830004B34024D3705 +4C3505452D005B4720766545988C729F93799B8F759D91789E92789E937A9F947CA0947D +A69C85A79E877C6D4D4C380C483406422E033D2800432F05665631897E61A9A08C90846B +A59C8AC6C6C8C3C7D0C1C6D3C2C7D2C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C2C7D3C1C6D2 +C1C6D2C2C7D3C3C8D4C3C8D4C2C7D3C2C7D3C3C8D4C4C9D5C4C9D5C4C9D4C5CAD5C5CAD5 +C6CBD6C7CCD7C7CCD8C8CDD7C9CED8CACED9CBCFD9CCD0DACDD1DBCFD3DCD0D4DDD1D5DE +D3D7DFD4D8E0D6DAE2D7DAE2D9DCE3DADDE4DBDEE5DEE1E7DFE2E8E1E4E9E3E5EBE4E6EC +E7E9EDE8EAEEE9EBEFECEEF1EDEFF2EEEFF3EFF0F4F1F2F5F3F4F6F4F5F7F5F6F8F6F7F9 +F7F8F9F8F9FAF9FAFBF9F9FAFAFAFBFBFBFCFBFBFCFCFCFDFDFDFEFDFDFDFDFDFEFEFEFE +FDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFD +FDFDFDFDFDFEFEFEFEFDFDFEFCFCFDFDFDFEFCFCFDFEFEFEF0EFF4D2CEE041327C11005C +1B08621B086212005C9088B3FFFFFFF3F4F7F4F5F7F3F4F6F2F3F6F0F1F4EFF0F3EEEFF3 +ECEEF1EBEDF0EAEDF5EDE6D5F3D68EF5DFA9F6E2B1F7E4B7F7E3B6F6E2B3F6E1B0F5DFAD +F4DEAAF5DDA8F4DDA8F4DFABF5DFAEF5E2B8F5E4BBF5E3BBF6E5BDF5E3BAF3DFB0F3DDAC +F3DDACF3DEAFF3DFB3F4E2B9F5E2BCF5E5C2F6E7C6F5E7C8F5E8C9F5E7C8F4E3BFF1DEB5 +F0DCB0EFD9AAF1DCB1ECD39AE0B55CDFB55BE0B864E1B968EDD8ABF3E6C9F3E4C5F4E7CD +F1E2C1E6CA90E2C484E0BD77DAB363D6AD57E1C68AEBD9B2E9D5AAEAD7B1ECD9B6ECDBB9 +E9D8B2E1C792DFC38CDDC38AD8B877D3AE66D7B87AE6D3ADE5D1A9E4D1A9E4D1ABE6D4B0 +E8D9BAE9DBBDECE0C6E2CEA5D8BE8BCEAE71CCAC6CC4A15AC39F57C29E56C5A361D3BA89 +E3D3B4E1D2B1E3D4B7E4D5B9D6C197CBB07BCBB27EC7AC74BC9C5DB69551AF893FAA8437 +C9B181D7C6A4D5C3A0D0BC95C3AB7AB19152B89B64BA9F69BDA471BEA573BDA472B49963 +AE9056BFA87BCCBB97CAB892CBBA97CCBC9ACFBF9FD0C1A2CFC0A0B49D6EAB915CA98F5B +A78D589D7F458D6A26835E147D570B8E6C2AB8A47CC9BA9BC4B494C8B99BCABDA0CEC1A7 +D1C5ADD5CAB4BEAD8AA1885688692D704C036D49006D4B0467420085672CBDAD8EBCAD8D +BFB092CABDA5B9A9897F62277355146949056644026D4D0E775B1F775B207B5F2888723F +AE9E7CC8BDA7C2B69DB8AB8FB0A082AD9D7DA49470735A2A5232005D40046A4E176F541F +6C511B5E43095437008D7A53AFA285A89A7CA69779A99B7DA89B7E715B2B5C420C503400 +4F33004A30004C3000482C0050360B816F4A9E9072B4A992AFA48AA79B81A2967BA29579 +9F9276A79B80877759533C184229064228004C33044D37044B3703432C004D371065522D +988C72A59A829E92789C90759D91779E937A9F947CA0947CA19780A89F898C7F626E5D39 +4631034B350A4C370B402C0449360F78694AB4AB99AEA692988E77B5AD9FC2C3C7C3C9D9 +C1C6D2C1C6D2C2C7D3C2C7D2C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C2C7D3C2C7D3C3C8D4 +C3C8D4C2C7D3C3C8D4C3C8D4C3C8D5C3C8D4C4C9D4C5CAD5C5CAD5C6CBD6C7CCD7C7CCD8 +C8CDD7C9CED8CACFD9CBCFD9CCD0DACDD1DBCED2DCD0D4DDD1D5DED2D6DFD4D8E0D5D9E1 +D7DAE2D8DBE3DADDE4DCDFE6DDE0E6E0E3E8E0E3E8E2E5EAE4E6ECE5E7ECE8EAEEE9EBEF +EBEDF0EDEFF2EEEFF2F0F1F4F0F1F4F2F3F6F4F5F7F5F6F8F6F7F8F6F7F9F8F9FAF8FAFB +F9F9FAFAFAFBFAFAFBFBFBFCFCFCFDFCFCFDFDFDFEFEFEFDFEFEFEFDFDFDFEFEFEFFFFFF +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFDFDFD +FEFEFEFDFDFEFCFCFDFDFDFEFCFCFDFEFEFEF0EFF4D1CDDF3C2C790E0059180560180560 +10005A8D85B1FFFFFFF4F5F7F5F6F8F4F5F7F3F4F6F1F2F4F0F1F4EEEFF3EDEFF2ECEEF0 +EAEDF3ECE7DBF3D794F5DEA5F6E2B1F7E4B8F7E3B6F6E2B3F6E0B0F5DFADF4DEA9F4DDA8 +F4DDA8F5DEABF5DFAEF6E2B7F6E4BAF5E4BBF6E5BDF5E3B9F3DFB0F3DDACF3DDADF3DDAE +F3DFB3F4E2B9F4E3BCF5E5C2F6E7C6F5E7C8F6E7C9F6E7C8F4E3BEF1DEB3F0DCAFEFD9AA +F1DCB1ECD199DFB55BDFB55CE0B965E1BB6CEEDAB0F3E6C9F2E4C6F4E7CDF1E0BEE5C88D +E1C382DFBC75DAB15FD7AE59E4CA92ECD8B1EAD4AAEAD7B1ECDAB7EBDAB7E7D3A8E1C691 +DEC28BDDC188D6B673D1AD63DABD83E7D4AEE5D0A8E5D1AAE5D2ABE6D5B1E9DABCEADCC0 +ECDFC4DDC89BD6BB86CDAD6ECAA968C49F59C29F56C19C54CAAB70D7C094E2D3B4E2D2B3 +E4D5B9DFCFAED3BC8FCAAF7BCBB17EC5A970BA9957B3914AAF8940B28F48CEB88DD6C5A2 +D6C5A2CBB58BB99C62B29355B89D66BAA06BBDA371BDA472BBA26FB09359AE9157C4B087 +CAB894CAB893CCBC99CCBD9BCFBFA0D2C3A6CABA98AD935FAA8F5AA98F5CA48952997B3F +87621B7D560A825E15A48954BDAB85C7B899C5B595C9BB9DCCBEA3CFC2A8D2C6AED4C9B3 +B19D73967B438464266D4A006E4B026E4A03694500987F4EBFB092BBAC8BC2B497C3B69A +A8956D7557187051116949056A4908705112775B2075591D806631A29068B8AA8DC3B79E +BFB399B4A789B1A182A79775836E3F634712593B0163470C6C511B6D531C664B1160460D +6C54219F8F6DAA9C7EA59778A99B7EAFA28693815D5E440E573C045034014C30004C3100 +482D0044280069532BA09172A79A7FAEA289ACA087A59A7EA09478A19579A79B81A09378 +65502D3F2400452B024E35044F39064D37054730004028006B5835897A5D9E93799D9277 +9C90769D91779D91789F957C9F947CA29780A59B859D92796858315340154A36094B370B +463003513E157A6C4C94886FADA491A0967FA49C89C6C6C5C2C6CFC1C6D3C1C6D2C2C7D3 +C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C2C7D3C3C8D4C2C7D3C2C7D3C3C8D4 +C3C8D4C4C9D5C4C9D4C4C9D5C4C9D4C5CAD5C6CBD6C6CBD6C7CCD7C8CDD8C9CED8C9CED8 +CBCFD9CCD0DACDD1DBCED2DCCED2DCD0D4DDD2D6DED3D7DFD5D9E1D5D9E1D8DBE3D9DCE3 +DBDEE5DDE0E7DEE1E7E0E3E9E1E4E9E3E5EBE5E7ECE6E8EDE9EBEFEAECF0EBEDF1EEEFF3 +EEEFF3F0F1F4F1F2F5F2F3F6F4F5F7F5F6F8F6F7F9F7F8F8F8F9FAF9FAFBF9F9FAFAFAFB +FBFBFCFBFBFCFCFCFDFDFDFEFDFDFDFEFEFEFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFEFEFEFDFDFD +FDFDFDFDFDFEFCFCFDFEFEFFF2F1F6D7D4E457498C301E703828773727762D1C6F9D96BC +FFFFFEF5F6F7F5F6F8F4F5F7F4F5F7F2F3F6F1F2F5F0F1F4EFEFF3EEEFF2EBEDF1ECEEEF +F1DBA6F4D99AF6E0AEF7E3B7F6E3B6F7E3B4F6E0B0F5DFADF4DEA8F4DDA7F4DCA7F4DDAA +F4DFAFF5E2B6F6E3B9F5E4BBF6E4BCF5E3B9F4DEB0F4DCABF3DCACF2DCADF3DEB2F4E2BA +F5E3BDF5E4C2F6E6C6F6E7C9F5E7C8F5E6C6F3E2BDF1DDB1F0DBAEEFD8A8F0DBAFEACD92 +DFB45BDFB660E0B967E3C076F0DEBAF3E5C9F3E4C7F4E6CCEED9B3E2C282E0BE79DDB96D +D7AC55DAB262E9D3A6E9D5ACE9D5ABEBD8B2ECDBB9E9D6AEE1C791DFC48EDDC086DABD80 +D4B26DD1AC62E0C998E5D3ADE3D0A7E5D2ACE6D4AFE7D7B5EADCBFECDFC5E8D8B9D5B983 +D1B379CAA965C7A45EC39E55BF9B4EC19D56DAC399DFCEAAE3D3B4E5D6BBE3D4B7D2BA89 +CDB27FC9AE79C8AD77C1A267B28F48AB8437B4924ECBB486D5C29CD6C4A1D6C4A2BA9F66 +AB8841B5975BBBA06BBDA26EBBA26EBAA16EB3975FAF9157B9A16FCBB995CAB793CCBA97 +CDBD9CCEBE9ECFC0A1CEBE9FB9A377A88C56AC925FA58B559C7E418E6C287C5305784F00 +A1854EC5B594C4B391C7B798C8B89BCDBFA4D0C2A8D2C6AECCBFA4BFAF8D93763E88692C +7958146C4A006B48007958168E733DBAA988BFB193C1B397BFB092967E4C82662C6B4A08 +6B4B096D4E0D71521374561A75591D765A20A5936FC6BAA2C0B49ABDB095B8AA8EAD9E7D +AB9B7A7B6333503100593B01674B116B511B6C521A60450A593D018B774FAB9D7EA99A7C +A69878AB9D7FA293748E7B575D430D5034004F33004C30004D3100492E0050350A6C562D +A99D82ADA188A99D83A79B7FA5997DA19478A3977BA093787E6C4B5C47233D2300462F00 +4C3502513A084F3906462D03432B04766645A49980A3987F9E91779D91779D92779E9379 +9F947AA0957DA39981A398806A5834513D124430014A36094E3B0F4A350A5A471F9C9078 +B6AE9DA79E898D8167A19781C6C8CDC2C8D7C1C6D2C1C6D2C2C7D3C1C6D2C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C1C6D2C2C7D3C3C8D4C2C7D3C3C8D4C2C7D3C3C8D4C4C9D5C3C8D4 +C4C9D5C5CAD4C5CAD5C5CAD5C6CBD6C7CCD7C7CCD7C8CDD7C9CFD8CACED9CBCFDACCD0DA +CDD1DBCFD3DCD0D4DDD1D5DED3D7DFD4D8E0D6DAE2D7DAE2D9DCE4DADDE4DCDFE6DDE0E6 +DFE2E8E2E4EAE3E4EBE4E6ECE6E8EDE7E9EEEAECF0EBEDF1ECEEF1EFF0F3EFF0F4F1F2F5 +F2F3F6F4F5F7F5F6F8F5F6F8F7F8F9F7F8F9F8F9FAF9F9FAFAFAFBFAFAFBFBFBFCFCFCFD +FDFDFDFCFCFDFDFDFEFEFEFEFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFDFDFDFEFEFEFEFEFEFDFDFD +FCFCFDFEFEFEF6F6F9E6E5EF9C94BB8379AA887FAD877DAC8076A7C4C0D6FCFEFDF6F6F8 +F5F6F8F5F6F8F4F5F7F2F3F6F2F3F5F0F1F4EFF0F4EEEFF3ECEEF0ECEFF3F1DCABF4D898 +F5DFACF7E3B6F6E3B6F6E3B5F5E0B0F5DFACF5DDA7F4DCA6F3DCA6F3DEAAF4DEAEF5E1B6 +F5E2B8F5E3BBF6E3BBF5E2B8F3DEAFF3DCABF3DCABF2DDACF3DFB2F4E2BAF4E2BCF5E4C2 +F5E6C6F6E8C9F5E7C8F5E6C5F2E2BCF0DCB1F0DAADEED8A8F0DAAFE9CC8FDFB45CE0B762 +E0B967E3C079F1E0BDF3E5C8F3E4C6F3E5CAECD7ADE1C17FDFBC77DCB76BD5AB52DBB569 +E9D5AAE8D5ABE9D5ABEBD8B2EDDBBAE8D3A9DEC38ADFC38EDCC085D9BC7DD4B16BD3AD66 +E2CC9FE4D1ABE3D0A8E5D2ADE6D4B0E8D7B6EADDC0ECE0C7E6D4B3D3B67ED0B175C9A661 +C6A25BC29D53BD974AC3A05BDECBA5E1D0AEE3D3B4E7D8BEE1D1B2CDB37ECBB17CC9AF7A +C6AA72BF9F62B08B41A98030BA9B5CD4C09AD5C29DD6C4A2D3C09CB49658AC8A44B6985D +BCA16CBDA36FBAA06DB99F6CAF9156B59B65C2AC81CAB793CBB994CCBB98CEBD9CCFBE9E +D0C1A2C4B28CB29A6AAA905BAC9360A2874F98783A89661F774E007B5408B0996BC5B593 +C4B391C8B899C9BA9DCEC0A6D1C4AAD4C9B2C3B495AE996D8C6D3284642676550F6C4900 +67440085682DA59064BBAC8CC0B296C6B99FB4A38084672E795B1E6B4B086C4C0B6F5112 +72541674571B7154187F6630B7A88BC4B89FBEB297B8AB8FB6A88AA99978937F55674B17 +5334005F41066A4E166B511B664B1160440A6A511C9F8E6DAE9F82A69878AB9E7FB1A488 +8D7B556F5828573D045034004D31004D31004B3000472B006D562E8D7D5AAFA48BA89C82 +A79B80A4977BA29579A4977CAB9F84918265563F1B452D09462E004D36034E37044F3906 +452D004B340E634F2D93866AA2977E9C90759E92789D92789D92789E93799E937AA49A83 +ACA48E9185684834093F2A004A36094D390D4733055D4A247B6C4CA99F8AA89E899C9279 +988D75B2ACA0C6CBD7C0C5D1C1C6D2C2C7D3C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2 +C2C7D3C2C7D3C2C7D3C3C8D4C3C8D4C2C7D3C2C7D3C3C8D4C3C8D5C3C8D5C4C9D4C4C9D4 +C5CAD5C6CBD6C6CBD6C7CCD7C7CCD8C8CDD7CACED9CACED9CCCFDACDD1DBCDD1DBD0D4DD +D0D4DDD2D6DFD4D8E0D5D9E1D7DAE2D7DAE2DADDE4DBDEE5DDE0E6DEE1E7DFE2E8E2E5EA +E3E4EBE5E7ECE7E9EEE8EAEEEAECF0EBEDF0EDEEF2EFF0F3F0F1F4F1F2F5F2F3F5F4F5F7 +F5F6F8F6F7F8F7F8F9F8F9FAF9FAFBF9F9FAFAFAFBFBFBFCFBFBFCFCFCFDFDFDFEFDFDFD +FDFDFEFEFEFDFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFDFDFDFDFDFEFEFEFEFDFDFEFCFCFD +FDFDFEFFFFFFFEFEFEFFFFFFFFFFFFFEFEFEFFFFFFFDFEFEF8F9FAF8F9FAF7F8F9F6F7F9 +F5F6F8F3F4F6F3F4F6F2F3F5F0F1F4EFF0F4EDEEF1EDF0F8F0E1BEF3D691F4DCA4F7E3B5 +F7E3B6F6E2B4F5E0B0F4DEACF4DCA6F3DCA5F3DCA5F4DDA9F3DEABF4E1B3F4E2B6F5E3B8 +F5E3B8F5E1B6F3DEAEF2DCABF2DCABF3DDADF3DFB2F4E1B8F3E1B9F4E4C0F4E6C4F5E7C8 +F5E6C7F5E5C5F3E0BAF0DAAEEFD9ABEFD7A8F0DBAFE7C988DEB45AE0B863E0B96AE5C584 +F2E3C3F3E4C7F2E4C7F0DFBCE8D09EDFBD78DDB870DAB465D5AC55DFBF7EEBD6AFE8D4AA +E9D5ACEBD9B5EDDDBCE3CB9BDDBF83DFC28CDABD80D6B774D4B26ED9BD81E4D0A8E3D0A8 +E4CFA8E5D2ADE6D4AFE8D9B9EBDEC3ECE0C7DEC79DD0B175CDAD6FC5A15BC39F56C09B50 +BD974CCDB078E2D2B2E1D1B1E3D4B7E5D8BDD8C39AC8AD77CAB17CC7AC76C1A468B99754 +AC863AAD873BCCB587D7C5A3D7C6A4CEBA92C0A672B0904FB39457B79B62BCA16EBDA26F +B89E6AB39861AE9157C6B38BCCBA97C8B690CDBC9BCDBD9CCEBE9ED1C2A3C9B794AB905B +AB905CAB915EA98E5898793B896620805A0F7A51059A7C42C4B392C2B18EC5B594CABC9F +CDC0A4D0C3ABD2C5AECFC3AAA189598A6D307E5D1B795712724F086D4A03775715AE9A74 +BDAD8DBFB091C5B89DBDAE8F8A703A7456176F500F6D4E0E72551873571A735417795C23 +947E52AC9B79C4B8A0BEB298B8AA8DAE9E7EAF9F7F7E66375636005B3E0464470B6A4F16 +694F1863480E5E42088C7850A79878AA9B7DA69878AB9D7F9D8E6B87754C5A4009543900 +5137014C30004D31014A3001482E0078633DACA187AEA389A99D82A5987DA3967AA09376 +A4977C9284666D5936523B14422A004B3303513A07533C094E3705442D00543D178E7F64 +A4987F9F93799D91769E92789E93799F947A9E937A9F947BA39981968A6F847555503D11 +3F2B004430034531034632046A5935A0967EA69C869A907892856CA49B88C6C8CBC5C9D3 +C1C6D3C2C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C3C8D4 +C2C7D3C3C8D4C2C7D3C3C8D4C3C8D4C3C8D5C4C9D5C4C9D4C5CAD5C5CAD5C6CBD6C7CCD7 +C7CCD7C8CDD8C8CDD8CACED9CBCFDACCCFDACDD1DBCED2DCCFD3DCD1D5DED2D6DED3D7DF +D5D9E1D6DAE2D8DBE3D9DCE3DBDEE5DCDFE6DEE1E7E0E3E9E1E4E9E4E6EBE5E7ECE6E8ED +E8EAEEE9EBEFECEEF1ECEEF1EEEFF3F0F1F4F1F2F5F3F4F6F3F4F6F4F5F7F6F7F8F6F7F9 +F8F9FAF8F9FAF9F9FAFAFAFBFAFAFBFBFBFCFCFCFDFCFCFDFCFCFEFDFDFDFEFEFEFDFDFD +FEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFEFEFEFEFEFFFFFFFEFEFEFDFDFDFEFEFEFEFEFDFDFDFEFCFCFDFCFCFD +FAFAFCF8F8FAF9F8FBF8F8FAF7F7F9F9F9FAF9FAFBF8FAFBF8F9FAF7F8F9F6F7F9F5F6F8 +F4F5F7F3F4F6F2F3F6F1F2F5EFEFF2EEF0F8EFE8D6F2D48CF4D999F6E2B4F6E2B3F6E2B3 +F5E0AEF5DEABF4DCA5F3DBA3F3DBA4F4DCA6F3DDAAF4DFB1F5E1B4F5E1B6F4E2B7F4E1B5 +F3DDADF3DBAAF2DBAAF2DBACF2DEB1F3E0B6F3E1B8F4E3BFF5E5C2F6E7C7F5E6C6F4E4C4 +F2E0B9F0DAAEEFD9AAEED8A8F0DBAEE6C580DDB45BE0B864E0BB6DE6CA8CF2E4C6F2E3C6 +F2E4C8ECD7ACE6CA93DFBC75DBB76CD8B161D7B060E3C78FEAD7B0E8D4A9E9D5AEEBDAB6 +ECDBB9E0C58FDDC184DDC289D9BA7CD3B16CD7B777E3CDA0E4CFA7E3D0A7E4D0A8E5D2AD +E5D4B1E9D9BBEBE0C7EADCC2D7BC8ACDAE6FCAA968C29C54C19B52BF984FC5A463D6C093 +E2D3B3E1D1B2E4D5B9DECEABD0B888C9AF7ACAB17DC4A76FBD9D5FB28E48B18E48BFA46B +D4C19CD5C39ED8C8A6C2A977B09050B4965AB89B60B99E67BDA26FBDA270B59862AC8E52 +BAA16FCDBB98C8B590C9B794CFBE9FCEBE9ECFC0A0D2C4A7B9A277A78C55AA915DA68C55 +A0844B8E6D297E570A7B5408987B41B6A077C6B494C3B290C6B899CCC0A4D0C3A8D1C5AC +D5CAB5BAA88388692C81612274520B74530B6C4700866A2EA59063BDAE8FBBAB8CC7BAA0 +B4A3809A8353785A1D7253136D4E0C70521375581B765A1F715316907849C4B8A0C3B79E +BDB095B9AA8FB1A282B2A484927E5356370057390066490E6D531C6E531C61460B523300 +816C41AEA184AB9C7EA69879AB9E7FA79A7B67501B5339005539015338014E31004D3101 +4629005C441B7D6942AB9F83ACA086AB9E84A5997DA09377A19478AA9F849C8E71533C15 +3E24004B340357410C57410E513B09462F00513B0B77654395876BA599809C90759D9177 +9D92779D91779E93799E937AA69B83A69B8495886D513B124029004731034732043F2A00 +57441C766745A59C86A0957E978B72948870B8B2A6C3C4C6C3C9D8C1C6D2C1C6D2C2C7D3 +C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C3C8D4C2C7D3C3C8D4C2C7D3 +C2C7D3C4C9D4C4C9D5C4C9D4C5CAD4C5CAD5C5CAD5C6CBD6C6CBD6C7CCD7C8CDD8C8CDD7 +C9CED8CACFD9CBCFD9CCD0DACED2DCCFD3DDD0D4DDD1D5DED2D6DFD5D8E0D6D9E1D7DAE2 +D9DCE3DADDE4DCDFE6DDE0E6DFE2E8E1E5E9E2E4EAE5E7ECE7E9EEE8EAEEE9EBEFEAECF0 +EDEFF2EDEEF2EFF0F4F1F2F5F1F2F5F3F4F6F4F5F7F6F7F8F7F8F9F7F8F9F8F9FAF9FAFB +FAFAFBFAFAFBFBFBFCFBFBFCFCFCFDFDFDFEFDFDFDFDFDFEFEFEFEFDFDFDFEFEFEFFFFFF +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFDFDFDFDFDFEFEFEFEFDFDFDFCFCFDFCFCFEFCFCFD +FBFBFCFBFBFCFBFBFCFAFAFBF9F9FAF9FAFBF8F9FAF7F8F9F7F8F9F5F6F8F5F6F8F4F5F6 +F2F3F6F1F2F5EFF0F3EEF0F6EEEAE1F2D48FF3D897F5E1B2F6E1B2F5E2B2F5DFAEF4DEAA +F3DCA4F3DBA3F3DBA3F3DCA6F3DDA9F4DFB0F5E0B3F5E1B5F5E1B6F4E0B4F3DDADF2DBA9 +F2DBAAF1DCACF2DEB0F3E0B5F4E0B8F4E3BEF5E5C2F5E6C6F5E6C6F4E5C4F2E0B8EFDAAD +EFD8A9EED7A7EFDAAFE5C37CDEB45ADFB864E0BD70E7CC91F2E4C7F2E4C6F2E4C7EAD3A5 +E5C88FDFBB74DAB669D8B05FDAB66DE5CA96EAD7AFE9D4AAEAD6AFEBDAB7EBD9B6DFC48C +DDC288DDC188D7B776D2AF67D9BB80E5D1A8E3CEA5E3CFA7E4D0A8E4D2AEE5D4B2E9DABC +ECE0C7E8D9BCD4B882CCAC6DC8A664C19B52C09A50BF974ECDB17ADAC69CE2D2B3E2D3B4 +E3D5B8D7C399CEB583CAAF79C9B07BC2A46ABC9A5AAF8A42B69756CBB486D4C29CD7C6A2 +D6C4A1BA9E66AE8E4DB6985DB99C63B99F69BBA16EBBA16EB1945CAB8D51C2AC80CBB995 +C7B48ECBBA97CFBF9FCEBE9ED3C4A5D0C1A2B29969A98F5BAA915EA487509D804688661F +774E00825D14AD9668BBA882C4B391C4B493C8B99BCEC1A6D1C4ABD1C5ADD1C5ACAA9467 +8262227C5A17735009725109704C049D8656B4A37FBDAE8FC0B295C5B89D9E895C8A7039 +77591B7050106D4E0C71531474581A765A1E866E3AA5936DC5BAA2C1B49BBAAD90B6A78A +AFA08197845B765E2C5738005F4205694D146F5520684E1561460D6F5625988763AB9D7F +A8997AAB9E7FADA1848A774E5A4007553B005338014F34004C3000472B004C310483704C +9C8E6EA99D81A89C81A89B80A4977BA69A7EA5997E8F816173603E472E034E3604533D0B +574110553F0E4D36034A33056F5C3697896D9D90759E92779D91769D91779D92779C9177 +A1967EA69C85A49982817251685731462F04442E00463003463204503C11837556978B72 +9D927A93876C968A6FB0AA9EC2C4C7C2C5CEC1C7D3C1C6D2C2C7D3C1C6D2C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C1C6D2C1C6D2C2C7D3C3C8D4C3C8D4C2C7D3C3C8D4C3C8D4C3C8D5 +C3C8D4C4C9D5C4C9D4C5CAD5C6CBD6C6CBD6C7CCD7C7CCD7C8CDD7C9CED8C9CED8CACFD9 +CCD0DACCD0DACED2DCD0D4DDD1D5DED2D6DED3D7DFD5D9E1D7DAE2D8DBE3DADDE4DADDE4 +DDE0E7DEE1E7E0E3E8E2E4EAE3E5EBE6E7ECE7E9EDE8EAEEEAECF0EBEDF0EDEFF2EEEFF3 +EFF0F4F2F3F5F2F3F5F3F4F6F4F5F7F6F7F8F7F8F9F8F9FAF9F9FAF9F9FAFAFAFBFBFBFC +FBFBFCFCFCFDFCFCFDFCFCFEFDFDFDFEFEFEFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFEFEFEFEFEFEFDFDFDFEFEFEFEFEFEFDFDFDFDFDFEFCFCFDFCFCFDFCFCFD +FCFCFDFBFBFCFAFAFBFAFAFBF9F9FAF8F9FAF8F9F9F6F7F9F6F7F9F4F5F7F3F4F6F2F3F6 +F1F2F5F0F1F5EEEEEFF1D9A3F2D797F5DEA9F5E1AFF5E1B1F5DFADF4DDAAF3DCA4F3DAA1 +F3D9A1F3DBA4F3DCA8F4DEAEF4DFB1F4E0B3F4E0B4F4DFB3F2DCACF1DAA8F2DBA9F1DCAB +F2DDAFF3DFB5F3E0B7F4E3BEF5E5C2F4E6C5F4E5C4F4E3C2F1DFB7EFDAABEED8A8EDD7A9 +EED9ADE2BD71DDB259DEB561E3C480EBD4A3F2E4C7F2E4C6F0E1C0E6C992E2C385DCB971 +D8B161D8B161E4C892E8D2A5E9D6ACE8D4AAEAD8B2E9D7B2E5CEA1DDC187DDC28BDBBD82 +D3B16BD1AD65DFC898E5D3ADE2CEA5E3CFA7E3D0A9E5D3B1E7D6B5EADCC0E7D7B8DECAA0 +CFB073C8A663C4A059BF984DBD9548C4A25FDECCA8E0CFAEE2D3B4E5D7BBDCCBA7CBB17B +CAB07BC7AD77C6AB73BB9B5CB28F49AF8A42CAB284D7C6A4D4C29ED7C7A5C6AE7FAF8E4D +B19253B69960B79D66B99D69B79E6AB49962B29660BAA271CBB996C8B48FC8B690CDBD9D +CFBFA0D0C0A0CDBD9CBEA981A98D58AD9361A88C5699793B906D2A7E590C825C14A58A56 +C6B594C2B08DC4B393C8B99BCBBDA0D0C3AAD4C8B1C2B292A68F608B6F32785511724D05 +714D07724E08957C48C0B293C0B294C2B397C4B79BA590667B5E21765818705010705112 +6E4F1072541774571C937C4EBEB095C1B49BBFB298BBAD92AFA07FAC9C7A8B7549593A00 +593A0063460A6A4F166B50196A4E17654A118D7951AD9F81AB9D7EA89979AA9C7D907E57 +745E2D563B055134005136004D32004C31004F340675613A8F7F5DB0A48AAEA388A6997D +A49679A396799F9275948566756340432A02412800503806594310574111553E0D543D0C +74613C93866AA0937AA3977E9E92789D91779E92789E92789F9379A1967D93866B807152 +5B491F452F01432D004834064934066656308F8368968B71A49A84A19781998E78B8B4AB +C0C0BEC6CCD7C2C8D6C1C6D3C1C6D2C2C7D3C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C1C6D2C2C7D3C2C7D3C3C8D4C3C8D4C2C7D3C3C8D4C3C8D4C4C9D5C4C9D4C4C9D5C5CAD4 +C5CAD5C5CAD5C6CBD6C7CCD7C7CCD7C8CDD8C9CED8CACFD9CBCFD9CCD0DACDD1DBCED2DC +CFD3DDD1D5DED2D6DFD3D7DFD4D8E0D7DAE2D8DBE3D9DCE4DBDEE5DCDFE6DFE2E8E1E4E9 +E2E4EAE4E5EBE4E6ECE7E9EEE9EBEEEAECF0ECEEF1ECEEF1EEEFF3F0F1F4F1F2F5F3F4F6 +F4F5F6F5F6F8F6F7F8F7F8F9F8F9FAF8F9FAF9FAFBFAFAFBFAFAFBFBFBFCFCFCFDFCFCFD +FDFDFEFDFDFDFEFEFEFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE +FFFFFFFEFEFEFDFDFDFDFDFDFDFDFEFEFEFEFDFDFDFCFCFDFDFDFEFCFCFDFBFBFCFBFBFC +FAFAFBFAFAFBF9F9FAF8FAFBF8F9FAF7F8F9F6F7F8F5F6F8F4F5F7F3F4F6F2F3F6F1F2F5 +EFF0F4F0E0B9F2D89CF4DBA2F4E0AEF5E0B0F5DFACF3DDA9F2DBA2F3D9A0F3D9A2F2DAA4 +F3DCA8F4DEAEF3DFB0F3DFB3F3E0B4F3DFB1F2DCAAF1DAA8F2DAA9F2DAABF2DCAFF3DFB4 +F2DFB6F4E2BDF5E5C2F5E6C5F4E4C4F3E3C2F2DFB7EFD9AAEED7A8EED8ABEFD8AAE1BB6B +DDB259DDB55FE5C88BEDD7ABF2E3C4F2E4C6EFDEBAE4C68BE1C180DCB86DD6AD5AD8B468 +E8D3A5E9D5A9E8D4AAE8D4AAEAD8B5E8D3ABDFC38CDCC085DDC086D9BA7CD1AE66D2AF6A +E3CFA6E3CFA9E3CEA6E4D0A8E3D0AAE5D4B2E7D6B7EADDC2E1CDA6D8BE8CCCAD6EC6A25D +C39D55BF984DBB9143CCAF77E2D3B3E1D1B1E3D5B7E5D8BDD5BF94C9AE78C9AF7AC6AD75 +C3A76DB79452AD873CB49250D5C39ED6C39ED5C29FD5C5A2B99C63AE8E4CB49558B59960 +B69C65B99D68B59A64AE9158BBA272CCB995C8B58FC7B58FCAB894CEBE9ED0BFA1D2C2A4 +BDA77DAF9663A9915BAD9261A489519272318560177E560AA38A57B9A67EC3B290C1AF8C +C6B696CBBB9FCDBFA4D1C4ACD5CAB4AD986C896B2D83642575510B6E4901724F0A805F20 +B5A37FC2B396C3B497C3B699B8A886886E387456196F50106D4E0C7154167053146F5113 +7A5E26B6A787C4B89FBFB297B9AC8FB5A88AAC9C7B8C75476548135535006245096D521A +6D521A674B125538007B6333B0A286A99A7CA99A7BAA9D7EA19271644916513400553A01 +5033004F3300492D014124006D572CAB9F82ACA185A99C82A89B7FA39679A49579AB9E83 +9283644C330A412703432A004C350358420E5A4413523B084A32006D5930A49980A3987E +9F92789D90769E91779E93799E93799E9279A69B85ACA28C6A58343B2500432D024C3708 +4D38094E3A0E57441A998F77ACA38E9F947D8E8165928569C3C0BBC8CDDBC2C8D5C0C5D1 +C1C6D2C2C7D2C2C7D3C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C1C6D2C2C7D3 +C3C8D4C2C7D3C3C8D4C2C7D3C3C8D4C4C9D5C3C8D4C4C9D5C5CAD4C5CAD5C6CBD6C6CBD6 +C7CCD7C8CDD8C8CDD7C9CED8CACFD9CBCFDACCD0DACDD1DBCED2DCCFD3DCD0D4DDD2D6DE +D3D7DFD4D8E0D5D9E1D8DBE2D9DCE3DADDE4DCDFE7DDE0E6E0E3E8E1E5E9E2E5EAE4E6EB +E6E8EDE8EAEEE9EBF0EBEDF1EDEFF1EDEEF2EFF0F4F1F2F5F2F3F5F3F4F6F4F5F7F5F6F8 +F6F7F9F7F8F9F8F9FAF9FAFBF9F9FAFAFAFBFBFBFCFBFBFCFCFCFDFDFDFEFCFCFDFDFDFE +FEFEFEFDFDFDFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFF +FEFEFEFDFDFDFEFEFEFDFDFEFEFEFEFDFDFDFCFCFEFCFCFDFCFCFDFCFCFDFBFBFCFBFBFC +FAFAFBF9F9FAF9FAFBF8F9FAF7F8F9F6F7F8F4F5F7F4F5F7F2F3F6F1F2F5F0F0F3EFE4CD +F1DAA6F4D99CF5DFACF5E0AFF5DFACF3DDA8F2DAA1F3D99FF2DAA2F2DBA5F3DCA8F3DEAE +F4DEB0F4DFB2F4E0B4F3DFB1F2DCAAF1DAA7F1DAA8F1DAAAF2DCAEF3DFB5F3E0B7F4E2BD +F4E4C0F5E5C4F4E4C3F3E3C1F1DEB7EFD8ABEED7A8EED9ABEED7A7E0B968DCB25ADDB460 +E8CD96EEDAB2F1E2C3F2E4C7EDDAB4E2C284E0C07EDAB66BD5AB56DBB871E9D5ABE9D5AA +E8D4AAE8D4ABEBD9B6E5CFA3DCBF84DCBF84DBBE84D7B776D3B16DD7BA7EE4D0A8E3CFA7 +E3CEA6E4D0A9E3D1AAE5D5B4E7D8B8EADCC1DBC497D3B780CBAA6BC39F57C19C52BD9448 +BC9549D3BB8BE2D1B2E1D1B1E4D6BAE2D3B4CFB787C9AF79C8AD77C4A86FBFA266B3904A +AA8537BFA36BD6C5A1D5C39FD2BE98C7B284B39456B09152B39559B69A62B79B65B79C67 +B1945CAF9158C4AF85CDBB98C7B48DC8B691CAB996CEBE9FD1C2A4CBBB9AB19766AB905B +AA905CA78C579E81458A67217F580C8D6B29B7A279BCA983C2B08EC2B18EC8B99ACCBEA2 +CEC2A8CDC0A5C7B99A9A804B8464257E5D1C7350096B4700856729A48E60B9AA88C2B497 +C6B89EB09D779982528063296E4E0D6948056E500E73561871541580652E978155BEB296 +BEB296BCAE92B4A586B3A485907B506548105E40075F4003684B106E521B684C14674C12 +78603097845EAC9E7FA79878AB9D7F8D7B53735C2C5A3F08563A015236004F33014D3100 +54390D61491E938260A79B7EA69A7DA69A7EA5987CA29577A39679998B6C614B25432902 +472D024E3703513A06563E0C503A075B45177E6C49908263A0947A9E92779E92779E9278 +9E9278A0947A9E937AA1967D8B7D60746443513C104832024D380A4D390B4F3B0E7C6D4D +91856A9B91789C927A988D73AEA899BDBAB4C2C5CCC2C7D3C1C6D1C2C7D2C2C7D3C1C6D2 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C2C7D3C2C7D3C2C7D3C3C8D4C2C7D3 +C3C8D4C3C8D4C3C8D4C4C9D5C4C9D4C4C9D5C5CAD5C5CAD5C6CBD6C6CBD6C7CCD7C8CDD7 +C9CED8CACED9CACFD9CCD0DACCD0DACDD1DBCFD3DDD0D4DDD1D5DED3D7DFD4D8E0D6D9E1 +D7DAE2D8DBE3DADDE4DCDFE5DDE0E7DEE1E7E1E4E9E2E5EAE3E5EBE5E7ECE7E9EDE9EBEF +EAECF0ECEDF1EDEFF2EEEFF3F0F1F4F1F2F5F2F3F6F4F5F7F4F5F7F6F7F8F6F7F9F8F9FA +F8FAFBF9F9FAFAFAFBFAFAFBFBFBFCFCFCFDFCFCFDFDFDFEFDFDFDFDFDFEFEFEFEFDFDFD +FEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFE +FEFEFEFDFDFDFEFEFEFEFEFEFDFDFDFCFCFEFDFDFEFCFCFDFBFBFCFBFBFCFAFAFBFBFAFB +F9FAFBF8F9FAF7F8F9F6F7F8F5F6F8F4F5F7F3F4F6F2F3F5F1F1F3F1F2F8F1E0BBF3D693 +F4DEA9F5E0AFF4DEABF4DCA7F3D99FF2D89DF2DAA0F3DCA5F2DCA9F4DEADF4DDB0F3DFB2 +F4E0B4F3DEAFF2DBA8F0D9A5F0DAA7F0DAA8F1DDADF2DFB4F3E0B6F4E1BCF3E3BFF4E5C4 +F4E3C2F3E2C0F1DEB6EED9AAEDD8A8EFD9ADEDD4A3DFB662DCB25BDDB663EAD3A3F0DEBA +F1E0C1F2E6CAEBD5AAE0BE7CDFBD79D9B468D3A953DFC183EBD8B1E9D3AAE8D3AAE8D5AD +EAD9B6E1C997DABC7EDCBE82DABB7FD3B06AD7B879E0CB9DE4D1A8E3CFA5E3CEA6E3D1AB +E4D2ADE6D7B6E8DABDE8D9BCD4B985CFB075C7A562C19A4FC09A4FBA9144C19D58DECBA7 +E1D1B2E2D2B3E5D8BDDBC8A3C8AD76C8AE78C5AA71C1A165BA9857AF8A41B18E47CDB88C +D6C4A2D6C3A1CAB488B29353AF8E4EB29459B4965CB79A63B79B65B4985FAF9156B79D69 +CEBC9AC9B591C7B48DCBB996CCBB9BCFC0A1D0C0A1BDA97FA68951A98E59A78D579F8247 +9473317B52037A5103AC9364C2B18EC0AD89C0AF8BC2B290CBBDA1CFC2A7D3C7AFC0B08F +A38C5C8667297B591578540E6B4802694702AA966BC4B599BFB192C6B99FC1B2948A7038 +7A5C1E7454156745026442006F5211725618785D22AF9F7CC1B398C1B59ABBAD91B5A688 +B5A687A5936E61430A5333005E40056C4F156E521B6A4E165A3D00836C3FB1A186AC9D7F +A99B7CB1A4869C8B6761470E573B00523600503300503401482D00482C01877450A6997B +A99C80A6997CA5987BA29477A4967AA79A7E76633E563F183C2100482F004F360358410C +533B074F38066A572D8F8061A99D85A2977C9E92779F91779E92789D91779C9076A49A81 +AFA58E8B7D5E4631063D27004934054F3A0C4531006F5E398E8164AAA18CA9A08C94886E +A39A83B8B4A8C9CDD8C4CAD8C2C7D4C1C6D2C2C7D3C1C6D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C2C7D3C3C8D4C3C8D4C3C8D4C2C7D3C3C8D4C4C9D5 +C3C8D5C4C9D5C4C9D4C5CAD5C5CAD5C6CBD6C7CCD6C7CCD7C8CDD8C8CDD7C9CED8CACFD9 +CBCFD9CCD0DACDD1DBCED2DCD0D4DDD1D5DED2D6DFD4D8E0D5D9E1D7DAE2D8DBE3DADDE4 +DBDEE5DDE0E6DEE1E7E0E3E8E3E5EBE3E5ECE5E7ECE6E8EEE8EAEEEAECF0ECEEF0EDEEF1 +EDEEF3EFF0F3F1F2F5F2F3F6F4F5F7F5F6F8F6F7F9F7F8F9F8F9F9F8F9FAF9FAFBFAFAFB +FAFBFCFBFBFCFBFBFCFCFCFDFDFDFEFCFCFDFDFDFEFEFEFEFDFDFDFEFEFEFFFFFFFEFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFD +FDFDFDFDFDFEFEFEFEFDFDFDFCFCFDFCFCFDFCFCFDFBFBFCFBFBFCFAFAFBF9FAFBF8F9FA +F8F9FAF7F8F9F5F6F8F5F6F8F3F4F6F3F4F6F1F1F3F0F2F7F0E2C1F2D590F4DBA3F5E0AF +F4DDAAF3DBA6F2D99EF2D89CF2D89FF3DCA6F3DCA9F3DEADF4DDB0F4DFB2F4E0B3F3DEAF +F1DAA7F0D9A4F1D9A6F1DBA9F1DCADF2DFB4F3DFB6F3E1BCF4E3BFF4E4C3F3E3C1F3E1BF +F1DDB5EED8ABEDD7A8EFD9ADEDD4A2DEB55FDBB15ADDB766ECD6A9F0DEBBF0E0C1F2E4C7 +E9D2A4DEBD7ADEBC78D9B366D4AD5AE1C68CEAD6AEE8D3A8E8D4AAE9D5AFEBD9B5DFC590 +DABD7FDBBD82D9BB7ED2B06AD9BD83E3D0A6E3D0A7E3CFA5E2CEA6E3D1ACE4D3AFE7D8B9 +EADDC1E5D4B4D2B47CCEAF72C5A25EC0984DBE974DBB9449C6A668E0CFADE0D0B0E2D3B5 +E1D2B5D6C197C7AB74C7AC75C3A66CBD9C5FB6934EAF8B43BFA269D0BC93D6C4A1D6C5A4 +C2A875AE8C48B09051B3965AB5975EB69A64B79B66B09258B59A65C2AC81CAB894C6B28D +C8B58FCBBA97CDBC9BD1C2A3C3B089B49C6CA88C56AB905CA38851997A3C8C6923774E00 +87631CB7A27ABDAB85BFAD89C3B290C4B594CCBFA3D0C3AAD3C8B0AE996F93763D826221 +77550F714D0574520D84682BB5A480BEAF90C4B69ABAAB8AA8946A7F632677591A6F4E0C +6746016645006D4E0E795E23907A49BEB196C2B59BBEB195B8AA8DB6A789A79571887143 +5A3B005F400466490E6D531B694D14694E157A64329A8864AD9D80AB9D7EA79A7A9D8D6A +7962335E43095C41075135004E3200482C005B4215715B329E8E6FA7997CA5987BA4977A +A5987BA89B7FAA9C80837250513812492F07482E004F37045037034D35004D35016E5C33 +9384669C8E72A194799F92779E92779E91779E92779E9278A49A819C917686785A5D4B26 +452F014631024833034A340768573093876C9C90779B9076968A70A59C88BCBBB9BFC0C4 +C3C8D3C0C5D1C2C6D2C2C7D3C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C1C6D2C1C6D2C2C7D3C3C8D4C2C7D3C2C7D3C2C7D3C2C7D3C3C8D4C3C8D5C4C9D4C4C9D4 +C5CAD5C5CAD5C6CBD6C6CBD6C7CCD7C7CCD7C8CDD7C8CED7C9CED8CBCFD9CBCFDACDD1DB +CDD1DBCFD3DDD1D5DED1D5DED3D7DFD5D9E1D6D9E1D8DBE3D8DBE3DBDEE5DCDFE6DDE0E7 +DFE2E8E0E3E9E3E5EBE4E6EBE6E8EDE7E9EDE8EAEFEBEDF0ECEEF1EDEFF2EEEFF3F0F1F4 +F2F3F5F2F3F5F4F5F7F5F6F8F6F7F8F7F8F9F8F9FAF8F9FAF9F9FAFAFAFBFBFBFCFBFBFC +FCFCFDFDFDFDFCFCFEFDFDFDFDFDFEFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFDFDFD +FEFEFEFEFEFEFDFDFDFDFDFEFCFCFDFCFCFDFBFBFCFBFBFCFAFAFBF9FAFBF9FAFBF8F9FA +F7F8F9F6F7F9F4F5F7F4F5F6F2F3F4F0F2F8F1EBDDF0D492F2D798F5E0B0F4DDAAF3DBA4 +F2D89CF2D79AF2D79EF2DAA4F2DBA8F3DDACF3DEAFF3DFB0F3DFB0F2DDADF0D9A5EFD7A2 +F0D8A5F1DAA9F1DBADF2DEB3F2DFB5F2E1BBF3E2BEF3E3C1F3E2BFF2E1BCF0DCB2EED8AA +EDD6A7EED9ADEAD19BDBB158DAAF57DFBA6FEFDCB7F0E0BFF0E0BFEEDCB9E5CA94DDBB74 +DCB971D7B161DCBB78E6CF9FE8D4ACE7D2A7E8D5ACEAD8B4E8D4ACDBBE82DBBE83D9BA7E +D6B473D1AF69E0C99CE6D3AEE3CEA5E2CDA5E3CFA7E5D3AFE6D4B3E9DABEEBDEC5DCC59A +CBAA6BCAA867C19C51BD9548BC9448C8AA6DD5BF91E1D2B3E1D2B2E1D3B4D3BC8FCBB07C +C5A86FC2A46ABC9C5EB4904BAD883DBC9F63D5C29ED5C19ED1BE97CAB488B1904FAD8A48 +B29356B5985EB69A62B59962B2955CAF9258C6B28ACDBB98C5B18AC5B28BC9B794CDBC9C +D0C1A2C9B894AB8F5AA98D57AA8E58A78C54997A3C89641C815B10927232AD9464C2B18E +BEAA86C2B18FC8B99ACABC9ECEC2A7D2C6ADBDAC898C6D3182632277550F6F4A01724F08 +A28B5DBBAA89C0B193C3B498BDAD8F8F76427F62266F4F0D6947036A4A076A4A09694A07 +7E622AAC9B78BBAE91C5B9A1C1B49AB6A88AAFA07E9A875F65470F5B3C036143086C5116 +6E541B6B5018684E15907D53B0A184AD9D7FA99A7BA99A7A7D683A593F06543802543901 +5236015033024E3203644C209D8E6EAC9F83A89B7EA5977AA5977AA39679A3977983714E +6A552E452B03472D004D3503543C08513906533C0C69552D80704DA3987EA4997EA19479 +9E92779E92779F9278A093799E91789D9076897B5E5440193F2900412A004F3A0B523E0F +705F3A8C7E61A69E87A399829B8F76ABA495BAB7AFC2C5CBC5CBD9C2C7D5C1C6D2C2C7D3 +C1C6D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C2C7D3C2C7D3 +C3C8D4C3C8D4C2C7D3C3C8D4C3C8D4C3C8D4C4C9D5C4C9D4C4C9D4C5CAD5C5CAD5C6CBD6 +C6CBD6C7CCD7C8CDD8C8CDD8C9CED8CACED9CBCFDACCD0DACDD1DBCED2DCCFD3DCD1D5DE +D3D7DFD3D7DFD5D9E0D7DAE2D7DAE2D9DCE4DADDE4DDE0E6DEE1E7DFE2E8E2E4EAE2E5EA +E5E7ECE6E8EDE7E9EEE9EBEFEAECF0ECEEF1EEEFF3EFF0F3F0F1F4F1F2F5F3F4F6F4F5F7 +F5F6F8F6F7F9F7F8F9F8F9FAF8FAFBF9F9FAFAFAFBFAFAFBFBFBFCFCFCFDFCFCFDFDFDFE +FDFDFDFEFEFEFEFEFEFDFDFDFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFDFDFDFDFDFE +FEFEFEFDFDFDFCFCFEFCFCFDFBFBFCFBFBFCFBFBFCFAFAFBF9F9FAF8F9FAF7F8F9F6F7F9 +F5F6F8F4F5F7F3F4F5F1F2F7F1EEE9F0D595F2D696F5E1B2F4DEABF3DBA4F3D79CF2D69B +F1D89EF1D9A4F1DAA6F3DDABF4DEAEF3DDAEF2DEAFF2DCACF0D9A4EFD7A1F0D7A4F1DAA9 +F1DBACF2DEB2F2DFB4F3E0BAF2E2BEF3E3C0F3E1BDF2E0BBEFDCB1EED8A9EDD6A7EDD8AB +E9CE95DBAF55DAAF58E1BD76F0DEBBF0E0BFF0E0BFEBD6AEE3C68CDCBA73DBB76ED7B060 +E1C68DE7D1A4E8D4ABE7D3A8E8D5AEEADBBAE4D0A3D9BC7EDBBE85D8B87AD2B16CD2B16D +E4D0A7E5D2A9E2CEA5E1CDA5E3D0A9E5D3B1E6D5B5E9DCC0EADDC2D7BC8BC9A665C7A461 +BF984CBD9347BC9448D3BB8BDDCBA5E0D0B0E3D4B8E0CFAFC9AF78C7AB72C4A76EBF9F63 +B99856B08B42AB8438C8AF7ED7C6A2D6C4A1CCB78BB99C63AD8A48B09051B39559B69961 +B69A63B4975FAE8F52B69D67CCBA97C8B48EC5B189C7B48ECBB998CEBD9ED3C5A8BEA87F +A58850AA8F5BA88D56A3864D92702E7B5203825B11B49D71BDAA84BFAD89C1AF8CC5B594 +CABB9FCCBFA3CFC3AAD1C5ACA58F5F8162207F601E734F08674100826325BBAB8ABDAE8F +C4B699CDC0A9AA966E7A5C1D795C1D6A4A076543006D4E0D6F4F0F6A4A08998458C7BAA2 +C2B49AC0B399BEB196B4A687A18E68765B275331005D3E036B4F1470561F6D521A614207 +7E6637AFA182AA9B7CAB9C7DB4A88C9986615A3F04563B005538015034004B2E004D3105 +5A4111988766ACA084A79A7BA5997AA49678A89A7EA89C7F9486644B320A3D22004A3102 +573F0957410C51390549300068542CA4977EA5997FA094789E91769E92779F93789E9177 +A09379A59A80A4987F877A5D4E3A18381F00493202463000523E106A5930A39880ACA18C +9A90769B8F73ABA18BC8CBD1C4CAD8C2C7D3C1C5D1C1C6D2C2C7D3C1C6D2C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C1C6D2C2C7D3C3C8D4C2C7D3C2C7D3 +C2C7D3C3C8D4C4C9D5C3C8D5C4C9D4C5CAD4C5CAD5C6CBD6C6CBD6C7CCD7C7CCD7C7CCD8 +C8CDD7C9CED8CACFD9CBCEDACCD0DACDD1DBCED2DCCFD3DDD0D4DDD1D5DED3D7DFD4D8E0 +D6D9E1D7DAE2D8DBE3DADDE4DBDEE5DEE1E7DFE2E9E0E3E9E2E4EAE3E5EBE6E8EDE6E8ED +E8EAEEE9EBEFEBEDF0EDEFF2EDEEF2EFF0F4F1F2F4F1F2F5F4F5F7F5F6F8F6F7F8F7F8F9 +F8F9FAF8F9FAF9FAFBF9F9FAFAFAFBFBFBFCFCFCFDFCFCFDFDFDFEFCFCFDFDFDFEFEFEFE +FDFDFDFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFEFEFEFEFEFEFDFDFDFEFEFE +FDFDFDFCFCFEFCFCFDFCFCFDFBFBFCFAFAFBF9FAFBF8F9FAF8F9FAF7F8F9F6F7F8F5F6F8 +F3F4F6F1F2F5F1F2F5F0D79FF1D594F4E0AEF4DEADF3DBA5F1D598F1D598F1D89FF2DAA3 +F2DAA3F2DCAAF3DDAEF3DDAEF3DDAEF2DBAAF0D8A3EFD7A2F0D7A4F0DAA9F0DBABF1DCB1 +F1DDB3F2E0B9F3E2BDF3E2BFF2E0BBF1DFB8EFDAAFEDD7A8EDD6A8ECD6A7E7CA8DD9AD52 +DAAF57E2C07CF0DEBCF0DFBDF0DFBDE7CF9DE1C284DBB86FD9B367D8B368E5CF9FE8D2A7 +E8D4AAE8D4AAE9D6AFEBDBBAE2C998D8B97ADABC81D6B474D0AB63D7B97CE4D1A9E3CFA6 +E2CEA6E2CEA6E3D0ABE6D5B3E7D8B8E8DABCE5D5B4D1B47DC6A35FC39F58BD964ABB9346 +C19E58DAC69DDFCDAAE0D0AFE3D4B8D8C39BC5A96FC6AA72C2A368BA9A59B5924DAA8436 +B4924ED1BD94D5C29ED5C3A0C0A672AE8D4BAF8F4EB19356B4965DB59961B59961B09359 +AC8F54C1AC80C9B792C5B189C7B38DC9B692CCBB99CFC0A1CDBD9CAF9563A78A53A98E59 +A2854C9C7D4089651E7E560B98783CBDAA84BEAB86C1B08CC4B492C8B89ACCBEA2CFC2A8 +C6B89AB09C7392763C7B5A1579571174510B775612A38C5DBFB090BFB292C0B293B9A988 +8E743F7554147353126A4A06694804715212795B20866A36B5A585C1B498BEB095BBAD90 +B9AB8D9D8A6270551E63460D5D3F026346096C50166B51177157208C784C9E8C68AB9C7D +AA9B7CA293718B784E725A285B4005583C025236005034044F330577623A958562A29375 +A6987AA6987AA49779A5977A9C8D6E6E59325B441B492E03492F01543C0A5A4412594210 +655023857452948567A195799F93779F9377A093789F93789E92779E92789B8E73988A6E +7563444934114029074029024932055A481D887B5C9D9178A398819C9178A49B86BCBBB7 +BFC1C4C1C6D0C1C6D2C1C6D2C2C7D3C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C1C6D2C2C7D3C2C7D3C2C7D3C3C8D4C2C7D3C3C8D4C3C8D4C3C8D4 +C4C9D5C4C9D4C4C9D5C5CAD4C5CAD5C6CBD6C6CBD6C7CCD7C7CCD7C8CDD7C9CED8CACED9 +CBCFD9CBCFDACDD1DBCED2DCCFD3DCD0D4DDD0D4DED2D6DFD4D8E0D5D9E1D7DAE2D8DBE3 +DADDE4DBDEE5DCDFE6DFE2E8E0E3E9E1E4E9E3E5EBE4E6EBE7E9EDE8EAEEE9EBEFEAECF0 +ECEEF1EEEFF3EEEFF3F0F1F4F1F2F5F2F3F6F4F5F7F5F6F8F6F7F8F7F8F9F8F9FAF9F9FA +F9F9FAFAFAFBFBFBFCFBFBFCFCFCFDFCFCFDFDFDFEFDFDFDFDFDFEFEFEFEFDFDFDFEFEFE +FFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFDFDFDFEFEFEFDFDFDFCFCFE +FDFDFEFDFDFEFBFBFCFAFAFBFAFAFBF9FAFAF8F9FAF7F8F9F6F7F8F5F6F8F4F5F7F3F4F5 +F2F4F9EED9ACEFD394F4DDA8F4E0AFF2DBA5F0D394F0D495F1D89EF2DAA2F1D9A2F2DBA9 +F3DDACF2DDAEF3DEAFF2DCABF0D8A2EFD6A1F0D7A4EFD9A7F0DAAAF0DCB0F0DDB2F2DFB7 +F3E1BBF2E2BDF1DFB9F0DDB5EFDAAEECD6A7EDD6A8EBD4A3E4C684D8AC4DDAB059E3C586 +F0E0BFF0DFBDEEDEBAE2C58BDEBD7BDAB66AD6AE5DDAB972E9D7AFE8D3A9E7D3A9E7D3AB +E9D6B1EBDAB9DEC38CD7B777D8B97CD3B06DCCA659DCC28EE4D1AAE2CEA5E2CEA6E3CFA7 +E3D1ACE6D6B6E9DABEE5D5B4DEC89FCBAC6EC3A058C09B51BB9546B99143C9AA6FE0CFAE +DFCEABE0CFB0E0D0B0CFB686C3A66BC5A971BE9F61B69451B18C44A88334C0A56DD8C6A3 +D4C19BD4C19DB29353A7843CB19254B4975CB59961B59961B2975DAD8F55B49965CBB994 +C6B18AC4AF87C9B591CBB896CDBC9CD0C0A0C2AE86A4874EA98D57A78B549B7E40937231 +7E570A957536B29B6EC1AF8CBEAB86C4B391C8B99BCBBCA0CDBFA4D1C5ADB6A37E8E7033 +81611E7450086F49017B5A18A08859BCAB8BC2B497C7BBA0B2A07B947A47795B1D6F4D0B +6D4D0A6A4A066C4B09715112968052B0A17FC3B79DBDAF93B9AB8EB6A788B0A08071571F +5332005C3D01674B0D6B5015694D13614506887345B3A589AC9D7FAC9C7EB1A488836E42 +5438005B41055A3E055538014B2C00593E13766035A89B7DADA184A6987AA39678A49779 +AA9C80A99C8068532B3E21004226014B32005239055A4310533B07624C1D9B8E71A99D84 +A4977D9F9377A093779F92779E92779E9277A09379A99E848474564E37113C2405382100 +351D00412A095D4B1F9B8E75AFA5919D927B9B8F76A99E88C4C4C4C4CAD9C2C8D5C1C6D3 +C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C1C6D2C1C6D2C2C7D3C3C8D4C3C8D4C3C8D4C2C7D3C3C8D4C4C9D5C4C9D5C3C8D5C4C9D5 +C5CAD4C4C9D4C6CBD6C7CCD7C7CCD7C8CDD8C7CCD8C9CED8CACFD9CBCFDACCD0DACCD1DA +CDD1DBCFD3DDD0D4DDD1D5DED2D6DED3D7DFD5D9E1D6DAE2D8DBE3D9DCE3DBDEE5DDE0E6 +DEE1E7E0E3E8E1E5E9E2E5EAE4E6EBE6E8EDE8EAEEEAECEFEBECF0EDEFF1EDEEF2EFF0F4 +EFF1F3F1F2F5F3F4F5F3F4F6F5F6F8F6F7F9F7F8F9F8F9FAF8FAFBF9F9FAFAFAFBFAFAFB +FBFBFCFBFBFCFCFCFDFDFDFEFDFDFDFEFEFEFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFEFEFEFEFEFFFFFFFEFEFEFDFDFDFDFDFDFDFDFEFDFDFDFDFDFEFCFCFD +FCFCFDFBFBFCFAFAFBF9F9FAF8F9FAF8F9FAF6F7F9F6F7F8F4F5F7F3F3F5F2F3F7F1E5C9 +F1DAA5F3DAA1F4DFB0F2DBA5F0D496F0D495F1D79DF2D9A2F1D9A3F2DBA8F3DCACF3DDAE +F3DEAFF2DBAAF0D8A2EFD6A1F0D7A4F0D8A6F0D9AAF1DBAFF1DCB1F1DEB7F2E0BAF2E2BD +F1DFB9F0DDB5EEDAADEDD6A6EDD6A8EAD29FE3C27ED7A949DBB362E5C88DF0E0BFEFDFBE +EDDBB6E0C282DDBB76D9B367D5AD5ADDBF7FEAD6AFE8D3AAE7D3AAE8D4ACE9D6B1E7D5AE +DCBF85D7B778D7B778D1AD68CDA85EDFC798E3CFA8E2CDA4E2CEA7E3CFA8E4D2AEE6D6B6 +E9DBBFE1CEA9D6BC8BCAA969C19D53BF994DBA9344C09C55D0B682E0D0AFDECDABE1D1B2 +D7C199CBB07CC3A66BC4A66DBB9A5AB28E48AD893EB69756C9B181D5C3A0D6C5A3CBB58A +AD8C4AAD8C49B29458B59860B69A61B3975EAD9052B49761C4AF86C8B58FC4B088C5B088 +CAB894CBBA97D0C1A2C4AF89B59B6CA68A53A88C56A3874E9776368A651D866119B09869 +B8A47BBEAC87BFAD89C5B595CABB9ECCBEA2D1C4AACDC0A59F87548767277D5C18704B03 +6D4800957A45B6A481BFAF8FC5B79BC2B5989A8353866A307656176B4A076D4D0B6C4C09 +6947037F622AB1A17EBBAE90BEB196BAAC8DB9AA8CAA9976917C505F41065D3D01644609 +6B5015674A0F6D531A8B76499F8E6AAD9F80B0A184A08F6D816A3F69501B5D42075E4307 +5336004A2C0054370787744E9D8D6CA6997BA7997BA6987BA99D81ACA0838B7A57725D37 +4F360C4B31014F36055138045037025A43107C69428D7C5AA29579A19478A09377A09377 +9F93779F9378A2967CA2977D9D90758474574F39174028043C2501382100422C06756544 +95886CA0957C9F947C9F947CB8B5ADC2C2C3C2C5CEC1C6D2C1C6D2C2C7D2C2C7D3C2C7D2 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C1C6D2C2C7D3C2C7D3 +C2C7D3C3C8D4C2C7D3C2C7D3C2C7D3C3C8D4C3C8D5C4C9D4C4C9D4C4C9D4C5CAD5C5CAD5 +C6CBD6C7CCD7C7CCD7C8CDD7C8CDD7C9CED8CBCFD9CBCFDACCD0DACCD0DACED2DCD0D4DD +D0D4DED2D6DED2D6DED4D8E0D6D9E1D7DAE2D9DCE4DBDEE5DCDFE6DEE1E7DFE2E8E1E4E9 +E2E4EAE3E6EBE5E7ECE6E8EDE9EBEFEAECF0EBEDF1EDEEF2EEEFF3EFF0F4F0F1F4F2F3F5 +F3F4F6F4F5F7F6F7F8F6F7F8F7F8F9F8F9FAF9FAFBF9F9FAFAFAFBFBFBFCFBFBFCFCFCFD +FCFCFDFCFCFEFDFDFDFEFEFEFDFDFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFDFDFDFEFEFEFDFDFDFCFCFEFCFCFDFBFBFC +FBFBFCFAFAFBF9FAFBF8F9FAF7F8F9F7F8F9F5F6F8F4F4F6F3F4F6F1F0ECF0E2C0F1D698 +F4DEAEF2DBA6F1D598F0D393F0D598F2D8A2F1D9A3F2DBA8F2DCACF2DDAEF2DDAEF1DAA9 +EFD6A1EED59EEFD6A1EFD7A4EFD9A8F0DBAEF0DBB0F1DEB6F2E0BAF2E0BCF1DFB9F0DDB6 +EED9ABECD4A4ECD6A8E7CC92DFBA6DD6A644E0BF79E8D09FEFDFBEEFE0BEE9D4A7DCBA73 +DAB76ED5AE5BD4AE5BE3CA97E8D5ACE7D3A9E8D3ABE9D5AFE8D4ADDFC58FD9BB7DD6B574 +D2AF6AD1AE69D9BE86E2CDA2E2CDA4E1CCA3E2CFA8E3D0AAE4D3B0E7D8BBE9DABFD6BC89 +CAA969C5A25DBD974ABB9345BC964AD4BC8CDCC8A2E0CFAFE1D1B1DAC8A3C6AA73C4A86E +C2A369BFA063B4914BAA8235B4914DD1BD94D3C19BD2C09BD1BE98B7995EAC8B48B29456 +B5985EB79A62B49860AE9155AD8F53C4AE83CDBB98C4B087C5B28BC8B590CCBB9ACEBF9F +CABA97AD925EA78B53A78C55A083489A7C3D856117815B0FA98F5DC2B08EBDAA85C0AE8B +C3B291CABB9DCDBFA3CCBFA3C8BA9DAC976A805F1C7C5A17724E058262229B824FB9A886 +C1B293C4B699AB9870967D4B7B5E207455156C4A076B4B086D4D0B795B1F846932B1A07E +C2B69CBFB196B9AB8EB1A281A28F696C4F165E3F055E3E036B4E136E52186E541A745A23 +9C8A64B1A486AD9E7FAA9A7A9C8A67674D175538005B3F055A3F055236005A3F106A5125 +92815EADA084A99B7FA6987AA7997BA39678867450725C344B3005422700492F00563E09 +59420D644E1E6C572A918261A79B82A5997FA19479A09378A093789F9277A093789E9176 +9A8E7279684949330E4028053A22003E2700543F17786945968A6EA99F88A69C86ACA594 +C0BFBFC4C6CCC4C9D6C4CAD8C1C7D3C1C6D2C2C7D3C1C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C3C8D4C3C8D4C3C8D4C2C7D3 +C3C8D4C3C8D4C3C8D4C4C9D5C4C9D4C4C9D5C5CAD5C5CAD5C6CBD6C7CCD7C7CCD7C8CDD8 +C8CDD8C9CED8CACFD9CACFD9CBCFDACCD0DACDD1DBCED2DCD0D4DDD2D6DED2D6DFD4D8E0 +D4D8E0D6DAE2D8DBE3D9DCE3DBDEE5DDE0E7DEE1E7E0E3E8E0E3E9E3E5EBE4E6ECE5E7ED +E8EAEEE8EAEEEAECF0ECEEF1EDEEF2EEEFF3EFF0F4F1F2F5F2F3F6F3F4F6F4F5F7F5F6F8 +F6F7F9F7F8F9F8F9FAF9FAFBFAF9FAFAFAFBFAFAFBFBFBFCFCFCFDFCFCFDFDFDFEFDFDFD +FEFEFEFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFEFEFEFDFDFDFCFCFEFCFCFDFBFBFCFBFBFCFAFAFB +F9F9FAF9FAFBF8F9FAF7F8F9F5F6F8F4F5F7F3F4F5F2F4F8F2E5CBF2D593F4DDADF3DBA8 +F1D598F0D391F0D395F2D8A1F2D9A3F2DBA9F1DCADF1DDAEF2DDAEF1DBA9EFD6A0EED49D +EFD5A0EED7A4EFD8A7F0DAADEFDBAFF1DEB6F2E0B9F2E0BBF1DEB8F0DDB5EDD8ABEBD4A4 +ECD6A8E5C88BDDB766D5A745E2C485EAD4A6EFDFBDF0E0BFE7CE9EDBB770DAB56CD2AA54 +D5AF5FE6CFA1E8D3AAE7D2A9E7D3ABE9D6B1E6D2AADBBD80D8BA7AD5B370D0AA62D1B16F +DFC99DE2CDA2E1CDA4E0CDA3E3CFA9E4D1ACE4D4B1E8DABEE8D9BCD0B37BC8A562C29D56 +BB9547B99241C09C54DBC8A1DECCA9DFCEADE2D3B6D5BF95C3A56AC3A66CC1A267BE9D5E +B18C43A47D29BC9E61D7C6A3D4C29DD2BF99C7AE80B08F4EAF9050B3975AB6995FB69962 +B3965CAC9053B49963C9B58FC5B18BC4AF86C7B38EC9B793CEBD9ED3C4A7C2AE87A78D55 +AA905AA68A529B7D3F9473327A530288651CBBA881BCA983BDA983C4B290C6B595CBBCA0 +CEC0A4CEC0A5B6A37C967C437B581377540E6D4700977D49BDAB8BBCAB8AC2B495C2B497 +9076417F6022795A1A6F4F0C6948036C4D0A6A4A07886D38A9966FC3B69BBDAF93BCAE93 +B9AB8CAB9976846C3B5434005A3B00684A0C70541D6C50167259218F7B50B2A486AA9C7C +ADA07FA18F6D775E3054370061480B5B3F05503400472A00755E34A49677AA9D7EA69879 +A49678A99B7EB0A387988A6851390D422700482D014930004E3400513802533B0683724C +9E9173A89C839F9277A09377A09378A19377A09478A19479A79A809D9075756343493112 +351B00412900452E034932057A6946B0A792AA9F889E9279A9A08BC8C8CAC5CAD9C1C7D3 +C1C6D2C1C6D1C2C6D2C2C7D3C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C1C6D2C1C6D2C2C7D3C3C8D4C3C8D4C2C7D3C2C7D3C2C7D3C2C7D3C3C8D4C4C9D5 +C3C8D5C4C9D4C5CAD4C5CAD5C6CBD6C6CBD6C6CBD6C6CBD6C7CCD7C8CDD7C9CED7CACFD9 +CBCEDACBCFD9CCD0DACDD1DBCED2DCCFD3DDD1D5DED2D6DFD3D7DFD5D9E1D6DAE2D7DAE2 +D9DCE3DADDE4DCDFE6DDE0E6DFE2E8E0E4E8E1E4E9E4E6ECE6E8ECE6E8EDE8EAEEE9EBEF +EBEDF1EDEFF1EDEFF2EEEFF3F0F1F4F2F3F6F3F4F5F4F5F7F5F6F8F5F6F8F7F8F9F8F9FA +F8FAFBF9F9FAFAFAFBFBFBFCFBFBFCFBFBFCFCFCFDFDFDFEFDFDFDFEFEFEFDFDFEFDFDFD +FDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE +FFFFFFFEFEFEFEFEFEFEFEFEFDFDFEFDFDFDFDFDFEFCFCFDFBFBFCFBFBFCFAFAFBF9FAFB +F8F9FAF7F8F9F6F7F8F5F6F8F4F5F6F2F4FAF1EADAF0D494F2DAA4F2DBA5F0D597EFD392 +F0D394F1D69EF1D8A2F2DBAAF1DCACF1DCAEF2DDAFF1DBAAEFD59FEDD39AEED49EEED6A2 +EFD8A6EFDAACF0DAAEF1DEB5F1DFB8F1DFB9F0DDB5EFDBB1EDD7A9EBD3A2ECD6A8E4C482 +DBB35DD6A848E6CB93EBD6ACEFDFBDEFDFBDE4C891DAB66CD8B367D2A853D9B66EE7D2A7 +E7D3A8E7D2A9E7D3AAE9D7B2E3CC9ED6B875D6B777D1AE69CDA75AD7BA80E3CEA5E1CCA2 +E1CDA4E1CEA5E3D0AAE3D1ADE5D4B4E6D6B7E1CDA8CAA968C6A35DC09A50BB9345B8903F +C9AB6FDECEABDECDAAE0D0B1DFCFAFCCB27EC3A368C2A367BD9D5EB99754AF8A41B4914D +C9B080D5C39FD4C39EC9B286B19152AE8D4CB29558B5995FB69A61B59961AF9155B9A06D +C6B289C5B28AC2AD84C4B087C9B692CBBA97CEBE9ECDBD9CB39A69A98E58AB905CA08247 +9372318B67208F6E2AA58954BFAC87BCA983C0AE89C6B696C9B99ACCBDA1CFC1A7BDAB87 +917439856525785510714E06816122B3A07BBCAC8CBEAE8EC3B597A793688061247C5C1C +71510E6B4A056948037354157E6229AD9C78BEB194C0B398BAAC8FB8AA8CA4926C755923 +67480F5D3E006243066E521771561F7D6431A08E69A89876AB9C7CAA9B7B938059644915 +5D410A5B3E03593D03573A05573C0A71592DA09071A8997BA6987BA6987AA6997B978766 +8774505F471C492E014A2F014C32014E3400573F0B766338877651A09377A2967AA19479 +A09378A19478A09378A093789F92769A8C718E7E615E49264932084B3408473107503B0E +7A6A4695886D9B8F75A0967DABA28EBCBAB8C1C3CAC1C5CFC2C6D2C1C6D2C2C6D2C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C3C8D4C2C7D3C3C8D4C2C7D3C3C8D4C3C8D4C3C8D4C3C8D4C4C9D4C4C9D5 +C5CAD5C5CAD5C6CBD6C6CBD6C7CCD7C7CCD7C8CDD7C9CED8CACED9CACFD9CBCFDACCD0DA +CDD1DBCED2DCCFD3DDD0D4DDD2D6DED3D7DFD4D8E0D6D9E1D7DAE2D8DBE3DADDE4DBDEE5 +DDE0E6DFE2E8E0E3E8E2E5EAE3E5EBE5E7ECE6E9EDE7E9EEE9EBEFEAECF0EDEEF2EEEFF3 +EEF0F3EFF0F4F1F2F5F3F4F6F4F5F7F5F6F8F6F7F8F6F7F9F8F9FAF8F9FAF9F9FAFAFAFB +FAFAFBFBFBFCFBFBFCFCFCFDFDFDFEFCFCFDFDFDFEFEFEFEFDFDFEFEFEFEFEFEFEFFFFFF +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFF +FEFEFEFDFDFDFEFEFEFDFDFDFDFDFEFCFCFDFBFBFCFBFBFCFAFAFBF9F9FAF9FAFBF8F9FA +F6F7F8F5F6F8F4F5F6F3F4F8F1F0EBEFD69BF2D79BF1DAA2F1D497EFD291EFD393F1D59C +F1D8A1F1DBAAF2DCACF1DCAEF2DDAFF1DBABEED49DECD196EDD39CEED6A1EED6A5EFDAAB +EFDBADF0DCB3F1DEB7F0DFB8EFDBB2EEDAAEECD7A7EAD3A1ECD6A8E2C07AD8AE54D6AA4D +EAD2A4EDD9B2EEDEBBEEDEBBE1C286D8B467D7B061D3A956DCBD7CE7D4A9E6D2A8E6D3A9 +E6D3AAE9D8B3DFC591D4B570D6B575CEA960CBA353DDC391E4CFA9E1CCA3E2CDA4E2CEA5 +E3D0ABE3D1ADE6D6B6E2D0ACD9C193C5A25CC4A058BE974BB89241B79140D3BB8CE0D0AF +DDCCA9E3D3B7DCCAA7C4A76CC2A267C0A064BA9857B4904AAE893FC5AA76D1BC94D3C19C +D5C3A0BEA36EA6833CAF8E4EB5995EB79B64B69A62B4985FAD8E51C4AF85CFBE9CC3AD85 +C2AC82C3B188CAB895CDBD9CCDBB9BC2AD85A68A51AB8F5BA98D599A7B3C866119835C11 +AD9463BCA882BDAB86BEAB86C3B290C9BB9DCBBC9ECBBDA1CEC0A6A690607A58117A5611 +74510A714C049F8857C1B293BDAD8DC1B293B8A7848E733D7756157352106B4A046A4802 +664500846A33A28E64C3B79DC1B49ABFB196BAAB8EB8A98A8067345634005C3C00674909 +6B4D116E51187B612E9C8963B3A588AEA081AC9C7D95825B694D1B4E2D00583C02573B00 +4B2B00573A09816E46A29372AD9F83A69679A89A7CAC9F82AA9E80695228452A00472B01 +4A2F004B31004B3000482E00736034A99D83AA9E84A2967AA29479A093789F92769F9276 +A2957AA99E84A3967B736240523C19361C004630004E38075D4A1D7B6C4AA89D869E9177 +9F9379BCB4A6C8C8CBC4CAD9C2C7D4C1C7D3C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C2C7D3C3C8D4C3C8D4 +C3C8D4C2C7D3C2C7D3C2C7D3C3C8D4C4C9D5C3C8D4C3C8D5C4C9D4C5CAD5C6CBD6C6CBD6 +C7CCD7C7CCD7C7CCD8C7CCD8C8CED8CACFD9CBCEDACBCFD9CCD0D9CDD1DBCED2DCCFD3DC +D1D5DED2D6DFD3D7DFD4D8E0D5D9E1D7DAE2D8DBE3DADDE4DBDEE5DCDFE6DFE2E7E0E3E8 +E1E4E9E3E5ECE4E6EBE6E8EDE8EAEDE8EAEEEAECF1EBEDF0EEEFF3EFEFF4EFF0F4F0F1F4 +F2F3F5F4F5F7F5F6F8F6F7F8F7F8F9F7F8F9F8F9FAF9FAFBF9F9FAFAFAFBFBFBFCFCFCFD +FCFCFDFDFDFEFCFCFEFDFDFEFEFEFEFDFDFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFEFEFE +FDFDFDFEFEFDFDFDFEFCFCFDFCFCFDFBFBFCFAFAFBFAFAFBF9FAFBF8F9FAF6F7F9F5F6F8 +F4F5F7F3F3F5F3F4F6EFD9A4F0D391F1D79CF0D495EFD291EFD293F0D59AF0D79FF1DBA9 +F2DCACF2DCAEF2DDAFF1DBAAEED49BECD095EDD39AEED5A0EED6A4EFD9ABF0DAAEF0DDB4 +F1DFB7F1DEB7EFDBB1EED9ADECD6A6EAD2A0ECD6A8DFBC72D5A94BD8AF58EBD7ACEDDAB4 +EFDFBFEDDBB7DEBD7BD8B164D5AD5BD7B165E0C389E8D3A9E6D1A7E7D2A9E7D4ACE9D7B3 +DBBF86D5B470D3B26FCEA960CEAB63DFC89AE2CDA4E1CCA3E1CDA5E2CEA6E3D1ADE3D2AF +E7D8B9DCC79BD1B47BC3A058C19C53BD9549B7903FBC984ED9C49CDFCEADDFCDADDFCEAD +D4BE93C1A366C1A165BD9C5DB69250AE883EB59451D1BC93D2BE97D5C39FD0BD96B39456 +AA8744B09051B5985FB79C64B49860AD8E50B39861C9B68FC7B48DC3AE84C3AD84C6B28C +CCBB9AD1C2A4C1AC84AF9460A88C55A78B54A4874E92712E80590D937131BBA77FBDA983 +BEAB86C2B08DC5B595CBBB9FCDBEA3C9BA9EAF9A6E92763C79570F7350077D5B199C8350 +B29F78C2B394C6B89CAF9C74947B47866A3072520F6C4A056A4803664500735415AA9771 +BAAC8DC0B296BFB195BFB196AD9C7997825665470D5C3C006445076C5013684B0E7D642F +A1906CA99977B2A486B0A2848772486144105B3D07583B00543700533705604414836F47 +A49675A59677A99B7EAD9F82AB9E8186734E6D562E50360A4B30014A2E00482D00492E00 +664F207A663D998B6BA3967AA29579A19478A19478A19479A69A7FA79B819C8F72817051 +655130422A05432B0241290348310A705F3A948769948768A2977FB1AA9ABCB9B5C0C3CB +C2C6CFC2C7D2C1C6D2C2C6D2C2C7D3C2C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C1C6D2C1C6D2C1C6D2C2C7D3C3C8D4C2C7D3C2C7D3C2C7D3C3C8D4 +C3C8D4C3C8D4C3C8D5C4C9D4C4C9D4C4C9D4C4C9D5C5CAD5C6CBD6C6CBD6C7CCD7C7CCD7 +C8CDD7C8CDD7C9CED8CACED9CBCFD9CCD0DACCD0DACDD1DCCFD3DCD0D4DDD2D6DED2D6DF +D4D8E0D6D9E1D6DAE2D8DBE3D9DCE3DBDEE5DDE0E6DDE0E7DFE2E8E1E4E9E2E4EAE4E6EB +E5E7ECE7E9EDE8EAEEEAECF0EBEDF1ECEEF1EEEFF3EFF0F3F0F1F4F1F2F5F3F4F6F4F5F7 +F4F5F8F6F7F8F7F8F8F7F8F9F9F9FAF9F9FAFAFAFBFAFAFBFBFBFCFCFCFDFCFCFDFCFCFE +FDFDFDFDFDFEFEFEFEFDFDFDFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFEFEFE +FDFDFDFCFCFEFCFCFDFBFBFCFBFBFCFAFAFBF9F9FAF8F9FAF7F8F9F6F7F9F5F6F8F4F4F5 +F3F6FCF0DFBBEFD088EFD393F0D497EFD394EED292EED395EFD69DF1DAA9F2DCACF1DCAC +F1DCACF0D9A6EDD299ECD094EDD29BEDD49FEED6A3EFD8ABEFD9AEF0DCB3F0DDB6F0DCB5 +EED9AEEDD7ABEBD4A4EAD2A1EAD3A3DBB461D3A33FDEBA71EEDCB7EDDBB6EFDEBDE9D3A7 +D8B368D4AC5AD3AA57E0C48AE5CE9FE7D2A7E6D1A7E7D2AAE9D8B4E5D1A7D7B575D4B370 +CEAA62CFAE68DBC18DE2CCA2E2CBA2E0CCA3E1CEA7E2CFA9E3D2AFE4D4B3E4D5B3CFB277 +C5A35EC09C52BE984DB99244C09E59CDB27CDFCDACDECDACE0CFB0CFB786C6A970BF9F61 +BA9A5AB79451AE873DAD873CC8B080D5C39FD2BF99D0BC96BDA26CAB8844B19254B29458 +B4975FB49860B1945BB0945AC6B188C7B48EC2AC82C4B088C7B48ECAB894CCBC9BC9B895 +AA8F58A18448A68A529E804598783988631AA2864FB6A075C0AD89BDAA85C3B18FC7B898 +C9BA9CCCBDA1CCBFA4A9926482621F7D5B166F4B0174510AA89164C1B191C0B192BCAB8A +AF9B73886D347C5E207A5A1B6E4C096A49047455157E6126AA9771C5B9A0C2B59BBCAE91 +BCAD91A795706E52195F40055C3C006345046A4D107B622D87703FA99877B1A283AC9C7C +97845D7D66395435005435005639015639005A3F0B89754FA89A7AAA9D7FA99B7DA89B7D +A09171958562705A31482C00462A00492F004A3000513705735E3386744DA39678A89C81 +A5987DA19478A19478A09378A19479A093788E7F617D6C4C4E36133C21003F25024E3816 +634F2B85755592856AA0947BA9A08BAFA899C4C5C9C6CBD7C4C9D6C2C7D5C1C7D3C1C6D2 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C1C6D2C2C7D3C2C7D3C2C7D3C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C4C9D5C3C8D5 +C4C9D5C5CAD4C5CAD5C5CAD5C5CAD5C6CBD6C7CCD6C7CCD7C8CDD8C8CDD7C9CED8CACFD9 +CBCFD9CBCFDACCD0DACDD1DBCED2DCCFD3DDD1D5DED2D6DED4D8DFD4D8E0D5D9E1D8DBE3 +D8DBE3DADDE4DBDEE5DDE0E6DFE2E8DFE2E8E2E4EAE3E5EBE4E6ECE6E8EDE7E9EDE9EBEF +EAECF0ECEEF1EDEFF2EDEFF2F0F1F4F1F2F5F2F3F5F3F4F6F4F5F7F5F6F8F6F7F8F7F8F9 +F8F9FAF8F9FAF9FAFBFAFAFBFBFBFCFBFBFCFCFCFDFCFCFDFDFDFEFDFDFDFDFDFEFEFEFE +FDFDFEFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFEFEFEFEFDFDFDFCFCFE +FCFCFDFCFCFDFBFBFCFAFAFBF9F9FAF9FAFBF8F9FAF6F7F9F5F6F8F4F4F5F3F6FCF0E3C4 +EFD089F0D291EFD497F0D395EED293EED395EFD69DF1DAA9F2DCACF1DBABF1DAABEFD8A4 +ECD297ECCF94ECD29BECD49FEED6A3EED8AAEFD9ADF0DCB1EFDCB4F0DBB3EED9ADEDD7AB +EBD4A4EAD2A1E9D1A0DAB25CD3A23CE0BF7BEEDCB8EDDBB6EEDDB9E7CF9ED7B163D2A955 +D3AB5AE3CA97E5CFA3E5D1A5E6D1A7E7D3AAEBD9B7E4CDA0D5B370D3B16FCCA75CD2B270 +E2CCA1E2CBA2E2CCA3E0CCA3E1CEA8E3D0AAE4D2AEE6D5B4E3D1AFC9A96AC29F58BF9950 +BE974DB89041C7AA6CD6C092DECDABE0CFAFDFCFAEC7AB73C2A466BF9F61B89654B5914C +AA8132B18E48D0BB93D2BF98D3C09AC9B286B49658AC8A48B4965AB2955AB3965EB1955B +B1945ABCA574CCBA96C4B089C2AC83C5B18AC9B692CCBB99CAB997BEAA81A3864CA4884E +A3874C9B7B3C906D298A6620BAA57DBEAB85BDAA83BFAC87C5B494C8B99ACABB9DCFC2A9 +CABC9F94763C7D5B167956116740007F5F21BBAA86BBAC89C5B699B19E789379457F6225 +7C5F217655156E4B086948037F63289C8659C0B295C2B499C0B297BDAF92BEB0938D7645 +5837005C3A01604000634605694C0F927D51A69673B2A486B3A587A898776D531F593C09 +553700583B00533501523400725A2CAC9E80AB9D7EA99B7CAA9C7FAFA3878F7D59664D23 +4C3005492E004B3000472C00442900614A18A19274AFA288A5987BA19476A19478A29579 +A3967AA6997FA99D849B8E715F4B26452E0D3317003D22004C340E7C6B4A938568A79B80 +9D9175A59A82BCB8AEC3C5C8C2C8D7C1C5D1C1C6D2C1C6D2C2C7D2C2C7D3C1C6D2C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C1C6D2C1C6D2C2C7D3 +C3C8D4C3C8D4C2C7D3C2C7D3C2C7D3C3C8D4C4C9D5C4C9D5C3C8D4C3C8D4C4C9D4C5CAD5 +C5CAD5C5CAD5C5CAD5C6CBD6C6CBD7C7CCD7C7CCD7C8CDD7CACFD9CBCEDACBCFD9CCD0DA +CDD1DBCED2DCCFD3DCD0D4DDD2D6DED3D7DFD4D8E0D5D9E1D6DAE2D8DBE3D9DCE3DBDEE5 +DCDFE6DEE1E7DFE2E8E0E3E9E3E5EAE3E5EBE5E7ECE6E8EDE7E9EEEAECF0ECEEF0ECEEF1 +EDEEF3EEEFF3F1F2F5F2F3F6F2F3F6F4F5F6F4F5F7F6F7F9F7F8F8F8F9FAF9FAFBF9F9FA +FAFAFBFBFBFCFBFBFCFCFCFDFCFCFDFDFDFEFCFCFDFDFDFEFEFEFEFDFDFEFDFDFDFEFEFE +FFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFEFEFEFDFDFDFCFCFEFCFCFD +FBFBFCFAFAFBFAFAFBF9FAFBF8F9FAF7F8F9F6F7F9F4F5F7F4F5FAF1EBDEEFD08CEFD18E +EFD293EFD293EED292EED295EFD59DF1DAA9F2DCACF1DBABF1D9A8EFD6A2ECD197EBD094 +ECD299EDD39CEDD5A1EED8A9EFD9ACEFDBB1F0DCB3EFDCB2EDD8ACECD7AAEBD4A3EAD3A3 +E9D09ED7AD54D2A13CE3C68AEEDCB8EDDBB6EAD6ACE2C78DD4AD5BCFA54CD6B267E6D0A3 +E6CFA4E6D0A4E6D2A9E7D3ACE9D6B3DFC592D3B16ED2AE6CCDA75DD9BE86E2CEA5E0CBA1 +E1CCA2E0CCA3E2CFA9E3D0ABE4D3B1E7D7B8DBC499C3A059C19D54BD964BBB9346BC964B +D5BE90DCCAA6DDCCA9E0D0B0D6C198C1A366C0A164BB9A5AB5914DB08A41B08C43BFA36A +D2BE98D3C19BCDB88EB39454AF8E4CB19254B4975CB3955BB09257AC8D50BCA271CDBA97 +C9B690C3AF86C2AD84C6B38CC8B793CDBC9BB9A275AB8F59A3864CA3864D9B7D3E8B6820 +866117A68C56C0AC87BCA883C0AD89C2B18EC8B898CABB9ECBBC9FC4B495AC9568805E1A +78550F78550E8A6C30A58F61BFAF8FC0B191B9A88591774181642777581771510D71500D +7454147A5D1FA9956FBFB295C0B296BFB195BFB195A6946E90794C67480D5E3E00624304 +6B4E127A5F2A8F784CAF9F80AF9F80A696748F7B52735A29553700583A03593C03593C07 +6E5527978562A29271A99A7CA8997BA697789F8F6F86724C553B0C4C30034D31024D3203 +4D33046852267D6A429C8D6EA5987BA39678A39578A29578A19478A29579A193778B7C5D +7C6A4A533B173F25024129065F4A2883735494876DAAA18BAAA08DB6B1A8BDBDBBC2C4C7 +C1C6D0C1C5D0C2C6D2C2C7D3C2C7D2C1C6D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C2C7D3C3C8D4C2C7D3C2C7D3C2C7D3 +C2C7D3C3C8D4C3C8D4C3C8D4C4C9D5C4C9D4C4C9D5C4C9D4C5CAD5C5CAD5C6CBD6C6CBD6 +C6CBD6C8CDD7C8CDD7C8CDD8C9CED8C9CED8CBCFDACCD0DACCD0DACDD1DBCED2DCCFD3DD +D0D4DDD2D6DED3D7DFD4D8E0D5D9E1D6DAE2D8DBE3DADDE4DADDE4DCDFE6DDE0E6DFE2E8 +E1E4EAE2E4EAE4E6ECE6E8EDE6E8EDE9EBEFE9EBEFEBEDF1EDEEF2EDEFF2EFF0F3EFF0F4 +F2F3F5F3F4F6F4F5F7F5F6F8F5F6F8F7F8F9F7F8F9F8F9FAF9FAFBF9F9FAFAFAFBFBFBFC +FBFBFCFCFCFDFCFCFDFDFDFEFDFDFDFDFDFEFEFEFEFDFDFDFEFEFEFEFEFEFFFFFFFEFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFEFEFEFDFDFDFCFCFEFCFCFDFBFBFCFBFBFC +FAFAFBF9FAFBF8F9FAF7F8F8F6F7F9F5F6F8F4F6F9F3F2EFEDD08DEED08DEFD292EFD192 +EED292EED295EFD69DF1DBAAF2DCACF1DBABF1D9A8EFD6A1ECD096EBCF94ECD199EDD39C +EDD4A0EED8A8EFD9ABEFDBB1F0DCB3EFDCB2EDD8ACECD6A9EBD3A2EBD3A4E9CF9DD5AA4D +D1A23DE6CC97EDDBB8EDDBB7E6D0A2DEC081D3AB58CDA347D9B871E7D2A7E6CFA2E6D0A5 +E6D2A9E7D4AEE6D3ABDCC089D2AF6CD1AD69CDA75EDEC696E2CEA5E0CAA0E1CCA1E1CCA4 +E2CFAAE2D0ACE4D3B2E7D8BAD5BB88BF994FC09A50BC9549B99142BF9D56DCCAA4DECDAB +DDCCAADECDABCFB787BF9F5FC0A164B79553B08D45AA8538BB9D5FCAB282D2BE97D6C4A1 +C6AE7FA68339AC8B47B3965BB3955EB4965DAD8F51A98849C6B087D1BE9FC6B38CC2AE84 +C3AF86C7B48FCAB896CCBB9AAC9059A18144A3874DA083489575327D560786621ABBA77E +BDAA85BCA982C4B18FC6B494C8B99BCBBC9FCDBFA4B39D7394773D76530A6F4B007C5C16 +B09C74B9A783BFB091C6B89DA791658164257D602071500D6D4C076B48047C6024967F4F +C0B397C4B79DC0B296BFB296C1B398866D3B6142045C3C0162420366460770551C9E8A64 +AD9E7EB0A283B3A58797855F593B025637005739005435005537056E5423978561B2A688 +A99B7BAA9B7DB2A589A29373755F35573B0E492C004F34014629004E33065F47169A8B6C +B0A48AA89B7FA39578A39577A19477A19477A79B7FA99C81998B6F543C153D2100341802 +351B00482F0D968667B3A990BDB6A7C8C6C3CBCDD0C5CBD9C2C7D5C2C7D4C2C7D3C2C7D3 +C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C1C6D2C1C6D2C1C6D2C2C7D3C3C8D4C3C8D4C3C8D4C2C7D3C2C7D3C2C7D3C3C8D4 +C4C9D5C3C8D5C3C8D5C4C9D4C5CAD4C4C9D4C5CAD5C5CAD5C6CBD6C7CCD7C7CCD7C8CDD8 +C9CED7C9CED8C9CFD9CACED9CCD0DACDD1DBCDD1DBCED2DCCFD3DCD0D4DDD2D6DFD3D7DF +D4D8E0D5D9E1D7DAE2D8DBE3D9DCE3DBDEE5DCDFE6DDE0E6DEE1E7E0E3E9E2E4EAE3E5EB +E5E7ECE6E8EDE8EAEEEAECEFEAECF0ECEEF2EEEEF3EEEFF3EFF1F3F0F1F4F3F4F6F4F5F7 +F4F5F7F6F7F9F6F7F8F7F8F9F8F9FAF9F9FAFAF9FAFAFAFBFBFBFCFBFBFCFBFBFCFCFCFD +FDFDFEFCFCFDFDFDFEFEFEFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFEFEFFFFFFFEFEFEFEFEFEFEFEFEFDFDFDFDFDFEFCFCFDFBFBFCFBFBFCFAFAFBF9F9FA +F8F9FAF7F8F9F6F7F9F5F6F7F4F5F8F2F1EFEED8A6EED394EED18FEED191EED192EED294 +EFD59BF0D9A7F1DBABF0DAAAF0D8A7EED6A1ECD196EBCF93EBD097ECD29AECD4A0EDD7A7 +EED8AAEFDAB0EFDBB2EEDBB2EDD8ACECD6A8EAD2A1EAD3A4E6CC96D4A545D3A545E8D0A1 +EDDBB6EDDCB8E3C890DBB973D2A953D0A851DDBF81E7D2A7E5CEA1E5D1A7E7D3ABE8D6B1 +E1C99AD9BB80D1AE68CDA65CD1AF6AE1CA9FE0C99EDFC99DE0CBA1E0CCA5E3D0ACE3D1AE +E4D3B2E6D4B5CDAF73BE984DBE984DB99344B68D3CC8AA6FDECEABDDCCA8DFCEAED1BA8D +C6AA73BD9D5EBD9D5EB5914CA98132AE8940CAB385CFB98FD1BD96D0BC94B89B60A88640 +AF8F4EB4975DB59760B09257B0945ABBA271CBB993C9B790C4B088C4AF87C4B189C9B794 +CFBF9FBDA87EA38549A4864BA082469C7E4189661D906F2CA68B56BEAA85BDAA84C0AE8A +C7B797C9BA9BCBBC9FCFC1A7C0AE8C91723782601C734F057D5D199F8654BBAA87BEAE8D +BBAA89A48E6290753E7E5F217756156B4A05664400725212A49167B8A988C0B195C1B397 +C3B69CB0A07D99845868480D5F3F025E3D006243036B4E1097835AB1A283B1A283AC9C7C +9D8B65684C17583901563802523400593C05857045A29372A59676AB9C7EAFA184A0906F +87744E6B52285135064F3303472B00472A005A41148D7C599F9071A5977BA5987BA39679 +A39679A5987CA99C80AA9D8394866958411C452B06402503462C08634E2E958B76A69E8E +BFBEBCBEBFC3BFC2C9C1C5CFC2C6D0C1C6D2C1C6D2C1C6D2C1C6D2C1C6D2C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C3C8D4C2C7D3C3C8D4C3C8D4C3C8D4C3C8D5C3C8D4C4C9D5 +C4C9D4C5CAD5C5CAD5C5CAD5C6CBD6C6CBD6C7CCD7C7CCD7C7CCD7C9CED8C9CED8CACED9 +CACED9CBCFD9CDD1DBCDD1DBCED2DBD0D4DDD0D4DED2D6DED3D7DFD3D8E0D5D9E1D6DAE2 +D8DBE3D8DBE3DADDE4DCDFE6DDE0E6DFE2E8DFE3E8E1E4EAE3E5EBE4E6ECE6E8EDE7E9EE +E9EBEFEAECF0EBEDF0EDEFF2EEEFF3EFF0F4F0F1F4F1F2F5F3F4F6F4F5F7F4F5F8F6F7F8 +F6F7F9F8F9FAF8F9FAF9FAFBFAFAFBFAFAFBFBFBFCFBFBFCFCFCFDFCFCFEFCFCFDFDFDFE +FDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFEFEFEFEFEFDFDFDFEFCFCFDFCFCFDFBFBFCFAFAFBFAFAFBF9F9FAF8F9FA +F7F8F9F5F6F8F5F6F8F3F3F3F1E8D5EFD8A5EDCF8BEED192EED192EDD295EED499F0D8A4 +F0D9A7EFD9A7F0D8A5EED59FEBCF94EACE91EBCF94EBD097EBD29CEDD5A5EED7A9EED9AD +EFD9B0EED9AFECD6AAECD4A7E9D09EE9D2A2E3C588D2A342D8AE5BEBD7AFEDDBB6EBD9B2 +DBBA74D6AF5FD1A751DBBA78E2C997E6D0A3E5CFA1E6D2A9E8D6B1E6D3ACD7B97BD4B473 +CFAA62C9A354D9BE87E1CCA3DEC89BDFCA9FE0CBA1E1CEA7E3D1AEE5D4B2E0CCA6D7BE8E +C29E57BC9446BA9244B99244BB964DD8C299DFCEADDFCFADD8C59FC0A365BD9E5FB99855 +B6944FAD873BAB8439C0A36BD2BF99D1BD95CCB68CB49454AC8B47AE8E4EB19356B3965E +B2965CAE9155C1AA7DD0BF9DC8B48EC3AF85C4AF87C6B38DC8B691C9B895C5B28CA68950 +9F8144A2854A94743289661E8C6A24B9A479C0AE88BEAB85C4B391C7B797CBBD9FCDBFA2 +C8B99CAE986C917439765108734D028C6D30B6A480BCAB89C1B192BFB0909A814F7F6021 +7F61237454126C4A046D4C08775719A48F65C2B59AC0B295BDAF92BFB296AA9772715319 +6140035F3E016040006546078A74439F8D66B4A688AE9E7E9D8A646B4E1C5D3F0B543600 +5437005E420D816A3C96845DAFA284AB9D7DAA9B7CA293738F7C575C42144A2C004B2E00 +4A2D004E3303725B32897753A49679AEA287A99C81A5987BA39679A69A7DA296799C8E71 +7F6D4C6C58345A441F685741756652999186A9A5A0C6C8CEC9CFDBC8CEDCC2C8D6C2C8D5 +C2C7D4C1C7D3C1C6D3C1C6D2C2C7D3C1C6D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C1C6D2C2C7D3C2C7D3C1C6D2C2C7D3C2C7D3C2C7D3C3C8D4C3C8D4 +C3C8D4C3C8D4C2C7D3C3C8D4C3C8D4C4C9D5C3C8D5C4C9D5C4C9D4C5CAD5C5CAD5C5CAD5 +C6CBD6C6CBD6C7CCD7C7CCD7C8CDD7C8CDD8C9CED8CACFD9CACED9CBCFDACCD0DACDD1DB +CED2DCCFD3DDD0D4DDD2D6DED2D6DFD3D7DFD4D8E0D6D9E1D8DBE3D8DBE3DADDE4DBDEE5 +DCDFE6DEE1E7DFE2E8E1E4E9E2E4EAE4E6EBE5E7ECE6E8EDE8EAEEEAECF0EBEDF0ECEEF1 +EDEFF2EFF0F4F0F1F4F1F2F5F2F3F6F3F4F6F4F5F7F5F6F8F6F7F8F7F8F9F8F9FAF9FAFB +F9F9FAFAFAFBFBFBFCFBFBFCFCFCFDFCFCFDFCFCFEFDFDFEFDFDFDFEFEFEFEFEFEFDFDFD +FEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE +FDFDFDFEFEFDFDFDFDFDFDFEFCFCFDFBFBFCFBFBFCFAFAFBF9F9FAF8F9FAF7F8F9F6F7F9 +F5F6F9F3F3F3F0EBE3EEDAAAEDCF8AEED192EDD192EDD295EED49AF0D7A3EFD9A6EFD8A6 +F0D8A5EED59EEACE93E9CD90EBCE94EBD097EBD19BECD5A5EED7A8EED9ACEFDAAFEDD9AE +ECD6A9EBD4A6E9D09DEAD2A1E2C483D2A444D9B364ECD8B1EDDBB6EAD6ADD9B66DD4AC5B +D1A752DFC389E4CB9BE5CFA2E5CFA2E7D3ABE9D8B4E5D1A7D5B573D3B26FCEA960CAA558 +DCC391E0CBA2DEC89CE0CAA0E1CCA3E2CFA8E3D2AEE5D5B4DDC89FCFB378C19B51BB9244 +B8903FBA9447C2A05DDBC9A4DECDAAE1D1B1D3BE92BE9F5FBD9D5EB79551B49049A98132 +B69351C8AF7FD1BC96D2BE97C7B081A9843DAC8A47B19253B29458B2955DAF9356AF9258 +CAB790D0C09DC6B089C2AD83C4B088C7B48FCBB996C7B490B9A174A18345A082459F8245 +8E6B267F580A997B3EC1AF8ABDAA83BFAD88C7B797C8B99BCBBC9FCEC0A5C5B69692753A +805E19714C00724D02A38B5BC2B394BEAD8CC6B89CB9A885896C328060237D5E1F704F0C +654200735314937A48B8A887BFB196BCAE91BEB094C2B49A8D75445D3A00603F01603F01 +5D3B00715519A99976B5A789B1A384A3936F836B3C523100553600553701553800715827 +A99878AC9D7EAA9C7DAFA284A99B7C8D7B55695123482A004D31014A2E00472A005D4315 +9E8F6EB5AA91ADA187A5977BA4977AA29578A39678A3967893836185724E5B451F49310A +6F5D3EB8B5B0C2C2C3CCD2E0C5CCDBC1C6D3C0C5D1C0C5D1C1C6D2C1C6D2C1C6D2C2C6D2 +C2C7D2C2C7D3C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C1C6D2C2C7D3C1C6D2C1C6D2C2C7D3C2C7D3C3C8D4C3C8D4C2C7D3C2C7D3C2C7D3C3C8D4 +C3C8D4C3C8D4C4C9D5C3C8D4C4C9D5C4C9D4C5CAD4C5CAD5C5CAD5C6CBD6C6CBD6C7CCD7 +C7CCD7C8CDD8C8CDD7C9CED7C9CED8CBCFDACBCED9CCD0DACDD1DBCDD1DBCFD3DDD0D4DC +D1D5DED2D6DFD3D7DED4D8E0D5D9E1D7DAE2D8DBE3D9DCE3DBDEE5DCDFE6DDE0E6DFE2E8 +E0E3E8E2E4EAE3E5EBE4E6EBE6E8EDE7E9EEE9EBEEEAECF1EBEDF1ECEEF1EDEFF3F0F1F4 +F1F2F5F1F2F5F3F4F5F3F4F6F5F6F8F6F7F9F7F8F9F8F9FAF8F9FAF9FAFBFAF9FAFAFAFB +FAFAFBFBFBFCFCFCFDFCFCFDFCFCFDFDFDFEFEFEFEFDFDFEFDFDFDFDFDFDFEFEFEFFFFFF +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFD +FDFDFDFCFCFEFCFCFDFBFBFCFBFBFCFAFAFBF9F9FAF8F9FAF7F8F9F6F7F8F5F6F8F4F4F5 +F2F5F9EFDEB9EDCE88EED192EED296EDD397EED49CF0D8A5F0D9A7EFD7A5EFD6A2EDD39D +EBCE93E9CD90EACE92EACF95EBD19AECD5A3EDD7A5EED8ABEDD9AFEDD8AEEBD5A6EBD3A2 +E8CE9AE8D19FDFBE78D5AA51DFBF7CECD9B3ECDCB7E6D0A1D6B061D1A752D3AD5FE4CD9D +E4CE9FE5CEA1E5D0A4E6D3ACEAD9B7DFC896D2B06CD0AD66CCA65BD5B77BDEC799DFCAA0 +DFCA9EE0CBA2E0CDA6E2CFAAE3D2B0E5D5B6D4BA87C3A05ABD964AB8903FB58C38C2A25F +D2BA8BDCCAA5E0CFAFDFCEAEC7AD76BD9C5CBC9B5BB4914CAD873CAC873DCCB587CFBA91 +D2BE98D1BE96B6985BA98540AE8D4DB29458B3955AB1945AAB8B4DBFA779CEBD9AC8B58F +C4AF86C3AD83C5B28ACBBA97CFBF9FB7A071A28448A083459B7C3C9473318661178B6821 +B6A074BEAB85BDA983C5B493CABC9ECBBD9FCCBEA1CEC1A6A78E5F7D591176520977530B +92753BBBAA88C0B090C0B191AC9870947A467E5F207A5B1A73520D6F4E0A7152109E895B +BCAD8EBDAE90BEB093C1B499AA97728C744268480B603F005D3C006C4E137E6531A79774 +B8AA8CB4A5878F7B5064470F5D3F075536005435007259289A8863A49373AB9C7EAD9F81 +A597778D7A5371592D5135014F32014C2F025034056C54298E7B579F9070AA9E82A6997C +A39477A09172A29474A6987BA69A7E9C8F75938873948A79AEACA8BEBFC1BEC2CCC0C4D0 +BFC3CFC0C4CFC0C5D0C1C6D2C2C7D3C2C7D3C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2 +C2C7D3C2C7D3C3C8D4C3C8D4C2C7D3C3C8D4C2C7D3C3C8D4C3C8D4C3C8D4C4C9D5C3C8D4 +C4C9D5C4C9D5C4C9D4C5CAD5C5CAD5C6CBD6C6CBD6C6CBD6C7CCD7C7CCD7C8CDD8C9CED8 +C9CED8CACED9CACFD9CCD0DACCD0DACDD1DBCED2DCCED2DCD0D4DDD1D5DED2D6DED4D8E0 +D4D8E0D6D9E1D7DAE2D8DBE3DADDE4DBDEE5DCDFE6DDE0E6DFE2E8E1E4E9E2E4EAE3E5EB +E4E6EBE6E8EDE8EAEEE8EAEEEBECF0ECEEF1ECEEF1EEEFF3EFF0F3F1F2F5F2F3F5F3F4F6 +F4F5F7F4F5F7F6F7F9F7F8F9F7F8F9F8FAFBF9F9FAFAFAFBFAFAFBFAFAFBFBFBFCFBFBFC +FCFCFDFDFDFEFCFCFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFEFEFEFDFDFE +FCFCFDFCFCFDFBFBFCFAFAFBF9F9FAF9FAFBF8F9FAF6F7F9F6F7F8F4F4F6F3F4F8F2ECE1 +EDD190EDCF8DEED297EED49AEED59EF0D8A4F0D8A6EED6A3EED5A0EDD29BEACE92E9CD90 +E9CD90E9CD90EAD099ECD4A3EDD6A6EDD8ACEED9AFECD7ABEAD2A2E8D09DE7CC97E5CA93 +DAB466DAB568E5CC97EBD8B0EBD8B2E1C58BD1A752CFA34ADAB975E5D0A2E3CC9EE5CFA3 +E6D1A7E7D4AEE6D3AED8BA7FCFAB64CCA559CFAD67E1CBA0DFC89BDFC99EDFCAA1E0CDA4 +E1CEA7E2D1ACE3D3B2E1D0ADC6A461BC9447BA9345B48C39B68D3DD2BA8BDFCEABDDCBA8 +DDCCABD4C095BD9D5EB99755B5934EAB8437A77E2EC0A46CD4C09AD0BC95D3C19CC4AC7A +AA8641AD8C4BB09052B2945AB19357B09358BCA374CDBB96C9B791C3AF85C3AF85C5B088 +CAB895CBBA98C2AF88A3864A9E7F409C7D3E8D6923835B0E9C7E42B8A377BFAC85C0AD88 +C3B28EC9BA9CCCBEA1CBBD9FC8B99BB6A27A805E196F4B007C5A14AD966BB9A682BFAF8F +C4B496AA93697F60217A591873510E714E0C684500917844B2A27FBCAE8FBEAF90C1B498 +BAAB8CAA97706E50145C3A00624000604002694A0EA4916AB8AA8DB9AC909C8A63846D3D +593B025534005637006D5220856E43AC9E80AE9F80AD9E80A89A7B978561654A1B4E3100 +4C2F004A2C005236077F6A429B8B6AA6987BAD9F83A29474A39576A79A7CAFA48CBBB6AC +B7B4ADC0C0C1BCBDC1BFC2C9C8CEDDC7CDDCC5CBD9C2C8D6C2C7D4C1C6D2C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C1C6D2C2C7D3C2C7D3C3C8D4 +C2C7D3C3C8D4C3C8D4C2C7D3C3C8D4C3C8D4C4C9D5C3C8D5C4C9D5C4C9D5C4C9D4C5CAD5 +C5CAD5C5CAD5C6CBD6C7CCD6C7CCD7C7CCD7C8CDD8C8CDD7C9CED8CACFD9CACFD9CBCFD9 +CCD0DACDD1DBCDD1DBCED2DCCFD3DCD0D4DDD2D6DED2D6DED4D8E0D6D9E1D7DAE2D8DBE3 +D8DBE3DADDE4DCDFE6DCDFE6DEE1E7DFE2E8E1E4E9E3E5EBE4E5EBE5E7ECE6E8EDE8EAEE +EAECF0EAECF0ECEEF1EDEFF2EEEFF3F0F1F4F1F2F5F2F3F6F3F4F6F4F5F7F5F6F8F6F7F8 +F7F8F9F8F9FAF8F9FAF9FAFBF9F9FAFAFAFBFBFBFCFBFBFCFCFCFDFCFCFDFDFDFEFCFCFD +FDFDFEFEFEFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFEFEFEFDFDFDFDFDFEFCFCFD +FBFBFCFAFAFBF9FAFBF9FAFBF8F9FAF7F8F9F6F7F8F4F5F7F3F4F7F3F2F0ECD39AECCE8D +EED195EFD49BEED59EEFD8A4EFD8A6EED6A4EED59FECD299EACD91EACC90E9CC90E8CC8E +EACF97ECD4A4EDD6A7EDD8ACEDD8AEECD6ABE9D2A1E8CF9BE6CC96E3C78CD9B362DDBA72 +E7CF9EEBD7AFEAD5ACDFC183D0A54DCFA34ADCBD7EE4CD9EE3CB9CE5CFA4E6D1A7E7D4AE +E3CDA2D5B678CFA962CAA354D2B372E2CDA4DFC89ADFC99FDFCAA1E1CDA6E2CFA8E3D1AD +E2D2AFDECAA3C29D56BC9448B99243B58B39B99245D7C298DECCAADECDABDAC7A1CEB786 +BC9A5AB69451B39049A57C29A87E2FC8AE7ED2BE97D1BD96CEBA92BCA068A98540AF8F50 +B19255B2955AAF9053B2965DC9B58ECDBB97C6B38CC2AE84C4AF87C6B28BCDBC9BC6B38E +B69E6EA08244A08144997837855F1381590BAD9361C1AE88BDAA83C3B18EC5B493CABB9D +CBBD9FCCBEA1BCA984A28855775209704D008B6E31BCAA87BDAC89C0AF90B9A683997F4D +7C5B1B7857156E4B056A45006E4D09A7946BBFB296BCAE8FBCAD8FC5BAA0AA98738A703D +6241016240025D3A006E5015856C38B4A586BDAF94AE9F7E7E6634684C15553500563600 +61440E8D784FA1906DB0A284AFA082AB9C7E9280597861344E30004A2C004E3101563A0B +6850239A8A66AB9D7EA59676A59676A99D80B1A893B6AD9CBBB6ACC8CACEC1C5CCC5C9D6 +C2C8D7C2C8D5C0C5D0C0C5D0C1C5D1C1C6D2C1C6D2C2C7D3C1C6D2C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C1C6D2C1C6D2C1C6D2C2C7D3C2C7D3C2C7D3C3C8D4C2C7D3C2C7D3C2C7D3 +C3C8D4C3C8D4C3C8D4C4C9D5C3C8D4C4C9D5C4C9D4C5CAD4C5CAD5C5CAD5C6CBD6C6CBD6 +C6CBD6C7CCD7C7CCD8C8CDD7C9CED8C9CED8CACED9CBCFDACBCFD9CCD0DACCD0DACED2DC +CED2DCCFD3DDD0D4DDD1D5DED3D7DFD3D7DFD5D9E1D6DAE2D7DAE2D8DBE3D9DCE4DBDEE5 +DDE0E6DDE0E7DFE2E8E0E3E8E2E4EAE4E5EBE4E6EBE6E8EDE7E9EEE8EAEEEBECF0EBEDF1 +EDEEF1EEEEF3EEEFF3F1F2F5F1F2F5F3F4F6F4F5F7F5F6F8F6F7F9F6F7F8F7F8F9F8F9FA +F8F9FAFAF9FAFAFAFBFBFBFCFBFBFCFBFBFCFCFCFDFCFCFDFDFDFEFDFDFDFEFEFDFEFEFE +FDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFEFEFEFDFDFDFCFCFEFCFCFDFBFBFCFBFBFC +FAFAFBF9FAFBF8F9FAF7F8F9F6F7F9F5F6F8F4F5F6F3F3F6EFE8D9EDD9ADECCE8DEFD59F +EFD6A1EED8A5EED9A8EED7A4EDD59EEBD095E9CC90E9CD91E9CC90E8CB8EE9CE95EBD5A5 +ECD6A8ECD6AAECD7ABEBD5A8E8CF9CE7CC96E6CC96DEBF7BD7AF5AE2C489EAD5ABEAD5AD +E3C892DAB56ECB9D40D0A651E0C590E2CA99E3CB9CE5D0A6E7D2ABE6D3ACD9BA7FD1AF6B +CBA557C9A254DBC18EDFCB9EDEC99BE0CBA0DFCBA2E1CDA7E1CEA9E4D3B3DBC599CEB075 +BC9446BA9345B58D3ABD994FC9AC72DCCAA6DBC9A5DECDACCBB17CC1A265B99756B28E46 +AB8438A57D2CB79654D1BD95D2BE98D2BD96B69A5DAD8C49AC8A48B29154B29358B29459 +AF8F53C4AD82D0C09EC8B48EC3AE85C2AE84C6B28CCAB895CDBD9CB09661A081419E7E3F +9A7A3B8863198E6B26A48851BFAD87BEAA84C2B08CC8B898C9B99AC9BA9CCBBDA0BFAD8A +8665227650067C5A14A68E5EB6A47DBFAF8FC1B192AB966C896B3180602273510C6D4B05 +6B49057857179F895BBFB294BDB092BEB193C2B49AAB99746E4E125F3C006341035F3C00 +765A22AE9D7ABAAC8FAFA080A3916E735723553600553600684B158E794F9F8E69B0A283 +AFA082A796768C774F745C2F5336024E30005236066850227E69419D8D6AAB9D7FB8B09D +B6AF9FBDB9B1BDBCBAC5C7CBC6CBD5C7CCD8C2C8D6C0C6D2C1C6D3C1C6D2C1C6D1C1C6D2 +C2C6D2C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C1C6D2 +C2C7D3C2C7D3C2C7D3C3C8D4C3C8D4C3C8D4C2C7D3C2C7D3C3C8D4C3C8D4C3C8D4C4C9D5 +C3C8D5C4C9D5C4C9D5C4C9D4C5CAD5C5CAD5C5CAD5C6CBD6C6CBD6C7CCD7C7CCD7C8CDD8 +C8CDD7C9CED8CACFD8CACED9CBCFDACCD0DACCD0DACDD1DBCED2DCCFD3DDD0D4DDD1D5DE +D2D6DFD3D7DFD4D8E0D5D9E1D6D9E1D8DBE3D9DCE3DADDE5DBDEE5DDE0E6DFE2E8DFE2E8 +E1E4E9E2E4EAE3E5EBE5E7ECE6E8EDE8EAEEE8EAEEEBECF0ECEEF1ECEEF1EEEFF3F0F1F4 +F1F2F5F2F3F6F3F4F6F4F5F7F5F6F8F5F6F8F6F7F8F7F8F9F8F9FAF9FAFBF9FAFBFAFAFB +FAFAFBFBFBFCFCFCFDFCFCFDFDFDFEFDFDFDFDFDFDFEFEFEFEFEFEFDFDFDFEFEFEFEFEFE +FFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFEFEFFFFFFFEFEFEFDFDFEFEFEFEFDFDFDFCFCFEFCFCFDFCFCFDFBFBFCFAFAFBF9FAFB +F8F9FAF7F8F9F6F7F8F5F6F8F4F5F7F2F3F4F1F2F5EEDFBDECCD89EFD59EEFD6A1EFD8A6 +EFD9A8EED6A4ECD49DEBCF94E9CC90E8CD90E8CC8FE8CB8EE9CE94EBD4A5ECD6A8ECD6AA +ECD6AAEAD5A6E8CF9BE7CC94E6CC96DDBB73D6AE57E3C88FEAD6ADEAD5ADDFC286D7B166 +CA9B3CD1A856E2C895E1C997E3CC9CE5D0A7E7D4ADE5D1A9D5B474D0AD67C8A150CAA458 +DDC596DEC99BDEC89BDFCBA1DFCCA3E1CDA7E1CEAAE5D4B5D7BD8DC7A461BA9244BA9142 +B48B36C2A15DD2B988DCCAA6DCCAA7DDCBA8C4A76DBD9D5DB99655B18B42A77F2FAD883F +BFA46BD2BE96D5C39FCEB990AE8F4BAB8A45AE8C4CB29255B19358AF8F52B29359CBB892 +CCBA97C6B28AC2AD84C3AE85C7B48FCDBD9BCAB996A78B509E80409C7C3D96753381590B +9E8045B8A277BFAC87BDAB84C4B491C9BA9BCABA9BC9BA9BCCBEA2B19C70734D056C4400 +8B6C2FBDAD88BDAD8AC3B495C2B393977E4B7E5F1F7A59176E4B03674300715010927744 +B19F7ABEB193BFB294C1B498C3B59A8F7846603D006241025F3D01603D00927C4EC1B399 +C0B297A18F6A8972445B3B055333005738007F6839AE9E7FB0A282B1A486B3A68797835E +634614503207442300492900664D1B8C7A53A6987AB4AA92B8AF9BC4C1BDC4C4C5CBCED8 +C3C9D8C1C6D3C0C6D2C0C5D1C1C6D2C2C7D2C1C6D2C2C7D2C1C6D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C1C6D2C2C7D3C2C7D3C2C7D3C3C8D4 +C3C8D4C3C8D4C3C8D4C2C7D3C3C8D4C3C8D4C3C8D4C4C9D5C3C8D5C4C9D4C4C9D4C4C9D4 +C5CAD4C5CAD5C5CAD5C6CBD6C6CBD6C6CBD6C7CCD7C7CCD7C7CCD8C8CDD8C9CED7C9CED8 +CACFD9CACED9CCD0DACDD1DBCDD1DBCDD1DCCED2DCD0D4DDD1D5DED1D5DED3D7DED3D7DF +D5D9E1D6DAE2D7DAE2D9DCE3DADDE4DBDEE5DCDFE6DEE1E7DFE2E8E0E3E9E2E4EAE3E5EB +E4E6EBE6E8EDE7E9EEE8EAEEE9EBEFEBEDF1ECEEF1EDEEF2EFF0F4F1F2F5F1F2F5F3F4F6 +F3F4F6F5F6F8F6F7F9F6F7F8F6F7F8F7F8F9F9FAFBF9F9FAFAFAFBFBFAFBFBFBFCFCFCFD +FBFBFCFCFCFDFCFCFEFDFDFDFEFEFEFDFDFEFDFDFDFEFEFEFEFEFEFFFFFFFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE +FFFFFFFEFEFEFDFDFDFDFDFEFDFDFEFCFCFDFBFBFCFBFBFCFAFAFBF8F9FAF9FAFBF7F8F9 +F7F8F9F5F6F8F3F4F7F3F4F5F1F3F9EFEADFECD194EDD195EED6A2EFD9A9EFD9A9EDD6A2 +ECD29AEACE93E9CC90E9CD90E8CC90E7CB8FE8CD94EBD5A4ECD7A9ECD7AAEBD6AAEAD3A5 +E6CD97E4C990E5CB96D8B05ED7AF5BE7D0A0EAD7AEE8D3A8D8B56CD2A955CEA44CD7B46E +E2C998E1C997E3CDA0E6D2AAE8D6B2DFC697CFAB65CDA85EC59C48D2B170DFCA9FDDC699 +DEC99EDFCCA3E0CDA5E1CEA8E2D0ACE3D1AEC8A868BA9241B99141B68D3DB68F3FD2B989 +DCCAA6DCC9A6DFCFAED1BA8DBB9958BA9959B39049A67D2CA98234C7AD7ACDB78AD0BC93 +D2BF99BDA26BAC8945AE8E4CAF8F50B09356AF9153AE9055C0A97BCCBA96C5B087C3AF85 +C4B087C6B18BCAB895CEBE9FB49C6B9D7D3E9F804392702B845E12916E2ABDA981C1AE89 +C1AF8BC4B390C8B898C9BA9CC9B99CC5B5959F8550856321714A00836221B6A37BC0AF8F +C1B191BAA986A18B5C795814765510704D07684300735210A59065BBAB8DBAAB8ABFB193 +C4B79CA5916980642C684707613F005F3E00846A38A18E65B8A98CA89672937D52644710 +5636005E3F0780693A937F56AFA081B1A385AC9D7E8C774E73592F543403563909654D22 +877654928369BBB7AEBFBFBDC5C7CAC4C8D3C2C7D2C1C6D3C1C6D2C1C5D1C1C6D1C2C6D2 +C2C7D2C2C7D3C2C7D2C1C6D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C1C6D2C1C6D2C1C6D2C2C7D3C2C7D3C2C7D3C3C8D4C3C8D4C3C8D4C2C7D3C2C7D3 +C2C7D3C3C8D4C3C8D4C4C9D5C3C8D5C3C8D5C4C9D4C4C9D4C5CAD5C5CAD5C5CAD5C6CBD6 +C6CBD6C6CBD6C7CCD7C7CCD7C8CDD8C8CDD7C8CDD8CACED9CACED9CBCFD9CCD0DACCD0DA +CDD1DBCED2DCCED2DCCFD3DDD0D4DDD2D6DED2D6DED3D7DFD4D9E1D5D9E1D7DAE2D8DBE3 +D9DCE3DBDEE5DCDFE6DDE0E6DEE1E7DFE2E8E2E4EAE2E5EAE4E6ECE5E7ECE6E8EDE8EAEE +E8EAEEEAECF0EBEDF1ECEEF1EEEFF3EEEFF3F1F2F5F2F3F5F3F4F6F3F4F6F4F5F7F5F6F8 +F6F7F8F7F8F9F8F9FAF8F9FAF9FAFBF9F9FAFAFAFBFBFBFCFBFBFCFCFCFDFCFCFDFCFCFD +FCFCFEFDFDFDFEFEFEFDFDFDFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFE +FDFDFDFEFEFEFDFDFEFCFCFDFCFCFDFBFBFCFAFAFBF9FAFBF9FAFBF8F9FAF7F8F9F6F7F8 +F4F5F7F4F5F7F2F2F4F2F4FAECD6A8EBCD8BEED6A0EFD9AAEED9A8EDD4A1EBD096EACD91 +E8CC8FE9CC90E8CC90E7CB8FE8CD94EBD4A4ECD6A9ECD6AAECD7ABEAD2A2E5C991E4C78E +E4C992D6AD58DAB66BE9D4ABEAD6AEE4CC9BD2A855CEA148D6B56DDDC187E1C896E2CB9C +E4CFA3E7D3ABE9D7B4D8BA80CEA85DCBA355CDA960D9BF89DFCAA0DEC79BDECAA0E0CCA4 +E0CCA5E0CEA8E3D1AFDCC69CBB9445B68D39B78E3EB48A36C19F5CDCCBA7DBCAA6DDCCA9 +DDCCAAC3A66CB79450B6944FAB8537A67E2DBA9A5CD0BB92CFB990D0BC94B99C62AF8E4D +AD8D4BAF9051AE9052AC8D4DAE9053C6B189CAB791C4B087C3AD83C3AE84C7B48DCAB996 +C7B590B9A174A3854A9B7A3B967533886319845E12B49D6FC5B38FC2B08CC6B695C8B897 +C9B99AC7B798CABA9DAA9263714A00734D039F8550B49F77C2B394C7B89CB9A7848C6F35 +7F5F1F6E4B026B48006C490386692FA38E63C0B295BCAD8DC0B294B6A5849E895D6C4C0F +5E3B005F3C007B5E26967F52B9AA8DC5B7A0A7967066470E5434005E3F0A6F521C9B8962 +B3A588B1A385A2926D8871457157256B5120836F4FA1998CB8B8B5BDBFC1CCD1DDCAD0DD +C4CAD8C2C8D6C1C6D4C1C6D2C1C6D2C2C6D2C2C6D2C2C7D2C2C7D3C2C7D2C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C1C6D2C1C6D2C2C7D3 +C2C7D3C2C7D3C3C8D4C3C8D4C3C8D4C3C8D4C2C7D3C2C7D3C3C8D4C3C8D4C3C8D4C4C9D5 +C3C8D5C4C9D5C4C9D4C4C9D4C5CAD5C5CAD5C5CAD5C6CBD6C6CBD6C6CBD6C7CCD7C7CCD7 +C8CDD7C8CDD7C9CED8C9CFD8CACED9CBCFDACBCFD9CCD0DACDD1DBCDD1DBCED2DCCFD3DC +D0D4DDD1D5DED2D6DFD4D8DFD4D8E0D5D9E1D6DAE2D7DAE2D9DCE3D9DCE3DBDEE5DDE0E6 +DDE0E7DFE2E8E0E3E8E1E4E9E3E5EBE4E5EBE6E8EDE6E8EDE8EAEEEAECF0EBECF0ECEEF1 +EDEEF1EEEFF3F0F1F4F1F2F5F2F3F6F3F4F6F3F4F6F4F5F7F5F6F8F6F7F9F7F8F9F8F9FA +F9FAFBF9F9FAFAFAFBFAFAFBFBFBFCFCFCFDFBFBFCFCFCFDFDFDFEFDFDFEFDFDFDFEFEFE +FEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFEFEFE +FDFDFDFDFDFEFCFCFDFBFBFCFBFBFCFAFAFBF9FAFBF8F9FAF7F8F9F6F7F8F5F6F8F4F5F7 +F2F2F5F2F4FAEDDCB8EBCB84EDD39BEFDAABEED8A8EDD4A0EACF95EACD91E8CC8FE8CB90 +E8CC90E7CB8FE8CD94EBD4A4ECD5A8ECD6AAECD7AAE9D2A1E5C990E4C78EE4C890D6AE5B +DCBA73EAD6ADEAD6AEE2C893CFA44ECDA046DABB7ADFC58DE0C795E3CC9FE4CFA4E7D5AE +E8D6B1D6B678CDA65AC9A152D3B374DCC290DFC99EDEC79CDFCAA0E0CCA5E0CDA6E1CEA8 +E3D2B1D6BE8EB88F3CB68E3AB68D3BB48935C8A96DDDCCA9DBC9A5DCCBA8D8C59FBFA061 +B6944FB5924BA88030AF8B43C1A56FCFBA90D0BB92CCB78CB18F4FAE8D4BAF904FAF8F51 +AE9052A98947B49861CDBB97C9B68FC3AE84C3AD85C3AF85C8B591CDBD9CC1AE85AB8F59 +A183479A7939916E298B671F98793ABBA77DC4B28FC5B390C7B796C8B898C8B798C8B89A +C6B69695773C714A0083611EB49F77BCAA86C2B393C2B294A893678161207B5A176C4A02 +654200765615A18B5EB09D78BCAD8EBDAE8EC3B59A9F8A607C60276542035F3C00664406 +988256B2A281BAAC8FB7A78888714157350056360079602C8E784BA99875AC9A78AD9C7B +A091708F7E5C887757978B77AFAAA0C0C3C7C9CFDBC5CBD9BFC3CFC0C4D0C1C5D1C1C6D1 +C2C6D2C2C7D2C2C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C1C6D2C1C6D2C1C6D2C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3C3C8D4C3C8D4 +C3C8D4C2C7D3C2C7D3C2C7D3C3C8D4C3C8D4C3C8D4C4C9D5C3C8D5C4C9D5C4C9D4C4C9D4 +C5CAD5C5CAD5C5CAD5C6CBD6C6CBD6C6CBD6C7CCD7C7CCD7C7CCD7C8CDD8C8CED8C9CED8 +C9CED8CACFD9CACED9CCD0DACCD0DACCD0DACED2DCCED2DCCFD3DDD0D4DDD0D4DED2D6DE +D2D6DED4D8E0D5D9E1D6DAE2D7DAE2D8DBE3DADDE4DADDE4DCDFE6DEE1E7DEE1E7E0E3E8 +E1E4E9E2E4EAE4E6ECE4E6ECE7E9EDE7E9EEE8EAEEEAECF0EBEDF1ECEEF1EDEEF2EEEFF3 +F1F2F5F1F2F5F3F4F6F3F4F6F4F5F7F5F6F8F5F6F8F7F8F9F8F9FAF8F9FAF9FAFBF9F9FA +FAFAFBFAFAFBFBFBFCFBFBFCFCFCFDFDFDFEFCFCFDFDFDFDFEFEFEFDFDFEFDFDFDFDFDFD +FEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFEFEFEFEFEFDFDFDFDFCFCFE +FCFCFDFCFCFDFBFBFCFAFAFBF9F9FAF8F9FAF8F9F9F6F7F8F5F6F8F4F5F7F2F3F5F1F3F8 +F0ECE5EBD097EBD095EFD9A9EFDAAEEDD5A3EAD097E9CD91E8CC8FE8CC90E8CB90E7CB8E +E8CD94EBD3A4ECD5A7EBD4A7EBD4A7E8D09DE4C88FE4C891E1C487DAB56CE1C388EAD7B0 +EAD7AFDCBC7CC99938CFA550E1C995E1C997E0C796E3CEA2E5D0A7E8D8B6E2CEA4CFAB65 +C79F4FCBA65CDEC89ADFC89CDEC79CDEC99FDFCAA2E0CCA6E1CEA8DFCDA7E0CEAAC7A664 +B38830B48A35B68E3DBA9449D6C095DDCBA9DECCACD4BF95C6AC74B89754B18E46AC8537 +A98233C8AF80CCB68BD0BC93D2BF99BB9F66AB8843AF8E4DAF9052AF8F50AD8E4FB3965D +C6B187CBB892C6B087C3AE84C2AD83C5B18ACCBA98CBBB99AA8E569A7A389B7B3A8E6923 +866015A98F5BC1AF89C0AE87C7B695C8B998C8B899C7B797C8B797B9A47E9F844F765105 +9F8450B5A178C2B292C3B393BAA88492763E83642575530C6F4D05704D078A6D33A79166 +BEAE8FBBAB8ABDAE8FC2B698A18D606746075D39006A490B785B239C875CC0B398C4B79D +917A4C6B4D135C3C057B62308D7749AFA07FBAAE92BDB4A2BCB9B2BCBAB7BBBDC0C1C5CE +C8CEDBC8CFE0C4CAD9C1C7D4C0C5D0C1C5D1C2C6D2C1C6D2C2C7D2C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C1C6D2C1C6D2 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C3C8D4C3C8D4C3C8D4C2C7D3C2C7D3C2C7D3C3C8D4 +C3C8D4C3C8D4C3C8D5C4C9D5C3C8D5C4C9D5C4C9D5C4C9D4C5CAD5C5CAD5C5CAD5C6CBD6 +C6CBD6C6CBD6C7CCD7C7CCD7C7CCD7C8CDD8C8CDD7C8CDD8CACFD9CACED9CBCFD9CBCFDA +CCCFDACDD1DBCDD1DBCED2DCCFD3DCD0D4DDD1D5DED2D6DED3D7DFD4D8E0D4D9E0D6DAE2 +D7DAE2D8DBE3D9DCE3DADDE4DCDFE6DDE0E6DEE1E7E0E3E8E0E3E9E2E5EAE3E5EBE4E6EB +E6E8EDE7E9EDE9EBEFEAEBEFEBEDF0ECEEF1ECEEF1EEEFF3EFF0F3F1F2F5F2F3F6F3F4F6 +F4F5F7F4F5F7F5F6F8F6F7F9F7F8F9F8F9FAF8FAFBF9FAFBFAF9FAFAFAFBFBFBFCFBFBFC +FCFCFDFCFCFDFCFCFDFDFDFEFDFDFDFEFEFEFEFEFEFDFDFDFEFEFEFEFEFEFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFDFDFDFDFDFEFCFCFDFBFBFC +FBFBFCFAF9FAF9F9FAF9FAFBF8F9FAF6F7F8F5F6F8F4F5F7F3F4F5F2F3F7F0EFEEEDDEC0 +EBD199EED6A3F0DCB1EDD6A5EAD098E9CD91E8CB8FE8CC90E8CB90E7CA8EE8CD94EBD3A4 +ECD5A7EBD4A6EAD3A5E8CF9CE4C88FE4C991E0C283DCBB76E3C892EAD7B0E9D7AFD9B874 +C89634D1A958E1CA97E0C895E0C897E3CEA3E5D1A9E9D9B7E0CA9CCDA85FC59C4ACEAC67 +E0CA9FDFC89CDEC89CDFC9A0DFCAA2E0CCA7E0CEA8DECBA5DDC8A0C19D55B38830B28832 +B79042C1A05ED9C59DDDCBA8DFCEAECEB787BFA161B79552AF8A40A77E2BB08B43CDB88D +CDB88CD3C09BD0BD95B49556AD8C48AF904FAF9052AE8D4EAD8E50C0A878C9B68FC7B189 +C5AF85C3AE84C2AD83C8B48ECBB997C2AF86A183469A7A399673308963198C6821B7A175 +C2AF8AC1AF8AC8B898C8BA9AC8B899C7B696C9B999A58B59856322805D19B8A47DBEAD8A +C2B393C6B799AB956A8161207C5B18704D056945007D5D1EA79166B4A17DBBAC8BBEAF90 +BFB093B4A581856B345E3A005F3B007B5E25988255B4A483B3A483A6946D6D4F1D4F2B00 +6F5118A19069AFA081BBB29DBDB6A6C5C3C1C6CAD4C1C6D1C4CAD7C2C7D4C0C5D1C0C4CF +C1C5D1C1C6D2C2C7D3C2C7D3C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C1C6D2C1C6D2C1C6D2C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3C3C8D4 +C3C8D4C3C8D4C3C8D4C2C7D3C2C7D3C2C7D3C3C8D4C3C8D4C3C8D4C3C8D4C4C9D5C3C8D5 +C4C9D5C4C9D4C4C9D4C4C9D4C5CAD4C5CAD5C5CAD5C6CBD6C6CBD6C6CBD6C7CCD7C7CCD7 +C7CCD7C8CDD8C8CDD7C8CDD8C9CED8C9CED8CACFD9CBCFD9CBCFDACCD0DACCD0DACED2DC +CED2DCCFD3DCD0D4DDD0D4DDD2D6DED3D7DFD3D8DFD5D9E1D5D9E1D7DAE2D8DBE3D9DCE3 +DADDE4DBDEE5DDE0E6DEE1E7DFE2E8E1E4E9E1E4E9E3E5EBE4E6EBE5E7ECE7E9EDE7E9EE +E9EBEFEAECF0EBEDF0EDEEF2EDEEF2EFF0F3F0F1F4F1F2F5F3F4F6F3F4F6F4F5F7F5F6F8 +F5F6F8F7F8F9F7F8F9F8F9FBF9F9FAF9F9FAFAFAFBFAFAFBFBFBFCFBFBFCFCFCFDFDFDFE +FCFCFEFDFDFDFEFEFEFDFDFEFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFEFEFEFDFDFEFCFCFDFCFCFDFBFBFCFAFAFB +FAFAFBF9F9FAF8F9FAF7F8F9F6F7F9F5F6F8F3F4F6F2F3F6F0F1F3F0F3FCEDE5D4EBD198 +EED7A6EDD6A4EBD19AE9CD92E7CB8FE7CC90E7CB90E7CA8EE7CD96EAD4A5EBD6A8EAD5A7 +E9D3A5E6CD98E3C78EE4C992DFC182E2C790E7D1A3EAD8B2E8D4ABD2AB5BCCA045D8B671 +E0C896DFC692E2CC9EE5D1A8E7D4AFE3CFA7D8BB83C8A253C79F4FD7BB83E0CBA2DEC79B +DEC89DDEC9A0DFCBA4DFCDA6E1CEAAD9C295CAAB6DB68D3AB18630B1862FC4A465D8C399 +DBC8A3DDCCAADAC7A3BE9E5FB6934DB38F46A77E2DA88030C5AC78CFBB90CFBA91CEBA91 +C1A672AC8A45AF8F4FAF8F51AE8E4FAA8847BCA16FCEBD99C7B38BC4AD84C3AE84C3AF86 +C5B28BCCBB99B79F70A18145997938957432865F149C7E41B7A174C1AE87C2AF89C7B795 +C8B999C8B999C4B291C4B391AD96697A550A7D5911B19C71C2B292C2B291BEAE8BAD986D +7F5E1C73500A714D076C49017E5F1FAF9C75B8A887B8A887BFB092C3B4999C8558704F0F +63400276581F8E7644AE9D7ABDAF94A08C656B4C12604002887249A79A7EBBB4A8C8C9CB +C6C8CDC5CAD6C3C9D6C1C7D4C1C6D2C1C6D2C1C6D1C1C6D2C1C6D2C2C7D3C1C6D2C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C1C6D2 +C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C3C8D4C3C8D4C3C8D4C3C8D4C2C7D3C2C7D3 +C2C7D3C3C8D4C3C8D4C3C8D4C4C9D5C4C9D5C4C9D5C4C9D5C4C9D4C4C9D4C4C9D4C5CAD4 +C5CAD5C5CAD5C5CAD5C6CBD6C6CBD6C6CBD6C7CCD7C7CCD7C7CCD7C8CDD8C8CDD7C9CED8 +C9CED8C9CED9CBCFD9CBCFD9CCD0DACCD0DACDD1DBCED2DCCED2DCCFD3DCD0D4DDD1D5DE +D2D6DFD2D6DFD4D8E0D5D9E1D5D9E1D7DAE2D7DAE2D9DCE3DADDE4DBDEE5DCDFE6DDE0E6 +DFE2E7E0E3E8E1E4E9E3E5EBE3E5EBE5E7ECE6E8EDE7E9EDE9EBEFE9EBEFEBEDF1ECEEF1 +EDEEF2EFEFF3EFF0F3F1F2F5F1F2F5F3F4F6F4F5F7F4F5F7F5F6F8F6F7F9F7F8F9F8F9FA +F8F9FAF9FAFBFAF9FAFAFAFBFBFBFCFBFBFCFCFCFDFCFCFDFCFCFDFCFCFEFDFDFDFEFEFE +FDFDFEFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFEFEFFFFFFFEFEFEFDFDFDFEFEFEFDFDFDFDFDFEFCFCFDFBFBFCFBFBFCFAFAFBF9F9FA +F8F9FAF7F8F9F6F7F9F5F6F8F4F5F7F3F4F6F1F2F4EFF0F1EEF1FAECDFC4EACC8CECD39D +ECD39EE9CD93E7CB8FE7CC8FE6CB90E6CA91E8CF9AEAD4A6EBD5A8EAD4A7E9D3A4E5CB95 +E3C78DE3C891E0C286E5CE9DE9D4A9EAD8B1E4CE9ECCA046D6B168DDBF85DFC592DFC693 +E4CEA4E5D3ADE7D6B2DBBE88D1AD68C79F4ED1B373DCC494DFCBA1DEC89DDEC99EDFCAA2 +E0CCA5DFCCA5E0CFABD1B680B78D3AB38731B0842EB18937D2BB8CDDCBA8DCCAA8D8C59E +CBB381B49048B59149AB8435AA8235B99959CFBA92D0BB92D3C09BBA9D64AF8D4BAD8B48 +AF8D4FAE8E4FA4833BAE8F52CAB68FC5B187C4AE84C4AF85C2AE84C6B28DCCBB99C6B48E +A1824598763593702B865E128C6920BCA87EC3AF8AC2AF8BC7B694C9B999C8B898C7B695 +C0AE8CBAA6817F5B14927539AF9B70BEAD8BC4B595C2B392947A43805F1F704A016B4600 +6E4B0599814CAD9A71BAAA89B7A685BEAF90C2B59AA692676A48065A370076571EAE9C78 +BDB0929F8B627D602775581FABA18FBAB7B2C4C8D2CCD3E1C5CBD9C1C6D4C0C6D3C1C6D2 +C1C6D2C2C6D2C2C7D2C1C6D2C2C7D3C2C6D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C3C8D4C3C8D4C3C8D4C3C8D4C2C7D3C2C7D3C2C7D3C2C7D3C3C8D4C3C8D4C3C8D4C3C8D5 +C3C8D5C4C9D5C4C9D4C4C9D4C4C9D4C4C9D4C5CAD5C6CBD5C5CAD5C5CAD5C5CAD5C6CBD6 +C6CBD6C7CCD6C7CCD8C7CCD7C7CCD7C8CDD8C8CDD7C9CED8C9CFD8CACED9CACEDACBCFD9 +CCD0DACCD0DACDD1DBCED2DCCED2DCCFD3DCD0D4DDD1D5DED2D6DED2D6DED3D7DFD4D8E0 +D5D9E1D6D9E1D7DAE2D8DBE3D9DCE3DBDEE5DCDFE6DDE0E7DEE1E7DFE2E8E1E4E9E1E4E9 +E3E5EAE5E7ECE5E7ECE7E9EDE8EAEEE8EAEEEBECF0EBEEF1EDEEF2EEEFF3EFF0F3F0F1F4 +F1F2F5F2F3F6F3F4F6F4F5F7F5F6F8F5F6F8F6F7F8F7F8F9F8F9FAF8FAFBF9F9FAFAFAFB +FAFAFBFAFBFCFBFBFCFBFBFCFCFCFDFDFDFEFDFDFEFDFDFDFEFEFEFEFEFEFDFDFDFEFEFE +FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFF +FEFEFEFEFEFEFEFEFDFDFDFDFCFCFEFCFCFDFBFBFCFBFBFCFAFAFBF9F9FAF8F9FAF7F8F9 +F6F7F9F5F6F8F4F5F7F3F4F6F1F2F4F0F0F3EEF0F5EBE6DAE8D6ADE9CF95EBCF97E8CC91 +E7CB8FE8CC8FE7CB90E6CB91E9D09DEAD4A7EBD5A8EAD4A6E9D1A1E5CA94E2C78EE3C78F +E1C48AE6D0A1E9D4ABE9D5ACE1C891CC9F45DAB97ADEC28ADFC590E0C796E4D0A7E6D4B0 +E6D4AFD6B577CDA65BC8A153D7BE88DCC596DFCAA0DEC99DDEC99FE0CBA4DFCCA5DFCBA5 +E0CEAACAAB6DB38730B2862FB18733B89248D7C297DBC8A3DECDABD0BA8CC2A56AB38F46 +B28E45A77E2DB4924EC3A973CFB98FD2BF99CFBA91B29252AD8A47AD8B49AE8C4CAC8B4A +A88744B79B64C9B58FC4AE84C5AF85C3AE84C3AF86C8B692D0BFA0BDA77B9C7B3A997636 +8D671F8058089E7F43C0AD86BFAB84C4B38FC7B796C9B999C7B695C8B797B7A27AA08652 +825F1AAC9567B9A680BCAC88C3B494B3A0788465257A58136F49026E4B03836628AF9C73 +B3A17CB8A886BEB092BDAE8FA8946B876C3669480577591E947C4CAF9E79AC9B75A1906B +9786629C8E76C2C3C7C7CBD4C1C5D2BFC4CFC0C5D1C1C6D2C2C6D2C2C7D2C2C7D2C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C1C6D2 +C1C6D2C1C6D2C1C6D2C2C7D3C2C7D3C2C7D3C3C8D4C3C8D4C3C8D4C3C8D4C2C7D3C2C7D3 +C2C7D3C2C7D3C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C4C9D5C3C8D5C4C9D5C4C9D4C4C9D4 +C4C9D4C5CAD4C5CAD5C5CAD5C5CAD5C5CAD5C6CBD6C6CBD6C6CBD6C7CCD7C7CCD7C7CCD7 +C8CDD8C8CDD7C8CDD7C8CDD7C9CED8CACED9CACED9CACFD9CBCFDACCD0DACDD1DBCDD1DB +CDD1DCCED2DCCFD3DDD0D4DDD0D4DDD2D6DED3D7DFD3D7DFD4D8E0D5D9E1D6DAE2D7DAE2 +D8DBE3D9DCE4DADDE4DCDFE6DDE0E6DEE1E7DFE2E8E0E3E9E2E4EAE2E5EBE3E5EBE5E7EC +E6E8EDE8EAEEE8EAEEE9EBEFEBEDF1ECEEF1EDEFF2EEEFF3EFF0F4F1F2F5F1F2F5F3F4F6 +F3F4F6F4F5F7F5F6F9F6F7F8F7F8F9F8F9FAF8F9FAF9FAFBF9F9FAFAFAFBFAFAFBFBFBFC +FBFBFCFCFCFDFDFDFEFCFCFDFDFDFDFEFEFEFDFDFEFDFDFEFDFDFDFEFEFEFFFFFFFEFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFE +FDFDFDFDFDFEFDFDFDFCFCFEFCFCFDFBFBFCFAFAFBF9F9FAF9FAFBF8F9FAF6F7F8F6F7F8 +F4F5F7F3F4F6F1F2F5EFF0F3EFF0F3ECEEF1EBEEF3EBDDC0E5C581E7CB90E7CB90E7CB8F +E7CB90E6CA91EAD1A0EBD7ABEBD6AAE9D1A2E7CD9AE3C890E2C78FE2C78FE3C993E8D2A7 +EAD6AEE3CC9BD8B570CEA550DFC592DFC490E0C694E1CB9DE6D2ABE9D8B8E1CA9DC9A153 +C39843CFAE6CE0CBA2DDC79ADEC79CDDC89DDECAA1E0CCA5E0CCA5DDC89FDAC396BA9141 +AF8329AE8026BD9952D0B684DAC8A2DBC9A4DCCAA6BFA163B59149AF8B40A98132A88030 +CAB282D0BB91D0BB92D0BC95BEA26CAA8741AD8B48AD8B49A88744A78441BDA474C6B187 +C6B188C4AE84C4AE84C3AF86C8B58FCCBB99C5B18BA78A51936F298A63188963199F8145 +BCA67DC2B08AC3B28CC8B897C9B999C7B695C5B492C3B28E8C6C2C765105AB9366C0B08E +BFAE8BBFAF8E9E84518A6A2E744F076F4902785613A18B5CB2A079BAA986B8A784BFB092 +BEB1939B8455654300674503937B4BB19F7AB9A98ABEB8AAB6B3ABBFC1C6C7CCD9C7CEDE +C2C7D5C0C6D2C1C6D2C2C7D2C2C7D2C2C7D3C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C1C6D2C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C3C8D4C3C8D4C3C8D4C3C8D4C2C7D3C2C7D3C2C7D3C3C8D4C3C8D4C3C8D4C3C8D4 +C3C8D4C4C9D5C4C9D5C3C8D5C4C9D5C4C9D5C4C9D4C5CAD4C5CAD4C5CAD5C5CAD5C5CAD5 +C6CBD6C6CBD6C6CBD6C6CBD6C7CCD7C7CCD7C7CCD7C7CCD7C8CDD8C8CDD7C9CED8C9CFD8 +CACED9CACED9CACFD9CBCFD9CBCFDACCD0DACCD1DACDD1DBCED2DCCFD3DCCFD3DCCFD3DC +D1D5DED2D6DED2D6DFD3D7DFD4D8E0D5D9E1D6DAE2D7DAE2D8DBE3D9DCE4DADDE4DBDEE5 +DCDFE6DEE1E7DFE2E8E0E3E8E1E4E9E2E4EAE4E6EBE4E6ECE6E8EDE8EAEEE8EAEEEAECF0 +EAECF0ECEEF1EDEFF2EDEFF3EFF0F4EFF0F4F1F2F5F2F3F6F3F4F6F4F5F7F4F5F8F6F7F9 +F6F7F8F7F8F9F8F9FAF8FAFBF9FAFBF9F9FAFAFAFBFBFBFCFBFBFCFBFBFCFCFCFDFCFCFD +FDFDFEFDFDFDFEFEFEFEFEFEFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFEFEFE +FDFDFDFDFDFEFCFCFDFAFAFBFAFAFBFAFAFBF9FAFBF8F9FAF7F8F8F6F7F9F4F5F7F3F4F6 +F1F2F5F0F1F4EFF0F4ECEEF1ECEFF4ECE6DBE8D0A0E7CB8FE7C98CE6CB90E7CB90E6CB92 +EAD2A2ECD7ACECD7ACE8D1A1E6CC98E3C78FE2C78FE2C78FE4CB98E8D2A6EAD7AFE1C792 +D4AE62D1AA5BE0C693DFC48FE0C898E2CCA0E6D3ACE9D9B9DDC392C59A47C2963FD3B579 +DFC99EDDC699DDC89CDDC89EDECAA1DFCBA4E0CCA6DAC498D2B882B68B37B0842BAC7F24 +C4A466D7C297DAC6A1DCCBA8D8C49DBB9958B5914AAC8538A37824AF8A41CEB88CCFB98E +D1BD96C6AE7FB6985BAA8943AD8C4AAC8947A3803AAA8949C4AF83C6B288C5AF86C4AE84 +C3AE85C5B189CBB996CAB895B59C6BA384478D681F7F5504957330B69F71BDA880C3B18C +C6B592C8B898C8B898C7B796C1AE8AAF996B8665228E7032B7A37CBFAE8CC3B494B4A179 +8769297E5C196E48016C45008C7036B4A37EB6A47FB6A580BEAE8EBEAF90A390647F6126 +623E007C5E21B3A382BFB5A1BDB4A5C3C4C7C1C5CEC3C8D5C0C5D1C0C5D0C1C6D2C2C7D2 +C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C1C6D2C1C6D2C1C6D2 +C1C6D2C1C6D2C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3C3C8D4C3C8D4C3C8D4C3C8D4C2C7D3 +C2C7D3C2C7D3C2C7D3C3C8D4C3C8D4C3C8D4C3C8D4C4C9D5C3C8D5C3C8D5C4C9D5C4C9D4 +C4C9D4C4C9D4C4C9D4C4C9D4C5CAD5C5CAD5C5CAD5C5CAD5C6CBD6C6CBD6C6CBD6C6CBD6 +C7CCD7C7CCD7C7CCD7C7CCD8C8CDD7C8CDD7C8CDD7C9CED8C9CED8CACED9CACFD9CBCFDA +CBCFDACCD0DACCD0DACDD1DBCDD1DBCED2DCCFD3DCCFD3DCD0D4DDD0D4DDD1D5DED3D7DF +D3D7DFD4D8E0D5D9E1D6D9E1D7DAE2D8DBE2D9DCE4DADDE4DBDEE5DCDFE6DDE0E6DFE2E7 +E0E3E8E1E4E9E2E4EAE3E5EBE4E6ECE5E7ECE7E9EDE8EAEEE9EBEFEAECF0EBEDF0ECEEF1 +EDEFF2EEEFF3EFF0F4F0F1F4F1F2F5F3F4F6F3F4F6F4F5F8F5F6F8F6F7F8F7F8F9F7F8F9 +F8F9FAF9FAFAF9F9FAFAFAFBFAFAFBFBFBFCFBFBFCFCFCFDFDFDFEFCFCFEFDFDFDFEFEFE +FDFDFEFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFEFEFEFDFDFDFDFDFE +FCFCFDFBFBFCFBFBFCFAFAFBF9FAFBF8F9FAF7F8F8F6F7F8F5F6F8F4F5F7F2F3F5F1F2F5 +F0F1F4EDEEF2ECEEF1EAECF0EBEDEFE8DCC2E6CB92E6C98DE6CB92E6CE97EAD5A8EDD9B1 +EDD9B1E8D2A2E5CB95E3C78EE2C790E3C992E6D0A2E8D4AAE9D6AFD6B26BCCA049D9B97A +DFC592DEC591E3CDA2E4D0A7E6D3AEE3CFA6D2B06EBD8D2EC59D4BDBC393DCC596DDC698 +DEC99FDECAA0DECAA1DDC8A0DFCBA4CEB279B99243B0852BB08328B48C3AD5C095DCC9A5 +DCC9A5DFCEADC7AB74B28C42B18B42A67C2AA47A26C5AB76CEB990CFBB92CBB487AC8A46 +AA8841AB8947AA8845A6833DAA8A49BCA26FC8B48CC5AF85C4AE85C3AE85C6B28BCBB996 +CDBC9BB198659A7935927029876215916E27B7A175C3B18CC2B08AC8B897C9B99AC7B796 +C5B593C3B18F9A7D44886624AC9668BFAD8ABCAA86BEAD8AB4A1798363216F4B00704D03 +80601F937842B7A682B7A582B7A682C1B395BDAD8E8A703A71510F8A713EB6AB95C0BAAF +C8CBD1C6CBD7C3C9D6C1C7D4C2C7D3C1C6D2C1C6D2C1C6D2C2C7D3C2C7D2C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C2C7D3C3C8D4C3C8D4C3C8D4 +C3C8D4C3C8D4C4C9D5C4C9D5C4C9D5C4C9D5C4C9D5C4C9D5C4C9D5C5CAD5C5CAD5C5CAD5 +C5CAD5C5CAD5C5CAD5C6CBD6C6CBD6C6CBD6C7CCD7C7CCD7C7CCD7C7CCD7C8CDD8C8CDD8 +C8CDD8C8CDD7C9CED8C9CED8C9CED8CACFD9CBCFDACBCFDACCD0DACCD0DACDD1DBCDD1DB +CDD1DBCFD3DCCFD3DCD0D4DDD1D5DED1D5DED2D6DFD3D7DFD4D8E0D5D9E1D5D9E1D7DAE2 +D7DAE2D8DBE3D9DCE4DADDE4DCDFE5DDE0E6DDE0E7DFE2E8E0E3E8E1E4E9E2E4EAE3E5EB +E4E6EBE5E7ECE7E9EEE8EAEEE8EAEFEBEDF0EBEDF0ECEEF2EDEEF2EEEFF3F0F1F4F0F1F4 +F1F2F5F2F3F5F3F4F6F4F5F7F5F6F8F6F7F9F6F7F9F7F8F9F8F9FAF8F9FAF9FAFBFAF9FA +FAFAFBFBFBFCFBFBFCFCFCFDFCFCFDFCFCFDFCFCFEFDFDFDFEFEFEFDFDFEFEFEFEFDFDFD +FEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFEFEFDFDFDFDFCFCFEFCFCFDFCFCFD +FBFBFCFAFAFBF9F9FAF8F9FAF8F9FAF7F8F9F5F6F8F4F5F7F3F4F6F2F3F6F0F1F4EEEFF3 +ECEFF1EAECF0E9EBEFE8ECF3E9E4DBEADBBFE6CA8FE5C787E9D1A0EDDAB6EDDBB6E9D4A7 +E6CE9CE2C78EE2C892E4CB99E6D2A6E9D6AEE7D3A8CDA34DCBA047DEC48EDEC591E0C898 +E4D0A9E5D1ABE5D2ACDABD86C9A153BB8D2ECCAA64DEC89BDBC594DDC79BDFC9A0DFCAA2 +DEC9A1DCC79EDDCAA2C19E58AC7C1EB0852EAD8026C4A364DDCBA8DBC8A4DCCAA6D9C59F +BA9855AF883CA97E2DAB8435BC9D5ECDB68ACEB98FD3C09ABA9D64A68239AB8844AB8947 +A5823AA5833EC5AE81C7B186C5B086C4AF85C4AF86C6B28BC8B791D0C1A2C2AE86997836 +936F2A845B0B9D7D3FBEAA81C0AD86C1AD88C8B795CABB9BCAB999C6B493C8B897A9905E +937538AC9567BEAC89BAA682C3B493A28A598A6C2D714C026C460081601FB5A37DBAA987 +B7A581B7A583BAA987A58F6284662989703DBFB9AEC3C4C7C8CFDFC4CAD8C0C5D3C0C5D1 +C1C6D2C2C6D2C1C6D2C2C7D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C1C6D2C1C6D2C1C6D2C1C6D2C2C7D3C2C7D3C2C7D3C3C8D4C3C8D4C3C8D4C3C8D4C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C3C8D4C3C8D4C3C8D4C3C8D5C3C8D5C3C8D5C3C8D5C4C9D5 +C4C9D4C4C9D4C4C9D4C5CAD4C4C9D4C5CAD5C6CBD6C5CAD5C5CAD5C5CAD5C6CBD6C7CCD7 +C6CBD6C6CBD6C7CCD7C8CDD8C7CCD7C7CCD8C8CDD7C8CDD7C9CED8C9CFD8C9CED8C9CED8 +CACED9CBCFDACBCFD9CCD0DACCD0DACCD0DACDD1DBCDD1DBCED2DCCFD3DDCFD3DCD0D4DD +D1D5DED2D6DED2D6DED3D7DFD4D8E0D5D9E1D5DAE2D6D9E1D7DAE2D8DBE3D9DCE3DADDE4 +DBDEE5DCDFE6DDE0E7DEE1E7DFE2E8E0E3E8E1E4E9E3E5EBE3E5ECE5E7ECE6E9EEE7E9ED +E9EBEFEAECEFEAECF0ECEEF1EDEFF2EEEFF3EFEFF4F0F1F4F1F2F5F2F3F6F3F4F6F4F5F6 +F4F5F7F5F6F8F6F7F8F7F8F9F7F8F9F8F9FAF9FAFBF9FAFBFAF9FAFAFAFBFAFAFBFBFBFC +FBFBFCFCFCFDFDFDFEFCFCFDFDFDFDFEFEFEFEFEFEFDFDFDFEFEFEFEFEFEFEFEFEFEFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFDFDFEFDFDFEFCFCFDFCFCFDFBFBFCFAFAFB +F9F9FAF9F9FAF8F9FAF7F8F9F5F6F8F4F5F7F2F3F5F2F3F6F1F1F5EEEFF3EDEFF2EBEDF0 +E9EBEFE8EBEFE7E7E8E7E3DEE6D8BBE5D0A1E6CC95EAD2A1EAD5A8E8D1A3E6CD9BE2C78E +E3C994E5CD9DE7D2A7EAD7B1E4CD9ECBA047CEA551DFC591DFC694E2CB9DE5D1AAE6D3AD +E4D1A8D2B06EC39843C39945D2B376DDC89BDCC697DDC89DDFCAA2DFCAA2DDC89FDCC79D +DBC69BBA9446AB7C1EB0852DB0842FCCB07BDDCBA7DDCCA9D8C49DCCB27FB6924CA87E2B +A1741CB5934FC8AF7CCBB487D1BD96CFBA91B0904EA8853DAB8845A88642A27E35B19256 +C7B389C5B086C5AF86C4AE84C5B189C9B791CCBA97CCBB99B59C6C936F28876013876114 +B09664C1AC85C1AE88C6B592CAB999CABA9BC9B999C2B08DBCA9829F844DAA9262B8A57D +BCAA85C0B08EB7A57E8B6E317C5B16704A008667299D8351B8A783B6A47FB5A27CB39F78 +A590639781539C8A65B1ABA0C4C6CBC2C5CFC0C5D1C1C5D1C2C6D2C2C7D2C2C7D2C1C6D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C1C6D2C1C6D2C1C6D2C1C6D2C1C6D2C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C3C8D4C3C8D4C3C8D4 +C3C8D4C3C8D4C3C8D4C4C9D5C3C8D5C4C9D4C4C9D4C4C9D4C4C9D4C4C9D4C4C9D4C5CAD4 +C5CAD5C5CAD5C5CAD5C5CAD5C6CBD6C6CBD6C6CBD6C6CBD6C7CCD7C7CCD7C7CCD7C7CCD7 +C7CCD7C8CDD7C8CDD7C8CDD7C9CED8C9CED8C9CED8CACED9CACED9CBCFD9CBCFD9CBCFDA +CCD0DACCD0DACDD1DBCDD1DBCED2DCCED2DCCFD3DCD0D4DDD0D4DDD1D5DED2D6DED2D6DF +D3D7DFD4D8E0D5D9E1D5D9E1D6DAE2D7DAE2D8DBE3D9DCE4DADDE5DBDEE5DCDFE6DDE0E6 +DFE2E8DFE3E8E0E3E9E1E4EAE2E4EAE4E6EBE4E6ECE6E8EDE7E9EDE8EAEEE9EBEFEAECF0 +EBEDF0EDEEF2EDEEF2EEEFF3EFF0F3F0F1F4F2F3F5F2F3F5F4F5F7F4F5F7F4F5F7F6F7F8 +F6F7F9F7F8F9F8F9FAF8F9FAF9F9FAF9F9FAFAFAFBFAFAFBFBFBFCFBFBFCFCFCFDFCFCFD +FCFCFDFDFDFDFEFEFEFDFDFEFDFDFDFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFEFEFFFFFFFEFEFEFDFDFDFEFEFEFDFDFDFCFCFEFCFCFDFBFBFCFAFAFBFAFAFBF9F9FA +F8F9FAF7F8F9F6F7F9F5F6F8F3F4F6F2F3F6F1F2F5EEEFF3EEEEF3ECEEF1EAECF0E9EBEF +E5E8EDE4E7EFE3E6EDE2E4E8E4DFD4E3CEA1E3CB97E3C992E3C790E1C68DE4CA97E6CEA0 +E7D3A8E8D4ABDBBB7CCFA857D9BA7BE0C796E2CC9EE4CFA6E5D2ABE7D5B0DBC18DBE9134 +BF9237D5B980DBC393DDC79BDEC89DDEC9A0DFCBA3DDC9A0DAC499DAC59BCCAF74AE8026 +AD7F24B89143C8AB72D9C59DDDCBA9DECDADC6AA72B49046AB8231A1751DA98131CAB283 +CFB98FCEB98EC5AD7CB7995DA68239A98641A7833DA27F37AB8A49C6B085C7B188C5AF85 +C4AF85C5B087CBB895CFBE9EC7B48FA78950967430875F11866012A98E57C4B28DC0AD86 +C7B694CBBA9BCABB9BC5B492C2B18DB19C70A38A56B09A6EBEAC89BDAB88B9A680B19C71 +866624724E04744F07937841B9A884BAA986B6A682B7A683B6A789B8AE9AB9B4ABBBBDC3 +C3C7D3C6CDDEC1C6D4C1C7D3C2C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C3C8D4C3C8D4C3C8D4C3C8D4 +C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C4C9D5C4C9D5C4C9D5C4C9D5 +C4C9D5C4C9D5C4C9D5C5CAD5C5CAD5C5CAD5C6CBD5C5CAD5C6CBD6C6CBD6C6CBD6C7CCD7 +C7CCD7C7CCD7C7CCD6C7CCD7C8CDD8C8CDD7C8CDD8C9CED8C9CED8C9CED8C9CED8C9CED8 +CACED9CACFD9CBCFD9CBCFD9CBCFDACCD0DACCD0DACDD1DBCDD1DBCDD1DBCED2DCCED2DC +CFD3DDD0D4DDD0D4DDD1D5DED1D5DED2D6DFD3D7DFD3D7DFD4D8E0D5D8E0D6D9E1D6DAE2 +D7DAE2D8DBE3D9DCE3DADDE5DBDEE5DCDFE5DDE0E7DEE0E7DFE2E8DFE2E8E1E4E9E3E5EA +E3E5EBE4E6ECE5E7ECE7E9EDE8EAEEE8EAEFE9EBEFEAECF0ECEEF1EDEEF2EDEFF2EFF0F4 +F0F1F4F1F2F5F2F3F5F2F3F6F3F4F6F4F5F7F5F6F8F6F7F9F6F7F9F7F8F9F8F9FAF9F9FA +F9F9FAF9FAFBFAFAFBFAFAFBFBFBFCFBFBFCFCFCFDFCFCFDFCFCFDFDFDFEFDFDFDFEFEFE +FEFEFEFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFF +FEFEFEFDFDFDFEFEFEFDFDFEFCFCFEFCFCFDFCFCFDFBFBFCFAFAFBF9F9FAF8F9FAF7F8F9 +F6F7F8F5F6F8F3F4F6F3F4F6F1F2F5EFF0F3EDEEF2ECEEF1EAECF1E9EBEFE7E9EDE5E7EC +E3E5EAE1E5EADFE4EDE1E1E1E5DECFE2C791E0C181E1C58AE3C994E5CC9BE7D2A7E3CB99 +D4B168D6B56FE1C794E1C999E3CFA4E5D1A9E4D1AAE6D5B1D2B374B58118C39944DCC698 +DDC597DDC79BDDC9A0DEC9A0DECAA0DCC89DD8C295DAC69BC19D57AC7C1FAD7F23C1A15F +DBC9A3DAC8A2DDCCAADBC9A6BA9A56B08A3EA2761DAA8233C0A167CDB88BCAB486D1BD95 +B49656A78239A9853EA7853FA27D33A6833DB79C66C9B58DC5AF84C5AF85C4AF86C6B38C +CDBC9AD4C7AABAA477946E28896316866011A88C53BCA87EC1AF88C4B28DC9B999CABA9A +C9B999C0AE8AB8A47BAD9568B09A6EBCA984BDAB86C5B696AA93668B6C2C6E480077530E +8C6F32BAA884B5A17AB29E75BAAA86C3B79FC5C6C8C2C8D6C4CAD8C3C9D7C1C6D3C0C5D0 +C2C6D2C2C6D2C2C7D3C2C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C1C6D2C1C6D2C1C6D2C1C6D2C1C6D2 +C2C7D3C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C2C7D3C2C7D3C2C7D3C2C7D3C3C8D4C4C9D5 +C4C9D5C4C9D5C4C9D5C3C8D5C3C8D5C3C8D5C3C8D4C4C9D4C5CAD4C4C9D4C4C9D4C4C9D4 +C5CAD5C6CBD6C5CAD5C5CAD5C5CAD5C6CBD6C7CCD7C7CCD7C6CBD6C7CCD7C8CDD8C7CCD8 +C8CCD8C7CCD7C8CDD7C9CED7C8CDD7C9CED8C9CFD8C9CFD8C9CFD8CACED9CACEDACBCFD9 +CCD0D9CBCFD9CCD0DACCD0DACDD1DBCDD1DBCDD1DCCED2DDCED2DDCFD3DCD0D4DDD1D5DE +D1D5DED2D6DED2D6DED3D7DFD4D8E0D4D8E0D4D9E1D6D9E1D7DAE2D8DBE3D9DBE4D9DBE3 +DADDE4DBDEE5DCDFE6DDE0E7DEE1E7DFE2E8E0E3E8E1E4E9E2E5EAE3E5ECE4E6EBE5E7EC +E6E8EDE8EAEEE8EAEEE9EBEFEAECF1EBEDF0EDEFF2EEEEF3EEEFF3F0F1F4F1F2F5F2F3F5 +F3F4F6F3F4F6F4F5F7F5F6F8F6F7F9F7F8F8F7F8F9F8F9FAF8FAFBF9FAFBFAF9FAFAFAFB +FAFAFBFBFBFCFCFCFDFBFBFCFCFCFDFDFDFEFCFCFDFDFDFDFEFEFEFDFDFEFEFEFEFDFDFD +FEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFE +FDFDFDFDFDFEFCFCFEFCFCFDFCFCFDFBFBFCFAFAFBF9F9FAF8F9FAF8F9FAF6F7F8F6F7F9 +F4F5F7F3F4F6F2F3F5EFF0F4EEEFF3EDEEF2EBEDF1EAECEFE7E9EDE6E8EDE4E6EBE2E4EA +E0E3E8DEE0E4DEDFE1E0D9CCE4D7BEE0C998E1C894E2CA98E5CFA2D8B673D0A858DABC7E +E0C794E1CA9BE5D1A8E5D1A9E4D1A9E4D0A9C8A255B88522CBA760DEC89CDDC698DEC99E +DEC9A0DDC99FDDC89EDBC69BD7BF90D3BA86B89140AE8128B38836CEB480DCCBA6DDCCA9 +D7C49DCDB583B38F45AC8435A27721BB9C5ECAB281CCB689CFBA90C9B284AB8942A78339 +A8843CA27D34A37D35B89D67C2AA7DC6B287C5AF84C5AF86C8B48DCBB894CCBB9AC4B088 +A88B538C671C865F0F9E7F41BDA77DBEAA81C3B18DC7B593C8B796C7B694C4B28FBAA780 +B4A076B6A179B9A680BCA984BBA883B4A0788F71357E5C177B58129F8655AD986FB7A683 +BEB094C4BBA8C5C4C3C3C4C7C2C6CFC1C6D2C1C6D2C1C6D2C1C6D2C2C7D3C1C6D2C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C3C8D4 +C2C7D3C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C4C9D4C4C9D4C4C9D4 +C4C9D5C4C9D5C4C9D5C4C9D5C4C9D5C4C9D5C5CAD5C5CAD5C5CAD5C5CAD5C5CAD5C6CBD6 +C6CBD6C6CBD6C6CBD6C7CCD7C7CCD7C7CCD7C7CCD7C7CCD7C8CDD8C8CDD8C8CDD8C8CDD8 +C9CED8C9CED8C9CED8CACFD9CACFD9CACFD9CBCFD9CBCFDACBCFDACCD0DACCD0DACCD0DA +CDD1DBCDD1DBCED2DCCED2DCCFD3DCD0D4DDD0D4DDD1D5DDD1D5DED1D5DED3D7DFD3D7DF +D4D8E0D5D9E1D5D9E1D6D9E1D6D9E1D8DBE3D8DBE3D9DCE3DADDE4DADDE5DCDFE6DDE0E6 +DEE1E7DFE2E8E0E3E8E1E4E9E2E4EAE3E5EBE4E6ECE5E7ECE6E8EDE7E9EDE8EAEEE9EBEF +EAECF0EBEDF0ECEEF1EDEEF2EEEFF3EEEFF3EFF0F4F1F2F5F1F2F5F3F4F6F3F4F6F4F5F7 +F5F6F8F6F7F8F7F8F9F7F8F9F8F9FAF9FAFBF9F9FAF9FAFBFAFAFBFAFAFBFBFBFCFBFBFC +FCFCFDFCFCFDFCFCFDFDFDFEFDFDFDFEFEFEFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFF +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFEFEFE +FDFDFDFCFCFEFCFCFDFBFBFCFBFAFBFAFAFBF9FAFBF8F9FAF7F8F9F6F7F9F4F5F8F4F5F7 +F2F3F6F0F1F4EEEFF4EDEEF2EBEDF0EBEDF0E8EAEEE6E8EDE4E6EBE2E4EAE2E4EADEE1E8 +DDE0E8DBDFE8D9DDE6DCDCDCE1D5BBE1CFAAE2C995C99834CD9F45DFC48EDEC38DE0CA9A +E4D1A8E3D1A8E4D1ACDFC89CBE9237C29944D4B77EDEC99EDDC89BDFCAA2DFCBA2DDCAA1 +DAC69CDAC49AD4BB8BC3A15CB0862DB48B39C19E5BDBC7A1DCCCA7E0D1B2CEB684BA9853 +AC8333A2751DA88132CDB78ACDB88BCDB78CD4C09ABC9F67A57E32A9853CA47F379B7428 +AB8B4BC9B48BC8B389C4AF85C4AE83C6B189CBB794CEBD9DC9B592A4854996732D7F5501 +8F6A21BEAA80C3AF88C2B089C7B695C8B797C5B390C0AD89BCA982B9A57EBAA780BCA984 +BAA782C7B898A48B5882601D6B44006B4500987C45C7B898C4B697CBC6BCCACFD9C5CAD6 +C2C8D6C2C7D5C1C7D3C2C7D3C1C6D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C1C6D2C1C6D2 +C1C6D2C1C6D2C2C7D3C3C8D4C2C7D3C3C8D4C3C8D4C3C8D4C3C8D4C2C7D3C2C7D3C2C7D3 +C2C7D3C3C8D4C4C9D5C3C8D4C3C8D5C3C8D5C3C8D5C3C8D4C4C9D5C5CAD5C4C9D4C4C9D4 +C4C9D4C5CAD5C6CBD6C5CAD5C5CAD5C5CAD5C6CBD6C7CCD7C6CBD6C6CBD6C7CCD7C8CCD8 +C7CCD8C7CCD8C7CCD8C8CDD7C9CED7C8CDD7C9CED8CACFD9C9CFD8CACFD9CBCEDACACEDA +CACEDACBCFD9CBCFD9CCD0DACDD0DBCCD0DACCD0DACDD1DBCDD1DBCED2DCCFD3DDCFD3DC +D0D4DDD0D4DDD1D5DED1D5DED1D5DFD2D6DED3D7DFD3D7DFD4D8E0D5D9E1D6D9E1D7D9E1 +D6DAE2D8DBE3D9DBE4D9DCE3DADDE4DBDEE5DCDFE6DDE0E6DEE1E7DFE2E8E0E3E8E1E4E9 +E3E5EBE2E4EAE3E5EBE4E6EBE5E7ECE6E8EEE7E9EEE8EAEEE9EBEFEBEDF1EBEEF0ECEEF1 +EEEFF2EEEFF3F0F1F4F0F1F5F2F3F5F3F4F5F2F3F5F4F5F7F5F6F8F5F6F8F6F7F8F7F8F9 +F7F8F9F8F9FAF8FAFBF9FAFBF9F9FAFAFAFBFAFAFBFBFBFCFCFCFDFBFBFCFCFCFDFDFDFE +FCFCFEFDFDFDFEFEFEFEFEFEFDFDFEFDFDFDFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFEFEFEFDFDFDFDFDFE +FCFCFDFBFBFCFBFBFCFAFAFBF9FAFBF8F9FAF7F8F9F6F7F9F4F5F8F4F5F6F3F4F6F0F1F4 +EFF0F3EDEFF2ECEEF1EBEDF1E8EAEEE7E9EDE5E7ECE3E5EBE2E4EADEE1E7DDE0E6DBDEE5 +DADCE3D9DBE1D9D8D6D9D7D1DCD5C7D4BD8FD6BC89DFC695DEC490E0C794E3CC9DE1CA98 +DFC795D4B271BA8826CFAE6AD7BC86DCC698DCC698DDC89DDDC89EDCC79DDAC498DBC59B +D1B681B89041AE8329BB974DD0B684DCC9A4DDCCABDFD0B0C4A66BB38D42A579249B6D10 +B89756CEB88CCDB789D1BD95D1BB93B08F4DA68036A8833B9F7A2FAB8A4ABA9F6BC7B389 +C5B085C5B085C6B188C9B690CEBC9AD1C1A1B9A1729875318E671D8C671CA6894FC1AE87 +C0AB83C5B38FC9B897C8B695C1AE8ABEAA84BCA881BAA57EBAA77FB9A57DBBA780B0986A +8868267C59128C70379E895CBDB3A1C6C3BEC6C4C1C4C6CCC4C9D4C2C7D2C1C6D2C2C6D2 +C2C6D2C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C3C8D4C2C7D3C2C7D3C2C7D3C2C7D3C3C8D4C2C7D3C3C8D4C3C8D4C3C8D4C3C8D4 +C4C9D5C3C8D4C4C9D4C4C9D4C4C9D4C4C9D5C4C9D4C4C9D4C5CAD5C5CAD5C5CAD5C5CAD5 +C5CAD5C6CBD6C6CBD6C6CBD6C7CCD7C7CCD7C7CCD7C7CCD7C7CCD7C8CDD7C8CDD7C8CDD7 +C8CDD8C9CED8C9CED8C9CED8C9CED8CACED9CACED9CBCFD9CBCFD9CBCFD9CCD0DACCD0DA +CCD0DACDD1DBCDD1DBCDD1DBCED2DCCED2DCCFD3DCCFD3DCD0D4DDD0D4DDD1D5DED1D5DE +D2D6DED2D6DFD3D7DFD3D7DFD4D8E0D4D8E0D5D9E1D6D9E1D7DAE2D8DAE2D8DBE3D9DCE3 +D9DCE4DADDE4DCDFE6DCDFE6DDE0E7DEE1E7DFE2E8E0E3E8E0E3E9E2E4EAE3E5EBE4E6EB +E5E7ECE5E7ECE7E9EDE8EAEEE8EAEFEAECF0EAECF0ECEEF1EDEEF2EDEEF2EEEFF3EFF0F3 +F0F1F4F1F2F5F2F3F6F3F4F6F3F4F6F5F6F8F5F6F8F6F7F8F7F8F9F7F8F9F8F9FAF8F9FA +F9F9FAF9F9FAFAFAFBFAFAFBFBFBFCFBFBFCFBFBFCFCFCFDFCFCFDFCFCFDFDFDFDFEFEFE +FDFDFEFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFEFEFEFEFDFDFDFDFDFEFCFCFDFCFCFD +FBFBFCFAFAFBF9F9FAF9F9FAF8F9FAF7F8F9F5F6F8F4F5F7F3F4F6F1F2F5F0F1F4EEEFF3 +EDEFF2ECEEF1E9EBEFE8EAEEE6E8EDE4E6ECE3E5EAE0E3E8DFE1E8DCDFE6DBDEE5D8DCE4 +D6DAE4D5DAE5D3D8E4D3D9E4D2D7E0D4D4D6D6D4D2DBD4C6DBD0B6D9CAAAD5C195C6A665 +C19C53DBC69CDAC294D9C292DAC395D9C192D6BE8DD6BD8CD4BC8BD6BE90BD974DA87818 +AE8229CEB581DDCCA9DBC9A5DECDACCDB584AC8332A47821A57B27B3904BCCB486CEB78C +D0BB93C7AF80B99C60AA8740A581389E772AA7843FC8B288C8B38AC5B085C6B086C8B48D +CBB994CDBC99D0C0A0C3AF86997633875F0F96742FBBA579C1AD85C2AE88C2AE89C2AF8A +C1AE89C1AD87BDA983BCA881BDAA85BEAD8DBFB091BEB197BAAC93B4AA95B1ABA0B7B5B0 +C4C8D2C5CAD7C6CCDBC2C8D6C2C8D7C1C6D4C1C6D2C1C6D2C2C7D3C1C6D2C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C3C8D4C2C7D3C2C7D3C3C8D4C3C8D4C3C8D4C2C7D3 +C3C8D4C3C8D4C3C8D4C3C8D4C4C9D4C3C8D4C4C9D5C4C9D5C4C9D5C4C9D5C4C9D4C5CAD5 +C5CAD5C5CAD5C5CAD5C6CBD5C6CBD6C6CBD6C6CBD6C7CCD7C7CCD7C7CCD7C7CCD7C7CCD7 +C8CDD8C8CDD8C8CDD7C8CDD8C9CED8C9CED8C9CED8C9CED8CACFD9CACED9CACFD9CBCFDA +CBCFD9CBD0DACCD0DACCD0DACCD0DACDD1DBCDD1DBCDD1DBCED2DCCED2DCCED2DCCFD3DD +CFD3DDD0D4DDD0D4DDD1D5DED1D5DED1D5DED2D6DFD3D7DFD3D7DFD3D7DFD4D8E0D5D9E1 +D5D9E1D6DAE2D7DAE2D7DAE2D8DBE3D8DBE3D9DCE4DBDEE5DBDEE5DCDFE5DCDFE6DDE0E7 +DFE2E8DFE2E8E0E3E8E0E3E9E1E4EAE3E5EBE3E5EBE5E7ECE6E8EDE6E8EDE8EAEEE8EAEE +E9EBEFEAECF0EBEDF1ECEEF1EDEEF2EEEFF3EFF0F4F0F1F4F1F2F5F1F2F5F2F3F6F3F4F6 +F4F5F7F5F6F8F5F6F8F6F7F9F7F8F9F7F8F9F8F9FAF9FAFBF9FAFBFAFAFBFAFAFBFBFBFC +FBFBFCFBFBFCFCFCFDFCFCFDFCFCFDFCFCFDFDFDFEFDFDFDFEFEFEFEFEFEFDFDFDFEFEFE +FEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFEFEFEFDFDFDFDFDFEFCFCFDFBFBFCFAFAFB +FAF9FAF9FAFBF8F9FAF7F8F9F6F7F8F5F6F8F4F5F7F1F2F5F1F2F5EFF0F3EEEEF3ECEEF1 +E9EBEFE9EBEFE6E8EDE4E6EBE3E5EBE0E4E9DFE2E8DDE0E6DBDEE5D9DCE3D7DAE1D6D9E1 +D3D7DED1D5DDD1D5DECED3DECDD2DECCD1DDCBD0DCCBCFD9D4D7DCCECCC6CCC0A8DED3BB +DECFB0DAC497D9C292D9BF8CD6BC88D5BA86D4BA85D2B780AF7F22A16B01AE8128D7C297 +DBC8A1DAC7A0DDCBA9BB99579E6D109A6A0BB08B41CCB385CBB486CDB88ED1BD97BA9E63 +AB8941AE8D4BA17C31976F1DB4965CCBB78FC6B186C5B084C7B38ACCBB97CDBC99CFBF9E +CCB998B398668D671C875F10AB915AC6B38EBFAA81BFAB82C1AD86BCA77CBAA579BCA77D +BCA67CB9A47AC5B596CAC4B6C8C4BBCED2DAC2C6D3C4CAD9C4CBDAC3C9D8C1C7D3C1C6D2 +C0C5D1C1C6D2C1C6D1C2C7D2C2C7D3C2C7D3C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C1C6D2C1C6D2C1C6D2 +C1C6D2C2C7D3C3C8D4C3C8D4C3C8D4C3C8D4C2C7D3C2C7D3C2C7D3C2C7D3C3C8D4C4C9D5 +C4C9D5C4C9D5C4C9D5C3C8D4C4C9D4C5CAD4C5CAD4C5CAD4C4C9D4C5CAD5C6CBD6C5CAD5 +C5CAD6C5CAD5C6CBD6C7CCD7C6CBD6C7CCD7C8CDD8C8CDD8C8CDD8C7CCD7C8CDD7C9CED7 +C8CDD7C9CED8CACFD9C9CED8CACFD9CBCEDACBCEDACACEDACBCFD9CCD0D9CBCFD9CCD0DA +CDD1DBCCD0DACDD1DBCED2DCCDD1DBCED2DCCFD3DDCFD3DCD0D4DCCFD3DCD0D4DDD1D5DE +D1D5DFD2D6DFD2D6DED2D6DED3D7DFD3D8E0D4D8E0D5D9E1D5D9E1D6DAE2D7D9E1D7DAE2 +D8DBE3D9DCE4D9DCE3DADDE3DBDEE5DCDFE6DCDFE6DDE0E7DEE1E7DEE1E7DFE2E8E0E3E8 +E1E4E9E2E4EAE3E5EBE4E6ECE5E7ECE6E8EDE8EAEEE7E9EDE8EAEEE9EBEFEBEDF0EBEEF0 +ECEEF1EDEEF2EEEFF3EFF0F4EFF0F3F0F1F4F1F2F6F2F3F6F4F5F6F3F4F6F5F6F8F6F7F9 +F6F7F8F7F8F9F8F9FAF8F9FAF9FAFBF9F9FAFAF9FAFAFAFBFAFAFBFBFBFCFCFCFDFBFBFC +FCFCFDFDFDFEFCFCFEFCFCFEFDFDFDFEFEFEFDFDFEFDFDFDFDFDFDFEFEFEFFFFFFFEFEFE +FEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFEFEFFFFFFFEFEFEFDFDFDFEFEFEFDFDFDFDFDFEFCFCFDFBFBFCFAFAFBFAFAFBF9F9FA +F8F9FAF7F8F9F6F7F8F5F6F8F4F5F7F2F3F5F1F2F5EFF0F3EEEFF3EDEEF2EAECF0E9EBEF +E7E9EDE5E7EDE4E6EBE1E3E9DFE2E8DDE0E7DCDFE6DADDE4D7DAE2D6DAE2D4D8E0D3D7DE +D2D6DED0D4DDCFD3DCCDD1DACCD0D9CCCFD8CBCFD7CACDD3C8CACECACDD2CBCDD0CAC9C8 +CBC9C8D5D1CCD5CDBFD1C6B1D6CAB3D0BE9CB08B41A77C25BC9B59D6C39CD8C6A0D5C097 +CDB483AA812F9D6F13A27721C2A56ECDB88CCCB588CAB386C2A875A27B2D9C74239E7526 +9C7527A6823CC3AD7FC7B287C6B085C4AF85C5B087C9B791CCBB99C5B28AA18344916C23 +916D26AF9562BBA67BC2B08BC0AE89C0AF8EC2B395C5B89DC5BBA8C1B8A6C9C5BDC8C8C8 +C4C4C7C3C6CEC2C5CEC3C7D1C1C6D1C1C6D1C1C6D1C1C6D2C1C6D2C1C6D2C2C7D2C2C7D2 +C2C7D3C1C6D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C4C9D4C4C9D4C4C9D4 +C4C9D5C4C9D5C5CAD5C5CAD5C5CAD5C5CAD5C5CAD6C6CBD6C6CBD6C6CBD6C7CCD7C6CBD6 +C7CCD7C7CCD7C7CCD7C8CDD7C8CDD8C8CDD8C9CED8C8CDD8C9CED8CACED9C9CED8CACFD9 +CBCFD9CBCFD9CBCFDACBD0DACCD0DACCD0DACDD1DBCDD1DBCDD1DBCDD1DBCED2DCCED2DC +CED2DCCFD3DCCFD3DDCFD3DDD0D4DDD1D5DED1D5DED1D5DED2D5DED2D6DFD3D7DFD3D7DF +D4D8E0D4D8E0D5D9E1D5D9E1D6D9E1D6DAE1D7DAE2D8DBE3D8DBE3D9DCE3DADDE4DADDE4 +DBDEE5DCDFE5DCDFE6DDE0E7DEE1E7DFE2E8DFE2E8E0E3E9E1E4E9E2E4EAE3E5EBE4E6EB +E5E7ECE6E8EDE6E8EDE8EAEEE9EBEFE9EBEFEAECF0EBEDF0ECEEF1EDEEF2EEEFF3EFF0F3 +EFF0F4F1F2F5F1F2F5F2F3F5F2F3F6F3F4F6F5F6F8F4F5F7F6F7F8F7F8F9F7F8F9F8F9FA +F8F9FAF8F9FAF9FAFBFAFAFBFAFAFBFAFAFBFBFBFCFCFCFDFBFBFCFCFCFDFCFCFDFDFDFD +FDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFF +FEFEFEFDFDFDFEFEFEFDFDFDFDFDFEFCFCFDFCFCFDFBFBFCFAF9FAF9F9FAF9FAFBF8F9FA +F6F7F8F4F5F7F4F5F7F2F3F5F2F3F6F0F1F4EFEFF4EDEFF2EBEDF0E9EBEFE7E9EEE7E9EE +E5E6ECE1E4E9E0E3E8DEE1E7DCDFE7DBDEE5D8DBE3D7DAE2D5D9E1D3D7DFD2D6DFD0D4DD +CFD3DCCED2DCCDD1DBCBCFDAC9CED9C9CED9C8CDD9C7CCD9C6CCD8C5CBD8C4CAD7C3CAD7 +C3C9D7C3C9D7C4CAD9C6CBD6C1BFBBBBB4A6D7D4CEDBD1BCD8CBADD0BA8FBE9C5AA47821 +A57A23B7934DCFB88BCEB586CFB78ABE9F64AA8136895500875402855100A37E33B99C63 +C7B083C2AA7AC3AC7CC2AB7EC1AA7CC0AA7CC5B188A78849784B007E5302AF945DCBB999 +C6B697CCC3AFD5D0C7CBCCD1C3C3C6C8CBD3C3C9D6C2C7D6C2C8D6C2C8D6C1C7D5C1C7D4 +C1C7D3C1C6D2C2C7D3C1C6D3C2C7D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2 +C1C6D2C1C6D2C1C6D2C1C6D2C2C7D3C3C8D4C3C8D4C3C8D4C3C8D4C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C3C8D5C4C9D5C4C9D5C4C9D5C3C8D5C4C9D4C5CAD5C5CAD4C4C9D4C5CAD5 +C6CBD6C5CAD5C5CAD5C6CBD5C6CBD6C7CCD7C6CBD6C7CCD7C8CDD8C7CCD8C8CCD8C7CCD8 +C8CDD7C9CED7C8CDD7C9CED8CACFD9CACFD9CBCFDACACEDACBCFDACCD0DACBCFD9CCD0DA +CDD1DBCDD1DACCD0DACDD1DBCED2DCCDD1DBCED2DCCFD3DDCFD3DCD0D4DDCFD3DCD0D4DD +D1D5DED1D5DED2D6DFD2D6DED3D7DFD2D6DED3D7DFD4D8E0D5D9E0D5D9E1D6DAE2D6DAE2 +D6DAE2D6D9E1D7DAE2D7DAE2D8DBE3DADDE4D9DCE3DBDEE5DCDFE6DBDEE6DDE0E7DEE1E7 +DEE1E7DFE2E8E0E3E9E1E4E8E1E4E8E2E4EAE3E5EBE4E6ECE5E7ECE6E8EDE6E8EDE7E9ED +E8EAEEE9EBEFEAECF1EBEDF1ECEEF0ECEEF1EEEFF3EEEFF4EFF0F4F1F2F4F0F1F4F2F3F5 +F3F4F5F3F4F6F3F4F6F4F5F7F6F7F9F5F6F9F7F8F9F8F9FAF8F9FAF9FAFBF9FAFBF9F9FA +FAFAFBFBFBFCFAFAFBFBFBFCFCFCFDFBFBFCFCFCFDFDFDFEFCFCFEFDFDFEFEFEFEFEFEFE +FEFEFDFDFDFDFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFEFEFE +FDFDFDFDFDFEFDFDFEFCFCFDFCFCFDFBFBFCFAFAFBF9FAFBF9FAFBF8F9FAF6F7F8F5F6F8 +F5F6F8F3F4F6F2F3F5F0F1F4EFF0F4EDEFF2EBEDF0EAECF0E8EAEEE6E8EDE4E6ECE2E4EA +E1E4E9DFE2E8DDE0E7DBDEE5D9DCE3D8DBE3D5D9E1D3D8E0D3D7DFD1D5DED0D4DDCED2DC +CDD1DBCCD0DACACFD9CACED9C8CDD7C8CCD7C7CCD7C6CBD6C6CBD5C5CAD4C4C9D4C4C9D4 +C4C9D4C4C8D3C2C4CCC0C2C7C6C9D0C7C9CDC6C7CAC8C6C5C9C4BBBCB19BBBAE93C2B7A2 +C9C1B3C9C0B3C9C0B0BBAB90B19D79B6A37FBAA885B7A580C7BAA1CDC2ACCEC3ACCEC3AC +CDC2AACCBEA4CCBEA4CABCA2C0B194B9A989A4916DA8997BC3BFB7C5C4C4C2C3C4C4C5CA +C5C8CFC3C7D1C2C5CFC3C7D1C2C6D2C1C6D2C1C6D2C1C6D2C2C6D2C2C6D2C2C6D2C2C7D3 +C2C6D2C2C7D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C1C6D2C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C3C8D4C3C8D4C3C8D4C3C8D4 +C4C9D4C3C8D4C4C9D4C4C9D4C4C9D4C4C9D5C4C9D4C5CAD5C5CAD5C5CAD5C5CAD5C6CBD6 +C6CBD6C6CBD6C7CCD7C7CCD7C7CCD7C7CCD7C8CDD7C8CDD7C8CDD8C8CDD7C9CED8C9CED8 +C9CED8CACED9CACED9CACFD9CBCFD9CBCFD9CBCFDACCD0DACCD0DACDD1DBCDD1DBCDD1DB +CED2DCCED2DCCFD3DCCFD3DCCFD3DCD0D4DDD0D4DDD1D5DED1D5DED1D5DED2D6DED2D6DE +D2D6DFD3D7DFD3D7DFD4D8E0D4D8E0D5D9E1D5D9E1D6D9E1D6D9E1D7DAE2D7DAE2D8DBE3 +D9DCE3D9DCE3DADDE4DBDEE5DBDEE5DCDFE6DDE0E6DDE0E6DEE1E7DEE1E7DFE2E8E1E4E9 +E1E4E9E2E4EAE2E4EAE3E6EBE5E7ECE5E7ECE6E8EDE6E8EDE8EAEEE9EBEFE9EBEFEAECF0 +EBEDF0ECEEF1EDEEF2EDEFF2EEF0F3EFF0F4F0F1F4F1F2F5F2F3F5F2F3F6F3F4F6F4F5F7 +F4F5F7F5F6F8F6F7F9F6F7F8F7F8F9F8F9FAF8F9FAF9F9FAF9F9FAFAFAFBFAFAFBFBFBFC +FBFBFCFBFBFCFCFCFDFCFCFDFCFCFDFDFDFEFDFDFDFDFDFEFEFEFEFDFDFDFEFEFEFEFEFE +FEFEFEFFFFFFFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFEFEFE +FDFDFDFCFCFEFCFCFDFBFBFCFBFBFCFAFAFBF9F9FAF8F9FAF7F8F9F6F7F9F5F6F8F3F4F6 +F3F4F5F1F2F5EFF0F3EEEFF3ECEEF1EBEDF0E9EBEFE8EAEEE6E8EDE3E5EBE2E5EAE0E3E8 +DEE1E7DDE0E6DADDE4D9DCE3D7DAE2D5D9E1D4D8E0D2D6DFD1D5DECFD3DDCED2DCCDD1DB +CBCFDACBCFD9C9CED8C8CDD7C8CDD7C7CCD7C6CBD6C5CAD5C5CAD4C4C9D5C3C8D4C3C8D5 +C3C8D5C3C9D6C2C7D4C1C7D5C1C7D6C2C8D7C3C9D9C3CADAC3CADAC2C9D8C1C7D5C1C7D5 +C1C7D5C1C7D5C2C8D6C4CBDBC5CCDCC5CCDBC4CBDAC3C9D7C2C8D5C2C8D5C2C8D5C2C8D5 +C2C8D5C2C8D4C1C6D3C3C8D6C4CADAC4CBDAC3CAD9C1C8D6C1C7D6C1C7D4C1C6D3C1C6D3 +C1C7D3C1C6D3C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C2C7D3C2C7D3C2C7D3C3C8D4C2C7D3C3C8D4C3C8D4 +C2C7D3C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C4C9D5C4C9D5C4C9D5C4C9D5C4C9D4C5CAD5 +C5CAD5C5CAD5C5CAD5C6CBD6C6CBD6C6CBD6C6CBD6C7CCD7C7CCD7C7CCD7C8CDD8C8CDD8 +C8CDD8C9CED8C9CED8C9CED8C9CED8CACFD9CACFD9CACFD9CBCFD9CBCFDACCD0DACCD0DA +CCD0DACDD1DBCDD1DBCDD1DBCDD1DBCED2DCCED2DCCFD3DDCFD3DDCFD3DDD0D4DDD0D4DD +D1D5DED1D5DED2D6DED2D6DFD2D6DFD3D7DFD3D7DFD4D8E0D4D8E0D5D9E0D5D9E1D6D9E1 +D6DAE2D7DAE2D7DAE2D8DBE3D8DBE3D8DBE3D9DCE4DADDE4DBDEE5DBDEE5DBDEE5DCDFE6 +DDE0E6DEE1E7DEE1E7DEE1E7E0E3E8E1E3E9E1E4E9E1E4E9E2E5EAE3E5EBE3E5EBE5E7EC +E5E7ECE7E9EDE7E9EEE8EAEEE9EBEFE9EBEFEAECF0EBEDF1ECEEF1EDEEF2EEEFF3EEEFF3 +EFF0F4F0F1F4F1F2F5F2F3F6F2F3F6F3F4F6F4F5F6F4F5F7F5F6F8F6F7F8F6F7F9F7F8F9 +F8F9FAF8F9FAF8F9FAF9FAFBFAFAFBFAFAFBFAFAFBFBFBFCFBFBFCFCFCFDFCFCFDFCFCFD +FDFDFEFDFDFEFDFDFEFDFDFDFEFEFEFEFEFEFDFDFDFEFEFEFEFEFEFFFFFFFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFEFEFEFDFDFDFCFCFE +FCFCFDFBFBFCFBFBFCFAFAFBF9F9FAF9FAFBF8F9FAF7F8F8F5F6F8F3F4F6F3F4F6F1F2F5 +EFF0F3EFF0F4EDEEF2EBEEF0E9EBEFE9EBEFE7E9EDE3E5EBE2E4EAE0E3E8DEE1E7DDE0E6 +DADDE4D9DCE3D7DAE2D5D9E1D4D8E0D3D7DFD2D6DED0D4DDCED2DCCDD1DBCCD0DACBCFDA +CACED9C9CED7C8CDD7C8CDD8C7CCD7C5CAD5C4C9D4C4C9D4C4C9D5C4C9D5C3C8D4C2C7D3 +C3C8D3C3C8D3C3C8D3C3C7D3C2C7D2C2C7D2C1C6D1C1C6D1C1C6D2C1C6D2C2C6D2C2C6D2 +C2C6D2C1C6D1C1C5D1C1C5D1C1C6D1C1C6D2C1C6D2C1C6D2C1C6D2C1C6D2C1C6D2C1C6D2 +C2C7D3C1C6D2C1C6D1C1C6D1C1C6D1C2C6D2C2C6D2C2C6D2C2C7D2C2C7D2C2C6D2C2C7D2 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C1C6D2C1C6D2 +C1C6D2C2C7D3C1C6D2C2C7D3C3C8D4C3C8D4C3C8D4C2C7D3C2C7D3C2C7D3C2C7D3C3C8D4 +C4C9D5C4C9D5C4C9D5C4C9D5C3C8D4C4C9D4C5CAD4C5CAD4C4C9D4C5CAD5C6CBD6C6CBD6 +C5CAD5C6CBD6C7CCD7C7CCD7C6CBD7C7CCD7C8CDD8C7CCD7C7CCD7C8CDD7C9CED7C9CED8 +CACFD9C9CED8CACFD9CBCEDACBCED9CCD0DACCCFD9CCD0DACDD1DBCDD1DBCCD0DBCDD1DB +CED2DCCED2DCCED2DCCFD3DDD0D4DDD0D4DDD0D4DDD0D4DDD1D5DED2D6DFD2D6DED3D7DF +D2D6DED3D7DFD4D8E0D4D8E0D5D9E1D4D8E0D5D9E1D6DAE2D6D9E2D6D9E1D7DAE2D7DAE2 +D8DBE3D9DCE4DADDE4DADDE4DADDE4DBDEE5DCDFE6DDE0E7DDE0E7DEE1E7DDE0E6DFE2E8 +E0E3E9E0E3E8E1E4E9E2E5EAE3E4EBE3E5EBE3E5ECE4E6ECE5E7ECE6E8EDE7E9EEE7E9ED +E8EAEEE9EBEFEAECF0EBEDF1EBEDF0ECEEF1EDEFF2EEEFF3EEEFF3EFF0F4F1F2F4F1F2F5 +F1F2F5F3F4F5F3F4F6F4F5F7F4F5F7F5F6F8F6F7F9F6F7F8F7F8F8F7F8F9F8F9FAF9FAFB +F9F9FAFAF9FAFAFAFBFBFBFCFBFBFCFBFBFCFCFCFDFCFCFDFDFDFEFDFDFEFCFCFDFDFDFD +FEFEFDFEFEFEFEFEFEFDFDFDFDFDFDFEFEFEFFFFFFFEFEFEFEFEFEFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFEFEFEFEFEFDFDFDFDFDFDFEFCFCFDFBFBFC +FBFBFCFAFAFBF9F9FAF9FAFBF7F9FAF7F8F8F6F7F8F4F5F7F3F4F6F2F3F5F0F1F4EFF0F4 +EDEFF2ECEEF1EAECF0E9EBEFE7E9EEE4E6ECE3E6EBE1E4E9DFE2E8DEE1E7DBDEE5DADDE4 +D8DBE3D6DAE2D5D9E1D3D7DFD3D7DFD0D4DDCFD3DCCED2DCCDD1DBCCD0DACBCFD9CACED9 +C9CED8C8CDD7C7CCD7C6CBD6C6CBD6C5CAD5C4C9D4C4C9D5C4C9D4C3C8D4C3C8D4C3C8D4 +C2C7D3C3C8D4C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C2C6D2C2C6D2 +C2C7D2C2C7D2C2C7D2C2C7D2C2C7D2C2C7D2C2C7D2C2C6D2C2C6D2C2C6D2C1C6D2C1C6D2 +C1C6D2C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C3C8D4C2C7D3C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C4C9D4C4C9D4 +C4C9D4C4C9D4C5CAD5C5CAD5C5CAD5C5CAD5C5CAD5C6CBD6C6CBD6C7CCD7C7CCD7C7CCD7 +C7CCD7C8CDD7C8CDD7C8CDD7C8CDD8C9CED8C9CED8CACED9CACED9CACFD9CBCFD9CBCFDA +CCD0DACCD0DACCD0DACDD1DBCDD1DBCDD1DBCED2DCCED2DCCFD3DCCFD3DCCFD3DDD0D4DD +D0D4DDD1D5DED1D5DED2D6DED2D6DED2D6DFD3D7DFD3D7DFD3D7DFD4D8E0D4D8E0D5D9E1 +D5D9E1D6DAE2D6DAE2D7DAE2D7DBE3D8DBE3D8DBE3D9DCE4D9DCE4DADDE4DADDE4DBDEE5 +DCDFE6DCDFE6DDE0E7DDE0E7DEE1E7DEE1E7DFE2E8E0E3E9E0E3E9E1E4E9E2E4EAE2E5EA +E3E5EBE3E5EBE4E6ECE5E7ECE6E8EDE6E8EDE7E9EEE8EAEEE9EBEFE9EBEFEAECF0EBEDF0 +ECEDF1ECEEF1EDEFF2EEEFF3EEEFF3F0F1F4F1F2F5F1F2F5F2F3F5F2F3F6F3F4F6F4F5F7 +F4F5F7F5F6F8F5F6F8F6F7F9F7F8F9F7F8FAF8F9FAF8F9FAF9FAFBF9F9FAFAFAFBFAFAFB +FAFAFBFBFBFCFBFBFCFBFBFCFCFCFDFCFCFDFDFDFDFDFDFDFDFDFEFEFEFEFDFDFEFEFEFE +FDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFEFEFEFDFDFDFDFDFEFCFCFDFAFAFBFBFBFC +FAFAFBF9FAFBF7F9FAF7F7F8F6F7F9F4F5F7F4F5F6F2F3F5F0F1F4F0F1F4EEEFF3ECEFF1 +EBEDF0E9EBF0E7E9EEE5E7ECE4E6EBE2E4EAE0E3E8DFE2E7DCDFE6DBDEE5D8DBE3D7DAE2 +D6D9E1D4D8E0D3D7DFD1D5DED0D4DCCFD3DDCDD1DBCCD0DACBCFD9CACFD9C9CED8C7CCD7 +C8CDD8C7CCD7C7CCD7C6CBD6C4C9D4C5CAD4C4C9D4C3C8D5C4C9D5C3C8D4C2C7D3C3C8D3 +C2C7D3C2C7D3C3C8D4C3C8D4C3C8D4C3C8D4C2C7D3C1C6D2C1C6D2C1C6D2C1C6D2C1C6D2 +C1C6D2C1C6D2C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C1C6D2 +C1C6D2C1C6D2C1C6D2C1C6D2C1C6D2C2C7D3C3C8D4C3C8D4C3C8D4C2C7D3C2C7D3C2C7D3 +C2C7D3C3C8D3C2C7D3C3C8D4C4C9D5C4C9D5C4C9D5C3C8D5C3C8D4C5CAD4C5CAD5C4C9D4 +C5CAD5C6CBD6C6CBD6C5CAD5C6CBD6C7CCD7C6CBD6C7CCD7C8CDD8C8CDD8C7CCD8C8CDD7 +C9CED7C8CDD7C9CED8CACFD9CACFD9CBCFDACACEDACBCFDACCD0D9CCD0DACDD1DBCCD0DA +CDD1DBCED2DCCDD1DCCED2DCCED2DDCFD3DDD0D4DCD0D4DDD1D5DED1D5DED1D5DED2D6DF +D3D7DED2D6DED3D7DFD3D7DFD4D8E0D5D9E1D5D9E1D6DAE2D6DAE2D7D9E1D7DAE2D8DBE3 +D7DAE2D8DBE3D9DCE4D9DCE3DADDE4DBDEE4DBDEE5DBDEE5DCDFE6DDE0E7DEE1E7DEE1E7 +DFE2E7DFE2E8E0E3E8DFE3E9E0E4E9E2E5EAE2E5EAE3E4EAE2E4EAE4E6EBE5E7ECE5E7EC +E6E8EDE7E9EEE7E9EDE8EAEEE9EBEFE9EBEFEAECF0EBEDF1ECEEF0ECEEF1EDEFF2EEEEF3 +EEEFF3EFF0F4F0F1F4F1F2F5F1F2F6F2F3F6F3F4F5F3F4F6F4F5F7F4F5F7F5F6F8F6F7F9 +F6F7F8F7F8F9F8F9FAF8F9FAF9FAFBF9FAFBF9F9FAF9F9FAFAFAFBFBFBFCFBFBFCFCFCFD +FBFBFCFCFCFDFDFDFEFCFCFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFEFEFE +FFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFEFEFFFFFFFEFEFEFDFDFDFEFEFEFDFDFDFCFCFEFCFCFDFBFBFCFBFBFCFAF9FAF9F9FA +F8F9FAF7F8F9F7F8F9F5F6F8F4F5F7F3F4F6F2F3F5F0F1F5EEEFF3EDEEF2EBEDF1EAECF0 +E8EAEFE5E7ECE4E6ECE3E5EBE1E4E9DFE2E8DDE0E6DCDFE6D9DCE4D8DBE3D7DAE2D5D9E1 +D4D8E0D2D6DED1D5DED0D4DDCED2DCCDD1DBCCD0DACBCFD9CACED9C9CED8C8CDD7C7CCD7 +C7CCD7C6CBD6C6CBD6C5CAD5C4C9D5C4C9D4C4C9D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4 +C3C8D4C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C1C6D2C1C6D2C1C6D2C1C6D2C1C6D2C1C6D2C1C6D2C1C6D2C1C6D2C1C6D2C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2 +C1C6D2C1C6D2C1C6D2C1C6D2C1C6D2C1C6D2C1C6D2C1C6D2C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4 +C3C8D4C4C9D4C4C9D4C4C9D4C4C9D4C4C9D5C5CAD5C5CAD5C5CAD5C5CAD5C5CAD5C6CBD6 +C6CBD6C7CCD7C6CBD6C7CCD7C7CCD7C7CCD7C8CDD7C8CED8C8CDD7C9CED8CACED9C9CED8 +CACFD9CACED9CBCFD9CCD0DACCD0DACCD0DACCD0DACDD1DBCDD1DCCDD1DBCED2DCCFD3DC +CFD3DCD0D4DDD0D4DDD1D5DDD1D5DED1D5DED2D6DED2D6DED3D7DFD3D7E0D3D7E0D4D8E0 +D4D8E0D5D9E1D5D9E1D6D9E1D6D9E2D7DAE2D7DAE2D8DBE3D8DBE3D9DCE3D9DCE3DADDE4 +DADDE5DBDEE5DBDEE5DCDFE6DCDFE6DDE0E7DDE0E7DEE1E7DEE2E7DFE2E8E0E3E9E0E3E9 +E1E4E9E1E4EAE2E4EAE2E5EAE3E5EBE4E6ECE4E6ECE5E7ECE6E8EDE6E8EDE8EAEEE8EAEE +E9EBEFE9EBEFEAECEFEBEDF0ECEDF1ECEEF1EDEEF2EDEEF2EEEFF3EFF0F3F0F1F4F1F2F4 +F1F2F5F2F3F5F2F3F5F3F4F6F3F4F6F4F5F7F5F6F8F5F6F8F6F7F8F6F7F8F7F8F9F8F9FA +F8F9FAF9F9FAF9F9FAF9FAFBFAFAFBFBFBFCFBFBFCFBFBFCFBFBFCFCFCFDFCFCFDFCFCFD +FDFDFEFDFDFDFDFDFEFDFDFEFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFEFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFF +FEFEFEFDFDFEFEFEFDFDFDFDFDFDFEFCFCFDFCFCFDFBFBFCFAFAFBFAFAFBF9F9FAF8F9FA +F7F8F9F5F6F8F5F6F8F3F4F6F3F4F5F1F2F5EFF0F3EEEFF3ECEEF2EBEDF0EAECEFE7E9ED +E6E8EDE4E6EBE3E5EBE1E4E9DEE1E7DEE1E7DBDEE5D9DCE4D8DBE3D6DAE2D5D9E1D3D7DF +D2D6DFD1D5DECFD3DDCFD3DCCDD1DBCCD0DACBCFDACACFD9CACED8C8CDD8C8CDD8C7CCD7 +C7CCD7C6CBD6C5CAD5C5CAD5C5CAD5C4C9D4C4C9D5C4C9D5C3C8D5C4C9D5C3C8D4C3C8D4 +C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C1C6D2C1C6D2C1C6D2 +C1C6D2C1C6D2C1C6D2C1C6D2C1C6D2C1C6D2C1C6D2C1C6D2C1C6D2C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4 +C2C7D3C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C4C9D5C4C9D5C4C9D5C4C9D5C4C9D5C4C9D4 +C5CAD5C5CAD5C5CAD5C5CAD5C6CBD6C6CBD6C6CBD6C6CBD6C7CCD7C7CCD7C7CCD7C8CDD8 +C8CDD8C8CDD7C8CDD8C9CED8C9CED8CACFD9CACFD9CBCFD9CBCFDACCD0DACCD0DACCD0DA +CDD1DBCDD1DBCED2DCCED2DCCED2DCCFD3DCD0D4DDD0D4DDD0D4DDD1D5DED1D5DED2D6DF +D3D6DFD3D7DFD4D8DFD4D8E0D4D9E0D5D9E1D5D9E1D6DAE2D7DAE2D7DAE2D7DAE2D8DBE3 +D8DBE3D8DBE3D9DCE4DADCE4DADDE4DBDEE5DBDEE5DCDFE6DDE0E6DDE0E6DDE0E7DEE1E7 +DFE1E7E0E3E8E0E3E8E0E3E9E1E4E9E1E4E9E1E4E9E2E5EAE3E5EBE3E5EBE4E6EBE5E7EC +E5E7ECE5E7ECE6E8EDE7E9EEE8EAEEE8EAEEE9EBEFEAECF0EAECF0EBEDF0EBEDF1ECEEF1 +EDEEF2EEEFF3EEEFF3EEEFF3EFF0F4F0F1F4F1F2F5F1F2F5F2F3F5F3F4F6F3F4F6F4F5F7 +F4F5F7F5F6F8F5F6F8F6F7F8F7F8F9F7F8F9F8F9FAF8F9FAF8F9FAF9FAFBF9FAFBFAFAFB +FAFAFBFAFAFBFBFBFCFCFCFDFCFCFDFCFCFDFCFCFDFDFDFEFCFCFEFDFDFEFEFEFDFEFEFE +FEFEFEFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE +FDFDFDFEFEFEFDFDFEFCFCFEFCFCFDFBFBFCFBFBFCFAFAFBF8F9FAF8F9FAF7F8F9F5F6F8 +F5F6F8F3F4F7F3F4F6F2F3F5EFF0F3EFF0F4EDEEF2EBEEF0EAECF0E8EAEEE6E8EDE4E6EC +E4E6ECE1E4E9DFE2E8DEE1E8DCDFE6DADDE4D9DCE3D7DAE2D6D9E1D4D8E0D3D7DED2D6DE +D0D4DDCFD3DDCED2DCCDD1DBCCD0DACBCFDACACFD9C9CED8C7CCD7C8CDD8C7CCD7C7CCD7 +C6CBD6C6CBD6C5CAD5C4C9D4C5CAD5C4C9D4C3C8D4C4C9D4C4C9D5C4C9D5C4C9D5C3C8D5 +C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C2C7D3C2C7D3C2C7D3C2C7D3C3C8D4C3C8D4C3C8D4 +C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C3C8D4C3C8D4C3C8D4C3C8D4 +C3C8D4C3C8D4C3C8D4C3C8D4C2C7D3C2C7D3C2C7D3C3C8D4C3C8D4C3C8D4C3C8D3C3C8D4 +C4C9D5C4C9D5C4C9D5C4C9D5C4C9D5C4C9D4C5CAD4C5CAD4C5CAD5C5CAD4C5CAD5C6CBD6 +C6CBD6C6CBD6C6CBD6C7CCD7C7CCD7C7CCD7C8CDD8C8CDD8C8CDD7C8CDD7C9CED7C9CED8 +C9CED8CACFD9CACED9CBCEDACBCFDACCD0DACCD0D9CDD1DACDD1DBCDD1DCCED2DCCED2DC +CED2DCCFD3DDD0D4DDD0D4DDD0D4DDD1D5DED1D5DED2D6DFD2D6DED3D7DFD4D8E0D4D8E0 +D5D9E1D5D9E1D6DAE2D6DAE2D6D9E2D7DAE2D8DBE3D8DBE2D8DBE3D9DCE4D9DCE4DADDE4 +DADDE4DBDEE5DBDEE5DCDFE6DCDFE6DDE0E7DEE1E7DEE1E7DFE2E7DFE2E7DFE2E8E1E4E9 +E1E4E9E2E4EAE2E5EAE2E5EBE3E5EBE3E5EBE4E6ECE4E6ECE5E7ECE6E8EDE6E8EDE7E9EE +E7E9EDE8EAEEE9EBEFE9EBEFEAECF0EBEDF1EBEDF1ECEEF1EDEFF2EDEFF2EEEEF3EEEFF3 +EFF0F4EFF0F4F1F2F4F1F2F5F1F2F5F2F3F6F3F4F5F3F4F6F4F5F7F4F5F7F5F6F8F5F6F8 +F7F8F9F7F8F9F7F8F9F8F9FAF8F9FAF9FAFBF9F9FAFAFAFBFAF9FAFAFAFBFBFBFCFBFBFC +FBFBFCFCFCFDFCFCFDFDFDFEFDFDFEFDFDFDFDFDFDFEFEFDFEFEFEFDFDFEFDFDFDFDFDFD +FEFEFEFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFDFDFDFEFEFE +FDFDFEFCFCFDFBFBFCFBFBFCFBFBFCFAFAFBF9F9FAF9FAFBF8F9FAF6F7F8F5F6F9F4F5F7 +F3F4F6F2F3F6F0F1F4EFF0F3EEEFF3EDEFF2EBEDF1E8EAEEE8EAEEE5E7ECE4E6EBE2E5EA +E0E3E8DFE2E8DDE0E6DBDEE5DADDE4D8DBE3D7DAE2D5D9E1D3D7DFD2D6DFD1D5DED0D4DD +CFD3DCCED2DCCDD1DBCCD0DACBCFDACACED9C9CED8C8CDD8C8CDD7C8CDD7C7CCD7C6CBD6 +C6CBD6C6CBD6C5CAD5C5CAD5C5CAD5C5CAD4C4C9D4C4C9D4C4C9D4C4C9D4C4C9D5C3C8D5 +C3C8D5C3C8D5C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3C2C7D3 +C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D5C3C8D4C3C8D5C4C9D5C4C9D4C4C9D4 +C4C9D4C4C9D4C4C9D4C5CAD5C5CAD5C5CAD5C5CAD5C6CBD6C6CBD6C6CBD6C6CBD6C7CCD7 +C7CCD7C7CCD7C7CCD8C8CDD7C8CDD8C9CED8C9CED8C9CED8CACED9CACFD9CBCFD9CBCFDA +CBCFDACCD0DACCD0DACDD1DBCDD1DBCED2DCCED2DCCFD3DCCFD3DCD0D4DDD0D4DDD0D4DE +D1D5DED1D5DED2D6DFD3D7DFD3D7DFD4D8E0D4D8E0D5D9E1D5D9E1D6D9E1D6DAE2D6DAE2 +D7DAE2D8DBE3D8DBE3D9DCE3D9DCE4DADDE4DADDE4DBDEE5DCDFE6DCDFE6DCDFE6DDE0E7 +DDE0E7DEE1E7DEE1E7DFE2E8DFE2E8E0E3E9E1E4E9E1E4E9E2E4EAE3E5EBE3E5EBE3E5EB +E3E5EBE4E6ECE5E7ECE6E8EDE6E8EDE7E9EDE7E9EEE8EAEEE8EAEEE9EBEFE9EBEFEAECF0 +EBEDF0EBEDF1ECEEF1ECEEF1EDEEF2EEEFF3EEEFF3EFF0F4EFF0F4F0F1F4F0F1F4F1F2F5 +F2F3F5F2F3F6F3F4F6F3F4F6F4F5F7F4F5F8F5F6F8F6F7F8F7F8F9F7F8F9F7F8F9F8F9FA +F8F9FAF9FAFBF9F9FAF9F9FAFAFAFBFAFAFBFBFBFCFBFBFCFBFBFCFBFBFCFCFCFDFDFDFE +FCFCFDFDFDFDFDFDFDFDFDFEFDFDFEFEFEFEFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFE +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFEFEFEFDFDFEFDFDFD +FCFCFDFCFCFDFAFAFBFBFBFCFAFAFBF8F9FAF8F9FAF7F8F9F6F7F9F5F6F8F4F5F7F3F4F6 +F1F2F5F0F1F4EFF0F3EEEEF2ECEEF1EAECF0E9EBEFE6E8EDE5E7ECE4E6EBE1E4E9E1E4E9 +DEE1E7DCDFE6DBDEE5D9DCE4D9DCE3D6DAE2D6DAE2D4D8E0D2D6DED2D6DFD0D4DDCFD3DD +CED2DCCDD1DBCDD1DBCBCFDACACFD9C9CED8C9CED8C9CED8C7CCD7C7CCD7C7CCD7C6CBD6 +C6CBD6C6CBD6C6CBD6C5CAD5C5CAD5C5CAD5C5CAD4C5CAD4C4C9D4C4C9D4C4C9D4C4C9D5 +C4C9D5C4C9D5C4C9D5C4C9D5C4C9D5C4C9D5C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4 +C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4 +C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C3C8D4C4C9D5 +C4C9D5C4C9D5C3C8D5C4C9D5C4C9D5C4C9D4C4C9D4C4C9D4C5CAD4C5CAD5C5CAD5C5CAD5 +C5CAD5C6CBD6C6CBD6C6CBD6C6CBD6C6CBD6C7CCD7C7CCD7C7CCD7C8CDD8C8CDD8C8CDD8 +C8CDD7C9CED8CACED9CACFD9CACFD9CBCFD9CBCFDACCD0DACCD0DACDD1DBCDD1DBCDD1DB +CED2DCCED2DCCFD3DCD0D4DDD0D4DDD1D5DED1D5DED2D6DED2D6DFD3D7DFD3D7DFD4D8DF +D4D8E0D5D9E1D6D9E1D6D9E1D6DAE2D7DAE2D8DBE3D8DBE3D9DCE3D9DCE3DADDE4DADDE4 +DBDEE5DBDEE5DCDFE6DDE0E6DDE0E6DDE0E7DEE1E7DEE1E7DFE2E8E0E3E8E0E3E9E1E4E9 +E1E4E9E2E4EAE2E4EAE3E5EBE4E6EBE4E6EBE5E7ECE5E7ECE6E8EDE6E8EDE6E8EDE7E9ED +E8EAEEE8EAEEE9EBEFE9EBEFEAECF0EAECF0EBEDF0EBEDF1ECEEF1ECEEF1EDEEF2EDEFF2 +EEEFF3EEEFF3EFF0F3EFF0F4F0F1F4F1F2F5F1F2F5F2F3F5F2F3F6F3F4F6F3F4F6F3F4F6 +F5F6F8F5F6F8F6F7F8F6F7F8F7F8F9F7F8F9F7F8F9F8F9FAF8F9FAF9F9FAF9FAFBF9F9FA +FAFAFBFAFAFBFAFAFBFBFBFCFCFCFDFCFCFDFCFCFDFCFCFDFDFDFEFCFCFEFDFDFEFDFDFE +FEFEFEFEFEFEFEFEFEFDFDFDFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFDFDFDFEFEFEFDFDFDFDFDFEFCFCFD +FBFBFCFBFBFCFAFAFBF9F9FAF9FAFBF7F8F9F6F7F8F5F6F8F4F5F8F4F5F7F1F2F5F1F2F5 +EFF0F3EEEFF3EDEEF2EAECF0EAECF0E7E9EDE6E8EDE4E6ECE2E4EAE1E4EADFE2E7DDE0E6 +DCDFE6DADDE4D9DCE3D7DAE2D6DAE2D5D9E1D3D7DFD2D6DFD1D5DED0D4DDCFD3DDCED2DC +CDD1DBCCD0DACBCFD9CACFD9CACFD9C9CED8C8CDD7C8CDD8C7CCD7C7CCD7C7CCD7C6CBD6 +C6CBD6C6CBD6C6CBD6C5CAD5C5CAD5C5CAD5C5CAD5C5CAD5C5CAD5C4C9D4C4C9D4C4C9D4 +C4C9D4C4C9D4C4C9D5C4C9D4C4C9D5C4C9D5C3C8D5C3C8D5C3C8D5C3C8D5C3C8D5C3C8D5 +C3C8D5C3C8D5C3C8D5C3C8D5C3C8D5C3C8D5C3C8D5C3C8D5C3C8D5C3C8D5C3C8D5C3C8D5 +C3C8D5C3C8D5C3C8D5C3C8D5C3C8D5C3C8D5C3C8D5C4C9D5C4C9D5C4C9D4C4C9D4C4C9D4 +C4C9D4C4C9D4C5CAD4C5CAD5C5CAD5C5CAD5C5CAD5C5CAD5C5CAD5C6CBD6C6CBD6C6CBD6 +C6CBD6C7CCD7C7CCD7C7CCD7C7CCD7C8CDD7C8CDD7C8CDD7C9CED8C9CED8C9CED8CACED9 +CACFD9CBCFDACBCFDACCD0DACCD0D9CCD0DACDD1DBCDD1DBCED2DCCED2DCCFD3DDCFD3DD +D0D4DDD1D5DED1D5DED2D6DED2D6DFD3D7DFD3D7DFD3D7DFD4D8E0D4D8E0D5D9E1D6DAE2 +D7DAE2D7DAE2D7DAE2D8DBE3D9DCE3D9DCE4DADDE4DADDE4DBDEE5DBDEE5DCDFE6DCDFE6 +DDE0E7DEE1E7DEE1E7DEE1E7DFE2E8DFE2E8E1E3E9E1E4E9E1E4E9E2E5EAE2E5EAE3E5EB +E3E5EBE4E6ECE5E7ECE5E7ECE6E8ECE6E8EDE7E9EDE7E9EEE7E9EEE8EAEEE9EBEFE9EBEF +EAECF0EAECF0EBEDF0EBEDF1ECEEF1ECEEF1ECEEF1EDEFF2EEEFF3EEEFF3EFF0F4EFF0F4 +F0F1F4F0F1F4F1F2F5F2F3F6F2F3F6F3F4F6F3F4F6F4F5F7F4F5F7F4F5F7F5F6F8F6F7F9 +F6F7F9F7F8F9F7F8F9F8F9FAF8F9FAF8F9FAF9FAFBF9F9FAFAFAFBFAFAFBFAFAFBFBFBFC +FBFBFCFBFBFCFCFCFDFCFCFDFDFDFEFCFCFEFCFCFDFDFDFEFDFDFEFEFEFEFDFDFEFDFDFD +FDFDFDFEFEFEFEFEFEFFFFFFFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFEFEFEFDFDFDFCFCFEFCFCFDFCFCFDFBFBFC +FAFAFBFAFAFBF9FAFBF8F9FAF7F8F9F6F7F8F5F6F8F4F5F7F2F3F6F1F2F6F0F1F4EFF0F4 +EEEFF2EBEDF1EAECF1E8EAEEE7E9EDE6E8EDE3E5EBE3E5EBE0E3E9DEE1E7DEE1E7DBDEE5 +DBDEE5D9DCE3D7DAE2D6DAE2D4D8E0D4D8E0D2D6DFD1D5DED0D4DDCFD3DDCFD3DCCDD1DB +CCD0DACBCFDACBCFDACBCFD9C9CED8C9CED8C8CDD8C8CDD8C8CDD8C7CCD7C7CCD7C7CCD7 +C7CCD7C6CBD6C6CBD6C6CBD6C6CBD6C6CBD6C5CAD5C5CAD5C5CAD5C5CAD5C5CAD5C5CAD5 +C5CAD4C5CAD4C5CAD4C4C9D4C4C9D4C4C9D4C4C9D4C4C9D4C4C9D4C4C9D4C4C9D5C4C9D5 +C4C9D5C4C9D5C4C9D5C4C9D5C4C9D5C4C9D5C4C9D5C4C9D5C4C9D5C4C9D5C4C9D5C4C9D5 +C4C9D4C4C9D4C4C9D4C4C9D4C4C9D4C4C9D4C5CAD4C5CAD4C5CAD5C5CAD5C5CAD5C5CAD5 +C5CAD5C5CAD5C6CBD6C6CBD6C6CBD6C6CBD6C6CBD6C7CCD7C7CCD7C7CCD7C7CCD7C7CCD7 +C8CDD8C8CDD8C8CDD8C9CED8C9CED8C9CED8CACFD9CACFD9CBCFDACBCFDACCD0DACCD0DA +CCD0DACDD1DBCDD1DBCED2DCCED2DCCFD3DCCFD3DDD0D4DDD1D5DED1D5DED2D6DED3D7DF +D3D7DFD4D8DFD4D8E0D5D9E1D6D9E1D6D9E1D7DAE2D7DAE2D8DBE3D8DBE3D9DBE3DADDE4 +DADDE4DBDEE5DBDEE5DCDFE5DCDFE6DCDFE6DDE0E7DEE1E7DEE1E8DFE2E8E0E3E8E0E3E8 +E1E4E9E1E4E9E2E4EAE2E4EAE3E5EBE3E5EBE4E6EBE4E6ECE5E7ECE5E7ECE6E8EDE6E8ED +E7E9EDE7E9EEE8EAEEE9EBEFE9EBEFEAECF0EAECF0EAECF0EBEDF0EBEDF1ECEEF1ECEEF1 +EDEEF2EDEFF2EEEFF3EEEFF3EEEFF3EFF0F4F0F1F4F0F1F4F1F2F5F1F2F5F2F3F5F2F3F6 +F3F4F6F3F4F6F3F4F6F4F5F7F4F5F7F5F6F8F6F7F8F6F7F9F7F8F9F7F8F9F8F9FAF8F9FA +F8F9FAF9F9FAF9FAFBF9F9FAFAFAFBFAFAFBFAFAFBFBFBFCFBFBFCFBFBFCFBFBFDFCFCFD +FDFDFEFDFDFEFCFCFDFDFDFDFDFDFEFEFEFEFEFEFEFDFDFDFEFEFEFEFEFEFEFEFEFEFEFE +FEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFEFEFFFFFFFEFEFEFDFDFDFEFEFEFDFDFEFCFCFDFDFDFEFCFCFDFBFBFCFAFAFBF9F9FA +F9FAFBF8F9FAF7F8F9F6F7F9F5F6F9F5F6F8F3F4F6F1F2F5F0F1F4EFF0F3EEEFF3ECEEF1 +EAECF0E9EBEFE8EAEDE6E8EDE4E6EBE3E5EBE1E4E9DFE2E8DEE1E7DCDFE6DBDEE6D9DCE4 +D8DBE3D7DAE2D5D9E1D4D8E0D3D7DFD2D6DFD1D5DED0D4DDCFD3DDCED2DCCDD1DBCCD0DA +CCD0D9CBCFDACACFD9CACFD9C9CED8C9CED7C9CED8C8CDD7C8CDD7C8CDD8C7CCD7C7CCD7 +C7CCD7C7CCD7C6CBD6C5CAD5C6CBD6C6CBD6C6CBD6C6CBD6C6CBD6C5CAD5C4C9D5C5CAD5 +C5CAD5C5CAD5C5CAD5C5CAD5C5CAD5C5CAD5C5CAD5C5CAD5C4C9D4C5CAD4C5CAD4C5CAD4 +C5CAD4C5CAD4C5CAD4C5CAD4C5CAD4C5CAD4C5CAD4C5CAD4C5CAD4C5CAD4C5CAD4C5CAD5 +C5CAD5C5CAD5C5CAD5C5CAD5C5CAD5C4C9D4C5CAD5C6CBD6C6CBD6C6CBD6C6CBD6C6CBD6 +C5CAD5C6CBD6C7CCD7C7CCD7C7CCD7C7CCD7C8CDD8C8CDD8C8CDD8C8CDD7C9CED8C9CED7 +C9CED8CACFD9CACFD9CACFD9CBCEDACBCFDACCD0D9CCD0DACDD1DBCDD1DBCDD1DBCED2DC +CED2DCCFD3DDCFD3DDD0D4DDD0D4DDD1D5DED1D5DED2D6DED3D7DFD4D8E0D4D8E0D4D9E1 +D5D9E1D6D9E1D7DAE2D7DAE2D8DAE3D8DBE3D9DCE3D9DCE4DADDE4DBDEE5DBDEE5DCDFE6 +DCDFE6DDE0E7DDE0E7DDE0E7DEE1E7DFE2E8E0E3E9E0E3E9E1E4E9E1E4E9E2E5EAE2E5EA +E3E5EBE3E5EBE4E6ECE4E6ECE5E7ECE6E8ECE6E8EDE6E8EDE7E9EEE7E9EEE8EAEEE8EAEE +E9EBEFEAECF0EAECF0EBEDF0EBEDF1ECEEF1ECEEF1ECEEF1EDEFF2EDEFF2EEEFF3EEEFF3 +EEEFF3EFF0F4EFF0F4F0F1F4F1F2F5F1F2F5F2F3F6F2F3F6F3F4F6F3F4F5F4F5F7F4F5F7 +F4F5F7F5F6F8F5F6F8F6F7F9F6F7F9F7F8F8F7F8F9F8F9FAF8F9FAF9FAFBF9FAFBF9F9FA +FAFAFBFAFAFBFAFAFBFBFBFCFBFBFCFBFBFCFCFCFDFCFCFDFCFCFDFCFCFDFCFCFEFDFDFD +FDFDFEFDFDFEFEFEFEFDFDFEFDFDFDFEFEFEFEFEFEFFFFFFFFFFFFFEFEFEFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFF +FEFEFEFEFEFEFEFEFEFDFDFEFDFDFEFDFDFEFCFCFDFCFCFDFBFBFCFAFAFBFAFAFBF8F9FA +F8F9FAF7F8F9F6F7F8F5F6F8F4F5F6F3F4F6F1F2F5F0F1F4EFF0F3EDEEF2ECEEF1EAECF0 +E9EBEFE7E9EEE5E7ECE5E6ECE2E5EAE0E3E9E0E3E8DDE0E7DDE0E6DBDEE5D9DCE3D8DBE3 +D7DAE2D6DAE2D4D8E0D3D7DFD2D6DFD1D5DED0D4DDCFD3DCCED2DCCDD1DCCDD1DBCCD0DA +CCD0DACBCFD9CACFD9CACED9CACED9C9CED8C9CED8C8CDD7C8CDD7C8CDD7C8CDD8C7CCD8 +C7CCD7C7CCD7C7CCD7C7CCD7C7CCD7C6CBD6C6CBD6C6CBD6C6CBD6C6CBD6C6CBD6C6CBD6 +C6CBD6C6CBD6C5CAD5C5CAD5C6CBD6C5CAD5C5CAD5C5CAD5C5CAD5C5CAD5C5CAD5C5CAD5 +C5CAD5C5CAD5C5CAD5C5CAD5C5CAD5C5CAD5C5CAD5C5CAD5C5CAD5C5CAD6C5CAD5C6CBD6 +C6CBD6C6CBD6C6CBD6C6CBD6C6CBD6C6CBD6C6CBD6C7CCD7C7CCD7C7CCD7C7CCD7C7CCD7 +C7CCD7C8CDD8C8CDD7C8CDD7C8CDD7C9CED8C9CED8C9CED8CACED9CACED9CACFD9CBCFD9 +CBCFDACCD0DACCD0DACCD0DACDD1DBCDD1DBCED2DCCED2DCCFD3DDCFD3DDD0D4DDD1D5DE +D1D5DED2D6DED2D6DFD3D7DFD3D7DFD4D8E0D5D9E1D5D9E1D6D9E1D6DAE2D7DAE2D8DBE3 +D8DBE3D9DCE4D9DCE4DADDE4DBDEE5DBDEE5DCDFE6DCDFE6DDE0E6DEE1E7DEE1E7DFE2E8 +DFE2E8E0E3E9E1E4E9E1E4E9E2E4EAE3E5EBE3E5EBE4E6EBE4E6EBE5E7ECE5E7ECE6E8EC +E6E8EDE6E8EDE7E9EEE8EAEEE8EAEEE9EBEFE9EBEFEAECF0EAECF0EBEDF0EBEDF1EBEDF1 +ECEEF1ECEEF1EDEEF2EDEFF2EEEFF3EEEFF3EFF0F3EFF0F4EFF1F4F0F1F4F0F1F4F1F2F5 +F1F2F5F2F3F6F2F3F6F3F4F6F3F4F6F4F5F7F4F5F7F4F5F8F5F6F8F6F7F8F6F7F8F6F7F9 +F7F8F9F7F8F9F8F9FAF8F9FAF8F9FAF9FAFBF9F9FAF9F9FAFAFAFBFAFAFBFAFAFBFBFBFC +FBFBFCFBFBFCFCFCFDFCFCFDFCFCFDFCFCFEFCFCFEFDFDFDFDFDFEFDFDFEFEFEFEFEFEFE +FDFDFDFDFDFDFEFEFEFEFEFEFFFFFFFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFE +FDFDFDFDFDFEFCFCFDFCFCFDFCFCFDFCFCFDFBFBFCFBFBFCFAFAFBF9F9FAF9FAFBF7F8F9 +F6F8F8F6F7F9F4F5F7F3F4F6F2F3F5F1F2F5F0F1F4EEEFF3EDEFF2EBEEF1EAECF0E9EBEF +E7E9EDE6E8EDE4E6EBE2E4EAE1E4E9DFE2E8DFE2E8DDE0E6DBDEE5DADDE4D8DBE3D8DBE3 +D6D9E1D5D9E1D4D8E0D2D6DFD2D6DED1D5DED0D4DDD0D4DDCED2DCCED2DCCDD1DBCCD0DA +CCD0DACBCFDACBCFDACACFD9CACFD9CACED9C9CED8C9CED8C9CED8C8CDD7C8CDD8C8CDD8 +C8CDD8C8CDD8C7CCD8C7CCD7C7CCD7C7CCD7C7CCD7C7CCD7C7CCD7C7CCD7C7CCD7C6CBD6 +C6CBD6C6CBD6C6CBD6C6CBD6C6CBD6C6CBD6C6CBD6C6CBD6C6CBD6C6CBD6C6CBD6C6CBD6 +C6CBD6C6CBD6C6CBD6C6CBD6C6CBD6C6CBD6C6CBD6C6CBD6C6CBD6C6CBD6C7CCD7C7CCD7 +C7CCD7C7CCD7C7CCD7C7CCD7C7CCD7C7CCD7C7CCD8C8CDD8C8CDD8C8CDD8C8CDD7C9CED8 +C9CED8C9CED8CACED9CACED9CACED9CBCFD9CBCFDACBCFDACCD0DACCD0DACCD0DACDD1DB +CDD1DBCED2DCCED2DCCFD3DCD0D4DDD0D4DDD1D5DED2D6DED2D6DED3D7DFD3D7DFD4D8E0 +D4D8E0D4D9E1D6D9E1D6D9E1D7DAE2D7DAE2D8DBE3D9DCE3D9DCE3DADDE4DBDEE5DBDEE5 +DCDFE6DDE0E6DDE0E7DEE1E7DEE1E7DFE2E8E0E3E8E0E3E8E1E4E9E2E4EAE2E4EAE3E5EB +E3E6EBE4E6EBE4E6EBE5E7ECE5E7ECE6E8EDE6E8EDE7E9EDE8EAEEE8EAEEE9EBEFE9EBEF +EAECF0EAECF0EAECF0EBEDF0EBEDF0ECEEF1ECEEF1EDEEF1EDEEF2EEEFF3EEEFF3EEEFF3 +EFF0F3EFF0F4F0F1F4F0F1F4F1F2F5F1F2F5F1F2F5F2F3F5F2F3F6F3F4F6F3F4F6F4F5F7 +F4F5F7F4F5F7F5F6F8F5F6F8F6F7F8F7F8F9F6F7F8F7F8F9F7F8F9F8F9FAF8F9FAF8F9FA +F8FAFBF9FAFBF9F9FAF9F9FAFAFAFBFAFAFBFAFAFBFBFBFCFBFBFCFBFBFCFBFBFCFCFCFD +FCFCFDFDFDFEFDFDFEFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFEFEFEFEFEFE +FEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFEFEFEFDFDFD +FDFDFEFDFDFDFDFDFEFCFCFDFBFBFCFAFAFBFAFAFBF9F9FAF8FAFBF8F9FAF7F8F9F6F7F9 +F4F5F7F4F5F7F3F4F6F2F3F5F1F2F5EEEFF3EEEFF3ECEEF1EBEDF0E9EBEFE7E9EDE7E9ED +E4E6ECE3E5EBE2E4EAE0E3E8DFE2E8DDE0E7DCDFE6DBDEE5D9DCE3D8DBE3D7DAE2D6DAE2 +D5D9E1D3D7DFD3D7DFD2D6DED1D5DED0D4DDCFD3DCCED2DCCED2DCCDD1DBCDD1DBCCD0DA +CCD0DACBCFDACBCFD9CBCFD9CACED9CACFD9CACED9C9CED8C9CED8C9CED8C9CED8C8CDD8 +C8CDD7C8CDD7C8CDD7C8CDD7C8CDD7C8CCD8C7CCD8C8CDD8C7CCD7C7CCD7C7CCD7C7CCD7 +C7CCD7C7CCD7C7CCD7C7CCD7C7CCD7C7CCD7C7CCD7C7CCD7C7CCD7C7CCD7C7CCD7C7CCD7 +C7CCD7C7CCD7C7CCD7C7CCD7C7CCD7C7CCD7C7CCD7C7CCD7C7CCD7C8CDD8C7CCD7C7CCD7 +C8CDD7C8CDD7C8CDD7C8CDD7C8CDD8C8CED8C9CED8C9CED8C9CED8CACED9CACED9CACED9 +CACFD9CBCFDACBCFD9CCCFDACCD0DACCD0DACDD1DBCDD1DBCDD1DBCED2DCCED2DCCFD3DD +CFD3DDD0D4DDD0D4DED1D5DED1D5DED2D6DED3D7DFD4D8E0D4D8E0D5D9E1D5D9E1D5D9E1 +D7DAE2D7DAE2D8DBE3D8DBE3D8DBE3DADDE4DADDE4DBDEE5DCDFE6DCDFE6DDE0E7DDE0E7 +DEE1E7DFE2E8DFE2E8E0E3E9E1E4E9E1E4E9E2E5EAE3E5EBE3E5EBE3E5EBE4E6ECE5E7EC +E5E7ECE6E8EDE6E8EDE7E9EEE7E9EEE8EAEEE9EBEFE9EBEFE9EBEFEAECF0EAECF0EBEDF1 +EBEDF1ECEEF1ECEEF1EDEEF2EDEFF2EDEFF3EEEFF3EFF0F3EFF0F4EFF0F4EFF0F4F0F1F4 +F1F2F5F1F2F5F2F3F6F2F3F6F2F3F6F3F4F6F3F4F6F4F5F7F4F5F7F4F5F7F5F6F8F5F6F8 +F6F7F8F6F7F9F6F7F9F7F8F9F7F8F9F7F8F9F8F9FAF8F9FAF9FAFBF9FAFBF9F9FAF9FAFB +FAFAFBFAFAFBFAFAFBFBFBFCFBFBFCFBFBFCFBFBFCFCFCFDFCFCFDFCFCFDFDFDFEFCFCFD +FDFDFDFEFEFEFEFEFEFDFDFEFDFDFEFDFDFDFDFDFDFEFEFEFFFFFFFFFFFFFEFEFEFEFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFEFEFEFDFDFD +FCFCFEFCFCFDFCFCFDFBFBFCFBFBFCF9F9FAF9FAFBF8F9FAF8F9FAF7F8F9F5F6F8F4F5F7 +F4F5F6F3F4F6F2F3F5F0F1F4EFF0F4EDEEF2ECEEF1EBEDF0E8EAEEE8EAEEE6E8EDE4E6EC +E3E6EBE1E4E9E1E4E9DFE2E8DDE0E7DDE0E6DBDEE5DBDEE5D8DCE3D7DAE2D7DAE2D5D9E1 +D5D9E1D3D7DFD2D6DED2D6DED1D5DED1D5DDCFD3DCCFD3DCCED2DCCED2DCCDD1DBCDD1DB +CCD0DACCD0DACCCFDACBCFD9CBCFDACBCFDACACFD9CACFD9CACFD9CACED9C9CED8C9CED8 +C9CED8C9CED8C9CED8C8CDD7C8CDD7C8CDD7C8CDD7C8CDD8C8CDD8C8CDD8C8CDD8C8CDD8 +C8CDD8C8CDD8C8CDD8C8CDD8C8CDD8C7CCD8C7CCD8C7CCD8C7CCD8C8CCD8C8CDD8C8CDD8 +C8CDD8C8CDD8C8CDD8C8CDD8C8CDD8C8CDD8C8CDD8C8CDD7C8CDD8C9CED8C9CED8C9CED8 +C9CED8C9CED8CACFD9CACFD9CACFD9CACED9CBCFDACBCFDACBCFDACCD0DACCD0DACCD0DA +CCD0DACDD1DBCDD1DBCED2DCCED2DCCFD3DCCFD3DDD0D4DDD0D4DDD1D5DED1D5DED2D6DE +D3D7DFD3D7DFD3D7DFD4D8E0D5D9E1D6D9E1D6D9E1D7DAE2D7DAE2D8DBE3D9DCE3D9DCE3 +DBDEE5DBDEE5DBDEE5DDE0E6DDE0E6DEE1E7DEE1E7DFE2E8E0E3E8E0E3E8E1E4E9E2E4EA +E2E4EAE3E5EBE3E5EBE4E6EBE5E7ECE5E7ECE6E8EDE6E8EDE7E9EDE7E9EEE8EAEEE9EBEF +E9EBEFE9EBEFEAECF0EAECF0EBEDF0EBEDF1ECEEF1ECEEF1EDEEF2EDEEF2EDEFF2EEEFF3 +EEEFF3EFF0F3EFF0F3EFF0F4F0F1F4F1F2F5F1F2F5F1F2F5F1F2F5F2F3F6F3F4F6F3F4F6 +F3F4F6F3F4F6F4F5F7F4F5F7F5F6F8F5F6F8F5F6F8F6F7F8F6F7F9F6F7F9F7F8F9F7F8F9 +F8F9FAF8F9FAF8F9FAF8F9FAF9FAFBF9F9FAF9F9FAFAFAFBFAFAFBFAFAFBFBFBFCFBFBFC +FBFBFCFBFBFCFBFBFDFCFCFDFCFCFDFCFCFDFDFDFEFCFCFEFDFDFDFDFDFEFDFDFEFEFEFE +FEFEFEFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFEFEFEFDFDFEFCFCFDFDFDFE +FCFCFDFCFCFDFBFBFCFAFAFBFAFAFBF8F9FAF8F9FAF7F8F9F5F6F8F5F6F8F4F5F7F3F4F6 +F2F3F6F0F1F4EFF0F4EDEFF2EDEFF2EBEDF1E9EBEFE9EBEFE7E9EDE5E7ECE4E6EBE2E4EA +E1E4E9E0E3E9DEE1E7DDE0E7DCDFE6DBDEE5D9DCE4D8DBE3D7DAE2D6DAE2D6D9E1D4D8E0 +D3D7DFD3D7DFD2D6DFD1D5DED0D4DDD0D4DDCFD3DDCED2DCCED2DCCDD1DCCCD0DBCDD1DB +CCD0DACCD0D9CCD0DACCD0DACBCFDACBCFD9CBCFDACACFD9CACFD9CACED9CACED9CACED9 +CACED9C9CED8C9CED8C9CED8C9CED8C9CED8C9CED8C9CED8C9CED8C9CED8C9CED8C9CED8 +C9CED8C9CED8C8CDD8C8CDD8C8CDD8C8CDD8C8CDD8C8CDD8C9CED8C9CED8C9CED8C9CED8 +C9CED8C9CED8C9CED8C9CED8C9CED8C9CED8C9CED8CACFD9CACED9CACED9CACED9CACFD9 +CBCFD9CBCFD9CBCFD9CBCFDACBCFDACCD0DACCD0DACDD1DBCDD1DBCDD1DBCDD1DBCDD1DC +CED2DCCED2DCCFD3DDD0D4DDD0D4DDD1D5DED1D5DED2D6DFD2D6DFD3D7DFD3D7DFD4D8E0 +D4D8E0D5D9E1D6D9E1D6DAE2D7DAE2D8DBE3D8DBE3D9DCE4DADDE4DADDE4DCDFE6DCDFE6 +DCDFE6DEE1E7DEE1E7DFE2E7DFE2E8DFE3E8E1E4E9E1E4E9E2E4EAE3E5EBE3E5EBE4E6EC +E4E6ECE5E7ECE6E8EDE6E8EDE7E9EEE7E9EEE8EAEEE8EAEEE9EBEFE9EBEFEAECF0EAECF0 +EBEDF1EBEDF1ECEEF1ECEEF1EDEFF2EDEFF2EEEFF3EEEFF3EEEFF3EFF0F4EFF0F4F0F1F4 +F0F1F4F0F1F4F1F2F5F2F3F6F2F3F6F2F3F6F2F3F6F3F4F6F4F5F7F4F5F7F4F5F7F4F5F7 +F5F6F8F5F6F8F6F7F8F6F7F9F6F7F8F7F8F9F7F8F9F7F8F9F8F9FAF8F9FAF8F9FAF9FAFB +F9FAFBF9F9FAF9F9FAFAFAFBFAFAFBFAFAFBFBFBFCFBFBFCFBFBFCFBFBFCFCFCFDFCFCFD +FCFCFDFCFCFDFDFDFEFDFDFEFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFDFDFDFDFDFDFEFEFE +FEFEFEFEFEFEFFFFFFFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFEFEFEFDFDFDFEFEFEFDFDFDFCFCFEFCFCFDFCFCFD +FBFBFCFAFAFBF9F9FAF9FAFBF9FAFBF8F9FAF7F8F9F6F7F9F5F6F8F4F5F7F3F4F6F2F3F5 +F1F2F5EFF0F3EEEFF3EDEFF2EBEDF0EAECF0E9EBEFE7E9EDE6E8EDE4E6EBE3E5EBE1E4E9 +E0E3E9DFE2E8DEE1E7DDE0E7DBDEE5DADDE4DADDE4D8DBE3D8DBE3D6DAE2D5D9E1D5D9E1 +D4D8E0D3D7DFD2D6DED2D6DED1D5DED0D4DDD0D4DDCFD3DCCFD3DCCED2DCCED2DCCED2DC +CDD1DBCDD1DBCDD1DBCCD0DACCD0DACCD0DACCD0DACCD0DACBCFDACBCFDACBCFDACBCFDA +CBCFD9CBCFD9CACFD9CACED9CACFD9CACFD9CACFD9CACFD9CACFD9CACFD9CACFD9CACFD9 +CACFD9CACFD9CACFD9CACFD9CACFD9CACFD9CACFD9CACFD9CACFD9CACFD9CACFD9CACFD9 +CACFD9CACFD9CACED9CACFD9CBCFD9CBCFDACBCFDACBCFDACBCFDACCD0DACCD0DACCD0DA +CCD0DACCD1DACDD1DBCDD1DBCDD1DBCED2DCCED2DCCFD3DCCFD3DDD0D4DDD0D4DDD0D4DD +D1D5DED2D6DED2D6DFD3D7DFD3D7DFD4D8E0D4D8E0D5D9E1D6D9E1D6D9E1D7DAE2D7DAE2 +D8DBE3D9DCE3D9DCE3DADDE4DBDEE5DBDEE5DCDFE6DDE0E6DDE0E7DFE1E8DFE2E8DFE2E8 +E0E3E8E2E4EAE2E4EAE2E5EAE3E5EBE3E5EBE5E6ECE5E7ECE5E7ECE7E9EDE7E9EDE8EAEE +E8EAEEE9EBEFE9EBEFE9EBEFEAECF0EBEDF0EBEDF1ECEEF1ECEEF1EDEEF2EDEFF2EDEFF2 +EEEFF3EEEFF3EFF0F3EFF0F4F0F1F4F0F1F4F0F1F4F1F2F5F1F2F5F2F3F5F2F3F5F2F3F6 +F3F4F6F3F4F6F3F4F6F4F5F7F4F5F7F4F5F7F5F6F8F5F6F8F5F6F8F6F7F8F6F7F9F6F7F8 +F7F8F9F7F8F9F7F8F9F8F9FAF8F9FAF8F9FAF9FAFBF9FAFBF9FAFBF9F9FAFAFAFBFAFAFB +FAFAFBFBFBFCFBFBFCFBFBFCFBFBFCFBFBFDFCFCFDFCFCFDFCFCFDFDFDFEFCFCFEFDFDFE +FDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFEFEFE +FEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFDFDFEFDFDFDFDFDFEFCFCFDFBFBFCFBFBFCFAFAFB +FAFAFBF9FAFBF8F9FAF8F9FAF7F8F9F6F7F8F5F6F8F4F5F7F4F5F7F3F4F6F2F3F5F0F1F4 +EFF0F3EEEFF3EDEEF2ECEEF1EAECF0E9EBEFE8EAEEE6E8EDE5E7ECE4E6EBE2E4EAE1E4E9 +DFE3E8DFE2E8DDE0E7DCDFE6DCDFE6DADDE4DADDE4D8DBE3D7DAE2D7DAE2D5D9E1D5D9E1 +D4D8E0D3D7DFD3D7DFD2D6DED1D5DED1D5DED0D4DDD0D4DDD0D4DDCFD3DCCFD3DCCED2DC +CED2DCCED2DCCED2DCCDD1DBCDD1DBCED2DBCDD1DACCD0DACCD0DACCD0DACCD0DACCD0DA +CCD0DACCD0DACBCFDACBCFDACBCFDACBCFDACBCFDACBCFDACBCFDACBCFDACBCFDACBCFDA +CBCFDACBCFDACBCFDACBCFDACBCFDACBCFDACBCFDACBCFDACBCFDACBCFDACBCFD9CCCFDA +CCD0DACCD0DACCD0DACCD0DACCD0DACCD0DACDD1DBCDD2DBCDD1DBCDD1DBCED2DCCED2DC +CED2DCCFD3DCCFD3DCD0D4DDD0D4DDD0D4DDD1D5DED1D5DED2D6DED2D6DED3D7DFD3D7DF +D4D8E0D5D9E1D5D9E1D6D9E1D6D9E1D7DAE2D8DBE3D8DBE3D9DCE3D9DCE3DADDE4DBDEE5 +DBDEE5DDE0E6DDE0E6DDE0E7DFE2E8DFE2E8E0E3E8E1E4E9E1E4E9E2E4EAE3E5EBE3E5EC +E4E6EBE5E7ECE5E7ECE6E8EDE7E9EDE7E9EDE8EAEEE8EAEEE9EBEFEAECF0EAECF0EAECF0 +EBEDF0EBEDF0ECEEF1ECEEF1EDEEF2EEEFF3EEEFF3EFF0F3EFF0F3EFF0F3F0F1F4F0F1F4 +F1F2F5F1F2F5F1F2F5F2F3F5F2F3F5F3F4F6F3F4F6F3F4F6F3F4F6F4F5F7F4F5F7F4F5F7 +F5F6F8F5F6F8F5F6F8F6F7F8F6F7F8F6F7F9F7F8F9F7F8F9F7F8F9F7F8F9F8F9FAF8F9FB +F8F9FAF9FAFBFAFAFBF9F9FAF9F9FAFAFAFBFAFAFBFAFAFBFAFAFBFBFBFCFCFCFDFBFBFC +FBFBFCFCFCFDFCFCFDFCFCFDFCFCFDFDFDFEFCFCFEFDFDFDFDFDFDFEFEFDFEFEFEFEFEFE +FEFEFEFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFEFEFEFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE +FFFFFFFEFEFEFDFDFDFDFDFEFEFEFDFDFDFEFCFCFDFCFCFDFCFCFDFBFBFCFAFAFBFAFAFB +F9F9FAF9FAFBF7F8F9F7F8F9F6F7F8F5F6F8F4F5F7F3F4F6F2F3F5F1F2F5F0F1F4EFF0F3 +EDEFF2EDEEF2EAECF0E9EBEFE9EBEFE7E9EDE6E8EDE4E6ECE3E5EBE2E4EAE0E3E9E0E3E9 +DEE1E7DDE0E6DCDFE6DBDEE5DADDE4D9DCE3D8DBE3D7DAE2D6DAE2D6D9E1D5D9E1D4D8E1 +D3D8DFD3D7DFD2D6DFD2D6DED1D5DED1D5DED1D5DED0D4DDD0D4DDCFD3DDCFD3DDCFD3DC +CFD3DCCED2DCCED2DCCED2DCCED2DCCDD1DBCDD1DBCDD1DBCDD1DBCDD1DBCDD1DBCDD1DB +CCD0DACCD0DACCD0DACCD0DACCD0DACCD0DACCD0DACCD0DACCD0DACCD0DACCD0DACCD0DA +CCD0DACCD0DACCD0DACCD0DACCD0DACCD0DACCD0DACCD0DACCD0DACCD1DACDD1DBCDD1DB +CDD1DBCDD1DBCDD1DBCDD1DBCDD1DCCED2DCCED2DCCED2DCCFD3DCCFD3DDCFD3DDD0D4DD +D0D4DDD1D5DED1D5DED1D5DED2D6DED2D6DFD3D7DFD3D7DFD4D8E0D4D8E0D5D9E1D6D9E1 +D6DAE2D7DAE2D7DAE2D8DBE3D9DCE3D9DCE4DADDE4DADDE4DBDEE5DCDFE6DDE0E6DEE1E7 +DEE1E7DFE2E7E0E3E8E0E3E9E1E4E9E2E4EAE2E5EAE3E5EBE4E5EBE4E6ECE5E7ECE6E8ED +E6E8EDE7E9EDE8EAEEE8EAEEE9EBEFE9EBEFEAECF0EAEDF0EBEDF1EBEDF1ECEEF1ECEEF1 +EDEFF2EDEFF2EEEFF3EFF0F3EFF0F4F0F1F4F0F1F4F0F1F4F1F2F5F1F2F5F2F3F5F2F3F6 +F2F3F6F3F4F6F3F4F6F4F5F6F4F5F7F4F5F7F4F5F7F5F6F8F5F6F8F5F6F8F6F7F8F6F7F9 +F6F7F8F7F8F9F7F8F9F7F8F9F8F9FAF8F9FAF8F9FAF8F9FAF8F9FAF9F9FAF9F9FAF9F9FA +FAF9FAFAFAFBFAFAFBFAFAFBFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFCFCFDFCFCFDFCFCFD +FDFDFEFCFCFEFDFDFEFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFEFEFE +FEFEFEFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE +FEFEFEFDFDFDFEFEFEFDFDFDFDFDFDFDFDFEFCFCFDFBFBFCFBFBFCFAFAFBF9F9FAF9FAFB +F8F9FBF8F9FAF7F8F9F6F7F8F5F6F8F4F5F7F3F4F6F2F3F5F1F2F5F0F1F4EFF0F3EEEFF3 +ECEEF1EAECF0EAECF0E9EBEFE8EAEEE6E8EDE4E6ECE4E6EBE2E5EBE2E5EAE0E3E8DFE2E8 +DEE1E8DDE0E6DDE0E6DBDEE5DADDE4D9DCE4D8DBE3D8DBE3D7DAE2D6DAE1D6D9E1D5D9E1 +D4D8E0D4D8E0D3D7DFD3D7DFD2D6DED2D6DFD2D6DED1D5DED1D5DED1D5DDD0D4DDD0D4DD +D0D4DDD0D4DDCFD3DCCFD3DDCFD3DCCFD3DCCFD3DCCED2DCCED2DCCED2DCCED2DCCED2DC +CED2DCCED2DCCDD1DBCDD1DBCDD1DBCDD1DBCDD1DBCDD1DBCDD1DBCDD1DBCDD1DBCDD1DB +CDD1DBCDD1DBCDD1DBCED2DCCED2DCCED2DCCED2DCCED2DCCED2DCCED2DCCFD3DCCFD3DC +CFD3DCCFD3DDD0D4DDD0D4DDD0D4DDD0D4DDD1D5DED1D5DED1D5DED2D6DED2D6DED2D6DE +D3D7DFD3D7DFD4D8E0D4D8E0D5D9E1D5D9E1D6D9E1D6DAE2D7DAE2D8DBE3D8DBE3D9DCE3 +D9DCE4DADDE4DBDEE5DBDEE5DDE0E6DDE0E6DDE0E7DFE2E8DFE2E8E0E3E8E0E3E8E2E4EA +E2E4EAE2E4EAE4E6EBE4E6EBE4E6ECE6E8EDE6E8EDE7E9EDE8EAEEE8EAEEE9EBEFE9EBEF +EAECF0EAECF0EBEDF0ECEEF1ECEEF1EDEEF2EDEFF2EDEFF2EEEFF3EEEFF3EFF0F3EFF0F4 +F0F1F4F1F2F5F1F2F5F1F2F5F1F2F5F2F3F5F3F4F6F3F4F6F3F4F6F3F4F6F4F5F7F4F5F7 +F4F5F7F5F6F8F5F6F8F5F6F8F6F7F9F6F7F9F6F7F9F7F8F9F7F8F9F7F8F9F7F8F9F8F9FA +F8F9FAF8F9FAF8FAFBF9FAFBF9FAFBF9FAFBF9FAFBFAFAFBFAFAFBFAFAFBFAFAFBFBFBFC +FBFBFCFBFBFCFBFBFCFBFBFCFCFCFDFCFCFDFCFCFDFCFCFDFDFDFEFCFCFEFDFDFDFDFDFD +FDFDFDFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFEFEFE +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFDFDFD +FDFDFEFEFEFEFDFDFDFCFCFEFCFCFDFBFBFCFCFCFDFAFAFBFAFAFBF9FAFBF9F9FAF9FAFB +F7F8F9F7F8F9F6F7F9F4F5F7F4F5F7F2F3F6F2F3F5F1F2F5EFF0F3EFF0F4EDEEF2EBEDF1 +EBEDF0E9EBEFE8EAEEE7E9EEE5E7ECE5E7ECE3E5EBE3E5EBE1E4E9E0E3E9E0E3E8DEE1E7 +DEE1E7DCDFE6DBDEE5DADDE4D9DCE4D9DCE4D8DBE3D7DAE2D7DAE2D6D9E1D5D9E1D5D9E1 +D4D8E0D4D8E0D3D7DFD3D7DFD2D6DFD2D6DFD2D6DED1D5DED1D5DED1D5DED1D5DED0D4DE +D0D4DDD0D4DDD0D4DDD0D4DDCFD3DDCFD3DDCFD3DDCFD3DCCFD3DCCFD3DCCFD3DCCFD3DD +CED2DCCED2DCCED2DCCED2DCCED2DCCED2DCCED2DCCED2DCCED2DCCED2DCCED2DCCED2DC +CED2DCCED2DCCFD3DCCFD3DCCFD3DCCFD3DCCFD3DDCFD3DDCFD3DDD0D4DDD0D4DDD0D4DD +D0D4DDD1D5DED1D5DED1D5DED2D6DED2D6DED2D6DFD3D7DFD3D7DFD3D7DFD4D8E0D4D8E0 +D5D9E1D5D9E1D6DAE2D6DAE2D7DAE2D7DAE2D8DBE3D8DBE3D9DCE4DADDE4DADDE4DBDEE5 +DCDFE6DCDFE6DDE0E7DEE1E7DEE1E7E0E3E8E0E3E9E0E3E9E1E4E9E2E5EAE3E5EBE3E5EB +E5E7ECE5E7ECE6E8ECE7E9EDE7E9EEE8EAEEE9EBEFE9EBEFEAECF0EAECF0EBEDF1EBEDF1 +ECEEF1EDEEF2EDEFF2EEEFF3EEEFF3EEEFF3EFF0F4EFF0F4F0F1F4F0F1F4F1F2F5F2F3F5 +F2F3F6F2F3F6F2F3F6F3F4F6F3F4F6F4F5F7F4F5F7F4F5F7F4F5F7F5F6F8F5F6F8F6F7F8 +F6F7F8F6F7F9F7F8F9F7F8F9F7F8F9F8F9FAF8F9FAF8F9FAF8F9FAF8F9FAF9F9FAF9F9FA +F9F9FAF9F9FAFAFAFBFAFAFBFAFAFBFAFAFBFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFBFBFC +FCFCFDFCFCFDFCFCFDFDFDFEFCFCFEFDFDFEFDFDFDFDFDFDFDFDFEFEFEFDFEFEFEFDFDFD +FDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFEFEFEFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFDFDFDFEFEFE +FDFDFEFCFCFDFDFDFEFCFCFDFBFBFCFBFBFCFBFBFCFAFAFBF9F9FAF8FAFBF8F9FAF8F9FA +F7F8F9F6F7F8F5F6F8F4F5F7F3F4F6F2F3F6F1F2F5F0F1F4EFF0F4EEEFF2EDEEF2EBEDF1 +EAECF0E9EBEFE7E9EEE7E9EEE6E8ECE5E7ECE3E5EBE2E5EAE2E4EAE0E3E8E0E3E8DEE1E7 +DDE0E7DDE0E6DCDFE6DBDEE5DADDE4DADDE4D9DCE3D8DBE3D8DBE3D7DAE2D7DAE2D6DAE2 +D6D9E1D5D9E1D5D9E1D5D9E1D4D8E0D4D8DFD3D7DFD3D7DFD3D7DFD3D7DFD2D6DFD2D6DF +D2D6DED2D6DED2D6DED1D5DED1D5DED1D5DED1D5DED1D5DED1D5DED1D5DDD0D4DDD0D4DD +D0D4DDD0D4DDD0D4DDD0D4DDD0D4DDD0D4DDD0D4DDD0D4DDD0D4DDD0D4DDD0D4DDD1D5DE +D1D5DED1D5DED1D5DED1D5DED1D5DED1D5DED2D6DED2D6DED2D6DED2D6DFD2D6DFD3D7DF +D3D7DFD3D7DFD4D8E0D4D8E0D5D9E1D5D9E1D5D9E1D6D9E1D6D9E1D7DAE2D7DAE2D8DBE3 +D8DBE3D9DCE3D9DCE3DADDE4DADDE4DBDEE5DCDFE6DDE0E6DDE0E6DEE1E7DFE2E8DFE2E8 +E0E3E8E0E3E8E1E4E9E2E5EAE2E5EAE4E6EBE4E6EBE4E6ECE6E8EDE6E8EDE7E9EDE8EAEE +E8EAEEE9EBEFE9EBEFEAECF0EBEDF0EBEDF1ECEEF1ECEEF2EDEFF2EEEFF3EEEFF3EFF0F3 +EFF0F3F0F1F4F0F1F4F1F2F5F1F2F5F1F2F5F2F3F5F2F3F6F3F4F6F3F4F6F3F4F6F4F5F7 +F4F5F7F4F5F7F5F6F8F5F6F8F6F7F8F6F7F8F6F7F9F6F7F9F7F8F9F7F8F9F7F8F9F8F9FA +F8F9FAF8F9FAF8F9FAF9FAFBF9FAFBF9FAFBF9FAFBF9FAFBFAFAFBFAFAFBFAFAFBFAFAFB +FBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFDFDFEFDFDFE +FDFDFEFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFDFDFEFDFDFDFEFEFEFEFEFEFEFEFE +FEFEFEFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFEFEFEFEFEFEFDFDFD +FDFDFEFCFCFDFBFBFCFCFCFDFBFBFCFBFBFCF9F9FAF9FAFBF8FAFBF8F9FAF7F8F9F6F7F8 +F5F6F9F5F6F8F4F5F7F3F4F6F2F3F5F1F2F5F0F1F4EFEFF3EEEFF3EDEFF2ECEEF1EBEDF0 +E9EBEFE9EBEFE7E9EEE7E9EDE5E7EDE4E6EBE4E6EBE2E4EBE2E4EAE0E3E8DFE2E8DFE2E8 +DEE1E8DEE1E7DCDFE6DBDEE5DBDEE5DADDE4D9DCE3D9DCE3D8DBE3D8DBE3D7DAE2D7DAE2 +D7DAE2D6D9E1D7DAE2D6D9E1D5D9E1D5D9E1D5D9E1D4D8E0D4D8E0D4D8E0D3D7DFD3D7DF +D3D7DFD3D7DFD3D7DFD2D6DED2D6DFD2D6DED2D6DFD2D6DED2D6DED2D6DED2D6DED2D6DE +D2D6DED2D6DED2D6DED2D6DED2D6DED2D6DED2D6DED2D6DED2D6DED2D6DED2D6DED2D6DE +D2D6DFD2D6DED3D7DFD3D7DFD3D7DFD3D7DFD4D8E0D4D8E0D4D8E0D4D8E0D5D9E1D5D9E1 +D5D9E1D6D9E2D7DAE2D7DAE2D7DAE2D7DAE2D8DBE3D9DBE3D9DCE3D9DCE3DADDE4DBDEE5 +DCDFE6DCDFE6DCDFE6DDE0E6DDE0E6DFE2E8DFE2E8DFE2E8E1E4E9E2E4EAE2E4EAE2E4EA +E3E5EBE4E6EBE4E6EBE6E8EDE6E8EDE7E9EDE8EAEEE8EAEEE9EBEFE9EBEFEAECF0EBEDF1 +EBEDF0ECEEF1EDEFF2EDEEF2EDEEF2EEEFF3EFF0F4EFF0F3F0F1F4F0F1F4F1F2F5F2F3F6 +F1F2F5F2F3F6F2F3F5F3F4F6F3F4F6F3F4F6F4F5F7F4F5F7F4F5F8F5F6F9F5F6F8F6F7F8 +F7F8F9F6F7F8F7F8F9F8F9F9F7F8F9F7F8F9F8F9FAF9FAFBF8F9FAF8FAFBF9FAFBFAFAFB +F9F9FAF9F9FAF9F9FAFAFAFBFAFAFBFAFAFBFAFAFBFBFBFCFCFCFDFBFBFCFBFBFCFBFBFC +FCFCFDFDFDFEFCFCFDFCFCFDFCFCFEFCFCFEFCFCFEFDFDFEFDFDFDFDFDFDFDFDFDFEFEFE +FEFEFEFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFEFEFEFEFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFDFDFDFDFDFEFEFEFDFDFDFEFCFCFD +FCFCFDFCFCFDFCFCFDFBFBFCFAFAFBF9F9FAF9F9FAF8FAFBF8F9FAF6F7F9F6F7F8F5F6F8 +F5F6F8F4F5F7F2F3F6F2F3F5F0F1F5EFF0F3EFF0F3EDEEF2EDEEF2EBEDF1EAECF0E9EBF0 +E8EAEEE8EAEEE6E8EDE5E7ECE4E6ECE4E5EBE3E5EBE1E4EAE1E4E9E0E3E8DFE2E8DFE2E8 +DDE0E7DCDFE6DCDFE6DBDEE5DADDE4DADDE4D9DCE4D9DCE4D8DBE3D8DBE3D8DBE3D7DAE2 +D7DAE2D7DAE2D6DAE2D6DAE2D6D9E1D5D9E1D5D9E1D5D9E1D4D8E0D4D8E1D4D9E1D4D8E0 +D4D8E0D3D7DFD3D8DFD3D7DFD3D7DFD4D8E0D3D7DFD3D7DFD3D7DFD3D7DFD3D7DFD3D7DF +D3D7DFD3D7DFD3D7DFD3D7DFD3D7DFD3D7DFD3D7DFD3D7DFD4D8E0D3D7DFD3D8DFD3D7DF +D4D8E0D4D8E0D5D9E1D4D8E0D5D9E1D5D9E1D6D9E1D5D9E1D6DAE2D7DAE2D6DAE2D7DAE2 +D7DAE2D8DBE3D8DBE3D8DBE3D9DCE3DADDE4DADDE4DADDE5DBDEE5DCDFE6DDE0E6DDE0E6 +DDE0E7DEE2E8DEE1E7E0E3E8E1E4E9E1E3E9E2E4EAE3E5EBE3E5EBE4E6EBE4E6ECE5E7EC +E6E8EDE7E9EDE7E9EEE8EAEEE9EBEFE9EBEFEAECF0EAECF0EBEDF0ECEEF1ECEEF1EDEEF2 +EEEFF3EEEFF3EEEFF3EFF0F3F0F1F4F0F1F4F1F2F5F1F2F5F2F3F5F2F3F6F3F4F6F3F4F6 +F3F4F6F4F5F7F4F5F7F5F6F8F5F6F8F5F6F8F6F7F8F6F7F8F6F7F8F7F8F9F7F8F9F7F8F9 +F7F9FAF8F9FAF8F9FAF8F9FAF8F9FAF9FAFBF9F9FAF9F9FAF9F9FAFAFAFBFAFAFBFAFAFB +FAFAFBFAFAFBFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFCFCFDFCFCFDFCFCFDFCFCFDFCFCFE +FCFCFEFDFDFEFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFE +FEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFDFDFDFEFEFEFDFDFDFDFDFEFDFDFEFCFCFD +FCFCFDFBFBFCFBFBFCFAFAFBFAFAFBF9F9FAF9FAFBF8F9FAF7F8F9F6F7F9F6F7F9F5F6F8 +F4F5F7F3F4F6F2F3F6F1F2F5F0F1F4EFF0F4EEEFF3EDEFF2EDEEF2ECEEF1EBEDF0EAECF0 +E9EBEFE8EAEEE7E9EDE6E8EDE5E7ECE4E6ECE4E6EBE3E5EBE2E4EAE1E4E9E0E3E9E0E3E8 +DFE2E8DEE1E7DEE1E7DDE0E7DDE0E6DCDFE6DCDFE5DCDFE5DBDEE5DBDEE5DADDE4DADDE4 +DADCE4D9DCE3D9DCE3D8DBE3D8DBE3D8DBE3D8DBE3D8DBE3D7DAE2D7DAE2D7DAE2D7DAE2 +D7DAE2D6DAE2D6DAE2D6DAE2D6D9E1D6D9E1D6D9E1D6D9E1D6D9E1D6D9E1D6D9E1D6D9E1 +D6D9E1D6D9E1D6D9E1D6D9E1D6D9E1D6DAE2D6DAE2D6DAE2D7DAE2D7DAE2D7DAE2D7DAE2 +D7DAE2D8DBE3D8DBE3D8DBE3D8DBE3D8DBE3D9DCE4D9DCE4DADDE4DADCE4DADDE5DBDEE5 +DBDEE5DCDFE5DCDFE6DDE0E7DEE1E7DEE1E7DFE2E8DFE2E8E0E3E8E0E3E8E1E3E9E2E5EA +E2E5EAE3E5EAE3E5EBE4E6EBE5E7ECE5E7ECE6E8EDE7E9EEE7E9EEE8EAEEE9EBEFE9EBEF +EAECEFEAECF0EBEDF1ECEEF1EDEEF2EDEFF2EEEFF2EEF0F3EFF0F3EFF0F4F0F1F4F0F1F4 +F1F2F5F1F2F5F2F3F6F3F4F6F3F4F6F4F5F7F4F5F6F4F5F7F5F6F8F5F6F8F5F6F8F5F6F8 +F6F7F9F7F8F9F6F7F9F7F8F9F8F9FAF8F9F9F8F9FAF9F9FAF9F9FAF9F9FAF9FAFBF9FAFB +FAFAFBFAFAFBF9FAFBFAFAFBFBFAFBFBFAFBFBFAFBFBFBFCFBFBFCFBFBFCFCFCFDFBFBFC +FCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFDFDFDFDFDFEFDFDFEFDFDFEFDFDFEFDFDFEFDFDFE +FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFEFEFE +FEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFEFEFEFEFEFEFDFDFDFCFCFDFDFDFEFDFDFEFCFCFD +FBFBFCFAFAFBFAFAFBF9F9FAF9F9FAF8FAFBF9FAFBF7F8F9F6F7F8F6F7F9F5F6F8F4F5F7 +F3F4F6F2F3F5F1F2F6F1F2F5F0F1F4EFF0F3EEEEF3EDEFF2ECEEF0EBEDF1EAECF0EAECF0 +E9EBEFE8EAEDE7E9EEE5E7EDE4E6EBE4E6EBE4E6ECE3E5EBE2E4EAE1E5E9E1E4E9E0E3E8 +DFE2E8DEE1E7DEE1E7DDE1E7DDE0E6DDE0E7DCDFE7DCDFE6DBDEE6DBDEE6DBDEE5DADDE4 +DBDEE5DADDE4D9DCE3DADDE3D9DCE3D8DBE3D8DBE3D8DBE3D9DCE4D8DBE3D7DAE2D7DAE2 +D7DAE2D7DAE2D7DAE2D7DAE3D8DAE3D8DAE3D8DAE3D8DAE3D8DAE3D8DAE3D8DAE3D8DAE3 +D8DAE3D8DAE3D8DAE3D7DAE2D7DAE2D7DAE2D7DAE2D7DAE2D8DBE3D9DBE4D8DBE3D8DBE3 +D9DCE3DADDE3D9DCE3DADDE4DADEE4DADDE4DBDEE5DBDEE5DCDFE6DCDFE7DDE0E6DEE1E6 +DDE0E6DEE1E7DEE1E7DFE2E8E0E4E8E0E3E8E1E4E9E1E5E9E2E4EAE3E5EBE4E6ECE4E6EB +E4E6EBE6E8EDE7E9EEE6E8EDE8EAEEE9EBEFE9EBEFE9ECEFE9EBF0EBEDF1ECEEF0ECEEF1 +EDEFF2EDEEF2EEEFF3EEEFF4EFF0F3EFF0F3F0F1F4F1F2F5F1F2F5F1F2F6F2F3F5F2F3F5 +F3F4F6F3F4F6F3F4F6F4F5F7F4F5F7F5F6F8F5F6F9F6F7F8F7F8F8F6F7F8F7F8F9F8F9FA +F7F8F9F8F9FAF9FAFBF8FAFBF8FAFBF9F9FBFAF9FAF9F9FAF9F9FAF9F9FAFAFAFBFBFBFC +FAFAFBFAFAFBFBFBFCFCFCFDFCFCFDFBFBFCFBFBFCFBFBFCFCFCFDFDFDFEFDFDFEFCFCFE +FCFCFEFCFCFEFCFCFEFDFDFEFEFEFDFDFDFDFEFEFDFEFEFDFEFEFDFDFDFDFDFDFDFDFDFD +FEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE +FFFFFFFEFEFEFEFEFEFDFDFDFEFEFEFDFDFEFCFCFEFDFDFDFDFDFEFCFCFDFBFBFCFBFBFC +FAFBFCFAFAFBFAFAFBF9F9FAF9FAFBF8F9FAF7F8F9F6F7F9F6F7F8F5F6F8F4F5F7F3F4F6 +F3F4F6F2F3F5F1F2F5F0F1F4EEEFF3EEEFF3EDEEF2EDEEF2EBEDF1EAECF0EAECF0E8EAEE +E8EAEEE7E9EEE6E8EDE6E8EDE5E7ECE5E7ECE3E5EBE3E5EBE2E5EAE2E4EAE1E4E9E0E3E8 +E0E3E8DFE2E8DFE2E8DEE1E7DEE1E7DDE0E7DDE0E6DDE0E6DDE0E6DCDFE6DCDFE6DCDFE6 +DBDEE5DBDEE5DBDEE5DADDE4DADDE4DADDE4DADDE4D9DCE3D9DCE3D9DCE3D9DCE3D9DCE3 +D9DCE3D9DCE3D9DCE3D8DBE3D8DBE3D8DBE3D8DBE3D8DBE3D8DBE3D8DBE3D8DBE3D8DBE3 +D9DCE3D9DCE3D9DCE3D9DCE3D9DCE3D9DCE3DADDE4DADDE4DADDE4DADDE4DBDEE5DBDEE5 +DBDEE5DCDFE6DCDFE6DCDFE6DDE0E6DDE0E6DDE0E7DEE1E7DEE1E7DFE2E8DFE2E8E0E3E8 +E0E3E8E1E4E9E2E4EAE2E4EAE3E5EAE3E5EBE4E6EBE5E7ECE5E7ECE6E8EDE6E8EDE7E9ED +E8EAEEE8EAEEE9EBEFE9EBEFEAECF0EBEDF0EBEDF1ECEEF1ECEEF1EDEEF2EEEFF3EEEFF3 +EFF0F3F0F1F4F0F1F4F1F2F5F1F2F5F2F3F5F2F3F6F3F4F6F3F4F6F3F4F6F4F5F7F4F5F7 +F5F6F8F5F6F8F5F6F8F6F7F9F6F7F9F7F8F9F7F8F9F7F8F9F8F9FAF8F9FAF8F9FAF8F9FA +F9FAFBF9FAFBF9FAFBF9FAFBFAFAFBFAFAFBFAFAFBFAFAFBFAFAFBFBFBFCFBFBFCFBFBFC +FBFBFCFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFDFDFEFDFDFDFDFDFDFDFDFDFDFDFD +FDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFF +FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFF +FEFEFEFDFDFDFEFEFEFDFDFEFDFDFEFDFDFDFDFDFEFCFCFDFBFBFCFCFCFDFBFBFCFAFAFB +FAFAFBF9F9FAF9FAFBF8FAFBF9FAFBF7F8F9F6F7F8F6F7F9F5F6F8F4F5F7F4F5F6F3F4F6 +F2F3F6F1F2F5F0F1F4F0F1F4EFF0F4EEEFF3EDEEF2EDEFF2ECEEF1EAECF0EAECF0E9EBEF +E9EAEFE8EAEEE8EAEDE7E9EDE5E7EDE6E8EDE5E6ECE3E5EBE3E5EBE2E4EAE2E4EAE2E5EA +E1E4E9E0E3E8E0E4E8E0E3E8E0E3E9DFE2E8DEE1E7DEE1E8DEE1E7DDE0E6DDE0E6DEE1E6 +DDE0E6DCDFE6DCDFE6DDE0E7DCDFE6DBDEE5DBDEE5DBDEE5DBDEE5DBDEE5DBDEE5DADDE4 +DADDE4DADDE4DADDE4DADDE4DADDE4DADDE4DADDE4DADDE4DADDE4DADDE4DBDEE5DBDEE6 +DBDEE5DBDEE5DBDEE5DBDEE5DCDFE6DDE0E7DCDFE6DCDFE6DDE0E6DEE1E6DDE0E6DDE0E6 +DEE1E7DEE1E8DFE2E8DFE2E8DFE2E8E0E3E8E0E3E8E1E4E9E1E5E9E2E4EAE2E4EAE3E5EB +E3E5ECE4E6EBE5E7ECE5E7EDE6E8EDE7E9EEE8EAEDE8EAEEE8EAEFE8EAEEEAECF0EBEDF1 +EBEDF0ECEEF0ECEFF1EDEFF2EDEEF2EEEFF3EEEFF4EFF0F3EFF0F3F0F1F4F1F2F5F2F3F6 +F2F3F6F3F4F5F3F4F6F4F5F7F3F4F6F4F5F7F4F5F7F5F6F8F6F7F9F5F6F8F6F7F9F6F7F8 +F7F8F9F8F9F9F7F8F9F8F9FAF9FAFBF8FAFBF9FAFBF8FAFBF9F9FAF9F9FAF9F9FAFAFAFB +FBFBFCFAFAFBFAFAFBFBFBFCFCFCFDFCFCFDFBFBFCFBFBFCFBFBFCFCFCFDFDFDFEFCFCFD +FCFCFEFCFCFEFCFCFEFCFCFEFDFDFEFEFEFEFDFDFEFEFEFEFEFEFDFEFEFDFEFEFEFDFDFD +FDFDFDFDFDFDFEFEFEFFFFFFFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFD +FDFDFDFDFDFDFEFEFEFDFDFEFCFCFDFCFCFEFCFCFDFBFBFCFBFBFCFBFBFCFBFBFCFAFAFB +F9F9FAF9F9FAF8FAFBF8F9FAF7F8F9F7F8F9F6F7F8F4F5F7F4F5F7F3F4F6F3F4F6F2F3F5 +F1F2F5F1F2F5EFF0F4EFF0F3EEEFF3EDEEF2EDEEF2ECEEF1EBEDF1EAECF0EAECF0E9EBEF +E8EAEEE8EAEEE7E9EDE6E8EDE6E8EDE5E7ECE5E7ECE4E6EBE4E6EBE3E5EBE2E5EAE2E4EA +E2E4EAE2E4EAE1E4E9E0E3E8E0E3E8E0E3E8E0E3E8DFE2E8DFE2E8DFE2E7DEE1E7DEE1E7 +DEE1E7DDE0E7DDE0E6DDE0E6DDE0E6DDE0E6DDE0E6DDE0E6DDE0E6DCDFE6DCDFE6DCDFE6 +DCDFE6DCDFE6DCDFE6DCDFE6DCDFE6DCDFE6DCDFE6DCDFE6DCDFE6DDE0E6DDE0E6DDE0E6 +DDE0E6DDE0E6DDE0E6DDE0E7DEE1E7DEE1E7DEE1E7DFE2E7DFE2E8DFE2E8E0E3E8E0E3E8 +E0E3E9E1E4E9E1E4E9E2E4EAE2E4EAE3E5EBE3E5EBE3E6EBE4E6EBE4E6ECE5E7ECE5E7EC +E6E8EDE7E9EDE7E9EDE8EAEEE8EAEEE9EBEFEAECF0EAECF0EBEDF0EBEDF0ECEEF1EDEEF2 +EDEEF2EEEFF3EEEFF3EFF0F3EFF0F4F0F1F4F1F2F5F1F2F5F2F3F5F2F3F5F3F4F6F3F4F6 +F3F4F6F4F5F7F5F6F8F5F6F8F5F6F8F6F7F8F6F7F9F7F8F9F7F8F9F7F8F9F8F9FAF8F9FA +F8F9FAF8F9FAF9F9FAF9F9FAF9F9FAF9F9FAFAFAFBFAFAFBFAFAFBFAFAFBFAFBFCFBFBFC +FBFBFCFBFBFCFBFBFCFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFDFDFEFCFCFEFDFDFDFDFDFD +FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFDFDFDFEFEFEFEFEFEFEFEFE +FEFEFEFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFDFDFD +FEFEFEFEFEFEFDFDFDFDFDFEFCFCFEFCFCFDFCFCFDFCFCFDFBFBFCFBFBFCFAFAFBFAFAFB +F9F9FAF9FAFBF8F9FAF8F9FAF7F8F9F6F7F9F6F7F9F5F6F8F4F5F7F4F5F7F3F4F6F2F3F6 +F2F3F5F1F2F5F0F1F4F0F1F4EFF0F4EEEFF3EEEFF3EDEEF2ECEEF1ECEEF1EBEDF1EAECF0 +EAECEFE9EBEFE9EBEFE8EAEEE8EAEEE7E9EEE7E9EEE6E8EDE5E7ECE5E7ECE5E7ECE4E6EC +E4E6ECE3E5EBE3E5EBE3E5EBE3E5EBE2E5EAE2E5EAE2E5EAE1E4E9E1E4E9E1E4E9E1E4E9 +E1E3E9E0E3E9E0E3E9E0E3E9E0E3E9E0E3E9DFE2E8DFE2E8DFE2E8DFE2E8DFE2E8DFE2E8 +DFE2E8DFE2E8DFE2E8DFE2E8DFE2E8DFE2E8DFE2E8E0E3E8E0E3E9E0E3E9E0E3E9E0E3E9 +E0E3E9E0E3E9E1E4E9E1E4E9E1E4E9E2E5EAE2E5EAE2E5EAE3E5EBE3E5EBE3E5EBE3E5EB +E4E6ECE5E7ECE5E7ECE6E8EDE6E8EDE7E9EDE7E9EEE8EAEEE8EAEEE8EAEEE9EBEFEAECF0 +EAECF0EBEDF1EBEDF1ECEEF1ECEEF1EDEFF2EDEFF2EEEFF3EEEFF3EFF0F4EFF0F4F0F1F4 +F1F2F5F1F2F5F2F3F5F2F3F6F3F4F6F3F4F6F4F5F7F4F5F7F4F5F7F5F6F8F5F6F8F6F7F9 +F7F8F9F7F8F9F7F8F9F7F8F9F8F9FAF9FAFAF9FAFBF9F9FAF9FAFBF9FAFBFAFAFBFAFAFB +FAFAFBFAFAFBFBFBFCFBFBFCFBFBFCFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFDFDFEFCFCFD +FCFCFDFCFCFDFDFDFEFDFDFEFDFDFEFEFEFEFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFE +FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFEFEFEFDFDFDFDFDFE +FEFEFEFDFDFDFCFCFDFDFDFEFCFCFDFBFBFCFCFCFDFBFBFCFAFAFBFAFAFBF9F9FAF9F9FA +F8FAFBF8F9FAF7F8F9F7F8F9F7F8F8F6F7F9F5F6F8F4F5F7F4F5F7F4F5F7F3F4F6F2F3F5 +F1F2F6F1F2F5F0F1F4F0F1F3EFF0F4EEEFF3EEEEF3EDEEF2EDEFF2ECEEF1EAECF0EBEDF1 +EAECF0E9EBEFE8EAEEE9EBEFE9EBEFE8EAEEE7E9EDE6E9EEE6E8EDE5E7ECE6E8EDE5E7EC +E4E6EBE5E7EBE4E6EBE3E5ECE4E5ECE3E5EBE2E4EAE3E4EBE2E4EBE2E4EBE3E4EBE2E5EA +E1E5E9E1E5E9E1E5E9E1E5E9E2E5E9E2E5EAE1E4E9E0E3E8E0E4E8E0E4E8E0E4E8E0E4E8 +E0E4E8E0E4E8E0E4E8E0E3E8E1E4E9E2E5EAE1E5E9E1E5E9E2E5E9E1E5E9E2E5EAE3E5EB +E2E4EAE3E4EBE2E4EAE3E5EBE4E5ECE3E5EBE4E6EBE5E7EBE4E6EBE5E7ECE6E8EDE6E8ED +E6E9EEE7E9EDE7EAEDE8EAEEE9EBEFE8EAEEE9EBF0E9EBEFEAECF0EAECF1EBEDF0ECEEF1 +EDEFF2EDEEF2EEEEF3EEEFF3EFEFF4EFF0F4EFF0F3EFF0F3F1F2F5F2F3F6F2F3F6F3F4F5 +F3F4F6F4F5F7F3F4F6F4F5F7F5F6F8F5F6F8F5F6F9F6F7F8F7F8F8F7F8F8F7F8F9F8F9FA +F7F8F9F8F9FAF9FAFBF8F9FAF9F9FAFAF9FAF9F9FAFAFAFBFBFBFCFBFBFCFAFAFBFAFBFC +FBFCFDFCFCFDFCFCFDFBFBFCFCFCFDFDFDFEFDFDFEFDFDFEFCFCFEFCFCFEFCFCFEFDFDFE +FEFEFDFEFEFDFEFEFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFFFFFFFEFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFEFEFEFDFDFEFEFEFE +FDFDFDFDFDFEFCFCFDFCFCFDFCFCFDFBFBFCFBFBFCFBFBFCFAFAFBFAFAFBF9FAFBF9F9FA +F8F9FAF8F9FAF7F8F9F7F8F9F6F7F9F5F6F8F5F6F8F4F5F7F4F5F7F3F4F6F3F4F6F2F3F5 +F1F2F5F1F2F5F0F1F4EFF0F3EFF0F3EEEFF3EEEFF2EDEFF2ECEEF2ECEEF1ECEEF1EBEDF0 +EAECF0EAECF0EAECEFE9EBEFE8EAEFE8EAEFE8EAEEE7E9EEE7E9EEE7E9EDE6E8EDE6E8ED +E6E8EDE5E7ECE5E8EDE5E7ECE4E6ECE4E6ECE4E6ECE4E7ECE4E6ECE3E6EBE3E6EBE3E6EB +E3E6EBE3E6EBE3E5EBE3E5EAE2E5EAE2E5EAE2E5EAE2E5EAE2E5EAE2E5EAE2E5EAE2E5EA +E2E5EAE2E5EAE2E5EAE3E5EBE3E6EBE3E6EBE3E6EBE3E6EBE3E6EBE4E6EBE4E6ECE4E6EC +E4E6ECE5E7ECE5E8EDE5E7ECE6E8EDE6E8EDE6E8EDE7E9EDE8EAEEE8EAEEE8EAEFE9EBEF +E9EBEFEAECF0EAECF0EAECF0EBEDF0EBEDF1ECEEF1ECEEF1EDEEF2EDEFF2EEEFF2EEEFF3 +EFF0F3EFF0F3F0F1F4F0F1F4F1F2F5F1F2F5F2F3F5F2F3F6F3F4F6F3F4F6F4F5F7F4F5F7 +F5F6F7F5F6F8F6F7F8F6F7F9F6F7F9F7F8F9F7F8F9F7F8F9F8F9FAF8F9FAF8F9FAF9F9FA +FAFAFBF9FAFBFAFAFBFAFAFBFAFAFBFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFCFCFDFCFCFD +FCFCFDFCFCFDFCFCFDFDFDFDFDFDFDFDFDFDFDFDFEFDFDFEFDFDFEFDFDFEFEFEFEFDFDFE +FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE +FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFDFDFD +FCFCFEFDFDFEFCFCFDFBFBFCFCFCFDFBFBFCFAFAFBFBFBFCFAFAFBFAF9FAF9FAFBF9FAFB +F8F9FAF7F8F9F7F8F9F6F7F8F6F7F9F6F7F9F5F6F8F4F5F7F3F4F6F4F5F7F3F4F6F1F2F5 +F2F3F6F1F2F5F1F2F5F0F1F4F0F1F3EFF0F4EEEFF3EDEEF2EDEFF2EDEFF1EDEFF2ECEEF0 +EBEEF0EBEDF0EBEDF1EAECF0E9EBEFEAECF0E9EBEFE8EAEEE9EBEFE9EBEFE8EAEEE7E9ED +E8EAEDE7E9EDE6E8EEE7E9EEE6E8EEE7E9EEE6E8EDE5E7ECE6E7EDE5E7EDE6E7EDE6E8ED +E5E7ECE4E6EBE4E6EBE4E6EBE4E6EBE4E6EBE4E6EBE4E6EBE4E6EBE4E6EBE5E6EBE4E6EB +E5E7ECE6E8EDE5E7EDE6E7EDE6E7EDE5E7EDE5E7ECE6E8EDE7E9EEE7E9EEE6E8EEE7E9ED +E8EAEDE7E9EDE8EAEEE9EBEFE8EAEEE8EAEEE9EBEFE9EBEFEAECF0EBEDF1EAECF0EBEDF0 +EBEEF0ECEEF1ECEFF1EDEFF2EEEEF3EDEEF2EEEFF3EFF0F4F0F0F3F0F1F4F1F2F5F1F2F5 +F2F3F6F2F3F5F3F4F5F3F4F6F3F4F6F3F4F6F4F5F7F5F6F8F5F6F8F5F6F9F6F7F9F7F8F8 +F6F7F8F7F8F9F7F8F9F8F9FAF9FAFBF8FAFBF8FAFBF9FAFBFAF9FAF9F9FAFAFAFBFBFBFC +FAFAFBFAFAFBFBFBFCFCFCFDFBFBFCFCFCFDFDFDFEFDFDFEFDFDFEFCFCFEFCFCFEFCFCFE +FDFDFEFEFEFEFEFEFEFEFEFDFEFEFDFEFEFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFFFFFF +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFFFFFFFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFEFEFEFEFDFDFDFDFDFE +FCFCFDFCFCFDFCFCFDFBFBFCFBFBFCFBFBFCFAFAFBFAFAFBF9FAFBF9F9FAF8F9FAF8F9FA +F8F9FAF7F8F9F6F7F9F6F7F8F5F6F8F5F6F8F4F5F7F4F5F7F4F5F7F3F4F6F3F4F6F2F3F5 +F1F2F5F1F2F5F0F1F4F0F1F4EFF0F4EFF0F3EEEFF3EEEFF3EDEEF2EDEEF2EDEEF2ECEEF1 +ECEEF1EBEDF0EBEDF0EBEDF0EAECF0EAECF0EAECF0E9EBEFE9EBEFE9EBEFE8EAEEE8EAEE +E8EAEEE8EAEEE8EAEEE7E9EEE7E9EDE7E9EDE7E9EDE7E9EDE7E9EDE7E9EDE7E9EDE6E8ED +E6E8EDE6E8EDE6E8EDE6E8EDE6E8EDE6E8EDE6E8EDE6E8EDE6E8EDE6E8EDE6E8EDE7E9ED +E7E9EDE7E9EDE7E9EDE7E9EDE7E9EDE7E9EDE8EAEEE8EAEEE8EAEEE8EAEEE8EAEEE9EBEF +E9EBEFEAECEFEAECF0EAECF0EBEDF0EBEDF0EBEDF0ECEEF1ECEEF1EDEEF2EDEEF2EDEEF2 +EEEFF3EEEFF3EEEFF3EFF0F3EFF0F4F0F1F4F0F1F4F1F2F5F1F2F5F2F3F5F3F4F6F3F4F6 +F3F4F6F3F4F6F4F5F7F5F6F8F5F6F8F5F6F8F5F6F8F6F7F8F7F8F9F7F8F9F7F8F9F8F9FA +F8F9FAF8F9FAF9F9FAF9FAFBF9F9FAFAFAFBFAFAFBFAFAFBFBFBFCFBFBFCFBFBFCFBFBFC +FBFBFCFCFCFDFCFCFDFCFCFDFDFDFDFCFCFDFDFDFDFDFDFDFDFDFEFDFDFDFDFDFDFDFDFD +FDFDFDFEFEFEFEFEFEFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFEFEFE +FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFFFFFFFEFEFEFEFEFEFEFEFEFDFDFDFEFEFEFEFEFEFDFDFDFDFDFEFDFDFE +FDFDFEFCFCFDFCFCFDFCFCFDFBFBFCFBFBFCFBFAFBFAFAFBFAFAFBF9FAFBF9FAFBF9FAFB +F8F9FAF8F9FAF7F8F9F7F8F9F6F7F9F6F7F9F5F6F8F5F6F8F4F5F7F4F5F7F3F4F6F3F4F6 +F2F3F6F2F3F6F2F3F5F1F2F5F1F2F5F0F1F4F0F1F4EFF0F4EFF0F4EFF0F3EEEFF3EEEFF3 +EEEFF3EDEFF2EDEFF2EDEEF2ECEEF1ECEEF1ECEEF1ECEEF1EBEDF1EBEDF1EBEDF1EAECF0 +EAECF0EAECF0EAECF0EAECF0EAECF0EAEBEFE9EBEFE9EBEFE9EBEFE9EBEFE9EBEFE9EBEF +E9EBEFE9EBEFE9EBEFE9EBEFE9EBEFE9EBEFE9EBEFE9EBEFE9EBEFE9EBEFE9EBEFE9EBEF +E9EBEFEAECF0EAECF0EAECF0EAECF0EAECF0EBEDF1EBEDF1EBEDF1ECEEF1ECEEF1ECEEF1 +EDEEF2EDEFF2EDEFF2EEEFF3EEEFF3EEEFF3EFF0F3EFF0F4EFF0F4F0F1F4F0F1F4F1F2F5 +F1F2F5F1F2F5F2F3F5F3F4F6F3F4F6F3F4F6F4F5F7F4F5F7F4F5F7F5F6F8F5F6F8F6F7F9 +F6F7F9F7F8F9F7F8F9F7F8F9F8F9FAF8F9FAF8F9FAF9FAFBF9FAFBF9FAFBF9FAFBFAFAFB +FAFAFBFAFAFBFBFBFCFBFBFCFBFBFCFCFCFDFCFCFDFCFCFDFCFCFDFDFDFEFDFDFEFDFDFE +FDFDFEFDFDFEFEFEFEFDFDFEFEFEFEFEFEFEFEFEFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE +FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE +FEFEFEFEFEFEFFFFFFFEFEFEFDFDFDFDFDFDFDFDFEFEFEFEFDFDFDFCFCFDFCFCFDFDFDFE +FDFDFEFCFCFDFCFCFDFBFBFCFAFAFBFBFBFCFAFAFBF9F9FAFAFAFBF9F9FAF8FAFBF9FAFB +F8F9FAF8F9FAF7F8F9F7F8F8F6F7F8F6F7F9F5F6F8F4F5F7F4F5F7F3F4F7F4F5F7F3F4F6 +F2F3F5F1F2F6F2F3F6F1F2F5F1F2F4F0F1F4EFF0F3F0F1F4EFF0F4EEEFF4EFF0F4EFEFF4 +EEEEF3EEEEF3EEEEF3EEEEF3EDEEF2EDEFF2EDEFF2EDEFF2ECEEF1ECEEF0ECEEF1ECEEF1 +ECEEF1ECEEF0EAEDF0EBEDF1EBEDF1EBEDF1EBEDF1EBEDF1EBEDF1EBEDF1EBEDF1EBEDF1 +EBEDF1EBEDF1EBEDF1EBEDF1EBEDF1EBEDF1EBEDF1EBEDF1EBEDF1EBEDF1EBEDF1EBEDF0 +ECEEF0ECEEF0ECEEF1ECEEF0ECEEF1EDEFF2EDEFF2EDEFF2EDEEF2EEEEF3EEEEF3EDEEF2 +EEEFF3EFF0F4EEEFF4EFF0F4F0F1F3F0F1F4F1F2F5F1F2F5F2F3F6F2F3F6F2F3F6F3F4F6 +F3F4F6F4F5F7F3F4F6F4F5F7F5F6F8F4F5F7F5F6F8F6F7F9F6F7F8F7F8F8F6F7F8F7F8F9 +F8F9FAF8F9FAF9FAFBF9FAFBF8F9FAF9F9FAFAF9FAF9F9FAFAFAFBFBFBFCFBFBFCFBFBFC +FBFBFCFCFCFDFCFCFDFBFBFCFCFCFDFDFDFEFDFDFEFCFCFDFCFCFEFDFDFDFEFEFDFEFEFD +FDFDFDFDFDFDFDFDFDFEFEFEFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE +FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFEFDFDFEFDFDFEFDFDFDFCFCFDFCFCFD +FCFCFDFCFCFDFBFBFCFBFBFCFBFBFCFBFBFCFAFAFBFAFAFBF9FAFBF9F9FAF9F9FAF9F9FA +F8F9FAF8F9FAF7F8F9F7F8F9F6F7F9F6F7F8F6F7F8F5F6F8F5F6F8F4F5F7F4F5F7F4F5F7 +F3F4F6F3F4F6F3F4F6F2F3F6F2F3F5F1F2F5F1F2F5F1F2F5F0F1F4F0F1F4F0F1F4EFF0F4 +EFF0F4EFF0F4EFF0F4EFF0F3EEEFF3EEEFF3EEEFF3EEEFF3EEEFF3EEEFF3EDEFF2EDEFF2 +EDEFF2EDEEF2EDEEF2EDEEF2EDEEF2EDEEF2EDEEF2EDEEF2ECEEF1ECEEF1ECEEF1ECEEF1 +ECEEF1ECEEF1EDEEF2EDEEF2EDEEF2EDEEF2EDEEF2EDEEF2EDEEF2EDEFF2EDEFF2EDEFF2 +EEEFF3EDEFF3EEEFF3EEEFF3EEEFF3EFF0F3EFF0F4EFF0F4EFF0F4F0F1F4F0F1F4F1F2F5 +F1F2F5F1F2F5F1F2F5F2F3F5F2F3F6F2F3F6F3F4F6F3F4F6F3F4F7F4F5F7F4F5F7F5F6F8 +F5F6F8F5F6F8F6F7F8F6F7F8F7F8F9F7F8F9F7F8F9F8F9FAF8F9FAF8F9FAF9F9FAF9F9FA +F9F9FAFAFAFBFAFAFBFAFAFBFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFCFCFDFCFCFDFCFCFD +FCFCFDFCFCFDFDFDFDFDFDFDFDFDFDFDFDFEFDFDFEFDFDFEFDFDFEFEFEFEFEFEFEFEFEFE +FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE +FFFFFFFEFEFEFEFEFDFDFDFDFDFDFDFEFEFEFEFEFDFDFDFEFCFCFEFCFCFEFDFDFEFCFCFD +FBFBFCFCFCFDFCFCFDFBFBFCFAFAFBFBFBFCFAFAFBF9F9FAFAFAFBF9F9FAF8FAFBF9FAFB +F8F9FAF8F9FAF7F8F9F6F7F8F7F8F8F6F7F9F5F6F9F6F7F9F5F6F8F5F6F8F4F5F7F3F4F6 +F4F5F7F3F4F6F2F3F5F3F4F6F2F3F6F1F2F6F2F3F6F2F3F6F1F2F5F0F1F4F1F2F5F1F2F5 +F0F1F4EFF0F3F0F1F4F0F1F4EFF0F4EEEFF4EFF0F4EFEFF4EFEFF4EFEFF4EFF0F4EEEFF3 +EDEEF2EEEEF3EEEEF3EEEEF3EEEEF3EEEEF3EEEEF3EEEEF3EEEEF3EEEEF3EEEEF3EEEEF3 +EEEEF3EEEEF3EEEEF3EEEEF3EEEEF3EDEEF2EEEEF3EFEFF4EFF0F4EFEFF4EFF0F4EEEFF4 +EFF0F4F0F1F4F0F1F4EFF0F3F0F1F4F1F2F5F1F2F5F0F1F4F1F2F5F2F3F6F1F2F6F2F3F6 +F3F4F5F3F4F6F4F5F7F4F5F7F3F4F7F3F4F6F4F5F7F5F6F8F5F6F8F6F7F9F6F7F9F7F8F9 +F6F7F8F7F8F9F8F9FAF7F8F9F8F9FAF9FAFBF9FAFBF8FAFBF9FAFBFAF9FAF9F9FAFAFAFB +FBFBFCFAFAFBFBFBFCFCFCFDFCFCFDFCFCFDFBFBFCFCFCFDFDFDFEFCFCFEFCFCFEFCFCFE +FDFDFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFFFFFFFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFFFFFF +FEFEFEFEFEFEFEFEFEFDFDFDFEFEFEFDFDFEFDFDFEFDFDFDFCFCFDFCFCFDFCFCFDFCFCFD +FCFCFDFBFBFCFBFBFCFBFBFCFAFAFBFAFAFBFAFAFBF9FAFBF9F9FAF9F9FAF8F9FAF8F9FA +F8F9FAF7F8F9F8F9FAF7F8F9F6F7F8F6F7F9F5F6F8F5F6F8F5F6F8F4F5F7F4F5F8F4F5F7 +F3F4F7F3F4F6F3F4F6F3F4F6F2F3F6F2F3F5F2F3F5F2F3F5F1F2F5F1F2F5F1F2F5F1F2F5 +F1F2F5F0F1F4F0F1F4F0F1F4F0F1F4F0F1F4F0F1F4EFF0F4EFF1F4EFF0F4EFF0F3EFF0F3 +EFF0F3EFF0F3EFF0F3EFF0F3EFF0F3EFF0F3EEEFF3EEEFF3EFF0F3EFF0F3EFF0F3EFF0F3 +EFF0F3EFF0F3EFF0F3EFF0F3EFF0F4EFF0F4EFF0F4F0F1F4F0F1F4F0F1F4F0F1F4F0F1F4 +F1F2F5F1F2F5F1F2F5F1F2F5F2F3F5F2F3F5F2F3F5F2F3F5F3F4F6F3F4F6F3F4F6F4F5F7 +F4F5F7F4F5F7F4F5F7F5F6F8F5F6F8F5F6F8F6F7F8F6F7F9F6F7F9F7F8F9F7F8F9F8F9FA +F8F9FAF8F9FAF8F9FAF9F9FAF9FAFBF9FAFBFAFAFBFAFAFBFAFAFBFAFAFBFBFBFCFBFBFC +FBFBFCFCFCFDFCFCFDFCFCFDFCFCFDFDFDFDFDFDFDFDFDFDFDFDFEFDFDFEFDFDFDFDFDFD +FDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFFFFFF +FEFEFEFEFEFEFDFDFDFEFEFEFEFEFEFEFEFEFDFDFDFDFDFEFDFDFEFCFCFEFDFDFEFCFCFD +FCFCFDFCFCFDFCFCFDFBFBFCFBFBFCFBFBFCFAFAFBFAFAFBFAFAFBF9FAFBF9FAFBF9FAFB +F9FAFBF8F9FAF8F9FAF8F9FAF7F8F9F7F8F9F7F8F9F6F7F9F6F7F9F6F7F9F6F7F9F5F6F8 +F5F6F8F5F6F8F5F6F8F4F5F7F4F5F7F4F5F7F4F5F7F3F4F6F3F4F6F3F4F6F3F4F6F3F4F6 +F3F4F6F2F3F6F2F3F6F2F3F6F2F3F6F2F3F6F2F3F6F2F3F6F2F3F5F1F2F5F1F2F5F1F2F5 +F1F2F5F1F2F5F1F2F5F1F2F5F1F2F5F1F2F5F1F2F5F1F2F5F1F2F5F1F2F5F1F2F5F1F2F5 +F1F2F5F2F3F5F2F3F6F2F3F6F2F3F6F2F3F6F2F3F6F2F3F6F3F4F6F3F4F6F3F4F6F3F4F6 +F3F4F6F4F5F7F4F5F7F4F5F7F4F5F7F4F5F7F5F6F8F5F6F8F5F6F8F6F7F8F6F7F9F6F7F9 +F7F8F9F7F8F9F7F8F9F7F8F9F8F9FAF8F9FAF8F9FAF9FAFBF9FAFBF9FAFBF9FAFBFAFAFB +FAFAFBFAFAFBFBFBFCFBFBFCFBFBFCFBFBFCFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFDFDFE +FDFDFEFDFDFEFDFDFEFDFDFEFEFEFEFEFEFEFEFEFDFEFEFDFEFEFEFEFEFEFEFEFEFEFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFFFFFFFEFEFE +FDFDFDFEFEFEFDFDFDFEFEFEFEFEFEFEFEFDFDFDFDFCFCFDFDFDFDFCFCFEFDFDFEFCFCFD +FBFBFCFCFCFDFCFCFDFBFBFCFBFBFCFBFBFCFAFAFBF9F9FAFAFAFBF9F9FAF8F9FAF9F9FA +F9FAFBF9FAFBF8F9FAF8F9FAF8F9FAF7F8F9F6F7F8F7F8F8F7F8F8F6F7F9F6F7F9F6F7F9 +F6F7F9F6F7F9F5F6F8F5F6F8F5F6F8F4F5F7F4F5F7F4F5F7F4F5F7F4F5F7F4F5F7F4F5F7 +F4F5F7F3F4F6F2F3F5F3F4F5F3F4F5F3F4F5F3F4F6F3F4F6F3F4F6F3F4F6F3F4F6F3F4F6 +F3F4F6F2F3F6F2F3F6F2F3F6F2F3F6F2F3F6F3F4F6F3F4F6F3F4F6F3F4F6F3F4F6F3F4F6 +F3F4F5F3F4F5F3F4F5F2F3F5F3F4F6F4F5F7F4F5F7F4F5F7F4F5F7F4F5F7F5F6F8F5F6F8 +F5F6F8F5F6F8F5F6F8F6F7F9F6F7F9F5F6F9F6F7F9F7F8F8F7F8F8F7F8F9F8F9FAF8F9FA +F8F9FAF8F9FAF8F9FAF9FAFBF8F9FBF9F9FAFAF9FAFAFAFBF9F9FAFAFAFBFBFBFCFBFBFC +FBFBFCFCFCFDFCFCFDFCFCFDFBFBFCFCFCFDFDFDFEFCFCFEFDFDFEFCFCFDFDFDFDFEFEFE +FEFEFEFDFDFDFDFDFDFDFDFDFEFEFEFDFDFEFEFEFEFFFFFFFEFEFEFEFEFEFEFEFEFEFEFE +FEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFFFFFFFEFEFE +FEFEFEFDFDFDFDFDFDFDFDFEFDFDFEFEFEFEFDFDFEFDFDFDFDFDFDFCFCFDFDFDFEFCFCFD +FCFCFDFCFCFDFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFAFAFBFAFAFBFAFAFBF9F9FAF9F9FA +F9F9FAF9F9FAF9F9FBF8F9FAF8F9FAF8F9FAF8F9FAF8F9FAF7F8F9F7F8F9F7F8F9F7F8F9 +F6F7F9F6F7F8F6F7F8F6F7F8F6F7F8F5F6F8F5F6F8F5F6F8F5F6F8F5F6F8F5F6F8F4F5F7 +F4F5F7F4F5F7F4F5F7F4F5F7F4F5F7F4F5F7F4F5F7F4F5F7F4F5F7F4F5F7F4F5F7F4F5F7 +F4F5F7F4F5F7F4F5F7F4F5F7F4F5F7F4F5F7F4F5F7F4F5F7F4F5F7F4F5F7F4F5F7F4F5F7 +F4F5F7F4F5F7F5F6F8F5F6F8F5F6F8F5F6F8F5F6F8F5F6F8F6F7F8F6F7F8F6F7F8F6F7F8 +F6F7F9F7F8F9F7F8F9F7F8F9F7F8F9F8F9FAF8F9FAF8F9FAF8F9FAF9F9FAF9F9FAF9F9FA +F9F9FAFAFAFBFAFAFBFAFAFBFAFAFBFAFAFBFBFBFCFBFBFCFBFBFCFBFBFCFCFCFDFCFCFD +FCFCFDFCFCFEFCFCFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFDFDFEFDFDFDFDFDFDFEFEFE +FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFE +FEFEFEFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFEFDFDFEFCFCFEFDFDFEFCFCFD +FCFCFDFCFCFDFCFCFDFCFCFDFBFBFCFBFBFCFBFBFCFBFBFCFAFAFBFAFAFBFAFAFBFAFAFB +FAFAFBF9F9FAF9FAFBF9FAFBF9FAFBF9FAFBF8F9FAF8F9FAF8F9FAF8F9FAF8F9FAF7F8F9 +F7F8F9F7F8F9F7F8F9F7F8F9F7F8F9F7F8F9F6F7F9F6F7F9F6F7F9F6F7F9F6F7F9F6F7F9 +F6F7F8F6F7F8F5F6F8F5F6F8F5F6F8F5F6F8F5F6F8F5F6F8F5F6F8F5F6F8F5F6F8F5F6F8 +F5F6F8F5F6F8F5F6F8F5F6F8F5F6F8F5F6F8F5F6F8F5F6F8F6F7F8F6F7F8F6F7F9F6F7F9 +F6F7F9F6F7F9F6F7F9F7F8F9F7F8F9F7F8F9F7F8F9F7F8F9F7F8F9F8F9FAF8F9FAF8F9FA +F8F9FAF8F9FAF8F9FAF9FAFBF9FAFBF9FAFBF9F9FAF9F9FAFAFAFBFAFAFBFAFAFBFBFBFC +FBFBFCFBFBFCFBFBFCFBFBFCFCFCFDFCFCFDFCFCFDFCFCFDFDFDFEFDFDFEFDFDFEFDFDFE +FDFDFEFDFDFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFFFFFFFEFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFFFFFFFEFEFEFEFEFE +FEFEFEFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFDFDFEFDFDFDFDFDFDFDFDFEFCFCFEFDFDFE +FCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFAFAFBFAFAFB +FAFAFBFAFAFBF9F9FAF9F9FAF9F9FAF9F9FAF9F9FAF9FAFBF8F9FAF8F9FAF8F9FAF8F9FA +F8F9FAF8F9FAF8F9FAF8F9F9F7F8F9F7F8F9F7F8F9F7F8F9F7F8F9F7F8F9F7F8F9F7F8F9 +F6F7F9F6F7F9F6F7F8F6F7F8F6F7F8F6F7F8F6F7F8F6F7F8F6F7F8F6F7F8F6F7F8F6F7F8 +F6F7F8F6F7F8F6F7F8F6F7F9F6F7F9F6F7F9F7F8F9F7F8F9F7F8F9F7F8F9F7F8F9F7F8F9 +F7F8F9F8F9F9F8F9FAF8F9FAF8F9FAF8F9FAF8F9FAF8F9FAF9FAFBF9F9FAF9F9FAF9F9FA +F9F9FAF9F9FAFAFAFBFAFAFBFAFAFBFAFAFBFAFAFBFBFBFCFBFBFCFBFBFCFBFBFCFCFCFD +FCFCFDFCFCFDFCFCFDFCFCFDFCFCFEFCFCFEFCFCFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFE +FDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFFFFFFFEFEFEFEFEFE +FEFEFEFEFEFEFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFEFCFCFE +FDFDFEFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFAFAFB +FAFAFBFAFAFBFAFAFBFAFAFBFAFAFBF9F9FAF9FAFBF9FAFBF9FAFBF9FAFBF9FAFBF9FAFB +F8FAFBF8F9FAF8F9FAF8F9FAF8F9FAF8F9FAF8F9FAF8F9FAF8F9FAF8F9FAF8F9FAF8F9FA +F8F9FAF7F8F9F7F8F9F7F8F9F7F8F9F7F8F9F7F8F9F7F8F9F7F8F9F7F8F9F7F8F9F7F8F9 +F7F8F9F8F9FAF8F9FAF8F9FAF8F9FAF8F9FAF8F9FAF8F9FAF8F9FAF8F9FAF8F9FAF8F9FA +F8FAFBF9FAFBF9FAFBF9FAFBF9FAFBF9FAFBF9F9FAFAFAFBFAFAFBFAFAFBFAFAFBFAFAFB +FAFBFCFBFBFCFBFBFCFBFBFCFBFBFCFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFDFDFEFDFDFE +FDFDFEFDFDFEFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFEFEFEFEFEFE +FEFEFEFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFEFEFE +FEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFE +FDFDFEFCFCFEFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFBFBFCFBFBFCFBFBFCFBFBFCFBFBFC +FBFBFCFBFBFCFAFAFBF9F9FAFAFAFBFAFAFBFAFAFBFAFAFBFAFAFBF9F9FAF8F9FAF9F9FA +F9FAFBF9FAFBF9FAFBF9F9FAF9F9FAF9FAFBF9FAFBF9FAFBF8FAFBF9FAFBF8FAFBF8F9FA +F8F9FAF8F9FAF8F9FAF8F9FAF8F9FAF8F9FAF8F9FAF8F9FAF8F9FAF8F9FAF8F9FAF9FAFB +F8FAFBF9FAFBF8FAFBF9FAFBF9FAFBF9F9FAF9FAFBF9FAFBF9FAFBF9F9FAF8F9FAF9F9FA +FAFAFBFAFAFBFAFAFBFAFAFBFAFAFBFAFAFBFBFBFCFBFBFCFBFBFCFBFBFCFAFAFBFBFBFC +FCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFDFDFEFCFCFEFCFCFEFCFCFDFDFDFDFDFDFDFDFDFD +FEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFEFEFE +FEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFEFEFE +FEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFD +FCFCFEFCFCFEFCFCFEFCFCFEFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFBFBFCFBFBFC +FBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFAFAFBFAFAFBFAFAFBFAFAFBFAFAFBFAFAFBFAFAFB +FAFAFBFAFAFBFAFAFBFAFAFBF9F9FAF9F9FAF9F9FAF9F9FAF9F9FAF9F9FAF9F9FAF9F9FA +F9F9FAF9F9FAF9F9FAF9F9FAF9F9FAF9F9FAF9F9FAF9F9FAF9F9FAF9F9FAF9F9FAF9F9FA +F9F9FAF9F9FAFAFAFBFAFAFBFAFAFBFAFAFBFAFAFBFAFAFBFAFAFBFAFAFBFAFAFBFAFAFB +FBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFCFCFDFCFCFDFCFCFDFCFCFDFCFCFD +FCFCFEFCFCFEFCFCFEFDFDFDFDFDFDFDFDFDFDFDFEFDFDFEFEFEFEFEFEFEFDFDFDFDFDFD +FEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFFFFFFFEFEFEFFFFFF +FEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFDFDFEFDFDFE +FDFDFDFDFDFDFDFDFEFDFDFEFDFDFEFDFDFEFDFDFEFCFCFDFCFCFDFCFCFDFCFCFDFCFCFD +FCFCFDFCFCFDFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFAFAFB +FBFBFCFAFAFBFAFAFBFAFAFBFAFAFBFAFAFBFAFAFBFAFAFBFAFAFBFAFAFBFAFAFBFAFAFB +FAFAFBFAFAFBFAFAFBFAFAFBFAFAFBFAFAFBFAFAFBFAFAFBFAFAFBFAFAFBFAFAFBFAFAFB +FAFAFBFAFBFCFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFBFBFC +FCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFCFCFEFDFDFEFDFDFEFCFCFEFDFDFEFDFDFDFDFDFD +FDFDFEFEFEFEFEFEFEFEFEFDFEFEFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFFFFFF +FEFEFEFFFFFFFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFFFFFF +FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFDFEFEFDFEFEFEFEFEFE +FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFCFCFEFCFCFEFCFCFEFCFCFEFCFCFDFCFCFD +FCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFBFBFCFBFBFCFCFCFDFBFBFCFBFBFCFBFBFCFBFBFC +FBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFBFBFC +FBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFBFBFCFBFBFC +FBFBFCFCFCFDFBFBFCFBFBFCFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFDFDFE +FCFCFEFCFCFEFCFCFEFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFDFDFD +FDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFFFFFF +FFFFFFFEFEFEFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFEFEFD +FEFEFEFEFEFEFEFEFEFDFDFEFDFDFEFDFDFEFDFDFDFDFDFDFDFDFEFCFCFEFDFDFEFDFDFE +FDFDFEFDFDFEFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFCFCFD +FCFCFDFCFCFDFBFBFCFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFCFCFD +FCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFCFCFD +FCFCFDFCFCFDFCFCFDFDFDFEFDFDFEFDFDFEFCFCFEFDFDFEFDFDFEFDFDFDFDFDFDFDFDFE +FDFDFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFE +FFFFFFFEFEFEFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFE +FEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFD +FDFDFDFDFDFDFDFDFDFEFEFDFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD +FDFDFEFDFDFEFDFDFEFCFCFEFCFCFEFCFCFEFCFCFEFCFCFEFCFCFEFCFCFEFDFDFEFCFCFD +FCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFCFCFDFCFCFD +FCFCFDFCFCFDFCFCFDFCFCFEFCFCFEFCFCFEFCFCFEFCFCFEFCFCFEFCFCFEFDFDFEFDFDFE +FDFDFEFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFD +FDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFEFEFEFEFEFEFEFEFE +FEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE +FEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFEFEFEFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE +FEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFEFEFDFEFEFDFEFEFDFEFEFDFEFEFEFEFEFEFEFEFE +FDFDFEFDFDFEFDFDFEFDFDFEFDFDFEFDFDFEFDFDFEFDFDFDFDFDFDFDFDFEFDFDFEFDFDFE +FDFDFEFDFDFEFDFDFEFDFDFEFDFDFEFDFDFEFDFDFEFDFDFEFDFDFEFDFDFEFDFDFEFDFDFE +FDFDFEFDFDFDFDFDFDFDFDFDFDFDFEFDFDFEFDFDFEFDFDFEFDFDFEFEFEFEFEFEFEFEFEFE +FEFEFEFEFEFDFEFEFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE +FEFEFEFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE +FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFDFEFEFD +FEFEFDFEFEFDFEFEFDFEFEFDFEFEFDFEFEFDFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE +FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE +FEFEFEFEFEFDFEFEFDFEFEFDFEFEFDFEFEFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFE +FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFE +FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFF +FFFFFFFFFFFFFEFEFEFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE +FEFEFEFEFEFEFEFEFEFEFEFEFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFD +FDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFEFEFE +FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFEFEFE +FFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFE +FEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFE +FFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE +FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFEFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE +FEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE +FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEFEFEFEFEFEFEFEFE +FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFE +FEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF +FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF end +%%PageTrailer +%%Trailer %%EOF diff -Nru clamav-0.98.6+dfsg/docs/html/clamdoc.html clamav-0.99.2+addedllvm/docs/html/clamdoc.html --- clamav-0.98.6+dfsg/docs/html/clamdoc.html 2014-12-18 21:43:18.000000000 +0000 +++ clamav-0.99.2+addedllvm/docs/html/clamdoc.html 2016-04-22 16:19:09.000000000 +0000 @@ -1,4 +1,4 @@ - + + +

\includegraphics[width=353pt]{clam} + WIDTH="489" HEIGHT="489" ALIGN="BOTTOM" BORDER="0" + SRC="./demon.png" + ALT="Image demon">


@@ -55,10 +56,10 @@

-
Clam AntiVirus 0.98.6 -
User Manual +
Clam AntiVirus 0.99.2 +
User Manual
-
+

@@ -66,7 +67,7 @@ -