pysha3-1.0.2/0000775000175000017500000000000013045652733013501 5ustar heimesheimes00000000000000pysha3-1.0.2/tests.py0000664000175000017500000002534513045652502015220 0ustar heimesheimes00000000000000from __future__ import print_function import hashlib import hmac import os import sys import unittest import sha3 if sys.version_info[0] == 3: fromhex = bytes.fromhex def tobyte(b): return bytes([b]) def asunicode(s): return s else: def fromhex(s): return s.decode('hex') def tobyte(b): return bytes(b) def asunicode(s): return s.decode('ascii') def read_vectors(hash_name): vector = os.path.join('vectors', hash_name + '.txt') with open(vector) as f: for line in f: line = line.strip() if line.startswith('#') or not line: continue msg, md = line.split(',') yield msg, md class BaseSHA3Tests(unittest.TestCase): new = None name = None digest_size = None block_size = None rate_bits = None capacity_bits = None shake = False vectors = [] # http://wolfgang-ehrhardt.de/hmac-sha3-testvectors.html hmac_vectors = [ ("0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b", "4869205468657265"), ("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" + "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", "5468697320697320612074657374207573696e672061206c6172676572207" + "468616e20626c6f636b2d73697a65206b657920616e642061206c617267657" + "2207468616e20626c6f636b2d73697a6520646174612e20546865206b65792" + "06e6565647320746f20626520686173686564206265666f7265206265696e6" + "720757365642062792074686520484d414320616c676f726974686d2e") ] hmac_results = [] def assertHashDigest(self, hexmsg, hexdigest): hexdigest = hexdigest.lower() msg = fromhex(hexmsg) digest = fromhex(hexdigest) self.assertEqual(len(digest), self.digest_size) sha3 = self.new(msg) self.assertEqual(sha3.hexdigest(), hexdigest) self.assertEqual(sha3.digest(), digest) sha3 = self.new() sha3.update(msg) self.assertEqual(sha3.hexdigest(), hexdigest) self.assertEqual(sha3.digest(), digest) sha3 = self.new() for b in msg: sha3.update(tobyte(b)) self.assertEqual(sha3.hexdigest(), hexdigest) self.assertEqual(sha3.digest(), digest) def test_basics(self): sha3 = self.new() self.assertEqual(sha3.name, self.name) self.assertEqual(sha3.digest_size, self.digest_size) self.assertEqual(sha3._capacity_bits + sha3._rate_bits, 1600) self.assertEqual(sha3._rate_bits, self.rate_bits) self.assertEqual(sha3._capacity_bits, self.capacity_bits) if self.block_size is not None: self.assertEqual(sha3.block_size, self.block_size) if self.shake: self.assertEqual(len(sha3.digest(4)), 4) self.assertEqual(len(sha3.hexdigest(4)), 8) self.assertEqual(len(sha3.digest(8)), 8) self.assertEqual(len(sha3.hexdigest(8)), 16) self.assertEqual(len(sha3.digest(97)), 97) self.assertEqual(len(sha3.hexdigest(97)), 194) else: self.assertEqual(len(sha3.digest()), self.digest_size) self.assertEqual(len(sha3.hexdigest()), self.digest_size * 2) self.assertRaises(AttributeError, setattr, sha3, "digest", 3) self.assertRaises(AttributeError, setattr, sha3, "name", "egg") self.new(b"data") self.new(string=b"data") self.assertRaises(TypeError, self.new, None) self.assertRaises(TypeError, sha3.update, None) self.assertRaises(TypeError, self.new, asunicode("text")) self.assertRaises(TypeError, sha3.update, asunicode("text")) sha3type = type(sha3) self.assertEqual(sha3type.__name__, self.name) self.assertEqual(sha3type.__module__, "_pysha3") self.assertIsInstance(sha3type(), sha3type) self.assertIs(sha3type, self.new) self.assertRaises(TypeError, type, sha3type, "subclass", {}) def test_hashlib(self): constructor = getattr(hashlib, self.name) s1 = constructor() self.assertEqual(s1.name, self.name) self.assertEqual(s1.digest_size, self.digest_size) # s2 = hashlib.new(self.name) # self.assertEqual(s2.name, self.name) # self.assertEqual(s2.digest_size, self.digest_size) # self.assertEqual(type(s1), type(s2)) # if sys.version_info < (3, 4): # self.assertEqual(constructor, self.new) def test_vectors(self): for hexmsg, hexdigest in read_vectors(self.name): self.assertHashDigest(hexmsg, hexdigest) def test_vectors_unaligned(self): for hexmsg, hexdigest in self.vectors: hexdigest = hexdigest.lower() msg = fromhex(hexmsg) digest = fromhex(hexdigest) for i in range(1, 15): msg2 = i * b"\x00" + msg unaligned = memoryview(msg2)[i:] self.assertEqual(unaligned, msg) sha3 = self.new(unaligned) self.assertEqual(sha3.hexdigest(), hexdigest) self.assertEqual(sha3.digest(), digest) def test_hmac(self): for (key, msg), expected in zip(self.hmac_vectors, self.hmac_results): key = fromhex(key) msg = fromhex(msg) mac = hmac.new(key, msg, self.new) self.assertEqual(len(mac.digest()), self.digest_size) result = mac.hexdigest() self.assertEqual(result, expected, "%s != %s for %r, %r" % (result, expected, key, msg)) class BaseKeccakTests(BaseSHA3Tests): def test_hashlib(self): self.failIf(hasattr(hashlib, self.name)) class BaseShakeTests(BaseSHA3Tests): shake = True def assertHashDigest(self, hexmsg, hexdigest): hexdigest = hexdigest.lower() msg = fromhex(hexmsg) digest = fromhex(hexdigest) # self.assertEqual(len(digest), self.digest_size) sha3 = self.new(msg) self.assertEqual(sha3.hexdigest(len(digest)), hexdigest) self.assertEqual(sha3.digest(len(digest)), digest) sha3 = self.new() sha3.update(msg) self.assertEqual(sha3.hexdigest(len(digest)), hexdigest) self.assertEqual(sha3.digest(len(digest)), digest) sha3 = self.new() for b in msg: sha3.update(tobyte(b)) self.assertEqual(sha3.hexdigest(len(digest)), hexdigest) self.assertEqual(sha3.digest(len(digest)), digest) class SHA3_224Tests(BaseSHA3Tests): new = sha3.sha3_224 name = "sha3_224" digest_size = 28 block_size = 144 rate_bits = 1152 capacity_bits = 448 hmac_results = [ "3b16546bbc7be2706a031dcafd56373d9884367641d8c59af3c860f7", "c79c9b093424e588a9878bbcb089e018270096e9b4b1a9e8220c866a", ] class SHA3_256Tests(BaseSHA3Tests): new = sha3.sha3_256 name = "sha3_256" digest_size = 32 block_size = 136 rate_bits = 1088 capacity_bits = 512 hmac_results = [ "ba85192310dffa96e2a3a40e69774351140bb7185e1202cdcc917589f95e16bb", "e6a36d9b915f86a093cac7d110e9e04cf1d6100d30475509c2475f571b758b5a", ] class SHA3_384Tests(BaseSHA3Tests): new = sha3.sha3_384 name = "sha3_384" digest_size = 48 block_size = 104 rate_bits = 832 capacity_bits = 768 hmac_results = [ "68d2dcf7fd4ddd0a2240c8a437305f61fb7334cfb5d0226e1bc27dc10a2e72" + "3a20d370b47743130e26ac7e3d532886bd", "cad18a8ff6c4cc3ad487b95f9769e9b61c062aefd6952569e6e6421897054c" + "fc70b5fdc6605c18457112fc6aaad45585", ] class SHA3_512Tests(BaseSHA3Tests): new = sha3.sha3_512 name = "sha3_512" digest_size = 64 block_size = 72 rate_bits = 576 capacity_bits = 1024 hmac_results = [ "eb3fbd4b2eaab8f5c504bd3a41465aacec15770a7cabac531e482f860b5ec7" + "ba47ccb2c6f2afce8f88d22b6dc61380f23a668fd3888bb80537c0a0b86407689e", "dc030ee7887034f32cf402df34622f311f3e6cf04860c6bbd7fa488674782b" + "4659fdbdf3fd877852885cfe6e22185fe7b2ee952043629bc9d5f3298a41d02c66", ] class Shake_128Tests(BaseShakeTests): new = sha3.shake_128 name = "shake_128" digest_size = 0 block_size = 168 rate_bits = 1344 capacity_bits = 256 class Shake_256Tests(BaseShakeTests): new = sha3.shake_256 name = "shake_256" digest_size = 0 block_size = 136 rate_bits = 1088 capacity_bits = 512 class Keccak_224Tests(BaseKeccakTests): new = sha3.keccak_224 name = "keccak_224" digest_size = 28 block_size = 144 rate_bits = 1152 capacity_bits = 448 hmac_results = [ "b73d595a2ba9af815e9f2b4e53e78581ebd34a80b3bbaac4e702c4cc", "92649468be236c3c72c189909c063b13f994be05749dc91310db639e", ] class Keccak_256Tests(BaseKeccakTests): new = sha3.keccak_256 name = "keccak_256" digest_size = 32 block_size = 136 rate_bits = 1088 capacity_bits = 512 hmac_results = [ "9663d10c73ee294054dc9faf95647cb99731d12210ff7075fb3d3395abfb9821", "fdaa10a0299aecff9bb411cf2d7748a4022e4a26be3fb5b11b33d8c2b7ef5484", ] class Keccak_384Tests(BaseKeccakTests): new = sha3.keccak_384 name = "keccak_384" digest_size = 48 block_size = 104 rate_bits = 832 capacity_bits = 768 hmac_results = [ "892dfdf5d51e4679bf320cd16d4c9dc6f749744608e003add7fba894acff87" + "361efa4e5799be06b6461f43b60ae97048", "fe9357e3cfa538eb0373a2ce8f1e26ad6590afdaf266f1300522e8896d27e7" + "3f654d0631c8fa598d4bb82af6b744f4f5", ] class Keccak_512Tests(BaseKeccakTests): new = sha3.keccak_512 name = "keccak_512" digest_size = 64 block_size = 72 rate_bits = 576 capacity_bits = 1024 hmac_results = [ "8852c63be8cfc21541a4ee5e5a9a852fc2f7a9adec2ff3a13718ab4ed81aae" + "a0b87b7eb397323548e261a64e7fc75198f6663a11b22cd957f7c8ec858a1c7755", "6adc502f14e27812402fc81a807b28bf8a53c87bea7a1df6256bf66f5de1a4" + "cb741407ad15ab8abc136846057f881969fbb159c321c904bfb557b77afb7778c8", ] def test_main(): suite = unittest.TestSuite() classes = [ SHA3_224Tests, SHA3_256Tests, SHA3_384Tests, SHA3_512Tests, Shake_128Tests, Shake_256Tests, Keccak_224Tests, Keccak_256Tests, Keccak_384Tests, Keccak_512Tests, ] for cls in classes: suite.addTests(unittest.makeSuite(cls)) return suite if __name__ == "__main__": result = unittest.TextTestRunner(verbosity=2).run(test_main()) sys.exit(not result.wasSuccessful()) pysha3-1.0.2/Modules/0000775000175000017500000000000013045652733015111 5ustar heimesheimes00000000000000pysha3-1.0.2/Modules/hashlib.h0000664000175000017500000000431312710453207016666 0ustar heimesheimes00000000000000/* Common code for use by all hashlib related modules. */ /* * Given a PyObject* obj, fill in the Py_buffer* viewp with the result * of PyObject_GetBuffer. Sets an exception and issues a return NULL * on any errors. */ #define GET_BUFFER_VIEW_OR_ERROR(obj, viewp, erraction) do { \ if (PyUnicode_Check((obj))) { \ PyErr_SetString(PyExc_TypeError, \ "Unicode-objects must be encoded before hashing");\ erraction; \ } \ if (!PyObject_CheckBuffer((obj))) { \ PyErr_SetString(PyExc_TypeError, \ "object supporting the buffer API required"); \ erraction; \ } \ if (PyObject_GetBuffer((obj), (viewp), PyBUF_SIMPLE) == -1) { \ erraction; \ } \ if ((viewp)->ndim > 1) { \ PyErr_SetString(PyExc_BufferError, \ "Buffer must be single dimension"); \ PyBuffer_Release((viewp)); \ erraction; \ } \ } while(0) #define GET_BUFFER_VIEW_OR_ERROUT(obj, viewp) \ GET_BUFFER_VIEW_OR_ERROR(obj, viewp, return NULL) /* * Helper code to synchronize access to the hash object when the GIL is * released around a CPU consuming hashlib operation. All code paths that * access a mutable part of obj must be enclosed in an ENTER_HASHLIB / * LEAVE_HASHLIB block or explicitly acquire and release the lock inside * a PY_BEGIN / END_ALLOW_THREADS block if they wish to release the GIL for * an operation. */ #ifdef WITH_THREAD #include "pythread.h" #define ENTER_HASHLIB(obj) \ if ((obj)->lock) { \ if (!PyThread_acquire_lock((obj)->lock, 0)) { \ Py_BEGIN_ALLOW_THREADS \ PyThread_acquire_lock((obj)->lock, 1); \ Py_END_ALLOW_THREADS \ } \ } #define LEAVE_HASHLIB(obj) \ if ((obj)->lock) { \ PyThread_release_lock((obj)->lock); \ } #else #define ENTER_HASHLIB(obj) #define LEAVE_HASHLIB(obj) #endif /* TODO(gps): We should probably make this a module or EVPobject attribute * to allow the user to optimize based on the platform they're using. */ #define HASHLIB_GIL_MINSIZE 2048 pysha3-1.0.2/Modules/pymemsets.c0000664000175000017500000000571412120076022017272 0ustar heimesheimes00000000000000#include #include "pymemsets.h" /* Windows doesn't provide EOVERFLOW. */ #ifndef EOVERFLOW # define EOVERFLOW E2BIG #endif /* ISO C11 memset_s() function * * The function implements the best effort to overwrite a memory location * with data in order to wipe sensitive information. memset() isn't * sufficient because compilers often optimize a call to memset() away, when * the memory segment is not accessed anymore, e.g. at the end of a function * body. The functions follows recommendation MSC06-C of the `CERT Secure * Coding Standards`. * * _Py_memset_s() comes WITHOUT warranty and does NOT guarantee any security. * The page holding your data might already been swapped to disk or shared * with a forked child process. It's still better than no wiping ... * * Section K.3.7.4.1, paragraph 4 [ISO/IEC 9899:2011] states: * * The memset_s function copies the value of c (converted to an unsigned * char) into each of the first n characters of the object pointed to by s. * Unlike memset, any call to the memset_s function shall be evaluated * strictly according to the rules of the abstract machine as described * in (5.1.2.3). That is, any call to the memset_s function shall assume * that the memory indicated by s and n may be accessible in the future * and thus must contain the values indicated by c. */ errno_t _Py_memset_s(void *s, rsize_t smax, int c, rsize_t n) { errno_t errval = 0; volatile unsigned char *p = s; /* The 1st and 2nd runtime-constraint violation abort the function. */ if (s == NULL) { errval = EINVAL; goto err; } if (smax > RSIZE_MAX) { errval = E2BIG; goto err; } /* The 3rd and 4th runtime-constraint violation limit n to smax. */ if (n > RSIZE_MAX) { errval = E2BIG; n = smax; } if (n > smax) { errval = EOVERFLOW; n = smax; } while (n--) { *p++ = (unsigned char)c; } if (errval == 0) { return 0; } else { err: errno = errval; return errval; } } /* I have seen other tricks to accomplish the same task faster with less CPU * instructions. * * A patch for NetBSD creates a const volatile function * pointer to memset() and calls memset() by dereferencing the volatile * function pointer. I'm not sure if this works with all compilers. * * static void * (* const volatile __memset_vp)(void *, int, size_t) = (memset); * (*__memset_vp)(s, c, n); * * Source: http://ftp.netbsd.org/pub/NetBSD/misc/apb/memset_s.20120224.diff * * Another trick for GCC and LLVM is inline assembly to prevent dead code * elimination: * * memset(s, c, n); * asm volatile("" : : "r"(s) : "memory"); * no code : no write : reads s : clobbers memory * * Source: http://llvm.org/bugs/show_bug.cgi?id=15495 * * Windows has SecureZeroMemory(void*, size_t). * http://msdn.microsoft.com/en-us/library/windows/desktop/aa366877%28v=vs.85%29.aspx */ pysha3-1.0.2/Modules/_sha3/0000775000175000017500000000000013045652733016106 5ustar heimesheimes00000000000000pysha3-1.0.2/Modules/_sha3/backport.inc0000664000175000017500000000364413041641371020405 0ustar heimesheimes00000000000000#include "../pymemsets.h" #define SHA3_clearstate(state) \ _Py_memset_s(&(state), sizeof(SHA3_state), 0, sizeof(SHA3_state)) #ifndef Py_UNUSED #ifdef __GNUC__ #define Py_UNUSED(name) _unused_ ## name __attribute__((unused)) #else #define Py_UNUSED(name) _unused_ ## name #endif #endif /* Py_UNUSED */ #if PY_MAJOR_VERSION >= 3 #define Hashname_FromString PyUnicode_FromString #define Hashsize_FromLong PyLong_FromLong #else #define Hashname_FromString PyString_FromString #define Hashsize_FromLong PyInt_FromLong #endif /* PY_MAJOR_VERSION >= 3 */ /* Python 2 only defines WORDS_BIGENDIAN. */ #if !defined(PY_BIG_ENDIAN) && !defined(PY_LITTLE_ENDIAN) #ifdef WORDS_BIGENDIAN #define PY_BIG_ENDIAN 1 #define PY_LITTLE_ENDIAN 0 #else #define PY_BIG_ENDIAN 0 #define PY_LITTLE_ENDIAN 1 #endif #endif #if (PY_MAJOR_VERSION < 3) || (PY_MAJOR_VERSION == 3 && PY_MINOR_VERSION < 5) static PyObject* _Py_strhex(const char* argbuf, const Py_ssize_t arglen) { static const char *hexdigits = "0123456789abcdef"; PyObject *retval; #if PY_MAJOR_VERSION >= 3 Py_UCS1 *retbuf; #else char *retbuf; #endif Py_ssize_t i, j; assert(arglen >= 0); if (arglen > PY_SSIZE_T_MAX / 2) return PyErr_NoMemory(); #if PY_MAJOR_VERSION >= 3 retval = PyUnicode_New(arglen * 2, 127); if (!retval) return NULL; retbuf = PyUnicode_1BYTE_DATA(retval); #else retval = PyString_FromStringAndSize(NULL, arglen * 2); if (!retval) return NULL; retbuf = PyString_AsString(retval); if (!retbuf) { Py_DECREF(retval); return NULL; } #endif /* make hex version of string, taken from shamodule.c */ for (i=j=0; i < arglen; i++) { unsigned char c; c = (argbuf[i] >> 4) & 0xf; retbuf[j++] = hexdigits[c]; c = argbuf[i] & 0xf; retbuf[j++] = hexdigits[c]; } return retval; } #else #include "pystrhex.h" #endif /* < 3.5 */ pysha3-1.0.2/Modules/_sha3/cleanup.py0000775000175000017500000000273213027425363020113 0ustar heimesheimes00000000000000#!/usr/bin/env python # Copyright (C) 2012 Christian Heimes (christian@python.org) # Licensed to PSF under a Contributor Agreement. # # cleanup Keccak sources import os import re CPP1 = re.compile("^//(.*)") CPP2 = re.compile("\ //(.*)") STATICS = ("void ", "int ", "HashReturn ", "const UINT64 ", "UINT16 ", " int prefix##") HERE = os.path.dirname(os.path.abspath(__file__)) KECCAK = os.path.join(HERE, "kcp") def getfiles(): for name in os.listdir(KECCAK): name = os.path.join(KECCAK, name) if os.path.isfile(name): yield name def cleanup(f): buf = [] for line in f: # mark all functions and global data as static # if line.startswith(STATICS): # buf.append("static " + line) # continue # remove UINT64 typedef, we have our own if line.startswith("typedef unsigned long long int"): buf.append("/* %s */\n" % line.strip()) continue # remove #include "brg_endian.h" if "brg_endian.h" in line: buf.append("/* %s */\n" % line.strip()) continue # transform C++ comments into ANSI C comments line = CPP1.sub(r"/*\1 */\n", line) line = CPP2.sub(r" /*\1 */\n", line) buf.append(line) return "".join(buf) if __name__ == '__main__': for name in getfiles(): with open(name) as f: res = cleanup(f) with open(name, "w") as f: f.write(res) pysha3-1.0.2/Modules/_sha3/sha3module.c0000664000175000017500000005636613045652502020330 0ustar heimesheimes00000000000000/* SHA3 module * * This module provides an interface to the SHA3 algorithm * * See below for information about the original code this module was * based upon. Additional work performed by: * * Andrew Kuchling (amk@amk.ca) * Greg Stein (gstein@lyra.org) * Trevor Perrin (trevp@trevp.net) * Gregory P. Smith (greg@krypto.org) * * Copyright (C) 2012-2016 Christian Heimes (christian@python.org) * Licensed to PSF under a Contributor Agreement. * */ #include "Python.h" #include "../hashlib.h" #include "backport.inc" /* ************************************************************************** * SHA-3 (Keccak) and SHAKE * * The code is based on KeccakCodePackage from 2016-04-23 * commit 647f93079afc4ada3d23737477a6e52511ca41fd * * The reference implementation is altered in this points: * - C++ comments are converted to ANSI C comments. * - all function names are mangled * - typedef for UINT64 is commented out. * - brg_endian.h is removed * * *************************************************************************/ #ifdef __sparc /* opt64 uses un-aligned memory access that causes a BUS error with msg * 'invalid address alignment' on SPARC. */ #define KeccakOpt 32 #elif PY_BIG_ENDIAN /* opt64 is not yet supported on big endian platforms */ #define KeccakOpt 32 #elif SIZEOF_VOID_P == 8 && defined(PY_UINT64_T) /* opt64 works only on little-endian 64bit platforms with unsigned int64 */ #define KeccakOpt 64 #else /* opt32 is used for the remaining 32 and 64bit platforms */ #define KeccakOpt 32 #endif #if KeccakOpt == 64 && defined(PY_UINT64_T) /* 64bit platforms with unsigned int64 */ typedef PY_UINT64_T UINT64; typedef unsigned char UINT8; #endif /* replacement for brg_endian.h */ #define IS_LITTLE_ENDIAN 1234 #define IS_BIG_ENDIAN 4321 #if PY_LITTLE_ENDIAN #define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN #endif #if PY_BIG_ENDIAN #define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN #endif /* mangle names */ #define KeccakF1600_FastLoop_Absorb _PySHA3_KeccakF1600_FastLoop_Absorb #define Keccak_HashFinal _PySHA3_Keccak_HashFinal #define Keccak_HashInitialize _PySHA3_Keccak_HashInitialize #define Keccak_HashSqueeze _PySHA3_Keccak_HashSqueeze #define Keccak_HashUpdate _PySHA3_Keccak_HashUpdate #define KeccakP1600_AddBytes _PySHA3_KeccakP1600_AddBytes #define KeccakP1600_AddBytesInLane _PySHA3_KeccakP1600_AddBytesInLane #define KeccakP1600_AddLanes _PySHA3_KeccakP1600_AddLanes #define KeccakP1600_ExtractAndAddBytes _PySHA3_KeccakP1600_ExtractAndAddBytes #define KeccakP1600_ExtractAndAddBytesInLane _PySHA3_KeccakP1600_ExtractAndAddBytesInLane #define KeccakP1600_ExtractAndAddLanes _PySHA3_KeccakP1600_ExtractAndAddLanes #define KeccakP1600_ExtractBytes _PySHA3_KeccakP1600_ExtractBytes #define KeccakP1600_ExtractBytesInLane _PySHA3_KeccakP1600_ExtractBytesInLane #define KeccakP1600_ExtractLanes _PySHA3_KeccakP1600_ExtractLanes #define KeccakP1600_Initialize _PySHA3_KeccakP1600_Initialize #define KeccakP1600_OverwriteBytes _PySHA3_KeccakP1600_OverwriteBytes #define KeccakP1600_OverwriteBytesInLane _PySHA3_KeccakP1600_OverwriteBytesInLane #define KeccakP1600_OverwriteLanes _PySHA3_KeccakP1600_OverwriteLanes #define KeccakP1600_OverwriteWithZeroes _PySHA3_KeccakP1600_OverwriteWithZeroes #define KeccakP1600_Permute_12rounds _PySHA3_KeccakP1600_Permute_12rounds #define KeccakP1600_Permute_24rounds _PySHA3_KeccakP1600_Permute_24rounds #define KeccakWidth1600_Sponge _PySHA3_KeccakWidth1600_Sponge #define KeccakWidth1600_SpongeAbsorb _PySHA3_KeccakWidth1600_SpongeAbsorb #define KeccakWidth1600_SpongeAbsorbLastFewBits _PySHA3_KeccakWidth1600_SpongeAbsorbLastFewBits #define KeccakWidth1600_SpongeInitialize _PySHA3_KeccakWidth1600_SpongeInitialize #define KeccakWidth1600_SpongeSqueeze _PySHA3_KeccakWidth1600_SpongeSqueeze #if KeccakOpt == 32 #define KeccakP1600_AddByte _PySHA3_KeccakP1600_AddByte #define KeccakP1600_Permute_Nrounds _PySHA3_KeccakP1600_Permute_Nrounds #define KeccakP1600_SetBytesInLaneToZero _PySHA3_KeccakP1600_SetBytesInLaneToZero #endif /* we are only interested in KeccakP1600 */ #define KeccakP200_excluded 1 #define KeccakP400_excluded 1 #define KeccakP800_excluded 1 /* inline all Keccak dependencies */ #include "kcp/KeccakHash.h" #include "kcp/KeccakSponge.h" #include "kcp/KeccakHash.c" #include "kcp/KeccakSponge.c" #if KeccakOpt == 64 #include "kcp/KeccakP-1600-opt64.c" #elif KeccakOpt == 32 #include "kcp/KeccakP-1600-inplace32BI.c" #endif #define SHA3_MAX_DIGESTSIZE 64 /* 64 Bytes (512 Bits) for 224 to 512 */ #define SHA3_LANESIZE (20 * 8) /* ExtractLane needs max uint64_t[20] extra. */ #define SHA3_state Keccak_HashInstance #define SHA3_init Keccak_HashInitialize #define SHA3_process Keccak_HashUpdate #define SHA3_done Keccak_HashFinal #define SHA3_squeeze Keccak_HashSqueeze #define SHA3_copystate(dest, src) memcpy(&(dest), &(src), sizeof(SHA3_state)) /*[clinic input] module _pysha3 class _pysha3.sha3_224 "SHA3object *" "&SHA3_224typ" class _pysha3.sha3_256 "SHA3object *" "&SHA3_256typ" class _pysha3.sha3_384 "SHA3object *" "&SHA3_384typ" class _pysha3.sha3_512 "SHA3object *" "&SHA3_512typ" class _pysha3.shake_128 "SHA3object *" "&SHAKE128type" class _pysha3.shake_256 "SHA3object *" "&SHAKE256type" [clinic start generated code]*/ /*[clinic end generated code: output=da39a3ee5e6b4b0d input=b8a53680f370285a]*/ /* The structure for storing SHA3 info */ typedef struct { PyObject_HEAD SHA3_state hash_state; #ifdef WITH_THREAD PyThread_type_lock lock; #endif } SHA3object; static PyTypeObject SHA3_224type; static PyTypeObject SHA3_256type; static PyTypeObject SHA3_384type; static PyTypeObject SHA3_512type; #ifdef PY_WITH_KECCAK static PyTypeObject Keccak_224type; static PyTypeObject Keccak_256type; static PyTypeObject Keccak_384type; static PyTypeObject Keccak_512type; #endif static PyTypeObject SHAKE128type; static PyTypeObject SHAKE256type; #include "clinic/sha3module.c.h" static SHA3object * newSHA3object(PyTypeObject *type) { SHA3object *newobj; newobj = (SHA3object *)PyObject_New(SHA3object, type); if (newobj == NULL) { return NULL; } #ifdef WITH_THREAD newobj->lock = NULL; #endif return newobj; } /*[clinic input] @classmethod _pysha3.sha3_224.__new__ as py_sha3_new string as data: object = NULL Return a new SHA3 hash object with a hashbit length of 28 bytes. [clinic start generated code]*/ static PyObject * py_sha3_new_impl(PyTypeObject *type, PyObject *data) /*[clinic end generated code: output=8d5c34279e69bf09 input=d7c582b950a858b6]*/ { SHA3object *self = NULL; Py_buffer buf = {NULL, NULL}; HashReturn res; self = newSHA3object(type); if (self == NULL) { goto error; } if (type == &SHA3_224type) { res = Keccak_HashInitialize_SHA3_224(&self->hash_state); } else if (type == &SHA3_256type) { res = Keccak_HashInitialize_SHA3_256(&self->hash_state); } else if (type == &SHA3_384type) { res = Keccak_HashInitialize_SHA3_384(&self->hash_state); } else if (type == &SHA3_512type) { res = Keccak_HashInitialize_SHA3_512(&self->hash_state); #ifdef PY_WITH_KECCAK } else if (type == &Keccak_224type) { res = Keccak_HashInitialize(&self->hash_state, 1152, 448, 224, 0x01); } else if (type == &Keccak_256type) { res = Keccak_HashInitialize(&self->hash_state, 1088, 512, 256, 0x01); } else if (type == &Keccak_384type) { res = Keccak_HashInitialize(&self->hash_state, 832, 768, 384, 0x01); } else if (type == &Keccak_512type) { res = Keccak_HashInitialize(&self->hash_state, 576, 1024, 512, 0x01); #endif } else if (type == &SHAKE128type) { res = Keccak_HashInitialize_SHAKE128(&self->hash_state); } else if (type == &SHAKE256type) { res = Keccak_HashInitialize_SHAKE256(&self->hash_state); } else { PyErr_BadInternalCall(); goto error; } if (data) { GET_BUFFER_VIEW_OR_ERROR(data, &buf, goto error); #ifdef WITH_THREAD if (buf.len >= HASHLIB_GIL_MINSIZE) { /* invariant: New objects can't be accessed by other code yet, * thus it's safe to release the GIL without locking the object. */ Py_BEGIN_ALLOW_THREADS res = SHA3_process(&self->hash_state, buf.buf, buf.len * 8); Py_END_ALLOW_THREADS } else { res = SHA3_process(&self->hash_state, buf.buf, buf.len * 8); } #else res = SHA3_process(&self->hash_state, buf.buf, buf.len * 8); #endif if (res != SUCCESS) { PyErr_SetString(PyExc_RuntimeError, "internal error in SHA3 Update()"); goto error; } PyBuffer_Release(&buf); } return (PyObject *)self; error: if (self) { Py_DECREF(self); } if (data && buf.obj) { PyBuffer_Release(&buf); } return NULL; } /* Internal methods for a hash object */ static void SHA3_dealloc(SHA3object *self) { SHA3_clearstate(self->hash_state); #ifdef WITH_THREAD if (self->lock) { PyThread_free_lock(self->lock); } #endif PyObject_Del(self); } /* External methods for a hash object */ /*[clinic input] _pysha3.sha3_224.copy Return a copy of the hash object. [clinic start generated code]*/ static PyObject * _sha3_sha3_224_copy_impl(SHA3object *self) /*[clinic end generated code: output=6c537411ecdcda4c input=93a44aaebea51ba8]*/ { SHA3object *newobj; if ((newobj = newSHA3object(Py_TYPE(self))) == NULL) { return NULL; } ENTER_HASHLIB(self); SHA3_copystate(newobj->hash_state, self->hash_state); LEAVE_HASHLIB(self); return (PyObject *)newobj; } /*[clinic input] _pysha3.sha3_224.digest Return the digest value as a string of binary data. [clinic start generated code]*/ static PyObject * _sha3_sha3_224_digest_impl(SHA3object *self) /*[clinic end generated code: output=fd531842e20b2d5b input=a5807917d219b30e]*/ { unsigned char digest[SHA3_MAX_DIGESTSIZE + SHA3_LANESIZE]; SHA3_state temp; HashReturn res; ENTER_HASHLIB(self); SHA3_copystate(temp, self->hash_state); LEAVE_HASHLIB(self); res = SHA3_done(&temp, digest); SHA3_clearstate(temp); if (res != SUCCESS) { PyErr_SetString(PyExc_RuntimeError, "internal error in SHA3 Final()"); return NULL; } return PyBytes_FromStringAndSize((const char *)digest, self->hash_state.fixedOutputLength / 8); } /*[clinic input] _pysha3.sha3_224.hexdigest Return the digest value as a string of hexadecimal digits. [clinic start generated code]*/ static PyObject * _sha3_sha3_224_hexdigest_impl(SHA3object *self) /*[clinic end generated code: output=75ad03257906918d input=2d91bb6e0d114ee3]*/ { unsigned char digest[SHA3_MAX_DIGESTSIZE + SHA3_LANESIZE]; SHA3_state temp; HashReturn res; /* Get the raw (binary) digest value */ ENTER_HASHLIB(self); SHA3_copystate(temp, self->hash_state); LEAVE_HASHLIB(self); res = SHA3_done(&temp, digest); SHA3_clearstate(temp); if (res != SUCCESS) { PyErr_SetString(PyExc_RuntimeError, "internal error in SHA3 Final()"); return NULL; } return _Py_strhex((const char *)digest, self->hash_state.fixedOutputLength / 8); } /*[clinic input] _pysha3.sha3_224.update obj: object / Update this hash object's state with the provided string. [clinic start generated code]*/ static PyObject * _sha3_sha3_224_update(SHA3object *self, PyObject *obj) /*[clinic end generated code: output=06721d55b483e0af input=be44bf0d1c279791]*/ { Py_buffer buf; HashReturn res; GET_BUFFER_VIEW_OR_ERROUT(obj, &buf); /* add new data, the function takes the length in bits not bytes */ #ifdef WITH_THREAD if (self->lock == NULL && buf.len >= HASHLIB_GIL_MINSIZE) { self->lock = PyThread_allocate_lock(); } /* Once a lock exists all code paths must be synchronized. We have to * release the GIL even for small buffers as acquiring the lock may take * an unlimited amount of time when another thread updates this object * with lots of data. */ if (self->lock) { Py_BEGIN_ALLOW_THREADS PyThread_acquire_lock(self->lock, 1); res = SHA3_process(&self->hash_state, buf.buf, buf.len * 8); PyThread_release_lock(self->lock); Py_END_ALLOW_THREADS } else { res = SHA3_process(&self->hash_state, buf.buf, buf.len * 8); } #else res = SHA3_process(&self->hash_state, buf.buf, buf.len * 8); #endif if (res != SUCCESS) { PyBuffer_Release(&buf); PyErr_SetString(PyExc_RuntimeError, "internal error in SHA3 Update()"); return NULL; } PyBuffer_Release(&buf); Py_INCREF(Py_None); return Py_None; } static PyMethodDef SHA3_methods[] = { _SHA3_SHA3_224_COPY_METHODDEF _SHA3_SHA3_224_DIGEST_METHODDEF _SHA3_SHA3_224_HEXDIGEST_METHODDEF _SHA3_SHA3_224_UPDATE_METHODDEF {NULL, NULL} /* sentinel */ }; static PyObject * SHA3_get_block_size(SHA3object *self, void *closure) { int rate = self->hash_state.sponge.rate; return Hashsize_FromLong(rate / 8); } static PyObject * SHA3_get_name(SHA3object *self, void *closure) { PyTypeObject *type = Py_TYPE(self); if (type == &SHA3_224type) { return Hashname_FromString("sha3_224"); } else if (type == &SHA3_256type) { return Hashname_FromString("sha3_256"); } else if (type == &SHA3_384type) { return Hashname_FromString("sha3_384"); } else if (type == &SHA3_512type) { return Hashname_FromString("sha3_512"); #ifdef PY_WITH_KECCAK } else if (type == &Keccak_224type) { return Hashname_FromString("keccak_224"); } else if (type == &Keccak_256type) { return Hashname_FromString("keccak_256"); } else if (type == &Keccak_384type) { return Hashname_FromString("keccak_384"); } else if (type == &Keccak_512type) { return Hashname_FromString("keccak_512"); #endif } else if (type == &SHAKE128type) { return Hashname_FromString("shake_128"); } else if (type == &SHAKE256type) { return Hashname_FromString("shake_256"); } else { PyErr_BadInternalCall(); return NULL; } } static PyObject * SHA3_get_digest_size(SHA3object *self, void *closure) { return Hashsize_FromLong(self->hash_state.fixedOutputLength / 8); } static PyObject * SHA3_get_capacity_bits(SHA3object *self, void *closure) { int capacity = 1600 - self->hash_state.sponge.rate; return Hashsize_FromLong(capacity); } static PyObject * SHA3_get_rate_bits(SHA3object *self, void *closure) { unsigned int rate = self->hash_state.sponge.rate; return Hashsize_FromLong(rate); } static PyObject * SHA3_get_suffix(SHA3object *self, void *closure) { unsigned char suffix[2]; suffix[0] = self->hash_state.delimitedSuffix; suffix[1] = 0; return PyBytes_FromStringAndSize((const char *)suffix, 1); } static PyGetSetDef SHA3_getseters[] = { {"block_size", (getter)SHA3_get_block_size, NULL, NULL, NULL}, {"name", (getter)SHA3_get_name, NULL, NULL, NULL}, {"digest_size", (getter)SHA3_get_digest_size, NULL, NULL, NULL}, {"_capacity_bits", (getter)SHA3_get_capacity_bits, NULL, NULL, NULL}, {"_rate_bits", (getter)SHA3_get_rate_bits, NULL, NULL, NULL}, {"_suffix", (getter)SHA3_get_suffix, NULL, NULL, NULL}, {NULL} /* Sentinel */ }; #define SHA3_TYPE(type_obj, type_name, type_doc, type_methods) \ static PyTypeObject type_obj = { \ PyVarObject_HEAD_INIT(NULL, 0) \ type_name, /* tp_name */ \ sizeof(SHA3object), /* tp_size */ \ 0, /* tp_itemsize */ \ /* methods */ \ (destructor)SHA3_dealloc, /* tp_dealloc */ \ 0, /* tp_print */ \ 0, /* tp_getattr */ \ 0, /* tp_setattr */ \ 0, /* tp_reserved */ \ 0, /* tp_repr */ \ 0, /* tp_as_number */ \ 0, /* tp_as_sequence */ \ 0, /* tp_as_mapping */ \ 0, /* tp_hash */ \ 0, /* tp_call */ \ 0, /* tp_str */ \ 0, /* tp_getattro */ \ 0, /* tp_setattro */ \ 0, /* tp_as_buffer */ \ Py_TPFLAGS_DEFAULT, /* tp_flags */ \ type_doc, /* tp_doc */ \ 0, /* tp_traverse */ \ 0, /* tp_clear */ \ 0, /* tp_richcompare */ \ 0, /* tp_weaklistoffset */ \ 0, /* tp_iter */ \ 0, /* tp_iternext */ \ type_methods, /* tp_methods */ \ NULL, /* tp_members */ \ SHA3_getseters, /* tp_getset */ \ 0, /* tp_base */ \ 0, /* tp_dict */ \ 0, /* tp_descr_get */ \ 0, /* tp_descr_set */ \ 0, /* tp_dictoffset */ \ 0, /* tp_init */ \ 0, /* tp_alloc */ \ py_sha3_new, /* tp_new */ \ } PyDoc_STRVAR(sha3_256__doc__, "sha3_256([string]) -> SHA3 object\n\ \n\ Return a new SHA3 hash object with a hashbit length of 32 bytes."); PyDoc_STRVAR(sha3_384__doc__, "sha3_384([string]) -> SHA3 object\n\ \n\ Return a new SHA3 hash object with a hashbit length of 48 bytes."); PyDoc_STRVAR(sha3_512__doc__, "sha3_512([string]) -> SHA3 object\n\ \n\ Return a new SHA3 hash object with a hashbit length of 64 bytes."); SHA3_TYPE(SHA3_224type, "_pysha3.sha3_224", py_sha3_new__doc__, SHA3_methods); SHA3_TYPE(SHA3_256type, "_pysha3.sha3_256", sha3_256__doc__, SHA3_methods); SHA3_TYPE(SHA3_384type, "_pysha3.sha3_384", sha3_384__doc__, SHA3_methods); SHA3_TYPE(SHA3_512type, "_pysha3.sha3_512", sha3_512__doc__, SHA3_methods); #ifdef PY_WITH_KECCAK PyDoc_STRVAR(keccak_224__doc__, "keccak_224([string]) -> Keccak object\n\ \n\ Return a new Keccak hash object with a hashbit length of 28 bytes."); PyDoc_STRVAR(keccak_256__doc__, "keccak_256([string]) -> Keccak object\n\ \n\ Return a new Keccak hash object with a hashbit length of 32 bytes."); PyDoc_STRVAR(keccak_384__doc__, "keccak_384([string]) -> Keccak object\n\ \n\ Return a new Keccak hash object with a hashbit length of 48 bytes."); PyDoc_STRVAR(keccak_512__doc__, "keccak_512([string]) -> Keccak object\n\ \n\ Return a new Keccak hash object with a hashbit length of 64 bytes."); SHA3_TYPE(Keccak_224type, "_pysha3.keccak_224", keccak_224__doc__, SHA3_methods); SHA3_TYPE(Keccak_256type, "_pysha3.keccak_256", keccak_256__doc__, SHA3_methods); SHA3_TYPE(Keccak_384type, "_pysha3.keccak_384", keccak_384__doc__, SHA3_methods); SHA3_TYPE(Keccak_512type, "_pysha3.keccak_512", keccak_512__doc__, SHA3_methods); #endif static PyObject * _SHAKE_digest(SHA3object *self, unsigned long digestlen, int hex) { unsigned char *digest = NULL; SHA3_state temp; int res; PyObject *result = NULL; /* ExtractLane needs at least SHA3_MAX_DIGESTSIZE + SHA3_LANESIZE and * SHA3_LANESIZE extra space. */ digest = (unsigned char*)PyMem_Malloc(digestlen + SHA3_LANESIZE); if (digest == NULL) { return PyErr_NoMemory(); } /* Get the raw (binary) digest value */ ENTER_HASHLIB(self); SHA3_copystate(temp, self->hash_state); LEAVE_HASHLIB(self); res = SHA3_done(&temp, NULL); if (res != SUCCESS) { PyErr_SetString(PyExc_RuntimeError, "internal error in SHA3 done()"); goto error; } res = SHA3_squeeze(&temp, digest, digestlen * 8); if (res != SUCCESS) { PyErr_SetString(PyExc_RuntimeError, "internal error in SHA3 Squeeze()"); return NULL; } SHA3_clearstate(temp); if (hex) { result = _Py_strhex((const char *)digest, digestlen); } else { result = PyBytes_FromStringAndSize((const char *)digest, digestlen); } error: if (digest != NULL) { PyMem_Free(digest); } return result; } /*[clinic input] _pysha3.shake_128.digest length: unsigned_long(bitwise=True) \ Return the digest value as a string of binary data. [clinic start generated code]*/ static PyObject * _sha3_shake_128_digest_impl(SHA3object *self, unsigned long length) /*[clinic end generated code: output=2313605e2f87bb8f input=608c8ca80ae9d115]*/ { return _SHAKE_digest(self, length, 0); } /*[clinic input] _pysha3.shake_128.hexdigest length: unsigned_long(bitwise=True) \ Return the digest value as a string of hexadecimal digits. [clinic start generated code]*/ static PyObject * _sha3_shake_128_hexdigest_impl(SHA3object *self, unsigned long length) /*[clinic end generated code: output=bf8e2f1e490944a8 input=64e56b4760db4573]*/ { return _SHAKE_digest(self, length, 1); } static PyMethodDef SHAKE_methods[] = { _SHA3_SHA3_224_COPY_METHODDEF _SHA3_SHAKE_128_DIGEST_METHODDEF _SHA3_SHAKE_128_HEXDIGEST_METHODDEF _SHA3_SHA3_224_UPDATE_METHODDEF {NULL, NULL} /* sentinel */ }; PyDoc_STRVAR(shake_128__doc__, "shake_128([string]) -> SHAKE object\n\ \n\ Return a new SHAKE hash object."); PyDoc_STRVAR(shake_256__doc__, "shake_256([string]) -> SHAKE object\n\ \n\ Return a new SHAKE hash object."); SHA3_TYPE(SHAKE128type, "_pysha3.shake_128", shake_128__doc__, SHAKE_methods); SHA3_TYPE(SHAKE256type, "_pysha3.shake_256", shake_256__doc__, SHAKE_methods); #if PY_MAJOR_VERSION >= 3 /* Initialize this module. */ static struct PyModuleDef _SHA3module = { PyModuleDef_HEAD_INIT, "_pysha3", NULL, -1, NULL, NULL, NULL, NULL, NULL }; PyMODINIT_FUNC PyInit__pysha3(void) { PyObject *m = NULL; if ((m = PyModule_Create(&_SHA3module)) == NULL) { return NULL; } #else void init_pysha3(void) { PyObject *m = NULL; if ((m = Py_InitModule3("_pysha3", NULL, NULL)) == NULL) { return; } #endif #define init_sha3type(name, type) \ do { \ Py_TYPE(type) = &PyType_Type; \ if (PyType_Ready(type) < 0) { \ goto error; \ } \ Py_INCREF((PyObject *)type); \ if (PyModule_AddObject(m, name, (PyObject *)type) < 0) { \ goto error; \ } \ } while(0) init_sha3type("sha3_224", &SHA3_224type); init_sha3type("sha3_256", &SHA3_256type); init_sha3type("sha3_384", &SHA3_384type); init_sha3type("sha3_512", &SHA3_512type); #ifdef PY_WITH_KECCAK init_sha3type("keccak_224", &Keccak_224type); init_sha3type("keccak_256", &Keccak_256type); init_sha3type("keccak_384", &Keccak_384type); init_sha3type("keccak_512", &Keccak_512type); #endif init_sha3type("shake_128", &SHAKE128type); init_sha3type("shake_256", &SHAKE256type); #undef init_sha3type if (PyModule_AddIntConstant(m, "keccakopt", KeccakOpt) < 0) { goto error; } if (PyModule_AddStringConstant(m, "implementation", KeccakP1600_implementation) < 0) { goto error; } #if PY_MAJOR_VERSION >= 3 return m; error: Py_DECREF(m); return NULL; #else error: return; #endif } pysha3-1.0.2/Modules/_sha3/kcp/0000775000175000017500000000000013045652733016663 5ustar heimesheimes00000000000000pysha3-1.0.2/Modules/_sha3/kcp/KeccakP-1600-SnP-opt32.h0000664000175000017500000000316112710457014022356 0ustar heimesheimes00000000000000/* Implementation by the Keccak, Keyak and Ketje Teams, namely, Guido Bertoni, Joan Daemen, Michaël Peeters, Gilles Van Assche and Ronny Van Keer, hereby denoted as "the implementer". For more information, feedback or questions, please refer to our websites: http://keccak.noekeon.org/ http://keyak.noekeon.org/ http://ketje.noekeon.org/ To the extent possible under law, the implementer has waived all copyright and related or neighboring rights to the source code in this file. http://creativecommons.org/publicdomain/zero/1.0/ */ #ifndef _KeccakP_1600_SnP_h_ #define _KeccakP_1600_SnP_h_ /** For the documentation, see SnP-documentation.h. */ #define KeccakP1600_implementation "in-place 32-bit optimized implementation" #define KeccakP1600_stateSizeInBytes 200 #define KeccakP1600_stateAlignment 8 #define KeccakP1600_StaticInitialize() void KeccakP1600_Initialize(void *state); void KeccakP1600_AddByte(void *state, unsigned char data, unsigned int offset); void KeccakP1600_AddBytes(void *state, const unsigned char *data, unsigned int offset, unsigned int length); void KeccakP1600_OverwriteBytes(void *state, const unsigned char *data, unsigned int offset, unsigned int length); void KeccakP1600_OverwriteWithZeroes(void *state, unsigned int byteCount); void KeccakP1600_Permute_12rounds(void *state); void KeccakP1600_Permute_24rounds(void *state); void KeccakP1600_ExtractBytes(const void *state, unsigned char *data, unsigned int offset, unsigned int length); void KeccakP1600_ExtractAndAddBytes(const void *state, const unsigned char *input, unsigned char *output, unsigned int offset, unsigned int length); #endif pysha3-1.0.2/Modules/_sha3/kcp/SnP-Relaned.h0000664000175000017500000001350712710457014021103 0ustar heimesheimes00000000000000/* Implementation by the Keccak, Keyak and Ketje Teams, namely, Guido Bertoni, Joan Daemen, Michaël Peeters, Gilles Van Assche and Ronny Van Keer, hereby denoted as "the implementer". For more information, feedback or questions, please refer to our websites: http://keccak.noekeon.org/ http://keyak.noekeon.org/ http://ketje.noekeon.org/ To the extent possible under law, the implementer has waived all copyright and related or neighboring rights to the source code in this file. http://creativecommons.org/publicdomain/zero/1.0/ */ #ifndef _SnP_Relaned_h_ #define _SnP_Relaned_h_ #define SnP_AddBytes(state, data, offset, length, SnP_AddLanes, SnP_AddBytesInLane, SnP_laneLengthInBytes) \ { \ if ((offset) == 0) { \ SnP_AddLanes(state, data, (length)/SnP_laneLengthInBytes); \ SnP_AddBytesInLane(state, \ (length)/SnP_laneLengthInBytes, \ (data)+((length)/SnP_laneLengthInBytes)*SnP_laneLengthInBytes, \ 0, \ (length)%SnP_laneLengthInBytes); \ } \ else { \ unsigned int _sizeLeft = (length); \ unsigned int _lanePosition = (offset)/SnP_laneLengthInBytes; \ unsigned int _offsetInLane = (offset)%SnP_laneLengthInBytes; \ const unsigned char *_curData = (data); \ while(_sizeLeft > 0) { \ unsigned int _bytesInLane = SnP_laneLengthInBytes - _offsetInLane; \ if (_bytesInLane > _sizeLeft) \ _bytesInLane = _sizeLeft; \ SnP_AddBytesInLane(state, _lanePosition, _curData, _offsetInLane, _bytesInLane); \ _sizeLeft -= _bytesInLane; \ _lanePosition++; \ _offsetInLane = 0; \ _curData += _bytesInLane; \ } \ } \ } #define SnP_OverwriteBytes(state, data, offset, length, SnP_OverwriteLanes, SnP_OverwriteBytesInLane, SnP_laneLengthInBytes) \ { \ if ((offset) == 0) { \ SnP_OverwriteLanes(state, data, (length)/SnP_laneLengthInBytes); \ SnP_OverwriteBytesInLane(state, \ (length)/SnP_laneLengthInBytes, \ (data)+((length)/SnP_laneLengthInBytes)*SnP_laneLengthInBytes, \ 0, \ (length)%SnP_laneLengthInBytes); \ } \ else { \ unsigned int _sizeLeft = (length); \ unsigned int _lanePosition = (offset)/SnP_laneLengthInBytes; \ unsigned int _offsetInLane = (offset)%SnP_laneLengthInBytes; \ const unsigned char *_curData = (data); \ while(_sizeLeft > 0) { \ unsigned int _bytesInLane = SnP_laneLengthInBytes - _offsetInLane; \ if (_bytesInLane > _sizeLeft) \ _bytesInLane = _sizeLeft; \ SnP_OverwriteBytesInLane(state, _lanePosition, _curData, _offsetInLane, _bytesInLane); \ _sizeLeft -= _bytesInLane; \ _lanePosition++; \ _offsetInLane = 0; \ _curData += _bytesInLane; \ } \ } \ } #define SnP_ExtractBytes(state, data, offset, length, SnP_ExtractLanes, SnP_ExtractBytesInLane, SnP_laneLengthInBytes) \ { \ if ((offset) == 0) { \ SnP_ExtractLanes(state, data, (length)/SnP_laneLengthInBytes); \ SnP_ExtractBytesInLane(state, \ (length)/SnP_laneLengthInBytes, \ (data)+((length)/SnP_laneLengthInBytes)*SnP_laneLengthInBytes, \ 0, \ (length)%SnP_laneLengthInBytes); \ } \ else { \ unsigned int _sizeLeft = (length); \ unsigned int _lanePosition = (offset)/SnP_laneLengthInBytes; \ unsigned int _offsetInLane = (offset)%SnP_laneLengthInBytes; \ unsigned char *_curData = (data); \ while(_sizeLeft > 0) { \ unsigned int _bytesInLane = SnP_laneLengthInBytes - _offsetInLane; \ if (_bytesInLane > _sizeLeft) \ _bytesInLane = _sizeLeft; \ SnP_ExtractBytesInLane(state, _lanePosition, _curData, _offsetInLane, _bytesInLane); \ _sizeLeft -= _bytesInLane; \ _lanePosition++; \ _offsetInLane = 0; \ _curData += _bytesInLane; \ } \ } \ } #define SnP_ExtractAndAddBytes(state, input, output, offset, length, SnP_ExtractAndAddLanes, SnP_ExtractAndAddBytesInLane, SnP_laneLengthInBytes) \ { \ if ((offset) == 0) { \ SnP_ExtractAndAddLanes(state, input, output, (length)/SnP_laneLengthInBytes); \ SnP_ExtractAndAddBytesInLane(state, \ (length)/SnP_laneLengthInBytes, \ (input)+((length)/SnP_laneLengthInBytes)*SnP_laneLengthInBytes, \ (output)+((length)/SnP_laneLengthInBytes)*SnP_laneLengthInBytes, \ 0, \ (length)%SnP_laneLengthInBytes); \ } \ else { \ unsigned int _sizeLeft = (length); \ unsigned int _lanePosition = (offset)/SnP_laneLengthInBytes; \ unsigned int _offsetInLane = (offset)%SnP_laneLengthInBytes; \ const unsigned char *_curInput = (input); \ unsigned char *_curOutput = (output); \ while(_sizeLeft > 0) { \ unsigned int _bytesInLane = SnP_laneLengthInBytes - _offsetInLane; \ if (_bytesInLane > _sizeLeft) \ _bytesInLane = _sizeLeft; \ SnP_ExtractAndAddBytesInLane(state, _lanePosition, _curInput, _curOutput, _offsetInLane, _bytesInLane); \ _sizeLeft -= _bytesInLane; \ _lanePosition++; \ _offsetInLane = 0; \ _curInput += _bytesInLane; \ _curOutput += _bytesInLane; \ } \ } \ } #endif pysha3-1.0.2/Modules/_sha3/kcp/KeccakHash.c0000664000175000017500000000630512710473647021023 0ustar heimesheimes00000000000000/* Implementation by the Keccak, Keyak and Ketje Teams, namely, Guido Bertoni, Joan Daemen, Michaël Peeters, Gilles Van Assche and Ronny Van Keer, hereby denoted as "the implementer". For more information, feedback or questions, please refer to our websites: http://keccak.noekeon.org/ http://keyak.noekeon.org/ http://ketje.noekeon.org/ To the extent possible under law, the implementer has waived all copyright and related or neighboring rights to the source code in this file. http://creativecommons.org/publicdomain/zero/1.0/ */ #include #include "KeccakHash.h" /* ---------------------------------------------------------------- */ HashReturn Keccak_HashInitialize(Keccak_HashInstance *instance, unsigned int rate, unsigned int capacity, unsigned int hashbitlen, unsigned char delimitedSuffix) { HashReturn result; if (delimitedSuffix == 0) return FAIL; result = (HashReturn)KeccakWidth1600_SpongeInitialize(&instance->sponge, rate, capacity); if (result != SUCCESS) return result; instance->fixedOutputLength = hashbitlen; instance->delimitedSuffix = delimitedSuffix; return SUCCESS; } /* ---------------------------------------------------------------- */ HashReturn Keccak_HashUpdate(Keccak_HashInstance *instance, const BitSequence *data, DataLength databitlen) { if ((databitlen % 8) == 0) return (HashReturn)KeccakWidth1600_SpongeAbsorb(&instance->sponge, data, databitlen/8); else { HashReturn ret = (HashReturn)KeccakWidth1600_SpongeAbsorb(&instance->sponge, data, databitlen/8); if (ret == SUCCESS) { /* The last partial byte is assumed to be aligned on the least significant bits */ unsigned char lastByte = data[databitlen/8]; /* Concatenate the last few bits provided here with those of the suffix */ unsigned short delimitedLastBytes = (unsigned short)((unsigned short)lastByte | ((unsigned short)instance->delimitedSuffix << (databitlen % 8))); if ((delimitedLastBytes & 0xFF00) == 0x0000) { instance->delimitedSuffix = delimitedLastBytes & 0xFF; } else { unsigned char oneByte[1]; oneByte[0] = delimitedLastBytes & 0xFF; ret = (HashReturn)KeccakWidth1600_SpongeAbsorb(&instance->sponge, oneByte, 1); instance->delimitedSuffix = (delimitedLastBytes >> 8) & 0xFF; } } return ret; } } /* ---------------------------------------------------------------- */ HashReturn Keccak_HashFinal(Keccak_HashInstance *instance, BitSequence *hashval) { HashReturn ret = (HashReturn)KeccakWidth1600_SpongeAbsorbLastFewBits(&instance->sponge, instance->delimitedSuffix); if (ret == SUCCESS) return (HashReturn)KeccakWidth1600_SpongeSqueeze(&instance->sponge, hashval, instance->fixedOutputLength/8); else return ret; } /* ---------------------------------------------------------------- */ HashReturn Keccak_HashSqueeze(Keccak_HashInstance *instance, BitSequence *data, DataLength databitlen) { if ((databitlen % 8) != 0) return FAIL; return (HashReturn)KeccakWidth1600_SpongeSqueeze(&instance->sponge, data, databitlen/8); } pysha3-1.0.2/Modules/_sha3/kcp/brg_endian.h0000664000175000017500000001265212706446172021133 0ustar heimesheimes00000000000000/* --------------------------------------------------------------------------- Copyright (c) 1998-2008, Brian Gladman, Worcester, UK. All rights reserved. LICENSE TERMS The redistribution and use of this software (with or without changes) is allowed without the payment of fees or royalties provided that: 1. source code distributions include the above copyright notice, this list of conditions and the following disclaimer; 2. binary distributions include the above copyright notice, this list of conditions and the following disclaimer in their documentation; 3. the name of the copyright holder is not used to endorse products built using this software without specific written permission. DISCLAIMER This software is provided 'as is' with no explicit or implied warranties in respect of its properties, including, but not limited to, correctness and/or fitness for purpose. --------------------------------------------------------------------------- Issue Date: 20/12/2007 Changes for ARM 9/9/2010 */ #ifndef _BRG_ENDIAN_H #define _BRG_ENDIAN_H #define IS_BIG_ENDIAN 4321 /* byte 0 is most significant (mc68k) */ #define IS_LITTLE_ENDIAN 1234 /* byte 0 is least significant (i386) */ #if 0 /* Include files where endian defines and byteswap functions may reside */ #if defined( __sun ) # include #elif defined( __FreeBSD__ ) || defined( __OpenBSD__ ) || defined( __NetBSD__ ) # include #elif defined( BSD ) && ( BSD >= 199103 ) || defined( __APPLE__ ) || \ defined( __CYGWIN32__ ) || defined( __DJGPP__ ) || defined( __osf__ ) # include #elif defined( __linux__ ) || defined( __GNUC__ ) || defined( __GNU_LIBRARY__ ) # if !defined( __MINGW32__ ) && !defined( _AIX ) # include # if !defined( __BEOS__ ) # include # endif # endif #endif #endif /* Now attempt to set the define for platform byte order using any */ /* of the four forms SYMBOL, _SYMBOL, __SYMBOL & __SYMBOL__, which */ /* seem to encompass most endian symbol definitions */ #if defined( BIG_ENDIAN ) && defined( LITTLE_ENDIAN ) # if defined( BYTE_ORDER ) && BYTE_ORDER == BIG_ENDIAN # define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN # elif defined( BYTE_ORDER ) && BYTE_ORDER == LITTLE_ENDIAN # define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN # endif #elif defined( BIG_ENDIAN ) # define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN #elif defined( LITTLE_ENDIAN ) # define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN #endif #if defined( _BIG_ENDIAN ) && defined( _LITTLE_ENDIAN ) # if defined( _BYTE_ORDER ) && _BYTE_ORDER == _BIG_ENDIAN # define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN # elif defined( _BYTE_ORDER ) && _BYTE_ORDER == _LITTLE_ENDIAN # define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN # endif #elif defined( _BIG_ENDIAN ) # define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN #elif defined( _LITTLE_ENDIAN ) # define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN #endif #if defined( __BIG_ENDIAN ) && defined( __LITTLE_ENDIAN ) # if defined( __BYTE_ORDER ) && __BYTE_ORDER == __BIG_ENDIAN # define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN # elif defined( __BYTE_ORDER ) && __BYTE_ORDER == __LITTLE_ENDIAN # define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN # endif #elif defined( __BIG_ENDIAN ) # define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN #elif defined( __LITTLE_ENDIAN ) # define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN #endif #if defined( __BIG_ENDIAN__ ) && defined( __LITTLE_ENDIAN__ ) # if defined( __BYTE_ORDER__ ) && __BYTE_ORDER__ == __BIG_ENDIAN__ # define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN # elif defined( __BYTE_ORDER__ ) && __BYTE_ORDER__ == __LITTLE_ENDIAN__ # define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN # endif #elif defined( __BIG_ENDIAN__ ) # define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN #elif defined( __LITTLE_ENDIAN__ ) # define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN #endif /* if the platform byte order could not be determined, then try to */ /* set this define using common machine defines */ #if !defined(PLATFORM_BYTE_ORDER) #if defined( __alpha__ ) || defined( __alpha ) || defined( i386 ) || \ defined( __i386__ ) || defined( _M_I86 ) || defined( _M_IX86 ) || \ defined( __OS2__ ) || defined( sun386 ) || defined( __TURBOC__ ) || \ defined( vax ) || defined( vms ) || defined( VMS ) || \ defined( __VMS ) || defined( _M_X64 ) # define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN #elif defined( AMIGA ) || defined( applec ) || defined( __AS400__ ) || \ defined( _CRAY ) || defined( __hppa ) || defined( __hp9000 ) || \ defined( ibm370 ) || defined( mc68000 ) || defined( m68k ) || \ defined( __MRC__ ) || defined( __MVS__ ) || defined( __MWERKS__ ) || \ defined( sparc ) || defined( __sparc) || defined( SYMANTEC_C ) || \ defined( __VOS__ ) || defined( __TIGCC__ ) || defined( __TANDEM ) || \ defined( THINK_C ) || defined( __VMCMS__ ) || defined( _AIX ) # define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN #elif defined(__arm__) # ifdef __BIG_ENDIAN # define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN # else # define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN # endif #elif 1 /* **** EDIT HERE IF NECESSARY **** */ # define PLATFORM_BYTE_ORDER IS_LITTLE_ENDIAN #elif 0 /* **** EDIT HERE IF NECESSARY **** */ # define PLATFORM_BYTE_ORDER IS_BIG_ENDIAN #else # error Please edit lines 132 or 134 in brg_endian.h to set the platform byte order #endif #endif #endif pysha3-1.0.2/Modules/_sha3/kcp/KeccakP-1600-opt64-config.h0000664000175000017500000000023712710457014023131 0ustar heimesheimes00000000000000#define KeccakP1600_implementation_config "lane complementing, all rounds unrolled" #define KeccakP1600_fullUnrolling #define KeccakP1600_useLaneComplementing pysha3-1.0.2/Modules/_sha3/kcp/KeccakSponge.h0000664000175000017500000002144012710457014021363 0ustar heimesheimes00000000000000/* Implementation by the Keccak, Keyak and Ketje Teams, namely, Guido Bertoni, Joan Daemen, Michaël Peeters, Gilles Van Assche and Ronny Van Keer, hereby denoted as "the implementer". For more information, feedback or questions, please refer to our websites: http://keccak.noekeon.org/ http://keyak.noekeon.org/ http://ketje.noekeon.org/ To the extent possible under law, the implementer has waived all copyright and related or neighboring rights to the source code in this file. http://creativecommons.org/publicdomain/zero/1.0/ */ #ifndef _KeccakSponge_h_ #define _KeccakSponge_h_ /** General information * * The following type and functions are not actually implemented. Their * documentation is generic, with the prefix Prefix replaced by * - KeccakWidth200 for a sponge function based on Keccak-f[200] * - KeccakWidth400 for a sponge function based on Keccak-f[400] * - KeccakWidth800 for a sponge function based on Keccak-f[800] * - KeccakWidth1600 for a sponge function based on Keccak-f[1600] * * In all these functions, the rate and capacity must sum to the width of the * chosen permutation. For instance, to use the sponge function * Keccak[r=1344, c=256], one must use KeccakWidth1600_Sponge() or a combination * of KeccakWidth1600_SpongeInitialize(), KeccakWidth1600_SpongeAbsorb(), * KeccakWidth1600_SpongeAbsorbLastFewBits() and * KeccakWidth1600_SpongeSqueeze(). * * The Prefix_SpongeInstance contains the sponge instance attributes for use * with the Prefix_Sponge* functions. * It gathers the state processed by the permutation as well as the rate, * the position of input/output bytes in the state and the phase * (absorbing or squeezing). */ #ifdef DontReallyInclude_DocumentationOnly /** Function to evaluate the sponge function Keccak[r, c] in a single call. * @param rate The value of the rate r. * @param capacity The value of the capacity c. * @param input Pointer to the input message (before the suffix). * @param inputByteLen The length of the input message in bytes. * @param suffix Byte containing from 0 to 7 suffix bits * that must be absorbed after @a input. * These n bits must be in the least significant bit positions. * These bits must be delimited with a bit 1 at position n * (counting from 0=LSB to 7=MSB) and followed by bits 0 * from position n+1 to position 7. * Some examples: * - If no bits are to be absorbed, then @a suffix must be 0x01. * - If the 2-bit sequence 0,0 is to be absorbed, @a suffix must be 0x04. * - If the 5-bit sequence 0,1,0,0,1 is to be absorbed, @a suffix must be 0x32. * - If the 7-bit sequence 1,1,0,1,0,0,0 is to be absorbed, @a suffix must be 0x8B. * . * @param output Pointer to the output buffer. * @param outputByteLen The desired number of output bytes. * @pre One must have r+c equal to the supported width of this implementation * and the rate a multiple of 8 bits (one byte) in this implementation. * @pre @a suffix ≠ 0x00 * @return Zero if successful, 1 otherwise. */ int Prefix_Sponge(unsigned int rate, unsigned int capacity, const unsigned char *input, size_t inputByteLen, unsigned char suffix, unsigned char *output, size_t outputByteLen); /** * Function to initialize the state of the Keccak[r, c] sponge function. * The phase of the sponge function is set to absorbing. * @param spongeInstance Pointer to the sponge instance to be initialized. * @param rate The value of the rate r. * @param capacity The value of the capacity c. * @pre One must have r+c equal to the supported width of this implementation * and the rate a multiple of 8 bits (one byte) in this implementation. * @return Zero if successful, 1 otherwise. */ int Prefix_SpongeInitialize(Prefix_SpongeInstance *spongeInstance, unsigned int rate, unsigned int capacity); /** * Function to give input data bytes for the sponge function to absorb. * @param spongeInstance Pointer to the sponge instance initialized by Prefix_SpongeInitialize(). * @param data Pointer to the input data. * @param dataByteLen The number of input bytes provided in the input data. * @pre The sponge function must be in the absorbing phase, * i.e., Prefix_SpongeSqueeze() or Prefix_SpongeAbsorbLastFewBits() * must not have been called before. * @return Zero if successful, 1 otherwise. */ int Prefix_SpongeAbsorb(Prefix_SpongeInstance *spongeInstance, const unsigned char *data, size_t dataByteLen); /** * Function to give input data bits for the sponge function to absorb * and then to switch to the squeezing phase. * @param spongeInstance Pointer to the sponge instance initialized by Prefix_SpongeInitialize(). * @param delimitedData Byte containing from 0 to 7 trailing bits * that must be absorbed. * These n bits must be in the least significant bit positions. * These bits must be delimited with a bit 1 at position n * (counting from 0=LSB to 7=MSB) and followed by bits 0 * from position n+1 to position 7. * Some examples: * - If no bits are to be absorbed, then @a delimitedData must be 0x01. * - If the 2-bit sequence 0,0 is to be absorbed, @a delimitedData must be 0x04. * - If the 5-bit sequence 0,1,0,0,1 is to be absorbed, @a delimitedData must be 0x32. * - If the 7-bit sequence 1,1,0,1,0,0,0 is to be absorbed, @a delimitedData must be 0x8B. * . * @pre The sponge function must be in the absorbing phase, * i.e., Prefix_SpongeSqueeze() or Prefix_SpongeAbsorbLastFewBits() * must not have been called before. * @pre @a delimitedData ≠ 0x00 * @return Zero if successful, 1 otherwise. */ int Prefix_SpongeAbsorbLastFewBits(Prefix_SpongeInstance *spongeInstance, unsigned char delimitedData); /** * Function to squeeze output data from the sponge function. * If the sponge function was in the absorbing phase, this function * switches it to the squeezing phase * as if Prefix_SpongeAbsorbLastFewBits(spongeInstance, 0x01) was called. * @param spongeInstance Pointer to the sponge instance initialized by Prefix_SpongeInitialize(). * @param data Pointer to the buffer where to store the output data. * @param dataByteLen The number of output bytes desired. * @return Zero if successful, 1 otherwise. */ int Prefix_SpongeSqueeze(Prefix_SpongeInstance *spongeInstance, unsigned char *data, size_t dataByteLen); #endif #include #include "align.h" #define KCP_DeclareSpongeStructure(prefix, size, alignment) \ ALIGN(alignment) typedef struct prefix##_SpongeInstanceStruct { \ unsigned char state[size]; \ unsigned int rate; \ unsigned int byteIOIndex; \ int squeezing; \ } prefix##_SpongeInstance; #define KCP_DeclareSpongeFunctions(prefix) \ int prefix##_Sponge(unsigned int rate, unsigned int capacity, const unsigned char *input, size_t inputByteLen, unsigned char suffix, unsigned char *output, size_t outputByteLen); \ int prefix##_SpongeInitialize(prefix##_SpongeInstance *spongeInstance, unsigned int rate, unsigned int capacity); \ int prefix##_SpongeAbsorb(prefix##_SpongeInstance *spongeInstance, const unsigned char *data, size_t dataByteLen); \ int prefix##_SpongeAbsorbLastFewBits(prefix##_SpongeInstance *spongeInstance, unsigned char delimitedData); \ int prefix##_SpongeSqueeze(prefix##_SpongeInstance *spongeInstance, unsigned char *data, size_t dataByteLen); #ifndef KeccakP200_excluded #include "KeccakP-200-SnP.h" KCP_DeclareSpongeStructure(KeccakWidth200, KeccakP200_stateSizeInBytes, KeccakP200_stateAlignment) KCP_DeclareSpongeFunctions(KeccakWidth200) #endif #ifndef KeccakP400_excluded #include "KeccakP-400-SnP.h" KCP_DeclareSpongeStructure(KeccakWidth400, KeccakP400_stateSizeInBytes, KeccakP400_stateAlignment) KCP_DeclareSpongeFunctions(KeccakWidth400) #endif #ifndef KeccakP800_excluded #include "KeccakP-800-SnP.h" KCP_DeclareSpongeStructure(KeccakWidth800, KeccakP800_stateSizeInBytes, KeccakP800_stateAlignment) KCP_DeclareSpongeFunctions(KeccakWidth800) #endif #ifndef KeccakP1600_excluded #include "KeccakP-1600-SnP.h" KCP_DeclareSpongeStructure(KeccakWidth1600, KeccakP1600_stateSizeInBytes, KeccakP1600_stateAlignment) KCP_DeclareSpongeFunctions(KeccakWidth1600) #endif #endif pysha3-1.0.2/Modules/_sha3/kcp/KeccakP-1600-inplace32BI.c0000664000175000017500000012100312711150314022665 0ustar heimesheimes00000000000000/* Implementation by the Keccak, Keyak and Ketje Teams, namely, Guido Bertoni, Joan Daemen, Michaël Peeters, Gilles Van Assche and Ronny Van Keer, hereby denoted as "the implementer". For more information, feedback or questions, please refer to our websites: http://keccak.noekeon.org/ http://keyak.noekeon.org/ http://ketje.noekeon.org/ To the extent possible under law, the implementer has waived all copyright and related or neighboring rights to the source code in this file. http://creativecommons.org/publicdomain/zero/1.0/ */ #include #include "brg_endian.h" #include "KeccakP-1600-SnP.h" #include "SnP-Relaned.h" typedef unsigned char UINT8; typedef unsigned int UINT32; /* WARNING: on 8-bit and 16-bit platforms, this should be replaced by: */ /*typedef unsigned long UINT32; */ #define ROL32(a, offset) ((((UINT32)a) << (offset)) ^ (((UINT32)a) >> (32-(offset)))) /* Credit to Henry S. Warren, Hacker's Delight, Addison-Wesley, 2002 */ #define prepareToBitInterleaving(low, high, temp, temp0, temp1) \ temp0 = (low); \ temp = (temp0 ^ (temp0 >> 1)) & 0x22222222UL; temp0 = temp0 ^ temp ^ (temp << 1); \ temp = (temp0 ^ (temp0 >> 2)) & 0x0C0C0C0CUL; temp0 = temp0 ^ temp ^ (temp << 2); \ temp = (temp0 ^ (temp0 >> 4)) & 0x00F000F0UL; temp0 = temp0 ^ temp ^ (temp << 4); \ temp = (temp0 ^ (temp0 >> 8)) & 0x0000FF00UL; temp0 = temp0 ^ temp ^ (temp << 8); \ temp1 = (high); \ temp = (temp1 ^ (temp1 >> 1)) & 0x22222222UL; temp1 = temp1 ^ temp ^ (temp << 1); \ temp = (temp1 ^ (temp1 >> 2)) & 0x0C0C0C0CUL; temp1 = temp1 ^ temp ^ (temp << 2); \ temp = (temp1 ^ (temp1 >> 4)) & 0x00F000F0UL; temp1 = temp1 ^ temp ^ (temp << 4); \ temp = (temp1 ^ (temp1 >> 8)) & 0x0000FF00UL; temp1 = temp1 ^ temp ^ (temp << 8); #define toBitInterleavingAndXOR(low, high, even, odd, temp, temp0, temp1) \ prepareToBitInterleaving(low, high, temp, temp0, temp1) \ even ^= (temp0 & 0x0000FFFF) | (temp1 << 16); \ odd ^= (temp0 >> 16) | (temp1 & 0xFFFF0000); #define toBitInterleavingAndAND(low, high, even, odd, temp, temp0, temp1) \ prepareToBitInterleaving(low, high, temp, temp0, temp1) \ even &= (temp0 & 0x0000FFFF) | (temp1 << 16); \ odd &= (temp0 >> 16) | (temp1 & 0xFFFF0000); #define toBitInterleavingAndSet(low, high, even, odd, temp, temp0, temp1) \ prepareToBitInterleaving(low, high, temp, temp0, temp1) \ even = (temp0 & 0x0000FFFF) | (temp1 << 16); \ odd = (temp0 >> 16) | (temp1 & 0xFFFF0000); /* Credit to Henry S. Warren, Hacker's Delight, Addison-Wesley, 2002 */ #define prepareFromBitInterleaving(even, odd, temp, temp0, temp1) \ temp0 = (even); \ temp1 = (odd); \ temp = (temp0 & 0x0000FFFF) | (temp1 << 16); \ temp1 = (temp0 >> 16) | (temp1 & 0xFFFF0000); \ temp0 = temp; \ temp = (temp0 ^ (temp0 >> 8)) & 0x0000FF00UL; temp0 = temp0 ^ temp ^ (temp << 8); \ temp = (temp0 ^ (temp0 >> 4)) & 0x00F000F0UL; temp0 = temp0 ^ temp ^ (temp << 4); \ temp = (temp0 ^ (temp0 >> 2)) & 0x0C0C0C0CUL; temp0 = temp0 ^ temp ^ (temp << 2); \ temp = (temp0 ^ (temp0 >> 1)) & 0x22222222UL; temp0 = temp0 ^ temp ^ (temp << 1); \ temp = (temp1 ^ (temp1 >> 8)) & 0x0000FF00UL; temp1 = temp1 ^ temp ^ (temp << 8); \ temp = (temp1 ^ (temp1 >> 4)) & 0x00F000F0UL; temp1 = temp1 ^ temp ^ (temp << 4); \ temp = (temp1 ^ (temp1 >> 2)) & 0x0C0C0C0CUL; temp1 = temp1 ^ temp ^ (temp << 2); \ temp = (temp1 ^ (temp1 >> 1)) & 0x22222222UL; temp1 = temp1 ^ temp ^ (temp << 1); #define fromBitInterleaving(even, odd, low, high, temp, temp0, temp1) \ prepareFromBitInterleaving(even, odd, temp, temp0, temp1) \ low = temp0; \ high = temp1; #define fromBitInterleavingAndXOR(even, odd, lowIn, highIn, lowOut, highOut, temp, temp0, temp1) \ prepareFromBitInterleaving(even, odd, temp, temp0, temp1) \ lowOut = lowIn ^ temp0; \ highOut = highIn ^ temp1; void KeccakP1600_SetBytesInLaneToZero(void *state, unsigned int lanePosition, unsigned int offset, unsigned int length) { UINT8 laneAsBytes[8]; UINT32 low, high; UINT32 temp, temp0, temp1; UINT32 *stateAsHalfLanes = (UINT32*)state; memset(laneAsBytes, 0xFF, offset); memset(laneAsBytes+offset, 0x00, length); memset(laneAsBytes+offset+length, 0xFF, 8-offset-length); #if (PLATFORM_BYTE_ORDER == IS_LITTLE_ENDIAN) low = *((UINT32*)(laneAsBytes+0)); high = *((UINT32*)(laneAsBytes+4)); #else low = laneAsBytes[0] | ((UINT32)(laneAsBytes[1]) << 8) | ((UINT32)(laneAsBytes[2]) << 16) | ((UINT32)(laneAsBytes[3]) << 24); high = laneAsBytes[4] | ((UINT32)(laneAsBytes[5]) << 8) | ((UINT32)(laneAsBytes[6]) << 16) | ((UINT32)(laneAsBytes[7]) << 24); #endif toBitInterleavingAndAND(low, high, stateAsHalfLanes[lanePosition*2+0], stateAsHalfLanes[lanePosition*2+1], temp, temp0, temp1); } /* ---------------------------------------------------------------- */ void KeccakP1600_Initialize(void *state) { memset(state, 0, 200); } /* ---------------------------------------------------------------- */ void KeccakP1600_AddByte(void *state, unsigned char byte, unsigned int offset) { unsigned int lanePosition = offset/8; unsigned int offsetInLane = offset%8; UINT32 low, high; UINT32 temp, temp0, temp1; UINT32 *stateAsHalfLanes = (UINT32*)state; if (offsetInLane < 4) { low = (UINT32)byte << (offsetInLane*8); high = 0; } else { low = 0; high = (UINT32)byte << ((offsetInLane-4)*8); } toBitInterleavingAndXOR(low, high, stateAsHalfLanes[lanePosition*2+0], stateAsHalfLanes[lanePosition*2+1], temp, temp0, temp1); } /* ---------------------------------------------------------------- */ void KeccakP1600_AddBytesInLane(void *state, unsigned int lanePosition, const unsigned char *data, unsigned int offset, unsigned int length) { UINT8 laneAsBytes[8]; UINT32 low, high; UINT32 temp, temp0, temp1; UINT32 *stateAsHalfLanes = (UINT32*)state; memset(laneAsBytes, 0, 8); memcpy(laneAsBytes+offset, data, length); #if (PLATFORM_BYTE_ORDER == IS_LITTLE_ENDIAN) low = *((UINT32*)(laneAsBytes+0)); high = *((UINT32*)(laneAsBytes+4)); #else low = laneAsBytes[0] | ((UINT32)(laneAsBytes[1]) << 8) | ((UINT32)(laneAsBytes[2]) << 16) | ((UINT32)(laneAsBytes[3]) << 24); high = laneAsBytes[4] | ((UINT32)(laneAsBytes[5]) << 8) | ((UINT32)(laneAsBytes[6]) << 16) | ((UINT32)(laneAsBytes[7]) << 24); #endif toBitInterleavingAndXOR(low, high, stateAsHalfLanes[lanePosition*2+0], stateAsHalfLanes[lanePosition*2+1], temp, temp0, temp1); } /* ---------------------------------------------------------------- */ void KeccakP1600_AddLanes(void *state, const unsigned char *data, unsigned int laneCount) { #if (PLATFORM_BYTE_ORDER == IS_LITTLE_ENDIAN) const UINT32 * pI = (const UINT32 *)data; UINT32 * pS = (UINT32*)state; UINT32 t, x0, x1; int i; for (i = laneCount-1; i >= 0; --i) { #ifdef NO_MISALIGNED_ACCESSES UINT32 low; UINT32 high; memcpy(&low, pI++, 4); memcpy(&high, pI++, 4); toBitInterleavingAndXOR(low, high, *(pS++), *(pS++), t, x0, x1); #else toBitInterleavingAndXOR(*(pI++), *(pI++), *(pS++), *(pS++), t, x0, x1) #endif } #else unsigned int lanePosition; for(lanePosition=0; lanePosition= 0; --i) { #ifdef NO_MISALIGNED_ACCESSES UINT32 low; UINT32 high; memcpy(&low, pI++, 4); memcpy(&high, pI++, 4); toBitInterleavingAndSet(low, high, *(pS++), *(pS++), t, x0, x1); #else toBitInterleavingAndSet(*(pI++), *(pI++), *(pS++), *(pS++), t, x0, x1) #endif } #else unsigned int lanePosition; for(lanePosition=0; lanePosition> 8) & 0xFF; laneAsBytes[2] = (low >> 16) & 0xFF; laneAsBytes[3] = (low >> 24) & 0xFF; laneAsBytes[4] = high & 0xFF; laneAsBytes[5] = (high >> 8) & 0xFF; laneAsBytes[6] = (high >> 16) & 0xFF; laneAsBytes[7] = (high >> 24) & 0xFF; #endif memcpy(data, laneAsBytes+offset, length); } /* ---------------------------------------------------------------- */ void KeccakP1600_ExtractLanes(const void *state, unsigned char *data, unsigned int laneCount) { #if (PLATFORM_BYTE_ORDER == IS_LITTLE_ENDIAN) UINT32 * pI = (UINT32 *)data; const UINT32 * pS = ( const UINT32 *)state; UINT32 t, x0, x1; int i; for (i = laneCount-1; i >= 0; --i) { #ifdef NO_MISALIGNED_ACCESSES UINT32 low; UINT32 high; fromBitInterleaving(*(pS++), *(pS++), low, high, t, x0, x1); memcpy(pI++, &low, 4); memcpy(pI++, &high, 4); #else fromBitInterleaving(*(pS++), *(pS++), *(pI++), *(pI++), t, x0, x1) #endif } #else unsigned int lanePosition; for(lanePosition=0; lanePosition> 8) & 0xFF; laneAsBytes[2] = (low >> 16) & 0xFF; laneAsBytes[3] = (low >> 24) & 0xFF; laneAsBytes[4] = high & 0xFF; laneAsBytes[5] = (high >> 8) & 0xFF; laneAsBytes[6] = (high >> 16) & 0xFF; laneAsBytes[7] = (high >> 24) & 0xFF; memcpy(data+lanePosition*8, laneAsBytes, 8); } #endif } /* ---------------------------------------------------------------- */ void KeccakP1600_ExtractBytes(const void *state, unsigned char *data, unsigned int offset, unsigned int length) { SnP_ExtractBytes(state, data, offset, length, KeccakP1600_ExtractLanes, KeccakP1600_ExtractBytesInLane, 8); } /* ---------------------------------------------------------------- */ void KeccakP1600_ExtractAndAddBytesInLane(const void *state, unsigned int lanePosition, const unsigned char *input, unsigned char *output, unsigned int offset, unsigned int length) { UINT32 *stateAsHalfLanes = (UINT32*)state; UINT32 low, high, temp, temp0, temp1; UINT8 laneAsBytes[8]; unsigned int i; fromBitInterleaving(stateAsHalfLanes[lanePosition*2], stateAsHalfLanes[lanePosition*2+1], low, high, temp, temp0, temp1); #if (PLATFORM_BYTE_ORDER == IS_LITTLE_ENDIAN) *((UINT32*)(laneAsBytes+0)) = low; *((UINT32*)(laneAsBytes+4)) = high; #else laneAsBytes[0] = low & 0xFF; laneAsBytes[1] = (low >> 8) & 0xFF; laneAsBytes[2] = (low >> 16) & 0xFF; laneAsBytes[3] = (low >> 24) & 0xFF; laneAsBytes[4] = high & 0xFF; laneAsBytes[5] = (high >> 8) & 0xFF; laneAsBytes[6] = (high >> 16) & 0xFF; laneAsBytes[7] = (high >> 24) & 0xFF; #endif for(i=0; i= 0; --i) { #ifdef NO_MISALIGNED_ACCESSES UINT32 low; UINT32 high; fromBitInterleaving(*(pS++), *(pS++), low, high, t, x0, x1); *(pO++) = *(pI++) ^ low; *(pO++) = *(pI++) ^ high; #else fromBitInterleavingAndXOR(*(pS++), *(pS++), *(pI++), *(pI++), *(pO++), *(pO++), t, x0, x1) #endif } #else unsigned int lanePosition; for(lanePosition=0; lanePosition> 8) & 0xFF; laneAsBytes[2] = (low >> 16) & 0xFF; laneAsBytes[3] = (low >> 24) & 0xFF; laneAsBytes[4] = high & 0xFF; laneAsBytes[5] = (high >> 8) & 0xFF; laneAsBytes[6] = (high >> 16) & 0xFF; laneAsBytes[7] = (high >> 24) & 0xFF; ((UINT32*)(output+lanePosition*8))[0] = ((UINT32*)(input+lanePosition*8))[0] ^ (*(const UINT32*)(laneAsBytes+0)); ((UINT32*)(output+lanePosition*8))[1] = ((UINT32*)(input+lanePosition*8))[0] ^ (*(const UINT32*)(laneAsBytes+4)); } #endif } /* ---------------------------------------------------------------- */ void KeccakP1600_ExtractAndAddBytes(const void *state, const unsigned char *input, unsigned char *output, unsigned int offset, unsigned int length) { SnP_ExtractAndAddBytes(state, input, output, offset, length, KeccakP1600_ExtractAndAddLanes, KeccakP1600_ExtractAndAddBytesInLane, 8); } /* ---------------------------------------------------------------- */ static const UINT32 KeccakF1600RoundConstants_int2[2*24+1] = { 0x00000001UL, 0x00000000UL, 0x00000000UL, 0x00000089UL, 0x00000000UL, 0x8000008bUL, 0x00000000UL, 0x80008080UL, 0x00000001UL, 0x0000008bUL, 0x00000001UL, 0x00008000UL, 0x00000001UL, 0x80008088UL, 0x00000001UL, 0x80000082UL, 0x00000000UL, 0x0000000bUL, 0x00000000UL, 0x0000000aUL, 0x00000001UL, 0x00008082UL, 0x00000000UL, 0x00008003UL, 0x00000001UL, 0x0000808bUL, 0x00000001UL, 0x8000000bUL, 0x00000001UL, 0x8000008aUL, 0x00000001UL, 0x80000081UL, 0x00000000UL, 0x80000081UL, 0x00000000UL, 0x80000008UL, 0x00000000UL, 0x00000083UL, 0x00000000UL, 0x80008003UL, 0x00000001UL, 0x80008088UL, 0x00000000UL, 0x80000088UL, 0x00000001UL, 0x00008000UL, 0x00000000UL, 0x80008082UL, 0x000000FFUL }; #define KeccakAtoD_round0() \ Cx = Abu0^Agu0^Aku0^Amu0^Asu0; \ Du1 = Abe1^Age1^Ake1^Ame1^Ase1; \ Da0 = Cx^ROL32(Du1, 1); \ Cz = Abu1^Agu1^Aku1^Amu1^Asu1; \ Du0 = Abe0^Age0^Ake0^Ame0^Ase0; \ Da1 = Cz^Du0; \ \ Cw = Abi0^Agi0^Aki0^Ami0^Asi0; \ Do0 = Cw^ROL32(Cz, 1); \ Cy = Abi1^Agi1^Aki1^Ami1^Asi1; \ Do1 = Cy^Cx; \ \ Cx = Aba0^Aga0^Aka0^Ama0^Asa0; \ De0 = Cx^ROL32(Cy, 1); \ Cz = Aba1^Aga1^Aka1^Ama1^Asa1; \ De1 = Cz^Cw; \ \ Cy = Abo1^Ago1^Ako1^Amo1^Aso1; \ Di0 = Du0^ROL32(Cy, 1); \ Cw = Abo0^Ago0^Ako0^Amo0^Aso0; \ Di1 = Du1^Cw; \ \ Du0 = Cw^ROL32(Cz, 1); \ Du1 = Cy^Cx; \ #define KeccakAtoD_round1() \ Cx = Asu0^Agu0^Amu0^Abu1^Aku1; \ Du1 = Age1^Ame0^Abe0^Ake1^Ase1; \ Da0 = Cx^ROL32(Du1, 1); \ Cz = Asu1^Agu1^Amu1^Abu0^Aku0; \ Du0 = Age0^Ame1^Abe1^Ake0^Ase0; \ Da1 = Cz^Du0; \ \ Cw = Aki1^Asi1^Agi0^Ami1^Abi0; \ Do0 = Cw^ROL32(Cz, 1); \ Cy = Aki0^Asi0^Agi1^Ami0^Abi1; \ Do1 = Cy^Cx; \ \ Cx = Aba0^Aka1^Asa0^Aga0^Ama1; \ De0 = Cx^ROL32(Cy, 1); \ Cz = Aba1^Aka0^Asa1^Aga1^Ama0; \ De1 = Cz^Cw; \ \ Cy = Amo0^Abo1^Ako0^Aso1^Ago0; \ Di0 = Du0^ROL32(Cy, 1); \ Cw = Amo1^Abo0^Ako1^Aso0^Ago1; \ Di1 = Du1^Cw; \ \ Du0 = Cw^ROL32(Cz, 1); \ Du1 = Cy^Cx; \ #define KeccakAtoD_round2() \ Cx = Aku1^Agu0^Abu1^Asu1^Amu1; \ Du1 = Ame0^Ake0^Age0^Abe0^Ase1; \ Da0 = Cx^ROL32(Du1, 1); \ Cz = Aku0^Agu1^Abu0^Asu0^Amu0; \ Du0 = Ame1^Ake1^Age1^Abe1^Ase0; \ Da1 = Cz^Du0; \ \ Cw = Agi1^Abi1^Asi1^Ami0^Aki1; \ Do0 = Cw^ROL32(Cz, 1); \ Cy = Agi0^Abi0^Asi0^Ami1^Aki0; \ Do1 = Cy^Cx; \ \ Cx = Aba0^Asa1^Ama1^Aka1^Aga1; \ De0 = Cx^ROL32(Cy, 1); \ Cz = Aba1^Asa0^Ama0^Aka0^Aga0; \ De1 = Cz^Cw; \ \ Cy = Aso0^Amo0^Ako1^Ago0^Abo0; \ Di0 = Du0^ROL32(Cy, 1); \ Cw = Aso1^Amo1^Ako0^Ago1^Abo1; \ Di1 = Du1^Cw; \ \ Du0 = Cw^ROL32(Cz, 1); \ Du1 = Cy^Cx; \ #define KeccakAtoD_round3() \ Cx = Amu1^Agu0^Asu1^Aku0^Abu0; \ Du1 = Ake0^Abe1^Ame1^Age0^Ase1; \ Da0 = Cx^ROL32(Du1, 1); \ Cz = Amu0^Agu1^Asu0^Aku1^Abu1; \ Du0 = Ake1^Abe0^Ame0^Age1^Ase0; \ Da1 = Cz^Du0; \ \ Cw = Asi0^Aki0^Abi1^Ami1^Agi1; \ Do0 = Cw^ROL32(Cz, 1); \ Cy = Asi1^Aki1^Abi0^Ami0^Agi0; \ Do1 = Cy^Cx; \ \ Cx = Aba0^Ama0^Aga1^Asa1^Aka0; \ De0 = Cx^ROL32(Cy, 1); \ Cz = Aba1^Ama1^Aga0^Asa0^Aka1; \ De1 = Cz^Cw; \ \ Cy = Ago1^Aso0^Ako0^Abo0^Amo1; \ Di0 = Du0^ROL32(Cy, 1); \ Cw = Ago0^Aso1^Ako1^Abo1^Amo0; \ Di1 = Du1^Cw; \ \ Du0 = Cw^ROL32(Cz, 1); \ Du1 = Cy^Cx; \ void KeccakP1600_Permute_Nrounds(void *state, unsigned int nRounds) { { UINT32 Da0, De0, Di0, Do0, Du0; UINT32 Da1, De1, Di1, Do1, Du1; UINT32 Ca0, Ce0, Ci0, Co0, Cu0; UINT32 Cx, Cy, Cz, Cw; #define Ba Ca0 #define Be Ce0 #define Bi Ci0 #define Bo Co0 #define Bu Cu0 const UINT32 *pRoundConstants = KeccakF1600RoundConstants_int2+(24-nRounds)*2; UINT32 *stateAsHalfLanes = (UINT32*)state; #define Aba0 stateAsHalfLanes[ 0] #define Aba1 stateAsHalfLanes[ 1] #define Abe0 stateAsHalfLanes[ 2] #define Abe1 stateAsHalfLanes[ 3] #define Abi0 stateAsHalfLanes[ 4] #define Abi1 stateAsHalfLanes[ 5] #define Abo0 stateAsHalfLanes[ 6] #define Abo1 stateAsHalfLanes[ 7] #define Abu0 stateAsHalfLanes[ 8] #define Abu1 stateAsHalfLanes[ 9] #define Aga0 stateAsHalfLanes[10] #define Aga1 stateAsHalfLanes[11] #define Age0 stateAsHalfLanes[12] #define Age1 stateAsHalfLanes[13] #define Agi0 stateAsHalfLanes[14] #define Agi1 stateAsHalfLanes[15] #define Ago0 stateAsHalfLanes[16] #define Ago1 stateAsHalfLanes[17] #define Agu0 stateAsHalfLanes[18] #define Agu1 stateAsHalfLanes[19] #define Aka0 stateAsHalfLanes[20] #define Aka1 stateAsHalfLanes[21] #define Ake0 stateAsHalfLanes[22] #define Ake1 stateAsHalfLanes[23] #define Aki0 stateAsHalfLanes[24] #define Aki1 stateAsHalfLanes[25] #define Ako0 stateAsHalfLanes[26] #define Ako1 stateAsHalfLanes[27] #define Aku0 stateAsHalfLanes[28] #define Aku1 stateAsHalfLanes[29] #define Ama0 stateAsHalfLanes[30] #define Ama1 stateAsHalfLanes[31] #define Ame0 stateAsHalfLanes[32] #define Ame1 stateAsHalfLanes[33] #define Ami0 stateAsHalfLanes[34] #define Ami1 stateAsHalfLanes[35] #define Amo0 stateAsHalfLanes[36] #define Amo1 stateAsHalfLanes[37] #define Amu0 stateAsHalfLanes[38] #define Amu1 stateAsHalfLanes[39] #define Asa0 stateAsHalfLanes[40] #define Asa1 stateAsHalfLanes[41] #define Ase0 stateAsHalfLanes[42] #define Ase1 stateAsHalfLanes[43] #define Asi0 stateAsHalfLanes[44] #define Asi1 stateAsHalfLanes[45] #define Aso0 stateAsHalfLanes[46] #define Aso1 stateAsHalfLanes[47] #define Asu0 stateAsHalfLanes[48] #define Asu1 stateAsHalfLanes[49] do { /* --- Code for 4 rounds */ /* --- using factor 2 interleaving, 64-bit lanes mapped to 32-bit words */ KeccakAtoD_round0(); Ba = (Aba0^Da0); Be = ROL32((Age0^De0), 22); Bi = ROL32((Aki1^Di1), 22); Bo = ROL32((Amo1^Do1), 11); Bu = ROL32((Asu0^Du0), 7); Aba0 = Ba ^((~Be)& Bi ); Aba0 ^= *(pRoundConstants++); Age0 = Be ^((~Bi)& Bo ); Aki1 = Bi ^((~Bo)& Bu ); Amo1 = Bo ^((~Bu)& Ba ); Asu0 = Bu ^((~Ba)& Be ); Ba = (Aba1^Da1); Be = ROL32((Age1^De1), 22); Bi = ROL32((Aki0^Di0), 21); Bo = ROL32((Amo0^Do0), 10); Bu = ROL32((Asu1^Du1), 7); Aba1 = Ba ^((~Be)& Bi ); Aba1 ^= *(pRoundConstants++); Age1 = Be ^((~Bi)& Bo ); Aki0 = Bi ^((~Bo)& Bu ); Amo0 = Bo ^((~Bu)& Ba ); Asu1 = Bu ^((~Ba)& Be ); Bi = ROL32((Aka1^Da1), 2); Bo = ROL32((Ame1^De1), 23); Bu = ROL32((Asi1^Di1), 31); Ba = ROL32((Abo0^Do0), 14); Be = ROL32((Agu0^Du0), 10); Aka1 = Ba ^((~Be)& Bi ); Ame1 = Be ^((~Bi)& Bo ); Asi1 = Bi ^((~Bo)& Bu ); Abo0 = Bo ^((~Bu)& Ba ); Agu0 = Bu ^((~Ba)& Be ); Bi = ROL32((Aka0^Da0), 1); Bo = ROL32((Ame0^De0), 22); Bu = ROL32((Asi0^Di0), 30); Ba = ROL32((Abo1^Do1), 14); Be = ROL32((Agu1^Du1), 10); Aka0 = Ba ^((~Be)& Bi ); Ame0 = Be ^((~Bi)& Bo ); Asi0 = Bi ^((~Bo)& Bu ); Abo1 = Bo ^((~Bu)& Ba ); Agu1 = Bu ^((~Ba)& Be ); Bu = ROL32((Asa0^Da0), 9); Ba = ROL32((Abe1^De1), 1); Be = ROL32((Agi0^Di0), 3); Bi = ROL32((Ako1^Do1), 13); Bo = ROL32((Amu0^Du0), 4); Asa0 = Ba ^((~Be)& Bi ); Abe1 = Be ^((~Bi)& Bo ); Agi0 = Bi ^((~Bo)& Bu ); Ako1 = Bo ^((~Bu)& Ba ); Amu0 = Bu ^((~Ba)& Be ); Bu = ROL32((Asa1^Da1), 9); Ba = (Abe0^De0); Be = ROL32((Agi1^Di1), 3); Bi = ROL32((Ako0^Do0), 12); Bo = ROL32((Amu1^Du1), 4); Asa1 = Ba ^((~Be)& Bi ); Abe0 = Be ^((~Bi)& Bo ); Agi1 = Bi ^((~Bo)& Bu ); Ako0 = Bo ^((~Bu)& Ba ); Amu1 = Bu ^((~Ba)& Be ); Be = ROL32((Aga0^Da0), 18); Bi = ROL32((Ake0^De0), 5); Bo = ROL32((Ami1^Di1), 8); Bu = ROL32((Aso0^Do0), 28); Ba = ROL32((Abu1^Du1), 14); Aga0 = Ba ^((~Be)& Bi ); Ake0 = Be ^((~Bi)& Bo ); Ami1 = Bi ^((~Bo)& Bu ); Aso0 = Bo ^((~Bu)& Ba ); Abu1 = Bu ^((~Ba)& Be ); Be = ROL32((Aga1^Da1), 18); Bi = ROL32((Ake1^De1), 5); Bo = ROL32((Ami0^Di0), 7); Bu = ROL32((Aso1^Do1), 28); Ba = ROL32((Abu0^Du0), 13); Aga1 = Ba ^((~Be)& Bi ); Ake1 = Be ^((~Bi)& Bo ); Ami0 = Bi ^((~Bo)& Bu ); Aso1 = Bo ^((~Bu)& Ba ); Abu0 = Bu ^((~Ba)& Be ); Bo = ROL32((Ama1^Da1), 21); Bu = ROL32((Ase0^De0), 1); Ba = ROL32((Abi0^Di0), 31); Be = ROL32((Ago1^Do1), 28); Bi = ROL32((Aku1^Du1), 20); Ama1 = Ba ^((~Be)& Bi ); Ase0 = Be ^((~Bi)& Bo ); Abi0 = Bi ^((~Bo)& Bu ); Ago1 = Bo ^((~Bu)& Ba ); Aku1 = Bu ^((~Ba)& Be ); Bo = ROL32((Ama0^Da0), 20); Bu = ROL32((Ase1^De1), 1); Ba = ROL32((Abi1^Di1), 31); Be = ROL32((Ago0^Do0), 27); Bi = ROL32((Aku0^Du0), 19); Ama0 = Ba ^((~Be)& Bi ); Ase1 = Be ^((~Bi)& Bo ); Abi1 = Bi ^((~Bo)& Bu ); Ago0 = Bo ^((~Bu)& Ba ); Aku0 = Bu ^((~Ba)& Be ); KeccakAtoD_round1(); Ba = (Aba0^Da0); Be = ROL32((Ame1^De0), 22); Bi = ROL32((Agi1^Di1), 22); Bo = ROL32((Aso1^Do1), 11); Bu = ROL32((Aku1^Du0), 7); Aba0 = Ba ^((~Be)& Bi ); Aba0 ^= *(pRoundConstants++); Ame1 = Be ^((~Bi)& Bo ); Agi1 = Bi ^((~Bo)& Bu ); Aso1 = Bo ^((~Bu)& Ba ); Aku1 = Bu ^((~Ba)& Be ); Ba = (Aba1^Da1); Be = ROL32((Ame0^De1), 22); Bi = ROL32((Agi0^Di0), 21); Bo = ROL32((Aso0^Do0), 10); Bu = ROL32((Aku0^Du1), 7); Aba1 = Ba ^((~Be)& Bi ); Aba1 ^= *(pRoundConstants++); Ame0 = Be ^((~Bi)& Bo ); Agi0 = Bi ^((~Bo)& Bu ); Aso0 = Bo ^((~Bu)& Ba ); Aku0 = Bu ^((~Ba)& Be ); Bi = ROL32((Asa1^Da1), 2); Bo = ROL32((Ake1^De1), 23); Bu = ROL32((Abi1^Di1), 31); Ba = ROL32((Amo1^Do0), 14); Be = ROL32((Agu0^Du0), 10); Asa1 = Ba ^((~Be)& Bi ); Ake1 = Be ^((~Bi)& Bo ); Abi1 = Bi ^((~Bo)& Bu ); Amo1 = Bo ^((~Bu)& Ba ); Agu0 = Bu ^((~Ba)& Be ); Bi = ROL32((Asa0^Da0), 1); Bo = ROL32((Ake0^De0), 22); Bu = ROL32((Abi0^Di0), 30); Ba = ROL32((Amo0^Do1), 14); Be = ROL32((Agu1^Du1), 10); Asa0 = Ba ^((~Be)& Bi ); Ake0 = Be ^((~Bi)& Bo ); Abi0 = Bi ^((~Bo)& Bu ); Amo0 = Bo ^((~Bu)& Ba ); Agu1 = Bu ^((~Ba)& Be ); Bu = ROL32((Ama1^Da0), 9); Ba = ROL32((Age1^De1), 1); Be = ROL32((Asi1^Di0), 3); Bi = ROL32((Ako0^Do1), 13); Bo = ROL32((Abu1^Du0), 4); Ama1 = Ba ^((~Be)& Bi ); Age1 = Be ^((~Bi)& Bo ); Asi1 = Bi ^((~Bo)& Bu ); Ako0 = Bo ^((~Bu)& Ba ); Abu1 = Bu ^((~Ba)& Be ); Bu = ROL32((Ama0^Da1), 9); Ba = (Age0^De0); Be = ROL32((Asi0^Di1), 3); Bi = ROL32((Ako1^Do0), 12); Bo = ROL32((Abu0^Du1), 4); Ama0 = Ba ^((~Be)& Bi ); Age0 = Be ^((~Bi)& Bo ); Asi0 = Bi ^((~Bo)& Bu ); Ako1 = Bo ^((~Bu)& Ba ); Abu0 = Bu ^((~Ba)& Be ); Be = ROL32((Aka1^Da0), 18); Bi = ROL32((Abe1^De0), 5); Bo = ROL32((Ami0^Di1), 8); Bu = ROL32((Ago1^Do0), 28); Ba = ROL32((Asu1^Du1), 14); Aka1 = Ba ^((~Be)& Bi ); Abe1 = Be ^((~Bi)& Bo ); Ami0 = Bi ^((~Bo)& Bu ); Ago1 = Bo ^((~Bu)& Ba ); Asu1 = Bu ^((~Ba)& Be ); Be = ROL32((Aka0^Da1), 18); Bi = ROL32((Abe0^De1), 5); Bo = ROL32((Ami1^Di0), 7); Bu = ROL32((Ago0^Do1), 28); Ba = ROL32((Asu0^Du0), 13); Aka0 = Ba ^((~Be)& Bi ); Abe0 = Be ^((~Bi)& Bo ); Ami1 = Bi ^((~Bo)& Bu ); Ago0 = Bo ^((~Bu)& Ba ); Asu0 = Bu ^((~Ba)& Be ); Bo = ROL32((Aga1^Da1), 21); Bu = ROL32((Ase0^De0), 1); Ba = ROL32((Aki1^Di0), 31); Be = ROL32((Abo1^Do1), 28); Bi = ROL32((Amu1^Du1), 20); Aga1 = Ba ^((~Be)& Bi ); Ase0 = Be ^((~Bi)& Bo ); Aki1 = Bi ^((~Bo)& Bu ); Abo1 = Bo ^((~Bu)& Ba ); Amu1 = Bu ^((~Ba)& Be ); Bo = ROL32((Aga0^Da0), 20); Bu = ROL32((Ase1^De1), 1); Ba = ROL32((Aki0^Di1), 31); Be = ROL32((Abo0^Do0), 27); Bi = ROL32((Amu0^Du0), 19); Aga0 = Ba ^((~Be)& Bi ); Ase1 = Be ^((~Bi)& Bo ); Aki0 = Bi ^((~Bo)& Bu ); Abo0 = Bo ^((~Bu)& Ba ); Amu0 = Bu ^((~Ba)& Be ); KeccakAtoD_round2(); Ba = (Aba0^Da0); Be = ROL32((Ake1^De0), 22); Bi = ROL32((Asi0^Di1), 22); Bo = ROL32((Ago0^Do1), 11); Bu = ROL32((Amu1^Du0), 7); Aba0 = Ba ^((~Be)& Bi ); Aba0 ^= *(pRoundConstants++); Ake1 = Be ^((~Bi)& Bo ); Asi0 = Bi ^((~Bo)& Bu ); Ago0 = Bo ^((~Bu)& Ba ); Amu1 = Bu ^((~Ba)& Be ); Ba = (Aba1^Da1); Be = ROL32((Ake0^De1), 22); Bi = ROL32((Asi1^Di0), 21); Bo = ROL32((Ago1^Do0), 10); Bu = ROL32((Amu0^Du1), 7); Aba1 = Ba ^((~Be)& Bi ); Aba1 ^= *(pRoundConstants++); Ake0 = Be ^((~Bi)& Bo ); Asi1 = Bi ^((~Bo)& Bu ); Ago1 = Bo ^((~Bu)& Ba ); Amu0 = Bu ^((~Ba)& Be ); Bi = ROL32((Ama0^Da1), 2); Bo = ROL32((Abe0^De1), 23); Bu = ROL32((Aki0^Di1), 31); Ba = ROL32((Aso1^Do0), 14); Be = ROL32((Agu0^Du0), 10); Ama0 = Ba ^((~Be)& Bi ); Abe0 = Be ^((~Bi)& Bo ); Aki0 = Bi ^((~Bo)& Bu ); Aso1 = Bo ^((~Bu)& Ba ); Agu0 = Bu ^((~Ba)& Be ); Bi = ROL32((Ama1^Da0), 1); Bo = ROL32((Abe1^De0), 22); Bu = ROL32((Aki1^Di0), 30); Ba = ROL32((Aso0^Do1), 14); Be = ROL32((Agu1^Du1), 10); Ama1 = Ba ^((~Be)& Bi ); Abe1 = Be ^((~Bi)& Bo ); Aki1 = Bi ^((~Bo)& Bu ); Aso0 = Bo ^((~Bu)& Ba ); Agu1 = Bu ^((~Ba)& Be ); Bu = ROL32((Aga1^Da0), 9); Ba = ROL32((Ame0^De1), 1); Be = ROL32((Abi1^Di0), 3); Bi = ROL32((Ako1^Do1), 13); Bo = ROL32((Asu1^Du0), 4); Aga1 = Ba ^((~Be)& Bi ); Ame0 = Be ^((~Bi)& Bo ); Abi1 = Bi ^((~Bo)& Bu ); Ako1 = Bo ^((~Bu)& Ba ); Asu1 = Bu ^((~Ba)& Be ); Bu = ROL32((Aga0^Da1), 9); Ba = (Ame1^De0); Be = ROL32((Abi0^Di1), 3); Bi = ROL32((Ako0^Do0), 12); Bo = ROL32((Asu0^Du1), 4); Aga0 = Ba ^((~Be)& Bi ); Ame1 = Be ^((~Bi)& Bo ); Abi0 = Bi ^((~Bo)& Bu ); Ako0 = Bo ^((~Bu)& Ba ); Asu0 = Bu ^((~Ba)& Be ); Be = ROL32((Asa1^Da0), 18); Bi = ROL32((Age1^De0), 5); Bo = ROL32((Ami1^Di1), 8); Bu = ROL32((Abo1^Do0), 28); Ba = ROL32((Aku0^Du1), 14); Asa1 = Ba ^((~Be)& Bi ); Age1 = Be ^((~Bi)& Bo ); Ami1 = Bi ^((~Bo)& Bu ); Abo1 = Bo ^((~Bu)& Ba ); Aku0 = Bu ^((~Ba)& Be ); Be = ROL32((Asa0^Da1), 18); Bi = ROL32((Age0^De1), 5); Bo = ROL32((Ami0^Di0), 7); Bu = ROL32((Abo0^Do1), 28); Ba = ROL32((Aku1^Du0), 13); Asa0 = Ba ^((~Be)& Bi ); Age0 = Be ^((~Bi)& Bo ); Ami0 = Bi ^((~Bo)& Bu ); Abo0 = Bo ^((~Bu)& Ba ); Aku1 = Bu ^((~Ba)& Be ); Bo = ROL32((Aka0^Da1), 21); Bu = ROL32((Ase0^De0), 1); Ba = ROL32((Agi1^Di0), 31); Be = ROL32((Amo0^Do1), 28); Bi = ROL32((Abu0^Du1), 20); Aka0 = Ba ^((~Be)& Bi ); Ase0 = Be ^((~Bi)& Bo ); Agi1 = Bi ^((~Bo)& Bu ); Amo0 = Bo ^((~Bu)& Ba ); Abu0 = Bu ^((~Ba)& Be ); Bo = ROL32((Aka1^Da0), 20); Bu = ROL32((Ase1^De1), 1); Ba = ROL32((Agi0^Di1), 31); Be = ROL32((Amo1^Do0), 27); Bi = ROL32((Abu1^Du0), 19); Aka1 = Ba ^((~Be)& Bi ); Ase1 = Be ^((~Bi)& Bo ); Agi0 = Bi ^((~Bo)& Bu ); Amo1 = Bo ^((~Bu)& Ba ); Abu1 = Bu ^((~Ba)& Be ); KeccakAtoD_round3(); Ba = (Aba0^Da0); Be = ROL32((Abe0^De0), 22); Bi = ROL32((Abi0^Di1), 22); Bo = ROL32((Abo0^Do1), 11); Bu = ROL32((Abu0^Du0), 7); Aba0 = Ba ^((~Be)& Bi ); Aba0 ^= *(pRoundConstants++); Abe0 = Be ^((~Bi)& Bo ); Abi0 = Bi ^((~Bo)& Bu ); Abo0 = Bo ^((~Bu)& Ba ); Abu0 = Bu ^((~Ba)& Be ); Ba = (Aba1^Da1); Be = ROL32((Abe1^De1), 22); Bi = ROL32((Abi1^Di0), 21); Bo = ROL32((Abo1^Do0), 10); Bu = ROL32((Abu1^Du1), 7); Aba1 = Ba ^((~Be)& Bi ); Aba1 ^= *(pRoundConstants++); Abe1 = Be ^((~Bi)& Bo ); Abi1 = Bi ^((~Bo)& Bu ); Abo1 = Bo ^((~Bu)& Ba ); Abu1 = Bu ^((~Ba)& Be ); Bi = ROL32((Aga0^Da1), 2); Bo = ROL32((Age0^De1), 23); Bu = ROL32((Agi0^Di1), 31); Ba = ROL32((Ago0^Do0), 14); Be = ROL32((Agu0^Du0), 10); Aga0 = Ba ^((~Be)& Bi ); Age0 = Be ^((~Bi)& Bo ); Agi0 = Bi ^((~Bo)& Bu ); Ago0 = Bo ^((~Bu)& Ba ); Agu0 = Bu ^((~Ba)& Be ); Bi = ROL32((Aga1^Da0), 1); Bo = ROL32((Age1^De0), 22); Bu = ROL32((Agi1^Di0), 30); Ba = ROL32((Ago1^Do1), 14); Be = ROL32((Agu1^Du1), 10); Aga1 = Ba ^((~Be)& Bi ); Age1 = Be ^((~Bi)& Bo ); Agi1 = Bi ^((~Bo)& Bu ); Ago1 = Bo ^((~Bu)& Ba ); Agu1 = Bu ^((~Ba)& Be ); Bu = ROL32((Aka0^Da0), 9); Ba = ROL32((Ake0^De1), 1); Be = ROL32((Aki0^Di0), 3); Bi = ROL32((Ako0^Do1), 13); Bo = ROL32((Aku0^Du0), 4); Aka0 = Ba ^((~Be)& Bi ); Ake0 = Be ^((~Bi)& Bo ); Aki0 = Bi ^((~Bo)& Bu ); Ako0 = Bo ^((~Bu)& Ba ); Aku0 = Bu ^((~Ba)& Be ); Bu = ROL32((Aka1^Da1), 9); Ba = (Ake1^De0); Be = ROL32((Aki1^Di1), 3); Bi = ROL32((Ako1^Do0), 12); Bo = ROL32((Aku1^Du1), 4); Aka1 = Ba ^((~Be)& Bi ); Ake1 = Be ^((~Bi)& Bo ); Aki1 = Bi ^((~Bo)& Bu ); Ako1 = Bo ^((~Bu)& Ba ); Aku1 = Bu ^((~Ba)& Be ); Be = ROL32((Ama0^Da0), 18); Bi = ROL32((Ame0^De0), 5); Bo = ROL32((Ami0^Di1), 8); Bu = ROL32((Amo0^Do0), 28); Ba = ROL32((Amu0^Du1), 14); Ama0 = Ba ^((~Be)& Bi ); Ame0 = Be ^((~Bi)& Bo ); Ami0 = Bi ^((~Bo)& Bu ); Amo0 = Bo ^((~Bu)& Ba ); Amu0 = Bu ^((~Ba)& Be ); Be = ROL32((Ama1^Da1), 18); Bi = ROL32((Ame1^De1), 5); Bo = ROL32((Ami1^Di0), 7); Bu = ROL32((Amo1^Do1), 28); Ba = ROL32((Amu1^Du0), 13); Ama1 = Ba ^((~Be)& Bi ); Ame1 = Be ^((~Bi)& Bo ); Ami1 = Bi ^((~Bo)& Bu ); Amo1 = Bo ^((~Bu)& Ba ); Amu1 = Bu ^((~Ba)& Be ); Bo = ROL32((Asa0^Da1), 21); Bu = ROL32((Ase0^De0), 1); Ba = ROL32((Asi0^Di0), 31); Be = ROL32((Aso0^Do1), 28); Bi = ROL32((Asu0^Du1), 20); Asa0 = Ba ^((~Be)& Bi ); Ase0 = Be ^((~Bi)& Bo ); Asi0 = Bi ^((~Bo)& Bu ); Aso0 = Bo ^((~Bu)& Ba ); Asu0 = Bu ^((~Ba)& Be ); Bo = ROL32((Asa1^Da0), 20); Bu = ROL32((Ase1^De1), 1); Ba = ROL32((Asi1^Di1), 31); Be = ROL32((Aso1^Do0), 27); Bi = ROL32((Asu1^Du0), 19); Asa1 = Ba ^((~Be)& Bi ); Ase1 = Be ^((~Bi)& Bo ); Asi1 = Bi ^((~Bo)& Bu ); Aso1 = Bo ^((~Bu)& Ba ); Asu1 = Bu ^((~Ba)& Be ); } while ( *pRoundConstants != 0xFF ); #undef Aba0 #undef Aba1 #undef Abe0 #undef Abe1 #undef Abi0 #undef Abi1 #undef Abo0 #undef Abo1 #undef Abu0 #undef Abu1 #undef Aga0 #undef Aga1 #undef Age0 #undef Age1 #undef Agi0 #undef Agi1 #undef Ago0 #undef Ago1 #undef Agu0 #undef Agu1 #undef Aka0 #undef Aka1 #undef Ake0 #undef Ake1 #undef Aki0 #undef Aki1 #undef Ako0 #undef Ako1 #undef Aku0 #undef Aku1 #undef Ama0 #undef Ama1 #undef Ame0 #undef Ame1 #undef Ami0 #undef Ami1 #undef Amo0 #undef Amo1 #undef Amu0 #undef Amu1 #undef Asa0 #undef Asa1 #undef Ase0 #undef Ase1 #undef Asi0 #undef Asi1 #undef Aso0 #undef Aso1 #undef Asu0 #undef Asu1 } } /* ---------------------------------------------------------------- */ void KeccakP1600_Permute_12rounds(void *state) { KeccakP1600_Permute_Nrounds(state, 12); } /* ---------------------------------------------------------------- */ void KeccakP1600_Permute_24rounds(void *state) { KeccakP1600_Permute_Nrounds(state, 24); } pysha3-1.0.2/Modules/_sha3/kcp/KeccakP-1600-opt64.c0000664000175000017500000003551212711150330021655 0ustar heimesheimes00000000000000/* Implementation by the Keccak, Keyak and Ketje Teams, namely, Guido Bertoni, Joan Daemen, Michaël Peeters, Gilles Van Assche and Ronny Van Keer, hereby denoted as "the implementer". For more information, feedback or questions, please refer to our websites: http://keccak.noekeon.org/ http://keyak.noekeon.org/ http://ketje.noekeon.org/ To the extent possible under law, the implementer has waived all copyright and related or neighboring rights to the source code in this file. http://creativecommons.org/publicdomain/zero/1.0/ */ #include #include #include "brg_endian.h" #include "KeccakP-1600-opt64-config.h" #if NOT_PYTHON typedef unsigned char UINT8; /* typedef unsigned long long int UINT64; */ #endif #if defined(KeccakP1600_useLaneComplementing) #define UseBebigokimisa #endif #if defined(_MSC_VER) #define ROL64(a, offset) _rotl64(a, offset) #elif defined(KeccakP1600_useSHLD) #define ROL64(x,N) ({ \ register UINT64 __out; \ register UINT64 __in = x; \ __asm__ ("shld %2,%0,%0" : "=r"(__out) : "0"(__in), "i"(N)); \ __out; \ }) #else #define ROL64(a, offset) ((((UINT64)a) << offset) ^ (((UINT64)a) >> (64-offset))) #endif #include "KeccakP-1600-64.macros" #ifdef KeccakP1600_fullUnrolling #define FullUnrolling #else #define Unrolling KeccakP1600_unrolling #endif #include "KeccakP-1600-unrolling.macros" #include "SnP-Relaned.h" static const UINT64 KeccakF1600RoundConstants[24] = { 0x0000000000000001ULL, 0x0000000000008082ULL, 0x800000000000808aULL, 0x8000000080008000ULL, 0x000000000000808bULL, 0x0000000080000001ULL, 0x8000000080008081ULL, 0x8000000000008009ULL, 0x000000000000008aULL, 0x0000000000000088ULL, 0x0000000080008009ULL, 0x000000008000000aULL, 0x000000008000808bULL, 0x800000000000008bULL, 0x8000000000008089ULL, 0x8000000000008003ULL, 0x8000000000008002ULL, 0x8000000000000080ULL, 0x000000000000800aULL, 0x800000008000000aULL, 0x8000000080008081ULL, 0x8000000000008080ULL, 0x0000000080000001ULL, 0x8000000080008008ULL }; /* ---------------------------------------------------------------- */ void KeccakP1600_Initialize(void *state) { memset(state, 0, 200); #ifdef KeccakP1600_useLaneComplementing ((UINT64*)state)[ 1] = ~(UINT64)0; ((UINT64*)state)[ 2] = ~(UINT64)0; ((UINT64*)state)[ 8] = ~(UINT64)0; ((UINT64*)state)[12] = ~(UINT64)0; ((UINT64*)state)[17] = ~(UINT64)0; ((UINT64*)state)[20] = ~(UINT64)0; #endif } /* ---------------------------------------------------------------- */ void KeccakP1600_AddBytesInLane(void *state, unsigned int lanePosition, const unsigned char *data, unsigned int offset, unsigned int length) { #if (PLATFORM_BYTE_ORDER == IS_LITTLE_ENDIAN) UINT64 lane; if (length == 0) return; if (length == 1) lane = data[0]; else { lane = 0; memcpy(&lane, data, length); } lane <<= offset*8; #else UINT64 lane = 0; unsigned int i; for(i=0; i>= offset*8; for(i=0; i>= 8; } #endif } /* ---------------------------------------------------------------- */ #if (PLATFORM_BYTE_ORDER != IS_LITTLE_ENDIAN) void fromWordToBytes(UINT8 *bytes, const UINT64 word) { unsigned int i; for(i=0; i<(64/8); i++) bytes[i] = (word >> (8*i)) & 0xFF; } #endif void KeccakP1600_ExtractLanes(const void *state, unsigned char *data, unsigned int laneCount) { #if (PLATFORM_BYTE_ORDER == IS_LITTLE_ENDIAN) memcpy(data, state, laneCount*8); #else unsigned int i; for(i=0; i 1) { ((UINT64*)data)[ 1] = ~((UINT64*)data)[ 1]; if (laneCount > 2) { ((UINT64*)data)[ 2] = ~((UINT64*)data)[ 2]; if (laneCount > 8) { ((UINT64*)data)[ 8] = ~((UINT64*)data)[ 8]; if (laneCount > 12) { ((UINT64*)data)[12] = ~((UINT64*)data)[12]; if (laneCount > 17) { ((UINT64*)data)[17] = ~((UINT64*)data)[17]; if (laneCount > 20) { ((UINT64*)data)[20] = ~((UINT64*)data)[20]; } } } } } } #endif } /* ---------------------------------------------------------------- */ void KeccakP1600_ExtractBytes(const void *state, unsigned char *data, unsigned int offset, unsigned int length) { SnP_ExtractBytes(state, data, offset, length, KeccakP1600_ExtractLanes, KeccakP1600_ExtractBytesInLane, 8); } /* ---------------------------------------------------------------- */ void KeccakP1600_ExtractAndAddBytesInLane(const void *state, unsigned int lanePosition, const unsigned char *input, unsigned char *output, unsigned int offset, unsigned int length) { UINT64 lane = ((UINT64*)state)[lanePosition]; #ifdef KeccakP1600_useLaneComplementing if ((lanePosition == 1) || (lanePosition == 2) || (lanePosition == 8) || (lanePosition == 12) || (lanePosition == 17) || (lanePosition == 20)) lane = ~lane; #endif #if (PLATFORM_BYTE_ORDER == IS_LITTLE_ENDIAN) { unsigned int i; UINT64 lane1[1]; lane1[0] = lane; for(i=0; i>= offset*8; for(i=0; i>= 8; } #endif } /* ---------------------------------------------------------------- */ void KeccakP1600_ExtractAndAddLanes(const void *state, const unsigned char *input, unsigned char *output, unsigned int laneCount) { unsigned int i; #if (PLATFORM_BYTE_ORDER != IS_LITTLE_ENDIAN) unsigned char temp[8]; unsigned int j; #endif for(i=0; i 1) { ((UINT64*)output)[ 1] = ~((UINT64*)output)[ 1]; if (laneCount > 2) { ((UINT64*)output)[ 2] = ~((UINT64*)output)[ 2]; if (laneCount > 8) { ((UINT64*)output)[ 8] = ~((UINT64*)output)[ 8]; if (laneCount > 12) { ((UINT64*)output)[12] = ~((UINT64*)output)[12]; if (laneCount > 17) { ((UINT64*)output)[17] = ~((UINT64*)output)[17]; if (laneCount > 20) { ((UINT64*)output)[20] = ~((UINT64*)output)[20]; } } } } } } #endif } /* ---------------------------------------------------------------- */ void KeccakP1600_ExtractAndAddBytes(const void *state, const unsigned char *input, unsigned char *output, unsigned int offset, unsigned int length) { SnP_ExtractAndAddBytes(state, input, output, offset, length, KeccakP1600_ExtractAndAddLanes, KeccakP1600_ExtractAndAddBytesInLane, 8); } /* ---------------------------------------------------------------- */ size_t KeccakF1600_FastLoop_Absorb(void *state, unsigned int laneCount, const unsigned char *data, size_t dataByteLen) { size_t originalDataByteLen = dataByteLen; declareABCDE #ifndef KeccakP1600_fullUnrolling unsigned int i; #endif UINT64 *stateAsLanes = (UINT64*)state; UINT64 *inDataAsLanes = (UINT64*)data; copyFromState(A, stateAsLanes) while(dataByteLen >= laneCount*8) { addInput(A, inDataAsLanes, laneCount) rounds24 inDataAsLanes += laneCount; dataByteLen -= laneCount*8; } copyToState(stateAsLanes, A) return originalDataByteLen - dataByteLen; } pysha3-1.0.2/Modules/_sha3/kcp/PlSnP-Fallback.inc0000664000175000017500000002247212710473647022061 0ustar heimesheimes00000000000000/* Implementation by the Keccak, Keyak and Ketje Teams, namely, Guido Bertoni, Joan Daemen, Michaël Peeters, Gilles Van Assche and Ronny Van Keer, hereby denoted as "the implementer". For more information, feedback or questions, please refer to our websites: http://keccak.noekeon.org/ http://keyak.noekeon.org/ http://ketje.noekeon.org/ To the extent possible under law, the implementer has waived all copyright and related or neighboring rights to the source code in this file. http://creativecommons.org/publicdomain/zero/1.0/ */ /* expect PlSnP_baseParallelism, PlSnP_targetParallelism */ /* expect SnP_stateSizeInBytes, SnP_stateAlignment */ /* expect prefix */ /* expect SnP_* */ #define JOIN0(a, b) a ## b #define JOIN(a, b) JOIN0(a, b) #define PlSnP_StaticInitialize JOIN(prefix, _StaticInitialize) #define PlSnP_InitializeAll JOIN(prefix, _InitializeAll) #define PlSnP_AddByte JOIN(prefix, _AddByte) #define PlSnP_AddBytes JOIN(prefix, _AddBytes) #define PlSnP_AddLanesAll JOIN(prefix, _AddLanesAll) #define PlSnP_OverwriteBytes JOIN(prefix, _OverwriteBytes) #define PlSnP_OverwriteLanesAll JOIN(prefix, _OverwriteLanesAll) #define PlSnP_OverwriteWithZeroes JOIN(prefix, _OverwriteWithZeroes) #define PlSnP_ExtractBytes JOIN(prefix, _ExtractBytes) #define PlSnP_ExtractLanesAll JOIN(prefix, _ExtractLanesAll) #define PlSnP_ExtractAndAddBytes JOIN(prefix, _ExtractAndAddBytes) #define PlSnP_ExtractAndAddLanesAll JOIN(prefix, _ExtractAndAddLanesAll) #if (PlSnP_baseParallelism == 1) #define SnP_stateSizeInBytes JOIN(SnP, _stateSizeInBytes) #define SnP_stateAlignment JOIN(SnP, _stateAlignment) #else #define SnP_stateSizeInBytes JOIN(SnP, _statesSizeInBytes) #define SnP_stateAlignment JOIN(SnP, _statesAlignment) #endif #define PlSnP_factor ((PlSnP_targetParallelism)/(PlSnP_baseParallelism)) #define SnP_stateOffset (((SnP_stateSizeInBytes+(SnP_stateAlignment-1))/SnP_stateAlignment)*SnP_stateAlignment) #define stateWithIndex(i) ((unsigned char *)states+((i)*SnP_stateOffset)) #define SnP_StaticInitialize JOIN(SnP, _StaticInitialize) #define SnP_Initialize JOIN(SnP, _Initialize) #define SnP_InitializeAll JOIN(SnP, _InitializeAll) #define SnP_AddByte JOIN(SnP, _AddByte) #define SnP_AddBytes JOIN(SnP, _AddBytes) #define SnP_AddLanesAll JOIN(SnP, _AddLanesAll) #define SnP_OverwriteBytes JOIN(SnP, _OverwriteBytes) #define SnP_OverwriteLanesAll JOIN(SnP, _OverwriteLanesAll) #define SnP_OverwriteWithZeroes JOIN(SnP, _OverwriteWithZeroes) #define SnP_ExtractBytes JOIN(SnP, _ExtractBytes) #define SnP_ExtractLanesAll JOIN(SnP, _ExtractLanesAll) #define SnP_ExtractAndAddBytes JOIN(SnP, _ExtractAndAddBytes) #define SnP_ExtractAndAddLanesAll JOIN(SnP, _ExtractAndAddLanesAll) void PlSnP_StaticInitialize( void ) { SnP_StaticInitialize(); } void PlSnP_InitializeAll(void *states) { unsigned int i; for(i=0; i= 1) { \ output[ 0] = X##ba; \ } \ state[ 1] = X##be; \ state[ 2] = X##bi; \ } \ else { \ state[ 0] = X##ba; \ output[ 0] = X##ba; \ state[ 1] = X##be; \ output[ 1] = ~X##be; \ state[ 2] = X##bi; \ if (laneCount >= 3) { \ output[ 2] = ~X##bi; \ } \ } \ state[ 3] = X##bo; \ state[ 4] = X##bu; \ state[ 5] = X##ga; \ state[ 6] = X##ge; \ } \ else { \ state[ 0] = X##ba; \ output[ 0] = X##ba; \ state[ 1] = X##be; \ output[ 1] = ~X##be; \ state[ 2] = X##bi; \ output[ 2] = ~X##bi; \ state[ 3] = X##bo; \ output[ 3] = X##bo; \ if (laneCount < 6) { \ state[ 4] = X##bu; \ if (laneCount >= 5) { \ output[ 4] = X##bu; \ } \ state[ 5] = X##ga; \ state[ 6] = X##ge; \ } \ else { \ state[ 4] = X##bu; \ output[ 4] = X##bu; \ state[ 5] = X##ga; \ output[ 5] = X##ga; \ state[ 6] = X##ge; \ if (laneCount >= 7) { \ output[ 6] = X##ge; \ } \ } \ } \ state[ 7] = X##gi; \ state[ 8] = X##go; \ state[ 9] = X##gu; \ state[10] = X##ka; \ state[11] = X##ke; \ state[12] = X##ki; \ state[13] = X##ko; \ state[14] = X##ku; \ } \ else { \ state[ 0] = X##ba; \ output[ 0] = X##ba; \ state[ 1] = X##be; \ output[ 1] = ~X##be; \ state[ 2] = X##bi; \ output[ 2] = ~X##bi; \ state[ 3] = X##bo; \ output[ 3] = X##bo; \ state[ 4] = X##bu; \ output[ 4] = X##bu; \ state[ 5] = X##ga; \ output[ 5] = X##ga; \ state[ 6] = X##ge; \ output[ 6] = X##ge; \ state[ 7] = X##gi; \ output[ 7] = X##gi; \ if (laneCount < 12) { \ if (laneCount < 10) { \ state[ 8] = X##go; \ if (laneCount >= 9) { \ output[ 8] = ~X##go; \ } \ state[ 9] = X##gu; \ state[10] = X##ka; \ } \ else { \ state[ 8] = X##go; \ output[ 8] = ~X##go; \ state[ 9] = X##gu; \ output[ 9] = X##gu; \ state[10] = X##ka; \ if (laneCount >= 11) { \ output[10] = X##ka; \ } \ } \ state[11] = X##ke; \ state[12] = X##ki; \ state[13] = X##ko; \ state[14] = X##ku; \ } \ else { \ state[ 8] = X##go; \ output[ 8] = ~X##go; \ state[ 9] = X##gu; \ output[ 9] = X##gu; \ state[10] = X##ka; \ output[10] = X##ka; \ state[11] = X##ke; \ output[11] = X##ke; \ if (laneCount < 14) { \ state[12] = X##ki; \ if (laneCount >= 13) { \ output[12] = ~X##ki; \ } \ state[13] = X##ko; \ state[14] = X##ku; \ } \ else { \ state[12] = X##ki; \ output[12] = ~X##ki; \ state[13] = X##ko; \ output[13] = X##ko; \ state[14] = X##ku; \ if (laneCount >= 15) { \ output[14] = X##ku; \ } \ } \ } \ } \ state[15] = X##ma; \ state[16] = X##me; \ state[17] = X##mi; \ state[18] = X##mo; \ state[19] = X##mu; \ state[20] = X##sa; \ state[21] = X##se; \ state[22] = X##si; \ state[23] = X##so; \ state[24] = X##su; \ } \ else { \ state[ 0] = X##ba; \ output[ 0] = X##ba; \ state[ 1] = X##be; \ output[ 1] = ~X##be; \ state[ 2] = X##bi; \ output[ 2] = ~X##bi; \ state[ 3] = X##bo; \ output[ 3] = X##bo; \ state[ 4] = X##bu; \ output[ 4] = X##bu; \ state[ 5] = X##ga; \ output[ 5] = X##ga; \ state[ 6] = X##ge; \ output[ 6] = X##ge; \ state[ 7] = X##gi; \ output[ 7] = X##gi; \ state[ 8] = X##go; \ output[ 8] = ~X##go; \ state[ 9] = X##gu; \ output[ 9] = X##gu; \ state[10] = X##ka; \ output[10] = X##ka; \ state[11] = X##ke; \ output[11] = X##ke; \ state[12] = X##ki; \ output[12] = ~X##ki; \ state[13] = X##ko; \ output[13] = X##ko; \ state[14] = X##ku; \ output[14] = X##ku; \ state[15] = X##ma; \ output[15] = X##ma; \ if (laneCount < 24) { \ if (laneCount < 20) { \ if (laneCount < 18) { \ state[16] = X##me; \ if (laneCount >= 17) { \ output[16] = X##me; \ } \ state[17] = X##mi; \ state[18] = X##mo; \ } \ else { \ state[16] = X##me; \ output[16] = X##me; \ state[17] = X##mi; \ output[17] = ~X##mi; \ state[18] = X##mo; \ if (laneCount >= 19) { \ output[18] = X##mo; \ } \ } \ state[19] = X##mu; \ state[20] = X##sa; \ state[21] = X##se; \ state[22] = X##si; \ } \ else { \ state[16] = X##me; \ output[16] = X##me; \ state[17] = X##mi; \ output[17] = ~X##mi; \ state[18] = X##mo; \ output[18] = X##mo; \ state[19] = X##mu; \ output[19] = X##mu; \ if (laneCount < 22) { \ state[20] = X##sa; \ if (laneCount >= 21) { \ output[20] = ~X##sa; \ } \ state[21] = X##se; \ state[22] = X##si; \ } \ else { \ state[20] = X##sa; \ output[20] = ~X##sa; \ state[21] = X##se; \ output[21] = X##se; \ state[22] = X##si; \ if (laneCount >= 23) { \ output[22] = X##si; \ } \ } \ } \ state[23] = X##so; \ state[24] = X##su; \ } \ else { \ state[16] = X##me; \ output[16] = X##me; \ state[17] = X##mi; \ output[17] = ~X##mi; \ state[18] = X##mo; \ output[18] = X##mo; \ state[19] = X##mu; \ output[19] = X##mu; \ state[20] = X##sa; \ output[20] = ~X##sa; \ state[21] = X##se; \ output[21] = X##se; \ state[22] = X##si; \ output[22] = X##si; \ state[23] = X##so; \ output[23] = X##so; \ state[24] = X##su; \ if (laneCount >= 25) { \ output[24] = X##su; \ } \ } \ } #define output(X, output, laneCount) \ if (laneCount < 16) { \ if (laneCount < 8) { \ if (laneCount < 4) { \ if (laneCount < 2) { \ if (laneCount >= 1) { \ output[ 0] = X##ba; \ } \ } \ else { \ output[ 0] = X##ba; \ output[ 1] = ~X##be; \ if (laneCount >= 3) { \ output[ 2] = ~X##bi; \ } \ } \ } \ else { \ output[ 0] = X##ba; \ output[ 1] = ~X##be; \ output[ 2] = ~X##bi; \ output[ 3] = X##bo; \ if (laneCount < 6) { \ if (laneCount >= 5) { \ output[ 4] = X##bu; \ } \ } \ else { \ output[ 4] = X##bu; \ output[ 5] = X##ga; \ if (laneCount >= 7) { \ output[ 6] = X##ge; \ } \ } \ } \ } \ else { \ output[ 0] = X##ba; \ output[ 1] = ~X##be; \ output[ 2] = ~X##bi; \ output[ 3] = X##bo; \ output[ 4] = X##bu; \ output[ 5] = X##ga; \ output[ 6] = X##ge; \ output[ 7] = X##gi; \ if (laneCount < 12) { \ if (laneCount < 10) { \ if (laneCount >= 9) { \ output[ 8] = ~X##go; \ } \ } \ else { \ output[ 8] = ~X##go; \ output[ 9] = X##gu; \ if (laneCount >= 11) { \ output[10] = X##ka; \ } \ } \ } \ else { \ output[ 8] = ~X##go; \ output[ 9] = X##gu; \ output[10] = X##ka; \ output[11] = X##ke; \ if (laneCount < 14) { \ if (laneCount >= 13) { \ output[12] = ~X##ki; \ } \ } \ else { \ output[12] = ~X##ki; \ output[13] = X##ko; \ if (laneCount >= 15) { \ output[14] = X##ku; \ } \ } \ } \ } \ } \ else { \ output[ 0] = X##ba; \ output[ 1] = ~X##be; \ output[ 2] = ~X##bi; \ output[ 3] = X##bo; \ output[ 4] = X##bu; \ output[ 5] = X##ga; \ output[ 6] = X##ge; \ output[ 7] = X##gi; \ output[ 8] = ~X##go; \ output[ 9] = X##gu; \ output[10] = X##ka; \ output[11] = X##ke; \ output[12] = ~X##ki; \ output[13] = X##ko; \ output[14] = X##ku; \ output[15] = X##ma; \ if (laneCount < 24) { \ if (laneCount < 20) { \ if (laneCount < 18) { \ if (laneCount >= 17) { \ output[16] = X##me; \ } \ } \ else { \ output[16] = X##me; \ output[17] = ~X##mi; \ if (laneCount >= 19) { \ output[18] = X##mo; \ } \ } \ } \ else { \ output[16] = X##me; \ output[17] = ~X##mi; \ output[18] = X##mo; \ output[19] = X##mu; \ if (laneCount < 22) { \ if (laneCount >= 21) { \ output[20] = ~X##sa; \ } \ } \ else { \ output[20] = ~X##sa; \ output[21] = X##se; \ if (laneCount >= 23) { \ output[22] = X##si; \ } \ } \ } \ } \ else { \ output[16] = X##me; \ output[17] = ~X##mi; \ output[18] = X##mo; \ output[19] = X##mu; \ output[20] = ~X##sa; \ output[21] = X##se; \ output[22] = X##si; \ output[23] = X##so; \ if (laneCount >= 25) { \ output[24] = X##su; \ } \ } \ } #define wrapOne(X, input, output, index, name) \ X##name ^= input[index]; \ output[index] = X##name; #define wrapOneInvert(X, input, output, index, name) \ X##name ^= input[index]; \ output[index] = ~X##name; #define unwrapOne(X, input, output, index, name) \ output[index] = input[index] ^ X##name; \ X##name ^= output[index]; #define unwrapOneInvert(X, input, output, index, name) \ output[index] = ~(input[index] ^ X##name); \ X##name ^= output[index]; \ #else /* UseBebigokimisa */ #define copyToStateAndOutput(X, state, output, laneCount) \ if (laneCount < 16) { \ if (laneCount < 8) { \ if (laneCount < 4) { \ if (laneCount < 2) { \ state[ 0] = X##ba; \ if (laneCount >= 1) { \ output[ 0] = X##ba; \ } \ state[ 1] = X##be; \ state[ 2] = X##bi; \ } \ else { \ state[ 0] = X##ba; \ output[ 0] = X##ba; \ state[ 1] = X##be; \ output[ 1] = X##be; \ state[ 2] = X##bi; \ if (laneCount >= 3) { \ output[ 2] = X##bi; \ } \ } \ state[ 3] = X##bo; \ state[ 4] = X##bu; \ state[ 5] = X##ga; \ state[ 6] = X##ge; \ } \ else { \ state[ 0] = X##ba; \ output[ 0] = X##ba; \ state[ 1] = X##be; \ output[ 1] = X##be; \ state[ 2] = X##bi; \ output[ 2] = X##bi; \ state[ 3] = X##bo; \ output[ 3] = X##bo; \ if (laneCount < 6) { \ state[ 4] = X##bu; \ if (laneCount >= 5) { \ output[ 4] = X##bu; \ } \ state[ 5] = X##ga; \ state[ 6] = X##ge; \ } \ else { \ state[ 4] = X##bu; \ output[ 4] = X##bu; \ state[ 5] = X##ga; \ output[ 5] = X##ga; \ state[ 6] = X##ge; \ if (laneCount >= 7) { \ output[ 6] = X##ge; \ } \ } \ } \ state[ 7] = X##gi; \ state[ 8] = X##go; \ state[ 9] = X##gu; \ state[10] = X##ka; \ state[11] = X##ke; \ state[12] = X##ki; \ state[13] = X##ko; \ state[14] = X##ku; \ } \ else { \ state[ 0] = X##ba; \ output[ 0] = X##ba; \ state[ 1] = X##be; \ output[ 1] = X##be; \ state[ 2] = X##bi; \ output[ 2] = X##bi; \ state[ 3] = X##bo; \ output[ 3] = X##bo; \ state[ 4] = X##bu; \ output[ 4] = X##bu; \ state[ 5] = X##ga; \ output[ 5] = X##ga; \ state[ 6] = X##ge; \ output[ 6] = X##ge; \ state[ 7] = X##gi; \ output[ 7] = X##gi; \ if (laneCount < 12) { \ if (laneCount < 10) { \ state[ 8] = X##go; \ if (laneCount >= 9) { \ output[ 8] = X##go; \ } \ state[ 9] = X##gu; \ state[10] = X##ka; \ } \ else { \ state[ 8] = X##go; \ output[ 8] = X##go; \ state[ 9] = X##gu; \ output[ 9] = X##gu; \ state[10] = X##ka; \ if (laneCount >= 11) { \ output[10] = X##ka; \ } \ } \ state[11] = X##ke; \ state[12] = X##ki; \ state[13] = X##ko; \ state[14] = X##ku; \ } \ else { \ state[ 8] = X##go; \ output[ 8] = X##go; \ state[ 9] = X##gu; \ output[ 9] = X##gu; \ state[10] = X##ka; \ output[10] = X##ka; \ state[11] = X##ke; \ output[11] = X##ke; \ if (laneCount < 14) { \ state[12] = X##ki; \ if (laneCount >= 13) { \ output[12]= X##ki; \ } \ state[13] = X##ko; \ state[14] = X##ku; \ } \ else { \ state[12] = X##ki; \ output[12]= X##ki; \ state[13] = X##ko; \ output[13] = X##ko; \ state[14] = X##ku; \ if (laneCount >= 15) { \ output[14] = X##ku; \ } \ } \ } \ } \ state[15] = X##ma; \ state[16] = X##me; \ state[17] = X##mi; \ state[18] = X##mo; \ state[19] = X##mu; \ state[20] = X##sa; \ state[21] = X##se; \ state[22] = X##si; \ state[23] = X##so; \ state[24] = X##su; \ } \ else { \ state[ 0] = X##ba; \ output[ 0] = X##ba; \ state[ 1] = X##be; \ output[ 1] = X##be; \ state[ 2] = X##bi; \ output[ 2] = X##bi; \ state[ 3] = X##bo; \ output[ 3] = X##bo; \ state[ 4] = X##bu; \ output[ 4] = X##bu; \ state[ 5] = X##ga; \ output[ 5] = X##ga; \ state[ 6] = X##ge; \ output[ 6] = X##ge; \ state[ 7] = X##gi; \ output[ 7] = X##gi; \ state[ 8] = X##go; \ output[ 8] = X##go; \ state[ 9] = X##gu; \ output[ 9] = X##gu; \ state[10] = X##ka; \ output[10] = X##ka; \ state[11] = X##ke; \ output[11] = X##ke; \ state[12] = X##ki; \ output[12]= X##ki; \ state[13] = X##ko; \ output[13] = X##ko; \ state[14] = X##ku; \ output[14] = X##ku; \ state[15] = X##ma; \ output[15] = X##ma; \ if (laneCount < 24) { \ if (laneCount < 20) { \ if (laneCount < 18) { \ state[16] = X##me; \ if (laneCount >= 17) { \ output[16] = X##me; \ } \ state[17] = X##mi; \ state[18] = X##mo; \ } \ else { \ state[16] = X##me; \ output[16] = X##me; \ state[17] = X##mi; \ output[17] = X##mi; \ state[18] = X##mo; \ if (laneCount >= 19) { \ output[18] = X##mo; \ } \ } \ state[19] = X##mu; \ state[20] = X##sa; \ state[21] = X##se; \ state[22] = X##si; \ } \ else { \ state[16] = X##me; \ output[16] = X##me; \ state[17] = X##mi; \ output[17] = X##mi; \ state[18] = X##mo; \ output[18] = X##mo; \ state[19] = X##mu; \ output[19] = X##mu; \ if (laneCount < 22) { \ state[20] = X##sa; \ if (laneCount >= 21) { \ output[20] = X##sa; \ } \ state[21] = X##se; \ state[22] = X##si; \ } \ else { \ state[20] = X##sa; \ output[20] = X##sa; \ state[21] = X##se; \ output[21] = X##se; \ state[22] = X##si; \ if (laneCount >= 23) { \ output[22] = X##si; \ } \ } \ } \ state[23] = X##so; \ state[24] = X##su; \ } \ else { \ state[16] = X##me; \ output[16] = X##me; \ state[17] = X##mi; \ output[17] = X##mi; \ state[18] = X##mo; \ output[18] = X##mo; \ state[19] = X##mu; \ output[19] = X##mu; \ state[20] = X##sa; \ output[20] = X##sa; \ state[21] = X##se; \ output[21] = X##se; \ state[22] = X##si; \ output[22] = X##si; \ state[23] = X##so; \ output[23] = X##so; \ state[24] = X##su; \ if (laneCount >= 25) { \ output[24] = X##su; \ } \ } \ } #define output(X, output, laneCount) \ if (laneCount < 16) { \ if (laneCount < 8) { \ if (laneCount < 4) { \ if (laneCount < 2) { \ if (laneCount >= 1) { \ output[ 0] = X##ba; \ } \ } \ else { \ output[ 0] = X##ba; \ output[ 1] = X##be; \ if (laneCount >= 3) { \ output[ 2] = X##bi; \ } \ } \ } \ else { \ output[ 0] = X##ba; \ output[ 1] = X##be; \ output[ 2] = X##bi; \ output[ 3] = X##bo; \ if (laneCount < 6) { \ if (laneCount >= 5) { \ output[ 4] = X##bu; \ } \ } \ else { \ output[ 4] = X##bu; \ output[ 5] = X##ga; \ if (laneCount >= 7) { \ output[ 6] = X##ge; \ } \ } \ } \ } \ else { \ output[ 0] = X##ba; \ output[ 1] = X##be; \ output[ 2] = X##bi; \ output[ 3] = X##bo; \ output[ 4] = X##bu; \ output[ 5] = X##ga; \ output[ 6] = X##ge; \ output[ 7] = X##gi; \ if (laneCount < 12) { \ if (laneCount < 10) { \ if (laneCount >= 9) { \ output[ 8] = X##go; \ } \ } \ else { \ output[ 8] = X##go; \ output[ 9] = X##gu; \ if (laneCount >= 11) { \ output[10] = X##ka; \ } \ } \ } \ else { \ output[ 8] = X##go; \ output[ 9] = X##gu; \ output[10] = X##ka; \ output[11] = X##ke; \ if (laneCount < 14) { \ if (laneCount >= 13) { \ output[12] = X##ki; \ } \ } \ else { \ output[12] = X##ki; \ output[13] = X##ko; \ if (laneCount >= 15) { \ output[14] = X##ku; \ } \ } \ } \ } \ } \ else { \ output[ 0] = X##ba; \ output[ 1] = X##be; \ output[ 2] = X##bi; \ output[ 3] = X##bo; \ output[ 4] = X##bu; \ output[ 5] = X##ga; \ output[ 6] = X##ge; \ output[ 7] = X##gi; \ output[ 8] = X##go; \ output[ 9] = X##gu; \ output[10] = X##ka; \ output[11] = X##ke; \ output[12] = X##ki; \ output[13] = X##ko; \ output[14] = X##ku; \ output[15] = X##ma; \ if (laneCount < 24) { \ if (laneCount < 20) { \ if (laneCount < 18) { \ if (laneCount >= 17) { \ output[16] = X##me; \ } \ } \ else { \ output[16] = X##me; \ output[17] = X##mi; \ if (laneCount >= 19) { \ output[18] = X##mo; \ } \ } \ } \ else { \ output[16] = X##me; \ output[17] = X##mi; \ output[18] = X##mo; \ output[19] = X##mu; \ if (laneCount < 22) { \ if (laneCount >= 21) { \ output[20] = X##sa; \ } \ } \ else { \ output[20] = X##sa; \ output[21] = X##se; \ if (laneCount >= 23) { \ output[22] = X##si; \ } \ } \ } \ } \ else { \ output[16] = X##me; \ output[17] = X##mi; \ output[18] = X##mo; \ output[19] = X##mu; \ output[20] = X##sa; \ output[21] = X##se; \ output[22] = X##si; \ output[23] = X##so; \ if (laneCount >= 25) { \ output[24] = X##su; \ } \ } \ } #define wrapOne(X, input, output, index, name) \ X##name ^= input[index]; \ output[index] = X##name; #define wrapOneInvert(X, input, output, index, name) \ X##name ^= input[index]; \ output[index] = X##name; #define unwrapOne(X, input, output, index, name) \ output[index] = input[index] ^ X##name; \ X##name ^= output[index]; #define unwrapOneInvert(X, input, output, index, name) \ output[index] = input[index] ^ X##name; \ X##name ^= output[index]; #endif #define wrap(X, input, output, laneCount, trailingBits) \ if (laneCount < 16) { \ if (laneCount < 8) { \ if (laneCount < 4) { \ if (laneCount < 2) { \ if (laneCount < 1) { \ X##ba ^= trailingBits; \ } \ else { \ wrapOne(X, input, output, 0, ba) \ X##be ^= trailingBits; \ } \ } \ else { \ wrapOne(X, input, output, 0, ba) \ wrapOneInvert(X, input, output, 1, be) \ if (laneCount < 3) { \ X##bi ^= trailingBits; \ } \ else { \ wrapOneInvert(X, input, output, 2, bi) \ X##bo ^= trailingBits; \ } \ } \ } \ else { \ wrapOne(X, input, output, 0, ba) \ wrapOneInvert(X, input, output, 1, be) \ wrapOneInvert(X, input, output, 2, bi) \ wrapOne(X, input, output, 3, bo) \ if (laneCount < 6) { \ if (laneCount < 5) { \ X##bu ^= trailingBits; \ } \ else { \ wrapOne(X, input, output, 4, bu) \ X##ga ^= trailingBits; \ } \ } \ else { \ wrapOne(X, input, output, 4, bu) \ wrapOne(X, input, output, 5, ga) \ if (laneCount < 7) { \ X##ge ^= trailingBits; \ } \ else { \ wrapOne(X, input, output, 6, ge) \ X##gi ^= trailingBits; \ } \ } \ } \ } \ else { \ wrapOne(X, input, output, 0, ba) \ wrapOneInvert(X, input, output, 1, be) \ wrapOneInvert(X, input, output, 2, bi) \ wrapOne(X, input, output, 3, bo) \ wrapOne(X, input, output, 4, bu) \ wrapOne(X, input, output, 5, ga) \ wrapOne(X, input, output, 6, ge) \ wrapOne(X, input, output, 7, gi) \ if (laneCount < 12) { \ if (laneCount < 10) { \ if (laneCount < 9) { \ X##go ^= trailingBits; \ } \ else { \ wrapOneInvert(X, input, output, 8, go) \ X##gu ^= trailingBits; \ } \ } \ else { \ wrapOneInvert(X, input, output, 8, go) \ wrapOne(X, input, output, 9, gu) \ if (laneCount < 11) { \ X##ka ^= trailingBits; \ } \ else { \ wrapOne(X, input, output, 10, ka) \ X##ke ^= trailingBits; \ } \ } \ } \ else { \ wrapOneInvert(X, input, output, 8, go) \ wrapOne(X, input, output, 9, gu) \ wrapOne(X, input, output, 10, ka) \ wrapOne(X, input, output, 11, ke) \ if (laneCount < 14) { \ if (laneCount < 13) { \ X##ki ^= trailingBits; \ } \ else { \ wrapOneInvert(X, input, output, 12, ki) \ X##ko ^= trailingBits; \ } \ } \ else { \ wrapOneInvert(X, input, output, 12, ki) \ wrapOne(X, input, output, 13, ko) \ if (laneCount < 15) { \ X##ku ^= trailingBits; \ } \ else { \ wrapOne(X, input, output, 14, ku) \ X##ma ^= trailingBits; \ } \ } \ } \ } \ } \ else { \ wrapOne(X, input, output, 0, ba) \ wrapOneInvert(X, input, output, 1, be) \ wrapOneInvert(X, input, output, 2, bi) \ wrapOne(X, input, output, 3, bo) \ wrapOne(X, input, output, 4, bu) \ wrapOne(X, input, output, 5, ga) \ wrapOne(X, input, output, 6, ge) \ wrapOne(X, input, output, 7, gi) \ wrapOneInvert(X, input, output, 8, go) \ wrapOne(X, input, output, 9, gu) \ wrapOne(X, input, output, 10, ka) \ wrapOne(X, input, output, 11, ke) \ wrapOneInvert(X, input, output, 12, ki) \ wrapOne(X, input, output, 13, ko) \ wrapOne(X, input, output, 14, ku) \ wrapOne(X, input, output, 15, ma) \ if (laneCount < 24) { \ if (laneCount < 20) { \ if (laneCount < 18) { \ if (laneCount < 17) { \ X##me ^= trailingBits; \ } \ else { \ wrapOne(X, input, output, 16, me) \ X##mi ^= trailingBits; \ } \ } \ else { \ wrapOne(X, input, output, 16, me) \ wrapOneInvert(X, input, output, 17, mi) \ if (laneCount < 19) { \ X##mo ^= trailingBits; \ } \ else { \ wrapOne(X, input, output, 18, mo) \ X##mu ^= trailingBits; \ } \ } \ } \ else { \ wrapOne(X, input, output, 16, me) \ wrapOneInvert(X, input, output, 17, mi) \ wrapOne(X, input, output, 18, mo) \ wrapOne(X, input, output, 19, mu) \ if (laneCount < 22) { \ if (laneCount < 21) { \ X##sa ^= trailingBits; \ } \ else { \ wrapOneInvert(X, input, output, 20, sa) \ X##se ^= trailingBits; \ } \ } \ else { \ wrapOneInvert(X, input, output, 20, sa) \ wrapOne(X, input, output, 21, se) \ if (laneCount < 23) { \ X##si ^= trailingBits; \ } \ else { \ wrapOne(X, input, output, 22, si) \ X##so ^= trailingBits; \ } \ } \ } \ } \ else { \ wrapOne(X, input, output, 16, me) \ wrapOneInvert(X, input, output, 17, mi) \ wrapOne(X, input, output, 18, mo) \ wrapOne(X, input, output, 19, mu) \ wrapOneInvert(X, input, output, 20, sa) \ wrapOne(X, input, output, 21, se) \ wrapOne(X, input, output, 22, si) \ wrapOne(X, input, output, 23, so) \ if (laneCount < 25) { \ X##su ^= trailingBits; \ } \ else { \ wrapOne(X, input, output, 24, su) \ } \ } \ } #define unwrap(X, input, output, laneCount, trailingBits) \ if (laneCount < 16) { \ if (laneCount < 8) { \ if (laneCount < 4) { \ if (laneCount < 2) { \ if (laneCount < 1) { \ X##ba ^= trailingBits; \ } \ else { \ unwrapOne(X, input, output, 0, ba) \ X##be ^= trailingBits; \ } \ } \ else { \ unwrapOne(X, input, output, 0, ba) \ unwrapOneInvert(X, input, output, 1, be) \ if (laneCount < 3) { \ X##bi ^= trailingBits; \ } \ else { \ unwrapOneInvert(X, input, output, 2, bi) \ X##bo ^= trailingBits; \ } \ } \ } \ else { \ unwrapOne(X, input, output, 0, ba) \ unwrapOneInvert(X, input, output, 1, be) \ unwrapOneInvert(X, input, output, 2, bi) \ unwrapOne(X, input, output, 3, bo) \ if (laneCount < 6) { \ if (laneCount < 5) { \ X##bu ^= trailingBits; \ } \ else { \ unwrapOne(X, input, output, 4, bu) \ X##ga ^= trailingBits; \ } \ } \ else { \ unwrapOne(X, input, output, 4, bu) \ unwrapOne(X, input, output, 5, ga) \ if (laneCount < 7) { \ X##ge ^= trailingBits; \ } \ else { \ unwrapOne(X, input, output, 6, ge) \ X##gi ^= trailingBits; \ } \ } \ } \ } \ else { \ unwrapOne(X, input, output, 0, ba) \ unwrapOneInvert(X, input, output, 1, be) \ unwrapOneInvert(X, input, output, 2, bi) \ unwrapOne(X, input, output, 3, bo) \ unwrapOne(X, input, output, 4, bu) \ unwrapOne(X, input, output, 5, ga) \ unwrapOne(X, input, output, 6, ge) \ unwrapOne(X, input, output, 7, gi) \ if (laneCount < 12) { \ if (laneCount < 10) { \ if (laneCount < 9) { \ X##go ^= trailingBits; \ } \ else { \ unwrapOneInvert(X, input, output, 8, go) \ X##gu ^= trailingBits; \ } \ } \ else { \ unwrapOneInvert(X, input, output, 8, go) \ unwrapOne(X, input, output, 9, gu) \ if (laneCount < 11) { \ X##ka ^= trailingBits; \ } \ else { \ unwrapOne(X, input, output, 10, ka) \ X##ke ^= trailingBits; \ } \ } \ } \ else { \ unwrapOneInvert(X, input, output, 8, go) \ unwrapOne(X, input, output, 9, gu) \ unwrapOne(X, input, output, 10, ka) \ unwrapOne(X, input, output, 11, ke) \ if (laneCount < 14) { \ if (laneCount < 13) { \ X##ki ^= trailingBits; \ } \ else { \ unwrapOneInvert(X, input, output, 12, ki) \ X##ko ^= trailingBits; \ } \ } \ else { \ unwrapOneInvert(X, input, output, 12, ki) \ unwrapOne(X, input, output, 13, ko) \ if (laneCount < 15) { \ X##ku ^= trailingBits; \ } \ else { \ unwrapOne(X, input, output, 14, ku) \ X##ma ^= trailingBits; \ } \ } \ } \ } \ } \ else { \ unwrapOne(X, input, output, 0, ba) \ unwrapOneInvert(X, input, output, 1, be) \ unwrapOneInvert(X, input, output, 2, bi) \ unwrapOne(X, input, output, 3, bo) \ unwrapOne(X, input, output, 4, bu) \ unwrapOne(X, input, output, 5, ga) \ unwrapOne(X, input, output, 6, ge) \ unwrapOne(X, input, output, 7, gi) \ unwrapOneInvert(X, input, output, 8, go) \ unwrapOne(X, input, output, 9, gu) \ unwrapOne(X, input, output, 10, ka) \ unwrapOne(X, input, output, 11, ke) \ unwrapOneInvert(X, input, output, 12, ki) \ unwrapOne(X, input, output, 13, ko) \ unwrapOne(X, input, output, 14, ku) \ unwrapOne(X, input, output, 15, ma) \ if (laneCount < 24) { \ if (laneCount < 20) { \ if (laneCount < 18) { \ if (laneCount < 17) { \ X##me ^= trailingBits; \ } \ else { \ unwrapOne(X, input, output, 16, me) \ X##mi ^= trailingBits; \ } \ } \ else { \ unwrapOne(X, input, output, 16, me) \ unwrapOneInvert(X, input, output, 17, mi) \ if (laneCount < 19) { \ X##mo ^= trailingBits; \ } \ else { \ unwrapOne(X, input, output, 18, mo) \ X##mu ^= trailingBits; \ } \ } \ } \ else { \ unwrapOne(X, input, output, 16, me) \ unwrapOneInvert(X, input, output, 17, mi) \ unwrapOne(X, input, output, 18, mo) \ unwrapOne(X, input, output, 19, mu) \ if (laneCount < 22) { \ if (laneCount < 21) { \ X##sa ^= trailingBits; \ } \ else { \ unwrapOneInvert(X, input, output, 20, sa) \ X##se ^= trailingBits; \ } \ } \ else { \ unwrapOneInvert(X, input, output, 20, sa) \ unwrapOne(X, input, output, 21, se) \ if (laneCount < 23) { \ X##si ^= trailingBits; \ } \ else { \ unwrapOne(X, input, output, 22, si) \ X##so ^= trailingBits; \ } \ } \ } \ } \ else { \ unwrapOne(X, input, output, 16, me) \ unwrapOneInvert(X, input, output, 17, mi) \ unwrapOne(X, input, output, 18, mo) \ unwrapOne(X, input, output, 19, mu) \ unwrapOneInvert(X, input, output, 20, sa) \ unwrapOne(X, input, output, 21, se) \ unwrapOne(X, input, output, 22, si) \ unwrapOne(X, input, output, 23, so) \ if (laneCount < 25) { \ X##su ^= trailingBits; \ } \ else { \ unwrapOne(X, input, output, 24, su) \ } \ } \ } pysha3-1.0.2/Modules/_sha3/kcp/KeccakP-1600-SnP.h0000664000175000017500000000023312710457014021406 0ustar heimesheimes00000000000000#if KeccakOpt == 64 #include "KeccakP-1600-SnP-opt64.h" #elif KeccakOpt == 32 #include "KeccakP-1600-SnP-opt32.h" #else #error "No KeccakOpt" #endif pysha3-1.0.2/Modules/_sha3/kcp/KeccakP-1600-unrolling.macros0000664000175000017500000001422212710457014023757 0ustar heimesheimes00000000000000/* Implementation by the Keccak, Keyak and Ketje Teams, namely, Guido Bertoni, Joan Daemen, Michaël Peeters, Gilles Van Assche and Ronny Van Keer, hereby denoted as "the implementer". For more information, feedback or questions, please refer to our websites: http://keccak.noekeon.org/ http://keyak.noekeon.org/ http://ketje.noekeon.org/ To the extent possible under law, the implementer has waived all copyright and related or neighboring rights to the source code in this file. http://creativecommons.org/publicdomain/zero/1.0/ */ #if (defined(FullUnrolling)) #define rounds24 \ prepareTheta \ thetaRhoPiChiIotaPrepareTheta( 0, A, E) \ thetaRhoPiChiIotaPrepareTheta( 1, E, A) \ thetaRhoPiChiIotaPrepareTheta( 2, A, E) \ thetaRhoPiChiIotaPrepareTheta( 3, E, A) \ thetaRhoPiChiIotaPrepareTheta( 4, A, E) \ thetaRhoPiChiIotaPrepareTheta( 5, E, A) \ thetaRhoPiChiIotaPrepareTheta( 6, A, E) \ thetaRhoPiChiIotaPrepareTheta( 7, E, A) \ thetaRhoPiChiIotaPrepareTheta( 8, A, E) \ thetaRhoPiChiIotaPrepareTheta( 9, E, A) \ thetaRhoPiChiIotaPrepareTheta(10, A, E) \ thetaRhoPiChiIotaPrepareTheta(11, E, A) \ thetaRhoPiChiIotaPrepareTheta(12, A, E) \ thetaRhoPiChiIotaPrepareTheta(13, E, A) \ thetaRhoPiChiIotaPrepareTheta(14, A, E) \ thetaRhoPiChiIotaPrepareTheta(15, E, A) \ thetaRhoPiChiIotaPrepareTheta(16, A, E) \ thetaRhoPiChiIotaPrepareTheta(17, E, A) \ thetaRhoPiChiIotaPrepareTheta(18, A, E) \ thetaRhoPiChiIotaPrepareTheta(19, E, A) \ thetaRhoPiChiIotaPrepareTheta(20, A, E) \ thetaRhoPiChiIotaPrepareTheta(21, E, A) \ thetaRhoPiChiIotaPrepareTheta(22, A, E) \ thetaRhoPiChiIota(23, E, A) \ #define rounds12 \ prepareTheta \ thetaRhoPiChiIotaPrepareTheta(12, A, E) \ thetaRhoPiChiIotaPrepareTheta(13, E, A) \ thetaRhoPiChiIotaPrepareTheta(14, A, E) \ thetaRhoPiChiIotaPrepareTheta(15, E, A) \ thetaRhoPiChiIotaPrepareTheta(16, A, E) \ thetaRhoPiChiIotaPrepareTheta(17, E, A) \ thetaRhoPiChiIotaPrepareTheta(18, A, E) \ thetaRhoPiChiIotaPrepareTheta(19, E, A) \ thetaRhoPiChiIotaPrepareTheta(20, A, E) \ thetaRhoPiChiIotaPrepareTheta(21, E, A) \ thetaRhoPiChiIotaPrepareTheta(22, A, E) \ thetaRhoPiChiIota(23, E, A) \ #elif (Unrolling == 12) #define rounds24 \ prepareTheta \ for(i=0; i<24; i+=12) { \ thetaRhoPiChiIotaPrepareTheta(i , A, E) \ thetaRhoPiChiIotaPrepareTheta(i+ 1, E, A) \ thetaRhoPiChiIotaPrepareTheta(i+ 2, A, E) \ thetaRhoPiChiIotaPrepareTheta(i+ 3, E, A) \ thetaRhoPiChiIotaPrepareTheta(i+ 4, A, E) \ thetaRhoPiChiIotaPrepareTheta(i+ 5, E, A) \ thetaRhoPiChiIotaPrepareTheta(i+ 6, A, E) \ thetaRhoPiChiIotaPrepareTheta(i+ 7, E, A) \ thetaRhoPiChiIotaPrepareTheta(i+ 8, A, E) \ thetaRhoPiChiIotaPrepareTheta(i+ 9, E, A) \ thetaRhoPiChiIotaPrepareTheta(i+10, A, E) \ thetaRhoPiChiIotaPrepareTheta(i+11, E, A) \ } \ #define rounds12 \ prepareTheta \ thetaRhoPiChiIotaPrepareTheta(12, A, E) \ thetaRhoPiChiIotaPrepareTheta(13, E, A) \ thetaRhoPiChiIotaPrepareTheta(14, A, E) \ thetaRhoPiChiIotaPrepareTheta(15, E, A) \ thetaRhoPiChiIotaPrepareTheta(16, A, E) \ thetaRhoPiChiIotaPrepareTheta(17, E, A) \ thetaRhoPiChiIotaPrepareTheta(18, A, E) \ thetaRhoPiChiIotaPrepareTheta(19, E, A) \ thetaRhoPiChiIotaPrepareTheta(20, A, E) \ thetaRhoPiChiIotaPrepareTheta(21, E, A) \ thetaRhoPiChiIotaPrepareTheta(22, A, E) \ thetaRhoPiChiIota(23, E, A) \ #elif (Unrolling == 6) #define rounds24 \ prepareTheta \ for(i=0; i<24; i+=6) { \ thetaRhoPiChiIotaPrepareTheta(i , A, E) \ thetaRhoPiChiIotaPrepareTheta(i+1, E, A) \ thetaRhoPiChiIotaPrepareTheta(i+2, A, E) \ thetaRhoPiChiIotaPrepareTheta(i+3, E, A) \ thetaRhoPiChiIotaPrepareTheta(i+4, A, E) \ thetaRhoPiChiIotaPrepareTheta(i+5, E, A) \ } \ #define rounds12 \ prepareTheta \ for(i=12; i<24; i+=6) { \ thetaRhoPiChiIotaPrepareTheta(i , A, E) \ thetaRhoPiChiIotaPrepareTheta(i+1, E, A) \ thetaRhoPiChiIotaPrepareTheta(i+2, A, E) \ thetaRhoPiChiIotaPrepareTheta(i+3, E, A) \ thetaRhoPiChiIotaPrepareTheta(i+4, A, E) \ thetaRhoPiChiIotaPrepareTheta(i+5, E, A) \ } \ #elif (Unrolling == 4) #define rounds24 \ prepareTheta \ for(i=0; i<24; i+=4) { \ thetaRhoPiChiIotaPrepareTheta(i , A, E) \ thetaRhoPiChiIotaPrepareTheta(i+1, E, A) \ thetaRhoPiChiIotaPrepareTheta(i+2, A, E) \ thetaRhoPiChiIotaPrepareTheta(i+3, E, A) \ } \ #define rounds12 \ prepareTheta \ for(i=12; i<24; i+=4) { \ thetaRhoPiChiIotaPrepareTheta(i , A, E) \ thetaRhoPiChiIotaPrepareTheta(i+1, E, A) \ thetaRhoPiChiIotaPrepareTheta(i+2, A, E) \ thetaRhoPiChiIotaPrepareTheta(i+3, E, A) \ } \ #elif (Unrolling == 3) #define rounds24 \ prepareTheta \ for(i=0; i<24; i+=3) { \ thetaRhoPiChiIotaPrepareTheta(i , A, E) \ thetaRhoPiChiIotaPrepareTheta(i+1, E, A) \ thetaRhoPiChiIotaPrepareTheta(i+2, A, E) \ copyStateVariables(A, E) \ } \ #define rounds12 \ prepareTheta \ for(i=12; i<24; i+=3) { \ thetaRhoPiChiIotaPrepareTheta(i , A, E) \ thetaRhoPiChiIotaPrepareTheta(i+1, E, A) \ thetaRhoPiChiIotaPrepareTheta(i+2, A, E) \ copyStateVariables(A, E) \ } \ #elif (Unrolling == 2) #define rounds24 \ prepareTheta \ for(i=0; i<24; i+=2) { \ thetaRhoPiChiIotaPrepareTheta(i , A, E) \ thetaRhoPiChiIotaPrepareTheta(i+1, E, A) \ } \ #define rounds12 \ prepareTheta \ for(i=12; i<24; i+=2) { \ thetaRhoPiChiIotaPrepareTheta(i , A, E) \ thetaRhoPiChiIotaPrepareTheta(i+1, E, A) \ } \ #elif (Unrolling == 1) #define rounds24 \ prepareTheta \ for(i=0; i<24; i++) { \ thetaRhoPiChiIotaPrepareTheta(i , A, E) \ copyStateVariables(A, E) \ } \ #define rounds12 \ prepareTheta \ for(i=12; i<24; i++) { \ thetaRhoPiChiIotaPrepareTheta(i , A, E) \ copyStateVariables(A, E) \ } \ #else #error "Unrolling is not correctly specified!" #endif pysha3-1.0.2/Modules/_sha3/kcp/KeccakSponge.inc0000664000175000017500000002574012710473647021726 0ustar heimesheimes00000000000000/* Implementation by the Keccak, Keyak and Ketje Teams, namely, Guido Bertoni, Joan Daemen, Michaël Peeters, Gilles Van Assche and Ronny Van Keer, hereby denoted as "the implementer". For more information, feedback or questions, please refer to our websites: http://keccak.noekeon.org/ http://keyak.noekeon.org/ http://ketje.noekeon.org/ To the extent possible under law, the implementer has waived all copyright and related or neighboring rights to the source code in this file. http://creativecommons.org/publicdomain/zero/1.0/ */ #define JOIN0(a, b) a ## b #define JOIN(a, b) JOIN0(a, b) #define Sponge JOIN(prefix, _Sponge) #define SpongeInstance JOIN(prefix, _SpongeInstance) #define SpongeInitialize JOIN(prefix, _SpongeInitialize) #define SpongeAbsorb JOIN(prefix, _SpongeAbsorb) #define SpongeAbsorbLastFewBits JOIN(prefix, _SpongeAbsorbLastFewBits) #define SpongeSqueeze JOIN(prefix, _SpongeSqueeze) #define SnP_stateSizeInBytes JOIN(SnP, _stateSizeInBytes) #define SnP_stateAlignment JOIN(SnP, _stateAlignment) #define SnP_StaticInitialize JOIN(SnP, _StaticInitialize) #define SnP_Initialize JOIN(SnP, _Initialize) #define SnP_AddByte JOIN(SnP, _AddByte) #define SnP_AddBytes JOIN(SnP, _AddBytes) #define SnP_ExtractBytes JOIN(SnP, _ExtractBytes) int Sponge(unsigned int rate, unsigned int capacity, const unsigned char *input, size_t inputByteLen, unsigned char suffix, unsigned char *output, size_t outputByteLen) { ALIGN(SnP_stateAlignment) unsigned char state[SnP_stateSizeInBytes]; unsigned int partialBlock; const unsigned char *curInput = input; unsigned char *curOutput = output; unsigned int rateInBytes = rate/8; if (rate+capacity != SnP_width) return 1; if ((rate <= 0) || (rate > SnP_width) || ((rate % 8) != 0)) return 1; if (suffix == 0) return 1; /* Initialize the state */ SnP_StaticInitialize(); SnP_Initialize(state); /* First, absorb whole blocks */ #ifdef SnP_FastLoop_Absorb if (((rateInBytes % (SnP_width/200)) == 0) && (inputByteLen >= rateInBytes)) { /* fast lane: whole lane rate */ size_t j; j = SnP_FastLoop_Absorb(state, rateInBytes/(SnP_width/200), curInput, inputByteLen); curInput += j; inputByteLen -= j; } #endif while(inputByteLen >= (size_t)rateInBytes) { #ifdef KeccakReference displayBytes(1, "Block to be absorbed", curInput, rateInBytes); #endif SnP_AddBytes(state, curInput, 0, rateInBytes); SnP_Permute(state); curInput += rateInBytes; inputByteLen -= rateInBytes; } /* Then, absorb what remains */ partialBlock = (unsigned int)inputByteLen; #ifdef KeccakReference displayBytes(1, "Block to be absorbed (part)", curInput, partialBlock); #endif SnP_AddBytes(state, curInput, 0, partialBlock); /* Finally, absorb the suffix */ #ifdef KeccakReference { unsigned char delimitedData1[1]; delimitedData1[0] = suffix; displayBytes(1, "Block to be absorbed (last few bits + first bit of padding)", delimitedData1, 1); } #endif /* Last few bits, whose delimiter coincides with first bit of padding */ SnP_AddByte(state, suffix, partialBlock); /* If the first bit of padding is at position rate-1, we need a whole new block for the second bit of padding */ if ((suffix >= 0x80) && (partialBlock == (rateInBytes-1))) SnP_Permute(state); /* Second bit of padding */ SnP_AddByte(state, 0x80, rateInBytes-1); #ifdef KeccakReference { unsigned char block[SnP_width/8]; memset(block, 0, SnP_width/8); block[rateInBytes-1] = 0x80; displayBytes(1, "Second bit of padding", block, rateInBytes); } #endif SnP_Permute(state); #ifdef KeccakReference displayText(1, "--- Switching to squeezing phase ---"); #endif /* First, output whole blocks */ while(outputByteLen > (size_t)rateInBytes) { SnP_ExtractBytes(state, curOutput, 0, rateInBytes); SnP_Permute(state); #ifdef KeccakReference displayBytes(1, "Squeezed block", curOutput, rateInBytes); #endif curOutput += rateInBytes; outputByteLen -= rateInBytes; } /* Finally, output what remains */ partialBlock = (unsigned int)outputByteLen; SnP_ExtractBytes(state, curOutput, 0, partialBlock); #ifdef KeccakReference displayBytes(1, "Squeezed block (part)", curOutput, partialBlock); #endif return 0; } /* ---------------------------------------------------------------- */ /* ---------------------------------------------------------------- */ /* ---------------------------------------------------------------- */ int SpongeInitialize(SpongeInstance *instance, unsigned int rate, unsigned int capacity) { if (rate+capacity != SnP_width) return 1; if ((rate <= 0) || (rate > SnP_width) || ((rate % 8) != 0)) return 1; SnP_StaticInitialize(); SnP_Initialize(instance->state); instance->rate = rate; instance->byteIOIndex = 0; instance->squeezing = 0; return 0; } /* ---------------------------------------------------------------- */ int SpongeAbsorb(SpongeInstance *instance, const unsigned char *data, size_t dataByteLen) { size_t i, j; unsigned int partialBlock; const unsigned char *curData; unsigned int rateInBytes = instance->rate/8; if (instance->squeezing) return 1; /* Too late for additional input */ i = 0; curData = data; while(i < dataByteLen) { if ((instance->byteIOIndex == 0) && (dataByteLen >= (i + rateInBytes))) { #ifdef SnP_FastLoop_Absorb /* processing full blocks first */ if ((rateInBytes % (SnP_width/200)) == 0) { /* fast lane: whole lane rate */ j = SnP_FastLoop_Absorb(instance->state, rateInBytes/(SnP_width/200), curData, dataByteLen - i); i += j; curData += j; } else { #endif for(j=dataByteLen-i; j>=rateInBytes; j-=rateInBytes) { #ifdef KeccakReference displayBytes(1, "Block to be absorbed", curData, rateInBytes); #endif SnP_AddBytes(instance->state, curData, 0, rateInBytes); SnP_Permute(instance->state); curData+=rateInBytes; } i = dataByteLen - j; #ifdef SnP_FastLoop_Absorb } #endif } else { /* normal lane: using the message queue */ partialBlock = (unsigned int)(dataByteLen - i); if (partialBlock+instance->byteIOIndex > rateInBytes) partialBlock = rateInBytes-instance->byteIOIndex; #ifdef KeccakReference displayBytes(1, "Block to be absorbed (part)", curData, partialBlock); #endif i += partialBlock; SnP_AddBytes(instance->state, curData, instance->byteIOIndex, partialBlock); curData += partialBlock; instance->byteIOIndex += partialBlock; if (instance->byteIOIndex == rateInBytes) { SnP_Permute(instance->state); instance->byteIOIndex = 0; } } } return 0; } /* ---------------------------------------------------------------- */ int SpongeAbsorbLastFewBits(SpongeInstance *instance, unsigned char delimitedData) { unsigned int rateInBytes = instance->rate/8; if (delimitedData == 0) return 1; if (instance->squeezing) return 1; /* Too late for additional input */ #ifdef KeccakReference { unsigned char delimitedData1[1]; delimitedData1[0] = delimitedData; displayBytes(1, "Block to be absorbed (last few bits + first bit of padding)", delimitedData1, 1); } #endif /* Last few bits, whose delimiter coincides with first bit of padding */ SnP_AddByte(instance->state, delimitedData, instance->byteIOIndex); /* If the first bit of padding is at position rate-1, we need a whole new block for the second bit of padding */ if ((delimitedData >= 0x80) && (instance->byteIOIndex == (rateInBytes-1))) SnP_Permute(instance->state); /* Second bit of padding */ SnP_AddByte(instance->state, 0x80, rateInBytes-1); #ifdef KeccakReference { unsigned char block[SnP_width/8]; memset(block, 0, SnP_width/8); block[rateInBytes-1] = 0x80; displayBytes(1, "Second bit of padding", block, rateInBytes); } #endif SnP_Permute(instance->state); instance->byteIOIndex = 0; instance->squeezing = 1; #ifdef KeccakReference displayText(1, "--- Switching to squeezing phase ---"); #endif return 0; } /* ---------------------------------------------------------------- */ int SpongeSqueeze(SpongeInstance *instance, unsigned char *data, size_t dataByteLen) { size_t i, j; unsigned int partialBlock; unsigned int rateInBytes = instance->rate/8; unsigned char *curData; if (!instance->squeezing) SpongeAbsorbLastFewBits(instance, 0x01); i = 0; curData = data; while(i < dataByteLen) { if ((instance->byteIOIndex == rateInBytes) && (dataByteLen >= (i + rateInBytes))) { for(j=dataByteLen-i; j>=rateInBytes; j-=rateInBytes) { SnP_Permute(instance->state); SnP_ExtractBytes(instance->state, curData, 0, rateInBytes); #ifdef KeccakReference displayBytes(1, "Squeezed block", curData, rateInBytes); #endif curData+=rateInBytes; } i = dataByteLen - j; } else { /* normal lane: using the message queue */ if (instance->byteIOIndex == rateInBytes) { SnP_Permute(instance->state); instance->byteIOIndex = 0; } partialBlock = (unsigned int)(dataByteLen - i); if (partialBlock+instance->byteIOIndex > rateInBytes) partialBlock = rateInBytes-instance->byteIOIndex; i += partialBlock; SnP_ExtractBytes(instance->state, curData, instance->byteIOIndex, partialBlock); #ifdef KeccakReference displayBytes(1, "Squeezed block (part)", curData, partialBlock); #endif curData += partialBlock; instance->byteIOIndex += partialBlock; } } return 0; } /* ---------------------------------------------------------------- */ #undef Sponge #undef SpongeInstance #undef SpongeInitialize #undef SpongeAbsorb #undef SpongeAbsorbLastFewBits #undef SpongeSqueeze #undef SnP_stateSizeInBytes #undef SnP_stateAlignment #undef SnP_StaticInitialize #undef SnP_Initialize #undef SnP_AddByte #undef SnP_AddBytes #undef SnP_ExtractBytes pysha3-1.0.2/Modules/_sha3/kcp/KeccakSponge.c0000664000175000017500000000475512710457014021370 0ustar heimesheimes00000000000000/* Implementation by the Keccak, Keyak and Ketje Teams, namely, Guido Bertoni, Joan Daemen, Michaël Peeters, Gilles Van Assche and Ronny Van Keer, hereby denoted as "the implementer". For more information, feedback or questions, please refer to our websites: http://keccak.noekeon.org/ http://keyak.noekeon.org/ http://ketje.noekeon.org/ To the extent possible under law, the implementer has waived all copyright and related or neighboring rights to the source code in this file. http://creativecommons.org/publicdomain/zero/1.0/ */ #include "KeccakSponge.h" #ifdef KeccakReference #include "displayIntermediateValues.h" #endif #ifndef KeccakP200_excluded #include "KeccakP-200-SnP.h" #define prefix KeccakWidth200 #define SnP KeccakP200 #define SnP_width 200 #define SnP_Permute KeccakP200_Permute_18rounds #if defined(KeccakF200_FastLoop_supported) #define SnP_FastLoop_Absorb KeccakF200_FastLoop_Absorb #endif #include "KeccakSponge.inc" #undef prefix #undef SnP #undef SnP_width #undef SnP_Permute #undef SnP_FastLoop_Absorb #endif #ifndef KeccakP400_excluded #include "KeccakP-400-SnP.h" #define prefix KeccakWidth400 #define SnP KeccakP400 #define SnP_width 400 #define SnP_Permute KeccakP400_Permute_20rounds #if defined(KeccakF400_FastLoop_supported) #define SnP_FastLoop_Absorb KeccakF400_FastLoop_Absorb #endif #include "KeccakSponge.inc" #undef prefix #undef SnP #undef SnP_width #undef SnP_Permute #undef SnP_FastLoop_Absorb #endif #ifndef KeccakP800_excluded #include "KeccakP-800-SnP.h" #define prefix KeccakWidth800 #define SnP KeccakP800 #define SnP_width 800 #define SnP_Permute KeccakP800_Permute_22rounds #if defined(KeccakF800_FastLoop_supported) #define SnP_FastLoop_Absorb KeccakF800_FastLoop_Absorb #endif #include "KeccakSponge.inc" #undef prefix #undef SnP #undef SnP_width #undef SnP_Permute #undef SnP_FastLoop_Absorb #endif #ifndef KeccakP1600_excluded #include "KeccakP-1600-SnP.h" #define prefix KeccakWidth1600 #define SnP KeccakP1600 #define SnP_width 1600 #define SnP_Permute KeccakP1600_Permute_24rounds #if defined(KeccakF1600_FastLoop_supported) #define SnP_FastLoop_Absorb KeccakF1600_FastLoop_Absorb #endif #include "KeccakSponge.inc" #undef prefix #undef SnP #undef SnP_width #undef SnP_Permute #undef SnP_FastLoop_Absorb #endif pysha3-1.0.2/Modules/_sha3/kcp/KeccakHash.h0000664000175000017500000001255212710457014021017 0ustar heimesheimes00000000000000/* Implementation by the Keccak, Keyak and Ketje Teams, namely, Guido Bertoni, Joan Daemen, Michaël Peeters, Gilles Van Assche and Ronny Van Keer, hereby denoted as "the implementer". For more information, feedback or questions, please refer to our websites: http://keccak.noekeon.org/ http://keyak.noekeon.org/ http://ketje.noekeon.org/ To the extent possible under law, the implementer has waived all copyright and related or neighboring rights to the source code in this file. http://creativecommons.org/publicdomain/zero/1.0/ */ #ifndef _KeccakHashInterface_h_ #define _KeccakHashInterface_h_ #ifndef KeccakP1600_excluded #include "KeccakSponge.h" #include typedef unsigned char BitSequence; typedef size_t DataLength; typedef enum { SUCCESS = 0, FAIL = 1, BAD_HASHLEN = 2 } HashReturn; typedef struct { KeccakWidth1600_SpongeInstance sponge; unsigned int fixedOutputLength; unsigned char delimitedSuffix; } Keccak_HashInstance; /** * Function to initialize the Keccak[r, c] sponge function instance used in sequential hashing mode. * @param hashInstance Pointer to the hash instance to be initialized. * @param rate The value of the rate r. * @param capacity The value of the capacity c. * @param hashbitlen The desired number of output bits, * or 0 for an arbitrarily-long output. * @param delimitedSuffix Bits that will be automatically appended to the end * of the input message, as in domain separation. * This is a byte containing from 0 to 7 bits * formatted like the @a delimitedData parameter of * the Keccak_SpongeAbsorbLastFewBits() function. * @pre One must have r+c=1600 and the rate a multiple of 8 bits in this implementation. * @return SUCCESS if successful, FAIL otherwise. */ HashReturn Keccak_HashInitialize(Keccak_HashInstance *hashInstance, unsigned int rate, unsigned int capacity, unsigned int hashbitlen, unsigned char delimitedSuffix); /** Macro to initialize a SHAKE128 instance as specified in the FIPS 202 standard. */ #define Keccak_HashInitialize_SHAKE128(hashInstance) Keccak_HashInitialize(hashInstance, 1344, 256, 0, 0x1F) /** Macro to initialize a SHAKE256 instance as specified in the FIPS 202 standard. */ #define Keccak_HashInitialize_SHAKE256(hashInstance) Keccak_HashInitialize(hashInstance, 1088, 512, 0, 0x1F) /** Macro to initialize a SHA3-224 instance as specified in the FIPS 202 standard. */ #define Keccak_HashInitialize_SHA3_224(hashInstance) Keccak_HashInitialize(hashInstance, 1152, 448, 224, 0x06) /** Macro to initialize a SHA3-256 instance as specified in the FIPS 202 standard. */ #define Keccak_HashInitialize_SHA3_256(hashInstance) Keccak_HashInitialize(hashInstance, 1088, 512, 256, 0x06) /** Macro to initialize a SHA3-384 instance as specified in the FIPS 202 standard. */ #define Keccak_HashInitialize_SHA3_384(hashInstance) Keccak_HashInitialize(hashInstance, 832, 768, 384, 0x06) /** Macro to initialize a SHA3-512 instance as specified in the FIPS 202 standard. */ #define Keccak_HashInitialize_SHA3_512(hashInstance) Keccak_HashInitialize(hashInstance, 576, 1024, 512, 0x06) /** * Function to give input data to be absorbed. * @param hashInstance Pointer to the hash instance initialized by Keccak_HashInitialize(). * @param data Pointer to the input data. * When @a databitLen is not a multiple of 8, the last bits of data must be * in the least significant bits of the last byte (little-endian convention). * @param databitLen The number of input bits provided in the input data. * @pre In the previous call to Keccak_HashUpdate(), databitlen was a multiple of 8. * @return SUCCESS if successful, FAIL otherwise. */ HashReturn Keccak_HashUpdate(Keccak_HashInstance *hashInstance, const BitSequence *data, DataLength databitlen); /** * Function to call after all input blocks have been input and to get * output bits if the length was specified when calling Keccak_HashInitialize(). * @param hashInstance Pointer to the hash instance initialized by Keccak_HashInitialize(). * If @a hashbitlen was not 0 in the call to Keccak_HashInitialize(), the number of * output bits is equal to @a hashbitlen. * If @a hashbitlen was 0 in the call to Keccak_HashInitialize(), the output bits * must be extracted using the Keccak_HashSqueeze() function. * @param state Pointer to the state of the sponge function initialized by Init(). * @param hashval Pointer to the buffer where to store the output data. * @return SUCCESS if successful, FAIL otherwise. */ HashReturn Keccak_HashFinal(Keccak_HashInstance *hashInstance, BitSequence *hashval); /** * Function to squeeze output data. * @param hashInstance Pointer to the hash instance initialized by Keccak_HashInitialize(). * @param data Pointer to the buffer where to store the output data. * @param databitlen The number of output bits desired (must be a multiple of 8). * @pre Keccak_HashFinal() must have been already called. * @pre @a databitlen is a multiple of 8. * @return SUCCESS if successful, FAIL otherwise. */ HashReturn Keccak_HashSqueeze(Keccak_HashInstance *hashInstance, BitSequence *data, DataLength databitlen); #endif #endif pysha3-1.0.2/Modules/_sha3/kcp/KeccakP-1600-SnP-opt64.h0000664000175000017500000000405412711150342022360 0ustar heimesheimes00000000000000/* Implementation by the Keccak, Keyak and Ketje Teams, namely, Guido Bertoni, Joan Daemen, Michaël Peeters, Gilles Van Assche and Ronny Van Keer, hereby denoted as "the implementer". For more information, feedback or questions, please refer to our websites: http://keccak.noekeon.org/ http://keyak.noekeon.org/ http://ketje.noekeon.org/ To the extent possible under law, the implementer has waived all copyright and related or neighboring rights to the source code in this file. http://creativecommons.org/publicdomain/zero/1.0/ */ #ifndef _KeccakP_1600_SnP_h_ #define _KeccakP_1600_SnP_h_ /** For the documentation, see SnP-documentation.h. */ #include "brg_endian.h" #include "KeccakP-1600-opt64-config.h" #define KeccakP1600_implementation "generic 64-bit optimized implementation (" KeccakP1600_implementation_config ")" #define KeccakP1600_stateSizeInBytes 200 #define KeccakP1600_stateAlignment 8 #define KeccakF1600_FastLoop_supported #include #define KeccakP1600_StaticInitialize() void KeccakP1600_Initialize(void *state); #if (PLATFORM_BYTE_ORDER == IS_LITTLE_ENDIAN) #define KeccakP1600_AddByte(state, byte, offset) \ ((unsigned char*)(state))[(offset)] ^= (byte) #else void KeccakP1600_AddByte(void *state, unsigned char data, unsigned int offset); #endif void KeccakP1600_AddBytes(void *state, const unsigned char *data, unsigned int offset, unsigned int length); void KeccakP1600_OverwriteBytes(void *state, const unsigned char *data, unsigned int offset, unsigned int length); void KeccakP1600_OverwriteWithZeroes(void *state, unsigned int byteCount); void KeccakP1600_Permute_12rounds(void *state); void KeccakP1600_Permute_24rounds(void *state); void KeccakP1600_ExtractBytes(const void *state, unsigned char *data, unsigned int offset, unsigned int length); void KeccakP1600_ExtractAndAddBytes(const void *state, const unsigned char *input, unsigned char *output, unsigned int offset, unsigned int length); size_t KeccakF1600_FastLoop_Absorb(void *state, unsigned int laneCount, const unsigned char *data, size_t dataByteLen); #endif pysha3-1.0.2/Modules/_sha3/clinic/0000775000175000017500000000000013045652733017347 5ustar heimesheimes00000000000000pysha3-1.0.2/Modules/_sha3/clinic/sha3module.c.h0000664000175000017500000001000313027424344021772 0ustar heimesheimes00000000000000/*[clinic input] preserve [clinic start generated code]*/ PyDoc_STRVAR(py_sha3_new__doc__, "sha3_224(string=None)\n" "--\n" "\n" "Return a new SHA3 hash object with a hashbit length of 28 bytes."); static PyObject * py_sha3_new_impl(PyTypeObject *type, PyObject *data); static PyObject * py_sha3_new(PyTypeObject *type, PyObject *args, PyObject *kwargs) { PyObject *return_value = NULL; static char *_keywords[] = {"string", NULL}; PyObject *data = NULL; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|O:sha3_224", _keywords, &data)) goto exit; return_value = py_sha3_new_impl(type, data); exit: return return_value; } PyDoc_STRVAR(_sha3_sha3_224_copy__doc__, "copy($self, /)\n" "--\n" "\n" "Return a copy of the hash object."); #define _SHA3_SHA3_224_COPY_METHODDEF \ {"copy", (PyCFunction)_sha3_sha3_224_copy, METH_NOARGS, _sha3_sha3_224_copy__doc__}, static PyObject * _sha3_sha3_224_copy_impl(SHA3object *self); static PyObject * _sha3_sha3_224_copy(SHA3object *self, PyObject *Py_UNUSED(ignored)) { return _sha3_sha3_224_copy_impl(self); } PyDoc_STRVAR(_sha3_sha3_224_digest__doc__, "digest($self, /)\n" "--\n" "\n" "Return the digest value as a string of binary data."); #define _SHA3_SHA3_224_DIGEST_METHODDEF \ {"digest", (PyCFunction)_sha3_sha3_224_digest, METH_NOARGS, _sha3_sha3_224_digest__doc__}, static PyObject * _sha3_sha3_224_digest_impl(SHA3object *self); static PyObject * _sha3_sha3_224_digest(SHA3object *self, PyObject *Py_UNUSED(ignored)) { return _sha3_sha3_224_digest_impl(self); } PyDoc_STRVAR(_sha3_sha3_224_hexdigest__doc__, "hexdigest($self, /)\n" "--\n" "\n" "Return the digest value as a string of hexadecimal digits."); #define _SHA3_SHA3_224_HEXDIGEST_METHODDEF \ {"hexdigest", (PyCFunction)_sha3_sha3_224_hexdigest, METH_NOARGS, _sha3_sha3_224_hexdigest__doc__}, static PyObject * _sha3_sha3_224_hexdigest_impl(SHA3object *self); static PyObject * _sha3_sha3_224_hexdigest(SHA3object *self, PyObject *Py_UNUSED(ignored)) { return _sha3_sha3_224_hexdigest_impl(self); } PyDoc_STRVAR(_sha3_sha3_224_update__doc__, "update($self, obj, /)\n" "--\n" "\n" "Update this hash object\'s state with the provided string."); #define _SHA3_SHA3_224_UPDATE_METHODDEF \ {"update", (PyCFunction)_sha3_sha3_224_update, METH_O, _sha3_sha3_224_update__doc__}, PyDoc_STRVAR(_sha3_shake_128_digest__doc__, "digest($self, /, length)\n" "--\n" "\n" "Return the digest value as a string of binary data."); #define _SHA3_SHAKE_128_DIGEST_METHODDEF \ {"digest", (PyCFunction)_sha3_shake_128_digest, METH_VARARGS|METH_KEYWORDS, _sha3_shake_128_digest__doc__}, static PyObject * _sha3_shake_128_digest_impl(SHA3object *self, unsigned long length); static PyObject * _sha3_shake_128_digest(SHA3object *self, PyObject *args, PyObject *kwargs) { PyObject *return_value = NULL; static char *_keywords[] = {"length", NULL}; unsigned long length; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "k:digest", _keywords, &length)) goto exit; return_value = _sha3_shake_128_digest_impl(self, length); exit: return return_value; } PyDoc_STRVAR(_sha3_shake_128_hexdigest__doc__, "hexdigest($self, /, length)\n" "--\n" "\n" "Return the digest value as a string of hexadecimal digits."); #define _SHA3_SHAKE_128_HEXDIGEST_METHODDEF \ {"hexdigest", (PyCFunction)_sha3_shake_128_hexdigest, METH_VARARGS|METH_KEYWORDS, _sha3_shake_128_hexdigest__doc__}, static PyObject * _sha3_shake_128_hexdigest_impl(SHA3object *self, unsigned long length); static PyObject * _sha3_shake_128_hexdigest(SHA3object *self, PyObject *args, PyObject *kwargs) { PyObject *return_value = NULL; static char *_keywords[] = {"length", NULL}; unsigned long length; if (!PyArg_ParseTupleAndKeywords(args, kwargs, "k:hexdigest", _keywords, &length)) goto exit; return_value = _sha3_shake_128_hexdigest_impl(self, length); exit: return return_value; } /*[clinic end generated code: output=2eb6db41778eeb50 input=a9049054013a1b77]*/ pysha3-1.0.2/Modules/pymemsets.h0000664000175000017500000000075412120067420017300 0ustar heimesheimes00000000000000#ifndef PY_MEMSET_S_H #define PY_MEMSET_S_H 1 #include #include #ifndef _MSC_VER # include #endif #ifndef errno_t typedef int errno_t; #define errno_t errno_t #endif #ifndef rsize_t typedef size_t rsize_t; #define rsize_t rsize_t #endif #ifndef RSIZE_MAX /* Reasonable large value for bound check, 1 Gibibyte minus 1 Byte */ #define RSIZE_MAX ((rsize_t)1073741823U) #endif errno_t _Py_memset_s(void *, rsize_t, int, rsize_t); #endif /* PY_MEMSET_S_H */ pysha3-1.0.2/setup.cfg0000664000175000017500000000007313045652733015322 0ustar heimesheimes00000000000000[egg_info] tag_build = tag_date = 0 tag_svn_revision = 0 pysha3-1.0.2/pysha3.egg-info/0000775000175000017500000000000013045652733016402 5ustar heimesheimes00000000000000pysha3-1.0.2/pysha3.egg-info/PKG-INFO0000664000175000017500000002045113045652732017500 0ustar heimesheimes00000000000000Metadata-Version: 1.1 Name: pysha3 Version: 1.0.2 Summary: SHA-3 (Keccak) for Python 2.7 - 3.5 Home-page: https://github.com/tiran/pysha3 Author: Christian Heimes Author-email: christian@python.org License: PSFL (Keccak: CC0 1.0 Universal) Description: ====== pysha3 ====== SHA-3 wrapper (keccak) for Python. The package is a wrapper around the optimized Keccak Code Package, https://github.com/gvanas/KeccakCodePackage . The module is a standalone version of my SHA-3 module from Python 3.6 (currently under development). The code in sha3module.c has been modified to be compatible with Python 2.7 to 3.5. Python 2.6 and earlier are not supported. Updates since pysha 0.3 ======================= **pysha3 1.0 is not compatible with pysha3 0.3!** pysha3 < 1.0 used the old Keccak implementation. During the finalization of SHA3, NIST changed the delimiter suffix from 0x01 to 0x06. The Keccak sponge function stayed the same. pysha3 1.0 provides the previous Keccak hash, too. Platforms ========= pysha3 has been successfully tested on several platforms: - Linux (GCC, clang) on X86, X86_64 and ARMv6 (little endian) - Windows (VS 2008, VS 2010, VS2015) on X86 and X86_64 Usage ===== The `sha3` module contains several constructors for hash objects with a PEP 247 compatible interface. The module provides SHA3, SHAKE and Keccak: * `sha3_228()`, `sha3_256()`, `sha3_384()`, and `sha3_512()` * `shake_128()`, `shake_256()` * `keccak_228()`, `keccak_256()`, `keccak_384()`, and `keccak_512()` The `sha3` module monkey patches the `hashlib` module . The monkey patch is automatically activated with the first import of the `sha3` module. The `hashlib` module of Python 3.6 will support the four SHA-3 algorithms and the two SHAKE algorithms on all platforms. Therefore you shouldn't use the sha3 module directly and rather go through the `hashlib` interface:: >>> import sys >>> import hashlib >>> if sys.version_info < (3, 6): ... import sha3 >>> s = hashlib.sha3_512() >>> s.name 'sha3_512' >>> s.digest_size 64 >>> s.update(b"data") >>> s.hexdigest() 'ceca4daf960c2bbfb4a9edaca9b8137a801b65bae377e0f534ef9141c8684c0fedc1768d1afde9766572846c42b935f61177eaf97d355fa8dc2bca3fecfa754d' >>> s = hashlib.shake_256() >>> s.update(b"data") >>> s.hexdigest(4) 'c73dbed8' >>> s.hexdigest(8) 'c73dbed8527f5ae0' >>> s.hexdigest(16) 'c73dbed8527f5ae0568679f30ecc5cb6' >>> import sha3 >>> k = sha3.keccak_512() >>> k.update(b"data") >>> k.hexdigest() '1065aceeded3a5e4412e2187e919bffeadf815f5bd73d37fe00d384fe29f55f08462fdabe1007b993ce5b8119630e7db93101d9425d6e352e22ffe3dcb56b825' Changelog ========= pysha3 1.0.2 ------------ *Release: 05-Feb-2017* - Rename internal C extension to _pysha3 to avoild conflict with Python 3.6' _sha3 extension. pysha3 1.0.1 ------------ *Release: 24-Jan-2017* - Fix github.org -> github.com (Pi Delport) - Fix endianness checks for Python 2 (William Grant) - Fix changelog, the Christmas release was 1.0.0, not 1.1.0 pysha3 1.0.0 ------------ *Release date: 24-Dec-2016* - Synchronize with Python 3.6.0 release - Move all backport related additions to backport.inc - Fix flake8 violations pysha3 1.0b1 ------------ *Release date: 01-May-2016* - Update backend to use the latest Keccak Code Package. pysha3 now implements the official NIST standard. The old Keccak hashes are available with keccak prefix. - Add SHAKE support. - All sha3, shake and keccak variants are separate types instead of factory functions that return the same type. - Drop Python 2.6 and Python 3.0 to 3.3 support. - Fix typo that disabled threading optimization. - Add vector files for additional tests. - Add experimental HMAC support based on examples from http://wolfgang-ehrhardt.de/hmac-sha3-testvectors.html . - Test hashing of unaligned data. - Add ISO C11 memset_s() function as _Py_memset_s() in order to securely wipe memory that holds sensitive data. The page https://www.securecoding.cert.org/confluence/display/seccode/MSC06-C.+Be+aware+of+compiler+optimization+when+dealing+with+sensitive+data explains the motivation for memset_s(). - Add tox support. - Add Travis and appveyor integration. - Add _capacity_bits, _rate_bits and _suffix attributes for diagnostic purposes. pysha3 0.3 ---------- *Release date: 14-Oct-2012* - Fix 64bit big endian support - Add workaround for alignment error on 64bit SPARC machine by using the opt32 implementation. - block_size now returns NotImplemented to prevent users from using pysha3 with the hmac module. pysha3 0.2.2 ------------ *Release date: 07-Oct-2012* - Re-add brg_endian.h to fix issue on Solaris (big endian platform) pysha3 0.2.1 ------------ *Release date: 06-Oct-2012* - Fix MANIFEST.in to include Makefile and tests.py - Add setup.py test command with hack for inplace builds - Enhance README.txt and fixed its markup pysha3 0.2 ---------- *Release date: 06-Oct-2012* - Change directory struct to use the same directory layout as Python 3.4. - Remove C++ comments from Keccak sources for ANSI C compatibility. - Declare all Keccak functions and globals as static to avoid name clashes. - Remove alias sha3() for sha3_512(). - Add block_size attribute. Keccak has a internal sponge size of 1600 bits. - Release GIL around SHA3_update() calls. - Monkey patch the hashlib module to support, e.g. hashlib.sha3_512() and hashlib.new("sha3_512") - Release GIL around SHA3_update() when the data exceeds a certain size. - Fix build on platforms with an unsigned 64bit integer type (uint64_t). The module falls back to 32bit implementation of Keccak with interleave tables. pysha3 0.1 ---------- *Release date: 04-Oct-2012* - first release - based on KeccakReferenceAndOptimized-3.2.zip Keywords: sha3 sha-3 keccak hash Platform: POSIX Platform: Windows Classifier: Development Status :: 4 - Beta Classifier: Intended Audience :: Developers Classifier: License :: OSI Approved :: Python Software Foundation License Classifier: License :: CC0 1.0 Universal (CC0 1.0) Public Domain Dedication Classifier: Natural Language :: English Classifier: Operating System :: MacOS :: MacOS X Classifier: Operating System :: POSIX Classifier: Operating System :: POSIX :: BSD Classifier: Operating System :: POSIX :: Linux Classifier: Operating System :: Microsoft :: Windows Classifier: Programming Language :: C Classifier: Programming Language :: Python Classifier: Programming Language :: Python :: 2 Classifier: Programming Language :: Python :: 2.7 Classifier: Programming Language :: Python :: 3 Classifier: Programming Language :: Python :: 3.4 Classifier: Programming Language :: Python :: 3.5 Classifier: Topic :: Security :: Cryptography pysha3-1.0.2/pysha3.egg-info/top_level.txt0000664000175000017500000000001513045652732021127 0ustar heimesheimes00000000000000_pysha3 sha3 pysha3-1.0.2/pysha3.egg-info/dependency_links.txt0000664000175000017500000000000113045652732022447 0ustar heimesheimes00000000000000 pysha3-1.0.2/pysha3.egg-info/SOURCES.txt0000664000175000017500000000230513045652733020266 0ustar heimesheimes00000000000000CHANGES.txt LICENSE MANIFEST.in Makefile README.txt setup.py sha3.py tests.py Modules/hashlib.h Modules/pymemsets.c Modules/pymemsets.h Modules/_sha3/backport.inc Modules/_sha3/cleanup.py Modules/_sha3/sha3module.c Modules/_sha3/clinic/sha3module.c.h Modules/_sha3/kcp/KeccakHash.c Modules/_sha3/kcp/KeccakHash.h Modules/_sha3/kcp/KeccakP-1600-64.macros Modules/_sha3/kcp/KeccakP-1600-SnP-opt32.h Modules/_sha3/kcp/KeccakP-1600-SnP-opt64.h Modules/_sha3/kcp/KeccakP-1600-SnP.h Modules/_sha3/kcp/KeccakP-1600-inplace32BI.c Modules/_sha3/kcp/KeccakP-1600-opt64-config.h Modules/_sha3/kcp/KeccakP-1600-opt64.c Modules/_sha3/kcp/KeccakP-1600-unrolling.macros Modules/_sha3/kcp/KeccakSponge.c Modules/_sha3/kcp/KeccakSponge.h Modules/_sha3/kcp/KeccakSponge.inc Modules/_sha3/kcp/PlSnP-Fallback.inc Modules/_sha3/kcp/SnP-Relaned.h Modules/_sha3/kcp/align.h Modules/_sha3/kcp/brg_endian.h pysha3.egg-info/PKG-INFO pysha3.egg-info/SOURCES.txt pysha3.egg-info/dependency_links.txt pysha3.egg-info/top_level.txt vectors/keccak_224.txt vectors/keccak_256.txt vectors/keccak_384.txt vectors/keccak_512.txt vectors/sha3_224.txt vectors/sha3_256.txt vectors/sha3_384.txt vectors/sha3_512.txt vectors/shake_128.txt vectors/shake_256.txtpysha3-1.0.2/vectors/0000775000175000017500000000000013045652733015166 5ustar heimesheimes00000000000000pysha3-1.0.2/vectors/sha3_512.txt0000664000175000017500000030044112711152670017150 0ustar heimesheimes00000000000000# ShortMsgKAT_SHA3-512.txt ,a69f73cca23a9ac5c8b567dc185a756e97c982164fe25859e0d1dcc1475c80a615b2123af1f5f94c11e3e9402c3ac558f500199d95b6d3e301758586281dcd26 cc,3939fcc8b57b63612542da31a834e5dcc36e2ee0f652ac72e02624fa2e5adeecc7dd6bb3580224b4d6138706fc6e80597b528051230b00621cc2b22999eaa205 41fb,aa092865a40694d91754dbc767b5202c546e226877147a95cb8b4c8f8709fe8cd6905256b089da37896ea5ca19d2cd9ab94c7192fc39f7cd4d598975a3013c69 1f877c,cb20dcf54955f8091111688beccef48c1a2f0d0608c3a575163751f002db30f40f2f671834b22d208591cfaf1f5ecfe43c49863a53b3225bdfd7c6591ba7658b c1ecfdfc,d4b4bdfef56b821d36f4f70ab0d231b8d0c9134638fd54c46309d14fada92a2840186eed5415ad7cf3969bdfbf2daf8cca76abfe549be6578c6f4143617a4f1a 21f134ac57,584219a84e8796076bf1178b14b9d1e2f96a4b4ef11f10cc516fbe1a29639d6ba74fb92815f9e3c5192ed4dca20aea5b109d52237c9956401fd44b221f82ab37 c6f50bb74e29,4345b92a2ab7eadb6a24ee1d175ac258ccf2f694ac09ec9d47399e4d96f61f30b322c5438c51bacd0d597d00471a41ed8e9c9f146bbc807e6bc385f850fbabfe 119713cc83eeef,50081c93bf73ecc54a5ffe43fc14f8baeedbe7da0302ac984c9e668389886bd064bab26ddcb616eb4e0e726042b19f3fd50bdd0d2c5b34892e00e6f399de254f 4a4f202484512526,150d787d6eb49670c2a4ccd17e6cce7a04c1fe30fce03d1ef2501752d92ae04cb345fd42e51038c83b2b4f8fd438d1b4b55cc588c6b913132f1a658fb122cb52 1f66ab4185ed9b6375,a13c951c6c51f236a0197a29a8994b1c7294e17ba518ed1029d6f54ad739d8765920281bbb854d16fbb60e0385afd6e6e433e63aaa77e73b8bee7fde569d6875 eed7422227613b6f53c9,5a566fb181be53a4109275537d80e5fd0f314d68884529ca66b8b0e9f240a673b64b28fffe4c1ec4a5cef0f430229c5757ebd172b4b0b68a81d8c58a9e96e164 eaeed5cdffd89dece455f1,7c77e30ece98ef88964458683c5e0287b5896e166ccca71d2bfd8d8bbc6d6fe589a0225eb1d6aa7b220f1410c9a9ec0672ccddaa1732c3e2877fb5d232c2a428 5be43c90f22902e4fe8ed2d3,f5df5952924e933330bd5bd7627a62c3672f24a4991dadaf78816e023769c91d1910537f9c19fcde60fa6de927982dd5f5970f74e30f2b040f67348a3394c48c a746273228122f381c3b46e4f1,80a1317ec534ed48d8a813e0bca0cee04f705a2f86352306a932edc548b9a8f1cf79f95027f43bdada8213449c54f68f4dd800b15c4abad87ad7a3b371a7c918 3c5871cd619c69a63b540eb5a625,54c274c3ddf26d824f5fdfcb349a600890057eb2e2022245cbb8bdc0d2240cfa8348f02191fabc0e10f9287185211c9f569132ee6dde4c396668b4bb50aefc3f fa22874bcc068879e8ef11a69f0722,00767236a7352551b283a8ecf4c79274f8c4cea553ab43fc71cf22fb2f6865ad02c88bf0092f213057340c85a5318f62f4991c00c63cb0558cbcf13d6d84e73d 52a608ab21ccdd8a4457a57ede782176,001618372e75147af90c0cf16c3bbdaa069ddbc62483b392d028ded49f75084a5dfcc53aecd9f57ddbb73daa041fd71089d8fb5edf6cfaf6f1e4e25ad3de266c 82e192e4043ddcd12ecf52969d0f807eed,9644e3c90b67e22124e96dfedce53d33c460f132868f0975d18b22cfd59f637dd85aa405e39808a45570a498c0b8f2cba59f8e1437eaef89f20b88298adfa2de 75683dcb556140c522543bb6e9098b21a21e,4739994390728f4a938df7b3201cd63771858453f0ff1dde9a2b9c38a27a0f6c868460d00ee03ddcb0f063f5f8bb7cb0959b7a222259da0f2c57fa400b50985b 06e4efe45035e61faaf4287b4d8d1f12ca97e5,af69a46527c17117e6dff32cba289eddd1eecda13e5313e46678eb8006e7639854c3970dfeb4d907db1151c1c5ee25ca6f195b09ca5a5cc97a4d64ac4c75578e e26193989d06568fe688e75540aea06747d9f851,191cef1c6aa009b1aba674be2b3f0da418fdf9e6a7ecf2be42ac14f7d6e07331425133a83b4e0161cc7debf9dcd7fe3787dcb6622a38475189edfe1de6b053d6 d8dc8fdefbdce9d44e4cbafe78447bae3b5436102a,a60d7587424b7242d93bcce515f1c75ae2be7710f72ed3f4e5ea8bc2ba8d64099fe42b88a295e12fdafab441d772c4a9a7d794b27788edea271571a04305f253 57085fd7e14216ab102d8317b0cb338a786d5fc32d8f,09fcad97ea3cb6b7fc61580de0968d238006b7e71f0bd58aba2aa9d4adb855d7606e7632138ccc0aa065ca0b92422262e029da17d73cd3011ff285706c7fc1ae a05404df5dbb57697e2c16fa29defac8ab3560d6126fa0,f61faab080cf9a5f75407b081a03def4f49a601a2bb832e8c6401be0c98b3ceb3f75c922a91bd5060b3217f737404ef4612b9a009b69ca648b1e37b2ed49229d aecbb02759f7433d6fcb06963c74061cd83b5b3ffa6f13c6,51de0a622fc6fc702c7c2db5ccb05ca0ddf792986e44b4d336a7a5daf19a20a371d9bf7dde822ecdd0a4ce28e4a0b46fe51a2aabefa7865807ef3d3b1887f14d aafdc9243d3d4a096558a360cc27c8d862f0be73db5e88aa55,6286c3db87d3b45cfd4de85a7add18e07ae22f1f0f4675e1d4e1fc77633734d7962818a9f3b96b37fe774fc26dea787485317b9622275f63a7dd6d62d650d307 7bc84867f6f9e9fdc3e1046cae3a52c77ed485860ee260e30b15,8146c43a0ffe481872142f56a9cea44332edc76b4e99c2bdc39d7f80b2a6b554c7598f09855bf7abc5e6c048be76f5f369ebb2884e6e37f186e8719df3d523e4 fac523575a99ec48279a7a459e98ff901918a475034327efb55843,4b86fbf9dfb6767eb660af9c30983ed65b6fd051247ab54767dfb49530eb3c01014eb26df63e536cf55e0bce2f62654fb2fce3839b4bfd301570b1ab794df67d 0f8b2d8fcfd9d68cffc17ccfb117709b53d26462a3f346fb7c79b85e,21132fc11f6040ad493d627027c752ce29816589de7be78562914b63d1a9219803ddbd9673aa749f37ff4d6e1b5ae2a12633ba8b0c9994e031ebf6c42e58a793 a963c3e895ff5a0be4824400518d81412f875fa50521e26e85eac90c04,8a5374d92ff9a58e0451e609aa5c0c5c172bb2068c80562d0324f9cb6a037436910c6593f950c44374b4e5bf6f6d3a436ece6daaeb56d147d8cd839cca35eac3 03a18688b10cc0edf83adf0a84808a9718383c4070c6c4f295098699ac2c,71025d089a39d27327c46c27bd4e7565ddbf9c286f185a08178601c3bab4667f368a3a8bddacf25b2b0aa5c9e0cd6c87dc32c854027a8954b5c6afd3a85097ac 84fb51b517df6c5accb5d022f8f28da09b10232d42320ffc32dbecc3835b29,dc29eb7130812a652af3ff9b77629684634502ea6667e7e9f80090ec2a9d690c8c9a78645fb04d9cd269e706ee2c96e74207fbbda559dc285c9bc52f15a256ca 9f2fcc7c90de090d6b87cd7e9718c1ea6cb21118fc2d5de9f97e5db6ac1e9c10,b087c90421aebf87911647de9d465cbda166b672ec47ccd4054a7135a1ef885e7903b52c3f2c3fe722b1c169297a91b82428956a02c631a2240f12162c7bc726 de8f1b3faa4b7040ed4563c3b8e598253178e87e4d0df75e4ff2f2dedd5a0be046,d2a95c6fc0f39c8f7a86c4dd6261a79c940fcb313bcfba9bf71527f5bc70ef827cd97dfa18280e5ddee5ccbc1d63ce88ce2bcdd82dab610f79867a7c20b11e4f 62f154ec394d0bc757d045c798c8b87a00e0655d0481a7d2d9fb58d93aedc676b5a0,af8c0fbd72b3f807db95c9231bc4e93153dc6608b22f4707316aab3d69af0e63291b569f118b5c9e693c5bac4630c4a923a4743581246ad3446dda4f9076fddb b2dcfe9ff19e2b23ce7da2a4207d3e5ec7c6112a8a22aec9675a886378e14e5bfbad4e,bfc7d968d45342069807c5f1b96425cfffe99ed136d47665e902e026c118701bb7c3e7fd691785115cfdb2ef235a66bcc1384a1d088b8cca90d9d560913549de 47f5697ac8c31409c0868827347a613a3562041c633cf1f1f86865a576e02835ed2c2492,9a348540ab669cdd8914426fbbad192ba0db16583e8d4e867b66cc78c6496e4d83ddbf7b972b0668df7903b0fe9ab82b65153f947cf2af2591121c9d1a78e515 512a6d292e67ecb2fe486bfe92660953a75484ff4c4f2eca2b0af0edcdd4339c6b2ee4e542,ffdb649d1aa7ff269b9bb0ae6192f7bcbc06612528df0e68521d5c891e9bba129271a07dc56393bb21218f5e2fb92cfff833432066aa6380f3557a0748e65b33 973cf2b4dcf0bfa872b41194cb05bb4e16760a1840d8343301802576197ec19e2a1493d8f4fb,9665808d39b4becfdd9aa8020a0a72cfd4f823a15d670d51278a4ae95507e16020aeded6e6c0e2dab0bad890a9e7552403d2aa8d1ebc0b8eaec9a3a8dbb2a9ef 80beebcd2e3f8a9451d4499961c9731ae667cdc24ea020ce3b9aa4bbc0a7f79e30a934467da4b0,7aba6b9f8f18d9d72b883eb988a5f4ffcc0217a3da316aff11b38976e90b0736cb000f522dbf2ddcbb61ba4bf44c356ec5b46fc86a5133f971a94fe2a9983260 7abaa12ec2a7347674e444140ae0fb659d08e1c66decd8d6eae925fa451d65f3c0308e29446b8ed3,589c46625a6ac9a2c9c9a884f427c3c032887ae53a69932b72e1e3796bb9568929d163395a3aa8b2ab23c564937cd729206d9b62cc60353b68a69a739616eb35 c88dee9927679b8af422abcbacf283b904ff31e1cac58c7819809f65d5807d46723b20f67ba610c2b7,f7cd8737a1ab36b37612e57d1e5a3d4a269d18cf2cb7644a12540e3b184631794ec1a1da118a109aef514db3590fe27be0752ec0826acaf458fb0a754bdc51f1 01e43fe350fcec450ec9b102053e6b5d56e09896e0ddd9074fe138e6038210270c834ce6eadc2bb86bf6,b21bdede484ca18f672058667cb2f2dc922c44351e95c2cda75af7e45577bf50e3f203139f6262279adfc3221b94a072641f8bdb55dcc02f21d0879eb5e7466a 337023370a48b62ee43546f17c4ef2bf8d7ecd1d49f90bab604b839c2e6e5bd21540d29ba27ab8e309a4b7,db56265b9346968a390e9841d5b7878a158baed946068e808e456735a67e49220fab66239d5d506dd75a58f2c56e25c9c105a3827c1434c67255cfc9101a5d09 6892540f964c8c74bd2db02c0ad884510cb38afd4438af31fc912756f3efec6b32b58ebc38fc2a6b913596a8,4c825fd9a795ccd20a0892da1572b9b1f70ba05ff2d2da3a4726a74f9ab5323ccbc4290459c1bb46f0a1e1ffc357ff4766f4f4879daa91d31eca986aa30c7b00 f5961dfd2b1ffffda4ffbf30560c165bfedab8ce0be525845deb8dc61004b7db38467205f5dcfb34a2acfe96c0,8445a05766a30ddd0080589f8e8cbf7ec59fb7a3ce73c0209791b19cf712cf1635d63c8356822272309c6b9f01637088878dbffbedb26d2a566185225c4da56b ca061a2eb6ceed8881ce2057172d869d73a1951e63d57261384b80ceb5451e77b06cf0f5a0ea15ca907ee1c27eba,2dc25165cf317ed7de2b4f2fd0995d7785978ca8581ea8033e912f2e44ee613debfc5535c48d63838f325d1416b9180c20bde82614504b7161f9860530eca70c 1743a77251d69242750c4f1140532cd3c33f9b5ccdf7514e8584d4a5f9fbd730bcf84d0d4726364b9bf95ab251d9bb,cb6110a02d7ca636463f6e3502ccf0173b000482c7e002ad9277c1d10317bddebc3da7f91d0173e3e2f9552bdfdea4dd1afbf7508b096aab1804921e95754e78 d8faba1f5194c4db5f176fabfff856924ef627a37cd08cf55608bba8f1e324d7c7f157298eabc4dce7d89ce5162499f9,7ef3a2894c6ecbc4201b15348f90671515accba3c8166621f864a9184bf08c3f5a895f6b599d3cb41f20a8a1df25ae84f1a6d7c8de74fb7cef48f7e96fde8d43 be9684be70340860373c9c482ba517e899fc81baaa12e5c6d7727975d1d41ba8bef788cdb5cf4606c9c1c7f61aed59f97d,39c7ae0f80129d9d2980a6246e2b6f10a39efafd694ded12a6089509d95ece506dc38c0a9de487d9d401db1f15193404911069533bcae4c48c53f27bee3ce0ac 7e15d2b9ea74ca60f66c8dfab377d9198b7b16deb6a1ba0ea3c7ee2042f89d3786e779cf053c77785aa9e692f821f14a7f51,9b8a7d2f8519ad6dc3d2bc5b696b354c5a8b4796402ce1242c52638eea6893a1269820a642bc9efe56cd7e26dc46e97a7fc58faf3f1a7a25f86ecdc1f2f17e64 9a219be43713bd578015e9fda66c0f2d83cac563b776ab9f38f3e4f7ef229cb443304fba401efb2bdbd7ece939102298651c86,b5ceef23f56be807b616c7fda4867a1d12d0a16845459fc704ce631ad3279ab222dca7addae595d289cba8996d46655fa9b6be58700302e655c51c825f31bb2e c8f2b693bd0d75ef99caebdc22adf4088a95a3542f637203e283bbc3268780e787d68d28cc3897452f6a22aa8573ccebf245972a,143d024fa75c8d46273589b8f78432d49ef14178e4aaa27dc366c9cb787f24b73f4197a722f13031181a6fa6e4f66127893da7b23a579bb93fe7d737a4194093 ec0f99711016c6a2a07ad80d16427506ce6f441059fd269442baaa28c6ca037b22eeac49d5d894c0bf66219f2c08e9d0e8ab21de52,0f48d008dd3aa630e8261658a55b565b6773992426b08592b4c1d77a58b067f05e25974e501628a2db632f2dddd73673119ada5674d0ce92c7aa908b9e9c435e 0dc45181337ca32a8222fe7a3bf42fc9f89744259cff653504d6051fe84b1a7ffd20cb47d4696ce212a686bb9be9a8ab1c697b6d6a33,297498639fc7aa4152654e468e08f29affd7061d44e3f532be4bac169c877a2ea7b4d70d6bc0f678be08aa064258ef57111310d13b889712d06530b690841dbe de286ba4206e8b005714f80fb1cdfaebde91d29f84603e4a3ebc04686f99a46c9e880b96c574825582e8812a26e5a857ffc6579f63742f,1b6da16151fcd18383372683480119a304796b2a5e54f7edc6c7bc86817359e73f6fc5587c77bfc71b56ec67905fa7f15193f9f13cfa190bc7b05503a5782c8a eebcc18057252cbf3f9c070f1a73213356d5d4bc19ac2a411ec8cdeee7a571e2e20eaf61fd0c33a0ffeb297ddb77a97f0a415347db66bcaf,b2f40935e7c9018814c4e2721d9b5aeeed3370690378e472bd29f227442ca4942b06189c346fda498123ece59018e42c8b7ee38191f97789b4aa93223a8d80ef 416b5cdc9fe951bd361bd7abfc120a5054758eba88fdd68fd84e39d3b09ac25497d36b43cbe7b85a6a3cebda8db4e5549c3ee51bb6fcb6ac1e,c8d242fb5ff1c6cd11a040aeaf35cc09e355a975e04ded1d8341878bed5dff8bbbd1b69f4d122ce53309ac08753b95d2a57721dfd12e70a8ef12e11e16de0fd9 5c5faf66f32e0f8311c32e8da8284a4ed60891a5a7e50fb2956b3cbaa79fc66ca376460e100415401fc2b8518c64502f187ea14bfc9503759705,d1d5d5dd7d196b87be4a38f2d9b4a69df9dfe0a6e8ce71b08cf22c7f670ecf273eaf395d12fc63e1741def113cc7104970194a7c7c807e5319d7bb702f20b568 7167e1e02be1a7ca69d788666f823ae4eef39271f3c26a5cf7cee05bca83161066dc2e217b330df821103799df6d74810eed363adc4ab99f36046a,d812470b2d135b6e1bc0c85dc0652bf9f6c2f9ee707a2e667181cc9f689bc7df9cc999b08716868afac78244b151b725a027d9250ab7a073a469e7f09bdb0b55 2fda311dbba27321c5329510fae6948f03210b76d43e7448d1689a063877b6d14c4f6d0eaa96c150051371f7dd8a4119f7da5c483cc3e6723c01fb7d,203ef6bb5132a9d44eae93c7202b1469c2c2b93706d0a31b29223c411a39550f60f39b9556fd040bfb5f9f7099313b8874c8ed677cfc5f93d9a2941a9b0139de 95d1474a5aab5d2422aca6e481187833a6212bd2d0f91451a67dd786dfc91dfed51b35f47e1deb8a8ab4b9cb67b70179cc26f553ae7b569969ce151b8d,23bead09707a77b295fd22fe001282338c2d368302a05fb114ba2a012c4defcf06f3887d6db7a0a1de04bc399bde92d6be71904a9aa7b92bedfa0203f1d8b06f c71bd7941f41df044a2927a8ff55b4b467c33d089f0988aa253d294addbdb32530c0d4208b10d9959823f0c0f0734684006df79f7099870f6bf53211a88d,93a8db85774b321090801df4dc3cc75e94af63ff6dcf50bd210e5b65fb35e1beaeded55602eb32380726029834982d77b434e94179d0a3ee1059345910ee1dcc f57c64006d9ea761892e145c99df1b24640883da79d9ed5262859dcda8c3c32e05b03d984f1ab4a230242ab6b78d368dc5aaa1e6d3498d53371e84b0c1d4ba,3b7d98ff3152b2024aad4fa0b40dc642e842d453305ecef278574e386172f3c164e4efb9c2951a23fc73d83c16b4900fb92aeb8efe06b58f918bc4a481e4c238 e926ae8b0af6e53176dbffcc2a6b88c6bd765f939d3d178a9bde9ef3aa131c61e31c1e42cdfaf4b4dcde579a37e150efbef5555b4c1cb40439d835a724e2fae7,eb5067bf762a291cf258ad69a816a0b089e0bd44f8e5b74cf60bce64734e59853ccb8d091cd2e33f90aa063fb7942cf5965d459200144c1a0801abd69a9a094a 16e8b3d8f988e9bb04de9c96f2627811c973ce4a5296b4772ca3eefeb80a652bdf21f50df79f32db23f9f73d393b2d57d9a0297f7a2f2e79cfda39fa393df1ac00,b0e23d600ba4215f79d50047bbfed50df7d6e769514d796afd166deeca88bd1cbe0afc72a41e0317a223225b4f5882f723afcba3af7c457eb525946da6c53bb0 fc424eeb27c18a11c01f39c555d8b78a805b88dba1dc2a42ed5e2c0ec737ff68b2456d80eb85e11714fa3f8eabfb906d3c17964cb4f5e76b29c1765db03d91be37fc,83021062117da99327e521d7c91331208bf3f0a972a6c755eca46760c0984871fe03724a51fb5441c3cdd3d24fa1b8127510d6a42cfe18b08e8096ed702ef33c abe3472b54e72734bdba7d9158736464251c4f21b33fbbc92d7fac9a35c4e3322ff01d2380cbaa4ef8fb07d21a2128b7b9f5b6d9f34e13f39c7ffc2e72e47888599ba5,bca9f06b6b9ab8f76c4f3dbe677d5b4b3103423644484c77cdd8c5dd6c1a0bf717c76e83da9b2b4edfe4cc133c1fc86396e8c3a9e42fdd20519fcaa19969189f 36f9f0a65f2ca498d739b944d6eff3da5ebba57e7d9c41598a2b0e4380f3cf4b479ec2348d015ffe6256273511154afcf3b4b4bf09d6c4744fdd0f62d75079d440706b05,dcdf7617f79da8475b3a4db1306c9caf87f1ae85ec97721892d8e20d0e54ec82ee7a0f2d17f21a61aecd89a6c4cf5019d7b8077447efe03def5208010a8a1e84 abc87763cae1ca98bd8c5b82caba54ac83286f87e9610128ae4de68ac95df5e329c360717bd349f26b872528492ca7c94c2c1e1ef56b74dbb65c2ac351981fdb31d06c77a4,9b8c7142180f0ed85359b6d186ae05b77b2db7c3e1f066392e733b7eeffd7c11f7a6c0c570273a1f3fea1a0929d017c7a4fa00175b5aba76861bca7ee806458b 94f7ca8e1a54234c6d53cc734bb3d3150c8ba8c5f880eab8d25fed13793a9701ebe320509286fd8e422e931d99c98da4df7e70ae447bab8cffd92382d8a77760a259fc4fbd72,3ab73a0a75b997c0ee8329c33e6ef1389e9821711867f775af29517edffbe410d037143c6431fded3d8ce728086c3512e94f038b9243b50cb820dc2445535d91 13bd2811f6ed2b6f04ff3895aceed7bef8dcd45eb121791bc194a0f806206bffc3b9281c2b308b1a729ce008119dd3066e9378acdcc50a98a82e20738800b6cddbe5fe9694ad6d,def4ab6cda8839729a03e000846604b17f03c5d5d7ec23c483670a13e11573c1e9347a63ec69a5abb21305f9382ecdaaabc6850f92840e86f88f4dabfcd93cc0 1eed9cba179a009ec2ec5508773dd305477ca117e6d569e66b5f64c6bc64801ce25a8424ce4a26d575b8a6fb10ead3fd1992edddeec2ebe7150dc98f63adc3237ef57b91397aa8a7,a3e168b0d6c143ee9e17eae92930b97e6600356b73aebb5d68005dd1d07494451a37052f7b39ff030c1ae1d7efc4e0c3667eb7a76c627ec14354c4f6a796e2c6 ba5b67b5ec3a3ffae2c19dd8176a2ef75c0cd903725d45c9cb7009a900c0b0ca7a2967a95ae68269a6dbf8466c7b6844a1d608ac661f7eff00538e323db5f2c644b78b2d48de1a08aa,635741b37f66cd5ce4dbd1f78accd907f96146e770b239046afb9181910b612d0e65841ff866806eed83c3ae7012fc55e42c3ffc9c6e3d03ce2870442f293ab4 0efa26ac5673167dcacab860932ed612f65ff49b80fa9ae65465e5542cb62075df1c5ae54fba4db807be25b070033efa223bdd5b1d3c94c6e1909c02b620d4b1b3a6c9fed24d70749604,d6299a21cb1b31f0a6eb67d82d4e738249013b75c9bcb4a4fe419036a6043a7103e9ca9b7d25759177c4b64001377093cf39f35c9b1625c6819369fa375fa49d bbfd933d1fd7bf594ac7f435277dc17d8d5a5b8e4d13d96d2f64e771abbd51a5a8aea741beccbddb177bcea05243ebd003cfdeae877cca4da94605b67691919d8b033f77d384ca01593c1b,07f0a184734ba4bb721f36d7b1b383f6bf99cd5f75941ecf1ff2b325f03af970d1db1f035975702093f59a7610bf054d12017ecd6109177cf061ab1496f87860 90078999fd3c35b8afbf4066cbde335891365f0fc75c1286cdd88fa51fab94f9b8def7c9ac582a5dbcd95817afb7d1b48f63704e19c2baa4df347f48d4a6d603013c23f1e9611d595ebac37c,89070b8b1e322ccf9d6307edc11fc34e13874c4977da9f6035d06faf647d7f7d54b8250b541744298aacd4c54d9b41b4085dd35c491a461d504bdb42fc12f03c 64105eca863515c20e7cfbaa0a0b8809046164f374d691cdbd6508aaabc1819f9ac84b52bafc1b0fe7cddbc554b608c01c8904c669d8db316a0953a4c68ece324ec5a49ffdb59a1bd6a292aa0e,6c3fbe32556445dad430cf15fe1243b6ab44349eec2be1132b0680e5edf0b08b55f1abe473439c5e0750132996195fd120c267b9100c47777b339132ec34cc80 d4654be288b9f3b711c2d02015978a8cc57471d5680a092aa534f7372c71ceaab725a383c4fcf4d8deaa57fca3ce056f312961eccf9b86f14981ba5bed6ab5b4498e1f6c82c6cae6fc14845b3c8a,6ae3e656cf94db10ae3c185362a6625cec53e0ba4dc7d1608a3f2fca3c4f31f89fe1b06fe9ca345e3f5e967a3ebcf6a1a16e24521d5c4690d9b642483ac7a896 12d9394888305ac96e65f2bf0e1b18c29c90fe9d714dd59f651f52b88b3008c588435548066ea2fc4c101118c91f32556224a540de6efddbca296ef1fb00341f5b01fecfc146bdb251b3bdad556cd2,ada8e78ce3e6d447ba2b7dcf98718fe7d43b38d68117e5779a41edd8fa72198e3b3c1c0215925bc9d007fd2c355edd668a0c27ef0ff89f76cf85363d4c9ee001 871a0d7a5f36c3da1dfce57acd8ab8487c274fad336bc137ebd6ff4658b547c1dcfab65f037aa58f35ef16aff4abe77ba61f65826f7be681b5b6d5a1ea8085e2ae9cd5cf0991878a311b549a6d6af230,3569d9a08dfb0001be713940c464c119f5a4c1b9ff97d8297d04c7b2dce2d684aee16443c32e5bb2355ac8a336249d1baaeab4fbd04ab982d6b178dd0a5b5bc8 e90b4ffef4d457bc7711ff4aa72231ca25af6b2e206f8bf859d8758b89a7cd36105db2538d06da83bad5f663ba11a5f6f61f236fd5f8d53c5e89f183a3cec615b50c7c681e773d109ff7491b5cc22296c5,1343e3cd162d7986431babe66383b84029665691e36caf97cdaca17ee9e97d74201d2a828d72e9fbbd5e07831d90f09eaf3c863bd102cdb1edebc8ad58a53ece e728de62d75856500c4c77a428612cd804f30c3f10d36fb219c5ca0aa30726ab190e5f3f279e0733d77e7267c17be27d21650a9a4d1e32f649627638dbada9702c7ca303269ed14014b2f3cf8b894eac8554,bba01dbea9660f9c2ad74460b67a82440701eb995143ffcf7434b5d2de4e35c82cc757df776d46199dd8e7355aeb1f42a88f6f0bb50fd239c73898156e4ddbbc 6348f229e7b1df3b770c77544e5166e081850fa1c6c88169db74c76e42eb983facb276ad6a0d1fa7b50d3e3b6fcd799ec97470920a7abed47d288ff883e24ca21c7f8016b93bb9b9e078bdb9703d2b781b616e,3268bc24e29392dda1677b7a3ce3111994482d17bad1c150ac885f1d29c308657c69fd4f7ce5967d04fccb920dacb00d0ce09536ee92a6664cb20e692d91d8ce 4b127fde5de733a1680c2790363627e63ac8a3f1b4707d982caea258655d9bf18f89afe54127482ba01e08845594b671306a025c9a5c5b6f93b0a39522dc877437be5c2436cbf300ce7ab6747934fcfc30aeaaf6,ec13e390fa65fdc11054e32c9f5bf5e6e97fbc34c28089346ff22d9762bebf6a14fa7f9c2e6643d1ed7ec6925d0fa2098f8149058e99d02ad5cb61b4ccba6467 08461f006cff4cc64b752c957287e5a0faabc05c9bff89d23fd902d324c79903b48fcb8f8f4b01f3e4ddb483593d25f000386698f5ade7faade9615fdc50d32785ea51d49894e45baa3dc707e224688c6408b68b11,6fd5a334d4b7f9c72a8db1292cc8f19bf2a00f5c226c1636248024723cb876070a9657f48ab3b1d4229202b7bbc64053a48c3ff6b93ab11a2af3237721c9cc09 68c8f8849b120e6e0c9969a5866af591a829b92f33cd9a4a3196957a148c49138e1e2f5c7619a6d5edebe995acd81ec8bb9c7b9cfca678d081ea9e25a75d39db04e18d475920ce828b94e72241f24db72546b352a0e4,016c80cbabed07c50f2c1b677c43e52de8d11751e54e596e0c04b3837a7e34a9ff5d2e98e7c58182879c15847d18dce88ea900337bc448112e98ce1118820c58 b8d56472954e31fb54e28fca743f84d8dc34891cb564c64b08f7b71636debd64ca1edbdba7fc5c3e40049ce982bba8c7e0703034e331384695e9de76b5104f2fbc4535ecbeebc33bc27f29f18f6f27e8023b0fbb6f563c,a4e85ff86482c10c6aaabc79a573cbf89a0a927110d755f22b529bd7cf3f6cc6cb9861e509657242a78b0c0af78ff97abcc1a8388270d6c8d302d45c9ba58404 0d58ac665fa84342e60cefee31b1a4eacdb092f122dfc68309077aed1f3e528f578859ee9e4cefb4a728e946324927b675cd4f4ac84f64db3dacfe850c1dd18744c74ceccd9fe4dc214085108f404eab6d8f452b5442a47d,b97afb77d39f8904ae8a5129a7ddc8ec9290ac40356e1b53dd057fa7584ba31afaf9ef5b657097fc115eaa33e7ede36dd00832d677ebd07c34b071e73580dd3a 1755e2d2e5d1c1b0156456b539753ff416651d44698e87002dcf61dcfa2b4e72f264d9ad591df1fdee7b41b2eb00283c5aebb3411323b672eaa145c5125185104f20f335804b02325b6dea65603f349f4d5d8b782dd3469ccd,ab2fc59a43a2666c9206b9317479285e660b670c6f111f999556e8151e0eb8d12bc82c9a7e7b3f8d6f382a8d96775ea417f754ff552e1bac271fbd08240f1b86 b180de1a611111ee7584ba2c4b020598cd574ac77e404e853d15a101c6f5a2e5c801d7d85dc95286a1804c870bb9f00fd4dcb03aa8328275158819dcad7253f3e3d237aeaa7979268a5db1c6ce08a9ec7c2579783c8afc1f91a7,0a673af84e2d2317b80a873bfe38b252872708b38af9b956e3554ac2dce2f77c815593d99930e7aa666c57b59730712e5c4a9b57849eddd712a378040eb824d8 cf3583cbdfd4cbc17063b1e7d90b02f0e6e2ee05f99d77e24e560392535e47e05077157f96813544a17046914f9efb64762a23cf7a49fe52a0a4c01c630cfe8727b81fb99a89ff7cc11dca5173057e0417b8fe7a9efba6d95c555f,1d34645463ebbd932c730e593d9c108aa86807db6785f05c4ce80f3e8302f87efbccb1ab884e25f1dcd5485d385502995e7abe2ef11bd3469e036d7eb93b4f39 072fc02340ef99115bad72f92c01e4c093b9599f6cfc45cb380ee686cb5eb019e806ab9bd55e634ab10aa62a9510cc0672cd3eddb589c7df2b67fcd3329f61b1a4441eca87a33c8f55da4fbbad5cf2b2527b8e983bb31a2fadec7523,3f57fa915a782e3cc69815ba219f42aa2c222cd7f309f10af843384b3d3939aa0b92dd9571686c7961e06bfee818127fc5b5f32c67f4aa2af10d4fa38f65e90d 76eecf956a52649f877528146de33df249cd800e21830f65e90f0f25ca9d6540fde40603230eca6760f1139c7f268deba2060631eea92b1fff05f93fd5572fbe29579ecd48bc3a8d6c2eb4a6b26e38d6c5fbf2c08044aeea470a8f2f26,151382ca35fb20b895a9dc074d687f2f335eaf57456d357a685ef752da59174d3f239aa9e04f142138d9413b21904665ef4df2f63e663b490383660481f78362 7adc0b6693e61c269f278e6944a5a2d8300981e40022f839ac644387bfac9086650085c2cdc585fea47b9d2e52d65a2b29a7dc370401ef5d60dd0d21f9e2b90fae919319b14b8c5565b0423cefb827d5f1203302a9d01523498a4db10374,23aa4b74c54e8f450054b6abdbc6f6c3e44366afcec099b155775de040bf3b9cdd0b875f9d490faa694f18ccbffec6cab7de57a59ec6327240ac59d62d50b21c e1fffa9826cce8b86bccefb8794e48c46cdf372013f782eced1e378269b7be2b7bf51374092261ae120e822be685f2e7a83664bcfbe38fe8633f24e633ffe1988e1bc5acf59a587079a57a910bda60060e85b5f5b6f776f0529639d9cce4bd,3605cec16a7aa8b2525479fcc1295411b6a952dce233c9acc856d6d17c9812c920178500cd0028b5998d07046c6a5cf398ee1ec97df9182c33fca86647861878 69f9abba65592ee01db4dce52dbab90b08fc04193602792ee4daa263033d59081587b09bbe49d0b49c9825d22840b2ff5d9c5155f975f8f2c2e7a90c75d2e4a8040fe39f63bbafb403d9e28cc3b86e04e394a9c9e8065bd3c85fa9f0c7891600,c5a526d75816d41b53bf164b0467e0b80a9984d1830edb9d49f7ec3ecfefb01a2c824a0f645753aa463d567cb2782afcb2b2c2102ea664c56998f79062636fc1 38a10a352ca5aedfa8e19c64787d8e9c3a75dbf3b8674bfab29b5dbfc15a63d10fae66cd1a6e6d2452d557967eaad89a4c98449787b0b3164ca5b717a93f24eb0b506ceb70cbbcb8d72b2a72993f909aad92f044e0b5a2c9ac9cb16a0ca2f81f49,b239941a31100ab1b24af2d1fef149dba300105a31b72a8f217e306a0602d722ccd593a23e6539d3e4195a7e12ca19ae2bae8b8399f7a9d50db30216e973f2bf 6d8c6e449bc13634f115749c248c17cd148b72157a2c37bf8969ea83b4d6ba8c0ee2711c28ee11495f43049596520ce436004b026b6c1f7292b9c436b055cbb72d530d860d1276a1502a5140e3c3f54a93663e4d20edec32d284e25564f624955b52,d6ab0d0b416d1bbc85479f9850585761b91775a60307afacf70943feb58657740fe35dc760ab9cfa672c6b5552aa67bfa1f0d6a6f943b3912c229b8e0155c002 6efcbcaf451c129dbe00b9cef0c3749d3ee9d41c7bd500ade40cdc65dedbbbadb885a5b14b32a0c0d087825201e303288a733842fa7e599c0c514e078f05c821c7a4498b01c40032e9f1872a1c925fa17ce253e8935e4c3c71282242cb716b2089ccc1,bc0a28450368c288013e2eb1196e58933ce05869cb55fa2bda61d9d92f83b903e59dde0b927ca6dbc46f5af2eb7e8831e8668888bfea46d78f4d274818d56328 433c5303131624c0021d868a30825475e8d0bd3052a022180398f4ca4423b98214b6beaac21c8807a2c33f8c93bd42b092cc1b06cedf3224d5ed1ec29784444f22e08a55aa58542b524b02cd3d5d5f6907afe71c5d7462224a3f9d9e53e7e0846dcbb4ce,7820a20056df741e19ff4d150663488cf86f936353e99e25b93220f5230bfbc13363b458d6db92f9d211d705362b01782ec118acfe53bae4c6ac2c7e5d0111fb a873e0c67ca639026b6683008f7aa6324d4979550e9bce064ca1e1fb97a30b147a24f3f666c0a72d71348ede701cf2d17e2253c34d1ec3b647dbcef2f879f4eb881c4830b791378c901eb725ea5c172316c6d606e0af7df4df7f76e490cd30b2badf45685f,0984a43286a3cb22fb59f7880e114e23e3ad3b0d43025f3987d0aa6fa8e53e6066f80f4769241dcd062431c7f6712c57c6e3275ed3f2bc591db6dc20e5be0953 006917b64f9dcdf1d2d87c8a6173b64f6587168e80faa80f82d84f60301e561e312d9fbce62f39a6fb476e01e925f26bcc91de621449be6504c504830aae394096c8fc7694651051365d4ee9070101ec9b68086f2ea8f8ab7b811ea8ad934d5c9b62c60a4771,a6300497f650859cd744679885cd5437a64cc3961574dcce65e1611616a9f97190f39130ba532094bd62464d0b8b52297a2c9c279b2c9860c072cd44449a9cdf f13c972c52cb3cc4a4df28c97f2df11ce089b815466be88863243eb318c2adb1a417cb1041308598541720197b9b1cb5ba2318bd5574d1df2174af14884149ba9b2f446d609df240ce335599957b8ec80876d9a085ae084907bc5961b20bf5f6ca58d5dab38adb,e2052884d112238807c02c135247f76e0e394bd6583ba83ed2731cf68f057276272b891a761cdec6d8ad2e3f33e86ae9d9a234682bce7a53816235692d2cf821 e35780eb9799ad4c77535d4ddb683cf33ef367715327cf4c4a58ed9cbdcdd486f669f80189d549a9364fa82a51a52654ec721bb3aab95dceb4a86a6afa93826db923517e928f33e3fba850d45660ef83b9876accafa2a9987a254b137c6e140a21691e1069413848,ff6a7d0efea45e5f0abcb173fce2be76b52d0f3fc363afe31d219472742d73e56cee2ab91a94d41335c4fa25cbdd6ebd1a087637caa25099d5a9d60693cf62b9 64ec021c9585e01ffe6d31bb50d44c79b6993d72678163db474947a053674619d158016adb243f5c8d50aa92f50ab36e579ff2dabb780a2b529370daa299207cfbcdd3a9a25006d19c4f1fe33e4b1eaec315d8c6ee1e730623fd1941875b924eb57d6d0c2edc4e78d6,4183f96759e7c0628f2fc81979274f42111a43bd5dbb3685bb21704ce6b0ed3d164decf28a3a991b303e1d7b86e2b175ba89945a8524f9c9318f12b160a1e4d1 5954bab512cf327d66b5d9f296180080402624ad7628506b555eea8382562324cf452fba4a2130de3e165d11831a270d9cb97ce8c2d32a96f50d71600bb4ca268cf98e90d6496b0a6619a5a8c63db6d8a0634dfc6c7ec8ea9c006b6c456f1b20cd19e781af20454ac880,940c6f0bacf11e4b045f432003f889278709f9c3d8e420c9a17155f57e776d72b4306bba4adf721708f6ef457444ab12238372e207ab41d5ef5a68529ed0b26c 03d9f92b2c565709a568724a0aff90f8f347f43b02338f94a03ed32e6f33666ff5802da4c81bdce0d0e86c04afd4edc2fc8b4141c2975b6f07639b1994c973d9a9afce3d9d365862003498513bfa166d2629e314d97441667b007414e739d7febf0fe3c32c17aa188a8683,172f0c680310375156911c07b1819f0b9d124514ec2c3750cb2e39926a28a4636ab7ecdcdd9d6a960d16c864dd585645d87f145c5b315381f356656d617fe97d f31e8b4f9e0621d531d22a380be5d9abd56faec53cbd39b1fab230ea67184440e5b1d15457bd25f56204fa917fa48e669016cb48c1ffc1e1e45274b3b47379e00a43843cf8601a5551411ec12503e5aac43d8676a1b2297ec7a0800dbfee04292e937f21c005f17411473041,410dbaa5e3453f2dafce135dc014f28fbf693c84eb7d4becb80a3db32e16e89062b3ff59c1dfdfab32d84d20284632a2ac7f8f88d4b7023f879463ba18ff6553 758ea3fea738973db0b8be7e599bbef4519373d6e6dcd7195ea885fc991d896762992759c2a09002912fb08e0cb5b76f49162aeb8cf87b172cf3ad190253df612f77b1f0c532e3b5fc99c2d31f8f65011695a087a35ee4eee5e334c369d8ee5d29f695815d866da99df3f79403,f93a099159c39617b75b188d527fc4db287cbb4fdddba5ad4dcb4cffc4dc59762bbc41a58d3a788eae152aea024bc4cc4f29fc7b8ab68065a68650a04b51818a 47c6e0c2b74948465921868804f0f7bd50dd323583dc784f998a93cd1ca4c6ef84d41dc81c2c40f34b5bee6a93867b3bdba0052c5f59e6f3657918c382e771d33109122cc8bb0e1e53c4e3d13b43ce44970f5e0c079d2ad7d7a3549cd75760c21bb15b447589e86e8d76b1e9ced2,05e69984ee99aa2bc851083aa44ee56feef86c45888867cdcdd0c7a8049080ae7858b93c19953a881be5c036bd8fe83628c2e3aa9939a288b4ac4bc2876c2fbc f690a132ab46b28edfa6479283d6444e371c6459108afd9c35dbd235e0b6b6ff4c4ea58e7554bd002460433b2164ca51e868f7947d7d7a0d792e4abf0be5f450853cc40d85485b2b8857ea31b5ea6e4ccfa2f3a7ef3380066d7d8979fdac618aad3d7e886dea4f005ae4ad05e5065f,be22f3e253c2563c3353e693d2d5a65dc6bac2cbcda8e43e8584f9d851e602d4374936403fd688f0135e363de8099f249dd21c61695c109c27ed5f4f4c1808bf 58d6a99bc6458824b256916770a8417040721cccfd4b79eacd8b65a3767ce5ba7e74104c985ac56b8cc9aebd16febd4cda5adb130b0ff2329cc8d611eb14dac268a2f9e633c99de33997fea41c52a7c5e1317d5b5daed35eba7d5a60e45d1fa7eaabc35f5c2b0a0f2379231953322c4e,1d1836c4e2c3eb27a74a9cd600c064391bd9edd45464a5795182c8794748ba51a345c6fae2b91f5758401e4f427d50b6882b1df0977976c2c9432c1a9b3ae03f befab574396d7f8b6705e2d5b58b2c1c820bb24e3f4bae3e8fbcd36dbf734ee14e5d6ab972aedd3540235466e825850ee4c512ea9795abfd33f330d9fd7f79e62bbb63a6ea85de15beaeea6f8d204a28956059e2632d11861dfb0e65bc07ac8a159388d5c3277e227286f65ff5e5b5aec1,cb0d33c173c765bba3714d56a4cf48fd6320ab8c5317e7ab1a46472afb756232cd27f51473dcf9bd7dac1aa7f669353fd8f3d27d17d3fe3eb3386876eca38a85 8e58144fa9179d686478622ce450c748260c95d1ba43b8f9b59abeca8d93488da73463ef40198b4d16fb0b0707201347e0506ff19d01bea0f42b8af9e71a1f1bd168781069d4d338fdef00bf419fbb003031df671f4a37979564f69282de9c65407847dd0da505ab1641c02dea4f0d834986,b579ad0c750b91e0671bb7f0482a519835d155ae1a4db92112e66fbd158835e0c29e2f122a8c54c530f92633f6ec7b222ca3ced45b4b5a24426d99c59c1b6609 b55c10eae0ec684c16d13463f29291bf26c82e2fa0422a99c71db4af14dd9c7f33eda52fd73d017cc0f2dbe734d831f0d820d06d5f89dacc485739144f8cfd4799223b1aff9031a105cb6a029ba71e6e5867d85a554991c38df3c9ef8c1e1e9a7630be61caabca69280c399c1fb7a12d12aefc,689c878d8a44c79eaf0579dc96c0e7fe7d33491f59a6058bee60e14b8006bdf6a6070b2b6d3bb6d7c31ccae09ec403df49dd12ba72c8532a8e476b4b415d8369 2eeea693f585f4ed6f6f8865bbae47a6908aecd7c429e4bec4f0de1d0ca0183fa201a0cb14a529b7d7ac0e6ff6607a3243ee9fb11bcf3e2304fe75ffcddd6c5c2e2a4cd45f63c962d010645058d36571404a6d2b4f44755434d76998e83409c3205aa1615db44057db991231d2cb42624574f545,4e4dc49e414c794a4b6d8d2093feab46d91321cfd089b1fd8cb5154f3e342645f6233a9216db04f080e5af8b156e782ad16e0b15d814173e78fcf5e7cf8ea51f dab11dc0b047db0420a585f56c42d93175562852428499f66a0db811fcdddab2f7cdffed1543e5fb72110b64686bc7b6887a538ad44c050f1e42631bc4ec8a9f2a047163d822a38989ee4aab01b4c1f161b062d873b1cfa388fd301514f62224157b9bef423c7783b7aac8d30d65cd1bba8d689c2d,2c8f456f9091517cafa9df1d09ee621edfeb2c00dab944355d592dfda128f837228578e3965d3767959d3cdde4e7b67e02241f28c5417e33ea74e39032f938ea 42e99a2f80aee0e001279a2434f731e01d34a44b1a8101726921c0590c30f3120eb83059f325e894a5ac959dca71ce2214799916424e859d27d789437b9d27240bf8c35adbafcecc322b48aa205b293962d858652abacbd588bcf6cbc388d0993bd622f96ed54614c25b6a9aa527589eaaffcf17ddf7,3ae18402ad4123af1ad868450591c46f66431d422a29d932df94af9ab3e256f806575b3eb0d24edc7531725e0336847b2e571ae667b619a9d79a3e168948af5d 3c9b46450c0f2cae8e3823f8bdb4277f31b744ce2eb17054bddc6dff36af7f49fb8a2320cc3bdf8e0a2ea29ad3a55de1165d219adeddb5175253e2d1489e9b6fdd02e2c3d3a4b54d60e3a47334c37913c5695378a669e9b72dec32af5434f93f46176ebf044c4784467c700470d0c0b40c8a088c815816,6f3e1294b67d875165fd09dd493dd55924e9e28e53afa2da80916d7d54e19c1705121d617e53f56eba4767d6435e986feeaeb965ec4956fd3c02de1288fbc661 d1e654b77cb155f5c77971a64df9e5d34c26a3cad6c7f6b300d39deb1910094691adaa095be4ba5d86690a976428635d5526f3e946f7dc3bd4dbc78999e653441187a81f9adcd5a3c5f254bc8256b0158f54673dcc1232f6e918ebfc6c51ce67eaeb042d9f57eec4bfe910e169af78b3de48d137df4f2840,aa3398bc7daeb4f22ca6d1937b0c6097a49adb6dbc03fc0f5226a644f217296bf55747269b861fc7b22bc5956ce3d8da28e9f25d8c9599bc653cd0ee0c852473 626f68c18a69a6590159a9c46be03d5965698f2dac3de779b878b3d9c421e0f21b955a16c715c1ec1e22ce3eb645b8b4f263f60660ea3028981eebd6c8c3a367285b691c8ee56944a7cd1217997e1d9c21620b536bdbd5de8925ff71dec6fbc06624ab6b21e329813de90d1e572dfb89a18120c3f606355d25,8bcbbe36dbe305fbb558ea46721d25de7aab7898e583e8bdf26701224387c524c683475c242c7de090608a4f17663d217276f94f4188b942a03039b5e38d6ae3 651a6fb3c4b80c7c68c6011675e6094eb56abf5fc3057324ebc6477825061f9f27e7a94633abd1fa598a746e4a577caf524c52ec1788471f92b8c37f23795ca19d559d446cab16cbcdce90b79fa1026cee77bf4ab1b503c5b94c2256ad75b3eac6fd5dcb96aca4b03a834bfb4e9af988cecbf2ae597cb9097940,4782dfcab650e7a8dae9a010cb002dd0373bfbd31247fa9860876d7fffd2d57c355f2054cb2efeb45c5871f284f46b025798344a3719efab34d15152dd0bbc6c 8aaf072fce8a2d96bc10b3c91c809ee93072fb205ca7f10abd82ecd82cf040b1bc49ea13d1857815c0e99781de3adbb5443ce1c897e55188ceaf221aa9681638de05ae1b322938f46bce51543b57ecdb4c266272259d1798de13be90e10efec2d07484d9b21a3870e2aa9e06c21aa2d0c9cf420080a80a91dee16f,a4d538e449e2b3ebf9aafc88d29e514ba0d2c8de2706f3f6fa5a2c4f95f5db5bab59c1a69c16e4859a19730abb2e6bf06152445eda80e3be5ce652023ea57e5e 53f918fd00b1701bd504f8cdea803acca21ac18c564ab90c2a17da592c7d69688f6580575395551e8cd33e0fef08ca6ed4588d4d140b3e44c032355df1c531564d7f4835753344345a6781e11cd5e095b73df5f82c8ae3ad00877936896671e947cc52e2b29dcd463d90a0c9929128da222b5a211450bbc0e02448e2,8732d243f1b3349f900df430659b9ab9ed99f626ad35cb2084b57d60e5a5b47213ad213859cd40964c5a267c236d0e38167525f778e67e37d4f623a8884128ed a64599b8a61b5ccec9e67aed69447459c8da3d1ec6c7c7c82a7428b9b584fa67e90f68e2c00fbbed4613666e5168da4a16f395f7a3c3832b3b134bfc9cbaa95d2a0fe252f44ac6681eb6d40ab91c1d0282fed6701c57463d3c5f2bb8c6a7301fb4576aa3b5f15510db8956ff77478c26a7c09bea7b398cfc83503f538e,97dc2606e14f7bfff1fca497965e36caa3a81cfd6459d0254529f64da40ffe7442c08a151d6cee3b46bf3414e80110a0f71eee44d7940027dee90e919e498d65 0e3ab0e054739b00cdb6a87bd12cae024b54cb5e550e6c425360c2e87e59401f5ec24ef0314855f0f56c47695d56a7fb1417693af2a1ed5291f2fee95f75eed54a1b1c2e81226fbff6f63ade584911c71967a8eb70933bc3f5d15bc91b5c2644d9516d3c3a8c154ee48e118bd1442c043c7a0dba5ac5b1d5360aae5b9065,de5978eace4e51f7d289f2befbecb3aac8e9cad48fa0f7310c673d52bbcaeebde49cb5a76d334d6dfdd51ac1ab24e9e1cdc915069dbddb3d2e30b0b0c26b3ee1 a62fc595b4096e6336e53fcdfc8d1cc175d71dac9d750a6133d23199eaac288207944cea6b16d27631915b4619f743da2e30a0c00bbdb1bbb35ab852ef3b9aec6b0a8dcc6e9e1abaa3ad62ac0a6c5de765de2c3711b769e3fde44a74016fff82ac46fa8f1797d3b2a726b696e3dea5530439acee3a45c2a51bc32dd055650b,33abca29a8a7094cfb10be4a80e81f8001ebb933c0d4b98a695b22ab553f94f07646abce6adf491817d17b78c40747d56faf88a613138ca0e596636c672397b4 2b6db7ced8665ebe9deb080295218426bdaa7c6da9add2088932cdffbaa1c14129bccdd70f369efb149285858d2b1d155d14de2fdb680a8b027284055182a0cae275234cc9c92863c1b4ab66f304cf0621cd54565f5bff461d3b461bd40df28198e3732501b4860eadd503d26d6e69338f4e0456e9e9baf3d827ae685fb1d817,4fab45806b4628068458b5d0a2d4bf101b8bfc9276ef86ad5d883765c43f72ce8a5f7b4c5b535a915130bb185e699ab62228014e54df790c0e93aadbe7e39e19 10db509b2cdcaba6c062ae33be48116a29eb18e390e1bbada5ca0a2718afbcd23431440106594893043cc7f2625281bf7de2655880966a23705f0c5155c2f5cca9f2c2142e96d0a2e763b70686cd421b5db812daced0c6d65035fde558e94f26b3e6dde5bd13980cc80292b723013bd033284584bff27657871b0cf07a849f4ae2,5f0bfb4146910cf0c320364b6ad8a02b0966229ab2676d9670f0dd241e8104db02797eefea0b9cabbe90a44757b033755925b2fccf3a00054f9ae8fbcef752a8 9334de60c997bda6086101a6314f64e4458f5ff9450c509df006e8c547983c651ca97879175aaba0c539e82d05c1e02c480975cbb30118121061b1ebac4f8d9a3781e2db6b18042e01ecf9017a64a0e57447ec7fcbe6a7f82585f7403ee2223d52d37b4bf426428613d6b4257980972a0acab508a7620c1cb28eb4e9d30fc41361ec,d38ef3b12eaa0bf62a75b6b63cff3c9ef171de1b75f5d02629365bcfe65ba7ddd30fcef7febb82f19f9bedcc1cc4c679b4292ea62c2a90a7562da9a1318fe278 e88ab086891693aa535ceb20e64c7ab97c7dd3548f3786339897a5f0c39031549ca870166e477743ccfbe016b4428d89738e426f5ffe81626137f17aecff61b72dbee2dc20961880cfe281dfab5ee38b1921881450e16032de5e4d55ad8d4fca609721b0692bac79be5a06e177fe8c80c0c83519fb3347de9f43d5561cb8107b9b5edc,60c95c274f99b8643a186344bc01d1279010be55d1be76f4e6f919f6b54d335ee0e1ca92133f3d7a2520cd82c4000e15efed8d8a66f31b16b0977c63de1beb05 fd19e01a83eb6ec810b94582cb8fbfa2fcb992b53684fb748d2264f020d3b960cb1d6b8c348c2b54a9fcea72330c2aaa9a24ecdb00c436abc702361a82bb8828b85369b8c72ece0082fe06557163899c2a0efa466c33c04343a839417057399a63a3929be1ee4805d6ce3e5d0d0967fe9004696a5663f4cac9179006a2ceb75542d75d68,9385d0ed9e73498e24b8c6e746a1c6be8011ee30fcac9ba17224ee2012378522c78f8737a224621fba19c42040c5c7f38ac07b40e0e75ebc59d17975ee85d655 59ae20b6f7e0b3c7a989afb28324a40fca25d8651cf1f46ae383ef6d8441587aa1c04c3e3bf88e8131ce6145cfb8973d961e8432b202fa5af3e09d625faad825bc19da9b5c6c20d02abda2fcc58b5bd3fe507bf201263f30543819510c12bc23e2ddb4f711d087a86edb1b355313363a2de996b891025e147036087401ccf3ca7815bf3c49,7487164d408874afdf07ebdade8c62e756147beab3238b8738aeed927f54fe6d33af3917d4e181b50cbc88a379c73585f9fba4c1b67b4be449004ea0f66d11ad 77ee804b9f3295ab2362798b72b0a1b2d3291dceb8139896355830f34b3b328561531f8079b79a6e9980705150866402fdc176c05897e359a6cb1a7ab067383eb497182a7e5aef7038e4c96d133b2782917417e391535b5e1b51f47d8ed7e4d4025fe98dc87b9c1622614bff3d1029e68e372de719803857ca52067cddaad958951cb2068cc6,0f41ab2d10c51e28638dad178655f160b2f753db44eed6ce4104693cc4a938d887617774afecb33b890ee7fc577656ce168eea42c604d152b952c9b772c9b530 b771d5cef5d1a41a93d15643d7181d2a2ef0a8e84d91812f20ed21f147bef732bf3a60ef4067c3734b85bc8cd471780f10dc9e8291b58339a677b960218f71e793f2797aea349406512829065d37bb55ea796fa4f56fd8896b49b2cd19b43215ad967c712b24e5032d065232e02c127409d2ed4146b9d75d763d52db98d949d3b0fed6a8052fbb,7575a1fb4fc9a8f9c0466bd5fca496d1cb78696773a212a5f62d02d14e3259d192a87eba4407dd83893527331407b6dadaad920dbc46489b677493ce5f20b595 b32d95b0b9aad2a8816de6d06d1f86008505bd8c14124f6e9a163b5a2ade55f835d0ec3880ef50700d3b25e42cc0af050ccd1be5e555b23087e04d7bf9813622780c7313a1954f8740b6ee2d3f71f768dd417f520482bd3a08d4f222b4ee9dbd015447b33507dd50f3ab4247c5de9a8abd62a8decea01e3b87c8b927f5b08beb37674c6f8e380c04,2e293765022d48996ce8eff0be54e87efb94a14c72de5acd10d0eb5ece029cadfa3ba17a40b2ffa2163991b17786e51caba79e5e0ffd34cf085e2a098be8bacb 04410e31082a47584b406f051398a6abe74e4da59bb6f85e6b49e8a1f7f2ca00dfba5462c2cd2bfde8b64fb21d70c083f11318b56a52d03b81cac5eec29eb31bd0078b6156786da3d6d8c33098c5c47bb67ac64db14165af65b44544d806dde5f487d5373c7f9792c299e9686b7e5821e7c8e2458315b996b5677d926dac57b3f22da873c601016a0d,be8e14b6757ffe53c9b75f6dde9a7b6c40474041de83d4a60645a826d7af1abe1eefcb7b74b62ca6a514e5f2697d585bfecece12931bbe1d4ed7ebf7b0be660e 8b81e9badde026f14d95c019977024c9e13db7a5cd21f9e9fc491d716164bbacdc7060d882615d411438aea056c340cdf977788f6e17d118de55026855f93270472d1fd18b9e7e812bae107e0dfde7063301b71f6cfe4e225cab3b232905a56e994f08ee2891ba922d49c3dafeb75f7c69750cb67d822c96176c46bd8a29f1701373fb09a1a6e3c7158f,6c7e64ee0d826073d4f44bcf1586a83bacf3e2e138dfdb65b8b8b35fd7dae300ea6e32c6245cca27c674feb2196755945ab7c5dce99eab9158a75518ac27c431 fa6eed24da6666a22208146b19a532c2ec9ba94f09f1def1e7fc13c399a48e41acc2a589d099276296348f396253b57cb0e40291bd282773656b6e0d8bea1cda084a3738816a840485fcf3fb307f777fa5feac48695c2af4769720258c77943fb4556c362d9cba8bf103aeb9034baa8ea8bfb9c4f8e6742ce0d52c49ea8e974f339612e830e9e7a9c29065,5842d4da2c309d9b2aa7cfae702262f770a8e646620d65c17271416e9d7981ff93d228cd60dc1cc16921020d841e439e87f085e503d466c904abf8cdd5eccaa9 9bb4af1b4f09c071ce3cafa92e4eb73ce8a6f5d82a85733440368dee4eb1cbc7b55ac150773b6fe47dbe036c45582ed67e23f4c74585dab509df1b83610564545642b2b1ec463e18048fc23477c6b2aa035594ecd33791af6af4cbc2a1166aba8d628c57e707f0b0e8707caf91cd44bdb915e0296e0190d56d33d8dde10b5b60377838973c1d943c22ed335e,f8b24527b5c84ca9a702db2f535f78ed0323c2932a255db24f872551ca7f5c0482b3690c62eec8ad69308db2d72308c4d615cde3835b39b4f6ff115466f32763 2167f02118cc62043e9091a647cadbed95611a521fe0d64e8518f16c808ab297725598ae296880a773607a798f7c3cfce80d251ebec6885015f9abf7eaabae46798f82cb5926de5c23f44a3f9f9534b3c6f405b5364c2f8a8bdc5ca49c749bed8ce4ba48897062ae8424ca6dde5f55c0e42a95d1e292ca54fb46a84fbc9cd87f2d0c9e7448de3043ae22fdd229,08c6e3938de48171a99646bd090b7d53ff422ae63f99850032bd131ac7bdfba8f83466ad31fad3169d8a320fd9548bdff2c40ba20e0d031a8054019c40ed2662 94b7fa0bc1c44e949b1d7617d31b4720cbe7ca57c6fa4f4094d4761567e389ecc64f6968e4064df70df836a47d0c713336b5028b35930d29eb7a7f9a5af9ad5cf441745baec9bb014ceeff5a41ba5c1ce085feb980bab9cf79f2158e03ef7e63e29c38d7816a84d4f71e0f548b7fc316085ae38a060ff9b8dec36f91ad9ebc0a5b6c338cbb8f6659d342a24368cf,6978ad4bc4f0fc44c35c6691ca46627d840baa572de9b0216673c988197191cdf812cf21920e052cc9ce1d507d1ba7db6f151d01620ada702dc637bf90809c19 ea40e83cb18b3a242c1ecc6ccd0b7853a439dab2c569cfc6dc38a19f5c90acbf76aef9ea3742ff3b54ef7d36eb7ce4ff1c9ab3bc119cff6be93c03e208783335c0ab8137be5b10cdc66ff3f89a1bddc6a1eed74f504cbe7290690bb295a872b9e3fe2cee9e6c67c41db8efd7d863cf10f840fe618e7936da3dca5ca6df933f24f6954ba0801a1294cd8d7e66dfafec,3a8e938c45f3f177991296b24565d9a6605516615d96a062c8be53a0d6c5a6487be35d2a8f3cf6620d0c2dba2c560d68295f284be7f82f3b92919033c9ce5d80 157d5b7e4507f66d9a267476d33831e7bb768d4d04cc3438da12f9010263ea5fcafbde2579db2f6b58f911d593d5f79fb05fe3596e3fa80ff2f761d1b0e57080055c118c53e53cdb63055261d7c9b2b39bd90acc32520cbbdbda2c4fd8856dbcee173132a2679198daf83007a9b5c51511ae49766c792a29520388444ebefe28256fb33d4260439cba73a9479ee00c63,fe45289874879720ce2a844ae34bb73522775dcb6019dcd22b8885994672a0889c69e8115c641dc8b83e39f7311815a164dc46e0ba2fca344d86d4bc2ef2532c 836b34b515476f613fe447a4e0c3f3b8f20910ac89a3977055c960d2d5d2b72bd8acc715a9035321b86703a411dde0466d58a59769672aa60ad587b8481de4bba552a1645779789501ec53d540b904821f32b0bd1855b04e4848f9f8cfe9ebd8911be95781a759d7ad9724a7102dbe576776b7c632bc39b9b5e19057e226552a5994c1dbb3b5c7871a11f5537011044c53,aff61c6e11b98e55ac213b1a0bc7de0405221ac5efb1229842e4614f4a029c9bd14a0ed7fd99af3681429f3f309fdb53166aa9a3cd9f1f1223d04b4a9015e94a cc7784a4912a7ab5ad3620aab29ba87077cd3cb83636adc9f3dc94f51edf521b2161ef108f21a0a298557981c0e53ce6ced45bdf782c1ef200d29bab81dd6460586964edab7cebdbbec75fd7925060f7da2b853b2b089588fa0f8c16ec6498b14c55dcee335cb3a91d698e4d393ab8e8eac0825f8adebeee196df41205c011674e53426caa453f8de1cbb57932b0b741d4c6,26410e1a0d1e3659438dddb2953eb3aa082ceb02a327fa0098574d89f9236f5dff9c17def37f6ce4b5dc1ee5f23f578fe191ee8b51f1b8034bcbbbb7b6a500a5 7639b461fff270b2455ac1d1afce782944aea5e9087eb4a39eb96bb5c3baaf0e868c8526d3404f9405e79e77bfac5ffb89bf1957b523e17d341d7323c302ea7083872dd5e8705694acdda36d5a1b895aaa16eca6104c82688532c8bfe1790b5dc9f4ec5fe95baed37e1d287be710431f1e5e8ee105bc42ed37d74b1e55984bf1c09fe6a1fa13ef3b96faeaed6a2a1950a12153,5015da2a2e1661d3a52a65d19f02933029839f72717a77b5045198665093f944cff85e094d418396a51c574157eed9fb6bdd4eca53278fab62af699b53c82f58 eb6513fc61b30cfba58d4d7e80f94d14589090cf1d80b1df2e68088dc6104959ba0d583d585e9578ab0aec0cf36c48435eb52ed9ab4bbce7a5abe679c97ae2dbe35e8cc1d45b06dda3cf418665c57cbee4bbb47fa4caf78f4ee656fec237fe4eebbafa206e1ef2bd0ee4ae71bd0e9b2f54f91daadf1febfd7032381d636b733dcb3bf76fb14e23aff1f68ed3dbcf75c9b99c6f26,b27828cfebcf4d896eabf1f84d079827b7dcc7f308a20476474de518829a89aac3dc50272cfa976b0b5819c45c9eefc51b87a27d11c9e5f9579121125a887542 1594d74bf5dde444265d4c04dad9721ff3e34cbf622daf341fe16b96431f6c4df1f760d34f296eb97d98d560ad5286fec4dce1724f20b54fd7df51d4bf137add656c80546fb1bf516d62ee82baa992910ef4cc18b70f3f8698276fcfb44e0ec546c2c39cfd8ee91034ff9303058b4252462f86c823eb15bf481e6b79cc3a02218595b3658e8b37382bd5048eaed5fd02c37944e73b,42fc06dcf99b4e804bb349101b46d6a6a7366e47555406ea554248baef52e17afa40829f5709d07ff407881df106f156ca735622b0f051d8c372f6e811cdae25 4cfa1278903026f66fedd41374558be1b585d03c5c55dac94361df286d4bd39c7cb8037ed3b267b07c346626449d0cc5b0dd2cf221f7e4c3449a4be99985d2d5e67bff2923357ddeab5abcb4619f3a3a57b2cf928a022eb27676c6cf805689004fca4d41ea6c2d0a4789c7605f7bb838dd883b3ad3e6027e775bcf262881428099c7fff95b14c095ea130e0b9938a5e22fc52650f591,0ca89c9b7273de384ff33f1bacbb8505628c4d3e30350b335361563ad416ada523122d37acbec57721f7bc5d9b049e1f4fe3c4cfe047e33a0e448ef5d5536cf0 d3e65cb92cfa79662f6af493d696a07ccf32aaadcceff06e73e8d9f6f909209e66715d6e978788c49efb9087b170ecf3aa86d2d4d1a065ae0efc8924f365d676b3cb9e2bec918fd96d0b43dee83727c9a93bf56ca2b2e59adba85696546a815067fc7a78039629d4948d157e7b0d826d1bf8e81237bab7321312fdaa4d521744f988db6fdf04549d0fdca393d639c729af716e9c8bba48,78c59a8cdf4d1d07a66bb2faa7ffa2112d5c0fcabf7e3589e97623bdb922af9af24918c2ccfce2b880bf64145c70dc9a4fde78fdf0918dd2ce5fea9cf99acd41 842cc583504539622d7f71e7e31863a2b885c56a0ba62db4c2a3f2fd12e79660dc7205ca29a0dc0a87db4dc62ee47a41db36b9ddb3293b9ac4baae7df5c6e7201e17f717ab56e12cad476be49608ad2d50309e7d48d2d8de4fa58ac3cfeafeee48c0a9eec88498e3efc51f54d300d828dddccb9d0b06dd021a29cf5cb5b2506915beb8a11998b8b886e0f9b7a80e97d91a7d01270f9a7717,cf4d52d20272de014d367310775287ee5e5cb34cf9af78e65d1d1fe7fb1f13b62dd9b83c382baa6ab4f6949478c8598fef78e8d535311fc19808cb75e22daded 6c4b0a0719573e57248661e98febe326571f9a1ca813d3638531ae28b4860f23c3a3a8ac1c250034a660e2d71e16d3acc4bf9ce215c6f15b1c0fc7e77d3d27157e66da9ceec9258f8f2bf9e02b4ac93793dd6e29e307ede3695a0df63cbdc0fc66fb770813eb149ca2a916911bee4902c47c7802e69e405fe3c04ceb5522792a5503fa829f707272226621f7c488a7698c0d69aa561be9f378,33d632e403c9f9a9349b28aa4821a12b1db557d8928003d30c57d701cff1c49bac9472cecff450e4d91d36c6cd78221790eff6f0fbf498034014cbbace5dcf09 51b7dbb7ce2ffeb427a91ccfe5218fd40f9e0b7e24756d4c47cd55606008bdc27d16400933906fd9f30effdd4880022d081155342af3fb6cd53672ab7fb5b3a3bcbe47be1fd3a2278cae8a5fd61c1433f7d350675dd21803746cadca574130f01200024c6340ab0cc2cf74f2234669f34e9009ef2eb94823d62b31407f4ba46f1a1eec41641e84d77727b59e746b8a671bef936f05be820759fa,954c709abcb0bb881592d93f5c2463ce8c060ad1df3053302ea7b19f2b47bcf0fe359a832f9a865a8d3dbd3be598dfd6d0fc1c574eca0aec78d8e3288399be05 83599d93f5561e821bd01a472386bc2ff4efbd4aed60d5821e84aae74d8071029810f5e286f8f17651cd27da07b1eb4382f754cd1c95268783ad09220f5502840370d494beb17124220f6afce91ec8a0f55231f9652433e5ce3489b727716cf4aeba7dcda20cd29aa9a859201253f948dd94395aba9e3852bd1d60dda7ae5dc045b283da006e1cbad83cc13292a315db5553305c628dd091146597,a337062f5e5c9c35341a51224f2a59e6cf919a63bf59a6cfce261194bbd660f28c2948d03cdce5c7c151ec05b42aadd83051a16a62f0c7df39aaa4efc82ce4d3 2be9bf526c9d5a75d565dd11ef63b979d068659c7f026c08bea4af161d85a462d80e45040e91f4165c074c43ac661380311a8cbed59cc8e4c4518e80cd2c78ab1cabf66bff83eab3a80148550307310950d034a6286c93a1ece8929e6385c5e3bb6ea8a7c0fb6d6332e320e71cc4eb462a2a62e2bfe08f0ccad93e61bedb5dd0b786a728ab666f07e0576d189c92bf9fb20dca49ac2d3956d47385e2,43e9d0ea8e526e83234d7b63d8244c7e7b12ae2acc8082f986367268f10156574300172873845b207a7252624246e7d32ce0f7282e00c4552f6180f34e590e2e ca76d3a12595a817682617006848675547d3e8f50c2210f9af906c0e7ce50b4460186fe70457a9e879e79fd4d1a688c70a347361c847ba0dd6aa52936eaf8e58a1be2f5c1c704e20146d366aeb3853bed9de9befe9569ac8aaea37a9fb7139a1a1a7d5c748605a8defb297869ebedd71d615a5da23496d11e11abbb126b206fa0a7797ee7de117986012d0362dcef775c2fe145ada6bda1ccb326bf644,f7da8d1e49d0d964400ee40f9c88e07025a8b0b00cadc624a63e2ea85b1598e22c8802be0c1ff368519549a752e02546093d3b984e24600ba2ab7c792b9e074a f76b85dc67421025d64e93096d1d712b7baf7fb001716f02d33b2160c2c882c310ef13a576b1c2d30ef8f78ef8d2f465007109aad93f74cb9e7d7bef7c9590e8af3b267c89c15db238138c45833c98cc4a471a7802723ef4c744a853cf80a0c2568dd4ed58a2c9644806f42104cee53628e5bdf7b63b0b338e931e31b87c24b146c6d040605567ceef5960df9e022cb469d4c787f4cba3c544a1ac91f95f,d9a42761f980c78c36cf54c4207b0a62954e15a907a7cea149b37a4e0a6376202ff8f12e16ebad3aecc7ff3a9d6ad093b068dfe272e3b9646b1aedc04961dc81 25b8c9c032ea6bcd733ffc8718fbb2a503a4ea8f71dea1176189f694304f0ff68e862a8197b839957549ef243a5279fc2646bd4c009b6d1edebf24738197abb4c992f6b1dc9ba891f570879accd5a6b18691a93c7d0a8d38f95b639c1daeb48c4c2f15ccf5b9d508f8333c32de78781b41850f261b855c4bebcc125a380c54d501c5d3bd07e6b52102116088e53d76583b0161e2a58d0778f091206aabd5a1,bb65d8943413cef89fdb05b35a55ec7503e4546a50fc3ecc825dabc1a1dae6c771bb197f323625877e0bccaa41253c99b6692976b99fc687b0b6b3e9aab478c4 21cfdc2a7ccb7f331b3d2eefff37e48ad9fa9c788c3f3c200e0173d99963e1cbca93623b264e920394ae48bb4c3a5bb96ffbc8f0e53f30e22956adabc2765f57fb761e147ecbf8567533db6e50c8a1f894310a94edf806dd8ca6a0e141c0fa7c9fae6c6ae65f18c93a8529e6e5b553bf55f25be2e80a9882bd37f145fecbeb3d447a3c4e46c21524cc55cdd62f521ab92a8ba72b897996c49bb273198b7b1c9e,540df22180b69b9a83306619b2ca8cd8e07a34bbeb2219ac7cf88b468a947c4448489b303bd65506c9e1ce59348a9d863aab5154848e95b5389783f6f5fb6ad8 4e452ba42127dcc956ef4f8f35dd68cb225fb73b5bc7e1ec5a898bba2931563e74faff3b67314f241ec49f4a7061e3bd0213ae826bab380f1f14faab8b0efddd5fd1bb49373853a08f30553d5a55ccbbb8153de4704f29ca2bdeef0419468e05dd51557ccc80c0a96190bbcc4d77ecff21c66bdf486459d427f986410f883a80a5bcc32c20f0478bb9a97a126fc5f95451e40f292a4614930d054c851acd019ccf,062e4a11a79fdb9cbc3a0e4c5f9875caaa568bc713066e02d2a9ca4d27886ce23f70083a2bf4d0e7c55b120fe6d197203dc1c2fd3469112a08836727859e1f83 fa85671df7dadf99a6ffee97a3ab9991671f5629195049880497487867a6c446b60087fac9a0f2fcc8e3b24e97e42345b93b5f7d3691829d3f8ccd4bb36411b85fc2328eb0c51cb3151f70860ad3246ce0623a8dc8b3c49f958f8690f8e3860e71eb2b1479a5cea0b3f8befd87acaf5362435eaeccb52f38617bc6c5c2c6e269ead1fbd69e941d4ad2012da2c5b21bcfbf98e4a77ab2af1f3fda3233f046d38f1dc8,9e1c6ee0c47b2d2cb77f602cab53ac4c69c69778297894554196cb58060332c9fd8923f45c4b8ec26e16a5d04e6307fb99850a4540ea83e3f2626f3343e97225 e90847ae6797fbc0b6b36d6e588c0a743d725788ca50b6d792352ea8294f5ba654a15366b8e1b288d84f5178240827975a763bc45c7b0430e8a559df4488505e009c63da994f1403f407958203cebb6e37d89c94a5eacf6039a327f6c4dbbc7a2a307d976aa39e41af6537243fc218dfa6ab4dd817b6a397df5ca69107a9198799ed248641b63b42cb4c29bfdd7975ac96edfc274ac562d0474c60347a078ce4c25e88,f18f0b072a6bf608a6c7420e891be3795a6d19ba3e1276c826f1ae775cf125e428ae1a397cfd074be0cd24f7100f51800f14471ccf4f485a6571e2b32e02611f f6d5c2b6c93954fc627602c00c4ca9a7d3ed12b27173f0b2c9b0e4a5939398a665e67e69d0b12fb7e4ceb253e8083d1ceb724ac07f009f094e42f2d6f2129489e846eaff0700a8d4453ef453a3eddc18f408c77a83275617fabc4ea3a2833aa73406c0e966276079d38e8e38539a70e194cc5513aaa457c699383fd1900b1e72bdfb835d1fd321b37ba80549b078a49ea08152869a918ca57f5b54ed71e4fd3ac5c06729,2859a3165f38cb59de4275658bbae9a0ad647d972cf98fa0eec4c07ee75d576dbf9f5dd19a881db4e4f7db31ec0d77165911329cbe8a46d14d3ea7fdcb8a5c80 cf8562b1bed89892d67ddaaf3deeb28246456e972326dbcdb5cf3fb289aca01e68da5d59896e3a6165358b071b304d6ab3d018944be5049d5e0e2bb819acf67a6006111089e6767132d72dd85beddcbb2d64496db0cc92955ab4c6234f1eea24f2d51483f2e209e4589bf9519fac51b4d061e801125e605f8093bb6997bc163d551596fe4ab7cfae8fb9a90f6980480ce0c229fd1675409bd788354daf316240cfe0af93eb,9281bd03fe95545e5321a91a0ad8fa75a005b928c83450df657419870c4e980e32484fcf1f598702ed20404fece48a2ee9dbcf22120654ae402951605bed197e 2ace31abb0a2e3267944d2f75e1559985db7354c6e605f18dc8470423fca30b7331d9b33c4a4326783d1caae1b4f07060eff978e4746bf0c7e30cd61040bd5ec2746b29863eb7f103ebda614c4291a805b6a4c8214230564a0557bc7102e0bd3ed23719252f7435d64d210ee2aafc585be903fa41e1968c50fd5d5367926df7a05e3a42cf07e656ff92de73b036cf8b19898c0cb34557c0c12c2d8b84e91181af467bc75a9d1,6ca7023e20735624e83995a9e8aeba66b9bc8d0a30df67108eff8aedeb3b3ca484457bd0277c2552cbc7d63dc87eb556f2199c54ea73bae647764de18489b1f1 0d8d09aed19f1013969ce5e7eb92f83a209ae76be31c754844ea9116ceb39a22ebb6003017bbcf26555fa6624185187db8f0cb3564b8b1c06bf685d47f3286eda20b83358f599d2044bbf0583fab8d78f854fe0a596183230c5ef8e54426750eaf2cc4e29d3bdd037e734d863c2bd9789b4c243096138f7672c232314effdfc6513427e2da76916b5248933be312eb5dde4cf70804fb258ac5fb82d58d08177ac6f4756017fff5,a965e699c1ffaee369b3651c3a318582ae329ae51e6ccfb5275f58f748cedb8f6b8434fac4a1135ad9b555aa8cc1ff99a2220cbe83bfc1c374ffc927bb00abd3 c3236b73deb7662bf3f3daa58f137b358ba610560ef7455785a9befdb035a066e90704f929bd9689cef0ce3bda5acf4480bceb8d09d10b098ad8500d9b6071dfc3a14af6c77511d81e3aa8844986c3bea6f469f9e02194c92868cd5f51646256798ff0424954c1434bdfed9facb390b07d342e992936e0f88bfd0e884a0ddb679d0547ccdec6384285a45429d115ac7d235a717242021d1dc35641f5f0a48e8445dba58e6cb2c8ea,4b44ec2d1848d0ec43ab0793390d24535f3328ad23c5f8fc43f5579bd16d84bba08b233b0b5e24e22bf6ca2defeaca16bb98f8cdeaf26eecf2fc94afe4604cf4 b39feb8283eadc63e8184b51df5ae3fd41aac8a963bb0be1cd08aa5867d8d910c669221e73243360646f6553d1ca05a84e8dc0de05b6419ec349ca994480193d01c92525f3fb3dcefb08afc6d26947bdbbfd85193f53b50609c6140905c53a6686b58e53a319a57b962331ede98149af3de3118a819da4d76706a0424b4e1d2910b0ed26af61d150ebcb46595d4266a0bd7f651ba47d0c7f179ca28545007d92e8419d48fdfbd744ce,73169f0be264565e45fb8f4665753e55f240846eb0d481cef0274e4a3d859521767d9f675c0628ddce155267ba686f2142805713f20c4c25e0b24398c65e3480 a983d54f503803e8c7999f4edbbe82e9084f422143a932ddddc47a17b0b7564a7f37a99d0786e99476428d29e29d3c197a72bfab1342c12a0fc4787fd7017d7a6174049ea43b5779169ef7472bdbbd941dcb82fc73aac45a8a94c9f2bd3477f61fd3b796f02a1b8264a214c6fea74b7051b226c722099ec7883a462b83b6afdd4009248b8a237f605fe5a08fe7d8b45321421ebba67bd70a0b00ddbf94baab7f359d5d1eea105f28dcfb,9e1c196cb73d1efa288d63902c64ce1a340bcdb8197f4afecb1118dadd0d076b5fb7f6f809666cc58d2a8c1a68c65d0e91554c41d083f56d7b3dd37df1b6c494 e4d1c1897a0a866ce564635b74222f9696bf2c7f640dd78d7e2aca66e1b61c642bb03ea7536aae597811e9bf4a7b453ede31f97b46a5f0ef51a071a2b3918df16b152519ae3776f9f1edab4c2a377c3292e96408359d3613844d5eb393000283d5ad3401a318b12fd1474b8612f2bb50fb6a8b9e023a54d7dde28c43d6d8854c8d9d1155935c199811dbfc87e9e0072e90eb88681cc7529714f8fb8a2c9d88567adfb974ee205a9bf7b848,0c429cc164253c09538668135c9436fdbc79da8e1fbe92e7bbc6eb30627591e7347ccb43f7aec2d37ff3dabcfc9fa0c80629937c0c177c1c7ed0fc76a15df075 b10c59723e3dcadd6d75df87d0a1580e73133a9b7d00cb95ec19f5547027323be75158b11f80b6e142c6a78531886d9047b08e551e75e6261e79785366d7024bd7cd9cf322d9be7d57fb661069f2481c7bb759cd71b4b36ca2bc2df6d3a328faebdb995a9794a8d72155ed551a1f87c80bf6059b43fc764900b18a1c2441f7487743cf84e565f61f8dd2ece6b6ccc9444049197aaaf53e926fbee3bfca8be588ec77f29d211be89de18b15f6,700112fa90a1a2fd039a41b6485401634e757840e422aeb4a236634958192ffb2f2ddfa2253fc1ecb211c7e036098b714e62f7bf2b6975b1e95faa9b8d02a73a db11f609baba7b0ca634926b1dd539c8cbada24967d7add4d9876f77c2d80c0f4dcefbd7121548373582705cca2495bd2a43716fe64ed26d059cfb566b3364bd49ee0717bdd9810dd14d8fad80dbbdc4cafb37cc60fb0fe2a80fb4541b8ca9d59dce457738a9d3d8f641af8c3fd6da162dc16fc01aac527a4a0255b4d231c0be50f44f0db0b713af03d968fe7f0f61ed0824c55c4b5265548febd6aad5c5eedf63efe793489c39b8fd29d104ce,901c6d85509f01a47ea2e2792a5db728ea39e5703eedeae41365edf10a866b922b1093e52e687e312db129da1f053ef6848cb0b314c9a3a999eb3e75e14c9cc2 bebd4f1a84fc8b15e4452a54bd02d69e304b7f32616aadd90537937106ae4e28de9d8aab02d19bc3e2fde1d651559e296453e4dba94370a14dbbb2d1d4e2022302ee90e208321efcd8528ad89e46dc839ea9df618ea8394a6bff308e7726bae0c19bcd4be52da6258e2ef4e96aa21244429f49ef5cb486d7ff35cac1bacb7e95711944bccb2ab34700d42d1eb38b5d536b947348a458ede3dc6bd6ec547b1b0cae5b257be36a7124e1060c170ffa,4cc9a61ffe08984417712b80f962365af36ed66a8aab2a788d22a5c6b23962d23584638e712e9183c0a271383db0877f722d399116f9bef79a56ab096ef21749 5aca56a03a13784bdc3289d9364f79e2a85c12276b49b92db0adaa4f206d5028f213f678c3510e111f9dc4c1c1f8b6acb17a6413aa227607c515c62a733817ba5e762cc6748e7e0d6872c984d723c9bb3b117eb8963185300a80bfa65cde495d70a46c44858605fccbed086c2b45cef963d33294dbe9706b13af22f1b7c4cd5a001cfec251fba18e722c6e1c4b1166918b4f6f48a98b64b3c07fc86a6b17a6d0480ab79d4e6415b520f1c484d675b1,b36ea56bb6bf80d91d5a605f8409ae6b7d879ec40815b35c664cc6b01bf6c718ad464f15c34dd1315a79a5456b6c3f8ed89e60390bc71ef747e12cdc77706245 a5aad0e4646a32c85cfcac73f02fc5300f1982fabb2f2179e28303e447854094cdfc854310e5c0f60993ceff54d84d6b46323d930adb07c17599b35b505f09e784bca5985e0172257797fb53649e2e9723efd16865c31b5c3d5113b58bb0bfc8920fabdda086d7537e66d709d050bd14d0c960873f156fad5b3d3840cdfcdc9be6af519db262a27f40896ab25cc39f96984d650611c0d5a3080d5b3a1bf186abd42956588b3b58cd948970d298776060,8ecb8f622dab7087e9a95cd0341192fea6b1c956df9ad3ded823948b7849c4f3150c9559520953ebde98ed76f6e43bfe4fb25fda712525c6d3daa80323be8e4a 06cbbe67e94a978203ead6c057a1a5b098478b4b4cbef5a97e93c8e42f5572713575fc2a884531d7622f8f879387a859a80f10ef02708cd8f7413ab385afc357678b9578c0ebf641ef076a1a30f1f75379e9dcb2a885bdd295905ee80c0168a62a9597d10cf12dd2d8cee46645c7e5a141f6e0e23aa482abe5661c16e69ef1e28371e2e236c359ba4e92c25626a7b7ff13f6ea4ae906e1cfe163e91719b1f750a96cbde5fbc953d9e576cd216afc90323a,519215da34acfcd62dd617ecd5978365417d57c2671a7b48655b89f448b23b128d3ad04910a1bbbdc00e954a1e49765176a8aca4c37d56abf0e0b72e331a8d7c f1c528cf7739874707d4d8ad5b98f7c77169de0b57188df233b2dc8a5b31eda5db4291dd9f68e6bad37b8d7f6c9c0044b3bf74bbc3d7d1798e138709b0d75e7c593d3cccdc1b20c7174b4e692add820ace262d45ccfae2077e878796347168060a162ecca8c38c1a88350bd63bb539134f700fd4addd5959e255337daa06bc86358fabcbefdfb5bc889783d843c08aadc6c4f6c36f65f156e851c9a0f917e4a367b5ad93d874812a1de6a7b93cd53ad97232,0d1c1ad4e1cfefee854c4a739a0342e39d700dbaf4891978d7c839e87c680717d63ab4aa1ed7eb657ced9f8d2cf47204262e609610842fc5b219acff7eb188c4 9d9f3a7ecd51b41f6572fd0d0881e30390dfb780991dae7db3b47619134718e6f987810e542619dfaa7b505c76b7350c6432d8bf1cfebdf1069b90a35f0d04cbdf130b0dfc7875f4a4e62cdb8e525aadd7ce842520a482ac18f09442d78305fe85a74e39e760a4837482ed2f437dd13b2ec1042afcf9decdc3e877e50ff4106ad10a525230d11920324a81094da31deab6476aa42f20c84843cfc1c58545ee80352bdd3740dd6a16792ae2d86f11641bb717c2,0a5d9ef40ba2b98edbd7918cc6779483a1a00bd94cc1e1495495caf6cd47c6239571c3828f4565a0d53786781d712c10ef7333227f651974628887d442a5ef9d 5179888724819fbad3afa927d3577796660e6a81c52d98e9303261d5a4a83232f6f758934d50aa83ff9e20a5926dfebaac49529d006eb923c5ae5048ed544ec471ed7191edf46363383824f915769b3e688094c682b02151e5ee01e510b431c8865aff8b6b6f2f59cb6d129da79e97c6d2b8fa6c6da3f603199d2d1bcab547682a81cd6cf65f6551121391d78bcc23b5bd0e922ec6d8bf97c952e84dd28aef909aba31edb903b28fbfc33b7703cd996215a11238,ea83de9ae057701f6ec68ff67e92e0334c18ebb79af1953c2514408d58e69f105441642a1d5b7d6010f7cb15d131dd531855ca337a7b0b794fa6d6923f017afa 576ef3520d30b7a4899b8c0d5e359e45c5189add100e43be429a02fb3de5ff4f8fd0e79d9663acca72cd29c94582b19292a557c5b1315297d168fbb54e9e2ecd13809c2b5fce998edc6570545e1499dbe7fb74d47cd7f35823b212b05bf3f5a79caa34224fdd670d335fcb106f5d92c3946f44d3afcbae2e41ac554d8e6759f332b76be89a0324aa12c5482d1ea3ee89ded4936f3e3c080436f539fa137e74c6d3389bdf5a45074c47bc7b20b0948407a66d855e2f,6651c25d33d10b72535f1db26a1dfe2eb99cdd505448018589b5b88b7cab63eb439c31a474c6f1191df14efc7d0665cc7b82a7dc54a7c6b0c2fd1f75c30d6872 0df2152fa4f4357c8741529dd77e783925d3d76e95bafa2b542a2c33f3d1d117d159cf473f82310356fee4c90a9e505e70f8f24859656368ba09381fa245eb6c3d763f3093f0c89b972e66b53d59406d9f01aea07f8b3b615cac4ee4d05f542e7d0dab45d67ccccd3a606ccbeb31ea1fa7005ba07176e60dab7d78f6810ef086f42f08e595f0ec217372b98970cc6321576d92ce38f7c397a403bada1548d205c343ac09deca86325373c3b76d9f32028fea8eb32515,a754652247f7285ce2dd8a10035c69961e4f9c025e1fd087cbd3126e049a9e832c3f3a491fcde338b8c01946cdd7dec32a8fd7ed1cb3045bcaf3398905b1bb42 3e15350d87d6ebb5c8ad99d42515cfe17980933c7a8f6b8bbbf0a63728cefaad2052623c0bd5931839112a48633fb3c2004e0749c87a41b26a8b48945539d1ff41a4b269462fd199bfecd45374756f55a9116e92093ac99451aefb2af9fd32d6d7f5fbc7f7a540d5097c096ebc3b3a721541de073a1cc02f7fb0fb1b9327fb0b1218ca49c9487ab5396622a13ae546c97abdef6b56380dda7012a8384091b6656d0ab272d363cea78163ff765cdd13ab1738b940d16cae,fc1127f6650f32638453ab773f5ce60f9f6165bc9928eff18c7a3281540c7a615d2d62a92e557d4a1ec1229e84819d2dbf06ced4de0ff90040ecb961d678e181 c38d6b0b757cb552be40940ece0009ef3b0b59307c1451686f1a22702922800d58bce7a636c1727ee547c01b214779e898fc0e560f8ae7f61bef4d75eaa696b921fd6b735d171535e9edd267c192b99880c87997711002009095d8a7a437e258104a41a505e5ef71e5613ddd2008195f0c574e6ba3fe40099cfa116e5f1a2fa8a6da04badcb4e2d5d0de31fdc4800891c45781a0aac7c907b56d631fca5ce8b2cde620d11d1777ed9fa603541de794ddc5758fcd5fad78c0,43c21bccac7acee8ed437b874ed7cdf20ea2e9dc98ab82124610dc4f8416248b51309045cdfbce92efa9e56c5b36d6e5d27580319ce69c22e5d6c87e551eed4a 8d2de3f0b37a6385c90739805b170057f091cd0c7a0bc951540f26a5a75b3e694631bb64c7635eed316f51318e9d8de13c70a2aba04a14836855f35e480528b776d0a1e8a23b547c8b8d6a0d09b241d3be9377160cca4e6793d00a515dc2992cb7fc741daca171431da99cce6f7789f129e2ac5cf65b40d703035cd2185bb936c82002daf8cbc27a7a9e554b06196630446a6f0a14ba155ed26d95bd627b7205c072d02b60db0fd7e49ea058c2e0ba202daff0de91e845cf79,893934b8c630a9bf713c64ffd1128eac75d1cefdef6642fb27f20cb56694c2fa8ba6efcf3e0e56c7789cfaac6b2f7b247dea8367ffd269e74b9cdfb0537031ea c464bbdad275c50dcd983b65ad1019b9ff85a1e71c807f3204bb2c921dc31fbcd8c5fc45868ae9ef85b6c9b83bba2a5a822201ed68586ec5ec27fb2857a5d1a2d09d09115f22dcc39fe61f5e1ba0ff6e8b4acb4c6da748be7f3f0839739394ff7fa8e39f7f7e84a33c3866875c01bcb1263c9405d91908e9e0b50e7459fabb63d8c6bbb73d8e3483c099b55bc30ff092ff68b6adedfd477d63570c9f5515847f36e24ba0b705557130cec57ebad1d0b31a378e91894ee26e3a04,b4cb58d8497978916dc362d37ade12c7a0d8fe3b08b370659b27218291e04ef343095a91887b040984cb80b0c8611fd12c18ead37b95320d59eddb32113e42a4 8b8d68bb8a75732fe272815a68a1c9c5aa31b41dedc8493e76525d1d013d33cebd9e21a5bb95db2616976a8c07fcf411f5f6bc6f7e0b57aca78cc2790a6f9b898858ac9c79b165ff24e66677531e39f572be5d81eb3264524181115f32780257bfb9aeec6af12af28e587cac068a1a2953b59ad680f4c245b2e3ec36f59940d37e1d3db38e13edb29b5c0f404f6ff87f80fc8be7a225ff22fbb9c8b6b1d7330c57840d24bc75b06b80d30dad6806544d510af6c4785e823ac3e0b8,35c3f8f0dc28608ec942cb6287482219b42b2ebcbad92b4c34e77e21b7d93b0e85ebf483db2d4a979c48e58f746ac3dcf563ca7e1b2940371d8d83bf0795ec45 6b018710446f368e7421f1bc0ccf562d9c1843846bc8d98d1c9bf7d9d6fcb48bfc3bf83b36d44c4fa93430af75cd190bde36a7f92f867f58a803900df8018150384d85d82132f123006ac2aeba58e02a037fe6afbd65eca7c44977dd3dc74f48b6e7a1bfd5cc4dcf24e4d52e92bd4455848e4928b0eac8b7476fe3cc03e862aa4dff4470dbfed6de48e410f25096487ecfc32a27277f3f5023b2725ade461b1355889554a8836c9cf53bd767f5737d55184eea1ab3f53edd0976c485,b90e0cc6bc53182c4f2d17aa51391c8250c3032a12daf2fcc641b49aa81ed9449403567b75d4121376dd8cc2d2bdbafa456308ad7c0c13ba85619d75350727e3 c9534a24714bd4be37c88a3da1082eda7cabd154c309d7bd670dccd95aa535594463058a29f79031d6ecaa9f675d1211e9359be82669a79c855ea8d89dd38c2c761ddd0ec0ce9e97597432e9a1beae062cdd71edfdfd464119be9e69d18a7a7fd7ce0e2106f0c8b0abf4715e2ca48ef9f454dc203c96656653b727083513f8efb86e49c513bb758b3b052fe21f1c05bb33c37129d6cc81f1aef6adc45b0e8827a830fe545cf57d0955802c117d23ccb55ea28f95c0d8c2f9c5a242b33f,99497355ae1791799d11536c73605cdd1496c74e3e930b6272a103c3aa8c984d2d74b01ae72c94f2a4d3a069eac6e00984d21eae3dd7b32ad082b396601093ba 07906c87297b867abf4576e9f3cc7f82f22b154afcbf293b9319f1b0584da6a40c27b32e0b1b7f412c4f1b82480e70a9235b12ec27090a5a33175a2bb28d8adc475cefe33f7803f8ce27967217381f02e67a3b4f84a71f1c5228e0c2ad971373f6f672624fcea8d1a9f85170fad30fa0bbd25035c3b41a6175d467998bd1215f6f3866f53847f9cf68ef3e2fbb54bc994de2302b829c5eea68ec441fcbafd7d16ae4fe9fff98bf00e5bc2ad54dd91ff9fda4dd77b6c754a91955d1fbaad0,c98265396f3278fc532125ded097a6851fc5bf37ca32ec26f43e64874241309f568a217119ba984c54099f8899ac94b7900a4dd9d3877e18371f5dafd1921f08 588e94b9054abc2189df69b8ba34341b77cdd528e7860e5defcaa79b0c9a452ad4b82aa306be84536eb7cedcbe058d7b84a6aef826b028b8a0271b69ac3605a9635ea9f5ea0aa700f3eb7835bc54611b922964300c953efe7491e3677c2cebe0822e956cd16433b02c68c4a23252c3f9e151a416b4963257b783e038f6b4d5c9f110f871652c7a649a7bcedcbccc6f2d0725bb903cc196ba76c76aa9f10a190b1d1168993baa9ffc96a1655216773458bec72b0e39c9f2c121378feab4e76a,fc03be193a5ed0e6b3502661c2d9e4e2a503cf3fdb231526a90c3c4c26089c787ee6cbf50d90af61c17c5df0b29c373b426740cd0d6fc370de64eb2164bbaeb2 08959a7e4baae874928813364071194e2939772f20db7c3157078987c557c2a6d5abe68d520eef3dc491692e1e21bcd880adebf63bb4213b50897fa005256ed41b5690f78f52855c8d9168a4b666fce2da2b456d7a7e7c17ab5f2fb1ee90b79e698712e963715983fd07641ae4b4e9dc73203fac1ae11fa1f8c7941fcc82eab247addb56e2638447e9d609e610b60ce086656aaebf1da3c8a231d7d94e2fd0afe46b391ff14a72eaeb3f44ad4df85866def43d4781a0b3578bc996c87970b132,fb9c3a9183b6d251bf61faf1843455cb9c1be35eabdc131d5bf38e98337934968291e9d6dc104374bc234ff22cc23cd6f338e7a3b019cdc9df6e3750b6b01fde cb2a234f45e2ecd5863895a451d389a369aab99cfef0d5c9ffca1e6e63f763b5c14fb9b478313c8e8c0efeb3ac9500cf5fd93791b789e67eac12fd038e2547cc8e0fc9db591f33a1e4907c64a922dda23ec9827310b306098554a4a78f050262db5b545b159e1ff1dca6eb734b872343b842c57eafcfda8405eedbb48ef32e99696d135979235c3a05364e371c2d76f1902f1d83146df9495c0a6c57d7bf9ee77e80f9787aee27be1fe126cdc9ef893a4a7dcbbc367e40fe4e1ee90b42ea25af01,f7965b71198636f162d5a4e08d73e8c8a9ac1addbdfd7c180c489cca7360b3fee3a4286154460bf867923b348bfe32e79d9139a0cb52c46fa20785faeae0a8bc d16beadf02ab1d4dc6f88b8c4554c51e866df830b89c06e786a5f8757e8909310af51c840efe8d20b35331f4355d80f73295974653ddd620cdde4730fb6c8d0d2dcb2b45d92d4fbdb567c0a3e86bd1a8a795af26fbf29fc6c65941cddb090ff7cd230ac5268ab4606fccba9eded0a2b5d014ee0c34f0b2881ac036e24e151be89eeb6cd9a7a790afccff234d7cb11b99ebf58cd0c589f20bdac4f9f0e28f75e3e04e5b3debce607a496d848d67fa7b49132c71b878fd5557e082a18eca1fbda94d4b,5337477487a0af43eb7b995293ca2bef6eab2432b1333dcaead7064406e22861fcea623fd8b85b30465787352a36c943610f1458fd22e3f55ddd195a6acaa374 8f65f6bc59a85705016e2bae7fe57980de3127e5ab275f573d334f73f8603106ec3553016608ef2dd6e69b24be0b7113bf6a760ba6e9ce1c48f9e186012cf96a1d4849d75df5bb8315387fd78e9e153e76f8ba7ec6c8849810f59fb4bb9b004318210b37f1299526866f44059e017e22e96cbe418699d014c6ea01c9f0038b10299884dbec3199bb05adc94e955a1533219c1115fed0e5f21228b071f40dd57c4240d98d37b73e412fe0fa4703120d7c0c67972ed233e5deb300a22605472fa3a3ba86,28ab5c6298a602ae51eeec4080245f7ca10f9a8c304f22b5aa88d0e49226c01c2fd3cc5d8e99309767816e4f6d52719876065495ddb61dd113cfff06b11d8604 84891e52e0d451813210c3fd635b39a03a6b7a7317b221a7abc270dfa946c42669aacbbbdf801e1584f330e28c729847ea14152bd637b3d0f2b38b4bd5bf9c791c58806281103a3eabbaede5e711e539e6a8b2cf297cf351c078b4fa8f7f35cf61bebf8814bf248a01d41e86c5715ea40c63f7375379a7eb1d78f27622fb468ab784aaaba4e534a6dfd1df6fa15511341e725ed2e87f98737ccb7b6a6dfae416477472b046bf1811187d151bfa9f7b2bf9acdb23a3be507cdf14cfdf517d2cb5fb9e4ab6,2aeeac015d93245f6bf727cd182894097b902cd407d7e0dd06da1a63f4451c657ff39f925e7c8a894ae593d11ebc2d5d1de3d9a18018806719277d993f7fabed fdd7a9433a3b4afabd7a3a5e3457e56debf78e84b7a0b0ca0e8c6d53bd0c2dae31b2700c6128334f43981be3b213b1d7a118d59c7e6b6493a86f866a1635c12859cfb9ad17460a77b4522a5c1883c3d6acc86e6162667ec414e9a104aa892053a2b1d72165a855bacd8faf8034a5dd9b716f47a0818c09bb6baf22aa503c06b4ca261f557761989d2afbd88b6a678ad128af68672107d0f1fc73c5ca740459297b3292b281e93bceb761bde7221c3a55708e5ec84472cddcaa84ecf23723cc0991355c6280,d0a119617b7e30c2a85ecbb3bbf325ddd589431c8c2e2f9fc6e324a6ed8baf11870a80556cc0688fee4db70f22b9424b4f37a0f1e7ea314684da31bf473b3f34 70a40bfbef92277a1aad72f6b79d0177197c4ebd432668cfec05d099accb651062b5dff156c0b27336687a94b26679cfdd9daf7ad204338dd9c4d14114033a5c225bd11f217b5f4732da167ee3f939262d4043fc9cba92303b7b5e96aea12adda64859df4b86e9ee0b58e39091e6b188b408ac94e1294a8911245ee361e60e601eff58d1d37639f3753bec80ebb4efde25817436076623fc65415fe51d1b0280366d12c554d86743f3c3b6572e400361a60726131441ba493a83fbe9afda90f7af1ae717238d,1c88789885dccc9ae81029acf0b6c9d083cdb9774c345f1c755e54c45e9af63a70dc2abaefeb1ad416f1bd3d9b69d4c4404d22c85e636a4703769c0112b550b8 74356e449f4bf8644f77b14f4d67cb6bd9c1f5ae357621d5b8147e562b65c66585caf2e491b48529a01a34d226d436959153815380d5689e30b35357cdac6e08d3f2b0e88e200600d62bd9f5eaf488df86a4470ea227006182e44809009868c4c280c43d7d64a5268fa719074960087b3a6abc837882f882c837834535929389a12b2c78187e2ea07ef8b8eef27dc85002c3ae35f1a50bee6a1c48ba7e175f3316670b27983472aa6a61eed0a683a39ee323080620ea44a9f74411ae5ce99030528f9ab49c79f2,f52d7dd7ff248a1bca7b714f14a79df5766fd67c0031a471cc509f3516d7c348c33f7d4b1ca331b9323896b7074e10a891cea851f9ac20245812b8cfaa556352 8c3798e51bc68482d7337d3abb75dc9ffe860714a9ad73551e120059860dde24ab87327222b64cf774415a70f724cdf270de3fe47dda07b61c9ef2a3551f45a5584860248fabde676e1cd75f6355aa3eaeabe3b51dc813d9fb2eaa4f0f1d9f834d7cad9c7c695ae84b329385bc0bef895b9f1edf44a03d4b410cc23a79a6b62e4f346a5e8dd851c2857995ddbf5b2d717aeb847310e1f6a46ac3d26a7f9b44985af656d2b7c9406e8a9e8f47dcb4ef6b83caacf9aefb6118bfcff7e44bef6937ebddc89186839b77,a8aee42a77c9b6387dc97319581959d9bd878d061487fd069aca04d6f84d347e23587a6c7c56329b2df88c56c7100ed51ace5b5f778d65478f059cafd6c098fd fa56bf730c4f8395875189c10c4fb251605757a8fecc31f9737e3c2503b02608e6731e85d7a38393c67de516b85304824bfb135e33bf22b3a23b913bf6acd2b7ab85198b8187b2bcd454d5e3318cacb32fd6261c31ae7f6c54ef6a7a2a4c9f3ecb81ce3555d4f0ad466dd4c108a90399d70041997c3b25345a9653f3c9a6711ab1b91d6a9d2216442da2c973cbd685ee7643bfd77327a2f7ae9cb283620a08716dfb462e5c1d65432ca9d56a90e811443cd1ecb8f0de179c9cb48ba4f6fec360c66f252f6e64edc96b,4b961c4bb6035e7bdda2e1a3b6f9cd52d1789866044c4a925693bea88f65d046238bbeb4e7d3b060e47288041407392b291ae610ba70d6b4d64e74e7a7d0256f b6134f9c3e91dd8000740d009dd806240811d51ab1546a974bcb18d344642baa5cd5903af84d58ec5ba17301d5ec0f10ccd0509cbb3fd3fff9172d193af0f782252fd1338c7244d40e0e42362275b22d01c4c3389f19dd69bdf958ebe28e31a4ffe2b5f18a87831cfb7095f58a87c9fa21db72ba269379b2dc2384b3da953c7925761fed324620acea435e52b424a7723f6a2357374157a34cd8252351c25a1b232826cefe1bd3e70ffc15a31e7c0598219d7f00436294d11891b82497bc78aa5363892a2495df8c1eef,c0515b65b640b3ffd0a1582a54f4c8fb35c109b7fb472666e043d3c00ae3e0e0fa156c4cefb46b5b7b4c0e480623e1a26018bdaedc3e27d9c0d44c3e1d862015 c941cdb9c28ab0a791f2e5c8e8bb52850626aa89205bec3a7e22682313d198b1fa33fc7295381354858758ae6c8ec6fac3245c6e454d16fa2f51c4166fab51df272858f2d603770c40987f64442d487af49cd5c3991ce858ea2a60dab6a65a34414965933973ac2457089e359160b7cdedc42f29e10a91921785f6b7224ee0b349393cdcff6151b50b377d609559923d0984cda6000829b916ab6896693ef6a2199b3c22f7dc5500a15b8258420e314c222bc000bc4e5413e6dd82c993f8330f5c6d1be4bc79f08a1a0a46,45c584564d9e0b8239cc1284939ba407a8e5e981691eab6a04d9354c9c855e400b3037151122ced237636e61a7ff2905e0213a6d07306c459e2189e3e6a9e0b8 4499efffac4bcea52747efd1e4f20b73e48758be915c88a1ffe5299b0b005837a46b2f20a9cb3c6e64a9e3c564a27c0f1c6ad1960373036ec5bfe1a8fc6a435c2185ed0f114c50e8b3e4c7ed96b06a036819c9463e864a58d6286f785e32a804443a56af0b4df6abc57ed5c2b185ddee8489ea080deeee66aa33c2e6dab36251c402682b6824821f998c32163164298e1fafd31babbcffb594c91888c6219079d907fdb438ed89529d6d96212fd55abe20399dbefd342248507436931cdead496eb6e4a80358acc78647d043,136723350857e03756f02e60451a28e711611927b8136dcff3e567dc618ff36b3100737c9781b9c84a576745c1e6be030dac8803a71464af39db94d00253af3e eecbb8fdfa4da62170fd06727f697d81f83f601ff61e478105d3cb7502f2c89bf3e8f56edd469d049807a38882a7eefbc85fc9a950952e9fa84b8afebd3ce782d4da598002827b1eb98882ea1f0a8f7aa9ce013a6e9bc462fb66c8d4a18da21401e1b93356eb12f3725b6db1684f2300a98b9a119e5d27ff704affb618e12708e77e6e5f34139a5a41131fd1d6336c272a8fc37080f041c71341bee6ab550cb4a20a6ddb6a8e0299f2b14bc730c54b8b1c1c487b494bdccfd3a53535ab2f231590bf2c4062fd2ad58f906a2d0d,c0f7713aa021a04525f751722a9ae5c4c7934d0a286f1fb05823d86a96251c04decd960d8d4d66e2c565e6207a49612e1efde386536854b6ab9a4807b0a145be e64f3e4ace5c8418d65fec2bc5d2a303dd458034736e3b0df719098be7a206deaf52d6ba82316caf330ef852375188cde2b39cc94aa449578a7e2a8e3f5a9d68e816b8d16889fbc0ebf0939d04f63033ae9ae2bdab73b88c26d6bd25ee460ee1ef58fb0afa92cc539f8c76d3d097e7a6a63ebb9b5887edf3cf076028c5bbd5b9db3211371ad3fe121d4e9bf44229f4e1ecf5a0f9f0eba4d5ceb72878ab22c3f0eb5a625323ac66f7061f4a81fac834471e0c59553f108475fe290d43e6a055ae3ee46fb67422f814a68c4be3e8c9,fe1cb67d77fb463f77747fed292a989a341044a8b65fa1df1441aa41a5c795916626e0e479fd0ba7f9b1dc15fed245b99598d35359834e8fd25cf19685219be2 d2cb2d733033f9e91395312808383cc4f0ca974e87ec68400d52e96b3fa6984ac58d9ad0938dde5a973008d818c49607d9de2284e7618f1b8aed8372fbd52ed54557af4220fac09dfa8443011699b97d743f8f2b1aef3537ebb45dcc9e13dfb438428ee190a4efdb3caeb7f3933117bf63abdc7e57beb4171c7e1ad260ab0587806c4d137b6316b50abc9cce0dff3acada47bbb86be777e617bbe578ff4519844db360e0a96c6701290e76bb95d26f0f804c8a4f2717eac4e7de9f2cff3bbc55a17e776c0d02856032a6cd10ad2838,4043cdd3f0ea793e49a8ec382f8071f6020b529cf8c82e969429117b362129b7689d3f1ea7ff77ee50263cecdac5a43aa2aee97cf3e665ccf535f6de65ad0100 f2998955613dd414cc111df5ce30a995bb792e260b0e37a5b1d942fe90171a4ac2f66d4928d7ad377f4d0554cbf4c523d21f6e5f379d6f4b028cdcb9b1758d3b39663242ff3cb6ede6a36a6f05db3bc41e0d861b384b6dec58bb096d0a422fd542df175e1be1571fb52ae66f2d86a2f6824a8cfaacbac4a7492ad0433eeb15454af8f312b3b2a577750e3efbd370e8a8cac1582581971fba3ba4bd0d76e718dacf8433d33a59d287f8cc92234e7a271041b526e389efb0e40b6a18b3aaf658e82ed1c78631fd23b4c3eb27c3faec8685,7392bd445f58cd5d7d3ca98579cbaa9a9437d0c95e7932b4004117f207f8aa39156bc42537b0c790150d443c2d68c2c43e362df9d019601797162e63076936c3 447797e2899b72a356ba55bf4df3acca6cdb1041eb477bd1834a9f9acbc340a294d729f2f97df3a610be0ff15edb9c6d5db41644b9874360140fc64f52aa03f0286c8a640670067a84e017926a70438db1bb361defee7317021425f8821def26d1efd77fc853b818545d055adc9284796e583c76e6fe74c9ac2587aa46aa8f8804f2feb5836cc4b3ababab8429a5783e17d5999f32242eb59ef30cd7adabc16d72dbdb097623047c98989f88d14eaf02a7212be16ec2d07981aaa99949ddf89ecd90333a77bc4e1988a82abf7c7caf3291,9ff0f0d70ca076ca44c353a3c678c2095c89f619bb53ec9cb4888e2f14e50fbc146a7b521356369f1b9d5665836e45d5400f9856cc6da3b3afe6f3b0471fc9c6 9f2c18ade9b380c784e170fb763e9aa205f64303067eb1bcea93df5dac4bf5a2e00b78195f808df24fc76e26cb7be31dc35f0844cded1567bba29858cffc97fb29010331b01d6a3fb3159cc1b973d255da9843e34a0a4061cabdb9ed37f241bfabb3c20d32743f4026b59a4ccc385a2301f83c0b0a190b0f2d01acb8f0d41111e10f2f4e149379275599a52dc089b35fdd5234b0cfb7b6d8aebd563ca1fa653c5c021dfd6f5920e6f18bfafdbecbf0ab00281333ed50b9a999549c1c8f8c63d7626c48322e9791d5ff72294049bde91e73f8,a981faa9d3cac492b2fa078d1158f81248df8db36acbd5bad3a6c633bbe500eb481d2937beee9a76c84edcdfa0f997edce708f07851422a7597e2463fc1912cd ae159f3fa33619002ae6bcce8cbbdd7d28e5ed9d61534595c4c9f43c402a9bb31f3b301cbfd4a43ce4c24cd5c9849cc6259eca90e2a79e01ffbac07ba0e147fa42676a1d668570e0396387b5bcd599e8e66aaed1b8a191c5a47547f61373021fa6deadcb55363d233c24440f2c73dbb519f7c9fa5a8962efd5f6252c0407f190dfefad707f3c7007d69ff36b8489a5b6b7c557e79dd4f50c06511f599f56c896b35c917b63ba35c6ff8092baf7d1658e77fc95d8a6a43eeb4c01f33f03877f92774be89c1114dd531c011e53a34dc248a2f0e6,89025c13bc6b61a1bfadb1d37d676e49e6754e9dfc00d52c5ef13ba57c845d14ac75d5ae6f06714028103c3424717f4c2fbf6d88d055690987620ac5b440576a 3b8e97c5ffc2d6a40fa7de7fcefc90f3b12c940e7ab415321e29ee692dfac799b009c99dcddb708fce5a178c5c35ee2b8617143edc4c40b4d313661f49abdd93cea79d117518805496fe6acf292c4c2a1f76b403a97d7c399daf85b46ad84e16246c67d6836757bde336c290d5d401e6c1386ab32797af6bb251e9b2d8fe754c47482b72e0b394eab76916126fd68ea7d65eb93d59f5b4c5ac40f7c3b37e7f3694f29424c24af8c8f0ef59cd9dbf1d28e0e10f799a6f78cad1d45b9db3d7dee4a7059abe99182714983b9c9d44d7f5643596d4f3,1545d8334836f7436f77f21532f5d3058e351db8357efc1e089583a0c40ad3a6af5f2fee793d3fe1b4721f6817a373499b20912a35c4609fa9d84bd274e978fc 3434ec31b10fafdbfeec0dd6bd94e80f7ba9dca19ef075f7eb017512af66d6a4bcf7d16ba0819a1892a6372f9b35bcc7ca8155ee19e8428bc22d214856ed5fa9374c3c09bde169602cc219679f65a1566fc7316f4cc3b631a18fb4449fa6afa16a3db2bc4212eff539c67cf184680826535589c7111d73bffce431b4c40492e763d9279560aaa38eb2dc14a212d723f994a1fe656ff4dd14551ce4e7c621b2aa5604a10001b2878a897a28a08095c325e10a26d2fb1a75bfd64c250309bb55a44f23bbac0d5516a1c687d3b41ef2fbbf9cc56d4739,afaf201ba353316c1a7b810f120cff941bb658b0763eef59433403d8313b8f00bf18177898ae71907d3b524e68bb028ea1442866856111b12089bcbed177fd46 7c7953d81c8d208fd1c97681d48f49dd003456de60475b84070ef4847c333b74575b1fc8d2a186964485a3b8634feaa3595aaa1a2f4595a7d6b6153563dee31bbac443c8a33eed6d5d956a980a68366c2527b550ee950250dfb691eacbd5d56ae14b970668be174c89df2fea43ae52f13142639c884fd62a3683c0c3792f0f24ab1318bcb27e21f4737fab62c77ea38bc8fd1cf41f7dab64c13febe7152bf5bb7ab5a78f5346d43cc741cb6f72b7b8980f268b68bf62abdfb1577a52438fe14b591498cc95f071228460c7c5d5ceb4a7bde588e7f21c,3fb4f21a231973d2247f206d47b19ee1551647fd4d4f21fbcd6f653577c1ac69eae4db432c0234acbe17b2ced0238a56acc34d7bb82fbc190903035b7c538857 7a6a4f4fdc59a1d223381ae5af498d74b7252ecf59e389e49130c7eaee626e7bd9897effd92017f4ccde66b0440462cdedfd352d8153e6a4c8d7a0812f701cc737b5178c2556f07111200eb627dbc299caa792dfa58f35935299fa3a3519e9b03166dffa159103ffa35e8577f7c0a86c6b46fe13db8e2cdd9dcfba85bdddcce0a7a8e155f81f712d8e9fe646153d3d22c811bd39f830433b2213dd46301941b59293fd0a33e2b63adbd95239bc01315c46fdb678875b3c81e053a40f581cfbec24a1404b1671a1b88a6d06120229518fb13a74ca0ac5ae,0b1c53e68667314b5f3f0f30e25c622b1a86d10701d4a0473fd40f22c50acb47d63eafa582a2fbe5453a3f73bfbca923680f4c2c7f99c98388c07ddd7aff2c6e d9faa14cebe9b7de551b6c0765409a33938562013b5e8e0e1e0a6418df7399d0a6a771fb81c3ca9bd3bb8e2951b0bc792525a294ebd1083688806fe5e7f1e17fd4e3a41d00c89e8fcf4a363caedb1acb558e3d562f1302b3d83bb886ed27b76033798131dab05b4217381eaaa7ba15ec820bb5c13b516dd640eaec5a27d05fdfca0f35b3a5312146806b4c0275bcd0aaa3b2017f346975db566f9b4d137f4ee10644c2a2da66deeca5342e236495c3c6280528bfd32e90af4cd9bb908f34012b52b4bc56d48cc8a6b59bab014988eabd12e1a0a1c2e170e7,d836d0ce3a28ad71c3a876796bf65aab838d84e4802ed49ac04484ae06aa08ed31deb5c38c1022f0aceed49cb58e38d3aab09efeced9349fdc33379251259826 2d8427433d0c61f2d96cfe80cf1e932265a191365c3b61aaa3d6dcc039f6ba2ad52a6a8cc30fc10f705e6b7705105977fa496c1c708a277a124304f1fc40911e7441d1b5e77b951aad7b01fd5db1b377d165b05bbf898042e39660caf8b279fe5229d1a8db86c0999ed65e53d01ccbc4b43173ccf992b3a14586f6ba42f5fe30afa8ae40c5df29966f9346da5f8b35f16a1de3ab6de0f477d8d8660918060e88b9b9e9ca6a4207033b87a812dbf5544d39e4882010f82b6ce005f8e8ff6fe3c3806bc2b73c2b83afb704345629304f9f86358712e9fae3ca3e,61b8a7520dab4d395044b1a9ccc4f5263edae0325767e3d2a0ef225933a81f7e3796280870dbdab8457d585c4106315b537653dc3d77e915100f421db39f43b3 5e19d97887fcaac0387e22c6f803c34a3dacd2604172433f7a8a7a526ca4a2a1271ecfc5d5d7be5ac0d85d921095350dfc65997d443c21c8094e0a3fefd2961bcb94aed03291ae310ccda75d8ace4bc7d89e7d3e5d1650bda5d668b8b50bfc8e608e184f4d3a9a2badc4ff5f07e0c0bc8a9f2e0b2a26fd6d8c550008faaab75fd71af2a424bec9a7cd9d83fad4c8e9319115656a8717d3b523a68ff8004258b9990ed362308461804ba3e3a7e92d8f2ffae5c2fba55ba5a3c27c0a2f71bd711d2fe1799c2adb31b200035481e9ee5c4adf2ab9c0fa50b23975cf,b847b292818e800baa415c2521a8158a6ab749934db693d0d2e4613cdae60bd56075cf2c29f587dc3530164190bc2c02d97ca32347fa2aa431e511bb7d1c87e8 c8e976ab4638909387ce3b8d4e510c3230e5690e02c45093b1d297910abc481e56eea0f296f98379dfc9080af69e73b2399d1c143bee80ae1328162ce1ba7f6a8374679b20aacd380eb4e61382c99998704d62701afa914f9a2705cdb065885f50d086c3eb5753700c387118bb142f3e6da1e988dfb31ac75d7368931e45d1391a274b22f83ceb072f9bcabc0b216685bfd789f5023971024b1878a205442522f9ea7d8797a4102a3df41703768251fd5e017c85d1200a464118aa35654e7ca39f3c375b8ef8cbe7534dbc64bc20befb417cf60ec92f63d9ee7397,95ed6d8567774e66404fc32b7a01e1c625fc8322ab9be0cd7c936731638b04c09748973d95665a35b218d1531411f3aa5e5c47e65d857a43783e2bd3c9d29005 7145fa124b7429a1fc2231237a949ba7201bcc1822d3272de005b682398196c25f7e5cc2f289fbf44415f699cb7fe6757791b1443410234ae061edf623359e2b4e32c19bf88450432dd01caa5eb16a1dc378f391ca5e3c4e5f356728bddd4975db7c890da8bbc84cc73ff244394d0d48954978765e4a00b593f70f2ca082673a261ed88dbcef1127728d8cd89bc2c597e9102ced6010f65fa75a14ebe467fa57ce3bd4948b6867d74a9df5c0ec6f530cbf2ee61ce6f06bc8f2864dff5583776b31df8c7ffcb61428a56bf7bd37188b4a5123bbf338393af46eda85e6,98350793fc1540ae72757c2d1ba0fa34df1923c987f365752788e3c65931746c36d13fd293db8ea1b6374872ccf74e9b0cff67c6debb4263390cd96e2bdd864f 7fdfadcc9d29bad23ae038c6c65cda1aef757221b8872ed3d75ff8df7da0627d266e224e812c39f7983e4558bfd0a1f2bef3feb56ba09120ef762917b9c093867948547aee98600d10d87b20106878a8d22c64378bf634f7f75900c03986b077b0bf8b740a82447b61b99fee5376c5eb6680ec9e3088f0bdd0c56883413d60c1357d3c811950e5890e7600103c916341b80c743c6a852b7b4fb60c3ba21f3bc15b8382437a68454779cf3cd7f9f90ccc8ef28d0b706535b1e4108eb5627bb45d719cb046839aee311ca1abdc8319e050d67972cb35a6b1601b25dbf487,c2493d60e1efa6b472933ede64d1f49eff773635f66c6454e57e47935a0f4c5b94548da5c369bdac7146e54f017c3fd674ce32f8d95151c7cbc3e3bba3ebe0d3 988638219fd3095421f826f56e4f09e356296b628c3ce6930c9f2e758fd1a80c8273f2f61e4daae65c4f110d3e7ca0965ac7d24e34c0dc4ba2d6ff0bf5bbe93b3585f354d7543cb542a1aa54674d375077f2d360a8f4d42f3db131c3b7ab7306267ba107659864a90c8c909460a73621d1f5d9d3fd95beb19b23db1cb6c0d0fba91d36891529b8bd8263caa1bab56a4affaed44962df096d8d5b1eb845ef31188b3e10f1af811a13f156beb7a288aae593ebd1471b624aa1a7c6adf01e2200b3d72d88a3aed3100c88231e41efc376906f0b580dc895f080fda5741db1cb,70d7ba6585cd2ef91bb261025f9dcc80f8359c9dc30c7c2961f0d1f6057b9c44e3aa67a4bc00f137886e3cf1316d75f8ebf651c79df9a99cabd0383008372016 5aab62756d307a669d146aba988d9074c5a159b3de85151a819b117ca1ff6597f6156e80fdd28c9c3176835164d37da7da11d94e09add770b68a6e081cd22ca0c004bfe7cd283bf43a588da91f509b27a6584c474a4a2f3ee0f1f56447379240a5ab1fb77fdca49b305f07ba86b62756fb9efb4fc225c86845f026ea542076b91a0bc2cdd136e122c659be259d98e5841df4c2f60330d4d8cdee7bf1a0a244524eecc68ff2aef5bf0069c9e87a11c6e519de1a4062a10c83837388f7ef58598a3846f49d499682b683c4a062b421594fafbc1383c943ba83bdef515efcf10d,b50d0da9b3db1545cc1d2f35465c74d07543b3564249f12c546a08797eea73326ce624203a3d25c92ce636bcce86da9cb9f39bc755ec0f39c090a0e8a72da70b 47b8216aa0fbb5d67966f2e82c17c07aa2d6327e96fcd83e3de7333689f3ee79994a1bf45082c4d725ed8d41205cb5bcdf5c341f77facb1da46a5b9b2cbc49eadf786bcd881f371a95fa17df73f606519aea0ff79d5a11427b98ee7f13a5c00637e2854134691059839121fea9abe2cd1bcbbbf27c74caf3678e05bfb1c949897ea01f56ffa4dafbe8644611685c617a3206c7a7036e4ac816799f693dafe7f19f303ce4eba09d21e03610201bfc665b72400a547a1e00fa9b7ad8d84f84b34aef118515e74def11b9188bd1e1f97d9a12c30132ec2806339bdadacda2fd8b78,83752a88c915d4193296725decc50c9c05d25d6bbd9af2e0ef06286ecfee961de959bedbb130704d432c2bc89930208f450e0a022661724043d268cb24e7fc47 8cff1f67fe53c098896d9136389bd8881816ccab34862bb67a656e3d98896f3ce6ffd4da73975809fcdf9666760d6e561c55238b205d8049c1cedeef374d1735daa533147bfa960b2cce4a4f254176bb4d1bd1e89654432b8dbe1a135c42115b394b024856a2a83dc85d6782be4b444239567ccec4b184d4548eae3ff6a192f343292ba2e32a0f267f31cc26719eb85245d415fb897ac2da433ee91a99424c9d7f1766a44171d1651001c38fc79294accc68ceb5665d36218454d3ba169ae058a831338c17743603f81ee173bfc0927464f9bd728dee94c6aeab7aae6ee3a627e8,7288424ba855a76c7480b606f8f32e94396799bab8bb3fc8fd21d180966c64971071e2645622524ec7d1645eea7b7c1fa21f7f5b6b90f3e5beb99222f05ea905 eacd07971cff9b9939903f8c1d8cbb5d4db1b548a85d04e037514a583604e787f32992bf2111b97ac5e8a938233552731321522ab5e8583561260b7d13ebeef785b23a41fd8576a6da764a8ed6d822d4957a545d5244756c18aa80e1aad4d1f9c20d259dee1711e2cc8fd013169fb7cc4ce38b362f8e0936ae9198b7e838dcea4f7a5b9429bb3f6bbcf2dc92565e3676c1c5e6eb3dd2a0f86aa23edd3d0891f197447692794b3dfa269611ad97f72b795602b4fdb198f3fd3eb41b415064256e345e8d8c51c555dc8a21904a9b0f1ad0effab7786aac2da3b196507e9f33ca356427,e9399376d89c4dd4464e45825f4302cdccd4c41db4e8951be17bcc6451858332398b7e4e7f5eee6830c715451e4aacdb179dd5247ba6d5728cbd4060aeb77cb9 23ac4e9a42c6ef45c3336ce6dfc2ff7de8884cd23dc912fef0f7756c09d335c189f3ad3a23697abda851a81881a0c8ccafc980ab2c702564c2be15fe4c4b9f10dfb2248d0d0cb2e2887fd4598a1d4acda897944a2ffc580ff92719c95cf2aa42dc584674cb5a9bc5765b9d6ddf5789791d15f8dd925aa12bffafbce60827b490bb7df3dda6f2a143c8bf96abc903d83d59a791e2d62814a89b8080a28060568cf24a80ae61179fe84e0ffad00388178cb6a617d37efd54cc01970a4a41d1a8d3ddce46edbba4ab7c90ad565398d376f431189ce8c1c33e132feae6a8cd17a61c630012,ccea447efe6f8b06ac42076280377635f5fd0767f4af8b245fe63b79fe4974e9156744e60e98d12018214c39f8a826d506d0d5948645e9f883c208d37d927a41 0172df732282c9d488669c358e3492260cbe91c95cfbc1e3fea6c4b0ec129b45f242ace09f152fc6234e1bee8aab8cd56e8b486e1dcba9c05407c2f95da8d8f1c0af78ee2ed82a3a79ec0cb0709396ee62aadb84f8a4ee8a7ccca3c1ee84e302a09ea802204afecf04097e67d0f8e8a9d2651126c0a598a37081e42d168b0ae8a71951c524259e4e2054e535b779679bdade566fe55700858618e626b4a0faf895bcce9011504a49e05fd56127eae3d1f8917afb548ecadabda1020111fec9314c413498a360b08640549a22cb23c731ace743252a8227a0d2689d4c6001606678dfb921,7e03fce3b67ebb28308823f56aa93dbb4d9efdbd93300d97b1f99efcb82c3684c5a5a5aa64e7a34c69b89399cab05f22e8e88607b863336e4cbf8cf6e74b98c1 3875b9240cf3e0a8b59c658540f26a701cf188496e2c2174788b126fd29402d6a75453ba0635284d08835f40051a2a9683dc92afb9383719191231170379ba6f4adc816fecbb0f9c446b785bf520796841e58878b73c58d3ebb097ce4761fdeabe15de2f319dfbaf1742cdeb389559c788131a6793e193856661376c81ce9568da19aa6925b47ffd77a43c7a0e758c37d69254909ff0fbd415ef8eb937bcd49f91468b49974c07dc819abd67395db0e05874ff83dddab895344abd0e7111b2df9e58d76d85ad98106b36295826be04d435615595605e4b4bb824b33c4afeb5e7bb0d19f909,6a457ae74f89c42bbd2bd2ebfffbd71f036ff7b76c4afddffbd52f32e588a9543ced09da9a3e130ac1a19ef1acb2fa68ac41917ed6bad37a60982b16b5eb4ff3 747cc1a59fefba94a9c75ba866c30dc5c1cb0c0f8e9361d98484956dd5d1a40f6184afbe3dac9f76028d1caeccfbf69199c6ce2b4c092a3f4d2a56fe5a33a00757f4d7dee5dfb0524311a97ae0668a47971b95766e2f6dd48c3f57841f91f04a00ad5ea70f2d479a2620dc5cd78eaab3a3b011719b7e78d19ddf70d9423798af77517ebc55392fcd01fc600d8d466b9e7a7a85bf33f9cc5419e9bd874ddfd60981150ddaf8d7febaa4374f0872a5628d318000311e2f5655365ad4d407c20e5c04df17a222e7deec79c5ab1116d8572f91cd06e1ccc7ced53736fc867fd49ecebe6bf8082e8a,91b8cd795d1a6828601e00db0c91ff9a6f837444f53fcf89e990b88f5f3e34eb490e72a1795fab84f78da3f7afc89896c7cde5865d1bcd74d5639e4903c683fe 57af971fccaec97435dc2ec9ef0429bcedc6b647729ea168858a6e49ac1071e706f4a5a645ca14e8c7746d65511620682c906c8b86ec901f3dded4167b3f00b06cbfac6aee3728051b3e5ff10b4f9ed8bd0b8da94303c833755b3ca3aeddf0b54bc8d6632138b5d25bab03d17b3458a9d782108006f5bb7de75b5c0ba854b423d8bb801e701e99dc4feaad59bc1c7112453b04d33ea3635639fb802c73c2b71d58a56bbd671b18fe34ed2e3dca38827d63fdb1d4fb3285405004b2b3e26081a8ff08cd6d2b08f8e7b7e90a2ab1ed7a41b1d0128522c2f8bff56a7fe67969422ce839a9d4608f03,7635d79c1b32e4934eb0090c6d46c0b240f626c77d84f8eabf571ba8fde924f4a1cf456704b101f667f912dedbbcbeff2180a419a68c7b790ba606e6602d5115 04e16dedc1227902baaf332d3d08923601bdd64f573faa1bb7201918cfe16b1e10151dae875da0c0d63c59c3dd050c4c6a874011b018421afc4623ab0381831b2da2a8ba42c96e4f70864ac44e106f94311051e74c77c1291bf5db9539e69567bf6a11cf6932bbbad33f8946bf5814c066d851633d1a513510039b349939bfd42b858c21827c8ff05f1d09b1b0765dc78a135b5ca4dfba0801bcaddfa175623c8b647eacfb4444b85a44f73890607d06d507a4f8393658788669f6ef4deb58d08c50ca0756d5e2f49d1a7ad73e0f0b3d3b5f090acf622b1878c59133e4a848e05153592ea81c6fbf,ddd0c521ed60c55f65bae241a9072d7f6f6cca7f64624ec92c037bf8bc16f0602e75ee46879af41f3eff5ce235905f3856a031c3cc90a4851f4cd8463aae6de8 7c815c384eee0f288ece27cced52a01603127b079c007378bc5d1e6c5e9e6d1c735723acbbd5801ac49854b2b569d4472d33f40bbb8882956245c366dc3582d71696a97a4e19557e41e54dee482a14229005f93afd2c4a7d8614d10a97a9dfa07f7cd946fa45263063ddd29db8f9e34db60daa32684f0072ea2a9426ecebfa5239fb67f29c18cbaa2af6ed4bf4283936823ac1790164fec5457a9cba7c767ca59392d94cab7448f50eb34e9a93a80027471ce59736f099c886dea1ab4cba4d89f5fc7ae2f21ccd27f611eca4626b2d08dc22382e92c1efb2f6afdc8fdc3d2172604f5035c46b8197d3,c84c03564d024f90560001ca4cef867af77999943e313ca17328756c43d2fe31cf98812d3a7aab1535c28ed29d692db4824e8d6dce06c9994dbcbe0f82633fbe e29d505158dbdd937d9e3d2145658ee6f5992a2fc790f4f608d9cdb44a091d5b94b88e81fac4fdf5c49442f13b911c55886469629551189eaff62488f1a479b7db11a1560e198ddccccf50159093425ff7f1cb8d1d1246d0978764087d6bac257026b090efae8cec5f22b6f21c59ace1ac7386f5b8837ca6a12b6fbf5534dd0560ef05ca78104d3b943ddb220feaec89aa5e692a00f822a2ab9a2fe60350d75e7be16ff2526dc643872502d01f42f188abed0a6e9a6f5fd0d1ce7d5755c9ffa66b0af0b20bd806f08e06156690d81ac811778ca3dac2c249b96002017fce93e507e3b953acf99964b847,b4563191675191ed4d6107e52fa15adc9d70642358d8c3e34df10274e25d373fd8d19e92472b823e28bbdd1d541a95fddd0d43c79fcb3ba18a7ec038d3ef69a6 d85588696f576e65eca0155f395f0cfacd83f36a99111ed5768df2d116d2121e32357ba4f54ede927f189f297d3a97fad4e9a0f5b41d8d89dd7fe20156799c2b7b6bf9c957ba0d6763f5c3bc5129747bbb53652b49290cff1c87e2cdf2c4b95d8aaee09bc8fbfa6883e62d237885810491bfc101f1d8c636e3d0ede838ad05c207a3df4fad76452979eb99f29afaecedd1c63b8d36cf378454a1bb67a741c77ac6b6b3f95f4f02b64dabc15438613ea49750df42ee90101f115aa9abb9ff64324dde9dabbb01054e1bd6b4bcdc7930a44c2300d87ca78c06924d0323ad7887e46c90e8c4d100acd9eed21e,a30bd80cb3acb3bfa7e037a3d0d2500974d71957f68135133020c32eb4d688f132d0fb045be027f124b3d935cb889e3cbc4a4a420026bb2ac2a4b1b15c57bb64 3a12f8508b40c32c74492b66323375dcfe49184c78f73179f3314b79e63376b8ac683f5a51f1534bd729b02b04d002f55cbd8e8fc9b5ec1ea6bbe6a0d0e7431518e6ba45d124035f9d3dce0a8bb7bf1430a9f657e0b4ea9f20eb20c786a58181a1e20a96f1628f8728a13bdf7a4b4b32fc8aa7054cc4881ae7fa19afa65c6c3ee1b3ade3192af42054a8a911b8ec1826865d46d93f1e7c5e2b7813c92a506e53886f3d4701bb93d2a681ad109c845904bb861af8af0646b6e399b38b614051d34f6842563a0f37ec00cb3d865fc5d746c4987de2a65071100883a2a9c7a2bfe1e2dd603d9ea24dc7c5fd06be,4a5809e457f54d9c7e8209f6c482d52a4efe6d8a20c4c6fba83687294929232d25cd7bf511d8e6fbf272e983f07d044f8723098d7a381f04e957b0787087ef02 1861edce46fa5ad17e1ff1deae084dec580f97d0a67885dfe834b9dfac1ae076742ce9e267512ca51f6df5a455af0c5fd6abf94acea103a3370c354485a7846fb84f3ac7c2904b5b2fbf227002ce512133bb7e1c4e50057bfd1e44db33c7cdb969a99e284b184f50a14b068a1fc5009d9b298dbe92239572a7627aac02abe8f3e3b473417f36d4d2505d16b7577f4526c9d94a270a2dfe450d06da8f6fa956879a0a55cfe99e742ea555ea477ba3e9b44ccd508c375423611af92e55345dc215779b2d5119eba49c71d49b9fe3f1569fa24e5ca3e332d042422a8b8158d3ec66a80012976f31ffdf305f0c9c5e,a79016c34bee41ab5cb10278478a5b55d07c2e0831835dde6f8ff8dafac37a5f88fba07cceffe35849dbd123b06df2335b002645d078fe1b08843c257a1bbe56 08d0ffde3a6e4ef65608ea672e4830c12943d7187ccff08f4941cfc13e545f3b9c7ad5eebbe2b01642b486caf855c2c73f58c1e4e3391da8e2d63d96e15fd84953ae5c231911b00ad6050cd7aafdaac9b0f663ae6aab45519d0f5391a541707d479034e73a6ad805ae3598096af078f1393301493d663dd71f83869ca27ba508b7e91e81e128c1716dc3acfe3084b2201e04cf8006617eecf1b640474a5d45cfde9f4d3ef92d6d055b909892194d8a8218db6d8203a84261d200d71473d7488f3427416b6896c137d455f231071cacbc86e0415ab88aec841d96b7b8af41e05bb461a40645bf176601f1e760de5f,603f7b09565634d4410b574a4dc9ea467437964517e5efa51a362a30e8c632c55162a3351bb5532e40948aa9a1e3a8786c0422aec3ec338c7f4b57679200452b d782abb72a5be3392757be02d3e45be6e2099d6f000d042c8a543f50ed6ebc055a7f133b0dd8e9bc348536edcaae2e12ec18e8837df7a1b3c87ec46d50c241dee820fd586197552dc20beea50f445a07a38f1768a39e2b2ff05dddedf751f1def612d2e4d810daa3a0cc904516f9a43af660315385178a529e51f8aae141808c8bc5d7b60cac26bb984ac1890d0436ef780426c547e94a7b08f01acbfc4a3825eae04f520a9016f2fb8bf5165ed12736fc71e36a49a73614739eaa3ec834069b1b40f1350c2b3ab885c02c640b9f7686ed5f99527e41cfcd796fe4c256c9173186c226169ff257954ebda81c0e5f99,1018692d530c55baa580ae1e7384351100d4637cd33869c71e6076a3d4e310d964b81d593e89718845ac7a89e8ad5073506427c6c8f7fadfa0c5dc3cfaa5d924 5fce8109a358570e40983e1184e541833bb9091e280f258cfb144387b05d190e431cb19baa67273ba0c58abe91308e1844dcd0b3678baa42f335f2fa05267a0240b3c718a5942b3b3e3bfa98a55c25a1466e8d7a603722cb2bbf03afa54cd769a99f310735ee5a05dae2c22d397bd95635f58c48a67f90e1b73aafcd3f82117f0166657838691005b18da6f341d6e90fc1cdb352b30fae45d348294e501b63252de14740f2b85ae5299ddec3172de8b6d0ba219a20a23bb5e10ff434d39db3f583305e9f5c039d98569e377b75a70ab837d1df269b8a4b566f40bb91b577455fd3c356c914fa06b9a7ce24c7317a172d,e3c0eaffc3567bd72cc02150a75f32dde53de2652c5313eb3e97018adddf629da01d97d0a9e2519451a7292f5de00ee4456fe6e4f14f96d5de7e6f174edb28c4 6172f1971a6e1e4e6170afbad95d5fec99bf69b24b674bc17dd78011615e502de6f56b86b1a71d3f4348087218ac7b7d09302993be272e4a591968aef18a1262d665610d1070ee91cc8da36e1f841a69a7a682c580e836941d21d909a3afc1f0b963e1ca5ab193e124a1a53df1c587470e5881fb54dae1b0d840f0c8f9d1b04c645ba1041c7d8dbf22030a623aa15638b3d99a2c400ff76f3252079af88d2b37f35ee66c1ad7801a28d3d388ac450b97d5f0f79e4541755356b3b1a5696b023f39ab7ab5f28df4202936bc97393b93bc915cb159ea1bd7a0a414cb4b7a1ac3af68f50d79f0c9c7314e750f7d02faa58bfa,192ae7a0f7a816fd3d4020bddcf2aaf52a64e6384dca527f33af4ee69099dca97b890a99cfab9d904a35f2707856696c30c6432df70a6cef704bb268055a6d07 5668ecd99dfbe215c4118398ac9c9eaf1a1433fab4ccdd3968064752b625ea944731f75d48a27d047d67547f14dd0ffaa55fa5e29f7af0d161d85eafc4f2029b717c918eab9d304543290bdba7158b68020c0ba4e079bc95b5bc0fc044a992b94b4ccd3bd66d0eabb5dbbab904d62e00752c4e3b0091d773bcf4c14b4377da3efff824b1cb2fa01b32d1e46c909e626ed2dae920f4c7dbeb635bc754facbd8d49beba3f23c1c41ccbfcd0ee0c114e69737f5597c0bf1d859f0c767e18002ae8e39c26261ffde2920d3d0baf0e906138696cfe5b7e32b600f45df3aaa39932f3a7df95b60fa8712a2271fcaf3911ce7b511b1,6bcd7e7c359fdd93a56d79f97fc2d534619f14fe443ac8c9e042c5105fbaf2777718de07424a62333ffd43a501a8544449a7cac3c8d821e380b0cb8172b9493b 03d625488354df30e3f875a68edfcf340e8366a8e1ab67f9d5c5486a96829dfac0578289082b2a62117e1cf418b43b90e0adc881fc6ae8105c888e9ecd21aea1c9ae1a4038dfd17378fed71d02ae492087d7cdcd98f746855227967cb1ab4714261ee3bead3f4db118329d3ebef4bc48a875c19ba763966da0ebea800e01b2f50b00e9dd4caca6dcb314d00184ef71ea2391d760c950710db4a70f9212ffc54861f9dc752ce18867b8ad0c48df8466ef7231e7ac567f0eb55099e622ebb86cb237520190a61c66ad34f1f4e289cb3282ae3eaac6152ed24d2c92bae5a7658252a53c49b7b02dfe54fdb2e90074b6cf310ac661,1fcd1e38ab03c750366cf86dd72ec3bf22f5bbf7fea0149d31b6a67b68b537b59ba37917fd88ced9aa8d2941a65f552b7928b3785c66d640f3b74af039ed18ce 2edc282ffb90b97118dd03aaa03b145f363905e3cbd2d50ecd692b37bf000185c651d3e9726c690d3773ec1e48510e42b17742b0b0377e7de6b8f55e00a8a4db4740cee6db0830529dd19617501dc1e9359aa3bcf147e0a76b3ab70c4984c13e339e6806bb35e683af8527093670859f3d8a0fc7d493bcba6bb12b5f65e71e705ca5d6c948d66ed3d730b26db395b3447737c26fad089aa0ad0e306cb28bf0acf106f89af3745f0ec72d534968cca543cd2ca50c94b1456743254e358c1317c07a07bf2b0eca438a709367fafc89a57239028fc5fecfd53b8ef958ef10ee0608b7f5cb9923ad97058ec067700cc746c127a61ee3,f39ef0626d3fbd9cd435a93e7eee41e4a2ff5362f56c988b20870a3befa50470dc5fabe39895c0761289fafd9147abab02561f300d0ceb9a732e14ca887caf18 90b28a6aa1fe533915bcb8e81ed6cacdc10962b7ff82474f845eeb86977600cf70b07ba8e3796141ee340e3fce842a38a50afbe90301a3bdcc591f2e7d9de53e495525560b908c892439990a2ca2679c5539ffdf636777ad9c1cdef809cda9e8dcdb451abb9e9c17efa4379abd24b182bd981cafc792640a183b61694301d04c5b3eaad694a6bd4cc06ef5da8fa23b4fa2a64559c5a68397930079d250c51bcf00e2b16a6c49171433b0aadfd80231276560b80458dd77089b7a1bbcc9e7e4b9f881eacd6c92c4318348a13f4914eb27115a1cfc5d16d7fd94954c3532efaca2cab025103b2d02c6fd71da3a77f417d7932685888a,81e8b59ddcd24811b405f7529da125f0dc19ae21e8795ce9e6692dab645b7959446adcaa3061dc4642a51d8a562efb03a7680af0f52c01406d5c213eaac6be55 2969447d175490f2aa9bb055014dbef2e6854c95f8d60950bfe8c0be8de254c26b2d31b9e4de9c68c9adf49e4ee9b1c2850967f29f5d08738483b417bb96b2a56f0c8aca632b552059c59aac3f61f7b45c966b75f1d9931ff4e596406378cee91aaa726a3a84c33f37e9cdbe626b5745a0b06064a8a8d56e53aaf102d23dd9df0a3fdf7a638509a6761a33fa42fa8ddbd8e16159c93008b53765019c3f0e9f10b144ce2ac57f5d7297f9c9949e4ff68b70d339f87501ce8550b772f32c6da8ad2ce2100a895d8b08fa1eead7c376b407709703c510b50f87e73e43f8e7348f87c3832a547ef2bbe5799abedcf5e1f372ea809233f006,63424b09069fbd2d0fac00805aad07fd56e30bb8116b5476ae90bf6acec84c3b45368a9ebb7fcea8d65965f52514a2a59a06e6e06b07dc6aee7f756bfc188e25 721645633a44a2c78b19024eaecf58575ab23c27190833c26875dc0f0d50b46aea9c343d82ea7d5b3e50ec700545c615daeaea64726a0f05607576dcd396d812b03fb6551c641087856d050b10e6a4d5577b82a98afb89cee8594c9dc19e79feff0382fcfd127f1b803a4b9946f4ac9a4378e1e6e041b1389a53e3450cd32d9d2941b0cbabdb50da8ea2513145164c3ab6bcbd251c448d2d4b087ac57a59c2285d564f16da4ed5e607ed979592146ffb0ef3f3db308fb342df5eb5924a48256fc763141a278814c82d6d6348577545870ae3a83c7230ac02a1540fe1798f7ef09e335a865a2ae0949b21e4f748fb8a51f44750e213a8fb,1e709fb3501fa818f57e70c365db45ccf2eb8a8fa66de9b5f211d6f0cc9722ade963c965ad5f6937ba62edc2d8983843e0f3679d9c97b30cd54f2409dda5f474 6b860d39725a14b498bb714574b4d37ca787404768f64c648b1751b353ac92bac2c3a28ea909fdf0423336401a02e63ec24325300d823b6864bb701f9d7c7a1f8ec9d0ae3584aa6dd62ea1997cd831b4babd9a4da50932d4efda745c61e4130890e156aee6113716daf95764222a91187db2effea49d5d0596102d619bd26a616bbfda8335505fbb0d90b4c180d1a2335b91538e1668f9f9642790b4e55f9cab0fe2bdd2935d001ee6419abab5457880d0dbff20ed8758f4c20fe759efb33141cf0e892587fe8187e5fbc57786b7e8b089612c936dfc03d27efbbe7c8673f1606bd51d5ff386f4a7ab68edf59f385eb1291f117bfe717399,5b9f0c544627faadea82825a569da33a75c5da6cc169926de0556a737e4daa07abf1dc3db0704f5d67fcbc4cb62aac442ecec867a2c16846f1d53d205cb872ac 6a01830af3889a25183244decb508bd01253d5b508ab490d3124afbf42626b2e70894e9b562b288d0a2450cfacf14a0ddae5c04716e5a0082c33981f6037d23d5e045ee1ef2283fb8b6378a914c5d9441627a722c282ff452e25a7ea608d69cee4393a0725d17963d0342684f255496d8a18c2961145315130549311fc07f0312fb78e6077334f87eaa873bee8aa95698996eb21375eb2b4ef53c14401207deb4568398e5dd9a7cf97e8c9663e23334b46912f8344c19efcf8c2ba6f04325f1a27e062b62a58d0766fc6db4d2c6a1928604b0175d872d16b7908ebc041761187cc785526c2a3873feac3a642bb39f5351550af9770c328af7b,930ab42a9f5f5bc5f2222c748f2478a00f40c3b6d6487d6d7ed0d71100f40fcbb2c66566ea26ad0a417629f5a61dca411ccd21f7367d308f3b1b24901824fa9b b3c5e74b69933c2533106c563b4ca20238f2b6e675e8681e34a389894785bdade59652d4a73d80a5c85bd454fd1e9ffdad1c3815f5038e9ef432aac5c3c4fe840cc370cf86580a6011778bbedaf511a51b56d1a2eb68394aa299e26da9ada6a2f39b9faff7fba457689b9c1a577b2a1e505fdf75c7a0a64b1df81b3a356001bf0df4e02a1fc59f651c9d585ec6224bb279c6beba2966e8882d68376081b987468e7aed1ef90ebd090ae825795cdca1b4f09a979c8dfc21a48d8a53cdbb26c4db547fc06efe2f9850edd2685a4661cb4911f165d4b63ef25b87d0a96d3dff6ab0758999aad214d07bd4f133a6734fde445fe474711b69a98f7e2b,08203943c58210d3f82758272befbb9234fe913409a07944645959b1a6af2f4363abd7451232623daa8e65c87f34939c140608950fbdbbe83d66407944f5423a 83af34279ccb5430febec07a81950d30f4b66f484826afee7456f0071a51e1bbc55570b5cc7ec6f9309c17bf5befdd7c6ba6e968cf218a2b34bd5cf927ab846e38a40bbd81759e9e33381016a755f699df35d660007b5eadf292feefb735207ebf70b5bd17834f7bfa0e16cb219ad4af524ab1ea37334aa66435e5d397fc0a065c411ebbce32c240b90476d307ce802ec82c1c49bc1bec48c0675ec2a6c6f3ed3e5b741d13437095707c565e10d8a20b8c20468ff9514fcf31b4249cd82dcee58c0a2af538b291a87e3390d737191a07484a5d3f3fb8c8f15ce056e5e5f8febe5e1fb59d6740980aa06ca8a0c20f5712b4cde5d032e92ab89f0ae1,a24dd6a50333f289c175cd4ec185da9906e38c287a339dc4defafd71b2ea32a6f6aefe758e25fc8f043e806f1b2ee019e13b85536cd3efaa2a9b5994fcae4788 a7ed84749ccc56bb1dfba57119d279d412b8a986886d810f067af349e8749e9ea746a60b03742636c464fc1ee233acc52c1983914692b64309edfdf29f1ab912ec3e8da074d3f1d231511f5756f0b6eead3e89a6a88fe330a10face267bffbfc3e3090c7fd9a850561f363ad75ea881e7244f80ff55802d5ef7a1a4e7b89fcfa80f16df54d1b056ee637e6964b9e0ffd15b6196bdd7db270c56b47251485348e49813b4eb9ed122a01b3ea45ad5e1a929df61d5c0f3e77e1fdc356b63883a60e9cbb9fc3e00c2f32dbd469659883f690c6772e335f617bc33f161d6f6984252ee12e62b6000ac5231e0c9bc65be223d8dfd94c5004a101af9fd6c0fb,cd1ed5fff6fa3d453872510b6b2712ec9c6eba9543734d88511ed475905e123ed6ef6624f220445fe89c257a9f9c5166a2772ef768b50e9290fb1d4761eca6c8 a6fe30dcfcda1a329e82ab50e32b5f50eb25c873c5d2305860a835aecee6264aa36a47429922c4b8b3afd00da16035830edb897831c4e7b00f2c23fc0b15fdc30d85fb70c30c431c638e1a25b51caf1d7e8b050b7f89bfb30f59f0f20fecff3d639abc4255b3868fc45dd81e47eb12ab40f2aac735df5d1dc1ad997cefc4d836b854cee9ac02900036f3867fe0d84afff37bde3308c2206c62c4743375094108877c73b87b2546fe05ea137bedfc06a2796274099a0d554da8f7d7223a48cbf31b7decaa1ebc8b145763e3673168c1b1b715c1cd99ecd3ddb238b06049885ecad9347c2436dff32c771f34a38587a44a82c5d3d137a03caa27e66c8ff6,cfaa0eb1c9f02c0469eefb31a1a53ca1a4765f78ec171cf15da7d5c512817b8bf7d7cd7b1416b3de2bba05edfb0b493495ac2107a4b686d5dd8d6ad41b4aa3d7 83167ff53704c3aa19e9fb3303539759c46dd4091a52ddae9ad86408b69335989e61414bc20ab4d01220e35241eff5c9522b079fba597674c8d716fe441e566110b6211531ceccf8fd06bc8e511d00785e57788ed9a1c5c73524f01830d2e1148c92d0edc97113e3b7b5cd3049627abdb8b39dd4d6890e0ee91993f92b03354a88f52251c546e64434d9c3d74544f23fb93e5a2d2f1fb15545b4e1367c97335b0291944c8b730ad3d4789273fa44fb98d78a36c3c3764abeeac7c569c1e43a352e5b770c3504f87090dee075a1c4c85c0c39cf421bdcc615f9eff6cb4fe6468004aece5f30e1ecc6db22ad9939bb2b0ccc96521dfbf4ae008b5b46bc006e,2be71ee9ace2dbcfd43d6d020c07244554dac8a2cf1571d0fa1d004933739e8978323056797e04c333f5bf187e64f1d881e502672567f204de0e73ce26e7190d 3a3a819c48efde2ad914fbf00e18ab6bc4f14513ab27d0c178a188b61431e7f5623cb66b23346775d386b50e982c493adbbfc54b9a3cd383382336a1a0b2150a15358f336d03ae18f666c7573d55c4fd181c29e6ccfde63ea35f0adf5885cfc0a3d84a2b2e4dd24496db789e663170cef74798aa1bbcd4574ea0bba40489d764b2f83aadc66b148b4a0cd95246c127d5871c4f11418690a5ddf01246a0c80a43c70088b6183639dcfda4125bd113a8f49ee23ed306faac576c3fb0c1e256671d817fc2534a52f5b439f72e424de376f4c565cca82307dd9ef76da5b7c4eb7e085172e328807c02d011ffbf33785378d79dc266f6a5be6bb0e4a92eceebaeb1,6e8b8bd195bdd560689af2348bdc74ab7cd05ed8b9a57711e9be71e9726fda4591fee12205edacaf82ffbbaf16dff9e702a708862080166c2ff6ba379bc7ffc2 # EOF pysha3-1.0.2/vectors/shake_128.txt0000664000175000017500000120044112711152670017410 0ustar heimesheimes00000000000000# ShortMsgKAT_SHAKE128.txt ,7f9c2ba4e88f827d616045507605853ed73b8093f6efbc88eb1a6eacfa66ef263cb1eea988004b93103cfb0aeefd2a686e01fa4a58e8a3639ca8a1e3f9ae57e235b8cc873c23dc62b8d260169afa2f75ab916a58d974918835d25e6a435085b2badfd6dfaac359a5efbb7bcc4b59d538df9a04302e10c8bc1cbf1a0b3a5120ea17cda7cfad765f5623474d368ccca8af0007cd9f5e4c849f167a580b14aabdefaee7eef47cb0fca9767be1fda69419dfb927e9df07348b196691abaeb580b32def58538b8d23f87732ea63b02b4fa0f4873360e2841928cd60dd4cee8cc0d4c922a96188d032675c8ac850933c7aff1533b94c834adbb69c6115bad4692d8619f90b0cdf8a7b9c264029ac185b70b83f2801f2f4b3f70c593ea3aeeb613a7f1b1de33fd75081f592305f2e4526edc09631b10958f464d889f31ba010250fda7f1368ec2967fc84ef2ae9aff268e0b1700affc6820b523a3d917135f2dff2ee06bfe72b3124721d4a26c04e53a75e30e73a7a9c4a95d91c55d495e9f51dd0b5e9d83c6d5e8ce803aa62b8d654db53d09b8dcff273cdfeb573fad8bcd45578bec2e770d01efde86e721a3f7c6cce275dabe6e2143f1af18da7efddc4c7b70b5e345db93cc936bea323491ccb38a388f546a9ff00dd4e1300b9b2153d2041d205b443e41b45a653f2a5c4492c1add544512dda2529833462b71a41a45be97290b6f cc,4dd4b0004a7d9e613a0f488b4846f804015f0f8ccdba5f7c16810bbc5a1c6fb254efc81969c5eb49e682babae02238a31fd2708e418d7b754e21e4b75b65e7d39b5b42d739066e7c63595daf26c3a6a2f7001ee636c7cb2a6c69b1ec7314a21ff24833eab61258327517b684928c7444380a6eacd60a6e9400da37a61050e4cd1fbdd05dde0901ea2f3f67567f7c9bf7aa53590f29c94cb4226e77c68e1600e4765bea40b3644b4d1e93eda6fb0380377c12d5bb9df4728099e88b55d820c7f827034d809e756831a334c078fc28acb76b5adb3bff6dd659caa49cc34f726880f293bd3fc132027ae7602242064efec4d9d656e069d4dfae0b40c1d6b6cdb21d89d00e168b0b74d72ebb3b672b57af3e99c85da2f41ce70672cd0e0521678fc56eab6314a0b3af8b724376c01433d84943a73af703d293634bc24322992756ee261fff0d71bffb8aebf1026a6a345f2eaed505bc7e02498a3225fc91499dd5f5e30e386557c5fe0a88bc2337c80d7ea42b60622960230577ce800cb63594f619b7de31e026429b7648c5835afc00559fa4c7695d6dd9f7b2537a265e9af7a2c986f8b60e7dc6eb3c4d805a6eefb6fbb5bfde21ed7e41cfdbeb02b0bab76f9998ba1e52815a246b084efae7960affc2ba5c647e7cc05ef8120568432dfde1d7246473304808985600a1afc20b99185af25e89dc2ec6f4880dc79bad50dffcc9ea 41fb,09c9652bb968996a35e4814e27587131f53fd01ab9fe83758aceb8134fceca24c84f592cee43a4476e8853fcab7dafef7b60ecfebfd70dfcf587b3af358a286fe3713bf4735a84975bb65e3586c81ea716bfb999626dc973a495a6e0024061387d628e9e59dfd2b39c68c8cead665ab43f6d2625a10630761dfb60276ea97b280442462246c6d74a1960a8419a76a37b68449a9e427d6a7ec1fbdf4760847ad6f6f5a08cefb767caeb6c2382f4f3d0e49de4428cd4240635c9136911a82ff0b9c74569a1b7c8af72ab1ea5f2f6f6a45e3bb08229addfa916b18a74f7939c5130152ac8343a10694154fdc6e1570ec7ecabbb01eddc92ef0bb1b3db914c74cce399acc9b766fd7494b2ef27ac57b80d52535942d55e2dbfaa61cdf3f48759aa612ded11421855ad15ffab91462a56f873bbaf4fe88457a47b6c0594818d0a9189895239c1429ed8754eee5498f4d0fb6c9d0df0eb5316289e72c6aaeb8c61317b409156d4221ce6cfc7c5f39272d87c2d884f88f1b8b3c05ca9e235ed92c7dd7806cdada7166cc1b9107da5e6536d4ff111bf9199d6b72ac17d874323d68d76aec4650f1a4b067c50215362201a7f71116bf6633af08d712804b83f08a5dc7ccd4315963106d50453d44eff59c9c652f4a924be93c0b958ea286b0a4b597899a28c9bd5419c042668aa7b0cfcac4cdf9260f2824abf3ee79fef53ebe3c36df831 1f877c,e2d3144669ab578347fcca0b572783a269a8cf9adda4d87782053d80d5f0fdd27835cf883036e536ce76fef689a5e7bd646a7fb7d74f090193b2390e614759b7eb7de915a38328745890b1ef1e7aed78168e996d7ac774d47f8f118b3e00a7bd151131ba3705ae81b57fb7cbffe114e2f4c3ca152b8874fb906e862840624e02bbf9502e46d8888433a38e82e04caacb60019222d433e8f2e758bd41aab395bf83611fd0c3f7fd5173306182449b9a22c4013f2263b41eac4d0eda16854961fbaa6ad04a89e72a602ac59659ec2a60c1d020bacc74a711d4254a2ecc5f8f0627b4f72ae130c50590f8b91c52957b795d12da09bdd40d41e3cd48e30e37fe5fd0b86eb38ab4661085ef515e70231a5f11f9dbf7433763b17d84f36bf42fb6d57789c6da2be8d205ead87bdcc3fa6ac85fcc3e70571ebb2ee4bbbfc04e71b3a88e000464608475c94c7d7ec1bbfcec980b166096e9bdde9192c53e350d3b92f3ab0fcef4e49e05bbbc18b11eca942c8a0776ed4f293b7fc9b8e7c0303a29a41de64bfebd2967875290d471640a914b0775cdff140b2b66cb099a05f5357c9d5e7f9f1d78b828ccd23fc7cd58329613de4be9869b4f2db18f5792795c34c43d23e2cc5525b4a363a9619ad57e42c36ec459ffae56b61717ef36afc9fbe5a72a7d23d435b2ef38a2b0e22ab5dfc8bb8747b6ebf17a63f6368795c6a16dee05362422 c1ecfdfc,b5eb987e7cbfc7c9d140afd20b500e30f2f71188bce885951f22fbc35de40e7411311bc8479f895a069600483751295f5c3855474d65436b347608583125a6bd41ca30dc99cb342b72a96f8a2213e98a16bbb9e38a141b4fba68c1a723d1d578a91b4a1bafd03b25bd3cfb6d4e1e044637889c6d7af0209dbb5e10837d5c5991d2766012e7e86a82838b455b96d882b7e25c9072a66da22b0acb992fd3ccf5fbc28625b896bdf8d4b7358901d12698fd823fe09afb4f238631ee1277752f2900e38c7fc163381a01601dbde8cd30a9a8ee8353def6c610b50962d0ec1f4f3eec2afd7fcd5296e299c23005960c1aabf3408ede96de18e10fde99774b5bd33092639d8be9d872130c96311eb6dca82cc28a62c01e3f9c454251d87fa890284c06187f904cf23ccc62690628c590bc8b84eee68371d3412dcb5648a634f2359951cd011028e61c28a33ec4e31550c1c0e4123d1091e22d56bd587e73b7dd43c1b431d9547398c5e7eb6c682ea2fd758c86c1222c0d6ab236b8106dac19338e86cb8f6ec0fb607d70c938cac172c80079b018bb62939546505b8b6e146a3ad7a35f20d7f9a353f1e6535c23ae93ce8f78c045402e707a664f5918e6836d343240e6112efa29dfc4d18778c91e2b8530e4ff6e4947623d31dafac9b0d194e36c44e10b1a846935684f89adb44782e8fff2e3e62b65d18140f10d36cd817f835eb0c0 21f134ac57,7bfbb40da3704a558291b39e1e56ed9f6f56ae783270ab02a202060c9173fbb0b45575b32348a6ed2c927a39a30da0a2bbc1807497ad50f27a107754af62762c0b9e8e62438101deca378899c521cb76c75d299ede19ba70e2ab91da9e39ebdc917355b6fe28ee254c0cd48f3a28fb51766fd58154c98a5c650a4e4841d14e2c8f5baebf5aaf2a2120279d2d33214a51ca30c4e05209bbd60106cc343ec867effc826cb32a2e736c4aa561ffaecb46ffb74d1b3fd36242244312067c7cea2ebbcf988e17742c3c80e8dee6d509997866a308c101214f860512d38e3b6c307c1ce779fd42fdcb9d909a2d6f9dd5a3687708905390479950d55e8890d10d7057863cf006034a6d01d77fb33c0e28b093fe3337be8416202dc866796739271c9e326199092fa27556c9f40d7e9bac869b6d7e8018409ea92af2464c58245e89556da3e80b6b4200b9e53fc80c93149e3dc4921a5fbe7df67f1d0b753cba41b75ee5cba78a89a2a85a46bbfaa625a40ee62616e68b07c06339717c81b4343760e97e2676c347d9625ece383fbb8448e7837dc704e2956b18cc506e3ba1416c936bfd66e9aed3a2c7b0a8dedadb04ab711d147f1c1c83322ec1e6f1468ad770663c7938d4032758462513652498cf124b6357b4f7c7e4db0d0c0c1b7247875cb6685e0567a8ab8cfbe9383daeaa27d224ca9c69c07afa929ffc09a03e165d72153ad2 c6f50bb74e29,8d876c67a5cc15a544eb81e93b6fc15713fd1c55d778204eb6af7086af3fe97d12b4dd22c7aad54eb9c9e391b90a7c55abacc3c81dd1788895f17033d561060e2b9cffd47974f196c6907907dfdc65cdf33baafa7049635a70353d92a56a59ecf0cd291ab9b509d296356e8b0c91983d158db1568681de035e56b86eae32ad3e0193cb816bd2d111c266632ddf907bb276e14880571506e2c328a3eeaa9744210ebfead123e241a8c49c92ada79b718d970f0e8525a60ffe9074e73491e6f0eed1e047eb95cb52c47f6a1bab77017d020f016b64798e5d7fc360d5fa213d44e5b75c918c9ecbb134ce1dbe13c419da62326a550ad4a22e171ce75a369bb820cd75fde01993ca131f302be7941f7950a9969d78148fe7c45bbd22fe83ad0354194859f2f0dda1c92f2c8edfd3f7a9d8f618d0d02222442df41d858cbb7a46e5b12a0923dcb53587957ee07ed3e1c4a46eb1141cee394972726dd003239ecfe8fddc4e58c50359af3f89fe58f5cd5aebc0dc6b9d600f3ed08506256f18695ddc1e3b459ad75090f0764fa89e5ccec98ee0b387b5fb778620bda72cb3e2ae50de8b0d6b43f26e13a16fdf08bea752b457bf486ce427fd17bd4c5890a89af2c85b292c51cec75490c1c6de9d60dc49d3a77eeb7e19002150794234194115bc685e9981f88b0e1d9c6585f2c5f9dc805ff6c7636c1e06d9f5c018f74a2ce92eff6b26 119713cc83eeef,e2a9537bac3c4dfc9008c1a7aba653883d7a1df35685dbf49abe5a7e93bf044bc3312a5e4d9743d72bd28acc16f64ac5090a71761d936fb9da7c782af9bc1f636d0e17cb41c7e0e9dfbdb2017ecaba6dbecdce2aecce3ed4f59324e74d58d434096356e567b35ac85f7ca9ab80b1c987ce70f998abe6536fe485a866a22cdcc37db08cc742b4612121cf34c2d404b37e8ea8d90ca9cfd0c8c6ecb6b44bf73f4d048a0fd85591d8726be6246df406472ca05d18dffebeab7ed991be6cd2940ec9b26f9c9219dfffcd721f5dd93cf5342a89a6c69168871b14934d4f1794e14b92ea991a78292423f5cd0a5d3454e55dee27077d6af78d87bb3fb9e139331abf326fde2fe1d3b1533aa038bf59bdc2d6333f968611a4f9ba66efe92ae8c099ecfc1a36be726816fafcc0b016c58b1e42d2cc7065e71abbd7cec1ed547aebf46f5dd72bd472cd764ccb3c4afaca540bdc27f52f63151e9fd90ad5bba7f84c9ec7e996692b842fb1a54d2860a301a9df6f357c2e05c14154f5fb77a86e4da9e9a039cddeb10d6e5de2e0a585b2701d48e8298bf71f5f72351f8eb3fba5426286a82abb75ea46bfc0f65a2e49567cfc970c36d63b2cc73ad7f9791179b1a0c4d84651dce57b966410ca23cfcb9bf5bd70d56f5bf1a7c939de74924edbfcc614113c83803b123f3eefce2c809a7a9fb01c709bc09b5f7632d6b59e31a6469d90185477 4a4f202484512526,977735a853d872ff7c17c4a825afd9df886ac43387df245c37a608ac7f4e0ed015811167222000aee1968960174ee5a39369a23c5dffb4991ad247b8801de71bea97069ea77202999f8e8cf3829816ee598b00c4049265dfbb2b138b13ec3194b988242bc099248baf9997aed80e95b5f859d42b12dbd578fdeae47ccc2f8d3e90bf6e8d98afbe2f4813f68b6fbc4c18c9b8a557a0d87d744a4238d89260941030945538b2df07e05fd45b50bd790a0510ed4430adb3b7768df8c4914e0914fb00da09331f11371052d301031853c7f3c32528c0622a77c48463cd1cd96ecf7490f70f16e941cbfade71dd8477ecff1177b7193e456ecc42befbe070667d6f39abee5cba354b33a83602c1c17280d2dbd0ce597ecf1fec3b27810df38c2805d8b85d60994edd2c83f5898cc6623241f16c4c92444fb6a0714d8bf189aa5aec9d5bf1448805764ea0ccc8b6e399961dfa7cb9d8de8d800080eeb5d010bcacac6728e8de482c37270459dcbc80f496267377d97817149372a053b2d53209c2dd61216cc3aad29c7238d6b142d71a92ceee4710476c2a48fadb683b9423727ce772fce2bdbcf781c119fb43526b8eaaf1d10f21e586952227e29bae61fa2c7edc6260f76ab543244e538180cd90c207330ef29cea987f7acdfa028a78d3e93f11ea159b21bf3f50faeb7961874e816162d42735c9d3567afa45d1d8b66cefb58678 1f66ab4185ed9b6375,1d96e0454be037d890fbeb776ce5c922bdfb827af1d1abee1bc8b3ae95453532d40c0b3f9c93e400ff70f6fbd4dd0470df1f06e04ab4a596b6f92bbcaad3650d60b940096260226913435c9bbf5f29de8bcc9721748e3f1deb7fae88741084507e1ba72a267c2c2276d8bd8ed284578b46ae81230f383214137cd7c190524818576f77b0a53c3421e0476d91e11bae79acc4995a24fd1398f6f67e22033bc381abe6de4e0563238fdc39a1b305fa9403ee35800432999eb3421c8cc17f77f2a544957afc2ce9496d2b739511b3cc52db118ee874e43e95fa69d7ef024931377af86a9448f3899dd0a87edcfecfc1bcf7c17d470c71cc488744f2b627626112aee465adde9c6719ac0f6e928c77b0ba0ae8a5ce20005c46768021438b611826675e0b94fdc7484a3854936216e2239650c794ef001ef8f9f4cb440664472445875d06c519e14c957d6fcfb73fb72b46cfac4548ba94b95979fe5feac07035e0fdd21af7e3b69228afb2d97f2a333a5d40a84399c6d4f5a7ebef9acd08d66c2781eb9085a42e38c434230816b90dd838a2f10e727ee5f58d7469b47fd5324ef53a88208c44943009ae7a2803d55760a6ad4bc6e961c8bcc7f7f5bd07da63709d85832e26772e01886b2d5b73ca488b8402c6a15d2aec605d154f9a41efa93601d26374d3fe8a5337e98bb7a1b5f0071d3c8bcb69cbd0b3683e7a494808c9bc4490 eed7422227613b6f53c9,0c5db5eb4c5c83fdcefe9ef623596f96d2078c6dcc5d9b5e4f1eb5abbea23ed4478895d9d9c8fde4733933986c6cb4d03aac65dc7bd628169785cfc5d9d4d33ecc7c6ac98312f020b117c831b2ace85e1adbe0a5349bbe9fecbc6e998c6da1e2f333c105362506766d105f707d905cb616d8bd4b23ed5072e3f4d42412e3ed6c894cd37d8f9a46be6ef9a53d60254f4e9627625a3671b234664740c24bda608a44edda0cc652b843df722ad38b9fd7f122c89d8df0a68e03fbc0320bba016a0f3c36fba6278f9c2af9bcfc9f312ce55f011255332505fcbaf0adc512864d633cc0fb4d81bae980e9522aebb2a07199b238592e4379537e045ccde8b0fc44b2781421dc657938851324f5fb6e1b7d9548a50cb6c02a71b16dace90b84ef033594b2f0a688f6f9719a1008c1451353f8895ae1b7b16b27ac94b67f390d9586b7ee31af7b6e7d110813a6a4e01d4c94f17a1edb0633a1c4f69de184bf4315dc98bd453fc22ea11f8ea5f5548c5dc09d3f186b40c4783aaa4bde1a8f2aeed007a0be440be16649111921f779c7e284b8326785d87c3df06a05b3373e88526d9e8afdafd8e673d1876711ff2f68abadb7cad4545f0dff64bba98c86d7422c4dfcfa8f2bf7d72ff0617bd076b4de0b457f5fa2b881fca5722864ebca11602923bd0d6b21a9d7101ed1f34ad480f8f73e2adf821b2b259d6dc535aa94d3cad7158df14e eaeed5cdffd89dece455f1,055c0a829125f20a0dbaa6106de95579be4188363c7d7e3f3efc40aff360298897968b250b8410829cddce5edc80b764a5aff16fff1c3d29614c6bc4c80d095f0c73443e8fe596c86c83ac1d9ba69847f6e64ca643ef3d7010c5f9944a660b14559ff27d4a5aa9862cffb67b47810d04c736bf842450a7e5239c5d2c61087888eb892b9ba495ef7031ffe2a56bc4e8fe4ca92d908666091d40f8dbadb0186db30af31a4bcd3faf962b56271a4c5c4a02c75f11d13f3dedb0f57ee554b9aa47b19109d3cc2ac58d9c55653b42bf5cc3c8143481146bb54b6284077e94a6b2daadccdb3e85fdebd9003c12fc62dfd07dcd9ce747893dc611eb71580f2affc624958e1c78c1554706a1582359f6962ed70fcf82fccddf9fbfaf0023fa1fe771d358a5d69e6f8917ec3425543557aba96d40303c5034fc7a873ca12d485998a856db5724009b884590c284b685de5677c76944d07db1ff855743587374d9f0ab70136afee1d1edf962d1ae9d9db036f28499ade8386e78d2d54f8f54a85ef0d771750a5d51511439ecfab2a486fa1cf77e8973e977bec186ed45f6c49845e9e19502ccb3cfbc4f2576d9d30a003f8c00dc209ee68f147cf17beb5e5e410388a0cec4643a3ba24b6532cd73db049b74e4ec5db415586095378297a60c2efb70674c473488385b47ea9e9d39952ae9a515e139b20d76a30e65f09b7d701b3172899643 5be43c90f22902e4fe8ed2d3,9f8f1774fbea8ec70d0661f8dcca2953ebd20fd73bfd74e6bf037b4fbfef17177f1a02e919fc2b40bedcf640be5f191d6572bc57c0f5ea29cdd413e8a97bc24bd490b221fa452594f78136c68b21984daea6b61899c386963ea6f078a9a903f05506d0c5592e341a798dc46c0198c039fa2913b7f7560ca6a703a6a86b18cd67adb53a13295ade0ba89522cf98263094b362c0635890cf4fd14d0ce5deae75049c5af37edba5c0803b26ebe951996018d66390fbd37ff9f24fc5a7435513d3173e26e1850ef3ae729eff8c38aa18a41b97e11a7ac452445d7ec617b8e0894153b067eb380d83209d05bc1b18b41272ecbef29472ec90686256f0cbbf9f5089a78d853b50772e494bf27fc0dbd3492fb16b8aad6d7ae027d41aeb633cfa3ca931cdacd968c1f24684267abf45534f89a362c1195f8cb31f1026d3d554af70deca0c5fd3973f55f20218056fe70b74a3311ac394efe4fc0130b5bb092b33ba3b91e2288815bac931c5625297c2f3180dae4b824409b435842aa12f7f01a185f699fdb2c6a9d42cb475b0493eb6759fd5809781560626fef4a4522ee06a2d3fee7ca2203eb84b717a1a825a2965d2c1c1cc0402658ec5d2448961f521ac318fa4a672f0f8051ae59c05394f84d25a1f9e27b21550a71ec285c8b2f86bbd8fc0da09614bbb635f905aae3d401e7969ddc9fe0837959a6749aa76fcd3a70920766662 a746273228122f381c3b46e4f1,e73d11ef660c0f9b35ce16c12c58051953c229ac29229fd38e00abea6fc7917427d30952dc52ff435a928f34bf14ea4edf960c78a5008f4678727bdb4c591d47c0d3a1abc314cc475e47cf68b243a0f193b5a0fe06613c2715829e672eae605905e6f52624f971731aed8d1cc022cf166c7391e249626ffc578f2cc48f89784d7f38dd14012151834ddfdaa245922a27fdda1465a8056c511a72a784095496fa0258007394c193ed705588607df19a6452f4e5c890fe648339a597418ba2e7e706c36d3dc493a3a6842f39409ce186222afb81eb044081c6145ccf8b0e852dc602a2b7031355911a7c1b16ed74e8bd6c4ec8ac56511768c008ba25343fe5cc7ac262c4662ac803ec1082a52a0530f0c8431f68ef9f7c4c7dfc9c05228e3638b7a26dcd9fd28331f7b04bef3956d6c49fc946dc97e935a76b3b2b4decda6113a9dcab916538520b28defb05db55f2d168fd6faf678c6ed335a33c5da6b575fccfb64ff2efbc5bcf2500f006e2f3dfb4c60a2babec8240143c779a3d9753f107bcf9981206922757e04fc93083ed10a77d5c603efff8592ac3902e2d07b72a5c75c71b631dfdbf3997744fd63250d2ebbec2dd3bb10e05fbb3a993831d62a6c03f403e30ea3b80f2c8a3b80473c2d2f2c51b8b5563e46a0a57a02c4e73da0491312865e15c4251d3db6516a51dcfefb1167cef7021e570fdcbf862bb5b81b461e2 3c5871cd619c69a63b540eb5a625,b28d5ef1e7cb85b4406fd3349ec1d5f3727a9fc9c7132ef6593779b0d3677512d5f10a6022df96aeffb4252159cce5562008e3e6bf02dc91a1da479b5b091c88b65c80f4e8d83279dfeccae72da723842edcb2ba02c4e3e9325804a04366e7fadcee8bb2d678e31928d59f2f0a546c742d8120694f5f02810d5bcdc320855164f60226865bdcec1437f262d6d222d1cba8577910847b75d5c4549bdddca32c3768f1b789cef62f56993cb72338274e5740062be3ec7afff53215e894600b35ddeeb1aa1e9962b22329fc41a5696580dcce450de6c11f92332a3fd959ca5b367b9ec156fad0318191314e98c1e2f82fcebafcb6523693a0c633b82251aa5ab4801b1afb004fb28de7b790e65f50e0cc85181fd914c76d915c1e220a53070d73bdc1c1bf2d0d9a3ea45697c3538afab5f577e09483195ec8b7737236491143d7ab0f81228031cdca4ebb2442ad5af92caaec92cc1f72e32e573d57bb48eb58453b0e0d680b7a3d46b4a5716b7756f8f73bc876de181c443c082022c7a3322059f83aa16fcdff5e078af2f85562f0d60632f4a76b29f27bd91301b276cc414af7c7b0a20fe0d0540dbc2b7a4f6918b37bac345411247f2f7ed5aedd12e72ade756da4962c2e19b998ae1a29e0daf6379a45adfef26aecc80d9ed1714582f7d40de0c3bfadf4a35da62ed4357b88c45227810d63f33be90529f426b6af513c1b43ba fa22874bcc068879e8ef11a69f0722,d7da38e9032ffcadf7cb93c9969171a0493525f8eee3073dcc9afc83c704843a8173ef5374c4d564bdf246d41af6edd0872e5ee43f5d2c5c85134166f9b2ab9203cfca96a405f934f3b834299c954a3d30a2cc6737935db8c094636d659d8a3192ac8925809567719faf13ad40ccbe7fb1099bf4fcf415817b32ce923b1ad764b88e6fa24a9f0876c84d8b6fbb0346a87248a99e15c528d8efb167f6f1f00099d67f5b879fe8b7943726f648158c0356985cc48d92424a44b906b14eb8217b5c75d88e50311007c1ce7badbd9a48eccd4f8936b81d0c2a76918a06e3d2b2936c5a157d9375058162259d7d0ad25dba2490ae1babf69176b394fe2f00dc000eda5a0da049153c077d51a89100dd5b8ef4ec3868f5c9d8e4c1875f292c4fd22c51ecffe30aa40eb4ff50fa00a61f6116a337bed4d13b52e12f06bb4f8a88060b77b9f1300b5d895f7314ae728421ca951fe8da4be55723ae5533e59e06e0bc8d828603cedddfdfb9d82506141e1d90ffcd65403a94586c9259a6cb18550bd22b241112dd9d866f12adf2b009740ad71630c35b16e062460c708831df28918a5dae14bab1ca781effafbd267081a7fcdb418417717756f34bd98a799b02ff2e275193b0c1b721c2696ad732ac77af212da45b22f27d54d1559a1cd7b39a49a6286d305dd4a257452e930d5f2c3cf16c6674adf81be1d8231db6c1b8a9ccafa6e98b 52a608ab21ccdd8a4457a57ede782176,3a0faca70c9d2b81d1064d429ea3b05ad27366f64985379ddd75bc73d6a8381045c2ae2e9c723462ee09efbb1c2a8ed7a0729d0d9b20f03bbcf55a86859ecbe80c8cab60bab4c5d063dea224e825e38642124ea705327e075b61d08e0b49dc184c5194292bb4a797cd24d924cc64816bf911fbf4985130a59d68ff0673cc8c4a390ad593bebf16419ff464ecb3fc78c160b6db9f755a5faa7a9365b58ce7f90465af960c48b771699e0eb227f5370387e6248e17ee192007128ee7ad3d94bb9a2193bbd4618afb3a399cb2016ecd5f9e41af10701ff1915a6e091f44f193b0f729cc4af5fecf683b1c7dd2644d7458c45ffd635eeb85c79e241c1f4869cda9e77e80f7b878c24e9af77d22d8c7c0c406c8aaf50f57bab68fc6c3a20274b6bc353e6d60da40e8369139b4508dae96dba12dca9d80a19041a3798b252fd24bf2be64035cda6d95d6e570ea868eb8808193b3792897a2147396a47d27c81d40ff4bf9212ab239d7a789d8cdd545a98b447f6abbff4bf6fe631cf2483881e933c1e62a21bec503a6ea60f3b179f9ca6852daaba4ced7ade5e35e960463fa4c3a32f4c580f03cd2e45f10e32507fb2880827f56bfc5030a4ca94635edb134580715a23c87d755fd91b1566d1a471f310edb2c12aa11f2d280683f43155d67e2ec04ec2cb2cee53a4d00f77aa73dcd6cad61d1ab7c30a627cc75f83d48bdf9a76ab456 82e192e4043ddcd12ecf52969d0f807eed,3d62e50de92bf40637d481cedbd22f2dbabaeec0e94d1f99f3ef2e68b1f55d97ada13d2372104d63946e3eb7c50d7e58f5aa0d5730e4366bbcb6cd332aef45da6c4e5efffda948e4e7e6fb9c49b46ac954cbd53a925c8ebf73bc4fd53ecf34f0d67026136e8cff3c8b8661c9d5d19420509b47a19d4c848c83b791d1f843f8df7f69f736a414bb9075b4bb6070fa094a0095f101fe569e45e4e7fdd2b3622b5b912c21be28208ce90c7c342e6de485d7344dcf3e89d9c71f320001c52054ead0ec37b4cb356ccf80088dfd2eb63823210ca3767abb13623c9baea9be5ecb8dbb8d3dc97c88f6ba9c4a9c443a00e9a476fdad93ada9f64d12803dc7fe1c7126d23430cf680f94f0b218a06d5fb4f7698dcb5c896070a03d5daead54e3624ea55e966ea64d0714aaf9e17fef5da0998f6a301b20e988579fd98831649b5f71b67ce86f65003ef5f160b18ca218d446c6a18f341282cc89e585894a2cdb24e107bcebe66d3265895a622e51b617a57020b29e236df78271b1b87c5ffeeefbdf3f36eb3152687209929c800b9cb4a29cfe7aff4302c990e60cf61acdbabc3cd7f98bfaa55bd61c7d97b3b0a935e254d1d46801fb6a02567de9f75343b612f95dc555340bee70e61ba8b3e1d7478d77d52c5f395301178d42fc3dddd1322cd31ecb8e236f1748260f45af38a57aa8dd1796bdbc99ac14d1801be95a08c1c6c61b70ae 75683dcb556140c522543bb6e9098b21a21e,d062c8f1218f1dc5f3ca5c2ff3f33847f3f74c6a40a3c2c6c15e316b6c9fb36a7c1da9c25833d25c8dc7fcf4f852e3955b4c9246f4ccc3fb9bec64990e5d84730d56e5e4839ea23b258be3660014c49645a268eb03bfd932d879b2260bf4c6cc4ee97c8bdc9c02e609372d1fc24029193475992a27c52c20f1f821f285bfd1f4c6ed944ee89a96860364e44971e0b6aaecd446d868c9f7175c7c23e980adafa860e690eba14b71f7eef16da6017ba3fafce89628f64662af12bea0dc93222fefa733434a4778f0f2f5c0da2439c5c577345b59771a4991a56ebcac98961e7ef8ae3f1f8062c1268de1e6ca5291d4d7f1c1c4652a49aea180a5685f9e6c8ba01f8e3be7c1e5d40a9a0cb8661fc77f624f373c90da1876218a78be6507c2e999a25fe87e5f334ed83689936ad06a7f031590ad13105dcdfde7554d42f85bba80a03d3c1459a25f07e93b77293b48e8d831ec371e268e361454ca01539357d4c10255e3db0576ca7f9e6f4ae766822274a6669ab218474f9d0cb5b96fd0a55d4f454c6ee31e3a040568cf77f97d5b8c4fa783aa5625bd8ea951deb4bef186f37663ae83b2cd27276a390d730efbdbb798049b151e4962b5b17c4739f9127b87cd5acb00c4cf04295acbbf53324c3c539bded5e64fb4a3bc08076f52eb0a4bab60138e50dcfbe48765047ff4468404820088485974f4c4fd8546538698ea3904795d 06e4efe45035e61faaf4287b4d8d1f12ca97e5,abc182a9d28b3e043f887c072acea1e0e6c26a90bf6fe9e1bf925d20100c3f8e46dd5634ce077f6768450626105210bbd36789feb64e9e0a0eb5007eae54d2431156a6baa49d85b31a716b69336dbcad7bd43f0c9afd4d62bbe69d5ea276f01b1b39c637ba13f9d5cfd637fefa3d80706896f47a58d602166645aa5cafbf5c280eaf765a47f4981a9673edb27089f31314a6367bfb333e4a937ccc3e704218696f998a3269518965bea095a934c171f78979d6ced938f8fb3d6cc8f61edeabfdea038dbf7159917e3f941c2d17e351390ab77678477b11d2dfe2351180e305025403fb826255def38aaf0ed06bc2af707337dcdc1e5a08fe03e9cd043d5a152ef37fd4893266abc1875dd28e2c7160700899d5f39df5deac2e91131360922f2abb6bfc49a8fc0b638cd13b6037f99bd0d72a56346804e146e8b2889ad843813dacb56fd8d9909a989c82064e4838d4f01c19a8e8d1b189eb060f642ca5cef14a2f361c1f34d968fdcf37d7837e3aa9b866935095966109c763c8dd1cc70df91fbe7b5ac7fc6433f5db4b780bc9be4ef862b596e08ad32c201a07f04e267ee2705245c48918b71c84d78ba48af70a4776523d37a8b90d53ad45465daba2b48ce0c09978fab5f4a0cfa6174d55612b7102cedb7a591eb6a778bd41cf3c289d06e86b4d329f71dc6c3be75d7e661e7e9b5f4cd92225fb5991f73237e2520b9aa604 e26193989d06568fe688e75540aea06747d9f851,bfcbfb531c1689126c2323f9294c1bea280013a2315a596ada34f022bb6d3d8a699ba8e2c54ae3bb7b32c422c727b41678f781d652dcbf1a40b8627b56e004aa5f1753b1152920121b1a2d8cd5e9ca02929be7f2eb433baae2fa41830f146c72a12aaa97e8f8b863749b3026e99e0bb7e0a937f003604b470c913546e73413a86ee2e9892fca2a7839b20309afc1fc9a0ef14478ce0ccb5ccbe37469b7dac3a7b74b253ccf2ed085f9a0bef3759a4002e2e67f81d953e9bd53a4d39a267cc0d262e5d80f50f8b87d816c91a2c64d798784a5677744ee02b5da2cf07d79282bf8c791433e0b3e296c38ad9e0162baedc89f1b368537103ef797ae54e68aabd23de81b760689839341155930796ad7a49702113f737d0812e20b850c38c3767421177b39fb60f3fcd0b81a50a8624e57b676203be7c8bdc66be9abb5a1ab175705dbf65bdf5d119f331205aa74e6e04c766e408d0b2651511cdc513c75c6e326220dd3da4a12c82317455d450f44f5f1e55bb7a91bac1c34c1e405baf53fc8bcbff7ea119ca53f6ddfcb5e4f2892b837846ceafd8abf5bbacf09a3127685b8b40a2452e52ea6c006f22ec7fd9df925b939570096e5e0ae74d67e46e5402dc94d4a47e460d718c98a4426f3e68deae1a4e509707a20b136fccf3c26c8956c14312bd855f0b3fc6a97cf1c7e9ade4a4907a7ccfe6eb5830d17451378acfee3884e8a d8dc8fdefbdce9d44e4cbafe78447bae3b5436102a,e3a05f6157ba90878e8c394e09753a69d271c77b233799e0d68a32209f0cdfcd5e3f41dc9109f836a4c45043e7eabf41946fd05922723b0e6526e5b99b10e89b3c4ca6ce5a2c6c431fb14e6cbc7986c4ca691037b1f306f8ecaa146d3e0b5736a53a2be74e1704e65864c3acf042459bbfbb440ec73ec884d89aee7525cecba651429f2cd092e4b3bf24aa144873eb870749564a52ae62fc86674b0d9fcee67de8910dfd812ca75a47f8fd0b2393e616fe8250899c36c27dbc30716c9f5fa181ac6a6065b73e3ddb94447e22eb858e8d1e12c24b80d99d4e6291a0d588508319c5b54e616270fcc504d5925b0ecb12f211c3b63286383498fa1a7b4b1bd399934dc6df4b7a6be0f42934052aae7624ea4b6837e07eba9ef2d066a911cf71776a2eea41e04122e5afa6f91865dac64686212a93cce21305d925606faafabf7c6d27a8a91c5bd24730e2ef0f11a9467f7661736123e7b8ec29b4acabf9aed239ebf3c79f4c37f54db912916eba3a91ad6362dc616d7339ab457629bdd0fb97b8ab605b9fefb65e2e70fee3f2a29a3d6d487682bee87d5c615870cb615adf197aec1e5ee35c242149db2d5dcdd598db5981a5ec57d31c9644cfbddc03fd2f5f8881d2244a094ff4140d252e2505089337b925d84e3ef632c96888e0fe5c23b1d67a64ff3269a430db1927cece798ed159daaa3b69819fed596eaba5b6bf4fe3e688 57085fd7e14216ab102d8317b0cb338a786d5fc32d8f,2d81f6711464ad6b3de6f985e02d52c30ddb350bcad92fc15df3a67290e4d74e2eac52ebf9479dc223770d6481b1a640784b6e4a31ea840692e625bb2d400a5c0c7966e5c4ae2a4cd0a3204d7db266745d64122f83141fddc676b57713e45ca04139d49bf42edcdf443b5600668c1534953aa95fcf4bf9a8ee8b52680c9463e5cb5aaf09f18eeb2885a061daee4c3ee5dd6e824bdef31a93e092236f91b8e2ade094e718f8e203e43ef00a843a2548457d0ef2315ff91e5221011b874cd798254fb4a2e4c65405644e0deac6529ef59ee52f2496d9b19485e8128a76548c212d667637213b637919186afaf827a1a0cb5f584f475723d7d2eef4162e05f9acd221c3416e7e88d22d4c471a05eb0dc70822e912942261e9369c0d35a672acc5a48c86d6835ed99bc201a02ce40e86e0c096b2c34e5bca207e5c5c90cf86bb3ccd7fb89613e53ec90245f9d8315d1102462ce10aaee4608101aedb37857db22accd5b024ed323151d75223e6cb0ef402f12ee2905869396ef6ad09f6fcfc57310bbe46ca7817021df43fbdccd9d62158afa8f20300f8fa17b202733438c1f6b0f1d1fb1fc8ad8414e864debbebb5f96367135224581b9b8e54e64937f708a2cf07573a42c45444c37ddb1287d4d27cd3a9dbe476eab7c39a37722bc4a1345a34c168dc93d48bf719e79f25ff112fd687b86c20c98533ca4b0fbc1f3d4a6ca469e4 a05404df5dbb57697e2c16fa29defac8ab3560d6126fa0,cfdda60353118cb298a271246886e4c7f976465c1b65fb51e87f7e5a9be050b38ba3eb23f52116f0a13ad802e12af81a0626a51c17e9edef5cfd1937bd774b4e63b19bf1bc61a4ed23a2acf45869e4efe9cfcc8c89af6861e4122515e2b5ea8dbf024f36efedb7e6d6dda829a5e45e21466f4bfc55596748a9fe0a61b3b9b9ab2906008dc3b8bfb71761eeacce68fed2f0f0b380661831e4754175ae79e9c093db7f2219c39cc36ec72ea39c65128d835127c3808de4f3113e9ce42bf1f86250919c8907e21b0905d960480d9786ed5be6fea4ca1017708e1a153846ae80f8c81df6118de9c25de8b72473e5a2f40980417259ca2d3fac3afcc42e1d5ddef03673cc2d9a7e6170357085a135b31b6e8334d331e222055fe01ac3dda56472572cfcd908797bbd7b8da672e2f9a10497e423ac9e84c17c81f81a944952c7511fc34c5626471b85d80cbc618a68dcc343575219999f28d01f732e76dcd6b056f60d0a9ceb822c1bb772f55bc85fd122a0972b0c0fe8b88d731887656036a4a4278d0f46b27b93530d3dda7a689dbbb73d9de39a6f96082c8d9b9aec1fcef64c7434c38b132a66b3e2dd51367eb83fec5e6af8b18a151058d092ed381ab4a86cb542f54ebf5b0824df726b91de3bd088cf8d1e55eb1f2c834ab5ab9e25bdd0a4445c692d568b6458bc29cedb6cb5c5e7c29f16e1b95f22c2752fe1175ffd41f112ee aecbb02759f7433d6fcb06963c74061cd83b5b3ffa6f13c6,8fdb0bfc41e23944858401d837455d17966db41f4b9d2bab52e208b2e32b22e1fbf3cd83f13b6b99f14bcde767b286f7d16331fd56db42a4acd9c370bafa8c99f91a5ceb24d52b52cc657686163057471f2d8c982af779b05ba1e49114bd55bd59e1dfdc69f49ea96f771fb4f6b67d1606e6d652368a31cc3f7418427a8df6fff8e0b5e43efb6d9795d766017284879aa199b6726c84623ed69288633a34d3742d20f1249e1c70370bb19320627598d208a7531ea233e772cf7f3994c06ffda7e63b85bef873cb89a83499174b461b36a375fae6d5779e23eed9d6624de2ef309721c428d8a64a2fa7abde1bb56f66f04225e30501aad9b9d9078ccefc8f721252a232b82d984dc5d1a03e9f94630b4023ccc4ba6a47ffbbcabedd754bb403c25ebd27d445743e17def49eb16a75b25921e49373a4a669a3b3c6bf5acf72faad2d9e0aec3723fc07e541b72ea98dc3e7903cc89df00f6b20f147302d6af18fc94fba446d37f5ea3a49a9b2942dc4926e06f6d385409753e3ed1c9e1672b783e491635b2701fceb0f133c1cdf9364b7bd55cf1ca89de5acd13fd7b94b3ee849e789454ec39474636522fe41ea3504ce134610d675d5cf299f3e94686f1ad9be58af227928b9033823ca7195e6856f72008b31f4ad7095f98b4a5256d2a676817e02e7839b2b875b59ad020b97bcaefd515b061f49526821043b3b1a1f29b61f5b aafdc9243d3d4a096558a360cc27c8d862f0be73db5e88aa55,64c80b3cdeba491185a9ed7e0b5efc031e36d4f22f9b99a30237c5459c7da37b16296a7d2e221b314b47f524a01d94845f7b1f38d7d52da83860e576e8910365a217ebba342c7e26a350ffcda54fad792756eb1d87096f0625d6b237e77060e350b9cb9179db967bfd8c63e15aaa24336b8314b692f027c99edbb757e572b0da00b45d90200bd778b396d18375d77e0cf32e7eac5003794a010b3a1dcc5968f59a0cedd4b2ebf4f0f151e5d8f88c297506295080c91ca11da2cf32447245e0667d1d4fb619c514014adfb7733d972198ba4846d57ee8d9ff73d543cb32cb6822996d04b08af13df3a696df38c29b677ba6fa481a5a22d2611b8d721ef11c4361a3205f75c90b7b439b47893cd5c38462646355800ee91dd9366d8ca3c2ef754b8ddb4fa83397faaee9bb24ee4fda89532cd7e1f05cc4d52754ecb59dc6bca363d9e804b32c47664be92a23023bdebabc70dc45f15a708d5a0ca7e6f461c825d58784748284722df182296103d27a2868c06defce8f0669a173a9ea7c9d7ba1ad721a48a7076ca7e005d0be0c6f5df889747a581b54674ddd18a3002662a8d1f1373ccf9c0760b008a805e737660ce28be2db4fdfca40bfde0357615b8b09b264b9a9c3edfb70f967bb520b09a76654eca9fdf6af19b298dc3348e7a5771f3c3e2abee576819a1c59881e6b8fb1db1b114d746e90ce6f9f6c09acb5c46b03653e 7bc84867f6f9e9fdc3e1046cae3a52c77ed485860ee260e30b15,50102cb39ffbd98f3499ff53914870cbe4440ca8b6d61b79b7e6481b943d8e532947d06a5e04a6ec8e595958245088fa807600b1300ed4de47a2e800d812bada538e351dac64dd3043e7f655b411241c9031ed2765264e372c6f59435988963ef83098452029761d43e4d329cbbd04825719adab1920dbed999c1c82bc9a362ab6c0de15a65ea6e7eaf9b75fa15543910e7cfc214f25cafbc771d9e641fa65a6f52fa97ce428910972efce8c23ffb56aa5ecca3efe08e12125e3c88c652c89765ab1b72c9d16ae3cf4c8a413aca5675c18439f3909bc8da92ed71c7219a89dcdbb3e07a3a8d4145b2d65e9525d3e583c70589d79519793f463de6799d682e24e83e91a96e866bbf0bd72c041dfd44ff345fa83c24c13ae0689de442dd01c85179e69fd9e07fe2e2af1f5d1b5365fe16c3d9da5f1d83a6bd71923252371d230d20de8a76a810ef29469a370cc552bc0fe8329cdf85905134ba4f7c4f77fc83bef84f7560adcbbf8d384267ae24efcbd78b8dedc130ba739c5ce96d8cd05299c50037b94f9b48012bf346e079c4599c2dfbbb1f3980a1800bd593acdf5c7e355d3cc44ca412a3565fbd8b2a9e8a9e44667979c9b261aad8ec2b201259a2d7e4d5da6d5de05ae61760ee8dea70ce5f380bf3f1620b3c67d8ec5dcd47eb14c078eff113a952b7c77b8e832dfcbb5e7492f090d8d4a9893d222ab77bee17501b8cbbe fac523575a99ec48279a7a459e98ff901918a475034327efb55843,ea2a6c14acaa13b8ce15f4363206525a44ae834d82b000efe0438a4321ec1eb6de31390bb495ea7f067d4a3fd9be173981076bbe4928f2e9173f4a3158dc4de9f940bd4c8e76c2f886c5d4c07a28e6ca1b35a4c31c153323508db12d63908ed758195cba55b1b8c9687d219e4b053849d5134d3bdd8d8b0adb2c02793677853d6fb496813d72dd415f9ee59b6c30aebe1be2cc5fc3d9b4d4456ac65be1970e5853f87c57bec289e995faa9fff16aab0eca5eee8319897d24e6d68f29b9a8937a0d98717ad61370e25c0f0b68974d41abf5dbc3c05a26c4b5bd4c60f5d2f2f0126675b785cc2a0d0bd1b2efc2bfd14790aeb55db281535950891bb90a6a02279852bc07d6f03f7c42b4e2b4da0008e6ccc0a8fdde198159f6a2bcd516ea80d48f8ee63580abf97980530ab589fc2158705eb0b5015d6b92d41d4d985661bed07cd1e43595c1a9c902f08976f22e01825cd2c9970a2d09fa0ac68c3428fe2b4957e528deab2d1324db176761ed9a3cefd129edaa882c848e994b45d7df77a489569b1720c183902a5a7e8116223dc3cd0fe84826a28d2266834d0b09aff134611203d8704feb7f1be1736ec9868f4f638598bd530f6d0daa795ea85c2954dc188a27a14aacbe2ea7cddf85b3dc9f2df61175530127af3594ea39186f9a18348f9d60dd2b32db207e5398f59dba345511d9798613d66318c7f3504a431a0cb8e9d9 0f8b2d8fcfd9d68cffc17ccfb117709b53d26462a3f346fb7c79b85e,3325661a828829064e99adef00e99e8b9b08a53a4c6b008fae8db1a833cf26d83f3f8c613defa9885593996adae75995dd196893de7a89718296f12611b3315e22218b8e26e8124ba7604b4cfe5f427dafa90e78d0b5e14351d52f9b8eee659b54e07f1a8aa08281b2d8672cd405359a681c74e84b1f6f6553ed9b5184d10eb608b37807e5a824c3f0e1126824acf192c9767919f1070e77e2f81a1b5e5ddafdce09de562caa1470bc1023e0edb8901eb9ccfb813366ef60decf20d0beb552e7883ea4063383b123d94c35f5d00d57827d60dfb3550485b75d2235400a696684289962c2f71227c847548961b4f3631c656acca90f9ab21547a99197c32fbdd410fb7def62d1b293bb0fa36921bee609a6d7c2c9d6abb287eb2920003c1e965bdde75a90a41518855039e3edfef1a3dddaa192fc6198aba7c0631949f140291fcdfb8d387ad4c19f71b6ec4a6c3f5b22a0f8bbc0f852e03953057ceac0183569815625f566f050ac6b14bd87d3056a8fa5d99e621632aaabe723189b0e87dcd3cc3d29a4e3acf2ea915a8a7e0ed73af0bb905a4e8b0599d20d699d2c971bbe338c964bb735f72540d8dfdc069f950aa13c814f46866a32c3efd0ec5d28482298bee0cfed7b8725e64c75ed0a35d8db157278d169849b56aff015603e1006c168276d96aaa91ebcfc6c6890d5382cdf1c6c5a1bb6a3c090f37aca605e9e7459ee a963c3e895ff5a0be4824400518d81412f875fa50521e26e85eac90c04,1acb385112f369e6d00420faf1291b1baeb428c09017b647d7343dd2ff50870cbd47601efe679ac0724dc63cbf543c87df5060cb0f11c786e97844a02bdab528d3fa5890dbcadd9eddf2de00a639b0ffb8fb2cde673f66c54bd554e737b5f370f53823b135b3257af3394408a853666bb00139f147c6ec198a5829e8a5f85279b306a428dc2579e66e1e18eb3c4971644dbedf4f99bddc9e4096d0bc915ad1f72d522395c6306d047c399bb1c4877bd8278fd29926c3b74aac5414e9e0936e01daee1061c5cd243c380ad802459972d3c2df479719a554cd9318a8faa3016aa6ee057a4e57cccb698a4b0ec411f31d11f0642053880662eb3e098f88f74c65225669a4cc8f3a04e23f6e5e40f9a3c7fc2b4993782d58b27f80040dd94475a85a14bc792c6b86525d359cab32744e2bdb4890a392ee847c065364bfa18c85d7e328e5acd9f04e6a6542c8b734a3e3795898d7e48ffa8686cc12497883092395239a55e56ac18c4d63a9281fb8aeca2c099bdccc65cd239cbe597cf5d577585fdde3f4b573a666c2d1e3c611df94c9c519dce3110c33ea697fc1955127c91bdd420de5eb667933a49e15959eb3049c7d265cb638bdfe3d6425e20dce650892e0fc346922a4277c1cb1ade59886f8006f0d0074937e852a0542b5a111cc4acd65f3b2580670dfd41c0c9ee3ca5fccdd7743d131eefba0543646b31a9eaac4cd30de 03a18688b10cc0edf83adf0a84808a9718383c4070c6c4f295098699ac2c,3c7002a2eced36b19a3d71464f86a526d0f2a92ca76fe392810616e75a25c223f06bb1ec3bb5ba0d00a51958789de67724e1d57c4806f6752e610327b4c84e9c5e815f8765e6b452376cb1ea5e3151c21e789fcba16ed05306c53f2f089b21f2b5590cd4b48647caad444450a1a60e1cd0bd87465c2a3c2d25b15146767b6dcea1a8aeb8b717410eebab139b041fbba1f654a7136b7071573316b3a7e5bcf8929cc1465ffde55df7449c7068eb1d74c0b12418b50046fa2197a47f4cd15e7d3702e260c188cfdfbd55cf4332be6cbb157fa8e62d003d902433719b516c59d31f8f935ced0f010ee66e8e48448fb9bf3a855bed9cc604df713a689009223f858de44137cfdaf2b194131b84559a98afd4f86ab13d7a1df01e414a10768f6d48e426ea64a0602bdaca1ca56c903940a35f28842922c114f25f7000d720edd40aae30f300abce4fa5a3b6088b27377d7767762b220da383308d00a43e3b9eaa1899c3d4e261eb132c41029ac024d781001b56a1127226c3517a015782097d754233d83d3237a04754f3f22547c4321fc175f9e83e679b0ec7564d942d77f64ea480780242cca0ba64a8c41c7e94e575cd9e60c229e4765c8bc993048a81eb4d9a7f1f1fe449abcc1cc5b5cf500d922a3dd26d6abc62085249af7a60271177b19f2d150495ff3b4e8aa0414c58fc1a1979eb9938fcfc6ab3af97b9a7c8c94d12c821 84fb51b517df6c5accb5d022f8f28da09b10232d42320ffc32dbecc3835b29,e22ac7fe9db19147b2dbd586d6c5837a5dd3df2346ea61dac753b0371274dc110612ae3db350eafeeb89bb1179eb9d84a0590b243d0dd9baa00796030d2782f0163e85328a0aa06974a7321e66649281db8c506400310ab3e21243f4c2cc5cd8b36ac7c35c235305e6b1585b33784897d82a2d31f664d963ada323a9c922a61d9aa5bef0b90c6b7183f1fd0ed4128b2fe0e12eb6b461176c52aebfd608c00c7d79799071ab30da33ca9aa26932aeee0d585905bbc853e80aa746706faf7be50c90c1fbc18e290505277e9bb9bfa9c767e952a68c4f93a044f62e066e61a0ad301bbfb921c818690bf6d116c6cbe7df174a7e57e22294303820494757b3254ac40404a7f4a6d1f9624e5cf3a770392b2df9fd1ffef01ac9afdc74442c0eb6f11e1eabc59270b4da6f2d6356e79607d6462c08a6f29154bcadf4ffd6e20ecb700e188e523b3930e35c8990afad2141ff71912adb07dc00d5bb78d7fc5590467815ba9f46ce4f5cad34910a574687d8f7fac2f60b34d4c3ba6d25d3e5118b851bcb73c1b1004a623f8ddc8a0d07ad21b45f543ca8e705b3864d1c4fe024a19ed5fb0542dba0c39fe0a82d83266d9c124e61ddb107d8e0ab57c970cfe5879daaa7170022408f7a9a228196c5c7ac614cb98cc276d1f5ecd79347a41d97360a19e65681a5b75e78c7f79addcd401da6de7ded3b1dff1f746806ae03f496ca701c8448 9f2fcc7c90de090d6b87cd7e9718c1ea6cb21118fc2d5de9f97e5db6ac1e9c10,fcdead82f39cdfcef99c1babb674a9a8e24ac594646c31d020a4cd2bc2554afd78c4e413f7804fa1708b9f4000fd860e3070f2e1ba9eee3805352aad655b4b0a728f2d5fcc43243825bc0dce33ca716626dc76e920d72575e26ddd7110d0f991a91200b513aee23ac9bc7043a152ace0cd0b49181d2bb6bd36e93c0b627aca9c6ab6c85ed70ce762429c8f262708103284c0a792138f10e8568efb2399b38a31055c1188ba59344e6a2b73d5c04aa524056649844d1dadcd07d35df5d851ebaffca5703b80153ea627b1badfb2885f70f786d34f5650fe73e3690a8a96610059253dd3abb5fa7c54cf6e77695d24a6594077ee4d3673f9fc56c62fc7f710cf872014c0a7de8b1ca6ae8cefaadeaf5f4d055ff765ad418713f2dd08eafb5e16eed9fe344ee8d4388fdc22351f63834017b539e3ff143f394b5b74d06f65e96a7a3d028fd14f6c7001eb7ad2dcfcf4b2447aa173a2ae8edb581b5bbd89e8a468fe0a38507530b9795da3bcec6ddebce9eb3132ef18c9c2a8b936a431c8b121fa996ff9ba5ce522986b678a5ec99a103a91cf33196e08c82dc65e68aed238a9316a73e71cf5a67ce440b93bdb845b3a60539eccdce41bc723ec9a14ee4e082f60c0be3d5e50dfc8be1e86a97ecee9d88e2bb2a3aff47fbd6d6675d81efe0708926b81ab314a524fc745090162d2ac723c4326e0f9e16fbdba2b1e9914bbeedff96b de8f1b3faa4b7040ed4563c3b8e598253178e87e4d0df75e4ff2f2dedd5a0be046,f9a4d63d82c6efa5b1ff90b26510ecf06c53bb1c3b7427b64c41de1fa03bc0728085c972e94a7fbfe5f3150a7b9fd8477c6cc1c250dc6fe017b0d0668adca12e3c1c9bdc78247529dd1f69198bb0a371072f0225420afddfd64ac1f7a8f06fefde803579491d8bf61d6ca84e985b1ebc7f0b48822b8bda9cf9aaf75b7c33c5d360547a34c68114e8a894d658e4f27e3c137e1b2a203293c015975aeb49ab315d142024767836efe41ddcf42458c5b5238ade07302a0edc28a5e4f686d1f98372a179dcdd2eff78914aefa492c05aff03a5ca3e188f611ac24922cc28ac8010572f406c0ed1bba849664952ae23842454f60d7f4091d0a4bc2ca6c7b3e1c7dc72659df6a709587bdb30ffc3bfe6391ffe3d94084d93f2186024b9aa7eb52d5cbe760e5e3a49496a2239c9c71fd2c18c199441f7509108b8e32bce086a110507038069f99477dd9f75efdad8ed861c38c61e2888f7ba3e1ac237a2703bcd64f19befe921259f88d225b9b5461f070297a28908a35d78bd66165c8ca532ec58c64da1988e39d1237588661933320c80b30c183126a10222d6c2deba60a55eb6574af1050ab4a6253817ef90a1da8b42633b97f792950364d1e7c490a5a2bbb8c3412289329d2b0a644f8a447c5ce8a420c402429b94f4fe11bcc71fa2314d4692db47ec2eb58c32513b07b7cf7db276d1ab7190232e7025f805ca2ff9f27afec20e 62f154ec394d0bc757d045c798c8b87a00e0655d0481a7d2d9fb58d93aedc676b5a0,cb65eddd9ed9fbb19e03ddbee2d0eb5f0c2610f0ae9f89c50a463a303c3cebd64345f39f1ce7e04bd5aff16b15d5ded79e717ce07ecaee9b7bf1841b17a1266b5f92f2a92d6bf964e53c3727c50fd9418c1cdbd06f0f0510fef3abed7b4cc31534e885edd00fb1316617d6433b249956e1565be72e5483edc6e5e90b470cb2e089150d3b3b70fff3227131e0dfa12a2248c064dfc83702fc462fb2165cafdbef309edf1bb785addbe17c6e6de702ba4be1229a7ab7be122306e306e92d0de7020fc1cb568f5eab5f0a2140b010587debdd8404dda2c4d6e728a4f1a55182e018789cfe03600301641d5de2dc58fecada9a9e1425dabf1f00ea013c05ef3d64113ff351f10916438c6b92b6b6bc5fd3d6cab43669a1c60ecd39829c327899885edba19b8a9b4992805916c460e5b5f72f53242d206d2b3da3a976784fc40b6a4f0fcde7422453565398a040f9e5545c482efbf9d3110100dfb04dbfb24a94fcf3fa05406ee9b7e677ba0d3a52032aebc2cba54dddd8cc0900c90f48cb9ae107de01c3218f0ef5bd9db9d7df8e926e60a384dca5299610413316bccaf2821b926174efbb791d465f887ce3020b908b07e545a386283e17f980639e81e71b0203a3d22ef233b4b2e593fadb04503f0cfc5ead74075767228458b1ef4c5da77d126d6db7eaad6a2bf5fe9c18e562afe5671dccb60f8ddef168375be45ef2a391556f b2dcfe9ff19e2b23ce7da2a4207d3e5ec7c6112a8a22aec9675a886378e14e5bfbad4e,7a3e2cf760d677ab42125bc78324a8e42866e2c148087f92ff27e149dcb2ecc3f3209d3000583d96c60accbb637714c4175b0db1f982a99a7d121774afa37adac741ad9cf72bfe7175f591e18256a95a0cbeea06b5cace02c7903b1448ded23f3a7ad61f9c5ce0f61235520706667e94062cba04f735cff813a5b7501975bb7de70747e619efad4d548cba8fa818a0f4b59f8974429075dc492e014436ccee77ff6947fe3702659a14baf89fdee45dedcfe4cfb1d45d59ee5d79dde87c187ad1e04f06217c41c35f1185e63b625e30e67c5377a11909612dac6539f72a6bf46efa1674d41f00fc2df3a603a480517894b88556971b793fe3d14e7699762641913ace9460a4791487937fc6c94b6a0a091c465a3ef24ec55acc8be486255848dc7bace4a3f860c7df0307b70fb33d8164fe3fea9acd2bf3484baceefbb4d24d77bde756cf7614bc2f4d037e16943e08437695dae204ca08972be843f59d608325c7d6d64b136148887b49fc71ade52b11e80576facba740d88993dc77df9b7adec54a6daf3149b21b9d0d910f2eef2c39ab3304f2e5656df646e551bad1e4b2baa3c7ba7857ca2387f516a0de8600f14b653055db1221a57ceae2e4ae4d3102b60bee67a5456e0e2c0e5a0a2ec249a3ad11b533005946bc6038a98d129fc696f48f05f0914913d45bd7626046addb5ae3bb4c4e1bef5332767b49d8b576953832 47f5697ac8c31409c0868827347a613a3562041c633cf1f1f86865a576e02835ed2c2492,0622ecabcdd9a8c2bc20fe0b9b39ce1a6a835b5181327794db2e1b40070fd9d89a498d242aaaa8fb5063d5e2af45a1cd04cb28b96edf844aa37c7cf6efe39363aae56e1e6c1e537cf8e58c20d5af57aa0687978e8ea46936defd6a6f3486abb9e1f04b6128710f75314df64706190f4aacca8fa9f4e1008385e641f40fabd228b9dd421e30184995720d49112fc429165aab6dadb0cfb6f986e11866d138dda8a5b4656b062d73cfcbc8b8873509fea2820e150672ae7c01eacf5d9575ec6b1dcff1f55e6c2dca4ece5fb4a6f1ec7bd089c24149f1136af9018920977519f390fb7929fe84228d5ecbf8fcd5291791cf7fb6ca7208350cfd5d7a761cb8b6524de5a85467dee4202232218ce6b39e5505ef02452b4fc0a87c32c9b9c9b8bf5fbd5755313f551891c5d11e26fd57b65a42def3beb07c88d117cd168335a7749b97b1fdb04c7ed3d2aa1a2db4e70226f3d8b87acc19a1f34f60bfc1cd0ea1864c5a991ca21c72c163d0b6ba5833d8efc7aaade5bc6d335e62852addab38831aa04dc4247dc7e1ca5e0b2da9ecc5358a889ead2f2cdfb538d900face60aa53228145644fc4aa2be363655ed6ccc47d23ccaa0eea0048887e2c670ab4ac85bc71d1caf7a1c02eb3c784fb189ae756ee9133115232a92105b033148c1c9806821beb545035a1359cb4290b736d3d14c5f990ad2e4fb02a1780e34db86fee3bd2a3a9fd 512a6d292e67ecb2fe486bfe92660953a75484ff4c4f2eca2b0af0edcdd4339c6b2ee4e542,0d126808ed2ac9458f8002cf172966c8daf02045518edbcf87fd315f31ea781c73579dd9be6a3000f7d6e5c400970d4b6731f90d75ca01e55ede430d8a459a98c71d9ce16bcfc334bfa1ce8e18a70a50e3b795b810fe3273b9eb7de8d9b7175f97c32fb057678d819b1134ac30797f6ff7b622ce48616436ff7c38453029dd7b35e648c14ac725eb49067de2f0dfced2cb89ac6988ca178e72d0d19ecc481748be17e8baaabdbadbb84d0b2f2a49c4e60c00018ecb61d2cd25d8841157d9b6ed74c70c7791f6f88ce61b5fe0f28ddd2b4eae5e2a71dff495907fd883ccd522ea1dd55291a5b274b4333eb62650d55b0ce61ec1761cb2d5ea39c712365309537918ebac6eb8a0be3d19cdd0f32fca2c32fda5deb68ea99ff5f7b66ec4fdbc2f8a829a4b3512a52044a7f7c567532376d971ae504601841c8091695533266d14a14ac46a7370372195cbb4bc212ef72a18f7962eee6738ef1a669b663b336cb324ed808c3affe2f39514becd5d654715c85f3e5cdbd9029c1f589cd0d563aa98c6fa99769815922ca7a30f13f55843dd952f5724ccdbb58a269da7d066a548540c23f4a740d82f90246d193c22a0cd0601c2030e08e5f0a9ab7b468de0530f50b156c38dbf08217b63b726b85227a5fad8bf9165e76b02cb00cf7ddfb03d9d38c882e81e657fe5596b66e777e672ff416a3155d4e2ebeeac5b49a8ae3851ab13ba 973cf2b4dcf0bfa872b41194cb05bb4e16760a1840d8343301802576197ec19e2a1493d8f4fb,863dd45342e1af41f682c138ee8daf96308b1973b3740cebe9c2999d4190b05c7630edc87f9942f31a089712bf2b705f1f3d835e25e51e8bc6d5ffd017a5fc2f30ecfa82c6b9033aa336acaec58fa5e0d4f4b40be4f60b0ab303ad007336b5d08989e635e92c7c0f22cbeb049bb4761e786fde0e7aa378f6c492b3357916de530e7fdfab45d2116b3137b0ba6bbc5a04313757b26cb3467031d82a98025e628f0a3bcdb234d4e7faaebd7f7f4e94a2c4ddbd947a3ad2e66f7d45e66c89aa037b956af67d7a2dd696d231d31159b5e217ef4a911a24b4c012ad67152c9a1fbf85bffdef6523629baf766e22f009b6371a4c9473a42ac84e2be89d2698e668373a01a2e8edf60f9c7d83ba415ebf8588c0812a4409a5ee205d794ec5e3b5a3688d8520c98d516c877f5448b6cdfc1a1df445008cee775160096237efc27fd32e1629835b6663601647aade495a117c025e03c80d8dc2f31bbb7cdd4d2c50c7987e8003ac04226e5e051e8d2930f93c143f2804dddb343591ce11fe55bed40a5deb0728eb575694d4f62b7e7901e3a005a306961051a0219fa49e263e85e87b2880ce9c9cad37f5dcf001df265fb448093cf08ee592c66d2bdd37907d6492b05ef24e96b08da4e55a289e6a2ccf65624257a754c133b54db543ffce3d11093576357c75d09e0e5d18d95d2fd5206a1f5750030fa789b83a81b6e81d98b1d360c179 80beebcd2e3f8a9451d4499961c9731ae667cdc24ea020ce3b9aa4bbc0a7f79e30a934467da4b0,015bb0de6a28737d365353e9f0052edb5272a67f83863341a7b798ca9197a051039987e22e6ff95f31ef2be455956f7c5704fa4108f600db247802712ed268f35b27ab89ad0116245783dc7be9b511ee4a0388a7ef9a234e1161f69910d3c0c76738db4be4480ea0e8bbabb081428410c34cb54968f7dbb8cde3336317b6d813a9a859e4ae69bfcd855d261ec89a54c510c4dd2f68cd5d607b299204654f01de5a8158f2e2bbfcb20857f029a579cb769b3f232a17f546a653d04feffbedf3c6875db3b1905e73a4c7bb383a6b825c240f047a2b6f6b944b3c51362dd2dca46d23cb502a7267acde99a8e76e63086461eec706612452e240f97873ca213f9fe6a72e66d91bd3f60d04f7da7cb059258875f0d458120f0800bdfcebdffe2abe784189406c9bb63f3e807be88c72ceea54a55244b481875dc2c736d899d9a928cf02c2b5176d8ac5b64bba7d949c974e613f41b5ce1b687b91dbeeceb66aeba8ce8799b3484d9255d54559adb01d960710d198fa8c5a18eff47e3399a8e2c386d846bda56e5d9e7c9478dd563c50d840dc664d105ea92b62c6656e2ccd31955ee7c438256b2275036deb2380c08d26d26c1e638f7eae12f5e8539f74516f1340da7b16a4ebf8adc93f690ff39b39c612d42f8d4cbd764b2f7cecd12250527810c490b0ff8a3991e3924eaec03f67ba99759232d00cd58130bb3be9235e14772462 7abaa12ec2a7347674e444140ae0fb659d08e1c66decd8d6eae925fa451d65f3c0308e29446b8ed3,9ce519a1f37b2c70c6f641c076f787e8ab26186efabeb6ce18eb8e75b0a8eede06fd78d326ebb3b049ae484d6af7b1daead737653717796a34de1dbcf900fc59b299756398edce063c5654205c5fd268aa71a639c35e35d4deebfb8dca17686b58a639f0da50e1a7938b47a466d03de7041b5192fdaf036547b7f22d5a23f8b6ac48e7c67b7372af0e358cf73d2fa922ab3ce823a68b95bc3a543ba236e413a3cc2b3181df4d3649474213a0f8148836230bab4ad722b2a3fc446c395977cb3875c06c0031e807c24be7ea9b025248f1a99c494472cf417a803c69b3ff8880c0d364512166f7e34f9837b5c66931017a4da3e63998d0f402d5a75212c8042712ae4af4b4900efe6c9e1ec5aca07fc230e6e7834a5a865f2da71eec9054427945a913c5345506ee32e6aefe4ea3e488ba07455d98c94b5078e75e2304f2e85dd9dd4be18f023d1ac6abe5924c8e7b8219e3248f14eb4b78b6c16fe2c3aa40b97566ad3bb89154926baf8820d7e8e4557f8138edab423cc0c800dbaec892482b6155422d2ae3c1e90dfc96ab800fd35df97092ab0a83a40c7b925514cca3833bc1ff6b7e25469d6744a117699c481e4edde082211e9d94a73a0c29fecdb271e75ad038eed0c7d5b856c1768c4b9749b25811f16b1c408c1f2e3f2bfdcfc8e5a329b675418abc4809dcdf2a3c4f867ab9e0c0ae28924fce90802715fd5424e783c4 c88dee9927679b8af422abcbacf283b904ff31e1cac58c7819809f65d5807d46723b20f67ba610c2b7,648167774b09a9fbfbfd351051d18f9112d63b066beaf5070d3780189658febea0a4581dafc6948ec1fa96f0364ef3d1f2323efe5294bd76c28632fddeda51079e9bca5c1efe95f76bcd4593836b9c64d82dd6ed02ad07622bf2b1f7f0b0738e0e3929f49edac321268c78d47d853390fdd8f1bb29c6df469360e75e96493dd4fe5bb2d0816938d5642b87f0344fe4186ddfcca06643a691bd9272f407d6df7a1633550f076042277c325152c8673f3fd6c980d6bde4eab43018e322dd3647da183910cf4bcd3464cdfe0d0283e79201553bf03b028fe6f4862953f865c6108bce672c4db5503c1d969f87bdc310f7b78d9df08ade46f54ef718083f90e60599e41cce34110befbe315e8a0bb91d428df35af59cd4f0c8059b6ed68339307280b05c3aa490b7900c13c3e12f1a4a3983db5f0a620179af9ef900535e32146c8801c750080e363a6a67e4a9037fc4301fb28b006822598b38dc38dee16af9a1127518684bfd4a0920c7267ad52a447cbd6178a0329d4da146657549cdced7ecf9c2053541943afcd508f677549f364d7f793a7b7bb8ff12b7594ff768faf6dd77b3cefe97715fe70d8ce8468aeb8266cb09f21285a001ae13d0fc8f29cf8380685034a886ddfe8d3ad57329e6fb92d2a079e5af01f77aefd78a29d294a6a8e37e20159408bba4f10f6fba5d54d4c4d93b1acd65d84088aba61ec29e122efdcb6e 01e43fe350fcec450ec9b102053e6b5d56e09896e0ddd9074fe138e6038210270c834ce6eadc2bb86bf6,be4ddbad9be9abc823f65a647910aa06265b547b0234c1af6a12987000f710016295ea57cc5f30656c56a66f28e85c24567adf2224011191a045c23d4491e444114392b74bfbc60858e719a67bfdebc135725de961ef7a81ab90ce4192107a5ca84aabbfd919bcdb8270e8079e29eda4c22e130a1f046e5a87a4f2cdfbb4dafae337c1fdb5bdd9deb321704c585d632cbb7a0438427a86ccf7575856b535b2e92a3872f2b5d3c945c16f3547b4779e5798bc82883e850585a7fae200a47b68ffbae54b17238d7cb3fa2c9374942523584d85f1485969bf61af5e117275fad27577daad38ea3702b5dade3d27b4a2e2a66f88ccda568d5d4a11e1dda5d8ba7ed9cbdec91487c19e1f9a57d59afe374741d8fc9df32b3bb60f8fabea1eaa95289b43d1fe712a50b73bf68cad16aa25a1dd95d80a0f174061a01d9f18509589188d186bdb991ac9a41423baf9154210ed6cb098d6844699f07a388eee76e8dba801276f6d2aa7965065f3c923ab64620da1e17a444790f9b7b326a3579b9a5ea5fec313d294f97fc846d721945b6adde91b66454ff2f2a81cfa19f6b45c51d07be8216fe7c1e052a24904b2ec2e9929314cd9da48450beb8ffed8c499816c078aeb2a1b52f07b5917dec0a7beec2b83f778bfb15ce413c9a4307ccb7c83c879824d0cfccc4b3aecc519326ffab353e37c59bb99ffbeb44a95beb1dad25843becc51 337023370a48b62ee43546f17c4ef2bf8d7ecd1d49f90bab604b839c2e6e5bd21540d29ba27ab8e309a4b7,2378c76e867947e94c0383861e60e659401b1177bdc1133fbdfba3552b458dcf1ba41c825ed8f41f7f8c8986b0a47b25bfd5f0294fdc707c8389560be932c582e2b5c63cd85754e9d96a9725c12ad234b887fd5e96ccd52507bc564f59e2e0a8fe89a444aa3542c2b302d1b9f8f3d41f1c960e1867a4fe64d5f6216e64199f3d66fe4bd22abe7b23ef97328f5fdb5cd502a118000e0606d31560c2cbd4cb7ebf90a0aa1826cb32ac85156b678198d225f4d58d3076fff881d9e6815dae811e7a04191602e4287f72c95a497c2dc47c925b7b1b78bef334b153566a8b46ac8f6cc0765300e970b12adf8e0dfacca6a59092891d73ed55dd624a2464509fb5610be2ae0696097d5645cbc9e992b7f1f39005eea0ae0a8b55ada1f28ec2a544266462e6a3ba97a000ea722701690007ea7fd41fb3f83bf85d5e19ab140f2ffe6dd70f199b7995997eec43b98abca0e7902442d0f14e7e4b288a83f8e4f5287f78f57a2df951d62bdb9b9cfdf3d28f0374bbd3b4ab955244ae444e23988721e5b3c4f536a80fbb7114de769d587600c92539d92c3b2621c679064693bd9893bed3c353af5347707b6586912d6ced5903abb41dbcd5b4bb67ef2a315f8bfd23073d76715e869f474df6f5c98e3c1e65117b1844b03835187a6b2ae054eae51797de704c7d4c88a258efb12d1fd618d9e95c4ae37ea0f54effe216c71a0f0514bd569b 6892540f964c8c74bd2db02c0ad884510cb38afd4438af31fc912756f3efec6b32b58ebc38fc2a6b913596a8,66c5253cb16c479b2d7b63e7db76ca275f14319dacc1d00c08a7e170d97366638949fe0fe252448d9749ec105105e8bb483224076fa9204f9a4585f150eaadd931b5d895edd8f2ae37e30fd991174064f7cd93b03434c22a8e5cd27cfe19b5d8f4bd405a9d182e4d7f9a2b009c68ef4798a469662e40467ad626fdd0553b0ee86320b3db087c096b54fd9f367199aae4490f796bfe72df10756bb10e336dba6305b686a291d1097fd9dcb1a629f38d2ed30b87a8f5c1ea1a2ae384bd5f316bf112f6bed8ddc50b4e17509c3d194750d02ae76fc1105753b07130861e866e89b2df9c498c87ba2b9161753303e0db34fa6a523a6bbcb262d3c644d1ec88f9fe1710a65290db69ff847d850107e028ee6cf444e5aa986c98d3d5585d66b4fafa1331ff4a6f54eacd712f39fcb234f4d4cb8c992d079471a269cd3d3f733f0806a78bfc30f8fb3aa97f2f2ad36e8ab019d7e833855299ebc91ca512fb226d797226486153133858649c31ce43308e6e0499ede16af5fcc5cc9593a71beed6206063d471a79f65e640b8c20a131fb15439b9f35d6053dba46b2f2682281e9572720bd3945cac603e61e82bce2144a19dc1f254179e011d096bd9fb2caf77bda529bf7f654118d5db1cd2f973f55ec7b11ab616e731955752fd8347718cfdb2cf6eb6551c449ca601299166dd7e10eba447df8c29e96436b6834f162d7987d9f55b12 f5961dfd2b1ffffda4ffbf30560c165bfedab8ce0be525845deb8dc61004b7db38467205f5dcfb34a2acfe96c0,0128b09a01815373846eb62037245b4bf522303fff74a76b0ac17482ad79e0bb2686871b1916df154a7506985f2a3a6d86074c988c2fa255ddc266cb8effde2d0275bd3360c1e920595e185eda95b54a0b02d6bad88f63509c5b816cd375c0281d1fe29f11318bd35e4afe0cdf51b9c7ccea285787fa74a72878dd3878565606f4889d3454913b0dcb7abc4b2f08fa3f2aaeb6856a25185a00b1be8a8bc7a9a34670793923647ae426bb98c75e45896d4db8a990d2712401694e202ef2e3f33df1120ea9e821a874e67f37648a898ccd759a1db6fa6fd5c14756538f725c468bd3c0b6973a7592c8cf0091d347174e8d954e5795d360c4de1d0785fe45b71da884659c98bac3005e5bd88817450359b51510ad95f16f08ecc64cb9842f0f8ea005315f6cb17c1cf6e01ba64f6847ebd4472db1affcbc0e7b7f5ee8dc5dd18b148bc542cf0987e294aff2edb3ee60c8aa4b8bfbd42433243d55b4b9e00ccded77251f789aad74681880ac765b21e01d499553acefa48456a7e70a9a39163c2e089f26c94733dd63eac1d2bca7082145402fd762665c3f72760dcff13ca4e80f504148144054b714573381c7770c33e07d3a787acc072f3c35b9573fcdc352cd87be8653618d159f78baf16ecf6f8e316a97acdf4bce2c65ca1bc98f257914fce9be62e899ca3ba40a98a57afc3d63b0b0b92b69fd0df0451d7f34297523a99d58 ca061a2eb6ceed8881ce2057172d869d73a1951e63d57261384b80ceb5451e77b06cf0f5a0ea15ca907ee1c27eba,fb206d80aa1d2af8ce64890d3fa84600f80423aa98447792f732fce4716e559f7fd4338bafa60937781b68736603b7a86f1688a2ec60880f6a90781dc8ba3d9b329d662de842961ac84d8fc876449dd8c393441767206188d561af59befe6b91e365413a5f357622a670e22e730183358f9689e70f1b0d09ca9924903379394f516003e37b800602edb84912492288a2e09b46bacfa3f4677d2b24605a584b3ce3174fcd1ae4debdc99c9a75ea7f4e770e2ef184f801e4d111ee5b11950b29376ff19b30a50c4df93a82ec891a321f9a6ea1e0f96eda2fa0c2fc176d5151a6dae7c9536ab17ba47ae31ad69b2af9248e5236aa58d7b864202512e5356da226d5750ce12c062733bd73b7163812efd452ffc4cdd8e5611996e23cc0a5824c5ae4abb59a5dae40563965483b66437b1e75369ff6ab31abfb34581ccd00ca76cf72af7eca65824a46a48fb88c8aca06cbc5d3785db3ab78bb1174354c7affa85086444d3ec92538cab178023e46c7e5e5ea2fee1a970f41d374a73fa6d477d224f095a829ae8e0835d197dc66d1dedab9427dc085a6a95c4f065cf656ad1146ed0c45ee7bcf9f6185358702685e9539c921501e3338c2a6df7b5f25bb248e567f2173164cdcbd8daf0130879ca8362cc6ca28f531d81d607258b66d589eaa9cd5a22fd7490b9a01cb6c0958c2820ff832eb94f0e0ca959b93dcae56a4fb52981f09 1743a77251d69242750c4f1140532cd3c33f9b5ccdf7514e8584d4a5f9fbd730bcf84d0d4726364b9bf95ab251d9bb,eb74359ae344b26e3533947e26cefbe809935ce7ce0d597d1c4125542ffbf1783052e0f90a402d7888cca5f96ce9d874c600b2e026ba4e79ed427f3da96448beef4701c27ca31860790156e93b12a9f42929a8f8d9771ca3bb59ace00c4732983997dcac1046e574eb9e5c912ad4e3813001c86c91b6385e92dfe92ff5cf90652680392a33f6a1937a77df9b9ef2556643308029dc5b5fe23ac9b567e6c81d0e909a279e58215d22132ed83dcf743065c0cb16eb7b991f842125254bac71d80b64f205d799f698f0fdf7ea19c9234357c5838a0bf6add176416db3324cb07b543156c38c2ffb0df104fe3884a6b8f03b0e751b3824fd097fbd3557c5b9c962e9fb29175d1f20799ff6ad9843e1a5b64b2e69fe39f77c2d1a3fd3adb8672d1771fd6769c54775df97b0964e14b2b326362d9792c0c4cdc37aff30dc3d007ac62141d370f0984f4b3d16b87fef8028792ca92ce6620952d766474566c1e96df672f3c335bf2949228006be2b1912c0ddfe66ba6648eb6ea8624b5dbbdec70bd0a745434dc5404c7ac7dcc94197f8c48fa381a5e8e7ffd1c35442c04ee2378d2761b3647a7637423300cc09910b9a4ef90d4992a8ff8faa3b6138ad01e7c3c89660e963bb2422649589df53d5181479cd55a55b1b2807ed120fa9777acff785225129ab1802ec247c48db4bbc284768bdc155d77b072d686462d831491c80752e13 d8faba1f5194c4db5f176fabfff856924ef627a37cd08cf55608bba8f1e324d7c7f157298eabc4dce7d89ce5162499f9,691033ab5c34d52acbb6eae6a669cfb53c39a8020a6ebe9600aca2d9a2acfc898a0dac7796d46e6f304550a8894a9e1c516a1a127287d4ef74e9a403d326dabe1fc548d1aa1323c2ac40938708d7872960e11248235d2aa39cf3ed88a18f8a2fc2794174dbd4c1fb8c686b37641c7cddc565683f0d173952d2c1dc26ed5f5b806c127114910892b1ba0b0eb07c20aef016ac83a78c152b4c4ec41ccd8974d93e686f52ca8656da6d85bebde10c4447005278630595379f57c529c4ee94b8e4100ab930206d9ccee8811fac2f1b5425b6f0740fbaf2f8470a9985b77865750326cd60f855f4427f6ebbaa27cdf0a0444ff278bc22a55bca5f90a58b27d792ee6e8998e94819b673b725079c95f0eae473f62c09d9bb1060ee9f6263950150461a13d758b8da498284f8f355259b2b332ae9117d2a35e0e09bc8ca406c14e8799ccbf0592bfbfb40c1da7b5a88609d71093b46a91fbe94c78a6c9ce9c81a2e189bd832dd746ce19ca3ac9f56572fa691cb506cae417f405088bbc6425118bdbc0c99f97702029c177d8ec398dfc19a98ae3a3f86ae1a8122adc5952b1891269c46821c1561b21e4b47f36904ff7c6814c0a08b6045400be72ec1e647887e27af46ea49c9ec4ff621e544390bf60429cdf1307c93a3a1c8fae2efb6062b9314a06faae8f84481a369b64234ecea944ec6fb3cfa31258017ddb373c55a64c0f9e74f be9684be70340860373c9c482ba517e899fc81baaa12e5c6d7727975d1d41ba8bef788cdb5cf4606c9c1c7f61aed59f97d,68e791106da01933ec70eb650ac2f03eef1685213522f2e88ea7f8dfaf92aabe75ea0d169d9bc11d13e294338a57295279b28b41d8a4b738cffd629fd4d7d5d8ac7b4304e384db31b0328391c19ca9d381e66d41816e647acb66f312a418795c0d65fdaa6e25aa24811022c2be529c83be47274e8c01d4a2710d6ab8bdf095566f1b3dbda7d4f1bb5bbd3eafd4486afe67b682066b8cecd447b9c2e9e9416f2ce5ca8ca1282b4ae9bbd7c842f776bff7372591cb3eed785c82a27076470eca15a33d5b38ae02fccce396326f1bbe28995c0f8dde42c09182995f143a0f2d4427e8f2497f0b257ccbba286c2fb7885b642494f933b584b0ca83b545ff1521f67ec8e5ae4d93fc82544fc20778ce197f3a2f64ef3d9ca583a0d821a5151f462cd70c83724f9976457ee49d3caedf9b6cf0ab72fe7dc0c9f41f9c5ecd12d5f2d8bd6edb2cbe11f0462d36cf248a9552b0265e386dd44b9853f0ac63fece4f860107903f8db2e1f6f4017f05338fee8467c0c40720663b54f556464f4e87f20192299efc178bc73fbbf350782520900644265863223bb42a5ed2e416b9d31f3021ebdba693cd56c4b17eae16d1a10a381713ae39d5ad6a220cda8a91adfcfac51c65d03910df4aab7f7bc1ca49ca6ad08edfcc976de0229ae9d379e067aa9b3fc3a6cd0dbd7d1fc63c4ac2116f9bd3cd70b94a53b71987c17f65d5e77ad5674cc16f 7e15d2b9ea74ca60f66c8dfab377d9198b7b16deb6a1ba0ea3c7ee2042f89d3786e779cf053c77785aa9e692f821f14a7f51,3ad90f57fcffbb40076cb98869510be446f8161ae4f37f57939f8084cdcdb4e64dc7f380fef8b68cf274780a6a5ff31b1d573942e717470742e891b084e24f9441d27f7fae86a8278e84601b9d4830ad9faec738fbbf86aa299653c2eca3b233ea2d1350de9feafa76fb8986010a26eddfcf33fe976071b3c719ea15a2298d060f5af88e3f06ffb4c70ab13886686b8643843c65bd882c924e760b9d78d705b78b2ed14980e9e89d6e99e8945b3a92b9ac282642651d94600d8e5e583a59bae4cf6c4a38353b90894a7aff2881bbe06464fecd3a54b2726a55fec0fe5bb75f403defab989f75dc04123f5563999d1503413412e16d671969ad0d97a6808b1957a7481d32bccbdeec7809a90343ee59c84cd6ad134529cec5e42a31843bcca3449dd3a2e075998788811a601a3661e241a88406071b90c88799f370dc83b440c9247dffab2955dc5ef8bae47c1ad9157cd0f5db61fa245d7179a8768bb3b2da7ae28129258fb8a22f9fd4a7906432eae33158d4ac1550e379efeb091c883a0102f7daebec2aa4eacd277a7e45dc03cc85fe952d326c3521bff980e16bb00426d2138a9f32593cd1355eb7ccde7fafa16ad8638a9c16ce34920879e753c723c494e4f8b18251d20ec437fd42fb178017e7569647720d309097c982aff3d6c54ab23dfc665023a01b3990e6a8999e7037c0405a4cab91876bb660faee8ac30fdb9b 9a219be43713bd578015e9fda66c0f2d83cac563b776ab9f38f3e4f7ef229cb443304fba401efb2bdbd7ece939102298651c86,58b040b46002bc13d05c76e840037b3eb08dd51881ca6281595d39b8b12d1c15f9cd40d94dad00469bf5eb73205fc649c501b57a33f4eb39a7fd76769a6eb0f84bcf985c6acb281e4989f5eda5e823c31e94f41e577b0069809e1c3b09f4480677d56c487ca148dd5260027bd9ef399a3f08f5f5be869ac7a403b53532b9775ddef6b80918bf367af8700d6b9e75fdcc45eb405d37e9a9d7f9bfe2517fb5ba5225c72aa292ac7835a5bf4fa245e782ea67081448f31854f91f21df99bc13c615a67adad644fa6336b2288f1e29c649341c6a4959e5060a99f69981a10fecc30e29cc7784153816bd228fd7859186375fd66dcc78ee4aa5e9dc0b190fb8a6cf2ce15c7f3e0b54597a559bdce7bcfab8fcd25eb0e0c7df02882ca67e2f04e6266558c7f36fd0a2bed459b50fa2d883c9b86ac8e40a8e92f4099cabbee9e7fd1282f06b3d590897bdafd8643729b09b47544ba3f3ae28defc3dee3cd6586b340835f3ad34d6e16053e2ac94b5cbd4fcbbce2d0245421af021e6e0c55c53584cc917d99818d4f0585ad66500afb13c7cf90b233d01dfddc738c325e20b63cf82a307f44c543be58974110bdaecf43468c902429dbfb0458936f67cb59c4e4415b5d03109e88451989cced136dba9002752cf608423ca52483b4253d24e5b45443016dee2d75e7eb9de415a148c439052621ac1df79e60cb585a4b08ca70286c77949 c8f2b693bd0d75ef99caebdc22adf4088a95a3542f637203e283bbc3268780e787d68d28cc3897452f6a22aa8573ccebf245972a,d0e4650c52bd1ff64c2f5b7853e8a906d7457b67cbea12322b5d1d5bcb8c3ebf49cc6dfe8fb41895131956661c772d2b90df4bd6b379715278c9e72b6fd93c3968fbfd3194c2c527d15c6311f1990dc2abee5b6645711251b3d39202c9d3fb147b39d1d3da108254ff8deaddae6599e17c301bc18deef2a9ba8fd035a084d5917fb9e4e56fa6ee7731332b50ca3d2bd069f793ac6867448697395cc5147481f9f6499433d6242502ea1e6226a88068032f656fc8d509d041f1d0978ebd4f2eb347e75758a29287f5be37f9d6c14e4934e5e16806d6de41ff8268bcaec27e999a7ba73b2131147fe05f9ee8a491e47a3a7c8cc93e6d2db374bd5e091810f0d7103215726a6f80d62c19d9beb92ddae8c459002376f58511792cfbe7a2158ebba922656ed88163072bf6667f121747f05b84d470193ecc8bbfab750d162cee7139efecf889accefb6cec328a184f5cbaecee51119a87cd21110fc20ee85560cc979362c12f1c7665abe62d5ada62da0ff3682b32c6da7150841205bfc43735741e07363b9cb15daedb03352bdff62cf00399cc429a8a25ca1cc765aed117b72917b25cd2729cf46f92d8d3f1131af9b6bf16226140cb57be5c96cb2e4a369d226fa82bf0df3fe2a4ee373434c5ca68682c0c594b783a0b2fa6604ef3828510e1c360a617588ac81ba8d1c18c23a30d245dadcd1c6893d3809d6eb305e538f39dca ec0f99711016c6a2a07ad80d16427506ce6f441059fd269442baaa28c6ca037b22eeac49d5d894c0bf66219f2c08e9d0e8ab21de52,1eae5df54490647ff03985658785b5bc1480d5ddf3eb3a1fe649520e07c0174fdf1dde9a8518879833d64a99f3255568223e2dd0c9a67baabdf222c2a314936cd57578395288d40dd047d67adf8289207c6c672023e25a5f66d2baadbe2972ea32516ab753ca37ad5f436a94cfd62182b7d68ee0e7a016c8540840d1eadb3a158d88a9e7c90f551fe857c17265ac59bba6947f24582319490817b99a591978ca945d4d0f23499dd3aa73216b7c28eedb5c8f3c0851859d6ba9b04dc67fdb4bae4d73ba540e66536befe2ffbb5daaf91ceb627cf4869327c5d3c2ce79700795e7975a8c6f9c07b95265614df45e50ea89ddf9ff5f2ab150629937b9197e543ca30086e829afbde5524dc1064ad96ffb4d83ea91ce7ca8843c4b1a9722872057b0ac9ce57e7c97d22cc06ff1f74658aa28bf398ede9f186af6e485d6408ca4a4564689183ad52ec0f38250cdd837d684a1e4fae12306d066f2f1acd56797f1de2a9de8095dd464ba58d5b2d58f9312f1779eb2b2adf1773f82fbac43b18ea5b0cc9fe2ffbd9d2afdf61026363817b795a2590336ee1855384e2a26c7e15e8706aef41c671f2d8e2a0ea2b0a558cb35a80952825c845875b2a907e84397e2a3d125f64c313c15dcf0cdc6637176a58ff6c0be30315863c64a21a1fa147af0ecedc22fdbfa9cb892fb17d26c460b7ecec9713e90a46499bc30cd2735fe98b13e5fdf 0dc45181337ca32a8222fe7a3bf42fc9f89744259cff653504d6051fe84b1a7ffd20cb47d4696ce212a686bb9be9a8ab1c697b6d6a33,a8a37d45aacb607c3a2dd97a43e22e226f11eaa21daffb8ece97e42df057ddc9459eae2ad1c04abd300833e6d63600320ee9e368cd2deb5e38ed7726c583fc9eb411c193c42dd8a1d5577aca20b889a5382c0f1a59256bee99aa09a6b2cc7296a8de514ce14173e683268746738c2f8eb29d6f51ac434bf51872be626241e43183f6c7621479b62739b975b6f25e63d9668d3198e82e66e9e5fb871df0ad3a06da385c4a7fc914cb371dc1eaa929583f14db910c8883c7b90635e5d3fb5a3652e98ab62ac884c885c4606e8f453b89badb15f7b9de49efbdbd210859afc079fd2a1fd82ed87949af0906b5e75e561102739d4cc58ac9420694f5c043ddc463e0438e3851ab841ce31d994e1fe378ef75e7f979b7801a284aa8be26222b2baf06857e8ed6765c9c040798b2a6520e56877c1e4297aa43a860f734a6667c1613c0ea76eb70435bd64d34b11728113bc5ca24734a41f3203641d931cfc74e46f3d23037e3878740a6b152a77bb10791e09420b288d89e06dbd6b882913589d82dcd808918ac853ade79b7b8104637f8c73940890ab44e31dea7830f2bc08c26eba38e3b1b198650a9191f366d90bfe1a4caa7e03db8357bd8258f13e5be051e638689e99bfa6dbb5e2a623ba8b2107ab7a4c7551918a1c023f1fe7dd5564861faff0060e30c14941379117a3d1845842d935c4072b28913a3c89d1a63d4658048b8 de286ba4206e8b005714f80fb1cdfaebde91d29f84603e4a3ebc04686f99a46c9e880b96c574825582e8812a26e5a857ffc6579f63742f,140dfa98962ab4d69b6063b0252de5e4d65e4c00a9be1f8ede781a54011d1db01366193a4235f6e7d684b847b2dc4a0a5239589b4c0266817dc37d850e5b23a40b50a6d9d1bae6e64fda20a3d27f933ae866f9c8f00d455d97bc71d5f5a7c9778cc8fe1596191c2b1882dcebcd37a9a8c3605359e886942b04ebbcac83fe730b84ba3b4b3022e0b1a1110eb4d23d2e2d05d77c230e36a1accb885c0faaa312b7f975cf8da5d6b118ed773c5f1c75366e16a1ac75be309eb328da88c9fedd1a13c84e2f856eb0dbb249b3c166f9cfe917a93a3ef624dd4782b1f84b3e2ed70e493615d6ba9928886a59617a35aefed5b46d773fd5b22cba302205ccd97426b7095872bbc7d1932f6157bd3fc9d4a2182fbbcf4beab71a026aa212bd8ccc81eee265e4f53390740e3e9b1e37ca3a7c3a4fa824d0afaaab7cc89c35756d8f80896e8686260ccd94857870490aa8aee2fd3842c62a256107a7a06f87894ee70d218b6166eeb67b6f711d421c45ff2ccc903dd1683d12eb5ebb9464ec0b3c92cb62ea6cbf37591b61e6be15fceb0c1731b42d8d3587762167c3a43f62ff57d58f2a2247cdf43cb756f6a25fce0084d74baa73a8ce12e41953c03c2a9ff94468a69c03c2b5f6b85a2f16397326c7dd562e90f8439e720c1ac0b4273a7ddcb71581db1d6a57ba4e028bb96462dc54cec9ebe36c704c44e5f60d04b993454daf405795e2 eebcc18057252cbf3f9c070f1a73213356d5d4bc19ac2a411ec8cdeee7a571e2e20eaf61fd0c33a0ffeb297ddb77a97f0a415347db66bcaf,f0fc5662d4d28b3235e49cff708d90bcab50764c4081e2f30f0479573ed4fcada1a85443d1369e09caad970570a4ce3d8eab46ccce3e48df5f26c68c7485911286ddb1b369d13079498653b21e3ba7fba9007500be927490336082c1d7fa5b78bb741c459177c05e6294dee054fbe526d983b496e731b3379de525493733305da1e1e09612cd179efab1e6e67afccf60776e319651ce1a1fc66ac945bec6c45a99a5bd7763aba920314f04e67ee193484e54461c68e67a922daf9205faf10f4653541f2a5caae6d28449cc919341ce63939a0433a9dbd307020e80b65ab7b2ab39a9c29d167dcfc05624860b50b0c3fc3986b020b48f5fcf00c3a6bd8ffbec6a34add7e97b106b4c1daa9e5ef91b797c55de36b88e9ac19b301979bebf36fb86f4f72a6560a4125bc1f657769f89cfb1f3a29b2a0287072740e52a60c1c898ea42cd9fcfcb3987a015dedd297f8382d639cd7118ca85255d1f98abf1f5d94649a161082d7d5944b2b4efe4975d5ea38138b91ab5b61a790349d5463d2dd278196364115c18b95f916eeebd71a21de18c9aeb22566d3aef009a84ab5479222ef8f37dd29c7b22d0f1627c25ee467607f86debd8267a493ce5c361a6f6126dbc8263b6fa5d5c9b9f8ac9fdda42fad433bc9a76a218c1134c1cb5f03f3f7387e245089a5b18c96df31211b5983214b64ff3e1d90bc234a2f5ef7e993c8f4e5fa9be 416b5cdc9fe951bd361bd7abfc120a5054758eba88fdd68fd84e39d3b09ac25497d36b43cbe7b85a6a3cebda8db4e5549c3ee51bb6fcb6ac1e,aac37ff9fa6f64049b4d72457c87bee3ffc23044abe0f1d121392401b60e3fec089d4ae3340961915bbc79dca9337c4a02ee99ab932b346375169057e8bc731faa49422cf5296122471580ae4263b6c01d8bf9c7f736a4cb652aa5e3521bdfce2ce11332e53236ee4f613b2800c28e5907d2c3214f6071611496f80594193dcc09afce3eab1769a5fa2df9abe16ab019759a07154d21c3365dc20bdd7c9eca82045092ea5405b56861bba693f322871bdd64e2e41985775ed7a3f1095c74ebdca15b9eb9f2b86234967db868a082a146a439746901eba5dabde0f133d99c89a4d6f769d1c6fb1758b3cb1e8986a025f5ac2a8d6f1a9aeb66dd3c41d41221706a4824cfac6a6db69e3d157244294b9d25b59274b1fdf992988f3f18b91fd78767eccd352b7ccd335f96d3b3913902c885c470c2f7d2b00a92269709863e77d3fb4ea1c80cb58c9cfd996e0c6fb85f3bb5308b95e8b43555ccd4b589829da442bbcbf0a5c7b9b24e3de846e9e8433f1a4a326abc7af83a5bbcfe9b4bd848414b2560c58b3e9a3cad48f860ba46a5111d0ab629b91369a964bf22b5c2c6dc5c3a521de18dfcc43bb2e641afc466b75fc3529bc4b99b843a809773dd2130452e61ec162fcccb0a94b3ab0848ebd59c9fc25e84349cd2154e5e326cf2b97071e7c47f0f574d11729eedadb3d0dd0fc69a7f7224891efabe76942808d6459217f06a7d 5c5faf66f32e0f8311c32e8da8284a4ed60891a5a7e50fb2956b3cbaa79fc66ca376460e100415401fc2b8518c64502f187ea14bfc9503759705,3930d75f8aec436928f62ac548fd6b215c2e6fc22e918690f0cd699a0cb1ac218be324232295546cb3c421e939222827890a8fc563f6dc455b7d0caf24c7b1be44256de645ebfd281f263c9006f78a69e8939809538a74e646e75c4d23cd06ef68b617e6c5d36c85348373fcfccf19aa3bd69e18ca670091d2b50b0c2a3aaae21fbeff894a189512f4eef17258af048d073179f450d366295f609567eea83cb6a2e2b8170f69e739db47874e1f249ac9595442571d100ced32c151ed4399f5aec97875142ec1e8b748a9fa5c3ede5548b875e60a224d9830419e233fc9a88cf0f937566eb289591916c1d159bd68b380f784bd3e6a00d4c785694f38fe3d8fbfde5063b91fa397afca0731b97294269ef8157b531b08e15cc52ac8e5e768e6dd3905bb9e1b462481afa989441cf0780ce6b1926d71940d4ec82521a4347992b37af9970f47658b05ab54a617275f51fd723a35e72f9f965ba4330569573a58a0021e1dab0af22ea03e1bfe1e88eb2d2b97e5857793fe7b63371f3569c77a77e331924dcfa9fb8072f4eaf3a78fb6462a5c68f26d034bfc0b3bc8ada4992c66b4c8b2f0489a446b26333146b4420cf2b5aeb41934b3cc05b7ace62af74997b797c82845f4c4d7fed571879d255eb34482b86383e924d45b4c9ef52e76ff236a0daa1c9f6d342bff82305fcc88f8b13fbb724a9fe732cb33a6d53d95753fb350c4 7167e1e02be1a7ca69d788666f823ae4eef39271f3c26a5cf7cee05bca83161066dc2e217b330df821103799df6d74810eed363adc4ab99f36046a,1c8c8643b1fa6b0d217d21e542850127895dd4e455dfd136c4e221787a8f3caf76478bde517c7dc3edb97c8ad824292edf671bc4874044b96a109bb5821858e544090e892b3eeacb739af35eb05dce51b131394c9972247f1c0d7d335d18b9355509bbe94c4debb0c1b18614cf3fa8119b70fcf5b59e37673b470cab14302d805bc32352b340fb71f7e824efdf2732ef3d74998a5ad70898115c9cbff3d5067ef05d859ff932304a5ac5f6afc46c879f0bef369ecd7b5065acb19c655f7fc2dea4dd7ad38a2ae841a67ec1eb4869ec285b5a517c930350d7cbb9c61cdba188553b9d4ef140dd1a8ed312822e79ea68662bbb1ac3643aa56de5991f5f128f036b32023ce34b7a7af7cc43d6b67deada4849bffec361699ac7175311195822382051bbe20565552014d6a4343cd94f7f4aa705e1d5388afe2d96bbe8010fa0e82305b94b70ad954bd5f6fbdeaf090ac510b75cc91db450eb522183371d6b9d09d3fca171fd10174acf3fc47d915619dc0d06d8567c4e8875d0216de9c7ac1e7d1758dd59573273886897382ce8e77552961d51ed0b87ffca38bdb6734a23fe0c9a403abb4fed73dcd504289e7e14906a10b121a57b94c2c37542ea833c55c1130ad70f753c9a368f7c7d1b51450bbbe794f2824713153f83fe6af09545ed91f0e39fa732205025a49e1538ff7daaed5b72eec88862dc0213a012239debd24fcb07 2fda311dbba27321c5329510fae6948f03210b76d43e7448d1689a063877b6d14c4f6d0eaa96c150051371f7dd8a4119f7da5c483cc3e6723c01fb7d,1da38df421aadb3da692f4987e171113e15d3685db1017ebbfd07bb68db236903f3cd3ec679b6bc9004072e90ecbd0fe0f2fc4f5531d24fa6f25bc6eaf4b545a2149517ce19971e3afb866daa702dcb94982446e7af77418164c5e92edb14d98ea0dc32a3e0bfea4e71e9c8f58a751578200772a1e0460083021552feda426aec69346e0fd31fae18b894b67dc38d7e54b662ce051a8453c1db20f55095c177f5883625d40bc4b49965c48c4a1188954c50dfae423a12315deee0feb3548aa9752432cd6857aaf42bf80472178d0714d777135898f71d838058f9f31e6ac92d819c44775c2ede28038e565dc33f1a157d8715ae67ab993179469d6c98e8574a7d8ff2a5f12353f18544e2d623aa42af85159438f247aa947922a5aaf98bd562ae54599783853cbfa5cb67eb1fc36cfbe5af1c18c99d867cb02966d90ea8ed648831a2228657972642a17dd34fd43c11cd7d407cac86e20d8816e69763b60294c19497c151620a2b93b3b3e87639c233c17b9b865e920f6eab6c72218a182dd46177a7ad18e3775fc0a5a0ec956b5e92d8b48a22a6364006bfd2843b3ea4cb63b8c0ac10970853d196918dfd513d4e1a1558ebd3d4c60ba253078417304a50851bcb6e41b5758a08be338d62b0021851a42962313c11baaa95e434f6329fd5d6c85d67a665a675ca527c555c77c7435786bdb8d9642050931c57cb79aee5973aa 95d1474a5aab5d2422aca6e481187833a6212bd2d0f91451a67dd786dfc91dfed51b35f47e1deb8a8ab4b9cb67b70179cc26f553ae7b569969ce151b8d,660ba471fa9414c985a47b1941804295adae88bc1ba145defb407ad66f193be41eee4e0f71d175f6d1d65c4b227a899e0d282ac714e50e3002aaf8696b00a736a60c9ccf94d15e46db68228ba174dae1575138d3f9eb76cb16fb09a50a6f7024206d4a02277d2d0b53f189cd8e45e85f4c0fadfa235c963a9a63743d88fadfa6cb99bf47f32488b4e009b47f7bf59a01bd92c0b6e771e8784b67a0aeed96b29e6a1b110b868b144105b85c11cc01c589a89342dd456e154a0d2a638fefeb03058ccb301fd551294251d32b3f03bd62ac5ecf5a249940c2401f751a9fcf036a384ed26f569d227235cb47673f7003c4efb36676044d09cd586a54d744ab4922bb337d4436c4bc76cf4a478d1cff7f7d97ee2dae912c5bec910fef7baff0bc9e32df5ace8dab30840a31ca192e258a4141275534361977d2fc22eb1c1bb62a21b893a65b16c45addd3032f2ccae38beb6de32e1b5fc70214e2be1b7bcdecafd744f82edcec99f92d46aa66044efff26ef3bce081a19f1b7392c68d2414d92d426d78b4bbed4aa32d05bea547a8dcca688cef6b0bc754fae7c13915b97478bfa72ebd409fba5ae48cc89b37918f04c068aa1883f2a950675761120989a9f7821799f5eb64c07299ade85e1dc1bb488bca7b96ba7f04d49cab2b41803f17bb94cbf04b641e140d8686eedce954ed1a712bde789c31f02f721f467e167c3e9b035687 c71bd7941f41df044a2927a8ff55b4b467c33d089f0988aa253d294addbdb32530c0d4208b10d9959823f0c0f0734684006df79f7099870f6bf53211a88d,9d027f5434c6f6ec15b26bf3d61f31d81d46c0ff426d4209e0fd3f9a3e01d0af5bafea98f9e3fb66e8390aa2ed009c0d6dba82b3e36ced600fe79c0f50eb1c1f7530f20d51782c13a79ab1d0bc655112d745043911b5a9524e6ec88122cddaf702c34fa8840e8785a7046b6794e623526826b471cd9f62cf9af02e398c077c7f8608730578ad22a44cda39df8f101ccf21052c52fc12967ddfc77c153d8068a2b0b783376fe56b1dacd9a0b3e87645132bec0f3c2c9a521deac286750c2c42b4a29b29144fb1b0f5cc997ad57d04bea965343843788daba5600a7ac5403d649097eb402205ce4bb12ef836fd4b7ceff704f8a2baca5d6381504793f1c6b47d15dfa45f749a28c7fc16c695a0bef69437ad3f8c8d3da5386a6d9752529ebcd84cf92d641a4ca1755177bf7e16ca144e270e4191ea26bfb144528521d32dfa8319fe37cd026e5f707f81dee84327cd0b74c05cf69543e94848ce616fc118f73206b132f0257925b8d93db60fa6e034d27a65ea0b2eb18056cc4690be78d9bdcb4deb61fe5089c58ad8cd08db2ac9a2c2b0811ef71309db1831d9ed1032a1267d3152e4adbf2042ea48069d0519fc5b03a5375eb355bcc327766b4b3559737dd4eacdbdf5b28f121e7c13eee9a8c10e66f22cc80ec40ae72ceb0b2821bb7215cc9e645b65e766076ab78d04771da21b501987f8bad685c6eee40c9f60605da631cd f57c64006d9ea761892e145c99df1b24640883da79d9ed5262859dcda8c3c32e05b03d984f1ab4a230242ab6b78d368dc5aaa1e6d3498d53371e84b0c1d4ba,3951b52498f3c2e30411a6d89c55340a73066b36b1ae55d9c95142fa1ee13ee8b7296074d82e44d752ee29705606d823809786df5a2312f8922e4c50ff0d7297b864fcc3bd81311d69d2657169773c41a8f7f0e62e076f5c0055da042dde07d82172bffefbbb031fb715546ca47903895dcb4807b9c435d16f90c41ab7836a53454e089a25951545f0b39a849f329ae9568a3640f08329b0422807ab15461f6c67e1a1e5b8439f4d0613c5b4a8ce10ac1db59da2cfdc1f8fa78c60e88a7e6c0f2488afebe16bbca680ee65bb53421e29c8238b7f0d1387c60eac50ecb43af4ff075520199bee31641ca433f35d62b96fe477c304265002440018e4a4c656679189eca635fe4090724784f56db38563ef05a8ebda4271adce14b8644baf09b83574ddb6803997ac473bf537f0f93a2fbbd0e0c75c387f21edb2eebe0088ce8886e6fa9952db209bc16e624a72da33878538549aa8f955caba17947fbeb6a304eb9b1b494a197814ee4281a74334f71780455a352ee1586bf298361c40140c3b6a384167632d7efd7f3fd327e18769dd481444400b669be07eddfd2783962751896b703b3e196edc111411db17531b96d0557066dd6d2fa3eabe0e4735837d1da7bea7543d6b591e55b2d95d46f822cfab994770f8f51a58bcfc10b4a7dc9c8a645937f5aff66a59687457ca35c42dc2c9d75ee0aafd9bef334d12dc33bc0881a9 e926ae8b0af6e53176dbffcc2a6b88c6bd765f939d3d178a9bde9ef3aa131c61e31c1e42cdfaf4b4dcde579a37e150efbef5555b4c1cb40439d835a724e2fae7,b21b2ed68fa53bf4edfb8ee5282964c8fc370a702a229d3c4bf87dfa5279b1ae2fbc85a00067f8407f586b52b5f1aaf97716025ec2e292206e18570ad50cb51e072a7a06781eb9e1b1b23c576c689deec4da40513361b413f513a0ec21491f0e6efb792688519c1e6b0760b3e1de34890c2bbb5c3a44dac9b0b0ef2b1b4cc4e30da7f93f52d656712eb12dfcf30c80273fe5a8f42b909aa2c9e1e9c82199418ab858e1b8897ad632c0c030c9f56776378a86df63a5cc284adafcef50df97847de927f296e63933fc174eb3009c5580cfe39b77bf359a865ded988d3bb631256de6eb736c637693dc5798429498609a6201c6e9cacd7782dee77b3bd4728ba32a0da88a14212bd204292b6eefd0c7ec1814b7002d8fcb08975d4a9c62100f94404cfd32ebf49407ba4c6697cd65d7c40951ce7774234c4a793265cae9037020e35d38c9c016b15d214550a94f6b245dc4f5b9b1c8298d683ac59acbf177f266f1818628b4174d66129c057b1336f718f67d5ce7a3627e31d8e64cab4baa5e89b7b2971b4c82d23c36305b01d30f830baeb2caca3baeda18f912e4dbcb1f5cdcfa9f562e3be2b01826eef5cf0d80da116765e0d467352264c8a9c1242f74d98d35f77472ca4df8234e76f7600b6052e7516c514695bbcfc1793a9c9af512e1d2edd7490d8be500710b305f9f54ffe4d87b50776a29c222b09f1913e71f63aedb32 16e8b3d8f988e9bb04de9c96f2627811c973ce4a5296b4772ca3eefeb80a652bdf21f50df79f32db23f9f73d393b2d57d9a0297f7a2f2e79cfda39fa393df1ac00,0a7a5cbfc9ed4a55b8c8cfe99e9d71d4ec34aa1c4fe8a69a39ddd2c0e1923a3d4d7eeb8769709172866f0f93d96504307700d75f4922eb0cc199acacf31e8bdbfa166342cd7294a723608528732bc85d7ac57307c37d07ac03d99009c2052de7536b9049b0750a5186855bf41fc58560eebb743f6572c102f21d3a92f8908434519d8f797db47cfb93bbe9a567aba819fa035f64e2a718497fd815968f70869066ae8db9314f006466fbc53660bca5cc65b6586cd75e58427dc7b3f7d1a7f0a5804775234c8d0907c5906aeb4ec4df01e081695897b324a97485c22f694e48eeddc010d198e5dc4c65a24f62d6fe7ee0e60b2e4f79a6bf349f9612303cb272c0f1d0a952312f151efbde16d17d3b2f2bb9729f444db0b1b993a6cd2ea973d430291d276cb479d8f07b9fe022f384743eb3c1593f062994d2853aec6267e68c724f959ed98d9ddc0919f53dbd54e28bbb28ae5f0eabbc36a81e25a02174c14387e8c1695f97de66c74ba20cc8ec1eb5d3dafd147a894aaad4b20df7a06eb9b676846133868f02eab7102e6d7ea8bba678b0dbbf1f6d6d6ad0fa43412a8a53c6d814ba26388bef08f89042e573facac5588e4b5c4e2806542f2e68148f4b7cff1ec3da21f633372b567005f2cbe81dddd450e597fab577a1935281f758193cef43961c380b62f0cfd084fb4ff19045ceb3422c01e5ccf9eae9c3b300a117f1d81d fc424eeb27c18a11c01f39c555d8b78a805b88dba1dc2a42ed5e2c0ec737ff68b2456d80eb85e11714fa3f8eabfb906d3c17964cb4f5e76b29c1765db03d91be37fc,0f001a78a98382078267d5de881f8717b55a31c1781473ba089c72cdb201ce93b943687e3863bc24be5d255a4c02e43eb498b9ee4d8a0cb4778a742051de21c4fc7745525abf188f38b7b46db5dd7ab30906f7a31e0b030dda800c7766eb48e0f4b12c474c3535441985f40376edb99fc2a0bb2baa9adaec49c1f5fd3a604ee8db5d0c51af7edd29306686b3795653e2ebabd2e9118b789868a7f821fb5bc5e4cf732456448417f43f6027337b4e1d481d65d239dd15eb66f5c6c289ee85e065fca3dab1126e4522dfe9a1b428310c7df543bed5d4439e87549ab0be6aca17180714d2636fbad2f7bafdbb1961764f48518ea1ecdba3328de8a6684730e747174345b77052e8cce9765abad9f7b3ac4e8c2155fa5af14fbec002b20bd2ee417f6ca5eb8b95087c34ea52c8d1dc95453f6744272bbd1f14a1affebe475eb2d20cc26c5893f71995b63e725e7b02fa02b3145944d9d8a32f898dfe1f7fd7a73ed1d67dde341c4f95b603597f74269835762a1f348e10bf5ff15b7a325077aa6da99a8b92885a344af35d9fe34a5b5549d37ec1c536d7b71962e1a54e2601e0f0ef19a2f81151a477d35f36374e7f44e00b25c2f7c4fd804490bbb68bc755f19eb25f04ff370107237153e50bb1f8867917cbb70332b41441b6434458c848970bbe860a07dccb6e6f9c076998b54ad88d500634948a73a3478afb1cba9fbb399d39 abe3472b54e72734bdba7d9158736464251c4f21b33fbbc92d7fac9a35c4e3322ff01d2380cbaa4ef8fb07d21a2128b7b9f5b6d9f34e13f39c7ffc2e72e47888599ba5,d442b526ee0de0a7977ac04f9c822ef3369cd2cedacc05abebc71128f0c0a2f8d5c2566ccdfccee773afdd2c0f8aae2e59b56995f219a9b06b638dd91d0c2ac8d11ada3cc491a5985255716c75b474fbfe4df204b75176468511807478ff873f17225d022a78141b962e1a4edc7f93bde19dc7d804c11c49942a54ce606322693845c11eb0e20e60ac7a15287848c37eaceed986f98476ac62a23e366804ebd5690856d69e82cab976a79931fd5058f0562b006e822087dd8d277338a6e555c54a536d29831d6587b4796179a6f45c89dc9e85dd3067adf043e3cc90e96391d60145db31be7778df6402d7808f46e42c8bbe987591edf593ce50515d4dfd647afe7a65579e894ec6951c2f03ccb4fb4f4f212f3d87e953d4bf6093e4d390260791924ebc438b56693ecb11beb8b10b85cd56d39a95bfa7924b9f78e181337e550affe40cfe99c709994eb9f81ba4e14c6663733477320ee3a62955975e5f3f25eb3922ddb67f0a312d916b8ff2c14493981c7a6fae0e14f222f194b674173c051edb795ded1041073bfaf62b76d3623d065f797a82ba490cecee1136c08193d46ff6bb06b414c8a861a4604a4cbc87cc652eaae3d648e4d2cedea13344ac22cbd4dac4ac9d6662d3694b38bf12169320b5249021c85a7477e2587df9617d7d44e09bf7fdaed71e3d5818da093e6d019243a17d9f32a5046fc6ba19edb0ae6349 36f9f0a65f2ca498d739b944d6eff3da5ebba57e7d9c41598a2b0e4380f3cf4b479ec2348d015ffe6256273511154afcf3b4b4bf09d6c4744fdd0f62d75079d440706b05,6ec28683a74038f869a23b21669f27b746a1ac2bd41e3bbaed1cfdcf79d7d1a9499f2ad4701f64830f14c27fec0cf645e553b3d76d8512b879d2d19e37d93b0e9357160ffc00f20cd96fc1aa520b0870f853b3241b687549dc2d1f119198cffae38402ce4cc77a973cf49f19a52ef7232e39b5638c680d44334762657397cee9dc65fa37cf9fa1f902ab290f8ce4cec82aba455a794b576be404ed24bd50b9a4923d04c3f19cb812e00d6d9dca00a906ec0f3460f14d3cce6cfea1c78e8400c0fc1361a4a60810bf51afa3ca21b18c7df5fdfbbdd8fc1671d21ceb404f9dd37008419cdfefbf1d57f7ab7665baefd500c38a5ab04ed47e4b3256b0b015d0511657290418d5dfecced4aa47fa14a9a0e9766f3123c80b65fdc07cbed2c8b0753f2b20ee271d11d28fee068bdd3c4f449973463c17f21f60a5e59be4fb3a3490ed87aa1709a62643e65ff82f2980bf2460fabca0719e575614a1211d256c59f86abbca382b36f970c489660c484ceab850a13011faa07c93d2fc2e8e447a997b0bfc286769017189a68d7de05cddf696eb93fb8792f25b2979aeddaea7a935589be4825e83e9bb302c3a6e88d83bbad06ba6ba274a672ced23276a499dad01555d85c620b6fc64c62282c545195eee61c8a127ea8994ad5a706a2dc17ae5c6f165b477655d067267d88374f674be12f58a35da878346bd48351175ea72a0cb5e40 abc87763cae1ca98bd8c5b82caba54ac83286f87e9610128ae4de68ac95df5e329c360717bd349f26b872528492ca7c94c2c1e1ef56b74dbb65c2ac351981fdb31d06c77a4,ff0db45e2e8959375d3915dbb45fc32dc6cfe7d2bb227647f6877619bb6884d8bbf9668f407784739d34975576b99ab1325716c2b83212dbe9e5e33b5a6ec68fd75015124f1da731f519f983cc783f176286228e59068aec6241b24808406cd60f67d5a1ab7083d7854984a1f7030b7d700d5d48eefc6be0aea46c8022256866cecda897dc22d4a18b28126444d956b93190d7a060cebc2e8be65d90cf7837a90dfc9acf4be4193a892dba8b3a068e7bd20d12c47a95e0482a2cd4252a34e1f13bcbceb9c0a12e719a27e2759fde1b2f6e75a0a38cb80eb44c023fb0ebc33bc8290513d95c431d72450951ec1a86a89d59d435cd3d4b4e069556a00a443f045224d46a8dba8cd7e8bbc89a21d3ca024c4ec96bc7169e6affbb05def58a0f2535997f345c8660451e7cbcd83c622edd0d8a8f30d8377bb31bedefb546c989231c53447b7817ac3f822d596b5c746d5839d6cc8f6d45c48281357e87312c33f62ec568db4aef7f194de67981d67b2b6659268556ee38df95fec4bc340a3bb9539eb6143bfddc12bd233bfff5fe0743da3dc89f57dd159a475d6d8882bade66e4c93d6950ed026c747968f84ded68284f5f02a9f7549b88f244fdc261b34bd66cf2ff5a6925565a08bc8a5f8828775a5a35147c57cf327c49cfea4797cc130d1e8aa278256fcbe416420fb7683e6d0a5b1466a586e98c144f4cd5fb277c1e59b190 94f7ca8e1a54234c6d53cc734bb3d3150c8ba8c5f880eab8d25fed13793a9701ebe320509286fd8e422e931d99c98da4df7e70ae447bab8cffd92382d8a77760a259fc4fbd72,5c00245176070cd2f23f1c5e15b21a9161beba24ba71d989bed890782ed39eb857e325afa269adb03ff1aef7d26ee524d6ce821d2c842c43d0faf47b602e55b7960fb0a9638e6da8272dab5b8db784daac730bf0394d50a59c87b422080191769c21bd08a32af4c263b09d61a13d0ec26b6d1d63a2efa5b4fb9cd4214ea76b2c915f20e242d104745ea9af73251f2ccc9e78ac8fd3c5eae80ca665a87c517ea620ce5217c215ae38cc43f2756d9331b0359fdea9cef8fbbfd3606aa5fbe2d5bd31411a857b3c8e79a2ff1b00e3ef56bc25d0d83958b64dcdc095241837e333e58e4da64f3b5b57308b165924b4c5f70567779248ef4400be3e80f699fb3b6e40c36badc2bfb504bc777733ba9b59659f8661d57b3543bd26101fc3dfd6ccf430036776df0f2979b03dff7e6b2e98f161e050a38f71ee438088d953ef72d5651b5674ea6ffd3440af8ac94d5a808ee426959131e460c858a77c4690801b5b3a28c6bf555f02b5c60de30c4301363bd6322a289f36b30e00e152627ff7485f032b61041d4c1eb872365b8bd22f1a6308f5cc56d4707752dc3e32315c8559a3b8083d2f743779a3eab10394f8df71a878cce871e0835b57de865cf16ad2d2bd1e5e5705f68c6baee103c785e43f3582f591da55077c6b9efa8f93300822c6eaac9b5a71fb676c0e73928ade3102b61284c676c140f33a17fab48002394eb36265d1 13bd2811f6ed2b6f04ff3895aceed7bef8dcd45eb121791bc194a0f806206bffc3b9281c2b308b1a729ce008119dd3066e9378acdcc50a98a82e20738800b6cddbe5fe9694ad6d,812c14b78aeee6820ea1cf8e0f3c61ae7cbd2ae493017ade0756fbc57545830910ddc27f3183df48c1e1d6d1a9f3de220f17402830ac73f77ad2977bdef013c739ca0e9ec11ac4fbeef624f0fbbc534f0467f09e775bdbb8acbcac8b3dc6ecfa92f35ebd729a1bc90236f57ad32ffb46c055c93412d33cf612059c4d5bedb6e45807a7ce2e5029c0594cbfaecec3f9178eb01d60acb5a72d5dbabd6f95691a1f949e4da7b48aa78c1bee810b175218c5902753b88253fef57681e60fda1851a18ec1f3953cdaa6b9c32d085c7ef9beed9598354cea388f3d8eee372312168b590acd0c330816949211d8ceaea737eb87bf9e6d4929d83b87e287c887e32b66faf1540b64c53593bce073aae4bbf711fdc7af6e7cb0fe938d2f87643fc4dab4a7d4154015e82422c14600e44e41d005db80cbb4c297335ee0e616e32d7e9ba5bb0d88fbb05b4d5799df5462e4544d3883cc2c4850fbe5b43613841b0d515093d246b714e96656e1f6227341e76051d5c9c52730d66d075df0a9edeed5d8e878a1fde3ad2c962608ce17655ae769c484e676904a29f22a3b4524de2894aa633df9f65cffa329af056e9be4e67e7ebb786ac3541c00a792b4217e5ea2e51fbd979cc8c6e40f59b6a665f1be6e6f2ff4d1d48250be44572fc5b731707b8611e8cd7679037d565ba7b066781437fadbb47f68ae752e879286a25020f8e00fd7e62af6 1eed9cba179a009ec2ec5508773dd305477ca117e6d569e66b5f64c6bc64801ce25a8424ce4a26d575b8a6fb10ead3fd1992edddeec2ebe7150dc98f63adc3237ef57b91397aa8a7,cafa188ebd8cdf392eb8e67776d6f574f72615abbb5da35999507460fb1d357938f521bb18699510d353d3b42ef72e704ee769c02a1ee7e366871f28b25f798725ca3fd147f7da2b49329fc5a00e486a19e9465b782b1176b84465a96f083957f3d55512f6cef4af5e891108b468326c1051ee1519c21051353f1eaa2ad39a32e5adfd30026d4b56a2498309c27b03a195ff5a7ca27e5184e322b9b783c44c4e0842f6695bd89d5648be09b927990dc3980e7f818392380840e1c4310ea67abf7285cfe20c50933a92e74fef83afa6b6cd6a372aaff36dc582040b34e8521285ee9a67235d016cafc9478b80d7b9778caf5da4e7d1865bdfb903dedd7fb8477f007e60af960bc04a81e77a74ad25641fdb9d81aec87634d692e445807c0ace094f99db07ffa01c2da7517d12c830973d425839722ec0c5a2df093f01eb9f5a6d2e075caea8c7aa69bc899463d0e55c81596907f1b0f81baeae734b24fae3d99984d5e39eb4822c4adeea640228d72387656938cfe5db953c1ed993fd9705ca9c9c70e6df0075392f965682bc163bd85911c99511896bafc35d9378b12e00628eef3ea11e908f92498c90314c55698a6b9c6d8fd88ab4d7250166fe57e9c106fa674619c1d53cb3de576806742fa538b5653be7d0c08282a0159e7b4f3273c4cbe1735f3b07aa0004cd5c7f763983cde554ad9926fcff1d1ac48b9777c7266c8d ba5b67b5ec3a3ffae2c19dd8176a2ef75c0cd903725d45c9cb7009a900c0b0ca7a2967a95ae68269a6dbf8466c7b6844a1d608ac661f7eff00538e323db5f2c644b78b2d48de1a08aa,105ada0018016331e288a355daca7426116c7c0af86060a1a652af34c6d6ba4504e5c681f493aa44bb869997cf024403fe9516112c732c26dee54865adf6594bf7a546b5998ea1026feb209e30d3baa289b81651b29916eecb48e6b4d6f8cee317f46732b2bc865d78ff0237dca71eec837215d67f9b7c244232529fb1801282f77cb08dd3b4992a0b4a551175173bd50fe8798836c60bb748e6d3112d7eab27f0ac52f48fb776f92d89c895d7b1f148f27ef57b47dfea43aaee0c8507654dca384fc7c64b39227b6e750b431588d56567eae250ed6aed8f987d5a6140f0a7c9a4d47de2b2036038d43d9630e849431b7a3f7c853399871ba360107009905164d9707c0a81d00a276699249accefcdaf118a8d28fe791fa0fc4d4a2ca862913400fd550513d0ccec4a487521ec53b33d4fbd2d5f6713f0f1f3c1e6a2895c4e2b56d86904cade3ef04af4cd1f3e8ab7876de83d133170e3918639f508858a335d4244c8da8893d51a7d6cad5a2411dba3b95ee3b95f3b2ec6db652868a8158ffad739199c47c32d9a4917ad06cdd7149738e8568b0eb6b7a0252e151538286d122ab6a6a68a6bbaba4958c0572625e7f4837bdf970db69a943e5c80e5f98dd0fcc590b782308650b86e0c12a0cf2feb059a2857118507639c4b56c749f3840ad13325c5e843ed1895f6ccd47bf2fd68d708c1b2001a083777896ba92bac91e280 0efa26ac5673167dcacab860932ed612f65ff49b80fa9ae65465e5542cb62075df1c5ae54fba4db807be25b070033efa223bdd5b1d3c94c6e1909c02b620d4b1b3a6c9fed24d70749604,b37f11d6837064d393422aa32ca502e6fc0de85697e9ddf15b45648d99cd2b0e35653fd071546d893acb91ea8438e768bf446781a2bae49c6cf7e589fe80b2c6f35628a9577cc1f902f061e425a84d224d2d8c5fd4c06f1c7cea72bbf53f982626dd1208ce375ee4f593eedf93f72011cab8281049a76ec1f90528d53aa2e0589bf90440907b0f02c51a1a1d9a4c4b31fdf378a548c4d65ce4ebbe77b4f95e9ae29a3ce0172a4d80c370d6967bf27dddb29065566b2c3205fea1e2871f6726dfd8fb5be9199c31e77615bf060a33f3adf9a1c86d205c2496dfa694d343c058f7f212d9e056d6525479df0c4c184d2d8191a9fa849fc0dbb2bc27741cd5b43c65db771dd99872862546b5d1c313456423e649e9869a43b6ecafb030897d049907f307c767885014f7dcb21fc4c7e52e1f6e95a017f9aad349bfe109ad8bcccda1e4fa761317bd7b7036a09095164a79a7a4952fa2512a5b826009414be0c504a27cc3af069718daecdbe4f43d93a1ae4e1a9b28a48f69533e6efceb17520d78ea41500797b18e193c98c574a5339d2879da6340d8ebe07723549e51f71bf956bd90e74325bd912fab8c63150bbdedd455973c084a6e96be7aa3b8ba503d5215b77151007a7d32eced117503f1f509a2f6750b242ac63d2a53873d8cbd3a30f105078f0adca870dc906c0cf7cbe1197c13c0c65fd8471bc52ed07d8090c83cffb4 bbfd933d1fd7bf594ac7f435277dc17d8d5a5b8e4d13d96d2f64e771abbd51a5a8aea741beccbddb177bcea05243ebd003cfdeae877cca4da94605b67691919d8b033f77d384ca01593c1b,a0042e6235aff4430623e540e15655139ef9fb84bf8199702ec9a68d4802e7f37328a5cd7af4153cd203938dcd947f0c7cb7f398a4867fcb38694bc3cff4c10971c44ec166f225cd4b0f1c264743815cf7bf37933edc38c3a1453852e3b220c5d5263d67c82a7e62fc19d24c9b32c10a8a6b2dbfa059197c97dec62a05456a26cb555546a4219a905bdd2a0ffefd1d63a56258f5a9fbd535276a163745e8911d55a5e47a4c3411a128f461149b3ff20b9eb422661a67b4785f38ccc43f7b87f5844d8e4665b0f010afc1270b14176913dd56b76bfddecad17374553fbc5c31a7a28e98f58036171bbfcf79ce10861cc0cf343822399546e100c532ba2e5013126976e02c7783193ec43c7e35fc2dff6ab1483f7b5e5955c91f7f7abcb52a132a038fce9387c4635e1a3394bfe589d6c9561d05cb210b25d575bfc0251374e541d72dc2c43e8fc51f98dba46bdbd7a4c6efd775e1e5cab94c8e03540fdf4d1ea7aefe8298958b618a288a31bbc9fe7b2381200652d5b2eafc6a89f806102f753824ecef4cdcc3e7329dc8f7c93d94f98ba5cb51db8f615d59476b32bbe20111ddeb7ac6b9ac8cf66cf7b338e225bdedad4a2c5f0c2941808ee7bd2d2e59da7010ce6656f6b11fe5925508e5a266e0c6f079533c97fc0fb5559e06793ae9bfbfec8bf4d3114783acf6d0e709aa1144326d08d415e7afca80725dec248313e982de 90078999fd3c35b8afbf4066cbde335891365f0fc75c1286cdd88fa51fab94f9b8def7c9ac582a5dbcd95817afb7d1b48f63704e19c2baa4df347f48d4a6d603013c23f1e9611d595ebac37c,439e31ecafd806b8e573af44aad0b7143d82fbc725c963633d67665a2116949eed1bd5338839cb0f41ff79e4b5a7f0b3a2fdadcadf52d7379a935ad0357e7658ff2538b99a993ea6e9afdc9a2b1da9b68f9c9377ddc1caabf7334099043e0997f446dbbaeab14a507220ce36ef110128e0abdd3da6f98d2413e4742e82d749433c545eaba95151695b38d1e485c49ca747a11b83cab42896cf35b275490cbcc856b227c0bbb11ee110e37054b9d8e64e645e1bce138eae18118357c362ae2a729407efeff38ad2acfa4d17203d17b933479946e39c4e4bbc467c7b623042c4b770c179991bf159f8a1df1d3a13218a441c7a3f296c34b1736a62f1c09005cbf972a66bb46d7dc124bb43cedccd07f9c7993c9e365a13abaf64859cd4244223d074005906558147ee618f8c68403b3733aa633df77f4f743652ee53c26fa64d251c09c8adc99aee3d6ca13cac5c6a4b95b389e2fe51e11d85e060cb76e331628d0494216fb2378917d09a7558262de00a345d7ae026bcc7938bc3bc039e9c50a62f8fa7aab5ae44e8b9a1fca0b65de335f5d72fcbec9010ba19040c38b5b37e1f03ced896106c3254663a5ac8a547e5e94738eb86787cb237a2ae65a0d7dc3ef44711325bd1bd4db4abb1c17db9fae2c7defc2ce08aa1e7b68654f936355ec50abba8a1ac45c9d95f1c0669e8812f313d63dbc7f7dc40d2ea71dc8f9f1581f43a 64105eca863515c20e7cfbaa0a0b8809046164f374d691cdbd6508aaabc1819f9ac84b52bafc1b0fe7cddbc554b608c01c8904c669d8db316a0953a4c68ece324ec5a49ffdb59a1bd6a292aa0e,91349c4aca2ee1a2646a6a92e4335e7c1da9f8482c2791fb96734e3301123e4059f603bb4c42b4ff5584cce75960b5ad5f667faa54da85aca5febd5908ffe7a1ebd05ad9e4dfa8c8d8d92b7f94666c119de471326e1f673ea67eda5d66c8035e047ab08157e1228b4b09309f19a0208efe7be1788c2f77347c644b4394933f6aa3e10c1b9a984d12a6d0c68e280785efa11f1731580d6c71c98d6e6fcbcdf56dd55d87865adb395e7913dad6e9a4ec938a1d7e2391fb11cf6007fc9c02ea70f44b67edb1206dc86c00d1df6906c878ffd93b034f830c05f8571a6068d87a2ac42692dec62f4318f8fe6df3690c480e48fe406b85c9fcdaf558ac040ff15011b6c1ac183aeda7b00bd48e16b7977098ba9412b470b7e7f4016209a02f0f585c29c554b5cf8aba78e7e5e71447929e598046bae2bc32958e65a7f7aa29a29c2ec8b34e521bd3601f755bd42edf60b0d04539d4bf63ecc09943e0c12860f0c5665797a840e85496c4e3df04b36ce8fba42dda559d630bc2cec7459020fc32f1545b520b0806bac854e6974a28fb95b41eeaf1cf01dfb3e89b8861f205c100dfc063cd8393330f6a00fb379901d0c47ec2e4ea5d96722ef13fe456e03107ad1179625f968864fb40d7b64879535cca63cfdd660651fac389ce4864bc3b382073d74d5346e6499801fbbdb590c1d4d983bea74fa6a26fafa4e57b65be886d55a54622 d4654be288b9f3b711c2d02015978a8cc57471d5680a092aa534f7372c71ceaab725a383c4fcf4d8deaa57fca3ce056f312961eccf9b86f14981ba5bed6ab5b4498e1f6c82c6cae6fc14845b3c8a,5f8ecc71a5d264abddaf1b4895cb11ec9dd50f3dccb1e1562f1840a0c196a85181be2b69011de4a3c75087a3a303555c074a281bee10e66aa2f15e6a531e5133b6075f84a82bacac7d771c3ebc74da2a1cc1921b3c20e99e2866031bf725d08b4400f38bfefa0f810f82fd1e4bc12dc9e20b3295745b7f132530583c44a18806f537d96b3f352e61adf285810d32758284d29ae60ff4845893ed07eaf2720282016cf95e28c9bd49f0ad80b87a4c71179ed9d5744843e811d9c162cf57013a7fa9aa9d0a313d44c6be7ff069506067817bfeb731eaff820c812765614f3c1a33abe050dcde56fd5c6fac1a43515e2f5cafbb00a75db2fa51145a994045b8f71a6998e6fe47cd467549e548ec4fb43c23e7759445bb36a444fb0c91db3f9a81f1048e21cf32bc3e427a6109de84fd0ea8b006ced78d08bb7c5678ee401eb2b73f0cd2638b2c7134edf7f40166eb23d56f7e4bed122b70981f8133b594121abead3e6c96e0c2d76d93b4323dc8cbd869a1811cab6285e0caf2c021792a759f8fb907fa45e2b276383f6a385eb299fa5c070ac7b1b713685d6454afb9ae4850aeeba6a042f25b1902d18cf5069edee770ca2b342b3d3208bdebfd50822b1ca0c9526306c061b2b4ec6724a35d86b352504d79f44ea7b1a8926c392001eaf2018d4840500e5500472ab05593f3aee0250c27ebdb3eeb5955dd7d73dda812d988ff45 12d9394888305ac96e65f2bf0e1b18c29c90fe9d714dd59f651f52b88b3008c588435548066ea2fc4c101118c91f32556224a540de6efddbca296ef1fb00341f5b01fecfc146bdb251b3bdad556cd2,ff65b09e0a806202e10997ec4f42a049e0a97654626056ebf7b92a44e06aa3d11769160a5ebf6357dd6591b373f9943110f609ba15b5893e7869b17c381b549267130047c1286ed9c56f83776a0f99124f8e8939c8ead777da433f8c786beb7b16b3ca4e4f13cef93b4236d82e870cd3c6945fd7b8f0ca527aee5ba66b753d0e6dc84e4acc7d51686c2d9e7e3a31bb0731fd0ef488f1cae2a8ca588b428068e09e63696f05b71bfdbd89f4e7dcac2bb804939868dfe7849fc68b095c8c6e7bfddb3f35e9a8c1b353158c1f3533a0a327789ca271f6b5ee1711adbe112166ecf76bd0bc91bf957d4b60d84440beaccacbce2c2775ad1a2437ffa3b7dcfe2b4a0cbde28b09e4c306d8133eca952810d22c132bdc680cfc7e74bf5949e7d532da24aa71b22b4576ca48ec1fb264d157a0cec81377adc125f29b27cff0640e0cde89d3875b749e412a50a919a08586a62b8788c4aceaacc2842c7799d125e99c6a2c1f6150cc503fd420f5900dc509b4815a54b893b8f36b1fe27052a5c66324d7eae83957db1ff627508b77fa072f2a01c4f406b6fefc5f552cb38ea06fc2dba6a9428f4980d880751e459a1d5b9b3e637917f177920314c7882afc3298b3e21e18cc126e690a594fefa0ab722e2b1edd1c24c0eb118f9c16e4964d637c4bfc6865b9e290c4db71c510a1ce623132fdc742ccb5c5bbbbaefcfe6f95f40c861964f5 871a0d7a5f36c3da1dfce57acd8ab8487c274fad336bc137ebd6ff4658b547c1dcfab65f037aa58f35ef16aff4abe77ba61f65826f7be681b5b6d5a1ea8085e2ae9cd5cf0991878a311b549a6d6af230,0c3f7284a63d46a75707ece96d5dd51409a0e601765e8760f696175433bf34a781b7dcf131e425f25c5cce52fb457cb5745e62e7a8f9bcbcb9113fba1299d82e403e34a6e7438660d0c7930b8a5cf3f127084885447a91d1f5d5f117e3ee8e2c529abe188745609e9948e02d82f1f87855bbf46e8e4fd39402f749ad00fe886759956faf77e0689485c08022343167e23180f5f1b1d33b8beb5f73ec818b92426ce60f5016b8e644dbacdba9900caa61d75985b5d063a3bbdd5b95937483a970bac40a0664e95c7c4f26a2791754d77a6fe5c8a80dc3d7321badcee567b7950a686b1490fb0ca411f08fdaa06753b67477f67a1caaa38f09530fe58184ca552decc0e54b4b0073e77ff4351fdfc5f7c6e6f153935c1e5288ecb57c3dd6022dd0854b2f986e292fcafad0421aaeb47a7ba53c981defe9cfb53c95eaa02ac7f1dd155e476b6746dd2f1692a7e2d6edf79e795924a0b919beb278a2e65af71fa1cac81c5d5efb138b1dd374f98b98cb5a14d96d9249f0f9cd42856a275f92075330b1926dde0bdbf123a8becbb6b6b3797dd89ba4eac728e6b56696a752a07eeb1a09810d450b2682f2699dc6117bfb45fe306abb889976838dd1bf31791402ce24f2895f70434fad1ad4dc86f0f309ee90fafacc7e72c0b717289d695e4000fadc058a119d9c4bde9ac0f8b45cad48c78bd2686105d9a27680cb82800509914206 e90b4ffef4d457bc7711ff4aa72231ca25af6b2e206f8bf859d8758b89a7cd36105db2538d06da83bad5f663ba11a5f6f61f236fd5f8d53c5e89f183a3cec615b50c7c681e773d109ff7491b5cc22296c5,88c391f4788dbba363859497f71794349f3a81cc9d1746ca273208680a0ce4accc12021e1efa31ae40ea75a009e95da25f9f0cf451f658739e2453280ec6253bfc1d8dd72e91b4abdcfcb240c6efb4e829934bef46069274a60b268df86a7f265b23089dcc09d77b8bf9a02a84ecfbca193208aed46101f48c10778619c154f880893fc0c440662ab04106b272a9fd18b8723eacdb8ad190dd58e9514bcd43a9299fb361da76f7e079a0e83615b6cce6e69ce3e724c36561c728010134ade4c44b18d1fce86289310d30195a936bb1e23c0cf98dfad41e6007e56c905f5db8dc13b56e16c3454146c31c9866628736b5f537268e0ffe463dbeb2f3daf103d24f95cf5ba0a4d94c68d61b6319389761ef1a0f22b3d416e67af916aa4772277f4e51d3a8df919300805a0caf8c36a43215e7307b49aa9697b6febeeec4f4f5f7f664c120ff27c8ddca2224cea4733db2d1a1c28f8c030a23039bd0514ad6808805fb5111f514a10efec4f425e1c91b0ee3dbff70ccf6346e6f4640db8184da28fd8c63156b28226491c1922b862203f23c870a2d88eb5ff5a6930820a4d81a62dd8c4f381f35c18012336011dcf71d58d167f8c5bbd3e5f0f278507d085f01b0db2ea2860490aabe253df4694288ea862f9ab78fc60827241768dfe617e725482df62275031474592a57fd33fffdd837654c22c96424a09a62a5f146fcbce1f2ad e728de62d75856500c4c77a428612cd804f30c3f10d36fb219c5ca0aa30726ab190e5f3f279e0733d77e7267c17be27d21650a9a4d1e32f649627638dbada9702c7ca303269ed14014b2f3cf8b894eac8554,20f8fca8bc4274e6ce95c558fcf5efe7f6a43fb47ba3a4aeb4afbcb53dbf5bf224654a242dfc1f318a4a26924e5f2759abc96d8b9c50c7185b5a7c3ace2bc0adaf1e39c6eefd79cf89d2f3a8829f180699df802662f285960eb6676560655facd507528d862473623aae970e559117687f87af4a981c7f2f1e40a1e01f2a3ac0e89d1c62ed751b9b178155f2a72f215e51e49a4e585f4422c757f891ad4004fa618da654ba3ce4c6a7614924b9c0abb8b2c6cde9b8ccf22a1e30a21a33723992ade39424252850535da5fef4f047cd998ec7ad87dc784da7d755bfb9d5f6cdc9ee52ba15cfb7f1429a15f8f0c67f98d6e44cbc8ba16d0dfda6d72fbc1a44932aefc2d8a618814957d8b748e0ca0d3b5095bc8785b6c20053e4a204343316d74fc96e16c775ab43cc33ff2b4f4ce85086d47bcd132c0b0e196344b01cf6e8bda3e06e2618d5604bb5040474413fb54669bb744704d89c5b06deea58d4e29f6df9c926a6cea1297967dc66583654fdd3f6449033a496199e4b6f37e0fb31be50747376122951575095467010006d5f9ea709d0f15927a060d828af4180393eaafa27701b919daf424bfdb3f59af0b40d0a4890006c98894bdf402861c76655414ae631a50fd80f0e5c63002b604ad1ab9684c094bcdb82c0540fd6e5924ac51f3fc6da074ac7dd7da1a87a633c16ecde716641975182803039231320e9fa16430b 6348f229e7b1df3b770c77544e5166e081850fa1c6c88169db74c76e42eb983facb276ad6a0d1fa7b50d3e3b6fcd799ec97470920a7abed47d288ff883e24ca21c7f8016b93bb9b9e078bdb9703d2b781b616e,f0e4f184d33e8b5f8aabc173b04e61bfb420e34ad22e3e8ac318ad06d92e8b5dfdf4b0f28157fc9e7d64545f527c805d9f953626bc35923c922fc09e7d2947d342bf91e54ef34fb5987704f7d0c36c9a9347f3a99027e192907342b2531bd1da066d34ecc1fb50c85c261da65f4af9c2c9e93775f39d632e3dfc1216abbbcc8dd2680f8081a2816bbdc1646540cefe4881fce2ed57b4822e11461b5e6443ae2de5cca426258d68b01520594b9547a714b0a377ad398f42599358f7f33855e64f12f88d9e2909e6397acf34acf79632afde5711858814b84f472ebcd03ebc9671f3985c99dcab92fed40de97a3c425d38dbc48ed34c2023771edfa4f988931b7bab6fdd612d4ab6dc39d43e66d74307ea8a9359ad73e0965e885ad919f12e6c645c0dc9925ce65f5f3eb132c7090bdff4230cb16b6c9567aa62dd92949af10a6fe66cc50b29cf189dbb521477a99dc45c937856de855c303a5eec572da0cb0f584961971a15d8b0907151a046cc1b193e55f7e8419601c1699db52bbff3142270f22d628f53a18e64736c1dcc09f7497cb56abd9af5917ec07c35bfe8d041d00b379067f2d85e05732d5270c61c592f8088deda0cb76bb2826492a61be9270a8cd7f9d26f51db2207763bf41a465ecc8b877fc53139925d45541ec090deb2622864d9e3529f0f23b090912e04bb95f56b1bd33381611d973ae347fcc232cbff00 4b127fde5de733a1680c2790363627e63ac8a3f1b4707d982caea258655d9bf18f89afe54127482ba01e08845594b671306a025c9a5c5b6f93b0a39522dc877437be5c2436cbf300ce7ab6747934fcfc30aeaaf6,1893ff8490baef747390acac15d42cedb909c2ff3d30b2250a3f9de11e79943b9aaa5c5747736e29e559f93115b0c029ad6ad8779804083c3f211c8d6cee56ae65f0b650cc45b9df5436456879f62648ec81fbf968583582cf4063b5f007e1b04a9bcb2249833170c1968e3040c808f2d9eba238e74931cbafafd94690a275d1a1c1c29f71b8dcccacc4e9543ff05900417d7e46c64fb4454b3ddb7a0bc01b85a0aecbdf9272eefbda881d2abe77adc9f17a26c50de64def1ad2a09a79ec9f9c64895540fd56e93423dd7df3e566d168e2560d8336177937f46df87ac29f9fbdee919dd8d2462fc1db70e27b992e35f1376459fc15b76fdc3c6d9c3f6d994b300423f154b6fb28f845aa3dc8537de62d81c78326bbf8a89e39c865f395be31b38bad26cfd4cd866b872d427ece798968e66658839121301bc52e07cae272b6c373b01c4ecd42f75d3cd45b2cb1131179a9f21f8cc84c08368547dacccd56985477b4067b865b0268c1366d35c59d7c4ebe54e0c7eb383860eecffe308a2e71858ace60ee4a2898ffffc507f0011f47b16bc9d696955c8e2c7fb64f4ee9dc9f9cf9987ee2ccb0fb780bff780c4253e398763ac6668ff7082a848bd5e1e31e6b5e1e771f7ae21918c1ada32e788d89822ecd3029ac5604132a681aed4348b631a2c9ccf19d14cb10f570e3b7f9f301b041e6b901cc007cdb125ad9cfdf7a889aeb 08461f006cff4cc64b752c957287e5a0faabc05c9bff89d23fd902d324c79903b48fcb8f8f4b01f3e4ddb483593d25f000386698f5ade7faade9615fdc50d32785ea51d49894e45baa3dc707e224688c6408b68b11,56758ce6042783cf0d18a2c44fbf953065571bcfc3d19deec28f0d6564b18b227b6daebae658dd065f414e4ffaf756d10820fe38c61a767bf2fd0c242ea3e994ccc6516fcf68bd7514833e061a65392d175cb6eb87374de426730e4e771c7905706bb5d7e3364f946b8a061462519d0be6f72b0220451f2c6c6e5ce217262323e4fc81dbff169dca043487d88f02bb5c22434fc31043603a5140364b7c2cf179ff13241ced0911adce30c4d7b7eea34e094c86b522ea88f0126943fc2e3f8c1c81753c4a10b844add7868457dfc91094458806b2c115a052bd616161aed4bc1690e5daa09badffb3be59318d7abec04e7b5b439b92e63ba3ebde71aae8c5bec81c9073072ea49e85b53539c2462a446448f4d362136638eec10f227a0a977b3460499a77a9e951124b55340e49f9d2b0a60808153d357b585f2c940398b12bb807e730da556c3d156d84e5c0be2c625e3fa725ac5659e07348894842711a704a15201c72f4fd2e54cae47531c07c7d1fdbc61446e35666175b2cb7b25a5feedc1e5fefd2547f408f0e91d65c7ad0e636fc7d8bafba355275aacd0e2bfaae9ff7b750ae20c828d66793a7d275de882deb8a97002c9b7b90f5aba4d1e7b9d5e4bab59dcc44e487be10854c76d2ee6eb5628f1e791b731e5b1cf339270e90b3f25aa78b28efdb906ab2d5560d976aa8fd4a560a29de12c47a360131bb5f1f8fd71a 68c8f8849b120e6e0c9969a5866af591a829b92f33cd9a4a3196957a148c49138e1e2f5c7619a6d5edebe995acd81ec8bb9c7b9cfca678d081ea9e25a75d39db04e18d475920ce828b94e72241f24db72546b352a0e4,d5076fe06dc454041f41d77df1680958cb4eb8311940d58cba2d6ccc1b57ef7d66d0d947b068928e0284a292d6f3610be7ccdcd2117d59edf468f4cef33de2be52adfea056f586047f8fbd3bdfded58237c4cf541200488a3de301d5f36c735c387dd852959609a9609d370f63ec8e1649119f6966887c38c99f94b2293ce52ee234aa5af55b0eb3afb8b5a1d283bde8f3580f5ad1951d8bedb834eecbac86ca72435b52519091d94647acbbcb1b55dfd9a531c6c966b481fefa1396cf42fbe362ecf403fb046aff1b080d47bc282f4d053ba30c2a00364e11ef82feffc4096df1f8ab109b45331611a8ac84b8df0b7b94952a5ac80b075bffbf16065d8e5a47f771c0f983e045d4104b7e8e5226ebd9d7add387de852df26ee9da3ee70c7e20b877a45797de836548664026a380f306705232ed37f4104114d58065b1c74441eb9cbf00b8073325b40851b44033fa4e65148161b0de0c1517b6830cf5417ea3c004b7465c48f9b2766c43cce5738e9eef6d9d0f296dcbdb41db35924ec1b746225142775268908a63ebe1240cec4f02972523c8c7de4b44530d1821bd43694647f355fc0473d7bd4d3e6d30ea453efdeac396e0dc03f796f70709f118920f8a76d4d85da2b5dc2964a8824bb96aa892e43fcad95470cdde85433d5cab38424609a9682e1fedf7776f2d77f2ffd9707ff110387de49f9422f11933d6cce6ddf1 b8d56472954e31fb54e28fca743f84d8dc34891cb564c64b08f7b71636debd64ca1edbdba7fc5c3e40049ce982bba8c7e0703034e331384695e9de76b5104f2fbc4535ecbeebc33bc27f29f18f6f27e8023b0fbb6f563c,904786dcb5a8f3c4be4dc96cf168c65efd3de65fbe92dfd96b1cb99f33581f561e02a9d85740fc7295726f36f966392956b2c61122481d7da372662d0f2b42beb4228877bb85a3afb52c689b3da75637b52b81b9182ea56980e2c0afd0d27644d0cd86b770fb3f4ff2618ff000ff7846055449e1acb3721f03a0e65fc377f189824e06b13ea6a797dc7e8a8af064075a9424a709456cba62c43b51f4145d6f5456159678b09ff1a97bb19f4a41a836b0e6090617a2bb9b9abb7d4b6777489ff1cc36e6ff828bb27b26dd61245a3f583839f4efa1c453d6d5e9b2b3947eee25d006de476bb37d505fc5f0ac0ab97f8b56b8587a8ff2eb61c3f83598120b469e9cbc5fc03afe2f72ee0b117f818eb8b33cd538afad801cb75d4b2f51578d628a1701df56b9b9bbf10a30de0893b6e3cad4e264c5829b1c5c35b3a1b859ba7e49c29c93f98e69ebebf8909f535956dcf767c51e2afc49103c052aac1a39d02909383ac02ab8220e4985872916dd6deaa9e3f57475a33b0dec69f266f1b990df7f9f85eaa82fa226dbdb94292b91c3f124b8ba13c3abe0908e52b67ea7131e61afbf20293a61cb3659415ee890c151a5628225d61ded612dad545b62d819a4f3d1ade9cae43b9cfdfa4c32a8d16116a58ee3743483663e9401cf1280da465025efb103139e4e8850d1329f1b9bf5e1a8c05d20e963e824eae0af586635d19d13244d 0d58ac665fa84342e60cefee31b1a4eacdb092f122dfc68309077aed1f3e528f578859ee9e4cefb4a728e946324927b675cd4f4ac84f64db3dacfe850c1dd18744c74ceccd9fe4dc214085108f404eab6d8f452b5442a47d,9fb52b8120553ca1f4b801fcb753dbb0e45af3f160749a05fc2adf8ff1f507dc304214d785c5e0797c2f6f767d76a3ee22cbe0d114f5f8c32bbf8da8505090381e16064c001f1807289d0db586c09a85ef727f393bd2ef1f95cdc1777e137b43de60d425c5f5d685d43d5f6912458fda3f4acecdc2024cb7e6f4340fcf6333cb29ba1801aa80c0f8a248a21305ba62d62e689d55d905eb03368783cb32f765a55d3061774c9344e85c35f8b944420f47070b34c9e8996c281d890e591d5b5cef03463d86e88211917e7db7f5bd4f36565bd855efddb859c97c206d5f3836840ff3863b93e17aa19281202af6ec0b1b5dcc7c00d9dc08c2dcccae41ee2fb8e591a4aadadf2b28fc2133067d45f98b4ecbbb234593159888f832cdf1bd4864b8b720e42219a220c7feaf6c0d6a1c14af2f1020218c65a475386a71788f7bfdb172b12819f2d78d6d200382992d9f39500c4f15e44e1e48fd5734d110ffd1967e098f673492630074df33434c36ec9fe067e8e794794191f355c2d564fa4bb691702dc55f4e6c83d1c487abb281f0246814a1ebe626f05f06d09a371afb4e746653872f83b42509504b057db7bf06afdc913f679eae1fa4d945b93c4bb07e70f48f147bd668b121b05a777a5637cfe24a2bc155c97b9330b3e3b848f689a00ab1f916f321fec05763ddc6d6563e7aaa3ca309acecbb0884dec5815558d8ff72e820 1755e2d2e5d1c1b0156456b539753ff416651d44698e87002dcf61dcfa2b4e72f264d9ad591df1fdee7b41b2eb00283c5aebb3411323b672eaa145c5125185104f20f335804b02325b6dea65603f349f4d5d8b782dd3469ccd,906bfc0b13dbd86acc32b93c56c7187acc1e5984c1a7ab8cb4ec39a00355837f70b6790360ac9c447e28e93cdfb58cfab3dc8ee4c2378e68298eca240869fb5652803f590245f8f40810febd33ff25794e39758e9984e47626eea8ab2145cd2e260873d4524759a855b2da0c8a80c6c365e76e8b37ab4b9a6d9882870dc22f61a341fc932152be5c84af645eb71e6713b1d9b582491653a8365be531d565b27159f9c5c7faeca04fe1e626c1c9a7e7ff3882662b084b827ba96e865b753fe73e3936e47ef9f1ea151878f671af51722a4755041960ec2a7c2c4cd364c4914f64e90bcaffbef147e935a6b03166065506fa7f20a707ad4771ff026d7bb0db7e744fecd63782dcbd9da7573d77f82e6a5446b1595f7ef81084caeae91e522fa604a370612a6bf464d5872ecdddf46285a407d7835e22438e82e62ca0f1fdf7b420e15f9dc061a3519b8f389022bd06e9b31a34f854f0f75fb9cc538adc0ae1d981db68c17e6f3a91d6c60efbaa357a49fbd148ab7ee2d96eaa8909782e74a9895890d02fe8c8b09b8a9f2a8e18200825c51896c42c59af9ad93d847f4a4fcff008d1bb8d6bb2e7c75912a086a23646939de69d7bc42f568fcb076ef9c37912bcbc0259ffe04ca17f799ff7aca1d34fbea76ebefdcf8d22bda634de9b6852a5da831edd0b92ac09d9d8235a0af2bd5fa6b0157722115561efe7c14c22145137d729 b180de1a611111ee7584ba2c4b020598cd574ac77e404e853d15a101c6f5a2e5c801d7d85dc95286a1804c870bb9f00fd4dcb03aa8328275158819dcad7253f3e3d237aeaa7979268a5db1c6ce08a9ec7c2579783c8afc1f91a7,e2746cd339332913e436fdc5b21215b39d0326e95882f291849bef33afc6c7b9a02f438c2e6f4175de5ff04b79256b845213b917b34a0111814af58b06c8b5af9d2478ad18f012373b9f030abb79bd7bf380c2c2ef07061e75d7ba113845c80e43bb718377732064b80339e8316068bcfd37abe6aea6eda3c58bbf95a77799155b30fd6776012f098ef9f29db911e11baa67937a52ee25c429836fa45a2adcfbc704a404af8421fb3b75dfea979f65415ce0e9b6d17b2e5825929115dafa8e9a51e16f8e2563876702e04854d48ac2159bb782aa6b1b764a8359f7ec423cb00e9915bc63b27f6e758402b56799d7c3093b1a222ffb8c0f08273a6d5115d2cc7429b9382763807fcf97ba5ee82f78f835bcfa65645ad36f56d595ed06924574b581d6c460bb0209cd69581732ef9d1de78f0b8109a6d4c271f2ac07179a84bf36ae328b1d0862f65b4abfffc0e4b6a17fde288304234cc2447abaaa223d16db5aae8e026d17a9addba9c51f3b63446defbb9cc80323e6b22dfee9d9e438bcf5e14eddc490d9dcec2f5c635d32a1b6c64d1cfd07dc72e954c97db2a6e82db75575172f6ab0d4519158f84c836f3b7b4830ce0856c37839dd7d7fab6a9ab00f9dbc020ae45c6450c257b7c0661cd75f515ee380c2864f0610a682d49cb4d19409a317aa0d6667e3e61fbc2d9027f4a5bf4fb1a0d142183f84ffefeb92ead6ecb2a9 cf3583cbdfd4cbc17063b1e7d90b02f0e6e2ee05f99d77e24e560392535e47e05077157f96813544a17046914f9efb64762a23cf7a49fe52a0a4c01c630cfe8727b81fb99a89ff7cc11dca5173057e0417b8fe7a9efba6d95c555f,0b82455171770082ff4a4fad8a5de99df716033d27071278e9c1256d63c34778980889fdb7661153982eeb0ff904e24d31c8d48d89f412178e527d054f822dd2df6c4fd555e55ccf3452fec05f9cb3bd4f0b4d2ee851ee3e22ed180f0c02e618563ba89e42c4c6a7da1a9256029b6449a9c63625cefcd003f936613092cf59f676ac91298c820436f58bcbb2f61f3945e67353c854cc384d607dc11b906a1c1a5143d9aaa294cbe03f946cf2703c0983727faacafab85c6725e8a9caa7aa69891799c560bf6b885255674a2940deae220bbda252e636c4526449ba895de17312ee0bd0520fa68db28bf122219e571c081df18c2437e4174d1d6b529e394c4090e5fa957a996564d11a3b4652522fe2999903f6095422b4aee2d47f2cdd4301bbe42af671f58228d76d7cbfdce870242872ef85d0d1e18cea60c87565e48a1463030566c9e34df8829a58fa36770e861d6543b50ac6a439abc062236a065bbdd866a237c09897f3ce2ea5b0b1d8b576048685a53da7a409fc6f121da36ac23b9419f254c76e7024faff9d45bee4392ce4c968e737e8f9eecd4800f7c928e30ef664fd4d2a7150954e0599ce5c4f07b9351a408ce35166da4240f1e751ca4a7cc4946f5451a0bd137857dc003b61424a6682d942f4da9644672ece7a1eee295eef46b5aaba3f46099e93e01be7ad9a5e27d378701cf9514b374204d387145349f5 072fc02340ef99115bad72f92c01e4c093b9599f6cfc45cb380ee686cb5eb019e806ab9bd55e634ab10aa62a9510cc0672cd3eddb589c7df2b67fcd3329f61b1a4441eca87a33c8f55da4fbbad5cf2b2527b8e983bb31a2fadec7523,4167bce24865262adadc78e611a960807758ec6d0d46e3cac221b4fe9818937092bd3ac5219f0fd765b613f2eb7e36a5f48fcbe3cecc67540f9282db1842f95cecf0648c12e52e7ea0c96ff7249a8446d0ddd7625bc55568642da2f2cc897b14d2995dc382293cf2dba9a63eab9f6940ac9ca87fe5cffa196dc930ff3353e34313894a3d2a0a86b0fcf7631735a2c663bcb71d5947c4b2e97441982b791a4f20bb86f7fb033210e4fe58dce7256309fdbecd7d7f3fef2d1df7e0247ff981d417c56eb7b14b7c9453786c7b30f173c372275324e834d94dbc6d10714407ea7886d92f810f2dbafd57484a09d70951cf85c0b7820643d0e7ef706934cea0cccf94b1d1f75f1e05b5d033a5ce1f804c3bc7a9ccf00c8cfebdb62f8c654805c5acd4fbeecb6745803721d17f2b8303a98abb9b8618107b4493735b4001757890d772f78093aaeca244e5297cfbf0b9442370c9fe0efec199201e8667d61fe4b9ce20ede827433c91f521ef2b296b15cff658e18226f17df114675f57e988a14b9f104f933bb685a3a9dbda96a9b87f2eafe028a7c656300814692c3dcf00d9f07cff361f601bf2a1fac9ea58d7543604382ed7cf35de7ad7355247318796466081fbaa05fdaa65665448de1fe67ab560250a213fe60f506e9eee720fa762af7d2a23492597bf37e0067997095ffd63480bfaff67c084edc5be6c0bfff969bf06e25e 76eecf956a52649f877528146de33df249cd800e21830f65e90f0f25ca9d6540fde40603230eca6760f1139c7f268deba2060631eea92b1fff05f93fd5572fbe29579ecd48bc3a8d6c2eb4a6b26e38d6c5fbf2c08044aeea470a8f2f26,4ec44e5e1f62935eca450494add6aef7db1c1c8353f1354c4c9366e9e56a8d5bdd02383b9a04ba4927959531b9169606cd982b6b72927d2e433d900f3b402d7f5bca979b3742e2e2c1df8d4e163628357aeb37c94161f8a9269832dc28a4e4983b45140a5a7c9a4313fe39bb2c117453c2e5cec3c0d4d5c1169b042e319c77712c0171e3487c590fe9b223b7f681f6c4b46adc912baba3f1e190cb66da0b38b3389abcaca3d4eacc26046cc71c4b3ee1520ea84a1b8897a7e39b9efd65130de8f694a0a81f4ce994a0f4fe1cd94439d6551ca8b695a5f22ec51022ada24c3ebf42840c42b2e345f8ac07bd5561db40d66da87fff248909eafa8d35c380133ac87303c83a8368492406b45424cd0c7143bca5bf6ddb6b2fa45fdf45b96bd1cb33f16c1843985c5a8b1b902361d10b235f3965457ccbf2ade247cd371b9ad808fecfd503272d4918bc3ca6edf09bdecd56dff372de8e2e1d35ccf55e7e81ac5dd717c49f492bd1b242331eb66287f10e15d7bc69dee9c3f1032c162b0845083ed653d38f270747510f82e43f0eae6ebdfcaf296d360998a5ae8e735fce78aee2332f7766fa8b289b46cd1f129bec02dd6c3d7c63d544c22687ad7e4802e0363d05b8b7965c1d9c9ee8d08b0b54a8d55d2a52e0a053d31857ef350c713caf7d7b00fa5513cbbd6fcccaac97501e3964ddb3012d2e101c59cb8fd8b28aa567292e27 7adc0b6693e61c269f278e6944a5a2d8300981e40022f839ac644387bfac9086650085c2cdc585fea47b9d2e52d65a2b29a7dc370401ef5d60dd0d21f9e2b90fae919319b14b8c5565b0423cefb827d5f1203302a9d01523498a4db10374,4d2597545337647a12662a7a13065021a6d206ebd13459db348c1f5361c5990daff469677e61da9a4add24a1b4adc67a092bdcf80d98c0a858ea96b0be188619a82a1f5055b461660cf805ae75e4f869cb830e153e840d6f164deabe9065695f6c8f982bbb7d2acbfcd7de93e8028ac978e0d78ce878d3f813abf1e1b51806099da8d76e16c47d0c1d6cb70e766f5f3f2336642b9bdc2958deea3d6efc30fc4e54a90fdca6bfa5e8d4410d38cece522b3a32f11d4599d464e9cf16949385110d71d86a2943c03e67b19da04ecdf7d30a3b9e16d256d5cb1545b1312b6e62ae028d61317e689cc3eac351b034e83cbe91140e20e292a3af44c27a026dca5674b9497a10876ca0f21d79184922ce71fc11ac98072c2368f70d113a413e2b9faf616e3729e515fe22146a35cb93d0178c1c07ff9f403ba947759ca0fbb09fd66c7eb562307f46c074501ea7418fc64911ac940c28e75e2146231e0b94893efdb0ded97478796e87dd906fffe9232368cd0673f9966e7b312c44f26649355448fe2faeea198a5f6eb45040d56068e5b98c02dd948277e1fe5061effcb028b61748e2d10128e0e0f7b70ec8cc6ffd071c65b5c1b9ced47c9b0df76d3b0a5255e27391409b07b0c112ca444e2e926bfcffb1ae7b00252f6831fff4992d63ba2114502df0a3489ac58f463c8f9a1b3cbd3c8836f4caa301b7336d8dcd255c0762c15e24 e1fffa9826cce8b86bccefb8794e48c46cdf372013f782eced1e378269b7be2b7bf51374092261ae120e822be685f2e7a83664bcfbe38fe8633f24e633ffe1988e1bc5acf59a587079a57a910bda60060e85b5f5b6f776f0529639d9cce4bd,05a819096b5b6835090cad5109cd34f40a234f1569b226c42f0207ae06e6eb37a50ad688c81a98c9e747beb1bb2ad741454430c0e36a8b4de03a1de7c3d1fbd836f90ddbf10b10ad9dc427f0039de7c0a8336b10a5f2a24ef2a0de7d5765abe3eccae743ad3339521d78006f5859339f15b5a4c82fe758294cdcad306d30e57ebfca0c22042fd0ca678bf2e5d59cc39cf1174b1629243115b9247b620bb14217c7edea7cbfacd209fe77206275ca39d15f6995e27108c9740a27e98bc205606d68f4d5592756390dcf9c3b5c58585142bb6e31928ab39843538001d792db744145e5e148f15336c1d6f334608d514c8a0d28515c17cd88c47aafc95a7d42785d8425aae5d2d8d74a90914aa30bd428f0282e51445deef80b7c1a4429e4e810c753de4ab21d2e6e895fa4797f3b4c267cfb123c337cbe0ed977a9c3d4147780dd20b2e0c1781e3a8ec690f3d32f38d55d8ae641f61537e0649fd681857156837dd46d1e6005f5747882f895684a6817d40ea1df7b6b049db621ca257a3705896da9b5e38a6d5efd1d2fb4906285b1af522d34a5f141c1b72e74fbf02c9bfc38d744c4d6b77c32317774f4f3743b7e684a72ab54beae64994f20dc8ab350facab35726b55667abcdc7cdc18576076b5fcaab6264687d497d32ec0d0a5c42fef8899441f36f7b72925326885e1b67d59d7bc7de352f8844f44c3b634753812844e5 69f9abba65592ee01db4dce52dbab90b08fc04193602792ee4daa263033d59081587b09bbe49d0b49c9825d22840b2ff5d9c5155f975f8f2c2e7a90c75d2e4a8040fe39f63bbafb403d9e28cc3b86e04e394a9c9e8065bd3c85fa9f0c7891600,b83d4f95feafc7e5aa60bb1035f69c8074b1a25ff516ad6a18de1808ae64ae212b63fd05f983a65baf28b228ea3ab587b163e334a70ecea2691a77ac940259827355c5459d074532a3efd811f419e29fd67d8ce82bb4f79451f6ab0a8eac6bc48713a04f318aa45da6246fb8cd9c866fafc9a48c5e6c6d05d501d00e08f7d4320e5e294fca2b6439dd7ea3bef65cfcf256e9c4e6f902bd9f6aefa2af303e0028d0dd0b7e266f31e21a23f546fc4ceb9bea5a4034d3ddf7bf63b546f8a1d73f9f56e1c70b6b5e1ecbc244651322025086a933d94d1f21c9ba03493e38d28cddf351f4dec99c734589cc45684dee9aac79f367b940d6e1ab57afdaff422f9d60e83fd6a080d60267d19de6626fccde0759697dc7ccec6384b7ac7e936a7f12e134c053b80cfdc38609149b277b9f6881495562eb466b99d4d4a1b80c3751f51b3d53261dd5bbdaf1b5401373140c35d31907ea197397dfea7c420a80c2151e73e0ee8e27495b0c9eda13b93e8ddf9426c26995317cd273960301973faa9aafebdec14d92466b059d3fa7cdd533075f5861c538d69de08f490616b650ab5a0fd177b500f05e011ae3ac06c2480816770d0eef7908761af08302dfcac984be0b3e60affcf5281fc6e28aee30421e1dbef6775ca9bcb2803954c0be501d55d5d0a1cc7882ab5f1287b5a3ef564b91735b9ca85d5e7103d0175b2ca00eac7b627bae5e 38a10a352ca5aedfa8e19c64787d8e9c3a75dbf3b8674bfab29b5dbfc15a63d10fae66cd1a6e6d2452d557967eaad89a4c98449787b0b3164ca5b717a93f24eb0b506ceb70cbbcb8d72b2a72993f909aad92f044e0b5a2c9ac9cb16a0ca2f81f49,5a81fb81f8cb6473c04930bdc5c0a9ca96d4a500a7ba5a9167491573aa7178101d64f46a93486406614ab9f397e78b0198fc988cca849ef70c39b0b3a844493439ceca2b7cff8a32d18285bbd32b1e5ee26ab0f82626f4130c1b40cd6e2c9dbd6677e6644a1ed6a016dbda139b868fc2f7c9263bf4535e8ecc24dc626b1f3abf4b08e229ccd076dfccd89c8eddc77e9ff0252bdec35dbf712cf0a5bbba7b4c7b702cb9353ea4ba3d0e0df48d6c56d0b51ca269c9e428b22951555c8ce65b5704cc3f4ed38649474c4c049a63894405186e116e616d686c7c033cfdb75b8202fc6b6eeaef697a4f5277da6c5e7eb9814a6798262535292ab6791633cd687e68ef223464493ae8d1e27f8b2f483f5b137e48f4390cc27d96a694971b28c9cdb1a24648a0e0573141da6a1ab54789199e8e909f6fdb0766dea735e2d87ccbf975fe8cdd6c728df888fed6f049008d349a476eb63a87e0cda622f9b611278868e8396bf4e878bfb58aa847f04c2e3a90dbf386954874bb7b1e8cec42f1ac16c1824f328af9cb154cafd4c9e2348a02b0f9638c8562655cd5e3fc2bded644db61ea0c4dd27e8b79c7be52f55c321619b5c8beda60d00dd3da3c19d4c226adf2d5c4a66518940f2441bcaffa704c80900512516be2710301579f023393892fb27ee9dbc71ad34ef26651e133b3c21d8914bb6e9446f11288e1a76431c3999686881d62 6d8c6e449bc13634f115749c248c17cd148b72157a2c37bf8969ea83b4d6ba8c0ee2711c28ee11495f43049596520ce436004b026b6c1f7292b9c436b055cbb72d530d860d1276a1502a5140e3c3f54a93663e4d20edec32d284e25564f624955b52,e41027e76a055f0a826481c650fc24f7816460ed519af8802ab191e411eca719ca1696ea14cd62306071d4e1dd65333619d0193d9830b6e8796234f892010681923bf30a1a0ab89d82e36dcef3acc00dd286b84240d0282f5ae182ffb84bda59531c519374ed5a2e80db2137bee790cf49b9faa524f75abcdc5ac3c3027f6dca443b2cb5976b9b8d66e9eaa1f9f62a23d5c9a9d5fec16a5925eccf1021d3253bd67f471ba1530c0601dd96a4d7ed6e37dea3efb24284b61002158af78e35f8bd617c9e7d33fa4128c31980a6d8631a009feb0039b635d1030c200ab651c3701cebe8f2caaba57e452c0e8fe41facfb398a2769aabccb21ad2aa39ddb53ec706e796e7327e30fb4a631e6f2a35a8dca86769bf6697f8490ec5980f3143ea2fb79faa9a5f2ac7b5030170a4548af817cd80c26e1b013bdece9cbfc553464f1597077e3ed435804dcff5fe05bd39e87b9b35d9f2810c32eef8e30459566ea3cf380a7f9e1e2bd3e4843d06b018b55006fdb22ee1ccc0ae615917e8d17fb019f7419fedb242f0676ff4815989821135073e5cf91df42cc6c6f532d3bd8be9118ea6e583d360f1f8c20600a740d9310a984af3c82a48fba84a84aff42f2f1ec8c4115b5704704ac2073f2014bbef1913fef7862f514b198983ba63f4d38e81d822cfb548af76f561ebab987b208b11824481309b7aedf0ef44376847162326193dcaa 6efcbcaf451c129dbe00b9cef0c3749d3ee9d41c7bd500ade40cdc65dedbbbadb885a5b14b32a0c0d087825201e303288a733842fa7e599c0c514e078f05c821c7a4498b01c40032e9f1872a1c925fa17ce253e8935e4c3c71282242cb716b2089ccc1,28e204a3450796ba182a339cef54a3b224626681c51297a71c2bc0add56bf57c7653badcc1438e3cf7156ef7ed4ea9a084f3041a8157e1fd2aead827a5e79257c1bf7e37d4fbc089422acfbe116a2e3889614b8b01bddcf63b66589061a690790357bc31c68014ce422060cab07f2a254c83e1a7a9ac1a0807462e6de48b194ae5fa0d6bbf39ad1835c86bb25f5c273cb266dd5167350904ea22f912343e261e38b298495b38019724a1eec356ed016bde8a81b3764a39d153a5691c196557e6fd50dc5e42b6e6376e388d9c14970b67e9910499d94f5839ed933246dafb712a122043d7d5047f1b53923c14979244dfed3cb742c1bd30176985ae2f76b912a6a3ab059f2bdc49da4eb6a9d3fc9cba1dfb1ed0a4acf46829d51fda861b8dcd62424a6e4272a1bcf28ab878fa9709db43d800e9e6e33f6d644b62ea30bf758e496bd152e41715e6aadd766f1fc6bb95dbf19f497729bb30b29fdc4bc4f5502396969cf6957be8fa7f17a4f04a6fde71264b0f1b40effdfd560868056daa10a6cce695aa8a815e43121c971e4c4a3fc5e6eb27170d4539f3a37a4665f179cc6c804dbfb199814fb2d5121fbf93a472de6f4d1db176ced29f254f228538b065f8494adcdc3d1117b33a1a51eb1ac3f6d7c8315e5a674703827c0c506977d1cd68873b4f18d9a03ca54f74d7f82900a27e8863ce13e92e0eaa86c2cd5bc99121f1d0 433c5303131624c0021d868a30825475e8d0bd3052a022180398f4ca4423b98214b6beaac21c8807a2c33f8c93bd42b092cc1b06cedf3224d5ed1ec29784444f22e08a55aa58542b524b02cd3d5d5f6907afe71c5d7462224a3f9d9e53e7e0846dcbb4ce,fe3145a2e9e54b8888c1fb87a70402eb4600b0a2d636dfb23f869583900544f602b9dc325b6a9e8c0a9192602eb5ee581e3b0be65e918dbbb49ef017f174c3aeb12c20d13d20c3370e1cfc19634899833a91375631713db2954a8e33ca839ee5f12703c814a63496bb438195d89af5cde1f22ed8af340b72b6fd95660bb304568af54f162d47cc3783806274f967835038858719a4e3115e76690b4e848fd6acec695b3174c7bbed140db8fcc2187fc0585f4e975fa5ef3907588e415638f1487e6244f3a773f8e2b3d9c23b4154509f87564bc76fd437c718bfdedbdad24e3393a851eb30a82a641d3b144e3d9d223b1e92813de477daa28bc9cb621f8b3d06b4a3e3f9a52efd9095365976144325269160f7b859ec570a14dd43057bf4ab3cd2ecf13e921fb8212f4379c59b332fa1817360747f58a63e0f635fa52c59e31962951aaa64264dd3f26eca0af7c423c0d3dca624a4d33c383ba0f4e04630d74a40f760349116d6cc1a8ba17f228d7bf24af707d130d13ac825db8e6ed4b97b4aa589230ce9a471decbb2dbac9f68269030add24c712f1c2ce7e6dbd330deb3249f7af42e31e717666236de7299283063d3dd6cc88d0096359a1e83795844714bcc9d88da6fba06d1156114c62ffb5d9a58274ae471d544d7e9701ecdab9b63b2ec4feeb07126f8c1cf8bcae823e7bb18a9566627cf95e6d8af7be94275932629 a873e0c67ca639026b6683008f7aa6324d4979550e9bce064ca1e1fb97a30b147a24f3f666c0a72d71348ede701cf2d17e2253c34d1ec3b647dbcef2f879f4eb881c4830b791378c901eb725ea5c172316c6d606e0af7df4df7f76e490cd30b2badf45685f,4a021c69d45ecf926fe7592ac05951d86facb97509b459d0459cda7dcf2b084b91c8550a9f2a92c490c270ca90c41018c4f205e5a33b1584fb54bb1f163a3be83df0c721235e24d4410f73b2680c0835b840db4c4244c1f85598c2b3a50a896f40c8fd249e99588a8ae1fd6d706a394541b942ec543343fb377854141a35bd35f10983543b17fc5c30b31f86c48f601506c21ea462420c5992f5b5dd12ae33cdd99bdd92667d4bc87410b1456929350d06c91a558a2a17964c3eaf7bdf67f743af6adaaa92766f36655a9496263b38f26a7f1dadb95b6a5b63f3ff9e0081f61d0351ee557199851596e5d221ee891cba27349b4ba671eae59473ff0c30f0daa2f9706977c79746c8c1b70aa1397df9f692dc4d1182eb479c98343de7bc11d940dbb778ae8a75ff09d3ba328a032122318c021bf07ac179bef0ee42fde3d8a64fa0453057b1b2ff6804ac6719f6823270647e142be5d338b1458f8cc7ad7637942ad4f0fcab36ea6ff768273362b8ef001d50c4e5bdbe74f48dd91854a92ff02872c0963a2c2c52d0156e58ba1df0b7fd9a178de79cbcdedc20ca2a226551c86835ae9ecae09fff19aeb6b114f7cc602065cbf6a6a740874fbd6662a3ee1d407337b935c4975d269db7c54c453ac4674b9cff128dc20c62cc86b9d14259e06315eac81923d415e1f35bccf48f48bf655e6b87f8a0b55a21ac760bdb828ba351df 006917b64f9dcdf1d2d87c8a6173b64f6587168e80faa80f82d84f60301e561e312d9fbce62f39a6fb476e01e925f26bcc91de621449be6504c504830aae394096c8fc7694651051365d4ee9070101ec9b68086f2ea8f8ab7b811ea8ad934d5c9b62c60a4771,2d008f8ed51c6a86910c30ecaf2b6441262d7cc66e54b39b9aabceecaf2e96a0b5f1cba234f45242bd8f96a57baa98cad302814c95e067cf8f47b2a4e6fb6bcc5c70a7a750f754824e9f970e4c54d43cf8f4e0d433b931df2b6beb10fe5b28f2a6b5cce24d0c6b414dc8e3c064bd3b26ba82e4464b34c3735e935ec3b7aa36e6af002a0aaade986b0a15af0e9f1ac5b8cdf3e9022cb6d2be9cf5b30ac8e2bb5e766f528802fcab3c3c3405f25367feefc12f1c7d99717f2ea62d7001b4845793b288dd9e777270608fe40586605af8c9ff52d0fe4111e8da8c315958694abe386c85a86aaf2038df6281d8cd73e201973704d314dff7a5c3b4d6543a34c6ffc561195cb3b782c1acc2793ba6a75974126bd3e4188faa0e69b255336366ded52d809d6f70daf11ba57b604ddc8359c1e5d9e8f2863edfe71935ba18a4d373e4acb73cca7887b0f3a84b2bfbb5340afb87beab7e3708484bb4ea2e17cff49dab7236bd83dd11b2761af3e7e58452e9bafe5c665abc543f41d98c6478465bb67c6d9adffdefecb1adc2e22b97504590d07fc112e03d1e221cd860928d13995ff1db025927b2b7edb434df01f1692ab329d07a1c6947e64258e53a8082ea6945e1fe21acbcc1475054a0a9493acf37e5b607c79a54c985e70a99041f3eb3d5511390a1f81fc845c9e29fc39f12d019a0de262fa9426c123ec8c2c733adb2217deaab f13c972c52cb3cc4a4df28c97f2df11ce089b815466be88863243eb318c2adb1a417cb1041308598541720197b9b1cb5ba2318bd5574d1df2174af14884149ba9b2f446d609df240ce335599957b8ec80876d9a085ae084907bc5961b20bf5f6ca58d5dab38adb,7a46b367baa023ee1922a3408b145dabc97a55ebc78cfff95fd8d6206e5c10efc9cbe3644a49c200097ba79f68b08193c6914e016dab98361705d27b8b046f087df7dd998c02bc80bb173772843645c4f93080b0ea657eb0902afddb28963bfc845adaff3a431705c74d92346bd678ee699fc12e9b06e0c0e08785a419cbc944e770ccbf89203faf5d3b629d541bd51eafa5857f585537ca60ece26e09d6b9d05166360417b5259dfcbddc5b6fa5b653423fe052e98387c97aed7dfac41274d9bd912bdd661a02cb80caae1bd1704320ba54acca5ec6854d4f83e938f8535ef287ad26f9d47d047c74ff6e4ec338222bc7a1e346ecb50a72572d3f7a9621dd0574a9a109979992f18690750d035a65b29f0387fe78e91948b8ea8ea31a074fa405ac30d44fa3cf16bec6d44b5c5791dc2376bd1c192175058c4ca5b1e0d989d866d9e076e8252aa53c5b89d7aafe5b753705020dd7f79c93d31f768ade1f54496b62f6d7b126a2558e4b2a3b7dff1f046f9fdc7bb2902389e1c0fa49e00f4e892d75fbb5a18b22f863b7d57a8f1895b13ac99042b8be114308b730adcc2b8e5c2e6db1c7df35cc9e8160df55bed2c9083a2bf79c8f141e44d48ab49da6a77d7ab22f4e8a6401c9a600657c4e3d66700f452219be1b5008344fd3b6e76d10445853c2814d7eaf753f57a70e0644c94a2e3d21478ed44d6c5d568e68231aa180bb e35780eb9799ad4c77535d4ddb683cf33ef367715327cf4c4a58ed9cbdcdd486f669f80189d549a9364fa82a51a52654ec721bb3aab95dceb4a86a6afa93826db923517e928f33e3fba850d45660ef83b9876accafa2a9987a254b137c6e140a21691e1069413848,224e3495d98a8729f88069bc2578f98f76ee3d73b1309f75357ef595d217e4d851beef015dc7bb03f9b8c80ad1b132af1b99f42459527fb67abe4b5eb3dbecb90e679454903bfb51e9ace93a4784722b2d0453f3400632a86870a427df2aaf93081af99cfb012807766c440a010e6ea068c2bfe388f26d95bdb1947bdf1e364d252c81835ab7083ae5cdfc12eee193016e5bc5a90c2529419df2c0e14f8fd900d4b9519705221c70db7178b81817b0becaccee975b396e63383f03fc8097ce6ee9a612d53ebc572738b17442c8c5f2d8e7c67073b6fe241e6dd00d356641552eed0d1c32a09a34223f1d3e0305a38675ee066b63155bc2b7851e0f51967df90aac3ed7f88b1edbdf123d02c2f4ba23fd2f1da2cfc2410cad5188975bb5465f502b33a4f41d7b2dbf63b71085ddeeeeb6b9bd0c9f89f4424f55dda4804e86e2b983130b46403fde7b70c5006fea04cf3350fd6124c735613dcec7696fc3f75ceb8238d09d1b440e759afa129788a91c43ff7423f05c6e9132f644458ce8369dd714ca9e4841dfbb29b942475058837ffbf1f59706915ebc473868a718f2887aac888d2c7fecfc1f8e5cfdb5d3b2c71cf1ce400a0cab18982baa41b84415a0a49a25e18a8f4575b46a544f1079431e5f07915b92d8ba512340f2e43b689dee6118786a2410d58ce5ef6e8446ee49ccd2a50557d32fd1e9e0954a4373545da250cc 64ec021c9585e01ffe6d31bb50d44c79b6993d72678163db474947a053674619d158016adb243f5c8d50aa92f50ab36e579ff2dabb780a2b529370daa299207cfbcdd3a9a25006d19c4f1fe33e4b1eaec315d8c6ee1e730623fd1941875b924eb57d6d0c2edc4e78d6,cb85425a1cc6a4fa6d8593bd03206867737f8d749d2bd7135ade0d7a1f216fb92ac5c4897ce355835490699a0f715a2357100cb8932befadad55c0b5d90c909f0272f16beee79ca7f7f1002f711bfa3bde142fa6d5c908e8f5923291e0d48495e50de065cff609a24aaf17491d228e5ab226e21e790c13f8917c1284be0434c8b2b2a3cc672d484a25a47820390fc50f2736faf26e65e09db68f52a9a65280789017f1336250d41c0df4c93af9e94036e598e6f06494068f4a59813d1396b00e65e179572fbec6d30ddafb3a898cc244e1b0e82043c1470b7602d0a65e455d297770265f72d82d584657316e52caf4c8ba8cb4e3ecd82433dbdce526ebc60217529cf03548cb114d7208b93726b5556e4dcbf2764712144024510af30265fd4fb13e38ba677b34d69409f91f6f44df602c9f84362767d1e1b587054ff7cab98a3cd4bcd2319278f0144da884306660dade52096a10928c5af800819e3d890dbcdba7cdf1bfa4d992074d60cd6ba33c98ce2d9d849d60eda8307b0f509ae78215ba900d5a571b3eab6df1575d7d2b8cac2f03c4b552e5247aafe2349f5eeb0aaa56627eb4d5c33c92d8b1fe5d591fd25828a5114c0f8b3b6e799bb69adcfd03566c7959d1db21b6feb79e02006d1920ca35ceada75b22a0b8235e9c6182872377b56a762ac54a719d8aed8dba18ad925fd21c77e84d92a75f3feb8692144f7d28 5954bab512cf327d66b5d9f296180080402624ad7628506b555eea8382562324cf452fba4a2130de3e165d11831a270d9cb97ce8c2d32a96f50d71600bb4ca268cf98e90d6496b0a6619a5a8c63db6d8a0634dfc6c7ec8ea9c006b6c456f1b20cd19e781af20454ac880,93bf13dcddef177eecfac1d8731237cbf8ce4459adffc34289016a689e88e5b000553f08989ef2b007acb4ac69edeb6ce2e5a7f85c9d75f7656858a7b824472bb89c2d25701ccef18e8707d2c3444a28ae245d337cb3dbd4e2000d7c44d474ccb34033ab203d9b1ca69816ace4569771e1f7f66c7e482f81a332d8d16d0a4ab5142df5742570acd048c52e8bb777d68041a67e870946aec83db5464ae2863020a4126ec32e1d64b5b1a21425c66471c7fb6c5caca4091a96ace9bb25dfe5627562892149ef463ed60d03549cb9643e9bc7403b244a0e9a5a8a38fd785984661c926fd959117c229ebd357847f853768f632a0a2a0f1703ab5e130524a33f825731740ad0b08df92f8ff6ee73c1e60a35ded2882675c6a7941deff0d934bc2bce9005dfd49a9ceb0f08a27cc972a66232a068a93c2b4a143c57387c257218e850cdaeb93c474c8b5aec355bba3a4d0b09fa9f7f32534caaa727120c2d937cee1039de63aa5af5803f7a1bb2f203c87dab85aca2e68a88c9c7584c1444024109f9e02cb994cd7c89e87b976a6bf7d75e570d4a11d15640a4235667669bafad64cf940158bba56184aba70e6097ee4f2379727f7bfc5ff67595b3dbbb7efbc13ea4aa9c1093ee2174b5f0304b10a089ad1980c8a64a9b4e29f68f2bce9ab7d31ac30b9ecb5e009169413b64d661e7bc6d909396c25ee3e64de744ff937f2498a361 03d9f92b2c565709a568724a0aff90f8f347f43b02338f94a03ed32e6f33666ff5802da4c81bdce0d0e86c04afd4edc2fc8b4141c2975b6f07639b1994c973d9a9afce3d9d365862003498513bfa166d2629e314d97441667b007414e739d7febf0fe3c32c17aa188a8683,0da9bf94215fda7f85a36b7d31080f48fe09c92514a844e7f8e5a54e422997be17e0ead0c8caf75a27b4d721f63de3f4a9326e74081ec77a71de52aa4e7df346c7206c8acece21f739352b2efd6446878075b585735471a189b32f41cf0c48c0e92bf492752792d05e324fddbeaa786decd3c0e24be3cbfdf160f45cd87cf73e61c643e46772ef8c62daae119e0010fd84530025ecce198b2b86fb6e8ee88f6c47f6b4710e5764f405e7856688ef030e5fb84b24b48292df29260b918dd4fc54c325708b83a9e44ab92f67217b9ea0a488c9b45920b76a7644c38d36f9ae1a48f56284cc354bf35cb53f0e7a5745955e0e9a77400ecf97b0dee9f4b32e8e7dbb100a1749762821ac0746ccafeb49162b0115b4e3d26eb3b9fbf662cdca1cedaf5ad8933c7ec1ce6ebf154474fdecace144f8b86e24b85c4ff0ec29736bb0b778ac071d2286ea20302c98b6883520d5b4ba22afbec4b6188fefeefbc487d147622b3e97dab9319dcf6c7efd3374fec69d575bdac70d400923234cc41435a803dda6f1c1e91802f56d048b5147a1b9778fdce25afa4b0846d7d5fbd04614ea62263370b4caa6e87e0b6d2befca78e6a0b7e5a6b5e891f7bf4accb221359c98b3091c75ffd25805ec452f7251d8720ae51ac49620c6ad376f13a16a269942842facd25c2f68a4b93a5a7ce9ed38c7285b2777af32307d84a84cc5f937b7950689cf f31e8b4f9e0621d531d22a380be5d9abd56faec53cbd39b1fab230ea67184440e5b1d15457bd25f56204fa917fa48e669016cb48c1ffc1e1e45274b3b47379e00a43843cf8601a5551411ec12503e5aac43d8676a1b2297ec7a0800dbfee04292e937f21c005f17411473041,5bc15e410825d711c7219161491c5f068dc27d0b66b5a7f0af4f86dba7392037e886d236ffc9ea19511aa43fa27dd2c4b8026d074b3033d7184c95858db5f237a84e93065f9aa4b40123aaf318356caba01c20c97df8ecf528f56b22a927c705f6db6c2e64b60d36fadb2d867c0f5a515a2dc7df26b151d700e43540b82a0cc2e105269eb6cabd3148871ccd3b2f36b101d051d60e28fa838c67e8f655b1532976e512db752a2941dbf6ffbcfc0afed99d379d4e86b8c32327f6105bb75d7669a2d69bd7a2c40df3b13899377a29ad7d724574f545cd91a67659b3781b788b4e9efb137be1b3b8d93c491bc70581c241b184c915b651737a0b2a99b50e8786df067cfe443879d4bf2efa9970a2c214e538c2086ac7bc47da706513bfcc4cbc6d5f387a9e3bac080138f2d713c6c9aad2e0ce7a938adf4bfa3cf688cbe7e22fd5707eef2d707e5004cf90dc880e3af23a435a2682f9c117beaeb8f5a57f521708ef7233bc6ad5750df2272ec379142283bf5ef492240335740f43dd5042124c9b37e726438357472013abe81abe2c32e8e859e4d064c3c4220e5f0b5dc984eb1a8bbfd6db41470174bfb8a1ed5df559a65b1ff02ccfef42dd546cff79d34fee13317be00eabe8c6ff6d722d048eb757e7a38c65ca1a7b2418994d53ce8090122c94a934554d0bc3856e041d0a29f8539246924f7634b5265708208b4c59dcc084 758ea3fea738973db0b8be7e599bbef4519373d6e6dcd7195ea885fc991d896762992759c2a09002912fb08e0cb5b76f49162aeb8cf87b172cf3ad190253df612f77b1f0c532e3b5fc99c2d31f8f65011695a087a35ee4eee5e334c369d8ee5d29f695815d866da99df3f79403,d289fc6490f9dfe3335fe9f43131ade538280b78dc2e16822d5fce70e0bb307fc497e1390e04108c66c682fd6edc0b47450ac2fca43c151982f2ede9f82196cab4381f873ac6e21085b2b64c21a1a5dc59c440adf566159798d6773a09fc737b6cf1bfe0cd0c9b90346f1290de5e6aecc1f464e1b3e522df1a986d8ad7c2a42b1a6067a3448fcf9e4bbb2335a3e4276b330c421894bacc448db09f72751d2ea50873a9df900c775d5e36579dc26830c37851bf456085925185b91ccf9a35b36e5358c4cc4f1c807d285421192be028cb7d5d3db67aa11ab666382641abde3f1690490de0d556b0a25016d5b7171ae26592b5c460e41296c01222d074b8c53a9f73aec29c63e54ef0d68fa1e57c604a2f4302b7af05b20d28e5722b0229eab76fdcdb1d2f7e58eebe4bfcc82b4e4b6d5e6faef0ac442b78b483622ebcd98efa538527d4c0e72526d9cfd1f13e24613be03a79ce2612b19d7c9b639d3c2bad28e968e7859d224958c017637458526521c770dcab61a84181cd0e92aa485ac2d3883070e8db9fb5f06eb5e71d10c175e0d7ec69947d1fbff8a857362383368f52c193efc3df83f5a9b6ddd53d736a3543d46388b2845632c00f0676715ce8c1aa3329515495eeaf860a9afdc9630b06e9b5cedcc7cb571179f35735d02d185d7b03eda48d30fc86c239aa3580816f3af360fe78e84364872c2cd9ac5eba876af94f 47c6e0c2b74948465921868804f0f7bd50dd323583dc784f998a93cd1ca4c6ef84d41dc81c2c40f34b5bee6a93867b3bdba0052c5f59e6f3657918c382e771d33109122cc8bb0e1e53c4e3d13b43ce44970f5e0c079d2ad7d7a3549cd75760c21bb15b447589e86e8d76b1e9ced2,b8c21de1f120c5744352eb71eaee81e9de8a8cf6ee3e2394438013d9b1d7780803c28186e334a34b4cf17550aefb58de785e358d2aa6a61bd59beb1b2f494cc9976d67085210d64fd1c8ffb0fe69814c2048d0937b17e79ac9ce6303562065d4c79438e87c7687b8b10ad1e8f9364eb9ef997b09b963c7a57fa9eafed8571f5ff9b7981418aa8904fcc2267f3723fd67a427e7cd3d5ee6620be53367aba1bf9d2ee74c33be1049356cd8a3b4ae481748872717394d6793a25cf02f95b6ee62efd8e269841234f07041d5c3940c7bdff37686b8e72c23342578fa0db4dc21f4dc03d3539b851f5441b54bcd991322ef0fcc85c14def9be72b8b4294ef34a6620854c291f91ca67152b48560683df13f4de00216180391aea39bdd22d563e48cc622bdc72c990f795cc6cdc280bf917743a04854bbcaa2cf64128de9c42e38b40107a97f71cd1b89dfeaf194674cdb35e036b45cac35c45eb2ed6bd9f8acb9402be9e57acc00e0ab6c5b32eebb9867878c23f4275dc2a8754328ded15e206ae31b60beeaf27f7e2a571c42994414355c28715621d39566fcaebe6251eb5955fb8a9b1bf4d897a4931c5e7c29f27f28ab4d2b9950a81dabba7ee63b679df6e5c1da4e23bb9529946e4f467a73ef02d1ff59d7141e6d59e14450b7a35bb4795eaeee51545563bdf99bdb5dc0b17cc60fa04dfb3070930ee46577250ffa863528a498 f690a132ab46b28edfa6479283d6444e371c6459108afd9c35dbd235e0b6b6ff4c4ea58e7554bd002460433b2164ca51e868f7947d7d7a0d792e4abf0be5f450853cc40d85485b2b8857ea31b5ea6e4ccfa2f3a7ef3380066d7d8979fdac618aad3d7e886dea4f005ae4ad05e5065f,f1e1e702011f4a39197d769a6af63160bed980db70888266afcb744a8fe41f1bd9a1b668b4a96a6c3c2fea3ec1564592134854b26e31102d1b95f112118c959475aa6f2dfc300e389fd061fd6667db36c32055901609ef59b3a8de4f9bc05d52745c78e8d155738f30eb3a8e3b61b36ad34a6bf7c59b59c1f973b9f94c9ed61a746f85610b060e8bd04cc9691e7979ebde5e9833aeef21f9dce96f61a21d2b8864f07fdcd6d3f2bb3db29cecb6670e859a4962a5fe0179236be7426e9c9b2a0b97d11b6c9e049abaab494513128471f88914e506c6a5006ed295f436410cd24b4cd1ec5aa0ca7a66e29df6c362389c7a9b731e0720400c0923bd8c4a98a651b62aa8aadaa5fad481e08a17a2b3f86ad23ff6303463da6300b47483f7696962d33af1de2739c30346665f60c90fa35b74cc240d3831c01ed8cb91fa34a584dea37846cf4a0b43b5d1c26597b2aa1c973a070f120f08c78a9fc8d524fec1f10274f03a4a7e8e8c4c1fdb415a1ab18b4c1f07e1936f81ffe7f2a0a1a815e2f29334f1b1e8029e7e12a798187ccb20f6c1eaf91b14b61b2fe4c3852bc670295bcdad418ca7fcf39c69fa9f9ce54af17e695f1d614bcbd49fee3935238ce59d9e378f3e596b34149149e14d9b81f0bb09c2df8e6e632436ebd525bbdb657822940d25713b737a2dfdcdf0b4f6dd7920a8d1e69eaf7b764d0a469cc1ce6deb70ddd69e 58d6a99bc6458824b256916770a8417040721cccfd4b79eacd8b65a3767ce5ba7e74104c985ac56b8cc9aebd16febd4cda5adb130b0ff2329cc8d611eb14dac268a2f9e633c99de33997fea41c52a7c5e1317d5b5daed35eba7d5a60e45d1fa7eaabc35f5c2b0a0f2379231953322c4e,98326be2f713456ec96c941fa0b58e311c226474487f78734c8d0514afde43293116d6c33fa3ec687d1e9087572c68479ae1080ff8b2238c11aea13d9a020a7b3feee56fc2fa69914489ee11b17cb9d3af448525c3992232b58f2182ad27d93ab88b22dc94368d10b112aaac096dcd8ab76250984ee4e4d3ccab7fa3124f7b02d05111d97ef0cc52c5b8221383a6256c42762e546acd6691de9810fc2271d92834da1992cf4031b98cd0919e01d35dddc738d6a305c6e400049a97e14afbf40822558832d23165cacaf16a514efd6d207a95f97c330ca333c810c19aefae12f3aa267cc9fcab0b73d2b7e5f3b007cd8055d0c4665c9c53fc818a53ecd9c0da776eeb3904409ed63b337f755cc7783da8cb713b51c720c2826711ff36d98723c8b00c4853eed1b3e2f8b8d74ecfad079a49f37665de5031f2fbf54da6f1fb796913b9dce2ba1206e4255f39c314a34aeea01f1965c36caf89a2f7fb9eaf7e9c97e2b70636abf0ed00f59d1ddad409ac33055e6f7517e962bc535eedfcbaec203f91fbd2b13c26a20f9c2236c55f4b506c7aea579ed3a0204bc67002d158d80139379dc23da06b0defea079e8fc1d51976757e9a455719c45b8965959a2958e75b7e6da966b86029d22fa50841494303ab6b16600324ef918aff9df161224f1a7f26b7df364772724d4b1afba11b5c114563f9da2604a2d1b60bcc3c116a5e9c58 befab574396d7f8b6705e2d5b58b2c1c820bb24e3f4bae3e8fbcd36dbf734ee14e5d6ab972aedd3540235466e825850ee4c512ea9795abfd33f330d9fd7f79e62bbb63a6ea85de15beaeea6f8d204a28956059e2632d11861dfb0e65bc07ac8a159388d5c3277e227286f65ff5e5b5aec1,d539b406312a6a14a2cb8c2b2bccb28b7c164dca4bc34564e65b807f59809e0844fc897bbda2fd7a0082be317b8cd94c2b2dc8a625691d56ab21a2c854cc6952a4374cc34374aaad9090326d493eaecc945848fc4653a15e2566a960cdeff139508882b766a1ed60cd292c696cc75136a6dbc0bda628ed1e16129a9025d715b7f83ce3a35f4efc7178bdad06fe6030e086d416775be9df9db66a365f56129f7b25a8701502bd36cd439a4cc122da4d78b1d832f5033123d9a9d72ede2ed7d7815eb7a3eabbd21e2e507de4ec4aea0b40792337953dcd9d7bb952f710f8bbcd7e8cc1acf3b7ab4eea9c066d9d0d27aad600405ab5daab1fe4551cddea659307b7ed1913bd8635aa409754a1860377e0453a63ee7c2c6cd1a33099a81240b92382572caf3698c809237548002eafcea5bd042db3a7506189e3fbb4dda6dfb1c95be136011fa127b0fa3a4a386da3c327b072417bbc5346a5060d770933142b6ceeee1021bc0de076c2fc8ecf7a16a6cb752f39b8fa1ead88a7d4364204bf613f5b108e2fb60854f801210180b9dc4757d145e715d4e2d79a7d4e8aa891977dfe08a92aa423a05d22b06c6a3d1ea5953214855be7cbe9c2e62f2a7171bf014f3f077ad244fabf9c1584ee12dfcbea4e4816c470aed4fcb900a5175c35189380829e92805e47969ff5a1c3b52fd850fb404bfe189866844e7b586dcdcbb236910011 8e58144fa9179d686478622ce450c748260c95d1ba43b8f9b59abeca8d93488da73463ef40198b4d16fb0b0707201347e0506ff19d01bea0f42b8af9e71a1f1bd168781069d4d338fdef00bf419fbb003031df671f4a37979564f69282de9c65407847dd0da505ab1641c02dea4f0d834986,60565a24b70c76463cdc5397bd0c077b77cc70cf33128a0366a7c30161e21c32f2f024511a9605040d699e1410311ec3e8952938c91d73ad71803be3f7ab60e2aac7a91d62fc0729294bcbb031ddd5926f775fa85d25c85e1cbc349237f9d1e400e64c15a797c1651fbe5b8079d586bb751e1b765c36a40008c9c612a8a67c49a2d4c15001562d7f7197ce107aa7601e490fd3cee738d397a5d9e1a9568385a243975b9aef5e24c4235cb3612527b7abb7dcfd22a124f9bf5e1e169f2f58512b8ab04f4953d40e6b1d4ffb920186e4c0751f5d8516f142c426f3893b6b4f45567461059968369b3d333b74f9a596e7585c6646af458173500b052213ec6074890af149a6554a92106868a64c3957f43c8730dfb3136040ec688adfd0e79ea74e07f6a6418656343d24e446013add76058241f19f5cd42f256f8e98c7a5f7b9c4ce3f5d19cfae69af8de868ffb5807dde0c4a5dac1409297c5b8ad27c1e1b8ffd570bc41f71f21af7c9639bc6502511ff9d6cf63bfe2e8ae791b50527d79334cb87d9bca919833d7123b8d77f96d07106bdb50a3c4b9860e5e1cdbfe4b49cd4063d0c4796bff2fe1507f43cee6ca6bd19038cd6b7118120c25ea0dd1bad05018df08db67af168880c284daf7dd33a7bf18248ba7e79bf18b68c3e14664d0e1349d458ce7e128999cda5ee706fd48fad8d0489ca8c5718cf3d2c16563178ae3309 b55c10eae0ec684c16d13463f29291bf26c82e2fa0422a99c71db4af14dd9c7f33eda52fd73d017cc0f2dbe734d831f0d820d06d5f89dacc485739144f8cfd4799223b1aff9031a105cb6a029ba71e6e5867d85a554991c38df3c9ef8c1e1e9a7630be61caabca69280c399c1fb7a12d12aefc,7fd57ac85310e74667c025609a2cd37d12eb3fa49f9d9b9aa4568c1300c4b5fa69b6591f82d4c7c5b25ee6f4a6e2521090aca1588d75b4f6bc1d58b106e825ba2409f84be64ab520cf4513a7bff52fa7a67a761b86e9d749ffc71532f202a2b619ff772ec25c00c269e7ff10ec38b93999dd8bc7b3db40cbe870cbcee6c0a6842a72f978ba9af677cf4f055762abb1c8da60cf57e9352c48b0bdc0031fde8a146b8d881dd4d0d05bd5d14b52c89adb6a27cfda2b3d7650ea650bb75d86748a722d7e3003e10e43d89ae21e9155231556b7335f576a922248ea2040de648a0d49d8eb88da240e586deaaf9895cb2f35cdfe60e61d6643e5b38fbe40e82bcc8462fac98f078dfef5d42e1d562997ebbeaef637fa8f65510e604e99933d92798ca05dfee0e935910be5086dbc8ba9493ce52cc49b85b062164f6be8ebfb4f0c27641b65c397b92182a47d4e926c6d6947aab598ea0d012efc47556ec7f6407a2dfb3cbae71237d968efcf9192379384fd2dda510bad5b30f01852064938a17c38b6166170fe15f09f645cc740383715dc35c98f6e2738473d324c7c6f63e76124824554b0ea34120facd2826c7f2a717d2817d871babacf1f061cac045ea61bed8d4aaaa1d41a277e50c09606b1786be65e1abef10f6dc6d28eb8206d3e3b8a56fc83728291420acbf606c34b2b3e852381ef31556fdaa341e05bee90dc9ab7173d 2eeea693f585f4ed6f6f8865bbae47a6908aecd7c429e4bec4f0de1d0ca0183fa201a0cb14a529b7d7ac0e6ff6607a3243ee9fb11bcf3e2304fe75ffcddd6c5c2e2a4cd45f63c962d010645058d36571404a6d2b4f44755434d76998e83409c3205aa1615db44057db991231d2cb42624574f545,cc03a5bacc26e1580f37813e60005111261ae521159086c7a6c3087e238d2731a02be233200fa54bded93d6959dd03b71a1a4c7cca20e9685406f70d722dfa1718b3a169be6a8c5fa275eac81667046a605ae8514bac24f216358a27f036bb618951a1ff5aeca2f64fe1571cd01ec7139f86d370bcba6a721520bc115330398f55691d7a212be824f27aa10305523f7c11262d2ea2520d72af1e34a887bbb4a8df9966fdea757351eb67df1df9f9dfd7d7892d3cfd1f0b8a3a16ad5055d5904ddd900e4a5f94941fa796e8f32a04e807ede1958191d58551378a57087a62f48e3ae2852ec03654cb142d2b851c5995324d15927f3daaaab188ddb6665e08596b71d9c2b740a15f8e78f02c6a820c79c3223a98d79d225375f6375ec21a5216a9d01d0238fb456857e7d6611cadc2df844d99c6380cf59e7bdc268ce91d733fe00ee99a50acfbed98e6ac17dd8a377ee4af9f318baf14143ad4873422dc56aa6e4dfb6b0c312ab14f16105d8cbeb7f57da85644005ca4294fc8667c1cc1fc78256562cd7aea9779899f431fb581ad6ce91a46f003248a42bd286e9f4a0909dde99e2ff674d4d5e71eda126995da15f9c00f11ba6691e3614ce6fff05aad6b7c63a72da235e900698d09ba3787742ef61701eb25c3d70927272441709d2625b23fc97fbfeb1fc06d3693509424ff5dbf005023ce06d80d7956d1dc0030bae8d0bc dab11dc0b047db0420a585f56c42d93175562852428499f66a0db811fcdddab2f7cdffed1543e5fb72110b64686bc7b6887a538ad44c050f1e42631bc4ec8a9f2a047163d822a38989ee4aab01b4c1f161b062d873b1cfa388fd301514f62224157b9bef423c7783b7aac8d30d65cd1bba8d689c2d,fdaed26927dc53f12f002a9c47467a4eb53d941b08106d6cd0bdff6021b6ae116562d2255562f70be884427a8b6d593e0cb7040addb87663e5f03981992435c2baace87c49cdabda178d0663cf81e96c2edfcb6d50d48ed128128f6f3b56e33bf33187bccb5c2bceb418dacd4c820eaf880b80e32f00b7105615ce305065716316221019a84ca2d29fa57565cea5239484b8e9740ae07048bd0f75b50827c138979fc9671b4e684952df9a681e0c7ed8101df50620defd82132ec81f5073991e65e1dd72a52b596cdafe6c5b6d9205533ef15d137a1feea7564c03e3a19e2b9f40600ff1a66a241737ef7faa29eb83793bc40d1e48cdacf3936c499b572aebf2def5086354df7dfe682b9c281f4cf68405d0268168f5495913f930b6009357867398acc5f951d55d854b0c42d2e2127cac73ad0b75139111414f6d6a68e01cdb794ea6e524e45a62a82970d22168f37ed72575a513751368718af490e28acc47d2bb7d59f567daaed80093929fafc0eba01f66d67dac97a99886d0b11ec0c4c23a593bbf05f3f80a047a07c883063a9fb967cb9a796d18168d0a7f731132aadb3d105b1475c583bcd4b939015f460fee9b6f23b0d3bb3e2e7b7c5615ac8ef7305567397ec4c1de8ef5a05c2a14196ad00660dd0fd11838a707c0fad38d343ad9d65056a4c3701490b3ca235063d7d21bf02ffb2e0da3d9b9092e20da716bf450 42e99a2f80aee0e001279a2434f731e01d34a44b1a8101726921c0590c30f3120eb83059f325e894a5ac959dca71ce2214799916424e859d27d789437b9d27240bf8c35adbafcecc322b48aa205b293962d858652abacbd588bcf6cbc388d0993bd622f96ed54614c25b6a9aa527589eaaffcf17ddf7,f375fb504784706dcd5bc3a500bae8de6630009d865739a0b30c81c74e0379a59996410854fdff996b46f9f30bedd7dba1c5801a68d1d3792119d7feb29a648e08502ca04637afb9427027d59e9da235baa4d602ab2ff257bb5fba4aa79c9d285e99fc4314685181020c2e9c1cfb22d1e7b1add9c037a7f81b7e0135f9628cd67b8591271bc12d025322bc21e7bf4e91b049e291da2828de012384aa65e3ce26f98186828a3c144a095d82bbf5a325e41dc28a33828d9717baed4bb8bc50116cf39c8eb6df037e29ed6a32fc5039ec1704e199aff83768e58f1858ed741dddcf75e8b2621bbbe14420217cdae7561c24213f76530204141ef5c7ce0a76c587c2223181f5f2df58ba5d89ebd209c004f5a2155cbd896a17701b19d5cd5d555f2a964bfbef27d22fb428db161c0ab99d040af196efb7640efc55b7ca8e1bac86f4368f612edb120e2a7ca084b9f5ef8da0a11136c760dcf4426ca98f20514049bee2f9e6f66aafc4225cfbd4397bbbfba872a47be903ee0dbebc7ef85a1395b14504c18a8b5bc5416739daa543dfad6b4b8a88bb87b388a6974ab90756e836de528869ea2734e75d8aad84ef1a60bd371190808436d5c7632a2f027c3ccfe8f3d94b0c262fb7ac99103b0688238be68f26b8cf35876b6e214ed1973fb44b9c3f3dc7d7296be8e150f82e80594e34a3e008ef40d9647ee26e1e4cfdd8dc673f2ac5 3c9b46450c0f2cae8e3823f8bdb4277f31b744ce2eb17054bddc6dff36af7f49fb8a2320cc3bdf8e0a2ea29ad3a55de1165d219adeddb5175253e2d1489e9b6fdd02e2c3d3a4b54d60e3a47334c37913c5695378a669e9b72dec32af5434f93f46176ebf044c4784467c700470d0c0b40c8a088c815816,98d27ac62145261bf2cdf99f8f77ac04697d2fe6f1531d3b1e113a7bea4b9be780394cde5ec43ef820b0d39e20a287b29390a68091a8938ef5640437a0f09f5262bfb4c55f703d44e7e21eb69c27566b66bdc95a525b988be281243dac0cef5e04195b318cdc96035205ccc556ad42b220fcb0e01516e66d8ca2d045ae0af7fff91119cd4c92e664fb339203e8c0b3766c78874dc85d48fe668bace760a96f5d562fe4ace97fb33c93f160057c0475ec440111c46777b0e2c95df666ec753057596713ff452ee59dd7e1d4dc278238518e23c78e8882393b86427e8f6188d7a08d770b2d19e08ca672c89582431f30cf4a0ce89e87a635ec2e05765da600115b704e35b787fa90ac545877ebc8a5616eb998380d4ea1c6b127844a422789b9b3a41daee940f75cf975b464736616d80d89387c171d919874f38453af44ed16888212ac279d4890cbb5672254d76d5fb922412a2eeda598087558b1e89528fb1ea285303ecf4843b18edaf6130d1374273dede9eaafd6e6f448547e96aa385235919600e4bfd04cc2bdd89e6860adac61e73e37c563709f3187439a305b9ea8de8eb552a615712451d1da495a8e02b9733aa1f7b78de6c0f0cf6a379959efbfa8a78cb6e93a758889d826d7e3dc741a10bfb55544993683b2383419d3f5bfbab13eb1ea0575e528fcdd10fedb0c0133c8e78fa0dde413fd951262e0cc958d2850 d1e654b77cb155f5c77971a64df9e5d34c26a3cad6c7f6b300d39deb1910094691adaa095be4ba5d86690a976428635d5526f3e946f7dc3bd4dbc78999e653441187a81f9adcd5a3c5f254bc8256b0158f54673dcc1232f6e918ebfc6c51ce67eaeb042d9f57eec4bfe910e169af78b3de48d137df4f2840,6095c8caf02d995daac5f6cd94a33fe0cfc2743574b352fc35a056135d20be12fa7826dd41bacca18c90060c08c5bac8b3e706622a2bc8aad1fb6ef93259a5b8092540f68497f09e47476f9d94111b2fafe27cb04deeaff43a435e2a5c0e44aac6dc3104453896c9c702e8f59bb61a62acf889174955beac0319fc897bf989c97307a997f4570f3544e5a003f22a7c5295705201f025ee7d6b5b278deba559ffb82f22aff5db6d534e6c50fc4e55fdaa0dcdf977178db7ac2d98416a6e0f5ab5a49c29e414bc0ac0122d608a592c605e418edcd083b26429ba0a1a53584ebfeb4fc005f144f04ceacc971c9edd23950a1b7e6a4a9308c517ff80ebb1610f8e78d963e222bf148659bef6b0c8be1f466fe786128431a9950d3c70493d1cd72731d0a3c956e34f35339aea578f614806dbad3c02389643340db162661003d2cf42f1c913a7fab77ec3b9e8e3177dc0394305c21d6e9713f34516cee321992e4bfca4db5dd03e240a7fdbc83826efff82e2b36bda326d8fd0c858b00e02a83d0df7216a475cdf0a37b0389095f501cf47c497e23f199d711991fe71dfb56d789f30c86d3bd17c8bdef8a797bcfd3ebcd5e62cf99ba0403b79bbc8a0fcf4fa7c4e65b674a796af85e7d09134fe214ce8355ee337faf6f04660753c1a96d95964e587f72f0fa5bff435778084eadb1807dc66772850152aea381866202c8a38723121 626f68c18a69a6590159a9c46be03d5965698f2dac3de779b878b3d9c421e0f21b955a16c715c1ec1e22ce3eb645b8b4f263f60660ea3028981eebd6c8c3a367285b691c8ee56944a7cd1217997e1d9c21620b536bdbd5de8925ff71dec6fbc06624ab6b21e329813de90d1e572dfb89a18120c3f606355d25,765a48e25ee43ac1630c65bf5138f5f792095e182483de8887f0f56abdfc0526a5b9ee792a2533409f3fcad2b9cd43d7cfb5454194344169dea3fc67ccb5b9969449454e18869e7cfd821ed0f3d655f5b33c528bed1778bd504b2c84bd38dbcbfbf5cad7e46f37394622c4b065686773ac0171ef70717e8c6a887ad952343d02ee96b4129b3f189c631a719910f543540de4ad65993b634afcf313100771468c81b0e270769abe2bd6603e525682aaf172cedeadd12d9389b86dd6459dc490cb89a637f6e24c5819dfb51c817a3ac9837092d408c6816b57a4b0dcd0fd1c7ac49fc012bc9c22d16c779066a670252515938764f4e05fc57908fb67a3c6927b4639014aea06ef91f8d43e507c48a567f36b94591ea1319d7f266722bc9ad6f5cb8196994f7ddea570720edd94e6c56d215d8290cf0227de007b71e80b65301d53363d51c73303fdfe76a064bb1169862a02f541d782fc64c3da45fdfe2fefbef8a9383690f1d6c695855387cc206b9e7266d6e6c9a2160074a962de01febfabacc6e88cf7f724cb4b2f09862d63cfccf1d880d956e7e5381f44568de6bada3923f2f09cae80d25661b9431201c1918df1e442f26710314d8b3f88e94502e6e9514c2efeec7a816e82517767bf7972d6329bb54ad1bf67842c449f54c8cfe2ffa312129995f17059f59e7ae05d21ea17f8e93c1ff4d9e2e71c9ecc9dd5512fd374 651a6fb3c4b80c7c68c6011675e6094eb56abf5fc3057324ebc6477825061f9f27e7a94633abd1fa598a746e4a577caf524c52ec1788471f92b8c37f23795ca19d559d446cab16cbcdce90b79fa1026cee77bf4ab1b503c5b94c2256ad75b3eac6fd5dcb96aca4b03a834bfb4e9af988cecbf2ae597cb9097940,270ee64e434d9cfa8a81b256aa86959d6d9e92b10325a1816776a309002e7c9346f21bfcbeffb2fb31bf7214572a7f437e3450af26743b418cdea45ae28557078d8275e406864bca916f178181caa3396b8582b04148249102d761111507c48722506d0314a05767e89b3d9d5125a43a2b13ea8827ccecaeca6cbc864b8b7591b15bbe0bf1093cd15c5c14b4b3705e37cd97752cfcca1c1a4340c02298b028a633cab0e218525e94c3e150eeb8ba36c3ac4e8eafa5ed05d9a79519cee2a8b8eea9d8ebaf54624acb2bd593cbb353bd2f577cab60508dab081bd29200e9a9e9357978cc15f4b98a383c4a46594303143ad019d5bcb052504efd2ecdabd1731db02d6fa4ac9e1d3037b75b7a5cff8702f8eda7f2ce848a0b96ec2f7c62bdb1e23dec39af110a4e6c0597d61c8aee900276fc7b1ab2f63bc9874a00c79705d87de2135218ef233c8939671399a32c02db4a6d779f7f933e7f7a467d236178e2137f1e5ff53a3e8fbbdd8d01b737ea95c762b4d4d65bddf50c527e01da1a322151757e0f10525196d3293e1443bc7282496f3da971869ded47ddfb7bd99e799ee60fd3cc31bd4b3956daf6d70f79d4a5e4348004f526d90ca47d7c3a9eb09074eeb00d799f14de7ae5a4615d87496faf2c60d1074c194e7cdddc0765c7fe7c6fd419335189c2d584438d3879c50d43e6cb25d5776b4802819c5dec7cb2197b334615 8aaf072fce8a2d96bc10b3c91c809ee93072fb205ca7f10abd82ecd82cf040b1bc49ea13d1857815c0e99781de3adbb5443ce1c897e55188ceaf221aa9681638de05ae1b322938f46bce51543b57ecdb4c266272259d1798de13be90e10efec2d07484d9b21a3870e2aa9e06c21aa2d0c9cf420080a80a91dee16f,652a6b87d0e770909bbaa2172f47cd05b7a07b57d9ec47396e9cca40edb76b99bae0a8fafa517d12ed62b5e95ad89560f3eacd241a2af24bb1f02bda6f0a5acfa85f4f86cff75be9e7a57e0f182890c39acb6de889d24ea360dd5a4c59e54dca7306aae46768205c3440ad777a853dc8fe2d2ef2e6a5fdef23bf514472b89405fe1b7342aa4fb448e0eed8a46b6f259073057571b03a4df2eaf696838a51449a5f7dbe9644a9d092ac68b9a30034460c1891a389d06a2ac3165eca91f203ded47b5192c8f6aa2e5fabde178a012d94a8a35a1d446d08edf55f4e4163c2bb9c46025d8253b3f062926d17f853728efefb10d69e6846bce7e7a037996654e1c36c3a55404a1fa579a1d55fb95b30eb61eb14a29bfb54878c0d59a4209e1c746f7b2a2f2a28bb19a5f0342026bd807bb366363623bd68d4c9d9bb42d2ac67df49dd3727f4d2aab52a678f6f98816fc86ba0073f4afa336a32cd55daafff5d993926522d770aa44d62f6aff7e758ad33dae3c642318894c2da99f43adf2f97e53ba48657604259a8bac4268933f1b97bd47fb30f95ad284f8345d6e013aeb9dc2478ce49ceb054555d25e36b13b322e51bf1c1e7c062e328aa440f87ee883c7760fe2f86b487bba73163a13755e6cba804f0ea6399e875bdb2966d427933d66d82c4d17faf6cdfbcda36f09621a3923b4eb93a27e44796cd1c1770835b83e89d28ed 53f918fd00b1701bd504f8cdea803acca21ac18c564ab90c2a17da592c7d69688f6580575395551e8cd33e0fef08ca6ed4588d4d140b3e44c032355df1c531564d7f4835753344345a6781e11cd5e095b73df5f82c8ae3ad00877936896671e947cc52e2b29dcd463d90a0c9929128da222b5a211450bbc0e02448e2,2716a3a219bd690b9b0450cc0bf4f0713c46c4c02744f8f71de261b94159278566583d4dd04cd573e79c576c1f25834c91d3af69f3a301aefa516082869f3ceb0f916a903d902175ef29a0b29aee92cad8555a26e7cd0395bb937750246a8d5a722dcade4f44459a15ecc29b207fd8ffb8510722d925627372d86528b9b513967b5bcbbb233b459afb5aeace48e5355c3e7a387f9dcc9a55773276d14c85b8eebe3d211fa08cbdd8aac4656f028fc16a6d6083a969bd6eb5247695d8f6de51c036a743d2db7480dea41c228ffdfaf129bcf0d0d5f7644405ff8af778ad9a63eb54f62e1517ea4cfaa92f2f25e5f001a562b6b4d28bfb398c26df8e88c288aed5b7afe8686aa4aac77c032d21203fb7ba79707a7e00371f56fdfeb0e607252448cda319c39447ecb7c69f36424d74e33d723ae53996b35e5554182015493ae03daec5c31b00d481cd430f4723677c7b33f6e325a855300e66db559ddbccd550de02d797d6b28a1ee01fa13a62f721bcc577a6c3363a03ed976391e969379ba3bb6bbf99271f3e5dfadddbf0bb32db9ecd658f0da2863fe8f48ce2a13539d8e8276c083c4cab1aa9d92914acb238c3ef0a5952e5686e39d2804ded740e0457f69fee9489b7e548514feb18fce21f265dcd56f0081528a24fca7595e96d31caef0969f56b122749c74fa108c41d34902828b22f814bf352a1b5b52e9c65f75f232e a64599b8a61b5ccec9e67aed69447459c8da3d1ec6c7c7c82a7428b9b584fa67e90f68e2c00fbbed4613666e5168da4a16f395f7a3c3832b3b134bfc9cbaa95d2a0fe252f44ac6681eb6d40ab91c1d0282fed6701c57463d3c5f2bb8c6a7301fb4576aa3b5f15510db8956ff77478c26a7c09bea7b398cfc83503f538e,6995a90158ea5fd54f6d4da0c129b92ea3e716e196de4ac014caf106ef4cabdfb9ed799545a0e53e32aba2ea78a6c7cb936947f79817d200f32053e81d10131278cbcb903980e13125c99b1696f26d355882a107fa65fa43766c929485696d56d49d371643e9d360e25668b5b7bc7cde13b678723fdc4598b60b6b19b47791ba99f4258acd94604f26d5587ee8dff613dd53e083cb2b0a202930d61435601a1d3ca8d97c198cc278967ba493b675d2f42cf4f41072b7a9403df36e0e15b8811e37ce1119542c5168c95396653f72fc9e59727de36b693ca58fe374aee8defc657035fc874b7851ec0dede274be064d258c0b39a238d2863bf8b7ebd0f7e2c3fb2a7eda6800dab2def61fa8f5e6891652796c2e9cf586bb0549f6f73b3374a4d7c6345ff73fbf99fb25ca47823a4b0470738aa67cd26d2eb954ef40a4121dfed58a1741ef335e8adb32a588452774ff26b04eae29ec1ac3bd83d2f3a27af2a464d29589aa837890d7711cc0af76ecd6142eeef1c904c0cfbb287babf951b8a10281a7cd1b49d766704350c7612a74606d2bb80de11a37ca9aaa1ccb91f4aac8d382a5a16e0cc7b426065f3af566592c51b52bbbf007f4f4b7910dd0c7042406f61e5efb6e04eaac76e07a7e86c6e3a5706b833c52bddf814e1261724f97da9b7887399b7fdcfb14321d8a16683c1dc615ea8c738f0bf6076e05855f80d8da43f0 0e3ab0e054739b00cdb6a87bd12cae024b54cb5e550e6c425360c2e87e59401f5ec24ef0314855f0f56c47695d56a7fb1417693af2a1ed5291f2fee95f75eed54a1b1c2e81226fbff6f63ade584911c71967a8eb70933bc3f5d15bc91b5c2644d9516d3c3a8c154ee48e118bd1442c043c7a0dba5ac5b1d5360aae5b9065,791c8b8021bee5393ffaf003b9c429a5abd2e35c5c7f556e843d735265c5b7807343ee946bff31f45b5626555cfd792f55465ad9ff95647a41d9759de484a0564492236fd770ed3f78c92514b90636ceec76d3fc44a6cca482bcf45d3b5bbcdbb1eef6d5d6eabfd0fd10b0b4aea88c5fa68182a8a9805b5e90b1767c9e79500237d07be59c0f09a9af2236aa954f9ddaade492d691e36f3f4043f28bf0ba6349591700c4211185d99cb25553e2f6f405f9d8e00fb658bdf4a091cbc7092934a6dc6d65e42cc9042f90d169662f80d66386489d2e7f750251130e1529cd8ba70929252551b0617c960203ede536cca5eb0c5217e9e4756d7b57ccbe5087a4fb9710ee89ff62355203df415975ad106d84dd5526b3ef3432770b163856b4d46f7315f1ed70055cbcc4c78c5c0cd4b19fced545ea00f0e2e9752a227445dec6d50b3d73abd2d81c9aac6b53e108da04c42d491254af39584068e34ce2f4026fb63c29a52b913e5d2fa42ff7adf413227b784711a3513bea6aaa97dc019a25a0f09ee27a46feac4ec13b43e341c505c308ada1db5d72e0609a0a68698c809067f2ef17434f3205e03be67433c1d67072e8cad0e2276723ae7d9f552df19c142a68a7b875cd7a73fb586e128856a9259f7373242c498e621e7f16e7af57f36953001925115806972ed2795b9a2f398676bf37f2ef8fd4325863d599e10fd84d8d77d1 a62fc595b4096e6336e53fcdfc8d1cc175d71dac9d750a6133d23199eaac288207944cea6b16d27631915b4619f743da2e30a0c00bbdb1bbb35ab852ef3b9aec6b0a8dcc6e9e1abaa3ad62ac0a6c5de765de2c3711b769e3fde44a74016fff82ac46fa8f1797d3b2a726b696e3dea5530439acee3a45c2a51bc32dd055650b,42aef4301642ed54cb1ff9b446bfab73cdfac0320167ca3460a9af1995b5dd50c1adb402a55a3e5c4f7be66bb2041f3e4c9eddf7f08826f8b9c1163b0ce8b31769aa72ab4c598b3bb1cd5791a6bc30d11f0591d0eaab34d80f134734d792bcc6ea61aa535f4f28331aa6e9a572d43f776341c971829c67c0e7d9321b09807965e1e9c70e611a4bbc3c42743a2d04f50804730c857f02e631c1b81dbd33d3ea2539f9aeeca9842b3c95fa1b8b1c330926fe5c6a396214537bd06b49b7951af0f9ae04d158f364757a52ab1f21b4155895929480d87ab365a7950b321d5fd0c18fe3ff63b10d3cfd74af45774500ad3fad98da5d240d613b386e677d57211b8781aea7ef4052a25e122064bae6dd59b00d533e6b041130b89778db87f88dd37deb78136b55a958744b9769612a0dc6d29b6c0ef863934302029c800b50ab385de742d436809c7665b868c83dc450e438e94ea3124dc080355ae5931797e75dfacd09a7c97345608e021bd2034f7660ecd194f628a9868bc0def0231da66ab89e2df1eda2c403203f971c1e61e4098fd306202b9f96c78ccc37efaa7983c5d7712034328d1e65fbe96db94b3bd88732e60ace5ef946e896abd4e1f6978700c12c4a8a372ca54b6f8efb3402b898838a26d8900f69393e56d2addd2a0ea26e7f630ba6d19c46de493c516277fc491f1fe273d013f4a32bde43994b031ea51c2cc8f5 2b6db7ced8665ebe9deb080295218426bdaa7c6da9add2088932cdffbaa1c14129bccdd70f369efb149285858d2b1d155d14de2fdb680a8b027284055182a0cae275234cc9c92863c1b4ab66f304cf0621cd54565f5bff461d3b461bd40df28198e3732501b4860eadd503d26d6e69338f4e0456e9e9baf3d827ae685fb1d817,5e0693e64dbe678055a31d80da85a81a1ba5eb1cb6394b7b1aa2adc2b8c1fee4f41dff3623502fcc349d4b2bebbc1311ef291ef47f490c6fc1323075b519c87dbd77cb94c213eb548278a6c11b0c321c941fbeb9742b690a9777875d8a1fd0627b5ce3679a6dbcc8b53d775e73ac9f951749fc353eee7220cab40f4f7c2eea311cd0b50974af188ea9742509c4121fc07a70fc28f0633b56babb451554bdf86396594b57b1f88dfa07dd4f8c47ab5ffbad03da1da642ef4a6e75a952e8acb3989136b8a792e6f33b24da2cc4e422192eebaf121561bd33a6d79df6517b3f001e674f39bb98d9aa0e15226389b17655e7b2796d75ede0430a0e7d07039b8e35642570f6457f8344a59dbdd5128f74f9ab83cd152db17987019aa0b27b6e7951cef67b574d05535ceb5eb023a39b5731b6afe6cbb8bfee0f71819d791c288bfe9ebe6706778fe62a80aef22cb9c0920938502f30a20fb4a4822d0c0d42d50d67fa6a76ef919c985c6306fea73a3bf41006f0fe60c0d92b80106d8c715b97e35e39fa8eca59220b86c2c46b9c61eebce07da4b64cad247a67112f6548aa693bfc4bfc9ae78144571cbe7b81b83c8832938a71fd3ac6b8e4aecf17fd2848fd9558dc5ddb261ccaaf083affa341ea295c7264f35734f5179038ab70c90e03bf53e3ff438a9c0655ec38f5b9dab7a4c3ba852a2a0593c80999818b460015c79093b1d6 10db509b2cdcaba6c062ae33be48116a29eb18e390e1bbada5ca0a2718afbcd23431440106594893043cc7f2625281bf7de2655880966a23705f0c5155c2f5cca9f2c2142e96d0a2e763b70686cd421b5db812daced0c6d65035fde558e94f26b3e6dde5bd13980cc80292b723013bd033284584bff27657871b0cf07a849f4ae2,b620ceaa437e16a85be761a8563ac80d9c49608dd0ebf9a4f049b9541623f4a3783c9e67b85820ba44a80f1afe3fd835791d9f3c785bd8a77c9623eaf11f695675e3a2fb951d54050d0500688860bd270d3b723be51579b81cf4ed94cebc294a97beebb5a851160012514d3bafee6e275adc7bcc64eb7879c32d8e0605241786dc3cc1bd44db64bbb2e9c6e1fc581a5124a734625cd811b6bbe00b203319a736eea07af977190d777c12465e1614fca56db7154f9c456f59989062d60899d7cd7925df1e1ac2eecd9b070f7e380b0775089f303b864d5ce049c55177e3421443b508edeedac6307967a4321121ee2227c47e357fa92b741fab390957ccd9337b42bc18e6981fd9efc9241fdd24bad0c6772216bcccb92c2eacab3a312ce020216ddc9175f3f86343e204e1a76573294de6ec6bb75679379645fb973c37354323e15202415172d7f3d6a1060fcd35dc011b3b2fb4fae21c69ad0119191ba4277ed6f71045fcd69f267e667dc4d219fa256bf35abfa06a05738d212c42eab91c2c993a5b6adf9adc0f276e79ec9eed6f115af4bcafba9cec43b0532038e863b2686996e997807ed67de7f48c14b17d40cfccefd9a943cfd7c96fc665eabc70e606213da37cd7eb6f942a6a5608305b8cd8b9bd4d625de5d7dccb554d3ce466d6ea8c1d9f111fa4e96b253ea11b4dee3be218c880844006d6401659c35c2a293da2 9334de60c997bda6086101a6314f64e4458f5ff9450c509df006e8c547983c651ca97879175aaba0c539e82d05c1e02c480975cbb30118121061b1ebac4f8d9a3781e2db6b18042e01ecf9017a64a0e57447ec7fcbe6a7f82585f7403ee2223d52d37b4bf426428613d6b4257980972a0acab508a7620c1cb28eb4e9d30fc41361ec,224d0de7b21690b72a375907a10a4284e9e730a20cb3b4fe396cc6078d9dda5d1a8e81934745361d8eed0b31b6276db8f280104cc0e0ff4b36723cb302381a9be703b0de4c624a27996155599204dd2e219ff77008463beb4461de2de3010a002fdb300c24b1a80c8df311c80d174590043ec365fac147a671daae41f38914e1e6614cb62c4db154735363d7c7b7135096d7edc6dbff1db407c0061c3135ba4577d5682e57007ad6e5b9adc87dc27eac3d03b3fece4d9b4c2b2667e6d9311e342d037d58bf67cf38a4ab448aa4db2c847e678f66ab45f0bd1b581af6e881e63fc170f44fd0f8d87d6fb160a78097a4896be055d0167007d9cba610da08c8c342e4bcdacec6f0bbb30108f29a21947a9d842510e68fb175078b9064364046e544023ccae9448c0727e8fd26330f26fa60ef891489b8cfaa623086372c09c0373c9ffd7e3648ea0f8da7fa99d9f2d6617c0467f2f069f85adee5535100c519a528c690ee9192a888acbc11befea2b81e8fd380cb8679b6d80e37cbe3271ad1ef633204a8b97da2e05565f8500db9b1fd8032c69f57409251932cbdf046e0ab99896109f2eb1217351b242eaf3236139f20eeac594750231186628453970f3c8452e454be3d4d80e99503f350be1eff8778ed13f3d8828768e2f66e03c246b4fb59cc2ced5cdd266d320195a601c4e4928d84c62cdd8ae2ea357e4a8f34223fb18a e88ab086891693aa535ceb20e64c7ab97c7dd3548f3786339897a5f0c39031549ca870166e477743ccfbe016b4428d89738e426f5ffe81626137f17aecff61b72dbee2dc20961880cfe281dfab5ee38b1921881450e16032de5e4d55ad8d4fca609721b0692bac79be5a06e177fe8c80c0c83519fb3347de9f43d5561cb8107b9b5edc,78023c45dc98541f14c21df4148a80ecd01f52ebeaecf7c28e9fe2b2c69b4b882805515064800089e6f18223a624155de37ec8ec07e68e282204f3ac9bc33f8ed6dd98ed2ffd9ebbd0627b0efc88f7bbcb7815795928766698dd530bd0aa461ad9499971fe935bfe38b6a84ed2d842572eeb97d7290ace13c41899656bc30317a95efafe163494eb7e358fc31a39a20012a82f564813234d598efdba11edd2b0f3a2554bf4fb216084772df94e3d43e55f188bd8b8b5b297e406f2b8407ffdede7ede9227ed6ad78e098147a658269c26ccc0f2988f06de00651a7156407cad75884eddf56a755eddd45030a4c43a82d55600d8fdad155d13014cd27f827a30f6031e0173a2e8da9a8fd9f7590eca5f37747e5abcc9c0a0ea589422bf9647f3fa9893ba3616c38c15ed6cf1f9ec2a64b616a3c5e6c5862fdef36e2a44a911269f4ade8f7b90272eab51fda36d9cd0b88dc8951088eb0d7d68bebb332d22c4240f5dd354cc67650cfe4659d354742ada6828a7cdfa82f77f1c846361087d14173775f44c8601a56774280d941f256a89eeb850056b38480972a6bc0d893a2105c584bcc3e963df2dca0b39b82823f5a4261fb9d4412ababa7785fca635a84bb757e1380531f5ef986f3a771e4948653178b240a32f8672b8b655f0bc832f853c206d2f6e73dbbdc2669da67666947ee50ca82cca023b5a3c485a9d21623d8a3d8 fd19e01a83eb6ec810b94582cb8fbfa2fcb992b53684fb748d2264f020d3b960cb1d6b8c348c2b54a9fcea72330c2aaa9a24ecdb00c436abc702361a82bb8828b85369b8c72ece0082fe06557163899c2a0efa466c33c04343a839417057399a63a3929be1ee4805d6ce3e5d0d0967fe9004696a5663f4cac9179006a2ceb75542d75d68,31edb63fa182a6daadae56c08bc794e74677457c69cb23ec82d2b8f74b8649f79754a8d9bd42ba3bdabe0c4a161f7464d2cd80972824e6a04bd9cecca798c2e26937afa93194246468d66bc8769a26088513962435d3dad9b1db5544e6a2050238a242397ff6e7419569ab3ce2ec14c54481d634f56d1f32d453aaeb23b2078502190c8d1cf54e467cfd51dcbc6e82f95197ad1f6cd301849b76ccde540cff8403d19ecb88db81a45fc13629800d000fc5cfdf508014d4324ff6d2414535e5ef3418555b81aa3ccc74ffc80c6f4f170a3ddd304d1d5efacf554164e0ea798572dbb3393f63a7b9c066ad68cf25af0d36400e427a5db9b3ce639be2db8edac6ab1eb2e362682d6b0ed0d2b84cb28b56f1af4f4a9df0faf3447de9a2841b49cb2aff2423a2cf58930d0be6331349511c26d6f07a0abd32a54f70bff5f43c599aad00931ea7f28a85010abe8c93f941b4b4931813796419fb41f3bd0a6203b14bbb288116736b3a31cb53ff26eba377624c1a0a280b768dadaac7ac69835d8c324234eb907b64053678f629784c6cf34e0ab5522d6e9326998aaf24d1c1c62b93652896cc6a9bd7de4f4ce7f6d309ac957c2bb446e6beb8b026537f7fcb7e45ba1083f1d690bcda15b1487defbf59dcc1a5a6edb3dfc783b4224702a7f6e466b4e48da6c1abdd918512783b6a7fb6446d32fb580fd292f2ebf8e3d0302545b8c163 59ae20b6f7e0b3c7a989afb28324a40fca25d8651cf1f46ae383ef6d8441587aa1c04c3e3bf88e8131ce6145cfb8973d961e8432b202fa5af3e09d625faad825bc19da9b5c6c20d02abda2fcc58b5bd3fe507bf201263f30543819510c12bc23e2ddb4f711d087a86edb1b355313363a2de996b891025e147036087401ccf3ca7815bf3c49,2611992c1226b5b402f19662fdf3d9c44d118b949c8aa1073b8bf8a5daf30d9802df7b1ecfe6a9a1e9db9aade3b308867397bd48b89eeaf36c3ebdc97b35eecc2c241941ce702a0ae96f02e881f82ae2842e1a7ba19d3390b2d4b5e2bf3883ecadc81afeb6543dce3857fab5f926b1621d32aaa0b1be10452a4e4d2229b0e50b478e28595e564122318eca4de680e354a745501a8a11ad263e22b5a69e2f70a3f53594540b2b9160c3057a32e633c616f6dbdf8d6ee19936ce8ebe8bb7bbc118d720ec88f3536fad10fb623801c720d07365148672384bdc9039f0118c356ce20eeb8ce68e7c85a0e4ba3ac5bc7b21e6b567f13fa1d5a4db953589913cf2424b7b3def3b234388b7327a4e737b590b9ab1ee126d949c630420a04c32edce22da326236980734249cfae18ac0fc2a253ce77d2813694ffc66b0e60d3ad245ab4add0bdb1cca7e4228b73c18335558959a06bbdf24da8095184b31cde2f4dead983c9e29db2d4a3c5c40c7775ea30a80cdca44b4db2783379074017ffb6f27e45b86f26ca42742db1b11e11bc5b99d5642e482409aafab2bc833b31774a8ac578bff32131d714b2f8dfe91f4db4448c34e341d26fb64ae00e5e985f16a35857e44b9a846402858a192edc0ceb7a6fbfa90f0eb6d743bda4bb9c9e621d7433ae693cfcc991b71eec3b03df1fb03bdba05a63b9bf17c3caabd40808cbea2df0697c8 77ee804b9f3295ab2362798b72b0a1b2d3291dceb8139896355830f34b3b328561531f8079b79a6e9980705150866402fdc176c05897e359a6cb1a7ab067383eb497182a7e5aef7038e4c96d133b2782917417e391535b5e1b51f47d8ed7e4d4025fe98dc87b9c1622614bff3d1029e68e372de719803857ca52067cddaad958951cb2068cc6,6e722a099b2b47e38c69a0b967420fc5c1ca2926568bce435e5f97d945b261c61483b45f517827dca03ff3ae670883077d5625112aca377e731364932767e5b3ae406adc06283549d64fbf3eeafbd79064420edd544914fa479355f6bc6cd0a88269eb1b4c5e6e2f43f380ba5c1d343338fe73da047e9aa9a06c4a14aa7096b5ae025759244a99a8fbe61b7e326841edd3779a84591e9e44e810cc24870b42bce705f06039fe93627b51dbb8163cf8d4ac0ad3983eccd3a90a85c58ab222463323d5f786292dffe07e607c100d2c830436aa1e4741adc7a7439053045ee3538822cadfe37413ef7948b67f858951df901a7e3d39ebac040eaaf4c6277656eff711034ee862dcc247672dd0bff9b577286750083fef332f630348119461cadc2089c332f9a0078d074cebee2e8b5b8a1a5b4818a53e9c99c330da1682073a7631acf1bf621c59aa45935fb82e634d2549ff405d36b23327c66f9b4c7e092b409228f8b0c95539c3a9d89fd7ff92d2f811055f6ed23cfd984445f7be0b906f6a920ee0af326f4f60d8b5987c736710796b33e58d2661af11f8ddddb12a12b196308f6493567904d49124da69d291d73b104b5c99c002a6606718eac2ca92f8a6be6328a5df6968db53ca0df2990b68f0a15a7f8b006baff2483a0f6d93281c62fe689f5856909cf3c56c5b16169482cd779a3137b6c702c7641b2ef2e9987f5497 b771d5cef5d1a41a93d15643d7181d2a2ef0a8e84d91812f20ed21f147bef732bf3a60ef4067c3734b85bc8cd471780f10dc9e8291b58339a677b960218f71e793f2797aea349406512829065d37bb55ea796fa4f56fd8896b49b2cd19b43215ad967c712b24e5032d065232e02c127409d2ed4146b9d75d763d52db98d949d3b0fed6a8052fbb,7b35855b74d677ab6dbdbbbeed8f8bed3b08df15055606a7e7fe9f5e319bc70bd9df00a8571abb6e6c202461ea00a2d701da5c3942975c48d78ce565689e36379ea603fb1c6c53b508e0952b892a5aba6660980a38fbf7c91d43bdad1f3eb20910beb91502404b21d3c5283a0a88403c6aa47d9dd0a04a23dcefcd3527e4e961782a0e585aae6bc9b7e6acdbbbff9cc76f757887174cee9cfa531c380467388fd2153ba8acc2af706f35667253216d3a1e623a747748fad46ad65265e4530ab84d39d9988eb876853e976156900d9de464cc2c57385f55242608c9e9c26b67683293b1f83181c60bd77549c576f2beb8e54b3ec5be2feac8cd340cf104b0a49d9fb484b538296b31e30e55f7a8421e5e16b91869214d2f7f4dc68736e09ff2981518ff83f24d51e5f9d9300938600ea6c007c9c98a392b2e63216dc1f07ef4d602f47c1f234b857d8650d23edd344152ebb5daa47bff8e394931397ab2231df1e22c566384112e8560e69ee422758e8a76e03d16770e5d417b6fb5c68d9cc93e16759987fe02bb8c99b8d368248a6893adbea888315d4ad251fc57fb1eabb2ab314b24ecd374f4566989038134788f344453714f05a81ccaebe92c75200fd8a019e33a362722f222708c4f3894307d09a4b4d3666002a8eaf2d6cd19db119a957d2b66b0c788241cb7702ddecb63142aa7ca5b028327cb51d72904f2d819b707 b32d95b0b9aad2a8816de6d06d1f86008505bd8c14124f6e9a163b5a2ade55f835d0ec3880ef50700d3b25e42cc0af050ccd1be5e555b23087e04d7bf9813622780c7313a1954f8740b6ee2d3f71f768dd417f520482bd3a08d4f222b4ee9dbd015447b33507dd50f3ab4247c5de9a8abd62a8decea01e3b87c8b927f5b08beb37674c6f8e380c04,5b31c72a95d9ea4ab6ebfb2b2501f14ec41223a010e123b68865dfb7061f8cc00f69be86e56a376a377e9544860f44b543b48c8a56c6a25546aa7573c29daba9b746a94ee82a33825047c019eead9e7a79d50362f649acd1ef27df8bdeab02965aa0c0ce67312433e0511b19a5d213ef9720e688a80cbdc7ba1c50032701676bd4aab79675f85f76b7458f3e6d723c62802b1892f0c2b45138142ad9ef329d771e6873be098cb8c501c3732836eed9165b69ad40ae5a642d980c7bc843fa76b605fb68872de523c591ce09f21976ab47ff64f773b5d7eb54366bc003fd6f75745c4b14efbd1acdfec8439550681208543e469274a1fddb16d4125a01e9107855149aeddb7e21298dd8c309ab1c1bd506f2d377042f27fc275017b642456c93fc882e3cf44c1978307e7b9bba16f612e28e99d2e18d2d85ddaa235fe65ee40d905a845768372dd621e6394afa4c59378db5feeadee6e342d004598779f08eb9a231ba0ccda0a1c7d19ac741505f0d931c73f241d1999eede40aa53a8a47f629937d29d1a6d2aef1807be7c333daa332b4c5551a7f37177f484740be772eb03d04e82b2487aa65a2e4ad00f553060c6a9577d21a6c3b731d9d1659e54bf14ce4e4b7932250a8f3711feb7d9997a5c554dba364dd1f16ab4f34b37fcf5afba5b06bed58e6acd232d69963aaed993f51a1c4a2347d8119d381686ab0942190680cca 04410e31082a47584b406f051398a6abe74e4da59bb6f85e6b49e8a1f7f2ca00dfba5462c2cd2bfde8b64fb21d70c083f11318b56a52d03b81cac5eec29eb31bd0078b6156786da3d6d8c33098c5c47bb67ac64db14165af65b44544d806dde5f487d5373c7f9792c299e9686b7e5821e7c8e2458315b996b5677d926dac57b3f22da873c601016a0d,d4d8f990acbc762bf3bf4382ee78466d36aee8e7d3597c8acdae9a6245020ba5d936e82c2c8d7f861186d428f3abac5e1f5f4fa25ea3feb4fcb850abb7f654167118574a730ceb1ea5d4a3ef579ac58169cd02defb896fb0e8c0797d9a326c1aa696eb1ae150eb2ece9b49725fc6c285af8da2908eed93b6b01512b80e03bdc74e9a528843acd2b9fdeb352230bc1bd9f0f94eb5c9356259530e8e0060e0eb0751ee2f5cfcc2890e0fb8e5512530ea0d6a7475afd535c34bfd14ebc48a0268f3fa671e87effe404d63a03ee92759c6490adda245bc924d582209e7406905678cdde5529f68db56602d546d2e36f5417db7d3acbfdaac622a65560611ff98a262558b304728cbd7ba748174c0eb2faa8907e1056b4af0f820b849bd9411129f4fcf0ccbaa3400c2b7b16a2126c53ef6ca35122f8a8b92549e6ab330c4436268080898ac9c03c27cee9164ebb9c4b1e54d211b65284047f2c535d3f871ff50b81c437daebc09507a318c296f1ff48572e4babeaf96082b177b4b80bdfc2f99fc5b5bd6983e0defb28c98f5eb2ed1d4b36641d3ddded2d8268c10900284b8146359694f4d09f176eeb550b7629e6a936e0bce2877c8525cf4983327227e13b119791d465f9febaad25943ade5631f1dab35aeeb7312ea7b908d19f257015c1cf6bfaa29728437f7620cc9c0b00e79f684e4f4313375845b9b524b3842fa0dd1560b 8b81e9badde026f14d95c019977024c9e13db7a5cd21f9e9fc491d716164bbacdc7060d882615d411438aea056c340cdf977788f6e17d118de55026855f93270472d1fd18b9e7e812bae107e0dfde7063301b71f6cfe4e225cab3b232905a56e994f08ee2891ba922d49c3dafeb75f7c69750cb67d822c96176c46bd8a29f1701373fb09a1a6e3c7158f,77a1157dfd30a79c34d64cc29b9712c9e1ca76ca5565d0861d337627c20a25d85aa061b876a850b43c5ea74946d03e35b6669336aa47c5859ebff82333c03741bdb0930375c34275f2b2caeb83cfd28965da12f60a646ee52372773de04613a3ddee266e20e0ac047b09260e0b69f4f134b5ab8eeee481f887087c0f8639cd32c19fa514a3114e938ec70e8e7e6cf40d11342775c0aeaafd8f8b2dcc884caa603bc8ffb7a282fa6291bb3aa37f37cf9707632879532cc93c6f5c46fa6d6235d7fac64dd9104faf484275cc635c3f732c30b155e22552d2bec2967af002683df1286f98f25d916ea9972dc6d2c5af1a1572bc5363023621a33c0fe41285148ca9bfec731acf75743c9c64b48bf98fa32b6d92befc777f6b29996319bdd632d56f1bcea5c52db9e72bc71d6cc4d1ce7876b02fd48e4eb1110d727afba35afbf8c43e3445b650f06c91b90b12c3036ebbdaeb3d2193129b22e188469a3c2d469f24b530200a08e931b2e95891d966c7a50c2365a73d169d010fdccb7f3a739d4a589a84780ecdd84bb34d54ee5ced2c729a04b27f9c82deb329e491c7b462308c397beec649e4d76239a75bc8bf28b1a8cbb81f25f73e53e19b882f0855ab1e93d45f9293508c66c2211e978267686f5f54ae987d59d73db8144834fdb2df2d52631c7671aca994a99b8009c98a4f847b71a29b3a0636670721aa58baa5a11b6fe8 fa6eed24da6666a22208146b19a532c2ec9ba94f09f1def1e7fc13c399a48e41acc2a589d099276296348f396253b57cb0e40291bd282773656b6e0d8bea1cda084a3738816a840485fcf3fb307f777fa5feac48695c2af4769720258c77943fb4556c362d9cba8bf103aeb9034baa8ea8bfb9c4f8e6742ce0d52c49ea8e974f339612e830e9e7a9c29065,4031b77c2a88ab9a31a357652b5ec18239ea42fef5b390156d7a50a1c1d826a52297b169bc808725b00a671f83f856fc37ab8c48e5d12e277558896f19fde5038c03a95a3762ff48dfae4d644b904845dcba1145084e6b7316fcb5742f31325308942fc31d7f465f6c4d686be9788de37fb57a6cbc67ccc39f09831acb1b1d8010254e131ff7a05031f031e6375cfbed440bf0d66f7021a927ad249bd3c78e2596dcc4e4ffc58d0f7331bed5bcf249c8092832c17c701c65bda1dc9c50894726b04661f5fb4feb570d5d3773e33d2dcd957c171ed631e4ac5a8f42b3828f78ba032630596dd8b8462a2f25e502b25da1747d80f96dafff366e787a340a0af43aeb8d95d565b1bd8d7f8db4fa4c76f5f8422e6c240339c3dfe8d4d13e1db745d8212bcfe232aa5c519beccf64b38085109753e2fe5014f9eae6761d6d600ea05cf0ae6d4300c7670fa1849333bb739b43a7ce58998e4f834309e9505856ed020eb8205571d3fcbf3a9d316a4a8b6e3a397c0200977ca95e854aae35a5581c88448966112ffc0128f6a7b5de197019d830c619d70803b72d318d78fa067dbcad646857fd8ca5b6ffbcd7e0e3d02b6d13ea02b9c346e0000c2488fca6e8e868fdee7891fa12b095860b11b7c5459465d09b6a7b388d9bf6edb0b99486a8c949dcb2431cc8ef13870bb15956b17405dd1047b6d54cc74d0d4edc3df689e09d7381c2 9bb4af1b4f09c071ce3cafa92e4eb73ce8a6f5d82a85733440368dee4eb1cbc7b55ac150773b6fe47dbe036c45582ed67e23f4c74585dab509df1b83610564545642b2b1ec463e18048fc23477c6b2aa035594ecd33791af6af4cbc2a1166aba8d628c57e707f0b0e8707caf91cd44bdb915e0296e0190d56d33d8dde10b5b60377838973c1d943c22ed335e,31b51a74b7392b14e2fd94e248e7fb7740536fb6e88ca508d019066c6cdf83baf2162f4dd175bd7e78326f1a5d6bd3a9d9b5874c474c08612edc3935ee24bd643a0a3abee5626c43e99bfc73ea434872aa22bea87311ab71880096ce23085dcd489fbb2cefa4cfbb06d12ceabd4b1d28611606cae04ef71e7b37e881c2c1089e08268ce45e0d25aaf6843b45aa50f2bfcbf8fe291fb2745b770cbd758cb0a86c8fa439893d93b5667011a8ebf345fa5059f062da72d0e5c3417bbd3c6abff924eb6bc74f6dd0b30bf48848117e7820ac9892ec18dfb1b567612627f9c2585342d165418d211ca7fa4a1ad6511d3b68539cf2db2f6c3a4c1055785517e0528a6cfb006b54808d7f897b0386f7514897874c5a4a3a30d8d8a277a6a59710d0ba870df52f2a0916aedb0870963c205bf49c6a2251ea92e2f9b4a9b9df98bbe752a5dc258e55a8b3854bf19873f1908e95b537de470319ce3648bba5a038d11c87b4fb9dfc9ecca1bed391c0d48825b022132db26fa3d17d60985d5d0611353f96b03c4b5831fb9bc0c411d1909393b54734b59b15ee26a1952438c886d61c5faad119ebe8576aa904f18fbe19c549abd70f02b1be98d343ce0082cb6005db51a6a10ab5e50a89ee44f3502ab19d62c04637acd5c49de78f5a509674ae8eae906693fd8110e0d750f61562d088e0b87ddaf96fc775ceb0f13800669bf2a00424e6ed 2167f02118cc62043e9091a647cadbed95611a521fe0d64e8518f16c808ab297725598ae296880a773607a798f7c3cfce80d251ebec6885015f9abf7eaabae46798f82cb5926de5c23f44a3f9f9534b3c6f405b5364c2f8a8bdc5ca49c749bed8ce4ba48897062ae8424ca6dde5f55c0e42a95d1e292ca54fb46a84fbc9cd87f2d0c9e7448de3043ae22fdd229,3cc7fd2aa14a9dba70ada029992842231c54ecd7d14fa4687424fe1b54a58c7df8a1e9c87569b695cda9b2a27548398440c77a5a66ba94217dc24854462faac1caa8d171e610b6d280668bfbc87c8ee2160e148a6eea29dc04a57ffc139089ad5ea85f89eed89212ec7439530767563137a4c028a5fb28c1ac53b3696282560e15c1585e51b799273709cc5a1c1a93c774bdb19c4e336cdfdb696a39ef6a8ed8eeae92c5660718a7e90c691c84a56bfff85da418c9df7a913352fa53d8635f9ff4644b8ef03892ffffc937bcee4b9d66154964623db90bab15eb783eb14888411cfe2ea417a373beb4be6ca5771f6fc0ea8266d56275f139eb3a90c3915ad6355287e06ffce64d84fd8b0e06bad9dfaf7f7ebc17cd7ed316977ab481ac47253e2508d349993fed324fbf97067ad19c255275d7ee2e119fc0f4490c62edda700c27b5088d57a7223729a64ac1a418071f4365c61f898a350cb9b82f59562847016a40e72f862e10398fdcca0b86fa1f92d17f35a07c46b3ed570738d231df3b80b0c2261ed932822d811970509d7c664d20bfd597543b3ff61d6ce3b6ccf924ecab5fdd9d0b0deb0444e62d950cb6a688bf470c53930b44ff4fc9b4dc7903e97bf29c5373582ddd79c115f66d31f839d7bbd34808539025ae3da3ffd56778160e18f8fcdbf6744431d42caf155028e96ce1096f856e805d7435ab1da522708411 94b7fa0bc1c44e949b1d7617d31b4720cbe7ca57c6fa4f4094d4761567e389ecc64f6968e4064df70df836a47d0c713336b5028b35930d29eb7a7f9a5af9ad5cf441745baec9bb014ceeff5a41ba5c1ce085feb980bab9cf79f2158e03ef7e63e29c38d7816a84d4f71e0f548b7fc316085ae38a060ff9b8dec36f91ad9ebc0a5b6c338cbb8f6659d342a24368cf,4144315dae1fa8fa09e41ed69b72fb8fc64a62f8133eb9c4bd53d6ca7c3475048afe1d0bc778672d715ed01c5532b393888bddbdc4d43dfd82fbde560a80329d03ab5f4d62358e65d36eae4094880e810d022529a8945ac9be8255cac708fc435310a7741825257babd70e84be8a0099ca66754c135476340f1438237d7c227c31353d3878e67a1856868c665cf049e16fab2fa6a2316053712c3ee808762920fc814b3f336ff8c9846cb43422458f743acc398f922eea476823cce9aaba48d159c55bdce636d231f18f49c9b70794fbf1dbc4f71d87b917ec9d1ad5545a4471592883d63f91cfaf7e64805f82411e715bb61cd96eaf2aaf6a22c14790fc76310facf3c2fb78b34d3cff50bb3f3a19227a18a91e7a6d3cd38d5281cda2cebe333c7eff4d357c55889109d5e0b762471c565e1aad50839d0298eab2723eb4e9d1be73fbfe507189e5f20c54f256084e5ebc04cc622b080ef52c38329f301f8f97fff2a7d8249e2efca30bf77a8a3b9630cb5af5e9a34318b94e17bd8248edabdebfdc37e3476155434d32b7a7905786487ba232786c290bdd790ac255bd100efae4be59fa6b1674c651e8eb9fd2adc4bf5be6a763408dc558825b3a22bf141fa45e6df862959f9f47a91bde715afa65099573f1062333ffed43870cecfaa423fd2211f82389bd80f0f033b4fa12964448846e55ae2ba46ac9e7422c228d75a1bd ea40e83cb18b3a242c1ecc6ccd0b7853a439dab2c569cfc6dc38a19f5c90acbf76aef9ea3742ff3b54ef7d36eb7ce4ff1c9ab3bc119cff6be93c03e208783335c0ab8137be5b10cdc66ff3f89a1bddc6a1eed74f504cbe7290690bb295a872b9e3fe2cee9e6c67c41db8efd7d863cf10f840fe618e7936da3dca5ca6df933f24f6954ba0801a1294cd8d7e66dfafec,95597492cd331a89c013d6179031ddaa08a90fa825c5a77bb5e27e32ee7eb1f02ea0d348b5372eef60a45a84b84d45c18695270fcfc07f3ec95e00a2ffe901e5c9ee3dad600273af0d73ffecfaf141c3b63f3faea90633917e260857cd1c4ed198fbd4753e82a42128f2525764b5a40a66e1623b81804bd3f17622598bf39fca57d8c8d0e2e2ec45a4ef13a2b6b0acd6e6878ba5baeed796e3b3498385ad7e88576ea08e148698be845b3d7483371b43fa9b35d785a0028ba84b0c8fd81122935dc09869e065d47d95287d3cb4346d8bca8bf5d4dca3bedb1aad70ea3b5acd48c5c02fed30b4706c104dc159ea96971e8f44248501bb782ddc201569622c1f98e893f820d149164f9c465c41a998ffb561cfcd7b3e327f78961636192d6158da80a7987533c01c2dd380912c1acf14330b85e93ce05f2238ad0c1a05995b631abc9cfbe70aca565e9a1cdd424d3f8ddfeddc0d3d3360ca917b30d7216a85a14bb13e8da29228e57aecf1906b084c72236b91d669a312f01a4b7787c4decee4f63ca276f63766edd2e46555c328d538581e86f2e3d74f5592c1016396082ed06adf8df9ea53b5e0c020ac75b636a828ccaffc064657a657f24e62107d772afb24a5eddfdaa4eaf2b99341affaa1651010e15f6f4e41a67c1ea2101bf5a61c491d5a88577c1fa3be0a0e0781c53ba9f9bb85da59c5d0f3b2aac31f45c9ca283928 157d5b7e4507f66d9a267476d33831e7bb768d4d04cc3438da12f9010263ea5fcafbde2579db2f6b58f911d593d5f79fb05fe3596e3fa80ff2f761d1b0e57080055c118c53e53cdb63055261d7c9b2b39bd90acc32520cbbdbda2c4fd8856dbcee173132a2679198daf83007a9b5c51511ae49766c792a29520388444ebefe28256fb33d4260439cba73a9479ee00c63,e7814e78cf280cd8d0b27b311476f21d6185abf37fdfe2851143ec3425f12dcccc0faa95b2e6f8ece8c4156124c9dfbffa77624e5a4a9553f11675844c3af0e816cefcc3eea430d7c730cf135ff6a34e542e50f25fcbdbf3a051f39cb028f20b8d6f85221b7dcde00d7e45b78529638508ab2e6bb8d885752ca6c97455e61564c2ffac68e5892bdedfbadfcc88018a92b599807583e9b8bad62306948fe52b397cf88d20d440898075e3674fd09469d1fdbbb2350751f21e48be74f2b04e7a148286fd25a90995b5a95716d67ab566b78394746da84326b83cff482f82df9b8cbdf3d92992d0f05275d37af3fcd4ce211a9480dad745b6cbc4789c9015ae23d1c3a25d067c9a9f7e611ad05b8d44940ad622c48730282789a839af93d0735725cbee9dc4231e8773b6dad31178053014f11421ad0abcbf32b1e6386691759d58ef7e2a6e2bbcc11b5e62ced89c4be975fda74abe9395dffd9e8c102a5142933252d94b0266ff776e9224985f3f2c96f7beed03ba881b99479862f8b7dfa96ae0b2d2a97f773164e1b473a0c671ecccea64dc67f3a53a21e51b794afc4531ae4f41898e250c80622e123b27fa28eb7f07d4b4fe63d75866fbdd730b54a9297697f541fb429084ad43dc69cce73c6c17253c481a002ad7ee11fe077554a4bb45aca4e9d8b8c8e8407866c011b749c3dba372c2966aa0c20f43c86c01ea74be5bff 836b34b515476f613fe447a4e0c3f3b8f20910ac89a3977055c960d2d5d2b72bd8acc715a9035321b86703a411dde0466d58a59769672aa60ad587b8481de4bba552a1645779789501ec53d540b904821f32b0bd1855b04e4848f9f8cfe9ebd8911be95781a759d7ad9724a7102dbe576776b7c632bc39b9b5e19057e226552a5994c1dbb3b5c7871a11f5537011044c53,50f678ce2970c84ea11dbdaf399535a692df95267340a394616760ba82bad865f920932dce65d0f10b5af1b378f76bbe05cd8c8e16e5720e527326fbf375a5f08aff54c4554282058636c69b6010330c1defba22f175bbfe434b6430c24c06f034f6bac59d1063a4db1fb4243162f368385c5083a93a7e693009bab0f3d8f24ab45f3d20e9582d1e9d0af578bfc8c9a0f09a92e4d76643eba46e71ab177307edbb2dc46139ded52fad1459a41114ee88f439ddd064600402e237835797b4be67efcecfac28d9f3f8b8cc773147400526202984c0cc2cc6616ad2ef5e0fc16509372f9efe63d66cd41c61ae88928411054953bd95813e520e02abbb52bc49cef99cf09bc3c83dcfecf2f6f4768ecccc8639752a28531c0a4038284c174b34978850b02e45d7810c4feb224e3de0c89ce69b06dfee9ce2abe8afb209e29194acb6c526eac490d5a9518d5a7e1c1a7cf734c92579d162f2862ebe0722e2dce53dffe84a52a459b9c1d0a677a41b0f1a945ab597ebd8544afdb1af97cc1e3027ec287df62ea1e81e91cf4325d202ddab62e09e6094fab327cdcfe2ba6f760c2ff7d7992a3fb675c07f77db5bad69056bbd3a50a0a24df64a73abc3ce3c1f131e7e6c76f0fb207f6d6db54c8d128f2c8b670350602d7b0a52153452cc92ee4f185f4570405e54cb95647758a31b8434ebcefdcbf00a43857a58f6506cf8b7aaff3b4b cc7784a4912a7ab5ad3620aab29ba87077cd3cb83636adc9f3dc94f51edf521b2161ef108f21a0a298557981c0e53ce6ced45bdf782c1ef200d29bab81dd6460586964edab7cebdbbec75fd7925060f7da2b853b2b089588fa0f8c16ec6498b14c55dcee335cb3a91d698e4d393ab8e8eac0825f8adebeee196df41205c011674e53426caa453f8de1cbb57932b0b741d4c6,c860cd3e9223e1cb941e130f9f71c376ee3a9b89da339c61d90ff2b48d1f285fc48a4b6d87c199989d3cffce4fd84699fe385c7ca018d4f31f00e41216412932a833794af207132ea430b07201eed784c2fbaf9506957fb9f7e18eb9fdb06f051419bcc7d67acdb93a9f78529d9b5344ae3c4fccffc406350847e228be20c93b22760ba43977451b3740be9e3b283c86959cf062b69d5bcca35ba5362ef0b2ecfdae225cfeeac473e420ea1ab7ca03d4f4a82f6c32fff843712b78476acc46e4b88f280e3612d5ae2fdb94fc26d5c40812b0e9577dd995fd4f5282e180c37a02d6140fc88ebf5972739d591f13aeab894f240ed4be309daa4f3b0e2d536f3def87ba53a881794b80efeef855bd35026ee9d8492c90208c313288cde719a111bbbdc3bb56aa218ed1b466e6e01728da23950f821016f313a69665d43bf2c619884d20e83d6202acbf85bf86d271a1633f32372b067be55570ccc2c7600b0cea6133ffc787b743f3d2346564a2d598049d92f9c4160873ac7e03143bc3ac5366ee6c4621c25aac1e0ae4eff6a35add223a61dd044593629c082603847bf2b7f07a4115dc1c87af0f7854563eb18ffa8e24ee09e299738ffd4f1e79019fce4e4582b063ec1f36442b085f82ffb99d409b4f692a8ebe9aacf2589306204fe0f168373476393783874525fb808c2b90f1fc5d7a368c90aab7ae46e21feab48d667a5a 7639b461fff270b2455ac1d1afce782944aea5e9087eb4a39eb96bb5c3baaf0e868c8526d3404f9405e79e77bfac5ffb89bf1957b523e17d341d7323c302ea7083872dd5e8705694acdda36d5a1b895aaa16eca6104c82688532c8bfe1790b5dc9f4ec5fe95baed37e1d287be710431f1e5e8ee105bc42ed37d74b1e55984bf1c09fe6a1fa13ef3b96faeaed6a2a1950a12153,97afed51ea7ce6d0082a0ef242c37fd626db617daec0c967076d8e63e4861db3ae1308f19ef4b9f0b7246aa0e255e7535b5c70b341be15ea4537cd1f0235c0f9e60c2168c2b04fdb3dd871460e0bbf1e3193d04e171e0a24bece6517cb04a0b020ad042f28680ed42ee01d4a05c3892b0654c961743591722054ccb0756341b54643817802b3e05d70d71e339e487206ec34765f5c0d2346135070f50d28b8afd91ea2e88fb9dbc1a932feeb781f13fe5e047f7f43f51464b9d28ceb8b19bf34f03c1c9d1dc77a8fe475b349251e7ae0ad171c1fc81b862f7f73302f7b48337edc72d39c59785c5572929a6e4f947632b41ecb4ee9bc5e69cbb746e2512986d3a23c7f455fbe5f1891c7101bfd3aa738c5c84bc194753d9671b8f3eee5a35399615537121713dc85d23e0a7b47b55de82c8109db1e0ca96c471f366318e5fd9671d6468a36be694635f65249d65b9ab9a6e6a5361e35350cd258b8dd145a3b68dcc900673bd1a13369163e5b5d3bc524849f73c68f01c7c8b88c9643341d225e13daca45c62d9b5693e2e04163f96454a52b4baf64dfe2293e438e511854a99682059bad034712fa3e99384244f83aef74b96848d338ccf439bb073552137e903767117959a2d841a157f468e597522515bc43b121b257b698234d19280c4f41eb865882e4abfb4571dfcb2dec5a30cf7d6e867f8b5e0880dadff8da337230eb eb6513fc61b30cfba58d4d7e80f94d14589090cf1d80b1df2e68088dc6104959ba0d583d585e9578ab0aec0cf36c48435eb52ed9ab4bbce7a5abe679c97ae2dbe35e8cc1d45b06dda3cf418665c57cbee4bbb47fa4caf78f4ee656fec237fe4eebbafa206e1ef2bd0ee4ae71bd0e9b2f54f91daadf1febfd7032381d636b733dcb3bf76fb14e23aff1f68ed3dbcf75c9b99c6f26,1a895365874a70f2304878b1334baa09ef898a0607f3243410ef04b14a8490c193a18fc2fc0af0655e219956a8dd3c7055da00345cb411af9167cb9bdab8939d1565647eb251b7459045184bb050f3700ceb6285114509c8167dfc122b33cd3df761f37a3573a75f5c16aa2376b3270a26522869157a3bf26c4d30a9c1d7b4e7490fc9fc5a4eeac331996b16574a27c32659d0af52e0e50f0c221342bbfe2ac04455b659b814cb888dbbc90dc3a899fdc538ae8e8fee2fb085fbdb79830392084fa1761a49619018f5ebfec31be185f0945f4cf9f5a21aac1dd3f1f3c7b9fa05069264f6368ee4d3be24add6ce5b70e328dffe08043587c39213dd66a6890ffad586f9b13cf08de44834278e04da2f91de05257e0afc44b5ba9bff15cc6f7ee306482704de0fb80b93ade6537358b252d050bef48b9a246ca75d62cee920272b9c4b06fd39fda8dad4d1c3b01acc5d507299d44ddd034d21802e1fac9e02a7c7cdb00f64fc7794a253b1bdc042c35416ec64a3392fdb954d63bde0c1bd7e08cfc655bcd02e27537ee61fae64c0187ccadc045f91f3bfb1758f224aa8768981617f20c889a390b59588e366648bb3a8680b3431a4d0596fc5b5f95c4184bf361b7a2cbeeb424fd08a98b322c37f703a73fa874946cf430a4f068bb1d16898da8f9bb04c03ab3f068a36eace3e2227e7e92bb189b1a4a14c9430ef5833214a62ea 1594d74bf5dde444265d4c04dad9721ff3e34cbf622daf341fe16b96431f6c4df1f760d34f296eb97d98d560ad5286fec4dce1724f20b54fd7df51d4bf137add656c80546fb1bf516d62ee82baa992910ef4cc18b70f3f8698276fcfb44e0ec546c2c39cfd8ee91034ff9303058b4252462f86c823eb15bf481e6b79cc3a02218595b3658e8b37382bd5048eaed5fd02c37944e73b,97fc612935aa839179bd26673524aeabc59fa66ad4f719106826d62d56ee0201965d4659877928087d079948d4b3ffe6cb55bb212e802807a0b9dce7c6ca2ca07c357943891a5abe2dda248b8f703236fce8ede40ec6609daf6e012791c53e10b0000ef3b8df19082a3eaf5c0c0b524816b66bb7b08cb6b65207d0d7c84432af10a552df425fcb2fa965728ef2b974fb59065eebb105719d2534a58435651d743c91fa1953255f777cf6f92d3345ab9af11bef3abc00fc46dc4eea0557df7b683fe58ca3887311224567880c7fb5ffdd5b24b3b8ee66e63fa09202d3133768ac2a4933c923159d651d616791a1a2bde91ea53736ea6b4a097bee70f0ef943dd246184efaea018b9dee2c4fadb93e7a93e40273b5938647a6a10d31a0354dec08a03937c9e5ac71f52db0f50f6d066169c03e883476ef512ecbe2d109d5015a1bf660ea842436060acca32e846612e8fd799eef914e1ee2093bb2e30257bf432d5daa8af87625b07c3c6327768f0867af0b80dce96888fe27203ba076e5b8b90acb51d2ae442b424d6651e8bb7b36bd770c3059caf189aa6cc8575f16b58241fb0b7454e089949fd3aa8b347e0a76d2c5be54a60d9da4be789656fcd7bd5abb9851ec7b72ad4be53d9d2d771ea11644a9aeb6061d74293866cb112d89e93ba0cdb02390aa66f5cec4f9651e306876fb5100f8eae6adcbfb87bce433983768d2cb 4cfa1278903026f66fedd41374558be1b585d03c5c55dac94361df286d4bd39c7cb8037ed3b267b07c346626449d0cc5b0dd2cf221f7e4c3449a4be99985d2d5e67bff2923357ddeab5abcb4619f3a3a57b2cf928a022eb27676c6cf805689004fca4d41ea6c2d0a4789c7605f7bb838dd883b3ad3e6027e775bcf262881428099c7fff95b14c095ea130e0b9938a5e22fc52650f591,531d6b06beff0af847cbf3484d1dc52b2e7799d3c5c384b25858603be71b0c57ac073a330b816bbee8164116424ac5af8e5b44e875e9a6ff54c54e4030cf51215552d53fdf24fa63e95590d4b11a86e305aab52a62f7f8b62fe3365d239b53b540adc34303d5ffde35b702844d05b3cc804365bc38c76f92f1ef81660fc8e8ba535ec58d2cbc4b0efa6d840f537740675a1ec1619a8956ba91d3b91d2417c4d151aff2cf54880b0f7b8ce36a432fc44b30312fe9817be795f07c8e521a183930ec5422079b915fe6ace193b7f59928a2f85605d257ffc3fab1762cbaace675fe130cd4fc90138ae5303332db73c0649459c4f8e0c44291aa61eb3d5982e77e1dd1ea3646c2557e62dc13938e805da7ae0cd2b3efcff6e6e61a8f2793e94665aa13456453282c7db7eccf7c52bd5bcd1a7a8d0fec0a5d69dc71fb78e8ff08c7ad7420c0ca52c80e274d9bc623531e375fe41436b4062efc72154657536391b91d43cec7ef9b19b901183b70866ea2c4416021a339b827d23626380d72aa8a3d66bd4e119b2d254ea426f1b40cc564db0605e015773907dd964471710e7eb3435c6cc7951be6ad4207f40485693f57ecb41d6774a840e495ca1dcdbe1f112f61f8e135f1245fb09059ddae40250862c79befc5432b50b8b8a4ce0804a3127697bdf3331d3cadea1d459f565e0f2ac133234160f8111766d31a89c64351817ae4a3 d3e65cb92cfa79662f6af493d696a07ccf32aaadcceff06e73e8d9f6f909209e66715d6e978788c49efb9087b170ecf3aa86d2d4d1a065ae0efc8924f365d676b3cb9e2bec918fd96d0b43dee83727c9a93bf56ca2b2e59adba85696546a815067fc7a78039629d4948d157e7b0d826d1bf8e81237bab7321312fdaa4d521744f988db6fdf04549d0fdca393d639c729af716e9c8bba48,4f56f2baadd2b624f6643c1dbb5ed95f05fbd0550c3e5829472734be3b4064529cc3dcb3f886c65f074539d3f1b13215256af4952784faddf00e184211db2ec238a5ebde55dafa606b0af6d108791f63121865b6d064ce12e446c0b719a856b1647dc4ba13614505d9b3a91417537e0b110d086750325ac8a1964b8a36bab91baa1141dce862167a1ee4daa01da6b3ec875af9636268cd995dd980dfb6476c0bcbdd8430462aa56bfbea69130dd43640e23ddc4d9b469a521a533dca9e8a197130c3a9503393e958a77cdbf9f93fca6921283c96ee38c7ee92c7f0781ae962c68a07014d6c623a3338a1a19216925a432a9971e7f6366adb701efc4d4404e02df452f9a6b9aece18aa61c56cab2582409e4e741b0ce17c6ff881e3f509f536f8f681268e71aea6376767f5d49df3239c65775199b68c84389d1d4a426ac10d42046fd6aee02d4e0f48ba2efcecf83130792996801e64b81797214a2eda5b2296550a13e38e7daf36f9f2a7b89c1dd0a95590e2b77415c3a35b9eeb89be993333551d52835fe36d91d2f205f626fc03cc4f9386e4d815f6b8b128a9c13af40386538afd481650ef886d3ddb7b0772252b73e9f44d7822cc99455fe118c6d1003fe24f304b83e6c76419527f1cec5e5ca57f7911554d1515a026e573d9d4bf5ff7536475ad14bdb8490ce353e1edfcb038dbc2819d4edf325d6c3479f2c3b02e67 842cc583504539622d7f71e7e31863a2b885c56a0ba62db4c2a3f2fd12e79660dc7205ca29a0dc0a87db4dc62ee47a41db36b9ddb3293b9ac4baae7df5c6e7201e17f717ab56e12cad476be49608ad2d50309e7d48d2d8de4fa58ac3cfeafeee48c0a9eec88498e3efc51f54d300d828dddccb9d0b06dd021a29cf5cb5b2506915beb8a11998b8b886e0f9b7a80e97d91a7d01270f9a7717,f153aff7498c363d04ff8beb191e394852b79f54681e8d03f04b31bc037102bfcd4e7d709a387a89c7dd124fc0192b586f7ad7755c36a8d5dfcb6dd855671298006ef379d2cbbd12cc5c05186717a3985594f19fb4ac62c673cec6d374114270ec32e8c0946c3034aeaccfc38b745d758791842995bedb09a4778bcd504a961cfde3208728b57d246abbc99dc632a2396aa5b3497d4f1f94fb2c90a5a1f51dfcffaaba610c747ce10e5ef2acc9ab03383c8b8dc73517e4d32fa7118bff599a83f937358f7407b4ea4771d5c504311dccebc1262b464415eca2e3662ca7dfccfe38157f15b36682221f65b6f65877726072b9a30c0028dbdfd14c7842d99657778c339a5248aeda1dfa8b9ed56b79f107cb3e690d56a3dcd5db03c47e46d29c433bea894d1386133a78e8eb83c2e6bc2e7593cc3ae4d2c0bda573bcb16e7c44732a370fde3af4dc452d029f44dbe0f539811ddee2cafa9daf752169fec82eec4f35093237f0ed1ca6ce62a1221afc870020b0ca219d03e5acfef2592df5916fea97154e62485a38efa4df203ee808b12692064c609f29ea0c6960569e102122ac74e99a992f37c1a090a9927deab998303e47487e2910760a6d604a73c78d66213a5d2c28c91528340b2d6371a391c3330fdfaa70c5d109a209152d21b63cf616c9c78621efbcf52064da08d90510ebfbd957e28053efd0b78f28dad025a72127 6c4b0a0719573e57248661e98febe326571f9a1ca813d3638531ae28b4860f23c3a3a8ac1c250034a660e2d71e16d3acc4bf9ce215c6f15b1c0fc7e77d3d27157e66da9ceec9258f8f2bf9e02b4ac93793dd6e29e307ede3695a0df63cbdc0fc66fb770813eb149ca2a916911bee4902c47c7802e69e405fe3c04ceb5522792a5503fa829f707272226621f7c488a7698c0d69aa561be9f378,d44138d25419fdcebb743314d267d3ab2839cd302edb06de0efeb5b837f19d7ccbe8a1f22922437fc4eb591bb23ee25af00bc1bb3fc6f43d524d5b8447afa47d966440f620d45c3ce7b482fccd768e436aeee5c25e9cf4c3fd814949b61b40a54ca867825ba2a55e6c3e778ff5cded4346530bbb8d1685a3300e995291b06ae05aebae336c37abde854e57180a79bf5be46f6c879b11ffa6573717ac168ac16cbfbbf5c46f81a4ebe14f0a0faee8d09d8664d26c327721d25e551676a00492442e3f73e4b748943b188ed3e10a22c54c16bdc78ab1fa8a50d6d46eb057dc0fb048ea4fbee4e5a1a653131855a03db2fcc39f698d14d28fd9c361818267e222abca88eb0326f4672dc1305af072e0b75674596a616401df9a53d44d53fa529a7c28ce7d5a71c97880725d51a58a065136034dc3d706f13648a68ab4665af00d5d0fa0ff44d1d1a4ebc44b3a13d273848a3bb558bbcb599300728b7fcc6fe16c5a6948bb09fd1b8185bc6863c1d9f5fff7f0a82edff0ce04ecf004587ad52afded64e4e094b3bc15a3f7511620958fcfaa69e869e85daf7ddcff6cea52c1631ed6418c822380fefdbec1255911829e780f99daa9c6f4d729a91f28ef1d3dfc505971593663710f82bb95fcfd1bfd5c3cbf916afdbd7cb89fbfe586982d0bb7e78d031ebe310606557f83a87fb1070b6839499e4d360e2d36607450c720ab8a72f5 51b7dbb7ce2ffeb427a91ccfe5218fd40f9e0b7e24756d4c47cd55606008bdc27d16400933906fd9f30effdd4880022d081155342af3fb6cd53672ab7fb5b3a3bcbe47be1fd3a2278cae8a5fd61c1433f7d350675dd21803746cadca574130f01200024c6340ab0cc2cf74f2234669f34e9009ef2eb94823d62b31407f4ba46f1a1eec41641e84d77727b59e746b8a671bef936f05be820759fa,d03ed7399e6fc424af6c4f08715b409ba54237cfbcc4b27a2d97811f1cfaf8fe8a1e72b72c9c0c04587d89d9d3b46487eda3ac473dc325e2477ffd14f37da4ae638a2b14e103e2ac9e2f94a8be49b28db4144e2ef8a673412b214ee502fb517c480123289de425543a51910bcb3b52e9b0a5f25baa700a3de0782d4bb409938e7bda9b9a31d1ade69571e4f1835e7a89c41f35606b9fd7dd513200c3cdaaa0b25b6b2baea99b79380d33a21678bf7fd80b2b714e894e61321e559645047f68597244ab611fba697a079634412b64e2ac53ec230859ec86300b4544239bbf88558cdd48bf183ff1026636a1a28b512704c60e805cab7e1f8534bcebb1d40eabb8b98877bca3a98375f2c305803637b75e77effdda79991f059f697910453d2e986c9e6450a6115ba82506376222fe56da466fa8740707116f50f27911ba028a633e30a4f83558ef664b63b6890b766e46875a6ab2feaf64c3587a3f3872d179e826d2e8c6079f159c8a54f36cb770025e7628e936b2bced01b339e13eedf21cf01b783731875bbf199227b9a87e5dd4efa361b86bee1198b54626d105ff05b293308a7da89398f50b736d04113f38e3eb803baf06f049d207e1b6e3c919139ba6a94ef97649151327b2649f7ae1ce88d42ccee07d826b34943cc5d240c20d084391ea0f3ac7dfa5772bfc3dd37443c14682acb0b127c66c284f341d5badcfc381 83599d93f5561e821bd01a472386bc2ff4efbd4aed60d5821e84aae74d8071029810f5e286f8f17651cd27da07b1eb4382f754cd1c95268783ad09220f5502840370d494beb17124220f6afce91ec8a0f55231f9652433e5ce3489b727716cf4aeba7dcda20cd29aa9a859201253f948dd94395aba9e3852bd1d60dda7ae5dc045b283da006e1cbad83cc13292a315db5553305c628dd091146597,5c28103be52c28589ec6b8ea53eb4769aa91cfb8a8f5875a6201be4f03fc9a1caa8e582a11ffc6c9fd4cba3f5e3f21549514cbf8470568dfa2ece224181b865e224f8f07caa4a0891dca60eeed7ccfd23a62731892a1ef32d515165bcc4885997add88f59d0124b53e14677f8c4fff979e9998a76e7a3041d3fb0ee9fe528d08c80481b8e3eb77189aa29e64497269f88894dbf7141f21175132eccc4e56bfe70cd2aac208a6a0898a474470a5961324e16821a78afc25fdb7cf1684295c5036c95dd52478bd2fda24a733fc7e08bffca82387327e69bb63f8e769b423cdafa965734b666c489044c23617594b309afb2f262bebf447a87f41e3824972fffd9f4a0d06b4bdce742123c6fc7b85939dd8f837abf2990c6def398df2b44e40e3c25a6d9e4987b1bd636fc276cb0000095cf441ba3fa274f1f95ab321de9a5a9bcf219449eab4e91edfd058674a4e8cc5f8c0831969de0c17d0eec98df883619fa1df794f2d09372a7ef20bb06427125b6c0849eb80238855cdd3cac4c4968601d053d7e972785aff96d5483aba9d55e3695655ffe879d27ff6cfef0328764d87f786f6bc74cd40b48c50bd1428bce5aa96a477ea02b70d17333ff176f2e70b6eb7bdebdbd0750414e5f32bc521f381f1827214f4d5746a40558064d49e5484d54442f7414bf25dd469181d524462ab73b9d31a729dbfb06da0615fbfe49869d98d 2be9bf526c9d5a75d565dd11ef63b979d068659c7f026c08bea4af161d85a462d80e45040e91f4165c074c43ac661380311a8cbed59cc8e4c4518e80cd2c78ab1cabf66bff83eab3a80148550307310950d034a6286c93a1ece8929e6385c5e3bb6ea8a7c0fb6d6332e320e71cc4eb462a2a62e2bfe08f0ccad93e61bedb5dd0b786a728ab666f07e0576d189c92bf9fb20dca49ac2d3956d47385e2,0aa13616e9ee0c4c35fe2b921118c67145b8458e6179431e8145da829a2efd5b8831b067409487ff6c865b8cd69695fbb2b1c4ae1fcb014540b842f5fb3ea40dcf7c16ff295b2271215f5367fdea93c17b530c472b6200362abf8d81f3840738eea11961f7262c163f5bae5fed2ed42a936ce1a1917df2360ddf4decdae45e1522400f37d55687cd334b47fb8b55464ab7cff75e9dc0ce51d60b43bc2d468f1dd5bf489b690c7dcfcf6e75301c24ba534047739fe592e8637107ccce1b3d2e4bc037aab54b3f8dfe57b9580cab38a983ec5de9184af589d939fb7f6edc886790d1ca4c780f82437eefe261ee4737545eb7379ff09b644936f8ec9775e9f118a1958e7e4687c205424e4a31c08ba819f6827654eed2451f6a2242f81aab3a9aedfa71437e5ac288bbac9505b07e302bcdb109fdc9e2b753432ac6502a3faf9ec54bfda1ce399561410b62c4ff8fd922a1bfba071348ed9f1b242df772bba66a76c0c1cb209ccf7828051f0a85ba54d10b4db0d71e37a77abdd510ea1ff02ec72ba6beb54523de49167bf01594d0c49020cea7809bcc89a6becf9a6c655d9d1f06c2cb1d2d15128fbec2fc388dc39aede65029954735285463e2684226a10770358156c98300fa70fbe2c200dbc0d60f3194bce21bca23aa6554d56503c56e8d4a4b246348a8dae6fd1150cb6663c113b3f15fe8df8066c9bf3979cbb3dbca43a4 ca76d3a12595a817682617006848675547d3e8f50c2210f9af906c0e7ce50b4460186fe70457a9e879e79fd4d1a688c70a347361c847ba0dd6aa52936eaf8e58a1be2f5c1c704e20146d366aeb3853bed9de9befe9569ac8aaea37a9fb7139a1a1a7d5c748605a8defb297869ebedd71d615a5da23496d11e11abbb126b206fa0a7797ee7de117986012d0362dcef775c2fe145ada6bda1ccb326bf644,e27b1c3ba27dc48f20b9605c4fffe0f610ff909b482d213c34b49f0fcb04a927f0b1c4d2c6ab6c9bbc6e7db696f7e41fa1875d08a65e21d0459170e4bc955e7e596aa01c8f52127e858687e53f17691ad1b1aef7bbe75d09613281cf96e86ef93850ab4277a54b45de3663a906b55bceb2528a55ca6e17094e5d0d63f3294d8bf4df2da524296cfceaec6f1063a7bfa92b300a1c4ba7e2cea76ec4c7fe9531e7d9205beb4e2b5fee32cc0881401c573a88ba9d29b5f5a5caf044b0a7931bd605073b19d50f82d822acdf1a6674cbba6c88362baf769f4220d731f3e8dbe707b12d44208e646a441fe742290e9ff783744b0f5627cee1b91de431dfdcd7aedccdbe04eead6dc6ef9e9c50131fe37b6707edf8a021b3d9bcb0f62ab331f43c80b49f3dd5ad47cd3956a2b45a510fec358bd211b2fbf06b6dceb82a3190bd0ab28c7cafcfba4432102ca3067201533d64d44dce8a632c204ccac68b248f0fdcd54beb300e32ca76f03413b4401ba4721863577860c892252db31774ebed6bf8418ef0a12508bbb15b41dc0f2ee5a890915adb2d0f6e28ed207ee8b6536015b763a60a1a96c9945aeb4616613a0eba3b87c02fb1da1f9aa169ef4a5ccd967e811bf83d2728b88bb5cf2a5fec6020137c668ee4f21eae6d2759f054ab1559f9241ee2b65cf36a907720a7dcce655fafb5e534ead32a4745a947ba6c4b20240dd1fc40 f76b85dc67421025d64e93096d1d712b7baf7fb001716f02d33b2160c2c882c310ef13a576b1c2d30ef8f78ef8d2f465007109aad93f74cb9e7d7bef7c9590e8af3b267c89c15db238138c45833c98cc4a471a7802723ef4c744a853cf80a0c2568dd4ed58a2c9644806f42104cee53628e5bdf7b63b0b338e931e31b87c24b146c6d040605567ceef5960df9e022cb469d4c787f4cba3c544a1ac91f95f,b0fc5eac13ad8a3cc49b96e1d9fa96ce4658efacc7394de19aa7a28ccbde37cf1201dea78b4c2f127d397ab5edb08a505f72c70b61678ae081e139f761dbd5741df0cdd04d5a9015c0a65975e7db09d9999fb77324366ef22bb63f2776f9a783a263ce31583d0860f3b91a6620312aca03eac2c38ba62c9c9fa0b060a4f8cc0fcdcae1d414323f2d649a8e9f808fb02dbf926da2fd36c64eccc04909e2308d2c0367a069dd64e2dfdfed7a5a941d2b84c5b6a69956d43843c9b7f14a0636036444870b1b9329b38285a1054a1019b6e01db1c66a39ef9b20ec4e51580ef546e885b99c0e3ea1cd724f8bcf56d1d00d1aa3b8d9b487964e773330b3f84577da7ce9385d37a8f503456897f8be8dfa9a60d129e538ae0ca2f6bbf851f1e56cd3f14864ee0b119a1bac4181c667ebb6c464ab76a6b72681758c70422207e6f62ee438ed6fa467408ca04e48c53350fb11282e89d41a35efb31c80b18bbf4e28cee577798b9726a270245f35faa53da25dcb9e445a842d843da21f197f36d6b43e83c3617b2ac92aa937697d5589564d0fb4c225857b6cef6ead6f193aad457a5f5f7efd7fd88b1ac34b00f4788c4a549474a852403efcfb151d941c949be41151a7130d54730f615e638dae243eaab7648a028ccd05a542054e66b3d5507d78117734180d7656d77677a2c61040dc7ae56819489c0d106b798b9c549046251163a4 25b8c9c032ea6bcd733ffc8718fbb2a503a4ea8f71dea1176189f694304f0ff68e862a8197b839957549ef243a5279fc2646bd4c009b6d1edebf24738197abb4c992f6b1dc9ba891f570879accd5a6b18691a93c7d0a8d38f95b639c1daeb48c4c2f15ccf5b9d508f8333c32de78781b41850f261b855c4bebcc125a380c54d501c5d3bd07e6b52102116088e53d76583b0161e2a58d0778f091206aabd5a1,7b6bfd2981cc29669a120d28930cc39ba577d26be4a822499fd5d36c7be1528dba41f2a60c0f1832aae0edcc384b5552013be17e1c81c326cce1fff5e32b24985a2e2121b072902bd2fc6ce05476acbf2d2719128ab1c35f93ef82290a56542a044b295a26c85e4baf8b8544816f0bac4753d405c9ce02afee0b312b5ec8ad12a07bd3d177f4bc7afef6e092d23c7d445f8b21db59c9a6e819af9afde919ab550e1a6640967d296d3df3d987b6e62cf781a65ba41177adb60b7ca83f57c5ffea1d1d96bf9eb2914ccd73162a8b61b85211d010afb8afede8ea96473b080e98eb7a2f000485bfe6e1e7e6e2ddc1901e77c60db3a65c2f5e57ae72b0ca4bab6e2ec40f62f33e865f04598f66fe14039fe03c5df379319413440a31782c2fe4092b0b701e4b792ee449fa452c023fa79eac7a11a458b497213e7facad5d5ed475e71fabb4d9f6a2c2613a8d4df3f574b5c2a884645b6d5fefcb355ff18db8abd8a85f2bc531efbeb96f24e204733e9ee3f0ed2acdaf99713adf32dca518d5d86659f25efb8ec5e5d82e64460094b88db621962f76c9f12e739a5061adb812043b9bd01fe9b4e549bee9e304940dc7f05d45acedd417b9b37f214411f75b427e2e9ce14b6dca4fab0bc893001cb7a0529c1421e5b721a9bf9031d164c6c6192fb38c229c852474cbadd6924cc8a401662db173d7fc9fc0028c905574802ea77820cd 21cfdc2a7ccb7f331b3d2eefff37e48ad9fa9c788c3f3c200e0173d99963e1cbca93623b264e920394ae48bb4c3a5bb96ffbc8f0e53f30e22956adabc2765f57fb761e147ecbf8567533db6e50c8a1f894310a94edf806dd8ca6a0e141c0fa7c9fae6c6ae65f18c93a8529e6e5b553bf55f25be2e80a9882bd37f145fecbeb3d447a3c4e46c21524cc55cdd62f521ab92a8ba72b897996c49bb273198b7b1c9e,6d3173f315362f961f2728c60effd5ec721d68eb7d2e11c1973a84a19060eb5e64dd8fac20c76a89d811ce260d7020ea9f7ecc78eb3dc91171cbbd0818b31c4d717274dc164ec5af48bd1916b0440b4bea6e4d482329c17aa557dcb4dbad69ad74be1560efb043b78301b3b1d42e9c2b096cf5d8138811dee6ff3753055c77fb2c490bf79e2f7c48d492e59b5d74798a1095d9bd03ef74cd171e615dd3845499a546bf69ad263c1b845b05b5b3cb32351ce01eb10b918d192d1605802a6607ec5de09824790b5750685a8c679b54789bec0d6fabf80e5438f9bed0da8dc5773fb21c4cf231e1163b30d676a68ba04f7c6bfe5aaa2807a52a84e1d12855ebfb2bdf44c34ad846293d71e3b05d17c1d4102d5c7775f30d13f8290c89dff886b1d126834516fd3acc848b988ed4c4f046b39ca0bf2f17a0876b5ea782160debf5a2709bd38fc0f6bf3d1e286b7a34a59afdf4b7559aeb2330d94576bc10bf5d1247eeb12b45516c2287d6738080569fe9179b83a27f007073428c7316ac974dbd98e137e771fc7f4ed1b779c3c6774a2a36a5cabaf10ccc742d9190a3278a33d6af490278796ea76d8706b99561390e06e90396c4caf101af1d86748171d07b5794fa831acc94a2452769c83203b2f845af987c81bbd02aa91a1ca481abb0b25991c0e61836ade076f25dd1852a032a223b3d8d12cd544ed0a2f97d735a0e1aa9ac 4e452ba42127dcc956ef4f8f35dd68cb225fb73b5bc7e1ec5a898bba2931563e74faff3b67314f241ec49f4a7061e3bd0213ae826bab380f1f14faab8b0efddd5fd1bb49373853a08f30553d5a55ccbbb8153de4704f29ca2bdeef0419468e05dd51557ccc80c0a96190bbcc4d77ecff21c66bdf486459d427f986410f883a80a5bcc32c20f0478bb9a97a126fc5f95451e40f292a4614930d054c851acd019ccf,07cd8e0f1916d265a748a8eacbc81b045d004fa104faa1e3752b9af131367ff0ca7f63db46480b67c405ec16eb2922e60667018b9abd91fce022ae9b0faa249444b12223cb43750a42b1f9166f54836c7866bee31acc681b521d61eea57c2e84a8f8cb9826e20ad2b14377b313225b50a1b49aff085f89aae22d3beaed142c585316615281d88c5482e9f7e23770da82f27d2511e30dd1958c903ef7af6b2077252c7701d474f8da4149ab45d80b6ce9ec1cf08877b6ab13ced7fde405a1ded59f856068d3619aea92789e8e31be67dbc2f402fddec3e3e505fbaa396bcb6dfc5861e497ef576fe4015ef743bc4d5936f8a5247b7667a321614539bd4dfbfd79f3bc90e6cce084e8aa6c9adc17c2e1704e4e2eb879db4d6a7a6621c972ee54ce582f3403c76bf3fe60adf14d21d6438146ec92673b4d277825f1ba515c86345cc280fd66a006a387488bcd537c5b0325b21bb69e629763259884e9c3202a16acb5234caf9882abc9b0935466f0c7104a04981f75488eedcaca9ef55f03e3323fd4086e19043db1f7ed7f9afafc968b7313fe6705673cc31387935f92c26af140d2aabc7bb76f976ecb2a6f6dd1d0e65dd997f8648b7bb9f1c9acebfe1988e9514f8770da4df0b5ef397e58470c656898667a2e0218c70ceabcce94025c3914c91bc1bc76e82b1c17a7b938e92a57e953cb80ab15726776382c74dbdb5faeea56 fa85671df7dadf99a6ffee97a3ab9991671f5629195049880497487867a6c446b60087fac9a0f2fcc8e3b24e97e42345b93b5f7d3691829d3f8ccd4bb36411b85fc2328eb0c51cb3151f70860ad3246ce0623a8dc8b3c49f958f8690f8e3860e71eb2b1479a5cea0b3f8befd87acaf5362435eaeccb52f38617bc6c5c2c6e269ead1fbd69e941d4ad2012da2c5b21bcfbf98e4a77ab2af1f3fda3233f046d38f1dc8,16caa902c04424d5fba44b3adda34326eeff62d6354e3ef5200dc07a0325b2004cfbc3c972a453fa32bbd68af381f78fd768158194adaf9b10a2a95d9ea9e8d0266c5d3271bb7b59226c8eaa9f15f9ed324ac91fd88b9a23f50eaf0f17d8582e8476e8806f31b58acc36ebab6b856ce1738704753a7ed31f822be83e4e08f2a3f3dd52d4bdf8090dad90a015e9184a3202974897d525f23a4eafd1a565b76411d8b78df548ad2bee3830faaa3e8add2dbde479236ad2df12841622877eb4ee895a0af9799dd727ed96acead478c8f4b9aeddfe7fa3879529c60026ba0a7966799b372b922b4cff3f6213c5d73c0d778cc4b9ce67013d905870b12cb3e2326223f57fdda8da32f3700e855fdf3da47bca440b219a925258d6b38625ad1408ab303855e3734067ed188fe122c5c279710e8edf954ce4f43f692da7eddd3b84164c567b2852efa262afb09f49e50b8db278ed215efe1f0f43eb8bed5c3f1ecab591e191cd36b6ea75260285f667c204e159e72072e165457a170f32a7fe29664051396ba1bc202663f1ca8f17a99598df58a512b6685798e5e93faf9b49c9af0ca8fe4b6544492027cb5599448643e1efc642c7c71821bc06d5c600a80cf43fa64342cface0c57071627903def82a0ab3a3089c06f89f99a5b3e11524ed2fad86b73f3f48bc5b912cf31286c498305b77cc8f7d54f343993888ced370dc93e0cac9 e90847ae6797fbc0b6b36d6e588c0a743d725788ca50b6d792352ea8294f5ba654a15366b8e1b288d84f5178240827975a763bc45c7b0430e8a559df4488505e009c63da994f1403f407958203cebb6e37d89c94a5eacf6039a327f6c4dbbc7a2a307d976aa39e41af6537243fc218dfa6ab4dd817b6a397df5ca69107a9198799ed248641b63b42cb4c29bfdd7975ac96edfc274ac562d0474c60347a078ce4c25e88,1e8fd76a766a100a4434ad568da7e753c08e76e515dc7a4d42a9cbe5369e3cfaab7a09799b9cb66940de779266051581e6b039e76f446327188a6b34565d738f1a926da3be16cf6ebd6ff7f788fdbabc0961158321e34c26207ece1a122e73d5f9675a2fcb2e4871fc04875fbdb9b6411bebbfdbe71dd643ba6bb2e2ccf46d1c1df9dc6c0777e7a19823c1d55a648b847e398f52d02d5632a69323e588acb113289260752be85a42746e62087b5a32df812817d0a2409c36f6c80912d4ab80d47c7de7ffe26e10b1c850b7339274dfca594d418c3c4948bb3528f4ea463cfb54f7944b32c050c1c3651168bddcc873ed8057372743a6cc8365763b523fb3d9752a4fdb167a768e96c7d4f277bea031b941bb7002db130b76123a0edc4544da03d9255bdcd896789123d9999aa6bdecca01e4fbfe33860c74ed2fdb54412db927df2d896d289a87591377923edbcf2d2ae204ae6ea85b1a9ad2c2a2729dba3d6e6fab6269288416d569532793e49f61e7002871b8f4a68de84ddc42d081d1c4cbe332ac58c3d81896a438d1861e594db79390ac2bc9398dc21b27e6f7677a94f91ebed0103b2e8ca4068d6489bd0ae5d6b77053616335ecc7d7218b1b2df70a279123268a06ea959965ca1aa26e1dc273142cfcad570330aadaa62e04c383a938ce349c997bdc41e9bc38c29767b964fe2d8f6df96ef1a5bd0a38f06734327315 f6d5c2b6c93954fc627602c00c4ca9a7d3ed12b27173f0b2c9b0e4a5939398a665e67e69d0b12fb7e4ceb253e8083d1ceb724ac07f009f094e42f2d6f2129489e846eaff0700a8d4453ef453a3eddc18f408c77a83275617fabc4ea3a2833aa73406c0e966276079d38e8e38539a70e194cc5513aaa457c699383fd1900b1e72bdfb835d1fd321b37ba80549b078a49ea08152869a918ca57f5b54ed71e4fd3ac5c06729,58407675270c110f4e998d9eb9f9bcab175e4d17f2c3a88896f31cc97a389728b3a93729aca3aaa426e2caf11ac9d121b3239915c857fd377fa2871f76e533a954e6790847ff03531111a89b35192bd624a5fe0823992f9a7c25721e10897fe397c2de7828c258ef6083544aab1c7fa5afcb7b27fc37e64ddfe827883fa0389b8e785676c92396c3e1c1e161e2776538cfe4b6e20653f5706f034929ea002926c0bfb6d9c31857bbbef51ca094faa6a7c9c6b34dd92182e21aa47923c908fa00617f9e910eebff2be3696b6bbd489d72510840f075e24c81f63a52772b8b5f3296c7f7095b4ed732f5dccef632a37f0419378edf651df2870119a4f1eb0c961ae792d7db1fec88ba12be14520648ac3c78d7304305b75d3b1aa631591c1b8128dbae0ebea7ae1dd44ed1950a87bba1bb72fd0bcf158f7cfa4881def36b30a36425c429e3d4bae81ec821b58b6ee1c5fb9c9d93993cc1c341921797797d39cc523d32987eb0d75c0e502f52ef1ffb3dc10a19766c2117122010aa729326ac5273bed622cd04b924c60cd405a14ed06adfcaf35b1ad5ea469cdea963d7e97b2058d2588bd866a17d701761439c491a0af937f7b8b5e8fc781737986505cdcc593dc0627c0ffabc0a1737afae194e24888377af99ad33aa8a0455cba1411a40d1d66abd03f2da49c34c74c65c830bc68c36f87f9e578072ae67a60c23a6ab0f02e0 cf8562b1bed89892d67ddaaf3deeb28246456e972326dbcdb5cf3fb289aca01e68da5d59896e3a6165358b071b304d6ab3d018944be5049d5e0e2bb819acf67a6006111089e6767132d72dd85beddcbb2d64496db0cc92955ab4c6234f1eea24f2d51483f2e209e4589bf9519fac51b4d061e801125e605f8093bb6997bc163d551596fe4ab7cfae8fb9a90f6980480ce0c229fd1675409bd788354daf316240cfe0af93eb,d102bf50a47c12ea4c8d5169bfd14cc92efbdc10b042631b1e0cfedb32de59947eb35402fbeab157062bc6e89e0cbae88bc68190b51ff1f45ee278a486e8535cd9d272a4439ec3f7e65f1c11209b77028b78eae7a19cac0be054fe0811ed8a1f230954fd78130d27d909555ec58dad0a7494bac5323fc56e616795de5d16c1e6427a02e7c33fa8c74459a24ac3a377a7d5d9036afe7f23830fa3ed8f4762e86b3abe0f3159377cebb1e6844835374534f86c04b5215345947ed2062872f3c8fcc82826b0ab63a9a5ef699687c44602f61bf1e9af303f977bfc3232235d95b5b6aeb5241010f01dca2807fbd43d84675c5839a6e2d73b60c037a9e2d98f3af199cb28e4ea6b3beb9de80a702c8b70c039b32b7d63c892a6db1b6fe5a9e2638e8344e4ec2e77394fa03735c7201a656ff0a95e19a6f8d5a8c41605a2731235ba721a4a74f7bce9cc2b1fed1b92f42c2eb665a41ef09b83e75d1b3a438defb704bb360404ba7d67bc00ddb8541949633a106a2ba75930f30f6079bdb01568e46435ca6bf80ceaf3f0d878a560c969263202a8ea9500b71369c958737d85bc3bfb4c3452a47cc9aba4d69570ae9a2449c1cb84ca47f226471423f0ab54516458c23e31df0f80f9a3eb37b0e74dabd4b27bd1ddb50650c92fd01adade439445a054d463f3b068e0f890c33d9f9bb4c31a15945080717ccc0cdb71199b7cf607afdf5e 2ace31abb0a2e3267944d2f75e1559985db7354c6e605f18dc8470423fca30b7331d9b33c4a4326783d1caae1b4f07060eff978e4746bf0c7e30cd61040bd5ec2746b29863eb7f103ebda614c4291a805b6a4c8214230564a0557bc7102e0bd3ed23719252f7435d64d210ee2aafc585be903fa41e1968c50fd5d5367926df7a05e3a42cf07e656ff92de73b036cf8b19898c0cb34557c0c12c2d8b84e91181af467bc75a9d1,29f1559d1ac3e5f5d6f36852e6fa06ae720b939f3ee14ff2b354c9b941a4f608313fd16527486e4dc5c032d0278297797cb591b80f3190ec0f1fa08f87a529eb22a2247e71f05fb4b1ed4127be219e73b8572f9ae21356d8c245fb3ad4de33a743536dd852f2772595d2cad5e85928b6199830ea78d6d0226e7d2cfc35af41ebb590215e416201a58d990a848125247a1a8319630db6fd7f5ff4cf2499f94f1c0041afc9764c2bdf2b0faca97b3a9f8f508162077fb21549afd5095ac0f2d744065b90b9cca781640213b3920b284c6ae6e9877366ac4695b19bc7de88f3e6113fe6491e7830b4cdf74d3e170d7390d9b0403923c8b6471eb5d639e2704d3c360f4e38f6774c6a440d68c2898d11f17601f33ea893c5e4b42d2a7be5d07492d20d1550ba335e3d105b4898a2707e5c97b61011707375d5af0fef1477fea62d383c227e2db4cd59b85e45a81a4562e7541dc2814f20c969028ca8a0e9c14386a648346898dbde372ed9c09a40a2af6e0ac541be0abbab84b2dd6a2fdac9eabbb8c87f58dd95bba7db96403b9bd2274367439775119da7ebb8bc46fba2a50c75454e386c3749d03691f6705e70ad716095cb30326b1e628b0e29d7af932f554a6fc0d0769c4d0a56779a1878de7c3671b68a4964c5a9fcd86daa7bc5b95c6044ac825baeb4f073afa2502cf3388290f5658094dff31f9c68efa7ac1d74881ce092 0d8d09aed19f1013969ce5e7eb92f83a209ae76be31c754844ea9116ceb39a22ebb6003017bbcf26555fa6624185187db8f0cb3564b8b1c06bf685d47f3286eda20b83358f599d2044bbf0583fab8d78f854fe0a596183230c5ef8e54426750eaf2cc4e29d3bdd037e734d863c2bd9789b4c243096138f7672c232314effdfc6513427e2da76916b5248933be312eb5dde4cf70804fb258ac5fb82d58d08177ac6f4756017fff5,c73d8faab5d0b4d660bd5082e44c3cac97e61648be0a04b116724e6f6b657684674b4b0e90d0ae96c0853ebd837bd8249adbd3b60a1ad1fcf8a6ab8e2f5aa7ff197a3d7dbedefb433b613536aec4d655b7bcd778526be667847acd2e0564d96ce5140c91357fade000efcb40457e1b6ced41fa102e36e799792db03e9a40c799bca91262948e17605065fbf638fb40a157b45cf7911a753d0d205df84716a57112beab44f6201ff75aade0bafba504745cfe23e4e60e67e3993622aed73a1dd6a465bd453dd3c5ba7d2cdf3f1d39376a67c23e555f5acf25bce1e55f307252b9aac2c0a39c885c7e44f204cb821c0d37a22de3a71f3a1909b11b7181c42be9b78aa0d0a15444f330007554bcfcc0d8fd87d6431fb93c7cc38767a55d30d3545560bd380db8c4c0eda9399f68f854644266c1b7958b270e75b79134aa01e7dcf1e6fdb6d9ae5d02cce8ce8e480475e9617cc42a91c08d9af6e5101b8ac5834adb2c66987f42a580bb503a4b34a9f15adcd0e23d0d4029479764831d06b5caf3f14b91449f15a291f4ac250b270b6cb3c304725c99e32645e1fc02a0cddd9e717911f2342d9482f8e0979985a0170d725dab4ea66d44f626ba475925fa39fc9dee929c06d009416c0adc1d987cd625a20acba4cc87f72f610867c3a7a928a3a0379676e8fe257107ab2f5c030bd2480e3d1863562e1fd0790280333ed9d5dd5a5c c3236b73deb7662bf3f3daa58f137b358ba610560ef7455785a9befdb035a066e90704f929bd9689cef0ce3bda5acf4480bceb8d09d10b098ad8500d9b6071dfc3a14af6c77511d81e3aa8844986c3bea6f469f9e02194c92868cd5f51646256798ff0424954c1434bdfed9facb390b07d342e992936e0f88bfd0e884a0ddb679d0547ccdec6384285a45429d115ac7d235a717242021d1dc35641f5f0a48e8445dba58e6cb2c8ea,4a05f2ef1aad5ff4306429ec0f19044077fb64bfe1dcc50f74c3f045e9a9c3de4a3b5963aef771b049111b7b4640e20b1ba84ed7afee325571acf347e311f33c1d421f21d663065c4daddbd1785c5dac0d554cedb1a45a32e28145e98f49dee285b33de14c336d10950ecc30966b79e8613ffebb702fcc00a1c4250dd385abb537a284e9108d16b6f08f4e103f2c5e9e5c879cb5095534151e3c9a316d06dce53b7f01b424d375b564fe6839d1d1f00a2e62604060a9748bcdc8143737959fabbcae1851213e6dc28befda48149de6aaf4a60d4615bed67d11796f6173c3dcf139037b31eec9a8404df07597bc266d3c7d9eb9a7cabf749fb44e40d746d0e9dfb5c8bbeb25e3f1612d03d3eb0c154de4b2708c4f8a89762e171f744518aec134a02eeaf49db2e2c6c9914711288d6b0ce877861d9b10acfcc19643738287da005282f3fc82f9f50aa681f2f55fe1809c9e23a3a59e51c2e894f718372f9fa1564b47ab3f43f0747a17839e933369b6778053e1764f52c5f319e33c8b25678f72332e33cca97c68f19e058e70c31410df4de7e08169d6096b7b4ea48271eb684fee9fc8b561c3fee2dce83d092b142bec1478d26b48c3c6e597a7b2e44027e1eca23178d3afcc67bb530a529c7e1336e1adae74ef0be9cd61e91c6aea57f7ccb23b64b2f84861ce159209fef7a897a16a871aa99e63a5126df2b03387e42c3d18 b39feb8283eadc63e8184b51df5ae3fd41aac8a963bb0be1cd08aa5867d8d910c669221e73243360646f6553d1ca05a84e8dc0de05b6419ec349ca994480193d01c92525f3fb3dcefb08afc6d26947bdbbfd85193f53b50609c6140905c53a6686b58e53a319a57b962331ede98149af3de3118a819da4d76706a0424b4e1d2910b0ed26af61d150ebcb46595d4266a0bd7f651ba47d0c7f179ca28545007d92e8419d48fdfbd744ce,d99e2166e72399f4b775c8c446cb809f149095df22378ddab711b867e3cad17830efc3b9f7d90fba1327e103d3191595ad415ef71604c7a95dfc417f14f5b5ac1b6905396ed94d56ed993e240586e95d98f3d34630c32fc1719e7754bf4f12a321691efdcd42dca695bda56f975ebb08d59f76911ecec5b503e7030d1e626ec89cfde51042f1b75063afb50ff7b43563a09e209b7842507b67e85e87a99fffa72da7229ce5c9f5303eda061a209f46c76be4114bbf5ebc5aede7e22f5921da87265c19f87f1e37ccc218acb903bfb4d617cb95df94255f980924a045b959aae9c58dbfddafb47c9ad78324d27495eadfe665e8b7154ee52ad0219421014fe945aa8c2f3b6223f99e170d2d169c13c0d1cd481b6901a1770dfcb39eccbb40fc6790e69c61c9ec6e99af6e557eea2aad2e73d8a82ffdd2fd32c63dbe4858d97a5955c6b3420fa12af5cdd10dd8c9d6d3c230272187e855b9f405853e6b8e199f071f0ec781be8dfc29e93288f22f600302475ce1651d3cb671a0635baa3daefb73487a813a0448ea5f2efc915c847795bb0f4f5879df7b5c95a2dd3a5ce79df85bcfc1d99ae98748052a27b775b690ff9b0240e0bc0b79935af998bbcdfd37a2829482a9f51ffb253152eccd35588d2cd96bb19441a14d7cb3b7eb2f47cfff6bd8ff73bdf9d9c2a613ebfc5d69a3d7912c4cf2b41db244267af889d47a037eb961 a983d54f503803e8c7999f4edbbe82e9084f422143a932ddddc47a17b0b7564a7f37a99d0786e99476428d29e29d3c197a72bfab1342c12a0fc4787fd7017d7a6174049ea43b5779169ef7472bdbbd941dcb82fc73aac45a8a94c9f2bd3477f61fd3b796f02a1b8264a214c6fea74b7051b226c722099ec7883a462b83b6afdd4009248b8a237f605fe5a08fe7d8b45321421ebba67bd70a0b00ddbf94baab7f359d5d1eea105f28dcfb,cb7a1f8f3b4a92508eeda0287ef3407c5f1a51f2600d3f13c214a36f54f5fa63878dbf6e76e570b72ed63159e01bb948d0ed7602e9d649afea2bdd4c97c7b22ac32485816d9f0bd8fe1443c7709884334e4aeb5104fad05b6c62fbba4f5c5bd2cc9cf576991da24ae01827f3ea70509e45e1bb0742f3f21d673a34e9ae992abff4a33effe61c2c7acdd0b653757c987dc1f575b7181e79702c82a389b0dde618dde5ee97a1a515365d04f3413bff31c3f9f222bfba2061993c7562aa7761175fd51d48beafe94e16ac34179cfe68791ffad63358885c289c0d1d5c99dc42b7dee58d9ed595cf5158d4d5055cb249025f3fa9690a18c9459d7e8111b88aa37d26b384a7bd02e923c2aceddbe31a6f3237ccaa778d5f7c71ca96e72e11920377c785aee9da9d8f11a4d4caac6cb66ae4f251422104e5330bf06c004791ada67d687a0462070b51c0860f1af7af4968feaeb157a4a4448b69ae1166578804d384720a2baa55f06ab17fe0b4a5e4ef058a14d17f99bca359cd1e95de00b5f309052ff4231ace9e1bcb6684355edf7924bce95264c3ffc641588fecc3775af5e5361b5ee995f85f9a612a0055b22f2d440dfd80e91329a2fa02e20476cf84120634f9c320e6803992817947efd9bcf620f4b038cdfda1cd559801ce76ffcf4af63a4af6284293789b548314b2b88c2ddd31a6c92e4e62b705e196cfb2d978d6f32f3f e4d1c1897a0a866ce564635b74222f9696bf2c7f640dd78d7e2aca66e1b61c642bb03ea7536aae597811e9bf4a7b453ede31f97b46a5f0ef51a071a2b3918df16b152519ae3776f9f1edab4c2a377c3292e96408359d3613844d5eb393000283d5ad3401a318b12fd1474b8612f2bb50fb6a8b9e023a54d7dde28c43d6d8854c8d9d1155935c199811dbfc87e9e0072e90eb88681cc7529714f8fb8a2c9d88567adfb974ee205a9bf7b848,908fc63fee9e11d44e7bceacbc161269a96993d101265f825b86c107c61cfd11eba3cfdb0983bc9ba3a81ddbd8517d2e313997acbe48a47aef48b3bc1a56eec2fac280c96d9adb557b14334c6c555f374aaf9f9560815eb7278dbc81a78e3dc4144b879119c310a2283862574d055d2b0d8d53219c479e8c2f6dac3186c1ea36a6517d26e14f2230f00a1b30b44bf987b3a3f47240498734e6858444a82ed1098442688034d38c578e995424e1fc2386fb10e682eba287f3757b8a4cef19544cda032c3592e13e07241ae38f0bfb77b030273b28d09637b4ad359c7798cf6a76980a3ea331597dab4e18add97b8404d4ae4e5ec874d0f31a60636b2bde4fcfcab9569205e7261fc728a701f19e3791b538bb1ae8e1435a85f7e8f7b95aa45d275af770fd9ff856f6666c8598626cb54404fba35b523f55ec971f70e10e09fab0a88e39ca1e7180b482985e82eacd81cbd2c8675f8bd41691cfba39228d4fe2561c2e8ba1da3124ae3204517f09cb4abd54698f1010e1836e141c706b9ff0916bacf70010a0f75110e79e95a48fcf4724bc0674c9afcf12de59d31c64e532572da4586bc73a6bebed22752a05bd1add51464180de96cdb44d11611fa661d0eac1080dbd25df51a2c7519489e05e1be5b05c60070eb8075a9f0b3fdf6c14d6c07076578ed3a16d8e048350ce9b2956ed00ab61b024aea9e07c87665b7f33e2f5ba b10c59723e3dcadd6d75df87d0a1580e73133a9b7d00cb95ec19f5547027323be75158b11f80b6e142c6a78531886d9047b08e551e75e6261e79785366d7024bd7cd9cf322d9be7d57fb661069f2481c7bb759cd71b4b36ca2bc2df6d3a328faebdb995a9794a8d72155ed551a1f87c80bf6059b43fc764900b18a1c2441f7487743cf84e565f61f8dd2ece6b6ccc9444049197aaaf53e926fbee3bfca8be588ec77f29d211be89de18b15f6,080c392ee04a0d4efe020fa6c20236e7c1290088bf6ffc2cfcf72d1b16a21ed000fc7a064491899bda1ad4856449d89ac7bc54e3896534837ec4bf950a18a3ecd5ff286d1d0a02e90531298f2430484a667de0121e0d0b392679ad9168bfb4f0d020e7ec1aec006bd0e8a551bb7ef0b751d0075f615c02775c983f45212e4f394e7680d9f81254431bfb9e772ef2ca54600d2f1f4db12d6db49bb9adf03ba6c912e0a8bfab20c0f4d3da675a908277522c8964ace05f138d192b7a2efd8fe663fb4b2486339555aa1c35da18d8899149339f1ac47555080627c3aef75da932bb063fd3dacb6e0019c7ddc5627776250033e6f47eb5930907fcc1f1b627b520aa18b22b12103f3e361801c6eb8b72e18ca9c43efd1e8a04948a9a7ae1b92e177ac6d3cffa217e13cce790efc636153fe24821a7fb500e61f3098711f60fefd6ea90f6f63d6822331d8ceace7c192e3482192b0a408e5c5a36a7c7a5490756fe4022c7d16eb28232a70ec1bd675defe9f87a52cb633dc5bd99ca49d2bee54870fb0919217810ac08312aa2dd16556089fc8706d0293ebfebbdf11204793901190bfc7aff9c87c9b4fe9116dd1e1789e08776efeb71f619827a89287e183dd77c42d791e7cb4ed2e051f2cec42d2ad83b50ef3c0fb6adfcbaed484886a4dcff41844abbfa46016a0fbfdf2d891b982356b315dc17d9fb62517e3163a93aaf05a12a db11f609baba7b0ca634926b1dd539c8cbada24967d7add4d9876f77c2d80c0f4dcefbd7121548373582705cca2495bd2a43716fe64ed26d059cfb566b3364bd49ee0717bdd9810dd14d8fad80dbbdc4cafb37cc60fb0fe2a80fb4541b8ca9d59dce457738a9d3d8f641af8c3fd6da162dc16fc01aac527a4a0255b4d231c0be50f44f0db0b713af03d968fe7f0f61ed0824c55c4b5265548febd6aad5c5eedf63efe793489c39b8fd29d104ce,85f82caf1a3d6db8e7c6cd49c697dc314aeaa79309fecaac21ff46639ee5cdcb719a6379d871138041f2908d4dd605ac31fde9f89a0136018682ff1cc0e36a3019a260fda0fe430b082445b7f10f56a50e69a8260954f72b356b710a35a5a2a22fafaa5b3e4e3f0919a1fd44c24d33efe5790f9fa707df0e06cb4f195f1af7b2578eec38b8565d34de9665987f3710d8388176aab6f3d7ccab61713b175d5343958419f7c2d65775b7becadc1ab8dfe486efb98d336aa17ec4083dee1253a7e2b32437d75fcbd338f77bb1548c704090c3417db225534f85c92ae1e9b16f66a624f5309297f2fa3df12fac8af36a1f2a11093d4544e0a67c826d7cda89730031d4a35c64bff9cb9512c09fe45f0d628c075737819252b38724bb5a341d3045b4fa4b8ba742b947eb66a9a9121a48b8cfb83b41c90a7a672a4b9bcf2d1a32266c8f13ec46df4d80384c117a56180398d2268c8009cf586abbb7452911fd73c9c3449004a11aed41b557a33d7825c42575c75c0641393346c753b1415d4d4ac224c831f185c2b635c4b6b1c388358c232dc629a090fc0d472a4cceed43fd9657eb33850171f9d6d2dea433874b47f77dca16cdcd782ec1a335d2da3c235914315a243eac2ab81e06d97dbaa25ec029a62f58a1dc78d586c226046886c23a3d9681d68503893f8a9ed9a5b53a22a1345db167be59a6ab8295b41fc464329a6cb739 bebd4f1a84fc8b15e4452a54bd02d69e304b7f32616aadd90537937106ae4e28de9d8aab02d19bc3e2fde1d651559e296453e4dba94370a14dbbb2d1d4e2022302ee90e208321efcd8528ad89e46dc839ea9df618ea8394a6bff308e7726bae0c19bcd4be52da6258e2ef4e96aa21244429f49ef5cb486d7ff35cac1bacb7e95711944bccb2ab34700d42d1eb38b5d536b947348a458ede3dc6bd6ec547b1b0cae5b257be36a7124e1060c170ffa,e07caeb114b9180ed922574badb071b5962ecab18474d1a82216b152dd0dae5cce14001fbe59e25f55604cc3c26e5d88a25393303ff47c1f14c87ea4d16b0a435a43a3ddd22aabc7adb4680c8ffa05baf28f45f95abf93f8453e267b5e584c7aab8e2cf2723ecf211b958dd8277b89d3ff2470cde45077de7535840b0bfef8d2af5fca3cd91fa6ea83c5f7b58c75da302a67154474b563ae9b59b1a3be93ba2bc2a5484ba24cc409896109cd57ab6357376fc0b65a46506d34dcca170da71cc52dff4fa34bc4b979a130ef5663ccc28fbd3e36b6cd103212a96b8710b49ebdacf4a8c41a5860175b694f75f077718c93170a98ee9757237ee90e8692e4ad6c1af6979d567c104fb3f30ebb5bc52b99a934d527fd44704de65431d8063df25e4b31a89629e1f7b7aed0e49c2ab6d3055675c7c63aa4e7686c880f3af3f6caf7251bd8b9ebc0a3c46c72b05ac4db44e85068811ef050f042be1e7ec841dc8f7eb2a7d9d2c10eb3603f952e307289c1634c7d9e648c36b75f31ea91c7125debc5bd3f70f7cca9330484abb5a73523013dc507e1fc5689848d6985f73866ed146506df21bc98d35bc24256c4f911c3d4ce437798431f68e7ea9f608e7bd98d7df892581b2756106a5c7590f6c33116b7c269d4a3010f121aeb0b10666afddebd18af9ff571241ee39e4f2e7802cc75dec1ed6e7f19985774f0733c833ccb9d82ca1a 5aca56a03a13784bdc3289d9364f79e2a85c12276b49b92db0adaa4f206d5028f213f678c3510e111f9dc4c1c1f8b6acb17a6413aa227607c515c62a733817ba5e762cc6748e7e0d6872c984d723c9bb3b117eb8963185300a80bfa65cde495d70a46c44858605fccbed086c2b45cef963d33294dbe9706b13af22f1b7c4cd5a001cfec251fba18e722c6e1c4b1166918b4f6f48a98b64b3c07fc86a6b17a6d0480ab79d4e6415b520f1c484d675b1,1ba3e5682b5210c2503367cf92fc02ba6fefa6c43cf725d9e0a5a796f949bf605c9401d6235c09265c000afcca9facf32b1c6cde831d051dbc604b72b90689cff3e9179bb0a8d151c2fca7db9147a8a95ae8831c475b16b2478fd794087d0d979fa66da5240ac77be4cecb3dbde50fe372c5045be23fde7cc0b6b86a0007d47de80d59a2dbc7883bbb2f76b74e7eb53e8c929ab73819bb09cd61010689dacef17beeada0311f2f6594922ee835dd09a61b41aaf5792c63cec79c40ec126a68deb00eeca6aaead43072ac65e7101b4c7a3fb42101bfa922e43329e736d1dbc90ef45032c82e26cd102176cf8490b554ac9c6fffe81d281cbf29bf5056c06ce2cda918bb3c9f8f49a045dd2cc4d680ba8a22562f1dc53838665720ec60e4e3bcb76014b619ee24ff41b2860b3ba4438527d975a1302e8ff1923211f36673b0be8b58bf0c7fefb0cd50a28a386ce6dad7c30b8f6a3a437e864143143e638fc6474a2a8a6640862ff4c4491fdd52ece0834128137011d46ee7b0cf611b237ad515bcc11fb7b0a4650fd6e60ba8b6bc601de5cf75a66c3f16aead1ef19c47420a9840ca4b1352af4c5c217350840ad035621eabf2eada2a517250d3a6ad834caf2a472b2d5dca3829c372edc64703226ebbccafd316e4ea3a9bc9aa8dd42a9715b29702bba9ae232c7806e5c0c02aea68602f4b580396b27b94385a3dcebece345828 a5aad0e4646a32c85cfcac73f02fc5300f1982fabb2f2179e28303e447854094cdfc854310e5c0f60993ceff54d84d6b46323d930adb07c17599b35b505f09e784bca5985e0172257797fb53649e2e9723efd16865c31b5c3d5113b58bb0bfc8920fabdda086d7537e66d709d050bd14d0c960873f156fad5b3d3840cdfcdc9be6af519db262a27f40896ab25cc39f96984d650611c0d5a3080d5b3a1bf186abd42956588b3b58cd948970d298776060,7f8d0ab3060b5a6acf3522a83ac1a432dd9ebdd62bee5ca14cc54fec0d3ab6d1eacc33603f214c35e8c256bbe7f0a1c110a65a6e7f5ebd6733350dcbba851271a0ea684a0afa032ef530511b5fd923399df93567d9bb1eec74d6fa4ac5451d81feefce00a7074a1f32498ae68380e2d9800ad3da75e0bfacdf66b9f34ce4c60615ab46a8310f85c2a7f9a737e8e19e0bcb540fa9f621378c44e2dbbf57c059d52f79fda1db8a3d5b44c558c8cc70901219ae76cf5f6db962adbb6515b25b5fc81cdca21b7a51911c5f5c52e8f2a863e9f09e927d8f66b063afc73cfa8592b710063544143a8b5d06cc78a604e9b72771de91f48ee55c9fdd831bf91171532ae5edcaca1bde2b96362d4e30115e12ada76aca05dd128fcb524ca8831cf2459a53d97ebc3ac5a25517f254a14316a402a509ff5868cd290c88f43229be54a3443bc547a093687b3c3d97a4d1a09004cbaa6939e86cd75f5135d9fbfdde568e651806af401095c3602ba958fb7a0f4276791b28a6bb75a6944eec6eb8cb9a7a9e288916a15a496df80777feea0f42695ac62e29f137e355a13b630f30e5d4e4435c3180ee86173f59bc19b79065cf3f33f8bbefefde35a8ab09c13dd9d326e98c9730bd033cb2dae20bf076ee9ce764d48bf8a0f7bb9181e60889293866e1c601ab38122220a2ccaac996fb1770cfdbc4e628bba2b3122e0ca351fada84f8183ff4 06cbbe67e94a978203ead6c057a1a5b098478b4b4cbef5a97e93c8e42f5572713575fc2a884531d7622f8f879387a859a80f10ef02708cd8f7413ab385afc357678b9578c0ebf641ef076a1a30f1f75379e9dcb2a885bdd295905ee80c0168a62a9597d10cf12dd2d8cee46645c7e5a141f6e0e23aa482abe5661c16e69ef1e28371e2e236c359ba4e92c25626a7b7ff13f6ea4ae906e1cfe163e91719b1f750a96cbde5fbc953d9e576cd216afc90323a,c625ec73e6d951eb899e865b5012ed72229958f2850a79cb8221ad2248a8d670a8072519ae6dff8cfbf7a20863fd01183d55093c80ccd14106426579ed2fd99578532f9b4d8e11be19a0f0a8336fcbf1bb1d6d91247dc87b563c1399f50144f563f8583dbc208165c106567ec51ffd321d9f2aba7ad2e7f2c1950d04e9027d7364ed831c2155e17c0b083b2ee2c4e720a2638cbbb971cccba1dac6860917d28d341a49cde2b8727179c8b596c045382e6e7c23a35d47880b4a47d3dc79687919194397c3ec00d9aa232e666ba24a1a39cbe847b2e864478af2f59f73b2abf2a98481430943980ba197db6e67a87f3782b7bd99a6e27f82f133dbc6d722b5cde09277f2407671ff44c1117e1265f5ec9faba0a946b67dd268c3b97be198bd2b5185eb07378fbdace2b4b97c8de2c05176cd186b0ad3f7d54da7701654eb1d1fa200191cea96d0f02c86caa277fec59e1c93097fb5d0d43600e3403c53798a33ef5ccab3d5405e5db570a26c3a0bdb304328fcd36e327b5d957913aacdc4d938bd00577963d5fa343109f4719d8192b12272ddfa338612aaacdbb4cb91e129e4401e16a673d6feb16294345fcd0e9bac8bdc30ebecc3bc6dcfdf25adbcb42777a6ff4c05b5981571af8a33d9e7d34534f8f89f555a1a55761fbe2dd66b93330820d3eb032d7a56db79aa7cc372340b953097453509f240bf9ac6dcd0df08d21e10 f1c528cf7739874707d4d8ad5b98f7c77169de0b57188df233b2dc8a5b31eda5db4291dd9f68e6bad37b8d7f6c9c0044b3bf74bbc3d7d1798e138709b0d75e7c593d3cccdc1b20c7174b4e692add820ace262d45ccfae2077e878796347168060a162ecca8c38c1a88350bd63bb539134f700fd4addd5959e255337daa06bc86358fabcbefdfb5bc889783d843c08aadc6c4f6c36f65f156e851c9a0f917e4a367b5ad93d874812a1de6a7b93cd53ad97232,5fcba2303da2ed78b7a3b3dbd3d7d57bbf37b25b75bf8330d39576ee26d830002f5fd36102bd09a6025532371a6246417f94a527220194f287bab34a936836ae84d87c251674f1bd361faf5ed3c023a96ac1e089050c7975d4fb6dda11305d73f2d9bf03fcdb4adc31c5356e231580af9e23b8ac79b28409dc4ede2cdc5d98c67508ed4d688377583e06fae8f195b10c60fa61ba10a7a57a8a52029371ca12c9fba5edd2378fe78e5cc119695fa5f6ecb4f7c27b0552b1231d4a1ba31196cfc7d30e92603cf2bf14e2d4cf8860a3b4b543e48401d9fdc6b8d0e1aaa559e91ed8fe3d6dde2f8a16a59aaca1fefd304d0c42b78441d4afe148b1abf86c92706c5c1528d54566ebf0f4f7f6ba0adaf6abaf5bf8dea607b6c86c789e7ea3229031bb69e60ba745f561208101dbe4774aae3ccd7da3e6c4625b0744b33e6697c31650ff94095c5cfb87024fac512d81cd395d8a30fc562e8e817d5de70e991e4b3abf091591769ea3b42197a4f4dec475f3cffb47700e832fb072b4783dcf44014642d9930f09a2e3c4984a20bed71e4d2ed1c5fe750b0f803d4891a128731f48df37d7e30ea34f7ed816c51f3ded629c7f430cb3f1ed74610e4d6535de05eb6e7520b1cf6653da236dc9e4f8cca8beb696af2a3c15c42e6f87c2ee1e9013e7fe31e891f6f9658f2e270a423154824ccd6be7498a6ffb8ea6c4e5b8a6cf1c33314c03 9d9f3a7ecd51b41f6572fd0d0881e30390dfb780991dae7db3b47619134718e6f987810e542619dfaa7b505c76b7350c6432d8bf1cfebdf1069b90a35f0d04cbdf130b0dfc7875f4a4e62cdb8e525aadd7ce842520a482ac18f09442d78305fe85a74e39e760a4837482ed2f437dd13b2ec1042afcf9decdc3e877e50ff4106ad10a525230d11920324a81094da31deab6476aa42f20c84843cfc1c58545ee80352bdd3740dd6a16792ae2d86f11641bb717c2,07f4933f2a7c2988b9d753240c1ebbea38e95aa1029508296bb49bbdf3bc164839c76d905596ea153c4746b4fea069d2a784d9cacb598a24baad6d215f83f72d4b52604eec0066344fd062b1835570028c1fd61d5b4785ff5b904f5db03c4efb61b424226578392b9e6259fd86dc979526c560057b9395e32116371b3737825a9579b92e1ab5ff9006afde8a618687205438d99b7e1ba038922b140be0dafb7423092f362f537cac8272aa5df14b2dfc2b73f5f4104ba1fe603e00af8e47898c0e955d57ded792c3c93518cd84fab72a2022f189773fae574d5342eebb23f7d7497f301023c1143cb3481ecb0ee732d1477e6bf872ea0d0dc0623a5c0ae526d8885db1d3c1ca0a513d2e4d53e13bfd82129dbaa7a2bf6004d2091e627928203d05b11d9f6335dfc73cb9a7f5c3cf43990e8df0269fa9bbb1fce7646c6ba85befd3f9ece88a93cbecc3f8f68ca4d0ae8197ca479efe0327463ab5b78685ba4000482558cec55d8b934726b820ea4fa9471aef2962a7e1cb4b2891c0b545547a146ca28ad3e9cc6abf69d7dfb87b298ca252387888e20ccabc9e9ed484262a3b6a1f857e6900330abe74454a62e2dedfec3aff7be28e4351c4ac0738032b81c0ff12afb4cb1b94f7119a6f2ab4157cb7c2fab41879943a075233cef8a64523f70e3c6f66c5ee3d5fdb99222b2a3eb09ffabcac867e0b2d06955cb80e7eae176788 5179888724819fbad3afa927d3577796660e6a81c52d98e9303261d5a4a83232f6f758934d50aa83ff9e20a5926dfebaac49529d006eb923c5ae5048ed544ec471ed7191edf46363383824f915769b3e688094c682b02151e5ee01e510b431c8865aff8b6b6f2f59cb6d129da79e97c6d2b8fa6c6da3f603199d2d1bcab547682a81cd6cf65f6551121391d78bcc23b5bd0e922ec6d8bf97c952e84dd28aef909aba31edb903b28fbfc33b7703cd996215a11238,7e3fbad2449b2f16426651ea24f642fb8cbb40b1969fbf10c5a6c3e7b1ad2d413c1f8a78ccd5f4ab0ba0a04529eeb3f72b656ea1030cd94da5ce6b6d7c44728c0cefebd7fa597073f8befd6baa5325918c1baac3b8de7d1e4b723c0518936cfde3f039941ffec3979aed13c16e5f24a8c01f4d87e07f797e2db4d5ce17e4ac40565d32896e3b6dbdb50fc2bbc4d13c2e375f171d8ec62c423a126b45d3c13b6e3ef9cfb9b8fd25bfa74a1793ebbe1168705b7a26ef12c2424e9689d993ba8c02790e83ce166ddb7c838de164744bab16743231569645b144a34bde3a40712f01dc02e476140d07ba3dc4f51da894727443892e7b12555932aaa5755fd9887a9eac8c949e71ee35414150b63b00247cadcdda9c2fb245748dc519c39ec8877c860729d90bbefb89c5d914f99af63725e91401ecae6f69c67cae0c94bacf3d6b13c273019cc3b5d416d6a24d314ef01c6348f2e539578f9368c234efb559352e5acedd53c14a35f680428bba25a252f056c4e452a921e4f83d648838ecb076f4764256912d41d504044ba68f2734d7236fccd924d22735f6cfada2349421bfd51341eaba98da57b3f1a1b9b7b4588cf3a0d1a7e116700fb90c3de339dfb9ea3662364807b91f7d2105d59034a6f5816070b5c4b24adae525c1bf2d267ea4b03079405a436da4264cc50b2b30a0881e4d22a1904dc7311ca397af7399734a0cdb79 576ef3520d30b7a4899b8c0d5e359e45c5189add100e43be429a02fb3de5ff4f8fd0e79d9663acca72cd29c94582b19292a557c5b1315297d168fbb54e9e2ecd13809c2b5fce998edc6570545e1499dbe7fb74d47cd7f35823b212b05bf3f5a79caa34224fdd670d335fcb106f5d92c3946f44d3afcbae2e41ac554d8e6759f332b76be89a0324aa12c5482d1ea3ee89ded4936f3e3c080436f539fa137e74c6d3389bdf5a45074c47bc7b20b0948407a66d855e2f,b6869f1189f52eafcc0353f7afdb8076c5ce063e2df404f3d1314a4de573541927e9f4c67a554bc82e97c3a2f6c679c812c9da6542681461baf009f3ed10d7d2c571288a41eff6fc73dff8aa3cb40288c84c9ed5cfa70f59395e09cf3cdd58b4d2a65187cf38828b981eb5ba8f7e591070f97b3a567188ad4c455fec91ecc2c9829e00639bf6ce1ddaee45ce19d9a183f0e93630886f511125a69218d86c5008760e8ee0cd299062cd1a06d0d2a5e07a0a30da7de30531136b4bae8546290469fa1b18557e3b1316ed8ff1bc94131e9797efc0a2d997f8da22ce6de0358128afaff496db6466210a8682f9d286ab66304e79ce92174abcdd0c4db508f03c2bee0c87f6c39d0fa2ef7f3dbd4201b4a46f418ca1de312a2fc9f82e6008bf06042050ca302c9a386aab9a3a8fb558eabea6771c6fc301f7dea5c13da704e4f41dfc2ea508f1efaf743fd4a3ebd9370cc3c872a41c4bd40eddf311c2f5b7c208bbdc7bc4a93804d10b32769a333e8bc2507143912ce4d918d0dcb4d6462f0790f10bfddcd7fd711e14f411a6ce58d50e70e1ea23645e97b6c154e3bba3ab35411537bc8830ecbf953bb8214df95e6fb5aabbce08f8d017958848916fe04b3d2d5f69db9234220da3388e3385ccb90194959027093a93f7048f35e3a5b0aef90a792820b242c34700fbe7f7e00c00d6abdfae26ddc95ca47a72133f97924d67291c6f 0df2152fa4f4357c8741529dd77e783925d3d76e95bafa2b542a2c33f3d1d117d159cf473f82310356fee4c90a9e505e70f8f24859656368ba09381fa245eb6c3d763f3093f0c89b972e66b53d59406d9f01aea07f8b3b615cac4ee4d05f542e7d0dab45d67ccccd3a606ccbeb31ea1fa7005ba07176e60dab7d78f6810ef086f42f08e595f0ec217372b98970cc6321576d92ce38f7c397a403bada1548d205c343ac09deca86325373c3b76d9f32028fea8eb32515,eedf8414acba3931ccb5c41b045e708926cc68c513372b2a5c9f8beb76c060461cdbde486f81952169b465061541e397192cab92b64cd5ae0072811017140d53861f56a96a66211fb30bd1e911d31fdd29ce66882529874724a64216c13aee8110b963ecc99cf46d2c1384cb39b27f2eb85b517893ac45a126f57e93dedec78cd2708e2c718d783d847e2fbc8b3fdc67260b33852576910d2e43923bcb8882d318ac5421b99be5e532101833585e744b65eea3104337ffafff4266b6add5f081e42a46c5365cc2f03df43c3aa3d0f9a9c477d65e5ebe634c806246544b97eac179c932e37948bb5e5c84db32450f3b9fa54c89fd03fe58861b8e8a6c8c3d7205b7a65a02b90e0412c493acbc3385e1a197df785b02ef42b0bebbd5431ee59df31520b88e30bd376bc4e720d71f1c0c9ae4c2fbe126dade6f667e2ce825ca1118f5b82f2a86fd5bd80621fa6fea14768efd08d75e4c416fd1245b0c07568df42244dbf76614e0f3010684210e49d0868c3abf1c89084510662bdccf932176daf9393b00a4fdf911ec8ba14e81b0648e5126b7b6cc1dfc902a53d0ba7204c256de67fbb525f6c2d4c4db08484a14431b350b76b0ddee9924a8e0ddc4e6b9dfa90fd9be0be70bffbf6f9abfe0ec489822b94dfeda911faa7626271264100e2a40a2ab932cbe92bf2dbf57d273b0b056a6ddf29ba36a7f8138390865ad9ecc76bbc6 3e15350d87d6ebb5c8ad99d42515cfe17980933c7a8f6b8bbbf0a63728cefaad2052623c0bd5931839112a48633fb3c2004e0749c87a41b26a8b48945539d1ff41a4b269462fd199bfecd45374756f55a9116e92093ac99451aefb2af9fd32d6d7f5fbc7f7a540d5097c096ebc3b3a721541de073a1cc02f7fb0fb1b9327fb0b1218ca49c9487ab5396622a13ae546c97abdef6b56380dda7012a8384091b6656d0ab272d363cea78163ff765cdd13ab1738b940d16cae,61b6e091f3a8bef3886484730629a32553b1ef7efa8689ae6c01062f505ecf48e8460b66448d355046fa728af5778feb8b827ba30211e5b1bb82f6beb7f2ed7450e9ee0a19a47af63bb687a0a4e611b3762b97bfdc6e212ede1f874c33636ab4ea613ba991e8b9558f24d1c02c5731b155dc1edd6e984c5cf51bc59be5e084ae89c87ac2af5792c6de0b76448aef8c5f248ca6fd1525770c8b4434a76552834cf1481843a9e3a2051108d3db6b8265f736395848da2c5755b504f4b958755ba1820deee9ead314c9515b996ab96c8f349bc12618fa4e8a026efc5508707f642f5cafe1ef135764515f4ce2de357d93a0f3bdfe8e3a7e01140212a735faecb49659039aa05f0c5ea0690e304c155a64804954e24039d001a1f7c2f1691e81120fd275a6fb292f3fc1bb16763887e3bf327fd36ff14d8b89d02990ae9d4b2b4f5492934079d17945613aa03771605b259446664fade2292036eca5894c4ec3d6673fb95617770af54ca581bdc6b52097938a98bede6ca627a9322d4ff7390df9a3e46fc5c0663a88a16a7d4ee708d92eb5ea6de0527fa5bc3454455b678791e07586123cec8864396b4b972ba29c935e6d3ba2f7b2fd315131c0f008d047e6cc234535d947f068548287140d4303365990e62b4845a3e7cd90667039c205bd1b836c4240b2120b54df12c462d2b10ffe2d61b456f090efa26c53e1f51d2292d31f c38d6b0b757cb552be40940ece0009ef3b0b59307c1451686f1a22702922800d58bce7a636c1727ee547c01b214779e898fc0e560f8ae7f61bef4d75eaa696b921fd6b735d171535e9edd267c192b99880c87997711002009095d8a7a437e258104a41a505e5ef71e5613ddd2008195f0c574e6ba3fe40099cfa116e5f1a2fa8a6da04badcb4e2d5d0de31fdc4800891c45781a0aac7c907b56d631fca5ce8b2cde620d11d1777ed9fa603541de794ddc5758fcd5fad78c0,e4e5622998509e275aed8d103e2581877b09d570efe558cf03626fdf3a2c04044c1531d3f92a025ca693fcab59d90ed2a2dd33f4768f56b972b2e87d34e8f293862c22602de928714c34ffe22c118c474467005c250f77971d59bd93581e5edc4f2be3c61f5414da40ddfd3053595e616afeb18d3cce87691af4c228da5595e2c4498fdfde8360dbcf014b368a88c5ed7a71eeeb003e8839a371b8d86f7b58da353edfb2891bf5a5ccbeac1e5f2edec1442fd79b6a31b85e4702df68ed3a0504e26489b15c0c1a52b443581bd671fd207302b4badba9f41b974ba6179ea1671e4660cc8f5a35f71a8b9baaedc457ff13263b062db6059fb4275d2831218b04b2e24f1e3b3dc4cee9261a1919343d5274d64ce11e0c27866eca3c91be98762834142c730f4c3354f0866d9f0cbde0e54bf747e0d8e50c8654a1c87fdf7eb6d13c06a8d0a02fc6ea72c77d1d957b960d6726eb5f1d4b3c056b2b67d9c23dd393a25d03129fb4d894dcee892d4d7cbbeaf404fddef8707c5850b319e04df5d64bb9f256a6b2a7bfabe6487b16dba0cf415f8de98ac8d63498df68dd9e209b23297c79d108bee3756989d751d91fd0954a7f5b166109fa11c7af4bb18b695ff6110659e37683f92ba03c24db9276d88e6fa587543e785a4d49f37240cbd826162e0c2ab12deeb71552fb1ad45e7e5780f832d831d2aac556a3a0005c37c148c41ae1 8d2de3f0b37a6385c90739805b170057f091cd0c7a0bc951540f26a5a75b3e694631bb64c7635eed316f51318e9d8de13c70a2aba04a14836855f35e480528b776d0a1e8a23b547c8b8d6a0d09b241d3be9377160cca4e6793d00a515dc2992cb7fc741daca171431da99cce6f7789f129e2ac5cf65b40d703035cd2185bb936c82002daf8cbc27a7a9e554b06196630446a6f0a14ba155ed26d95bd627b7205c072d02b60db0fd7e49ea058c2e0ba202daff0de91e845cf79,f3addaa4382a61cf38c2963346547922642b064ce36b4d424f41acb02afe7aebbca83df589208fc828ef58300e96a4d20592bfd58640cda4c970e1ad58ba410accc75cf6d2566b6a10d7fdf02d169e6bbe8953e5812cebf84e6e79b952680b4cb59373d8a6741c3483389e611a290d1ca14178556d0cfe750c787c4db1558a1f39a2f39f9021f1e420f57ca91cd1efd2d61d0d8cd34ad1ff7e607096b9787a51cb7684d8040fc66710c63d85a510ddfdd3f60056051406e7f217f12867312197690ee8ea33e6935306b76ad816043fcd52255976f9691c31afb361612886758be8ae9112412456b4395017ae96a3d118e351ee2d17fba96b3af726ab1b2eff01fc3b8b4dce461a452f0e6885ee4937b34bbdd357a83a68a95d12bf9cde1c5abad70ce7a30b76bdb601b8eb533d57e4dab508956440ffa0ea3ef2773a446e2cb11f08226385a71d93ca67cf6ccc8eb8e48444d508ea035ab59aff79e076fff850cd497798f49bc633ef41b0a4239681da28a3bcfb2ffa3a992909e0a0148781a1bc03fe3fdf9b7b9971213f9ba331e5b1235314b3f173d48bc3249e946627f84070ac2d8b57e184b0e8eaf0321b38857383bc1c27cf9390e79a2e09a3b5552a7aa9cc55aab534bf7d7571d3ed97c258efc9e2d3c1d34dc84eaaf55d1725ab388c0a5fa4df270630e468980fef3a79a67cbb2289bb03cd239c14f15a50403787a3 c464bbdad275c50dcd983b65ad1019b9ff85a1e71c807f3204bb2c921dc31fbcd8c5fc45868ae9ef85b6c9b83bba2a5a822201ed68586ec5ec27fb2857a5d1a2d09d09115f22dcc39fe61f5e1ba0ff6e8b4acb4c6da748be7f3f0839739394ff7fa8e39f7f7e84a33c3866875c01bcb1263c9405d91908e9e0b50e7459fabb63d8c6bbb73d8e3483c099b55bc30ff092ff68b6adedfd477d63570c9f5515847f36e24ba0b705557130cec57ebad1d0b31a378e91894ee26e3a04,eb6ccaad9ef05b657b6835655748051e33250c4fa600b3431e96053b0ad6adef7d8e5cceda256d96cbcf713e1998b19f8033bf032c9b2a56309b31755db88a5cb11669a49af4999c551ece42e69dbc4d53b0ab2705295a649364e8ae495c793b73ac4f5aaa01a7a66f4542a4a5b29aa266158d3379abb4c26596cc3e7195ea9112507aba0c1bbd8efa5785254681e11acbf65a977199d0d489cd4357cdf61f0da3b640958ff3ec7cab5ed0c3e725ec64d18cbc8bdb097967fce3af9a717f591dd49afc38fbb4437915d7b161e6800c3d8c0eaab61c5ed05d8711b00e75892aac5169e42b95ac207a27981684a7a26b9c7e00f7ab9a2dd84437940a7169bc998a56e0a31693345ac53f45b9a7d0532acc80e093624c5341312e7f2e7fff5b0712e2b119f4c6f5ca1e55899f394c850eb038bef7eb1df1303b7c97292732f96f4f6b8cdfbad6c8d6fb5721a5441b4897fcfcb2959026deacf17a99a27ebdc108eb1d77518c342b8e9892ce44241f94b88803d7ef72e26e8209bc251faf58b8e0e2cdaca5b4509174b07c98aedbb2c3871fe972a4c31dfafca4109985904daacab1c124e659562b77287b6d9db73a38a26ad0e746b71fa086f6aa4e39207093a04cdbc69993c2205cfedc4d321694d3fab832cd729ec2501ef2d386eb170a011baae3e83a7efd110fd36c9a7fbddb835fa033891ff21c4b634368fbe8ad991649a0 8b8d68bb8a75732fe272815a68a1c9c5aa31b41dedc8493e76525d1d013d33cebd9e21a5bb95db2616976a8c07fcf411f5f6bc6f7e0b57aca78cc2790a6f9b898858ac9c79b165ff24e66677531e39f572be5d81eb3264524181115f32780257bfb9aeec6af12af28e587cac068a1a2953b59ad680f4c245b2e3ec36f59940d37e1d3db38e13edb29b5c0f404f6ff87f80fc8be7a225ff22fbb9c8b6b1d7330c57840d24bc75b06b80d30dad6806544d510af6c4785e823ac3e0b8,28721a5ca8a0b2f0ea39d1e51f18ff57f838b0f7f95106e13950d717e3be00f9cde1fb3eaa37e3b0dfb080b1a08eb6d07b4c36fbe73c248fb86e993a7a44a42501593b8721082af6836efb165084ab5dd13c26413aa4303d19183cbf09526e9d6f590990c7a61103f82c3e3e58a673f8ea1d00c85efd867d4d7f9a0e295636933238c39a721ed301d4168b2346b115998279ba080d3d63a7f8a5bee1db83f415f9fa26cb0c6511a3ab2ca7cee4b30188570fedca952b91a299db985e0ea5d884646de594f5a3acd3cf975cb8987018ef6d5cb6c7044d946111d250b0ee5f40329d6ec2423d085dc8a8f8beea38ee4f3e4d7e206b6d1b988aabe52b074673c1d74c6db329cc978b88b0c88a41bb91d541ba4d3abf38f892e90639ecb37c79172352fa2273addf88bd6cd6a76b305e001f78e9d6c29c46477de5ed69fd0d398c8008c839c87fd95c51d35af3ac874f9e33e60813a984ffee299547bdf305756a9f7560411b7bb475870d8ace7671c093e210d3bdb10d31f48e0a78d1d9e3e44199cc49b7d2a9e2ca0ea8ebed0d265fbe461a12883ee515fd738bac8299309c86b77adbea857c4c92ed8e0f380733b47853ce530091a6d700b4d1ebc9830c2443c7d82c3e0e446cc72d4fe75a5c3ab4e38971ea41fe993bf270c477fe90e2e207df59d011e23777fba3b454138b31f1e055818ce61649f0d4d06765247a9b8feb8d 6b018710446f368e7421f1bc0ccf562d9c1843846bc8d98d1c9bf7d9d6fcb48bfc3bf83b36d44c4fa93430af75cd190bde36a7f92f867f58a803900df8018150384d85d82132f123006ac2aeba58e02a037fe6afbd65eca7c44977dd3dc74f48b6e7a1bfd5cc4dcf24e4d52e92bd4455848e4928b0eac8b7476fe3cc03e862aa4dff4470dbfed6de48e410f25096487ecfc32a27277f3f5023b2725ade461b1355889554a8836c9cf53bd767f5737d55184eea1ab3f53edd0976c485,1e98d0535e8d9201a8e74f5d60fe3151ab5c246993d2c39ae2c906720f898da70500d14e94add0842ddd949ff614c1df73d57879b3649ccfa780d22131dcb51e14caf79948d497d0a4b8c3be023551c68d88dc3e36ab8d73820fd880f3964964fabf60bf9009927f25d3ebcee347c54b3e7b9a957f0cd10ad15d0a9a2daace6715633a9400da882337e8505a431251bfa1b31096004e6e0f40f00f6c389a9fd5ddbbf7e7f26f1259d25f2c176b4b71f0c00deb9185ff0e4508fdd0e057af4f4d2df3a15dfa5416abcaf086d0118be1aa70c7a14da41b9612814c39b6e7dbeb9a415fd4e7ac8f3e046f0be25bc0d05a183a4fffc498100c21d013d712d7fb48667454a4a54bc6ce355107267e245675002ac83e00a26a76ee6081f8c621620c37a03fbfbdc6f7bd88a5d996bea811f9f753a2486262e6452f896ab8f40b2bd97f95038db68fed4a52194b9e85815e67daca1eee6b0788343999453e8758afd73dc3e1b9088561305e929a0128c6d229743567c7885eaabfd9bea8644fe8db4d19187ff46388db5c1583dffe70da6349eca26e839db999f75c1c72455643a902466c24717069efaded38c138d6a499fca999ab653f5b5def624ee990f46177fec751f55833e721df57f6b813a55c2d0c463d25e96a53db14e6cb4340f6059c924cb7c4edf94812959251282b5f46add9a97dc8951b6ae72f7faf6efe2bd11d9b34 c9534a24714bd4be37c88a3da1082eda7cabd154c309d7bd670dccd95aa535594463058a29f79031d6ecaa9f675d1211e9359be82669a79c855ea8d89dd38c2c761ddd0ec0ce9e97597432e9a1beae062cdd71edfdfd464119be9e69d18a7a7fd7ce0e2106f0c8b0abf4715e2ca48ef9f454dc203c96656653b727083513f8efb86e49c513bb758b3b052fe21f1c05bb33c37129d6cc81f1aef6adc45b0e8827a830fe545cf57d0955802c117d23ccb55ea28f95c0d8c2f9c5a242b33f,518802fdc9fa52a2a70fdbf2af1b43ede346e59b2709319cb57fe6480c46c7513868686cd374aa43d656c6ba98a2a879a1a3d973c46a10e95bd0fe28029e5bc8af03029d744f4b2d9bc9d83ce895618b9e21e6c4c2d295a285f251c26d22cb1662a2aa4e8609c8503ca9c908ef853ba212a87411059118596c88795c972f8ff55607bf82b8c128ab5d041e86d5784b35edee160ffcd06314510dc4af9b9fc51999d70c9a10449c5b62b584614742032be710e50b42aca942c7c73776eab51b0fef37f5447e8ce2198266e7fd1e378d5cb2f296afb77600b64677fa13bbb19da426288f423ec6617bd19a77833f01ca5b684bdc5bae939a79b6203b22f4fb27f4be92ebf337f9153cd3d78da095c0e76c9877a1a80d2ae4df7ce56a8f876f32e1134e0c51e52798389c35646d3165dc164c5f77ed519345d21d055a332f87ccba7d3ef19be950977710e9706ad07e30928639148b1250026ff23b04a06e62c2799072a319e8346ee80f9a0a2389c4b80b9a397c45bc1f0e92620455a1a04b6bed80b1bb1b78370992c5e41fb56e984421fb1e8465132a33d6d227c85970df92d7159e6f59eb766c3511b84c85865de1fb3fb3405d2102f1ca0aa4c1eb6a0ec90f6b89d783423d848bd70c8220c7f024a43888b9947d1e9e52a6204ca17b04765f503a887ea929ac4866890110fed0713a0479c6fb619c08bf2cb24e026ebc6151 07906c87297b867abf4576e9f3cc7f82f22b154afcbf293b9319f1b0584da6a40c27b32e0b1b7f412c4f1b82480e70a9235b12ec27090a5a33175a2bb28d8adc475cefe33f7803f8ce27967217381f02e67a3b4f84a71f1c5228e0c2ad971373f6f672624fcea8d1a9f85170fad30fa0bbd25035c3b41a6175d467998bd1215f6f3866f53847f9cf68ef3e2fbb54bc994de2302b829c5eea68ec441fcbafd7d16ae4fe9fff98bf00e5bc2ad54dd91ff9fda4dd77b6c754a91955d1fbaad0,ddbb83438554c66aa9d9569af53eb13da65440e0b1afd88b80df59e767e069ae4c70741f68adc2a674d66e1829ab7df21bad9665e5ecd655f756a78eb9f78d838461a03c1a6d1836b27dda6d269ed65b7e352030401acc8266f41fba4e234d225ee32bff12406f7f620cb3484d6757ef3ab69ecd675a9250200735826b630b72e64f21e3d84b135a35e1f4ae48ab2e80424c10be6bb7aa78f8df9c91537fabb91db4d58428f6de62364292141e9a7ffed93f16d1d36c3ceb4960e7cb8fcd8b91eff75b027159586dc304051556e1401a6c555a804616ab2757d699bfb1e37426983c39f34df6c1fa6c084fdc9c633b6aa331c5e5028bd185a4ebf3eb0ca4cc397d481f404440f4ab2ab7dfe0ffc935d91d417d94d9858f89d28b4900e634a5caaade9f149c6ca1e011ec684cfa3b3042f9a320501522b6211da5f5555c87102df37f17e4ad3ba55a37381d204fba5711abed49ee51f3985ecea7e239fba0e8a060a4990590795edd1a936c185bf37af9b95fa3e6294a780dc9fffad7d9319002d18794ff0da59cc6ad9e3ad9d74bdbca343ef694cfd333f87278e59cc445fbe0e622857f3745ffd8c90a161f7f49ea875bb1cb234c63aa0c55e530a72b19cb770fe91872a91420fd1cab520ee922c2b6fb59cb8e516c303f4c74852769ef1787fbd7429d33b2fc0adc18b23034736fac59f926e88df27d811591f03e7009193d 588e94b9054abc2189df69b8ba34341b77cdd528e7860e5defcaa79b0c9a452ad4b82aa306be84536eb7cedcbe058d7b84a6aef826b028b8a0271b69ac3605a9635ea9f5ea0aa700f3eb7835bc54611b922964300c953efe7491e3677c2cebe0822e956cd16433b02c68c4a23252c3f9e151a416b4963257b783e038f6b4d5c9f110f871652c7a649a7bcedcbccc6f2d0725bb903cc196ba76c76aa9f10a190b1d1168993baa9ffc96a1655216773458bec72b0e39c9f2c121378feab4e76a,3a0476c8e248067f0f96f01561cd0f6e55bb31fed70d2ad5f282f030044a331c6a20f14f254d1ca11eee4226323874a1035c0f522284627b51f29ee43b291d24001c4a44c638aae5a89045c141e16b562fc1893f39cf49bba6d17efbcfa4919a1c60d60cdb132cef068a05a81fa5c374273fe366f4caa16887c5ad1288bd066b741d234ff63aae976e742f5dcff610caa33826a7856e5e5265fdbfa04007ff3f0f701850de3e911fd71e00012de9823d78e381ccbaf09976fd686811255423a7cdcadbd854bed848ee0ed2977fc192573f2f36c62a5539ce807c2b01ae7220c6139d1accec6ca37f2c964be922547bc692274d557abc1e7d521d1215cc56260d0c7ef4c3eefa6d54182fe1928d8179fd4508b8a4c7a3f78d2d0cdf76abf581f0689d1bbae1f7ed3a8af23d687c369398c715f71377da92a518eae81c7587876691af81b982340d71f3ff3836ae9e87eef7db14afece5f57e45746173e7834132f922ab5afde73076b67e446a0f096ed2bc87e12216bacceaf1e912cbe89483b5e0bc35df7c38f79f31c1567d16a321920b2d0e6f3637b2c65ac762239522433aa51eb34a2a174c93a693c187e97b3bfa4c8c9c7dd512a74f26ef74eee24d3f425f0cc05f0a3a630806fb960437f6edb2c31b0103b3933986ba9e0b2d26b554fb9af7db5454a18a8d52ea8445f6844ba7371511cd14fbe171bb4045c7377553e7 08959a7e4baae874928813364071194e2939772f20db7c3157078987c557c2a6d5abe68d520eef3dc491692e1e21bcd880adebf63bb4213b50897fa005256ed41b5690f78f52855c8d9168a4b666fce2da2b456d7a7e7c17ab5f2fb1ee90b79e698712e963715983fd07641ae4b4e9dc73203fac1ae11fa1f8c7941fcc82eab247addb56e2638447e9d609e610b60ce086656aaebf1da3c8a231d7d94e2fd0afe46b391ff14a72eaeb3f44ad4df85866def43d4781a0b3578bc996c87970b132,868c7566edf719d04d7457bca5ca9b4b62f309fbe1046a7351f24dcbe2e2224e34cc23e2c859e83b8b09e15fd575fe5225a03d1869cd1879728825a67008cbd1c7f0535086de803a3e55dbad1bd9998ebeace9cbe63c4500b5ed3380153a41c33948e82e2d375e70e2a8c3f1c1aeae72d000efcbd7f9da3fe0422aeb9a10b81b07eccee0c227947e7dd5e2b277a80718015bf5ca4c9b3ea5ec7cac5cbdc79642cc0b547729a0956c739c956d09faf013f402d764ef87a5027049c4fa0bd8ee8d77d99f3124710db8b274b1f8878ad74cf88f21abc520153b2668b79f824d74c4f113a66a275ff882b64794e307182c5ea6c96a719fec5fcddb619579246efacf142f976de21aceb21136e9aaabf231706c767a664602c676ea46c70f0be2a7f9907a484bd6064e1bf132fee115362dc13566f763f4cb29a3ccb68594d9e7427f2d29b1a3d02520a81af9d41990e04c9766260841e86965db59b764e1867f9f2b4bfc6c13bbc08c4db843982e262f75ce6f0e034b58de6ecdb71a5e32e9f91ca8398ec286277b0dd6a518031c16ab864971c243cebcf3755a72afcc186c5d200873eb27b070603a6fe494adcac893162cffb544c2b69083693a407dd92cb4f6b1b341ebe491738258ec5d109856bf106b56e6b96481b933093dc4dbe2cd075c5e3b760d36f3b92a286f91af57604b70206c8922ed21006e05a271f1415f84f6ba cb2a234f45e2ecd5863895a451d389a369aab99cfef0d5c9ffca1e6e63f763b5c14fb9b478313c8e8c0efeb3ac9500cf5fd93791b789e67eac12fd038e2547cc8e0fc9db591f33a1e4907c64a922dda23ec9827310b306098554a4a78f050262db5b545b159e1ff1dca6eb734b872343b842c57eafcfda8405eedbb48ef32e99696d135979235c3a05364e371c2d76f1902f1d83146df9495c0a6c57d7bf9ee77e80f9787aee27be1fe126cdc9ef893a4a7dcbbc367e40fe4e1ee90b42ea25af01,49d7fa3a63ee1611e9ecefa88f80dfcad8d7ad69e6a899ad04d102885ae1419f8e9e6897f1d6937177e1bd8ca104a7c227b8dcdad473d0a2bc12c1a2287b5dc66a0f808d02c452bdfbf5ac4f43b38105b5a9f2e67a4c6c81fe5ddcc1ad3ead625b29031fd5f1ef18f4aae15eecc2b6f5a4336e5be3fd7d3970d50261ff6f992e5a0f818be342b910b267c8740b7f331e0623b5793d4146dbd8ba3636d12914df35ccfbeee62bf3e0033ddd26114ee709a641ed54c21a130c8b3e1f9a49965e48b8ab914aa2b2a377db1873a1882625ebcfdd1c366360b8dbc631db94bff615bcab90d8bab3c14f2cf4a6e4c4130af4255acf14b2b3699edf8753c745f9d8dc23afbf449a05fe05fcc83fb609856a5be79b06e57d3e42531edcc13b1aeb76be54cedf8665439731cee4144cedc0e8acf9ee2af245769d24da6261e368cf0d599225c397c61a87ea8c0ef648a74cb1e3c5ed2c6cdb766e83bc68299b1ad882cef5b436608847548141fe1db303bdb13771ef19674f196efe3502b14a7a47283ee6bbba86354b88a8fb15187e0ac84ce0e9cdf737f62c15ed3a4a6fa0708f91da2190268c0923d1e696b5e98251a6783479e6ba28336c39e27680bb86bec2991d82efb40cfe6985944ed3b18e2acc7e51bb24d0f2c19bde84cb271fda6bbb5de6b40203ab54ceeaab0d84a339dd84108929663a50ef23bcf1e79909e2275fddbe57 d16beadf02ab1d4dc6f88b8c4554c51e866df830b89c06e786a5f8757e8909310af51c840efe8d20b35331f4355d80f73295974653ddd620cdde4730fb6c8d0d2dcb2b45d92d4fbdb567c0a3e86bd1a8a795af26fbf29fc6c65941cddb090ff7cd230ac5268ab4606fccba9eded0a2b5d014ee0c34f0b2881ac036e24e151be89eeb6cd9a7a790afccff234d7cb11b99ebf58cd0c589f20bdac4f9f0e28f75e3e04e5b3debce607a496d848d67fa7b49132c71b878fd5557e082a18eca1fbda94d4b,815bb24a227ff0b94478ec10d6b4fac313d56fd9ded13e94a57869d8bc5e542e47cd97d42f1387757539a452c5c40492da8a4d65190ae36bf2e169446bbe5ce0742a1a9865126ea07ad3875d47c5ed5f85c1a7a57cc350e05a4dcb1f052d9ff4aed38c5e1d65c05c3c7db8a9a6c00ae2b3b45fedca8c309b2c369a7b9608aa365015af193f33092d084b2a7ac5cfcc018a045a1d89989faa5fb16f854453d9a6336b900ecc4d9eaef9de4c6a287c44d0e4866cc8e4f8cde5317eee01113da6a64b88a1469835bba057760ec1d03d63d9ca40aacd7cfd8619e92739cdd72c9a11b0705a4e50dc386d4d378e624818b2d36b4ffb6dd1ad2c9f9d2a8bc4a7fb73827930e98cfa03c221b7c9d648463b8c2af1dd195a817c0e986e8de6c11371ab830ef74cc5e734b56c6c013350c1212901322bfcb0cdddf13344473e3950c393466dfdb59fff9e582e9b79f5938b0476de125fc36ff74c03cfb685cb09bff4c234f272d9b1ba6a2560308464ce36ddc0eb6863ad42b7d0490091c05a745ca5f288b303a0fd08bff7ba2265b6c12b25840357dac735cead9e6087d38a97421cd4e54518d7c0cf0968860b6348d1531c56c1b4f6b5c7771377194ef24e91f9d9df96253b80009341e10122c14d919a037c820822a23e47620b35d0da729a1ae329f99ebcc26fcd8cb9c67334f8b04714d2b76d5d0ea6156187c9017e764aea66e88b 8f65f6bc59a85705016e2bae7fe57980de3127e5ab275f573d334f73f8603106ec3553016608ef2dd6e69b24be0b7113bf6a760ba6e9ce1c48f9e186012cf96a1d4849d75df5bb8315387fd78e9e153e76f8ba7ec6c8849810f59fb4bb9b004318210b37f1299526866f44059e017e22e96cbe418699d014c6ea01c9f0038b10299884dbec3199bb05adc94e955a1533219c1115fed0e5f21228b071f40dd57c4240d98d37b73e412fe0fa4703120d7c0c67972ed233e5deb300a22605472fa3a3ba86,47a1acf4036c3a62a24f7a2e1147f5729db886339c7ce7a9a6e7613bb60c475724d573e64e4027f296023e762ca20f880ab6c73142d3d1d36c19905bba147317880dd9210a75fd7c552076f2419432e46c858e69b7f7c72372be510f07f21977dea627514f6ecbb34ddcd6cf5d86b01be3da48481b25d56071ceee2142a9956aab4760666de359a36b8808d1df3f3c15f22163cec7c1181445df7d06e79bda799a6c4f278968b677fb78c8157cda2fb7447acc2d485e6922d82e1af596c760fcc2d7d83a6a4b52400e3fdf64a2a7e4d9d9c59930579d4516618fe9979b10562b35f26ceed8d53de5b322b3bb4f1b989eaf31517ad896ce3e57f879d6de9d4a847e4f7c9ee093d7ad482d84d947cab0b6619d8895facc2da8bac086e054b3eceb72689df5730fa6e51f98205b1fa5ac9daf82a78867b655b39792c686518be3024a5f975e97a021f64fc75014635371c9dcc8952f2b5404582855ffb049561f3e20013e74c8a05fd434516218cc6e463f62515b454b358c611f2902b9d11bad43862497532df84de73a02054459b79cb956e6dff229e8fbc8cc558d666e10660b87b9b0831df729cd87a22fa33891d9ceb2cc7ceeb1f316600b9432346d1fc211ce1946946f33ba59d6b53f9208f8f1fa8362524448cf87a851cae07d0cce86e594b5eaccf0b4f10f8c4d414ac194909cfe526cc87fcce1386c7f5537d10352f5 84891e52e0d451813210c3fd635b39a03a6b7a7317b221a7abc270dfa946c42669aacbbbdf801e1584f330e28c729847ea14152bd637b3d0f2b38b4bd5bf9c791c58806281103a3eabbaede5e711e539e6a8b2cf297cf351c078b4fa8f7f35cf61bebf8814bf248a01d41e86c5715ea40c63f7375379a7eb1d78f27622fb468ab784aaaba4e534a6dfd1df6fa15511341e725ed2e87f98737ccb7b6a6dfae416477472b046bf1811187d151bfa9f7b2bf9acdb23a3be507cdf14cfdf517d2cb5fb9e4ab6,2f06c83d5cbc776c9e2e490482d92bbd8d32b07b1028e046582dd17951c13cdfa27c065a2821d997f37ced1d3f69ed8a8eec35a55c1419b28770800a66a8ccc05332c64b0a310a1f4a99ee9a18ed342cc03a89193bb63849a6f0288b29b0801000ec0e3961fd85e6cf488031f028232b8fede6827c7c24fbc33a26a87a9b6210004038c67eecf0ef9d19c3dc8fe2c7db8a449f168a98cfc190043fd6e2ff366cc35556192e39d1664194d6943f9ea5b4675d5051100e1497c1970c2927506b5b717d2dbffcc9f62a0ac338340c8c473b397b98812bc77202a67426acb83f4a103687425d9f793312570ff6cbd897733ce7399a3853887918a9ef8d0bfac5a303b9e66ceb5ba52b826eada8e5e158422a6d42f89e986c30f9d8e14c8b3fc7daa5b012452666612acee1884c069f98e476f89e74b35ef94002744108a0eefb9a9992104973e1176f2ae0f560791b9486e7a27c75bad42054047e87fb95f43ae211fed7e3948745624f8eae4a81cffcb4ba389e169c9b55fde64dbc31e6287144d0803ec3f0e5a86de5fcd0cbebaac40d7103b3c0bcc8afde491b25aa472beef91d2afa59d980ef1a833002838a2159c0f9fdae39489b6e865adda3ea6dc8e675e45a45857111a2eb49fe3adcd52efae414b6ee423440419b310e3cf751f497aded9bd3cec9172a23ffc878dd9ff6033eac9c4ce7697ba9eef60b67665cebabc43b fdd7a9433a3b4afabd7a3a5e3457e56debf78e84b7a0b0ca0e8c6d53bd0c2dae31b2700c6128334f43981be3b213b1d7a118d59c7e6b6493a86f866a1635c12859cfb9ad17460a77b4522a5c1883c3d6acc86e6162667ec414e9a104aa892053a2b1d72165a855bacd8faf8034a5dd9b716f47a0818c09bb6baf22aa503c06b4ca261f557761989d2afbd88b6a678ad128af68672107d0f1fc73c5ca740459297b3292b281e93bceb761bde7221c3a55708e5ec84472cddcaa84ecf23723cc0991355c6280,acb6638c5302bfd244f9c4f1adea0461562cdbc92670f2c0c9135ba8754bffedf6621fb48b702792f71ac3b800bacd3a18791642865247b75d086ae816ce17f6d0cdd63d0a2fdba9c743fc9e3273e6834d21f12554b977a146906682b5dfd85f41bebd1ed03ca3b67de188a0547493753465d76145f5f860edd2f8f3c09adea139c3e057ac64487962e3ee38e1fb9f29bb5fcf2d70993aef47e56a26c70d200d357758a4b34bd9327dbacf987754d805ccb5d2f4cab0e238de726e6ff78239c0f2e020a1fe4d4f6cc27c0747eca37b4f72a110b3b8715e3db07dbaabb0e580c4f20ddcb7ece60b295211ab7cef858153dbf3f8d0e27f621551b317534e9680576d629c5928f1a03c9928a93b67b4ffa019dbadf9aa71d37e79d40051f6bc6da2d567e3e48706346275daa4506a0ce668c2d4768fff917a11e4c1726842d315db4d189fcf686c8bc1061a63fb05a73720088c9fdca783ead1fb390abbbf0b6bdcc775ca9ac32a1cbbd66bd80da59152c97e295ab35ddeb7048b975c9e2a794993852f31a18840528d2f297454598a3f31bf9973b9ce54d5e2a8012eb2cee9d49fd8299dad5bb566629f6ee4eddd71e6d08c223d0a1f48bb804096b24bc6da27b80ac2eadf7b7b39c29f3dbe556af66463785707a23495e2ffaa815640bc925230dde6e5e545a7c414543d55cfa23330be5cc1720a816e4064fdc0bb45c0d9a426 70a40bfbef92277a1aad72f6b79d0177197c4ebd432668cfec05d099accb651062b5dff156c0b27336687a94b26679cfdd9daf7ad204338dd9c4d14114033a5c225bd11f217b5f4732da167ee3f939262d4043fc9cba92303b7b5e96aea12adda64859df4b86e9ee0b58e39091e6b188b408ac94e1294a8911245ee361e60e601eff58d1d37639f3753bec80ebb4efde25817436076623fc65415fe51d1b0280366d12c554d86743f3c3b6572e400361a60726131441ba493a83fbe9afda90f7af1ae717238d,2856032a7399bc2d4a4d43d7dc024aa3040ed171982042e0d1a4063b6603526eb4dea45fdb007ac0e61043a11a502d4c49440c174bb183979a5d3a35c593e1a01886c60472d40d161a0512e3372bd5f8d35a217391d5ad14db17eb23bcb74d7701286a158b03a927cfd03c4062ec0461f8c9c3d4b8de0d70cec5eb018375e138278ed9ed366d546d896dd885da0c3513c5ab7efe2eca848b270cdac3d2fe7e14f3de6848fe01d64d841f198c85ce57e16b06ff41ffd454b6c61569b71d538ce5729dc5a5aa1d4dfd5f1d3f4cca0f424701e8857ec66c8dc3d44daacab9d05626751240e1e8f1adc1e064aaf47c66d9edb0ee114a6155e28bf4769f88c053313792cd9bb2d9687e595d321e152cfb42f67ec9da6e373e7621e4379a3c22b4828412223aed28946784cf67b6ce99918e0c1217501624599e4e79e90016abd265e21e91205824b7fbb95e9ed999c50f90c5748f83e71eabb66dc2c16cab63c064bb88c865fd30eab8fafe0529312be74b55badc4c944c69b89d98e7e07054a0aac8aad91f53582b91cb22a56741c41998ec878b11671afc9df26b5261be5eead565be962e87a40a5200a0856123ed7d248431efec79d7932407a7d762137eefabbbe0c6c482cbce115fa9cb7254614de54e361c5cbc4eac03757b83f4e4a96bd47d8347ed5e2c9e96df3f03a9762988d671aa75ec9f3b5e833570f13cea7c323522 74356e449f4bf8644f77b14f4d67cb6bd9c1f5ae357621d5b8147e562b65c66585caf2e491b48529a01a34d226d436959153815380d5689e30b35357cdac6e08d3f2b0e88e200600d62bd9f5eaf488df86a4470ea227006182e44809009868c4c280c43d7d64a5268fa719074960087b3a6abc837882f882c837834535929389a12b2c78187e2ea07ef8b8eef27dc85002c3ae35f1a50bee6a1c48ba7e175f3316670b27983472aa6a61eed0a683a39ee323080620ea44a9f74411ae5ce99030528f9ab49c79f2,6ab8f0f45b860126332e32ad1819fd5a23dfeee2c7fe47081ac855901d2da3f590fb64f989ea616faa0533e49a3b08589ff2df8b8a27bae25a23fa93710032f2ddec4e3f905ca8ac37cba1d9d225b2f62343dd5418283db7d6e427ef537650944723ddd7dfed6394ba1540b2fe72944c330cfaef76a9cc3998c1b6c38a83ea71b075f1e65c9209bedd565149137a4be1c640f4ec86a556b196bdf14f5c336418dca1330cbe1781dfcbdfc26b562025c9db90461658c4f1947a1b1374d8120168a1ab8d0cea7527f0503f19c4605463ce134cabe1c72866f37ea2f105d44a3f2080dd42da509ecdb1ea8c0ad439820d4bcffcc5c34bf78cd8beed8e394567a78864517cd183ec4366249fa9340fe4a112dbb418b32aef24426cc95e12bd243f3bd4e744407f3b461b7e8c7ff096f2279962d60e778e1c362a5f47e4acae0561944be126c8ed384ba5e71f8c23fd914d525d3affa915ceba52cb3b6265e003d6b2483c7c331db0f56eb5f4d0b4a7db558a154e34f539136c6869126fe3a7fbbc07a92ca251a6ed301cb1a8415ff16cc28d1482fbb7a70df1ef2d5aa55a084116577301eaacd88bff5139d091d0bbae55e31e50fbf28952e7071594fd81b626fa4194d97572058f217ed070b97ed42d8c7d9dce730d270a01bf847929ff0e2190446d82f93d9c2bf309f836811de1e4700d9ba736672b407e539219634f32956ecc 8c3798e51bc68482d7337d3abb75dc9ffe860714a9ad73551e120059860dde24ab87327222b64cf774415a70f724cdf270de3fe47dda07b61c9ef2a3551f45a5584860248fabde676e1cd75f6355aa3eaeabe3b51dc813d9fb2eaa4f0f1d9f834d7cad9c7c695ae84b329385bc0bef895b9f1edf44a03d4b410cc23a79a6b62e4f346a5e8dd851c2857995ddbf5b2d717aeb847310e1f6a46ac3d26a7f9b44985af656d2b7c9406e8a9e8f47dcb4ef6b83caacf9aefb6118bfcff7e44bef6937ebddc89186839b77,6e9d7e55e8b258208fe6c1c50ce490bf81748deb2b4401800c2423e9479af3bc1b4c37249a2dc00f120dc5e2114ade14c830437d6b0190fec5aaaf57d4e9c5078b867b2905d48e6748e85cdbb3f1995389ab373014e6237948b8343ab418716f0e9971db6a179b11277acb2df6b6b5903ebf311f2d94b10c3ad0bedf2adc7486929c8c43cf0ed6673c6468cf69b493c9eac2ade0ab3987179570886a28c08d0dcc83b0162a8d459680fdd2422c2c40a44e3fe55d0ab24ceade4063c995915794b0c842573e2e7c4bff8e201d3f9b3e8f49d90186aabc9ddc6110e98e3410617da24ffba5a7e5c3193c16b70cd6cf919dd6f15da3627f42b6225eaf4bf1851a570e099fe3b8e7d746c34573a74744d42135332daac9a9341e598c714fafbe052f7e745ba1d424cbe0cb1932a9e497d2111ac597f7e5010a86567c51218451ec3d1461d1d2d54f5e8754c854cd4d60972bc09482084ab865dfda01d1c7ae4c749bfbddd19bbcd95e8a53009529468bc4c47d9015a119b9c37dd2c149c65e6c99699c69c3cfa405c65e0e51a3585d35ead701feb58f1ac72d74e87d2c65fb072c11b235ffcde39559a45f881dcb292caed95b3ab6e0e468f86a235e2d83708044d75e768a2f3eb13523338761dbc38a8e014052dbd46a0064ae0255bafba6a0c8fbfb40cb41dcdacbc5466787638b901ad452d7d50a0c610001fbb6f126902d2fd5 fa56bf730c4f8395875189c10c4fb251605757a8fecc31f9737e3c2503b02608e6731e85d7a38393c67de516b85304824bfb135e33bf22b3a23b913bf6acd2b7ab85198b8187b2bcd454d5e3318cacb32fd6261c31ae7f6c54ef6a7a2a4c9f3ecb81ce3555d4f0ad466dd4c108a90399d70041997c3b25345a9653f3c9a6711ab1b91d6a9d2216442da2c973cbd685ee7643bfd77327a2f7ae9cb283620a08716dfb462e5c1d65432ca9d56a90e811443cd1ecb8f0de179c9cb48ba4f6fec360c66f252f6e64edc96b,bf52aca76d241cb569d39eb2d8669d1b2642c0cdb8b141e87c3b1bdb1f202641a1600ad388806ba9f5db50a7cfff97cb23ee977c0d3899f414ff5c47d689840f59e7e7db2edd92aff3fb36fd198e7bf5d81fa279f743fdb6b9c00e974065802903dc40cc3e216ff727a72f267624894f114c62e7b101d9da391e3a205c7b492b7ea28d836ac6657960cbbe4c38a73f87ea1f8a155a62c0a5d5ba821d9adfd42bcf42cb3150267aeaae507a4009ba8dcf70a13afedcb2121503cffe786304e3aa980d0fcd7c908406fd2cd9cae45de97414647de04d03c1214c967a14756830afa6f83ad91ca66d9de50b8f0483f99572a284bf9468a6abeb45f335eaf0782c04563dfbf231956ba4575dd9bdfa10e2f6df8878415b357867e5c22b9cf349b480dd0ca1f7cd432fcda057a5f9ae580814a7cfe843fa831a5cdb87646bcbe70229a3ee7cbb3094e591facc8680f298e10e1383d3a6387a503fd537a6ed924903cc9149879a95a164a8b3bdd385a69a93c58aacc066fbe4e59c7f6e16c00e45bdc19ec267f7684705cef34d830accc03822efe9c1b3903c47fcfa91fc7a7b58240765eef217341ff96f0d0cdf5062d8b1939185c47fabe5498a784622d1b2da0dbf06dae6f661206f98ebdb257bb2fc4c86ef6e7c6e31e7756c8cfe7c4842cda9878d6257edd7f204a009a9e1a492f5abfd42b48593231324728f8a510c47f516e2 b6134f9c3e91dd8000740d009dd806240811d51ab1546a974bcb18d344642baa5cd5903af84d58ec5ba17301d5ec0f10ccd0509cbb3fd3fff9172d193af0f782252fd1338c7244d40e0e42362275b22d01c4c3389f19dd69bdf958ebe28e31a4ffe2b5f18a87831cfb7095f58a87c9fa21db72ba269379b2dc2384b3da953c7925761fed324620acea435e52b424a7723f6a2357374157a34cd8252351c25a1b232826cefe1bd3e70ffc15a31e7c0598219d7f00436294d11891b82497bc78aa5363892a2495df8c1eef,08e74b227985f88b7c1884a179d0b9c9f58bd2078f8938519f460511b00003e51a8ef4c93f69b716df11df2839688108adf72476d1675e4df3399c05257b1db542d92f0e27fc59a927f00c4758ada0fd95db9d3251c01cb9167b2d6310e051407a2eaf415a2e478be53c3945a702f04e25713ec2e2e1d51d636870642f6023a43fd0859a3b468a9502a8efecf19bf97906e199c095464600b0b7a1b180b841158c6c98d13c371f7ab56496ea14cff3110aa9d33869069a1f9215a6fd99ce9226eef5a272b004827dde0e1b1bf4b0c0cbb670caf16b1840c6e88e577acc2ed4493c598b938aece1824717964048786d9cab9ed14dad9f87df1e9c374010d89d4a8616ccdbf687e12d7cdfb388cbbb88b56fee3aedbc5360088a49fc1b2e1dd5518e0e00f50e3c922c8ca600a41f72b985f02e32a1f9a1fee1e1929f5746ffeb87ec41f08861ea3463abb9803cce8c8257853fdc0b0c077d4255dad1fa9e5d865c981ba15236828e7e425f5dacc4b738de18e6c68a6c925b72c14e3042916117e91cb69311081e4e845b09679ca0607bbafcc1341b283bad5465633073e5daeed6541b1fd09537eda2f0d2a51cfd8715d3064fb074b52d48d4e7175b4ad0a0a6084128424958275068bad56b5ad2769918b6aaba7ab1e8c9f88859b3dab310fba2ff67bdd3fc9e0b2edde0b716897220ab75611975e137db525de4465ecbb2d9d1 c941cdb9c28ab0a791f2e5c8e8bb52850626aa89205bec3a7e22682313d198b1fa33fc7295381354858758ae6c8ec6fac3245c6e454d16fa2f51c4166fab51df272858f2d603770c40987f64442d487af49cd5c3991ce858ea2a60dab6a65a34414965933973ac2457089e359160b7cdedc42f29e10a91921785f6b7224ee0b349393cdcff6151b50b377d609559923d0984cda6000829b916ab6896693ef6a2199b3c22f7dc5500a15b8258420e314c222bc000bc4e5413e6dd82c993f8330f5c6d1be4bc79f08a1a0a46,3b3e210e0fb73556801a2250f1e76c45dad31e12f9ee3448640b73d5afd6d2d6facdc1b0cfa53f46a56923cf16b6bdcab566f3a0105e442ed7e88c09d705249be34463d435c14d5118a7e028dc35faa98112f80d816abe04f7345ea55e7f7652995fc047aff6b8e4d05c24a0c78fd9fd40835e523be7867312630993fc9e5cbfb47048453c205880eeeea2ed9a198ac145537bea2c216a60774c400444c07cf6546159eae47fd6cc79ca43d0d26c79dd13f39748a696f181984b5b8eaed82976c9b0c63c915bc2a2df91139618ac82e4478ea26f9731d422c692ad1bcf483936d99f65cc8e5ce20cd94abc2c4176b668d1813aa3ed84cbe68b8c982a8f884671ccd29b70efba765cb4be7d0d139798fbf344d7d1829f3afa946c3558b4c958a9235e4e96b28be25641120e00efe178304804d90946cdd1db6229c0147339a1f75fbec606a3b3fdcddd9235ea6bd3f166ad132f8c222e45a805d166f8fec56d488a2ab66737e3238e67419e194665ddad4d8214394a4da1ae09e0ec4ec5b209c18004f4008abfe997e456bbf99f1fd9b31e69b934ba694acaddd534e4bb4472179403bf9014a9ec311b16ca2900c669a8981be3b5a8a9d3bf4d05028fe6d3d97d54b9be443f9b0f73e59780d09afc937d1f36c4cd8caa1eb2a8522aaa175ff2e4a3285849c059991174bec1ba6e42e399c4ab0a566bfbc09cf1b836bf42138026 4499efffac4bcea52747efd1e4f20b73e48758be915c88a1ffe5299b0b005837a46b2f20a9cb3c6e64a9e3c564a27c0f1c6ad1960373036ec5bfe1a8fc6a435c2185ed0f114c50e8b3e4c7ed96b06a036819c9463e864a58d6286f785e32a804443a56af0b4df6abc57ed5c2b185ddee8489ea080deeee66aa33c2e6dab36251c402682b6824821f998c32163164298e1fafd31babbcffb594c91888c6219079d907fdb438ed89529d6d96212fd55abe20399dbefd342248507436931cdead496eb6e4a80358acc78647d043,615fbf41d7184ef0edf7ab0b079b76a4a7bf2b10a79a2ffe8d22e2f0a8b6280559bfd74e4f68e7691264a5b4651ae0edc504f6ac0677e14389d92913660e75626615622dd458b7cae4ebf1da4f7adb0771a809bdb44e918f7d681711eae7ed84745a1e7f3aff0931162bbfbe975c394ae6843cead454a00ea54db5a55aa845413ec88bdf9119e238e6c84bcb76342fa8ba1a448af7cba6d0f1c964ee981aef20c5268bc1c3ae3f723e48d1932cdb14b95629dcc5269f2ea77f277354bf910b05bded92d6b8baf9601080156ef0d1600e80d8050b99243c64221e9b8ae82773c6be95829203fbee6caedf299509d6a2da570320ca6410e9853575a342f9e9ae76e27e1b0c892b2c932d80ad2b91a8d62d805ffde196dc1f169d2b9d51f28fae6546887182b91298b7b2fde472bffd86384ee1b78b4b5654f3dc38fe4400cef50338f1d79b478c6781eca2130cf3a86d9124c31754989a22f022658cfa62833cd5f25a021b03a84a7aa3f8890922ad179d589e46b535b0e6033c8383cd6b80324ef8efb3bc6cb9cf5ba0bf5f6b185b83edbe3f0bf27a9942fa87d172a5c9294bd63396ec8e1a5c7ee0bd7da1109a69e2ed928025b8383c55c6eded0bb9e23e15f50388209b3508fbacb7dac520e0327f2148fe27450d0c5c06712a45011c95d7b02c0e0f15bf8c222527451c1da4ab70cf649a025f8c95cd919e937b079f364c97 eecbb8fdfa4da62170fd06727f697d81f83f601ff61e478105d3cb7502f2c89bf3e8f56edd469d049807a38882a7eefbc85fc9a950952e9fa84b8afebd3ce782d4da598002827b1eb98882ea1f0a8f7aa9ce013a6e9bc462fb66c8d4a18da21401e1b93356eb12f3725b6db1684f2300a98b9a119e5d27ff704affb618e12708e77e6e5f34139a5a41131fd1d6336c272a8fc37080f041c71341bee6ab550cb4a20a6ddb6a8e0299f2b14bc730c54b8b1c1c487b494bdccfd3a53535ab2f231590bf2c4062fd2ad58f906a2d0d,8043574aa03d7c6409677e5e579fcbce191118e2161c214640d725d384a3d941857498cc75480574f9bf4f7613241183b7b1354d4d08a9ad1af03230636a14d40a30a1ce8d1dd9cbffe41011e40d3fc3dc1eccb83374f14209eb83bd16861e161882cfc86a5332bf0357de84d38cb6fe65ff8ec3c8a01ebadac09fbe960e5d55f752878a608b3e67ea840503d59b6625b42570f74671b4267246995b5575294d20b6e693d02395ac5329451f905b14d7fff86a4401f78e6cc7b83806c19f30af6c75787f56222b9ff673f5631165ed8f20da13167f4dfa4c53476d7e2d7f76f4ea6dd77072fef26ac3ac7f65ea2c4f113897d4f00ed38cba8ab162b1bc3151d769d24a42ddf88f9515a04e3fe57fb4ecaae26f608fa6a0e30166f5a12223c10adb56803343e938eb88c839ef9f91fc7a0b9df899ad3dc328166c8af33de8560ede98ec371a22938252432fa57716c4058b7cdfb1dd7f5087cd45eae5bf1a4c3ae03c19ccb580ec122dfd54dd2106a4e5a647558b24d15d30ce2fca05673f8991003ec61270f279b7c2de67d1930a5c948c9259d4e9dbdab2d94dc1e1403697499544a1fa1109956aa22da488b61a97e933fecac59711e1bd5967df18130ca394fda025ba334b2857a1edecb002ba56dccecf9044e579143dc47be03072d935607de1e674c955a63508cb5d42af7fdb80459f4a239dc78c31097e71c06924092a e64f3e4ace5c8418d65fec2bc5d2a303dd458034736e3b0df719098be7a206deaf52d6ba82316caf330ef852375188cde2b39cc94aa449578a7e2a8e3f5a9d68e816b8d16889fbc0ebf0939d04f63033ae9ae2bdab73b88c26d6bd25ee460ee1ef58fb0afa92cc539f8c76d3d097e7a6a63ebb9b5887edf3cf076028c5bbd5b9db3211371ad3fe121d4e9bf44229f4e1ecf5a0f9f0eba4d5ceb72878ab22c3f0eb5a625323ac66f7061f4a81fac834471e0c59553f108475fe290d43e6a055ae3ee46fb67422f814a68c4be3e8c9,2aba810b7512b1b3b179995f76f843bf39fedb5b969267d5f545a605abbb3f627b59550678b4e3c3b8e0959d5907f88b814413a5d94b0011fc8bc445096cf1b49d11fb2a4ea1ef1f219f7ddec03b3678f2d95dd8fbdb7a1604af0d8a5f3dc33e257a54ca3eb50c49c03bc55545a36f807ace5a69f2d7069d3530f304f419b8d5dcb80890036299465c3c9c45fc49a73f9be6c869113ac03dc5daa116bc60f687df7db354201dad9cd841467c27e6f0abdf5eda1f8b7646365a93ba71e1ff6c28d83ab5ea309e2c902a6a1a6396525a97eabf4f69c56b3527811046674f99edd2779ae353654982a10c22baf7fdde401ce67e8044539995f528b398ddde5132fc156e5587a9a3b3d5329f8df4c55e86f3fec30788d8e00df696ccc46a564f2371932e21a45541315d8c31ded3a161e0f595ef47f8fb1dd7f1b57537fa36d105f1ad0e60c917f01d9c88fa0020349cca8b01d77affe23ca4b575abf1e42726b271fe77ff0fe81a8a20c06ac8db699aa2e11f05cc5e9bb794b7e1f847f411fc4621281d257219709d38ba231e7060f745feff6b4bef5df477a24ed763e2bd49929e6c8c83ec776be988a8528b1fb360bf5d7bcd654ff9a1cfe1ebd5f6f21954f155b1f6ecfaa7e6cd4e52d9b08c68943b29b54c5628f3ef3a966a94fa964a5874bd2fdaf65a663743f07eb0d6b3b3427dd419c8ef627675593728885a3ddb1e3c4d d2cb2d733033f9e91395312808383cc4f0ca974e87ec68400d52e96b3fa6984ac58d9ad0938dde5a973008d818c49607d9de2284e7618f1b8aed8372fbd52ed54557af4220fac09dfa8443011699b97d743f8f2b1aef3537ebb45dcc9e13dfb438428ee190a4efdb3caeb7f3933117bf63abdc7e57beb4171c7e1ad260ab0587806c4d137b6316b50abc9cce0dff3acada47bbb86be777e617bbe578ff4519844db360e0a96c6701290e76bb95d26f0f804c8a4f2717eac4e7de9f2cff3bbc55a17e776c0d02856032a6cd10ad2838,3582def5c0ec3c751727cbdff5d9561e3a0f9effef28c063461605140a2126265fa88c15b9ea3ad5cfd82378f78ac98baa5ed67969473ed9177ef14f44ba210bafebfca9c8dda7e1ab5c6881aae8ee0c824b47493c38ea7b5180323c7e962aba1de928a0acba596b2f8b7af188265eb92c5bebc9ef0a41f692e4b762990a40866aec96ceecb20ef9f7ccbfb83a85485163789811fed7b8e0a43fd15cfa4bb13099f3cab95791f8b05f5027672eac2d397fde1cd7e06fad506ca1efc22ad9cbb354d98be5790b4021c7afe6ef25d223510664dec63d35158999c9cdcc513c8c7e93175a677a30259cb280aca38fc7a8997b663a29ebd98d1c35f7dc1daabd6770bfd3b84f1c0314e67f14e7fa9a881c21bc0e5c2afd5f1b14ef4edf9ad382f7d7e008934ef762b41782dcae9b64448abae73d5a3cc80094b4f9983cb92d61c3555e58c0d24726e8073c39c3480fb2ba9f8679b9e8618cfa04921741b3ee72a276568068334e61089cea277cf0d34ea33e02095be33202ec69d2314128ddad63f001df3809baa75e3a5720b34e8c7a63e06da419a4818e48b30d8b0ae2e2405053c9ce76ac45c52edeaf6237260f18940f0300125ce674be744dc2a07262a146cb3bf595b59eb499439d94f8135de7e58c0fd09744ebbb97bd4c10c178904f52c7481b4d808e663dddbbf3235844cea3db323bbcec1756bc4480c4fed0c14e14d3 f2998955613dd414cc111df5ce30a995bb792e260b0e37a5b1d942fe90171a4ac2f66d4928d7ad377f4d0554cbf4c523d21f6e5f379d6f4b028cdcb9b1758d3b39663242ff3cb6ede6a36a6f05db3bc41e0d861b384b6dec58bb096d0a422fd542df175e1be1571fb52ae66f2d86a2f6824a8cfaacbac4a7492ad0433eeb15454af8f312b3b2a577750e3efbd370e8a8cac1582581971fba3ba4bd0d76e718dacf8433d33a59d287f8cc92234e7a271041b526e389efb0e40b6a18b3aaf658e82ed1c78631fd23b4c3eb27c3faec8685,8c05c9635942c0661c29cda0375395b595a82e4b1ef87d767e5a820cc6975f2b1af87b76f69de5bb9b77e14753c2efefcb735601df5cb4ddaf5810bb89ac8863379192c578a3f2fea30994edf58f5a995857af481fc4fbaa552e6564ae091c3ec2c5fb5144798405972c6947d45696f7e918d6820274bac4ed1e721e85ee688e7ef7e6b4c87ca94cb6ad3221b5b0189d2f39a5482ffab8a928a8fe4c117827e33e9c8b024bc35e30a9475d54293f196c83eed3b458d7e676a48d2bc2e09ad96167e556f00799e63c8c0668aa3710769c6533af4f04816355bf4e88a2ebba1b442bef0bc9f7dd85a1fa42745893cd1f87614356e42e897821bbde09cba135ace56612ad79a99a3397d2bbb6fcbdc505a0372df7ace31b53231887a618e4e846e3e458078b4ab9fa4d6d4d118f16ec8aa376b40cdd1594c0c41fee2dfcc866ffb1f9b8aefa04435f895b6d73e2faa89bff85ff14c133729b3789251e2a2cb38b8d5f9e6f8f0eef26fa1a17a8255ae9ef58fa4ba9bd8a8fde46ed5b0cfe9bfcbc20bddab37812fa44b0a1a99a6f10cf0e6bd931b6afe22af298483fb4d45bcce9fd79c5a9ce2eb3359cbbb4673e0feb2d1677f06a15f0938086daa9cdf2b08fef130bc793134369d4344d474f93c3c9eb877d0de0cfef351fb2589436de6247b51352ca913c3e774b70655ad48befb6e4d494a6e610cd968e8cc613339d789c16df 447797e2899b72a356ba55bf4df3acca6cdb1041eb477bd1834a9f9acbc340a294d729f2f97df3a610be0ff15edb9c6d5db41644b9874360140fc64f52aa03f0286c8a640670067a84e017926a70438db1bb361defee7317021425f8821def26d1efd77fc853b818545d055adc9284796e583c76e6fe74c9ac2587aa46aa8f8804f2feb5836cc4b3ababab8429a5783e17d5999f32242eb59ef30cd7adabc16d72dbdb097623047c98989f88d14eaf02a7212be16ec2d07981aaa99949ddf89ecd90333a77bc4e1988a82abf7c7caf3291,84e7658f462f68915cccc917b3f7a01f18e9e883cda1fa6c856e2d3b77c53b9e9c3841ef72295ce3418319e1daff2f58aa0ccf89c1107c459b505a46df314e670b51753cce3701822c4fae1f08ea93789fae1a8a61755fcc17f57c8c8e344208a299995a3c3ed6266756d17dfb70e67f27621a6af9ef926ed36f3cb169c9bfbb84df0b2c51602902c12f519ea23c3b4b8bb2b1241798f72a748c6ae4e439cf4fcf0fba17407d1366047b4a8ded133da17a5cc2bcd4e9803df6e5fc76a732ec64cd4c556dc97c8e8be5bad0fe5fe440e462da16fb1c7b18a97f58da4b5ea9ae8700a3e2d1325ebde9dbad97faad13db86d8f438588ad1e966e4a7dabd0ba4a3907dbebd2b2599718b885730bc1d7491a0e2fa468f29843ebe5e551e0cefd21f85568d6a77b8515ef42908360b57cad79b0004724dd117028bbceaadb514d45d76fce77fabfa64c11b9ac2bcb830f77c79fcb67a71d669bf7df2f3b7f5f9fafaa9571c1f2a03892e6bc576699806539af01c1a840d6b168686c5f0874bba3ede49b161719927b5e32e4f19982d6d32a0453877f08c592ebcf7aa323f78a66ee81ce5297e3b81a01ef64fc9454fbedc15c13a39f6ac8bb9a0ceb14e879181f72719f325b8ee60b3cf56ccfb42fff90cf1fc987f4acd7f052f137572809bddfc6d6d0a7f082f9868f3492924f8b9ba5d924c961a4b9282f312916100aed0966523c6 9f2c18ade9b380c784e170fb763e9aa205f64303067eb1bcea93df5dac4bf5a2e00b78195f808df24fc76e26cb7be31dc35f0844cded1567bba29858cffc97fb29010331b01d6a3fb3159cc1b973d255da9843e34a0a4061cabdb9ed37f241bfabb3c20d32743f4026b59a4ccc385a2301f83c0b0a190b0f2d01acb8f0d41111e10f2f4e149379275599a52dc089b35fdd5234b0cfb7b6d8aebd563ca1fa653c5c021dfd6f5920e6f18bfafdbecbf0ab00281333ed50b9a999549c1c8f8c63d7626c48322e9791d5ff72294049bde91e73f8,83e17cb699843eaa6308f12943513ab4e4912203026f4653ef6711e5968cfd2cc135da5b4e87707cd732f538b904148b0a50bfdd3f72155d85a22936c2bd38bdbd2b13145ed531e85f2e0319b6022e8f2115e6fa99e8d92e8ab418a84aed36d574b82a282099db5fbbca069589a3ec308e76b03c8f6c3c5ce11df0d5635740384a22f9047c52f8c561a9848f0104167d8be0a4bc47bb8a6474180bbce3ee691147b74dc57fdf56420848decdf3fc5a06648c1c42a0172fa02df905f8318482f8189d5351751de1ed5a63512ae6a4c456fb7d55f83142cac479452879e71fc774c9bd9fea4560acb7786cf56fabbbd3881bea980061623645bcf1d20448acbf69fad1030008bfa7298fde63963386af5c2b230e9e367b78c4b172b142c7ef43022c866e975f71128719dcbc2663d892c6c4d888e66c67d9e767af52231b93da9ed7895b4b015d9d84623c3008871b95382ec788fb58222c4dd8834054c694722248f4a7d0a77e4bd2a5c418bb5229c0e2ec9ed3e03e79e3f824c2c6e1eecc72a13e341f46f3e30085b3a3fa0c55f59c56ce150537e305c37263aed88d8ef9bf0cdf9978636e03e7deb701345d9442725664fcb38edef923cc11cfb94ae152d0bae72e09a813a3c25002faba1dbcc0bf5102bc466d348e6027f5ad72ff9dc35d9c27c4c1e5dd39a647cf24269e6437fa114c74b6c1604b906c8f5aba1ae06b1bd9 ae159f3fa33619002ae6bcce8cbbdd7d28e5ed9d61534595c4c9f43c402a9bb31f3b301cbfd4a43ce4c24cd5c9849cc6259eca90e2a79e01ffbac07ba0e147fa42676a1d668570e0396387b5bcd599e8e66aaed1b8a191c5a47547f61373021fa6deadcb55363d233c24440f2c73dbb519f7c9fa5a8962efd5f6252c0407f190dfefad707f3c7007d69ff36b8489a5b6b7c557e79dd4f50c06511f599f56c896b35c917b63ba35c6ff8092baf7d1658e77fc95d8a6a43eeb4c01f33f03877f92774be89c1114dd531c011e53a34dc248a2f0e6,2bef02aaab7478a7f4b6e3c22aa5a979bdba90ce91a42782e785ad6d06f82ef0017b54c408cd7027fb3057beab1da1b150e54194bdeeb87f65eaef6754ad8e00ec4b3f98ed2e64b85a3907b353d68614515a2a2d110a1e3249286377446c5339284b3c3ebbf8d841d49a34f7c79c935a69ce342569e173d87df08b332f45c42c9b318c6b02f4550058e2e0697f1e1e76dc0dc78f1deaf7a44bbb58152964da263f633f09fefe2c62f4a482209fc9715b0c424221f7bc81c67f438d920e7d9cef3d98bab3a27ab5e136439da3c5b8774c01e6906416f0d48675751174f09dcd2185ad246cdd351414b9b5591e500b29aabc046f048bbd5776da155b13a5970f26b393eacb372bd28b4934a6f252bc45f7217b29fd77a1deccb20b060c9858a98485671e02abc45dcf956255e52b5d21a59902a33425bd6853d56c18000f5d637cde2f109ec6d9fd3c5427e6bc2468a71cff6c57476fb1a850df304645c0e64f969a541611298e1b19f95ea628937c2adfd563fa309838ee470fa4810317177d61ed849b9fea54410c877b1c5c59625ae5314e823cbc1d3dd79bc1b6498e22f7d15328eb55d0823aa19f0922be4d6f545b8a2256ee141eebd18fd1644368ae4dde10482e8758e4865fc1845cb50155f574e177a3b0a446361801c2847fedb035ebdbc0c7a67d216a4eaa7e04862d6c09d3d04693df25bd2e3fe0a43ad80a9212da 3b8e97c5ffc2d6a40fa7de7fcefc90f3b12c940e7ab415321e29ee692dfac799b009c99dcddb708fce5a178c5c35ee2b8617143edc4c40b4d313661f49abdd93cea79d117518805496fe6acf292c4c2a1f76b403a97d7c399daf85b46ad84e16246c67d6836757bde336c290d5d401e6c1386ab32797af6bb251e9b2d8fe754c47482b72e0b394eab76916126fd68ea7d65eb93d59f5b4c5ac40f7c3b37e7f3694f29424c24af8c8f0ef59cd9dbf1d28e0e10f799a6f78cad1d45b9db3d7dee4a7059abe99182714983b9c9d44d7f5643596d4f3,824271a836fe959710453742e9d957981c2cfa672894c8a886f57f79608dd62fa4310fc0582528e15ca09c7a92d1084d45ed2a3020a9a2a10c2355fdf052ebaa1007b0c01e1ca19d95b1b05c03167923927ac26e33ed6a823c72d105a2b35085926bded8e59a49cbd7c606116bf560fac1364c7e5860a919167e844086d648bcbdb5f148cadeebe2ca2d2c34e9bde155dcc9cf99db22785d8f5327af41ba93aa1dd59a25f26615fd6eb6d57ff6475fe10beddecbd16ce84096cdc6ae5a6b7fad0bfdf6e8cfc974b082a3f0c6d8c5b25295a81bd2650446e7447951f7002fd2f417f4f553f2733d294ff90c629eef9faf0b39dc9cc4ea6b50d438369fec506bbc185d37dda2ef1c6e7079b09be893e6c1c62c24e6296c8cad9921dc182f23c027cb753212e3ee41c401396322a43f4800c48acda4a6198e40b76f0f6ce78354bcbcc33017fb30c33d7a90af566f4bd3bc2cbb08e800bbc7f309d749f9d2a352d9b284c358ff2109bd2c2ceec6e85bc16b83a7d666e582c3e3d39a6a92c196a11a397203f9c5613e2ecc8b2b91c229fe785040a17485b3dbad2b155c270ab2a510cda80e99e1a79be01c7262c217dde69d068753f9e44a3b035e10bb7aa53f397d7a1ec95342ddc973cdde9583b8348d832b976b255362240c5927d24a00050f970334aa404c531d93621516dab81e0fd89611c238d85454c6d77f1ab5d7b2c5bb 3434ec31b10fafdbfeec0dd6bd94e80f7ba9dca19ef075f7eb017512af66d6a4bcf7d16ba0819a1892a6372f9b35bcc7ca8155ee19e8428bc22d214856ed5fa9374c3c09bde169602cc219679f65a1566fc7316f4cc3b631a18fb4449fa6afa16a3db2bc4212eff539c67cf184680826535589c7111d73bffce431b4c40492e763d9279560aaa38eb2dc14a212d723f994a1fe656ff4dd14551ce4e7c621b2aa5604a10001b2878a897a28a08095c325e10a26d2fb1a75bfd64c250309bb55a44f23bbac0d5516a1c687d3b41ef2fbbf9cc56d4739,3768c48bf02d0db9aadafffbd228a4119ac6b7a815d9c74c714eac4b4ba4a062f7e9962b98c361a6b596838c671c95892fa4e82a95c60b9e8ba787158808c2c00bea3bed0ab4846fd57e638dd29b2ed47df5cd19699329626f6bddd14bb709417a972ae8020d05aadfe12034a98f9121a191926566c499c536b2505aebb97c9c49780e5e0007ee5596717e7be42d40db322bde5b7fd227b15987b599c71f1f20eb8be722ddbf3c76f9ea58b490eb11395befa02c259505f038b40e312b5af1519bb6da9e99e0214c2249a1e8c534d768a7db9ef46970a64c6e5f746b7c50670cc8e7765c4b55b26f3a53e4c3178f9599435aac9b96a203cd04988d1d95e1b5c29f632ecd66204b7bb2b7f776f2de67dcbf7f0a81ffa1cd18506b8fd9dbbbd354e3cd388f21edec9a4eb319c766eba3e1e8565b0ccef3698592e19081472004afe38fd8b17e6d1a5afed52ee44990598ce17e09ded65965a380e3452cce6d053f22f1e8cd24a76c74f6a69550c36b43890c7e239658b7da6da768869d3d96333be7422ab7c2b5d90b2c3973d666b4e399a2c5f014566e3ba919ad1964a148da2d35476b17799b82ea54ab6ca0baa098d0734081c7d52b7da8150ab3c1b8dd1174418700c46036e3918e5a21e70679d72952025fb52e9348509b4f10f412a8c8c11ef59d57a3a77c5462253c87475f38911ad2b08732dbddcc6d6a1b438896327d 7c7953d81c8d208fd1c97681d48f49dd003456de60475b84070ef4847c333b74575b1fc8d2a186964485a3b8634feaa3595aaa1a2f4595a7d6b6153563dee31bbac443c8a33eed6d5d956a980a68366c2527b550ee950250dfb691eacbd5d56ae14b970668be174c89df2fea43ae52f13142639c884fd62a3683c0c3792f0f24ab1318bcb27e21f4737fab62c77ea38bc8fd1cf41f7dab64c13febe7152bf5bb7ab5a78f5346d43cc741cb6f72b7b8980f268b68bf62abdfb1577a52438fe14b591498cc95f071228460c7c5d5ceb4a7bde588e7f21c,ea94da7fedf4b2296823eb57f0fd81468f4476e6f9035043f84ba952015af88e68233219e4d31d809a9b13a703ee6e99c230e1e037d777fdc6b4bce3f81ff2e7a15b9dad86f4816d1adf0f5c34e6ee2fec26353444efc417babe16c45bde0cb3b06abd19f354f5ba5298cd486dda4c6216d4826c3eb1b221c24a63be7dc751f8ab5458000c28937809359a4c49200949048156d48d537466effd085610f221454addd95519071c8a671eaafba7b6f894a3274599c76bf0964801fa38b601869d4c04ee9fc6ac7e54b4a6d8522912f5f3f2a7c6cbec20faf1e164388d932c5260763457d27525288be09ecdfaa1a892b99ad0da9fc1cb3d60b1b85dc953ce9b37711ae6bb82a1f96cf2479155bc3b328803d1eaf56ee0f02223bf167fb33e6e7190f41a121de59b9fe9790c8fbbc2b1b77add9c316d75a7f4dbdb52da2edd9d2356c6aa77a1cecb5330abc382a748c8972fbd78315dd2a4addf335d18d5c97547641f6b5abc4c5f166265d6934c77879a5b4cadd27a8a7f9f817acb1307a88970d29dd929d5b03a71d5b863a997c84d01b58dba539ccf6693b6004812727b254d22480bd50c5e07f162db59ec112e1dcff813bc266f704357202ad0723b373bdf49b1ee3d4e24d942d2e8f95e41ff496b9f4f535601980366fa79b662507caf88aace17ed6498e6ddb65c799ea698c7b8a49bf48021cf3b41e96225c43481b7c1 7a6a4f4fdc59a1d223381ae5af498d74b7252ecf59e389e49130c7eaee626e7bd9897effd92017f4ccde66b0440462cdedfd352d8153e6a4c8d7a0812f701cc737b5178c2556f07111200eb627dbc299caa792dfa58f35935299fa3a3519e9b03166dffa159103ffa35e8577f7c0a86c6b46fe13db8e2cdd9dcfba85bdddcce0a7a8e155f81f712d8e9fe646153d3d22c811bd39f830433b2213dd46301941b59293fd0a33e2b63adbd95239bc01315c46fdb678875b3c81e053a40f581cfbec24a1404b1671a1b88a6d06120229518fb13a74ca0ac5ae,73e672e46b274d309899ff2c8186af4a9f42872135309c85621347c55edf8d3b5a7db51b0242618ab6d750ef75cf816c23a0ddfa21adc9976cf47a6957e914baab02e4c2dc809c0d2f67fe759e92d7755ce965ea4b4045d6172e1a0c749b4498795fc375aa6894118a1be2821a7878d25f597633cee5576b3d15e23ca7d664709ada20e3cc182d3004b102bdcf5566af522c5511049feccf80d4a6c21d7ccad1b24dddddda0dab0c2ff40e056d0a715a31dd35679fd4a4ca8bdd17293f7fd63319bb5b4abd3698d574ba5d36445e7fbda9eab049f6a8b277c0593949da84805036b776368566f622df37fd3d42efd06eb1d5c1c2847717f51d236d4317498514d95e1f4587669ce819de249ebc8d05d55e2c35dbbff3c017c7a8d55b1b184ecf72f288948027e2ac2cbe6589b351437e185a888ea5ae7219b9121e438ec3cb397133b75330b1418af085e7b42fb4c3b0f41a95bc6583ca7ded8a470e2cec237013df9cbb866454f276648b1dc0bfdc6bc5346348735764f19f08905f1d17fddd454be1b0e8df34879b4e7709bca044ad49a14f9ee971283f2a20cf6377c648e9d85599fce482697b8feb218418b1ef0979935e0f88ea5a2d38506955532a0b9da8ac1e7641622dca9f2e31642aa41db7fc73328590b69459741998ab90d796293999ba8a2111df20256d2fe50ac6b0bcfd5edd61c260512ec357e844596eff10 d9faa14cebe9b7de551b6c0765409a33938562013b5e8e0e1e0a6418df7399d0a6a771fb81c3ca9bd3bb8e2951b0bc792525a294ebd1083688806fe5e7f1e17fd4e3a41d00c89e8fcf4a363caedb1acb558e3d562f1302b3d83bb886ed27b76033798131dab05b4217381eaaa7ba15ec820bb5c13b516dd640eaec5a27d05fdfca0f35b3a5312146806b4c0275bcd0aaa3b2017f346975db566f9b4d137f4ee10644c2a2da66deeca5342e236495c3c6280528bfd32e90af4cd9bb908f34012b52b4bc56d48cc8a6b59bab014988eabd12e1a0a1c2e170e7,bdf536d8b28e91f00b710decd109897b4e96882aef06337fe83b053eac20cc54523d246c41c9de3115870b82a1bb2eb2b1e02ccf7a4e607bcea3dcafca38f237dfc72d447cf8c544f541c1b53e7769b0cd6f2ec6d756891dfc818323cc1e1ad565f9130f59889798e418fe5feb176e77f5ff8f10c6acddbc59c8d084ab19da2ee5b737e537609bfa6f81df1846b033663d586ced1f4e86d99131d37ea5807881d2de749803e333af2c360f8ee9fd99a166f3fb8f0c50bef02df50ee615c08e88299a1f3cddf290a3bc9e4357f3d93d76ec5df462175edc5de421a6ba456ea7c42ecea24eec74011132c27fc63f1e969b474438222c7de33762f5377c197dde9afa9912900ff25373efc3a3d023e091350d0d269bcbff64ef35e2e1e1c300214c3671932cccad7c871fef4c969b34cf6e8b0881c2f7704b455f118e3bd37a74be89354d8c8dfcf649fa03701ae17b705a865c7ce9ed81e4fb374eb643294356eed48b3579315bcb32ce6c7f302ed5bcd68f2183110ef7ff60aefac6bfb8252bc66c0f4026dc37ebe4d9783ca7459394e929b8a83fd8378d9e097afcb0a7163f16e5579e8f5546898c4b521264caa006b3fccdf46ffadc1925752ef47da30f354d66f763aae46a0bfb385ffbe153641569e5e222f374f8e21ee3ef8d42663a4c424803e7966f2f0a1ea723a06c92af2393c8fa6711d89514c20b6170dca448fd27 2d8427433d0c61f2d96cfe80cf1e932265a191365c3b61aaa3d6dcc039f6ba2ad52a6a8cc30fc10f705e6b7705105977fa496c1c708a277a124304f1fc40911e7441d1b5e77b951aad7b01fd5db1b377d165b05bbf898042e39660caf8b279fe5229d1a8db86c0999ed65e53d01ccbc4b43173ccf992b3a14586f6ba42f5fe30afa8ae40c5df29966f9346da5f8b35f16a1de3ab6de0f477d8d8660918060e88b9b9e9ca6a4207033b87a812dbf5544d39e4882010f82b6ce005f8e8ff6fe3c3806bc2b73c2b83afb704345629304f9f86358712e9fae3ca3e,b5becca38d903f2d87cfba9a80c51d4a0733674c78ef85bb236e8fa64bded9bdd01db1905e46f4210bb65bfd26965aa3adddc893087afb56089083c72f7649cd5987f449f9668ce66ed21514c05e7f09f52d84fde30e96353d48df0208415db51ea5d120a7182dc9458c471127253aca05d52fcc18b73ca1c3a5bcff4d3b6a41c450826397d9b38ac5c8e301c7a4077edcdb6a46b3979128f20b1080f7768edc1f651d1d122f97620bf2b4e9fd20189bb331ff9026ea58d7203ffc49e901fdb9233255f349a19aaeda9ea1e4f3c45ea9c54f41ce1625c0ef02db370909949bbdfbaea49fee3e3cbb74e1807f553a2000a3c753bc5d529b4e25154e2c86f755645304f2d18ed0e62b62c87931dbdad5d1cc9cbb64430d56afbe7d4c708ec992eaa8e13c5b3ce0343c30ae3f09ea3ed5c0c933a0c76f0fc18ffd4baf93bf95b2c1023dc87d4d641ebc6e1cea6e756f45fd2e58e0562f43389a1048a8bc12c8b3b19e05180597b5ca79b7531c6b8fcab88ac1aea686494b98e211c975b48b7157f985f25b168b93fea82218a227d0b89bef905a5f13eb37438831c2cd871fd8a36a4ea22879570b22c63b67bb60ec1e415f4654f6a3ea5acf74df41fe09de398351fdeee499cd98db89b320a58ee62f8569e10da4c68b9b61620e9d51a343d06ceb484ca532afa8ff141a4ed8eac22870d72f5e1085107781d2e422b3eecabf88fc 5e19d97887fcaac0387e22c6f803c34a3dacd2604172433f7a8a7a526ca4a2a1271ecfc5d5d7be5ac0d85d921095350dfc65997d443c21c8094e0a3fefd2961bcb94aed03291ae310ccda75d8ace4bc7d89e7d3e5d1650bda5d668b8b50bfc8e608e184f4d3a9a2badc4ff5f07e0c0bc8a9f2e0b2a26fd6d8c550008faaab75fd71af2a424bec9a7cd9d83fad4c8e9319115656a8717d3b523a68ff8004258b9990ed362308461804ba3e3a7e92d8f2ffae5c2fba55ba5a3c27c0a2f71bd711d2fe1799c2adb31b200035481e9ee5c4adf2ab9c0fa50b23975cf,ec7a09a04ec20de5ee683681d42177715f85562df50177cbe122ddfb9c5e81ee349d3e2a18726be2e46287759d6d28398851ed22afa78bb4b3a41c76f7006f785887d2d030428ed6ecf7decbe20bf09b1a321b96616f9d1f4ecc90bc2fed1c30c18baa23455303074f10aba5bdb596f3bb5bc1faa89589a92aa95db198915c1fec3420d6a4a5e79808012de71b41cc7a77ab96821b5bd1e822a06e698101e7e4de1e5e7ccf9093992c0b62419a660e1ac4fee0b1d0c4735416c18570697220adbbca56289c2475e17ac6fa89e96aaaa8d5f174d6d9a3edb4a6bee4b606d0b789f942a1f8d5baa758af6f6dfbbe59686ff6a8d625302931c34c8d908bbb0c5269adc95715f90259384a0f88b6baa1fdaa5bd57f5feb2fe0b968120aa0206f911d211c2d77cc465bb6e1839c0271cf55f12658a1fd1f2f4538bf7e9fd784e4c12ae95a5a2967d2847eabe150f2e113d8542b9a7cad092b3d86ad4219632c5f3740eee45aaca529d83f0bf3cd656384848ad577ce603d31b70c40a55db571868c1f5b7aba3cf853cb0ed682bde964c3051e7e81d4454906de1966491e1caf7073035268311bc1cd3590656b1321d8d6885d15c0bf840bb40c0fa4d127878e422dfca7c3bbe8ca4447d5228f83e453c94002c43f5d87e989627f89cf5b6057de6d86d2a82ed982035519f47807ce6c61ddcd9160ff0ddb3bfe08ed966c08317e4eb5 c8e976ab4638909387ce3b8d4e510c3230e5690e02c45093b1d297910abc481e56eea0f296f98379dfc9080af69e73b2399d1c143bee80ae1328162ce1ba7f6a8374679b20aacd380eb4e61382c99998704d62701afa914f9a2705cdb065885f50d086c3eb5753700c387118bb142f3e6da1e988dfb31ac75d7368931e45d1391a274b22f83ceb072f9bcabc0b216685bfd789f5023971024b1878a205442522f9ea7d8797a4102a3df41703768251fd5e017c85d1200a464118aa35654e7ca39f3c375b8ef8cbe7534dbc64bc20befb417cf60ec92f63d9ee7397,e65d36fd64b13db62cdf8640e6a217cd4952be909be1119b04ceb6c8a71550e953be0ace373231964d61b89a575af582a66d7bb1441ea399d59a7c585d762433d64f44c53dd9b8fe8f357a26dc66e04b15b9ffd0fc7c1b4ed07db3e4c80a3527602dd16bab1f8ed85a821056f97fe2912411f7cf6bdb9070997ca4d5bc16b0b26159f7f3cfac7252241c079633cd8287cc41fb3f7cb6185fccee1e3467e90788b9e943c936c1c82115eb5b5a1af3fc6b0104959e98e0ebb0f72fa02fa5745380952a6c2eb0ab84cee35661f34cf0de4e6985baeffaf545d48adf065f13b9272098d5906da5c8b688a3c922aa74d840dd9c1ee31becabc417ea07e2c45a90e1afe588e65109c8da674533d506e17eba1abbc25dd84cc79a4ca0e15013d9d014dacc5f696a7becac187f0a7b233d59a7ba6821b3edc71c8073f2ee0caa8c9f96032aee6d9fbc15bed15e879d0f497bb8de468b4050fddd15c97af4413c4cf60859ea04103a13704cc9b7076359e28a1b90949166f5b11055b415ec8b9a552ac94e4d1f45403af5ebac0762d1ed0967ae032db30dffc8132942f45626c7e50bbf80ddfab80103e423bf00ac575194489be02624bed16c4d1fdcd0011d0c64faf6bb6feb21e0f0653f05d8fb69cf891347dff0a39136bb5d4d20101cb3ee900b508a136185fdd0ff54fefbcc6c069e1a433742d51129a1b556cbcdb8a7e76dc43b5a 7145fa124b7429a1fc2231237a949ba7201bcc1822d3272de005b682398196c25f7e5cc2f289fbf44415f699cb7fe6757791b1443410234ae061edf623359e2b4e32c19bf88450432dd01caa5eb16a1dc378f391ca5e3c4e5f356728bddd4975db7c890da8bbc84cc73ff244394d0d48954978765e4a00b593f70f2ca082673a261ed88dbcef1127728d8cd89bc2c597e9102ced6010f65fa75a14ebe467fa57ce3bd4948b6867d74a9df5c0ec6f530cbf2ee61ce6f06bc8f2864dff5583776b31df8c7ffcb61428a56bf7bd37188b4a5123bbf338393af46eda85e6,2b6d5b37da462a050946d447375ea4dec9309ec30fb6c7fa68f67aeb7b6e1921a74ff35ed31560e695499f2a5afce3e900e1c6f199373951a406a8f57dedda8c9b9d2038e787cc54b62cbd97cd4247ed933de1bd68fa670158701f088c6e785e8dde870306b80decad2dbc40a8c2f02630499292a19339e4d63351ee5a44e36fea062d2253674f5531b1c51faf694a0e963859b26a11ce890a3e5c03815bac2ccc43aac806941befa00cc6bce72ff59f60c85b5096bd7e9d4b60d23a050d3b4333a26b0cb6b69e62f33e87e65fc1562e5d1384f439d717a940e2a291897a4eb3f941397eaffcf4ec738dc643e72721b5662f698bdd502ed1a82d924bc0d780a049f7d965bb585d0f674a06fe03f0b18ae56b7aea705328072e4a374b7b9715882bd73c34e99656ec073b653c2608a04d84adfb4607b62b4b504e43f07f9d4555935e3d432ddff23d9aafc87c743c1bf8a91ea4671a03e5461cf13e76e3c1779cd97da4055eab8e705556eb7538539fc6ffc1638e702ca2a60f0506693d54a35f7af6fe0773a67767865b3f1397674eff365b3849d261e29b160cdc91368899867689e599a85572464fd895cba2bfb4aba496f395e7950e064ca509ab8d8491bb193661e250f35d5e2af12e1f981970390f456953a8ffdf72bf998d0fd7393c33fcbace063c0d63f91e741f95fd542c6c509036824b2784f394e27f6bce88b1fc 7fdfadcc9d29bad23ae038c6c65cda1aef757221b8872ed3d75ff8df7da0627d266e224e812c39f7983e4558bfd0a1f2bef3feb56ba09120ef762917b9c093867948547aee98600d10d87b20106878a8d22c64378bf634f7f75900c03986b077b0bf8b740a82447b61b99fee5376c5eb6680ec9e3088f0bdd0c56883413d60c1357d3c811950e5890e7600103c916341b80c743c6a852b7b4fb60c3ba21f3bc15b8382437a68454779cf3cd7f9f90ccc8ef28d0b706535b1e4108eb5627bb45d719cb046839aee311ca1abdc8319e050d67972cb35a6b1601b25dbf487,e8b51670e0d27d9f7989447a97c07d8d142804f876e701a49e6c4a0ee149938881900637ac7329eeab1f1e032ddc2194b2417856401060eaf019ad4d9da3bc702bd70be5fd9d9c9b86f4044ac441560e887ae21e3c3ef3f05e38c7f8b078d3a66c6fc8b98e33ea8ad1d029433626ceae2468e3034cb44326c89d7a7188a5272c116d3783fa16af98ba3070ac96c07e459f1127304483a2394837ee1a10020a79f8519795895f4786f5a15134dd44fcbd9bd1efd0ebee9cd991001fccb6a92e490793b6f16471670e1d69f9ce49020c1e8e3b453cdc1a8498d8c510b8d21fa00239088e065b742c51257766f19e17b397362dec9453f50328c5e14bf800396a0a3a1a957b29cb1c8fa059bde39b995d45900b56e2c8cd2f4e8bac756350de38293d1fe4436489d9b23860e1ad35e2411d0210ddd1c3d8994635f29674a64aa5f92b2088f3e7b4fec26485d93483af96fc4c5fc9f34254e014ddbab361dc55e0f5019ba9ff8ed7b104e09122a80be3bd29a3e4c4c26a7d2b08f8915087d9a6a2e7888710a5b2b87448b81f889830e26e6813385b761fe97e3729ad04bcf08f536a152039f04c283dd36b9544c4d6cba97e26b61e034259caaaadce508343dafbd4dbcbce25957406b22e13dbbbb186c18dcbd5b8aa18c86d8660698af26997726fb7af26c397df8608708ad5d6524001634575a2f1070a5ef72d327e91c7184b4a 988638219fd3095421f826f56e4f09e356296b628c3ce6930c9f2e758fd1a80c8273f2f61e4daae65c4f110d3e7ca0965ac7d24e34c0dc4ba2d6ff0bf5bbe93b3585f354d7543cb542a1aa54674d375077f2d360a8f4d42f3db131c3b7ab7306267ba107659864a90c8c909460a73621d1f5d9d3fd95beb19b23db1cb6c0d0fba91d36891529b8bd8263caa1bab56a4affaed44962df096d8d5b1eb845ef31188b3e10f1af811a13f156beb7a288aae593ebd1471b624aa1a7c6adf01e2200b3d72d88a3aed3100c88231e41efc376906f0b580dc895f080fda5741db1cb,120ca7e361a65a0985563012cb908028105abdbcb51cd8eaca141662b0c184e9b2d6dfcdaded7d7cbd42455b3f5a9f15596d2bace19510256275209cc9899a87c6224df8e919458ea46a35cbc8d66a488069703cbbdeea6d767cc315fbf518f7b0a0154448f8d7c56da1b116730a76954c288b4891b56fed41b2efde6c27dd4b3de9bcc25a2a901d4c87975e82372af173982601b605d845dee7bac94eb410b369bbbde500d458f9f8a3933d3bcadbcc85ea05acefc9a7a77e26e28e82db157ec1cb2c99c272f33b1b2685533cd988dbdb6e850bd3c71e0589a165fc236a65b1f1db750a3fdc1392a76e7714469b47e20d8946af7d68ef9b16109178f662320d60a0d843efcc5b1e56cf6d8fa8b649ddc28e58983abac7b2ce019aa0e07b387d8ba46cd3faf47b522d766971ba603c84684bb094e38d82ebcb108ce0353e38fa0a4d7294f7b7baf745f3e036ec0231f6a194585ff7ce1c792e4879bb44e4ad65717952b080beaae1fd0cb8ae87e6f130f91bb06f95e54fa924e2d0c42921d7ca9965ae70a3587f12017cf1e4cb70d1704a51efe27dfdd919c7fe70f967cf7044c62d6ff232b6680278e9498f247ad92d5e9491db0f00d583c019142a8eb63678231e1273f0a263c57b98e0af650fa207d4b21650417dddb40830f89e15c85e934fc745aad87ba35dc16b7a82cc97926494bcc1feb4ed43d75f518acc22d208d3 5aab62756d307a669d146aba988d9074c5a159b3de85151a819b117ca1ff6597f6156e80fdd28c9c3176835164d37da7da11d94e09add770b68a6e081cd22ca0c004bfe7cd283bf43a588da91f509b27a6584c474a4a2f3ee0f1f56447379240a5ab1fb77fdca49b305f07ba86b62756fb9efb4fc225c86845f026ea542076b91a0bc2cdd136e122c659be259d98e5841df4c2f60330d4d8cdee7bf1a0a244524eecc68ff2aef5bf0069c9e87a11c6e519de1a4062a10c83837388f7ef58598a3846f49d499682b683c4a062b421594fafbc1383c943ba83bdef515efcf10d,f0715de35692fd70123dc68368d0feec06a0c74cf8adb05ddc255487b1a8d4d1213e9eabaf41f1161719d065d794b750f84be32a3234b4d536460d5520688a5a79a17a4ba8987fcb61bf7daa8b547bf5c1ce36b56a73257dbbf1babb64f249bdceb67ba1c888370a963dfd6b6a2ade2cefd14c3252cb3758520f0c65f4524682772499463ae1a341800183aa60efa05118a28201744f7ba0b0a3928dd7c0263fd264b7cd7b2e2e09b322bfcea8eed04275795be7c0f00e113827370d051d50269580300005ac1288fea6cd9ae9f4f37ce0f8ace8bf3ebe1d7056255954c761931d3c42ed62f7f1ce1b945cdecc0a74322d7f64d6004ff21684149307288b448e45433475b1ea1314b00f1fc450089a9d1f7710c6d7652ecf654f3b487d0283d4d8a28efb5066c4250d5ad698e15dba88e925e4de99b69bc383ac8045b7f1022add39d443546ae0924f13f4896096dfdf37ca72207987c4a7705a7abe724b7fa10c909f3925449f010d61e207add95219071aceedb9b9dced32a9e123561d6082d46aefae07ee1bd132765e3e513c66501b387ab2ee09a04ae63e25808517afea3e051169cfd2fff8c5858e2d9623897c9e85175ac5a86394cd0a32a0a62a8f5d6cccbf493daa43f78362bbca40adf733f871e0c00998d9bfd6880656666cd7be4fe9892c61dcd5cd23a5e4277eee8b4afd29b69bba55660a217112ff6e3456b1 47b8216aa0fbb5d67966f2e82c17c07aa2d6327e96fcd83e3de7333689f3ee79994a1bf45082c4d725ed8d41205cb5bcdf5c341f77facb1da46a5b9b2cbc49eadf786bcd881f371a95fa17df73f606519aea0ff79d5a11427b98ee7f13a5c00637e2854134691059839121fea9abe2cd1bcbbbf27c74caf3678e05bfb1c949897ea01f56ffa4dafbe8644611685c617a3206c7a7036e4ac816799f693dafe7f19f303ce4eba09d21e03610201bfc665b72400a547a1e00fa9b7ad8d84f84b34aef118515e74def11b9188bd1e1f97d9a12c30132ec2806339bdadacda2fd8b78,2e27811d2e132c58a1d053ccfaaa2813b620554c49c31cf208964cfa18a3eb5724d4ebb37e37398ce9201ca33c5f6a9409f262afc5ebf0970be0618ec7e56c15c13b2f0270ab5a9536fadeb84eb2d934b989354d47fcd1dbfb40fd96485fad8df7c6e62a60866f154901e4427c2b5e6059c76224589a6be352673430740903e4225c1379561ae5d361b67f3acaca9c7633cccd2601ed278b5c7d6a378d713bc549e2797ca34fcb0a00e649ac3a4b59001e5d8e1e2785433ed65c76f4fec4b0579059dd4da49bbe678279f534b84a280f89dfbda09e09c073ea11afcafd5685a714ec31e8f86b49d2c97e6a2a66b4f2aa76d9df2d27cfacc2423aa18492e2f4ef6a9f8971627839375307f45a8b26133ff1d02f100ef05df168a2be02f0c17ccb90f23a0fbc5f536c410923b154e81a6557935e2572165a7e39f64f57e2b8ced8d2cd1025edd5dea6dbdacc8860bd6a0c598eef14619d4bc11b6aeaeb5d10bff3f9d5b20b7f2ab8254db0c1765a10a125e98d762851f05261dae06b224e2076112a62b4c3f3a56074e01cb3dd264cb1f4b58eff2a1c9acc4764a68680a40fcacc719286684fe0a742f13b5bdac8aabfac68174c7e153796c240279b0acc719158d1fe4f78ec3d47ea8b8d3a1b3a6842970fd439c09096e8b032e551dbdfd0ef86da0537f4e72f78368b319b6db735affea80633f2f8eb9d26c8cfc321c7c346f7 8cff1f67fe53c098896d9136389bd8881816ccab34862bb67a656e3d98896f3ce6ffd4da73975809fcdf9666760d6e561c55238b205d8049c1cedeef374d1735daa533147bfa960b2cce4a4f254176bb4d1bd1e89654432b8dbe1a135c42115b394b024856a2a83dc85d6782be4b444239567ccec4b184d4548eae3ff6a192f343292ba2e32a0f267f31cc26719eb85245d415fb897ac2da433ee91a99424c9d7f1766a44171d1651001c38fc79294accc68ceb5665d36218454d3ba169ae058a831338c17743603f81ee173bfc0927464f9bd728dee94c6aeab7aae6ee3a627e8,76a498f8112b364e0db20cb4e7aeaa1c96400a3e1eb1a24ed865203c4a583ce5ca10b47e725c362696f0ade5fd75058d6882b435849030868486318e566be51b6d985a76b36d98d893a04cc715cd26c412bb4ccdc0db6d1b13cc071fbfc83f114c72d3b54cbcfe57243189251a7c0608bcaa1409b243f2652cf5cc4386cf4551d2955f371591c0a04cbfda2736a514e773b5ee8c5cfd820a7542cba65245f729e650d085b3f60ebce2cec0d8c952add51a664788b3197952e7d0d9fdcca35ee118bc0144688621dfb373c2bc1de7ca7bc751d539276a119ecae8ae2987e018e9fd70c632f2a54701302c12b971e0ee5308378669ea10d0e9a7b955be1c1bb9e7ff6857c39eb6b074c061f28d1979b33ab8d2f81078325c9f7966806d2cb62903fbaf4c12ac4aa15f010034080571bee9e863c1cb89cb01b86643db1d1a6c224934a79d969616cc3f9c1382b81eb83a8cfa2cdf20bb03cb67ddafcf9cd827d76a0661b85e82664bdced0ef34d2f807ad956724ea2cbc511632d2c9e9f8e4fd71e127d581cbbb39782be58902927b0c0d922493255f805c5cc78a96aee84ed086aa93f8fbf7282d78daa0b9c126216bd929ea4a4e53f78088ca154e9a63b3227a25705532f699606ee73a5fce6e6c94def1324ff2e0edf6807700ded2f088e2d77b7f690e646e7a73ca05febb2634d862d7b21ae2acfe3a5b3dc6ed1071b0f3e5e eacd07971cff9b9939903f8c1d8cbb5d4db1b548a85d04e037514a583604e787f32992bf2111b97ac5e8a938233552731321522ab5e8583561260b7d13ebeef785b23a41fd8576a6da764a8ed6d822d4957a545d5244756c18aa80e1aad4d1f9c20d259dee1711e2cc8fd013169fb7cc4ce38b362f8e0936ae9198b7e838dcea4f7a5b9429bb3f6bbcf2dc92565e3676c1c5e6eb3dd2a0f86aa23edd3d0891f197447692794b3dfa269611ad97f72b795602b4fdb198f3fd3eb41b415064256e345e8d8c51c555dc8a21904a9b0f1ad0effab7786aac2da3b196507e9f33ca356427,760dd76e50c13b411d04ed9d81078f0e5b9fc5df9523f7c2aeeb418ca328e047071852fc5ec2f96c2133c4aa7c68306ffd70a782490f92812e04a3343b9502c14b781a4800a8928956ea457a3cfb94a63bb4407524dccdb6136c5228fc1cd426f75e1701f0ab7d7ada8079e4761fcc4dcc72155b4b27370a7eb6a5e3995a729ad8d8b5356a084b0678b114078b0d43c657a23f09d0862d606a8a485fed68ebbbc63a126fbabdf36151d5a39bf17632b3d967983fd62e19c944400f7a68393603243ce499947f3edce7f30206bcbff83615dbab7642c5d82de050d67c93b836b554949b96947b7d1534e0755859adb7ba5ac9f519b18c3aa66300acf9a26849665810250004529334169211624c6a63350b392f6dc6753d59a03997180980ee0e742388a2bdfca619524dd16250800918e95cab914ebbfb12232f1687be0b46426e126787e394a91f775fa91ee1c5d57ab1ffa151d554b79de8ee9a937aaf5c98497aaa726cf01a9dbce6e57a07f8d098b2844ecec9856d3d8b189d016b34c4ab61aa3191b3e4c2b44f6bcc9444e6093a56545230fcfad19a2cb124abf524689f4f665f2e84d10a2c93b8ca412b6d280c2680e946a6c9225db6f97a86fa3415a84d52ff3a0a15dc7ce97738b0b2dc1430bd56bb71ab89ee108b5bdb706c7919d5ec67c487d9c8dfa6d2333c59248104f33f4c162a5156a3a666948e3a6da13d0d 23ac4e9a42c6ef45c3336ce6dfc2ff7de8884cd23dc912fef0f7756c09d335c189f3ad3a23697abda851a81881a0c8ccafc980ab2c702564c2be15fe4c4b9f10dfb2248d0d0cb2e2887fd4598a1d4acda897944a2ffc580ff92719c95cf2aa42dc584674cb5a9bc5765b9d6ddf5789791d15f8dd925aa12bffafbce60827b490bb7df3dda6f2a143c8bf96abc903d83d59a791e2d62814a89b8080a28060568cf24a80ae61179fe84e0ffad00388178cb6a617d37efd54cc01970a4a41d1a8d3ddce46edbba4ab7c90ad565398d376f431189ce8c1c33e132feae6a8cd17a61c630012,76bbac5e72bfa9b5952d4fa8313c2c8995f1b762b0855ea28417a04cdf1bc9a72038014f4d1af37d6338e217daab8993cfc222510a869403dc46b5d798646bb76abf4006f31be334df8c6da07ab8c6e6523dcab9367e6b747600e785ea0bd3480a07d7ad1304019c0f00f90b2a650599b0b416655ae1b1d8facbce38d0dab5a6375144790b0f7e8c61b4a98297c78ee6fca19051dcf60b4eb1f6fc59dfbc5bd1b2ed6b9c72d7b5dc33e8d13566bc67013cc7114ead63d25eccad196a5c258de23d82e8cb2ba6753c9bc598a54f921ca924750a45353bd44593415aadd251b604457a3caf3da681c0fbf43e4f3814aead086a72a4787914fd08bc727a69ca5646ac709b9e0df5b56c8ff82edbe3c23218a1d5382aed38b3bf54ebfa6015c388c8e92d57ccb97fe8171e1d24360311d5ed53545b541e7f24ccca9c5b520feca2547ed6e1889a05eba1c0831d8ba9162b38491287b46bbcde9bd2198eeda5fd0869a83543713bd294d84371f1932e3eb370e30210fdbc2853f27372df095f71a34fa4bb0e1fdda682170a29f9e29c2bcf946cd2865865a70dac22a81bc387b6a06840230ff8790b6bf1953db882dacb6a9208709c121af24a6436b1a5312b3e6d77892fff968138dec8b933e3022b4141a4b4605524c95468cd89aa56bf577e16a365531434fb98fd8399dddb58c0e5ce66c8a8955ae1ed8eae5251026861c825a6 0172df732282c9d488669c358e3492260cbe91c95cfbc1e3fea6c4b0ec129b45f242ace09f152fc6234e1bee8aab8cd56e8b486e1dcba9c05407c2f95da8d8f1c0af78ee2ed82a3a79ec0cb0709396ee62aadb84f8a4ee8a7ccca3c1ee84e302a09ea802204afecf04097e67d0f8e8a9d2651126c0a598a37081e42d168b0ae8a71951c524259e4e2054e535b779679bdade566fe55700858618e626b4a0faf895bcce9011504a49e05fd56127eae3d1f8917afb548ecadabda1020111fec9314c413498a360b08640549a22cb23c731ace743252a8227a0d2689d4c6001606678dfb921,1e7cde630a92bd14100ae80073cce0301aa6566dfec50400147a9dfbe921bf35b110bc9c0b7ad6cfb50785c63881be1569495092866bce9ae303b3719b14a47dea8fa19cad3015d320c678cbd2b7488e71180d967bbacfca686eff014b7eed274f678cc43825e79c81269f99d1b824d913f8acba4dabf5441a29c2e769b44bbe9954a7444bfa438ef1ba2b6a3db11e11151a1736bb8ca22494d4a3d126f100a41d49e6114cd66cb44b80c2e3308a0b551b692bc5b693ba9634e219e0ee8e7f28df196d8c517f9d71a58f1d945e03fc25426e13612ef4158c17590922cd6a8de677398690a8a1816c6a01b162fe6e5f0f502314c542fb568f12ca86f5ca6da7b36255451360ca352c05d10c293a8a35417991efe965ba6f5bb845be9e8c021b2b4af2ae50200c60b7ba42fb5d3147615339fd71343662090f2e7fad4cd0ac0ed49c3fc8685116a8d51d4183ccc9f39b401d47cde7ef7eea63fc218c96edef7190a2529126633a7f3eee421478d66ce367fdfda6a9a60aca3b288c6462bdff20dbf78a3dd29e73d1a3e8f3fd824a3616722ee0b87a9e393ca89159ea8169dca108f8e2feb35c9372ec3b9112e534edf733397b7585051257a564b844c07db5dcf56403e59eab6f56759d50c47779dd900849c94dcdaac1af51048098bf95a0b9eda23df0520a3dbd86a0b59cee20822efdb9dba6d272a7cd5cc95498e340062539 3875b9240cf3e0a8b59c658540f26a701cf188496e2c2174788b126fd29402d6a75453ba0635284d08835f40051a2a9683dc92afb9383719191231170379ba6f4adc816fecbb0f9c446b785bf520796841e58878b73c58d3ebb097ce4761fdeabe15de2f319dfbaf1742cdeb389559c788131a6793e193856661376c81ce9568da19aa6925b47ffd77a43c7a0e758c37d69254909ff0fbd415ef8eb937bcd49f91468b49974c07dc819abd67395db0e05874ff83dddab895344abd0e7111b2df9e58d76d85ad98106b36295826be04d435615595605e4b4bb824b33c4afeb5e7bb0d19f909,9576636b4f4d13a576b2dd4fbb3092f358e7cce04cdda4f83a10a8b5d35b5ee034543098d9a063fac9cd26ca46837c5cb6e96f7596d4f07ea6fdd8af8b59f9e86611f1514d5dc0b7a4216c69b9c85366059bed3ea5ced38a16e4d6945c7c9539e062de51fa2dee1c666db1916369fa6bc0d7a2811ed1beeab61397b8a9faf224fb4acd7f8d9c7a8513c8a93d924fb4ee027821ab6de0415af9bac5cf3d5cb7075be5a6d410f12a9bbc96bf3ff254812c48423f383e4d74ffb5edd7ad34c6e0d64bbe7f45288a49f5de9ac14f317bd4862e1f25e338a0309739c8ddd27839b8ab3b04b9fbce65ceaab460dab0b969222250fcaad072c445d472bf251c4911c7d5d2b7d41c9d2840826e0ba6786309db6e8ec0fd94031e2ddfbb0d880cb780772a93c0b4c32377c3c8ce97c73412f5c3e1cc72aebc050737495c703459b9231c05477cd9a5df1662f5fc883a91b42ed7adabe6cb1ee654fe9e616b40ce9035cd3b91a05e050cb2558645a0939c536a2ef3b5c8353729c3ee238c5c88db75c05db6b2febe0a598f937ca7ad4faf495a10cb3c3b9e754a570bfa5e723b8c0cc107f0edff76ce07a2cf3acec4bb44e11c633bdbf89e5501d6001206d457962aa2f57c9c2f3fcdd1b76ace292728f21a6addad4551970b1532bd3e46d9a5160b1a55cf4be18fa15adf0db055bbb21abd9a5b0fbc474ced2b8787732fcbbb231475f29f 747cc1a59fefba94a9c75ba866c30dc5c1cb0c0f8e9361d98484956dd5d1a40f6184afbe3dac9f76028d1caeccfbf69199c6ce2b4c092a3f4d2a56fe5a33a00757f4d7dee5dfb0524311a97ae0668a47971b95766e2f6dd48c3f57841f91f04a00ad5ea70f2d479a2620dc5cd78eaab3a3b011719b7e78d19ddf70d9423798af77517ebc55392fcd01fc600d8d466b9e7a7a85bf33f9cc5419e9bd874ddfd60981150ddaf8d7febaa4374f0872a5628d318000311e2f5655365ad4d407c20e5c04df17a222e7deec79c5ab1116d8572f91cd06e1ccc7ced53736fc867fd49ecebe6bf8082e8a,68618f4b2868634d8ffd3483fa4aa9c200b43fe87d59107bac648665613805242b1cbb4db2761d4cbea5337e5e07005b5b4e8c80038019ddec76395ba981d36823522698c98b80d313a7b6110a0bde7ed5e9268fa655b8dcc2c762510ff03506dc1ca8769b372f07d0e325786fb1c58206578e600e9093aa84468f01a2df258e670959966b419ba5d4b6063c997822e073717565c6f9b4777e186a0bd6d72f65bb3cca7e82601f25667fa0186208f7988611a76bc4d116ab3944d6797828fc5fcf17adfa99d959f5013fb2516a2d3dc05508e9c28ab5f9e0770d0db2fbf9cd3c8ab90f255b465a9b724d90c25e1eef81b839a971dd84c4d610e00ed858c78b2fc6147cb6b1266adfac5fecda9a6f78b31ae35be6369c3e8290e6f297b7fdb35bbd59f0bfe16146cf3a5a75297ffd5d02685c39ed9394adfd3c7c814ae86eb652d152b7ae980b328f3e16f883c7c6df6672ea1ea6e08c61505e65852a1be11decb86d8386079e17e72ef8fa38b69ec192c0b90622150a5c43584c3159cf61189138089653ae6453d24f464d96a9bd0cfdef7c1c9d92d46e854d644982bdbf0e5be7c38edf469ad3c0ebae549322bf271590e38ae16a1fabda49ad6bf8b1218fd9072c25027ab31787b9f38529156113a82a8dd27bd22cfa719b3ab0d31297a0de9af901a443057d34cdc11747d6576b7602d7d6df58c292a69b4549ecb1518a02 57af971fccaec97435dc2ec9ef0429bcedc6b647729ea168858a6e49ac1071e706f4a5a645ca14e8c7746d65511620682c906c8b86ec901f3dded4167b3f00b06cbfac6aee3728051b3e5ff10b4f9ed8bd0b8da94303c833755b3ca3aeddf0b54bc8d6632138b5d25bab03d17b3458a9d782108006f5bb7de75b5c0ba854b423d8bb801e701e99dc4feaad59bc1c7112453b04d33ea3635639fb802c73c2b71d58a56bbd671b18fe34ed2e3dca38827d63fdb1d4fb3285405004b2b3e26081a8ff08cd6d2b08f8e7b7e90a2ab1ed7a41b1d0128522c2f8bff56a7fe67969422ce839a9d4608f03,9a3cda57019548e6a68d89cdebdf96557daacac29c5ef8532dca123231d0226d0d7f62042d70bc225cbb1ed8902d8e6be75b2b37504990471fd01f4c656e6f6b77961c753a780d91fe03598fa2d5f60b772b34918db836d2cd278fb41b223a6d1f25c91a4b98b64ba3eb32dfa5dc5e1cc5ba1467f287d56ce98478beee91087daca1e2fe0adca38883c9a73699ac98aadb5c4b087719eba775b0abb1b0e5acb4f79f0f75dcb2e7e25ca22c06b1629ec1ca989ad1f1f12c4580e43da76b2b58345b61085553a827ba0d3954b0befca8394b9d19022d33df6978148234cd16c7491075517081261e9af8fe42c66a7580132ea3307af3372489d8efe01c5ae579a92399b844266d13804b887538d70d2a4eae3c65e09f6bf877113992c42d490456cec22ff8c60b0c7d2517a49d2822cb2b2ab6bef74f87ce134f78141157d0498f267c94123e1606d4ce1ae8d7847cf9fb23d8a11901292cf36fb975fdf34aa0ce10b851e116ee7129b06d3ef10cc1aba6f761ee2f1e4b497da11fca3e844a8dd1a6129db5b3f863378d3488ce7e208241946bac2e4aafc912cc46e5a6451832a2a43176e06dbd49e9d379a69e6f08081f609b7207c5cd391445e10d10ff2b99e0d672c19cbd9f5ffc6ca46ad9536973368a747a7a2f23aade81a43e49d2e9cced3f64ca24c012cf3a306c40ecf36843317be8d29803a40f6f71e7e9229154b0c4 04e16dedc1227902baaf332d3d08923601bdd64f573faa1bb7201918cfe16b1e10151dae875da0c0d63c59c3dd050c4c6a874011b018421afc4623ab0381831b2da2a8ba42c96e4f70864ac44e106f94311051e74c77c1291bf5db9539e69567bf6a11cf6932bbbad33f8946bf5814c066d851633d1a513510039b349939bfd42b858c21827c8ff05f1d09b1b0765dc78a135b5ca4dfba0801bcaddfa175623c8b647eacfb4444b85a44f73890607d06d507a4f8393658788669f6ef4deb58d08c50ca0756d5e2f49d1a7ad73e0f0b3d3b5f090acf622b1878c59133e4a848e05153592ea81c6fbf,2dec1b61a2977a54ff13cefc08f9ec6f11be80e7f5b77c4ccf2692450ce86c9d57ea58cb34ab2995a6193935dde84bfd62283a881cedbf685ca26a8a727252223cd6e7bb8a3c7751b8721ed16d1209611803778df77c6a005e1a05aab97f6205e0c1c6b339f8d8346a84c6a6d86efeb17b6f8c8e30960dadba3dddb860f46d2718c7307c55b65aef1082b98e407f56b633a16578528b8211254fa6af384af0ee36ba49638386494e347e961d6d65ccdf2d5d221ac54f6a2f6c4eab62b7b55e26192a2e223bb053558a6c3646355f3686dd1d3712406677f183e94cf822d0afa9416815c14bab7f5c5b4e44f364446e08464370e60a436653b2dd29e60562712136940df4ae19617774776f0784f7e8ac600bcf8359e02b070c0480f372dfd69df9c33ecd3484678087087c7dad64e160b32a0372318aff1668f5a0b03c940c384239994f546fee94e3ed0fb8ac259002d09c3110806ffb56419cbdc76f28c8f828db0aec39a573a903a49c0c9f77f0504b9c8cbeca83b6d3a7af24631f7e4b99e9b42ee201cda0ac1ffb79ac24f3516d766b0f71e1efef8e6cbe38c24d86b83388d6d3c2f9bd6af94b8a56b6b5cd53af40837fecc5481f9af1fe216852c281e068f0891908b583845b58a4cb4169a0f2aab2c36fd184b15c3e4008e38e00c0b6db256b89c4c373e8328d13e840d65605c44ae017b0876cb5abe1ac4d9ca14a3b 7c815c384eee0f288ece27cced52a01603127b079c007378bc5d1e6c5e9e6d1c735723acbbd5801ac49854b2b569d4472d33f40bbb8882956245c366dc3582d71696a97a4e19557e41e54dee482a14229005f93afd2c4a7d8614d10a97a9dfa07f7cd946fa45263063ddd29db8f9e34db60daa32684f0072ea2a9426ecebfa5239fb67f29c18cbaa2af6ed4bf4283936823ac1790164fec5457a9cba7c767ca59392d94cab7448f50eb34e9a93a80027471ce59736f099c886dea1ab4cba4d89f5fc7ae2f21ccd27f611eca4626b2d08dc22382e92c1efb2f6afdc8fdc3d2172604f5035c46b8197d3,dc2038c613a5f836bd3d7a4881b5b3bff3023da72d253e1b520bcad5162e181685662d40252bee982eb3214aa70ddf0a95c5d1031de9781266b1e0972fc9777d4a74164da68a5d4585f7a8e7438fe28d8af577306b8e2cbf6863c83431cc4c898dda50c94efd4925432fca36a6304790fbf4fefaeee279c01b8b6a8d1c275e3cb4e8bf17d880903fbaf27bfa65a2e3db8e285878a94955f6fc14f05a0fa2556994b8612bb7a494b4dd8b3cf1bc9e4bf833d4bfbf878c4d3bdc8fc70d26d7b7edaf0afe2f963dc6884c871c1475f4b92378b9824970e40da0a59780e84ac5138aa1efa46c1b50c3b045be59037c6a0c89e1d3cf246f1362794e8107b7cba74888f0bf4b905cfb9c33517f472bac16259809797f2fc883ffbdd7cede9518f891b9117de5ddc6d3e29fa56eb617f25e9eb1b66f7e46ed54c1d43ac07471d35c57b8c73bc68f5612ed042bff5e68634a4fb81e2ef0d92fff1e11e43fd6d9a935678d2fdd04e06061da3ba7de415b93c5a8db1653cf08de1866f5c3d33be32a3b8d2b7bb39e9745c6e88c782f220c367f945828b9b9250de71e8a14ec847bbeec2b1a486ce61731cef21b4a3a6353c2c705759fafa50ad33fb6abc23b45f28ee7736df6f59aaf38d59881547274cf9af2cfc8fc1ecadf81ab72e38abccd281df956f279bacc1796ad1f90d6930a5829bb95e94a8682a51a6743ae91b6c12c08e1465a e29d505158dbdd937d9e3d2145658ee6f5992a2fc790f4f608d9cdb44a091d5b94b88e81fac4fdf5c49442f13b911c55886469629551189eaff62488f1a479b7db11a1560e198ddccccf50159093425ff7f1cb8d1d1246d0978764087d6bac257026b090efae8cec5f22b6f21c59ace1ac7386f5b8837ca6a12b6fbf5534dd0560ef05ca78104d3b943ddb220feaec89aa5e692a00f822a2ab9a2fe60350d75e7be16ff2526dc643872502d01f42f188abed0a6e9a6f5fd0d1ce7d5755c9ffa66b0af0b20bd806f08e06156690d81ac811778ca3dac2c249b96002017fce93e507e3b953acf99964b847,91ecb5133525e291736cf8f4793bdb00a4ea32f48c3f24cbd3238e6408fedfa6e7a750409f197041001c1a090659f8879cb26912b46a0e7e4e791fbf5692fd36ec84a55462b7876724ea944ce7246261f26038b166668e6b7eab0b5119b44e4581f3a3280508cd8b3789ac37f992eb9777b9e11c0f19a3da5f4b8d304ac4de68b3c2cd6659f33fbe20b47e1f6b0ce06ec0963f8e7412fcd84e3da3867cff08f82aa17c43c19bdf3bc0d242fda4874ddec389564345ad11a267d7a466925d1e9beec667b029da0982b37b51413b4601cac17a02cbc681f927defaeddb0f6a69fdfc39ab735470e86a00f82eadc94018a6e2a29e7f393f30d954c82936e158a364fb139ff29e42f30c0b95bd5714eb7a535a5b1d1b3b36a862e35d10d1f8a5afbeedecc51a855724271da9ffb8efc6615c42b03a57a2d762b46d5d94e097dafe5d7a2ef522ddf2ddadc1f83eadb72510e770735463495b0217b8bc91db597683254f6e0ac0e9b1e56ed0216ec9618173b163cb3f393152469268c056b1a204567ebe7367f863ba145c3bb367fa3c01e556d62fbc8381cb3c8a9bed907d481c093f14b70d1bd31aaa41fa753ce31fc59740a47bf5980f8a0e32eaca8a488572a3a91db07a25c34330cb7da7e0fb7d1541c3f3c377963de4560a8d584e11e9c6a1b917f907c34f211cd78904471199fcf30d4180f88e7bddc0392197444adb1968d2 d85588696f576e65eca0155f395f0cfacd83f36a99111ed5768df2d116d2121e32357ba4f54ede927f189f297d3a97fad4e9a0f5b41d8d89dd7fe20156799c2b7b6bf9c957ba0d6763f5c3bc5129747bbb53652b49290cff1c87e2cdf2c4b95d8aaee09bc8fbfa6883e62d237885810491bfc101f1d8c636e3d0ede838ad05c207a3df4fad76452979eb99f29afaecedd1c63b8d36cf378454a1bb67a741c77ac6b6b3f95f4f02b64dabc15438613ea49750df42ee90101f115aa9abb9ff64324dde9dabbb01054e1bd6b4bcdc7930a44c2300d87ca78c06924d0323ad7887e46c90e8c4d100acd9eed21e,54a3c3f41ffa1a12309ccc1d6b7915e126cb13371a2953f33d6512241a5b835005a7fc8844e4e5bc097b9c5d8e388ddb5a55f43905e11c380b8ef1dc661b77593dbfafb6b2a4a28039abf57706ed1193e860cec1f5d9c522839607a02f3ae0d057100cddfe48bd84f60db063aa3011ef8a6aad3947d8f86e2a6a28e258a99d72e998e4148dc877945844094125db2be06b98508704e3901ad2d8d2cadb19291af8436dc4cd89d97060df9f7ce0738ed5c1456cfef18862dabe84a08a22bf310fe273496401619f156ede9311697566b11c38bb10d4ac5787d4d6491cb43b4d79c5f062645facdd48edf609737c7ffc226e36587b39759f23da6cf94349cfa50b9e18f1c6cd42dd22ea04a4a7a73acce723e4e5948fccc9857eebf22c9761ab8aff73386d470a34254750bce7edc88a46f54ab64f562bea863488f846671503e5e305f3cc61212e95d055851a4d4a9a145df52dfba84d27d084952f7e12af3c4e20860a479156b48cd65ab2bee5407aa200ce205e3e46c35dc4b50205c11187ec81eca5be3b2e90a170d53e6637947470220b2a6edba8c0d0e3525be456417e6ea0fd98bf54a5804aab6bfb728b22a5d01baf0cec173821f5e075a0e4b7649e303d17296981efb88327d5b1a3a8ca72129b979dfbcfdc45ec3d1bfd01d10814f225c6bf09962f0491756cf9607d3974c24fda6ddf6e87013ec5cb2b883bd0a50d 3a12f8508b40c32c74492b66323375dcfe49184c78f73179f3314b79e63376b8ac683f5a51f1534bd729b02b04d002f55cbd8e8fc9b5ec1ea6bbe6a0d0e7431518e6ba45d124035f9d3dce0a8bb7bf1430a9f657e0b4ea9f20eb20c786a58181a1e20a96f1628f8728a13bdf7a4b4b32fc8aa7054cc4881ae7fa19afa65c6c3ee1b3ade3192af42054a8a911b8ec1826865d46d93f1e7c5e2b7813c92a506e53886f3d4701bb93d2a681ad109c845904bb861af8af0646b6e399b38b614051d34f6842563a0f37ec00cb3d865fc5d746c4987de2a65071100883a2a9c7a2bfe1e2dd603d9ea24dc7c5fd06be,264a7d71ba8e67773ac5ab0ce3616f1147341edeeba1a177e8529b0def09c3a99d91029d77c3f9f85508ae74de172f358cdd2bc4efc8b27bf280e162b03a08272d0165d9012099b8ec0274801af9a0d672fda4510c09347add664505be434469ce78df597a7890381fbeebcee79fde94ee240a2b3dfd60b23f4126a5fc397b4b4e5e21893cafbabec64bf53f603434f168fcb667828e79f44b1526e9875f9ec9982648b9c6fc1ad6527d7fd2aad064227d9a85ef9733b2b484202e00f8929e18899bfa6b92c3aa8b05f9ead25df02e02c7e8c264b67ec07ab47a7d95905f660cc6722aca28215aee543fb7950f0204784aff77374b803e5ea679f22a0f5659a363ee122aa76bdc881eb28d5e347842b2cc81ff0447b68989e744e187808d7af0011a32b66f9050161168d6f246a5c7b212838b831e71d71606f21a40d8a9aef42b21465689b7ce967dc2e53f869f0584e19ddc629068c1acd7e6b986c3d1f1e24b1a907f7ed4e5b83eb7b0a5c6a4508e0dc21be2c1bb5506bb2b97d9721b57deb9d4d39d58b77dfe6c869f5fbfd74559082b5efc3692e72a9b961b6a669ed700cc41ffeaf370f88373d5bda8db6dd2c3bcbf1d833f4b9cbd3b4134502931178c58fcffa80cb496fd850352634f73d002fc4a6725848ce2541862b3c5566a915878e60b3b4c1ef7f014f0f32446298891a383f63568c849df2a208e75eae37ed8 1861edce46fa5ad17e1ff1deae084dec580f97d0a67885dfe834b9dfac1ae076742ce9e267512ca51f6df5a455af0c5fd6abf94acea103a3370c354485a7846fb84f3ac7c2904b5b2fbf227002ce512133bb7e1c4e50057bfd1e44db33c7cdb969a99e284b184f50a14b068a1fc5009d9b298dbe92239572a7627aac02abe8f3e3b473417f36d4d2505d16b7577f4526c9d94a270a2dfe450d06da8f6fa956879a0a55cfe99e742ea555ea477ba3e9b44ccd508c375423611af92e55345dc215779b2d5119eba49c71d49b9fe3f1569fa24e5ca3e332d042422a8b8158d3ec66a80012976f31ffdf305f0c9c5e,c87cc74fe777b2dc9a33473f88383dfece2244a807ff92babeb7bf08f37eabd9305be93213a63a4851bcdc648c2eb31bd509844a56b7b890772e040e67d32a4098efbccd0ed6d25b2ab9eefd0b65ebb76d540d0fecec277ac98139ae8f67025dec7ae76850e047098557d2ef7d9319bc153641b1d2a376f23e4a1f2fdf1168eb5901b3e11a0410c8563dc4bf1fb0f616cfeab2b086384207cf1a10d51634874493db0533787c0564c1400bc56cdb7c32a6fa4800f0e685156f2bb63a63b67f6d40ab574ce0ec54a4a533958b3a48266ee038e5d85e67f3ba429ea1671d89a083b406a568a0795c56ef042881ab67665258ededb97ad04b5a30388d7ef0dea494ba645f8fe47e81a2cc4a9c6885ed80c6f6d37bb0e81a60575201c0ec3e9ff30f70ae746b86aa3efb309f13fad5ca2c824c2fcd34af1dea5e60e4a8cd92e7b653301721937e03ecc2ad5642a3922d4d666448759961c6d830ccb45d666b675c920ac2486b100b5a51a7659f24735c173f9fdf02b1401a03ed5bc45ef098e799e7a3c29eb262d408ca9a6d2c18c5636f3b378e63f8c71c70058976e880d8a0f23e0f2f1cae00f4e06fd60673cf0968a2e3c5d97a79659bc81f6639fe69b18c6e4d1f3bf535814a4d6187f3f9bd7f7509b2eb899a6ed48526c665b706a526f0e5ee433dcb3b5c7bfc99078342b78edca9502d6f73566bab6afeaf63ec9a020a7ef5 08d0ffde3a6e4ef65608ea672e4830c12943d7187ccff08f4941cfc13e545f3b9c7ad5eebbe2b01642b486caf855c2c73f58c1e4e3391da8e2d63d96e15fd84953ae5c231911b00ad6050cd7aafdaac9b0f663ae6aab45519d0f5391a541707d479034e73a6ad805ae3598096af078f1393301493d663dd71f83869ca27ba508b7e91e81e128c1716dc3acfe3084b2201e04cf8006617eecf1b640474a5d45cfde9f4d3ef92d6d055b909892194d8a8218db6d8203a84261d200d71473d7488f3427416b6896c137d455f231071cacbc86e0415ab88aec841d96b7b8af41e05bb461a40645bf176601f1e760de5f,61390f3d091cfa220147b1c85c59f1d6b7d9f87db3a8910884aedd2db4ef65bd77f1d091d8375002713322f3ac618126d47dc4ea0404402fffe139c8163cf8746030b2e57bb2a74965159f4484e3a4c41e7f849bfe872db3b47eb91e4c9e67dc09ab0fb88fde8a9815baadca11238b97df04a0f5e5570ddc87d18e6e33339dd481d20cb746478162cd1464929dce1fb906b6545d846d891ce91358b9ea029f281ecdc557cb769ec8c1faaad10ffe13b8076072455bde3a3276ca458e8ffc4e377aca54833c31e906866e9dec7eaeaf74ae07339d70ad34278b076ca541cef4dd10f68fb29c17f030052702b7b87d857f462414bfcb9fba427beef0b930df09c7a6bb35620ef843c9866e242eb2b30e30c4427c1e5671f2390f6f9f42b77305cb9969224355fb7a751e2066fb8c492d6070049c768b5263642802d21632dcf50edc2c9357a4a3ca20c8446cd322cb5d8edf82d31871424575f022d8b7a6b7baa4f6326ce757ad523b8bd1b4a77c5d96e7eef9e2963b02b107f7f74c9341d964d70daa7c9e1ecbcc354935ee07192f22c15d693e5e10df094fa8b74cb2cc87b967f11237b3ab5d3f53eee9bb9e4ca16b7df02e46ea9f141dcda939b2d7c964574a0e11e3505706c0e9fe33be262a7e6589d7bd42276cc3146f0a728131e9d346b91da1eeb6b3e34ea5ae180396e219b5ffb6f87148ed8d4bac21e760861b49f248 d782abb72a5be3392757be02d3e45be6e2099d6f000d042c8a543f50ed6ebc055a7f133b0dd8e9bc348536edcaae2e12ec18e8837df7a1b3c87ec46d50c241dee820fd586197552dc20beea50f445a07a38f1768a39e2b2ff05dddedf751f1def612d2e4d810daa3a0cc904516f9a43af660315385178a529e51f8aae141808c8bc5d7b60cac26bb984ac1890d0436ef780426c547e94a7b08f01acbfc4a3825eae04f520a9016f2fb8bf5165ed12736fc71e36a49a73614739eaa3ec834069b1b40f1350c2b3ab885c02c640b9f7686ed5f99527e41cfcd796fe4c256c9173186c226169ff257954ebda81c0e5f99,39ec35d31923584fbd73a715015cef05b945a5afd2d109e72e356bdbe0f73cdf666aa7b01e77bd3bc0c409991f1129961f6bdd772ade7ea97af0b88a8875190b453664ffb64fc4fac3c1108a3c222f23b12b7613941b137449471ba4847eaa4a16beb50960fff5dfbb2e756938b38a93509bce5f900a59e69fb0305a19e460ffae88d74a727c82fc7138b88db07edb172b39566dd22f0e852f715af9d3c3f0089e9eba72ff6063357de9a744f20e1da367f27c6ab6fc9d231a606a79a621f8150773d1dfd52868820ee5bc28d286ed746beaf8f13213548df0a56bb0e01e5bf6bdd1c901ea8c791e7916e5679c88d4d85cb1acca63c211e7218fe6eb2abfd2badbb31147177f123fd111bac4880f1224ed01f3259e4eb91deb7562cb9c3009b3676998afab8d5d24bfe7d27be7f3a57a932c895b60a9fa74504472808479f332fd9915b8ed0c11604e80457c0de5f7015c19a607aafde448fc08bb185517e6ad7dd330a465f9043a0478e1cb4be9185187604f30a1680c67d3a0db1baccc05d401aaa8fc66d9189089eb7ddbaba05faa8dd83fa544fde68a793a36d854752f22fa13333c6152f7f18ed789848a13327071d85d5e36c4fc291cf5b4b9391f8e2513d4b660b1290790ab50d12b73fca21a93f8998d5706c037c387d662fc20be35228d85e5bd007a7173bd06e5cbb7e41063ae4843bf3f5a77c44e1a36fd2e1c31 5fce8109a358570e40983e1184e541833bb9091e280f258cfb144387b05d190e431cb19baa67273ba0c58abe91308e1844dcd0b3678baa42f335f2fa05267a0240b3c718a5942b3b3e3bfa98a55c25a1466e8d7a603722cb2bbf03afa54cd769a99f310735ee5a05dae2c22d397bd95635f58c48a67f90e1b73aafcd3f82117f0166657838691005b18da6f341d6e90fc1cdb352b30fae45d348294e501b63252de14740f2b85ae5299ddec3172de8b6d0ba219a20a23bb5e10ff434d39db3f583305e9f5c039d98569e377b75a70ab837d1df269b8a4b566f40bb91b577455fd3c356c914fa06b9a7ce24c7317a172d,9bcbaf72085f4ee5b2b237f520977c7cfe8780bd62b0aba13c161d0e7eb036ab27e9b08407bd501b2482c280997eae9c4b571ed6e39a13d74d7a1e2258cbf3583b28e738fb14ab2b60e6f1e188953d96a9361d282b85ddc243fe6c7cc644ba203b328fbc4e0088e40283b6a62122065a11a164dd1ea05f421b4ed60f44ec982636f0253ae4e6ea320eda2351dfde0285d1ed860a51699e702a0519b0c3119462bc9cb3decd66647823ee139dbfe3ee125a6f74aedf5044238389e0b0388698fd8d7d882d010c194f4478d6da8fc195529a475932e4fb178cf318ad8f24427bbb90c0b08adab27be5a48c9804acd9e56e1cb2bfeb236388917458408c446c6b5f1d3bd55ac0f6f1ad06ab419460f525b564dc67bc6bb2cfd08cdb510161f71a29aec95c67323259c214cc39401e483e982ee6576a7f1068b088348916a5c47d1378236ddf475733f394e14216d2ac112457295100eb70381e632876e700d355973944ed80ab91ac39f2d9df4e338c02082505c028eddf867e60aceffba59480e6953baea105652bac6d29def70962b6bb93e3d9424a77d31d3020fbb3be37e7905a6360c1b624327fd68ed02639a2b54fbafdd9804fcfd60aec2b044c921a77b25b7032cf685475f503d00d9a8db733cb6115c1bad1c847c1bbbd342e62470d6df7c21119a35179ad3c7f68cd246b8f3f51e2635dac460db83fcc5c0dd049a2b7 6172f1971a6e1e4e6170afbad95d5fec99bf69b24b674bc17dd78011615e502de6f56b86b1a71d3f4348087218ac7b7d09302993be272e4a591968aef18a1262d665610d1070ee91cc8da36e1f841a69a7a682c580e836941d21d909a3afc1f0b963e1ca5ab193e124a1a53df1c587470e5881fb54dae1b0d840f0c8f9d1b04c645ba1041c7d8dbf22030a623aa15638b3d99a2c400ff76f3252079af88d2b37f35ee66c1ad7801a28d3d388ac450b97d5f0f79e4541755356b3b1a5696b023f39ab7ab5f28df4202936bc97393b93bc915cb159ea1bd7a0a414cb4b7a1ac3af68f50d79f0c9c7314e750f7d02faa58bfa,8536a6c25934a44ff97c0a09e026eb12b9c81cc8357859ba736b29bb329b182b5da8ffd7b855200cb9d64fe463317c213997ebdf1810bf37e00d56f75791375c5fa84dcfa37ec196bb2dd3c66c1d33034ac48bc7feaf15f9702d7d11e4712ac87934e2064283d04b56bddbfb3b56c3cde69b7d736196b9dc5623a3132be33af12a386a3004eef98d4487b614547ba59edabb0b83b6ca39a5955f925f35a5209c0cd567369751312a6a63d0f4821d442c14cc26fc147e63a4656745663cd96b01064f60faa4ba98258b09c09833046412221a59e23d5266fad8c068cc949d172862ec30ebddea21e1cfdd6b5fe4af566a19d0d41fc9328ea915d8b97cb1d903bc40a4083f6997439055b44a695450039cc00931cf3bc9fc67bc417a8aa270b2b4a410bce4a2131523749a957d293c1438a993432941a9ff4210b33a5cf8b4434553b17cfe869b940669ca9f18b128ba354855f08a692fc6d23bf0fa12d9f4df0a571e44d4221e8018c4282559e6ff2eb02ccac7a7b83e34aca7d554c33f05cbaeec49d0516b10de06bcdedc09d0c4a9810b0797b62cffa75fc0d3bdd796327bb1fa5dcb546630e9bb0457d024e982d6d7930391066c58286beac627d6eca09b4f6dfccc71ce589b1da1e890ae0c5a0cf531d9c1d2330bc8397f09f248f9919995326fb92147959c3e6c569ed662f6968f4e9ef42b6c2fb954d79da22117373e27 5668ecd99dfbe215c4118398ac9c9eaf1a1433fab4ccdd3968064752b625ea944731f75d48a27d047d67547f14dd0ffaa55fa5e29f7af0d161d85eafc4f2029b717c918eab9d304543290bdba7158b68020c0ba4e079bc95b5bc0fc044a992b94b4ccd3bd66d0eabb5dbbab904d62e00752c4e3b0091d773bcf4c14b4377da3efff824b1cb2fa01b32d1e46c909e626ed2dae920f4c7dbeb635bc754facbd8d49beba3f23c1c41ccbfcd0ee0c114e69737f5597c0bf1d859f0c767e18002ae8e39c26261ffde2920d3d0baf0e906138696cfe5b7e32b600f45df3aaa39932f3a7df95b60fa8712a2271fcaf3911ce7b511b1,7201fc2af67d095a5e317269e750f965b8bec311edad18da2435d2872c0056617f0fccc80552010f996e5b34084b09f31f35870486a8c53d220d7d009ffc2c58f26ac41bae05eb486ed4a18e74fd1c31cea640e8d47d88c5d506c5719a3eaa4716ad4fb906a5085afd46570f2b048264d4bd3554f5ab0a8271d6529b9e2f1634b5c78abab6bbacf4f01a4e33377f9e1fb12fc20435de0afd62f90e2ca73bd5260285bf5cb9b4302a312bbe48c3b68a4da6e842b7d87b3be0ba82c9b7953cb63b7e7e86296b88557bee2ec9576a468d556b77f872bf728fe3051e4932988029d88320088b70c8b19b59fc03f2f32bf34f42746a6e9672c21ea85087a46d5bae484f460af64f8f62bc615e79adf67efa9941deb5b358a5833cce4a92da0f237a506d530d64435689e1db79f7afda051cfc065397c9393b3a87d6de9c08522bebaef1b33d2eaa746a5ae7fad267f168ece1db4bdf453a100fa3743d9dca3bd0c00dd7033ae1eb573bb79c6cf53bb38130af279c0a0f8198c5145a5dfa32b322716ef6115bb5466ce54eef73e68c4c2b1d0c321a03b6c7bd1be98dfcb50c08df2005dad35c430004de8e6c531368b5f37e53df3d376caaf854298657573be7038052c2169bc907341ceb02925385a9fc03400f53cccd6d3bc039bc49f7e5cadbb68fd5e1589cf1b97c9c6360a4dde6474ff39b96cc2f4c698300db2ad5668bc19f45 03d625488354df30e3f875a68edfcf340e8366a8e1ab67f9d5c5486a96829dfac0578289082b2a62117e1cf418b43b90e0adc881fc6ae8105c888e9ecd21aea1c9ae1a4038dfd17378fed71d02ae492087d7cdcd98f746855227967cb1ab4714261ee3bead3f4db118329d3ebef4bc48a875c19ba763966da0ebea800e01b2f50b00e9dd4caca6dcb314d00184ef71ea2391d760c950710db4a70f9212ffc54861f9dc752ce18867b8ad0c48df8466ef7231e7ac567f0eb55099e622ebb86cb237520190a61c66ad34f1f4e289cb3282ae3eaac6152ed24d2c92bae5a7658252a53c49b7b02dfe54fdb2e90074b6cf310ac661,c7b0ea1011bbe2d11df8353d06a6ad5176dac3e33039c621a635e1124edf2425ad88ba552d6b6034ae3a5fbdc735e4381064925bfd6cb5e3e753d27c7a77f4bfd3d33652461f5409ca29c060ac991f3ca90a29b9f67502a524795f1306430fe7961430b431e9cb7c21eabe1ec3d1d6440eea64496f30a3a44172b2c5670da2f4dea42f783f5138c966a642488231dca509c144b59e0f4a40c191c035e4a464abb6f4b9e0f9acd86b7bda0485238a56b2934c7aacb484287ee013c46e48fb648e73add7e8eca6b2a8fc34ea0ceb46b0c360a6004b34403ae5fd345a78b55634b242cbe07a6fb13fab721ef976b3e1f82ff4db06f86dca50348398f1dc831c70618fb387f0b13d84bc8a606e72d6b85991a4d7151e2d9b4b5e07d303e2d639d2a243e316b6c328eb01f52c524fa7d76763ede5f0fec6824d73efe546547798d9c78b22765e69ee0f72b538c816b230481214099acf758193aae0688cb5a9e11b323704ab7724e5f1c4355c11eeb595312a25277794b996c6bc19c77f0a048cd31fc8ab70c7b6b6b0dfef5f632879dccfcf462908f04afc8b440e9c4fbeb428b70a56511eb7b16053be225b72cee491366742a77152a9bb0fac5d261c01abea1b632289f26fcd628598c1f9b6ab1a5c36f926a2b96baf71644c0723a6a773dd14c66a770f11bd82ea85c6608c821139601f9b98232bfc21c7a3b54e0f7a2a6e4ce5 2edc282ffb90b97118dd03aaa03b145f363905e3cbd2d50ecd692b37bf000185c651d3e9726c690d3773ec1e48510e42b17742b0b0377e7de6b8f55e00a8a4db4740cee6db0830529dd19617501dc1e9359aa3bcf147e0a76b3ab70c4984c13e339e6806bb35e683af8527093670859f3d8a0fc7d493bcba6bb12b5f65e71e705ca5d6c948d66ed3d730b26db395b3447737c26fad089aa0ad0e306cb28bf0acf106f89af3745f0ec72d534968cca543cd2ca50c94b1456743254e358c1317c07a07bf2b0eca438a709367fafc89a57239028fc5fecfd53b8ef958ef10ee0608b7f5cb9923ad97058ec067700cc746c127a61ee3,fd6abc78d5ff667aee2029f1683e1ec57e82e69e6f3963e38486590650a18eb3a6b611d5ecdd6f8e556d2f8bed3726dc51b2086275923e2bac576625fca0a10ce1cab318ae80806929ec5ef10f3262f460db6d39d6db17fe364792ac2cf5b067f260366fda234ee09761858a3c5edfa7d8c8bb7e968bf78922cad2a276096e06164d15782b74e75abcb32d1d87cc5ba1b188ae777b5fa570dafc393c7fa0ca76623543ba75ff214a0f01ae3455a9c454bb6773721df3376bf92b4c6db9fd4edcd802e30cdd698a865c29912517e0d195b1d05c391be04710121c764df515fd0ecdef0d91603bc2a3b9f905b5d7c25133657fb6798aba7119ffbbb836028764298ec082fd36cbd7d32a81c549b32e6e82c8c897318eeed0c3720ae2b620a40abc87c28613aa2322edd83414b8a532d48fa5769e4e8a46e159d5bf9926c6647836527bf5ab23846ea38f321ee7303a1dafaf61c97d6059b10314f09f3d5dff337802edf70f27e0224d1b110453902d3f4d5a074f2fa532856eae37307507c2e9be3952ebccde1599a3a9b331fe760d29720afd9134b6f5c33cdfa60e9b700e0ff15e13d197830bd93e785482bba5dcecbe0977433ad8625280f0dac5c6a4963f23844c7ee7ac6c88d098b8189b274d49194727118d6e73898584ba8feac1947e0b0acb81dc7b580f06f52a5743f8e7e8066f6c76b5013da694072434508c2802e0 90b28a6aa1fe533915bcb8e81ed6cacdc10962b7ff82474f845eeb86977600cf70b07ba8e3796141ee340e3fce842a38a50afbe90301a3bdcc591f2e7d9de53e495525560b908c892439990a2ca2679c5539ffdf636777ad9c1cdef809cda9e8dcdb451abb9e9c17efa4379abd24b182bd981cafc792640a183b61694301d04c5b3eaad694a6bd4cc06ef5da8fa23b4fa2a64559c5a68397930079d250c51bcf00e2b16a6c49171433b0aadfd80231276560b80458dd77089b7a1bbcc9e7e4b9f881eacd6c92c4318348a13f4914eb27115a1cfc5d16d7fd94954c3532efaca2cab025103b2d02c6fd71da3a77f417d7932685888a,aeda7e54b44c4ec1dc28a305ab30cdc9fbb1bd923f41da60558acc8c3fb34d85ef153decd3090860e383151ebd008044b20b20b0c6216d16ea221addf00b99dfa692ce79e69ac853fd70c6d077860c54ff77ac55962cf0d06888ce0a95dec7ce760e8e0364ae935cc8ce962bafb617dbe45a4669f0f5c6a7767fb0c9bdc853c84cdef5f722da5c31d15181725158f946c8d810af7296ec91f3ec782d38b00563e454ac9299b8da2c4d2fe89c0c2c6e094a14dc3cde4b4b5a868cbe8c6032812ccf17a1e511e7e59c0239e6696c2ce093cbf79f641cf1b59d97b88a16359dae8366e23e13c7b8f9cccc099f9b6cc0a228223fbdd5242139f3be2c19c06a15563e404428052e32ed5f6ebc61afe642340625c29174ed962d6ea5d8d6b06daa63cdbe674ca6abf8aacdf727bcf6279d4ab7b2511d782c21db7ba2543c2273970cc18c136d74d6583782fd44422a2dd01bab97af2a420f8f1de60ac0f4727b91972289943b5dcb3d22030d93a6ed0863e1920dc8a6688dfcfabfc3ecee59afc7b349f5b6b061e599145e2242c05d63566906a40b98f8d280f31d25880d0db0a90af20108715ec9fee5ffe151bba41e594254b7eaf61c5b444094b307511a1799d2e983500fe9643ddc2652b7b77fa27db41b50f788224be4b4f7ded43b56a3bd7eb52620689b4d22859ed3e0771431168d12404b5c56347faffb9e133fc5730ee76a 2969447d175490f2aa9bb055014dbef2e6854c95f8d60950bfe8c0be8de254c26b2d31b9e4de9c68c9adf49e4ee9b1c2850967f29f5d08738483b417bb96b2a56f0c8aca632b552059c59aac3f61f7b45c966b75f1d9931ff4e596406378cee91aaa726a3a84c33f37e9cdbe626b5745a0b06064a8a8d56e53aaf102d23dd9df0a3fdf7a638509a6761a33fa42fa8ddbd8e16159c93008b53765019c3f0e9f10b144ce2ac57f5d7297f9c9949e4ff68b70d339f87501ce8550b772f32c6da8ad2ce2100a895d8b08fa1eead7c376b407709703c510b50f87e73e43f8e7348f87c3832a547ef2bbe5799abedcf5e1f372ea809233f006,9fef3f4fefef93b5124dc0c0d3fcd29fc5d6f680f511c682bd41e397eea9147441e698e4b420cf2a165b15aa36895be8ae914ed53fc9950f16d540ff5054c0d731789d126091a75fc5c7de3c28478e86e05c7a604ce904da8f7ef031dc9d957401b155d110745f3145c34754a45b7fef94d0253de536bfa0ed5e655243e689ff909ded44948a339cd55b897d015bf49e890192d051a13c26bfd5e8e71ae287a6e2c18017fc997bbc41a7d39a18de8b30f5f313d449c5095314e740501e2101807eaf33f596d0ad639c83bf7037e27c1d8597b4bc9f335433137ef4081e381b831f17ab09bc704bf1c581f4edaf9502290a92501cd7a0e5f0aa10674bfc9b2c9c2c812f4c3725d6e7975a1f181ba63349d18efb824dbc4d7d6267e7c4855afb5f4da4b26bf74785ac1e97d3e78de97179739481a47686545a7b81f9d6bca18cc3008be300c34134edcb9c87870d8bb4da18cad8c29ca349392fd82e0bbca5a06a043826194a52ad80e1c3bafa28751338bdac266d8245e055546611cbf929cc8ce6da35667a66ab87ec22cf3b54d8ec1d7cdec5c75e0ec3b53ed0c030ae30913c12aaaa71567c731ac8c9ca1279c7a8facca20554a506661630f2b6b9792dbf5c8fd545c283dfc65e9d758b4b86079f569af818138304e617d74081d80ccff0179542f6fff41151b85f84b2dd18fcd8c2b7790b645552c94c0348315bd91e1bea 721645633a44a2c78b19024eaecf58575ab23c27190833c26875dc0f0d50b46aea9c343d82ea7d5b3e50ec700545c615daeaea64726a0f05607576dcd396d812b03fb6551c641087856d050b10e6a4d5577b82a98afb89cee8594c9dc19e79feff0382fcfd127f1b803a4b9946f4ac9a4378e1e6e041b1389a53e3450cd32d9d2941b0cbabdb50da8ea2513145164c3ab6bcbd251c448d2d4b087ac57a59c2285d564f16da4ed5e607ed979592146ffb0ef3f3db308fb342df5eb5924a48256fc763141a278814c82d6d6348577545870ae3a83c7230ac02a1540fe1798f7ef09e335a865a2ae0949b21e4f748fb8a51f44750e213a8fb,e62cfe44b169a061faedfe6ce667056bc0255d1f22a56d3df255ffbb145433fbac3dbc0b998a40001b805927bdc1ea47762980586ca088d64babc0acbd488c5f08b8c220fd5a15ec679448532bb992360c8b166bd8efb59f2b5e091f06cb1df8d79ff9b69c4a49a9ececfd6403d6f984a987c0fce8e6ed4c0e9caede1c522e4f71495f8599f2864c42809c931771a32fca62b0cceb02e5d7ffa15754e6afa27e568d84fb041cd35140a48f4b23204cab939b5c48217711a5426f194ccbf07491c0dc2f885156b40c9f782f4a17bb7108e465d9ae1f52b494c74611a1d9d379ea8835e0f98ac6880c339d70b65436a07f056e9c118a89aa41a0e4463482b5b037e96736d265caecf4764e6f206ab47eb83689e3380db572bf815f7e2acc67bba3f4d074df16d3b95aed1c4718ea77d1e38608400ea88c6f5ffa084eaee206eec8d2560a601587ddc5804d86912e4b844d87f2cbf10634cc32f492bbfc32b4e746ee3fe9e9c9b03da7de441a53c0e3b648366a4a997a28df2a10628406c530175191f230a97e2248226ecf6293d39809b0dc0493ceec48337468831a5eef0038affc160732c097cf96bbb90f5a302406ffe8c0f1fbd7554c1c0679d2af199e565d96ac5697f2ff748cf0bdd87a0da1a9de71020da59bf69adc9e7fb7d6b8a38113c3370a120815ddaac8ce49ed4738c3a2805100de7c6b2279aaac367a930cadcc 6b860d39725a14b498bb714574b4d37ca787404768f64c648b1751b353ac92bac2c3a28ea909fdf0423336401a02e63ec24325300d823b6864bb701f9d7c7a1f8ec9d0ae3584aa6dd62ea1997cd831b4babd9a4da50932d4efda745c61e4130890e156aee6113716daf95764222a91187db2effea49d5d0596102d619bd26a616bbfda8335505fbb0d90b4c180d1a2335b91538e1668f9f9642790b4e55f9cab0fe2bdd2935d001ee6419abab5457880d0dbff20ed8758f4c20fe759efb33141cf0e892587fe8187e5fbc57786b7e8b089612c936dfc03d27efbbe7c8673f1606bd51d5ff386f4a7ab68edf59f385eb1291f117bfe717399,e55556489cff55ae9df1ab48f860e81c3eb95d979929bed9c747fd1467d201fcf041d0b3d72ef227c82c93e6346cb02a5c78afcf0b9cb6af551e9645c09244ea67e02e17bf1941f3910b069c04dcd5ff7b4b9c69bb973efa516b4aff0f8947da042e21bf838a94bc8d98e6a30fa830fb9774d14ced360125da945f44528b99df2095c5186776d434a4ab2202a8cd5443ff2636f6111228bf1f5c5bdfbcf6278598733776bb589230d74314083b983cbbc476e4c9f0996a01dde09c8341da4c2382923fbf32a1ab8e37e9a18da38f54154c44fab88ad8857ec5ff82cbe1c9d24d6aa676978fe7f18f1c2503af6981551710690db902f46aa5ab3856ebba8ebc644c7339d6e28eeb2aeb6d5f168e0447cbea439ecc89743bfdfa88f963a6b57f28157f55cf46b57c2396a357a8e44ec964ca32c51fa5dc17c1e0f6f80fa2c8d26e04f03c32cd763f6ccf0f16f915d72f6e9159174b69535d2229c8a543e992ab0e86bb51da378eb378a0f28ed49a8f57f224e03c9c1248f0133d70af45ac7f0d27c5804cc99e982a2a583ae566262f3cfbdb91bb0c2f2561651a812cbe22f1380929f85a94fa721afe6ba1ee27430f2cfe89966a9919ab21036e81962afda1026b3b4a95fdf0ba51940053f01eefcac57cd11c4c60d66de753f41a178cc56a938a72a0791874eab6dad49af265cfc6a03016f0a1a490ececd045b9f7509f1193f9 6a01830af3889a25183244decb508bd01253d5b508ab490d3124afbf42626b2e70894e9b562b288d0a2450cfacf14a0ddae5c04716e5a0082c33981f6037d23d5e045ee1ef2283fb8b6378a914c5d9441627a722c282ff452e25a7ea608d69cee4393a0725d17963d0342684f255496d8a18c2961145315130549311fc07f0312fb78e6077334f87eaa873bee8aa95698996eb21375eb2b4ef53c14401207deb4568398e5dd9a7cf97e8c9663e23334b46912f8344c19efcf8c2ba6f04325f1a27e062b62a58d0766fc6db4d2c6a1928604b0175d872d16b7908ebc041761187cc785526c2a3873feac3a642bb39f5351550af9770c328af7b,5c3cd7aefddd08e09f343a8226155bc3ba959998299aed4ce4e85c6758833685a58e5cb8002fa4788ecb673e810c98bdf71a18f7a2ddfc351056d0639bc600fa42bd03b1315cc4c9640a8d61d481bc7f9077c9efdea6fc3993993cec88481fcba0e4c519cfbb57b465fd1e3d33557d8da77321cb21e584e677f3a66d38c9e49d9a9545d6b84afa37547f1ceb22c2ed9d8d97693a69eaa2d15f376e6de77b0ee6c7dc28fb1c1bcb42bf8751400ea2470b87f19830a6ea33da0912dc894892c6c242e90d24238439c6794243a5a6512e3486680f4f9166150502a1bc049f48ec80d2694ff8334515eb4a97d483e7e401bf6e446035fddb8b600ca7478b8c40aec176b79cc671e90caae5d1ec05e51d5e7ef9d8b4ff3b3b319d80c093a83a3d21f22eb4dd3b88fab1345b29ab527f8d69cabe8fece7e26d40a63b3fa08340501a40d433d77dd212ffb48265901d9a05e17e8f24786c7c23e50cfa11d5ad497d98579b02b642d48fd74ca608dc32e76c3961e07064168b898fda5b4fec10554f32426dd818b7e207f3facad3525577b5fbc19f1cfd39fe6453b274362c456b8fdb3aa26306e306ef1bff87056ae99fd0cc9bbe36ec508532e8239b3c33b1705d6da65813621e8d319460cb6bbe94c9cc0a5ab5c9cf538775d42068d9665239e1fad0ee8fca7ea4829c8be493ac2de44b340028db1f27f9e4470d3ee6ab48b416ce36 b3c5e74b69933c2533106c563b4ca20238f2b6e675e8681e34a389894785bdade59652d4a73d80a5c85bd454fd1e9ffdad1c3815f5038e9ef432aac5c3c4fe840cc370cf86580a6011778bbedaf511a51b56d1a2eb68394aa299e26da9ada6a2f39b9faff7fba457689b9c1a577b2a1e505fdf75c7a0a64b1df81b3a356001bf0df4e02a1fc59f651c9d585ec6224bb279c6beba2966e8882d68376081b987468e7aed1ef90ebd090ae825795cdca1b4f09a979c8dfc21a48d8a53cdbb26c4db547fc06efe2f9850edd2685a4661cb4911f165d4b63ef25b87d0a96d3dff6ab0758999aad214d07bd4f133a6734fde445fe474711b69a98f7e2b,83d754c973e2f1cea0a8eef4cb2340f2bf78cb88cb3aa458e7c915b5c8412cee403cb18e062d2d896d5bffe7dd1c3ca2e5e37e193554a176beb2c636abb687e867af6b9eb5fba57f371c167cf210956c5855f27fbe890708a28321bbf2d1d44dc7a911906cc4054d6310cddc4573ebfc9f7227031ee0eaed3a810aa18367d2f6f56b478881f628897e2678fac39f76a745460da7913374c9af81415592891035f93286bff02dc737eb087db8fe7e77a188c206caec84832a120547d967107a49af42d422ee7364db5b6592185c07dc7fbc2d0abc2a02c3cce0070c23f2daff0c8fc61563cb7ce0e930b75c706ab8180bcecd4e2c47859217b42719ef341765ff7c59c239c1752a3ca73e04da7918b61a4d98df5481f3b2a23a4797d66786ccf940ed96d6817d6172f748262448a69844e59ce9673cd9aa3f5aee057608d4df64042d78a03920fa23de7bc65881465b31c4204f68d69cddcfaeb9a5a6f4aeac6572df206802403d169eb5b2b69cfe3fdfcde19b198385605c864b5f02bdcabbf646c5945899f52830c3cda909443c96df6dc1417677bd80675621755d47d076df56daeda124a3d6b1c7b6e050f6d3024c5627a62c57c94438a8a3c14c5f572210893baff4b7e4e84c99c6ca09eb3629087f1c700513f2447525ee23622099e8d8b5d2ca8918cc5775feb5f34fe5141ccc93ec172168638a736ceb0541a1b18369 83af34279ccb5430febec07a81950d30f4b66f484826afee7456f0071a51e1bbc55570b5cc7ec6f9309c17bf5befdd7c6ba6e968cf218a2b34bd5cf927ab846e38a40bbd81759e9e33381016a755f699df35d660007b5eadf292feefb735207ebf70b5bd17834f7bfa0e16cb219ad4af524ab1ea37334aa66435e5d397fc0a065c411ebbce32c240b90476d307ce802ec82c1c49bc1bec48c0675ec2a6c6f3ed3e5b741d13437095707c565e10d8a20b8c20468ff9514fcf31b4249cd82dcee58c0a2af538b291a87e3390d737191a07484a5d3f3fb8c8f15ce056e5e5f8febe5e1fb59d6740980aa06ca8a0c20f5712b4cde5d032e92ab89f0ae1,c6d3296ecce00f96e8e0224fc094279afdc51f4d65790b7de6612a536d16dca57edf5af53b7dcff98910f8c41af597692c5b9590b7ebd712076a74ba9923c364e042286f754143b2f1e00c47d4d01ed6a08fc3b62918d4c7fc8a5afeadf7b83a02acbfdad3032d72c60e5ff342ae9376c60cac094780d9f0a6fcfe63496a1fc660a33e1111ff441bdb600b37a33256a35e86cb245ce8dd2951e6b4c7c96c8561207d402d143902f085191084ee39e8fb472965f51c6e556cf4eae55c540adcedeb9e77699c161a88dd07093251dbf403e7a26ea6ff93b2e5c61e5c0538cc29d69de806d995c9bb59b52915a61b9daaa3b21fc325ae7e1d5923d7e2cdb4f71e9c1e9deb331916f09b22a34ca70fd20410eedb22118d606870188bbb9800445b136ffef3d7539b7104eed36e3e663b5167a5649b0fd2013424153b92bf520845972c146f8e15670be40cf2ef1e73e23e404f1753833abeb111327e862904c7ca969f5820b41c6484afce6374c72620c1b0df72c043c1bef6b33eb17a64b0fbe48d68e60f90cfa669214f96709777b9a278b65f197956345395008272e6cc3ddf43df36b39e491897323cea03b88d2fb8fb9f9f1219e951f4cd652aa28c1cd03a369d85c7ecee4c3016c89885373acabc20e40dea4bcfa7b499941d8bd06738a71f3b40ed89ffe85c7c84ecf5f644cf1f3a434d2b12ea3339303353890b3c4c5534 a7ed84749ccc56bb1dfba57119d279d412b8a986886d810f067af349e8749e9ea746a60b03742636c464fc1ee233acc52c1983914692b64309edfdf29f1ab912ec3e8da074d3f1d231511f5756f0b6eead3e89a6a88fe330a10face267bffbfc3e3090c7fd9a850561f363ad75ea881e7244f80ff55802d5ef7a1a4e7b89fcfa80f16df54d1b056ee637e6964b9e0ffd15b6196bdd7db270c56b47251485348e49813b4eb9ed122a01b3ea45ad5e1a929df61d5c0f3e77e1fdc356b63883a60e9cbb9fc3e00c2f32dbd469659883f690c6772e335f617bc33f161d6f6984252ee12e62b6000ac5231e0c9bc65be223d8dfd94c5004a101af9fd6c0fb,e7b210d8ac4395b2de4a9066a345b1592a5c0649d47ec8392816a65c03b5717ffed2427f513ec34d3db5ad59af61e0ec5df9664a1f24e50a31c6c146799745465e3a130c84b52edc04140aad1a8afdbc22d816339d5ad126c616b55302cea748e744c6f2f538e2285538697ed1b2e169d9b335b6194b59775cb19b14e2a5bb0754705e1342e25ee1824c75479d317ce844d477599cc6a637604dfdeaaa02a3cd2c1b707661dbd2b1fdd77d2187c1e2295d92d98d4e5ad4208db1771713bbaf33e63f16163f63ec956c7db48d265e53058363a923bd51bc3602b184eaf2b8855dfb15ab9015d5fa72999cecfdde888f95252885988052c9f1666d4e90f82c1ba1c27e4b0ff07f99bc4a54b9fde4be5c3882c395f69ae3754576f65ca8cb03eb2890447ccfb37a475748742ac932b615537b7ffdbd9e73feb1bd29a8039b1321f8b7f6bd80bce4522174ddbc4d6e95f18da7ea0d4dae4d14afde65f8ba726662563c225de20a218927e2ceef7573af8313db530d5feb42bb2fb7b4dd616d25dbcc6f443a9bc91ba616b858ad827b049a65916cfd0a823a2726243d8393e248a8e1a66a057350107d01b65f4bfa03e6f22a4c26645b7c2cc63767e89f2a8860632226cd6fa6a68db79949affd3ef91758168a295a5342e10c402f2b2076adc203ba107a177d6fa79f12de20d084cb463bf0c74b9d3ff6ed9455301a850008499cee a6fe30dcfcda1a329e82ab50e32b5f50eb25c873c5d2305860a835aecee6264aa36a47429922c4b8b3afd00da16035830edb897831c4e7b00f2c23fc0b15fdc30d85fb70c30c431c638e1a25b51caf1d7e8b050b7f89bfb30f59f0f20fecff3d639abc4255b3868fc45dd81e47eb12ab40f2aac735df5d1dc1ad997cefc4d836b854cee9ac02900036f3867fe0d84afff37bde3308c2206c62c4743375094108877c73b87b2546fe05ea137bedfc06a2796274099a0d554da8f7d7223a48cbf31b7decaa1ebc8b145763e3673168c1b1b715c1cd99ecd3ddb238b06049885ecad9347c2436dff32c771f34a38587a44a82c5d3d137a03caa27e66c8ff6,8dd1f85c100c7f05b59a9a0a78581b5541ece6a40672d9af23e9f80a9d3fc96346e1b0f3dc309bb110e3f9f465e08371d93616258fc5cf5f3264b6f20cd795facecabad03bf361324e242f098fe715e14d0d207b5122b01e47238e8ad8cd9c2e874e816c970f8caba5c148b9d2638adc5d13384dd5867679b5821a37b77b5c8ae773f982d07f037e319b0c2a88b8716d8642edb7c51afdb44297aa2ad22ed1deffebbb8a89a601b3c8ed2bc1894ad8ee27d85e4b88547d64394709532582eb95a682aceb7c205f4a3cc9693e443d7cbb1e1def42905622ac0e12d0543be1786c13a913d45c63cd7f06e058440b34dd44007cd2b7ba489d89358276a3d597e19a0b973f558b4bee867712543c1bdc817495d3222d4472b00784d7cfd83bbcbce7e2fcd0f9c1ec0fd003b3d8ec74233a3bf7e95430189eaab5ce341739c8f198052a783b9ec0331cdc1e2bd8b25fbe9b471a768cc6b8f2c90298196bc65861678c7632b7914d365de4bb2cf9dbc4a0a06034711086a0d09a9c139132556efd7ceda2933eb9b86ad5ba22196df404684993a8e7fecfe6e582e5a3a4717753e5f3bef462dd8820bf3857881d54af1d0f2ace27ab1c208c3d5087db201f155164c398f2ade81ce38ce0d741920364c57580522fe1f0299a6263c3f4a78e03300372d379a4a9a550ffaeeda27b30b329435a8b2e3c127568b48b1a75462f576dafddf6 83167ff53704c3aa19e9fb3303539759c46dd4091a52ddae9ad86408b69335989e61414bc20ab4d01220e35241eff5c9522b079fba597674c8d716fe441e566110b6211531ceccf8fd06bc8e511d00785e57788ed9a1c5c73524f01830d2e1148c92d0edc97113e3b7b5cd3049627abdb8b39dd4d6890e0ee91993f92b03354a88f52251c546e64434d9c3d74544f23fb93e5a2d2f1fb15545b4e1367c97335b0291944c8b730ad3d4789273fa44fb98d78a36c3c3764abeeac7c569c1e43a352e5b770c3504f87090dee075a1c4c85c0c39cf421bdcc615f9eff6cb4fe6468004aece5f30e1ecc6db22ad9939bb2b0ccc96521dfbf4ae008b5b46bc006e,16322d3005bef6a6cd077c13f13a0dba11cac621605d78e2ca3ebb07386c0acc23d0b21573123e1bd43accc1f12dbcc34874b5c18b6d037b339e958972902ba3174a9831eaab3543b901b6cf4ef5cbd1ce1b60ac90e94f6e15c7dad13ac4b8affab3141326ae057852dab28fb1564a7375204805747a45c0e96e2e046611ffb1bddb6e6ef5c0bd75e4d654701bcd7f903daa5b2d32e017c5a81a907fa908c8523d821a9947e647767f04fe6a8d0a9297f65610b1ecb332d3dd37ec4501400c3c1e0035a48652de4f0bc038c90c5b4fc2d969b1951de5400184e6c761c7129711ecf3f4146c2b8d662c96a30491771dad21e0d9667f7312147d53b1377999f0274d239ada0e2e2843676ecec0d528c89a5e6c4ea111accfdea9d10bd3f79326283a609f1e2c9fdd4120367dc5403d53a6d0b0dfc3a3726096ec7f6ce189a29f23053f79e179f275e32db13567e108a63c7033286c4f6636afa91c37e32a5b2bf01995133fad11a96ba922ce4bf5192a0536f4f238f9cf0aead2265ae73ff3923682644cb414b8e92e9c5eb8d46e39e46a5a394d75ba2d01a18b2309dec99931fd9c29dd61073b23a19edcbacca8d9227e8fe23d313947ab6d9c807c8c3bc8e189158a1815410a94cac21d931560bae3afe409d4904c32d4aa5c7ff6463ec8c432f97effd812ddbbde53ea65956c9c2af72adb2c7b5bc1efcfc8ef4ff8a152aeb8 3a3a819c48efde2ad914fbf00e18ab6bc4f14513ab27d0c178a188b61431e7f5623cb66b23346775d386b50e982c493adbbfc54b9a3cd383382336a1a0b2150a15358f336d03ae18f666c7573d55c4fd181c29e6ccfde63ea35f0adf5885cfc0a3d84a2b2e4dd24496db789e663170cef74798aa1bbcd4574ea0bba40489d764b2f83aadc66b148b4a0cd95246c127d5871c4f11418690a5ddf01246a0c80a43c70088b6183639dcfda4125bd113a8f49ee23ed306faac576c3fb0c1e256671d817fc2534a52f5b439f72e424de376f4c565cca82307dd9ef76da5b7c4eb7e085172e328807c02d011ffbf33785378d79dc266f6a5be6bb0e4a92eceebaeb1,14236e75b9784df4f57935f945356cbe383fe513ed30286f91060759bcb0ef4baac858ecae7c6e7edd498f01a082b63fa57d22540231e2e25c83efb3b3f2953a5f674502ab635226446b84937643dcd5789ee73f1d734bc8fe5f7f0883ab10961b9a31ff60dee16159bc6982efb08545984bf71fed1c4cd81c0914b4c19fcfeef54af4bbe372f18cfcd3a18657f5b9450f99a78f0fa2c3cdca7461c4ed7569536883b66cd87e9c200962902eaa16a54db6a0a5cc26d889038c0760810b5bb4f33f1e5d639b6f9bc7ca62ba6f8c9f8de770260afe47f4e0f82f102198eba27f543252ac8ddd83e1b8db0a91ac65633fd12a550ebe96f93aa6704ed5905c234fa6d9203910cbd02de166c4c3348fb81ef7b84ae1455fe318b5fd170883f49ba2f24289c479a2c7531406ba989beaef3a79f659028642e9b033f7deb9ecec3a7a9f1dbd2451fcb47c81e21e91d20b924c6bd04c1f0b2710d2e570cd24bad5b5de4e49aa80b6add5507b4d2e510370c7afa814d7e1a7e278e53d7ccf49a0a866ca3a7b5bb71ef3425e460feeb29149f217066613695f85506a0946cf68979f04ae073af8028976bf0c5bdc2212e8c364583de9fbd03b34ddee5ec4cfa8ed8ce592971d0108faf76c8940e25e6c5f865584c34a233c14f00532673fdbe388cc7e98a5b867b1c591307a9015112b567ff6b4f318114111fc95e5bd7c9c60b74c1f8725 # EOF pysha3-1.0.2/vectors/keccak_224.txt0000664000175000017500000023443412711153011017531 0ustar heimesheimes00000000000000# ShortMsgKAT_224.txt ,f71837502ba8e10837bdd8d365adb85591895602fc552b48b7390abd cc,a9cab59eb40a10b246290f2d6086e32e3689faf1d26b470c899f2802 41fb,615ba367afdc35aac397bc7eb5d58d106a734b24986d5d978fefd62c 1f877c,6f9d2898efd096baaaaab2e97482ddb6389b8e6caa964b7a0e347e13 c1ecfdfc,e405869da1464a705700a3cbce131aabeeba9c8d2fe6576b21bcbe16 21f134ac57,5573da2b02216a860389a581f6e9fb8d805e9e02f6fa911701eee298 c6f50bb74e29,163c9060163aa66b8b7c0cfaa65d934bff219bcbc267187caba0042f 119713cc83eeef,cfc04c6f8463ddab24cdf8b8652bd11df23dd1b95f118328dd01580e 4a4f202484512526,7a5c2cb3f999dd00eff7399963314ca647dd0e5ae1bddec611f8338d 1f66ab4185ed9b6375,a5a75806083aa9307074ef8fbd7df592985e5f714611e812216c0449 eed7422227613b6f53c9,ac78fc53a1db90a634f1aaaf90119c889c8c24b59b98b7366029cc73 eaeed5cdffd89dece455f1,672ca6826686bedb258532830d606b258c6de60154ec0957cd8b858b 5be43c90f22902e4fe8ed2d3,d98ca07e172b0bc53d679d2f8d002c63fd24a6307f2b7e1eeef28be0 a746273228122f381c3b46e4f1,f122be39c91a6c17cd5900f531e680d54cedefd4f0e3d113d26543d4 3c5871cd619c69a63b540eb5a625,2a26d2ad2015c67cabb7895ec5fa25473d4d1433fae92b9b2cda31f0 fa22874bcc068879e8ef11a69f0722,a69e4ec1648cbbd595558ee4ea345e4196c2881e85e853739b1f4604 52a608ab21ccdd8a4457a57ede782176,5679cd509c5120af54795cf477149641cf27b2ebb6a5f90340704e57 82e192e4043ddcd12ecf52969d0f807eed,455584a1a3bbfbb977ae08ddee93da5acae0f2f4c3cdaaf089728aae 75683dcb556140c522543bb6e9098b21a21e,bb779e7267caf0e891547ee3e3babf17837671cf731ed56334f61cc3 06e4efe45035e61faaf4287b4d8d1f12ca97e5,e7b181daec132d3b6c9dfbf61841135b87fb995be20957b8cd095e2b e26193989d06568fe688e75540aea06747d9f851,44729646a05ad0503a876b448f88f177a0a263ab746ca6e30676adb2 d8dc8fdefbdce9d44e4cbafe78447bae3b5436102a,05e15793e417dd4e02cd6c5636d42c1638c164d70b79f717f25d1a15 57085fd7e14216ab102d8317b0cb338a786d5fc32d8f,2c4077a8858966ef79aac3ec6d82855ead22867ba45d617a68cb926e a05404df5dbb57697e2c16fa29defac8ab3560d6126fa0,2e897b479fbcbf42d2139f6768df147a3b85c36a5b3f3c066eb0565e aecbb02759f7433d6fcb06963c74061cd83b5b3ffa6f13c6,ba76ffefd006b81ef5991e697d0425621b16818ea27c11056e00904e aafdc9243d3d4a096558a360cc27c8d862f0be73db5e88aa55,1c1e758d87399a36bf7c8a2e6a55ce6a4f0c498737956959959fd2ac 7bc84867f6f9e9fdc3e1046cae3a52c77ed485860ee260e30b15,ddea76409c61f6d1873f01a34251c74c37b34f28f7f482a84395b5f3 fac523575a99ec48279a7a459e98ff901918a475034327efb55843,777c523cf42d0006ed1f88f1bd0c3a5ef21814723794b8461a375c3a 0f8b2d8fcfd9d68cffc17ccfb117709b53d26462a3f346fb7c79b85e,8d7474ed6dea4626ad3c1d06d2ad5b198caad07b12077c680cf6d89b a963c3e895ff5a0be4824400518d81412f875fa50521e26e85eac90c04,f525d4515d3ca54a2fab9c679e93561fe151ea0960751352cd7f591a 03a18688b10cc0edf83adf0a84808a9718383c4070c6c4f295098699ac2c,9a8455f41f693b91b3de46bf66ff09d42dc300b856b1dc2dfd12555c 84fb51b517df6c5accb5d022f8f28da09b10232d42320ffc32dbecc3835b29,81af3a7a5bd4c1f948d6af4b96f93c3b0cf9c0e7a6da6fcd71eec7f6 9f2fcc7c90de090d6b87cd7e9718c1ea6cb21118fc2d5de9f97e5db6ac1e9c10,a27a051a36a1501974ad8e9873e9df231aa9ad90ec1d7a8bbf8f639a de8f1b3faa4b7040ed4563c3b8e598253178e87e4d0df75e4ff2f2dedd5a0be046,f217812e362ec64d4dc5eacfabc165184bfa456e5c32c2c7900253d0 62f154ec394d0bc757d045c798c8b87a00e0655d0481a7d2d9fb58d93aedc676b5a0,5ca92b5f5830e1e5f8df4391339df7df1f23bb31aa05437c103f1652 b2dcfe9ff19e2b23ce7da2a4207d3e5ec7c6112a8a22aec9675a886378e14e5bfbad4e,9f01f07d930f40a26407760104efd10d4436295f6b8c41fe2a4e09ea 47f5697ac8c31409c0868827347a613a3562041c633cf1f1f86865a576e02835ed2c2492,22a3fed1f4e298c37a1d7ba0c80e994b11d95f290f3945a3ceb2e2e6 512a6d292e67ecb2fe486bfe92660953a75484ff4c4f2eca2b0af0edcdd4339c6b2ee4e542,35f1ab1263211f738d3f97d0e4840c387e09369f23bf9239150d0306 973cf2b4dcf0bfa872b41194cb05bb4e16760a1840d8343301802576197ec19e2a1493d8f4fb,34cc708b874d40478e82324bf3aa32fe9f85aff8c60b4badf97003e3 80beebcd2e3f8a9451d4499961c9731ae667cdc24ea020ce3b9aa4bbc0a7f79e30a934467da4b0,5f339b2f87e7f695b236267c819ba1705d97644ad72e0871c7e3a913 7abaa12ec2a7347674e444140ae0fb659d08e1c66decd8d6eae925fa451d65f3c0308e29446b8ed3,8e20d5c83cda8226b58cefd74c293ca7579cbb3949ca9eb2f61565b8 c88dee9927679b8af422abcbacf283b904ff31e1cac58c7819809f65d5807d46723b20f67ba610c2b7,606255348812cfb5082f4d4bb6bbc2feef044e381feb0e346061aa4f 01e43fe350fcec450ec9b102053e6b5d56e09896e0ddd9074fe138e6038210270c834ce6eadc2bb86bf6,c885274cc3bf110995fef1154a86772f28b41e745e86e935b4e3a03f 337023370a48b62ee43546f17c4ef2bf8d7ecd1d49f90bab604b839c2e6e5bd21540d29ba27ab8e309a4b7,efa7f7e7bffa6a5e7f7d1c24e7a0a9dc9a6f72b3e9550a0aaa06cce6 6892540f964c8c74bd2db02c0ad884510cb38afd4438af31fc912756f3efec6b32b58ebc38fc2a6b913596a8,aca7dccc6b809d511f4c248caa5d1374e734c1ed6b995760cc3c56d2 f5961dfd2b1ffffda4ffbf30560c165bfedab8ce0be525845deb8dc61004b7db38467205f5dcfb34a2acfe96c0,6f1ef55ccc6ef9b68de54c14448487901022452ab761f84644e9a127 ca061a2eb6ceed8881ce2057172d869d73a1951e63d57261384b80ceb5451e77b06cf0f5a0ea15ca907ee1c27eba,b297f61ff06021bfe1b9d350b3f54d810bc16ade17001bae1b4cd4a2 1743a77251d69242750c4f1140532cd3c33f9b5ccdf7514e8584d4a5f9fbd730bcf84d0d4726364b9bf95ab251d9bb,be9a75436c3988fb2fe21d0c10ead9b9c807de2e13a9bd8437f13332 d8faba1f5194c4db5f176fabfff856924ef627a37cd08cf55608bba8f1e324d7c7f157298eabc4dce7d89ce5162499f9,4304582c3892942b1960822c965788b22de19f1c6d5e204476adfd26 be9684be70340860373c9c482ba517e899fc81baaa12e5c6d7727975d1d41ba8bef788cdb5cf4606c9c1c7f61aed59f97d,0480ef8519c32f89c65b8dd450025ec49cbdada6c4cfcfc6fb4f1c61 7e15d2b9ea74ca60f66c8dfab377d9198b7b16deb6a1ba0ea3c7ee2042f89d3786e779cf053c77785aa9e692f821f14a7f51,0bde9cd50d70f00eed97cce40c3df22bb4904c08c4177c3a95985d97 9a219be43713bd578015e9fda66c0f2d83cac563b776ab9f38f3e4f7ef229cb443304fba401efb2bdbd7ece939102298651c86,3bf3addb761ab32a38b7b47047ad45b68edfd88ed475227447ea1b1e c8f2b693bd0d75ef99caebdc22adf4088a95a3542f637203e283bbc3268780e787d68d28cc3897452f6a22aa8573ccebf245972a,6182614c8257eb05e9ac0950e15e6044872e5c0ab2af4540764ca0c8 ec0f99711016c6a2a07ad80d16427506ce6f441059fd269442baaa28c6ca037b22eeac49d5d894c0bf66219f2c08e9d0e8ab21de52,0b5dc722eea2c348325fd9b3d7f08f365b71d5b582c27beb79b51d5d 0dc45181337ca32a8222fe7a3bf42fc9f89744259cff653504d6051fe84b1a7ffd20cb47d4696ce212a686bb9be9a8ab1c697b6d6a33,29c2b817c75b6417bc89c262af9d58f0c18fbd991f59f4181f237038 de286ba4206e8b005714f80fb1cdfaebde91d29f84603e4a3ebc04686f99a46c9e880b96c574825582e8812a26e5a857ffc6579f63742f,62c5876694d88007709b50900ee2e6ca9505cc90067efbf4c1d95b0b eebcc18057252cbf3f9c070f1a73213356d5d4bc19ac2a411ec8cdeee7a571e2e20eaf61fd0c33a0ffeb297ddb77a97f0a415347db66bcaf,d362be7896b2ac3ca4dc3161b7f6c5b3fbe65f32d040402b8d306b15 416b5cdc9fe951bd361bd7abfc120a5054758eba88fdd68fd84e39d3b09ac25497d36b43cbe7b85a6a3cebda8db4e5549c3ee51bb6fcb6ac1e,d420c7bdf8d86d7b1cbd1af7868ebc4ff17245595b94959a0714333c 5c5faf66f32e0f8311c32e8da8284a4ed60891a5a7e50fb2956b3cbaa79fc66ca376460e100415401fc2b8518c64502f187ea14bfc9503759705,2e04dae6e3fdf2a47ff40e6f3e61b371f3e51a5864a31cc11d127620 7167e1e02be1a7ca69d788666f823ae4eef39271f3c26a5cf7cee05bca83161066dc2e217b330df821103799df6d74810eed363adc4ab99f36046a,22817a21cfcec4fd2348b6be8a7042a37754d76a3f33a8f818312cc7 2fda311dbba27321c5329510fae6948f03210b76d43e7448d1689a063877b6d14c4f6d0eaa96c150051371f7dd8a4119f7da5c483cc3e6723c01fb7d,68caf2203317a8bed30c1792e888910124f2f0ee1d24d47274bcc856 95d1474a5aab5d2422aca6e481187833a6212bd2d0f91451a67dd786dfc91dfed51b35f47e1deb8a8ab4b9cb67b70179cc26f553ae7b569969ce151b8d,7bbac0c0f192d2c479348358d2247e4c08966a512f73d40445b52ec7 c71bd7941f41df044a2927a8ff55b4b467c33d089f0988aa253d294addbdb32530c0d4208b10d9959823f0c0f0734684006df79f7099870f6bf53211a88d,d226d9e1f36ec4222693699b6d0383c1452e391c41efd7645289f8e3 f57c64006d9ea761892e145c99df1b24640883da79d9ed5262859dcda8c3c32e05b03d984f1ab4a230242ab6b78d368dc5aaa1e6d3498d53371e84b0c1d4ba,294a1e5a0629a2736f188691a35fe1abb55472785daff6cd88c6d537 e926ae8b0af6e53176dbffcc2a6b88c6bd765f939d3d178a9bde9ef3aa131c61e31c1e42cdfaf4b4dcde579a37e150efbef5555b4c1cb40439d835a724e2fae7,c533dcf88cd1a5dff22b914d3875bd57fc17b2e1f474ae360c3877d2 16e8b3d8f988e9bb04de9c96f2627811c973ce4a5296b4772ca3eefeb80a652bdf21f50df79f32db23f9f73d393b2d57d9a0297f7a2f2e79cfda39fa393df1ac00,c9b7ad7a32b70dfb5a8a2ff9d98b300e484b996ed752a732d84db6f7 fc424eeb27c18a11c01f39c555d8b78a805b88dba1dc2a42ed5e2c0ec737ff68b2456d80eb85e11714fa3f8eabfb906d3c17964cb4f5e76b29c1765db03d91be37fc,cf646d5e5c81818c97a01f393f8033ce3cb7ccd07fdac9988766bd1c abe3472b54e72734bdba7d9158736464251c4f21b33fbbc92d7fac9a35c4e3322ff01d2380cbaa4ef8fb07d21a2128b7b9f5b6d9f34e13f39c7ffc2e72e47888599ba5,d411e8a7cf50aaf91076a8cc5f01bf5b6bb2ccae8046bf47871891fd 36f9f0a65f2ca498d739b944d6eff3da5ebba57e7d9c41598a2b0e4380f3cf4b479ec2348d015ffe6256273511154afcf3b4b4bf09d6c4744fdd0f62d75079d440706b05,e094c0303d1841c6e4c0864857cf36cfc980e3cb4d78f18e301117c4 abc87763cae1ca98bd8c5b82caba54ac83286f87e9610128ae4de68ac95df5e329c360717bd349f26b872528492ca7c94c2c1e1ef56b74dbb65c2ac351981fdb31d06c77a4,51948e1772c2c2ee49158d02a975b27477bd041262954c3e60f5acc2 94f7ca8e1a54234c6d53cc734bb3d3150c8ba8c5f880eab8d25fed13793a9701ebe320509286fd8e422e931d99c98da4df7e70ae447bab8cffd92382d8a77760a259fc4fbd72,8214a2b0e8bb60cd3e4dfb0d0855d0f6c4ba6d2728d0687bdf75f79e 13bd2811f6ed2b6f04ff3895aceed7bef8dcd45eb121791bc194a0f806206bffc3b9281c2b308b1a729ce008119dd3066e9378acdcc50a98a82e20738800b6cddbe5fe9694ad6d,8a2ae6b9aa7b1e08f8c7dc3bf5ae876660d30f79391714a175381091 1eed9cba179a009ec2ec5508773dd305477ca117e6d569e66b5f64c6bc64801ce25a8424ce4a26d575b8a6fb10ead3fd1992edddeec2ebe7150dc98f63adc3237ef57b91397aa8a7,702b1906a63d0f924afec3bb5e5c5742e85f9834ea6f5306644811a1 ba5b67b5ec3a3ffae2c19dd8176a2ef75c0cd903725d45c9cb7009a900c0b0ca7a2967a95ae68269a6dbf8466c7b6844a1d608ac661f7eff00538e323db5f2c644b78b2d48de1a08aa,bf2101511220b7dfe54b127c2476eaadfd4eab7fd0f6bdd193078ac8 0efa26ac5673167dcacab860932ed612f65ff49b80fa9ae65465e5542cb62075df1c5ae54fba4db807be25b070033efa223bdd5b1d3c94c6e1909c02b620d4b1b3a6c9fed24d70749604,b07adbed912723a07fa5353f665ec14ff82d85e90be3e5a1f5c90fff bbfd933d1fd7bf594ac7f435277dc17d8d5a5b8e4d13d96d2f64e771abbd51a5a8aea741beccbddb177bcea05243ebd003cfdeae877cca4da94605b67691919d8b033f77d384ca01593c1b,d1718f0d387ac427111a7e90e575de5f04778ea2ba147a8451914ff0 90078999fd3c35b8afbf4066cbde335891365f0fc75c1286cdd88fa51fab94f9b8def7c9ac582a5dbcd95817afb7d1b48f63704e19c2baa4df347f48d4a6d603013c23f1e9611d595ebac37c,faf7d793024e6d05e77c5231712478822c915292fcc1427e6acfd3cf 64105eca863515c20e7cfbaa0a0b8809046164f374d691cdbd6508aaabc1819f9ac84b52bafc1b0fe7cddbc554b608c01c8904c669d8db316a0953a4c68ece324ec5a49ffdb59a1bd6a292aa0e,a375d756a8f39c72f67ca489c95f99350ffd0515b151a3bff288caaa d4654be288b9f3b711c2d02015978a8cc57471d5680a092aa534f7372c71ceaab725a383c4fcf4d8deaa57fca3ce056f312961eccf9b86f14981ba5bed6ab5b4498e1f6c82c6cae6fc14845b3c8a,1bd1b6f3144a3dee93dea1df03c0e958f485b8ae164dcee55f973413 12d9394888305ac96e65f2bf0e1b18c29c90fe9d714dd59f651f52b88b3008c588435548066ea2fc4c101118c91f32556224a540de6efddbca296ef1fb00341f5b01fecfc146bdb251b3bdad556cd2,be88b495d0cd90281af2094b8d7e72eb417288ca16f751c09694b682 871a0d7a5f36c3da1dfce57acd8ab8487c274fad336bc137ebd6ff4658b547c1dcfab65f037aa58f35ef16aff4abe77ba61f65826f7be681b5b6d5a1ea8085e2ae9cd5cf0991878a311b549a6d6af230,7dac046254808464024617d63a038267fe2ca65052bdeb569a0a9c15 e90b4ffef4d457bc7711ff4aa72231ca25af6b2e206f8bf859d8758b89a7cd36105db2538d06da83bad5f663ba11a5f6f61f236fd5f8d53c5e89f183a3cec615b50c7c681e773d109ff7491b5cc22296c5,89f6b320efabe42ce13c9e20e4829f31a7848eee3fc854e603fbd46f e728de62d75856500c4c77a428612cd804f30c3f10d36fb219c5ca0aa30726ab190e5f3f279e0733d77e7267c17be27d21650a9a4d1e32f649627638dbada9702c7ca303269ed14014b2f3cf8b894eac8554,a805dbd3b8df5e03e05efffde1b94b35a23c5d77c2797d984e56656f 6348f229e7b1df3b770c77544e5166e081850fa1c6c88169db74c76e42eb983facb276ad6a0d1fa7b50d3e3b6fcd799ec97470920a7abed47d288ff883e24ca21c7f8016b93bb9b9e078bdb9703d2b781b616e,f05742cc1db422a3113ac49602e8d0dd6cb472e7ed26bce40bba09bd 4b127fde5de733a1680c2790363627e63ac8a3f1b4707d982caea258655d9bf18f89afe54127482ba01e08845594b671306a025c9a5c5b6f93b0a39522dc877437be5c2436cbf300ce7ab6747934fcfc30aeaaf6,45945f867b7e1e75ee496e0fc4aaff71a0cc539841d153439aed4dfc 08461f006cff4cc64b752c957287e5a0faabc05c9bff89d23fd902d324c79903b48fcb8f8f4b01f3e4ddb483593d25f000386698f5ade7faade9615fdc50d32785ea51d49894e45baa3dc707e224688c6408b68b11,5a8ac7533e1354068b564ccd214eb2a2e097dd60e08bd69fc782b0af 68c8f8849b120e6e0c9969a5866af591a829b92f33cd9a4a3196957a148c49138e1e2f5c7619a6d5edebe995acd81ec8bb9c7b9cfca678d081ea9e25a75d39db04e18d475920ce828b94e72241f24db72546b352a0e4,059f7eb983362fd44e94e2bfd59cced43cae959c9a483ebd5e6e2036 b8d56472954e31fb54e28fca743f84d8dc34891cb564c64b08f7b71636debd64ca1edbdba7fc5c3e40049ce982bba8c7e0703034e331384695e9de76b5104f2fbc4535ecbeebc33bc27f29f18f6f27e8023b0fbb6f563c,22d62ad272fefc89f73256eaace00c7b8e998fb322c8eb67dc1eac6a 0d58ac665fa84342e60cefee31b1a4eacdb092f122dfc68309077aed1f3e528f578859ee9e4cefb4a728e946324927b675cd4f4ac84f64db3dacfe850c1dd18744c74ceccd9fe4dc214085108f404eab6d8f452b5442a47d,a396ea905eb612554bd00e4fc1bb4c5247d73fde4bbaf5380ed42dd0 1755e2d2e5d1c1b0156456b539753ff416651d44698e87002dcf61dcfa2b4e72f264d9ad591df1fdee7b41b2eb00283c5aebb3411323b672eaa145c5125185104f20f335804b02325b6dea65603f349f4d5d8b782dd3469ccd,d8b5b24b9e92326fde5db1058eedbeedb0b65982925734b6e2844036 b180de1a611111ee7584ba2c4b020598cd574ac77e404e853d15a101c6f5a2e5c801d7d85dc95286a1804c870bb9f00fd4dcb03aa8328275158819dcad7253f3e3d237aeaa7979268a5db1c6ce08a9ec7c2579783c8afc1f91a7,fdb9015b20db446f79575e6b8c73a98eac731cfe2e59bd46dbda0e35 cf3583cbdfd4cbc17063b1e7d90b02f0e6e2ee05f99d77e24e560392535e47e05077157f96813544a17046914f9efb64762a23cf7a49fe52a0a4c01c630cfe8727b81fb99a89ff7cc11dca5173057e0417b8fe7a9efba6d95c555f,df1b47e73e8cbd2ca852cf58ad68b5f8baa1169c0795961041e8a918 072fc02340ef99115bad72f92c01e4c093b9599f6cfc45cb380ee686cb5eb019e806ab9bd55e634ab10aa62a9510cc0672cd3eddb589c7df2b67fcd3329f61b1a4441eca87a33c8f55da4fbbad5cf2b2527b8e983bb31a2fadec7523,1e8a90918d6ead31e446d4ee2673871ecc5c7da9b18ed511e1632e0d 76eecf956a52649f877528146de33df249cd800e21830f65e90f0f25ca9d6540fde40603230eca6760f1139c7f268deba2060631eea92b1fff05f93fd5572fbe29579ecd48bc3a8d6c2eb4a6b26e38d6c5fbf2c08044aeea470a8f2f26,1060afd1e1b9f7f41291a4861774b3b0c95a812788a41d7ebef4a893 7adc0b6693e61c269f278e6944a5a2d8300981e40022f839ac644387bfac9086650085c2cdc585fea47b9d2e52d65a2b29a7dc370401ef5d60dd0d21f9e2b90fae919319b14b8c5565b0423cefb827d5f1203302a9d01523498a4db10374,ea91edc393491b4cbc035b8538df08e3c6b8cad18338053c81fe2e08 e1fffa9826cce8b86bccefb8794e48c46cdf372013f782eced1e378269b7be2b7bf51374092261ae120e822be685f2e7a83664bcfbe38fe8633f24e633ffe1988e1bc5acf59a587079a57a910bda60060e85b5f5b6f776f0529639d9cce4bd,df1af149e5c92cb29174c1edb6ed891ebce4366010dc7cbfc9b1d757 69f9abba65592ee01db4dce52dbab90b08fc04193602792ee4daa263033d59081587b09bbe49d0b49c9825d22840b2ff5d9c5155f975f8f2c2e7a90c75d2e4a8040fe39f63bbafb403d9e28cc3b86e04e394a9c9e8065bd3c85fa9f0c7891600,5f698408bff0246b05bad96cb342b2fd2f11b6804ef2fa07a81b0920 38a10a352ca5aedfa8e19c64787d8e9c3a75dbf3b8674bfab29b5dbfc15a63d10fae66cd1a6e6d2452d557967eaad89a4c98449787b0b3164ca5b717a93f24eb0b506ceb70cbbcb8d72b2a72993f909aad92f044e0b5a2c9ac9cb16a0ca2f81f49,ebe6d61e8a946e0d45d3889f9e360acd3a1a7d6c4b1307448e6e7357 6d8c6e449bc13634f115749c248c17cd148b72157a2c37bf8969ea83b4d6ba8c0ee2711c28ee11495f43049596520ce436004b026b6c1f7292b9c436b055cbb72d530d860d1276a1502a5140e3c3f54a93663e4d20edec32d284e25564f624955b52,1b7f6bcb2271ac9c3b558e95f85285ee756b03b767a01ac57d7c6e94 6efcbcaf451c129dbe00b9cef0c3749d3ee9d41c7bd500ade40cdc65dedbbbadb885a5b14b32a0c0d087825201e303288a733842fa7e599c0c514e078f05c821c7a4498b01c40032e9f1872a1c925fa17ce253e8935e4c3c71282242cb716b2089ccc1,436d1bcd6b3de2677a72b93e2cedb60c84a4fe125a802e2997eb2e67 433c5303131624c0021d868a30825475e8d0bd3052a022180398f4ca4423b98214b6beaac21c8807a2c33f8c93bd42b092cc1b06cedf3224d5ed1ec29784444f22e08a55aa58542b524b02cd3d5d5f6907afe71c5d7462224a3f9d9e53e7e0846dcbb4ce,62b10f1b6236ebc2da72957742a8d4e48e213b5f8934604bfd4d2c3a a873e0c67ca639026b6683008f7aa6324d4979550e9bce064ca1e1fb97a30b147a24f3f666c0a72d71348ede701cf2d17e2253c34d1ec3b647dbcef2f879f4eb881c4830b791378c901eb725ea5c172316c6d606e0af7df4df7f76e490cd30b2badf45685f,1186bea0880d0a96f6a56bbb431f4d264838bb0180dcf66ef0b599ca 006917b64f9dcdf1d2d87c8a6173b64f6587168e80faa80f82d84f60301e561e312d9fbce62f39a6fb476e01e925f26bcc91de621449be6504c504830aae394096c8fc7694651051365d4ee9070101ec9b68086f2ea8f8ab7b811ea8ad934d5c9b62c60a4771,383d2f41ecfda5994e815432999d192e1a282ff5663196a4a268a67d f13c972c52cb3cc4a4df28c97f2df11ce089b815466be88863243eb318c2adb1a417cb1041308598541720197b9b1cb5ba2318bd5574d1df2174af14884149ba9b2f446d609df240ce335599957b8ec80876d9a085ae084907bc5961b20bf5f6ca58d5dab38adb,e2594a633b2dc671fd0ddfd3bf7238332c425520827c524fb0e19778 e35780eb9799ad4c77535d4ddb683cf33ef367715327cf4c4a58ed9cbdcdd486f669f80189d549a9364fa82a51a52654ec721bb3aab95dceb4a86a6afa93826db923517e928f33e3fba850d45660ef83b9876accafa2a9987a254b137c6e140a21691e1069413848,234764aae8c39b1571d7741bb176ff86246070ec9ac97a1b2eb35472 64ec021c9585e01ffe6d31bb50d44c79b6993d72678163db474947a053674619d158016adb243f5c8d50aa92f50ab36e579ff2dabb780a2b529370daa299207cfbcdd3a9a25006d19c4f1fe33e4b1eaec315d8c6ee1e730623fd1941875b924eb57d6d0c2edc4e78d6,a634d7ebaa2bc0043eb5e237690e38ff1e05ee5a042882a233a2d92a 5954bab512cf327d66b5d9f296180080402624ad7628506b555eea8382562324cf452fba4a2130de3e165d11831a270d9cb97ce8c2d32a96f50d71600bb4ca268cf98e90d6496b0a6619a5a8c63db6d8a0634dfc6c7ec8ea9c006b6c456f1b20cd19e781af20454ac880,ef03fbb1ef3296eecfb98909e416d113b5741e44962ec57993c6da5d 03d9f92b2c565709a568724a0aff90f8f347f43b02338f94a03ed32e6f33666ff5802da4c81bdce0d0e86c04afd4edc2fc8b4141c2975b6f07639b1994c973d9a9afce3d9d365862003498513bfa166d2629e314d97441667b007414e739d7febf0fe3c32c17aa188a8683,210d245cc8b5a7b4c1b118a9890ecddc34a66ea92805b7a7c19a944a f31e8b4f9e0621d531d22a380be5d9abd56faec53cbd39b1fab230ea67184440e5b1d15457bd25f56204fa917fa48e669016cb48c1ffc1e1e45274b3b47379e00a43843cf8601a5551411ec12503e5aac43d8676a1b2297ec7a0800dbfee04292e937f21c005f17411473041,517bae010715a020435cfdb531b856c5704e0ec611360f60d5b76161 758ea3fea738973db0b8be7e599bbef4519373d6e6dcd7195ea885fc991d896762992759c2a09002912fb08e0cb5b76f49162aeb8cf87b172cf3ad190253df612f77b1f0c532e3b5fc99c2d31f8f65011695a087a35ee4eee5e334c369d8ee5d29f695815d866da99df3f79403,79d478b4bc5e6fc2d406bb1c3834a5ce397a88e80135f55d8fe32c5e 47c6e0c2b74948465921868804f0f7bd50dd323583dc784f998a93cd1ca4c6ef84d41dc81c2c40f34b5bee6a93867b3bdba0052c5f59e6f3657918c382e771d33109122cc8bb0e1e53c4e3d13b43ce44970f5e0c079d2ad7d7a3549cd75760c21bb15b447589e86e8d76b1e9ced2,f7ba7a56afc1c58e62841c3b98f5677199f24b534b0d52d9a5c95495 f690a132ab46b28edfa6479283d6444e371c6459108afd9c35dbd235e0b6b6ff4c4ea58e7554bd002460433b2164ca51e868f7947d7d7a0d792e4abf0be5f450853cc40d85485b2b8857ea31b5ea6e4ccfa2f3a7ef3380066d7d8979fdac618aad3d7e886dea4f005ae4ad05e5065f,78a90b769e9a326c93d5a6a6105aee031dceb2c8d222b36e02f27db6 58d6a99bc6458824b256916770a8417040721cccfd4b79eacd8b65a3767ce5ba7e74104c985ac56b8cc9aebd16febd4cda5adb130b0ff2329cc8d611eb14dac268a2f9e633c99de33997fea41c52a7c5e1317d5b5daed35eba7d5a60e45d1fa7eaabc35f5c2b0a0f2379231953322c4e,3d9d5c2fd2f60f4bb89e11fd3bc2fbd65602eb3f3f38d6fa03bdce2c befab574396d7f8b6705e2d5b58b2c1c820bb24e3f4bae3e8fbcd36dbf734ee14e5d6ab972aedd3540235466e825850ee4c512ea9795abfd33f330d9fd7f79e62bbb63a6ea85de15beaeea6f8d204a28956059e2632d11861dfb0e65bc07ac8a159388d5c3277e227286f65ff5e5b5aec1,e1fabe16152560387fadad3324cbb94d8af968786c3c994c8f926d32 8e58144fa9179d686478622ce450c748260c95d1ba43b8f9b59abeca8d93488da73463ef40198b4d16fb0b0707201347e0506ff19d01bea0f42b8af9e71a1f1bd168781069d4d338fdef00bf419fbb003031df671f4a37979564f69282de9c65407847dd0da505ab1641c02dea4f0d834986,cef84f1966215b1511f5e0db564d6827898184fbcb88be0213fc563f b55c10eae0ec684c16d13463f29291bf26c82e2fa0422a99c71db4af14dd9c7f33eda52fd73d017cc0f2dbe734d831f0d820d06d5f89dacc485739144f8cfd4799223b1aff9031a105cb6a029ba71e6e5867d85a554991c38df3c9ef8c1e1e9a7630be61caabca69280c399c1fb7a12d12aefc,8e4b5a2b79fc1e7d0526aacb5b9ac01a569635644c9249dffee3b927 2eeea693f585f4ed6f6f8865bbae47a6908aecd7c429e4bec4f0de1d0ca0183fa201a0cb14a529b7d7ac0e6ff6607a3243ee9fb11bcf3e2304fe75ffcddd6c5c2e2a4cd45f63c962d010645058d36571404a6d2b4f44755434d76998e83409c3205aa1615db44057db991231d2cb42624574f545,baff55cdad66aa77ad677e13a138b2f17286b504ea6b94effd9d9a95 dab11dc0b047db0420a585f56c42d93175562852428499f66a0db811fcdddab2f7cdffed1543e5fb72110b64686bc7b6887a538ad44c050f1e42631bc4ec8a9f2a047163d822a38989ee4aab01b4c1f161b062d873b1cfa388fd301514f62224157b9bef423c7783b7aac8d30d65cd1bba8d689c2d,b4efbe1167755f5a75b72cf15e0601662d036a16cac8602a909fb328 42e99a2f80aee0e001279a2434f731e01d34a44b1a8101726921c0590c30f3120eb83059f325e894a5ac959dca71ce2214799916424e859d27d789437b9d27240bf8c35adbafcecc322b48aa205b293962d858652abacbd588bcf6cbc388d0993bd622f96ed54614c25b6a9aa527589eaaffcf17ddf7,fa4bb608f8f60841e1189f8770051695cdc9935bda7187c36419228a 3c9b46450c0f2cae8e3823f8bdb4277f31b744ce2eb17054bddc6dff36af7f49fb8a2320cc3bdf8e0a2ea29ad3a55de1165d219adeddb5175253e2d1489e9b6fdd02e2c3d3a4b54d60e3a47334c37913c5695378a669e9b72dec32af5434f93f46176ebf044c4784467c700470d0c0b40c8a088c815816,b3a877231519c24e2efa424e6057128ea105b54c65e58074b5b1583c d1e654b77cb155f5c77971a64df9e5d34c26a3cad6c7f6b300d39deb1910094691adaa095be4ba5d86690a976428635d5526f3e946f7dc3bd4dbc78999e653441187a81f9adcd5a3c5f254bc8256b0158f54673dcc1232f6e918ebfc6c51ce67eaeb042d9f57eec4bfe910e169af78b3de48d137df4f2840,9f385c0b645db8db8b73c98c40be264ffee6151c7b5a0964e67daa9f 626f68c18a69a6590159a9c46be03d5965698f2dac3de779b878b3d9c421e0f21b955a16c715c1ec1e22ce3eb645b8b4f263f60660ea3028981eebd6c8c3a367285b691c8ee56944a7cd1217997e1d9c21620b536bdbd5de8925ff71dec6fbc06624ab6b21e329813de90d1e572dfb89a18120c3f606355d25,bd6c865993082ec7b3808c13fd140fe0c0667b3ee51b9f8f1f4dffd8 651a6fb3c4b80c7c68c6011675e6094eb56abf5fc3057324ebc6477825061f9f27e7a94633abd1fa598a746e4a577caf524c52ec1788471f92b8c37f23795ca19d559d446cab16cbcdce90b79fa1026cee77bf4ab1b503c5b94c2256ad75b3eac6fd5dcb96aca4b03a834bfb4e9af988cecbf2ae597cb9097940,8ca844acfcaabd3b969f86c2f1ecdf1620574ec8c24426be2dcc1bb5 8aaf072fce8a2d96bc10b3c91c809ee93072fb205ca7f10abd82ecd82cf040b1bc49ea13d1857815c0e99781de3adbb5443ce1c897e55188ceaf221aa9681638de05ae1b322938f46bce51543b57ecdb4c266272259d1798de13be90e10efec2d07484d9b21a3870e2aa9e06c21aa2d0c9cf420080a80a91dee16f,e8d549ff8d53745a4c5c75bdad92314025da877a77ce49ea134840fa 53f918fd00b1701bd504f8cdea803acca21ac18c564ab90c2a17da592c7d69688f6580575395551e8cd33e0fef08ca6ed4588d4d140b3e44c032355df1c531564d7f4835753344345a6781e11cd5e095b73df5f82c8ae3ad00877936896671e947cc52e2b29dcd463d90a0c9929128da222b5a211450bbc0e02448e2,e6bd80787f8704fff73112e8b368adfba3a1109162c769491349dcef a64599b8a61b5ccec9e67aed69447459c8da3d1ec6c7c7c82a7428b9b584fa67e90f68e2c00fbbed4613666e5168da4a16f395f7a3c3832b3b134bfc9cbaa95d2a0fe252f44ac6681eb6d40ab91c1d0282fed6701c57463d3c5f2bb8c6a7301fb4576aa3b5f15510db8956ff77478c26a7c09bea7b398cfc83503f538e,bd7d9e6cf9d2c1030f892533e01b72b5288e174b0864d81d71f8c6e6 0e3ab0e054739b00cdb6a87bd12cae024b54cb5e550e6c425360c2e87e59401f5ec24ef0314855f0f56c47695d56a7fb1417693af2a1ed5291f2fee95f75eed54a1b1c2e81226fbff6f63ade584911c71967a8eb70933bc3f5d15bc91b5c2644d9516d3c3a8c154ee48e118bd1442c043c7a0dba5ac5b1d5360aae5b9065,a5312e8c7f0a3594a8ecd1abc5cbc14b2585f0b1fe32a4e1fa0a2e25 a62fc595b4096e6336e53fcdfc8d1cc175d71dac9d750a6133d23199eaac288207944cea6b16d27631915b4619f743da2e30a0c00bbdb1bbb35ab852ef3b9aec6b0a8dcc6e9e1abaa3ad62ac0a6c5de765de2c3711b769e3fde44a74016fff82ac46fa8f1797d3b2a726b696e3dea5530439acee3a45c2a51bc32dd055650b,2e0d739386aaaf37980ee421aa8c19b19af52e70f59dc0a6988471f5 2b6db7ced8665ebe9deb080295218426bdaa7c6da9add2088932cdffbaa1c14129bccdd70f369efb149285858d2b1d155d14de2fdb680a8b027284055182a0cae275234cc9c92863c1b4ab66f304cf0621cd54565f5bff461d3b461bd40df28198e3732501b4860eadd503d26d6e69338f4e0456e9e9baf3d827ae685fb1d817,af3e0cc6e64501f10fd39722e852355fd6d80d32190631e2f06c22ad 10db509b2cdcaba6c062ae33be48116a29eb18e390e1bbada5ca0a2718afbcd23431440106594893043cc7f2625281bf7de2655880966a23705f0c5155c2f5cca9f2c2142e96d0a2e763b70686cd421b5db812daced0c6d65035fde558e94f26b3e6dde5bd13980cc80292b723013bd033284584bff27657871b0cf07a849f4ae2,f009e05d1afe2d33d2c5f4008b46f31468a7bf5299d4f0ab0efe4fd3 9334de60c997bda6086101a6314f64e4458f5ff9450c509df006e8c547983c651ca97879175aaba0c539e82d05c1e02c480975cbb30118121061b1ebac4f8d9a3781e2db6b18042e01ecf9017a64a0e57447ec7fcbe6a7f82585f7403ee2223d52d37b4bf426428613d6b4257980972a0acab508a7620c1cb28eb4e9d30fc41361ec,76281bd1613843a3adbcbc78d1923afb5b8aa2dcbc48934deec84aaa e88ab086891693aa535ceb20e64c7ab97c7dd3548f3786339897a5f0c39031549ca870166e477743ccfbe016b4428d89738e426f5ffe81626137f17aecff61b72dbee2dc20961880cfe281dfab5ee38b1921881450e16032de5e4d55ad8d4fca609721b0692bac79be5a06e177fe8c80c0c83519fb3347de9f43d5561cb8107b9b5edc,da7c79e04fca2b69aaa58199ca69105b6b18fe67e29f380501aa7fa8 fd19e01a83eb6ec810b94582cb8fbfa2fcb992b53684fb748d2264f020d3b960cb1d6b8c348c2b54a9fcea72330c2aaa9a24ecdb00c436abc702361a82bb8828b85369b8c72ece0082fe06557163899c2a0efa466c33c04343a839417057399a63a3929be1ee4805d6ce3e5d0d0967fe9004696a5663f4cac9179006a2ceb75542d75d68,70ecb261757371a282903c696715dc03f106a339f076203bab436e94 59ae20b6f7e0b3c7a989afb28324a40fca25d8651cf1f46ae383ef6d8441587aa1c04c3e3bf88e8131ce6145cfb8973d961e8432b202fa5af3e09d625faad825bc19da9b5c6c20d02abda2fcc58b5bd3fe507bf201263f30543819510c12bc23e2ddb4f711d087a86edb1b355313363a2de996b891025e147036087401ccf3ca7815bf3c49,740d3cb455133173ec652aa04709ef0f549f19a9d4cc6bec9e876b5a 77ee804b9f3295ab2362798b72b0a1b2d3291dceb8139896355830f34b3b328561531f8079b79a6e9980705150866402fdc176c05897e359a6cb1a7ab067383eb497182a7e5aef7038e4c96d133b2782917417e391535b5e1b51f47d8ed7e4d4025fe98dc87b9c1622614bff3d1029e68e372de719803857ca52067cddaad958951cb2068cc6,663835a81a2a38d5ad3a37bd9bc96618d27ca32286e9091834a0871a b771d5cef5d1a41a93d15643d7181d2a2ef0a8e84d91812f20ed21f147bef732bf3a60ef4067c3734b85bc8cd471780f10dc9e8291b58339a677b960218f71e793f2797aea349406512829065d37bb55ea796fa4f56fd8896b49b2cd19b43215ad967c712b24e5032d065232e02c127409d2ed4146b9d75d763d52db98d949d3b0fed6a8052fbb,2594153ac2de681f4dee340fa344ec388773a377d5b89e503254fd2e b32d95b0b9aad2a8816de6d06d1f86008505bd8c14124f6e9a163b5a2ade55f835d0ec3880ef50700d3b25e42cc0af050ccd1be5e555b23087e04d7bf9813622780c7313a1954f8740b6ee2d3f71f768dd417f520482bd3a08d4f222b4ee9dbd015447b33507dd50f3ab4247c5de9a8abd62a8decea01e3b87c8b927f5b08beb37674c6f8e380c04,42275c296937745758ff2b7bee9a897191ae87e42bd10198d9466c19 04410e31082a47584b406f051398a6abe74e4da59bb6f85e6b49e8a1f7f2ca00dfba5462c2cd2bfde8b64fb21d70c083f11318b56a52d03b81cac5eec29eb31bd0078b6156786da3d6d8c33098c5c47bb67ac64db14165af65b44544d806dde5f487d5373c7f9792c299e9686b7e5821e7c8e2458315b996b5677d926dac57b3f22da873c601016a0d,143f9055eb1f736729c77721fb65ed5ee142f6e969132fb22989c11f 8b81e9badde026f14d95c019977024c9e13db7a5cd21f9e9fc491d716164bbacdc7060d882615d411438aea056c340cdf977788f6e17d118de55026855f93270472d1fd18b9e7e812bae107e0dfde7063301b71f6cfe4e225cab3b232905a56e994f08ee2891ba922d49c3dafeb75f7c69750cb67d822c96176c46bd8a29f1701373fb09a1a6e3c7158f,449a0313ccab4427032b6be9d66f827ffb4c71b538b2104f9d14d14a fa6eed24da6666a22208146b19a532c2ec9ba94f09f1def1e7fc13c399a48e41acc2a589d099276296348f396253b57cb0e40291bd282773656b6e0d8bea1cda084a3738816a840485fcf3fb307f777fa5feac48695c2af4769720258c77943fb4556c362d9cba8bf103aeb9034baa8ea8bfb9c4f8e6742ce0d52c49ea8e974f339612e830e9e7a9c29065,21e2760644a19ed18ed0cd74c4e4c071d770132ad215eb6f7d42b01d 9bb4af1b4f09c071ce3cafa92e4eb73ce8a6f5d82a85733440368dee4eb1cbc7b55ac150773b6fe47dbe036c45582ed67e23f4c74585dab509df1b83610564545642b2b1ec463e18048fc23477c6b2aa035594ecd33791af6af4cbc2a1166aba8d628c57e707f0b0e8707caf91cd44bdb915e0296e0190d56d33d8dde10b5b60377838973c1d943c22ed335e,d5534c72be2e4b1faaa813118b0d29dbb86f624067ea34515afa08be 2167f02118cc62043e9091a647cadbed95611a521fe0d64e8518f16c808ab297725598ae296880a773607a798f7c3cfce80d251ebec6885015f9abf7eaabae46798f82cb5926de5c23f44a3f9f9534b3c6f405b5364c2f8a8bdc5ca49c749bed8ce4ba48897062ae8424ca6dde5f55c0e42a95d1e292ca54fb46a84fbc9cd87f2d0c9e7448de3043ae22fdd229,c0cd413b1ce000a1bbe3a2cd103c7f8f95925ac6c8a5c922afb5f96d 94b7fa0bc1c44e949b1d7617d31b4720cbe7ca57c6fa4f4094d4761567e389ecc64f6968e4064df70df836a47d0c713336b5028b35930d29eb7a7f9a5af9ad5cf441745baec9bb014ceeff5a41ba5c1ce085feb980bab9cf79f2158e03ef7e63e29c38d7816a84d4f71e0f548b7fc316085ae38a060ff9b8dec36f91ad9ebc0a5b6c338cbb8f6659d342a24368cf,93c6bf585e994b1669184ac71dc8e772b53443e668da0786d528090b ea40e83cb18b3a242c1ecc6ccd0b7853a439dab2c569cfc6dc38a19f5c90acbf76aef9ea3742ff3b54ef7d36eb7ce4ff1c9ab3bc119cff6be93c03e208783335c0ab8137be5b10cdc66ff3f89a1bddc6a1eed74f504cbe7290690bb295a872b9e3fe2cee9e6c67c41db8efd7d863cf10f840fe618e7936da3dca5ca6df933f24f6954ba0801a1294cd8d7e66dfafec,bfe15bb51f680f2f489f0fdeb32f271090a09d1563f29feaf92104e0 157d5b7e4507f66d9a267476d33831e7bb768d4d04cc3438da12f9010263ea5fcafbde2579db2f6b58f911d593d5f79fb05fe3596e3fa80ff2f761d1b0e57080055c118c53e53cdb63055261d7c9b2b39bd90acc32520cbbdbda2c4fd8856dbcee173132a2679198daf83007a9b5c51511ae49766c792a29520388444ebefe28256fb33d4260439cba73a9479ee00c63,6d735fb7579135f61b771b2bb0d81514cde9c977accf6feaf6edebf0 836b34b515476f613fe447a4e0c3f3b8f20910ac89a3977055c960d2d5d2b72bd8acc715a9035321b86703a411dde0466d58a59769672aa60ad587b8481de4bba552a1645779789501ec53d540b904821f32b0bd1855b04e4848f9f8cfe9ebd8911be95781a759d7ad9724a7102dbe576776b7c632bc39b9b5e19057e226552a5994c1dbb3b5c7871a11f5537011044c53,6d93153145904cebe0e8a66c272bedf4f0d0a3c53ab30264135431a7 cc7784a4912a7ab5ad3620aab29ba87077cd3cb83636adc9f3dc94f51edf521b2161ef108f21a0a298557981c0e53ce6ced45bdf782c1ef200d29bab81dd6460586964edab7cebdbbec75fd7925060f7da2b853b2b089588fa0f8c16ec6498b14c55dcee335cb3a91d698e4d393ab8e8eac0825f8adebeee196df41205c011674e53426caa453f8de1cbb57932b0b741d4c6,afe30535675a7021bf618941d94ddffccefcaa1ef06cde306d5d7a75 7639b461fff270b2455ac1d1afce782944aea5e9087eb4a39eb96bb5c3baaf0e868c8526d3404f9405e79e77bfac5ffb89bf1957b523e17d341d7323c302ea7083872dd5e8705694acdda36d5a1b895aaa16eca6104c82688532c8bfe1790b5dc9f4ec5fe95baed37e1d287be710431f1e5e8ee105bc42ed37d74b1e55984bf1c09fe6a1fa13ef3b96faeaed6a2a1950a12153,916501614891bd99400a8aeaabf69326fa98b833aed82386ab19e507 eb6513fc61b30cfba58d4d7e80f94d14589090cf1d80b1df2e68088dc6104959ba0d583d585e9578ab0aec0cf36c48435eb52ed9ab4bbce7a5abe679c97ae2dbe35e8cc1d45b06dda3cf418665c57cbee4bbb47fa4caf78f4ee656fec237fe4eebbafa206e1ef2bd0ee4ae71bd0e9b2f54f91daadf1febfd7032381d636b733dcb3bf76fb14e23aff1f68ed3dbcf75c9b99c6f26,9c3759905e47e49cc7057c9237545d444f758535f991f7e8728f3a51 1594d74bf5dde444265d4c04dad9721ff3e34cbf622daf341fe16b96431f6c4df1f760d34f296eb97d98d560ad5286fec4dce1724f20b54fd7df51d4bf137add656c80546fb1bf516d62ee82baa992910ef4cc18b70f3f8698276fcfb44e0ec546c2c39cfd8ee91034ff9303058b4252462f86c823eb15bf481e6b79cc3a02218595b3658e8b37382bd5048eaed5fd02c37944e73b,733acdf9ced47f2e43936ed6c2ac0f824f4f5b5d2942522d4de5f6fc 4cfa1278903026f66fedd41374558be1b585d03c5c55dac94361df286d4bd39c7cb8037ed3b267b07c346626449d0cc5b0dd2cf221f7e4c3449a4be99985d2d5e67bff2923357ddeab5abcb4619f3a3a57b2cf928a022eb27676c6cf805689004fca4d41ea6c2d0a4789c7605f7bb838dd883b3ad3e6027e775bcf262881428099c7fff95b14c095ea130e0b9938a5e22fc52650f591,530438b7a86b16434c82713ef7392d25c5cf814c7c6408368c4f2eaf d3e65cb92cfa79662f6af493d696a07ccf32aaadcceff06e73e8d9f6f909209e66715d6e978788c49efb9087b170ecf3aa86d2d4d1a065ae0efc8924f365d676b3cb9e2bec918fd96d0b43dee83727c9a93bf56ca2b2e59adba85696546a815067fc7a78039629d4948d157e7b0d826d1bf8e81237bab7321312fdaa4d521744f988db6fdf04549d0fdca393d639c729af716e9c8bba48,84944eb018f8a124e3c969c037464ee32bacf8e58901d2e22291df9a 842cc583504539622d7f71e7e31863a2b885c56a0ba62db4c2a3f2fd12e79660dc7205ca29a0dc0a87db4dc62ee47a41db36b9ddb3293b9ac4baae7df5c6e7201e17f717ab56e12cad476be49608ad2d50309e7d48d2d8de4fa58ac3cfeafeee48c0a9eec88498e3efc51f54d300d828dddccb9d0b06dd021a29cf5cb5b2506915beb8a11998b8b886e0f9b7a80e97d91a7d01270f9a7717,1311da757c405f2a0eab110b0c515f05fcd59f5495a9704252da5ab8 6c4b0a0719573e57248661e98febe326571f9a1ca813d3638531ae28b4860f23c3a3a8ac1c250034a660e2d71e16d3acc4bf9ce215c6f15b1c0fc7e77d3d27157e66da9ceec9258f8f2bf9e02b4ac93793dd6e29e307ede3695a0df63cbdc0fc66fb770813eb149ca2a916911bee4902c47c7802e69e405fe3c04ceb5522792a5503fa829f707272226621f7c488a7698c0d69aa561be9f378,b5fdaead7e68333cedb5d4ad636ae7059eb31305e2c831787fd51265 51b7dbb7ce2ffeb427a91ccfe5218fd40f9e0b7e24756d4c47cd55606008bdc27d16400933906fd9f30effdd4880022d081155342af3fb6cd53672ab7fb5b3a3bcbe47be1fd3a2278cae8a5fd61c1433f7d350675dd21803746cadca574130f01200024c6340ab0cc2cf74f2234669f34e9009ef2eb94823d62b31407f4ba46f1a1eec41641e84d77727b59e746b8a671bef936f05be820759fa,2919fd6c376aec9f502893a9970b9ac6591855227c0e137be01705ac 83599d93f5561e821bd01a472386bc2ff4efbd4aed60d5821e84aae74d8071029810f5e286f8f17651cd27da07b1eb4382f754cd1c95268783ad09220f5502840370d494beb17124220f6afce91ec8a0f55231f9652433e5ce3489b727716cf4aeba7dcda20cd29aa9a859201253f948dd94395aba9e3852bd1d60dda7ae5dc045b283da006e1cbad83cc13292a315db5553305c628dd091146597,8910e7abc3daa506974ec13e35c43133ebfa91deec99bfad4954447e 2be9bf526c9d5a75d565dd11ef63b979d068659c7f026c08bea4af161d85a462d80e45040e91f4165c074c43ac661380311a8cbed59cc8e4c4518e80cd2c78ab1cabf66bff83eab3a80148550307310950d034a6286c93a1ece8929e6385c5e3bb6ea8a7c0fb6d6332e320e71cc4eb462a2a62e2bfe08f0ccad93e61bedb5dd0b786a728ab666f07e0576d189c92bf9fb20dca49ac2d3956d47385e2,f8b4a4a6fbb8c8432712b5b815b36685c86656c3f67d05bdbb44b49a ca76d3a12595a817682617006848675547d3e8f50c2210f9af906c0e7ce50b4460186fe70457a9e879e79fd4d1a688c70a347361c847ba0dd6aa52936eaf8e58a1be2f5c1c704e20146d366aeb3853bed9de9befe9569ac8aaea37a9fb7139a1a1a7d5c748605a8defb297869ebedd71d615a5da23496d11e11abbb126b206fa0a7797ee7de117986012d0362dcef775c2fe145ada6bda1ccb326bf644,926fe0044b12422d3e4bfa52c59252acc91dbf09c488ae9d31c7eb63 f76b85dc67421025d64e93096d1d712b7baf7fb001716f02d33b2160c2c882c310ef13a576b1c2d30ef8f78ef8d2f465007109aad93f74cb9e7d7bef7c9590e8af3b267c89c15db238138c45833c98cc4a471a7802723ef4c744a853cf80a0c2568dd4ed58a2c9644806f42104cee53628e5bdf7b63b0b338e931e31b87c24b146c6d040605567ceef5960df9e022cb469d4c787f4cba3c544a1ac91f95f,a4e4b4a573f7b8865d77d7e57f7d840a55261a96e5fedd763d0811f4 25b8c9c032ea6bcd733ffc8718fbb2a503a4ea8f71dea1176189f694304f0ff68e862a8197b839957549ef243a5279fc2646bd4c009b6d1edebf24738197abb4c992f6b1dc9ba891f570879accd5a6b18691a93c7d0a8d38f95b639c1daeb48c4c2f15ccf5b9d508f8333c32de78781b41850f261b855c4bebcc125a380c54d501c5d3bd07e6b52102116088e53d76583b0161e2a58d0778f091206aabd5a1,ebfd796b29f6059931732f98602185b6377c4e6e40bd26c810d6da96 21cfdc2a7ccb7f331b3d2eefff37e48ad9fa9c788c3f3c200e0173d99963e1cbca93623b264e920394ae48bb4c3a5bb96ffbc8f0e53f30e22956adabc2765f57fb761e147ecbf8567533db6e50c8a1f894310a94edf806dd8ca6a0e141c0fa7c9fae6c6ae65f18c93a8529e6e5b553bf55f25be2e80a9882bd37f145fecbeb3d447a3c4e46c21524cc55cdd62f521ab92a8ba72b897996c49bb273198b7b1c9e,3fb7392a6621b852312a374c14a679afb0e3d2ec6a2d147bd5e873f6 4e452ba42127dcc956ef4f8f35dd68cb225fb73b5bc7e1ec5a898bba2931563e74faff3b67314f241ec49f4a7061e3bd0213ae826bab380f1f14faab8b0efddd5fd1bb49373853a08f30553d5a55ccbbb8153de4704f29ca2bdeef0419468e05dd51557ccc80c0a96190bbcc4d77ecff21c66bdf486459d427f986410f883a80a5bcc32c20f0478bb9a97a126fc5f95451e40f292a4614930d054c851acd019ccf,8b3750655af5eca10cc4f291043590e2d19759253047a4c1dbc86577 fa85671df7dadf99a6ffee97a3ab9991671f5629195049880497487867a6c446b60087fac9a0f2fcc8e3b24e97e42345b93b5f7d3691829d3f8ccd4bb36411b85fc2328eb0c51cb3151f70860ad3246ce0623a8dc8b3c49f958f8690f8e3860e71eb2b1479a5cea0b3f8befd87acaf5362435eaeccb52f38617bc6c5c2c6e269ead1fbd69e941d4ad2012da2c5b21bcfbf98e4a77ab2af1f3fda3233f046d38f1dc8,d3a5004477bbb21cf7d0fca84e51a7a57e93fae7222570c01b00e89a e90847ae6797fbc0b6b36d6e588c0a743d725788ca50b6d792352ea8294f5ba654a15366b8e1b288d84f5178240827975a763bc45c7b0430e8a559df4488505e009c63da994f1403f407958203cebb6e37d89c94a5eacf6039a327f6c4dbbc7a2a307d976aa39e41af6537243fc218dfa6ab4dd817b6a397df5ca69107a9198799ed248641b63b42cb4c29bfdd7975ac96edfc274ac562d0474c60347a078ce4c25e88,75b77c36e394711dfd35c11aec8c033dcd7c18712f3b06d1fedc1077 f6d5c2b6c93954fc627602c00c4ca9a7d3ed12b27173f0b2c9b0e4a5939398a665e67e69d0b12fb7e4ceb253e8083d1ceb724ac07f009f094e42f2d6f2129489e846eaff0700a8d4453ef453a3eddc18f408c77a83275617fabc4ea3a2833aa73406c0e966276079d38e8e38539a70e194cc5513aaa457c699383fd1900b1e72bdfb835d1fd321b37ba80549b078a49ea08152869a918ca57f5b54ed71e4fd3ac5c06729,e52df7fdf957269ca0b0f46553d554fe2e6367019b379a1e4f4c7a9f cf8562b1bed89892d67ddaaf3deeb28246456e972326dbcdb5cf3fb289aca01e68da5d59896e3a6165358b071b304d6ab3d018944be5049d5e0e2bb819acf67a6006111089e6767132d72dd85beddcbb2d64496db0cc92955ab4c6234f1eea24f2d51483f2e209e4589bf9519fac51b4d061e801125e605f8093bb6997bc163d551596fe4ab7cfae8fb9a90f6980480ce0c229fd1675409bd788354daf316240cfe0af93eb,41853cd54692dbd478bb1e2d6cedcda1d139c838ac956a37c87f098f 2ace31abb0a2e3267944d2f75e1559985db7354c6e605f18dc8470423fca30b7331d9b33c4a4326783d1caae1b4f07060eff978e4746bf0c7e30cd61040bd5ec2746b29863eb7f103ebda614c4291a805b6a4c8214230564a0557bc7102e0bd3ed23719252f7435d64d210ee2aafc585be903fa41e1968c50fd5d5367926df7a05e3a42cf07e656ff92de73b036cf8b19898c0cb34557c0c12c2d8b84e91181af467bc75a9d1,1f2727d5132c453bd321a9fc7aa46fb8b3341d90988c41de8439d2f1 0d8d09aed19f1013969ce5e7eb92f83a209ae76be31c754844ea9116ceb39a22ebb6003017bbcf26555fa6624185187db8f0cb3564b8b1c06bf685d47f3286eda20b83358f599d2044bbf0583fab8d78f854fe0a596183230c5ef8e54426750eaf2cc4e29d3bdd037e734d863c2bd9789b4c243096138f7672c232314effdfc6513427e2da76916b5248933be312eb5dde4cf70804fb258ac5fb82d58d08177ac6f4756017fff5,5e745f8966d91eee013b061281bc20c79b0323000a15bbde7e0d25ae c3236b73deb7662bf3f3daa58f137b358ba610560ef7455785a9befdb035a066e90704f929bd9689cef0ce3bda5acf4480bceb8d09d10b098ad8500d9b6071dfc3a14af6c77511d81e3aa8844986c3bea6f469f9e02194c92868cd5f51646256798ff0424954c1434bdfed9facb390b07d342e992936e0f88bfd0e884a0ddb679d0547ccdec6384285a45429d115ac7d235a717242021d1dc35641f5f0a48e8445dba58e6cb2c8ea,cd2eeb7d48d0260986badf16f15aa09b5229b7830c73ee95b8cbf85a b39feb8283eadc63e8184b51df5ae3fd41aac8a963bb0be1cd08aa5867d8d910c669221e73243360646f6553d1ca05a84e8dc0de05b6419ec349ca994480193d01c92525f3fb3dcefb08afc6d26947bdbbfd85193f53b50609c6140905c53a6686b58e53a319a57b962331ede98149af3de3118a819da4d76706a0424b4e1d2910b0ed26af61d150ebcb46595d4266a0bd7f651ba47d0c7f179ca28545007d92e8419d48fdfbd744ce,3322fa727a0089f500a6a99d67419a76c7af77ef2893e8d385b42720 a983d54f503803e8c7999f4edbbe82e9084f422143a932ddddc47a17b0b7564a7f37a99d0786e99476428d29e29d3c197a72bfab1342c12a0fc4787fd7017d7a6174049ea43b5779169ef7472bdbbd941dcb82fc73aac45a8a94c9f2bd3477f61fd3b796f02a1b8264a214c6fea74b7051b226c722099ec7883a462b83b6afdd4009248b8a237f605fe5a08fe7d8b45321421ebba67bd70a0b00ddbf94baab7f359d5d1eea105f28dcfb,234c1bc03fd4c3d38dd4c736b59a9107911210d54e98b3a372f57236 e4d1c1897a0a866ce564635b74222f9696bf2c7f640dd78d7e2aca66e1b61c642bb03ea7536aae597811e9bf4a7b453ede31f97b46a5f0ef51a071a2b3918df16b152519ae3776f9f1edab4c2a377c3292e96408359d3613844d5eb393000283d5ad3401a318b12fd1474b8612f2bb50fb6a8b9e023a54d7dde28c43d6d8854c8d9d1155935c199811dbfc87e9e0072e90eb88681cc7529714f8fb8a2c9d88567adfb974ee205a9bf7b848,bf229f4017e1674d4cb87b70d3d777c7114f085d77216437b860d641 b10c59723e3dcadd6d75df87d0a1580e73133a9b7d00cb95ec19f5547027323be75158b11f80b6e142c6a78531886d9047b08e551e75e6261e79785366d7024bd7cd9cf322d9be7d57fb661069f2481c7bb759cd71b4b36ca2bc2df6d3a328faebdb995a9794a8d72155ed551a1f87c80bf6059b43fc764900b18a1c2441f7487743cf84e565f61f8dd2ece6b6ccc9444049197aaaf53e926fbee3bfca8be588ec77f29d211be89de18b15f6,f95de3f40e5faf58d3320b5b24acec7de6b4b7e54c2f80f6d314ab5a db11f609baba7b0ca634926b1dd539c8cbada24967d7add4d9876f77c2d80c0f4dcefbd7121548373582705cca2495bd2a43716fe64ed26d059cfb566b3364bd49ee0717bdd9810dd14d8fad80dbbdc4cafb37cc60fb0fe2a80fb4541b8ca9d59dce457738a9d3d8f641af8c3fd6da162dc16fc01aac527a4a0255b4d231c0be50f44f0db0b713af03d968fe7f0f61ed0824c55c4b5265548febd6aad5c5eedf63efe793489c39b8fd29d104ce,04b3bbbddfeba441005a48cebdbb1c6b6a674c2d9b224da29844374d bebd4f1a84fc8b15e4452a54bd02d69e304b7f32616aadd90537937106ae4e28de9d8aab02d19bc3e2fde1d651559e296453e4dba94370a14dbbb2d1d4e2022302ee90e208321efcd8528ad89e46dc839ea9df618ea8394a6bff308e7726bae0c19bcd4be52da6258e2ef4e96aa21244429f49ef5cb486d7ff35cac1bacb7e95711944bccb2ab34700d42d1eb38b5d536b947348a458ede3dc6bd6ec547b1b0cae5b257be36a7124e1060c170ffa,6c1809cd88a0edb211986359498e0ac37e25e8eb62946938c37d3c26 5aca56a03a13784bdc3289d9364f79e2a85c12276b49b92db0adaa4f206d5028f213f678c3510e111f9dc4c1c1f8b6acb17a6413aa227607c515c62a733817ba5e762cc6748e7e0d6872c984d723c9bb3b117eb8963185300a80bfa65cde495d70a46c44858605fccbed086c2b45cef963d33294dbe9706b13af22f1b7c4cd5a001cfec251fba18e722c6e1c4b1166918b4f6f48a98b64b3c07fc86a6b17a6d0480ab79d4e6415b520f1c484d675b1,d2744a1bbb34718fcbb614c21e1fccd0ff88615cb82aa03803ab9460 a5aad0e4646a32c85cfcac73f02fc5300f1982fabb2f2179e28303e447854094cdfc854310e5c0f60993ceff54d84d6b46323d930adb07c17599b35b505f09e784bca5985e0172257797fb53649e2e9723efd16865c31b5c3d5113b58bb0bfc8920fabdda086d7537e66d709d050bd14d0c960873f156fad5b3d3840cdfcdc9be6af519db262a27f40896ab25cc39f96984d650611c0d5a3080d5b3a1bf186abd42956588b3b58cd948970d298776060,f6115f635d98b572fd1ba85763eccf8bf273fbf7b96f0db0120ca8ad 06cbbe67e94a978203ead6c057a1a5b098478b4b4cbef5a97e93c8e42f5572713575fc2a884531d7622f8f879387a859a80f10ef02708cd8f7413ab385afc357678b9578c0ebf641ef076a1a30f1f75379e9dcb2a885bdd295905ee80c0168a62a9597d10cf12dd2d8cee46645c7e5a141f6e0e23aa482abe5661c16e69ef1e28371e2e236c359ba4e92c25626a7b7ff13f6ea4ae906e1cfe163e91719b1f750a96cbde5fbc953d9e576cd216afc90323a,5ee73a4f13a08a2d9b1e52df88972ffb9f03b843a387ee52b00edcee f1c528cf7739874707d4d8ad5b98f7c77169de0b57188df233b2dc8a5b31eda5db4291dd9f68e6bad37b8d7f6c9c0044b3bf74bbc3d7d1798e138709b0d75e7c593d3cccdc1b20c7174b4e692add820ace262d45ccfae2077e878796347168060a162ecca8c38c1a88350bd63bb539134f700fd4addd5959e255337daa06bc86358fabcbefdfb5bc889783d843c08aadc6c4f6c36f65f156e851c9a0f917e4a367b5ad93d874812a1de6a7b93cd53ad97232,44bc64559bdb910b7079e0261ff8b49dba141b32ecbcb70b3abdfbf9 9d9f3a7ecd51b41f6572fd0d0881e30390dfb780991dae7db3b47619134718e6f987810e542619dfaa7b505c76b7350c6432d8bf1cfebdf1069b90a35f0d04cbdf130b0dfc7875f4a4e62cdb8e525aadd7ce842520a482ac18f09442d78305fe85a74e39e760a4837482ed2f437dd13b2ec1042afcf9decdc3e877e50ff4106ad10a525230d11920324a81094da31deab6476aa42f20c84843cfc1c58545ee80352bdd3740dd6a16792ae2d86f11641bb717c2,de82adde823c312f83b3d4c0bd35aa0395ab747abbc22a70973e2a6c 5179888724819fbad3afa927d3577796660e6a81c52d98e9303261d5a4a83232f6f758934d50aa83ff9e20a5926dfebaac49529d006eb923c5ae5048ed544ec471ed7191edf46363383824f915769b3e688094c682b02151e5ee01e510b431c8865aff8b6b6f2f59cb6d129da79e97c6d2b8fa6c6da3f603199d2d1bcab547682a81cd6cf65f6551121391d78bcc23b5bd0e922ec6d8bf97c952e84dd28aef909aba31edb903b28fbfc33b7703cd996215a11238,b1ba910c9f5e126607ff2531affecba791261e354e2c1a81fda7a756 576ef3520d30b7a4899b8c0d5e359e45c5189add100e43be429a02fb3de5ff4f8fd0e79d9663acca72cd29c94582b19292a557c5b1315297d168fbb54e9e2ecd13809c2b5fce998edc6570545e1499dbe7fb74d47cd7f35823b212b05bf3f5a79caa34224fdd670d335fcb106f5d92c3946f44d3afcbae2e41ac554d8e6759f332b76be89a0324aa12c5482d1ea3ee89ded4936f3e3c080436f539fa137e74c6d3389bdf5a45074c47bc7b20b0948407a66d855e2f,3ef8d4a6bb8e172374e806e8d65d5f81b3fdb36299de1c0ccc26dc65 0df2152fa4f4357c8741529dd77e783925d3d76e95bafa2b542a2c33f3d1d117d159cf473f82310356fee4c90a9e505e70f8f24859656368ba09381fa245eb6c3d763f3093f0c89b972e66b53d59406d9f01aea07f8b3b615cac4ee4d05f542e7d0dab45d67ccccd3a606ccbeb31ea1fa7005ba07176e60dab7d78f6810ef086f42f08e595f0ec217372b98970cc6321576d92ce38f7c397a403bada1548d205c343ac09deca86325373c3b76d9f32028fea8eb32515,1c89d6460b3f13584bf8319ee538f24c850ca771a51ecc547652bae3 3e15350d87d6ebb5c8ad99d42515cfe17980933c7a8f6b8bbbf0a63728cefaad2052623c0bd5931839112a48633fb3c2004e0749c87a41b26a8b48945539d1ff41a4b269462fd199bfecd45374756f55a9116e92093ac99451aefb2af9fd32d6d7f5fbc7f7a540d5097c096ebc3b3a721541de073a1cc02f7fb0fb1b9327fb0b1218ca49c9487ab5396622a13ae546c97abdef6b56380dda7012a8384091b6656d0ab272d363cea78163ff765cdd13ab1738b940d16cae,99981766cfe3b1888f2a008efa1088016cb29993567f9bb74b5c4d3c c38d6b0b757cb552be40940ece0009ef3b0b59307c1451686f1a22702922800d58bce7a636c1727ee547c01b214779e898fc0e560f8ae7f61bef4d75eaa696b921fd6b735d171535e9edd267c192b99880c87997711002009095d8a7a437e258104a41a505e5ef71e5613ddd2008195f0c574e6ba3fe40099cfa116e5f1a2fa8a6da04badcb4e2d5d0de31fdc4800891c45781a0aac7c907b56d631fca5ce8b2cde620d11d1777ed9fa603541de794ddc5758fcd5fad78c0,0215e91ef992dcc7e82d16a2c9b27921c1310c182f59df8bed5151e8 8d2de3f0b37a6385c90739805b170057f091cd0c7a0bc951540f26a5a75b3e694631bb64c7635eed316f51318e9d8de13c70a2aba04a14836855f35e480528b776d0a1e8a23b547c8b8d6a0d09b241d3be9377160cca4e6793d00a515dc2992cb7fc741daca171431da99cce6f7789f129e2ac5cf65b40d703035cd2185bb936c82002daf8cbc27a7a9e554b06196630446a6f0a14ba155ed26d95bd627b7205c072d02b60db0fd7e49ea058c2e0ba202daff0de91e845cf79,e52ea6714a3978810dc19e999c32516d4acf0cbcd67e917a4feb56d0 c464bbdad275c50dcd983b65ad1019b9ff85a1e71c807f3204bb2c921dc31fbcd8c5fc45868ae9ef85b6c9b83bba2a5a822201ed68586ec5ec27fb2857a5d1a2d09d09115f22dcc39fe61f5e1ba0ff6e8b4acb4c6da748be7f3f0839739394ff7fa8e39f7f7e84a33c3866875c01bcb1263c9405d91908e9e0b50e7459fabb63d8c6bbb73d8e3483c099b55bc30ff092ff68b6adedfd477d63570c9f5515847f36e24ba0b705557130cec57ebad1d0b31a378e91894ee26e3a04,4c3d6321133ef74810e60d3190fff3cf20c8521caea6ff782d7e3bab 8b8d68bb8a75732fe272815a68a1c9c5aa31b41dedc8493e76525d1d013d33cebd9e21a5bb95db2616976a8c07fcf411f5f6bc6f7e0b57aca78cc2790a6f9b898858ac9c79b165ff24e66677531e39f572be5d81eb3264524181115f32780257bfb9aeec6af12af28e587cac068a1a2953b59ad680f4c245b2e3ec36f59940d37e1d3db38e13edb29b5c0f404f6ff87f80fc8be7a225ff22fbb9c8b6b1d7330c57840d24bc75b06b80d30dad6806544d510af6c4785e823ac3e0b8,b9f006dbf853c023debe2f40035a7e83c49cde656ec86a4621950f3e 6b018710446f368e7421f1bc0ccf562d9c1843846bc8d98d1c9bf7d9d6fcb48bfc3bf83b36d44c4fa93430af75cd190bde36a7f92f867f58a803900df8018150384d85d82132f123006ac2aeba58e02a037fe6afbd65eca7c44977dd3dc74f48b6e7a1bfd5cc4dcf24e4d52e92bd4455848e4928b0eac8b7476fe3cc03e862aa4dff4470dbfed6de48e410f25096487ecfc32a27277f3f5023b2725ade461b1355889554a8836c9cf53bd767f5737d55184eea1ab3f53edd0976c485,0a5aa6bc564b8cb2f5fd7255455c0e7a5dace0050c3bbd259fde2ab9 c9534a24714bd4be37c88a3da1082eda7cabd154c309d7bd670dccd95aa535594463058a29f79031d6ecaa9f675d1211e9359be82669a79c855ea8d89dd38c2c761ddd0ec0ce9e97597432e9a1beae062cdd71edfdfd464119be9e69d18a7a7fd7ce0e2106f0c8b0abf4715e2ca48ef9f454dc203c96656653b727083513f8efb86e49c513bb758b3b052fe21f1c05bb33c37129d6cc81f1aef6adc45b0e8827a830fe545cf57d0955802c117d23ccb55ea28f95c0d8c2f9c5a242b33f,8ca4e085f04956b5b16520e3a767f8ba937364fe5f4460288ad4f231 07906c87297b867abf4576e9f3cc7f82f22b154afcbf293b9319f1b0584da6a40c27b32e0b1b7f412c4f1b82480e70a9235b12ec27090a5a33175a2bb28d8adc475cefe33f7803f8ce27967217381f02e67a3b4f84a71f1c5228e0c2ad971373f6f672624fcea8d1a9f85170fad30fa0bbd25035c3b41a6175d467998bd1215f6f3866f53847f9cf68ef3e2fbb54bc994de2302b829c5eea68ec441fcbafd7d16ae4fe9fff98bf00e5bc2ad54dd91ff9fda4dd77b6c754a91955d1fbaad0,c0aa34391cb3104c41995f3de782f012d421585e5384e047a997062f 588e94b9054abc2189df69b8ba34341b77cdd528e7860e5defcaa79b0c9a452ad4b82aa306be84536eb7cedcbe058d7b84a6aef826b028b8a0271b69ac3605a9635ea9f5ea0aa700f3eb7835bc54611b922964300c953efe7491e3677c2cebe0822e956cd16433b02c68c4a23252c3f9e151a416b4963257b783e038f6b4d5c9f110f871652c7a649a7bcedcbccc6f2d0725bb903cc196ba76c76aa9f10a190b1d1168993baa9ffc96a1655216773458bec72b0e39c9f2c121378feab4e76a,33c10010a0b810386ae62f3f927deafc0d5af0af3dc7a8355cb779cd 08959a7e4baae874928813364071194e2939772f20db7c3157078987c557c2a6d5abe68d520eef3dc491692e1e21bcd880adebf63bb4213b50897fa005256ed41b5690f78f52855c8d9168a4b666fce2da2b456d7a7e7c17ab5f2fb1ee90b79e698712e963715983fd07641ae4b4e9dc73203fac1ae11fa1f8c7941fcc82eab247addb56e2638447e9d609e610b60ce086656aaebf1da3c8a231d7d94e2fd0afe46b391ff14a72eaeb3f44ad4df85866def43d4781a0b3578bc996c87970b132,842a2e13d2728ca55b42d784bb6bc4b889e56775ad56bf75789cc57a cb2a234f45e2ecd5863895a451d389a369aab99cfef0d5c9ffca1e6e63f763b5c14fb9b478313c8e8c0efeb3ac9500cf5fd93791b789e67eac12fd038e2547cc8e0fc9db591f33a1e4907c64a922dda23ec9827310b306098554a4a78f050262db5b545b159e1ff1dca6eb734b872343b842c57eafcfda8405eedbb48ef32e99696d135979235c3a05364e371c2d76f1902f1d83146df9495c0a6c57d7bf9ee77e80f9787aee27be1fe126cdc9ef893a4a7dcbbc367e40fe4e1ee90b42ea25af01,a576281cfaa89dcefb1d37772400ba4cabceef33cba2f833336a74f2 d16beadf02ab1d4dc6f88b8c4554c51e866df830b89c06e786a5f8757e8909310af51c840efe8d20b35331f4355d80f73295974653ddd620cdde4730fb6c8d0d2dcb2b45d92d4fbdb567c0a3e86bd1a8a795af26fbf29fc6c65941cddb090ff7cd230ac5268ab4606fccba9eded0a2b5d014ee0c34f0b2881ac036e24e151be89eeb6cd9a7a790afccff234d7cb11b99ebf58cd0c589f20bdac4f9f0e28f75e3e04e5b3debce607a496d848d67fa7b49132c71b878fd5557e082a18eca1fbda94d4b,b1579476972d42fa388feeb8424834672c4d1a4225ee2db89dea7359 8f65f6bc59a85705016e2bae7fe57980de3127e5ab275f573d334f73f8603106ec3553016608ef2dd6e69b24be0b7113bf6a760ba6e9ce1c48f9e186012cf96a1d4849d75df5bb8315387fd78e9e153e76f8ba7ec6c8849810f59fb4bb9b004318210b37f1299526866f44059e017e22e96cbe418699d014c6ea01c9f0038b10299884dbec3199bb05adc94e955a1533219c1115fed0e5f21228b071f40dd57c4240d98d37b73e412fe0fa4703120d7c0c67972ed233e5deb300a22605472fa3a3ba86,a32ec69648b4fd9ba2431ed0fef036188c19788d7ddf0d25b6b03ecd 84891e52e0d451813210c3fd635b39a03a6b7a7317b221a7abc270dfa946c42669aacbbbdf801e1584f330e28c729847ea14152bd637b3d0f2b38b4bd5bf9c791c58806281103a3eabbaede5e711e539e6a8b2cf297cf351c078b4fa8f7f35cf61bebf8814bf248a01d41e86c5715ea40c63f7375379a7eb1d78f27622fb468ab784aaaba4e534a6dfd1df6fa15511341e725ed2e87f98737ccb7b6a6dfae416477472b046bf1811187d151bfa9f7b2bf9acdb23a3be507cdf14cfdf517d2cb5fb9e4ab6,2b8cf4c8d9e6717ebce4f0584ada59a8acdfab98ad7e33f355b77095 fdd7a9433a3b4afabd7a3a5e3457e56debf78e84b7a0b0ca0e8c6d53bd0c2dae31b2700c6128334f43981be3b213b1d7a118d59c7e6b6493a86f866a1635c12859cfb9ad17460a77b4522a5c1883c3d6acc86e6162667ec414e9a104aa892053a2b1d72165a855bacd8faf8034a5dd9b716f47a0818c09bb6baf22aa503c06b4ca261f557761989d2afbd88b6a678ad128af68672107d0f1fc73c5ca740459297b3292b281e93bceb761bde7221c3a55708e5ec84472cddcaa84ecf23723cc0991355c6280,e583849474f3c759b7a3093c7abadd61425073aea2678e278215708d 70a40bfbef92277a1aad72f6b79d0177197c4ebd432668cfec05d099accb651062b5dff156c0b27336687a94b26679cfdd9daf7ad204338dd9c4d14114033a5c225bd11f217b5f4732da167ee3f939262d4043fc9cba92303b7b5e96aea12adda64859df4b86e9ee0b58e39091e6b188b408ac94e1294a8911245ee361e60e601eff58d1d37639f3753bec80ebb4efde25817436076623fc65415fe51d1b0280366d12c554d86743f3c3b6572e400361a60726131441ba493a83fbe9afda90f7af1ae717238d,10795d3abcc077f4a1f5b5653c478f9db42110ea9f34925470b3cd11 74356e449f4bf8644f77b14f4d67cb6bd9c1f5ae357621d5b8147e562b65c66585caf2e491b48529a01a34d226d436959153815380d5689e30b35357cdac6e08d3f2b0e88e200600d62bd9f5eaf488df86a4470ea227006182e44809009868c4c280c43d7d64a5268fa719074960087b3a6abc837882f882c837834535929389a12b2c78187e2ea07ef8b8eef27dc85002c3ae35f1a50bee6a1c48ba7e175f3316670b27983472aa6a61eed0a683a39ee323080620ea44a9f74411ae5ce99030528f9ab49c79f2,31a843b4a9f332f3b6b099843540aa70651b26b80e0bd75b77f3aa9b 8c3798e51bc68482d7337d3abb75dc9ffe860714a9ad73551e120059860dde24ab87327222b64cf774415a70f724cdf270de3fe47dda07b61c9ef2a3551f45a5584860248fabde676e1cd75f6355aa3eaeabe3b51dc813d9fb2eaa4f0f1d9f834d7cad9c7c695ae84b329385bc0bef895b9f1edf44a03d4b410cc23a79a6b62e4f346a5e8dd851c2857995ddbf5b2d717aeb847310e1f6a46ac3d26a7f9b44985af656d2b7c9406e8a9e8f47dcb4ef6b83caacf9aefb6118bfcff7e44bef6937ebddc89186839b77,1029ca117957d80f3c859e8394dd34969331ca3bcedc436b1eab0849 fa56bf730c4f8395875189c10c4fb251605757a8fecc31f9737e3c2503b02608e6731e85d7a38393c67de516b85304824bfb135e33bf22b3a23b913bf6acd2b7ab85198b8187b2bcd454d5e3318cacb32fd6261c31ae7f6c54ef6a7a2a4c9f3ecb81ce3555d4f0ad466dd4c108a90399d70041997c3b25345a9653f3c9a6711ab1b91d6a9d2216442da2c973cbd685ee7643bfd77327a2f7ae9cb283620a08716dfb462e5c1d65432ca9d56a90e811443cd1ecb8f0de179c9cb48ba4f6fec360c66f252f6e64edc96b,6096e9914c1ac93a6809de7ad91119c637b00bbd64dcc3e1fac1e1ed b6134f9c3e91dd8000740d009dd806240811d51ab1546a974bcb18d344642baa5cd5903af84d58ec5ba17301d5ec0f10ccd0509cbb3fd3fff9172d193af0f782252fd1338c7244d40e0e42362275b22d01c4c3389f19dd69bdf958ebe28e31a4ffe2b5f18a87831cfb7095f58a87c9fa21db72ba269379b2dc2384b3da953c7925761fed324620acea435e52b424a7723f6a2357374157a34cd8252351c25a1b232826cefe1bd3e70ffc15a31e7c0598219d7f00436294d11891b82497bc78aa5363892a2495df8c1eef,f583f07df2327887c6f10a9b1d509a744f3c294a4227976e3c3722e8 c941cdb9c28ab0a791f2e5c8e8bb52850626aa89205bec3a7e22682313d198b1fa33fc7295381354858758ae6c8ec6fac3245c6e454d16fa2f51c4166fab51df272858f2d603770c40987f64442d487af49cd5c3991ce858ea2a60dab6a65a34414965933973ac2457089e359160b7cdedc42f29e10a91921785f6b7224ee0b349393cdcff6151b50b377d609559923d0984cda6000829b916ab6896693ef6a2199b3c22f7dc5500a15b8258420e314c222bc000bc4e5413e6dd82c993f8330f5c6d1be4bc79f08a1a0a46,a9f43b9621fc5902df2458fd53d0cde90aae7000855c67d853c7937a 4499efffac4bcea52747efd1e4f20b73e48758be915c88a1ffe5299b0b005837a46b2f20a9cb3c6e64a9e3c564a27c0f1c6ad1960373036ec5bfe1a8fc6a435c2185ed0f114c50e8b3e4c7ed96b06a036819c9463e864a58d6286f785e32a804443a56af0b4df6abc57ed5c2b185ddee8489ea080deeee66aa33c2e6dab36251c402682b6824821f998c32163164298e1fafd31babbcffb594c91888c6219079d907fdb438ed89529d6d96212fd55abe20399dbefd342248507436931cdead496eb6e4a80358acc78647d043,e9675faac37c93aa61ff9730679a3d1209adbad4652582dff5b1baaf eecbb8fdfa4da62170fd06727f697d81f83f601ff61e478105d3cb7502f2c89bf3e8f56edd469d049807a38882a7eefbc85fc9a950952e9fa84b8afebd3ce782d4da598002827b1eb98882ea1f0a8f7aa9ce013a6e9bc462fb66c8d4a18da21401e1b93356eb12f3725b6db1684f2300a98b9a119e5d27ff704affb618e12708e77e6e5f34139a5a41131fd1d6336c272a8fc37080f041c71341bee6ab550cb4a20a6ddb6a8e0299f2b14bc730c54b8b1c1c487b494bdccfd3a53535ab2f231590bf2c4062fd2ad58f906a2d0d,cdb500740812a0d70c68d0097dcc7aca86ec066c89d36642879a74a5 e64f3e4ace5c8418d65fec2bc5d2a303dd458034736e3b0df719098be7a206deaf52d6ba82316caf330ef852375188cde2b39cc94aa449578a7e2a8e3f5a9d68e816b8d16889fbc0ebf0939d04f63033ae9ae2bdab73b88c26d6bd25ee460ee1ef58fb0afa92cc539f8c76d3d097e7a6a63ebb9b5887edf3cf076028c5bbd5b9db3211371ad3fe121d4e9bf44229f4e1ecf5a0f9f0eba4d5ceb72878ab22c3f0eb5a625323ac66f7061f4a81fac834471e0c59553f108475fe290d43e6a055ae3ee46fb67422f814a68c4be3e8c9,66f205d7147991a940affb7401b692275338519a97608c584362ffee d2cb2d733033f9e91395312808383cc4f0ca974e87ec68400d52e96b3fa6984ac58d9ad0938dde5a973008d818c49607d9de2284e7618f1b8aed8372fbd52ed54557af4220fac09dfa8443011699b97d743f8f2b1aef3537ebb45dcc9e13dfb438428ee190a4efdb3caeb7f3933117bf63abdc7e57beb4171c7e1ad260ab0587806c4d137b6316b50abc9cce0dff3acada47bbb86be777e617bbe578ff4519844db360e0a96c6701290e76bb95d26f0f804c8a4f2717eac4e7de9f2cff3bbc55a17e776c0d02856032a6cd10ad2838,909fb29277ab2c4ce4279c485d4fba7e18ff1a88c66daf7acf630310 f2998955613dd414cc111df5ce30a995bb792e260b0e37a5b1d942fe90171a4ac2f66d4928d7ad377f4d0554cbf4c523d21f6e5f379d6f4b028cdcb9b1758d3b39663242ff3cb6ede6a36a6f05db3bc41e0d861b384b6dec58bb096d0a422fd542df175e1be1571fb52ae66f2d86a2f6824a8cfaacbac4a7492ad0433eeb15454af8f312b3b2a577750e3efbd370e8a8cac1582581971fba3ba4bd0d76e718dacf8433d33a59d287f8cc92234e7a271041b526e389efb0e40b6a18b3aaf658e82ed1c78631fd23b4c3eb27c3faec8685,ed535ec075c983a08f7d7ad5714ebc846f25e8661492b2b31978edf2 447797e2899b72a356ba55bf4df3acca6cdb1041eb477bd1834a9f9acbc340a294d729f2f97df3a610be0ff15edb9c6d5db41644b9874360140fc64f52aa03f0286c8a640670067a84e017926a70438db1bb361defee7317021425f8821def26d1efd77fc853b818545d055adc9284796e583c76e6fe74c9ac2587aa46aa8f8804f2feb5836cc4b3ababab8429a5783e17d5999f32242eb59ef30cd7adabc16d72dbdb097623047c98989f88d14eaf02a7212be16ec2d07981aaa99949ddf89ecd90333a77bc4e1988a82abf7c7caf3291,87f15cc2aec24168d8bbaf188825f3bb0178cfb5c5899f2fd042ce89 9f2c18ade9b380c784e170fb763e9aa205f64303067eb1bcea93df5dac4bf5a2e00b78195f808df24fc76e26cb7be31dc35f0844cded1567bba29858cffc97fb29010331b01d6a3fb3159cc1b973d255da9843e34a0a4061cabdb9ed37f241bfabb3c20d32743f4026b59a4ccc385a2301f83c0b0a190b0f2d01acb8f0d41111e10f2f4e149379275599a52dc089b35fdd5234b0cfb7b6d8aebd563ca1fa653c5c021dfd6f5920e6f18bfafdbecbf0ab00281333ed50b9a999549c1c8f8c63d7626c48322e9791d5ff72294049bde91e73f8,31bb872545217fdbf11077e86b1ee451475c31dc5e0e636efbe50825 ae159f3fa33619002ae6bcce8cbbdd7d28e5ed9d61534595c4c9f43c402a9bb31f3b301cbfd4a43ce4c24cd5c9849cc6259eca90e2a79e01ffbac07ba0e147fa42676a1d668570e0396387b5bcd599e8e66aaed1b8a191c5a47547f61373021fa6deadcb55363d233c24440f2c73dbb519f7c9fa5a8962efd5f6252c0407f190dfefad707f3c7007d69ff36b8489a5b6b7c557e79dd4f50c06511f599f56c896b35c917b63ba35c6ff8092baf7d1658e77fc95d8a6a43eeb4c01f33f03877f92774be89c1114dd531c011e53a34dc248a2f0e6,26d69f0ae8e4dc61c6354ff570fdd913caf21c18697f0371f2d323af 3b8e97c5ffc2d6a40fa7de7fcefc90f3b12c940e7ab415321e29ee692dfac799b009c99dcddb708fce5a178c5c35ee2b8617143edc4c40b4d313661f49abdd93cea79d117518805496fe6acf292c4c2a1f76b403a97d7c399daf85b46ad84e16246c67d6836757bde336c290d5d401e6c1386ab32797af6bb251e9b2d8fe754c47482b72e0b394eab76916126fd68ea7d65eb93d59f5b4c5ac40f7c3b37e7f3694f29424c24af8c8f0ef59cd9dbf1d28e0e10f799a6f78cad1d45b9db3d7dee4a7059abe99182714983b9c9d44d7f5643596d4f3,175393534d90b614b158105c95e18a1052a56d0e775ea1cf51ad5853 3434ec31b10fafdbfeec0dd6bd94e80f7ba9dca19ef075f7eb017512af66d6a4bcf7d16ba0819a1892a6372f9b35bcc7ca8155ee19e8428bc22d214856ed5fa9374c3c09bde169602cc219679f65a1566fc7316f4cc3b631a18fb4449fa6afa16a3db2bc4212eff539c67cf184680826535589c7111d73bffce431b4c40492e763d9279560aaa38eb2dc14a212d723f994a1fe656ff4dd14551ce4e7c621b2aa5604a10001b2878a897a28a08095c325e10a26d2fb1a75bfd64c250309bb55a44f23bbac0d5516a1c687d3b41ef2fbbf9cc56d4739,3decd71da22639985cf242f2fae7172459042c826495c8d8d95c3719 7c7953d81c8d208fd1c97681d48f49dd003456de60475b84070ef4847c333b74575b1fc8d2a186964485a3b8634feaa3595aaa1a2f4595a7d6b6153563dee31bbac443c8a33eed6d5d956a980a68366c2527b550ee950250dfb691eacbd5d56ae14b970668be174c89df2fea43ae52f13142639c884fd62a3683c0c3792f0f24ab1318bcb27e21f4737fab62c77ea38bc8fd1cf41f7dab64c13febe7152bf5bb7ab5a78f5346d43cc741cb6f72b7b8980f268b68bf62abdfb1577a52438fe14b591498cc95f071228460c7c5d5ceb4a7bde588e7f21c,2d0a56864bbec6449fbf7b2eae53da46647183b56fa4edb1602e5163 7a6a4f4fdc59a1d223381ae5af498d74b7252ecf59e389e49130c7eaee626e7bd9897effd92017f4ccde66b0440462cdedfd352d8153e6a4c8d7a0812f701cc737b5178c2556f07111200eb627dbc299caa792dfa58f35935299fa3a3519e9b03166dffa159103ffa35e8577f7c0a86c6b46fe13db8e2cdd9dcfba85bdddcce0a7a8e155f81f712d8e9fe646153d3d22c811bd39f830433b2213dd46301941b59293fd0a33e2b63adbd95239bc01315c46fdb678875b3c81e053a40f581cfbec24a1404b1671a1b88a6d06120229518fb13a74ca0ac5ae,a0ff9e11fbb451943a17e3ac510de0b582bb072b16dc4e03f9e4019f d9faa14cebe9b7de551b6c0765409a33938562013b5e8e0e1e0a6418df7399d0a6a771fb81c3ca9bd3bb8e2951b0bc792525a294ebd1083688806fe5e7f1e17fd4e3a41d00c89e8fcf4a363caedb1acb558e3d562f1302b3d83bb886ed27b76033798131dab05b4217381eaaa7ba15ec820bb5c13b516dd640eaec5a27d05fdfca0f35b3a5312146806b4c0275bcd0aaa3b2017f346975db566f9b4d137f4ee10644c2a2da66deeca5342e236495c3c6280528bfd32e90af4cd9bb908f34012b52b4bc56d48cc8a6b59bab014988eabd12e1a0a1c2e170e7,4fefbe74645949a1291c6f6f05eaf4b780ea01ec5ea5105ecdcb984a 2d8427433d0c61f2d96cfe80cf1e932265a191365c3b61aaa3d6dcc039f6ba2ad52a6a8cc30fc10f705e6b7705105977fa496c1c708a277a124304f1fc40911e7441d1b5e77b951aad7b01fd5db1b377d165b05bbf898042e39660caf8b279fe5229d1a8db86c0999ed65e53d01ccbc4b43173ccf992b3a14586f6ba42f5fe30afa8ae40c5df29966f9346da5f8b35f16a1de3ab6de0f477d8d8660918060e88b9b9e9ca6a4207033b87a812dbf5544d39e4882010f82b6ce005f8e8ff6fe3c3806bc2b73c2b83afb704345629304f9f86358712e9fae3ca3e,7cc9eebbe0df46a398233fa31286f8a530292b53e48ba54b6ae40472 5e19d97887fcaac0387e22c6f803c34a3dacd2604172433f7a8a7a526ca4a2a1271ecfc5d5d7be5ac0d85d921095350dfc65997d443c21c8094e0a3fefd2961bcb94aed03291ae310ccda75d8ace4bc7d89e7d3e5d1650bda5d668b8b50bfc8e608e184f4d3a9a2badc4ff5f07e0c0bc8a9f2e0b2a26fd6d8c550008faaab75fd71af2a424bec9a7cd9d83fad4c8e9319115656a8717d3b523a68ff8004258b9990ed362308461804ba3e3a7e92d8f2ffae5c2fba55ba5a3c27c0a2f71bd711d2fe1799c2adb31b200035481e9ee5c4adf2ab9c0fa50b23975cf,03d718da677c4018e52288bb30e4e6e732a16144931176f0a8c73970 c8e976ab4638909387ce3b8d4e510c3230e5690e02c45093b1d297910abc481e56eea0f296f98379dfc9080af69e73b2399d1c143bee80ae1328162ce1ba7f6a8374679b20aacd380eb4e61382c99998704d62701afa914f9a2705cdb065885f50d086c3eb5753700c387118bb142f3e6da1e988dfb31ac75d7368931e45d1391a274b22f83ceb072f9bcabc0b216685bfd789f5023971024b1878a205442522f9ea7d8797a4102a3df41703768251fd5e017c85d1200a464118aa35654e7ca39f3c375b8ef8cbe7534dbc64bc20befb417cf60ec92f63d9ee7397,a9abb430fc1b3d8c6cdeb5319878e7b12b118e2e03f40562a376418c 7145fa124b7429a1fc2231237a949ba7201bcc1822d3272de005b682398196c25f7e5cc2f289fbf44415f699cb7fe6757791b1443410234ae061edf623359e2b4e32c19bf88450432dd01caa5eb16a1dc378f391ca5e3c4e5f356728bddd4975db7c890da8bbc84cc73ff244394d0d48954978765e4a00b593f70f2ca082673a261ed88dbcef1127728d8cd89bc2c597e9102ced6010f65fa75a14ebe467fa57ce3bd4948b6867d74a9df5c0ec6f530cbf2ee61ce6f06bc8f2864dff5583776b31df8c7ffcb61428a56bf7bd37188b4a5123bbf338393af46eda85e6,4a7a58b337872189a06b53b6bcc50c29ef9d0bbc491832907af14ec8 7fdfadcc9d29bad23ae038c6c65cda1aef757221b8872ed3d75ff8df7da0627d266e224e812c39f7983e4558bfd0a1f2bef3feb56ba09120ef762917b9c093867948547aee98600d10d87b20106878a8d22c64378bf634f7f75900c03986b077b0bf8b740a82447b61b99fee5376c5eb6680ec9e3088f0bdd0c56883413d60c1357d3c811950e5890e7600103c916341b80c743c6a852b7b4fb60c3ba21f3bc15b8382437a68454779cf3cd7f9f90ccc8ef28d0b706535b1e4108eb5627bb45d719cb046839aee311ca1abdc8319e050d67972cb35a6b1601b25dbf487,808e01cd273919ba1bff011e0e7094ec6d5c4962912b08f11965ab58 988638219fd3095421f826f56e4f09e356296b628c3ce6930c9f2e758fd1a80c8273f2f61e4daae65c4f110d3e7ca0965ac7d24e34c0dc4ba2d6ff0bf5bbe93b3585f354d7543cb542a1aa54674d375077f2d360a8f4d42f3db131c3b7ab7306267ba107659864a90c8c909460a73621d1f5d9d3fd95beb19b23db1cb6c0d0fba91d36891529b8bd8263caa1bab56a4affaed44962df096d8d5b1eb845ef31188b3e10f1af811a13f156beb7a288aae593ebd1471b624aa1a7c6adf01e2200b3d72d88a3aed3100c88231e41efc376906f0b580dc895f080fda5741db1cb,dcbcc30b6909fdf00650f1a10cfbbd419408f9d37f378c5ca693b803 5aab62756d307a669d146aba988d9074c5a159b3de85151a819b117ca1ff6597f6156e80fdd28c9c3176835164d37da7da11d94e09add770b68a6e081cd22ca0c004bfe7cd283bf43a588da91f509b27a6584c474a4a2f3ee0f1f56447379240a5ab1fb77fdca49b305f07ba86b62756fb9efb4fc225c86845f026ea542076b91a0bc2cdd136e122c659be259d98e5841df4c2f60330d4d8cdee7bf1a0a244524eecc68ff2aef5bf0069c9e87a11c6e519de1a4062a10c83837388f7ef58598a3846f49d499682b683c4a062b421594fafbc1383c943ba83bdef515efcf10d,be077f12762ef51859b6c520b19231e30442ac268ce4fd47366ff9f1 47b8216aa0fbb5d67966f2e82c17c07aa2d6327e96fcd83e3de7333689f3ee79994a1bf45082c4d725ed8d41205cb5bcdf5c341f77facb1da46a5b9b2cbc49eadf786bcd881f371a95fa17df73f606519aea0ff79d5a11427b98ee7f13a5c00637e2854134691059839121fea9abe2cd1bcbbbf27c74caf3678e05bfb1c949897ea01f56ffa4dafbe8644611685c617a3206c7a7036e4ac816799f693dafe7f19f303ce4eba09d21e03610201bfc665b72400a547a1e00fa9b7ad8d84f84b34aef118515e74def11b9188bd1e1f97d9a12c30132ec2806339bdadacda2fd8b78,25c425265ab07d0a8ec659d4d5ee618bde87003b7255ff4b5315f1c7 8cff1f67fe53c098896d9136389bd8881816ccab34862bb67a656e3d98896f3ce6ffd4da73975809fcdf9666760d6e561c55238b205d8049c1cedeef374d1735daa533147bfa960b2cce4a4f254176bb4d1bd1e89654432b8dbe1a135c42115b394b024856a2a83dc85d6782be4b444239567ccec4b184d4548eae3ff6a192f343292ba2e32a0f267f31cc26719eb85245d415fb897ac2da433ee91a99424c9d7f1766a44171d1651001c38fc79294accc68ceb5665d36218454d3ba169ae058a831338c17743603f81ee173bfc0927464f9bd728dee94c6aeab7aae6ee3a627e8,046cf62c41ce9b0f54b667558063023f59887bada9cc288414adee7f eacd07971cff9b9939903f8c1d8cbb5d4db1b548a85d04e037514a583604e787f32992bf2111b97ac5e8a938233552731321522ab5e8583561260b7d13ebeef785b23a41fd8576a6da764a8ed6d822d4957a545d5244756c18aa80e1aad4d1f9c20d259dee1711e2cc8fd013169fb7cc4ce38b362f8e0936ae9198b7e838dcea4f7a5b9429bb3f6bbcf2dc92565e3676c1c5e6eb3dd2a0f86aa23edd3d0891f197447692794b3dfa269611ad97f72b795602b4fdb198f3fd3eb41b415064256e345e8d8c51c555dc8a21904a9b0f1ad0effab7786aac2da3b196507e9f33ca356427,37e3844080986179fda99e9b8c54e294643060795b66e810e3e25d9e 23ac4e9a42c6ef45c3336ce6dfc2ff7de8884cd23dc912fef0f7756c09d335c189f3ad3a23697abda851a81881a0c8ccafc980ab2c702564c2be15fe4c4b9f10dfb2248d0d0cb2e2887fd4598a1d4acda897944a2ffc580ff92719c95cf2aa42dc584674cb5a9bc5765b9d6ddf5789791d15f8dd925aa12bffafbce60827b490bb7df3dda6f2a143c8bf96abc903d83d59a791e2d62814a89b8080a28060568cf24a80ae61179fe84e0ffad00388178cb6a617d37efd54cc01970a4a41d1a8d3ddce46edbba4ab7c90ad565398d376f431189ce8c1c33e132feae6a8cd17a61c630012,3b503d615e54132b42cac1a0450a0d7e2edc63ed87bf109c509c7987 0172df732282c9d488669c358e3492260cbe91c95cfbc1e3fea6c4b0ec129b45f242ace09f152fc6234e1bee8aab8cd56e8b486e1dcba9c05407c2f95da8d8f1c0af78ee2ed82a3a79ec0cb0709396ee62aadb84f8a4ee8a7ccca3c1ee84e302a09ea802204afecf04097e67d0f8e8a9d2651126c0a598a37081e42d168b0ae8a71951c524259e4e2054e535b779679bdade566fe55700858618e626b4a0faf895bcce9011504a49e05fd56127eae3d1f8917afb548ecadabda1020111fec9314c413498a360b08640549a22cb23c731ace743252a8227a0d2689d4c6001606678dfb921,cb40837daf4a882538464dec0a999da482b4aae08708ea6d5d7ff461 3875b9240cf3e0a8b59c658540f26a701cf188496e2c2174788b126fd29402d6a75453ba0635284d08835f40051a2a9683dc92afb9383719191231170379ba6f4adc816fecbb0f9c446b785bf520796841e58878b73c58d3ebb097ce4761fdeabe15de2f319dfbaf1742cdeb389559c788131a6793e193856661376c81ce9568da19aa6925b47ffd77a43c7a0e758c37d69254909ff0fbd415ef8eb937bcd49f91468b49974c07dc819abd67395db0e05874ff83dddab895344abd0e7111b2df9e58d76d85ad98106b36295826be04d435615595605e4b4bb824b33c4afeb5e7bb0d19f909,eae911e66661dcd3472b458a48b74730468923c7abcac7f311f02463 747cc1a59fefba94a9c75ba866c30dc5c1cb0c0f8e9361d98484956dd5d1a40f6184afbe3dac9f76028d1caeccfbf69199c6ce2b4c092a3f4d2a56fe5a33a00757f4d7dee5dfb0524311a97ae0668a47971b95766e2f6dd48c3f57841f91f04a00ad5ea70f2d479a2620dc5cd78eaab3a3b011719b7e78d19ddf70d9423798af77517ebc55392fcd01fc600d8d466b9e7a7a85bf33f9cc5419e9bd874ddfd60981150ddaf8d7febaa4374f0872a5628d318000311e2f5655365ad4d407c20e5c04df17a222e7deec79c5ab1116d8572f91cd06e1ccc7ced53736fc867fd49ecebe6bf8082e8a,307d5a8ba5865a4d281acb2f3c5ef16e3b11bcd8c0f82d22d47c2cc8 57af971fccaec97435dc2ec9ef0429bcedc6b647729ea168858a6e49ac1071e706f4a5a645ca14e8c7746d65511620682c906c8b86ec901f3dded4167b3f00b06cbfac6aee3728051b3e5ff10b4f9ed8bd0b8da94303c833755b3ca3aeddf0b54bc8d6632138b5d25bab03d17b3458a9d782108006f5bb7de75b5c0ba854b423d8bb801e701e99dc4feaad59bc1c7112453b04d33ea3635639fb802c73c2b71d58a56bbd671b18fe34ed2e3dca38827d63fdb1d4fb3285405004b2b3e26081a8ff08cd6d2b08f8e7b7e90a2ab1ed7a41b1d0128522c2f8bff56a7fe67969422ce839a9d4608f03,58666b325d81cbe6a4bbad91720e2ba93c70ea114e7f77323c5be486 04e16dedc1227902baaf332d3d08923601bdd64f573faa1bb7201918cfe16b1e10151dae875da0c0d63c59c3dd050c4c6a874011b018421afc4623ab0381831b2da2a8ba42c96e4f70864ac44e106f94311051e74c77c1291bf5db9539e69567bf6a11cf6932bbbad33f8946bf5814c066d851633d1a513510039b349939bfd42b858c21827c8ff05f1d09b1b0765dc78a135b5ca4dfba0801bcaddfa175623c8b647eacfb4444b85a44f73890607d06d507a4f8393658788669f6ef4deb58d08c50ca0756d5e2f49d1a7ad73e0f0b3d3b5f090acf622b1878c59133e4a848e05153592ea81c6fbf,bc296ffd39381cf1c96228a9f380f41c871b8788c654ed9b384c17fe 7c815c384eee0f288ece27cced52a01603127b079c007378bc5d1e6c5e9e6d1c735723acbbd5801ac49854b2b569d4472d33f40bbb8882956245c366dc3582d71696a97a4e19557e41e54dee482a14229005f93afd2c4a7d8614d10a97a9dfa07f7cd946fa45263063ddd29db8f9e34db60daa32684f0072ea2a9426ecebfa5239fb67f29c18cbaa2af6ed4bf4283936823ac1790164fec5457a9cba7c767ca59392d94cab7448f50eb34e9a93a80027471ce59736f099c886dea1ab4cba4d89f5fc7ae2f21ccd27f611eca4626b2d08dc22382e92c1efb2f6afdc8fdc3d2172604f5035c46b8197d3,0cceae713e5e39bcefe7a2273004816fe005d5edfb2a965cc9ac9948 e29d505158dbdd937d9e3d2145658ee6f5992a2fc790f4f608d9cdb44a091d5b94b88e81fac4fdf5c49442f13b911c55886469629551189eaff62488f1a479b7db11a1560e198ddccccf50159093425ff7f1cb8d1d1246d0978764087d6bac257026b090efae8cec5f22b6f21c59ace1ac7386f5b8837ca6a12b6fbf5534dd0560ef05ca78104d3b943ddb220feaec89aa5e692a00f822a2ab9a2fe60350d75e7be16ff2526dc643872502d01f42f188abed0a6e9a6f5fd0d1ce7d5755c9ffa66b0af0b20bd806f08e06156690d81ac811778ca3dac2c249b96002017fce93e507e3b953acf99964b847,7997fdf30837d8b25e85fc01316e31b61ee814490da002a04816d7ca d85588696f576e65eca0155f395f0cfacd83f36a99111ed5768df2d116d2121e32357ba4f54ede927f189f297d3a97fad4e9a0f5b41d8d89dd7fe20156799c2b7b6bf9c957ba0d6763f5c3bc5129747bbb53652b49290cff1c87e2cdf2c4b95d8aaee09bc8fbfa6883e62d237885810491bfc101f1d8c636e3d0ede838ad05c207a3df4fad76452979eb99f29afaecedd1c63b8d36cf378454a1bb67a741c77ac6b6b3f95f4f02b64dabc15438613ea49750df42ee90101f115aa9abb9ff64324dde9dabbb01054e1bd6b4bcdc7930a44c2300d87ca78c06924d0323ad7887e46c90e8c4d100acd9eed21e,9897b479871ac73dabbe6221e27bfa67278f2bb044e3d0726fcb2b81 3a12f8508b40c32c74492b66323375dcfe49184c78f73179f3314b79e63376b8ac683f5a51f1534bd729b02b04d002f55cbd8e8fc9b5ec1ea6bbe6a0d0e7431518e6ba45d124035f9d3dce0a8bb7bf1430a9f657e0b4ea9f20eb20c786a58181a1e20a96f1628f8728a13bdf7a4b4b32fc8aa7054cc4881ae7fa19afa65c6c3ee1b3ade3192af42054a8a911b8ec1826865d46d93f1e7c5e2b7813c92a506e53886f3d4701bb93d2a681ad109c845904bb861af8af0646b6e399b38b614051d34f6842563a0f37ec00cb3d865fc5d746c4987de2a65071100883a2a9c7a2bfe1e2dd603d9ea24dc7c5fd06be,ead2620fbc4bdfb14aec8c7b9aa882ba3eb2aacc9a15d7d36dba086d 1861edce46fa5ad17e1ff1deae084dec580f97d0a67885dfe834b9dfac1ae076742ce9e267512ca51f6df5a455af0c5fd6abf94acea103a3370c354485a7846fb84f3ac7c2904b5b2fbf227002ce512133bb7e1c4e50057bfd1e44db33c7cdb969a99e284b184f50a14b068a1fc5009d9b298dbe92239572a7627aac02abe8f3e3b473417f36d4d2505d16b7577f4526c9d94a270a2dfe450d06da8f6fa956879a0a55cfe99e742ea555ea477ba3e9b44ccd508c375423611af92e55345dc215779b2d5119eba49c71d49b9fe3f1569fa24e5ca3e332d042422a8b8158d3ec66a80012976f31ffdf305f0c9c5e,545e59812c7aea1bd1cd48880d6650117dfd9e58a791dac1072b19da 08d0ffde3a6e4ef65608ea672e4830c12943d7187ccff08f4941cfc13e545f3b9c7ad5eebbe2b01642b486caf855c2c73f58c1e4e3391da8e2d63d96e15fd84953ae5c231911b00ad6050cd7aafdaac9b0f663ae6aab45519d0f5391a541707d479034e73a6ad805ae3598096af078f1393301493d663dd71f83869ca27ba508b7e91e81e128c1716dc3acfe3084b2201e04cf8006617eecf1b640474a5d45cfde9f4d3ef92d6d055b909892194d8a8218db6d8203a84261d200d71473d7488f3427416b6896c137d455f231071cacbc86e0415ab88aec841d96b7b8af41e05bb461a40645bf176601f1e760de5f,7c2fa00961bcf020b95a0ed7193ea3583340bbd37898ef6a464c1940 d782abb72a5be3392757be02d3e45be6e2099d6f000d042c8a543f50ed6ebc055a7f133b0dd8e9bc348536edcaae2e12ec18e8837df7a1b3c87ec46d50c241dee820fd586197552dc20beea50f445a07a38f1768a39e2b2ff05dddedf751f1def612d2e4d810daa3a0cc904516f9a43af660315385178a529e51f8aae141808c8bc5d7b60cac26bb984ac1890d0436ef780426c547e94a7b08f01acbfc4a3825eae04f520a9016f2fb8bf5165ed12736fc71e36a49a73614739eaa3ec834069b1b40f1350c2b3ab885c02c640b9f7686ed5f99527e41cfcd796fe4c256c9173186c226169ff257954ebda81c0e5f99,232db22eb2c19109afefb71918ea2daa7c0d76652e1884ea7a8ae646 5fce8109a358570e40983e1184e541833bb9091e280f258cfb144387b05d190e431cb19baa67273ba0c58abe91308e1844dcd0b3678baa42f335f2fa05267a0240b3c718a5942b3b3e3bfa98a55c25a1466e8d7a603722cb2bbf03afa54cd769a99f310735ee5a05dae2c22d397bd95635f58c48a67f90e1b73aafcd3f82117f0166657838691005b18da6f341d6e90fc1cdb352b30fae45d348294e501b63252de14740f2b85ae5299ddec3172de8b6d0ba219a20a23bb5e10ff434d39db3f583305e9f5c039d98569e377b75a70ab837d1df269b8a4b566f40bb91b577455fd3c356c914fa06b9a7ce24c7317a172d,db85af5cfce746240e6d44e73cef66a72ce5968284d35ffef7fbff6c 6172f1971a6e1e4e6170afbad95d5fec99bf69b24b674bc17dd78011615e502de6f56b86b1a71d3f4348087218ac7b7d09302993be272e4a591968aef18a1262d665610d1070ee91cc8da36e1f841a69a7a682c580e836941d21d909a3afc1f0b963e1ca5ab193e124a1a53df1c587470e5881fb54dae1b0d840f0c8f9d1b04c645ba1041c7d8dbf22030a623aa15638b3d99a2c400ff76f3252079af88d2b37f35ee66c1ad7801a28d3d388ac450b97d5f0f79e4541755356b3b1a5696b023f39ab7ab5f28df4202936bc97393b93bc915cb159ea1bd7a0a414cb4b7a1ac3af68f50d79f0c9c7314e750f7d02faa58bfa,a1eb42fb0792361f0d6809a2e8dc062f09f2855b39bc2c4b7f54311e 5668ecd99dfbe215c4118398ac9c9eaf1a1433fab4ccdd3968064752b625ea944731f75d48a27d047d67547f14dd0ffaa55fa5e29f7af0d161d85eafc4f2029b717c918eab9d304543290bdba7158b68020c0ba4e079bc95b5bc0fc044a992b94b4ccd3bd66d0eabb5dbbab904d62e00752c4e3b0091d773bcf4c14b4377da3efff824b1cb2fa01b32d1e46c909e626ed2dae920f4c7dbeb635bc754facbd8d49beba3f23c1c41ccbfcd0ee0c114e69737f5597c0bf1d859f0c767e18002ae8e39c26261ffde2920d3d0baf0e906138696cfe5b7e32b600f45df3aaa39932f3a7df95b60fa8712a2271fcaf3911ce7b511b1,1af4a3ab9a07cf064c254d122cc7de15e0f0d3ca3dfa50ea1c43a78d 03d625488354df30e3f875a68edfcf340e8366a8e1ab67f9d5c5486a96829dfac0578289082b2a62117e1cf418b43b90e0adc881fc6ae8105c888e9ecd21aea1c9ae1a4038dfd17378fed71d02ae492087d7cdcd98f746855227967cb1ab4714261ee3bead3f4db118329d3ebef4bc48a875c19ba763966da0ebea800e01b2f50b00e9dd4caca6dcb314d00184ef71ea2391d760c950710db4a70f9212ffc54861f9dc752ce18867b8ad0c48df8466ef7231e7ac567f0eb55099e622ebb86cb237520190a61c66ad34f1f4e289cb3282ae3eaac6152ed24d2c92bae5a7658252a53c49b7b02dfe54fdb2e90074b6cf310ac661,c14d43525e18892c79142d887d2ad3992848b72ccc087f64f0f1d621 2edc282ffb90b97118dd03aaa03b145f363905e3cbd2d50ecd692b37bf000185c651d3e9726c690d3773ec1e48510e42b17742b0b0377e7de6b8f55e00a8a4db4740cee6db0830529dd19617501dc1e9359aa3bcf147e0a76b3ab70c4984c13e339e6806bb35e683af8527093670859f3d8a0fc7d493bcba6bb12b5f65e71e705ca5d6c948d66ed3d730b26db395b3447737c26fad089aa0ad0e306cb28bf0acf106f89af3745f0ec72d534968cca543cd2ca50c94b1456743254e358c1317c07a07bf2b0eca438a709367fafc89a57239028fc5fecfd53b8ef958ef10ee0608b7f5cb9923ad97058ec067700cc746c127a61ee3,116c0462d50d57f948015ec74be9015707313712b45883c02fe84e1e 90b28a6aa1fe533915bcb8e81ed6cacdc10962b7ff82474f845eeb86977600cf70b07ba8e3796141ee340e3fce842a38a50afbe90301a3bdcc591f2e7d9de53e495525560b908c892439990a2ca2679c5539ffdf636777ad9c1cdef809cda9e8dcdb451abb9e9c17efa4379abd24b182bd981cafc792640a183b61694301d04c5b3eaad694a6bd4cc06ef5da8fa23b4fa2a64559c5a68397930079d250c51bcf00e2b16a6c49171433b0aadfd80231276560b80458dd77089b7a1bbcc9e7e4b9f881eacd6c92c4318348a13f4914eb27115a1cfc5d16d7fd94954c3532efaca2cab025103b2d02c6fd71da3a77f417d7932685888a,96f7111176641f6373701ba594090079146d4220f30b5120c12498ba 2969447d175490f2aa9bb055014dbef2e6854c95f8d60950bfe8c0be8de254c26b2d31b9e4de9c68c9adf49e4ee9b1c2850967f29f5d08738483b417bb96b2a56f0c8aca632b552059c59aac3f61f7b45c966b75f1d9931ff4e596406378cee91aaa726a3a84c33f37e9cdbe626b5745a0b06064a8a8d56e53aaf102d23dd9df0a3fdf7a638509a6761a33fa42fa8ddbd8e16159c93008b53765019c3f0e9f10b144ce2ac57f5d7297f9c9949e4ff68b70d339f87501ce8550b772f32c6da8ad2ce2100a895d8b08fa1eead7c376b407709703c510b50f87e73e43f8e7348f87c3832a547ef2bbe5799abedcf5e1f372ea809233f006,9eddab2c9c60b122503c1c30ec6e74050ee13c7e103a05f9ed41d992 721645633a44a2c78b19024eaecf58575ab23c27190833c26875dc0f0d50b46aea9c343d82ea7d5b3e50ec700545c615daeaea64726a0f05607576dcd396d812b03fb6551c641087856d050b10e6a4d5577b82a98afb89cee8594c9dc19e79feff0382fcfd127f1b803a4b9946f4ac9a4378e1e6e041b1389a53e3450cd32d9d2941b0cbabdb50da8ea2513145164c3ab6bcbd251c448d2d4b087ac57a59c2285d564f16da4ed5e607ed979592146ffb0ef3f3db308fb342df5eb5924a48256fc763141a278814c82d6d6348577545870ae3a83c7230ac02a1540fe1798f7ef09e335a865a2ae0949b21e4f748fb8a51f44750e213a8fb,54cc87b9655180c0e1c6672350ae1952ddf51ee5d7e215569652aa2e 6b860d39725a14b498bb714574b4d37ca787404768f64c648b1751b353ac92bac2c3a28ea909fdf0423336401a02e63ec24325300d823b6864bb701f9d7c7a1f8ec9d0ae3584aa6dd62ea1997cd831b4babd9a4da50932d4efda745c61e4130890e156aee6113716daf95764222a91187db2effea49d5d0596102d619bd26a616bbfda8335505fbb0d90b4c180d1a2335b91538e1668f9f9642790b4e55f9cab0fe2bdd2935d001ee6419abab5457880d0dbff20ed8758f4c20fe759efb33141cf0e892587fe8187e5fbc57786b7e8b089612c936dfc03d27efbbe7c8673f1606bd51d5ff386f4a7ab68edf59f385eb1291f117bfe717399,4629c97f9ba98698e0ddeca5e0a3b6de210ea9e84bf942c2ccf4ec68 6a01830af3889a25183244decb508bd01253d5b508ab490d3124afbf42626b2e70894e9b562b288d0a2450cfacf14a0ddae5c04716e5a0082c33981f6037d23d5e045ee1ef2283fb8b6378a914c5d9441627a722c282ff452e25a7ea608d69cee4393a0725d17963d0342684f255496d8a18c2961145315130549311fc07f0312fb78e6077334f87eaa873bee8aa95698996eb21375eb2b4ef53c14401207deb4568398e5dd9a7cf97e8c9663e23334b46912f8344c19efcf8c2ba6f04325f1a27e062b62a58d0766fc6db4d2c6a1928604b0175d872d16b7908ebc041761187cc785526c2a3873feac3a642bb39f5351550af9770c328af7b,f45034aa94c1a2686eb849ef4262f2f5ba9acdd0e8ea32401e060b43 b3c5e74b69933c2533106c563b4ca20238f2b6e675e8681e34a389894785bdade59652d4a73d80a5c85bd454fd1e9ffdad1c3815f5038e9ef432aac5c3c4fe840cc370cf86580a6011778bbedaf511a51b56d1a2eb68394aa299e26da9ada6a2f39b9faff7fba457689b9c1a577b2a1e505fdf75c7a0a64b1df81b3a356001bf0df4e02a1fc59f651c9d585ec6224bb279c6beba2966e8882d68376081b987468e7aed1ef90ebd090ae825795cdca1b4f09a979c8dfc21a48d8a53cdbb26c4db547fc06efe2f9850edd2685a4661cb4911f165d4b63ef25b87d0a96d3dff6ab0758999aad214d07bd4f133a6734fde445fe474711b69a98f7e2b,62153f592c49d3c0485f80073319049a510c730327940cd9d52f3698 83af34279ccb5430febec07a81950d30f4b66f484826afee7456f0071a51e1bbc55570b5cc7ec6f9309c17bf5befdd7c6ba6e968cf218a2b34bd5cf927ab846e38a40bbd81759e9e33381016a755f699df35d660007b5eadf292feefb735207ebf70b5bd17834f7bfa0e16cb219ad4af524ab1ea37334aa66435e5d397fc0a065c411ebbce32c240b90476d307ce802ec82c1c49bc1bec48c0675ec2a6c6f3ed3e5b741d13437095707c565e10d8a20b8c20468ff9514fcf31b4249cd82dcee58c0a2af538b291a87e3390d737191a07484a5d3f3fb8c8f15ce056e5e5f8febe5e1fb59d6740980aa06ca8a0c20f5712b4cde5d032e92ab89f0ae1,ecde4d6eb0cf28010b45d0d310e7d05f08b80afc44b8a359be7e1923 a7ed84749ccc56bb1dfba57119d279d412b8a986886d810f067af349e8749e9ea746a60b03742636c464fc1ee233acc52c1983914692b64309edfdf29f1ab912ec3e8da074d3f1d231511f5756f0b6eead3e89a6a88fe330a10face267bffbfc3e3090c7fd9a850561f363ad75ea881e7244f80ff55802d5ef7a1a4e7b89fcfa80f16df54d1b056ee637e6964b9e0ffd15b6196bdd7db270c56b47251485348e49813b4eb9ed122a01b3ea45ad5e1a929df61d5c0f3e77e1fdc356b63883a60e9cbb9fc3e00c2f32dbd469659883f690c6772e335f617bc33f161d6f6984252ee12e62b6000ac5231e0c9bc65be223d8dfd94c5004a101af9fd6c0fb,3bfc5018cf15cb88007929924b3e014635ef135c91f9671b29be8731 a6fe30dcfcda1a329e82ab50e32b5f50eb25c873c5d2305860a835aecee6264aa36a47429922c4b8b3afd00da16035830edb897831c4e7b00f2c23fc0b15fdc30d85fb70c30c431c638e1a25b51caf1d7e8b050b7f89bfb30f59f0f20fecff3d639abc4255b3868fc45dd81e47eb12ab40f2aac735df5d1dc1ad997cefc4d836b854cee9ac02900036f3867fe0d84afff37bde3308c2206c62c4743375094108877c73b87b2546fe05ea137bedfc06a2796274099a0d554da8f7d7223a48cbf31b7decaa1ebc8b145763e3673168c1b1b715c1cd99ecd3ddb238b06049885ecad9347c2436dff32c771f34a38587a44a82c5d3d137a03caa27e66c8ff6,22715559ad15717722b1fa0583996090c79c3df16cc1e6e0f6d3e898 83167ff53704c3aa19e9fb3303539759c46dd4091a52ddae9ad86408b69335989e61414bc20ab4d01220e35241eff5c9522b079fba597674c8d716fe441e566110b6211531ceccf8fd06bc8e511d00785e57788ed9a1c5c73524f01830d2e1148c92d0edc97113e3b7b5cd3049627abdb8b39dd4d6890e0ee91993f92b03354a88f52251c546e64434d9c3d74544f23fb93e5a2d2f1fb15545b4e1367c97335b0291944c8b730ad3d4789273fa44fb98d78a36c3c3764abeeac7c569c1e43a352e5b770c3504f87090dee075a1c4c85c0c39cf421bdcc615f9eff6cb4fe6468004aece5f30e1ecc6db22ad9939bb2b0ccc96521dfbf4ae008b5b46bc006e,2f36ff8ab7264f7a5766de025018e19b5a64d90994b743b8fbfbdcca 3a3a819c48efde2ad914fbf00e18ab6bc4f14513ab27d0c178a188b61431e7f5623cb66b23346775d386b50e982c493adbbfc54b9a3cd383382336a1a0b2150a15358f336d03ae18f666c7573d55c4fd181c29e6ccfde63ea35f0adf5885cfc0a3d84a2b2e4dd24496db789e663170cef74798aa1bbcd4574ea0bba40489d764b2f83aadc66b148b4a0cd95246c127d5871c4f11418690a5ddf01246a0c80a43c70088b6183639dcfda4125bd113a8f49ee23ed306faac576c3fb0c1e256671d817fc2534a52f5b439f72e424de376f4c565cca82307dd9ef76da5b7c4eb7e085172e328807c02d011ffbf33785378d79dc266f6a5be6bb0e4a92eceebaeb1,5af56987ea9cf11fcd0eac5ebc14b037365e9b1123e31cb2dfc7929a # EOF pysha3-1.0.2/vectors/sha3_256.txt0000664000175000017500000024044112711152670017160 0ustar heimesheimes00000000000000# ShortMsgKAT_SHA3-256.txt ,a7ffc6f8bf1ed76651c14756a061d662f580ff4de43b49fa82d80a4b80f8434a cc,677035391cd3701293d385f037ba32796252bb7ce180b00b582dd9b20aaad7f0 41fb,39f31b6e653dfcd9caed2602fd87f61b6254f581312fb6eeec4d7148fa2e72aa 1f877c,bc22345e4bd3f792a341cf18ac0789f1c9c966712a501b19d1b6632ccd408ec5 c1ecfdfc,c5859be82560cc8789133f7c834a6ee628e351e504e601e8059a0667ff62c124 21f134ac57,55bd9224af4eed0d121149e37ff4d7dd5be24bd9fbe56e0171e87db7a6f4e06d c6f50bb74e29,ae0cbc757d4ab088e172abfd8746289950f92d38a25295658dbf744b5635af04 119713cc83eeef,e340c9a44373efcc212f3cb66a047ac34c87ff1c58c4a14b16a2bfc34698bb1d 4a4f202484512526,ba4fb009d57a5ceb85fc64d54e5c55a55854b41cc47ad15294bc41f32165dfba 1f66ab4185ed9b6375,b9886ef905c8bdd272eda8298865e0769869f1c964460d1aa9d7a0c687707ccd eed7422227613b6f53c9,fab8f88d3191e21a725b21c63a02cad3fa7c450ef8584b94cfa382f393422455 eaeed5cdffd89dece455f1,9363acd3f48bb91a8998aa0e8df75c971770a16a71e7d2334409734cd7d0a9ee 5be43c90f22902e4fe8ed2d3,16932f6f65deaad5780e25ab410c66b0e4198eba9f4ed1a25ee24f7879faefe2 a746273228122f381c3b46e4f1,1c28100e0ef50671c7ea3e024fa3ba9da2ebddb4de264c3a2426c36ad3f91c61 3c5871cd619c69a63b540eb5a625,8183be4875fab7ec5f99ed94f5f900cf1d6b953d8f71e1e7cc008687980e613a fa22874bcc068879e8ef11a69f0722,3b1a6d21fe44691dac4eb7c593a6d8523cb606e63cf00e94d711a574248daca5 52a608ab21ccdd8a4457a57ede782176,2c7e7cb356fdc68ec8927e499d2a6bae2b781817919c829ebbe8225baed46967 82e192e4043ddcd12ecf52969d0f807eed,c7b12eff692d842110cc39ac60616707acb3f9b0f1cb361b94577efc529ca26c 75683dcb556140c522543bb6e9098b21a21e,493ebaebc04776f4e067555afa09b58c850fdf1b0e22d4bf006ce41c091dc762 06e4efe45035e61faaf4287b4d8d1f12ca97e5,1d01f3120ecfbdd28dce44317666cf864f52391b9eca3843db45667c2e0a98ad e26193989d06568fe688e75540aea06747d9f851,2c1e61e5d45203f27b86f1293a80bab34192daf42b8623b12005b2fb1c18acb1 d8dc8fdefbdce9d44e4cbafe78447bae3b5436102a,ad0e3f29767067e929d1cecd95582df8f2a9beb92eaa27eeb315f620365a9244 57085fd7e14216ab102d8317b0cb338a786d5fc32d8f,2b4eb5de20e86074cabb55bfa63a5c8c6ae15679302061845b9cf233e17c906b a05404df5dbb57697e2c16fa29defac8ab3560d6126fa0,6ae04c6c6f3651f1f64c0ad69733990b41747c93f87acb813bb25bb1fc0eff07 aecbb02759f7433d6fcb06963c74061cd83b5b3ffa6f13c6,40f9f55bc55da466bc3dc1f89835a64094572de73d64ed6646a1d3b667be70a9 aafdc9243d3d4a096558a360cc27c8d862f0be73db5e88aa55,c64becf7b75fc885d5853924f2b7d37abcefd3da126bb817697e1a09152b1ebe 7bc84867f6f9e9fdc3e1046cae3a52c77ed485860ee260e30b15,57d46a6bc8fab33601538dad27f98c66443032cc3912434c28eb88d0af44c52c fac523575a99ec48279a7a459e98ff901918a475034327efb55843,7c956503d5b4dbb764ff8e66fa74ce0f9132da90ea3543f669c9dd08e413e33c 0f8b2d8fcfd9d68cffc17ccfb117709b53d26462a3f346fb7c79b85e,6de164a9626d5a4f54d854ac158994f35a8e362ecc753f55182790934a2e0d06 a963c3e895ff5a0be4824400518d81412f875fa50521e26e85eac90c04,b760312bd1b279fc672479d21c5ed349e5fe96f08940237b4515452721c49a16 03a18688b10cc0edf83adf0a84808a9718383c4070c6c4f295098699ac2c,94fc255de4ef19c0da4b09b2e2fac21f20048b46f17c30685abe40d5c743f375 84fb51b517df6c5accb5d022f8f28da09b10232d42320ffc32dbecc3835b29,39a4a0ffc4603698ae0a4f3d24b1bc42ac7a2d7d923e7a5d602453e82d5323c5 9f2fcc7c90de090d6b87cd7e9718c1ea6cb21118fc2d5de9f97e5db6ac1e9c10,2f1a5f7159e34ea19cddc70ebf9b81f1a66db40615d7ead3cc1f1b954d82a3af de8f1b3faa4b7040ed4563c3b8e598253178e87e4d0df75e4ff2f2dedd5a0be046,1c57fe0e38cd3a124eaa6cd87f70a079bccc073a341e8c0eb1976fb3a3f7b774 62f154ec394d0bc757d045c798c8b87a00e0655d0481a7d2d9fb58d93aedc676b5a0,a905603b186ef4f2d5b2d1bcfda504c68ed5eb9b0c7b7ea2a001575f5aa69e68 b2dcfe9ff19e2b23ce7da2a4207d3e5ec7c6112a8a22aec9675a886378e14e5bfbad4e,fffd39f7c451788eb0316f429ea0a7c0ac8091657aca28f1560ed5775e8c4c12 47f5697ac8c31409c0868827347a613a3562041c633cf1f1f86865a576e02835ed2c2492,6f55becd168e0939ba2fa090257b1727fc66491a44493279a5beacb9e3435324 512a6d292e67ecb2fe486bfe92660953a75484ff4c4f2eca2b0af0edcdd4339c6b2ee4e542,84649bffcd48527b9288e8da5f52fbab2604dc5a91c4b0b87d477dbd7b40b6ae 973cf2b4dcf0bfa872b41194cb05bb4e16760a1840d8343301802576197ec19e2a1493d8f4fb,d4055b4e3e2aea1c67cc99fd409d574e53e1e296cf9eef73c472ab92a6cb6609 80beebcd2e3f8a9451d4499961c9731ae667cdc24ea020ce3b9aa4bbc0a7f79e30a934467da4b0,5694ca2f3b9962226a87163ab38325bcdc898a732dfeb2c36db4eb88616b8741 7abaa12ec2a7347674e444140ae0fb659d08e1c66decd8d6eae925fa451d65f3c0308e29446b8ed3,8cf287ad03ab4a74086620cfa4cce74f48fa5cdb15ec02b1f721736a4f849e60 c88dee9927679b8af422abcbacf283b904ff31e1cac58c7819809f65d5807d46723b20f67ba610c2b7,c5d5af22a4df9acd0c056fa30d8e240b679a20d4d2630260f779ff815ca82d7d 01e43fe350fcec450ec9b102053e6b5d56e09896e0ddd9074fe138e6038210270c834ce6eadc2bb86bf6,0ac75279adff65660464550a283fecd4e0610d88f35574c3d7ac5d22262a2fe8 337023370a48b62ee43546f17c4ef2bf8d7ecd1d49f90bab604b839c2e6e5bd21540d29ba27ab8e309a4b7,81917ae290dbba17289a8a67e5c2e8b12d3dde0efe9f990198a1763ff4f3dda7 6892540f964c8c74bd2db02c0ad884510cb38afd4438af31fc912756f3efec6b32b58ebc38fc2a6b913596a8,138e75e72fddd927e591315af8d3aba280efa36230a3309a97bcde5a78c31589 f5961dfd2b1ffffda4ffbf30560c165bfedab8ce0be525845deb8dc61004b7db38467205f5dcfb34a2acfe96c0,21bcdad3fef3e5b859cb0912a2991efa661bad812747292ef0f79a8fcc6b4e98 ca061a2eb6ceed8881ce2057172d869d73a1951e63d57261384b80ceb5451e77b06cf0f5a0ea15ca907ee1c27eba,8d6fd9c559b0b4948f91337916084c0082a16a0755b0a00811096e973e48b3c8 1743a77251d69242750c4f1140532cd3c33f9b5ccdf7514e8584d4a5f9fbd730bcf84d0d4726364b9bf95ab251d9bb,1dd23ae7aadd61e712bdd82bd60a70dd9d66c9fd79dbfd8669e3eaabf7901cdc d8faba1f5194c4db5f176fabfff856924ef627a37cd08cf55608bba8f1e324d7c7f157298eabc4dce7d89ce5162499f9,34f8607ec10c092c1ba0b6565ce6197062c4e1a35a8e8c723e48a2d2416c3790 be9684be70340860373c9c482ba517e899fc81baaa12e5c6d7727975d1d41ba8bef788cdb5cf4606c9c1c7f61aed59f97d,19a8577fc90fae5d6a6b2e0c1ff155515502cfa1757029c09bebbfa263d9a363 7e15d2b9ea74ca60f66c8dfab377d9198b7b16deb6a1ba0ea3c7ee2042f89d3786e779cf053c77785aa9e692f821f14a7f51,9d9dbb4ce7d01d009e72a66051acc16805e49f598cbe430c5d4c22a881a64b3f 9a219be43713bd578015e9fda66c0f2d83cac563b776ab9f38f3e4f7ef229cb443304fba401efb2bdbd7ece939102298651c86,13f0d951b64481135466cfccbe52418cc1d03fb16b5b696c35d724f6f55cbb6d c8f2b693bd0d75ef99caebdc22adf4088a95a3542f637203e283bbc3268780e787d68d28cc3897452f6a22aa8573ccebf245972a,fb2fe7b00b75c42305cf31de14d98f904e8c46dc57bb6f94c282ca8c13dc45db ec0f99711016c6a2a07ad80d16427506ce6f441059fd269442baaa28c6ca037b22eeac49d5d894c0bf66219f2c08e9d0e8ab21de52,d54cbf7d5c80ae11a0d0bad4e95ab18b5f07c970621f3936447a48eef818d06e 0dc45181337ca32a8222fe7a3bf42fc9f89744259cff653504d6051fe84b1a7ffd20cb47d4696ce212a686bb9be9a8ab1c697b6d6a33,ff050a45adeef4cfc7d964102ba877c80320a37794893e6865965ec2547cd4c9 de286ba4206e8b005714f80fb1cdfaebde91d29f84603e4a3ebc04686f99a46c9e880b96c574825582e8812a26e5a857ffc6579f63742f,1bc1bcc70f638958db1006af37b02ebd8954ec59b3acbad12eacedbc5b21e908 eebcc18057252cbf3f9c070f1a73213356d5d4bc19ac2a411ec8cdeee7a571e2e20eaf61fd0c33a0ffeb297ddb77a97f0a415347db66bcaf,f7bde239ad087aa7dabe42cc4d3c49380a026cd239a7faaf34a2233469a44a4d 416b5cdc9fe951bd361bd7abfc120a5054758eba88fdd68fd84e39d3b09ac25497d36b43cbe7b85a6a3cebda8db4e5549c3ee51bb6fcb6ac1e,ef845aac2aaf0a793108204ff380e0a30f2558e7acde4531ab22f8ec79e26a69 5c5faf66f32e0f8311c32e8da8284a4ed60891a5a7e50fb2956b3cbaa79fc66ca376460e100415401fc2b8518c64502f187ea14bfc9503759705,26db514e01e034c678b636d40ba367da2f37f67078bb576ff2b8559b3517484d 7167e1e02be1a7ca69d788666f823ae4eef39271f3c26a5cf7cee05bca83161066dc2e217b330df821103799df6d74810eed363adc4ab99f36046a,5dbd4b558463196211465c1fc32401fc2d8e41ebc5e6badd1d8f7c4f090f728f 2fda311dbba27321c5329510fae6948f03210b76d43e7448d1689a063877b6d14c4f6d0eaa96c150051371f7dd8a4119f7da5c483cc3e6723c01fb7d,355c79fd6e6fa88ed402b6979fde1ed805498abeb101f4231b5d64d1439d552d 95d1474a5aab5d2422aca6e481187833a6212bd2d0f91451a67dd786dfc91dfed51b35f47e1deb8a8ab4b9cb67b70179cc26f553ae7b569969ce151b8d,3d9c9bf09d88211c7e0056112d073ee85d00acaa4da7a668fa017b3273cd4d4b c71bd7941f41df044a2927a8ff55b4b467c33d089f0988aa253d294addbdb32530c0d4208b10d9959823f0c0f0734684006df79f7099870f6bf53211a88d,67980d28e2e658e7a24a2593a28167a13d907d06f47729d47ca4fe1772f8b3df f57c64006d9ea761892e145c99df1b24640883da79d9ed5262859dcda8c3c32e05b03d984f1ab4a230242ab6b78d368dc5aaa1e6d3498d53371e84b0c1d4ba,a8df6b76df41994f7593f1a81967e77ee180e31183d1c4a569db854e61e99b05 e926ae8b0af6e53176dbffcc2a6b88c6bd765f939d3d178a9bde9ef3aa131c61e31c1e42cdfaf4b4dcde579a37e150efbef5555b4c1cb40439d835a724e2fae7,27a6441ee939b46e2c378d7afeb0e891c47a28120e488eff0ab71af08788ceb3 16e8b3d8f988e9bb04de9c96f2627811c973ce4a5296b4772ca3eefeb80a652bdf21f50df79f32db23f9f73d393b2d57d9a0297f7a2f2e79cfda39fa393df1ac00,c4bb067383002db44ca773918bb74104b604a583e12b06be56c270f8b43512f2 fc424eeb27c18a11c01f39c555d8b78a805b88dba1dc2a42ed5e2c0ec737ff68b2456d80eb85e11714fa3f8eabfb906d3c17964cb4f5e76b29c1765db03d91be37fc,ae773915ca642d80413330c9e0ee9bd06653c0023c5c0277100f3b1526eaa51d abe3472b54e72734bdba7d9158736464251c4f21b33fbbc92d7fac9a35c4e3322ff01d2380cbaa4ef8fb07d21a2128b7b9f5b6d9f34e13f39c7ffc2e72e47888599ba5,1cf9d6ce9cb658556b76cd7eba3e51393699ad500b1ab3f56172748db7f59667 36f9f0a65f2ca498d739b944d6eff3da5ebba57e7d9c41598a2b0e4380f3cf4b479ec2348d015ffe6256273511154afcf3b4b4bf09d6c4744fdd0f62d75079d440706b05,8d60e889e2b1020dad4b523301f5f6bbab6c781af276085af6765546fcfb95ac abc87763cae1ca98bd8c5b82caba54ac83286f87e9610128ae4de68ac95df5e329c360717bd349f26b872528492ca7c94c2c1e1ef56b74dbb65c2ac351981fdb31d06c77a4,dd4ff4b530552f48af9a7530a6464819ed1a5b733084f709e41daf1acb35ecfd 94f7ca8e1a54234c6d53cc734bb3d3150c8ba8c5f880eab8d25fed13793a9701ebe320509286fd8e422e931d99c98da4df7e70ae447bab8cffd92382d8a77760a259fc4fbd72,7ac8d4bb53fc434dd8712daefeb474668f541418e6f617dba523d8392eb0766e 13bd2811f6ed2b6f04ff3895aceed7bef8dcd45eb121791bc194a0f806206bffc3b9281c2b308b1a729ce008119dd3066e9378acdcc50a98a82e20738800b6cddbe5fe9694ad6d,f7b0e15a63232a2b800b23b311d357617ddfd1293e1ffe3f772692ade3427152 1eed9cba179a009ec2ec5508773dd305477ca117e6d569e66b5f64c6bc64801ce25a8424ce4a26d575b8a6fb10ead3fd1992edddeec2ebe7150dc98f63adc3237ef57b91397aa8a7,b3d05af7e8c406a7c2709223791d3f5f4b3129329993220053a36293ac2b0e06 ba5b67b5ec3a3ffae2c19dd8176a2ef75c0cd903725d45c9cb7009a900c0b0ca7a2967a95ae68269a6dbf8466c7b6844a1d608ac661f7eff00538e323db5f2c644b78b2d48de1a08aa,6c47e2ea4ba29e17792defc4b707754c4664bde15168a5100bf881ec7c02b258 0efa26ac5673167dcacab860932ed612f65ff49b80fa9ae65465e5542cb62075df1c5ae54fba4db807be25b070033efa223bdd5b1d3c94c6e1909c02b620d4b1b3a6c9fed24d70749604,82a66bed668dcc14af12c14c976ce650049e9d1d9969b83d1dd3b6f1c07d252b bbfd933d1fd7bf594ac7f435277dc17d8d5a5b8e4d13d96d2f64e771abbd51a5a8aea741beccbddb177bcea05243ebd003cfdeae877cca4da94605b67691919d8b033f77d384ca01593c1b,2f21d07d7b10683b9ac7a63e9fcc70cf9f887cb905f9bff5332551288b288524 90078999fd3c35b8afbf4066cbde335891365f0fc75c1286cdd88fa51fab94f9b8def7c9ac582a5dbcd95817afb7d1b48f63704e19c2baa4df347f48d4a6d603013c23f1e9611d595ebac37c,80202f01e7140db4fee490dcc50afafdf6a48ca33d362c7875b8e8db9c9d0655 64105eca863515c20e7cfbaa0a0b8809046164f374d691cdbd6508aaabc1819f9ac84b52bafc1b0fe7cddbc554b608c01c8904c669d8db316a0953a4c68ece324ec5a49ffdb59a1bd6a292aa0e,b2330a189047e3117479a2f20b3407a7d119e4ad431fe06ff1ff2a106f2ab3a2 d4654be288b9f3b711c2d02015978a8cc57471d5680a092aa534f7372c71ceaab725a383c4fcf4d8deaa57fca3ce056f312961eccf9b86f14981ba5bed6ab5b4498e1f6c82c6cae6fc14845b3c8a,bb9b9bb685c241f8d63fdbf0dbaabcef7075add7ba405a2fffe7ad5b23e021c7 12d9394888305ac96e65f2bf0e1b18c29c90fe9d714dd59f651f52b88b3008c588435548066ea2fc4c101118c91f32556224a540de6efddbca296ef1fb00341f5b01fecfc146bdb251b3bdad556cd2,f8316a367aa0316da3562f319d522e81f4a8bd2e2108d2532126f4a903704ba3 871a0d7a5f36c3da1dfce57acd8ab8487c274fad336bc137ebd6ff4658b547c1dcfab65f037aa58f35ef16aff4abe77ba61f65826f7be681b5b6d5a1ea8085e2ae9cd5cf0991878a311b549a6d6af230,89e3ebd02b229cd759612a5521d867ab2a1594bc0b1fe6a78b7954ccc84caf03 e90b4ffef4d457bc7711ff4aa72231ca25af6b2e206f8bf859d8758b89a7cd36105db2538d06da83bad5f663ba11a5f6f61f236fd5f8d53c5e89f183a3cec615b50c7c681e773d109ff7491b5cc22296c5,2e7cc875305ea6bb9c2fc770b9d84fd93b96405df9b93307f6b5de26e135724c e728de62d75856500c4c77a428612cd804f30c3f10d36fb219c5ca0aa30726ab190e5f3f279e0733d77e7267c17be27d21650a9a4d1e32f649627638dbada9702c7ca303269ed14014b2f3cf8b894eac8554,ecab75f28a728429cb433ec13310d1b850ccf522c38d2fa6dfa489963d6d6ca7 6348f229e7b1df3b770c77544e5166e081850fa1c6c88169db74c76e42eb983facb276ad6a0d1fa7b50d3e3b6fcd799ec97470920a7abed47d288ff883e24ca21c7f8016b93bb9b9e078bdb9703d2b781b616e,021c9459d1451f3da4c07c029a8681945c87c5bebc6c30da1d95c5c49d8ab95c 4b127fde5de733a1680c2790363627e63ac8a3f1b4707d982caea258655d9bf18f89afe54127482ba01e08845594b671306a025c9a5c5b6f93b0a39522dc877437be5c2436cbf300ce7ab6747934fcfc30aeaaf6,4642e21622f15b09b9413659680116bf2f96cac2384b8c79f1328d5dd36d7a01 08461f006cff4cc64b752c957287e5a0faabc05c9bff89d23fd902d324c79903b48fcb8f8f4b01f3e4ddb483593d25f000386698f5ade7faade9615fdc50d32785ea51d49894e45baa3dc707e224688c6408b68b11,8daa47c3572157266ad0276d5926aff2872f06b0cd7b974a80d7a6827d41d782 68c8f8849b120e6e0c9969a5866af591a829b92f33cd9a4a3196957a148c49138e1e2f5c7619a6d5edebe995acd81ec8bb9c7b9cfca678d081ea9e25a75d39db04e18d475920ce828b94e72241f24db72546b352a0e4,345365232ce9afc655dce4bac23f43c8acbdf9016d4bc2344be8d396a4919c34 b8d56472954e31fb54e28fca743f84d8dc34891cb564c64b08f7b71636debd64ca1edbdba7fc5c3e40049ce982bba8c7e0703034e331384695e9de76b5104f2fbc4535ecbeebc33bc27f29f18f6f27e8023b0fbb6f563c,f52e102e57293878c28f29deb47792324fe455a62fa7441aabcc16a9cfc40ffa 0d58ac665fa84342e60cefee31b1a4eacdb092f122dfc68309077aed1f3e528f578859ee9e4cefb4a728e946324927b675cd4f4ac84f64db3dacfe850c1dd18744c74ceccd9fe4dc214085108f404eab6d8f452b5442a47d,2b89aa88b1b7f9f8ea461c4c5cae4829125f45f5697deadb8db2e964524c0d91 1755e2d2e5d1c1b0156456b539753ff416651d44698e87002dcf61dcfa2b4e72f264d9ad591df1fdee7b41b2eb00283c5aebb3411323b672eaa145c5125185104f20f335804b02325b6dea65603f349f4d5d8b782dd3469ccd,3f3092365982c0b4278055beee9032ff9d1060e03c3b087e1a6197defc707e1a b180de1a611111ee7584ba2c4b020598cd574ac77e404e853d15a101c6f5a2e5c801d7d85dc95286a1804c870bb9f00fd4dcb03aa8328275158819dcad7253f3e3d237aeaa7979268a5db1c6ce08a9ec7c2579783c8afc1f91a7,3c74aae2f340a24178cbab51004cba1aac3d91133c300715ea82c177269c0556 cf3583cbdfd4cbc17063b1e7d90b02f0e6e2ee05f99d77e24e560392535e47e05077157f96813544a17046914f9efb64762a23cf7a49fe52a0a4c01c630cfe8727b81fb99a89ff7cc11dca5173057e0417b8fe7a9efba6d95c555f,0157c4ba44618ded11e9800afa07a0d5b6c711fc16a576c5edb71c4cc6894f82 072fc02340ef99115bad72f92c01e4c093b9599f6cfc45cb380ee686cb5eb019e806ab9bd55e634ab10aa62a9510cc0672cd3eddb589c7df2b67fcd3329f61b1a4441eca87a33c8f55da4fbbad5cf2b2527b8e983bb31a2fadec7523,8d53dba107aaacb8422d6667f6778839f8965f8e4c8f4a851284cc91168a9030 76eecf956a52649f877528146de33df249cd800e21830f65e90f0f25ca9d6540fde40603230eca6760f1139c7f268deba2060631eea92b1fff05f93fd5572fbe29579ecd48bc3a8d6c2eb4a6b26e38d6c5fbf2c08044aeea470a8f2f26,5163f02233e332ad9be32c2346c9fcfe39afa5fbe9bc1cfeb92f4920155b20ec 7adc0b6693e61c269f278e6944a5a2d8300981e40022f839ac644387bfac9086650085c2cdc585fea47b9d2e52d65a2b29a7dc370401ef5d60dd0d21f9e2b90fae919319b14b8c5565b0423cefb827d5f1203302a9d01523498a4db10374,faaf0e95217ca4b1568751ef2e4cd341d9ec33e16600bf09b92c6f1a6df84d2e e1fffa9826cce8b86bccefb8794e48c46cdf372013f782eced1e378269b7be2b7bf51374092261ae120e822be685f2e7a83664bcfbe38fe8633f24e633ffe1988e1bc5acf59a587079a57a910bda60060e85b5f5b6f776f0529639d9cce4bd,b2c175d9d92aaa9ee72672f995b8dfd2daaf6555a0327a508218a9b447f00be8 69f9abba65592ee01db4dce52dbab90b08fc04193602792ee4daa263033d59081587b09bbe49d0b49c9825d22840b2ff5d9c5155f975f8f2c2e7a90c75d2e4a8040fe39f63bbafb403d9e28cc3b86e04e394a9c9e8065bd3c85fa9f0c7891600,fb5388122306d37cee790cad1d3cddba8e9a93d5f9d78288b052482739c883fd 38a10a352ca5aedfa8e19c64787d8e9c3a75dbf3b8674bfab29b5dbfc15a63d10fae66cd1a6e6d2452d557967eaad89a4c98449787b0b3164ca5b717a93f24eb0b506ceb70cbbcb8d72b2a72993f909aad92f044e0b5a2c9ac9cb16a0ca2f81f49,1c2f8d418ff6718b18dd4c756dcc8ed0f4755e8c22497a6cc19f8d7ae7fd2da7 6d8c6e449bc13634f115749c248c17cd148b72157a2c37bf8969ea83b4d6ba8c0ee2711c28ee11495f43049596520ce436004b026b6c1f7292b9c436b055cbb72d530d860d1276a1502a5140e3c3f54a93663e4d20edec32d284e25564f624955b52,7ea8116e6434c1caa049069dbbd9b6f0e9dc6cdfd6a889343d3b2652803078fc 6efcbcaf451c129dbe00b9cef0c3749d3ee9d41c7bd500ade40cdc65dedbbbadb885a5b14b32a0c0d087825201e303288a733842fa7e599c0c514e078f05c821c7a4498b01c40032e9f1872a1c925fa17ce253e8935e4c3c71282242cb716b2089ccc1,736d888751faac4d8e78b45b95abb15d40d98d8038c7225be0f523d5439ea5b6 433c5303131624c0021d868a30825475e8d0bd3052a022180398f4ca4423b98214b6beaac21c8807a2c33f8c93bd42b092cc1b06cedf3224d5ed1ec29784444f22e08a55aa58542b524b02cd3d5d5f6907afe71c5d7462224a3f9d9e53e7e0846dcbb4ce,90e10b1ca8d352794d7dbd7bae410bef25f0ec7d080e053f48674237e33ea45f a873e0c67ca639026b6683008f7aa6324d4979550e9bce064ca1e1fb97a30b147a24f3f666c0a72d71348ede701cf2d17e2253c34d1ec3b647dbcef2f879f4eb881c4830b791378c901eb725ea5c172316c6d606e0af7df4df7f76e490cd30b2badf45685f,8a0a8d6d55cccbe05ec74dc273b16d66c9b9006665eecb5b6023d2ea39c64554 006917b64f9dcdf1d2d87c8a6173b64f6587168e80faa80f82d84f60301e561e312d9fbce62f39a6fb476e01e925f26bcc91de621449be6504c504830aae394096c8fc7694651051365d4ee9070101ec9b68086f2ea8f8ab7b811ea8ad934d5c9b62c60a4771,122895d63aa6030fc8f23940c528e7a5d9c7fb170a79fe7bc42360ce50e25b7a f13c972c52cb3cc4a4df28c97f2df11ce089b815466be88863243eb318c2adb1a417cb1041308598541720197b9b1cb5ba2318bd5574d1df2174af14884149ba9b2f446d609df240ce335599957b8ec80876d9a085ae084907bc5961b20bf5f6ca58d5dab38adb,3e04ee539505c52d814cab3c5cdd7df2d6eee627ea44188153ea6b8c8be5f6c2 e35780eb9799ad4c77535d4ddb683cf33ef367715327cf4c4a58ed9cbdcdd486f669f80189d549a9364fa82a51a52654ec721bb3aab95dceb4a86a6afa93826db923517e928f33e3fba850d45660ef83b9876accafa2a9987a254b137c6e140a21691e1069413848,e360b424a5c06704d148352e04f4651f8d3b385c01f24fda09d266d4ed7ff662 64ec021c9585e01ffe6d31bb50d44c79b6993d72678163db474947a053674619d158016adb243f5c8d50aa92f50ab36e579ff2dabb780a2b529370daa299207cfbcdd3a9a25006d19c4f1fe33e4b1eaec315d8c6ee1e730623fd1941875b924eb57d6d0c2edc4e78d6,0d3becb9e1b4ae1f15c9ee98732b4796e99fd799f76ed7332a68ab36c77a1ef9 5954bab512cf327d66b5d9f296180080402624ad7628506b555eea8382562324cf452fba4a2130de3e165d11831a270d9cb97ce8c2d32a96f50d71600bb4ca268cf98e90d6496b0a6619a5a8c63db6d8a0634dfc6c7ec8ea9c006b6c456f1b20cd19e781af20454ac880,3aadd7e2086d383832489aa3088e903f5c6fa8e38df2cf876e0b4dcddca5c923 03d9f92b2c565709a568724a0aff90f8f347f43b02338f94a03ed32e6f33666ff5802da4c81bdce0d0e86c04afd4edc2fc8b4141c2975b6f07639b1994c973d9a9afce3d9d365862003498513bfa166d2629e314d97441667b007414e739d7febf0fe3c32c17aa188a8683,715ced5776a802eb8ee02c9d46543ff46fe7a9cd192fa7d4ffb6e81427fe1b71 f31e8b4f9e0621d531d22a380be5d9abd56faec53cbd39b1fab230ea67184440e5b1d15457bd25f56204fa917fa48e669016cb48c1ffc1e1e45274b3b47379e00a43843cf8601a5551411ec12503e5aac43d8676a1b2297ec7a0800dbfee04292e937f21c005f17411473041,dde61f8be25b8b23e1212c1c0b8a85a0d02d8548bb17d377133e3c06ddb58ca2 758ea3fea738973db0b8be7e599bbef4519373d6e6dcd7195ea885fc991d896762992759c2a09002912fb08e0cb5b76f49162aeb8cf87b172cf3ad190253df612f77b1f0c532e3b5fc99c2d31f8f65011695a087a35ee4eee5e334c369d8ee5d29f695815d866da99df3f79403,059f2bedf4a6eefb95fc5c0ae17556ce8bddc5e1880fab2f688a03a46bb28c5f 47c6e0c2b74948465921868804f0f7bd50dd323583dc784f998a93cd1ca4c6ef84d41dc81c2c40f34b5bee6a93867b3bdba0052c5f59e6f3657918c382e771d33109122cc8bb0e1e53c4e3d13b43ce44970f5e0c079d2ad7d7a3549cd75760c21bb15b447589e86e8d76b1e9ced2,125b0ee7870a6f7eb4fd965d9e0b90d79fffbc54a2018f4c68224682f3603f3f f690a132ab46b28edfa6479283d6444e371c6459108afd9c35dbd235e0b6b6ff4c4ea58e7554bd002460433b2164ca51e868f7947d7d7a0d792e4abf0be5f450853cc40d85485b2b8857ea31b5ea6e4ccfa2f3a7ef3380066d7d8979fdac618aad3d7e886dea4f005ae4ad05e5065f,9a78e0b5a34cbf1716f14cf7b67efdc4540a75cc646538a11a8efd9d7cd7529f 58d6a99bc6458824b256916770a8417040721cccfd4b79eacd8b65a3767ce5ba7e74104c985ac56b8cc9aebd16febd4cda5adb130b0ff2329cc8d611eb14dac268a2f9e633c99de33997fea41c52a7c5e1317d5b5daed35eba7d5a60e45d1fa7eaabc35f5c2b0a0f2379231953322c4e,42305a251a8009edfd62c7d91910b96b9b5dd8fda5b1326fe41ef6eef978d1be befab574396d7f8b6705e2d5b58b2c1c820bb24e3f4bae3e8fbcd36dbf734ee14e5d6ab972aedd3540235466e825850ee4c512ea9795abfd33f330d9fd7f79e62bbb63a6ea85de15beaeea6f8d204a28956059e2632d11861dfb0e65bc07ac8a159388d5c3277e227286f65ff5e5b5aec1,6b9e8f3e82ea174ebc88a53c5ded06271d38f79e9cec571a9d195ef549102eb8 8e58144fa9179d686478622ce450c748260c95d1ba43b8f9b59abeca8d93488da73463ef40198b4d16fb0b0707201347e0506ff19d01bea0f42b8af9e71a1f1bd168781069d4d338fdef00bf419fbb003031df671f4a37979564f69282de9c65407847dd0da505ab1641c02dea4f0d834986,358de4c1ed30f48b084f961f653febc69318f93883612d5a04b9139a14ec702e b55c10eae0ec684c16d13463f29291bf26c82e2fa0422a99c71db4af14dd9c7f33eda52fd73d017cc0f2dbe734d831f0d820d06d5f89dacc485739144f8cfd4799223b1aff9031a105cb6a029ba71e6e5867d85a554991c38df3c9ef8c1e1e9a7630be61caabca69280c399c1fb7a12d12aefc,4a7bd18ae10eb9458924aa5ca00d3f634ab9753628107f15ff2bf24ccd3b94f4 2eeea693f585f4ed6f6f8865bbae47a6908aecd7c429e4bec4f0de1d0ca0183fa201a0cb14a529b7d7ac0e6ff6607a3243ee9fb11bcf3e2304fe75ffcddd6c5c2e2a4cd45f63c962d010645058d36571404a6d2b4f44755434d76998e83409c3205aa1615db44057db991231d2cb42624574f545,9889e4b3b1294a01556fa9de6a6a508a9a763d5133fdcd4937b6bb23ca3e1901 dab11dc0b047db0420a585f56c42d93175562852428499f66a0db811fcdddab2f7cdffed1543e5fb72110b64686bc7b6887a538ad44c050f1e42631bc4ec8a9f2a047163d822a38989ee4aab01b4c1f161b062d873b1cfa388fd301514f62224157b9bef423c7783b7aac8d30d65cd1bba8d689c2d,3d02b41985bdd1835cb474fb364c25c2cca9da0ed2fbbab75524b410903815b9 42e99a2f80aee0e001279a2434f731e01d34a44b1a8101726921c0590c30f3120eb83059f325e894a5ac959dca71ce2214799916424e859d27d789437b9d27240bf8c35adbafcecc322b48aa205b293962d858652abacbd588bcf6cbc388d0993bd622f96ed54614c25b6a9aa527589eaaffcf17ddf7,1cd92039be4580c686796d5900eed431ebad6ea566e9244e76ba6873efcb49ab 3c9b46450c0f2cae8e3823f8bdb4277f31b744ce2eb17054bddc6dff36af7f49fb8a2320cc3bdf8e0a2ea29ad3a55de1165d219adeddb5175253e2d1489e9b6fdd02e2c3d3a4b54d60e3a47334c37913c5695378a669e9b72dec32af5434f93f46176ebf044c4784467c700470d0c0b40c8a088c815816,680c70b243163be6e58ed3b8e2d85e6894e5e89501c444c8c0a2d776acad8599 d1e654b77cb155f5c77971a64df9e5d34c26a3cad6c7f6b300d39deb1910094691adaa095be4ba5d86690a976428635d5526f3e946f7dc3bd4dbc78999e653441187a81f9adcd5a3c5f254bc8256b0158f54673dcc1232f6e918ebfc6c51ce67eaeb042d9f57eec4bfe910e169af78b3de48d137df4f2840,d65e823d2ce4effb9b27dbbf6efcda738ad152fbb12d2108d2ec6d050a3fb295 626f68c18a69a6590159a9c46be03d5965698f2dac3de779b878b3d9c421e0f21b955a16c715c1ec1e22ce3eb645b8b4f263f60660ea3028981eebd6c8c3a367285b691c8ee56944a7cd1217997e1d9c21620b536bdbd5de8925ff71dec6fbc06624ab6b21e329813de90d1e572dfb89a18120c3f606355d25,ce6d2dd8d5441fc15b888fed72061e129125431bedea32e00ee0a7655c06c358 651a6fb3c4b80c7c68c6011675e6094eb56abf5fc3057324ebc6477825061f9f27e7a94633abd1fa598a746e4a577caf524c52ec1788471f92b8c37f23795ca19d559d446cab16cbcdce90b79fa1026cee77bf4ab1b503c5b94c2256ad75b3eac6fd5dcb96aca4b03a834bfb4e9af988cecbf2ae597cb9097940,280713c0fa7160289fbfee5aa580ad82512839153dae47de0d154384a4d8b3ed 8aaf072fce8a2d96bc10b3c91c809ee93072fb205ca7f10abd82ecd82cf040b1bc49ea13d1857815c0e99781de3adbb5443ce1c897e55188ceaf221aa9681638de05ae1b322938f46bce51543b57ecdb4c266272259d1798de13be90e10efec2d07484d9b21a3870e2aa9e06c21aa2d0c9cf420080a80a91dee16f,721fd872696f21deaa9595c0cee7bc07249601927c96a65826b4887cdba1ae96 53f918fd00b1701bd504f8cdea803acca21ac18c564ab90c2a17da592c7d69688f6580575395551e8cd33e0fef08ca6ed4588d4d140b3e44c032355df1c531564d7f4835753344345a6781e11cd5e095b73df5f82c8ae3ad00877936896671e947cc52e2b29dcd463d90a0c9929128da222b5a211450bbc0e02448e2,b53af8620b39cad2d698a176a070aeaa9fb67bd0335c3485a3b6c73a71dc5c5c a64599b8a61b5ccec9e67aed69447459c8da3d1ec6c7c7c82a7428b9b584fa67e90f68e2c00fbbed4613666e5168da4a16f395f7a3c3832b3b134bfc9cbaa95d2a0fe252f44ac6681eb6d40ab91c1d0282fed6701c57463d3c5f2bb8c6a7301fb4576aa3b5f15510db8956ff77478c26a7c09bea7b398cfc83503f538e,78a18bf0a52e6f77f15f7ffe4ca3c999e57e1c3f6bf10950581f403450edb797 0e3ab0e054739b00cdb6a87bd12cae024b54cb5e550e6c425360c2e87e59401f5ec24ef0314855f0f56c47695d56a7fb1417693af2a1ed5291f2fee95f75eed54a1b1c2e81226fbff6f63ade584911c71967a8eb70933bc3f5d15bc91b5c2644d9516d3c3a8c154ee48e118bd1442c043c7a0dba5ac5b1d5360aae5b9065,a7f0151eee6b21fe827e69256d560e1ea8d939b80962fc7fa8610ac189402ad2 a62fc595b4096e6336e53fcdfc8d1cc175d71dac9d750a6133d23199eaac288207944cea6b16d27631915b4619f743da2e30a0c00bbdb1bbb35ab852ef3b9aec6b0a8dcc6e9e1abaa3ad62ac0a6c5de765de2c3711b769e3fde44a74016fff82ac46fa8f1797d3b2a726b696e3dea5530439acee3a45c2a51bc32dd055650b,0a09c4b18f5117f0e45d43e235bb14e55b162e99eb3744165196d04a854229f9 2b6db7ced8665ebe9deb080295218426bdaa7c6da9add2088932cdffbaa1c14129bccdd70f369efb149285858d2b1d155d14de2fdb680a8b027284055182a0cae275234cc9c92863c1b4ab66f304cf0621cd54565f5bff461d3b461bd40df28198e3732501b4860eadd503d26d6e69338f4e0456e9e9baf3d827ae685fb1d817,b7d031aa69b7b4d26a35b896d761314f1d61eb12dcc1e72aaf61b9cd48003af9 10db509b2cdcaba6c062ae33be48116a29eb18e390e1bbada5ca0a2718afbcd23431440106594893043cc7f2625281bf7de2655880966a23705f0c5155c2f5cca9f2c2142e96d0a2e763b70686cd421b5db812daced0c6d65035fde558e94f26b3e6dde5bd13980cc80292b723013bd033284584bff27657871b0cf07a849f4ae2,ec0858c9d017a2d3727caade7e4872684f17b822cafecda445a15cf30fac8cf0 9334de60c997bda6086101a6314f64e4458f5ff9450c509df006e8c547983c651ca97879175aaba0c539e82d05c1e02c480975cbb30118121061b1ebac4f8d9a3781e2db6b18042e01ecf9017a64a0e57447ec7fcbe6a7f82585f7403ee2223d52d37b4bf426428613d6b4257980972a0acab508a7620c1cb28eb4e9d30fc41361ec,71e1d610b576063f2b12f691220beadf506bec0a3a086bbe5864fb54f93db556 e88ab086891693aa535ceb20e64c7ab97c7dd3548f3786339897a5f0c39031549ca870166e477743ccfbe016b4428d89738e426f5ffe81626137f17aecff61b72dbee2dc20961880cfe281dfab5ee38b1921881450e16032de5e4d55ad8d4fca609721b0692bac79be5a06e177fe8c80c0c83519fb3347de9f43d5561cb8107b9b5edc,72a8a7493309080accca2a2a21d641f2b9685b7362be496dc7bc330659f8cfe1 fd19e01a83eb6ec810b94582cb8fbfa2fcb992b53684fb748d2264f020d3b960cb1d6b8c348c2b54a9fcea72330c2aaa9a24ecdb00c436abc702361a82bb8828b85369b8c72ece0082fe06557163899c2a0efa466c33c04343a839417057399a63a3929be1ee4805d6ce3e5d0d0967fe9004696a5663f4cac9179006a2ceb75542d75d68,af19e988d37e2577da4f43463789b73625d354fcccbd10cd2c61fbdc8bb01827 59ae20b6f7e0b3c7a989afb28324a40fca25d8651cf1f46ae383ef6d8441587aa1c04c3e3bf88e8131ce6145cfb8973d961e8432b202fa5af3e09d625faad825bc19da9b5c6c20d02abda2fcc58b5bd3fe507bf201263f30543819510c12bc23e2ddb4f711d087a86edb1b355313363a2de996b891025e147036087401ccf3ca7815bf3c49,f1e9b9cef2b37e4ec3a0fcd5eff5bf7e3d49100aebf018dc92fb6a40e4297704 77ee804b9f3295ab2362798b72b0a1b2d3291dceb8139896355830f34b3b328561531f8079b79a6e9980705150866402fdc176c05897e359a6cb1a7ab067383eb497182a7e5aef7038e4c96d133b2782917417e391535b5e1b51f47d8ed7e4d4025fe98dc87b9c1622614bff3d1029e68e372de719803857ca52067cddaad958951cb2068cc6,dd3ebe0cca0cad3af72af73fb49d40dbdcc4b1f1ff465ccaefe672f77992aca0 b771d5cef5d1a41a93d15643d7181d2a2ef0a8e84d91812f20ed21f147bef732bf3a60ef4067c3734b85bc8cd471780f10dc9e8291b58339a677b960218f71e793f2797aea349406512829065d37bb55ea796fa4f56fd8896b49b2cd19b43215ad967c712b24e5032d065232e02c127409d2ed4146b9d75d763d52db98d949d3b0fed6a8052fbb,a19eee92bb2097b64e823d597798aa18be9b7c736b8059abfd6779ac35ac81b5 b32d95b0b9aad2a8816de6d06d1f86008505bd8c14124f6e9a163b5a2ade55f835d0ec3880ef50700d3b25e42cc0af050ccd1be5e555b23087e04d7bf9813622780c7313a1954f8740b6ee2d3f71f768dd417f520482bd3a08d4f222b4ee9dbd015447b33507dd50f3ab4247c5de9a8abd62a8decea01e3b87c8b927f5b08beb37674c6f8e380c04,df673f4105379ff6b755eeab20ceb0dc77b5286364fe16c59cc8a907aff07732 04410e31082a47584b406f051398a6abe74e4da59bb6f85e6b49e8a1f7f2ca00dfba5462c2cd2bfde8b64fb21d70c083f11318b56a52d03b81cac5eec29eb31bd0078b6156786da3d6d8c33098c5c47bb67ac64db14165af65b44544d806dde5f487d5373c7f9792c299e9686b7e5821e7c8e2458315b996b5677d926dac57b3f22da873c601016a0d,d52432cf3b6b4b949aa848e058dcd62d735e0177279222e7ac0af8504762faa0 8b81e9badde026f14d95c019977024c9e13db7a5cd21f9e9fc491d716164bbacdc7060d882615d411438aea056c340cdf977788f6e17d118de55026855f93270472d1fd18b9e7e812bae107e0dfde7063301b71f6cfe4e225cab3b232905a56e994f08ee2891ba922d49c3dafeb75f7c69750cb67d822c96176c46bd8a29f1701373fb09a1a6e3c7158f,07e65754d62e01b9a049d15dec0d09c02f479ca2aeb4b18e37070b20f85a1b26 fa6eed24da6666a22208146b19a532c2ec9ba94f09f1def1e7fc13c399a48e41acc2a589d099276296348f396253b57cb0e40291bd282773656b6e0d8bea1cda084a3738816a840485fcf3fb307f777fa5feac48695c2af4769720258c77943fb4556c362d9cba8bf103aeb9034baa8ea8bfb9c4f8e6742ce0d52c49ea8e974f339612e830e9e7a9c29065,17a461b8ee507abcfed51a50ef14891309fe402c569d94394ca7a3031befcd50 9bb4af1b4f09c071ce3cafa92e4eb73ce8a6f5d82a85733440368dee4eb1cbc7b55ac150773b6fe47dbe036c45582ed67e23f4c74585dab509df1b83610564545642b2b1ec463e18048fc23477c6b2aa035594ecd33791af6af4cbc2a1166aba8d628c57e707f0b0e8707caf91cd44bdb915e0296e0190d56d33d8dde10b5b60377838973c1d943c22ed335e,a03c6b5b51ae4aa00912af1cfb6c7b960ef58036156497cc567b1369149a5949 2167f02118cc62043e9091a647cadbed95611a521fe0d64e8518f16c808ab297725598ae296880a773607a798f7c3cfce80d251ebec6885015f9abf7eaabae46798f82cb5926de5c23f44a3f9f9534b3c6f405b5364c2f8a8bdc5ca49c749bed8ce4ba48897062ae8424ca6dde5f55c0e42a95d1e292ca54fb46a84fbc9cd87f2d0c9e7448de3043ae22fdd229,14c69c5eabdefc9e3a1461a379ec92c32bc6b69071029cb3655159db1a5251a7 94b7fa0bc1c44e949b1d7617d31b4720cbe7ca57c6fa4f4094d4761567e389ecc64f6968e4064df70df836a47d0c713336b5028b35930d29eb7a7f9a5af9ad5cf441745baec9bb014ceeff5a41ba5c1ce085feb980bab9cf79f2158e03ef7e63e29c38d7816a84d4f71e0f548b7fc316085ae38a060ff9b8dec36f91ad9ebc0a5b6c338cbb8f6659d342a24368cf,3cbe06887c8ae360e957eb08ca577834c457fadf418d0cb73967fa827a22a4d7 ea40e83cb18b3a242c1ecc6ccd0b7853a439dab2c569cfc6dc38a19f5c90acbf76aef9ea3742ff3b54ef7d36eb7ce4ff1c9ab3bc119cff6be93c03e208783335c0ab8137be5b10cdc66ff3f89a1bddc6a1eed74f504cbe7290690bb295a872b9e3fe2cee9e6c67c41db8efd7d863cf10f840fe618e7936da3dca5ca6df933f24f6954ba0801a1294cd8d7e66dfafec,e58a947e98d6dd7e932d2fe02d9992e6118c0c2c606bdcda06e7943d2c95e0e5 157d5b7e4507f66d9a267476d33831e7bb768d4d04cc3438da12f9010263ea5fcafbde2579db2f6b58f911d593d5f79fb05fe3596e3fa80ff2f761d1b0e57080055c118c53e53cdb63055261d7c9b2b39bd90acc32520cbbdbda2c4fd8856dbcee173132a2679198daf83007a9b5c51511ae49766c792a29520388444ebefe28256fb33d4260439cba73a9479ee00c63,a936fb9af87fb67857b3ead5c76226ad84da47678f3c2ffe5a39fdb5f7e63ffb 836b34b515476f613fe447a4e0c3f3b8f20910ac89a3977055c960d2d5d2b72bd8acc715a9035321b86703a411dde0466d58a59769672aa60ad587b8481de4bba552a1645779789501ec53d540b904821f32b0bd1855b04e4848f9f8cfe9ebd8911be95781a759d7ad9724a7102dbe576776b7c632bc39b9b5e19057e226552a5994c1dbb3b5c7871a11f5537011044c53,3a654b88f88086c2751edae6d39248143cf6235c6b0b7969342c45a35194b67e cc7784a4912a7ab5ad3620aab29ba87077cd3cb83636adc9f3dc94f51edf521b2161ef108f21a0a298557981c0e53ce6ced45bdf782c1ef200d29bab81dd6460586964edab7cebdbbec75fd7925060f7da2b853b2b089588fa0f8c16ec6498b14c55dcee335cb3a91d698e4d393ab8e8eac0825f8adebeee196df41205c011674e53426caa453f8de1cbb57932b0b741d4c6,19a3cb3e8551f08fbba5db614e268f63d1f6a0c3689bbe973d59d35bb4f455d0 7639b461fff270b2455ac1d1afce782944aea5e9087eb4a39eb96bb5c3baaf0e868c8526d3404f9405e79e77bfac5ffb89bf1957b523e17d341d7323c302ea7083872dd5e8705694acdda36d5a1b895aaa16eca6104c82688532c8bfe1790b5dc9f4ec5fe95baed37e1d287be710431f1e5e8ee105bc42ed37d74b1e55984bf1c09fe6a1fa13ef3b96faeaed6a2a1950a12153,ca8cfb13973ff8597d6aaa806bd32e82f4ea68bac3fb543f26687de4b9cbe8bd eb6513fc61b30cfba58d4d7e80f94d14589090cf1d80b1df2e68088dc6104959ba0d583d585e9578ab0aec0cf36c48435eb52ed9ab4bbce7a5abe679c97ae2dbe35e8cc1d45b06dda3cf418665c57cbee4bbb47fa4caf78f4ee656fec237fe4eebbafa206e1ef2bd0ee4ae71bd0e9b2f54f91daadf1febfd7032381d636b733dcb3bf76fb14e23aff1f68ed3dbcf75c9b99c6f26,9ae670fa85ab5c6b3bc76797cf24cd385110708137b6f8efd8d1a21c39881c18 1594d74bf5dde444265d4c04dad9721ff3e34cbf622daf341fe16b96431f6c4df1f760d34f296eb97d98d560ad5286fec4dce1724f20b54fd7df51d4bf137add656c80546fb1bf516d62ee82baa992910ef4cc18b70f3f8698276fcfb44e0ec546c2c39cfd8ee91034ff9303058b4252462f86c823eb15bf481e6b79cc3a02218595b3658e8b37382bd5048eaed5fd02c37944e73b,e32df6218ba75fd4788a7e5727a7d68c5829c49346683fc213e433af3dba5ab5 4cfa1278903026f66fedd41374558be1b585d03c5c55dac94361df286d4bd39c7cb8037ed3b267b07c346626449d0cc5b0dd2cf221f7e4c3449a4be99985d2d5e67bff2923357ddeab5abcb4619f3a3a57b2cf928a022eb27676c6cf805689004fca4d41ea6c2d0a4789c7605f7bb838dd883b3ad3e6027e775bcf262881428099c7fff95b14c095ea130e0b9938a5e22fc52650f591,028173e3c6c392e5d13af748f3788d43449bc5dd5953124ea5edf3930275f665 d3e65cb92cfa79662f6af493d696a07ccf32aaadcceff06e73e8d9f6f909209e66715d6e978788c49efb9087b170ecf3aa86d2d4d1a065ae0efc8924f365d676b3cb9e2bec918fd96d0b43dee83727c9a93bf56ca2b2e59adba85696546a815067fc7a78039629d4948d157e7b0d826d1bf8e81237bab7321312fdaa4d521744f988db6fdf04549d0fdca393d639c729af716e9c8bba48,97450fc46f2e5df8f81623b1cca43fa50f51ea735e4421d7dff66314d8e211bc 842cc583504539622d7f71e7e31863a2b885c56a0ba62db4c2a3f2fd12e79660dc7205ca29a0dc0a87db4dc62ee47a41db36b9ddb3293b9ac4baae7df5c6e7201e17f717ab56e12cad476be49608ad2d50309e7d48d2d8de4fa58ac3cfeafeee48c0a9eec88498e3efc51f54d300d828dddccb9d0b06dd021a29cf5cb5b2506915beb8a11998b8b886e0f9b7a80e97d91a7d01270f9a7717,ab4e5a70390577f8ae260d53cb0e70914f8b9398abaa841f7807f1476046c64f 6c4b0a0719573e57248661e98febe326571f9a1ca813d3638531ae28b4860f23c3a3a8ac1c250034a660e2d71e16d3acc4bf9ce215c6f15b1c0fc7e77d3d27157e66da9ceec9258f8f2bf9e02b4ac93793dd6e29e307ede3695a0df63cbdc0fc66fb770813eb149ca2a916911bee4902c47c7802e69e405fe3c04ceb5522792a5503fa829f707272226621f7c488a7698c0d69aa561be9f378,8118f2c157df1250db43b31183f442f89b322e496918838c5b668f9647ac6d6b 51b7dbb7ce2ffeb427a91ccfe5218fd40f9e0b7e24756d4c47cd55606008bdc27d16400933906fd9f30effdd4880022d081155342af3fb6cd53672ab7fb5b3a3bcbe47be1fd3a2278cae8a5fd61c1433f7d350675dd21803746cadca574130f01200024c6340ab0cc2cf74f2234669f34e9009ef2eb94823d62b31407f4ba46f1a1eec41641e84d77727b59e746b8a671bef936f05be820759fa,736e30accc5559188412c797a1a5be61d1f90f149401f631597944155a85faf7 83599d93f5561e821bd01a472386bc2ff4efbd4aed60d5821e84aae74d8071029810f5e286f8f17651cd27da07b1eb4382f754cd1c95268783ad09220f5502840370d494beb17124220f6afce91ec8a0f55231f9652433e5ce3489b727716cf4aeba7dcda20cd29aa9a859201253f948dd94395aba9e3852bd1d60dda7ae5dc045b283da006e1cbad83cc13292a315db5553305c628dd091146597,9599deeccc698a24a461a7419e91939c741613f4ce887dba89dc7e327c51f5bf 2be9bf526c9d5a75d565dd11ef63b979d068659c7f026c08bea4af161d85a462d80e45040e91f4165c074c43ac661380311a8cbed59cc8e4c4518e80cd2c78ab1cabf66bff83eab3a80148550307310950d034a6286c93a1ece8929e6385c5e3bb6ea8a7c0fb6d6332e320e71cc4eb462a2a62e2bfe08f0ccad93e61bedb5dd0b786a728ab666f07e0576d189c92bf9fb20dca49ac2d3956d47385e2,be0d871606a4c129cef616f438600d5cbc0e9f49d2adc8a86571c192361c3f4f ca76d3a12595a817682617006848675547d3e8f50c2210f9af906c0e7ce50b4460186fe70457a9e879e79fd4d1a688c70a347361c847ba0dd6aa52936eaf8e58a1be2f5c1c704e20146d366aeb3853bed9de9befe9569ac8aaea37a9fb7139a1a1a7d5c748605a8defb297869ebedd71d615a5da23496d11e11abbb126b206fa0a7797ee7de117986012d0362dcef775c2fe145ada6bda1ccb326bf644,4d30600c60ed94a0d2bcc17571a19bd0170cdacac78d0421e0bbae2a36a48b6d f76b85dc67421025d64e93096d1d712b7baf7fb001716f02d33b2160c2c882c310ef13a576b1c2d30ef8f78ef8d2f465007109aad93f74cb9e7d7bef7c9590e8af3b267c89c15db238138c45833c98cc4a471a7802723ef4c744a853cf80a0c2568dd4ed58a2c9644806f42104cee53628e5bdf7b63b0b338e931e31b87c24b146c6d040605567ceef5960df9e022cb469d4c787f4cba3c544a1ac91f95f,3bd6fb72764f7ad4391b7b40aea424abd5f5561ac56f9e072c753d6090fa4bfb 25b8c9c032ea6bcd733ffc8718fbb2a503a4ea8f71dea1176189f694304f0ff68e862a8197b839957549ef243a5279fc2646bd4c009b6d1edebf24738197abb4c992f6b1dc9ba891f570879accd5a6b18691a93c7d0a8d38f95b639c1daeb48c4c2f15ccf5b9d508f8333c32de78781b41850f261b855c4bebcc125a380c54d501c5d3bd07e6b52102116088e53d76583b0161e2a58d0778f091206aabd5a1,6689bb25baee0c582f8f1b0c87073be366644da859313becf446435d2f6e899e 21cfdc2a7ccb7f331b3d2eefff37e48ad9fa9c788c3f3c200e0173d99963e1cbca93623b264e920394ae48bb4c3a5bb96ffbc8f0e53f30e22956adabc2765f57fb761e147ecbf8567533db6e50c8a1f894310a94edf806dd8ca6a0e141c0fa7c9fae6c6ae65f18c93a8529e6e5b553bf55f25be2e80a9882bd37f145fecbeb3d447a3c4e46c21524cc55cdd62f521ab92a8ba72b897996c49bb273198b7b1c9e,2628ddc7758208aa9f1e49497224eb268c6d2bcdaab4820de9c16a65c6f6017a 4e452ba42127dcc956ef4f8f35dd68cb225fb73b5bc7e1ec5a898bba2931563e74faff3b67314f241ec49f4a7061e3bd0213ae826bab380f1f14faab8b0efddd5fd1bb49373853a08f30553d5a55ccbbb8153de4704f29ca2bdeef0419468e05dd51557ccc80c0a96190bbcc4d77ecff21c66bdf486459d427f986410f883a80a5bcc32c20f0478bb9a97a126fc5f95451e40f292a4614930d054c851acd019ccf,df448936ee72d9fe6ccfb37d183aafddc7908e016271afa81ec083a10a144f5d fa85671df7dadf99a6ffee97a3ab9991671f5629195049880497487867a6c446b60087fac9a0f2fcc8e3b24e97e42345b93b5f7d3691829d3f8ccd4bb36411b85fc2328eb0c51cb3151f70860ad3246ce0623a8dc8b3c49f958f8690f8e3860e71eb2b1479a5cea0b3f8befd87acaf5362435eaeccb52f38617bc6c5c2c6e269ead1fbd69e941d4ad2012da2c5b21bcfbf98e4a77ab2af1f3fda3233f046d38f1dc8,2bb4cec22a4fecd83fbbbad1e3835343e36c6cb66c26964a432ec4c70f3e17b4 e90847ae6797fbc0b6b36d6e588c0a743d725788ca50b6d792352ea8294f5ba654a15366b8e1b288d84f5178240827975a763bc45c7b0430e8a559df4488505e009c63da994f1403f407958203cebb6e37d89c94a5eacf6039a327f6c4dbbc7a2a307d976aa39e41af6537243fc218dfa6ab4dd817b6a397df5ca69107a9198799ed248641b63b42cb4c29bfdd7975ac96edfc274ac562d0474c60347a078ce4c25e88,1462f2ea1c3580c0a2e8c0b30c27a608d82cd707f6d1a0aad5cc7c3d1b8d6c30 f6d5c2b6c93954fc627602c00c4ca9a7d3ed12b27173f0b2c9b0e4a5939398a665e67e69d0b12fb7e4ceb253e8083d1ceb724ac07f009f094e42f2d6f2129489e846eaff0700a8d4453ef453a3eddc18f408c77a83275617fabc4ea3a2833aa73406c0e966276079d38e8e38539a70e194cc5513aaa457c699383fd1900b1e72bdfb835d1fd321b37ba80549b078a49ea08152869a918ca57f5b54ed71e4fd3ac5c06729,617b412ed64f56d6db36b7e52ead618d95a091d65052c3f376a532d8bbdaf7c7 cf8562b1bed89892d67ddaaf3deeb28246456e972326dbcdb5cf3fb289aca01e68da5d59896e3a6165358b071b304d6ab3d018944be5049d5e0e2bb819acf67a6006111089e6767132d72dd85beddcbb2d64496db0cc92955ab4c6234f1eea24f2d51483f2e209e4589bf9519fac51b4d061e801125e605f8093bb6997bc163d551596fe4ab7cfae8fb9a90f6980480ce0c229fd1675409bd788354daf316240cfe0af93eb,82c541ea5cb15d1a4125f536825938c2358eec2bddc5d1cc4042de3af036ca55 2ace31abb0a2e3267944d2f75e1559985db7354c6e605f18dc8470423fca30b7331d9b33c4a4326783d1caae1b4f07060eff978e4746bf0c7e30cd61040bd5ec2746b29863eb7f103ebda614c4291a805b6a4c8214230564a0557bc7102e0bd3ed23719252f7435d64d210ee2aafc585be903fa41e1968c50fd5d5367926df7a05e3a42cf07e656ff92de73b036cf8b19898c0cb34557c0c12c2d8b84e91181af467bc75a9d1,684bb7932433218c616f0590b039cefac972828470647d1591ceac889c893272 0d8d09aed19f1013969ce5e7eb92f83a209ae76be31c754844ea9116ceb39a22ebb6003017bbcf26555fa6624185187db8f0cb3564b8b1c06bf685d47f3286eda20b83358f599d2044bbf0583fab8d78f854fe0a596183230c5ef8e54426750eaf2cc4e29d3bdd037e734d863c2bd9789b4c243096138f7672c232314effdfc6513427e2da76916b5248933be312eb5dde4cf70804fb258ac5fb82d58d08177ac6f4756017fff5,508b2af376ba6467cf982c767c848d2bda8d068a53416f074a0c98c473d02f6b c3236b73deb7662bf3f3daa58f137b358ba610560ef7455785a9befdb035a066e90704f929bd9689cef0ce3bda5acf4480bceb8d09d10b098ad8500d9b6071dfc3a14af6c77511d81e3aa8844986c3bea6f469f9e02194c92868cd5f51646256798ff0424954c1434bdfed9facb390b07d342e992936e0f88bfd0e884a0ddb679d0547ccdec6384285a45429d115ac7d235a717242021d1dc35641f5f0a48e8445dba58e6cb2c8ea,55e228bcbda7061642d004373d4e6407b72a37381d1beffcbfbf9f5f6ea093ea b39feb8283eadc63e8184b51df5ae3fd41aac8a963bb0be1cd08aa5867d8d910c669221e73243360646f6553d1ca05a84e8dc0de05b6419ec349ca994480193d01c92525f3fb3dcefb08afc6d26947bdbbfd85193f53b50609c6140905c53a6686b58e53a319a57b962331ede98149af3de3118a819da4d76706a0424b4e1d2910b0ed26af61d150ebcb46595d4266a0bd7f651ba47d0c7f179ca28545007d92e8419d48fdfbd744ce,0523c09bbcffe418d3fcd22c6abf95abfb38f94ce5562b8bfcd2eea9fb729041 a983d54f503803e8c7999f4edbbe82e9084f422143a932ddddc47a17b0b7564a7f37a99d0786e99476428d29e29d3c197a72bfab1342c12a0fc4787fd7017d7a6174049ea43b5779169ef7472bdbbd941dcb82fc73aac45a8a94c9f2bd3477f61fd3b796f02a1b8264a214c6fea74b7051b226c722099ec7883a462b83b6afdd4009248b8a237f605fe5a08fe7d8b45321421ebba67bd70a0b00ddbf94baab7f359d5d1eea105f28dcfb,dcbc258241aded3799996c2ad6ed0e3d74cfcc67749d3480b2a9a78e5f8aff82 e4d1c1897a0a866ce564635b74222f9696bf2c7f640dd78d7e2aca66e1b61c642bb03ea7536aae597811e9bf4a7b453ede31f97b46a5f0ef51a071a2b3918df16b152519ae3776f9f1edab4c2a377c3292e96408359d3613844d5eb393000283d5ad3401a318b12fd1474b8612f2bb50fb6a8b9e023a54d7dde28c43d6d8854c8d9d1155935c199811dbfc87e9e0072e90eb88681cc7529714f8fb8a2c9d88567adfb974ee205a9bf7b848,cbe8318e7b2fe72bfcd2530cccecea4018b1587f483b73f50ce5e84ced65e093 b10c59723e3dcadd6d75df87d0a1580e73133a9b7d00cb95ec19f5547027323be75158b11f80b6e142c6a78531886d9047b08e551e75e6261e79785366d7024bd7cd9cf322d9be7d57fb661069f2481c7bb759cd71b4b36ca2bc2df6d3a328faebdb995a9794a8d72155ed551a1f87c80bf6059b43fc764900b18a1c2441f7487743cf84e565f61f8dd2ece6b6ccc9444049197aaaf53e926fbee3bfca8be588ec77f29d211be89de18b15f6,8cea2960087048e6e6d47e31554f305fcc81e03e90ba8f8332dd86c6b6b38e03 db11f609baba7b0ca634926b1dd539c8cbada24967d7add4d9876f77c2d80c0f4dcefbd7121548373582705cca2495bd2a43716fe64ed26d059cfb566b3364bd49ee0717bdd9810dd14d8fad80dbbdc4cafb37cc60fb0fe2a80fb4541b8ca9d59dce457738a9d3d8f641af8c3fd6da162dc16fc01aac527a4a0255b4d231c0be50f44f0db0b713af03d968fe7f0f61ed0824c55c4b5265548febd6aad5c5eedf63efe793489c39b8fd29d104ce,44e276991e5382bd7eb5adcf1f79362804d346bedfc6916f4dca4b57240e9c99 bebd4f1a84fc8b15e4452a54bd02d69e304b7f32616aadd90537937106ae4e28de9d8aab02d19bc3e2fde1d651559e296453e4dba94370a14dbbb2d1d4e2022302ee90e208321efcd8528ad89e46dc839ea9df618ea8394a6bff308e7726bae0c19bcd4be52da6258e2ef4e96aa21244429f49ef5cb486d7ff35cac1bacb7e95711944bccb2ab34700d42d1eb38b5d536b947348a458ede3dc6bd6ec547b1b0cae5b257be36a7124e1060c170ffa,80891a086af385025068799f192411c689cc4e0d9a59f3f41dbb02a343f1a759 5aca56a03a13784bdc3289d9364f79e2a85c12276b49b92db0adaa4f206d5028f213f678c3510e111f9dc4c1c1f8b6acb17a6413aa227607c515c62a733817ba5e762cc6748e7e0d6872c984d723c9bb3b117eb8963185300a80bfa65cde495d70a46c44858605fccbed086c2b45cef963d33294dbe9706b13af22f1b7c4cd5a001cfec251fba18e722c6e1c4b1166918b4f6f48a98b64b3c07fc86a6b17a6d0480ab79d4e6415b520f1c484d675b1,77ddf034b7dfd6b292aa3b0c1e552f47b1d8c23078042cc58bb3dd4720b9ee4d a5aad0e4646a32c85cfcac73f02fc5300f1982fabb2f2179e28303e447854094cdfc854310e5c0f60993ceff54d84d6b46323d930adb07c17599b35b505f09e784bca5985e0172257797fb53649e2e9723efd16865c31b5c3d5113b58bb0bfc8920fabdda086d7537e66d709d050bd14d0c960873f156fad5b3d3840cdfcdc9be6af519db262a27f40896ab25cc39f96984d650611c0d5a3080d5b3a1bf186abd42956588b3b58cd948970d298776060,23d2688d867a18040e82f7876acf04dc3a9c0140fedd93ebe7adf920b2f83da4 06cbbe67e94a978203ead6c057a1a5b098478b4b4cbef5a97e93c8e42f5572713575fc2a884531d7622f8f879387a859a80f10ef02708cd8f7413ab385afc357678b9578c0ebf641ef076a1a30f1f75379e9dcb2a885bdd295905ee80c0168a62a9597d10cf12dd2d8cee46645c7e5a141f6e0e23aa482abe5661c16e69ef1e28371e2e236c359ba4e92c25626a7b7ff13f6ea4ae906e1cfe163e91719b1f750a96cbde5fbc953d9e576cd216afc90323a,2df666fc5d4ead1c3b10b9f8d4bb81aea4f93d3873d5ce5cfbac4b69435e1b7c f1c528cf7739874707d4d8ad5b98f7c77169de0b57188df233b2dc8a5b31eda5db4291dd9f68e6bad37b8d7f6c9c0044b3bf74bbc3d7d1798e138709b0d75e7c593d3cccdc1b20c7174b4e692add820ace262d45ccfae2077e878796347168060a162ecca8c38c1a88350bd63bb539134f700fd4addd5959e255337daa06bc86358fabcbefdfb5bc889783d843c08aadc6c4f6c36f65f156e851c9a0f917e4a367b5ad93d874812a1de6a7b93cd53ad97232,af0c5474528032e2629b8fbb0e34405f7f251d41e73b5667be3c07ccb2c1c953 9d9f3a7ecd51b41f6572fd0d0881e30390dfb780991dae7db3b47619134718e6f987810e542619dfaa7b505c76b7350c6432d8bf1cfebdf1069b90a35f0d04cbdf130b0dfc7875f4a4e62cdb8e525aadd7ce842520a482ac18f09442d78305fe85a74e39e760a4837482ed2f437dd13b2ec1042afcf9decdc3e877e50ff4106ad10a525230d11920324a81094da31deab6476aa42f20c84843cfc1c58545ee80352bdd3740dd6a16792ae2d86f11641bb717c2,9bbef7a75391354a388aaa7ca035dc62d3231b80091bb7748f76e52d8e9f20f0 5179888724819fbad3afa927d3577796660e6a81c52d98e9303261d5a4a83232f6f758934d50aa83ff9e20a5926dfebaac49529d006eb923c5ae5048ed544ec471ed7191edf46363383824f915769b3e688094c682b02151e5ee01e510b431c8865aff8b6b6f2f59cb6d129da79e97c6d2b8fa6c6da3f603199d2d1bcab547682a81cd6cf65f6551121391d78bcc23b5bd0e922ec6d8bf97c952e84dd28aef909aba31edb903b28fbfc33b7703cd996215a11238,b108457a6bd331be43c9fe1e2a02e8c744c2bcc927a9c3c486f110dccf907f6b 576ef3520d30b7a4899b8c0d5e359e45c5189add100e43be429a02fb3de5ff4f8fd0e79d9663acca72cd29c94582b19292a557c5b1315297d168fbb54e9e2ecd13809c2b5fce998edc6570545e1499dbe7fb74d47cd7f35823b212b05bf3f5a79caa34224fdd670d335fcb106f5d92c3946f44d3afcbae2e41ac554d8e6759f332b76be89a0324aa12c5482d1ea3ee89ded4936f3e3c080436f539fa137e74c6d3389bdf5a45074c47bc7b20b0948407a66d855e2f,a61109838dfa5b146df4e6c3bdbc7a477be36b6228ebd91025012af4cc0eb409 0df2152fa4f4357c8741529dd77e783925d3d76e95bafa2b542a2c33f3d1d117d159cf473f82310356fee4c90a9e505e70f8f24859656368ba09381fa245eb6c3d763f3093f0c89b972e66b53d59406d9f01aea07f8b3b615cac4ee4d05f542e7d0dab45d67ccccd3a606ccbeb31ea1fa7005ba07176e60dab7d78f6810ef086f42f08e595f0ec217372b98970cc6321576d92ce38f7c397a403bada1548d205c343ac09deca86325373c3b76d9f32028fea8eb32515,4f0f30c890b0ab404961158573538fe9a2b234b94a0991f26d5ea04fddc9c565 3e15350d87d6ebb5c8ad99d42515cfe17980933c7a8f6b8bbbf0a63728cefaad2052623c0bd5931839112a48633fb3c2004e0749c87a41b26a8b48945539d1ff41a4b269462fd199bfecd45374756f55a9116e92093ac99451aefb2af9fd32d6d7f5fbc7f7a540d5097c096ebc3b3a721541de073a1cc02f7fb0fb1b9327fb0b1218ca49c9487ab5396622a13ae546c97abdef6b56380dda7012a8384091b6656d0ab272d363cea78163ff765cdd13ab1738b940d16cae,85459cfb0289599cdd67c473a0ba6da616c608e367f58c50a03562424dcf1d06 c38d6b0b757cb552be40940ece0009ef3b0b59307c1451686f1a22702922800d58bce7a636c1727ee547c01b214779e898fc0e560f8ae7f61bef4d75eaa696b921fd6b735d171535e9edd267c192b99880c87997711002009095d8a7a437e258104a41a505e5ef71e5613ddd2008195f0c574e6ba3fe40099cfa116e5f1a2fa8a6da04badcb4e2d5d0de31fdc4800891c45781a0aac7c907b56d631fca5ce8b2cde620d11d1777ed9fa603541de794ddc5758fcd5fad78c0,5539d2e52a5a1bb3c246b0158356e2b2782fc13c10248937a0c4a40b091f6247 8d2de3f0b37a6385c90739805b170057f091cd0c7a0bc951540f26a5a75b3e694631bb64c7635eed316f51318e9d8de13c70a2aba04a14836855f35e480528b776d0a1e8a23b547c8b8d6a0d09b241d3be9377160cca4e6793d00a515dc2992cb7fc741daca171431da99cce6f7789f129e2ac5cf65b40d703035cd2185bb936c82002daf8cbc27a7a9e554b06196630446a6f0a14ba155ed26d95bd627b7205c072d02b60db0fd7e49ea058c2e0ba202daff0de91e845cf79,6d63419207b99d4db1add795d852a8daac11b789af0c7d6353036cb23f6428b4 c464bbdad275c50dcd983b65ad1019b9ff85a1e71c807f3204bb2c921dc31fbcd8c5fc45868ae9ef85b6c9b83bba2a5a822201ed68586ec5ec27fb2857a5d1a2d09d09115f22dcc39fe61f5e1ba0ff6e8b4acb4c6da748be7f3f0839739394ff7fa8e39f7f7e84a33c3866875c01bcb1263c9405d91908e9e0b50e7459fabb63d8c6bbb73d8e3483c099b55bc30ff092ff68b6adedfd477d63570c9f5515847f36e24ba0b705557130cec57ebad1d0b31a378e91894ee26e3a04,d2090dae0fc201b2b9c03dd482a8eb1ffd3cf70c55f98d6f39a41b8bdac27a17 8b8d68bb8a75732fe272815a68a1c9c5aa31b41dedc8493e76525d1d013d33cebd9e21a5bb95db2616976a8c07fcf411f5f6bc6f7e0b57aca78cc2790a6f9b898858ac9c79b165ff24e66677531e39f572be5d81eb3264524181115f32780257bfb9aeec6af12af28e587cac068a1a2953b59ad680f4c245b2e3ec36f59940d37e1d3db38e13edb29b5c0f404f6ff87f80fc8be7a225ff22fbb9c8b6b1d7330c57840d24bc75b06b80d30dad6806544d510af6c4785e823ac3e0b8,c9e8f96ba75eaf371dca35dc69138eca8cb3f2823f3be551d9dc8aa6a4ed4169 6b018710446f368e7421f1bc0ccf562d9c1843846bc8d98d1c9bf7d9d6fcb48bfc3bf83b36d44c4fa93430af75cd190bde36a7f92f867f58a803900df8018150384d85d82132f123006ac2aeba58e02a037fe6afbd65eca7c44977dd3dc74f48b6e7a1bfd5cc4dcf24e4d52e92bd4455848e4928b0eac8b7476fe3cc03e862aa4dff4470dbfed6de48e410f25096487ecfc32a27277f3f5023b2725ade461b1355889554a8836c9cf53bd767f5737d55184eea1ab3f53edd0976c485,233b0bc28143c32a668b0ab5d76be5712c0387056fb0e79f2c2f7f1c31e4a86a c9534a24714bd4be37c88a3da1082eda7cabd154c309d7bd670dccd95aa535594463058a29f79031d6ecaa9f675d1211e9359be82669a79c855ea8d89dd38c2c761ddd0ec0ce9e97597432e9a1beae062cdd71edfdfd464119be9e69d18a7a7fd7ce0e2106f0c8b0abf4715e2ca48ef9f454dc203c96656653b727083513f8efb86e49c513bb758b3b052fe21f1c05bb33c37129d6cc81f1aef6adc45b0e8827a830fe545cf57d0955802c117d23ccb55ea28f95c0d8c2f9c5a242b33f,b79b5f8182d3fb4abab63e7cb26a8e0865ae8d79bd4c514ad8917d5ecb7fed8f 07906c87297b867abf4576e9f3cc7f82f22b154afcbf293b9319f1b0584da6a40c27b32e0b1b7f412c4f1b82480e70a9235b12ec27090a5a33175a2bb28d8adc475cefe33f7803f8ce27967217381f02e67a3b4f84a71f1c5228e0c2ad971373f6f672624fcea8d1a9f85170fad30fa0bbd25035c3b41a6175d467998bd1215f6f3866f53847f9cf68ef3e2fbb54bc994de2302b829c5eea68ec441fcbafd7d16ae4fe9fff98bf00e5bc2ad54dd91ff9fda4dd77b6c754a91955d1fbaad0,f680198de2943d20e9d809fd8312d674c9a250da22ba6e920e408f6f2c0e0739 588e94b9054abc2189df69b8ba34341b77cdd528e7860e5defcaa79b0c9a452ad4b82aa306be84536eb7cedcbe058d7b84a6aef826b028b8a0271b69ac3605a9635ea9f5ea0aa700f3eb7835bc54611b922964300c953efe7491e3677c2cebe0822e956cd16433b02c68c4a23252c3f9e151a416b4963257b783e038f6b4d5c9f110f871652c7a649a7bcedcbccc6f2d0725bb903cc196ba76c76aa9f10a190b1d1168993baa9ffc96a1655216773458bec72b0e39c9f2c121378feab4e76a,a190dd73556086ea70bc31022d6a4f95d89dc099e2030c19311cc8988281278f 08959a7e4baae874928813364071194e2939772f20db7c3157078987c557c2a6d5abe68d520eef3dc491692e1e21bcd880adebf63bb4213b50897fa005256ed41b5690f78f52855c8d9168a4b666fce2da2b456d7a7e7c17ab5f2fb1ee90b79e698712e963715983fd07641ae4b4e9dc73203fac1ae11fa1f8c7941fcc82eab247addb56e2638447e9d609e610b60ce086656aaebf1da3c8a231d7d94e2fd0afe46b391ff14a72eaeb3f44ad4df85866def43d4781a0b3578bc996c87970b132,21166064c52b588c1ec7ea6df1905a2b59bad499b470f308a26b6e354ddfe58f cb2a234f45e2ecd5863895a451d389a369aab99cfef0d5c9ffca1e6e63f763b5c14fb9b478313c8e8c0efeb3ac9500cf5fd93791b789e67eac12fd038e2547cc8e0fc9db591f33a1e4907c64a922dda23ec9827310b306098554a4a78f050262db5b545b159e1ff1dca6eb734b872343b842c57eafcfda8405eedbb48ef32e99696d135979235c3a05364e371c2d76f1902f1d83146df9495c0a6c57d7bf9ee77e80f9787aee27be1fe126cdc9ef893a4a7dcbbc367e40fe4e1ee90b42ea25af01,051e19906464ec7fdc3d37ee3bcef63438ec5edbea5aa202a24b7f7190b689e0 d16beadf02ab1d4dc6f88b8c4554c51e866df830b89c06e786a5f8757e8909310af51c840efe8d20b35331f4355d80f73295974653ddd620cdde4730fb6c8d0d2dcb2b45d92d4fbdb567c0a3e86bd1a8a795af26fbf29fc6c65941cddb090ff7cd230ac5268ab4606fccba9eded0a2b5d014ee0c34f0b2881ac036e24e151be89eeb6cd9a7a790afccff234d7cb11b99ebf58cd0c589f20bdac4f9f0e28f75e3e04e5b3debce607a496d848d67fa7b49132c71b878fd5557e082a18eca1fbda94d4b,18fe66c0cd095c9cc811f5410b5cfdc1b152ae3cab0c3328974e7d4bbeb40053 8f65f6bc59a85705016e2bae7fe57980de3127e5ab275f573d334f73f8603106ec3553016608ef2dd6e69b24be0b7113bf6a760ba6e9ce1c48f9e186012cf96a1d4849d75df5bb8315387fd78e9e153e76f8ba7ec6c8849810f59fb4bb9b004318210b37f1299526866f44059e017e22e96cbe418699d014c6ea01c9f0038b10299884dbec3199bb05adc94e955a1533219c1115fed0e5f21228b071f40dd57c4240d98d37b73e412fe0fa4703120d7c0c67972ed233e5deb300a22605472fa3a3ba86,bdb42638921199d604294b5578cebaccdf132e1d7af7675b7768e50553fcb604 84891e52e0d451813210c3fd635b39a03a6b7a7317b221a7abc270dfa946c42669aacbbbdf801e1584f330e28c729847ea14152bd637b3d0f2b38b4bd5bf9c791c58806281103a3eabbaede5e711e539e6a8b2cf297cf351c078b4fa8f7f35cf61bebf8814bf248a01d41e86c5715ea40c63f7375379a7eb1d78f27622fb468ab784aaaba4e534a6dfd1df6fa15511341e725ed2e87f98737ccb7b6a6dfae416477472b046bf1811187d151bfa9f7b2bf9acdb23a3be507cdf14cfdf517d2cb5fb9e4ab6,cbd88209b530018a856c5c2321d7e485511ca1513661f1fde1fa06f4603de117 fdd7a9433a3b4afabd7a3a5e3457e56debf78e84b7a0b0ca0e8c6d53bd0c2dae31b2700c6128334f43981be3b213b1d7a118d59c7e6b6493a86f866a1635c12859cfb9ad17460a77b4522a5c1883c3d6acc86e6162667ec414e9a104aa892053a2b1d72165a855bacd8faf8034a5dd9b716f47a0818c09bb6baf22aa503c06b4ca261f557761989d2afbd88b6a678ad128af68672107d0f1fc73c5ca740459297b3292b281e93bceb761bde7221c3a55708e5ec84472cddcaa84ecf23723cc0991355c6280,f0c4c1374f33a91dc657f8a3fa51763cbd0fba1cafdd2c595ed302aab1ab75a9 70a40bfbef92277a1aad72f6b79d0177197c4ebd432668cfec05d099accb651062b5dff156c0b27336687a94b26679cfdd9daf7ad204338dd9c4d14114033a5c225bd11f217b5f4732da167ee3f939262d4043fc9cba92303b7b5e96aea12adda64859df4b86e9ee0b58e39091e6b188b408ac94e1294a8911245ee361e60e601eff58d1d37639f3753bec80ebb4efde25817436076623fc65415fe51d1b0280366d12c554d86743f3c3b6572e400361a60726131441ba493a83fbe9afda90f7af1ae717238d,f2157c165eebdfd04451e9e6cf0b112bb148eb9c40e8b2427ee8ea57e60d5dd6 74356e449f4bf8644f77b14f4d67cb6bd9c1f5ae357621d5b8147e562b65c66585caf2e491b48529a01a34d226d436959153815380d5689e30b35357cdac6e08d3f2b0e88e200600d62bd9f5eaf488df86a4470ea227006182e44809009868c4c280c43d7d64a5268fa719074960087b3a6abc837882f882c837834535929389a12b2c78187e2ea07ef8b8eef27dc85002c3ae35f1a50bee6a1c48ba7e175f3316670b27983472aa6a61eed0a683a39ee323080620ea44a9f74411ae5ce99030528f9ab49c79f2,0836abbf77ef78e162de8fb664b9996d5a03919b741eb4a3f02e7b97826569fa 8c3798e51bc68482d7337d3abb75dc9ffe860714a9ad73551e120059860dde24ab87327222b64cf774415a70f724cdf270de3fe47dda07b61c9ef2a3551f45a5584860248fabde676e1cd75f6355aa3eaeabe3b51dc813d9fb2eaa4f0f1d9f834d7cad9c7c695ae84b329385bc0bef895b9f1edf44a03d4b410cc23a79a6b62e4f346a5e8dd851c2857995ddbf5b2d717aeb847310e1f6a46ac3d26a7f9b44985af656d2b7c9406e8a9e8f47dcb4ef6b83caacf9aefb6118bfcff7e44bef6937ebddc89186839b77,84970c79316e89b70e2b186a69db1a4c3e33c7a376b45c1b79bd346dd33ef4ce fa56bf730c4f8395875189c10c4fb251605757a8fecc31f9737e3c2503b02608e6731e85d7a38393c67de516b85304824bfb135e33bf22b3a23b913bf6acd2b7ab85198b8187b2bcd454d5e3318cacb32fd6261c31ae7f6c54ef6a7a2a4c9f3ecb81ce3555d4f0ad466dd4c108a90399d70041997c3b25345a9653f3c9a6711ab1b91d6a9d2216442da2c973cbd685ee7643bfd77327a2f7ae9cb283620a08716dfb462e5c1d65432ca9d56a90e811443cd1ecb8f0de179c9cb48ba4f6fec360c66f252f6e64edc96b,06ed2ebc419d053949e88cc9c040b1ebce74375ad0ce09c0cd4d562c62f8497d b6134f9c3e91dd8000740d009dd806240811d51ab1546a974bcb18d344642baa5cd5903af84d58ec5ba17301d5ec0f10ccd0509cbb3fd3fff9172d193af0f782252fd1338c7244d40e0e42362275b22d01c4c3389f19dd69bdf958ebe28e31a4ffe2b5f18a87831cfb7095f58a87c9fa21db72ba269379b2dc2384b3da953c7925761fed324620acea435e52b424a7723f6a2357374157a34cd8252351c25a1b232826cefe1bd3e70ffc15a31e7c0598219d7f00436294d11891b82497bc78aa5363892a2495df8c1eef,cf9060af3e4ed47316acf51e5b92123cdc4827bd4aef991588dcd8078b9eea40 c941cdb9c28ab0a791f2e5c8e8bb52850626aa89205bec3a7e22682313d198b1fa33fc7295381354858758ae6c8ec6fac3245c6e454d16fa2f51c4166fab51df272858f2d603770c40987f64442d487af49cd5c3991ce858ea2a60dab6a65a34414965933973ac2457089e359160b7cdedc42f29e10a91921785f6b7224ee0b349393cdcff6151b50b377d609559923d0984cda6000829b916ab6896693ef6a2199b3c22f7dc5500a15b8258420e314c222bc000bc4e5413e6dd82c993f8330f5c6d1be4bc79f08a1a0a46,63e407300f99ff2360f02aae0ada35f6c1a90aed2c63282b23a7990bae307254 4499efffac4bcea52747efd1e4f20b73e48758be915c88a1ffe5299b0b005837a46b2f20a9cb3c6e64a9e3c564a27c0f1c6ad1960373036ec5bfe1a8fc6a435c2185ed0f114c50e8b3e4c7ed96b06a036819c9463e864a58d6286f785e32a804443a56af0b4df6abc57ed5c2b185ddee8489ea080deeee66aa33c2e6dab36251c402682b6824821f998c32163164298e1fafd31babbcffb594c91888c6219079d907fdb438ed89529d6d96212fd55abe20399dbefd342248507436931cdead496eb6e4a80358acc78647d043,427741570d5e21590e5045a8450216365ba95c2e72455a3dbd694f13155de1b7 eecbb8fdfa4da62170fd06727f697d81f83f601ff61e478105d3cb7502f2c89bf3e8f56edd469d049807a38882a7eefbc85fc9a950952e9fa84b8afebd3ce782d4da598002827b1eb98882ea1f0a8f7aa9ce013a6e9bc462fb66c8d4a18da21401e1b93356eb12f3725b6db1684f2300a98b9a119e5d27ff704affb618e12708e77e6e5f34139a5a41131fd1d6336c272a8fc37080f041c71341bee6ab550cb4a20a6ddb6a8e0299f2b14bc730c54b8b1c1c487b494bdccfd3a53535ab2f231590bf2c4062fd2ad58f906a2d0d,b5e60a019e8414d470ae702738bc358f1c80bb6ff7bde4f2dbb56c299c764b16 e64f3e4ace5c8418d65fec2bc5d2a303dd458034736e3b0df719098be7a206deaf52d6ba82316caf330ef852375188cde2b39cc94aa449578a7e2a8e3f5a9d68e816b8d16889fbc0ebf0939d04f63033ae9ae2bdab73b88c26d6bd25ee460ee1ef58fb0afa92cc539f8c76d3d097e7a6a63ebb9b5887edf3cf076028c5bbd5b9db3211371ad3fe121d4e9bf44229f4e1ecf5a0f9f0eba4d5ceb72878ab22c3f0eb5a625323ac66f7061f4a81fac834471e0c59553f108475fe290d43e6a055ae3ee46fb67422f814a68c4be3e8c9,c986bdae9b13fbc92793619e4970abc33398f2b5a57a6cbb40a622592e2695df d2cb2d733033f9e91395312808383cc4f0ca974e87ec68400d52e96b3fa6984ac58d9ad0938dde5a973008d818c49607d9de2284e7618f1b8aed8372fbd52ed54557af4220fac09dfa8443011699b97d743f8f2b1aef3537ebb45dcc9e13dfb438428ee190a4efdb3caeb7f3933117bf63abdc7e57beb4171c7e1ad260ab0587806c4d137b6316b50abc9cce0dff3acada47bbb86be777e617bbe578ff4519844db360e0a96c6701290e76bb95d26f0f804c8a4f2717eac4e7de9f2cff3bbc55a17e776c0d02856032a6cd10ad2838,224c7fc8a0ec3895e8969ce7c7f7ecaa54fe2eec9ab3120726106f22aa297541 f2998955613dd414cc111df5ce30a995bb792e260b0e37a5b1d942fe90171a4ac2f66d4928d7ad377f4d0554cbf4c523d21f6e5f379d6f4b028cdcb9b1758d3b39663242ff3cb6ede6a36a6f05db3bc41e0d861b384b6dec58bb096d0a422fd542df175e1be1571fb52ae66f2d86a2f6824a8cfaacbac4a7492ad0433eeb15454af8f312b3b2a577750e3efbd370e8a8cac1582581971fba3ba4bd0d76e718dacf8433d33a59d287f8cc92234e7a271041b526e389efb0e40b6a18b3aaf658e82ed1c78631fd23b4c3eb27c3faec8685,faf5e3b7a64629ffeee07a67ed77a3a4f67f18c9381fe9b19f6ee601f5fb99af 447797e2899b72a356ba55bf4df3acca6cdb1041eb477bd1834a9f9acbc340a294d729f2f97df3a610be0ff15edb9c6d5db41644b9874360140fc64f52aa03f0286c8a640670067a84e017926a70438db1bb361defee7317021425f8821def26d1efd77fc853b818545d055adc9284796e583c76e6fe74c9ac2587aa46aa8f8804f2feb5836cc4b3ababab8429a5783e17d5999f32242eb59ef30cd7adabc16d72dbdb097623047c98989f88d14eaf02a7212be16ec2d07981aaa99949ddf89ecd90333a77bc4e1988a82abf7c7caf3291,a8a98e6b3a005fcb319fee58c5457d04b69d59f53873f6fcc6065d68f880833f 9f2c18ade9b380c784e170fb763e9aa205f64303067eb1bcea93df5dac4bf5a2e00b78195f808df24fc76e26cb7be31dc35f0844cded1567bba29858cffc97fb29010331b01d6a3fb3159cc1b973d255da9843e34a0a4061cabdb9ed37f241bfabb3c20d32743f4026b59a4ccc385a2301f83c0b0a190b0f2d01acb8f0d41111e10f2f4e149379275599a52dc089b35fdd5234b0cfb7b6d8aebd563ca1fa653c5c021dfd6f5920e6f18bfafdbecbf0ab00281333ed50b9a999549c1c8f8c63d7626c48322e9791d5ff72294049bde91e73f8,c89f2b346127eab9e28095dc44918c1a1aaeae04861c1dd0144a1ee07f823c18 ae159f3fa33619002ae6bcce8cbbdd7d28e5ed9d61534595c4c9f43c402a9bb31f3b301cbfd4a43ce4c24cd5c9849cc6259eca90e2a79e01ffbac07ba0e147fa42676a1d668570e0396387b5bcd599e8e66aaed1b8a191c5a47547f61373021fa6deadcb55363d233c24440f2c73dbb519f7c9fa5a8962efd5f6252c0407f190dfefad707f3c7007d69ff36b8489a5b6b7c557e79dd4f50c06511f599f56c896b35c917b63ba35c6ff8092baf7d1658e77fc95d8a6a43eeb4c01f33f03877f92774be89c1114dd531c011e53a34dc248a2f0e6,e7a81acbef35d7b24b706549b41abd82628ccff9acf41f2c8add28743688ae01 3b8e97c5ffc2d6a40fa7de7fcefc90f3b12c940e7ab415321e29ee692dfac799b009c99dcddb708fce5a178c5c35ee2b8617143edc4c40b4d313661f49abdd93cea79d117518805496fe6acf292c4c2a1f76b403a97d7c399daf85b46ad84e16246c67d6836757bde336c290d5d401e6c1386ab32797af6bb251e9b2d8fe754c47482b72e0b394eab76916126fd68ea7d65eb93d59f5b4c5ac40f7c3b37e7f3694f29424c24af8c8f0ef59cd9dbf1d28e0e10f799a6f78cad1d45b9db3d7dee4a7059abe99182714983b9c9d44d7f5643596d4f3,d81249143a69ea1c9dc168b55ffe06d46d0fbc007065110353d76c6cce4ffe66 3434ec31b10fafdbfeec0dd6bd94e80f7ba9dca19ef075f7eb017512af66d6a4bcf7d16ba0819a1892a6372f9b35bcc7ca8155ee19e8428bc22d214856ed5fa9374c3c09bde169602cc219679f65a1566fc7316f4cc3b631a18fb4449fa6afa16a3db2bc4212eff539c67cf184680826535589c7111d73bffce431b4c40492e763d9279560aaa38eb2dc14a212d723f994a1fe656ff4dd14551ce4e7c621b2aa5604a10001b2878a897a28a08095c325e10a26d2fb1a75bfd64c250309bb55a44f23bbac0d5516a1c687d3b41ef2fbbf9cc56d4739,aa8bbd4812142211212763bf8ee4d6e0aadafe5e528aea1fb1be118806e49f66 7c7953d81c8d208fd1c97681d48f49dd003456de60475b84070ef4847c333b74575b1fc8d2a186964485a3b8634feaa3595aaa1a2f4595a7d6b6153563dee31bbac443c8a33eed6d5d956a980a68366c2527b550ee950250dfb691eacbd5d56ae14b970668be174c89df2fea43ae52f13142639c884fd62a3683c0c3792f0f24ab1318bcb27e21f4737fab62c77ea38bc8fd1cf41f7dab64c13febe7152bf5bb7ab5a78f5346d43cc741cb6f72b7b8980f268b68bf62abdfb1577a52438fe14b591498cc95f071228460c7c5d5ceb4a7bde588e7f21c,4089b181df5eca5f14dab1057aaaeecaba15f200fdda0de49357d6196faab44b 7a6a4f4fdc59a1d223381ae5af498d74b7252ecf59e389e49130c7eaee626e7bd9897effd92017f4ccde66b0440462cdedfd352d8153e6a4c8d7a0812f701cc737b5178c2556f07111200eb627dbc299caa792dfa58f35935299fa3a3519e9b03166dffa159103ffa35e8577f7c0a86c6b46fe13db8e2cdd9dcfba85bdddcce0a7a8e155f81f712d8e9fe646153d3d22c811bd39f830433b2213dd46301941b59293fd0a33e2b63adbd95239bc01315c46fdb678875b3c81e053a40f581cfbec24a1404b1671a1b88a6d06120229518fb13a74ca0ac5ae,debf59bb233d05549853804fc67840821bd5802f87fc8a915b710d3e82070950 d9faa14cebe9b7de551b6c0765409a33938562013b5e8e0e1e0a6418df7399d0a6a771fb81c3ca9bd3bb8e2951b0bc792525a294ebd1083688806fe5e7f1e17fd4e3a41d00c89e8fcf4a363caedb1acb558e3d562f1302b3d83bb886ed27b76033798131dab05b4217381eaaa7ba15ec820bb5c13b516dd640eaec5a27d05fdfca0f35b3a5312146806b4c0275bcd0aaa3b2017f346975db566f9b4d137f4ee10644c2a2da66deeca5342e236495c3c6280528bfd32e90af4cd9bb908f34012b52b4bc56d48cc8a6b59bab014988eabd12e1a0a1c2e170e7,0fdba1c79f55f233a1217f522d6c81f777f330fadb565e1171f39e1788913342 2d8427433d0c61f2d96cfe80cf1e932265a191365c3b61aaa3d6dcc039f6ba2ad52a6a8cc30fc10f705e6b7705105977fa496c1c708a277a124304f1fc40911e7441d1b5e77b951aad7b01fd5db1b377d165b05bbf898042e39660caf8b279fe5229d1a8db86c0999ed65e53d01ccbc4b43173ccf992b3a14586f6ba42f5fe30afa8ae40c5df29966f9346da5f8b35f16a1de3ab6de0f477d8d8660918060e88b9b9e9ca6a4207033b87a812dbf5544d39e4882010f82b6ce005f8e8ff6fe3c3806bc2b73c2b83afb704345629304f9f86358712e9fae3ca3e,ed45a06e95a6539270b02290d71005f01c55ba077414c3bcdb379537e6dbefc9 5e19d97887fcaac0387e22c6f803c34a3dacd2604172433f7a8a7a526ca4a2a1271ecfc5d5d7be5ac0d85d921095350dfc65997d443c21c8094e0a3fefd2961bcb94aed03291ae310ccda75d8ace4bc7d89e7d3e5d1650bda5d668b8b50bfc8e608e184f4d3a9a2badc4ff5f07e0c0bc8a9f2e0b2a26fd6d8c550008faaab75fd71af2a424bec9a7cd9d83fad4c8e9319115656a8717d3b523a68ff8004258b9990ed362308461804ba3e3a7e92d8f2ffae5c2fba55ba5a3c27c0a2f71bd711d2fe1799c2adb31b200035481e9ee5c4adf2ab9c0fa50b23975cf,37e7cf6a9a31b0982b2479432b7838657741b0ee79adda1b287550eb325c78cc c8e976ab4638909387ce3b8d4e510c3230e5690e02c45093b1d297910abc481e56eea0f296f98379dfc9080af69e73b2399d1c143bee80ae1328162ce1ba7f6a8374679b20aacd380eb4e61382c99998704d62701afa914f9a2705cdb065885f50d086c3eb5753700c387118bb142f3e6da1e988dfb31ac75d7368931e45d1391a274b22f83ceb072f9bcabc0b216685bfd789f5023971024b1878a205442522f9ea7d8797a4102a3df41703768251fd5e017c85d1200a464118aa35654e7ca39f3c375b8ef8cbe7534dbc64bc20befb417cf60ec92f63d9ee7397,373704f641faf2b918e22e9142abf6b4ac71b6883ac4d7a075f626e947837d3f 7145fa124b7429a1fc2231237a949ba7201bcc1822d3272de005b682398196c25f7e5cc2f289fbf44415f699cb7fe6757791b1443410234ae061edf623359e2b4e32c19bf88450432dd01caa5eb16a1dc378f391ca5e3c4e5f356728bddd4975db7c890da8bbc84cc73ff244394d0d48954978765e4a00b593f70f2ca082673a261ed88dbcef1127728d8cd89bc2c597e9102ced6010f65fa75a14ebe467fa57ce3bd4948b6867d74a9df5c0ec6f530cbf2ee61ce6f06bc8f2864dff5583776b31df8c7ffcb61428a56bf7bd37188b4a5123bbf338393af46eda85e6,ee5994b3d32bdae58e72566fc24b886461217fdd7273e1608f0b2926b7923546 7fdfadcc9d29bad23ae038c6c65cda1aef757221b8872ed3d75ff8df7da0627d266e224e812c39f7983e4558bfd0a1f2bef3feb56ba09120ef762917b9c093867948547aee98600d10d87b20106878a8d22c64378bf634f7f75900c03986b077b0bf8b740a82447b61b99fee5376c5eb6680ec9e3088f0bdd0c56883413d60c1357d3c811950e5890e7600103c916341b80c743c6a852b7b4fb60c3ba21f3bc15b8382437a68454779cf3cd7f9f90ccc8ef28d0b706535b1e4108eb5627bb45d719cb046839aee311ca1abdc8319e050d67972cb35a6b1601b25dbf487,6a584f9f4acd8fc8e15dacd326291fe9311c20987225c51cf4251e52b47fa223 988638219fd3095421f826f56e4f09e356296b628c3ce6930c9f2e758fd1a80c8273f2f61e4daae65c4f110d3e7ca0965ac7d24e34c0dc4ba2d6ff0bf5bbe93b3585f354d7543cb542a1aa54674d375077f2d360a8f4d42f3db131c3b7ab7306267ba107659864a90c8c909460a73621d1f5d9d3fd95beb19b23db1cb6c0d0fba91d36891529b8bd8263caa1bab56a4affaed44962df096d8d5b1eb845ef31188b3e10f1af811a13f156beb7a288aae593ebd1471b624aa1a7c6adf01e2200b3d72d88a3aed3100c88231e41efc376906f0b580dc895f080fda5741db1cb,4f92839cddb0df31d16a0db53bbe07698a7c1912d5590d21155d45db1b48cab4 5aab62756d307a669d146aba988d9074c5a159b3de85151a819b117ca1ff6597f6156e80fdd28c9c3176835164d37da7da11d94e09add770b68a6e081cd22ca0c004bfe7cd283bf43a588da91f509b27a6584c474a4a2f3ee0f1f56447379240a5ab1fb77fdca49b305f07ba86b62756fb9efb4fc225c86845f026ea542076b91a0bc2cdd136e122c659be259d98e5841df4c2f60330d4d8cdee7bf1a0a244524eecc68ff2aef5bf0069c9e87a11c6e519de1a4062a10c83837388f7ef58598a3846f49d499682b683c4a062b421594fafbc1383c943ba83bdef515efcf10d,eafd661f343ae834c621e074ac6903a2e3e6324f365b3432dffa732f477ac129 47b8216aa0fbb5d67966f2e82c17c07aa2d6327e96fcd83e3de7333689f3ee79994a1bf45082c4d725ed8d41205cb5bcdf5c341f77facb1da46a5b9b2cbc49eadf786bcd881f371a95fa17df73f606519aea0ff79d5a11427b98ee7f13a5c00637e2854134691059839121fea9abe2cd1bcbbbf27c74caf3678e05bfb1c949897ea01f56ffa4dafbe8644611685c617a3206c7a7036e4ac816799f693dafe7f19f303ce4eba09d21e03610201bfc665b72400a547a1e00fa9b7ad8d84f84b34aef118515e74def11b9188bd1e1f97d9a12c30132ec2806339bdadacda2fd8b78,3dcec669c5d0176b1bdc002728d242c587dda03b3abfa6074523d3faef4820be 8cff1f67fe53c098896d9136389bd8881816ccab34862bb67a656e3d98896f3ce6ffd4da73975809fcdf9666760d6e561c55238b205d8049c1cedeef374d1735daa533147bfa960b2cce4a4f254176bb4d1bd1e89654432b8dbe1a135c42115b394b024856a2a83dc85d6782be4b444239567ccec4b184d4548eae3ff6a192f343292ba2e32a0f267f31cc26719eb85245d415fb897ac2da433ee91a99424c9d7f1766a44171d1651001c38fc79294accc68ceb5665d36218454d3ba169ae058a831338c17743603f81ee173bfc0927464f9bd728dee94c6aeab7aae6ee3a627e8,4bdf731bbb3d0e2ab0eb3d972123a7a0a085e8a98ac6af8adbd335b37275ddff eacd07971cff9b9939903f8c1d8cbb5d4db1b548a85d04e037514a583604e787f32992bf2111b97ac5e8a938233552731321522ab5e8583561260b7d13ebeef785b23a41fd8576a6da764a8ed6d822d4957a545d5244756c18aa80e1aad4d1f9c20d259dee1711e2cc8fd013169fb7cc4ce38b362f8e0936ae9198b7e838dcea4f7a5b9429bb3f6bbcf2dc92565e3676c1c5e6eb3dd2a0f86aa23edd3d0891f197447692794b3dfa269611ad97f72b795602b4fdb198f3fd3eb41b415064256e345e8d8c51c555dc8a21904a9b0f1ad0effab7786aac2da3b196507e9f33ca356427,47f904feea607225cab2e3c52748878964bfedcfe068727de610f63421367bcf 23ac4e9a42c6ef45c3336ce6dfc2ff7de8884cd23dc912fef0f7756c09d335c189f3ad3a23697abda851a81881a0c8ccafc980ab2c702564c2be15fe4c4b9f10dfb2248d0d0cb2e2887fd4598a1d4acda897944a2ffc580ff92719c95cf2aa42dc584674cb5a9bc5765b9d6ddf5789791d15f8dd925aa12bffafbce60827b490bb7df3dda6f2a143c8bf96abc903d83d59a791e2d62814a89b8080a28060568cf24a80ae61179fe84e0ffad00388178cb6a617d37efd54cc01970a4a41d1a8d3ddce46edbba4ab7c90ad565398d376f431189ce8c1c33e132feae6a8cd17a61c630012,324937607d9f16af815701749f0377b3281af9c5bb565d6f2b9611532b6bf044 0172df732282c9d488669c358e3492260cbe91c95cfbc1e3fea6c4b0ec129b45f242ace09f152fc6234e1bee8aab8cd56e8b486e1dcba9c05407c2f95da8d8f1c0af78ee2ed82a3a79ec0cb0709396ee62aadb84f8a4ee8a7ccca3c1ee84e302a09ea802204afecf04097e67d0f8e8a9d2651126c0a598a37081e42d168b0ae8a71951c524259e4e2054e535b779679bdade566fe55700858618e626b4a0faf895bcce9011504a49e05fd56127eae3d1f8917afb548ecadabda1020111fec9314c413498a360b08640549a22cb23c731ace743252a8227a0d2689d4c6001606678dfb921,b984c2d6b6fdc28574aad551fc16b68f85bf6cc480a15c128ae5616561d46721 3875b9240cf3e0a8b59c658540f26a701cf188496e2c2174788b126fd29402d6a75453ba0635284d08835f40051a2a9683dc92afb9383719191231170379ba6f4adc816fecbb0f9c446b785bf520796841e58878b73c58d3ebb097ce4761fdeabe15de2f319dfbaf1742cdeb389559c788131a6793e193856661376c81ce9568da19aa6925b47ffd77a43c7a0e758c37d69254909ff0fbd415ef8eb937bcd49f91468b49974c07dc819abd67395db0e05874ff83dddab895344abd0e7111b2df9e58d76d85ad98106b36295826be04d435615595605e4b4bb824b33c4afeb5e7bb0d19f909,91a5b9fc2dcc5faeda57d2e7a41e922dc32d572aebdf6d54cb8c3ae4245e8565 747cc1a59fefba94a9c75ba866c30dc5c1cb0c0f8e9361d98484956dd5d1a40f6184afbe3dac9f76028d1caeccfbf69199c6ce2b4c092a3f4d2a56fe5a33a00757f4d7dee5dfb0524311a97ae0668a47971b95766e2f6dd48c3f57841f91f04a00ad5ea70f2d479a2620dc5cd78eaab3a3b011719b7e78d19ddf70d9423798af77517ebc55392fcd01fc600d8d466b9e7a7a85bf33f9cc5419e9bd874ddfd60981150ddaf8d7febaa4374f0872a5628d318000311e2f5655365ad4d407c20e5c04df17a222e7deec79c5ab1116d8572f91cd06e1ccc7ced53736fc867fd49ecebe6bf8082e8a,97dca1050a465b60e91ebe26e29adb5a286a0582eee2e89b8b901954293f6146 57af971fccaec97435dc2ec9ef0429bcedc6b647729ea168858a6e49ac1071e706f4a5a645ca14e8c7746d65511620682c906c8b86ec901f3dded4167b3f00b06cbfac6aee3728051b3e5ff10b4f9ed8bd0b8da94303c833755b3ca3aeddf0b54bc8d6632138b5d25bab03d17b3458a9d782108006f5bb7de75b5c0ba854b423d8bb801e701e99dc4feaad59bc1c7112453b04d33ea3635639fb802c73c2b71d58a56bbd671b18fe34ed2e3dca38827d63fdb1d4fb3285405004b2b3e26081a8ff08cd6d2b08f8e7b7e90a2ab1ed7a41b1d0128522c2f8bff56a7fe67969422ce839a9d4608f03,6d033d85daed3366d5f7d5e4f03b3d05b65778eeea074b0c683cffcd6f51d5bd 04e16dedc1227902baaf332d3d08923601bdd64f573faa1bb7201918cfe16b1e10151dae875da0c0d63c59c3dd050c4c6a874011b018421afc4623ab0381831b2da2a8ba42c96e4f70864ac44e106f94311051e74c77c1291bf5db9539e69567bf6a11cf6932bbbad33f8946bf5814c066d851633d1a513510039b349939bfd42b858c21827c8ff05f1d09b1b0765dc78a135b5ca4dfba0801bcaddfa175623c8b647eacfb4444b85a44f73890607d06d507a4f8393658788669f6ef4deb58d08c50ca0756d5e2f49d1a7ad73e0f0b3d3b5f090acf622b1878c59133e4a848e05153592ea81c6fbf,01ebbb73410eebac665c3b40063d001f43dbe9d1722eb323fe08763d7ff0616c 7c815c384eee0f288ece27cced52a01603127b079c007378bc5d1e6c5e9e6d1c735723acbbd5801ac49854b2b569d4472d33f40bbb8882956245c366dc3582d71696a97a4e19557e41e54dee482a14229005f93afd2c4a7d8614d10a97a9dfa07f7cd946fa45263063ddd29db8f9e34db60daa32684f0072ea2a9426ecebfa5239fb67f29c18cbaa2af6ed4bf4283936823ac1790164fec5457a9cba7c767ca59392d94cab7448f50eb34e9a93a80027471ce59736f099c886dea1ab4cba4d89f5fc7ae2f21ccd27f611eca4626b2d08dc22382e92c1efb2f6afdc8fdc3d2172604f5035c46b8197d3,8d3a49cb572ab99c9bf0231366bb017c9adf25479d35443a971e45787e738ce5 e29d505158dbdd937d9e3d2145658ee6f5992a2fc790f4f608d9cdb44a091d5b94b88e81fac4fdf5c49442f13b911c55886469629551189eaff62488f1a479b7db11a1560e198ddccccf50159093425ff7f1cb8d1d1246d0978764087d6bac257026b090efae8cec5f22b6f21c59ace1ac7386f5b8837ca6a12b6fbf5534dd0560ef05ca78104d3b943ddb220feaec89aa5e692a00f822a2ab9a2fe60350d75e7be16ff2526dc643872502d01f42f188abed0a6e9a6f5fd0d1ce7d5755c9ffa66b0af0b20bd806f08e06156690d81ac811778ca3dac2c249b96002017fce93e507e3b953acf99964b847,fbb5a0ab1a3b4c4fa56adb1c9531eb9979c554903053013c20fefd3f57b5ccdb d85588696f576e65eca0155f395f0cfacd83f36a99111ed5768df2d116d2121e32357ba4f54ede927f189f297d3a97fad4e9a0f5b41d8d89dd7fe20156799c2b7b6bf9c957ba0d6763f5c3bc5129747bbb53652b49290cff1c87e2cdf2c4b95d8aaee09bc8fbfa6883e62d237885810491bfc101f1d8c636e3d0ede838ad05c207a3df4fad76452979eb99f29afaecedd1c63b8d36cf378454a1bb67a741c77ac6b6b3f95f4f02b64dabc15438613ea49750df42ee90101f115aa9abb9ff64324dde9dabbb01054e1bd6b4bcdc7930a44c2300d87ca78c06924d0323ad7887e46c90e8c4d100acd9eed21e,6b3dcc7ac6a5cb85b67fc71b4055d3798134deef26fd3eb03a042e0daa35cc85 3a12f8508b40c32c74492b66323375dcfe49184c78f73179f3314b79e63376b8ac683f5a51f1534bd729b02b04d002f55cbd8e8fc9b5ec1ea6bbe6a0d0e7431518e6ba45d124035f9d3dce0a8bb7bf1430a9f657e0b4ea9f20eb20c786a58181a1e20a96f1628f8728a13bdf7a4b4b32fc8aa7054cc4881ae7fa19afa65c6c3ee1b3ade3192af42054a8a911b8ec1826865d46d93f1e7c5e2b7813c92a506e53886f3d4701bb93d2a681ad109c845904bb861af8af0646b6e399b38b614051d34f6842563a0f37ec00cb3d865fc5d746c4987de2a65071100883a2a9c7a2bfe1e2dd603d9ea24dc7c5fd06be,5d1dba8f1584ac3f36b3ac925ec13ac284013b9664965ab6265b942466b5d8ec 1861edce46fa5ad17e1ff1deae084dec580f97d0a67885dfe834b9dfac1ae076742ce9e267512ca51f6df5a455af0c5fd6abf94acea103a3370c354485a7846fb84f3ac7c2904b5b2fbf227002ce512133bb7e1c4e50057bfd1e44db33c7cdb969a99e284b184f50a14b068a1fc5009d9b298dbe92239572a7627aac02abe8f3e3b473417f36d4d2505d16b7577f4526c9d94a270a2dfe450d06da8f6fa956879a0a55cfe99e742ea555ea477ba3e9b44ccd508c375423611af92e55345dc215779b2d5119eba49c71d49b9fe3f1569fa24e5ca3e332d042422a8b8158d3ec66a80012976f31ffdf305f0c9c5e,89c6c86db0a889aa67d8cb085f9f4312645972d977c5b952d9f6243d7d3be4d5 08d0ffde3a6e4ef65608ea672e4830c12943d7187ccff08f4941cfc13e545f3b9c7ad5eebbe2b01642b486caf855c2c73f58c1e4e3391da8e2d63d96e15fd84953ae5c231911b00ad6050cd7aafdaac9b0f663ae6aab45519d0f5391a541707d479034e73a6ad805ae3598096af078f1393301493d663dd71f83869ca27ba508b7e91e81e128c1716dc3acfe3084b2201e04cf8006617eecf1b640474a5d45cfde9f4d3ef92d6d055b909892194d8a8218db6d8203a84261d200d71473d7488f3427416b6896c137d455f231071cacbc86e0415ab88aec841d96b7b8af41e05bb461a40645bf176601f1e760de5f,ac02432a5541c26238c6f99fadb2b23b5ffcad8f04bd4c3b9a6620cab1266e6b d782abb72a5be3392757be02d3e45be6e2099d6f000d042c8a543f50ed6ebc055a7f133b0dd8e9bc348536edcaae2e12ec18e8837df7a1b3c87ec46d50c241dee820fd586197552dc20beea50f445a07a38f1768a39e2b2ff05dddedf751f1def612d2e4d810daa3a0cc904516f9a43af660315385178a529e51f8aae141808c8bc5d7b60cac26bb984ac1890d0436ef780426c547e94a7b08f01acbfc4a3825eae04f520a9016f2fb8bf5165ed12736fc71e36a49a73614739eaa3ec834069b1b40f1350c2b3ab885c02c640b9f7686ed5f99527e41cfcd796fe4c256c9173186c226169ff257954ebda81c0e5f99,f55aa01deab12148e35759db818f1059351165e9e6f93d342f0abfca102e0801 5fce8109a358570e40983e1184e541833bb9091e280f258cfb144387b05d190e431cb19baa67273ba0c58abe91308e1844dcd0b3678baa42f335f2fa05267a0240b3c718a5942b3b3e3bfa98a55c25a1466e8d7a603722cb2bbf03afa54cd769a99f310735ee5a05dae2c22d397bd95635f58c48a67f90e1b73aafcd3f82117f0166657838691005b18da6f341d6e90fc1cdb352b30fae45d348294e501b63252de14740f2b85ae5299ddec3172de8b6d0ba219a20a23bb5e10ff434d39db3f583305e9f5c039d98569e377b75a70ab837d1df269b8a4b566f40bb91b577455fd3c356c914fa06b9a7ce24c7317a172d,7c0bda7cb42dadbd037f50a5f27e3ab5da258d4670f1bea90154c87c98136ba1 6172f1971a6e1e4e6170afbad95d5fec99bf69b24b674bc17dd78011615e502de6f56b86b1a71d3f4348087218ac7b7d09302993be272e4a591968aef18a1262d665610d1070ee91cc8da36e1f841a69a7a682c580e836941d21d909a3afc1f0b963e1ca5ab193e124a1a53df1c587470e5881fb54dae1b0d840f0c8f9d1b04c645ba1041c7d8dbf22030a623aa15638b3d99a2c400ff76f3252079af88d2b37f35ee66c1ad7801a28d3d388ac450b97d5f0f79e4541755356b3b1a5696b023f39ab7ab5f28df4202936bc97393b93bc915cb159ea1bd7a0a414cb4b7a1ac3af68f50d79f0c9c7314e750f7d02faa58bfa,f60c53ba2132293b881f0513e7ab47fe9746ed4a6ac9cade61e6d802d5872372 5668ecd99dfbe215c4118398ac9c9eaf1a1433fab4ccdd3968064752b625ea944731f75d48a27d047d67547f14dd0ffaa55fa5e29f7af0d161d85eafc4f2029b717c918eab9d304543290bdba7158b68020c0ba4e079bc95b5bc0fc044a992b94b4ccd3bd66d0eabb5dbbab904d62e00752c4e3b0091d773bcf4c14b4377da3efff824b1cb2fa01b32d1e46c909e626ed2dae920f4c7dbeb635bc754facbd8d49beba3f23c1c41ccbfcd0ee0c114e69737f5597c0bf1d859f0c767e18002ae8e39c26261ffde2920d3d0baf0e906138696cfe5b7e32b600f45df3aaa39932f3a7df95b60fa8712a2271fcaf3911ce7b511b1,1c66b9a7c50ed77d179a0c437d5890c9835a13f90a73a01332ab0731a41a115e 03d625488354df30e3f875a68edfcf340e8366a8e1ab67f9d5c5486a96829dfac0578289082b2a62117e1cf418b43b90e0adc881fc6ae8105c888e9ecd21aea1c9ae1a4038dfd17378fed71d02ae492087d7cdcd98f746855227967cb1ab4714261ee3bead3f4db118329d3ebef4bc48a875c19ba763966da0ebea800e01b2f50b00e9dd4caca6dcb314d00184ef71ea2391d760c950710db4a70f9212ffc54861f9dc752ce18867b8ad0c48df8466ef7231e7ac567f0eb55099e622ebb86cb237520190a61c66ad34f1f4e289cb3282ae3eaac6152ed24d2c92bae5a7658252a53c49b7b02dfe54fdb2e90074b6cf310ac661,48a00ba224ac5558f41a79f52137db9182a93f1045d43789e5913d7be40408c2 2edc282ffb90b97118dd03aaa03b145f363905e3cbd2d50ecd692b37bf000185c651d3e9726c690d3773ec1e48510e42b17742b0b0377e7de6b8f55e00a8a4db4740cee6db0830529dd19617501dc1e9359aa3bcf147e0a76b3ab70c4984c13e339e6806bb35e683af8527093670859f3d8a0fc7d493bcba6bb12b5f65e71e705ca5d6c948d66ed3d730b26db395b3447737c26fad089aa0ad0e306cb28bf0acf106f89af3745f0ec72d534968cca543cd2ca50c94b1456743254e358c1317c07a07bf2b0eca438a709367fafc89a57239028fc5fecfd53b8ef958ef10ee0608b7f5cb9923ad97058ec067700cc746c127a61ee3,240a85eaf7f3016c192ad5e17e5f93b643fe3edba719f423693a34da3784827a 90b28a6aa1fe533915bcb8e81ed6cacdc10962b7ff82474f845eeb86977600cf70b07ba8e3796141ee340e3fce842a38a50afbe90301a3bdcc591f2e7d9de53e495525560b908c892439990a2ca2679c5539ffdf636777ad9c1cdef809cda9e8dcdb451abb9e9c17efa4379abd24b182bd981cafc792640a183b61694301d04c5b3eaad694a6bd4cc06ef5da8fa23b4fa2a64559c5a68397930079d250c51bcf00e2b16a6c49171433b0aadfd80231276560b80458dd77089b7a1bbcc9e7e4b9f881eacd6c92c4318348a13f4914eb27115a1cfc5d16d7fd94954c3532efaca2cab025103b2d02c6fd71da3a77f417d7932685888a,2aa9d0a1d9b9b691b4b8641e68d454d2d9c34ce43a5b55dd57590716b8a46cf7 2969447d175490f2aa9bb055014dbef2e6854c95f8d60950bfe8c0be8de254c26b2d31b9e4de9c68c9adf49e4ee9b1c2850967f29f5d08738483b417bb96b2a56f0c8aca632b552059c59aac3f61f7b45c966b75f1d9931ff4e596406378cee91aaa726a3a84c33f37e9cdbe626b5745a0b06064a8a8d56e53aaf102d23dd9df0a3fdf7a638509a6761a33fa42fa8ddbd8e16159c93008b53765019c3f0e9f10b144ce2ac57f5d7297f9c9949e4ff68b70d339f87501ce8550b772f32c6da8ad2ce2100a895d8b08fa1eead7c376b407709703c510b50f87e73e43f8e7348f87c3832a547ef2bbe5799abedcf5e1f372ea809233f006,58c469e1a76835cc1a897b885b1b2a33b0aabce4cfbb65523d2e0d08d6d1a413 721645633a44a2c78b19024eaecf58575ab23c27190833c26875dc0f0d50b46aea9c343d82ea7d5b3e50ec700545c615daeaea64726a0f05607576dcd396d812b03fb6551c641087856d050b10e6a4d5577b82a98afb89cee8594c9dc19e79feff0382fcfd127f1b803a4b9946f4ac9a4378e1e6e041b1389a53e3450cd32d9d2941b0cbabdb50da8ea2513145164c3ab6bcbd251c448d2d4b087ac57a59c2285d564f16da4ed5e607ed979592146ffb0ef3f3db308fb342df5eb5924a48256fc763141a278814c82d6d6348577545870ae3a83c7230ac02a1540fe1798f7ef09e335a865a2ae0949b21e4f748fb8a51f44750e213a8fb,6c8df81b1e1ed70a5413368018db9628b0e0b4563423c051a54d000aadde0c06 6b860d39725a14b498bb714574b4d37ca787404768f64c648b1751b353ac92bac2c3a28ea909fdf0423336401a02e63ec24325300d823b6864bb701f9d7c7a1f8ec9d0ae3584aa6dd62ea1997cd831b4babd9a4da50932d4efda745c61e4130890e156aee6113716daf95764222a91187db2effea49d5d0596102d619bd26a616bbfda8335505fbb0d90b4c180d1a2335b91538e1668f9f9642790b4e55f9cab0fe2bdd2935d001ee6419abab5457880d0dbff20ed8758f4c20fe759efb33141cf0e892587fe8187e5fbc57786b7e8b089612c936dfc03d27efbbe7c8673f1606bd51d5ff386f4a7ab68edf59f385eb1291f117bfe717399,108fff41d5bcf654071b4414e666fdebbe878c309d6ddc90afaf5c61df8559f0 6a01830af3889a25183244decb508bd01253d5b508ab490d3124afbf42626b2e70894e9b562b288d0a2450cfacf14a0ddae5c04716e5a0082c33981f6037d23d5e045ee1ef2283fb8b6378a914c5d9441627a722c282ff452e25a7ea608d69cee4393a0725d17963d0342684f255496d8a18c2961145315130549311fc07f0312fb78e6077334f87eaa873bee8aa95698996eb21375eb2b4ef53c14401207deb4568398e5dd9a7cf97e8c9663e23334b46912f8344c19efcf8c2ba6f04325f1a27e062b62a58d0766fc6db4d2c6a1928604b0175d872d16b7908ebc041761187cc785526c2a3873feac3a642bb39f5351550af9770c328af7b,751eaaafa4aec8acd26606d6439c55b5c66ec7db807579edc68994b300f7a077 b3c5e74b69933c2533106c563b4ca20238f2b6e675e8681e34a389894785bdade59652d4a73d80a5c85bd454fd1e9ffdad1c3815f5038e9ef432aac5c3c4fe840cc370cf86580a6011778bbedaf511a51b56d1a2eb68394aa299e26da9ada6a2f39b9faff7fba457689b9c1a577b2a1e505fdf75c7a0a64b1df81b3a356001bf0df4e02a1fc59f651c9d585ec6224bb279c6beba2966e8882d68376081b987468e7aed1ef90ebd090ae825795cdca1b4f09a979c8dfc21a48d8a53cdbb26c4db547fc06efe2f9850edd2685a4661cb4911f165d4b63ef25b87d0a96d3dff6ab0758999aad214d07bd4f133a6734fde445fe474711b69a98f7e2b,90c2d5f8e26b0bddea719064bb02a6242f2cc5a42936b14fe17f861b47b7e186 83af34279ccb5430febec07a81950d30f4b66f484826afee7456f0071a51e1bbc55570b5cc7ec6f9309c17bf5befdd7c6ba6e968cf218a2b34bd5cf927ab846e38a40bbd81759e9e33381016a755f699df35d660007b5eadf292feefb735207ebf70b5bd17834f7bfa0e16cb219ad4af524ab1ea37334aa66435e5d397fc0a065c411ebbce32c240b90476d307ce802ec82c1c49bc1bec48c0675ec2a6c6f3ed3e5b741d13437095707c565e10d8a20b8c20468ff9514fcf31b4249cd82dcee58c0a2af538b291a87e3390d737191a07484a5d3f3fb8c8f15ce056e5e5f8febe5e1fb59d6740980aa06ca8a0c20f5712b4cde5d032e92ab89f0ae1,3298a95cfe59b9d6cab99c36dc1324194c09f97f08944a02d9574bbca3186b41 a7ed84749ccc56bb1dfba57119d279d412b8a986886d810f067af349e8749e9ea746a60b03742636c464fc1ee233acc52c1983914692b64309edfdf29f1ab912ec3e8da074d3f1d231511f5756f0b6eead3e89a6a88fe330a10face267bffbfc3e3090c7fd9a850561f363ad75ea881e7244f80ff55802d5ef7a1a4e7b89fcfa80f16df54d1b056ee637e6964b9e0ffd15b6196bdd7db270c56b47251485348e49813b4eb9ed122a01b3ea45ad5e1a929df61d5c0f3e77e1fdc356b63883a60e9cbb9fc3e00c2f32dbd469659883f690c6772e335f617bc33f161d6f6984252ee12e62b6000ac5231e0c9bc65be223d8dfd94c5004a101af9fd6c0fb,1c4172928cb10e16ab3cdb33f815103b000a6c7d62376cad29af03f4b2b0e103 a6fe30dcfcda1a329e82ab50e32b5f50eb25c873c5d2305860a835aecee6264aa36a47429922c4b8b3afd00da16035830edb897831c4e7b00f2c23fc0b15fdc30d85fb70c30c431c638e1a25b51caf1d7e8b050b7f89bfb30f59f0f20fecff3d639abc4255b3868fc45dd81e47eb12ab40f2aac735df5d1dc1ad997cefc4d836b854cee9ac02900036f3867fe0d84afff37bde3308c2206c62c4743375094108877c73b87b2546fe05ea137bedfc06a2796274099a0d554da8f7d7223a48cbf31b7decaa1ebc8b145763e3673168c1b1b715c1cd99ecd3ddb238b06049885ecad9347c2436dff32c771f34a38587a44a82c5d3d137a03caa27e66c8ff6,f5cfb4df3f7c5a778f38a3b43b26479a0e8a49030c59ac19fb0cfa806081ca4a 83167ff53704c3aa19e9fb3303539759c46dd4091a52ddae9ad86408b69335989e61414bc20ab4d01220e35241eff5c9522b079fba597674c8d716fe441e566110b6211531ceccf8fd06bc8e511d00785e57788ed9a1c5c73524f01830d2e1148c92d0edc97113e3b7b5cd3049627abdb8b39dd4d6890e0ee91993f92b03354a88f52251c546e64434d9c3d74544f23fb93e5a2d2f1fb15545b4e1367c97335b0291944c8b730ad3d4789273fa44fb98d78a36c3c3764abeeac7c569c1e43a352e5b770c3504f87090dee075a1c4c85c0c39cf421bdcc615f9eff6cb4fe6468004aece5f30e1ecc6db22ad9939bb2b0ccc96521dfbf4ae008b5b46bc006e,06ab8fdbe4dce935e42003c17ff60ba236f43a843995b7fef3a29dfe0c82f1d4 3a3a819c48efde2ad914fbf00e18ab6bc4f14513ab27d0c178a188b61431e7f5623cb66b23346775d386b50e982c493adbbfc54b9a3cd383382336a1a0b2150a15358f336d03ae18f666c7573d55c4fd181c29e6ccfde63ea35f0adf5885cfc0a3d84a2b2e4dd24496db789e663170cef74798aa1bbcd4574ea0bba40489d764b2f83aadc66b148b4a0cd95246c127d5871c4f11418690a5ddf01246a0c80a43c70088b6183639dcfda4125bd113a8f49ee23ed306faac576c3fb0c1e256671d817fc2534a52f5b439f72e424de376f4c565cca82307dd9ef76da5b7c4eb7e085172e328807c02d011ffbf33785378d79dc266f6a5be6bb0e4a92eceebaeb1,c11f3522a8fb7b3532d80b6d40023a92b489addad93bf5d64b23f35e9663521c # EOF pysha3-1.0.2/vectors/sha3_224.txt0000664000175000017500000023444112711152670017156 0ustar heimesheimes00000000000000# ShortMsgKAT_SHA3-224.txt ,6b4e03423667dbb73b6e15454f0eb1abd4597f9a1b078e3f5b5a6bc7 cc,df70adc49b2e76eee3a6931b93fa41841c3af2cdf5b32a18b5478c39 41fb,bff295861daedf33e70519b1e2bcb4c2e9fe3364d789bc3b17301c15 1f877c,14889df49c076a9af2f4bcb16339bcc45a24ebf9ce4dcdce7ec17217 c1ecfdfc,a33c58df8a8026f0f9591966bd6d00eed3b1e829580ab9be268caf39 21f134ac57,10e580a32199596169331ad43cfcf10264f81565037040028a06b458 c6f50bb74e29,fe52c30c95c1e5193207e97d355fde09453482708c0876aa961508f0 119713cc83eeef,8b449849cb7c4776c593de58fd5c2e322cb5316be08a75057a01ed6a 4a4f202484512526,01386cdd70589b3b34941efe16b85071e9ba948179922044f640868e 1f66ab4185ed9b6375,86953d0864019c81fd3a805357a162fd76a13a7cbf6ff0d635015d0e eed7422227613b6f53c9,e56fc2a5a58709031df02a2e46ad95f93583e2745630540d8d97f703 eaeed5cdffd89dece455f1,1d783c37c32a2b71b504bcaa05fc00b639f1fae7e8d8e3f3bc49f041 5be43c90f22902e4fe8ed2d3,54c7e4bf3c73e192ade223dfea86f2d04acf953612731958f854c7bd a746273228122f381c3b46e4f1,77e51ceada2aa1cbbf95acd821008b57e946f7940223b19f0c53e62e 3c5871cd619c69a63b540eb5a625,9ed59ed155e97154e067fa0f5a130839b57bdbda6feb82dabe006f00 fa22874bcc068879e8ef11a69f0722,81b3e56cfeee8e9138d3bfe24bb7ccdfd4b50d0b8ca11ae7d4b0c960 52a608ab21ccdd8a4457a57ede782176,b1571bed52e54eef377d99df7be4bc6682c43387f2bf9acc92df608f 82e192e4043ddcd12ecf52969d0f807eed,08045cf78d238d56972f1c850414bc404fc6dcb11f8d8210d034c610 75683dcb556140c522543bb6e9098b21a21e,9ffd840c550ad23971eb5ce89ae2fd6222abfb7f0aafd7eb0005716b 06e4efe45035e61faaf4287b4d8d1f12ca97e5,72decb5ea1b25a2daaeb234a8d96e0f57211426666a2ee76b2385c62 e26193989d06568fe688e75540aea06747d9f851,a589936370a3d20039c469d44a1c26e62823ab28cc50175a9897f98e d8dc8fdefbdce9d44e4cbafe78447bae3b5436102a,96f43401ad49c58d887020f395bdd01f6dad04128a85b17780408c37 57085fd7e14216ab102d8317b0cb338a786d5fc32d8f,a3a0f0c552e7cd2723fe22e1d5719e213d9a3da1db99e32efffd0f46 a05404df5dbb57697e2c16fa29defac8ab3560d6126fa0,e991f4a14b56dc6b224ef352ae8bc8cae8b1af1c25c6733dfb7ffe1f aecbb02759f7433d6fcb06963c74061cd83b5b3ffa6f13c6,718866c21cbe3f291364c07b36078a6bf0b8258b0ec155e2e2b1af23 aafdc9243d3d4a096558a360cc27c8d862f0be73db5e88aa55,23606d06fd8f87c2205abb5fd04c33eba30509955200566a0f772b49 7bc84867f6f9e9fdc3e1046cae3a52c77ed485860ee260e30b15,05935f0ad2264475df34fa96f6a9118c32b217e86169eb7ade4e2fdb fac523575a99ec48279a7a459e98ff901918a475034327efb55843,fbec83cbdb6d08c7bfddc2e37f73b16dc92926a5c23dab41deebfb1b 0f8b2d8fcfd9d68cffc17ccfb117709b53d26462a3f346fb7c79b85e,1e693b0bce2372550daef35b14f13ab43441ed6742dee3e86fd1d8ef a963c3e895ff5a0be4824400518d81412f875fa50521e26e85eac90c04,1781f1344dc17f678571f4e5df3998b1d38b1d83602b53b9b6f283d6 03a18688b10cc0edf83adf0a84808a9718383c4070c6c4f295098699ac2c,03b74b7d8fc1f23f76bab2b6c35f292c15506de64978fcf6d9973fce 84fb51b517df6c5accb5d022f8f28da09b10232d42320ffc32dbecc3835b29,6a6857fba903b9da2753690c39c548be008e22ebb372eeaa16c85918 9f2fcc7c90de090d6b87cd7e9718c1ea6cb21118fc2d5de9f97e5db6ac1e9c10,887921848ad98458f3db3e0ecd5ad5db1f0bf9f2d0ca08601074d597 de8f1b3faa4b7040ed4563c3b8e598253178e87e4d0df75e4ff2f2dedd5a0be046,e0573ad706b44d8c4d204f884b95ab18913e76f41cf29a16dbe34794 62f154ec394d0bc757d045c798c8b87a00e0655d0481a7d2d9fb58d93aedc676b5a0,ba31233099055483c99f7ad82d0d24af487ed4b53fff1a892a55ddb3 b2dcfe9ff19e2b23ce7da2a4207d3e5ec7c6112a8a22aec9675a886378e14e5bfbad4e,befaa1cb47cf78ddd4e096b861bc340b776f52e351ebe378ade305ba 47f5697ac8c31409c0868827347a613a3562041c633cf1f1f86865a576e02835ed2c2492,f1e7a1b28ea4d6fb86570f66911e3258c3f49f891654fbce9bc79b8b 512a6d292e67ecb2fe486bfe92660953a75484ff4c4f2eca2b0af0edcdd4339c6b2ee4e542,c2b31746446934fe29e84cfb5c25b03be33e9004f74e91c1af0db789 973cf2b4dcf0bfa872b41194cb05bb4e16760a1840d8343301802576197ec19e2a1493d8f4fb,3a80645fe4271346aaedc3ae5011b75df163fad3ee6128d87f3d9da3 80beebcd2e3f8a9451d4499961c9731ae667cdc24ea020ce3b9aa4bbc0a7f79e30a934467da4b0,3c5ebe43a2571bcef25e4ea67a4ca9838770d23599059955af93ff83 7abaa12ec2a7347674e444140ae0fb659d08e1c66decd8d6eae925fa451d65f3c0308e29446b8ed3,af71dab0f33d3b48733ad6335ca609398d894e6fa96f5510ae73e5d2 c88dee9927679b8af422abcbacf283b904ff31e1cac58c7819809f65d5807d46723b20f67ba610c2b7,dd7512daa0c634cc1588870b84691d7de2c182e5570d57868e7dda5d 01e43fe350fcec450ec9b102053e6b5d56e09896e0ddd9074fe138e6038210270c834ce6eadc2bb86bf6,6cb4f9292ba33ca8d293b7a7ef76619e77309ba2178cd4a130bf9218 337023370a48b62ee43546f17c4ef2bf8d7ecd1d49f90bab604b839c2e6e5bd21540d29ba27ab8e309a4b7,a9b8435e55fc50fe935ec96798a629c13e856c3c5cfd248126976e0d 6892540f964c8c74bd2db02c0ad884510cb38afd4438af31fc912756f3efec6b32b58ebc38fc2a6b913596a8,93e79850622b91f729ab056ea402e27f01b5323158111b29362a96d5 f5961dfd2b1ffffda4ffbf30560c165bfedab8ce0be525845deb8dc61004b7db38467205f5dcfb34a2acfe96c0,7e51d5531382490670115de13137cb3adb6e7621b7d9eca8170faa96 ca061a2eb6ceed8881ce2057172d869d73a1951e63d57261384b80ceb5451e77b06cf0f5a0ea15ca907ee1c27eba,95c35037a8076926fc5c421c35160ac5fe533a2782f20f2d3f4b1b7d 1743a77251d69242750c4f1140532cd3c33f9b5ccdf7514e8584d4a5f9fbd730bcf84d0d4726364b9bf95ab251d9bb,bf024a4fe480636118fcc85b807704d59b64d16a150aa53cde41f030 d8faba1f5194c4db5f176fabfff856924ef627a37cd08cf55608bba8f1e324d7c7f157298eabc4dce7d89ce5162499f9,b7a51fbb084deeb55136efd7260e5b112e3c40d1a2d14b142df930df be9684be70340860373c9c482ba517e899fc81baaa12e5c6d7727975d1d41ba8bef788cdb5cf4606c9c1c7f61aed59f97d,61cf830a2c4f8f48bc643f97a25f822c013f73bdf4cb4194bc8d55df 7e15d2b9ea74ca60f66c8dfab377d9198b7b16deb6a1ba0ea3c7ee2042f89d3786e779cf053c77785aa9e692f821f14a7f51,d87f62ea811a2f6bf3c5fde13475b9c676620c0184f87149dc8686c8 9a219be43713bd578015e9fda66c0f2d83cac563b776ab9f38f3e4f7ef229cb443304fba401efb2bdbd7ece939102298651c86,028a639c7ec0ba1dcec0b689aa26e2c0167622462669a5c52031602b c8f2b693bd0d75ef99caebdc22adf4088a95a3542f637203e283bbc3268780e787d68d28cc3897452f6a22aa8573ccebf245972a,908ef28ab2b6cbb449b9af7fa78b3d90e019c3916562eb4819a0c87f ec0f99711016c6a2a07ad80d16427506ce6f441059fd269442baaa28c6ca037b22eeac49d5d894c0bf66219f2c08e9d0e8ab21de52,6ac84149f890e1352c6d7397dac3b3773947b3757e8ed4ec059ef899 0dc45181337ca32a8222fe7a3bf42fc9f89744259cff653504d6051fe84b1a7ffd20cb47d4696ce212a686bb9be9a8ab1c697b6d6a33,45da27715cd75f5875beb7d914cf7488240d1b1f975d430d2f49e9bf de286ba4206e8b005714f80fb1cdfaebde91d29f84603e4a3ebc04686f99a46c9e880b96c574825582e8812a26e5a857ffc6579f63742f,63afbabbec072140dfcefe64cf7bc9534dca10956042e31dbe58d0a5 eebcc18057252cbf3f9c070f1a73213356d5d4bc19ac2a411ec8cdeee7a571e2e20eaf61fd0c33a0ffeb297ddb77a97f0a415347db66bcaf,6487193d9cbe593b3daa50d4dfdf7dd2612300bb93cb39e3eefa1afa 416b5cdc9fe951bd361bd7abfc120a5054758eba88fdd68fd84e39d3b09ac25497d36b43cbe7b85a6a3cebda8db4e5549c3ee51bb6fcb6ac1e,0dec25be3277e27d4f784ad5ff8f79d61d9a309bd693513acbeed12f 5c5faf66f32e0f8311c32e8da8284a4ed60891a5a7e50fb2956b3cbaa79fc66ca376460e100415401fc2b8518c64502f187ea14bfc9503759705,130b67c6d1a5616227abd73abf6feb70fce1d5a4bf3338c6dccb39d5 7167e1e02be1a7ca69d788666f823ae4eef39271f3c26a5cf7cee05bca83161066dc2e217b330df821103799df6d74810eed363adc4ab99f36046a,3abb5acb8485e20bb620d4a030b9c25d3156a9b26893ae007c79f305 2fda311dbba27321c5329510fae6948f03210b76d43e7448d1689a063877b6d14c4f6d0eaa96c150051371f7dd8a4119f7da5c483cc3e6723c01fb7d,922e216529a95305307e908c69367ebb9ad931eca314563ac36aab80 95d1474a5aab5d2422aca6e481187833a6212bd2d0f91451a67dd786dfc91dfed51b35f47e1deb8a8ab4b9cb67b70179cc26f553ae7b569969ce151b8d,c72e93a2c39abcd90ab11cd3f15d59da3c23c0f17c4e26c9c5890887 c71bd7941f41df044a2927a8ff55b4b467c33d089f0988aa253d294addbdb32530c0d4208b10d9959823f0c0f0734684006df79f7099870f6bf53211a88d,cccc3b59f28c3fc462dc0a696150f5aea62da0aba97c476bd0d866c1 f57c64006d9ea761892e145c99df1b24640883da79d9ed5262859dcda8c3c32e05b03d984f1ab4a230242ab6b78d368dc5aaa1e6d3498d53371e84b0c1d4ba,28cfd0c6f0208d24aaa69e6c39f5257c13303e91c2d683a9af29b973 e926ae8b0af6e53176dbffcc2a6b88c6bd765f939d3d178a9bde9ef3aa131c61e31c1e42cdfaf4b4dcde579a37e150efbef5555b4c1cb40439d835a724e2fae7,c154607f986f9bf902d831293c8386d36b201eaba6f6fb0b678b4b81 16e8b3d8f988e9bb04de9c96f2627811c973ce4a5296b4772ca3eefeb80a652bdf21f50df79f32db23f9f73d393b2d57d9a0297f7a2f2e79cfda39fa393df1ac00,95e87ac90f541ab90cbcf7fd7e0e0c152cef78d5ee1830e9ed8a1ed7 fc424eeb27c18a11c01f39c555d8b78a805b88dba1dc2a42ed5e2c0ec737ff68b2456d80eb85e11714fa3f8eabfb906d3c17964cb4f5e76b29c1765db03d91be37fc,35bd7d02541d6d4b10ace6029a24c07a38fd563aba227f0f776ea5e2 abe3472b54e72734bdba7d9158736464251c4f21b33fbbc92d7fac9a35c4e3322ff01d2380cbaa4ef8fb07d21a2128b7b9f5b6d9f34e13f39c7ffc2e72e47888599ba5,99decb8cf1d474970b3cfa87fa462b75e3287b98b4be4093429e22d6 36f9f0a65f2ca498d739b944d6eff3da5ebba57e7d9c41598a2b0e4380f3cf4b479ec2348d015ffe6256273511154afcf3b4b4bf09d6c4744fdd0f62d75079d440706b05,8c20fd3d8e08235b01727a4df44d86e71e824f14b0c2fe4e8da7f1bb abc87763cae1ca98bd8c5b82caba54ac83286f87e9610128ae4de68ac95df5e329c360717bd349f26b872528492ca7c94c2c1e1ef56b74dbb65c2ac351981fdb31d06c77a4,e29e68439aecde56f5297fb935dc7dbe63d61ce360a19629195bd8aa 94f7ca8e1a54234c6d53cc734bb3d3150c8ba8c5f880eab8d25fed13793a9701ebe320509286fd8e422e931d99c98da4df7e70ae447bab8cffd92382d8a77760a259fc4fbd72,5d2164da84e7707cd1e789711a664ab2ebcf66eba899a909a1d0cbec 13bd2811f6ed2b6f04ff3895aceed7bef8dcd45eb121791bc194a0f806206bffc3b9281c2b308b1a729ce008119dd3066e9378acdcc50a98a82e20738800b6cddbe5fe9694ad6d,fa263b093ea3f96b52db6251ea25a5254ada5b54d476cb0794d38889 1eed9cba179a009ec2ec5508773dd305477ca117e6d569e66b5f64c6bc64801ce25a8424ce4a26d575b8a6fb10ead3fd1992edddeec2ebe7150dc98f63adc3237ef57b91397aa8a7,d803e320a9865ebf3555e8a3e3134768a2ee1b3e59fa15f35c2ec550 ba5b67b5ec3a3ffae2c19dd8176a2ef75c0cd903725d45c9cb7009a900c0b0ca7a2967a95ae68269a6dbf8466c7b6844a1d608ac661f7eff00538e323db5f2c644b78b2d48de1a08aa,102925b63b3e9395f88124c3bfa777f29a5b41c13b62add7c271cd6e 0efa26ac5673167dcacab860932ed612f65ff49b80fa9ae65465e5542cb62075df1c5ae54fba4db807be25b070033efa223bdd5b1d3c94c6e1909c02b620d4b1b3a6c9fed24d70749604,6c4e83cd9258205f3c2bcf64149f4acdcee7742cb2d36038537171bd bbfd933d1fd7bf594ac7f435277dc17d8d5a5b8e4d13d96d2f64e771abbd51a5a8aea741beccbddb177bcea05243ebd003cfdeae877cca4da94605b67691919d8b033f77d384ca01593c1b,c74c9ebb2ef9a9822a6228bd1186dcc4411bc59ec938df27e54b0815 90078999fd3c35b8afbf4066cbde335891365f0fc75c1286cdd88fa51fab94f9b8def7c9ac582a5dbcd95817afb7d1b48f63704e19c2baa4df347f48d4a6d603013c23f1e9611d595ebac37c,d23420f9985d66f097d43a0fb2434149d2b33f21b5bad6cfc250e072 64105eca863515c20e7cfbaa0a0b8809046164f374d691cdbd6508aaabc1819f9ac84b52bafc1b0fe7cddbc554b608c01c8904c669d8db316a0953a4c68ece324ec5a49ffdb59a1bd6a292aa0e,102edd2e946f33dd7aa553ea4ce4e659c7b240e1e28bc66200845d87 d4654be288b9f3b711c2d02015978a8cc57471d5680a092aa534f7372c71ceaab725a383c4fcf4d8deaa57fca3ce056f312961eccf9b86f14981ba5bed6ab5b4498e1f6c82c6cae6fc14845b3c8a,7c8eb98b7338403c013d65c0b5bb4b5d2cbf539cb1109cf447fa6650 12d9394888305ac96e65f2bf0e1b18c29c90fe9d714dd59f651f52b88b3008c588435548066ea2fc4c101118c91f32556224a540de6efddbca296ef1fb00341f5b01fecfc146bdb251b3bdad556cd2,c7b07de91efce42dab78199ee2eb3014a494994236a12b3de2330c25 871a0d7a5f36c3da1dfce57acd8ab8487c274fad336bc137ebd6ff4658b547c1dcfab65f037aa58f35ef16aff4abe77ba61f65826f7be681b5b6d5a1ea8085e2ae9cd5cf0991878a311b549a6d6af230,2fcef2594ae855de4fc66dccc517a659118b3a9f2e5fe638980adbfb e90b4ffef4d457bc7711ff4aa72231ca25af6b2e206f8bf859d8758b89a7cd36105db2538d06da83bad5f663ba11a5f6f61f236fd5f8d53c5e89f183a3cec615b50c7c681e773d109ff7491b5cc22296c5,d45873f0453cbf38156a1384e33e5c76588b7bfb48a709b3943d9186 e728de62d75856500c4c77a428612cd804f30c3f10d36fb219c5ca0aa30726ab190e5f3f279e0733d77e7267c17be27d21650a9a4d1e32f649627638dbada9702c7ca303269ed14014b2f3cf8b894eac8554,3543add5b7edfc83afe7c1f2d55140aedb858304628109fd077b3860 6348f229e7b1df3b770c77544e5166e081850fa1c6c88169db74c76e42eb983facb276ad6a0d1fa7b50d3e3b6fcd799ec97470920a7abed47d288ff883e24ca21c7f8016b93bb9b9e078bdb9703d2b781b616e,36784f114958d8b5b625dd89a4e3973a113e5d1610dfa55b4fb45aec 4b127fde5de733a1680c2790363627e63ac8a3f1b4707d982caea258655d9bf18f89afe54127482ba01e08845594b671306a025c9a5c5b6f93b0a39522dc877437be5c2436cbf300ce7ab6747934fcfc30aeaaf6,4187feaed4fbd3d505a96a8d60668a88172e4f7c8451a4a6802c5747 08461f006cff4cc64b752c957287e5a0faabc05c9bff89d23fd902d324c79903b48fcb8f8f4b01f3e4ddb483593d25f000386698f5ade7faade9615fdc50d32785ea51d49894e45baa3dc707e224688c6408b68b11,6e4766db4e9d1102cee6dfe0ae2221321b9c0fe707f0a7825d7557ec 68c8f8849b120e6e0c9969a5866af591a829b92f33cd9a4a3196957a148c49138e1e2f5c7619a6d5edebe995acd81ec8bb9c7b9cfca678d081ea9e25a75d39db04e18d475920ce828b94e72241f24db72546b352a0e4,e1fc972bfb294185f1980ca2938655fb583e812ad3d64fa5a4cf703e b8d56472954e31fb54e28fca743f84d8dc34891cb564c64b08f7b71636debd64ca1edbdba7fc5c3e40049ce982bba8c7e0703034e331384695e9de76b5104f2fbc4535ecbeebc33bc27f29f18f6f27e8023b0fbb6f563c,f6f28e3b65b684c9d9506061980046061390ccde2458a20f9b086be5 0d58ac665fa84342e60cefee31b1a4eacdb092f122dfc68309077aed1f3e528f578859ee9e4cefb4a728e946324927b675cd4f4ac84f64db3dacfe850c1dd18744c74ceccd9fe4dc214085108f404eab6d8f452b5442a47d,f686d2b1386b02b08f6b02bd5d50206d5e138440cb0d93ebcc3b32a7 1755e2d2e5d1c1b0156456b539753ff416651d44698e87002dcf61dcfa2b4e72f264d9ad591df1fdee7b41b2eb00283c5aebb3411323b672eaa145c5125185104f20f335804b02325b6dea65603f349f4d5d8b782dd3469ccd,46483375d112fc2be7f611be4b98dfada38892c43cefa586726b48bb b180de1a611111ee7584ba2c4b020598cd574ac77e404e853d15a101c6f5a2e5c801d7d85dc95286a1804c870bb9f00fd4dcb03aa8328275158819dcad7253f3e3d237aeaa7979268a5db1c6ce08a9ec7c2579783c8afc1f91a7,e1e9ad568ae5b0d9731400ba4fc7df0321a04ea41393ba6979c7179c cf3583cbdfd4cbc17063b1e7d90b02f0e6e2ee05f99d77e24e560392535e47e05077157f96813544a17046914f9efb64762a23cf7a49fe52a0a4c01c630cfe8727b81fb99a89ff7cc11dca5173057e0417b8fe7a9efba6d95c555f,133f31d9fbc1b2a33f1c98bfe21e129e0716a69ee27408743fff17ac 072fc02340ef99115bad72f92c01e4c093b9599f6cfc45cb380ee686cb5eb019e806ab9bd55e634ab10aa62a9510cc0672cd3eddb589c7df2b67fcd3329f61b1a4441eca87a33c8f55da4fbbad5cf2b2527b8e983bb31a2fadec7523,31328f04ca64e8521a36a8943c33ceb95be1b9080f4533d6da07606d 76eecf956a52649f877528146de33df249cd800e21830f65e90f0f25ca9d6540fde40603230eca6760f1139c7f268deba2060631eea92b1fff05f93fd5572fbe29579ecd48bc3a8d6c2eb4a6b26e38d6c5fbf2c08044aeea470a8f2f26,add374b1d279469c08e7b27ae3ff1b04c3d0fb3ef6e59aa3af86660b 7adc0b6693e61c269f278e6944a5a2d8300981e40022f839ac644387bfac9086650085c2cdc585fea47b9d2e52d65a2b29a7dc370401ef5d60dd0d21f9e2b90fae919319b14b8c5565b0423cefb827d5f1203302a9d01523498a4db10374,fed7fde894d92cc3bb68fcc396b5eb00c4156f04fc9ced99d12cfa5b e1fffa9826cce8b86bccefb8794e48c46cdf372013f782eced1e378269b7be2b7bf51374092261ae120e822be685f2e7a83664bcfbe38fe8633f24e633ffe1988e1bc5acf59a587079a57a910bda60060e85b5f5b6f776f0529639d9cce4bd,17fc0327de474c78f538b4f3981674ff470aa42ef3b82c0cc34de6da 69f9abba65592ee01db4dce52dbab90b08fc04193602792ee4daa263033d59081587b09bbe49d0b49c9825d22840b2ff5d9c5155f975f8f2c2e7a90c75d2e4a8040fe39f63bbafb403d9e28cc3b86e04e394a9c9e8065bd3c85fa9f0c7891600,88fefbe8995e296a9dee4da2b414d5a7e134045639a6b176c2d736ed 38a10a352ca5aedfa8e19c64787d8e9c3a75dbf3b8674bfab29b5dbfc15a63d10fae66cd1a6e6d2452d557967eaad89a4c98449787b0b3164ca5b717a93f24eb0b506ceb70cbbcb8d72b2a72993f909aad92f044e0b5a2c9ac9cb16a0ca2f81f49,c002732f6f38ab83828921f5fcb4a8ce1fc561b0e9fa214c5ff02192 6d8c6e449bc13634f115749c248c17cd148b72157a2c37bf8969ea83b4d6ba8c0ee2711c28ee11495f43049596520ce436004b026b6c1f7292b9c436b055cbb72d530d860d1276a1502a5140e3c3f54a93663e4d20edec32d284e25564f624955b52,44e9002f9d97d98bb439afc361f93bb959523e73136a2c65b2e2b066 6efcbcaf451c129dbe00b9cef0c3749d3ee9d41c7bd500ade40cdc65dedbbbadb885a5b14b32a0c0d087825201e303288a733842fa7e599c0c514e078f05c821c7a4498b01c40032e9f1872a1c925fa17ce253e8935e4c3c71282242cb716b2089ccc1,2bff16cba9e50762d2288eb780078462c086f4cbf59479f5387a0b27 433c5303131624c0021d868a30825475e8d0bd3052a022180398f4ca4423b98214b6beaac21c8807a2c33f8c93bd42b092cc1b06cedf3224d5ed1ec29784444f22e08a55aa58542b524b02cd3d5d5f6907afe71c5d7462224a3f9d9e53e7e0846dcbb4ce,5efdc3caa22ee2c2eb632d4c6645ce3ec63960dfd69a04bbe01156c5 a873e0c67ca639026b6683008f7aa6324d4979550e9bce064ca1e1fb97a30b147a24f3f666c0a72d71348ede701cf2d17e2253c34d1ec3b647dbcef2f879f4eb881c4830b791378c901eb725ea5c172316c6d606e0af7df4df7f76e490cd30b2badf45685f,e8fb64a74387c9a3e1ac4abc82d3591b6b349f2e5cde6584d8d7c371 006917b64f9dcdf1d2d87c8a6173b64f6587168e80faa80f82d84f60301e561e312d9fbce62f39a6fb476e01e925f26bcc91de621449be6504c504830aae394096c8fc7694651051365d4ee9070101ec9b68086f2ea8f8ab7b811ea8ad934d5c9b62c60a4771,db224bccf5ca86dfba3ea372e2269750b532409ea004e82d4b5835e8 f13c972c52cb3cc4a4df28c97f2df11ce089b815466be88863243eb318c2adb1a417cb1041308598541720197b9b1cb5ba2318bd5574d1df2174af14884149ba9b2f446d609df240ce335599957b8ec80876d9a085ae084907bc5961b20bf5f6ca58d5dab38adb,4e28867dcef3a7b759ca24d8107beb0cbf9db0f10a3c410a9b4ba8c8 e35780eb9799ad4c77535d4ddb683cf33ef367715327cf4c4a58ed9cbdcdd486f669f80189d549a9364fa82a51a52654ec721bb3aab95dceb4a86a6afa93826db923517e928f33e3fba850d45660ef83b9876accafa2a9987a254b137c6e140a21691e1069413848,5c0c2df13a1fd6762b6e50fb3e080e649c3a7a8dda415c42fb637136 64ec021c9585e01ffe6d31bb50d44c79b6993d72678163db474947a053674619d158016adb243f5c8d50aa92f50ab36e579ff2dabb780a2b529370daa299207cfbcdd3a9a25006d19c4f1fe33e4b1eaec315d8c6ee1e730623fd1941875b924eb57d6d0c2edc4e78d6,36f5630ec2829b0fbad84f150932e46647edcc454e06b23166661d60 5954bab512cf327d66b5d9f296180080402624ad7628506b555eea8382562324cf452fba4a2130de3e165d11831a270d9cb97ce8c2d32a96f50d71600bb4ca268cf98e90d6496b0a6619a5a8c63db6d8a0634dfc6c7ec8ea9c006b6c456f1b20cd19e781af20454ac880,dac2594bcd357e63928a21e98348f27d0fa2c70eb07c7e8e93d6d84e 03d9f92b2c565709a568724a0aff90f8f347f43b02338f94a03ed32e6f33666ff5802da4c81bdce0d0e86c04afd4edc2fc8b4141c2975b6f07639b1994c973d9a9afce3d9d365862003498513bfa166d2629e314d97441667b007414e739d7febf0fe3c32c17aa188a8683,24970df3cf8c9e30dcbe661817ff74538ad43bc90b149ed7cab7811b f31e8b4f9e0621d531d22a380be5d9abd56faec53cbd39b1fab230ea67184440e5b1d15457bd25f56204fa917fa48e669016cb48c1ffc1e1e45274b3b47379e00a43843cf8601a5551411ec12503e5aac43d8676a1b2297ec7a0800dbfee04292e937f21c005f17411473041,ad9bf420d2b570ebe7923a76b253f156f3513712955bcbb9a87394db 758ea3fea738973db0b8be7e599bbef4519373d6e6dcd7195ea885fc991d896762992759c2a09002912fb08e0cb5b76f49162aeb8cf87b172cf3ad190253df612f77b1f0c532e3b5fc99c2d31f8f65011695a087a35ee4eee5e334c369d8ee5d29f695815d866da99df3f79403,2f60928263fe1d5fa5136da8de1d2c3b60bd4b700a3e2c256e9536ef 47c6e0c2b74948465921868804f0f7bd50dd323583dc784f998a93cd1ca4c6ef84d41dc81c2c40f34b5bee6a93867b3bdba0052c5f59e6f3657918c382e771d33109122cc8bb0e1e53c4e3d13b43ce44970f5e0c079d2ad7d7a3549cd75760c21bb15b447589e86e8d76b1e9ced2,bfb40f7e7f81f2fec7644e08fbc99c768adc6314b8ccd833332f1bf8 f690a132ab46b28edfa6479283d6444e371c6459108afd9c35dbd235e0b6b6ff4c4ea58e7554bd002460433b2164ca51e868f7947d7d7a0d792e4abf0be5f450853cc40d85485b2b8857ea31b5ea6e4ccfa2f3a7ef3380066d7d8979fdac618aad3d7e886dea4f005ae4ad05e5065f,190e9fda8a7d78343ff24ade9fee69650c7631ad6329d17d4bd575db 58d6a99bc6458824b256916770a8417040721cccfd4b79eacd8b65a3767ce5ba7e74104c985ac56b8cc9aebd16febd4cda5adb130b0ff2329cc8d611eb14dac268a2f9e633c99de33997fea41c52a7c5e1317d5b5daed35eba7d5a60e45d1fa7eaabc35f5c2b0a0f2379231953322c4e,e26cd20b87083cb9f246d216e3da51ef7c5519b483db439d37256dbe befab574396d7f8b6705e2d5b58b2c1c820bb24e3f4bae3e8fbcd36dbf734ee14e5d6ab972aedd3540235466e825850ee4c512ea9795abfd33f330d9fd7f79e62bbb63a6ea85de15beaeea6f8d204a28956059e2632d11861dfb0e65bc07ac8a159388d5c3277e227286f65ff5e5b5aec1,6caf807f6abc1a7721a5f209fc09fd00474b9e2a77ef7b57e1320271 8e58144fa9179d686478622ce450c748260c95d1ba43b8f9b59abeca8d93488da73463ef40198b4d16fb0b0707201347e0506ff19d01bea0f42b8af9e71a1f1bd168781069d4d338fdef00bf419fbb003031df671f4a37979564f69282de9c65407847dd0da505ab1641c02dea4f0d834986,64cd5291a1a0807ba7c14103a0f46c636795f8f8d3a12e59e88d9c51 b55c10eae0ec684c16d13463f29291bf26c82e2fa0422a99c71db4af14dd9c7f33eda52fd73d017cc0f2dbe734d831f0d820d06d5f89dacc485739144f8cfd4799223b1aff9031a105cb6a029ba71e6e5867d85a554991c38df3c9ef8c1e1e9a7630be61caabca69280c399c1fb7a12d12aefc,29491256a80bf1a9325348b5841edc726fa8a53117268c47f74b5e49 2eeea693f585f4ed6f6f8865bbae47a6908aecd7c429e4bec4f0de1d0ca0183fa201a0cb14a529b7d7ac0e6ff6607a3243ee9fb11bcf3e2304fe75ffcddd6c5c2e2a4cd45f63c962d010645058d36571404a6d2b4f44755434d76998e83409c3205aa1615db44057db991231d2cb42624574f545,a523449b770a8de3b39cd446046149feaee327d6d5b39929b9aac915 dab11dc0b047db0420a585f56c42d93175562852428499f66a0db811fcdddab2f7cdffed1543e5fb72110b64686bc7b6887a538ad44c050f1e42631bc4ec8a9f2a047163d822a38989ee4aab01b4c1f161b062d873b1cfa388fd301514f62224157b9bef423c7783b7aac8d30d65cd1bba8d689c2d,abb2fce213ce164c94ab7a763c21f638a3bb8d72f802deadacc023ae 42e99a2f80aee0e001279a2434f731e01d34a44b1a8101726921c0590c30f3120eb83059f325e894a5ac959dca71ce2214799916424e859d27d789437b9d27240bf8c35adbafcecc322b48aa205b293962d858652abacbd588bcf6cbc388d0993bd622f96ed54614c25b6a9aa527589eaaffcf17ddf7,c40d969f7218d71b904c4e4eaceb0473ba0a2e7339649da5dfeb8938 3c9b46450c0f2cae8e3823f8bdb4277f31b744ce2eb17054bddc6dff36af7f49fb8a2320cc3bdf8e0a2ea29ad3a55de1165d219adeddb5175253e2d1489e9b6fdd02e2c3d3a4b54d60e3a47334c37913c5695378a669e9b72dec32af5434f93f46176ebf044c4784467c700470d0c0b40c8a088c815816,2eb28fdf458d4fecb5b441d910b576f630e666bbf30aac90ab64425b d1e654b77cb155f5c77971a64df9e5d34c26a3cad6c7f6b300d39deb1910094691adaa095be4ba5d86690a976428635d5526f3e946f7dc3bd4dbc78999e653441187a81f9adcd5a3c5f254bc8256b0158f54673dcc1232f6e918ebfc6c51ce67eaeb042d9f57eec4bfe910e169af78b3de48d137df4f2840,a3387b2fa23a13bfae77895f1f93935a0710ee3a027ff0d6399d8ecc 626f68c18a69a6590159a9c46be03d5965698f2dac3de779b878b3d9c421e0f21b955a16c715c1ec1e22ce3eb645b8b4f263f60660ea3028981eebd6c8c3a367285b691c8ee56944a7cd1217997e1d9c21620b536bdbd5de8925ff71dec6fbc06624ab6b21e329813de90d1e572dfb89a18120c3f606355d25,75755f46c2fc86bd4aae75919c6ca5b1a7375e466ca3170f70eee490 651a6fb3c4b80c7c68c6011675e6094eb56abf5fc3057324ebc6477825061f9f27e7a94633abd1fa598a746e4a577caf524c52ec1788471f92b8c37f23795ca19d559d446cab16cbcdce90b79fa1026cee77bf4ab1b503c5b94c2256ad75b3eac6fd5dcb96aca4b03a834bfb4e9af988cecbf2ae597cb9097940,7184c69ee1c43fd564102cd68ef898d5d0d8264b9b0d044691bc18af 8aaf072fce8a2d96bc10b3c91c809ee93072fb205ca7f10abd82ecd82cf040b1bc49ea13d1857815c0e99781de3adbb5443ce1c897e55188ceaf221aa9681638de05ae1b322938f46bce51543b57ecdb4c266272259d1798de13be90e10efec2d07484d9b21a3870e2aa9e06c21aa2d0c9cf420080a80a91dee16f,f50cf78ff46513c905399cc2510681a90ce089fced40fbc9cf218ca4 53f918fd00b1701bd504f8cdea803acca21ac18c564ab90c2a17da592c7d69688f6580575395551e8cd33e0fef08ca6ed4588d4d140b3e44c032355df1c531564d7f4835753344345a6781e11cd5e095b73df5f82c8ae3ad00877936896671e947cc52e2b29dcd463d90a0c9929128da222b5a211450bbc0e02448e2,f2aabe18d7b4dd8e4dc0ac8dcf4e9019c7c9af33d4b952da41219fe5 a64599b8a61b5ccec9e67aed69447459c8da3d1ec6c7c7c82a7428b9b584fa67e90f68e2c00fbbed4613666e5168da4a16f395f7a3c3832b3b134bfc9cbaa95d2a0fe252f44ac6681eb6d40ab91c1d0282fed6701c57463d3c5f2bb8c6a7301fb4576aa3b5f15510db8956ff77478c26a7c09bea7b398cfc83503f538e,ac5d00d177e71d7b9a97270e6200e4d3d07851eb2e58b12be0beed95 0e3ab0e054739b00cdb6a87bd12cae024b54cb5e550e6c425360c2e87e59401f5ec24ef0314855f0f56c47695d56a7fb1417693af2a1ed5291f2fee95f75eed54a1b1c2e81226fbff6f63ade584911c71967a8eb70933bc3f5d15bc91b5c2644d9516d3c3a8c154ee48e118bd1442c043c7a0dba5ac5b1d5360aae5b9065,cb7979b4c6c2826cdef7e1aada85f8c4546dd59d29fc0aea444f8077 a62fc595b4096e6336e53fcdfc8d1cc175d71dac9d750a6133d23199eaac288207944cea6b16d27631915b4619f743da2e30a0c00bbdb1bbb35ab852ef3b9aec6b0a8dcc6e9e1abaa3ad62ac0a6c5de765de2c3711b769e3fde44a74016fff82ac46fa8f1797d3b2a726b696e3dea5530439acee3a45c2a51bc32dd055650b,f9d8ccf6684693c40c81ebbd006c49984fbaf3a2b2e905abe60765dd 2b6db7ced8665ebe9deb080295218426bdaa7c6da9add2088932cdffbaa1c14129bccdd70f369efb149285858d2b1d155d14de2fdb680a8b027284055182a0cae275234cc9c92863c1b4ab66f304cf0621cd54565f5bff461d3b461bd40df28198e3732501b4860eadd503d26d6e69338f4e0456e9e9baf3d827ae685fb1d817,ed1f6387a7be090277b65a5fcd7040c7be0eeaf0fd7f14968097873b 10db509b2cdcaba6c062ae33be48116a29eb18e390e1bbada5ca0a2718afbcd23431440106594893043cc7f2625281bf7de2655880966a23705f0c5155c2f5cca9f2c2142e96d0a2e763b70686cd421b5db812daced0c6d65035fde558e94f26b3e6dde5bd13980cc80292b723013bd033284584bff27657871b0cf07a849f4ae2,0a27ce6973cb22a8b10057a8e7a654058b71e6d8c69c653415ff0c81 9334de60c997bda6086101a6314f64e4458f5ff9450c509df006e8c547983c651ca97879175aaba0c539e82d05c1e02c480975cbb30118121061b1ebac4f8d9a3781e2db6b18042e01ecf9017a64a0e57447ec7fcbe6a7f82585f7403ee2223d52d37b4bf426428613d6b4257980972a0acab508a7620c1cb28eb4e9d30fc41361ec,be3be49980f43fb6598be921d7d8fda1f397f605d9708c5d125c4e9f e88ab086891693aa535ceb20e64c7ab97c7dd3548f3786339897a5f0c39031549ca870166e477743ccfbe016b4428d89738e426f5ffe81626137f17aecff61b72dbee2dc20961880cfe281dfab5ee38b1921881450e16032de5e4d55ad8d4fca609721b0692bac79be5a06e177fe8c80c0c83519fb3347de9f43d5561cb8107b9b5edc,932137bf2cd32ddfd3ba80c525268730b6f7458601b5296aeb325183 fd19e01a83eb6ec810b94582cb8fbfa2fcb992b53684fb748d2264f020d3b960cb1d6b8c348c2b54a9fcea72330c2aaa9a24ecdb00c436abc702361a82bb8828b85369b8c72ece0082fe06557163899c2a0efa466c33c04343a839417057399a63a3929be1ee4805d6ce3e5d0d0967fe9004696a5663f4cac9179006a2ceb75542d75d68,796698ce24efcda8214d161138f3c7da6d7615e4cf1dac63b69941f9 59ae20b6f7e0b3c7a989afb28324a40fca25d8651cf1f46ae383ef6d8441587aa1c04c3e3bf88e8131ce6145cfb8973d961e8432b202fa5af3e09d625faad825bc19da9b5c6c20d02abda2fcc58b5bd3fe507bf201263f30543819510c12bc23e2ddb4f711d087a86edb1b355313363a2de996b891025e147036087401ccf3ca7815bf3c49,b216930e158d65fb1ff424f9eab6cd28996231ef5ee1d65dbe29d370 77ee804b9f3295ab2362798b72b0a1b2d3291dceb8139896355830f34b3b328561531f8079b79a6e9980705150866402fdc176c05897e359a6cb1a7ab067383eb497182a7e5aef7038e4c96d133b2782917417e391535b5e1b51f47d8ed7e4d4025fe98dc87b9c1622614bff3d1029e68e372de719803857ca52067cddaad958951cb2068cc6,af6c676a62288b2d25a862f8866b262a74e3d2a0d414b966ce601e14 b771d5cef5d1a41a93d15643d7181d2a2ef0a8e84d91812f20ed21f147bef732bf3a60ef4067c3734b85bc8cd471780f10dc9e8291b58339a677b960218f71e793f2797aea349406512829065d37bb55ea796fa4f56fd8896b49b2cd19b43215ad967c712b24e5032d065232e02c127409d2ed4146b9d75d763d52db98d949d3b0fed6a8052fbb,418c83eb01881b4f38544665201dd05c939ca047d31834f637342342 b32d95b0b9aad2a8816de6d06d1f86008505bd8c14124f6e9a163b5a2ade55f835d0ec3880ef50700d3b25e42cc0af050ccd1be5e555b23087e04d7bf9813622780c7313a1954f8740b6ee2d3f71f768dd417f520482bd3a08d4f222b4ee9dbd015447b33507dd50f3ab4247c5de9a8abd62a8decea01e3b87c8b927f5b08beb37674c6f8e380c04,64d78817714fe05272d3805e6e19056b1649036cdcd5094fd1cc890a 04410e31082a47584b406f051398a6abe74e4da59bb6f85e6b49e8a1f7f2ca00dfba5462c2cd2bfde8b64fb21d70c083f11318b56a52d03b81cac5eec29eb31bd0078b6156786da3d6d8c33098c5c47bb67ac64db14165af65b44544d806dde5f487d5373c7f9792c299e9686b7e5821e7c8e2458315b996b5677d926dac57b3f22da873c601016a0d,2c4e7c537d0e2af2261a669bc24bd0df16d2c72a7f98d7a5ef6a8150 8b81e9badde026f14d95c019977024c9e13db7a5cd21f9e9fc491d716164bbacdc7060d882615d411438aea056c340cdf977788f6e17d118de55026855f93270472d1fd18b9e7e812bae107e0dfde7063301b71f6cfe4e225cab3b232905a56e994f08ee2891ba922d49c3dafeb75f7c69750cb67d822c96176c46bd8a29f1701373fb09a1a6e3c7158f,df1fcb80ab380ca33bdb61f96adab334937e190f03c1b78b219e50f8 fa6eed24da6666a22208146b19a532c2ec9ba94f09f1def1e7fc13c399a48e41acc2a589d099276296348f396253b57cb0e40291bd282773656b6e0d8bea1cda084a3738816a840485fcf3fb307f777fa5feac48695c2af4769720258c77943fb4556c362d9cba8bf103aeb9034baa8ea8bfb9c4f8e6742ce0d52c49ea8e974f339612e830e9e7a9c29065,0dd77ada384cab6a7aced19cfc8048c2566d4303e2010c98d16a0516 9bb4af1b4f09c071ce3cafa92e4eb73ce8a6f5d82a85733440368dee4eb1cbc7b55ac150773b6fe47dbe036c45582ed67e23f4c74585dab509df1b83610564545642b2b1ec463e18048fc23477c6b2aa035594ecd33791af6af4cbc2a1166aba8d628c57e707f0b0e8707caf91cd44bdb915e0296e0190d56d33d8dde10b5b60377838973c1d943c22ed335e,b256d0d6b6d6a72e113d105ad9601c91933d53b20a30d8e2cf33f96d 2167f02118cc62043e9091a647cadbed95611a521fe0d64e8518f16c808ab297725598ae296880a773607a798f7c3cfce80d251ebec6885015f9abf7eaabae46798f82cb5926de5c23f44a3f9f9534b3c6f405b5364c2f8a8bdc5ca49c749bed8ce4ba48897062ae8424ca6dde5f55c0e42a95d1e292ca54fb46a84fbc9cd87f2d0c9e7448de3043ae22fdd229,b95f72512546e4af685931246717bc482bfe922789a26eef01bde82d 94b7fa0bc1c44e949b1d7617d31b4720cbe7ca57c6fa4f4094d4761567e389ecc64f6968e4064df70df836a47d0c713336b5028b35930d29eb7a7f9a5af9ad5cf441745baec9bb014ceeff5a41ba5c1ce085feb980bab9cf79f2158e03ef7e63e29c38d7816a84d4f71e0f548b7fc316085ae38a060ff9b8dec36f91ad9ebc0a5b6c338cbb8f6659d342a24368cf,628238a9532727cc83f8fdced11d138a17eee4822c5d3549157d6d5e ea40e83cb18b3a242c1ecc6ccd0b7853a439dab2c569cfc6dc38a19f5c90acbf76aef9ea3742ff3b54ef7d36eb7ce4ff1c9ab3bc119cff6be93c03e208783335c0ab8137be5b10cdc66ff3f89a1bddc6a1eed74f504cbe7290690bb295a872b9e3fe2cee9e6c67c41db8efd7d863cf10f840fe618e7936da3dca5ca6df933f24f6954ba0801a1294cd8d7e66dfafec,ab0fd308590574d6f6130232d9fafa9ffcfea78579a6a8f67c590420 157d5b7e4507f66d9a267476d33831e7bb768d4d04cc3438da12f9010263ea5fcafbde2579db2f6b58f911d593d5f79fb05fe3596e3fa80ff2f761d1b0e57080055c118c53e53cdb63055261d7c9b2b39bd90acc32520cbbdbda2c4fd8856dbcee173132a2679198daf83007a9b5c51511ae49766c792a29520388444ebefe28256fb33d4260439cba73a9479ee00c63,d5134200dc98f4ca480cd24d24497737252b55977ae5a869ba27089d 836b34b515476f613fe447a4e0c3f3b8f20910ac89a3977055c960d2d5d2b72bd8acc715a9035321b86703a411dde0466d58a59769672aa60ad587b8481de4bba552a1645779789501ec53d540b904821f32b0bd1855b04e4848f9f8cfe9ebd8911be95781a759d7ad9724a7102dbe576776b7c632bc39b9b5e19057e226552a5994c1dbb3b5c7871a11f5537011044c53,494cbc9b649e48ec5ad7364aeb9c8edf4a4f400789ef203f7b818a44 cc7784a4912a7ab5ad3620aab29ba87077cd3cb83636adc9f3dc94f51edf521b2161ef108f21a0a298557981c0e53ce6ced45bdf782c1ef200d29bab81dd6460586964edab7cebdbbec75fd7925060f7da2b853b2b089588fa0f8c16ec6498b14c55dcee335cb3a91d698e4d393ab8e8eac0825f8adebeee196df41205c011674e53426caa453f8de1cbb57932b0b741d4c6,7ff8a28ab12074102aef3efb8904284b617237322a2bf701c9fcfefc 7639b461fff270b2455ac1d1afce782944aea5e9087eb4a39eb96bb5c3baaf0e868c8526d3404f9405e79e77bfac5ffb89bf1957b523e17d341d7323c302ea7083872dd5e8705694acdda36d5a1b895aaa16eca6104c82688532c8bfe1790b5dc9f4ec5fe95baed37e1d287be710431f1e5e8ee105bc42ed37d74b1e55984bf1c09fe6a1fa13ef3b96faeaed6a2a1950a12153,50cdbeab4bbaa0861f3e364af520f9d8b54e79e3871abca7bbb2bae5 eb6513fc61b30cfba58d4d7e80f94d14589090cf1d80b1df2e68088dc6104959ba0d583d585e9578ab0aec0cf36c48435eb52ed9ab4bbce7a5abe679c97ae2dbe35e8cc1d45b06dda3cf418665c57cbee4bbb47fa4caf78f4ee656fec237fe4eebbafa206e1ef2bd0ee4ae71bd0e9b2f54f91daadf1febfd7032381d636b733dcb3bf76fb14e23aff1f68ed3dbcf75c9b99c6f26,29b6b523c82f499078c73630ba38227bbd08ef1a2d67b425c058def5 1594d74bf5dde444265d4c04dad9721ff3e34cbf622daf341fe16b96431f6c4df1f760d34f296eb97d98d560ad5286fec4dce1724f20b54fd7df51d4bf137add656c80546fb1bf516d62ee82baa992910ef4cc18b70f3f8698276fcfb44e0ec546c2c39cfd8ee91034ff9303058b4252462f86c823eb15bf481e6b79cc3a02218595b3658e8b37382bd5048eaed5fd02c37944e73b,93ce0c8d4355300d4e63d6599129dea7420e5b609dbb35be432b12b5 4cfa1278903026f66fedd41374558be1b585d03c5c55dac94361df286d4bd39c7cb8037ed3b267b07c346626449d0cc5b0dd2cf221f7e4c3449a4be99985d2d5e67bff2923357ddeab5abcb4619f3a3a57b2cf928a022eb27676c6cf805689004fca4d41ea6c2d0a4789c7605f7bb838dd883b3ad3e6027e775bcf262881428099c7fff95b14c095ea130e0b9938a5e22fc52650f591,d02896d957b599869f2b2a4992a49eef7ab1308f456c78c809bdac88 d3e65cb92cfa79662f6af493d696a07ccf32aaadcceff06e73e8d9f6f909209e66715d6e978788c49efb9087b170ecf3aa86d2d4d1a065ae0efc8924f365d676b3cb9e2bec918fd96d0b43dee83727c9a93bf56ca2b2e59adba85696546a815067fc7a78039629d4948d157e7b0d826d1bf8e81237bab7321312fdaa4d521744f988db6fdf04549d0fdca393d639c729af716e9c8bba48,181e2301f629a569271bb740d32b1d3bd25acb179e9aebef98009ed4 842cc583504539622d7f71e7e31863a2b885c56a0ba62db4c2a3f2fd12e79660dc7205ca29a0dc0a87db4dc62ee47a41db36b9ddb3293b9ac4baae7df5c6e7201e17f717ab56e12cad476be49608ad2d50309e7d48d2d8de4fa58ac3cfeafeee48c0a9eec88498e3efc51f54d300d828dddccb9d0b06dd021a29cf5cb5b2506915beb8a11998b8b886e0f9b7a80e97d91a7d01270f9a7717,5cd017b269a6366c789d9cecaef3ee9c3575181a084266d78a028db7 6c4b0a0719573e57248661e98febe326571f9a1ca813d3638531ae28b4860f23c3a3a8ac1c250034a660e2d71e16d3acc4bf9ce215c6f15b1c0fc7e77d3d27157e66da9ceec9258f8f2bf9e02b4ac93793dd6e29e307ede3695a0df63cbdc0fc66fb770813eb149ca2a916911bee4902c47c7802e69e405fe3c04ceb5522792a5503fa829f707272226621f7c488a7698c0d69aa561be9f378,ac280a211c98a07f6fcbb719f250e3e5a6ba2c93a833976c9f3147eb 51b7dbb7ce2ffeb427a91ccfe5218fd40f9e0b7e24756d4c47cd55606008bdc27d16400933906fd9f30effdd4880022d081155342af3fb6cd53672ab7fb5b3a3bcbe47be1fd3a2278cae8a5fd61c1433f7d350675dd21803746cadca574130f01200024c6340ab0cc2cf74f2234669f34e9009ef2eb94823d62b31407f4ba46f1a1eec41641e84d77727b59e746b8a671bef936f05be820759fa,c284c9308a28b6d29ccaa7853f8c41badcddbc1aa4e99481a6ee2f4d 83599d93f5561e821bd01a472386bc2ff4efbd4aed60d5821e84aae74d8071029810f5e286f8f17651cd27da07b1eb4382f754cd1c95268783ad09220f5502840370d494beb17124220f6afce91ec8a0f55231f9652433e5ce3489b727716cf4aeba7dcda20cd29aa9a859201253f948dd94395aba9e3852bd1d60dda7ae5dc045b283da006e1cbad83cc13292a315db5553305c628dd091146597,3d9a979b34d45569e1c98d09dc62d03616c0251c41a8b90138750f1e 2be9bf526c9d5a75d565dd11ef63b979d068659c7f026c08bea4af161d85a462d80e45040e91f4165c074c43ac661380311a8cbed59cc8e4c4518e80cd2c78ab1cabf66bff83eab3a80148550307310950d034a6286c93a1ece8929e6385c5e3bb6ea8a7c0fb6d6332e320e71cc4eb462a2a62e2bfe08f0ccad93e61bedb5dd0b786a728ab666f07e0576d189c92bf9fb20dca49ac2d3956d47385e2,8ddc9f1e0f94c1247a67d6119a9169762c6c7f1ec7f611d61353ab30 ca76d3a12595a817682617006848675547d3e8f50c2210f9af906c0e7ce50b4460186fe70457a9e879e79fd4d1a688c70a347361c847ba0dd6aa52936eaf8e58a1be2f5c1c704e20146d366aeb3853bed9de9befe9569ac8aaea37a9fb7139a1a1a7d5c748605a8defb297869ebedd71d615a5da23496d11e11abbb126b206fa0a7797ee7de117986012d0362dcef775c2fe145ada6bda1ccb326bf644,46eda2622d49b9148b40b6014c75a4086eb9dd4740f0dd591aca53b2 f76b85dc67421025d64e93096d1d712b7baf7fb001716f02d33b2160c2c882c310ef13a576b1c2d30ef8f78ef8d2f465007109aad93f74cb9e7d7bef7c9590e8af3b267c89c15db238138c45833c98cc4a471a7802723ef4c744a853cf80a0c2568dd4ed58a2c9644806f42104cee53628e5bdf7b63b0b338e931e31b87c24b146c6d040605567ceef5960df9e022cb469d4c787f4cba3c544a1ac91f95f,57cfa137968c39eaa12533044b8265bb903ec16c8d17b6cf1f106c57 25b8c9c032ea6bcd733ffc8718fbb2a503a4ea8f71dea1176189f694304f0ff68e862a8197b839957549ef243a5279fc2646bd4c009b6d1edebf24738197abb4c992f6b1dc9ba891f570879accd5a6b18691a93c7d0a8d38f95b639c1daeb48c4c2f15ccf5b9d508f8333c32de78781b41850f261b855c4bebcc125a380c54d501c5d3bd07e6b52102116088e53d76583b0161e2a58d0778f091206aabd5a1,8730c219e19d9d37cb7a63a4ddd55e84dcb0236ef7c8828b2a23c9b9 21cfdc2a7ccb7f331b3d2eefff37e48ad9fa9c788c3f3c200e0173d99963e1cbca93623b264e920394ae48bb4c3a5bb96ffbc8f0e53f30e22956adabc2765f57fb761e147ecbf8567533db6e50c8a1f894310a94edf806dd8ca6a0e141c0fa7c9fae6c6ae65f18c93a8529e6e5b553bf55f25be2e80a9882bd37f145fecbeb3d447a3c4e46c21524cc55cdd62f521ab92a8ba72b897996c49bb273198b7b1c9e,61c01fb4a010f319d193cb6d36063751950a1a8f93539bea32f84ea1 4e452ba42127dcc956ef4f8f35dd68cb225fb73b5bc7e1ec5a898bba2931563e74faff3b67314f241ec49f4a7061e3bd0213ae826bab380f1f14faab8b0efddd5fd1bb49373853a08f30553d5a55ccbbb8153de4704f29ca2bdeef0419468e05dd51557ccc80c0a96190bbcc4d77ecff21c66bdf486459d427f986410f883a80a5bcc32c20f0478bb9a97a126fc5f95451e40f292a4614930d054c851acd019ccf,1459044df9c26f5e240f6a6b9380734cad84b6592fc9693ddd9f974e fa85671df7dadf99a6ffee97a3ab9991671f5629195049880497487867a6c446b60087fac9a0f2fcc8e3b24e97e42345b93b5f7d3691829d3f8ccd4bb36411b85fc2328eb0c51cb3151f70860ad3246ce0623a8dc8b3c49f958f8690f8e3860e71eb2b1479a5cea0b3f8befd87acaf5362435eaeccb52f38617bc6c5c2c6e269ead1fbd69e941d4ad2012da2c5b21bcfbf98e4a77ab2af1f3fda3233f046d38f1dc8,eb5cc00173239851f3960edac336005109189dfc04b29ca4cdde5bc1 e90847ae6797fbc0b6b36d6e588c0a743d725788ca50b6d792352ea8294f5ba654a15366b8e1b288d84f5178240827975a763bc45c7b0430e8a559df4488505e009c63da994f1403f407958203cebb6e37d89c94a5eacf6039a327f6c4dbbc7a2a307d976aa39e41af6537243fc218dfa6ab4dd817b6a397df5ca69107a9198799ed248641b63b42cb4c29bfdd7975ac96edfc274ac562d0474c60347a078ce4c25e88,a640d4841390f47dc47d4bfcf130fcf51c5f2d491f91c13374ce5965 f6d5c2b6c93954fc627602c00c4ca9a7d3ed12b27173f0b2c9b0e4a5939398a665e67e69d0b12fb7e4ceb253e8083d1ceb724ac07f009f094e42f2d6f2129489e846eaff0700a8d4453ef453a3eddc18f408c77a83275617fabc4ea3a2833aa73406c0e966276079d38e8e38539a70e194cc5513aaa457c699383fd1900b1e72bdfb835d1fd321b37ba80549b078a49ea08152869a918ca57f5b54ed71e4fd3ac5c06729,85bb3ed98c4808d8f67c722c9119c54e6543b29e57bd4fb5cbc878c7 cf8562b1bed89892d67ddaaf3deeb28246456e972326dbcdb5cf3fb289aca01e68da5d59896e3a6165358b071b304d6ab3d018944be5049d5e0e2bb819acf67a6006111089e6767132d72dd85beddcbb2d64496db0cc92955ab4c6234f1eea24f2d51483f2e209e4589bf9519fac51b4d061e801125e605f8093bb6997bc163d551596fe4ab7cfae8fb9a90f6980480ce0c229fd1675409bd788354daf316240cfe0af93eb,50b7d0acb93211e0fc935f970bc43a00be829d6b3c137d4a7e3b2bc1 2ace31abb0a2e3267944d2f75e1559985db7354c6e605f18dc8470423fca30b7331d9b33c4a4326783d1caae1b4f07060eff978e4746bf0c7e30cd61040bd5ec2746b29863eb7f103ebda614c4291a805b6a4c8214230564a0557bc7102e0bd3ed23719252f7435d64d210ee2aafc585be903fa41e1968c50fd5d5367926df7a05e3a42cf07e656ff92de73b036cf8b19898c0cb34557c0c12c2d8b84e91181af467bc75a9d1,7cdc1782b39fc0eeb1f874d97c88051cf10508e0875fa173ac41cc8e 0d8d09aed19f1013969ce5e7eb92f83a209ae76be31c754844ea9116ceb39a22ebb6003017bbcf26555fa6624185187db8f0cb3564b8b1c06bf685d47f3286eda20b83358f599d2044bbf0583fab8d78f854fe0a596183230c5ef8e54426750eaf2cc4e29d3bdd037e734d863c2bd9789b4c243096138f7672c232314effdfc6513427e2da76916b5248933be312eb5dde4cf70804fb258ac5fb82d58d08177ac6f4756017fff5,ee5d508a4e75900193e99a04b8d838a18dedfcc431e7af3182a47dd6 c3236b73deb7662bf3f3daa58f137b358ba610560ef7455785a9befdb035a066e90704f929bd9689cef0ce3bda5acf4480bceb8d09d10b098ad8500d9b6071dfc3a14af6c77511d81e3aa8844986c3bea6f469f9e02194c92868cd5f51646256798ff0424954c1434bdfed9facb390b07d342e992936e0f88bfd0e884a0ddb679d0547ccdec6384285a45429d115ac7d235a717242021d1dc35641f5f0a48e8445dba58e6cb2c8ea,5942ba8b58a355f2aef07e29f8f9971301e877fa32d7025df552b1eb b39feb8283eadc63e8184b51df5ae3fd41aac8a963bb0be1cd08aa5867d8d910c669221e73243360646f6553d1ca05a84e8dc0de05b6419ec349ca994480193d01c92525f3fb3dcefb08afc6d26947bdbbfd85193f53b50609c6140905c53a6686b58e53a319a57b962331ede98149af3de3118a819da4d76706a0424b4e1d2910b0ed26af61d150ebcb46595d4266a0bd7f651ba47d0c7f179ca28545007d92e8419d48fdfbd744ce,29240a9e973888b98a3a836933855d41d8abb6c3806a626c3df18f6c a983d54f503803e8c7999f4edbbe82e9084f422143a932ddddc47a17b0b7564a7f37a99d0786e99476428d29e29d3c197a72bfab1342c12a0fc4787fd7017d7a6174049ea43b5779169ef7472bdbbd941dcb82fc73aac45a8a94c9f2bd3477f61fd3b796f02a1b8264a214c6fea74b7051b226c722099ec7883a462b83b6afdd4009248b8a237f605fe5a08fe7d8b45321421ebba67bd70a0b00ddbf94baab7f359d5d1eea105f28dcfb,9af178b1dd3cefc96227a289175bb61d9f6b0b352d7804f5e07ea45d e4d1c1897a0a866ce564635b74222f9696bf2c7f640dd78d7e2aca66e1b61c642bb03ea7536aae597811e9bf4a7b453ede31f97b46a5f0ef51a071a2b3918df16b152519ae3776f9f1edab4c2a377c3292e96408359d3613844d5eb393000283d5ad3401a318b12fd1474b8612f2bb50fb6a8b9e023a54d7dde28c43d6d8854c8d9d1155935c199811dbfc87e9e0072e90eb88681cc7529714f8fb8a2c9d88567adfb974ee205a9bf7b848,f543b4d423eaac86338bb6d8c6181ad6dc0a25733953ced7eb8377f3 b10c59723e3dcadd6d75df87d0a1580e73133a9b7d00cb95ec19f5547027323be75158b11f80b6e142c6a78531886d9047b08e551e75e6261e79785366d7024bd7cd9cf322d9be7d57fb661069f2481c7bb759cd71b4b36ca2bc2df6d3a328faebdb995a9794a8d72155ed551a1f87c80bf6059b43fc764900b18a1c2441f7487743cf84e565f61f8dd2ece6b6ccc9444049197aaaf53e926fbee3bfca8be588ec77f29d211be89de18b15f6,77b4079eee9d9e3fda051ee0ca430b4df011d056612c1af446a187c2 db11f609baba7b0ca634926b1dd539c8cbada24967d7add4d9876f77c2d80c0f4dcefbd7121548373582705cca2495bd2a43716fe64ed26d059cfb566b3364bd49ee0717bdd9810dd14d8fad80dbbdc4cafb37cc60fb0fe2a80fb4541b8ca9d59dce457738a9d3d8f641af8c3fd6da162dc16fc01aac527a4a0255b4d231c0be50f44f0db0b713af03d968fe7f0f61ed0824c55c4b5265548febd6aad5c5eedf63efe793489c39b8fd29d104ce,987d30120c9aa4964650a6a730e99c86f7fbddb4ea8d6b4815ee4ebf bebd4f1a84fc8b15e4452a54bd02d69e304b7f32616aadd90537937106ae4e28de9d8aab02d19bc3e2fde1d651559e296453e4dba94370a14dbbb2d1d4e2022302ee90e208321efcd8528ad89e46dc839ea9df618ea8394a6bff308e7726bae0c19bcd4be52da6258e2ef4e96aa21244429f49ef5cb486d7ff35cac1bacb7e95711944bccb2ab34700d42d1eb38b5d536b947348a458ede3dc6bd6ec547b1b0cae5b257be36a7124e1060c170ffa,46193359397bc3eacd69bff410203583382de93ecc4d80dcfb4fc51d 5aca56a03a13784bdc3289d9364f79e2a85c12276b49b92db0adaa4f206d5028f213f678c3510e111f9dc4c1c1f8b6acb17a6413aa227607c515c62a733817ba5e762cc6748e7e0d6872c984d723c9bb3b117eb8963185300a80bfa65cde495d70a46c44858605fccbed086c2b45cef963d33294dbe9706b13af22f1b7c4cd5a001cfec251fba18e722c6e1c4b1166918b4f6f48a98b64b3c07fc86a6b17a6d0480ab79d4e6415b520f1c484d675b1,0bc29107c7e25d44f8ce83a415b1de5df38a6719769606762b7192c2 a5aad0e4646a32c85cfcac73f02fc5300f1982fabb2f2179e28303e447854094cdfc854310e5c0f60993ceff54d84d6b46323d930adb07c17599b35b505f09e784bca5985e0172257797fb53649e2e9723efd16865c31b5c3d5113b58bb0bfc8920fabdda086d7537e66d709d050bd14d0c960873f156fad5b3d3840cdfcdc9be6af519db262a27f40896ab25cc39f96984d650611c0d5a3080d5b3a1bf186abd42956588b3b58cd948970d298776060,b485644c32283b280179f7c9714350f0b3acfd7c45a247bf3b6cdb07 06cbbe67e94a978203ead6c057a1a5b098478b4b4cbef5a97e93c8e42f5572713575fc2a884531d7622f8f879387a859a80f10ef02708cd8f7413ab385afc357678b9578c0ebf641ef076a1a30f1f75379e9dcb2a885bdd295905ee80c0168a62a9597d10cf12dd2d8cee46645c7e5a141f6e0e23aa482abe5661c16e69ef1e28371e2e236c359ba4e92c25626a7b7ff13f6ea4ae906e1cfe163e91719b1f750a96cbde5fbc953d9e576cd216afc90323a,f384542499efd23381debcd9124c539c40bfa70e517280f56a0920e1 f1c528cf7739874707d4d8ad5b98f7c77169de0b57188df233b2dc8a5b31eda5db4291dd9f68e6bad37b8d7f6c9c0044b3bf74bbc3d7d1798e138709b0d75e7c593d3cccdc1b20c7174b4e692add820ace262d45ccfae2077e878796347168060a162ecca8c38c1a88350bd63bb539134f700fd4addd5959e255337daa06bc86358fabcbefdfb5bc889783d843c08aadc6c4f6c36f65f156e851c9a0f917e4a367b5ad93d874812a1de6a7b93cd53ad97232,d12e3884bc8cf9175d1778e8a3aaa119e4a897738f8d81b1278bc448 9d9f3a7ecd51b41f6572fd0d0881e30390dfb780991dae7db3b47619134718e6f987810e542619dfaa7b505c76b7350c6432d8bf1cfebdf1069b90a35f0d04cbdf130b0dfc7875f4a4e62cdb8e525aadd7ce842520a482ac18f09442d78305fe85a74e39e760a4837482ed2f437dd13b2ec1042afcf9decdc3e877e50ff4106ad10a525230d11920324a81094da31deab6476aa42f20c84843cfc1c58545ee80352bdd3740dd6a16792ae2d86f11641bb717c2,d8a348264d48045d4482f3fe002c1a1f36d4df0d5e47fac5125c7947 5179888724819fbad3afa927d3577796660e6a81c52d98e9303261d5a4a83232f6f758934d50aa83ff9e20a5926dfebaac49529d006eb923c5ae5048ed544ec471ed7191edf46363383824f915769b3e688094c682b02151e5ee01e510b431c8865aff8b6b6f2f59cb6d129da79e97c6d2b8fa6c6da3f603199d2d1bcab547682a81cd6cf65f6551121391d78bcc23b5bd0e922ec6d8bf97c952e84dd28aef909aba31edb903b28fbfc33b7703cd996215a11238,6865464c6a230b4bf64ba33bf97459d1d22dafb19e08f4b7dace02ff 576ef3520d30b7a4899b8c0d5e359e45c5189add100e43be429a02fb3de5ff4f8fd0e79d9663acca72cd29c94582b19292a557c5b1315297d168fbb54e9e2ecd13809c2b5fce998edc6570545e1499dbe7fb74d47cd7f35823b212b05bf3f5a79caa34224fdd670d335fcb106f5d92c3946f44d3afcbae2e41ac554d8e6759f332b76be89a0324aa12c5482d1ea3ee89ded4936f3e3c080436f539fa137e74c6d3389bdf5a45074c47bc7b20b0948407a66d855e2f,19d33cd354a13ab2a44044154bd865f117ef8a887fbd0570a8a4ca80 0df2152fa4f4357c8741529dd77e783925d3d76e95bafa2b542a2c33f3d1d117d159cf473f82310356fee4c90a9e505e70f8f24859656368ba09381fa245eb6c3d763f3093f0c89b972e66b53d59406d9f01aea07f8b3b615cac4ee4d05f542e7d0dab45d67ccccd3a606ccbeb31ea1fa7005ba07176e60dab7d78f6810ef086f42f08e595f0ec217372b98970cc6321576d92ce38f7c397a403bada1548d205c343ac09deca86325373c3b76d9f32028fea8eb32515,e438ae4153463b333ae4fe57bf131505c8c04a534a39a20574155e49 3e15350d87d6ebb5c8ad99d42515cfe17980933c7a8f6b8bbbf0a63728cefaad2052623c0bd5931839112a48633fb3c2004e0749c87a41b26a8b48945539d1ff41a4b269462fd199bfecd45374756f55a9116e92093ac99451aefb2af9fd32d6d7f5fbc7f7a540d5097c096ebc3b3a721541de073a1cc02f7fb0fb1b9327fb0b1218ca49c9487ab5396622a13ae546c97abdef6b56380dda7012a8384091b6656d0ab272d363cea78163ff765cdd13ab1738b940d16cae,454796c7219c6f7e88508dfc13668b81748211bd016d84b59293b445 c38d6b0b757cb552be40940ece0009ef3b0b59307c1451686f1a22702922800d58bce7a636c1727ee547c01b214779e898fc0e560f8ae7f61bef4d75eaa696b921fd6b735d171535e9edd267c192b99880c87997711002009095d8a7a437e258104a41a505e5ef71e5613ddd2008195f0c574e6ba3fe40099cfa116e5f1a2fa8a6da04badcb4e2d5d0de31fdc4800891c45781a0aac7c907b56d631fca5ce8b2cde620d11d1777ed9fa603541de794ddc5758fcd5fad78c0,ce158aed6ed3c9d4432e2422af8d255ab1f3898f6f5b5c5a1478552c 8d2de3f0b37a6385c90739805b170057f091cd0c7a0bc951540f26a5a75b3e694631bb64c7635eed316f51318e9d8de13c70a2aba04a14836855f35e480528b776d0a1e8a23b547c8b8d6a0d09b241d3be9377160cca4e6793d00a515dc2992cb7fc741daca171431da99cce6f7789f129e2ac5cf65b40d703035cd2185bb936c82002daf8cbc27a7a9e554b06196630446a6f0a14ba155ed26d95bd627b7205c072d02b60db0fd7e49ea058c2e0ba202daff0de91e845cf79,a0a21d95e640f13b25652484e244be1b373e9b0609b685efce48107a c464bbdad275c50dcd983b65ad1019b9ff85a1e71c807f3204bb2c921dc31fbcd8c5fc45868ae9ef85b6c9b83bba2a5a822201ed68586ec5ec27fb2857a5d1a2d09d09115f22dcc39fe61f5e1ba0ff6e8b4acb4c6da748be7f3f0839739394ff7fa8e39f7f7e84a33c3866875c01bcb1263c9405d91908e9e0b50e7459fabb63d8c6bbb73d8e3483c099b55bc30ff092ff68b6adedfd477d63570c9f5515847f36e24ba0b705557130cec57ebad1d0b31a378e91894ee26e3a04,ca8cb1359f0b05e2ff9414cce0de6d2cb4d05b08354c2119a87342ca 8b8d68bb8a75732fe272815a68a1c9c5aa31b41dedc8493e76525d1d013d33cebd9e21a5bb95db2616976a8c07fcf411f5f6bc6f7e0b57aca78cc2790a6f9b898858ac9c79b165ff24e66677531e39f572be5d81eb3264524181115f32780257bfb9aeec6af12af28e587cac068a1a2953b59ad680f4c245b2e3ec36f59940d37e1d3db38e13edb29b5c0f404f6ff87f80fc8be7a225ff22fbb9c8b6b1d7330c57840d24bc75b06b80d30dad6806544d510af6c4785e823ac3e0b8,0dddd152cf063f0f505b518eb8db755704f45c9735780ec3a898a923 6b018710446f368e7421f1bc0ccf562d9c1843846bc8d98d1c9bf7d9d6fcb48bfc3bf83b36d44c4fa93430af75cd190bde36a7f92f867f58a803900df8018150384d85d82132f123006ac2aeba58e02a037fe6afbd65eca7c44977dd3dc74f48b6e7a1bfd5cc4dcf24e4d52e92bd4455848e4928b0eac8b7476fe3cc03e862aa4dff4470dbfed6de48e410f25096487ecfc32a27277f3f5023b2725ade461b1355889554a8836c9cf53bd767f5737d55184eea1ab3f53edd0976c485,57397bb1f84711641e94f413f5d73556b96ba5cfe15f709528626d07 c9534a24714bd4be37c88a3da1082eda7cabd154c309d7bd670dccd95aa535594463058a29f79031d6ecaa9f675d1211e9359be82669a79c855ea8d89dd38c2c761ddd0ec0ce9e97597432e9a1beae062cdd71edfdfd464119be9e69d18a7a7fd7ce0e2106f0c8b0abf4715e2ca48ef9f454dc203c96656653b727083513f8efb86e49c513bb758b3b052fe21f1c05bb33c37129d6cc81f1aef6adc45b0e8827a830fe545cf57d0955802c117d23ccb55ea28f95c0d8c2f9c5a242b33f,68f6ac4289fd5214263130830fda4da601b88b1f8533eac07a0338d9 07906c87297b867abf4576e9f3cc7f82f22b154afcbf293b9319f1b0584da6a40c27b32e0b1b7f412c4f1b82480e70a9235b12ec27090a5a33175a2bb28d8adc475cefe33f7803f8ce27967217381f02e67a3b4f84a71f1c5228e0c2ad971373f6f672624fcea8d1a9f85170fad30fa0bbd25035c3b41a6175d467998bd1215f6f3866f53847f9cf68ef3e2fbb54bc994de2302b829c5eea68ec441fcbafd7d16ae4fe9fff98bf00e5bc2ad54dd91ff9fda4dd77b6c754a91955d1fbaad0,f145c45212392894e7f1c4e52728470f8a2d961514869990efbe8232 588e94b9054abc2189df69b8ba34341b77cdd528e7860e5defcaa79b0c9a452ad4b82aa306be84536eb7cedcbe058d7b84a6aef826b028b8a0271b69ac3605a9635ea9f5ea0aa700f3eb7835bc54611b922964300c953efe7491e3677c2cebe0822e956cd16433b02c68c4a23252c3f9e151a416b4963257b783e038f6b4d5c9f110f871652c7a649a7bcedcbccc6f2d0725bb903cc196ba76c76aa9f10a190b1d1168993baa9ffc96a1655216773458bec72b0e39c9f2c121378feab4e76a,38ce7100e92ee4b65cc831915a06cfc2101990cb68e1004f7e9017d4 08959a7e4baae874928813364071194e2939772f20db7c3157078987c557c2a6d5abe68d520eef3dc491692e1e21bcd880adebf63bb4213b50897fa005256ed41b5690f78f52855c8d9168a4b666fce2da2b456d7a7e7c17ab5f2fb1ee90b79e698712e963715983fd07641ae4b4e9dc73203fac1ae11fa1f8c7941fcc82eab247addb56e2638447e9d609e610b60ce086656aaebf1da3c8a231d7d94e2fd0afe46b391ff14a72eaeb3f44ad4df85866def43d4781a0b3578bc996c87970b132,bd63ca84dac8bc586d0f0be352dbbba1f4cb430deaa8119b8da13c06 cb2a234f45e2ecd5863895a451d389a369aab99cfef0d5c9ffca1e6e63f763b5c14fb9b478313c8e8c0efeb3ac9500cf5fd93791b789e67eac12fd038e2547cc8e0fc9db591f33a1e4907c64a922dda23ec9827310b306098554a4a78f050262db5b545b159e1ff1dca6eb734b872343b842c57eafcfda8405eedbb48ef32e99696d135979235c3a05364e371c2d76f1902f1d83146df9495c0a6c57d7bf9ee77e80f9787aee27be1fe126cdc9ef893a4a7dcbbc367e40fe4e1ee90b42ea25af01,7ee4eaea6127c68efce66991b8f0851fe072df3b1e0b5d07e3a4be06 d16beadf02ab1d4dc6f88b8c4554c51e866df830b89c06e786a5f8757e8909310af51c840efe8d20b35331f4355d80f73295974653ddd620cdde4730fb6c8d0d2dcb2b45d92d4fbdb567c0a3e86bd1a8a795af26fbf29fc6c65941cddb090ff7cd230ac5268ab4606fccba9eded0a2b5d014ee0c34f0b2881ac036e24e151be89eeb6cd9a7a790afccff234d7cb11b99ebf58cd0c589f20bdac4f9f0e28f75e3e04e5b3debce607a496d848d67fa7b49132c71b878fd5557e082a18eca1fbda94d4b,7f3ee578b0410687eaf536f9ec7d654b75f504c104b78793c4cf90d5 8f65f6bc59a85705016e2bae7fe57980de3127e5ab275f573d334f73f8603106ec3553016608ef2dd6e69b24be0b7113bf6a760ba6e9ce1c48f9e186012cf96a1d4849d75df5bb8315387fd78e9e153e76f8ba7ec6c8849810f59fb4bb9b004318210b37f1299526866f44059e017e22e96cbe418699d014c6ea01c9f0038b10299884dbec3199bb05adc94e955a1533219c1115fed0e5f21228b071f40dd57c4240d98d37b73e412fe0fa4703120d7c0c67972ed233e5deb300a22605472fa3a3ba86,c9c26396e560cd1e6824d9e56e179fcc8aac4c0d932f7632ba594d4c 84891e52e0d451813210c3fd635b39a03a6b7a7317b221a7abc270dfa946c42669aacbbbdf801e1584f330e28c729847ea14152bd637b3d0f2b38b4bd5bf9c791c58806281103a3eabbaede5e711e539e6a8b2cf297cf351c078b4fa8f7f35cf61bebf8814bf248a01d41e86c5715ea40c63f7375379a7eb1d78f27622fb468ab784aaaba4e534a6dfd1df6fa15511341e725ed2e87f98737ccb7b6a6dfae416477472b046bf1811187d151bfa9f7b2bf9acdb23a3be507cdf14cfdf517d2cb5fb9e4ab6,ef30652e3c6ea4ec214472bf96e5f30dca1d31a78eb422734615eaf1 fdd7a9433a3b4afabd7a3a5e3457e56debf78e84b7a0b0ca0e8c6d53bd0c2dae31b2700c6128334f43981be3b213b1d7a118d59c7e6b6493a86f866a1635c12859cfb9ad17460a77b4522a5c1883c3d6acc86e6162667ec414e9a104aa892053a2b1d72165a855bacd8faf8034a5dd9b716f47a0818c09bb6baf22aa503c06b4ca261f557761989d2afbd88b6a678ad128af68672107d0f1fc73c5ca740459297b3292b281e93bceb761bde7221c3a55708e5ec84472cddcaa84ecf23723cc0991355c6280,5a964bf38eb347684220a3e83eb1efcb641c8f911cb068a774b25b8c 70a40bfbef92277a1aad72f6b79d0177197c4ebd432668cfec05d099accb651062b5dff156c0b27336687a94b26679cfdd9daf7ad204338dd9c4d14114033a5c225bd11f217b5f4732da167ee3f939262d4043fc9cba92303b7b5e96aea12adda64859df4b86e9ee0b58e39091e6b188b408ac94e1294a8911245ee361e60e601eff58d1d37639f3753bec80ebb4efde25817436076623fc65415fe51d1b0280366d12c554d86743f3c3b6572e400361a60726131441ba493a83fbe9afda90f7af1ae717238d,07413665edcb8a35021874984910b498cf74823050640243ae7c84cd 74356e449f4bf8644f77b14f4d67cb6bd9c1f5ae357621d5b8147e562b65c66585caf2e491b48529a01a34d226d436959153815380d5689e30b35357cdac6e08d3f2b0e88e200600d62bd9f5eaf488df86a4470ea227006182e44809009868c4c280c43d7d64a5268fa719074960087b3a6abc837882f882c837834535929389a12b2c78187e2ea07ef8b8eef27dc85002c3ae35f1a50bee6a1c48ba7e175f3316670b27983472aa6a61eed0a683a39ee323080620ea44a9f74411ae5ce99030528f9ab49c79f2,fcc9ead160832f5f0fafed6381afd57fe1335fbfb05b7fb1f0075d37 8c3798e51bc68482d7337d3abb75dc9ffe860714a9ad73551e120059860dde24ab87327222b64cf774415a70f724cdf270de3fe47dda07b61c9ef2a3551f45a5584860248fabde676e1cd75f6355aa3eaeabe3b51dc813d9fb2eaa4f0f1d9f834d7cad9c7c695ae84b329385bc0bef895b9f1edf44a03d4b410cc23a79a6b62e4f346a5e8dd851c2857995ddbf5b2d717aeb847310e1f6a46ac3d26a7f9b44985af656d2b7c9406e8a9e8f47dcb4ef6b83caacf9aefb6118bfcff7e44bef6937ebddc89186839b77,ec5c6db60b0834fb2e0e7106aeeafb9e614be093c847018214d8a5db fa56bf730c4f8395875189c10c4fb251605757a8fecc31f9737e3c2503b02608e6731e85d7a38393c67de516b85304824bfb135e33bf22b3a23b913bf6acd2b7ab85198b8187b2bcd454d5e3318cacb32fd6261c31ae7f6c54ef6a7a2a4c9f3ecb81ce3555d4f0ad466dd4c108a90399d70041997c3b25345a9653f3c9a6711ab1b91d6a9d2216442da2c973cbd685ee7643bfd77327a2f7ae9cb283620a08716dfb462e5c1d65432ca9d56a90e811443cd1ecb8f0de179c9cb48ba4f6fec360c66f252f6e64edc96b,0d5f6de16b7cbba49c28654f2ae98163257e7b6b500a3801eef0733f b6134f9c3e91dd8000740d009dd806240811d51ab1546a974bcb18d344642baa5cd5903af84d58ec5ba17301d5ec0f10ccd0509cbb3fd3fff9172d193af0f782252fd1338c7244d40e0e42362275b22d01c4c3389f19dd69bdf958ebe28e31a4ffe2b5f18a87831cfb7095f58a87c9fa21db72ba269379b2dc2384b3da953c7925761fed324620acea435e52b424a7723f6a2357374157a34cd8252351c25a1b232826cefe1bd3e70ffc15a31e7c0598219d7f00436294d11891b82497bc78aa5363892a2495df8c1eef,7b7e1fc4d3833ed87fd166f909f5c2566dc0e95b17ac834f1e9e3dad c941cdb9c28ab0a791f2e5c8e8bb52850626aa89205bec3a7e22682313d198b1fa33fc7295381354858758ae6c8ec6fac3245c6e454d16fa2f51c4166fab51df272858f2d603770c40987f64442d487af49cd5c3991ce858ea2a60dab6a65a34414965933973ac2457089e359160b7cdedc42f29e10a91921785f6b7224ee0b349393cdcff6151b50b377d609559923d0984cda6000829b916ab6896693ef6a2199b3c22f7dc5500a15b8258420e314c222bc000bc4e5413e6dd82c993f8330f5c6d1be4bc79f08a1a0a46,c6ac9d5464855e5c2f83f2a56f9a992137da47ec05c541295f8c43e7 4499efffac4bcea52747efd1e4f20b73e48758be915c88a1ffe5299b0b005837a46b2f20a9cb3c6e64a9e3c564a27c0f1c6ad1960373036ec5bfe1a8fc6a435c2185ed0f114c50e8b3e4c7ed96b06a036819c9463e864a58d6286f785e32a804443a56af0b4df6abc57ed5c2b185ddee8489ea080deeee66aa33c2e6dab36251c402682b6824821f998c32163164298e1fafd31babbcffb594c91888c6219079d907fdb438ed89529d6d96212fd55abe20399dbefd342248507436931cdead496eb6e4a80358acc78647d043,4ee2f93c18974d978dd3a1cbf8b1dac473807067b8807d026182b901 eecbb8fdfa4da62170fd06727f697d81f83f601ff61e478105d3cb7502f2c89bf3e8f56edd469d049807a38882a7eefbc85fc9a950952e9fa84b8afebd3ce782d4da598002827b1eb98882ea1f0a8f7aa9ce013a6e9bc462fb66c8d4a18da21401e1b93356eb12f3725b6db1684f2300a98b9a119e5d27ff704affb618e12708e77e6e5f34139a5a41131fd1d6336c272a8fc37080f041c71341bee6ab550cb4a20a6ddb6a8e0299f2b14bc730c54b8b1c1c487b494bdccfd3a53535ab2f231590bf2c4062fd2ad58f906a2d0d,d64aee17ed8e2b85e6b097db49554d356f032a34a15b7e844ec8d889 e64f3e4ace5c8418d65fec2bc5d2a303dd458034736e3b0df719098be7a206deaf52d6ba82316caf330ef852375188cde2b39cc94aa449578a7e2a8e3f5a9d68e816b8d16889fbc0ebf0939d04f63033ae9ae2bdab73b88c26d6bd25ee460ee1ef58fb0afa92cc539f8c76d3d097e7a6a63ebb9b5887edf3cf076028c5bbd5b9db3211371ad3fe121d4e9bf44229f4e1ecf5a0f9f0eba4d5ceb72878ab22c3f0eb5a625323ac66f7061f4a81fac834471e0c59553f108475fe290d43e6a055ae3ee46fb67422f814a68c4be3e8c9,1bddc92be89a672c1bd956b450b9d7b47b4bb0bc58ac51f15f7e054d d2cb2d733033f9e91395312808383cc4f0ca974e87ec68400d52e96b3fa6984ac58d9ad0938dde5a973008d818c49607d9de2284e7618f1b8aed8372fbd52ed54557af4220fac09dfa8443011699b97d743f8f2b1aef3537ebb45dcc9e13dfb438428ee190a4efdb3caeb7f3933117bf63abdc7e57beb4171c7e1ad260ab0587806c4d137b6316b50abc9cce0dff3acada47bbb86be777e617bbe578ff4519844db360e0a96c6701290e76bb95d26f0f804c8a4f2717eac4e7de9f2cff3bbc55a17e776c0d02856032a6cd10ad2838,0c8ac240170c6546debf4bfb5b38f8f30ea5dc6ef86c166e8e136d6b f2998955613dd414cc111df5ce30a995bb792e260b0e37a5b1d942fe90171a4ac2f66d4928d7ad377f4d0554cbf4c523d21f6e5f379d6f4b028cdcb9b1758d3b39663242ff3cb6ede6a36a6f05db3bc41e0d861b384b6dec58bb096d0a422fd542df175e1be1571fb52ae66f2d86a2f6824a8cfaacbac4a7492ad0433eeb15454af8f312b3b2a577750e3efbd370e8a8cac1582581971fba3ba4bd0d76e718dacf8433d33a59d287f8cc92234e7a271041b526e389efb0e40b6a18b3aaf658e82ed1c78631fd23b4c3eb27c3faec8685,2fd9fdfd244b0a7342f886b87b3dddce54c8870fb26a71a8f6520231 447797e2899b72a356ba55bf4df3acca6cdb1041eb477bd1834a9f9acbc340a294d729f2f97df3a610be0ff15edb9c6d5db41644b9874360140fc64f52aa03f0286c8a640670067a84e017926a70438db1bb361defee7317021425f8821def26d1efd77fc853b818545d055adc9284796e583c76e6fe74c9ac2587aa46aa8f8804f2feb5836cc4b3ababab8429a5783e17d5999f32242eb59ef30cd7adabc16d72dbdb097623047c98989f88d14eaf02a7212be16ec2d07981aaa99949ddf89ecd90333a77bc4e1988a82abf7c7caf3291,1b6be19d72199bf75fd4075e54975afa0433b9bf515bd300ce543d41 9f2c18ade9b380c784e170fb763e9aa205f64303067eb1bcea93df5dac4bf5a2e00b78195f808df24fc76e26cb7be31dc35f0844cded1567bba29858cffc97fb29010331b01d6a3fb3159cc1b973d255da9843e34a0a4061cabdb9ed37f241bfabb3c20d32743f4026b59a4ccc385a2301f83c0b0a190b0f2d01acb8f0d41111e10f2f4e149379275599a52dc089b35fdd5234b0cfb7b6d8aebd563ca1fa653c5c021dfd6f5920e6f18bfafdbecbf0ab00281333ed50b9a999549c1c8f8c63d7626c48322e9791d5ff72294049bde91e73f8,a46b89b64b0c7930dd45f5b2582fd79c7ad90a58c94c52f9bfa55cfc ae159f3fa33619002ae6bcce8cbbdd7d28e5ed9d61534595c4c9f43c402a9bb31f3b301cbfd4a43ce4c24cd5c9849cc6259eca90e2a79e01ffbac07ba0e147fa42676a1d668570e0396387b5bcd599e8e66aaed1b8a191c5a47547f61373021fa6deadcb55363d233c24440f2c73dbb519f7c9fa5a8962efd5f6252c0407f190dfefad707f3c7007d69ff36b8489a5b6b7c557e79dd4f50c06511f599f56c896b35c917b63ba35c6ff8092baf7d1658e77fc95d8a6a43eeb4c01f33f03877f92774be89c1114dd531c011e53a34dc248a2f0e6,21f0d8855387241d71a712e5f5682c156b9fd2aa6284294718853f0a 3b8e97c5ffc2d6a40fa7de7fcefc90f3b12c940e7ab415321e29ee692dfac799b009c99dcddb708fce5a178c5c35ee2b8617143edc4c40b4d313661f49abdd93cea79d117518805496fe6acf292c4c2a1f76b403a97d7c399daf85b46ad84e16246c67d6836757bde336c290d5d401e6c1386ab32797af6bb251e9b2d8fe754c47482b72e0b394eab76916126fd68ea7d65eb93d59f5b4c5ac40f7c3b37e7f3694f29424c24af8c8f0ef59cd9dbf1d28e0e10f799a6f78cad1d45b9db3d7dee4a7059abe99182714983b9c9d44d7f5643596d4f3,82ee85541d7a5b2a2b290003c3ee46574d58a7ddd54fbc210f8fea57 3434ec31b10fafdbfeec0dd6bd94e80f7ba9dca19ef075f7eb017512af66d6a4bcf7d16ba0819a1892a6372f9b35bcc7ca8155ee19e8428bc22d214856ed5fa9374c3c09bde169602cc219679f65a1566fc7316f4cc3b631a18fb4449fa6afa16a3db2bc4212eff539c67cf184680826535589c7111d73bffce431b4c40492e763d9279560aaa38eb2dc14a212d723f994a1fe656ff4dd14551ce4e7c621b2aa5604a10001b2878a897a28a08095c325e10a26d2fb1a75bfd64c250309bb55a44f23bbac0d5516a1c687d3b41ef2fbbf9cc56d4739,278dd8a3f3208191cff658b8d6db35e133a16e47aa375edb92c6a737 7c7953d81c8d208fd1c97681d48f49dd003456de60475b84070ef4847c333b74575b1fc8d2a186964485a3b8634feaa3595aaa1a2f4595a7d6b6153563dee31bbac443c8a33eed6d5d956a980a68366c2527b550ee950250dfb691eacbd5d56ae14b970668be174c89df2fea43ae52f13142639c884fd62a3683c0c3792f0f24ab1318bcb27e21f4737fab62c77ea38bc8fd1cf41f7dab64c13febe7152bf5bb7ab5a78f5346d43cc741cb6f72b7b8980f268b68bf62abdfb1577a52438fe14b591498cc95f071228460c7c5d5ceb4a7bde588e7f21c,b50527711c047def70b17cf20f970bed79c1c1b95275c2784c3903de 7a6a4f4fdc59a1d223381ae5af498d74b7252ecf59e389e49130c7eaee626e7bd9897effd92017f4ccde66b0440462cdedfd352d8153e6a4c8d7a0812f701cc737b5178c2556f07111200eb627dbc299caa792dfa58f35935299fa3a3519e9b03166dffa159103ffa35e8577f7c0a86c6b46fe13db8e2cdd9dcfba85bdddcce0a7a8e155f81f712d8e9fe646153d3d22c811bd39f830433b2213dd46301941b59293fd0a33e2b63adbd95239bc01315c46fdb678875b3c81e053a40f581cfbec24a1404b1671a1b88a6d06120229518fb13a74ca0ac5ae,f77cb5275212c92fa0dad921b65f50814822e3d6d584c89528990f02 d9faa14cebe9b7de551b6c0765409a33938562013b5e8e0e1e0a6418df7399d0a6a771fb81c3ca9bd3bb8e2951b0bc792525a294ebd1083688806fe5e7f1e17fd4e3a41d00c89e8fcf4a363caedb1acb558e3d562f1302b3d83bb886ed27b76033798131dab05b4217381eaaa7ba15ec820bb5c13b516dd640eaec5a27d05fdfca0f35b3a5312146806b4c0275bcd0aaa3b2017f346975db566f9b4d137f4ee10644c2a2da66deeca5342e236495c3c6280528bfd32e90af4cd9bb908f34012b52b4bc56d48cc8a6b59bab014988eabd12e1a0a1c2e170e7,76ca9e685dfadc67576d44e8c1a82e8cf7e92fb0a81fe49e21108e09 2d8427433d0c61f2d96cfe80cf1e932265a191365c3b61aaa3d6dcc039f6ba2ad52a6a8cc30fc10f705e6b7705105977fa496c1c708a277a124304f1fc40911e7441d1b5e77b951aad7b01fd5db1b377d165b05bbf898042e39660caf8b279fe5229d1a8db86c0999ed65e53d01ccbc4b43173ccf992b3a14586f6ba42f5fe30afa8ae40c5df29966f9346da5f8b35f16a1de3ab6de0f477d8d8660918060e88b9b9e9ca6a4207033b87a812dbf5544d39e4882010f82b6ce005f8e8ff6fe3c3806bc2b73c2b83afb704345629304f9f86358712e9fae3ca3e,abd313bc70b7fab0ebc167d739b54c97389e752ee1a313b12673f51c 5e19d97887fcaac0387e22c6f803c34a3dacd2604172433f7a8a7a526ca4a2a1271ecfc5d5d7be5ac0d85d921095350dfc65997d443c21c8094e0a3fefd2961bcb94aed03291ae310ccda75d8ace4bc7d89e7d3e5d1650bda5d668b8b50bfc8e608e184f4d3a9a2badc4ff5f07e0c0bc8a9f2e0b2a26fd6d8c550008faaab75fd71af2a424bec9a7cd9d83fad4c8e9319115656a8717d3b523a68ff8004258b9990ed362308461804ba3e3a7e92d8f2ffae5c2fba55ba5a3c27c0a2f71bd711d2fe1799c2adb31b200035481e9ee5c4adf2ab9c0fa50b23975cf,f79f6356328c580b811fea81c5ed90a303caf34a09beb143be450d42 c8e976ab4638909387ce3b8d4e510c3230e5690e02c45093b1d297910abc481e56eea0f296f98379dfc9080af69e73b2399d1c143bee80ae1328162ce1ba7f6a8374679b20aacd380eb4e61382c99998704d62701afa914f9a2705cdb065885f50d086c3eb5753700c387118bb142f3e6da1e988dfb31ac75d7368931e45d1391a274b22f83ceb072f9bcabc0b216685bfd789f5023971024b1878a205442522f9ea7d8797a4102a3df41703768251fd5e017c85d1200a464118aa35654e7ca39f3c375b8ef8cbe7534dbc64bc20befb417cf60ec92f63d9ee7397,299d62f8df5eade6871883b033b830a9952a74b12f3d55af798c6997 7145fa124b7429a1fc2231237a949ba7201bcc1822d3272de005b682398196c25f7e5cc2f289fbf44415f699cb7fe6757791b1443410234ae061edf623359e2b4e32c19bf88450432dd01caa5eb16a1dc378f391ca5e3c4e5f356728bddd4975db7c890da8bbc84cc73ff244394d0d48954978765e4a00b593f70f2ca082673a261ed88dbcef1127728d8cd89bc2c597e9102ced6010f65fa75a14ebe467fa57ce3bd4948b6867d74a9df5c0ec6f530cbf2ee61ce6f06bc8f2864dff5583776b31df8c7ffcb61428a56bf7bd37188b4a5123bbf338393af46eda85e6,82ba2b8d65e14fdac51f609f888881db8070a0b70d7892c009a1ad28 7fdfadcc9d29bad23ae038c6c65cda1aef757221b8872ed3d75ff8df7da0627d266e224e812c39f7983e4558bfd0a1f2bef3feb56ba09120ef762917b9c093867948547aee98600d10d87b20106878a8d22c64378bf634f7f75900c03986b077b0bf8b740a82447b61b99fee5376c5eb6680ec9e3088f0bdd0c56883413d60c1357d3c811950e5890e7600103c916341b80c743c6a852b7b4fb60c3ba21f3bc15b8382437a68454779cf3cd7f9f90ccc8ef28d0b706535b1e4108eb5627bb45d719cb046839aee311ca1abdc8319e050d67972cb35a6b1601b25dbf487,f8e5218db087d38b1c773247fc22704c1fbdb20b1500e26afa0b7572 988638219fd3095421f826f56e4f09e356296b628c3ce6930c9f2e758fd1a80c8273f2f61e4daae65c4f110d3e7ca0965ac7d24e34c0dc4ba2d6ff0bf5bbe93b3585f354d7543cb542a1aa54674d375077f2d360a8f4d42f3db131c3b7ab7306267ba107659864a90c8c909460a73621d1f5d9d3fd95beb19b23db1cb6c0d0fba91d36891529b8bd8263caa1bab56a4affaed44962df096d8d5b1eb845ef31188b3e10f1af811a13f156beb7a288aae593ebd1471b624aa1a7c6adf01e2200b3d72d88a3aed3100c88231e41efc376906f0b580dc895f080fda5741db1cb,fa602f09b28f8679771e9c3966032b80fa2f0f33e84f3ed69be7ae9c 5aab62756d307a669d146aba988d9074c5a159b3de85151a819b117ca1ff6597f6156e80fdd28c9c3176835164d37da7da11d94e09add770b68a6e081cd22ca0c004bfe7cd283bf43a588da91f509b27a6584c474a4a2f3ee0f1f56447379240a5ab1fb77fdca49b305f07ba86b62756fb9efb4fc225c86845f026ea542076b91a0bc2cdd136e122c659be259d98e5841df4c2f60330d4d8cdee7bf1a0a244524eecc68ff2aef5bf0069c9e87a11c6e519de1a4062a10c83837388f7ef58598a3846f49d499682b683c4a062b421594fafbc1383c943ba83bdef515efcf10d,c8d7568889dd6fcbc3b8874ed79051875d3ce29102df0c5dac8aeb8a 47b8216aa0fbb5d67966f2e82c17c07aa2d6327e96fcd83e3de7333689f3ee79994a1bf45082c4d725ed8d41205cb5bcdf5c341f77facb1da46a5b9b2cbc49eadf786bcd881f371a95fa17df73f606519aea0ff79d5a11427b98ee7f13a5c00637e2854134691059839121fea9abe2cd1bcbbbf27c74caf3678e05bfb1c949897ea01f56ffa4dafbe8644611685c617a3206c7a7036e4ac816799f693dafe7f19f303ce4eba09d21e03610201bfc665b72400a547a1e00fa9b7ad8d84f84b34aef118515e74def11b9188bd1e1f97d9a12c30132ec2806339bdadacda2fd8b78,d83b06d509d332164087c0c3fa50b2264cb27f66d746b0470166cbc2 8cff1f67fe53c098896d9136389bd8881816ccab34862bb67a656e3d98896f3ce6ffd4da73975809fcdf9666760d6e561c55238b205d8049c1cedeef374d1735daa533147bfa960b2cce4a4f254176bb4d1bd1e89654432b8dbe1a135c42115b394b024856a2a83dc85d6782be4b444239567ccec4b184d4548eae3ff6a192f343292ba2e32a0f267f31cc26719eb85245d415fb897ac2da433ee91a99424c9d7f1766a44171d1651001c38fc79294accc68ceb5665d36218454d3ba169ae058a831338c17743603f81ee173bfc0927464f9bd728dee94c6aeab7aae6ee3a627e8,386147b0cf2365346e9846d3f3a7dceeb6e3665ba7d1593c08b2b582 eacd07971cff9b9939903f8c1d8cbb5d4db1b548a85d04e037514a583604e787f32992bf2111b97ac5e8a938233552731321522ab5e8583561260b7d13ebeef785b23a41fd8576a6da764a8ed6d822d4957a545d5244756c18aa80e1aad4d1f9c20d259dee1711e2cc8fd013169fb7cc4ce38b362f8e0936ae9198b7e838dcea4f7a5b9429bb3f6bbcf2dc92565e3676c1c5e6eb3dd2a0f86aa23edd3d0891f197447692794b3dfa269611ad97f72b795602b4fdb198f3fd3eb41b415064256e345e8d8c51c555dc8a21904a9b0f1ad0effab7786aac2da3b196507e9f33ca356427,a69c0c18a712408d8fa2389acabc3bf6f6412f69783e9f37960d0b56 23ac4e9a42c6ef45c3336ce6dfc2ff7de8884cd23dc912fef0f7756c09d335c189f3ad3a23697abda851a81881a0c8ccafc980ab2c702564c2be15fe4c4b9f10dfb2248d0d0cb2e2887fd4598a1d4acda897944a2ffc580ff92719c95cf2aa42dc584674cb5a9bc5765b9d6ddf5789791d15f8dd925aa12bffafbce60827b490bb7df3dda6f2a143c8bf96abc903d83d59a791e2d62814a89b8080a28060568cf24a80ae61179fe84e0ffad00388178cb6a617d37efd54cc01970a4a41d1a8d3ddce46edbba4ab7c90ad565398d376f431189ce8c1c33e132feae6a8cd17a61c630012,0699fd35416d83791dc8e656f22718b09da9e3df6e7f37a250e22dcd 0172df732282c9d488669c358e3492260cbe91c95cfbc1e3fea6c4b0ec129b45f242ace09f152fc6234e1bee8aab8cd56e8b486e1dcba9c05407c2f95da8d8f1c0af78ee2ed82a3a79ec0cb0709396ee62aadb84f8a4ee8a7ccca3c1ee84e302a09ea802204afecf04097e67d0f8e8a9d2651126c0a598a37081e42d168b0ae8a71951c524259e4e2054e535b779679bdade566fe55700858618e626b4a0faf895bcce9011504a49e05fd56127eae3d1f8917afb548ecadabda1020111fec9314c413498a360b08640549a22cb23c731ace743252a8227a0d2689d4c6001606678dfb921,bf6a3598a15e28b776229f4d124d403fad9d0fbc2b7668c95d8b5046 3875b9240cf3e0a8b59c658540f26a701cf188496e2c2174788b126fd29402d6a75453ba0635284d08835f40051a2a9683dc92afb9383719191231170379ba6f4adc816fecbb0f9c446b785bf520796841e58878b73c58d3ebb097ce4761fdeabe15de2f319dfbaf1742cdeb389559c788131a6793e193856661376c81ce9568da19aa6925b47ffd77a43c7a0e758c37d69254909ff0fbd415ef8eb937bcd49f91468b49974c07dc819abd67395db0e05874ff83dddab895344abd0e7111b2df9e58d76d85ad98106b36295826be04d435615595605e4b4bb824b33c4afeb5e7bb0d19f909,56f8e9f69a399e528996c463d65f20db41406533c7df2ba1afa2494a 747cc1a59fefba94a9c75ba866c30dc5c1cb0c0f8e9361d98484956dd5d1a40f6184afbe3dac9f76028d1caeccfbf69199c6ce2b4c092a3f4d2a56fe5a33a00757f4d7dee5dfb0524311a97ae0668a47971b95766e2f6dd48c3f57841f91f04a00ad5ea70f2d479a2620dc5cd78eaab3a3b011719b7e78d19ddf70d9423798af77517ebc55392fcd01fc600d8d466b9e7a7a85bf33f9cc5419e9bd874ddfd60981150ddaf8d7febaa4374f0872a5628d318000311e2f5655365ad4d407c20e5c04df17a222e7deec79c5ab1116d8572f91cd06e1ccc7ced53736fc867fd49ecebe6bf8082e8a,9904d57dedb935427f235a0009612235f14e9426b218e028f87b3c0c 57af971fccaec97435dc2ec9ef0429bcedc6b647729ea168858a6e49ac1071e706f4a5a645ca14e8c7746d65511620682c906c8b86ec901f3dded4167b3f00b06cbfac6aee3728051b3e5ff10b4f9ed8bd0b8da94303c833755b3ca3aeddf0b54bc8d6632138b5d25bab03d17b3458a9d782108006f5bb7de75b5c0ba854b423d8bb801e701e99dc4feaad59bc1c7112453b04d33ea3635639fb802c73c2b71d58a56bbd671b18fe34ed2e3dca38827d63fdb1d4fb3285405004b2b3e26081a8ff08cd6d2b08f8e7b7e90a2ab1ed7a41b1d0128522c2f8bff56a7fe67969422ce839a9d4608f03,ff7013679ab2be65aedd09739f56f8dd0072738b86e71a2470476c8c 04e16dedc1227902baaf332d3d08923601bdd64f573faa1bb7201918cfe16b1e10151dae875da0c0d63c59c3dd050c4c6a874011b018421afc4623ab0381831b2da2a8ba42c96e4f70864ac44e106f94311051e74c77c1291bf5db9539e69567bf6a11cf6932bbbad33f8946bf5814c066d851633d1a513510039b349939bfd42b858c21827c8ff05f1d09b1b0765dc78a135b5ca4dfba0801bcaddfa175623c8b647eacfb4444b85a44f73890607d06d507a4f8393658788669f6ef4deb58d08c50ca0756d5e2f49d1a7ad73e0f0b3d3b5f090acf622b1878c59133e4a848e05153592ea81c6fbf,9dfb6a854a33914eae1596dcd2be363a96e7e088be520f60e5a65c7f 7c815c384eee0f288ece27cced52a01603127b079c007378bc5d1e6c5e9e6d1c735723acbbd5801ac49854b2b569d4472d33f40bbb8882956245c366dc3582d71696a97a4e19557e41e54dee482a14229005f93afd2c4a7d8614d10a97a9dfa07f7cd946fa45263063ddd29db8f9e34db60daa32684f0072ea2a9426ecebfa5239fb67f29c18cbaa2af6ed4bf4283936823ac1790164fec5457a9cba7c767ca59392d94cab7448f50eb34e9a93a80027471ce59736f099c886dea1ab4cba4d89f5fc7ae2f21ccd27f611eca4626b2d08dc22382e92c1efb2f6afdc8fdc3d2172604f5035c46b8197d3,c27e80c373b216703d3d9e67223cfc5497c3e74455d49b049ae3f5f4 e29d505158dbdd937d9e3d2145658ee6f5992a2fc790f4f608d9cdb44a091d5b94b88e81fac4fdf5c49442f13b911c55886469629551189eaff62488f1a479b7db11a1560e198ddccccf50159093425ff7f1cb8d1d1246d0978764087d6bac257026b090efae8cec5f22b6f21c59ace1ac7386f5b8837ca6a12b6fbf5534dd0560ef05ca78104d3b943ddb220feaec89aa5e692a00f822a2ab9a2fe60350d75e7be16ff2526dc643872502d01f42f188abed0a6e9a6f5fd0d1ce7d5755c9ffa66b0af0b20bd806f08e06156690d81ac811778ca3dac2c249b96002017fce93e507e3b953acf99964b847,3a189630f53c567b1c1825794d50def901a00e7f3728ecf2bbe00d90 d85588696f576e65eca0155f395f0cfacd83f36a99111ed5768df2d116d2121e32357ba4f54ede927f189f297d3a97fad4e9a0f5b41d8d89dd7fe20156799c2b7b6bf9c957ba0d6763f5c3bc5129747bbb53652b49290cff1c87e2cdf2c4b95d8aaee09bc8fbfa6883e62d237885810491bfc101f1d8c636e3d0ede838ad05c207a3df4fad76452979eb99f29afaecedd1c63b8d36cf378454a1bb67a741c77ac6b6b3f95f4f02b64dabc15438613ea49750df42ee90101f115aa9abb9ff64324dde9dabbb01054e1bd6b4bcdc7930a44c2300d87ca78c06924d0323ad7887e46c90e8c4d100acd9eed21e,2585bd8d9158d6952bee95b004f5fed70faf061b68ab2d6a40469be7 3a12f8508b40c32c74492b66323375dcfe49184c78f73179f3314b79e63376b8ac683f5a51f1534bd729b02b04d002f55cbd8e8fc9b5ec1ea6bbe6a0d0e7431518e6ba45d124035f9d3dce0a8bb7bf1430a9f657e0b4ea9f20eb20c786a58181a1e20a96f1628f8728a13bdf7a4b4b32fc8aa7054cc4881ae7fa19afa65c6c3ee1b3ade3192af42054a8a911b8ec1826865d46d93f1e7c5e2b7813c92a506e53886f3d4701bb93d2a681ad109c845904bb861af8af0646b6e399b38b614051d34f6842563a0f37ec00cb3d865fc5d746c4987de2a65071100883a2a9c7a2bfe1e2dd603d9ea24dc7c5fd06be,7e64f3c5895d0586cc5b543b27de1b66a935171e2e7f3ca48dd3718e 1861edce46fa5ad17e1ff1deae084dec580f97d0a67885dfe834b9dfac1ae076742ce9e267512ca51f6df5a455af0c5fd6abf94acea103a3370c354485a7846fb84f3ac7c2904b5b2fbf227002ce512133bb7e1c4e50057bfd1e44db33c7cdb969a99e284b184f50a14b068a1fc5009d9b298dbe92239572a7627aac02abe8f3e3b473417f36d4d2505d16b7577f4526c9d94a270a2dfe450d06da8f6fa956879a0a55cfe99e742ea555ea477ba3e9b44ccd508c375423611af92e55345dc215779b2d5119eba49c71d49b9fe3f1569fa24e5ca3e332d042422a8b8158d3ec66a80012976f31ffdf305f0c9c5e,0f837708e010375af87f75415ed69988fe60eb2f2669ad051fa99727 08d0ffde3a6e4ef65608ea672e4830c12943d7187ccff08f4941cfc13e545f3b9c7ad5eebbe2b01642b486caf855c2c73f58c1e4e3391da8e2d63d96e15fd84953ae5c231911b00ad6050cd7aafdaac9b0f663ae6aab45519d0f5391a541707d479034e73a6ad805ae3598096af078f1393301493d663dd71f83869ca27ba508b7e91e81e128c1716dc3acfe3084b2201e04cf8006617eecf1b640474a5d45cfde9f4d3ef92d6d055b909892194d8a8218db6d8203a84261d200d71473d7488f3427416b6896c137d455f231071cacbc86e0415ab88aec841d96b7b8af41e05bb461a40645bf176601f1e760de5f,c79de39778593810c03583d5962b36e04f343653074766d157a15993 d782abb72a5be3392757be02d3e45be6e2099d6f000d042c8a543f50ed6ebc055a7f133b0dd8e9bc348536edcaae2e12ec18e8837df7a1b3c87ec46d50c241dee820fd586197552dc20beea50f445a07a38f1768a39e2b2ff05dddedf751f1def612d2e4d810daa3a0cc904516f9a43af660315385178a529e51f8aae141808c8bc5d7b60cac26bb984ac1890d0436ef780426c547e94a7b08f01acbfc4a3825eae04f520a9016f2fb8bf5165ed12736fc71e36a49a73614739eaa3ec834069b1b40f1350c2b3ab885c02c640b9f7686ed5f99527e41cfcd796fe4c256c9173186c226169ff257954ebda81c0e5f99,95cc811cc56521a40e3ced8d9a230e2101e8061fb01e388b9964bf29 5fce8109a358570e40983e1184e541833bb9091e280f258cfb144387b05d190e431cb19baa67273ba0c58abe91308e1844dcd0b3678baa42f335f2fa05267a0240b3c718a5942b3b3e3bfa98a55c25a1466e8d7a603722cb2bbf03afa54cd769a99f310735ee5a05dae2c22d397bd95635f58c48a67f90e1b73aafcd3f82117f0166657838691005b18da6f341d6e90fc1cdb352b30fae45d348294e501b63252de14740f2b85ae5299ddec3172de8b6d0ba219a20a23bb5e10ff434d39db3f583305e9f5c039d98569e377b75a70ab837d1df269b8a4b566f40bb91b577455fd3c356c914fa06b9a7ce24c7317a172d,2ebe13f12ec43e3f6b0506d7ab216e1c311394f7c89d69a920cd00c0 6172f1971a6e1e4e6170afbad95d5fec99bf69b24b674bc17dd78011615e502de6f56b86b1a71d3f4348087218ac7b7d09302993be272e4a591968aef18a1262d665610d1070ee91cc8da36e1f841a69a7a682c580e836941d21d909a3afc1f0b963e1ca5ab193e124a1a53df1c587470e5881fb54dae1b0d840f0c8f9d1b04c645ba1041c7d8dbf22030a623aa15638b3d99a2c400ff76f3252079af88d2b37f35ee66c1ad7801a28d3d388ac450b97d5f0f79e4541755356b3b1a5696b023f39ab7ab5f28df4202936bc97393b93bc915cb159ea1bd7a0a414cb4b7a1ac3af68f50d79f0c9c7314e750f7d02faa58bfa,820101f5435d86e19bec58ed0e1c7e630fe82dd92d7704e414802a16 5668ecd99dfbe215c4118398ac9c9eaf1a1433fab4ccdd3968064752b625ea944731f75d48a27d047d67547f14dd0ffaa55fa5e29f7af0d161d85eafc4f2029b717c918eab9d304543290bdba7158b68020c0ba4e079bc95b5bc0fc044a992b94b4ccd3bd66d0eabb5dbbab904d62e00752c4e3b0091d773bcf4c14b4377da3efff824b1cb2fa01b32d1e46c909e626ed2dae920f4c7dbeb635bc754facbd8d49beba3f23c1c41ccbfcd0ee0c114e69737f5597c0bf1d859f0c767e18002ae8e39c26261ffde2920d3d0baf0e906138696cfe5b7e32b600f45df3aaa39932f3a7df95b60fa8712a2271fcaf3911ce7b511b1,b1cf54f51f81fdb5b649bb6115126149296278bff3d5395cf5f112d4 03d625488354df30e3f875a68edfcf340e8366a8e1ab67f9d5c5486a96829dfac0578289082b2a62117e1cf418b43b90e0adc881fc6ae8105c888e9ecd21aea1c9ae1a4038dfd17378fed71d02ae492087d7cdcd98f746855227967cb1ab4714261ee3bead3f4db118329d3ebef4bc48a875c19ba763966da0ebea800e01b2f50b00e9dd4caca6dcb314d00184ef71ea2391d760c950710db4a70f9212ffc54861f9dc752ce18867b8ad0c48df8466ef7231e7ac567f0eb55099e622ebb86cb237520190a61c66ad34f1f4e289cb3282ae3eaac6152ed24d2c92bae5a7658252a53c49b7b02dfe54fdb2e90074b6cf310ac661,b602722d1b9f31b9c5091e0ff720f1d1a8a51eb6f95ed3b412de063d 2edc282ffb90b97118dd03aaa03b145f363905e3cbd2d50ecd692b37bf000185c651d3e9726c690d3773ec1e48510e42b17742b0b0377e7de6b8f55e00a8a4db4740cee6db0830529dd19617501dc1e9359aa3bcf147e0a76b3ab70c4984c13e339e6806bb35e683af8527093670859f3d8a0fc7d493bcba6bb12b5f65e71e705ca5d6c948d66ed3d730b26db395b3447737c26fad089aa0ad0e306cb28bf0acf106f89af3745f0ec72d534968cca543cd2ca50c94b1456743254e358c1317c07a07bf2b0eca438a709367fafc89a57239028fc5fecfd53b8ef958ef10ee0608b7f5cb9923ad97058ec067700cc746c127a61ee3,1368454e849f2d2299077f40826b4072e6fee49b2062cb8e3b4523c9 90b28a6aa1fe533915bcb8e81ed6cacdc10962b7ff82474f845eeb86977600cf70b07ba8e3796141ee340e3fce842a38a50afbe90301a3bdcc591f2e7d9de53e495525560b908c892439990a2ca2679c5539ffdf636777ad9c1cdef809cda9e8dcdb451abb9e9c17efa4379abd24b182bd981cafc792640a183b61694301d04c5b3eaad694a6bd4cc06ef5da8fa23b4fa2a64559c5a68397930079d250c51bcf00e2b16a6c49171433b0aadfd80231276560b80458dd77089b7a1bbcc9e7e4b9f881eacd6c92c4318348a13f4914eb27115a1cfc5d16d7fd94954c3532efaca2cab025103b2d02c6fd71da3a77f417d7932685888a,5765b70574f93341c1cc4acb34f645b5d97b81d4ce8f38c3862f6c19 2969447d175490f2aa9bb055014dbef2e6854c95f8d60950bfe8c0be8de254c26b2d31b9e4de9c68c9adf49e4ee9b1c2850967f29f5d08738483b417bb96b2a56f0c8aca632b552059c59aac3f61f7b45c966b75f1d9931ff4e596406378cee91aaa726a3a84c33f37e9cdbe626b5745a0b06064a8a8d56e53aaf102d23dd9df0a3fdf7a638509a6761a33fa42fa8ddbd8e16159c93008b53765019c3f0e9f10b144ce2ac57f5d7297f9c9949e4ff68b70d339f87501ce8550b772f32c6da8ad2ce2100a895d8b08fa1eead7c376b407709703c510b50f87e73e43f8e7348f87c3832a547ef2bbe5799abedcf5e1f372ea809233f006,b8fb318245b4042222b4063a053f15da6b894f22736f3f9e26f72175 721645633a44a2c78b19024eaecf58575ab23c27190833c26875dc0f0d50b46aea9c343d82ea7d5b3e50ec700545c615daeaea64726a0f05607576dcd396d812b03fb6551c641087856d050b10e6a4d5577b82a98afb89cee8594c9dc19e79feff0382fcfd127f1b803a4b9946f4ac9a4378e1e6e041b1389a53e3450cd32d9d2941b0cbabdb50da8ea2513145164c3ab6bcbd251c448d2d4b087ac57a59c2285d564f16da4ed5e607ed979592146ffb0ef3f3db308fb342df5eb5924a48256fc763141a278814c82d6d6348577545870ae3a83c7230ac02a1540fe1798f7ef09e335a865a2ae0949b21e4f748fb8a51f44750e213a8fb,353622e92c7907f5563baf8f4e7af0c2f872f4fb583b01af9eb3d907 6b860d39725a14b498bb714574b4d37ca787404768f64c648b1751b353ac92bac2c3a28ea909fdf0423336401a02e63ec24325300d823b6864bb701f9d7c7a1f8ec9d0ae3584aa6dd62ea1997cd831b4babd9a4da50932d4efda745c61e4130890e156aee6113716daf95764222a91187db2effea49d5d0596102d619bd26a616bbfda8335505fbb0d90b4c180d1a2335b91538e1668f9f9642790b4e55f9cab0fe2bdd2935d001ee6419abab5457880d0dbff20ed8758f4c20fe759efb33141cf0e892587fe8187e5fbc57786b7e8b089612c936dfc03d27efbbe7c8673f1606bd51d5ff386f4a7ab68edf59f385eb1291f117bfe717399,87215af73d5cde98b355479afb82a511180b7dc3d5342c88e133aed8 6a01830af3889a25183244decb508bd01253d5b508ab490d3124afbf42626b2e70894e9b562b288d0a2450cfacf14a0ddae5c04716e5a0082c33981f6037d23d5e045ee1ef2283fb8b6378a914c5d9441627a722c282ff452e25a7ea608d69cee4393a0725d17963d0342684f255496d8a18c2961145315130549311fc07f0312fb78e6077334f87eaa873bee8aa95698996eb21375eb2b4ef53c14401207deb4568398e5dd9a7cf97e8c9663e23334b46912f8344c19efcf8c2ba6f04325f1a27e062b62a58d0766fc6db4d2c6a1928604b0175d872d16b7908ebc041761187cc785526c2a3873feac3a642bb39f5351550af9770c328af7b,25ae852dba36b8d58a94dd5cfd8345141ff57e7db7d7816c4f7252bb b3c5e74b69933c2533106c563b4ca20238f2b6e675e8681e34a389894785bdade59652d4a73d80a5c85bd454fd1e9ffdad1c3815f5038e9ef432aac5c3c4fe840cc370cf86580a6011778bbedaf511a51b56d1a2eb68394aa299e26da9ada6a2f39b9faff7fba457689b9c1a577b2a1e505fdf75c7a0a64b1df81b3a356001bf0df4e02a1fc59f651c9d585ec6224bb279c6beba2966e8882d68376081b987468e7aed1ef90ebd090ae825795cdca1b4f09a979c8dfc21a48d8a53cdbb26c4db547fc06efe2f9850edd2685a4661cb4911f165d4b63ef25b87d0a96d3dff6ab0758999aad214d07bd4f133a6734fde445fe474711b69a98f7e2b,ece0394418f066f55023797551e06f6a7d1645682aa4d9dd75af8e76 83af34279ccb5430febec07a81950d30f4b66f484826afee7456f0071a51e1bbc55570b5cc7ec6f9309c17bf5befdd7c6ba6e968cf218a2b34bd5cf927ab846e38a40bbd81759e9e33381016a755f699df35d660007b5eadf292feefb735207ebf70b5bd17834f7bfa0e16cb219ad4af524ab1ea37334aa66435e5d397fc0a065c411ebbce32c240b90476d307ce802ec82c1c49bc1bec48c0675ec2a6c6f3ed3e5b741d13437095707c565e10d8a20b8c20468ff9514fcf31b4249cd82dcee58c0a2af538b291a87e3390d737191a07484a5d3f3fb8c8f15ce056e5e5f8febe5e1fb59d6740980aa06ca8a0c20f5712b4cde5d032e92ab89f0ae1,84a4bd2e3fa26c4fb01fe81953398f5b4b5704944354b51b887fd990 a7ed84749ccc56bb1dfba57119d279d412b8a986886d810f067af349e8749e9ea746a60b03742636c464fc1ee233acc52c1983914692b64309edfdf29f1ab912ec3e8da074d3f1d231511f5756f0b6eead3e89a6a88fe330a10face267bffbfc3e3090c7fd9a850561f363ad75ea881e7244f80ff55802d5ef7a1a4e7b89fcfa80f16df54d1b056ee637e6964b9e0ffd15b6196bdd7db270c56b47251485348e49813b4eb9ed122a01b3ea45ad5e1a929df61d5c0f3e77e1fdc356b63883a60e9cbb9fc3e00c2f32dbd469659883f690c6772e335f617bc33f161d6f6984252ee12e62b6000ac5231e0c9bc65be223d8dfd94c5004a101af9fd6c0fb,170c413863d9f4e8c0b87a8532416b10a69c348d3a144658eaeef0ed a6fe30dcfcda1a329e82ab50e32b5f50eb25c873c5d2305860a835aecee6264aa36a47429922c4b8b3afd00da16035830edb897831c4e7b00f2c23fc0b15fdc30d85fb70c30c431c638e1a25b51caf1d7e8b050b7f89bfb30f59f0f20fecff3d639abc4255b3868fc45dd81e47eb12ab40f2aac735df5d1dc1ad997cefc4d836b854cee9ac02900036f3867fe0d84afff37bde3308c2206c62c4743375094108877c73b87b2546fe05ea137bedfc06a2796274099a0d554da8f7d7223a48cbf31b7decaa1ebc8b145763e3673168c1b1b715c1cd99ecd3ddb238b06049885ecad9347c2436dff32c771f34a38587a44a82c5d3d137a03caa27e66c8ff6,d8c257db76536f7ef1dcfb24976eb716d9491cd8651e0254e7c4a5bb 83167ff53704c3aa19e9fb3303539759c46dd4091a52ddae9ad86408b69335989e61414bc20ab4d01220e35241eff5c9522b079fba597674c8d716fe441e566110b6211531ceccf8fd06bc8e511d00785e57788ed9a1c5c73524f01830d2e1148c92d0edc97113e3b7b5cd3049627abdb8b39dd4d6890e0ee91993f92b03354a88f52251c546e64434d9c3d74544f23fb93e5a2d2f1fb15545b4e1367c97335b0291944c8b730ad3d4789273fa44fb98d78a36c3c3764abeeac7c569c1e43a352e5b770c3504f87090dee075a1c4c85c0c39cf421bdcc615f9eff6cb4fe6468004aece5f30e1ecc6db22ad9939bb2b0ccc96521dfbf4ae008b5b46bc006e,f81d8ee40869bb38a13a4f75588fa3308068dd1cdc27267d66fac198 3a3a819c48efde2ad914fbf00e18ab6bc4f14513ab27d0c178a188b61431e7f5623cb66b23346775d386b50e982c493adbbfc54b9a3cd383382336a1a0b2150a15358f336d03ae18f666c7573d55c4fd181c29e6ccfde63ea35f0adf5885cfc0a3d84a2b2e4dd24496db789e663170cef74798aa1bbcd4574ea0bba40489d764b2f83aadc66b148b4a0cd95246c127d5871c4f11418690a5ddf01246a0c80a43c70088b6183639dcfda4125bd113a8f49ee23ed306faac576c3fb0c1e256671d817fc2534a52f5b439f72e424de376f4c565cca82307dd9ef76da5b7c4eb7e085172e328807c02d011ffbf33785378d79dc266f6a5be6bb0e4a92eceebaeb1,94689ea9f347dda8dd798a858605868743c6bd03a6a65c6085d52bed # EOF pysha3-1.0.2/vectors/keccak_512.txt0000664000175000017500000030043412711153011017523 0ustar heimesheimes00000000000000# ShortMsgKAT_512.txt ,0eab42de4c3ceb9235fc91acffe746b29c29a8c366b7c60e4e67c466f36a4304c00fa9caf9d87976ba469bcbe06713b435f091ef2769fb160cdab33d3670680e cc,8630c13cbd066ea74bbe7fe468fec1dee10edc1254fb4c1b7c5fd69b646e44160b8ce01d05a0908ca790dfb080f4b513bc3b6225ece7a810371441a5ac666eb9 41fb,551da6236f8b96fce9f97f1190e901324f0b45e06dbbb5cdb8355d6ed1dc34b3f0eae7dcb68622ff232fa3cece0d4616cdeb3931f93803662a28df1cd535b731 1f877c,eb7f2a98e00af37d964f7d8c44c1fb6e114d8ee21a7b976ae736539efdc1e3fe43becef5015171e6da30168cae99a82c53fa99042774ef982c01626a540f08c0 c1ecfdfc,952d4c0a6f0ef5ce438c52e3edd345ea00f91cf5da8097c1168a16069e958fc05bad90a0c5fb4dd9ec28e84b226b94a847d6bb89235692ef4c9712f0c7030fae 21f134ac57,2e76d93affd62b92fc4f29cb83efbe4ba21d88426aa7f075bfc20960ea258787898172e17045af43ab1fe445532be0185fbea84d9be788b05f14dbf4856a5254 c6f50bb74e29,40fa8074e1e509b206448fbe757d9494b9b51e8d6e674a67f53c11ef92e96c3ea08b95ebd4172b020010cd6cf29539a34d6bfa002a2042787aa8d879a0f5b54c 119713cc83eeef,d1116786a3c1ea46a8f22d82abb4c5d06dc0691b2e747ac9726d0b290e6959f7b23428519a656b237695e56403855ec4c98db0cf87f31b6ceabf2b9b8589b713 4a4f202484512526,f326c7c126ddc277922760feef77c9bab6fb5d3430f652593703d7c5e30135cd0b0575257509a624184330d6ab1f508a666391b5d4690426b4e05301891df897 1f66ab4185ed9b6375,1f5b8a6e8d94f5e2535d46842b9ced467c39c2db323963d3f3d937e9dda76fbc17072dda2ab4771cd7a645145a2aec1b5749bf9efe0cde006cc3ef8936438e0d eed7422227613b6f53c9,2aeee7a720c030a820cd7baa8570d72cb90b7a238c38c358676358a7ae9a5cf26635b2320d61c1284899e654f0bfdd0a3a9c343ffbd11838b57465e6c3ad3a57 eaeed5cdffd89dece455f1,7b1c1bef3b4deb4b4812c81a6e7b3f2c66fa95157fa3b9d2959dc56b8add100170d3c8d1745fd230a31f89fa17889c4c58946b5d746e47b71ed0394b66d1bdb2 5be43c90f22902e4fe8ed2d3,ee41401af509d6fc0944cd4a0bb29d2dce0dcc862606e669e31381e5d6cecb463143645d696d14e40169cdc71c75686d6e8732b432092626421cc6cc196f80bf a746273228122f381c3b46e4f1,9b53b410b9f5dce90a77244db407a3d0f4898d112d0044a8f66af933e26666de63ebd2a4322d8fe525ab354ce9676b6a14d0ce6b3d24e6cd5832bea0c5153cef 3c5871cd619c69a63b540eb5a625,2b53fe6583fc24ee8a63801067e4d3bd6e6934ef16bc822fc3a69f4ee13a404d9a3ce2bb4a12c77382bfde4d843f87fd06ed8aecc234a3a24cedfe60bfc06933 fa22874bcc068879e8ef11a69f0722,80946ca68e8c16a9667cd8339d1c5b00f1e0d401d0ecc79458754794838f3ae2949a8cc5fe5584033bca9c5be62c7c08f402ef02f727cefa43bbd374c2a67c52 52a608ab21ccdd8a4457a57ede782176,4b39d3da5bcdf4d9b769015995644311c14c435bf72b1009d6dd71b01a63b97cfb596418e8e42342d117e07471a8914314ba7b0e264dadf0cea381868cbd43d1 82e192e4043ddcd12ecf52969d0f807eed,c37c9dc2e20d8e2f0ae588d7d45a807ccfa000fc948ac42a8ed63bb14f318fc3d4b963f7305980e6a0fd2316b55b63142373b1a29002264855c716c5c9f17f4c 75683dcb556140c522543bb6e9098b21a21e,9073c62555e6095f17df71ad02babb9100288633898489b21c906a3190875baeaccc83be80abd11466fec371ba2c4623d07f0131defaec13a8c732a9f8417163 06e4efe45035e61faaf4287b4d8d1f12ca97e5,23e9352856718e1e2d68a21d56d93117ced7628e984ff04ed8c0cb9b10539e4ede284f94fa71bf4b83bbb493435fd6be26eddb09deac39680e6b05acc87b8c4e e26193989d06568fe688e75540aea06747d9f851,909d753426b1dee09fc474f18cf810d5d5aadbf8a09af495bf6c22aca0c673021bfc5d2ad94f50b24e1569e956694b21cf2cc8b4f3c7ee4cf195e4424cc415dd d8dc8fdefbdce9d44e4cbafe78447bae3b5436102a,046c6019fc4d628ae0da7092f9910f269b853d3b57052039ad1375c665405f9fd79d57579f42c4fff249bb85ae65113a9f4276cede73e9ccb0c24753935a006e 57085fd7e14216ab102d8317b0cb338a786d5fc32d8f,51c909a6528949baddaf1ba0b154ea9c33fde5074359505b76d4b7ed54352dd893d40b142a5f802f378cba7b8c3782ecf2a048542be6c5936822214846a8d5e4 a05404df5dbb57697e2c16fa29defac8ab3560d6126fa0,efc8917e1247742a2d4ec29afeddf1e6ece377b3d8ac6e58c9851ce9c99bd599adebfed657baacd1793fc91b04df2957bf6f1888869286002dc4ad9ac7f76793 aecbb02759f7433d6fcb06963c74061cd83b5b3ffa6f13c6,fcef88bcc7ef70d8c3973429ac5139155f9ba643b431013f1817ecd2ff3ab287880f9ea54df7503cb3f73d7cf2b87d2e9bdbd203378fae74ca4bd2667a4aa706 aafdc9243d3d4a096558a360cc27c8d862f0be73db5e88aa55,470bdd8d709875c8e6f88591b97d6486c5f03b54bfc905757483e013f63a6c56984d4518d45c2d2298eadb44af3a0c35a76b573d452f5747844d3ad8f84a2e85 7bc84867f6f9e9fdc3e1046cae3a52c77ed485860ee260e30b15,429fd438b390ad0224028975467ec228f9adcde71e1738005e3717c58f727aa2b7c61780bf0c5f8b766cc6d34551d87d22a130b8c215614204e607aa82ff8469 fac523575a99ec48279a7a459e98ff901918a475034327efb55843,790a010aeb6f13e019a1dc35574b1219e74ff5db6fbd8746733664ffdbcfe1cc6e8ab39117e3244c4fa3c0a962c9f50030aef88e193e7e0d4c4747345f30cb54 0f8b2d8fcfd9d68cffc17ccfb117709b53d26462a3f346fb7c79b85e,aaf7a391600270f7b5a2a3bbc7474ac4154ebeac03a790a57fdad96cea2d043c9fa5f6916790b92f8032d668ed9a07112dc5b2373ec816aabca6f577ce60415e a963c3e895ff5a0be4824400518d81412f875fa50521e26e85eac90c04,3e2880a974e50f98bd6cc0f9d769af348ce3b7e8fa38cf0ca2da5fd704c9c0e57d5500bea3cb7477927f9c394aa3f9bbc01824350291b9a0a0cbf094bb37da55 03a18688b10cc0edf83adf0a84808a9718383c4070c6c4f295098699ac2c,48e55e0340f20466881a732aa88459ad4bcdef364c3bd045ae099f953d89f15957aef204265c3915ba42fe4235196be3d0f564676227c3c0deacfbaf68f9e717 84fb51b517df6c5accb5d022f8f28da09b10232d42320ffc32dbecc3835b29,9d8098d8d6edbbaa2bcfc6fb2f89c3eac67fec25cdfe75aa7bd570a648e8c8945ff2ec280f6dcf73386109155c5bbc444c707bb42eab873f5f7476657b1bc1a8 9f2fcc7c90de090d6b87cd7e9718c1ea6cb21118fc2d5de9f97e5db6ac1e9c10,1eafedce7292ba73b80ae6151745f43ac95bfc9f31694d422473abca2e69d695cb6544db65506078cb20dbe0762f84aa6afd14a60ab597955be73f3f5c50f7a8 de8f1b3faa4b7040ed4563c3b8e598253178e87e4d0df75e4ff2f2dedd5a0be046,9a7688e31aaf40c15575fc58c6b39267aad3722e696e518a9945cf7f7c0fea84cb3cb2e9f0384a6b5dc671ade7fb4d2b27011173f3eeeaf17cb451cf26542031 62f154ec394d0bc757d045c798c8b87a00e0655d0481a7d2d9fb58d93aedc676b5a0,ada5ca5630660003c4d16149f235faeb78132f7f773a631f820cc5c654b08eab4206bb4ea1389d1cf74d3b60b86e484c90c817cdb5dd5dbf327163b4646f7213 b2dcfe9ff19e2b23ce7da2a4207d3e5ec7c6112a8a22aec9675a886378e14e5bfbad4e,71a0801d32587980b09963a0f547b8b6ee3bade224671bf44f12e3da4f21778bac37fcc73ef45fee1c96688baf9020f487b1a16e3ac91b504845d6fba879134f 47f5697ac8c31409c0868827347a613a3562041c633cf1f1f86865a576e02835ed2c2492,eba678b7a0e5669dc7fa5eca5d5f19fe625e113e5028da5efb138923cd444757b06078e0ba064b36c72ca2187ab9dd31dda6f24668f46c32f8ec21ac59aafa24 512a6d292e67ecb2fe486bfe92660953a75484ff4c4f2eca2b0af0edcdd4339c6b2ee4e542,12df92d889d7ba0df05bcd02d9de58c97f4813126967ff78bdf759c66c4cbe9df68ab31a0256c776730bb25deecf91f0997868ac8bb86df7a0fc110cb0a4de5d 973cf2b4dcf0bfa872b41194cb05bb4e16760a1840d8343301802576197ec19e2a1493d8f4fb,b8c7ce2be4cb32c140e75b75474248c1dd77d19b0cbca31a3ecc2a35c532e4fa3ed4abbcda27aa68a9dda06b245443e5903a65652a94ed3af15065d3e7736e47 80beebcd2e3f8a9451d4499961c9731ae667cdc24ea020ce3b9aa4bbc0a7f79e30a934467da4b0,a0ae9dfb56831fe4a3223c501b697bd8243c471e8343acfd37a6b587feac74571c23deebc9b94a540a02f1b1e2251e01229c9d58c4279f155d5566fb18e81295 7abaa12ec2a7347674e444140ae0fb659d08e1c66decd8d6eae925fa451d65f3c0308e29446b8ed3,631e7847124a70fe6eb293a44a25c50600b5e7e975ca9fab5ae64ab86c7e42c912dd6ec093f01a8debc6e1f5e487af97dc3fd6c53002765050be963ffcd4d989 c88dee9927679b8af422abcbacf283b904ff31e1cac58c7819809f65d5807d46723b20f67ba610c2b7,b989263bb4e0424f95fdc9a49c83a3769fbf31dcedda7e005ab5f22f43d2718debd39085971f7eb7822c9fa0f67f776cec4e35a9a8b8c835ef4e9ebda1922e4d 01e43fe350fcec450ec9b102053e6b5d56e09896e0ddd9074fe138e6038210270c834ce6eadc2bb86bf6,ff6adcb9e1546798d396db78452df1a375b65ee3d54fcc915a8ca3da693e24931999b0fc8a4eb92f6ff85e42bb4cfd9ce7d7863eee709c9ef37642b696174474 337023370a48b62ee43546f17c4ef2bf8d7ecd1d49f90bab604b839c2e6e5bd21540d29ba27ab8e309a4b7,1051b7ff77274b784e7fb7823e756f0c4355047e489775bbedaa7ce5a75efac331492c016ce02eb2be8ba2fe6b735b9a1484e73ac06de573c5d0b4a58822a36a 6892540f964c8c74bd2db02c0ad884510cb38afd4438af31fc912756f3efec6b32b58ebc38fc2a6b913596a8,5639a2824297ca099ecf2a81eef1753f6314cb663d860f05a39e3e801ff82060bba10628e2c0d9e0a84dd05ed637fc0b65ba03bb66e46fb256f2a5b28d3f41d2 f5961dfd2b1ffffda4ffbf30560c165bfedab8ce0be525845deb8dc61004b7db38467205f5dcfb34a2acfe96c0,97f9d642507e6dd179d56f4b815e92d0d486826f273ec711b8f9cb76afc79f900816fdbc13dd3a59fbecba1f3b6953f879f27c8987b24c6ff8557a2c834076b9 ca061a2eb6ceed8881ce2057172d869d73a1951e63d57261384b80ceb5451e77b06cf0f5a0ea15ca907ee1c27eba,afef2af5a01b89be190a0e6e796aa51f1f8c356772c6fc7731f08aab8bd81aee1287c70d564f4f169e37b07f28202a85f468281b4cdc1273cf61eb30e3bdcee1 1743a77251d69242750c4f1140532cd3c33f9b5ccdf7514e8584d4a5f9fbd730bcf84d0d4726364b9bf95ab251d9bb,f467cca67c387ffc9f1b173a084c451095d01ad0bf3953ac103a76f0f1bc86167305a926a941a53417f1611a505aaa205bcfccbfd343465dad8a6c1e80609a9d d8faba1f5194c4db5f176fabfff856924ef627a37cd08cf55608bba8f1e324d7c7f157298eabc4dce7d89ce5162499f9,4b389a2a0df5e295ea9444f2739b5492f290c4467b0b4cdc1cc9ed2cefa7a9e527e0627cdaf0bda58f17d13f94af7d2deff6fc5d53dd9157674475527fbb4f86 be9684be70340860373c9c482ba517e899fc81baaa12e5c6d7727975d1d41ba8bef788cdb5cf4606c9c1c7f61aed59f97d,6590fffb7311ab7dab370fb518ccc19baa9af7c84179adb002f8facd3c44af2830a84df1e2c2402368cc36614a6ea22903063e57d00ec511a46a9a03fe3819f7 7e15d2b9ea74ca60f66c8dfab377d9198b7b16deb6a1ba0ea3c7ee2042f89d3786e779cf053c77785aa9e692f821f14a7f51,895796b2a0824c55f030d82e794925c38d8459f38cf848519f120ff6a9d5a03ebf006c3ea5021e8f3b3408ff12f01bcddf7a085ba0a9a58944fec1f554836df8 9a219be43713bd578015e9fda66c0f2d83cac563b776ab9f38f3e4f7ef229cb443304fba401efb2bdbd7ece939102298651c86,e4bbd54bfb99d345471f8ab94271b4b748f5ce70c21c28ae6559e03ee7890a2c814043e624a6bd2944350756b37fa8208fc7473a67b310ceebc17d965ed688b2 c8f2b693bd0d75ef99caebdc22adf4088a95a3542f637203e283bbc3268780e787d68d28cc3897452f6a22aa8573ccebf245972a,80d862ad05428a299213e65b50310463fd22c505e693dd4719e0a120eeaa35c5fc1608a08d22e2ccddeca49878bc26abe55a3c9a546347439a942ed0c1a6a23e ec0f99711016c6a2a07ad80d16427506ce6f441059fd269442baaa28c6ca037b22eeac49d5d894c0bf66219f2c08e9d0e8ab21de52,021b3b392deccb9075559f88c0c229026a2048cef8eeb2d4f94803dcf2da0a73e004d7f14e9fd662670b59229ab3883c340f4e3a8c42624ccb90bec1156f95d4 0dc45181337ca32a8222fe7a3bf42fc9f89744259cff653504d6051fe84b1a7ffd20cb47d4696ce212a686bb9be9a8ab1c697b6d6a33,97bf33a5254c8aca27486428440b1034aaafac8b498ecb830c2581dc68518079b65fb0c595997693ddb8d68d9564ea98dc43cd287e2e018db7dfaaaa205c547a de286ba4206e8b005714f80fb1cdfaebde91d29f84603e4a3ebc04686f99a46c9e880b96c574825582e8812a26e5a857ffc6579f63742f,c05fd9c3fa73f80956ff1c3b89160eb520ca640e201b3fe5e6e296220e81b59d530476010d3784ca08692b8c716a3be982b37450a96d30a401d3ba3c390d9de3 eebcc18057252cbf3f9c070f1a73213356d5d4bc19ac2a411ec8cdeee7a571e2e20eaf61fd0c33a0ffeb297ddb77a97f0a415347db66bcaf,b980e657c13726dbadb6570ea3a9e633869cadb798eb35c482697a04cb712f1c1e8c5d0bd67e43e52da294e82d5e80a695a74a3d27c0c672adcfe2c928859a6d 416b5cdc9fe951bd361bd7abfc120a5054758eba88fdd68fd84e39d3b09ac25497d36b43cbe7b85a6a3cebda8db4e5549c3ee51bb6fcb6ac1e,6adfc561835fddd70a9feb57c513165d12aeb3283f0dd7774dd58852da9e969abdaf20dd44856fa60e11bdfa2dbb7e3347669fff7a57a8d8d37431c2b309972d 5c5faf66f32e0f8311c32e8da8284a4ed60891a5a7e50fb2956b3cbaa79fc66ca376460e100415401fc2b8518c64502f187ea14bfc9503759705,0e7459bdc857b949cc59a9c649b9625268bf9a11ea81eeefa4ecdd410e2f6fd2c78289c01365f99034ff8fa8c115ddcebefa26a8d6468f5030e641745950061e 7167e1e02be1a7ca69d788666f823ae4eef39271f3c26a5cf7cee05bca83161066dc2e217b330df821103799df6d74810eed363adc4ab99f36046a,2a8ce9df40879b24dadf61c9131f694e5531ade6b7ab071ca10abdd3c2e4a22c868a52986a329f880137ee76109770927d2658e63eb486d880290ac0782cf5bf 2fda311dbba27321c5329510fae6948f03210b76d43e7448d1689a063877b6d14c4f6d0eaa96c150051371f7dd8a4119f7da5c483cc3e6723c01fb7d,a83ce5a6a58376d57db4c58da1b46c131ff1bf8ff2de5e8617fb37e5098398edb53f9888b8752a8aff19178f2f6bd7a33fd36c59e4a631906280907fc1c5ab07 95d1474a5aab5d2422aca6e481187833a6212bd2d0f91451a67dd786dfc91dfed51b35f47e1deb8a8ab4b9cb67b70179cc26f553ae7b569969ce151b8d,9ebfcea2db1676eee6b103119543c6049debd8fb8f1e01a5ab5b348e2919e14c8cfe8e542f2ab747b0fd4a4c3eee4019bb046e24bfe2091fb9c65dca527b71ad c71bd7941f41df044a2927a8ff55b4b467c33d089f0988aa253d294addbdb32530c0d4208b10d9959823f0c0f0734684006df79f7099870f6bf53211a88d,97b08be7653e9df1b5afa459ea750a3ac9bf3577bcc7e5344fc861184880926def354e4c65b20ec66c47b7affd3e7493958bab0a90724d3d8dd9e1d561fa60c2 f57c64006d9ea761892e145c99df1b24640883da79d9ed5262859dcda8c3c32e05b03d984f1ab4a230242ab6b78d368dc5aaa1e6d3498d53371e84b0c1d4ba,ef8aaf08159bbcb88efac49a33a5248b7ed0544960d8dd54d748a91c0d84c69f308bb54cb5ec97d3f81cdf76e68e0320815b93f2a00942f2168cbc18e8377708 e926ae8b0af6e53176dbffcc2a6b88c6bd765f939d3d178a9bde9ef3aa131c61e31c1e42cdfaf4b4dcde579a37e150efbef5555b4c1cb40439d835a724e2fae7,c0a4d8dca967772dbf6e5508c913e7beba1b749a2b1ac963d0676e6f1dcd4ebaa3f909ef87dd849882dc8253347a5f6520b5b9f510973f443976455f923cfcb9 16e8b3d8f988e9bb04de9c96f2627811c973ce4a5296b4772ca3eefeb80a652bdf21f50df79f32db23f9f73d393b2d57d9a0297f7a2f2e79cfda39fa393df1ac00,cf03c946eb7022f60fb5439462ac22684e47eaacbffe19b797760b4a24a5238be9d90e17d40ea6fe7b2885cef7dfb8bb489401caa94f2dd6e04592e33e76b9d1 fc424eeb27c18a11c01f39c555d8b78a805b88dba1dc2a42ed5e2c0ec737ff68b2456d80eb85e11714fa3f8eabfb906d3c17964cb4f5e76b29c1765db03d91be37fc,2c35f1a57a17cb29403a2b40fc307bde10ba8f7fec7b94e1e42eb4eeb952aad00ec46a26646cd51db0c6b238189d7d470e21c29bf8710423cb5602cab75e29e7 abe3472b54e72734bdba7d9158736464251c4f21b33fbbc92d7fac9a35c4e3322ff01d2380cbaa4ef8fb07d21a2128b7b9f5b6d9f34e13f39c7ffc2e72e47888599ba5,505e6e607c90c57bbe7ce52bb42df3d90bc32de554025730c84ed0f89a0132885d7a40fadff7a4b01de4d29735aefe0e0469f4f172b62a0daba889e152308fc4 36f9f0a65f2ca498d739b944d6eff3da5ebba57e7d9c41598a2b0e4380f3cf4b479ec2348d015ffe6256273511154afcf3b4b4bf09d6c4744fdd0f62d75079d440706b05,7be2c95413c589ec5ad69f8d80bfe9f26540d5c1832c7a49a31a8f5655d9ce8b47d97c69cccd693c211904142a5403da7ad09fbdb825698fe201988fcccd2bb2 abc87763cae1ca98bd8c5b82caba54ac83286f87e9610128ae4de68ac95df5e329c360717bd349f26b872528492ca7c94c2c1e1ef56b74dbb65c2ac351981fdb31d06c77a4,8aac9201d76df13424a32552f04390e499b6168711b70c875789ddaa9b115f8b8259a60d17835e2587f8901c3ca782da9afb28ba87b9fcbe05a47a42f48fcd48 94f7ca8e1a54234c6d53cc734bb3d3150c8ba8c5f880eab8d25fed13793a9701ebe320509286fd8e422e931d99c98da4df7e70ae447bab8cffd92382d8a77760a259fc4fbd72,aa52587d84586317028fb7d3c20892e0288bfe2feabd76d7f89155ffe9ccbf1a09fa0ffb0553e83f79ae58bd30a35fa54892b6aba0093a012427ddab71cdf819 13bd2811f6ed2b6f04ff3895aceed7bef8dcd45eb121791bc194a0f806206bffc3b9281c2b308b1a729ce008119dd3066e9378acdcc50a98a82e20738800b6cddbe5fe9694ad6d,48fc282f37a3e1fb5df4d2da1f7197ec899ae573ca08df550e61ee847eeb1d24c074ff46bcaee224ec7d8cea4256154f0c4d434e682834f6d827bfbdf75112f5 1eed9cba179a009ec2ec5508773dd305477ca117e6d569e66b5f64c6bc64801ce25a8424ce4a26d575b8a6fb10ead3fd1992edddeec2ebe7150dc98f63adc3237ef57b91397aa8a7,6b4b0f126863552a6f40f45e295dc79b9ba2a88ea7c3b2f607ac1a8431a97844c2a7b664443fb23c05739df5494fe9824db80b7f3e67872142f17e2c5544e1ef ba5b67b5ec3a3ffae2c19dd8176a2ef75c0cd903725d45c9cb7009a900c0b0ca7a2967a95ae68269a6dbf8466c7b6844a1d608ac661f7eff00538e323db5f2c644b78b2d48de1a08aa,7eec7b730056b1bd4f6ffc186fb45591e50cd93cf6e4fc958889f82d3f32c5c74d03a4bcf7d2754298f134698af4559b0e29baaa365cc00db0d51d407179c56d 0efa26ac5673167dcacab860932ed612f65ff49b80fa9ae65465e5542cb62075df1c5ae54fba4db807be25b070033efa223bdd5b1d3c94c6e1909c02b620d4b1b3a6c9fed24d70749604,79cb925aca072ebb3b49a9d0e59bb07dd1c223c1f26c91768b929472c51b977f85c6ceeb54bce89cf9ff6155d7fe8091540f1348ce9592a6403f92105477870e bbfd933d1fd7bf594ac7f435277dc17d8d5a5b8e4d13d96d2f64e771abbd51a5a8aea741beccbddb177bcea05243ebd003cfdeae877cca4da94605b67691919d8b033f77d384ca01593c1b,b5d1ed8f039044bcfef41e99b2f564f45991b329b503fc91fa29d2408512f8711e9db66f8ae172164650545ae9e3db32aa369ec47e81a77111276e6ca38e4d92 90078999fd3c35b8afbf4066cbde335891365f0fc75c1286cdd88fa51fab94f9b8def7c9ac582a5dbcd95817afb7d1b48f63704e19c2baa4df347f48d4a6d603013c23f1e9611d595ebac37c,782c008a9ee3dda0a182267185c995a2af737ba8cb2f6179f2cdf52505f8d933e712fc4e56d10e175ec8cdd62de6529ce1f078bfa0dc7a5284f8c565182f85d9 64105eca863515c20e7cfbaa0a0b8809046164f374d691cdbd6508aaabc1819f9ac84b52bafc1b0fe7cddbc554b608c01c8904c669d8db316a0953a4c68ece324ec5a49ffdb59a1bd6a292aa0e,91a0241eda8ca597cbb0f703ab7dbaaf859cff77b20401ad46230ce3b2beef6685775de37576014d8da1ba672d47aad95fb53c590b650634cebb43a175738569 d4654be288b9f3b711c2d02015978a8cc57471d5680a092aa534f7372c71ceaab725a383c4fcf4d8deaa57fca3ce056f312961eccf9b86f14981ba5bed6ab5b4498e1f6c82c6cae6fc14845b3c8a,00b02dbcb7a3bc117701f2f159fc4492923c437d3369833a9bd09e78e260d48d37168d36c49777b2e68e6fe9846106a6ab8768c3971fab31fd922aacb87d1cac 12d9394888305ac96e65f2bf0e1b18c29c90fe9d714dd59f651f52b88b3008c588435548066ea2fc4c101118c91f32556224a540de6efddbca296ef1fb00341f5b01fecfc146bdb251b3bdad556cd2,3dedf819b357dfab1c7092abd872a1554dd0962e9944eef9f7f8bce830f2d74f1d9ba2b748bbc6ee0b7600be8cb0ffcb79924d9f51cdb9b06bd6fd37f3050229 871a0d7a5f36c3da1dfce57acd8ab8487c274fad336bc137ebd6ff4658b547c1dcfab65f037aa58f35ef16aff4abe77ba61f65826f7be681b5b6d5a1ea8085e2ae9cd5cf0991878a311b549a6d6af230,5fbe194557b0426f96ba60712176df073eafe04f2a50515455412ea3d80c116758ad952598f48031612181d82a16efe4668ffb3bcce9563a772fe416ff6db3b3 e90b4ffef4d457bc7711ff4aa72231ca25af6b2e206f8bf859d8758b89a7cd36105db2538d06da83bad5f663ba11a5f6f61f236fd5f8d53c5e89f183a3cec615b50c7c681e773d109ff7491b5cc22296c5,2e8ab1619859c11473dc7c474ce8b0ae44b1c38417816fd95b9e0614f31e51ebb1dd16d1cbb584c4ebd28aa99f4a68e09dfe3ad462487f2608124b7528293045 e728de62d75856500c4c77a428612cd804f30c3f10d36fb219c5ca0aa30726ab190e5f3f279e0733d77e7267c17be27d21650a9a4d1e32f649627638dbada9702c7ca303269ed14014b2f3cf8b894eac8554,db2d182bdbac6ac866537e24712332cae74dc3d36168982e4453dd6e009658345255013bc0a54fca17aeedcc4beb79bdee192cfab516d24591c8699f7c758179 6348f229e7b1df3b770c77544e5166e081850fa1c6c88169db74c76e42eb983facb276ad6a0d1fa7b50d3e3b6fcd799ec97470920a7abed47d288ff883e24ca21c7f8016b93bb9b9e078bdb9703d2b781b616e,90a2c05f7001d985b587a046b488bf4ed29d75cc03a745731b5b0ce51bb86387c4ce34018a6d906eb7beb41a09afe9fedd99aacc41b4556f75229c8688c7fca2 4b127fde5de733a1680c2790363627e63ac8a3f1b4707d982caea258655d9bf18f89afe54127482ba01e08845594b671306a025c9a5c5b6f93b0a39522dc877437be5c2436cbf300ce7ab6747934fcfc30aeaaf6,ea3991c4a8a5f0146402de4ae235054c78a48dca340a7d4ad8753995f82347ecfc0054d64eb4f20abc4f415c54701cbc61a7b239a7c221b833d9ea9f94b154e8 08461f006cff4cc64b752c957287e5a0faabc05c9bff89d23fd902d324c79903b48fcb8f8f4b01f3e4ddb483593d25f000386698f5ade7faade9615fdc50d32785ea51d49894e45baa3dc707e224688c6408b68b11,1313023b753ed1727f13cc67a64b989a8bf6548324df9854d8d5a963ed3d860257fe6522b9c6d6cb1bcadf322c985601ba36f7e67110192094aa8f9869a458a8 68c8f8849b120e6e0c9969a5866af591a829b92f33cd9a4a3196957a148c49138e1e2f5c7619a6d5edebe995acd81ec8bb9c7b9cfca678d081ea9e25a75d39db04e18d475920ce828b94e72241f24db72546b352a0e4,9bca2a1a5546a11275bf42f0b48492868359c78d94785a0ee12dc1c3d70a8e97eb462148faed1ffa4dab0e91519bd36c0c5c5fe7cfcff3e180680318e1fcf75b b8d56472954e31fb54e28fca743f84d8dc34891cb564c64b08f7b71636debd64ca1edbdba7fc5c3e40049ce982bba8c7e0703034e331384695e9de76b5104f2fbc4535ecbeebc33bc27f29f18f6f27e8023b0fbb6f563c,8492f5e621e82fdbff1976b1beecff7d137805b5736ab49216122a95396b863a0481212b6daba8b05e29e287bb0e2f588f86407c84dbfb894e6acfc6f6b2e571 0d58ac665fa84342e60cefee31b1a4eacdb092f122dfc68309077aed1f3e528f578859ee9e4cefb4a728e946324927b675cd4f4ac84f64db3dacfe850c1dd18744c74ceccd9fe4dc214085108f404eab6d8f452b5442a47d,eebe4ec0fe3e0266527f4d9f57a017637eab92377d82b15856a55a22b008df67f27aa5ac04e1deeeb2c819ce41db07dbf6dcaf17a192a4371a1e92badf1e6389 1755e2d2e5d1c1b0156456b539753ff416651d44698e87002dcf61dcfa2b4e72f264d9ad591df1fdee7b41b2eb00283c5aebb3411323b672eaa145c5125185104f20f335804b02325b6dea65603f349f4d5d8b782dd3469ccd,9e36e6291bc2296cb4ba71109cedcc2a3f0b4f1ae5e5406dc4b3e594551d5c70e6f814d2c9b8413103ef07535886b4ac518aaf7aed64abed7a5b0a26f7171425 b180de1a611111ee7584ba2c4b020598cd574ac77e404e853d15a101c6f5a2e5c801d7d85dc95286a1804c870bb9f00fd4dcb03aa8328275158819dcad7253f3e3d237aeaa7979268a5db1c6ce08a9ec7c2579783c8afc1f91a7,f1089483a00b2601be9c16469a090efc49fcb70e62ac0ffea2d1e508083cd5d41dcf2daae1e0eac217859e5feaddcb782ac471c01d7266136185d37b568e9606 cf3583cbdfd4cbc17063b1e7d90b02f0e6e2ee05f99d77e24e560392535e47e05077157f96813544a17046914f9efb64762a23cf7a49fe52a0a4c01c630cfe8727b81fb99a89ff7cc11dca5173057e0417b8fe7a9efba6d95c555f,d063ea794cfd2ed9248665a6084a7b99051c1051e41b7d9dcb1537a1c79cba6deb4d844c6a618e43c7ca020d16976999684feb084616f707209f75c4bd584d86 072fc02340ef99115bad72f92c01e4c093b9599f6cfc45cb380ee686cb5eb019e806ab9bd55e634ab10aa62a9510cc0672cd3eddb589c7df2b67fcd3329f61b1a4441eca87a33c8f55da4fbbad5cf2b2527b8e983bb31a2fadec7523,424a86d746c87c85dabd1dae298a488e4ca2183de692d1d01c4b7994ee5124f9004bea84933c311cc38ea6f604a7769ee178e1ec160a9891c42c462a13a62286 76eecf956a52649f877528146de33df249cd800e21830f65e90f0f25ca9d6540fde40603230eca6760f1139c7f268deba2060631eea92b1fff05f93fd5572fbe29579ecd48bc3a8d6c2eb4a6b26e38d6c5fbf2c08044aeea470a8f2f26,a9403c26a96de2c3d359ee29f3fd1c581154852d19ad12884b79e7082d2da22ec83553baba2bdff2a2fa15947a8e6acd5f5d113ec091bfd1962a0a10401d2c98 7adc0b6693e61c269f278e6944a5a2d8300981e40022f839ac644387bfac9086650085c2cdc585fea47b9d2e52d65a2b29a7dc370401ef5d60dd0d21f9e2b90fae919319b14b8c5565b0423cefb827d5f1203302a9d01523498a4db10374,3d23632ee4c2d4f4118a02a677b5a32427c72ba54899ba2e6ccd22ec3defe0fcb052e3f83d35786cea2080eed148a0a94628e735202e6b2809994c5f5bdafdd6 e1fffa9826cce8b86bccefb8794e48c46cdf372013f782eced1e378269b7be2b7bf51374092261ae120e822be685f2e7a83664bcfbe38fe8633f24e633ffe1988e1bc5acf59a587079a57a910bda60060e85b5f5b6f776f0529639d9cce4bd,d8fa886884ce577a7282deceacf4786e7c68fc69b141137ff5dc7cb3c5f8abc845716dd27397e8bd5ce245107a984a3f8b21f19f99ed40118621dc85303a30b4 69f9abba65592ee01db4dce52dbab90b08fc04193602792ee4daa263033d59081587b09bbe49d0b49c9825d22840b2ff5d9c5155f975f8f2c2e7a90c75d2e4a8040fe39f63bbafb403d9e28cc3b86e04e394a9c9e8065bd3c85fa9f0c7891600,c768cd313602fabb2193f9edbf667b4cdabd57d5ff60bdc22ba7bad5319ea04e7cbec5d4b4c4560ad52609fdd22750b618951796376ed41b2a8eaffdd9927722 38a10a352ca5aedfa8e19c64787d8e9c3a75dbf3b8674bfab29b5dbfc15a63d10fae66cd1a6e6d2452d557967eaad89a4c98449787b0b3164ca5b717a93f24eb0b506ceb70cbbcb8d72b2a72993f909aad92f044e0b5a2c9ac9cb16a0ca2f81f49,8562ce9399806623b2695712266af3d4c14f77d2449143379246962c22398c813544a7dee4c4847f09d3cbe437349b7fc6738ac97075b5dd9e2add6ecaa610f4 6d8c6e449bc13634f115749c248c17cd148b72157a2c37bf8969ea83b4d6ba8c0ee2711c28ee11495f43049596520ce436004b026b6c1f7292b9c436b055cbb72d530d860d1276a1502a5140e3c3f54a93663e4d20edec32d284e25564f624955b52,99ade7b13e8e79aea6ed01a25e10e401cd1d055884575eab3e66b2294f03f8d5dbf72ab1ae39103189383ebfd2e43258510c124a894a793b206fac752c035789 6efcbcaf451c129dbe00b9cef0c3749d3ee9d41c7bd500ade40cdc65dedbbbadb885a5b14b32a0c0d087825201e303288a733842fa7e599c0c514e078f05c821c7a4498b01c40032e9f1872a1c925fa17ce253e8935e4c3c71282242cb716b2089ccc1,d12831ba39dbcd41f56bc7fc071bdaabfb6e7572d08b2fda3bddfc6fa5662f4bdbfa431ca2e38b18172709072e50120db6be93e86cb4ace3c11dd0e1f3f5c712 433c5303131624c0021d868a30825475e8d0bd3052a022180398f4ca4423b98214b6beaac21c8807a2c33f8c93bd42b092cc1b06cedf3224d5ed1ec29784444f22e08a55aa58542b524b02cd3d5d5f6907afe71c5d7462224a3f9d9e53e7e0846dcbb4ce,527d28e341e6b14f4684adb4b824c496c6482e51149565d3d17226828884306b51d6148a72622c2b75f5d3510b799d8bdc03eaede453676a6ec8fe03a1ad0eab a873e0c67ca639026b6683008f7aa6324d4979550e9bce064ca1e1fb97a30b147a24f3f666c0a72d71348ede701cf2d17e2253c34d1ec3b647dbcef2f879f4eb881c4830b791378c901eb725ea5c172316c6d606e0af7df4df7f76e490cd30b2badf45685f,cacdcf8bf855040e9795c422069d8e37b6286066a2197a320bd934061f66995227be6b85fd928b834d3ca45e1ac3844d9dc66d61581e7799ccfde008639ab3dd 006917b64f9dcdf1d2d87c8a6173b64f6587168e80faa80f82d84f60301e561e312d9fbce62f39a6fb476e01e925f26bcc91de621449be6504c504830aae394096c8fc7694651051365d4ee9070101ec9b68086f2ea8f8ab7b811ea8ad934d5c9b62c60a4771,f454a953501e191a12a80c7a5398f081cef738e25d48b076a52f77fb09ef0bc2325116020bb06c2c585da9f115bd9d8f13b50e8e1fb1664450fae690b7783400 f13c972c52cb3cc4a4df28c97f2df11ce089b815466be88863243eb318c2adb1a417cb1041308598541720197b9b1cb5ba2318bd5574d1df2174af14884149ba9b2f446d609df240ce335599957b8ec80876d9a085ae084907bc5961b20bf5f6ca58d5dab38adb,5f968cc6ecf71c588a3c3ba68858bbff96861f66c0733fd61fa91a479a49618df22d9490219df8008dc78840ae022c5d41af2b890d0214e562da8df0cb3f8522 e35780eb9799ad4c77535d4ddb683cf33ef367715327cf4c4a58ed9cbdcdd486f669f80189d549a9364fa82a51a52654ec721bb3aab95dceb4a86a6afa93826db923517e928f33e3fba850d45660ef83b9876accafa2a9987a254b137c6e140a21691e1069413848,e7149461f9cd00b71c216c50041b3eda9707d7360d4c21740c44c212256a31da398fe09708e450ea4e2826b7ec20bef76cd2fbd9d096af6f77f84abc2e4fb093 64ec021c9585e01ffe6d31bb50d44c79b6993d72678163db474947a053674619d158016adb243f5c8d50aa92f50ab36e579ff2dabb780a2b529370daa299207cfbcdd3a9a25006d19c4f1fe33e4b1eaec315d8c6ee1e730623fd1941875b924eb57d6d0c2edc4e78d6,77097413caa5a2d38259d47ec078871fa09ee5614d4c14feb7a95c921c0aae93b8737a6dc89e57693be8a0710206664b80b657a1079605a0ff9664bbcb0722d6 5954bab512cf327d66b5d9f296180080402624ad7628506b555eea8382562324cf452fba4a2130de3e165d11831a270d9cb97ce8c2d32a96f50d71600bb4ca268cf98e90d6496b0a6619a5a8c63db6d8a0634dfc6c7ec8ea9c006b6c456f1b20cd19e781af20454ac880,55d8e5202360d7d5841419362f864cc900e11c582fd0cab2ff5f1680f6ce927b5379e27a335ebafe1286b9d4a172ab761a36eade60f10468eac4ceafbf63c7cc 03d9f92b2c565709a568724a0aff90f8f347f43b02338f94a03ed32e6f33666ff5802da4c81bdce0d0e86c04afd4edc2fc8b4141c2975b6f07639b1994c973d9a9afce3d9d365862003498513bfa166d2629e314d97441667b007414e739d7febf0fe3c32c17aa188a8683,effb03b497add6230a0ed99122ea868138644ab81e861491e526fae37c39872ca731804a0004599849478a787bc7fce21903ed551d7db881d2a2c367b6168547 f31e8b4f9e0621d531d22a380be5d9abd56faec53cbd39b1fab230ea67184440e5b1d15457bd25f56204fa917fa48e669016cb48c1ffc1e1e45274b3b47379e00a43843cf8601a5551411ec12503e5aac43d8676a1b2297ec7a0800dbfee04292e937f21c005f17411473041,a2269a6ef2ea8f1cf8bc3394d27657b0db996c55e7c47784c0b451202fc5279679d79e06f8dbaa9a63665fd0e914d13c6e056ea006daaf4cb61d2629468e3d25 758ea3fea738973db0b8be7e599bbef4519373d6e6dcd7195ea885fc991d896762992759c2a09002912fb08e0cb5b76f49162aeb8cf87b172cf3ad190253df612f77b1f0c532e3b5fc99c2d31f8f65011695a087a35ee4eee5e334c369d8ee5d29f695815d866da99df3f79403,5a2970d5ec346a8e4e1d5d1e57dc22f6875ddf1ce3626b49a91109e0de991033e932f883b6a795016d5014e268304abe2f7577505aab00956911781f075d113a 47c6e0c2b74948465921868804f0f7bd50dd323583dc784f998a93cd1ca4c6ef84d41dc81c2c40f34b5bee6a93867b3bdba0052c5f59e6f3657918c382e771d33109122cc8bb0e1e53c4e3d13b43ce44970f5e0c079d2ad7d7a3549cd75760c21bb15b447589e86e8d76b1e9ced2,2b4356a64df31936b27f4530f076ee73e71e4e48abde04ff1f548e0727f4a5810b71874187fd96ed510d0d6886af11960a0b3bad1ee75dda4cdc148e162edae9 f690a132ab46b28edfa6479283d6444e371c6459108afd9c35dbd235e0b6b6ff4c4ea58e7554bd002460433b2164ca51e868f7947d7d7a0d792e4abf0be5f450853cc40d85485b2b8857ea31b5ea6e4ccfa2f3a7ef3380066d7d8979fdac618aad3d7e886dea4f005ae4ad05e5065f,edcb59984267bb00402a78f2ca345ef2494956172e10927ee63aff23d0c834bca50c47cdbffd8995036307e9ed4b143e853450367d0e14afc8490073653cd850 58d6a99bc6458824b256916770a8417040721cccfd4b79eacd8b65a3767ce5ba7e74104c985ac56b8cc9aebd16febd4cda5adb130b0ff2329cc8d611eb14dac268a2f9e633c99de33997fea41c52a7c5e1317d5b5daed35eba7d5a60e45d1fa7eaabc35f5c2b0a0f2379231953322c4e,d0b453fbe709c69125dc8fe9e8ae9245211612970373b454f8656a755e8435b321dd3a980fa28719641747e254dc42c9bf012b4d6dbd7ed13020a83b44c504aa befab574396d7f8b6705e2d5b58b2c1c820bb24e3f4bae3e8fbcd36dbf734ee14e5d6ab972aedd3540235466e825850ee4c512ea9795abfd33f330d9fd7f79e62bbb63a6ea85de15beaeea6f8d204a28956059e2632d11861dfb0e65bc07ac8a159388d5c3277e227286f65ff5e5b5aec1,fe97c011e525110e03149fac4179891afcb6304e1cfd9d84cb7389755554ee723571d76b80b9333a695884192340b3fe022d4a233b7aa8e8c7686745cfe75e67 8e58144fa9179d686478622ce450c748260c95d1ba43b8f9b59abeca8d93488da73463ef40198b4d16fb0b0707201347e0506ff19d01bea0f42b8af9e71a1f1bd168781069d4d338fdef00bf419fbb003031df671f4a37979564f69282de9c65407847dd0da505ab1641c02dea4f0d834986,1bc4ac8d979ca62a7fc81c710cedf65af56c9b652eec356aa92da924d370fdebdf076f91ba4fe1ec5cd78fc4c8885ea4304ba2e8e64944ab4bf4d1b3d7dee745 b55c10eae0ec684c16d13463f29291bf26c82e2fa0422a99c71db4af14dd9c7f33eda52fd73d017cc0f2dbe734d831f0d820d06d5f89dacc485739144f8cfd4799223b1aff9031a105cb6a029ba71e6e5867d85a554991c38df3c9ef8c1e1e9a7630be61caabca69280c399c1fb7a12d12aefc,76e970e9449d868067cd23b1a202cbdc99693ff6fa74ba644ec41cbf8fd139cb0f5d1106fcd6c871c315ff41c3eaf99c636288f0fcf6a40b480cb881d87e098f 2eeea693f585f4ed6f6f8865bbae47a6908aecd7c429e4bec4f0de1d0ca0183fa201a0cb14a529b7d7ac0e6ff6607a3243ee9fb11bcf3e2304fe75ffcddd6c5c2e2a4cd45f63c962d010645058d36571404a6d2b4f44755434d76998e83409c3205aa1615db44057db991231d2cb42624574f545,871666b230c5ad75b96d63be22870621c68fd0899655ba7dc0e0e5299915af252c226dd7217601d3a6880d55ee5a20b10820e21c74f730eea9d47fe26debe006 dab11dc0b047db0420a585f56c42d93175562852428499f66a0db811fcdddab2f7cdffed1543e5fb72110b64686bc7b6887a538ad44c050f1e42631bc4ec8a9f2a047163d822a38989ee4aab01b4c1f161b062d873b1cfa388fd301514f62224157b9bef423c7783b7aac8d30d65cd1bba8d689c2d,7e3ef62552b28a2b18a71ceef2dd8659c8bdf291385ad02fed353775e01594f27cc28cc78663e17cb8b39fd4ea48d494ad0bd7aee9277ec9b21e46523812736e 42e99a2f80aee0e001279a2434f731e01d34a44b1a8101726921c0590c30f3120eb83059f325e894a5ac959dca71ce2214799916424e859d27d789437b9d27240bf8c35adbafcecc322b48aa205b293962d858652abacbd588bcf6cbc388d0993bd622f96ed54614c25b6a9aa527589eaaffcf17ddf7,0b87f6ebaa293ff79c873820846c0fcc943e3a83bd8111931ff03ff3b0bf785c961ca84cf3fd40e0d831dbaea595498fc12da88cc507de720a35c01d73fc9595 3c9b46450c0f2cae8e3823f8bdb4277f31b744ce2eb17054bddc6dff36af7f49fb8a2320cc3bdf8e0a2ea29ad3a55de1165d219adeddb5175253e2d1489e9b6fdd02e2c3d3a4b54d60e3a47334c37913c5695378a669e9b72dec32af5434f93f46176ebf044c4784467c700470d0c0b40c8a088c815816,681babbd2e351501c285812e06f20940fd865516cf028b4787d1ffccd0d537705e8e9b73c608d5a8dc4f08eee0902ac12936ddb8c7b29228c6aaf8d0b909c30d d1e654b77cb155f5c77971a64df9e5d34c26a3cad6c7f6b300d39deb1910094691adaa095be4ba5d86690a976428635d5526f3e946f7dc3bd4dbc78999e653441187a81f9adcd5a3c5f254bc8256b0158f54673dcc1232f6e918ebfc6c51ce67eaeb042d9f57eec4bfe910e169af78b3de48d137df4f2840,c46d2262f186421d07fd740f922306d99b1e3826f6a32486be5a91dc298f177f50915e17eb4ea2e45494c501736cefb0e22acd989da41ac7bb7be56b04bfb5e1 626f68c18a69a6590159a9c46be03d5965698f2dac3de779b878b3d9c421e0f21b955a16c715c1ec1e22ce3eb645b8b4f263f60660ea3028981eebd6c8c3a367285b691c8ee56944a7cd1217997e1d9c21620b536bdbd5de8925ff71dec6fbc06624ab6b21e329813de90d1e572dfb89a18120c3f606355d25,0b3dbc770332823e686470d842104d3b3c1452f64f1bcc71c5f3fad1c0d93f21efbd48d73c7d4909227b06b06d54057a74e03c36d9c106eba79411f1e6e1cffe 651a6fb3c4b80c7c68c6011675e6094eb56abf5fc3057324ebc6477825061f9f27e7a94633abd1fa598a746e4a577caf524c52ec1788471f92b8c37f23795ca19d559d446cab16cbcdce90b79fa1026cee77bf4ab1b503c5b94c2256ad75b3eac6fd5dcb96aca4b03a834bfb4e9af988cecbf2ae597cb9097940,ca46276b0dc2ec4424bb7136eae1af207bd6e5cd833691c7d37b2caeaf4f484b96a3476fc25feb206ad37cf975383dd522ca0cc6200a3867fee7f178d6953fef 8aaf072fce8a2d96bc10b3c91c809ee93072fb205ca7f10abd82ecd82cf040b1bc49ea13d1857815c0e99781de3adbb5443ce1c897e55188ceaf221aa9681638de05ae1b322938f46bce51543b57ecdb4c266272259d1798de13be90e10efec2d07484d9b21a3870e2aa9e06c21aa2d0c9cf420080a80a91dee16f,815b44668bf3751a3392940fca54c1e3e4ef5227b052332afe6eb7a10ac8ad6438ce8a0277aa14bcc41590f6d6a10b6b1babe6bb4f8d777ea576d634b0be41c0 53f918fd00b1701bd504f8cdea803acca21ac18c564ab90c2a17da592c7d69688f6580575395551e8cd33e0fef08ca6ed4588d4d140b3e44c032355df1c531564d7f4835753344345a6781e11cd5e095b73df5f82c8ae3ad00877936896671e947cc52e2b29dcd463d90a0c9929128da222b5a211450bbc0e02448e2,f47799a8547fc9c07d0f808029e7335607d72224be286e118657bd13a2c51d0374426d9eeb7693bde5ec6181574c1404df29bf96941862ba1a0a9a5903319498 a64599b8a61b5ccec9e67aed69447459c8da3d1ec6c7c7c82a7428b9b584fa67e90f68e2c00fbbed4613666e5168da4a16f395f7a3c3832b3b134bfc9cbaa95d2a0fe252f44ac6681eb6d40ab91c1d0282fed6701c57463d3c5f2bb8c6a7301fb4576aa3b5f15510db8956ff77478c26a7c09bea7b398cfc83503f538e,8a0ae12a9e797fb7bd46cbb910076a32873bffcb9ad98b4fc37316aed681ec49c65abbb9586405ff96cc80da4bb8fa73be1ba9e737595b2307cf369d61baf59c 0e3ab0e054739b00cdb6a87bd12cae024b54cb5e550e6c425360c2e87e59401f5ec24ef0314855f0f56c47695d56a7fb1417693af2a1ed5291f2fee95f75eed54a1b1c2e81226fbff6f63ade584911c71967a8eb70933bc3f5d15bc91b5c2644d9516d3c3a8c154ee48e118bd1442c043c7a0dba5ac5b1d5360aae5b9065,a3c6d58872bafdedfdd50c0309089240d6977d4d3d59fb3f2be133c57d2dfcfcc7c027296f74fe58b2a9a6cb7e5d70088934d051cba57001fe27965cfa071a6f a62fc595b4096e6336e53fcdfc8d1cc175d71dac9d750a6133d23199eaac288207944cea6b16d27631915b4619f743da2e30a0c00bbdb1bbb35ab852ef3b9aec6b0a8dcc6e9e1abaa3ad62ac0a6c5de765de2c3711b769e3fde44a74016fff82ac46fa8f1797d3b2a726b696e3dea5530439acee3a45c2a51bc32dd055650b,11e0e521b55f02befc7207c06444fcc0c16dcf6f34962921b709a322f35e2193477b0dfa21f213f209705ff3958531a75d94346075feb29a288b62e2315ae270 2b6db7ced8665ebe9deb080295218426bdaa7c6da9add2088932cdffbaa1c14129bccdd70f369efb149285858d2b1d155d14de2fdb680a8b027284055182a0cae275234cc9c92863c1b4ab66f304cf0621cd54565f5bff461d3b461bd40df28198e3732501b4860eadd503d26d6e69338f4e0456e9e9baf3d827ae685fb1d817,aebba57c8ed5af6ec93f4aa45772ff5167b7ea88dfa71364f37d8fc5fdb7dc3b2c8331a08023f21d110b7d821e2dc7e860826235e7e6291912ac521384747354 10db509b2cdcaba6c062ae33be48116a29eb18e390e1bbada5ca0a2718afbcd23431440106594893043cc7f2625281bf7de2655880966a23705f0c5155c2f5cca9f2c2142e96d0a2e763b70686cd421b5db812daced0c6d65035fde558e94f26b3e6dde5bd13980cc80292b723013bd033284584bff27657871b0cf07a849f4ae2,2df1e09540b53a17222dab66275cebeceb1f8a5db26b0c41f955fa0549f3367e82299e0cd673958af7dfa04d741aa63ba2c1ad351764dc9228d215f22c24ca58 9334de60c997bda6086101a6314f64e4458f5ff9450c509df006e8c547983c651ca97879175aaba0c539e82d05c1e02c480975cbb30118121061b1ebac4f8d9a3781e2db6b18042e01ecf9017a64a0e57447ec7fcbe6a7f82585f7403ee2223d52d37b4bf426428613d6b4257980972a0acab508a7620c1cb28eb4e9d30fc41361ec,8299cfcea5f00c93a5eb8a84a13628a68b26796d53fb6a986c95b0b1c248920fb946d8af98343d14efc74a4611c53ccc27c5f14c7237af28364346ca5cd70d1a e88ab086891693aa535ceb20e64c7ab97c7dd3548f3786339897a5f0c39031549ca870166e477743ccfbe016b4428d89738e426f5ffe81626137f17aecff61b72dbee2dc20961880cfe281dfab5ee38b1921881450e16032de5e4d55ad8d4fca609721b0692bac79be5a06e177fe8c80c0c83519fb3347de9f43d5561cb8107b9b5edc,af57bea357fcba0579c4204c0f8dff181bc8a473014bae78df76069de478b2f2a390327a65bdd24be926551c78f70b0d5f1c8f4b970997d557f06336a315a749 fd19e01a83eb6ec810b94582cb8fbfa2fcb992b53684fb748d2264f020d3b960cb1d6b8c348c2b54a9fcea72330c2aaa9a24ecdb00c436abc702361a82bb8828b85369b8c72ece0082fe06557163899c2a0efa466c33c04343a839417057399a63a3929be1ee4805d6ce3e5d0d0967fe9004696a5663f4cac9179006a2ceb75542d75d68,b299e421061ef26c32bb4f50ee669d05feb2ccba3297289c30e6434057b3ea7f617bbbf7a5555328fc291f794987577f458350df99af3a5778300be0bd80164f 59ae20b6f7e0b3c7a989afb28324a40fca25d8651cf1f46ae383ef6d8441587aa1c04c3e3bf88e8131ce6145cfb8973d961e8432b202fa5af3e09d625faad825bc19da9b5c6c20d02abda2fcc58b5bd3fe507bf201263f30543819510c12bc23e2ddb4f711d087a86edb1b355313363a2de996b891025e147036087401ccf3ca7815bf3c49,cbdfb0d0e720f87259dd0d0b4e9c5319e7f88aaef7f7ab2fa1ca639afa0160822f96b3c357a4894ce53cd713fab23ad052e8565fa3b3a523cb9ce39a6bd535cc 77ee804b9f3295ab2362798b72b0a1b2d3291dceb8139896355830f34b3b328561531f8079b79a6e9980705150866402fdc176c05897e359a6cb1a7ab067383eb497182a7e5aef7038e4c96d133b2782917417e391535b5e1b51f47d8ed7e4d4025fe98dc87b9c1622614bff3d1029e68e372de719803857ca52067cddaad958951cb2068cc6,059a181c83a22bff0aa9baa22d872bdf23cbe341032cf0bf57997a4a1924d24fbae9dca14b6d290692b6a6b6344cbe531734f58ad0224c6e39bd1e87f870aad6 b771d5cef5d1a41a93d15643d7181d2a2ef0a8e84d91812f20ed21f147bef732bf3a60ef4067c3734b85bc8cd471780f10dc9e8291b58339a677b960218f71e793f2797aea349406512829065d37bb55ea796fa4f56fd8896b49b2cd19b43215ad967c712b24e5032d065232e02c127409d2ed4146b9d75d763d52db98d949d3b0fed6a8052fbb,9edeeb10ee1b7bb8f16a280d8cc3eda5e909c554419ddc523b69ecedf2adf3b3c9bc66fef365342471c458126f083a3b8e7c0c9d9d77e9f90196b71f9aadf492 b32d95b0b9aad2a8816de6d06d1f86008505bd8c14124f6e9a163b5a2ade55f835d0ec3880ef50700d3b25e42cc0af050ccd1be5e555b23087e04d7bf9813622780c7313a1954f8740b6ee2d3f71f768dd417f520482bd3a08d4f222b4ee9dbd015447b33507dd50f3ab4247c5de9a8abd62a8decea01e3b87c8b927f5b08beb37674c6f8e380c04,a6054ffc3d81591be964c4b004a3a21142365b59ee98b2873d488293f93a8d7154bf72100012c60d3c9418f6af8ea66372cb4703f5f6381de6d4b9b98cff1e90 04410e31082a47584b406f051398a6abe74e4da59bb6f85e6b49e8a1f7f2ca00dfba5462c2cd2bfde8b64fb21d70c083f11318b56a52d03b81cac5eec29eb31bd0078b6156786da3d6d8c33098c5c47bb67ac64db14165af65b44544d806dde5f487d5373c7f9792c299e9686b7e5821e7c8e2458315b996b5677d926dac57b3f22da873c601016a0d,b0e54a12fdba0738898f1bbf0ba81f81de77648d8d14c20bdd5d90f300d382e069f5dba7eec6b23168b008b9f39c2b93fd742a5902a5e02728f57712d6a61d4e 8b81e9badde026f14d95c019977024c9e13db7a5cd21f9e9fc491d716164bbacdc7060d882615d411438aea056c340cdf977788f6e17d118de55026855f93270472d1fd18b9e7e812bae107e0dfde7063301b71f6cfe4e225cab3b232905a56e994f08ee2891ba922d49c3dafeb75f7c69750cb67d822c96176c46bd8a29f1701373fb09a1a6e3c7158f,3ce96077eb17c6a9c95a9a477748876c6451098dbea2b3261e6d75b64a988e1c75d7eac73bc2402afc726543e2a5bdb76689c0931ff762818dd2d3fe57a50fa9 fa6eed24da6666a22208146b19a532c2ec9ba94f09f1def1e7fc13c399a48e41acc2a589d099276296348f396253b57cb0e40291bd282773656b6e0d8bea1cda084a3738816a840485fcf3fb307f777fa5feac48695c2af4769720258c77943fb4556c362d9cba8bf103aeb9034baa8ea8bfb9c4f8e6742ce0d52c49ea8e974f339612e830e9e7a9c29065,c9acd6d98a349512b952d151ed501562f04ea4bb4b8965812510b9b842531a2b41a0108ac129cf9c9517be790921df64ad1dfc0b93ddba3415eebaf0da72f6a0 9bb4af1b4f09c071ce3cafa92e4eb73ce8a6f5d82a85733440368dee4eb1cbc7b55ac150773b6fe47dbe036c45582ed67e23f4c74585dab509df1b83610564545642b2b1ec463e18048fc23477c6b2aa035594ecd33791af6af4cbc2a1166aba8d628c57e707f0b0e8707caf91cd44bdb915e0296e0190d56d33d8dde10b5b60377838973c1d943c22ed335e,26b4e5c4fa85cb33359450e7f7158fb6a0739984565e9d9ebe6ad65b118296e9c1098c11541c871eb1b89853f1fa73ad8702ebf4fc9be4d0ab057e4391df964e 2167f02118cc62043e9091a647cadbed95611a521fe0d64e8518f16c808ab297725598ae296880a773607a798f7c3cfce80d251ebec6885015f9abf7eaabae46798f82cb5926de5c23f44a3f9f9534b3c6f405b5364c2f8a8bdc5ca49c749bed8ce4ba48897062ae8424ca6dde5f55c0e42a95d1e292ca54fb46a84fbc9cd87f2d0c9e7448de3043ae22fdd229,913bba5c0c13cc49d8310014cf5af1b63ba3d5db8a27699fcfc573688f0e826fb5a7b5d10d3a1de693aa66e08c0915e7278f61b5fa30f1263b134f016f74841f 94b7fa0bc1c44e949b1d7617d31b4720cbe7ca57c6fa4f4094d4761567e389ecc64f6968e4064df70df836a47d0c713336b5028b35930d29eb7a7f9a5af9ad5cf441745baec9bb014ceeff5a41ba5c1ce085feb980bab9cf79f2158e03ef7e63e29c38d7816a84d4f71e0f548b7fc316085ae38a060ff9b8dec36f91ad9ebc0a5b6c338cbb8f6659d342a24368cf,e5d53e81866283179012d9239340b0cbfb8d7aebce0c824dc6653a652bb1b54e0883991be2c3e39ad111a7b24e95daf6f7d9a379d884d64f9c2afd645e1db5e2 ea40e83cb18b3a242c1ecc6ccd0b7853a439dab2c569cfc6dc38a19f5c90acbf76aef9ea3742ff3b54ef7d36eb7ce4ff1c9ab3bc119cff6be93c03e208783335c0ab8137be5b10cdc66ff3f89a1bddc6a1eed74f504cbe7290690bb295a872b9e3fe2cee9e6c67c41db8efd7d863cf10f840fe618e7936da3dca5ca6df933f24f6954ba0801a1294cd8d7e66dfafec,5da83b7e221933cd67fa2af8c9934db74ce822212c99e0ee01f5220b4fe1e9b0388e42e328a1d174e6368f5773853042543a9b493a94b625980b73df3f3fccbb 157d5b7e4507f66d9a267476d33831e7bb768d4d04cc3438da12f9010263ea5fcafbde2579db2f6b58f911d593d5f79fb05fe3596e3fa80ff2f761d1b0e57080055c118c53e53cdb63055261d7c9b2b39bd90acc32520cbbdbda2c4fd8856dbcee173132a2679198daf83007a9b5c51511ae49766c792a29520388444ebefe28256fb33d4260439cba73a9479ee00c63,72de9184beb5c6a37ea2c395734d0d5412991a57cffcc13ff9b5fa0f2046ee87c61811fe8ef2470239d5066c220173de5ebe41885ed8acae397fb395e6ca9aee 836b34b515476f613fe447a4e0c3f3b8f20910ac89a3977055c960d2d5d2b72bd8acc715a9035321b86703a411dde0466d58a59769672aa60ad587b8481de4bba552a1645779789501ec53d540b904821f32b0bd1855b04e4848f9f8cfe9ebd8911be95781a759d7ad9724a7102dbe576776b7c632bc39b9b5e19057e226552a5994c1dbb3b5c7871a11f5537011044c53,b678fa7655584970dedbbc73a16d7840935b104d06dcb468ddd9814d6cf443fa6f9245824dbff3ab5fffef24b29cb2978796f37e7b49b1682d59f79e3c169e81 cc7784a4912a7ab5ad3620aab29ba87077cd3cb83636adc9f3dc94f51edf521b2161ef108f21a0a298557981c0e53ce6ced45bdf782c1ef200d29bab81dd6460586964edab7cebdbbec75fd7925060f7da2b853b2b089588fa0f8c16ec6498b14c55dcee335cb3a91d698e4d393ab8e8eac0825f8adebeee196df41205c011674e53426caa453f8de1cbb57932b0b741d4c6,66c64d5b0585dd8c40becd456e4b0188061ae8059f03e79fe04c40925442ba93b052f52087b30bdbfd4816bbd148696d4fa6c61f216253d7ac178b39ec44c770 7639b461fff270b2455ac1d1afce782944aea5e9087eb4a39eb96bb5c3baaf0e868c8526d3404f9405e79e77bfac5ffb89bf1957b523e17d341d7323c302ea7083872dd5e8705694acdda36d5a1b895aaa16eca6104c82688532c8bfe1790b5dc9f4ec5fe95baed37e1d287be710431f1e5e8ee105bc42ed37d74b1e55984bf1c09fe6a1fa13ef3b96faeaed6a2a1950a12153,a7bd506db9c0509ad47413af4b0e3948b47c18278f15f5b19fbb0b76e2c1c1f19db9438528eb6d87b0b4a509567db39f32641e2944365780914296cf3e48cecf eb6513fc61b30cfba58d4d7e80f94d14589090cf1d80b1df2e68088dc6104959ba0d583d585e9578ab0aec0cf36c48435eb52ed9ab4bbce7a5abe679c97ae2dbe35e8cc1d45b06dda3cf418665c57cbee4bbb47fa4caf78f4ee656fec237fe4eebbafa206e1ef2bd0ee4ae71bd0e9b2f54f91daadf1febfd7032381d636b733dcb3bf76fb14e23aff1f68ed3dbcf75c9b99c6f26,2e681f9ddbd7c77eab0d225e2ad1f72256be239df25933bcd6cedd757269b35e2a5352b3298a4cda0542ff7d3add2b0cf42f10fbe05a67c8763d54a78a43aea7 1594d74bf5dde444265d4c04dad9721ff3e34cbf622daf341fe16b96431f6c4df1f760d34f296eb97d98d560ad5286fec4dce1724f20b54fd7df51d4bf137add656c80546fb1bf516d62ee82baa992910ef4cc18b70f3f8698276fcfb44e0ec546c2c39cfd8ee91034ff9303058b4252462f86c823eb15bf481e6b79cc3a02218595b3658e8b37382bd5048eaed5fd02c37944e73b,fd9be24763f682043243525e5e0780534a82ad5e83b65eb4acaf5353313a4cc7c5eea9da141de570232cb4126287e5c77657ca8d6a16b5be53f470343e722fd6 4cfa1278903026f66fedd41374558be1b585d03c5c55dac94361df286d4bd39c7cb8037ed3b267b07c346626449d0cc5b0dd2cf221f7e4c3449a4be99985d2d5e67bff2923357ddeab5abcb4619f3a3a57b2cf928a022eb27676c6cf805689004fca4d41ea6c2d0a4789c7605f7bb838dd883b3ad3e6027e775bcf262881428099c7fff95b14c095ea130e0b9938a5e22fc52650f591,14ea33bb33fdf0426e0dfb12de1c613ba97141454c8971bcce25c6d87a6c2403ccfad1e8a6c15754c3cc5ac1718b7f7f1ec003c1b98d70968c5dbb95540b4a17 d3e65cb92cfa79662f6af493d696a07ccf32aaadcceff06e73e8d9f6f909209e66715d6e978788c49efb9087b170ecf3aa86d2d4d1a065ae0efc8924f365d676b3cb9e2bec918fd96d0b43dee83727c9a93bf56ca2b2e59adba85696546a815067fc7a78039629d4948d157e7b0d826d1bf8e81237bab7321312fdaa4d521744f988db6fdf04549d0fdca393d639c729af716e9c8bba48,3b4b395514e0cab04fc9f9d6c358006ce06c93831e8948fb9bd2a863f3fa064e78eb57c76dd2d058d09ab3d105c28c2dacaebd4a473f1fa023053cc15366082f 842cc583504539622d7f71e7e31863a2b885c56a0ba62db4c2a3f2fd12e79660dc7205ca29a0dc0a87db4dc62ee47a41db36b9ddb3293b9ac4baae7df5c6e7201e17f717ab56e12cad476be49608ad2d50309e7d48d2d8de4fa58ac3cfeafeee48c0a9eec88498e3efc51f54d300d828dddccb9d0b06dd021a29cf5cb5b2506915beb8a11998b8b886e0f9b7a80e97d91a7d01270f9a7717,2d7d28c4311e0424d71e7f9d267a2e048aa175455fcb724cf0b13debf448b59b0f28265b0f010f4e4f4065004904a7c2687a5a1b30ab593bc44f698dff5dde33 6c4b0a0719573e57248661e98febe326571f9a1ca813d3638531ae28b4860f23c3a3a8ac1c250034a660e2d71e16d3acc4bf9ce215c6f15b1c0fc7e77d3d27157e66da9ceec9258f8f2bf9e02b4ac93793dd6e29e307ede3695a0df63cbdc0fc66fb770813eb149ca2a916911bee4902c47c7802e69e405fe3c04ceb5522792a5503fa829f707272226621f7c488a7698c0d69aa561be9f378,cb665ec69abd75743c8713034e9e41736f8c1ce2c77a8518e50388c411e6284d9aadcd4d3bd5a9eb74672325e41e8a67acf380d1e8a61684f0e501f5663a031d 51b7dbb7ce2ffeb427a91ccfe5218fd40f9e0b7e24756d4c47cd55606008bdc27d16400933906fd9f30effdd4880022d081155342af3fb6cd53672ab7fb5b3a3bcbe47be1fd3a2278cae8a5fd61c1433f7d350675dd21803746cadca574130f01200024c6340ab0cc2cf74f2234669f34e9009ef2eb94823d62b31407f4ba46f1a1eec41641e84d77727b59e746b8a671bef936f05be820759fa,4515a104fc68094d244b234d9dc06a0243b71d419d29a95c46e3cba6f51e121abe049b34535db3ccbf2ad68d83fc36331f615b3e33deb39a3381dfbcb798fe4d 83599d93f5561e821bd01a472386bc2ff4efbd4aed60d5821e84aae74d8071029810f5e286f8f17651cd27da07b1eb4382f754cd1c95268783ad09220f5502840370d494beb17124220f6afce91ec8a0f55231f9652433e5ce3489b727716cf4aeba7dcda20cd29aa9a859201253f948dd94395aba9e3852bd1d60dda7ae5dc045b283da006e1cbad83cc13292a315db5553305c628dd091146597,cee3e60a49f7caed9387f3ea699524c4ccafd37c1a7e60d2f0ab037720649f108cce8769f70b0c5d049359eeb821022f17c4b5f646b750e3070558ec127057f1 2be9bf526c9d5a75d565dd11ef63b979d068659c7f026c08bea4af161d85a462d80e45040e91f4165c074c43ac661380311a8cbed59cc8e4c4518e80cd2c78ab1cabf66bff83eab3a80148550307310950d034a6286c93a1ece8929e6385c5e3bb6ea8a7c0fb6d6332e320e71cc4eb462a2a62e2bfe08f0ccad93e61bedb5dd0b786a728ab666f07e0576d189c92bf9fb20dca49ac2d3956d47385e2,e6ed6f060906d1a772f47e83907507f88a151de401ed79acb56be57c2596792dc0bc5a9dc1045e37c6a31da1c36200214e4f5698aa2754eeb2caecfc03bec39d ca76d3a12595a817682617006848675547d3e8f50c2210f9af906c0e7ce50b4460186fe70457a9e879e79fd4d1a688c70a347361c847ba0dd6aa52936eaf8e58a1be2f5c1c704e20146d366aeb3853bed9de9befe9569ac8aaea37a9fb7139a1a1a7d5c748605a8defb297869ebedd71d615a5da23496d11e11abbb126b206fa0a7797ee7de117986012d0362dcef775c2fe145ada6bda1ccb326bf644,9ed4eee87f56ae2741e8e4d65623e4d1fa3aa111f64a85f66e99093baed990fe1d788d6a4be1a72a6615281eb45e1b6fb60afefdd93987f794084bda962fac7f f76b85dc67421025d64e93096d1d712b7baf7fb001716f02d33b2160c2c882c310ef13a576b1c2d30ef8f78ef8d2f465007109aad93f74cb9e7d7bef7c9590e8af3b267c89c15db238138c45833c98cc4a471a7802723ef4c744a853cf80a0c2568dd4ed58a2c9644806f42104cee53628e5bdf7b63b0b338e931e31b87c24b146c6d040605567ceef5960df9e022cb469d4c787f4cba3c544a1ac91f95f,23139bdd84e9f43a6cc615f0f036199328d39807bec9e786d4251b83b30800f9dbe8edc0b910fcd9d9f204c2ddd4d3b92bc26a0cfaabe764bfb90a1444733cd0 25b8c9c032ea6bcd733ffc8718fbb2a503a4ea8f71dea1176189f694304f0ff68e862a8197b839957549ef243a5279fc2646bd4c009b6d1edebf24738197abb4c992f6b1dc9ba891f570879accd5a6b18691a93c7d0a8d38f95b639c1daeb48c4c2f15ccf5b9d508f8333c32de78781b41850f261b855c4bebcc125a380c54d501c5d3bd07e6b52102116088e53d76583b0161e2a58d0778f091206aabd5a1,ec69397000aed63cb7e86b4fb0bfd3dcee8a6f6a1cfe01a324da13484b73599fcd37ad392662d4c41d90baca66be4d6e3424efd35d7ff4cb07cbdfbebddb7b50 21cfdc2a7ccb7f331b3d2eefff37e48ad9fa9c788c3f3c200e0173d99963e1cbca93623b264e920394ae48bb4c3a5bb96ffbc8f0e53f30e22956adabc2765f57fb761e147ecbf8567533db6e50c8a1f894310a94edf806dd8ca6a0e141c0fa7c9fae6c6ae65f18c93a8529e6e5b553bf55f25be2e80a9882bd37f145fecbeb3d447a3c4e46c21524cc55cdd62f521ab92a8ba72b897996c49bb273198b7b1c9e,2ea3ea00e6e9305ced0fc160e004265221306a2be9613474126825aa3c3170ae07e5ea42f6b74f0b2c1bd2a6cd4d26eb1e04c67c9a4afefc1dd0cb57c2a9f4c7 4e452ba42127dcc956ef4f8f35dd68cb225fb73b5bc7e1ec5a898bba2931563e74faff3b67314f241ec49f4a7061e3bd0213ae826bab380f1f14faab8b0efddd5fd1bb49373853a08f30553d5a55ccbbb8153de4704f29ca2bdeef0419468e05dd51557ccc80c0a96190bbcc4d77ecff21c66bdf486459d427f986410f883a80a5bcc32c20f0478bb9a97a126fc5f95451e40f292a4614930d054c851acd019ccf,6a7addb28f4f2c23cf0c264579fba5f892e010689f837b84d006d91402fbfe9ba44b9126f8b5de1ec6bbe194a3e3854235056a09901d18e8d6f1727dd430212a fa85671df7dadf99a6ffee97a3ab9991671f5629195049880497487867a6c446b60087fac9a0f2fcc8e3b24e97e42345b93b5f7d3691829d3f8ccd4bb36411b85fc2328eb0c51cb3151f70860ad3246ce0623a8dc8b3c49f958f8690f8e3860e71eb2b1479a5cea0b3f8befd87acaf5362435eaeccb52f38617bc6c5c2c6e269ead1fbd69e941d4ad2012da2c5b21bcfbf98e4a77ab2af1f3fda3233f046d38f1dc8,2c0ee8a165bf88c44c8601c6372e522da9ecf42544dcdc098698f50df8e70eb7440cab2953bb490cd2a5e0887beeae3482192da95e5098d3b318f16fc08d1e1e e90847ae6797fbc0b6b36d6e588c0a743d725788ca50b6d792352ea8294f5ba654a15366b8e1b288d84f5178240827975a763bc45c7b0430e8a559df4488505e009c63da994f1403f407958203cebb6e37d89c94a5eacf6039a327f6c4dbbc7a2a307d976aa39e41af6537243fc218dfa6ab4dd817b6a397df5ca69107a9198799ed248641b63b42cb4c29bfdd7975ac96edfc274ac562d0474c60347a078ce4c25e88,ddd4ff117231eca0445eada7c7f1d84686520daa70e160c87dbbb3fb32bb9e2f4cc53db5413d4e88de18a0118570318bd6d0e5264d779339ac6f4f4a95546a53 f6d5c2b6c93954fc627602c00c4ca9a7d3ed12b27173f0b2c9b0e4a5939398a665e67e69d0b12fb7e4ceb253e8083d1ceb724ac07f009f094e42f2d6f2129489e846eaff0700a8d4453ef453a3eddc18f408c77a83275617fabc4ea3a2833aa73406c0e966276079d38e8e38539a70e194cc5513aaa457c699383fd1900b1e72bdfb835d1fd321b37ba80549b078a49ea08152869a918ca57f5b54ed71e4fd3ac5c06729,a9744efa42887df292fc09dfeb885f1e801855ded09dc2f97cbfcbd019751878619da1bc9573201c7cc050e2aa1d453e951366d81c188d329b3cb861c1d78f92 cf8562b1bed89892d67ddaaf3deeb28246456e972326dbcdb5cf3fb289aca01e68da5d59896e3a6165358b071b304d6ab3d018944be5049d5e0e2bb819acf67a6006111089e6767132d72dd85beddcbb2d64496db0cc92955ab4c6234f1eea24f2d51483f2e209e4589bf9519fac51b4d061e801125e605f8093bb6997bc163d551596fe4ab7cfae8fb9a90f6980480ce0c229fd1675409bd788354daf316240cfe0af93eb,89cae46246efedad1147eb1868c23a6be54f6bac75f0c98a9aefc6bf3ccb89ae012f2e88a9c838b55e57b232cb3c80bc3c2e9fb3fc9768c6226e93284e208bf2 2ace31abb0a2e3267944d2f75e1559985db7354c6e605f18dc8470423fca30b7331d9b33c4a4326783d1caae1b4f07060eff978e4746bf0c7e30cd61040bd5ec2746b29863eb7f103ebda614c4291a805b6a4c8214230564a0557bc7102e0bd3ed23719252f7435d64d210ee2aafc585be903fa41e1968c50fd5d5367926df7a05e3a42cf07e656ff92de73b036cf8b19898c0cb34557c0c12c2d8b84e91181af467bc75a9d1,e80a63faf248ae762d13887afe8e1954f97327edd9641ce563f4148f9796669827b3a12b06ebd710d4171b86e21bc13360a541845354e0f4934e6fbbd7acbf2d 0d8d09aed19f1013969ce5e7eb92f83a209ae76be31c754844ea9116ceb39a22ebb6003017bbcf26555fa6624185187db8f0cb3564b8b1c06bf685d47f3286eda20b83358f599d2044bbf0583fab8d78f854fe0a596183230c5ef8e54426750eaf2cc4e29d3bdd037e734d863c2bd9789b4c243096138f7672c232314effdfc6513427e2da76916b5248933be312eb5dde4cf70804fb258ac5fb82d58d08177ac6f4756017fff5,09c10c4818a6821c170d6780d006f7e853e30fe2d9a4e96545673704ec0a1a3e356375715994e1ac1d8cb0e56dbdb2f77dc558ed228fb56ee62217e63455fd0b c3236b73deb7662bf3f3daa58f137b358ba610560ef7455785a9befdb035a066e90704f929bd9689cef0ce3bda5acf4480bceb8d09d10b098ad8500d9b6071dfc3a14af6c77511d81e3aa8844986c3bea6f469f9e02194c92868cd5f51646256798ff0424954c1434bdfed9facb390b07d342e992936e0f88bfd0e884a0ddb679d0547ccdec6384285a45429d115ac7d235a717242021d1dc35641f5f0a48e8445dba58e6cb2c8ea,d1cab5979eb7f53c97dca5d725d8b33008906d7759fd3ebb8401ee2fff01db895495a0a062d47f251bc3fc13988607c6798969d213c941efc152e7db1da68e72 b39feb8283eadc63e8184b51df5ae3fd41aac8a963bb0be1cd08aa5867d8d910c669221e73243360646f6553d1ca05a84e8dc0de05b6419ec349ca994480193d01c92525f3fb3dcefb08afc6d26947bdbbfd85193f53b50609c6140905c53a6686b58e53a319a57b962331ede98149af3de3118a819da4d76706a0424b4e1d2910b0ed26af61d150ebcb46595d4266a0bd7f651ba47d0c7f179ca28545007d92e8419d48fdfbd744ce,96ad163869ae2ffdb89b96f4dc700ece27d1f4daafbc5fb81a8e9513c6ea5e2b6a8bccf4e49a294af326f872740661629ab780581155810e492424c24f8d1dd3 a983d54f503803e8c7999f4edbbe82e9084f422143a932ddddc47a17b0b7564a7f37a99d0786e99476428d29e29d3c197a72bfab1342c12a0fc4787fd7017d7a6174049ea43b5779169ef7472bdbbd941dcb82fc73aac45a8a94c9f2bd3477f61fd3b796f02a1b8264a214c6fea74b7051b226c722099ec7883a462b83b6afdd4009248b8a237f605fe5a08fe7d8b45321421ebba67bd70a0b00ddbf94baab7f359d5d1eea105f28dcfb,fd2e7a6e11e5d00278099eaf403054d617acac5bd3d0a4908191782c89f9217a3f0118bc2b284fdbce803f66b78dd795eb18dc16ba85e19cb6393dc56c06ecca e4d1c1897a0a866ce564635b74222f9696bf2c7f640dd78d7e2aca66e1b61c642bb03ea7536aae597811e9bf4a7b453ede31f97b46a5f0ef51a071a2b3918df16b152519ae3776f9f1edab4c2a377c3292e96408359d3613844d5eb393000283d5ad3401a318b12fd1474b8612f2bb50fb6a8b9e023a54d7dde28c43d6d8854c8d9d1155935c199811dbfc87e9e0072e90eb88681cc7529714f8fb8a2c9d88567adfb974ee205a9bf7b848,ae53776d969a9b285641998a9f2c70ca71856c956a3c430a32a1e03a8e08d544f16511a27cfa59f6b8275a2357f8efa6544b1cd0c00a9460f47954a146429e49 b10c59723e3dcadd6d75df87d0a1580e73133a9b7d00cb95ec19f5547027323be75158b11f80b6e142c6a78531886d9047b08e551e75e6261e79785366d7024bd7cd9cf322d9be7d57fb661069f2481c7bb759cd71b4b36ca2bc2df6d3a328faebdb995a9794a8d72155ed551a1f87c80bf6059b43fc764900b18a1c2441f7487743cf84e565f61f8dd2ece6b6ccc9444049197aaaf53e926fbee3bfca8be588ec77f29d211be89de18b15f6,d4748c8e17f4117bf2bf71557abb559247552126c36192c5df5c6c3e307d879b703c3fcd7099ddab243e2f1d5ae5066990a7b38d3f2cd7fb115aa6d135e7261d db11f609baba7b0ca634926b1dd539c8cbada24967d7add4d9876f77c2d80c0f4dcefbd7121548373582705cca2495bd2a43716fe64ed26d059cfb566b3364bd49ee0717bdd9810dd14d8fad80dbbdc4cafb37cc60fb0fe2a80fb4541b8ca9d59dce457738a9d3d8f641af8c3fd6da162dc16fc01aac527a4a0255b4d231c0be50f44f0db0b713af03d968fe7f0f61ed0824c55c4b5265548febd6aad5c5eedf63efe793489c39b8fd29d104ce,d8ff0481a63890f0e5a536ebba2f253fa2cfa19c0f353587af4bdc3190e4f8f54d17d665e8b2011121d444bfadfff3e192d97fa03b849d63f36db20f4cf88a74 bebd4f1a84fc8b15e4452a54bd02d69e304b7f32616aadd90537937106ae4e28de9d8aab02d19bc3e2fde1d651559e296453e4dba94370a14dbbb2d1d4e2022302ee90e208321efcd8528ad89e46dc839ea9df618ea8394a6bff308e7726bae0c19bcd4be52da6258e2ef4e96aa21244429f49ef5cb486d7ff35cac1bacb7e95711944bccb2ab34700d42d1eb38b5d536b947348a458ede3dc6bd6ec547b1b0cae5b257be36a7124e1060c170ffa,52d771b5016c6b1b93d3bf6a13f718a7b4741d528798609308b54cea6037862d923751fddce10580a7d6431bf208df17c1b825f7c7401ccbd6d806b744241acf 5aca56a03a13784bdc3289d9364f79e2a85c12276b49b92db0adaa4f206d5028f213f678c3510e111f9dc4c1c1f8b6acb17a6413aa227607c515c62a733817ba5e762cc6748e7e0d6872c984d723c9bb3b117eb8963185300a80bfa65cde495d70a46c44858605fccbed086c2b45cef963d33294dbe9706b13af22f1b7c4cd5a001cfec251fba18e722c6e1c4b1166918b4f6f48a98b64b3c07fc86a6b17a6d0480ab79d4e6415b520f1c484d675b1,36d472a8ae13d1e70e1fd275117ffe34063befccf6706fab0816e1b81f7fe7f2ddb2a122f1f52c9950644659430f81bcedad5d833df4814cf60ae6c542cc4478 a5aad0e4646a32c85cfcac73f02fc5300f1982fabb2f2179e28303e447854094cdfc854310e5c0f60993ceff54d84d6b46323d930adb07c17599b35b505f09e784bca5985e0172257797fb53649e2e9723efd16865c31b5c3d5113b58bb0bfc8920fabdda086d7537e66d709d050bd14d0c960873f156fad5b3d3840cdfcdc9be6af519db262a27f40896ab25cc39f96984d650611c0d5a3080d5b3a1bf186abd42956588b3b58cd948970d298776060,e504ad7f33d65b8d3487b28805d478778c901c0aff5f889ae95e2919b4f431a80116a8993469e822895f3c21a41d67afda93a5b29b6250f76335a76fe8919274 06cbbe67e94a978203ead6c057a1a5b098478b4b4cbef5a97e93c8e42f5572713575fc2a884531d7622f8f879387a859a80f10ef02708cd8f7413ab385afc357678b9578c0ebf641ef076a1a30f1f75379e9dcb2a885bdd295905ee80c0168a62a9597d10cf12dd2d8cee46645c7e5a141f6e0e23aa482abe5661c16e69ef1e28371e2e236c359ba4e92c25626a7b7ff13f6ea4ae906e1cfe163e91719b1f750a96cbde5fbc953d9e576cd216afc90323a,1dca53be0a34114447d1c1443b92b69dfded705956eae60bbab39178ccb11f526a302aae83720652ef4c5dd450a3647df7b77c4664717d935b4f5b20f206fefe f1c528cf7739874707d4d8ad5b98f7c77169de0b57188df233b2dc8a5b31eda5db4291dd9f68e6bad37b8d7f6c9c0044b3bf74bbc3d7d1798e138709b0d75e7c593d3cccdc1b20c7174b4e692add820ace262d45ccfae2077e878796347168060a162ecca8c38c1a88350bd63bb539134f700fd4addd5959e255337daa06bc86358fabcbefdfb5bc889783d843c08aadc6c4f6c36f65f156e851c9a0f917e4a367b5ad93d874812a1de6a7b93cd53ad97232,cb1b03b180e04021e0099050eb6b7eb9092c5bd5c445e9d31ee39c724f038e9f619a96d3a2812ca7f208feb2d074c3f817262f7504705623e635b9f273e37a59 9d9f3a7ecd51b41f6572fd0d0881e30390dfb780991dae7db3b47619134718e6f987810e542619dfaa7b505c76b7350c6432d8bf1cfebdf1069b90a35f0d04cbdf130b0dfc7875f4a4e62cdb8e525aadd7ce842520a482ac18f09442d78305fe85a74e39e760a4837482ed2f437dd13b2ec1042afcf9decdc3e877e50ff4106ad10a525230d11920324a81094da31deab6476aa42f20c84843cfc1c58545ee80352bdd3740dd6a16792ae2d86f11641bb717c2,f0482f098b93624bcde1aab58097198649a8dc84421826d1c1011ad41b948384c8ed5a97c64c134b38a0075812a35f9ce3cb200972c2ecdfc408714139b9bff0 5179888724819fbad3afa927d3577796660e6a81c52d98e9303261d5a4a83232f6f758934d50aa83ff9e20a5926dfebaac49529d006eb923c5ae5048ed544ec471ed7191edf46363383824f915769b3e688094c682b02151e5ee01e510b431c8865aff8b6b6f2f59cb6d129da79e97c6d2b8fa6c6da3f603199d2d1bcab547682a81cd6cf65f6551121391d78bcc23b5bd0e922ec6d8bf97c952e84dd28aef909aba31edb903b28fbfc33b7703cd996215a11238,a3188426cea0c18cb638bcc45c4337c40be41f6e03cd2d7c4fee26025c5ca281cfbb3ad1554d45edc2eb03e2ebe3de02f57d36d5b6a88a3c61a6aaede62180d0 576ef3520d30b7a4899b8c0d5e359e45c5189add100e43be429a02fb3de5ff4f8fd0e79d9663acca72cd29c94582b19292a557c5b1315297d168fbb54e9e2ecd13809c2b5fce998edc6570545e1499dbe7fb74d47cd7f35823b212b05bf3f5a79caa34224fdd670d335fcb106f5d92c3946f44d3afcbae2e41ac554d8e6759f332b76be89a0324aa12c5482d1ea3ee89ded4936f3e3c080436f539fa137e74c6d3389bdf5a45074c47bc7b20b0948407a66d855e2f,0b14693e6320668d64ebb3bf6eeb81aafcdb7320ecde80a245786d1b0a808a15c717dc8e8813bf64bf4aa57c29c33e913d6ce1879e52e1919fb83e4a208edaa4 0df2152fa4f4357c8741529dd77e783925d3d76e95bafa2b542a2c33f3d1d117d159cf473f82310356fee4c90a9e505e70f8f24859656368ba09381fa245eb6c3d763f3093f0c89b972e66b53d59406d9f01aea07f8b3b615cac4ee4d05f542e7d0dab45d67ccccd3a606ccbeb31ea1fa7005ba07176e60dab7d78f6810ef086f42f08e595f0ec217372b98970cc6321576d92ce38f7c397a403bada1548d205c343ac09deca86325373c3b76d9f32028fea8eb32515,a9abc3f554c1e717935d28c28e7c26aa9dc5bd6d7b02ed7dc6afe21a0ea027a8801ae076f2872d08635ee81420711862edc4e448c85513289438b3c8be456b5b 3e15350d87d6ebb5c8ad99d42515cfe17980933c7a8f6b8bbbf0a63728cefaad2052623c0bd5931839112a48633fb3c2004e0749c87a41b26a8b48945539d1ff41a4b269462fd199bfecd45374756f55a9116e92093ac99451aefb2af9fd32d6d7f5fbc7f7a540d5097c096ebc3b3a721541de073a1cc02f7fb0fb1b9327fb0b1218ca49c9487ab5396622a13ae546c97abdef6b56380dda7012a8384091b6656d0ab272d363cea78163ff765cdd13ab1738b940d16cae,04dd83d20f58e854d857f24720c50a4b5f83dbc8cabd460d379417cd4813772aa85591b90462f34db3faa4dcae335fb1252bf41162e24975a0dbd308c41a4a6b c38d6b0b757cb552be40940ece0009ef3b0b59307c1451686f1a22702922800d58bce7a636c1727ee547c01b214779e898fc0e560f8ae7f61bef4d75eaa696b921fd6b735d171535e9edd267c192b99880c87997711002009095d8a7a437e258104a41a505e5ef71e5613ddd2008195f0c574e6ba3fe40099cfa116e5f1a2fa8a6da04badcb4e2d5d0de31fdc4800891c45781a0aac7c907b56d631fca5ce8b2cde620d11d1777ed9fa603541de794ddc5758fcd5fad78c0,ce76b25c928cb75c09c0674e8fcd22089654182cd3d84b85cc44b186a8b1a7cc1bb66f389da6d744a24a7b02bf5c85542d1ba8ef0db4a86d2fc394471b396519 8d2de3f0b37a6385c90739805b170057f091cd0c7a0bc951540f26a5a75b3e694631bb64c7635eed316f51318e9d8de13c70a2aba04a14836855f35e480528b776d0a1e8a23b547c8b8d6a0d09b241d3be9377160cca4e6793d00a515dc2992cb7fc741daca171431da99cce6f7789f129e2ac5cf65b40d703035cd2185bb936c82002daf8cbc27a7a9e554b06196630446a6f0a14ba155ed26d95bd627b7205c072d02b60db0fd7e49ea058c2e0ba202daff0de91e845cf79,02d1671981c2e85d0455ee85f41b8e9c32b1c80221dd432b8bcb5fcefe0996f32fe9fc3eeb3f1f557ae1632750b92d05239af857c42d59a3daeb9629e1158bec c464bbdad275c50dcd983b65ad1019b9ff85a1e71c807f3204bb2c921dc31fbcd8c5fc45868ae9ef85b6c9b83bba2a5a822201ed68586ec5ec27fb2857a5d1a2d09d09115f22dcc39fe61f5e1ba0ff6e8b4acb4c6da748be7f3f0839739394ff7fa8e39f7f7e84a33c3866875c01bcb1263c9405d91908e9e0b50e7459fabb63d8c6bbb73d8e3483c099b55bc30ff092ff68b6adedfd477d63570c9f5515847f36e24ba0b705557130cec57ebad1d0b31a378e91894ee26e3a04,6b8bc6211fe5001e07b7d20e0c49d314211e3893a39da241b8839bb3a494f9a2fd8561009d22cca1330a69362b386e715f1dbe6291dbeecfadf196da47e53198 8b8d68bb8a75732fe272815a68a1c9c5aa31b41dedc8493e76525d1d013d33cebd9e21a5bb95db2616976a8c07fcf411f5f6bc6f7e0b57aca78cc2790a6f9b898858ac9c79b165ff24e66677531e39f572be5d81eb3264524181115f32780257bfb9aeec6af12af28e587cac068a1a2953b59ad680f4c245b2e3ec36f59940d37e1d3db38e13edb29b5c0f404f6ff87f80fc8be7a225ff22fbb9c8b6b1d7330c57840d24bc75b06b80d30dad6806544d510af6c4785e823ac3e0b8,d00e919dafff3d5e51ad3a3046f5e59d64b69cbcda223cb28bc370201d2c722bae74dfe0086b0eb47bdcb62fabee870c3340d46e55d8cfedf2dd3ced8a8db3f2 6b018710446f368e7421f1bc0ccf562d9c1843846bc8d98d1c9bf7d9d6fcb48bfc3bf83b36d44c4fa93430af75cd190bde36a7f92f867f58a803900df8018150384d85d82132f123006ac2aeba58e02a037fe6afbd65eca7c44977dd3dc74f48b6e7a1bfd5cc4dcf24e4d52e92bd4455848e4928b0eac8b7476fe3cc03e862aa4dff4470dbfed6de48e410f25096487ecfc32a27277f3f5023b2725ade461b1355889554a8836c9cf53bd767f5737d55184eea1ab3f53edd0976c485,cf63f28f107a509a416f9a92c4e4db4dbf00fb52c2e16d8bb9694e09f9142a904c34e1e960bd97b8cfb2c53e7660c79b841d1565cdab83293234026a23a56d12 c9534a24714bd4be37c88a3da1082eda7cabd154c309d7bd670dccd95aa535594463058a29f79031d6ecaa9f675d1211e9359be82669a79c855ea8d89dd38c2c761ddd0ec0ce9e97597432e9a1beae062cdd71edfdfd464119be9e69d18a7a7fd7ce0e2106f0c8b0abf4715e2ca48ef9f454dc203c96656653b727083513f8efb86e49c513bb758b3b052fe21f1c05bb33c37129d6cc81f1aef6adc45b0e8827a830fe545cf57d0955802c117d23ccb55ea28f95c0d8c2f9c5a242b33f,f21b8d45b6a857ce663c074c18cc54d914cdd5eb0d968e6153a5f70069345d205ddf4370ec473fc80b05f937d014c0a464582cb4a73b1b72041c5c99f576a41e 07906c87297b867abf4576e9f3cc7f82f22b154afcbf293b9319f1b0584da6a40c27b32e0b1b7f412c4f1b82480e70a9235b12ec27090a5a33175a2bb28d8adc475cefe33f7803f8ce27967217381f02e67a3b4f84a71f1c5228e0c2ad971373f6f672624fcea8d1a9f85170fad30fa0bbd25035c3b41a6175d467998bd1215f6f3866f53847f9cf68ef3e2fbb54bc994de2302b829c5eea68ec441fcbafd7d16ae4fe9fff98bf00e5bc2ad54dd91ff9fda4dd77b6c754a91955d1fbaad0,92287f42ab1a2123669c4d35f18257d3a536445f0e4d2c801e99f8529cd9e2a79205982c280c7a6cdddef24ce960ec6ca9a35f590aeebc40448c389e915fc4e0 588e94b9054abc2189df69b8ba34341b77cdd528e7860e5defcaa79b0c9a452ad4b82aa306be84536eb7cedcbe058d7b84a6aef826b028b8a0271b69ac3605a9635ea9f5ea0aa700f3eb7835bc54611b922964300c953efe7491e3677c2cebe0822e956cd16433b02c68c4a23252c3f9e151a416b4963257b783e038f6b4d5c9f110f871652c7a649a7bcedcbccc6f2d0725bb903cc196ba76c76aa9f10a190b1d1168993baa9ffc96a1655216773458bec72b0e39c9f2c121378feab4e76a,74a9d8f9f72908c7502d1c41212cd86cf4344721a6f02d390346f2baec6e6137421e6516c3235443bc2337b3a77630712a12f11b7ba24b2d7085499ba74bcb90 08959a7e4baae874928813364071194e2939772f20db7c3157078987c557c2a6d5abe68d520eef3dc491692e1e21bcd880adebf63bb4213b50897fa005256ed41b5690f78f52855c8d9168a4b666fce2da2b456d7a7e7c17ab5f2fb1ee90b79e698712e963715983fd07641ae4b4e9dc73203fac1ae11fa1f8c7941fcc82eab247addb56e2638447e9d609e610b60ce086656aaebf1da3c8a231d7d94e2fd0afe46b391ff14a72eaeb3f44ad4df85866def43d4781a0b3578bc996c87970b132,7432861132e6894bb6ae5115398198317e12cc73c0c5dfc61cb189ff5aa9fb0d62224cbb1bfa8b105784405718e6f8e15e041dad80d11ae507b33c15c6cac824 cb2a234f45e2ecd5863895a451d389a369aab99cfef0d5c9ffca1e6e63f763b5c14fb9b478313c8e8c0efeb3ac9500cf5fd93791b789e67eac12fd038e2547cc8e0fc9db591f33a1e4907c64a922dda23ec9827310b306098554a4a78f050262db5b545b159e1ff1dca6eb734b872343b842c57eafcfda8405eedbb48ef32e99696d135979235c3a05364e371c2d76f1902f1d83146df9495c0a6c57d7bf9ee77e80f9787aee27be1fe126cdc9ef893a4a7dcbbc367e40fe4e1ee90b42ea25af01,6af4ff4c423051e3306ace812e5cfa85532b73deef0dfe601d2630632389d0fab2a109214d32508d2391775665b87a94d1df29db1214cb48dec10dbd3d8cf591 d16beadf02ab1d4dc6f88b8c4554c51e866df830b89c06e786a5f8757e8909310af51c840efe8d20b35331f4355d80f73295974653ddd620cdde4730fb6c8d0d2dcb2b45d92d4fbdb567c0a3e86bd1a8a795af26fbf29fc6c65941cddb090ff7cd230ac5268ab4606fccba9eded0a2b5d014ee0c34f0b2881ac036e24e151be89eeb6cd9a7a790afccff234d7cb11b99ebf58cd0c589f20bdac4f9f0e28f75e3e04e5b3debce607a496d848d67fa7b49132c71b878fd5557e082a18eca1fbda94d4b,4648d263b608cf28ca65b28a361ebb00e0784c65ab1d55c46a785737b6c8d83dd52e3367d898921ea36dada42d893800d0bfcf86554cdf5e7630d60a2e8ee29f 8f65f6bc59a85705016e2bae7fe57980de3127e5ab275f573d334f73f8603106ec3553016608ef2dd6e69b24be0b7113bf6a760ba6e9ce1c48f9e186012cf96a1d4849d75df5bb8315387fd78e9e153e76f8ba7ec6c8849810f59fb4bb9b004318210b37f1299526866f44059e017e22e96cbe418699d014c6ea01c9f0038b10299884dbec3199bb05adc94e955a1533219c1115fed0e5f21228b071f40dd57c4240d98d37b73e412fe0fa4703120d7c0c67972ed233e5deb300a22605472fa3a3ba86,dbd3732440010595ab26f84efeb07732227a7b7b52d6ff339c7ff1b6442249202ae33a0aef5167f5b0474d74a5b50cdb033d6c5c72894a3686fe6ecb36e357f3 84891e52e0d451813210c3fd635b39a03a6b7a7317b221a7abc270dfa946c42669aacbbbdf801e1584f330e28c729847ea14152bd637b3d0f2b38b4bd5bf9c791c58806281103a3eabbaede5e711e539e6a8b2cf297cf351c078b4fa8f7f35cf61bebf8814bf248a01d41e86c5715ea40c63f7375379a7eb1d78f27622fb468ab784aaaba4e534a6dfd1df6fa15511341e725ed2e87f98737ccb7b6a6dfae416477472b046bf1811187d151bfa9f7b2bf9acdb23a3be507cdf14cfdf517d2cb5fb9e4ab6,c24d4054110889290cbc40b82ad8599229d8e86e4ce76bddbbb6f5386223512c9d7e00973c706442b2c80edd20904067af8e4e681aecbfadc6aa15a2ebfe7ddd fdd7a9433a3b4afabd7a3a5e3457e56debf78e84b7a0b0ca0e8c6d53bd0c2dae31b2700c6128334f43981be3b213b1d7a118d59c7e6b6493a86f866a1635c12859cfb9ad17460a77b4522a5c1883c3d6acc86e6162667ec414e9a104aa892053a2b1d72165a855bacd8faf8034a5dd9b716f47a0818c09bb6baf22aa503c06b4ca261f557761989d2afbd88b6a678ad128af68672107d0f1fc73c5ca740459297b3292b281e93bceb761bde7221c3a55708e5ec84472cddcaa84ecf23723cc0991355c6280,4a6404d278a0ba70488c18d7d1861cde26fd57d66a9affe74f1e646e616003a52fe42520504ac4ace5ca6665cf9155f44ecaa05d55f80fe9794ade17871c5728 70a40bfbef92277a1aad72f6b79d0177197c4ebd432668cfec05d099accb651062b5dff156c0b27336687a94b26679cfdd9daf7ad204338dd9c4d14114033a5c225bd11f217b5f4732da167ee3f939262d4043fc9cba92303b7b5e96aea12adda64859df4b86e9ee0b58e39091e6b188b408ac94e1294a8911245ee361e60e601eff58d1d37639f3753bec80ebb4efde25817436076623fc65415fe51d1b0280366d12c554d86743f3c3b6572e400361a60726131441ba493a83fbe9afda90f7af1ae717238d,fffd1b1e31377dff00b492295bccc735733b021f47bb4afba6549ea6c1ba3832e8587099ad0cc216af5899ac683eb7c246871e21c30feef9bceedfc78d0c966c 74356e449f4bf8644f77b14f4d67cb6bd9c1f5ae357621d5b8147e562b65c66585caf2e491b48529a01a34d226d436959153815380d5689e30b35357cdac6e08d3f2b0e88e200600d62bd9f5eaf488df86a4470ea227006182e44809009868c4c280c43d7d64a5268fa719074960087b3a6abc837882f882c837834535929389a12b2c78187e2ea07ef8b8eef27dc85002c3ae35f1a50bee6a1c48ba7e175f3316670b27983472aa6a61eed0a683a39ee323080620ea44a9f74411ae5ce99030528f9ab49c79f2,33c8f40e1bd1eb1a3a70d2071d27460ef0f6b2d3ece373743842d6b928f3771e4b7446a9ecfbbf552c064f6b26095401097581c38b95e9551119a1fdcb3d58e7 8c3798e51bc68482d7337d3abb75dc9ffe860714a9ad73551e120059860dde24ab87327222b64cf774415a70f724cdf270de3fe47dda07b61c9ef2a3551f45a5584860248fabde676e1cd75f6355aa3eaeabe3b51dc813d9fb2eaa4f0f1d9f834d7cad9c7c695ae84b329385bc0bef895b9f1edf44a03d4b410cc23a79a6b62e4f346a5e8dd851c2857995ddbf5b2d717aeb847310e1f6a46ac3d26a7f9b44985af656d2b7c9406e8a9e8f47dcb4ef6b83caacf9aefb6118bfcff7e44bef6937ebddc89186839b77,2a11cb6921ea662a39ddee7982e3cf5b317195661d5505ad04d11ee23e178ed65f3e06a7f096f4eaf1ff6a09239cf5a0a39dc9f4c92af63fdf7211e1cf467653 fa56bf730c4f8395875189c10c4fb251605757a8fecc31f9737e3c2503b02608e6731e85d7a38393c67de516b85304824bfb135e33bf22b3a23b913bf6acd2b7ab85198b8187b2bcd454d5e3318cacb32fd6261c31ae7f6c54ef6a7a2a4c9f3ecb81ce3555d4f0ad466dd4c108a90399d70041997c3b25345a9653f3c9a6711ab1b91d6a9d2216442da2c973cbd685ee7643bfd77327a2f7ae9cb283620a08716dfb462e5c1d65432ca9d56a90e811443cd1ecb8f0de179c9cb48ba4f6fec360c66f252f6e64edc96b,9196bbbd194541ffee7edbab970738bdd3aadbd6b73d1c85b580afac1232ae8077f743ce8b5b6f2b418b5134cccd4f83645e8631885b14fbbcb909a9836c374c b6134f9c3e91dd8000740d009dd806240811d51ab1546a974bcb18d344642baa5cd5903af84d58ec5ba17301d5ec0f10ccd0509cbb3fd3fff9172d193af0f782252fd1338c7244d40e0e42362275b22d01c4c3389f19dd69bdf958ebe28e31a4ffe2b5f18a87831cfb7095f58a87c9fa21db72ba269379b2dc2384b3da953c7925761fed324620acea435e52b424a7723f6a2357374157a34cd8252351c25a1b232826cefe1bd3e70ffc15a31e7c0598219d7f00436294d11891b82497bc78aa5363892a2495df8c1eef,1959cae3600f128f72e1821c337d841b14cbbfef3a6d22286f18bdfc3ef63528c11bffa841a6d2208afeb5664d524de83090ab0db07cd47ef52f4d2eaa8454ce c941cdb9c28ab0a791f2e5c8e8bb52850626aa89205bec3a7e22682313d198b1fa33fc7295381354858758ae6c8ec6fac3245c6e454d16fa2f51c4166fab51df272858f2d603770c40987f64442d487af49cd5c3991ce858ea2a60dab6a65a34414965933973ac2457089e359160b7cdedc42f29e10a91921785f6b7224ee0b349393cdcff6151b50b377d609559923d0984cda6000829b916ab6896693ef6a2199b3c22f7dc5500a15b8258420e314c222bc000bc4e5413e6dd82c993f8330f5c6d1be4bc79f08a1a0a46,a913ddc5bb089c121ff093be529225148df787d48f4f61699eff9fc2910282a898a81a38d66be9b06428d6466a614ca822a872c1c2c4d503d434d3b1d6942102 4499efffac4bcea52747efd1e4f20b73e48758be915c88a1ffe5299b0b005837a46b2f20a9cb3c6e64a9e3c564a27c0f1c6ad1960373036ec5bfe1a8fc6a435c2185ed0f114c50e8b3e4c7ed96b06a036819c9463e864a58d6286f785e32a804443a56af0b4df6abc57ed5c2b185ddee8489ea080deeee66aa33c2e6dab36251c402682b6824821f998c32163164298e1fafd31babbcffb594c91888c6219079d907fdb438ed89529d6d96212fd55abe20399dbefd342248507436931cdead496eb6e4a80358acc78647d043,f10b91564ad93d734743281949bacef065a6432a455236f1bf798de9aec6ccac9b8d373b07c5acfbd676ef21e4a3a9e0f7c38e8756d177d0a5c283d520844b4d eecbb8fdfa4da62170fd06727f697d81f83f601ff61e478105d3cb7502f2c89bf3e8f56edd469d049807a38882a7eefbc85fc9a950952e9fa84b8afebd3ce782d4da598002827b1eb98882ea1f0a8f7aa9ce013a6e9bc462fb66c8d4a18da21401e1b93356eb12f3725b6db1684f2300a98b9a119e5d27ff704affb618e12708e77e6e5f34139a5a41131fd1d6336c272a8fc37080f041c71341bee6ab550cb4a20a6ddb6a8e0299f2b14bc730c54b8b1c1c487b494bdccfd3a53535ab2f231590bf2c4062fd2ad58f906a2d0d,ef26a1baf33d4de047bdd2ce34736e042ecd33aa569ffc0cb81ecfa66e9f87da8d025ecba24bcb187e4201046fb99a02dfa6f1bf88ec2b88de216cf759fac41d e64f3e4ace5c8418d65fec2bc5d2a303dd458034736e3b0df719098be7a206deaf52d6ba82316caf330ef852375188cde2b39cc94aa449578a7e2a8e3f5a9d68e816b8d16889fbc0ebf0939d04f63033ae9ae2bdab73b88c26d6bd25ee460ee1ef58fb0afa92cc539f8c76d3d097e7a6a63ebb9b5887edf3cf076028c5bbd5b9db3211371ad3fe121d4e9bf44229f4e1ecf5a0f9f0eba4d5ceb72878ab22c3f0eb5a625323ac66f7061f4a81fac834471e0c59553f108475fe290d43e6a055ae3ee46fb67422f814a68c4be3e8c9,f8e079a6dc5a6a7e7f32ff7e8015d1b26d43b54f166f2111cfb2b1eb238cabee58630ef845e0db00ddf1d800ad67ce7b2b658b42118cc15c8ef3bc9fb252db64 d2cb2d733033f9e91395312808383cc4f0ca974e87ec68400d52e96b3fa6984ac58d9ad0938dde5a973008d818c49607d9de2284e7618f1b8aed8372fbd52ed54557af4220fac09dfa8443011699b97d743f8f2b1aef3537ebb45dcc9e13dfb438428ee190a4efdb3caeb7f3933117bf63abdc7e57beb4171c7e1ad260ab0587806c4d137b6316b50abc9cce0dff3acada47bbb86be777e617bbe578ff4519844db360e0a96c6701290e76bb95d26f0f804c8a4f2717eac4e7de9f2cff3bbc55a17e776c0d02856032a6cd10ad2838,a5bfaa52499a688d9c8d3ddc0ba06decdf3829be5d444acfa412f4c6e863f4786be9935805310734e4f0affe05558999807408e97e100fadd0c93ff160f8b11b f2998955613dd414cc111df5ce30a995bb792e260b0e37a5b1d942fe90171a4ac2f66d4928d7ad377f4d0554cbf4c523d21f6e5f379d6f4b028cdcb9b1758d3b39663242ff3cb6ede6a36a6f05db3bc41e0d861b384b6dec58bb096d0a422fd542df175e1be1571fb52ae66f2d86a2f6824a8cfaacbac4a7492ad0433eeb15454af8f312b3b2a577750e3efbd370e8a8cac1582581971fba3ba4bd0d76e718dacf8433d33a59d287f8cc92234e7a271041b526e389efb0e40b6a18b3aaf658e82ed1c78631fd23b4c3eb27c3faec8685,ccea9fcf1ad93270ac4690e96b875122c5b5ec20d2cc27079cbf893126c44e0208a8bfa139057d72bd2638059ec8da8a720499af9d4c117f86799d7515dfc6e0 447797e2899b72a356ba55bf4df3acca6cdb1041eb477bd1834a9f9acbc340a294d729f2f97df3a610be0ff15edb9c6d5db41644b9874360140fc64f52aa03f0286c8a640670067a84e017926a70438db1bb361defee7317021425f8821def26d1efd77fc853b818545d055adc9284796e583c76e6fe74c9ac2587aa46aa8f8804f2feb5836cc4b3ababab8429a5783e17d5999f32242eb59ef30cd7adabc16d72dbdb097623047c98989f88d14eaf02a7212be16ec2d07981aaa99949ddf89ecd90333a77bc4e1988a82abf7c7caf3291,2efc5dfe028a35503a25bdf8b2164d86ca7496b7c5ded09c5d414b6977adbb4a6988ab9939d1ec65f46bcc99c1dcd5f19e035d8d3dc387361200e4da80c80671 9f2c18ade9b380c784e170fb763e9aa205f64303067eb1bcea93df5dac4bf5a2e00b78195f808df24fc76e26cb7be31dc35f0844cded1567bba29858cffc97fb29010331b01d6a3fb3159cc1b973d255da9843e34a0a4061cabdb9ed37f241bfabb3c20d32743f4026b59a4ccc385a2301f83c0b0a190b0f2d01acb8f0d41111e10f2f4e149379275599a52dc089b35fdd5234b0cfb7b6d8aebd563ca1fa653c5c021dfd6f5920e6f18bfafdbecbf0ab00281333ed50b9a999549c1c8f8c63d7626c48322e9791d5ff72294049bde91e73f8,e80d7a934fdaf17db8dbb1dc6c42e90e139211c2f599890c06b15d6248fdbe682d77d4e05f26d72852f7492bce118ce7c36950bd2c50f9699bb47d89c3115377 ae159f3fa33619002ae6bcce8cbbdd7d28e5ed9d61534595c4c9f43c402a9bb31f3b301cbfd4a43ce4c24cd5c9849cc6259eca90e2a79e01ffbac07ba0e147fa42676a1d668570e0396387b5bcd599e8e66aaed1b8a191c5a47547f61373021fa6deadcb55363d233c24440f2c73dbb519f7c9fa5a8962efd5f6252c0407f190dfefad707f3c7007d69ff36b8489a5b6b7c557e79dd4f50c06511f599f56c896b35c917b63ba35c6ff8092baf7d1658e77fc95d8a6a43eeb4c01f33f03877f92774be89c1114dd531c011e53a34dc248a2f0e6,c414b29fd07720f46c351f5c80be2094e95d13ad97bdd1f7c5207b695693cd5e1e0169b1aa2e271115bd5171fec51d04b71e3e7ce1618fbfeb382f56f65f7eff 3b8e97c5ffc2d6a40fa7de7fcefc90f3b12c940e7ab415321e29ee692dfac799b009c99dcddb708fce5a178c5c35ee2b8617143edc4c40b4d313661f49abdd93cea79d117518805496fe6acf292c4c2a1f76b403a97d7c399daf85b46ad84e16246c67d6836757bde336c290d5d401e6c1386ab32797af6bb251e9b2d8fe754c47482b72e0b394eab76916126fd68ea7d65eb93d59f5b4c5ac40f7c3b37e7f3694f29424c24af8c8f0ef59cd9dbf1d28e0e10f799a6f78cad1d45b9db3d7dee4a7059abe99182714983b9c9d44d7f5643596d4f3,a4679a4cbee6292203bafba8913245f30e046aba6c0937b407c00b73d17d8d696690ee25ba1b39deb3db93525a8fbcfd88173ba9c7a65b4406d0550ba9b6cc07 3434ec31b10fafdbfeec0dd6bd94e80f7ba9dca19ef075f7eb017512af66d6a4bcf7d16ba0819a1892a6372f9b35bcc7ca8155ee19e8428bc22d214856ed5fa9374c3c09bde169602cc219679f65a1566fc7316f4cc3b631a18fb4449fa6afa16a3db2bc4212eff539c67cf184680826535589c7111d73bffce431b4c40492e763d9279560aaa38eb2dc14a212d723f994a1fe656ff4dd14551ce4e7c621b2aa5604a10001b2878a897a28a08095c325e10a26d2fb1a75bfd64c250309bb55a44f23bbac0d5516a1c687d3b41ef2fbbf9cc56d4739,5f49d6594da939987d1906294b33a037f63c79e078531dfa7e6ce67279d4d5dbeb650ff8690f23b63b7e9c48ea8791b80fdb34ef66dcf0cefe45842ecff4ad1d 7c7953d81c8d208fd1c97681d48f49dd003456de60475b84070ef4847c333b74575b1fc8d2a186964485a3b8634feaa3595aaa1a2f4595a7d6b6153563dee31bbac443c8a33eed6d5d956a980a68366c2527b550ee950250dfb691eacbd5d56ae14b970668be174c89df2fea43ae52f13142639c884fd62a3683c0c3792f0f24ab1318bcb27e21f4737fab62c77ea38bc8fd1cf41f7dab64c13febe7152bf5bb7ab5a78f5346d43cc741cb6f72b7b8980f268b68bf62abdfb1577a52438fe14b591498cc95f071228460c7c5d5ceb4a7bde588e7f21c,b77fb79669ea52c738e58a9ef3ed1501bbe7974478afb5a8bed44549d6232ff8d7aa9eeeaf02f6755327951093243110d7bcfc0e51299db793856b57a77e8420 7a6a4f4fdc59a1d223381ae5af498d74b7252ecf59e389e49130c7eaee626e7bd9897effd92017f4ccde66b0440462cdedfd352d8153e6a4c8d7a0812f701cc737b5178c2556f07111200eb627dbc299caa792dfa58f35935299fa3a3519e9b03166dffa159103ffa35e8577f7c0a86c6b46fe13db8e2cdd9dcfba85bdddcce0a7a8e155f81f712d8e9fe646153d3d22c811bd39f830433b2213dd46301941b59293fd0a33e2b63adbd95239bc01315c46fdb678875b3c81e053a40f581cfbec24a1404b1671a1b88a6d06120229518fb13a74ca0ac5ae,caca0ff43107f730a7fbe6869fba5af1e626c96303be3bc95155164199c88922194511b24c48911186f647ca246427f2ce7ba747271cd8d7c5e1d127c21f1eaa d9faa14cebe9b7de551b6c0765409a33938562013b5e8e0e1e0a6418df7399d0a6a771fb81c3ca9bd3bb8e2951b0bc792525a294ebd1083688806fe5e7f1e17fd4e3a41d00c89e8fcf4a363caedb1acb558e3d562f1302b3d83bb886ed27b76033798131dab05b4217381eaaa7ba15ec820bb5c13b516dd640eaec5a27d05fdfca0f35b3a5312146806b4c0275bcd0aaa3b2017f346975db566f9b4d137f4ee10644c2a2da66deeca5342e236495c3c6280528bfd32e90af4cd9bb908f34012b52b4bc56d48cc8a6b59bab014988eabd12e1a0a1c2e170e7,e5106b2a0d49d6d1e13e3323232101cea5da71caa24e70efcac57e0ccf156cdf4c2492b03ce0e13437018dab76b9c989883bea69e849f33bb937a397b84ada6a 2d8427433d0c61f2d96cfe80cf1e932265a191365c3b61aaa3d6dcc039f6ba2ad52a6a8cc30fc10f705e6b7705105977fa496c1c708a277a124304f1fc40911e7441d1b5e77b951aad7b01fd5db1b377d165b05bbf898042e39660caf8b279fe5229d1a8db86c0999ed65e53d01ccbc4b43173ccf992b3a14586f6ba42f5fe30afa8ae40c5df29966f9346da5f8b35f16a1de3ab6de0f477d8d8660918060e88b9b9e9ca6a4207033b87a812dbf5544d39e4882010f82b6ce005f8e8ff6fe3c3806bc2b73c2b83afb704345629304f9f86358712e9fae3ca3e,faee462e4bced12ad54d3757d644396ed9203037741661aea32bccadae568c4bdc925eda76610e964fbe3fb26b33bc0bc123ddf9b528715317ce5c92e00ac96f 5e19d97887fcaac0387e22c6f803c34a3dacd2604172433f7a8a7a526ca4a2a1271ecfc5d5d7be5ac0d85d921095350dfc65997d443c21c8094e0a3fefd2961bcb94aed03291ae310ccda75d8ace4bc7d89e7d3e5d1650bda5d668b8b50bfc8e608e184f4d3a9a2badc4ff5f07e0c0bc8a9f2e0b2a26fd6d8c550008faaab75fd71af2a424bec9a7cd9d83fad4c8e9319115656a8717d3b523a68ff8004258b9990ed362308461804ba3e3a7e92d8f2ffae5c2fba55ba5a3c27c0a2f71bd711d2fe1799c2adb31b200035481e9ee5c4adf2ab9c0fa50b23975cf,fbe25b43e540104a3aade897838c63511928af5add4f952f1e6d4c39e70c923df191faa36f46b21f827d9b437996ff7206f73337cf20c6b0db748a707455b420 c8e976ab4638909387ce3b8d4e510c3230e5690e02c45093b1d297910abc481e56eea0f296f98379dfc9080af69e73b2399d1c143bee80ae1328162ce1ba7f6a8374679b20aacd380eb4e61382c99998704d62701afa914f9a2705cdb065885f50d086c3eb5753700c387118bb142f3e6da1e988dfb31ac75d7368931e45d1391a274b22f83ceb072f9bcabc0b216685bfd789f5023971024b1878a205442522f9ea7d8797a4102a3df41703768251fd5e017c85d1200a464118aa35654e7ca39f3c375b8ef8cbe7534dbc64bc20befb417cf60ec92f63d9ee7397,0a41a004573e0a983fe9c93bd57439a20c8f99b800a60d4a07117e8d9b25c0ee38bab3cdb6fc9216b8e07f0ccdd028c418ef97b6d7e15decde7425497644e2e4 7145fa124b7429a1fc2231237a949ba7201bcc1822d3272de005b682398196c25f7e5cc2f289fbf44415f699cb7fe6757791b1443410234ae061edf623359e2b4e32c19bf88450432dd01caa5eb16a1dc378f391ca5e3c4e5f356728bddd4975db7c890da8bbc84cc73ff244394d0d48954978765e4a00b593f70f2ca082673a261ed88dbcef1127728d8cd89bc2c597e9102ced6010f65fa75a14ebe467fa57ce3bd4948b6867d74a9df5c0ec6f530cbf2ee61ce6f06bc8f2864dff5583776b31df8c7ffcb61428a56bf7bd37188b4a5123bbf338393af46eda85e6,ff081507f979f69c6743e42ee758858713b570cb48ff85ef0d728c4e1bb5456d035e498c05ea4cebd820e134bb252ac76ba4949a4fad76871a9972ae2fccceea 7fdfadcc9d29bad23ae038c6c65cda1aef757221b8872ed3d75ff8df7da0627d266e224e812c39f7983e4558bfd0a1f2bef3feb56ba09120ef762917b9c093867948547aee98600d10d87b20106878a8d22c64378bf634f7f75900c03986b077b0bf8b740a82447b61b99fee5376c5eb6680ec9e3088f0bdd0c56883413d60c1357d3c811950e5890e7600103c916341b80c743c6a852b7b4fb60c3ba21f3bc15b8382437a68454779cf3cd7f9f90ccc8ef28d0b706535b1e4108eb5627bb45d719cb046839aee311ca1abdc8319e050d67972cb35a6b1601b25dbf487,03444ae8319ebd121e7707b9cdfd1fdfd52f3d6b3d4bcb2748af421a3c8666c22d8c0d8a096767b1cd16a8d54738c5f67a6f9d48c90827be71691a42be87108b 988638219fd3095421f826f56e4f09e356296b628c3ce6930c9f2e758fd1a80c8273f2f61e4daae65c4f110d3e7ca0965ac7d24e34c0dc4ba2d6ff0bf5bbe93b3585f354d7543cb542a1aa54674d375077f2d360a8f4d42f3db131c3b7ab7306267ba107659864a90c8c909460a73621d1f5d9d3fd95beb19b23db1cb6c0d0fba91d36891529b8bd8263caa1bab56a4affaed44962df096d8d5b1eb845ef31188b3e10f1af811a13f156beb7a288aae593ebd1471b624aa1a7c6adf01e2200b3d72d88a3aed3100c88231e41efc376906f0b580dc895f080fda5741db1cb,5ee0a4459724037b7318815a80147c172d6c8f8874c9a0057706fb3e300fe936815f07672e6447b771de699dfadf345c3bb5974cf019315fadd5534dff6a079c 5aab62756d307a669d146aba988d9074c5a159b3de85151a819b117ca1ff6597f6156e80fdd28c9c3176835164d37da7da11d94e09add770b68a6e081cd22ca0c004bfe7cd283bf43a588da91f509b27a6584c474a4a2f3ee0f1f56447379240a5ab1fb77fdca49b305f07ba86b62756fb9efb4fc225c86845f026ea542076b91a0bc2cdd136e122c659be259d98e5841df4c2f60330d4d8cdee7bf1a0a244524eecc68ff2aef5bf0069c9e87a11c6e519de1a4062a10c83837388f7ef58598a3846f49d499682b683c4a062b421594fafbc1383c943ba83bdef515efcf10d,54085a2f9c327e5d8ee225eff5bd2c2837e44e8057cf1691e6202050079d26851061c4da8d88fc19237e5b658950e66866e92019d9e425e2416240a59d25a6cf 47b8216aa0fbb5d67966f2e82c17c07aa2d6327e96fcd83e3de7333689f3ee79994a1bf45082c4d725ed8d41205cb5bcdf5c341f77facb1da46a5b9b2cbc49eadf786bcd881f371a95fa17df73f606519aea0ff79d5a11427b98ee7f13a5c00637e2854134691059839121fea9abe2cd1bcbbbf27c74caf3678e05bfb1c949897ea01f56ffa4dafbe8644611685c617a3206c7a7036e4ac816799f693dafe7f19f303ce4eba09d21e03610201bfc665b72400a547a1e00fa9b7ad8d84f84b34aef118515e74def11b9188bd1e1f97d9a12c30132ec2806339bdadacda2fd8b78,3ea49b6abd39cdf04bccd648fb7e1f8ae3dae9d3e3a5eab9ce29be356defbbbeb1bb93ae40d31cc1f011dcc6c6ac85b102f2654e2dbbac47333bcdb4758a1a28 8cff1f67fe53c098896d9136389bd8881816ccab34862bb67a656e3d98896f3ce6ffd4da73975809fcdf9666760d6e561c55238b205d8049c1cedeef374d1735daa533147bfa960b2cce4a4f254176bb4d1bd1e89654432b8dbe1a135c42115b394b024856a2a83dc85d6782be4b444239567ccec4b184d4548eae3ff6a192f343292ba2e32a0f267f31cc26719eb85245d415fb897ac2da433ee91a99424c9d7f1766a44171d1651001c38fc79294accc68ceb5665d36218454d3ba169ae058a831338c17743603f81ee173bfc0927464f9bd728dee94c6aeab7aae6ee3a627e8,b3851790ca47575dbf988f82c3b501dc8390a8e8598698166167567a0332913ccc8868584db4acfb2c9dc0f0a6833292f4dcedc47cf003217689bc2422b53b93 eacd07971cff9b9939903f8c1d8cbb5d4db1b548a85d04e037514a583604e787f32992bf2111b97ac5e8a938233552731321522ab5e8583561260b7d13ebeef785b23a41fd8576a6da764a8ed6d822d4957a545d5244756c18aa80e1aad4d1f9c20d259dee1711e2cc8fd013169fb7cc4ce38b362f8e0936ae9198b7e838dcea4f7a5b9429bb3f6bbcf2dc92565e3676c1c5e6eb3dd2a0f86aa23edd3d0891f197447692794b3dfa269611ad97f72b795602b4fdb198f3fd3eb41b415064256e345e8d8c51c555dc8a21904a9b0f1ad0effab7786aac2da3b196507e9f33ca356427,a710cb26c632f289504cd0039ba6ab9b4d3524c52b286d466e2f8939f8684e3f18dca298a2ba67eb710997b7bb10ae279438b9b4868d0adb248f282bb440a130 23ac4e9a42c6ef45c3336ce6dfc2ff7de8884cd23dc912fef0f7756c09d335c189f3ad3a23697abda851a81881a0c8ccafc980ab2c702564c2be15fe4c4b9f10dfb2248d0d0cb2e2887fd4598a1d4acda897944a2ffc580ff92719c95cf2aa42dc584674cb5a9bc5765b9d6ddf5789791d15f8dd925aa12bffafbce60827b490bb7df3dda6f2a143c8bf96abc903d83d59a791e2d62814a89b8080a28060568cf24a80ae61179fe84e0ffad00388178cb6a617d37efd54cc01970a4a41d1a8d3ddce46edbba4ab7c90ad565398d376f431189ce8c1c33e132feae6a8cd17a61c630012,8f677a8089052b47be60c0bb7666e403a5daa5e28a2b632f2e496c587f1fdca0ee33d9e78daa4ef575b13389748b8c24110053b0b96a082c06c3f80ebe8de976 0172df732282c9d488669c358e3492260cbe91c95cfbc1e3fea6c4b0ec129b45f242ace09f152fc6234e1bee8aab8cd56e8b486e1dcba9c05407c2f95da8d8f1c0af78ee2ed82a3a79ec0cb0709396ee62aadb84f8a4ee8a7ccca3c1ee84e302a09ea802204afecf04097e67d0f8e8a9d2651126c0a598a37081e42d168b0ae8a71951c524259e4e2054e535b779679bdade566fe55700858618e626b4a0faf895bcce9011504a49e05fd56127eae3d1f8917afb548ecadabda1020111fec9314c413498a360b08640549a22cb23c731ace743252a8227a0d2689d4c6001606678dfb921,ce631e6f2c2dc5738c0fa958571773b58af130b94824331419ee57e2691ce5f29db3d8fe456cd1e7cdc07f6105fa1b6fd729c2b419008ccd889169c3385db1b9 3875b9240cf3e0a8b59c658540f26a701cf188496e2c2174788b126fd29402d6a75453ba0635284d08835f40051a2a9683dc92afb9383719191231170379ba6f4adc816fecbb0f9c446b785bf520796841e58878b73c58d3ebb097ce4761fdeabe15de2f319dfbaf1742cdeb389559c788131a6793e193856661376c81ce9568da19aa6925b47ffd77a43c7a0e758c37d69254909ff0fbd415ef8eb937bcd49f91468b49974c07dc819abd67395db0e05874ff83dddab895344abd0e7111b2df9e58d76d85ad98106b36295826be04d435615595605e4b4bb824b33c4afeb5e7bb0d19f909,fff677bb58909c158ea677be704253505b106af934f639abfec63bd0c63097aa4bf032fe924149dd991d335e1c44c0220e4d13cbc41b6a98fb5a05faa3fe15b3 747cc1a59fefba94a9c75ba866c30dc5c1cb0c0f8e9361d98484956dd5d1a40f6184afbe3dac9f76028d1caeccfbf69199c6ce2b4c092a3f4d2a56fe5a33a00757f4d7dee5dfb0524311a97ae0668a47971b95766e2f6dd48c3f57841f91f04a00ad5ea70f2d479a2620dc5cd78eaab3a3b011719b7e78d19ddf70d9423798af77517ebc55392fcd01fc600d8d466b9e7a7a85bf33f9cc5419e9bd874ddfd60981150ddaf8d7febaa4374f0872a5628d318000311e2f5655365ad4d407c20e5c04df17a222e7deec79c5ab1116d8572f91cd06e1ccc7ced53736fc867fd49ecebe6bf8082e8a,451ee587226c99989f5ec10050983b1fd661228a4ab48618f1d1173c94fac39ecfd3c26c16653633b26097e31a0f2213b4f1153a57cb48a70d2af1adeb1bbc06 57af971fccaec97435dc2ec9ef0429bcedc6b647729ea168858a6e49ac1071e706f4a5a645ca14e8c7746d65511620682c906c8b86ec901f3dded4167b3f00b06cbfac6aee3728051b3e5ff10b4f9ed8bd0b8da94303c833755b3ca3aeddf0b54bc8d6632138b5d25bab03d17b3458a9d782108006f5bb7de75b5c0ba854b423d8bb801e701e99dc4feaad59bc1c7112453b04d33ea3635639fb802c73c2b71d58a56bbd671b18fe34ed2e3dca38827d63fdb1d4fb3285405004b2b3e26081a8ff08cd6d2b08f8e7b7e90a2ab1ed7a41b1d0128522c2f8bff56a7fe67969422ce839a9d4608f03,f9d6ad8686125e71fe0856e806d68ba97ef123443938d28283387f33e3ac6e2a7de042a3ee5f7994c1eecc5b6f22cbae1349cab2fb7a0a0125ec2320320858d4 04e16dedc1227902baaf332d3d08923601bdd64f573faa1bb7201918cfe16b1e10151dae875da0c0d63c59c3dd050c4c6a874011b018421afc4623ab0381831b2da2a8ba42c96e4f70864ac44e106f94311051e74c77c1291bf5db9539e69567bf6a11cf6932bbbad33f8946bf5814c066d851633d1a513510039b349939bfd42b858c21827c8ff05f1d09b1b0765dc78a135b5ca4dfba0801bcaddfa175623c8b647eacfb4444b85a44f73890607d06d507a4f8393658788669f6ef4deb58d08c50ca0756d5e2f49d1a7ad73e0f0b3d3b5f090acf622b1878c59133e4a848e05153592ea81c6fbf,f26f3268fd620fc476a49aac3ed1580864934a2f6ba881ed8c8fb757aaaa64bcdf501e1913de600bbef6f12c949fea8fd68c645086d5e30c9253588ffbd19be5 7c815c384eee0f288ece27cced52a01603127b079c007378bc5d1e6c5e9e6d1c735723acbbd5801ac49854b2b569d4472d33f40bbb8882956245c366dc3582d71696a97a4e19557e41e54dee482a14229005f93afd2c4a7d8614d10a97a9dfa07f7cd946fa45263063ddd29db8f9e34db60daa32684f0072ea2a9426ecebfa5239fb67f29c18cbaa2af6ed4bf4283936823ac1790164fec5457a9cba7c767ca59392d94cab7448f50eb34e9a93a80027471ce59736f099c886dea1ab4cba4d89f5fc7ae2f21ccd27f611eca4626b2d08dc22382e92c1efb2f6afdc8fdc3d2172604f5035c46b8197d3,080845d6fd22a00b30fa01a4b4f81fdc7b46ca4c6a676ad5863a9dbf6611ba97f24fb59bb5bac4e376b3b8b3357166782876b701273ff351bc8c5805532767d4 e29d505158dbdd937d9e3d2145658ee6f5992a2fc790f4f608d9cdb44a091d5b94b88e81fac4fdf5c49442f13b911c55886469629551189eaff62488f1a479b7db11a1560e198ddccccf50159093425ff7f1cb8d1d1246d0978764087d6bac257026b090efae8cec5f22b6f21c59ace1ac7386f5b8837ca6a12b6fbf5534dd0560ef05ca78104d3b943ddb220feaec89aa5e692a00f822a2ab9a2fe60350d75e7be16ff2526dc643872502d01f42f188abed0a6e9a6f5fd0d1ce7d5755c9ffa66b0af0b20bd806f08e06156690d81ac811778ca3dac2c249b96002017fce93e507e3b953acf99964b847,2678a8715fc7e538522dd7608d769508b63017d9eb6cc48f1cb07d14e741066936c8316bf3211e09f62611e140ddd14a07f97f9f372e99c084ffe289eb302bd8 d85588696f576e65eca0155f395f0cfacd83f36a99111ed5768df2d116d2121e32357ba4f54ede927f189f297d3a97fad4e9a0f5b41d8d89dd7fe20156799c2b7b6bf9c957ba0d6763f5c3bc5129747bbb53652b49290cff1c87e2cdf2c4b95d8aaee09bc8fbfa6883e62d237885810491bfc101f1d8c636e3d0ede838ad05c207a3df4fad76452979eb99f29afaecedd1c63b8d36cf378454a1bb67a741c77ac6b6b3f95f4f02b64dabc15438613ea49750df42ee90101f115aa9abb9ff64324dde9dabbb01054e1bd6b4bcdc7930a44c2300d87ca78c06924d0323ad7887e46c90e8c4d100acd9eed21e,aa03eb09417435da9e6e7803f3b6eab66faa3d59cc622950d61f9b962b69145ac2255cd752cb9607742092697b1a79d124817ae26421e61d1176764832ed354c 3a12f8508b40c32c74492b66323375dcfe49184c78f73179f3314b79e63376b8ac683f5a51f1534bd729b02b04d002f55cbd8e8fc9b5ec1ea6bbe6a0d0e7431518e6ba45d124035f9d3dce0a8bb7bf1430a9f657e0b4ea9f20eb20c786a58181a1e20a96f1628f8728a13bdf7a4b4b32fc8aa7054cc4881ae7fa19afa65c6c3ee1b3ade3192af42054a8a911b8ec1826865d46d93f1e7c5e2b7813c92a506e53886f3d4701bb93d2a681ad109c845904bb861af8af0646b6e399b38b614051d34f6842563a0f37ec00cb3d865fc5d746c4987de2a65071100883a2a9c7a2bfe1e2dd603d9ea24dc7c5fd06be,d3012f2fb56845b258d7598c0bbb2c97d53b602deae9326dc3678b2228454a1e29f28848ed140c70be85cdea9f99a8dc347deabd46d362ed1afb231146a0255d 1861edce46fa5ad17e1ff1deae084dec580f97d0a67885dfe834b9dfac1ae076742ce9e267512ca51f6df5a455af0c5fd6abf94acea103a3370c354485a7846fb84f3ac7c2904b5b2fbf227002ce512133bb7e1c4e50057bfd1e44db33c7cdb969a99e284b184f50a14b068a1fc5009d9b298dbe92239572a7627aac02abe8f3e3b473417f36d4d2505d16b7577f4526c9d94a270a2dfe450d06da8f6fa956879a0a55cfe99e742ea555ea477ba3e9b44ccd508c375423611af92e55345dc215779b2d5119eba49c71d49b9fe3f1569fa24e5ca3e332d042422a8b8158d3ec66a80012976f31ffdf305f0c9c5e,b50c896f2cdf7f105de751ff6cf664e592fab752d652b06898b9b288052df22f721ad87e702af043e6b1e88929850cbd5698a9172c3932400b2538e401a6f081 08d0ffde3a6e4ef65608ea672e4830c12943d7187ccff08f4941cfc13e545f3b9c7ad5eebbe2b01642b486caf855c2c73f58c1e4e3391da8e2d63d96e15fd84953ae5c231911b00ad6050cd7aafdaac9b0f663ae6aab45519d0f5391a541707d479034e73a6ad805ae3598096af078f1393301493d663dd71f83869ca27ba508b7e91e81e128c1716dc3acfe3084b2201e04cf8006617eecf1b640474a5d45cfde9f4d3ef92d6d055b909892194d8a8218db6d8203a84261d200d71473d7488f3427416b6896c137d455f231071cacbc86e0415ab88aec841d96b7b8af41e05bb461a40645bf176601f1e760de5f,a34a2f27c32f993a7e7007867733547481293c391255ffd0e5ccbe91e1cc749b13525af6adfa0c2d1d64bf87dd65b996ada9111c5df55bff8a5742e54b8444f6 d782abb72a5be3392757be02d3e45be6e2099d6f000d042c8a543f50ed6ebc055a7f133b0dd8e9bc348536edcaae2e12ec18e8837df7a1b3c87ec46d50c241dee820fd586197552dc20beea50f445a07a38f1768a39e2b2ff05dddedf751f1def612d2e4d810daa3a0cc904516f9a43af660315385178a529e51f8aae141808c8bc5d7b60cac26bb984ac1890d0436ef780426c547e94a7b08f01acbfc4a3825eae04f520a9016f2fb8bf5165ed12736fc71e36a49a73614739eaa3ec834069b1b40f1350c2b3ab885c02c640b9f7686ed5f99527e41cfcd796fe4c256c9173186c226169ff257954ebda81c0e5f99,dd5f4b167175d9566dca6c5b1b54a33d02efd02e25e23bb6fb02d878a4415e5e8682c209beac04e9882a272d01e8eb435caa5bcd74fc825c6b9082d041dff333 5fce8109a358570e40983e1184e541833bb9091e280f258cfb144387b05d190e431cb19baa67273ba0c58abe91308e1844dcd0b3678baa42f335f2fa05267a0240b3c718a5942b3b3e3bfa98a55c25a1466e8d7a603722cb2bbf03afa54cd769a99f310735ee5a05dae2c22d397bd95635f58c48a67f90e1b73aafcd3f82117f0166657838691005b18da6f341d6e90fc1cdb352b30fae45d348294e501b63252de14740f2b85ae5299ddec3172de8b6d0ba219a20a23bb5e10ff434d39db3f583305e9f5c039d98569e377b75a70ab837d1df269b8a4b566f40bb91b577455fd3c356c914fa06b9a7ce24c7317a172d,a43ae5dad936697564ae1bd9b8624c5c31cc36607322af40e253f10c285467afd0d08252d2bad76efa52e4775c9c26761abe38212855a80112fe02623fbf0a13 6172f1971a6e1e4e6170afbad95d5fec99bf69b24b674bc17dd78011615e502de6f56b86b1a71d3f4348087218ac7b7d09302993be272e4a591968aef18a1262d665610d1070ee91cc8da36e1f841a69a7a682c580e836941d21d909a3afc1f0b963e1ca5ab193e124a1a53df1c587470e5881fb54dae1b0d840f0c8f9d1b04c645ba1041c7d8dbf22030a623aa15638b3d99a2c400ff76f3252079af88d2b37f35ee66c1ad7801a28d3d388ac450b97d5f0f79e4541755356b3b1a5696b023f39ab7ab5f28df4202936bc97393b93bc915cb159ea1bd7a0a414cb4b7a1ac3af68f50d79f0c9c7314e750f7d02faa58bfa,a5ac23d4a0d533cb9d8a68873f5cb749228458d43ce6bd0536c8733777b5e6e3f28fd36bffe69002a0777ba74fef22de3fac4c818b4842816c6094496f968555 5668ecd99dfbe215c4118398ac9c9eaf1a1433fab4ccdd3968064752b625ea944731f75d48a27d047d67547f14dd0ffaa55fa5e29f7af0d161d85eafc4f2029b717c918eab9d304543290bdba7158b68020c0ba4e079bc95b5bc0fc044a992b94b4ccd3bd66d0eabb5dbbab904d62e00752c4e3b0091d773bcf4c14b4377da3efff824b1cb2fa01b32d1e46c909e626ed2dae920f4c7dbeb635bc754facbd8d49beba3f23c1c41ccbfcd0ee0c114e69737f5597c0bf1d859f0c767e18002ae8e39c26261ffde2920d3d0baf0e906138696cfe5b7e32b600f45df3aaa39932f3a7df95b60fa8712a2271fcaf3911ce7b511b1,07f3bcacf5f78816d515cedf1cbba4ffc58d83aa8687b0e7252faab43e7f59a7ff7415727addf9a22560adb5755a2c6df8c7e6dcaceb53106a714d807aaadbf3 03d625488354df30e3f875a68edfcf340e8366a8e1ab67f9d5c5486a96829dfac0578289082b2a62117e1cf418b43b90e0adc881fc6ae8105c888e9ecd21aea1c9ae1a4038dfd17378fed71d02ae492087d7cdcd98f746855227967cb1ab4714261ee3bead3f4db118329d3ebef4bc48a875c19ba763966da0ebea800e01b2f50b00e9dd4caca6dcb314d00184ef71ea2391d760c950710db4a70f9212ffc54861f9dc752ce18867b8ad0c48df8466ef7231e7ac567f0eb55099e622ebb86cb237520190a61c66ad34f1f4e289cb3282ae3eaac6152ed24d2c92bae5a7658252a53c49b7b02dfe54fdb2e90074b6cf310ac661,13a592b73ede487036c8816bd6fc6cdc04dc6133409a6ee990584160518f9ef573264cf04d38a3ba75d150f4f026f6df8936e13c8f4f3ecc9ecbc43fdfc488a4 2edc282ffb90b97118dd03aaa03b145f363905e3cbd2d50ecd692b37bf000185c651d3e9726c690d3773ec1e48510e42b17742b0b0377e7de6b8f55e00a8a4db4740cee6db0830529dd19617501dc1e9359aa3bcf147e0a76b3ab70c4984c13e339e6806bb35e683af8527093670859f3d8a0fc7d493bcba6bb12b5f65e71e705ca5d6c948d66ed3d730b26db395b3447737c26fad089aa0ad0e306cb28bf0acf106f89af3745f0ec72d534968cca543cd2ca50c94b1456743254e358c1317c07a07bf2b0eca438a709367fafc89a57239028fc5fecfd53b8ef958ef10ee0608b7f5cb9923ad97058ec067700cc746c127a61ee3,c2fb590ab74e230b8fe159892f94de04ef7adaa02b918d4994f996538d257f5a80c9b3be8f410170b0c5cac3f507401220881c5e08d8bf0a13247170d39085bc 90b28a6aa1fe533915bcb8e81ed6cacdc10962b7ff82474f845eeb86977600cf70b07ba8e3796141ee340e3fce842a38a50afbe90301a3bdcc591f2e7d9de53e495525560b908c892439990a2ca2679c5539ffdf636777ad9c1cdef809cda9e8dcdb451abb9e9c17efa4379abd24b182bd981cafc792640a183b61694301d04c5b3eaad694a6bd4cc06ef5da8fa23b4fa2a64559c5a68397930079d250c51bcf00e2b16a6c49171433b0aadfd80231276560b80458dd77089b7a1bbcc9e7e4b9f881eacd6c92c4318348a13f4914eb27115a1cfc5d16d7fd94954c3532efaca2cab025103b2d02c6fd71da3a77f417d7932685888a,02951596a13a1a41188a4a1d6346f7eafb60a2051ea67c63237d1a9b79ec4733f33ecec223dedd946b78387b6f2df5e9ab6af7dfbabaf80f4fcc94fa087275e8 2969447d175490f2aa9bb055014dbef2e6854c95f8d60950bfe8c0be8de254c26b2d31b9e4de9c68c9adf49e4ee9b1c2850967f29f5d08738483b417bb96b2a56f0c8aca632b552059c59aac3f61f7b45c966b75f1d9931ff4e596406378cee91aaa726a3a84c33f37e9cdbe626b5745a0b06064a8a8d56e53aaf102d23dd9df0a3fdf7a638509a6761a33fa42fa8ddbd8e16159c93008b53765019c3f0e9f10b144ce2ac57f5d7297f9c9949e4ff68b70d339f87501ce8550b772f32c6da8ad2ce2100a895d8b08fa1eead7c376b407709703c510b50f87e73e43f8e7348f87c3832a547ef2bbe5799abedcf5e1f372ea809233f006,5aa4e32f0ea3e853929bf64acc9565a01300bc007063b939f6dbbe9cae0545ea95fbcac32575aa0727ee4d937071e6b3be74e23fe76fd63ec05c7f7d8a407af0 721645633a44a2c78b19024eaecf58575ab23c27190833c26875dc0f0d50b46aea9c343d82ea7d5b3e50ec700545c615daeaea64726a0f05607576dcd396d812b03fb6551c641087856d050b10e6a4d5577b82a98afb89cee8594c9dc19e79feff0382fcfd127f1b803a4b9946f4ac9a4378e1e6e041b1389a53e3450cd32d9d2941b0cbabdb50da8ea2513145164c3ab6bcbd251c448d2d4b087ac57a59c2285d564f16da4ed5e607ed979592146ffb0ef3f3db308fb342df5eb5924a48256fc763141a278814c82d6d6348577545870ae3a83c7230ac02a1540fe1798f7ef09e335a865a2ae0949b21e4f748fb8a51f44750e213a8fb,495b2aa2103159d9a937e9dd56b059aca98a5e3cb7b59bb690dedc00c692e9d7a18614a73d12e07634b209cc630d1818b09f1076a941ff80474493e3d42b9812 6b860d39725a14b498bb714574b4d37ca787404768f64c648b1751b353ac92bac2c3a28ea909fdf0423336401a02e63ec24325300d823b6864bb701f9d7c7a1f8ec9d0ae3584aa6dd62ea1997cd831b4babd9a4da50932d4efda745c61e4130890e156aee6113716daf95764222a91187db2effea49d5d0596102d619bd26a616bbfda8335505fbb0d90b4c180d1a2335b91538e1668f9f9642790b4e55f9cab0fe2bdd2935d001ee6419abab5457880d0dbff20ed8758f4c20fe759efb33141cf0e892587fe8187e5fbc57786b7e8b089612c936dfc03d27efbbe7c8673f1606bd51d5ff386f4a7ab68edf59f385eb1291f117bfe717399,217b5a985bed80008274470e254443238c5aeacbc7ee2289f0e63b7afe6d0f395e2361fd6d9dc33b4f54f03ff56f6b264976161d80091788ee9d262f147a35fc 6a01830af3889a25183244decb508bd01253d5b508ab490d3124afbf42626b2e70894e9b562b288d0a2450cfacf14a0ddae5c04716e5a0082c33981f6037d23d5e045ee1ef2283fb8b6378a914c5d9441627a722c282ff452e25a7ea608d69cee4393a0725d17963d0342684f255496d8a18c2961145315130549311fc07f0312fb78e6077334f87eaa873bee8aa95698996eb21375eb2b4ef53c14401207deb4568398e5dd9a7cf97e8c9663e23334b46912f8344c19efcf8c2ba6f04325f1a27e062b62a58d0766fc6db4d2c6a1928604b0175d872d16b7908ebc041761187cc785526c2a3873feac3a642bb39f5351550af9770c328af7b,293c551e753bba7f314dcb93a0fad94f3f5dee6ed45d765a708e6fd277601f03f6c905d7e1eaeaec513cbbbd672b817f6d60fbf02c20167d7f4b7b84afeeb3f6 b3c5e74b69933c2533106c563b4ca20238f2b6e675e8681e34a389894785bdade59652d4a73d80a5c85bd454fd1e9ffdad1c3815f5038e9ef432aac5c3c4fe840cc370cf86580a6011778bbedaf511a51b56d1a2eb68394aa299e26da9ada6a2f39b9faff7fba457689b9c1a577b2a1e505fdf75c7a0a64b1df81b3a356001bf0df4e02a1fc59f651c9d585ec6224bb279c6beba2966e8882d68376081b987468e7aed1ef90ebd090ae825795cdca1b4f09a979c8dfc21a48d8a53cdbb26c4db547fc06efe2f9850edd2685a4661cb4911f165d4b63ef25b87d0a96d3dff6ab0758999aad214d07bd4f133a6734fde445fe474711b69a98f7e2b,89fe6314a0246eff3bfd07a95fe239bd5071467f53799175b226daf6c3db618cad4ca1c1af64bf5793f03254f560e6335beaaa86bcb9e961f214b2ae97b47af0 83af34279ccb5430febec07a81950d30f4b66f484826afee7456f0071a51e1bbc55570b5cc7ec6f9309c17bf5befdd7c6ba6e968cf218a2b34bd5cf927ab846e38a40bbd81759e9e33381016a755f699df35d660007b5eadf292feefb735207ebf70b5bd17834f7bfa0e16cb219ad4af524ab1ea37334aa66435e5d397fc0a065c411ebbce32c240b90476d307ce802ec82c1c49bc1bec48c0675ec2a6c6f3ed3e5b741d13437095707c565e10d8a20b8c20468ff9514fcf31b4249cd82dcee58c0a2af538b291a87e3390d737191a07484a5d3f3fb8c8f15ce056e5e5f8febe5e1fb59d6740980aa06ca8a0c20f5712b4cde5d032e92ab89f0ae1,7690f703e894ee22d4dff55a7f8d5021d5f17b729f95a59c4d55cfb225c67be105f2e7cdf56d140e566648e9e9c39bbed96f985a6dae1f21d8ba500f7fd40edf a7ed84749ccc56bb1dfba57119d279d412b8a986886d810f067af349e8749e9ea746a60b03742636c464fc1ee233acc52c1983914692b64309edfdf29f1ab912ec3e8da074d3f1d231511f5756f0b6eead3e89a6a88fe330a10face267bffbfc3e3090c7fd9a850561f363ad75ea881e7244f80ff55802d5ef7a1a4e7b89fcfa80f16df54d1b056ee637e6964b9e0ffd15b6196bdd7db270c56b47251485348e49813b4eb9ed122a01b3ea45ad5e1a929df61d5c0f3e77e1fdc356b63883a60e9cbb9fc3e00c2f32dbd469659883f690c6772e335f617bc33f161d6f6984252ee12e62b6000ac5231e0c9bc65be223d8dfd94c5004a101af9fd6c0fb,65e415c7958a47fca9eed3846fd1283afeb38e5130f57ecd99dcb21bedda856e3b5fb9f839e579c5ea386eaca8cdc0a9549eaaf6ec452dd6cb5212b709bf5c59 a6fe30dcfcda1a329e82ab50e32b5f50eb25c873c5d2305860a835aecee6264aa36a47429922c4b8b3afd00da16035830edb897831c4e7b00f2c23fc0b15fdc30d85fb70c30c431c638e1a25b51caf1d7e8b050b7f89bfb30f59f0f20fecff3d639abc4255b3868fc45dd81e47eb12ab40f2aac735df5d1dc1ad997cefc4d836b854cee9ac02900036f3867fe0d84afff37bde3308c2206c62c4743375094108877c73b87b2546fe05ea137bedfc06a2796274099a0d554da8f7d7223a48cbf31b7decaa1ebc8b145763e3673168c1b1b715c1cd99ecd3ddb238b06049885ecad9347c2436dff32c771f34a38587a44a82c5d3d137a03caa27e66c8ff6,d6542a2f0654b9b874a627d3d53764a65b1df2c0cec3bcd0b4b088faa1095e54f1799757c4371f8d544e298d600e21e11b2f90d295712621231a09c58b05a704 83167ff53704c3aa19e9fb3303539759c46dd4091a52ddae9ad86408b69335989e61414bc20ab4d01220e35241eff5c9522b079fba597674c8d716fe441e566110b6211531ceccf8fd06bc8e511d00785e57788ed9a1c5c73524f01830d2e1148c92d0edc97113e3b7b5cd3049627abdb8b39dd4d6890e0ee91993f92b03354a88f52251c546e64434d9c3d74544f23fb93e5a2d2f1fb15545b4e1367c97335b0291944c8b730ad3d4789273fa44fb98d78a36c3c3764abeeac7c569c1e43a352e5b770c3504f87090dee075a1c4c85c0c39cf421bdcc615f9eff6cb4fe6468004aece5f30e1ecc6db22ad9939bb2b0ccc96521dfbf4ae008b5b46bc006e,ec983e787628b94c87fff8d57d2d058667d12f5af458bce79bb7844fb41d9c55920f593c8d8730eb8d54ff1d51cd8ad2f1c2a0f7d6b299a21266744e47d142b2 3a3a819c48efde2ad914fbf00e18ab6bc4f14513ab27d0c178a188b61431e7f5623cb66b23346775d386b50e982c493adbbfc54b9a3cd383382336a1a0b2150a15358f336d03ae18f666c7573d55c4fd181c29e6ccfde63ea35f0adf5885cfc0a3d84a2b2e4dd24496db789e663170cef74798aa1bbcd4574ea0bba40489d764b2f83aadc66b148b4a0cd95246c127d5871c4f11418690a5ddf01246a0c80a43c70088b6183639dcfda4125bd113a8f49ee23ed306faac576c3fb0c1e256671d817fc2534a52f5b439f72e424de376f4c565cca82307dd9ef76da5b7c4eb7e085172e328807c02d011ffbf33785378d79dc266f6a5be6bb0e4a92eceebaeb1,81950e7096d31d4f22e3db71cac725bf59e81af54c7ca9e6aeee71c010fc5467466312a01aa5c137cfb140646941556796f612c9351268737c7e9a2b9631d1fa # EOF pysha3-1.0.2/vectors/shake_256.txt0000664000175000017500000120044112711152670017412 0ustar heimesheimes00000000000000# ShortMsgKAT_SHAKE256.txt ,46b9dd2b0ba88d13233b3feb743eeb243fcd52ea62b81b82b50c27646ed5762fd75dc4ddd8c0f200cb05019d67b592f6fc821c49479ab48640292eacb3b7c4be141e96616fb13957692cc7edd0b45ae3dc07223c8e92937bef84bc0eab862853349ec75546f58fb7c2775c38462c5010d846c185c15111e595522a6bcd16cf86f3d122109e3b1fdd943b6aec468a2d621a7c06c6a957c62b54dafc3be87567d677231395f6147293b68ceab7a9e0c58d864e8efde4e1b9a46cbe854713672f5caaae314ed9083dab4b099f8e300f01b8650f1f4b1d8fcf3f3cb53fb8e9eb2ea203bdc970f50ae55428a91f7f53ac266b28419c3778a15fd248d339ede785fb7f5a1aaa96d313eacc890936c173cdcd0fab882c45755feb3aed96d477ff96390bf9a66d1368b208e21f7c10d04a3dbd4e360633e5db4b602601c14cea737db3dcf722632cc77851cbdde2aaf0a33a07b373445df490cc8fc1e4160ff118378f11f0477de055a81a9eda57a4a2cfb0c83929d310912f729ec6cfa36c6ac6a75837143045d791cc85eff5b21932f23861bcf23a52b5da67eaf7baae0f5fb1369db78f3ac45f8c4ac5671d85735cdddb09d2b1e34a1fc066ff4a162cb263d6541274ae2fcc865f618abe27c124cd8b074ccd516301b91875824d09958f341ef274bdab0bae316339894304e35877b0c28a9b1fd166c796b9cc258a064a8f57e27f2a cc,ddbf55dbf65977e3e2a3674d33e479f78163d592666bc576feb5e4c404ea5e5329c3a416be758687de1a55e23d9e48a7d3f3ce6d8f0b2006a935800eca9c9fc903d86f065367221067658b4d7473ed54800d196fbe1089811dd9b47f21e3698b1573653adad231c39f145b586d6c0133378416138e4423f7af7dacffe965706a3c49024002b53ba05871e3f066694b163630b0053be41fa45d4317eaa84214254038a37a9c83d62eb9ea6e6acafa6bbfe5af9f389690d5a9e27bf97c1b93d93ecf36df6da212e12b2448154156e94687336b6da91e368512b9f34c616166542923f3618640d930f922a3dddd2f87920378541446f2223f593931bd1ba02e2907ce3404621f26b900d05a1119a9e4934a7cd818dd9237445bf50475a011ea0078788801d21dfecb7a2bb294e4956dfa71d8cc472405342bf80120fe18a551d88d6abc24d83f077bfb25ebde5f4b03678d677ee646dce3496d5138be108782ca5a00aaff3cb4bb873ec0f2e932dd74847033ec5f07254e3027b0ac12db7d6d3f90b53d8a5bd63b99c3bf5cd38b453d7cb12d0ae2bf1cfd3ee88af71bb6606b0b791defc2d762c8641bb8319fe17321eba407eb744699d92b35abd79f5b9a85408c93d61233fece638023875aa02b9edbacc84003a28cca2d55a0742d635fda888905986ca01c1e6420d49ec25224d84e915dfd1638a492282f1fd053770168953c 41fb,b64ecacd5f7499acc085c908d35dcc1fc0131816f28d360592e1265079f92a5f844c4bf6aa50d98d52720797e8c992f43c76a73fd95f9bc4cd272157842ada2518190fca342dc20d0c57cddf01b3ddf77977eded63445e40be82df8d26db629a2d307ee9fe28d2fe557e3971858c6d67c42be2cf44dd7570521ce06474467425b7aaae39db90945bad388009ed5715c684bb4e4981eea324ecf66584ad08d9f27c6a4dcf615591857bc7364e8a7c136661ae5ffe828c734dd5ea5a071276e8477b8525e02b7b445d91cc6e37d58740dc2b069be6d92e7df95c1ab52b76f7761ae34328962eac7156e460b3c04ffecaec8722a56e7373285e42d4cac5498f8d7dd5ecda9f9973a32f8d425171e1390bfc812c9ee4d4ab8fa9a0d93aa90a4c258fc64d77bbcf49977e87c3810c80c4585168996a31f446f9391a193b888cd321e22e9368f4f11495fe124141c04015532345d7cb0a13a4dd9007d737b3a176a88e5fc153d4ac2e8cd641c40c4261bba70e1b87114030ff67cb22acec90ac288d6b59d25b00038468b4780254fac4ef158ec2cd52c0ab9217eed1ed0a5e7b4c4b3a64b1824e2b27aa53398765d5352bd1ed0e9c7b3fb264d141741659f7d8fd0eeec9f9163c42afdb540d5f2c87833880a0c942ae4ccea7fff2f4c798b8aaf24c33be8054a09459a3af7200d555334241709a18ecf88ce93c99234d6ab0285916ae 1f877c,f6bf0397dbfbb20e4ae30f0a47fe976cd109b3aa09b0e3f29f560e4ed333c0d083326b03f6eaeb57e277bbfe1cce36c499434d838cb4c8cd8b02a87790f4a6717b22d46f9220391c420a1a1bfaa9ed5b85116ba1d9e17ff16f6bce6704c80a49fd9ac42689db0996c6bd3266694077c6de120043a827d44979ce8ccc6aa7e5308eba64acf9ffff51d36bc4401f8117d4b96340c62d106b0a6445f01987f9c4c0a420e1a9baeb594bcb1bdbfe59b6065eb91cbeb252473c7858eca475e1c81e8425c7e2c1706c4c4abb3aeae39332479ecdefdfa93c60ec4007a51c5dd093b527264155f2202e01d2083d27d71a6f6c92d839e6ea7d24afdb5c43630f1bd06e2b45b2c0d0ad70bda111363298ab9754f26db00a3fd93d72981dd463defd286320a274f5422e9400dc6e7c78d75534c75af6b0398596eee5048919b8fe33467c2b7c227bc88994b28819815d821dc27bad0458d57f40b12a8a933729a0f6bae74dbd150325d14c302835ab95dabde87a2acee9347609a6175dbb538fdfb278be0b3d5f062768f9e0eb1ac9c36b4e05e3adfca73981cebaf6e047a18196ea78846d9a782b6e1cee2036866dbca749644e74ef5a4538d4afb1706b360f734814313d20a1ac626bee7ac0fe9f277d48bc50816ac9743a61e32f8b26ca6f4dc81fe7f3558aa2f18586d89a8e3070868c76b4ca4727f541072dcdab3d547d52abb6f356 c1ecfdfc,ce7fbc15503986e3b84530d84a16ef64332a6ea57e354e9f2054bfc2aa8891f94b4fdd42fd227c94b33f9ad45cf3982239f81fbc2cbac7809f01e1c294073ad6d2821c1283c5c427f41fd46455ef7b4ea0d6d5e249af95fac80a8678c1a5318443e63122ddfed2591fc690527f97a09920941b02439af3ba36b17fd588e187fcbc1ff109ab4a9ecfc671926ef0cc9c82ee06ec6759e2758a8859b8fa9ddf46d6c049621ff589f3ff56c9419d6f48a68b68fefd068abec24824d7fc150277c2439bf78d15d59dbaa2cb17e5282e6e9ed744841f4a4bbb778cfeab0471ce850b2a2f948db3926f733ef7b3aa9ab8ea84278dca62b0691f5dd13ea11660a8e2fb5cd8ba74a352c044e7219e750f29b62f94ed268a68029b94b64f3d4f2193a7fc69ed34a59657471f04c4961084ebb581abcc9d50e3674a7debb285fc7215bf6606db1392a7f1619b347a4d07d230da07811fde2aebe45a70178cf841c619f712ef26beeecc4183a1040076e73fcf6fabe5c25a4b71d564a97cf3c88f1856d9c8b42e94f746ce4605d2aaeb56d1da5527598e17e5680d309788e09910beb74df7d3c3cd4ec680083f5845f4a1c15070e57979c01b89df7be64435ea4817bc0ad23acca6cb878f7131f02f9215e2d5c12cf3b4d24b29620c891a54ac8be6e3dec08397887de0ea86b81a5459b968fbae18b4b0324de7e7c1aeefc7598644ce1ff8f9 21f134ac57,bb8a8447517ba9ca7fa34ec99a80004f228ab282472841eb3d3a76225c9dbe77f7e40a066776d32c74941202f9f4aa43d12c6264afa59639c44e11f5e14f1e5695208db78f37cf3ac172469de67b80014d1a4b968a56f855baf35a275b8ec77b9ca591257aa2ef048663cd05d76b72cf3a9d2bb44b154b16e95eb8b61bd8415a867367f0031bff5d49237157c197473309fdaafc8146ab9fcd4254477b052ab306bb575eca6872863b5f43f026c2be3289e857d50441330ec02f6ab4c6329b18d3af0a1ed9db70f34016ea0caff1f0ef08ba6d26566df6cce9a457e1900fba3338a771e40cfb39581f16019d521e4f398539c4a6f2ca22ecf9158b96064c0f26b8a076e58b5f0ba3187342a5c9a5569e6d08a2ac27258cf0426d995724579c723a0fa8269b4239026a08d88738156943f1dff6e0fff5e4696149436cd97732424366626ce7b67a3bbe480e425b51872aae7ce59e70995c194e00fee82119a4320a4b91158db65b83195c9b799d3eaf3cbf8593d11dc67ee8c0cd7ca4fae69d9f46a7e70186a33dfaad510d8def82aa5710b0abb70dfc396ecfd33f56f66957b82a220d1eca09166f72358a71054a179c1961b64f26a3d7aafb030c28a73337862e8364d3f562b324ca2ebef58b7a8f089213178c8d0addb5a18022154cf010c722c279ae60aa984597ec6542ee1abdcaae8d5545ff45e781abc7145ae2a31249 c6f50bb74e29,69401ebf1d4c7ea500be60ef06783dcb009a13b4fcd8b341e5f2e40f39e732237e86716f26873c1820bc36d20f6d5e64a9c5e636855305cbc3f4be4a9905b5f79fb769a794299eafa8e81ffa51bb4d602480b1c40f9ee9bee017d5d7f6de68c8a79ee92a20b9da5bd3d01bc565cdd3e5786fc4d48f719c01cd6d3cafcd500f4f768600e6891102ffc10f1394e3a40a1bd54381775bb400ee6e20b95420fcb2c86bbfcf380bc95eefca33bc8de823e13b4b04a7ae1fdeb8279f3ef3e4fd50b2fde530b0d4c8dabda6f225a4121a79fed79d8a013c9df1103abf081294fcbbc5abf20ba38e0075169a9c13cfff94aeb271a46875710a60cd78915c33892d7fcd6c97a1c74846adda847f58adce8ef762d11c4f15ff8b97f9bedc97e1a8ae554c0b9e66ba1d48bcfad0d56f91b65e25b03a5e48cf4db0dbc467bbbc1e037743991ac72b4b259d65013a2708eb825dfdc65093a4f4f5e98427de7c60138467d8900adfce1f27408638dc66957d27cb774bbaff0bedee0f6553bcbac9724a20e8ed0ce6b2f764e4f0d80e4521788a5cc88c3d36f19925ac2f205cf6eb7e6d6888eefd0be49bc8bfd8a80b9e05dc7513beba7be52d39bf9bd2b2dcd03fdc8f8e7f90a83dab2ad85f51d040ba0f1c0a9dc38e929a50db7f99a26836612e601c6e4346e5e895ef4ccfcd6a5cc3777fc11fa64a9ac27d2cda67e29cb18a7e99e2ca0730c6 119713cc83eeef,c02561c12ccdd167ca959d9756cc70946f7fed8ba705e3edc433d3c45d9299d0aefe9e8e25d602c4db0d14ecaefdfdfed2de134ac5d0c4dfc02abefffdd7667a434936151d529a93cb266100b94ad0449597b1590398a1a63c42649385b4cfaa828c89037e0f97beda8450a68520143889a92c258645664eb57cba01c3b1134318e11a1848d912d0d2cbaebd59a71b52495671c548522f401394fe48db49956c03044cafbd40371ef657f1aa86e4969459bbbd21dea563a51482a47147ef85487a5ccdbc532bc2aebc3265e71bd8d56f4521cd93354a73d175fccf5aabef2768de2d8e851d4fc21ff032829411db2668300853ba5f8bb1ffdce3ff59197bd1833d2abfb8c3027b36b21969f7e36c3b6f3faba9454addecdafc213d347a44b0d364997a9e608bcff3d2004139cd05005b9bd8fec09e5976eab977b5de8e39373c10d9ee2d2ec196b33689783ef3abc3dbceca9bf33e8dee9a1afdeaa71a2fe42a3b0c60781c9a2d5714278cc7cb349a3b6e7251b96e4e2fac606b459c28ae81b551168d28acd01d4a08416b6714d8f82485a1c6d5348f7dc4981aa38e7f39edabc981022c4cd3345383d8c25c929fbf66026f91664998bc34f9689375d06ff95d208d4acc7791633b222acfd3ea26f8b5c4858997a1ff77050f280ac7b7e5325abe9e55fc27ea8ed1d9d32194b0c5d8807f94ae6f737276065ca08c323e9ed421 4a4f202484512526,8a804fc3a4fee6cef6808c756a17bcdf6b235808493fc78e79701e59a9e9a67d60f0f256aa69dc0258a2510f9936aee2bcbd0f679696f439f37bf9afb170d44a58dbcf71eff14cec1e624d3d8f1ddddd3e33421b1e305c794c2c88fcadf9d7c51f52e4352bf9c9c895aa457f5449e82fb36e2a64d1aa69771ef3d675f09030a95653837ab2237daa7fcec36651355b2507713cc6a2186e950de82dc699122644193f8f231c607ba7f3bdd0a214b4ec0155d30517f681fdc2a89d3143040be0e0b6dc7e5185c723464ccaa2fe321af3b4174283355fe3d1ced518e00b6063ddd607b166ba388978294244ea8ec773a528003a04914b76e9be3337d806ca20c584b2bb66afcd144417e3d93243f185d26dba90ea39259c7f23b8a6427aa8a7622f277605f4a463f78a0c189c8de2c553ae20773d7cb4f7e26a13f4204b3752d9ceddf29849798479a4bd0d7ce4d22cc51f88127435bd161f026b1811a723e786db1dc01f921fe076c3532fa969ef1f8993e0a4fb6c17597d8db38dd7af259e322751cc0a1cca2ee4940f4ea56ce9179941cf4696256cd04ab853266d12e7e679377d54e2c2f24832974c573192dd2fdd4da5efd72114109248b03f0ae03123252ffff977bde87af8d8022c4c51da68efb87abeeda7a72eb4d0d1a2eb65ea4cebc7ccabf3787b9be98e14e4a273635f69e3e4ba557a1a42d1bf69ebd359b895320a 1f66ab4185ed9b6375,7b5562aba86e6329693ce1caab2506af93ad28be4de045e66a7b277c4dc3c2c9e698ad5f6d8826230a38fce87142dd83b28f055fa7a9212f5017374a7eac5bb7824c1540597de34be9ec894eabcf751bfd5de029a1cada7e599d433bac0499aad9782579d28223a5d16264efbf55eb1370748e7dac4b56255468fa9694a93c4b3759f691d9a4a08b53a15f61faa1268e38aaeb43b3fcdbf0ba003e2037eb52c8e9931db9c60ffc1d1fcee7663d1017ab6dcc1b92472a88a3d568af5aff930aeadbae751753cbf2f987338deb1aa822fe28788866073319662438b6caf6bd8d79de14fdb6d30f7983f5711177765d7d5e1efb610fafc9de733c9db3fd2f1c35421d29cb96f87a0dd1e83ad19acdc7c2bf7a6f047994a96e6d91bec34aaaf18aab7b32a0b379a60f12afc697770cc6039031c13b5dd66e0d368609d3018accfb02fa4973bda707cda096d712faf59b43be3ef5eb7c227530c987dc4991955796b2f588359112b9e7566ca785cc5706ac333d12e2da37a97a13b69540084d1a5908ed3baf73a0e1c55a6bd036f1342f8ec671593b9b555defbabb3364914e4396d6e2b2adfa951a6a263aada6d879b4ff330f848d2598cb418e530bc63bb11e7a247c5a2c21d5c2a34d23721955567e4452df9f5e2108c1fea8fbf672422bb3b85c7c5664b918d3f3644339367cefbe609a9b00c250111801c3f365ba752709b76e eed7422227613b6f53c9,c92fdfea927eeee73162c436c6a3fb97291c33787bf7c2cd80decf6004c043bc4509a2cfac1fbeeb0bcbc7c2974b168af3291dee1af2d0826935da79c5bf7cf3a211f347c2a44630dcc20e964e3be24a20766a2ec50310f4b1990a3987fd8d144d3a6f091c6f8ecb7b2069905a7a1bce8a49a9779e9132bae521fc44689f7861b7c735815448984d6809c2138ed64a45c4320e09bf459a985a41d024dc4ce0d95681dc9379fc4dee3c024436e7a949589a74b434f6b5d5742501d1e4761e0df89f4f1943614c5682086d31f6eb2b65a005fca29b48777748132a15bce74228e5cdcb95c05f51730e8e27e9de71d582a95ad3e78e64b978d872b91a88c6175ec3f92d5aac14bcefd0f6d8d5e2e19de467c530fde86aaf6fa5ae0254ea01d70860278c24be7f7c52669aeeec52c606fe664d7a8e857eb64948d663dc11e9de33a410dcb3eb61fdf6e9622b66b9b9f4a39c4b578a8d346906d14aa713d2b266db5b85aed05186ccb2809b38bbb3c9f99c2861793fc70d972b51f2199674e734d46fe0e8eb675777ac9e4b578a7de4dcfb5ac1e7a2eb0067237b985050d66885f85ce3410467b5ca374a9f420d8ce5da4a4934fe78065541c53d071c88f0ff132eeadefbdac5e98251c597930cdb32d79656eb44f95c78bbdafaa59b7e36da08a58af3daee99536efb56319643ff422cfb53d152ea302a6458f58b5eb9f2c81c31c4 eaeed5cdffd89dece455f1,f772deceff020d1be280e7f93df5056577e78d104cb1e2afd422b021c6206d94af56eb9404f8294403173e4a6932a1576bcc47580b6ce2cc80b20ffb274fac017fa05b3d804a6cd8e874cf258e5d46ccfe06d76dcc18c9874cd3b7543973ebe3367ad38e51f0a46b92d47a68018a819f2d90724ea9f5fc51f444003757b028fbf96f5413296aa9bb8532773eb8cb7cfc803578faf52082d4bb8af606301fa927a94fb62a73e2e9fe367e782351185516c181aa674e19301a38d1375e1658a181dbf927973c02207bac3a0b65c0c6904e8195a3c6550d13cfd46c1885987263e82ce56485759bffb2647f420625f2b483c2750fb0b4707a2014ff57b1a42375b37b444b0811ced4cb93d5c45551d5e1c8df20bccd9437b7e439156dd9ad4d905393afac1347ab2979811cd1beac7c454c4b7166b85bfe52ff6c4905c55d83c15c3a9a7760bda9fc4b90ec4aabf9cb3660a883be7137733a1477971d479049268add74e0c8210b1a9faba84fb940f62b1193ccaac3f020d10ce14dd8c058c46bc35846c07a10dae9c03c3edc323cbcc83987df1fb2abd141c7c0694624aa68df9c306d2e179fb4d603f42c99ea369c90c176495104fa7de772ea71a9fb014b467ca220f9c004f287f8f0786b3d47c9daf3feee80b2ce4a92aeb0ff8e8c09448dad76f5fb01d6997ebb139d7fa5df8c0bf12bbe0af2b6e354c4089f32b8c5294634 5be43c90f22902e4fe8ed2d3,00f3525289b33fb3c179398ec76f2e31b824a532b2aa6b2da6ffad5287e07f9f9a2fdd2f2032ac202119ca0a01b7c9c6de724877ffc874d5e578066a4be43757bc2d9b09aa7b483749e0f88582cf9cc3d47b8a0a98d70ac793326fc5eb6533f00eec34bfab3518ff4e98b79582621c2bc7bb7ac8afaa8d60df3f072fcaaf514fa7fd9efe2b1fcd3cb96a7f70a87436922584b93ef74bb0325416eefec14efd150432366c1c1e5f7949c2573cde16a24c42918c919abd988f8951207149f873f78d2793fd642f3b3e93041b8855b8ccf62a2f6a2b8ece4dc704cf693069bc789d470fc4938ad23d5b5dd20d13e31345b2169f750e69c4913e3dfa1f1e54a3019a8333b6648659a6a2e93882fc4f8ae0234fd149123d831f148213f578e8961dd07cedf94907abadf7efd84500e501bf2588e3b155e7d24815da9584595efd2fc6f1768f651c1eb10e00295534f89a8dde9d37c05f7e4ef9ea236b615f82bfd07e7f6feb1c62dfcdd4f598bdfb3cbb0fc3259ed96d52ae156b20f0f6ebb089127cf98f045bdcb12db84c2ee47800ce36ab10f982231fe746d32fc5002700e264aaa6432e7bc6bf4f4af41e82e256c3dd6ddedb24b3607015cddf78bc1ac56f835d03d8297bdee57f87effbd066c3de372f285eb2e7d7359684bd2072b090bb78c3ee71a45a0cb7c22eb4081ceb3cdb89cbaf3d124ad86a9a830457e273c8ab8b33 a746273228122f381c3b46e4f1,1cf1698f0702653368463a9eef102e8588fd5e711f4ba16e3798d7c7730acdce6c65ea3849cdca9d08437bee09f78d52397c92d0f00acc9d5e9450213f337b9a75697e8fbbddca67ccbb7f8b2cab1209397a4eda1ba9ab1b44366e4f7a0d2db47d5480247194d486d63d72fcfeceac8cfbdb7f8784d4cc9214b3893fc7eebc97a33b9ddec9605484c96bb77cae4d212f16229dd507622a01c861043320d9c06373e1e0d9649d95b42a990b0b447adfbd307dad1394c30d12e010ad5f6c8acc729904ccdfca2162c32c5ee5654316e10a97a192ec23baaf594b711277a301fe6eeb4b54903d1bb736d4788f65dbefecb4761685c683db56c05d0f26f179010cb323c2fc8b9a44dd4a172be2228c6b0a0779b0637e6b5de047776597a17fe94d86aaed911a1ddd27f8f61710cca8c5f38504a50f01304b559419f06b5f043dfe984b4dea2db6090c1a836f26c0728048c0d89401722b9576577f11700bbc5a6bbf1c23c687bb478112da0dda52c1ed622d0227382f76edae51db2ff14c098bae8d25a2a53d98508da98c99aecddb7ead8da98ae41bf21a59b3fe4b3dd68f0fb15242ef3056fbf77462d4ff67e0b344be02ccf03fb98f6dd5f6d306a4c2b2451ec8aa2933172689bd11a7e3911b236905d6d8ce1c030e754a0b493cfbaa39123b0dc4b7085f9fe5988b0447b706cf226edd34b644bcb591a002a08cba030f6b1927 3c5871cd619c69a63b540eb5a625,413131add0dba2b0a48443d3399896ad65bf5f4426d234ae20c9d2db3d9dfab81401d7722842a58312f837e7de13069802f58c7ce9a3ad1703e9c7170d1ae751023147464cf8694515ab5e26836b935ed493b9d66d9229bb0b66f1c5ac721d8aec1f883dec33d0380ba79be198a6aa1f2cf555818d54cd28c0682eb44fa0f1810df50a8f005557c9ba52f02d70ef769ee7724b852a94e1710c6758307ffee309c8f884dd0597012679f7c97cf59f8a41b06a845ccdefd5cbda268885a2781fee48fe4ecf4d0559868607f3524aa25d1a5cbe5c33fe0e8e8e47b6705203d49cae7f1749da49cbc469b8870c1cd7d029f6398cf7aa0d3114f56f78885093a59c0c188adaa40976827ae1000bd6ab4c7a2154d80ac6786cc23adef333a2c538152584045a87e942b8033c565506bd319ad99c85a4655f6e47979f55b5f9f9822f9a338cfbaa50d580e27953ba9d13bdb3fdb480226edd2a8f8f56c75015714a51ea63c73fffac63dc3fc6fb8d509bc40b87b9332fa37daaa441d05984ba56781ae25d324e508b300e6b07629ee5bd2de33d3bbe6fddb699e35c324fdb521cdefce30d01570ae82803b0b54a7c1af4b45121461a848477c11f535b700633d88a68ad2abd9afd09a4ddc1be5511b574ca6e525eac7a6cd7c26eed3e5656142ab8b24d97a76fab94edd8af21ca7170a98660a5cbda15925e67c5c579363dc4f6970c95 fa22874bcc068879e8ef11a69f0722,2feaf391d45b2b8632ea10806e35d465f2f767dccea9304502a4cf9cfd85f7cd46bf0e5cdf2c31a43c6aadeb0c4683b3fe54e042c014457d0542a8ac09529c1931fd1ceeb0eef6c5a1d28f7fd1e7998537d78b9dcead530b0ab257e273432d3d7205e451cefc6906451dddc6b3b0da1d1f2df3f043396858e7619b8a420d0cb2cdfbbe43e19bd2bc670e2f5da51a1b8141f7fa0fa79538fc909d31847c46653c8184114505c51c49c844ec18ae5c6ef7820400d0859b3820fed6b023d1a3455c2bd6e1a7d25169b58bb71a82107893f27e994ba04c79d209ed97e359d02b991e402cf0d14eb61d4c1ed931b4526d63e9e9517faa5bc83a23521620fb5b9e9ac1cdf45536af54e567f5d9bc31196d23c58c0c70939497a3e11fa544a37991b5c06b8d7f57d3057e83c3eaf1758ebd0f569e5a8979d340740a9fa1ade5a9d956f171d9a0d0efa871e98ae8d5f3d5733fdf0388fd8d9564e6c267c6438f0f78d7a224dbadf7e6e645ec6952b96a9d6fb441cdd640b576b2c92bc7c5fb11ce767b0105de7907dc00dd4f8f25dc85b6a84083500f3127708ecc1250aa15d350437664d0d6ed61e83dbeb951260c1746c0f06423c4b84fe75a752e7f034b2584920288ee697926b9bc87fd0862992c3d9934876a978744043d8949273a3583a7c5ddbc25ddc0c7befbda1f306c9ef7a2f21e15543ebd5ef87c39814c91e1b60b079700 52a608ab21ccdd8a4457a57ede782176,57119c4507f975ad0e9ea4f1166e5f9b590bf2671aaeb41d130d2c570bafc579b0b9ec485cc736a0a848bbc886cbaa79ffcd067ce64b3b410741ab011c54422568089405bf1e8ddd9e3bcefe1a713dda18cc2b73fde0eb323fa7518de2808c875a6c55111be3e0cd20663b794048f5ff44638ef871fba0f4c2ed41a96d3621606740935e9ea1abefe15a1a3bd55c8ae6b2c021cc772b34da219115c8f6072a09f2b718e26ecd2538e5f12068f577ed7d03a2bbcc7ca7db81d2cbaef2ac8f33b1355798576cd3545b9dc792fdbb9c8d1c123ee0407c6328e09103fa6ce1b4dc9ffb0be7236dab3abd29e704d0c352c524fac14e12fb61929d98ded973d7e8785a8acf52af56c01ce62ad93660c93b683fc22088d7302f72d0dae54553b0c3e6da7c498beb3aa46e7459779a1b0e1fb19556a71635b404c0bbbf3f34536f2776fa12206513fbb1f2a11ce9683460d22778867aba7335210d817b720b3d8a8c48243d128ea2a4ba8996d160351194c0ad3988ed0ac5ed61c1f576a33c914c2bebee0eebe55878e2b43a51e510251068e3c0f7c7292189573eb6af979cdaeba8b8e359e6b632babafe3528773cdd4a1861b7ab2532113f2b259d45598a76d54c739dc2f4af2700f3b5cf22431ed9f73d53caf41d134f5cc67ecf8f99549c091ca6697ff20e08bf6ae9b6be74bc77f26db50d25f48e67a94dd705521f02d3cbd5fd56 82e192e4043ddcd12ecf52969d0f807eed,87f2a509e9d42b0f595662cc93094f26f06a86d79d98398b7f87ee2bb5fb25384f9fe3f7a72ab5de21cb3b7836f73618307242d53937c67cc5f36a7552f917db12a4364736b08671314ebcd3f34c670e0bb066d3e8792ace223608f5a152ecbf9fcb4242fedc1e27143835f0c06320174e7eeeeb60f6b5a8dc9aae97eca494d79b3ddfddbe91d3294ab4c3b3cbd1341ea4917733fb13a15ba34b46f0d5981c9dc457a123c4152776e15b37870c24edc0bd9cb73cfa5d290739c17289c2de3a71aba0dface3b76df71cdb67697321772357587e3c2319c15d867a76f5c7bf5ca2f523265d4118ead7f96bb30349f5c4373d5e4fab4076ceb6ab8c11ccda6b7272121a11f00f67d7d5ae31e86edab458bcde042c58e3d3368dc485bdabd40a3f6b7294c038b8ed3026e70ecc9ec7d6060504f931aaba816d5aa5ec9fa7cefec123e71c5135178f252885a7153a4714e0d9c95af171a6aab936f0b464ab07e32aaf29cd4d931562f700ca1419bca2ed1243f8ee1b442cdb1f5252225954136e2e80a7fbaf9095108647aff7f31d4c4caa050eb1a90ab1d1ac0f67b9f411006a4b76d5cb4b48d2154da87303ed37c9f911064e4d2f0531474e98f3f96b1a0a008ddd0af4b86435f8b26bfc7693c338c6af5823ff7a9befa57d72e2f1bb2982da356a8b3d08d4c19355fd6efb35d68b3a41144b49713a470bf61d0ca05e52044768cd 75683dcb556140c522543bb6e9098b21a21e,20561970bf01e4108bc498da4b8f900a0fa378770daae9703e166898874a1821ab0432d7cb1d0a7006e5461dd3049387c4116327d1d3e0755cde00a3c40bb5fcfbde5ad0a7e46650ae7cb37dc2f0e4f506dba47437eeec9f823acd89f3eaef767aeb39d38f8800da54790f362a3c183cb9bc420047ee86b3ec22e2b2f4c029ef64a5270c21255d39363894aee6478788436c758e4101f2096cd7f13fe76e54cc5cd85c9183e6e1a1a3a218379997aef9da643d8012f402fbbf88e6d0ae991ec4645f3118fef0f66d7c8ee74528d622e1e9ef1a69e39ca7ea0e045bb568980d4659ed20f0ce68503620a94ed7d5c9337dc20805d2da7d0f14b5ab3b93637f771c9e63d0b57aaee353aff672596c4660cb39381a9010600ce93197cc6a06219a3778b89b0f6ae003b5f9bef76ccf6d551b852e076a678a74e75e408e1d4d6b1960488ff21b6f6b7c308205f93bd9da1c6da1de9707307410bd7ae22ff24e24bbfdae849ffe2666b1bdbca2e08cf9d0f3f7698c4f983d4b92ee28b5b4b8bd98c317aefcb41e56dd5534f59da6c84b3d21587d2ee740f54a0c7fad62a63b98af747237b68f78a39cba4596f81a223367d34557688b324b5335cfaa67e78a8095c92d70802a2aa76129dee69b91d175bdc0a485a58c91cb8ef326b2c8d1d82325c4abe4a0f764fc01a9f0a743e7f107ce384dc223d7ad7481ac8ab7bb273237cd735e 06e4efe45035e61faaf4287b4d8d1f12ca97e5,f29097e10de56c3a4a24746ee4e7a6507050d18e40f1cb8c701b5e589fb645a4e400a3fd2c9c4d48e57bb9e146abb1ef98d0bbc6375c266754c7f1cf62682f0c6a6d6b11e2e0aea41533dcdc851319a34fb197d56f4a35d3b82c3d314eca59e03774e84391e8846d236d0cc51e7a5591205c6c1738b746e616b2a8267709103f51d0acf3156ba42cb226be3e94f2293e9e0fbc19bdf5717633e17b5944a02505cc53b01325d1d77965295ea6b6b50e12941767f7288b9f4e6ccf3f567a1ea3d17379bd1ddc357039fb356d9457956a8e149e30aa5092a4f85dbee2083a62610f04fd28a5a1880183366211287e9cdbe8b261e93557a38f6ec2d13fcddb5dd905599b5469257f3f2e83125dae5f30e8e7514d55241121d968508d1fb55c8f339530a437bdbbe04c42b6b229666763400f5493e31caab061a67accf41954c2aa0a7fa0087a4b828a1afbc62ba09e91a3aa44fa4a74652882b7ff38c9c1692bf83fbaaa17f32dee6d25518fa0721463334fadfc6d050e0cb195e477150ca1198ebe4d19ecae1b1321003823bf04d8f9d4866ba3013c9a47ff0b53fa6c70f57d220d86e8bfe71a61354f099245004487b65e7c45e090630e6f73fdc56b2efe6b3469bd31d23384cd4a830a716d50c7a91dd09a45a79f47d73bb32d14bbe85cfb56bbaac47d973a6f3f9fc23edd774a31b533fcf7e78a2a75872c5954788097e04845 e26193989d06568fe688e75540aea06747d9f851,bf4eee53baeca39e2884780a1f007b5069e7a90f1abbd12ef77c77a4038ca56609d52b9bee113536d8fec7d264f2951072fadbf2d3a0b21690ed5478a540c02d903b3675787929ac44a2bdc6597b2ef2956b3640b3771edb189e98fbe8fb4cddc8c641adc707d47ea2dbe17616aa0acb4af8d7197626577a5ab5a71af7223327fe96c4472b3f21fba242416a266bd863be3598d57dd910a265335d17a7b51f59debf9f4049abea37cad33b8f2032a4fd5fc6f124044fbf2a9e47421fd6c1488df87b942cf01f9fc7f13f7824c7c09aaf6d739f4e3876b383546ec682deaa6f633e630101646bd1456cc22a7bac50190548ee56c5fb0115809be6b1d7cf5488a26660e0a80dca89ef655a963e8013a61ce27da232430183d41c9c9af96c14e846addf3684782e207916820f57e04c60e999340f9630e8505c98f467e2a122fefd1031d67789f890be96d7b629828cda153f9cc19bf8b6d0b0716f931f17014d9ac4b6d983dd41edffabcf33693f7558dab690f669c53c21a4d8de7bc32aca6cc45225a2c980aef2307a7097995d97ee060005cb965512cc85cc81a75d3f2f0975183d9cee293bc69a06c896634962369e01f475098c62d574a0d6a57a5fdab004ddd8c3d96aefacb39b3e4e1523447bc8fe397b488d8a5da6e4978aed897ad0a2fb88c5ecf86cca7a67438b988c04f3c14a754a74ed3d03d478ce9efd752c0531 d8dc8fdefbdce9d44e4cbafe78447bae3b5436102a,a697f36886208cfbd55c3cc1c407c3f978a31574e4b9a790716e601c6ee0abc421aa5e5488b57e293cad8af40065c161407d0dcdfcbd172ffe700b60d7efa289c4755733fa535365db90082eee0b812442e367bcd4451f152fcd54687de4ae20f7fc60fcb3dcd1c419edf74251ec84471d35e4ea43e684995101acaacdc0d8ecf5f39840850557c70be1477a2f168cbe97fea85ea188594a4bdb583ef9dd2c5b682774e7e7e0cc85c1723cf91603793c711e2da65869be3a24d481c032a8674c1e0cd91a267302cc084b53c84af3d0a7d350bb62a2f3b9027e1f253c24d481a34ab8d8b164a78b0a60c95c13454bc4ae87c5e4e101b7d04c6c3f00e6bc4b4bb922f39c87a4ad843704e125f5cfcfd8a1e8e894230cdd7dbd7bd40a9cababeb5bae9cc49db656ac90ebee4afbe3897b0f7a64059bb331a4767983403df36c919759ad6bfa379920594d0f775ba2390a522c3fa7b0348781155edd29be53891b41f44e16bc5c290c1cf31ec33e66e588addd70e79fb26eee21dfdf40a3c54d8e1cd79f2848b4238f7b803891ec01623ad92e53d3ea22197df29bb6554aea8cf2d29ec4b673faa0a0c64675f3bdce07288eed03d980c36e4d10689dd5e525f34df78b1e76cd87f8fac22da1db1fd9533f58577d136fe161a688f3fb9cfb42d909efb98085fefbd8d26498a847c9493e02e5364290cbfe45570ba39bce1415dd5bcc 57085fd7e14216ab102d8317b0cb338a786d5fc32d8f,da7660020d2eff07955c3724cf85b1b9533278ffd2ec05522b8a876db92c7f9998f0f029b2156d630df390b3f8f5a31a8e74b943d6b36e1c97bc4f059408de495462a8e039f590d5fcbc3965a663f33be332f9e56bf37d9108554dc9fcdea2e771a5e22ede61ad5476153969d1ecf5abb108bbaaf6323d7e570b2747ec04c35e7de5ea2ac0306042caecf38b0060984460d000ddd3dcabcdcacc83414e56ee2c44f6d6dcf4875eedcc4eed761b62e1a3386970571ee127d84563034f1ba93d2a84310956c532f0ec4414bb01ad19beda20c714125176ec202a9f8f9917359794239ddf0376fab51a5160f0fc5cd16e7b7dfb0943cd524064104bd1cce97a342035fa47138c27dd9fb00f6528409e10bec016503b17687c66f2a00072b6245ec061598da570f36b9fe8f4c35e3e8fcb3ca1a8d913feab1890c8aede727e63c6085b5c196e82bbf872906c81440ec8b0a65b2271285616c7111c702964e3232ac34e7cd4ad5f5568c9e30b813941c02466b817cb1523d6717e58b4eccbcd74a923e806d82af352395f22526e06a71585b71569e87c3d1aafe8c06098204042cb2e41e92117e4264ecd229a7f2bf2a9188a53264195766707430b432fc332e160d786a9415a0260dfd91482b683aec0e62b0d1a480650041eb7cdcffdc9601ab353d9197ca15604351fc226bd574c3b66b1c6227b7cf6577df01520214a961d0403 a05404df5dbb57697e2c16fa29defac8ab3560d6126fa0,f887a018985c64ab3d5609be2121e73f7ab70d4a90bf47660e535b72dfc0a1df20ec0c372862bbdd1c74db76a0ed12bbc032283aa5fa615af320e1c15315ea171eb224184691d13d38ef39debfa2629df136fee74c49d61282db8dbfd0cac30b135330dd4f25644b73fe8276c66325ba588c7178d39ead3c8db5bfb6a5f30f590181c84c6b88c421a4ade52b6dfb74d1f1d82eb206fbf8678d95442db8292189ea349d3335c8a4b57e88c4f91b12cd0a3fb10830783869acc88ba943acd63acddfa8634fed8339626233614efce39d60dd2d8b1f6bc87799c4b7ebbb7d407c5621e56cb2e8d3952e07d5560544f810b2bbc56054dcfa0731a9b67067cd1c8c4951fb2ad6466098da17c9547bc5831646ac73bbd06e596aedcc57804b01eb817edaf9d46e3728f003d286b95664317361ef0b5adc00dcb1f6368295656df2a41c950367bdd25ba8db2b6b7aeeb1161fd089d02e35bb9188e7a91415dba172f906264905be8ee1e9da5af53b3acffb44437157dc275d26323402c07c77070d479cc89afba181029fb97f9f0c9df1b4be0f0b000a218e380cb84a40abdd79e267578ee379c3b674a25a30e902400b0bfa6a69cb7ab96661781e7cf05a6f225f301065b59c033c5d873a5be3307b6e59708599595fab5d2a91c601fc75e97daf27b9453bfe95029ed5b7f2b95c35377e5153de2fe9afc847a82888e9469e8ddcf4e7 aecbb02759f7433d6fcb06963c74061cd83b5b3ffa6f13c6,2dbe1b6f378f1c56aacb5f9a71a12eb3516942f2d45cd4628e2d6dbaaa4ca282d640806c927c93b3dc6d1c96d528fc2fbdc91d7773bdbc26b2e5429063889f0842640d4eb0a69f2c705a11fd40484f16a0248077897c8039c575c1a1c7bcca09952ebb4914576c9a9d35b2043c7a5ade1ec97b6d46cd647815941164bcd8d117e5c4892b6a5a5155b066bca61a9293e705edd00ded6402f12d0dafccf608391f24657283102c30e71777b7b9f39f069b90b44a6e84d87660d1bcf9587a25eb59f814cffa8cbce7d7eac35b27e8707f65f5b78fb16be7c17812857b8cb6a447bafc1cdf793f83b6d29824b3c355ecd204631ef1e176b53a6b82fdaf3d224851fc7bc0f6b83a6d05d0432fb34567a48be56368272d2012c0f296324ba45b7438f13759a4a1af293c244c5b326d6c68d28a5a3fcef1ae25ceec38d866d747d62cb9b5f8cb38b047151192ff44ffe1b35b5d08e95344e09bd7194cac4d66722c9e365f3c0b7b48fe0a2293e478b4e6c8e6b7c93f41637bb0fd15fdc24e6443595faac6c342e8def79f01dfd96e624a8954b0ae93591375b8fa6d7eda21578a51ae0eb69d97de7afc1f4fa797fa6d11d5c2663a8b09665463770000249db5a23233bf83d36c7a15d3e8673f52dcc06270b246086e5ad0648236c68efbf04a311a9a090c72a6a79116ebba4bacfe7f46b5630f27c99f257a3c563b864933b8fc3672a3 aafdc9243d3d4a096558a360cc27c8d862f0be73db5e88aa55,59425fe5b259ead7e04232543c65eb5abd0c4db6f9e03c184928e877805b9e7ec156d8c1bd0ee27e4fa931832b41781dad3c7d23bea681c74251b1ec51a90077356d3c5ca2a2779bde6f45be6adc20fe6dd0bc489b3d6e43dec4ff6e33a24c62421a20b8740ba1e13bd6447e2d6ccedacb692a4468c898f815df88b8a3e0240bcd64d2277d8456642cb129f8627eba5380a9329932977021dfd641498b40f8d75db5a4f9f62ed2efe831eba92ea600bc95152b3e2fda2873f54800c15c2256768099ba5acad759734533e8f4b5c729b42fcaccfea0d6c7b5dead8a5a1d0d115836d63476eb3c90325f3ffc48c964f69b2957e121d9501405ecf5cdf5c7827019bf4a92417b1e44c444d8b714ee85154bad6462317515cf1b680aadccad3f3b69d70875020fa770a0f7a969e4b1672dca70ccdb8d7122a7e8ae77ca7e0819d6cee706d71f0732dd1aef5106c65ad8c66fd350c13f2d02237d2b4b9ac3dda52e3771fe5473c47c77bf84dd90ef38104d8571ae25f6b7ae6b292708f0b967a998a6d8f66429c1c81ce5c03843877ae4c56f14fe4f5a24c8f93072ce79e3a3be409d902881b73d9bdd3aa0c8eda88f0511e98eb93b271ff5f244b956b1da8c7a8f377f39c803355f1d70d55775c7fba96cc98c02999a47eefd94e52811faf30c099078c7c1c50772057fe65e954fbf28cc414cbd5c2eb12ae86a0912d3812a04adfd 7bc84867f6f9e9fdc3e1046cae3a52c77ed485860ee260e30b15,48612b3a4374024bf509409fbc6b12e049f2f5065a0cc31c49eedd57ffd19f1c1af6263ade73b4c29aa77e5c05bc0aad40c904106a19a8fd55db489ac77904569acd0d62f18bac28a287299ef6cacd0b342760abae5a35a2e67f85e854df55c5bfe831408c14ea2b0a3c0ffdf29d8b9fea747edb856df6591b3cc76d3f4bc7770e38fcf603f4455c9b5019b7d8a2c939340bec5247e597cfce386a458bdd4ba5007d03bc82bf310b4a8cd328a62e2fa1e8fae543736c10633b3c70b21b98c769adf07567c3f6d89a006be4b2ad21643bec00de1ec9f7ca7ca733ecdbce3c58b45119e5f593dcdc5c95bd07082cf5d9b9a1aa11530e302e1fc8d6d2fc3b0fa834ae3b2e98b428853c8a1b9266aeb7b8436543bffaf69467d7eece47f2dbc790fcf2efe2791213482b641388d58b504577430878ef15485e437a4a1f2febcd994c088283d92c90975c976331d051ea2c2ea887a20df5c90e4fc77a9370306152fd2ca6c6410fbd529bf9ca22b4c8ffd4444eef136ef0b61276e42b0d0424f2682f291c7a704aca96b355aeda4d382c16b3ad879bc6b688197294203661f21e3e881bbf4265c6b71431b5dc29f614e090d723ba086b23051b00b7e81ae8d2315c41a90e1205ce8a1c5a744f82b7582a099d61fc5fa6b2e9a28920e503b32a84f4831201daf2baea8cb98e034f7ab63655e670952eea74e3ddbed01ea9dca9533184 fac523575a99ec48279a7a459e98ff901918a475034327efb55843,775025e1e1e0a1c865e2b57b7b43ed67ff002df27de0a62ac1776f894e1dbdb2921029afe631201298cd5d51b9a2a6e49717e68a180eb27b9954a807667e4d24024dc3a60a60a819edf2870260aea535698f9b5d83b820013547e570847ef9f4563931138791b44ad298217000f039a9933ff02b99ab66a571d2d5e16507dca9eef54b1910e26ef361887512d646cbad74f99deb082f7ad971e2e9ee37af77b80b2a763de07d91229e8b5a0e9bf220b0c15dc939253bdf45caf4a8172afda5d096b47793461654341d08599bfaee496369d5d6e37562f9aac399a413ff892f9dc07e624ddbab1c72fa0f2d1aa98ec442bb1bbf7609074e61ed16d25367869a5f54e33b52dee5020b9ace4dfe5115ed049a6ce62227661bddeddbf77ac1d45114cb734d9cabc634908ff540c2ac162cbaab655cb35138cbdf81cf5318e92516ec9c4cf05e14547cadd18093755458621c0903fe6abc29ad174187f0d5d6b314cae5a4f9586012d396bbc69d81a66927352a9f4b926e1cae962a73401587ffbc6d9fafa35ecc1b678d0d050f790bd8cf4b6ea3c3b663cd77fc6004c257328256f26205ea41ef7a423cc757e81bd7bc408988dab45e8d632b669dcad4585dcf6348c8c5d2dc651a4ac1806f3a55dbe5fae59d50e2b9f25f89200dd88baac59c14ea0798194b90641642b425317bde993ad1467200432b1ebf23440d0f789ea5a83d 0f8b2d8fcfd9d68cffc17ccfb117709b53d26462a3f346fb7c79b85e,36da0700fd13a62a128d5c87f69863a9ee8dfc65e5e1f97c495a675ed8253cade4f79d45d9e34c8fcd3d5af760344fa76b271a916a539d467f9fea26df0cb98dca0409602910d7f298d6e93600eae6447cd2ede4a76526014fb58abd4a48abb38da5acca349f140cbb391a6705e4e153c87a80c93e912c912b9c97cb89b101e6bcd0b739cf89d18b522a1ffb858b837c643240dcc8f8553508596edba0282847ea724b5d25ce6704cd3df3ef40e5410d0c6746f97f390dcd77f69e6c41cb009ffcc9ef3c6f9b2daa646dd07fce398a9603bc223aa22af0676931d4fdd5d2c06c6f2f4d31d4854f72e44ea149ed172bf152cdd08d33af58878b8e268ce44e8246360ad41076fc4e9bd9f460cf5ad24ea05f4e32ee2af4b1f56b8813599f23ddda7fbd9195a40c5683988d1a84fbfc951d3613ab6ff84d372aa4a0eb2b68fff9b37ad1abf88725a5479e77e55f320bd8bf69a2e174f715b10d8ff4e8ca72f2e29ab501f9a74cd4ddffa99522d1c48c619b1669acf555f5e5221d34c7b36c56c53c3ea3ac302c197d74735a1fb295a39ae38d87f451f86c327b67c16a1d1be50c453f3ca5c9bbc5f78d7c46f5fbe1b44c366159af8797fbd29c6b025894b66266332078860d083a58873b8edde27300b4177f4b1a70ef2557610f19b2fd8df4692fa548a018a014f55b90d77ed357987a033ed8e83e07a5d5d3648612854eb10430 a963c3e895ff5a0be4824400518d81412f875fa50521e26e85eac90c04,4d2453d01b5b3fbf0fbc4e6f7d2f28914efde730877568f3da9ca256c3252560dc9f9ac94ac203ab2a3829a3202e6f4d385d215b843d64b52b3cc28b11e3876248b4cc692d4f7ddd46c36fb7292794875d8353d945438bff037737e3e9133fb6559cf65e7129b98644141a1e5870b22751076f4af9a14f2b0d198ff4772b91f4f5329b5bf9326fe39d5bea9b6d4cd19beee8a6b8fe1cf3ea3e256c7e1a6a95c5b9336ac8cd2af6d35c776b5563563cc59906abf1acfa707ae71e6e52d6a77cba9e960bce2d3c11e7a6ad237874f6316d982207cd5cdeaab3c5eae28a3e5364626891555721f81068f60301b1db9cc8d8fe00d9949ef2998273bcedf012a9824b5942831afd4922908624f4c2d3d218fd440652f59f536f8b33ec88cc3e9db8a4513eb8880b95f29876c4747a8f83d089879b29350dcb6cab4497a8eb14afa848432310c213d7439968d4942cda32b5e6df26d29f42bcd98fe7c67020804380d0d9e4a931ef9aa117f872c7c0aff2e5f11451af753c383144e60e661d6db11fa78e542fd2c9df493da608cdead669e0ae4acd76744cfa68088420fa24a43b6e2c1706a10db468d8a7b6e18ce68c4eaf1cb1b9d794af9457292c2999dc18337531adca5be1225be1825b31427efa14be2b500c0174333cbd3553e05ad1e4e27858bca6f2bf2a966a8eaa6012f4ecf1f3387f3e3409d3986f2e2bf7dd239832c9fb 03a18688b10cc0edf83adf0a84808a9718383c4070c6c4f295098699ac2c,2d46d78b2bd91664cf875974d2cfdb0ae27e00faedec3370c5cb83129ebe05ec438a0a02232601c33ad623162b8bb160f5d8f5c892bba4606d1937a1e4f90782205cf7edef07c0edacedd95f486157a0c64e0303d30029cef36894100e79693f3e794596ce99adbaf2e3d4b4ada5d43b9735de4b24520ea9c8041cacea8ac659699df823c7be9ae82d52bcb294a43a751a71f6e0b939bf9f0831443026a292058b62817fc9eb139dd0637b7efa73344858078aed6fe93a6f22e1e14b92e87cc3cb5c4fd7170413c4949e5d06ddd44fe90ac4ebeae413a7baab1fd2b99baff442e155e94eb49d75efddd9c0bbb6c1ec6ac6496145c755788dfeb766ca0256df9c658b7bc660808f875e9e38b3e297543d2c9032b454161f9cee80b0a7f9f49039728d2f12142ea22c4708307b6593cfd0ef5f38a1e29fe43058a735ba02d4edc010c02f4b625aaf832030949e81264b213aa8a16bfb10d35c5a369b86cbbf4eee8df699b302b052315ab495b9b287e9883b05c6273b4c32fca1d186d2df481f54355da3af3e7eab49c1406857cb9f590e7b1b8ea5b7a0c5dbb7fd778a4fb570be2cb735f21ca599af8903596e80f8379b517d6a0f7f7d5125a7d4375bd90175efcf5316f13c8b09219bc84052b7fd2bc1d55656fdb9cf1918997717c6e2aa0fdb46530c27114263e017fe5d91153fdda221dd63f14c25e3439e05f5dddb3ac966 84fb51b517df6c5accb5d022f8f28da09b10232d42320ffc32dbecc3835b29,b3dc434bad278ece68c6dfbac1416bf47fb37645ac6e6b7e4dfd79e4605ee32b9795ed18683fcb56f910e223704ff1200f015eafb2ee06181e9eab1ba17bc5d84bc22a2d5c134991c906a71d8b20f6ecd6bbc27fe715edabdcf1c4e1a374b15ab4d76ea6ac580904bc66010cd8352caf365da80094f461070cffa34a86df705b87cc277d80196c86c602326e8e3aace1be7f0136c0988faa11a2ff91ae941799ec4de96e9f167e4088c822bbacc46dfa327df7210c9b31a9f7306ae753152a86f9e0ecb03fdeb7415c9adba6d61fca7f4d3c776ee6fbe6901860292fcc6cb89fb45a68f6165e36885dd40671ee372283591bc90c2b4a542282b13bee71ebba4e12797df59fe47649a27af116da9f41e0f0b6b962f7260dfa2f569a97bf47405a4ec4a6463680e3903cc7c3ca2f39e9366fceca8031da89e447b37f3b80769fdc0449291faf1bb8f9ceced3c175062dae783f51637581e913104c7042bc328e1f2571caa5572e75ee3f5a0f559b50191f3ecbc1ffc039bd3dba90f7007aaded690ff35d8d84fd0a9d427b2171072f1ed51a8ea9aa8a066fef6b88915265d80ca283eab1056b6bca093d60bfe288e3b9029e5aa395c9f3e3913d4b22bada270a282ff83c963e97f1f7543aa92b5f419973671ee03a79d1392c40ee57265fdaf75977c9f0e98c2ceddd7f7c52b4122a4e517280c9547df99ffb30692ed39929fa16 9f2fcc7c90de090d6b87cd7e9718c1ea6cb21118fc2d5de9f97e5db6ac1e9c10,bf7a4fff6c7b53893bfba9505594dfff317a09278c3a59221b8dfbdbafd08ee237fcc272ecb1c7672b41b8dec7d54b988b4cca65cf297e1d54da65a176350ac489947359e11e34ab3e4d6744ead1775df90bd5be0712bd54ef46dc279587527976461d6b8f9d0c0fe14b10372550ecf74b3cb30c463f25090abf7db84d32f51e8aee7298c49607e4d3dd79b9348e33f2e58a7d0d76394c0b1c79642cf2c3077ca0764f291ff48a8cd723c953276a829cc1e7b798beca33e8b0fc0bd44224cab89ba334e52d6943a1ecac72ca3bc825bd61dc4caee1a12e053ef31115456da434747aa8d6defe56e35fe67d5e761881d681ad8efd3ad5c69430ff75794faea5553fd91a4ecf7730ee8205aaaa0db99aede2c52591696514aed17f7b8942026ae16d67588a943e5d13bf47f15f1a458f06ed83a48641941dab491594dd02c681950b84718caef0e6187f23c89fe46a40d5c22ae297a05e8b613b264d204334be5922a6dedff5b978767233ac58925c672f4f4b0b77326a5b283cb1df217bddfdfbf12e4feba42e23c18675e0fbf0269e2d53a024b4286fa90685c2d8e67e3a60be0d7072c3ad8be9f4a389fbbafe191cf06eff95605a89c3c668baab7657a90f23b6b791421d214767736cb617bf1481ce103768e5a8a3384978eaa8f56a6f2e729d6307973ed19b270247867e5861172467821a22872e52657ba2ffddf6052025 de8f1b3faa4b7040ed4563c3b8e598253178e87e4d0df75e4ff2f2dedd5a0be046,2ea40ca6662a79d253a43db2845535098f8f4d791e45ef610b47f90d0f28309ec047bf1c565f799253e32a3c538ec6ad842406d9bf127cc56aebc442b4b8fbb5da5c759e1be0c201246b960324a087b3a3093ef07cdf45d915c2a4b0ff70d64c1611c17c629be9852cc408afe212fc303c196f422a085a72684c10460e294fb60ce9f2d5e2a599e4f1e3fab86740f61ee2dcdaf7e1c8d8bc298f40b993cbd0a8edbbe0eb8715b6a58d2cecd21fc637b02e05bad75e3b8ef0c2bdb157288f763f0b190468016c186a945032572e71952325d30d2dcde2a915169c51d0c448644d785ac658b0f0132b3cc96884c41ddead9b57425fdc013d067697c0fde6a2dd31afe31cccf9d85b46325d6cedd80b70ec717278d70c4344757088906a577c2eb030f8ad2b18a1a196de26648915560d228f702956b27046ed63ea6bb863f797cde111a02b19a6f49bdc7eab20e040938b9977d534bdd01d19b15781235c249a24ec832770a76520f5c0e5f5acc6e6df757fde79de7ad8c43028515b82614d0da808400c574e5a982d0cf9461bd25eb6521064152dc7bf3295595b7a16410012fb01aef4ed6ecf22c209fce011888e29b8c3f84cb29f42ae0ec1c4c6d4c02619f90baaaf7219be0f2129723ead133eca7e0d50478de346f90089baed5d1d04563f64e3a3d5e228988d71da3df85d906c9afc972ca6314482ba62c557ce7ce8986e 62f154ec394d0bc757d045c798c8b87a00e0655d0481a7d2d9fb58d93aedc676b5a0,489a2da0386ad9f87188cef4bc2b22186f74b1561d79d8ade98ec2190003b99795dafefe1851276ecf233ec9acc0142dbaa3ff1d94692430f67c2b1d809a88a683b73e00bbd678d3728ea98dc1a751fd5839b8efad1f4cb45009411b8f9b9442ac797b55e1827b0b6fd2a4b1e9f078fd43d9553399b9a52e7567cdce4a27647820d8483f16360104a7ac8f3594cd786f51a9ed172443bcac49e1f4b32e4e915a3cbd7ac18fe691e4b9bf35f31d1e8fa401ea37458ebbb1cb6c4e99c6b031c6c6981d95422ec1a9af5e74c0218f403ab62d54e28aa116ff96ce0d6e8076420846dccf95c9aacfab3a4864f93b5d3869a7dada5bbf8197411966166b2f4f52e3150fe802c96c47afd6a9f64f7554fe3d52b79bdacd6c95401c9a78f11594347e77f727acd5e0131cf898c4f36dbb067ee05e438b6faa70d8b7720eb94728440147b159577cb5cfccfe9a9ec321081d429ff88c4abe02c7bea2b10b61e521889e5ccc29470dc16132489fb43092b6c9efc9517ccdc0b0824a95501d74b44560662141114f0eb6c7a0b469ccabd358546cf1df37dea67e3946acd70a504a787acf86b07298938882d0b67ee67d69a8cabd0b835152633bca5a76c2e6db958fda265756669d1105a67889f83c01918398bd296ed801a0b5f0fc8aefdd5205793adb85a8d6ea15cfbb6a82153ee69c10c2c92cb38c90ce0e73e32489522994096f08d4 b2dcfe9ff19e2b23ce7da2a4207d3e5ec7c6112a8a22aec9675a886378e14e5bfbad4e,578b2d3b14b19c349dce30cad612bc2fd7ce8d6f034fbf4d328e7a570eadef3f9624b65251f992132d25e5363bd653122d5257002f806dce93d0b15919ff9ef2c303c748d9782588c90e3b236d51b69b1eaa1301a703b8b6eafb6c200745d5b08a07a69b6204be3db36cf6127e5f8399e5901318f9f0c18cef9201cbd31324d87ce630a64518aa7042ab3e2c64f39231ac3de7bbe859cd3a4d90109b2955fbe75a38f45c4b841c7e1e32f22eb69db97f6aa4d45d12ec5180aff7863c17fe1cb7dff337da46f7f5b0dbef813b40dd67f985c978b9eccc5685e059f55e503b5be924769a11fe1873ea406ac79242ffd6d45334d7c51fd4d1d5eaa28e1388e3bceb4d67320d9723d060eff815766587fc11c13675dcc53f30ea1660dc8c20332a3ff05e2e70ac821e0cd250132a59dcc4f40abbc8783690fab8bd7693bf106e8f8c7a6d59495fb7301390819c87c86bd94442185de8b4cc784a690d742a439f73ae7e8252a3d5c0e4c0410fe919cd7a53f85f522c138a3d654d9b947963bcf293bec3d253dbab8fd39a48a340f8afd75c97519bff4506550be8f1c1c7c345c89edaa8a56f128af2da8e86a19a6494bc33dad412e6ddde813e3338d16c4c34d40c2e6e1ca61faecb934d4ed0bb0a19d3ab88ea32f7e277bf8521aa733d7240394733a3a1fd7623463857e1633f0face8bb83437dcc308e4f6791d8790a54ff8e06f8 47f5697ac8c31409c0868827347a613a3562041c633cf1f1f86865a576e02835ed2c2492,abed83f7273f3c7a73a700565f16aecbb0e03d278594a29fac83b38689ae49a72411cb6fca5d636eba8c560cc038b47da874429be7c50a9215b5098f94110ef4e38f88d8db1c483d3ea4728f43b25d94e0c89bb50c66cfa25a62fbf536ebe3d8e7e71529ec5333a2823de42c50f02414c99cfc61b1e7b4c767828748216bf6b14658c114c52b7a53c52a3f8bb35048343b19c5b19fa11fcf5d78769f1712e6f8fb5b31c017d3e23091b1e8184752ed0669ab38e890d3d7880a71b0b22149038e81af04c4cc7ccba8487027908cf2f50ef3d6563141dbb9b898d06b7253b4057e9a69d026a27f5df48bbf2fee2b603240d44b9453ff485b2212828061ceb54cddc17c8de430d2e86045c790b23c84499c6bb04151bea457c8a18dcf0094f969365ae1f25032ae0524c2a09b69f71bd3ef46e8871aad3b58c92bc4b694bd5d47a8a80ca8daeba6584e5d5b4d6b5671c823e6f78d8b67a6745236bf675e28a17c2f8cacb4b5d167991d27813c5500951a5e78086eb87c18d0e26863260f6919989f5eb180ea48de6a3750b9e2c1f780230e0070e216d373d3e0ed3daa0f668a8810da759cff1494e3bd17b369ea71de73cf0e7eb3912515e454544be78178db41f9fbc4be73d1eac8c015496b08839344d963f070e5aefdbf29bd056b77c2b98826ae397ece0701dca8aa45245f26d718d9f46c90f34ad8ef70972acc600bf5eea9 512a6d292e67ecb2fe486bfe92660953a75484ff4c4f2eca2b0af0edcdd4339c6b2ee4e542,a9d48cdde90093ff80dc7846baecf4c7d6f876703aa4404be050345bf7d2f9ff3f93ce132e38ebea01ab691bac9f8943cb33aae7887e9783e0a11eba2d139a615df8a62ee4ab9e57bce1f7fa19c3b3f6aa88b547f0bd5ac0e2237b514145173ae8deeb6f606caf1545c9f442d84d36080ba514759e3c0d1d3688a3d8b7c28dd8404aa5e09aac0af3c14792d78434762169caa935e2aed3264a1c0a005c359b3b58bb5f9b9a6e5ece5186f9dc26c952a298b76c49138d20798bfcb843d06cf20aa1d540111bcd50c6d39dfc23ef7a8aa8e93526690c8608623a109b1554c840f15e670dc4c33e3bd81784287c3fe98ffcde6aef5da5c0038e31d111c333f48ad6634ecb47c45213f23ac0c5787cb9665d3b31ec2a0ff9c597a4372df2ce34d443a86b8091729049c4ee58e4ed17ec9503360739c966b1b3a005237c668a6258e67cf9b5b3611a91ab5779d6282adcb74958b7d45c06819e78e904b4c557bec431704ffc563f40321e64a7cc456211b5c981c6c987469fce101a81076ddabe22408e949e86457658e07f61f5be6bfc68b968fffe044bfd278bd91180a05a40fe65f26d907d205411b880d3eb4945652fc0c112525e06c4795c01f4b67be8868594e617bda761465d7beebb2c564ab66fbf976d38521f83b8df85a203197f0b6aea473d3cf3946e4dc87739a418101aef50d1a4355b1e8e5e1d638191dd815a5445 973cf2b4dcf0bfa872b41194cb05bb4e16760a1840d8343301802576197ec19e2a1493d8f4fb,41cd43af243be7f0580a9b406aa597e72958d24e45f52a2e1a59bc535c207efcbc9d8b65a567ca05da450458c2ffd58ca8ca3b01617ab6df19a4c384294aa174d728cb93d6d82bc135ec92f13870dcd556db4421c1c6563803eee5ebdbcf14b3ad79edb4e062970bafb3e801d5de4acaf052a6e07b0235b0cfa4cdde1e54c3a0cec7e8401a4d38e12193e7cbd66213b7c7b0b8046220ffafe868e31ce93fe8bb7ead861d96cc5a3edd4820bc2c62dd8a4d449fe9b938f1a55262e7cc25bde92315e329d8f612df71649ee0aaa3983fb4984b6e1127188ea9f3d40590d854f5be570543addd8e330bba204919d7911e56702efba881793087ecf5cea975a88db706fb08aa8a10ba5f72d2302db1a01bf15fcc3b05c969370050cac51f54990d57d9a37790b5e26d08b56de0aafa61eb238687d4396b2899ff6d250f92b1dd2acbedbcc1c0a194ba00da478d0bb659d901009ff593f6a4f66092f67238909056e1a0ee1c8d51cd39ba3794ca92786aab18d03c13cfc41f08373d1275d75fc58a9314133e62c14e05467ec5829967856817e7af85dc0a83af3e87097210e71d7325748022e25194512e54b9b18697c3b70b96ca8d572861d25178cba90e503b84930bf714aafce91cecc995b2623c63f15a1f0f50849f57f5037beec1056d4163d728c59bde6f526f331df17b5a34177d7b05103735461cd325eec332fe02a85b15 80beebcd2e3f8a9451d4499961c9731ae667cdc24ea020ce3b9aa4bbc0a7f79e30a934467da4b0,a0b529dd351c0f7c539bfac5a3302f5e88906a29e665daf30571447c3dce7bcdea802e364b65b3037903c5edbda2412e084cbcd4f51a4024ca6e154da70c4781dcfc7836f06e5e4606d16d2e1bed0d60fb36b84f582eafb152191cf804d121f0f69324156b733dbc79e1355b9b4d1726e393c22c82bf1ee85372cf04a594018c63a02edfbb2892221875f20dc73330edcee0e62cb57d2ba43fa1e8af7adf157a79861fb48ed49c97104c6d89d290061229d51bdfaba62cb77c498a8d71f627372244452549d4f7469ace1e29ec39e60e8563d3ffbaca5804d6660c7c1559879ff1804cf864ae8d1c8ef258b41b21b48400adf439a76c0bdd62fbbc2607d85f4295aa0875601fcc1c3be531b526ed081188da38b0e40f7ff4d7a41c4cbdbf8db3f46c00d2da9d7f8fa3459f60c7419ac6f691473136eced7c342d3eb5a39f611eedbb0ddb3eb12ad67f1be696795b951a7308df5fdb83be7bf1b650c1c9222c22677a4b37efe0cce03d7237699fca345a31238067f83547c5442946fab4e129bddd409f8a0176ce87a341bbc353cf8a3eb72e5c7aa696b12b16e12c13fcd597d864771c43777e8433899f157a0dd21117839d2ba21e85ff2e09fa0ed73c9af26173b9c3b8ac5b1fc4bf7c87f06b5af7626ca15eef79d529454acd23a7643f91811365146fb18cd0ddc3d46c72c7d1e97e4414225a76b55a19b226d5a77fb1b5d4 7abaa12ec2a7347674e444140ae0fb659d08e1c66decd8d6eae925fa451d65f3c0308e29446b8ed3,5eb982a2754fe46d19d8cbf86b4d594d14b421c8ab3ae44762447e9f789271f5a1175ca9b6c604fe8046a9a8c11a9ff9354bdc91bdf051ab6fa1f6a44d0e42977897f5342958adbcc1e612a49b46ee66420e34f2233e8ad857359ea92e3fbe3f84191127833d6bdff88019ba5b6982f446326877b3d3662767c6e91b0a6f9d2888bea239b25f1b6a248a6cdac1775976958fa9624edfa7de3050cb73602d24d13763c2d67a016308bf4c53d9c7b4a95ab542549944b74a2eb30f688b1fc9138b57fb76ab320ac7bd48727cf4ce4bd34fc3b0c2ec0e95bddd0ef0f5f70fd34c6c890982978613d2132fccf37541042415fdde4af368a207d59251f50e14d7a5310bbbd378781df611b425495fc69a2a6644fc6b29accfa9918ebe05436ee9e191946af9cbf15011bb53cced508c4cec0bc4e156d0884347aa46a902f216ed6577e56129b441efe731cf6c0eeaf378f5a29586f5a62d10bab2778f106fc6c3efbf2452c75045d578c38222e14247db42fa60fa6d909e0aec09edfff90cc41b32a9725714e41ffa9f350ff3c1008511534337dece84a0f3d5df085993bd3d5c755b95e6ed4b36fcee70b68af427c3c80386983920307878c1a01c5d782af85c89c8bcbb0edb2274bf7172dbf16ae9ba1cdd7a97d6b2bc2d06f20bd0431618115097621a36c41c9788dc68b95955ea5e097177d66b0897c7bfdaed8487a79e14dcda c88dee9927679b8af422abcbacf283b904ff31e1cac58c7819809f65d5807d46723b20f67ba610c2b7,78c7d0d0fdb5ffbcfe55ac06f0e6e58c805fbf76fc2d13911b6b63888088cbed5f7e2071f7bbc12063de085394a691dee09dd1dae2eee0dd9491c23b0949c870102eaee2f39e20a62d9ae95b0426c0fa05545c0f128fb53e0b8be090c1c82f0b66df4d7cd0f63c9a85e17844988523296849af7105f845e0f26200a260912128fe7f2265c9e41d7fe587becd50b8b729ec445c7ce9135c95914c6c9686f43a56cf652a6dd275ca6a883651f78e8fcb8168e8dd8fd780735f087203ee1a30b5a13d5f6b7cea34ccca3bd336b208dac5878e85bf147b0b4e70d87f73de0487bcafb6ed9c3002e2df56f215b78c7020a1bc9f433161ba7fc94b4ce3679ee955d80363420768c9c7e3c6696e94eccb0a748fc1f1f402ebec068078862f1e2dfc8cd6fc23fe1051e51dfe3d65b3779cde8824bfba8ab63fef474d648fe4a8f9c083ee0e6cf8ff6768d1f54f313705f4a3d7568192d91e9f0408e8ebb101cbe97ad9ff76a1f347ff152f45d9b20aeb7de7cc2047e47635032953fc5cc5ce45d66acd2e11c77fad0da8dcf15ff123365dc9f35de92838173ebcbda9da15fa35d10b64e7bb71539708d8806145a1892fbd4176b2e9931514bec17fda5cdd82c8ef9f6eb4e2900d039115d5b1e940e8796fa8fd74127fa53990639f130732eb48cf50620a9ddcfb01fd69490a8b5105cfc7a3ea274006f51221c2356212581fb16963e7ea 01e43fe350fcec450ec9b102053e6b5d56e09896e0ddd9074fe138e6038210270c834ce6eadc2bb86bf6,832befaeca90fef41577649b6348182753ebee32ea688306dbeef8665d6ffc6c5a26ec69ec8c90a0fea854893c0c4885a2dca4ae77243f735048ff31b80d1a4c84f055deb1c11f76bf45dad9516899555aafea86a129c4eed1d4cfc7604045d22120c8e06f67793644533202a69b683b2ecb19aed3db158397c922dc3a90b64a8825541ba5dd9afd7f82dbc603f156b9f619a83c7132a0d8ad71205c83aa4a52b6223507493e0f9fab9530762a190c9fc59680c961b08cf36deb67a9a472ff93698fdb84dcf3cff84c6e9d48804abeb6aa47ad62dc9463c131bffdb127f9f63f8ff88d9eadecc6b0e00c657ce54e7bf800b9a35173dfc6669bb54a069d9ee62bafe9b3c791dd51a21994cee03fa37faa5d56518a6b65572c1b3a17ef52f642c7b2cee065282fe742e5f9c9ba5003bf1676ab07439cccfff7d7b76df84e3d99faa269f0475cb5ea7db25d3bebee36b96634b58596ac788c5f31b8daba35211d4708eb1f778ca38adb4c15a831d8769aa16110ddfc406b05bcf25b45611319603c17a40a24cb2c38079e5684b473dbdfb98877ffe06298c33337326cc2ad1baeef678bdbffd89bb1e35827ce296e20b0084eeaa0ab1fc647efcc0231df9b9b5aded6dab34c75e6cbe206dee3e794aa42500fbd837b6f6aa015bb4c923f8f1f769b049888933773cd24b688b0f787a2b74ad15275ad6c4c336cdfb1bd929ace58ce 337023370a48b62ee43546f17c4ef2bf8d7ecd1d49f90bab604b839c2e6e5bd21540d29ba27ab8e309a4b7,0cb8ab1e6149f41d29171dbb444b0f3c07fefde56d9cbd1150fc43e29009e0f5edc50f89ea7cc0ea6c9e23236c6aac72bb3321a51afcb32f9ab5d1051ed244e2a8d417431863649699077079e1687b36f75c995d6a78b87a9e949a56a2cfbcc15cefcaa6c2cb51f054072a05c12fba86b10d303b3efeac18f8515bfcddb1172d56b8c92c1afd4ad5de2476cf073b7fb4b7ddb8fb2c4ba8ab0c53474857f1ff47cd3b1060612f7c564988d2881189248cd13d5ea347f10e1f21e299294651342ebdba1657862306844e274d7b2dc9dc6d92f395af2f5bd01b13fc7c7aff630e854db63ec517fd3251d12c10b5f6c17dcb8990fb39cf1ad3b65f2f019b24591b813d56d661a904405dd814aae4334a8eef7cfa455c994c3e31b9507fc0e2de00a1a0af4dbccbcdbf393391c5aec9e3b4d3c8e5f879d8e75f63078e686a1bdd5e6358c5807a669f89f90d4ebb31b7396c0152d5dbf665d28bc59327bbfeb466f1e7570462ed898a31e386de5538db505fbd1b9020c984a49bc39968a69d5b3e2b9a9b61d6776d5349d4334c3042c0317a2a34234e8cb64b89d29e3a8b6e8799822f57c3c6c739b3c263cb4b283ef0f859305c84d11a9dd0dee36cc8976e6ea1bcd04451b0e0efe343634dfec7868ad52ebc551d5cfc0277b15b854614fad548337f20467d175ef3dbb135fc37367b916ca35e714b998c3553d5f494903a8b9a4b7e 6892540f964c8c74bd2db02c0ad884510cb38afd4438af31fc912756f3efec6b32b58ebc38fc2a6b913596a8,9fa49c101d9901053c789b01a505853c8370fdd00f7fec13abffc91c7b06e1211dc293fc0d52911cc12aa9ced634b398284f3870e82b7f5af9c3298d53bcfc3a3de488985cd1047318c2319b9e2ac85752b3b0ba2c151fcd08c99e1176ca599557d3a63f4f1ebf2fa31ccf9afb729713387a7ceffb6f61ff8162b1cd943d9154ecb362e6ecc6e2669f746b1422904a3dcd93313e4031238b6eb117166b374fa8ae8440a358c1ea7b11b88fddbde57370836644b72c0219747a0fe793a1d77f42e66d2d695bc1d9567cf1a1b743c33ee309cb4956bfc426b06fe20ffce98a72fcdad31ec5ded9ea45d494c89ae577bcb79967cb532b97ccc1708eb2ae8e830cac0953c34ed28be988e89992c9f0c8fc58fd5e7346db2f24bbb57606302b0520d7aae54f3492df6040916af04b30f7f2480b22b93ac47fc5de2ccdeb27a47c25045695ae9f3e54fb27052cb58141918105e0621156ff4bad6a35df5bcaa0fba8d67a18130f117a09ff90b8760a7027614be569fb67659bf0dcd1f3b7d13222a338f9e5736d5dad6032189e149d22d56861b72a561a9da575d720f56c365c5c8bd0455c18b7b73dfa4652c1d570a338a5b1d2a2d00a4387613d11baa57160a513f4b64d91739e032ed72bb2dcfafe6ba6136fb381857071250cf63051059f9ba3719305d33ef9dc8d33fd6d427402ee348324c78920278d6e5b2678c1c4fd408760 f5961dfd2b1ffffda4ffbf30560c165bfedab8ce0be525845deb8dc61004b7db38467205f5dcfb34a2acfe96c0,7818ec8e1a13963c319bd2199294e1459323556d3e1ca05ea11081fd706655c1cad1a9270495e550dd34a71d6d6b2554c2cce9776b30bf0cb151ed0a87cd09735cebbb03a188eb8a1d62ec0fb614bb8d1d67418f91df9e7fef2ea9971cd46a1e6ad52d2433dffe98dd59e0c9f32a4a493acce9e6b2d946a56da432a43e45a7914959af23f1d08f5cc55b3c06669308021c004f0afb3df5bc10a7f19a7ed2dca14297281d49952d067b094a4068493e7df99403063ad007ce8ce76e2a7ed02f7023543e43e9cfece94601379a048a73663a9b06b04704d59fdb6deba49799d3e8052c1ab34302a2a2392b53a5fb9547628ed4f8f157db8d795cdea73f99212297512a04269b0d5f418e2795bfe76e939f8bc9f2137141da25cf095f2b754f6d0cfd84b3901a903445b7a71612539f4f736dfc1d4da1b9a8cfa87f15e34d4a813808ccfe2c9a9a710a1b9752166996ede550e14b55dad529c8a99bb9fe2688cf2cf29424570715c49eaf94c0ea0bff227ed445435e3626f31cd5e887cf1490a9a2b7951ad42eba5b24b02ee726f95e1e6862dc30636983c88dc915361f209dd5603672c9b4d4ada1703f56955015b9128ff7c0547dfedf772e63ad7ec847b946a66b6e4d3dc8a8ec3b50745ff7841318bd115ba649b662c99b973f4e7c26cb1604d407ae95ce967406e70396558ca27abd91fa7190a5d0f4ac89a070f45b858b86 ca061a2eb6ceed8881ce2057172d869d73a1951e63d57261384b80ceb5451e77b06cf0f5a0ea15ca907ee1c27eba,5f6539a11001926ef3e0dffb0142588d4e48ed4a212753128c4c944cc6503e5fd4111583d67fbfd4b2ed2d82447e985dd03cb4da9ccd8ecf25069e84b4741a4c5756d6295e55075601098d996a375dfc3156d5f56e28fd8f3bd4793601603bc999bf93659d63f3b95ad0af1f5e1749df5197c95aeb05c683dcf37e9f362db1dd64578e8ed9c1ccf0a3ad93e69b82fac004abb2489b0734c4cac5b1a9316cc30f44ac42914ae696698862938dd0dbb3d8fa6a53d1f70d25a175cf810ad901d29dc3be40e4f19a5308ccb795f44f2ec364946d99f59d2dc1dc21c5dd162b7c8cd5bbe8f4ca8f606a0ef5b4619ea93b278dcdc2e943455f178ed62fa747193215d76c8f76077f9209a9311f1f848009483c82a82be1a9fa17ee69d1de59aa305da992f709f2c9a1efb33dbc8108a7d22ad38934d2995a3a5d58dcdb8e435d18099d9b3a5f9cab18b940f9e1b2db9bc9768b6d29c2098273be3eb77d07dc6e48868ceed85484a46d94a3807ced72c292fd699acfb6b1da030eabff5456fcdfaae70e851ba49142ca528d91d00ce148758b54f0293e6c53c7540b55288322b015b6067dd16c0cb711c63970cc16bafa980a8c3d8da5ff2236d8dab951a2fafe29fc72257ad99409f418e405858fbd1a9eab6930977c034b3d020a86c25586f8524d6577557d73268d225cb8e38892d3e7f0095f68a98c1b7355b5e331d69bd487fe4f 1743a77251d69242750c4f1140532cd3c33f9b5ccdf7514e8584d4a5f9fbd730bcf84d0d4726364b9bf95ab251d9bb,b3120c516e7a7039b7f8d2a886b4774fa9e14b80a7f7b1f33d1b4faaad74d549e2195e5b6345b19afcdeba3acd5ade7200500bcb9c94d6848357d6fa88cf9125e59d0cbce876d681a68b6ae4e25dd5994d496b7c64f0b9124beac30348ea6b80803ff17c0846e19f9acee413e07e6ff849801c131daf7a36f2ede51cf9d21cc0ed6300ec5d6b64e6fb9f2a9b909deb4069738d60d6f9f6cc50d749aa7ef264e2bbd6dc680823c45aa8d3a349255823efbe4cac62c0d38a4388b1fed31efdc5bd3d6227106fe03b4a40f21f3f0411405a4a80e92f3cc045c7967cb7af2f33879dcf9da5e7adf813091eb357ec9c0dd097b868fe2d715c124ad0a44e2b6dadf5b360faf6a727448d5d7b76ab2c716543a09e2f75d570103a8e9589ae58d01904acfa0df54e6fff01ed725266f7e52b992fb34144568173065e406a1e98d8dde1889d0b7274011ca00357bcd07d4cf8323f103d682b272a98395a60a95237482f00ddd52204332947d4708d9b8697f9ce529adf3599c440e2b435f4f6d039b351fbb198bf360d3a184616b86573e7e32113b1a5e1eb52a1d15bebb3c49407ad6282ee2551859f9cf87d0d8f0ab362a439ec53540b4b024eb49b525ed29626db292d1333f579b1896a6357f9d0b51bd283718d2a7abd8f3786a7df2b512070a2c9a1b53457f27c6b859a2c6956bff50aa7906d546c67786b68ec1df3e93cc60c6968 d8faba1f5194c4db5f176fabfff856924ef627a37cd08cf55608bba8f1e324d7c7f157298eabc4dce7d89ce5162499f9,f59933f9e9fc474342b7bcb8b4dd6ba7b02af5edd2c1824b227bbd2a56287267804534e943ea69b571990ead3ad5dad06ca9c0bf97fea1f3878824782e244d77407e3e83d5f527a1f5bfd8c747fc08c5170e4f6cb114a9cc34e96ac2758782344451bfdcb0902ec52a9fc82087195cd1019a8e5b03e496a42762fdccba6ec573d5c0740391697d95934f983231ed9642a0c6a2f92198b49670aa7f76c1715f3c80648e606b97cf708596ab9d8ddc7d039dea1f4de4d22e6ed297790ad73d9ebc2b1bc55315bb60e90ec7a2fa9a7922fa5a4e824be742edf41693f595571ca33eeaff4efdf58fbc0b9b1cb610ab2e658caf31fe6e0ae74064db62ce339c1f439a55fda0f594635573c511d040cb59f2bef552f38d87f31af2e98b59e9f0e67bc57d59f51204663511865bffe1cfc42b00ac0d69487aabcc648bdd8201362a43ae19a9570def75bcffa6d000962e931ad32e36a9118d74c777f9a6d853496e9638332c3e6d7b0a5f030b2b4198c9b31a82ce117412c144914e784d9b0dbcb8a3320ff22c4f4f4810d5885c7df3d0fef30b4f2272230278c600834133c4e11ae65bcae2069fdc1c863cdd701db750dae4cdf37a2314e39dba691ed7d4a0087b8057ee27b3f6af14ac0a742826feada8c5b5d52557952da2ffe45e7c328e04c3cd61a5d8f5e11b3acb6667a08498ae0582fe0e06105101ccec61c63ff3cde8bd1798 be9684be70340860373c9c482ba517e899fc81baaa12e5c6d7727975d1d41ba8bef788cdb5cf4606c9c1c7f61aed59f97d,5db567b895164625131b8049728a0a66bcdd2b27d37828af41353df5afa10df9fccccc110dda3071a35319ef50821cf1796b5c319d4fae433e8a2599325c511c3c03e6ebb7c10e3be3545175675f7ab719e906640dfeccdadf77c345dd798ac7e2b7ee83c98dd194ca19bc1131200494a4b67428c23061cdc4000762c12565fa1c731a574530d282c2502356a75f03685a4fd08d1e938bcc2d6e7eee748dd1391950a44afd63b73ed549895f0cb38f7d292697994520de110f782b0cf47bfb07cffbcca6d476d468b227b3406f44cbf3c6ef6920b293fac69927dcb2d153350c7c8ba2d84d411e3ca70edd9321cc0387a6dfb84221915094eee0a272f267dc111f18e46c6d82cd6b98933261b5a880fedfd23ab2f7b6ce349789ede97cc034d0e0408e3e3b75d951d7df039700629ce147bfb2e2772ea80c8681d6db87667a63e3ff358e74ab45712f0bc1c747551dd96f72a6290c5e9679a45f37934e7e22378a2bb4a03152dfd450b98d76c233e107c57142b72389350072027bcdf9bd182a304e8b255f28459d96687083765e46f9b4bb14dbc374bb401ea0da7557acb2684a96f2791e1b8db0919365820cd315b730ef8bb83124577e55a139de4c9236182b885adff4ca2298f157fc460972d6bd67d538cba7e32f9051afcc00fcdf797fc8231360ba6b7ecd5c4d647338f23e1f578469e1558f49f87fefe28cd761bde6 7e15d2b9ea74ca60f66c8dfab377d9198b7b16deb6a1ba0ea3c7ee2042f89d3786e779cf053c77785aa9e692f821f14a7f51,b3d7178bc88bd577c5d95a67b110545c8acf8f6fb56b5da15f5738785e6c950347905b928dca2e70cd2a5e574811ddbc894ef7fa8ec3446c7897b2bb2d68a61763a892632a3c5c6a3764aa0f576717ada5ccda30baccdaf71740316910cc08e8272b67521292fe1749026faddea743358421eab011087d10d4208fae8d5d607ee0d89976bcd79a12f4ed8b1c5d0189b0e2ed5b0b396c85b27763bdbf52d56b92e015cf080df4f2ec80398dfbd733519f3915d3f102d0066d425ef9fe1aa3afc8584c8f4d594aba86ad52e71fa77893266c4c606a63891c41a679964a5e3aef1c277d6d35d410eca6156f8cfed13dadf8022ac9159f913c4838ae1af73ec268f9d3bf085639d69f2cc51c39ea594948fcd238d093a799f266fbd90b07f4619e342e38afd178864760ab109cb4949e518305b82adcd68fe6e922d1abab2d132d10e0aabdaf78f0cfb74deef78cbcb422bbde5083e57f016f4c5679e9d5010d4091b3fe61545886a65afa49716ef8cb5a6c0ebba4a2386a6591bcedb3563bda7f0e792cf28d257bd066d44e3aeae8478d093fa9482fc26c77d73dd3150d53d9f1a030063122916fda66bac51c69ceae533f7a1569a3b9536cd35067eb190d2812eb2cd089d3e1db98f2dfe5a6839f5b04b6edca6732837d23f985e1cc9444ac04df0b2bbdbb44e24d39df2f447d72ffb90b7e9c68a46329ed630cdae94707704428 9a219be43713bd578015e9fda66c0f2d83cac563b776ab9f38f3e4f7ef229cb443304fba401efb2bdbd7ece939102298651c86,341aa5c875eb43f10e8de28505858865870e62a9a4ff45bf977b947d0be17b2dcb74d5880fb5316c5c0b5e1c7da24d8c8c72e5cda4a9405912d12ec5316611eb40ae84a903703f67d3817bb73ac7c2c449d4d6d737cbe06c144a20f99dffc12a8f104df9e448a96de38dc6d7f83324fb3a2626bc91405ee5917f3765d9f22887777226be829584d6e0f6544b5e1c25f939fc9136ba2e0c0d6f6ee5f4ea97de937352d9428222667d974f4840fee0770657dae58bbadb5f47eb9c88232fb7bcc6f1feda76600fa2659f7e831129b3e3856aca6d78e0d7c582852503a67876877dc6599c10d42dbb81e6afd2919a18e4ec01ec7a032acf2a8320c5ae348d28cab36c85cd256db5c30ba1f8891005e68f91d7b0cb0ac4476937d1748f2ace0a1c512ad07514e31cb0cfd743e5c29633c2646ad1882176ba15e7cc8427fa20b2295100621a6e01f7ff4f27a6ac0766f9c25934e64546f16f61b5cec865028bd0d7dcafdb3d6912c5786372e1e4adc6cc8dd3e0a0f299b65beac5fae69e8219787a8effefcb50e40c8bc1c3d033742d98ff30d64d72d089aeee28489791f6099ce354385db83256150a1f9b6cc7444665bb95614ae6e6f511cee0c49288b3eb31f9c7d04b3d126a1535531505f0c2710cf6ce7a6db31f043c7c535f89467ce1f6e85a10aaf5486a3a6953cd351d865f818fe959e6e74f2de42c1fd6e219deb6066c86 c8f2b693bd0d75ef99caebdc22adf4088a95a3542f637203e283bbc3268780e787d68d28cc3897452f6a22aa8573ccebf245972a,ba270d4dad10865df673f0dbb9d72ef788689673116cdc469a8cb9c89e6d8d511dbfff6fa38e29257c9a5820781094300c088cdda2a17afbf164d13e360ec04fa44ae98cbfb972a68d35e6feee3ae61cc217487d7461f7315449e201d707f8cd0e9fbc64d92012b22175e677a304d903e556a5d1fefaf8177a8ec3e506354496cd693531adb22be09ba71b4710549bcdd6d5ee1ed3975258c77760725d1c4416ef3f3b45dd8210433bb44882667a2154d41792a37f2b7c5c85dff707bc2a89afd652d83904ec084d1e03496a7f402feba9f77254772904580cffb1e7a0a8d489b6cad6d97c9a5824545fda36fcfa2e0a6f7e11710a8bec33767303fe8843195e9f17b1b75a4625c67e39fdadecada6a7e7755da7742548b797662b6a24194e07ce2e0302feff4671e6cd972324173f14f5a60d443f6162cf2d6a3e2e0a7f2a6bbadacec5f4b43d4aad809003722982fc7af821ae4143d123aea6b7d8550541da9d704d81d9e12820ec03e8443866eaa80a534a5983581f1dafc7f124915d42f9a24887207c2232b5ef9d8ded3a3adcb4d493fa2fdd6061f39f28ca3b489676cce7e0600dfae247a62e96be8a63abb977a4f35f8361b71c8578bdd63f35d17cea1463ae0709353f4667367f0fa0b6b6b6eebfa049be6133350f71e9cc1b157ed18c9d90a1a4d134e553165549c18004279aba0c4ead5f342cc05039dae1c9cfaf ec0f99711016c6a2a07ad80d16427506ce6f441059fd269442baaa28c6ca037b22eeac49d5d894c0bf66219f2c08e9d0e8ab21de52,c2911768c4579e3876b6abf0a4a30646d8271fcbf3dc682c48c10e41a878609301f10073f3ea87bfd934854147d129deba9124fc69b6e29c271062cc8b3a5785367fdec382d365d4d60e7e63e946154f948b55e7e31a0cab5d25bea7cdcc82d8b6e200c28c7b4946b4ca30b46970ebb415fc18d9bb60c4f81a308becfb2e40f796b8d6f914fa7f134664b8eef9ffca684b296d26bba051bf45f3edb68acc5d0c79c08724bc7eacf702633c99c47dbf4e08af43a48a51a25620c1f16bbfe4ce1a52a60b4dd603524de38acc2be65240f51e36c6533d85a7b0fb06fdae420a7e84c4644b943e5cc4ac48505cf042ece8fbb4ab90b16b7af3ade3e24f871da2d86813a100c82e62f949c3570fb117407ab71a660bb4284a114b1f6817621eefe246cc0169ca7c09fe6684a9709bb5e7c5c09a35b4d5e109e133d23cefff9e438be621577a98d9b49b0f30740e7e3038c8bcf07e88acb767f9a43b60da387b617d6fff8a8d8784513d649ef3a142abac0bcd8159f4fb65db24616225fb4fc636d6c1d94db757e647934ba77c946bb7d010ae5c78e05157466590cbda903630809649bef7f0d27000a9156b2d05db89ac90a91f4d1f295d296d7783e6872faccb70cbccd244bf620d5499382421c8cb3829e756e6b415af3c26f952539d14bbbe56c034b58124ad973a726676b7f278e7d4111701d69681412bdf08731c4cb14eabfb 0dc45181337ca32a8222fe7a3bf42fc9f89744259cff653504d6051fe84b1a7ffd20cb47d4696ce212a686bb9be9a8ab1c697b6d6a33,c2afc53cc5dbe46697f64d5b6b37bf1db7ddd06d54ee9da7873c77d91de47377dbc5d525ba8c14d5f24a2bdd473de53fb1bcbae0adf93b4525c0a77d1952a21ba5e575ab9aa889a19d85a02a1ae4d420613bbeb7bd2a7032137f196e0566c284cd11822ef938c191763beb392eae3fd6fad77ea7252ee72798e5b4318961ef67e595bfe0be036c478c88b80c50c3f7bd047066f4cbe031a867644529afbbe607c6fa77602acef9a635de3b1fbd6c967b6133040d1a6649f1ff5598ce0e76af8ace89406fc02f2818ef8c29faff1f46a551b534bce2c30e6fca6f62df3bddde56ffd8550466f48c0d14bebb386f5badca240d848efb66ac2d339a54aa1accb5c753b081f0b6f782388e7b82c77304f30e03b5d3bfce0f1b5158aedecab4749c17305dcf231a04ea2436f423f5a818c461e90d65eda69ddc5d977b19f26e4c9db874f2602a3f5be5ab8c5c70cdbc57e5bf757037768e1962d0ac697645b598c46d639c7a0dd31b7ccfb88e4745bf2776505308c28fddb084f67618b84d0451ab2aa45437202474abaa0780935ee78d47ebb4e07c6466d3f8e83c1b27effc1064fe01880d2a7d571a955dcd4f55d631dfbb3cb550e3541254c0d4041479fbb331ec591f8afe5b644f6df9f4300375805bed126eb96893bcab7fc5ac5ccad3596d8c011258f3ed269a6b0a6c4736d467bee9d495d414b475d9354174b36e975655c8 de286ba4206e8b005714f80fb1cdfaebde91d29f84603e4a3ebc04686f99a46c9e880b96c574825582e8812a26e5a857ffc6579f63742f,b9e75f5d4b74ffbd244cd9566df861526b5de9584d3280ba5a684eac9d44c91c0dcec5827da4ec0fa7f60d29286d348f576f4e2fa03ac5be8f27e9f9912bf500d0cd549f5e5799697c61f0403c264c4b2d986ddbffe72fd8ca6439fc01d1f7138a92947364d586d67c300f27ec2e3e75f9088a5b787490494ebe0c42d00401a2aba6374cb3e33bbd737ecfbf80ee24d4985f6d11fe24fedbefb387d4edbf4ae1f409e67f10719f47397968e406a51b0dabb4e9391fef03f9f7bc47193215205386914fade37017edfb0dfe8c51b4c35c0aeb6f8a8e6d4d69fb538ecdbf65cf92325a7f280e8069cf9fcfcde610bd024cba87827e92caf22482413c694f9f1ade65b67f8e1d32e4b5d51f038c2fa9d89fdb2bc1848e3e7b54c4cd4d021f4c8baff61875899b79ef4a1468b0443691981fabc95d076070bbd5890efaee194a6484e584364bac001fcb37c22858f74e1a01ea8eebd49d9a55a19f5967b898c5b71d5f2ce93f4e52ce4b4d00d7c42e58d71c174e9326c5ae1e40bfbd8bd37dbce9369062124cb47d683db245a4f289f052f89812440be2ed28b40049a9dbc75b3fb1003be8a1b996be44270a83dc20a38d62c5971d09d06ffdc3f89379a99923f2be2fb6651407ee37f4bc8073e396887166ad4f0a4e156c72463a524edbf462f62aab251e32159cb3d79a2cb3a8fcbc196721642682646a83ee60425dd7207f7360 eebcc18057252cbf3f9c070f1a73213356d5d4bc19ac2a411ec8cdeee7a571e2e20eaf61fd0c33a0ffeb297ddb77a97f0a415347db66bcaf,eb24ecb6c9cccda1e8ab1ca26683b63a43ca864e23aa7681a4927affbd8adee82704b24b321d6c909a1cbfcb453ac084557fe84ab25e044885ed8051a0ebbb457d9821e9c132230ff27c4f27951432da415d90d59cf7148569cba02af32a8f4b774d5e4667ae594c2cc4776aeba2ca7d5f678c522a03b426ab2325127e56a4057837cfee2607207dea5f913cd64bed09e7fa723148aca13f522b584af9a36e74e86415f7c064c7575176488895f0ee6a6795b51729ac947bf09668a9adeec199592b77227d62205857b75e01e62e3d2757f02c4892a9e9c2a9187f7f3ddb16b7adc28c33f5889f87f949eb0a61e5fe431a3c11191da6d127bfc899cda0787eb269d0296f31f3580d9f630e0693f292d2b9954444e56a82d6c81319cd99d5ddb2f042e9242244455d5d9f59ce9dadf0be780494fdcabc72aee397f13cbd656d246b6240a1c21bad6e0126caea1c93096a41cf648bc0ed7a051e03dcb51e2c48ae32c88188634021a4b64adc4b2ca9a5118d4b6698e87c1e3d4c2666996f8754242214f3b07806c8eac8cb63afce0a03b64d63d46ad53f0345dc3a9fe550d43e9e569f8c2babb2c025d843f7d568dee6bc762d3b4db80b8a3119dcb19a17cf5fe1639ca313fc74eaceab5f9bac2e546c36dd7c292b959a2c9ca98cd143c5822bc94179def33d146a16091688ce192bf03a7e334bd033db66a3d544a8fe17d2f5cb 416b5cdc9fe951bd361bd7abfc120a5054758eba88fdd68fd84e39d3b09ac25497d36b43cbe7b85a6a3cebda8db4e5549c3ee51bb6fcb6ac1e,75102a95654d885655b910e6778f8a72b263b0854442230f8d8923afcc92c5bc98ee5f2e8d53ee1eb7f7a85a7562fb96535af6c78f0491eb11b4be2cc71ccad0442dba422b84fb16ed529278c57a543a3b8910d17232b2b7fc4b81bea56a6e99f64a50dd73acd26e506edd60a788548dba27aa66bf6d41c8ca0cc603d8ca515f3bc948afee2e7ec3f8cebc56a01682e66a082846e8edd0ced85a6d5ada77a9567424c73f049dbb2cdc180e6dd85ad73d624bfe10ba0ce3609771e50b51004bd62029259300e333d18697a3dd0408d37c5e275cc8a4c6c5ad85040365b3a427f21bff9f1660dad79d439c5dad6855e75840577b6aa822f614b42cf57561a70ee8216f9ccdd8b10f36455a2677cf93756a3e30e2e177029c4e0a3860cc01619549aab73b52e7e5340b42ebae37478cd899b71f9fbaf7dde36c57450cb5793e371c903ede8143f9ca3c8ea2231bf5f3191a49681ee8f45374d81a774e9f8c6ee5465b567bcce1c77e8289c72411a1c8f5402906046f42cafe88b54a5e8c7fbc5311b1a7c43a1094047935a27b2d89e9470ea28569211f1e6d99e9fcd1aea301a6271f90f51ddab660e90a50d10003bf425858cfb0d67ed630f74d6ff46e57ffb7236d55703a55531f89d92eeac17c6a050f56b46bd0466a0a918ec972e0947a991b024af21d9f92b6147155a1ef08ebf620fbb65c309863a25f3bd1d9ecd818e354 5c5faf66f32e0f8311c32e8da8284a4ed60891a5a7e50fb2956b3cbaa79fc66ca376460e100415401fc2b8518c64502f187ea14bfc9503759705,603cfb5e53d83ccdecb22c5c75e67f5dfa0db7d874e6d280de014555b1300192d9b769482878950acdb484e87c26f366d2db049ffe8c92799954fe31dde56a061e2f80a5da15b65a0c9382c7790ebee8e676373405bc1bcfbe974797cbaa998a0315cd9051bf669e00611880aedd88dc690192d8d485726b47879861a85349c2017d9892692de8df315ec3eb4e6c508b85002fc7e6d7812fc7e025fca92f14ee57ec9f507ec05fb8d143db2ef6b83b8785289c2faba51e962b77754c0081cc1253de4cf8c36d2150b263fa01e19e5157eac5521e29414407fbcb604a442fdce7de9c99d46d71f78d1b9931033af38940d70651884b766762605eae11457a60f44bf5ceed9c0e9a9c600da70b87b57e4b5c280e3aa568bc6e3988b5481006298bcf9239583f39c5ef439e551b6166daf31970ddf7bb6b7e068dae50c15d7a1b3d4f3587a91bdeaa59dc666220c2dfd238bef11f99dd47b87dba8c60598b531013468ea5f15edb0e2f43d4f4efa673e88aadf4572a50c25b3b7953c4ff0ca8f32d374fdc3c130ccf67e95abdd315fe7390d5160f6b307f3a20497c76f69ccf18151e5995452f01adf1d55bf3a678d0acff44c50852f940da91aa3fa8a5bc8cc72df7af11af0e19c167f6031dc780df8583f290059f5abec6917f7ef54339538424234454004be4398cd0ca6cd1e71d0372f2229591f7647142c13c5b0897806f30 7167e1e02be1a7ca69d788666f823ae4eef39271f3c26a5cf7cee05bca83161066dc2e217b330df821103799df6d74810eed363adc4ab99f36046a,724e26ad36068e3825e1f997cfed8ad10194b96e76ef425bd347254bf19bb862dd449e0182e9b8e20c8cb5440e34cb7391935b6f5d49f3319a984e313a9f4ed7107c43d737f016bd20d7f454a670199566cab98c4d05f0d31b2811a48eba4df019936b0c6e983c3557dcffd42238885a7cba1376cdad15bc2fef1e75013cd3aca86fde4b616f2bfe310131aa5ee826f5b0451d4dfc0f0ebdeacb36a8b6ab96d7d81b2a21f7e09c5e908fcacfa763ded4361e2d9ec86559df71a827662ef692d503c72987cc9f5a9fd69f9aac4231bf27e8c64ade3f9b51ff7df4775b966a6c2fa6f913fd191f9b79dddfc077363e1e62810f9d82c82a0ca9fd45b9267b17998c2fb7e812195cafb0a08831ca47857e00e329072037b3a96dc9780fdb52379e7180ed0e84866d42779d89f56f94a8d86c0600302a09255f838efabbd08fa7b342ebce887cbde92743a36c14f61386bc9fa5662f7a2e39e0cd165e0e0f635478eb28217c1e97ee7df96d6e6143918c7cfe29236e9911d10c756871e749e2ca721dc4f1d0dafb1715591f3708971409a54712588af7cea3fd2d0d06c036cae4f76b885f50b3fe11a39f304c9702bf5f24dd5a2006e9fe6ad23aec9598e34b4b043b092caed032c3fa42306064805e73fe03560ace3bd87d974c8fb95da0c68e0ec4b245c849bbd06b94a319209514707bf5447113ee3b14afca06a6bf308dbe03a8 2fda311dbba27321c5329510fae6948f03210b76d43e7448d1689a063877b6d14c4f6d0eaa96c150051371f7dd8a4119f7da5c483cc3e6723c01fb7d,d0f92c3953c2696fc132fa48ba36eb7576d34c5bacfa4e9d9f6dea8f7b0b6b746f6f7914ee8b9c25ebca91d601e781b29c99d0da92a1c8670918927a45b2af16e9bf00ce9a877e361e797f9511b9a116ab72209d7e8dbf0e299991b173e4c654021517a94f9f4cbfe6fc4bb3c3eb5171435219ec0d80be57e3900bce9327d10dfdce70bcd32c129fd5d5bcc54c4bc972f67562796466f9bcc7399db8444c2ee896ecda88e0f9ed729985992f0bd707ed3ece97064480aa1d10d4bb176f65db3327a0f34d3cc32140a95594da7707f565849d1258435285c1b9828723ef42c475d30040aafb3237a759141ede73070e8995d2ff72c727b1f8a215af3e5113852febc029413c2d2f21849ccff5269b8d188c147d4fe3843d1950fc09409ba0e5fd2c5567f11f0dd098810924e56463ce5b6c7437163c6201a9252dc484800303facf0d6b004cc856bc68aedec5496021b37a667b02f5f7e7234484b531f07ed78b6eb747cf595367ec3ef33df41d25424a858f50a63d5d503efeb895334466fc3b01da6246a5801b9d06071d765a65e64f2214f93b6f072115343d711697ef2e1463e021cf3ed9cfcbe5a81e54dab729d52f2f309becf754e3d420cf0ca060c7be4589d748b84028517af7923767833858a35b26b0ab5c5e3b14e68bbf50ac28a3129f6ae086bf783612749daf4cfe87e75a4c89def988064e32d616f1ccc17d46 95d1474a5aab5d2422aca6e481187833a6212bd2d0f91451a67dd786dfc91dfed51b35f47e1deb8a8ab4b9cb67b70179cc26f553ae7b569969ce151b8d,f31de8cad77a334c3480d93e3b30844df1ec344a8d44cdd277b0099f28001239eb0da5b566fdc383f0e1577f67edd2bc0f11de67f3e7a4d97c56c9f3bb0fcb4d3e4d08f7f3d5c30fbd2d964cd45f36826f614668193554a33bf0170ac3e64c10e4e3570eef84df387944a6436a814dcc53645d01968c4ebd1bd0bdd76354580805bfadac96470fd354ba2630f7ff8f7ab29282aba946b1a9e063c316a6d337a7cec2fb4b562b899f626418bb61eb4f9e9bd7b294c7eca75ab522d642ce495640e4bb1e2b14a10775704dce5adc7d7e3c091520b48dd18a291841cece5ef56e1969915fb497960d011a8f46a5b08eb39232283ef332f7ab0d8fdbd900bc200183186be31a6eff7f5f4cd27c12bbeedb0715a0e6e1f6e35753fe7f3996c75ae34d2e8e76e43f49ebdd505dee66536e5f2332daf4ee462b7b524f3bed1293bc45df9511fc03d2734da036eb3f8c62bb0e623031939e83745744f7dbe93e57ed65eac1016e414715b54ae83a15fac6e76057d77c3811491f390c0b4ea0bce292372a8633e26c10c11e301e57983109903dbbf4d08434a6287b8df665bdbfb03957cea7ae4eef506ab1f7af1358eb48e7fffc9606c266e6cd903c75772e2e88e954585de90111a250ee62fc12d75c5c58cb7c03c9c06c2aac9edbfeb02a1207ae5f9a92d32dce6528a13725edbe757f309449a40e93286388d8c09f9bfbf49e5fb826 c71bd7941f41df044a2927a8ff55b4b467c33d089f0988aa253d294addbdb32530c0d4208b10d9959823f0c0f0734684006df79f7099870f6bf53211a88d,a3d9ececa03a1016a8546ad75c7b35102d5abb0021fb5f2b1f53b591624ef0f6c199f64dbcf325e37f4a361368cf60f3bda9f11bcf5ff2eb1a4c0b0546b5e898204ea5e4117f519f72f2f5de1017b2bae0723d91a430b2b3c1987fdd24ff0d0f1cde2483a22fc37f296ce16998c12994603cfab4b496d3333b25ed48adb1ec926a44cd5db14c2072588f15ea752a31a8a3aa559a35ebc900fce948111af7522afbdf7c56065b196cdd00fdbaade3a80d2db10271bdf6418f0f817fe991ec055cca474b61e1af6be6ff6396ab04716809433bc8af75369049e605c1c0028a0d370e7cd0c1eb571fb379b757e8bd21aa61c2e2f2b0d0dbd2d73acb2dd0887923b840079bc74f6c69682118b2b3dfd3fe94d3a76eb8bd68cfa94034df0b5419104675b9f5e56f8c6e0eff12d9b20e27535a09e9fa103803b62c66d7ae09f8e39a5f505f3bf93d27eee1b16546f97af0616bd4923425a1f0fea1655334a528c5da469850a0257496c820a351d826eedab469a3871182b8435615e8cb1c8c81d34f8904df7f81d48ffde990b69f0608e6b05ac130709d3dfa9e8d9f343622991bc686e80b4f0877c03d9b1e0a190d4c33c11246a20cfb297e127fc359afd037b1a90c040d9e10f77a3f6d9fc45a2877711559c8b09348b203fc49a1770730d1206dd03b9e64c390a308bc27896309be2ebced1a7ade8d7187e8f6f9a76523fc820e30 f57c64006d9ea761892e145c99df1b24640883da79d9ed5262859dcda8c3c32e05b03d984f1ab4a230242ab6b78d368dc5aaa1e6d3498d53371e84b0c1d4ba,46f35dce4ff3a34e944ac51b64ab60d314e30c2ca9c5b4675d759e1e852835977b6e247c025a8ff0248c622c492a04b87c5a2c906b2c1cc8f9cf2e03dbbe046644ed26f37b2c4eb2d16b558d82e2a3400ea2bee9b4d0a3641b7065fcbc34abd67eabdf5ab7b3f278c47d24ee127515a2c94ba955a01a098befb59261082f23383210fe82208574b95763fca6132afb3e644461b1d78f3c8e04d860fb0952f9a33a7e56c1aec1cd3ca913ca62fd35fbcff62b0032484ed07ab9c510c589f62965d676382ec7e55e359f5bfa7124a54b83c245725ad796987ef4e9186c74e8b1b53cf027533341278b0a6b621d7fc68b556f0b3e1a95312f4fd3471ef1bf3c3c5ece8269b29a51470ade59a3f15f2600b858eaf8b6b109339cf1b15b0edf36e0004992bed6e1b187ba60ed3e92a542a83753e14e0ca85a0df441e5b03a9709eb1ae714615c7c5f2f54c373bc5abe342124bca909bd4f6696950e0483bc798059a94cd8d852d6c5e596a6ce12ff053874f459e68062c5650ecc934eede1e7206bde104cf33c95fe103d279108b60b4078db9522f2ceb28b77def8e4e59c93552b8c09c0d74e8aecb3b6c50be0c123e2eb39470908bb7288e451c51f6f7154143dc78d5f5c4ed402217a3b61466ce80cca2257d77dbb99b6069fdc6cdca949bcf279b3e4de57968dd0ef83c19c5e1a07b19b85fc60e593600470c3f4603178ba08ca e926ae8b0af6e53176dbffcc2a6b88c6bd765f939d3d178a9bde9ef3aa131c61e31c1e42cdfaf4b4dcde579a37e150efbef5555b4c1cb40439d835a724e2fae7,77b7496ed08c3933bd75983c0c0494bdd8262493a4b55ddccc64167e67eac0f6e6307acc15c33f3963744e26ca6c504d393b3ee8165e4d49eb3b6e649207653048f8b822ff884dc74937443b1c4a888c7a768c63d5b5d29e7446873923b9d7a56fa5d9e90760ab86d5718e3464821b79eb46d169141ff16120bfb650c76d4b3e5b3f6ce61febdbe09aed7f4c91066d903af6e56531e8ff71549508b6e420cac6bedfe0cbeae6bc228476bc8c00eae43d40c82cbdf6b460c376d7c11648eb2815b6506abd4339b25d58d45cdd0a0b9e35a88e251fdc34d4810d659d179f59ebd03717fd31a6394ce12cd5569066e138885cb2bdebba06367557ce849eb869f3cac38800d51c22b666ae2701e580796394dfa02f4910bf5f86aab53951233364ea20cda35afbab445be7f686643856f825394be7b4b6d2c918d0151f46fb9aee8a7ba2d706e48cb0bc429b064262c1a0eb3524ff14632f5184575c15f6f4a3446e93cb4e86b6a931ba268409ce30b4595fd2059a27183b3ba8d0ace8e482866d5c7d5b03db8dbd24b99d59eb6eeffd209e124535d154b98f9991d84fe1aa763c5133d41ecc233930957dceb7896af70f735a2f5c1e79480afd50943bc5014bcf0a7354aa7f713163b55a1e41bdd05fbba9c1db2c69043ed9eea4fa45c990ccb4a8dc41afab18164018e54c47ac5bd6980fd796acf0ddb42c7042a4877e8be3de29 16e8b3d8f988e9bb04de9c96f2627811c973ce4a5296b4772ca3eefeb80a652bdf21f50df79f32db23f9f73d393b2d57d9a0297f7a2f2e79cfda39fa393df1ac00,8229bfc635a769d86656396b7723fb46bba9868712f27c377925ca6b358b8391e0ad8c30da71fc8f0716bb95acb0da00c61f3a7bc8df1315715e925f1ebfbfb5d72cb3e098f0c014a80e88a44231dda194dfa8e35e359f60ea5d7a5e0d1e64a8fde294f4ed2e3e98294dab838b2c6b3fafcb2995ac17af67669a24fb71318233a82dc8b934c8693b3df784a5bb34ce9cb3fde79afcbfa66c07d1202c954e849dadc0c1d5ba79bfa74919c1c6fffdbb834287c852522a65ae3d32e337c2bf16c3b5e22d4577f5b05f1b87218532041b9692b0ec561881479c924ba92e154b57a1afba6214f68fd067d109a92a9b0e127a0a6b78e85808268567cbd1a2653201233b4e80be103eb951748a1d1f8a205856a650c58df15e8e1c76644e52614ab4dabf51a2320a98d259f8295412291464e1d918c9bb8f5282301be5f91dcc507f140d8642b7a6fd37327cf38f510679845853cfa039ff4cbf749d48032d6650bc7ac2becaefc5672ca7c61a8f6a1bd69d321d2ac1e6095b3af7111f509be0062707617c62da3336c3086c39b2dcb9da7f23be732ef32f906243250ce4d38668acc8ceebee87c43f077df2df1ea4f6345477490fe37725eccb8d4f47b14a85b0d36feeadd4a020da3dda4a48895ddaa45b5ef8499e937d06bfe6df88897a828dc19d9ad93c622e0263e74f818f921c4200856c9ec9d36cc99a6b0bd59fccce72ce3d fc424eeb27c18a11c01f39c555d8b78a805b88dba1dc2a42ed5e2c0ec737ff68b2456d80eb85e11714fa3f8eabfb906d3c17964cb4f5e76b29c1765db03d91be37fc,66126e27da8c1600b68d0ed65e9f47c4165faa43dc4eb1b99ffeddc33e61e20b01b160c84740b0f9fe29fda1fb5eff2819d98c047cdd0cf8a0d396864e54a34657bd0c0355c75c77e5c3d9ad203e71fc2785a83d254b953277b262ee0a5bb7d0c24ed57faed4fdb96d5fd7820e6efeeb5a9e9df48c619c4872cf3b2516dbb28073273e2693544e271d6f0f64be8dc236ecd021c00039fd362a843dc3681b166cbc2407495e18903e469403807fe623f3648f799f18fbd60fff7705d07464e801e0aed4f2f0642b9a2c5cdd0c902b59b1da19a09375c1c13175b618091b8882a0e7205ee63a9219ecbcfa943a10d2d9a50c8c0b5d43b003f67ef0d52adbf9f659bb62fa6e00678bb8d4449648872a99eecdbb3dc381b5199fd500912afa93c63a6b23d00d0a416468fdab93aedd9115265be3a4440dd4029ff7f88d9755623e77f9430b934dae529be9a6b307b1b292ab5918eb24b14598554b4cc6269419c701494b7cba5b3d69f6cdcd5181fd03e0748d08e1e0aa5c4ec62c47877c1085873c016ef24e7e45da71d3db9db23b153cceda9a9ab5ccd8c5466cef29810098e976e4867075601f83a2d2cda1a476a1e990ce04c4567ffb99aac428922d9d8b25af68c36463d3aa4f689cd778f79e743e0bb5f935e6d45f978dcb2aed12dfcdca469556556e19f25d4c959c98785fb471d4bd1675d3b84742766d5ba4bff2a3f912 abe3472b54e72734bdba7d9158736464251c4f21b33fbbc92d7fac9a35c4e3322ff01d2380cbaa4ef8fb07d21a2128b7b9f5b6d9f34e13f39c7ffc2e72e47888599ba5,efaee039c0412fce8f55f6e7772889ec18d0604fb18040dc1e5783596cd820b421a0dcaa528c8a62b17a22164430672da6d818e2e555aa8e79665a6f8f5721a4e17fe8feda551acc9116f1f50e95839fff2427dc1d988b0269838102547d4d46c11d2548be3f885111d53f3061a74972c56579c681c20bd5d47a4c2a9523bce154068fdf3813f5d45a8d446758c212614e3a6e80ebcfef81e44034e0f2d02fcd0ae5e6b10dc24ea09b94dbc47873768c0dc6cf2991b9477448540924cb57d3582d7b8e453e946c57129285b548fcc831b3e311cfffa3161941689e3cd649c3f47d96037804d0c6a4fa8c09b11a7d5a35f6c4ab89b64c735153422a3e529e19b9ad7f7cc346f904912e1a6c098cced3be9755137a26907cfd7f7aeb1a573a971c4a5760ca5399cbe642f0106497aa1d364ddcdabf375c547bddb6011f26b564d0ccf4e055dc0869bc280391e5c0203005d92246e377dc560d16f3a9588068473b14fe7e39f9c25108ea279d98df21902e60dd4eb03266e873d3b0c24dd33066991386c4311e58197f24af80fa150068407821c2327e900340550e7826b2f510ac65d4b21e9336610945a0e5a0ec8d132d694316f2b8a21cc24520c6204ef036116b2fe66a79cbb202f65e1d1782ae10cc71be51dd44718e2fe9d229c705b94b9ba6b27a3925e55da290875588c8edb8a1866fac9efb7fb292f69a89ed772cc68d 36f9f0a65f2ca498d739b944d6eff3da5ebba57e7d9c41598a2b0e4380f3cf4b479ec2348d015ffe6256273511154afcf3b4b4bf09d6c4744fdd0f62d75079d440706b05,f64cb396701785b64767d4f17a768ee198297a74e5d1617ff74a3323c096579c0279e351c2407bb889cd4ae718b09aba711fe3ac14ae7d7de0072e8bb0b6a1f92a1c93ddb46de891cfb1f36814e585f672ba871601e817bcd6327f3a7fa7de35af6a0948dcf3dedbc8a7154ce8529033f67fc656f95fd47b60e49681895ebe0824df50f8ea0480b50eb3264243a88bef29f5f4fba012b86a5dfc98054af4d15248cdadcb160193de7068ce71eb76e32acdd0dd94f6b27b5158d9e63eb25831219768454c8a951e9678f41ef6f654caacb0f2ab5dd614bf0bbd932de06fc31d7259309b23df8b5864322eb2d8f39a07e5a3f324b64876612be4a1c47b06f7c5bb814169d94b78ce22aeb7249c96a29c52bdb5550c7b292c96ea9ed6700f5d3032d2a81cd68ed3a6de8fcaf9379ed0d95c94bcb0082915ff7db5ea1bc25645ef3b546a728aff4ca20c6f8288ff0ff4b7dbf838e1a3ec5463ab88cc827d03a748fbb924797a98d309bac09e73215bf8be798c151d322d6110c280d85b45785d854da39a80f64897918c169bd7e1fc52d003999c084bf69b696e6d747e859dd2d6ec6fa1339a395858477bc49241b302fc74e0188a2a8138507331923c357ab4eed3f64ffa908cdad9116039a469229f9a62070799026097ec7f5a71a7fb01b5473e8035d383b9f236f2faa0e06dbb135a939ef9cb31af1e312f47c6c9be1f50da36 abc87763cae1ca98bd8c5b82caba54ac83286f87e9610128ae4de68ac95df5e329c360717bd349f26b872528492ca7c94c2c1e1ef56b74dbb65c2ac351981fdb31d06c77a4,cd85deb9da581af66c0b3125b697371f16ee34606a577ad6d8ac7e4e4a948b36c844ec9ea85eb168d7a5a1eb4b72a685aeb80a75075b420c9b53b963d960f7bc88dced631c734114c28b2e20f0657d9256ab01b1afedda9b9f85fd30d0de3b98db38ab90de60045836cfb12c41e5bdae57b937b637c11ed47f7de242eb9f72d3253c5d883b22333f181ffad60a541da08601791fc0f8d9f44a94b551b1a879b76fc2b7931a2f4301d121a4e6861f5c84ffcb0139fc37268b5f8a4c3fd490809cf44f68bc1e665b369d4d74dd0bdea71ed0514c37a47124ce146927274d95067c80036ed9f1a5b0a10ae71e837a09dbe4dc358df4687392d99b2ace8beada9656677518b1607c8e13b7f45100bfcefa1d4e38b9bb29eb23d17b9cc66f70635a6c531be9cb890ae833cd7ce35498cc9f81c576493913bad87532b711f3f88873e9ed48a83b6b2c503e096a33f824feb4ccc702e82cef00fbd938ff9bef6e3f80e149eb3433816a1d3fe7f005734192ccb5a8b0d7d43327b535547a9cc7f5fa286f9eac26e9e6a1cfb86db35831f75a9902a3e78f6bf9b4728836c81b3c614923c3ea88d6c5f55449a83eba0f5ff7b4f07084206d4590bf817c1feb43595462037afb6969a91eeb963bd244adb1b654fc98a0b0be99029b3d5bdd69d2158939d677b054ce55decf0f332851e0a74eaf2bf3eb672d4cb1f467d0e5391f98501fec2e 94f7ca8e1a54234c6d53cc734bb3d3150c8ba8c5f880eab8d25fed13793a9701ebe320509286fd8e422e931d99c98da4df7e70ae447bab8cffd92382d8a77760a259fc4fbd72,a90053a8f738a68c18cb87fbaa8370bd14270412d0014c5de8008fbb74e619182a0442c121f7e2449a5b019dc0ce597bf1d7d3e64d1184946d45208a864723a73cc1e242f7187811c522f880acf53056d835bd150fcb7db61363d22074349ff54a3e5ff2571272910a7333959d8cc29f69b540e5ecca50df7799236338e29255656930e22679a3a585e32b88c27452be75bde73789b45623e695fb7408dc51891d50a3bf84c5088c5f6fbb1b740deb7fe38bca05f1a3bbb516e9afed0a41f8fce94411cb84d8bfd51ef917184a66c56b31a190ae02b86f62cda2fd7471ec030e94edb56c144025a1ba9b792a515dbbf402d33bb6451825e52a87b7b82c44cee32669f96f3d8daac5923127b51ab5c5ed43e5a9344b32c5a3705345ee98ccc5259c9d3342cc10d660274dd628f1c2c031fe9ed282500d5c3982c7976620fb46190c57856e519c6fc1760a306c3497f2e001c7113248f53ea1a4bf9db370285ee441e4b43459b6f8690cf10bc1785138f8855df859bcf1aa581db4a6efb576d938fc273e7d126caab7fbcbad62dbed1fe2c33f24640afa899def2825ac2c0fe928df223b1043117c061f1c7eec723c5cbfa8314e1b18ea6cb63c02b9d6fa3b27929b4d42f1d785813fefe1249f65b725d4de59ae071a4f6a40aaa26935f4defdfa3760c98cbe805a50debb3011e006015fbe8400cfb1b6b3d2162014d675df4246 13bd2811f6ed2b6f04ff3895aceed7bef8dcd45eb121791bc194a0f806206bffc3b9281c2b308b1a729ce008119dd3066e9378acdcc50a98a82e20738800b6cddbe5fe9694ad6d,27bf218a01125514bb1b78e582aad16720267373bb27ff96a594b7f10cc1d0a393fa753f50437c89301542d27c12c03f53ff771cd0df4b38f40b607b67cf419020d34c18f5bd3bd424d39f47d118c84a53a635e17365f84fa0340be3212056c155fd227d3b52f9be75538fc23287b5deec0e5737c8484abba0be6cc43d956f17a41cf81dce5e78326633cf09326e0004b172763089a593dfbbc1a0960a16f207f464f9ea2affe732208e970e00aa0bf1228634e98031155b61f6ee509648d4b0bf58fc9cddd0b470b95a0aed8a3a96deb2f7fcf65ce08a826300d4e48a681019c5a8eed66e7fd5ff098308138b4e11886528aa9ed32617392b0f6e133a99683daddac328838008befe9dc680720bf4231e88848660c8ef4a2973046d8e70d8ee8d8497aed8a748b3185a77b238b5650c99095d8702209c0c31fe1770042fe3bdc2582f5fb841eb5a234cb4c9b637fb4c5dd9f90225db4c62da420f3d1895fb2eb05e3a3d6767f73fdbc8b94d48a555ce4cde5045bf5325b782e0c242fb3cd27d963a9ef014ddba4b0608f2627fcabb2edf570a49ad5377b1bc7193d9cccc23f5d35c2db59d05df8d4a8e5146298b6ebe1de25ba1089dc746efef6bce22b43fb99eeabddaa76566452f544eaa85ce4559ba683a122ce76927242050fb236bda091480ab1b9adca148b639f986a3e936bba565b54f727a0d45f369df25b9ae8528 1eed9cba179a009ec2ec5508773dd305477ca117e6d569e66b5f64c6bc64801ce25a8424ce4a26d575b8a6fb10ead3fd1992edddeec2ebe7150dc98f63adc3237ef57b91397aa8a7,2fce215362a523d7b76fb836eb458667099c58bc51d7ee6f6deb9894b6a337576b0daf9a806488c3d238762b7a2e7b12aacd1d696517eed142aa5dc5a0747f08e5e39a2486d75f497cbd6c4899d6f5bf2aaac9189a6abc6e787b0d9c5283c840e518c6ab0393cf60337369251df935a02de0463dbfa4dcdc1de9034fc9c21ffb9dbd7c48384dff31012bd5f5a9cdfdb7139c3c35f560913d643ddb728910413f1267bf1bf1586c5ee69dad26b53154934762d4c80c34d511bdd8a391f83d224f9f8f83b61daa046c542bc78f153a3aed27e1268058f6952258d274f11c8d9634a5bdd4e69c60dcf1f89df2238eadfe783cba652a554186d9e8307c7773722d1049c3815526f583612bbd8f6c587d058b80fbd38113957e60212777a9f67b612312583fefb67533c065286cf371001440b1a7a43de2405e5e92d633f12a63ee2ebc408164545df22803ff239dee66eaa20780d103d940880e8bf68b9d815efcf16f59e0d858af33fe4d287a2b8e61c6ebf26e16e354b3ef63774ee01a14691b149d81f010a655f308e966c990e1befcb6e4253ff43bf473afa78aa88c36ebbe735b6b2f92ba9d07a738e000c9b42bf8a3a4d8fb6c38aa36b3329f909676183fbb520196d0dedc80dc6ba0db4d72ac6544551cc38b23afe000a91f10a89956d2120494543e3ff5d7d1b2791207860a0b921debbae769e55713a1d611f6b1175bd0 ba5b67b5ec3a3ffae2c19dd8176a2ef75c0cd903725d45c9cb7009a900c0b0ca7a2967a95ae68269a6dbf8466c7b6844a1d608ac661f7eff00538e323db5f2c644b78b2d48de1a08aa,992e831e9bf5fd994a73f17699ca0acaef65e8212e5c4a495569654b5db523bb04431b7910a343ff254f4432485b4a6a88701afa889b11c45c53b4a1c4a1872fc685d644deb5de2340511f29d062f6cf0f39803bc333044cde83103155a49f77ff8946a77fb092d1cf1715f02297ed4f6b0a43254863641c4c244db87fe486a3eb78dd3b57cce06722ccbbf53eccc862a8256625ab03563fe4730f74c8f78037bde37d538da822ae9141b8098a8b57d74fceaa072746dbed8c4b23f91b3de8b9b733d06ccfa2fc18747590c9ac01a9fa675d8cb51505098f8993c494592c2561f8f2fee3b267d8fb77a1ab853432850f90b8c52d08e23a19226a61e0589842eceb48059f8f1b749d563e2c652b70c426b91b8b0e19ef2b319f2d7dfc25f0d712a76ca9332f92bb38cf89ded9802bb7ad5654b2357325cb1cf6f1c9fb364ef41ee8b0a8baf5ff9e8878e56ba4beeae384bdf029e4911df8e84f5b570704d53b67d6bb1aef37976b38f405d9aea67c6a6d77370e37bd78034645a9b6405672366dc061bf384eb0e9e73466ff5d018c9ba52dd262dc97970cb4b8ab467847c23da0fb101f5a7b9eba51ace6c0119ed03c7a14afca676bed44922edcbacbc79b6db231c60dcd4abbbfa0c13c0ab3d680aeca78eb9bf0f71ce6886aff6c309594a9df2d01692c56265a6e9256c366c4c53b6c0fc38b6ef18ed8c571d94ee27e850d4c 0efa26ac5673167dcacab860932ed612f65ff49b80fa9ae65465e5542cb62075df1c5ae54fba4db807be25b070033efa223bdd5b1d3c94c6e1909c02b620d4b1b3a6c9fed24d70749604,47cb72fc64aeb3f76085626534ea346a2b4797b5d61839bd7a15df05d5e3552c2751c697bc2c532e2b3a8934b9acd8985671450db65d6f44d9b6e27972fbe050e6a76537eed3e9fb15849ed61c3b2f6e30a8523df8e95bfae3a93bb306343212f1c28811359442759c85c3e6829a179c03f86a442dbabf49940297de3f29ca9f6ee25eef49b9c7b37dc4499a9d16d3b32da2ab391ac1e6ba6f3967532fa18e50b1e52d6d3eb2447ee20ce459ed970d71e33d80a20e933f09e494a753d15590a29b15733fbc93217b47b3685100aa31d5029db16fd7e293c51c55e54e15457f99009590ef8c7b7be110453b73b4652b2f9c048bd7f2ea2590d33ecc5508bd62be3a0918c174d99c5939fee9c48592cfc220f59f28f57777ddd43aaacbd23a61a8473d4ccf01389e982877282e8694f03683ebb44406c798104b9f3223b0df50ec964665492eee586cbded57a75f17762a2903604f8120fd1d981afed7d6aea59fe70ddce738a41f53f611b927ec3dd3ab7e89a0b0b3943eaa2a74fa2c020984dceb577f6b3e7ae98cbb81f3cd9780e52d44bdeffaf466fdac7a4429bc89295204b0fbb9c8a22a5f202e8536542c244cbf3000c0cc1cbb0c4e18a29cc92697b0e58ab1ae77ae10b1d3ec92eb697364ca69279c4eeef39d27c06e63dac76028df7a5a974f8c97af5c7aa31b5bb5f1f4db2e63b3d4c9f6849129084c77ade97562b6 bbfd933d1fd7bf594ac7f435277dc17d8d5a5b8e4d13d96d2f64e771abbd51a5a8aea741beccbddb177bcea05243ebd003cfdeae877cca4da94605b67691919d8b033f77d384ca01593c1b,458ff16e716ee4c47f3b60b3e473d91157767621e9e3a200ea0ba18b511b00c9ba311c7d542289d03f07adfa6110675dcb43d5d8ec69c0eef6aaf4664f917e01ff8dc5f203e89540eb96640ff807ed60d761c4d3d92f55604efa648c5caba130731fc2bb535146ef6ea4ff3a7cf388647ec25c3879671874ba259c6abb31b4a8090bea5aa7d6b05f5647caeada7ba35b45feeee744bc0e76d8ea6b84cc4103d358192bacb126800cb5a6e114709e7da7766b761b6fd0a83203b82b74e87d426e71ac1afae590f4f06008537e79e2025007cf2f5ecd0bc1a0e14c5cb8384b9daec501cd985c9858212ce2b9ab2422f6f7ee0e081fda987aa90a6d51ddc1173ccbee0592e970cd3dda52431c57fa323758ac0a4e47d049ef3c51211a4f9312614312b6dc119336d7bebbf325c2c4d24727e2909058543be4065c58f4e9e3f3f0ed88b8c392cbf610680123210d5214650ef8de411b7f6ebbcf2dd95f7feacd074a29516e42efbe37c239e9aaae6e0e1e1c61b418bff50f0d7d56347579a75aca891d51cb5299987734ee208f0d85512c846aed6db2a2f453b110fe2475852c92ff1bb3439d9d6f3eb76b49e239f72883d067bf9d1bffbb1b668d677f940940b9d042c06edfa9256b6afaa37f918a99309e4e40cd3d374db5a37bb43da60682ffd1d01cd1ebf9e90971fe16176dffda5867150fb83f271e4402ed52c1df78f2bf52 90078999fd3c35b8afbf4066cbde335891365f0fc75c1286cdd88fa51fab94f9b8def7c9ac582a5dbcd95817afb7d1b48f63704e19c2baa4df347f48d4a6d603013c23f1e9611d595ebac37c,021f06c7138f663522bcd444e597c2b78f4c8369c88747a155080005e09a68c6a73c4f8d1c7c088d3cda2b48f310d5371f336bc261697542028d48ff92523dd78c100cd858fc5fd1f4918142447e11281881d9c22680800dac76d690444458d53e35d263b2e081f470c9e8577565ef7f8c530f78aef2039a0b253a28e29e6c30fd26fff9677e65121b5175822d0942d0dbba9f764514fb936369f74324e8f950bfcc192a30921f04552245ee79cbfa319063e4dec133e10ec6b02002fa61ebc288b8404de81d9a513fa7fe6db2c61bc4ada6dfddb4b49b5caee1d7ccf5ba6f40a39af92ea26222850d4f4fa9079f79365806440b89663c705a247629c8e28e77fd17d39acb37bda2def7847c12d7f180a67bc788795d6ae9187e6aedf164e282c1e76322a8f38856c6d95460977fe8f6a760f49111400467e7e0eaa5ad7e9c5f9a17b462cc8b45f308cba6771cab434f407ca6cca371a6c7313cac055a13d5c79195dbd949a4fc9c176c26e6d5ecf343b199e478a25dda55fec4fd416e2708af001bb8ac3773e7824bbac1c0656953984b1109f1f95db0aade0cb53be77e88ca83a86563e1e87011e718fb3616ba3e54a2bf9dff761a42ee1e809dd1a431c7a832442461da90e7ad5fcd581827bfb2c8fdb0a046f09d30773fbc1481da0fbb92a6afd073ba96811acdeeedaadafce7c70e4ce75421c85e9c1afb270d120e186a 64105eca863515c20e7cfbaa0a0b8809046164f374d691cdbd6508aaabc1819f9ac84b52bafc1b0fe7cddbc554b608c01c8904c669d8db316a0953a4c68ece324ec5a49ffdb59a1bd6a292aa0e,dbc0350ccaaee7f6e18576e435cafc7cc65ebc81b27da2f18a888adee19418bf6f4d1b3088e5824bf663028a690354f4a953ae73cdce6b095a835cd45ed5752d72e699acf031529d73348218eab5dd6f98d675e33880f6e79d0fb3a78e843f26e018f543872a313560f8024a6756013db3ab13fb23661d33ef9520ea60a04675454b5f3069230447000ed2a879a1b342f560a8ad2f37afaa80668e90001d315ba266d03152e714434fb0f52e287a235ef5dc4252aabc8722b6920a069c98f69c64bfc31b1e13d01dd00524401d4f8494111137ee283efe82c2215fea54304c3297e6a1a88e46f000084ad090551a994308165aa2d0d96585dd4c826554ce80d3c00344140d4387322650f857350812c6c4e660d2e3ee5dec73d27a6455d6170569fb0f56313a561bc6fd1bb6fc11bc6a830f32847050eac3451e153c00bdab83d8cef319894db18dd80f1112e560e2353de9c2db6bfd428327aaba644c218fabf3d75cc42b3773db2113d037588af31f1b1f21d076f285f1f5cafe5312e7c2fca07af2e6fe3651aefa91bea2740afd1c2ac77ef03bbccea36940aa9a7d733289f9575e9e14617aae7402dd7847114c75eb4432ffc2d3d0bd56117f9286609dc91e9ca63e1e064f09f2653ba905cb12c8ab6d7772203b0afe6332c4e9f73ba4b652ff16e9759fb70ad5f548540c7ecf6c6dd7d17c5d2a9b45c548b7ec8819e8a5 d4654be288b9f3b711c2d02015978a8cc57471d5680a092aa534f7372c71ceaab725a383c4fcf4d8deaa57fca3ce056f312961eccf9b86f14981ba5bed6ab5b4498e1f6c82c6cae6fc14845b3c8a,7ac057c0dda89d3a001ab997f2e405b4c1d1906191c3a50399a9a49b2e01cb2c3d20db6618a7aec42f8143c580505145e60d6e1d4559fe3f46f5aa1373502eb0661a608c31839bc4d7fa44ad6586fbb53fbad598c05b9443d6cad708c8664079fb276947c4ef022c1bc7267b41c1764b249c8e7b347bf006df1498e31cc9ef2558f96f7f7ae323d6a633e1bf23312c1e9e2146676730954648727b61a5db507f1959250d49a52f9804668ab3a56ecb6c49ea7819d093e85a0a1335ccd4f54360466f7c37df0f65ce52f7b396b49d39a3aaaa0fe33f053ea711351bfec78a1e05f55954d7056b7380430b45275e2cf57ac13f7fe332b760d8bd793ce4f886130c3e4581a5995f865df2c68cb2fc01b558997a54ab8a684f5bd67855972cb3bd54a9620f71cfd3c9f0ff260b80cb14cfe4fa9d61583cfabb12be42c4c64c85d1f26d3b0645ac60065f9e85c70883be7f06b9376737f83313debecaac3f1146b050f8b360a614b6c72ec91a3e44b196713f5754f1249f6dceebaea8049ff32f308513f9c0c2353c9814c0e67cad64a1f332624490a39df8f9bcfa61c315cf2563031429567334038f1d086be0b9a4badcd9c4a0840348bd476c00a7cdfd8862e80eb9a833bd2bb56d88cb55d3d064326b8fa084f92f3dc2d8cdfba3e3a0e3eb9e44b1efe0563bc7a75f9a736a87a89a15a6812110fe92abf5b8f77ea88c2207517f 12d9394888305ac96e65f2bf0e1b18c29c90fe9d714dd59f651f52b88b3008c588435548066ea2fc4c101118c91f32556224a540de6efddbca296ef1fb00341f5b01fecfc146bdb251b3bdad556cd2,f0c453711d0ce1b3a120bfaf25570e3e949207f575782ffbeb8a6600d7caa9938d28ec6872d1fc914bf8bb02331c40728d3be531197694ce644ddd148d0ef54c077d56b6506a4a941b087a61d3d57b8ae53824da8d8cf069d1cf5df46e309108d74f318d38fe1968f1550ad7921d976ed5abc60953e4fd073a3ae7fa378a105e0fc3bccb3ce3469a536efa3f9e5c8590f19ec7e8708af92a9ca35caec1743f2284da30e613afb371507ec61c5574771bd7436583415d8e4406ef39150e50cbe233a781e8867639dd491b1f53217fde1fc5b93671c1b6931e07966de705d162f14ef3c95e67c40ab1c0841380f9a9165c5222477feb97e9a3c88104d7cee9b3ec6876a0ecf0198d258b9e308083b826f32fee17e2a59fc20046ca815fe0955ca88a81fb56a7c90bc922136ab0b3f3e034b62634fc830837f2dfd86798a11b335d5fba27398e5023cde6f1340241509e92c6a4b298b3bd330ecb2012b8f95dedf67b68d5309fa1ac9db856561d6e81666a49aade4de719e1a4b519aece0bd4941a36492e0b79cb7efefadf4edc6a344c4b0640a17f0e7f70e90e77dde40a82457dcd58658316b4b9378bf058b05ae39d0c750692b92bb2d16b5f43200def81ccc61b2a26cce991bf939534d61592328bfba68aa8c9f51f3a04466759d7d1b966789fcba85ee120c66a8f3c308e6a1533220e4a38c21ddaa4b2fc51fb49f59c84b3 871a0d7a5f36c3da1dfce57acd8ab8487c274fad336bc137ebd6ff4658b547c1dcfab65f037aa58f35ef16aff4abe77ba61f65826f7be681b5b6d5a1ea8085e2ae9cd5cf0991878a311b549a6d6af230,23f75edbcd5d5f329f01e45502b66995cfb9a5f0748e9e1bcb344b639873bba79d21ef36b8cc1bd8a2357d8dfbf3c32ba6c0c2e8936fb968389d8d1388c20b9f572bf9cef93891c643d672c8655bd67ecc3d0ec9452c6d1a0789ad3c734b926188e4a1b3d684f14c0a5d9e72cd2a10c5cfa8bedc0ba5f3ac6b5150a256f2b945586981f8092e0827294fb846986d3885f38bc6f945b900ebb546094e29facdeab1bdc1d7fe1c6c83e562d09e08319e2bca1f3ebd4a82b9ecbd8e6b38906d861e2e0704ee4f55ded4e7a74f188210ee439183e80dfa8795a1f75f0efd49a4fcefeb97f18736069bca02273ff542adbb6eec13128f1d74c87d6c6b45726f62ea57ed49321be6fa516b1aa2349b3c85a5f971c4e15715badeafd2e8a217d1188129cf49a54fd85803ebb361d73f0d8d0a7d557d0e17c8d83c27ddce473908a1cf9ecf0f8085e77fda3dc89c82609a647e25ffa8d2fc86194b2a793c7b32b4c893115eab9a704085047f9225a29236c6188f017ad4972661c796a3258ed49493533bef9a59a27dcbcf614aeaaf20bef156ad261bfa23fbee2d84d76af0e721739af02df710d020cb80e895bf20685d3ae61deca82d34206351870aabbce23cda3567dc1affef9319bb1a212d52baad92d069a332bd020420fd34e6fb6f97102c9af3c877abd9a790bdab7e7940b1cc01702d2e4ceea1a3a2f20e3b4027bddc6e2fe0 e90b4ffef4d457bc7711ff4aa72231ca25af6b2e206f8bf859d8758b89a7cd36105db2538d06da83bad5f663ba11a5f6f61f236fd5f8d53c5e89f183a3cec615b50c7c681e773d109ff7491b5cc22296c5,0af273f2384078bf8becf3731049a763753edb89ca1ae2ba03b82ef5dde8c5e23e692982c524035d406dbad8fb897af5d7db961652a0d6f5c18d71ef1f1a541d0a29085aaa1d26d2c4366da7e41781c34fa40a3fc7e9132c3f0cffff267e2bc771dd29266e2c649a94f3f15fbc71a561968e0a755d4d0ac7540b9e674539aa4d15d2fe81ae969ee492ce89104f994c6201eab2f6a726d9ab88479e324789bfd003eabc2944c43bc061c1e24b7ddfe1c980f65dd598c33942482475f4d717deae78ba3d8a7a887120d9a814d581be9d593422ab033a1776c3c7a6da30d4d83e8e120ac733303c401b68d1ca76b2a20af4ff0fe49780e25b43850d495ba91aa727dbe6e28b677c8c7ddabfebcfaaf67b8ecd8be1b459bdd68b429e7b25b6b0a02dd2bf0acefc5cbcfe5cd07c814e3266027eae612c39077c810e766a872a79d68bc8fe8edfa04ce2c80325c2feb03b5c838425860b24a6bb2d91bfa5f67102a3f6acd3dd6c9337bde3e94699f3b3431d8293f793886238228bddf4b38f229fe244abe471b16a1bcc73bb7bae6a93788de0d349cb75729d422afb32caecceffc42b7bd0694b154286f4cda4517534d0c2fa7b98e72aef0e2b8d8e0bb6a5fa82eb802c27511256c1352b20d2e59d0d3d63ff5ec33670fa27ca69d2f586826d3a1ea098cd9cca9231e74b91e999efda12f63fa8076a44894b40840fdbc4d25dfe1cf7 e728de62d75856500c4c77a428612cd804f30c3f10d36fb219c5ca0aa30726ab190e5f3f279e0733d77e7267c17be27d21650a9a4d1e32f649627638dbada9702c7ca303269ed14014b2f3cf8b894eac8554,7fc1f7fc27223766c8f4310087a3c54a5a8aa061eb20d367194243bb62c7d90099684bbf368cb6bb71802c62c9f3258992c0c979557622a5fb15ca0e50a26891e73790ea3df4859829b4f683c7f5c2db0fe08ecf76b9d4e897ab80530d9f1d1242b42170c198c7852566dfadac5740d61a52c4882f46e29afe2c7335c5a1157e5b93610d0a8e4529d8473330547efe22dd9757503c7a67ada4e9b2ceab8ac5b383f2d6170d6d6a17c03ea9f9b9399fd6c1cba624e7911dee9892b31d463b3a44946fbf246d773629ea484cd20b03d8ac428bc8ae87cc8182d96f8d220a7312ddbf191f458493769691e7585ccd740c30fe7d63101023867c9a3f02d999bc0ad653b71dc9a611be56a44d4df2dbde402a0b7b6d7644b5754d50dc81f59fb17f7c38e62427a844db406846bc74dae737e24ff806505c5c4351a54aa920cad01ddd8a5960ae143f476608a6db6168fd5d72453ea010b1139417277e6c5116d1d32008a40cb3006fb65ee9d4f5f9aab1648b3990f5b9dd338836460075b8bc504b4dd2fc04ec57dbc63d32ca39c07ec7c2348a459fde1533b30f496f84502367be809d0ab0c6e86474eb2d7a3a4ce29cc8d0ecfb87b4662fdd789a99034a64c5b40f763d098888fb32346eb644c28fd6bd6bb62e0d5aadaffef0bf0bdb801a809f76d79b84606183067b5056528cfff3aba4f0ec0dc926ffcfc2377035c8b5f10d57 6348f229e7b1df3b770c77544e5166e081850fa1c6c88169db74c76e42eb983facb276ad6a0d1fa7b50d3e3b6fcd799ec97470920a7abed47d288ff883e24ca21c7f8016b93bb9b9e078bdb9703d2b781b616e,1bdc443b8f1e6a47c575a1158c00ec9e69048be22ac067cdc1233171a69e773b6319b0bfe0281f0cabb4da1f75c583320a96a62fe8ddf10d0c3f7871023562177e827fe0b58a02d38c5a4903b7cd8b0ca80012238372dc5dda701a4287d071fa2b29771f70548ce43acb0f2e5a49313fc76ebafe8b75e121f0294e417323ec9bca9faffa81fed2aa775aa2d2c641d7be624ea861bd5c24ccfdac1ffdfac4627c3985a41ee5eb57e229e1a1b9312c6fda4291605d26ba4401ef106dfb5befa7deb27500f11a09617e8cffbd39ae95d9eee736eba41ae469988947a863ff6bfeea212eea29297025f96453dc3ad935e75f12c5a7f0e6c12213bd7be910d70eb978624843ca772959b5918e29aa377a7b4413946a97e546a9a05bf107c881c9499b9e907a667ccd1b3c64d674e3a5796ec33f6d6e4a2ae7d114d744bee7729773a627c063133aeeec4757f999ea7f01298a783c32934d29fee45e2048322aa3fbaf20f9d70c1d8a0183a630e3e73cb2eb1c934db4dc9101c949c46c1954d95a17b7d362b87fc51be9fe98fb76b19b7fe9d1d76104d3d49fa7f1cafc252f2e4ff32c3ca43a23947eedd4b88ea640e58de625cb0a9e11212ec1fbb24bccb39b06ac90973bbdd279578666e4d169290b0321c5b2197b6a5759fccfd8cfa820aba055f81f1030840f3bef889e8ecff87d0ee1c53db99f67827710dd0cf59346f2cd53db 4b127fde5de733a1680c2790363627e63ac8a3f1b4707d982caea258655d9bf18f89afe54127482ba01e08845594b671306a025c9a5c5b6f93b0a39522dc877437be5c2436cbf300ce7ab6747934fcfc30aeaaf6,78fa82e4172cd8cf41cad3d431e39ea0c6a88544402b5cad9ff3d8cd6dc8890260d989aee087dab49c092a94975ee3d5b8706d0f1f522e5ac350306b01b4b19a81377667b20c201241315c3c05a9f7484ebb70e79588eead5d9bebe5acc3e226b807b46192d64a2cb886e4b811817cf7f219934c57d5dc2d00e3ee234b579b6b6e2d5346d3876cdb3752624e65434e88d55e1284297cae624995b1b37671b89c57e876fb361ed8ac6345693d82bdebe00ac37de6617239205aef566c1619f406f4cb1c9777af2c07f693e35e4289acbd91c59f067c502446f21ca1602d10cb1d78d18dcb043c4b4e06972178bab4c90062342ff3646cec8120a5cd14e19715f66ec6f619da0edbf1c9d9bada80f0bb210f09476085cdf383206fcdeb987623cd69d591f301d8db94018ea3f90b8f067c3e147771f148a60b440ca6be7a1943f544375d50d45db2baf33944190f19446f7a1f04f7e45d59b9548e01eaf6e4d6d525b37a65769d280db6db391f27a9d84e4d97c7ce0afca3bcca7a97636ff3756c6cba855dd5c625574277eca6a2195027705827c0e4ff945aa57e25efbb65f5128d312145c5a8da0a4d46d805c3f6acffb151b0484ef811770bdd87935cdde0444276cc8b64e84b877a31d817e95963f3621afe6fce57d94d50771f91cd0ab1bc61dd97bcf03ebcbc2c2ec687b705a2bcc5d0deb20cbe6459644d14633c65b256 08461f006cff4cc64b752c957287e5a0faabc05c9bff89d23fd902d324c79903b48fcb8f8f4b01f3e4ddb483593d25f000386698f5ade7faade9615fdc50d32785ea51d49894e45baa3dc707e224688c6408b68b11,414eadc6832f91a04b7700e668aa487e63db05151e29ef1718c7d9f4c6edd1c88b05910f23d8a854b94c7156c421126272edb73a6e158350ec7a39980da19316346d1f330c3fb987d7b4c46b6469b7a59eb6b1649bbb7bc0e074c00a152517624f22a4a58800447e7505d55f687f08fb939d1aa6df8e73bac6ce88467b30976150636146526031bac9f6667aa71516f9c5f70e502d7d18868f6dd359d8d026a040af3cab533ea5a95dd7cb2006552796c5e1eb2c3b46dbd9f2481f1b428cfdd1287299e7c7129b377e3954ae0ee96f955b7f0354610b84652705a0594c045c3cdbd1b564bec43fdb5928b905023b1ba41b448e39e649c0b65cabe745c1dabe9352d05f165bbed160dc2c52794c5d0f07d1e18f47cb94f2f97190944be08c4bae53755b30d062b3d697575ad56fd4c75ed40cf7c239941f7b052500ee5ca7cedaa9190988f47a21216e907a63c795d2292ce926d541f331cbffa9f16516d54999dfc9911310cf564d8f1f00b92bd9fac0aac99a951eae3175ad20558e8b934e05ff58351056466a61ec5cf4f11a01e3fe0cd6ea280e27838899bcaf7fbd8cd4308098e2ee71a4e9ec258d03118f0bc4619c66e52f35f1aad2378d82bda8adb750313705d41263cf2fdeba1ad5e025fc76dc620cdc3b684ecde0283f9a7d69a8463b58f4ac7f5b1e2f3f580ca7f4188f32706d722be4543e8e0942b316960349b3 68c8f8849b120e6e0c9969a5866af591a829b92f33cd9a4a3196957a148c49138e1e2f5c7619a6d5edebe995acd81ec8bb9c7b9cfca678d081ea9e25a75d39db04e18d475920ce828b94e72241f24db72546b352a0e4,0cf9aa0f0478443df90bedfc2457009f3e58b06efb22d1f282da4a2320623a250d584f27e2d45f708da667a9bcc26e35c19c55b16a993ae9d98948ff2366d8a0aa06915ee5712d137d46d48c536db9a25bdf88f99a941683e342b5541ae481b1ba6a889b7acbe9a6593c53349c1b7d6fc8fc66627a2faf7811c0f0a49d904246b95e9b668e8bb25d521f0905841b7b2ac64b2e359fb48ff29d7a314b1d2e7e01b0d210986664c249dc711346449fc77baee4df54344cc18a816ad9c980bd0d9d01c4ad4ef0c702cfd87805103910e81cd3f6cf4d13d1398e755e5470e23acca6b510ca59ffa0b523a9d7ff7a5d85fbaeb3e5a9c11d947ac5fdac04b0b77e4ae7943f696849df0ff931e2300cb099f0def86d835a8af4b53fc6c3d38ba33158a1f95690e8c5560c060b0e48783af1e2001bb04cb4399cd27280715aa0eda7ae754b8a13f84916b003f87dceebab5938fc4342167efaa2a889c48cf92f6892bd9ba41b61cd1b3bf94d612c2ed603687de8644613605fe9f066e4fcd8ff75da8fbc9c63c37d1828c173bc4ac668aacd20ab1e3f449a7bc4f4ef0a6ab8d5b0a70cc2d706b6c6821771dead7cb29f2332f4292df7e397bdee393d57b06a1aad3da51cb8f1d11e43d2fdbe72f69f951d0fd9217f4462cbe5c701fff1025515829cebbaed488fc26798bee9ad6ce88f33029061a588e177bc1cbb24eb393481f3b61616 b8d56472954e31fb54e28fca743f84d8dc34891cb564c64b08f7b71636debd64ca1edbdba7fc5c3e40049ce982bba8c7e0703034e331384695e9de76b5104f2fbc4535ecbeebc33bc27f29f18f6f27e8023b0fbb6f563c,2b8f5423a417d9b827d98ac1d21eb7c1cdf4348f28ff08b6f06389e4cc2311c5721509a5888df03f7f4b94d42cb66f3b885ea8b130934a1025220769d1c352f72d378f3a63cea1e762acea57466c3af188772872c16d889f06bf0aa321170fc1aa842b413bff9fa32fc1e060f868a370434c99fe586e8df4c6df1d167912f35e7bb983d668225dfe5a00241a1050702a5cef8cb5ec957b779d6ca1c9f6858aceb4e927e104a1dc59c5e90b31f4a6e27623b46d40d472d6d4b6ea6ce8ba4721a5a765de104c4ed808b4ebd73d60a56363727ce0273710e63fb8a2d565c49823823f7b001e44c8571b885aac4e14f8651cc95c11edb3599bd85989c931f866b7c63f80eff135db2fe1b17d5dff147959606faca0fe22e5bfc88d43f6057db91eb0ad0c5491b66b2ec9b20ea01e215f40922f41ed4ed64616960272617f32d62f28897ba03c5a8657b1dd4adbf0f8e53492998922a47bb2d7897502f8687c465c8a7615089062108d70164677e11e1f63917a4f230e8c577346f880b7b8ecd0640d10622131731cf447662afebbb230c902b28d8445c5f3ea031ae7af04f5b22d3ae7ce58c6cb4ec4158dca5266af0c50f609b12c5f4527f836f8804777bd6c80f5d7d9b0f317cb5a663d3b7f3225361ea81415cd5af56bf24629d511a80ecd169aaf9558af487d46a569495a70c76cfe83462733bf58b2a7c78a7ea1fd05611ddf 0d58ac665fa84342e60cefee31b1a4eacdb092f122dfc68309077aed1f3e528f578859ee9e4cefb4a728e946324927b675cd4f4ac84f64db3dacfe850c1dd18744c74ceccd9fe4dc214085108f404eab6d8f452b5442a47d,c52001ee31f26adb120ead7699ee35ac178d71fb5b0731299552b57df2a4f521a021cc56d54f2b43d18d7726fa977fec221f6819b5b7f933bee2ec643b67e16bcc26a7dc1bb1da3b40f2fe02645cf5bdf3140e89abace926e710abf0f07205291a336187aaecad9371da35867ee8d8845e09fb47269ed94d04b47a3b6c460bf419f13ad2f65d63824805ed264affca9e7ec9774c4e3669580686c0a02eccd98277365940f4cbea5dd5b0bc84f981c16fa6cf2d6f1a292ec956c7d0714c6895e96a7c884173e662ce5db1018fb512ce773ed4752cfabf9045269922d11718c572a94acca1edc04ce16d533b064b416684d921d46a8f2859e7d09660f620dafcc232029a20886a552d29ccc30509a3941847244609911ca6c596e2fd915fa8be37d7eb41d403043683ae9c74dc7d6f4770086cf8c6e101e989fd6a5c60e34183c4ef08ea869fe2af0fe5ef701a6a64ee0d0f813a14e574d504e219292c103469f9a11de750832c2bde0261475856d5c9fb4727ca49ea81908a1f7faa20248c739179cc09d93e4901ed63f14a57b20ef9190176a27bc07f912cc62dd1328b032b893642118ef3426b1a8b95a0e36fcb8a7757025606e9e485b56e84d0e691234e072ad64fb8e836118634074fd8362405dbec4d8aa12e9e84068ee3b29b7f573ce1b52649ca0dc1f758c1d4f5e2b72a861d6326f01084b6b49e478fb4cd8ee92750 1755e2d2e5d1c1b0156456b539753ff416651d44698e87002dcf61dcfa2b4e72f264d9ad591df1fdee7b41b2eb00283c5aebb3411323b672eaa145c5125185104f20f335804b02325b6dea65603f349f4d5d8b782dd3469ccd,386c3b1a524f2ec39c33fb31cdd3981fdd57f1e33d04fac54828c54f42ef763856b72202799d4cdf4aecf073b8b9eac39f0f6954545bf60dd55ce2fab4558decd7e1a5a40b87a293d35394da64a4f606956213326ff4d8849a3f19781afa9dbc0ad0e0bed551164275d4fc11638af3acf95c86994c27ab72f0e5ee366ca8ef39c000661bddf23551aa368f347b4526474496ce14c30503c2513501404987446a193dae20c4b384d0d9926814baaa863320946b9759c7bf1bc890f88826da59e028f641cfdf7223db20b34b6389b048cbb85c4a0e4e84dc5c5241d2daeaa82e9092ed266971fd185d3b661971160c05c4b42ba8e1e8e31fe588c0baa81a2bf2017b1e0b99bc360faf13315ce88ce653c20bbcfaaa8ed013eb89fa5da39fc49d99e3c050e622122b7e393bd933b72c5392b165e60538bb6e29de30a5947053d4a23038aaefb13db8ba4fb3b1a65b474d94e4cf985b2402bf22ca7fb723dcdd83ba875df3c60350886cab6a1bd02fab32f1dca0ccd879b351196e1f8bcc3531ac653604932b69e7365b8b61e557585b7a836379d0229844f6b5d2c4f31a6ba2cf4a2585b7153c6005d10526dbc144189b0747cbe58edf2f4ffca80ff99a4bd7c8cce3bcac36aa5d0d7dc2b231a5b888198ad71042cda93c5aef246cf3fbe7a663fe60bc04cec70480cc2d83c847371ff5347a93d54059926b6b8f52ce6afd2e5630 b180de1a611111ee7584ba2c4b020598cd574ac77e404e853d15a101c6f5a2e5c801d7d85dc95286a1804c870bb9f00fd4dcb03aa8328275158819dcad7253f3e3d237aeaa7979268a5db1c6ce08a9ec7c2579783c8afc1f91a7,6bb18c45be71508441ee815061ed782f4bb5acf5393bc9bb825fc79cad025c6d970d615f4285185696ce226969d5e06e1643f8ba93f5617afb096abf46de2ee7d32bbaa335628c41f1ff308418556c51e6da30639ba5da36a14976dfdc013551f632133723aa9555b8b11bf0594457a6b288b01185927a48412019e58621806faa968ca26366b884c428607d2d6fe9e8924e6d8d769a7d2de90195ab6dee4896abac3119fd15ee61251fcab1d3858527e2e6e1b8ec05bf8659ea345e519cadedd779e40d2508bc6eac6fb531de15cf7f3478a4288df556d4b6c9ddc5f1b6071fedf3c4f9a960b18f8301064b4f83620f2402614c600ea80fb2b24bb9b8b777bba3010ac1fbe61ae18bfff9502f66111b8ca1e0df671c311a6f11697dd8c245c4b946b8db03d6c07ef14c45cffc328e6c12948d4137d6803469e996c1d84c3c1dbb8cfce592217155dc8f9e1e558cb58693620f57f5f81578f060b23a1a75abe8010fc538524dc1b5543d84f5f28cde4aa509b8a034522f2f61f8e3a683ead34ece04ee84663475d65d6db75cd6fbe011d6f1994d76be356604d93311cd0410d3b022fc328cc850d7bcc1bb96ae45e8b4c9e53904fd8bb8b0fa1d8aab9bbebba0724dba6a2c71f28ad705fbe6bfd958fe493ac47d70a1c4b3bd738c519558df9f66130c68831a7d748b7b382023810865cd9989735e25186690fa187e8e24b77b cf3583cbdfd4cbc17063b1e7d90b02f0e6e2ee05f99d77e24e560392535e47e05077157f96813544a17046914f9efb64762a23cf7a49fe52a0a4c01c630cfe8727b81fb99a89ff7cc11dca5173057e0417b8fe7a9efba6d95c555f,51f3de30531335b02c0a8cda5285fbef9af618e433142e9e9713388602b0486a99707be420aeab53dcfaca68cc6cc6a3133075a518d2eb1c500f0ac2e0b8a91d3303594bb38ffc45b80afb8e25c4304a85280e6124891e739fc9df8e34abd9262dcb4330c2c0f22e78447b3fa67677acc1f3d8e836eea94aea4d616132650c9288804c3cca5f1c0139624e198643d52c42960052fbbcf89af00d58600a9597bd12a39a33aeceeb161ee527398bd915abf642746e4c965a77e916e700ca905cb70222a3a8b8c5de3acf75a9a0065681497f27aee6b1f4402ea711ce6b24592bc637f83baf912d3e10e0a7e03ce9314fb264e5ffdc3564307362837c28afbe2c94bd89ad3cd4a48c1a2ec38090c38e6cb4174149cf0d5841049c1d7dda1e51df8f3216caa119a9e3229caa062039eb165f4d5de68fcb76ed32f1e191166be83cb6384fec4528588d8a3188a9da7bc1f5de68c42d9e2934cc1010dc535ec87804810c009982be6646b3c50dcab7eaf4dc7786503f29eb3f1558a7341e49348f73479a2d3ee6b8ac076bf5ad17375d81f9e4dbb365b2489f17c40b9a4cc10f6de034b4b81a3d4f81475babb9581c4bfee62c5626fc436983570d5c6144fdd5a55e1898919a8be4ce3780fb254832cca90f988004d12039a947502216651775160d987df82f43275fc7b8a308c63db7c28959ad9d8e6d27a5a551e685b663974465d9 072fc02340ef99115bad72f92c01e4c093b9599f6cfc45cb380ee686cb5eb019e806ab9bd55e634ab10aa62a9510cc0672cd3eddb589c7df2b67fcd3329f61b1a4441eca87a33c8f55da4fbbad5cf2b2527b8e983bb31a2fadec7523,41143ce195b170fc23ed53d7ae8ca61f397cdbb72f261750a7bd26cff56212ac7bb1b18d002493f418185acc703df4417f44b93f4a7684d3d68f8f042a73c3841b6b5fa0079163d4881c39bcecaa548a50237e3f8df20f986552978ada9c4eb2e57062db8d91564ba4eb96503b932b5fbe3d88efabf452a03eece5b3e78492dc555ecc95714a1c5c1b201cb42e10852c9a5fe101ecd53fc6acd7e1d0d6efecf81ba76582e6e9cf80e70e52c0384ee05978a31234ddd1c2d501dec0bf1f26706f1c6af4a6dcfe1e7245d7bfbb96da619ef27b4cd67527bd6b5117e4e55297b9474a5bcd251f0f17b10f196cfa95ed3ce61458acc55cc2ba83904796aadd71e978d4615e6588954f7d48b1bc705b497e073dfe2abd5224792eca6c09d611c311c544bb332b2c9d144d24950f3a27857b9f9ad1db4dfb9aef65bce2c224ee9fe9785593cc9cc74d076bb5dc575b4ea65fa59a6dfce634ef83072cbbabc5aaa53aef5cb4d2c19a613d0054eda3954be7e649c2c38cfa9f7746941e2b77deb63e62a9ffec59d15329cd7d02fce7006406f3119cf579e1f6f0a1f4fc74c7031894d240b5bcc9a7306754af9b43df80005c7b62f885574ae9c44b90d5cfb93990cab41fc3e9962cd0f8047ca1aeb1399faafc6d6fccf66b2f02cfb9532899cce1aa8e822ee9498a67c3972407dfe98969f9df9ce328a4b9a1dae1651bafb32ae29bf666 76eecf956a52649f877528146de33df249cd800e21830f65e90f0f25ca9d6540fde40603230eca6760f1139c7f268deba2060631eea92b1fff05f93fd5572fbe29579ecd48bc3a8d6c2eb4a6b26e38d6c5fbf2c08044aeea470a8f2f26,1b0d344de5a414960e67d684d301901d8e89c25ebdf7494db9a1ffed44e5d688207f4533cadd09fc8bd428fdc3592959e9095613bd808797bfef5130fbfcc1fc72b58d93bc4a291284115d5eb47911fbc0a4aa5875aa2b6ee1e1bcb296507183aa5399ae8192ec6ae579d9ad172f72f5a1957ba10b0fa4e9666fee9611b048730275a0f4d6d48f98d860939936c9b41d1af5d729b11c93085346d8769c141b81fed9f17fd85c0197380482483c5f45b3d8bea2c2e90eef2eb489b6986a891bc0f29ee7e2943355e4223c241427c49d7a897c956323ed10b074132449fb6371a9bffdab8d113282016af1f7e8e26807a0b0b4809bc035bae86f476f7ffe002bbe7e30b4c06b00e712f1d54e954d59af083da123034e73b9854b45e9bc2efbbb7282743dc5942bf372d94432379ebea4a656997088004a5c2aefd6a4ce6fe94c2a06c8a0446495df224269e310f1dc184dd37ece4ee46038369c031ff90ad3787331ab6bb1cbaab7a0194fba947fc6485b371a684e7e1ccf4e9f4d272158a36b559451e48095b3c09328dbb52c7659c7e163504587962d87a5e60bb3c4868cebc204238fa08b97af71de9abe7f409ad0d29455e1ce59433685efeaaeccbe01462b1760fe25bace44cfa6e1b5c28dca00790d96d2b6fae377ce4bac7ce64a97af68ee913c33107e4a62efd4cc752dadb23877b54795a43a7af8593e085480f9b43c 7adc0b6693e61c269f278e6944a5a2d8300981e40022f839ac644387bfac9086650085c2cdc585fea47b9d2e52d65a2b29a7dc370401ef5d60dd0d21f9e2b90fae919319b14b8c5565b0423cefb827d5f1203302a9d01523498a4db10374,69271e30637ce53639a9a80582f8e9d91e0a19af1c25a4e316a4acbfc4534d7b6db55bbdea37f2526e5ca0407d0a39d06e2afb6538c125b3390a860e033378440419ff91634bca42eec9ad80e55e65d43147358146038c9baebab808c1a9b2d796bf22baaa54d92298212e7101e56d1a0a229cbcf9e08791c6bd464eb997164502445c2993b1d2a6ac4242d1f4108c2ae4dbf48fc403fb8f353c5ca3edc09c5d4993048962d1ddb474928bfee27df6af8beaeb264edd09db4950ac5e12561751bd3abc41c9a81f6c5c339aa9f7266cb4a28ee26f29571a7f4c9b350974beb0aaad642d9934e9eff77ed136bf825a845041b9c01f0559bb1987fd6fc951322e4a4b4ee50c7a7cc43324391603d689bd19ada54982e03a2bd12610a09bd076c0c3f6d6e0ca348110d8dc5daa5c842198ac5ec92a79099adea1fda0df0b35e8871373b312d61554391dbc9e1c5f9007c9d3799c24dc4a0894e175706df7d04eb2d69d90bab57117e04b681fb24945f3ba3dd7f1912171556464500d4fbb9084008a79eac50d8bf59163afba8e0f1e5f82e15255398f62890c9521a0571813210fccb582818a6d1747a31822db55c4b6bf15a19076b7d6349873c88e86bd87d08e0058a212780c86915ca559e581ec3dc7d5bfab9c5403661f09484f908dfb2d98b65f8543fb3f102c2c5d0b89b15e565e9b04e07f7141e35102bdb056801100b160 e1fffa9826cce8b86bccefb8794e48c46cdf372013f782eced1e378269b7be2b7bf51374092261ae120e822be685f2e7a83664bcfbe38fe8633f24e633ffe1988e1bc5acf59a587079a57a910bda60060e85b5f5b6f776f0529639d9cce4bd,2730675f5f4db76d342eae88cf856b370982277e24a1f95e071eb0c28d6655d9517cba67dde32ba6a4a322d37ad4a4eef90a60e2fe3a568417be75432f57964bb1dd7a5a165c24f38f4085cc4551c35bd0e2663198df04ee86803d75ee5ecbb14d7ba616693432b0ffc83f27e82016d7e3436c2384d1a7ab87e4ce758a5a83a4fd63831d6f88e4e80d1cd257ed4b418fe1bb498004d1ce8cdacede429a53f06eb77d0a6ab47beeaee12febeb07d434e26a71957e55f4f3284ba0f8157de3f1c8e0e4874db4e65e5243982bfd57a9e70d18be390834a9c3791e6ab6341739a963a946e1da81a4d9b3722bac231191eaa013e424c2b965967ae986d50426d9830e92499e0808fd6ea92a8a1054f93a0f84c11bf417de01a7b0ba5890172bcaabb3d2cc23853822960e666558b2b4695f38a22b576757c0a1a84437e7b627989a4053b14954eca09df2221d6c6e88654eea2a741df3bbd6ef2a8c463d797222e72de8e44c8c6f2feb44e3d2310ecbb139aaf3fe2c4b2bc9d7142c0291bf9fc9771178a484417202dc721876800e010e53f1972e3630b5dce0216351e687552af2faba699a4e3e0c5385d80dc367fd0d07258dd59a6ba5d2e0ffae60a5e0c48243794913cacdfc14d20001cd9a097a9cc57d313006e0b8945ade9791812b63e98a291cb009e899dfcc7bdf9f58f3866f6c33ae77718081a517720c34daeefa527641 69f9abba65592ee01db4dce52dbab90b08fc04193602792ee4daa263033d59081587b09bbe49d0b49c9825d22840b2ff5d9c5155f975f8f2c2e7a90c75d2e4a8040fe39f63bbafb403d9e28cc3b86e04e394a9c9e8065bd3c85fa9f0c7891600,df6fd8f4e768031b0ce25c199f02ec29053ea8200b7eb306e802c8df23cb213cfa06c37630a3b14570968948c5269a6770622527c87d432098f0cbccb733a5d28b035cada562bd0fcc032d2f45db8d2c948fb341ac2b0c5c699c62bab551553099e8a21518aff800c8ed42b44de7c30f29e691c1435ce72cb67060307d1b1c38192fe198ad3d20e9e12a8c9529f8a134a0ccac8de552af3fc05d48fe2e3ed1de5adfa0b7c324320e262232a14d3a7163a04980cfbf087bec24e356dfd8ae4de9b0620bffd1ff904e58b3908522ac13d1d541f662d95008b1f8c52da67829b7cd208bc9b8a3b6927e575bfbf7e29f1cad832d9d01ed41e5512ace419b92f71fa0cf5f79e33016d5e19eeff561c94827584623118ea367d768bc24927c92fc19999feff28e3a09d2f266b28433cdcd515895711fc081f8b1d143323b680e8b7469eb0fdd467143c292c8d822cc16111e9ab2a0c9ead40b2867303686ff4b9bb4dec4c8b552e3796cd91443af8c4542897769eadeaea39a366e91d65e92f06cd6554a1f6ca905996f5f62cfd559d1b300d912e6ff91668534880e6a8c414fad3c107a180be3e0bbf4f33cda343032d01c98c6320f6de582dab7b15fdd6e75ac3ac7fd079b191233d872ab351ae1a56f0a4cca8d0215ca1fd5f9c45ee171f4bc72d18e78ed6d9d651e40aa77522f6e3451995fbc3207fc0f30d1b39ee836f9371a36 38a10a352ca5aedfa8e19c64787d8e9c3a75dbf3b8674bfab29b5dbfc15a63d10fae66cd1a6e6d2452d557967eaad89a4c98449787b0b3164ca5b717a93f24eb0b506ceb70cbbcb8d72b2a72993f909aad92f044e0b5a2c9ac9cb16a0ca2f81f49,3c891240ed9f62f45658b5c1d3e4d77975e45cfb10c45513927ea9d911b3e41414dc0eea38c8a6868a9e0af20f96bac833c1daf71d0bfeabf41b8c26c011495f8dec94d72acb5c5c9abb1c372f8b779be741c860e722a0f85caac3d21c6c9ebe61c6489ff5581adf5650b6416e0e88a889ca60cc641052d601d491057bef36b4dc3b5b76baf0de4e7248a40d9be6d55a7e8c26663828d08495db33f94acc7e7e49a7a61f352816d8c4c0e23f36540418ae6dc009fab33c945c6e48ed60bc466478788002220da9a5560425a6162aa03afd5700cebfae439d20a85f2cb826cc8814940f2cf25e34754d8df03de448fd1d1ab38bbc2b1577bb1bc39da7b91b7e63f78c5f43a875c427bb110e0d5ff07e004ac9d810d333300a2778a06369b7cd684ac86aebc97d7b9c09442c35e66925bb0e4c04c5b3d11267f0f3812a5bee8e18653d98b6b586d5735d4d3c92e3b76db5be509ab32060e954d97fc8b6a428509ea98e4f8210f42db3229e07e1eeda684b47911556a8c34fb0dcc0998a781fbca574fa891c24b35251c9d0d8429763468cbf0214b2d1ec94ab3fae82e57c748122531c615bdbd4cda56abf319d6eaff738bda7683ba4cdd78737941dcac4fc45e379bd6512eab6d14c4f3d5748a3cf45713792d314f81f1d1f5aced67a0a9aa026433f320530632e5f72122b63acf01f2bccda9bd4fc579e6ddc1371dfcbf7347b 6d8c6e449bc13634f115749c248c17cd148b72157a2c37bf8969ea83b4d6ba8c0ee2711c28ee11495f43049596520ce436004b026b6c1f7292b9c436b055cbb72d530d860d1276a1502a5140e3c3f54a93663e4d20edec32d284e25564f624955b52,201561b1d68f1afb93098777b7d95e56b790194f45057b3b50f08ea89436e54bac9a5e945bd1cbb51acfbb0d61e539d1b3e896a1bc1426c1fa408b5d16d706457c35e3d67377ab2817127a852da463fe06d2efdd25016521f19b8d5e54014a54e297014230c81c917a983fe4429b47f6a460fcc4aa5a4e1e322cf74a9dafd30d313d2c0f9ebd1a8468a300f12e6cdc0e971bb7bff172593c7db286f467899b9a23ed3e222bd6124cb9c4fe2afac157cf81ff098f021b95f1069d7609963621c368afd3eeaf84a17f1469aeeddaec2db5bfffbcc39a73aa2a62578775100a92ad74ddce3a0dcb27a740a6e7c0f4c3e36e4ae55b04f04cb7d9527176bcd94df3b884fd4cc2ead608caa016eda2e2232d0af888a3add12cde0d8488650ec6047199842056744b77fa806bbbb96a47ed253192d46b47d828eedb9dc0cb38d576735e870826f829d76f58ca7f3a80fcaea1cac1bc38a6339c307f23dc25e3231094211fc867b0f0bd9d1584fbff5a52ec3b5624dc814208e484b5d069b78a577eccc017fedbbd139c13b50b395ad16cc551430229b56b4d75a14588a765728774cc234d1dc46f0e64e7845cf237330c3d2422cdef5cb1d741741da30f39d99035d7f7c49d6a3149d02dd061f85323d6e0054db7395ab8fc496418b7770355b854fd36fc1de72cef330976c2fa6fc73469b71b80f5d9b5cad008c38746a54578c3d195 6efcbcaf451c129dbe00b9cef0c3749d3ee9d41c7bd500ade40cdc65dedbbbadb885a5b14b32a0c0d087825201e303288a733842fa7e599c0c514e078f05c821c7a4498b01c40032e9f1872a1c925fa17ce253e8935e4c3c71282242cb716b2089ccc1,42a5915cc1dbac56ff74825db482afb8752991edd5b8f5d040fe45b30161c75178d5d56f8a6fe9b11a71e19d0ee241a656171ebd9501aa4b5f2cf0344fbd23ea5035d9a2c42fcfacb5f13d9212805f353932169a0628d015644ed450e8f8717a1901d5a21fd9f8360054946a29ca31debe683956fcc9f862bb5ab04f07ab11f751fc8d7cdb0fa9c616df691794c6d26cc1a18a45847fea76017d57d9bd6bfd1e5cea4c92604acc860252dd0f53886c48d0187054bdfe1939a2e6d5c570a82c300a6553bee5e107ee319435f0ad18b92552ed9b4fffd472cc482df76b6daae5432d17c2475444bb76cd79313cd14620c1d2b3487d91c25a47ade446e1defa7c6d2c2eca3163106f10eda5779ea6c21f8d778c29ca3601fe5f456b74dd08c7ecde8ff599b26540624bab26314453247a9456124f680e68cb91b8247e0e5a06cd366e46055f31712dcba81b590fba34c8e619c8f3efd39d2b69ccc6c3d184fd058a9bed65148ce65680f31715373526c509eff8ddf378a0127e1482809ca13a834fb3a1b00231f6b69a8523f72ef580150a4805981f9b1a7488ac880bc4018105545707b85f24569e4f864c30e66e750ae2065bfceaa2db440250568c6909590afac5c1df88d3e6f02d2b4d609460a6bf76ff7994eb5f64b00831c849f7851a3e743daed38668fd1548b333a01568140b1dcaa00e180429ec6bfef620b06c98ddad 433c5303131624c0021d868a30825475e8d0bd3052a022180398f4ca4423b98214b6beaac21c8807a2c33f8c93bd42b092cc1b06cedf3224d5ed1ec29784444f22e08a55aa58542b524b02cd3d5d5f6907afe71c5d7462224a3f9d9e53e7e0846dcbb4ce,bda93eafdedde22b029f4618b2135e9f7afa583c8bafc3b62cc667c4704cbcdd4ac6620361a0690ab8e857335c150c2d70fac2c2f2d60d6472ae760c082775d54c8eec450421d536b1a94a5da5d803d951709a7f5bffe63454306d7b229ccd3a89dbf9436c9c91c01a1d0964d86de868b4feae6e3b88592a85e2bdc82cd5c52968c85f429b08a2e61e1faac0945606ec462ea7b2af859609eaae3025e43b4489f7b1274922fa72619b9eade2f6c04d5863b03ef76189a81b9bed9a47bcc53501e96c2367067012036d07b95ac0604fb0e6a793881cd81d9577bf495ff769b72dc8b0d554ce70fed81fd3aed5426525241924423a4b11391d3ab16c02577ade31301960a579833c3ff5f9dc0ec068c3c92234b9de3051b58330ad87d0bb6f704b210e1c5a167684025af9791757cb0da0517e4a271c89aeeeebe529609529b69e9a53c1631ab89afa3d0fdc582e923e5f2293903b75a4c321117bbecf2e114be505de8cac608c1deac6fa33c658d72454fc5c3784989803a839d565da08436e700f3bc8df99bd3465cb4c1e8886fb20354e132a629fc964b10714f006978121e9737d70a77dc73ff77830e2dfb3adbaabc83657d8700206af318714867a1ba3bdcb8354b91f4f1a8b09bf54805ba01bc303e5f9887210584913c5130b643f15ab603adca3d918c3d5f15e97ec27fda51e4e6cb73402afad08678217e46b0e2283 a873e0c67ca639026b6683008f7aa6324d4979550e9bce064ca1e1fb97a30b147a24f3f666c0a72d71348ede701cf2d17e2253c34d1ec3b647dbcef2f879f4eb881c4830b791378c901eb725ea5c172316c6d606e0af7df4df7f76e490cd30b2badf45685f,e4d90a392bab78dd363c8747c586035358f051ee8909762c3d9ab4b2f1b7eb50b4738423c4a5087a5b12a9deefe186d0086f4dd0f9131acce891e43d131627316ae63c4e7d1250d809e78f94d276ef45c3c8ef4a37ac5910f1dd5f95989c938c98c55771b6de1ae68f3a9015c1fbf2447f3f72c15847eb55e0296b711881e0c8518995bd7f75c3aa9c1193f3f7b47b9c133af09cf53e1f55c17cd96318c821db4a6c7e79dd718684cd83d43e3eaad165fe26fa204b797c59f33589e92c43e7e799e5a857acee310e66f1c99a2406cf4d2690daec060cc7e3019cc4a842881657e58818ba193e4c8b8113ea7b3ba930abd58a7965f4a176cd5ea1447b41747694fb36775fa90999d1898949f8cb5943013a9cbe7654fc5d7bd7c915c1d251a22d6d8f7671d77417459366581c5587065c55aaeaeac19488876ed0d5e5f2f3f0a07006500d03ef8cc151ab6b46d587dff8930ac8edc3845bd2596387a56825a0036e1fefe70e2a53a4c19b5e45af6ad1c463042eee139b244a7751daacd4ca7c5ca075d2b639fb6aee355ddd4fec35f13c74e822e5f2c23a52eb2c2e209b62106195bdb80f19ef1636ca813e2fdd96425c971b6d0ed6b468a5e8f462d521e41586d7c848fe3103559d65b388a0d0f84ff6c4a48318ba3860ce5f2c419696931cd89f41733bab732fcf8551b4ed28a3fd2f1dd14d2bd570048fabd6026c984ecbc8 006917b64f9dcdf1d2d87c8a6173b64f6587168e80faa80f82d84f60301e561e312d9fbce62f39a6fb476e01e925f26bcc91de621449be6504c504830aae394096c8fc7694651051365d4ee9070101ec9b68086f2ea8f8ab7b811ea8ad934d5c9b62c60a4771,ab362a6667c3143e58db5d5e18294445643f1fb212faafcea656b4c9c9da509609e7b99ab0bc1c7f782cc8bdd2c2c49a0299109f842442a6433d9515badcb9e961c0eaa0cd90906c2970171ef25193cd49ffbe6609bc0f5702cc3ff1caa859b50e59ed6407d9da7ad2d44ea36bcf8b3f48aab75c1eaf0c2a8a41e33135358eaed3c5005cdf6114d35e4ea2b14e2f8ee6b995ca73fd75e281c3a145309c620b66718e058e171740649dbf4786e8b83c19a5cd0fe67b68e3fe2509662d968f4212224b466d04e4878c70b47409e5fb56ff2a5f324a96e799ccfc6613b28df7787a6d9670569687d8345ff1f187deb2a909c66f5b890cbcdfe18594dd52328f5e1d3b15f6398f9c3b880af4d314b1924cf2fc30f96b45869e40e4a147d94a4bd92e3cbf64ccca69b3476477b79b571fc5f911529e151c3dd2faea561e9fddf7de4c93e5ce3bf3b90d25642ef62740eeafa53cb4356cd598e9cf40339cd8166fe3cbefc35b5990e642d5e2578d893c0a46505af49280d544ce6865733c1ab75bbf194a4b6ab0447ee0f33fdbe80a41e860d80026a2d0c3fc2274c9a1be2c07c57482b3e3982ce5495bfa0f9b5a10d2bc46f5dc78e78168b552ce4d6fc9effc0faa5cba0cfb66ae078e6dc8db2459c127f970b379e87a267c3a0a5e1672b5a16c93e8e239c9c3e51a96ec777361d0583010d4a0773921dc48b63ba3155da483c03d5c f13c972c52cb3cc4a4df28c97f2df11ce089b815466be88863243eb318c2adb1a417cb1041308598541720197b9b1cb5ba2318bd5574d1df2174af14884149ba9b2f446d609df240ce335599957b8ec80876d9a085ae084907bc5961b20bf5f6ca58d5dab38adb,d5d2074e7d45403d43d0fce78c3ab81e2bd601a0337b163ab2e2e11cc4f0e73bc0e41adeaecb5ce2b0422ee97ddd18869bcfdf9b4cfa9cdff5ddfde53b05d65b5ed250911b83be8b9e58655685a8d33c72826a1ebc1f244a433a9440b24dcfc691d9a78f32379bd8bbdf4f8e2f8eda7ca1cf74fc4e8c3c07349de823980d9ec8229a3c43bea5feb0bb8f25610127ed1fa1741f90cf25dfe73315d440088c3523d9d5be12431eb81e23ef5f5e9cb1571f08dd24a7eb421caa74c374f7ccdcddeb4ed57297222210fa4930888c9aaef06e36c78c43bf9196848cb07e1d941c719cbfb6af8a5014eda9df9b205dc905b28ef6f29e2c29cf457317e01bb34acd8e34c67f468cf41729bee3532833d147ce4e5618855f28936d3a4eb6e0382049614a5de0b05b317240a6e091cef8a26c7e13280e02d19a6635033633efb03fcd57ae2678c639b262f016647c61ce5ded0151951c7eb1fa1e3bbd1808210a3d22aba98835a686df3612ae6536d2180de2db5103e4be1b2d74a8482450bf1b9f4fa91861505f5739f64d7c8cb8c5a3a2f864161f9b495445a1f668eb9a86e0c25d1bd0c50fa6431c4d4beed9f53b6e918008b3dcef98b484161a8dac12c642df9278601ccd80f789b770f05e8359495ddef5d6fe54086827ffa8e7b2bdf03a33397ca2898214de5a36d18ac33ee1cc0ee0fc4416a86815c7b98ea08c63d23ceea1977d e35780eb9799ad4c77535d4ddb683cf33ef367715327cf4c4a58ed9cbdcdd486f669f80189d549a9364fa82a51a52654ec721bb3aab95dceb4a86a6afa93826db923517e928f33e3fba850d45660ef83b9876accafa2a9987a254b137c6e140a21691e1069413848,8a80e00c325a49d17acbb96fd41e874eaf00a0d141cb59dd1363365db060f20c1015929e88e0ba0589fb35ca348b3f02cb256cd5fafc7b1d1a7445c238167f325a2611f7c5e2b7ed44395938a5ce501d6cf78c9b9560d8f84210eca3ac12ed40954ea0c8ef362de08cf11fcf47c34a3d56f271453bd62f74578f06b1c3958be6d87331d8128070c244900b6dde1423b2561504156fbc045755e1b591234960e1a44fa54cacb1795ad8eeaad38faaac0a4eb846a18b42a526018eac0a5041dd1200c4169124590acf93f2f26db5d173608fb0b6c3c83f5c0b01349c558ed0e5851c9de615ceb684a3c9c663119444008da4a12e9386c98e15cf23cfeeb2f8632ebf15381d17268a5f92fd15d464d9e1f6ef896828420c9367b14c2b7e886f42c439801e0f119d1086f2a99b5e402e786b8c5a3b7902d2274ff1b5cb706ae0b5da9ce63ea943b8ad8743c0af4cacfa6ec9a2bfb45ef680385568aacc518755b7a2c4ed40f276e25be1447f1131d064a5c54f3bdb80d4e6e1338108251b8294cbe4d3f182f3f462b3983abb7f25b4d9ac8a3e2f3cca397148ebcc154de7dba5a4820c677faddcb502b6a67af0dc0602cde5ba983c7be0235c8bedf1916f51433d80ad87b4815c6c397a9906b2d075bfc0f72431da10f04aae61545a62364f336754248606ab062799988e6b0d71c2dbf907e211c963a3823332d6abf4450d311080 64ec021c9585e01ffe6d31bb50d44c79b6993d72678163db474947a053674619d158016adb243f5c8d50aa92f50ab36e579ff2dabb780a2b529370daa299207cfbcdd3a9a25006d19c4f1fe33e4b1eaec315d8c6ee1e730623fd1941875b924eb57d6d0c2edc4e78d6,b645903f62e2a0394b7d98a526ce6c1725a03f4b35cab927ad4fc2831f460ca6eb0959bdc5d90bb37e1d0e3ddc6cbdbb8f61d921b7cc496d903a92166bab4a436bbe6e9230dd0f91a6ed791889b67727338ea636f54affe59d52cad1b0d26aba8a29c92874b5d6276369fc45769a3323c9788a7ab268081689614622bed3dfa207a0382680219d24b2854eef3024a34de3fd4acc827d52ff2f1a4b40f1e957729609f8d3afef23a94d9e3efbfa3e66bc1ed44c426d27ed4fda0b4bbbac6050dc71d064de236dd800d0e24188ea0b1899ab6d0ac16986034bb1c8a21c7ad7f069e706730450f046d5f9b3c066c6cbf98c5151e5b45d6b0f3ecef0377aee19d83941cad4484ad07338e7da24439ee38875498207cfd01349a3cb8bcab058c70b48827c22278667026acce65a8f643bda30a3a6febb5eb7b981963cf07f6fdf20aed8769c8ec35425c4366eeea26ab28bf43e7fdc8b4f762a2cac06d10e1a8c6ee35bda64c6f71cc02675ea4cd20b112b6e12d45df6d37d83f04ce55dadb9f54c8a68e2c76ac55aafb1a3231c277ae27bf2742d08ffedf08df3f098c5c60b59d2a89d2af150b3fc73e399ef94b5002dc0ad1097767f47ba07f442d4df4a4d72e5aeca7b2a37899f50fa3cded91474da106fcc96b28d8418ea340bc983344bb58f244ed6755ac342b9e6b00cb19f9afeeb3135e0374ce803cda44e316eaa0b6e1e93 5954bab512cf327d66b5d9f296180080402624ad7628506b555eea8382562324cf452fba4a2130de3e165d11831a270d9cb97ce8c2d32a96f50d71600bb4ca268cf98e90d6496b0a6619a5a8c63db6d8a0634dfc6c7ec8ea9c006b6c456f1b20cd19e781af20454ac880,b15d1dcc49b25b2ecd567e1d0f46732cad3f9559efcfbbd1793da46a5d9bcfad723e504b12b7c1b65eafb9647dc35a484485344b9dec5c378dde04227f7224cfe6f06a962f380ae104146dbc2425fee1d7ae7305e2d2c4e2f91d9188bc88799b730abf3647a4365562acda20cbcc7dfdc5c6dea8dddb20443b9253466e4e215360f4066d918d938fdd204ca826e4a3358d169fb34410d45f8e783e7fcbf97a9cf0168e8ee6402c8b627de5bc4dffd8ae2c8807f863d10edd57503a99a46035173a20dc10df3e6bda62b518e58e94e5624659890f1174b3b7d798206691d3ffa6924948293821616184e160f237c1241f11779cdeb4fdd858b73f3df45f05f43bc81e0ead584999da04f71ea4914f8d8ae17de086cdf69c31fccb48b528781fbf8dcfc710ac421d28e93ea95db4a6d38c1d47c800fcb3f816e36c86d6b3e5d6bb31c325c7a0dca4d395867f436f077c6711bb96dcba9a6dec6318fb9bab829ae40bf70c55146b87d9fad9a839cef462249bdc49b8022926e3c664d6659523123a6ee980b69bea87437322da1dd6235a74163968c0994ac0c21156476d83f2b8697a1b510795d936dbfc2cfe67ed401ce708c7531f1b4de75e8506db082fd9b3b24673938242fff4f30be97cad8ecd2f88bb5f497a8f154465921c9469b70fba1f45d76c9a40228a93d67836cb7cfe2f25a5f56c216084521484a7224a7a976323 03d9f92b2c565709a568724a0aff90f8f347f43b02338f94a03ed32e6f33666ff5802da4c81bdce0d0e86c04afd4edc2fc8b4141c2975b6f07639b1994c973d9a9afce3d9d365862003498513bfa166d2629e314d97441667b007414e739d7febf0fe3c32c17aa188a8683,7af1cd3572930b440f871cc3388678a1c612d6a590cd2b8692e0b96010ab4e122cf856925dc84aa0a87c7fb1661c5c74b0811488d3d486014e81b0d29b73450a0670a6f8223df95b542590b3f6506cc18949fb6593f1a552e064b4e1576ad7a7cf202e0b8f90eaf90147d44ef16031d390940da5d74c35a269b4adf4a663584292007da777b04c15c03f7635bef56c1ca807d1cb3a8dae8218821c44c7e6275cbf64d82453f764b458aceb881816234494f717f5240cfaddb3f11c1af02b269f0f76b9dbc8ed643fb3b7c9f8a540a453c1ec85abf9e8417b1e4de9dc65181ee32802abd6170a581aa2dd01188752c73d406461892d0d0909c5d3fe0ecbca3d28f65b905a2dff142e61cb088f9086d3c492e73c0eff3afbc37216ee98533b236406d80797933e54d3c21ae6b1b81f459ffd7b8bd1eb872fd62cc0b95f5384668a1bf91a474bfb97335dbd8c4761f3bb936e2032365256b534f98e9f4b3c50b4034478efa268e9ed9eb9864044e90dcedf4a2ecb9e8617c4e4abe7cb499051143c30bf73d397836e422a2ccd222a299603a3e4eaea9bd2c3d64a0ecb3cc7c0bc3d867c79231bbbc8c2ed4212edc8b25c04c57e9a3ee8c103aee4ad6af025016c1a177288f4a17fe20a2e210b24a7aab63d3fb4e687ed3ba2bc163f17c9067d07c18204d0af96a41cdf5be9c6b89502d7cf1283e82410b11537cc931443076d60cd f31e8b4f9e0621d531d22a380be5d9abd56faec53cbd39b1fab230ea67184440e5b1d15457bd25f56204fa917fa48e669016cb48c1ffc1e1e45274b3b47379e00a43843cf8601a5551411ec12503e5aac43d8676a1b2297ec7a0800dbfee04292e937f21c005f17411473041,6b1b8aac47f782208f50af3f977eaf8f2d69fc02390ee17bf1761ecb73d1088d236a5345380b6297ad1fdcd5117d16a3c410aeea092d9892ae95c7b977930655c75cf7834c101f69d2e33a1a17a489e040c5db3f83a5216ed5778d391630d17405ee0a96fd7b834448fe0bc61cec5014a6af9b0f85827832e7469869b0872497033822d3419d43379aeb6c31406afd1199abaecf3ac8e2546b9736f8c4e399c8698b674df5cf6be81c73e52dca979d3281200b9df8d99bb6c65a7b6f620e1e4e6538a918c99cde6cb33150f0896bb75421b8265aabc241c02d93e63476c351396e5b86dc66a05c74ae2ec87ea1d175d15a12adf18f9792970de3b9e30890d8896309815d57ae238895aa7e76dd6a46019f005f193c737b452d32649a8f39b1ed00ab8961a6eb04f699ea62357b7a38c423ba9d421529266459ef292b324a16062538e8c6550f822c2c140816340f907d5d10b563198bb1539b82e5bede700f7fab66eb8da045b23035decd3f8df11df98a297a49f5b896a3536bb5a3e17a9da1b266ee18ff6d4a6e59af619306bf30316fdccb7fbf5800916c18832f4cd21659774411f105ded35de8b0d4b0b54755440e26230e519b66319696e6abd180ff5314ee184d3b2781f338fdd3e3935855f4c8b4021154eafe67497599d0ae393a516673a970cfb9b7058826d7f0fc29f3ed34ed31f45790a63e5ac7918a4c3cb494 758ea3fea738973db0b8be7e599bbef4519373d6e6dcd7195ea885fc991d896762992759c2a09002912fb08e0cb5b76f49162aeb8cf87b172cf3ad190253df612f77b1f0c532e3b5fc99c2d31f8f65011695a087a35ee4eee5e334c369d8ee5d29f695815d866da99df3f79403,f76b436c25e0bf2d75a0df0152d04117ed8dc0ae55b13a2cf839e41a90c6070415eb8ef70a90bf205b0bb330435abb41bb3329d015e9e56e86418bd671d0375e3af8056eb882ae4191f82e062339d5505526ab42bf6cd54f0d36251a78ef274cbc797b89672ca224cb9b94e36648b362338d4981821b0b388e08ce97253b5e8c776e9b3aea33dfc3815b5929a3800bb83543d42e0f331c264b1855ad3c002bd80d035932268dfe4cd6600f2b1f215f1670d7a4512e89c3d1509271abb42e2608d7b4a900e00593e0509f7c882ab0008aa83f5879f30d95a319a4058987804e5014212d415ba0e1c2407b9aa7b80945cf460e60609ac885bd7d639c9bcc961d6c32a96f041528b64747b5ab9557971eada1ebeac47f78b3992eef2bf2806213952489934e7f5410602ed0987d8470af3728a7f5ba326b77835694e32675e463c604c18db4e4f5e1abd05668966b8d102172e232b4eaedb3c73e7a406c36ddc641469350d593336e9e5c8ba3c246154bd3cac8e14cd60c9ea724ff059c931b778b00a3c6e1016c1c41b3002f01d937499518a969d02ad08b5ab385a60cf5d018ef405df9caa63bc49015407b04aebbe02f206dab67e72388022d99d5ba4f6d57695186873276770452d602635aebbc988b7718f6ee99f9f05a6028e074bce86fc134aba4cb82e1529acc2e50e53f466b9b38fd3fc7181163d9a3b58f143aab6297 47c6e0c2b74948465921868804f0f7bd50dd323583dc784f998a93cd1ca4c6ef84d41dc81c2c40f34b5bee6a93867b3bdba0052c5f59e6f3657918c382e771d33109122cc8bb0e1e53c4e3d13b43ce44970f5e0c079d2ad7d7a3549cd75760c21bb15b447589e86e8d76b1e9ced2,c870ccf74f9a979827e1d0ff8e1dac93a2e0f10a0ba7a4de041853915db7d86c65010db41421201025d3465ff1267ea5dfc8e90cdb4d933fa58f5a5e830c646a74e5bf807495d973929cd2d4763a0615902b8df2d04a9d2553bca94696db2a332ec56b5612de10cbd2e117ab226769a0f5e12e380e890489c4cee3156b4cf1d4fa2fe55e20db06d84dbb0f9833a3364f64481567c74049517db8d75f6607467efed0d8976adc7c7f265371a552767bf6ddf87f88dd1bd326c46cc7c9a895d1d88d4452a1d72e7adbff6c02c5114ed5799c4e75944294bff16dc782d529341bd289da6136e0a4223f27e886d8ad057446e6bd41ab8efd676b5084084a313e0bba30c1dbc3c461afd8b5c0ee02aa0d1bfd0a1ace35369f78d5531286fb268f94d4ef50ba6a502c2eb2b744651b71b59974202a8088780cdebcaf18ab8ca8e5ae928309efdb5d5a639d7c83bef87e5aab4d403f7a9d22edd1cbcd409b822f33225f05ae21c2bbe9e7a0b116b502da93d6547e3931763f4fbe1507dc031cbafdb08f4492396d4d32fdf8936d0bd082d45e70b3cdf8b807d974a70bf17fc54a4a034bcd7f5dda8c1002b92a641da7e717d8c742b7f22fab4918b1b3929c2cf7533666121184383746fc5fbb06e2796eee83e6387dc610717fe4c7ff316d87367f6236e36524cf525691d656f77732b4989d87fbadcc67886e151f7a61fc9141af81b4 f690a132ab46b28edfa6479283d6444e371c6459108afd9c35dbd235e0b6b6ff4c4ea58e7554bd002460433b2164ca51e868f7947d7d7a0d792e4abf0be5f450853cc40d85485b2b8857ea31b5ea6e4ccfa2f3a7ef3380066d7d8979fdac618aad3d7e886dea4f005ae4ad05e5065f,7aa373d1ad451f79a4b17bc9d3e2ec4d43457c6251e958e44f8d5ef360eb256ce5ed5082b938095df2ec30deac299eea5268946cc240ae0cfc0b8565235a77bed4b58560f111fa5630996ad51065a6a957979344c26c0fbc9843251b64c899aba1dbe5124a21a604e706a50478db8e93f239cd11d53b2f168a946e979aef98d6a3ceae032713c241b8176f1f32a7f132ecece3fc57309f6f0dc9876b9327c4c03c42a74ec216e0dbe026dd167ee94fe8b0032f9ba033ed3e6bef8dcddcb288ce5f8d1b4dbc01a5bf51fd725206283c7028d8013a170f0dc4ab107a442c95b0214a71d3bd7a27cc48cabe6bde4a5aa4698f56258e175ba1c6f7be6d7ee60cb5bc4926cec0d94a422554fecd2d7666462e125fa3c2fb84e98f2095b119ac492ef8eb3666a3bbe51a6e4ce3cfd1375a21d1570be8a1cd22009e8261b3cd6f2e2085443a6aa76c91a349a7c49cf5f477fc017ad18439c580dbafc94e96739732ddadf4829f9da5fcfb6851afa968e208d4090ad99f61f9657ee958698fdd1dd5ef21543d238d05c4c604e26d21dccc8c878344ea888f127372218a4511b803e3e6ea03cddb2574e636eb40ca242fb31698290eb9c017d326a35d884a88c98b89c33e8656b717dd734223ee76b5eb147af7521bf1f827827b37a6563e601afdc3796d8da4d1084fa462cd4af969a800f522375e2c754bf20104f13a95ff2dada5674f 58d6a99bc6458824b256916770a8417040721cccfd4b79eacd8b65a3767ce5ba7e74104c985ac56b8cc9aebd16febd4cda5adb130b0ff2329cc8d611eb14dac268a2f9e633c99de33997fea41c52a7c5e1317d5b5daed35eba7d5a60e45d1fa7eaabc35f5c2b0a0f2379231953322c4e,a1d00913cc206be2d1c38c22b6c732a05368c8aab30865be5343be3c73aa6b7e8aff69a544257db1e6b6677e6ccdb6eb358a0ed096bc9fff0dbf89b1e5345037864132fa7b820ddddd5a88b953ce834f1aa89bf56fbb02670dfc9fa29892fffe61daba4195850ca669f6e4ae00687ae4af3a15b27a4e489a4aa01ae62e23fa012cfe38bb601b343095b5da20cc2b48352cb245c5306a2fa9f6cfb324b6debda6513221197b24eb1ec2564e2527491b539289eaf593912458d835e3f8f46e058cd6b3b85d0833de691a1e08cd6742e7b2957ddcd0e04858fd64987c66b6bafa7a082f32d515852e931a382792ab4ffe17b39d8918cff002cb01c0cb1e1fd32bb8b02df964752523e64df6c74b8442719c3d7dc75ce9dce5474ad6f235280cbd1f0268f19e695549016e948a7141ff4602330a096c67699b29ddbbb8f6600770cbd0e398b013932b04526a055b51d92f0ae8535a7e91936bf21ae70368e09005b14f3fd9e3635f35960d89e134e9b1447971b0d1cacf554845ae74cd93f73fafe94189bc22d1db9815a65b414dde694fd053aecce3bbc3ce7362f353a9434a49fabcdfd7e3cbe73ece064deca30e4be01b1135ff6303e45e8065ef415befefa948adf42dcef4520c2772c8e8438b60113919975ca0dcd2798bb026d4b59d3904fbca4998533aded822b15ccc86457e8507aaadc7e3ee221543472a87b730f4e5c2 befab574396d7f8b6705e2d5b58b2c1c820bb24e3f4bae3e8fbcd36dbf734ee14e5d6ab972aedd3540235466e825850ee4c512ea9795abfd33f330d9fd7f79e62bbb63a6ea85de15beaeea6f8d204a28956059e2632d11861dfb0e65bc07ac8a159388d5c3277e227286f65ff5e5b5aec1,e28d36bd926b9e8c105fe0099cff1957ed7accb9618027421febf9ddd3129f4e6713376b3b7ee710430ef381cb12b831c80c7b1b93765f7693506733a75ac0e8fb5d3c30c6f4dc735c4c3599161ed02f4abb5cdb174e53d93d91e1321edfd79c0f63c92c7e5a253c1b8c4842f053ced0033405fae5f16e2dc30024a6b1663a86829abff72de6f2a91c1cfe5955cfb584f8c65b9334590c9c468a9b0fac172792aa152f7dedeaa4fa22fa7ba44131a1143f79053c7e2cb5aaf8adccb6ac72300892f792590bf5a1a9745fe5934c712ced382a316c487efe0e6f146c8a562e6b40834fe20c362e495fe9e5cc871edd2d61361492ee60cef26ed38b4da0480b4dfa66f5e71d44f10159016093841e02c34001800c5cdaad0f9cd2a3144911031139cd6c54443a1d82405921b86deb03e8f0c1ecd58f63b88944182f034bd07b0d021ebb7447f660e66bbc0a821c7852d183b806f0855ae194d80073280f3d07c2dc03571d5c6d0f0675afd58ecfb211ea27733e870a6e86ae5108d8c1c3524b99648541b61935746310fc6e99935e7c9a5d144e0735f2cc32b6dc42b34679052203a777aecf26d9461946699f834940bd34f8fcac7c22e29b2b0cecc60183c44a5a63078127c10c1c14112226520cebf9d47a7fbd4002ad482cde289e7dad3aa891bba0b6b2b2fa378d26d629b4ce428f375bae3fea5e5c6b048928ec92099f3c3e 8e58144fa9179d686478622ce450c748260c95d1ba43b8f9b59abeca8d93488da73463ef40198b4d16fb0b0707201347e0506ff19d01bea0f42b8af9e71a1f1bd168781069d4d338fdef00bf419fbb003031df671f4a37979564f69282de9c65407847dd0da505ab1641c02dea4f0d834986,e3e693b2585c32926882c97bea160d46ace5abf0fa47a9084fcfdb22de3c65f43717358c2c2ce680d6d132443d478478a304711be3c5795f3eb0a7bf043cae06e84443eb599dc259b3ce1f4184abf1e6794556e9f2aba99e5363dbc7e9c2c802976c87fdd7e0e3884b971ab33da6cafb65ccabd6ce492a59d359bc17d2216381ad838989de9fe82245ce07ccb1239fa5a3d664d5b8f2e3410c023066aa47e030fc73be5eba27d83d656106401bea73e36cc09f8a78bc0f4fd7c4b2b4e7d36f4e3cc31867d1ee207a7936fb3d5fcf512669af63b9f01e4188ed39b1142caf6578f788b53c3d6303c25c545dce3f0b037456e3e7870392f43051fb2e8fde663c80350f94f7a52d511a56cc268335d1ed24c9948c6e0426aedbe1e082c0f075863e3dc0269be5c83ace9a98af1ee45c79ba263aa81902e11f880205b7bbcdba54f766150e744bd1e2c97e64b4a50a179b940c01a7aefea23e22dc3443d655e31ffafa67fc555727c8d02c3fb3de7d6c13438f6323b89b7c975fc5b90d80be8efd41bbce90f636ca01ffbe3ab39aa0f43460f33dfa492718a411711e9e7d38eab956655314f35d36120237bea48eeedc549256090ddee8ab4bf2669131cfb590c65bbce018ceea3ce349a8cb83e3518ce8f353eb07f9007600c206c7f6b6b1da24f1a263f039773ef5f99fae6d9b2b3160199f17d49ad69d51bf66915451f43ecdf4 b55c10eae0ec684c16d13463f29291bf26c82e2fa0422a99c71db4af14dd9c7f33eda52fd73d017cc0f2dbe734d831f0d820d06d5f89dacc485739144f8cfd4799223b1aff9031a105cb6a029ba71e6e5867d85a554991c38df3c9ef8c1e1e9a7630be61caabca69280c399c1fb7a12d12aefc,a178f3b574a841c88ef21b6a20a100625334f4fee5966ab2164686151ab9fed082ca4a9115a0b5f099c5dd4be4ef1082d533212bb862f084225655d8856e29f279418de6fb723ed15c341ce310b53e695c08689f776e4474fb6dbdb7da46a9a2dfb7bc374af86984e1e10ad9d48b744a5fa98a0b161738468e06ee4e836bb718befa381cabe18e9973ff07dce1920b19dd797f84cddc52dbd49b4a462fd1a12acd364804a290beab30af0376ca098d44e5d141d1636f6073569f2ce7213f6407ee376680e8d676942211a9efb756ef9dca40574aad2084fae0b617d727d7951c1321616f26569d96de5ada8ee101bcfd2c43c338f8957dec234e23f5a1a0f663ebecb98c35102de1c101b99e8f42bd8ee7c528b1651099545f7bc9bc315c8861fd7ebf26b97a519931a63e0b06a73b14cd2365383b44a2107fe1af0998f1574d9fa8818dc51d642240dbd0c104e89393b2c381944308d828720564763d3bfee221bfa99d976701717d4214cce2fc25763c1b25ef67286bb7e497593b1a077912e3af76993a4e20d4e8add7aef4f715e5f1c8bd68e8913d9d8057447f273fc41f70a0290a5ebfdce46209090032801f2cef44c8015e865d75759c7b2117c6e8eb6b57398b992b0e073c1fac374c819b7ae16c464ab5019a45e7a6ad57b75380ff42d35339f23436a0d58497f7a12e4c3eb34816c4aab9a2d3655079c12e05ea36 2eeea693f585f4ed6f6f8865bbae47a6908aecd7c429e4bec4f0de1d0ca0183fa201a0cb14a529b7d7ac0e6ff6607a3243ee9fb11bcf3e2304fe75ffcddd6c5c2e2a4cd45f63c962d010645058d36571404a6d2b4f44755434d76998e83409c3205aa1615db44057db991231d2cb42624574f545,11c57a7af45809863e024835f2a86bcb81763412dbceb53f31153730fdfdc32a8adbe3a8bd6d4778ea33afc063d9767bc9e3afeea3c78ffaf5fa3023093c798f39111a182516218f0bc78c0307c75eb212b0edad184500261e00823f423d84bc2dad3ffc6c2ab675a24ccfdf0de5f669d1eaf91973071d50ec7d2c0cc4b6e42552199cac4b65938f7e704248cbff272c647e953fb9719fa8aa9c319fcc45e4fad0752e7416f9df0063f1a8bf43e316533c046c4f2e7254a02feeaebdcd4df19b01c18b8dfec1d291fd670ba6d434b41eb6068a365973082107abd6dfb62fd428b9b183e1fcfcb654a6c7a55b91e0615658529fa4f6178fa4f5cef329376169af143b137b9b81b273796cd26cfd8372ac3184600ebcb2dce06aa7f22c055a7b622717db8e15571acc61d94d8da250fb8e63549528cb53050322520925fe7fcd065bdef0ec79aa38f1f105348614a57605c94bcd50df80e692d1117c13ba3563afb44e91117c9f6e4e7fa35397dfc58fe7f2daadcdfc756edaf5bda38d6e1eb819a1080cf354f2ab779f63e2bcc763c8ac73c6d811ae2b5252e6fdec79e2e97d8971d1ef39e2a144e84ee8087c673aadf3c46c4e6c1d9832e68bcaff8c1e4df1a5454d3a677040413ba32bed431b2f7d3f356cb060431a7f5b1b6cfbd5709736a408ef6cef1b455ea74191f09feef230a1a0296807e8ab33403a9e3ea1650cd2af dab11dc0b047db0420a585f56c42d93175562852428499f66a0db811fcdddab2f7cdffed1543e5fb72110b64686bc7b6887a538ad44c050f1e42631bc4ec8a9f2a047163d822a38989ee4aab01b4c1f161b062d873b1cfa388fd301514f62224157b9bef423c7783b7aac8d30d65cd1bba8d689c2d,8e03c6b48b4e91bf5364cf9311172442253b6ed58b95d147a4674bca639d75820ffe93509ab08fbe7eba70544a9331c3ba3347b0b44e0fe36f9b799963212514ab2e673133ea5d9cf3181ffac7f79475971369f7a0188f1a3687792258617c7521cf2ec979241d8e9345b9205243a1cda692418f8855ba61b57c75ce8a7b2d019880d2c56c61dc0e3caca0cd632e8819dcaff9336498e1d573c16269d2d56509beced579c80c3f09e4165081ea7910bb8d13f0373fa802f498af190ebf8d7565a93a771afcc8c417ea460e67f4aea898c73ecce5b17ebcf6eef8a6e31d160038604499b39965212588826d1f896915500497bf4f949e2ccc4c3439315e7aacc2904a77ac0113a2aefe64f6d625a7ef547e99fdcf9374300a1cc15373494bc1210b8dd5b5ce04b190a824566a9ae4a02dfc70ff8df3191528a91e97dad97057aafb0357ae7f509ff7e464675124d0d23399ab6db37b80397bcaae48b8520860b79efd72d955f53611e8d782a28c729f51d3174850e4fd61a4328709de8170d1bb7b5a811bc3e0fd06f20f03ce1567ccdc5891673cd8e659472015ee6a557d89b104e22e70315b40701b49c76ba0196f68a9255eef2623e531d73d151a7f321409bdd8183caaffc18c6dd63c1eba47f07b5b3d404c2203373ef356cd26d89dfd8f5ba2f700646507af3cf63db907f9f70ddcb125259f28275ce8f41b63d14058c3 42e99a2f80aee0e001279a2434f731e01d34a44b1a8101726921c0590c30f3120eb83059f325e894a5ac959dca71ce2214799916424e859d27d789437b9d27240bf8c35adbafcecc322b48aa205b293962d858652abacbd588bcf6cbc388d0993bd622f96ed54614c25b6a9aa527589eaaffcf17ddf7,845e0dd7fcea5e19e5dbc6cd03d58c2bac4b81ce809ba7d0c75cb867da6ecdc9cebca177ab9c3273c8ead7b8c9f571d6d1d14ed0caf6ffaae4f1b7ebe653443e9bf099dd54ce3a021e0944bb1f8b34cb8cf199ed9b23ffc94e2fcb6fba03d50d0c84c2c943f17c1bd9eec662420ee42acd5c5f18223b92ac269b320bc1903550c1d55b7ae5804eaeb6f67c57537161ef8460e45e34fab823ac0eefa232404c7907db88e4b1d74af7da5a2e38f82f96a86a506df1e717e636af1fa85bca3259c78fe7cde8ff56cd2461997ff8d3b31be985b73e4eb0dbf36d39923cba9982870ddeb52acc02a97cae8688e230364d5637170c328175208f8d225e2b19289a29205a9568f426fdbda7bb04224808b2f21e4e80e2f18f4e790654e0d6e486340464b6fa48c95f99a4106e95a6a378458b8636556c700d79fc45697c09a84d2ec41bcfd560f0a147ece640060713a86516ecc642396e16a63203cce11809e7dadb5bde418348e91e30dc65e66242e29b69b9cec5548d4bef3e15a6cd4937c492b2f0ff83dd3acef224ef66aa27726161a418820196738ebd9569b49d51d1583129afaee4f9128c55813151895a046e4d5b4e7d1695b0d47bc657ef7795107148b165d0484f346c9c49a8dee187e3c1f28a6d57fc3b7da49042b37250dd02bc9807fe1af57d5a31664c90d5371542b28965e805224651f96836147e0300c2a938639e 3c9b46450c0f2cae8e3823f8bdb4277f31b744ce2eb17054bddc6dff36af7f49fb8a2320cc3bdf8e0a2ea29ad3a55de1165d219adeddb5175253e2d1489e9b6fdd02e2c3d3a4b54d60e3a47334c37913c5695378a669e9b72dec32af5434f93f46176ebf044c4784467c700470d0c0b40c8a088c815816,ef1a40b1819ac20c49ee1f31e36b853619c8e960da1a5bc86674c5720c0f255e8099cd4572d09fa5b8f035abee5fca1725f988954513e2e7fdca92a55a757145b0e1a223a7cd4e0d18d3ec7c8bb33221b24aedea4a08f01b2130d58e19570272456697df883ab29f4d4f86ddbfd1d97f1018277f84ffb615451190762b9b72556677591e6eba3fe45f8769072e234602e222c77dfd8cc095b73d1b231f3f09b89c2ecdcb741fed58085cd763e2b016623bf2392631984b6e4d2fe558b7f17973a8f58be66d73afae5de5c5b46a6205e15f8a7f5b3ecce65985edbfe4c86d3830e642c99e44ef35aa55b834696dc519635240d6a693ac09cb3d567105420449664eb7b6bc367c482cb2682b1a34a9a051470ee3daf8045b0defae0ef10581830a1c21f75045d1297c9ef4b874e9004d4bf86fd770b820a9aa1fe967388215aaf00ddac57f9b3b9cf0a67fc81e27565f1f3378a620c9a99b50af301359e98d31ead034dcb0334bf45d3cecae0a95e4f0f0d60b0725f97aaf0ec1c4ea1d7d062d5b13a69b68ce5fb382ff7e25a219c7fe8cd1d78b47660319f6ea04418970eb3b5fa6778d84ebd4377c8b3db2632cb616631db82cf68cc4a03a44768b082f8a5fb606fbede8ac366b9d0813bb58017098a9b2d5baf9c5313451f7fc5144f8a89ec34da3cddacb079a963bad7e08a4d68de34612b116a0587731f4df8135599940b3 d1e654b77cb155f5c77971a64df9e5d34c26a3cad6c7f6b300d39deb1910094691adaa095be4ba5d86690a976428635d5526f3e946f7dc3bd4dbc78999e653441187a81f9adcd5a3c5f254bc8256b0158f54673dcc1232f6e918ebfc6c51ce67eaeb042d9f57eec4bfe910e169af78b3de48d137df4f2840,b9a11246d631a7c9f33911215f36281030aa4959e598f2e36602ad66e236f4eadc9e87a662fbb5e30555f7f2048571db711d9b28389525dc1bff502c1766bf7ec7a26688cf30eaa16a23d00bd408e11756bf0e9dc3265abed5b83643260da0f7b58919078edcc9f62b2d14029657426407cfe5b514e17410f3351c401ee163d1897525441d6738eccb5976c16ebf309abe15fc5b15b362338516bb8fc50dc69ebfd5e3cfc7b79571c7dca79d57970ae0904547677b30cdd7d09a0973ae65d6e00f3f9205ba0d806cf3ddb5acbfb5ac1def3aa8766e4921b42df7b9e3ad5299747300c9d26406cf195dca47a673e232454dc80031fdaa0e3da4b66da9df72b040893378aedd6911d35d3e007828eb749bed4e16657e9d33867e0319e6d4bada0f16c466f3b1b8502bdc2584bcbd7128a976c6c8bf2d553d38ab28b982802d1e626c47b5ee08530ff22a9852ac113c560ddef6931f6e6145c3e525f5e6269e7dfcd4c0517c16884c681b1bd78d4a415039439bc5947c65cc35bd52e7e2d0fe0c88b2c92c903a0db75d5bac3d3d6a5a323caee0e55c61e8bbc1113a7d8aed0b031020cd7c50346b2c9eefe61c20c14ab947cdb7b3d153172d5f32bd267b4d77a7606cfb5080058f56e51ce9f73e7d75c94a46a4e917bf575827d37773f2f9eb5a552420aead98df822a7eed212538e2b27df5ee2188561775bd862902f3dd19a9c6 626f68c18a69a6590159a9c46be03d5965698f2dac3de779b878b3d9c421e0f21b955a16c715c1ec1e22ce3eb645b8b4f263f60660ea3028981eebd6c8c3a367285b691c8ee56944a7cd1217997e1d9c21620b536bdbd5de8925ff71dec6fbc06624ab6b21e329813de90d1e572dfb89a18120c3f606355d25,ea756978ce1bc77f9c84a151604f37ced854b00328df4a486e9626c7da6098f1a6380efd8434fa59b037ab18c3488b404c03a4838a9e6c60b37c9348aa2cc3e09f016b1f07fed8d4a0b93bfd9121b4200a706887297a91ae12e1b385830536a88afadda80d4b14fc5cc9c49916cccbb47f970378aeb5ea6f6f583d131e53aa708196f749644dd153a3177f424921254a7fc92ca5ca241d54c6a1e565298d2baffcb173d22160241a535d34358fd0b54640cff9e04890bdf23bda5dc770240febb778d1d0b4b3c98ca7afd2512596ebdf02f8e1ee5c74ba26a35e1482784f6284d0d5fa17cbc695508026cd49f30d82fe5819378de13150805555406b8ebb6bbb8debf55a28b5f1350ef5af18dac71c9a02e76054eaf28e2d1259ee670492e75e1b3be45492d6e3bc5096ba2952e7b1e97dbf5e18618ee7b197e6fc3b0a31b2f071376f6c55cea08bbdfa37cf676a24de82f23878566b48269141c17c7304d6252952158078b481fa4270c2dd631afee7d7518d1f1df43b9841f10871d3b80e4680dbb89ce8c4cdaf4e16a4892a83f927ac7e4ea692c6ef1fe6a6b2fed3c8393a5100ddef4b56fd158e45a95844e2195160c3d3e02fbf51a715c0117627c783d503cb241c636dde3443adfdad82f5d9226d49921ff60788295a47b0d76af43977fcafea4d61dad09e2318ea16e32c44b14aaab6224193c3b9eef105057a2bae72 651a6fb3c4b80c7c68c6011675e6094eb56abf5fc3057324ebc6477825061f9f27e7a94633abd1fa598a746e4a577caf524c52ec1788471f92b8c37f23795ca19d559d446cab16cbcdce90b79fa1026cee77bf4ab1b503c5b94c2256ad75b3eac6fd5dcb96aca4b03a834bfb4e9af988cecbf2ae597cb9097940,609d7e2f634d0457e311972039e1645e66392cdbd1414d5a8c839f8b22618ac73be81a745b9e2b83814a527f78d588119f7464cfb235e56d9e2f794a5bd510008689ece3ee818707be101a3b8a5e1211e3116ac0e9746f79a01ab9dcd01783e961c316ef4ee908cd69c7c2b0e3560fb6dd5649896403d07f021539f8adf22ca4e3535a81ef643ac230a0c94913e9584fd8af77926360d280feca2283f8097dd843d509c5e34a9fa8b02bba9015753d3f728aef7053407a90dc48f15ea272df1f478b967da4c02c8d4f2903f9a98f90ca1589bee5590195e0f6b24913641c2ffb42da043b4548d82f8f0f580356e9946022b06ddb0bde4947d4a25767c65d1ca02148954d1f33f07ed0886552c23286696067facdf37b5d468b1a5f29126a2805bcba687f61d920c53b8346579ee0d312691dfda9e53b3a0ebda1ce213c78de4cdaa3c5d9c6d5a4c66a5b53237a7e5d80e8c1db49656e28b2df50c02e9bc580a62ee5e6f72d9681435baa70c0b51afd2ccc109d0d45634072bd404964fb44d2107a68e1a9cd60e63b847ea9c75ef14d19101e391d8f80d05f6bf0966c949da6d9c8e2c865c0468c825e29bfb9ca2070518ad838a6b1530723f6261277ec7d1291104049503198b6c3b95d1d0efce786d5982f6d0120d9ab2d1c0dd9ea89644103442a76e6804a57b54fca199e6d714576d631422bda28c2a7f8838ceff879e0d3 8aaf072fce8a2d96bc10b3c91c809ee93072fb205ca7f10abd82ecd82cf040b1bc49ea13d1857815c0e99781de3adbb5443ce1c897e55188ceaf221aa9681638de05ae1b322938f46bce51543b57ecdb4c266272259d1798de13be90e10efec2d07484d9b21a3870e2aa9e06c21aa2d0c9cf420080a80a91dee16f,f5d0630d6bd21787a4101e2287550aded2c2baeb0ca91d24cb61eaccf83b0d15700c6a95e643d8ea2383929d23de5a1819eb7571f38ce173f378ab7275776a771380443b0cc1cfe1b9efbaa8579fe6e002fe75b80fdc73ad20c727b003b6281a8befb7f7cb2545f42586ab879c9ff523d6acf70f24994342ebadbda27d3168a755c2dfc3c99360fe377c8a19f1465f6157cff76a1d7c8a6fb991058d582d5f2e19ed583136320c4da569d9eba4692e0bb19e620c600260bfb0c95f7a8fa4560b1b715727cb04a8d37410dabe2adc5cab24465bbfb41aec1e946be1c50eca676f47ea99d217d68f6b8f3536e879fde16a355e71857143f7d07c9a207f4d61b89b82354f0a0273aeca1361c3f949efc2a45bec3933e8a6e7a86e90e0efe5d11f6a20ed9811a1cca507e33cf47fea26d7e67fa88d374245b1a24d8f5c584dae932be1ee25ecc5ee61d31111a3d1eebf220665ec401e28bb85b93d615b64ead0fef0e6af725ca5ea8454b571a784ef95a020251fe236952d130692d81702b16f8dcf03cd82a809877b08774635a4859e1a516e9c4135fb415100359ca6da69426d4139e90f00efcadd155f85a4ab1ce154f8cbc84efdfa7603ff48d5d1ee94a4d27dc9a450e35c60d9cf43594c9182b69fe9df540f498c5c92db68065f2ecdc52ee7d22736561fa617970375f6ea3d01ff39e2e22c979ab58df80ffdb75b4258f49a 53f918fd00b1701bd504f8cdea803acca21ac18c564ab90c2a17da592c7d69688f6580575395551e8cd33e0fef08ca6ed4588d4d140b3e44c032355df1c531564d7f4835753344345a6781e11cd5e095b73df5f82c8ae3ad00877936896671e947cc52e2b29dcd463d90a0c9929128da222b5a211450bbc0e02448e2,f3b73032fbc450b21db7c6c263aba819accb297b724cd95c55280fb7f4e6a5100181fdd6e010964c62fc51c0fb540794cd3bacd695a082b20016e1be1f8fd89e77aada0747afad6acb2f963bb476f1b515cc0604ce5a7b18506bfeb875bf483189d268255146fab7b7820a26dffe97c737a7d5bee677524c4b64539ce760cb4ab6d03fba155d05130a50d5c1ea81873c8a45f1fb83c2ebc11a2a1bddd45aabbcc572d9e93611c4a1429b802eaf44ee19a417243c069c99825959093a9e0e5bff186c757a7270e33d02b81768d94014f17effaa3b2d92fef370e552c8a8ef2b3557c2f930b7c79e9f6c0573bffd8585000954d9264611e3d6bb305b08973d0583c7c2c5b2b0b5aa1b0ed46877fb02646472672121a6042419481d4a0a5ee001e1e067f6a7ee1ea4b880d00f7815fa9658ad9dd643139a37b3febb46585a2a74be0ec2b8bcebfd8f63672f2c1f213511e611c677cd92b2d6c4e43792ce3709ae1caca3103f7d267940a0ca5868afe6296458811ba67205a5bd4b27f96573f8b88f8df2733b83c420cb2015dbecc6e0146657cdae3c7a2d2de5eaf8bc9ebd0a7fab0fa37b24206b6118cc56087b0f573fbee9bd0c4b70512ea4784d85d8a89e75e08f86d204a4a03d4c247cbf9af7c20fd532a65d0c89311246cb572c77a35cbc9c65be40fd7ea2d41a3f5a4aef0be01c4df6aef0190171932b03eb960172a38101 a64599b8a61b5ccec9e67aed69447459c8da3d1ec6c7c7c82a7428b9b584fa67e90f68e2c00fbbed4613666e5168da4a16f395f7a3c3832b3b134bfc9cbaa95d2a0fe252f44ac6681eb6d40ab91c1d0282fed6701c57463d3c5f2bb8c6a7301fb4576aa3b5f15510db8956ff77478c26a7c09bea7b398cfc83503f538e,fbba34f9b8b88c9851e1b6a8613641a26e5e6944788449e7f78c66f32aab088229599e67b048058a2bb6713c84033a2177b563407bf832d136fba8a506b3e0c3ac8632f8c6dd058e1d242a24754d64d8a0e8db424000561ea5298edf2e5620237f4297cd4b2e48c87af4abb28167662b032f617d89c4cbbf064ef09ac2a122785d55c411970a610ade46475cc0e371ace344b3bee172d73e9fa4cffd1806070e7cf48b722dcec0756eb1ea059e8481def23bdf94a0050ce2848af21b49b59320d5f4edfbf2c1a653306be31f3634e5871156c44d15f8c39c7f50fcebb93c61df9258f81941aee98c0aae76d92560fc4987c0ca8cbf07cdd9b96e1f24e83f5977a2c561870d6fd4752796900cc41aa4f2b256988403065a9c506fa78c50e0b5b9592a4116fde380ee9e6c7fc67ffcb5123fce3b27a6d71eb875e88e0a8f20acb50b3f2d46963913fce830fb5e01baf0f2fedfa8e9717576b96f788ff8f8734c33c3cd9595ec2f6270be920aa2a4fd56f83442141c1c1834820c1a41a51da308f5cb8457e6c835c4f075706051a7cdb3901413fb9b42dd9e0a2b8664be7490cb4043acad67cc806886ea5c41bc8d81e00ea1cc7afb5bc34e150ec26e4d6d8d5f0c5a362a28c98ed6b3915a0935d7a237bb24aa18d41db5271be154f4f51dc25af823a978b8d41f46ae142470adc4d008b260928f7382bb08c320f4802705af6eed 0e3ab0e054739b00cdb6a87bd12cae024b54cb5e550e6c425360c2e87e59401f5ec24ef0314855f0f56c47695d56a7fb1417693af2a1ed5291f2fee95f75eed54a1b1c2e81226fbff6f63ade584911c71967a8eb70933bc3f5d15bc91b5c2644d9516d3c3a8c154ee48e118bd1442c043c7a0dba5ac5b1d5360aae5b9065,dd4fc79f3b1d5201767ce9a0f89d3ad0a3949bd75668744b95523562a5107cf45adfb39b5999d79cd3cbdb1f622b2b250c86647a45419a243adf4e7fbcfe227ffa2995ba39fdbc5bae183b786704d8631eff1f88ccb8563f112440dc48d87b97bf8e8cd8b894ceed6b43c857627ad1efa81045ce505fee7f370cfa478bcb4a4174d133d9a7057702e7122229f53ce03d281771cfe58ebd825c4285b4d7aac7cb00a835fa094683f503e92b690a4a35d0e4f5f01dede83fc829e4f3c5f783737a68dfc9eaa3cce682e3d5278675d17a2469fb0a814bf71fc212d7162ed80707aaa514cd5b682b95b948a8a9d79ee3ce1b9ad44d3e6e6eb455cf198927072d8f28950aae0b5fdb628ed5280695e7a83665c94a23ebd163536797ee6733166af631f21f6c1ff398d8d363d6f7ed518feac9eea1f98e9e3976706f2ebb3430af64cb788a2461b736d91876fd481f5f0135b458b57cc00959bcc1d145b2b776d7b5b1bd0ed154dfb602f78c8d567f30acf34341c9356be887dc85e9415602e19db053e965601ce5db866c1a9ede8c12a81850f1a46cdc154112560a1e38c40a014e1109195ff23054954f463aa825ffe1a377d3cb1db279d2e5bc7fea045cf3b2681170cf42d4c0518bc9e51c3f854052263d31c50867426552e6caefe37267a7725a4460fe2a7f2d951ddcf55a66ab59de1a66a7fd15169bfee7339428308c0477b0 a62fc595b4096e6336e53fcdfc8d1cc175d71dac9d750a6133d23199eaac288207944cea6b16d27631915b4619f743da2e30a0c00bbdb1bbb35ab852ef3b9aec6b0a8dcc6e9e1abaa3ad62ac0a6c5de765de2c3711b769e3fde44a74016fff82ac46fa8f1797d3b2a726b696e3dea5530439acee3a45c2a51bc32dd055650b,fe149a9560e60dd76dac07cd65722403ac64637033653bd60053f3958d0df1ef1daeb343ff6488587f49945a19479820a98df8484cec8e3608a8c7d15594f61faf8547fb0ba643aba3fe942e191d61e2a84a548a4b76e0144b71e061d01e5b46629dc585eda21696b6f716ecd7d98e54fe49692b5ff7e74ed15183c4a4728a6a4fdc85fa56d49615e0141c65614de51776c73a46d19e2eda71226b5716ffd83c06813b631cdef6bac2b5f480cb59fb54dbd0e0fff0539ff70fc1f5872d8b78b3e03335675925e2a6fb7fdc9378d3202f396f05dfcd0a2193ffa3da954eb44486c054d7d8bc22194612047f2f8c5fd5423504d6a06f0fcd4e611880c74bc84d7d5c3b66e017dcc79ef5ee41f9322f7dd863aa5428439d8e5ed3222f2346e305759b46826e039ffa8a2b0c7147c2aa440602626fb79b0699ed15ed9ca54125603e9a9525db238a518708e78709d5cee0f3a196b4cab52198ed5a58c98775eecbde3ec721214db7a981c81d419f013f1db230746ba5ebf30ce37882376df8785adca0e04e9e18d0ec75778369f7516f5215ae92d67c4c4751090246a8f3a719bf83e3b310d61faddb911b2080266d2b43f31fc9e3a5d9747eebfc8816f63e398c9f506c00821d0f1097349fecc2dc05fc420fe673f5398ffe828cb99b3eeebe817eab6208803339d8d905c845fc934487f51ffcdb4e83d8e337dacbcdc57f867ebd 2b6db7ced8665ebe9deb080295218426bdaa7c6da9add2088932cdffbaa1c14129bccdd70f369efb149285858d2b1d155d14de2fdb680a8b027284055182a0cae275234cc9c92863c1b4ab66f304cf0621cd54565f5bff461d3b461bd40df28198e3732501b4860eadd503d26d6e69338f4e0456e9e9baf3d827ae685fb1d817,e38785ed93686fa741fbb6e5be64933963c3c872f7a4e8c8d540ec3f82284605625d32a24bce8b40264eb51b164dd86f318acfd9867f3bf23998275042aaf23bda01f602622448957b81e51475f15cdb31a9297ee390f681e460ec01a024f183110c728bb09a12dde89e6f5de2b4f8c17d981e3e9c531e6d4c19448a4a6be28853afa2fba216f7c8e2ce4e4de31f6b0e129cb5da118b4a59569a439c1095eb50c51cd83105b1a12b3f7086947ea7381969a78308f8fddac8b2d87f4540a8e7cac8932ca76201f86561add09d833361851ceb9759ad1eeed4e00ed19c642bc6d0aed034276b66d818e8791a7c1f42f8604e8b026d4635e3bdb27ca0fb28e7517bf662bb99ae3a3c698ad0aa2f02408e76a5f93abfc933b1691a89ee3ebca2885ea633d0fea4dbcd03b05b68e0f4d267144fdc0898de46011832adc872f4a7f0d8933cdd482ca54ffa81774ba083d3d9fe07de94f8e03ff66d9f1bfe7504e8a497591ba8f52758f92e0a4ca6a93979cd1f55ee9dba17bac6c69e83dded4ce2dbffb0b48c0c6aed657405de18e7891b3c854127459e89fe5442ca6d5c223b046147bfdee435cf4efaefd705373dc87e20b7d31c7d37907d30b8b32054bb9eca80d0afabb5ec5053d94d517f158ea958c7458cf71fca85b607a352a9a3b8f4f161e3b8853f6bb61864bad12dd9b57ecda507a3caa63a1dec726b518cb4fddeed6a34 10db509b2cdcaba6c062ae33be48116a29eb18e390e1bbada5ca0a2718afbcd23431440106594893043cc7f2625281bf7de2655880966a23705f0c5155c2f5cca9f2c2142e96d0a2e763b70686cd421b5db812daced0c6d65035fde558e94f26b3e6dde5bd13980cc80292b723013bd033284584bff27657871b0cf07a849f4ae2,66fb94b62645f96fd55ea261e08a93aabe783f160aaffe07253a1c3d45dc65f6afde9df121a894a1a13ced4e5d492675bda35926a1b147d5317d3cc09d4d34ebc1bb223663b349d3f66f05dde7a66616e7f89b0bc6859a3eb8402b881890b21979be6f60cfdb9f6c2fde570d79ca9d24099820e433dd995e4c2271eb269937cbb96839a03ba7af726adf23b7fa2f86348c0489e09a559d0febffcbf33d77ced28a439f09e2efaa7d6334a783075b588134c69433aef0f8665c05e97ec2afe49336ee2cec0724842a64123c7f43689d1ee88873f89aaae9730b1a29768be0e49a87b52c1f5ad08d700ef9b57a20f5dcc7c238a5e56cea3a0ee1f9bde550f2792741f607e81744855a5f109fe91887bc580199966dfe28a30fd1fbea9ac4259e7bdf7135e4a9d83234f9d7abe3bfb1f264e23a67f456096e27f540fbbd5df0e8ddb5a6a455ece063d4d528c2582be8f111e1f7c7f204b82d40f60c2af6099dbdfd64df85899ba2a02a26870e3feca6c07e99ad43f93d21dc275e1afd1e136d2f49142b4d208ec865f91ddba5822148c6884b7cb283de5aacc4e8bb66be3b08804246c808569b2df0aeb08bd4c255ae1829aa62ae9495a89d238dd93e2bdf5d14159e48510fc82b572402302c63956cd215341a1d367135623c644094cd845b08abc7a8cbd4f3b66f48375df7155bc5a781e69272ec1b3ae4e3cfa1d8d39bf0b4b1 9334de60c997bda6086101a6314f64e4458f5ff9450c509df006e8c547983c651ca97879175aaba0c539e82d05c1e02c480975cbb30118121061b1ebac4f8d9a3781e2db6b18042e01ecf9017a64a0e57447ec7fcbe6a7f82585f7403ee2223d52d37b4bf426428613d6b4257980972a0acab508a7620c1cb28eb4e9d30fc41361ec,295e0fbf3c5b510d6b244381bedf20f8bc3d915cfa4bf9fc42dbf6932f44dca91744d812cb9f639a9c3d376c49ce3c7da90d267d794805a61d20d00c79f42c37be018c67857b6a02e46b6d6a147506210651e31b280043610584a1440a07bdc8540ac46e637f7d947792a65adce3b790636fe1794e90598ca6340982ec58f3b24ae1c703fbb91412f1ae7c23a3caf78c4bbbf32c90c365726ed4832016c5a19e94685a7ccee376184a10beed6da7e26d1a4260effb7e9f7a0a0c71d7f164cc967c7526a0f1edf1ff54aeb114109f7b34361db5aaef9ead31a4d4896cb86556d2619de0ace07c133b14006119bd4bc8cf4f8ec09cd2ed91b4e524012261ec9537b3bc4c67100102293836e22ab5524c979f1c1af51fbaa2abf3f0efe6818bdaf37cec4d6cddc98a994bff1ac458637d528ba5f701de0bf4e4e9e691149a6cd4677bbd9821511ddfa6561c419b473d2ba019cf1b83b7aaa3bbee141e2fa38f032635aa559ca629068dd4639ccf579118496a903ba7dde88ff54806ae89ba3974b9dc0ac520241bee278e3eba1b3df1c026a8e5f0d5f28c35c5b04145b570d2f06d25f45bebf4de2785d75b0bc9f1e6f9aebe2ae510d422180cef13f6b0c8a0caf76609a158fb6f3b17e7282e168dcba19e76db7841e384b54f3ab29d78c86861560cdd934cdb63742933253d7bb82b453cf829f33b99b8e56b906c86131bd64f64 e88ab086891693aa535ceb20e64c7ab97c7dd3548f3786339897a5f0c39031549ca870166e477743ccfbe016b4428d89738e426f5ffe81626137f17aecff61b72dbee2dc20961880cfe281dfab5ee38b1921881450e16032de5e4d55ad8d4fca609721b0692bac79be5a06e177fe8c80c0c83519fb3347de9f43d5561cb8107b9b5edc,9e8438cffc23a52d75838690e7074d2c713b1188375d1a77f8fc8c24a4b89ca5979f58692d90db14dfbfcaa5ef0ac0c2d16f3e84e6f771adc26fa9081f3b10e02a3ee1a3de40db5de17f7628ba3e20e5563bad66bc32bbfb1ceba7598aa4480c86a0c4ed103608cceb103aa13182f48d9fb363913000ba6559c855652b4ec29d06bc99148569b66c77f58a757b75c3bd5ef2ff832fae020ec1c9e19c1117a107f0529ea66f0607a499db0c32966a95d882699b96c4949912380150f951991ae7768e5a26267a8a43ca76ae9c5edf31d7c52f2b09c9eb15e1cf47f85b20bd55ca47fec048b8df899a08dbe2e9c2f72bfdf3bb803af10b5a1bbcd7b4e1915e099c22307154012c67a39fa77720d7006b86a1ed4f095b6644af972ced451453b3de57b1fad8b4280ac62e1ed09e219873b92bfb50646343c46cd3c42e84e9c7f05f1aa5afd583f685a20f996b7c0683002691cd28d454f71334c2387dfc43d32e633900699c8fc5e3a3f6494ca0bba96ef10b7f367dd31623ddc14e9907f9ffc2c65da666d06987db1df8adce1c74bda7bc6c6d5263e3cd777a78b9020db37d331a16c38d7419ec5036fd95b896373461e6b8384b2acf96e46c7c9ab6d43c6eeebf62b7be5f95f8ab6b2aa5e05d66bc4df8a2fa1ad9c3cd9362cd183c10c8cce216fe48aab2b1c4f6ffa39ca9f8d7b14ac5bbd8c71f55776f6c0ea8583accd1956a fd19e01a83eb6ec810b94582cb8fbfa2fcb992b53684fb748d2264f020d3b960cb1d6b8c348c2b54a9fcea72330c2aaa9a24ecdb00c436abc702361a82bb8828b85369b8c72ece0082fe06557163899c2a0efa466c33c04343a839417057399a63a3929be1ee4805d6ce3e5d0d0967fe9004696a5663f4cac9179006a2ceb75542d75d68,07024716b8e95d104783a37f82e66d4f5b0bae8897f1ef6c45dabf3a59253261300371a4fd20601503f6d187ced1067aecb11b4a4b5a31fdbdf4a2b1ba9c0eeb0c2be7730178fe435905c1b80afd9cd27bcc631c57a10f3bf3f285bb80d9c4f1c70ed30996941d1ed225386b7f4777c18a01efb5f1086be223efdd082e01755ed517ad6a3e423e924147761c95b74f6bd338f1dc0e53715aa31bac84f7e5beddcaf56574626b23dc247d0aee8ed77760f53e7ffe467564aa3159aa300ad159159259dc3252d95942215c81ed5fafe0cb065758f72366e50df7fe6f2b41e36371408503c5e23a4ca0c93460c0ed713872f35cc71d1b71a34a80210069b12cca79cbbb04836e6d9a15e78a638b0879f74034339bb4fb39eed0c8d6684a67dd89b201b46010fa73ce5fbaee87fd89d4b5c40f04d9cec8510bdc3d07539c82031fe9734826cf36bb41b30426d32a10225209c24b631a071feb2a9b834810e81b6f87a6128f67815e4af6a6582ea36d9be5dcbb1d7fd0bda2d583d1f6bc2aed7a534c33a8d183d5edf42f3080bd07ce9d78647df008d417d0ded5021d7b6996d6b541de75dd175e820728037b531521851c9743ed03f8daf292846b2ec019238655256ee960e0981db7b65a3692b50f62033fd79a29f4a36c27bbe7a3b7bd1e813f3a2eda1cebb29979d91720ccd125d0c43d708892bc38d0d297047637447a19cb09 59ae20b6f7e0b3c7a989afb28324a40fca25d8651cf1f46ae383ef6d8441587aa1c04c3e3bf88e8131ce6145cfb8973d961e8432b202fa5af3e09d625faad825bc19da9b5c6c20d02abda2fcc58b5bd3fe507bf201263f30543819510c12bc23e2ddb4f711d087a86edb1b355313363a2de996b891025e147036087401ccf3ca7815bf3c49,585f27af67fee2446767b05ce40627bb06d403430d94a62719dae2864cd44e7a8eea340b98dad0520d8c16c1bb1ab562c0fdcfe6f1de4f8a0601eb9a73ffdbab82444e77487213d17ba31e2bc39fec719979080a501c8e15932ad588000959a18447b98735c73a2a8f4a949a8ff187520e6a9901647f47db442bfb2772e8e8e22fd759f88722a98d24d01308b15a0bc715abe9568a34201b8675204bf68afeae8cb063d6cc9ea68af9e4cd692f9718fb5eab270a2b74ab623b521b4b085700cace113168f56a994a639517f36e3165029bf100a6f19162a8696b858a0b0716751430db7bf07480427c2cda01070f5e78e3ded7471874ddb05d2944bfb04487629a98e06cc4c984ae8c5f7695248d01cee11d75a9c7f545cf86ba745b8ad5564f33b0a8b72e78954a7fb253c07ec8fb3d3bde29ddd91dbbd94d332fe9b7438937018e8243c2d2c30657959ea4d23a319854fb2cb994ced4286836e83324fea54c58db55a969165a1755d965c416e1d67468abc701925f4a80bbd9aa9da82d148a26158712c2b9830804a4cd1ca14a2b246dfe8e8a12eac9c107e8cbbf34ef9517674350973e75799a251e72a352d2700291cc3f1aad40adc9050bef9881170eacd3207ac0c573e238b65500b997dceb347b94fcd5069cf43bf15aeef15e4c135dd21b4046b201f411513aea9629b9887d21cdc43768fc1c1b12ea4ca4595ad463 77ee804b9f3295ab2362798b72b0a1b2d3291dceb8139896355830f34b3b328561531f8079b79a6e9980705150866402fdc176c05897e359a6cb1a7ab067383eb497182a7e5aef7038e4c96d133b2782917417e391535b5e1b51f47d8ed7e4d4025fe98dc87b9c1622614bff3d1029e68e372de719803857ca52067cddaad958951cb2068cc6,e57dd7df74504f52d00b8079631f542a532610d77ddb4bff8915bdfbc9b8f25352aa3d9a2d00ca2e14c77ff661b3aa44e30bcd3d4b110a8ceb65e150dfd9109ee948fff11cd01f6a98c0100d2323f52e323e32e9fe7bba6d4411eee3ccf70122da5bfec8b92e72119d4b1cb1a1626dc0cb79fb4e4c938a4a7caa7962b04a1129b4a0a9c457ff38e8d3379044e4b65b82336709b95401cd0ca64c10f5d22a226678a1ea4e2c54509085abdc41aeead761c7946f33140ab775d61f7b001f141d00f5209081b11fc2ace5d9143fbcb710176bcc8aee25d0182461ac1a446f3a94788b3513b88dddf5db0beefcb331cd2553416a3606f44b5cf36318c72501fa2007f76ba506ec510508b27d692cfddebf075b39e531ba243f3e271b5f70ea6b58afeaa0b8264202ba2c430c33d1409693ac52519f44b001abfa9c5595c0726dd1ed36c8b7cd2f29faa912e2613d1c51e2d0c6f8b27fbcdd6137307abdfc54c0e6c6fce06303862a8efecee12eb87cbf8423bfef01c6fb87225dc467ca7a0b0243ca9d531811a5e5090351313fa6f73d413755551f6e7187057fdf4cb58a1b3b3a63f28a17339a835a73bf21ec013ef4b2bf89cb3bf1369a87239a546a6816d8b06ec5b1d5a179e67a86665eefcf439d667f5f9890da8b9e1e7e1ad08f757cb0e3ec6d8cb8fd4a140846e3768076d342fdf0be4cb135d68faf5c93fafba4813786d1 b771d5cef5d1a41a93d15643d7181d2a2ef0a8e84d91812f20ed21f147bef732bf3a60ef4067c3734b85bc8cd471780f10dc9e8291b58339a677b960218f71e793f2797aea349406512829065d37bb55ea796fa4f56fd8896b49b2cd19b43215ad967c712b24e5032d065232e02c127409d2ed4146b9d75d763d52db98d949d3b0fed6a8052fbb,6c60955dcb8a663b6dc7f5ef7e069ca8fe3da99a66df6596925d557fed91f47091407d6fde32023b57e2ee4c6ac97b077624fac25f6e13f4191696b40a4df75f61cd5521d982c6d09d8342c17a366ec6346e3528b26cff915be9442b9ebcc30ff2f6add0e82ba904c73700cc99acff480caf0487cee54cba3753b6a5dd6f0dfe6571f0115e8737b071031023b6bb0d79864c3f33162e78269cee23fce47b91b4fdf91f98464a1d21e799d17f76c1bb807dee667b0b273054be298299bd12b7a80fb354ce3e6d1acf98443879a554eca6b96df061d04a117c98aeec1cde1afa9cef62dd686da91bb2b1f12379bbdc9fa32a6b6998b77e8eb0b50507862afa7799d018e272091f51cadd81adb587ef67ba67618c45d1f3d559dbd299abc26ec712da8fa34ba33bff400d1f0f8b6345cf57269b858578c0072a91a63ef85f9d378900cd1a55d2bd4630db829eb484d89ce7a414aca173c52534ad5f9355e80e395e79156d751a930f7f8b5d9f4d5a2c9a753723083c5e8ec6cb24d8ef93c8fef2d1be4eca222c6e6c2acfd684893cea65cbf5b096b3d866007136126a33ef496bf2310f293bfa4c93ab826821e2b93259c464e0aeb06d6df8ffa30b1c1e7e384c7e427a2ba3d99ff8a666380c5c1b678f742c57b0c3b08849fd65300df13499dd894efc33116e7d0774064331fdd407487417d13bba4285299af650d3065d951131 b32d95b0b9aad2a8816de6d06d1f86008505bd8c14124f6e9a163b5a2ade55f835d0ec3880ef50700d3b25e42cc0af050ccd1be5e555b23087e04d7bf9813622780c7313a1954f8740b6ee2d3f71f768dd417f520482bd3a08d4f222b4ee9dbd015447b33507dd50f3ab4247c5de9a8abd62a8decea01e3b87c8b927f5b08beb37674c6f8e380c04,cc2eaa04eef8479cdae8566eb8ffa1100a407995bf999ae97ede526681dc3490616f28442d20da92124ce081588b81491aedf65caaf0d27e82a4b0e1d1cab23833328f1b8da430c8a08766a86370fa848a79b5998db3cffd057b96e1e2ee0ef229eca133c15548f9839902043730e44bc52c39fadc1ddeead95f9939f220ca300661540df7edd9af378a5d4a19b2b93e6c78f49c353343a0b5f119132b5312d004831d01769a316d2f51bf64ccb20a21c2cf7ac8fb6f6e90706126bdae0611dd13962e8b53d6eae26c7b0d2551daf6248e9d65817382b04d23392d108e4d3443de5adc7273c721a8f8320ecfe8177ac067ca8a50169a6e73000ebcdc1e4ee6339fc867c3d7aeab84146398d7bade121d1989fa457335564e975770a3a00259ca08706108261aa2d34de00f8cac7d45d35e5aa63ea69e1d1a2f7dab3900d51e0bc65348a25554007039a52c3c309980d17cad20f1156310a39cd393760cfe58f6f8ade42131288280a35e1db8708183b91cfaf5827e96b0f774c45093b417aff9dd6417e59964a01bd2a612ffcfba18a0f193db297b9a6cc1d270d97aae8f8a3a6b26695ab66431c202e139d63dd3a24778676cefe3e21b02ec4e8f5cfd66587a12b44078fcd39eee44bbef4a949a63c0dfd58cf2fb2cd5f002e2b0219266cfc031817486de70b4285a8a70f3d38a61d3155d99aaf4c25390d73645ab3e8d80f0 04410e31082a47584b406f051398a6abe74e4da59bb6f85e6b49e8a1f7f2ca00dfba5462c2cd2bfde8b64fb21d70c083f11318b56a52d03b81cac5eec29eb31bd0078b6156786da3d6d8c33098c5c47bb67ac64db14165af65b44544d806dde5f487d5373c7f9792c299e9686b7e5821e7c8e2458315b996b5677d926dac57b3f22da873c601016a0d,1279a95cb87b1cdf2f8a8a47ce55f0da3766e35ec58cf921e07b43b176cfd6ce8508a208c9d6f5412515e0235c95397a47d2a4b13a357db4882f69b9c910c985a5f82187bfcc46bd48cddda7f65c3e95481a37202eff9c116bb3f784bd46574fbd49e19b45e5e2d18f57be7dac826a447eca6e2a6bb44b0061930df56864c378e020a183deee8445648ec2f95ee5f09cfb196e3d809053566446fca6bc36896215bce115b0aee55737a4421316d2058f24c36d46279b458e901d3a8062300024068d99d8c1b8bfb6f3e5883bfef3c1aed55989151c2cad1eb940cc82398dea1e5a92351f0d5aa7d47e16a949f396194eae2ebea1fb731bec12d2734c2f1e7464ca2fe27f036bfb28a32a9657c75eaee79f86f2ce5eff1aadb68da0b32a4bf88a37f1d66d13df4ece65059bd4abf91a3ebf982a1f5e9a6da639623d0c8e5fc5c0c8071965221c4b79cde7d44fc258f20cabe3c38862851952741fc9e9e87c06ab0cf8b8fed6c18666c5c70ea25973fed36d90429c54b157174a2583e142e26f2ed492a9fa74f1985fe52a421c2f97f94b73ec7d881f0d0b0f930461fb896b1806c704307cef682834cb583b6e996bd31a6f1d8586d416fd8c91eba59935feb12a1e77d0f3e05f80842b14f34f27add947ee3ca2e54bbe018fb8ca27ffd1c24227572cc277f723535cba0133e359217d5522676485181abbefdbc31c8164f17847 8b81e9badde026f14d95c019977024c9e13db7a5cd21f9e9fc491d716164bbacdc7060d882615d411438aea056c340cdf977788f6e17d118de55026855f93270472d1fd18b9e7e812bae107e0dfde7063301b71f6cfe4e225cab3b232905a56e994f08ee2891ba922d49c3dafeb75f7c69750cb67d822c96176c46bd8a29f1701373fb09a1a6e3c7158f,7a2dfe06b3afa54b49414379bb9c7a80efbc8d0630b8ca170f6b22cf65bff168f2ba6e32806e6e7d9d366d53a319bc2c8b8aac7cf8158128617229d76ae594ad71c0e0541b86078a62d71e2992e555ee6fbea906ccfe58fdc7101964ee8c3c05d0c2c7d8a01b7e1629bcf62233c0487e36e1c25474e129b72f1f9bafd6e0f7c9fde8dd44ddc1dd9668840294c5b39c408aa1bd1395d1f4a2368d9d1e5168093a63732545fe594b32ee91f89b297e3a33f53be9a1a00642c17da7061c10d1525f34180d04c78babf6b1c866a8ac1d19fc17c24f13ca4032d650dda748e2a09d3d97a2125d52e670c1da4afe56e60dd789608f50e914317ebdaf125bcca849ce37f38eefe8998bb2b1b10cc1b28aead1fc48fbf1c95b2a0f0637609cd569050bb5f3711024cde92bbeff1c73c9b6c8dba71b2aa238aa26b4007978efb346d3fe0031c391a70f362c4c5fe1da2d3c73e4bc52a400e5998660d8c127c46cc7fd589db2c952d2f077e4001b2b6b46ee5e56a44578b4b8dc1afa33c3994ce7ce49b4d8181195076b938bf605f61a74f9c505c64c2a75601e7ec3a94b22157308bbd481553abfd8ed5575b828cf247f6d321ff25fbaa245f9b30b39171e1cff354b9f20d55196ef66d32c4693fdf249f528c86eb82779b5fea03f8a95f31dc0579b1cbf178b23b276e5618941760b117af65b83374c919d6d423b575c5c459b5aad6a2d fa6eed24da6666a22208146b19a532c2ec9ba94f09f1def1e7fc13c399a48e41acc2a589d099276296348f396253b57cb0e40291bd282773656b6e0d8bea1cda084a3738816a840485fcf3fb307f777fa5feac48695c2af4769720258c77943fb4556c362d9cba8bf103aeb9034baa8ea8bfb9c4f8e6742ce0d52c49ea8e974f339612e830e9e7a9c29065,fba46834a6995933aaddf85b59f60eb3b77b5ad38bc21a862079d8d2227cb9b3ce3ece89d90c70b990f7507d5c3a565974446b54d43288adcce2bfba8914eb498dc6001ba169417af6da3acf685dcbe3cfa0c59963f0f0ab94d39f05a69d5dfd320ef409de76ff85e01636f57db9b2df436d94ec2845f0c0d1959db6308941e40c946f4c3b3277a065847c9e3ccdcf113dec5dcbef5aaa1c5b91c19e05eeb66f6e698178b7b02fe00b89dcc98526fa0e7b2c6247e1c175a21ea34f5260b0c0a625d7aee1680b20b4667b44f72f1353bc71df6cca4346eb54306de3c380438a9b8e6cc47e6d18d84fbecbf9a6132f63c191635999105967c2e171b74615f456d2e111e7fee5df00217b49bb49270befe5bdfce1486c13c6a94e31a20c1d377c410324c08a17c2d04710ca267e85a2cc1e17ada367c0f65ac3a70aa5fe14378371132026169657d1bc1b84c1908ab46689494c3e8a34835f4dc43d19e9328ed0a16341e5e9abb80bddef1bf5feb5ddea560253532a6607e2e128480dee2083af54c67e971cc6b56383a564b0bbd2d802c6faa7bc62629595b17d04c3ae20f73b35a9ae4d356d401345e0a0d5174bc457256dbbd844f9a4bfce0dd48f35c5f8a915e61a23899c40fa63a51f0d1160e16260bf4da1902af01c67e8997b2aafe1989d013846cf985164c03418930e61fd06f9d30f06897460dfa1987d4b5d73b68caf 9bb4af1b4f09c071ce3cafa92e4eb73ce8a6f5d82a85733440368dee4eb1cbc7b55ac150773b6fe47dbe036c45582ed67e23f4c74585dab509df1b83610564545642b2b1ec463e18048fc23477c6b2aa035594ecd33791af6af4cbc2a1166aba8d628c57e707f0b0e8707caf91cd44bdb915e0296e0190d56d33d8dde10b5b60377838973c1d943c22ed335e,4b60950081987c82c2f1a1bb9ebaa9a72e125557e296bce9895561c6a959371eb1ac9a13914f4419b4a0a1048b3d422b53261b0ac26eb9852e9933251e154996dec6219a7063d87228a8d72f13fe94a0e75485c8f23db2341ee7439faf87a1b359ceafe4290319f4705b49cba0adc24db4fe8800ae05664c544d53ee119cf4f1572daa355e48db605695bdae5bf22cffb60c019934f2aa952918b388edd9c53dc8fac2186ca0f77ac6543ac379b1acee9913cd75ca8e0f9d89616383c9541603430aa548e9a9dd8f90f64263fe42a9b8f66991cb2b8b45aaf683f51d194a01098a10d4ba1107c56173825afd79ee0a334ce739915d4f046c814412df526adff4f23811bf1c6a254372e8e46f0008f6332637980417043bab8fc21e3715b713ab4bd1ddb3d50fb9d5d6aebf94ffda51d3bd4e25c82b295badc7f8f11ca787dca045de2b52a79226abb945f69732a1d0da3a3228d44d8f43828d8958e621851f4824590c0719982cdbb3602465c28a97cd4cfa33d6eba65a3f6428acd37d66967b8c996969d866a02ff6efc1b6240ab557321260eb4c9d233ff4e1c293ecca825dac943dd1b9a624ac37acd1a818d2f74ab99b2883f0837f77d4d00a52de0924ef55c7536916677d2ab4faa8f19e8dce97c05690570ff0117c32a3f500c2fe817ad651df2e3c28f5e867083f607e8d0509745588add19f1bb7482087a508217daa 2167f02118cc62043e9091a647cadbed95611a521fe0d64e8518f16c808ab297725598ae296880a773607a798f7c3cfce80d251ebec6885015f9abf7eaabae46798f82cb5926de5c23f44a3f9f9534b3c6f405b5364c2f8a8bdc5ca49c749bed8ce4ba48897062ae8424ca6dde5f55c0e42a95d1e292ca54fb46a84fbc9cd87f2d0c9e7448de3043ae22fdd229,5cbbc93fed206474a11100e1973984d5bc5d06ad92996fc8928c1e6bfdcfad5e32665f4743eae8fd28289dd226a0136abbd5edba5016e975381d4c3cc95065fa4cdac2336b39342be8070ab2b59dbabdc77b8742e4b3c86f1ee9ed0c2b5030fe1adbe28f827111fb137c180b9994fe150b1f5144081ad59131a6017ceb8fb0715dd2de6b3bbecd2fda4c3e9e8a652b5dab4d0b39caf68413838cb1960241af59a46c8b5fca40552693ceda564862df42c5827eb371311fef9231fe1b23ed07f72db6410172597eafb5d077aed168197f20c3b01cc3c52a94546b722b4ab56211b48192f908e7e7a7b7020a8f6370a0b73e046e3211df3352deb1d59e4940e45129a6667f160d2ed6eb703ef962683540e3a9c7c94a61875cac09c4e22ecced9e2ca6dc519698042f67aa518eaf3d338c5accd5c2de5c3df6b4a2273a0fb8880cf3f81d046ad8b24e73a8f3bd7ca65cd21ac2d950a7e36d0a25362788f1aa26b71ca434ad14ef3b002baf6327d4a5293d91cb838e4212949675df185b70d8b42c0c01f289478f0a9ff736e6838eec5e54413ca6f7f22f51aada7f3e9c69b9009599bc437c0d806baede6dc1b2fb9bbba43fc3bfb5cfb408a9d8ec1c1dd1528cc2aaf144fbf9079f86577a4a042a085975bb1cb5ddbcd728df6ba69cb23a8bda0368924466a89da791d4328dc55800fe8639987efc172bb29836a901b3f4f3fe9f 94b7fa0bc1c44e949b1d7617d31b4720cbe7ca57c6fa4f4094d4761567e389ecc64f6968e4064df70df836a47d0c713336b5028b35930d29eb7a7f9a5af9ad5cf441745baec9bb014ceeff5a41ba5c1ce085feb980bab9cf79f2158e03ef7e63e29c38d7816a84d4f71e0f548b7fc316085ae38a060ff9b8dec36f91ad9ebc0a5b6c338cbb8f6659d342a24368cf,ca9cf74aded61a4bc20ba078e8053702bc1a444cef69ab058b9c0f586286c138cf02aa36cb69e0cbcc52f455623d27b9597c9368ea5daec4278e75ad5e3fbcd480ddf8ef39b3d10808d202470d18118a215838a0f6c547d324faab761f7c8cef462be150dd49a26df4e453f997c31fcd27280e846b15f640ff8c39be270df9e44ce57ca82f6f6762777089276a3e67d8eab0e4a0c2e1946fb08b3fdd3fae438cc2e9ec8bc1754275fcf4060e31428b9f08e953f9fb4f80560f2040e4b6cc7bfd6c278ff01aba41f43549dc0aa0407e5c8346543b1f1c24d1e05475327a48821c1c1058850c180776ead66996dd5a02865702e0e4705e8e2e7d4d25f058528ac980eb831d6b70e7cc06eda314d80e1433b2a63eec405bee2acb18cac238abdf254ddbbe72640c8c609f70d04c77d2be9190f78c8e448035a9206841c55cf9152ae5f7cacd798ac696299551a5d45ed113c94cd862197ee118cad47b8c08bf4fa1c6270a61de6d538d608e126c0ffbebc7f44d418bb87e557e550cdda20c2c47f2cf635411189d30deddbb9075fa6f0521d2c4ff0e4d641006cf5eea1231a87d020664366eba5c5610b63ee5b5a50c2c8ca6d7eb8cdcbddc34aed08ed7e0ee437e235449d4c1cf095514e581e3c8a15eafdaef19fdeb31de6619bee6b17b31a96140cdebf7534e0c277ee33c54319b140af0135d6f91f7d2166026c67c71a21287 ea40e83cb18b3a242c1ecc6ccd0b7853a439dab2c569cfc6dc38a19f5c90acbf76aef9ea3742ff3b54ef7d36eb7ce4ff1c9ab3bc119cff6be93c03e208783335c0ab8137be5b10cdc66ff3f89a1bddc6a1eed74f504cbe7290690bb295a872b9e3fe2cee9e6c67c41db8efd7d863cf10f840fe618e7936da3dca5ca6df933f24f6954ba0801a1294cd8d7e66dfafec,9fb76f906cef4a8c7a9cdde3254e6d4581dcf745b26995fcbc123e716f079e0a0b9f7c8ccd9dc5af8894b2d9783395f7bc05d95e20419c15d74eeafb23b6f1ba427b4b20bae38c2f6812b74a7a671384235df3618a7531123412113d57b9c2924ee4afdb9cc055070485a2960e8e5cf1971171f604781865624b075c3c01fa27f9b602c29e257821ed92b35f7941637c2bc6f0048a579e384503182ca8498ae7493d398476727a2ad321785d2273f9f548f6aca80fa7f1acc1144eae7c0ae58c3c4bca20eedc93c3742954f2e2963282084853af5c8f30a1a4333374b4a66188de73f773ff6a576a0a0df3c690cc59521378cadb123bd673a04fafb26db9d653d60a87f2834683d97f5d6e23ff2ace2ad0a5fcac71cb0032039ee01a2c3e37b3e1c14ace44a5a6e43b1e1a0fbc8afb0c811c911f2853c85f10d06253d29362d08523834273961e37c4bb0ead4f79e33d77ebd0d843709b121f8b509c24396549d2187df52c996eea9805c4a3c4f7729003d7bd7ffafd6384779d6b6163ad7c632a408922507188ea22d685e05c8851ea9c6e625d9461ef06af864e93f9b4544f00244264dc57f4a91920fec0120357b54304ecd0a45dd8a6879ee01f66f222c6cbebe8617fc06b28805f480cbfe90d42a38d1981a4176985775cc92e3aa632cf4d5a49b201eae275628a3ca7bbd4992a39ed5737ce0b4c32ed4c4d84d9e15a46 157d5b7e4507f66d9a267476d33831e7bb768d4d04cc3438da12f9010263ea5fcafbde2579db2f6b58f911d593d5f79fb05fe3596e3fa80ff2f761d1b0e57080055c118c53e53cdb63055261d7c9b2b39bd90acc32520cbbdbda2c4fd8856dbcee173132a2679198daf83007a9b5c51511ae49766c792a29520388444ebefe28256fb33d4260439cba73a9479ee00c63,d512ef86b19c0fab408df09a8ceff07e8259cdccbf0c060cfefd8fcd3951bed94bcc30005dad8002227ac4524a8e62709612666f54866074f2272e6cca23a88d5a05dd5b44dcf411e137f44645187bf03d8ca19db835974ce314ed8f3f1cb3407cc48650a61a8352fa34c4c307b8dc438634c292e91871a5dc55775ba740b8e1085c14bc779a0260288b48c80ab4b2ceff645fc47751d6dfd3039246a5e7f8b1d66fae0e2b71172c24d599cd5836faf10b567cbb834804c16d111b56d8961ec67ce6ddc989b0ac0fb3975581d3bd70043725331685b959e22af6509d4c9cbb8d4e10c9876ddf6460d62ab09a97a220038952f7025993f3f3c5eaaedc9d9ab2ae948f56f956ccfa1dc670c47ce1946ebbc7f1f537cbddd3938686e65e58f1573806ee42db6e22e1d5070820787198f27b842409b337bf0a5647c63dd0355838f52971616fd7318164cf331641fab6e3b2282547288a76bba5b973e138e4182783fadb159cdb1141dc950b70ef4609055076e7efb532c9a944c419baee914ebeeef7e1890b292f27ecb8b7da25b0c7debc52fa75f50247bb671087a0dfc15ff3dff6a3e57791f2471889f356d44a3a10228db2c3ce778ecbac53f127de3f4621e6d83f8714c0d66763460a011958101123e9ce31f5562b73ebd4f08947475e62c6d815bd02a3bcb12b8d058def7a9de8b4a70a00d039381d61dc6c0317a0de62aa 836b34b515476f613fe447a4e0c3f3b8f20910ac89a3977055c960d2d5d2b72bd8acc715a9035321b86703a411dde0466d58a59769672aa60ad587b8481de4bba552a1645779789501ec53d540b904821f32b0bd1855b04e4848f9f8cfe9ebd8911be95781a759d7ad9724a7102dbe576776b7c632bc39b9b5e19057e226552a5994c1dbb3b5c7871a11f5537011044c53,fbe450f412e4dea6df16609a1c5513ddc550f7d7fbefc4f5f9f193f3ac88351ccfb1c25955818dffe5df50ad08b3dfafacfd7bfd484a628f6c9bb4e32f271f4846bfb90be00b80572c12457ad35541c7fe0fcaf156ab66548a7d90458713f8e10e725c5759086d33685d43f3ed682b1f53453707fe17f0d389d0a8497e258566e93062b31e3538ed95691ce730b1df2f498f010a2c2de04dc698410a3d4669329e685827deae4baf2c15dbbe975c9daa13430c440543ad94624501aa63ac4d012edae314df68d7d4954d4119c5b9505d566b8ab9b54007f4b8d92d9feec562b9e0e37fd8643907d8e7b6fde785195650580373d3fc69619fdd039606064e84c6c6e44118e4921a2dbd185e7de90508ffe7380ed1c9917e0e38de26d8941d6ab0d0b4fa213db4b075a362b314bc7c3cf21a8341c611551057f9e07492c8d923d54336f3f0aa44422c423e2db0d598216889753280b08103417f431658f1ebe267237802e1ebfca862027a29aebadf8ed9a603983e0bdbbe84b3d9a5f862abbf5e18e5552c0d3e7577b96916123b4504aaf2107f643067b88ade293f5b3fd3f6955ccd9ad7e134c9f5ee60f6da78032ad1c85d710bc21939008111602147e0bf1d79f7f5302686729d44e44a7a6521b8270cc57cc8a6f16770ba66ede8fa823fa088bb7da7eee980c6c947d7f510deb93bf0b5f4380390408823aa8eb980ce0f04 cc7784a4912a7ab5ad3620aab29ba87077cd3cb83636adc9f3dc94f51edf521b2161ef108f21a0a298557981c0e53ce6ced45bdf782c1ef200d29bab81dd6460586964edab7cebdbbec75fd7925060f7da2b853b2b089588fa0f8c16ec6498b14c55dcee335cb3a91d698e4d393ab8e8eac0825f8adebeee196df41205c011674e53426caa453f8de1cbb57932b0b741d4c6,6658eb2feb9a739ff1724fe1526089d0ae807945741c2c6cb630e8f5b9c88f3455017bd81a5ed8f441afd50414ed0b9c267e527786041c4e3f8daccf1db60a0ade7199f689c8f0c04cc846318f0b8c34b122bb98386f48b0e69317938df76c9c6d502bfae1fda37ddba108af9e2d07cfeb50bb79d828fd5a67c9c3771ffaa07c7a47fa681a1358611ba76b079f4fe14dab9a0d3a4e5d2ac41f4f1374319ff9b81d970511464f5da9ae9d6312fa8baf22fceca2b4bec1a8d887f47811f1e7acc1884dee4740ab2f6e2b4f8c11c81c7e40be19f90f27fd1722ab95baa214b4096b4b11a1a9b553c4ecd789aed9f22fce58ae1963a62e450d754cb048c68eef0e7d2c2a146300a902c56ed8d149bb5c36566cb8a3dfa8582562a48927ddec45be750f639881cbc33d3b48c128d91108f2a55724bdc5162b652cc03d5f591e96f4bb40a571e1b22f504a6bb6d8d897a73884057e1d2eb15de0d3585bc14cddfafce3ad5d6a861d7cf82b5f1af784637a99b79f91528c4976720f34a3a12ba0a4bc84975cee3167d4e72292e9295629503d642a29196b934e71c63425ad701820e79ddc9220da7c7a2aaaffb852793e822b6915734fec8b93344bbbc66c5192b7f1ab6bcc63713b11cc23d541441c04428ed11444bb2f7ea981603ed4103f86e6623014ff97cd32da3c6e1ccc22ea8bbf3b6853764a733e61397302a96434abf2905f 7639b461fff270b2455ac1d1afce782944aea5e9087eb4a39eb96bb5c3baaf0e868c8526d3404f9405e79e77bfac5ffb89bf1957b523e17d341d7323c302ea7083872dd5e8705694acdda36d5a1b895aaa16eca6104c82688532c8bfe1790b5dc9f4ec5fe95baed37e1d287be710431f1e5e8ee105bc42ed37d74b1e55984bf1c09fe6a1fa13ef3b96faeaed6a2a1950a12153,cf7d80ded88e700ded518b2f0049405aea695691924b4ef06205dd2849e7a0090647c3a23407cd4ebd5b582c32b6554c506e416b9d13903a3ad69234826e36e3c5862baef9bd93ef345125678e32ebd5bae0961935232d5be54ac721fd75fe1165341a41fd880d239de12065471aee6cf970cb6a0f02addea861fefff91e6c2e482ea9bc255fb00cce1fe8ce3da479eb28768f356c2ef83f400a0f0ce859606f3862a3579e609de48f1ced3c86a9ea302462de9a27b0f251798f9d0acb22e6c71011f0dd45b11e8e33543a3275b24b6464980a5b6ffab2e9c8055cda16be6c60fb616a8f3e8b759552a2df2b05b846beae18a01dcab1e92545b0b3cc2dc25134379021dd7dc294bd97a775c174a04f2f67591841e080308c587e208d1b497e229220c38469944ef41f61a64c83e06a4390bcf318e53e4a6e9214f943d1ee957b71e8580e0a183c6b05924cf32809772cdba700ea369448ab56f399385d4b8d851cc8d6e8003f1035c6e739c91e03f1fcd9662ac99e372b45fc08610265e530f53ff726f599c33820ab468e6bc2c551204260271fe46c0a2975a18bccfd87a53b2a7eee2095a180b0a5bc7d64d57ff8efa628349e00c84b271ddfe13eb009387b1055f3b0e7b556ce6a738b9dc880b22e79666148a6c4d97b2ca581864ff4400749750bab03af9232815bd21a1a6460483505c34f282d59863b9f491a39d028d5 eb6513fc61b30cfba58d4d7e80f94d14589090cf1d80b1df2e68088dc6104959ba0d583d585e9578ab0aec0cf36c48435eb52ed9ab4bbce7a5abe679c97ae2dbe35e8cc1d45b06dda3cf418665c57cbee4bbb47fa4caf78f4ee656fec237fe4eebbafa206e1ef2bd0ee4ae71bd0e9b2f54f91daadf1febfd7032381d636b733dcb3bf76fb14e23aff1f68ed3dbcf75c9b99c6f26,fdb4cbef885524710f96f1b489099a8e5f9f5ef2bcccc23b6a619bc81f9dbff63b9ac609bd5da0fa7afac0e67bb96a54a1a64b4b943e0a492a5bfff399cc9a1fddb5787434f5034a30ca767cd8a31b69276435c99c64f3c567ebaf3c69fbcec540cb2fb671ca3835ecd228c7c7649410107d399edd661bc8947d43d5bc441ab2ef39afac6788bccdac5462d5698f60616114a8346707606d1501c834447031cfea921a85ac882194750fb8e4d22573a27f2901b75c6887d085a6b47e2bed5af785c9b60da38bc9f61750f16b2e06caa1cc77cad2b95c5d583d0e1bcd7e10b0d8fa8da7e097507d11873395166e3591bab851ef4cd7e1f05cd8401ae496737894ec50da4ef475424485be599a4e8387b0309629d5b634bd70c4c95be723932efc24ca8ff978cd31b08666f2f6df9e94a6f8afcdde6c6a01aecb63950a4b4bcfb4ecbc1feaf3b54454cbc7292a65282c9b0d7c6a053ffc11f6888da2bbcd6496ca74cfaf0f49a6f5f56e14e51955b73994015313404d46bcf0ca0854407707c176f36c3ae5986f67984a33f252b86b2758cdb7d2fbd63606b2e43f7bf0919cbf97d2e38f01aca8b3983421ca447a78ba415add0580fe56e391817783f11533c8d70e3b8ffc4a3ccdec56297ed51f80215be98c26b343736196f5c68a65b308835c8693280061865435383272a77397dd6fc3249b2ce17ab3417ac9dda62ee74c43 1594d74bf5dde444265d4c04dad9721ff3e34cbf622daf341fe16b96431f6c4df1f760d34f296eb97d98d560ad5286fec4dce1724f20b54fd7df51d4bf137add656c80546fb1bf516d62ee82baa992910ef4cc18b70f3f8698276fcfb44e0ec546c2c39cfd8ee91034ff9303058b4252462f86c823eb15bf481e6b79cc3a02218595b3658e8b37382bd5048eaed5fd02c37944e73b,748de9c6e6a8886e9c34d67a5b2625315d8b0057766ce2853f8dd047a3b58a410b2327e56234572db7ea886c90f6df31b795e93af95a4c52632d7e03d255668255f54c0dc1264ee989e25dd0ea77a8855bc74ea1066f201c999c0be63d1817df33db624f540ebf463c4b48569136e891c1082a37e6add6922c08fe512d925639cc37536a324f3850932b474f313647e65fbf28cc1804d2ef15492ce09e84413a465c69fca84014f15f2ff3ff5bfa6a9c38cb69e75d66145bcbdc462e3a6fcdbd7835c44b9d95e1f6d72c1a7af0e9e9730559499553715b0a7edeb6e5c8c5a3536caba0b67f619ab317aa8f60a005860599bd1a1ed20ffd191cf7ad26b63264ce022e1ca0eec821d6a4bfc1e97482cc33a14be20d3f6ef96a47da800ce1a8fd6939069df50c10145bee28799f8a1c43d37caa377aeae5a2a19e6da2f173124ced0aa5652aa34632be11cfeb8fc3c9a0b4c45a7933b671432aa666faffe679562d727f786960609a91d0972c35b4b9ad27dada6a24e00589cb1eb9e4706a476c5bf749091df4370cf99ff6adbe1b029505bbad815ad50ebdcf22208937fba80a453a99ca49004706a3cc3a95cfab7f0c2fd2e03617f379fdfb8a91442754de62805797adb4cdafdfb7a69f2b0ce9dc530a9ec8c741e892758512c4aac208564935791713b49b95a9df215fdd74f906f8eaa7b13a0eaa443d78a482364abb883813 4cfa1278903026f66fedd41374558be1b585d03c5c55dac94361df286d4bd39c7cb8037ed3b267b07c346626449d0cc5b0dd2cf221f7e4c3449a4be99985d2d5e67bff2923357ddeab5abcb4619f3a3a57b2cf928a022eb27676c6cf805689004fca4d41ea6c2d0a4789c7605f7bb838dd883b3ad3e6027e775bcf262881428099c7fff95b14c095ea130e0b9938a5e22fc52650f591,1060697962ea79b9519fe3aaef385c997b2e8028d68deb08ab3b76f71ce161eade98c89d223ef0384232ab3af3a6cb1d43ef5d20c1b3bb819423c026bef0bf54f4800cbf8e9e2d40f9a4c6cbe7487600bf451783a378558ba27268a5074af0630f5f2cb890bda971a4ab65cdc37c0215db1c09ba96240be066f95f158cf863cc18346866522529503e615e4cfef990f49583ede896beb63b1489b6a62bbad9330d5c3deb673d42151ed98a3854c1e80e0868e27d8cbcdb90dbf3505610fe170537919ec7c191579148e06d7d89be3f5c88c430e38fd36d820db5a941680e08b5d1859ea327c82ef50adb1d8e6e5184652064cae2c617337ed36cbd1ed42cdf3ed0c411cbe1a9e92e0f4ecd3cf84cb6c07093d51cd4d5e7c7543d385b9f420248749675cabe9fbb87f56c865325b826c4d32e28b1e4bf1889f2d00ba87ef01720d73eefbc38828ca76027c656e3758ddd1ce730e2aaac0354ea71e79d53c0d3526ed8fc024bb8cd675ab290feed6ceda91a29a71f5c128473ec94ee59a29a381e5046efefa8be3af7ff0858dd54065b41fde35f618235d5221aabe2b4be62c1e7fde8bead94f7bddbafb8a471199b3bc099e77d8190029cc7508d576db31f362b09e5c1131b0572d86d4a7d4b533737eb4d7e504dd0852e079f2a1b2b3a526175948227ea2511ecd4385f616b3bb086c54f191046bd1782eee9625796010493b3 d3e65cb92cfa79662f6af493d696a07ccf32aaadcceff06e73e8d9f6f909209e66715d6e978788c49efb9087b170ecf3aa86d2d4d1a065ae0efc8924f365d676b3cb9e2bec918fd96d0b43dee83727c9a93bf56ca2b2e59adba85696546a815067fc7a78039629d4948d157e7b0d826d1bf8e81237bab7321312fdaa4d521744f988db6fdf04549d0fdca393d639c729af716e9c8bba48,f31639ca0f9455e11389937e9e58792e3d73b9cb950adbe806607b1ad53d80f2a199f577e278137035136ad2afe7f8faffcf0e60f0b2a71e0bd9b938b28fcba94a912f249fb9ae1779f87bb1aa714d1fcc57d4bfb899a233b99586f81f4885de6693dce78d9b6631957f1689e843c1463045cda6b921173054e14be9dbd068890df88932f68ecefab3ad3eecac1b4c398292446b17e826aa8e35f6067c908afce46fd92899726677e2c0589f525ae021a22a601839beafed00f6a8ff6223fc5a92ebcf6207341b63fa2e66e9dee2fef1217d9d39915924e522bb52fd29501247b1a7b9dbc06678c5f29af7cea3d8722374446992a4bffb0e3e623e881efa7f957db1946496c2eaae98f0929ef3df633e67730d06483770197b9dd17c7c9838aa5003c5bdb4bc54e7389d453e769765879485abb3d565749c8cd5e50da9c4517f31abba38f1d7a0fae0d2816ca0ba1dffe569df4215d215676de0fcf55a75fa5f7e899f045a4b6051dd9355032dac56fc56c4988a4c082fb85b74a4c8a407ce1a06c344b2e833281ca64c2f23fd8a9f996c563e9af8742137617c0e46c5168e0b43877446e07563deb3d7654d9ea3c8ae3dec58c5753f34fded605a49236336f0b355e95def3bea7a367507f19f4e0a6dd03ed3090c285f761c48a3d3c5795cf277a87fca688495effdf5d10fbe07840c3f202d85044fa3bc41cdec4d0aaf59bb 842cc583504539622d7f71e7e31863a2b885c56a0ba62db4c2a3f2fd12e79660dc7205ca29a0dc0a87db4dc62ee47a41db36b9ddb3293b9ac4baae7df5c6e7201e17f717ab56e12cad476be49608ad2d50309e7d48d2d8de4fa58ac3cfeafeee48c0a9eec88498e3efc51f54d300d828dddccb9d0b06dd021a29cf5cb5b2506915beb8a11998b8b886e0f9b7a80e97d91a7d01270f9a7717,f04b251f8f1a9fe87e9f8b0bd8a641566174cd2157adfba255a4ddb7a001ecd9b479b7877c38e487dff1d830d01dab9684f1438c4812bef8da03ecfe57e7eb68a68e4fefd3e0a70d607ec77102538d5535c293339532953138995cb4f23af709f5c103e662e7edc447995fe5bc716c7bc482cd0cd13f17ab48d33c8bfaa67ab6ad30482b6db8ba5b1290656be81e1b543793d47c1d0ee7bc953c812e187535a0659b2cae6be47284419744c6aa66b9e53f76b9f90d4aef8dfcb04a98c82fb434c0946e5b98f2c3bf25c128cef77efb9f6412eb11f36e484faf2043a40cf44c6c3d28761f9cb7149c3db4620d09b220720767ae41bb097c865720185c19a474e4c3d706a636e42050a23766c2ff3a21c4e9dd7af62f47eca671f473e2b487a65abbfca74ced063e33f75955e9958240bc3907bb90ec6f49f384df5e936ae14fcb308f8acc1f7a406da680e4efdc2d2bb74b922c7b49e4972e388596b4f05fba68adf9a22fe16737394dfdffe2f0d32f1283ea81996b8309c2d10d4e32d4b7bc3d88484bab364d0b7e35ff5647053cb34180e037a66349a254ae2aa8f81cc7fb5514e76d9a01f96394e3a0044039c452ecf0fdf5b8a57a2a5600ab31affd1e15d4642f1a37deca0ec60ef753797ad668b7d9f2bc02de248c719311e5696e11688ddddf71f2f1994331cbcfbb9ff22438825620033734c27f9fe72766bd9c7fb021 6c4b0a0719573e57248661e98febe326571f9a1ca813d3638531ae28b4860f23c3a3a8ac1c250034a660e2d71e16d3acc4bf9ce215c6f15b1c0fc7e77d3d27157e66da9ceec9258f8f2bf9e02b4ac93793dd6e29e307ede3695a0df63cbdc0fc66fb770813eb149ca2a916911bee4902c47c7802e69e405fe3c04ceb5522792a5503fa829f707272226621f7c488a7698c0d69aa561be9f378,8728a95b55d97271b701b1bf2c2987ab3045d39fe0978c9467c41d44c006486cf3ca11b8c0d22c619a8e4652aebe67fe9fd7d35357633c8e11b865bd4c55571d764e6f92e29b5c93606273522a958eee0cb2315e89a1b5c45e763b145b1166a4717784e993e4a7a699fac6385957aa914bfc856e8ccc62dd39159f0fa5d2f4c74a4c9e1f3a1bf04f8d73ba5a3133243973562afe874c40331086e7a9705ac76ce8482b7b029278ca61cf74b5aed280a6e795906c4c3f525c5cb382e55af0ac5c9eafdc520b0ac74f14e0203f1209fe6641d1d971c76370204fc14bcd6a8223e30ca81b7d9e94f35dc53634646a21c28e873baf741705e4862ab6945653a312125f534a75b6f2d1cd4409d8f842dbdff9fea090f6677937daf354f6130ed77c32711aa0c7cd448d92075909ed7cfed67bbd5ccedfa34495624ee4373d66fc2f3b25b78ad6a1a9e9fa9a714ea24240161c8cd88f24fe72cc3160d5f68f2387347b580e945f401b0b025a21e97feec0d4dcc412d2597504489b3cc20e3c883c0d88f26591ab840799b5e9b253fe02656ca6ae1a1ef1be5f1961f29cdbe35a40bdaf2760c7bbf051ecb62322dd178753b3922af4cef0aff4955c32f32ac28d3a44b7f1e8cf93fe6547e8c3dd35159e92a9f3c6e4cf2a75c97cacc0d732b984a8b7a6af9b8189896fec2dbbea60c3b94904f154bdc8fc291e027ed03eeecfed067969 51b7dbb7ce2ffeb427a91ccfe5218fd40f9e0b7e24756d4c47cd55606008bdc27d16400933906fd9f30effdd4880022d081155342af3fb6cd53672ab7fb5b3a3bcbe47be1fd3a2278cae8a5fd61c1433f7d350675dd21803746cadca574130f01200024c6340ab0cc2cf74f2234669f34e9009ef2eb94823d62b31407f4ba46f1a1eec41641e84d77727b59e746b8a671bef936f05be820759fa,b0ee2d0215f195934d2937d523d38f1af153fc142c04e5d684834596f3b909241938a56209d414bd1ae0cb43eb2b46c314c1a0a0b155d432947c318642fe5c5b4fd6d0e4c21a9dc594db205307b41effd14141454ee55dad5667cc7459d0283ca6652cd5092ef8bc35c908add07fd5daed66afc6740baec7fcd64b838368a8ff0dcfe25b0d46fee0b842f9e9f59eee18d73c2549cce009c388b5a8ebbd54b35676b6140deed07efd4624d5a7f816189dfa779929c5f6b1b9489e27492ad0f1bd085ee890794529b75e10ba006c1b66f3f662c30df8b1295e1ffc301dc7060010862caa14d7fa09817f0d91e928ecd89fd8e76e69b3ef4986a15dffcedc9ac24e5e28783667731f07998f8a36da512bb5ba0ce50640a1a5328fe037f5872a85288158cd5c66b6c03f1925c12258ac4b5e675acd73716aeac389f9c235b02fe363a98cb10d9a0b44feed935ab067c2eeb499ca83fede967f576681a13c999fc7c1c0fde2754dfba713453545c6ae722f4faca5f5f2647378ba9308dc27d91bd1538624f459d0769f303ae818cc52647ac15e2af9bec6476a232c1ae81ba4b355c9dbcd37323d125228a53086e0afdc98c95f56e12a48843170e9cae703f5001b52da42c0ac9d285c8a13ad720104244f19c30b38ccd620ef8453401ca0feebc8b58025bbc6e6c2c788899871d3a5a363d51d8991b5cb5085f8ad525a71e985b3de 83599d93f5561e821bd01a472386bc2ff4efbd4aed60d5821e84aae74d8071029810f5e286f8f17651cd27da07b1eb4382f754cd1c95268783ad09220f5502840370d494beb17124220f6afce91ec8a0f55231f9652433e5ce3489b727716cf4aeba7dcda20cd29aa9a859201253f948dd94395aba9e3852bd1d60dda7ae5dc045b283da006e1cbad83cc13292a315db5553305c628dd091146597,19e39f7444a4a0e1c003631423a621c055d0e07f0e11ef5be1836b71690cb0de1565684c355ee9f2e6e65983b8101b5100f39157ddb8c8d92c736604693abc56491c58cd66bd66498143554d0ce34d601072bf9d0e18ea1b018a7ed9a65edbd0b81212ec13ab745728ed3a328ea157b9c4b3195f8cb8bad94a977015b94fe8050f37a0bc14e58eec7654b336a9e30baad27c441cf8afe093132234ce47ce3fb3722990f6c5916468b50a13c611b194d148a151b9ac97a89539d1efd2f9c6f72f56a8d22a557b23ec7d932a6e41b3f2c177ca9f2ecc2a1ead4061ddfc04ab1198db0e26c4b00301e35b18754df79332a46190ecf89c0da6834731cd19e2c8da3a09ed16813d2a41f7a0a4abe02c93f7307fec1537aba546865a3130d38ecc496e548a8ebd2858ec00a57e15e307c1a35d1355b8b97e9dece5a63ad7cbc97b30f2c9de69e4975dbacc31e04f15a8c02e5d23ed01506aefee60a449de20c5a50f1208097bddedf6d2cb34036da708ba53dff7bd6a1e41057e05bb57b3f7561979eb69c40348def728bfa8382f5bc8db63fbc08e6506ad80bce0c71fc94036eeab1c0c89a2c8af4002bd15617834a901ffa42aa249f7ea700e6ff4b211f7b052ed5bde9b242c9874ecf39b318a3713f1dc3066425abe76c4ad47f43ecfedc86a45e1e93544989ce7adea7e4cb3cf91047c4f9ead7c98ae963f34e99874b4002e3ff1 2be9bf526c9d5a75d565dd11ef63b979d068659c7f026c08bea4af161d85a462d80e45040e91f4165c074c43ac661380311a8cbed59cc8e4c4518e80cd2c78ab1cabf66bff83eab3a80148550307310950d034a6286c93a1ece8929e6385c5e3bb6ea8a7c0fb6d6332e320e71cc4eb462a2a62e2bfe08f0ccad93e61bedb5dd0b786a728ab666f07e0576d189c92bf9fb20dca49ac2d3956d47385e2,18af27fe1b4ae8a470778480f2586a370c93640bcddc33453e6f3ea1346b5a4ed3ea3e2ea43b143a22fc66501dd52df724c0e8f222380b4ba8bc23f2967d0a56ec241a0574e2783a461098f263533389d503b5d8550c8f60fd6fe953c5631635b6990434f8c68f8e9ac3701b3600c2d80f5b12d14218481904d1f15a776cfe1fa745103b995f9ca8e8e2ca062c5a3f1fdc848bfb0de4a47eeada11c51c743cd15c32bf921d07f242b83086660605b29fc36ae394c215251b49e9777a93ad91179cfb0551e113dc372f992674adbcc2d90aebc572b4c82b454ceb33910b60cf81b1ba558c2e01ec1d837fee34b86124e15d7beb7155e5456dc94d2427f7d916b9c34d24312eb2610a48002415182037afe89b29ddf5dd7e70b28bec4a1f3febd72ccfee8360e838fd787d0aa2af3a502d645433aeb1cff47e8e6769834cf0a2a85bafe9a89b43302bbc64c88ab6fe4712f3181a056921f6ac281c872e3eb21590c50b915f38172849cc8415bad8161dfe0a39c2532a34551441d78825fe7904b3febd8f645be5aa6f7dcc6eef96431086781c17615141d4159d6da40a3a5c22631bddb7f00040f0d39107bb366d82747851548f3ed3dbd028e3261561c8d7fcc077d3905ff42bf3caa9e351207137f7e8271ee970117e56d30b35294e8b91588dd9d9900274dba4108be1595833284047739dc4e90f9e20ba5efb2b736de6548c ca76d3a12595a817682617006848675547d3e8f50c2210f9af906c0e7ce50b4460186fe70457a9e879e79fd4d1a688c70a347361c847ba0dd6aa52936eaf8e58a1be2f5c1c704e20146d366aeb3853bed9de9befe9569ac8aaea37a9fb7139a1a1a7d5c748605a8defb297869ebedd71d615a5da23496d11e11abbb126b206fa0a7797ee7de117986012d0362dcef775c2fe145ada6bda1ccb326bf644,ae82057ac5ea69cc1b5ebac395b0eff26850c394af8178b55ad808879ad634569bfd8d0c5f34f9a3b26821f63082c5d2c322f347fa6976aa88acfa9ed8393e126f7f47dfb523c0560da5357937a74488b51fa67583c7a7e1230c015fb5f233e25b744f2fb6830278b123f7784c4f6070c8f905f96486b2d5fe137be8d57150f47cc7dcc0011fd99f35df4d9e15f0f937762c87153ac17645ed67581b38e2b34899a7d726a9ecc1cf2e5198ed5aff13f2544aaa1a069ce8a30cb66e1b984002d20f769c0f94c95f99f914d32402741d5c4d631b9d6e561d32d1adbd1f1dd692bb89f48c6bc4f88b669fe4bd2922ce6a3184605053322952e113c98b330385d6c4b6527303563dcdf099bc2102f915ddf3be0989ec8bceb029ce61974ac41a26d6dc7f53405a4f3a9130c5cceaf71f828b3f7f58117eb476a46263423f68ecc3427d9a94c292ef7c4c1d67b323fe15f69894df362e54b441ba5c94d3e0b56b772afb5fcbf8ce62647dffd78ba7f48dedd2e457ae9fee60580084a05f318907dfb90faaeb9f4d9c160259a6f8523af77c8cd8af344f41dd511e46c699a8f9a5a85eaca57780005af313705820d8051d780506d02a09b04470398d0ad323adbaa8b3dbf61af68d9fd9df29a76e0a37678c08c9d102ba960db0b5d20b6bcdad7750d3f8cde6e994267e190d7f3da06c36cf7539b6b574034b43f55ef8dd370f727b97 f76b85dc67421025d64e93096d1d712b7baf7fb001716f02d33b2160c2c882c310ef13a576b1c2d30ef8f78ef8d2f465007109aad93f74cb9e7d7bef7c9590e8af3b267c89c15db238138c45833c98cc4a471a7802723ef4c744a853cf80a0c2568dd4ed58a2c9644806f42104cee53628e5bdf7b63b0b338e931e31b87c24b146c6d040605567ceef5960df9e022cb469d4c787f4cba3c544a1ac91f95f,39b12fe62b75d707c8e18fe1c8cd23d3c1e15b7f46ffcb24c70a1d86604fe6bbc36282595346a3374b0b2305f60cebd77de1125373f5230535ab0e4ba011c6154f65216ce58a65856c7ef60912877e44ed2527c3038ca202b5445e97bf817bb6419725abe41ea1529b6ddc64920dd8396a7fe3b26054c09e310465bf65aa7b56b1877d949dda06057b7373023eb09e4ca1790d66a773bf34f1b9d4011322e08bbb7139b1750278c2dce88626ab16813803e320515640ddd9d6a7c5b0dff8fdb445cd65d6bb454edf83d6bf4f3387cc98e381c65ad3811c8dc3b6a42c203fd2ad6bc464783b073c1a9d37c1d29f85061e9c426dd195a98df3eb0c258421962857ef89d643f8bb18db27f339ba178e85144040bbefeeb1160882c3ef2a1c4950873ac4e5c853e48dd7788250dab58a06beee1903c2e68ff0f8d7e8f55aeb58cb0d65f5e74fb5e301bae2258314d5b82e3c0d7c7782aa1b34e80bef2eb258e0bd322451097b0df4532a717e2f0fc166817e2a9e24a318e6a4db618b6a8382a1bd1a600918ca08ebbc224ae9a7c1ccc8978759f512d7a97e4d1f05173b33f670bf3c40e2807128f752fd2995ec3a608915754275ebd215821a4f04ad21dd823341b15a484d0c12bb3d829bf99e182fe774d2efc726eb37638cbbb521ff14e10d73c7ffbbd8b79eb86470da14236c087ec3bdd336e8244e780454da1a8e70524a19da 25b8c9c032ea6bcd733ffc8718fbb2a503a4ea8f71dea1176189f694304f0ff68e862a8197b839957549ef243a5279fc2646bd4c009b6d1edebf24738197abb4c992f6b1dc9ba891f570879accd5a6b18691a93c7d0a8d38f95b639c1daeb48c4c2f15ccf5b9d508f8333c32de78781b41850f261b855c4bebcc125a380c54d501c5d3bd07e6b52102116088e53d76583b0161e2a58d0778f091206aabd5a1,939d443f3aaf7809342b2ec600a9d1a47e0c4195c9e1d95ce22f95cb98aa970f4fdd29a7ec9de471a1c342d4830d20dfc5abfa98f8bfd4cdf752e00bff151d7ca44d5bbe7ac18a9ecc1157354b2055ab08b1ae7b304623d643f6d471f23a82c2e1c67f11d527985208c5494138815c3cf6227a6a6facc9e2a1e3d58b32e296415e5889e58e1dc8657b0324bd1eac60ff8db83674b75683348d69978f04697a1d1d3e6d29d02094c277cf034d8203dc4d705df8eab7046c4811c18f2ec906b735bfd1c2aa3306fa0c9aa47e160b6eab89e0b390f37e53b92a1a160560e9a30ea3f005d100f0521aff20a2de0ade53bcbefc517647c81ab8684b2754fd62e5eda0ebbf56aeed4f4992a0fd4d26aec29bd186b2e254da07e1c5ad03f8194ab350510998a3bc11f08ef33c61069d1cb7d271f7d7c799057e6c2acc1d3fd8dd666e1b2c2e15ca2f99e55163bb01bca7f9d53f6389704874b3e5dbe6e74d91f110cf8a4d5eacc7a519f664c962b11a48e022cf65d4db4e4e506951513d83669c786fdf84a79aefdad75414a6cc82ea84eb3a173e887d39230631b6cc2ad26c55c938c6c82181f57820fe88dea96aea2b20e330c29c09a645134472b1b1303b1f46da40901a63c079689db2c84e46fc548270fe88a4a2fb5ea27c58a4374f72849b9c5c7c18ae2075546868a05eedc3d867f9601c5c8ee585f14a1e3a84e2fe9a1a99a0 21cfdc2a7ccb7f331b3d2eefff37e48ad9fa9c788c3f3c200e0173d99963e1cbca93623b264e920394ae48bb4c3a5bb96ffbc8f0e53f30e22956adabc2765f57fb761e147ecbf8567533db6e50c8a1f894310a94edf806dd8ca6a0e141c0fa7c9fae6c6ae65f18c93a8529e6e5b553bf55f25be2e80a9882bd37f145fecbeb3d447a3c4e46c21524cc55cdd62f521ab92a8ba72b897996c49bb273198b7b1c9e,fe0e80e36e66e0610581835d69a73908f1d951a81de93fd2bc5f10736def8a887eefede8bb6074862eea4bb0f131e48d2c3fdc8b8b8b93aef4c06bf97214f4d0c9000940f81664e04d88316f3732b39e7f9685be377b90fd7343947e7a79fee7bdf5757c386de6d02035fd4082735ce2fe898f18bdf00f3df5bd160d792d3a156584eee92b273f9a52ed221831942eb0f148dfbbdbc21960064d0e9e1cfe4e08c7927fdf1f0956288419b0372d3dff7d1a2528062d31d97d17f7f8cb09ace01187710e9dc2cd842cc8c09a0d1fe34424283fce75e64446608cae796c1f6385f989fc93b31f1edc36bd2c3ef3b71d14f25048b2e30a5f279180ff3fd0b8308ca93f4d1e72f7f45c7313ab6315d1f0b198f8d5b47742e94edbd33643397661391a82832744ef99cab293f26c8e9b0f9d6c9c82beeee0a4b4e6ed3ef2e7395fef4222f3df7b032ea28430478c038e45d36379dfd182877f827d86081647db55b2a05067913de694f84ee85bccb1f60902f787ce27407f14c445eb5159bbf643ef6195df2f23b0bc41ed595665d47b91223740709dbc82a86e35f615897bcde5f597fe05047a6cefd2529394cb85c4945f4188a078693c56a6124e040070771a4e509036df1c9b24e2185908a43e4ff81adc7d10d5578b00a6db9fb56cea6d51590b1cda9bcee86cbd8263557aaafb7f81418fb9dceb0dd67ee6ee7bc761920ef784 4e452ba42127dcc956ef4f8f35dd68cb225fb73b5bc7e1ec5a898bba2931563e74faff3b67314f241ec49f4a7061e3bd0213ae826bab380f1f14faab8b0efddd5fd1bb49373853a08f30553d5a55ccbbb8153de4704f29ca2bdeef0419468e05dd51557ccc80c0a96190bbcc4d77ecff21c66bdf486459d427f986410f883a80a5bcc32c20f0478bb9a97a126fc5f95451e40f292a4614930d054c851acd019ccf,083a1eba0ee14492af390762e0673f2b41c1179c8616870fa5aa69c40236a6cff19f322a4fb8aebdd659c5ffb5f1a953e65fc88c42c12e37fbffd6184035f0f31ad80f7e257fb2e898c9e5daa5a20603a0ea41fae59e7684646a826c4501f0a7a8c622cf5a27d37e998ed954f0dfda36a86ce59c8a8df3da65da575df05419269438f0dc0f41fb34064e48bc4efeec93bba805b5dc97f7aedff9e08e3d4b7e2aaf58747255f09a4b53658d7ae61d97ef42396161cbc2080dc7bb7392bfb348aef7f4b2925cdf9f641f3bffa3f140c0142d0e61cbe3d1df06b016579a748b56c89d5ba88466db79e891cfa7b70532a4d6649c4176fc21531f62f7baf5d9ef2976227ed6eb614dc44ca99f9580c82418ff886e169506f8bbed568faea7ce2551346efcf70fd5c32b6a30572bb72c87c62b8992edb3db0b4c3ef8ca466b5144658bc4148909bd8d9e1ab5ce3a1801d15f93946217ce9d8c0ed536b3c2e75c17b7fea2e99820c901e80efeb0ff7fb8226cad685cd768a41b8cde2c5cc8bc44b673ce5c44f63840c99e557f3b45c9ec92981cfdb3e20ee040af13a92df41e8a0877d0559f6ff5d9dbca2f53a4e2a8b47218cfad9ca6ae3892f21a0d9c0fe91a4f027bc25985947af0c906537e827b3c79bba1f37ee38f2897cbe9aba9438cce9d972ec262d358c33e2e6f2f814f0e28b4709c2ed119b50594be98f594ccd2b7d56f03 fa85671df7dadf99a6ffee97a3ab9991671f5629195049880497487867a6c446b60087fac9a0f2fcc8e3b24e97e42345b93b5f7d3691829d3f8ccd4bb36411b85fc2328eb0c51cb3151f70860ad3246ce0623a8dc8b3c49f958f8690f8e3860e71eb2b1479a5cea0b3f8befd87acaf5362435eaeccb52f38617bc6c5c2c6e269ead1fbd69e941d4ad2012da2c5b21bcfbf98e4a77ab2af1f3fda3233f046d38f1dc8,af0ff42ee50b300f202648fbe2dc08423944429568354570f787b96531a0045c76189e453369381cb7b0a537b9ec05aa22679e96c7bd7ca55793ddc73b6c3faa3a0d2b03d7561d321fcb377a1ba87c098d9fcd1c03d7b7bba6262687d71b1b608bf1486946739a69dbe87b95f0e7010103af17a6b0c50db308de00442641b51c5852e91e621133eb561c24655c9d59c22b6aea470e4d23535046fb88105e7ddfc08339e99d8a750b641e81eaab46a18cae3efaa493790a9e942eeb6990eb0e14beb6fcddaaa0bdc5d67bee8fddf1931201f18d0b0ea4227d1e89bcee6c293eeac60d3a724fa6fdda3af62d5c4c5200e14e2d40f3e031e71a8de27ce3d3956cabe9c6a5bcd67c0fe25dbbdeb5720b823777815ec277b594c914f07c989824cf0b1060ed0d4b3ece3fb65a5ae726412e6eb6fcf3047c6326922a0bd1ba7604830dc4d4981ff12b0364435544d4836505719eef8bcd246a326ca1a756193fa0a94ebe98a632ce5a0d88e115a4ccd1b030ea7b1651f43f22d2d2a530e2821f2380857e916920fab974aeb69fdd7c3af313b46f2dbd14d5b4bea514041e015ec93a6a633bd6477de78b51e592b3d87a708b831a37b70ac70730c606a7c880ce3fbc11b727e25849f2be6586d32cf7f31e20a739ccb25b62c03c1db5afa7b1c00b003dd9c5bfa49606830cd5a9b9204e1a51efa571688496d5a49f4733daaa295aee26 e90847ae6797fbc0b6b36d6e588c0a743d725788ca50b6d792352ea8294f5ba654a15366b8e1b288d84f5178240827975a763bc45c7b0430e8a559df4488505e009c63da994f1403f407958203cebb6e37d89c94a5eacf6039a327f6c4dbbc7a2a307d976aa39e41af6537243fc218dfa6ab4dd817b6a397df5ca69107a9198799ed248641b63b42cb4c29bfdd7975ac96edfc274ac562d0474c60347a078ce4c25e88,95d216d4fb11c900cb83674fcd99d4a0b0909b307a2020bb00d6d6a5590b6f82268d377e255bddd9179249c3769ab3ea09d9357447e99f9c8e924fa8c39b378790cb629c46c914ec79bdb4aef7c4d0ed5092b620a3cb3bf6d19dcb0ed4ecfdafc9c049e7a8edacd6c91a3c15d7587c58669e0ac51e151b613503db2afca0ae81782ca58bea22467b9fe7cf5f095b376badfd9ebc0bdaedbcc0832d80aecdd6919ab2d31646d9426cc46da1e5398dd475e94fdfba98129c8997ab4ede6a204c17caf9b1691160fa4362909b1c1be81420092a8f5005a3fcd26fe0fcdead650665e4ed9cd22db75382d898075bd2e68d240e13bc340c6e4a59ae944a626349a3e27f9c82f4dee5b593cbbeba0a2ba46a5c0febc5290675b2fb636ee868afebe35f7bd08f1137acb12c6d8376cc8e737827f199c899b3d8aaa937349cc04b3c64691931dc13f10ec5c57f4d5a13a38e26614302c23e30f28ae09669c4a01f7fac9ff0b2e1068343862364e799c63d74c7bfbc5f7cffe79c24a58bc2ce1041045fb01653157c9945b626b3cd315d9d25cb0b694074ae8f29d372067c308f6bf0c44cecbe47e5528e0ef9e373db63e554fda5212e35898975d708652ad71c14a51c6e5e8a04cd9b7365abd43f61fc7b3efbe60715574c0ad0bcb0c1d53dbf51172e669e35b19f333a3caedbc4e08617c47e51ab3863d61a13a8a2b2d5fb54190a0b80 f6d5c2b6c93954fc627602c00c4ca9a7d3ed12b27173f0b2c9b0e4a5939398a665e67e69d0b12fb7e4ceb253e8083d1ceb724ac07f009f094e42f2d6f2129489e846eaff0700a8d4453ef453a3eddc18f408c77a83275617fabc4ea3a2833aa73406c0e966276079d38e8e38539a70e194cc5513aaa457c699383fd1900b1e72bdfb835d1fd321b37ba80549b078a49ea08152869a918ca57f5b54ed71e4fd3ac5c06729,c2c5a2155ab4fbd3a3997bd00ed2ea8f049205a6e0668da09e0daac49484b0168e6767ad78868347272e6d8c97eef06ad0a3cb9ff91678dec7385124aac34817a6dd435a0a88db8e19a4fc75e8f9eb34376e8c1cc7951623171db22db1cc5df9d3d607e5fb17e450c15a20a748c340a56142289e0b1ec83ce82d7706ddba124759e895cb7b91522bc46e011b4eb98927d860d09ba48eaf80d1ffdf9cca026b5360ac8c2f04e9b0c30582611b8e8085b8e986d28c330bcfe80dcf11246d3544f4ae7c655e46654dc5151242cfa7b620c429757b1d527071fee890c73eabf1bd1630dc5bb4621ed4c5c6ff7f41f4bced4d31b215dd2be6a5952bd06dadc42a355f628616db922db19cec424bfcb893f948f1364ae7be1f79413a879fa372efbd59f62fc3879fba03622cf947d0fd2c02460d1d735e41ece1a2ab970fa9784dc67f0f7c2a3a0a5460f1b31029fb65d1a9a6809b4f2ae29f3a68cc2c780d0000f0790998c0febfaa59a1a56ced99f752684af6dfce832901b998156c73e007c77bf401cfdab4e6bc582b6cd477fccbb1549c870fd6e62633b90ed103edb47d749d04c39d2dcaa3dd4793957efd12d78b73f58d43087f456833432124e312d499779cdae6332ee8d884f5719d07786a7c85a9642fec61b66834f98c25e0a802b3f84dde862d9127923e3a20e5a20e184984f8661058d53ffaa70c5abbbcab51ca8e0f cf8562b1bed89892d67ddaaf3deeb28246456e972326dbcdb5cf3fb289aca01e68da5d59896e3a6165358b071b304d6ab3d018944be5049d5e0e2bb819acf67a6006111089e6767132d72dd85beddcbb2d64496db0cc92955ab4c6234f1eea24f2d51483f2e209e4589bf9519fac51b4d061e801125e605f8093bb6997bc163d551596fe4ab7cfae8fb9a90f6980480ce0c229fd1675409bd788354daf316240cfe0af93eb,b3cc34c482e9402ea5a209ccaf5d017bc118f61e52bedee634fd56c7616e6adaed42d02f072ab4ee1d8bccb8038b00ff3072dcd971616fd6a2b0012581638f835e5441842631d12fe303d6e533d22eab7cfcb702e4bda509c832bbb5c24ec62a468ca885ab7e4e3b951c5380a30cb6f132408d31faddec570800b8eb58aaed9ebd8a0d6618d439b46f83116715568a5957d2db94e0c2cdcf9821d86a71a96c622ba5c0f7c214375686e71f4ae74fcf5a75a6db5f8eb274e6d93b52a2a5110c0b77a1e21e599ed0abb78a93a5469747a6d1fc4e3e3baecf8ef33580f00d55cdf9124e2beedb8814c8f5d5171cf6596de35afce94cec25fe5d6877f40dac4b2d2fdaa0e98fc08db03fdafc3a4a2a98d0e865c99b766f55349b688506d7b701bb01bb06f80d6be98dd374bd84211c61112dd0b9a25efa21f9804d724154881906a7bf815f206f4aa1175348212c54538bee673b56582501a659061a157444dce84c226936e99e51252418498dfeb02f2dc665b8cc4622c0326978fa7a7a8d171d445cee519a32d81721f99df529614bf09e4273b24a6809cfab9a1e81e5280c84ed3cba6d4b232080bdd034f1895f4010baef462074898949a1cd5892aef5dcb2b09d46201509847179505980a2846e58ddb22ea9fa0fcbe3ad9dffaaa42f4fef4a9dd8391495ba470a2eb80d5992da78dcc8e893c1ba2c909cf8208a18c31ebacc 2ace31abb0a2e3267944d2f75e1559985db7354c6e605f18dc8470423fca30b7331d9b33c4a4326783d1caae1b4f07060eff978e4746bf0c7e30cd61040bd5ec2746b29863eb7f103ebda614c4291a805b6a4c8214230564a0557bc7102e0bd3ed23719252f7435d64d210ee2aafc585be903fa41e1968c50fd5d5367926df7a05e3a42cf07e656ff92de73b036cf8b19898c0cb34557c0c12c2d8b84e91181af467bc75a9d1,1a2eb5a7e3266cdadc696d082dbad5d9f73777f5b95dad3e9c6a936271f12762ff3e8d1d959abbac6933bb19d2a0125ad59477611f9f912f935d662ade6e1e40412bde3e00a99c06a4906b90855af6095dd7e6114ea48ddc1a76f3c8ffffde5ac246f5c0f854831ee7b48df6a32cecec0e4243a792ce3fce40bd5ab22838dec6155c817d272f3ad602f58ef870d0126ea18afd1f1527931c321a8d6da1bf60665d077ad15ef615584a249ecf7d3728c0e9d3fc09bf8d3fbb9d260fa4ff13bbd4dba6835590d67eabfafb92cb3b0435f26e7ec265f7e2077446e1580fd1747e871d7ad1e992c1a909e068ca3f8b8a927053cf31ef7e071d5c7b4044f2cf61ddd48e7b7115ae0cc2861db7e26302df02cad460358d06acb7e2d07615c0f3786ba02000893febd088584aca9fbe9f14f85c88943671d24e9cd0b8fa46601c2e40d3177eeb500e8aa2931473dc3bc46f71c749c281e02b67d8f0b3d012de4942b1b3c60a2595e845ca454028489417842d9a6c4706424c5c0a073bfd080e5f820cccee99cc4fd372b0bbc447c5f3f54d87755c0a59c986d98e316f8f1899821cfae312b9416a4622786b2910910b86d19692c8a7ed50d63e252a3a5655d6e49af3082bdbbd07690dc6d4ea42f8a7bc57db816929b9ff8375c4596f57d9359f9fcdf8a3fab33ae27624265296a093dbcbdea292450d345b8116b86fc54a0b4b55f12f 0d8d09aed19f1013969ce5e7eb92f83a209ae76be31c754844ea9116ceb39a22ebb6003017bbcf26555fa6624185187db8f0cb3564b8b1c06bf685d47f3286eda20b83358f599d2044bbf0583fab8d78f854fe0a596183230c5ef8e54426750eaf2cc4e29d3bdd037e734d863c2bd9789b4c243096138f7672c232314effdfc6513427e2da76916b5248933be312eb5dde4cf70804fb258ac5fb82d58d08177ac6f4756017fff5,1e67e9fbb0568660eba48d1c701d75653d97d9a94e770c355e2f3f6dd9b7c3cdc771fe82ec87befe4aab21ba7c689facf51593cb278f7a8a4d81b9ce798cc2fba50145eeb0de079f016362fde491620cb0a3c26cb5d5fb09980e783774c8fd2c9d8900ebb103d73f0bab02d0a8e2827d2471db29f3d6ee5d9d620d4d13d8925f1933b1c66869bf74ef967204238e095927961ed5925d1a271b9277ab9dd7a30de1fecd4c6bd9615618bf79850ee7e247121c928ac9be6f81d2b41378e984f4ba494180d7e45cb7abb6de308db53804bcf43dacc10ab3a98157285fbac9b183aa49ec18e98e9b40d12b022f40b213641cb2e18e3303e4c9078da836466db8e2e85962e5520e9ff66cf99f96e7699212816124313e5ba6347f99da7109940081419b4eed3f4ed2763d655a00ec6d183ca879074f237bbc49d40d598ff2bd8f47d0d69f2e41397042b4398d4fe449cf553f6096ba25c1a2185a13bce5545fd0defe4d11168bd81b85ca5b0502233c43b6e863447578eb6f074ee2eefbbe6c52d0e8b1046f304de2caf6484ac24783dd77774f0fafebac731e429dbacb0d95be662ed9c71fdd6c0e6595ca063c748ecff99206441f8e96c96063ef61d741b4d622b6ef6a6d547b738ab27b50fad2ec5c479ea8069b9d67654c2f12d8232ab8a97c83af190b8f09e2b8f62b7daa334dc8f26a3ea62a999433fba70a27b9cf7fcb61a2 c3236b73deb7662bf3f3daa58f137b358ba610560ef7455785a9befdb035a066e90704f929bd9689cef0ce3bda5acf4480bceb8d09d10b098ad8500d9b6071dfc3a14af6c77511d81e3aa8844986c3bea6f469f9e02194c92868cd5f51646256798ff0424954c1434bdfed9facb390b07d342e992936e0f88bfd0e884a0ddb679d0547ccdec6384285a45429d115ac7d235a717242021d1dc35641f5f0a48e8445dba58e6cb2c8ea,7204f8652f37d125bf692544b8ba0c8859beae66e4b04ada5685c6b4c3c1b8a3825b2ad6bcb2f5443b4c28adf57388fcff481ca629934cabf872354e4a33942b738ccd4e1941621524e895188d2acc9efc69de7a170bc974c430b9830e25df96097b3785a2f6b86f39e59574e1d9c2b91eed2231d4d1aefbd5dcee3e5faa42472949d0d19da8980bfc6276e41ddd600ddf78e82393eee5a9ae0c87578071d667b886eabbe6757a52af9826f65e7ca8052982523f61184b5892465b3f82bae68fe2fec1577eb935309ede804163dee46efbf5c93e7a9dc3ba79cd9a866966ba1fc0a721ca4ad17364c3a4033e805616faa6075672dd6fae31a67d891646b74dd8aa916e078ba7736a9b00f73df90b09732a42e38fe3ec9f8fc907a5868ca170c669abaf99571d14771b91f46c68f57dc6215b94dc0bb03f890bde02dd41ce5d0f8f48e4fdaead1f0a05da9a456da80b82f44efa53db9899f42ba31cecd9d7ce6a5de33b70dd6427d3a9b31c83adee1ee073e06ec4238fee4ea0029876fe6eca5de76e4d32b65564efcaa326af3519eda46eb3e443a85e78a8e26d21b158328a56af40b07ad19734e341a45a5f43d1ec2c9effbc7c5dd92acef61607f3cfda8bc72d33c045a6b883972cf4fd1282a0ade3978d1803ee78bc6f6fd297ec9e3052460483dbf79e6c35afdbc10fa87d769ae6a4e2849ad112eddec1135cdec2ecfb6c b39feb8283eadc63e8184b51df5ae3fd41aac8a963bb0be1cd08aa5867d8d910c669221e73243360646f6553d1ca05a84e8dc0de05b6419ec349ca994480193d01c92525f3fb3dcefb08afc6d26947bdbbfd85193f53b50609c6140905c53a6686b58e53a319a57b962331ede98149af3de3118a819da4d76706a0424b4e1d2910b0ed26af61d150ebcb46595d4266a0bd7f651ba47d0c7f179ca28545007d92e8419d48fdfbd744ce,a3d5cfcdcc03334632027fa1b1adb97c740f9c5d33f0b6d8468b4aa9b37a5eae697d6de7717b6f7c3e872dcc4a62682ddd76d87657096d143dedf97f2b9ba36734b9ff5816e247243b1f32f5ca122ab49647fda690b83ae0fee45625b4a2606c8e366cd5031a0c938407cc9421414ce4631477c3d4494570916bb41c60fc05ac125a3e81346759dca0cebdd763b61493997b774a582475d2261f6f8500d2c51c70de11123756eb6b958ee5f20fb4a49429358d743e4b62d76904d23fd5dac9ecbff14854bf27dda819b3f52421329b0576cc399eac734d73fd9bb8729168e35e2a3490d7bfaa39e53e54340457aec4c5c8f4c0fee9339053646e4d74ef1a1406eba208822b8e66de410cfcd49a464d9ff545604c26caa4fe84b018c69be18112b5c3d7325481078c712979dc88842e2842df19f39025d28fdf45a5dd6e8fd2d12bf27d227e79210f6266b86cdc7bc6f81db57af57aa252c5bb95a235746b9c869ba7f8c90e0ad3f5ded409947173d071de216ed1b137846752653cc6cfa3c52a32ad6ca0bce29a5b12475c049488f0a79adf5adc4510e6468e714bba37c0005a9cfa3ddb24363290a04bafbba92bbb2c2e16cdd9d40707c56f49c05c5276c89beac3b239de284867611ca3dd8250e8c7fdf522e0e84ea47a3a06554dfff6b7da13349a5f36ca447499c45da4c491dfc113892672b036507ff3a1e7e07b43fb95 a983d54f503803e8c7999f4edbbe82e9084f422143a932ddddc47a17b0b7564a7f37a99d0786e99476428d29e29d3c197a72bfab1342c12a0fc4787fd7017d7a6174049ea43b5779169ef7472bdbbd941dcb82fc73aac45a8a94c9f2bd3477f61fd3b796f02a1b8264a214c6fea74b7051b226c722099ec7883a462b83b6afdd4009248b8a237f605fe5a08fe7d8b45321421ebba67bd70a0b00ddbf94baab7f359d5d1eea105f28dcfb,23397cf5c6041fca9f1503b12a47f1389c4c35301f1747d574b48deb270cc2fd79da5718d0d5acb78a7f30782617aa2e03b9f46736620e512a6aa4e55e2b94537a74357e5c1e6216bda724677bfc4ccac3e3dcf4ae21d7e56d55ed2efe6fb50a2222e98139dfc739fc759be57963d8427d0b5d2093cf5f42347a6d9832e1febb4576935fa18e93ddb20e8cef2f2eba33c66f1e5741171bb64c49f128a7b0a9f095a35f5a20a996a3f9d7a68ab3b0d0f84e8f4fd43078a80266377d0d7020de67e18de20656bd59b86726c99b1dc8fa25b83a1fc8b7c256ddafcc67540c1287cc377ac10d39288ce00839af31a1c078b403a863171cc669dd72abf4d48cc72af222fe939a2d75cd7f195d3bd8cf8069f6557f1fb37bc8f9b677865e0d23bdd29c9b240cd2993874fbdd5fd3b8cc57b6226c40890057994a2e13129f4613d3ed31ea5804006f5753047f1128f9b8c0a7aba719a1449b3a2d02acfa0877e81306179f9ab717ac84819029006d73d48ee55ca13a3d39ed293ad0afc8eac8f8d41971242877788ec1286ed35f06330683fe33042a6255835cd54aa07c0166350b851f98f2ad2a06fda56b180f11b9616bb51ed98a2fed5bc2f9eef7046a38754b91543ebe97b8375a81b7fe9ce58de4dcafcdf8183541e44cc96f855cad024c24ea87313dc05eaa1d933d6e238e9b3a0b9628239344e8e81b5341d615b63d881ffe45 e4d1c1897a0a866ce564635b74222f9696bf2c7f640dd78d7e2aca66e1b61c642bb03ea7536aae597811e9bf4a7b453ede31f97b46a5f0ef51a071a2b3918df16b152519ae3776f9f1edab4c2a377c3292e96408359d3613844d5eb393000283d5ad3401a318b12fd1474b8612f2bb50fb6a8b9e023a54d7dde28c43d6d8854c8d9d1155935c199811dbfc87e9e0072e90eb88681cc7529714f8fb8a2c9d88567adfb974ee205a9bf7b848,3753866fc2d045059fa925412d3ff0fd1254724dec38e00f1096af36d0a7603903089900f95cf9bcfecec4cea14b7d80cb324c56e60569aad9e0f45d3a726f87e6f18559701ee6ae0e7a8622b45dcc6991a1ff15de6b78bbcb96f976089f26a38ef190ee0c609db54f443f5f1014762f336f62eb5f7cb7b102e99fabd87f36aed3359eb0dbf739df4eec4aac458546c00d16d412841142acd2e08caadbdde86843add14e3d28426295762e564e1f4854e7c617f48eb6f2fac79ffa8cddb09fa09a8dd73ec389285036a5244041dbd60ab71f8fb59eb73629bb4a827a7584b20c12b96fb1f0b950bd3c87117da69c7eda0c1645b6c8c81da8a6397dd821a983de84390b1ca902f135160db58f9f7b7ac9d010ce8d6bf7136270fae0d3994f80612bb12916993aa73f22fae642784d75e1cb5acdbcc20a3ab148d6f3f171402391121bb404f8f576eefc9acd1903bf9ad2cd4eb1208f143dc84643e52570d406ba31f8dc9f3283b2691f826c4adbaf431eb2f1de1e860f9b4c0153c9f002c809822875f915f7131ef63262abbd8bf4a5d9d1699d893435c731de48756c8d03c94d11d1d484dddbc5c35660b3318468fefd82778cf907ff52d652bcdf68c20349f64006c640e7a544dec1fe1709056ffd9ea7d41590f84f653ad4f7474d008765bfaeffba015de99d523a56a6c989ba11afae097f4d5fa63f04ae0917212e4eaf48 b10c59723e3dcadd6d75df87d0a1580e73133a9b7d00cb95ec19f5547027323be75158b11f80b6e142c6a78531886d9047b08e551e75e6261e79785366d7024bd7cd9cf322d9be7d57fb661069f2481c7bb759cd71b4b36ca2bc2df6d3a328faebdb995a9794a8d72155ed551a1f87c80bf6059b43fc764900b18a1c2441f7487743cf84e565f61f8dd2ece6b6ccc9444049197aaaf53e926fbee3bfca8be588ec77f29d211be89de18b15f6,2381aa1e335043c1f7360d64c703fcf6190747a616c550f787c33a573b2f9e83de427ad8ee50610a2fbb07ac92e4f912b3e5c10001044fa2cc3ff1c2182c672bc03183af502d6530443d890af4571611df65a2fc50879d08e9d664d78d5f81d74957d38726caee5451ab88df8853cc4a034065c532346a4f0d548d65745ab649683cfe185c649ceea12d79e0904e2c059549f895dcb1ed12d1cdf00d530d4653b56ef9fcf8d3bcc70fa91397b87f34ff839d3c0deb053d46fdff9262219004961af9d03f50e1016e737605f35eded16ed51f4aa8ffe0a253aa21011dc002c5c0e0b1ac706e53dbfddcb1b02c0148c3afa9d69b6cf7a72b1f793edac9a99acc99f988ebee210ee108093ce8eed146fbd98436299b159760edf3d07bfec6a9c1d844e98dd632b1e773d93b9604cb635457e33c063991d2a6d4dd8aa72883fdd742e34eca12975afdbfa2eb997609f91cb4bd53ca40ba4793b9849abd509a2b6c01094400526c493ff33e0f8f1908bbf783e0dfd92105830947338537c9f7b6b2d193cb2923f95caf113c9248c601eb39147661f7c639fb05281e0728b916c59d98f36daec1f61fad84e7292b6a5821009fcc30ee7267969243b36134675f3c8f1f18e9c341afeb5377426bb04517d1498fa7a271029936ffbbb4248a786eab072387b991222017025bb84eb4dc084781f21251cd8d8ccea15ea2c37c89632bb67e db11f609baba7b0ca634926b1dd539c8cbada24967d7add4d9876f77c2d80c0f4dcefbd7121548373582705cca2495bd2a43716fe64ed26d059cfb566b3364bd49ee0717bdd9810dd14d8fad80dbbdc4cafb37cc60fb0fe2a80fb4541b8ca9d59dce457738a9d3d8f641af8c3fd6da162dc16fc01aac527a4a0255b4d231c0be50f44f0db0b713af03d968fe7f0f61ed0824c55c4b5265548febd6aad5c5eedf63efe793489c39b8fd29d104ce,325a6883e6918057acc4d7e6863d245ed59957957af4e8e59ec6eca35eb380641bd39550268a68ebad703a51f9b47dd05ca25681bdc853ef0897cbd4a0da6be9e911c26e801da8f5360140fea2ee9276747e1ad0879fd741e52a7dc8f0ee3cb199826f9c1d397e150641e8ec348300ba4f7ea7746ed0e94520577fdd253e04c47223521661a308d1c996a90df8a9ad18418193d590e75f0f17fe0443b5b130c1aabe9f60e538e6193a19690368a2c17516d7febc3df95ded8445ecc260ba46156c88b5218e582fee9ebc4f28cc4171936f7c5bef008d7ad76a70be3cd3f0701791702a237160798223eefbfeed7bc108e9c793cc42f93381bb9d5f97103499bda63610303a55088fef10fee330c4f35d0a4d0f36c1ca06cd08496db0d06553bd612848212539de0d698a530dc287f2fbaddedbaaef0195e050e3968850fe8e1c72f8e3f11f24bcac475593aa28ab2cc69c3fe6f3ed03a38d8b278fd678697a3f6dfed6cd52afa4e9947ca56d1cdf10ecef90ba6ef87d9c2765f2777c1432325c464c685557129808ce3b91310c301547b673d498a41058334562074a3bd3c64fc8b02bee8ea642b12783ed71e990ca90b95b7020d5458ffac57bd93f882f3eadd4707c98591caa667bb0daee9880c3549fe9ddf7c9314387a85d308516c64ff98cce50e253cdc710927dda784deec547c4442a0818045696f4d4ba4e0d729d13 bebd4f1a84fc8b15e4452a54bd02d69e304b7f32616aadd90537937106ae4e28de9d8aab02d19bc3e2fde1d651559e296453e4dba94370a14dbbb2d1d4e2022302ee90e208321efcd8528ad89e46dc839ea9df618ea8394a6bff308e7726bae0c19bcd4be52da6258e2ef4e96aa21244429f49ef5cb486d7ff35cac1bacb7e95711944bccb2ab34700d42d1eb38b5d536b947348a458ede3dc6bd6ec547b1b0cae5b257be36a7124e1060c170ffa,0e479e6c1c78b597de67ff30f0be1d251dc86ff0ab0f4d5c6f64bdefdcd6a77daf29b772fcab3eed9344d32bc3ed616c10f69cf4ab3b34709f3941f3951fca1a173ca2cd707fa41b8e458634377596865bef5cc8a3cf52c0ecda7ccc0dfd8aa8ce0cd7cc1917a7bb9a3bc9084afe456e5dc02569b3fa4d9b9da03b8e4b223f7cf033c1a8bbd6002b3a457c0de35a222a30a0e86f3ef9c9f255d449ce4ef5afb51577391574f8271e07ea98820e0308ee56b1eea91b35058030ab6afde356cc83d526bdae2e55b1ad4e4d8016fef14247bc7d95c34f06dab7d9ffd1a9fef761ae01f8dee1d4675172c1f0ca15361cba994ef062596bb767c52a275792f48b191b1078968c1793a9d274166db592267e1822585fcb1a9734d4b503f5e1cb0754a7d9f47359cc91e0646c4a2e754a29584363ed4c8c806797fd102d6220de1814e665409104d32be7a346d3b126fcd51f55e5625a6bcaab74f0e69ba1f75a4d5c4625e2f5ae124cec4ea6a702858a3b03cbcb0b014d3d841cd7a87d02c622f96aaf3aad96a62939602a2aa1f9d88dc555038560217baab657ee87367e05345e1612532f9b6d83043db59837e1f75d82b8149b93f1105be13bf51e20f18cecd5df87067a0716d3f860de8c998a487c8a197149e7c8af4b414217b8579c314f698fd6a3b612b2dd67ff6e3471856fd9f66799fcee14627293ea94d1c32d915cb81c5c 5aca56a03a13784bdc3289d9364f79e2a85c12276b49b92db0adaa4f206d5028f213f678c3510e111f9dc4c1c1f8b6acb17a6413aa227607c515c62a733817ba5e762cc6748e7e0d6872c984d723c9bb3b117eb8963185300a80bfa65cde495d70a46c44858605fccbed086c2b45cef963d33294dbe9706b13af22f1b7c4cd5a001cfec251fba18e722c6e1c4b1166918b4f6f48a98b64b3c07fc86a6b17a6d0480ab79d4e6415b520f1c484d675b1,0a5995025c3dd9437884196ff09c0b92b5b0b51b59d0c3c9041ab172a1685ddcb3b0324186f11e2d7dcb6851f888ade68052497bd16c4f1d98dc468d833e4afdd2a9e3dadcfd188c9b1e35ba9fb9549f88c8c7c74352a7b420c1019d2e7cdf02601e5609635ead96cc57fe29a5ad98b2fff301b3640ba441cbbed877477c0dc1d6143454456c0efea8c4038281e97c02774a7ed709a446941a2819f3372e18bc1a6c119eb24cd16a623cbf91816cf2921d2fc65deac91f3e0ef24f97ca518d167f295454af8208ab25540228a9ab1bfd0ed0c8d09ae579b7116389b9baa6ee388612f323d1e1627d1667f4e524c562b0993a807baa0e81d02241049a4c0bc8ec95701e9cb045a91c4340d8c3067686347867d4fd94d48c566672da8c89468d71b488f7d5e1409b3f1aa17b019c57d5a94c0153a887ea366253dad36e9ecbb20de67e5f09f4516daf93761700bb4e094b88ed56cf935f9d0e5454d2168fe5f5ce0682838386ad55b4c664526b48138ec270be30135ed84a63fe04cfb99dbce6b70cbdb32110f954491044970d3aafb62b5123f2b43f3b8275cd2d1034068864a94a1b63532f31d2e65b9c197e13199f86638808d17dc9e3d914ac6e078cde60a1ef9db9f94e56c29f385418aab5f5d5cc324f0b1e2b9f9cc9259971fc57a2bd18686045e04a3a74c3606b8ede2e2e49e2b3f01ceb4b4516e695388ae331cec186 a5aad0e4646a32c85cfcac73f02fc5300f1982fabb2f2179e28303e447854094cdfc854310e5c0f60993ceff54d84d6b46323d930adb07c17599b35b505f09e784bca5985e0172257797fb53649e2e9723efd16865c31b5c3d5113b58bb0bfc8920fabdda086d7537e66d709d050bd14d0c960873f156fad5b3d3840cdfcdc9be6af519db262a27f40896ab25cc39f96984d650611c0d5a3080d5b3a1bf186abd42956588b3b58cd948970d298776060,9ff0e63d6e1bd2c9b671298ef08fb86024eecf3a41662d465d8011e44c55e4312a2f4680a92984471b885fd730a3c3aaa6329ccc06e9684350543475d8cfe2f18079dafab03b9aa1368aafd265c5ed3d0d160ef317bf5ca211642f7c86d4c59504c8e6d8ef5d52c7770659c91ae1121eabce4318d58f2644df56d18909ec977d75d27d25d291ec706a39a3eb13e49691f6c3188c300b827e3ad1f6f8088318da476d07666ae4192c08d4ab797e53445239cea485704f0266c49acd7ed67d24da7333af799b40b301aad8883703f03869628f8f1513629ff0888656782c23d43d435962a022bd19fd7e4af8be40cf34abdb1d0dbac698079312cdfd5b01d166e6933de574914a62472c5b2954740a5a26217e9a67329cf47205701d8baf5e660e231e16bb87efdfcca4e982f44cad53b2893a83dfe251ace8c49b225c3e929221d4fbe452cbbee2f6e59f7868f876e20af55f8b1dcb4ad5cce9f0b8966d51128d08698ad8fb267d3164023985f5f5e48a237f4b638437e074fa4cf83030da5846e64e03a23ed2ee12ee42646d1075b8f91b861d6daa8bbdb07fbd56ac72fe8675031c1cd0622affdfc9227f4dcbb642146f87d2930b859181cf5ad7d6afcc87bb905ad387ac8b8a7da70ce626cbe3e13e115572780d38dce4f3aa6a95641842109b9750ad3fb5f711e1f1363119bea84b4589d0b7287bb4cd094564db63251cfd 06cbbe67e94a978203ead6c057a1a5b098478b4b4cbef5a97e93c8e42f5572713575fc2a884531d7622f8f879387a859a80f10ef02708cd8f7413ab385afc357678b9578c0ebf641ef076a1a30f1f75379e9dcb2a885bdd295905ee80c0168a62a9597d10cf12dd2d8cee46645c7e5a141f6e0e23aa482abe5661c16e69ef1e28371e2e236c359ba4e92c25626a7b7ff13f6ea4ae906e1cfe163e91719b1f750a96cbde5fbc953d9e576cd216afc90323a,9ec7d516bb276ee7be68912e86fcd71ee08ea4bcb5a44b9520e84f7433811160e5a742bf8e444329f4fbe22d72f002f82459dd538d7c26401399b8882463cbcbf2457a7080f8ecc02a05f357baf6bf8de31984abbff66ad082cb995a180d7455bdfbafaa83b74cd95488cd8f5cfce16ebb2d9f08e54ba341345648d0fc557002487fe6f0d0418858698caa9fd4171ccf3880fc0a9e751bfb566ba907e13bb78a19e7d0cc543f9b7303c74bd957149bc505530b246a8d41638023b83b84beec79a91cd21d3982b7e57582780c92be8ca813218b287c280a42e73deb3a84f1027010f79ea2ce9d4ee57de696dd1d4a13f099e4e1cf4bc7cceae2c7a454775628d09fdcdc55c6b38f545566682d3546a6f6aa8b57d44edc36b0c4b9c1b92cc2465b6bc7091eb78ca0030db7d7e31805ab459040494df1120307a2de8315c3ce802491ebb0ff3f83fcf2f99d9f569d3e3f32f0caf2d7d6057ffb6183d274919b9d4b4cbeb125c9002a816a83941abb5120ad9af40a76398d31b07e464482faac767bfec63cc221db2a54860bed4d5e9405821cb176b47838249c689ff1d9990cb3cec4ef1a0d9280f35e8f23246537313b77f26d517221f0a21e7e6d4d28d88632b44d7f1c381f8e7442a71c0b0473f7bc702326364489a943b6a0cd0a8b868f21d7f26a1aa3b8c7a4c7ceb574fc2b266cd8067d83a53ad469dffca9088ece439207 f1c528cf7739874707d4d8ad5b98f7c77169de0b57188df233b2dc8a5b31eda5db4291dd9f68e6bad37b8d7f6c9c0044b3bf74bbc3d7d1798e138709b0d75e7c593d3cccdc1b20c7174b4e692add820ace262d45ccfae2077e878796347168060a162ecca8c38c1a88350bd63bb539134f700fd4addd5959e255337daa06bc86358fabcbefdfb5bc889783d843c08aadc6c4f6c36f65f156e851c9a0f917e4a367b5ad93d874812a1de6a7b93cd53ad97232,045e2bef203b8e72121fc29e68f01176b8ad2e0f24352fe555c9f0b70ffb38aafddae1b2fa04c3bc2dabaf4bf3bacdf7658a623446fd6840536572eff9393f5ab66c080a68d2341af34aa2a13b6eb57d8dc6caaccabaea593970b4d91a3b861aee0b6e53f3263da68ddf75cde76e5bd94afb4ac78abed89788ba89804d6f1997684cffed40b3761a782e3ec1f1a1ff12f8151e91a935a088d2aa2311c43fd731cef31503c775781ef5724508b910976dd89ecbfe79b17f1813b01b82b6dcceaadd6615cfb8d2eea27ec7377f8911a39e9a15e622f3a91f88333811cda86007e57ee652797bf9177c898cd8951b8c123b8188bdb2e60d32493f4e94c34b9ff3a00893795ae0028061050e9c03a53ac787787a332dd4c75fecc1b7ac1e6da30e69a46dc94c87368c2150eeb3717582d5e5851bb5695ccb416e4d8462f0448e0d711b42f1b6fa0dbad40e96c6b69e67bb1907b460dc319b8f01591867c73655f8a28f594ea2458e163ef0d562b36580aabc8e9fcce61d09cd83bc4dec826c8f7dbd76028588bc905777ab6b5a5dbe81665971b23c94dbae8b513afd7df0b6c83469acd22cbef596359ba0203c6f320983a55274812b49e7663a6f48b420748ab10062ebca4dce4440d1ef9b72bf4e121b76075d209eb82de30c074cfff86cc28e464a6959691c66db995c279bf50ce2abecb94cbc850a33315e4ecf650ffc271dad 9d9f3a7ecd51b41f6572fd0d0881e30390dfb780991dae7db3b47619134718e6f987810e542619dfaa7b505c76b7350c6432d8bf1cfebdf1069b90a35f0d04cbdf130b0dfc7875f4a4e62cdb8e525aadd7ce842520a482ac18f09442d78305fe85a74e39e760a4837482ed2f437dd13b2ec1042afcf9decdc3e877e50ff4106ad10a525230d11920324a81094da31deab6476aa42f20c84843cfc1c58545ee80352bdd3740dd6a16792ae2d86f11641bb717c2,7fd29d970989b8f0dad5286cd8ce7f5e793b80ef8f62506f75a119fb3acb39d726cdbe6f4914f8a5930d30a0ac1e36e285aed490cd30fe63a2713ab0dd473a7a764a19a70bbd9ad5bcb2b2a0ad63a84fad80466d1c9f513d4336e3d6c7f93645c3fa30ac5a54b46205322265d3edbe4c8c58b5d8aea1856d2fa81c81e12f27eade6958f014ed3fa3c844a65321eaf484a2e7543d362627f2cbc4a83415fa3ca616b9cd7ea8cd1724f426c0161ae41ce8175f0598fe4aae91a3f12d6c8659b063ff5c64fed548c206329f0c5da4aefbad704d16a1b67a38d807e64f03a3a9dae4b464c78462b842b0dae0036eb466ac7cbda234f2de626d14764f6f49a8afeb062402cc9dba983268333225a6678d2fd9e506ece66135e6afe7a9dc3a16295f71440ed04e8e391edc134e91c1699f0d31f81fca6105f485566c13a93a2db218dbe8d64f4b2e242462a67fe3a98a785bf276e510ada824e88c5adbd9889ef2857d5347544e431603e717ec7a7d17c98a7c326c0a4a83955c7ee31379b241c2f2abe038b2357d3a9d940d875f2a5634cb47255dc92ff11ab7dac4d675e13134c24ff7b058c2f99c985840287cb3009b6cc3d75aa5e79c29c68dffd9d95e37592b6036a4ceec5e34eec8de7ebca4b80f0e103cf07d46e73734c831c0cc2b6e31c14f304d88d77d433699ffea902058f8f4ed0fc7afbc4874cd6786e6d82a96893a68 5179888724819fbad3afa927d3577796660e6a81c52d98e9303261d5a4a83232f6f758934d50aa83ff9e20a5926dfebaac49529d006eb923c5ae5048ed544ec471ed7191edf46363383824f915769b3e688094c682b02151e5ee01e510b431c8865aff8b6b6f2f59cb6d129da79e97c6d2b8fa6c6da3f603199d2d1bcab547682a81cd6cf65f6551121391d78bcc23b5bd0e922ec6d8bf97c952e84dd28aef909aba31edb903b28fbfc33b7703cd996215a11238,efa2939b59dc8f3527c78e384b1cf12c7e184687a0c3a1fd9ffb9797d72f13df8e199b2916a6ba82fd7a914703687ee707c6f87845442deca59f08e1d5def48bcc43bb1a64744d4dd020c866627ae212e5ff4ef9f63c14d2d1cfbb404e03573f9d110001abd156754ef41a4c48e664e31b5922a27bba26d2b3ac79f57720a4190ae55a5634af6e43cdfb87450ee8cc690749a45367250a44b07e54fc1ca8ec1caccc979751544568f0117aebbe6f5415a35244a9255fb023e7c30b013d6c47de992141929f25b3a43da91cf8853ec88ba42da3b17cf27351785bb16849e6ba680745f0294a85601d5a08cc924bb962cd8b67ee0667af1e118e2e5144169da0fbf03c974ecb202ffc473315185723b57521737cdfbce99ddb81f88d81c71c5f02ac5db801437d46daf31bb9308074a21da98f6899f6280e449c1b55ceb3e04522d038307aabe964b720ab331a172a53ccef174a82f046f42820d11947d1b316edf390c86eabe22408e0008f396a0e7f3d51b9988cd2ffbc49869fe0ec03a338a1a8e0a663246a37dea111de5249196114996102223d628ab70fb7f53b842b60f375dd6779d9426aebaee547662b6962e361009c83cdcef6d8bc6311cc1760e784cb3cf6241257ebe14fd9550ec8316d95508390909bcd23ef9f78cdcb485e4c403671e5f20e7eaf4e0c06344d54e157791fc1b581aac0c4ef947accb642e78cfb 576ef3520d30b7a4899b8c0d5e359e45c5189add100e43be429a02fb3de5ff4f8fd0e79d9663acca72cd29c94582b19292a557c5b1315297d168fbb54e9e2ecd13809c2b5fce998edc6570545e1499dbe7fb74d47cd7f35823b212b05bf3f5a79caa34224fdd670d335fcb106f5d92c3946f44d3afcbae2e41ac554d8e6759f332b76be89a0324aa12c5482d1ea3ee89ded4936f3e3c080436f539fa137e74c6d3389bdf5a45074c47bc7b20b0948407a66d855e2f,97922e827163b8869d9a7654ae4532ea26f9895625152012f147be1e818df802689d96b469c8b0e9010d0423da90ab6eed2c835a01ca4c386c630a22d885b511f12799eacea96d157a4432a320f3ec1cbbb6b8efede3e92d99b1e79389b93af7acb27d7dc97cf88485de6c85400a2dd88aca540b3c921180002847b34a454465d014f4742815ec64f5fbfed6229294ba5ea89211e35327cdbac7ce85565eb8f23c4154afec0dee188e9d854ed56bca174e14fefcd0ed039b8ddac3a3242ceb72d9116482f8b750a126505397ed261d7cdfe88f8e2f4e4a80628d66a7676e28d4e68c3e97a47c3844fb06692e5f4664b8a583a1836ada9aec095d011f12b3ad6688b0039b1b74d016f1bd477c932ddc1944b5f301f4d5690e212e45d26908ba09c52d6ca22098b7a080b0056f0cb891411d0b041cea27030a2f9066aaf58ca5357344dd9aea0b0d80932e98e205ee315312d19413240b2ec4b854c21bc2dc16040718d2509515bd45b6557083677c1882d48f687ea0ea86b05cc3f5e330dd4bcc17e5b4f2cc4f2c64773edf3045fa48c53081929ecf31e84a905586d3afb3120031ff75abd8cdad7cee66386a7a718a90b98ee970864a167fa48bb7a3f78adcc2105e0feb27414b1b6c59c7be5f7509e55d561c32523fc8c1c12628ee642d9a69f7d300b49a5b6551b487655b21fdc690f865196a35f138bb8e69571280fef496 0df2152fa4f4357c8741529dd77e783925d3d76e95bafa2b542a2c33f3d1d117d159cf473f82310356fee4c90a9e505e70f8f24859656368ba09381fa245eb6c3d763f3093f0c89b972e66b53d59406d9f01aea07f8b3b615cac4ee4d05f542e7d0dab45d67ccccd3a606ccbeb31ea1fa7005ba07176e60dab7d78f6810ef086f42f08e595f0ec217372b98970cc6321576d92ce38f7c397a403bada1548d205c343ac09deca86325373c3b76d9f32028fea8eb32515,289c52c39044bce5ce8d320e2ac43ddf8dbb4a5e6698d536e304424cddc251f7b181f58ad4948360972835cfa265e9b658f6f7d4b7bd92d68e75f0da84f47c969c7f12cf5170117b7eeed8b77e3aef06e52adbf8f0ee6ad01de3ec5e726bae631a68f6ff364baa1754d928386496010f0ee59390e041cc0a6eb8f3864087bf7ba5a57a116808bd496632081400b89ccb2a8a8ec795bf07c60951b46815e6ba72db555b9cc03caac4bb8d60bad5ec6c5e48d66f4c5b2d1669115e0f0bc80106ef06d48ba29e2899c0ef4d5c5f4e29cb29c8f578a824cd462a4018e889b67da31a90bc58178d904c43296e4d3f4977f0cc1009fe51f37b2f8979c97dacc92c8d0e0fc45a004928f96260fe2a6f27da15307af55effbac4814c9f4446253064897fa1e1747fe65e4c406a3879f8e2ebe5cfde3765f2d7a2065a6e0d38b6b6a5f9fc3ec3cb1b35d33386ea75edce250d5917a17a6cb9d1517684472fcdf27d61bd03f4bb43c3a6359286e73b67d1a618a75efc9ae2212bb507dd1bcb12d0b11fe2030bac84dec40d04324c8354c3f3c6ed79d7257b8a189c565a41f72ae3585a9bd91c9fd43184814bd64f7303607cd02b6613be736bd13b3aa8c668f91f398a8f5aa6bf8ef4d9058637faa3f0f0710ed60c2fa0f6dce8ef0675efa719eb03fea27abde60c5b381ef4026fcef49ac245483da8b9b50dadcc310cd15c61e7a0aeaa6f 3e15350d87d6ebb5c8ad99d42515cfe17980933c7a8f6b8bbbf0a63728cefaad2052623c0bd5931839112a48633fb3c2004e0749c87a41b26a8b48945539d1ff41a4b269462fd199bfecd45374756f55a9116e92093ac99451aefb2af9fd32d6d7f5fbc7f7a540d5097c096ebc3b3a721541de073a1cc02f7fb0fb1b9327fb0b1218ca49c9487ab5396622a13ae546c97abdef6b56380dda7012a8384091b6656d0ab272d363cea78163ff765cdd13ab1738b940d16cae,03e492e2e4c353a74245745981aee10cb10ecd72015fc37621d2e07411aab55daaeae78ec376cb20f268fe40392876a29b4163c3f1732fb58fbe26379f88c4388513c9e65dfb7a4b76dba139b28673ea6691096ec526de0084fbc516360b07adc853a690264ec8c6e7f200d71b593faae6723c0a08b7cac263d7f7dc5376b51a2c7c640359721fa93a950a7a1f07f366b0fcd5c79471ee237d11936b763840173710fb8cfe41da287f61d13fbb174b451f30da1a1fb0f02c2b34689a725b1f86a96247e6f48897e524e84d91bcc9f08deaf189efa84af2a32da7480ada982e579a832fc3cb1fed55e8d0d4aa710ea5b0b779cf0667ecbe9f5827fd0adf6fa6d98defdc0a3f3e84d5ae28d676ce703e1f060e4bae4c0d931f84a76c2777d71b02f0dfd3dd00604c6ebb32642a9ebe9d34601fb78ae60145e32b6ad2a362bff609cb2efcdc66781b5ae2976f0249fda97dcc06a8f7cebdb32a2849b61142a7e55cd15ff51a821d233b3c35d9f69d47abb6d2b55169aea211a67475fd48d39b6863ef6e4adae89530b0a84f6d6aa9b0475289c084ae2e6078785289e03c6440dbee352b9d39d11c9300730e4d224fe008696b8f27f6a9261c30c577b48401b2e90ed5830bd38c13416d19f9b6ec96f235f7a0571961f18c0f3a977740e9f5cc9ce62f695f9a9f797a33a2fb247a62bc635449e4ffeb2f24298bdb152e7772260f9e c38d6b0b757cb552be40940ece0009ef3b0b59307c1451686f1a22702922800d58bce7a636c1727ee547c01b214779e898fc0e560f8ae7f61bef4d75eaa696b921fd6b735d171535e9edd267c192b99880c87997711002009095d8a7a437e258104a41a505e5ef71e5613ddd2008195f0c574e6ba3fe40099cfa116e5f1a2fa8a6da04badcb4e2d5d0de31fdc4800891c45781a0aac7c907b56d631fca5ce8b2cde620d11d1777ed9fa603541de794ddc5758fcd5fad78c0,6c937d60095b762b69a69116dde17251b6fc76117d2173e0702408bfd8a215a057f25d720fab9410bf39ec033d68cc87572c7fc8b3c920c720c0a34ff468711f32753e8e6813d9d8abc30ac3a5ea3f6509a22e01a389399fa09052465316be70501b70cebc21b5ce57fd935f7a265fb101232e95289e4234b43ac0bb45bfb8a29489e7c3410f4a64028ca7bdeb97b327193a30fcc54f1a9835e5bf497e0bbde269e3f01bad497ac3e09425b7e4d5d5a345b9cdc256683c3d73722b6b33f525dfdf21106574ed3a1b38990c0a18aeaa51621c6d603d58aae2b1d89f57e802e66f8a7122bf4c4c1df38ff9b147bbd4d084e119298c9c4af1bc6390aac20bd1db5e68eaa7361601a40119a51ef26e2328f6cd52874e6f24b3460a7d531dbc5de94b0d62c35c6f56d4e8984b20be06a248e597543e29c314d67db0b112e158321e6bc9494e14c9e33705e678af9a6dc44bb567146e6d03ae590cf76c76398a4d5bfb9f0f12cb707ec79bb52b5488dbcf1a19623c9777f30f153c3e71e5f9a4841e1f53e88421947903c9dbb58cdf75cad297755b704e6919f25ebf43520cef6d71fd41aad277aab2bbc86b997b6a35c4c1a8b8c04e6c7741e88ce198a650841997287e53cf24a2fd939f1aef79ac90dc787789ae0b344b658bf493f6da6ef59112ef76fd39a8e0cf7973e002fc7ac455cc4fd98c0030c7c76178d1edd1ab12e3493e 8d2de3f0b37a6385c90739805b170057f091cd0c7a0bc951540f26a5a75b3e694631bb64c7635eed316f51318e9d8de13c70a2aba04a14836855f35e480528b776d0a1e8a23b547c8b8d6a0d09b241d3be9377160cca4e6793d00a515dc2992cb7fc741daca171431da99cce6f7789f129e2ac5cf65b40d703035cd2185bb936c82002daf8cbc27a7a9e554b06196630446a6f0a14ba155ed26d95bd627b7205c072d02b60db0fd7e49ea058c2e0ba202daff0de91e845cf79,176c854006ac910006248f1ceffcf0bca14015b7939b0065e59a838f213b9ed46c68a377ac3110dd08ae358d4c3c926d262a4906c196822d2d2031990d1f02b472b635ebd7b48ad7469671ea85683328a949c4b01e9afdd0e780ec10f2a6eecd0524b77e6c9893416eb73c53286cd52dce11550e96b70154f0a06521195b7bf6b260ad67d85fd2d3ba79d96b3c84d2eaf96350342fb33cbf5e4dc12d7f7b6c5aa0f82ae2864a38026b6392deb539637d323c5a246ebb7a87ec7048dfcec1dca98d3239ff560598ac31d0e7229ee0a36bd7500b991badc5f7275bd650de740dae8421e1a723013c9e52af448e21919ec70fcf5d4c5fd888b96676e65b6c52d2353fe5d3d1423a73410234a2ff632cb09e922656fc233be050fbab499d3b0864439f79b56df983cc67fc460b027ad14b8e112f898771545061ddf52652dd14aa034137764dee5f896e3fcca26f70b63b37cd8d8df7106876f4eaecf211875d4a3392e09b8e4219326ba939df7500183c3f039d1586d00bd36fbb97835fc4c73845dab9639a0231c27e3c3815b4478780cd646f1157bbda472577faa829f8b13e2c8da1f7685719f8b979e895996dd05d1bc5f0ed8f8f302e38e44a0f5174fceb3253ee9cea73315a1dd655e9a6bb59a3b67f5f15f41a8e483d8c98733916638d5e8efbea8c5bba2000d2ddf330eaf3db1e9a6072e5bbfdd5fd201f8a13800e7719 c464bbdad275c50dcd983b65ad1019b9ff85a1e71c807f3204bb2c921dc31fbcd8c5fc45868ae9ef85b6c9b83bba2a5a822201ed68586ec5ec27fb2857a5d1a2d09d09115f22dcc39fe61f5e1ba0ff6e8b4acb4c6da748be7f3f0839739394ff7fa8e39f7f7e84a33c3866875c01bcb1263c9405d91908e9e0b50e7459fabb63d8c6bbb73d8e3483c099b55bc30ff092ff68b6adedfd477d63570c9f5515847f36e24ba0b705557130cec57ebad1d0b31a378e91894ee26e3a04,f59ca6abc514df7ee5af9b918a5355cae65addca95c80866ede16594f5147ded549bb9187e4f51535d3eefc20f59703e1ef74b86adc45f8de3265207b5a3b4223c3b70e9a9b24f08c2b1f15f858763381c89f2ab14aec657e7e4ccadb9eae9348b26450e9cabf9b54a56893796b2d4c04aa2b3b741d6f85e9a8cb6fbb0dd91ffb91e9b179d5692f9c689c4315ace33c2e7934d49183a5305b8f50051242d73a225c557d787bac8894d5987c8b4c91502c295fdebb492285561286262da7a78a87f068e07b4cbf82344e6fba3c8b70a7cae9023bb004c18a446df8432c895a531dcaab8d910c5623651a362c4e2034a314f00154a421da604cbaab56b40f9f3242e8f61cc9a9ab4c91304588af9805180c8adbfcd727c20d38f2dfdc24cc1a84ffff83cde8f94359ac5d1848d3385b419eafaf09ef0317f99409f732ebaf75a7fcc74a4f0b7d038626078c8a775b1ee75591c6cf99ee2754eeeea7dc9fb382f25f55d030293d53ed2f9d9ddaecb41172387fb19731639b37e3a26af58b033e850880ffca4ebacb945f7d445983042fd3ebf4f70dc2bf0e95a7ca9da3c8f094bc937568a03486ebc127abf44d150ac6dc0b7080a41884102172d6e6b6d819ab088ca55287d6912018b5d7f4c0c2a6973e532b40f9d0402c1525b2e7e11a948a5c833efd7788b3cda4501dd7884aeacd53b503313500c3d4adaffffc69a2eaaeedc 8b8d68bb8a75732fe272815a68a1c9c5aa31b41dedc8493e76525d1d013d33cebd9e21a5bb95db2616976a8c07fcf411f5f6bc6f7e0b57aca78cc2790a6f9b898858ac9c79b165ff24e66677531e39f572be5d81eb3264524181115f32780257bfb9aeec6af12af28e587cac068a1a2953b59ad680f4c245b2e3ec36f59940d37e1d3db38e13edb29b5c0f404f6ff87f80fc8be7a225ff22fbb9c8b6b1d7330c57840d24bc75b06b80d30dad6806544d510af6c4785e823ac3e0b8,a8c3dd2cb2c0b8cd01c2550a1c20308b3a4280aaf80447484dcdfc69b5c2c2fba310272e606d1cfb61d078e2d860f1a056a3e086af9d7485611d64d1ce5f850b91920e778010a23390033dc15e372af077611c9b5a945981cd27801c9b701d892143da0f882c5d8f7f06b72b7107fbd22a4d890d1b00857fde7e9b188088ccc9a67bc12b0a496f3fac72789e7e52ed7cbf36bc7b846f0b4d3a221a8297a4be76a1658a1547b32f534fd13c466bf1803c1300593f8c53cb5530632dabc03acb369d7e87cdd61ea7db6d5980c68f00ad5d28f50b5b499a373dae132811c5dafbbedca231e74610271bcd0e733a59d5ed6a6ee77ab4ee0d64cb00ac7ec586ad30f1f3bf5066268519209a9ee408b0dbb1e6e7cafb63bca7742a5a7c78d7933b30cdce0f8b502e3666fba0c2caab6cb0826641a74c02e5f9df0616c001273487487c2eb693e8818a281cb58d10e0f911fa8eda5def3cea2136197e79a17f58e56c4262f3bddd87d9bd40aa21762c43f7091659693d2bf5d8bc03632ead0c680b6ebe53eadfed63727143fe47684188ada6391efedb6a59770da406b00905c124680b3b23d54c0255967c3ba8722ddf064f10f3253972c0a4ff5b1ba17f8b9247e2d81fa1e4f7e3bd064e71a3f4f18858d040027b45cbfbae7cc6f04c125b867ccf3513c40f008c2c961020b597f864bff2347b8ecdcbf4ae460b1915a5a5eb98ad31 6b018710446f368e7421f1bc0ccf562d9c1843846bc8d98d1c9bf7d9d6fcb48bfc3bf83b36d44c4fa93430af75cd190bde36a7f92f867f58a803900df8018150384d85d82132f123006ac2aeba58e02a037fe6afbd65eca7c44977dd3dc74f48b6e7a1bfd5cc4dcf24e4d52e92bd4455848e4928b0eac8b7476fe3cc03e862aa4dff4470dbfed6de48e410f25096487ecfc32a27277f3f5023b2725ade461b1355889554a8836c9cf53bd767f5737d55184eea1ab3f53edd0976c485,066f28311feed21d06d61eef566deec1f88e8d99da9f6ae33e50321fbf7c1c458db1e0c85c2685e806c583336f5620f44ff35596a725d37b1a7f149b30eee6edf2c46ee8f7ff1b51d5abbc09ead9aef74188fba0efeb82df86c304bf505fb02ff05b1797a7eb3549eb9e74bf685b15fe615bc7fab569a2e8eac5136f97e39397e091f97d7c11d8e6b6390961c0a1a08d2a75d00cb679c870879c24a4ad0fb4eef187e60297668634f06b7f2d98b85cdceec842db321cc7b7823d8f332ff5ab7c44d9f862b61d3423aca663929eea2b47c9c78f890d50a4fd04079d4f77a9b303fbca8a852d5cbe0b09df7dcd2178c8450370f60ce76afeccfd3b4b346c79631439d879109357fab4ade37832d42d70b6390176fd864251fc65b695db788f535b76077e3f69b1b2bb2bd26bbc0d1273109f71199a58053a8ab6d33c9a75b8c7d4423a330d03c5bf6a2b2ce43f27536aac58d9d7ca8397bae7c6c96d7279c19ace6f7487412c7370992fafce97342e145795d7cd22f2135d627f5bd528fa3511b3efcaa28ada12b8f229bb594e802615a213d21cfda091b736daa0b18d9e77e9ad98441f23926f6c06deca62bb91f6430352e857aa1488b82820f3624be30e7abd2785e8e9d6a3cba0a926ae425253e1417ad70f80c1cfe49c730e1b287ef47fe65255aaef1408c66f622cd1b6484fec1675f1a74afcc349ef4746b4468dabf577 c9534a24714bd4be37c88a3da1082eda7cabd154c309d7bd670dccd95aa535594463058a29f79031d6ecaa9f675d1211e9359be82669a79c855ea8d89dd38c2c761ddd0ec0ce9e97597432e9a1beae062cdd71edfdfd464119be9e69d18a7a7fd7ce0e2106f0c8b0abf4715e2ca48ef9f454dc203c96656653b727083513f8efb86e49c513bb758b3b052fe21f1c05bb33c37129d6cc81f1aef6adc45b0e8827a830fe545cf57d0955802c117d23ccb55ea28f95c0d8c2f9c5a242b33f,dc2a3560c3644c4ed659240cc9b275b7163f5c88b28839fa74fca4a055b265e8e8de186ec35097511d12f125b9edac4665efe2e41defffd4feca65386d9a5b06dde6b1ad1f70772ecc871c44529d413c603d7d8bf2cfddc72c11d3b9684cdf4696ebee1a88f939a997802aee46bbe7abe0915c4df68c43eb06a1412c690edef8fd21f94d16ec47d42168c30b8a3c2a87e348352200040cec7697835dd66a8e0596db943acd2ba8424a7d031c5ad0322c913aa9b11c4c1e09accf8b941fda2ceffac3f38bd43feb3e67d002e8d45d9c091d287a5f6c4b70a58129867c46ff1e98d402202c27e088da5063157e0be4a7c82638eb623947a59d15b1fbc965a73449711feeef521b61c4f94b7afb015185bc7c696200f10c2657e233f643c0b20a72ee57e7e17ec806b0b4a128f9f0f6baf129ccd82b19fcc72f62fa10456cbe37317bde49ba0ee9fd83559e32204387cbb5d26064127448d2f2702cb37c3ca5b49989c7b903854907e1a748fd9e589a01eeda6fb374178ce57c6027334399a7896c91fba3f8c2ec917f2fde3942d60fd37befda64909a34f5d8bdeeec6dedad93894e9c6a894637b8193895973c5dd8424326b592723c06583f683281aa90c3fb3a754ac8aef614dc30dc608ad26eaab42b4899137f4d42e4142f93706f88c8c98bb6b15e0992834785a27ffcc9fc2037a3a3b4b3c262ade59e3a6718c79a8c0c82 07906c87297b867abf4576e9f3cc7f82f22b154afcbf293b9319f1b0584da6a40c27b32e0b1b7f412c4f1b82480e70a9235b12ec27090a5a33175a2bb28d8adc475cefe33f7803f8ce27967217381f02e67a3b4f84a71f1c5228e0c2ad971373f6f672624fcea8d1a9f85170fad30fa0bbd25035c3b41a6175d467998bd1215f6f3866f53847f9cf68ef3e2fbb54bc994de2302b829c5eea68ec441fcbafd7d16ae4fe9fff98bf00e5bc2ad54dd91ff9fda4dd77b6c754a91955d1fbaad0,5d5ae597772925f37c5d78176e15392bd53fb65b2925bf589ddf97d92ee412f2847ace1b5a4a22515c910a0a7479ad4cff5948c4a736ef021f062850383ea778389bf5f33c5357ce1d11d11de27bdd076720692737e5887b0fc6b8fa46f2675650072848e26d94d596b921280649389a9c1621037ae9d91d460bda8febda7627c181f8ebb77f43de66f9d64ef1d7cb66622e13faceebc7ab346c0c71a1faa0df2659d980ae4acf04317379b81dbf8e9206f667ebcd2a8d736766d2fc64ea442a4ba0e331e7d3ec0ab1618bd90a9b97a4ab6556eb09da3c551ac3f2714be4cb094ac454f0debd1964ecf15118f677464c60108a87e8895046269db21168e35ec4dff11487e93b49a8faee8ee6c3ff05394d1d0c9030123cbfb9576c9015c30f9da04331c995101f4589d27ce664d2d6928c803ee6ed655b661f286f12499427b0b3d4c19a870cc6065528d0d482fae121766275acd12731b127c454d17bbd32f779bdfd59d2221cc923764a023d48a109f259c2c4d9213e35411a7e4f03c1878e576f9af4b84a983f64ed1255ee7ca9a4696762701950c97f374f207acf4023c0e42651c650c330eba2a7773af833a9a7b1c9360bec7fd788db63af83b699e1bac014a86ae976f15809e4dfc8eb8225de57c97cccd0683ed0beb67b752a6bd5ef128d9bc6ad343b04aeae8c76d7a24e3025d436ecd9f03432991a19d1b1642af5 588e94b9054abc2189df69b8ba34341b77cdd528e7860e5defcaa79b0c9a452ad4b82aa306be84536eb7cedcbe058d7b84a6aef826b028b8a0271b69ac3605a9635ea9f5ea0aa700f3eb7835bc54611b922964300c953efe7491e3677c2cebe0822e956cd16433b02c68c4a23252c3f9e151a416b4963257b783e038f6b4d5c9f110f871652c7a649a7bcedcbccc6f2d0725bb903cc196ba76c76aa9f10a190b1d1168993baa9ffc96a1655216773458bec72b0e39c9f2c121378feab4e76a,b34e968bdd16e68c71ed69202a38c554f8362fa382f1deccf89536b0d2ffa7cf8725cec1d2d7af57665496b643e8206566f8cbe4cbc42db65481750319bbf37d9def13d050b2dac53e163ac365e81aae03bdb40b67d0786edefc2b339fee7176dedc90c92b16a726e61a3e4ab5b29741869a4e8ff254d335c62053ee9fcb5bad309b11b916ede9ba5d1594b0abbcf73a7a231b4104037d10c32433f99dc35a356088f90298bb9bd150fc8252017becf06111daeeac705bccf25e8098995a8f7efcbb10fd2c443223325fac9172be8b5fef5fbccc8d9361deb61b361fbea3d5cf13f4731e8ad4f567bbef2655a79213193131020123e5fadc2782e8224208eb98c736fa9af25ea3d00cafda04eb8f0544b58b29da5d438a96914ca1d47f2a729128f60e56f5634a73133c1a0435a40fb7ff6f88105ba307b4b6479d0dcbb80a5f1a71954ee049e99b944e41ee89de4b78a78786660a1516a3bf64779df724bd82045245413cd82890340d29d07879c000934fbe4b4feda2eb4cd795c528e83ba11a92c9476e3273dd5d4553798489b8ffe76104ef154fece05e4be9775256f278deb61552266745fc21dfd699db5a34f4dae4fb3e23146db6767561f15ea776b67240c92c695ec83ee10978fcdab7a57c692861f15e5e6ae0e3dc2c58489445def81f884a50df8e78ce67c23967b27b419f36b905dc2d9ef1d27bfc94b456836a 08959a7e4baae874928813364071194e2939772f20db7c3157078987c557c2a6d5abe68d520eef3dc491692e1e21bcd880adebf63bb4213b50897fa005256ed41b5690f78f52855c8d9168a4b666fce2da2b456d7a7e7c17ab5f2fb1ee90b79e698712e963715983fd07641ae4b4e9dc73203fac1ae11fa1f8c7941fcc82eab247addb56e2638447e9d609e610b60ce086656aaebf1da3c8a231d7d94e2fd0afe46b391ff14a72eaeb3f44ad4df85866def43d4781a0b3578bc996c87970b132,2d48caa033f0273cee712401a35d143c7e91216139682a77ca775f08ba77620dd02ea885667355740363d95da3cefd3e9f8d0575a41213c1e7f2a6c4b7212dd617c9b0a41d48674b6a19c63c1ab3f2ce7f1a0fa694ca8401a0121077f281cd5d6a5424ac1d3a11aa97f88783722e68abdd3684907f63ee045d7f3e10545f33b84c30200de3b135b4be5033b854084e5912f17b14f2ac16d027fd02fcff1ae096c983f0f4fce7d6b641d2280dfb90d8a066d8cf53e2a5a1620dc50008ca375743c416c379fdc5aed3de23244de23aadc33bfd9609702da4776881a1f588ee1fd98602fb831c8d857cb73da50c99acb34dc79d0f32fabe25fefb54dbd494014a24ec55b4d4ecef9d4b7a98a8bde06e324e6b2bdbe7beee6a45e4fe8948d331561090b737ce14d302c9cb1d7ee3e78d0b7cda6fd12cf038f8b92e35f7bd6e1664a5f4f75ee569f67c41a434330dfc06f8c6c7156208a11bd6708b22f3115e5d4d99f54451d967bb7935fc937ab2ee21c3da93b1a3df94ddd600d6ae8f43a35f85794e3bdabd82d4ecc923b0bc91ea85c3a2599f492495e8aae970e1605fb642b6b93e3947b45d78ed6a563fa9d10cdff934c61d78b46aeb754cffecf00aed06839365d1a4b7d9cc5852a4f755f01723c8e3961c92f320a43ec23d8292c4f44336e78424a4e650d74bc47ec05ea8d692560206b9dc2310c893598370e5df5d93acb6 cb2a234f45e2ecd5863895a451d389a369aab99cfef0d5c9ffca1e6e63f763b5c14fb9b478313c8e8c0efeb3ac9500cf5fd93791b789e67eac12fd038e2547cc8e0fc9db591f33a1e4907c64a922dda23ec9827310b306098554a4a78f050262db5b545b159e1ff1dca6eb734b872343b842c57eafcfda8405eedbb48ef32e99696d135979235c3a05364e371c2d76f1902f1d83146df9495c0a6c57d7bf9ee77e80f9787aee27be1fe126cdc9ef893a4a7dcbbc367e40fe4e1ee90b42ea25af01,6f7549d58e91d97f0c1243c519eb6ad2cd72ae27e3c5da2c6b92407823d1275210ed93b95692880015bbc14e72892a36d4d4924a48dbdd2e774ed36b739f587d200d9a789ff56542061ab4de006b08749c31bac057ddafa581c6f756bc3ff23bbc43c1048bd2848204588c89e6c3199ec38dc9f4bb10bcec5a5d236ab28113e4e43d529de8424f118cb14a5fb02ba721ba4650cffa35663820148e00a2a8c0b8f4c20dbbe20c146e4b5294a17c99c2df7ea62f9107acd5feeb01ecdc064f2911a466bc1024b1afe10f3dd7843bdeb8682339a95f7a0e615a216c89ae7e8a688926884f82bc2a487cb2695c658db670ec286e63afb5b244950497be33081cca0fd14a4958ae4ec94b642e3a9bfeca9481feedcee34b6c13f301cfaf882105c14f20679b5e7e4263c29397f62b094490bde56cbb1cffec550819e0add12da85935af2a9c08537ed3034d39933b80471d98b1562ba12c9b98a462093e79d247bfe4ee59cdf9f6533dae9c2abb66437b90d845b16c5318d0d12ec5ce30aa63b8a754ca93f04a3e3013a197a34dd8af463a7aae48d51c7eeedc45b5bd4f9e5be06d47c7991956e7bd828dee21a4c4a69c3bcbeb914fb93832be8a986a077fc3a990301532cedb59cc03a0efbe5ff88413f0db07481d134b77200e05341c21c43a7fc0ef20f254a4438f9f49c28136eb7ff5d64e8812d4137cb3410b2482d3289acc07 d16beadf02ab1d4dc6f88b8c4554c51e866df830b89c06e786a5f8757e8909310af51c840efe8d20b35331f4355d80f73295974653ddd620cdde4730fb6c8d0d2dcb2b45d92d4fbdb567c0a3e86bd1a8a795af26fbf29fc6c65941cddb090ff7cd230ac5268ab4606fccba9eded0a2b5d014ee0c34f0b2881ac036e24e151be89eeb6cd9a7a790afccff234d7cb11b99ebf58cd0c589f20bdac4f9f0e28f75e3e04e5b3debce607a496d848d67fa7b49132c71b878fd5557e082a18eca1fbda94d4b,2d534dc9501c6b18f9662128e227e3c7d8bc7f6773945b8ca653bf93f9b07bfbad84f195ccfeaf35ffe97e1109212ddaf5701bf2f81a72b51a66fc1590534823172927bc3ea342a96df9b0cf5952690804c37814bad3a41849d71aace71304183a4477d313654c731cb0a9af39cac8a8e4b6883af7c4f94720a5919c2371c1ae472724f7062e47754066976b583cdff98cb41796664c9b0c763c4530fb62dc22ae7b3c6b4db593942f6144da79aac3f3cd53f90b7b634cab679ed27341c83a3f9de8763a0d083c4ea4eb3b8c189967e6970178ce26a3f2d43d1a62e4d26d61636257db145a89eeefb8c38aa9d69f0630b99b4ffaf9395a6aed9c63e78a7f8ceaf4884e4663e7c9e39f737703f5d1c73b2e846fa5af03528c7f1d1378c9ac7ce02599278455fa6e1b7bedf453ecd680a89a8c77fb727a688ac573a5ecb545218f5ddab304dfb7862194514674a52f2f0eb2151bd936974fb5b677f621ff9e92a10c76e3b6a34e4279bf2e395743ec8feee4f4bb1d951af744f9bb923a13c1d6f159f96b90d0371b135a8f64351dc8c9dfc0af38098d3a8583dda8978103b25495bfab2b144e4d82774c06c4ccebe085a5b902dc391b60035f4ea929de8a56db1efecfb928be97c23e6dacc79ef2c05d5c08f2cb3eca5cf7626f13a95f29239ac8f457dce85815ba83f099b1dce79a32c6e04280b8cefe8ec213e2375553d2214d 8f65f6bc59a85705016e2bae7fe57980de3127e5ab275f573d334f73f8603106ec3553016608ef2dd6e69b24be0b7113bf6a760ba6e9ce1c48f9e186012cf96a1d4849d75df5bb8315387fd78e9e153e76f8ba7ec6c8849810f59fb4bb9b004318210b37f1299526866f44059e017e22e96cbe418699d014c6ea01c9f0038b10299884dbec3199bb05adc94e955a1533219c1115fed0e5f21228b071f40dd57c4240d98d37b73e412fe0fa4703120d7c0c67972ed233e5deb300a22605472fa3a3ba86,4d0e55472faeda7e9f092ec4a561e835e261935ba5e6d115e9d4c4021725e7831c5b7f102f2d1494b019ffe9bf5525822c497883f0e5194b0b0989dbdac834cbfcfdd31294dae5752adb56c23d45668f370963219d3a9be504d8e93721242db7d4d1ccd22f84687e3945e2037ba24670649913712fe6b5d99bb6c8492c3b853e481ca9c32b3e601d31c60d6b5f43a240b0711fdfcfc0aac6a6e5f881b2ae1123f7568663d8415db5ecb3000aab268256888dd47c0fbb5c95aaa9450947244ee4cbcfabd76326d2d079c9f1bc4f3d43ae1d01028fc1705f74cd16132c79d3a43539d2a842df2b69243cd37491cdab57ac7e4e00350f8c08737b6ccb8a7c48dd50365a85c07a525c15af65ec3b2ac1c73aa6b3433483d5ec77ed832b73a30c672e9dbf0778dbc20ba5a3513ec93b4165a60e68717aaabed5041d9ee445611ebddc8597fda3ba05245228d7c567be1ce5d2ba75a256361e8259f43f3402e09b96a14014389b8ce19461a6512a4dd7f866e73ed26b1c454e014f901dd313d5e7214ce7a62c476dd28e4152eeee89f309161c8f494f0bee613b72696f496bb41659a3804683729b40682de5d0f17afc0fa9c27b2c96b55a05c536d283957783bb93c8f3e021a30d6051c9839dc48a70c127611449823b06f0dd460ca1dd990aebcf3fca9732d012e9650907bfc44729df2827ae4055fcca246ed3d75dc3b69ddb3666 84891e52e0d451813210c3fd635b39a03a6b7a7317b221a7abc270dfa946c42669aacbbbdf801e1584f330e28c729847ea14152bd637b3d0f2b38b4bd5bf9c791c58806281103a3eabbaede5e711e539e6a8b2cf297cf351c078b4fa8f7f35cf61bebf8814bf248a01d41e86c5715ea40c63f7375379a7eb1d78f27622fb468ab784aaaba4e534a6dfd1df6fa15511341e725ed2e87f98737ccb7b6a6dfae416477472b046bf1811187d151bfa9f7b2bf9acdb23a3be507cdf14cfdf517d2cb5fb9e4ab6,c7eaaae0ca10aa1cb0225920a8f2288eec0e5889abeb096a98310782d918af4cb8c0a41384d8e0c408950eea95de8ca6eb87f5e86780fb91293c5d14a798dad9b77ea8a5b50e17c19ef37acc5166a74a1b37712290cfcf98ae6349dbd4842d8abec6735ecd392d59591824963d403b2804135bd46d17e26d5c498fd7111bf2782f758802a20ae6a169aa65cb0d6640396e982e30126c37f68e19cae5ff9ae3743e38f902d306d8fec8042dd914003f960625e8f2104c369cec0cb8d3847c28d050802eeb53c5af08d70ec02979019700e182b7127661df869807c16f309eb08f376c5c30b0189f1b4b32423be060402c1ec9b1e7af2432fafc09e4eff7dc6f55a52108c5599bbd5a07f433b3eb4d439d43ea79407fa711132ca9a5e2f528e18821f38b894f624ee42400832f8c85aaad0fea54261e2b55647d9ff5f31ac212e7c38cc96689c72a4f543a2567d8ea79913727dac3172f69cb16694e5d4eed7c16494a297c876c73256f6b30f88b6e180e8e62db68458f2ca416c4a0317f70a3e2465bc543fb07ae518b6571664fe9c2e49e2aad57ad933869c04a1cab60903f9ab1c14e4fb3b6502f387b30693ae4a85a172fe6813c42026de57291b3d854a191f553893b3d4a79c84b08c37e80c1abdf03fab58966410c2b8b950a275f68852f006b2b38a49e09165aae5ba74b934a6b7133e431f01099f930b5fad2790f126e fdd7a9433a3b4afabd7a3a5e3457e56debf78e84b7a0b0ca0e8c6d53bd0c2dae31b2700c6128334f43981be3b213b1d7a118d59c7e6b6493a86f866a1635c12859cfb9ad17460a77b4522a5c1883c3d6acc86e6162667ec414e9a104aa892053a2b1d72165a855bacd8faf8034a5dd9b716f47a0818c09bb6baf22aa503c06b4ca261f557761989d2afbd88b6a678ad128af68672107d0f1fc73c5ca740459297b3292b281e93bceb761bde7221c3a55708e5ec84472cddcaa84ecf23723cc0991355c6280,cf55585ad2cf64217e5ca23319eba00c4ec74b7b9a453d1d7c144e8b68fa8eaa16b853344abc905eec90b35b681fd8a4a52460999bee62489c467151ea5c0d7c8ef2b9959fd44d171d530ad4a576a0c76b147127921817b167fb43050d7f2f552f8e77ed5161ab00907599ab80fc546c859dbdc04f2ca3e38a7593dcd22ec89e73c4924152c7d1b5281699154a3325196e97e73da29251f60bc68706885462002c126517e00d02da6a23b0ca9410eb916c19fec76de9a907447a8dc1f8304eebb6e38d0694821ee03865a5bede036e01ad74ab397afbef6c62c5dc211a47bcdcddecb48b17bf5336ff831db7ef9ce7643b285504d495161d4e864b6fee67d0efad2888c04a8992f019e52a6632f72539fd65271e81537afbe9e7795c658aa0c3b2c64eb34bdd0e5f19ea217b6ec9520fcde446c2207c9aee94a6aaff4f1f39a91927dafdc37bca8173034a54fd535bf03212995975240f3002446da1d111c0f97c92e395d96e120b958f643cb4ec52c6d2c148e6a0a497323565500ab117421c4a0cf0a055dc8b4d287f66fcf7edaf931b614589ef6c6f4684a80a9dbfbaaad85059b9399ce2617b55e04c2112b32a210d7530a3c58678b1d48ef24e2fb6b6f90d4fc605805b903085198b2c50432d9a99454b68aef0c9d0d81931123d7d14c0dcff84a54f3d4dcdc9e232bed26e2ef3334220f7b39efadab2cb9e247ee4e880 70a40bfbef92277a1aad72f6b79d0177197c4ebd432668cfec05d099accb651062b5dff156c0b27336687a94b26679cfdd9daf7ad204338dd9c4d14114033a5c225bd11f217b5f4732da167ee3f939262d4043fc9cba92303b7b5e96aea12adda64859df4b86e9ee0b58e39091e6b188b408ac94e1294a8911245ee361e60e601eff58d1d37639f3753bec80ebb4efde25817436076623fc65415fe51d1b0280366d12c554d86743f3c3b6572e400361a60726131441ba493a83fbe9afda90f7af1ae717238d,85225e389df45458881a78277858d3b12ec5527bee0d03f41efba24671f1c245ef33bc8cecf3cfb7ea82263ef8f5f4e2c0d033d1df6ad35f1ecaeb2e40f22ed9f4cd0d1b9fb1ff5afc3ed60549f1836e325ad6641e4444913a9aeacf36067a7e6eafae4f5d1738f4b42f5185af334feee2838faea6203032f3c5c3d22863c02783d1562e12b0c73df3098cec208bc855bf84a9c231021ad5f1fbbe51a21e2bb66bc555612500822f43db5594d0d60532b726e3a430c26d9e5bccd57f83cd1ce3a5a31ddcc21dfd8a76d03a106fc77eb55edf19a46023b5d70835c865952c463475769067fab2ba2a11fbf7f29d6400d10a34b1db497b5b1d8d8a30a5c4dfc40ebdd1bdc992380074accac904dc24f22547a99e7f5acc53bb83bf94a522e595d9ab54c4e7ee052abf95fc5ff52967ca2fbb927acf7127349ba7fd26ac820c380107b0e341866a9f57852df4ce28c2989f04a40ff14033b3d36ae7d24a8e377aa40babfb8502b0b9b12df9b42c2a9982aa29697a2ed522e344814e59d91132f39aa537a521bb4b781cbcb5e1503354fe6a25072a52c54d248e13f8253fcaf93e849597c23f6952d0f7f38d1a4e7d08fafaef3acbfc4371779c6795d1cac6bf86c34fb227aaef0ab51c480c4510c9f1f463ce311cf931e8219d71bcd3fb55d3a8e9a6c86710d18f9fef6a00d1fb878069ad4a4e32653b0ee15866268d5772bd4990 74356e449f4bf8644f77b14f4d67cb6bd9c1f5ae357621d5b8147e562b65c66585caf2e491b48529a01a34d226d436959153815380d5689e30b35357cdac6e08d3f2b0e88e200600d62bd9f5eaf488df86a4470ea227006182e44809009868c4c280c43d7d64a5268fa719074960087b3a6abc837882f882c837834535929389a12b2c78187e2ea07ef8b8eef27dc85002c3ae35f1a50bee6a1c48ba7e175f3316670b27983472aa6a61eed0a683a39ee323080620ea44a9f74411ae5ce99030528f9ab49c79f2,561a3e8d8d57e0e32d7e9ea8ab6f58aeea509cce8740fe54e8db9aabbb14ad782ba33c7f9a5007796ca2ba9089f525bcf80bcedf4c09e24e8d14f1766aa97a82b807fb1adf65430bbf5f87af0a7ff26578c97ab50148b6b15711311fee962a8b9c3d1abaf62441ceb100df3a8e588dfe3f6a356b348e312ca017c94143b3df17f255dfad5a7341b163c0562d24897fe9e4b99262fe5bf6920b79abbaf856ce38afc756a77f2bfd5c3a039c08480bac81d641f8b955b22b66b455bc0637dd49a1218c4e8ca73bdb68b8849d2148c021c75bf8470d36167ac32fc88128c4e0568724bb2d631e7fedfabb91f0343d267bf3a57bbca57c21d56e339cb13dfa5e56f3a90f0241dbc0d0d73f40ba282abd5e031364abaf427713463ec5072b7aecca62e074097bd0cb3169ddc06243f08b62527921f5fdc9332e99b2e6903d65bf809dca706c5c0f93af85b9bfeea40504a3dbb390c6a417203979687a7c86cfe5ad3f0737da1b907f8f941edf44f8367b65ea8bb92b5285a3ed8e1f7eb0fc00536c15005e4f6d9f2969ad96721bfe7a6a4824a37159ef08b0fc60c68518fd4ce54e4033c41ade6cb218cd7daee76622b711a1609168bc115ad4f6219eafbc492e35bdc446e866433c744650669294e8d1827a2500f3e30893c14820dc24e36b3b451e9459bfdcae62168706228bcd9c3ea22c4f1d0286367c7939df31e28e7a2b28cf 8c3798e51bc68482d7337d3abb75dc9ffe860714a9ad73551e120059860dde24ab87327222b64cf774415a70f724cdf270de3fe47dda07b61c9ef2a3551f45a5584860248fabde676e1cd75f6355aa3eaeabe3b51dc813d9fb2eaa4f0f1d9f834d7cad9c7c695ae84b329385bc0bef895b9f1edf44a03d4b410cc23a79a6b62e4f346a5e8dd851c2857995ddbf5b2d717aeb847310e1f6a46ac3d26a7f9b44985af656d2b7c9406e8a9e8f47dcb4ef6b83caacf9aefb6118bfcff7e44bef6937ebddc89186839b77,3340b37aedd2f0c66f2483abdc66c97b45055275231f1c7a925687b946c9135bb75aab2d11e6463073a1a8ced0ea83a42736ae85d1b99d1d2ee9aafb6fb9f4e7abacb39bc9f6d59883a9d1b0df86c259394a05842684e8a4573f1a3ceb46ece59df77259a0b025b831c2cc0dae259551c86db7de0c434fcbc35328810201903b92802cd5dacf9a6f4adcb05ec5e0629a3fa99bdf2a5cbda2af81cbd1438821a319408d67e5995342bf9bb4da85bdcf43c5a2ead9cb4fa26542eac044dc70857ff1b1cf95026b6464b96a46f3a138fcb26b525e6a09f71ed05e57adf4a3fab611cd8069e016fed7b9f2f14c38102612d66803ef0854b2c7678e870ae7be6ce43edf447e476c0ad407f0d1aeae1265521f43ad6ccf1f2e0c82e5395abfc41e08aab436a806083e246cac452513bf8e9c9e47de645055ae184d988d0d3cc1e5dff6aa98b3eed26e788ea342c6b1914269113248b15d0b79a6bd71eea6c0bf9d89698a2b943ae24f843b00b34620dee9de5ae1fa1e00677d8fd9716cf43ea1ebdbbfc2984fb1b27d444af3b2d01a86412a32090a45385a912f394373f0610af7d3c06d8564fafaad3b88c70196a1dedf247ab515e5fcc8490a889f974e12d8dd5fdddf8de55500cdaf60ff2b70e7d26b481389c2232fdee43ae99b221893fb7cdb688c06486571a09b9a9b5d2dac509ba166d0c5f5d8eac363324234c657678a0cd7 fa56bf730c4f8395875189c10c4fb251605757a8fecc31f9737e3c2503b02608e6731e85d7a38393c67de516b85304824bfb135e33bf22b3a23b913bf6acd2b7ab85198b8187b2bcd454d5e3318cacb32fd6261c31ae7f6c54ef6a7a2a4c9f3ecb81ce3555d4f0ad466dd4c108a90399d70041997c3b25345a9653f3c9a6711ab1b91d6a9d2216442da2c973cbd685ee7643bfd77327a2f7ae9cb283620a08716dfb462e5c1d65432ca9d56a90e811443cd1ecb8f0de179c9cb48ba4f6fec360c66f252f6e64edc96b,fc9c58940908e1f78aa90e888879c9ef903cd450db94e5bee0d8acf6a4e453a32a610c6209d9f5a44ecabd634d45d04f5d946bcd388e2943d00ad8a6c4682d985f45d796abea85f419d3990bbdc5a21294970fd42b6d06363e18ef7c00250e96aa96ff730de2d92e69bd19c2ec40ba78f94b7d120cece0b0a44890cc17529a054edc97c25bf7ab6bc3c955466f656fe450bb25c34997da94258a4473128ddbbf6efba41c1843f69ac2b86a5f13ea652ec19caa10fd0d605b4f31ce170f9ff1d6c7dc064eb4106c6f4f54c88a463ea9b97206e567b370dce4dca5b998831362de38d8dcbc0fe04e87ba9ec6ca571e6a3bdc246d316a55fab5ce8ab0b71e0e8edd9790b26e3482a95c732a304c1dd48a3955ed995ddb86aa7b4e6406d08e189596bc8c5a5f61a2ad336e39d94f6188da5a1e4f2cc9593e92b0d89e12cb4e6fdf89c5c24ed83d66f5ac6bb0a6a3c88b151c35123de2f3d2d18d8d302fb10299f68f65c9ea2e5521aed6cb9ff5e357ddc1b9d4d5bd7b13dc9b4ff63941bec300cc787fa6dd0bc617f5389eb6058d05bfcaa16f08393f4f1dc5fd4226542f49f771e5e93d87e06c4e663acfb2cc365f3f79016356656f92ee52dc6dde14482e2cc8a9eda71189e3c5a431efe0a8768d014f05d45685e472bf22e359b8a6c8429d8f048314bfef49af2637108e774d5e41d6b38fda700fa2145b0235e1dba03bc8dbf3 b6134f9c3e91dd8000740d009dd806240811d51ab1546a974bcb18d344642baa5cd5903af84d58ec5ba17301d5ec0f10ccd0509cbb3fd3fff9172d193af0f782252fd1338c7244d40e0e42362275b22d01c4c3389f19dd69bdf958ebe28e31a4ffe2b5f18a87831cfb7095f58a87c9fa21db72ba269379b2dc2384b3da953c7925761fed324620acea435e52b424a7723f6a2357374157a34cd8252351c25a1b232826cefe1bd3e70ffc15a31e7c0598219d7f00436294d11891b82497bc78aa5363892a2495df8c1eef,f723334037ce684cdebeee3f14b0d109b075ede85c489edf7981b3bf88b946e2851c9453b0e891349080405bc3b16a99879fd63ad7314fb7d26c050061d3a2f971e2a79c4b23338fc92e21466c27beabb1fe045a0a10f33516bd77e7d87c49003f1cc173b61d4abae5151d5a723c2e6571b0b7039fcfda72c149744512d5fa20db8c736a70fc009211fdbe0d7245c5c26dd878ce52da760aa90d45a5501efa74677b85a736b2860876b23424d1cc47660040e919ddee1f67314fd902a1d5c1dc69b70baea890b5691322c81b210ddcaa3caabcc770e68b1bba5b08c3d7676771608924a853fd770b2aedd8d42b1e7ca6cc0499e22646732edaefb94761405b76c3a58d5cdd1439ed1bb06cedec79dcdf38e373ed17798a51b80665c026dc2bba3eeab43cb9024ff6f04b371c07423ce2d0b2e2a800b213d9fe193403fe868180569ebd002591959b8687e09f81c9b2b8de7672d173f8ebd0794acd309a2629ed0aa7e14b58635115a58cead5be08d3105e2e65429d1f7823bd8dab99084e1d63bbc637ee37ad4627e57e15de35ca52fb8407760bd2aed167b6ea65b0c72b9b53c58a16d030a227cd92f19f14ba5ad6bb00a5775e4a091d7844ad2de44cb9d866154127ca1b1a2422483a146c729aeb85e67d597ec6f700c9dc615f2bdfa6a1c9ab038b81ad0307daeeff021ebe7abba47ba002c27c2a07611027fc69c9b63992 c941cdb9c28ab0a791f2e5c8e8bb52850626aa89205bec3a7e22682313d198b1fa33fc7295381354858758ae6c8ec6fac3245c6e454d16fa2f51c4166fab51df272858f2d603770c40987f64442d487af49cd5c3991ce858ea2a60dab6a65a34414965933973ac2457089e359160b7cdedc42f29e10a91921785f6b7224ee0b349393cdcff6151b50b377d609559923d0984cda6000829b916ab6896693ef6a2199b3c22f7dc5500a15b8258420e314c222bc000bc4e5413e6dd82c993f8330f5c6d1be4bc79f08a1a0a46,37a534cc68de78f87b85212464858780e143a5e0dc7d46419eb17e45e1872186df8051353a6af703c167b9233612ed68e9535244dd99a613fb43f277c833588f7a2adf2ead15ada2d6ed7cca6ac786741b7453eed605c7f8ea3a8e2aa8d5688d72edf964c08542422de589d402da18e10e7ecbbd132a10fe382a7ea0a94c9e5c7f31c7bdf018f44bb6693ec64b266e1aef1a3a941e336e479efbe2bc897c93576f5f1bc9c6d4f6e948a14464287d1e82dfdd1e0cf0a68e9ff696b5d5392f4c46845df19ad5bbf2b158659e856bbf6732a9ac0ed722bb5eb2c25d35ff83b892dd30bb01fe20f49a28c52b6f28550fe56d176790ae2d96648c66e389569bc2d47d0a5775e0f6f1b7ab8f999415b3eee8aae8a3b663f13e0ede5c81cd001307ffb5aea2801cafcd1b09d31182220f52d39855e1df732f1cf2671538ae37726b3b47760830b391edbbae70b52f1f2116762c685fb8523742d90a427c991f80db823e349699456610720744bd2e4fb9c40d1371debdc7d01b2f5be45c0231d297de09d66616509bbdb854d84a2d7c140e8489884794d3679ff8e24f7f04cd72058ec305ec21823ab5a47ae9af8d10efdbe2642a97dadd44f174622597e4bd88698fa75f24314e82aca60b42f66f84602c831fb9fa73e95955151f931841f1b9de7c3f95dd786893b45ddf66045aae6533aaa59060b415fe392bc585eb4c39115cc163 4499efffac4bcea52747efd1e4f20b73e48758be915c88a1ffe5299b0b005837a46b2f20a9cb3c6e64a9e3c564a27c0f1c6ad1960373036ec5bfe1a8fc6a435c2185ed0f114c50e8b3e4c7ed96b06a036819c9463e864a58d6286f785e32a804443a56af0b4df6abc57ed5c2b185ddee8489ea080deeee66aa33c2e6dab36251c402682b6824821f998c32163164298e1fafd31babbcffb594c91888c6219079d907fdb438ed89529d6d96212fd55abe20399dbefd342248507436931cdead496eb6e4a80358acc78647d043,60c681e527396d6c9dc1e5fd71842f760f9873621a9bf2b9b98c5df450dc7194379991d7a94397a206913ae1821259d308a5dc4d53e552dbf2287b8694f0b6184b737d5e32e1258cd7ff58e5aa9b5f37571413395b833ccc5620e37b0a64112968d4d7acffa3a66e044c36e23363f1a09eee48eb6713fbacea29ed63af0db94ed2bb22cc01b89d05391c1bc8844be8bf105448925ad2373d46d3417f920046e8e4afa0c11a8057b4a42fa4cafec592f8c2f8f1e2d603612fa38dfc3d3fd768ef7317802342e76e70d30745fbafc0bd007eff874cb32761d700c88e27dbedb57cbfeea688e0f06801847c1046cbf47e2c12ec0a4016d5e8238916da887deab825f965f936c79a7316465b48a2b8bd5889bd04580ff7dc91c50de8eb60af74e74bb4f896ff73cd3d1c55948c19dc0abc841d7bc3384ae4d60bd855f24bd2e402faf5e47d66ddd2f0533f9a73fd483e3965e967c979382f643cda535c4ae3aecbbdaa51cd7a89c8b2d9ebc0b7f9cc1c1ea355f9feccb62345be39a7d1073cba7c5c46f2163dbc1e9a6190ef620d6053b88586e73b18e816206a72f297ef946c8b302a6e3fc92a3e7a9aa87e26c1466251ce1bbd204bba7d08feb28f99cf27bdb3e8479c9c57fab8f00797938d471d53a1666156b66853c067e64695978d2e9ad5250fff6cd1491f7bac09b77abf42249fbbd63deb5919a1fc96a4e26db9d789320a eecbb8fdfa4da62170fd06727f697d81f83f601ff61e478105d3cb7502f2c89bf3e8f56edd469d049807a38882a7eefbc85fc9a950952e9fa84b8afebd3ce782d4da598002827b1eb98882ea1f0a8f7aa9ce013a6e9bc462fb66c8d4a18da21401e1b93356eb12f3725b6db1684f2300a98b9a119e5d27ff704affb618e12708e77e6e5f34139a5a41131fd1d6336c272a8fc37080f041c71341bee6ab550cb4a20a6ddb6a8e0299f2b14bc730c54b8b1c1c487b494bdccfd3a53535ab2f231590bf2c4062fd2ad58f906a2d0d,d8ef59e48fe97b07649929b9194bcc57ead8e0ef010fd65031c18b4cfcc0933152054ae17841d06c36bc375cb1f98d83e2f9c3dfd54b88312ae71d7a00590a759e4b8d524124cf480bcec6816fceecabc9e13356f99ada2319c3eb0cc9e3bb504eddcf7d3839511ba0b412a72c3a8c49f7964a4f2eed7b814722a487e3ea6e347cdc2585090130b4dc535c3fa98e085f107fa43222b167ebdf2bbd65ace691d8c23d64de52f966983a3d4479ceac8aab177947079656a454b7ba4548bcd5762974264c7beb17dcb4fdae572bd67067f304990611e7c7f4d50bbd2b29d19c02d51918d5be6e856bfd8dceceab2ea9f82f5be53e57d4b00ac371436eff3898e930193dd1a21c5b54506c6c91ea665d0d9992be999f1dc434ba587da4ef05bb296087314c4408ce0c5851660d0b5d1746232e031934284f85b7aa38420fa6eb469171faabe88f85ce64a7fef8420ada1f9baaa4bc93d779c5a268a3f1f8a57cd2fd3b19cdd4e648e622552c1f16455f32631a3d91ec2f7a882dfd0eb13c4b85b0a23e2477b53e0fe5e174f058268f6a24ba3cfa38d090ae6088339957863733e1da245432ab0394eac05ed82428c4418ddea00c45e57a1719c7d2d04a781f8d0187c7c33117a3ff5473bd5c1211476fb4eb64aede5a9e2dbfee00671e7a9ccfef7624e1f688b77cbc755b95b6ec391d8e9dd0b65cff4e1fc22f566f0b598bf7ed6e e64f3e4ace5c8418d65fec2bc5d2a303dd458034736e3b0df719098be7a206deaf52d6ba82316caf330ef852375188cde2b39cc94aa449578a7e2a8e3f5a9d68e816b8d16889fbc0ebf0939d04f63033ae9ae2bdab73b88c26d6bd25ee460ee1ef58fb0afa92cc539f8c76d3d097e7a6a63ebb9b5887edf3cf076028c5bbd5b9db3211371ad3fe121d4e9bf44229f4e1ecf5a0f9f0eba4d5ceb72878ab22c3f0eb5a625323ac66f7061f4a81fac834471e0c59553f108475fe290d43e6a055ae3ee46fb67422f814a68c4be3e8c9,984570a811cb6b53213280f8c06c69ff1d17e767b163f8afd76674ac018a1cafda4d94b69bcf58f3ae8a53b107976abea6c616d85aeb98bc10f29177a3590bfe943f53d2512323e5e79d64f9f1319d47d6ba84c7ea37392bd15224d94bb16d99e0e1e7062fbc3edd7c81418d816e875fbc9d7434249d89a6002bb777e367f79219bc7faca03e1b9488307dea98f304258fbcc53c58a483a6fcc78d9d9b28d99db3709e32c1ee91fe305f72b041933c8cae6f68c6229658d591ce9b1100d6974706bc21a45224778d12dfba63cbe9a1a3fe9680a34771d9bae39b4dc9c191c0a4e092f8ee92af2a02c95242cbb24580e04774ab41b07fcb6f61ecc6acb2e48a77e544ad9f25ec0ed7f440c26b8c9d25c7cf4494af0802c4b482da80251f7d1572dae337725b9a976f70bb70b5037f333d53bc3c252ad9aa13eaa7c9de1ae4b24f6c91d17a489ac9d392038b80ef7679e75ca6994821f153c62d6cd7ef58927636edf95ef6f05520025c4bbba23685a862f244ab3802ae1d842184a5f5f344d1193e1239990c331488c1a8b98f1707c389c05afa919f5c17eac158064350adfb9532eb0ac9111e256251b11d082db28206af2ac514707d956a35e26495ede4e98c2578427b48bc99b9aeb29b0fcbe44a0e51ce9bb37864dedc30bbb5ff9a055423d8bbd453a65ab54e65cdf773ca695303ffd4767193d65f26706fed1cf35e740c d2cb2d733033f9e91395312808383cc4f0ca974e87ec68400d52e96b3fa6984ac58d9ad0938dde5a973008d818c49607d9de2284e7618f1b8aed8372fbd52ed54557af4220fac09dfa8443011699b97d743f8f2b1aef3537ebb45dcc9e13dfb438428ee190a4efdb3caeb7f3933117bf63abdc7e57beb4171c7e1ad260ab0587806c4d137b6316b50abc9cce0dff3acada47bbb86be777e617bbe578ff4519844db360e0a96c6701290e76bb95d26f0f804c8a4f2717eac4e7de9f2cff3bbc55a17e776c0d02856032a6cd10ad2838,2c2e6afffdc10d54f74afaad553cca0dda3ae5a5ede3beb611e4c1441ad4e51b67eaa2306abbb39115457fdf15fce9607ebcf0537e4f9aa2703d222a2b5fe602f87f6b54cc7a9427807a10e56be5b29bc3dd91fed0322f291d87f563baf5b705534ae8bac35d4af68a23963c040f4a1aed9b3e51124303dfebbaedbab35d7ccbd38d482ee45e261bcefc53d0a25dfca5dfb60cb2672d34cd4154873f92b33fafb8068a95458bc1166b36c3977643ba159b655654d1755fd5e396ab9690718266ef6ae670452fbe332be84750bf7a26778e555fdb59ae0f48d6ec3ff4a1feabf2ff7f1ce4dbf3269dcd91e3ca9962d88db9c527874df15f7a6db9682b1f0d904aa875d29a8885ae63e90461c69b688046fc771321fd6a61a6f1a93fc95fac72bf86ed76eebdff0cd6960d72fc460753aba0324f2d7cd7372f413d4a49e761cade4f5911d18f7c712f61ce1a5c9f07ed2b042d5c86b4db97e1b7aba57e2f2db98ccb4041a16ee21e08ace213412c6d61cd3c42bb5d8dabd7b5a945fe512f2e64c3b1817d9bc5840d6e16f7e5e2ac36585bf8107addd0c269b8510dfe11222de1be13ccc2a5ba8536887a11a0a733eb81d93729d487481655f531bf4aae624918401097ec0951f7fc535cbd85691e0e0eeeac4a5848a61ae8d6d6121d3fbcba345ab755c4e8441ed7853ff46caa48090728a7ac39496c3002baa99dc90f049efe4c f2998955613dd414cc111df5ce30a995bb792e260b0e37a5b1d942fe90171a4ac2f66d4928d7ad377f4d0554cbf4c523d21f6e5f379d6f4b028cdcb9b1758d3b39663242ff3cb6ede6a36a6f05db3bc41e0d861b384b6dec58bb096d0a422fd542df175e1be1571fb52ae66f2d86a2f6824a8cfaacbac4a7492ad0433eeb15454af8f312b3b2a577750e3efbd370e8a8cac1582581971fba3ba4bd0d76e718dacf8433d33a59d287f8cc92234e7a271041b526e389efb0e40b6a18b3aaf658e82ed1c78631fd23b4c3eb27c3faec8685,e36806ac60d67682d34d80ad11a1415901fccc216d7548de3f2428b1963023a9394bc0e1766e279ae3509ae85d773d11dc8f11ae65c5c0d6401575cb33835081492c2b657f34514ed6b0dfcc2639fb758b5fddf638576a64bd34759d629ff133112cc5200267d8c9997e1538d602ca356e821f06ef84c3125d8466673312c6903ce166fb97fcb3eac9d30d61e13a1deabb922da6e5675dc8976cd4426edf7a7a797ded8936e0a3e721de5c4d956e8287c4b05d1210bbd36ce0e36b7f2a31945fca6bac1caab3c46d4c8245e3e589dbddbd00a3b99d8dfe33783235026c1a990f1c383cf71c755446d8f5df4a114b9004541065bdb81ab81b98ed47a1d05595ad5e168159ec620b1da439c6ccb6c4d57a2adb33a0e113fd0d8acbff5c759bffa29b36e8416eba1b8f45285ef3f496f6946ee1dde798cf8f5bb78900e59785597101dac9ec5e5f5ce0f0d6b173b6418a75be30a84140fac4899c4eb8ddcf87a0f78f22e237806e0871cda9976da0e7e42c4ad73fa49d3f9c257ed1cc6c389806bb2c32b1f7744ddca53ba515237f1588f5fa7c636360b6b8d98dafa7175db320a1a3fd1b3a092d9e8a4466971b87e5b05189829ad8d3b407f3c5e4265026c8b801c391be0f9c9dbab2f56362f820384d859eae1ed9b291f5f03f14f12d0ff8addac128988a59707facbe23814873246c99db793099e6dc79712c612d41302f8b59 447797e2899b72a356ba55bf4df3acca6cdb1041eb477bd1834a9f9acbc340a294d729f2f97df3a610be0ff15edb9c6d5db41644b9874360140fc64f52aa03f0286c8a640670067a84e017926a70438db1bb361defee7317021425f8821def26d1efd77fc853b818545d055adc9284796e583c76e6fe74c9ac2587aa46aa8f8804f2feb5836cc4b3ababab8429a5783e17d5999f32242eb59ef30cd7adabc16d72dbdb097623047c98989f88d14eaf02a7212be16ec2d07981aaa99949ddf89ecd90333a77bc4e1988a82abf7c7caf3291,939f4a4b5e37b675450782b0e8554bd6a2821ec805ce07fd4f5a3bc3816a2305f2353ffaf15883e760a3dea064df1583cff5ed83a97a62df9d174aa80958e7649460fb4880dfa21dd7c00f373aa9f010ebd1de7e1aa73f51f84df36bd2dce6b37d7a1112c6c69efb734cce2ab12517fae38f0f3592a4693251cb4f41af7e820f1e6f432cb9f88b82fcf579b2a5fd0e9a5b3c28542abdaa9c651ef1a05a385051682b3238262475aeeb53894b8274ef37b223f66a32c0d3df45f3f191414fc0e8878e3d58852b4cdbd826d236a7010ca49c43095786cde671070ede3f5bb74f34dffaceee281042eaf3d2b39e53c25a61f3b0b2d79e4305b9a17c47787747d3cca46e88be79464bdfd16bb44ec7d862503077d3e4e3c55ba1a1fcda217d53f5c22a35f883fbd0e786af38276b341733f82beebc4118d486c32a3e7a460e24951bfbe760556e36981805b40b837b514fac3e8213937ecb018449319ad3fe1c0ec19b502e8e0399398f3f8c74601f61a9ba3021f153ed45a99bc150aa886bf090b0134da25b2740ee5156cfe28151eda24a2c758303f505e465f9d6a409651d4705a80b3ff660b2d66ad061960a3c6b81fa8d831659830c5243aae26334917660ffff3b977fbda3730313753facf7e319cdfefc064f2072af7195a70ea74db24e5fbd36d6fa78c0d0d1085d05e81a62d3449f16007d3cca29e4403dce5de01d579b 9f2c18ade9b380c784e170fb763e9aa205f64303067eb1bcea93df5dac4bf5a2e00b78195f808df24fc76e26cb7be31dc35f0844cded1567bba29858cffc97fb29010331b01d6a3fb3159cc1b973d255da9843e34a0a4061cabdb9ed37f241bfabb3c20d32743f4026b59a4ccc385a2301f83c0b0a190b0f2d01acb8f0d41111e10f2f4e149379275599a52dc089b35fdd5234b0cfb7b6d8aebd563ca1fa653c5c021dfd6f5920e6f18bfafdbecbf0ab00281333ed50b9a999549c1c8f8c63d7626c48322e9791d5ff72294049bde91e73f8,3c78c3bd49493560231a71a867bbb666536b22562f1502245991e3ff28e6f058264b382bbd61f9a16d4dda0b3a72f84606f97e7ce53f4a57c132a920fe738f818e987095c1292d9873a772e12f74bf42ee1281f408dc2ed7bceeb2fa6fd856b7a01a955350582c111b2cfbb65e26b745939e1dd4781a0265ec5ad4bdafde1ea40ad504efb0e9f34e15e1526b1873f251d33c280f9cad71bca17c4925af9c3dbd4c6798bd393625017c5d3b03666fbc3aee276ae669af2e9e10ae2d608247f3dce876a8ea3bee6ee001c3d5f847fc92a2a9cd0fddead45c1f92414b23722005aaf8a7a0159d91b77f4a0e44debb9a0967977b04072633b4588df0d699c8f990d60ff5a2e09690a624dbe88b998424620b5634acdc02c75ded6dba9431aa7a0febc01cc5daa3094cdc818b2a6ca4d80890113408565a714558b6bdc3e1735bd1fc9fe84210d7d78e0c50e8961c39725f68f083094277b7b7ed3300a1fbf42f72ac9a79ff927e4f76abf0ba233a9e82e535c32d7054078a6a4a63f1ea454c6aa33c5a2299df7becb5f911c25bd74532edc882ff4312d2ae0add4d0f67958a520011851988f9d3846c0100b4c119ea818062a3c69401344cf94f49ab995c286f441d8241f60a73863628ad8ae1cc780ea99ceff0dc18a3d85e16ca00756627f6a1b754635945120890313ee136438e01a41593b6efd26926f48309122cf1dd806c8c ae159f3fa33619002ae6bcce8cbbdd7d28e5ed9d61534595c4c9f43c402a9bb31f3b301cbfd4a43ce4c24cd5c9849cc6259eca90e2a79e01ffbac07ba0e147fa42676a1d668570e0396387b5bcd599e8e66aaed1b8a191c5a47547f61373021fa6deadcb55363d233c24440f2c73dbb519f7c9fa5a8962efd5f6252c0407f190dfefad707f3c7007d69ff36b8489a5b6b7c557e79dd4f50c06511f599f56c896b35c917b63ba35c6ff8092baf7d1658e77fc95d8a6a43eeb4c01f33f03877f92774be89c1114dd531c011e53a34dc248a2f0e6,1a73a838fbe2aeac592433b7caabfd17068510b165896f00217a1f9e2093591a77330e656fc53d1223bc9446c11d329673b4186a85dc6091140c070843760effa56918f414a9c6f2d198e7d0c19f44ad19d1e89e25365cef40890987d255a616524ad68574c3c284825a48c3bcb0b48d41ee284b53be97127decf90402e8fe1317263d179814177b79df92b9c71efe9c3c2f3cbf8329bd9711e6393457f076c8bcf16a70e854daf7bce58c31f55b4d0e9681b39fdc19d0703a795c234016c5879857f25a64eaf0700c681e590b6d29605311f1bdbea47762bbfb012bf103d34c2cab53d53e1962ba6850b779b8673ba280b0fb79cc387e2559105ddba2884fe493b85ee0f0747436013ced0ace7280854e9bed8a42fc98dcf1ae5f845b677f4b802d01aef9529fffb6acfba047429d4de3181fa959a3b74aeb5934e3f25498ccc850bfaed46738736db5e5bda73ac03162923d310a1f91658d15cfc5268fd5bcd9ae6f9d5652558f74c1dd85696233ab9efef5ceee75f0a3489f46867b0bb1344ce24e5be88abb706cb49a07fee3dd5911dcc0486b58ff2b024f844c3773a1c03ce35f02256157a6a2e6616569fb751ecc3e4cf01ef99bb0ea61e4aefebcc65450ef2999505427b23c7cb9278e27ab58c5fa2d5b0a432a6172cb1c23dac420c92631495dc30dbe0af3b6944f1e101d1566f0a1f4ba06b82c36a7cd068864fd3b 3b8e97c5ffc2d6a40fa7de7fcefc90f3b12c940e7ab415321e29ee692dfac799b009c99dcddb708fce5a178c5c35ee2b8617143edc4c40b4d313661f49abdd93cea79d117518805496fe6acf292c4c2a1f76b403a97d7c399daf85b46ad84e16246c67d6836757bde336c290d5d401e6c1386ab32797af6bb251e9b2d8fe754c47482b72e0b394eab76916126fd68ea7d65eb93d59f5b4c5ac40f7c3b37e7f3694f29424c24af8c8f0ef59cd9dbf1d28e0e10f799a6f78cad1d45b9db3d7dee4a7059abe99182714983b9c9d44d7f5643596d4f3,674343644b198da1cb0709f842239ca1559ab643e48f8eedb373671473ca24a99a74e20ac6368b661ba1824af92985b3e7f957f9c935c715531703a6b8b5113a364f52c7df7c5488997a3ff71873fdacb1a6f4ac3b631a3341bc36cb742f8100b28029ed6c44fcb41e93b6f171a064b0f13b2f83b1790330def22a387c52cef7f16d1e398123ca0231b76494d708cc694a28e281b34ed163b7931312daa56752080c4966f8638134680cb96c4f815ac678106fb243ed3b9c9a5599d3851bf3d89cb7ba463c71a868f74d07f0c6f9c6f940f53d88e18892ee6cfe5fe9c17b92569e5c1222fee87792987663757459c35630cb355f445630826807909bb5cbc4f5c8e0bc669be6c705c12bcb2b39552d4af42204d237fac5bec56ef9ae6f60ba836ad865983df2f25a1f8c3f5df93f87eb76472dbebdb20fdf894c0167287ef1a6355040c4d4a6949f488697498529217e4532a445cded47687cfaa14db98260de9321a16fe84e4d82d2b1b0c2ee639b2aba48d85e4d06a369cdd9b03a0a846ebf83ecd5ed257876bd5e3e7838108fb3b86b6558f8bb454f1e76fabe18f3b66ca1448c1b02dab1bcd485e709ca800d5271952602e9b1bd585f61936d8dd678c900407892756a08730b891c154b33d83bcd1b2f441f1dfa79af235316be9a3e20eceb4eb23ab76d9e9564c367bc27424dae397e35ba16a8cd4ba15cfb7d9eee2b82 3434ec31b10fafdbfeec0dd6bd94e80f7ba9dca19ef075f7eb017512af66d6a4bcf7d16ba0819a1892a6372f9b35bcc7ca8155ee19e8428bc22d214856ed5fa9374c3c09bde169602cc219679f65a1566fc7316f4cc3b631a18fb4449fa6afa16a3db2bc4212eff539c67cf184680826535589c7111d73bffce431b4c40492e763d9279560aaa38eb2dc14a212d723f994a1fe656ff4dd14551ce4e7c621b2aa5604a10001b2878a897a28a08095c325e10a26d2fb1a75bfd64c250309bb55a44f23bbac0d5516a1c687d3b41ef2fbbf9cc56d4739,791be2551f426cd350322eb1ac0e6902996546d446c229e03d74e25cdfcad06cd99bdd3658026edbe8708ad18db913057702450baa457ee767b7f6085b0f1d35a86d8c5c62a35e5a11b81d409c12c8ad5777e245acc369abb5ea9d8d9517ae7fb4033efbbbcbb70fd6cc1e55187aa8a27c75e5116eba46de2c8378997504a82390e6b085a45c5fae52fc314e876da7a7f90226cedd3c4e985887f162513bddac323e85737f3954dc58d12e986bb1840d0eb046102c01381db2915981b23dece4987661b41b56d30c35a13da21c6d2ab0bb7951f04804986dc2127f7f33c4937d27427c7b7062ef7ede944efd0015681c2fa0c115b67652a7ef1aad03c0fc4542bade7cda11f0afc57d8e2c6df0e5bb5440c2b3ed2807c2798cadc6f371a2d6f2d647936b82936ba4b19a16f599689814ac4de20cc7cd05a3452d9286b345037abd23850f22a56bba707b1d9cf299ed3ea21943882669735f69d25f240f87f3b34cd794b0c6353681006aac5ad75cf46bc6464579bf5b715ac741cd1cc06cdca6e8d579f2ff839e263c94588ccd268b1d375e5df5bfc8b7a89fd72cfbf9bf5400efef53186b50497d942963eedcd6a7426784f38f8808c50f867d22c10fa4d7dedb4f5354fe1eb1484c9f645397582838f1c78076891c5e1e44959b5c74e28d7bcc3f6acee4e5393a5ce24e97cdbe1b22ae853c567068acee03cdb3157a3ef657 7c7953d81c8d208fd1c97681d48f49dd003456de60475b84070ef4847c333b74575b1fc8d2a186964485a3b8634feaa3595aaa1a2f4595a7d6b6153563dee31bbac443c8a33eed6d5d956a980a68366c2527b550ee950250dfb691eacbd5d56ae14b970668be174c89df2fea43ae52f13142639c884fd62a3683c0c3792f0f24ab1318bcb27e21f4737fab62c77ea38bc8fd1cf41f7dab64c13febe7152bf5bb7ab5a78f5346d43cc741cb6f72b7b8980f268b68bf62abdfb1577a52438fe14b591498cc95f071228460c7c5d5ceb4a7bde588e7f21c,7c0247b191c924335d843b81614c0f1a6a9ab1adb6c286922397d8c1b26220a35c13c7151e35ff9b3653a086da339ea1f05881f414e7a16c61b1453287f924c48ea933995000a9c9b0ebd5e8bef2c92820ccf9bb6cb0f465aac124b5e794fdbcc60584b05cc3bad06d41cf9dd5d3d3b7fe1cef634de558b6642e591bc2f69abeae61ef5da27bedf291d2a4106b3da946fb57328e827c8d4ee1c3665af79f96cc290f924348c30205d75b01bb05aa9dfc317cfddeeb7e3764589c003e2aa1ddf60a3c98adde4517e40d08cf80646205ec9fc6e9a3e1b64b2ead561957c3e2710dff720bd7e5841481d9e1a048d1c76a3e1a08bf010428c8fd2a6f2dca4fde7c8cf59c826e6df246cde77d5823dd1e0c0759af8356e89ed4c03276a37ebba73dc196e7915b57baade13a7a276aaa4456e23e4454d44260d9eadd748d4e7e1857b6d2d9c301af6118270859acc43603c79a2f6d698871fd5384daf43b16fee4ece1146ed54e1ca28eaaf2d94306383609bfb26d6634df00198e0d19500215e178d77329f7504af80dc6b727ea7791305fb38fddb1cef7f626a49ac6e34c3a6ed630f9310f890392704a2cde00cc850ff7ce9f0e1f0cb4b1d0c161ca3b812309cb3c9e9d071024d61e5265a71e7adc58a3d47a567f5b19f9e13fdcdcd34f3deb12da3151fe817e5844f5fce12805b064895671f0c3767af5a3d203d095be306d4a26 7a6a4f4fdc59a1d223381ae5af498d74b7252ecf59e389e49130c7eaee626e7bd9897effd92017f4ccde66b0440462cdedfd352d8153e6a4c8d7a0812f701cc737b5178c2556f07111200eb627dbc299caa792dfa58f35935299fa3a3519e9b03166dffa159103ffa35e8577f7c0a86c6b46fe13db8e2cdd9dcfba85bdddcce0a7a8e155f81f712d8e9fe646153d3d22c811bd39f830433b2213dd46301941b59293fd0a33e2b63adbd95239bc01315c46fdb678875b3c81e053a40f581cfbec24a1404b1671a1b88a6d06120229518fb13a74ca0ac5ae,73f5edf85cbe959cdfbeabbe2a96a1812134ec9d3ccb72d6039d4fcdef0b57bb72a782b76963c97ae0c2713ca657b9424851dc903cc0488a169538a0db3ec58e67c4eea1c18abdb2036c79381e76f5c9f6cf1f830e0dad77d2eb90f120efba42b20b15b8c8ce8532c5b668464ad4986a281e75e4fb2cbc59abf886a8540622c2458fefd190908a09fcd7f16b6e5bcc7e950917794fed485c82ceef7fe0fe4665e0922406ae1f8d34e5f77bfc0af8b4c881bf9f76c78a233898d120981be96f67d135723407ed252432928c7f2580fb80000cb51e3ee8db02d4ef4fcdbabb704db0cdb9e31fbe76930d285702d91a74db806daccc01a15c0129a7f7d4712668ed633462a6a036a9ec2c4a7e4aacd4d62df9da1fe959db9acd0fb6f01a75f95cd9768f408aab1760edad70e936eec344e9506a586b9d42db99ef828e58d281128fb0eac1185be704cc9d16e359ee3bc1361a776de4803132822f99f7e477764c9408b045745150ab8a7481d266995c91eaca7a9497f4ca1848828fb5ed127b7a4a5fa0f23614165a8e4de1e619a40d4e55ac28075ab2ff1bd42bee19f2f9d63630cac85eeca329a0a1877e848fb2a64176411a7fcc2dd63d6ca19452780bbe4eab208b0fa7b25f21f17be1cf7c5415a04fcab687b7d4ba2f657e39d5efc17f36a1a0e3de4610788ecc43cbe70ba2ddc33abf4c335940dd53891fb6dce20dd039ac d9faa14cebe9b7de551b6c0765409a33938562013b5e8e0e1e0a6418df7399d0a6a771fb81c3ca9bd3bb8e2951b0bc792525a294ebd1083688806fe5e7f1e17fd4e3a41d00c89e8fcf4a363caedb1acb558e3d562f1302b3d83bb886ed27b76033798131dab05b4217381eaaa7ba15ec820bb5c13b516dd640eaec5a27d05fdfca0f35b3a5312146806b4c0275bcd0aaa3b2017f346975db566f9b4d137f4ee10644c2a2da66deeca5342e236495c3c6280528bfd32e90af4cd9bb908f34012b52b4bc56d48cc8a6b59bab014988eabd12e1a0a1c2e170e7,9f303deccea9369400c533ce2e162818957e18f65c05a675404cf8637fdb57f3251fdc2844ca194ed97cd021416e764e072598106e9d97d420087087dcf5f8acf1047a7b4518e683e5ac6df1ef1ba7ec7a418f12e386dfb7a4a5edd9898cae54d645ab3193982f4363da670f1fbc7aaa1194a03bb76391a78dae7e4fff733a6f19393e9c4cc5eb3f5503d8b1cefeeb7038b0565f29d6cd4460090fc63e3c4dbc7d5d3d107f8e905b21cc9b9ef3c535aa0d8ebcf787631744f80a05caca3e50968a05f85e9cb0d775dafcc714fd6d93c8b110e58f9ad1f8077cc80427515fc5c0cf081de5fd4cfe6ea6dd2f33a2df212918a3f86bbb8aba45d808bbc2cad8dd09e7b9af1c33b0e58b988268db39118b2b2090eabadec0b84fd836db6944e8e27b5f4f3b2876077d52b4648885ef55dfff266c7264c46ef5a3cb63588d1a86c82d19449e0c93d968619ca4d33bcadcb21e6787a5e41f0d4e95e2b47e422fcfe5bd7ebc65a3023479330e989b3edc8320edc868fb122df078470b0373732e187110d3964b6e7757e84f177106c2bfac5bcc43a13dc40ba8ad5c1e772c58df0f32ff0f10348686cf0662f2f30d41ba48b121e1a146c70e6131e13080cd8b63ab79869af74e64b9899855c81d20f753f22c67f1e4de2450740944cdf4fdeded59927f92a9568db95e5b8515c07bf4e9adf952d4ad498f3dc19a2205640a8378a0fd5f 2d8427433d0c61f2d96cfe80cf1e932265a191365c3b61aaa3d6dcc039f6ba2ad52a6a8cc30fc10f705e6b7705105977fa496c1c708a277a124304f1fc40911e7441d1b5e77b951aad7b01fd5db1b377d165b05bbf898042e39660caf8b279fe5229d1a8db86c0999ed65e53d01ccbc4b43173ccf992b3a14586f6ba42f5fe30afa8ae40c5df29966f9346da5f8b35f16a1de3ab6de0f477d8d8660918060e88b9b9e9ca6a4207033b87a812dbf5544d39e4882010f82b6ce005f8e8ff6fe3c3806bc2b73c2b83afb704345629304f9f86358712e9fae3ca3e,1cc30597732904c49c0f6eaf777f82b1c33b4cf00fa720c7db8473139266e7304d81999f322ae6803736d242e7408dbb8955d8f1c0b14c6f7678cacdf2f3cc2a17208033e8c70bc5141a072f41e759ad8eedff745df0162c2ea877a7d673bc63d80c0f1db765f9f5cdeb2eff214411f95ad7c3c41f6afec798e001d31ae22432a54badc751f7f713b4a3693267be3cdd3a1dde1a5e638143a2fae59a2a359e197cf4e5e1d933dad9f99773f164173e3e818987f19d122aab725af24497ca116ec201b2482f0539ec454292df4d018e286247f8c857b53816e9623d580d69faef60009fe72f25b4609e8dad73a06c006280edb0137a25d5462368b18b8f37525c2c74ffeb4a7942683b86aca6fb1d773e9c92311c4e197c5466ce90cf01c661ec2d928ee0d35a2fcf0ef1a87fa7d298747e44dbaa4c90c655348b8c2771f378fbaf0702ef9cb4b42cd5b26016d8f5fac1b79a49f8022a180f04f8988b5895822404d346a03622a5df8ad2e3f6841ab14644f6074a72dcda253d7c9423df9fc15d98f49e3b2a1df2011ceaa61bb7dceb3860b9b66df3926a1e79e73ef6c4429aa9f344adce7d9a7451ad97d0c9653b916b029c4971e6756fba775f191751416c3b0587c2fc5043f38d2b6205804c47da3e85a99b47f1aaf42d9c709f21bea94b8ca7340fbb8b262de6c47b79de5222afee7b1c994ed526ad4d5641136f5227a5bb 5e19d97887fcaac0387e22c6f803c34a3dacd2604172433f7a8a7a526ca4a2a1271ecfc5d5d7be5ac0d85d921095350dfc65997d443c21c8094e0a3fefd2961bcb94aed03291ae310ccda75d8ace4bc7d89e7d3e5d1650bda5d668b8b50bfc8e608e184f4d3a9a2badc4ff5f07e0c0bc8a9f2e0b2a26fd6d8c550008faaab75fd71af2a424bec9a7cd9d83fad4c8e9319115656a8717d3b523a68ff8004258b9990ed362308461804ba3e3a7e92d8f2ffae5c2fba55ba5a3c27c0a2f71bd711d2fe1799c2adb31b200035481e9ee5c4adf2ab9c0fa50b23975cf,6d96d224006dfbe8eec28892fd2bf888ff543501f2f8ae5b6beb67713173c88671e4b3804d695730fdd0cb04ffd873b0e401103dfae8f014ffb0ea382333e33985d1037403029f0c642323183ac8668907de791bdb0bf7112fd2c8ba5d3b933273b51082810c7515c78173dab93c7afc48b0a76d5488b76ca0e5da2226b669a2efa56f0a2041cc4a60212b2b4f4b02749b211856839868ccc0a935db1f7305ef356024fc78795690b69cbea01ec0b5aa8b3c4ac2d1815176b57062dc4742defa68081f21384fc875339f40985e85debf3ae9ef80cfca746375492614fe5e76a96e506403fe2cf5bcb43ae6e4e697e86237e825bdb16087eb32d3dbccf2af2b624acb4a960e0781e7c686b0b3a8a0e4beb1f904e0d84b00038788a02ce66baa59ef185e2678598013c60208e5ceb50b701bdd2694a24837f786931027ac0d64a229400b5783bf29ab39df9aeced0cc8b9d6fea52de3e9220575b4f3af6e2df155a20d87ff3f5ecdc0437cf7a8a648a0be9c81f0ec3457bba5d5948149c3ff2411053549ac24dffc65b54bb89b227499e35226fd9e1a85ebf5dd534852921beb63bf850edb495f9dc1876c6a481e9b774e6d4368974bd5a7ba7a16e90d078bd651f128ca7ac160eec05cb8f3ae3cee4bf998579b84418d7a70da95e65e4da9933ef8e399359d6d1993e5d9753cfd1b10737f6930ff0cba3510d3bd9cf78f5f79dd c8e976ab4638909387ce3b8d4e510c3230e5690e02c45093b1d297910abc481e56eea0f296f98379dfc9080af69e73b2399d1c143bee80ae1328162ce1ba7f6a8374679b20aacd380eb4e61382c99998704d62701afa914f9a2705cdb065885f50d086c3eb5753700c387118bb142f3e6da1e988dfb31ac75d7368931e45d1391a274b22f83ceb072f9bcabc0b216685bfd789f5023971024b1878a205442522f9ea7d8797a4102a3df41703768251fd5e017c85d1200a464118aa35654e7ca39f3c375b8ef8cbe7534dbc64bc20befb417cf60ec92f63d9ee7397,e0335cbfa877da0ddd79072bd7f46ea6313144e633ba2c207cbd6948237cc32a39db06f951a1a4b9b0b91011158d38938adc1e42408a2d8a95c3eac579c922943155624f6318e12be7eb6a83679508e0910fb6e85a84998f0fbe06b087efc6ec91eee277b48d289dd6e12c820d0909e206750c82995db86031e71b0d005ce898f1cf7c782f10b8ced5370cf27b74c6822910b653bbdd328ae5a4921478a4072b8c7c89b446e057f6dc4692186cac39cf08e3c3f0c9457ff44da73b88ce131a1e2b4c6a235dd464e4777b069d39a9ee2a5877e07e8669b0d610513102b00f8e2a7ec210c403f2e398eff22e193a66376d0d08ab3013aea4d508ee88edd361fda5aa4e17ba899632cb7222eddd5b320af686c80f2777d94fa2a3428a47ae7340054d2dec1c42569a5eee01759846fd10af9d2ad2ae9f6fadff825d184eaf7e8ab9d7c7c64ae07cd5a95f2b24cc3857bb239f5c0824ea7ca0c84cccd9601580ea7a4c8937008617468b9122b466624d51af29ae1b66d14c332f2535bd7c3603de07a0b25c6a260e9e70ebd2da622acbca660d425de2e44b7e6242a83077bd24025abd5f0f2f21743f80d9a6f1552c3957b220088d861f3e25823548bdcb448d19b3cfa14fc8f11ceac5bb262364f100655d5099d564041f113503aec817bb03ccb9a6e02196706fbb836c28421afe0ab276772150fd0677ace7655ea6214f61d2a6 7145fa124b7429a1fc2231237a949ba7201bcc1822d3272de005b682398196c25f7e5cc2f289fbf44415f699cb7fe6757791b1443410234ae061edf623359e2b4e32c19bf88450432dd01caa5eb16a1dc378f391ca5e3c4e5f356728bddd4975db7c890da8bbc84cc73ff244394d0d48954978765e4a00b593f70f2ca082673a261ed88dbcef1127728d8cd89bc2c597e9102ced6010f65fa75a14ebe467fa57ce3bd4948b6867d74a9df5c0ec6f530cbf2ee61ce6f06bc8f2864dff5583776b31df8c7ffcb61428a56bf7bd37188b4a5123bbf338393af46eda85e6,74b8e6a2245e18432db073b046fa0d6f63c85a05b9fb3b3098c8f2aaad938cec8a8232ac2cc4cd7ea85a29bbb4a2d03311cfa7f1ed8107da574e659358408c60b1cdae6a4ba6f3091574dff998c97ca31e410b4132013afae543076baca1989e7b5da17e654e664c856a00d7de43eb3a2c5b8e347ea3b18a94d534c0448671fe2c360034550f145f911acb7c245a99fe37ca167eb8ae0ff5e9d0b65f255d24de4239ba87c2e8b757192020b3a28d53861d29c845d4e4a21604ed2d5dc8e4c107cd47501847b50ce2452a31685012c5949e0cb630088178aaa5c9b0eaa6394e00096cdafdc781833f37c64ee2955db09f1c3b3767a0f0928863567513d5b02a3d24e66a79ea590d5dbef5e8b5d9953ed9f72610c0d4f5ead67b3421e90710138e09bb15959dfe9ae408afa9acffca19dd083bdf508d8fba9f75a18f6229a9850de36653a0a39987781eae3f740e2ce387c004d47811e3f8b5f8da9ecafe90c5af4ace449ff7af57b271b0c3059ae42180a1746eb3aaba944dba5bf3946907a18b1d94df4819872a24deedda3af7a3787ab6b3d5f128d0c3ccab6ad0c34371bb76daa321e36f6ff935fd58b590858f894b54bf9997df8b73939919af342d6593f31f76c3251ab3812e27f00f3aae0c0535a8cbf9c6a9d20e26e619d6899eca8a46526d7205a3f2f3971c60e432ce438f40c2cbef0f2ad7253b18ad53c3bd8f108b 7fdfadcc9d29bad23ae038c6c65cda1aef757221b8872ed3d75ff8df7da0627d266e224e812c39f7983e4558bfd0a1f2bef3feb56ba09120ef762917b9c093867948547aee98600d10d87b20106878a8d22c64378bf634f7f75900c03986b077b0bf8b740a82447b61b99fee5376c5eb6680ec9e3088f0bdd0c56883413d60c1357d3c811950e5890e7600103c916341b80c743c6a852b7b4fb60c3ba21f3bc15b8382437a68454779cf3cd7f9f90ccc8ef28d0b706535b1e4108eb5627bb45d719cb046839aee311ca1abdc8319e050d67972cb35a6b1601b25dbf487,10b27d45e1e91c3568b990f306d4d0338380c4a24c543db7905ad8c20b9c469a79e50f7fe705c03d2d1cff9e2c35fce1e6e2035d3f464b6d2861eed223c32e960bb223f21193cd4734f36422c1de6f0f81791d6a5e9db7ba8c2ca1f2b7fef2f94c53928695913471b5e1b02b75fb9b0da1feb46520f3e8558e03427bf371180ebacc91f3989f849b4eab233c529006ee02050d85b548344c09cc7a6c6c40fce5c55348e1beb801482ba70d6cc5a24b3b0c9a3258b0934c3a41fbf07ef50460e2bda507711954c83ffb91cf2b2827d5fcc6dae70df5882689c573f159a9b45694458d0fb8a5000b109bea868160fca781f50db7b5ee56ae55bae1fbeabdc155ec46c0eb16314851fe0446ac2bf171d99fbcfbe2adfbae4a6387b42fe41c5ee8e2ad1819d7f80bb1b4ec2dafcd1d06c2c9750a600ee6627f62089b2ee59ea461e0dcf47188d1a8dc80b0294479c7eb03953c425d6eb3cac6ffc34e484a35127b605cabfa59712141c4fa0840fb520a1d0a8db4b298d24de2a7246f28e036b511db91794e35b75daebcb3b8833794b764f936200e7784348ae50b95363c027f3af85762f3b8e6f31b7c2d8bd18814a723c0de517f7b3937af574a3fb5f52de8a10a2055e8eb4281d383797df4b8d5dd5266c5d438a10de4bad00e4c0b252110cf368707aa2fe785f518cc2f3da5221634b52118348f231aae0712de096d70a43929 988638219fd3095421f826f56e4f09e356296b628c3ce6930c9f2e758fd1a80c8273f2f61e4daae65c4f110d3e7ca0965ac7d24e34c0dc4ba2d6ff0bf5bbe93b3585f354d7543cb542a1aa54674d375077f2d360a8f4d42f3db131c3b7ab7306267ba107659864a90c8c909460a73621d1f5d9d3fd95beb19b23db1cb6c0d0fba91d36891529b8bd8263caa1bab56a4affaed44962df096d8d5b1eb845ef31188b3e10f1af811a13f156beb7a288aae593ebd1471b624aa1a7c6adf01e2200b3d72d88a3aed3100c88231e41efc376906f0b580dc895f080fda5741db1cb,69304677315720d586605521e24d32745dfab082d2bc23a3165c419831c19468a088d972ac672d7baab907005a0ae3910d4f06f0bc5adf6aaf9e1d8cd7cb85dd166d0fb9703cdc7d45dafac4805612137d4720fb3fce90d69864403e6c456fbd87677312ed7cad9a28f7a98753265294f4820fa50868cfea157eba50dc5763e223238fb2032dbc6dc00c3710b6976f16034a9d851cd1baddec6071cadf10c8f9fa123fc0eb81ecaf4c16b8d52a6c1ffe330d114d71ceade28bb0422855aa1e7e838a93523315bd0f8384361a58529a2264d66d65806659c49b7f80d95474a7965a0733d3da4fe317c5ae6180746bd8dc70589f97b15e0fef29d34d6be4416acb3f9eba2f3e34f8e636a6b111dfd4aceb2c9de051b942ef021c78e0671f771058c4b59d34991dd2efc6943c6e0156cc0e3fead10968f77bf4da82b9fd3ab73b43e2890bc8aeb02d7178faeb2fe1a0a194b1581f6322d817aff2de7daa96f4a725ebbd8c9fc9c815d0a8e9fac425f278f121084ad98af9bb119235fffdf1751ab6a805fa80f43a5682c2fd5bf9241fca866de6b5efd36e692313f51fa8dd64b52dc2fc33c56687417c942680676143a459068401690df9213e18604058e74011b111f1410531fbed32567af7a0319b5a4a717f580d16d9e9341e78f717e27258a84a2cdbbb9ca118fd0f81568639f40176a1754c743b4b5e377dbb0175d160b414 5aab62756d307a669d146aba988d9074c5a159b3de85151a819b117ca1ff6597f6156e80fdd28c9c3176835164d37da7da11d94e09add770b68a6e081cd22ca0c004bfe7cd283bf43a588da91f509b27a6584c474a4a2f3ee0f1f56447379240a5ab1fb77fdca49b305f07ba86b62756fb9efb4fc225c86845f026ea542076b91a0bc2cdd136e122c659be259d98e5841df4c2f60330d4d8cdee7bf1a0a244524eecc68ff2aef5bf0069c9e87a11c6e519de1a4062a10c83837388f7ef58598a3846f49d499682b683c4a062b421594fafbc1383c943ba83bdef515efcf10d,b32e9585694532b1018b05b9dfdb23b8924025786f5733769b4913b73b0fc35513d4c0fa1a1a5019db5fc807abadcd4589b4c5658a854fc919105a5f08799f7cba3b8dfe72de84027b341cb1946d6a4a907d6ffbc15b6a00805abe25047476b99d53a6aabe9c758b3bf4476dfefef2e366617a1407853b0d0278df42fb7003bb1610da2ad52422a0eccc74818ebb4df264d0adb9623b9ee0c5371e9f0e73d7fd31a2b41f9da8c9955310166fcae6be9aa75d3f7c532f1502beacfcd81a034b5d4a87647a5b9e2c49b7bf055a0f4bc3f555fef5147bb7b9bd75772878fddcffd58ff2b09a61d6067c0f3498efbb5fcb736813f798e213102e47a3dd61a6bf99db2834db63befda6e290ea953a8b96fa37650df510082294891c86892215850a34af1ee0659694431da636c9bdc854ab98fc796c28bd6272c9c5df1d199ce9f55bb575786ebcd6851dac97924aafb102491bf4b80351afd26ef027c745f98607c19acf96b66ecfacd4c512bcc9a8e609de5ffcde0df0e77760d8d44f12301336247f53cbed8894831765d12221c902127b65dd549e6c32124e0ca555586fca8043097b9ae3d9bcf899fa06ee5d0a17ec0a2e657e37cf5d4a55cf4c99e9f10691602412d27f9b8db5c4c2644fc822e11833b32168ac89f2d591748d12b527fd5eab2291f201579a48aa9c370979dc2265b873ad65266e98ff668579b0f4274c73f9 47b8216aa0fbb5d67966f2e82c17c07aa2d6327e96fcd83e3de7333689f3ee79994a1bf45082c4d725ed8d41205cb5bcdf5c341f77facb1da46a5b9b2cbc49eadf786bcd881f371a95fa17df73f606519aea0ff79d5a11427b98ee7f13a5c00637e2854134691059839121fea9abe2cd1bcbbbf27c74caf3678e05bfb1c949897ea01f56ffa4dafbe8644611685c617a3206c7a7036e4ac816799f693dafe7f19f303ce4eba09d21e03610201bfc665b72400a547a1e00fa9b7ad8d84f84b34aef118515e74def11b9188bd1e1f97d9a12c30132ec2806339bdadacda2fd8b78,e6bbddc5b154abab888f4e00c2bfc18a200db6ded8ebad70ece03d10d123c52d4b5124cdfde2d5a803b8be98c646e29f64f2bdd55492531b2741c6040fc51f7df18106d9aae62f1930bab26fd5167d516c4e4afd3035d6afddd06daa59b56be3f188cbc11529909f6ca0618c321349b1b918c1cee491c8d7996f10b02e0a085ce790648c586710d4916a528398fac1e1fa71971ec85b203b83721aa006d7026c2647cec53296e80ee3fbb6b880bd296d6b9dffdf40c5537551eb0dde86e85a72fd280888c08d67a9839ea61849b47fb010540baa15530495cc8bf941f82b4b3114f6ae055c852b0978ecaa67108aeceb12e78c339071ca058fa4a534558899d71ed36c2164de0c92612f07cf465f92c0a1987f7462ad303de358dc9c9929ac205f366fe564c0b32b1e4d65ef4e0b45b2aaea6a93c5626ed40c597b54a2074f255fc6c33f7de535b5041f32085274ebde9d7ace9b458e7e7cc47193428a8873560c561230b03a72d993100b73fdc24231a39c227b05630b328645349e0025ef02002c34e6a7ef07ac5f7e299cfe0ecccf01e1dfbdac9bbc95b09b2ea505d8e74c85b9bc8e939363f3f062260711c44c132e1f3663123ec0b0a253de7db1dc2a08481571f64bac3fcd9eac737bdb42aa4d392ddf9547126191ddcb2f88a5705bec9be7c8d88e9521ef7bf9753155f6f3a75acd4c9c913785cbff81761da8dd73b8 8cff1f67fe53c098896d9136389bd8881816ccab34862bb67a656e3d98896f3ce6ffd4da73975809fcdf9666760d6e561c55238b205d8049c1cedeef374d1735daa533147bfa960b2cce4a4f254176bb4d1bd1e89654432b8dbe1a135c42115b394b024856a2a83dc85d6782be4b444239567ccec4b184d4548eae3ff6a192f343292ba2e32a0f267f31cc26719eb85245d415fb897ac2da433ee91a99424c9d7f1766a44171d1651001c38fc79294accc68ceb5665d36218454d3ba169ae058a831338c17743603f81ee173bfc0927464f9bd728dee94c6aeab7aae6ee3a627e8,f40b4a6a7d88482c5ba65d17038d68184e1aad676d3403003017a4348a7e3abfe89804ef65d96ea5a467caa9387020719184528944aad358960b66a0e78f2e4c19f244c82cb0d10bd1df49cfb89c24fbce8af1dc6b13dc61f40116ed3d1b51b80acf08a7a9badc6318da75eb4cabbf4798923d639c2c3c24778660089384de33f0ee7f957c78d4bf8d74ee1e3ea5e330c350584c319298166cdaffe0c7ace6a50d1551b30fa386a0ed5c20da31dc35fe2ddb7ff030aef1c0f2ecb0c1915554722ddd5a38df758e321048fc4643fdfaf54ae558f9b40eb38dbe516256e8d97701022b68e1f0983a14d7dbefb59dac5073062de8698beb9c94dae0a49fd51a661fa6aa84fe1088eb4e0f964953625a898b03993ecb248efd5e66380667c2ed185fc568ae58e15b5a57abfd84966094ee5c85284f3248c92e1300db80cd6ae08662412d01503d598a1fcdb0ef8ca773eadace543b867bade24efb25518e59e27fc921d8db6d3ac286bd1aba53d48983df63d493f95b88610cbcf6de2130ad63fb9860a839c3f98f5532b90225d1adad79b478f5c9d836435a9c9c0ebe229fa494b5f4253da92c7382ab388c4f052911e9ff28cc43415c8a82065433d8cdab9152cc13191f1729ea95693b4bbebc3b03f298ef6b3739a0f34a545198ff5d2b4292aa8d6a04271463df95145c99ec769167761690c97361984a665b0d5c2169added2 eacd07971cff9b9939903f8c1d8cbb5d4db1b548a85d04e037514a583604e787f32992bf2111b97ac5e8a938233552731321522ab5e8583561260b7d13ebeef785b23a41fd8576a6da764a8ed6d822d4957a545d5244756c18aa80e1aad4d1f9c20d259dee1711e2cc8fd013169fb7cc4ce38b362f8e0936ae9198b7e838dcea4f7a5b9429bb3f6bbcf2dc92565e3676c1c5e6eb3dd2a0f86aa23edd3d0891f197447692794b3dfa269611ad97f72b795602b4fdb198f3fd3eb41b415064256e345e8d8c51c555dc8a21904a9b0f1ad0effab7786aac2da3b196507e9f33ca356427,92951eaa72195331acdd63572fe112e0df4b43ca1b67ba5c9184da5667a8439e3afd8784461010eb80178b07f278c0bd52582cef5b4d869d77e764342651ace52f1f5dbb5316a36cbe2d6fa455403a8ff0480a5df002396b8e444b9005a9a97d301529f5faef77c0fc04c3b01c7c4907f197927904bc56da2f850a0767e91c5b77d8a41cafcbdd5cc768e220e844786093ce425bcb3bf6cf3fe9cccbf6a5cb84d46aed8beb079ac0f12f68836a71d8c9d738f9be5a8311299eec2ae86ab774d0d8345c6fa7a341223a43dbb85ad5274806b23a3bbe312723bed548f4c64353ee2875a44a8a37153dafbe98e96efaa402e7a68bca09eda8a744c3bb8fcdaedd7ec54ca4066b69b4828afe6285b6909bc2ae96cd62f3a5238987279f206c2593fd2bf4d5a643484a5155fff290253650387c7bdc0b3fd749eb1a84f7a11790afcdd3fc72fae3bbb1c55596584b7246e77d0712562aeaff1c5316a698db9aa3524dc4af4aa4619c5f9cbbe41aa1ff2a0bad12f17ecf7c90e6fbc20ebf374d6335ef245bf449e3ee5870651587727d35bbed64885a8d375e43cc350e398c3d5de83ce92354c08e16a6ac69af10efaec2f0268cb7f998ceb45db988b193c8d35e89a387de6c212a2d2d5a9ffec3d4dff92d66992563c85e4e707730bdb669783357e5ed038acea7d8214313fc027733d51b2d21f47666dab6c6f3e50a335e83c72abd 23ac4e9a42c6ef45c3336ce6dfc2ff7de8884cd23dc912fef0f7756c09d335c189f3ad3a23697abda851a81881a0c8ccafc980ab2c702564c2be15fe4c4b9f10dfb2248d0d0cb2e2887fd4598a1d4acda897944a2ffc580ff92719c95cf2aa42dc584674cb5a9bc5765b9d6ddf5789791d15f8dd925aa12bffafbce60827b490bb7df3dda6f2a143c8bf96abc903d83d59a791e2d62814a89b8080a28060568cf24a80ae61179fe84e0ffad00388178cb6a617d37efd54cc01970a4a41d1a8d3ddce46edbba4ab7c90ad565398d376f431189ce8c1c33e132feae6a8cd17a61c630012,9107bc54f9ae29bd282c37cf4be15d2edc4b5a20fcd8c131620cee6c9326af25896bd25550cc3b46c19bb58d825a7156a4aac0ae72e38601aa6aaedc4ddc578d145ae8a0af4e630914b49fcd39c41924a19ed6e52ec150d1bdfbfe2717b9b46d6be9bd6378761f167c1133ee31981f9b681d674e267b3a01b0f455f9a0c86b7e6bb3ededc2dd86c8ef6f6bf736ba9cfc4a20e602779f0cc626e0f3513807c8bc71546dd1e0e5210a6abdbdb284f90eaebfae970cee9eb8c58a5f0f197feb3292aa8ee814df5d86d6b1f43ad787e82ab6d1c01cf44f3b32522609cc51967fa9d2417a8b91461b41a5390bdaee3763e152a2db2e8b7842a73f1e05a05f7a7d19fc88f576b049f87e85835ea4dbed141ac1321b47aedbfd285b6488b7613206e483559a8b0725d3091a04f10736ea1920fe234658aec2a5fd0f85f50bed9eea3e5513ee3b45f0caee09a1ca3dd8e96ebb408ec6a31f07acec024097c20038a6db8b5a10396c6f3532d8b356bd664a9c3c153d2248f9d8587d21ad3adb20d06c020f5aea40e96c776202a17740f59bac12195b49e19abb87f693ba0b1b414c4c83dd7474fb212f0f8015d0019d33250bb890079278e027f0191b1a92fc40004050c4e88d1cd3469b656a2f6d1ab9e49118b18701fa85a5b1497f1fd0d3c999567f99d05cd8f20dbc05333f547598615fee2452861af0cde27acc4d763074de840004 0172df732282c9d488669c358e3492260cbe91c95cfbc1e3fea6c4b0ec129b45f242ace09f152fc6234e1bee8aab8cd56e8b486e1dcba9c05407c2f95da8d8f1c0af78ee2ed82a3a79ec0cb0709396ee62aadb84f8a4ee8a7ccca3c1ee84e302a09ea802204afecf04097e67d0f8e8a9d2651126c0a598a37081e42d168b0ae8a71951c524259e4e2054e535b779679bdade566fe55700858618e626b4a0faf895bcce9011504a49e05fd56127eae3d1f8917afb548ecadabda1020111fec9314c413498a360b08640549a22cb23c731ace743252a8227a0d2689d4c6001606678dfb921,02d21b8fee4bb59b4d39d88df91b675762640994d3a300bd7259a3e97ded831112d27339fc4f59c7f17dabeed310ee901d829a2193421c4d828df1248a68f6ab928ee87afd727ddc2766de071103b144040f9ef22592599a0fa6cedc2fcd9a774bef862d2d51c8e2538d1dece789a6756a1f9034c0949c3ff13190a141f3dd4f015a89de643d65e5ec4ab25300739892a81911e3c48d8a58239203c7e828e8867230e46bb8befd018e9ace92061e2baa09b0fb8c0cfa7fd5024cc65826aa96bdda6e21ecb7d0d77fe651cc25ec260c1c41f4d0dfa82963a2eeef0ac0c6123d9726a02396a0612e8ba6cd4988c132e7cab1b5097174b6bca798c7b04e5f7175a3a5bfaa9d23dfcf5e531557be9ba6f4b5d806287bcdf1cb5034ff94f709544e81d856cd8a1380774c5361710460d52cdfeae9af4af3e9daf7e6b679a6b881a378a1254de7105396db24497373430c36d24bd49425e7613faf651747217efc4e24a761cb4694a2ab3e0b43a8a4cda5ebc9d7299b27eb600122c7ef54703e48f51db2a5a8f3eb59a2c174df966ad728df0bc2e94418775e0186d3a527f86547980c8998b32f0365d9e430d33a92cf081a1525892fccf3d8fb4db1e0a728a856f2e2cc8ec4a08feff53db85c6620cc8b57106097a96b668f97c3bde8cfdc9600419b46ea24839d27a574bf63147a97b2b48cee1c6fda32f3b945e36fc03eab485b4b 3875b9240cf3e0a8b59c658540f26a701cf188496e2c2174788b126fd29402d6a75453ba0635284d08835f40051a2a9683dc92afb9383719191231170379ba6f4adc816fecbb0f9c446b785bf520796841e58878b73c58d3ebb097ce4761fdeabe15de2f319dfbaf1742cdeb389559c788131a6793e193856661376c81ce9568da19aa6925b47ffd77a43c7a0e758c37d69254909ff0fbd415ef8eb937bcd49f91468b49974c07dc819abd67395db0e05874ff83dddab895344abd0e7111b2df9e58d76d85ad98106b36295826be04d435615595605e4b4bb824b33c4afeb5e7bb0d19f909,76919b60d28a57717ec190fc9990e32020e6436828d90d8a2f4a7ad21f18a4f5f1ca753adcb0aa010d40334d1e58b8bd165b0151e631925055f4800dc01d466d11e88ae945545365b7f6072b36e11cb6f15da6ba3b53e12473beed09c5aa275cad795e03838aebf74a6b1a3371344c1e3104cde3c768026963de2acc8935f5162d1d09c966b5fe2943cc723e8007559c0537126400f1a4c3d9004df88126a23f9051630de9fcac524bf4a109cccf5cd7f7972b64fcb5a8e5a78a85ee82fe553ab90754cd12ec77e2e3cc09aa1f172963da44d29fc7f95f0c7c1207bdc858fe8b9785eab55b6ee33612863fcfd1668a2fb13715f7910968708f22a9a88d97f84ef4212551d8fcb05992670aafc9ef5cc34f0843246241c9ee011470131e0e6b56c9ef6a0e38423943ba502ec9d08c39f70797bd85f6d9207684022cadc282eed833b43ce450445075013f1b3270492aa6e412cce8e9d9534c0a380b45cad9328610ef3facea7ff5199f1e4d0342163b16961b0f98e46e8615ae2cd74d92e2df30a3df00bbba2ae43a67f51ec52cdb37e00d979ace6af3afa34a58b8cfc07ddc3c98fbe4a5e18539d03acfa18152f4cd32cbd84ac30a99c325ebd57ef2870f36c711900cc23539be7c19dc94f75457bdff28b9b5df876b5576cc37fb30b291dbf44904b36c3d96747dcd92a1550cf9323f358d15471fdfd35c2f4c4b104cc91fba 747cc1a59fefba94a9c75ba866c30dc5c1cb0c0f8e9361d98484956dd5d1a40f6184afbe3dac9f76028d1caeccfbf69199c6ce2b4c092a3f4d2a56fe5a33a00757f4d7dee5dfb0524311a97ae0668a47971b95766e2f6dd48c3f57841f91f04a00ad5ea70f2d479a2620dc5cd78eaab3a3b011719b7e78d19ddf70d9423798af77517ebc55392fcd01fc600d8d466b9e7a7a85bf33f9cc5419e9bd874ddfd60981150ddaf8d7febaa4374f0872a5628d318000311e2f5655365ad4d407c20e5c04df17a222e7deec79c5ab1116d8572f91cd06e1ccc7ced53736fc867fd49ecebe6bf8082e8a,72a343df2c1854005653e1ec9c8f9492af9ef7facf46df729ad910fa3a8b830971d22d5e017ecd515c0e972197c87968fd05d59c570634a3864dfea159229746a967a2847f0f4e3c48dbdb21ebfa400e18bf289a2b146758eaee64aa200287f7f55e57817ece0470c35531d35be824ad7e825e7a1fca07ce5325de6e27d6c6bf1602ec1069117e230ed9a0873d6538881992fdbce93a4e12013a56f4d22f5846b4e04bd15e9ae9590c703ee7ae346b860d1b4b181a963c1dcd36ad485aa484ce534138789c2874ab5888b70e278e30534acdf0d9798a44e1701d9447b5d6fd212344603a269a9d2e0437304f5153fbeb7bb5a1e437b63014ed6f01d4f6135ef189ee290e30c25dc2f63b7d8cf19e9d7959eb2f61703842e0c89ea487441b9c17fa6800a63c411f1d3ff4c35f1e89bb820d60b25cb1ad71e6583390e753934759a5467680405b1c9b6e391d6ddc4510ff24496559fe2604c038a5df6638fd7f7880e0847b880c1628f47bef49689d0c31c4867baf6fca08fea898056dcb1716c95341aca367bcd9bb372a93d2fce947b5cab707e744f15fbb85230fe7f86a9ef7c36069ca79d781d1cc76193d423229e51ce0612a2d61680d35cfd5aa482739442f94d205d72080bec7a259b23b8d9b4f76f2a75235cc3bbd6738fd870905fa21bfe1315b0c678d7db5f4df36f5d43d04c11f3bce3fb71b3b7ae410ad51cde033 57af971fccaec97435dc2ec9ef0429bcedc6b647729ea168858a6e49ac1071e706f4a5a645ca14e8c7746d65511620682c906c8b86ec901f3dded4167b3f00b06cbfac6aee3728051b3e5ff10b4f9ed8bd0b8da94303c833755b3ca3aeddf0b54bc8d6632138b5d25bab03d17b3458a9d782108006f5bb7de75b5c0ba854b423d8bb801e701e99dc4feaad59bc1c7112453b04d33ea3635639fb802c73c2b71d58a56bbd671b18fe34ed2e3dca38827d63fdb1d4fb3285405004b2b3e26081a8ff08cd6d2b08f8e7b7e90a2ab1ed7a41b1d0128522c2f8bff56a7fe67969422ce839a9d4608f03,ad4dd99aa71dbdeabf22fc7c82bb839f910a22e4cebf8317899d0af87279ebb321c442dfb9083c4676c16506c4006f18e8bf84ea9024b1deee4abe6f90dbe0effcebf4cb7b94d8a8b107c5bc3198277bef87c9760ae2bea86ac50c39a666ab09f276f2fa4c1eb5b8c37adc3b4c9de4bdc28074ff4b997518b44fe49b0d4e4f83cfe9e12ef7389625766a54bea82db3fb57276f47c418bdd5f20c8146c792dcb8e42c7abf09331f599318265776cbb19c65bac6dc4a683956c052ae5cea02f1e4ea690f9e5d3bf3a06a726f0efb6dab5350753ffa7adc477e9ae454c5e18f9d64edef0157d1f01fa78bf281468f14d79c39405d2b5b604c0ee116731c52c2432488c45a3e56d3f999855631381b5ef3c99a0352c16b92812a4889c1b8a72c84273a90abf29c7ead82f2e7c6de67e7369dc02fb0f1d62bb8d245030a6d26e930476171547f33b9c9dbcd542f04c97b0a278d24e2bfeea0209fa83d634afe65ec9e7a5550774ededffa36250dc5a400ae5fd6696f20e5fc6afb15f54c7240a24cf11bf16730b8e676f948304d3eabf315e95b723ffbde6d931ecf3be6c69d8cc82f31d1f499bbad8ada9654630e7185bf6c1d882dd700f7f1b1abbf384f58994d55c9e831aca847b8f654b070f424267685103bb339a4cd43df94894e912b64acb15aac65fd496424fdf02be7a96e161cb6a0034997ddc918f6fb604d6dd55b4d92 04e16dedc1227902baaf332d3d08923601bdd64f573faa1bb7201918cfe16b1e10151dae875da0c0d63c59c3dd050c4c6a874011b018421afc4623ab0381831b2da2a8ba42c96e4f70864ac44e106f94311051e74c77c1291bf5db9539e69567bf6a11cf6932bbbad33f8946bf5814c066d851633d1a513510039b349939bfd42b858c21827c8ff05f1d09b1b0765dc78a135b5ca4dfba0801bcaddfa175623c8b647eacfb4444b85a44f73890607d06d507a4f8393658788669f6ef4deb58d08c50ca0756d5e2f49d1a7ad73e0f0b3d3b5f090acf622b1878c59133e4a848e05153592ea81c6fbf,7623aea16ed0ac8af23a7911be015d44f93f3329ad1c0023bb9a6e486477d9cf5307b358527bf479fdaa473fe60cdce59c33c4d1db930057438cacb4006d2e6c327b3fb033be384ff07eb40a44ae4d39ea9794c29c9f3a91f679ef4690c41422b193929654d00d44d06fce9b35e5feea5c20cc02fd104a74764f3bbff273086023af4afb3a29f9f9836c17c5a883bfa0fc4d8fcc9808febd82df88f7dfc3f715c8b07db1f2b61403cb6f4f7b18f898fef9741e016ca0cb3a4b8f54f57db2f2bb63289aa38a7a9febde32089e4b479d9cf184f7d1c418b648cfe7e6079f7dc1cc35f22e31e620704736b44fe1e3a677caff61fd956883e6f6cb278284a05bf2b4cd9b832de2058fab356052c55b03d245baad53b86414441010767abea201e26f270649ea35b0479a66adb9439c57a77e84b754a7e328e4aed0618742cd49aef0af116462f3a5b24343e141fc51f6b9ff376a30989b17bf4ca9dc2acebd4f22d8eab082e62fff99cfc55ca5e7c4b86613356f1cf05a9a3e8fd79123fb19627a75810d3af44213dfda590245fb22b48e8ec5f58ee1d51beee4d6be0bdf7e8d18aeb37995d602e1ea1fc25d0d47d64d8a88b273fa8cc649c017a63f34c140a1d801f2558c8639fbeaacd1d961893e111450b85eca907cb3b66027587fe9b39d635d01c4c369589b9d8907d54a9b73fde7ffced9fd443b18892f29fdefd7b3e717b5 7c815c384eee0f288ece27cced52a01603127b079c007378bc5d1e6c5e9e6d1c735723acbbd5801ac49854b2b569d4472d33f40bbb8882956245c366dc3582d71696a97a4e19557e41e54dee482a14229005f93afd2c4a7d8614d10a97a9dfa07f7cd946fa45263063ddd29db8f9e34db60daa32684f0072ea2a9426ecebfa5239fb67f29c18cbaa2af6ed4bf4283936823ac1790164fec5457a9cba7c767ca59392d94cab7448f50eb34e9a93a80027471ce59736f099c886dea1ab4cba4d89f5fc7ae2f21ccd27f611eca4626b2d08dc22382e92c1efb2f6afdc8fdc3d2172604f5035c46b8197d3,a2cd7ae2955e2c2cfdcc374ad99e46f29fce072e2c085e0f02281a4a85a822a2424546410466299cca501ba5a86c12085320d2d0116196cd31e67e175bfab909e279846c8fa2cda475b0c9d604942d6332f3ed46e81d3dca880527debabe55bcae22c98ec42822bd1874561e7f8e8cc8092dc461577f2ae548580faab59afdfebf359847dee5271c2e972c12d13424a50a9b3dc3de5fa6f5b190f3dc060481118a595a8859ecdac8c57fb16fd4db9802c7bf344a68a0a91ca8629dd0a8fbb26fba0e21c4d953626f66c0b33d30c2569d73bbef7ed708212b2f66ddb9aeac459a11c9862cb5674885619d240babe380bbf23564f6d946d03aa544e348943a488c0fd223b36db5b0efbbe5c4e1253c3ff6c058aa95a80925523749bd228d89bf99f5cc681237fdcc8c872f652dae6306a20d9422818a8de2fa68c5a334efe828a20a48cbc49eb6d7ed779b00df50751446d0c850ff1f096fc50a03a8c407b8362ce03690d2d5699c70313b4f2d39e18abe998ee73de38308dcbaca27b8f6cbb3305b35c98b620a811c94aae44b5dfa2f8664fb678fb1d73dddf9fc27cf693db9d5cf3b46c185b72c33e3bd0f6ffc01108c8a65772acfc13defaf21596f2c9b9512f369588f6f8767ff61436ac67eca3de25d6c5a9746afb3b3464a49f3a583740c432ed806bfd16eab27d59a12975d7d09f7eccd67c2527333fa95509f7209dfcc e29d505158dbdd937d9e3d2145658ee6f5992a2fc790f4f608d9cdb44a091d5b94b88e81fac4fdf5c49442f13b911c55886469629551189eaff62488f1a479b7db11a1560e198ddccccf50159093425ff7f1cb8d1d1246d0978764087d6bac257026b090efae8cec5f22b6f21c59ace1ac7386f5b8837ca6a12b6fbf5534dd0560ef05ca78104d3b943ddb220feaec89aa5e692a00f822a2ab9a2fe60350d75e7be16ff2526dc643872502d01f42f188abed0a6e9a6f5fd0d1ce7d5755c9ffa66b0af0b20bd806f08e06156690d81ac811778ca3dac2c249b96002017fce93e507e3b953acf99964b847,a74b8704cca1f4234742a5c8ad6b138e58d56281c98d95f76bfc0a0ae309d3dc227543f9aee711c85021b89f259d002188f4e753dddc4340dca27b84445afa007a1e502a1903a857583796bb124ddfd64b5c91b69cd9b230f27dfa5d22a09b07fca1d860dcf316c22e57da3589fb0f07ecf671dcb150913ce8606da9ce39a5857b8382853056a5930f25e3647015b77b2df4954314f1f8b1c774de0bcd1842cad3bfcaf5dae8ab9d77290ddd2112ab060f5b017630c318a1a3df5c15e6f8aa348ee3f3c171c4e8b98cb4a2956fa240eb289561e7ca30eeaa9cf79683db7a2b0f28b3b1bf30bd5a62c96ecc8bd74d1f2d131295597c668838a8d3b20ce1a4ee4d1103de547ac21f6442df2ca10181319c76ae5827fd60eaba7c788cb369591e429b5dbbcd95049bfee2a5829ffa0417772db1bbfac2eaf112b9712a02c1ece830e17b22696aa6688e08bc705ea7f7010684d7006bc0a017bbaab1d6119b1b589b326f1936c82c470245298f2167d884398ed408814323d369bd1126031dfeb56a160f90359054400db3b3d267d42ffda5bb710643721871dd4de52446004af00ba55706c93beaf01f8d77664af27aad65c6d61fae24e65feb4310afe6ca5322ee4dd2a55ca5fd7e651ac8d3118c0fddae4b2e42862aaccd8cd2134340ddd760bc7918a461b16ecabb601861b58edee6e78ac3ff75055997aba8c0c57878aba5a7 d85588696f576e65eca0155f395f0cfacd83f36a99111ed5768df2d116d2121e32357ba4f54ede927f189f297d3a97fad4e9a0f5b41d8d89dd7fe20156799c2b7b6bf9c957ba0d6763f5c3bc5129747bbb53652b49290cff1c87e2cdf2c4b95d8aaee09bc8fbfa6883e62d237885810491bfc101f1d8c636e3d0ede838ad05c207a3df4fad76452979eb99f29afaecedd1c63b8d36cf378454a1bb67a741c77ac6b6b3f95f4f02b64dabc15438613ea49750df42ee90101f115aa9abb9ff64324dde9dabbb01054e1bd6b4bcdc7930a44c2300d87ca78c06924d0323ad7887e46c90e8c4d100acd9eed21e,4e12a03995768c80408869a5c45b174783ea2fb5e4c153a2c014a3fb8ab968d74c9b835d9c4c5fc304b5e68cf9aa72c2adfc2de961cc9a90e1d515a3234bb79da1d5fa330c03deff46d304f0f0378324be4fec285758b2de3788e71edcd05754366c71b783a26d105a48bbf51c4f4e769bdd19ca477d80fa55695a04b06a0970b98be48ef1e861f17b9540e63f54b6156fc2996b2d2ca69326e0cb7a4a5761b39fe089017322bf23b7b5ddba1490541843bf703508f5512117370253248f23f30dccf27061b8f81c1090cc8ed866263fb50ad6f3a027efbdaad7760eafcec0928ba40173a50c61596b75aa4d72986a8bacba61dadda139374d17843735136c8dc0e14c2ebcbc9eb110a682cb77a72e790c68e11848431441ff70cbbc513a9d389d349a63aad6a948a42dd798f1a576df57ed0613fff5f569ce5d24061a386b2a5b4b1fde6e3359ce4125241628b9a882ccfd34f266bd8b7806392d52dc8cced80c52ecb6321cf3b3c911d206809faf8fda3f918f93ff507089ca4bd647ad4b5498f0ffcc7563fe5db7bcd613b84edf4a95a4f8d29e3abe0c39c8a76b6fb5db51db09a21a48d3e2c0786b6a13351715f8dca25ef288c46631b25d55a7473e5059d6a16661f948d8a7c1b4d7a21b531f915fc5a18305b6fdaadbc1f201c9a09de221ada6de8baedfa4614e578156137fbf43896cb61ce38ef386fb68d55311c63c 3a12f8508b40c32c74492b66323375dcfe49184c78f73179f3314b79e63376b8ac683f5a51f1534bd729b02b04d002f55cbd8e8fc9b5ec1ea6bbe6a0d0e7431518e6ba45d124035f9d3dce0a8bb7bf1430a9f657e0b4ea9f20eb20c786a58181a1e20a96f1628f8728a13bdf7a4b4b32fc8aa7054cc4881ae7fa19afa65c6c3ee1b3ade3192af42054a8a911b8ec1826865d46d93f1e7c5e2b7813c92a506e53886f3d4701bb93d2a681ad109c845904bb861af8af0646b6e399b38b614051d34f6842563a0f37ec00cb3d865fc5d746c4987de2a65071100883a2a9c7a2bfe1e2dd603d9ea24dc7c5fd06be,8bb1e121fc89ea0f3d79ea823d876eaa74b6ccfab369e7e4783cbcd3701875f1be59b0f8b48c2587e7001b6e7ed1821e2649069e84201583b2562e5945af5cf734e2f0c6090dc8281969cc95c861ecaeecb1cda78e8fe119b60b05c54484bac951b7784ed025fb878e29215916c5886b85b24bb2521feebec3b8766ba14fe47ee0e81dad68b238905377afdbd55e41364a12181d46d2e272bbf1fbf41a83c29ed88361435396614a23730d84684d3f5a622a233ff1ad5583fa707db008e3eed5a9716219ebf3571fb1ce9842d4a37b519767b7392f008193de676f0cd192cd6d0cf651ee5f8331b0982f150a7dcc264c1465177ab98cc590bca81e981ad2e98e47d2d855c0a74895970a96994700a5d55cbbaea2472c4160da0ef3aede987a99065948adc558e7cb9a952495f70cede70ce0e3deccb798eb58941f38c4b13c28b2e5ca4fe3a7cf3c973eb3391b705b9e9e7689e264f878396f438c393eb49e70d6a2bb0a6a92f80fdc2c2f70afbb2a1df1ec4634bc0cfdc9d1239182dfcffd30096e11fc4a32bb44cf510a44d35ec3cbfc354e088e0b53932d0de4df83a963d902971392b74d95c475d26184559f6f9f5f91502a07011b9070f8e9be5f5d1e599634e3bced756a49ac7cb273396f7acdffb3be1e441e8d8ed0588d0931353736dc1d9e889650b503a4fdbf5df7b5708d4218404306b0e11aa08067b7dbe63e8c 1861edce46fa5ad17e1ff1deae084dec580f97d0a67885dfe834b9dfac1ae076742ce9e267512ca51f6df5a455af0c5fd6abf94acea103a3370c354485a7846fb84f3ac7c2904b5b2fbf227002ce512133bb7e1c4e50057bfd1e44db33c7cdb969a99e284b184f50a14b068a1fc5009d9b298dbe92239572a7627aac02abe8f3e3b473417f36d4d2505d16b7577f4526c9d94a270a2dfe450d06da8f6fa956879a0a55cfe99e742ea555ea477ba3e9b44ccd508c375423611af92e55345dc215779b2d5119eba49c71d49b9fe3f1569fa24e5ca3e332d042422a8b8158d3ec66a80012976f31ffdf305f0c9c5e,1887576149594f7fcd27145b5f535219bbc4313e62e7abb6393d6015e8e45b48a211300f8303fb9bf370fe0a117d268624bb741e0bc343487015872e14f84b1ec1e2faeb828f521ece9e7e5efb281dfef05d86bd8eb0b51cf4c46d94ee0afc72da29c3d77eaee07e24035a68792e8eab1e0b96282e1d95b1b9d36b09d6a2e0edd37227b0d29f9e490f1d6156dfce1554e69a49b7660d288ccb6faef9a40f656a90a825a07c5ee0730926cee14ff2694a3bd105d889c88a8ca1d271727dd0fcc0ddd1ca2ee955d02cf8cda7f9e3a00b4362c69ac631523345dabd396354ad862458736d1befc4bc35ef4775f02f017ba2eb9fff9229292432ab5603ba20342e627d380824050ff61c23b5e789df2e835fd56c65febd001ee6960c782b627f90a7087ee24d32a85d0d780a8911945f3719c5ceeb9c7024dcb112c0fcdd72237040c5e964ca57ee504849e3015c200c44ca3a0eec097bf718f6959c4d3e39455976f98db5fd84f01eacbc1b2b57b6483c9e3d58ef76e18f8fbfa341e6399a3d986834e315a2762d239dbb6d1efbd60ba4ee974523d2ec7a9f0a171484d3f09d59019fcbb6a480abebfc06a21dc5af8fbf1b5388278cf84311e56329a6fc3a9426517c3cc581c8c8eada1c656e568bf108f66287fb66a405eb307eda530c18db2cdee78d8de9dcb8e93f195f54086f875935f7736c7c85eaac106f00d28d6753843c 08d0ffde3a6e4ef65608ea672e4830c12943d7187ccff08f4941cfc13e545f3b9c7ad5eebbe2b01642b486caf855c2c73f58c1e4e3391da8e2d63d96e15fd84953ae5c231911b00ad6050cd7aafdaac9b0f663ae6aab45519d0f5391a541707d479034e73a6ad805ae3598096af078f1393301493d663dd71f83869ca27ba508b7e91e81e128c1716dc3acfe3084b2201e04cf8006617eecf1b640474a5d45cfde9f4d3ef92d6d055b909892194d8a8218db6d8203a84261d200d71473d7488f3427416b6896c137d455f231071cacbc86e0415ab88aec841d96b7b8af41e05bb461a40645bf176601f1e760de5f,ea520b7cea0750c8f1ae4d7e5c80e95140d5a980d68f48807e0408a0d17dd084575191ec17a8d5b3d7a458774c453124509aee866183dfca7636d743b6b5798c4d62951d7db5640d1f4467d8703e08411270f3493241aef38fb757f00f0ee6a66c732f138294076de25f0811e8e1baf602e9f38cf92e96acf630ebeccd62c2837dc0f361c014698b3ccf586d372bb0591aafe68d138e1fbf05d205a6124b0ae5f483bbb429eb1bd517c799fbd2b9a154fdb7f687dd320106793d95d2acecfcb4811c627b3287490116c5f5a3082b0c2bb3b703fb2bd92b65e1cc07c61e1ad67c0f5b45c33c981e56cebd6c12d00d9d33c5dac18a41c1025ad24798de28518e5faa6ceca295cd13254367f04cac72fe0a0fe87214103fbdcd9af3fde362d6b7c0997b86cddab824210d1896deb7c75a3eb92be415f450cd62caa1fe4d7a9da2e8b57f2c31999f81ca8a22936684133ddde9fbec522c92b928191220e75f8fd20c29a1da662455fe7b94a2292006052b354db4f03375acb65044c2fdaeb977ca8e81318d2ea95c3981ce76dd9292678bc5f05351d2b4a4a410dec6790dcfa90ab7d9f8d7fe71b1a1e22bfc3ef06f21c7c99f01e11060abd9122dd3ffa6f0c2b402d15c6d4e8f8524a5ae6f1248b6878170f8b4a7d95c85b04587066e340156d80b20e708f5470801f4a5f46a74dee3332fb0adf0472ccd592b2462eae969ac5140 d782abb72a5be3392757be02d3e45be6e2099d6f000d042c8a543f50ed6ebc055a7f133b0dd8e9bc348536edcaae2e12ec18e8837df7a1b3c87ec46d50c241dee820fd586197552dc20beea50f445a07a38f1768a39e2b2ff05dddedf751f1def612d2e4d810daa3a0cc904516f9a43af660315385178a529e51f8aae141808c8bc5d7b60cac26bb984ac1890d0436ef780426c547e94a7b08f01acbfc4a3825eae04f520a9016f2fb8bf5165ed12736fc71e36a49a73614739eaa3ec834069b1b40f1350c2b3ab885c02c640b9f7686ed5f99527e41cfcd796fe4c256c9173186c226169ff257954ebda81c0e5f99,aa38a2aa24d83c0055c05a4d8e5fd6e538ddecddbc6876d816900f4329a5e6d00a25b14ca626f3c9185590a151e438cec7164bd7135bf60afb78aa0c4148febb606c50a0449360952c1bd6c4654804102521315e457afdfa185565d96b6b230a4b36e0dbf215b19fb9b0bb3cfd6a8cc2e4abd6a1a50d978ebb5d351f7a65d39855e9ae57d7343e8ff7eb6fe7974791edf14861f30a428cfa9fa08e3ec4c4f1c6c5cf29a06d777459aecc379bf17e89a54b753fcbf3846835cee9fa834cb294ae3699893adc7de63d96f1f7cb60739e7d672a9d70078f9903f6617ead83ec5847424ebdb89b9a07762887f3a4ce8b7a839f0ffdee21822ddf92a73e85f112d2a6e023c620056e97e3435ccc172e768a195ba50f0238ad3a474fddad6ecd5b90262170dd026826f69cc2ace1d7d9aaba9f14c73c6f114ed5e5f75679679b7a2ecc81432bcba993c4e1caad6db7d9908b56e1404ee5080641a4d261d488457a1da7d5e1f09bfe9db23e3cd4be23b8fa84c93011958d57588a06d8df433428aa13cefd6ec348a52e0076564f0dc849058a601137835f90478b41bd58d24ed9b5e4ee5940a0963bb4fd7a2f5817be1903ab7d960f58ef88a310675ac0452ac6d1ee0cd65e2114865c4adf78b983eb7e894f28a716abbc766a1bab1858641c8cba3a18ba55584a1fdc2f80a61c36a9a56cd0289257ca0402ed99bc680aadcb29287119 5fce8109a358570e40983e1184e541833bb9091e280f258cfb144387b05d190e431cb19baa67273ba0c58abe91308e1844dcd0b3678baa42f335f2fa05267a0240b3c718a5942b3b3e3bfa98a55c25a1466e8d7a603722cb2bbf03afa54cd769a99f310735ee5a05dae2c22d397bd95635f58c48a67f90e1b73aafcd3f82117f0166657838691005b18da6f341d6e90fc1cdb352b30fae45d348294e501b63252de14740f2b85ae5299ddec3172de8b6d0ba219a20a23bb5e10ff434d39db3f583305e9f5c039d98569e377b75a70ab837d1df269b8a4b566f40bb91b577455fd3c356c914fa06b9a7ce24c7317a172d,42db17a940111f1a93b0d583f6173991252286bc5098e136d27196697ae45b878767e17aa8e826dcde186cd76f2024e6772a0dec4c4a8db71959d75cfef0f20cbccd85f15ab5960c0ccda5f14ba0f02958752a0494d4b50e2cc67c554196bfc061f651440c6812cf5319639f93df1fe51d1511df6a3a6aa6538f46ea2d00a3a0f64b25cc9ee8ad05e321649987c36387e2d31da77edc1afa9632d77ee2d4ed54992bd51490a34dd743dcec567de957d55505d1d8dd43be3309f25ae61275203bd9743f3027b9f34b34db7504c2d7fd1aa99b936e7284f9e252df2e3359d868c0c83ab140e14c01b4b650d99ac6dc54ab35dd825116ea96c5fe88822b2d7182fbe9b3f3cfbedee129ef0814c171a207fc9793e1eb72edcd605c3e3b1534106093aa550bc8cff8de3c5d7152f18c87e161da0fc90594161f03b0ff9f9edd41f360db7347b067d8fe1e901d78a77f1ec44e33ed7aadd463c7d676e50b03a92b5417628cf986d5f93197333bfeb5d7b6a7c7863707b7ec032e3f5c62ca6a02938313140e62479842f4cf68a54a14ae0ab35538025920f317039169636f35f02a8e05c344e15492ea02164c62392b0795d4889f7ab68ac969b3b096c21cfe179833ba5fb857751c4713fc928b4623db593c9458aa36ba3b3693e07c3c5c84470f77e5cbdfd9770877a0999dcf8ff1ae27f51b65aaef9754e8a71739ac00be0f9458e0 6172f1971a6e1e4e6170afbad95d5fec99bf69b24b674bc17dd78011615e502de6f56b86b1a71d3f4348087218ac7b7d09302993be272e4a591968aef18a1262d665610d1070ee91cc8da36e1f841a69a7a682c580e836941d21d909a3afc1f0b963e1ca5ab193e124a1a53df1c587470e5881fb54dae1b0d840f0c8f9d1b04c645ba1041c7d8dbf22030a623aa15638b3d99a2c400ff76f3252079af88d2b37f35ee66c1ad7801a28d3d388ac450b97d5f0f79e4541755356b3b1a5696b023f39ab7ab5f28df4202936bc97393b93bc915cb159ea1bd7a0a414cb4b7a1ac3af68f50d79f0c9c7314e750f7d02faa58bfa,82f8c16b8487e008284598fed9c5670c86fe35c8dea51ac59d38722829c94094bb2766aa4cda3139a15dd2ac0309253ec1a15b2969f84899637d3e2a5d55ed1e87561a546a2a7c190008bcf3bec233ebd1dd55242d7fac3a522c6016e62670f66edb6290afe801630e2bccabb450e4d44a9bd8f63d4b04e9f280a2a0972ab229351906f5f32de714867e8f04d276488f2aa5e62db8b634287404a73723abb7e152107a6da60f0c7efaa953db706398a09835e5edd99393db5a162fe3e564298395fcdaae8fa7e7a9081b8e14fa0e99e433e0d44326dc2e9e33378ea719ef780d303589f0a63841b5d5d74ec6e2bb073b55287a6419bc6af759d13f8c8875c372c12d392d7f80608412eb9a92a786048bf9a6f03d11c48f48b96fbe8bba329268242a5463c49b112ad71b8ec42a9a7f272f25819509e5c7a10d9c9f1a386e034be2a89ae28917cf014156211c795d9d6efb267d8f2bc48b5aa767cf8269a6e349701e77ef69f03fbb56c8e2a0c90905f1fda649b75d716c67894e932c63b13911c80339a1df4b7ae2035c7572bbb599e66e7cd9cf447f4f1f1deb63f64508ebe19485db3eb98607f3c87dea60faa331310fb4ba5730ce4024e07b4b134286472bc7b6c816c3f680618941f96539b81df82cd15edd426206f363a9e487c9fadbbb9db90da8f2d73e940c515a7b4ffa07443d35caa0c89ee9e511d66c2c8fe2f0ff 5668ecd99dfbe215c4118398ac9c9eaf1a1433fab4ccdd3968064752b625ea944731f75d48a27d047d67547f14dd0ffaa55fa5e29f7af0d161d85eafc4f2029b717c918eab9d304543290bdba7158b68020c0ba4e079bc95b5bc0fc044a992b94b4ccd3bd66d0eabb5dbbab904d62e00752c4e3b0091d773bcf4c14b4377da3efff824b1cb2fa01b32d1e46c909e626ed2dae920f4c7dbeb635bc754facbd8d49beba3f23c1c41ccbfcd0ee0c114e69737f5597c0bf1d859f0c767e18002ae8e39c26261ffde2920d3d0baf0e906138696cfe5b7e32b600f45df3aaa39932f3a7df95b60fa8712a2271fcaf3911ce7b511b1,706ca15167517d46c47844d044d0fc94cac5d23b90bdb64ce0a2df052ab37c967e57a476fa23c4d3c160c47371cbadc07a48d6a7c0e0b8ce8b337cac62e74e10b68c6fbb109b03547ce998780b605429d6e3061334c702b218c1d6686e3e8c7fcc2c4dec034b9fe68572b45e58de9661216d6a232d13a0eddda45892a4abab666cb528694de50a50d1368be99d257bc8c245429fe55000d3c9cc861fe9228e6ebfb7ddc53148b530e2ffe153b8f40007ed321b4464c0bd5de00c9791073b199ad57f6c242f7cb772ff05a06d010d156ad35dd0ed74c9593855576b1c7a4360770aa88bbf56b65395b163471e4057d27b59b554eeccd9ab8f24f457e400150c5f83b55d703620d68ecd7a01a9b3fec468b75c0f8bbbb08388318d50d38becdcd30f8644a2ebd11fd8e1d103af5f9b64d92bec64fddeffc73d9932871ccd1dc62515f0efa438393109c638f5c11405fd923d784b217f3417bec855a7ca290253cdd902802ebf400015cc2af646aef63684abb39bb98aa598ab767ac4df96cdf631d0500bc61dc822f2c54d761f0c926e023310ac11f3748e8a75564fbdb7039cdd3a42b601339be64bbda4b3f70899700fbda55d1337f5e33f5b00df97e6ca218d212eb771ecfe27b265a8ee8ac9d9f34baf279c49b318ebfba497ce77233cac4a9146ef5df7b93672a553a3ec46dafe8b7f93f233161fb91f5bca89db4d5f2c42 03d625488354df30e3f875a68edfcf340e8366a8e1ab67f9d5c5486a96829dfac0578289082b2a62117e1cf418b43b90e0adc881fc6ae8105c888e9ecd21aea1c9ae1a4038dfd17378fed71d02ae492087d7cdcd98f746855227967cb1ab4714261ee3bead3f4db118329d3ebef4bc48a875c19ba763966da0ebea800e01b2f50b00e9dd4caca6dcb314d00184ef71ea2391d760c950710db4a70f9212ffc54861f9dc752ce18867b8ad0c48df8466ef7231e7ac567f0eb55099e622ebb86cb237520190a61c66ad34f1f4e289cb3282ae3eaac6152ed24d2c92bae5a7658252a53c49b7b02dfe54fdb2e90074b6cf310ac661,a90a149c4b7ba649888f90721e9ff91cc3589e2094b07909959c9a15ff010c610824f7a49ad3ca2864089e93ad7075c1966033ab55e9263871ddd56943d568fe0867221034994b74a3f855544e77e313a29efba367f309243db8a3027eb4da5371439cf39c21eb57823e1e6c73c0707356b68828aac6c8fd05f222f4c58b33cea1aa6344dc33fa88d9a5becc263b7cbf00045378910814c77c2224e56d913d2cbdc48ea6700de0e0306b499a3888f535274069e7ed493c12d46d23b7344cdc11b3433e39ed9cfaea6787704ffd63bee0072ba60f526fb52daddb41ec7e8216ac2a79bbe27e315a2e2824e1dd0bc2943f92393550aa6dc75f1c9755e5d8f811cedbc2139805d5599c1e1f6d4f56aad38e91ffb529a4820f260d752a93d7be57bc2f75234fa615ac72afec7619e0f26071d8a3c90f1fb486497d5af0ee45fd9d0b4aa0e07201b9e5f277e73d48edfbf75df8c3f1a635a733591615c392ce37738851d2ae847c6eb9ab5d91dcda7e953041cc6cf02f0e6604e8ae5756de528645feaa0e8f1c5f6f0c53abb72f84d0397a39a7fa3c7e8bc72b237e0d8b81c91ed18e09273ca20b763d34b779bb79d95c3749aaa703de53fd7fcfb361e2d3e13068fa076021c1373ce99dda0ddf931d2bedd095a3f95e41a0b09c56d01253f29558348d6f841908984e3096a7a0da6de77a5db124aa442edc394126c2f67b1b4a0dee 2edc282ffb90b97118dd03aaa03b145f363905e3cbd2d50ecd692b37bf000185c651d3e9726c690d3773ec1e48510e42b17742b0b0377e7de6b8f55e00a8a4db4740cee6db0830529dd19617501dc1e9359aa3bcf147e0a76b3ab70c4984c13e339e6806bb35e683af8527093670859f3d8a0fc7d493bcba6bb12b5f65e71e705ca5d6c948d66ed3d730b26db395b3447737c26fad089aa0ad0e306cb28bf0acf106f89af3745f0ec72d534968cca543cd2ca50c94b1456743254e358c1317c07a07bf2b0eca438a709367fafc89a57239028fc5fecfd53b8ef958ef10ee0608b7f5cb9923ad97058ec067700cc746c127a61ee3,fcd5fef0de750c6be7615bcb850676e9e83299c522bdc14fbac162f927b0aa4ea6dd76e43b1500c72be0d569566b57054b9340216904d518ecdb25ef39a62891290a1034f262a5e2c0fb37333bbd24323730cfd40fc161edc37eeb7c69769d3ab1f1454560ca78fb96cf133689ef8e75f57c2442e2cbae4f5c648666bfc7fa5da87e7c0dd4816292dfd56b2bcb383b3ff971185b724430f9596f3509c767e159873614b1d4ec45fa8586ec2321b791560785e5e3ce13ad5e8e1550a3290175acf2d78cdd17c0ea205ed7c1396bf9dc0844168ba3a66b4cb01c22629c80577de68d72edb44b419b13a2db6d67877d9cc0a0201c14dad69f25c88c3418ac45ea0d7ada58a02bb7dd0c276dfab29164e1844bad901acb6374ab75e21bfe2f3591b2c8f111a4606c8c52d85b4c073fdbbf25fc81758214ca172fbfe1c6b14476532f35f981c312739ce435f7ad3d0785dcd648e2a5391b64525a8785f3e06446c6bc1e09bfa19c7ce52651bfe1a2e355cd7c1c9ced6540d33194a2212b2a8768e7347042b560f68b4e22e42ed8f51c38375f9fa45c133a90d4f6f17cd5bf19dc9e1035df78f7e0077411bfd0fda23e6759388afc45485bf271c8fdb316a32b898c3d6dcc0738b3aa043acd1848fb7c6fe86a844fc764953d392569520e78fa11bcd6b0af3be8e7bcb0006f56881889cdde27870fe7c9e703f57b6cbe0d6372f2322b 90b28a6aa1fe533915bcb8e81ed6cacdc10962b7ff82474f845eeb86977600cf70b07ba8e3796141ee340e3fce842a38a50afbe90301a3bdcc591f2e7d9de53e495525560b908c892439990a2ca2679c5539ffdf636777ad9c1cdef809cda9e8dcdb451abb9e9c17efa4379abd24b182bd981cafc792640a183b61694301d04c5b3eaad694a6bd4cc06ef5da8fa23b4fa2a64559c5a68397930079d250c51bcf00e2b16a6c49171433b0aadfd80231276560b80458dd77089b7a1bbcc9e7e4b9f881eacd6c92c4318348a13f4914eb27115a1cfc5d16d7fd94954c3532efaca2cab025103b2d02c6fd71da3a77f417d7932685888a,d4c1f39098d123b0dd88504ff6ab424e31f5d3726efbf86500ce730bae87ec671c97f768f9593c8411b57e306b0cb394f33b866493bbfc3f089fa4e875858fbce814debb905fa7249f7dbe737f5f6725cf76d2a50b319d96bfcd55e03a6e923b01003e6d5976a66aa5250c337c9c4c402b9733c8f626789fb23ff1043494a73960297ca9110d23def1d72b601f6c42cf83938003b3a386cdded4a70b24975c958597894fd6e2c412cdc6e32ea7f398242f84d4f4bd469dee9ad10b717ebaa26f2481224f47135219231279c36867751a476af60ac4af8f151f301cacf5d7890d62a135b44149cc7405208212b7547ec0617abf96a7741eb2e08d18aaa17357b4f2ddab92257e893cfcb91bdd73dff3f8e6c28fdf38dc89094c719e69508af7abee4d1403e0f139348632a45708aab27d4403f5d5b85a81ac72ede9e2448f1fb87571cca3631bda9f9d0dc060000b03450fbc7d98af74f0b0a8a1bbdeed01c4c8300b05e05cf7af7824b246666eb53119fcfaad3c7aaeefe0274a55abc01abf0a38189e46cd3ce56f0a4db8e9b498eec68e03db7fdc9177230dfc72f45a41a7064f42f3c527a5e5473b2f68d1c8ba960bd3b458be2bef2c3623b38a66266eacea3cc93c09f4cf566327e78ec39ce5541e48142fef380af5161ed9c63724fa16384f574b1d1cbc3f1c852028cb9a8d1f411d6ac119e11e6202e566b49341d40d19 2969447d175490f2aa9bb055014dbef2e6854c95f8d60950bfe8c0be8de254c26b2d31b9e4de9c68c9adf49e4ee9b1c2850967f29f5d08738483b417bb96b2a56f0c8aca632b552059c59aac3f61f7b45c966b75f1d9931ff4e596406378cee91aaa726a3a84c33f37e9cdbe626b5745a0b06064a8a8d56e53aaf102d23dd9df0a3fdf7a638509a6761a33fa42fa8ddbd8e16159c93008b53765019c3f0e9f10b144ce2ac57f5d7297f9c9949e4ff68b70d339f87501ce8550b772f32c6da8ad2ce2100a895d8b08fa1eead7c376b407709703c510b50f87e73e43f8e7348f87c3832a547ef2bbe5799abedcf5e1f372ea809233f006,d6fc1e61d2bc27ca5dd5acd290c2831070e66c38f03d2dc91184aa9eaeaf03a28e009a1ae1c775f4274b3ae6b5491c9b0c838cf90d185fe94c49ef46ababa62d6ed1f550d83466efc6b97789ca36ad1a6a3e6703a5da9764e47f29c8096e3d317fc7aff0b79b1c278610afe3f5e7fa7fd52fd36cc9e7000da809346281eeba1ee9bb06aad61f3e02cf4a5bb7b211e2437ed21437fae78378f28b14184b7de7e80e845837a483c0c6df8e233687f71f0f9745d585411f103356a0c474f9238403e40960f63a3418199325ea6e8eada31c94f78cff1b83a2efa4e49045e0ce34a5c61025399328cd7f79a1e4cc792d8ae9f1aa954235b515158be5f4064b889c14a3a83ab59cf26945dbbf70f3a5f3bdbe8674546d6df384c40d56b286d309a114871bc18e144d2334c88c32f141f6dfa70859a9ff7d4996bd3faba0299794e861db8be8a324822c4b1dfbfa70f8d9149c3dc01e0e556dc744c98fc2f92c8600c856bd174759af467d6618c4347366ce04d06a0ee4feb9a27b79bed01beb7dee41859c1306939d55b0e319dd2e0e001f6174361cb804cd3ac3332b8d8a1d8204d5255f81faa0bdc29ae71693586c987e35c81e314a3848b03cf7b37eaee2ad6ed4736e1f20a098ddaec612aee17294313da16453d7901cf80fc729962206ad4820b00e8ef0d999857832256e5b784e8a89dfddd38f6e15de081a82e19a2a05d417 721645633a44a2c78b19024eaecf58575ab23c27190833c26875dc0f0d50b46aea9c343d82ea7d5b3e50ec700545c615daeaea64726a0f05607576dcd396d812b03fb6551c641087856d050b10e6a4d5577b82a98afb89cee8594c9dc19e79feff0382fcfd127f1b803a4b9946f4ac9a4378e1e6e041b1389a53e3450cd32d9d2941b0cbabdb50da8ea2513145164c3ab6bcbd251c448d2d4b087ac57a59c2285d564f16da4ed5e607ed979592146ffb0ef3f3db308fb342df5eb5924a48256fc763141a278814c82d6d6348577545870ae3a83c7230ac02a1540fe1798f7ef09e335a865a2ae0949b21e4f748fb8a51f44750e213a8fb,f61115ae2fd5442877d08e39a57df8d4a5f117d57c2688617a8da64f9482f5a817e0d3dfe41a9cff331f4d5e3240da38e43b7b87925fe378512cd83172fc3cc2396a8acdbf5010ca576603581bf7df6d7529423709b30db81620b9f660b5aa82ea6c98656da27b4709da85d364ec015c2eaaf2aadeda2c040badfab16f7c2ae39da6a1691057301b7c3252884cd9ee079e68857d6d3b7f4f85556140db03421f09e98b80a8422500a349b5c0d8ffb25433a4121b7682f8517500930e5f2766c687846553c9f76de38a0ee41f76d3a22696b95774bd5eb747f6445d8044147ee38b127892f4b0b1932470b454f8f1bb697a2f6659ab13f3e2003c97d292a7878e12ce47aa9619fcfe2135d8890710b2733df40fc75dad57b99042e4f54aea9332ed52cab8ffde5195eda05368b09e9fd55731da20012a7d255aaa33d74e22917e58bd546ee90947a16044b14dfffab05916c382d1f038b63d2f20dc09c117c8724a4db3970b7cb143b1522d010881fe6663410db3400db33b62a6e70dfd48c2fe773054e1494944b60fc5d3bc803027c4b12e6a230fe41ca4d072f3628d20782cd7de4e98a29df083fef503e46eefa787f8b0e9b1e7c884b9122977532bd71fb63120c1069156516d265fe3559b18965e968b9bbd653484866847e76262d0ccbee8fb0314a8c40b8c35725337ca4a241592e47d5b8981d3212c62ae7e25f27495 6b860d39725a14b498bb714574b4d37ca787404768f64c648b1751b353ac92bac2c3a28ea909fdf0423336401a02e63ec24325300d823b6864bb701f9d7c7a1f8ec9d0ae3584aa6dd62ea1997cd831b4babd9a4da50932d4efda745c61e4130890e156aee6113716daf95764222a91187db2effea49d5d0596102d619bd26a616bbfda8335505fbb0d90b4c180d1a2335b91538e1668f9f9642790b4e55f9cab0fe2bdd2935d001ee6419abab5457880d0dbff20ed8758f4c20fe759efb33141cf0e892587fe8187e5fbc57786b7e8b089612c936dfc03d27efbbe7c8673f1606bd51d5ff386f4a7ab68edf59f385eb1291f117bfe717399,3bbf30faf9241c9e3e27ec2c17ab24aa3673799371528cb98a6d9b91e553553680505d7cd6590377ab54e5dc7d7c72035300af651ab0ea52aba9fe1d490ee5c95b146138f61f957c5cec8d4633175c99a00590ddb987d2e032547d99c691b32c12d7392742a5ae47d03b5a08a544548bbec45b9580de1cecb7b9f06a88614daa116d7200dc8e81ef3c7c5a716044133d2a66ffbfa35e1668fed9c1045da77df92564f60087d173f71b75f040bc6cc149234659c1213beef18c53cdefef2ff466a2f16823d7659e04ad61f6b23ddca8bf35af892bfb8a952df4ed254ffac52cf71f4c872ef15ef11fae9967fc8f1c218e7caba5382936f4cbbdf7f41aa2a239bcf36fe158b7d771becf8981ddaaac31f744d949396623cb3bb754189fb5e78dd94171c1bd6ad3953dda6d4dacd3b57d37b1b73fab0d2caa0b5b3f6a2c9f324f4b93c912991e50f8872bc276451969ff379aaefc3c710de16128136ae0d1268d106bbce2aa4d2db0c5edb171dff104df4f7d49fe017c82083dd1e9f7dee489bb38ce091c222c3a0898f17a0da1d4b2830c7b7c3c372fdf2a4e9cd7b468107513d6e3adcc91f662218a7364a7340966a4d692cf394443203dce8b33503aee6c1259bbcf36351af93ef01764be4863759ed0abca9e59ca6004f2e5738af7efc7be8f9a1e106551b77aefbff9dbe99ed5abb12207cf38f7fb9ba77d776fa0df3bfaac 6a01830af3889a25183244decb508bd01253d5b508ab490d3124afbf42626b2e70894e9b562b288d0a2450cfacf14a0ddae5c04716e5a0082c33981f6037d23d5e045ee1ef2283fb8b6378a914c5d9441627a722c282ff452e25a7ea608d69cee4393a0725d17963d0342684f255496d8a18c2961145315130549311fc07f0312fb78e6077334f87eaa873bee8aa95698996eb21375eb2b4ef53c14401207deb4568398e5dd9a7cf97e8c9663e23334b46912f8344c19efcf8c2ba6f04325f1a27e062b62a58d0766fc6db4d2c6a1928604b0175d872d16b7908ebc041761187cc785526c2a3873feac3a642bb39f5351550af9770c328af7b,32ffbc063291bd2c957dcdc76632dd1bce0dbfcac549228d277d81b6abba904d43330ef8081e164d8fcaf520e12b388c40168295a63d365b57a7694d4c50812b99c86e036116a07f0164b7088537688d4baf1e0fcdc84c6da8d92789466a606f1ee25ce7461fa65df04bdebc24a3a4bac3b02b469c8e85f53d9481dbe244dc67b8bce84cc7175113d4d7b2413601e9140b7802d9fb712938e9c5034ceea753b7c77c08bc1c03d511ed0b4d5007bbac38ee76b675b73aef8623ca9ccd579e28bae7d695be25fbdb673f3401a75d5a57d142034a7bee554ed30cc7f03cbb363c10a54f818937ae468f5845ada4f9a2a1bf6887105879da745aae64d87f26f489a622370405ada3d3688697db8f04557736c51725aca02e4b76f6a9e88dc6d52d5a63806bba1bd687faac522d7b5b0a8d6073283659056e784320822eaf70666180adfdba2675b4ead6f6b2ef826e7598bbd8c1956a15c1864d249368900d82498297c3e77a19ebe20a111d13fc03ca88d9332f919ea4ad15be8e397aba0a4e2ba85f3fa5999eb553780f0d2f35d76a63b0106406fc3b4550476572e1464c986870027849ada0f164b48b839ecd3ca9afeadee3f63aa6ca06c635990922995db0bb99a4ac4b7f3aac52069f3130660ae0f074fbaa1d103a086b59aee4da3188cca3227670fd43597abfc1a2f6cfa67fa24ef0b20b4aade9ce8e68cab34111d10464 b3c5e74b69933c2533106c563b4ca20238f2b6e675e8681e34a389894785bdade59652d4a73d80a5c85bd454fd1e9ffdad1c3815f5038e9ef432aac5c3c4fe840cc370cf86580a6011778bbedaf511a51b56d1a2eb68394aa299e26da9ada6a2f39b9faff7fba457689b9c1a577b2a1e505fdf75c7a0a64b1df81b3a356001bf0df4e02a1fc59f651c9d585ec6224bb279c6beba2966e8882d68376081b987468e7aed1ef90ebd090ae825795cdca1b4f09a979c8dfc21a48d8a53cdbb26c4db547fc06efe2f9850edd2685a4661cb4911f165d4b63ef25b87d0a96d3dff6ab0758999aad214d07bd4f133a6734fde445fe474711b69a98f7e2b,ba2b1cec1bbb46ea19af7a869fdc73cb3791708defdf530dc9999e9510fcb02aef571b3c5e7258d86dc80edb53b71644110b9e82c239ff17ef523840e6af4d597d814d4e5ec2ea98e451c05318402d5bff6e6e573565ab640e00bf6f8c3646b3f6656047c60ed43393af7f2d8df8915a0f6f44d69fe193dd5617fe39bda638e4ddda771b0e771318a53adecbdbff07d6cfeaa04a837034c6ea0e70c8fc244304804e0e890f31f951007a2f897bf3f00221b63ea3dd8d9d1dd3608596ef7817190d56d36eb99266f83b7f1a2080f7a5405cde86017948bf977c6cc78565b3eec570b36fc06566909951f31cad6094f296f759e858bf7aa9298b2f4f7f5c3167c145ec126c40f6e5dccd87c82489400ff8b9b79b19e472596618eed3fbc6fe5545bb3276ed710ca128a3c2fa9b831fa6fa3b126380c4baed23d9186fac830891f98c81d401a6513e139f6546f065e8af6e1a9595218a025d8292176f8acc4acaee6308c08db5215fc0064d7279ff6165033e0946fb7c10bf5dec2d26950b2abdf71ae2b5bab856386a25117214d5830b7d5e250fdf200cc5eea0085648fa2aab6eec363da41afd82e14eda957ea3ab7c65100f4a8071aca6f1891b5465b7c46caa9612ccb0875369cec4bcf9d99be35e03ae57c83fc80903afe25ecf23d016cf6989eda5b900efcf59c529fd299cf155a1310b239cd364301f520d16c74e270d0d 83af34279ccb5430febec07a81950d30f4b66f484826afee7456f0071a51e1bbc55570b5cc7ec6f9309c17bf5befdd7c6ba6e968cf218a2b34bd5cf927ab846e38a40bbd81759e9e33381016a755f699df35d660007b5eadf292feefb735207ebf70b5bd17834f7bfa0e16cb219ad4af524ab1ea37334aa66435e5d397fc0a065c411ebbce32c240b90476d307ce802ec82c1c49bc1bec48c0675ec2a6c6f3ed3e5b741d13437095707c565e10d8a20b8c20468ff9514fcf31b4249cd82dcee58c0a2af538b291a87e3390d737191a07484a5d3f3fb8c8f15ce056e5e5f8febe5e1fb59d6740980aa06ca8a0c20f5712b4cde5d032e92ab89f0ae1,481cf76e2ed1a1eb74050e9632a3bce4913d2d516e251816a2d55706314d6483b955b87b0a6ee013f248e2ab4517b800e23c8ad85926c36eabab1f2c36625d0492c7f001760e3715eba80aa912f5e3e1a7918d1ede2fa7fdcbbae23ff75adb2bd88527bce6f02fef73175487781f26c7c7dbfd04143b70d636217abf7ef69364b8b7c493c64434dd1ccb523e5cbcc81211a64fefa9f41ffdb38d9d8d5e0a9e51be38dcce5225652cab5a0ef8d8ee7dd175b929aba19480299176d7122ce1a763345a091aeb8c5df8ab37cd4d96c3230e8ea847c1d28986d3398dea80f2c48c3b4406524bcd4850dc02621b470ac7df27372d95822795e8a2d81aaccd72f535110fa01fdf0cabd7d848960603b80758406ffa78fb6c68db4fdf40c146318c2d296cd1a5bd7c1e11ea967b72792a3a7fbac9089588d3fb555f122f7afb499aa3b3c43e07bd3d8f9fe980213c174d37db9fbc8ecd318cc207689766a327614ed6b01bb0a5a2cf04f5b54edd97be72e5f894328ee86a1c9d2ffb65c9fd0fea4ba865d0ea4f16def67ce1d6d42095c1c8488376a4326396fe3448484754153b2d4a94c442bde7cf67e8b9994e958d3cc17d5b0fd7a4f203024ec29cebf40b549f2936cc6c196ab83ec8c4585d28e31d3ecf5bb59ab24b2cc6908e51a9bcd5bbcfa92c02e61b08ca7e3aaaed73c450909c8b9bdb422ccab0a86c5a5c3c10a634b17332 a7ed84749ccc56bb1dfba57119d279d412b8a986886d810f067af349e8749e9ea746a60b03742636c464fc1ee233acc52c1983914692b64309edfdf29f1ab912ec3e8da074d3f1d231511f5756f0b6eead3e89a6a88fe330a10face267bffbfc3e3090c7fd9a850561f363ad75ea881e7244f80ff55802d5ef7a1a4e7b89fcfa80f16df54d1b056ee637e6964b9e0ffd15b6196bdd7db270c56b47251485348e49813b4eb9ed122a01b3ea45ad5e1a929df61d5c0f3e77e1fdc356b63883a60e9cbb9fc3e00c2f32dbd469659883f690c6772e335f617bc33f161d6f6984252ee12e62b6000ac5231e0c9bc65be223d8dfd94c5004a101af9fd6c0fb,47929c7d0c4db7f9ebaef5ea93bbc7b255c8e249edf893257c7aeb996cc8eeab1a6ca4520f4d4257144cd5a9a850a372bd00dcca339c4781479e976b7508688dc63783ca9ec7a9fb8196721c8c24aff5bf9385453e9b85a1f7fc75a029e09d45910dc24f1304d1e51ec702e79dc731b6120596bf3df30dc0f756834ac0bb94f99243eac8910015d10dc618252a77d8b900c4141cff2461c408c19b978d1b58e690815c0c07b901137a45f045abbd85428acf51410135eb27128ec6725062665d1e6a6b8ebad3b81d36770b0cd14303b9264d25dfee14b27798e22b46a77adf456fdafeb6d597f7e3152aad40e29ab7e7808a4e46f43e18856518ce6d716062029024afe0ef0a7f3783f755977f8b10eec658aabc20b2ee0e8d3ade73e2a7e78e4cec3c09ada3089247c678238580891ada460d60da297a4eb7ddba67d117e21e7461bce7cfc7573352696b4643d6d9c9ec97eb431f6159ac438479bc6547ba04552748171f4aeaaa2ef0dd7eccb4abdb2e07ab536f0183516b1dcbf0e12fd134f9ad85b854afdcce14c1c52d0bf1ee1e52a12fdd63632d9df1b78e7899b03527da8597124ae3c8797e6832138508ab89069bf692a9e5d102ca20807a4bd5033d7bf7c918998d3d52b240b8449d12b402ee7f50b211f597f1bd39b69a4dff9a0e6dbe347ac1137b3631dd15f97217a5bfe2c6579bc3c44f8789ded23efec51a64 a6fe30dcfcda1a329e82ab50e32b5f50eb25c873c5d2305860a835aecee6264aa36a47429922c4b8b3afd00da16035830edb897831c4e7b00f2c23fc0b15fdc30d85fb70c30c431c638e1a25b51caf1d7e8b050b7f89bfb30f59f0f20fecff3d639abc4255b3868fc45dd81e47eb12ab40f2aac735df5d1dc1ad997cefc4d836b854cee9ac02900036f3867fe0d84afff37bde3308c2206c62c4743375094108877c73b87b2546fe05ea137bedfc06a2796274099a0d554da8f7d7223a48cbf31b7decaa1ebc8b145763e3673168c1b1b715c1cd99ecd3ddb238b06049885ecad9347c2436dff32c771f34a38587a44a82c5d3d137a03caa27e66c8ff6,401a2897fca682a6949d88f939ecf943140eca42f90d86d2dc301efea2dbd4c03998d686dcec124334f0c5ba7674f25cdbf36fb9480e8db2111ba4e78221d1855893a526f97535936aac3d88d8908786bf5a9334eee1a4d9b346a95573993db7c9c7a75ce692df5118963083b778865396501845e12e4ddde82035b03a6c43697cdb2b1c5c4eb24d0d484acb105549290b9fcd5c8b4ee31d4eb542a2c9637d8e34687b18ab2dcf92a826877f9f1766ecbc43e3879e481c4b6ad994586f110818a20b6f93c8ced8c1fbc0b54572714ef722e83046a93ce23d118e494969d5bd1a9e9c744c5a56d193d2bc7054a4a0bb22987aa2ca672e69c2b733c860f292c4f218557b7b921c4367b611e1d7fe30cf454eebf09990c5acd7b43a174a92e0b8d8180dfd409261274ff09f55013a7f58242d29330426bd4d8ef8365e4de86469c436fc0fdc3b858eee3e29c2ed6f650266a7b34d2a0e5ed438e60891df92fe6b950d95bb99f90344fc5ef5b210692059e9f859a476a3aff4bb478f5dda80629e236afd3742e35f46046bdf1522590562c8337c39fd38b8f57cedd49198f8242d951330fc4d0bdf5413345bb7315eeb67e4b1d561d185fadf23c0979b036d885391643d7514b3fabcd16382ccc49e6b7c0707b90ac0f86176dcf9d7f1dcd270374d2ab8e1e9fafb7dec0f952fbd4456c9e7fcda80cf0a46ce98af6e9b588a370741 83167ff53704c3aa19e9fb3303539759c46dd4091a52ddae9ad86408b69335989e61414bc20ab4d01220e35241eff5c9522b079fba597674c8d716fe441e566110b6211531ceccf8fd06bc8e511d00785e57788ed9a1c5c73524f01830d2e1148c92d0edc97113e3b7b5cd3049627abdb8b39dd4d6890e0ee91993f92b03354a88f52251c546e64434d9c3d74544f23fb93e5a2d2f1fb15545b4e1367c97335b0291944c8b730ad3d4789273fa44fb98d78a36c3c3764abeeac7c569c1e43a352e5b770c3504f87090dee075a1c4c85c0c39cf421bdcc615f9eff6cb4fe6468004aece5f30e1ecc6db22ad9939bb2b0ccc96521dfbf4ae008b5b46bc006e,8e756b09ee1679dfb957aebc5b55ccca4414aead58229106040a1a58f4768d241a0869a3a7d682dd937fb13352f635ec3d57838469ba6ab93a9dc86ef3598f53e044fea98301971a2182a1725c32bf5529fce04665c9f2c1275d484543e038e964d855e1d91983ea34f7d66e19e27b6f59b23e9690c291432793167a5e8a9b44aeb9ecbaa500e2616ac32af6b6acfb6c2b4a485be4fe5072bd1f0e08ae343bf0c5cb241111f894bfd4be6a26dbc7ed352d71744bd9a4d51f149ac4ea5ad323b063d93e56ae12b81d88eb083024d3d164c0fd7b4bce8a800f69cb7c66594d7ab20818dc79f01853fee81b345210cdf2964c3a25a0934ece6b13029b5fdc3b780cd85a46e54495328f0baa63078b3948172443b57d8571a82c717a4d93a6fd9ada3a1efc41f3697600d02fcb555eef1d5162b346d892eabc60251b048979f49e3855fd5a49520a60d099ed2f5a5c8764875a4ea242407856b5dc393ba1e71fd04c53181572ad90e0184934d7b65e0ea56a8521a284e6a5b98bc704ad92e658a8b4c64cf67157ac0673159b9e2a9ea9d94c6fb3e5bd963dfcaad484cf06be75e3f23a11287b82bc6618b6eda760d29d1d8400c41ec3b42a24ec1e070bce0eec7dc6c6f19e2a6ba7faab72dd81f31814a18ce984c7aae6d9caaa800318418f56871c8cfd8778faa7dad3426849e10b041d6190eb445410f5f5e476068579fedc5869 3a3a819c48efde2ad914fbf00e18ab6bc4f14513ab27d0c178a188b61431e7f5623cb66b23346775d386b50e982c493adbbfc54b9a3cd383382336a1a0b2150a15358f336d03ae18f666c7573d55c4fd181c29e6ccfde63ea35f0adf5885cfc0a3d84a2b2e4dd24496db789e663170cef74798aa1bbcd4574ea0bba40489d764b2f83aadc66b148b4a0cd95246c127d5871c4f11418690a5ddf01246a0c80a43c70088b6183639dcfda4125bd113a8f49ee23ed306faac576c3fb0c1e256671d817fc2534a52f5b439f72e424de376f4c565cca82307dd9ef76da5b7c4eb7e085172e328807c02d011ffbf33785378d79dc266f6a5be6bb0e4a92eceebaeb1,8a5199b4a7e133e264a86202720655894d48cff344a928cf8347f48379cef347dfc5bcffab99b27b1f89aa2735e23d30088ffa03b9edb02b9635470ab9f1038985d55f9ca774572dd006470ea65145469609f9fa0831bf1ffd842dc24acade27bd9816e3b5bf2876cb112232a0eb4475f1dff9f5c713d9ffd4ccb89ae5607fe35731df06317949eef646e9591cf3be53add6b7dd2b6096e2b3fb06e662ec8b2d77422daad9463cd155204acdbd38e319613f39f99b6dfb35ca9365160066db19835888c2241ff9a731a4acbb5663727aac34a401247fbaa7499e7d5ee5b69d31025e63d04c35c798bca1262d5673a9cf0930b5ad89bd485599dc184528da4790f088ebd170b635d9581632d2ff90db79665ced430089af13c9f21f6d443a818064f17aec9e9c5457001fa8dc6afbadbe3138f388d89d0e6f22f66671255b210754ed63d81dce75ce8f189b534e6d6b3539aa51e837c42df9df59c71e6171cd4902fe1bdc73fb1775b5c754a1ed4ea7f3105fc543ee0418dad256f3f6118ea77114a16c15355b42877a1db2a7df0e155ae1d8670abcec3450f4e2eec9838f895423ef63d261138baaf5d9f104cb5a957aea06c0b9b8c78b0d441796dc0350ddeabb78a33b6f1f9e68ede3d1805c7b7e2cfd54e0fad62f0d8ca67a775dc4546af9096f2edb221db42843d65327861282dc946a0ba01a11863ab2d1dfd16e3973d4 # EOF pysha3-1.0.2/vectors/sha3_384.txt0000664000175000017500000026044112711152670017164 0ustar heimesheimes00000000000000# ShortMsgKAT_SHA3-384.txt ,0c63a75b845e4f7d01107d852e4c2485c51a50aaaa94fc61995e71bbee983a2ac3713831264adb47fb6bd1e058d5f004 cc,5ee7f374973cd4bb3dc41e3081346798497ff6e36cb9352281dfe07d07fc530ca9ad8ef7aad56ef5d41be83d5e543807 41fb,1dd81609dcc290effd7ac0a95d4a20821580e56bd50dbd843920650be7a80a1719577da337cfdf86e51c764caa2e10bd 1f877c,14f6f486fb98ed46a4a198040da8079e79e448daacebe905fb4cf0df86ef2a7151f62fe095bf8516eb0677fe607734e2 c1ecfdfc,d92bbd604bdd24b9889508f8558b13e96595ac90bc8a441daf9b51d6abc14ffd0835fb9366e3912504264ce87e421cb8 21f134ac57,e248d6ff342d35a30ec230ba51cdb161025d6f1c251aca6ae3531f0682c164a1fc0725b1beff808a200c131557a22809 c6f50bb74e29,d6dd2ed08c1f644857a15dafaf80538bee597278c9abe047bfbabfb8b1fcb7543e80ae9f7143d00f4daaf39b138ab3ff 119713cc83eeef,49ca1eb8d71d1fdc7a72daa320c8f9ca543671c2cb8fe9b2638a8416df50a790a50d0bb6b88741d7816d6061f46aea89 4a4f202484512526,89dbf4c39b8fb46fdf0a6926cec0355a4bdbf9c6a446e140b7c8bd08ff6f489f205daf8effe160f437f67491ef897c23 1f66ab4185ed9b6375,d6154641d7d9df62f0cedc2bd64ee82412b3a80f6eace7c45f9703373379007eabf592d2d2116e093dc33dcbba4649e9 eed7422227613b6f53c9,2ee5df2591cfc4cb1e1d0bd8b28727f0fa5359a75f7819a92a3cb80ddb5708e4705177b981396b4818d11e3ca615ec93 eaeed5cdffd89dece455f1,786c3f73fb092be184fc2b19f5920f3d94f25d4523165ae82f9b39b2c724fd62dc9a3263091a239d5ef1ad562dd4fd26 5be43c90f22902e4fe8ed2d3,79188139ec2cad8d197d308b806cf383782c29a8c27ee29c5e31425b2dd18b2f5f491fbfb38d7078f58510125c064a0a a746273228122f381c3b46e4f1,0c82b8c75c5d540e7d624928281fba8b8d0b1583d74f3f0ea4f200f1ce5475149c282e05db695dc67baf42deffdc3f55 3c5871cd619c69a63b540eb5a625,830d2325c001623edfea97ea1d0e65982d4ed7abb8e64ea61c85e9bc1882d11fc4153c30be63fc66f5fbce74bb394596 fa22874bcc068879e8ef11a69f0722,1dbe1bc60a9c6fbe10a727e2a6d397930d547ad2c390286948c3167ee77ff6e275ec8431c5ad4b4e4e5ae67a4bc88d05 52a608ab21ccdd8a4457a57ede782176,feee2ef332515284e0ba247c62f264199044d03877c58e54b51a62e39e91c27aaae384837eb9d479b4c0308cfc6b779b 82e192e4043ddcd12ecf52969d0f807eed,1888e953727cb837de40c69869560c20729c50638e4561b385937bfc4c297e789ea6c03efcf2df3290b1fd36be268c32 75683dcb556140c522543bb6e9098b21a21e,30de7b544265422ce689e667f48498f455e8bf1055653f21294ead7d2e898b05fa75eeca46dc2575c475c480aa49ca62 06e4efe45035e61faaf4287b4d8d1f12ca97e5,041b7c89bd4b582a7d20e579c6fdb18ba0c1251dabacc687af448eb49151bbc04adcb81d797d4bc51f03bfff230ffcc6 e26193989d06568fe688e75540aea06747d9f851,eaf751ee6e75aa2c56453f316c019bda7d7ae1fda03b79ac413bb1f2840d58aaaac77f2dc106d22f1a71157f9f841c4b d8dc8fdefbdce9d44e4cbafe78447bae3b5436102a,16c4a7f7e8ba7ea13c59576be602f885e21be7c34b3ac05cac4262baad8aa3f95bd9260f13f08550ce331ec773ba758c 57085fd7e14216ab102d8317b0cb338a786d5fc32d8f,5119a4fc11daf2ef5deb7aeb35549162d9afc827392a8868e7f8594a5c194d9c8f6a430cb386b8d825cc6dab4edb742a a05404df5dbb57697e2c16fa29defac8ab3560d6126fa0,a91f0170457e78b3bb15b0bdc0ff4efe8d7313d2725d8e8db875bcafbc11314126559f45e86e78136eb214ff02764cab aecbb02759f7433d6fcb06963c74061cd83b5b3ffa6f13c6,98fe81746ccf7cfe5571d6d8b09943ecae44f606444f9dabf1a57fe4e871f6962266d18652fd4eebdbe492cfc5b2b21f aafdc9243d3d4a096558a360cc27c8d862f0be73db5e88aa55,3dd9054c105c40798df45cfb5880f97a9536fa7bd13f1d816b8ee887fcbafc102a7d4bde9fe6e265538eec2525b50d89 7bc84867f6f9e9fdc3e1046cae3a52c77ed485860ee260e30b15,decd778b89b4295072dbf98689e2eb6066e406356ea4b7cad550019f4a2abb25163e9571d0adb9adc6a802b7e03c152c fac523575a99ec48279a7a459e98ff901918a475034327efb55843,37f14b317d46bdb3e5dd6f68986a08a098c46b9d85d1f254a17878c008f97926c8a13c3838721cfe3a58076f3992f26c 0f8b2d8fcfd9d68cffc17ccfb117709b53d26462a3f346fb7c79b85e,641a7af13b889d1a0f1aa3e4e4ff8cc5903c47e1a52bdea257d80e37e596564ab33eead06717cdb6b706cb6986293d4f a963c3e895ff5a0be4824400518d81412f875fa50521e26e85eac90c04,122b8b86103fe3c18ff28178a256acb0cab8518338d2cba697e3f560ecfee09b024b97d8d1f69632ad1f2c5f5628d3ef 03a18688b10cc0edf83adf0a84808a9718383c4070c6c4f295098699ac2c,f35a292e197007e28ce652a067173f3659c51b70438aa9e433081d3df71b4a11e3f3be5af32e2c08d23a0b44e30b0bdf 84fb51b517df6c5accb5d022f8f28da09b10232d42320ffc32dbecc3835b29,2ea596b446d5ccd8f0927a2e3790911e00f1f52cfbfc41f12290cbacd1c903c74deef840fd1398e12ee863acd92baebf 9f2fcc7c90de090d6b87cd7e9718c1ea6cb21118fc2d5de9f97e5db6ac1e9c10,baae7aaed4fbf42f9316c7e8f722eeb06a598b509f184b22fbd5a81c93d95fff711f5de90847b3248b6df76cabce07ee de8f1b3faa4b7040ed4563c3b8e598253178e87e4d0df75e4ff2f2dedd5a0be046,32cfc8a18a7116d4b9029051941808c3b332efdb132c515f9110e19b8354355d94616c9965bc2d1f2489f8452af7fb2f 62f154ec394d0bc757d045c798c8b87a00e0655d0481a7d2d9fb58d93aedc676b5a0,73443ea38a8801395c044e3cbecd45dd62d6e304c5440fa9fe9651a438c010a76712759be20681f1416661e746e5eb77 b2dcfe9ff19e2b23ce7da2a4207d3e5ec7c6112a8a22aec9675a886378e14e5bfbad4e,6e82f460660f3d2cc33aa59a37f325eed0133fe29a9cb428a3c22572b6bf6c5da2d0d4645c49135653a049795d4e2ad0 47f5697ac8c31409c0868827347a613a3562041c633cf1f1f86865a576e02835ed2c2492,229160a61cf2842b37ea85788bb1ce8294ded9ead266359d61df3d6df98ee155ed03ab1a51d6291b41680a00553298eb 512a6d292e67ecb2fe486bfe92660953a75484ff4c4f2eca2b0af0edcdd4339c6b2ee4e542,f5d838dedf07ac3a5646221adc6ca59045976df9c33367fdaa0be3afc57eef0d434ee92cd618b3fa26c7eabd18d78772 973cf2b4dcf0bfa872b41194cb05bb4e16760a1840d8343301802576197ec19e2a1493d8f4fb,d41a324a1739bbcfc983a2b250750a1117e57bd26512cc5dca7066d8b972ad9eb0bb3c7e36b9b84fc0e8129b69cd3847 80beebcd2e3f8a9451d4499961c9731ae667cdc24ea020ce3b9aa4bbc0a7f79e30a934467da4b0,170d73baf77eae7a852a1bb19ba6665f9ef425a66f2649e959b5caa82d01fdb89c8c7fa6f40702f7c3391b146f6fa33e 7abaa12ec2a7347674e444140ae0fb659d08e1c66decd8d6eae925fa451d65f3c0308e29446b8ed3,a8f4a60a8ff5b3ebb4eadb9c46f1f403ab7ff632c7a11f80fc9153858b484291b3936713076955207d0c7e1964dc1346 c88dee9927679b8af422abcbacf283b904ff31e1cac58c7819809f65d5807d46723b20f67ba610c2b7,5815d78aca9600632239b7ce8385d7e837f883857601efb78f9c2dac9a96ae0bfd107526f268d06fb4227d4774a9e727 01e43fe350fcec450ec9b102053e6b5d56e09896e0ddd9074fe138e6038210270c834ce6eadc2bb86bf6,a5d91b01650d24b4753f41871fa700e997d5f1ef9c06d8f9b3a9b2d318716408e1566bb04b49b84e77f5f73d8f640541 337023370a48b62ee43546f17c4ef2bf8d7ecd1d49f90bab604b839c2e6e5bd21540d29ba27ab8e309a4b7,c7ba066881db931e9c674d74ce2309b3002c6d5bc22056c454261cdbc5d93fe310eadd755e41fb1d789fdb9a73fda28f 6892540f964c8c74bd2db02c0ad884510cb38afd4438af31fc912756f3efec6b32b58ebc38fc2a6b913596a8,a52ca3413bb83934b1ead4686f639b90c5ee3cb5be7e29a1a5293c868441d79be2ef246b427ffcf0568d4d01be54ff0d f5961dfd2b1ffffda4ffbf30560c165bfedab8ce0be525845deb8dc61004b7db38467205f5dcfb34a2acfe96c0,13e60554fa18cef87ceabe147541886d97c2fb5f40f163d953306d2a26b013b33cb202d78aef49fd47e7ec1c745920cd ca061a2eb6ceed8881ce2057172d869d73a1951e63d57261384b80ceb5451e77b06cf0f5a0ea15ca907ee1c27eba,e4e03ccba92bbd28182d005f69de4e71c61c62cd323decfb2addbeeff7ee74933aa7a167e4e1dbb3df7e5c91184f2d88 1743a77251d69242750c4f1140532cd3c33f9b5ccdf7514e8584d4a5f9fbd730bcf84d0d4726364b9bf95ab251d9bb,9b26e9bf13b6fc33fd335df976c8e1b781c800895ebd72e34f96eb875b41f04aaee825cd8f0eb6c43d803f4e6ef688a9 d8faba1f5194c4db5f176fabfff856924ef627a37cd08cf55608bba8f1e324d7c7f157298eabc4dce7d89ce5162499f9,a127fefcdd240f762cce3f5f1551fc7e1cdebc7950d1cd94c6888f490cb2285a10fd0ee797b168c5ca4761fa232aaf05 be9684be70340860373c9c482ba517e899fc81baaa12e5c6d7727975d1d41ba8bef788cdb5cf4606c9c1c7f61aed59f97d,feb5a24edb05bef846b0a1f3f48da212dfc2d0bac746890d4ad72fbe3a7b4ff8e2b542b827779467122271b1e0df2bd2 7e15d2b9ea74ca60f66c8dfab377d9198b7b16deb6a1ba0ea3c7ee2042f89d3786e779cf053c77785aa9e692f821f14a7f51,8da4f3d1a13197171b02e1ccb07bf51cdbabd833fdc3c3797a113cfa5c71795782c47ce36c389fbad461d0d5b59ca684 9a219be43713bd578015e9fda66c0f2d83cac563b776ab9f38f3e4f7ef229cb443304fba401efb2bdbd7ece939102298651c86,d19fe4a5f93bcd483daa7af8cb636807962d40af9a507dc4fa4e1fd480a6e8fa3c25fa30eb6b74979ee456c1644a5c1d c8f2b693bd0d75ef99caebdc22adf4088a95a3542f637203e283bbc3268780e787d68d28cc3897452f6a22aa8573ccebf245972a,63ff3053ace687fb91070ca7fc6a51c259e13da8ac0dd741ab36d1fa930e3bb9ac6a1fad654f7238cfc4485c5f9f8252 ec0f99711016c6a2a07ad80d16427506ce6f441059fd269442baaa28c6ca037b22eeac49d5d894c0bf66219f2c08e9d0e8ab21de52,39dde02a319b5e869f4c51a1d30ff4d4d88ebe504c54f155aa5fad3316404fdbd1918074d35d14bac88d6f359108a1dc 0dc45181337ca32a8222fe7a3bf42fc9f89744259cff653504d6051fe84b1a7ffd20cb47d4696ce212a686bb9be9a8ab1c697b6d6a33,1959378f32117e58c0141160e16facfe336590196be805d149eb5aeea641f9bb119b3eddfefd817701c82d2f528b823e de286ba4206e8b005714f80fb1cdfaebde91d29f84603e4a3ebc04686f99a46c9e880b96c574825582e8812a26e5a857ffc6579f63742f,7b172a9bb311b1375e15ece1c1e8f092becfafec9f3144e93f596eb7e6abfb34fcedb08eda7883ebbf40038b7a754f9f eebcc18057252cbf3f9c070f1a73213356d5d4bc19ac2a411ec8cdeee7a571e2e20eaf61fd0c33a0ffeb297ddb77a97f0a415347db66bcaf,6ba32ecaaa0aa9c59e72173f2a7816ac51f313c467a017190db9832c6311ec23b8d56b7b220fa09a9081962efed5183e 416b5cdc9fe951bd361bd7abfc120a5054758eba88fdd68fd84e39d3b09ac25497d36b43cbe7b85a6a3cebda8db4e5549c3ee51bb6fcb6ac1e,55fdf2ec27d334b5b59efb9b6d518e25be0f5ff6379f7b97945f3e1235ec70295b39ebeabf70fcaf1e61edb1c21a4c06 5c5faf66f32e0f8311c32e8da8284a4ed60891a5a7e50fb2956b3cbaa79fc66ca376460e100415401fc2b8518c64502f187ea14bfc9503759705,d51a3f33919fe5da0efea6edad201f01fa8416c385a89d96df743d243a6aaba5b7690d187b95caffdacd1e85f56b813b 7167e1e02be1a7ca69d788666f823ae4eef39271f3c26a5cf7cee05bca83161066dc2e217b330df821103799df6d74810eed363adc4ab99f36046a,f1d6e8f95c497d5beafb4215e07cdb59e0e3709cf561618f67e301931d204c6ce477e0f750099584b645e2f718650813 2fda311dbba27321c5329510fae6948f03210b76d43e7448d1689a063877b6d14c4f6d0eaa96c150051371f7dd8a4119f7da5c483cc3e6723c01fb7d,b1d347d057ccd72867b12bf00bf511f87defcd0fa6adadaf4bb1ad790f06ecbb1f4488a0319b05c46a7874857370ce76 95d1474a5aab5d2422aca6e481187833a6212bd2d0f91451a67dd786dfc91dfed51b35f47e1deb8a8ab4b9cb67b70179cc26f553ae7b569969ce151b8d,4f192edfa54fece64ac0b3ec9e120b291ade99948805a87bbb04947e928bb5eba87e2ee599960c436ea7c7884187e78c c71bd7941f41df044a2927a8ff55b4b467c33d089f0988aa253d294addbdb32530c0d4208b10d9959823f0c0f0734684006df79f7099870f6bf53211a88d,75e23fed3b59db6b1d3378b7e8772642cbbff7710d8a91b249bb6c68e384cd416f19ac1e8ed92b71d0ca303d247ee9bd f57c64006d9ea761892e145c99df1b24640883da79d9ed5262859dcda8c3c32e05b03d984f1ab4a230242ab6b78d368dc5aaa1e6d3498d53371e84b0c1d4ba,c8d1e6be5485fc13bf433f11a580abbe89b12a66d0e5cb141e1d62cdc6a367725793fb25840b36cb7003f2e7df3e5f2f e926ae8b0af6e53176dbffcc2a6b88c6bd765f939d3d178a9bde9ef3aa131c61e31c1e42cdfaf4b4dcde579a37e150efbef5555b4c1cb40439d835a724e2fae7,423ba134d3bcb5e440ac83372c7eddba3ae3bddf1222f505c19cde246ad76a2b0d07239a54e1d0934c9b3d29d49e5fbd 16e8b3d8f988e9bb04de9c96f2627811c973ce4a5296b4772ca3eefeb80a652bdf21f50df79f32db23f9f73d393b2d57d9a0297f7a2f2e79cfda39fa393df1ac00,662c4851d311a786de4cda7e9ea1eff0bfa462761ff6cf804e591ed9a15b0dc93a2bb6a6cffdc8d7d23a233a52c86ead fc424eeb27c18a11c01f39c555d8b78a805b88dba1dc2a42ed5e2c0ec737ff68b2456d80eb85e11714fa3f8eabfb906d3c17964cb4f5e76b29c1765db03d91be37fc,5f54b1dafa67ed9b498125e064f0b07f54e754e3f30720dd4a471e9bb6e307f05fb69bc81d391f503c95c3bb671e6973 abe3472b54e72734bdba7d9158736464251c4f21b33fbbc92d7fac9a35c4e3322ff01d2380cbaa4ef8fb07d21a2128b7b9f5b6d9f34e13f39c7ffc2e72e47888599ba5,a21b55ded8fe41fb2b193fa490420a8b62fcae9a185da85e253daefe85270b6904ba4ecc76bb5128926fff9d79f728ad 36f9f0a65f2ca498d739b944d6eff3da5ebba57e7d9c41598a2b0e4380f3cf4b479ec2348d015ffe6256273511154afcf3b4b4bf09d6c4744fdd0f62d75079d440706b05,341be5677a05eed816a219669d680bbf185b31cf3eb0d289f90210fb1a7940d9bff4909320ae4e3b7274e5be479c46f1 abc87763cae1ca98bd8c5b82caba54ac83286f87e9610128ae4de68ac95df5e329c360717bd349f26b872528492ca7c94c2c1e1ef56b74dbb65c2ac351981fdb31d06c77a4,d70f78894e292b075a0fe56fb952b2ce87a94ca029347159fbb12b22103dd4dc4c265b7ae88950cca89c40b531437aa4 94f7ca8e1a54234c6d53cc734bb3d3150c8ba8c5f880eab8d25fed13793a9701ebe320509286fd8e422e931d99c98da4df7e70ae447bab8cffd92382d8a77760a259fc4fbd72,89bd6b7cc9adddffe46bf85c56b8ce66e1b1b46969b197adbf2e34b7059d8bb05f9f53bd1a58a7e0a66e5ef208bf5695 13bd2811f6ed2b6f04ff3895aceed7bef8dcd45eb121791bc194a0f806206bffc3b9281c2b308b1a729ce008119dd3066e9378acdcc50a98a82e20738800b6cddbe5fe9694ad6d,ae651ef50a20b0f496f104f56f845206ed544b28d0374cbb779146dff2ea5894eb29301fe33872f9b299a79c0c0f28c4 1eed9cba179a009ec2ec5508773dd305477ca117e6d569e66b5f64c6bc64801ce25a8424ce4a26d575b8a6fb10ead3fd1992edddeec2ebe7150dc98f63adc3237ef57b91397aa8a7,a842918dfbbf3bffccc527b6dd2c0df4eb3f100f0692727da77daf44a654876013b37031c493ac18950003eebd107a29 ba5b67b5ec3a3ffae2c19dd8176a2ef75c0cd903725d45c9cb7009a900c0b0ca7a2967a95ae68269a6dbf8466c7b6844a1d608ac661f7eff00538e323db5f2c644b78b2d48de1a08aa,20d16cc6af5b4d5aeccead09f300b1dc1da93a608370ee0b2cf15c316508b5ef8c9be27d0f7288617b1e529fc2932038 0efa26ac5673167dcacab860932ed612f65ff49b80fa9ae65465e5542cb62075df1c5ae54fba4db807be25b070033efa223bdd5b1d3c94c6e1909c02b620d4b1b3a6c9fed24d70749604,69a3bb36f52eb650c6e8242db05659573af811a1a5db908f773d65e74d327f5b65303dd0dd9bd07ff100d050e46fe97d bbfd933d1fd7bf594ac7f435277dc17d8d5a5b8e4d13d96d2f64e771abbd51a5a8aea741beccbddb177bcea05243ebd003cfdeae877cca4da94605b67691919d8b033f77d384ca01593c1b,d239f2fa1675a1a031e2f6e8a53d6e2f37d081cdb029727b3acbdd7cbfc7d3581bde8d3068aa9a300ae12b7245124508 90078999fd3c35b8afbf4066cbde335891365f0fc75c1286cdd88fa51fab94f9b8def7c9ac582a5dbcd95817afb7d1b48f63704e19c2baa4df347f48d4a6d603013c23f1e9611d595ebac37c,2f8d747ddf64320297b44f8547ef42fce78a48f0a59a18db1cfb9f43c049628f97c0bb93adaab9617155272424f74027 64105eca863515c20e7cfbaa0a0b8809046164f374d691cdbd6508aaabc1819f9ac84b52bafc1b0fe7cddbc554b608c01c8904c669d8db316a0953a4c68ece324ec5a49ffdb59a1bd6a292aa0e,714be6f2f934e0b6fd69e392d99acc98592b015e48a1637262f99286502b06774783bb9f371c760c3eb78aeadfbd0df0 d4654be288b9f3b711c2d02015978a8cc57471d5680a092aa534f7372c71ceaab725a383c4fcf4d8deaa57fca3ce056f312961eccf9b86f14981ba5bed6ab5b4498e1f6c82c6cae6fc14845b3c8a,22a41b117464f7f49682e8139a0d5bd23fe00d1190b1b419f27b490b729b56bba9de649dd7c988b6b308038661e1c362 12d9394888305ac96e65f2bf0e1b18c29c90fe9d714dd59f651f52b88b3008c588435548066ea2fc4c101118c91f32556224a540de6efddbca296ef1fb00341f5b01fecfc146bdb251b3bdad556cd2,77780f3646d288291790f2a5f4aa9c98a64a1115306994cd65c7620dde06d35117ce4b79dae08b5b4e798459010941bb 871a0d7a5f36c3da1dfce57acd8ab8487c274fad336bc137ebd6ff4658b547c1dcfab65f037aa58f35ef16aff4abe77ba61f65826f7be681b5b6d5a1ea8085e2ae9cd5cf0991878a311b549a6d6af230,5ced3b7368582dd6debfe41d6affd82b72894b51ff4c4accba09c595b36e23e347ab4baab0e5191d86e26e6596d62e23 e90b4ffef4d457bc7711ff4aa72231ca25af6b2e206f8bf859d8758b89a7cd36105db2538d06da83bad5f663ba11a5f6f61f236fd5f8d53c5e89f183a3cec615b50c7c681e773d109ff7491b5cc22296c5,1410ef9abb8d98b1c65e113a61915b0e6933bc59da31c8fcc39b7165e715919184375d822a07c778f63431be2aeecd99 e728de62d75856500c4c77a428612cd804f30c3f10d36fb219c5ca0aa30726ab190e5f3f279e0733d77e7267c17be27d21650a9a4d1e32f649627638dbada9702c7ca303269ed14014b2f3cf8b894eac8554,330ed51b045471dea8cff26510d68494611ecfd614d49e5a9cc8846a132519bbcf49907691ac5accfc0528da0c14d49e 6348f229e7b1df3b770c77544e5166e081850fa1c6c88169db74c76e42eb983facb276ad6a0d1fa7b50d3e3b6fcd799ec97470920a7abed47d288ff883e24ca21c7f8016b93bb9b9e078bdb9703d2b781b616e,387111a206fc6488f78d41786886a9e5ec9f73e1131d92f290f68512320a408d5f63eaa5aba32d9853eb11b5b0887e62 4b127fde5de733a1680c2790363627e63ac8a3f1b4707d982caea258655d9bf18f89afe54127482ba01e08845594b671306a025c9a5c5b6f93b0a39522dc877437be5c2436cbf300ce7ab6747934fcfc30aeaaf6,78573f5d075200d3823194a71e55880f4fe78489234dbf3df3e3734cbcae8dc1d8c1ae95f9efa9903dc4c4581b59ddde 08461f006cff4cc64b752c957287e5a0faabc05c9bff89d23fd902d324c79903b48fcb8f8f4b01f3e4ddb483593d25f000386698f5ade7faade9615fdc50d32785ea51d49894e45baa3dc707e224688c6408b68b11,fdfe4f1b034733c2c94a7b36e2b52774a95c2bde22fcddfcef52f7fef7c67f08e2f7b9b8967e447f76ef91960da76288 68c8f8849b120e6e0c9969a5866af591a829b92f33cd9a4a3196957a148c49138e1e2f5c7619a6d5edebe995acd81ec8bb9c7b9cfca678d081ea9e25a75d39db04e18d475920ce828b94e72241f24db72546b352a0e4,48d66a4165aa54528ece89bd9aa00eab196f32dfdc4d76f236655835527aaa1642e6bf4edf24f030f5eeef07fa40f5d2 b8d56472954e31fb54e28fca743f84d8dc34891cb564c64b08f7b71636debd64ca1edbdba7fc5c3e40049ce982bba8c7e0703034e331384695e9de76b5104f2fbc4535ecbeebc33bc27f29f18f6f27e8023b0fbb6f563c,3c2575372ce1f380a6e66bb075fbae98fc2e6d3d267a20ff0313abc3de252e03fd5bdfa8bc2b79fc874ccda4abdbb4a6 0d58ac665fa84342e60cefee31b1a4eacdb092f122dfc68309077aed1f3e528f578859ee9e4cefb4a728e946324927b675cd4f4ac84f64db3dacfe850c1dd18744c74ceccd9fe4dc214085108f404eab6d8f452b5442a47d,0ee6aeca8dd80b74225ac4882e2bc1e6819c9b94f0d0bc0a1e21aabf4b11cb74db4734bc8d1179d7dcef535be9f3da28 1755e2d2e5d1c1b0156456b539753ff416651d44698e87002dcf61dcfa2b4e72f264d9ad591df1fdee7b41b2eb00283c5aebb3411323b672eaa145c5125185104f20f335804b02325b6dea65603f349f4d5d8b782dd3469ccd,8027e5044923f8eee1df184865cd97b635a78da199fd80ad3d343a5ae03d1b165e58d1b0bd093ef916a16d6641bda17c b180de1a611111ee7584ba2c4b020598cd574ac77e404e853d15a101c6f5a2e5c801d7d85dc95286a1804c870bb9f00fd4dcb03aa8328275158819dcad7253f3e3d237aeaa7979268a5db1c6ce08a9ec7c2579783c8afc1f91a7,796818e047913d5afb4ae4c5b7c5d5ef699a3a9ebefb44462ee8fe603ca5628973369e4a9d8e10115fdd75c89707a8f9 cf3583cbdfd4cbc17063b1e7d90b02f0e6e2ee05f99d77e24e560392535e47e05077157f96813544a17046914f9efb64762a23cf7a49fe52a0a4c01c630cfe8727b81fb99a89ff7cc11dca5173057e0417b8fe7a9efba6d95c555f,1e96eff62e9f464b4802972fdac77c3ea1131b2822619d2c5d863e357d0945c17f93ede66af05d46e63c2857a54f67f4 072fc02340ef99115bad72f92c01e4c093b9599f6cfc45cb380ee686cb5eb019e806ab9bd55e634ab10aa62a9510cc0672cd3eddb589c7df2b67fcd3329f61b1a4441eca87a33c8f55da4fbbad5cf2b2527b8e983bb31a2fadec7523,4cc41c2fb7d71da1ad36d18029f755daf342e732ec31f0c06e27091307718acb53fa113ae508df38b8c96834de33f9f1 76eecf956a52649f877528146de33df249cd800e21830f65e90f0f25ca9d6540fde40603230eca6760f1139c7f268deba2060631eea92b1fff05f93fd5572fbe29579ecd48bc3a8d6c2eb4a6b26e38d6c5fbf2c08044aeea470a8f2f26,9a8d4b560421c82991bdfca0898a29a59bdb09d20f8a5b279096723bab382789f081ead50d273eca436c526aba6d5cfc 7adc0b6693e61c269f278e6944a5a2d8300981e40022f839ac644387bfac9086650085c2cdc585fea47b9d2e52d65a2b29a7dc370401ef5d60dd0d21f9e2b90fae919319b14b8c5565b0423cefb827d5f1203302a9d01523498a4db10374,367cb3fe03a3cbb50fae1fe7ea883a0ae53cbe772f709dc5505f3c907564c08fc49707cff9639b25c746b6039ff48ae9 e1fffa9826cce8b86bccefb8794e48c46cdf372013f782eced1e378269b7be2b7bf51374092261ae120e822be685f2e7a83664bcfbe38fe8633f24e633ffe1988e1bc5acf59a587079a57a910bda60060e85b5f5b6f776f0529639d9cce4bd,bbbd05d69d7a082fcda8ed535d7e4e5de1377bd91e72d42dc95295c9db780169e2f9620ec7a5aff959ff2d946fd20a72 69f9abba65592ee01db4dce52dbab90b08fc04193602792ee4daa263033d59081587b09bbe49d0b49c9825d22840b2ff5d9c5155f975f8f2c2e7a90c75d2e4a8040fe39f63bbafb403d9e28cc3b86e04e394a9c9e8065bd3c85fa9f0c7891600,be8bec0c2ec721e0c326037ce86a1518fb395c3a9802de01c3e234268ebb9ac9a39a6e404f25fb7febdcf1f7f25dc083 38a10a352ca5aedfa8e19c64787d8e9c3a75dbf3b8674bfab29b5dbfc15a63d10fae66cd1a6e6d2452d557967eaad89a4c98449787b0b3164ca5b717a93f24eb0b506ceb70cbbcb8d72b2a72993f909aad92f044e0b5a2c9ac9cb16a0ca2f81f49,2aeeaf292ad625221ba79a621217fd1b3f8978ba83fe7ff13b38574fcfaffbd207298854b6f9c27d6677494204221fda 6d8c6e449bc13634f115749c248c17cd148b72157a2c37bf8969ea83b4d6ba8c0ee2711c28ee11495f43049596520ce436004b026b6c1f7292b9c436b055cbb72d530d860d1276a1502a5140e3c3f54a93663e4d20edec32d284e25564f624955b52,9a1761c5759ce67c9c093ec5c831c1ff7cab64ac7c8002066edcaed044def57cea3ef6be98578363d2ce3d1f5ba448f8 6efcbcaf451c129dbe00b9cef0c3749d3ee9d41c7bd500ade40cdc65dedbbbadb885a5b14b32a0c0d087825201e303288a733842fa7e599c0c514e078f05c821c7a4498b01c40032e9f1872a1c925fa17ce253e8935e4c3c71282242cb716b2089ccc1,4a24a1af68db65c3977431ee81092c776f7cb33d6f08940100ea240a2d1f8623a41d07ce9937bcbec8ca1072a1a78e8b 433c5303131624c0021d868a30825475e8d0bd3052a022180398f4ca4423b98214b6beaac21c8807a2c33f8c93bd42b092cc1b06cedf3224d5ed1ec29784444f22e08a55aa58542b524b02cd3d5d5f6907afe71c5d7462224a3f9d9e53e7e0846dcbb4ce,928e94d19fc60065a5ef7e48018387c80f2d350f306d0f610173719d5c874d4a8acc340fead4be357e1f78124198ad77 a873e0c67ca639026b6683008f7aa6324d4979550e9bce064ca1e1fb97a30b147a24f3f666c0a72d71348ede701cf2d17e2253c34d1ec3b647dbcef2f879f4eb881c4830b791378c901eb725ea5c172316c6d606e0af7df4df7f76e490cd30b2badf45685f,78a18d62f8a7eff5c6dd75b8cb073fd30ee68c878c2ec58aad1c5dd0eb0ae43698a617bb0c670fce2aa098e0adf425b2 006917b64f9dcdf1d2d87c8a6173b64f6587168e80faa80f82d84f60301e561e312d9fbce62f39a6fb476e01e925f26bcc91de621449be6504c504830aae394096c8fc7694651051365d4ee9070101ec9b68086f2ea8f8ab7b811ea8ad934d5c9b62c60a4771,eeeb56c3e54fa833b985efa5923c3f0225f419664cedd898c79f64d72d2ad4b125a38be0201846c442eaf0051d516dc9 f13c972c52cb3cc4a4df28c97f2df11ce089b815466be88863243eb318c2adb1a417cb1041308598541720197b9b1cb5ba2318bd5574d1df2174af14884149ba9b2f446d609df240ce335599957b8ec80876d9a085ae084907bc5961b20bf5f6ca58d5dab38adb,0a834e111b4e840e787c19748465a47d88b3f0f3daaf15db25536bdc6078fa9c05e6c953830274223968847da8bfd20d e35780eb9799ad4c77535d4ddb683cf33ef367715327cf4c4a58ed9cbdcdd486f669f80189d549a9364fa82a51a52654ec721bb3aab95dceb4a86a6afa93826db923517e928f33e3fba850d45660ef83b9876accafa2a9987a254b137c6e140a21691e1069413848,d1c0fa85c8d183beff99ad9d752b263e286b477f79f0710b010317017397813344b99daf3bb7b1bc5e8d722bac85943a 64ec021c9585e01ffe6d31bb50d44c79b6993d72678163db474947a053674619d158016adb243f5c8d50aa92f50ab36e579ff2dabb780a2b529370daa299207cfbcdd3a9a25006d19c4f1fe33e4b1eaec315d8c6ee1e730623fd1941875b924eb57d6d0c2edc4e78d6,6aedcf4426b2483c0d0d04695bcc052bedd04fa4d17a1bbb2797f6272fa476bfc138e4091409feb1ac0e8bff350a6663 5954bab512cf327d66b5d9f296180080402624ad7628506b555eea8382562324cf452fba4a2130de3e165d11831a270d9cb97ce8c2d32a96f50d71600bb4ca268cf98e90d6496b0a6619a5a8c63db6d8a0634dfc6c7ec8ea9c006b6c456f1b20cd19e781af20454ac880,acb7013ce75124388187dc0e7430cb74a314d601b6c8d7a7de5cf03197a84f7874ff058808575cb2f10185f561bb06b1 03d9f92b2c565709a568724a0aff90f8f347f43b02338f94a03ed32e6f33666ff5802da4c81bdce0d0e86c04afd4edc2fc8b4141c2975b6f07639b1994c973d9a9afce3d9d365862003498513bfa166d2629e314d97441667b007414e739d7febf0fe3c32c17aa188a8683,f947469db712ea26f25f709ff7879136ea2a79e0a2d0ed5ee4adf0e167f106bc410c93ae1d986ec211e0fd9a40741857 f31e8b4f9e0621d531d22a380be5d9abd56faec53cbd39b1fab230ea67184440e5b1d15457bd25f56204fa917fa48e669016cb48c1ffc1e1e45274b3b47379e00a43843cf8601a5551411ec12503e5aac43d8676a1b2297ec7a0800dbfee04292e937f21c005f17411473041,65989bf4ebbf4c21b3dd34551d3f6167910236671bb7f348dc552adb8028a468fa40ef4a8c1227a1a41c28105e64ac20 758ea3fea738973db0b8be7e599bbef4519373d6e6dcd7195ea885fc991d896762992759c2a09002912fb08e0cb5b76f49162aeb8cf87b172cf3ad190253df612f77b1f0c532e3b5fc99c2d31f8f65011695a087a35ee4eee5e334c369d8ee5d29f695815d866da99df3f79403,b77a69e373af0f733cdad399c9b12642a046e1a7893d3382943a8367d37740df53916f6daf90517b39621c14343754a2 47c6e0c2b74948465921868804f0f7bd50dd323583dc784f998a93cd1ca4c6ef84d41dc81c2c40f34b5bee6a93867b3bdba0052c5f59e6f3657918c382e771d33109122cc8bb0e1e53c4e3d13b43ce44970f5e0c079d2ad7d7a3549cd75760c21bb15b447589e86e8d76b1e9ced2,3d14b6fae6156e7876367897a49269181ea58cc3ca9621c0f81d6a5fb6f615680d909b29f6af7e62fad04d70046be997 f690a132ab46b28edfa6479283d6444e371c6459108afd9c35dbd235e0b6b6ff4c4ea58e7554bd002460433b2164ca51e868f7947d7d7a0d792e4abf0be5f450853cc40d85485b2b8857ea31b5ea6e4ccfa2f3a7ef3380066d7d8979fdac618aad3d7e886dea4f005ae4ad05e5065f,456ad01908e187ca2ce9e7a4daed8788c909e9bc974efd1c9a44ac36db9b6da985c947c7e0a47ab27bf10cd760fa48af 58d6a99bc6458824b256916770a8417040721cccfd4b79eacd8b65a3767ce5ba7e74104c985ac56b8cc9aebd16febd4cda5adb130b0ff2329cc8d611eb14dac268a2f9e633c99de33997fea41c52a7c5e1317d5b5daed35eba7d5a60e45d1fa7eaabc35f5c2b0a0f2379231953322c4e,c26bdac454e1adc0d090d0c5254a29966611b6673014cbaca24d26b6f63ec7e8f993ba3df7df89770e902d5f6574f6a8 befab574396d7f8b6705e2d5b58b2c1c820bb24e3f4bae3e8fbcd36dbf734ee14e5d6ab972aedd3540235466e825850ee4c512ea9795abfd33f330d9fd7f79e62bbb63a6ea85de15beaeea6f8d204a28956059e2632d11861dfb0e65bc07ac8a159388d5c3277e227286f65ff5e5b5aec1,1d85bf9aa2b6dcc3105e7d7f91069f01e4c998d6f03b77650d75839d65a7a049196fd935afeffdeb657bc8f96b7c17b5 8e58144fa9179d686478622ce450c748260c95d1ba43b8f9b59abeca8d93488da73463ef40198b4d16fb0b0707201347e0506ff19d01bea0f42b8af9e71a1f1bd168781069d4d338fdef00bf419fbb003031df671f4a37979564f69282de9c65407847dd0da505ab1641c02dea4f0d834986,085cfa581cf3f4f19416bee3ed5ac2544662aa51bdf1d2e348d9bcc27343487df20b18d9f6fb64565868504a6805d176 b55c10eae0ec684c16d13463f29291bf26c82e2fa0422a99c71db4af14dd9c7f33eda52fd73d017cc0f2dbe734d831f0d820d06d5f89dacc485739144f8cfd4799223b1aff9031a105cb6a029ba71e6e5867d85a554991c38df3c9ef8c1e1e9a7630be61caabca69280c399c1fb7a12d12aefc,376088f09039caa40bf19ff5e5f193fc9ecb6116a0acb3237aaab6cd807bd7af45d804d837a18d2bd9a8c3daa3a1d153 2eeea693f585f4ed6f6f8865bbae47a6908aecd7c429e4bec4f0de1d0ca0183fa201a0cb14a529b7d7ac0e6ff6607a3243ee9fb11bcf3e2304fe75ffcddd6c5c2e2a4cd45f63c962d010645058d36571404a6d2b4f44755434d76998e83409c3205aa1615db44057db991231d2cb42624574f545,cd40b35fbd90b04d0641f71088f7c6159d8eb16de8aae09f355877a0333b53150b81d36c5c2446bf5ac462ef84d4e572 dab11dc0b047db0420a585f56c42d93175562852428499f66a0db811fcdddab2f7cdffed1543e5fb72110b64686bc7b6887a538ad44c050f1e42631bc4ec8a9f2a047163d822a38989ee4aab01b4c1f161b062d873b1cfa388fd301514f62224157b9bef423c7783b7aac8d30d65cd1bba8d689c2d,db14442400597871fa56d10f53be7bb4002c44624c44e89c99b95122676a76ff28840285239e2e4fbfb751e4179577d8 42e99a2f80aee0e001279a2434f731e01d34a44b1a8101726921c0590c30f3120eb83059f325e894a5ac959dca71ce2214799916424e859d27d789437b9d27240bf8c35adbafcecc322b48aa205b293962d858652abacbd588bcf6cbc388d0993bd622f96ed54614c25b6a9aa527589eaaffcf17ddf7,4509adb6177bc6debca7e36948f07001159a57ec8cca2b76c770735c5bccc679da6ab4e64d915d0e1a754c3fda11b524 3c9b46450c0f2cae8e3823f8bdb4277f31b744ce2eb17054bddc6dff36af7f49fb8a2320cc3bdf8e0a2ea29ad3a55de1165d219adeddb5175253e2d1489e9b6fdd02e2c3d3a4b54d60e3a47334c37913c5695378a669e9b72dec32af5434f93f46176ebf044c4784467c700470d0c0b40c8a088c815816,193af71bdd228ab3e8ae50e1b1cbf1984b0af92aac5a71cbe618afd4187ded6b461411a39e72ea4e213fe0a5231c498d d1e654b77cb155f5c77971a64df9e5d34c26a3cad6c7f6b300d39deb1910094691adaa095be4ba5d86690a976428635d5526f3e946f7dc3bd4dbc78999e653441187a81f9adcd5a3c5f254bc8256b0158f54673dcc1232f6e918ebfc6c51ce67eaeb042d9f57eec4bfe910e169af78b3de48d137df4f2840,3e419569a4197bb71baf416b38772eedd9c1d5a3252111609f0ff8a18a749d5a56143a14925a82cd35c44400a49afdfb 626f68c18a69a6590159a9c46be03d5965698f2dac3de779b878b3d9c421e0f21b955a16c715c1ec1e22ce3eb645b8b4f263f60660ea3028981eebd6c8c3a367285b691c8ee56944a7cd1217997e1d9c21620b536bdbd5de8925ff71dec6fbc06624ab6b21e329813de90d1e572dfb89a18120c3f606355d25,6215c070d0cb388a134766035c4ba95143e608d15caf742796304ffa1a62e55660ab9ab1f6538b4af1f3ea89be7d51ff 651a6fb3c4b80c7c68c6011675e6094eb56abf5fc3057324ebc6477825061f9f27e7a94633abd1fa598a746e4a577caf524c52ec1788471f92b8c37f23795ca19d559d446cab16cbcdce90b79fa1026cee77bf4ab1b503c5b94c2256ad75b3eac6fd5dcb96aca4b03a834bfb4e9af988cecbf2ae597cb9097940,0e27abad85255a66217722b7d4e032bf29f638bae965b99f8eaf309071ff8c107f5b6bbb6ab1985228e697de60595df6 8aaf072fce8a2d96bc10b3c91c809ee93072fb205ca7f10abd82ecd82cf040b1bc49ea13d1857815c0e99781de3adbb5443ce1c897e55188ceaf221aa9681638de05ae1b322938f46bce51543b57ecdb4c266272259d1798de13be90e10efec2d07484d9b21a3870e2aa9e06c21aa2d0c9cf420080a80a91dee16f,ab9fd51b3aa4cd944abb6cdb063708b2d1203d65a1a2ebb48e0c19722a18b9ef54d7a11f7684462b995b6d38cddc0463 53f918fd00b1701bd504f8cdea803acca21ac18c564ab90c2a17da592c7d69688f6580575395551e8cd33e0fef08ca6ed4588d4d140b3e44c032355df1c531564d7f4835753344345a6781e11cd5e095b73df5f82c8ae3ad00877936896671e947cc52e2b29dcd463d90a0c9929128da222b5a211450bbc0e02448e2,03945325ac50e56bc8b515576529abaa9a22bc2a7ced9142a75ce939a388af0022a4e75a33964bbb3580564e0af809d3 a64599b8a61b5ccec9e67aed69447459c8da3d1ec6c7c7c82a7428b9b584fa67e90f68e2c00fbbed4613666e5168da4a16f395f7a3c3832b3b134bfc9cbaa95d2a0fe252f44ac6681eb6d40ab91c1d0282fed6701c57463d3c5f2bb8c6a7301fb4576aa3b5f15510db8956ff77478c26a7c09bea7b398cfc83503f538e,59126910a3462e3b7ac22892f637d87d90686bc0a9bbd4a32e2c4c71a168ba685f2184560e125db3dc23d90b9e820f1a 0e3ab0e054739b00cdb6a87bd12cae024b54cb5e550e6c425360c2e87e59401f5ec24ef0314855f0f56c47695d56a7fb1417693af2a1ed5291f2fee95f75eed54a1b1c2e81226fbff6f63ade584911c71967a8eb70933bc3f5d15bc91b5c2644d9516d3c3a8c154ee48e118bd1442c043c7a0dba5ac5b1d5360aae5b9065,d3239a33baa55b0f21169e0fde6114b08106baf3f4ba0ca19d7b5cf44030057ac672ce529eb0f3bda36819967819aafa a62fc595b4096e6336e53fcdfc8d1cc175d71dac9d750a6133d23199eaac288207944cea6b16d27631915b4619f743da2e30a0c00bbdb1bbb35ab852ef3b9aec6b0a8dcc6e9e1abaa3ad62ac0a6c5de765de2c3711b769e3fde44a74016fff82ac46fa8f1797d3b2a726b696e3dea5530439acee3a45c2a51bc32dd055650b,38a11581d874a574929c51f8dcc9e501900743864aec3ac0889e62c1071ca5f8b6ccf9c0bdb3bb365916eb4340973dc7 2b6db7ced8665ebe9deb080295218426bdaa7c6da9add2088932cdffbaa1c14129bccdd70f369efb149285858d2b1d155d14de2fdb680a8b027284055182a0cae275234cc9c92863c1b4ab66f304cf0621cd54565f5bff461d3b461bd40df28198e3732501b4860eadd503d26d6e69338f4e0456e9e9baf3d827ae685fb1d817,8fd01909381eb713803419361d8e82e92476a08edcc225bb8a135d215cb48d07b074624fcf2e73e666dba59334719839 10db509b2cdcaba6c062ae33be48116a29eb18e390e1bbada5ca0a2718afbcd23431440106594893043cc7f2625281bf7de2655880966a23705f0c5155c2f5cca9f2c2142e96d0a2e763b70686cd421b5db812daced0c6d65035fde558e94f26b3e6dde5bd13980cc80292b723013bd033284584bff27657871b0cf07a849f4ae2,5d7dc5fc9de88b1c0c46aa6d49273505ff7a76a179e31ab5d976a69d89b83dfa6deae9e1b93440ec055de1cc824d6b15 9334de60c997bda6086101a6314f64e4458f5ff9450c509df006e8c547983c651ca97879175aaba0c539e82d05c1e02c480975cbb30118121061b1ebac4f8d9a3781e2db6b18042e01ecf9017a64a0e57447ec7fcbe6a7f82585f7403ee2223d52d37b4bf426428613d6b4257980972a0acab508a7620c1cb28eb4e9d30fc41361ec,3d6bba145d7e69dbbb0f099d47a1f2138d4a00f26b07c62cf38471f0fb9ca022c61f7a769013a9bd8d5d87d8e01d9b4d e88ab086891693aa535ceb20e64c7ab97c7dd3548f3786339897a5f0c39031549ca870166e477743ccfbe016b4428d89738e426f5ffe81626137f17aecff61b72dbee2dc20961880cfe281dfab5ee38b1921881450e16032de5e4d55ad8d4fca609721b0692bac79be5a06e177fe8c80c0c83519fb3347de9f43d5561cb8107b9b5edc,fbcef80dd06e7e0b3b7a5485ca5bc2b388cb91a2890f181c857b3e0abefd6065499d82dd55f3fcd17e351c0a3636b859 fd19e01a83eb6ec810b94582cb8fbfa2fcb992b53684fb748d2264f020d3b960cb1d6b8c348c2b54a9fcea72330c2aaa9a24ecdb00c436abc702361a82bb8828b85369b8c72ece0082fe06557163899c2a0efa466c33c04343a839417057399a63a3929be1ee4805d6ce3e5d0d0967fe9004696a5663f4cac9179006a2ceb75542d75d68,338aacbac8ac5bcc13fafc0ec6d2ecf4a871f9b09d7b1bc5bd6f8d7c9dd1354b8e28c68158a36551dddab8b684579ee1 59ae20b6f7e0b3c7a989afb28324a40fca25d8651cf1f46ae383ef6d8441587aa1c04c3e3bf88e8131ce6145cfb8973d961e8432b202fa5af3e09d625faad825bc19da9b5c6c20d02abda2fcc58b5bd3fe507bf201263f30543819510c12bc23e2ddb4f711d087a86edb1b355313363a2de996b891025e147036087401ccf3ca7815bf3c49,ffc98d84c268bd09cad09cd7b4bf9d35ede97ec55885e839e557d21ecc0e28a855000386e68faae3e64a19b443b2587d 77ee804b9f3295ab2362798b72b0a1b2d3291dceb8139896355830f34b3b328561531f8079b79a6e9980705150866402fdc176c05897e359a6cb1a7ab067383eb497182a7e5aef7038e4c96d133b2782917417e391535b5e1b51f47d8ed7e4d4025fe98dc87b9c1622614bff3d1029e68e372de719803857ca52067cddaad958951cb2068cc6,471465890c3b9c03edfbf0f6883d565740bada3b7628ad6a27f729c35c1a8666953e8b99d2c89ede0bd2d5d70fdef11b b771d5cef5d1a41a93d15643d7181d2a2ef0a8e84d91812f20ed21f147bef732bf3a60ef4067c3734b85bc8cd471780f10dc9e8291b58339a677b960218f71e793f2797aea349406512829065d37bb55ea796fa4f56fd8896b49b2cd19b43215ad967c712b24e5032d065232e02c127409d2ed4146b9d75d763d52db98d949d3b0fed6a8052fbb,0f8ba7214de0e3a9e13c282bfa09cea782c31c052f516d0aaa403d97716e0d08b1f7f9bb4085b555740c813c4ece1b90 b32d95b0b9aad2a8816de6d06d1f86008505bd8c14124f6e9a163b5a2ade55f835d0ec3880ef50700d3b25e42cc0af050ccd1be5e555b23087e04d7bf9813622780c7313a1954f8740b6ee2d3f71f768dd417f520482bd3a08d4f222b4ee9dbd015447b33507dd50f3ab4247c5de9a8abd62a8decea01e3b87c8b927f5b08beb37674c6f8e380c04,cad2d28fbdcc3a5d71fb3adceec52313ad41d4ff1f915caa34ee127839dbf2e9a7b06e1c4ecd6255926c16c06e51efd0 04410e31082a47584b406f051398a6abe74e4da59bb6f85e6b49e8a1f7f2ca00dfba5462c2cd2bfde8b64fb21d70c083f11318b56a52d03b81cac5eec29eb31bd0078b6156786da3d6d8c33098c5c47bb67ac64db14165af65b44544d806dde5f487d5373c7f9792c299e9686b7e5821e7c8e2458315b996b5677d926dac57b3f22da873c601016a0d,5b192ebab47215a8e9fb8e4d561b220b1dc36707a3f085f7bb0175335c393251e3467f945570420c743365d0f09b9e09 8b81e9badde026f14d95c019977024c9e13db7a5cd21f9e9fc491d716164bbacdc7060d882615d411438aea056c340cdf977788f6e17d118de55026855f93270472d1fd18b9e7e812bae107e0dfde7063301b71f6cfe4e225cab3b232905a56e994f08ee2891ba922d49c3dafeb75f7c69750cb67d822c96176c46bd8a29f1701373fb09a1a6e3c7158f,df6f80b6d56cffa8545a27a245a50e6c2d117fc3598f465b6cd78560f4b3c7d2123f28f67ca9e65bfe0b7f566c57b9ef fa6eed24da6666a22208146b19a532c2ec9ba94f09f1def1e7fc13c399a48e41acc2a589d099276296348f396253b57cb0e40291bd282773656b6e0d8bea1cda084a3738816a840485fcf3fb307f777fa5feac48695c2af4769720258c77943fb4556c362d9cba8bf103aeb9034baa8ea8bfb9c4f8e6742ce0d52c49ea8e974f339612e830e9e7a9c29065,ce97e9df08789d84151a95c8134f0db74e5d4e076e0c15966825c371b79b3192fd7c9c6bdae86b775804b5363d1152c7 9bb4af1b4f09c071ce3cafa92e4eb73ce8a6f5d82a85733440368dee4eb1cbc7b55ac150773b6fe47dbe036c45582ed67e23f4c74585dab509df1b83610564545642b2b1ec463e18048fc23477c6b2aa035594ecd33791af6af4cbc2a1166aba8d628c57e707f0b0e8707caf91cd44bdb915e0296e0190d56d33d8dde10b5b60377838973c1d943c22ed335e,89bf889fbd7a384290d3b1d52709dba686351e53937630b7c7f01bcdda19b1517d317d65e799e686c71a0ab4d65b60b8 2167f02118cc62043e9091a647cadbed95611a521fe0d64e8518f16c808ab297725598ae296880a773607a798f7c3cfce80d251ebec6885015f9abf7eaabae46798f82cb5926de5c23f44a3f9f9534b3c6f405b5364c2f8a8bdc5ca49c749bed8ce4ba48897062ae8424ca6dde5f55c0e42a95d1e292ca54fb46a84fbc9cd87f2d0c9e7448de3043ae22fdd229,5d40e392c2e5b29c80c2d760a93aa1e193472d7ee59e203dd478fe24c5a6264e2873af31abde81827862901ae59571bb 94b7fa0bc1c44e949b1d7617d31b4720cbe7ca57c6fa4f4094d4761567e389ecc64f6968e4064df70df836a47d0c713336b5028b35930d29eb7a7f9a5af9ad5cf441745baec9bb014ceeff5a41ba5c1ce085feb980bab9cf79f2158e03ef7e63e29c38d7816a84d4f71e0f548b7fc316085ae38a060ff9b8dec36f91ad9ebc0a5b6c338cbb8f6659d342a24368cf,7c63a0dc1c39cf4fab2d22f62c1b00757aa4b89ed0d7128da243d9082ad0c78784ac24df34f5ab30375f1d581e7420bd ea40e83cb18b3a242c1ecc6ccd0b7853a439dab2c569cfc6dc38a19f5c90acbf76aef9ea3742ff3b54ef7d36eb7ce4ff1c9ab3bc119cff6be93c03e208783335c0ab8137be5b10cdc66ff3f89a1bddc6a1eed74f504cbe7290690bb295a872b9e3fe2cee9e6c67c41db8efd7d863cf10f840fe618e7936da3dca5ca6df933f24f6954ba0801a1294cd8d7e66dfafec,ed085d830afd2d8f79627281c2a8163c391fec2c58268f66f74cff9751bb29e0d071ea8fd2fcf943020d0ad758281bfd 157d5b7e4507f66d9a267476d33831e7bb768d4d04cc3438da12f9010263ea5fcafbde2579db2f6b58f911d593d5f79fb05fe3596e3fa80ff2f761d1b0e57080055c118c53e53cdb63055261d7c9b2b39bd90acc32520cbbdbda2c4fd8856dbcee173132a2679198daf83007a9b5c51511ae49766c792a29520388444ebefe28256fb33d4260439cba73a9479ee00c63,29124752ccd4ac724a9c3d53b0b352af2dbd76729f8c5c648b1e9d77819f32e2a7de0e15286478a24df9bb370f855c1c 836b34b515476f613fe447a4e0c3f3b8f20910ac89a3977055c960d2d5d2b72bd8acc715a9035321b86703a411dde0466d58a59769672aa60ad587b8481de4bba552a1645779789501ec53d540b904821f32b0bd1855b04e4848f9f8cfe9ebd8911be95781a759d7ad9724a7102dbe576776b7c632bc39b9b5e19057e226552a5994c1dbb3b5c7871a11f5537011044c53,faeab5687f39ec9894c5ccffb57e82a84bbb7d493cc6afc03d07ac7b4f181e61639b9a4771c99985ed7fa1773e1ca3f4 cc7784a4912a7ab5ad3620aab29ba87077cd3cb83636adc9f3dc94f51edf521b2161ef108f21a0a298557981c0e53ce6ced45bdf782c1ef200d29bab81dd6460586964edab7cebdbbec75fd7925060f7da2b853b2b089588fa0f8c16ec6498b14c55dcee335cb3a91d698e4d393ab8e8eac0825f8adebeee196df41205c011674e53426caa453f8de1cbb57932b0b741d4c6,e4e352b1d2d987a37c831629fe0c6ab9eab2c35e401d1b5f443adc54a96ef3c91d0876ccf46adef819c460369136da87 7639b461fff270b2455ac1d1afce782944aea5e9087eb4a39eb96bb5c3baaf0e868c8526d3404f9405e79e77bfac5ffb89bf1957b523e17d341d7323c302ea7083872dd5e8705694acdda36d5a1b895aaa16eca6104c82688532c8bfe1790b5dc9f4ec5fe95baed37e1d287be710431f1e5e8ee105bc42ed37d74b1e55984bf1c09fe6a1fa13ef3b96faeaed6a2a1950a12153,6c288fe4a74f0ed1b36d12f2db697fbc44017bb57d38c9ebd45f5a8b4feb59148060ae4ba1ffa162e10e6916cea1a794 eb6513fc61b30cfba58d4d7e80f94d14589090cf1d80b1df2e68088dc6104959ba0d583d585e9578ab0aec0cf36c48435eb52ed9ab4bbce7a5abe679c97ae2dbe35e8cc1d45b06dda3cf418665c57cbee4bbb47fa4caf78f4ee656fec237fe4eebbafa206e1ef2bd0ee4ae71bd0e9b2f54f91daadf1febfd7032381d636b733dcb3bf76fb14e23aff1f68ed3dbcf75c9b99c6f26,e1b6dac3f138b5f336f1f75894f825ffc197836c92bf359b55bb2a78239f24f9c4aa1e063c9c2b273b9cfa766fbfbae5 1594d74bf5dde444265d4c04dad9721ff3e34cbf622daf341fe16b96431f6c4df1f760d34f296eb97d98d560ad5286fec4dce1724f20b54fd7df51d4bf137add656c80546fb1bf516d62ee82baa992910ef4cc18b70f3f8698276fcfb44e0ec546c2c39cfd8ee91034ff9303058b4252462f86c823eb15bf481e6b79cc3a02218595b3658e8b37382bd5048eaed5fd02c37944e73b,6e07b59e93b22475633b5ba1aa6891119cff690697ac679e9349e8694c654074d965f0c32ff517b10ee8f6993f6e4646 4cfa1278903026f66fedd41374558be1b585d03c5c55dac94361df286d4bd39c7cb8037ed3b267b07c346626449d0cc5b0dd2cf221f7e4c3449a4be99985d2d5e67bff2923357ddeab5abcb4619f3a3a57b2cf928a022eb27676c6cf805689004fca4d41ea6c2d0a4789c7605f7bb838dd883b3ad3e6027e775bcf262881428099c7fff95b14c095ea130e0b9938a5e22fc52650f591,19eb2e15262a839538846f7252676971207913279b9ae9b6ba3650d8f3a8e558b13c35b31f1ab7429e376255338c4aa2 d3e65cb92cfa79662f6af493d696a07ccf32aaadcceff06e73e8d9f6f909209e66715d6e978788c49efb9087b170ecf3aa86d2d4d1a065ae0efc8924f365d676b3cb9e2bec918fd96d0b43dee83727c9a93bf56ca2b2e59adba85696546a815067fc7a78039629d4948d157e7b0d826d1bf8e81237bab7321312fdaa4d521744f988db6fdf04549d0fdca393d639c729af716e9c8bba48,f4da80b26fb5e6f7e5dfe47128eee095d46d9acefbe76f74efbc8a1ad68e8456634e9376025648ef7a3350299f366e29 842cc583504539622d7f71e7e31863a2b885c56a0ba62db4c2a3f2fd12e79660dc7205ca29a0dc0a87db4dc62ee47a41db36b9ddb3293b9ac4baae7df5c6e7201e17f717ab56e12cad476be49608ad2d50309e7d48d2d8de4fa58ac3cfeafeee48c0a9eec88498e3efc51f54d300d828dddccb9d0b06dd021a29cf5cb5b2506915beb8a11998b8b886e0f9b7a80e97d91a7d01270f9a7717,bdba7838a1e7a601d559f49ec1323b7c5fabe1e109fdcaff3f7865f9af4196abbf60ac123097a7b860fe438684355eb0 6c4b0a0719573e57248661e98febe326571f9a1ca813d3638531ae28b4860f23c3a3a8ac1c250034a660e2d71e16d3acc4bf9ce215c6f15b1c0fc7e77d3d27157e66da9ceec9258f8f2bf9e02b4ac93793dd6e29e307ede3695a0df63cbdc0fc66fb770813eb149ca2a916911bee4902c47c7802e69e405fe3c04ceb5522792a5503fa829f707272226621f7c488a7698c0d69aa561be9f378,96dfe9996bffa5e5d83c39b11f47f12d11210f7d4300b7180d1891eaaa7fe4809f9489b1e2407ff87fb2628ddf1fc020 51b7dbb7ce2ffeb427a91ccfe5218fd40f9e0b7e24756d4c47cd55606008bdc27d16400933906fd9f30effdd4880022d081155342af3fb6cd53672ab7fb5b3a3bcbe47be1fd3a2278cae8a5fd61c1433f7d350675dd21803746cadca574130f01200024c6340ab0cc2cf74f2234669f34e9009ef2eb94823d62b31407f4ba46f1a1eec41641e84d77727b59e746b8a671bef936f05be820759fa,79cf2a3017f82693c0a531a367186d055fce63081edf980c6a0b967b6ecce75d635b98485e9b6b285b08336ff34e61c9 83599d93f5561e821bd01a472386bc2ff4efbd4aed60d5821e84aae74d8071029810f5e286f8f17651cd27da07b1eb4382f754cd1c95268783ad09220f5502840370d494beb17124220f6afce91ec8a0f55231f9652433e5ce3489b727716cf4aeba7dcda20cd29aa9a859201253f948dd94395aba9e3852bd1d60dda7ae5dc045b283da006e1cbad83cc13292a315db5553305c628dd091146597,0ed3ca1620ce3a923a22e9d13bbf7543acee05f66b67e6d6f435bc513f4698949c27528068f892f0871916fe2d0433c3 2be9bf526c9d5a75d565dd11ef63b979d068659c7f026c08bea4af161d85a462d80e45040e91f4165c074c43ac661380311a8cbed59cc8e4c4518e80cd2c78ab1cabf66bff83eab3a80148550307310950d034a6286c93a1ece8929e6385c5e3bb6ea8a7c0fb6d6332e320e71cc4eb462a2a62e2bfe08f0ccad93e61bedb5dd0b786a728ab666f07e0576d189c92bf9fb20dca49ac2d3956d47385e2,69a27bbf080e015592893d3b55d1957d267784569923a466165a6fb129613d8ea6f610f3760e349d46b09277cb854546 ca76d3a12595a817682617006848675547d3e8f50c2210f9af906c0e7ce50b4460186fe70457a9e879e79fd4d1a688c70a347361c847ba0dd6aa52936eaf8e58a1be2f5c1c704e20146d366aeb3853bed9de9befe9569ac8aaea37a9fb7139a1a1a7d5c748605a8defb297869ebedd71d615a5da23496d11e11abbb126b206fa0a7797ee7de117986012d0362dcef775c2fe145ada6bda1ccb326bf644,e9c8830140629669a1dc5c8ee27be669b7122f4dc88224635cde334ad99615f3fdc4869e56263e3c7f4420736f714e26 f76b85dc67421025d64e93096d1d712b7baf7fb001716f02d33b2160c2c882c310ef13a576b1c2d30ef8f78ef8d2f465007109aad93f74cb9e7d7bef7c9590e8af3b267c89c15db238138c45833c98cc4a471a7802723ef4c744a853cf80a0c2568dd4ed58a2c9644806f42104cee53628e5bdf7b63b0b338e931e31b87c24b146c6d040605567ceef5960df9e022cb469d4c787f4cba3c544a1ac91f95f,4df060276105bf002f8e9f3f08d5b51f7c2adfe5aab9a1a683c053e045c89a883028b1093461368262ea85f5239ac7b1 25b8c9c032ea6bcd733ffc8718fbb2a503a4ea8f71dea1176189f694304f0ff68e862a8197b839957549ef243a5279fc2646bd4c009b6d1edebf24738197abb4c992f6b1dc9ba891f570879accd5a6b18691a93c7d0a8d38f95b639c1daeb48c4c2f15ccf5b9d508f8333c32de78781b41850f261b855c4bebcc125a380c54d501c5d3bd07e6b52102116088e53d76583b0161e2a58d0778f091206aabd5a1,816aa6db9b663288e5f932f0feaff0ee7875c3b3e6fbac0cddc458bd646371969cf50d2d0942fcc7403573b01b05b455 21cfdc2a7ccb7f331b3d2eefff37e48ad9fa9c788c3f3c200e0173d99963e1cbca93623b264e920394ae48bb4c3a5bb96ffbc8f0e53f30e22956adabc2765f57fb761e147ecbf8567533db6e50c8a1f894310a94edf806dd8ca6a0e141c0fa7c9fae6c6ae65f18c93a8529e6e5b553bf55f25be2e80a9882bd37f145fecbeb3d447a3c4e46c21524cc55cdd62f521ab92a8ba72b897996c49bb273198b7b1c9e,125b51c253391677c59c0332c6a13d07de55eab80857593f0839a56fa678c5e2f7cb2f934abe5e5887804aab5d8f13e1 4e452ba42127dcc956ef4f8f35dd68cb225fb73b5bc7e1ec5a898bba2931563e74faff3b67314f241ec49f4a7061e3bd0213ae826bab380f1f14faab8b0efddd5fd1bb49373853a08f30553d5a55ccbbb8153de4704f29ca2bdeef0419468e05dd51557ccc80c0a96190bbcc4d77ecff21c66bdf486459d427f986410f883a80a5bcc32c20f0478bb9a97a126fc5f95451e40f292a4614930d054c851acd019ccf,130c4b06a55f11c80c41608adfd7b4ce8795871bcf16900f20d2751e123b41d3b2048fd05267c2f9653ece3630bdd330 fa85671df7dadf99a6ffee97a3ab9991671f5629195049880497487867a6c446b60087fac9a0f2fcc8e3b24e97e42345b93b5f7d3691829d3f8ccd4bb36411b85fc2328eb0c51cb3151f70860ad3246ce0623a8dc8b3c49f958f8690f8e3860e71eb2b1479a5cea0b3f8befd87acaf5362435eaeccb52f38617bc6c5c2c6e269ead1fbd69e941d4ad2012da2c5b21bcfbf98e4a77ab2af1f3fda3233f046d38f1dc8,3ea0fa3fc035ea40cbbe9a3c1c6f7e5a437ba20f26736f2895f81d53bec92a186e74762910c4aa62565373d38b28d5fd e90847ae6797fbc0b6b36d6e588c0a743d725788ca50b6d792352ea8294f5ba654a15366b8e1b288d84f5178240827975a763bc45c7b0430e8a559df4488505e009c63da994f1403f407958203cebb6e37d89c94a5eacf6039a327f6c4dbbc7a2a307d976aa39e41af6537243fc218dfa6ab4dd817b6a397df5ca69107a9198799ed248641b63b42cb4c29bfdd7975ac96edfc274ac562d0474c60347a078ce4c25e88,7c1f1a46e409046b5a314767e8b7e7b1d9a92931443c5d02a581371b380afa1867e554c3f7df2e4557acfd9f8e230c44 f6d5c2b6c93954fc627602c00c4ca9a7d3ed12b27173f0b2c9b0e4a5939398a665e67e69d0b12fb7e4ceb253e8083d1ceb724ac07f009f094e42f2d6f2129489e846eaff0700a8d4453ef453a3eddc18f408c77a83275617fabc4ea3a2833aa73406c0e966276079d38e8e38539a70e194cc5513aaa457c699383fd1900b1e72bdfb835d1fd321b37ba80549b078a49ea08152869a918ca57f5b54ed71e4fd3ac5c06729,2ad23817002c8f0089d423760f5569eb67cbeed2f0f2aa12f8ede7856ee22aa6eb684f86ae91741a4aa3c80ac97c4a0b cf8562b1bed89892d67ddaaf3deeb28246456e972326dbcdb5cf3fb289aca01e68da5d59896e3a6165358b071b304d6ab3d018944be5049d5e0e2bb819acf67a6006111089e6767132d72dd85beddcbb2d64496db0cc92955ab4c6234f1eea24f2d51483f2e209e4589bf9519fac51b4d061e801125e605f8093bb6997bc163d551596fe4ab7cfae8fb9a90f6980480ce0c229fd1675409bd788354daf316240cfe0af93eb,d34974759c6a4aa9d1a4ed3de341a2ba022df127be92eb0bbc1900eb5ac7b8afe909b52da5714668c3c4b7db939f2436 2ace31abb0a2e3267944d2f75e1559985db7354c6e605f18dc8470423fca30b7331d9b33c4a4326783d1caae1b4f07060eff978e4746bf0c7e30cd61040bd5ec2746b29863eb7f103ebda614c4291a805b6a4c8214230564a0557bc7102e0bd3ed23719252f7435d64d210ee2aafc585be903fa41e1968c50fd5d5367926df7a05e3a42cf07e656ff92de73b036cf8b19898c0cb34557c0c12c2d8b84e91181af467bc75a9d1,0fb38ae233520d4f57469463e1e68d5518ea4e965755c03ad458dd285afb2df518c3d389bd361cbdce46b654631a18c2 0d8d09aed19f1013969ce5e7eb92f83a209ae76be31c754844ea9116ceb39a22ebb6003017bbcf26555fa6624185187db8f0cb3564b8b1c06bf685d47f3286eda20b83358f599d2044bbf0583fab8d78f854fe0a596183230c5ef8e54426750eaf2cc4e29d3bdd037e734d863c2bd9789b4c243096138f7672c232314effdfc6513427e2da76916b5248933be312eb5dde4cf70804fb258ac5fb82d58d08177ac6f4756017fff5,cb8f1cc9eb72465176b97b6226a87e69d77c65190114cce1f830a3dfefa5a8a278d5cf594b173ac58c06ec74958ff8c6 c3236b73deb7662bf3f3daa58f137b358ba610560ef7455785a9befdb035a066e90704f929bd9689cef0ce3bda5acf4480bceb8d09d10b098ad8500d9b6071dfc3a14af6c77511d81e3aa8844986c3bea6f469f9e02194c92868cd5f51646256798ff0424954c1434bdfed9facb390b07d342e992936e0f88bfd0e884a0ddb679d0547ccdec6384285a45429d115ac7d235a717242021d1dc35641f5f0a48e8445dba58e6cb2c8ea,87776d7022dc18592b578c534e2fcf57946e0f74c47df85612f89c6593fd50a9e445c048d6cda9a1d1d10ea3b3c973d0 b39feb8283eadc63e8184b51df5ae3fd41aac8a963bb0be1cd08aa5867d8d910c669221e73243360646f6553d1ca05a84e8dc0de05b6419ec349ca994480193d01c92525f3fb3dcefb08afc6d26947bdbbfd85193f53b50609c6140905c53a6686b58e53a319a57b962331ede98149af3de3118a819da4d76706a0424b4e1d2910b0ed26af61d150ebcb46595d4266a0bd7f651ba47d0c7f179ca28545007d92e8419d48fdfbd744ce,83f4442147fefc8e5bad3e9ee4c6661a771ae8c87458ab67153decd35daf6756eef28e4ae72e65ebfae08886a6e773e0 a983d54f503803e8c7999f4edbbe82e9084f422143a932ddddc47a17b0b7564a7f37a99d0786e99476428d29e29d3c197a72bfab1342c12a0fc4787fd7017d7a6174049ea43b5779169ef7472bdbbd941dcb82fc73aac45a8a94c9f2bd3477f61fd3b796f02a1b8264a214c6fea74b7051b226c722099ec7883a462b83b6afdd4009248b8a237f605fe5a08fe7d8b45321421ebba67bd70a0b00ddbf94baab7f359d5d1eea105f28dcfb,51358159074d960c0b9d73d5f12afdafb8f5d7905bda62379a6e0d6727d03efd26eea51b434368e2e566cb4747d0ba35 e4d1c1897a0a866ce564635b74222f9696bf2c7f640dd78d7e2aca66e1b61c642bb03ea7536aae597811e9bf4a7b453ede31f97b46a5f0ef51a071a2b3918df16b152519ae3776f9f1edab4c2a377c3292e96408359d3613844d5eb393000283d5ad3401a318b12fd1474b8612f2bb50fb6a8b9e023a54d7dde28c43d6d8854c8d9d1155935c199811dbfc87e9e0072e90eb88681cc7529714f8fb8a2c9d88567adfb974ee205a9bf7b848,3ecea8caf0d8efa42d54ac5ef36e624237d9f5508ed6fcb6434d67f3fb788c538c635798f52b2f073a4a7376fd31c4a3 b10c59723e3dcadd6d75df87d0a1580e73133a9b7d00cb95ec19f5547027323be75158b11f80b6e142c6a78531886d9047b08e551e75e6261e79785366d7024bd7cd9cf322d9be7d57fb661069f2481c7bb759cd71b4b36ca2bc2df6d3a328faebdb995a9794a8d72155ed551a1f87c80bf6059b43fc764900b18a1c2441f7487743cf84e565f61f8dd2ece6b6ccc9444049197aaaf53e926fbee3bfca8be588ec77f29d211be89de18b15f6,a8876fe4652acf72dcc8fd5133e5d4ca4e3766ab987cf66eae5e3770e252d2fd2a890525016623ee69064690828c727b db11f609baba7b0ca634926b1dd539c8cbada24967d7add4d9876f77c2d80c0f4dcefbd7121548373582705cca2495bd2a43716fe64ed26d059cfb566b3364bd49ee0717bdd9810dd14d8fad80dbbdc4cafb37cc60fb0fe2a80fb4541b8ca9d59dce457738a9d3d8f641af8c3fd6da162dc16fc01aac527a4a0255b4d231c0be50f44f0db0b713af03d968fe7f0f61ed0824c55c4b5265548febd6aad5c5eedf63efe793489c39b8fd29d104ce,6a09735736780f199d75c60903aa24d7f8aa17516690854f7522ef0bbf47d41cbdc8bdb2cb2f3c5596510539677607e9 bebd4f1a84fc8b15e4452a54bd02d69e304b7f32616aadd90537937106ae4e28de9d8aab02d19bc3e2fde1d651559e296453e4dba94370a14dbbb2d1d4e2022302ee90e208321efcd8528ad89e46dc839ea9df618ea8394a6bff308e7726bae0c19bcd4be52da6258e2ef4e96aa21244429f49ef5cb486d7ff35cac1bacb7e95711944bccb2ab34700d42d1eb38b5d536b947348a458ede3dc6bd6ec547b1b0cae5b257be36a7124e1060c170ffa,83fc2b91ab81d4b15363f15e53bf639063bac55502b4421cf9a53bcab9ff47fd77de5ac6934f67a412ea1910fad67768 5aca56a03a13784bdc3289d9364f79e2a85c12276b49b92db0adaa4f206d5028f213f678c3510e111f9dc4c1c1f8b6acb17a6413aa227607c515c62a733817ba5e762cc6748e7e0d6872c984d723c9bb3b117eb8963185300a80bfa65cde495d70a46c44858605fccbed086c2b45cef963d33294dbe9706b13af22f1b7c4cd5a001cfec251fba18e722c6e1c4b1166918b4f6f48a98b64b3c07fc86a6b17a6d0480ab79d4e6415b520f1c484d675b1,77c0480b91f32ef809d8c23ab236581f0bca8b9447a4d36228052b3abb6ab69c61d19d720486a3ff497a4673b84cb951 a5aad0e4646a32c85cfcac73f02fc5300f1982fabb2f2179e28303e447854094cdfc854310e5c0f60993ceff54d84d6b46323d930adb07c17599b35b505f09e784bca5985e0172257797fb53649e2e9723efd16865c31b5c3d5113b58bb0bfc8920fabdda086d7537e66d709d050bd14d0c960873f156fad5b3d3840cdfcdc9be6af519db262a27f40896ab25cc39f96984d650611c0d5a3080d5b3a1bf186abd42956588b3b58cd948970d298776060,781466e257d2fa594e39dc220a260c7478d2158bb70e426f9e9587f5a51a7c29fdc7af23e7ab9c774e33c08ab38cedb7 06cbbe67e94a978203ead6c057a1a5b098478b4b4cbef5a97e93c8e42f5572713575fc2a884531d7622f8f879387a859a80f10ef02708cd8f7413ab385afc357678b9578c0ebf641ef076a1a30f1f75379e9dcb2a885bdd295905ee80c0168a62a9597d10cf12dd2d8cee46645c7e5a141f6e0e23aa482abe5661c16e69ef1e28371e2e236c359ba4e92c25626a7b7ff13f6ea4ae906e1cfe163e91719b1f750a96cbde5fbc953d9e576cd216afc90323a,51bebfb5aafe777f390e2851b7eb9aa3809194fe3ba1689abee7e43d44a5874e0c252793dfd42c1270c63c407aef6780 f1c528cf7739874707d4d8ad5b98f7c77169de0b57188df233b2dc8a5b31eda5db4291dd9f68e6bad37b8d7f6c9c0044b3bf74bbc3d7d1798e138709b0d75e7c593d3cccdc1b20c7174b4e692add820ace262d45ccfae2077e878796347168060a162ecca8c38c1a88350bd63bb539134f700fd4addd5959e255337daa06bc86358fabcbefdfb5bc889783d843c08aadc6c4f6c36f65f156e851c9a0f917e4a367b5ad93d874812a1de6a7b93cd53ad97232,fcdf0032f34ba6c42d679b182d07b10f4dff2189b0a5ef6642fbb71b16f910e3240ed9b502b1c6b395bee74ad0fb4191 9d9f3a7ecd51b41f6572fd0d0881e30390dfb780991dae7db3b47619134718e6f987810e542619dfaa7b505c76b7350c6432d8bf1cfebdf1069b90a35f0d04cbdf130b0dfc7875f4a4e62cdb8e525aadd7ce842520a482ac18f09442d78305fe85a74e39e760a4837482ed2f437dd13b2ec1042afcf9decdc3e877e50ff4106ad10a525230d11920324a81094da31deab6476aa42f20c84843cfc1c58545ee80352bdd3740dd6a16792ae2d86f11641bb717c2,92aadc02bb9795a48b031034ee6ab873df481d232932fb5fd6c3762e50e58da46d1f5e5e874597f15c83127f0a3042b1 5179888724819fbad3afa927d3577796660e6a81c52d98e9303261d5a4a83232f6f758934d50aa83ff9e20a5926dfebaac49529d006eb923c5ae5048ed544ec471ed7191edf46363383824f915769b3e688094c682b02151e5ee01e510b431c8865aff8b6b6f2f59cb6d129da79e97c6d2b8fa6c6da3f603199d2d1bcab547682a81cd6cf65f6551121391d78bcc23b5bd0e922ec6d8bf97c952e84dd28aef909aba31edb903b28fbfc33b7703cd996215a11238,0d0ccdbfeb0a933f211eaa94eb452900324340505ccf8db7ad93e976271f812fb8907805f6313d0b0931f5c9203bdba5 576ef3520d30b7a4899b8c0d5e359e45c5189add100e43be429a02fb3de5ff4f8fd0e79d9663acca72cd29c94582b19292a557c5b1315297d168fbb54e9e2ecd13809c2b5fce998edc6570545e1499dbe7fb74d47cd7f35823b212b05bf3f5a79caa34224fdd670d335fcb106f5d92c3946f44d3afcbae2e41ac554d8e6759f332b76be89a0324aa12c5482d1ea3ee89ded4936f3e3c080436f539fa137e74c6d3389bdf5a45074c47bc7b20b0948407a66d855e2f,fef6b1f27b0cebc4568588e627d28dd569a58a8f9a51a1d2887b40f5547b2c67c71917be998d1987ac78e9077cc790ab 0df2152fa4f4357c8741529dd77e783925d3d76e95bafa2b542a2c33f3d1d117d159cf473f82310356fee4c90a9e505e70f8f24859656368ba09381fa245eb6c3d763f3093f0c89b972e66b53d59406d9f01aea07f8b3b615cac4ee4d05f542e7d0dab45d67ccccd3a606ccbeb31ea1fa7005ba07176e60dab7d78f6810ef086f42f08e595f0ec217372b98970cc6321576d92ce38f7c397a403bada1548d205c343ac09deca86325373c3b76d9f32028fea8eb32515,e9957732e7dab64550f003ee6d0353ae89bdc6d69d05766024cff189e4fc8faa41db72954e8e5ac0b29265c8f785e737 3e15350d87d6ebb5c8ad99d42515cfe17980933c7a8f6b8bbbf0a63728cefaad2052623c0bd5931839112a48633fb3c2004e0749c87a41b26a8b48945539d1ff41a4b269462fd199bfecd45374756f55a9116e92093ac99451aefb2af9fd32d6d7f5fbc7f7a540d5097c096ebc3b3a721541de073a1cc02f7fb0fb1b9327fb0b1218ca49c9487ab5396622a13ae546c97abdef6b56380dda7012a8384091b6656d0ab272d363cea78163ff765cdd13ab1738b940d16cae,98d73b3555f003058f7b5a145d89faec46c17099a354ef3834a20142dbd50a0e8054598ce7941bf5dd4df7ccf218f02f c38d6b0b757cb552be40940ece0009ef3b0b59307c1451686f1a22702922800d58bce7a636c1727ee547c01b214779e898fc0e560f8ae7f61bef4d75eaa696b921fd6b735d171535e9edd267c192b99880c87997711002009095d8a7a437e258104a41a505e5ef71e5613ddd2008195f0c574e6ba3fe40099cfa116e5f1a2fa8a6da04badcb4e2d5d0de31fdc4800891c45781a0aac7c907b56d631fca5ce8b2cde620d11d1777ed9fa603541de794ddc5758fcd5fad78c0,3795de490f43b9899947c1c305c30e26331ba0e611dce7961172b2e4299932147bc9e241c32e61fa964d4f436eccfd37 8d2de3f0b37a6385c90739805b170057f091cd0c7a0bc951540f26a5a75b3e694631bb64c7635eed316f51318e9d8de13c70a2aba04a14836855f35e480528b776d0a1e8a23b547c8b8d6a0d09b241d3be9377160cca4e6793d00a515dc2992cb7fc741daca171431da99cce6f7789f129e2ac5cf65b40d703035cd2185bb936c82002daf8cbc27a7a9e554b06196630446a6f0a14ba155ed26d95bd627b7205c072d02b60db0fd7e49ea058c2e0ba202daff0de91e845cf79,e9f289e671541fec4599915a0d9935bf5c20a12c203bcde88a46eaf5cab2d437f9fcdef67b98768bb80c9a874b3f46c7 c464bbdad275c50dcd983b65ad1019b9ff85a1e71c807f3204bb2c921dc31fbcd8c5fc45868ae9ef85b6c9b83bba2a5a822201ed68586ec5ec27fb2857a5d1a2d09d09115f22dcc39fe61f5e1ba0ff6e8b4acb4c6da748be7f3f0839739394ff7fa8e39f7f7e84a33c3866875c01bcb1263c9405d91908e9e0b50e7459fabb63d8c6bbb73d8e3483c099b55bc30ff092ff68b6adedfd477d63570c9f5515847f36e24ba0b705557130cec57ebad1d0b31a378e91894ee26e3a04,88c23be040be64d23aee8d7ee962228a6f07831b0e05fbe2f25f07729f00c2c617eb6975f57b3f17dd540e8ebca654a9 8b8d68bb8a75732fe272815a68a1c9c5aa31b41dedc8493e76525d1d013d33cebd9e21a5bb95db2616976a8c07fcf411f5f6bc6f7e0b57aca78cc2790a6f9b898858ac9c79b165ff24e66677531e39f572be5d81eb3264524181115f32780257bfb9aeec6af12af28e587cac068a1a2953b59ad680f4c245b2e3ec36f59940d37e1d3db38e13edb29b5c0f404f6ff87f80fc8be7a225ff22fbb9c8b6b1d7330c57840d24bc75b06b80d30dad6806544d510af6c4785e823ac3e0b8,6c42dee61cd97c50f5340cf4dc4f7e319fb5fac7a26b41dee66d789804bd1fef1ef2911643c9c1e2c0485c979b36d927 6b018710446f368e7421f1bc0ccf562d9c1843846bc8d98d1c9bf7d9d6fcb48bfc3bf83b36d44c4fa93430af75cd190bde36a7f92f867f58a803900df8018150384d85d82132f123006ac2aeba58e02a037fe6afbd65eca7c44977dd3dc74f48b6e7a1bfd5cc4dcf24e4d52e92bd4455848e4928b0eac8b7476fe3cc03e862aa4dff4470dbfed6de48e410f25096487ecfc32a27277f3f5023b2725ade461b1355889554a8836c9cf53bd767f5737d55184eea1ab3f53edd0976c485,720150fd5a1cf94a42f922efcbb723ff948f74ca6d0a3f399ac54da8b3bc07f39e6e2979c16c875866cf2f584ca7f2db c9534a24714bd4be37c88a3da1082eda7cabd154c309d7bd670dccd95aa535594463058a29f79031d6ecaa9f675d1211e9359be82669a79c855ea8d89dd38c2c761ddd0ec0ce9e97597432e9a1beae062cdd71edfdfd464119be9e69d18a7a7fd7ce0e2106f0c8b0abf4715e2ca48ef9f454dc203c96656653b727083513f8efb86e49c513bb758b3b052fe21f1c05bb33c37129d6cc81f1aef6adc45b0e8827a830fe545cf57d0955802c117d23ccb55ea28f95c0d8c2f9c5a242b33f,fa6f90935843d4f58e77cabe4ba662b4fabc1732725faf952eeed70fa0aad6a98fe67f3b6736a1c8f7c5bed4d9b017e0 07906c87297b867abf4576e9f3cc7f82f22b154afcbf293b9319f1b0584da6a40c27b32e0b1b7f412c4f1b82480e70a9235b12ec27090a5a33175a2bb28d8adc475cefe33f7803f8ce27967217381f02e67a3b4f84a71f1c5228e0c2ad971373f6f672624fcea8d1a9f85170fad30fa0bbd25035c3b41a6175d467998bd1215f6f3866f53847f9cf68ef3e2fbb54bc994de2302b829c5eea68ec441fcbafd7d16ae4fe9fff98bf00e5bc2ad54dd91ff9fda4dd77b6c754a91955d1fbaad0,4e2832fee290d1917c15b31893f6578c1299445b99bc48708e13348a11eb2f27fe217a63f532583793d18cdeccaa78b9 588e94b9054abc2189df69b8ba34341b77cdd528e7860e5defcaa79b0c9a452ad4b82aa306be84536eb7cedcbe058d7b84a6aef826b028b8a0271b69ac3605a9635ea9f5ea0aa700f3eb7835bc54611b922964300c953efe7491e3677c2cebe0822e956cd16433b02c68c4a23252c3f9e151a416b4963257b783e038f6b4d5c9f110f871652c7a649a7bcedcbccc6f2d0725bb903cc196ba76c76aa9f10a190b1d1168993baa9ffc96a1655216773458bec72b0e39c9f2c121378feab4e76a,1fb97d6f42480e9f13c934c4a874877a808f1d73314c544d8570c0749f20fa35f53a0c0bda1f10d1a10a029abbb50bc7 08959a7e4baae874928813364071194e2939772f20db7c3157078987c557c2a6d5abe68d520eef3dc491692e1e21bcd880adebf63bb4213b50897fa005256ed41b5690f78f52855c8d9168a4b666fce2da2b456d7a7e7c17ab5f2fb1ee90b79e698712e963715983fd07641ae4b4e9dc73203fac1ae11fa1f8c7941fcc82eab247addb56e2638447e9d609e610b60ce086656aaebf1da3c8a231d7d94e2fd0afe46b391ff14a72eaeb3f44ad4df85866def43d4781a0b3578bc996c87970b132,86b3c81aa398c8819afc4f282dfbce24f4192b2530c267a78373d253c35c1dcc4f40835529563fd42a33fd2cbd680515 cb2a234f45e2ecd5863895a451d389a369aab99cfef0d5c9ffca1e6e63f763b5c14fb9b478313c8e8c0efeb3ac9500cf5fd93791b789e67eac12fd038e2547cc8e0fc9db591f33a1e4907c64a922dda23ec9827310b306098554a4a78f050262db5b545b159e1ff1dca6eb734b872343b842c57eafcfda8405eedbb48ef32e99696d135979235c3a05364e371c2d76f1902f1d83146df9495c0a6c57d7bf9ee77e80f9787aee27be1fe126cdc9ef893a4a7dcbbc367e40fe4e1ee90b42ea25af01,a6bf548ab19ff60d6a8729fa62fdc9b59237843739afff877233ed374bcf70a017126974c2d1a3222d8d906be850a25d d16beadf02ab1d4dc6f88b8c4554c51e866df830b89c06e786a5f8757e8909310af51c840efe8d20b35331f4355d80f73295974653ddd620cdde4730fb6c8d0d2dcb2b45d92d4fbdb567c0a3e86bd1a8a795af26fbf29fc6c65941cddb090ff7cd230ac5268ab4606fccba9eded0a2b5d014ee0c34f0b2881ac036e24e151be89eeb6cd9a7a790afccff234d7cb11b99ebf58cd0c589f20bdac4f9f0e28f75e3e04e5b3debce607a496d848d67fa7b49132c71b878fd5557e082a18eca1fbda94d4b,ba7d3b6af5966c8c2723b1318820505d040da810126abc3e65088dc421e46d3e54dd31777c539ae083b7b8a4e2303836 8f65f6bc59a85705016e2bae7fe57980de3127e5ab275f573d334f73f8603106ec3553016608ef2dd6e69b24be0b7113bf6a760ba6e9ce1c48f9e186012cf96a1d4849d75df5bb8315387fd78e9e153e76f8ba7ec6c8849810f59fb4bb9b004318210b37f1299526866f44059e017e22e96cbe418699d014c6ea01c9f0038b10299884dbec3199bb05adc94e955a1533219c1115fed0e5f21228b071f40dd57c4240d98d37b73e412fe0fa4703120d7c0c67972ed233e5deb300a22605472fa3a3ba86,48ca5912c111db667a77be7c77f841e8b37130248377a19cd2fa3cd2eec48b337cfe07c290f2690ad49e79ce3a9f9e53 84891e52e0d451813210c3fd635b39a03a6b7a7317b221a7abc270dfa946c42669aacbbbdf801e1584f330e28c729847ea14152bd637b3d0f2b38b4bd5bf9c791c58806281103a3eabbaede5e711e539e6a8b2cf297cf351c078b4fa8f7f35cf61bebf8814bf248a01d41e86c5715ea40c63f7375379a7eb1d78f27622fb468ab784aaaba4e534a6dfd1df6fa15511341e725ed2e87f98737ccb7b6a6dfae416477472b046bf1811187d151bfa9f7b2bf9acdb23a3be507cdf14cfdf517d2cb5fb9e4ab6,4b3849b0916dd445b1856e1b908c414c752d280de2183dd1f0193e73fd1bc02198599502391e8ca48d65e610d6edcd8e fdd7a9433a3b4afabd7a3a5e3457e56debf78e84b7a0b0ca0e8c6d53bd0c2dae31b2700c6128334f43981be3b213b1d7a118d59c7e6b6493a86f866a1635c12859cfb9ad17460a77b4522a5c1883c3d6acc86e6162667ec414e9a104aa892053a2b1d72165a855bacd8faf8034a5dd9b716f47a0818c09bb6baf22aa503c06b4ca261f557761989d2afbd88b6a678ad128af68672107d0f1fc73c5ca740459297b3292b281e93bceb761bde7221c3a55708e5ec84472cddcaa84ecf23723cc0991355c6280,02c90820d5fa9a91072991e87bfeec7f18315f8ca1908edbf19886c4ca5bd54ab9ec96a6ab7b815b58538f088867030f 70a40bfbef92277a1aad72f6b79d0177197c4ebd432668cfec05d099accb651062b5dff156c0b27336687a94b26679cfdd9daf7ad204338dd9c4d14114033a5c225bd11f217b5f4732da167ee3f939262d4043fc9cba92303b7b5e96aea12adda64859df4b86e9ee0b58e39091e6b188b408ac94e1294a8911245ee361e60e601eff58d1d37639f3753bec80ebb4efde25817436076623fc65415fe51d1b0280366d12c554d86743f3c3b6572e400361a60726131441ba493a83fbe9afda90f7af1ae717238d,75967501ff781efc3c9d597179c8ccaee4373d9bf6aa6a5bed5118303edc8b7478a47f2ceaf0a6b5b7224e53d5f1cdb3 74356e449f4bf8644f77b14f4d67cb6bd9c1f5ae357621d5b8147e562b65c66585caf2e491b48529a01a34d226d436959153815380d5689e30b35357cdac6e08d3f2b0e88e200600d62bd9f5eaf488df86a4470ea227006182e44809009868c4c280c43d7d64a5268fa719074960087b3a6abc837882f882c837834535929389a12b2c78187e2ea07ef8b8eef27dc85002c3ae35f1a50bee6a1c48ba7e175f3316670b27983472aa6a61eed0a683a39ee323080620ea44a9f74411ae5ce99030528f9ab49c79f2,298387ba8a3eb88ee36b4206e54193bc5857f2a303ce41dff7c3bd53ef7ee3d34ae7e0c714311a7bd8d25502cab414b7 8c3798e51bc68482d7337d3abb75dc9ffe860714a9ad73551e120059860dde24ab87327222b64cf774415a70f724cdf270de3fe47dda07b61c9ef2a3551f45a5584860248fabde676e1cd75f6355aa3eaeabe3b51dc813d9fb2eaa4f0f1d9f834d7cad9c7c695ae84b329385bc0bef895b9f1edf44a03d4b410cc23a79a6b62e4f346a5e8dd851c2857995ddbf5b2d717aeb847310e1f6a46ac3d26a7f9b44985af656d2b7c9406e8a9e8f47dcb4ef6b83caacf9aefb6118bfcff7e44bef6937ebddc89186839b77,27cef65d1aecb7051bad55da0d601bc9d7a16d938a5715374a43109dd41b5c27d26c91cb44e4b47002d9b90aba0584d1 fa56bf730c4f8395875189c10c4fb251605757a8fecc31f9737e3c2503b02608e6731e85d7a38393c67de516b85304824bfb135e33bf22b3a23b913bf6acd2b7ab85198b8187b2bcd454d5e3318cacb32fd6261c31ae7f6c54ef6a7a2a4c9f3ecb81ce3555d4f0ad466dd4c108a90399d70041997c3b25345a9653f3c9a6711ab1b91d6a9d2216442da2c973cbd685ee7643bfd77327a2f7ae9cb283620a08716dfb462e5c1d65432ca9d56a90e811443cd1ecb8f0de179c9cb48ba4f6fec360c66f252f6e64edc96b,4ac9bdfd9f717d01598908ba457627d3af7c8123f7110dd7fdb40e91ee6cac201a8b728a384e663890847dfd4de7fa76 b6134f9c3e91dd8000740d009dd806240811d51ab1546a974bcb18d344642baa5cd5903af84d58ec5ba17301d5ec0f10ccd0509cbb3fd3fff9172d193af0f782252fd1338c7244d40e0e42362275b22d01c4c3389f19dd69bdf958ebe28e31a4ffe2b5f18a87831cfb7095f58a87c9fa21db72ba269379b2dc2384b3da953c7925761fed324620acea435e52b424a7723f6a2357374157a34cd8252351c25a1b232826cefe1bd3e70ffc15a31e7c0598219d7f00436294d11891b82497bc78aa5363892a2495df8c1eef,f03fa03e4cf9c23443d7dbdbb66d9abbafefb6500143ff0bfb5d7d6ca2bf1d7cd043a7ba7efb48f15ebc68d1f94598e7 c941cdb9c28ab0a791f2e5c8e8bb52850626aa89205bec3a7e22682313d198b1fa33fc7295381354858758ae6c8ec6fac3245c6e454d16fa2f51c4166fab51df272858f2d603770c40987f64442d487af49cd5c3991ce858ea2a60dab6a65a34414965933973ac2457089e359160b7cdedc42f29e10a91921785f6b7224ee0b349393cdcff6151b50b377d609559923d0984cda6000829b916ab6896693ef6a2199b3c22f7dc5500a15b8258420e314c222bc000bc4e5413e6dd82c993f8330f5c6d1be4bc79f08a1a0a46,9c779d981f9b7e491ff868be22b37fa9df72de55672a0226a821b29c045df4ff788fa7271d557ef6025eea255809f241 4499efffac4bcea52747efd1e4f20b73e48758be915c88a1ffe5299b0b005837a46b2f20a9cb3c6e64a9e3c564a27c0f1c6ad1960373036ec5bfe1a8fc6a435c2185ed0f114c50e8b3e4c7ed96b06a036819c9463e864a58d6286f785e32a804443a56af0b4df6abc57ed5c2b185ddee8489ea080deeee66aa33c2e6dab36251c402682b6824821f998c32163164298e1fafd31babbcffb594c91888c6219079d907fdb438ed89529d6d96212fd55abe20399dbefd342248507436931cdead496eb6e4a80358acc78647d043,2c0bc54a67b00ad703fc595751074c4e447efde00caaf8c8fcadf5768c330b6c7f1918f044f5c5c55810d078534a7bb3 eecbb8fdfa4da62170fd06727f697d81f83f601ff61e478105d3cb7502f2c89bf3e8f56edd469d049807a38882a7eefbc85fc9a950952e9fa84b8afebd3ce782d4da598002827b1eb98882ea1f0a8f7aa9ce013a6e9bc462fb66c8d4a18da21401e1b93356eb12f3725b6db1684f2300a98b9a119e5d27ff704affb618e12708e77e6e5f34139a5a41131fd1d6336c272a8fc37080f041c71341bee6ab550cb4a20a6ddb6a8e0299f2b14bc730c54b8b1c1c487b494bdccfd3a53535ab2f231590bf2c4062fd2ad58f906a2d0d,2db19ca557723cd3c17e7d8140ca301a5a2cb77e3f1f595f5b850a78943c7f36fc37056dcf2badb90dda77bfa969c0aa e64f3e4ace5c8418d65fec2bc5d2a303dd458034736e3b0df719098be7a206deaf52d6ba82316caf330ef852375188cde2b39cc94aa449578a7e2a8e3f5a9d68e816b8d16889fbc0ebf0939d04f63033ae9ae2bdab73b88c26d6bd25ee460ee1ef58fb0afa92cc539f8c76d3d097e7a6a63ebb9b5887edf3cf076028c5bbd5b9db3211371ad3fe121d4e9bf44229f4e1ecf5a0f9f0eba4d5ceb72878ab22c3f0eb5a625323ac66f7061f4a81fac834471e0c59553f108475fe290d43e6a055ae3ee46fb67422f814a68c4be3e8c9,71e5dd0755cf8b82bc79aed6fb61c9e4ff8361c9afc5ad980808a8bc480e09d59b234074472851080714e0275ce72dc5 d2cb2d733033f9e91395312808383cc4f0ca974e87ec68400d52e96b3fa6984ac58d9ad0938dde5a973008d818c49607d9de2284e7618f1b8aed8372fbd52ed54557af4220fac09dfa8443011699b97d743f8f2b1aef3537ebb45dcc9e13dfb438428ee190a4efdb3caeb7f3933117bf63abdc7e57beb4171c7e1ad260ab0587806c4d137b6316b50abc9cce0dff3acada47bbb86be777e617bbe578ff4519844db360e0a96c6701290e76bb95d26f0f804c8a4f2717eac4e7de9f2cff3bbc55a17e776c0d02856032a6cd10ad2838,51f951b8f1013ba9bced90478e248cd89d4debc6a19ceb6ef81ba1a5d8d3339d426d50a94c7ce3d143c45deccef94965 f2998955613dd414cc111df5ce30a995bb792e260b0e37a5b1d942fe90171a4ac2f66d4928d7ad377f4d0554cbf4c523d21f6e5f379d6f4b028cdcb9b1758d3b39663242ff3cb6ede6a36a6f05db3bc41e0d861b384b6dec58bb096d0a422fd542df175e1be1571fb52ae66f2d86a2f6824a8cfaacbac4a7492ad0433eeb15454af8f312b3b2a577750e3efbd370e8a8cac1582581971fba3ba4bd0d76e718dacf8433d33a59d287f8cc92234e7a271041b526e389efb0e40b6a18b3aaf658e82ed1c78631fd23b4c3eb27c3faec8685,210ebc1556e31a27eaf60a5fe3e181135c5ea117e3ff21af2d04beab9a243ffff632e3d7778f9a6d0304c1acf3659a3c 447797e2899b72a356ba55bf4df3acca6cdb1041eb477bd1834a9f9acbc340a294d729f2f97df3a610be0ff15edb9c6d5db41644b9874360140fc64f52aa03f0286c8a640670067a84e017926a70438db1bb361defee7317021425f8821def26d1efd77fc853b818545d055adc9284796e583c76e6fe74c9ac2587aa46aa8f8804f2feb5836cc4b3ababab8429a5783e17d5999f32242eb59ef30cd7adabc16d72dbdb097623047c98989f88d14eaf02a7212be16ec2d07981aaa99949ddf89ecd90333a77bc4e1988a82abf7c7caf3291,f5f659f6999bad8cdc77c42901a8d64c1fa827f7848985136140bf5d4b3bbb3d964d2d8156f9fd02b6d382bc8410a88e 9f2c18ade9b380c784e170fb763e9aa205f64303067eb1bcea93df5dac4bf5a2e00b78195f808df24fc76e26cb7be31dc35f0844cded1567bba29858cffc97fb29010331b01d6a3fb3159cc1b973d255da9843e34a0a4061cabdb9ed37f241bfabb3c20d32743f4026b59a4ccc385a2301f83c0b0a190b0f2d01acb8f0d41111e10f2f4e149379275599a52dc089b35fdd5234b0cfb7b6d8aebd563ca1fa653c5c021dfd6f5920e6f18bfafdbecbf0ab00281333ed50b9a999549c1c8f8c63d7626c48322e9791d5ff72294049bde91e73f8,b151bf98c52f63f294a4b1e990c86cb73c4bdd476b25c138ca66b2ba08447540b0a787dfddaa3d38af44ca8ebbed74d8 ae159f3fa33619002ae6bcce8cbbdd7d28e5ed9d61534595c4c9f43c402a9bb31f3b301cbfd4a43ce4c24cd5c9849cc6259eca90e2a79e01ffbac07ba0e147fa42676a1d668570e0396387b5bcd599e8e66aaed1b8a191c5a47547f61373021fa6deadcb55363d233c24440f2c73dbb519f7c9fa5a8962efd5f6252c0407f190dfefad707f3c7007d69ff36b8489a5b6b7c557e79dd4f50c06511f599f56c896b35c917b63ba35c6ff8092baf7d1658e77fc95d8a6a43eeb4c01f33f03877f92774be89c1114dd531c011e53a34dc248a2f0e6,47d74fdd9a19a5389313610643fa859ff0bd7b583b099fddb9c980dcc000afeb639dd99071ea31976da35b7bc949bd4e 3b8e97c5ffc2d6a40fa7de7fcefc90f3b12c940e7ab415321e29ee692dfac799b009c99dcddb708fce5a178c5c35ee2b8617143edc4c40b4d313661f49abdd93cea79d117518805496fe6acf292c4c2a1f76b403a97d7c399daf85b46ad84e16246c67d6836757bde336c290d5d401e6c1386ab32797af6bb251e9b2d8fe754c47482b72e0b394eab76916126fd68ea7d65eb93d59f5b4c5ac40f7c3b37e7f3694f29424c24af8c8f0ef59cd9dbf1d28e0e10f799a6f78cad1d45b9db3d7dee4a7059abe99182714983b9c9d44d7f5643596d4f3,9b809198dcce24175e33098331d3a402a821ae9326e72775aae34d1a9bb53d2b57863905cfd60543bbc42b454007c315 3434ec31b10fafdbfeec0dd6bd94e80f7ba9dca19ef075f7eb017512af66d6a4bcf7d16ba0819a1892a6372f9b35bcc7ca8155ee19e8428bc22d214856ed5fa9374c3c09bde169602cc219679f65a1566fc7316f4cc3b631a18fb4449fa6afa16a3db2bc4212eff539c67cf184680826535589c7111d73bffce431b4c40492e763d9279560aaa38eb2dc14a212d723f994a1fe656ff4dd14551ce4e7c621b2aa5604a10001b2878a897a28a08095c325e10a26d2fb1a75bfd64c250309bb55a44f23bbac0d5516a1c687d3b41ef2fbbf9cc56d4739,93c9834501fc728508a15eb9205e678983f3bdb0ba447ee739ae5082db37f2f2d485088130e0b1cbf0039d18bdf429f7 7c7953d81c8d208fd1c97681d48f49dd003456de60475b84070ef4847c333b74575b1fc8d2a186964485a3b8634feaa3595aaa1a2f4595a7d6b6153563dee31bbac443c8a33eed6d5d956a980a68366c2527b550ee950250dfb691eacbd5d56ae14b970668be174c89df2fea43ae52f13142639c884fd62a3683c0c3792f0f24ab1318bcb27e21f4737fab62c77ea38bc8fd1cf41f7dab64c13febe7152bf5bb7ab5a78f5346d43cc741cb6f72b7b8980f268b68bf62abdfb1577a52438fe14b591498cc95f071228460c7c5d5ceb4a7bde588e7f21c,c0ad8c3e7ea595104d4bc0a08dcbc85042ed50dd8d9b01ab47c9f066f91ad3bffede4107f1eb1f5b61ca7d4091d68327 7a6a4f4fdc59a1d223381ae5af498d74b7252ecf59e389e49130c7eaee626e7bd9897effd92017f4ccde66b0440462cdedfd352d8153e6a4c8d7a0812f701cc737b5178c2556f07111200eb627dbc299caa792dfa58f35935299fa3a3519e9b03166dffa159103ffa35e8577f7c0a86c6b46fe13db8e2cdd9dcfba85bdddcce0a7a8e155f81f712d8e9fe646153d3d22c811bd39f830433b2213dd46301941b59293fd0a33e2b63adbd95239bc01315c46fdb678875b3c81e053a40f581cfbec24a1404b1671a1b88a6d06120229518fb13a74ca0ac5ae,aa8daa02abcbc5a4b3003bff5cbc2c84594c5a0f84bd449a1a56be59566e13ec6803010d422a4c244b99812f4537c93d d9faa14cebe9b7de551b6c0765409a33938562013b5e8e0e1e0a6418df7399d0a6a771fb81c3ca9bd3bb8e2951b0bc792525a294ebd1083688806fe5e7f1e17fd4e3a41d00c89e8fcf4a363caedb1acb558e3d562f1302b3d83bb886ed27b76033798131dab05b4217381eaaa7ba15ec820bb5c13b516dd640eaec5a27d05fdfca0f35b3a5312146806b4c0275bcd0aaa3b2017f346975db566f9b4d137f4ee10644c2a2da66deeca5342e236495c3c6280528bfd32e90af4cd9bb908f34012b52b4bc56d48cc8a6b59bab014988eabd12e1a0a1c2e170e7,caeb4f829a925679416f7cb177ed4c99721b851ab59d52979bfec6d2aaa1e602f4310b15624f9d7bf2d351db73bfb5ea 2d8427433d0c61f2d96cfe80cf1e932265a191365c3b61aaa3d6dcc039f6ba2ad52a6a8cc30fc10f705e6b7705105977fa496c1c708a277a124304f1fc40911e7441d1b5e77b951aad7b01fd5db1b377d165b05bbf898042e39660caf8b279fe5229d1a8db86c0999ed65e53d01ccbc4b43173ccf992b3a14586f6ba42f5fe30afa8ae40c5df29966f9346da5f8b35f16a1de3ab6de0f477d8d8660918060e88b9b9e9ca6a4207033b87a812dbf5544d39e4882010f82b6ce005f8e8ff6fe3c3806bc2b73c2b83afb704345629304f9f86358712e9fae3ca3e,fc1fc7f19f6c9d0ad1462b24c121c89b01b4e083edad02a8dbdeb990d98cafe0afe01e2eba646872cd816b5203ee8a87 5e19d97887fcaac0387e22c6f803c34a3dacd2604172433f7a8a7a526ca4a2a1271ecfc5d5d7be5ac0d85d921095350dfc65997d443c21c8094e0a3fefd2961bcb94aed03291ae310ccda75d8ace4bc7d89e7d3e5d1650bda5d668b8b50bfc8e608e184f4d3a9a2badc4ff5f07e0c0bc8a9f2e0b2a26fd6d8c550008faaab75fd71af2a424bec9a7cd9d83fad4c8e9319115656a8717d3b523a68ff8004258b9990ed362308461804ba3e3a7e92d8f2ffae5c2fba55ba5a3c27c0a2f71bd711d2fe1799c2adb31b200035481e9ee5c4adf2ab9c0fa50b23975cf,84803e50dec901ff930c8a76ebc1f98ec72874deef0d249020b1dbeb4ea7d8c7da4761ede077158460e054a7f71d1994 c8e976ab4638909387ce3b8d4e510c3230e5690e02c45093b1d297910abc481e56eea0f296f98379dfc9080af69e73b2399d1c143bee80ae1328162ce1ba7f6a8374679b20aacd380eb4e61382c99998704d62701afa914f9a2705cdb065885f50d086c3eb5753700c387118bb142f3e6da1e988dfb31ac75d7368931e45d1391a274b22f83ceb072f9bcabc0b216685bfd789f5023971024b1878a205442522f9ea7d8797a4102a3df41703768251fd5e017c85d1200a464118aa35654e7ca39f3c375b8ef8cbe7534dbc64bc20befb417cf60ec92f63d9ee7397,05586bcb8077e19f3f43015216d623b1439c49ecdd3c53255553e9133fd1a9008891520d2eebe5684c546028ca2cddfe 7145fa124b7429a1fc2231237a949ba7201bcc1822d3272de005b682398196c25f7e5cc2f289fbf44415f699cb7fe6757791b1443410234ae061edf623359e2b4e32c19bf88450432dd01caa5eb16a1dc378f391ca5e3c4e5f356728bddd4975db7c890da8bbc84cc73ff244394d0d48954978765e4a00b593f70f2ca082673a261ed88dbcef1127728d8cd89bc2c597e9102ced6010f65fa75a14ebe467fa57ce3bd4948b6867d74a9df5c0ec6f530cbf2ee61ce6f06bc8f2864dff5583776b31df8c7ffcb61428a56bf7bd37188b4a5123bbf338393af46eda85e6,a200d8ef3d120b917561edc8420bde022b3ace792925c8fabf25ad9b0fa676d2260abd8098f383c0f93043d5d3f56c47 7fdfadcc9d29bad23ae038c6c65cda1aef757221b8872ed3d75ff8df7da0627d266e224e812c39f7983e4558bfd0a1f2bef3feb56ba09120ef762917b9c093867948547aee98600d10d87b20106878a8d22c64378bf634f7f75900c03986b077b0bf8b740a82447b61b99fee5376c5eb6680ec9e3088f0bdd0c56883413d60c1357d3c811950e5890e7600103c916341b80c743c6a852b7b4fb60c3ba21f3bc15b8382437a68454779cf3cd7f9f90ccc8ef28d0b706535b1e4108eb5627bb45d719cb046839aee311ca1abdc8319e050d67972cb35a6b1601b25dbf487,a8905d1e9f4fc96f2d769d31c9a120de43a0b20115c8d17bf0313206eb9cd87ae41df2d444c9d75f9366998263d61c07 988638219fd3095421f826f56e4f09e356296b628c3ce6930c9f2e758fd1a80c8273f2f61e4daae65c4f110d3e7ca0965ac7d24e34c0dc4ba2d6ff0bf5bbe93b3585f354d7543cb542a1aa54674d375077f2d360a8f4d42f3db131c3b7ab7306267ba107659864a90c8c909460a73621d1f5d9d3fd95beb19b23db1cb6c0d0fba91d36891529b8bd8263caa1bab56a4affaed44962df096d8d5b1eb845ef31188b3e10f1af811a13f156beb7a288aae593ebd1471b624aa1a7c6adf01e2200b3d72d88a3aed3100c88231e41efc376906f0b580dc895f080fda5741db1cb,88249af84a7f1e49d144869a3d4fe8aa6e1a4874ee467bc99e9c33e2105af2d097417d6b78537925392db2c5cb1e0b92 5aab62756d307a669d146aba988d9074c5a159b3de85151a819b117ca1ff6597f6156e80fdd28c9c3176835164d37da7da11d94e09add770b68a6e081cd22ca0c004bfe7cd283bf43a588da91f509b27a6584c474a4a2f3ee0f1f56447379240a5ab1fb77fdca49b305f07ba86b62756fb9efb4fc225c86845f026ea542076b91a0bc2cdd136e122c659be259d98e5841df4c2f60330d4d8cdee7bf1a0a244524eecc68ff2aef5bf0069c9e87a11c6e519de1a4062a10c83837388f7ef58598a3846f49d499682b683c4a062b421594fafbc1383c943ba83bdef515efcf10d,c46122d00b61e79df025a4d525b8a602c7ac004304a993872e3a8aa37fc0e8eaae5fad9a220c5c6afbd5a4783680013a 47b8216aa0fbb5d67966f2e82c17c07aa2d6327e96fcd83e3de7333689f3ee79994a1bf45082c4d725ed8d41205cb5bcdf5c341f77facb1da46a5b9b2cbc49eadf786bcd881f371a95fa17df73f606519aea0ff79d5a11427b98ee7f13a5c00637e2854134691059839121fea9abe2cd1bcbbbf27c74caf3678e05bfb1c949897ea01f56ffa4dafbe8644611685c617a3206c7a7036e4ac816799f693dafe7f19f303ce4eba09d21e03610201bfc665b72400a547a1e00fa9b7ad8d84f84b34aef118515e74def11b9188bd1e1f97d9a12c30132ec2806339bdadacda2fd8b78,aba0ee3c16d3dc753f6e466c33a998a73282c0dbeaf51324979a58437636886e5521b567c9a62d405ee558ffebae91bc 8cff1f67fe53c098896d9136389bd8881816ccab34862bb67a656e3d98896f3ce6ffd4da73975809fcdf9666760d6e561c55238b205d8049c1cedeef374d1735daa533147bfa960b2cce4a4f254176bb4d1bd1e89654432b8dbe1a135c42115b394b024856a2a83dc85d6782be4b444239567ccec4b184d4548eae3ff6a192f343292ba2e32a0f267f31cc26719eb85245d415fb897ac2da433ee91a99424c9d7f1766a44171d1651001c38fc79294accc68ceb5665d36218454d3ba169ae058a831338c17743603f81ee173bfc0927464f9bd728dee94c6aeab7aae6ee3a627e8,28b37125f233ba8d527e5284a16e6efe9ae84d3ebc6ee4c88aee0ab165c111a32ff2cdcc4213ac3267b0546dc0d74c84 eacd07971cff9b9939903f8c1d8cbb5d4db1b548a85d04e037514a583604e787f32992bf2111b97ac5e8a938233552731321522ab5e8583561260b7d13ebeef785b23a41fd8576a6da764a8ed6d822d4957a545d5244756c18aa80e1aad4d1f9c20d259dee1711e2cc8fd013169fb7cc4ce38b362f8e0936ae9198b7e838dcea4f7a5b9429bb3f6bbcf2dc92565e3676c1c5e6eb3dd2a0f86aa23edd3d0891f197447692794b3dfa269611ad97f72b795602b4fdb198f3fd3eb41b415064256e345e8d8c51c555dc8a21904a9b0f1ad0effab7786aac2da3b196507e9f33ca356427,258988e54d66e0c53b263ba68d9e3aa47d278df87c51219cce6f2547281ea6581540e28c1d7e069254791f0d385ea694 23ac4e9a42c6ef45c3336ce6dfc2ff7de8884cd23dc912fef0f7756c09d335c189f3ad3a23697abda851a81881a0c8ccafc980ab2c702564c2be15fe4c4b9f10dfb2248d0d0cb2e2887fd4598a1d4acda897944a2ffc580ff92719c95cf2aa42dc584674cb5a9bc5765b9d6ddf5789791d15f8dd925aa12bffafbce60827b490bb7df3dda6f2a143c8bf96abc903d83d59a791e2d62814a89b8080a28060568cf24a80ae61179fe84e0ffad00388178cb6a617d37efd54cc01970a4a41d1a8d3ddce46edbba4ab7c90ad565398d376f431189ce8c1c33e132feae6a8cd17a61c630012,f6a9399b482a3a5ea6fe79a2db7bae7e588c9b7da03dd85c120112fdbc234350529a1f37abbebeb770299e141eea7ba3 0172df732282c9d488669c358e3492260cbe91c95cfbc1e3fea6c4b0ec129b45f242ace09f152fc6234e1bee8aab8cd56e8b486e1dcba9c05407c2f95da8d8f1c0af78ee2ed82a3a79ec0cb0709396ee62aadb84f8a4ee8a7ccca3c1ee84e302a09ea802204afecf04097e67d0f8e8a9d2651126c0a598a37081e42d168b0ae8a71951c524259e4e2054e535b779679bdade566fe55700858618e626b4a0faf895bcce9011504a49e05fd56127eae3d1f8917afb548ecadabda1020111fec9314c413498a360b08640549a22cb23c731ace743252a8227a0d2689d4c6001606678dfb921,c0f957e52e40f9b8ea945d40779286f7257ad463a934b049df40c31d3547aef41aea2dd981fd2579327229b54ee04e66 3875b9240cf3e0a8b59c658540f26a701cf188496e2c2174788b126fd29402d6a75453ba0635284d08835f40051a2a9683dc92afb9383719191231170379ba6f4adc816fecbb0f9c446b785bf520796841e58878b73c58d3ebb097ce4761fdeabe15de2f319dfbaf1742cdeb389559c788131a6793e193856661376c81ce9568da19aa6925b47ffd77a43c7a0e758c37d69254909ff0fbd415ef8eb937bcd49f91468b49974c07dc819abd67395db0e05874ff83dddab895344abd0e7111b2df9e58d76d85ad98106b36295826be04d435615595605e4b4bb824b33c4afeb5e7bb0d19f909,779eecf39311318051bf73c441fb799708912049e28df3fadde449e4cd820cc4ca1bd0f8513927d9a64f5d34faaba039 747cc1a59fefba94a9c75ba866c30dc5c1cb0c0f8e9361d98484956dd5d1a40f6184afbe3dac9f76028d1caeccfbf69199c6ce2b4c092a3f4d2a56fe5a33a00757f4d7dee5dfb0524311a97ae0668a47971b95766e2f6dd48c3f57841f91f04a00ad5ea70f2d479a2620dc5cd78eaab3a3b011719b7e78d19ddf70d9423798af77517ebc55392fcd01fc600d8d466b9e7a7a85bf33f9cc5419e9bd874ddfd60981150ddaf8d7febaa4374f0872a5628d318000311e2f5655365ad4d407c20e5c04df17a222e7deec79c5ab1116d8572f91cd06e1ccc7ced53736fc867fd49ecebe6bf8082e8a,3d6495eb3da4e81d3470a050f416e2c8abf657a26d4fd64af35735b5782b611fb798a72fe7a61ce79d0496f69654cc80 57af971fccaec97435dc2ec9ef0429bcedc6b647729ea168858a6e49ac1071e706f4a5a645ca14e8c7746d65511620682c906c8b86ec901f3dded4167b3f00b06cbfac6aee3728051b3e5ff10b4f9ed8bd0b8da94303c833755b3ca3aeddf0b54bc8d6632138b5d25bab03d17b3458a9d782108006f5bb7de75b5c0ba854b423d8bb801e701e99dc4feaad59bc1c7112453b04d33ea3635639fb802c73c2b71d58a56bbd671b18fe34ed2e3dca38827d63fdb1d4fb3285405004b2b3e26081a8ff08cd6d2b08f8e7b7e90a2ab1ed7a41b1d0128522c2f8bff56a7fe67969422ce839a9d4608f03,f8188eafd0e2f9c7f44e70b38db1fe3e12b1469739ca6a13ed5a8661673a318296ffaf8d37f6fcec22a2d00eee2abeba 04e16dedc1227902baaf332d3d08923601bdd64f573faa1bb7201918cfe16b1e10151dae875da0c0d63c59c3dd050c4c6a874011b018421afc4623ab0381831b2da2a8ba42c96e4f70864ac44e106f94311051e74c77c1291bf5db9539e69567bf6a11cf6932bbbad33f8946bf5814c066d851633d1a513510039b349939bfd42b858c21827c8ff05f1d09b1b0765dc78a135b5ca4dfba0801bcaddfa175623c8b647eacfb4444b85a44f73890607d06d507a4f8393658788669f6ef4deb58d08c50ca0756d5e2f49d1a7ad73e0f0b3d3b5f090acf622b1878c59133e4a848e05153592ea81c6fbf,7d83c3f2265c90fef4bc6bd0d17a218f0e196489cb2d8455bbee80ab989ffea46de753346edbd5c88448fedb0d4aad4d 7c815c384eee0f288ece27cced52a01603127b079c007378bc5d1e6c5e9e6d1c735723acbbd5801ac49854b2b569d4472d33f40bbb8882956245c366dc3582d71696a97a4e19557e41e54dee482a14229005f93afd2c4a7d8614d10a97a9dfa07f7cd946fa45263063ddd29db8f9e34db60daa32684f0072ea2a9426ecebfa5239fb67f29c18cbaa2af6ed4bf4283936823ac1790164fec5457a9cba7c767ca59392d94cab7448f50eb34e9a93a80027471ce59736f099c886dea1ab4cba4d89f5fc7ae2f21ccd27f611eca4626b2d08dc22382e92c1efb2f6afdc8fdc3d2172604f5035c46b8197d3,fcc5fcfef5ba874a317b73c9b1b4cf6877373d41f0b8080a5d4f021e0d67f3b9f8ccaacfd4244fc10ba58b3a470db48b e29d505158dbdd937d9e3d2145658ee6f5992a2fc790f4f608d9cdb44a091d5b94b88e81fac4fdf5c49442f13b911c55886469629551189eaff62488f1a479b7db11a1560e198ddccccf50159093425ff7f1cb8d1d1246d0978764087d6bac257026b090efae8cec5f22b6f21c59ace1ac7386f5b8837ca6a12b6fbf5534dd0560ef05ca78104d3b943ddb220feaec89aa5e692a00f822a2ab9a2fe60350d75e7be16ff2526dc643872502d01f42f188abed0a6e9a6f5fd0d1ce7d5755c9ffa66b0af0b20bd806f08e06156690d81ac811778ca3dac2c249b96002017fce93e507e3b953acf99964b847,9b336b4c2b530f65c01af3f0a46cf1b626d5dbf1b2e50f790b9f34cca367315fdfbf7d9619cda4da22e39f9315303816 d85588696f576e65eca0155f395f0cfacd83f36a99111ed5768df2d116d2121e32357ba4f54ede927f189f297d3a97fad4e9a0f5b41d8d89dd7fe20156799c2b7b6bf9c957ba0d6763f5c3bc5129747bbb53652b49290cff1c87e2cdf2c4b95d8aaee09bc8fbfa6883e62d237885810491bfc101f1d8c636e3d0ede838ad05c207a3df4fad76452979eb99f29afaecedd1c63b8d36cf378454a1bb67a741c77ac6b6b3f95f4f02b64dabc15438613ea49750df42ee90101f115aa9abb9ff64324dde9dabbb01054e1bd6b4bcdc7930a44c2300d87ca78c06924d0323ad7887e46c90e8c4d100acd9eed21e,cac442227f10c4935d42c2914043167890c3ee1f4556d38d20767e8402aec4d70111f2034276e90f28102de634e26afd 3a12f8508b40c32c74492b66323375dcfe49184c78f73179f3314b79e63376b8ac683f5a51f1534bd729b02b04d002f55cbd8e8fc9b5ec1ea6bbe6a0d0e7431518e6ba45d124035f9d3dce0a8bb7bf1430a9f657e0b4ea9f20eb20c786a58181a1e20a96f1628f8728a13bdf7a4b4b32fc8aa7054cc4881ae7fa19afa65c6c3ee1b3ade3192af42054a8a911b8ec1826865d46d93f1e7c5e2b7813c92a506e53886f3d4701bb93d2a681ad109c845904bb861af8af0646b6e399b38b614051d34f6842563a0f37ec00cb3d865fc5d746c4987de2a65071100883a2a9c7a2bfe1e2dd603d9ea24dc7c5fd06be,05e3fb83ee8d609874d5935283702f29e5e896bb090c48033489295989c45dd2c06f5bd558b6bc786ab1251f75664b06 1861edce46fa5ad17e1ff1deae084dec580f97d0a67885dfe834b9dfac1ae076742ce9e267512ca51f6df5a455af0c5fd6abf94acea103a3370c354485a7846fb84f3ac7c2904b5b2fbf227002ce512133bb7e1c4e50057bfd1e44db33c7cdb969a99e284b184f50a14b068a1fc5009d9b298dbe92239572a7627aac02abe8f3e3b473417f36d4d2505d16b7577f4526c9d94a270a2dfe450d06da8f6fa956879a0a55cfe99e742ea555ea477ba3e9b44ccd508c375423611af92e55345dc215779b2d5119eba49c71d49b9fe3f1569fa24e5ca3e332d042422a8b8158d3ec66a80012976f31ffdf305f0c9c5e,6e463c7fb5cf436b1444921afe76d2fa4e7a23edfc9d496af1dc7e78a0173d797eff80f2bb32cfd34daf5633c4e6bcd6 08d0ffde3a6e4ef65608ea672e4830c12943d7187ccff08f4941cfc13e545f3b9c7ad5eebbe2b01642b486caf855c2c73f58c1e4e3391da8e2d63d96e15fd84953ae5c231911b00ad6050cd7aafdaac9b0f663ae6aab45519d0f5391a541707d479034e73a6ad805ae3598096af078f1393301493d663dd71f83869ca27ba508b7e91e81e128c1716dc3acfe3084b2201e04cf8006617eecf1b640474a5d45cfde9f4d3ef92d6d055b909892194d8a8218db6d8203a84261d200d71473d7488f3427416b6896c137d455f231071cacbc86e0415ab88aec841d96b7b8af41e05bb461a40645bf176601f1e760de5f,90457e3d33fce103420056a1c712441e04856b17cf37a4e133841e6d9a944b5ebef98cb1c1ccd575632cd3b5c177669e d782abb72a5be3392757be02d3e45be6e2099d6f000d042c8a543f50ed6ebc055a7f133b0dd8e9bc348536edcaae2e12ec18e8837df7a1b3c87ec46d50c241dee820fd586197552dc20beea50f445a07a38f1768a39e2b2ff05dddedf751f1def612d2e4d810daa3a0cc904516f9a43af660315385178a529e51f8aae141808c8bc5d7b60cac26bb984ac1890d0436ef780426c547e94a7b08f01acbfc4a3825eae04f520a9016f2fb8bf5165ed12736fc71e36a49a73614739eaa3ec834069b1b40f1350c2b3ab885c02c640b9f7686ed5f99527e41cfcd796fe4c256c9173186c226169ff257954ebda81c0e5f99,e5fc73c70028d1b82a9aa976d34f5fc72916839027038e79df2e29149e861f09a41a8203ce922203f710964b4f5bec2e 5fce8109a358570e40983e1184e541833bb9091e280f258cfb144387b05d190e431cb19baa67273ba0c58abe91308e1844dcd0b3678baa42f335f2fa05267a0240b3c718a5942b3b3e3bfa98a55c25a1466e8d7a603722cb2bbf03afa54cd769a99f310735ee5a05dae2c22d397bd95635f58c48a67f90e1b73aafcd3f82117f0166657838691005b18da6f341d6e90fc1cdb352b30fae45d348294e501b63252de14740f2b85ae5299ddec3172de8b6d0ba219a20a23bb5e10ff434d39db3f583305e9f5c039d98569e377b75a70ab837d1df269b8a4b566f40bb91b577455fd3c356c914fa06b9a7ce24c7317a172d,b0a1bba912daa6d80edc6519b501b629456394d7bda24d46afc9fc1d93a0b5962fa4f95214273290d32b3eaeff6f9dfe 6172f1971a6e1e4e6170afbad95d5fec99bf69b24b674bc17dd78011615e502de6f56b86b1a71d3f4348087218ac7b7d09302993be272e4a591968aef18a1262d665610d1070ee91cc8da36e1f841a69a7a682c580e836941d21d909a3afc1f0b963e1ca5ab193e124a1a53df1c587470e5881fb54dae1b0d840f0c8f9d1b04c645ba1041c7d8dbf22030a623aa15638b3d99a2c400ff76f3252079af88d2b37f35ee66c1ad7801a28d3d388ac450b97d5f0f79e4541755356b3b1a5696b023f39ab7ab5f28df4202936bc97393b93bc915cb159ea1bd7a0a414cb4b7a1ac3af68f50d79f0c9c7314e750f7d02faa58bfa,fce4637898ba0cbd9d7b636febddc02a435901cbbef8bf76d3e866d97d55354b71fc12e67a09e793d749316d714fe08c 5668ecd99dfbe215c4118398ac9c9eaf1a1433fab4ccdd3968064752b625ea944731f75d48a27d047d67547f14dd0ffaa55fa5e29f7af0d161d85eafc4f2029b717c918eab9d304543290bdba7158b68020c0ba4e079bc95b5bc0fc044a992b94b4ccd3bd66d0eabb5dbbab904d62e00752c4e3b0091d773bcf4c14b4377da3efff824b1cb2fa01b32d1e46c909e626ed2dae920f4c7dbeb635bc754facbd8d49beba3f23c1c41ccbfcd0ee0c114e69737f5597c0bf1d859f0c767e18002ae8e39c26261ffde2920d3d0baf0e906138696cfe5b7e32b600f45df3aaa39932f3a7df95b60fa8712a2271fcaf3911ce7b511b1,2b5471fae3805852f4cf39541f8a0a3774818f79fe50476e225d89b62e43be3255e96d19cbc334aef04192840f075c7d 03d625488354df30e3f875a68edfcf340e8366a8e1ab67f9d5c5486a96829dfac0578289082b2a62117e1cf418b43b90e0adc881fc6ae8105c888e9ecd21aea1c9ae1a4038dfd17378fed71d02ae492087d7cdcd98f746855227967cb1ab4714261ee3bead3f4db118329d3ebef4bc48a875c19ba763966da0ebea800e01b2f50b00e9dd4caca6dcb314d00184ef71ea2391d760c950710db4a70f9212ffc54861f9dc752ce18867b8ad0c48df8466ef7231e7ac567f0eb55099e622ebb86cb237520190a61c66ad34f1f4e289cb3282ae3eaac6152ed24d2c92bae5a7658252a53c49b7b02dfe54fdb2e90074b6cf310ac661,d4d3b49878aec72e2e7fafb687da7efe242cb60adf5c65c577c444cfc95a2a2ec670000c8a78898a07400e3502d73f27 2edc282ffb90b97118dd03aaa03b145f363905e3cbd2d50ecd692b37bf000185c651d3e9726c690d3773ec1e48510e42b17742b0b0377e7de6b8f55e00a8a4db4740cee6db0830529dd19617501dc1e9359aa3bcf147e0a76b3ab70c4984c13e339e6806bb35e683af8527093670859f3d8a0fc7d493bcba6bb12b5f65e71e705ca5d6c948d66ed3d730b26db395b3447737c26fad089aa0ad0e306cb28bf0acf106f89af3745f0ec72d534968cca543cd2ca50c94b1456743254e358c1317c07a07bf2b0eca438a709367fafc89a57239028fc5fecfd53b8ef958ef10ee0608b7f5cb9923ad97058ec067700cc746c127a61ee3,fe1c2143f2957819df9c9dd05d004be0e557eed8c5a2b7ce457d5856132b1c43eecec36ad704a930a85485a34c3860fe 90b28a6aa1fe533915bcb8e81ed6cacdc10962b7ff82474f845eeb86977600cf70b07ba8e3796141ee340e3fce842a38a50afbe90301a3bdcc591f2e7d9de53e495525560b908c892439990a2ca2679c5539ffdf636777ad9c1cdef809cda9e8dcdb451abb9e9c17efa4379abd24b182bd981cafc792640a183b61694301d04c5b3eaad694a6bd4cc06ef5da8fa23b4fa2a64559c5a68397930079d250c51bcf00e2b16a6c49171433b0aadfd80231276560b80458dd77089b7a1bbcc9e7e4b9f881eacd6c92c4318348a13f4914eb27115a1cfc5d16d7fd94954c3532efaca2cab025103b2d02c6fd71da3a77f417d7932685888a,4d1f626688e6899b5fccd47faab45e96c61e169869cabef40283b2418dfb2888fb80cc9f2c526497c50c5244784f195c 2969447d175490f2aa9bb055014dbef2e6854c95f8d60950bfe8c0be8de254c26b2d31b9e4de9c68c9adf49e4ee9b1c2850967f29f5d08738483b417bb96b2a56f0c8aca632b552059c59aac3f61f7b45c966b75f1d9931ff4e596406378cee91aaa726a3a84c33f37e9cdbe626b5745a0b06064a8a8d56e53aaf102d23dd9df0a3fdf7a638509a6761a33fa42fa8ddbd8e16159c93008b53765019c3f0e9f10b144ce2ac57f5d7297f9c9949e4ff68b70d339f87501ce8550b772f32c6da8ad2ce2100a895d8b08fa1eead7c376b407709703c510b50f87e73e43f8e7348f87c3832a547ef2bbe5799abedcf5e1f372ea809233f006,a063d778b0a2a11d3a9cba425ee5938fcaa6e2bf1f30a665fa811601444d5749afa18766db5f0426c5b8392238b7862e 721645633a44a2c78b19024eaecf58575ab23c27190833c26875dc0f0d50b46aea9c343d82ea7d5b3e50ec700545c615daeaea64726a0f05607576dcd396d812b03fb6551c641087856d050b10e6a4d5577b82a98afb89cee8594c9dc19e79feff0382fcfd127f1b803a4b9946f4ac9a4378e1e6e041b1389a53e3450cd32d9d2941b0cbabdb50da8ea2513145164c3ab6bcbd251c448d2d4b087ac57a59c2285d564f16da4ed5e607ed979592146ffb0ef3f3db308fb342df5eb5924a48256fc763141a278814c82d6d6348577545870ae3a83c7230ac02a1540fe1798f7ef09e335a865a2ae0949b21e4f748fb8a51f44750e213a8fb,470ee6d35157846890a01b3809eb923cc45dfff2fca2826f458325466c983b1c64bea38bcaeca921c90dd00432eccf89 6b860d39725a14b498bb714574b4d37ca787404768f64c648b1751b353ac92bac2c3a28ea909fdf0423336401a02e63ec24325300d823b6864bb701f9d7c7a1f8ec9d0ae3584aa6dd62ea1997cd831b4babd9a4da50932d4efda745c61e4130890e156aee6113716daf95764222a91187db2effea49d5d0596102d619bd26a616bbfda8335505fbb0d90b4c180d1a2335b91538e1668f9f9642790b4e55f9cab0fe2bdd2935d001ee6419abab5457880d0dbff20ed8758f4c20fe759efb33141cf0e892587fe8187e5fbc57786b7e8b089612c936dfc03d27efbbe7c8673f1606bd51d5ff386f4a7ab68edf59f385eb1291f117bfe717399,a8f0a3c89cf7e56acc18ace1638bcf133094fd9f75f05677c3cd0ed3614a593cbceb09c78c86e350fd07ff4429a6a165 6a01830af3889a25183244decb508bd01253d5b508ab490d3124afbf42626b2e70894e9b562b288d0a2450cfacf14a0ddae5c04716e5a0082c33981f6037d23d5e045ee1ef2283fb8b6378a914c5d9441627a722c282ff452e25a7ea608d69cee4393a0725d17963d0342684f255496d8a18c2961145315130549311fc07f0312fb78e6077334f87eaa873bee8aa95698996eb21375eb2b4ef53c14401207deb4568398e5dd9a7cf97e8c9663e23334b46912f8344c19efcf8c2ba6f04325f1a27e062b62a58d0766fc6db4d2c6a1928604b0175d872d16b7908ebc041761187cc785526c2a3873feac3a642bb39f5351550af9770c328af7b,c8a9a24464f21b133ebe20ba421a81ee34dceacd5f04dcfb66d219f7f4145633692c572b63007834a406ecfb938a14f6 b3c5e74b69933c2533106c563b4ca20238f2b6e675e8681e34a389894785bdade59652d4a73d80a5c85bd454fd1e9ffdad1c3815f5038e9ef432aac5c3c4fe840cc370cf86580a6011778bbedaf511a51b56d1a2eb68394aa299e26da9ada6a2f39b9faff7fba457689b9c1a577b2a1e505fdf75c7a0a64b1df81b3a356001bf0df4e02a1fc59f651c9d585ec6224bb279c6beba2966e8882d68376081b987468e7aed1ef90ebd090ae825795cdca1b4f09a979c8dfc21a48d8a53cdbb26c4db547fc06efe2f9850edd2685a4661cb4911f165d4b63ef25b87d0a96d3dff6ab0758999aad214d07bd4f133a6734fde445fe474711b69a98f7e2b,91bada31b57a4bf3d2eb19a34ff921db10bd6406191486d25d5ca4de5e00b5e2815dae741064e5b877ac57511b949f91 83af34279ccb5430febec07a81950d30f4b66f484826afee7456f0071a51e1bbc55570b5cc7ec6f9309c17bf5befdd7c6ba6e968cf218a2b34bd5cf927ab846e38a40bbd81759e9e33381016a755f699df35d660007b5eadf292feefb735207ebf70b5bd17834f7bfa0e16cb219ad4af524ab1ea37334aa66435e5d397fc0a065c411ebbce32c240b90476d307ce802ec82c1c49bc1bec48c0675ec2a6c6f3ed3e5b741d13437095707c565e10d8a20b8c20468ff9514fcf31b4249cd82dcee58c0a2af538b291a87e3390d737191a07484a5d3f3fb8c8f15ce056e5e5f8febe5e1fb59d6740980aa06ca8a0c20f5712b4cde5d032e92ab89f0ae1,f310e80951c7bb6395ca168aae7ec42deff6c4cd3f5be9c8b49b85b405f731911ae8267ffebd543dbdf409ec20a858d2 a7ed84749ccc56bb1dfba57119d279d412b8a986886d810f067af349e8749e9ea746a60b03742636c464fc1ee233acc52c1983914692b64309edfdf29f1ab912ec3e8da074d3f1d231511f5756f0b6eead3e89a6a88fe330a10face267bffbfc3e3090c7fd9a850561f363ad75ea881e7244f80ff55802d5ef7a1a4e7b89fcfa80f16df54d1b056ee637e6964b9e0ffd15b6196bdd7db270c56b47251485348e49813b4eb9ed122a01b3ea45ad5e1a929df61d5c0f3e77e1fdc356b63883a60e9cbb9fc3e00c2f32dbd469659883f690c6772e335f617bc33f161d6f6984252ee12e62b6000ac5231e0c9bc65be223d8dfd94c5004a101af9fd6c0fb,cfd05e080994fc6d7aef2d8c6e44d8a5e90f5a231676e0fae0d2b8ce162ca9d06712580c99997a7709a06180dd42fb91 a6fe30dcfcda1a329e82ab50e32b5f50eb25c873c5d2305860a835aecee6264aa36a47429922c4b8b3afd00da16035830edb897831c4e7b00f2c23fc0b15fdc30d85fb70c30c431c638e1a25b51caf1d7e8b050b7f89bfb30f59f0f20fecff3d639abc4255b3868fc45dd81e47eb12ab40f2aac735df5d1dc1ad997cefc4d836b854cee9ac02900036f3867fe0d84afff37bde3308c2206c62c4743375094108877c73b87b2546fe05ea137bedfc06a2796274099a0d554da8f7d7223a48cbf31b7decaa1ebc8b145763e3673168c1b1b715c1cd99ecd3ddb238b06049885ecad9347c2436dff32c771f34a38587a44a82c5d3d137a03caa27e66c8ff6,8fa26dd5a54bf94a037a165ec5ce3ed86147a08dcfe3b48818b0c0beeefa33b145323b598f761de2b639d05127f1cf3e 83167ff53704c3aa19e9fb3303539759c46dd4091a52ddae9ad86408b69335989e61414bc20ab4d01220e35241eff5c9522b079fba597674c8d716fe441e566110b6211531ceccf8fd06bc8e511d00785e57788ed9a1c5c73524f01830d2e1148c92d0edc97113e3b7b5cd3049627abdb8b39dd4d6890e0ee91993f92b03354a88f52251c546e64434d9c3d74544f23fb93e5a2d2f1fb15545b4e1367c97335b0291944c8b730ad3d4789273fa44fb98d78a36c3c3764abeeac7c569c1e43a352e5b770c3504f87090dee075a1c4c85c0c39cf421bdcc615f9eff6cb4fe6468004aece5f30e1ecc6db22ad9939bb2b0ccc96521dfbf4ae008b5b46bc006e,283fd61d1e50572ef403bf9c554d76d694a54f902c49795d1cf506f0ee263e7ba994f72bdc4732531fa7194257f2dfda 3a3a819c48efde2ad914fbf00e18ab6bc4f14513ab27d0c178a188b61431e7f5623cb66b23346775d386b50e982c493adbbfc54b9a3cd383382336a1a0b2150a15358f336d03ae18f666c7573d55c4fd181c29e6ccfde63ea35f0adf5885cfc0a3d84a2b2e4dd24496db789e663170cef74798aa1bbcd4574ea0bba40489d764b2f83aadc66b148b4a0cd95246c127d5871c4f11418690a5ddf01246a0c80a43c70088b6183639dcfda4125bd113a8f49ee23ed306faac576c3fb0c1e256671d817fc2534a52f5b439f72e424de376f4c565cca82307dd9ef76da5b7c4eb7e085172e328807c02d011ffbf33785378d79dc266f6a5be6bb0e4a92eceebaeb1,128dc611762be9b135b3739484cfaadca7481d68514f3dfd6f5d78bb1863ae68130835cdc7061a7ed964b32f1db75ee1 # EOF pysha3-1.0.2/vectors/keccak_384.txt0000664000175000017500000026043412711153011017537 0ustar heimesheimes00000000000000# ShortMsgKAT_384.txt ,2c23146a63a29acf99e73b88f8c24eaa7dc60aa771780ccc006afbfa8fe2479b2dd2b21362337441ac12b515911957ff cc,1b84e62a46e5a201861754af5dc95c4a1a69caf4a796ae405680161e29572641f5fa1e8641d7958336ee7b11c58f73e9 41fb,495cce2714cd72c8c53c3363d22c58b55960fe26be0bf3bbc7a3316dd563ad1db8410e75eefea655e39d4670ec0b1792 1f877c,b0665c345f45e6de145b0190335ef5d5aa59e0b49fc1425d5eae7355ea442284cb8a2152d565ebdf2810eccab15af04f c1ecfdfc,f1850b2abb24f3fd683c701582789d9e92b6a45f9c345f9dae7f7997c8c910e88003e592e59281cf92c92d6b51a1afd1 21f134ac57,68d437327f158287c304bbaf36f782f497da2c480a1fbb268682362218641f9070a014919ad7331c49beefccb437fe9a c6f50bb74e29,03566ec003ff55184f0c85beebc6d1ecf5e5d082d8d40137246f8fd42bce097c09418845ef60286fdd894a00fd2d6589 119713cc83eeef,790d700fa34d6a835be311b639474780148a2f087ac2fa86e8a1a433ec7a04fcbfc5284a3e188b7d91c6d094eafbeecb 4a4f202484512526,638e65758a297cb09ded1ac5b9e8f779802000ab791f67f33c60be36443793adcc8a4a58e98688157a41784f02a4bcb2 1f66ab4185ed9b6375,308ec6f2ee3f6e01fb3aa06eb7c8cadd199354751b69fd4ba4d4671858f28bb45c94e712ad9d356fcb443067ef5aca2d eed7422227613b6f53c9,a88f2fd112e5f11e775aa7858a3a5202e8fcd259f5d112baa6f568240d2ecc047ead88509e4b8a747d370751ffb2fdc0 eaeed5cdffd89dece455f1,a22a31349d7816545be31b80e992bdbb62a29480917ceabd0af5f2fafbf276d4c29b63a04910b830b8757c81e223b7f9 5be43c90f22902e4fe8ed2d3,36ca9cc329f9a00faa5f4f21170a017742174d3cf03c084aeb759f6fa0390349e1b502e435cffb0bce4ed46c0012a65c a746273228122f381c3b46e4f1,3da54976b291df77f10bf95e9b7ef9fb2f88de075ddf6650ba788590f4e2e3c830d3b7dfc0193656b0a185e3aad9aa5a 3c5871cd619c69a63b540eb5a625,d21a7cf252358a1159a55934456e67d9e1da538d4e9f9f1ace2fd75f3074b27ae2b356144bda7ba0b1eca1aa201b20de fa22874bcc068879e8ef11a69f0722,8a0c6331429375f052960afff6d5fe33759f97145d60b262bede86d5254994558fc1800add09d6887c275f4dd3531cb0 52a608ab21ccdd8a4457a57ede782176,18422ac1d3a1e54bad876883d2d6dd65f65c1d5f33a7125cc4c186405a12ed64ba96672eedda8c5a6331d28683f488eb 82e192e4043ddcd12ecf52969d0f807eed,4a59da05c6e035d59d93f559d4a130d3ed91c22eada53fd679fb0b0f31398a6ff83a5a9739bfd4e95f57318fccb816f0 75683dcb556140c522543bb6e9098b21a21e,98e6bcca5f2bb30c554700202e0604f7c86b4941f0345325100c83b1234c45856dfa761e70dcd972ecb1247aeac29259 06e4efe45035e61faaf4287b4d8d1f12ca97e5,d3c3d76b3d3926fd4cc4c05a087c2d76992998a5cd8c13fa3d233e0ecb2ad8b81ba4be581e02be91c7f82ccac90013a0 e26193989d06568fe688e75540aea06747d9f851,7c53da060058183ca6204e77f0709aebef73557c8f5e45c195b7e9416e7261365d03b8a2d6c01a102655344e725475c4 d8dc8fdefbdce9d44e4cbafe78447bae3b5436102a,2415c1d053ca207c17d99d02dbd177cd1aa7f00b0d0ca2cf30b4d2098eea1a04a68e5b1c6df2fb25ece157c423ee8ab7 57085fd7e14216ab102d8317b0cb338a786d5fc32d8f,90da42b0c314445eafd8656b26644addeddc713eab36289bffc6ed4a85be66a10f5acd6b3c61e9c36a17c26260872dc8 a05404df5dbb57697e2c16fa29defac8ab3560d6126fa0,ee209e98a75a67b09008202cad380917eb1f92c5db4e8f2c64900af8c603d265cab317bf7b8e2251e479f8818d3022ca aecbb02759f7433d6fcb06963c74061cd83b5b3ffa6f13c6,1198efa57e1a7884dac827e683255575510e1f92024a135144659be87bbf0d063ed26c987647b923a091cf11680316fe aafdc9243d3d4a096558a360cc27c8d862f0be73db5e88aa55,0435e54c016c0791677ddbc6badd55d146754296b31132b0b1c0b5ce4aedb03aeaa9a2dc5157d7af20b8e36d75e1cc00 7bc84867f6f9e9fdc3e1046cae3a52c77ed485860ee260e30b15,88d898ed7e6e54a683812b372f678a5fd73bcf3160a969fe4584651adb3255f9adcc8b85dcca5c3bf8eba3a1b69d9b90 fac523575a99ec48279a7a459e98ff901918a475034327efb55843,7ac343a9369fa7bf45afed43084dc1e275ab1b70034cfaacd4f3cb5e5e2201cfbd1cfff83baad3897a4cb8a0de5c35c4 0f8b2d8fcfd9d68cffc17ccfb117709b53d26462a3f346fb7c79b85e,58877b8dd98c51339e4302abe95cf57662cf05aa01938161cbfb5ddda724517f0c002d54b54eea7ebd64e209daeb8f01 a963c3e895ff5a0be4824400518d81412f875fa50521e26e85eac90c04,1cd638128718be351385e7a156c3f0ee8b210d1565876f8ed46c227b930d188fe8ca27760fe189d3b136836561e9a0ee 03a18688b10cc0edf83adf0a84808a9718383c4070c6c4f295098699ac2c,b4dbdfd9922afd1ce46ff1cb27c30e2aeaa967631a04001c7ef2b5eabd3c0678c0ff219be7b9fa04cf83dd40bc1b33b6 84fb51b517df6c5accb5d022f8f28da09b10232d42320ffc32dbecc3835b29,503dcaa4adda5a9420b2e436dd62d9ab2e0254295c2982ef67fce40f117a2400ab492f7bd5d133c6ec2232268bc27b42 9f2fcc7c90de090d6b87cd7e9718c1ea6cb21118fc2d5de9f97e5db6ac1e9c10,64d11adc77af5c568f37e44efac5fd03c460391aa833abec4e464237a8937eedd23ec513dd2a71d0329beaa8bef395c9 de8f1b3faa4b7040ed4563c3b8e598253178e87e4d0df75e4ff2f2dedd5a0be046,cf38764973f1ec1c34b5433ae75a3aad1aaef6ab197850c56c8617bcd6a882f6666883ac17b2dccdbaa647075d0972b5 62f154ec394d0bc757d045c798c8b87a00e0655d0481a7d2d9fb58d93aedc676b5a0,882bff904bff1031139503bf6e0274c7a3928c2d73bf474a65b97c22f65f32be26ad1c5f7e4fa35d5b6253aa4076361a b2dcfe9ff19e2b23ce7da2a4207d3e5ec7c6112a8a22aec9675a886378e14e5bfbad4e,80448b7a76e0f0666048c02165a4fa8dfd250a227ccdd4471c3703d07762362dc1df55fec29e2a31fe70958374271dd7 47f5697ac8c31409c0868827347a613a3562041c633cf1f1f86865a576e02835ed2c2492,6268cd6b41f4c5123ec4d54d1e6943abb32dbe7bffb8eb95e4fcee5c12d4647be143c27f1281cdd275904920441508da 512a6d292e67ecb2fe486bfe92660953a75484ff4c4f2eca2b0af0edcdd4339c6b2ee4e542,c73d18de07a65acc7e2d8b2a51002ae28cbc4b0a6ee7f81a6b483f81a6df8ff6b33f632a6e6312888ca714821c0b13df 973cf2b4dcf0bfa872b41194cb05bb4e16760a1840d8343301802576197ec19e2a1493d8f4fb,3a0bea62f42f9ceedb348f6e1613f00356ed9766a5c19f0c2eeb05c74de69d3943e16cf72281fdd92715fa3d51515931 80beebcd2e3f8a9451d4499961c9731ae667cdc24ea020ce3b9aa4bbc0a7f79e30a934467da4b0,1092f63955f3dfef1322cf9516f21540215552bc5709ccda17ad276ecaa091a78451fe9925791b8a9191b5d42010156f 7abaa12ec2a7347674e444140ae0fb659d08e1c66decd8d6eae925fa451d65f3c0308e29446b8ed3,8cd022971d5769761b8e96b442444fa1850f1201aab0ac9f6e8404e2b3ea1d936244eedc7957c80b7fae60b3f216c6a0 c88dee9927679b8af422abcbacf283b904ff31e1cac58c7819809f65d5807d46723b20f67ba610c2b7,b6575d53d353360521b20aa1f993f6e2b5a262d1f508789d5ce2469e9f3f33cce8848df690ccb0d676fb949eb171a7d7 01e43fe350fcec450ec9b102053e6b5d56e09896e0ddd9074fe138e6038210270c834ce6eadc2bb86bf6,7358c6a0ae58efa14f65b8e162f07ef2d0ad8dd2006a98293307b76b3ba9e71c308a6694f0b56de8d59e58536c3513e8 337023370a48b62ee43546f17c4ef2bf8d7ecd1d49f90bab604b839c2e6e5bd21540d29ba27ab8e309a4b7,18030c2b5ea23b6c66bdaf180a41173394540215ca48fb3e758433ff9884efb9e56d2922ba5320ba84be36e6efe6b89d 6892540f964c8c74bd2db02c0ad884510cb38afd4438af31fc912756f3efec6b32b58ebc38fc2a6b913596a8,6f9f9016ac3b6a5978a5dc8c7506c8b4d28742253bc542e79d95824417aa542991eef7e2b9c58cdb0c93616ae9c1f88f f5961dfd2b1ffffda4ffbf30560c165bfedab8ce0be525845deb8dc61004b7db38467205f5dcfb34a2acfe96c0,424421bb9399bd44ab76500273d7f1e1421a2bfde1a1c130c0b3474409d8ae92b3e38539cfb09ed1d23c62bb32b9364b ca061a2eb6ceed8881ce2057172d869d73a1951e63d57261384b80ceb5451e77b06cf0f5a0ea15ca907ee1c27eba,d07a2caceea869274baeecda43b6020930ef383a897c72a7ac7fbd8ff5cea7f8be655844d9f9bd2b498880fa1527d94f 1743a77251d69242750c4f1140532cd3c33f9b5ccdf7514e8584d4a5f9fbd730bcf84d0d4726364b9bf95ab251d9bb,25d7ab5e930819cf5f59acd2542691ad66481da547eaa9c2add7c8ea69a475f416c430ea1de840974e3236a62520911f d8faba1f5194c4db5f176fabfff856924ef627a37cd08cf55608bba8f1e324d7c7f157298eabc4dce7d89ce5162499f9,36a6bf2d4eb3cc6fb797914e734b2ca8702ca7cc6d539b4ddb233efafcf068712e845364a4a929d31a440c7daf8b134c be9684be70340860373c9c482ba517e899fc81baaa12e5c6d7727975d1d41ba8bef788cdb5cf4606c9c1c7f61aed59f97d,b69d40a90207edb20c0068f402008c0e64300b89a1b6af7930708b263c790a087f3adbb4c84295d23392e0692f35bdbc 7e15d2b9ea74ca60f66c8dfab377d9198b7b16deb6a1ba0ea3c7ee2042f89d3786e779cf053c77785aa9e692f821f14a7f51,cddb883b9eadc59d2894178b3ba6f61e5e11c2c415c89e554e20a17e4909f8d960f02aa80e1a5129aeebf2cf975711a4 9a219be43713bd578015e9fda66c0f2d83cac563b776ab9f38f3e4f7ef229cb443304fba401efb2bdbd7ece939102298651c86,fbe0056d65af279eff1573f169809a05b6a52112b662d07cdd2570be5e198a28d1ea49cbeaf0c05e76a9f09baf6d1f34 c8f2b693bd0d75ef99caebdc22adf4088a95a3542f637203e283bbc3268780e787d68d28cc3897452f6a22aa8573ccebf245972a,26473de684cf58d559c7c0cfd360a9affdf33900fd69a3a946581484b93ef6fe6ffac461b4551e136beac64cc33a4c15 ec0f99711016c6a2a07ad80d16427506ce6f441059fd269442baaa28c6ca037b22eeac49d5d894c0bf66219f2c08e9d0e8ab21de52,462ad97bb0156a5da3dd0e9e5bf06d31024fe43bb80c018f6858ee4332f2eb5a78ada06cb55ddc172ad87f88e26d2451 0dc45181337ca32a8222fe7a3bf42fc9f89744259cff653504d6051fe84b1a7ffd20cb47d4696ce212a686bb9be9a8ab1c697b6d6a33,9f890fa80a4c48b67181e89dbf15175ce48b21f9d09405218a8ce3c0759282780e142fc59851157d14509fce79d1b17f de286ba4206e8b005714f80fb1cdfaebde91d29f84603e4a3ebc04686f99a46c9e880b96c574825582e8812a26e5a857ffc6579f63742f,2d9a3447d7723d837b8784feaf03b8f9694cde5ffb84c6a6628895a345bb8f3f5ba725416906de063b1cefb722c7e56a eebcc18057252cbf3f9c070f1a73213356d5d4bc19ac2a411ec8cdeee7a571e2e20eaf61fd0c33a0ffeb297ddb77a97f0a415347db66bcaf,af415063a5e25c6e55eca7f9bd1cb0c71a7a059b569737036b339ca559cc9c7466fa239ea57cfb5fcc50944871c008fb 416b5cdc9fe951bd361bd7abfc120a5054758eba88fdd68fd84e39d3b09ac25497d36b43cbe7b85a6a3cebda8db4e5549c3ee51bb6fcb6ac1e,6811ec07e6e85a289c881722ae84e6aef01fd2761294c6ed9856d2f7ea1c71a89b2fcf4a9e56533360ea22317561ec05 5c5faf66f32e0f8311c32e8da8284a4ed60891a5a7e50fb2956b3cbaa79fc66ca376460e100415401fc2b8518c64502f187ea14bfc9503759705,7c90268e981a3c0ff19e14ce9830a1b9da5fc183950875961582644462059dd2fadcfa68750d7d2f44dfcab9ffce5832 7167e1e02be1a7ca69d788666f823ae4eef39271f3c26a5cf7cee05bca83161066dc2e217b330df821103799df6d74810eed363adc4ab99f36046a,64e9ad357b58c6fa0d26d0d1f48c4ab057b9f80965ac38494e88f542ba41d6b798fc2dd88290f8dde7948c19b5a1f260 2fda311dbba27321c5329510fae6948f03210b76d43e7448d1689a063877b6d14c4f6d0eaa96c150051371f7dd8a4119f7da5c483cc3e6723c01fb7d,3d73b33f001387fd1e752068af39454e476b8407038c772d94400458c93664ec5226ad1bd3a19a6d9a6fbd6e6a62695c 95d1474a5aab5d2422aca6e481187833a6212bd2d0f91451a67dd786dfc91dfed51b35f47e1deb8a8ab4b9cb67b70179cc26f553ae7b569969ce151b8d,fc619ca9810caae3639b3fc661388c454167271e65ed0a2e5e8bc718ad21b9ede895a658c946dc2fb15b33354dfe402a c71bd7941f41df044a2927a8ff55b4b467c33d089f0988aa253d294addbdb32530c0d4208b10d9959823f0c0f0734684006df79f7099870f6bf53211a88d,5843123a28f0b50c082023ac43b7299c4fe67302532df4805be6dec3b84515b1c6c98f8a4e3d6ca826da4a11300c3b9b f57c64006d9ea761892e145c99df1b24640883da79d9ed5262859dcda8c3c32e05b03d984f1ab4a230242ab6b78d368dc5aaa1e6d3498d53371e84b0c1d4ba,81edf06e9b64f3016b1547535aba4db08760fd23e9580163192f663ff62106001006a1393cf20de4656dbcb029fb6314 e926ae8b0af6e53176dbffcc2a6b88c6bd765f939d3d178a9bde9ef3aa131c61e31c1e42cdfaf4b4dcde579a37e150efbef5555b4c1cb40439d835a724e2fae7,14aa679b0c11f9c363f549330261b45e1e90ce31f4a1b0ce5cb9eb81bd6079a3742d8602356c50985d0d3e540fdfdcfb 16e8b3d8f988e9bb04de9c96f2627811c973ce4a5296b4772ca3eefeb80a652bdf21f50df79f32db23f9f73d393b2d57d9a0297f7a2f2e79cfda39fa393df1ac00,e430ce80bcc61d87fde0a278cff54d730c03a03377f4ac10b93ed59c5880117acb20f1705aefd29be033d2f202594655 fc424eeb27c18a11c01f39c555d8b78a805b88dba1dc2a42ed5e2c0ec737ff68b2456d80eb85e11714fa3f8eabfb906d3c17964cb4f5e76b29c1765db03d91be37fc,c9f74ac47f9146f091de6309357f3c2af3a9c4474cc005aeface3c7a552b6127e34ec82c3afcaacdd83e695cb86241e4 abe3472b54e72734bdba7d9158736464251c4f21b33fbbc92d7fac9a35c4e3322ff01d2380cbaa4ef8fb07d21a2128b7b9f5b6d9f34e13f39c7ffc2e72e47888599ba5,c42ecc8863077abff689413ce37b61f0436ddb62e56de4e3333c26d95aee9e9cbe1d8aaa6744c0de6ba9cff0ff01a6bf 36f9f0a65f2ca498d739b944d6eff3da5ebba57e7d9c41598a2b0e4380f3cf4b479ec2348d015ffe6256273511154afcf3b4b4bf09d6c4744fdd0f62d75079d440706b05,b15392718cbf4a7c7fad1c15e7f26c446e79d54251404e646b4dca3d42142ed5140d0d30bd836c7d513ce6f5e104d42d abc87763cae1ca98bd8c5b82caba54ac83286f87e9610128ae4de68ac95df5e329c360717bd349f26b872528492ca7c94c2c1e1ef56b74dbb65c2ac351981fdb31d06c77a4,e03294c68edf4e8826b699abddbef75467c49cab56e085e4b83a58b2d9bdfac9d58b45aacc0ec0ce2d6d79686a41ac13 94f7ca8e1a54234c6d53cc734bb3d3150c8ba8c5f880eab8d25fed13793a9701ebe320509286fd8e422e931d99c98da4df7e70ae447bab8cffd92382d8a77760a259fc4fbd72,d5539d7aeff9f74dc75b6e95eade063be419b15a4179cfd06d4fd2741e22b2a24395aaa1c0242c995eb5ea891347b4db 13bd2811f6ed2b6f04ff3895aceed7bef8dcd45eb121791bc194a0f806206bffc3b9281c2b308b1a729ce008119dd3066e9378acdcc50a98a82e20738800b6cddbe5fe9694ad6d,b115a9968b054c934c396d8188ba0c33a23c7189ce88b1de4a06cd319792d28647eae1d88fb0b87443e46292a5c645e8 1eed9cba179a009ec2ec5508773dd305477ca117e6d569e66b5f64c6bc64801ce25a8424ce4a26d575b8a6fb10ead3fd1992edddeec2ebe7150dc98f63adc3237ef57b91397aa8a7,c8faef757e6d7b0af46da1e57c71abb4aaf7cc91c5cdc33ba8a738172b95de087ec4c92692cb40ee3787bce3206fb7ea ba5b67b5ec3a3ffae2c19dd8176a2ef75c0cd903725d45c9cb7009a900c0b0ca7a2967a95ae68269a6dbf8466c7b6844a1d608ac661f7eff00538e323db5f2c644b78b2d48de1a08aa,f4f21bb74593aa107dc195ff52a3f90816cceae8d3eb9d4577b28b49c339837a52700a62eb421e8ca1c87f456310f62c 0efa26ac5673167dcacab860932ed612f65ff49b80fa9ae65465e5542cb62075df1c5ae54fba4db807be25b070033efa223bdd5b1d3c94c6e1909c02b620d4b1b3a6c9fed24d70749604,83544511a07f6058d9fe5aad7ea837a9e180d8bbb884c5650b798942983a605a514c21d8d63db0e25aae51d26f410bc5 bbfd933d1fd7bf594ac7f435277dc17d8d5a5b8e4d13d96d2f64e771abbd51a5a8aea741beccbddb177bcea05243ebd003cfdeae877cca4da94605b67691919d8b033f77d384ca01593c1b,8ecd8459fb904d2eddb14207659c2bf96efbd3e4c8988736ec75088f1cc8115d3fffc8cedf1c01721469d27968a6856b 90078999fd3c35b8afbf4066cbde335891365f0fc75c1286cdd88fa51fab94f9b8def7c9ac582a5dbcd95817afb7d1b48f63704e19c2baa4df347f48d4a6d603013c23f1e9611d595ebac37c,be60246e27959dc8065c6d4dcac93eb7f7146b49c759bf1dd5eba46a3ecf074784a9df18deab7a19af7f6290cdaca87b 64105eca863515c20e7cfbaa0a0b8809046164f374d691cdbd6508aaabc1819f9ac84b52bafc1b0fe7cddbc554b608c01c8904c669d8db316a0953a4c68ece324ec5a49ffdb59a1bd6a292aa0e,9235ba18c55e2cbca0fb1da3bc8d0dfd848ca0e51ddc1020d4becc0f138da1087929fec93af16f5fb29c4a777dd91548 d4654be288b9f3b711c2d02015978a8cc57471d5680a092aa534f7372c71ceaab725a383c4fcf4d8deaa57fca3ce056f312961eccf9b86f14981ba5bed6ab5b4498e1f6c82c6cae6fc14845b3c8a,08739dd866c6216adca26d6121e5d81fdb1f7bcd4802c2b811d73c282277d4014b4936e5589f62279bb33075705795f8 12d9394888305ac96e65f2bf0e1b18c29c90fe9d714dd59f651f52b88b3008c588435548066ea2fc4c101118c91f32556224a540de6efddbca296ef1fb00341f5b01fecfc146bdb251b3bdad556cd2,d2a2e858a5dd85d62e6f51af7e42352ac0d7a68a835431bcca47557e3b5c3373f40d3baf85ae416012c7c982b2325790 871a0d7a5f36c3da1dfce57acd8ab8487c274fad336bc137ebd6ff4658b547c1dcfab65f037aa58f35ef16aff4abe77ba61f65826f7be681b5b6d5a1ea8085e2ae9cd5cf0991878a311b549a6d6af230,2990d7ea068a0307047b151d5dd6b1b2358a9ec8ad9b6b826cf1bef399d488bd68d77df8be99f7df7af14ae0ce636379 e90b4ffef4d457bc7711ff4aa72231ca25af6b2e206f8bf859d8758b89a7cd36105db2538d06da83bad5f663ba11a5f6f61f236fd5f8d53c5e89f183a3cec615b50c7c681e773d109ff7491b5cc22296c5,4b3087f800e4084d7f685737ac635db459cf70c4fa863c711c1143cc10f0c4ab0a2370c099fb282f9c1ce5f015bf3f79 e728de62d75856500c4c77a428612cd804f30c3f10d36fb219c5ca0aa30726ab190e5f3f279e0733d77e7267c17be27d21650a9a4d1e32f649627638dbada9702c7ca303269ed14014b2f3cf8b894eac8554,5d347fddb118fd7db270898407979d2d1531d3ff6642ec4f22917ebbeda6cee0fb0de11432edddfcbf0e2ab9cfa65804 6348f229e7b1df3b770c77544e5166e081850fa1c6c88169db74c76e42eb983facb276ad6a0d1fa7b50d3e3b6fcd799ec97470920a7abed47d288ff883e24ca21c7f8016b93bb9b9e078bdb9703d2b781b616e,954637b87fdcc484f2b61f7f42558068029f96099c1d6b9246585092eae68924e5441b45027248a2728833169bfa5004 4b127fde5de733a1680c2790363627e63ac8a3f1b4707d982caea258655d9bf18f89afe54127482ba01e08845594b671306a025c9a5c5b6f93b0a39522dc877437be5c2436cbf300ce7ab6747934fcfc30aeaaf6,78726e91ac311f4d104706362b0314c243cd81644125881fbc03670210c89fb8e7bff6c61ff68b234c3171f16b398f36 08461f006cff4cc64b752c957287e5a0faabc05c9bff89d23fd902d324c79903b48fcb8f8f4b01f3e4ddb483593d25f000386698f5ade7faade9615fdc50d32785ea51d49894e45baa3dc707e224688c6408b68b11,80763fb54688f122269430980aa3abe09091020b8cfa6bde0edc2c63aed8b8ba097cdb79b8fc7f5117508fca4864a14d 68c8f8849b120e6e0c9969a5866af591a829b92f33cd9a4a3196957a148c49138e1e2f5c7619a6d5edebe995acd81ec8bb9c7b9cfca678d081ea9e25a75d39db04e18d475920ce828b94e72241f24db72546b352a0e4,80447583262ded037da88f3b98698bd8f7aed7d9bf4d99f8132ec3e7d16bb844adad188757ceb32b359c56e5007ea3e4 b8d56472954e31fb54e28fca743f84d8dc34891cb564c64b08f7b71636debd64ca1edbdba7fc5c3e40049ce982bba8c7e0703034e331384695e9de76b5104f2fbc4535ecbeebc33bc27f29f18f6f27e8023b0fbb6f563c,e5fb4ae5ddfb4ce8221df4be70240b76851e55fae86baf35bad9e7179e24c95da6f0f0695a8a5291a2394b92a6ff7b7c 0d58ac665fa84342e60cefee31b1a4eacdb092f122dfc68309077aed1f3e528f578859ee9e4cefb4a728e946324927b675cd4f4ac84f64db3dacfe850c1dd18744c74ceccd9fe4dc214085108f404eab6d8f452b5442a47d,ce6b07c0c7da2fa1e6ca05de0652fc9f1f452fc261e73e52457c72bf0d51bac7d66160cff16d6a03527982e7d4393507 1755e2d2e5d1c1b0156456b539753ff416651d44698e87002dcf61dcfa2b4e72f264d9ad591df1fdee7b41b2eb00283c5aebb3411323b672eaa145c5125185104f20f335804b02325b6dea65603f349f4d5d8b782dd3469ccd,fa76e05f8d2832dadfeba0107a3137b7b9d4d19a77a1e78f8bbfecda7ef46414c363453e8c4902c302a4e18cea4ba157 b180de1a611111ee7584ba2c4b020598cd574ac77e404e853d15a101c6f5a2e5c801d7d85dc95286a1804c870bb9f00fd4dcb03aa8328275158819dcad7253f3e3d237aeaa7979268a5db1c6ce08a9ec7c2579783c8afc1f91a7,1b43b70b6bbbc768c1f4b3ce241667adb5246d29981723846168d2234e19a5130b1f576b4974c613639a449e61b2ca79 cf3583cbdfd4cbc17063b1e7d90b02f0e6e2ee05f99d77e24e560392535e47e05077157f96813544a17046914f9efb64762a23cf7a49fe52a0a4c01c630cfe8727b81fb99a89ff7cc11dca5173057e0417b8fe7a9efba6d95c555f,938252393a532d9e1f91d5c222e2df2cc7ae102705bfb83fe30dcaebcea82bff9bda7ca67095439859146632494d3ce4 072fc02340ef99115bad72f92c01e4c093b9599f6cfc45cb380ee686cb5eb019e806ab9bd55e634ab10aa62a9510cc0672cd3eddb589c7df2b67fcd3329f61b1a4441eca87a33c8f55da4fbbad5cf2b2527b8e983bb31a2fadec7523,47633ad0c80af26bf74d9598dbd5bcf77fc6bff1bca015a611d7b8240f597d8767fb8b0bf5c333156580afee121c299c 76eecf956a52649f877528146de33df249cd800e21830f65e90f0f25ca9d6540fde40603230eca6760f1139c7f268deba2060631eea92b1fff05f93fd5572fbe29579ecd48bc3a8d6c2eb4a6b26e38d6c5fbf2c08044aeea470a8f2f26,04456322e1bf27785edf3f596db33e693aadf76d9d259352d97acd561bc45236506fba3530772242cb369a83a38cd749 7adc0b6693e61c269f278e6944a5a2d8300981e40022f839ac644387bfac9086650085c2cdc585fea47b9d2e52d65a2b29a7dc370401ef5d60dd0d21f9e2b90fae919319b14b8c5565b0423cefb827d5f1203302a9d01523498a4db10374,f8b1f2c317b9d1898c305dec3c6c0ac45cfe7f995e944968206c1c1b2c92bd1d4fa392ffaa6094c6aff95e47dc259ee9 e1fffa9826cce8b86bccefb8794e48c46cdf372013f782eced1e378269b7be2b7bf51374092261ae120e822be685f2e7a83664bcfbe38fe8633f24e633ffe1988e1bc5acf59a587079a57a910bda60060e85b5f5b6f776f0529639d9cce4bd,4f439197c66439baf65618f826e299a329380b558a52b0711182580bdbadbabb13ad66d60faddb9ded226f0b401aa8be 69f9abba65592ee01db4dce52dbab90b08fc04193602792ee4daa263033d59081587b09bbe49d0b49c9825d22840b2ff5d9c5155f975f8f2c2e7a90c75d2e4a8040fe39f63bbafb403d9e28cc3b86e04e394a9c9e8065bd3c85fa9f0c7891600,1c8b99bf6a3e80f0b8c67fa9bbf07d19c15d484cde38f8faadb748ae024a02e29fd2d7bdce66d46c1a5239d7453fd3e3 38a10a352ca5aedfa8e19c64787d8e9c3a75dbf3b8674bfab29b5dbfc15a63d10fae66cd1a6e6d2452d557967eaad89a4c98449787b0b3164ca5b717a93f24eb0b506ceb70cbbcb8d72b2a72993f909aad92f044e0b5a2c9ac9cb16a0ca2f81f49,46f87bc07849e95104e67cc3dc71bdc109c1102bfb1acdfe2f6a23173b52bf836ce00cd7a5a5ffe7d3bb8fab33decedf 6d8c6e449bc13634f115749c248c17cd148b72157a2c37bf8969ea83b4d6ba8c0ee2711c28ee11495f43049596520ce436004b026b6c1f7292b9c436b055cbb72d530d860d1276a1502a5140e3c3f54a93663e4d20edec32d284e25564f624955b52,fa12b9d070f697fd5391f3fc9c44056ceda63f035d766655aa7d0a575ed55b15ba6baf56300940b565e37a248e2dcab8 6efcbcaf451c129dbe00b9cef0c3749d3ee9d41c7bd500ade40cdc65dedbbbadb885a5b14b32a0c0d087825201e303288a733842fa7e599c0c514e078f05c821c7a4498b01c40032e9f1872a1c925fa17ce253e8935e4c3c71282242cb716b2089ccc1,5304d6db2730fb07b85348b0226b1a81a546ba1fe201ecce1e552dba6afb84cce7a6f954e3100ae1724b82cf1cbc4128 433c5303131624c0021d868a30825475e8d0bd3052a022180398f4ca4423b98214b6beaac21c8807a2c33f8c93bd42b092cc1b06cedf3224d5ed1ec29784444f22e08a55aa58542b524b02cd3d5d5f6907afe71c5d7462224a3f9d9e53e7e0846dcbb4ce,135114508dd63e279e709c26f7817c0482766cde49132e3edf2eedd8996f4e3596d184100b384868249f1d8b8fdaa2c9 a873e0c67ca639026b6683008f7aa6324d4979550e9bce064ca1e1fb97a30b147a24f3f666c0a72d71348ede701cf2d17e2253c34d1ec3b647dbcef2f879f4eb881c4830b791378c901eb725ea5c172316c6d606e0af7df4df7f76e490cd30b2badf45685f,d560d54a2881ed47cc8c5af9818feeaf08b621b1aed4569d08807a0b61f902c1691d8b08ff75590feaaed6e75f4c9e3f 006917b64f9dcdf1d2d87c8a6173b64f6587168e80faa80f82d84f60301e561e312d9fbce62f39a6fb476e01e925f26bcc91de621449be6504c504830aae394096c8fc7694651051365d4ee9070101ec9b68086f2ea8f8ab7b811ea8ad934d5c9b62c60a4771,fe5f30a315584092a271fdbcf4347a24d14a1f98cadc88df288c36cea8f89e9020019933bcd4f5a7479e3e4a57644c49 f13c972c52cb3cc4a4df28c97f2df11ce089b815466be88863243eb318c2adb1a417cb1041308598541720197b9b1cb5ba2318bd5574d1df2174af14884149ba9b2f446d609df240ce335599957b8ec80876d9a085ae084907bc5961b20bf5f6ca58d5dab38adb,a4e5ee130fc105818cd1a0de74f1085b9b4d93889c509dc3a208b5230d39d8f304bb403f72bf0cf5e02c4c4a0831f328 e35780eb9799ad4c77535d4ddb683cf33ef367715327cf4c4a58ed9cbdcdd486f669f80189d549a9364fa82a51a52654ec721bb3aab95dceb4a86a6afa93826db923517e928f33e3fba850d45660ef83b9876accafa2a9987a254b137c6e140a21691e1069413848,9fb5700502e01926824f46e9f61894f9487dbcf8ae6217203c85606f975566539376d6239db04aef9bf48ca4f191a90b 64ec021c9585e01ffe6d31bb50d44c79b6993d72678163db474947a053674619d158016adb243f5c8d50aa92f50ab36e579ff2dabb780a2b529370daa299207cfbcdd3a9a25006d19c4f1fe33e4b1eaec315d8c6ee1e730623fd1941875b924eb57d6d0c2edc4e78d6,f2e0ff6cf4801cff2eca1703e4e956c007a1f2709430f1f7a0a4fdd16a063522a4dfb6c41fa529c2e325f8cdd4f8da96 5954bab512cf327d66b5d9f296180080402624ad7628506b555eea8382562324cf452fba4a2130de3e165d11831a270d9cb97ce8c2d32a96f50d71600bb4ca268cf98e90d6496b0a6619a5a8c63db6d8a0634dfc6c7ec8ea9c006b6c456f1b20cd19e781af20454ac880,62029d962d2e323688dc5851c549da39ef49cb994d2d6c51c57b9bbab375aa10bd0605208d9946ea472573880230dd2d 03d9f92b2c565709a568724a0aff90f8f347f43b02338f94a03ed32e6f33666ff5802da4c81bdce0d0e86c04afd4edc2fc8b4141c2975b6f07639b1994c973d9a9afce3d9d365862003498513bfa166d2629e314d97441667b007414e739d7febf0fe3c32c17aa188a8683,25e546f76ea9f98e03e3b2f4ab608185073658e7eda0777bd5b047a59085c3c500916347d4f77e38e35159af133ed638 f31e8b4f9e0621d531d22a380be5d9abd56faec53cbd39b1fab230ea67184440e5b1d15457bd25f56204fa917fa48e669016cb48c1ffc1e1e45274b3b47379e00a43843cf8601a5551411ec12503e5aac43d8676a1b2297ec7a0800dbfee04292e937f21c005f17411473041,beefceff9e2d0825d60ea20e5271bf49c4ae3a5b54b56050988dd3df5db5eb4f1002efbfbaed2fc72179de44116976b2 758ea3fea738973db0b8be7e599bbef4519373d6e6dcd7195ea885fc991d896762992759c2a09002912fb08e0cb5b76f49162aeb8cf87b172cf3ad190253df612f77b1f0c532e3b5fc99c2d31f8f65011695a087a35ee4eee5e334c369d8ee5d29f695815d866da99df3f79403,7d18254d46a14d0383ec56ac9ca2fda7885ae673468c9f3b45ba792c2c23c9ff82491e6aeca15d076ad3a3432cfa650c 47c6e0c2b74948465921868804f0f7bd50dd323583dc784f998a93cd1ca4c6ef84d41dc81c2c40f34b5bee6a93867b3bdba0052c5f59e6f3657918c382e771d33109122cc8bb0e1e53c4e3d13b43ce44970f5e0c079d2ad7d7a3549cd75760c21bb15b447589e86e8d76b1e9ced2,1e3e007ce37792d8a4423b797e876e89859590dedd39711ad0f1de2fd925f4320b44bd57ddc7050427943e3c957d4b6d f690a132ab46b28edfa6479283d6444e371c6459108afd9c35dbd235e0b6b6ff4c4ea58e7554bd002460433b2164ca51e868f7947d7d7a0d792e4abf0be5f450853cc40d85485b2b8857ea31b5ea6e4ccfa2f3a7ef3380066d7d8979fdac618aad3d7e886dea4f005ae4ad05e5065f,d1d263b5311b05c7b9f7783e3afd9a2e75791ce0503ed820474b35340d2cc84b0270921bbd965722011aa30ce4352926 58d6a99bc6458824b256916770a8417040721cccfd4b79eacd8b65a3767ce5ba7e74104c985ac56b8cc9aebd16febd4cda5adb130b0ff2329cc8d611eb14dac268a2f9e633c99de33997fea41c52a7c5e1317d5b5daed35eba7d5a60e45d1fa7eaabc35f5c2b0a0f2379231953322c4e,e482b0c1b2057f1b6b897bdc230dca2b48ffc0e4600ac40a44dce03e99a8d1df94908a9feba0405da79569e75059f9ce befab574396d7f8b6705e2d5b58b2c1c820bb24e3f4bae3e8fbcd36dbf734ee14e5d6ab972aedd3540235466e825850ee4c512ea9795abfd33f330d9fd7f79e62bbb63a6ea85de15beaeea6f8d204a28956059e2632d11861dfb0e65bc07ac8a159388d5c3277e227286f65ff5e5b5aec1,e54bc3b249dff637001b58d13cbf64f453e01ad68a554ca994f71ec710216ef9769f1c8b463dc7b4a90a0ceaced41e3d 8e58144fa9179d686478622ce450c748260c95d1ba43b8f9b59abeca8d93488da73463ef40198b4d16fb0b0707201347e0506ff19d01bea0f42b8af9e71a1f1bd168781069d4d338fdef00bf419fbb003031df671f4a37979564f69282de9c65407847dd0da505ab1641c02dea4f0d834986,01dc4ced4693b36814443857931c5d3cee8762fda0220f8e9e63ab1ee9a7135ade21c5ab3791821352ffbc322f3ed208 b55c10eae0ec684c16d13463f29291bf26c82e2fa0422a99c71db4af14dd9c7f33eda52fd73d017cc0f2dbe734d831f0d820d06d5f89dacc485739144f8cfd4799223b1aff9031a105cb6a029ba71e6e5867d85a554991c38df3c9ef8c1e1e9a7630be61caabca69280c399c1fb7a12d12aefc,587c8104936bdd74700666663843746015906cf4c681c2a6ffdd07b732e9e7787b165e117da340bce4e27302ba288299 2eeea693f585f4ed6f6f8865bbae47a6908aecd7c429e4bec4f0de1d0ca0183fa201a0cb14a529b7d7ac0e6ff6607a3243ee9fb11bcf3e2304fe75ffcddd6c5c2e2a4cd45f63c962d010645058d36571404a6d2b4f44755434d76998e83409c3205aa1615db44057db991231d2cb42624574f545,51753384c8f9584be3ed4526b9b29a97dc8a87d195d0155e7444950eea55abec5c0d7814f1dfce5ca4bf1d50ebc709ad dab11dc0b047db0420a585f56c42d93175562852428499f66a0db811fcdddab2f7cdffed1543e5fb72110b64686bc7b6887a538ad44c050f1e42631bc4ec8a9f2a047163d822a38989ee4aab01b4c1f161b062d873b1cfa388fd301514f62224157b9bef423c7783b7aac8d30d65cd1bba8d689c2d,bd1e1e9ae80b7fa79adbd47d7a28ba44f4874108cd9be5d327cc93c6ed4dacf8a9e2a3491d4168bffae63fb2f1070de7 42e99a2f80aee0e001279a2434f731e01d34a44b1a8101726921c0590c30f3120eb83059f325e894a5ac959dca71ce2214799916424e859d27d789437b9d27240bf8c35adbafcecc322b48aa205b293962d858652abacbd588bcf6cbc388d0993bd622f96ed54614c25b6a9aa527589eaaffcf17ddf7,6b7c1144fa984261377dbaaca78a03ae580b7f3a17d69ba0d56ee908dd9ec9f87ea30a7626ed7ccf25b53a6994e121e8 3c9b46450c0f2cae8e3823f8bdb4277f31b744ce2eb17054bddc6dff36af7f49fb8a2320cc3bdf8e0a2ea29ad3a55de1165d219adeddb5175253e2d1489e9b6fdd02e2c3d3a4b54d60e3a47334c37913c5695378a669e9b72dec32af5434f93f46176ebf044c4784467c700470d0c0b40c8a088c815816,76414f3b9e4ff8d150280c8e44bc54056849b25351352d9d9e986b3ecb6ec050542709afe01979d2eb97e51d41217e6e d1e654b77cb155f5c77971a64df9e5d34c26a3cad6c7f6b300d39deb1910094691adaa095be4ba5d86690a976428635d5526f3e946f7dc3bd4dbc78999e653441187a81f9adcd5a3c5f254bc8256b0158f54673dcc1232f6e918ebfc6c51ce67eaeb042d9f57eec4bfe910e169af78b3de48d137df4f2840,92ac60e5dc492010a45f46aef05f403f7569e1b4e2d0c909c871a783fc12457de281aff4c4cee0207d20eaf546285070 626f68c18a69a6590159a9c46be03d5965698f2dac3de779b878b3d9c421e0f21b955a16c715c1ec1e22ce3eb645b8b4f263f60660ea3028981eebd6c8c3a367285b691c8ee56944a7cd1217997e1d9c21620b536bdbd5de8925ff71dec6fbc06624ab6b21e329813de90d1e572dfb89a18120c3f606355d25,8f99032cb49bb022ee5fb32446e1d39aa0fcd749741e4796979d4bea5ab1b04d241592ec6058e54b8ec9eab274ee632d 651a6fb3c4b80c7c68c6011675e6094eb56abf5fc3057324ebc6477825061f9f27e7a94633abd1fa598a746e4a577caf524c52ec1788471f92b8c37f23795ca19d559d446cab16cbcdce90b79fa1026cee77bf4ab1b503c5b94c2256ad75b3eac6fd5dcb96aca4b03a834bfb4e9af988cecbf2ae597cb9097940,8bb4f3cf0390a31d682213d22354dfe7d580c811682259872f2a29a08d373fd998f842334f64f81349364a930c82bad4 8aaf072fce8a2d96bc10b3c91c809ee93072fb205ca7f10abd82ecd82cf040b1bc49ea13d1857815c0e99781de3adbb5443ce1c897e55188ceaf221aa9681638de05ae1b322938f46bce51543b57ecdb4c266272259d1798de13be90e10efec2d07484d9b21a3870e2aa9e06c21aa2d0c9cf420080a80a91dee16f,0bb7dac544569e6eb74acab01a846f74ad2a0f31d8facee4d09fa49c81b93bd83b4f129b96da4c0eaf165fde52ef295b 53f918fd00b1701bd504f8cdea803acca21ac18c564ab90c2a17da592c7d69688f6580575395551e8cd33e0fef08ca6ed4588d4d140b3e44c032355df1c531564d7f4835753344345a6781e11cd5e095b73df5f82c8ae3ad00877936896671e947cc52e2b29dcd463d90a0c9929128da222b5a211450bbc0e02448e2,10dd9348b2d95889ee613907824a10efc708a101a67672fca4c6539f5156c7df805dbe666fcf4cc578f421ae3cf27122 a64599b8a61b5ccec9e67aed69447459c8da3d1ec6c7c7c82a7428b9b584fa67e90f68e2c00fbbed4613666e5168da4a16f395f7a3c3832b3b134bfc9cbaa95d2a0fe252f44ac6681eb6d40ab91c1d0282fed6701c57463d3c5f2bb8c6a7301fb4576aa3b5f15510db8956ff77478c26a7c09bea7b398cfc83503f538e,444b8a6f1ee118de3fb3ec76b2fbad9ef31916e1f99077defc51c2e59c8e6a3e207ba48e5edd66c72b5beba67401d794 0e3ab0e054739b00cdb6a87bd12cae024b54cb5e550e6c425360c2e87e59401f5ec24ef0314855f0f56c47695d56a7fb1417693af2a1ed5291f2fee95f75eed54a1b1c2e81226fbff6f63ade584911c71967a8eb70933bc3f5d15bc91b5c2644d9516d3c3a8c154ee48e118bd1442c043c7a0dba5ac5b1d5360aae5b9065,f4d17c6299bae7d0e6d15a550b311f30c1b038aef56fe375f3b4bae14f7ea427c5aa987ef93285975ce5f9e46a3e4c20 a62fc595b4096e6336e53fcdfc8d1cc175d71dac9d750a6133d23199eaac288207944cea6b16d27631915b4619f743da2e30a0c00bbdb1bbb35ab852ef3b9aec6b0a8dcc6e9e1abaa3ad62ac0a6c5de765de2c3711b769e3fde44a74016fff82ac46fa8f1797d3b2a726b696e3dea5530439acee3a45c2a51bc32dd055650b,39f911e9cb2763c8911ac3153040e48f403abfe373e14b709a476868d3ab5841d1088f8393dd728305ba341138365d27 2b6db7ced8665ebe9deb080295218426bdaa7c6da9add2088932cdffbaa1c14129bccdd70f369efb149285858d2b1d155d14de2fdb680a8b027284055182a0cae275234cc9c92863c1b4ab66f304cf0621cd54565f5bff461d3b461bd40df28198e3732501b4860eadd503d26d6e69338f4e0456e9e9baf3d827ae685fb1d817,3adeb7eeecf9069f143a10151fd4506aeef3a0ef94ca65d4448acf1e892b8ebb0887631804dd64e153ad41fae0127a85 10db509b2cdcaba6c062ae33be48116a29eb18e390e1bbada5ca0a2718afbcd23431440106594893043cc7f2625281bf7de2655880966a23705f0c5155c2f5cca9f2c2142e96d0a2e763b70686cd421b5db812daced0c6d65035fde558e94f26b3e6dde5bd13980cc80292b723013bd033284584bff27657871b0cf07a849f4ae2,14830877dfafe6f886a22de7ce9a5fc74733a8fc27ecc523b6b4524e6312cbb22b51d7eb9ddab37ba54bb2c0bfc32a6f 9334de60c997bda6086101a6314f64e4458f5ff9450c509df006e8c547983c651ca97879175aaba0c539e82d05c1e02c480975cbb30118121061b1ebac4f8d9a3781e2db6b18042e01ecf9017a64a0e57447ec7fcbe6a7f82585f7403ee2223d52d37b4bf426428613d6b4257980972a0acab508a7620c1cb28eb4e9d30fc41361ec,d109532bc4217326b3d25ed2d2f3f0d2482cc5bdd054218fa8bedb91cd814f7fd683aa2afcb8342cd34ce54d607e3da0 e88ab086891693aa535ceb20e64c7ab97c7dd3548f3786339897a5f0c39031549ca870166e477743ccfbe016b4428d89738e426f5ffe81626137f17aecff61b72dbee2dc20961880cfe281dfab5ee38b1921881450e16032de5e4d55ad8d4fca609721b0692bac79be5a06e177fe8c80c0c83519fb3347de9f43d5561cb8107b9b5edc,de64a37a7456638d3aca1b895f4a88c26817177986a9f2f5b77b49cff2c3e46be2c49abe89d741375db87f4c898f6762 fd19e01a83eb6ec810b94582cb8fbfa2fcb992b53684fb748d2264f020d3b960cb1d6b8c348c2b54a9fcea72330c2aaa9a24ecdb00c436abc702361a82bb8828b85369b8c72ece0082fe06557163899c2a0efa466c33c04343a839417057399a63a3929be1ee4805d6ce3e5d0d0967fe9004696a5663f4cac9179006a2ceb75542d75d68,8d9743710c171cd399a0d712e9d53374ed8e0a97672a40294c74f0d503f0292d6f41d5cea08fb3c623c4eba56848770d 59ae20b6f7e0b3c7a989afb28324a40fca25d8651cf1f46ae383ef6d8441587aa1c04c3e3bf88e8131ce6145cfb8973d961e8432b202fa5af3e09d625faad825bc19da9b5c6c20d02abda2fcc58b5bd3fe507bf201263f30543819510c12bc23e2ddb4f711d087a86edb1b355313363a2de996b891025e147036087401ccf3ca7815bf3c49,fae998d1074e30f2ea0a8b9fe259fd2e2a36804995ebe7e3a5ad34865b1a3316675297fe8e33eef8adcc02be8c4765be 77ee804b9f3295ab2362798b72b0a1b2d3291dceb8139896355830f34b3b328561531f8079b79a6e9980705150866402fdc176c05897e359a6cb1a7ab067383eb497182a7e5aef7038e4c96d133b2782917417e391535b5e1b51f47d8ed7e4d4025fe98dc87b9c1622614bff3d1029e68e372de719803857ca52067cddaad958951cb2068cc6,0aa9ccc3c9cae1603d3da5e95f304adb8fa575833929b09f7c1095d968bea0471dfe8aaad3ad11266daaff95f6667abc b771d5cef5d1a41a93d15643d7181d2a2ef0a8e84d91812f20ed21f147bef732bf3a60ef4067c3734b85bc8cd471780f10dc9e8291b58339a677b960218f71e793f2797aea349406512829065d37bb55ea796fa4f56fd8896b49b2cd19b43215ad967c712b24e5032d065232e02c127409d2ed4146b9d75d763d52db98d949d3b0fed6a8052fbb,8ffdf6a4752d17d496f8adee7116bd2af0a4b726bb3f4c5f85be2c9dfc34055a509e4fe016930d9951a7212553e2e908 b32d95b0b9aad2a8816de6d06d1f86008505bd8c14124f6e9a163b5a2ade55f835d0ec3880ef50700d3b25e42cc0af050ccd1be5e555b23087e04d7bf9813622780c7313a1954f8740b6ee2d3f71f768dd417f520482bd3a08d4f222b4ee9dbd015447b33507dd50f3ab4247c5de9a8abd62a8decea01e3b87c8b927f5b08beb37674c6f8e380c04,278e83cff1ff6cc4b3ac41f3879da87ae63b535b43815e273687a4cc519855b452cb6af0198bb9fd0f3e43739bc0cdd7 04410e31082a47584b406f051398a6abe74e4da59bb6f85e6b49e8a1f7f2ca00dfba5462c2cd2bfde8b64fb21d70c083f11318b56a52d03b81cac5eec29eb31bd0078b6156786da3d6d8c33098c5c47bb67ac64db14165af65b44544d806dde5f487d5373c7f9792c299e9686b7e5821e7c8e2458315b996b5677d926dac57b3f22da873c601016a0d,aa4b5a5fb94fe19578f33323ba1eefc5b6ed70b34bc70193f386c99f73863611af20581b4b1b3ed776df9e235d3d4e45 8b81e9badde026f14d95c019977024c9e13db7a5cd21f9e9fc491d716164bbacdc7060d882615d411438aea056c340cdf977788f6e17d118de55026855f93270472d1fd18b9e7e812bae107e0dfde7063301b71f6cfe4e225cab3b232905a56e994f08ee2891ba922d49c3dafeb75f7c69750cb67d822c96176c46bd8a29f1701373fb09a1a6e3c7158f,3174cf3754a6fe603631ecda4895171a9dcf7afb02eb72ae270a9e3ebf2a65a72c3436c233fd4f17f7fbafbac0680c63 fa6eed24da6666a22208146b19a532c2ec9ba94f09f1def1e7fc13c399a48e41acc2a589d099276296348f396253b57cb0e40291bd282773656b6e0d8bea1cda084a3738816a840485fcf3fb307f777fa5feac48695c2af4769720258c77943fb4556c362d9cba8bf103aeb9034baa8ea8bfb9c4f8e6742ce0d52c49ea8e974f339612e830e9e7a9c29065,354813d9823d2f02d75d13893a6abdb44e9e99666533429cc6f7eb3fba10bf9ecd4a18bb9d5188e6e8f91dfddbe8409a 9bb4af1b4f09c071ce3cafa92e4eb73ce8a6f5d82a85733440368dee4eb1cbc7b55ac150773b6fe47dbe036c45582ed67e23f4c74585dab509df1b83610564545642b2b1ec463e18048fc23477c6b2aa035594ecd33791af6af4cbc2a1166aba8d628c57e707f0b0e8707caf91cd44bdb915e0296e0190d56d33d8dde10b5b60377838973c1d943c22ed335e,e2efdc5007e4c13f811043db967a423de02af411b4a251a225cad041e83bd4dd89d8b24198da00096cfe2e1b3f5d1960 2167f02118cc62043e9091a647cadbed95611a521fe0d64e8518f16c808ab297725598ae296880a773607a798f7c3cfce80d251ebec6885015f9abf7eaabae46798f82cb5926de5c23f44a3f9f9534b3c6f405b5364c2f8a8bdc5ca49c749bed8ce4ba48897062ae8424ca6dde5f55c0e42a95d1e292ca54fb46a84fbc9cd87f2d0c9e7448de3043ae22fdd229,e44c0856f0c245e002f914cf300e98c496e725a4db561f2995ad9c8b97f341e15625b56b03d4d5880927b8574f5e5d74 94b7fa0bc1c44e949b1d7617d31b4720cbe7ca57c6fa4f4094d4761567e389ecc64f6968e4064df70df836a47d0c713336b5028b35930d29eb7a7f9a5af9ad5cf441745baec9bb014ceeff5a41ba5c1ce085feb980bab9cf79f2158e03ef7e63e29c38d7816a84d4f71e0f548b7fc316085ae38a060ff9b8dec36f91ad9ebc0a5b6c338cbb8f6659d342a24368cf,5d290c5dff59a3a3db8bc7320b8f64a4dbf67ca4f5df9a07f235edb6460345fc8971040481c9a5d0f09b62262b9ed9f8 ea40e83cb18b3a242c1ecc6ccd0b7853a439dab2c569cfc6dc38a19f5c90acbf76aef9ea3742ff3b54ef7d36eb7ce4ff1c9ab3bc119cff6be93c03e208783335c0ab8137be5b10cdc66ff3f89a1bddc6a1eed74f504cbe7290690bb295a872b9e3fe2cee9e6c67c41db8efd7d863cf10f840fe618e7936da3dca5ca6df933f24f6954ba0801a1294cd8d7e66dfafec,fe680250cab1fbdb6ac8800ddc28e70100df8daae38da27004872ab05d40b15ae93eb44266e3014f0960038b28252c7b 157d5b7e4507f66d9a267476d33831e7bb768d4d04cc3438da12f9010263ea5fcafbde2579db2f6b58f911d593d5f79fb05fe3596e3fa80ff2f761d1b0e57080055c118c53e53cdb63055261d7c9b2b39bd90acc32520cbbdbda2c4fd8856dbcee173132a2679198daf83007a9b5c51511ae49766c792a29520388444ebefe28256fb33d4260439cba73a9479ee00c63,511b13e53fd353fa4d38ef0cf8f1af30da554828a5fd1c53ec41f73d9aca6c54ac7972c933af4a2fc7ab852ca63a1ba6 836b34b515476f613fe447a4e0c3f3b8f20910ac89a3977055c960d2d5d2b72bd8acc715a9035321b86703a411dde0466d58a59769672aa60ad587b8481de4bba552a1645779789501ec53d540b904821f32b0bd1855b04e4848f9f8cfe9ebd8911be95781a759d7ad9724a7102dbe576776b7c632bc39b9b5e19057e226552a5994c1dbb3b5c7871a11f5537011044c53,554cf00a9aafe0dfc8d49ea03288b52aed43a5104e22b838e40fde7358491b5774df455cf2ec73c53a7b30627a142a41 cc7784a4912a7ab5ad3620aab29ba87077cd3cb83636adc9f3dc94f51edf521b2161ef108f21a0a298557981c0e53ce6ced45bdf782c1ef200d29bab81dd6460586964edab7cebdbbec75fd7925060f7da2b853b2b089588fa0f8c16ec6498b14c55dcee335cb3a91d698e4d393ab8e8eac0825f8adebeee196df41205c011674e53426caa453f8de1cbb57932b0b741d4c6,c13c177e6453f78e81bc4efea7a10e9ca02273a6eb757497368539bf4ae1f1bbcbae0fff5dad55edca61f474976cbf64 7639b461fff270b2455ac1d1afce782944aea5e9087eb4a39eb96bb5c3baaf0e868c8526d3404f9405e79e77bfac5ffb89bf1957b523e17d341d7323c302ea7083872dd5e8705694acdda36d5a1b895aaa16eca6104c82688532c8bfe1790b5dc9f4ec5fe95baed37e1d287be710431f1e5e8ee105bc42ed37d74b1e55984bf1c09fe6a1fa13ef3b96faeaed6a2a1950a12153,c3e5ddf4572a386c99f998e68fccc7f85867a73e13c2058c18391a922416fd352ca6b659bad021e0d9a05789f59d3c67 eb6513fc61b30cfba58d4d7e80f94d14589090cf1d80b1df2e68088dc6104959ba0d583d585e9578ab0aec0cf36c48435eb52ed9ab4bbce7a5abe679c97ae2dbe35e8cc1d45b06dda3cf418665c57cbee4bbb47fa4caf78f4ee656fec237fe4eebbafa206e1ef2bd0ee4ae71bd0e9b2f54f91daadf1febfd7032381d636b733dcb3bf76fb14e23aff1f68ed3dbcf75c9b99c6f26,157481d0a24ba9fafa1800c9713e702976167fddf52367a7932aa3cff22f4a2e19a016c7bacbd97cec3ea6b1e87cb3d3 1594d74bf5dde444265d4c04dad9721ff3e34cbf622daf341fe16b96431f6c4df1f760d34f296eb97d98d560ad5286fec4dce1724f20b54fd7df51d4bf137add656c80546fb1bf516d62ee82baa992910ef4cc18b70f3f8698276fcfb44e0ec546c2c39cfd8ee91034ff9303058b4252462f86c823eb15bf481e6b79cc3a02218595b3658e8b37382bd5048eaed5fd02c37944e73b,bcdd36ee35c2c771852e27db2cddabc155ab43d28e6289f0aba4f93e793c999f30836c7483fbea5a73f4eeb5d8d32fe3 4cfa1278903026f66fedd41374558be1b585d03c5c55dac94361df286d4bd39c7cb8037ed3b267b07c346626449d0cc5b0dd2cf221f7e4c3449a4be99985d2d5e67bff2923357ddeab5abcb4619f3a3a57b2cf928a022eb27676c6cf805689004fca4d41ea6c2d0a4789c7605f7bb838dd883b3ad3e6027e775bcf262881428099c7fff95b14c095ea130e0b9938a5e22fc52650f591,fa7f66d37c1dc3e81bf55c443abad5cf79a3d9834f77a206291138ae31438b986737dc4599ec5d10f7f005d1833b7d2e d3e65cb92cfa79662f6af493d696a07ccf32aaadcceff06e73e8d9f6f909209e66715d6e978788c49efb9087b170ecf3aa86d2d4d1a065ae0efc8924f365d676b3cb9e2bec918fd96d0b43dee83727c9a93bf56ca2b2e59adba85696546a815067fc7a78039629d4948d157e7b0d826d1bf8e81237bab7321312fdaa4d521744f988db6fdf04549d0fdca393d639c729af716e9c8bba48,8f0e47ed680661f1ace9eeee855d935fdfc66b97c2e9a6fc7341f14d9327c8e72bca3fa67e59804cea41f09e1c4f8715 842cc583504539622d7f71e7e31863a2b885c56a0ba62db4c2a3f2fd12e79660dc7205ca29a0dc0a87db4dc62ee47a41db36b9ddb3293b9ac4baae7df5c6e7201e17f717ab56e12cad476be49608ad2d50309e7d48d2d8de4fa58ac3cfeafeee48c0a9eec88498e3efc51f54d300d828dddccb9d0b06dd021a29cf5cb5b2506915beb8a11998b8b886e0f9b7a80e97d91a7d01270f9a7717,f105810e724c2c55162cf71721e3f59871f06010bc7f052ab282bfb6d4a3bf184b892baf8fadd02070f64b9e036dc5f7 6c4b0a0719573e57248661e98febe326571f9a1ca813d3638531ae28b4860f23c3a3a8ac1c250034a660e2d71e16d3acc4bf9ce215c6f15b1c0fc7e77d3d27157e66da9ceec9258f8f2bf9e02b4ac93793dd6e29e307ede3695a0df63cbdc0fc66fb770813eb149ca2a916911bee4902c47c7802e69e405fe3c04ceb5522792a5503fa829f707272226621f7c488a7698c0d69aa561be9f378,cbb0fce4af36d14b63bc72d37fb4028327843fb22ec033bfc068e7b081287e31e3451d8a1d97692b379ff9e6acd40240 51b7dbb7ce2ffeb427a91ccfe5218fd40f9e0b7e24756d4c47cd55606008bdc27d16400933906fd9f30effdd4880022d081155342af3fb6cd53672ab7fb5b3a3bcbe47be1fd3a2278cae8a5fd61c1433f7d350675dd21803746cadca574130f01200024c6340ab0cc2cf74f2234669f34e9009ef2eb94823d62b31407f4ba46f1a1eec41641e84d77727b59e746b8a671bef936f05be820759fa,44e4f77c0d7bca6ad57d334f974bda8de2e08e104f14a8713280ce73897a945dc23ad058533b85750d9dd9d2d7b5d1af 83599d93f5561e821bd01a472386bc2ff4efbd4aed60d5821e84aae74d8071029810f5e286f8f17651cd27da07b1eb4382f754cd1c95268783ad09220f5502840370d494beb17124220f6afce91ec8a0f55231f9652433e5ce3489b727716cf4aeba7dcda20cd29aa9a859201253f948dd94395aba9e3852bd1d60dda7ae5dc045b283da006e1cbad83cc13292a315db5553305c628dd091146597,6913184fae1ef9fa2d57b1b7bd586d51de9a5f387037266e7b4a83f4366498ff86c89934c05332a7e641149ef627fa34 2be9bf526c9d5a75d565dd11ef63b979d068659c7f026c08bea4af161d85a462d80e45040e91f4165c074c43ac661380311a8cbed59cc8e4c4518e80cd2c78ab1cabf66bff83eab3a80148550307310950d034a6286c93a1ece8929e6385c5e3bb6ea8a7c0fb6d6332e320e71cc4eb462a2a62e2bfe08f0ccad93e61bedb5dd0b786a728ab666f07e0576d189c92bf9fb20dca49ac2d3956d47385e2,f04ff5aaa68f2558586d2748587dee3cf28bacab5be5f887d24a068311ba2d9e9bc0206c2706b9c109e7162e3ecb6346 ca76d3a12595a817682617006848675547d3e8f50c2210f9af906c0e7ce50b4460186fe70457a9e879e79fd4d1a688c70a347361c847ba0dd6aa52936eaf8e58a1be2f5c1c704e20146d366aeb3853bed9de9befe9569ac8aaea37a9fb7139a1a1a7d5c748605a8defb297869ebedd71d615a5da23496d11e11abbb126b206fa0a7797ee7de117986012d0362dcef775c2fe145ada6bda1ccb326bf644,d4b8cfb2fe5b63bb5bb678b98b465a2dfd23dff498e778ee0535a5c077705aa2ca2f039832baea0f735609b3e4e18cf7 f76b85dc67421025d64e93096d1d712b7baf7fb001716f02d33b2160c2c882c310ef13a576b1c2d30ef8f78ef8d2f465007109aad93f74cb9e7d7bef7c9590e8af3b267c89c15db238138c45833c98cc4a471a7802723ef4c744a853cf80a0c2568dd4ed58a2c9644806f42104cee53628e5bdf7b63b0b338e931e31b87c24b146c6d040605567ceef5960df9e022cb469d4c787f4cba3c544a1ac91f95f,25b7237da9d40de047d41a30bd37155c0f108d7296b09079957d4ee31224a4ba256af756d154878910c158e49186728b 25b8c9c032ea6bcd733ffc8718fbb2a503a4ea8f71dea1176189f694304f0ff68e862a8197b839957549ef243a5279fc2646bd4c009b6d1edebf24738197abb4c992f6b1dc9ba891f570879accd5a6b18691a93c7d0a8d38f95b639c1daeb48c4c2f15ccf5b9d508f8333c32de78781b41850f261b855c4bebcc125a380c54d501c5d3bd07e6b52102116088e53d76583b0161e2a58d0778f091206aabd5a1,f41b2d02d321f4ba106f931ee27d3f74e8d397bacecb0a1fa90bf5c837aceb2ed8f0feff07b7ebea6a88d0cc54ae8e6a 21cfdc2a7ccb7f331b3d2eefff37e48ad9fa9c788c3f3c200e0173d99963e1cbca93623b264e920394ae48bb4c3a5bb96ffbc8f0e53f30e22956adabc2765f57fb761e147ecbf8567533db6e50c8a1f894310a94edf806dd8ca6a0e141c0fa7c9fae6c6ae65f18c93a8529e6e5b553bf55f25be2e80a9882bd37f145fecbeb3d447a3c4e46c21524cc55cdd62f521ab92a8ba72b897996c49bb273198b7b1c9e,9673a1a3535b8975ca0f512cdb0fdcdfb0179ce229e756ad70eaf1e5c3e1a4135e9fa7653edbdca4975ac18b17a662eb 4e452ba42127dcc956ef4f8f35dd68cb225fb73b5bc7e1ec5a898bba2931563e74faff3b67314f241ec49f4a7061e3bd0213ae826bab380f1f14faab8b0efddd5fd1bb49373853a08f30553d5a55ccbbb8153de4704f29ca2bdeef0419468e05dd51557ccc80c0a96190bbcc4d77ecff21c66bdf486459d427f986410f883a80a5bcc32c20f0478bb9a97a126fc5f95451e40f292a4614930d054c851acd019ccf,32429cb1b5dad663a0663e49033db2290945019df7e792cdff3723eedb88cd0603b3fae0228a184f8effac45112f453e fa85671df7dadf99a6ffee97a3ab9991671f5629195049880497487867a6c446b60087fac9a0f2fcc8e3b24e97e42345b93b5f7d3691829d3f8ccd4bb36411b85fc2328eb0c51cb3151f70860ad3246ce0623a8dc8b3c49f958f8690f8e3860e71eb2b1479a5cea0b3f8befd87acaf5362435eaeccb52f38617bc6c5c2c6e269ead1fbd69e941d4ad2012da2c5b21bcfbf98e4a77ab2af1f3fda3233f046d38f1dc8,e91deebcd72ba12e2215602b488ded203a1e211d6358cadc6f906fbd89ca928f541222cbd8fc9a20b573ef22fc178778 e90847ae6797fbc0b6b36d6e588c0a743d725788ca50b6d792352ea8294f5ba654a15366b8e1b288d84f5178240827975a763bc45c7b0430e8a559df4488505e009c63da994f1403f407958203cebb6e37d89c94a5eacf6039a327f6c4dbbc7a2a307d976aa39e41af6537243fc218dfa6ab4dd817b6a397df5ca69107a9198799ed248641b63b42cb4c29bfdd7975ac96edfc274ac562d0474c60347a078ce4c25e88,45290a24291e81ccb8d7840b6c4812ac98983d7bd3afe46b427296ad636862b9e03ecf605b114cb47c0207267bc05958 f6d5c2b6c93954fc627602c00c4ca9a7d3ed12b27173f0b2c9b0e4a5939398a665e67e69d0b12fb7e4ceb253e8083d1ceb724ac07f009f094e42f2d6f2129489e846eaff0700a8d4453ef453a3eddc18f408c77a83275617fabc4ea3a2833aa73406c0e966276079d38e8e38539a70e194cc5513aaa457c699383fd1900b1e72bdfb835d1fd321b37ba80549b078a49ea08152869a918ca57f5b54ed71e4fd3ac5c06729,e6bb2faf5abb3edaffe9e47f62586409b443e4c698070d61fc082261053270ecdc2484aa0145c851031e3c99deff2389 cf8562b1bed89892d67ddaaf3deeb28246456e972326dbcdb5cf3fb289aca01e68da5d59896e3a6165358b071b304d6ab3d018944be5049d5e0e2bb819acf67a6006111089e6767132d72dd85beddcbb2d64496db0cc92955ab4c6234f1eea24f2d51483f2e209e4589bf9519fac51b4d061e801125e605f8093bb6997bc163d551596fe4ab7cfae8fb9a90f6980480ce0c229fd1675409bd788354daf316240cfe0af93eb,79b792b34da4425bb0b4217abe23e5dbe4e87d3940e2f7ba52ca146618580a62545c44b81e06620af6e273499073e3a8 2ace31abb0a2e3267944d2f75e1559985db7354c6e605f18dc8470423fca30b7331d9b33c4a4326783d1caae1b4f07060eff978e4746bf0c7e30cd61040bd5ec2746b29863eb7f103ebda614c4291a805b6a4c8214230564a0557bc7102e0bd3ed23719252f7435d64d210ee2aafc585be903fa41e1968c50fd5d5367926df7a05e3a42cf07e656ff92de73b036cf8b19898c0cb34557c0c12c2d8b84e91181af467bc75a9d1,9fa1d0ac7c37831731b71c19ac9e81ea115083ace6d94349ce89fdb79b3462a749d76fdc93892f2f16ab0f7e18cdb79c 0d8d09aed19f1013969ce5e7eb92f83a209ae76be31c754844ea9116ceb39a22ebb6003017bbcf26555fa6624185187db8f0cb3564b8b1c06bf685d47f3286eda20b83358f599d2044bbf0583fab8d78f854fe0a596183230c5ef8e54426750eaf2cc4e29d3bdd037e734d863c2bd9789b4c243096138f7672c232314effdfc6513427e2da76916b5248933be312eb5dde4cf70804fb258ac5fb82d58d08177ac6f4756017fff5,187cdfdb3757d80010d1e53157a5ccb0fcc34998efc6bb3ce2e60768f5eeaa590656b49c0e036a3f34c9ef25f3be587a c3236b73deb7662bf3f3daa58f137b358ba610560ef7455785a9befdb035a066e90704f929bd9689cef0ce3bda5acf4480bceb8d09d10b098ad8500d9b6071dfc3a14af6c77511d81e3aa8844986c3bea6f469f9e02194c92868cd5f51646256798ff0424954c1434bdfed9facb390b07d342e992936e0f88bfd0e884a0ddb679d0547ccdec6384285a45429d115ac7d235a717242021d1dc35641f5f0a48e8445dba58e6cb2c8ea,7043f54f390b6abd0dff06f266e0e7b3e41f8d2e8dd43f899ac456662447a823a567b1b0fb8c2df24e5f6689060cddb4 b39feb8283eadc63e8184b51df5ae3fd41aac8a963bb0be1cd08aa5867d8d910c669221e73243360646f6553d1ca05a84e8dc0de05b6419ec349ca994480193d01c92525f3fb3dcefb08afc6d26947bdbbfd85193f53b50609c6140905c53a6686b58e53a319a57b962331ede98149af3de3118a819da4d76706a0424b4e1d2910b0ed26af61d150ebcb46595d4266a0bd7f651ba47d0c7f179ca28545007d92e8419d48fdfbd744ce,d0ce0259aaeea5baeff52929423c3da07a8c75195f86d733a718d1c46a1e40aad404750c41d7a158e79f278830b4c07a a983d54f503803e8c7999f4edbbe82e9084f422143a932ddddc47a17b0b7564a7f37a99d0786e99476428d29e29d3c197a72bfab1342c12a0fc4787fd7017d7a6174049ea43b5779169ef7472bdbbd941dcb82fc73aac45a8a94c9f2bd3477f61fd3b796f02a1b8264a214c6fea74b7051b226c722099ec7883a462b83b6afdd4009248b8a237f605fe5a08fe7d8b45321421ebba67bd70a0b00ddbf94baab7f359d5d1eea105f28dcfb,e4385a3be011af20fe4566c1cebf4aa68270e42be50aaaae65f8f605e980b1d2736fb0e794330d764ca96bc68b8360bc e4d1c1897a0a866ce564635b74222f9696bf2c7f640dd78d7e2aca66e1b61c642bb03ea7536aae597811e9bf4a7b453ede31f97b46a5f0ef51a071a2b3918df16b152519ae3776f9f1edab4c2a377c3292e96408359d3613844d5eb393000283d5ad3401a318b12fd1474b8612f2bb50fb6a8b9e023a54d7dde28c43d6d8854c8d9d1155935c199811dbfc87e9e0072e90eb88681cc7529714f8fb8a2c9d88567adfb974ee205a9bf7b848,c979f00656a09e68485ccf07fbbb9108b00c5fc11d41f5966ff086f26c7102478ec177ee6d78c623c375a9e6f761809a b10c59723e3dcadd6d75df87d0a1580e73133a9b7d00cb95ec19f5547027323be75158b11f80b6e142c6a78531886d9047b08e551e75e6261e79785366d7024bd7cd9cf322d9be7d57fb661069f2481c7bb759cd71b4b36ca2bc2df6d3a328faebdb995a9794a8d72155ed551a1f87c80bf6059b43fc764900b18a1c2441f7487743cf84e565f61f8dd2ece6b6ccc9444049197aaaf53e926fbee3bfca8be588ec77f29d211be89de18b15f6,36139336110d1d6c27e4cc1f26f428eb8bdbcba3aa9ffdcecf72009fb46bfaf9e3464c48befa4745be36c697dd3bed8b db11f609baba7b0ca634926b1dd539c8cbada24967d7add4d9876f77c2d80c0f4dcefbd7121548373582705cca2495bd2a43716fe64ed26d059cfb566b3364bd49ee0717bdd9810dd14d8fad80dbbdc4cafb37cc60fb0fe2a80fb4541b8ca9d59dce457738a9d3d8f641af8c3fd6da162dc16fc01aac527a4a0255b4d231c0be50f44f0db0b713af03d968fe7f0f61ed0824c55c4b5265548febd6aad5c5eedf63efe793489c39b8fd29d104ce,ce3268b8ec923b3331ea2cf85132c0733cf8bf87daa544f8ee386d5de9fbd4d8ad94e00b705ca5b61a3c1790b650080c bebd4f1a84fc8b15e4452a54bd02d69e304b7f32616aadd90537937106ae4e28de9d8aab02d19bc3e2fde1d651559e296453e4dba94370a14dbbb2d1d4e2022302ee90e208321efcd8528ad89e46dc839ea9df618ea8394a6bff308e7726bae0c19bcd4be52da6258e2ef4e96aa21244429f49ef5cb486d7ff35cac1bacb7e95711944bccb2ab34700d42d1eb38b5d536b947348a458ede3dc6bd6ec547b1b0cae5b257be36a7124e1060c170ffa,ddc398879bd16fb681fae1512e3a1ae7ed2362dad8bee0d12d2256b2d856282043dc0cbbc0f63197b75e9982a1daa8ae 5aca56a03a13784bdc3289d9364f79e2a85c12276b49b92db0adaa4f206d5028f213f678c3510e111f9dc4c1c1f8b6acb17a6413aa227607c515c62a733817ba5e762cc6748e7e0d6872c984d723c9bb3b117eb8963185300a80bfa65cde495d70a46c44858605fccbed086c2b45cef963d33294dbe9706b13af22f1b7c4cd5a001cfec251fba18e722c6e1c4b1166918b4f6f48a98b64b3c07fc86a6b17a6d0480ab79d4e6415b520f1c484d675b1,350b4b2768020eaa95452b90414439a38be03686131d45612c1b85fe06fd9196f27d221f4ff83251aa8e69aef72f904d a5aad0e4646a32c85cfcac73f02fc5300f1982fabb2f2179e28303e447854094cdfc854310e5c0f60993ceff54d84d6b46323d930adb07c17599b35b505f09e784bca5985e0172257797fb53649e2e9723efd16865c31b5c3d5113b58bb0bfc8920fabdda086d7537e66d709d050bd14d0c960873f156fad5b3d3840cdfcdc9be6af519db262a27f40896ab25cc39f96984d650611c0d5a3080d5b3a1bf186abd42956588b3b58cd948970d298776060,4cd1367112c40fb7e3919df20697a4e1cdc55fd0f01be3953b1998b5fcb473e76e9e75d5d82e2973b3db89538554933b 06cbbe67e94a978203ead6c057a1a5b098478b4b4cbef5a97e93c8e42f5572713575fc2a884531d7622f8f879387a859a80f10ef02708cd8f7413ab385afc357678b9578c0ebf641ef076a1a30f1f75379e9dcb2a885bdd295905ee80c0168a62a9597d10cf12dd2d8cee46645c7e5a141f6e0e23aa482abe5661c16e69ef1e28371e2e236c359ba4e92c25626a7b7ff13f6ea4ae906e1cfe163e91719b1f750a96cbde5fbc953d9e576cd216afc90323a,878ad52fa09fd4b6465083c9c9e6a2ddb81302e2db0caa934d03a196972addd4bb8ff869bf0069e970d6baeb5bba9b79 f1c528cf7739874707d4d8ad5b98f7c77169de0b57188df233b2dc8a5b31eda5db4291dd9f68e6bad37b8d7f6c9c0044b3bf74bbc3d7d1798e138709b0d75e7c593d3cccdc1b20c7174b4e692add820ace262d45ccfae2077e878796347168060a162ecca8c38c1a88350bd63bb539134f700fd4addd5959e255337daa06bc86358fabcbefdfb5bc889783d843c08aadc6c4f6c36f65f156e851c9a0f917e4a367b5ad93d874812a1de6a7b93cd53ad97232,60071a7e2ecfaf3b5b2e84a677fb98e44bd3725addeec5c37ec62052d57af7b687a063fd39c8f6e86f79d97f246c757b 9d9f3a7ecd51b41f6572fd0d0881e30390dfb780991dae7db3b47619134718e6f987810e542619dfaa7b505c76b7350c6432d8bf1cfebdf1069b90a35f0d04cbdf130b0dfc7875f4a4e62cdb8e525aadd7ce842520a482ac18f09442d78305fe85a74e39e760a4837482ed2f437dd13b2ec1042afcf9decdc3e877e50ff4106ad10a525230d11920324a81094da31deab6476aa42f20c84843cfc1c58545ee80352bdd3740dd6a16792ae2d86f11641bb717c2,eb929023d66ac20f11bf68ebc43069d27f35077a68d21fab30854ffe53cbd784d7b25776d9f266f106433751e6c38a68 5179888724819fbad3afa927d3577796660e6a81c52d98e9303261d5a4a83232f6f758934d50aa83ff9e20a5926dfebaac49529d006eb923c5ae5048ed544ec471ed7191edf46363383824f915769b3e688094c682b02151e5ee01e510b431c8865aff8b6b6f2f59cb6d129da79e97c6d2b8fa6c6da3f603199d2d1bcab547682a81cd6cf65f6551121391d78bcc23b5bd0e922ec6d8bf97c952e84dd28aef909aba31edb903b28fbfc33b7703cd996215a11238,6a51975c9ffee8b94135a3bda954dfe14e6267dbc9253f0bb04515a6b7745aec611b7b66ae57d3fd3770aed4f412ec84 576ef3520d30b7a4899b8c0d5e359e45c5189add100e43be429a02fb3de5ff4f8fd0e79d9663acca72cd29c94582b19292a557c5b1315297d168fbb54e9e2ecd13809c2b5fce998edc6570545e1499dbe7fb74d47cd7f35823b212b05bf3f5a79caa34224fdd670d335fcb106f5d92c3946f44d3afcbae2e41ac554d8e6759f332b76be89a0324aa12c5482d1ea3ee89ded4936f3e3c080436f539fa137e74c6d3389bdf5a45074c47bc7b20b0948407a66d855e2f,d2dc49c04553f09a8c3d7db51de890a71dbc10fe4e910c68ba5ca5ddb313d0a68375275c291b4deb41f45e35a558bf77 0df2152fa4f4357c8741529dd77e783925d3d76e95bafa2b542a2c33f3d1d117d159cf473f82310356fee4c90a9e505e70f8f24859656368ba09381fa245eb6c3d763f3093f0c89b972e66b53d59406d9f01aea07f8b3b615cac4ee4d05f542e7d0dab45d67ccccd3a606ccbeb31ea1fa7005ba07176e60dab7d78f6810ef086f42f08e595f0ec217372b98970cc6321576d92ce38f7c397a403bada1548d205c343ac09deca86325373c3b76d9f32028fea8eb32515,aab5747d7dcc77bacde81a58c37764f8f41e08f2413b40d4e6c792cefe52e4e2a406338752d7ad1269e7d5284fcb7400 3e15350d87d6ebb5c8ad99d42515cfe17980933c7a8f6b8bbbf0a63728cefaad2052623c0bd5931839112a48633fb3c2004e0749c87a41b26a8b48945539d1ff41a4b269462fd199bfecd45374756f55a9116e92093ac99451aefb2af9fd32d6d7f5fbc7f7a540d5097c096ebc3b3a721541de073a1cc02f7fb0fb1b9327fb0b1218ca49c9487ab5396622a13ae546c97abdef6b56380dda7012a8384091b6656d0ab272d363cea78163ff765cdd13ab1738b940d16cae,72b526d74cf9521e00d9d6bcdfc1fb1760c6acdf2dd75171305db45d38098ff23c5b8ed3c21da73ffb8df7217ce46dbb c38d6b0b757cb552be40940ece0009ef3b0b59307c1451686f1a22702922800d58bce7a636c1727ee547c01b214779e898fc0e560f8ae7f61bef4d75eaa696b921fd6b735d171535e9edd267c192b99880c87997711002009095d8a7a437e258104a41a505e5ef71e5613ddd2008195f0c574e6ba3fe40099cfa116e5f1a2fa8a6da04badcb4e2d5d0de31fdc4800891c45781a0aac7c907b56d631fca5ce8b2cde620d11d1777ed9fa603541de794ddc5758fcd5fad78c0,800cfa48b4647f7783bcd41b2c0f7f7d4d0faa72481a2a42c4e9c43c9f62e27acb4ddb73e318061d396059aade4145e2 8d2de3f0b37a6385c90739805b170057f091cd0c7a0bc951540f26a5a75b3e694631bb64c7635eed316f51318e9d8de13c70a2aba04a14836855f35e480528b776d0a1e8a23b547c8b8d6a0d09b241d3be9377160cca4e6793d00a515dc2992cb7fc741daca171431da99cce6f7789f129e2ac5cf65b40d703035cd2185bb936c82002daf8cbc27a7a9e554b06196630446a6f0a14ba155ed26d95bd627b7205c072d02b60db0fd7e49ea058c2e0ba202daff0de91e845cf79,f782ff0de7d5442d562cc500256ee4b5a00e885c8cd86009c53f337ae003854de4b89794281a64375e3f696a415b95d2 c464bbdad275c50dcd983b65ad1019b9ff85a1e71c807f3204bb2c921dc31fbcd8c5fc45868ae9ef85b6c9b83bba2a5a822201ed68586ec5ec27fb2857a5d1a2d09d09115f22dcc39fe61f5e1ba0ff6e8b4acb4c6da748be7f3f0839739394ff7fa8e39f7f7e84a33c3866875c01bcb1263c9405d91908e9e0b50e7459fabb63d8c6bbb73d8e3483c099b55bc30ff092ff68b6adedfd477d63570c9f5515847f36e24ba0b705557130cec57ebad1d0b31a378e91894ee26e3a04,de34506ad69085c6357d62b0b127ce66e25e8ec5faca5ba898c75ca19e9af24f02406716c61a71d62bdc28d718c125df 8b8d68bb8a75732fe272815a68a1c9c5aa31b41dedc8493e76525d1d013d33cebd9e21a5bb95db2616976a8c07fcf411f5f6bc6f7e0b57aca78cc2790a6f9b898858ac9c79b165ff24e66677531e39f572be5d81eb3264524181115f32780257bfb9aeec6af12af28e587cac068a1a2953b59ad680f4c245b2e3ec36f59940d37e1d3db38e13edb29b5c0f404f6ff87f80fc8be7a225ff22fbb9c8b6b1d7330c57840d24bc75b06b80d30dad6806544d510af6c4785e823ac3e0b8,6f4feedba0abb4dbf824302250e6b668cbffdca0b8c338236fe02a8779d8aca391d8d116b2bc43d40e736096470a0bc0 6b018710446f368e7421f1bc0ccf562d9c1843846bc8d98d1c9bf7d9d6fcb48bfc3bf83b36d44c4fa93430af75cd190bde36a7f92f867f58a803900df8018150384d85d82132f123006ac2aeba58e02a037fe6afbd65eca7c44977dd3dc74f48b6e7a1bfd5cc4dcf24e4d52e92bd4455848e4928b0eac8b7476fe3cc03e862aa4dff4470dbfed6de48e410f25096487ecfc32a27277f3f5023b2725ade461b1355889554a8836c9cf53bd767f5737d55184eea1ab3f53edd0976c485,a040ce1cbb996723cbcdbdff7a6a5f69289737609534c5af36f6c420a6adfd570794079509d07e62566c58062d8186db c9534a24714bd4be37c88a3da1082eda7cabd154c309d7bd670dccd95aa535594463058a29f79031d6ecaa9f675d1211e9359be82669a79c855ea8d89dd38c2c761ddd0ec0ce9e97597432e9a1beae062cdd71edfdfd464119be9e69d18a7a7fd7ce0e2106f0c8b0abf4715e2ca48ef9f454dc203c96656653b727083513f8efb86e49c513bb758b3b052fe21f1c05bb33c37129d6cc81f1aef6adc45b0e8827a830fe545cf57d0955802c117d23ccb55ea28f95c0d8c2f9c5a242b33f,ff13c29c5e0d746ca27aee38b6b49a13c1b3d70e62875443bcfc22a22e75031e60d68a917e3ae1d42d374d44cdc9f4c8 07906c87297b867abf4576e9f3cc7f82f22b154afcbf293b9319f1b0584da6a40c27b32e0b1b7f412c4f1b82480e70a9235b12ec27090a5a33175a2bb28d8adc475cefe33f7803f8ce27967217381f02e67a3b4f84a71f1c5228e0c2ad971373f6f672624fcea8d1a9f85170fad30fa0bbd25035c3b41a6175d467998bd1215f6f3866f53847f9cf68ef3e2fbb54bc994de2302b829c5eea68ec441fcbafd7d16ae4fe9fff98bf00e5bc2ad54dd91ff9fda4dd77b6c754a91955d1fbaad0,3a4418a16896adab7c6dc783a0fc9f8d7e949937be1d68b5ef02574b2b0c9ba902fb9c15ed64fc825d598aafc1b26347 588e94b9054abc2189df69b8ba34341b77cdd528e7860e5defcaa79b0c9a452ad4b82aa306be84536eb7cedcbe058d7b84a6aef826b028b8a0271b69ac3605a9635ea9f5ea0aa700f3eb7835bc54611b922964300c953efe7491e3677c2cebe0822e956cd16433b02c68c4a23252c3f9e151a416b4963257b783e038f6b4d5c9f110f871652c7a649a7bcedcbccc6f2d0725bb903cc196ba76c76aa9f10a190b1d1168993baa9ffc96a1655216773458bec72b0e39c9f2c121378feab4e76a,17f84411e60f6bd856d09c0acf314e7546466ab0c1616284d2240d22bccc7240e5a2d656d35257ab49781bdabef6fcf9 08959a7e4baae874928813364071194e2939772f20db7c3157078987c557c2a6d5abe68d520eef3dc491692e1e21bcd880adebf63bb4213b50897fa005256ed41b5690f78f52855c8d9168a4b666fce2da2b456d7a7e7c17ab5f2fb1ee90b79e698712e963715983fd07641ae4b4e9dc73203fac1ae11fa1f8c7941fcc82eab247addb56e2638447e9d609e610b60ce086656aaebf1da3c8a231d7d94e2fd0afe46b391ff14a72eaeb3f44ad4df85866def43d4781a0b3578bc996c87970b132,e577f79b0e05355b8f63ec1e639bc5a51a72bbb0abafe76d3133dec4da9bef9a361f3e3c0adb4c07e2757fe1d4790b9a cb2a234f45e2ecd5863895a451d389a369aab99cfef0d5c9ffca1e6e63f763b5c14fb9b478313c8e8c0efeb3ac9500cf5fd93791b789e67eac12fd038e2547cc8e0fc9db591f33a1e4907c64a922dda23ec9827310b306098554a4a78f050262db5b545b159e1ff1dca6eb734b872343b842c57eafcfda8405eedbb48ef32e99696d135979235c3a05364e371c2d76f1902f1d83146df9495c0a6c57d7bf9ee77e80f9787aee27be1fe126cdc9ef893a4a7dcbbc367e40fe4e1ee90b42ea25af01,f78106f10e6c1f1ca5190fe541345145ee25bc51d3c1cbaaa04c0db2a3ba2584ddd30f3a889b94bbcb9573cd9417574c d16beadf02ab1d4dc6f88b8c4554c51e866df830b89c06e786a5f8757e8909310af51c840efe8d20b35331f4355d80f73295974653ddd620cdde4730fb6c8d0d2dcb2b45d92d4fbdb567c0a3e86bd1a8a795af26fbf29fc6c65941cddb090ff7cd230ac5268ab4606fccba9eded0a2b5d014ee0c34f0b2881ac036e24e151be89eeb6cd9a7a790afccff234d7cb11b99ebf58cd0c589f20bdac4f9f0e28f75e3e04e5b3debce607a496d848d67fa7b49132c71b878fd5557e082a18eca1fbda94d4b,6f42faf87da65516fc0cca70a385f26ebdaa94df64aa5e7a3119ac18c6214e3d0b61158fbd6c2487e0abfb0c6c85ef87 8f65f6bc59a85705016e2bae7fe57980de3127e5ab275f573d334f73f8603106ec3553016608ef2dd6e69b24be0b7113bf6a760ba6e9ce1c48f9e186012cf96a1d4849d75df5bb8315387fd78e9e153e76f8ba7ec6c8849810f59fb4bb9b004318210b37f1299526866f44059e017e22e96cbe418699d014c6ea01c9f0038b10299884dbec3199bb05adc94e955a1533219c1115fed0e5f21228b071f40dd57c4240d98d37b73e412fe0fa4703120d7c0c67972ed233e5deb300a22605472fa3a3ba86,82fc97ee34a8fcc276ae1c8130555cc2d339aa6cb34003488378855529f9ee3af819ec104dd2de300ab7dbc04b2b4017 84891e52e0d451813210c3fd635b39a03a6b7a7317b221a7abc270dfa946c42669aacbbbdf801e1584f330e28c729847ea14152bd637b3d0f2b38b4bd5bf9c791c58806281103a3eabbaede5e711e539e6a8b2cf297cf351c078b4fa8f7f35cf61bebf8814bf248a01d41e86c5715ea40c63f7375379a7eb1d78f27622fb468ab784aaaba4e534a6dfd1df6fa15511341e725ed2e87f98737ccb7b6a6dfae416477472b046bf1811187d151bfa9f7b2bf9acdb23a3be507cdf14cfdf517d2cb5fb9e4ab6,75d140be47e116211f4f668e05add36c83b3e481df9f28064a41898335d97c805471214e29c0b849875845c9b8de25e3 fdd7a9433a3b4afabd7a3a5e3457e56debf78e84b7a0b0ca0e8c6d53bd0c2dae31b2700c6128334f43981be3b213b1d7a118d59c7e6b6493a86f866a1635c12859cfb9ad17460a77b4522a5c1883c3d6acc86e6162667ec414e9a104aa892053a2b1d72165a855bacd8faf8034a5dd9b716f47a0818c09bb6baf22aa503c06b4ca261f557761989d2afbd88b6a678ad128af68672107d0f1fc73c5ca740459297b3292b281e93bceb761bde7221c3a55708e5ec84472cddcaa84ecf23723cc0991355c6280,1a04cd93747ca583a58ab4a8c7c8c7a33f025ede1b2dd080e5af0c4dc63c8715e436dd57ff7f401decef813f330d6588 70a40bfbef92277a1aad72f6b79d0177197c4ebd432668cfec05d099accb651062b5dff156c0b27336687a94b26679cfdd9daf7ad204338dd9c4d14114033a5c225bd11f217b5f4732da167ee3f939262d4043fc9cba92303b7b5e96aea12adda64859df4b86e9ee0b58e39091e6b188b408ac94e1294a8911245ee361e60e601eff58d1d37639f3753bec80ebb4efde25817436076623fc65415fe51d1b0280366d12c554d86743f3c3b6572e400361a60726131441ba493a83fbe9afda90f7af1ae717238d,fb0626f2b189679dd998bc18f30df82d0907b62aa77c8669e22b53860e3988503d884884163a561739254ca13929b69b 74356e449f4bf8644f77b14f4d67cb6bd9c1f5ae357621d5b8147e562b65c66585caf2e491b48529a01a34d226d436959153815380d5689e30b35357cdac6e08d3f2b0e88e200600d62bd9f5eaf488df86a4470ea227006182e44809009868c4c280c43d7d64a5268fa719074960087b3a6abc837882f882c837834535929389a12b2c78187e2ea07ef8b8eef27dc85002c3ae35f1a50bee6a1c48ba7e175f3316670b27983472aa6a61eed0a683a39ee323080620ea44a9f74411ae5ce99030528f9ab49c79f2,cc2ef9602f80d0734295c7c158ec366608cf60a423d0836644b60831a94e7eaf994c81f19174fd6ca75bb246bbcca200 8c3798e51bc68482d7337d3abb75dc9ffe860714a9ad73551e120059860dde24ab87327222b64cf774415a70f724cdf270de3fe47dda07b61c9ef2a3551f45a5584860248fabde676e1cd75f6355aa3eaeabe3b51dc813d9fb2eaa4f0f1d9f834d7cad9c7c695ae84b329385bc0bef895b9f1edf44a03d4b410cc23a79a6b62e4f346a5e8dd851c2857995ddbf5b2d717aeb847310e1f6a46ac3d26a7f9b44985af656d2b7c9406e8a9e8f47dcb4ef6b83caacf9aefb6118bfcff7e44bef6937ebddc89186839b77,b5a7160112e0825a7c03643beb98b1fc2549b81f01c3c4271dff99be57d472a7fad133808d7d2d414d6011e9a2e8dfec fa56bf730c4f8395875189c10c4fb251605757a8fecc31f9737e3c2503b02608e6731e85d7a38393c67de516b85304824bfb135e33bf22b3a23b913bf6acd2b7ab85198b8187b2bcd454d5e3318cacb32fd6261c31ae7f6c54ef6a7a2a4c9f3ecb81ce3555d4f0ad466dd4c108a90399d70041997c3b25345a9653f3c9a6711ab1b91d6a9d2216442da2c973cbd685ee7643bfd77327a2f7ae9cb283620a08716dfb462e5c1d65432ca9d56a90e811443cd1ecb8f0de179c9cb48ba4f6fec360c66f252f6e64edc96b,e7b3118d7fca9d294f596d820f468cd9027920777a41a706ede877cbeb9517f223b268c5e805a374051822692e9ab44b b6134f9c3e91dd8000740d009dd806240811d51ab1546a974bcb18d344642baa5cd5903af84d58ec5ba17301d5ec0f10ccd0509cbb3fd3fff9172d193af0f782252fd1338c7244d40e0e42362275b22d01c4c3389f19dd69bdf958ebe28e31a4ffe2b5f18a87831cfb7095f58a87c9fa21db72ba269379b2dc2384b3da953c7925761fed324620acea435e52b424a7723f6a2357374157a34cd8252351c25a1b232826cefe1bd3e70ffc15a31e7c0598219d7f00436294d11891b82497bc78aa5363892a2495df8c1eef,c3fa6c9d0ff231198aeca80ea428ac4b32c481d390ce4a90d0f65ff7d58f696c1faada1673d7e2d161462c95c2e2a310 c941cdb9c28ab0a791f2e5c8e8bb52850626aa89205bec3a7e22682313d198b1fa33fc7295381354858758ae6c8ec6fac3245c6e454d16fa2f51c4166fab51df272858f2d603770c40987f64442d487af49cd5c3991ce858ea2a60dab6a65a34414965933973ac2457089e359160b7cdedc42f29e10a91921785f6b7224ee0b349393cdcff6151b50b377d609559923d0984cda6000829b916ab6896693ef6a2199b3c22f7dc5500a15b8258420e314c222bc000bc4e5413e6dd82c993f8330f5c6d1be4bc79f08a1a0a46,c4bd1157c093acb27bd3bd7f444f836bfcba0dafe11675104c6437e5981442be999c860dd6e1b75faf6a553e907b61ee 4499efffac4bcea52747efd1e4f20b73e48758be915c88a1ffe5299b0b005837a46b2f20a9cb3c6e64a9e3c564a27c0f1c6ad1960373036ec5bfe1a8fc6a435c2185ed0f114c50e8b3e4c7ed96b06a036819c9463e864a58d6286f785e32a804443a56af0b4df6abc57ed5c2b185ddee8489ea080deeee66aa33c2e6dab36251c402682b6824821f998c32163164298e1fafd31babbcffb594c91888c6219079d907fdb438ed89529d6d96212fd55abe20399dbefd342248507436931cdead496eb6e4a80358acc78647d043,d099f3c8052caa2cf9751b1ed2d472c21fed667892bc1c417600a4c93effe88f1b17b36d37e4d26b9cd65acb13a6db6f eecbb8fdfa4da62170fd06727f697d81f83f601ff61e478105d3cb7502f2c89bf3e8f56edd469d049807a38882a7eefbc85fc9a950952e9fa84b8afebd3ce782d4da598002827b1eb98882ea1f0a8f7aa9ce013a6e9bc462fb66c8d4a18da21401e1b93356eb12f3725b6db1684f2300a98b9a119e5d27ff704affb618e12708e77e6e5f34139a5a41131fd1d6336c272a8fc37080f041c71341bee6ab550cb4a20a6ddb6a8e0299f2b14bc730c54b8b1c1c487b494bdccfd3a53535ab2f231590bf2c4062fd2ad58f906a2d0d,7a9fe13fe3318121babb340a3b045dc89d1be2d0ec05802c9254fec39efcde163c514dcdba3ff93f9b097486c2012385 e64f3e4ace5c8418d65fec2bc5d2a303dd458034736e3b0df719098be7a206deaf52d6ba82316caf330ef852375188cde2b39cc94aa449578a7e2a8e3f5a9d68e816b8d16889fbc0ebf0939d04f63033ae9ae2bdab73b88c26d6bd25ee460ee1ef58fb0afa92cc539f8c76d3d097e7a6a63ebb9b5887edf3cf076028c5bbd5b9db3211371ad3fe121d4e9bf44229f4e1ecf5a0f9f0eba4d5ceb72878ab22c3f0eb5a625323ac66f7061f4a81fac834471e0c59553f108475fe290d43e6a055ae3ee46fb67422f814a68c4be3e8c9,8aeede5d6e2f9f1c7a6644a8da0f93574df8ca33b2ed9d364615e1f9cf1a801315410733881ce0dad2f6fb5a916a97e1 d2cb2d733033f9e91395312808383cc4f0ca974e87ec68400d52e96b3fa6984ac58d9ad0938dde5a973008d818c49607d9de2284e7618f1b8aed8372fbd52ed54557af4220fac09dfa8443011699b97d743f8f2b1aef3537ebb45dcc9e13dfb438428ee190a4efdb3caeb7f3933117bf63abdc7e57beb4171c7e1ad260ab0587806c4d137b6316b50abc9cce0dff3acada47bbb86be777e617bbe578ff4519844db360e0a96c6701290e76bb95d26f0f804c8a4f2717eac4e7de9f2cff3bbc55a17e776c0d02856032a6cd10ad2838,29e62d8c1b71f826544a0cbfcdd99cf8aa1c97e153063120d295edf69e2ecb5a2783c66760d0f87bf944516824ccfcb1 f2998955613dd414cc111df5ce30a995bb792e260b0e37a5b1d942fe90171a4ac2f66d4928d7ad377f4d0554cbf4c523d21f6e5f379d6f4b028cdcb9b1758d3b39663242ff3cb6ede6a36a6f05db3bc41e0d861b384b6dec58bb096d0a422fd542df175e1be1571fb52ae66f2d86a2f6824a8cfaacbac4a7492ad0433eeb15454af8f312b3b2a577750e3efbd370e8a8cac1582581971fba3ba4bd0d76e718dacf8433d33a59d287f8cc92234e7a271041b526e389efb0e40b6a18b3aaf658e82ed1c78631fd23b4c3eb27c3faec8685,eb2f1bf2d9ee857b189318dfaf49dc3fad79501189ac9b5765dfb234ec4a62f0b0e34e7ac3f494d6f05c7bb86ae5cda2 447797e2899b72a356ba55bf4df3acca6cdb1041eb477bd1834a9f9acbc340a294d729f2f97df3a610be0ff15edb9c6d5db41644b9874360140fc64f52aa03f0286c8a640670067a84e017926a70438db1bb361defee7317021425f8821def26d1efd77fc853b818545d055adc9284796e583c76e6fe74c9ac2587aa46aa8f8804f2feb5836cc4b3ababab8429a5783e17d5999f32242eb59ef30cd7adabc16d72dbdb097623047c98989f88d14eaf02a7212be16ec2d07981aaa99949ddf89ecd90333a77bc4e1988a82abf7c7caf3291,2a9cf2fd012b025616478cef6971b6f9e494a63aab5f53310dde70fc6ed27f1e2d7804aeb8d206f641a73e054da620e6 9f2c18ade9b380c784e170fb763e9aa205f64303067eb1bcea93df5dac4bf5a2e00b78195f808df24fc76e26cb7be31dc35f0844cded1567bba29858cffc97fb29010331b01d6a3fb3159cc1b973d255da9843e34a0a4061cabdb9ed37f241bfabb3c20d32743f4026b59a4ccc385a2301f83c0b0a190b0f2d01acb8f0d41111e10f2f4e149379275599a52dc089b35fdd5234b0cfb7b6d8aebd563ca1fa653c5c021dfd6f5920e6f18bfafdbecbf0ab00281333ed50b9a999549c1c8f8c63d7626c48322e9791d5ff72294049bde91e73f8,5f8e2de742036b6ac4a7d8987b47c4c7a1ccb7239e1b3eefd1116d6392c79177d68c66221f31d0faed9134429b89beea ae159f3fa33619002ae6bcce8cbbdd7d28e5ed9d61534595c4c9f43c402a9bb31f3b301cbfd4a43ce4c24cd5c9849cc6259eca90e2a79e01ffbac07ba0e147fa42676a1d668570e0396387b5bcd599e8e66aaed1b8a191c5a47547f61373021fa6deadcb55363d233c24440f2c73dbb519f7c9fa5a8962efd5f6252c0407f190dfefad707f3c7007d69ff36b8489a5b6b7c557e79dd4f50c06511f599f56c896b35c917b63ba35c6ff8092baf7d1658e77fc95d8a6a43eeb4c01f33f03877f92774be89c1114dd531c011e53a34dc248a2f0e6,b0b1f4058417516a5c5a9683a5d72b489e6ad42273d591791d2cda7360a4008e86c8899369946f7abfe29bf92c9ca965 3b8e97c5ffc2d6a40fa7de7fcefc90f3b12c940e7ab415321e29ee692dfac799b009c99dcddb708fce5a178c5c35ee2b8617143edc4c40b4d313661f49abdd93cea79d117518805496fe6acf292c4c2a1f76b403a97d7c399daf85b46ad84e16246c67d6836757bde336c290d5d401e6c1386ab32797af6bb251e9b2d8fe754c47482b72e0b394eab76916126fd68ea7d65eb93d59f5b4c5ac40f7c3b37e7f3694f29424c24af8c8f0ef59cd9dbf1d28e0e10f799a6f78cad1d45b9db3d7dee4a7059abe99182714983b9c9d44d7f5643596d4f3,9172aad6c15b4dcd79bbd84fad0601119d8b4e3afed17b594ff38424157985ee27b65826b9905486e767e85aa031e07b 3434ec31b10fafdbfeec0dd6bd94e80f7ba9dca19ef075f7eb017512af66d6a4bcf7d16ba0819a1892a6372f9b35bcc7ca8155ee19e8428bc22d214856ed5fa9374c3c09bde169602cc219679f65a1566fc7316f4cc3b631a18fb4449fa6afa16a3db2bc4212eff539c67cf184680826535589c7111d73bffce431b4c40492e763d9279560aaa38eb2dc14a212d723f994a1fe656ff4dd14551ce4e7c621b2aa5604a10001b2878a897a28a08095c325e10a26d2fb1a75bfd64c250309bb55a44f23bbac0d5516a1c687d3b41ef2fbbf9cc56d4739,bafbb3321c4798548f5dd983eac1e16e1f3ef2ba5c9d69a340f6cabc9c7fe9f1fd95a692b7387342304945674d9d2e4a 7c7953d81c8d208fd1c97681d48f49dd003456de60475b84070ef4847c333b74575b1fc8d2a186964485a3b8634feaa3595aaa1a2f4595a7d6b6153563dee31bbac443c8a33eed6d5d956a980a68366c2527b550ee950250dfb691eacbd5d56ae14b970668be174c89df2fea43ae52f13142639c884fd62a3683c0c3792f0f24ab1318bcb27e21f4737fab62c77ea38bc8fd1cf41f7dab64c13febe7152bf5bb7ab5a78f5346d43cc741cb6f72b7b8980f268b68bf62abdfb1577a52438fe14b591498cc95f071228460c7c5d5ceb4a7bde588e7f21c,a055e0a9c4575cd4d7ad84a240176f21ed68f484a269e0c9effb6fa93746e31f64b0b90c513d2b57ec78e9e5ba3ba99c 7a6a4f4fdc59a1d223381ae5af498d74b7252ecf59e389e49130c7eaee626e7bd9897effd92017f4ccde66b0440462cdedfd352d8153e6a4c8d7a0812f701cc737b5178c2556f07111200eb627dbc299caa792dfa58f35935299fa3a3519e9b03166dffa159103ffa35e8577f7c0a86c6b46fe13db8e2cdd9dcfba85bdddcce0a7a8e155f81f712d8e9fe646153d3d22c811bd39f830433b2213dd46301941b59293fd0a33e2b63adbd95239bc01315c46fdb678875b3c81e053a40f581cfbec24a1404b1671a1b88a6d06120229518fb13a74ca0ac5ae,788d19ad68d1b26cb0078389b45fb18b3da35a57a1ec914273158ead43749bf1ab49b1a68d4831ce193f5852d20fd96c d9faa14cebe9b7de551b6c0765409a33938562013b5e8e0e1e0a6418df7399d0a6a771fb81c3ca9bd3bb8e2951b0bc792525a294ebd1083688806fe5e7f1e17fd4e3a41d00c89e8fcf4a363caedb1acb558e3d562f1302b3d83bb886ed27b76033798131dab05b4217381eaaa7ba15ec820bb5c13b516dd640eaec5a27d05fdfca0f35b3a5312146806b4c0275bcd0aaa3b2017f346975db566f9b4d137f4ee10644c2a2da66deeca5342e236495c3c6280528bfd32e90af4cd9bb908f34012b52b4bc56d48cc8a6b59bab014988eabd12e1a0a1c2e170e7,9c8a4f5be01ad5ae0946ef7e9f5a82287b6344b966ee28bdedfe4bd43d840d232054d5e216716ea4f80b457cbc110d1a 2d8427433d0c61f2d96cfe80cf1e932265a191365c3b61aaa3d6dcc039f6ba2ad52a6a8cc30fc10f705e6b7705105977fa496c1c708a277a124304f1fc40911e7441d1b5e77b951aad7b01fd5db1b377d165b05bbf898042e39660caf8b279fe5229d1a8db86c0999ed65e53d01ccbc4b43173ccf992b3a14586f6ba42f5fe30afa8ae40c5df29966f9346da5f8b35f16a1de3ab6de0f477d8d8660918060e88b9b9e9ca6a4207033b87a812dbf5544d39e4882010f82b6ce005f8e8ff6fe3c3806bc2b73c2b83afb704345629304f9f86358712e9fae3ca3e,a29bcb89fd2b89006782088bf9a4ab939eabaff6f4eefc31b01a66b73cdf0b977d945e051d7e9f02f19cf32ad4beba6c 5e19d97887fcaac0387e22c6f803c34a3dacd2604172433f7a8a7a526ca4a2a1271ecfc5d5d7be5ac0d85d921095350dfc65997d443c21c8094e0a3fefd2961bcb94aed03291ae310ccda75d8ace4bc7d89e7d3e5d1650bda5d668b8b50bfc8e608e184f4d3a9a2badc4ff5f07e0c0bc8a9f2e0b2a26fd6d8c550008faaab75fd71af2a424bec9a7cd9d83fad4c8e9319115656a8717d3b523a68ff8004258b9990ed362308461804ba3e3a7e92d8f2ffae5c2fba55ba5a3c27c0a2f71bd711d2fe1799c2adb31b200035481e9ee5c4adf2ab9c0fa50b23975cf,61d3b13728925646476d67c8d626d2ece69d9b42503fa6a0df2b24a5f2ab0fb7d74c2f1f7f04304c49ac94bd4e93fda4 c8e976ab4638909387ce3b8d4e510c3230e5690e02c45093b1d297910abc481e56eea0f296f98379dfc9080af69e73b2399d1c143bee80ae1328162ce1ba7f6a8374679b20aacd380eb4e61382c99998704d62701afa914f9a2705cdb065885f50d086c3eb5753700c387118bb142f3e6da1e988dfb31ac75d7368931e45d1391a274b22f83ceb072f9bcabc0b216685bfd789f5023971024b1878a205442522f9ea7d8797a4102a3df41703768251fd5e017c85d1200a464118aa35654e7ca39f3c375b8ef8cbe7534dbc64bc20befb417cf60ec92f63d9ee7397,589ab9981d9abd1d712d59c6863d850bb1d412d24a967d76cce78ffc998f8c016dd4b115a1bc4dc49248ab5f758c215a 7145fa124b7429a1fc2231237a949ba7201bcc1822d3272de005b682398196c25f7e5cc2f289fbf44415f699cb7fe6757791b1443410234ae061edf623359e2b4e32c19bf88450432dd01caa5eb16a1dc378f391ca5e3c4e5f356728bddd4975db7c890da8bbc84cc73ff244394d0d48954978765e4a00b593f70f2ca082673a261ed88dbcef1127728d8cd89bc2c597e9102ced6010f65fa75a14ebe467fa57ce3bd4948b6867d74a9df5c0ec6f530cbf2ee61ce6f06bc8f2864dff5583776b31df8c7ffcb61428a56bf7bd37188b4a5123bbf338393af46eda85e6,b3cc7224a1dd208e739c5528239b8d335a129ee20e59102621180e6b51714e0d60078f4e7328726434ae41ca273515ba 7fdfadcc9d29bad23ae038c6c65cda1aef757221b8872ed3d75ff8df7da0627d266e224e812c39f7983e4558bfd0a1f2bef3feb56ba09120ef762917b9c093867948547aee98600d10d87b20106878a8d22c64378bf634f7f75900c03986b077b0bf8b740a82447b61b99fee5376c5eb6680ec9e3088f0bdd0c56883413d60c1357d3c811950e5890e7600103c916341b80c743c6a852b7b4fb60c3ba21f3bc15b8382437a68454779cf3cd7f9f90ccc8ef28d0b706535b1e4108eb5627bb45d719cb046839aee311ca1abdc8319e050d67972cb35a6b1601b25dbf487,d33ad2a71c712a6f8ad9ac923966b4db8c4818c79cc60f8275367d2452cfd2f5542fd1888d64c9e912b92a186842b000 988638219fd3095421f826f56e4f09e356296b628c3ce6930c9f2e758fd1a80c8273f2f61e4daae65c4f110d3e7ca0965ac7d24e34c0dc4ba2d6ff0bf5bbe93b3585f354d7543cb542a1aa54674d375077f2d360a8f4d42f3db131c3b7ab7306267ba107659864a90c8c909460a73621d1f5d9d3fd95beb19b23db1cb6c0d0fba91d36891529b8bd8263caa1bab56a4affaed44962df096d8d5b1eb845ef31188b3e10f1af811a13f156beb7a288aae593ebd1471b624aa1a7c6adf01e2200b3d72d88a3aed3100c88231e41efc376906f0b580dc895f080fda5741db1cb,c12d450a020cde18c24323fb4e3fb23255714b1d4cbf29719f74da5e6151fae901dc21a6680ad159ffb2e7c0aaabdf5b 5aab62756d307a669d146aba988d9074c5a159b3de85151a819b117ca1ff6597f6156e80fdd28c9c3176835164d37da7da11d94e09add770b68a6e081cd22ca0c004bfe7cd283bf43a588da91f509b27a6584c474a4a2f3ee0f1f56447379240a5ab1fb77fdca49b305f07ba86b62756fb9efb4fc225c86845f026ea542076b91a0bc2cdd136e122c659be259d98e5841df4c2f60330d4d8cdee7bf1a0a244524eecc68ff2aef5bf0069c9e87a11c6e519de1a4062a10c83837388f7ef58598a3846f49d499682b683c4a062b421594fafbc1383c943ba83bdef515efcf10d,e5b7a9b41fa0cec3252ff95099523dc845c69b670d8dfeba3e4af6dec659c4b2d4b04f5f7062209485a37c542ccbe7e6 47b8216aa0fbb5d67966f2e82c17c07aa2d6327e96fcd83e3de7333689f3ee79994a1bf45082c4d725ed8d41205cb5bcdf5c341f77facb1da46a5b9b2cbc49eadf786bcd881f371a95fa17df73f606519aea0ff79d5a11427b98ee7f13a5c00637e2854134691059839121fea9abe2cd1bcbbbf27c74caf3678e05bfb1c949897ea01f56ffa4dafbe8644611685c617a3206c7a7036e4ac816799f693dafe7f19f303ce4eba09d21e03610201bfc665b72400a547a1e00fa9b7ad8d84f84b34aef118515e74def11b9188bd1e1f97d9a12c30132ec2806339bdadacda2fd8b78,5e2ba5382c357b5a1987bdab9a2a0b053eb75ee770e1994e630f24015ab102e482a95a25b68f5de99fe9748fa48ff696 8cff1f67fe53c098896d9136389bd8881816ccab34862bb67a656e3d98896f3ce6ffd4da73975809fcdf9666760d6e561c55238b205d8049c1cedeef374d1735daa533147bfa960b2cce4a4f254176bb4d1bd1e89654432b8dbe1a135c42115b394b024856a2a83dc85d6782be4b444239567ccec4b184d4548eae3ff6a192f343292ba2e32a0f267f31cc26719eb85245d415fb897ac2da433ee91a99424c9d7f1766a44171d1651001c38fc79294accc68ceb5665d36218454d3ba169ae058a831338c17743603f81ee173bfc0927464f9bd728dee94c6aeab7aae6ee3a627e8,0467c2b9f02af8ceaf4f8fe88d1de3ee03d78ec26edee0e34b6e7ee49ac357c35a9ae352ff4932d75e0617b8b0c61c80 eacd07971cff9b9939903f8c1d8cbb5d4db1b548a85d04e037514a583604e787f32992bf2111b97ac5e8a938233552731321522ab5e8583561260b7d13ebeef785b23a41fd8576a6da764a8ed6d822d4957a545d5244756c18aa80e1aad4d1f9c20d259dee1711e2cc8fd013169fb7cc4ce38b362f8e0936ae9198b7e838dcea4f7a5b9429bb3f6bbcf2dc92565e3676c1c5e6eb3dd2a0f86aa23edd3d0891f197447692794b3dfa269611ad97f72b795602b4fdb198f3fd3eb41b415064256e345e8d8c51c555dc8a21904a9b0f1ad0effab7786aac2da3b196507e9f33ca356427,87f9ecb906c9d8aafa8dc62af858c99609a8e9590ba5bc91a89205de44f06ae7976a9be918aafc9134de9029117152a1 23ac4e9a42c6ef45c3336ce6dfc2ff7de8884cd23dc912fef0f7756c09d335c189f3ad3a23697abda851a81881a0c8ccafc980ab2c702564c2be15fe4c4b9f10dfb2248d0d0cb2e2887fd4598a1d4acda897944a2ffc580ff92719c95cf2aa42dc584674cb5a9bc5765b9d6ddf5789791d15f8dd925aa12bffafbce60827b490bb7df3dda6f2a143c8bf96abc903d83d59a791e2d62814a89b8080a28060568cf24a80ae61179fe84e0ffad00388178cb6a617d37efd54cc01970a4a41d1a8d3ddce46edbba4ab7c90ad565398d376f431189ce8c1c33e132feae6a8cd17a61c630012,510cb484b6d4b47a590f6211c7f33592246a2e05a1c69258b6cf9a24c1a3afc2527841ae3fcd552e5103dd24743ac6b3 0172df732282c9d488669c358e3492260cbe91c95cfbc1e3fea6c4b0ec129b45f242ace09f152fc6234e1bee8aab8cd56e8b486e1dcba9c05407c2f95da8d8f1c0af78ee2ed82a3a79ec0cb0709396ee62aadb84f8a4ee8a7ccca3c1ee84e302a09ea802204afecf04097e67d0f8e8a9d2651126c0a598a37081e42d168b0ae8a71951c524259e4e2054e535b779679bdade566fe55700858618e626b4a0faf895bcce9011504a49e05fd56127eae3d1f8917afb548ecadabda1020111fec9314c413498a360b08640549a22cb23c731ace743252a8227a0d2689d4c6001606678dfb921,03f3bb45fd70966ac5efd9598c480ed677c86c7cf00b10261ae6790c5279a5e47386f3d31726d9cb619b92a79ccae25c 3875b9240cf3e0a8b59c658540f26a701cf188496e2c2174788b126fd29402d6a75453ba0635284d08835f40051a2a9683dc92afb9383719191231170379ba6f4adc816fecbb0f9c446b785bf520796841e58878b73c58d3ebb097ce4761fdeabe15de2f319dfbaf1742cdeb389559c788131a6793e193856661376c81ce9568da19aa6925b47ffd77a43c7a0e758c37d69254909ff0fbd415ef8eb937bcd49f91468b49974c07dc819abd67395db0e05874ff83dddab895344abd0e7111b2df9e58d76d85ad98106b36295826be04d435615595605e4b4bb824b33c4afeb5e7bb0d19f909,68a47c7d124e8aea5cfeef7a9d8ca7aa8df6eee6652de3a385231f29bc4b983aec8af2a61329b64bb59a45b77a38e4df 747cc1a59fefba94a9c75ba866c30dc5c1cb0c0f8e9361d98484956dd5d1a40f6184afbe3dac9f76028d1caeccfbf69199c6ce2b4c092a3f4d2a56fe5a33a00757f4d7dee5dfb0524311a97ae0668a47971b95766e2f6dd48c3f57841f91f04a00ad5ea70f2d479a2620dc5cd78eaab3a3b011719b7e78d19ddf70d9423798af77517ebc55392fcd01fc600d8d466b9e7a7a85bf33f9cc5419e9bd874ddfd60981150ddaf8d7febaa4374f0872a5628d318000311e2f5655365ad4d407c20e5c04df17a222e7deec79c5ab1116d8572f91cd06e1ccc7ced53736fc867fd49ecebe6bf8082e8a,dd3bba1b4f8493e0639151d9303835f492606e2db3af34fe65156a642794196d00a6c34a3a5fea66202c3b5a79980a8a 57af971fccaec97435dc2ec9ef0429bcedc6b647729ea168858a6e49ac1071e706f4a5a645ca14e8c7746d65511620682c906c8b86ec901f3dded4167b3f00b06cbfac6aee3728051b3e5ff10b4f9ed8bd0b8da94303c833755b3ca3aeddf0b54bc8d6632138b5d25bab03d17b3458a9d782108006f5bb7de75b5c0ba854b423d8bb801e701e99dc4feaad59bc1c7112453b04d33ea3635639fb802c73c2b71d58a56bbd671b18fe34ed2e3dca38827d63fdb1d4fb3285405004b2b3e26081a8ff08cd6d2b08f8e7b7e90a2ab1ed7a41b1d0128522c2f8bff56a7fe67969422ce839a9d4608f03,50d3b02ac7b907b310c1c0105eb47f6dcf3af0e473785daa54d8037a9a3e74a5d1a41d811202f1e3c8a140173d92f60f 04e16dedc1227902baaf332d3d08923601bdd64f573faa1bb7201918cfe16b1e10151dae875da0c0d63c59c3dd050c4c6a874011b018421afc4623ab0381831b2da2a8ba42c96e4f70864ac44e106f94311051e74c77c1291bf5db9539e69567bf6a11cf6932bbbad33f8946bf5814c066d851633d1a513510039b349939bfd42b858c21827c8ff05f1d09b1b0765dc78a135b5ca4dfba0801bcaddfa175623c8b647eacfb4444b85a44f73890607d06d507a4f8393658788669f6ef4deb58d08c50ca0756d5e2f49d1a7ad73e0f0b3d3b5f090acf622b1878c59133e4a848e05153592ea81c6fbf,a6bbae1ff8e00dce34f640cee2cdb5bcfe4382761be36a940e50eec12b5c2a02b2b6be18a7c87a36fd2194c4d243ec38 7c815c384eee0f288ece27cced52a01603127b079c007378bc5d1e6c5e9e6d1c735723acbbd5801ac49854b2b569d4472d33f40bbb8882956245c366dc3582d71696a97a4e19557e41e54dee482a14229005f93afd2c4a7d8614d10a97a9dfa07f7cd946fa45263063ddd29db8f9e34db60daa32684f0072ea2a9426ecebfa5239fb67f29c18cbaa2af6ed4bf4283936823ac1790164fec5457a9cba7c767ca59392d94cab7448f50eb34e9a93a80027471ce59736f099c886dea1ab4cba4d89f5fc7ae2f21ccd27f611eca4626b2d08dc22382e92c1efb2f6afdc8fdc3d2172604f5035c46b8197d3,7ed83eb659536b36061773073b148ed2117512372e49e0a3aee48b96353ec936b32688b150c585944d2008f21366b531 e29d505158dbdd937d9e3d2145658ee6f5992a2fc790f4f608d9cdb44a091d5b94b88e81fac4fdf5c49442f13b911c55886469629551189eaff62488f1a479b7db11a1560e198ddccccf50159093425ff7f1cb8d1d1246d0978764087d6bac257026b090efae8cec5f22b6f21c59ace1ac7386f5b8837ca6a12b6fbf5534dd0560ef05ca78104d3b943ddb220feaec89aa5e692a00f822a2ab9a2fe60350d75e7be16ff2526dc643872502d01f42f188abed0a6e9a6f5fd0d1ce7d5755c9ffa66b0af0b20bd806f08e06156690d81ac811778ca3dac2c249b96002017fce93e507e3b953acf99964b847,2516e0015ed162073238996d5a03239087e01c2091f7b03637e6c89a758f565e45c908de873e378caa433baf339d0552 d85588696f576e65eca0155f395f0cfacd83f36a99111ed5768df2d116d2121e32357ba4f54ede927f189f297d3a97fad4e9a0f5b41d8d89dd7fe20156799c2b7b6bf9c957ba0d6763f5c3bc5129747bbb53652b49290cff1c87e2cdf2c4b95d8aaee09bc8fbfa6883e62d237885810491bfc101f1d8c636e3d0ede838ad05c207a3df4fad76452979eb99f29afaecedd1c63b8d36cf378454a1bb67a741c77ac6b6b3f95f4f02b64dabc15438613ea49750df42ee90101f115aa9abb9ff64324dde9dabbb01054e1bd6b4bcdc7930a44c2300d87ca78c06924d0323ad7887e46c90e8c4d100acd9eed21e,6bae42add06c6a20a05d845e7bf391f1eab83e83a710a18527fc03646104e52a8b417cff375753882081f31b6f2295eb 3a12f8508b40c32c74492b66323375dcfe49184c78f73179f3314b79e63376b8ac683f5a51f1534bd729b02b04d002f55cbd8e8fc9b5ec1ea6bbe6a0d0e7431518e6ba45d124035f9d3dce0a8bb7bf1430a9f657e0b4ea9f20eb20c786a58181a1e20a96f1628f8728a13bdf7a4b4b32fc8aa7054cc4881ae7fa19afa65c6c3ee1b3ade3192af42054a8a911b8ec1826865d46d93f1e7c5e2b7813c92a506e53886f3d4701bb93d2a681ad109c845904bb861af8af0646b6e399b38b614051d34f6842563a0f37ec00cb3d865fc5d746c4987de2a65071100883a2a9c7a2bfe1e2dd603d9ea24dc7c5fd06be,14690ddb5a48fdf382dbc745ad0330c1486124f6ad2e5ae4a850e38c264f99aeae6f156062ab1946dd07afe1700a8294 1861edce46fa5ad17e1ff1deae084dec580f97d0a67885dfe834b9dfac1ae076742ce9e267512ca51f6df5a455af0c5fd6abf94acea103a3370c354485a7846fb84f3ac7c2904b5b2fbf227002ce512133bb7e1c4e50057bfd1e44db33c7cdb969a99e284b184f50a14b068a1fc5009d9b298dbe92239572a7627aac02abe8f3e3b473417f36d4d2505d16b7577f4526c9d94a270a2dfe450d06da8f6fa956879a0a55cfe99e742ea555ea477ba3e9b44ccd508c375423611af92e55345dc215779b2d5119eba49c71d49b9fe3f1569fa24e5ca3e332d042422a8b8158d3ec66a80012976f31ffdf305f0c9c5e,9da6652ba890007a01126f0f65970abf3474c7659c6c80b04da2ca592edf0f399601bc0dad10a0dd6e316a286e2338ef 08d0ffde3a6e4ef65608ea672e4830c12943d7187ccff08f4941cfc13e545f3b9c7ad5eebbe2b01642b486caf855c2c73f58c1e4e3391da8e2d63d96e15fd84953ae5c231911b00ad6050cd7aafdaac9b0f663ae6aab45519d0f5391a541707d479034e73a6ad805ae3598096af078f1393301493d663dd71f83869ca27ba508b7e91e81e128c1716dc3acfe3084b2201e04cf8006617eecf1b640474a5d45cfde9f4d3ef92d6d055b909892194d8a8218db6d8203a84261d200d71473d7488f3427416b6896c137d455f231071cacbc86e0415ab88aec841d96b7b8af41e05bb461a40645bf176601f1e760de5f,b94d578de79a437bead951e9aee912540d0139965cf0142f1fd403534959b75d11e0b2463201b10364b905cf9baa57b3 d782abb72a5be3392757be02d3e45be6e2099d6f000d042c8a543f50ed6ebc055a7f133b0dd8e9bc348536edcaae2e12ec18e8837df7a1b3c87ec46d50c241dee820fd586197552dc20beea50f445a07a38f1768a39e2b2ff05dddedf751f1def612d2e4d810daa3a0cc904516f9a43af660315385178a529e51f8aae141808c8bc5d7b60cac26bb984ac1890d0436ef780426c547e94a7b08f01acbfc4a3825eae04f520a9016f2fb8bf5165ed12736fc71e36a49a73614739eaa3ec834069b1b40f1350c2b3ab885c02c640b9f7686ed5f99527e41cfcd796fe4c256c9173186c226169ff257954ebda81c0e5f99,b85f56f69d3be57a1c2aa553f90bc1b089e8f1c561881be64630ea6ba4dd3bd5301512313a18c26df3e97e056a59edcf 5fce8109a358570e40983e1184e541833bb9091e280f258cfb144387b05d190e431cb19baa67273ba0c58abe91308e1844dcd0b3678baa42f335f2fa05267a0240b3c718a5942b3b3e3bfa98a55c25a1466e8d7a603722cb2bbf03afa54cd769a99f310735ee5a05dae2c22d397bd95635f58c48a67f90e1b73aafcd3f82117f0166657838691005b18da6f341d6e90fc1cdb352b30fae45d348294e501b63252de14740f2b85ae5299ddec3172de8b6d0ba219a20a23bb5e10ff434d39db3f583305e9f5c039d98569e377b75a70ab837d1df269b8a4b566f40bb91b577455fd3c356c914fa06b9a7ce24c7317a172d,7d9508fb795811ea1442db3ecb779cb0494736e7123b252cf88a9a0b50d57cf00b87a6c4fac27f821cd55979d586aa39 6172f1971a6e1e4e6170afbad95d5fec99bf69b24b674bc17dd78011615e502de6f56b86b1a71d3f4348087218ac7b7d09302993be272e4a591968aef18a1262d665610d1070ee91cc8da36e1f841a69a7a682c580e836941d21d909a3afc1f0b963e1ca5ab193e124a1a53df1c587470e5881fb54dae1b0d840f0c8f9d1b04c645ba1041c7d8dbf22030a623aa15638b3d99a2c400ff76f3252079af88d2b37f35ee66c1ad7801a28d3d388ac450b97d5f0f79e4541755356b3b1a5696b023f39ab7ab5f28df4202936bc97393b93bc915cb159ea1bd7a0a414cb4b7a1ac3af68f50d79f0c9c7314e750f7d02faa58bfa,afd94b061f354b04d0718326d7e10a6b598ce31cc39c52d265d6cf04e4d9ee75cc200149367600312e7514a62f0f0964 5668ecd99dfbe215c4118398ac9c9eaf1a1433fab4ccdd3968064752b625ea944731f75d48a27d047d67547f14dd0ffaa55fa5e29f7af0d161d85eafc4f2029b717c918eab9d304543290bdba7158b68020c0ba4e079bc95b5bc0fc044a992b94b4ccd3bd66d0eabb5dbbab904d62e00752c4e3b0091d773bcf4c14b4377da3efff824b1cb2fa01b32d1e46c909e626ed2dae920f4c7dbeb635bc754facbd8d49beba3f23c1c41ccbfcd0ee0c114e69737f5597c0bf1d859f0c767e18002ae8e39c26261ffde2920d3d0baf0e906138696cfe5b7e32b600f45df3aaa39932f3a7df95b60fa8712a2271fcaf3911ce7b511b1,ec63ce9dd979fcd132244be11a45ddb1d00fc8f80160b8cc456f5c5eb89e0c3f675b28b92dd9e6cefaa5da57b4908646 03d625488354df30e3f875a68edfcf340e8366a8e1ab67f9d5c5486a96829dfac0578289082b2a62117e1cf418b43b90e0adc881fc6ae8105c888e9ecd21aea1c9ae1a4038dfd17378fed71d02ae492087d7cdcd98f746855227967cb1ab4714261ee3bead3f4db118329d3ebef4bc48a875c19ba763966da0ebea800e01b2f50b00e9dd4caca6dcb314d00184ef71ea2391d760c950710db4a70f9212ffc54861f9dc752ce18867b8ad0c48df8466ef7231e7ac567f0eb55099e622ebb86cb237520190a61c66ad34f1f4e289cb3282ae3eaac6152ed24d2c92bae5a7658252a53c49b7b02dfe54fdb2e90074b6cf310ac661,86301fe98f3ffabb0cb0085aaa1ec61bcad6171459a8623bb780ec32e46f52649946a421ebfc7de90f0e74ec787a3e03 2edc282ffb90b97118dd03aaa03b145f363905e3cbd2d50ecd692b37bf000185c651d3e9726c690d3773ec1e48510e42b17742b0b0377e7de6b8f55e00a8a4db4740cee6db0830529dd19617501dc1e9359aa3bcf147e0a76b3ab70c4984c13e339e6806bb35e683af8527093670859f3d8a0fc7d493bcba6bb12b5f65e71e705ca5d6c948d66ed3d730b26db395b3447737c26fad089aa0ad0e306cb28bf0acf106f89af3745f0ec72d534968cca543cd2ca50c94b1456743254e358c1317c07a07bf2b0eca438a709367fafc89a57239028fc5fecfd53b8ef958ef10ee0608b7f5cb9923ad97058ec067700cc746c127a61ee3,ddf8d547bba4f43d8864caef1b1bed77aa12e41f6886a5d8758c654b7ec1fa5b0e77ba4e7680c7830da161e14cb1e65c 90b28a6aa1fe533915bcb8e81ed6cacdc10962b7ff82474f845eeb86977600cf70b07ba8e3796141ee340e3fce842a38a50afbe90301a3bdcc591f2e7d9de53e495525560b908c892439990a2ca2679c5539ffdf636777ad9c1cdef809cda9e8dcdb451abb9e9c17efa4379abd24b182bd981cafc792640a183b61694301d04c5b3eaad694a6bd4cc06ef5da8fa23b4fa2a64559c5a68397930079d250c51bcf00e2b16a6c49171433b0aadfd80231276560b80458dd77089b7a1bbcc9e7e4b9f881eacd6c92c4318348a13f4914eb27115a1cfc5d16d7fd94954c3532efaca2cab025103b2d02c6fd71da3a77f417d7932685888a,72953fe4ca34e717e304dc77afd9dede32a8467127b9f78bb0be6191a7ecd051b7dae091b1758907dda3b1d25c0c5883 2969447d175490f2aa9bb055014dbef2e6854c95f8d60950bfe8c0be8de254c26b2d31b9e4de9c68c9adf49e4ee9b1c2850967f29f5d08738483b417bb96b2a56f0c8aca632b552059c59aac3f61f7b45c966b75f1d9931ff4e596406378cee91aaa726a3a84c33f37e9cdbe626b5745a0b06064a8a8d56e53aaf102d23dd9df0a3fdf7a638509a6761a33fa42fa8ddbd8e16159c93008b53765019c3f0e9f10b144ce2ac57f5d7297f9c9949e4ff68b70d339f87501ce8550b772f32c6da8ad2ce2100a895d8b08fa1eead7c376b407709703c510b50f87e73e43f8e7348f87c3832a547ef2bbe5799abedcf5e1f372ea809233f006,f36a9ee455066e562fb675f399d9dcc6bccf68fd1b0ba9f7dcc1edfac1f1e234cb67b5a0f770e55435f75f9ec84a9151 721645633a44a2c78b19024eaecf58575ab23c27190833c26875dc0f0d50b46aea9c343d82ea7d5b3e50ec700545c615daeaea64726a0f05607576dcd396d812b03fb6551c641087856d050b10e6a4d5577b82a98afb89cee8594c9dc19e79feff0382fcfd127f1b803a4b9946f4ac9a4378e1e6e041b1389a53e3450cd32d9d2941b0cbabdb50da8ea2513145164c3ab6bcbd251c448d2d4b087ac57a59c2285d564f16da4ed5e607ed979592146ffb0ef3f3db308fb342df5eb5924a48256fc763141a278814c82d6d6348577545870ae3a83c7230ac02a1540fe1798f7ef09e335a865a2ae0949b21e4f748fb8a51f44750e213a8fb,37368f5a074da0e5075845f76b1ac5858df793eef88a854c7dafe3b90720707a145a5dcb0d9266c6148204ce693c5432 6b860d39725a14b498bb714574b4d37ca787404768f64c648b1751b353ac92bac2c3a28ea909fdf0423336401a02e63ec24325300d823b6864bb701f9d7c7a1f8ec9d0ae3584aa6dd62ea1997cd831b4babd9a4da50932d4efda745c61e4130890e156aee6113716daf95764222a91187db2effea49d5d0596102d619bd26a616bbfda8335505fbb0d90b4c180d1a2335b91538e1668f9f9642790b4e55f9cab0fe2bdd2935d001ee6419abab5457880d0dbff20ed8758f4c20fe759efb33141cf0e892587fe8187e5fbc57786b7e8b089612c936dfc03d27efbbe7c8673f1606bd51d5ff386f4a7ab68edf59f385eb1291f117bfe717399,daac83b0c5c8f8fc3bccd259c27d964673b4dca790b4b63899e1b6c19cc291fe6f88376281e0fa320adfadc82a8ff4ef 6a01830af3889a25183244decb508bd01253d5b508ab490d3124afbf42626b2e70894e9b562b288d0a2450cfacf14a0ddae5c04716e5a0082c33981f6037d23d5e045ee1ef2283fb8b6378a914c5d9441627a722c282ff452e25a7ea608d69cee4393a0725d17963d0342684f255496d8a18c2961145315130549311fc07f0312fb78e6077334f87eaa873bee8aa95698996eb21375eb2b4ef53c14401207deb4568398e5dd9a7cf97e8c9663e23334b46912f8344c19efcf8c2ba6f04325f1a27e062b62a58d0766fc6db4d2c6a1928604b0175d872d16b7908ebc041761187cc785526c2a3873feac3a642bb39f5351550af9770c328af7b,357258fa6579867cc0089c8b3c93ce10677a5ad4dbeee2a27cea90317acebe7254505468875bcb334e0b6f70cfe59082 b3c5e74b69933c2533106c563b4ca20238f2b6e675e8681e34a389894785bdade59652d4a73d80a5c85bd454fd1e9ffdad1c3815f5038e9ef432aac5c3c4fe840cc370cf86580a6011778bbedaf511a51b56d1a2eb68394aa299e26da9ada6a2f39b9faff7fba457689b9c1a577b2a1e505fdf75c7a0a64b1df81b3a356001bf0df4e02a1fc59f651c9d585ec6224bb279c6beba2966e8882d68376081b987468e7aed1ef90ebd090ae825795cdca1b4f09a979c8dfc21a48d8a53cdbb26c4db547fc06efe2f9850edd2685a4661cb4911f165d4b63ef25b87d0a96d3dff6ab0758999aad214d07bd4f133a6734fde445fe474711b69a98f7e2b,06e9f892a2716de18dac1b8946604473ade060afc8cb1287e389994076ff92b4bae3d84854470ed061ae31a97b7d0dcf 83af34279ccb5430febec07a81950d30f4b66f484826afee7456f0071a51e1bbc55570b5cc7ec6f9309c17bf5befdd7c6ba6e968cf218a2b34bd5cf927ab846e38a40bbd81759e9e33381016a755f699df35d660007b5eadf292feefb735207ebf70b5bd17834f7bfa0e16cb219ad4af524ab1ea37334aa66435e5d397fc0a065c411ebbce32c240b90476d307ce802ec82c1c49bc1bec48c0675ec2a6c6f3ed3e5b741d13437095707c565e10d8a20b8c20468ff9514fcf31b4249cd82dcee58c0a2af538b291a87e3390d737191a07484a5d3f3fb8c8f15ce056e5e5f8febe5e1fb59d6740980aa06ca8a0c20f5712b4cde5d032e92ab89f0ae1,64047790b1656e78953b981b1bbfaeaf9d2b1b8953ab0304791238393f3372c6373a1e087b57be48806229db73e1b1a4 a7ed84749ccc56bb1dfba57119d279d412b8a986886d810f067af349e8749e9ea746a60b03742636c464fc1ee233acc52c1983914692b64309edfdf29f1ab912ec3e8da074d3f1d231511f5756f0b6eead3e89a6a88fe330a10face267bffbfc3e3090c7fd9a850561f363ad75ea881e7244f80ff55802d5ef7a1a4e7b89fcfa80f16df54d1b056ee637e6964b9e0ffd15b6196bdd7db270c56b47251485348e49813b4eb9ed122a01b3ea45ad5e1a929df61d5c0f3e77e1fdc356b63883a60e9cbb9fc3e00c2f32dbd469659883f690c6772e335f617bc33f161d6f6984252ee12e62b6000ac5231e0c9bc65be223d8dfd94c5004a101af9fd6c0fb,9ca6f39087e6457e12c969d41c8bd66bdd6990ce23d355669e7606b9203d216811237955df6739495d94f0c48ce02845 a6fe30dcfcda1a329e82ab50e32b5f50eb25c873c5d2305860a835aecee6264aa36a47429922c4b8b3afd00da16035830edb897831c4e7b00f2c23fc0b15fdc30d85fb70c30c431c638e1a25b51caf1d7e8b050b7f89bfb30f59f0f20fecff3d639abc4255b3868fc45dd81e47eb12ab40f2aac735df5d1dc1ad997cefc4d836b854cee9ac02900036f3867fe0d84afff37bde3308c2206c62c4743375094108877c73b87b2546fe05ea137bedfc06a2796274099a0d554da8f7d7223a48cbf31b7decaa1ebc8b145763e3673168c1b1b715c1cd99ecd3ddb238b06049885ecad9347c2436dff32c771f34a38587a44a82c5d3d137a03caa27e66c8ff6,fe99f19c79a89080e2ff90981dde91994542d4bcc1276a82d1a2e53850341b9ad5422ceab81e69dae5e91dc5ff60e1a3 83167ff53704c3aa19e9fb3303539759c46dd4091a52ddae9ad86408b69335989e61414bc20ab4d01220e35241eff5c9522b079fba597674c8d716fe441e566110b6211531ceccf8fd06bc8e511d00785e57788ed9a1c5c73524f01830d2e1148c92d0edc97113e3b7b5cd3049627abdb8b39dd4d6890e0ee91993f92b03354a88f52251c546e64434d9c3d74544f23fb93e5a2d2f1fb15545b4e1367c97335b0291944c8b730ad3d4789273fa44fb98d78a36c3c3764abeeac7c569c1e43a352e5b770c3504f87090dee075a1c4c85c0c39cf421bdcc615f9eff6cb4fe6468004aece5f30e1ecc6db22ad9939bb2b0ccc96521dfbf4ae008b5b46bc006e,92e1d994fea2fd500a4b7f5139119058a5b70ef6174e553f12fe7bcfca24b00a28391e3761bdcba3fd6b033c1286e28e 3a3a819c48efde2ad914fbf00e18ab6bc4f14513ab27d0c178a188b61431e7f5623cb66b23346775d386b50e982c493adbbfc54b9a3cd383382336a1a0b2150a15358f336d03ae18f666c7573d55c4fd181c29e6ccfde63ea35f0adf5885cfc0a3d84a2b2e4dd24496db789e663170cef74798aa1bbcd4574ea0bba40489d764b2f83aadc66b148b4a0cd95246c127d5871c4f11418690a5ddf01246a0c80a43c70088b6183639dcfda4125bd113a8f49ee23ed306faac576c3fb0c1e256671d817fc2534a52f5b439f72e424de376f4c565cca82307dd9ef76da5b7c4eb7e085172e328807c02d011ffbf33785378d79dc266f6a5be6bb0e4a92eceebaeb1,6bff1c8405a3fe594e360e3bccea1ebcd509310dc79b9e45c263783d7a5dd662c6789b18bd567dbdda1554f5bee6a860 # EOF pysha3-1.0.2/vectors/keccak_256.txt0000664000175000017500000024043412711153011017533 0ustar heimesheimes00000000000000# ShortMsgKAT_256.txt ,c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470 cc,eead6dbfc7340a56caedc044696a168870549a6a7f6f56961e84a54bd9970b8a 41fb,a8eaceda4d47b3281a795ad9e1ea2122b407baf9aabcb9e18b5717b7873537d2 1f877c,627d7bc1491b2ab127282827b8de2d276b13d7d70fb4c5957fdf20655bc7ac30 c1ecfdfc,b149e766d7612eaf7d55f74e1a4fdd63709a8115b14f61fcd22aa4abc8b8e122 21f134ac57,67f05544dbe97d5d6417c1b1ea9bc0e3a99a541381d1cd9b08a9765687eb5bb4 c6f50bb74e29,923062c4e6f057597220d182dbb10e81cd25f60b54005b2a75dd33d6dac518d0 119713cc83eeef,feb8405dcd315d48c6cbf7a3504996de8e25cc22566efec67433712eda99894f 4a4f202484512526,e620d8f2982b24fedaaa3baa9b46c3f9ce204ee356666553ecb35e15c3ff9bf9 1f66ab4185ed9b6375,9e03f7c9a3d055eca1d786ed6fb624d93f1cf0ac27f9c2b6c05e509fac9e7fca eed7422227613b6f53c9,caad8e1ed546630748a12f5351b518a9a431cda6ba56cbfc3ccbdd8aae5092f7 eaeed5cdffd89dece455f1,d61708bdb3211a9aab28d4df01dfa4b29ed40285844d841042257e97488617b0 5be43c90f22902e4fe8ed2d3,0f53be55990780b3fad9870f04f7d8153c3ae605c057c85abb5d71765043aaa8 a746273228122f381c3b46e4f1,32215ae88204a782b62d1810d945de49948de458600f5e1e3896ceca2ed3292b 3c5871cd619c69a63b540eb5a625,9510da68e58ebb8d2ab9de8485bb408e358299a9c011ae8544b0d0faf9d4a4ea fa22874bcc068879e8ef11a69f0722,f20b3bcf743aa6fa084038520791c364cb6d3d1dd75841f8d7021cd98322bd8f 52a608ab21ccdd8a4457a57ede782176,0e32defa2071f0b5ac0e6a108b842ed0f1d3249712f58ee0ddf956fe332a5f95 82e192e4043ddcd12ecf52969d0f807eed,9204550677b9aa770e6e93e319b9958540d54ff4dccb063c8561302cd8aff676 75683dcb556140c522543bb6e9098b21a21e,a6d5444cb7aa61f5106cdedb39d5e1dd7d608f102798d7e818ac87289123a1db 06e4efe45035e61faaf4287b4d8d1f12ca97e5,5796b993d0bd1257cf26782b4e58fafb22b0986d88684ab5a2e6cec6706275f9 e26193989d06568fe688e75540aea06747d9f851,cfbe73c6585be6204dd473abe356b539477174c4b770bfc91e9fdbcbc57086e6 d8dc8fdefbdce9d44e4cbafe78447bae3b5436102a,31c8006b0ec35e690674297cb27476db6066b5fa9825c60728e9e0bb338fb7c3 57085fd7e14216ab102d8317b0cb338a786d5fc32d8f,3b8fa3904fe1b837565a50d0fbf03e487d6d72fc3cea41adcce33df1b835d247 a05404df5dbb57697e2c16fa29defac8ab3560d6126fa0,37febc4df9d50daeabd0caa6578812a687e55f1ac0b109d2512810d00548c85b aecbb02759f7433d6fcb06963c74061cd83b5b3ffa6f13c6,2329810b5a4735bcd49c10e6456c0b1ded5eac258af47cbb797ca162ab6d1ba8 aafdc9243d3d4a096558a360cc27c8d862f0be73db5e88aa55,6fffa070b865be3ee766dc2db49b6aa55c369f7de3703ada2612d754145c01e6 7bc84867f6f9e9fdc3e1046cae3a52c77ed485860ee260e30b15,b30761c053e926f150b9dce7e005b4d87811ccfb9e3b6edb0221022f01711cf0 fac523575a99ec48279a7a459e98ff901918a475034327efb55843,04f1b3c1e25ba5d012e22ad144e5a8719d94322d05ad9ef61e7db49b59959b3a 0f8b2d8fcfd9d68cffc17ccfb117709b53d26462a3f346fb7c79b85e,aeef4b4da420834ffced26db291248fb2d01e765e2b0564057f8e6c2030ac37f a963c3e895ff5a0be4824400518d81412f875fa50521e26e85eac90c04,03d26aeeb4a7bdddbff7cff667198c425941a2776922df2bec545f5304e2c61c 03a18688b10cc0edf83adf0a84808a9718383c4070c6c4f295098699ac2c,435cfc0d1afd8d5509a9ccbf49706575038685bf08db549d9714548240463ee9 84fb51b517df6c5accb5d022f8f28da09b10232d42320ffc32dbecc3835b29,d477fb02caaa95b3280ec8ee882c29d9e8a654b21ef178e0f97571bf9d4d3c1c 9f2fcc7c90de090d6b87cd7e9718c1ea6cb21118fc2d5de9f97e5db6ac1e9c10,24dd2ee02482144f539f810d2caa8a7b75d0fa33657e47932122d273c3f6f6d1 de8f1b3faa4b7040ed4563c3b8e598253178e87e4d0df75e4ff2f2dedd5a0be046,e78c421e6213aff8de1f025759a4f2c943db62bbde359c8737e19b3776ed2dd2 62f154ec394d0bc757d045c798c8b87a00e0655d0481a7d2d9fb58d93aedc676b5a0,cce3e3d498328a4d9c5b4dbf9a1209628ab82621ad1a0d0a18680362889e6164 b2dcfe9ff19e2b23ce7da2a4207d3e5ec7c6112a8a22aec9675a886378e14e5bfbad4e,f871db93c5c92ecd65d4edb96fcb12e4729bc2a1899f7fb029f50bff431cbb72 47f5697ac8c31409c0868827347a613a3562041c633cf1f1f86865a576e02835ed2c2492,4eb143477431df019311aed936cab91a912ec1e6868b71e9eddb777408d4af34 512a6d292e67ecb2fe486bfe92660953a75484ff4c4f2eca2b0af0edcdd4339c6b2ee4e542,9a0c1d50a59dbf657f6713c795ed14e1f23b4eaa137c5540aacdb0a7e32c29fc 973cf2b4dcf0bfa872b41194cb05bb4e16760a1840d8343301802576197ec19e2a1493d8f4fb,ba062e5d370216d11985c4ca7a2658ddc7328b4be4b40a52dd8fa3ca662f09d1 80beebcd2e3f8a9451d4499961c9731ae667cdc24ea020ce3b9aa4bbc0a7f79e30a934467da4b0,3a083ae163df42bd51b9c664bee9dc4362f16e63383df16473df71be6dd40c1c 7abaa12ec2a7347674e444140ae0fb659d08e1c66decd8d6eae925fa451d65f3c0308e29446b8ed3,4876e273ac00942576d9608d5b63ecc9a3e75d5e0c42c6abdbcde037785af9a7 c88dee9927679b8af422abcbacf283b904ff31e1cac58c7819809f65d5807d46723b20f67ba610c2b7,4797ba1c7ab7197050d6b2e506f2df4550e4b673df78f18c465424e48df5e997 01e43fe350fcec450ec9b102053e6b5d56e09896e0ddd9074fe138e6038210270c834ce6eadc2bb86bf6,41c91be98c5813a4c5d8ae7c29b9919c1cc95b4a05f82433948cb99d9a6d039c 337023370a48b62ee43546f17c4ef2bf8d7ecd1d49f90bab604b839c2e6e5bd21540d29ba27ab8e309a4b7,ee354290e3f9ce9123c49ba616e1a2684a90f3ddd84e73a1d2c232f740412b18 6892540f964c8c74bd2db02c0ad884510cb38afd4438af31fc912756f3efec6b32b58ebc38fc2a6b913596a8,fbec0b6d71696eede900b77aa6d7d25f4ab45df8961ca9c8b3f4f9b51af983ab f5961dfd2b1ffffda4ffbf30560c165bfedab8ce0be525845deb8dc61004b7db38467205f5dcfb34a2acfe96c0,9d24aeea08f9a4b5fb8b6de85a2296f5f4108ddd1eea4f8ee58819cf84edb765 ca061a2eb6ceed8881ce2057172d869d73a1951e63d57261384b80ceb5451e77b06cf0f5a0ea15ca907ee1c27eba,732034cae3ff1116f07fc18b5a26ef8faf3fe75d3dbca05e48795365e0a17c40 1743a77251d69242750c4f1140532cd3c33f9b5ccdf7514e8584d4a5f9fbd730bcf84d0d4726364b9bf95ab251d9bb,deac521805bc6a97c0870e9e225d1c4b2fd8f3a9a7f6b39e357c26414821e2dd d8faba1f5194c4db5f176fabfff856924ef627a37cd08cf55608bba8f1e324d7c7f157298eabc4dce7d89ce5162499f9,ad55537347b20d9fca02683e6de1032ec10eb84da4cbd501e49744a666292edf be9684be70340860373c9c482ba517e899fc81baaa12e5c6d7727975d1d41ba8bef788cdb5cf4606c9c1c7f61aed59f97d,b1f990204bf630569a3edc634864274786f40ce1c57165ee32d0e29f5d0c6851 7e15d2b9ea74ca60f66c8dfab377d9198b7b16deb6a1ba0ea3c7ee2042f89d3786e779cf053c77785aa9e692f821f14a7f51,fa460cd51bc611786d364fcabe39052bcd5f009edfa81f4701c5b22b729b0016 9a219be43713bd578015e9fda66c0f2d83cac563b776ab9f38f3e4f7ef229cb443304fba401efb2bdbd7ece939102298651c86,f7b0fe5a69ff44060d4f6ad2486e6cde9ed679af9aa1ada613e4cc392442beb5 c8f2b693bd0d75ef99caebdc22adf4088a95a3542f637203e283bbc3268780e787d68d28cc3897452f6a22aa8573ccebf245972a,24204d491f202534859fc0a208237184471a2d801fb3b934d0968d0d843d0345 ec0f99711016c6a2a07ad80d16427506ce6f441059fd269442baaa28c6ca037b22eeac49d5d894c0bf66219f2c08e9d0e8ab21de52,81147cba0647eee78c4784874c0557621a138ca781fb6f5dcd0d9c609af56f35 0dc45181337ca32a8222fe7a3bf42fc9f89744259cff653504d6051fe84b1a7ffd20cb47d4696ce212a686bb9be9a8ab1c697b6d6a33,5b6d7eda559574fae882e6266f4c2be362133e44b5a947ecb6e75db9fc8567e0 de286ba4206e8b005714f80fb1cdfaebde91d29f84603e4a3ebc04686f99a46c9e880b96c574825582e8812a26e5a857ffc6579f63742f,86f87e75c87f9be39e4aa6d0c5a37a5964d6ffdc462525c0642c9db010de38ee eebcc18057252cbf3f9c070f1a73213356d5d4bc19ac2a411ec8cdeee7a571e2e20eaf61fd0c33a0ffeb297ddb77a97f0a415347db66bcaf,959fe007b57c2947c36d1d66cc0808d80db7df45d68a34852b70d2dda192c25c 416b5cdc9fe951bd361bd7abfc120a5054758eba88fdd68fd84e39d3b09ac25497d36b43cbe7b85a6a3cebda8db4e5549c3ee51bb6fcb6ac1e,1a93567eebc41cc44d9346cde646005d3e82de8eeeb131e9c1f6d1e4afd260f7 5c5faf66f32e0f8311c32e8da8284a4ed60891a5a7e50fb2956b3cbaa79fc66ca376460e100415401fc2b8518c64502f187ea14bfc9503759705,549db056b65edf7d05bd66661b6d0a39b29b825bc80910f8bf7060a53bff68e1 7167e1e02be1a7ca69d788666f823ae4eef39271f3c26a5cf7cee05bca83161066dc2e217b330df821103799df6d74810eed363adc4ab99f36046a,794abfd7eb622d5608c1c7b3f0a7821a71900b7172847fb0907aa2899972663e 2fda311dbba27321c5329510fae6948f03210b76d43e7448d1689a063877b6d14c4f6d0eaa96c150051371f7dd8a4119f7da5c483cc3e6723c01fb7d,9ce89958cbddd8dcb22f66e8cba5f6091a51953189464803bdc773abc7faa906 95d1474a5aab5d2422aca6e481187833a6212bd2d0f91451a67dd786dfc91dfed51b35f47e1deb8a8ab4b9cb67b70179cc26f553ae7b569969ce151b8d,6da733817dc826e8da773beca7338131ab7396417104eda25970980c4eb2a15f c71bd7941f41df044a2927a8ff55b4b467c33d089f0988aa253d294addbdb32530c0d4208b10d9959823f0c0f0734684006df79f7099870f6bf53211a88d,66c9cdc8e8c6c9417d7ffbef3b54b702eee5f01a9bda8dd4e28fe3335debbb51 f57c64006d9ea761892e145c99df1b24640883da79d9ed5262859dcda8c3c32e05b03d984f1ab4a230242ab6b78d368dc5aaa1e6d3498d53371e84b0c1d4ba,24ab37a93674ccb1ceec9e5681efc8bdf9fcc7721cf1cac175e0b20e461575b8 e926ae8b0af6e53176dbffcc2a6b88c6bd765f939d3d178a9bde9ef3aa131c61e31c1e42cdfaf4b4dcde579a37e150efbef5555b4c1cb40439d835a724e2fae7,574271cd13959e8ddeae5bfbdb02a3fdf54f2babfd0cbeb893082a974957d0c1 16e8b3d8f988e9bb04de9c96f2627811c973ce4a5296b4772ca3eefeb80a652bdf21f50df79f32db23f9f73d393b2d57d9a0297f7a2f2e79cfda39fa393df1ac00,1947e901fa59ea789845775f2a4db9b4848f8a776073d53d84cbd5d927a96bff fc424eeb27c18a11c01f39c555d8b78a805b88dba1dc2a42ed5e2c0ec737ff68b2456d80eb85e11714fa3f8eabfb906d3c17964cb4f5e76b29c1765db03d91be37fc,0c1b8c1af237e9c5501b50316a80865aac08a34acf4f8bedd4a2d6e7b7bcbb85 abe3472b54e72734bdba7d9158736464251c4f21b33fbbc92d7fac9a35c4e3322ff01d2380cbaa4ef8fb07d21a2128b7b9f5b6d9f34e13f39c7ffc2e72e47888599ba5,c4315666c71fea834d8ff27f025f5cc34f37c1aae78604a4b08dac45decd42be 36f9f0a65f2ca498d739b944d6eff3da5ebba57e7d9c41598a2b0e4380f3cf4b479ec2348d015ffe6256273511154afcf3b4b4bf09d6c4744fdd0f62d75079d440706b05,5ff8734db3f9977eee9cf5e2cf725c57af09926490c55abd9d00a42e91a8c344 abc87763cae1ca98bd8c5b82caba54ac83286f87e9610128ae4de68ac95df5e329c360717bd349f26b872528492ca7c94c2c1e1ef56b74dbb65c2ac351981fdb31d06c77a4,1e141a171cab085252ea4c2f8f1f1087dd85a75ab3acd0b3c28eaa5735d349af 94f7ca8e1a54234c6d53cc734bb3d3150c8ba8c5f880eab8d25fed13793a9701ebe320509286fd8e422e931d99c98da4df7e70ae447bab8cffd92382d8a77760a259fc4fbd72,ef763f22f359dd7f5b3fe6a745c423d6b641ec07ba5235232a0701510f74426e 13bd2811f6ed2b6f04ff3895aceed7bef8dcd45eb121791bc194a0f806206bffc3b9281c2b308b1a729ce008119dd3066e9378acdcc50a98a82e20738800b6cddbe5fe9694ad6d,6a769f93f255b078fe73aff68f0422a279939920e4690b4aff0e433cfa3d3df3 1eed9cba179a009ec2ec5508773dd305477ca117e6d569e66b5f64c6bc64801ce25a8424ce4a26d575b8a6fb10ead3fd1992edddeec2ebe7150dc98f63adc3237ef57b91397aa8a7,c06dd4261638c44afcb186f0af5de20ea53aa63316fbb71728f874ff3daceb0d ba5b67b5ec3a3ffae2c19dd8176a2ef75c0cd903725d45c9cb7009a900c0b0ca7a2967a95ae68269a6dbf8466c7b6844a1d608ac661f7eff00538e323db5f2c644b78b2d48de1a08aa,b5d84b1809e83b5e75aa53bdee79e3a97f3fe3a7d3162ebd4908240ff69131d8 0efa26ac5673167dcacab860932ed612f65ff49b80fa9ae65465e5542cb62075df1c5ae54fba4db807be25b070033efa223bdd5b1d3c94c6e1909c02b620d4b1b3a6c9fed24d70749604,cad7abb5bba5905b5181dd2dbc4e68cfd01ba8659f21c8290d3f835c1a68bbe5 bbfd933d1fd7bf594ac7f435277dc17d8d5a5b8e4d13d96d2f64e771abbd51a5a8aea741beccbddb177bcea05243ebd003cfdeae877cca4da94605b67691919d8b033f77d384ca01593c1b,83ca09c1f418b5dad0a7f64a904a2e07c3314f7d02d92622f8f4674bc1f6aa3d 90078999fd3c35b8afbf4066cbde335891365f0fc75c1286cdd88fa51fab94f9b8def7c9ac582a5dbcd95817afb7d1b48f63704e19c2baa4df347f48d4a6d603013c23f1e9611d595ebac37c,330de3ee16aef6711461a994863eed47af71b362d4c2f243534ef432f63a091a 64105eca863515c20e7cfbaa0a0b8809046164f374d691cdbd6508aaabc1819f9ac84b52bafc1b0fe7cddbc554b608c01c8904c669d8db316a0953a4c68ece324ec5a49ffdb59a1bd6a292aa0e,b5675197e49b357218f7118cd15ee773b39bd59b224d9a45ca71c6e371d938f1 d4654be288b9f3b711c2d02015978a8cc57471d5680a092aa534f7372c71ceaab725a383c4fcf4d8deaa57fca3ce056f312961eccf9b86f14981ba5bed6ab5b4498e1f6c82c6cae6fc14845b3c8a,cd9038c1066a59990df5752107b066eebbe672cbca0f60d687d03a9d821934be 12d9394888305ac96e65f2bf0e1b18c29c90fe9d714dd59f651f52b88b3008c588435548066ea2fc4c101118c91f32556224a540de6efddbca296ef1fb00341f5b01fecfc146bdb251b3bdad556cd2,d3172ca263aff2b9db6fb13337f2543c5af51151801a76194012f710306c14f6 871a0d7a5f36c3da1dfce57acd8ab8487c274fad336bc137ebd6ff4658b547c1dcfab65f037aa58f35ef16aff4abe77ba61f65826f7be681b5b6d5a1ea8085e2ae9cd5cf0991878a311b549a6d6af230,9e3d4bcf580eece39bcf13e5716e5bb8f5e8c3fc3723f66246f836d8db1238f1 e90b4ffef4d457bc7711ff4aa72231ca25af6b2e206f8bf859d8758b89a7cd36105db2538d06da83bad5f663ba11a5f6f61f236fd5f8d53c5e89f183a3cec615b50c7c681e773d109ff7491b5cc22296c5,edc2d3b49c85b8dd75f7b5128da04cd76bf4878779a0077af3f1d7fb44f18931 e728de62d75856500c4c77a428612cd804f30c3f10d36fb219c5ca0aa30726ab190e5f3f279e0733d77e7267c17be27d21650a9a4d1e32f649627638dbada9702c7ca303269ed14014b2f3cf8b894eac8554,80dce7f04dd6ac17ce709b56cf6ea6c0a57190649bb187b5e6d95fa18100c7ac 6348f229e7b1df3b770c77544e5166e081850fa1c6c88169db74c76e42eb983facb276ad6a0d1fa7b50d3e3b6fcd799ec97470920a7abed47d288ff883e24ca21c7f8016b93bb9b9e078bdb9703d2b781b616e,49bbd5435d2706f85fe77b84a5fa15ddd8259e5d2c20fb947f139373e5c86121 4b127fde5de733a1680c2790363627e63ac8a3f1b4707d982caea258655d9bf18f89afe54127482ba01e08845594b671306a025c9a5c5b6f93b0a39522dc877437be5c2436cbf300ce7ab6747934fcfc30aeaaf6,6b6c11f9731d60789d713daf53d2eb10ab9ccf15430ea5d1249be06edfe2bff6 08461f006cff4cc64b752c957287e5a0faabc05c9bff89d23fd902d324c79903b48fcb8f8f4b01f3e4ddb483593d25f000386698f5ade7faade9615fdc50d32785ea51d49894e45baa3dc707e224688c6408b68b11,7e738e8eb3d47d18e97d87c7b3fc681f86417883ced92ba93c3077812bbd17e7 68c8f8849b120e6e0c9969a5866af591a829b92f33cd9a4a3196957a148c49138e1e2f5c7619a6d5edebe995acd81ec8bb9c7b9cfca678d081ea9e25a75d39db04e18d475920ce828b94e72241f24db72546b352a0e4,a278ba93ba0d7cd2677be08c9dfc5f516a37f722bb06565fa22500f66fe031a9 b8d56472954e31fb54e28fca743f84d8dc34891cb564c64b08f7b71636debd64ca1edbdba7fc5c3e40049ce982bba8c7e0703034e331384695e9de76b5104f2fbc4535ecbeebc33bc27f29f18f6f27e8023b0fbb6f563c,9c0a9f0da113d39f491b7da6c4da5d84fe1cc46367e5acc433ca3e0500951738 0d58ac665fa84342e60cefee31b1a4eacdb092f122dfc68309077aed1f3e528f578859ee9e4cefb4a728e946324927b675cd4f4ac84f64db3dacfe850c1dd18744c74ceccd9fe4dc214085108f404eab6d8f452b5442a47d,6bed496d02fe4cc27d96dceed14a67da7bdf75e19b624896dff6b0b68e4fcc12 1755e2d2e5d1c1b0156456b539753ff416651d44698e87002dcf61dcfa2b4e72f264d9ad591df1fdee7b41b2eb00283c5aebb3411323b672eaa145c5125185104f20f335804b02325b6dea65603f349f4d5d8b782dd3469ccd,ecd2e3faf4ba4dd67e5a8656cebebdb24611611678e92eb60f7cbd3111d0a345 b180de1a611111ee7584ba2c4b020598cd574ac77e404e853d15a101c6f5a2e5c801d7d85dc95286a1804c870bb9f00fd4dcb03aa8328275158819dcad7253f3e3d237aeaa7979268a5db1c6ce08a9ec7c2579783c8afc1f91a7,634a95a7e8ba58f7818a13903ec8f3411b6ecb7e389ec9aa97c0ecf87fadd588 cf3583cbdfd4cbc17063b1e7d90b02f0e6e2ee05f99d77e24e560392535e47e05077157f96813544a17046914f9efb64762a23cf7a49fe52a0a4c01c630cfe8727b81fb99a89ff7cc11dca5173057e0417b8fe7a9efba6d95c555f,a0fe352ba2389b0430edbe1201032eb09c255514c5c5b529c4baafceb1ac9817 072fc02340ef99115bad72f92c01e4c093b9599f6cfc45cb380ee686cb5eb019e806ab9bd55e634ab10aa62a9510cc0672cd3eddb589c7df2b67fcd3329f61b1a4441eca87a33c8f55da4fbbad5cf2b2527b8e983bb31a2fadec7523,9a0bfe14f9f3127aca86773a620945731df781a6d7dc82930ccde2f69dac8f94 76eecf956a52649f877528146de33df249cd800e21830f65e90f0f25ca9d6540fde40603230eca6760f1139c7f268deba2060631eea92b1fff05f93fd5572fbe29579ecd48bc3a8d6c2eb4a6b26e38d6c5fbf2c08044aeea470a8f2f26,19e5101bde60b200a8b171e4c3ea3dfd913e10111d96f9682acc7467282b4e31 7adc0b6693e61c269f278e6944a5a2d8300981e40022f839ac644387bfac9086650085c2cdc585fea47b9d2e52d65a2b29a7dc370401ef5d60dd0d21f9e2b90fae919319b14b8c5565b0423cefb827d5f1203302a9d01523498a4db10374,4cc2aff141987f4c2e683fa2de30042bacdcd06087d7a7b014996e9cfeaa58ce e1fffa9826cce8b86bccefb8794e48c46cdf372013f782eced1e378269b7be2b7bf51374092261ae120e822be685f2e7a83664bcfbe38fe8633f24e633ffe1988e1bc5acf59a587079a57a910bda60060e85b5f5b6f776f0529639d9cce4bd,9a8ce819894efccc2153b239c3adc3f07d0968eac5ec8080ac0174f2d5e6959c 69f9abba65592ee01db4dce52dbab90b08fc04193602792ee4daa263033d59081587b09bbe49d0b49c9825d22840b2ff5d9c5155f975f8f2c2e7a90c75d2e4a8040fe39f63bbafb403d9e28cc3b86e04e394a9c9e8065bd3c85fa9f0c7891600,8b35768525f59ac77d35522ac885831a9947299e114a8956fe5bca103db7bb2c 38a10a352ca5aedfa8e19c64787d8e9c3a75dbf3b8674bfab29b5dbfc15a63d10fae66cd1a6e6d2452d557967eaad89a4c98449787b0b3164ca5b717a93f24eb0b506ceb70cbbcb8d72b2a72993f909aad92f044e0b5a2c9ac9cb16a0ca2f81f49,955f1f7e4e54660b26f30086f2dddaedd32813547c1b95d305d882682b4ff7a0 6d8c6e449bc13634f115749c248c17cd148b72157a2c37bf8969ea83b4d6ba8c0ee2711c28ee11495f43049596520ce436004b026b6c1f7292b9c436b055cbb72d530d860d1276a1502a5140e3c3f54a93663e4d20edec32d284e25564f624955b52,8fac5a34ebafa38b55333624a9514fe97d9956e74309c5252cd2090d3bbe2f9e 6efcbcaf451c129dbe00b9cef0c3749d3ee9d41c7bd500ade40cdc65dedbbbadb885a5b14b32a0c0d087825201e303288a733842fa7e599c0c514e078f05c821c7a4498b01c40032e9f1872a1c925fa17ce253e8935e4c3c71282242cb716b2089ccc1,62039e0f53869480f88c87bb3d19a31aad32878f27f2c4e78ff02bbea2b8b0b9 433c5303131624c0021d868a30825475e8d0bd3052a022180398f4ca4423b98214b6beaac21c8807a2c33f8c93bd42b092cc1b06cedf3224d5ed1ec29784444f22e08a55aa58542b524b02cd3d5d5f6907afe71c5d7462224a3f9d9e53e7e0846dcbb4ce,ce87a5173bffd92399221658f801d45c294d9006ee9f3f9d419c8d427748dc41 a873e0c67ca639026b6683008f7aa6324d4979550e9bce064ca1e1fb97a30b147a24f3f666c0a72d71348ede701cf2d17e2253c34d1ec3b647dbcef2f879f4eb881c4830b791378c901eb725ea5c172316c6d606e0af7df4df7f76e490cd30b2badf45685f,2ef8907b60108638e50eac535cc46ca02e04581ddb4235fbac5cb5c53583e24b 006917b64f9dcdf1d2d87c8a6173b64f6587168e80faa80f82d84f60301e561e312d9fbce62f39a6fb476e01e925f26bcc91de621449be6504c504830aae394096c8fc7694651051365d4ee9070101ec9b68086f2ea8f8ab7b811ea8ad934d5c9b62c60a4771,be8b5bd36518e9c5f4c768fc02461bb3d39a5d00edef82cec7df351df80238e0 f13c972c52cb3cc4a4df28c97f2df11ce089b815466be88863243eb318c2adb1a417cb1041308598541720197b9b1cb5ba2318bd5574d1df2174af14884149ba9b2f446d609df240ce335599957b8ec80876d9a085ae084907bc5961b20bf5f6ca58d5dab38adb,52cbc5dbe49b009663c43f079dd180e38a77533778062a72a29e864a58522922 e35780eb9799ad4c77535d4ddb683cf33ef367715327cf4c4a58ed9cbdcdd486f669f80189d549a9364fa82a51a52654ec721bb3aab95dceb4a86a6afa93826db923517e928f33e3fba850d45660ef83b9876accafa2a9987a254b137c6e140a21691e1069413848,3a8dfcfd1b362003ddfa17910727539e64b18021abba018b5f58d71f7a449733 64ec021c9585e01ffe6d31bb50d44c79b6993d72678163db474947a053674619d158016adb243f5c8d50aa92f50ab36e579ff2dabb780a2b529370daa299207cfbcdd3a9a25006d19c4f1fe33e4b1eaec315d8c6ee1e730623fd1941875b924eb57d6d0c2edc4e78d6,fa221deee80e25e53c6c448aa22028b72501f07d1ff2c3fc7f93af9838b2d0a9 5954bab512cf327d66b5d9f296180080402624ad7628506b555eea8382562324cf452fba4a2130de3e165d11831a270d9cb97ce8c2d32a96f50d71600bb4ca268cf98e90d6496b0a6619a5a8c63db6d8a0634dfc6c7ec8ea9c006b6c456f1b20cd19e781af20454ac880,ed9c8b87fce27be4e95610db1ddd0c035847f4699dfc8c039a798a30343a6059 03d9f92b2c565709a568724a0aff90f8f347f43b02338f94a03ed32e6f33666ff5802da4c81bdce0d0e86c04afd4edc2fc8b4141c2975b6f07639b1994c973d9a9afce3d9d365862003498513bfa166d2629e314d97441667b007414e739d7febf0fe3c32c17aa188a8683,a485cc9cf4ca4f659f89a0b791a4423953424ac57146b879d385a9e4062afe52 f31e8b4f9e0621d531d22a380be5d9abd56faec53cbd39b1fab230ea67184440e5b1d15457bd25f56204fa917fa48e669016cb48c1ffc1e1e45274b3b47379e00a43843cf8601a5551411ec12503e5aac43d8676a1b2297ec7a0800dbfee04292e937f21c005f17411473041,93cd4369a7796239a5cdf78bce22ebb2137a631c3a613d5e35816d2a64a34947 758ea3fea738973db0b8be7e599bbef4519373d6e6dcd7195ea885fc991d896762992759c2a09002912fb08e0cb5b76f49162aeb8cf87b172cf3ad190253df612f77b1f0c532e3b5fc99c2d31f8f65011695a087a35ee4eee5e334c369d8ee5d29f695815d866da99df3f79403,3751ce08750d927eb5c3ae4ca62a703a481d86a4fa1c011e812b4bc0a2fef08d 47c6e0c2b74948465921868804f0f7bd50dd323583dc784f998a93cd1ca4c6ef84d41dc81c2c40f34b5bee6a93867b3bdba0052c5f59e6f3657918c382e771d33109122cc8bb0e1e53c4e3d13b43ce44970f5e0c079d2ad7d7a3549cd75760c21bb15b447589e86e8d76b1e9ced2,a88c7ef7b89b7b6f75d83922b8fd00f034d719f97c67884121434447ae9dd3b9 f690a132ab46b28edfa6479283d6444e371c6459108afd9c35dbd235e0b6b6ff4c4ea58e7554bd002460433b2164ca51e868f7947d7d7a0d792e4abf0be5f450853cc40d85485b2b8857ea31b5ea6e4ccfa2f3a7ef3380066d7d8979fdac618aad3d7e886dea4f005ae4ad05e5065f,2b4f8f9ef7d6ed60bb4881e635e0f887a51b0c1a42bab077976b43d2c715e11a 58d6a99bc6458824b256916770a8417040721cccfd4b79eacd8b65a3767ce5ba7e74104c985ac56b8cc9aebd16febd4cda5adb130b0ff2329cc8d611eb14dac268a2f9e633c99de33997fea41c52a7c5e1317d5b5daed35eba7d5a60e45d1fa7eaabc35f5c2b0a0f2379231953322c4e,586cffdc434313cc4e133e85ac88b3e5dea71818abcac236f0aae418f72b6cde befab574396d7f8b6705e2d5b58b2c1c820bb24e3f4bae3e8fbcd36dbf734ee14e5d6ab972aedd3540235466e825850ee4c512ea9795abfd33f330d9fd7f79e62bbb63a6ea85de15beaeea6f8d204a28956059e2632d11861dfb0e65bc07ac8a159388d5c3277e227286f65ff5e5b5aec1,52d14ab96b24aa4a7a55721aa8550b1fccac3653c78234783f7295ae5f39a17a 8e58144fa9179d686478622ce450c748260c95d1ba43b8f9b59abeca8d93488da73463ef40198b4d16fb0b0707201347e0506ff19d01bea0f42b8af9e71a1f1bd168781069d4d338fdef00bf419fbb003031df671f4a37979564f69282de9c65407847dd0da505ab1641c02dea4f0d834986,b6345edd966030cf70dfb5b7552bc141c42efe7a7e84f957b1baf4671bae4354 b55c10eae0ec684c16d13463f29291bf26c82e2fa0422a99c71db4af14dd9c7f33eda52fd73d017cc0f2dbe734d831f0d820d06d5f89dacc485739144f8cfd4799223b1aff9031a105cb6a029ba71e6e5867d85a554991c38df3c9ef8c1e1e9a7630be61caabca69280c399c1fb7a12d12aefc,0347901965d3635005e75a1095695cca050bc9ed2d440c0372a31b348514a889 2eeea693f585f4ed6f6f8865bbae47a6908aecd7c429e4bec4f0de1d0ca0183fa201a0cb14a529b7d7ac0e6ff6607a3243ee9fb11bcf3e2304fe75ffcddd6c5c2e2a4cd45f63c962d010645058d36571404a6d2b4f44755434d76998e83409c3205aa1615db44057db991231d2cb42624574f545,f0bf7105870f2382b76863bb97aee79f95ae0e8142675bbccdb3475b0c99352f dab11dc0b047db0420a585f56c42d93175562852428499f66a0db811fcdddab2f7cdffed1543e5fb72110b64686bc7b6887a538ad44c050f1e42631bc4ec8a9f2a047163d822a38989ee4aab01b4c1f161b062d873b1cfa388fd301514f62224157b9bef423c7783b7aac8d30d65cd1bba8d689c2d,631c6f5abe50b27c9dea557fc3fbd3fb25781fcb1bbf9f2e010cca20ec52dbc4 42e99a2f80aee0e001279a2434f731e01d34a44b1a8101726921c0590c30f3120eb83059f325e894a5ac959dca71ce2214799916424e859d27d789437b9d27240bf8c35adbafcecc322b48aa205b293962d858652abacbd588bcf6cbc388d0993bd622f96ed54614c25b6a9aa527589eaaffcf17ddf7,3757a53d195b43b403a796a74aafb2064072a69e372ee5b36cc2b7a791f75c9f 3c9b46450c0f2cae8e3823f8bdb4277f31b744ce2eb17054bddc6dff36af7f49fb8a2320cc3bdf8e0a2ea29ad3a55de1165d219adeddb5175253e2d1489e9b6fdd02e2c3d3a4b54d60e3a47334c37913c5695378a669e9b72dec32af5434f93f46176ebf044c4784467c700470d0c0b40c8a088c815816,0cc903acbced724b221d34877d1d1427182f9493a33df7758720e8bfc7af98ee d1e654b77cb155f5c77971a64df9e5d34c26a3cad6c7f6b300d39deb1910094691adaa095be4ba5d86690a976428635d5526f3e946f7dc3bd4dbc78999e653441187a81f9adcd5a3c5f254bc8256b0158f54673dcc1232f6e918ebfc6c51ce67eaeb042d9f57eec4bfe910e169af78b3de48d137df4f2840,f23750c32973f24c2422f4e2b43589d9e76d6a575938e01a96ae8e73d026569c 626f68c18a69a6590159a9c46be03d5965698f2dac3de779b878b3d9c421e0f21b955a16c715c1ec1e22ce3eb645b8b4f263f60660ea3028981eebd6c8c3a367285b691c8ee56944a7cd1217997e1d9c21620b536bdbd5de8925ff71dec6fbc06624ab6b21e329813de90d1e572dfb89a18120c3f606355d25,1ece87e44a99f59d26411418fb8793689ff8a9c6ef75599056087d8c995bce1e 651a6fb3c4b80c7c68c6011675e6094eb56abf5fc3057324ebc6477825061f9f27e7a94633abd1fa598a746e4a577caf524c52ec1788471f92b8c37f23795ca19d559d446cab16cbcdce90b79fa1026cee77bf4ab1b503c5b94c2256ad75b3eac6fd5dcb96aca4b03a834bfb4e9af988cecbf2ae597cb9097940,71b4f90ac9215d7474b1197d1b8b24449fd57e9b05483d32edbebcb21a82f866 8aaf072fce8a2d96bc10b3c91c809ee93072fb205ca7f10abd82ecd82cf040b1bc49ea13d1857815c0e99781de3adbb5443ce1c897e55188ceaf221aa9681638de05ae1b322938f46bce51543b57ecdb4c266272259d1798de13be90e10efec2d07484d9b21a3870e2aa9e06c21aa2d0c9cf420080a80a91dee16f,3b3678bb116fadab484291f0cf972606523501f5b45d51063797972928e333c0 53f918fd00b1701bd504f8cdea803acca21ac18c564ab90c2a17da592c7d69688f6580575395551e8cd33e0fef08ca6ed4588d4d140b3e44c032355df1c531564d7f4835753344345a6781e11cd5e095b73df5f82c8ae3ad00877936896671e947cc52e2b29dcd463d90a0c9929128da222b5a211450bbc0e02448e2,4068246495f508897813332962d3ae0b84685045e832a9a39ad5e94c154d2679 a64599b8a61b5ccec9e67aed69447459c8da3d1ec6c7c7c82a7428b9b584fa67e90f68e2c00fbbed4613666e5168da4a16f395f7a3c3832b3b134bfc9cbaa95d2a0fe252f44ac6681eb6d40ab91c1d0282fed6701c57463d3c5f2bb8c6a7301fb4576aa3b5f15510db8956ff77478c26a7c09bea7b398cfc83503f538e,82696259536520e5e4d47e106bd1dcb397529aafb75878f332d2af2684493f1b 0e3ab0e054739b00cdb6a87bd12cae024b54cb5e550e6c425360c2e87e59401f5ec24ef0314855f0f56c47695d56a7fb1417693af2a1ed5291f2fee95f75eed54a1b1c2e81226fbff6f63ade584911c71967a8eb70933bc3f5d15bc91b5c2644d9516d3c3a8c154ee48e118bd1442c043c7a0dba5ac5b1d5360aae5b9065,b494852603393b2b71845bacbdce89fa1427dfe4af9cdf925d4f93fa83b9966b a62fc595b4096e6336e53fcdfc8d1cc175d71dac9d750a6133d23199eaac288207944cea6b16d27631915b4619f743da2e30a0c00bbdb1bbb35ab852ef3b9aec6b0a8dcc6e9e1abaa3ad62ac0a6c5de765de2c3711b769e3fde44a74016fff82ac46fa8f1797d3b2a726b696e3dea5530439acee3a45c2a51bc32dd055650b,d8a619c0dfbed2a9498a147b53d7b33dd653d390e5c0cd691f02c8608822d06a 2b6db7ced8665ebe9deb080295218426bdaa7c6da9add2088932cdffbaa1c14129bccdd70f369efb149285858d2b1d155d14de2fdb680a8b027284055182a0cae275234cc9c92863c1b4ab66f304cf0621cd54565f5bff461d3b461bd40df28198e3732501b4860eadd503d26d6e69338f4e0456e9e9baf3d827ae685fb1d817,d82e257d000dc9fa279a00e2961e3286d2fe1c02ef59833ab8a6a7101bc25054 10db509b2cdcaba6c062ae33be48116a29eb18e390e1bbada5ca0a2718afbcd23431440106594893043cc7f2625281bf7de2655880966a23705f0c5155c2f5cca9f2c2142e96d0a2e763b70686cd421b5db812daced0c6d65035fde558e94f26b3e6dde5bd13980cc80292b723013bd033284584bff27657871b0cf07a849f4ae2,8d5b7dbf3947219acdb04fb2e11a84a313c54c22f2ae858dfc8887bf6265f5f3 9334de60c997bda6086101a6314f64e4458f5ff9450c509df006e8c547983c651ca97879175aaba0c539e82d05c1e02c480975cbb30118121061b1ebac4f8d9a3781e2db6b18042e01ecf9017a64a0e57447ec7fcbe6a7f82585f7403ee2223d52d37b4bf426428613d6b4257980972a0acab508a7620c1cb28eb4e9d30fc41361ec,607c3f31342c3ee5c93e552a8dd79fa86dccae2c1b58aabac25b5918acfa4da5 e88ab086891693aa535ceb20e64c7ab97c7dd3548f3786339897a5f0c39031549ca870166e477743ccfbe016b4428d89738e426f5ffe81626137f17aecff61b72dbee2dc20961880cfe281dfab5ee38b1921881450e16032de5e4d55ad8d4fca609721b0692bac79be5a06e177fe8c80c0c83519fb3347de9f43d5561cb8107b9b5edc,0656de9dcd7b7112a86c7ba199637d2c1c9e9cfbb713e4ede79f8862ee69993f fd19e01a83eb6ec810b94582cb8fbfa2fcb992b53684fb748d2264f020d3b960cb1d6b8c348c2b54a9fcea72330c2aaa9a24ecdb00c436abc702361a82bb8828b85369b8c72ece0082fe06557163899c2a0efa466c33c04343a839417057399a63a3929be1ee4805d6ce3e5d0d0967fe9004696a5663f4cac9179006a2ceb75542d75d68,4ddd6224858299f3378e3f5a0ecc52fa4c419c8ebb20f635c4c43f36324ecb4e 59ae20b6f7e0b3c7a989afb28324a40fca25d8651cf1f46ae383ef6d8441587aa1c04c3e3bf88e8131ce6145cfb8973d961e8432b202fa5af3e09d625faad825bc19da9b5c6c20d02abda2fcc58b5bd3fe507bf201263f30543819510c12bc23e2ddb4f711d087a86edb1b355313363a2de996b891025e147036087401ccf3ca7815bf3c49,ec096314e2f73b6a7027fffa02104c2f6dd187f20c743445befd4b5c034b3295 77ee804b9f3295ab2362798b72b0a1b2d3291dceb8139896355830f34b3b328561531f8079b79a6e9980705150866402fdc176c05897e359a6cb1a7ab067383eb497182a7e5aef7038e4c96d133b2782917417e391535b5e1b51f47d8ed7e4d4025fe98dc87b9c1622614bff3d1029e68e372de719803857ca52067cddaad958951cb2068cc6,fe71d01c2ee50e054d6b07147ef62954fde7e6959d6eeba68e3c94107eb0084d b771d5cef5d1a41a93d15643d7181d2a2ef0a8e84d91812f20ed21f147bef732bf3a60ef4067c3734b85bc8cd471780f10dc9e8291b58339a677b960218f71e793f2797aea349406512829065d37bb55ea796fa4f56fd8896b49b2cd19b43215ad967c712b24e5032d065232e02c127409d2ed4146b9d75d763d52db98d949d3b0fed6a8052fbb,bd6f5492582a7c1b116304de28314df9fffe95b0da11af52fe9440a717a34859 b32d95b0b9aad2a8816de6d06d1f86008505bd8c14124f6e9a163b5a2ade55f835d0ec3880ef50700d3b25e42cc0af050ccd1be5e555b23087e04d7bf9813622780c7313a1954f8740b6ee2d3f71f768dd417f520482bd3a08d4f222b4ee9dbd015447b33507dd50f3ab4247c5de9a8abd62a8decea01e3b87c8b927f5b08beb37674c6f8e380c04,e717a7769448abbe5fef8187954a88ac56ded1d22e63940ab80d029585a21921 04410e31082a47584b406f051398a6abe74e4da59bb6f85e6b49e8a1f7f2ca00dfba5462c2cd2bfde8b64fb21d70c083f11318b56a52d03b81cac5eec29eb31bd0078b6156786da3d6d8c33098c5c47bb67ac64db14165af65b44544d806dde5f487d5373c7f9792c299e9686b7e5821e7c8e2458315b996b5677d926dac57b3f22da873c601016a0d,a95d50b50b4545f0947441df74a1e9d74622eb3baa49c1bbfc3a0cce6619c1aa 8b81e9badde026f14d95c019977024c9e13db7a5cd21f9e9fc491d716164bbacdc7060d882615d411438aea056c340cdf977788f6e17d118de55026855f93270472d1fd18b9e7e812bae107e0dfde7063301b71f6cfe4e225cab3b232905a56e994f08ee2891ba922d49c3dafeb75f7c69750cb67d822c96176c46bd8a29f1701373fb09a1a6e3c7158f,ed53d72595ace3a6d5166a4ede41cce362d644bded772be616b87bcf678a6364 fa6eed24da6666a22208146b19a532c2ec9ba94f09f1def1e7fc13c399a48e41acc2a589d099276296348f396253b57cb0e40291bd282773656b6e0d8bea1cda084a3738816a840485fcf3fb307f777fa5feac48695c2af4769720258c77943fb4556c362d9cba8bf103aeb9034baa8ea8bfb9c4f8e6742ce0d52c49ea8e974f339612e830e9e7a9c29065,810401b247c23529e24655cab86c42df44085da76ca01c9a14618e563b7c41be 9bb4af1b4f09c071ce3cafa92e4eb73ce8a6f5d82a85733440368dee4eb1cbc7b55ac150773b6fe47dbe036c45582ed67e23f4c74585dab509df1b83610564545642b2b1ec463e18048fc23477c6b2aa035594ecd33791af6af4cbc2a1166aba8d628c57e707f0b0e8707caf91cd44bdb915e0296e0190d56d33d8dde10b5b60377838973c1d943c22ed335e,9f01e63f2355393ecb1908d0caf39718833004a4bf37ebf4cf8d7319b65172df 2167f02118cc62043e9091a647cadbed95611a521fe0d64e8518f16c808ab297725598ae296880a773607a798f7c3cfce80d251ebec6885015f9abf7eaabae46798f82cb5926de5c23f44a3f9f9534b3c6f405b5364c2f8a8bdc5ca49c749bed8ce4ba48897062ae8424ca6dde5f55c0e42a95d1e292ca54fb46a84fbc9cd87f2d0c9e7448de3043ae22fdd229,7ec11de7db790a850281f043592779b409195db4ecedeefbb93ba683d3bca851 94b7fa0bc1c44e949b1d7617d31b4720cbe7ca57c6fa4f4094d4761567e389ecc64f6968e4064df70df836a47d0c713336b5028b35930d29eb7a7f9a5af9ad5cf441745baec9bb014ceeff5a41ba5c1ce085feb980bab9cf79f2158e03ef7e63e29c38d7816a84d4f71e0f548b7fc316085ae38a060ff9b8dec36f91ad9ebc0a5b6c338cbb8f6659d342a24368cf,a74af9c523b4a08d9db9692ea89255977a5919b9292b7cd0d92c90c97c98e224 ea40e83cb18b3a242c1ecc6ccd0b7853a439dab2c569cfc6dc38a19f5c90acbf76aef9ea3742ff3b54ef7d36eb7ce4ff1c9ab3bc119cff6be93c03e208783335c0ab8137be5b10cdc66ff3f89a1bddc6a1eed74f504cbe7290690bb295a872b9e3fe2cee9e6c67c41db8efd7d863cf10f840fe618e7936da3dca5ca6df933f24f6954ba0801a1294cd8d7e66dfafec,344d129c228359463c40555d94213d015627e5871c04f106a0feef9361cdecb6 157d5b7e4507f66d9a267476d33831e7bb768d4d04cc3438da12f9010263ea5fcafbde2579db2f6b58f911d593d5f79fb05fe3596e3fa80ff2f761d1b0e57080055c118c53e53cdb63055261d7c9b2b39bd90acc32520cbbdbda2c4fd8856dbcee173132a2679198daf83007a9b5c51511ae49766c792a29520388444ebefe28256fb33d4260439cba73a9479ee00c63,4ce7c2b935f21fc34c5e56d940a555c593872aec2f896de4e68f2a017060f535 836b34b515476f613fe447a4e0c3f3b8f20910ac89a3977055c960d2d5d2b72bd8acc715a9035321b86703a411dde0466d58a59769672aa60ad587b8481de4bba552a1645779789501ec53d540b904821f32b0bd1855b04e4848f9f8cfe9ebd8911be95781a759d7ad9724a7102dbe576776b7c632bc39b9b5e19057e226552a5994c1dbb3b5c7871a11f5537011044c53,24b69d8ab35baccbd92f94e1b70b07c4c0ecf14eaeac4b6b8560966d5be086f3 cc7784a4912a7ab5ad3620aab29ba87077cd3cb83636adc9f3dc94f51edf521b2161ef108f21a0a298557981c0e53ce6ced45bdf782c1ef200d29bab81dd6460586964edab7cebdbbec75fd7925060f7da2b853b2b089588fa0f8c16ec6498b14c55dcee335cb3a91d698e4d393ab8e8eac0825f8adebeee196df41205c011674e53426caa453f8de1cbb57932b0b741d4c6,19f34215373e8e80f686953e03ca472b50216719cb515e0667d4e686e45fcf7c 7639b461fff270b2455ac1d1afce782944aea5e9087eb4a39eb96bb5c3baaf0e868c8526d3404f9405e79e77bfac5ffb89bf1957b523e17d341d7323c302ea7083872dd5e8705694acdda36d5a1b895aaa16eca6104c82688532c8bfe1790b5dc9f4ec5fe95baed37e1d287be710431f1e5e8ee105bc42ed37d74b1e55984bf1c09fe6a1fa13ef3b96faeaed6a2a1950a12153,290bd4808e5676eb0c978084e4cd68e745031659a26807ad615b10cda589b969 eb6513fc61b30cfba58d4d7e80f94d14589090cf1d80b1df2e68088dc6104959ba0d583d585e9578ab0aec0cf36c48435eb52ed9ab4bbce7a5abe679c97ae2dbe35e8cc1d45b06dda3cf418665c57cbee4bbb47fa4caf78f4ee656fec237fe4eebbafa206e1ef2bd0ee4ae71bd0e9b2f54f91daadf1febfd7032381d636b733dcb3bf76fb14e23aff1f68ed3dbcf75c9b99c6f26,70999ab9818309afa8f1adc4fea47a071a8abd94012f7ce28cc794a0d997c5cb 1594d74bf5dde444265d4c04dad9721ff3e34cbf622daf341fe16b96431f6c4df1f760d34f296eb97d98d560ad5286fec4dce1724f20b54fd7df51d4bf137add656c80546fb1bf516d62ee82baa992910ef4cc18b70f3f8698276fcfb44e0ec546c2c39cfd8ee91034ff9303058b4252462f86c823eb15bf481e6b79cc3a02218595b3658e8b37382bd5048eaed5fd02c37944e73b,83120033b0140fe3e3e1cbfebff323abc08535c0aa017803f5d2f4ecb35f5dfb 4cfa1278903026f66fedd41374558be1b585d03c5c55dac94361df286d4bd39c7cb8037ed3b267b07c346626449d0cc5b0dd2cf221f7e4c3449a4be99985d2d5e67bff2923357ddeab5abcb4619f3a3a57b2cf928a022eb27676c6cf805689004fca4d41ea6c2d0a4789c7605f7bb838dd883b3ad3e6027e775bcf262881428099c7fff95b14c095ea130e0b9938a5e22fc52650f591,5584bf3e93bc25945c508b9188d0502c6e755bbebabfc8cb907fa7a252ef464a d3e65cb92cfa79662f6af493d696a07ccf32aaadcceff06e73e8d9f6f909209e66715d6e978788c49efb9087b170ecf3aa86d2d4d1a065ae0efc8924f365d676b3cb9e2bec918fd96d0b43dee83727c9a93bf56ca2b2e59adba85696546a815067fc7a78039629d4948d157e7b0d826d1bf8e81237bab7321312fdaa4d521744f988db6fdf04549d0fdca393d639c729af716e9c8bba48,c234b252c21edb842634cc124da5bee8a4749cffba134723f7963b3a9729c0b4 842cc583504539622d7f71e7e31863a2b885c56a0ba62db4c2a3f2fd12e79660dc7205ca29a0dc0a87db4dc62ee47a41db36b9ddb3293b9ac4baae7df5c6e7201e17f717ab56e12cad476be49608ad2d50309e7d48d2d8de4fa58ac3cfeafeee48c0a9eec88498e3efc51f54d300d828dddccb9d0b06dd021a29cf5cb5b2506915beb8a11998b8b886e0f9b7a80e97d91a7d01270f9a7717,645f25456752091fffcaade806c34c79dffe72140c7c75d6a6ecfeedf6db401c 6c4b0a0719573e57248661e98febe326571f9a1ca813d3638531ae28b4860f23c3a3a8ac1c250034a660e2d71e16d3acc4bf9ce215c6f15b1c0fc7e77d3d27157e66da9ceec9258f8f2bf9e02b4ac93793dd6e29e307ede3695a0df63cbdc0fc66fb770813eb149ca2a916911bee4902c47c7802e69e405fe3c04ceb5522792a5503fa829f707272226621f7c488a7698c0d69aa561be9f378,2d7cac697e7410c1f7735dd691624a7d04fa51815858e8ba98b19b0ded0638b5 51b7dbb7ce2ffeb427a91ccfe5218fd40f9e0b7e24756d4c47cd55606008bdc27d16400933906fd9f30effdd4880022d081155342af3fb6cd53672ab7fb5b3a3bcbe47be1fd3a2278cae8a5fd61c1433f7d350675dd21803746cadca574130f01200024c6340ab0cc2cf74f2234669f34e9009ef2eb94823d62b31407f4ba46f1a1eec41641e84d77727b59e746b8a671bef936f05be820759fa,f664f626bc6b7a8cf03be429155ee1f5cd6ecf14816de49a5e229903f89a4dc6 83599d93f5561e821bd01a472386bc2ff4efbd4aed60d5821e84aae74d8071029810f5e286f8f17651cd27da07b1eb4382f754cd1c95268783ad09220f5502840370d494beb17124220f6afce91ec8a0f55231f9652433e5ce3489b727716cf4aeba7dcda20cd29aa9a859201253f948dd94395aba9e3852bd1d60dda7ae5dc045b283da006e1cbad83cc13292a315db5553305c628dd091146597,06425e83e4af817d735e9962c0cddce2cd40a087a6b0af3599719e415ab9a72a 2be9bf526c9d5a75d565dd11ef63b979d068659c7f026c08bea4af161d85a462d80e45040e91f4165c074c43ac661380311a8cbed59cc8e4c4518e80cd2c78ab1cabf66bff83eab3a80148550307310950d034a6286c93a1ece8929e6385c5e3bb6ea8a7c0fb6d6332e320e71cc4eb462a2a62e2bfe08f0ccad93e61bedb5dd0b786a728ab666f07e0576d189c92bf9fb20dca49ac2d3956d47385e2,e8c329149b075c459e11c8ac1e7e6acfa51ca981c89ec0768ed79d19f4e484fb ca76d3a12595a817682617006848675547d3e8f50c2210f9af906c0e7ce50b4460186fe70457a9e879e79fd4d1a688c70a347361c847ba0dd6aa52936eaf8e58a1be2f5c1c704e20146d366aeb3853bed9de9befe9569ac8aaea37a9fb7139a1a1a7d5c748605a8defb297869ebedd71d615a5da23496d11e11abbb126b206fa0a7797ee7de117986012d0362dcef775c2fe145ada6bda1ccb326bf644,c86768f6c349eb323bd82db19676e10bd8ae9f7057763556bbb6d0b671e60f2a f76b85dc67421025d64e93096d1d712b7baf7fb001716f02d33b2160c2c882c310ef13a576b1c2d30ef8f78ef8d2f465007109aad93f74cb9e7d7bef7c9590e8af3b267c89c15db238138c45833c98cc4a471a7802723ef4c744a853cf80a0c2568dd4ed58a2c9644806f42104cee53628e5bdf7b63b0b338e931e31b87c24b146c6d040605567ceef5960df9e022cb469d4c787f4cba3c544a1ac91f95f,d97f46f3b7edbfb16e52bfec7dba0815b94d46e4251e48a853eabdf876127714 25b8c9c032ea6bcd733ffc8718fbb2a503a4ea8f71dea1176189f694304f0ff68e862a8197b839957549ef243a5279fc2646bd4c009b6d1edebf24738197abb4c992f6b1dc9ba891f570879accd5a6b18691a93c7d0a8d38f95b639c1daeb48c4c2f15ccf5b9d508f8333c32de78781b41850f261b855c4bebcc125a380c54d501c5d3bd07e6b52102116088e53d76583b0161e2a58d0778f091206aabd5a1,51d08e00aaa252812d873357107616055b1b8c5fb2ac7917d0f901dfb01fac47 21cfdc2a7ccb7f331b3d2eefff37e48ad9fa9c788c3f3c200e0173d99963e1cbca93623b264e920394ae48bb4c3a5bb96ffbc8f0e53f30e22956adabc2765f57fb761e147ecbf8567533db6e50c8a1f894310a94edf806dd8ca6a0e141c0fa7c9fae6c6ae65f18c93a8529e6e5b553bf55f25be2e80a9882bd37f145fecbeb3d447a3c4e46c21524cc55cdd62f521ab92a8ba72b897996c49bb273198b7b1c9e,c6a188a6bdaca4dd7b1bc3e41019afe93473063f932c166e3242b7f52a3c6f8e 4e452ba42127dcc956ef4f8f35dd68cb225fb73b5bc7e1ec5a898bba2931563e74faff3b67314f241ec49f4a7061e3bd0213ae826bab380f1f14faab8b0efddd5fd1bb49373853a08f30553d5a55ccbbb8153de4704f29ca2bdeef0419468e05dd51557ccc80c0a96190bbcc4d77ecff21c66bdf486459d427f986410f883a80a5bcc32c20f0478bb9a97a126fc5f95451e40f292a4614930d054c851acd019ccf,2b31fbc565110110011ab2c8f6cc3da8fb55d41b1ae5e04310283f207d39682d fa85671df7dadf99a6ffee97a3ab9991671f5629195049880497487867a6c446b60087fac9a0f2fcc8e3b24e97e42345b93b5f7d3691829d3f8ccd4bb36411b85fc2328eb0c51cb3151f70860ad3246ce0623a8dc8b3c49f958f8690f8e3860e71eb2b1479a5cea0b3f8befd87acaf5362435eaeccb52f38617bc6c5c2c6e269ead1fbd69e941d4ad2012da2c5b21bcfbf98e4a77ab2af1f3fda3233f046d38f1dc8,1351f5dba46098b9a773381d85d52fad491b3a82af9107f173db81fb35ed91d2 e90847ae6797fbc0b6b36d6e588c0a743d725788ca50b6d792352ea8294f5ba654a15366b8e1b288d84f5178240827975a763bc45c7b0430e8a559df4488505e009c63da994f1403f407958203cebb6e37d89c94a5eacf6039a327f6c4dbbc7a2a307d976aa39e41af6537243fc218dfa6ab4dd817b6a397df5ca69107a9198799ed248641b63b42cb4c29bfdd7975ac96edfc274ac562d0474c60347a078ce4c25e88,dffc700f3e4d84d9131cbb1f98fb843dbafcb2ef94a52e89d204d431451a3331 f6d5c2b6c93954fc627602c00c4ca9a7d3ed12b27173f0b2c9b0e4a5939398a665e67e69d0b12fb7e4ceb253e8083d1ceb724ac07f009f094e42f2d6f2129489e846eaff0700a8d4453ef453a3eddc18f408c77a83275617fabc4ea3a2833aa73406c0e966276079d38e8e38539a70e194cc5513aaa457c699383fd1900b1e72bdfb835d1fd321b37ba80549b078a49ea08152869a918ca57f5b54ed71e4fd3ac5c06729,26726b52242ef8ecf4c66aed9c4b46bf6f5d87044a0b99d4e4af47dc360b9b0e cf8562b1bed89892d67ddaaf3deeb28246456e972326dbcdb5cf3fb289aca01e68da5d59896e3a6165358b071b304d6ab3d018944be5049d5e0e2bb819acf67a6006111089e6767132d72dd85beddcbb2d64496db0cc92955ab4c6234f1eea24f2d51483f2e209e4589bf9519fac51b4d061e801125e605f8093bb6997bc163d551596fe4ab7cfae8fb9a90f6980480ce0c229fd1675409bd788354daf316240cfe0af93eb,25e536315f08a40976adecb54756ebc0b224c38faf11509371b5a692a5269ab5 2ace31abb0a2e3267944d2f75e1559985db7354c6e605f18dc8470423fca30b7331d9b33c4a4326783d1caae1b4f07060eff978e4746bf0c7e30cd61040bd5ec2746b29863eb7f103ebda614c4291a805b6a4c8214230564a0557bc7102e0bd3ed23719252f7435d64d210ee2aafc585be903fa41e1968c50fd5d5367926df7a05e3a42cf07e656ff92de73b036cf8b19898c0cb34557c0c12c2d8b84e91181af467bc75a9d1,ab504592ad7184be83cc659efb5d3de88ba04b060b45d16a76f034080dde56c6 0d8d09aed19f1013969ce5e7eb92f83a209ae76be31c754844ea9116ceb39a22ebb6003017bbcf26555fa6624185187db8f0cb3564b8b1c06bf685d47f3286eda20b83358f599d2044bbf0583fab8d78f854fe0a596183230c5ef8e54426750eaf2cc4e29d3bdd037e734d863c2bd9789b4c243096138f7672c232314effdfc6513427e2da76916b5248933be312eb5dde4cf70804fb258ac5fb82d58d08177ac6f4756017fff5,5d8ee133ec441a3df50a5268a8f393f13f30f23f226ae3a18ec331844402ff54 c3236b73deb7662bf3f3daa58f137b358ba610560ef7455785a9befdb035a066e90704f929bd9689cef0ce3bda5acf4480bceb8d09d10b098ad8500d9b6071dfc3a14af6c77511d81e3aa8844986c3bea6f469f9e02194c92868cd5f51646256798ff0424954c1434bdfed9facb390b07d342e992936e0f88bfd0e884a0ddb679d0547ccdec6384285a45429d115ac7d235a717242021d1dc35641f5f0a48e8445dba58e6cb2c8ea,712b1cc04c009b52035cc44c9505bb5cb577ba0ad1734ec23620f57eef3d37fb b39feb8283eadc63e8184b51df5ae3fd41aac8a963bb0be1cd08aa5867d8d910c669221e73243360646f6553d1ca05a84e8dc0de05b6419ec349ca994480193d01c92525f3fb3dcefb08afc6d26947bdbbfd85193f53b50609c6140905c53a6686b58e53a319a57b962331ede98149af3de3118a819da4d76706a0424b4e1d2910b0ed26af61d150ebcb46595d4266a0bd7f651ba47d0c7f179ca28545007d92e8419d48fdfbd744ce,942e39e230a2251ffdb2f85202871c98597008401b322ff9840cc90cc85b337d a983d54f503803e8c7999f4edbbe82e9084f422143a932ddddc47a17b0b7564a7f37a99d0786e99476428d29e29d3c197a72bfab1342c12a0fc4787fd7017d7a6174049ea43b5779169ef7472bdbbd941dcb82fc73aac45a8a94c9f2bd3477f61fd3b796f02a1b8264a214c6fea74b7051b226c722099ec7883a462b83b6afdd4009248b8a237f605fe5a08fe7d8b45321421ebba67bd70a0b00ddbf94baab7f359d5d1eea105f28dcfb,b542b6cd8ef2dab4ed83b77ac6dc52daf554ecda4ef7ab0a50e546bebe2d8e5a e4d1c1897a0a866ce564635b74222f9696bf2c7f640dd78d7e2aca66e1b61c642bb03ea7536aae597811e9bf4a7b453ede31f97b46a5f0ef51a071a2b3918df16b152519ae3776f9f1edab4c2a377c3292e96408359d3613844d5eb393000283d5ad3401a318b12fd1474b8612f2bb50fb6a8b9e023a54d7dde28c43d6d8854c8d9d1155935c199811dbfc87e9e0072e90eb88681cc7529714f8fb8a2c9d88567adfb974ee205a9bf7b848,f7e9e825722e6554a8619cca3e57f5b5e6b7347431d55ce178372c917bfb3dc2 b10c59723e3dcadd6d75df87d0a1580e73133a9b7d00cb95ec19f5547027323be75158b11f80b6e142c6a78531886d9047b08e551e75e6261e79785366d7024bd7cd9cf322d9be7d57fb661069f2481c7bb759cd71b4b36ca2bc2df6d3a328faebdb995a9794a8d72155ed551a1f87c80bf6059b43fc764900b18a1c2441f7487743cf84e565f61f8dd2ece6b6ccc9444049197aaaf53e926fbee3bfca8be588ec77f29d211be89de18b15f6,14bb22b98eaf41a4c224fd3c37188a755f9b04f46f3e23a652da3db9e25d2f2c db11f609baba7b0ca634926b1dd539c8cbada24967d7add4d9876f77c2d80c0f4dcefbd7121548373582705cca2495bd2a43716fe64ed26d059cfb566b3364bd49ee0717bdd9810dd14d8fad80dbbdc4cafb37cc60fb0fe2a80fb4541b8ca9d59dce457738a9d3d8f641af8c3fd6da162dc16fc01aac527a4a0255b4d231c0be50f44f0db0b713af03d968fe7f0f61ed0824c55c4b5265548febd6aad5c5eedf63efe793489c39b8fd29d104ce,eb5668f9941c06e5e38ea01b7fa980638b9536ca1939950c1629f84a6eff3866 bebd4f1a84fc8b15e4452a54bd02d69e304b7f32616aadd90537937106ae4e28de9d8aab02d19bc3e2fde1d651559e296453e4dba94370a14dbbb2d1d4e2022302ee90e208321efcd8528ad89e46dc839ea9df618ea8394a6bff308e7726bae0c19bcd4be52da6258e2ef4e96aa21244429f49ef5cb486d7ff35cac1bacb7e95711944bccb2ab34700d42d1eb38b5d536b947348a458ede3dc6bd6ec547b1b0cae5b257be36a7124e1060c170ffa,913014bb6e243fac3a22a185f8227a68c2311dc0b718e276bbbdb73af98be35f 5aca56a03a13784bdc3289d9364f79e2a85c12276b49b92db0adaa4f206d5028f213f678c3510e111f9dc4c1c1f8b6acb17a6413aa227607c515c62a733817ba5e762cc6748e7e0d6872c984d723c9bb3b117eb8963185300a80bfa65cde495d70a46c44858605fccbed086c2b45cef963d33294dbe9706b13af22f1b7c4cd5a001cfec251fba18e722c6e1c4b1166918b4f6f48a98b64b3c07fc86a6b17a6d0480ab79d4e6415b520f1c484d675b1,0284418c10190f413042e3eceb3954979b94afbf2e545fc7f8a3c7db2c235916 a5aad0e4646a32c85cfcac73f02fc5300f1982fabb2f2179e28303e447854094cdfc854310e5c0f60993ceff54d84d6b46323d930adb07c17599b35b505f09e784bca5985e0172257797fb53649e2e9723efd16865c31b5c3d5113b58bb0bfc8920fabdda086d7537e66d709d050bd14d0c960873f156fad5b3d3840cdfcdc9be6af519db262a27f40896ab25cc39f96984d650611c0d5a3080d5b3a1bf186abd42956588b3b58cd948970d298776060,8febff801787f5803e151dca3434a5cd44adb49f1c2ffd5d0cd077a9075a492d 06cbbe67e94a978203ead6c057a1a5b098478b4b4cbef5a97e93c8e42f5572713575fc2a884531d7622f8f879387a859a80f10ef02708cd8f7413ab385afc357678b9578c0ebf641ef076a1a30f1f75379e9dcb2a885bdd295905ee80c0168a62a9597d10cf12dd2d8cee46645c7e5a141f6e0e23aa482abe5661c16e69ef1e28371e2e236c359ba4e92c25626a7b7ff13f6ea4ae906e1cfe163e91719b1f750a96cbde5fbc953d9e576cd216afc90323a,ea7511b993b786df59a3b3e0b3cd876c0f056d6ca43cc89c51c1b21ccdc79b42 f1c528cf7739874707d4d8ad5b98f7c77169de0b57188df233b2dc8a5b31eda5db4291dd9f68e6bad37b8d7f6c9c0044b3bf74bbc3d7d1798e138709b0d75e7c593d3cccdc1b20c7174b4e692add820ace262d45ccfae2077e878796347168060a162ecca8c38c1a88350bd63bb539134f700fd4addd5959e255337daa06bc86358fabcbefdfb5bc889783d843c08aadc6c4f6c36f65f156e851c9a0f917e4a367b5ad93d874812a1de6a7b93cd53ad97232,baaecb6e9db57971d5c70f5819ff89c5093254de19ef6059c43cc0afda7c5d34 9d9f3a7ecd51b41f6572fd0d0881e30390dfb780991dae7db3b47619134718e6f987810e542619dfaa7b505c76b7350c6432d8bf1cfebdf1069b90a35f0d04cbdf130b0dfc7875f4a4e62cdb8e525aadd7ce842520a482ac18f09442d78305fe85a74e39e760a4837482ed2f437dd13b2ec1042afcf9decdc3e877e50ff4106ad10a525230d11920324a81094da31deab6476aa42f20c84843cfc1c58545ee80352bdd3740dd6a16792ae2d86f11641bb717c2,56db69430b8ca852221d55d7bbff477dc83f7cb44ab44ddd64c31a52c483db4f 5179888724819fbad3afa927d3577796660e6a81c52d98e9303261d5a4a83232f6f758934d50aa83ff9e20a5926dfebaac49529d006eb923c5ae5048ed544ec471ed7191edf46363383824f915769b3e688094c682b02151e5ee01e510b431c8865aff8b6b6f2f59cb6d129da79e97c6d2b8fa6c6da3f603199d2d1bcab547682a81cd6cf65f6551121391d78bcc23b5bd0e922ec6d8bf97c952e84dd28aef909aba31edb903b28fbfc33b7703cd996215a11238,f8538f597f4463cad7a91905744b87156db33c65ba87b912427fec3669f425d4 576ef3520d30b7a4899b8c0d5e359e45c5189add100e43be429a02fb3de5ff4f8fd0e79d9663acca72cd29c94582b19292a557c5b1315297d168fbb54e9e2ecd13809c2b5fce998edc6570545e1499dbe7fb74d47cd7f35823b212b05bf3f5a79caa34224fdd670d335fcb106f5d92c3946f44d3afcbae2e41ac554d8e6759f332b76be89a0324aa12c5482d1ea3ee89ded4936f3e3c080436f539fa137e74c6d3389bdf5a45074c47bc7b20b0948407a66d855e2f,447eda923cfe1112a6f1a3e4c735bf8ee9e4f2aee7de666a472ff8cf0fc65315 0df2152fa4f4357c8741529dd77e783925d3d76e95bafa2b542a2c33f3d1d117d159cf473f82310356fee4c90a9e505e70f8f24859656368ba09381fa245eb6c3d763f3093f0c89b972e66b53d59406d9f01aea07f8b3b615cac4ee4d05f542e7d0dab45d67ccccd3a606ccbeb31ea1fa7005ba07176e60dab7d78f6810ef086f42f08e595f0ec217372b98970cc6321576d92ce38f7c397a403bada1548d205c343ac09deca86325373c3b76d9f32028fea8eb32515,74d94c13afea4ddd07a637b68b6fe095017c092b3cdccdc498e26035d86d921e 3e15350d87d6ebb5c8ad99d42515cfe17980933c7a8f6b8bbbf0a63728cefaad2052623c0bd5931839112a48633fb3c2004e0749c87a41b26a8b48945539d1ff41a4b269462fd199bfecd45374756f55a9116e92093ac99451aefb2af9fd32d6d7f5fbc7f7a540d5097c096ebc3b3a721541de073a1cc02f7fb0fb1b9327fb0b1218ca49c9487ab5396622a13ae546c97abdef6b56380dda7012a8384091b6656d0ab272d363cea78163ff765cdd13ab1738b940d16cae,cc11196c095bffa090a05ba0bc255d38bda7218d9311143f4f200b1852d1bb0d c38d6b0b757cb552be40940ece0009ef3b0b59307c1451686f1a22702922800d58bce7a636c1727ee547c01b214779e898fc0e560f8ae7f61bef4d75eaa696b921fd6b735d171535e9edd267c192b99880c87997711002009095d8a7a437e258104a41a505e5ef71e5613ddd2008195f0c574e6ba3fe40099cfa116e5f1a2fa8a6da04badcb4e2d5d0de31fdc4800891c45781a0aac7c907b56d631fca5ce8b2cde620d11d1777ed9fa603541de794ddc5758fcd5fad78c0,8c085b54c213704374ddd920a45168608be65dfd036a562659f47143604144c2 8d2de3f0b37a6385c90739805b170057f091cd0c7a0bc951540f26a5a75b3e694631bb64c7635eed316f51318e9d8de13c70a2aba04a14836855f35e480528b776d0a1e8a23b547c8b8d6a0d09b241d3be9377160cca4e6793d00a515dc2992cb7fc741daca171431da99cce6f7789f129e2ac5cf65b40d703035cd2185bb936c82002daf8cbc27a7a9e554b06196630446a6f0a14ba155ed26d95bd627b7205c072d02b60db0fd7e49ea058c2e0ba202daff0de91e845cf79,d2e233264a3773495ffd12159ef7b631660c1b3e53a3da0f24ae14466f167757 c464bbdad275c50dcd983b65ad1019b9ff85a1e71c807f3204bb2c921dc31fbcd8c5fc45868ae9ef85b6c9b83bba2a5a822201ed68586ec5ec27fb2857a5d1a2d09d09115f22dcc39fe61f5e1ba0ff6e8b4acb4c6da748be7f3f0839739394ff7fa8e39f7f7e84a33c3866875c01bcb1263c9405d91908e9e0b50e7459fabb63d8c6bbb73d8e3483c099b55bc30ff092ff68b6adedfd477d63570c9f5515847f36e24ba0b705557130cec57ebad1d0b31a378e91894ee26e3a04,ffac7ca5fa067419d1bdb00c0e49c6e1a748880923a23ed5dd67dde63d777edb 8b8d68bb8a75732fe272815a68a1c9c5aa31b41dedc8493e76525d1d013d33cebd9e21a5bb95db2616976a8c07fcf411f5f6bc6f7e0b57aca78cc2790a6f9b898858ac9c79b165ff24e66677531e39f572be5d81eb3264524181115f32780257bfb9aeec6af12af28e587cac068a1a2953b59ad680f4c245b2e3ec36f59940d37e1d3db38e13edb29b5c0f404f6ff87f80fc8be7a225ff22fbb9c8b6b1d7330c57840d24bc75b06b80d30dad6806544d510af6c4785e823ac3e0b8,5b2eca0920d32b1964bbf5810a6e6e53675ed1b83897fd04600d72e097845859 6b018710446f368e7421f1bc0ccf562d9c1843846bc8d98d1c9bf7d9d6fcb48bfc3bf83b36d44c4fa93430af75cd190bde36a7f92f867f58a803900df8018150384d85d82132f123006ac2aeba58e02a037fe6afbd65eca7c44977dd3dc74f48b6e7a1bfd5cc4dcf24e4d52e92bd4455848e4928b0eac8b7476fe3cc03e862aa4dff4470dbfed6de48e410f25096487ecfc32a27277f3f5023b2725ade461b1355889554a8836c9cf53bd767f5737d55184eea1ab3f53edd0976c485,68f41fdfc7217e89687ed118bc31ac6ed2d9d1e1a2f1b20a2d429729fa03517b c9534a24714bd4be37c88a3da1082eda7cabd154c309d7bd670dccd95aa535594463058a29f79031d6ecaa9f675d1211e9359be82669a79c855ea8d89dd38c2c761ddd0ec0ce9e97597432e9a1beae062cdd71edfdfd464119be9e69d18a7a7fd7ce0e2106f0c8b0abf4715e2ca48ef9f454dc203c96656653b727083513f8efb86e49c513bb758b3b052fe21f1c05bb33c37129d6cc81f1aef6adc45b0e8827a830fe545cf57d0955802c117d23ccb55ea28f95c0d8c2f9c5a242b33f,fa2f3de31e9cf25ab9a978c82d605a43ee39b68ac8e30f49f9d209cb4e172ab4 07906c87297b867abf4576e9f3cc7f82f22b154afcbf293b9319f1b0584da6a40c27b32e0b1b7f412c4f1b82480e70a9235b12ec27090a5a33175a2bb28d8adc475cefe33f7803f8ce27967217381f02e67a3b4f84a71f1c5228e0c2ad971373f6f672624fcea8d1a9f85170fad30fa0bbd25035c3b41a6175d467998bd1215f6f3866f53847f9cf68ef3e2fbb54bc994de2302b829c5eea68ec441fcbafd7d16ae4fe9fff98bf00e5bc2ad54dd91ff9fda4dd77b6c754a91955d1fbaad0,ba2af506c10da8d7751e67ed766cfcd47d048d6ef9277dbd2abfe2fd5d787b79 588e94b9054abc2189df69b8ba34341b77cdd528e7860e5defcaa79b0c9a452ad4b82aa306be84536eb7cedcbe058d7b84a6aef826b028b8a0271b69ac3605a9635ea9f5ea0aa700f3eb7835bc54611b922964300c953efe7491e3677c2cebe0822e956cd16433b02c68c4a23252c3f9e151a416b4963257b783e038f6b4d5c9f110f871652c7a649a7bcedcbccc6f2d0725bb903cc196ba76c76aa9f10a190b1d1168993baa9ffc96a1655216773458bec72b0e39c9f2c121378feab4e76a,3cd33f8811af12183c53e978528f53ae7d559432724029e55fcfa9b990b91713 08959a7e4baae874928813364071194e2939772f20db7c3157078987c557c2a6d5abe68d520eef3dc491692e1e21bcd880adebf63bb4213b50897fa005256ed41b5690f78f52855c8d9168a4b666fce2da2b456d7a7e7c17ab5f2fb1ee90b79e698712e963715983fd07641ae4b4e9dc73203fac1ae11fa1f8c7941fcc82eab247addb56e2638447e9d609e610b60ce086656aaebf1da3c8a231d7d94e2fd0afe46b391ff14a72eaeb3f44ad4df85866def43d4781a0b3578bc996c87970b132,3ecc9d27994022045cbeab4fc041f12419cec8060c8f6f9f0372884df6074b5c cb2a234f45e2ecd5863895a451d389a369aab99cfef0d5c9ffca1e6e63f763b5c14fb9b478313c8e8c0efeb3ac9500cf5fd93791b789e67eac12fd038e2547cc8e0fc9db591f33a1e4907c64a922dda23ec9827310b306098554a4a78f050262db5b545b159e1ff1dca6eb734b872343b842c57eafcfda8405eedbb48ef32e99696d135979235c3a05364e371c2d76f1902f1d83146df9495c0a6c57d7bf9ee77e80f9787aee27be1fe126cdc9ef893a4a7dcbbc367e40fe4e1ee90b42ea25af01,1501988a55372ac1b0b78849f3b7e107e0bf1f2cbaf670de7f15acbb1a00ad3d d16beadf02ab1d4dc6f88b8c4554c51e866df830b89c06e786a5f8757e8909310af51c840efe8d20b35331f4355d80f73295974653ddd620cdde4730fb6c8d0d2dcb2b45d92d4fbdb567c0a3e86bd1a8a795af26fbf29fc6c65941cddb090ff7cd230ac5268ab4606fccba9eded0a2b5d014ee0c34f0b2881ac036e24e151be89eeb6cd9a7a790afccff234d7cb11b99ebf58cd0c589f20bdac4f9f0e28f75e3e04e5b3debce607a496d848d67fa7b49132c71b878fd5557e082a18eca1fbda94d4b,5c4e860a0175c92c1e6af2cbb3084162403ced073faac901d0d358b6bf5eefa9 8f65f6bc59a85705016e2bae7fe57980de3127e5ab275f573d334f73f8603106ec3553016608ef2dd6e69b24be0b7113bf6a760ba6e9ce1c48f9e186012cf96a1d4849d75df5bb8315387fd78e9e153e76f8ba7ec6c8849810f59fb4bb9b004318210b37f1299526866f44059e017e22e96cbe418699d014c6ea01c9f0038b10299884dbec3199bb05adc94e955a1533219c1115fed0e5f21228b071f40dd57c4240d98d37b73e412fe0fa4703120d7c0c67972ed233e5deb300a22605472fa3a3ba86,272b4f689263057fbf7605aaa67af012d742267164c4fab68035d99c5829b4f0 84891e52e0d451813210c3fd635b39a03a6b7a7317b221a7abc270dfa946c42669aacbbbdf801e1584f330e28c729847ea14152bd637b3d0f2b38b4bd5bf9c791c58806281103a3eabbaede5e711e539e6a8b2cf297cf351c078b4fa8f7f35cf61bebf8814bf248a01d41e86c5715ea40c63f7375379a7eb1d78f27622fb468ab784aaaba4e534a6dfd1df6fa15511341e725ed2e87f98737ccb7b6a6dfae416477472b046bf1811187d151bfa9f7b2bf9acdb23a3be507cdf14cfdf517d2cb5fb9e4ab6,9b28e42b67ef32ec80da10a07b004e1d71c6dce71d8013ffa0305d0d0ce0469d fdd7a9433a3b4afabd7a3a5e3457e56debf78e84b7a0b0ca0e8c6d53bd0c2dae31b2700c6128334f43981be3b213b1d7a118d59c7e6b6493a86f866a1635c12859cfb9ad17460a77b4522a5c1883c3d6acc86e6162667ec414e9a104aa892053a2b1d72165a855bacd8faf8034a5dd9b716f47a0818c09bb6baf22aa503c06b4ca261f557761989d2afbd88b6a678ad128af68672107d0f1fc73c5ca740459297b3292b281e93bceb761bde7221c3a55708e5ec84472cddcaa84ecf23723cc0991355c6280,ee53f83d2e2ccc315c6377eadda5f42f42f3aadd664e3e895c37cbe9d0e9b9de 70a40bfbef92277a1aad72f6b79d0177197c4ebd432668cfec05d099accb651062b5dff156c0b27336687a94b26679cfdd9daf7ad204338dd9c4d14114033a5c225bd11f217b5f4732da167ee3f939262d4043fc9cba92303b7b5e96aea12adda64859df4b86e9ee0b58e39091e6b188b408ac94e1294a8911245ee361e60e601eff58d1d37639f3753bec80ebb4efde25817436076623fc65415fe51d1b0280366d12c554d86743f3c3b6572e400361a60726131441ba493a83fbe9afda90f7af1ae717238d,21ccfda65c4b915303012b852ab29481030f87347c29917e21f210f2bd5efc9c 74356e449f4bf8644f77b14f4d67cb6bd9c1f5ae357621d5b8147e562b65c66585caf2e491b48529a01a34d226d436959153815380d5689e30b35357cdac6e08d3f2b0e88e200600d62bd9f5eaf488df86a4470ea227006182e44809009868c4c280c43d7d64a5268fa719074960087b3a6abc837882f882c837834535929389a12b2c78187e2ea07ef8b8eef27dc85002c3ae35f1a50bee6a1c48ba7e175f3316670b27983472aa6a61eed0a683a39ee323080620ea44a9f74411ae5ce99030528f9ab49c79f2,f5bf70710da440edb43afd3eb7698180317ffefa81406bb4df9c2bb8b0b1c034 8c3798e51bc68482d7337d3abb75dc9ffe860714a9ad73551e120059860dde24ab87327222b64cf774415a70f724cdf270de3fe47dda07b61c9ef2a3551f45a5584860248fabde676e1cd75f6355aa3eaeabe3b51dc813d9fb2eaa4f0f1d9f834d7cad9c7c695ae84b329385bc0bef895b9f1edf44a03d4b410cc23a79a6b62e4f346a5e8dd851c2857995ddbf5b2d717aeb847310e1f6a46ac3d26a7f9b44985af656d2b7c9406e8a9e8f47dcb4ef6b83caacf9aefb6118bfcff7e44bef6937ebddc89186839b77,e83ea21f5bc0976953af86069a10eb6024a1ac59d609688e4a9759bb8b6c9441 fa56bf730c4f8395875189c10c4fb251605757a8fecc31f9737e3c2503b02608e6731e85d7a38393c67de516b85304824bfb135e33bf22b3a23b913bf6acd2b7ab85198b8187b2bcd454d5e3318cacb32fd6261c31ae7f6c54ef6a7a2a4c9f3ecb81ce3555d4f0ad466dd4c108a90399d70041997c3b25345a9653f3c9a6711ab1b91d6a9d2216442da2c973cbd685ee7643bfd77327a2f7ae9cb283620a08716dfb462e5c1d65432ca9d56a90e811443cd1ecb8f0de179c9cb48ba4f6fec360c66f252f6e64edc96b,a2d93c6367e1862809d367ec37f9da44cb3a8b4319c6a094c5e7d7266fe3a593 b6134f9c3e91dd8000740d009dd806240811d51ab1546a974bcb18d344642baa5cd5903af84d58ec5ba17301d5ec0f10ccd0509cbb3fd3fff9172d193af0f782252fd1338c7244d40e0e42362275b22d01c4c3389f19dd69bdf958ebe28e31a4ffe2b5f18a87831cfb7095f58a87c9fa21db72ba269379b2dc2384b3da953c7925761fed324620acea435e52b424a7723f6a2357374157a34cd8252351c25a1b232826cefe1bd3e70ffc15a31e7c0598219d7f00436294d11891b82497bc78aa5363892a2495df8c1eef,3c647b195f22dc16d6decc8873017df369ee1c4696340934db158dc4059c76df c941cdb9c28ab0a791f2e5c8e8bb52850626aa89205bec3a7e22682313d198b1fa33fc7295381354858758ae6c8ec6fac3245c6e454d16fa2f51c4166fab51df272858f2d603770c40987f64442d487af49cd5c3991ce858ea2a60dab6a65a34414965933973ac2457089e359160b7cdedc42f29e10a91921785f6b7224ee0b349393cdcff6151b50b377d609559923d0984cda6000829b916ab6896693ef6a2199b3c22f7dc5500a15b8258420e314c222bc000bc4e5413e6dd82c993f8330f5c6d1be4bc79f08a1a0a46,3bb394d056d94fde68920cd383378ee3abcc44b7259d3db9cd0a897e021f7e2e 4499efffac4bcea52747efd1e4f20b73e48758be915c88a1ffe5299b0b005837a46b2f20a9cb3c6e64a9e3c564a27c0f1c6ad1960373036ec5bfe1a8fc6a435c2185ed0f114c50e8b3e4c7ed96b06a036819c9463e864a58d6286f785e32a804443a56af0b4df6abc57ed5c2b185ddee8489ea080deeee66aa33c2e6dab36251c402682b6824821f998c32163164298e1fafd31babbcffb594c91888c6219079d907fdb438ed89529d6d96212fd55abe20399dbefd342248507436931cdead496eb6e4a80358acc78647d043,43640f408613cbf7393d900b921f22b826357f3b4fdff7168ec45cbfb3ef5eff eecbb8fdfa4da62170fd06727f697d81f83f601ff61e478105d3cb7502f2c89bf3e8f56edd469d049807a38882a7eefbc85fc9a950952e9fa84b8afebd3ce782d4da598002827b1eb98882ea1f0a8f7aa9ce013a6e9bc462fb66c8d4a18da21401e1b93356eb12f3725b6db1684f2300a98b9a119e5d27ff704affb618e12708e77e6e5f34139a5a41131fd1d6336c272a8fc37080f041c71341bee6ab550cb4a20a6ddb6a8e0299f2b14bc730c54b8b1c1c487b494bdccfd3a53535ab2f231590bf2c4062fd2ad58f906a2d0d,cb3713a5d5abbc6af72f8b38a701c71269b3b51c62ec5116f96ad0d42a10fd90 e64f3e4ace5c8418d65fec2bc5d2a303dd458034736e3b0df719098be7a206deaf52d6ba82316caf330ef852375188cde2b39cc94aa449578a7e2a8e3f5a9d68e816b8d16889fbc0ebf0939d04f63033ae9ae2bdab73b88c26d6bd25ee460ee1ef58fb0afa92cc539f8c76d3d097e7a6a63ebb9b5887edf3cf076028c5bbd5b9db3211371ad3fe121d4e9bf44229f4e1ecf5a0f9f0eba4d5ceb72878ab22c3f0eb5a625323ac66f7061f4a81fac834471e0c59553f108475fe290d43e6a055ae3ee46fb67422f814a68c4be3e8c9,b304fc4ca22131857d242eb12fe899ed9e6b55717c3360f113512a84174e6a77 d2cb2d733033f9e91395312808383cc4f0ca974e87ec68400d52e96b3fa6984ac58d9ad0938dde5a973008d818c49607d9de2284e7618f1b8aed8372fbd52ed54557af4220fac09dfa8443011699b97d743f8f2b1aef3537ebb45dcc9e13dfb438428ee190a4efdb3caeb7f3933117bf63abdc7e57beb4171c7e1ad260ab0587806c4d137b6316b50abc9cce0dff3acada47bbb86be777e617bbe578ff4519844db360e0a96c6701290e76bb95d26f0f804c8a4f2717eac4e7de9f2cff3bbc55a17e776c0d02856032a6cd10ad2838,a3ca830d4771c1baa7fada76c5fceadd0f3cb9736e19cfec52e9e74f56bfdd55 f2998955613dd414cc111df5ce30a995bb792e260b0e37a5b1d942fe90171a4ac2f66d4928d7ad377f4d0554cbf4c523d21f6e5f379d6f4b028cdcb9b1758d3b39663242ff3cb6ede6a36a6f05db3bc41e0d861b384b6dec58bb096d0a422fd542df175e1be1571fb52ae66f2d86a2f6824a8cfaacbac4a7492ad0433eeb15454af8f312b3b2a577750e3efbd370e8a8cac1582581971fba3ba4bd0d76e718dacf8433d33a59d287f8cc92234e7a271041b526e389efb0e40b6a18b3aaf658e82ed1c78631fd23b4c3eb27c3faec8685,ca158c46370e64a9f032f5ba8e091460fd555ef700edf7087e56bebffa261de7 447797e2899b72a356ba55bf4df3acca6cdb1041eb477bd1834a9f9acbc340a294d729f2f97df3a610be0ff15edb9c6d5db41644b9874360140fc64f52aa03f0286c8a640670067a84e017926a70438db1bb361defee7317021425f8821def26d1efd77fc853b818545d055adc9284796e583c76e6fe74c9ac2587aa46aa8f8804f2feb5836cc4b3ababab8429a5783e17d5999f32242eb59ef30cd7adabc16d72dbdb097623047c98989f88d14eaf02a7212be16ec2d07981aaa99949ddf89ecd90333a77bc4e1988a82abf7c7caf3291,5901cda0cd1510db5455d072d2737a6721ad9ee3272953a19c7ab378bf3646c5 9f2c18ade9b380c784e170fb763e9aa205f64303067eb1bcea93df5dac4bf5a2e00b78195f808df24fc76e26cb7be31dc35f0844cded1567bba29858cffc97fb29010331b01d6a3fb3159cc1b973d255da9843e34a0a4061cabdb9ed37f241bfabb3c20d32743f4026b59a4ccc385a2301f83c0b0a190b0f2d01acb8f0d41111e10f2f4e149379275599a52dc089b35fdd5234b0cfb7b6d8aebd563ca1fa653c5c021dfd6f5920e6f18bfafdbecbf0ab00281333ed50b9a999549c1c8f8c63d7626c48322e9791d5ff72294049bde91e73f8,f64562d6273efb5ebd027e0a6f38c3fb204a6dbe894ee01200ea249b747cfe66 ae159f3fa33619002ae6bcce8cbbdd7d28e5ed9d61534595c4c9f43c402a9bb31f3b301cbfd4a43ce4c24cd5c9849cc6259eca90e2a79e01ffbac07ba0e147fa42676a1d668570e0396387b5bcd599e8e66aaed1b8a191c5a47547f61373021fa6deadcb55363d233c24440f2c73dbb519f7c9fa5a8962efd5f6252c0407f190dfefad707f3c7007d69ff36b8489a5b6b7c557e79dd4f50c06511f599f56c896b35c917b63ba35c6ff8092baf7d1658e77fc95d8a6a43eeb4c01f33f03877f92774be89c1114dd531c011e53a34dc248a2f0e6,e7d7a113b3a33175d0abd2cf4f9add8e41dc86c93c9552c5b3588277fbcaa24a 3b8e97c5ffc2d6a40fa7de7fcefc90f3b12c940e7ab415321e29ee692dfac799b009c99dcddb708fce5a178c5c35ee2b8617143edc4c40b4d313661f49abdd93cea79d117518805496fe6acf292c4c2a1f76b403a97d7c399daf85b46ad84e16246c67d6836757bde336c290d5d401e6c1386ab32797af6bb251e9b2d8fe754c47482b72e0b394eab76916126fd68ea7d65eb93d59f5b4c5ac40f7c3b37e7f3694f29424c24af8c8f0ef59cd9dbf1d28e0e10f799a6f78cad1d45b9db3d7dee4a7059abe99182714983b9c9d44d7f5643596d4f3,3b40c1493af411ae7849904d478df2407254bf62b88e9bffd7b42bd2a60ce0fa 3434ec31b10fafdbfeec0dd6bd94e80f7ba9dca19ef075f7eb017512af66d6a4bcf7d16ba0819a1892a6372f9b35bcc7ca8155ee19e8428bc22d214856ed5fa9374c3c09bde169602cc219679f65a1566fc7316f4cc3b631a18fb4449fa6afa16a3db2bc4212eff539c67cf184680826535589c7111d73bffce431b4c40492e763d9279560aaa38eb2dc14a212d723f994a1fe656ff4dd14551ce4e7c621b2aa5604a10001b2878a897a28a08095c325e10a26d2fb1a75bfd64c250309bb55a44f23bbac0d5516a1c687d3b41ef2fbbf9cc56d4739,feeb172aeab2f0deb748fb77801ca22d3ce99b7a9f9789e479b93d1f4b1d227f 7c7953d81c8d208fd1c97681d48f49dd003456de60475b84070ef4847c333b74575b1fc8d2a186964485a3b8634feaa3595aaa1a2f4595a7d6b6153563dee31bbac443c8a33eed6d5d956a980a68366c2527b550ee950250dfb691eacbd5d56ae14b970668be174c89df2fea43ae52f13142639c884fd62a3683c0c3792f0f24ab1318bcb27e21f4737fab62c77ea38bc8fd1cf41f7dab64c13febe7152bf5bb7ab5a78f5346d43cc741cb6f72b7b8980f268b68bf62abdfb1577a52438fe14b591498cc95f071228460c7c5d5ceb4a7bde588e7f21c,b240bc52b8af1b502e26bf1d5e75fe2663bfba503faf10f46754dc3d23cb61c1 7a6a4f4fdc59a1d223381ae5af498d74b7252ecf59e389e49130c7eaee626e7bd9897effd92017f4ccde66b0440462cdedfd352d8153e6a4c8d7a0812f701cc737b5178c2556f07111200eb627dbc299caa792dfa58f35935299fa3a3519e9b03166dffa159103ffa35e8577f7c0a86c6b46fe13db8e2cdd9dcfba85bdddcce0a7a8e155f81f712d8e9fe646153d3d22c811bd39f830433b2213dd46301941b59293fd0a33e2b63adbd95239bc01315c46fdb678875b3c81e053a40f581cfbec24a1404b1671a1b88a6d06120229518fb13a74ca0ac5ae,3ebace41f578fde6603e032fc1c7cfeef1cb79fe938a94d4c7b58b0ba4cb9720 d9faa14cebe9b7de551b6c0765409a33938562013b5e8e0e1e0a6418df7399d0a6a771fb81c3ca9bd3bb8e2951b0bc792525a294ebd1083688806fe5e7f1e17fd4e3a41d00c89e8fcf4a363caedb1acb558e3d562f1302b3d83bb886ed27b76033798131dab05b4217381eaaa7ba15ec820bb5c13b516dd640eaec5a27d05fdfca0f35b3a5312146806b4c0275bcd0aaa3b2017f346975db566f9b4d137f4ee10644c2a2da66deeca5342e236495c3c6280528bfd32e90af4cd9bb908f34012b52b4bc56d48cc8a6b59bab014988eabd12e1a0a1c2e170e7,65eb4bd5ecca7164ce9b66727f112c1ac6120ddd200dcb5ce75b7487843fcdb8 2d8427433d0c61f2d96cfe80cf1e932265a191365c3b61aaa3d6dcc039f6ba2ad52a6a8cc30fc10f705e6b7705105977fa496c1c708a277a124304f1fc40911e7441d1b5e77b951aad7b01fd5db1b377d165b05bbf898042e39660caf8b279fe5229d1a8db86c0999ed65e53d01ccbc4b43173ccf992b3a14586f6ba42f5fe30afa8ae40c5df29966f9346da5f8b35f16a1de3ab6de0f477d8d8660918060e88b9b9e9ca6a4207033b87a812dbf5544d39e4882010f82b6ce005f8e8ff6fe3c3806bc2b73c2b83afb704345629304f9f86358712e9fae3ca3e,d7155f6d3a90801f5e547689389ff62a604c81b7c1583d9204ac6b0194f0e8dd 5e19d97887fcaac0387e22c6f803c34a3dacd2604172433f7a8a7a526ca4a2a1271ecfc5d5d7be5ac0d85d921095350dfc65997d443c21c8094e0a3fefd2961bcb94aed03291ae310ccda75d8ace4bc7d89e7d3e5d1650bda5d668b8b50bfc8e608e184f4d3a9a2badc4ff5f07e0c0bc8a9f2e0b2a26fd6d8c550008faaab75fd71af2a424bec9a7cd9d83fad4c8e9319115656a8717d3b523a68ff8004258b9990ed362308461804ba3e3a7e92d8f2ffae5c2fba55ba5a3c27c0a2f71bd711d2fe1799c2adb31b200035481e9ee5c4adf2ab9c0fa50b23975cf,aa7adaf16f39e398b4ab0ada037710556b720b0248d84817b2cfdf7600933595 c8e976ab4638909387ce3b8d4e510c3230e5690e02c45093b1d297910abc481e56eea0f296f98379dfc9080af69e73b2399d1c143bee80ae1328162ce1ba7f6a8374679b20aacd380eb4e61382c99998704d62701afa914f9a2705cdb065885f50d086c3eb5753700c387118bb142f3e6da1e988dfb31ac75d7368931e45d1391a274b22f83ceb072f9bcabc0b216685bfd789f5023971024b1878a205442522f9ea7d8797a4102a3df41703768251fd5e017c85d1200a464118aa35654e7ca39f3c375b8ef8cbe7534dbc64bc20befb417cf60ec92f63d9ee7397,b195463fe22a160802be0a0464ee3ab4d2b117de517b331c7bf04c8ba90c6120 7145fa124b7429a1fc2231237a949ba7201bcc1822d3272de005b682398196c25f7e5cc2f289fbf44415f699cb7fe6757791b1443410234ae061edf623359e2b4e32c19bf88450432dd01caa5eb16a1dc378f391ca5e3c4e5f356728bddd4975db7c890da8bbc84cc73ff244394d0d48954978765e4a00b593f70f2ca082673a261ed88dbcef1127728d8cd89bc2c597e9102ced6010f65fa75a14ebe467fa57ce3bd4948b6867d74a9df5c0ec6f530cbf2ee61ce6f06bc8f2864dff5583776b31df8c7ffcb61428a56bf7bd37188b4a5123bbf338393af46eda85e6,9f9296c53e753a4de4e5c5a547f51763a96903b083fbc7a7828effe4763a7ce6 7fdfadcc9d29bad23ae038c6c65cda1aef757221b8872ed3d75ff8df7da0627d266e224e812c39f7983e4558bfd0a1f2bef3feb56ba09120ef762917b9c093867948547aee98600d10d87b20106878a8d22c64378bf634f7f75900c03986b077b0bf8b740a82447b61b99fee5376c5eb6680ec9e3088f0bdd0c56883413d60c1357d3c811950e5890e7600103c916341b80c743c6a852b7b4fb60c3ba21f3bc15b8382437a68454779cf3cd7f9f90ccc8ef28d0b706535b1e4108eb5627bb45d719cb046839aee311ca1abdc8319e050d67972cb35a6b1601b25dbf487,51de4090aec36f6c446476c709253272cab595d9887ca5d52a9b38086854d58f 988638219fd3095421f826f56e4f09e356296b628c3ce6930c9f2e758fd1a80c8273f2f61e4daae65c4f110d3e7ca0965ac7d24e34c0dc4ba2d6ff0bf5bbe93b3585f354d7543cb542a1aa54674d375077f2d360a8f4d42f3db131c3b7ab7306267ba107659864a90c8c909460a73621d1f5d9d3fd95beb19b23db1cb6c0d0fba91d36891529b8bd8263caa1bab56a4affaed44962df096d8d5b1eb845ef31188b3e10f1af811a13f156beb7a288aae593ebd1471b624aa1a7c6adf01e2200b3d72d88a3aed3100c88231e41efc376906f0b580dc895f080fda5741db1cb,87a17400f919f2f53232b2205e1e8b14bd5698a76e74b9bdd5638a5c7ba5de1e 5aab62756d307a669d146aba988d9074c5a159b3de85151a819b117ca1ff6597f6156e80fdd28c9c3176835164d37da7da11d94e09add770b68a6e081cd22ca0c004bfe7cd283bf43a588da91f509b27a6584c474a4a2f3ee0f1f56447379240a5ab1fb77fdca49b305f07ba86b62756fb9efb4fc225c86845f026ea542076b91a0bc2cdd136e122c659be259d98e5841df4c2f60330d4d8cdee7bf1a0a244524eecc68ff2aef5bf0069c9e87a11c6e519de1a4062a10c83837388f7ef58598a3846f49d499682b683c4a062b421594fafbc1383c943ba83bdef515efcf10d,9742536c461d0c3503a6c943fa8105dbcd1e542f728d71ccc0517cffc232ea68 47b8216aa0fbb5d67966f2e82c17c07aa2d6327e96fcd83e3de7333689f3ee79994a1bf45082c4d725ed8d41205cb5bcdf5c341f77facb1da46a5b9b2cbc49eadf786bcd881f371a95fa17df73f606519aea0ff79d5a11427b98ee7f13a5c00637e2854134691059839121fea9abe2cd1bcbbbf27c74caf3678e05bfb1c949897ea01f56ffa4dafbe8644611685c617a3206c7a7036e4ac816799f693dafe7f19f303ce4eba09d21e03610201bfc665b72400a547a1e00fa9b7ad8d84f84b34aef118515e74def11b9188bd1e1f97d9a12c30132ec2806339bdadacda2fd8b78,ae3bf0936497a2955df874b7f2685314c7606030b9c6e7bfb8a8dff9825957b5 8cff1f67fe53c098896d9136389bd8881816ccab34862bb67a656e3d98896f3ce6ffd4da73975809fcdf9666760d6e561c55238b205d8049c1cedeef374d1735daa533147bfa960b2cce4a4f254176bb4d1bd1e89654432b8dbe1a135c42115b394b024856a2a83dc85d6782be4b444239567ccec4b184d4548eae3ff6a192f343292ba2e32a0f267f31cc26719eb85245d415fb897ac2da433ee91a99424c9d7f1766a44171d1651001c38fc79294accc68ceb5665d36218454d3ba169ae058a831338c17743603f81ee173bfc0927464f9bd728dee94c6aeab7aae6ee3a627e8,5fe0216dcc1bdb48f3375b9173b7b232939aa2177c6d056e908c8f2b9293b030 eacd07971cff9b9939903f8c1d8cbb5d4db1b548a85d04e037514a583604e787f32992bf2111b97ac5e8a938233552731321522ab5e8583561260b7d13ebeef785b23a41fd8576a6da764a8ed6d822d4957a545d5244756c18aa80e1aad4d1f9c20d259dee1711e2cc8fd013169fb7cc4ce38b362f8e0936ae9198b7e838dcea4f7a5b9429bb3f6bbcf2dc92565e3676c1c5e6eb3dd2a0f86aa23edd3d0891f197447692794b3dfa269611ad97f72b795602b4fdb198f3fd3eb41b415064256e345e8d8c51c555dc8a21904a9b0f1ad0effab7786aac2da3b196507e9f33ca356427,c339904ec865f24fb3f88f142a8786d770934e006eaeddbf45acbb6b38431021 23ac4e9a42c6ef45c3336ce6dfc2ff7de8884cd23dc912fef0f7756c09d335c189f3ad3a23697abda851a81881a0c8ccafc980ab2c702564c2be15fe4c4b9f10dfb2248d0d0cb2e2887fd4598a1d4acda897944a2ffc580ff92719c95cf2aa42dc584674cb5a9bc5765b9d6ddf5789791d15f8dd925aa12bffafbce60827b490bb7df3dda6f2a143c8bf96abc903d83d59a791e2d62814a89b8080a28060568cf24a80ae61179fe84e0ffad00388178cb6a617d37efd54cc01970a4a41d1a8d3ddce46edbba4ab7c90ad565398d376f431189ce8c1c33e132feae6a8cd17a61c630012,4ca8b7febdf0a8062e9b76185cf4165071bb30928c18f14338c305626789c6d3 0172df732282c9d488669c358e3492260cbe91c95cfbc1e3fea6c4b0ec129b45f242ace09f152fc6234e1bee8aab8cd56e8b486e1dcba9c05407c2f95da8d8f1c0af78ee2ed82a3a79ec0cb0709396ee62aadb84f8a4ee8a7ccca3c1ee84e302a09ea802204afecf04097e67d0f8e8a9d2651126c0a598a37081e42d168b0ae8a71951c524259e4e2054e535b779679bdade566fe55700858618e626b4a0faf895bcce9011504a49e05fd56127eae3d1f8917afb548ecadabda1020111fec9314c413498a360b08640549a22cb23c731ace743252a8227a0d2689d4c6001606678dfb921,23d2614420859b2f13ac084453dd35c33fe47c894dd50c087fd1653fcaeea00b 3875b9240cf3e0a8b59c658540f26a701cf188496e2c2174788b126fd29402d6a75453ba0635284d08835f40051a2a9683dc92afb9383719191231170379ba6f4adc816fecbb0f9c446b785bf520796841e58878b73c58d3ebb097ce4761fdeabe15de2f319dfbaf1742cdeb389559c788131a6793e193856661376c81ce9568da19aa6925b47ffd77a43c7a0e758c37d69254909ff0fbd415ef8eb937bcd49f91468b49974c07dc819abd67395db0e05874ff83dddab895344abd0e7111b2df9e58d76d85ad98106b36295826be04d435615595605e4b4bb824b33c4afeb5e7bb0d19f909,5590bb75247d7cd0b35620f0062b90ffb2a24de41220ed629d9e9a7abcadfb51 747cc1a59fefba94a9c75ba866c30dc5c1cb0c0f8e9361d98484956dd5d1a40f6184afbe3dac9f76028d1caeccfbf69199c6ce2b4c092a3f4d2a56fe5a33a00757f4d7dee5dfb0524311a97ae0668a47971b95766e2f6dd48c3f57841f91f04a00ad5ea70f2d479a2620dc5cd78eaab3a3b011719b7e78d19ddf70d9423798af77517ebc55392fcd01fc600d8d466b9e7a7a85bf33f9cc5419e9bd874ddfd60981150ddaf8d7febaa4374f0872a5628d318000311e2f5655365ad4d407c20e5c04df17a222e7deec79c5ab1116d8572f91cd06e1ccc7ced53736fc867fd49ecebe6bf8082e8a,e5932441b012e503b0b0c6104703ba02613e472ad65655c085b0adb07656b28f 57af971fccaec97435dc2ec9ef0429bcedc6b647729ea168858a6e49ac1071e706f4a5a645ca14e8c7746d65511620682c906c8b86ec901f3dded4167b3f00b06cbfac6aee3728051b3e5ff10b4f9ed8bd0b8da94303c833755b3ca3aeddf0b54bc8d6632138b5d25bab03d17b3458a9d782108006f5bb7de75b5c0ba854b423d8bb801e701e99dc4feaad59bc1c7112453b04d33ea3635639fb802c73c2b71d58a56bbd671b18fe34ed2e3dca38827d63fdb1d4fb3285405004b2b3e26081a8ff08cd6d2b08f8e7b7e90a2ab1ed7a41b1d0128522c2f8bff56a7fe67969422ce839a9d4608f03,21c0d84eb7b61774f97db5d9acf1dffafb662c01ed291a442bec6f14d1334699 04e16dedc1227902baaf332d3d08923601bdd64f573faa1bb7201918cfe16b1e10151dae875da0c0d63c59c3dd050c4c6a874011b018421afc4623ab0381831b2da2a8ba42c96e4f70864ac44e106f94311051e74c77c1291bf5db9539e69567bf6a11cf6932bbbad33f8946bf5814c066d851633d1a513510039b349939bfd42b858c21827c8ff05f1d09b1b0765dc78a135b5ca4dfba0801bcaddfa175623c8b647eacfb4444b85a44f73890607d06d507a4f8393658788669f6ef4deb58d08c50ca0756d5e2f49d1a7ad73e0f0b3d3b5f090acf622b1878c59133e4a848e05153592ea81c6fbf,0d1e6bb88188b49af0a9a05eb1af94255e6799515a2f8eb46aa6af9a9dd5b9e0 7c815c384eee0f288ece27cced52a01603127b079c007378bc5d1e6c5e9e6d1c735723acbbd5801ac49854b2b569d4472d33f40bbb8882956245c366dc3582d71696a97a4e19557e41e54dee482a14229005f93afd2c4a7d8614d10a97a9dfa07f7cd946fa45263063ddd29db8f9e34db60daa32684f0072ea2a9426ecebfa5239fb67f29c18cbaa2af6ed4bf4283936823ac1790164fec5457a9cba7c767ca59392d94cab7448f50eb34e9a93a80027471ce59736f099c886dea1ab4cba4d89f5fc7ae2f21ccd27f611eca4626b2d08dc22382e92c1efb2f6afdc8fdc3d2172604f5035c46b8197d3,935ded24f5cecc69e1f012b60b7831abce7ef50eeb0bea7f816c3dbf2b4abdc1 e29d505158dbdd937d9e3d2145658ee6f5992a2fc790f4f608d9cdb44a091d5b94b88e81fac4fdf5c49442f13b911c55886469629551189eaff62488f1a479b7db11a1560e198ddccccf50159093425ff7f1cb8d1d1246d0978764087d6bac257026b090efae8cec5f22b6f21c59ace1ac7386f5b8837ca6a12b6fbf5534dd0560ef05ca78104d3b943ddb220feaec89aa5e692a00f822a2ab9a2fe60350d75e7be16ff2526dc643872502d01f42f188abed0a6e9a6f5fd0d1ce7d5755c9ffa66b0af0b20bd806f08e06156690d81ac811778ca3dac2c249b96002017fce93e507e3b953acf99964b847,6755bf7e60e4e07965bac24e51b1de93e3dd42ae780f256647d4cc2ef8eff771 d85588696f576e65eca0155f395f0cfacd83f36a99111ed5768df2d116d2121e32357ba4f54ede927f189f297d3a97fad4e9a0f5b41d8d89dd7fe20156799c2b7b6bf9c957ba0d6763f5c3bc5129747bbb53652b49290cff1c87e2cdf2c4b95d8aaee09bc8fbfa6883e62d237885810491bfc101f1d8c636e3d0ede838ad05c207a3df4fad76452979eb99f29afaecedd1c63b8d36cf378454a1bb67a741c77ac6b6b3f95f4f02b64dabc15438613ea49750df42ee90101f115aa9abb9ff64324dde9dabbb01054e1bd6b4bcdc7930a44c2300d87ca78c06924d0323ad7887e46c90e8c4d100acd9eed21e,62c9f5e5b56e2994327a7f9a03888da7bad67e387593803b1807482b137b4509 3a12f8508b40c32c74492b66323375dcfe49184c78f73179f3314b79e63376b8ac683f5a51f1534bd729b02b04d002f55cbd8e8fc9b5ec1ea6bbe6a0d0e7431518e6ba45d124035f9d3dce0a8bb7bf1430a9f657e0b4ea9f20eb20c786a58181a1e20a96f1628f8728a13bdf7a4b4b32fc8aa7054cc4881ae7fa19afa65c6c3ee1b3ade3192af42054a8a911b8ec1826865d46d93f1e7c5e2b7813c92a506e53886f3d4701bb93d2a681ad109c845904bb861af8af0646b6e399b38b614051d34f6842563a0f37ec00cb3d865fc5d746c4987de2a65071100883a2a9c7a2bfe1e2dd603d9ea24dc7c5fd06be,9927fa5efd86304e73d54aa4928818c05b01504672c529471394a82e049e5f95 1861edce46fa5ad17e1ff1deae084dec580f97d0a67885dfe834b9dfac1ae076742ce9e267512ca51f6df5a455af0c5fd6abf94acea103a3370c354485a7846fb84f3ac7c2904b5b2fbf227002ce512133bb7e1c4e50057bfd1e44db33c7cdb969a99e284b184f50a14b068a1fc5009d9b298dbe92239572a7627aac02abe8f3e3b473417f36d4d2505d16b7577f4526c9d94a270a2dfe450d06da8f6fa956879a0a55cfe99e742ea555ea477ba3e9b44ccd508c375423611af92e55345dc215779b2d5119eba49c71d49b9fe3f1569fa24e5ca3e332d042422a8b8158d3ec66a80012976f31ffdf305f0c9c5e,84e056bf7bdfc73a3aaa95b00a74a136d776069beeb304423bead90120db6350 08d0ffde3a6e4ef65608ea672e4830c12943d7187ccff08f4941cfc13e545f3b9c7ad5eebbe2b01642b486caf855c2c73f58c1e4e3391da8e2d63d96e15fd84953ae5c231911b00ad6050cd7aafdaac9b0f663ae6aab45519d0f5391a541707d479034e73a6ad805ae3598096af078f1393301493d663dd71f83869ca27ba508b7e91e81e128c1716dc3acfe3084b2201e04cf8006617eecf1b640474a5d45cfde9f4d3ef92d6d055b909892194d8a8218db6d8203a84261d200d71473d7488f3427416b6896c137d455f231071cacbc86e0415ab88aec841d96b7b8af41e05bb461a40645bf176601f1e760de5f,401c3be59cc373453aef9603f7335c1d5fe669909a1425d7671dcb84a49887ca d782abb72a5be3392757be02d3e45be6e2099d6f000d042c8a543f50ed6ebc055a7f133b0dd8e9bc348536edcaae2e12ec18e8837df7a1b3c87ec46d50c241dee820fd586197552dc20beea50f445a07a38f1768a39e2b2ff05dddedf751f1def612d2e4d810daa3a0cc904516f9a43af660315385178a529e51f8aae141808c8bc5d7b60cac26bb984ac1890d0436ef780426c547e94a7b08f01acbfc4a3825eae04f520a9016f2fb8bf5165ed12736fc71e36a49a73614739eaa3ec834069b1b40f1350c2b3ab885c02c640b9f7686ed5f99527e41cfcd796fe4c256c9173186c226169ff257954ebda81c0e5f99,020485dcd264296afdb7f643ca828c93356f1714cbcc2fbbdd30f9896c3f2789 5fce8109a358570e40983e1184e541833bb9091e280f258cfb144387b05d190e431cb19baa67273ba0c58abe91308e1844dcd0b3678baa42f335f2fa05267a0240b3c718a5942b3b3e3bfa98a55c25a1466e8d7a603722cb2bbf03afa54cd769a99f310735ee5a05dae2c22d397bd95635f58c48a67f90e1b73aafcd3f82117f0166657838691005b18da6f341d6e90fc1cdb352b30fae45d348294e501b63252de14740f2b85ae5299ddec3172de8b6d0ba219a20a23bb5e10ff434d39db3f583305e9f5c039d98569e377b75a70ab837d1df269b8a4b566f40bb91b577455fd3c356c914fa06b9a7ce24c7317a172d,f8c43e28816bb41993bdb866888f3cc59efba208390144d3878dbf9fbfa1d57e 6172f1971a6e1e4e6170afbad95d5fec99bf69b24b674bc17dd78011615e502de6f56b86b1a71d3f4348087218ac7b7d09302993be272e4a591968aef18a1262d665610d1070ee91cc8da36e1f841a69a7a682c580e836941d21d909a3afc1f0b963e1ca5ab193e124a1a53df1c587470e5881fb54dae1b0d840f0c8f9d1b04c645ba1041c7d8dbf22030a623aa15638b3d99a2c400ff76f3252079af88d2b37f35ee66c1ad7801a28d3d388ac450b97d5f0f79e4541755356b3b1a5696b023f39ab7ab5f28df4202936bc97393b93bc915cb159ea1bd7a0a414cb4b7a1ac3af68f50d79f0c9c7314e750f7d02faa58bfa,4ea524e705020284b18284e34683725590e1ee565a6ff598ed4d42b1c987471e 5668ecd99dfbe215c4118398ac9c9eaf1a1433fab4ccdd3968064752b625ea944731f75d48a27d047d67547f14dd0ffaa55fa5e29f7af0d161d85eafc4f2029b717c918eab9d304543290bdba7158b68020c0ba4e079bc95b5bc0fc044a992b94b4ccd3bd66d0eabb5dbbab904d62e00752c4e3b0091d773bcf4c14b4377da3efff824b1cb2fa01b32d1e46c909e626ed2dae920f4c7dbeb635bc754facbd8d49beba3f23c1c41ccbfcd0ee0c114e69737f5597c0bf1d859f0c767e18002ae8e39c26261ffde2920d3d0baf0e906138696cfe5b7e32b600f45df3aaa39932f3a7df95b60fa8712a2271fcaf3911ce7b511b1,e4963e74ae01ff7774b96b4f614d1cb2a4cf8d206ed93c66fa42f71432be2c3f 03d625488354df30e3f875a68edfcf340e8366a8e1ab67f9d5c5486a96829dfac0578289082b2a62117e1cf418b43b90e0adc881fc6ae8105c888e9ecd21aea1c9ae1a4038dfd17378fed71d02ae492087d7cdcd98f746855227967cb1ab4714261ee3bead3f4db118329d3ebef4bc48a875c19ba763966da0ebea800e01b2f50b00e9dd4caca6dcb314d00184ef71ea2391d760c950710db4a70f9212ffc54861f9dc752ce18867b8ad0c48df8466ef7231e7ac567f0eb55099e622ebb86cb237520190a61c66ad34f1f4e289cb3282ae3eaac6152ed24d2c92bae5a7658252a53c49b7b02dfe54fdb2e90074b6cf310ac661,0f0d72bf8c0198459e45ece9cc18e930cb86263accf1fc7a00bc857ac9f201ad 2edc282ffb90b97118dd03aaa03b145f363905e3cbd2d50ecd692b37bf000185c651d3e9726c690d3773ec1e48510e42b17742b0b0377e7de6b8f55e00a8a4db4740cee6db0830529dd19617501dc1e9359aa3bcf147e0a76b3ab70c4984c13e339e6806bb35e683af8527093670859f3d8a0fc7d493bcba6bb12b5f65e71e705ca5d6c948d66ed3d730b26db395b3447737c26fad089aa0ad0e306cb28bf0acf106f89af3745f0ec72d534968cca543cd2ca50c94b1456743254e358c1317c07a07bf2b0eca438a709367fafc89a57239028fc5fecfd53b8ef958ef10ee0608b7f5cb9923ad97058ec067700cc746c127a61ee3,dd1d2a92b3f3f3902f064365838e1f5f3468730c343e2974e7a9ecfcd84aa6db 90b28a6aa1fe533915bcb8e81ed6cacdc10962b7ff82474f845eeb86977600cf70b07ba8e3796141ee340e3fce842a38a50afbe90301a3bdcc591f2e7d9de53e495525560b908c892439990a2ca2679c5539ffdf636777ad9c1cdef809cda9e8dcdb451abb9e9c17efa4379abd24b182bd981cafc792640a183b61694301d04c5b3eaad694a6bd4cc06ef5da8fa23b4fa2a64559c5a68397930079d250c51bcf00e2b16a6c49171433b0aadfd80231276560b80458dd77089b7a1bbcc9e7e4b9f881eacd6c92c4318348a13f4914eb27115a1cfc5d16d7fd94954c3532efaca2cab025103b2d02c6fd71da3a77f417d7932685888a,21bf20664cec2cd2ceb1dffc1d78893d5ca1a7da88eb6bfd0c6efca6190c9e15 2969447d175490f2aa9bb055014dbef2e6854c95f8d60950bfe8c0be8de254c26b2d31b9e4de9c68c9adf49e4ee9b1c2850967f29f5d08738483b417bb96b2a56f0c8aca632b552059c59aac3f61f7b45c966b75f1d9931ff4e596406378cee91aaa726a3a84c33f37e9cdbe626b5745a0b06064a8a8d56e53aaf102d23dd9df0a3fdf7a638509a6761a33fa42fa8ddbd8e16159c93008b53765019c3f0e9f10b144ce2ac57f5d7297f9c9949e4ff68b70d339f87501ce8550b772f32c6da8ad2ce2100a895d8b08fa1eead7c376b407709703c510b50f87e73e43f8e7348f87c3832a547ef2bbe5799abedcf5e1f372ea809233f006,6472d7c530b548e4b47d2278d7172b421a0fb6398a2823dd2f2b26208af8942e 721645633a44a2c78b19024eaecf58575ab23c27190833c26875dc0f0d50b46aea9c343d82ea7d5b3e50ec700545c615daeaea64726a0f05607576dcd396d812b03fb6551c641087856d050b10e6a4d5577b82a98afb89cee8594c9dc19e79feff0382fcfd127f1b803a4b9946f4ac9a4378e1e6e041b1389a53e3450cd32d9d2941b0cbabdb50da8ea2513145164c3ab6bcbd251c448d2d4b087ac57a59c2285d564f16da4ed5e607ed979592146ffb0ef3f3db308fb342df5eb5924a48256fc763141a278814c82d6d6348577545870ae3a83c7230ac02a1540fe1798f7ef09e335a865a2ae0949b21e4f748fb8a51f44750e213a8fb,2ac7ff80ee36d500995c973b8746d8466715e6d8b0f554aacb5d2876d7f5b874 6b860d39725a14b498bb714574b4d37ca787404768f64c648b1751b353ac92bac2c3a28ea909fdf0423336401a02e63ec24325300d823b6864bb701f9d7c7a1f8ec9d0ae3584aa6dd62ea1997cd831b4babd9a4da50932d4efda745c61e4130890e156aee6113716daf95764222a91187db2effea49d5d0596102d619bd26a616bbfda8335505fbb0d90b4c180d1a2335b91538e1668f9f9642790b4e55f9cab0fe2bdd2935d001ee6419abab5457880d0dbff20ed8758f4c20fe759efb33141cf0e892587fe8187e5fbc57786b7e8b089612c936dfc03d27efbbe7c8673f1606bd51d5ff386f4a7ab68edf59f385eb1291f117bfe717399,9ff81d575f7bf0c4ef340b4279d56e16ce68821afcdf2a69105d4f9cadadd3cf 6a01830af3889a25183244decb508bd01253d5b508ab490d3124afbf42626b2e70894e9b562b288d0a2450cfacf14a0ddae5c04716e5a0082c33981f6037d23d5e045ee1ef2283fb8b6378a914c5d9441627a722c282ff452e25a7ea608d69cee4393a0725d17963d0342684f255496d8a18c2961145315130549311fc07f0312fb78e6077334f87eaa873bee8aa95698996eb21375eb2b4ef53c14401207deb4568398e5dd9a7cf97e8c9663e23334b46912f8344c19efcf8c2ba6f04325f1a27e062b62a58d0766fc6db4d2c6a1928604b0175d872d16b7908ebc041761187cc785526c2a3873feac3a642bb39f5351550af9770c328af7b,09edc465d4fd91c5e86b292f041bcc17571e1f2e17d584dff21dd7dd8d8bff35 b3c5e74b69933c2533106c563b4ca20238f2b6e675e8681e34a389894785bdade59652d4a73d80a5c85bd454fd1e9ffdad1c3815f5038e9ef432aac5c3c4fe840cc370cf86580a6011778bbedaf511a51b56d1a2eb68394aa299e26da9ada6a2f39b9faff7fba457689b9c1a577b2a1e505fdf75c7a0a64b1df81b3a356001bf0df4e02a1fc59f651c9d585ec6224bb279c6beba2966e8882d68376081b987468e7aed1ef90ebd090ae825795cdca1b4f09a979c8dfc21a48d8a53cdbb26c4db547fc06efe2f9850edd2685a4661cb4911f165d4b63ef25b87d0a96d3dff6ab0758999aad214d07bd4f133a6734fde445fe474711b69a98f7e2b,c6d86cc4ccef3bb70bf7bfddec6a9a04a0dd0a68fe1bf51c14648cf506a03e98 83af34279ccb5430febec07a81950d30f4b66f484826afee7456f0071a51e1bbc55570b5cc7ec6f9309c17bf5befdd7c6ba6e968cf218a2b34bd5cf927ab846e38a40bbd81759e9e33381016a755f699df35d660007b5eadf292feefb735207ebf70b5bd17834f7bfa0e16cb219ad4af524ab1ea37334aa66435e5d397fc0a065c411ebbce32c240b90476d307ce802ec82c1c49bc1bec48c0675ec2a6c6f3ed3e5b741d13437095707c565e10d8a20b8c20468ff9514fcf31b4249cd82dcee58c0a2af538b291a87e3390d737191a07484a5d3f3fb8c8f15ce056e5e5f8febe5e1fb59d6740980aa06ca8a0c20f5712b4cde5d032e92ab89f0ae1,1afc9ba63eea27603b3a7a5562e12b31e8fe9a96812b531e9d048385fb76d44f a7ed84749ccc56bb1dfba57119d279d412b8a986886d810f067af349e8749e9ea746a60b03742636c464fc1ee233acc52c1983914692b64309edfdf29f1ab912ec3e8da074d3f1d231511f5756f0b6eead3e89a6a88fe330a10face267bffbfc3e3090c7fd9a850561f363ad75ea881e7244f80ff55802d5ef7a1a4e7b89fcfa80f16df54d1b056ee637e6964b9e0ffd15b6196bdd7db270c56b47251485348e49813b4eb9ed122a01b3ea45ad5e1a929df61d5c0f3e77e1fdc356b63883a60e9cbb9fc3e00c2f32dbd469659883f690c6772e335f617bc33f161d6f6984252ee12e62b6000ac5231e0c9bc65be223d8dfd94c5004a101af9fd6c0fb,9b5e15531385f0d495fdbe686e3e02eca42b9f1b1ce8837ad3b3e42e6198050a a6fe30dcfcda1a329e82ab50e32b5f50eb25c873c5d2305860a835aecee6264aa36a47429922c4b8b3afd00da16035830edb897831c4e7b00f2c23fc0b15fdc30d85fb70c30c431c638e1a25b51caf1d7e8b050b7f89bfb30f59f0f20fecff3d639abc4255b3868fc45dd81e47eb12ab40f2aac735df5d1dc1ad997cefc4d836b854cee9ac02900036f3867fe0d84afff37bde3308c2206c62c4743375094108877c73b87b2546fe05ea137bedfc06a2796274099a0d554da8f7d7223a48cbf31b7decaa1ebc8b145763e3673168c1b1b715c1cd99ecd3ddb238b06049885ecad9347c2436dff32c771f34a38587a44a82c5d3d137a03caa27e66c8ff6,216fc325f942eed08401527a8f41c088527c6479342622c907ea08ff3290f8c6 83167ff53704c3aa19e9fb3303539759c46dd4091a52ddae9ad86408b69335989e61414bc20ab4d01220e35241eff5c9522b079fba597674c8d716fe441e566110b6211531ceccf8fd06bc8e511d00785e57788ed9a1c5c73524f01830d2e1148c92d0edc97113e3b7b5cd3049627abdb8b39dd4d6890e0ee91993f92b03354a88f52251c546e64434d9c3d74544f23fb93e5a2d2f1fb15545b4e1367c97335b0291944c8b730ad3d4789273fa44fb98d78a36c3c3764abeeac7c569c1e43a352e5b770c3504f87090dee075a1c4c85c0c39cf421bdcc615f9eff6cb4fe6468004aece5f30e1ecc6db22ad9939bb2b0ccc96521dfbf4ae008b5b46bc006e,43184b9f2db5b6da5160bc255dbe19a0c94533b884809815b7b326d868589edc 3a3a819c48efde2ad914fbf00e18ab6bc4f14513ab27d0c178a188b61431e7f5623cb66b23346775d386b50e982c493adbbfc54b9a3cd383382336a1a0b2150a15358f336d03ae18f666c7573d55c4fd181c29e6ccfde63ea35f0adf5885cfc0a3d84a2b2e4dd24496db789e663170cef74798aa1bbcd4574ea0bba40489d764b2f83aadc66b148b4a0cd95246c127d5871c4f11418690a5ddf01246a0c80a43c70088b6183639dcfda4125bd113a8f49ee23ed306faac576c3fb0c1e256671d817fc2534a52f5b439f72e424de376f4c565cca82307dd9ef76da5b7c4eb7e085172e328807c02d011ffbf33785378d79dc266f6a5be6bb0e4a92eceebaeb1,348fb774adc970a16b1105669442625e6adaa8257a89effdb5a802f161b862ea # EOF pysha3-1.0.2/PKG-INFO0000664000175000017500000002045113045652733014600 0ustar heimesheimes00000000000000Metadata-Version: 1.1 Name: pysha3 Version: 1.0.2 Summary: SHA-3 (Keccak) for Python 2.7 - 3.5 Home-page: https://github.com/tiran/pysha3 Author: Christian Heimes Author-email: christian@python.org License: PSFL (Keccak: CC0 1.0 Universal) Description: ====== pysha3 ====== SHA-3 wrapper (keccak) for Python. The package is a wrapper around the optimized Keccak Code Package, https://github.com/gvanas/KeccakCodePackage . The module is a standalone version of my SHA-3 module from Python 3.6 (currently under development). The code in sha3module.c has been modified to be compatible with Python 2.7 to 3.5. Python 2.6 and earlier are not supported. Updates since pysha 0.3 ======================= **pysha3 1.0 is not compatible with pysha3 0.3!** pysha3 < 1.0 used the old Keccak implementation. During the finalization of SHA3, NIST changed the delimiter suffix from 0x01 to 0x06. The Keccak sponge function stayed the same. pysha3 1.0 provides the previous Keccak hash, too. Platforms ========= pysha3 has been successfully tested on several platforms: - Linux (GCC, clang) on X86, X86_64 and ARMv6 (little endian) - Windows (VS 2008, VS 2010, VS2015) on X86 and X86_64 Usage ===== The `sha3` module contains several constructors for hash objects with a PEP 247 compatible interface. The module provides SHA3, SHAKE and Keccak: * `sha3_228()`, `sha3_256()`, `sha3_384()`, and `sha3_512()` * `shake_128()`, `shake_256()` * `keccak_228()`, `keccak_256()`, `keccak_384()`, and `keccak_512()` The `sha3` module monkey patches the `hashlib` module . The monkey patch is automatically activated with the first import of the `sha3` module. The `hashlib` module of Python 3.6 will support the four SHA-3 algorithms and the two SHAKE algorithms on all platforms. Therefore you shouldn't use the sha3 module directly and rather go through the `hashlib` interface:: >>> import sys >>> import hashlib >>> if sys.version_info < (3, 6): ... import sha3 >>> s = hashlib.sha3_512() >>> s.name 'sha3_512' >>> s.digest_size 64 >>> s.update(b"data") >>> s.hexdigest() 'ceca4daf960c2bbfb4a9edaca9b8137a801b65bae377e0f534ef9141c8684c0fedc1768d1afde9766572846c42b935f61177eaf97d355fa8dc2bca3fecfa754d' >>> s = hashlib.shake_256() >>> s.update(b"data") >>> s.hexdigest(4) 'c73dbed8' >>> s.hexdigest(8) 'c73dbed8527f5ae0' >>> s.hexdigest(16) 'c73dbed8527f5ae0568679f30ecc5cb6' >>> import sha3 >>> k = sha3.keccak_512() >>> k.update(b"data") >>> k.hexdigest() '1065aceeded3a5e4412e2187e919bffeadf815f5bd73d37fe00d384fe29f55f08462fdabe1007b993ce5b8119630e7db93101d9425d6e352e22ffe3dcb56b825' Changelog ========= pysha3 1.0.2 ------------ *Release: 05-Feb-2017* - Rename internal C extension to _pysha3 to avoild conflict with Python 3.6' _sha3 extension. pysha3 1.0.1 ------------ *Release: 24-Jan-2017* - Fix github.org -> github.com (Pi Delport) - Fix endianness checks for Python 2 (William Grant) - Fix changelog, the Christmas release was 1.0.0, not 1.1.0 pysha3 1.0.0 ------------ *Release date: 24-Dec-2016* - Synchronize with Python 3.6.0 release - Move all backport related additions to backport.inc - Fix flake8 violations pysha3 1.0b1 ------------ *Release date: 01-May-2016* - Update backend to use the latest Keccak Code Package. pysha3 now implements the official NIST standard. The old Keccak hashes are available with keccak prefix. - Add SHAKE support. - All sha3, shake and keccak variants are separate types instead of factory functions that return the same type. - Drop Python 2.6 and Python 3.0 to 3.3 support. - Fix typo that disabled threading optimization. - Add vector files for additional tests. - Add experimental HMAC support based on examples from http://wolfgang-ehrhardt.de/hmac-sha3-testvectors.html . - Test hashing of unaligned data. - Add ISO C11 memset_s() function as _Py_memset_s() in order to securely wipe memory that holds sensitive data. The page https://www.securecoding.cert.org/confluence/display/seccode/MSC06-C.+Be+aware+of+compiler+optimization+when+dealing+with+sensitive+data explains the motivation for memset_s(). - Add tox support. - Add Travis and appveyor integration. - Add _capacity_bits, _rate_bits and _suffix attributes for diagnostic purposes. pysha3 0.3 ---------- *Release date: 14-Oct-2012* - Fix 64bit big endian support - Add workaround for alignment error on 64bit SPARC machine by using the opt32 implementation. - block_size now returns NotImplemented to prevent users from using pysha3 with the hmac module. pysha3 0.2.2 ------------ *Release date: 07-Oct-2012* - Re-add brg_endian.h to fix issue on Solaris (big endian platform) pysha3 0.2.1 ------------ *Release date: 06-Oct-2012* - Fix MANIFEST.in to include Makefile and tests.py - Add setup.py test command with hack for inplace builds - Enhance README.txt and fixed its markup pysha3 0.2 ---------- *Release date: 06-Oct-2012* - Change directory struct to use the same directory layout as Python 3.4. - Remove C++ comments from Keccak sources for ANSI C compatibility. - Declare all Keccak functions and globals as static to avoid name clashes. - Remove alias sha3() for sha3_512(). - Add block_size attribute. Keccak has a internal sponge size of 1600 bits. - Release GIL around SHA3_update() calls. - Monkey patch the hashlib module to support, e.g. hashlib.sha3_512() and hashlib.new("sha3_512") - Release GIL around SHA3_update() when the data exceeds a certain size. - Fix build on platforms with an unsigned 64bit integer type (uint64_t). The module falls back to 32bit implementation of Keccak with interleave tables. pysha3 0.1 ---------- *Release date: 04-Oct-2012* - first release - based on KeccakReferenceAndOptimized-3.2.zip Keywords: sha3 sha-3 keccak hash Platform: POSIX Platform: Windows Classifier: Development Status :: 4 - Beta Classifier: Intended Audience :: Developers Classifier: License :: OSI Approved :: Python Software Foundation License Classifier: License :: CC0 1.0 Universal (CC0 1.0) Public Domain Dedication Classifier: Natural Language :: English Classifier: Operating System :: MacOS :: MacOS X Classifier: Operating System :: POSIX Classifier: Operating System :: POSIX :: BSD Classifier: Operating System :: POSIX :: Linux Classifier: Operating System :: Microsoft :: Windows Classifier: Programming Language :: C Classifier: Programming Language :: Python Classifier: Programming Language :: Python :: 2 Classifier: Programming Language :: Python :: 2.7 Classifier: Programming Language :: Python :: 3 Classifier: Programming Language :: Python :: 3.4 Classifier: Programming Language :: Python :: 3.5 Classifier: Topic :: Security :: Cryptography pysha3-1.0.2/Makefile0000664000175000017500000000215513045044474015141 0ustar heimesheimes00000000000000PYTHON=python SETUPFLAGS= COMPILEFLAGS= INSTALLFLAGS= PYTHONS=python2.7 python3.4 python3.5 .PHONY: inplace all rebuild test_inplace test fulltests clean distclean .PHONY: sdist install all: inplace README.html README.html: README.txt CHANGES.txt @echo | cat README.txt - CHANGES.txt | \ rst2html --verbose --exit-status=1 > README.html inplace: $(PYTHON) setup.py $(SETUPFLAGS) build_ext -i $(COMPILEFLAGS) rebuild: clean all test_inplace: inplace $(PYTHON) -m tests test: test_inplace fulltest: $(MAKE) clean @set -e; \ for python in $(PYTHONS); do \ $$python $(SETUPFLAGS) setup.py -q test; \ done $(MAKE) clean clean: @find . \( -name '*.o' -or -name '*.so' -or -name '*.sl' -or \ -name '*.py[cod]' -or -name README.html \) \ -and -type f -delete distclean: clean @rm -rf build @rm -rf dist @find . \( -name '~*' -or -name '*.orig' -or -name '*.bak' -or \ -name 'core*' \) -and -type f -delete sdist: README.html $(PYTHON) setup.py sdist --formats gztar,zip install: $(PYTHON) setup.py $(SETUPFLAGS) build $(COMPILEFLAGS) $(PYTHON) setup.py install $(INSTALLFLAGS) pysha3-1.0.2/README.txt0000664000175000017500000000452412711232770015176 0ustar heimesheimes00000000000000====== pysha3 ====== SHA-3 wrapper (keccak) for Python. The package is a wrapper around the optimized Keccak Code Package, https://github.com/gvanas/KeccakCodePackage . The module is a standalone version of my SHA-3 module from Python 3.6 (currently under development). The code in sha3module.c has been modified to be compatible with Python 2.7 to 3.5. Python 2.6 and earlier are not supported. Updates since pysha 0.3 ======================= **pysha3 1.0 is not compatible with pysha3 0.3!** pysha3 < 1.0 used the old Keccak implementation. During the finalization of SHA3, NIST changed the delimiter suffix from 0x01 to 0x06. The Keccak sponge function stayed the same. pysha3 1.0 provides the previous Keccak hash, too. Platforms ========= pysha3 has been successfully tested on several platforms: - Linux (GCC, clang) on X86, X86_64 and ARMv6 (little endian) - Windows (VS 2008, VS 2010, VS2015) on X86 and X86_64 Usage ===== The `sha3` module contains several constructors for hash objects with a PEP 247 compatible interface. The module provides SHA3, SHAKE and Keccak: * `sha3_228()`, `sha3_256()`, `sha3_384()`, and `sha3_512()` * `shake_128()`, `shake_256()` * `keccak_228()`, `keccak_256()`, `keccak_384()`, and `keccak_512()` The `sha3` module monkey patches the `hashlib` module . The monkey patch is automatically activated with the first import of the `sha3` module. The `hashlib` module of Python 3.6 will support the four SHA-3 algorithms and the two SHAKE algorithms on all platforms. Therefore you shouldn't use the sha3 module directly and rather go through the `hashlib` interface:: >>> import sys >>> import hashlib >>> if sys.version_info < (3, 6): ... import sha3 >>> s = hashlib.sha3_512() >>> s.name 'sha3_512' >>> s.digest_size 64 >>> s.update(b"data") >>> s.hexdigest() 'ceca4daf960c2bbfb4a9edaca9b8137a801b65bae377e0f534ef9141c8684c0fedc1768d1afde9766572846c42b935f61177eaf97d355fa8dc2bca3fecfa754d' >>> s = hashlib.shake_256() >>> s.update(b"data") >>> s.hexdigest(4) 'c73dbed8' >>> s.hexdigest(8) 'c73dbed8527f5ae0' >>> s.hexdigest(16) 'c73dbed8527f5ae0568679f30ecc5cb6' >>> import sha3 >>> k = sha3.keccak_512() >>> k.update(b"data") >>> k.hexdigest() '1065aceeded3a5e4412e2187e919bffeadf815f5bd73d37fe00d384fe29f55f08462fdabe1007b993ce5b8119630e7db93101d9425d6e352e22ffe3dcb56b825' pysha3-1.0.2/CHANGES.txt0000664000175000017500000000613113045652536015314 0ustar heimesheimes00000000000000Changelog ========= pysha3 1.0.2 ------------ *Release: 05-Feb-2017* - Rename internal C extension to _pysha3 to avoild conflict with Python 3.6' _sha3 extension. pysha3 1.0.1 ------------ *Release: 24-Jan-2017* - Fix github.org -> github.com (Pi Delport) - Fix endianness checks for Python 2 (William Grant) - Fix changelog, the Christmas release was 1.0.0, not 1.1.0 pysha3 1.0.0 ------------ *Release date: 24-Dec-2016* - Synchronize with Python 3.6.0 release - Move all backport related additions to backport.inc - Fix flake8 violations pysha3 1.0b1 ------------ *Release date: 01-May-2016* - Update backend to use the latest Keccak Code Package. pysha3 now implements the official NIST standard. The old Keccak hashes are available with keccak prefix. - Add SHAKE support. - All sha3, shake and keccak variants are separate types instead of factory functions that return the same type. - Drop Python 2.6 and Python 3.0 to 3.3 support. - Fix typo that disabled threading optimization. - Add vector files for additional tests. - Add experimental HMAC support based on examples from http://wolfgang-ehrhardt.de/hmac-sha3-testvectors.html . - Test hashing of unaligned data. - Add ISO C11 memset_s() function as _Py_memset_s() in order to securely wipe memory that holds sensitive data. The page https://www.securecoding.cert.org/confluence/display/seccode/MSC06-C.+Be+aware+of+compiler+optimization+when+dealing+with+sensitive+data explains the motivation for memset_s(). - Add tox support. - Add Travis and appveyor integration. - Add _capacity_bits, _rate_bits and _suffix attributes for diagnostic purposes. pysha3 0.3 ---------- *Release date: 14-Oct-2012* - Fix 64bit big endian support - Add workaround for alignment error on 64bit SPARC machine by using the opt32 implementation. - block_size now returns NotImplemented to prevent users from using pysha3 with the hmac module. pysha3 0.2.2 ------------ *Release date: 07-Oct-2012* - Re-add brg_endian.h to fix issue on Solaris (big endian platform) pysha3 0.2.1 ------------ *Release date: 06-Oct-2012* - Fix MANIFEST.in to include Makefile and tests.py - Add setup.py test command with hack for inplace builds - Enhance README.txt and fixed its markup pysha3 0.2 ---------- *Release date: 06-Oct-2012* - Change directory struct to use the same directory layout as Python 3.4. - Remove C++ comments from Keccak sources for ANSI C compatibility. - Declare all Keccak functions and globals as static to avoid name clashes. - Remove alias sha3() for sha3_512(). - Add block_size attribute. Keccak has a internal sponge size of 1600 bits. - Release GIL around SHA3_update() calls. - Monkey patch the hashlib module to support, e.g. hashlib.sha3_512() and hashlib.new("sha3_512") - Release GIL around SHA3_update() when the data exceeds a certain size. - Fix build on platforms with an unsigned 64bit integer type (uint64_t). The module falls back to 32bit implementation of Keccak with interleave tables. pysha3 0.1 ---------- *Release date: 04-Oct-2012* - first release - based on KeccakReferenceAndOptimized-3.2.zip pysha3-1.0.2/sha3.py0000664000175000017500000000135213045652653014713 0ustar heimesheimes00000000000000# Copyright (C) 2012-2016 Christian Heimes (christian@python.org) # Licensed to PSF under a Contributor Agreement. # # monkey patch _hashlib import hashlib as _hashlib from _pysha3 import keccak_224, keccak_256, keccak_384, keccak_512 from _pysha3 import sha3_224, sha3_256, sha3_384, sha3_512 from _pysha3 import shake_128, shake_256 __all__ = ("sha3_224", "sha3_256", "sha3_384", "sha3_512", "keccak_224", "keccak_256", "keccak_384", "keccak_512", "shake_128", "shake_256") if not hasattr(_hashlib, "sha3_512"): _hashlib.sha3_224 = sha3_224 _hashlib.sha3_256 = sha3_256 _hashlib.sha3_384 = sha3_384 _hashlib.sha3_512 = sha3_512 _hashlib.shake_128 = shake_128 _hashlib.shake_256 = shake_256 pysha3-1.0.2/MANIFEST.in0000664000175000017500000000035112711234706015231 0ustar heimesheimes00000000000000include setup.py include README.txt CHANGES.txt LICENSE include MANIFEST.in include setup.py Makefile include tests.py include Modules/_sha3/cleanup.py recursive-include vectors *.txt recursive-include Modules *.c *.h *.macros *.inc pysha3-1.0.2/LICENSE0000664000175000017500000000455112711152101014472 0ustar heimesheimes00000000000000PYTHON SOFTWARE FOUNDATION LICENSE VERSION 2 -------------------------------------------- 1. This LICENSE AGREEMENT is between the Python Software Foundation ("PSF"), and the Individual or Organization ("Licensee") accessing and otherwise using this software ("Python") in source or binary form and its associated documentation. 2. Subject to the terms and conditions of this License Agreement, PSF hereby grants Licensee a nonexclusive, royalty-free, world-wide license to reproduce, analyze, test, perform and/or display publicly, prepare derivative works, distribute, and otherwise use Python alone or in any derivative version, provided, however, that PSF's License Agreement and PSF's notice of copyright, i.e., "Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 Python Software Foundation; All Rights Reserved" are retained in Python alone or in any derivative version prepared by Licensee. 3. In the event Licensee prepares a derivative work that is based on or incorporates Python or any part thereof, and wants to make the derivative work available to others as provided herein, then Licensee hereby agrees to include in any such work a brief summary of the changes made to Python. 4. PSF is making Python available to Licensee on an "AS IS" basis. PSF MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, PSF MAKES NO AND DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON WILL NOT INFRINGE ANY THIRD PARTY RIGHTS. 5. PSF SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON, OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF. 6. This License Agreement will automatically terminate upon a material breach of its terms and conditions. 7. Nothing in this License Agreement shall be deemed to create any relationship of agency, partnership, or joint venture between PSF and Licensee. This License Agreement does not grant permission to use PSF trademarks or trade name in a trademark sense to endorse or promote products or services of Licensee, or any third party. 8. By copying, installing or otherwise using Python, Licensee agrees to be bound by the terms and conditions of this License Agreement. pysha3-1.0.2/setup.py0000664000175000017500000000770513045652532015221 0ustar heimesheimes00000000000000#!/usr/bin/env python import os import subprocess import sys from distutils.core import Command from glob import glob try: from setuptools import setup, Extension except ImportError: from distutils.core import setup from distutils.extension import Extension class TestCommand(Command): """Hack for setup.py with implicit build_ext -i """ user_options = [] def initialize_options(self): self.rootdir = os.getcwd() def finalize_options(self): pass def remove_ext(self): """Remove extensions All Python 2.x versions share the same library name. Remove the file to fix version mismatch errors. """ for fname in os.listdir(self.rootdir): if fname.endswith(("so", "dylib", "pyd", "sl")): os.unlink(os.path.join(self.rootdir, fname)) def get_lib_dirs(self): """Get version, platform and configuration dependend lib dirs Distutils caches the build command object on the distribution object. We can retrieve the object to retrieve the paths to the directories inside the build directory. """ build = self.distribution.command_obj["build"] builddirs = set() for attrname in 'build_platlib', 'build_lib', 'build_purelib': builddir = getattr(build, attrname, None) if not builddir: continue builddir = os.path.abspath(os.path.join(self.rootdir, builddir)) if not os.path.isdir(builddir): continue builddirs.add(builddir) return builddirs def run(self): self.remove_ext() # force a build with build_ext self.run_command("build") # get lib dirs from build object libdirs = self.get_lib_dirs() # add lib dirs to Python's search path env = os.environ.copy() env["PYTHONPATH"] = os.pathsep.join(libdirs) # and finally run the test command errno = subprocess.check_call([sys.executable, "tests.py"], env=env) raise SystemExit(errno) exts = [] sha3_depends = ["setup.py", "Modules/hashlib.h", "Modules/pymemsets.h"] sha3_depends.extend(glob("Modules/_sha3/kcp/*")) exts.append( Extension( "_pysha3", ["Modules/_sha3/sha3module.c", "Modules/pymemsets.c"], depends=sha3_depends, define_macros=[("PY_WITH_KECCAK", "1")] ) ) long_description = [] with open("README.txt") as f: long_description.append(f.read()) with open("CHANGES.txt") as f: long_description.append(f.read()) setup( name="pysha3", version="1.0.2", ext_modules=exts, py_modules=["sha3"], cmdclass={"test": TestCommand}, author="Christian Heimes", author_email="christian@python.org", maintainer="Christian Heimes", maintainer_email="christian@python.org", url="https://github.com/tiran/pysha3", keywords="sha3 sha-3 keccak hash", platforms="POSIX, Windows", license="PSFL (Keccak: CC0 1.0 Universal)", description="SHA-3 (Keccak) for Python 2.7 - 3.5", long_description="\n".join(long_description), classifiers=[ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: Python Software Foundation License", "License :: CC0 1.0 Universal (CC0 1.0) Public Domain Dedication", "Natural Language :: English", "Operating System :: MacOS :: MacOS X", "Operating System :: POSIX", "Operating System :: POSIX :: BSD", "Operating System :: POSIX :: Linux", "Operating System :: Microsoft :: Windows", "Programming Language :: C", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Topic :: Security :: Cryptography", ], )